/*!
 * jQuery UI CSS Framework 1.12.1
 * http://jqueryui.com
 *
 * Copyright jQuery Foundation and other contributors
 * Released under the MIT license.
 * http://jquery.org/license
 *
 * http://api.jqueryui.com/category/theming/
 */

/* Layout helpers
----------------------------------*/
.ui-helper-hidden {
	display: none;
}
.ui-helper-hidden-accessible {
	border: 0;
	clip: rect(0 0 0 0);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute;
	width: 1px;
}
.ui-helper-reset {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	line-height: 1.3;
	text-decoration: none;
	font-size: 100%;
	list-style: none;
}
.ui-helper-clearfix:before,
.ui-helper-clearfix:after {
	content: "";
	display: table;
	border-collapse: collapse;
}
.ui-helper-clearfix:after {
	clear: both;
}
.ui-helper-zfix {
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	position: absolute;
	opacity: 0;
	filter:Alpha(Opacity=0); /* support: IE8 */
}

.ui-front {
	z-index: 100;
}


/* Interaction Cues
----------------------------------*/
.ui-state-disabled {
	cursor: default !important;
	pointer-events: none;
}


/* Icons
----------------------------------*/
.ui-icon {
	display: inline-block;
	vertical-align: middle;
	margin-top: -.25em;
	position: relative;
	text-indent: -99999px;
	overflow: hidden;
	background-repeat: no-repeat;
}

.ui-widget-icon-block {
	left: 50%;
	margin-left: -8px;
	display: block;
}

/* Misc visuals
----------------------------------*/

/* Overlays */
.ui-widget-overlay {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

/*!
 * jQuery UI Accordion 1.12.1
 * http://jqueryui.com
 *
 * Copyright jQuery Foundation and other contributors
 * Released under the MIT license.
 * http://jquery.org/license
 *
 * http://api.jqueryui.com/accordion/#theming
 */
.ui-accordion .ui-accordion-header {
	display: block;
	cursor: pointer;
	position: relative;
	margin: 2px 0 0 0;
	padding: .5em .5em .5em .7em;
	font-size: 100%;
}
.ui-accordion .ui-accordion-content {
	padding: 1em 2.2em;
	border-top: 0;
	overflow: auto;
}

/*!
 * jQuery UI Autocomplete 1.12.1
 * http://jqueryui.com
 *
 * Copyright jQuery Foundation and other contributors
 * Released under the MIT license.
 * http://jquery.org/license
 *
 * http://api.jqueryui.com/autocomplete/#theming
 */
.ui-autocomplete {
	position: absolute;
	top: 0;
	left: 0;
	cursor: default;
}

/*!
 * jQuery UI Button 1.12.1
 * http://jqueryui.com
 *
 * Copyright jQuery Foundation and other contributors
 * Released under the MIT license.
 * http://jquery.org/license
 *
 * http://api.jqueryui.com/button/#theming
 */
.ui-button {
	padding: .4em 1em;
	display: inline-block;
	position: relative;
	line-height: normal;
	margin-right: .1em;
	cursor: pointer;
	vertical-align: middle;
	text-align: center;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;

	/* Support: IE <= 11 */
	overflow: visible;
}

.ui-button,
.ui-button:link,
.ui-button:visited,
.ui-button:hover,
.ui-button:active {
	text-decoration: none;
}

/* to make room for the icon, a width needs to be set here */
.ui-button-icon-only {
	width: 2em;
	box-sizing: border-box;
	text-indent: -9999px;
	white-space: nowrap;
}

/* no icon support for input elements */
input.ui-button.ui-button-icon-only {
	text-indent: 0;
}

/* button icon element(s) */
.ui-button-icon-only .ui-icon {
	position: absolute;
	top: 50%;
	left: 50%;
	margin-top: -8px;
	margin-left: -8px;
}

.ui-button.ui-icon-notext .ui-icon {
	padding: 0;
	width: 2.1em;
	height: 2.1em;
	text-indent: -9999px;
	white-space: nowrap;

}

input.ui-button.ui-icon-notext .ui-icon {
	width: auto;
	height: auto;
	text-indent: 0;
	white-space: normal;
	padding: .4em 1em;
}

/* workarounds */
/* Support: Firefox 5 - 40 */
input.ui-button::-moz-focus-inner,
button.ui-button::-moz-focus-inner {
	border: 0;
	padding: 0;
}

/*!
 * jQuery UI Checkboxradio 1.12.1
 * http://jqueryui.com
 *
 * Copyright jQuery Foundation and other contributors
 * Released under the MIT license.
 * http://jquery.org/license
 *
 * http://api.jqueryui.com/checkboxradio/#theming
 */

.ui-checkboxradio-label .ui-icon-background {
	box-shadow: inset 1px 1px 1px #ccc;
	border-radius: .12em;
	border: none;
}
.ui-checkboxradio-radio-label .ui-icon-background {
	width: 16px;
	height: 16px;
	border-radius: 1em;
	overflow: visible;
	border: none;
}
.ui-checkboxradio-radio-label.ui-checkboxradio-checked .ui-icon,
.ui-checkboxradio-radio-label.ui-checkboxradio-checked:hover .ui-icon {
	background-image: none;
	width: 8px;
	height: 8px;
	border-width: 4px;
	border-style: solid;
}
.ui-checkboxradio-disabled {
	pointer-events: none;
}

/*!
 * jQuery UI Controlgroup 1.12.1
 * http://jqueryui.com
 *
 * Copyright jQuery Foundation and other contributors
 * Released under the MIT license.
 * http://jquery.org/license
 *
 * http://api.jqueryui.com/controlgroup/#theming
 */

.ui-controlgroup {
	vertical-align: middle;
	display: inline-block;
}
.ui-controlgroup > .ui-controlgroup-item {
	float: left;
	margin-left: 0;
	margin-right: 0;
}
.ui-controlgroup > .ui-controlgroup-item:focus,
.ui-controlgroup > .ui-controlgroup-item.ui-visual-focus {
	z-index: 9999;
}
.ui-controlgroup-vertical > .ui-controlgroup-item {
	display: block;
	float: none;
	width: 100%;
	margin-top: 0;
	margin-bottom: 0;
	text-align: left;
}
.ui-controlgroup-vertical .ui-controlgroup-item {
	box-sizing: border-box;
}
.ui-controlgroup .ui-controlgroup-label {
	padding: .4em 1em;
}
.ui-controlgroup .ui-controlgroup-label span {
	font-size: 80%;
}
.ui-controlgroup-horizontal .ui-controlgroup-label + .ui-controlgroup-item {
	border-left: none;
}
.ui-controlgroup-vertical .ui-controlgroup-label + .ui-controlgroup-item {
	border-top: none;
}
.ui-controlgroup-horizontal .ui-controlgroup-label.ui-widget-content {
	border-right: none;
}
.ui-controlgroup-vertical .ui-controlgroup-label.ui-widget-content {
	border-bottom: none;
}

/* Spinner specific style fixes */
.ui-controlgroup-vertical .ui-spinner-input {

	/* Support: IE8 only, Android < 4.4 only */
	width: 75%;
	width: calc( 100% - 2.4em );
}
.ui-controlgroup-vertical .ui-spinner .ui-spinner-up {
	border-top-style: solid;
}


/*!
 * jQuery UI Datepicker 1.12.1
 * http://jqueryui.com
 *
 * Copyright jQuery Foundation and other contributors
 * Released under the MIT license.
 * http://jquery.org/license
 *
 * http://api.jqueryui.com/datepicker/#theming
 */
.ui-datepicker {
	width: 17em;
	padding: .2em .2em 0;
	display: none;
}
.ui-datepicker .ui-datepicker-header {
	position: relative;
	padding: .2em 0;
}
.ui-datepicker .ui-datepicker-prev,
.ui-datepicker .ui-datepicker-next {
	position: absolute;
	top: 2px;
	width: 1.8em;
	height: 1.8em;
}
.ui-datepicker .ui-datepicker-prev-hover,
.ui-datepicker .ui-datepicker-next-hover {
	top: 1px;
}
.ui-datepicker .ui-datepicker-prev {
	left: 2px;
}
.ui-datepicker .ui-datepicker-next {
	right: 2px;
}
.ui-datepicker .ui-datepicker-prev-hover {
	left: 1px;
}
.ui-datepicker .ui-datepicker-next-hover {
	right: 1px;
}
.ui-datepicker .ui-datepicker-prev span,
.ui-datepicker .ui-datepicker-next span {
	display: block;
	position: absolute;
	left: 50%;
	margin-left: -8px;
	top: 50%;
	margin-top: -8px;
}
.ui-datepicker .ui-datepicker-title {
	margin: 0 2.3em;
	line-height: 1.8em;
	text-align: center;
}
.ui-datepicker .ui-datepicker-title select {
	font-size: 1em;
	margin: 1px 0;
}
.ui-datepicker select.ui-datepicker-month,
.ui-datepicker select.ui-datepicker-year {
	width: 45%;
}
.ui-datepicker table {
	width: 100%;
	font-size: .9em;
	border-collapse: collapse;
	margin: 0 0 .4em;
}
.ui-datepicker th {
	padding: .7em .3em;
	text-align: center;
	font-weight: bold;
	border: 0;
}
.ui-datepicker td {
	border: 0;
	padding: 1px;
}
.ui-datepicker td span,
.ui-datepicker td a {
	display: block;
	padding: .2em;
	text-align: right;
	text-decoration: none;
}
.ui-datepicker .ui-datepicker-buttonpane {
	background-image: none;
	margin: .7em 0 0 0;
	padding: 0 .2em;
	border-left: 0;
	border-right: 0;
	border-bottom: 0;
}
.ui-datepicker .ui-datepicker-buttonpane button {
	float: right;
	margin: .5em .2em .4em;
	cursor: pointer;
	padding: .2em .6em .3em .6em;
	width: auto;
	overflow: visible;
}
.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current {
	float: left;
}

/* with multiple calendars */
.ui-datepicker.ui-datepicker-multi {
	width: auto;
}
.ui-datepicker-multi .ui-datepicker-group {
	float: left;
}
.ui-datepicker-multi .ui-datepicker-group table {
	width: 95%;
	margin: 0 auto .4em;
}
.ui-datepicker-multi-2 .ui-datepicker-group {
	width: 50%;
}
.ui-datepicker-multi-3 .ui-datepicker-group {
	width: 33.3%;
}
.ui-datepicker-multi-4 .ui-datepicker-group {
	width: 25%;
}
.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header,
.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header {
	border-left-width: 0;
}
.ui-datepicker-multi .ui-datepicker-buttonpane {
	clear: left;
}
.ui-datepicker-row-break {
	clear: both;
	width: 100%;
	font-size: 0;
}

/* RTL support */
.ui-datepicker-rtl {
	direction: rtl;
}
.ui-datepicker-rtl .ui-datepicker-prev {
	right: 2px;
	left: auto;
}
.ui-datepicker-rtl .ui-datepicker-next {
	left: 2px;
	right: auto;
}
.ui-datepicker-rtl .ui-datepicker-prev:hover {
	right: 1px;
	left: auto;
}
.ui-datepicker-rtl .ui-datepicker-next:hover {
	left: 1px;
	right: auto;
}
.ui-datepicker-rtl .ui-datepicker-buttonpane {
	clear: right;
}
.ui-datepicker-rtl .ui-datepicker-buttonpane button {
	float: left;
}
.ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current,
.ui-datepicker-rtl .ui-datepicker-group {
	float: right;
}
.ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header,
.ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header {
	border-right-width: 0;
	border-left-width: 1px;
}

/* Icons */
.ui-datepicker .ui-icon {
	display: block;
	text-indent: -99999px;
	overflow: hidden;
	background-repeat: no-repeat;
	left: .5em;
	top: .3em;
}

/*!
 * jQuery UI Dialog 1.12.1
 * http://jqueryui.com
 *
 * Copyright jQuery Foundation and other contributors
 * Released under the MIT license.
 * http://jquery.org/license
 *
 * http://api.jqueryui.com/dialog/#theming
 */
.ui-dialog {
	position: absolute;
	top: 0;
	left: 0;
	padding: .2em;
	outline: 0;
}
.ui-dialog .ui-dialog-titlebar {
	padding: .4em 1em;
	position: relative;
}
.ui-dialog .ui-dialog-title {
	float: left;
	margin: .1em 0;
	white-space: nowrap;
	width: 90%;
	overflow: hidden;
	text-overflow: ellipsis;
}
.ui-dialog .ui-dialog-titlebar-close {
	position: absolute;
	right: .3em;
	top: 50%;
	width: 20px;
	margin: -10px 0 0 0;
	padding: 1px;
	height: 20px;
}
.ui-dialog .ui-dialog-content {
	position: relative;
	border: 0;
	padding: .5em 1em;
	background: none;
	overflow: auto;
}
.ui-dialog .ui-dialog-buttonpane {
	text-align: left;
	border-width: 1px 0 0 0;
	background-image: none;
	margin-top: .5em;
	padding: .3em 1em .5em .4em;
}
.ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset {
	float: right;
}
.ui-dialog .ui-dialog-buttonpane button {
	margin: .5em .4em .5em 0;
	cursor: pointer;
}
.ui-dialog .ui-resizable-n {
	height: 2px;
	top: 0;
}
.ui-dialog .ui-resizable-e {
	width: 2px;
	right: 0;
}
.ui-dialog .ui-resizable-s {
	height: 2px;
	bottom: 0;
}
.ui-dialog .ui-resizable-w {
	width: 2px;
	left: 0;
}
.ui-dialog .ui-resizable-se,
.ui-dialog .ui-resizable-sw,
.ui-dialog .ui-resizable-ne,
.ui-dialog .ui-resizable-nw {
	width: 7px;
	height: 7px;
}
.ui-dialog .ui-resizable-se {
	right: 0;
	bottom: 0;
}
.ui-dialog .ui-resizable-sw {
	left: 0;
	bottom: 0;
}
.ui-dialog .ui-resizable-ne {
	right: 0;
	top: 0;
}
.ui-dialog .ui-resizable-nw {
	left: 0;
	top: 0;
}
.ui-draggable .ui-dialog-titlebar {
	cursor: move;
}

/*!
 * jQuery UI Draggable 1.12.1
 * http://jqueryui.com
 *
 * Copyright jQuery Foundation and other contributors
 * Released under the MIT license.
 * http://jquery.org/license
 */
.ui-draggable-handle {
	-ms-touch-action: none;
	touch-action: none;
}

/*!
 * jQuery UI Menu 1.12.1
 * http://jqueryui.com
 *
 * Copyright jQuery Foundation and other contributors
 * Released under the MIT license.
 * http://jquery.org/license
 *
 * http://api.jqueryui.com/menu/#theming
 */
.ui-menu {
	list-style: none;
	padding: 0;
	margin: 0;
	display: block;
	outline: 0;
}
.ui-menu .ui-menu {
	position: absolute;
}
.ui-menu .ui-menu-item {
	margin: 0;
	cursor: pointer;
	/* support: IE10, see #8844 */
	list-style-image: url("data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7");
}
.ui-menu .ui-menu-item-wrapper {
	position: relative;
	padding: 3px 1em 3px .4em;
}
.ui-menu .ui-menu-divider {
	margin: 5px 0;
	height: 0;
	font-size: 0;
	line-height: 0;
	border-width: 1px 0 0 0;
}
.ui-menu .ui-state-focus,
.ui-menu .ui-state-active {
	margin: -1px;
}

/* icon support */
.ui-menu-icons {
	position: relative;
}
.ui-menu-icons .ui-menu-item-wrapper {
	padding-left: 2em;
}

/* left-aligned */
.ui-menu .ui-icon {
	position: absolute;
	top: 0;
	bottom: 0;
	left: .2em;
	margin: auto 0;
}

/* right-aligned */
.ui-menu .ui-menu-icon {
	left: auto;
	right: 0;
}

/*!
 * jQuery UI Progressbar 1.12.1
 * http://jqueryui.com
 *
 * Copyright jQuery Foundation and other contributors
 * Released under the MIT license.
 * http://jquery.org/license
 *
 * http://api.jqueryui.com/progressbar/#theming
 */
.ui-progressbar {
	height: 2em;
	text-align: left;
	overflow: hidden;
}
.ui-progressbar .ui-progressbar-value {
	margin: -1px;
	height: 100%;
}
.ui-progressbar .ui-progressbar-overlay {
	background: url("data:image/gif;base64,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");
	height: 100%;
	filter: alpha(opacity=25); /* support: IE8 */
	opacity: 0.25;
}
.ui-progressbar-indeterminate .ui-progressbar-value {
	background-image: none;
}

/*!
 * jQuery UI Resizable 1.12.1
 * http://jqueryui.com
 *
 * Copyright jQuery Foundation and other contributors
 * Released under the MIT license.
 * http://jquery.org/license
 */
.ui-resizable {
	position: relative;
}
.ui-resizable-handle {
	position: absolute;
	font-size: 0.1px;
	display: block;
	-ms-touch-action: none;
	touch-action: none;
}
.ui-resizable-disabled .ui-resizable-handle,
.ui-resizable-autohide .ui-resizable-handle {
	display: none;
}
.ui-resizable-n {
	cursor: n-resize;
	height: 7px;
	width: 100%;
	top: -5px;
	left: 0;
}
.ui-resizable-s {
	cursor: s-resize;
	height: 7px;
	width: 100%;
	bottom: -5px;
	left: 0;
}
.ui-resizable-e {
	cursor: e-resize;
	width: 7px;
	right: -5px;
	top: 0;
	height: 100%;
}
.ui-resizable-w {
	cursor: w-resize;
	width: 7px;
	left: -5px;
	top: 0;
	height: 100%;
}
.ui-resizable-se {
	cursor: se-resize;
	width: 12px;
	height: 12px;
	right: 1px;
	bottom: 1px;
}
.ui-resizable-sw {
	cursor: sw-resize;
	width: 9px;
	height: 9px;
	left: -5px;
	bottom: -5px;
}
.ui-resizable-nw {
	cursor: nw-resize;
	width: 9px;
	height: 9px;
	left: -5px;
	top: -5px;
}
.ui-resizable-ne {
	cursor: ne-resize;
	width: 9px;
	height: 9px;
	right: -5px;
	top: -5px;
}

/*!
 * jQuery UI Selectable 1.12.1
 * http://jqueryui.com
 *
 * Copyright jQuery Foundation and other contributors
 * Released under the MIT license.
 * http://jquery.org/license
 */
.ui-selectable {
	-ms-touch-action: none;
	touch-action: none;
}
.ui-selectable-helper {
	position: absolute;
	z-index: 100;
	border: 1px dotted black;
}

/*!
 * jQuery UI Selectmenu 1.12.1
 * http://jqueryui.com
 *
 * Copyright jQuery Foundation and other contributors
 * Released under the MIT license.
 * http://jquery.org/license
 *
 * http://api.jqueryui.com/selectmenu/#theming
 */
.ui-selectmenu-menu {
	padding: 0;
	margin: 0;
	position: absolute;
	top: 0;
	left: 0;
	display: none;
}
.ui-selectmenu-menu .ui-menu {
	overflow: auto;
	overflow-x: hidden;
	padding-bottom: 1px;
}
.ui-selectmenu-menu .ui-menu .ui-selectmenu-optgroup {
	font-size: 1em;
	font-weight: bold;
	line-height: 1.5;
	padding: 2px 0.4em;
	margin: 0.5em 0 0 0;
	height: auto;
	border: 0;
}
.ui-selectmenu-open {
	display: block;
}
.ui-selectmenu-text {
	display: block;
	margin-right: 20px;
	overflow: hidden;
	text-overflow: ellipsis;
}
.ui-selectmenu-button.ui-button {
	text-align: left;
	white-space: nowrap;
	width: 14em;
}
.ui-selectmenu-icon.ui-icon {
	float: right;
	margin-top: 0;
}

/*!
 * jQuery UI Sortable 1.12.1
 * http://jqueryui.com
 *
 * Copyright jQuery Foundation and other contributors
 * Released under the MIT license.
 * http://jquery.org/license
 */
.ui-sortable-handle {
	-ms-touch-action: none;
	touch-action: none;
}

/*!
 * jQuery UI Slider 1.12.1
 * http://jqueryui.com
 *
 * Copyright jQuery Foundation and other contributors
 * Released under the MIT license.
 * http://jquery.org/license
 *
 * http://api.jqueryui.com/slider/#theming
 */
.ui-slider {
	position: relative;
	text-align: left;
}
.ui-slider .ui-slider-handle {
	position: absolute;
	z-index: 2;
	width: 1.2em;
	height: 1.2em;
	cursor: default;
	-ms-touch-action: none;
	touch-action: none;
}
.ui-slider .ui-slider-range {
	position: absolute;
	z-index: 1;
	font-size: .7em;
	display: block;
	border: 0;
	background-position: 0 0;
}

/* support: IE8 - See #6727 */
.ui-slider.ui-state-disabled .ui-slider-handle,
.ui-slider.ui-state-disabled .ui-slider-range {
	filter: inherit;
}

.ui-slider-horizontal {
	height: .8em;
}
.ui-slider-horizontal .ui-slider-handle {
	top: -.3em;
	margin-left: -.6em;
}
.ui-slider-horizontal .ui-slider-range {
	top: 0;
	height: 100%;
}
.ui-slider-horizontal .ui-slider-range-min {
	left: 0;
}
.ui-slider-horizontal .ui-slider-range-max {
	right: 0;
}

.ui-slider-vertical {
	width: .8em;
	height: 100px;
}
.ui-slider-vertical .ui-slider-handle {
	left: -.3em;
	margin-left: 0;
	margin-bottom: -.6em;
}
.ui-slider-vertical .ui-slider-range {
	left: 0;
	width: 100%;
}
.ui-slider-vertical .ui-slider-range-min {
	bottom: 0;
}
.ui-slider-vertical .ui-slider-range-max {
	top: 0;
}

/*!
 * jQuery UI Spinner 1.12.1
 * http://jqueryui.com
 *
 * Copyright jQuery Foundation and other contributors
 * Released under the MIT license.
 * http://jquery.org/license
 *
 * http://api.jqueryui.com/spinner/#theming
 */
.ui-spinner {
	position: relative;
	display: inline-block;
	overflow: hidden;
	padding: 0;
	vertical-align: middle;
}
.ui-spinner-input {
	border: none;
	background: none;
	color: inherit;
	padding: .222em 0;
	margin: .2em 0;
	vertical-align: middle;
	margin-left: .4em;
	margin-right: 2em;
}
.ui-spinner-button {
	width: 1.6em;
	height: 50%;
	font-size: .5em;
	padding: 0;
	margin: 0;
	text-align: center;
	position: absolute;
	cursor: default;
	display: block;
	overflow: hidden;
	right: 0;
}
/* more specificity required here to override default borders */
.ui-spinner a.ui-spinner-button {
	border-top-style: none;
	border-bottom-style: none;
	border-right-style: none;
}
.ui-spinner-up {
	top: 0;
}
.ui-spinner-down {
	bottom: 0;
}

/*!
 * jQuery UI Tabs 1.12.1
 * http://jqueryui.com
 *
 * Copyright jQuery Foundation and other contributors
 * Released under the MIT license.
 * http://jquery.org/license
 *
 * http://api.jqueryui.com/tabs/#theming
 */
.ui-tabs {
	position: relative;/* position: relative prevents IE scroll bug (element with position: relative inside container with overflow: auto appear as "fixed") */
	padding: .2em;
}
.ui-tabs .ui-tabs-nav {
	margin: 0;
	padding: .2em .2em 0;
}
.ui-tabs .ui-tabs-nav li {
	list-style: none;
	float: left;
	position: relative;
	top: 0;
	margin: 1px .2em 0 0;
	border-bottom-width: 0;
	padding: 0;
	white-space: nowrap;
}
.ui-tabs .ui-tabs-nav .ui-tabs-anchor {
	float: left;
	padding: .5em 1em;
	text-decoration: none;
}
.ui-tabs .ui-tabs-nav li.ui-tabs-active {
	margin-bottom: -1px;
	padding-bottom: 1px;
}
.ui-tabs .ui-tabs-nav li.ui-tabs-active .ui-tabs-anchor,
.ui-tabs .ui-tabs-nav li.ui-state-disabled .ui-tabs-anchor,
.ui-tabs .ui-tabs-nav li.ui-tabs-loading .ui-tabs-anchor {
	cursor: text;
}
.ui-tabs-collapsible .ui-tabs-nav li.ui-tabs-active .ui-tabs-anchor {
	cursor: pointer;
}
.ui-tabs .ui-tabs-panel {
	display: block;
	border-width: 0;
	padding: 1em 1.4em;
	background: none;
}

/*!
 * jQuery UI Tooltip 1.12.1
 * http://jqueryui.com
 *
 * Copyright jQuery Foundation and other contributors
 * Released under the MIT license.
 * http://jquery.org/license
 *
 * http://api.jqueryui.com/tooltip/#theming
 */
.ui-tooltip {
	padding: 8px;
	position: absolute;
	z-index: 9999;
	max-width: 300px;
}
body .ui-tooltip {
	border-width: 2px;
}

/*!
 * jQuery UI CSS Framework 1.12.1
 * http://jqueryui.com
 *
 * Copyright jQuery Foundation and other contributors
 * Released under the MIT license.
 * http://jquery.org/license
 *
 * http://api.jqueryui.com/category/theming/
 */

/*!
 * jQuery UI CSS Framework 1.12.1
 * http://jqueryui.com
 *
 * Copyright jQuery Foundation and other contributors
 * Released under the MIT license.
 * http://jquery.org/license
 *
 * http://api.jqueryui.com/category/theming/
 *
 * To view and modify this theme, visit http://jqueryui.com/themeroller/
 */


/* Component containers
----------------------------------*/
.ui-widget {
	font-family: Arial,Helvetica,sans-serif/*{ffDefault}*/;
	font-size: 1em/*{fsDefault}*/;
}
.ui-widget .ui-widget {
	font-size: 1em;
}
.ui-widget input,
.ui-widget select,
.ui-widget textarea,
.ui-widget button {
	font-family: Arial,Helvetica,sans-serif/*{ffDefault}*/;
	font-size: 1em;
}
.ui-widget.ui-widget-content {
	border: 1px solid #c5c5c5/*{borderColorDefault}*/;
}
.ui-widget-content {
	border: 1px solid #dddddd/*{borderColorContent}*/;
	background: #ffffff/*{bgColorContent}*/ /*{bgImgUrlContent}*/ /*{bgContentXPos}*/ /*{bgContentYPos}*/ /*{bgContentRepeat}*/;
	color: #333333/*{fcContent}*/;
}
.ui-widget-content a {
	color: #333333/*{fcContent}*/;
}
.ui-widget-header {
	border: 1px solid #dddddd/*{borderColorHeader}*/;
	background: #e9e9e9/*{bgColorHeader}*/ /*{bgImgUrlHeader}*/ /*{bgHeaderXPos}*/ /*{bgHeaderYPos}*/ /*{bgHeaderRepeat}*/;
	color: #333333/*{fcHeader}*/;
	font-weight: bold;
}
.ui-widget-header a {
	color: #333333/*{fcHeader}*/;
}

/* Interaction states
----------------------------------*/
.ui-state-default,
.ui-widget-content .ui-state-default,
.ui-widget-header .ui-state-default,
.ui-button,

/* We use html here because we need a greater specificity to make sure disabled
works properly when clicked or hovered */
html .ui-button.ui-state-disabled:hover,
html .ui-button.ui-state-disabled:active {
	border: 1px solid #c5c5c5/*{borderColorDefault}*/;
	background: #f6f6f6/*{bgColorDefault}*/ /*{bgImgUrlDefault}*/ /*{bgDefaultXPos}*/ /*{bgDefaultYPos}*/ /*{bgDefaultRepeat}*/;
	font-weight: normal/*{fwDefault}*/;
	color: #454545/*{fcDefault}*/;
}
.ui-state-default a,
.ui-state-default a:link,
.ui-state-default a:visited,
a.ui-button,
a:link.ui-button,
a:visited.ui-button,
.ui-button {
	color: #454545/*{fcDefault}*/;
	text-decoration: none;
}
.ui-state-hover,
.ui-widget-content .ui-state-hover,
.ui-widget-header .ui-state-hover,
.ui-state-focus,
.ui-widget-content .ui-state-focus,
.ui-widget-header .ui-state-focus,
.ui-button:hover,
.ui-button:focus {
	border: 1px solid #cccccc/*{borderColorHover}*/;
	background: #ededed/*{bgColorHover}*/ /*{bgImgUrlHover}*/ /*{bgHoverXPos}*/ /*{bgHoverYPos}*/ /*{bgHoverRepeat}*/;
	font-weight: normal/*{fwDefault}*/;
	color: #2b2b2b/*{fcHover}*/;
}
.ui-state-hover a,
.ui-state-hover a:hover,
.ui-state-hover a:link,
.ui-state-hover a:visited,
.ui-state-focus a,
.ui-state-focus a:hover,
.ui-state-focus a:link,
.ui-state-focus a:visited,
a.ui-button:hover,
a.ui-button:focus {
	color: #2b2b2b/*{fcHover}*/;
	text-decoration: none;
}

.ui-visual-focus {
	box-shadow: 0 0 3px 1px rgb(94, 158, 214);
}
.ui-state-active,
.ui-widget-content .ui-state-active,
.ui-widget-header .ui-state-active,
a.ui-button:active,
.ui-button:active,
.ui-button.ui-state-active:hover {
	border: 1px solid #003eff/*{borderColorActive}*/;
	background: #007fff/*{bgColorActive}*/ /*{bgImgUrlActive}*/ /*{bgActiveXPos}*/ /*{bgActiveYPos}*/ /*{bgActiveRepeat}*/;
	font-weight: normal/*{fwDefault}*/;
	color: #ffffff/*{fcActive}*/;
}
.ui-icon-background,
.ui-state-active .ui-icon-background {
	border: #003eff/*{borderColorActive}*/;
	background-color: #ffffff/*{fcActive}*/;
}
.ui-state-active a,
.ui-state-active a:link,
.ui-state-active a:visited {
	color: #ffffff/*{fcActive}*/;
	text-decoration: none;
}

/* Interaction Cues
----------------------------------*/
.ui-state-highlight,
.ui-widget-content .ui-state-highlight,
.ui-widget-header .ui-state-highlight {
	border: 1px solid #dad55e/*{borderColorHighlight}*/;
	background: #fffa90/*{bgColorHighlight}*/ /*{bgImgUrlHighlight}*/ /*{bgHighlightXPos}*/ /*{bgHighlightYPos}*/ /*{bgHighlightRepeat}*/;
	color: #777620/*{fcHighlight}*/;
}
.ui-state-checked {
	border: 1px solid #dad55e/*{borderColorHighlight}*/;
	background: #fffa90/*{bgColorHighlight}*/;
}
.ui-state-highlight a,
.ui-widget-content .ui-state-highlight a,
.ui-widget-header .ui-state-highlight a {
	color: #777620/*{fcHighlight}*/;
}
.ui-state-error,
.ui-widget-content .ui-state-error,
.ui-widget-header .ui-state-error {
	border: 1px solid #f1a899/*{borderColorError}*/;
	background: #fddfdf/*{bgColorError}*/ /*{bgImgUrlError}*/ /*{bgErrorXPos}*/ /*{bgErrorYPos}*/ /*{bgErrorRepeat}*/;
	color: #5f3f3f/*{fcError}*/;
}
.ui-state-error a,
.ui-widget-content .ui-state-error a,
.ui-widget-header .ui-state-error a {
	color: #5f3f3f/*{fcError}*/;
}
.ui-state-error-text,
.ui-widget-content .ui-state-error-text,
.ui-widget-header .ui-state-error-text {
	color: #5f3f3f/*{fcError}*/;
}
.ui-priority-primary,
.ui-widget-content .ui-priority-primary,
.ui-widget-header .ui-priority-primary {
	font-weight: bold;
}
.ui-priority-secondary,
.ui-widget-content .ui-priority-secondary,
.ui-widget-header .ui-priority-secondary {
	opacity: .7;
	filter:Alpha(Opacity=70); /* support: IE8 */
	font-weight: normal;
}
.ui-state-disabled,
.ui-widget-content .ui-state-disabled,
.ui-widget-header .ui-state-disabled {
	opacity: .35;
	filter:Alpha(Opacity=35); /* support: IE8 */
	background-image: none;
}
.ui-state-disabled .ui-icon {
	filter:Alpha(Opacity=35); /* support: IE8 - See #6059 */
}

/* Icons
----------------------------------*/

/* states and images */
.ui-icon {
	width: 16px;
	height: 16px;
}
.ui-icon,
.ui-widget-content .ui-icon {
	background-image: url(/build/images/ui-icons_444444_256x240.2bf13b17.png);
}
.ui-widget-header .ui-icon {
	background-image: url(/build/images/ui-icons_444444_256x240.2bf13b17.png);
}
.ui-state-hover .ui-icon,
.ui-state-focus .ui-icon,
.ui-button:hover .ui-icon,
.ui-button:focus .ui-icon {
	background-image: url(/build/images/ui-icons_555555_256x240.d184ebcf.png);
}
.ui-state-active .ui-icon,
.ui-button:active .ui-icon {
	background-image: url(/build/images/ui-icons_ffffff_256x240.74e9fe3d.png);
}
.ui-state-highlight .ui-icon,
.ui-button .ui-state-highlight.ui-icon {
	background-image: url(/build/images/ui-icons_777620_256x240.8003dc8c.png);
}
.ui-state-error .ui-icon,
.ui-state-error-text .ui-icon {
	background-image: url(/build/images/ui-icons_cc0000_256x240.0085819b.png);
}
.ui-button .ui-icon {
	background-image: url(/build/images/ui-icons_777777_256x240.961d6729.png);
}

/* positioning */
.ui-icon-blank { background-position: 16px 16px; }
.ui-icon-caret-1-n { background-position: 0 0; }
.ui-icon-caret-1-ne { background-position: -16px 0; }
.ui-icon-caret-1-e { background-position: -32px 0; }
.ui-icon-caret-1-se { background-position: -48px 0; }
.ui-icon-caret-1-s { background-position: -65px 0; }
.ui-icon-caret-1-sw { background-position: -80px 0; }
.ui-icon-caret-1-w { background-position: -96px 0; }
.ui-icon-caret-1-nw { background-position: -112px 0; }
.ui-icon-caret-2-n-s { background-position: -128px 0; }
.ui-icon-caret-2-e-w { background-position: -144px 0; }
.ui-icon-triangle-1-n { background-position: 0 -16px; }
.ui-icon-triangle-1-ne { background-position: -16px -16px; }
.ui-icon-triangle-1-e { background-position: -32px -16px; }
.ui-icon-triangle-1-se { background-position: -48px -16px; }
.ui-icon-triangle-1-s { background-position: -65px -16px; }
.ui-icon-triangle-1-sw { background-position: -80px -16px; }
.ui-icon-triangle-1-w { background-position: -96px -16px; }
.ui-icon-triangle-1-nw { background-position: -112px -16px; }
.ui-icon-triangle-2-n-s { background-position: -128px -16px; }
.ui-icon-triangle-2-e-w { background-position: -144px -16px; }
.ui-icon-arrow-1-n { background-position: 0 -32px; }
.ui-icon-arrow-1-ne { background-position: -16px -32px; }
.ui-icon-arrow-1-e { background-position: -32px -32px; }
.ui-icon-arrow-1-se { background-position: -48px -32px; }
.ui-icon-arrow-1-s { background-position: -65px -32px; }
.ui-icon-arrow-1-sw { background-position: -80px -32px; }
.ui-icon-arrow-1-w { background-position: -96px -32px; }
.ui-icon-arrow-1-nw { background-position: -112px -32px; }
.ui-icon-arrow-2-n-s { background-position: -128px -32px; }
.ui-icon-arrow-2-ne-sw { background-position: -144px -32px; }
.ui-icon-arrow-2-e-w { background-position: -160px -32px; }
.ui-icon-arrow-2-se-nw { background-position: -176px -32px; }
.ui-icon-arrowstop-1-n { background-position: -192px -32px; }
.ui-icon-arrowstop-1-e { background-position: -208px -32px; }
.ui-icon-arrowstop-1-s { background-position: -224px -32px; }
.ui-icon-arrowstop-1-w { background-position: -240px -32px; }
.ui-icon-arrowthick-1-n { background-position: 1px -48px; }
.ui-icon-arrowthick-1-ne { background-position: -16px -48px; }
.ui-icon-arrowthick-1-e { background-position: -32px -48px; }
.ui-icon-arrowthick-1-se { background-position: -48px -48px; }
.ui-icon-arrowthick-1-s { background-position: -64px -48px; }
.ui-icon-arrowthick-1-sw { background-position: -80px -48px; }
.ui-icon-arrowthick-1-w { background-position: -96px -48px; }
.ui-icon-arrowthick-1-nw { background-position: -112px -48px; }
.ui-icon-arrowthick-2-n-s { background-position: -128px -48px; }
.ui-icon-arrowthick-2-ne-sw { background-position: -144px -48px; }
.ui-icon-arrowthick-2-e-w { background-position: -160px -48px; }
.ui-icon-arrowthick-2-se-nw { background-position: -176px -48px; }
.ui-icon-arrowthickstop-1-n { background-position: -192px -48px; }
.ui-icon-arrowthickstop-1-e { background-position: -208px -48px; }
.ui-icon-arrowthickstop-1-s { background-position: -224px -48px; }
.ui-icon-arrowthickstop-1-w { background-position: -240px -48px; }
.ui-icon-arrowreturnthick-1-w { background-position: 0 -64px; }
.ui-icon-arrowreturnthick-1-n { background-position: -16px -64px; }
.ui-icon-arrowreturnthick-1-e { background-position: -32px -64px; }
.ui-icon-arrowreturnthick-1-s { background-position: -48px -64px; }
.ui-icon-arrowreturn-1-w { background-position: -64px -64px; }
.ui-icon-arrowreturn-1-n { background-position: -80px -64px; }
.ui-icon-arrowreturn-1-e { background-position: -96px -64px; }
.ui-icon-arrowreturn-1-s { background-position: -112px -64px; }
.ui-icon-arrowrefresh-1-w { background-position: -128px -64px; }
.ui-icon-arrowrefresh-1-n { background-position: -144px -64px; }
.ui-icon-arrowrefresh-1-e { background-position: -160px -64px; }
.ui-icon-arrowrefresh-1-s { background-position: -176px -64px; }
.ui-icon-arrow-4 { background-position: 0 -80px; }
.ui-icon-arrow-4-diag { background-position: -16px -80px; }
.ui-icon-extlink { background-position: -32px -80px; }
.ui-icon-newwin { background-position: -48px -80px; }
.ui-icon-refresh { background-position: -64px -80px; }
.ui-icon-shuffle { background-position: -80px -80px; }
.ui-icon-transfer-e-w { background-position: -96px -80px; }
.ui-icon-transferthick-e-w { background-position: -112px -80px; }
.ui-icon-folder-collapsed { background-position: 0 -96px; }
.ui-icon-folder-open { background-position: -16px -96px; }
.ui-icon-document { background-position: -32px -96px; }
.ui-icon-document-b { background-position: -48px -96px; }
.ui-icon-note { background-position: -64px -96px; }
.ui-icon-mail-closed { background-position: -80px -96px; }
.ui-icon-mail-open { background-position: -96px -96px; }
.ui-icon-suitcase { background-position: -112px -96px; }
.ui-icon-comment { background-position: -128px -96px; }
.ui-icon-person { background-position: -144px -96px; }
.ui-icon-print { background-position: -160px -96px; }
.ui-icon-trash { background-position: -176px -96px; }
.ui-icon-locked { background-position: -192px -96px; }
.ui-icon-unlocked { background-position: -208px -96px; }
.ui-icon-bookmark { background-position: -224px -96px; }
.ui-icon-tag { background-position: -240px -96px; }
.ui-icon-home { background-position: 0 -112px; }
.ui-icon-flag { background-position: -16px -112px; }
.ui-icon-calendar { background-position: -32px -112px; }
.ui-icon-cart { background-position: -48px -112px; }
.ui-icon-pencil { background-position: -64px -112px; }
.ui-icon-clock { background-position: -80px -112px; }
.ui-icon-disk { background-position: -96px -112px; }
.ui-icon-calculator { background-position: -112px -112px; }
.ui-icon-zoomin { background-position: -128px -112px; }
.ui-icon-zoomout { background-position: -144px -112px; }
.ui-icon-search { background-position: -160px -112px; }
.ui-icon-wrench { background-position: -176px -112px; }
.ui-icon-gear { background-position: -192px -112px; }
.ui-icon-heart { background-position: -208px -112px; }
.ui-icon-star { background-position: -224px -112px; }
.ui-icon-link { background-position: -240px -112px; }
.ui-icon-cancel { background-position: 0 -128px; }
.ui-icon-plus { background-position: -16px -128px; }
.ui-icon-plusthick { background-position: -32px -128px; }
.ui-icon-minus { background-position: -48px -128px; }
.ui-icon-minusthick { background-position: -64px -128px; }
.ui-icon-close { background-position: -80px -128px; }
.ui-icon-closethick { background-position: -96px -128px; }
.ui-icon-key { background-position: -112px -128px; }
.ui-icon-lightbulb { background-position: -128px -128px; }
.ui-icon-scissors { background-position: -144px -128px; }
.ui-icon-clipboard { background-position: -160px -128px; }
.ui-icon-copy { background-position: -176px -128px; }
.ui-icon-contact { background-position: -192px -128px; }
.ui-icon-image { background-position: -208px -128px; }
.ui-icon-video { background-position: -224px -128px; }
.ui-icon-script { background-position: -240px -128px; }
.ui-icon-alert { background-position: 0 -144px; }
.ui-icon-info { background-position: -16px -144px; }
.ui-icon-notice { background-position: -32px -144px; }
.ui-icon-help { background-position: -48px -144px; }
.ui-icon-check { background-position: -64px -144px; }
.ui-icon-bullet { background-position: -80px -144px; }
.ui-icon-radio-on { background-position: -96px -144px; }
.ui-icon-radio-off { background-position: -112px -144px; }
.ui-icon-pin-w { background-position: -128px -144px; }
.ui-icon-pin-s { background-position: -144px -144px; }
.ui-icon-play { background-position: 0 -160px; }
.ui-icon-pause { background-position: -16px -160px; }
.ui-icon-seek-next { background-position: -32px -160px; }
.ui-icon-seek-prev { background-position: -48px -160px; }
.ui-icon-seek-end { background-position: -64px -160px; }
.ui-icon-seek-start { background-position: -80px -160px; }
/* ui-icon-seek-first is deprecated, use ui-icon-seek-start instead */
.ui-icon-seek-first { background-position: -80px -160px; }
.ui-icon-stop { background-position: -96px -160px; }
.ui-icon-eject { background-position: -112px -160px; }
.ui-icon-volume-off { background-position: -128px -160px; }
.ui-icon-volume-on { background-position: -144px -160px; }
.ui-icon-power { background-position: 0 -176px; }
.ui-icon-signal-diag { background-position: -16px -176px; }
.ui-icon-signal { background-position: -32px -176px; }
.ui-icon-battery-0 { background-position: -48px -176px; }
.ui-icon-battery-1 { background-position: -64px -176px; }
.ui-icon-battery-2 { background-position: -80px -176px; }
.ui-icon-battery-3 { background-position: -96px -176px; }
.ui-icon-circle-plus { background-position: 0 -192px; }
.ui-icon-circle-minus { background-position: -16px -192px; }
.ui-icon-circle-close { background-position: -32px -192px; }
.ui-icon-circle-triangle-e { background-position: -48px -192px; }
.ui-icon-circle-triangle-s { background-position: -64px -192px; }
.ui-icon-circle-triangle-w { background-position: -80px -192px; }
.ui-icon-circle-triangle-n { background-position: -96px -192px; }
.ui-icon-circle-arrow-e { background-position: -112px -192px; }
.ui-icon-circle-arrow-s { background-position: -128px -192px; }
.ui-icon-circle-arrow-w { background-position: -144px -192px; }
.ui-icon-circle-arrow-n { background-position: -160px -192px; }
.ui-icon-circle-zoomin { background-position: -176px -192px; }
.ui-icon-circle-zoomout { background-position: -192px -192px; }
.ui-icon-circle-check { background-position: -208px -192px; }
.ui-icon-circlesmall-plus { background-position: 0 -208px; }
.ui-icon-circlesmall-minus { background-position: -16px -208px; }
.ui-icon-circlesmall-close { background-position: -32px -208px; }
.ui-icon-squaresmall-plus { background-position: -48px -208px; }
.ui-icon-squaresmall-minus { background-position: -64px -208px; }
.ui-icon-squaresmall-close { background-position: -80px -208px; }
.ui-icon-grip-dotted-vertical { background-position: 0 -224px; }
.ui-icon-grip-dotted-horizontal { background-position: -16px -224px; }
.ui-icon-grip-solid-vertical { background-position: -32px -224px; }
.ui-icon-grip-solid-horizontal { background-position: -48px -224px; }
.ui-icon-gripsmall-diagonal-se { background-position: -64px -224px; }
.ui-icon-grip-diagonal-se { background-position: -80px -224px; }


/* Misc visuals
----------------------------------*/

/* Corner radius */
.ui-corner-all,
.ui-corner-top,
.ui-corner-left,
.ui-corner-tl {
	border-top-left-radius: 3px/*{cornerRadius}*/;
}
.ui-corner-all,
.ui-corner-top,
.ui-corner-right,
.ui-corner-tr {
	border-top-right-radius: 3px/*{cornerRadius}*/;
}
.ui-corner-all,
.ui-corner-bottom,
.ui-corner-left,
.ui-corner-bl {
	border-bottom-left-radius: 3px/*{cornerRadius}*/;
}
.ui-corner-all,
.ui-corner-bottom,
.ui-corner-right,
.ui-corner-br {
	border-bottom-right-radius: 3px/*{cornerRadius}*/;
}

/* Overlays */
.ui-widget-overlay {
	background: #aaaaaa/*{bgColorOverlay}*/ /*{bgImgUrlOverlay}*/ /*{bgOverlayXPos}*/ /*{bgOverlayYPos}*/ /*{bgOverlayRepeat}*/;
	opacity: .3/*{opacityOverlay}*/;
	filter: Alpha(Opacity=30)/*{opacityFilterOverlay}*/; /* support: IE8 */
}
.ui-widget-shadow {
	-webkit-box-shadow: 0/*{offsetLeftShadow}*/ 0/*{offsetTopShadow}*/ 5px/*{thicknessShadow}*/ #666666/*{bgColorShadow}*/;
	box-shadow: 0/*{offsetLeftShadow}*/ 0/*{offsetTopShadow}*/ 5px/*{thicknessShadow}*/ #666666/*{bgColorShadow}*/;
}

/*!
 * jQuery UI CSS Framework 1.12.1
 * http://jqueryui.com
 *
 * Copyright jQuery Foundation and other contributors
 * Released under the MIT license.
 * http://jquery.org/license
 *
 * http://api.jqueryui.com/category/theming/
 */

@charset "UTF-8";

/*!
 * animate.css -https://daneden.github.io/animate.css/
 * Version - 3.7.2
 * Licensed under the MIT license - http://opensource.org/licenses/MIT
 *
 * Copyright (c) 2019 Daniel Eden
 */

@-webkit-keyframes bounce {
  from,
  20%,
  53%,
  80%,
  to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  40%,
  43% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    -webkit-transform: translate3d(0, -30px, 0);
    transform: translate3d(0, -30px, 0);
  }

  70% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    -webkit-transform: translate3d(0, -15px, 0);
    transform: translate3d(0, -15px, 0);
  }

  90% {
    -webkit-transform: translate3d(0, -4px, 0);
    transform: translate3d(0, -4px, 0);
  }
}

@keyframes bounce {
  from,
  20%,
  53%,
  80%,
  to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  40%,
  43% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    -webkit-transform: translate3d(0, -30px, 0);
    transform: translate3d(0, -30px, 0);
  }

  70% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    -webkit-transform: translate3d(0, -15px, 0);
    transform: translate3d(0, -15px, 0);
  }

  90% {
    -webkit-transform: translate3d(0, -4px, 0);
    transform: translate3d(0, -4px, 0);
  }
}

.bounce {
  -webkit-animation-name: bounce;
  animation-name: bounce;
  -webkit-transform-origin: center bottom;
  transform-origin: center bottom;
}

@-webkit-keyframes flash {
  from,
  50%,
  to {
    opacity: 1;
  }

  25%,
  75% {
    opacity: 0;
  }
}

@keyframes flash {
  from,
  50%,
  to {
    opacity: 1;
  }

  25%,
  75% {
    opacity: 0;
  }
}

.flash {
  -webkit-animation-name: flash;
  animation-name: flash;
}

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */

@-webkit-keyframes pulse {
  from {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }

  50% {
    -webkit-transform: scale3d(1.05, 1.05, 1.05);
    transform: scale3d(1.05, 1.05, 1.05);
  }

  to {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}

@keyframes pulse {
  from {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }

  50% {
    -webkit-transform: scale3d(1.05, 1.05, 1.05);
    transform: scale3d(1.05, 1.05, 1.05);
  }

  to {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}

.pulse {
  -webkit-animation-name: pulse;
  animation-name: pulse;
}

@-webkit-keyframes rubberBand {
  from {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }

  30% {
    -webkit-transform: scale3d(1.25, 0.75, 1);
    transform: scale3d(1.25, 0.75, 1);
  }

  40% {
    -webkit-transform: scale3d(0.75, 1.25, 1);
    transform: scale3d(0.75, 1.25, 1);
  }

  50% {
    -webkit-transform: scale3d(1.15, 0.85, 1);
    transform: scale3d(1.15, 0.85, 1);
  }

  65% {
    -webkit-transform: scale3d(0.95, 1.05, 1);
    transform: scale3d(0.95, 1.05, 1);
  }

  75% {
    -webkit-transform: scale3d(1.05, 0.95, 1);
    transform: scale3d(1.05, 0.95, 1);
  }

  to {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}

@keyframes rubberBand {
  from {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }

  30% {
    -webkit-transform: scale3d(1.25, 0.75, 1);
    transform: scale3d(1.25, 0.75, 1);
  }

  40% {
    -webkit-transform: scale3d(0.75, 1.25, 1);
    transform: scale3d(0.75, 1.25, 1);
  }

  50% {
    -webkit-transform: scale3d(1.15, 0.85, 1);
    transform: scale3d(1.15, 0.85, 1);
  }

  65% {
    -webkit-transform: scale3d(0.95, 1.05, 1);
    transform: scale3d(0.95, 1.05, 1);
  }

  75% {
    -webkit-transform: scale3d(1.05, 0.95, 1);
    transform: scale3d(1.05, 0.95, 1);
  }

  to {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}

.rubberBand {
  -webkit-animation-name: rubberBand;
  animation-name: rubberBand;
}

@-webkit-keyframes shake {
  from,
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  10%,
  30%,
  50%,
  70%,
  90% {
    -webkit-transform: translate3d(-10px, 0, 0);
    transform: translate3d(-10px, 0, 0);
  }

  20%,
  40%,
  60%,
  80% {
    -webkit-transform: translate3d(10px, 0, 0);
    transform: translate3d(10px, 0, 0);
  }
}

@keyframes shake {
  from,
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  10%,
  30%,
  50%,
  70%,
  90% {
    -webkit-transform: translate3d(-10px, 0, 0);
    transform: translate3d(-10px, 0, 0);
  }

  20%,
  40%,
  60%,
  80% {
    -webkit-transform: translate3d(10px, 0, 0);
    transform: translate3d(10px, 0, 0);
  }
}

.shake {
  -webkit-animation-name: shake;
  animation-name: shake;
}

@-webkit-keyframes headShake {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }

  6.5% {
    -webkit-transform: translateX(-6px) rotateY(-9deg);
    transform: translateX(-6px) rotateY(-9deg);
  }

  18.5% {
    -webkit-transform: translateX(5px) rotateY(7deg);
    transform: translateX(5px) rotateY(7deg);
  }

  31.5% {
    -webkit-transform: translateX(-3px) rotateY(-5deg);
    transform: translateX(-3px) rotateY(-5deg);
  }

  43.5% {
    -webkit-transform: translateX(2px) rotateY(3deg);
    transform: translateX(2px) rotateY(3deg);
  }

  50% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}

@keyframes headShake {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }

  6.5% {
    -webkit-transform: translateX(-6px) rotateY(-9deg);
    transform: translateX(-6px) rotateY(-9deg);
  }

  18.5% {
    -webkit-transform: translateX(5px) rotateY(7deg);
    transform: translateX(5px) rotateY(7deg);
  }

  31.5% {
    -webkit-transform: translateX(-3px) rotateY(-5deg);
    transform: translateX(-3px) rotateY(-5deg);
  }

  43.5% {
    -webkit-transform: translateX(2px) rotateY(3deg);
    transform: translateX(2px) rotateY(3deg);
  }

  50% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}

.headShake {
  -webkit-animation-timing-function: ease-in-out;
  animation-timing-function: ease-in-out;
  -webkit-animation-name: headShake;
  animation-name: headShake;
}

@-webkit-keyframes swing {
  20% {
    -webkit-transform: rotate3d(0, 0, 1, 15deg);
    transform: rotate3d(0, 0, 1, 15deg);
  }

  40% {
    -webkit-transform: rotate3d(0, 0, 1, -10deg);
    transform: rotate3d(0, 0, 1, -10deg);
  }

  60% {
    -webkit-transform: rotate3d(0, 0, 1, 5deg);
    transform: rotate3d(0, 0, 1, 5deg);
  }

  80% {
    -webkit-transform: rotate3d(0, 0, 1, -5deg);
    transform: rotate3d(0, 0, 1, -5deg);
  }

  to {
    -webkit-transform: rotate3d(0, 0, 1, 0deg);
    transform: rotate3d(0, 0, 1, 0deg);
  }
}

@keyframes swing {
  20% {
    -webkit-transform: rotate3d(0, 0, 1, 15deg);
    transform: rotate3d(0, 0, 1, 15deg);
  }

  40% {
    -webkit-transform: rotate3d(0, 0, 1, -10deg);
    transform: rotate3d(0, 0, 1, -10deg);
  }

  60% {
    -webkit-transform: rotate3d(0, 0, 1, 5deg);
    transform: rotate3d(0, 0, 1, 5deg);
  }

  80% {
    -webkit-transform: rotate3d(0, 0, 1, -5deg);
    transform: rotate3d(0, 0, 1, -5deg);
  }

  to {
    -webkit-transform: rotate3d(0, 0, 1, 0deg);
    transform: rotate3d(0, 0, 1, 0deg);
  }
}

.swing {
  -webkit-transform-origin: top center;
  transform-origin: top center;
  -webkit-animation-name: swing;
  animation-name: swing;
}

@-webkit-keyframes tada {
  from {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }

  10%,
  20% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg);
    transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg);
  }

  30%,
  50%,
  70%,
  90% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
    transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
  }

  40%,
  60%,
  80% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
    transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
  }

  to {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}

@keyframes tada {
  from {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }

  10%,
  20% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg);
    transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg);
  }

  30%,
  50%,
  70%,
  90% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
    transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
  }

  40%,
  60%,
  80% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
    transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
  }

  to {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}

.tada {
  -webkit-animation-name: tada;
  animation-name: tada;
}

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */

@-webkit-keyframes wobble {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  15% {
    -webkit-transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);
    transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);
  }

  30% {
    -webkit-transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);
    transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);
  }

  45% {
    -webkit-transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);
    transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);
  }

  60% {
    -webkit-transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);
    transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);
  }

  75% {
    -webkit-transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);
    transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes wobble {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  15% {
    -webkit-transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);
    transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);
  }

  30% {
    -webkit-transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);
    transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);
  }

  45% {
    -webkit-transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);
    transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);
  }

  60% {
    -webkit-transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);
    transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);
  }

  75% {
    -webkit-transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);
    transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.wobble {
  -webkit-animation-name: wobble;
  animation-name: wobble;
}

@-webkit-keyframes jello {
  from,
  11.1%,
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  22.2% {
    -webkit-transform: skewX(-12.5deg) skewY(-12.5deg);
    transform: skewX(-12.5deg) skewY(-12.5deg);
  }

  33.3% {
    -webkit-transform: skewX(6.25deg) skewY(6.25deg);
    transform: skewX(6.25deg) skewY(6.25deg);
  }

  44.4% {
    -webkit-transform: skewX(-3.125deg) skewY(-3.125deg);
    transform: skewX(-3.125deg) skewY(-3.125deg);
  }

  55.5% {
    -webkit-transform: skewX(1.5625deg) skewY(1.5625deg);
    transform: skewX(1.5625deg) skewY(1.5625deg);
  }

  66.6% {
    -webkit-transform: skewX(-0.78125deg) skewY(-0.78125deg);
    transform: skewX(-0.78125deg) skewY(-0.78125deg);
  }

  77.7% {
    -webkit-transform: skewX(0.390625deg) skewY(0.390625deg);
    transform: skewX(0.390625deg) skewY(0.390625deg);
  }

  88.8% {
    -webkit-transform: skewX(-0.1953125deg) skewY(-0.1953125deg);
    transform: skewX(-0.1953125deg) skewY(-0.1953125deg);
  }
}

@keyframes jello {
  from,
  11.1%,
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  22.2% {
    -webkit-transform: skewX(-12.5deg) skewY(-12.5deg);
    transform: skewX(-12.5deg) skewY(-12.5deg);
  }

  33.3% {
    -webkit-transform: skewX(6.25deg) skewY(6.25deg);
    transform: skewX(6.25deg) skewY(6.25deg);
  }

  44.4% {
    -webkit-transform: skewX(-3.125deg) skewY(-3.125deg);
    transform: skewX(-3.125deg) skewY(-3.125deg);
  }

  55.5% {
    -webkit-transform: skewX(1.5625deg) skewY(1.5625deg);
    transform: skewX(1.5625deg) skewY(1.5625deg);
  }

  66.6% {
    -webkit-transform: skewX(-0.78125deg) skewY(-0.78125deg);
    transform: skewX(-0.78125deg) skewY(-0.78125deg);
  }

  77.7% {
    -webkit-transform: skewX(0.390625deg) skewY(0.390625deg);
    transform: skewX(0.390625deg) skewY(0.390625deg);
  }

  88.8% {
    -webkit-transform: skewX(-0.1953125deg) skewY(-0.1953125deg);
    transform: skewX(-0.1953125deg) skewY(-0.1953125deg);
  }
}

.jello {
  -webkit-animation-name: jello;
  animation-name: jello;
  -webkit-transform-origin: center;
  transform-origin: center;
}

@-webkit-keyframes heartBeat {
  0% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }

  14% {
    -webkit-transform: scale(1.3);
    transform: scale(1.3);
  }

  28% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }

  42% {
    -webkit-transform: scale(1.3);
    transform: scale(1.3);
  }

  70% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}

@keyframes heartBeat {
  0% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }

  14% {
    -webkit-transform: scale(1.3);
    transform: scale(1.3);
  }

  28% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }

  42% {
    -webkit-transform: scale(1.3);
    transform: scale(1.3);
  }

  70% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}

.heartBeat {
  -webkit-animation-name: heartBeat;
  animation-name: heartBeat;
  -webkit-animation-duration: 1.3s;
  animation-duration: 1.3s;
  -webkit-animation-timing-function: ease-in-out;
  animation-timing-function: ease-in-out;
}

@-webkit-keyframes bounceIn {
  from,
  20%,
  40%,
  60%,
  80%,
  to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }

  0% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }

  20% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1);
  }

  40% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9);
    transform: scale3d(0.9, 0.9, 0.9);
  }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(1.03, 1.03, 1.03);
    transform: scale3d(1.03, 1.03, 1.03);
  }

  80% {
    -webkit-transform: scale3d(0.97, 0.97, 0.97);
    transform: scale3d(0.97, 0.97, 0.97);
  }

  to {
    opacity: 1;
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}

@keyframes bounceIn {
  from,
  20%,
  40%,
  60%,
  80%,
  to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }

  0% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }

  20% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1);
  }

  40% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9);
    transform: scale3d(0.9, 0.9, 0.9);
  }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(1.03, 1.03, 1.03);
    transform: scale3d(1.03, 1.03, 1.03);
  }

  80% {
    -webkit-transform: scale3d(0.97, 0.97, 0.97);
    transform: scale3d(0.97, 0.97, 0.97);
  }

  to {
    opacity: 1;
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}

.bounceIn {
  -webkit-animation-duration: 0.75s;
  animation-duration: 0.75s;
  -webkit-animation-name: bounceIn;
  animation-name: bounceIn;
}

@-webkit-keyframes bounceInDown {
  from,
  60%,
  75%,
  90%,
  to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }

  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, -3000px, 0);
    transform: translate3d(0, -3000px, 0);
  }

  60% {
    opacity: 1;
    -webkit-transform: translate3d(0, 25px, 0);
    transform: translate3d(0, 25px, 0);
  }

  75% {
    -webkit-transform: translate3d(0, -10px, 0);
    transform: translate3d(0, -10px, 0);
  }

  90% {
    -webkit-transform: translate3d(0, 5px, 0);
    transform: translate3d(0, 5px, 0);
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes bounceInDown {
  from,
  60%,
  75%,
  90%,
  to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }

  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, -3000px, 0);
    transform: translate3d(0, -3000px, 0);
  }

  60% {
    opacity: 1;
    -webkit-transform: translate3d(0, 25px, 0);
    transform: translate3d(0, 25px, 0);
  }

  75% {
    -webkit-transform: translate3d(0, -10px, 0);
    transform: translate3d(0, -10px, 0);
  }

  90% {
    -webkit-transform: translate3d(0, 5px, 0);
    transform: translate3d(0, 5px, 0);
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.bounceInDown {
  -webkit-animation-name: bounceInDown;
  animation-name: bounceInDown;
}

@-webkit-keyframes bounceInLeft {
  from,
  60%,
  75%,
  90%,
  to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }

  0% {
    opacity: 0;
    -webkit-transform: translate3d(-3000px, 0, 0);
    transform: translate3d(-3000px, 0, 0);
  }

  60% {
    opacity: 1;
    -webkit-transform: translate3d(25px, 0, 0);
    transform: translate3d(25px, 0, 0);
  }

  75% {
    -webkit-transform: translate3d(-10px, 0, 0);
    transform: translate3d(-10px, 0, 0);
  }

  90% {
    -webkit-transform: translate3d(5px, 0, 0);
    transform: translate3d(5px, 0, 0);
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes bounceInLeft {
  from,
  60%,
  75%,
  90%,
  to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }

  0% {
    opacity: 0;
    -webkit-transform: translate3d(-3000px, 0, 0);
    transform: translate3d(-3000px, 0, 0);
  }

  60% {
    opacity: 1;
    -webkit-transform: translate3d(25px, 0, 0);
    transform: translate3d(25px, 0, 0);
  }

  75% {
    -webkit-transform: translate3d(-10px, 0, 0);
    transform: translate3d(-10px, 0, 0);
  }

  90% {
    -webkit-transform: translate3d(5px, 0, 0);
    transform: translate3d(5px, 0, 0);
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.bounceInLeft {
  -webkit-animation-name: bounceInLeft;
  animation-name: bounceInLeft;
}

@-webkit-keyframes bounceInRight {
  from,
  60%,
  75%,
  90%,
  to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }

  from {
    opacity: 0;
    -webkit-transform: translate3d(3000px, 0, 0);
    transform: translate3d(3000px, 0, 0);
  }

  60% {
    opacity: 1;
    -webkit-transform: translate3d(-25px, 0, 0);
    transform: translate3d(-25px, 0, 0);
  }

  75% {
    -webkit-transform: translate3d(10px, 0, 0);
    transform: translate3d(10px, 0, 0);
  }

  90% {
    -webkit-transform: translate3d(-5px, 0, 0);
    transform: translate3d(-5px, 0, 0);
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes bounceInRight {
  from,
  60%,
  75%,
  90%,
  to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }

  from {
    opacity: 0;
    -webkit-transform: translate3d(3000px, 0, 0);
    transform: translate3d(3000px, 0, 0);
  }

  60% {
    opacity: 1;
    -webkit-transform: translate3d(-25px, 0, 0);
    transform: translate3d(-25px, 0, 0);
  }

  75% {
    -webkit-transform: translate3d(10px, 0, 0);
    transform: translate3d(10px, 0, 0);
  }

  90% {
    -webkit-transform: translate3d(-5px, 0, 0);
    transform: translate3d(-5px, 0, 0);
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.bounceInRight {
  -webkit-animation-name: bounceInRight;
  animation-name: bounceInRight;
}

@-webkit-keyframes bounceInUp {
  from,
  60%,
  75%,
  90%,
  to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }

  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 3000px, 0);
    transform: translate3d(0, 3000px, 0);
  }

  60% {
    opacity: 1;
    -webkit-transform: translate3d(0, -20px, 0);
    transform: translate3d(0, -20px, 0);
  }

  75% {
    -webkit-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, 10px, 0);
  }

  90% {
    -webkit-transform: translate3d(0, -5px, 0);
    transform: translate3d(0, -5px, 0);
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes bounceInUp {
  from,
  60%,
  75%,
  90%,
  to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }

  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 3000px, 0);
    transform: translate3d(0, 3000px, 0);
  }

  60% {
    opacity: 1;
    -webkit-transform: translate3d(0, -20px, 0);
    transform: translate3d(0, -20px, 0);
  }

  75% {
    -webkit-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, 10px, 0);
  }

  90% {
    -webkit-transform: translate3d(0, -5px, 0);
    transform: translate3d(0, -5px, 0);
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.bounceInUp {
  -webkit-animation-name: bounceInUp;
  animation-name: bounceInUp;
}

@-webkit-keyframes bounceOut {
  20% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9);
    transform: scale3d(0.9, 0.9, 0.9);
  }

  50%,
  55% {
    opacity: 1;
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1);
  }

  to {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }
}

@keyframes bounceOut {
  20% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9);
    transform: scale3d(0.9, 0.9, 0.9);
  }

  50%,
  55% {
    opacity: 1;
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1);
  }

  to {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }
}

.bounceOut {
  -webkit-animation-duration: 0.75s;
  animation-duration: 0.75s;
  -webkit-animation-name: bounceOut;
  animation-name: bounceOut;
}

@-webkit-keyframes bounceOutDown {
  20% {
    -webkit-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, 10px, 0);
  }

  40%,
  45% {
    opacity: 1;
    -webkit-transform: translate3d(0, -20px, 0);
    transform: translate3d(0, -20px, 0);
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0);
  }
}

@keyframes bounceOutDown {
  20% {
    -webkit-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, 10px, 0);
  }

  40%,
  45% {
    opacity: 1;
    -webkit-transform: translate3d(0, -20px, 0);
    transform: translate3d(0, -20px, 0);
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0);
  }
}

.bounceOutDown {
  -webkit-animation-name: bounceOutDown;
  animation-name: bounceOutDown;
}

@-webkit-keyframes bounceOutLeft {
  20% {
    opacity: 1;
    -webkit-transform: translate3d(20px, 0, 0);
    transform: translate3d(20px, 0, 0);
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0);
  }
}

@keyframes bounceOutLeft {
  20% {
    opacity: 1;
    -webkit-transform: translate3d(20px, 0, 0);
    transform: translate3d(20px, 0, 0);
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0);
  }
}

.bounceOutLeft {
  -webkit-animation-name: bounceOutLeft;
  animation-name: bounceOutLeft;
}

@-webkit-keyframes bounceOutRight {
  20% {
    opacity: 1;
    -webkit-transform: translate3d(-20px, 0, 0);
    transform: translate3d(-20px, 0, 0);
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0);
  }
}

@keyframes bounceOutRight {
  20% {
    opacity: 1;
    -webkit-transform: translate3d(-20px, 0, 0);
    transform: translate3d(-20px, 0, 0);
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0);
  }
}

.bounceOutRight {
  -webkit-animation-name: bounceOutRight;
  animation-name: bounceOutRight;
}

@-webkit-keyframes bounceOutUp {
  20% {
    -webkit-transform: translate3d(0, -10px, 0);
    transform: translate3d(0, -10px, 0);
  }

  40%,
  45% {
    opacity: 1;
    -webkit-transform: translate3d(0, 20px, 0);
    transform: translate3d(0, 20px, 0);
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0);
  }
}

@keyframes bounceOutUp {
  20% {
    -webkit-transform: translate3d(0, -10px, 0);
    transform: translate3d(0, -10px, 0);
  }

  40%,
  45% {
    opacity: 1;
    -webkit-transform: translate3d(0, 20px, 0);
    transform: translate3d(0, 20px, 0);
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0);
  }
}

.bounceOutUp {
  -webkit-animation-name: bounceOutUp;
  animation-name: bounceOutUp;
}

@-webkit-keyframes fadeIn {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

@keyframes fadeIn {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

.fadeIn {
  -webkit-animation-name: fadeIn;
  animation-name: fadeIn;
}

@-webkit-keyframes fadeInDown {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes fadeInDown {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.fadeInDown {
  -webkit-animation-name: fadeInDown;
  animation-name: fadeInDown;
}

@-webkit-keyframes fadeInDownBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes fadeInDownBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.fadeInDownBig {
  -webkit-animation-name: fadeInDownBig;
  animation-name: fadeInDownBig;
}

@-webkit-keyframes fadeInLeft {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes fadeInLeft {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.fadeInLeft {
  -webkit-animation-name: fadeInLeft;
  animation-name: fadeInLeft;
}

@-webkit-keyframes fadeInLeftBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes fadeInLeftBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.fadeInLeftBig {
  -webkit-animation-name: fadeInLeftBig;
  animation-name: fadeInLeftBig;
}

@-webkit-keyframes fadeInRight {
  from {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes fadeInRight {
  from {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.fadeInRight {
  -webkit-animation-name: fadeInRight;
  animation-name: fadeInRight;
}

@-webkit-keyframes fadeInRightBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes fadeInRightBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.fadeInRightBig {
  -webkit-animation-name: fadeInRightBig;
  animation-name: fadeInRightBig;
}

@-webkit-keyframes fadeInUp {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes fadeInUp {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.fadeInUp {
  -webkit-animation-name: fadeInUp;
  animation-name: fadeInUp;
}

@-webkit-keyframes fadeInUpBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes fadeInUpBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.fadeInUpBig {
  -webkit-animation-name: fadeInUpBig;
  animation-name: fadeInUpBig;
}

@-webkit-keyframes fadeOut {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
  }
}

@keyframes fadeOut {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
  }
}

.fadeOut {
  -webkit-animation-name: fadeOut;
  animation-name: fadeOut;
}

@-webkit-keyframes fadeOutDown {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
  }
}

@keyframes fadeOutDown {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
  }
}

.fadeOutDown {
  -webkit-animation-name: fadeOutDown;
  animation-name: fadeOutDown;
}

@-webkit-keyframes fadeOutDownBig {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0);
  }
}

@keyframes fadeOutDownBig {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0);
  }
}

.fadeOutDownBig {
  -webkit-animation-name: fadeOutDownBig;
  animation-name: fadeOutDownBig;
}

@-webkit-keyframes fadeOutLeft {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
}

@keyframes fadeOutLeft {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
}

.fadeOutLeft {
  -webkit-animation-name: fadeOutLeft;
  animation-name: fadeOutLeft;
}

@-webkit-keyframes fadeOutLeftBig {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0);
  }
}

@keyframes fadeOutLeftBig {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0);
  }
}

.fadeOutLeftBig {
  -webkit-animation-name: fadeOutLeftBig;
  animation-name: fadeOutLeftBig;
}

@-webkit-keyframes fadeOutRight {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }
}

@keyframes fadeOutRight {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }
}

.fadeOutRight {
  -webkit-animation-name: fadeOutRight;
  animation-name: fadeOutRight;
}

@-webkit-keyframes fadeOutRightBig {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0);
  }
}

@keyframes fadeOutRightBig {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0);
  }
}

.fadeOutRightBig {
  -webkit-animation-name: fadeOutRightBig;
  animation-name: fadeOutRightBig;
}

@-webkit-keyframes fadeOutUp {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
  }
}

@keyframes fadeOutUp {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
  }
}

.fadeOutUp {
  -webkit-animation-name: fadeOutUp;
  animation-name: fadeOutUp;
}

@-webkit-keyframes fadeOutUpBig {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0);
  }
}

@keyframes fadeOutUpBig {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0);
  }
}

.fadeOutUpBig {
  -webkit-animation-name: fadeOutUpBig;
  animation-name: fadeOutUpBig;
}

@-webkit-keyframes flip {
  from {
    -webkit-transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0)
      rotate3d(0, 1, 0, -360deg);
    transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0) rotate3d(0, 1, 0, -360deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }

  40% {
    -webkit-transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px)
      rotate3d(0, 1, 0, -190deg);
    transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px)
      rotate3d(0, 1, 0, -190deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }

  50% {
    -webkit-transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px)
      rotate3d(0, 1, 0, -170deg);
    transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px)
      rotate3d(0, 1, 0, -170deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }

  80% {
    -webkit-transform: perspective(400px) scale3d(0.95, 0.95, 0.95) translate3d(0, 0, 0)
      rotate3d(0, 1, 0, 0deg);
    transform: perspective(400px) scale3d(0.95, 0.95, 0.95) translate3d(0, 0, 0)
      rotate3d(0, 1, 0, 0deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }

  to {
    -webkit-transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0)
      rotate3d(0, 1, 0, 0deg);
    transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0) rotate3d(0, 1, 0, 0deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }
}

@keyframes flip {
  from {
    -webkit-transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0)
      rotate3d(0, 1, 0, -360deg);
    transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0) rotate3d(0, 1, 0, -360deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }

  40% {
    -webkit-transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px)
      rotate3d(0, 1, 0, -190deg);
    transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px)
      rotate3d(0, 1, 0, -190deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }

  50% {
    -webkit-transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px)
      rotate3d(0, 1, 0, -170deg);
    transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px)
      rotate3d(0, 1, 0, -170deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }

  80% {
    -webkit-transform: perspective(400px) scale3d(0.95, 0.95, 0.95) translate3d(0, 0, 0)
      rotate3d(0, 1, 0, 0deg);
    transform: perspective(400px) scale3d(0.95, 0.95, 0.95) translate3d(0, 0, 0)
      rotate3d(0, 1, 0, 0deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }

  to {
    -webkit-transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0)
      rotate3d(0, 1, 0, 0deg);
    transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0) rotate3d(0, 1, 0, 0deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }
}

.animated.flip {
  -webkit-backface-visibility: visible;
  backface-visibility: visible;
  -webkit-animation-name: flip;
  animation-name: flip;
}

@-webkit-keyframes flipInX {
  from {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
    opacity: 0;
  }

  40% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }

  60% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
    opacity: 1;
  }

  80% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
  }

  to {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }
}

@keyframes flipInX {
  from {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
    opacity: 0;
  }

  40% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }

  60% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
    opacity: 1;
  }

  80% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
  }

  to {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }
}

.flipInX {
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
  -webkit-animation-name: flipInX;
  animation-name: flipInX;
}

@-webkit-keyframes flipInY {
  from {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
    opacity: 0;
  }

  40% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }

  60% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
    opacity: 1;
  }

  80% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
  }

  to {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }
}

@keyframes flipInY {
  from {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
    opacity: 0;
  }

  40% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }

  60% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
    opacity: 1;
  }

  80% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
  }

  to {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }
}

.flipInY {
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
  -webkit-animation-name: flipInY;
  animation-name: flipInY;
}

@-webkit-keyframes flipOutX {
  from {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }

  30% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    opacity: 1;
  }

  to {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    opacity: 0;
  }
}

@keyframes flipOutX {
  from {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }

  30% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    opacity: 1;
  }

  to {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    opacity: 0;
  }
}

.flipOutX {
  -webkit-animation-duration: 0.75s;
  animation-duration: 0.75s;
  -webkit-animation-name: flipOutX;
  animation-name: flipOutX;
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
}

@-webkit-keyframes flipOutY {
  from {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }

  30% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
    opacity: 1;
  }

  to {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    opacity: 0;
  }
}

@keyframes flipOutY {
  from {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }

  30% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
    opacity: 1;
  }

  to {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    opacity: 0;
  }
}

.flipOutY {
  -webkit-animation-duration: 0.75s;
  animation-duration: 0.75s;
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
  -webkit-animation-name: flipOutY;
  animation-name: flipOutY;
}

@-webkit-keyframes lightSpeedIn {
  from {
    -webkit-transform: translate3d(100%, 0, 0) skewX(-30deg);
    transform: translate3d(100%, 0, 0) skewX(-30deg);
    opacity: 0;
  }

  60% {
    -webkit-transform: skewX(20deg);
    transform: skewX(20deg);
    opacity: 1;
  }

  80% {
    -webkit-transform: skewX(-5deg);
    transform: skewX(-5deg);
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes lightSpeedIn {
  from {
    -webkit-transform: translate3d(100%, 0, 0) skewX(-30deg);
    transform: translate3d(100%, 0, 0) skewX(-30deg);
    opacity: 0;
  }

  60% {
    -webkit-transform: skewX(20deg);
    transform: skewX(20deg);
    opacity: 1;
  }

  80% {
    -webkit-transform: skewX(-5deg);
    transform: skewX(-5deg);
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.lightSpeedIn {
  -webkit-animation-name: lightSpeedIn;
  animation-name: lightSpeedIn;
  -webkit-animation-timing-function: ease-out;
  animation-timing-function: ease-out;
}

@-webkit-keyframes lightSpeedOut {
  from {
    opacity: 1;
  }

  to {
    -webkit-transform: translate3d(100%, 0, 0) skewX(30deg);
    transform: translate3d(100%, 0, 0) skewX(30deg);
    opacity: 0;
  }
}

@keyframes lightSpeedOut {
  from {
    opacity: 1;
  }

  to {
    -webkit-transform: translate3d(100%, 0, 0) skewX(30deg);
    transform: translate3d(100%, 0, 0) skewX(30deg);
    opacity: 0;
  }
}

.lightSpeedOut {
  -webkit-animation-name: lightSpeedOut;
  animation-name: lightSpeedOut;
  -webkit-animation-timing-function: ease-in;
  animation-timing-function: ease-in;
}

@-webkit-keyframes rotateIn {
  from {
    -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: rotate3d(0, 0, 1, -200deg);
    transform: rotate3d(0, 0, 1, -200deg);
    opacity: 0;
  }

  to {
    -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}

@keyframes rotateIn {
  from {
    -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: rotate3d(0, 0, 1, -200deg);
    transform: rotate3d(0, 0, 1, -200deg);
    opacity: 0;
  }

  to {
    -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}

.rotateIn {
  -webkit-animation-name: rotateIn;
  animation-name: rotateIn;
}

@-webkit-keyframes rotateInDownLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0;
  }

  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}

@keyframes rotateInDownLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0;
  }

  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}

.rotateInDownLeft {
  -webkit-animation-name: rotateInDownLeft;
  animation-name: rotateInDownLeft;
}

@-webkit-keyframes rotateInDownRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0;
  }

  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}

@keyframes rotateInDownRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0;
  }

  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}

.rotateInDownRight {
  -webkit-animation-name: rotateInDownRight;
  animation-name: rotateInDownRight;
}

@-webkit-keyframes rotateInUpLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0;
  }

  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}

@keyframes rotateInUpLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0;
  }

  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}

.rotateInUpLeft {
  -webkit-animation-name: rotateInUpLeft;
  animation-name: rotateInUpLeft;
}

@-webkit-keyframes rotateInUpRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, -90deg);
    transform: rotate3d(0, 0, 1, -90deg);
    opacity: 0;
  }

  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}

@keyframes rotateInUpRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, -90deg);
    transform: rotate3d(0, 0, 1, -90deg);
    opacity: 0;
  }

  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}

.rotateInUpRight {
  -webkit-animation-name: rotateInUpRight;
  animation-name: rotateInUpRight;
}

@-webkit-keyframes rotateOut {
  from {
    -webkit-transform-origin: center;
    transform-origin: center;
    opacity: 1;
  }

  to {
    -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: rotate3d(0, 0, 1, 200deg);
    transform: rotate3d(0, 0, 1, 200deg);
    opacity: 0;
  }
}

@keyframes rotateOut {
  from {
    -webkit-transform-origin: center;
    transform-origin: center;
    opacity: 1;
  }

  to {
    -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: rotate3d(0, 0, 1, 200deg);
    transform: rotate3d(0, 0, 1, 200deg);
    opacity: 0;
  }
}

.rotateOut {
  -webkit-animation-name: rotateOut;
  animation-name: rotateOut;
}

@-webkit-keyframes rotateOutDownLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    opacity: 1;
  }

  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0;
  }
}

@keyframes rotateOutDownLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    opacity: 1;
  }

  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0;
  }
}

.rotateOutDownLeft {
  -webkit-animation-name: rotateOutDownLeft;
  animation-name: rotateOutDownLeft;
}

@-webkit-keyframes rotateOutDownRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    opacity: 1;
  }

  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0;
  }
}

@keyframes rotateOutDownRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    opacity: 1;
  }

  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0;
  }
}

.rotateOutDownRight {
  -webkit-animation-name: rotateOutDownRight;
  animation-name: rotateOutDownRight;
}

@-webkit-keyframes rotateOutUpLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    opacity: 1;
  }

  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0;
  }
}

@keyframes rotateOutUpLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    opacity: 1;
  }

  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0;
  }
}

.rotateOutUpLeft {
  -webkit-animation-name: rotateOutUpLeft;
  animation-name: rotateOutUpLeft;
}

@-webkit-keyframes rotateOutUpRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    opacity: 1;
  }

  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, 90deg);
    transform: rotate3d(0, 0, 1, 90deg);
    opacity: 0;
  }
}

@keyframes rotateOutUpRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    opacity: 1;
  }

  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, 90deg);
    transform: rotate3d(0, 0, 1, 90deg);
    opacity: 0;
  }
}

.rotateOutUpRight {
  -webkit-animation-name: rotateOutUpRight;
  animation-name: rotateOutUpRight;
}

@-webkit-keyframes hinge {
  0% {
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }

  20%,
  60% {
    -webkit-transform: rotate3d(0, 0, 1, 80deg);
    transform: rotate3d(0, 0, 1, 80deg);
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }

  40%,
  80% {
    -webkit-transform: rotate3d(0, 0, 1, 60deg);
    transform: rotate3d(0, 0, 1, 60deg);
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
    opacity: 1;
  }

  to {
    -webkit-transform: translate3d(0, 700px, 0);
    transform: translate3d(0, 700px, 0);
    opacity: 0;
  }
}

@keyframes hinge {
  0% {
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }

  20%,
  60% {
    -webkit-transform: rotate3d(0, 0, 1, 80deg);
    transform: rotate3d(0, 0, 1, 80deg);
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }

  40%,
  80% {
    -webkit-transform: rotate3d(0, 0, 1, 60deg);
    transform: rotate3d(0, 0, 1, 60deg);
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
    opacity: 1;
  }

  to {
    -webkit-transform: translate3d(0, 700px, 0);
    transform: translate3d(0, 700px, 0);
    opacity: 0;
  }
}

.hinge {
  -webkit-animation-duration: 2s;
  animation-duration: 2s;
  -webkit-animation-name: hinge;
  animation-name: hinge;
}

@-webkit-keyframes jackInTheBox {
  from {
    opacity: 0;
    -webkit-transform: scale(0.1) rotate(30deg);
    transform: scale(0.1) rotate(30deg);
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom;
  }

  50% {
    -webkit-transform: rotate(-10deg);
    transform: rotate(-10deg);
  }

  70% {
    -webkit-transform: rotate(3deg);
    transform: rotate(3deg);
  }

  to {
    opacity: 1;
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}

@keyframes jackInTheBox {
  from {
    opacity: 0;
    -webkit-transform: scale(0.1) rotate(30deg);
    transform: scale(0.1) rotate(30deg);
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom;
  }

  50% {
    -webkit-transform: rotate(-10deg);
    transform: rotate(-10deg);
  }

  70% {
    -webkit-transform: rotate(3deg);
    transform: rotate(3deg);
  }

  to {
    opacity: 1;
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}

.jackInTheBox {
  -webkit-animation-name: jackInTheBox;
  animation-name: jackInTheBox;
}

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */

@-webkit-keyframes rollIn {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
    transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes rollIn {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
    transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.rollIn {
  -webkit-animation-name: rollIn;
  animation-name: rollIn;
}

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */

@-webkit-keyframes rollOut {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);
    transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);
  }
}

@keyframes rollOut {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);
    transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);
  }
}

.rollOut {
  -webkit-animation-name: rollOut;
  animation-name: rollOut;
}

@-webkit-keyframes zoomIn {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }

  50% {
    opacity: 1;
  }
}

@keyframes zoomIn {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }

  50% {
    opacity: 1;
  }
}

.zoomIn {
  -webkit-animation-name: zoomIn;
  animation-name: zoomIn;
}

@-webkit-keyframes zoomInDown {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}

@keyframes zoomInDown {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}

.zoomInDown {
  -webkit-animation-name: zoomInDown;
  animation-name: zoomInDown;
}

@-webkit-keyframes zoomInLeft {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}

@keyframes zoomInLeft {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}

.zoomInLeft {
  -webkit-animation-name: zoomInLeft;
  animation-name: zoomInLeft;
}

@-webkit-keyframes zoomInRight {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}

@keyframes zoomInRight {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}

.zoomInRight {
  -webkit-animation-name: zoomInRight;
  animation-name: zoomInRight;
}

@-webkit-keyframes zoomInUp {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}

@keyframes zoomInUp {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}

.zoomInUp {
  -webkit-animation-name: zoomInUp;
  animation-name: zoomInUp;
}

@-webkit-keyframes zoomOut {
  from {
    opacity: 1;
  }

  50% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }

  to {
    opacity: 0;
  }
}

@keyframes zoomOut {
  from {
    opacity: 1;
  }

  50% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }

  to {
    opacity: 0;
  }
}

.zoomOut {
  -webkit-animation-name: zoomOut;
  animation-name: zoomOut;
}

@-webkit-keyframes zoomOutDown {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }

  to {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom;
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}

@keyframes zoomOutDown {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }

  to {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom;
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}

.zoomOutDown {
  -webkit-animation-name: zoomOutDown;
  animation-name: zoomOutDown;
}

@-webkit-keyframes zoomOutLeft {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
  }

  to {
    opacity: 0;
    -webkit-transform: scale(0.1) translate3d(-2000px, 0, 0);
    transform: scale(0.1) translate3d(-2000px, 0, 0);
    -webkit-transform-origin: left center;
    transform-origin: left center;
  }
}

@keyframes zoomOutLeft {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
  }

  to {
    opacity: 0;
    -webkit-transform: scale(0.1) translate3d(-2000px, 0, 0);
    transform: scale(0.1) translate3d(-2000px, 0, 0);
    -webkit-transform-origin: left center;
    transform-origin: left center;
  }
}

.zoomOutLeft {
  -webkit-animation-name: zoomOutLeft;
  animation-name: zoomOutLeft;
}

@-webkit-keyframes zoomOutRight {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
  }

  to {
    opacity: 0;
    -webkit-transform: scale(0.1) translate3d(2000px, 0, 0);
    transform: scale(0.1) translate3d(2000px, 0, 0);
    -webkit-transform-origin: right center;
    transform-origin: right center;
  }
}

@keyframes zoomOutRight {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
  }

  to {
    opacity: 0;
    -webkit-transform: scale(0.1) translate3d(2000px, 0, 0);
    transform: scale(0.1) translate3d(2000px, 0, 0);
    -webkit-transform-origin: right center;
    transform-origin: right center;
  }
}

.zoomOutRight {
  -webkit-animation-name: zoomOutRight;
  animation-name: zoomOutRight;
}

@-webkit-keyframes zoomOutUp {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }

  to {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom;
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}

@keyframes zoomOutUp {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }

  to {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom;
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}

.zoomOutUp {
  -webkit-animation-name: zoomOutUp;
  animation-name: zoomOutUp;
}

@-webkit-keyframes slideInDown {
  from {
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
    visibility: visible;
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes slideInDown {
  from {
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
    visibility: visible;
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.slideInDown {
  -webkit-animation-name: slideInDown;
  animation-name: slideInDown;
}

@-webkit-keyframes slideInLeft {
  from {
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
    visibility: visible;
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes slideInLeft {
  from {
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
    visibility: visible;
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.slideInLeft {
  -webkit-animation-name: slideInLeft;
  animation-name: slideInLeft;
}

@-webkit-keyframes slideInRight {
  from {
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
    visibility: visible;
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes slideInRight {
  from {
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
    visibility: visible;
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.slideInRight {
  -webkit-animation-name: slideInRight;
  animation-name: slideInRight;
}

@-webkit-keyframes slideInUp {
  from {
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
    visibility: visible;
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes slideInUp {
  from {
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
    visibility: visible;
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.slideInUp {
  -webkit-animation-name: slideInUp;
  animation-name: slideInUp;
}

@-webkit-keyframes slideOutDown {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  to {
    visibility: hidden;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
  }
}

@keyframes slideOutDown {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  to {
    visibility: hidden;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
  }
}

.slideOutDown {
  -webkit-animation-name: slideOutDown;
  animation-name: slideOutDown;
}

@-webkit-keyframes slideOutLeft {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  to {
    visibility: hidden;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
}

@keyframes slideOutLeft {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  to {
    visibility: hidden;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
}

.slideOutLeft {
  -webkit-animation-name: slideOutLeft;
  animation-name: slideOutLeft;
}

@-webkit-keyframes slideOutRight {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  to {
    visibility: hidden;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }
}

@keyframes slideOutRight {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  to {
    visibility: hidden;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }
}

.slideOutRight {
  -webkit-animation-name: slideOutRight;
  animation-name: slideOutRight;
}

@-webkit-keyframes slideOutUp {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  to {
    visibility: hidden;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
  }
}

@keyframes slideOutUp {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  to {
    visibility: hidden;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
  }
}

.slideOutUp {
  -webkit-animation-name: slideOutUp;
  animation-name: slideOutUp;
}

.animated {
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
}

.animated.infinite {
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
}

.animated.delay-1s {
  -webkit-animation-delay: 1s;
  animation-delay: 1s;
}

.animated.delay-2s {
  -webkit-animation-delay: 2s;
  animation-delay: 2s;
}

.animated.delay-3s {
  -webkit-animation-delay: 3s;
  animation-delay: 3s;
}

.animated.delay-4s {
  -webkit-animation-delay: 4s;
  animation-delay: 4s;
}

.animated.delay-5s {
  -webkit-animation-delay: 5s;
  animation-delay: 5s;
}

.animated.fast {
  -webkit-animation-duration: 800ms;
  animation-duration: 800ms;
}

.animated.faster {
  -webkit-animation-duration: 500ms;
  animation-duration: 500ms;
}

.animated.slow {
  -webkit-animation-duration: 2s;
  animation-duration: 2s;
}

.animated.slower {
  -webkit-animation-duration: 3s;
  animation-duration: 3s;
}

@media (print), (prefers-reduced-motion: reduce) {
  .animated {
    -webkit-animation-duration: 1ms !important;
    animation-duration: 1ms !important;
    -webkit-transition-duration: 1ms !important;
    transition-duration: 1ms !important;
    -webkit-animation-iteration-count: 1 !important;
    animation-iteration-count: 1 !important;
  }
}

/*!
 * OverlayScrollbars
 * https://github.com/KingSora/OverlayScrollbars
 *
 * Version: 1.13.0
 *
 * Copyright KingSora | Rene Haas.
 * https://github.com/KingSora
 *
 * Released under the MIT license.
 * Date: 02.08.2020
 */

/*
OVERLAY SCROLLBARS CORE:
*/

html.os-html,
html.os-html > .os-host {
    display: block;
    overflow: hidden;
    box-sizing: border-box;
    height: 100% !important;
    width: 100% !important;
    min-width: 100% !important;
    min-height: 100% !important;
    margin: 0 !important;
    position: absolute !important; /* could be position: fixed; but it causes issues on iOS (-webkit-overflow-scrolling: touch) */
}
html.os-html > .os-host > .os-padding {
    position: absolute; /* could be position: fixed; but it causes issues on iOS (-webkit-overflow-scrolling: touch) */
}
body.os-dragging,
body.os-dragging * {
    cursor: default;
}
.os-host,
.os-host-textarea {
    position: relative;
    overflow: visible !important;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -ms-flex-line-pack: start;
        align-content: flex-start;
    -webkit-box-align: start;
        -ms-flex-align: start;
                -ms-grid-row-align: flex-start;
            align-items: flex-start;
}
.os-host-flexbox {
    overflow: hidden !important;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}
.os-host-flexbox > .os-size-auto-observer {
    height: inherit !important;
}
.os-host-flexbox > .os-content-glue {
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    -ms-flex-negative: 0;
        flex-shrink: 0;
}
.os-host-flexbox > .os-size-auto-observer,
.os-host-flexbox > .os-content-glue {
    min-height: 0;
    min-width: 0;
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-negative: 1;
        flex-shrink: 1;
    -ms-flex-preferred-size: auto;
        flex-basis: auto;
}
#os-dummy-scrollbar-size {
    position: fixed;
    opacity: 0;
    -ms-filter: 'progid:DXImageTransform.Microsoft.Alpha(Opacity=0)';
    visibility: hidden;
    overflow: scroll;
    height: 500px;
    width: 500px;
}
#os-dummy-scrollbar-size > div {
    width: 200%;
    height: 200%; 
    margin: 10px 0;
}
/* fix restricted measuring */
#os-dummy-scrollbar-size:before,
#os-dummy-scrollbar-size:after,
.os-content:before,
.os-content:after {
    content: '';
    display: table;
    width: 0.01px;
    height: 0.01px;
    line-height: 0;
    font-size: 0;
    flex-grow: 0;
    flex-shrink: 0;
    visibility: hidden;
}
#os-dummy-scrollbar-size,
.os-viewport {
    -ms-overflow-style: scrollbar !important;
}
.os-viewport-native-scrollbars-invisible#os-dummy-scrollbar-size,
.os-viewport-native-scrollbars-invisible.os-viewport {
    scrollbar-width: none !important;
}
.os-viewport-native-scrollbars-invisible#os-dummy-scrollbar-size::-webkit-scrollbar,
.os-viewport-native-scrollbars-invisible.os-viewport::-webkit-scrollbar,
.os-viewport-native-scrollbars-invisible#os-dummy-scrollbar-size::-webkit-scrollbar-corner,
.os-viewport-native-scrollbars-invisible.os-viewport::-webkit-scrollbar-corner {
    display: none !important;
    width: 0px !important;
    height: 0px !important;
    visibility: hidden !important;
    background: transparent !important;
}
.os-content-glue {
    box-sizing: inherit;
    max-height: 100%;
    max-width: 100%;
    width: 100%;
    pointer-events: none;
}
.os-padding {
    box-sizing: inherit;
    direction: inherit;
    position: absolute;
    overflow: visible;
    padding: 0;
    margin: 0;
    left: 0;
    top: 0;
    bottom: 0;
    right: 0;
    width: auto !important;
    height: auto !important;
	z-index: 0;
}
.os-host-overflow > .os-padding {
    overflow: hidden;
}
.os-viewport {
    direction: inherit !important;
    box-sizing: inherit !important;
    resize: none !important;
    outline: none !important;
    position: absolute;
    overflow: hidden;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    padding: 0;
    margin: 0;
    -webkit-overflow-scrolling: touch;
}
.os-content-arrange {
    position: absolute;
    z-index: -1;
    min-height: 1px;
    min-width: 1px;
    pointer-events: none;
}
.os-content {
    direction: inherit;
    box-sizing: border-box !important;
    position: relative;
    display: block;
    height: 100%;
    width: 100%;
    height: 100%;
    width: 100%;
    visibility: visible;
}
.os-content > .os-textarea {
    box-sizing: border-box !important;
    direction: inherit !important;
    background: transparent !important;
    outline: 0px none transparent !important;
    overflow: hidden !important;
    position: absolute !important;
    display: block !important;
    top: 0 !important;
    left: 0 !important;
    margin: 0 !important;
    border-radius: 0px !important;
    float: none !important;
    -webkit-filter: none !important;
            filter: none !important;
    border: none !important;
    resize: none !important;
    -webkit-transform: none !important;
            transform: none !important;
    max-width: none !important;
    max-height: none !important;
    box-shadow: none !important;
    -webkit-perspective: none !important;
            perspective: none !important;
    opacity: 1 !important;
    z-index: 1 !important;
    clip: auto !important;
    vertical-align: baseline !important;
    padding: 0px;
}
.os-host-rtl > .os-padding > .os-viewport > .os-content > .os-textarea {
    right: 0 !important;
}
.os-content > .os-textarea-cover {
    z-index: -1;
    pointer-events: none;
}
.os-content > .os-textarea[wrap='off'] {
    white-space: pre !important;
    margin: 0px !important;
}
.os-text-inherit {
    font-family: inherit;
    font-size: inherit;
    font-weight: inherit;
    font-style: inherit;
    font-variant: inherit;
    text-transform: inherit;
    text-decoration: inherit;
    text-indent: inherit;
    text-align: inherit;
    text-shadow: inherit;
    text-overflow: inherit;
    letter-spacing: inherit;
    word-spacing: inherit;
    line-height: inherit;
    unicode-bidi: inherit;
    direction: inherit;
    color: inherit;
    cursor: text;
}
.os-resize-observer,
.os-resize-observer-host {
    box-sizing: inherit;
    display: block;
    visibility: hidden;
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    overflow: hidden;
    pointer-events: none;
    z-index: -1;
}
.os-resize-observer-host {
    padding: inherit;
    border: inherit;
    border-color: transparent;
    border-style: solid;
    box-sizing: border-box;
}
.os-resize-observer-host.observed {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
}
.os-resize-observer-host > .os-resize-observer,
.os-resize-observer-host.observed > .os-resize-observer {
    height: 200%;
    width: 200%;
    padding: inherit;
    border: inherit;
    margin: 0;
    display: block;
    box-sizing: content-box;
}
.os-resize-observer-host.observed > .os-resize-observer,
.os-resize-observer-host.observed > .os-resize-observer:before {
    display: flex;
    position: relative;
    flex-grow: 1;
    flex-shrink: 0;
    flex-basis: auto;
    box-sizing: border-box;
}
.os-resize-observer-host.observed > .os-resize-observer:before {
    content: '';
    box-sizing: content-box;
    padding: inherit;
    border: inherit;
    margin: 0;
}
.os-size-auto-observer {
    box-sizing: inherit !important;
    height: 100%;
    width: inherit;
    max-width: 1px;
    position: relative;
    float: left;
    max-height: 1px;
    overflow: hidden;
    z-index: -1;
    padding: 0;
    margin: 0;
    pointer-events: none;
    -webkit-box-flex: inherit;
        -ms-flex-positive: inherit;
            flex-grow: inherit;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 0;
        flex-basis: 0;
}
.os-size-auto-observer > .os-resize-observer {
    width: 1000%;
    height: 1000%;
    min-height: 1px;
    min-width: 1px;
}
.os-resize-observer-item {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    overflow: hidden;
    z-index: -1;
    opacity: 0;
    direction: ltr !important;
    -webkit-box-flex: 0 !important;
    -ms-flex: none !important;
    flex: none !important;
}
.os-resize-observer-item-final {
    position: absolute;
    left: 0;
    top: 0;
    -webkit-transition: none !important;
    transition: none !important;
    -webkit-box-flex: 0 !important;
    -ms-flex: none !important;
    flex: none !important;
}
.os-resize-observer {
    -webkit-animation-duration: 0.001s;
    animation-duration: 0.001s;
    -webkit-animation-name: os-resize-observer-dummy-animation;
    animation-name: os-resize-observer-dummy-animation;
}
object.os-resize-observer {
    box-sizing: border-box !important;
}
@-webkit-keyframes os-resize-observer-dummy-animation {
    from {
        z-index: 0;
    }
    to {
        z-index: -1;
    }
}
@keyframes os-resize-observer-dummy-animation {
    from {
        z-index: 0;
    }
    to {
        z-index: -1;
    }
}

/*
CUSTOM SCROLLBARS AND CORNER CORE:
*/

.os-host-transition > .os-scrollbar,
.os-host-transition > .os-scrollbar-corner {
    -webkit-transition: opacity 0.3s, visibility 0.3s, top 0.3s, right 0.3s, bottom 0.3s, left 0.3s;
    transition: opacity 0.3s, visibility 0.3s, top 0.3s, right 0.3s, bottom 0.3s, left 0.3s;
}
html.os-html > .os-host > .os-scrollbar {
    position: absolute; /* could be position: fixed; but it causes issues on iOS (-webkit-overflow-scrolling: touch) */
    z-index: 999999; /* highest z-index of the page */
}
.os-scrollbar,
.os-scrollbar-corner {
    position: absolute;
    opacity: 1;
    -ms-filter: 'progid:DXImageTransform.Microsoft.Alpha(Opacity=100)';
    z-index: 1;
}
.os-scrollbar-corner {
    bottom: 0;
    right: 0;
}
.os-scrollbar {
    pointer-events: none;
}
.os-scrollbar-track {
    pointer-events: auto;
    position: relative;
    height: 100%;
    width: 100%;
    padding: 0 !important;
    border: none !important;
}
.os-scrollbar-handle {
    pointer-events: auto;
    position: absolute;
    width: 100%;
    height: 100%;
}
.os-scrollbar-handle-off,
.os-scrollbar-track-off {
    pointer-events: none;
}
.os-scrollbar.os-scrollbar-unusable,
.os-scrollbar.os-scrollbar-unusable * {
    pointer-events: none !important;
}
.os-scrollbar.os-scrollbar-unusable .os-scrollbar-handle {
    opacity: 0 !important;
}
.os-scrollbar-horizontal {
    bottom: 0;
    left: 0;
}
.os-scrollbar-vertical {
    top: 0;
    right: 0;
}
.os-host-rtl > .os-scrollbar-horizontal {
    right: 0;
}
.os-host-rtl > .os-scrollbar-vertical {
    right: auto;
    left: 0;
}
.os-host-rtl > .os-scrollbar-corner {
    right: auto;
    left: 0;
}
.os-scrollbar-auto-hidden,
.os-padding + .os-scrollbar-corner,
.os-host-resize-disabled.os-host-scrollbar-horizontal-hidden > .os-scrollbar-corner,
.os-host-scrollbar-horizontal-hidden > .os-scrollbar-horizontal,
.os-host-resize-disabled.os-host-scrollbar-vertical-hidden > .os-scrollbar-corner,
.os-host-scrollbar-vertical-hidden > .os-scrollbar-vertical,
.os-scrollbar-horizontal.os-scrollbar-auto-hidden + .os-scrollbar-vertical + .os-scrollbar-corner,
.os-scrollbar-horizontal + .os-scrollbar-vertical.os-scrollbar-auto-hidden + .os-scrollbar-corner,
.os-scrollbar-horizontal.os-scrollbar-auto-hidden + .os-scrollbar-vertical.os-scrollbar-auto-hidden + .os-scrollbar-corner {
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
}
.os-scrollbar-corner-resize-both {
    cursor: nwse-resize;
}
.os-host-rtl > .os-scrollbar-corner-resize-both {
    cursor: nesw-resize;
}
.os-scrollbar-corner-resize-horizontal {
    cursor: ew-resize;
}
.os-scrollbar-corner-resize-vertical {
    cursor: ns-resize;
}
.os-dragging .os-scrollbar-corner.os-scrollbar-corner-resize {
    cursor: default;
}
.os-host-resize-disabled.os-host-scrollbar-horizontal-hidden > .os-scrollbar-vertical {
    top: 0;
    bottom: 0;
}
.os-host-resize-disabled.os-host-scrollbar-vertical-hidden > .os-scrollbar-horizontal,
.os-host-rtl.os-host-resize-disabled.os-host-scrollbar-vertical-hidden > .os-scrollbar-horizontal {
    right: 0;
    left: 0;
}
.os-scrollbar:hover,
.os-scrollbar-corner.os-scrollbar-corner-resize {
    opacity: 1 !important;
    visibility: visible !important;
}
.os-scrollbar-corner.os-scrollbar-corner-resize {
    background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+PHN2ZyAgIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIgICB4bWxuczpjYz0iaHR0cDovL2NyZWF0aXZlY29tbW9ucy5vcmcvbnMjIiAgIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyIgICB4bWxuczpzdmc9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiAgIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgICB3aWR0aD0iMTAiICAgaGVpZ2h0PSIxMCIgICB2ZXJzaW9uPSIxLjEiPiAgPGcgICAgIHRyYW5zZm9ybT0idHJhbnNsYXRlKDAsLTEwNDIuMzYyMikiICAgICBzdHlsZT0iZGlzcGxheTppbmxpbmUiPiAgICA8cGF0aCAgICAgICBzdHlsZT0iZmlsbDojMDAwMDAwO2ZpbGwtb3BhY2l0eTowLjQ5NDExNzY1O2ZpbGwtcnVsZTpldmVub2RkO3N0cm9rZTpub25lIiAgICAgICBkPSJtIDcuNDI0MjE4NywxMDQyLjM2MjIgYyAtMC43MjM1NzkyLDAgLTEuMzEwMTU2MiwwLjU4NjYgLTEuMzEwMTU2MiwxLjMxMDIgMCwwLjI5OSAwLjEwNDM0MTksMC41NzEgMC4yNzI5NDkyLDAuNzkxNSAwLjIwOTEwMjQsMC4xNDEzIDAuNDY1NjIwNiwwLjIxODQgMC43MzY5NjI5LDAuMjE4NCAwLjcyMzU3OTMsMCAxLjMxMDE1NjMsLTAuNTg2NiAxLjMxMDE1NjMsLTEuMzEwMiAwLC0wLjI3MTMgLTAuMDc3MDkzLC0wLjUyNzggLTAuMjE4MzU5NCwtMC43MzcgLTAuMjIwNDk0MSwtMC4xNjg2IC0wLjQ5MjU0NDMsLTAuMjcyOSAtMC43OTE1NTI4LC0wLjI3MjkgeiBtIDAsMy4wODQzIGMgLTAuNzIzNTc5MiwwIC0xLjMxMDE1NjIsMC41ODY2IC0xLjMxMDE1NjIsMS4zMTAyIDAsMC4yOTkgMC4xMDQzNDE5LDAuNTcxIDAuMjcyOTQ5MiwwLjc5MTUgMC4yMDkxMDI0LDAuMTQxMyAwLjQ2NTYyMDYsMC4yMTg0IDAuNzM2OTYyOSwwLjIxODQgMC43MjM1NzkzLDAgMS4zMTAxNTYzLC0wLjU4NjYgMS4zMTAxNTYzLC0xLjMxMDIgMCwtMC4yNzEzIC0wLjA3NzA5MywtMC41Mjc4IC0wLjIxODM1OTQsLTAuNzM2OSAtMC4yMjA0OTQxLC0wLjE2ODYgLTAuNDkyNTQ0MywtMC4yNzMgLTAuNzkxNTUyOCwtMC4yNzMgeiBtIC0zLjA4NDMyNjEsMCBjIC0wLjcyMzU3OTMsMCAtMS4zMTAxNTYzLDAuNTg2NiAtMS4zMTAxNTYzLDEuMzEwMiAwLDAuMjk5IDAuMTA0MzQxOSwwLjU3MSAwLjI3Mjk0OTIsMC43OTE1IDAuMjA5MTAyNCwwLjE0MTMgMC40NjU2MjA3LDAuMjE4NCAwLjczNjk2MjksMC4yMTg0IDAuNzIzNTc5MywwIDEuMzEwMTU2MywtMC41ODY2IDEuMzEwMTU2MywtMS4zMTAyIDAsLTAuMjcxMyAtMC4wNzcwOTMsLTAuNTI3OCAtMC4yMTgzNTk0LC0wLjczNjkgLTAuMjIwNDk0LC0wLjE2ODYgLTAuNDkyNTQ0MiwtMC4yNzMgLTAuNzkxNTUyNywtMC4yNzMgeiBtIC0zLjAyOTczNjQsMy4wMjk4IEMgMC41ODY1NzY5MywxMDQ4LjQ3NjMgMCwxMDQ5LjA2MjggMCwxMDQ5Ljc4NjQgYyAwLDAuMjk5IDAuMTA0MzQxOSwwLjU3MTEgMC4yNzI5NDkyMiwwLjc5MTYgMC4yMDkxMDIyOSwwLjE0MTIgMC40NjU2MjA2NSwwLjIxODMgMC43MzY5NjI4OCwwLjIxODMgMC43MjM1NzkzLDAgMS4zMTAxNTYzLC0wLjU4NjUgMS4zMTAxNTYzLC0xLjMxMDEgMCwtMC4yNzE0IC0wLjA3NzA5MywtMC41Mjc5IC0wLjIxODM1OTQsLTAuNzM3IC0wLjIyMDQ5NDEsLTAuMTY4NiAtMC40OTI1NDQzLC0wLjI3MjkgLTAuNzkxNTUyOCwtMC4yNzI5IHogbSAzLjAyOTczNjQsMCBjIC0wLjcyMzU3OTMsMCAtMS4zMTAxNTYzLDAuNTg2NSAtMS4zMTAxNTYzLDEuMzEwMSAwLDAuMjk5IDAuMTA0MzQxOSwwLjU3MTEgMC4yNzI5NDkyLDAuNzkxNiAwLjIwOTEwMjQsMC4xNDEyIDAuNDY1NjIwNywwLjIxODMgMC43MzY5NjI5LDAuMjE4MyAwLjcyMzU3OTMsMCAxLjMxMDE1NjMsLTAuNTg2NSAxLjMxMDE1NjMsLTEuMzEwMSAwLC0wLjI3MTQgLTAuMDc3MDkzLC0wLjUyNzkgLTAuMjE4MzU5NCwtMC43MzcgLTAuMjIwNDk0LC0wLjE2ODYgLTAuNDkyNTQ0MiwtMC4yNzI5IC0wLjc5MTU1MjcsLTAuMjcyOSB6IG0gMy4wODQzMjYxLDAgYyAtMC43MjM1NzkyLDAgLTEuMzEwMTU2MiwwLjU4NjUgLTEuMzEwMTU2MiwxLjMxMDEgMCwwLjI5OSAwLjEwNDM0MTksMC41NzExIDAuMjcyOTQ5MiwwLjc5MTYgMC4yMDkxMDI0LDAuMTQxMiAwLjQ2NTYyMDYsMC4yMTgzIDAuNzM2OTYyOSwwLjIxODMgMC43MjM1NzkzLDAgMS4zMTAxNTYzLC0wLjU4NjUgMS4zMTAxNTYzLC0xLjMxMDEgMCwtMC4yNzE0IC0wLjA3NzA5MywtMC41Mjc5IC0wLjIxODM1OTQsLTAuNzM3IC0wLjIyMDQ5NDEsLTAuMTY4NiAtMC40OTI1NDQzLC0wLjI3MjkgLTAuNzkxNTUyOCwtMC4yNzI5IHoiLz4gIDwvZz4gIDxnICAgICBzdHlsZT0iZGlzcGxheTppbmxpbmUiPiAgICA8cGF0aCAgICAgICBzdHlsZT0iZmlsbDojZmZmZmZmO2ZpbGwtb3BhY2l0eToxO2ZpbGwtcnVsZTpldmVub2RkO3N0cm9rZTpub25lIiAgICAgICBkPSJtIDguMjE1NzcxNSwwLjI3Mjk0OTIyIGMgMC4xNDEyNjY3LDAuMjA5MTAyMjkgMC4yMTgzNTk0LDAuNDY1NjIwNjUgMC4yMTgzNTk0LDAuNzM2OTYyODggMCwwLjcyMzU3OTMgLTAuNTg2NTc3LDEuMzEwMTU2MyAtMS4zMTAxNTYzLDEuMzEwMTU2MyAtMC4yNzEzNDIzLDAgLTAuNTI3ODYwNSwtMC4wNzcwOTMgLTAuNzM2OTYyOSwtMC4yMTgzNTk0IDAuMjM5NDEwNCwwLjMxMzA4NTkgMC42MTI2MzYyLDAuNTE4NjAzNSAxLjAzNzIwNywwLjUxODYwMzUgMC43MjM1NzkzLDAgMS4zMTAxNTYzLC0wLjU4NjU3NyAxLjMxMDE1NjMsLTEuMzEwMTU2MyAwLC0wLjQyNDU3MDc2IC0wLjIwNTUxNzYsLTAuNzk3Nzk2NTkgLTAuNTE4NjAzNSwtMS4wMzcyMDY5OCB6IG0gMCwzLjA4NDMyNjE4IGMgMC4xNDEyNjY3LDAuMjA5MTAyMyAwLjIxODM1OTQsMC40NjU2MjA2IDAuMjE4MzU5NCwwLjczNjk2MjkgMCwwLjcyMzU3OTMgLTAuNTg2NTc3LDEuMzEwMTU2MiAtMS4zMTAxNTYzLDEuMzEwMTU2MiAtMC4yNzEzNDIzLDAgLTAuNTI3ODYwNSwtMC4wNzcwOTMgLTAuNzM2OTYyOSwtMC4yMTgzNTkzIDAuMjM5NDEwNCwwLjMxMzA4NTkgMC42MTI2MzYyLDAuNTE4NjAzNSAxLjAzNzIwNywwLjUxODYwMzUgMC43MjM1NzkzLDAgMS4zMTAxNTYzLC0wLjU4NjU3NyAxLjMxMDE1NjMsLTEuMzEwMTU2MyAwLC0wLjQyNDU3MDggLTAuMjA1NTE3NiwtMC43OTc3OTY3IC0wLjUxODYwMzUsLTEuMDM3MjA3IHogbSAtMy4wODQzMjYyLDAgYyAwLjE0MTI2NjcsMC4yMDkxMDIzIDAuMjE4MzU5NCwwLjQ2NTYyMDYgMC4yMTgzNTk0LDAuNzM2OTYyOSAwLDAuNzIzNTc5MyAtMC41ODY1NzcsMS4zMTAxNTYyIC0xLjMxMDE1NjMsMS4zMTAxNTYyIC0wLjI3MTM0MjIsMCAtMC41Mjc4NjA1LC0wLjA3NzA5MyAtMC43MzY5NjI5LC0wLjIxODM1OTMgMC4yMzk0MTA0LDAuMzEzMDg1OSAwLjYxMjYzNjMsMC41MTg2MDM1IDEuMDM3MjA3MSwwLjUxODYwMzUgMC43MjM1NzkzLDAgMS4zMTAxNTYyLC0wLjU4NjU3NyAxLjMxMDE1NjIsLTEuMzEwMTU2MyAwLC0wLjQyNDU3MDggLTAuMjA1NTE3NSwtMC43OTc3OTY3IC0wLjUxODYwMzUsLTEuMDM3MjA3IHogTSAyLjEwMTcwOSw2LjM4NzAxMTcgYyAwLjE0MTI2NjcsMC4yMDkxMDI0IDAuMjE4MzU5NCwwLjQ2NTYyMDYgMC4yMTgzNTk0LDAuNzM2OTYyOSAwLDAuNzIzNTc5MyAtMC41ODY1NzcsMS4zMTAxNTYzIC0xLjMxMDE1NjMsMS4zMTAxNTYzIC0wLjI3MTM0MjIzLDAgLTAuNTI3ODYwNTksLTAuMDc3MDkzIC0wLjczNjk2Mjg4LC0wLjIxODM1OTQgMC4yMzk0MTAzOSwwLjMxMzA4NTkgMC42MTI2MzYyMiwwLjUxODYwMzUgMS4wMzcyMDY5OCwwLjUxODYwMzUgMC43MjM1NzkzLDAgMS4zMTAxNTYzLC0wLjU4NjU3NyAxLjMxMDE1NjMsLTEuMzEwMTU2MyAwLC0wLjQyNDU3MDggLTAuMjA1NTE3NiwtMC43OTc3OTY2IC0wLjUxODYwMzUsLTEuMDM3MjA3IHogbSAzLjAyOTczNjMsMCBjIDAuMTQxMjY2NywwLjIwOTEwMjQgMC4yMTgzNTk0LDAuNDY1NjIwNiAwLjIxODM1OTQsMC43MzY5NjI5IDAsMC43MjM1NzkzIC0wLjU4NjU3NywxLjMxMDE1NjMgLTEuMzEwMTU2MywxLjMxMDE1NjMgLTAuMjcxMzQyMiwwIC0wLjUyNzg2MDUsLTAuMDc3MDkzIC0wLjczNjk2MjksLTAuMjE4MzU5NCAwLjIzOTQxMDQsMC4zMTMwODU5IDAuNjEyNjM2MywwLjUxODYwMzUgMS4wMzcyMDcxLDAuNTE4NjAzNSAwLjcyMzU3OTMsMCAxLjMxMDE1NjIsLTAuNTg2NTc3IDEuMzEwMTU2MiwtMS4zMTAxNTYzIDAsLTAuNDI0NTcwOCAtMC4yMDU1MTc1LC0wLjc5Nzc5NjYgLTAuNTE4NjAzNSwtMS4wMzcyMDcgeiBtIDMuMDg0MzI2MiwwIGMgMC4xNDEyNjY3LDAuMjA5MTAyNCAwLjIxODM1OTQsMC40NjU2MjA2IDAuMjE4MzU5NCwwLjczNjk2MjkgMCwwLjcyMzU3OTMgLTAuNTg2NTc3LDEuMzEwMTU2MyAtMS4zMTAxNTYzLDEuMzEwMTU2MyAtMC4yNzEzNDIzLDAgLTAuNTI3ODYwNSwtMC4wNzcwOTMgLTAuNzM2OTYyOSwtMC4yMTgzNTk0IDAuMjM5NDEwNCwwLjMxMzA4NTkgMC42MTI2MzYyLDAuNTE4NjAzNSAxLjAzNzIwNywwLjUxODYwMzUgMC43MjM1NzkzLDAgMS4zMTAxNTYzLC0wLjU4NjU3NyAxLjMxMDE1NjMsLTEuMzEwMTU2MyAwLC0wLjQyNDU3MDggLTAuMjA1NTE3NiwtMC43OTc3OTY2IC0wLjUxODYwMzUsLTEuMDM3MjA3IHoiIC8+ICA8L2c+PC9zdmc+);
    background-repeat: no-repeat;
    background-position: 100% 100%;
    pointer-events: auto !important;
}
.os-host-rtl > .os-scrollbar-corner.os-scrollbar-corner-resize {
    -webkit-transform: scale(-1, 1);
    transform: scale(-1, 1);
}
.os-host-overflow {
    overflow: hidden !important;
}
.os-host-overflow-x {
} 
.os-host-overflow-y {
} 

/*
THEMES:
*/

/* NONE THEME: */
.os-theme-none > .os-scrollbar-horizontal,
.os-theme-none > .os-scrollbar-vertical,
.os-theme-none > .os-scrollbar-corner {
    display: none !important;
}
.os-theme-none > .os-scrollbar-corner-resize {
    display: block !important;
    min-width: 10px;
    min-height: 10px;
}
/* DARK & LIGHT THEME: */
.os-theme-dark > .os-scrollbar-horizontal,
.os-theme-light > .os-scrollbar-horizontal {
    right: 10px;
    height: 10px;
}
.os-theme-dark > .os-scrollbar-vertical,
.os-theme-light > .os-scrollbar-vertical {
    bottom: 10px;
    width: 10px;
}
.os-theme-dark.os-host-rtl > .os-scrollbar-horizontal,
.os-theme-light.os-host-rtl > .os-scrollbar-horizontal {
    left: 10px;
    right: 0;
}
.os-theme-dark > .os-scrollbar-corner,
.os-theme-light > .os-scrollbar-corner {
    height: 10px;
    width: 10px;
}
.os-theme-dark > .os-scrollbar-corner,
.os-theme-light > .os-scrollbar-corner {
    background-color: transparent;
}
.os-theme-dark > .os-scrollbar,
.os-theme-light > .os-scrollbar {
    padding: 2px;
    box-sizing: border-box;
    background: transparent;
}
.os-theme-dark > .os-scrollbar.os-scrollbar-unusable,
.os-theme-light > .os-scrollbar.os-scrollbar-unusable {
    background: transparent;
}
.os-theme-dark > .os-scrollbar > .os-scrollbar-track,
.os-theme-light > .os-scrollbar > .os-scrollbar-track {
    background: transparent;
}
.os-theme-dark > .os-scrollbar-horizontal > .os-scrollbar-track > .os-scrollbar-handle,
.os-theme-light > .os-scrollbar-horizontal > .os-scrollbar-track > .os-scrollbar-handle {
    min-width: 30px;
}
.os-theme-dark > .os-scrollbar-vertical > .os-scrollbar-track > .os-scrollbar-handle,
.os-theme-light > .os-scrollbar-vertical > .os-scrollbar-track > .os-scrollbar-handle {
    min-height: 30px;
}
.os-theme-dark.os-host-transition > .os-scrollbar > .os-scrollbar-track > .os-scrollbar-handle,
.os-theme-light.os-host-transition > .os-scrollbar > .os-scrollbar-track > .os-scrollbar-handle {
    -webkit-transition: background-color 0.3s;
    transition: background-color 0.3s;
}
.os-theme-dark > .os-scrollbar > .os-scrollbar-track > .os-scrollbar-handle,
.os-theme-light > .os-scrollbar > .os-scrollbar-track > .os-scrollbar-handle,
.os-theme-dark > .os-scrollbar > .os-scrollbar-track,
.os-theme-light > .os-scrollbar > .os-scrollbar-track {
    border-radius: 10px;
}
.os-theme-dark > .os-scrollbar > .os-scrollbar-track > .os-scrollbar-handle {
    background: rgba(0, 0, 0, 0.4);
}
.os-theme-light > .os-scrollbar > .os-scrollbar-track > .os-scrollbar-handle {
    background: rgba(255, 255, 255, 0.4);
}
.os-theme-dark > .os-scrollbar:hover > .os-scrollbar-track > .os-scrollbar-handle {
    background: rgba(0, 0, 0, .55);
}
.os-theme-light > .os-scrollbar:hover > .os-scrollbar-track > .os-scrollbar-handle {
    background: rgba(255, 255, 255, .55);
}
.os-theme-dark > .os-scrollbar > .os-scrollbar-track > .os-scrollbar-handle.active {
    background: rgba(0, 0, 0, .7);
}
.os-theme-light > .os-scrollbar > .os-scrollbar-track > .os-scrollbar-handle.active {
    background: rgba(255, 255, 255, .7);
}
.os-theme-dark > .os-scrollbar-horizontal .os-scrollbar-handle:before,
.os-theme-dark > .os-scrollbar-vertical .os-scrollbar-handle:before,
.os-theme-light > .os-scrollbar-horizontal .os-scrollbar-handle:before,
.os-theme-light > .os-scrollbar-vertical .os-scrollbar-handle:before {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    display: block;
}
.os-theme-dark.os-host-scrollbar-horizontal-hidden > .os-scrollbar-horizontal .os-scrollbar-handle:before,
.os-theme-dark.os-host-scrollbar-vertical-hidden > .os-scrollbar-vertical .os-scrollbar-handle:before,
.os-theme-light.os-host-scrollbar-horizontal-hidden > .os-scrollbar-horizontal .os-scrollbar-handle:before,
.os-theme-light.os-host-scrollbar-vertical-hidden > .os-scrollbar-vertical .os-scrollbar-handle:before {
    display: none;
}
.os-theme-dark > .os-scrollbar-horizontal .os-scrollbar-handle:before,
.os-theme-light > .os-scrollbar-horizontal .os-scrollbar-handle:before {
    top: -6px;
    bottom: -2px;
}
.os-theme-dark > .os-scrollbar-vertical .os-scrollbar-handle:before,
.os-theme-light > .os-scrollbar-vertical .os-scrollbar-handle:before {
    left: -6px;
    right: -2px;
}
.os-host-rtl.os-theme-dark > .os-scrollbar-vertical .os-scrollbar-handle:before,
.os-host-rtl.os-theme-light > .os-scrollbar-vertical .os-scrollbar-handle:before {
    right: -6px;
    left: -2px;
}

@charset "UTF-8";
.fc {
  direction: ltr;
  text-align: left;
}

.fc-rtl {
  text-align: right;
}

body .fc {
  /* extra precedence to overcome jqui */
  font-size: 1em;
}

/* Colors
--------------------------------------------------------------------------------------------------*/
.fc-highlight {
  /* when user is selecting cells */
  background: #bce8f1;
  opacity: 0.3;
}

.fc-bgevent {
  /* default look for background events */
  background: #8fdf82;
  opacity: 0.3;
}

.fc-nonbusiness {
  /* default look for non-business-hours areas */
  /* will inherit .fc-bgevent's styles */
  background: #d7d7d7;
}

/* Popover
--------------------------------------------------------------------------------------------------*/
.fc-popover {
  position: absolute;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15);
}

.fc-popover .fc-header {
  /* TODO: be more consistent with fc-head/fc-body */
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  padding: 2px 4px;
}

.fc-rtl .fc-popover .fc-header {
  flex-direction: row-reverse;
}

.fc-popover .fc-header .fc-title {
  margin: 0 2px;
}

.fc-popover .fc-header .fc-close {
  cursor: pointer;
  opacity: 0.65;
  font-size: 1.1em;
}

/* Misc Reusable Components
--------------------------------------------------------------------------------------------------*/
.fc-divider {
  border-style: solid;
  border-width: 1px;
}

hr.fc-divider {
  height: 0;
  margin: 0;
  padding: 0 0 2px;
  /* height is unreliable across browsers, so use padding */
  border-width: 1px 0;
}

.fc-bg,
.fc-bgevent-skeleton,
.fc-highlight-skeleton,
.fc-mirror-skeleton {
  /* these element should always cling to top-left/right corners */
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
}

.fc-bg {
  bottom: 0;
  /* strech bg to bottom edge */
}

.fc-bg table {
  height: 100%;
  /* strech bg to bottom edge */
}

/* Tables
--------------------------------------------------------------------------------------------------*/
.fc table {
  width: 100%;
  box-sizing: border-box;
  /* fix scrollbar issue in firefox */
  table-layout: fixed;
  border-collapse: collapse;
  border-spacing: 0;
  font-size: 1em;
  /* normalize cross-browser */
}

.fc th {
  text-align: center;
}

.fc th,
.fc td {
  border-style: solid;
  border-width: 1px;
  padding: 0;
  vertical-align: top;
}

.fc td.fc-today {
  border-style: double;
  /* overcome neighboring borders */
}

/* Internal Nav Links
--------------------------------------------------------------------------------------------------*/
a[data-goto] {
  cursor: pointer;
}

a[data-goto]:hover {
  text-decoration: underline;
}

/* Fake Table Rows
--------------------------------------------------------------------------------------------------*/
.fc .fc-row {
  /* extra precedence to overcome themes forcing a 1px border */
  /* no visible border by default. but make available if need be (scrollbar width compensation) */
  border-style: solid;
  border-width: 0;
}

.fc-row table {
  /* don't put left/right border on anything within a fake row.
     the outer tbody will worry about this */
  border-left: 0 hidden transparent;
  border-right: 0 hidden transparent;
  /* no bottom borders on rows */
  border-bottom: 0 hidden transparent;
}

.fc-row:first-child table {
  border-top: 0 hidden transparent;
  /* no top border on first row */
}

/* Day Row (used within the header and the DayGrid)
--------------------------------------------------------------------------------------------------*/
.fc-row {
  position: relative;
}

.fc-row .fc-bg {
  z-index: 1;
}

/* highlighting cells & background event skeleton */
.fc-row .fc-bgevent-skeleton,
.fc-row .fc-highlight-skeleton {
  bottom: 0;
  /* stretch skeleton to bottom of row */
}

.fc-row .fc-bgevent-skeleton table,
.fc-row .fc-highlight-skeleton table {
  height: 100%;
  /* stretch skeleton to bottom of row */
}

.fc-row .fc-highlight-skeleton td,
.fc-row .fc-bgevent-skeleton td {
  border-color: transparent;
}

.fc-row .fc-bgevent-skeleton {
  z-index: 2;
}

.fc-row .fc-highlight-skeleton {
  z-index: 3;
}

/*
row content (which contains day/week numbers and events) as well as "mirror" (which contains
temporary rendered events).
*/
.fc-row .fc-content-skeleton {
  position: relative;
  z-index: 4;
  padding-bottom: 2px;
  /* matches the space above the events */
}

.fc-row .fc-mirror-skeleton {
  z-index: 5;
}

.fc .fc-row .fc-content-skeleton table,
.fc .fc-row .fc-content-skeleton td,
.fc .fc-row .fc-mirror-skeleton td {
  /* see-through to the background below */
  /* extra precedence to prevent theme-provided backgrounds */
  background: none;
  /* in case <td>s are globally styled */
  border-color: transparent;
}

.fc-row .fc-content-skeleton td,
.fc-row .fc-mirror-skeleton td {
  /* don't put a border between events and/or the day number */
  border-bottom: 0;
}

.fc-row .fc-content-skeleton tbody td,
.fc-row .fc-mirror-skeleton tbody td {
  /* don't put a border between event cells */
  border-top: 0;
}

/* Scrolling Container
--------------------------------------------------------------------------------------------------*/
.fc-scroller {
  -webkit-overflow-scrolling: touch;
}

/* TODO: move to timegrid/daygrid */
.fc-scroller > .fc-day-grid,
.fc-scroller > .fc-time-grid {
  position: relative;
  /* re-scope all positions */
  width: 100%;
  /* hack to force re-sizing this inner element when scrollbars appear/disappear */
}

/* Global Event Styles
--------------------------------------------------------------------------------------------------*/
.fc-event {
  position: relative;
  /* for resize handle and other inner positioning */
  display: block;
  /* make the <a> tag block */
  font-size: 0.85em;
  line-height: 1.4;
  border-radius: 3px;
  border: 1px solid #3788d8;
}

.fc-event,
.fc-event-dot {
  background-color: #3788d8;
  /* default BACKGROUND color */
}

.fc-event,
.fc-event:hover {
  color: #fff;
  /* default TEXT color */
  text-decoration: none;
  /* if <a> has an href */
}

.fc-event[href],
.fc-event.fc-draggable {
  cursor: pointer;
  /* give events with links and draggable events a hand mouse pointer */
}

.fc-not-allowed,
.fc-not-allowed .fc-event {
  /* to override an event's custom cursor */
  cursor: not-allowed;
}

.fc-event .fc-content {
  position: relative;
  z-index: 2;
}

/* resizer (cursor AND touch devices) */
.fc-event .fc-resizer {
  position: absolute;
  z-index: 4;
}

/* resizer (touch devices) */
.fc-event .fc-resizer {
  display: none;
}

.fc-event.fc-allow-mouse-resize .fc-resizer,
.fc-event.fc-selected .fc-resizer {
  /* only show when hovering or selected (with touch) */
  display: block;
}

/* hit area */
.fc-event.fc-selected .fc-resizer:before {
  /* 40x40 touch area */
  content: "";
  position: absolute;
  z-index: 9999;
  /* user of this util can scope within a lower z-index */
  top: 50%;
  left: 50%;
  width: 40px;
  height: 40px;
  margin-left: -20px;
  margin-top: -20px;
}

/* Event Selection (only for touch devices)
--------------------------------------------------------------------------------------------------*/
.fc-event.fc-selected {
  z-index: 9999 !important;
  /* overcomes inline z-index */
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
}

.fc-event.fc-selected:after {
  content: "";
  position: absolute;
  z-index: 1;
  /* same z-index as fc-bg, behind text */
  /* overcome the borders */
  top: -1px;
  right: -1px;
  bottom: -1px;
  left: -1px;
  /* darkening effect */
  background: #000;
  opacity: 0.25;
}

/* Event Dragging
--------------------------------------------------------------------------------------------------*/
.fc-event.fc-dragging.fc-selected {
  box-shadow: 0 2px 7px rgba(0, 0, 0, 0.3);
}

.fc-event.fc-dragging:not(.fc-selected) {
  opacity: 0.75;
}

/* Horizontal Events
--------------------------------------------------------------------------------------------------*/
/* bigger touch area when selected */
.fc-h-event.fc-selected:before {
  content: "";
  position: absolute;
  z-index: 3;
  /* below resizers */
  top: -10px;
  bottom: -10px;
  left: 0;
  right: 0;
}

/* events that are continuing to/from another week. kill rounded corners and butt up against edge */
.fc-ltr .fc-h-event.fc-not-start,
.fc-rtl .fc-h-event.fc-not-end {
  margin-left: 0;
  border-left-width: 0;
  padding-left: 1px;
  /* replace the border with padding */
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.fc-ltr .fc-h-event.fc-not-end,
.fc-rtl .fc-h-event.fc-not-start {
  margin-right: 0;
  border-right-width: 0;
  padding-right: 1px;
  /* replace the border with padding */
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

/* resizer (cursor AND touch devices) */
/* left resizer  */
.fc-ltr .fc-h-event .fc-start-resizer,
.fc-rtl .fc-h-event .fc-end-resizer {
  cursor: w-resize;
  left: -1px;
  /* overcome border */
}

/* right resizer */
.fc-ltr .fc-h-event .fc-end-resizer,
.fc-rtl .fc-h-event .fc-start-resizer {
  cursor: e-resize;
  right: -1px;
  /* overcome border */
}

/* resizer (mouse devices) */
.fc-h-event.fc-allow-mouse-resize .fc-resizer {
  width: 7px;
  top: -1px;
  /* overcome top border */
  bottom: -1px;
  /* overcome bottom border */
}

/* resizer (touch devices) */
.fc-h-event.fc-selected .fc-resizer {
  /* 8x8 little dot */
  border-radius: 4px;
  border-width: 1px;
  width: 6px;
  height: 6px;
  border-style: solid;
  border-color: inherit;
  background: #fff;
  /* vertically center */
  top: 50%;
  margin-top: -4px;
}

/* left resizer  */
.fc-ltr .fc-h-event.fc-selected .fc-start-resizer,
.fc-rtl .fc-h-event.fc-selected .fc-end-resizer {
  margin-left: -4px;
  /* centers the 8x8 dot on the left edge */
}

/* right resizer */
.fc-ltr .fc-h-event.fc-selected .fc-end-resizer,
.fc-rtl .fc-h-event.fc-selected .fc-start-resizer {
  margin-right: -4px;
  /* centers the 8x8 dot on the right edge */
}

/* DayGrid events
----------------------------------------------------------------------------------------------------
We use the full "fc-day-grid-event" class instead of using descendants because the event won't
be a descendant of the grid when it is being dragged.
*/
.fc-day-grid-event {
  margin: 1px 2px 0;
  /* spacing between events and edges */
  padding: 0 1px;
}

tr:first-child > td > .fc-day-grid-event {
  margin-top: 2px;
  /* a little bit more space before the first event */
}

.fc-mirror-skeleton tr:first-child > td > .fc-day-grid-event {
  margin-top: 0;
  /* except for mirror skeleton */
}

.fc-day-grid-event .fc-content {
  /* force events to be one-line tall */
  white-space: nowrap;
  overflow: hidden;
}

.fc-day-grid-event .fc-time {
  font-weight: bold;
}

/* resizer (cursor devices) */
/* left resizer  */
.fc-ltr .fc-day-grid-event.fc-allow-mouse-resize .fc-start-resizer,
.fc-rtl .fc-day-grid-event.fc-allow-mouse-resize .fc-end-resizer {
  margin-left: -2px;
  /* to the day cell's edge */
}

/* right resizer */
.fc-ltr .fc-day-grid-event.fc-allow-mouse-resize .fc-end-resizer,
.fc-rtl .fc-day-grid-event.fc-allow-mouse-resize .fc-start-resizer {
  margin-right: -2px;
  /* to the day cell's edge */
}

/* Event Limiting
--------------------------------------------------------------------------------------------------*/
/* "more" link that represents hidden events */
a.fc-more {
  margin: 1px 3px;
  font-size: 0.85em;
  cursor: pointer;
  text-decoration: none;
}

a.fc-more:hover {
  text-decoration: underline;
}

.fc-limited {
  /* rows and cells that are hidden because of a "more" link */
  display: none;
}

/* popover that appears when "more" link is clicked */
.fc-day-grid .fc-row {
  z-index: 1;
  /* make the "more" popover one higher than this */
}

.fc-more-popover {
  z-index: 2;
  width: 220px;
}

.fc-more-popover .fc-event-container {
  padding: 10px;
}

/* Now Indicator
--------------------------------------------------------------------------------------------------*/
.fc-now-indicator {
  position: absolute;
  border: 0 solid red;
}

/* Utilities
--------------------------------------------------------------------------------------------------*/
.fc-unselectable {
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

/*
TODO: more distinction between this file and common.css
*/
/* Colors
--------------------------------------------------------------------------------------------------*/
.fc-unthemed th,
.fc-unthemed td,
.fc-unthemed thead,
.fc-unthemed tbody,
.fc-unthemed .fc-divider,
.fc-unthemed .fc-row,
.fc-unthemed .fc-content,
.fc-unthemed .fc-popover,
.fc-unthemed .fc-list-view,
.fc-unthemed .fc-list-heading td {
  border-color: #ddd;
}

.fc-unthemed .fc-popover {
  background-color: #fff;
}

.fc-unthemed .fc-divider,
.fc-unthemed .fc-popover .fc-header,
.fc-unthemed .fc-list-heading td {
  background: #eee;
}

.fc-unthemed td.fc-today {
  background: #fcf8e3;
}

.fc-unthemed .fc-disabled-day {
  background: #d7d7d7;
  opacity: 0.3;
}

/* Icons
--------------------------------------------------------------------------------------------------
from https://feathericons.com/ and built with IcoMoon
*/
@font-face {
  font-family: "fcicons";
  src: url("data:application/x-font-ttf;charset=utf-8;base64,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") format("truetype");
  font-weight: normal;
  font-style: normal;
}
.fc-icon {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: "fcicons" !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.fc-icon-chevron-left:before {
  content: "";
}

.fc-icon-chevron-right:before {
  content: "";
}

.fc-icon-chevrons-left:before {
  content: "";
}

.fc-icon-chevrons-right:before {
  content: "";
}

.fc-icon-minus-square:before {
  content: "";
}

.fc-icon-plus-square:before {
  content: "";
}

.fc-icon-x:before {
  content: "";
}

.fc-icon {
  display: inline-block;
  width: 1em;
  height: 1em;
  text-align: center;
}

/* Buttons
--------------------------------------------------------------------------------------------------
Lots taken from Flatly (MIT): https://bootswatch.com/4/flatly/bootstrap.css
*/
/* reset */
.fc-button {
  border-radius: 0;
  overflow: visible;
  text-transform: none;
  margin: 0;
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
}

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

.fc-button {
  -webkit-appearance: button;
}

.fc-button:not(:disabled) {
  cursor: pointer;
}

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

/* theme */
.fc-button {
  display: inline-block;
  font-weight: 400;
  color: #212529;
  text-align: center;
  vertical-align: middle;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  background-color: transparent;
  border: 1px solid transparent;
  padding: 0.4em 0.65em;
  font-size: 1em;
  line-height: 1.5;
  border-radius: 0.25em;
}

.fc-button:hover {
  color: #212529;
  text-decoration: none;
}

.fc-button:focus {
  outline: 0;
  -webkit-box-shadow: 0 0 0 0.2rem rgba(44, 62, 80, 0.25);
  box-shadow: 0 0 0 0.2rem rgba(44, 62, 80, 0.25);
}

.fc-button:disabled {
  opacity: 0.65;
}

/* "primary" coloring */
.fc-button-primary {
  color: #fff;
  background-color: #2C3E50;
  border-color: #2C3E50;
}

.fc-button-primary:hover {
  color: #fff;
  background-color: #1e2b37;
  border-color: #1a252f;
}

.fc-button-primary:focus {
  -webkit-box-shadow: 0 0 0 0.2rem rgba(76, 91, 106, 0.5);
  box-shadow: 0 0 0 0.2rem rgba(76, 91, 106, 0.5);
}

.fc-button-primary:disabled {
  color: #fff;
  background-color: #2C3E50;
  border-color: #2C3E50;
}

.fc-button-primary:not(:disabled):active,
.fc-button-primary:not(:disabled).fc-button-active {
  color: #fff;
  background-color: #1a252f;
  border-color: #151e27;
}

.fc-button-primary:not(:disabled):active:focus,
.fc-button-primary:not(:disabled).fc-button-active:focus {
  -webkit-box-shadow: 0 0 0 0.2rem rgba(76, 91, 106, 0.5);
  box-shadow: 0 0 0 0.2rem rgba(76, 91, 106, 0.5);
}

/* icons within buttons */
.fc-button .fc-icon {
  vertical-align: middle;
  font-size: 1.5em;
}

/* Buttons Groups
--------------------------------------------------------------------------------------------------*/
.fc-button-group {
  position: relative;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  vertical-align: middle;
}

.fc-button-group > .fc-button {
  position: relative;
  -webkit-box-flex: 1;
  -ms-flex: 1 1 auto;
  flex: 1 1 auto;
}

.fc-button-group > .fc-button:hover {
  z-index: 1;
}

.fc-button-group > .fc-button:focus,
.fc-button-group > .fc-button:active,
.fc-button-group > .fc-button.fc-button-active {
  z-index: 1;
}

.fc-button-group > .fc-button:not(:first-child) {
  margin-left: -1px;
}

.fc-button-group > .fc-button:not(:last-child) {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.fc-button-group > .fc-button:not(:first-child) {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

/* Popover
--------------------------------------------------------------------------------------------------*/
.fc-unthemed .fc-popover {
  border-width: 1px;
  border-style: solid;
}

/* List View
--------------------------------------------------------------------------------------------------*/
.fc-unthemed .fc-list-item:hover td {
  background-color: #f5f5f5;
}

/* Toolbar
--------------------------------------------------------------------------------------------------*/
.fc-toolbar {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.fc-toolbar.fc-header-toolbar {
  margin-bottom: 1.5em;
}

.fc-toolbar.fc-footer-toolbar {
  margin-top: 1.5em;
}

/* inner content */
.fc-toolbar > * > :not(:first-child) {
  margin-left: 0.75em;
}

.fc-toolbar h2 {
  font-size: 1.75em;
  margin: 0;
}

/* View Structure
--------------------------------------------------------------------------------------------------*/
.fc-view-container {
  position: relative;
}

/* undo twitter bootstrap's box-sizing rules. normalizes positioning techniques */
/* don't do this for the toolbar because we'll want bootstrap to style those buttons as some pt */
.fc-view-container *,
.fc-view-container *:before,
.fc-view-container *:after {
  -webkit-box-sizing: content-box;
  -moz-box-sizing: content-box;
  box-sizing: content-box;
}

.fc-view,
.fc-view > table {
  /* so dragged elements can be above the view's main element */
  position: relative;
  z-index: 1;
}

@media print {
  .fc {
    max-width: 100% !important;
  }

  /* Global Event Restyling
  --------------------------------------------------------------------------------------------------*/
  .fc-event {
    background: #fff !important;
    color: #000 !important;
    page-break-inside: avoid;
  }

  .fc-event .fc-resizer {
    display: none;
  }

  /* Table & Day-Row Restyling
  --------------------------------------------------------------------------------------------------*/
  .fc th,
.fc td,
.fc hr,
.fc thead,
.fc tbody,
.fc-row {
    border-color: #ccc !important;
    background: #fff !important;
  }

  /* kill the overlaid, absolutely-positioned components */
  /* common... */
  .fc-bg,
.fc-bgevent-skeleton,
.fc-highlight-skeleton,
.fc-mirror-skeleton,
.fc-bgevent-container,
.fc-business-container,
.fc-highlight-container,
.fc-mirror-container {
    display: none;
  }

  /* don't force a min-height on rows (for DayGrid) */
  .fc tbody .fc-row {
    height: auto !important;
    /* undo height that JS set in distributeHeight */
    min-height: 0 !important;
    /* undo the min-height from each view's specific stylesheet */
  }

  .fc tbody .fc-row .fc-content-skeleton {
    position: static;
    /* undo .fc-rigid */
    padding-bottom: 0 !important;
    /* use a more border-friendly method for this... */
  }

  .fc tbody .fc-row .fc-content-skeleton tbody tr:last-child td {
    /* only works in newer browsers */
    padding-bottom: 1em;
    /* ...gives space within the skeleton. also ensures min height in a way */
  }

  .fc tbody .fc-row .fc-content-skeleton table {
    /* provides a min-height for the row, but only effective for IE, which exaggerates this value,
       making it look more like 3em. for other browers, it will already be this tall */
    height: 1em;
  }

  /* Undo month-view event limiting. Display all events and hide the "more" links
  --------------------------------------------------------------------------------------------------*/
  .fc-more-cell,
.fc-more {
    display: none !important;
  }

  .fc tr.fc-limited {
    display: table-row !important;
  }

  .fc td.fc-limited {
    display: table-cell !important;
  }

  .fc-popover {
    display: none;
    /* never display the "more.." popover in print mode */
  }

  /* TimeGrid Restyling
  --------------------------------------------------------------------------------------------------*/
  /* undo the min-height 100% trick used to fill the container's height */
  .fc-time-grid {
    min-height: 0 !important;
  }

  /* don't display the side axis at all ("all-day" and time cells) */
  .fc-timeGrid-view .fc-axis {
    display: none;
  }

  /* don't display the horizontal lines */
  .fc-slats,
.fc-time-grid hr {
    /* this hr is used when height is underused and needs to be filled */
    display: none !important;
    /* important overrides inline declaration */
  }

  /* let the container that holds the events be naturally positioned and create real height */
  .fc-time-grid .fc-content-skeleton {
    position: static;
  }

  /* in case there are no events, we still want some height */
  .fc-time-grid .fc-content-skeleton table {
    height: 4em;
  }

  /* kill the horizontal spacing made by the event container. event margins will be done below */
  .fc-time-grid .fc-event-container {
    margin: 0 !important;
  }

  /* TimeGrid *Event* Restyling
  --------------------------------------------------------------------------------------------------*/
  /* naturally position events, vertically stacking them */
  .fc-time-grid .fc-event {
    position: static !important;
    margin: 3px 2px !important;
  }

  /* for events that continue to a future day, give the bottom border back */
  .fc-time-grid .fc-event.fc-not-end {
    border-bottom-width: 1px !important;
  }

  /* indicate the event continues via "..." text */
  .fc-time-grid .fc-event.fc-not-end:after {
    content: "...";
  }

  /* for events that are continuations from previous days, give the top border back */
  .fc-time-grid .fc-event.fc-not-start {
    border-top-width: 1px !important;
  }

  /* indicate the event is a continuation via "..." text */
  .fc-time-grid .fc-event.fc-not-start:before {
    content: "...";
  }

  /* time */
  /* undo a previous declaration and let the time text span to a second line */
  .fc-time-grid .fc-event .fc-time {
    white-space: normal !important;
  }

  /* hide the the time that is normally displayed... */
  .fc-time-grid .fc-event .fc-time span {
    display: none;
  }

  /* ...replace it with a more verbose version (includes AM/PM) stored in an html attribute */
  .fc-time-grid .fc-event .fc-time:after {
    content: attr(data-full);
  }

  /* Vertical Scroller & Containers
  --------------------------------------------------------------------------------------------------*/
  /* kill the scrollbars and allow natural height */
  .fc-scroller,
.fc-day-grid-container,
.fc-time-grid-container {
    /* */
    overflow: visible !important;
    height: auto !important;
  }

  /* kill the horizontal border/padding used to compensate for scrollbars */
  .fc-row {
    border: 0 !important;
    margin: 0 !important;
  }

  /* Button Controls
  --------------------------------------------------------------------------------------------------*/
  .fc-button-group,
.fc button {
    display: none;
    /* don't display any button-related controls */
  }
}

/* DayGridView
--------------------------------------------------------------------------------------------------*/
/* day row structure */
.fc-dayGridWeek-view .fc-content-skeleton,
.fc-dayGridDay-view .fc-content-skeleton {
  /* there may be week numbers in these views, so no padding-top */
  padding-bottom: 1em;
  /* ensure a space at bottom of cell for user selecting/clicking */
}

.fc-dayGrid-view .fc-body .fc-row {
  min-height: 4em;
  /* ensure that all rows are at least this tall */
}

/* a "rigid" row will take up a constant amount of height because content-skeleton is absolute */
.fc-row.fc-rigid {
  overflow: hidden;
}

.fc-row.fc-rigid .fc-content-skeleton {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
}

/* week and day number styling */
.fc-day-top.fc-other-month {
  opacity: 0.3;
}

.fc-dayGrid-view .fc-week-number,
.fc-dayGrid-view .fc-day-number {
  padding: 2px;
}

.fc-dayGrid-view th.fc-week-number,
.fc-dayGrid-view th.fc-day-number {
  padding: 0 2px;
  /* column headers can't have as much v space */
}

.fc-ltr .fc-dayGrid-view .fc-day-top .fc-day-number {
  float: right;
}

.fc-rtl .fc-dayGrid-view .fc-day-top .fc-day-number {
  float: left;
}

.fc-ltr .fc-dayGrid-view .fc-day-top .fc-week-number {
  float: left;
  border-radius: 0 0 3px 0;
}

.fc-rtl .fc-dayGrid-view .fc-day-top .fc-week-number {
  float: right;
  border-radius: 0 0 0 3px;
}

.fc-dayGrid-view .fc-day-top .fc-week-number {
  min-width: 1.5em;
  text-align: center;
  background-color: #f2f2f2;
  color: #808080;
}

/* when week/day number have own column */
.fc-dayGrid-view td.fc-week-number {
  text-align: center;
}

.fc-dayGrid-view td.fc-week-number > * {
  /* work around the way we do column resizing and ensure a minimum width */
  display: inline-block;
  min-width: 1.25em;
}

.flatpickr-calendar {
  background: transparent;
  opacity: 0;
  display: none;
  text-align: center;
  visibility: hidden;
  padding: 0;
  -webkit-animation: none;
          animation: none;
  direction: ltr;
  border: 0;
  font-size: 14px;
  line-height: 24px;
  border-radius: 5px;
  position: absolute;
  width: 307.875px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -ms-touch-action: manipulation;
      touch-action: manipulation;
  background: #fff;
  -webkit-box-shadow: 1px 0 0 #e6e6e6, -1px 0 0 #e6e6e6, 0 1px 0 #e6e6e6, 0 -1px 0 #e6e6e6, 0 3px 13px rgba(0,0,0,0.08);
          box-shadow: 1px 0 0 #e6e6e6, -1px 0 0 #e6e6e6, 0 1px 0 #e6e6e6, 0 -1px 0 #e6e6e6, 0 3px 13px rgba(0,0,0,0.08);
}
.flatpickr-calendar.open,
.flatpickr-calendar.inline {
  opacity: 1;
  max-height: 640px;
  visibility: visible;
}
.flatpickr-calendar.open {
  display: inline-block;
  z-index: 99999;
}
.flatpickr-calendar.animate.open {
  -webkit-animation: fpFadeInDown 300ms cubic-bezier(0.23, 1, 0.32, 1);
          animation: fpFadeInDown 300ms cubic-bezier(0.23, 1, 0.32, 1);
}
.flatpickr-calendar.inline {
  display: block;
  position: relative;
  top: 2px;
}
.flatpickr-calendar.static {
  position: absolute;
  top: calc(100% + 2px);
}
.flatpickr-calendar.static.open {
  z-index: 999;
  display: block;
}
.flatpickr-calendar.multiMonth .flatpickr-days .dayContainer:nth-child(n+1) .flatpickr-day.inRange:nth-child(7n+7) {
  -webkit-box-shadow: none !important;
          box-shadow: none !important;
}
.flatpickr-calendar.multiMonth .flatpickr-days .dayContainer:nth-child(n+2) .flatpickr-day.inRange:nth-child(7n+1) {
  -webkit-box-shadow: -2px 0 0 #e6e6e6, 5px 0 0 #e6e6e6;
          box-shadow: -2px 0 0 #e6e6e6, 5px 0 0 #e6e6e6;
}
.flatpickr-calendar .hasWeeks .dayContainer,
.flatpickr-calendar .hasTime .dayContainer {
  border-bottom: 0;
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}
.flatpickr-calendar .hasWeeks .dayContainer {
  border-left: 0;
}
.flatpickr-calendar.hasTime .flatpickr-time {
  height: 40px;
  border-top: 1px solid #e6e6e6;
}
.flatpickr-calendar.noCalendar.hasTime .flatpickr-time {
  height: auto;
}
.flatpickr-calendar:before,
.flatpickr-calendar:after {
  position: absolute;
  display: block;
  pointer-events: none;
  border: solid transparent;
  content: '';
  height: 0;
  width: 0;
  left: 22px;
}
.flatpickr-calendar.rightMost:before,
.flatpickr-calendar.arrowRight:before,
.flatpickr-calendar.rightMost:after,
.flatpickr-calendar.arrowRight:after {
  left: auto;
  right: 22px;
}
.flatpickr-calendar.arrowCenter:before,
.flatpickr-calendar.arrowCenter:after {
  left: 50%;
  right: 50%;
}
.flatpickr-calendar:before {
  border-width: 5px;
  margin: 0 -5px;
}
.flatpickr-calendar:after {
  border-width: 4px;
  margin: 0 -4px;
}
.flatpickr-calendar.arrowTop:before,
.flatpickr-calendar.arrowTop:after {
  bottom: 100%;
}
.flatpickr-calendar.arrowTop:before {
  border-bottom-color: #e6e6e6;
}
.flatpickr-calendar.arrowTop:after {
  border-bottom-color: #fff;
}
.flatpickr-calendar.arrowBottom:before,
.flatpickr-calendar.arrowBottom:after {
  top: 100%;
}
.flatpickr-calendar.arrowBottom:before {
  border-top-color: #e6e6e6;
}
.flatpickr-calendar.arrowBottom:after {
  border-top-color: #fff;
}
.flatpickr-calendar:focus {
  outline: 0;
}
.flatpickr-wrapper {
  position: relative;
  display: inline-block;
}
.flatpickr-months {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
.flatpickr-months .flatpickr-month {
  background: transparent;
  color: rgba(0,0,0,0.9);
  fill: rgba(0,0,0,0.9);
  height: 34px;
  line-height: 1;
  text-align: center;
  position: relative;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  overflow: hidden;
  -webkit-box-flex: 1;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.flatpickr-months .flatpickr-prev-month,
.flatpickr-months .flatpickr-next-month {
  text-decoration: none;
  cursor: pointer;
  position: absolute;
  top: 0;
  height: 34px;
  padding: 10px;
  z-index: 3;
  color: rgba(0,0,0,0.9);
  fill: rgba(0,0,0,0.9);
}
.flatpickr-months .flatpickr-prev-month.flatpickr-disabled,
.flatpickr-months .flatpickr-next-month.flatpickr-disabled {
  display: none;
}
.flatpickr-months .flatpickr-prev-month i,
.flatpickr-months .flatpickr-next-month i {
  position: relative;
}
.flatpickr-months .flatpickr-prev-month.flatpickr-prev-month,
.flatpickr-months .flatpickr-next-month.flatpickr-prev-month {
/*
      /*rtl:begin:ignore*/
/*
      */
  left: 0;
/*
      /*rtl:end:ignore*/
/*
      */
}
/*
      /*rtl:begin:ignore*/
/*
      /*rtl:end:ignore*/
.flatpickr-months .flatpickr-prev-month.flatpickr-next-month,
.flatpickr-months .flatpickr-next-month.flatpickr-next-month {
/*
      /*rtl:begin:ignore*/
/*
      */
  right: 0;
/*
      /*rtl:end:ignore*/
/*
      */
}
/*
      /*rtl:begin:ignore*/
/*
      /*rtl:end:ignore*/
.flatpickr-months .flatpickr-prev-month:hover,
.flatpickr-months .flatpickr-next-month:hover {
  color: #959ea9;
}
.flatpickr-months .flatpickr-prev-month:hover svg,
.flatpickr-months .flatpickr-next-month:hover svg {
  fill: #f64747;
}
.flatpickr-months .flatpickr-prev-month svg,
.flatpickr-months .flatpickr-next-month svg {
  width: 14px;
  height: 14px;
}
.flatpickr-months .flatpickr-prev-month svg path,
.flatpickr-months .flatpickr-next-month svg path {
  -webkit-transition: fill 0.1s;
  transition: fill 0.1s;
  fill: inherit;
}
.numInputWrapper {
  position: relative;
  height: auto;
}
.numInputWrapper input,
.numInputWrapper span {
  display: inline-block;
}
.numInputWrapper input {
  width: 100%;
}
.numInputWrapper input::-ms-clear {
  display: none;
}
.numInputWrapper input::-webkit-outer-spin-button,
.numInputWrapper input::-webkit-inner-spin-button {
  margin: 0;
  -webkit-appearance: none;
}
.numInputWrapper span {
  position: absolute;
  right: 0;
  width: 14px;
  padding: 0 4px 0 2px;
  height: 50%;
  line-height: 50%;
  opacity: 0;
  cursor: pointer;
  border: 1px solid rgba(57,57,57,0.15);
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.numInputWrapper span:hover {
  background: rgba(0,0,0,0.1);
}
.numInputWrapper span:active {
  background: rgba(0,0,0,0.2);
}
.numInputWrapper span:after {
  display: block;
  content: "";
  position: absolute;
}
.numInputWrapper span.arrowUp {
  top: 0;
  border-bottom: 0;
}
.numInputWrapper span.arrowUp:after {
  border-left: 4px solid transparent;
  border-right: 4px solid transparent;
  border-bottom: 4px solid rgba(57,57,57,0.6);
  top: 26%;
}
.numInputWrapper span.arrowDown {
  top: 50%;
}
.numInputWrapper span.arrowDown:after {
  border-left: 4px solid transparent;
  border-right: 4px solid transparent;
  border-top: 4px solid rgba(57,57,57,0.6);
  top: 40%;
}
.numInputWrapper span svg {
  width: inherit;
  height: auto;
}
.numInputWrapper span svg path {
  fill: rgba(0,0,0,0.5);
}
.numInputWrapper:hover {
  background: rgba(0,0,0,0.05);
}
.numInputWrapper:hover span {
  opacity: 1;
}
.flatpickr-current-month {
  font-size: 135%;
  line-height: inherit;
  font-weight: 300;
  color: inherit;
  position: absolute;
  width: 75%;
  left: 12.5%;
  padding: 7.48px 0 0 0;
  line-height: 1;
  height: 34px;
  display: inline-block;
  text-align: center;
  -webkit-transform: translate3d(0px, 0px, 0px);
          transform: translate3d(0px, 0px, 0px);
}
.flatpickr-current-month span.cur-month {
  font-family: inherit;
  font-weight: 700;
  color: inherit;
  display: inline-block;
  margin-left: 0.5ch;
  padding: 0;
}
.flatpickr-current-month span.cur-month:hover {
  background: rgba(0,0,0,0.05);
}
.flatpickr-current-month .numInputWrapper {
  width: 6ch;
  width: 7ch\0;
  display: inline-block;
}
.flatpickr-current-month .numInputWrapper span.arrowUp:after {
  border-bottom-color: rgba(0,0,0,0.9);
}
.flatpickr-current-month .numInputWrapper span.arrowDown:after {
  border-top-color: rgba(0,0,0,0.9);
}
.flatpickr-current-month input.cur-year {
  background: transparent;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  color: inherit;
  cursor: text;
  padding: 0 0 0 0.5ch;
  margin: 0;
  display: inline-block;
  font-size: inherit;
  font-family: inherit;
  font-weight: 300;
  line-height: inherit;
  height: auto;
  border: 0;
  border-radius: 0;
  vertical-align: initial;
  -webkit-appearance: textfield;
  -moz-appearance: textfield;
  appearance: textfield;
}
.flatpickr-current-month input.cur-year:focus {
  outline: 0;
}
.flatpickr-current-month input.cur-year[disabled],
.flatpickr-current-month input.cur-year[disabled]:hover {
  font-size: 100%;
  color: rgba(0,0,0,0.5);
  background: transparent;
  pointer-events: none;
}
.flatpickr-current-month .flatpickr-monthDropdown-months {
  appearance: menulist;
  background: transparent;
  border: none;
  border-radius: 0;
  box-sizing: border-box;
  color: inherit;
  cursor: pointer;
  font-size: inherit;
  font-family: inherit;
  font-weight: 300;
  height: auto;
  line-height: inherit;
  margin: -1px 0 0 0;
  outline: none;
  padding: 0 0 0 0.5ch;
  position: relative;
  vertical-align: initial;
  -webkit-box-sizing: border-box;
  -webkit-appearance: menulist;
  -moz-appearance: menulist;
  width: auto;
}
.flatpickr-current-month .flatpickr-monthDropdown-months:focus,
.flatpickr-current-month .flatpickr-monthDropdown-months:active {
  outline: none;
}
.flatpickr-current-month .flatpickr-monthDropdown-months:hover {
  background: rgba(0,0,0,0.05);
}
.flatpickr-current-month .flatpickr-monthDropdown-months .flatpickr-monthDropdown-month {
  background-color: transparent;
  outline: none;
  padding: 0;
}
.flatpickr-weekdays {
  background: transparent;
  text-align: center;
  overflow: hidden;
  width: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  height: 28px;
}
.flatpickr-weekdays .flatpickr-weekdaycontainer {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 1;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
span.flatpickr-weekday {
  cursor: default;
  font-size: 90%;
  background: transparent;
  color: rgba(0,0,0,0.54);
  line-height: 1;
  margin: 0;
  text-align: center;
  display: block;
  -webkit-box-flex: 1;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
  font-weight: bolder;
}
.dayContainer,
.flatpickr-weeks {
  padding: 1px 0 0 0;
}
.flatpickr-days {
  position: relative;
  overflow: hidden;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  width: 307.875px;
}
.flatpickr-days:focus {
  outline: 0;
}
.dayContainer {
  padding: 0;
  outline: 0;
  text-align: left;
  width: 307.875px;
  min-width: 307.875px;
  max-width: 307.875px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: inline-block;
  display: -ms-flexbox;
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
          flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  -ms-flex-pack: justify;
  -webkit-justify-content: space-around;
          justify-content: space-around;
  -webkit-transform: translate3d(0px, 0px, 0px);
          transform: translate3d(0px, 0px, 0px);
  opacity: 1;
}
.dayContainer + .dayContainer {
  -webkit-box-shadow: -1px 0 0 #e6e6e6;
          box-shadow: -1px 0 0 #e6e6e6;
}
.flatpickr-day {
  background: none;
  border: 1px solid transparent;
  border-radius: 150px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  color: #393939;
  cursor: pointer;
  font-weight: 400;
  width: 14.2857143%;
  -webkit-flex-basis: 14.2857143%;
      -ms-flex-preferred-size: 14.2857143%;
          flex-basis: 14.2857143%;
  max-width: 39px;
  height: 39px;
  line-height: 39px;
  margin: 0;
  display: inline-block;
  position: relative;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  text-align: center;
}
.flatpickr-day.inRange,
.flatpickr-day.prevMonthDay.inRange,
.flatpickr-day.nextMonthDay.inRange,
.flatpickr-day.today.inRange,
.flatpickr-day.prevMonthDay.today.inRange,
.flatpickr-day.nextMonthDay.today.inRange,
.flatpickr-day:hover,
.flatpickr-day.prevMonthDay:hover,
.flatpickr-day.nextMonthDay:hover,
.flatpickr-day:focus,
.flatpickr-day.prevMonthDay:focus,
.flatpickr-day.nextMonthDay:focus {
  cursor: pointer;
  outline: 0;
  background: #e6e6e6;
  border-color: #e6e6e6;
}
.flatpickr-day.today {
  border-color: #959ea9;
}
.flatpickr-day.today:hover,
.flatpickr-day.today:focus {
  border-color: #959ea9;
  background: #959ea9;
  color: #fff;
}
.flatpickr-day.selected,
.flatpickr-day.startRange,
.flatpickr-day.endRange,
.flatpickr-day.selected.inRange,
.flatpickr-day.startRange.inRange,
.flatpickr-day.endRange.inRange,
.flatpickr-day.selected:focus,
.flatpickr-day.startRange:focus,
.flatpickr-day.endRange:focus,
.flatpickr-day.selected:hover,
.flatpickr-day.startRange:hover,
.flatpickr-day.endRange:hover,
.flatpickr-day.selected.prevMonthDay,
.flatpickr-day.startRange.prevMonthDay,
.flatpickr-day.endRange.prevMonthDay,
.flatpickr-day.selected.nextMonthDay,
.flatpickr-day.startRange.nextMonthDay,
.flatpickr-day.endRange.nextMonthDay {
  background: #569ff7;
  -webkit-box-shadow: none;
          box-shadow: none;
  color: #fff;
  border-color: #569ff7;
}
.flatpickr-day.selected.startRange,
.flatpickr-day.startRange.startRange,
.flatpickr-day.endRange.startRange {
  border-radius: 50px 0 0 50px;
}
.flatpickr-day.selected.endRange,
.flatpickr-day.startRange.endRange,
.flatpickr-day.endRange.endRange {
  border-radius: 0 50px 50px 0;
}
.flatpickr-day.selected.startRange + .endRange:not(:nth-child(7n+1)),
.flatpickr-day.startRange.startRange + .endRange:not(:nth-child(7n+1)),
.flatpickr-day.endRange.startRange + .endRange:not(:nth-child(7n+1)) {
  -webkit-box-shadow: -10px 0 0 #569ff7;
          box-shadow: -10px 0 0 #569ff7;
}
.flatpickr-day.selected.startRange.endRange,
.flatpickr-day.startRange.startRange.endRange,
.flatpickr-day.endRange.startRange.endRange {
  border-radius: 50px;
}
.flatpickr-day.inRange {
  border-radius: 0;
  -webkit-box-shadow: -5px 0 0 #e6e6e6, 5px 0 0 #e6e6e6;
          box-shadow: -5px 0 0 #e6e6e6, 5px 0 0 #e6e6e6;
}
.flatpickr-day.flatpickr-disabled,
.flatpickr-day.flatpickr-disabled:hover,
.flatpickr-day.prevMonthDay,
.flatpickr-day.nextMonthDay,
.flatpickr-day.notAllowed,
.flatpickr-day.notAllowed.prevMonthDay,
.flatpickr-day.notAllowed.nextMonthDay {
  color: rgba(57,57,57,0.3);
  background: transparent;
  border-color: transparent;
  cursor: default;
}
.flatpickr-day.flatpickr-disabled,
.flatpickr-day.flatpickr-disabled:hover {
  cursor: not-allowed;
  color: rgba(57,57,57,0.1);
}
.flatpickr-day.week.selected {
  border-radius: 0;
  -webkit-box-shadow: -5px 0 0 #569ff7, 5px 0 0 #569ff7;
          box-shadow: -5px 0 0 #569ff7, 5px 0 0 #569ff7;
}
.flatpickr-day.hidden {
  visibility: hidden;
}
.rangeMode .flatpickr-day {
  margin-top: 1px;
}
.flatpickr-weekwrapper {
  float: left;
}
.flatpickr-weekwrapper .flatpickr-weeks {
  padding: 0 12px;
  -webkit-box-shadow: 1px 0 0 #e6e6e6;
          box-shadow: 1px 0 0 #e6e6e6;
}
.flatpickr-weekwrapper .flatpickr-weekday {
  float: none;
  width: 100%;
  line-height: 28px;
}
.flatpickr-weekwrapper span.flatpickr-day,
.flatpickr-weekwrapper span.flatpickr-day:hover {
  display: block;
  width: 100%;
  max-width: none;
  color: rgba(57,57,57,0.3);
  background: transparent;
  cursor: default;
  border: none;
}
.flatpickr-innerContainer {
  display: block;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  overflow: hidden;
}
.flatpickr-rContainer {
  display: inline-block;
  padding: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.flatpickr-time {
  text-align: center;
  outline: 0;
  display: block;
  height: 0;
  line-height: 40px;
  max-height: 40px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  overflow: hidden;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
.flatpickr-time:after {
  content: "";
  display: table;
  clear: both;
}
.flatpickr-time .numInputWrapper {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
  width: 40%;
  height: 40px;
  float: left;
}
.flatpickr-time .numInputWrapper span.arrowUp:after {
  border-bottom-color: #393939;
}
.flatpickr-time .numInputWrapper span.arrowDown:after {
  border-top-color: #393939;
}
.flatpickr-time.hasSeconds .numInputWrapper {
  width: 26%;
}
.flatpickr-time.time24hr .numInputWrapper {
  width: 49%;
}
.flatpickr-time input {
  background: transparent;
  -webkit-box-shadow: none;
          box-shadow: none;
  border: 0;
  border-radius: 0;
  text-align: center;
  margin: 0;
  padding: 0;
  height: inherit;
  line-height: inherit;
  color: #393939;
  font-size: 14px;
  position: relative;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-appearance: textfield;
  -moz-appearance: textfield;
  appearance: textfield;
}
.flatpickr-time input.flatpickr-hour {
  font-weight: bold;
}
.flatpickr-time input.flatpickr-minute,
.flatpickr-time input.flatpickr-second {
  font-weight: 400;
}
.flatpickr-time input:focus {
  outline: 0;
  border: 0;
}
.flatpickr-time .flatpickr-time-separator,
.flatpickr-time .flatpickr-am-pm {
  height: inherit;
  float: left;
  line-height: inherit;
  color: #393939;
  font-weight: bold;
  width: 2%;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  -webkit-align-self: center;
      -ms-flex-item-align: center;
          align-self: center;
}
.flatpickr-time .flatpickr-am-pm {
  outline: 0;
  width: 18%;
  cursor: pointer;
  text-align: center;
  font-weight: 400;
}
.flatpickr-time input:hover,
.flatpickr-time .flatpickr-am-pm:hover,
.flatpickr-time input:focus,
.flatpickr-time .flatpickr-am-pm:focus {
  background: #eee;
}
.flatpickr-input[readonly] {
  cursor: pointer;
}
@-webkit-keyframes fpFadeInDown {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -20px, 0);
            transform: translate3d(0, -20px, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
  }
}
@keyframes fpFadeInDown {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -20px, 0);
            transform: translate3d(0, -20px, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
  }
}

/**
 * Trumbowyg v2.25.1 - A lightweight WYSIWYG editor
 * Default stylesheet for Trumbowyg editor
 * ------------------------
 * @link http://alex-d.github.io/Trumbowyg
 * @license MIT
 * @author Alexandre Demode (Alex-D)
 *         Twitter : @AlexandreDemode
 *         Website : alex-d.fr
 */

#trumbowyg-icons {
  overflow: hidden;
  visibility: hidden;
  height: 0;
  width: 0; }
  #trumbowyg-icons svg {
    height: 0;
    width: 0; }

.trumbowyg-box *,
.trumbowyg-box *::before,
.trumbowyg-box *::after,
.trumbowyg-modal *,
.trumbowyg-modal *::before,
.trumbowyg-modal *::after {
  -webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;
          box-sizing: border-box; }

.trumbowyg-box svg,
.trumbowyg-modal svg {
  width: 17px;
  height: 100%;
  fill: #222; }

.trumbowyg-box,
.trumbowyg-editor {
  display: block;
  position: relative;
  border: 1px solid #DDD;
  width: 100%;
  min-height: 300px; }

.trumbowyg-box .trumbowyg-editor {
  margin: 0 auto; }

.trumbowyg-box.trumbowyg-fullscreen {
  background: #FEFEFE;
  border: none !important; }

.trumbowyg-editor,
.trumbowyg-textarea {
  position: relative;
  -webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;
          box-sizing: border-box;
  padding: 20px;
  min-height: 300px;
  width: 100%;
  border-style: none;
  resize: none;
  outline: none;
  overflow: auto;
  -webkit-user-select: text;
     -moz-user-select: text;
      -ms-user-select: text;
          user-select: text; }
  .trumbowyg-editor.trumbowyg-autogrow-on-enter,
  .trumbowyg-textarea.trumbowyg-autogrow-on-enter {
    -webkit-transition: height 300ms ease-out;
    -o-transition: height 300ms ease-out;
    transition: height 300ms ease-out; }

.trumbowyg-box-blur .trumbowyg-editor *, .trumbowyg-box-blur .trumbowyg-editor::before {
  color: transparent !important;
  text-shadow: 0 0 7px #333; }
  @media screen and (min-width: 0 \0) {
    .trumbowyg-box-blur .trumbowyg-editor *, .trumbowyg-box-blur .trumbowyg-editor::before {
      color: rgba(200, 200, 200, 0.6) !important; } }
  @supports (-ms-accelerator: true) {
    .trumbowyg-box-blur .trumbowyg-editor *, .trumbowyg-box-blur .trumbowyg-editor::before {
      color: rgba(200, 200, 200, 0.6) !important; } }

.trumbowyg-box-blur .trumbowyg-editor img,
.trumbowyg-box-blur .trumbowyg-editor hr {
  opacity: 0.2; }

.trumbowyg-textarea {
  position: relative;
  display: block;
  overflow: auto;
  border: none;
  font-size: 14px;
  font-family: "Inconsolata", "Consolas", "Courier", "Courier New", sans-serif;
  line-height: 18px; }

.trumbowyg-box.trumbowyg-editor-visible .trumbowyg-textarea {
  height: 1px !important;
  width: 25%;
  min-height: 0 !important;
  padding: 0 !important;
  background: none;
  opacity: 0 !important; }

.trumbowyg-box.trumbowyg-editor-hidden .trumbowyg-textarea {
  display: block;
  margin-bottom: 1px; }

.trumbowyg-box.trumbowyg-editor-hidden .trumbowyg-editor {
  display: none; }

.trumbowyg-box.trumbowyg-disabled .trumbowyg-textarea {
  opacity: 0.8;
  background: none; }

.trumbowyg-editor[contenteditable=true]:empty:not(:focus)::before {
  content: attr(placeholder);
  color: #999;
  pointer-events: none;
  white-space: break-spaces; }

.trumbowyg-button-pane {
  width: 100%;
  min-height: 36px;
  background: #ecf0f1;
  border-bottom: 1px solid #d7e0e2;
  margin: 0;
  padding: 0 5px;
  position: relative;
  list-style-type: none;
  line-height: 10px;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  z-index: 11; }
  .trumbowyg-button-pane::after {
    content: " ";
    display: block;
    position: absolute;
    top: 36px;
    left: 0;
    right: 0;
    width: 100%;
    height: 1px;
    background: #d7e0e2; }
  .trumbowyg-button-pane .trumbowyg-button-group {
    display: inline-block; }
    .trumbowyg-button-pane .trumbowyg-button-group .trumbowyg-fullscreen-button svg {
      color: transparent; }
    .trumbowyg-button-pane .trumbowyg-button-group::after {
      content: " ";
      display: inline-block;
      width: 1px;
      background: #d7e0e2;
      margin: 0 5px;
      height: 35px;
      vertical-align: top; }
    .trumbowyg-button-pane .trumbowyg-button-group:last-child::after {
      content: none; }
  .trumbowyg-button-pane button {
    display: inline-block;
    position: relative;
    width: 35px;
    height: 35px;
    padding: 1px 6px !important;
    margin-bottom: 1px;
    overflow: hidden;
    border: none;
    cursor: pointer;
    background: none;
    vertical-align: middle;
    -webkit-transition: background-color 150ms, opacity 150ms;
    -o-transition: background-color 150ms, opacity 150ms;
    transition: background-color 150ms, opacity 150ms; }
    .trumbowyg-button-pane button.trumbowyg-textual-button {
      width: auto;
      line-height: 35px;
      -webkit-user-select: none;
         -moz-user-select: none;
          -ms-user-select: none;
              user-select: none; }
  .trumbowyg-button-pane.trumbowyg-disable button:not(.trumbowyg-not-disable):not(.trumbowyg-active),
  .trumbowyg-button-pane button.trumbowyg-disable,
  .trumbowyg-disabled .trumbowyg-button-pane button:not(.trumbowyg-not-disable):not(.trumbowyg-viewHTML-button) {
    opacity: 0.2;
    cursor: default;
    pointer-events: none; }
  .trumbowyg-button-pane.trumbowyg-disable .trumbowyg-button-group::before,
  .trumbowyg-disabled .trumbowyg-button-pane .trumbowyg-button-group::before {
    background: #e3e9eb; }
  .trumbowyg-button-pane button:not(.trumbowyg-disable):hover,
  .trumbowyg-button-pane button:not(.trumbowyg-disable):focus,
  .trumbowyg-button-pane button.trumbowyg-active {
    background-color: #FFF;
    outline: none; }
  .trumbowyg-button-pane .trumbowyg-open-dropdown::after {
    display: block;
    content: " ";
    position: absolute;
    top: 25px;
    right: 3px;
    height: 0;
    width: 0;
    border: 3px solid transparent;
    border-top-color: #555; }
  .trumbowyg-button-pane .trumbowyg-open-dropdown.trumbowyg-textual-button {
    padding-left: 10px !important;
    padding-right: 18px !important; }
    .trumbowyg-button-pane .trumbowyg-open-dropdown.trumbowyg-textual-button::after {
      top: 17px;
      right: 7px; }
  .trumbowyg-button-pane .trumbowyg-right {
    float: right; }

.trumbowyg-dropdown {
  max-width: 300px;
  max-height: 250px;
  overflow-y: auto;
  overflow-x: hidden;
  white-space: nowrap;
  border: 1px solid #ecf0f1;
  padding: 5px 0;
  border-top: none;
  background: #FFF;
  margin-left: -1px;
  -webkit-box-shadow: rgba(0, 0, 0, 0.1) 0 2px 3px;
          box-shadow: rgba(0, 0, 0, 0.1) 0 2px 3px;
  z-index: 12; }
  .trumbowyg-dropdown button {
    display: block;
    width: 100%;
    height: 35px;
    line-height: 35px;
    text-decoration: none;
    background: #FFF;
    padding: 0 20px 0 10px;
    color: #333 !important;
    border: none;
    cursor: pointer;
    text-align: left;
    font-size: 15px;
    -webkit-transition: all 150ms;
    -o-transition: all 150ms;
    transition: all 150ms; }
    .trumbowyg-dropdown button:hover, .trumbowyg-dropdown button:focus {
      background: #ecf0f1; }
    .trumbowyg-dropdown button svg {
      float: left;
      margin-right: 14px; }

/* Modal box */
.trumbowyg-modal {
  position: absolute;
  top: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
       -o-transform: translateX(-50%);
          transform: translateX(-50%);
  max-width: 520px;
  width: 100%;
  height: 350px;
  z-index: 12;
  overflow: hidden;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }

.trumbowyg-modal-box {
  position: absolute;
  top: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
       -o-transform: translateX(-50%);
          transform: translateX(-50%);
  max-width: 500px;
  width: calc(100% - 20px);
  padding-bottom: 45px;
  z-index: 1;
  background-color: #FFF;
  text-align: center;
  font-size: 14px;
  -webkit-box-shadow: rgba(0, 0, 0, 0.2) 0 2px 3px;
          box-shadow: rgba(0, 0, 0, 0.2) 0 2px 3px;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }
  .trumbowyg-modal-box .trumbowyg-modal-title {
    font-size: 24px;
    font-weight: bold;
    margin: 0 0 20px;
    padding: 15px 0 13px;
    display: block;
    border-bottom: 1px solid #EEE;
    color: #333;
    background: #fbfcfc; }
  .trumbowyg-modal-box .trumbowyg-progress {
    width: 100%;
    height: 3px;
    position: absolute;
    top: 58px; }
    .trumbowyg-modal-box .trumbowyg-progress .trumbowyg-progress-bar {
      background: #2BC06A;
      width: 0;
      height: 100%;
      -webkit-transition: width 150ms linear;
      -o-transition: width 150ms linear;
      transition: width 150ms linear; }
  .trumbowyg-modal-box .trumbowyg-input-row {
    position: relative;
    margin: 15px 12px;
    border: 1px solid #DEDEDE;
    overflow: hidden; }
  .trumbowyg-modal-box .trumbowyg-input-infos {
    text-align: left;
    -webkit-transition: all 150ms;
    -o-transition: all 150ms;
    transition: all 150ms;
    width: 150px;
    border-right: 1px solid #DEDEDE;
    padding: 0 7px;
    background-color: #fbfcfc;
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0; }
    .trumbowyg-modal-box .trumbowyg-input-infos label {
      color: #69878f;
      overflow: hidden;
      height: 27px;
      line-height: 27px; }
      .trumbowyg-modal-box .trumbowyg-input-infos label, .trumbowyg-modal-box .trumbowyg-input-infos label span {
        display: block;
        height: 27px;
        line-height: 27px;
        -webkit-transition: all 150ms;
        -o-transition: all 150ms;
        transition: all 150ms; }
    .trumbowyg-modal-box .trumbowyg-input-infos .trumbowyg-msg-error {
      color: #e74c3c; }
  .trumbowyg-modal-box .trumbowyg-input-html {
    padding: 1px 1px 1px 152px; }
    .trumbowyg-modal-box .trumbowyg-input-html, .trumbowyg-modal-box .trumbowyg-input-html input, .trumbowyg-modal-box .trumbowyg-input-html textarea, .trumbowyg-modal-box .trumbowyg-input-html select {
      font-size: 14px; }
    .trumbowyg-modal-box .trumbowyg-input-html input, .trumbowyg-modal-box .trumbowyg-input-html textarea, .trumbowyg-modal-box .trumbowyg-input-html select {
      -webkit-transition: all 150ms;
      -o-transition: all 150ms;
      transition: all 150ms;
      height: 27px;
      line-height: 27px;
      border: 0;
      width: 100%;
      padding: 0 7px; }
      .trumbowyg-modal-box .trumbowyg-input-html input:hover, .trumbowyg-modal-box .trumbowyg-input-html input:focus, .trumbowyg-modal-box .trumbowyg-input-html textarea:hover, .trumbowyg-modal-box .trumbowyg-input-html textarea:focus, .trumbowyg-modal-box .trumbowyg-input-html select:hover, .trumbowyg-modal-box .trumbowyg-input-html select:focus {
        outline: 1px solid #95a5a6; }
      .trumbowyg-modal-box .trumbowyg-input-html input:focus, .trumbowyg-modal-box .trumbowyg-input-html textarea:focus, .trumbowyg-modal-box .trumbowyg-input-html select:focus {
        background: #fbfcfc; }
    .trumbowyg-modal-box .trumbowyg-input-html input[type="checkbox"] {
      width: 16px;
      height: 16px;
      padding: 0; }
    .trumbowyg-modal-box .trumbowyg-input-html-with-checkbox {
      text-align: left;
      padding: 3px 1px 1px 3px; }
  .trumbowyg-modal-box .trumbowyg-input-error input, .trumbowyg-modal-box .trumbowyg-input-error select, .trumbowyg-modal-box .trumbowyg-input-error textarea {
    outline: 1px solid #e74c3c; }
  .trumbowyg-modal-box .trumbowyg-input-error .trumbowyg-input-infos label span:first-child {
    margin-top: -27px; }
  .trumbowyg-modal-box .error {
    margin-top: 25px;
    display: block;
    color: red; }
  .trumbowyg-modal-box .trumbowyg-modal-button {
    position: absolute;
    bottom: 10px;
    right: 0;
    text-decoration: none;
    color: #FFF;
    display: block;
    width: 100px;
    height: 35px;
    line-height: 33px;
    margin: 0 10px;
    background-color: #333;
    border: none;
    cursor: pointer;
    font-family: "Trebuchet MS", Helvetica, Verdana, sans-serif;
    font-size: 16px;
    -webkit-transition: all 150ms;
    -o-transition: all 150ms;
    transition: all 150ms; }
    .trumbowyg-modal-box .trumbowyg-modal-button.trumbowyg-modal-submit {
      right: 110px;
      background: #2bc06a; }
      .trumbowyg-modal-box .trumbowyg-modal-button.trumbowyg-modal-submit:hover, .trumbowyg-modal-box .trumbowyg-modal-button.trumbowyg-modal-submit:focus {
        background: #40d47e;
        outline: none; }
      .trumbowyg-modal-box .trumbowyg-modal-button.trumbowyg-modal-submit:active {
        background: #25a25a; }
    .trumbowyg-modal-box .trumbowyg-modal-button.trumbowyg-modal-reset {
      color: #555;
      background: #e6e6e6; }
      .trumbowyg-modal-box .trumbowyg-modal-button.trumbowyg-modal-reset:hover, .trumbowyg-modal-box .trumbowyg-modal-button.trumbowyg-modal-reset:focus {
        background: #fbfbfb;
        outline: none; }
      .trumbowyg-modal-box .trumbowyg-modal-button.trumbowyg-modal-reset:active {
        background: #d5d5d5; }

.trumbowyg-overlay {
  position: absolute;
  background-color: rgba(255, 255, 255, 0.5);
  height: 100%;
  width: 100%;
  left: 0;
  display: none;
  top: 0;
  z-index: 10; }

/**
 * Fullscreen
 */
body.trumbowyg-body-fullscreen {
  overflow: hidden; }

.trumbowyg-fullscreen {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  z-index: 99999; }
  .trumbowyg-fullscreen.trumbowyg-box,
  .trumbowyg-fullscreen .trumbowyg-editor {
    border: none; }
  .trumbowyg-fullscreen .trumbowyg-editor,
  .trumbowyg-fullscreen .trumbowyg-textarea {
    height: calc(100% - 37px) !important;
    overflow: auto; }
  .trumbowyg-fullscreen .trumbowyg-overlay {
    height: 100% !important; }
  .trumbowyg-fullscreen .trumbowyg-button-group .trumbowyg-fullscreen-button svg {
    color: #222;
    fill: transparent; }

.trumbowyg-editor {
  /*
     * lset for resetCss option
     */ }
  .trumbowyg-editor object,
  .trumbowyg-editor embed,
  .trumbowyg-editor video,
  .trumbowyg-editor img {
    max-width: 100%; }
  .trumbowyg-editor video,
  .trumbowyg-editor img {
    height: auto; }
  .trumbowyg-editor img {
    cursor: move; }
  .trumbowyg-editor canvas:focus {
    outline: none; }
  .trumbowyg-editor.trumbowyg-reset-css {
    background: #FEFEFE !important;
    font-family: "Trebuchet MS", Helvetica, Verdana, sans-serif !important;
    font-size: 14px !important;
    line-height: 1.45em !important;
    color: #333; }
    .trumbowyg-editor.trumbowyg-reset-css a {
      color: #15c !important;
      text-decoration: underline !important; }
    .trumbowyg-editor.trumbowyg-reset-css div,
    .trumbowyg-editor.trumbowyg-reset-css p,
    .trumbowyg-editor.trumbowyg-reset-css ul,
    .trumbowyg-editor.trumbowyg-reset-css ol,
    .trumbowyg-editor.trumbowyg-reset-css blockquote {
      -webkit-box-shadow: none !important;
              box-shadow: none !important;
      background: none !important;
      margin: 0 !important;
      margin-bottom: 15px !important;
      line-height: 1.4em !important;
      font-family: "Trebuchet MS", Helvetica, Verdana, sans-serif !important;
      font-size: 14px !important;
      border: none; }
    .trumbowyg-editor.trumbowyg-reset-css iframe,
    .trumbowyg-editor.trumbowyg-reset-css object,
    .trumbowyg-editor.trumbowyg-reset-css hr {
      margin-bottom: 15px !important; }
    .trumbowyg-editor.trumbowyg-reset-css blockquote {
      margin-left: 32px !important;
      font-style: italic !important;
      color: #555; }
    .trumbowyg-editor.trumbowyg-reset-css ul {
      list-style: disc; }
    .trumbowyg-editor.trumbowyg-reset-css ol {
      list-style: decimal; }
    .trumbowyg-editor.trumbowyg-reset-css ul,
    .trumbowyg-editor.trumbowyg-reset-css ol {
      padding-left: 20px !important; }
    .trumbowyg-editor.trumbowyg-reset-css ul ul,
    .trumbowyg-editor.trumbowyg-reset-css ol ol,
    .trumbowyg-editor.trumbowyg-reset-css ul ol,
    .trumbowyg-editor.trumbowyg-reset-css ol ul {
      border: none;
      margin: 2px !important;
      padding: 0 !important;
      padding-left: 24px !important; }
    .trumbowyg-editor.trumbowyg-reset-css hr {
      display: block;
      height: 1px;
      border: none;
      border-top: 1px solid #CCC; }
    .trumbowyg-editor.trumbowyg-reset-css h1,
    .trumbowyg-editor.trumbowyg-reset-css h2,
    .trumbowyg-editor.trumbowyg-reset-css h3,
    .trumbowyg-editor.trumbowyg-reset-css h4 {
      color: #111;
      background: none;
      margin: 0 !important;
      padding: 0 !important;
      font-weight: bold; }
    .trumbowyg-editor.trumbowyg-reset-css h1 {
      font-size: 32px !important;
      line-height: 38px !important;
      margin-bottom: 20px !important; }
    .trumbowyg-editor.trumbowyg-reset-css h2 {
      font-size: 26px !important;
      line-height: 34px !important;
      margin-bottom: 15px !important; }
    .trumbowyg-editor.trumbowyg-reset-css h3 {
      font-size: 22px !important;
      line-height: 28px !important;
      margin-bottom: 7px !important; }
    .trumbowyg-editor.trumbowyg-reset-css h4 {
      font-size: 16px !important;
      line-height: 22px !important;
      margin-bottom: 7px !important; }

/*
 * Dark theme
 */
.trumbowyg-dark .trumbowyg-textarea {
  background: #111;
  color: #ddd; }

.trumbowyg-dark .trumbowyg-box {
  border: 1px solid #343434; }
  .trumbowyg-dark .trumbowyg-box.trumbowyg-fullscreen {
    background: #111; }
  .trumbowyg-dark .trumbowyg-box.trumbowyg-box-blur .trumbowyg-editor *, .trumbowyg-dark .trumbowyg-box.trumbowyg-box-blur .trumbowyg-editor::before {
    text-shadow: 0 0 7px #ccc; }
    @media screen and (min-width: 0 \0 ) {
      .trumbowyg-dark .trumbowyg-box.trumbowyg-box-blur .trumbowyg-editor *, .trumbowyg-dark .trumbowyg-box.trumbowyg-box-blur .trumbowyg-editor::before {
        color: rgba(20, 20, 20, 0.6) !important; } }
    @supports (-ms-accelerator: true) {
      .trumbowyg-dark .trumbowyg-box.trumbowyg-box-blur .trumbowyg-editor *, .trumbowyg-dark .trumbowyg-box.trumbowyg-box-blur .trumbowyg-editor::before {
        color: rgba(20, 20, 20, 0.6) !important; } }
  .trumbowyg-dark .trumbowyg-box svg {
    fill: #ecf0f1;
    color: #ecf0f1; }

.trumbowyg-dark .trumbowyg-button-pane {
  background-color: #222;
  border-bottom-color: #343434; }
  .trumbowyg-dark .trumbowyg-button-pane::after {
    background: #343434; }
  .trumbowyg-dark .trumbowyg-button-pane .trumbowyg-button-group:not(:empty)::after {
    background-color: #343434; }
  .trumbowyg-dark .trumbowyg-button-pane .trumbowyg-button-group:not(:empty) .trumbowyg-fullscreen-button svg {
    color: transparent; }
  .trumbowyg-dark .trumbowyg-button-pane.trumbowyg-disable .trumbowyg-button-group::after {
    background-color: #2a2a2a; }
  .trumbowyg-dark .trumbowyg-button-pane button:not(.trumbowyg-disable):hover,
  .trumbowyg-dark .trumbowyg-button-pane button:not(.trumbowyg-disable):focus,
  .trumbowyg-dark .trumbowyg-button-pane button.trumbowyg-active {
    background-color: #333; }
  .trumbowyg-dark .trumbowyg-button-pane .trumbowyg-open-dropdown::after {
    border-top-color: #fff; }

.trumbowyg-dark .trumbowyg-fullscreen .trumbowyg-button-pane .trumbowyg-button-group:not(:empty) .trumbowyg-fullscreen-button svg {
  color: #ecf0f1;
  fill: transparent; }

.trumbowyg-dark .trumbowyg-dropdown {
  border-color: #222;
  background: #333;
  -webkit-box-shadow: rgba(0, 0, 0, 0.3) 0 2px 3px;
          box-shadow: rgba(0, 0, 0, 0.3) 0 2px 3px; }
  .trumbowyg-dark .trumbowyg-dropdown button {
    background: #333;
    color: #fff !important; }
    .trumbowyg-dark .trumbowyg-dropdown button:hover, .trumbowyg-dark .trumbowyg-dropdown button:focus {
      background: #222; }

.trumbowyg-dark .trumbowyg-modal-box {
  background-color: #222; }
  .trumbowyg-dark .trumbowyg-modal-box .trumbowyg-modal-title {
    border-bottom: 1px solid #555;
    color: #fff;
    background: #3c3c3c; }
  .trumbowyg-dark .trumbowyg-modal-box label {
    display: block;
    position: relative;
    margin: 15px 12px;
    height: 27px;
    line-height: 27px;
    overflow: hidden; }
    .trumbowyg-dark .trumbowyg-modal-box label .trumbowyg-input-infos span {
      color: #eee;
      background-color: #2f2f2f;
      border-color: #222; }
    .trumbowyg-dark .trumbowyg-modal-box label .trumbowyg-input-infos span.trumbowyg-msg-error {
      color: #e74c3c; }
    .trumbowyg-dark .trumbowyg-modal-box label.trumbowyg-input-error input,
    .trumbowyg-dark .trumbowyg-modal-box label.trumbowyg-input-error textarea {
      border-color: #e74c3c; }
    .trumbowyg-dark .trumbowyg-modal-box label input {
      border-color: #222;
      color: #eee;
      background: #333; }
      .trumbowyg-dark .trumbowyg-modal-box label input:hover, .trumbowyg-dark .trumbowyg-modal-box label input:focus {
        border-color: #626262; }
      .trumbowyg-dark .trumbowyg-modal-box label input:focus {
        background-color: #2f2f2f; }
  .trumbowyg-dark .trumbowyg-modal-box .trumbowyg-modal-button.trumbowyg-modal-submit {
    background: #1b7943; }
    .trumbowyg-dark .trumbowyg-modal-box .trumbowyg-modal-button.trumbowyg-modal-submit:hover, .trumbowyg-dark .trumbowyg-modal-box .trumbowyg-modal-button.trumbowyg-modal-submit:focus {
      background: #25a25a; }
    .trumbowyg-dark .trumbowyg-modal-box .trumbowyg-modal-button.trumbowyg-modal-submit:active {
      background: #176437; }
  .trumbowyg-dark .trumbowyg-modal-box .trumbowyg-modal-button.trumbowyg-modal-reset {
    background: #333;
    color: #ccc; }
    .trumbowyg-dark .trumbowyg-modal-box .trumbowyg-modal-button.trumbowyg-modal-reset:hover, .trumbowyg-dark .trumbowyg-modal-box .trumbowyg-modal-button.trumbowyg-modal-reset:focus {
      background: #444; }
    .trumbowyg-dark .trumbowyg-modal-box .trumbowyg-modal-button.trumbowyg-modal-reset:active {
      background: #111; }

.trumbowyg-dark .trumbowyg-overlay {
  background-color: rgba(15, 15, 15, 0.6); }

.select2-container{box-sizing:border-box;display:inline-block;margin:0;position:relative;vertical-align:middle}.select2-container .select2-selection--single{box-sizing:border-box;cursor:pointer;display:block;height:28px;user-select:none;-webkit-user-select:none}.select2-container .select2-selection--single .select2-selection__rendered{display:block;padding-left:8px;padding-right:20px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.select2-container .select2-selection--single .select2-selection__clear{background-color:transparent;border:none;font-size:1em}.select2-container[dir="rtl"] .select2-selection--single .select2-selection__rendered{padding-right:8px;padding-left:20px}.select2-container .select2-selection--multiple{box-sizing:border-box;cursor:pointer;display:block;min-height:32px;user-select:none;-webkit-user-select:none}.select2-container .select2-selection--multiple .select2-selection__rendered{display:inline;list-style:none;padding:0}.select2-container .select2-selection--multiple .select2-selection__clear{background-color:transparent;border:none;font-size:1em}.select2-container .select2-search--inline .select2-search__field{box-sizing:border-box;border:none;font-size:100%;margin-top:5px;margin-left:5px;padding:0;max-width:100%;resize:none;height:18px;vertical-align:bottom;font-family:sans-serif;overflow:hidden;word-break:keep-all}.select2-container .select2-search--inline .select2-search__field::-webkit-search-cancel-button{-webkit-appearance:none}.select2-dropdown{background-color:white;border:1px solid #aaa;border-radius:4px;box-sizing:border-box;display:block;position:absolute;left:-100000px;width:100%;z-index:1051}.select2-results{display:block}.select2-results__options{list-style:none;margin:0;padding:0}.select2-results__option{padding:6px;user-select:none;-webkit-user-select:none}.select2-results__option--selectable{cursor:pointer}.select2-container--open .select2-dropdown{left:0}.select2-container--open .select2-dropdown--above{border-bottom:none;border-bottom-left-radius:0;border-bottom-right-radius:0}.select2-container--open .select2-dropdown--below{border-top:none;border-top-left-radius:0;border-top-right-radius:0}.select2-search--dropdown{display:block;padding:4px}.select2-search--dropdown .select2-search__field{padding:4px;width:100%;box-sizing:border-box}.select2-search--dropdown .select2-search__field::-webkit-search-cancel-button{-webkit-appearance:none}.select2-search--dropdown.select2-search--hide{display:none}.select2-close-mask{border:0;margin:0;padding:0;display:block;position:fixed;left:0;top:0;min-height:100%;min-width:100%;height:auto;width:auto;opacity:0;z-index:99;background-color:#fff;filter:alpha(opacity=0)}.select2-hidden-accessible{border:0 !important;clip:rect(0 0 0 0) !important;-webkit-clip-path:inset(50%) !important;clip-path:inset(50%) !important;height:1px !important;overflow:hidden !important;padding:0 !important;position:absolute !important;width:1px !important;white-space:nowrap !important}.select2-container--default .select2-selection--single{background-color:#fff;border:1px solid #aaa;border-radius:4px}.select2-container--default .select2-selection--single .select2-selection__rendered{color:#444;line-height:28px}.select2-container--default .select2-selection--single .select2-selection__clear{cursor:pointer;float:right;font-weight:bold;height:26px;margin-right:20px;padding-right:0px}.select2-container--default .select2-selection--single .select2-selection__placeholder{color:#999}.select2-container--default .select2-selection--single .select2-selection__arrow{height:26px;position:absolute;top:1px;right:1px;width:20px}.select2-container--default .select2-selection--single .select2-selection__arrow b{border-color:#888 transparent transparent transparent;border-style:solid;border-width:5px 4px 0 4px;height:0;left:50%;margin-left:-4px;margin-top:-2px;position:absolute;top:50%;width:0}.select2-container--default[dir="rtl"] .select2-selection--single .select2-selection__clear{float:left}.select2-container--default[dir="rtl"] .select2-selection--single .select2-selection__arrow{left:1px;right:auto}.select2-container--default.select2-container--disabled .select2-selection--single{background-color:#eee;cursor:default}.select2-container--default.select2-container--disabled .select2-selection--single .select2-selection__clear{display:none}.select2-container--default.select2-container--open .select2-selection--single .select2-selection__arrow b{border-color:transparent transparent #888 transparent;border-width:0 4px 5px 4px}.select2-container--default .select2-selection--multiple{background-color:white;border:1px solid #aaa;border-radius:4px;cursor:text;padding-bottom:5px;padding-right:5px;position:relative}.select2-container--default .select2-selection--multiple.select2-selection--clearable{padding-right:25px}.select2-container--default .select2-selection--multiple .select2-selection__clear{cursor:pointer;font-weight:bold;height:20px;margin-right:10px;margin-top:5px;position:absolute;right:0;padding:1px}.select2-container--default .select2-selection--multiple .select2-selection__choice{background-color:#e4e4e4;border:1px solid #aaa;border-radius:4px;box-sizing:border-box;display:inline-block;margin-left:5px;margin-top:5px;padding:0;padding-left:20px;position:relative;max-width:100%;overflow:hidden;text-overflow:ellipsis;vertical-align:bottom;white-space:nowrap}.select2-container--default .select2-selection--multiple .select2-selection__choice__display{cursor:default;padding-left:2px;padding-right:5px}.select2-container--default .select2-selection--multiple .select2-selection__choice__remove{background-color:transparent;border:none;border-right:1px solid #aaa;border-top-left-radius:4px;border-bottom-left-radius:4px;color:#999;cursor:pointer;font-size:1em;font-weight:bold;padding:0 4px;position:absolute;left:0;top:0}.select2-container--default .select2-selection--multiple .select2-selection__choice__remove:hover,.select2-container--default .select2-selection--multiple .select2-selection__choice__remove:focus{background-color:#f1f1f1;color:#333;outline:none}.select2-container--default[dir="rtl"] .select2-selection--multiple .select2-selection__choice{margin-left:5px;margin-right:auto}.select2-container--default[dir="rtl"] .select2-selection--multiple .select2-selection__choice__display{padding-left:5px;padding-right:2px}.select2-container--default[dir="rtl"] .select2-selection--multiple .select2-selection__choice__remove{border-left:1px solid #aaa;border-right:none;border-top-left-radius:0;border-bottom-left-radius:0;border-top-right-radius:4px;border-bottom-right-radius:4px}.select2-container--default[dir="rtl"] .select2-selection--multiple .select2-selection__clear{float:left;margin-left:10px;margin-right:auto}.select2-container--default.select2-container--focus .select2-selection--multiple{border:solid black 1px;outline:0}.select2-container--default.select2-container--disabled .select2-selection--multiple{background-color:#eee;cursor:default}.select2-container--default.select2-container--disabled .select2-selection__choice__remove{display:none}.select2-container--default.select2-container--open.select2-container--above .select2-selection--single,.select2-container--default.select2-container--open.select2-container--above .select2-selection--multiple{border-top-left-radius:0;border-top-right-radius:0}.select2-container--default.select2-container--open.select2-container--below .select2-selection--single,.select2-container--default.select2-container--open.select2-container--below .select2-selection--multiple{border-bottom-left-radius:0;border-bottom-right-radius:0}.select2-container--default .select2-search--dropdown .select2-search__field{border:1px solid #aaa}.select2-container--default .select2-search--inline .select2-search__field{background:transparent;border:none;outline:0;box-shadow:none;-webkit-appearance:textfield}.select2-container--default .select2-results>.select2-results__options{max-height:200px;overflow-y:auto}.select2-container--default .select2-results__option .select2-results__option{padding-left:1em}.select2-container--default .select2-results__option .select2-results__option .select2-results__group{padding-left:0}.select2-container--default .select2-results__option .select2-results__option .select2-results__option{margin-left:-1em;padding-left:2em}.select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option{margin-left:-2em;padding-left:3em}.select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option{margin-left:-3em;padding-left:4em}.select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option{margin-left:-4em;padding-left:5em}.select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option{margin-left:-5em;padding-left:6em}.select2-container--default .select2-results__option--group{padding:0}.select2-container--default .select2-results__option--disabled{color:#999}.select2-container--default .select2-results__option--selected{background-color:#ddd}.select2-container--default .select2-results__option--highlighted.select2-results__option--selectable{background-color:#5897fb;color:white}.select2-container--default .select2-results__group{cursor:default;display:block;padding:6px}.select2-container--classic .select2-selection--single{background-color:#f7f7f7;border:1px solid #aaa;border-radius:4px;outline:0;background-image:-webkit-linear-gradient(top, #fff 50%, #eee 100%);background-image:-o-linear-gradient(top, #fff 50%, #eee 100%);background-image:linear-gradient(to bottom, #fff 50%, #eee 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFFFFFFF', endColorstr='#FFEEEEEE', GradientType=0)}.select2-container--classic .select2-selection--single:focus{border:1px solid #5897fb}.select2-container--classic .select2-selection--single .select2-selection__rendered{color:#444;line-height:28px}.select2-container--classic .select2-selection--single .select2-selection__clear{cursor:pointer;float:right;font-weight:bold;height:26px;margin-right:20px}.select2-container--classic .select2-selection--single .select2-selection__placeholder{color:#999}.select2-container--classic .select2-selection--single .select2-selection__arrow{background-color:#ddd;border:none;border-left:1px solid #aaa;border-top-right-radius:4px;border-bottom-right-radius:4px;height:26px;position:absolute;top:1px;right:1px;width:20px;background-image:-webkit-linear-gradient(top, #eee 50%, #ccc 100%);background-image:-o-linear-gradient(top, #eee 50%, #ccc 100%);background-image:linear-gradient(to bottom, #eee 50%, #ccc 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFEEEEEE', endColorstr='#FFCCCCCC', GradientType=0)}.select2-container--classic .select2-selection--single .select2-selection__arrow b{border-color:#888 transparent transparent transparent;border-style:solid;border-width:5px 4px 0 4px;height:0;left:50%;margin-left:-4px;margin-top:-2px;position:absolute;top:50%;width:0}.select2-container--classic[dir="rtl"] .select2-selection--single .select2-selection__clear{float:left}.select2-container--classic[dir="rtl"] .select2-selection--single .select2-selection__arrow{border:none;border-right:1px solid #aaa;border-radius:0;border-top-left-radius:4px;border-bottom-left-radius:4px;left:1px;right:auto}.select2-container--classic.select2-container--open .select2-selection--single{border:1px solid #5897fb}.select2-container--classic.select2-container--open .select2-selection--single .select2-selection__arrow{background:transparent;border:none}.select2-container--classic.select2-container--open .select2-selection--single .select2-selection__arrow b{border-color:transparent transparent #888 transparent;border-width:0 4px 5px 4px}.select2-container--classic.select2-container--open.select2-container--above .select2-selection--single{border-top:none;border-top-left-radius:0;border-top-right-radius:0;background-image:-webkit-linear-gradient(top, #fff 0%, #eee 50%);background-image:-o-linear-gradient(top, #fff 0%, #eee 50%);background-image:linear-gradient(to bottom, #fff 0%, #eee 50%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFFFFFFF', endColorstr='#FFEEEEEE', GradientType=0)}.select2-container--classic.select2-container--open.select2-container--below .select2-selection--single{border-bottom:none;border-bottom-left-radius:0;border-bottom-right-radius:0;background-image:-webkit-linear-gradient(top, #eee 50%, #fff 100%);background-image:-o-linear-gradient(top, #eee 50%, #fff 100%);background-image:linear-gradient(to bottom, #eee 50%, #fff 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFEEEEEE', endColorstr='#FFFFFFFF', GradientType=0)}.select2-container--classic .select2-selection--multiple{background-color:white;border:1px solid #aaa;border-radius:4px;cursor:text;outline:0;padding-bottom:5px;padding-right:5px}.select2-container--classic .select2-selection--multiple:focus{border:1px solid #5897fb}.select2-container--classic .select2-selection--multiple .select2-selection__clear{display:none}.select2-container--classic .select2-selection--multiple .select2-selection__choice{background-color:#e4e4e4;border:1px solid #aaa;border-radius:4px;display:inline-block;margin-left:5px;margin-top:5px;padding:0}.select2-container--classic .select2-selection--multiple .select2-selection__choice__display{cursor:default;padding-left:2px;padding-right:5px}.select2-container--classic .select2-selection--multiple .select2-selection__choice__remove{background-color:transparent;border:none;border-top-left-radius:4px;border-bottom-left-radius:4px;color:#888;cursor:pointer;font-size:1em;font-weight:bold;padding:0 4px}.select2-container--classic .select2-selection--multiple .select2-selection__choice__remove:hover{color:#555;outline:none}.select2-container--classic[dir="rtl"] .select2-selection--multiple .select2-selection__choice{margin-left:5px;margin-right:auto}.select2-container--classic[dir="rtl"] .select2-selection--multiple .select2-selection__choice__display{padding-left:5px;padding-right:2px}.select2-container--classic[dir="rtl"] .select2-selection--multiple .select2-selection__choice__remove{border-top-left-radius:0;border-bottom-left-radius:0;border-top-right-radius:4px;border-bottom-right-radius:4px}.select2-container--classic.select2-container--open .select2-selection--multiple{border:1px solid #5897fb}.select2-container--classic.select2-container--open.select2-container--above .select2-selection--multiple{border-top:none;border-top-left-radius:0;border-top-right-radius:0}.select2-container--classic.select2-container--open.select2-container--below .select2-selection--multiple{border-bottom:none;border-bottom-left-radius:0;border-bottom-right-radius:0}.select2-container--classic .select2-search--dropdown .select2-search__field{border:1px solid #aaa;outline:0}.select2-container--classic .select2-search--inline .select2-search__field{outline:0;box-shadow:none}.select2-container--classic .select2-dropdown{background-color:#fff;border:1px solid transparent}.select2-container--classic .select2-dropdown--above{border-bottom:none}.select2-container--classic .select2-dropdown--below{border-top:none}.select2-container--classic .select2-results>.select2-results__options{max-height:200px;overflow-y:auto}.select2-container--classic .select2-results__option--group{padding:0}.select2-container--classic .select2-results__option--disabled{color:grey}.select2-container--classic .select2-results__option--highlighted.select2-results__option--selectable{background-color:#3875d7;color:#fff}.select2-container--classic .select2-results__group{cursor:default;display:block;padding:6px}.select2-container--classic.select2-container--open .select2-dropdown{border-color:#5897fb}

@charset "UTF-8";
@font-face {
  font-family: 'zwicon';
  src: url(/build/fonts/zwicon.c67263ce.eot);
  src: url(/build/fonts/zwicon.c67263ce.eot) format("embedded-opentype"), url(/build/fonts/zwicon.e8ee3913.ttf) format("truetype"), url(/build/fonts/zwicon.1266fdfe.woff) format("woff"), url(/build/images/zwicon.66c5b3ec.svg) format("svg");
  font-weight: normal;
  font-style: normal;
}

[class*="zwicon-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'zwicon' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.zwicon-align-bottom:before {
  content: "\e900";
}

.zwicon-align-h:before {
  content: "\e901";
}

.zwicon-align-left:before {
  content: "\e902";
}

.zwicon-align-right:before {
  content: "\e903";
}

.zwicon-align-top:before {
  content: "\e904";
}

.zwicon-align-v:before {
  content: "\e905";
}

.zwicon-distribute-h:before {
  content: "\e906";
}

.zwicon-distribute-v:before {
  content: "\e907";
}

.zwicon-arrow-bottom-left:before {
  content: "\e908";
}

.zwicon-arrow-bottom-right:before {
  content: "\e909";
}

.zwicon-arrow-circle-down:before {
  content: "\e90a";
}

.zwicon-arrow-circle-left:before {
  content: "\e90b";
}

.zwicon-arrow-circle-right:before {
  content: "\e90c";
}

.zwicon-arrow-circle-up:before {
  content: "\e90d";
}

.zwicon-arrow-down:before {
  content: "\e90e";
}

.zwicon-arrow-left:before {
  content: "\e90f";
}

.zwicon-arrow-right:before {
  content: "\e910";
}

.zwicon-arrow-square-down:before {
  content: "\e911";
}

.zwicon-arrow-square-left:before {
  content: "\e912";
}

.zwicon-arrow-square-right:before {
  content: "\e913";
}

.zwicon-arrow-square-up:before {
  content: "\e914";
}

.zwicon-arrow-to-top:before {
  content: "\e915";
}

.zwicon-arrow-top-left:before {
  content: "\e916";
}

.zwicon-arrow-top-right:before {
  content: "\e917";
}

.zwicon-arrow-up:before {
  content: "\e918";
}

.zwicon-back:before {
  content: "\e919";
}

.zwicon-chevron-double-down:before {
  content: "\e91a";
}

.zwicon-chevron-double-left:before {
  content: "\e91b";
}

.zwicon-chevron-double-right:before {
  content: "\e91c";
}

.zwicon-chevron-double-up:before {
  content: "\e91d";
}

.zwicon-chevron-down:before {
  content: "\e91e";
}

.zwicon-chevron-left:before {
  content: "\e91f";
}

.zwicon-chevron-right:before {
  content: "\e920";
}

.zwicon-chevron-up:before {
  content: "\e921";
}

.zwicon-collapse-alt:before {
  content: "\e922";
}

.zwicon-collapse-alt2:before {
  content: "\e923";
}

.zwicon-collapse-down:before {
  content: "\e924";
}

.zwicon-collapse-left:before {
  content: "\e925";
}

.zwicon-collapse-right:before {
  content: "\e926";
}

.zwicon-collapse-up:before {
  content: "\e927";
}

.zwicon-collapse:before {
  content: "\e928";
}

.zwicon-continue:before {
  content: "\e929";
}

.zwicon-expand-alt:before {
  content: "\e92a";
}

.zwicon-expand-alt2:before {
  content: "\e92b";
}

.zwicon-expand-down:before {
  content: "\e92c";
}

.zwicon-expand-h:before {
  content: "\e92d";
}

.zwicon-expand-left:before {
  content: "\e92e";
}

.zwicon-expand-right:before {
  content: "\e92f";
}

.zwicon-expand-up:before {
  content: "\e930";
}

.zwicon-expand-v:before {
  content: "\e931";
}

.zwicon-expand:before {
  content: "\e932";
}

.zwicon-loop:before {
  content: "\e933";
}

.zwicon-prioritize-down:before {
  content: "\e934";
}

.zwicon-prioritize-up:before {
  content: "\e935";
}

.zwicon-redo:before {
  content: "\e936";
}

.zwicon-refresh-double:before {
  content: "\e937";
}

.zwicon-refresh-left:before {
  content: "\e938";
}

.zwicon-refresh-right:before {
  content: "\e939";
}

.zwicon-restart:before {
  content: "\e93a";
}

.zwicon-split-h:before {
  content: "\e93b";
}

.zwicon-split-v:before {
  content: "\e93c";
}

.zwicon-undo:before {
  content: "\e93d";
}

.zwicon-cell-border-bottom:before {
  content: "\e93e";
}

.zwicon-cell-border-full:before {
  content: "\e93f";
}

.zwicon-cell-border-left:before {
  content: "\e940";
}

.zwicon-cell-border-right:before {
  content: "\e941";
}

.zwicon-cell-border-top:before {
  content: "\e942";
}

.zwicon-cell-empty:before {
  content: "\e943";
}

.zwicon-cell-full:before {
  content: "\e944";
}

.zwicon-cell-split-h:before {
  content: "\e945";
}

.zwicon-cell-split-v:before {
  content: "\e946";
}

.zwicon-cell-split:before {
  content: "\e947";
}

.zwicon-archive:before {
  content: "\e948";
}

.zwicon-document:before {
  content: "\e949";
}

.zwicon-folder-delete:before {
  content: "\e94a";
}

.zwicon-folder-minus:before {
  content: "\e94b";
}

.zwicon-folder-open:before {
  content: "\e94c";
}

.zwicon-folder-plus:before {
  content: "\e94d";
}

.zwicon-folder:before {
  content: "\e94e";
}

.zwicon-note:before {
  content: "\e94f";
}

.zwicon-notebook:before {
  content: "\e950";
}

.zwicon-script:before {
  content: "\e951";
}

.zwicon-sticker:before {
  content: "\e952";
}

.zwicon-sticky-notes:before {
  content: "\e953";
}

.zwicon-tray-delete:before {
  content: "\e954";
}

.zwicon-tray-empty:before {
  content: "\e955";
}

.zwicon-tray-export:before {
  content: "\e956";
}

.zwicon-tray-import:before {
  content: "\e957";
}

.zwicon-tray-minus:before {
  content: "\e958";
}

.zwicon-tray-plus:before {
  content: "\e959";
}

.zwicon-tray-stack:before {
  content: "\e95a";
}

.zwicon-tray:before {
  content: "\e95b";
}

.zwicon-artboard:before {
  content: "\e95c";
}

.zwicon-brush:before {
  content: "\e95d";
}

.zwicon-clipboard:before {
  content: "\e95e";
}

.zwicon-copy-alt:before {
  content: "\e95f";
}

.zwicon-copy:before {
  content: "\e960";
}

.zwicon-crop:before {
  content: "\e961";
}

.zwicon-cut-alt:before {
  content: "\e962";
}

.zwicon-cut:before {
  content: "\e963";
}

.zwicon-drafting-compass:before {
  content: "\e964";
}

.zwicon-duplicate-alt:before {
  content: "\e965";
}

.zwicon-duplicate:before {
  content: "\e966";
}

.zwicon-eraser:before {
  content: "\e967";
}

.zwicon-eye-dropper:before {
  content: "\e968";
}

.zwicon-group:before {
  content: "\e969";
}

.zwicon-layer-stack:before {
  content: "\e96a";
}

.zwicon-magic-wand:before {
  content: "\e96b";
}

.zwicon-marker:before {
  content: "\e96c";
}

.zwicon-paint-bucket:before {
  content: "\e96d";
}

.zwicon-paint-roller:before {
  content: "\e96e";
}

.zwicon-palette:before {
  content: "\e96f";
}

.zwicon-paste-alt:before {
  content: "\e970";
}

.zwicon-paste:before {
  content: "\e971";
}

.zwicon-pen-circle:before {
  content: "\e972";
}

.zwicon-pen:before {
  content: "\e973";
}

.zwicon-pencil-circle:before {
  content: "\e974";
}

.zwicon-pencil:before {
  content: "\e975";
}

.zwicon-ruler-combined:before {
  content: "\e976";
}

.zwicon-ruler-h:before {
  content: "\e977";
}

.zwicon-ruler-v:before {
  content: "\e978";
}

.zwicon-stamp:before {
  content: "\e979";
}

.zwicon-table:before {
  content: "\e97a";
}

.zwicon-activity:before {
  content: "\e97b";
}

.zwicon-android:before {
  content: "\e97c";
}

.zwicon-apple:before {
  content: "\e97d";
}

.zwicon-bolt:before {
  content: "\e97e";
}

.zwicon-cloud-download:before {
  content: "\e97f";
}

.zwicon-cloud-minus:before {
  content: "\e980";
}

.zwicon-cloud-plus:before {
  content: "\e981";
}

.zwicon-cloud-upload:before {
  content: "\e982";
}

.zwicon-code:before {
  content: "\e983";
}

.zwicon-command:before {
  content: "\e984";
}

.zwicon-database:before {
  content: "\e985";
}

.zwicon-deploy:before {
  content: "\e986";
}

.zwicon-git-branch:before {
  content: "\e987";
}

.zwicon-git-commit:before {
  content: "\e988";
}

.zwicon-git-fork:before {
  content: "\e989";
}

.zwicon-git-merge:before {
  content: "\e98a";
}

.zwicon-git-pull:before {
  content: "\e98b";
}

.zwicon-ios:before {
  content: "\e98c";
}

.zwicon-lan-connection:before {
  content: "\e98d";
}

.zwicon-lan-error:before {
  content: "\e98e";
}

.zwicon-lan:before {
  content: "\e98f";
}

.zwicon-osx:before {
  content: "\e990";
}

.zwicon-repository:before {
  content: "\e991";
}

.zwicon-web:before {
  content: "\e992";
}

.zwicon-window-delete:before {
  content: "\e993";
}

.zwicon-window-minus:before {
  content: "\e994";
}

.zwicon-window-plus:before {
  content: "\e995";
}

.zwicon-window:before {
  content: "\e996";
}

.zwicon-windows:before {
  content: "\e997";
}

.zwicon-airpods-alt:before {
  content: "\e998";
}

.zwicon-airpods:before {
  content: "\e999";
}

.zwicon-apple-watch-smile:before {
  content: "\e99a";
}

.zwicon-apple-watch-time:before {
  content: "\e99b";
}

.zwicon-apple-watch:before {
  content: "\e99c";
}

.zwicon-cable-hdmi:before {
  content: "\e99d";
}

.zwicon-cable-jack:before {
  content: "\e99e";
}

.zwicon-cable-lan:before {
  content: "\e99f";
}

.zwicon-cable-lightning:before {
  content: "\e9a0";
}

.zwicon-cable-magsafe:before {
  content: "\e9a1";
}

.zwicon-cable-usb:before {
  content: "\e9a2";
}

.zwicon-cardboard-vr:before {
  content: "\e9a3";
}

.zwicon-controller-alt:before {
  content: "\e9a4";
}

.zwicon-controller:before {
  content: "\e9a5";
}

.zwicon-desktop:before {
  content: "\e9a6";
}

.zwicon-devices:before {
  content: "\e9a7";
}

.zwicon-floppy:before {
  content: "\e9a8";
}

.zwicon-gameboy:before {
  content: "\e9a9";
}

.zwicon-hard-drive:before {
  content: "\e9aa";
}

.zwicon-headphone:before {
  content: "\e9ab";
}

.zwicon-imac:before {
  content: "\e9ac";
}

.zwicon-ipad-h:before {
  content: "\e9ad";
}

.zwicon-ipad:before {
  content: "\e9ae";
}

.zwicon-iphone-h:before {
  content: "\e9af";
}

.zwicon-iphone-x-h:before {
  content: "\e9b0";
}

.zwicon-iphone-x:before {
  content: "\e9b1";
}

.zwicon-iphone:before {
  content: "\e9b2";
}

.zwicon-keyboard:before {
  content: "\e9b3";
}

.zwicon-laptop:before {
  content: "\e9b4";
}

.zwicon-mac-pro:before {
  content: "\e9b5";
}

.zwicon-macbook-pro:before {
  content: "\e9b6";
}

.zwicon-memory-card:before {
  content: "\e9b7";
}

.zwicon-mouse:before {
  content: "\e9b8";
}

.zwicon-phone-andorid-h:before {
  content: "\e9b9";
}

.zwicon-phone-andorid:before {
  content: "\e9ba";
}

.zwicon-phone-holding-double:before {
  content: "\e9bb";
}

.zwicon-phone-holding:before {
  content: "\e9bc";
}

.zwicon-plug:before {
  content: "\e9bd";
}

.zwicon-printer:before {
  content: "\e9be";
}

.zwicon-server-stack:before {
  content: "\e9bf";
}

.zwicon-smart-glasses:before {
  content: "\e9c0";
}

.zwicon-smart-tv:before {
  content: "\e9c1";
}

.zwicon-smart-watch-time:before {
  content: "\e9c2";
}

.zwicon-smart-watch:before {
  content: "\e9c3";
}

.zwicon-tablet-h:before {
  content: "\e9c4";
}

.zwicon-tablet:before {
  content: "\e9c5";
}

.zwicon-terminal:before {
  content: "\e9c6";
}

.zwicon-virtual-reality:before {
  content: "\e9c7";
}

.zwicon-voice-assistant:before {
  content: "\e9c8";
}

.zwicon-edit-circle:before {
  content: "\e9c9";
}

.zwicon-edit-pencil:before {
  content: "\e9ca";
}

.zwicon-edit-square-feather:before {
  content: "\e9cb";
}

.zwicon-edit-square:before {
  content: "\e9cc";
}

.zwicon-file-archive:before {
  content: "\e9cd";
}

.zwicon-file-audio:before {
  content: "\e9ce";
}

.zwicon-file-cloud:before {
  content: "\e9cf";
}

.zwicon-file-download:before {
  content: "\e9d0";
}

.zwicon-file-empty:before {
  content: "\e9d1";
}

.zwicon-file-export:before {
  content: "\e9d2";
}

.zwicon-file-font:before {
  content: "\e9d3";
}

.zwicon-file-graphic:before {
  content: "\e9d4";
}

.zwicon-file-image:before {
  content: "\e9d5";
}

.zwicon-file-import:before {
  content: "\e9d6";
}

.zwicon-file-pdf:before {
  content: "\e9d7";
}

.zwicon-file-search:before {
  content: "\e9d8";
}

.zwicon-file-sketch:before {
  content: "\e9d9";
}

.zwicon-file-table:before {
  content: "\e9da";
}

.zwicon-file-upload:before {
  content: "\e9db";
}

.zwicon-file-vector:before {
  content: "\e9dc";
}

.zwicon-file-video:before {
  content: "\e9dd";
}

.zwicon-filter-alt:before {
  content: "\e9de";
}

.zwicon-filter:before {
  content: "\e9df";
}

.zwicon-slider-circle-h:before {
  content: "\e9e0";
}

.zwicon-slider-circle-v:before {
  content: "\e9e1";
}

.zwicon-slider-rectangle-h:before {
  content: "\e9e2";
}

.zwicon-slider-rectangle-v:before {
  content: "\e9e3";
}

.zwicon-sort-alphabetic-down:before {
  content: "\e9e4";
}

.zwicon-sort-alphabetic-up:before {
  content: "\e9e5";
}

.zwicon-sort-amount-down:before {
  content: "\e9e6";
}

.zwicon-sort-amount-up:before {
  content: "\e9e7";
}

.zwicon-sort-numeric-down:before {
  content: "\e9e8";
}

.zwicon-sort-numeric-up:before {
  content: "\e9e9";
}

.zwicon-toggle-switch:before {
  content: "\e9ea";
}

.zwicon-bar-code-scan:before {
  content: "\e9eb";
}

.zwicon-bar-code:before {
  content: "\e9ec";
}

.zwicon-bid:before {
  content: "\e9ed";
}

.zwicon-bill:before {
  content: "\e9ee";
}

.zwicon-bitcoin-sign:before {
  content: "\e9ef";
}

.zwicon-bull-horn:before {
  content: "\e9f0";
}

.zwicon-coin:before {
  content: "\e9f1";
}

.zwicon-credit-card:before {
  content: "\e9f2";
}

.zwicon-diamond:before {
  content: "\e9f3";
}

.zwicon-dollar-sign:before {
  content: "\e9f4";
}

.zwicon-euro-sign:before {
  content: "\e9f5";
}

.zwicon-hammer:before {
  content: "\e9f6";
}

.zwicon-line-chart:before {
  content: "\e9f7";
}

.zwicon-lira-sign:before {
  content: "\e9f8";
}

.zwicon-money-bill:before {
  content: "\e9f9";
}

.zwicon-money-stack:before {
  content: "\e9fa";
}

.zwicon-package:before {
  content: "\e9fb";
}

.zwicon-piggy-bank:before {
  content: "\e9fc";
}

.zwicon-pound-sign:before {
  content: "\e9fd";
}

.zwicon-price-tag:before {
  content: "\e9fe";
}

.zwicon-qr-code-scan:before {
  content: "\e9ff";
}

.zwicon-qr-code:before {
  content: "\ea00";
}

.zwicon-receipt:before {
  content: "\ea01";
}

.zwicon-rubel-sign:before {
  content: "\ea02";
}

.zwicon-rupee-sign:before {
  content: "\ea03";
}

.zwicon-sale-badge:before {
  content: "\ea04";
}

.zwicon-shopping-bag-alt:before {
  content: "\ea05";
}

.zwicon-shopping-bag:before {
  content: "\ea06";
}

.zwicon-shopping-cart:before {
  content: "\ea07";
}

.zwicon-store:before {
  content: "\ea08";
}

.zwicon-wallet:before {
  content: "\ea09";
}

.zwicon-won-sign:before {
  content: "\ea0a";
}

.zwicon-yen-sign:before {
  content: "\ea0b";
}

.zwicon-flip-left-alt:before {
  content: "\ea0c";
}

.zwicon-flip-left:before {
  content: "\ea0d";
}

.zwicon-flip-right-alt:before {
  content: "\ea0e";
}

.zwicon-flip-right:before {
  content: "\ea0f";
}

.zwicon-double-tap-two:before {
  content: "\ea10";
}

.zwicon-double-tap:before {
  content: "\ea11";
}

.zwicon-drag:before {
  content: "\ea12";
}

.zwicon-flick-left-two:before {
  content: "\ea13";
}

.zwicon-flick-left:before {
  content: "\ea14";
}

.zwicon-flick-right-two:before {
  content: "\ea15";
}

.zwicon-flick-right:before {
  content: "\ea16";
}

.zwicon-horns:before {
  content: "\ea17";
}

.zwicon-pinch:before {
  content: "\ea18";
}

.zwicon-point:before {
  content: "\ea19";
}

.zwicon-press:before {
  content: "\ea1a";
}

.zwicon-scroll-down-two:before {
  content: "\ea1b";
}

.zwicon-scroll-down:before {
  content: "\ea1c";
}

.zwicon-scroll-h-two:before {
  content: "\ea1d";
}

.zwicon-scroll-h:before {
  content: "\ea1e";
}

.zwicon-scroll-up-two:before {
  content: "\ea1f";
}

.zwicon-scroll-up:before {
  content: "\ea20";
}

.zwicon-scroll-v-two:before {
  content: "\ea21";
}

.zwicon-scroll-v:before {
  content: "\ea22";
}

.zwicon-shaka:before {
  content: "\ea23";
}

.zwicon-spread:before {
  content: "\ea24";
}

.zwicon-tap-two:before {
  content: "\ea25";
}

.zwicon-tap:before {
  content: "\ea26";
}

.zwicon-two-drag:before {
  content: "\ea27";
}

.zwicon-add-item-alt:before {
  content: "\ea28";
}

.zwicon-add-item:before {
  content: "\ea29";
}

.zwicon-add-note:before {
  content: "\ea2a";
}

.zwicon-add-to-list:before {
  content: "\ea2b";
}

.zwicon-at:before {
  content: "\ea2c";
}

.zwicon-attach-document:before {
  content: "\ea2d";
}

.zwicon-paperclip:before {
  content: "\ea2e";
}

.zwicon-battery-full:before {
  content: "\ea30";
}

.zwicon-battery-low:before {
  content: "\ea31";
}

.zwicon-battery-mid:before {
  content: "\ea32";
}

.zwicon-battery-v:before {
  content: "\ea33";
}

.zwicon-bell-alt-ring:before {
  content: "\ea34";
}

.zwicon-bell-alt:before {
  content: "\ea35";
}

.zwicon-bell-slash:before {
  content: "\ea36";
}

.zwicon-bell-snooze:before {
  content: "\ea37";
}

.zwicon-bell:before {
  content: "\ea38";
}

.zwicon-block:before {
  content: "\ea39";
}

.zwicon-book-alt:before {
  content: "\ea3a";
}

.zwicon-book:before {
  content: "\ea3b";
}

.zwicon-bookmark:before {
  content: "\ea3c";
}

.zwicon-briefcase:before {
  content: "\ea3d";
}

.zwicon-calendar-day:before {
  content: "\ea3e";
}

.zwicon-calendar-month:before {
  content: "\ea3f";
}

.zwicon-calendar-never:before {
  content: "\ea40";
}

.zwicon-calendar-week:before {
  content: "\ea41";
}

.zwicon-calendar:before {
  content: "\ea42";
}

.zwicon-call-in:before {
  content: "\ea43";
}

.zwicon-call-out:before {
  content: "\ea44";
}

.zwicon-chat:before {
  content: "\ea45";
}

.zwicon-checkmark-circle:before {
  content: "\ea46";
}

.zwicon-checkmark-square:before {
  content: "\ea47";
}

.zwicon-checkmark:before {
  content: "\ea48";
}

.zwicon-clock:before {
  content: "\ea49";
}

.zwicon-close-circle:before {
  content: "\ea4a";
}

.zwicon-close-square:before {
  content: "\ea4b";
}

.zwicon-close:before {
  content: "\ea4c";
}

.zwicon-cog:before {
  content: "\ea4d";
}

.zwicon-comment:before {
  content: "\ea4e";
}

.zwicon-compass:before {
  content: "\ea4f";
}

.zwicon-delete:before {
  content: "\ea50";
}

.zwicon-download:before {
  content: "\ea51";
}

.zwicon-earth-alt:before {
  content: "\ea52";
}

.zwicon-earth:before {
  content: "\ea53";
}

.zwicon-exclamation-triangle:before {
  content: "\ea54";
}

.zwicon-exclamation-mark:before {
  content: "\ea2f";
}

.zwicon-export:before {
  content: "\ea55";
}

.zwicon-eye-slash:before {
  content: "\ea56";
}

.zwicon-eye:before {
  content: "\ea57";
}

.zwicon-face-id:before {
  content: "\ea58";
}

.zwicon-flag:before {
  content: "\ea59";
}

.zwicon-grid:before {
  content: "\ea5a";
}

.zwicon-hamburger-menu:before {
  content: "\ea5b";
}

.zwicon-heart:before {
  content: "\ea5c";
}

.zwicon-home:before {
  content: "\ea5d";
}

.zwicon-import:before {
  content: "\ea5e";
}

.zwicon-info-circle:before {
  content: "\ea5f";
}

.zwicon-lifebelt:before {
  content: "\ea60";
}

.zwicon-link:before {
  content: "\ea61";
}

.zwicon-lock-alt:before {
  content: "\ea62";
}

.zwicon-lock:before {
  content: "\ea63";
}

.zwicon-mail:before {
  content: "\ea64";
}

.zwicon-map-marker:before {
  content: "\ea65";
}

.zwicon-minus-circle:before {
  content: "\ea66";
}

.zwicon-minus-square:before {
  content: "\ea67";
}

.zwicon-minus:before {
  content: "\ea68";
}

.zwicon-more-h:before {
  content: "\ea69";
}

.zwicon-more-v:before {
  content: "\ea6a";
}

.zwicon-my-location:before {
  content: "\ea6b";
}

.zwicon-password:before {
  content: "\ea6c";
}

.zwicon-phone:before {
  content: "\ea6d";
}

.zwicon-pin:before {
  content: "\ea6e";
}

.zwicon-plus-circle:before {
  content: "\ea6f";
}

.zwicon-plus-square:before {
  content: "\ea70";
}

.zwicon-plus:before {
  content: "\ea71";
}

.zwicon-search:before {
  content: "\ea72";
}

.zwicon-send:before {
  content: "\ea73";
}

.zwicon-share:before {
  content: "\ea74";
}

.zwicon-shortcut:before {
  content: "\ea75";
}

.zwicon-sign-in:before {
  content: "\ea76";
}

.zwicon-sign-out:before {
  content: "\ea77";
}

.zwicon-thumbs-down:before {
  content: "\ea78";
}

.zwicon-thumbs-up:before {
  content: "\ea79";
}

.zwicon-trash:before {
  content: "\ea7a";
}

.zwicon-unlink:before {
  content: "\ea7b";
}

.zwicon-upload:before {
  content: "\ea7c";
}

.zwicon-user-circle:before {
  content: "\ea7d";
}

.zwicon-user-delete:before {
  content: "\ea7e";
}

.zwicon-user-follow:before {
  content: "\ea7f";
}

.zwicon-user-minus:before {
  content: "\ea80";
}

.zwicon-user-plus:before {
  content: "\ea81";
}

.zwicon-user:before {
  content: "\ea82";
}

.zwicon-users:before {
  content: "\ea83";
}

.zwicon-history:before {
  content: "\ea84";
}

.zwicon-task:before {
  content: "\ea85";
}

.zwicon-bottom-bar:before {
  content: "\ea86";
}

.zwicon-content-left:before {
  content: "\ea87";
}

.zwicon-content-right:before {
  content: "\ea88";
}

.zwicon-desktop-1:before {
  content: "\ea89";
}

.zwicon-desktop-2:before {
  content: "\ea8a";
}

.zwicon-desktop-3:before {
  content: "\ea8b";
}

.zwicon-half-h:before {
  content: "\ea8c";
}

.zwicon-half-v:before {
  content: "\ea8d";
}

.zwicon-layout-1:before {
  content: "\ea8e";
}

.zwicon-layout-2:before {
  content: "\ea8f";
}

.zwicon-layout-3:before {
  content: "\ea90";
}

.zwicon-layout-4:before {
  content: "\ea91";
}

.zwicon-layout-5:before {
  content: "\ea92";
}

.zwicon-left-bar:before {
  content: "\ea93";
}

.zwicon-margin:before {
  content: "\ea94";
}

.zwicon-right-bar:before {
  content: "\ea95";
}

.zwicon-sidebar:before {
  content: "\ea96";
}

.zwicon-three-h:before {
  content: "\ea97";
}

.zwicon-three-v:before {
  content: "\ea98";
}

.zwicon-to-bottom:before {
  content: "\ea99";
}

.zwicon-to-left:before {
  content: "\ea9a";
}

.zwicon-to-right:before {
  content: "\ea9b";
}

.zwicon-to-top:before {
  content: "\ea9c";
}

.zwicon-top-bar:before {
  content: "\ea9d";
}

.zwicon-airplay:before {
  content: "\ea9e";
}

.zwicon-broadcast:before {
  content: "\ea9f";
}

.zwicon-camera-alt:before {
  content: "\eaa0";
}

.zwicon-camera-alt2:before {
  content: "\eaa1";
}

.zwicon-camera:before {
  content: "\eaa2";
}

.zwicon-cast:before {
  content: "\eaa3";
}

.zwicon-collapse-wide:before {
  content: "\eaa4";
}

.zwicon-collapse1:before {
  content: "\eaa5";
}

.zwicon-disk:before {
  content: "\eaa6";
}

.zwicon-expand-wide:before {
  content: "\eaa7";
}

.zwicon-expand1:before {
  content: "\eaa8";
}

.zwicon-film-alt:before {
  content: "\eaa9";
}

.zwicon-film-play:before {
  content: "\eaaa";
}

.zwicon-film:before {
  content: "\eaab";
}

.zwicon-image-circle:before {
  content: "\eaac";
}

.zwicon-image-gallery:before {
  content: "\eaad";
}

.zwicon-image-wide:before {
  content: "\eaae";
}

.zwicon-image:before {
  content: "\eaaf";
}

.zwicon-microphone-mute:before {
  content: "\eab0";
}

.zwicon-microphone:before {
  content: "\eab1";
}

.zwicon-next-alt:before {
  content: "\eab2";
}

.zwicon-next:before {
  content: "\eab3";
}

.zwicon-panorama-h:before {
  content: "\eab4";
}

.zwicon-pause-alt:before {
  content: "\eab5";
}

.zwicon-pause:before {
  content: "\eab6";
}

.zwicon-play-alt:before {
  content: "\eab7";
}

.zwicon-play:before {
  content: "\eab8";
}

.zwicon-previous-alt:before {
  content: "\eab9";
}

.zwicon-previous:before {
  content: "\eaba";
}

.zwicon-shuffle:before {
  content: "\eabb";
}

.zwicon-video-alt:before {
  content: "\eabc";
}

.zwicon-video-camera:before {
  content: "\eabd";
}

.zwicon-video:before {
  content: "\eabe";
}

.zwicon-volume-low:before {
  content: "\eabf";
}

.zwicon-volume-max:before {
  content: "\eac0";
}

.zwicon-volume-mid:before {
  content: "\eac1";
}

.zwicon-volume-min:before {
  content: "\eac2";
}

.zwicon-wide-angle:before {
  content: "\eac3";
}

.zwicon-exclude:before {
  content: "\eac4";
}

.zwicon-flatten:before {
  content: "\eac5";
}

.zwicon-intersect:before {
  content: "\eac6";
}

.zwicon-substract-back:before {
  content: "\eac7";
}

.zwicon-substract-front:before {
  content: "\eac8";
}

.zwicon-unite:before {
  content: "\eac9";
}

.zwicon-height:before {
  content: "\eaca";
}

.zwicon-resize-alt:before {
  content: "\eacb";
}

.zwicon-resize:before {
  content: "\eacc";
}

.zwicon-scale-down:before {
  content: "\eacd";
}

.zwicon-scale-up:before {
  content: "\eace";
}

.zwicon-scale:before {
  content: "\eacf";
}

.zwicon-width:before {
  content: "\ead0";
}

.zwicon-rotate-axis-x:before {
  content: "\ead1";
}

.zwicon-rotate-axis-xy:before {
  content: "\ead2";
}

.zwicon-rotate-axis-y:before {
  content: "\ead3";
}

.zwicon-rotate-left:before {
  content: "\ead4";
}

.zwicon-rotate-right:before {
  content: "\ead5";
}

.zwicon-rotate-shape:before {
  content: "\ead6";
}

.zwicon-cursor-square:before {
  content: "\ead7";
}

.zwicon-cursor:before {
  content: "\ead8";
}

.zwicon-select-cursor:before {
  content: "\ead9";
}

.zwicon-select:before {
  content: "\eada";
}

.zwicon-shape-circle:before {
  content: "\eadb";
}

.zwicon-shape-cone:before {
  content: "\eadc";
}

.zwicon-shape-cube:before {
  content: "\eadd";
}

.zwicon-shape-cylinder:before {
  content: "\eade";
}

.zwicon-shape-octagonal:before {
  content: "\eadf";
}

.zwicon-shape-polygon:before {
  content: "\eae0";
}

.zwicon-shape-sphere:before {
  content: "\eae1";
}

.zwicon-shape-square:before {
  content: "\eae2";
}

.zwicon-laugh:before {
  content: "\eae3";
}

.zwicon-neutral:before {
  content: "\eae4";
}

.zwicon-sad:before {
  content: "\eae5";
}

.zwicon-smile:before {
  content: "\eae6";
}

.zwicon-bold:before {
  content: "\eae7";
}

.zwicon-draw-text-field:before {
  content: "\eae8";
}

.zwicon-font-height:before {
  content: "\eae9";
}

.zwicon-font-size:before {
  content: "\eaea";
}

.zwicon-font-width:before {
  content: "\eaeb";
}

.zwicon-font:before {
  content: "\eaec";
}

.zwicon-heading:before {
  content: "\eaed";
}

.zwicon-indent-left-alt:before {
  content: "\eaee";
}

.zwicon-indent-left:before {
  content: "\eaef";
}

.zwicon-indent-right-alt:before {
  content: "\eaf0";
}

.zwicon-indent-right:before {
  content: "\eaf1";
}

.zwicon-italic:before {
  content: "\eaf2";
}

.zwicon-list-bullet:before {
  content: "\eaf3";
}

.zwicon-list-number:before {
  content: "\eaf4";
}

.zwicon-outdent-left:before {
  content: "\eaf5";
}

.zwicon-outdent-right:before {
  content: "\eaf6";
}

.zwicon-paragraph:before {
  content: "\eaf7";
}

.zwicon-text-align-center:before {
  content: "\eaf8";
}

.zwicon-text-align-justify:before {
  content: "\eaf9";
}

.zwicon-text-align-left:before {
  content: "\eafa";
}

.zwicon-text-align-right:before {
  content: "\eafb";
}

.zwicon-text-cursor:before {
  content: "\eafc";
}

.zwicon-text-decoration:before {
  content: "\eafd";
}

.zwicon-text-field:before {
  content: "\eafe";
}

.zwicon-text:before {
  content: "\eaff";
}

.zwicon-underline:before {
  content: "\eb00";
}

.zwicon-wrap-img-left:before {
  content: "\eb01";
}

.zwicon-wrap-img-right:before {
  content: "\eb02";
}

.zwicon-wrap-left:before {
  content: "\eb03";
}

.zwicon-wrap-right:before {
  content: "\eb04";
}

.zwicon-transform-left:before {
  content: "\eb05";
}

.zwicon-transform-right:before {
  content: "\eb06";
}

.zwicon-ab-testing:before {
  content: "\eb07";
}

.zwicon-agile:before {
  content: "\eb08";
}

.zwicon-backlog:before {
  content: "\eb09";
}

.zwicon-design-studio:before {
  content: "\eb0a";
}

.zwicon-design-validation:before {
  content: "\eb0b";
}

.zwicon-information-architecture:before {
  content: "\eb0c";
}

.zwicon-interview:before {
  content: "\eb0d";
}

.zwicon-kanban-board:before {
  content: "\eb0e";
}

.zwicon-lego-serious-play:before {
  content: "\eb0f";
}

.zwicon-paper-prototype:before {
  content: "\eb10";
}

.zwicon-persona:before {
  content: "\eb11";
}

.zwicon-prototype-mobile:before {
  content: "\eb12";
}

.zwicon-prototype:before {
  content: "\eb13";
}

.zwicon-responsive:before {
  content: "\eb14";
}

.zwicon-screen-flow:before {
  content: "\eb15";
}

.zwicon-stand-up:before {
  content: "\eb16";
}

.zwicon-sticky-notes1:before {
  content: "\eb17";
}

.zwicon-usability:before {
  content: "\eb18";
}

.zwicon-user-flow:before {
  content: "\eb19";
}

.zwicon-user-interview:before {
  content: "\eb1a";
}

.zwicon-user-journey:before {
  content: "\eb1b";
}

.zwicon-cloud:before {
  content: "\eb1c";
}

.zwicon-cloudy-day:before {
  content: "\eb1d";
}

.zwicon-cloudy-night:before {
  content: "\eb1e";
}

.zwicon-heavy-rain-day:before {
  content: "\eb1f";
}

.zwicon-heavy-rain-night:before {
  content: "\eb20";
}

.zwicon-heavy-rain:before {
  content: "\eb21";
}

.zwicon-heavy-wind:before {
  content: "\eb22";
}

.zwicon-mild-rain-day:before {
  content: "\eb23";
}

.zwicon-mild-rain-night:before {
  content: "\eb24";
}

.zwicon-mild-rain:before {
  content: "\eb25";
}

.zwicon-moon:before {
  content: "\eb26";
}

.zwicon-rain-day:before {
  content: "\eb27";
}

.zwicon-rain-night:before {
  content: "\eb28";
}

.zwicon-rain:before {
  content: "\eb29";
}

.zwicon-snow-day:before {
  content: "\eb2a";
}

.zwicon-snow-night:before {
  content: "\eb2b";
}

.zwicon-snow:before {
  content: "\eb2c";
}

.zwicon-storm-day:before {
  content: "\eb2d";
}

.zwicon-storm-night:before {
  content: "\eb2e";
}

.zwicon-storm:before {
  content: "\eb2f";
}

.zwicon-sun:before {
  content: "\eb30";
}

.zwicon-temperature:before {
  content: "\eb31";
}

.zwicon-wind-alt:before {
  content: "\eb32";
}

.zwicon-wind-cloudy-day:before {
  content: "\eb33";
}

.zwicon-wind-cloudy-night:before {
  content: "\eb34";
}

.zwicon-wind-cloudy:before {
  content: "\eb35";
}

.zwicon-wind:before {
  content: "\eb36";
}

/*!
 * Bootstrap Colorpicker v2.5.2
 * https://itsjavi.com/bootstrap-colorpicker/
 *
 * Originally written by (c) 2012 Stefan Petre
 * Licensed under the Apache License v2.0
 * http://www.apache.org/licenses/LICENSE-2.0.txt
 *
 */
.colorpicker-saturation {
  width: 100px;
  height: 100px;
  background-image: url("data:image/png;base64,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");
  cursor: crosshair;
  float: left;
}

.colorpicker-saturation i {
  display: block;
  height: 5px;
  width: 5px;
  border: 1px solid #000;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  border-radius: 5px;
  position: absolute;
  top: 0;
  left: 0;
  margin: -4px 0 0 -4px;
}

.colorpicker-saturation i b {
  display: block;
  height: 5px;
  width: 5px;
  border: 1px solid #fff;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  border-radius: 5px;
}

.colorpicker-hue,
.colorpicker-alpha {
  width: 15px;
  height: 100px;
  float: left;
  cursor: row-resize;
  margin-left: 4px;
  margin-bottom: 4px;
}

.colorpicker-hue i,
.colorpicker-alpha i {
  display: block;
  height: 1px;
  background: #000;
  border-top: 1px solid #fff;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  margin-top: -1px;
}

.colorpicker-hue {
  background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAABkCAMAAABw8qpSAAABLFBMVEXqFBb/ABH/ACL/ADH/AEH/AFD/AGD/AG7/AH7/AI3/AJ3/AKz/ALz/AMr/ANv/AOr/APr2AP/mAP/XAP/HAP+4AP+oAP+aAP+JAP97AP9rAP9cAP9MAP8+AP8tAP8fAP8PAP8BAv8AEP8AH/8AL/8APv8ATv8AXP8Abf8Ae/8Ai/8Amv8Aqv8AuP8Ayf8A1/8A5/8A9/8A//gA/+kA/9kA/8oA/7oA/6wA/5sA/40A/30A/24A/14A/1AA/z8A/zEA/yEA/xEB/wMN/wAd/wAs/wA8/wBK/wBb/wBp/wB5/wCI/wCY/wCm/wC3/wDF/wDV/wDk/wD1/wD/+gD/7AD/3AD/zAD/vgD/rQD/nwD/jgD/gAD/cAD/YgD/UQD/QwD/MgD/JAD/FAD4Eg42qAedAAAAh0lEQVR4XgXAg3EDAAAAwI9to7Zt27a1/w49BASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTS1tHXo1KVbj159+g0YNGTYiFFjxk2YNGXajFlz5i1YtGTZilVr1m3YtGXbjl179h04dOTYiVNnzl24dOXajVt37j149OTZi1dv3n349OXbj19//wOxE1dQ8reGAAAAAElFTkSuQmCC");
}

.colorpicker-alpha {
  background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAABkCAQAAAAVxWkcAAABr0lEQVR4Xo2VwU0DQQxF7dmRuNIFlzlSAR3QAaXQQdIBJVABFXDcOVAAd67cjJLR07dkhcSrkZKfb/t7bG88rFo3B5gZPMNycItu2xloGV7MWHzM9zuzFWCkmA0nK6AszCUJDW6+mG6R03ncw5v8EMTEvZ2O3AliYjpslblc0RF9LmZYWxURU6aKytWZYsoWCAe+xwOZp1GsEukGiIkYxcQCHck99+gRgB7JncyIB5SGEhP3Yh5P6JwX+u6AnYot104d8DJT7uH7M9JH6OZbimj0vfMVaYnJIZFJDBW9kHlerL2C6JV4mSt7uuo2N57RxnZ+usQjn0R1jwBJBrNO3evJpVYUWsJ/E3UiXRlv24/7YZ04xmEdWlzcKS+B/eapeyMvFd2k0+hRk/T0AmTW8h69s2sjYMsdPntECiILhAeIMZAeH4QvUwfn6ijC0tTV+fT9ky8jM9nK2g7Ly1VjSpKYq6IvsAm7MtNu1orEqa/K3KNvgMFdhfquPfJmp2dbh0/8Gzb6Y22ViaNr6n5410zXdngVhbu6XqdOtWOuin5hjABGp4a2uotZ71MVCfwDBt2/v37yo6AAAAAASUVORK5CYII=");
  display: none;
}

.colorpicker-saturation,
.colorpicker-hue,
.colorpicker-alpha {
  background-size: contain;
}

.colorpicker {
  padding: 4px;
  min-width: 130px;
  margin-top: 1px;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
  z-index: 2500;
}

.colorpicker:before,
.colorpicker:after {
  display: table;
  content: "";
  line-height: 0;
}

.colorpicker:after {
  clear: both;
}

.colorpicker:before {
  content: '';
  display: inline-block;
  border-left: 7px solid transparent;
  border-right: 7px solid transparent;
  border-bottom: 7px solid #ccc;
  border-bottom-color: rgba(0, 0, 0, 0.2);
  position: absolute;
  top: -7px;
  left: 6px;
}

.colorpicker:after {
  content: '';
  display: inline-block;
  border-left: 6px solid transparent;
  border-right: 6px solid transparent;
  border-bottom: 6px solid #ffffff;
  position: absolute;
  top: -6px;
  left: 7px;
}

.colorpicker div {
  position: relative;
}

.colorpicker.colorpicker-with-alpha {
  min-width: 140px;
}

.colorpicker.colorpicker-with-alpha .colorpicker-alpha {
  display: block;
}

.colorpicker-color {
  height: 10px;
  margin-top: 5px;
  clear: both;
  background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAABkCAQAAAAVxWkcAAABr0lEQVR4Xo2VwU0DQQxF7dmRuNIFlzlSAR3QAaXQQdIBJVABFXDcOVAAd67cjJLR07dkhcSrkZKfb/t7bG88rFo3B5gZPMNycItu2xloGV7MWHzM9zuzFWCkmA0nK6AszCUJDW6+mG6R03ncw5v8EMTEvZ2O3AliYjpslblc0RF9LmZYWxURU6aKytWZYsoWCAe+xwOZp1GsEukGiIkYxcQCHck99+gRgB7JncyIB5SGEhP3Yh5P6JwX+u6AnYot104d8DJT7uH7M9JH6OZbimj0vfMVaYnJIZFJDBW9kHlerL2C6JV4mSt7uuo2N57RxnZ+usQjn0R1jwBJBrNO3evJpVYUWsJ/E3UiXRlv24/7YZ04xmEdWlzcKS+B/eapeyMvFd2k0+hRk/T0AmTW8h69s2sjYMsdPntECiILhAeIMZAeH4QvUwfn6ijC0tTV+fT9ky8jM9nK2g7Ly1VjSpKYq6IvsAm7MtNu1orEqa/K3KNvgMFdhfquPfJmp2dbh0/8Gzb6Y22ViaNr6n5410zXdngVhbu6XqdOtWOuin5hjABGp4a2uotZ71MVCfwDBt2/v37yo6AAAAAASUVORK5CYII=");
  background-position: 0 100%;
}

.colorpicker-color div {
  height: 10px;
}

.colorpicker-selectors {
  display: none;
  height: 10px;
  margin-top: 5px;
  clear: both;
}

.colorpicker-selectors i {
  cursor: pointer;
  float: left;
  height: 10px;
  width: 10px;
}

.colorpicker-selectors i + i {
  margin-left: 3px;
}

.colorpicker-element .input-group-addon i,
.colorpicker-element .add-on i {
  display: inline-block;
  cursor: pointer;
  height: 16px;
  vertical-align: text-top;
  width: 16px;
}

.colorpicker.colorpicker-inline {
  position: relative;
  display: inline-block;
  float: none;
  z-index: auto;
}

.colorpicker.colorpicker-horizontal {
  width: 110px;
  min-width: 110px;
  height: auto;
}

.colorpicker.colorpicker-horizontal .colorpicker-saturation {
  margin-bottom: 4px;
}

.colorpicker.colorpicker-horizontal .colorpicker-color {
  width: 100px;
}

.colorpicker.colorpicker-horizontal .colorpicker-hue,
.colorpicker.colorpicker-horizontal .colorpicker-alpha {
  width: 100px;
  height: 15px;
  float: left;
  cursor: col-resize;
  margin-left: 0px;
  margin-bottom: 4px;
}

.colorpicker.colorpicker-horizontal .colorpicker-hue i,
.colorpicker.colorpicker-horizontal .colorpicker-alpha i {
  display: block;
  height: 15px;
  background: #ffffff;
  position: absolute;
  top: 0;
  left: 0;
  width: 1px;
  border: none;
  margin-top: 0px;
}

.colorpicker.colorpicker-horizontal .colorpicker-hue {
  background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGQAAAABCAMAAAAfBfuPAAABLFBMVEXqFBb/ABH/ACL/ADH/AEH/AFD/AGD/AG7/AH7/AI3/AJ3/AKz/ALz/AMr/ANv/AOr/APr2AP/mAP/XAP/HAP+4AP+oAP+aAP+JAP97AP9rAP9cAP9MAP8+AP8tAP8fAP8PAP8BAv8AEP8AH/8AL/8APv8ATv8AXP8Abf8Ae/8Ai/8Amv8Aqv8AuP8Ayf8A1/8A5/8A9/8A//gA/+kA/9kA/8oA/7oA/6wA/5sA/40A/30A/24A/14A/1AA/z8A/zEA/yEA/xEB/wMN/wAd/wAs/wA8/wBK/wBb/wBp/wB5/wCI/wCY/wCm/wC3/wDF/wDV/wDk/wD1/wD/+gD/7AD/3AD/zAD/vgD/rQD/nwD/jgD/gAD/cAD/YgD/UQD/QwD/MgD/JAD/FAD4Eg42qAedAAAAbUlEQVR4XgXAghEDsbxtlrZt27ax/w49ACAYQTGcICmaYTleECVZUTXdMC1Wm93hdLk9Xp8/EAyFI9FYPJFMpTPZXL5QLJUr1Vq90Wy1O91efzAcjSfT2XyxXK03293+cDydL9fb/fF8vT/f3x+LfRNXARMbCAAAAABJRU5ErkJggg==");
}

.colorpicker.colorpicker-horizontal .colorpicker-alpha {
  background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGQAAAAKCAQAAADoFTP1AAAB9ElEQVR4XoWTQW4VMRBEu9qWEimL7DhEMp8NF+ASnJJLcAQgE1bcgBUSkYKUuHCrZ9pjeqSU5Yn9LPu7umJQBIIv+k7vIOrtK66L4lmr3pVOrOv3otp619KZ0/KjdNI79L52Uo09FBQWrU0vfe5trezU+hLsoUKd3Repovte+0vbq/7Lj5XbaHECKasR9G4MPlbp+gzZxd6koPEJCkAYC5SjcOTAIIOK90Dja1IfIZ8Z+zAY9jm3b5Ia+MT5sFcqRJrR2AYYA8Kua5BzYRrFPNmD4PQMegGJMOffJJUsWiI3nCHZZjInNdffLWOufzbc3JaboCAVxwmnRHbhLSPwRJ4wU0BRSc6HkECYYVw95nMKgJOcylxrJttE5Ibzf9Xq9GPvP+WX3MiV/MGHfRu/SentRQrfG1GzsIrytdNXucSRKxQNIGHM9YhGFQJcdjNcBZvfJayuYe4Sia1CzwW+19mWOhe37HsxJWKwbu/jluEU15QzAQjAqCEbhMJc78GYV2E0kooHDubUImWkTOhGpgv8PoT8DJG/bzxna4BZ0eOFSOaLADGeSpFsg5AzeaDZIDQQXjZ4y/8ryfzUXBwdELRjTjCNvOeT0rNlrJz90vwy6N9pXXQEluX0inElpPWokSdiLCfiNJJjMKQ8Qsh8GEKQKMo/eiHrNbI9UksAAAAASUVORK5CYII=");
}

.colorpicker-right:before {
  left: auto;
  right: 6px;
}

.colorpicker-right:after {
  left: auto;
  right: 7px;
}

.colorpicker-no-arrow:before {
  border-right: 0;
  border-left: 0;
}

.colorpicker-no-arrow:after {
  border-right: 0;
  border-left: 0;
}

.colorpicker.colorpicker-visible,
.colorpicker-alpha.colorpicker-visible,
.colorpicker-saturation.colorpicker-visible,
.colorpicker-hue.colorpicker-visible,
.colorpicker-selectors.colorpicker-visible {
  display: block;
}

.colorpicker.colorpicker-hidden,
.colorpicker-alpha.colorpicker-hidden,
.colorpicker-saturation.colorpicker-hidden,
.colorpicker-hue.colorpicker-hidden,
.colorpicker-selectors.colorpicker-hidden {
  display: none;
}

.colorpicker-inline.colorpicker-visible {
  display: inline-block;
}

ul.jqtree-tree {
  list-style: none outside;
  margin-left: 0;
  margin-bottom: 0;
  padding: 0;
}

ul.jqtree-tree.jqtree-dnd {
  touch-action: none;
}

ul.jqtree-tree ul.jqtree_common {
  list-style: none outside;
  margin-left: 12px;
  margin-right: 0;
  margin-bottom: 0;
  padding: 0;
  display: block;
}

ul.jqtree-tree li.jqtree-closed > ul.jqtree_common {
  display: none;
}

ul.jqtree-tree li.jqtree_common {
  clear: both;
  list-style-type: none;
}

ul.jqtree-tree .jqtree-toggler {
  border-bottom: none;
  color: #333;
  text-decoration: none;
  vertical-align: middle;
}

ul.jqtree-tree .jqtree-toggler:hover {
  color: #000;
  text-decoration: none;
}

ul.jqtree-tree .jqtree-toggler.jqtree-closed {
  background-position: 0 0;
}

ul.jqtree-tree .jqtree-toggler.jqtree-toggler-left {
  margin-right: 0.5em;
}

ul.jqtree-tree .jqtree-toggler.jqtree-toggler-right {
  margin-left: 0.5em;
}

ul.jqtree-tree .jqtree-element {
  cursor: pointer;
  position: relative;
  display: flex;
}

ul.jqtree-tree .jqtree-title {
  color: #1c4257;
  vertical-align: middle;
  margin-left: 1.5em;
}

ul.jqtree-tree .jqtree-title.jqtree-title-folder {
  margin-left: 0;
}

ul.jqtree-tree li.jqtree-folder {
  margin-bottom: 4px;
}

ul.jqtree-tree li.jqtree-folder.jqtree-closed {
  margin-bottom: 1px;
}

ul.jqtree-tree li.jqtree-ghost {
  position: relative;
  z-index: 10;
  margin-right: 10px;
}

ul.jqtree-tree li.jqtree-ghost span {
  display: block;
}

ul.jqtree-tree li.jqtree-ghost span.jqtree-circle {
  border: solid 2px #0000ff;
  border-radius: 100px;
  height: 8px;
  width: 8px;
  position: absolute;
  top: -4px;
  left: -6px;
  box-sizing: border-box;
}

ul.jqtree-tree li.jqtree-ghost span.jqtree-line {
  background-color: #0000ff;
  height: 2px;
  padding: 0;
  position: absolute;
  top: -1px;
  left: 2px;
  width: 100%;
}

ul.jqtree-tree li.jqtree-ghost.jqtree-inside {
  margin-left: 48px;
}

ul.jqtree-tree span.jqtree-border {
  position: absolute;
  display: block;
  left: -2px;
  top: 0;
  border: solid 2px #0000ff;
  border-radius: 6px;
  margin: 0;
  box-sizing: content-box;
}

ul.jqtree-tree li.jqtree-selected > .jqtree-element,
ul.jqtree-tree li.jqtree-selected > .jqtree-element:hover {
  background-color: #97bdd6;
  background: linear-gradient(#bee0f5, #89afca);
  text-shadow: 0 1px 0 rgba(255, 255, 255, 0.7);
}

ul.jqtree-tree .jqtree-moving > .jqtree-element .jqtree-title {
  outline: dashed 1px #0000ff;
}

ul.jqtree-tree.jqtree-rtl {
  direction: rtl;
}

ul.jqtree-tree.jqtree-rtl ul.jqtree_common {
  margin-left: 0;
  margin-right: 12px;
}

ul.jqtree-tree.jqtree-rtl .jqtree-toggler {
  margin-left: 0.5em;
  margin-right: 0;
}

ul.jqtree-tree.jqtree-rtl .jqtree-title {
  margin-left: 0;
  margin-right: 1.5em;
}

ul.jqtree-tree.jqtree-rtl .jqtree-title.jqtree-title-folder {
  margin-right: 0;
}

ul.jqtree-tree.jqtree-rtl li.jqtree-ghost {
  margin-right: 0;
  margin-left: 10px;
}

ul.jqtree-tree.jqtree-rtl li.jqtree-ghost span.jqtree-circle {
  right: -6px;
}

ul.jqtree-tree.jqtree-rtl li.jqtree-ghost span.jqtree-line {
  right: 2px;
}

ul.jqtree-tree.jqtree-rtl li.jqtree-ghost.jqtree-inside {
  margin-left: 0;
  margin-right: 48px;
}

ul.jqtree-tree.jqtree-rtl span.jqtree-border {
  right: -2px;
}

span.jqtree-dragging {
  color: #fff;
  background: #000;
  opacity: 0.6;
  cursor: pointer;
  padding: 2px 8px;
}

@font-face {
  font-family: 'Nunito';
  src: url(/build/fonts/nunito-regular.36a2ded8.woff2) format("woff2"), url(/build/fonts/nunito-regular.0db64b47.woff) format("woff");
  font-weight: 400;
  font-style: normal;
  font-stretch: normal;
}

@font-face {
  font-family: 'Nunito';
  src: url(/build/fonts/nunito-semibold.f5563e23.woff2) format("woff2"), url(/build/fonts/nunito-semibold.dfed85bf.woff) format("woff");
  font-weight: 600;
  font-style: normal;
  font-stretch: normal;
  unicode-range: U+0020-2212;
}

@font-face {
  font-family: 'Nunito';
  src: url(/build/fonts/nunito-bold.30ed49fa.woff2) format("woff2"), url(/build/fonts/nunito-bold.730d100d.woff) format("woff");
  font-weight: 700;
  font-style: normal;
  font-stretch: normal;
  unicode-range: U+0020-2212;
}

/*!
 * Bootstrap v4.6.0 (https://getbootstrap.com/)
 * Copyright 2011-2021 The Bootstrap Authors
 * Copyright 2011-2021 Twitter, Inc.
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
 */
:root {
  --blue: #007bff;
  --indigo: #6610f2;
  --purple: #6f42c1;
  --pink: #e83e8c;
  --red: #dc3545;
  --orange: #fd7e14;
  --yellow: #ffc107;
  --green: #28a745;
  --teal: #20c997;
  --cyan: #17a2b8;
  --white: #ffffff;
  --gray: #6c757d;
  --gray-dark: #343a40;
  --primary: #007bff;
  --secondary: #6c757d;
  --success: #28a745;
  --info: #17a2b8;
  --warning: #ffc107;
  --danger: #dc3545;
  --light: #f8f9fa;
  --dark: #343a40;
  --breakpoint-xs: 0;
  --breakpoint-sm: 576px;
  --breakpoint-md: 768px;
  --breakpoint-lg: 992px;
  --breakpoint-xl: 1200px;
  --font-family-sans-serif: "Nunito", sans-serif;
  --font-family-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

html {
  font-family: sans-serif;
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

article, aside, figcaption, figure, footer, header, hgroup, main, nav, section {
  display: block;
}

body {
  margin: 0;
  font-family: "Nunito", sans-serif;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #000000;
  text-align: left;
  background-color: #ffffff;
}

[tabindex="-1"]:focus:not(:focus-visible) {
  outline: 0 !important;
}

hr {
  box-sizing: content-box;
  height: 0;
  overflow: visible;
}

h1, h2, h3, h4, h5, h6 {
  margin-top: 0;
  margin-bottom: 0.5rem;
}

p {
  margin-top: 0;
  margin-bottom: 1rem;
}

abbr[title],
abbr[data-original-title] {
  text-decoration: underline;
  text-decoration: underline dotted;
  cursor: help;
  border-bottom: 0;
  text-decoration-skip-ink: none;
}

address {
  margin-bottom: 1rem;
  font-style: normal;
  line-height: inherit;
}

ol,
ul,
dl {
  margin-top: 0;
  margin-bottom: 1rem;
}

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

dt {
  font-weight: 600;
}

dd {
  margin-bottom: .5rem;
  margin-left: 0;
}

blockquote {
  margin: 0 0 1rem;
}

b,
strong {
  font-weight: bolder;
}

small {
  font-size: 80%;
}

sub,
sup {
  position: relative;
  font-size: 75%;
  line-height: 0;
  vertical-align: baseline;
}

sub {
  bottom: -.25em;
}

sup {
  top: -.5em;
}

a {
  color: #007bff;
  text-decoration: none;
  background-color: transparent;
}

a:hover {
  color: #0056b3;
  text-decoration: none;
}

a:not([href]):not([class]) {
  color: inherit;
  text-decoration: none;
}

a:not([href]):not([class]):hover {
  color: inherit;
  text-decoration: none;
}

pre,
code,
kbd,
samp {
  font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  font-size: 1em;
}

pre {
  margin-top: 0;
  margin-bottom: 1rem;
  overflow: auto;
  -ms-overflow-style: scrollbar;
}

figure {
  margin: 0 0 1rem;
}

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

svg {
  overflow: hidden;
  vertical-align: middle;
}

table {
  border-collapse: collapse;
}

caption {
  padding-top: 1rem 1.5rem;
  padding-bottom: 1rem 1.5rem;
  color: rgba(255, 255, 255, 0.5);
  text-align: left;
  caption-side: bottom;
}

th {
  text-align: inherit;
  text-align: -webkit-match-parent;
}

label {
  display: inline-block;
  margin-bottom: 0.5rem;
}

button {
  border-radius: 0;
}

button:focus:not(:focus-visible) {
  outline: 0;
}

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

button,
input {
  overflow: visible;
}

button,
select {
  text-transform: none;
}

[role="button"] {
  cursor: pointer;
}

select {
  word-wrap: normal;
}

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

button:not(:disabled),
[type="button"]:not(:disabled),
[type="reset"]:not(:disabled),
[type="submit"]:not(:disabled) {
  cursor: pointer;
}

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

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

textarea {
  overflow: auto;
  resize: vertical;
}

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

legend {
  display: block;
  width: 100%;
  max-width: 100%;
  padding: 0;
  margin-bottom: .5rem;
  font-size: 1.5rem;
  line-height: inherit;
  color: inherit;
  white-space: normal;
}

progress {
  vertical-align: baseline;
}

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

[type="search"] {
  outline-offset: -2px;
  -webkit-appearance: none;
}

[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

::-webkit-file-upload-button {
  font: inherit;
  -webkit-appearance: button;
}

output {
  display: inline-block;
}

summary {
  display: list-item;
  cursor: pointer;
}

template {
  display: none;
}

[hidden] {
  display: none !important;
}

h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
  margin-bottom: 0.5rem;
  font-weight: 600;
  line-height: 1.2;
  color: #000000;
}

h1, .h1 {
  font-size: 2.5rem;
}

h2, .h2 {
  font-size: 2rem;
}

h3, .h3 {
  font-size: 1.75rem;
}

h4, .h4 {
  font-size: 1.5rem;
}

h5, .h5 {
  font-size: 1.25rem;
}

h6, .h6 {
  font-size: 1rem;
}

.lead {
  font-size: 1.25rem;
  font-weight: 300;
}

.display-1 {
  font-size: 6rem;
  font-weight: 300;
  line-height: 1.2;
}

.display-2 {
  font-size: 5.5rem;
  font-weight: 300;
  line-height: 1.2;
}

.display-3 {
  font-size: 4.5rem;
  font-weight: 300;
  line-height: 1.2;
}

.display-4 {
  font-size: 3.5rem;
  font-weight: 300;
  line-height: 1.2;
}

hr {
  margin-top: 1rem;
  margin-bottom: 1rem;
  border: 0;
  border-top: 1px solid rgba(255, 255, 255, 0.125);
}

small,
.small {
  font-size: 80%;
  font-weight: 400;
}

mark,
.mark {
  padding: 0.2em;
  background-color: #fcf8e3;
}

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

.list-inline {
  padding-left: 0;
  list-style: none;
}

.list-inline-item {
  display: inline-block;
}

.list-inline-item:not(:last-child) {
  margin-right: 0.5rem;
}

.initialism {
  font-size: 90%;
  text-transform: uppercase;
}

.blockquote {
  margin-bottom: 1rem;
  font-size: 1.25rem;
}

.blockquote-footer {
  display: block;
  font-size: 80%;
  color: rgba(255, 255, 255, 0.5);
}

.blockquote-footer::before {
  content: "\2014\00A0";
}

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

.img-thumbnail {
  padding: 0.25rem;
  background-color: #ffffff;
  border: 1px solid #dee2e6;
  border-radius: 2px;
  max-width: 100%;
  height: auto;
}

.figure {
  display: inline-block;
}

.figure-img {
  margin-bottom: 0.5rem;
  line-height: 1;
}

.figure-caption {
  font-size: 90%;
  color: #6c757d;
}

code {
  font-size: 87.5%;
  color: #ffc107;
  word-wrap: break-word;
}

a > code {
  color: inherit;
}

kbd {
  padding: 0.2rem 0.4rem;
  font-size: 87.5%;
  color: #ffffff;
  background-color: #212529;
  border-radius: 2px;
}

kbd kbd {
  padding: 0;
  font-size: 100%;
  font-weight: 600;
}

pre {
  display: block;
  font-size: 87.5%;
  color: #131313;
}

pre code {
  font-size: inherit;
  color: inherit;
  word-break: normal;
}

.pre-scrollable {
  max-height: 340px;
  overflow-y: scroll;
}

.container,
.container-fluid,
.container-sm,
.container-md,
.container-lg,
.container-xl {
  width: 100%;
  padding-right: 15px;
  padding-left: 15px;
  margin-right: auto;
  margin-left: auto;
}

@media (min-width: 576px) {
  .container, .container-sm {
    max-width: 540px;
  }
}

@media (min-width: 768px) {
  .container, .container-sm, .container-md {
    max-width: 720px;
  }
}

@media (min-width: 992px) {
  .container, .container-sm, .container-md, .container-lg {
    max-width: 960px;
  }
}

@media (min-width: 1200px) {
  .container, .container-sm, .container-md, .container-lg, .container-xl {
    max-width: 1140px;
  }
}

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

.no-gutters {
  margin-right: 0;
  margin-left: 0;
}

.no-gutters > .col,
.no-gutters > [class*="col-"] {
  padding-right: 0;
  padding-left: 0;
}

.col-1, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-10, .col-11, .col-12, .col,
.col-auto, .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm,
.col-sm-auto, .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12, .col-md,
.col-md-auto, .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg,
.col-lg-auto, .col-xl-1, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-10, .col-xl-11, .col-xl-12, .col-xl,
.col-xl-auto {
  position: relative;
  width: 100%;
  padding-right: 15px;
  padding-left: 15px;
}

.col {
  flex-basis: 0;
  flex-grow: 1;
  max-width: 100%;
}

.row-cols-1 > * {
  flex: 0 0 100%;
  max-width: 100%;
}

.row-cols-2 > * {
  flex: 0 0 50%;
  max-width: 50%;
}

.row-cols-3 > * {
  flex: 0 0 33.33333%;
  max-width: 33.33333%;
}

.row-cols-4 > * {
  flex: 0 0 25%;
  max-width: 25%;
}

.row-cols-5 > * {
  flex: 0 0 20%;
  max-width: 20%;
}

.row-cols-6 > * {
  flex: 0 0 16.66667%;
  max-width: 16.66667%;
}

.col-auto {
  flex: 0 0 auto;
  width: auto;
  max-width: 100%;
}

.col-1 {
  flex: 0 0 8.33333%;
  max-width: 8.33333%;
}

.col-2 {
  flex: 0 0 16.66667%;
  max-width: 16.66667%;
}

.col-3 {
  flex: 0 0 25%;
  max-width: 25%;
}

.col-4 {
  flex: 0 0 33.33333%;
  max-width: 33.33333%;
}

.col-5 {
  flex: 0 0 41.66667%;
  max-width: 41.66667%;
}

.col-6 {
  flex: 0 0 50%;
  max-width: 50%;
}

.col-7 {
  flex: 0 0 58.33333%;
  max-width: 58.33333%;
}

.col-8 {
  flex: 0 0 66.66667%;
  max-width: 66.66667%;
}

.col-9 {
  flex: 0 0 75%;
  max-width: 75%;
}

.col-10 {
  flex: 0 0 83.33333%;
  max-width: 83.33333%;
}

.col-11 {
  flex: 0 0 91.66667%;
  max-width: 91.66667%;
}

.col-12 {
  flex: 0 0 100%;
  max-width: 100%;
}

.order-first {
  order: -1;
}

.order-last {
  order: 13;
}

.order-0 {
  order: 0;
}

.order-1 {
  order: 1;
}

.order-2 {
  order: 2;
}

.order-3 {
  order: 3;
}

.order-4 {
  order: 4;
}

.order-5 {
  order: 5;
}

.order-6 {
  order: 6;
}

.order-7 {
  order: 7;
}

.order-8 {
  order: 8;
}

.order-9 {
  order: 9;
}

.order-10 {
  order: 10;
}

.order-11 {
  order: 11;
}

.order-12 {
  order: 12;
}

.offset-1 {
  margin-left: 8.33333%;
}

.offset-2 {
  margin-left: 16.66667%;
}

.offset-3 {
  margin-left: 25%;
}

.offset-4 {
  margin-left: 33.33333%;
}

.offset-5 {
  margin-left: 41.66667%;
}

.offset-6 {
  margin-left: 50%;
}

.offset-7 {
  margin-left: 58.33333%;
}

.offset-8 {
  margin-left: 66.66667%;
}

.offset-9 {
  margin-left: 75%;
}

.offset-10 {
  margin-left: 83.33333%;
}

.offset-11 {
  margin-left: 91.66667%;
}

@media (min-width: 576px) {
  .col-sm {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
  }
  .row-cols-sm-1 > * {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .row-cols-sm-2 > * {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .row-cols-sm-3 > * {
    flex: 0 0 33.33333%;
    max-width: 33.33333%;
  }
  .row-cols-sm-4 > * {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .row-cols-sm-5 > * {
    flex: 0 0 20%;
    max-width: 20%;
  }
  .row-cols-sm-6 > * {
    flex: 0 0 16.66667%;
    max-width: 16.66667%;
  }
  .col-sm-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }
  .col-sm-1 {
    flex: 0 0 8.33333%;
    max-width: 8.33333%;
  }
  .col-sm-2 {
    flex: 0 0 16.66667%;
    max-width: 16.66667%;
  }
  .col-sm-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .col-sm-4 {
    flex: 0 0 33.33333%;
    max-width: 33.33333%;
  }
  .col-sm-5 {
    flex: 0 0 41.66667%;
    max-width: 41.66667%;
  }
  .col-sm-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .col-sm-7 {
    flex: 0 0 58.33333%;
    max-width: 58.33333%;
  }
  .col-sm-8 {
    flex: 0 0 66.66667%;
    max-width: 66.66667%;
  }
  .col-sm-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }
  .col-sm-10 {
    flex: 0 0 83.33333%;
    max-width: 83.33333%;
  }
  .col-sm-11 {
    flex: 0 0 91.66667%;
    max-width: 91.66667%;
  }
  .col-sm-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .order-sm-first {
    order: -1;
  }
  .order-sm-last {
    order: 13;
  }
  .order-sm-0 {
    order: 0;
  }
  .order-sm-1 {
    order: 1;
  }
  .order-sm-2 {
    order: 2;
  }
  .order-sm-3 {
    order: 3;
  }
  .order-sm-4 {
    order: 4;
  }
  .order-sm-5 {
    order: 5;
  }
  .order-sm-6 {
    order: 6;
  }
  .order-sm-7 {
    order: 7;
  }
  .order-sm-8 {
    order: 8;
  }
  .order-sm-9 {
    order: 9;
  }
  .order-sm-10 {
    order: 10;
  }
  .order-sm-11 {
    order: 11;
  }
  .order-sm-12 {
    order: 12;
  }
  .offset-sm-0 {
    margin-left: 0;
  }
  .offset-sm-1 {
    margin-left: 8.33333%;
  }
  .offset-sm-2 {
    margin-left: 16.66667%;
  }
  .offset-sm-3 {
    margin-left: 25%;
  }
  .offset-sm-4 {
    margin-left: 33.33333%;
  }
  .offset-sm-5 {
    margin-left: 41.66667%;
  }
  .offset-sm-6 {
    margin-left: 50%;
  }
  .offset-sm-7 {
    margin-left: 58.33333%;
  }
  .offset-sm-8 {
    margin-left: 66.66667%;
  }
  .offset-sm-9 {
    margin-left: 75%;
  }
  .offset-sm-10 {
    margin-left: 83.33333%;
  }
  .offset-sm-11 {
    margin-left: 91.66667%;
  }
}

@media (min-width: 768px) {
  .col-md {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
  }
  .row-cols-md-1 > * {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .row-cols-md-2 > * {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .row-cols-md-3 > * {
    flex: 0 0 33.33333%;
    max-width: 33.33333%;
  }
  .row-cols-md-4 > * {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .row-cols-md-5 > * {
    flex: 0 0 20%;
    max-width: 20%;
  }
  .row-cols-md-6 > * {
    flex: 0 0 16.66667%;
    max-width: 16.66667%;
  }
  .col-md-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }
  .col-md-1 {
    flex: 0 0 8.33333%;
    max-width: 8.33333%;
  }
  .col-md-2 {
    flex: 0 0 16.66667%;
    max-width: 16.66667%;
  }
  .col-md-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .col-md-4 {
    flex: 0 0 33.33333%;
    max-width: 33.33333%;
  }
  .col-md-5 {
    flex: 0 0 41.66667%;
    max-width: 41.66667%;
  }
  .col-md-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .col-md-7 {
    flex: 0 0 58.33333%;
    max-width: 58.33333%;
  }
  .col-md-8 {
    flex: 0 0 66.66667%;
    max-width: 66.66667%;
  }
  .col-md-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }
  .col-md-10 {
    flex: 0 0 83.33333%;
    max-width: 83.33333%;
  }
  .col-md-11 {
    flex: 0 0 91.66667%;
    max-width: 91.66667%;
  }
  .col-md-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .order-md-first {
    order: -1;
  }
  .order-md-last {
    order: 13;
  }
  .order-md-0 {
    order: 0;
  }
  .order-md-1 {
    order: 1;
  }
  .order-md-2 {
    order: 2;
  }
  .order-md-3 {
    order: 3;
  }
  .order-md-4 {
    order: 4;
  }
  .order-md-5 {
    order: 5;
  }
  .order-md-6 {
    order: 6;
  }
  .order-md-7 {
    order: 7;
  }
  .order-md-8 {
    order: 8;
  }
  .order-md-9 {
    order: 9;
  }
  .order-md-10 {
    order: 10;
  }
  .order-md-11 {
    order: 11;
  }
  .order-md-12 {
    order: 12;
  }
  .offset-md-0 {
    margin-left: 0;
  }
  .offset-md-1 {
    margin-left: 8.33333%;
  }
  .offset-md-2 {
    margin-left: 16.66667%;
  }
  .offset-md-3 {
    margin-left: 25%;
  }
  .offset-md-4 {
    margin-left: 33.33333%;
  }
  .offset-md-5 {
    margin-left: 41.66667%;
  }
  .offset-md-6 {
    margin-left: 50%;
  }
  .offset-md-7 {
    margin-left: 58.33333%;
  }
  .offset-md-8 {
    margin-left: 66.66667%;
  }
  .offset-md-9 {
    margin-left: 75%;
  }
  .offset-md-10 {
    margin-left: 83.33333%;
  }
  .offset-md-11 {
    margin-left: 91.66667%;
  }
}

@media (min-width: 992px) {
  .col-lg {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
  }
  .row-cols-lg-1 > * {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .row-cols-lg-2 > * {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .row-cols-lg-3 > * {
    flex: 0 0 33.33333%;
    max-width: 33.33333%;
  }
  .row-cols-lg-4 > * {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .row-cols-lg-5 > * {
    flex: 0 0 20%;
    max-width: 20%;
  }
  .row-cols-lg-6 > * {
    flex: 0 0 16.66667%;
    max-width: 16.66667%;
  }
  .col-lg-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }
  .col-lg-1 {
    flex: 0 0 8.33333%;
    max-width: 8.33333%;
  }
  .col-lg-2 {
    flex: 0 0 16.66667%;
    max-width: 16.66667%;
  }
  .col-lg-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .col-lg-4 {
    flex: 0 0 33.33333%;
    max-width: 33.33333%;
  }
  .col-lg-5 {
    flex: 0 0 41.66667%;
    max-width: 41.66667%;
  }
  .col-lg-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .col-lg-7 {
    flex: 0 0 58.33333%;
    max-width: 58.33333%;
  }
  .col-lg-8 {
    flex: 0 0 66.66667%;
    max-width: 66.66667%;
  }
  .col-lg-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }
  .col-lg-10 {
    flex: 0 0 83.33333%;
    max-width: 83.33333%;
  }
  .col-lg-11 {
    flex: 0 0 91.66667%;
    max-width: 91.66667%;
  }
  .col-lg-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .order-lg-first {
    order: -1;
  }
  .order-lg-last {
    order: 13;
  }
  .order-lg-0 {
    order: 0;
  }
  .order-lg-1 {
    order: 1;
  }
  .order-lg-2 {
    order: 2;
  }
  .order-lg-3 {
    order: 3;
  }
  .order-lg-4 {
    order: 4;
  }
  .order-lg-5 {
    order: 5;
  }
  .order-lg-6 {
    order: 6;
  }
  .order-lg-7 {
    order: 7;
  }
  .order-lg-8 {
    order: 8;
  }
  .order-lg-9 {
    order: 9;
  }
  .order-lg-10 {
    order: 10;
  }
  .order-lg-11 {
    order: 11;
  }
  .order-lg-12 {
    order: 12;
  }
  .offset-lg-0 {
    margin-left: 0;
  }
  .offset-lg-1 {
    margin-left: 8.33333%;
  }
  .offset-lg-2 {
    margin-left: 16.66667%;
  }
  .offset-lg-3 {
    margin-left: 25%;
  }
  .offset-lg-4 {
    margin-left: 33.33333%;
  }
  .offset-lg-5 {
    margin-left: 41.66667%;
  }
  .offset-lg-6 {
    margin-left: 50%;
  }
  .offset-lg-7 {
    margin-left: 58.33333%;
  }
  .offset-lg-8 {
    margin-left: 66.66667%;
  }
  .offset-lg-9 {
    margin-left: 75%;
  }
  .offset-lg-10 {
    margin-left: 83.33333%;
  }
  .offset-lg-11 {
    margin-left: 91.66667%;
  }
}

@media (min-width: 1200px) {
  .col-xl {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
  }
  .row-cols-xl-1 > * {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .row-cols-xl-2 > * {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .row-cols-xl-3 > * {
    flex: 0 0 33.33333%;
    max-width: 33.33333%;
  }
  .row-cols-xl-4 > * {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .row-cols-xl-5 > * {
    flex: 0 0 20%;
    max-width: 20%;
  }
  .row-cols-xl-6 > * {
    flex: 0 0 16.66667%;
    max-width: 16.66667%;
  }
  .col-xl-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }
  .col-xl-1 {
    flex: 0 0 8.33333%;
    max-width: 8.33333%;
  }
  .col-xl-2 {
    flex: 0 0 16.66667%;
    max-width: 16.66667%;
  }
  .col-xl-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .col-xl-4 {
    flex: 0 0 33.33333%;
    max-width: 33.33333%;
  }
  .col-xl-5 {
    flex: 0 0 41.66667%;
    max-width: 41.66667%;
  }
  .col-xl-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .col-xl-7 {
    flex: 0 0 58.33333%;
    max-width: 58.33333%;
  }
  .col-xl-8 {
    flex: 0 0 66.66667%;
    max-width: 66.66667%;
  }
  .col-xl-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }
  .col-xl-10 {
    flex: 0 0 83.33333%;
    max-width: 83.33333%;
  }
  .col-xl-11 {
    flex: 0 0 91.66667%;
    max-width: 91.66667%;
  }
  .col-xl-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .order-xl-first {
    order: -1;
  }
  .order-xl-last {
    order: 13;
  }
  .order-xl-0 {
    order: 0;
  }
  .order-xl-1 {
    order: 1;
  }
  .order-xl-2 {
    order: 2;
  }
  .order-xl-3 {
    order: 3;
  }
  .order-xl-4 {
    order: 4;
  }
  .order-xl-5 {
    order: 5;
  }
  .order-xl-6 {
    order: 6;
  }
  .order-xl-7 {
    order: 7;
  }
  .order-xl-8 {
    order: 8;
  }
  .order-xl-9 {
    order: 9;
  }
  .order-xl-10 {
    order: 10;
  }
  .order-xl-11 {
    order: 11;
  }
  .order-xl-12 {
    order: 12;
  }
  .offset-xl-0 {
    margin-left: 0;
  }
  .offset-xl-1 {
    margin-left: 8.33333%;
  }
  .offset-xl-2 {
    margin-left: 16.66667%;
  }
  .offset-xl-3 {
    margin-left: 25%;
  }
  .offset-xl-4 {
    margin-left: 33.33333%;
  }
  .offset-xl-5 {
    margin-left: 41.66667%;
  }
  .offset-xl-6 {
    margin-left: 50%;
  }
  .offset-xl-7 {
    margin-left: 58.33333%;
  }
  .offset-xl-8 {
    margin-left: 66.66667%;
  }
  .offset-xl-9 {
    margin-left: 75%;
  }
  .offset-xl-10 {
    margin-left: 83.33333%;
  }
  .offset-xl-11 {
    margin-left: 91.66667%;
  }
}

.table {
  width: 100%;
  margin-bottom: 1rem;
  color: #000000;
}

.table th,
.table td {
  padding: 1rem 1.5rem;
  vertical-align: top;
  border-top: 1px solid rgba(255, 255, 255, 0.125);
}

.table thead th {
  vertical-align: bottom;
  border-bottom: 2px solid rgba(255, 255, 255, 0.125);
}

.table tbody + tbody {
  border-top: 2px solid rgba(255, 255, 255, 0.125);
}

.table-sm th,
.table-sm td {
  padding: 0.75rem 1rem;
}

.table-bordered {
  border: 1px solid rgba(255, 255, 255, 0.125);
}

.table-bordered th,
.table-bordered td {
  border: 1px solid rgba(255, 255, 255, 0.125);
}

.table-bordered thead th,
.table-bordered thead td {
  border-bottom-width: 2px;
}

.table-borderless th,
.table-borderless td,
.table-borderless thead th,
.table-borderless tbody + tbody {
  border: 0;
}

.table-striped tbody tr:nth-of-type(odd) {
  background-color: rgba(255, 255, 255, 0.04);
}

.table-hover tbody tr:hover {
  color: #000000;
  background-color: rgba(255, 255, 255, 0.04);
}

.table-primary,
.table-primary > th,
.table-primary > td {
  background-color: #b8daff;
}

.table-primary th,
.table-primary td,
.table-primary thead th,
.table-primary tbody + tbody {
  border-color: #7abaff;
}

.table-hover .table-primary:hover {
  background-color: #9fcdff;
}

.table-hover .table-primary:hover > td,
.table-hover .table-primary:hover > th {
  background-color: #9fcdff;
}

.table-secondary,
.table-secondary > th,
.table-secondary > td {
  background-color: #d6d8db;
}

.table-secondary th,
.table-secondary td,
.table-secondary thead th,
.table-secondary tbody + tbody {
  border-color: #b3b7bb;
}

.table-hover .table-secondary:hover {
  background-color: #c8cbcf;
}

.table-hover .table-secondary:hover > td,
.table-hover .table-secondary:hover > th {
  background-color: #c8cbcf;
}

.table-success,
.table-success > th,
.table-success > td {
  background-color: #c3e6cb;
}

.table-success th,
.table-success td,
.table-success thead th,
.table-success tbody + tbody {
  border-color: #8fd19e;
}

.table-hover .table-success:hover {
  background-color: #b1dfbb;
}

.table-hover .table-success:hover > td,
.table-hover .table-success:hover > th {
  background-color: #b1dfbb;
}

.table-info,
.table-info > th,
.table-info > td {
  background-color: #bee5eb;
}

.table-info th,
.table-info td,
.table-info thead th,
.table-info tbody + tbody {
  border-color: #86cfda;
}

.table-hover .table-info:hover {
  background-color: #abdde5;
}

.table-hover .table-info:hover > td,
.table-hover .table-info:hover > th {
  background-color: #abdde5;
}

.table-warning,
.table-warning > th,
.table-warning > td {
  background-color: #ffeeba;
}

.table-warning th,
.table-warning td,
.table-warning thead th,
.table-warning tbody + tbody {
  border-color: #ffdf7e;
}

.table-hover .table-warning:hover {
  background-color: #ffe8a1;
}

.table-hover .table-warning:hover > td,
.table-hover .table-warning:hover > th {
  background-color: #ffe8a1;
}

.table-danger,
.table-danger > th,
.table-danger > td {
  background-color: #f5c6cb;
}

.table-danger th,
.table-danger td,
.table-danger thead th,
.table-danger tbody + tbody {
  border-color: #ed969e;
}

.table-hover .table-danger:hover {
  background-color: #f1b0b7;
}

.table-hover .table-danger:hover > td,
.table-hover .table-danger:hover > th {
  background-color: #f1b0b7;
}

.table-light,
.table-light > th,
.table-light > td {
  background-color: #fdfdfe;
}

.table-light th,
.table-light td,
.table-light thead th,
.table-light tbody + tbody {
  border-color: #fbfcfc;
}

.table-hover .table-light:hover {
  background-color: #ececf6;
}

.table-hover .table-light:hover > td,
.table-hover .table-light:hover > th {
  background-color: #ececf6;
}

.table-dark,
.table-dark > th,
.table-dark > td {
  background-color: #c6c8ca;
}

.table-dark th,
.table-dark td,
.table-dark thead th,
.table-dark tbody + tbody {
  border-color: #95999c;
}

.table-hover .table-dark:hover {
  background-color: #b9bbbe;
}

.table-hover .table-dark:hover > td,
.table-hover .table-dark:hover > th {
  background-color: #b9bbbe;
}

.table-active,
.table-active > th,
.table-active > td {
  background-color: rgba(255, 255, 255, 0.04);
}

.table-hover .table-active:hover {
  background-color: rgba(242, 242, 242, 0.04);
}

.table-hover .table-active:hover > td,
.table-hover .table-active:hover > th {
  background-color: rgba(242, 242, 242, 0.04);
}

.table .thead-dark th {
  color: #ffffff;
  background-color: rgba(0, 0, 0, 0.2);
  border-color: rgba(255, 255, 255, 0.06);
}

.table .thead-light th {
  color: #000000;
  background-color: rgba(255, 255, 255, 0.125);
  border-color: rgba(255, 255, 255, 0.125);
}

.table-dark {
  color: #ffffff;
  background-color: rgba(0, 0, 0, 0.2);
}

.table-dark th,
.table-dark td,
.table-dark thead th {
  border-color: rgba(255, 255, 255, 0.06);
}

.table-dark.table-bordered {
  border: 0;
}

.table-dark.table-striped tbody tr:nth-of-type(odd) {
  background-color: rgba(255, 255, 255, 0.05);
}

.table-dark.table-hover tbody tr:hover {
  color: #ffffff;
  background-color: rgba(255, 255, 255, 0.075);
}

@media (max-width: 575.98px) {
  .table-responsive-sm {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  .table-responsive-sm > .table-bordered {
    border: 0;
  }
}

@media (max-width: 767.98px) {
  .table-responsive-md {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  .table-responsive-md > .table-bordered {
    border: 0;
  }
}

@media (max-width: 991.98px) {
  .table-responsive-lg {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  .table-responsive-lg > .table-bordered {
    border: 0;
  }
}

@media (max-width: 1199.98px) {
  .table-responsive-xl {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  .table-responsive-xl > .table-bordered {
    border: 0;
  }
}

.table-responsive {
  display: block;
  width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

.table-responsive > .table-bordered {
  border: 0;
}

.form-control {
  display: block;
  width: 100%;
  height: calc(1.5em + 1.2rem + 2px);
  padding: 0.6rem 1rem;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #000000;
  background-color: transparent;
  background-clip: padding-box;
  border: 1px solid black;
  border-radius: 0;
  transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
  .form-control {
    transition: none;
  }
}

.form-control::-ms-expand {
  background-color: transparent;
  border: 0;
}

.form-control:-moz-focusring {
  color: transparent;
  text-shadow: 0 0 0 #000000;
}

.form-control:focus {
  color: #000000;
  background-color: transparent;
  border-color: black;
  outline: 0;
  box-shadow: 0 0 5px rgba(255, 255, 255, 0.15);
}

.form-control::placeholder {
  color: rgba(0, 0, 0, 0.4);
  opacity: 1;
}

.form-control:disabled, .form-control[readonly] {
  background-color: transparent;
  opacity: 1;
}

input[type="date"].form-control,
input[type="time"].form-control,
input[type="datetime-local"].form-control,
input[type="month"].form-control {
  appearance: none;
}

select.form-control:focus::-ms-value {
  color: #000000;
  background-color: transparent;
}

.form-control-file,
.form-control-range {
  display: block;
  width: 100%;
}

.col-form-label {
  padding-top: calc(0.6rem + 1px);
  padding-bottom: calc(0.6rem + 1px);
  margin-bottom: 0;
  font-size: inherit;
  line-height: 1.5;
}

.col-form-label-lg {
  padding-top: calc(0.5rem + 1px);
  padding-bottom: calc(0.5rem + 1px);
  font-size: 1.25rem;
  line-height: 1.5;
}

.col-form-label-sm {
  padding-top: calc(0.25rem + 1px);
  padding-bottom: calc(0.25rem + 1px);
  font-size: 0.875rem;
  line-height: 1.5;
}

.form-control-plaintext {
  display: block;
  width: 100%;
  padding: 0.6rem 0;
  margin-bottom: 0;
  font-size: 1rem;
  line-height: 1.5;
  color: #000000;
  background-color: transparent;
  border: solid transparent;
  border-width: 1px 0;
}

.form-control-plaintext.form-control-sm, .form-control-plaintext.form-control-lg {
  padding-right: 0;
  padding-left: 0;
}

.form-control-sm {
  height: calc(1.5em + 0.5rem + 2px);
  padding: 0.25rem 0.55rem;
  font-size: 0.875rem;
  line-height: 1.5;
  border-radius: 0;
}

.form-control-lg {
  height: calc(1.5em + 1rem + 2px);
  padding: 0.5rem 1rem;
  font-size: 1.25rem;
  line-height: 1.5;
  border-radius: 0;
}

select.form-control[size], select.form-control[multiple] {
  height: auto;
}

textarea.form-control {
  height: auto;
}

.form-group {
  margin-bottom: 2rem;
}

.form-text {
  display: block;
  margin-top: 0.25rem;
}

.form-row {
  display: flex;
  flex-wrap: wrap;
  margin-right: -5px;
  margin-left: -5px;
}

.form-row > .col,
.form-row > [class*="col-"] {
  padding-right: 5px;
  padding-left: 5px;
}

.form-check {
  position: relative;
  display: block;
  padding-left: 1.25rem;
}

.form-check-input {
  position: absolute;
  margin-top: 0.3rem;
  margin-left: -1.25rem;
}

.form-check-input[disabled] ~ .form-check-label,
.form-check-input:disabled ~ .form-check-label {
  color: rgba(255, 255, 255, 0.5);
}

.form-check-label {
  margin-bottom: 0;
}

.form-check-inline {
  display: inline-flex;
  align-items: center;
  padding-left: 0;
  margin-right: 0.75rem;
}

.form-check-inline .form-check-input {
  position: static;
  margin-top: 0;
  margin-right: 0.3125rem;
  margin-left: 0;
}

.valid-feedback {
  display: none;
  width: 100%;
  margin-top: 0.25rem;
  font-size: 0.9rem;
  color: #28a745;
}

.valid-tooltip {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 5;
  display: none;
  max-width: 100%;
  padding: 0.7rem 1.1rem;
  margin-top: .1rem;
  font-size: 0.875rem;
  line-height: 1.5;
  color: #ffffff;
  background-color: #28a745;
  border-radius: 2px;
}

.form-row > .col > .valid-tooltip,
.form-row > [class*="col-"] > .valid-tooltip {
  left: 5px;
}

.was-validated :valid ~ .valid-feedback,
.was-validated :valid ~ .valid-tooltip,
.is-valid ~ .valid-feedback,
.is-valid ~ .valid-tooltip {
  display: block;
}

.was-validated .form-control:valid, .form-control.is-valid {
  border-color: #28a745;
  padding-right: calc(1.5em + 1.2rem);
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%2328a745' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-position: right calc(0.375em + 0.3rem) center;
  background-size: calc(0.75em + 0.6rem) calc(0.75em + 0.6rem);
}

.was-validated .form-control:valid:focus, .form-control.is-valid:focus {
  border-color: #28a745;
  box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25);
}

.was-validated textarea.form-control:valid, textarea.form-control.is-valid {
  padding-right: calc(1.5em + 1.2rem);
  background-position: top calc(0.375em + 0.3rem) right calc(0.375em + 0.3rem);
}

.was-validated .custom-select:valid, .custom-select.is-valid {
  border-color: #28a745;
  padding-right: calc(0.75em + 2.9rem);
  background: #ffffff, transparent url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%2328a745' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e") center right 2rem/calc(0.75em + 0.6rem) calc(0.75em + 0.6rem) no-repeat;
}

.was-validated .custom-select:valid:focus, .custom-select.is-valid:focus {
  border-color: #28a745;
  box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25);
}

.was-validated .form-check-input:valid ~ .form-check-label, .form-check-input.is-valid ~ .form-check-label {
  color: #28a745;
}

.was-validated .form-check-input:valid ~ .valid-feedback,
.was-validated .form-check-input:valid ~ .valid-tooltip, .form-check-input.is-valid ~ .valid-feedback,
.form-check-input.is-valid ~ .valid-tooltip {
  display: block;
}

.was-validated .custom-control-input:valid ~ .custom-control-label, .custom-control-input.is-valid ~ .custom-control-label {
  color: #28a745;
}

.was-validated .custom-control-input:valid ~ .custom-control-label::before, .custom-control-input.is-valid ~ .custom-control-label::before {
  border-color: #28a745;
}

.was-validated .custom-control-input:valid:checked ~ .custom-control-label::before, .custom-control-input.is-valid:checked ~ .custom-control-label::before {
  border-color: #34ce57;
  background-color: #34ce57;
}

.was-validated .custom-control-input:valid:focus ~ .custom-control-label::before, .custom-control-input.is-valid:focus ~ .custom-control-label::before {
  box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25);
}

.was-validated .custom-control-input:valid:focus:not(:checked) ~ .custom-control-label::before, .custom-control-input.is-valid:focus:not(:checked) ~ .custom-control-label::before {
  border-color: #28a745;
}

.was-validated .custom-file-input:valid ~ .custom-file-label, .custom-file-input.is-valid ~ .custom-file-label {
  border-color: #28a745;
}

.was-validated .custom-file-input:valid:focus ~ .custom-file-label, .custom-file-input.is-valid:focus ~ .custom-file-label {
  border-color: #28a745;
  box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25);
}

.invalid-feedback {
  display: none;
  width: 100%;
  margin-top: 0.25rem;
  font-size: 0.9rem;
  color: #dc3545;
}

.invalid-tooltip {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 5;
  display: none;
  max-width: 100%;
  padding: 0.7rem 1.1rem;
  margin-top: .1rem;
  font-size: 0.875rem;
  line-height: 1.5;
  color: #ffffff;
  background-color: #dc3545;
  border-radius: 2px;
}

.form-row > .col > .invalid-tooltip,
.form-row > [class*="col-"] > .invalid-tooltip {
  left: 5px;
}

.was-validated :invalid ~ .invalid-feedback,
.was-validated :invalid ~ .invalid-tooltip,
.is-invalid ~ .invalid-feedback,
.is-invalid ~ .invalid-tooltip {
  display: block;
}

.was-validated .form-control:invalid, .form-control.is-invalid {
  border-color: #dc3545;
  padding-right: calc(1.5em + 1.2rem);
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23dc3545' viewBox='0 0 12 12'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-position: right calc(0.375em + 0.3rem) center;
  background-size: calc(0.75em + 0.6rem) calc(0.75em + 0.6rem);
}

.was-validated .form-control:invalid:focus, .form-control.is-invalid:focus {
  border-color: #dc3545;
  box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25);
}

.was-validated textarea.form-control:invalid, textarea.form-control.is-invalid {
  padding-right: calc(1.5em + 1.2rem);
  background-position: top calc(0.375em + 0.3rem) right calc(0.375em + 0.3rem);
}

.was-validated .custom-select:invalid, .custom-select.is-invalid {
  border-color: #dc3545;
  padding-right: calc(0.75em + 2.9rem);
  background: #ffffff, transparent url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23dc3545' viewBox='0 0 12 12'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e") center right 2rem/calc(0.75em + 0.6rem) calc(0.75em + 0.6rem) no-repeat;
}

.was-validated .custom-select:invalid:focus, .custom-select.is-invalid:focus {
  border-color: #dc3545;
  box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25);
}

.was-validated .form-check-input:invalid ~ .form-check-label, .form-check-input.is-invalid ~ .form-check-label {
  color: #dc3545;
}

.was-validated .form-check-input:invalid ~ .invalid-feedback,
.was-validated .form-check-input:invalid ~ .invalid-tooltip, .form-check-input.is-invalid ~ .invalid-feedback,
.form-check-input.is-invalid ~ .invalid-tooltip {
  display: block;
}

.was-validated .custom-control-input:invalid ~ .custom-control-label, .custom-control-input.is-invalid ~ .custom-control-label {
  color: #dc3545;
}

.was-validated .custom-control-input:invalid ~ .custom-control-label::before, .custom-control-input.is-invalid ~ .custom-control-label::before {
  border-color: #dc3545;
}

.was-validated .custom-control-input:invalid:checked ~ .custom-control-label::before, .custom-control-input.is-invalid:checked ~ .custom-control-label::before {
  border-color: #e4606d;
  background-color: #e4606d;
}

.was-validated .custom-control-input:invalid:focus ~ .custom-control-label::before, .custom-control-input.is-invalid:focus ~ .custom-control-label::before {
  box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25);
}

.was-validated .custom-control-input:invalid:focus:not(:checked) ~ .custom-control-label::before, .custom-control-input.is-invalid:focus:not(:checked) ~ .custom-control-label::before {
  border-color: #dc3545;
}

.was-validated .custom-file-input:invalid ~ .custom-file-label, .custom-file-input.is-invalid ~ .custom-file-label {
  border-color: #dc3545;
}

.was-validated .custom-file-input:invalid:focus ~ .custom-file-label, .custom-file-input.is-invalid:focus ~ .custom-file-label {
  border-color: #dc3545;
  box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25);
}

.form-inline {
  display: flex;
  flex-flow: row wrap;
  align-items: center;
}

.form-inline .form-check {
  width: 100%;
}

@media (min-width: 576px) {
  .form-inline label {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 0;
  }
  .form-inline .form-group {
    display: flex;
    flex: 0 0 auto;
    flex-flow: row wrap;
    align-items: center;
    margin-bottom: 0;
  }
  .form-inline .form-control {
    display: inline-block;
    width: auto;
    vertical-align: middle;
  }
  .form-inline .form-control-plaintext {
    display: inline-block;
  }
  .form-inline .input-group,
  .form-inline .custom-select {
    width: auto;
  }
  .form-inline .form-check {
    display: flex;
    align-items: center;
    justify-content: center;
    width: auto;
    padding-left: 0;
  }
  .form-inline .form-check-input {
    position: relative;
    flex-shrink: 0;
    margin-top: 0;
    margin-right: 0.25rem;
    margin-left: 0;
  }
  .form-inline .custom-control {
    align-items: center;
    justify-content: center;
  }
  .form-inline .custom-control-label {
    margin-bottom: 0;
  }
}

.btn {
  display: inline-block;
  font-weight: 400;
  color: #000000;
  text-align: center;
  vertical-align: middle;
  user-select: none;
  background-color: transparent;
  border: 1px solid transparent;
  padding: 0.6rem 1rem;
  font-size: 1rem;
  line-height: 1.5;
  border-radius: 2px;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
  .btn {
    transition: none;
  }
}

.btn:hover {
  color: #000000;
  text-decoration: none;
}

.btn:focus, .btn.focus {
  outline: 0;
  box-shadow: none;
}

.btn.disabled, .btn:disabled {
  opacity: 0.65;
}

.btn:not(:disabled):not(.disabled) {
  cursor: pointer;
}

a.btn.disabled,
fieldset:disabled a.btn {
  pointer-events: none;
}

.btn-primary {
  color: #ffffff;
  background-color: #007bff;
  border-color: #007bff;
}

.btn-primary:hover {
  color: #ffffff;
  background-color: #0069d9;
  border-color: #0062cc;
}

.btn-primary:focus, .btn-primary.focus {
  color: #ffffff;
  background-color: #0069d9;
  border-color: #0062cc;
  box-shadow: 0 0 0 0 rgba(38, 143, 255, 0.5);
}

.btn-primary.disabled, .btn-primary:disabled {
  color: #ffffff;
  background-color: #007bff;
  border-color: #007bff;
}

.btn-primary:not(:disabled):not(.disabled):active, .btn-primary:not(:disabled):not(.disabled).active,
.show > .btn-primary.dropdown-toggle {
  color: #ffffff;
  background-color: #0062cc;
  border-color: #005cbf;
}

.btn-primary:not(:disabled):not(.disabled):active:focus, .btn-primary:not(:disabled):not(.disabled).active:focus,
.show > .btn-primary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0 rgba(38, 143, 255, 0.5);
}

.btn-secondary {
  color: #ffffff;
  background-color: #6c757d;
  border-color: #6c757d;
}

.btn-secondary:hover {
  color: #ffffff;
  background-color: #5a6268;
  border-color: #545b62;
}

.btn-secondary:focus, .btn-secondary.focus {
  color: #ffffff;
  background-color: #5a6268;
  border-color: #545b62;
  box-shadow: 0 0 0 0 rgba(130, 138, 145, 0.5);
}

.btn-secondary.disabled, .btn-secondary:disabled {
  color: #ffffff;
  background-color: #6c757d;
  border-color: #6c757d;
}

.btn-secondary:not(:disabled):not(.disabled):active, .btn-secondary:not(:disabled):not(.disabled).active,
.show > .btn-secondary.dropdown-toggle {
  color: #ffffff;
  background-color: #545b62;
  border-color: #4e555b;
}

.btn-secondary:not(:disabled):not(.disabled):active:focus, .btn-secondary:not(:disabled):not(.disabled).active:focus,
.show > .btn-secondary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0 rgba(130, 138, 145, 0.5);
}

.btn-success {
  color: #ffffff;
  background-color: #28a745;
  border-color: #28a745;
}

.btn-success:hover {
  color: #ffffff;
  background-color: #218838;
  border-color: #1e7e34;
}

.btn-success:focus, .btn-success.focus {
  color: #ffffff;
  background-color: #218838;
  border-color: #1e7e34;
  box-shadow: 0 0 0 0 rgba(72, 180, 97, 0.5);
}

.btn-success.disabled, .btn-success:disabled {
  color: #ffffff;
  background-color: #28a745;
  border-color: #28a745;
}

.btn-success:not(:disabled):not(.disabled):active, .btn-success:not(:disabled):not(.disabled).active,
.show > .btn-success.dropdown-toggle {
  color: #ffffff;
  background-color: #1e7e34;
  border-color: #1c7430;
}

.btn-success:not(:disabled):not(.disabled):active:focus, .btn-success:not(:disabled):not(.disabled).active:focus,
.show > .btn-success.dropdown-toggle:focus {
  box-shadow: 0 0 0 0 rgba(72, 180, 97, 0.5);
}

.btn-info {
  color: #ffffff;
  background-color: #17a2b8;
  border-color: #17a2b8;
}

.btn-info:hover {
  color: #ffffff;
  background-color: #138496;
  border-color: #117a8b;
}

.btn-info:focus, .btn-info.focus {
  color: #ffffff;
  background-color: #138496;
  border-color: #117a8b;
  box-shadow: 0 0 0 0 rgba(58, 176, 195, 0.5);
}

.btn-info.disabled, .btn-info:disabled {
  color: #ffffff;
  background-color: #17a2b8;
  border-color: #17a2b8;
}

.btn-info:not(:disabled):not(.disabled):active, .btn-info:not(:disabled):not(.disabled).active,
.show > .btn-info.dropdown-toggle {
  color: #ffffff;
  background-color: #117a8b;
  border-color: #10707f;
}

.btn-info:not(:disabled):not(.disabled):active:focus, .btn-info:not(:disabled):not(.disabled).active:focus,
.show > .btn-info.dropdown-toggle:focus {
  box-shadow: 0 0 0 0 rgba(58, 176, 195, 0.5);
}

.btn-warning {
  color: #212529;
  background-color: #ffc107;
  border-color: #ffc107;
}

.btn-warning:hover {
  color: #212529;
  background-color: #e0a800;
  border-color: #d39e00;
}

.btn-warning:focus, .btn-warning.focus {
  color: #212529;
  background-color: #e0a800;
  border-color: #d39e00;
  box-shadow: 0 0 0 0 rgba(222, 170, 12, 0.5);
}

.btn-warning.disabled, .btn-warning:disabled {
  color: #212529;
  background-color: #ffc107;
  border-color: #ffc107;
}

.btn-warning:not(:disabled):not(.disabled):active, .btn-warning:not(:disabled):not(.disabled).active,
.show > .btn-warning.dropdown-toggle {
  color: #212529;
  background-color: #d39e00;
  border-color: #c69500;
}

.btn-warning:not(:disabled):not(.disabled):active:focus, .btn-warning:not(:disabled):not(.disabled).active:focus,
.show > .btn-warning.dropdown-toggle:focus {
  box-shadow: 0 0 0 0 rgba(222, 170, 12, 0.5);
}

.btn-danger {
  color: #ffffff;
  background-color: #dc3545;
  border-color: #dc3545;
}

.btn-danger:hover {
  color: #ffffff;
  background-color: #c82333;
  border-color: #bd2130;
}

.btn-danger:focus, .btn-danger.focus {
  color: #ffffff;
  background-color: #c82333;
  border-color: #bd2130;
  box-shadow: 0 0 0 0 rgba(225, 83, 97, 0.5);
}

.btn-danger.disabled, .btn-danger:disabled {
  color: #ffffff;
  background-color: #dc3545;
  border-color: #dc3545;
}

.btn-danger:not(:disabled):not(.disabled):active, .btn-danger:not(:disabled):not(.disabled).active,
.show > .btn-danger.dropdown-toggle {
  color: #ffffff;
  background-color: #bd2130;
  border-color: #b21f2d;
}

.btn-danger:not(:disabled):not(.disabled):active:focus, .btn-danger:not(:disabled):not(.disabled).active:focus,
.show > .btn-danger.dropdown-toggle:focus {
  box-shadow: 0 0 0 0 rgba(225, 83, 97, 0.5);
}

.btn-light {
  color: #212529;
  background-color: #f8f9fa;
  border-color: #f8f9fa;
}

.btn-light:hover {
  color: #212529;
  background-color: #e2e6ea;
  border-color: #dae0e5;
}

.btn-light:focus, .btn-light.focus {
  color: #212529;
  background-color: #e2e6ea;
  border-color: #dae0e5;
  box-shadow: 0 0 0 0 rgba(216, 217, 219, 0.5);
}

.btn-light.disabled, .btn-light:disabled {
  color: #212529;
  background-color: #f8f9fa;
  border-color: #f8f9fa;
}

.btn-light:not(:disabled):not(.disabled):active, .btn-light:not(:disabled):not(.disabled).active,
.show > .btn-light.dropdown-toggle {
  color: #212529;
  background-color: #dae0e5;
  border-color: #d3d9df;
}

.btn-light:not(:disabled):not(.disabled):active:focus, .btn-light:not(:disabled):not(.disabled).active:focus,
.show > .btn-light.dropdown-toggle:focus {
  box-shadow: 0 0 0 0 rgba(216, 217, 219, 0.5);
}

.btn-dark {
  color: #ffffff;
  background-color: #343a40;
  border-color: #343a40;
}

.btn-dark:hover {
  color: #ffffff;
  background-color: #23272b;
  border-color: #1d2124;
}

.btn-dark:focus, .btn-dark.focus {
  color: #ffffff;
  background-color: #23272b;
  border-color: #1d2124;
  box-shadow: 0 0 0 0 rgba(82, 88, 93, 0.5);
}

.btn-dark.disabled, .btn-dark:disabled {
  color: #ffffff;
  background-color: #343a40;
  border-color: #343a40;
}

.btn-dark:not(:disabled):not(.disabled):active, .btn-dark:not(:disabled):not(.disabled).active,
.show > .btn-dark.dropdown-toggle {
  color: #ffffff;
  background-color: #1d2124;
  border-color: #171a1d;
}

.btn-dark:not(:disabled):not(.disabled):active:focus, .btn-dark:not(:disabled):not(.disabled).active:focus,
.show > .btn-dark.dropdown-toggle:focus {
  box-shadow: 0 0 0 0 rgba(82, 88, 93, 0.5);
}

.btn-outline-primary {
  color: #007bff;
  border-color: #007bff;
}

.btn-outline-primary:hover {
  color: #ffffff;
  background-color: #007bff;
  border-color: #007bff;
}

.btn-outline-primary:focus, .btn-outline-primary.focus {
  box-shadow: 0 0 0 0 rgba(0, 123, 255, 0.5);
}

.btn-outline-primary.disabled, .btn-outline-primary:disabled {
  color: #007bff;
  background-color: transparent;
}

.btn-outline-primary:not(:disabled):not(.disabled):active, .btn-outline-primary:not(:disabled):not(.disabled).active,
.show > .btn-outline-primary.dropdown-toggle {
  color: #ffffff;
  background-color: #007bff;
  border-color: #007bff;
}

.btn-outline-primary:not(:disabled):not(.disabled):active:focus, .btn-outline-primary:not(:disabled):not(.disabled).active:focus,
.show > .btn-outline-primary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0 rgba(0, 123, 255, 0.5);
}

.btn-outline-secondary {
  color: #6c757d;
  border-color: #6c757d;
}

.btn-outline-secondary:hover {
  color: #ffffff;
  background-color: #6c757d;
  border-color: #6c757d;
}

.btn-outline-secondary:focus, .btn-outline-secondary.focus {
  box-shadow: 0 0 0 0 rgba(108, 117, 125, 0.5);
}

.btn-outline-secondary.disabled, .btn-outline-secondary:disabled {
  color: #6c757d;
  background-color: transparent;
}

.btn-outline-secondary:not(:disabled):not(.disabled):active, .btn-outline-secondary:not(:disabled):not(.disabled).active,
.show > .btn-outline-secondary.dropdown-toggle {
  color: #ffffff;
  background-color: #6c757d;
  border-color: #6c757d;
}

.btn-outline-secondary:not(:disabled):not(.disabled):active:focus, .btn-outline-secondary:not(:disabled):not(.disabled).active:focus,
.show > .btn-outline-secondary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0 rgba(108, 117, 125, 0.5);
}

.btn-outline-success {
  color: #28a745;
  border-color: #28a745;
}

.btn-outline-success:hover {
  color: #ffffff;
  background-color: #28a745;
  border-color: #28a745;
}

.btn-outline-success:focus, .btn-outline-success.focus {
  box-shadow: 0 0 0 0 rgba(40, 167, 69, 0.5);
}

.btn-outline-success.disabled, .btn-outline-success:disabled {
  color: #28a745;
  background-color: transparent;
}

.btn-outline-success:not(:disabled):not(.disabled):active, .btn-outline-success:not(:disabled):not(.disabled).active,
.show > .btn-outline-success.dropdown-toggle {
  color: #ffffff;
  background-color: #28a745;
  border-color: #28a745;
}

.btn-outline-success:not(:disabled):not(.disabled):active:focus, .btn-outline-success:not(:disabled):not(.disabled).active:focus,
.show > .btn-outline-success.dropdown-toggle:focus {
  box-shadow: 0 0 0 0 rgba(40, 167, 69, 0.5);
}

.btn-outline-info {
  color: #17a2b8;
  border-color: #17a2b8;
}

.btn-outline-info:hover {
  color: #ffffff;
  background-color: #17a2b8;
  border-color: #17a2b8;
}

.btn-outline-info:focus, .btn-outline-info.focus {
  box-shadow: 0 0 0 0 rgba(23, 162, 184, 0.5);
}

.btn-outline-info.disabled, .btn-outline-info:disabled {
  color: #17a2b8;
  background-color: transparent;
}

.btn-outline-info:not(:disabled):not(.disabled):active, .btn-outline-info:not(:disabled):not(.disabled).active,
.show > .btn-outline-info.dropdown-toggle {
  color: #ffffff;
  background-color: #17a2b8;
  border-color: #17a2b8;
}

.btn-outline-info:not(:disabled):not(.disabled):active:focus, .btn-outline-info:not(:disabled):not(.disabled).active:focus,
.show > .btn-outline-info.dropdown-toggle:focus {
  box-shadow: 0 0 0 0 rgba(23, 162, 184, 0.5);
}

.btn-outline-warning {
  color: #ffc107;
  border-color: #ffc107;
}

.btn-outline-warning:hover {
  color: #212529;
  background-color: #ffc107;
  border-color: #ffc107;
}

.btn-outline-warning:focus, .btn-outline-warning.focus {
  box-shadow: 0 0 0 0 rgba(255, 193, 7, 0.5);
}

.btn-outline-warning.disabled, .btn-outline-warning:disabled {
  color: #ffc107;
  background-color: transparent;
}

.btn-outline-warning:not(:disabled):not(.disabled):active, .btn-outline-warning:not(:disabled):not(.disabled).active,
.show > .btn-outline-warning.dropdown-toggle {
  color: #212529;
  background-color: #ffc107;
  border-color: #ffc107;
}

.btn-outline-warning:not(:disabled):not(.disabled):active:focus, .btn-outline-warning:not(:disabled):not(.disabled).active:focus,
.show > .btn-outline-warning.dropdown-toggle:focus {
  box-shadow: 0 0 0 0 rgba(255, 193, 7, 0.5);
}

.btn-outline-danger {
  color: #dc3545;
  border-color: #dc3545;
}

.btn-outline-danger:hover {
  color: #ffffff;
  background-color: #dc3545;
  border-color: #dc3545;
}

.btn-outline-danger:focus, .btn-outline-danger.focus {
  box-shadow: 0 0 0 0 rgba(220, 53, 69, 0.5);
}

.btn-outline-danger.disabled, .btn-outline-danger:disabled {
  color: #dc3545;
  background-color: transparent;
}

.btn-outline-danger:not(:disabled):not(.disabled):active, .btn-outline-danger:not(:disabled):not(.disabled).active,
.show > .btn-outline-danger.dropdown-toggle {
  color: #ffffff;
  background-color: #dc3545;
  border-color: #dc3545;
}

.btn-outline-danger:not(:disabled):not(.disabled):active:focus, .btn-outline-danger:not(:disabled):not(.disabled).active:focus,
.show > .btn-outline-danger.dropdown-toggle:focus {
  box-shadow: 0 0 0 0 rgba(220, 53, 69, 0.5);
}

.btn-outline-light {
  color: #f8f9fa;
  border-color: #f8f9fa;
}

.btn-outline-light:hover {
  color: #212529;
  background-color: #f8f9fa;
  border-color: #f8f9fa;
}

.btn-outline-light:focus, .btn-outline-light.focus {
  box-shadow: 0 0 0 0 rgba(248, 249, 250, 0.5);
}

.btn-outline-light.disabled, .btn-outline-light:disabled {
  color: #f8f9fa;
  background-color: transparent;
}

.btn-outline-light:not(:disabled):not(.disabled):active, .btn-outline-light:not(:disabled):not(.disabled).active,
.show > .btn-outline-light.dropdown-toggle {
  color: #212529;
  background-color: #f8f9fa;
  border-color: #f8f9fa;
}

.btn-outline-light:not(:disabled):not(.disabled):active:focus, .btn-outline-light:not(:disabled):not(.disabled).active:focus,
.show > .btn-outline-light.dropdown-toggle:focus {
  box-shadow: 0 0 0 0 rgba(248, 249, 250, 0.5);
}

.btn-outline-dark {
  color: #343a40;
  border-color: #343a40;
}

.btn-outline-dark:hover {
  color: #ffffff;
  background-color: #343a40;
  border-color: #343a40;
}

.btn-outline-dark:focus, .btn-outline-dark.focus {
  box-shadow: 0 0 0 0 rgba(52, 58, 64, 0.5);
}

.btn-outline-dark.disabled, .btn-outline-dark:disabled {
  color: #343a40;
  background-color: transparent;
}

.btn-outline-dark:not(:disabled):not(.disabled):active, .btn-outline-dark:not(:disabled):not(.disabled).active,
.show > .btn-outline-dark.dropdown-toggle {
  color: #ffffff;
  background-color: #343a40;
  border-color: #343a40;
}

.btn-outline-dark:not(:disabled):not(.disabled):active:focus, .btn-outline-dark:not(:disabled):not(.disabled).active:focus,
.show > .btn-outline-dark.dropdown-toggle:focus {
  box-shadow: 0 0 0 0 rgba(52, 58, 64, 0.5);
}

.btn-link {
  font-weight: 400;
  color: #007bff;
  text-decoration: none;
}

.btn-link:hover {
  color: #0056b3;
  text-decoration: none;
}

.btn-link:focus, .btn-link.focus {
  text-decoration: none;
}

.btn-link:disabled, .btn-link.disabled {
  color: #6c757d;
  pointer-events: none;
}

.btn-lg, .btn-group-lg > .btn {
  padding: 0.5rem 1rem;
  font-size: 1.25rem;
  line-height: 1.5;
  border-radius: 2px;
}

.btn-sm, .btn-group-sm > .btn {
  padding: 0.25rem 0.55rem;
  font-size: 0.875rem;
  line-height: 1.5;
  border-radius: 2px;
}

.btn-block {
  display: block;
  width: 100%;
}

.btn-block + .btn-block {
  margin-top: 0.5rem;
}

input[type="submit"].btn-block,
input[type="reset"].btn-block,
input[type="button"].btn-block {
  width: 100%;
}

.fade {
  transition: opacity 0.15s linear;
}

@media (prefers-reduced-motion: reduce) {
  .fade {
    transition: none;
  }
}

.fade:not(.show) {
  opacity: 0;
}

.collapse:not(.show) {
  display: none;
}

.collapsing {
  position: relative;
  height: 0;
  overflow: hidden;
  transition: height 0.35s ease;
}

@media (prefers-reduced-motion: reduce) {
  .collapsing {
    transition: none;
  }
}

.dropup,
.dropright,
.dropdown,
.dropleft {
  position: relative;
}

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

.dropdown-toggle::after {
  display: inline-block;
  margin-left: 0.5rem;
  vertical-align: 0.255em;
  content: "";
  border-top: 0.3em solid;
  border-right: 0.3em solid transparent;
  border-bottom: 0;
  border-left: 0.3em solid transparent;
}

.dropdown-toggle:empty::after {
  margin-left: 0;
}

.dropdown-menu {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 1000;
  display: none;
  float: left;
  min-width: 10rem;
  padding: 0.8rem 0;
  margin: 0 0 0;
  font-size: 1rem;
  color: #000000;
  text-align: left;
  list-style: none;
  background-color: rgba(255, 255, 255, 0.08);
  background-clip: padding-box;
  border: 1 solid #000000;
  border-radius: 2px;
}

.dropdown-menu-left {
  right: auto;
  left: 0;
}

.dropdown-menu-right {
  right: 0;
  left: auto;
}

@media (min-width: 576px) {
  .dropdown-menu-sm-left {
    right: auto;
    left: 0;
  }
  .dropdown-menu-sm-right {
    right: 0;
    left: auto;
  }
}

@media (min-width: 768px) {
  .dropdown-menu-md-left {
    right: auto;
    left: 0;
  }
  .dropdown-menu-md-right {
    right: 0;
    left: auto;
  }
}

@media (min-width: 992px) {
  .dropdown-menu-lg-left {
    right: auto;
    left: 0;
  }
  .dropdown-menu-lg-right {
    right: 0;
    left: auto;
  }
}

@media (min-width: 1200px) {
  .dropdown-menu-xl-left {
    right: auto;
    left: 0;
  }
  .dropdown-menu-xl-right {
    right: 0;
    left: auto;
  }
}

.dropup .dropdown-menu {
  top: auto;
  bottom: 100%;
  margin-top: 0;
  margin-bottom: 0;
}

.dropup .dropdown-toggle::after {
  display: inline-block;
  margin-left: 0.5rem;
  vertical-align: 0.255em;
  content: "";
  border-top: 0;
  border-right: 0.3em solid transparent;
  border-bottom: 0.3em solid;
  border-left: 0.3em solid transparent;
}

.dropup .dropdown-toggle:empty::after {
  margin-left: 0;
}

.dropright .dropdown-menu {
  top: 0;
  right: auto;
  left: 100%;
  margin-top: 0;
  margin-left: 0;
}

.dropright .dropdown-toggle::after {
  display: inline-block;
  margin-left: 0.5rem;
  vertical-align: 0.255em;
  content: "";
  border-top: 0.3em solid transparent;
  border-right: 0;
  border-bottom: 0.3em solid transparent;
  border-left: 0.3em solid;
}

.dropright .dropdown-toggle:empty::after {
  margin-left: 0;
}

.dropright .dropdown-toggle::after {
  vertical-align: 0;
}

.dropleft .dropdown-menu {
  top: 0;
  right: 100%;
  left: auto;
  margin-top: 0;
  margin-right: 0;
}

.dropleft .dropdown-toggle::after {
  display: inline-block;
  margin-left: 0.5rem;
  vertical-align: 0.255em;
  content: "";
}

.dropleft .dropdown-toggle::after {
  display: none;
}

.dropleft .dropdown-toggle::before {
  display: inline-block;
  margin-right: 0.5rem;
  vertical-align: 0.255em;
  content: "";
  border-top: 0.3em solid transparent;
  border-right: 0.3em solid;
  border-bottom: 0.3em solid transparent;
}

.dropleft .dropdown-toggle:empty::after {
  margin-left: 0;
}

.dropleft .dropdown-toggle::before {
  vertical-align: 0;
}

.dropdown-menu[x-placement^="top"], .dropdown-menu[x-placement^="right"], .dropdown-menu[x-placement^="bottom"], .dropdown-menu[x-placement^="left"] {
  right: auto;
  bottom: auto;
}

.dropdown-divider {
  height: 0;
  margin: 0.5rem 0;
  overflow: hidden;
  border-top: 1px solid rgba(255, 255, 255, 0.055);
}

.dropdown-item {
  display: block;
  width: 100%;
  padding: 0.5rem 1.5rem;
  clear: both;
  font-weight: 400;
  color: rgba(255, 255, 255, 0.85);
  text-align: inherit;
  white-space: nowrap;
  background-color: transparent;
  border: 0;
}

.dropdown-item:hover, .dropdown-item:focus {
  color: #ffffff;
  text-decoration: none;
  background-color: rgba(255, 255, 255, 0.06);
}

.dropdown-item.active, .dropdown-item:active {
  color: #ffffff;
  text-decoration: none;
  background-color: rgba(255, 255, 255, 0.06);
}

.dropdown-item.disabled, .dropdown-item:disabled {
  color: #adb5bd;
  pointer-events: none;
  background-color: transparent;
}

.dropdown-menu.show {
  display: block;
}

.dropdown-header {
  display: block;
  padding: 0.8rem 1.5rem;
  margin-bottom: 0;
  font-size: 0.875rem;
  color: #ffffff;
  white-space: nowrap;
}

.dropdown-item-text {
  display: block;
  padding: 0.5rem 1.5rem;
  color: rgba(255, 255, 255, 0.85);
}

.btn-group,
.btn-group-vertical {
  position: relative;
  display: inline-flex;
  vertical-align: middle;
}

.btn-group > .btn,
.btn-group-vertical > .btn {
  position: relative;
  flex: 1 1 auto;
}

.btn-group > .btn:hover,
.btn-group-vertical > .btn:hover {
  z-index: 1;
}

.btn-group > .btn:focus, .btn-group > .btn:active, .btn-group > .btn.active,
.btn-group-vertical > .btn:focus,
.btn-group-vertical > .btn:active,
.btn-group-vertical > .btn.active {
  z-index: 1;
}

.btn-toolbar {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
}

.btn-toolbar .input-group {
  width: auto;
}

.btn-group > .btn:not(:first-child),
.btn-group > .btn-group:not(:first-child) {
  margin-left: -1px;
}

.btn-group > .btn:not(:last-child):not(.dropdown-toggle),
.btn-group > .btn-group:not(:last-child) > .btn {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.btn-group > .btn:not(:first-child),
.btn-group > .btn-group:not(:first-child) > .btn {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.dropdown-toggle-split {
  padding-right: 0.75rem;
  padding-left: 0.75rem;
}

.dropdown-toggle-split::after,
.dropup .dropdown-toggle-split::after,
.dropright .dropdown-toggle-split::after {
  margin-left: 0;
}

.dropleft .dropdown-toggle-split::before {
  margin-right: 0;
}

.btn-sm + .dropdown-toggle-split, .btn-group-sm > .btn + .dropdown-toggle-split {
  padding-right: 0.4125rem;
  padding-left: 0.4125rem;
}

.btn-lg + .dropdown-toggle-split, .btn-group-lg > .btn + .dropdown-toggle-split {
  padding-right: 0.75rem;
  padding-left: 0.75rem;
}

.btn-group-vertical {
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
}

.btn-group-vertical > .btn,
.btn-group-vertical > .btn-group {
  width: 100%;
}

.btn-group-vertical > .btn:not(:first-child),
.btn-group-vertical > .btn-group:not(:first-child) {
  margin-top: -1px;
}

.btn-group-vertical > .btn:not(:last-child):not(.dropdown-toggle),
.btn-group-vertical > .btn-group:not(:last-child) > .btn {
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}

.btn-group-vertical > .btn:not(:first-child),
.btn-group-vertical > .btn-group:not(:first-child) > .btn {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.btn-group-toggle > .btn,
.btn-group-toggle > .btn-group > .btn {
  margin-bottom: 0;
}

.btn-group-toggle > .btn input[type="radio"],
.btn-group-toggle > .btn input[type="checkbox"],
.btn-group-toggle > .btn-group > .btn input[type="radio"],
.btn-group-toggle > .btn-group > .btn input[type="checkbox"] {
  position: absolute;
  clip: rect(0, 0, 0, 0);
  pointer-events: none;
}

.input-group {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  width: 100%;
}

.input-group > .form-control,
.input-group > .form-control-plaintext,
.input-group > .custom-select,
.input-group > .custom-file {
  position: relative;
  flex: 1 1 auto;
  width: 1%;
  min-width: 0;
  margin-bottom: 0;
}

.input-group > .form-control + .form-control,
.input-group > .form-control + .custom-select,
.input-group > .form-control + .custom-file,
.input-group > .form-control-plaintext + .form-control,
.input-group > .form-control-plaintext + .custom-select,
.input-group > .form-control-plaintext + .custom-file,
.input-group > .custom-select + .form-control,
.input-group > .custom-select + .custom-select,
.input-group > .custom-select + .custom-file,
.input-group > .custom-file + .form-control,
.input-group > .custom-file + .custom-select,
.input-group > .custom-file + .custom-file {
  margin-left: -1px;
}

.input-group > .form-control:focus,
.input-group > .custom-select:focus,
.input-group > .custom-file .custom-file-input:focus ~ .custom-file-label {
  z-index: 3;
}

.input-group > .custom-file .custom-file-input:focus {
  z-index: 4;
}

.input-group > .form-control:not(:first-child),
.input-group > .custom-select:not(:first-child) {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.input-group > .custom-file {
  display: flex;
  align-items: center;
}

.input-group > .custom-file:not(:last-child) .custom-file-label,
.input-group > .custom-file:not(:first-child) .custom-file-label {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.input-group:not(.has-validation) > .form-control:not(:last-child),
.input-group:not(.has-validation) > .custom-select:not(:last-child),
.input-group:not(.has-validation) > .custom-file:not(:last-child) .custom-file-label::after {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.input-group.has-validation > .form-control:nth-last-child(n + 3),
.input-group.has-validation > .custom-select:nth-last-child(n + 3),
.input-group.has-validation > .custom-file:nth-last-child(n + 3) .custom-file-label::after {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.input-group-prepend,
.input-group-append {
  display: flex;
}

.input-group-prepend .btn,
.input-group-append .btn {
  position: relative;
  z-index: 2;
}

.input-group-prepend .btn:focus,
.input-group-append .btn:focus {
  z-index: 3;
}

.input-group-prepend .btn + .btn,
.input-group-prepend .btn + .input-group-text,
.input-group-prepend .input-group-text + .input-group-text,
.input-group-prepend .input-group-text + .btn,
.input-group-append .btn + .btn,
.input-group-append .btn + .input-group-text,
.input-group-append .input-group-text + .input-group-text,
.input-group-append .input-group-text + .btn {
  margin-left: -1px;
}

.input-group-prepend {
  margin-right: -1px;
}

.input-group-append {
  margin-left: -1px;
}

.input-group-text {
  display: flex;
  align-items: center;
  padding: 0.6rem 1rem;
  margin-bottom: 0;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #000000;
  text-align: center;
  white-space: nowrap;
  background-color: transparent;
  border: 1px solid black;
  border-radius: 0;
}

.input-group-text input[type="radio"],
.input-group-text input[type="checkbox"] {
  margin-top: 0;
}

.input-group-lg > .form-control:not(textarea),
.input-group-lg > .custom-select {
  height: calc(1.5em + 1rem + 2px);
}

.input-group-lg > .form-control,
.input-group-lg > .custom-select,
.input-group-lg > .input-group-prepend > .input-group-text,
.input-group-lg > .input-group-append > .input-group-text,
.input-group-lg > .input-group-prepend > .btn,
.input-group-lg > .input-group-append > .btn {
  padding: 0.5rem 1rem;
  font-size: 1.25rem;
  line-height: 1.5;
  border-radius: 0;
}

.input-group-sm > .form-control:not(textarea),
.input-group-sm > .custom-select {
  height: calc(1.5em + 0.5rem + 2px);
}

.input-group-sm > .form-control,
.input-group-sm > .custom-select,
.input-group-sm > .input-group-prepend > .input-group-text,
.input-group-sm > .input-group-append > .input-group-text,
.input-group-sm > .input-group-prepend > .btn,
.input-group-sm > .input-group-append > .btn {
  padding: 0.25rem 0.55rem;
  font-size: 0.875rem;
  line-height: 1.5;
  border-radius: 0;
}

.input-group-lg > .custom-select,
.input-group-sm > .custom-select {
  padding-right: 2rem;
}

.input-group > .input-group-prepend > .btn,
.input-group > .input-group-prepend > .input-group-text,
.input-group:not(.has-validation) > .input-group-append:not(:last-child) > .btn,
.input-group:not(.has-validation) > .input-group-append:not(:last-child) > .input-group-text,
.input-group.has-validation > .input-group-append:nth-last-child(n + 3) > .btn,
.input-group.has-validation > .input-group-append:nth-last-child(n + 3) > .input-group-text,
.input-group > .input-group-append:last-child > .btn:not(:last-child):not(.dropdown-toggle),
.input-group > .input-group-append:last-child > .input-group-text:not(:last-child) {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.input-group > .input-group-append > .btn,
.input-group > .input-group-append > .input-group-text,
.input-group > .input-group-prepend:not(:first-child) > .btn,
.input-group > .input-group-prepend:not(:first-child) > .input-group-text,
.input-group > .input-group-prepend:first-child > .btn:not(:first-child),
.input-group > .input-group-prepend:first-child > .input-group-text:not(:first-child) {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.custom-control {
  position: relative;
  z-index: 1;
  display: block;
  min-height: 1.5rem;
  padding-left: 2.28847rem;
  color-adjust: exact;
}

.custom-control-inline {
  display: inline-flex;
  margin-right: 1rem;
}

.custom-control-input {
  position: absolute;
  left: 0;
  z-index: -1;
  width: 1.53847rem;
  height: 1.51924rem;
  opacity: 0;
}

.custom-control-input:checked ~ .custom-control-label::before {
  color: #ffffff;
  border-color: rgba(255, 255, 255, 0.5);
  background-color: rgba(255, 255, 255, 0.15);
}

.custom-control-input:focus ~ .custom-control-label::before {
  box-shadow: 0 0 5px rgba(255, 255, 255, 0.15);
}

.custom-control-input:focus:not(:checked) ~ .custom-control-label::before {
  border-color: rgba(255, 255, 255, 0.5);
}

.custom-control-input:not(:disabled):active ~ .custom-control-label::before {
  color: #ffffff;
  background-color: rgba(255, 255, 255, 0.15);
  border-color: rgba(255, 255, 255, 0.5);
}

.custom-control-input[disabled] ~ .custom-control-label, .custom-control-input:disabled ~ .custom-control-label {
  color: rgba(255, 255, 255, 0.4);
}

.custom-control-input[disabled] ~ .custom-control-label::before, .custom-control-input:disabled ~ .custom-control-label::before {
  background-color: transparent;
}

.custom-control-label {
  position: relative;
  margin-bottom: 0;
  vertical-align: top;
}

.custom-control-label::before {
  position: absolute;
  top: -0.01924rem;
  left: -2.28847rem;
  display: block;
  width: 1.53847rem;
  height: 1.53847rem;
  pointer-events: none;
  content: "";
  background-color: transparent;
  border: rgba(255, 255, 255, 0.35) solid 1px;
}

.custom-control-label::after {
  position: absolute;
  top: -0.01924rem;
  left: -2.28847rem;
  display: block;
  width: 1.53847rem;
  height: 1.53847rem;
  content: "";
  background: 50% / 50% 50% no-repeat;
}

.custom-checkbox .custom-control-label::before {
  border-radius: 0;
}

.custom-checkbox .custom-control-input:checked ~ .custom-control-label::after {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%23ffffff' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26l2.974 2.99L8 2.193z'/%3e%3c/svg%3e");
}

.custom-checkbox .custom-control-input:indeterminate ~ .custom-control-label::before {
  border-color: #007bff;
  background-color: #007bff;
}

.custom-checkbox .custom-control-input:indeterminate ~ .custom-control-label::after {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='4' viewBox='0 0 4 4'%3e%3cpath stroke='%23ffffff' d='M0 2h4'/%3e%3c/svg%3e");
}

.custom-checkbox .custom-control-input:disabled:checked ~ .custom-control-label::before {
  background-color: rgba(0, 123, 255, 0.5);
}

.custom-checkbox .custom-control-input:disabled:indeterminate ~ .custom-control-label::before {
  background-color: rgba(0, 123, 255, 0.5);
}

.custom-radio .custom-control-label::before {
  border-radius: 50%;
}

.custom-radio .custom-control-input:checked ~ .custom-control-label::after {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23ffffff'/%3e%3c/svg%3e");
}

.custom-radio .custom-control-input:disabled:checked ~ .custom-control-label::before {
  background-color: rgba(0, 123, 255, 0.5);
}

.custom-switch {
  padding-left: 3.44232rem;
}

.custom-switch .custom-control-label::before {
  left: -3.44232rem;
  width: 2.69232rem;
  pointer-events: all;
  border-radius: 0.76924rem;
}

.custom-switch .custom-control-label::after {
  top: calc(-0.01924rem + 2px);
  left: calc(-3.44232rem + 2px);
  width: calc(1.53847rem - 4px);
  height: calc(1.53847rem - 4px);
  background-color: rgba(255, 255, 255, 0.35);
  border-radius: 0.76924rem;
  transition: transform 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
  .custom-switch .custom-control-label::after {
    transition: none;
  }
}

.custom-switch .custom-control-input:checked ~ .custom-control-label::after {
  background-color: transparent;
  transform: translateX(1.15385rem);
}

.custom-switch .custom-control-input:disabled:checked ~ .custom-control-label::before {
  background-color: rgba(0, 123, 255, 0.5);
}

.custom-select {
  display: inline-block;
  width: 100%;
  height: calc(1.5em + 1.2rem + 2px);
  padding: 0.6rem 2rem 0.6rem 1rem;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #000000;
  vertical-align: middle;
  background: transparent #ffffff;
  border: 1px solid black;
  border-radius: 2px;
  appearance: none;
}

.custom-select:focus {
  border-color: black;
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

.custom-select:focus::-ms-value {
  color: #000000;
  background-color: transparent;
}

.custom-select[multiple], .custom-select[size]:not([size="1"]) {
  height: auto;
  padding-right: 1rem;
  background-image: none;
}

.custom-select:disabled {
  color: #6c757d;
  background-color: #e9ecef;
}

.custom-select::-ms-expand {
  display: none;
}

.custom-select:-moz-focusring {
  color: transparent;
  text-shadow: 0 0 0 #000000;
}

.custom-select-sm {
  height: calc(1.5em + 0.5rem + 2px);
  padding-top: 0.25rem;
  padding-bottom: 0.25rem;
  padding-left: 0.55rem;
  font-size: 0.875rem;
}

.custom-select-lg {
  height: calc(1.5em + 1rem + 2px);
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  padding-left: 1rem;
  font-size: 1.25rem;
}

.custom-file {
  position: relative;
  display: inline-block;
  width: 100%;
  height: calc(1.5em + 1.2rem + 2px);
  margin-bottom: 0;
}

.custom-file-input {
  position: relative;
  z-index: 2;
  width: 100%;
  height: calc(1.5em + 1.2rem + 2px);
  margin: 0;
  overflow: hidden;
  opacity: 0;
}

.custom-file-input:focus ~ .custom-file-label {
  border-color: black;
  box-shadow: 0 0 5px rgba(255, 255, 255, 0.15);
}

.custom-file-input[disabled] ~ .custom-file-label,
.custom-file-input:disabled ~ .custom-file-label {
  background-color: transparent;
}

.custom-file-input:lang(en) ~ .custom-file-label::after {
  content: "Browse";
}

.custom-file-input ~ .custom-file-label[data-browse]::after {
  content: attr(data-browse);
}

.custom-file-label {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  z-index: 1;
  height: calc(1.5em + 1.2rem + 2px);
  padding: 0.6rem 1rem;
  overflow: hidden;
  font-weight: 400;
  line-height: 1.5;
  color: #000000;
  background-color: transparent;
  border: 1px solid black;
  border-radius: 0;
}

.custom-file-label::after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  z-index: 3;
  display: block;
  height: calc(1.5em + 1.2rem);
  padding: 0.6rem 1rem;
  line-height: 1.5;
  color: #000000;
  content: "Browse";
  background-color: transparent;
  border-left: inherit;
  border-radius: 0 0 0 0;
}

.custom-range {
  width: 100%;
  height: 1.4rem;
  padding: 0;
  background-color: transparent;
  appearance: none;
}

.custom-range:focus {
  outline: 0;
}

.custom-range:focus::-webkit-slider-thumb {
  box-shadow: 0 0 0 1px #ffffff, 0 0 5px rgba(255, 255, 255, 0.15);
}

.custom-range:focus::-moz-range-thumb {
  box-shadow: 0 0 0 1px #ffffff, 0 0 5px rgba(255, 255, 255, 0.15);
}

.custom-range:focus::-ms-thumb {
  box-shadow: 0 0 0 1px #ffffff, 0 0 5px rgba(255, 255, 255, 0.15);
}

.custom-range::-moz-focus-outer {
  border: 0;
}

.custom-range::-webkit-slider-thumb {
  width: 1rem;
  height: 1rem;
  margin-top: -0.25rem;
  background-color: #007bff;
  border: 0;
  border-radius: 1rem;
  transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  appearance: none;
}

@media (prefers-reduced-motion: reduce) {
  .custom-range::-webkit-slider-thumb {
    transition: none;
  }
}

.custom-range::-webkit-slider-thumb:active {
  background-color: #b3d7ff;
}

.custom-range::-webkit-slider-runnable-track {
  width: 100%;
  height: 0.5rem;
  color: transparent;
  cursor: pointer;
  background-color: #dee2e6;
  border-color: transparent;
  border-radius: 1rem;
}

.custom-range::-moz-range-thumb {
  width: 1rem;
  height: 1rem;
  background-color: #007bff;
  border: 0;
  border-radius: 1rem;
  transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  appearance: none;
}

@media (prefers-reduced-motion: reduce) {
  .custom-range::-moz-range-thumb {
    transition: none;
  }
}

.custom-range::-moz-range-thumb:active {
  background-color: #b3d7ff;
}

.custom-range::-moz-range-track {
  width: 100%;
  height: 0.5rem;
  color: transparent;
  cursor: pointer;
  background-color: #dee2e6;
  border-color: transparent;
  border-radius: 1rem;
}

.custom-range::-ms-thumb {
  width: 1rem;
  height: 1rem;
  margin-top: 0;
  margin-right: 0.2rem;
  margin-left: 0.2rem;
  background-color: #007bff;
  border: 0;
  border-radius: 1rem;
  transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  appearance: none;
}

@media (prefers-reduced-motion: reduce) {
  .custom-range::-ms-thumb {
    transition: none;
  }
}

.custom-range::-ms-thumb:active {
  background-color: #b3d7ff;
}

.custom-range::-ms-track {
  width: 100%;
  height: 0.5rem;
  color: transparent;
  cursor: pointer;
  background-color: transparent;
  border-color: transparent;
  border-width: 0.5rem;
}

.custom-range::-ms-fill-lower {
  background-color: #dee2e6;
  border-radius: 1rem;
}

.custom-range::-ms-fill-upper {
  margin-right: 15px;
  background-color: #dee2e6;
  border-radius: 1rem;
}

.custom-range:disabled::-webkit-slider-thumb {
  background-color: #adb5bd;
}

.custom-range:disabled::-webkit-slider-runnable-track {
  cursor: default;
}

.custom-range:disabled::-moz-range-thumb {
  background-color: #adb5bd;
}

.custom-range:disabled::-moz-range-track {
  cursor: default;
}

.custom-range:disabled::-ms-thumb {
  background-color: #adb5bd;
}

.custom-control-label::before,
.custom-file-label,
.custom-select {
  transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
  .custom-control-label::before,
  .custom-file-label,
  .custom-select {
    transition: none;
  }
}

.nav {
  display: flex;
  flex-wrap: wrap;
  padding-left: 0;
  margin-bottom: 0;
  list-style: none;
}

.nav-link {
  display: block;
  padding: 1rem 1.5rem;
}

.nav-link:hover, .nav-link:focus {
  text-decoration: none;
}

.nav-link.disabled {
  color: rgba(255, 255, 255, 0.5);
  pointer-events: none;
  cursor: default;
}

.nav-tabs {
  border-bottom: 2px solid rgba(255, 255, 255, 0.08);
}

.nav-tabs .nav-link {
  margin-bottom: -2px;
  border: 2px solid transparent;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.nav-tabs .nav-link:hover, .nav-tabs .nav-link:focus {
  border-color: #e9ecef #e9ecef rgba(255, 255, 255, 0.08);
}

.nav-tabs .nav-link.disabled {
  color: rgba(255, 255, 255, 0.5);
  background-color: transparent;
  border-color: transparent;
}

.nav-tabs .nav-link.active,
.nav-tabs .nav-item.show .nav-link {
  color: #ffffff;
  background-color: transparent;
  border-color: #dee2e6 #dee2e6 transparent;
}

.nav-tabs .dropdown-menu {
  margin-top: -2px;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.nav-pills .nav-link {
  border-radius: 2px;
}

.nav-pills .nav-link.active,
.nav-pills .show > .nav-link {
  color: #ffffff;
  background-color: rgba(255, 255, 255, 0.08);
}

.nav-fill > .nav-link,
.nav-fill .nav-item {
  flex: 1 1 auto;
  text-align: center;
}

.nav-justified > .nav-link,
.nav-justified .nav-item {
  flex-basis: 0;
  flex-grow: 1;
  text-align: center;
}

.tab-content > .tab-pane {
  display: none;
}

.tab-content > .active {
  display: block;
}

.navbar {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  padding: 0.5rem 1rem;
}

.navbar .container,
.navbar .container-fluid, .navbar .container-sm, .navbar .container-md, .navbar .container-lg, .navbar .container-xl {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
}

.navbar-brand {
  display: inline-block;
  padding-top: 0.8125rem;
  padding-bottom: 0.8125rem;
  margin-right: 1rem;
  font-size: 1.25rem;
  line-height: inherit;
  white-space: nowrap;
}

.navbar-brand:hover, .navbar-brand:focus {
  text-decoration: none;
}

.navbar-nav {
  display: flex;
  flex-direction: column;
  padding-left: 0;
  margin-bottom: 0;
  list-style: none;
}

.navbar-nav .nav-link {
  padding-right: 0;
  padding-left: 0;
}

.navbar-nav .dropdown-menu {
  position: static;
  float: none;
}

.navbar-text {
  display: inline-block;
  padding-top: 1rem;
  padding-bottom: 1rem;
}

.navbar-collapse {
  flex-basis: 100%;
  flex-grow: 1;
  align-items: center;
}

.navbar-toggler {
  padding: 0.25rem 0.75rem;
  font-size: 1.25rem;
  line-height: 1;
  background-color: transparent;
  border: 1px solid transparent;
  border-radius: 2px;
}

.navbar-toggler:hover, .navbar-toggler:focus {
  text-decoration: none;
}

.navbar-toggler-icon {
  display: inline-block;
  width: 1.5em;
  height: 1.5em;
  vertical-align: middle;
  content: "";
  background: 50% / 100% 100% no-repeat;
}

.navbar-nav-scroll {
  max-height: 75vh;
  overflow-y: auto;
}

@media (max-width: 575.98px) {
  .navbar-expand-sm > .container,
  .navbar-expand-sm > .container-fluid, .navbar-expand-sm > .container-sm, .navbar-expand-sm > .container-md, .navbar-expand-sm > .container-lg, .navbar-expand-sm > .container-xl {
    padding-right: 0;
    padding-left: 0;
  }
}

@media (min-width: 576px) {
  .navbar-expand-sm {
    flex-flow: row nowrap;
    justify-content: flex-start;
  }
  .navbar-expand-sm .navbar-nav {
    flex-direction: row;
  }
  .navbar-expand-sm .navbar-nav .dropdown-menu {
    position: absolute;
  }
  .navbar-expand-sm .navbar-nav .nav-link {
    padding-right: 0.5rem;
    padding-left: 0.5rem;
  }
  .navbar-expand-sm > .container,
  .navbar-expand-sm > .container-fluid, .navbar-expand-sm > .container-sm, .navbar-expand-sm > .container-md, .navbar-expand-sm > .container-lg, .navbar-expand-sm > .container-xl {
    flex-wrap: nowrap;
  }
  .navbar-expand-sm .navbar-nav-scroll {
    overflow: visible;
  }
  .navbar-expand-sm .navbar-collapse {
    display: flex !important;
    flex-basis: auto;
  }
  .navbar-expand-sm .navbar-toggler {
    display: none;
  }
}

@media (max-width: 767.98px) {
  .navbar-expand-md > .container,
  .navbar-expand-md > .container-fluid, .navbar-expand-md > .container-sm, .navbar-expand-md > .container-md, .navbar-expand-md > .container-lg, .navbar-expand-md > .container-xl {
    padding-right: 0;
    padding-left: 0;
  }
}

@media (min-width: 768px) {
  .navbar-expand-md {
    flex-flow: row nowrap;
    justify-content: flex-start;
  }
  .navbar-expand-md .navbar-nav {
    flex-direction: row;
  }
  .navbar-expand-md .navbar-nav .dropdown-menu {
    position: absolute;
  }
  .navbar-expand-md .navbar-nav .nav-link {
    padding-right: 0.5rem;
    padding-left: 0.5rem;
  }
  .navbar-expand-md > .container,
  .navbar-expand-md > .container-fluid, .navbar-expand-md > .container-sm, .navbar-expand-md > .container-md, .navbar-expand-md > .container-lg, .navbar-expand-md > .container-xl {
    flex-wrap: nowrap;
  }
  .navbar-expand-md .navbar-nav-scroll {
    overflow: visible;
  }
  .navbar-expand-md .navbar-collapse {
    display: flex !important;
    flex-basis: auto;
  }
  .navbar-expand-md .navbar-toggler {
    display: none;
  }
}

@media (max-width: 991.98px) {
  .navbar-expand-lg > .container,
  .navbar-expand-lg > .container-fluid, .navbar-expand-lg > .container-sm, .navbar-expand-lg > .container-md, .navbar-expand-lg > .container-lg, .navbar-expand-lg > .container-xl {
    padding-right: 0;
    padding-left: 0;
  }
}

@media (min-width: 992px) {
  .navbar-expand-lg {
    flex-flow: row nowrap;
    justify-content: flex-start;
  }
  .navbar-expand-lg .navbar-nav {
    flex-direction: row;
  }
  .navbar-expand-lg .navbar-nav .dropdown-menu {
    position: absolute;
  }
  .navbar-expand-lg .navbar-nav .nav-link {
    padding-right: 0.5rem;
    padding-left: 0.5rem;
  }
  .navbar-expand-lg > .container,
  .navbar-expand-lg > .container-fluid, .navbar-expand-lg > .container-sm, .navbar-expand-lg > .container-md, .navbar-expand-lg > .container-lg, .navbar-expand-lg > .container-xl {
    flex-wrap: nowrap;
  }
  .navbar-expand-lg .navbar-nav-scroll {
    overflow: visible;
  }
  .navbar-expand-lg .navbar-collapse {
    display: flex !important;
    flex-basis: auto;
  }
  .navbar-expand-lg .navbar-toggler {
    display: none;
  }
}

@media (max-width: 1199.98px) {
  .navbar-expand-xl > .container,
  .navbar-expand-xl > .container-fluid, .navbar-expand-xl > .container-sm, .navbar-expand-xl > .container-md, .navbar-expand-xl > .container-lg, .navbar-expand-xl > .container-xl {
    padding-right: 0;
    padding-left: 0;
  }
}

@media (min-width: 1200px) {
  .navbar-expand-xl {
    flex-flow: row nowrap;
    justify-content: flex-start;
  }
  .navbar-expand-xl .navbar-nav {
    flex-direction: row;
  }
  .navbar-expand-xl .navbar-nav .dropdown-menu {
    position: absolute;
  }
  .navbar-expand-xl .navbar-nav .nav-link {
    padding-right: 0.5rem;
    padding-left: 0.5rem;
  }
  .navbar-expand-xl > .container,
  .navbar-expand-xl > .container-fluid, .navbar-expand-xl > .container-sm, .navbar-expand-xl > .container-md, .navbar-expand-xl > .container-lg, .navbar-expand-xl > .container-xl {
    flex-wrap: nowrap;
  }
  .navbar-expand-xl .navbar-nav-scroll {
    overflow: visible;
  }
  .navbar-expand-xl .navbar-collapse {
    display: flex !important;
    flex-basis: auto;
  }
  .navbar-expand-xl .navbar-toggler {
    display: none;
  }
}

.navbar-expand {
  flex-flow: row nowrap;
  justify-content: flex-start;
}

.navbar-expand > .container,
.navbar-expand > .container-fluid, .navbar-expand > .container-sm, .navbar-expand > .container-md, .navbar-expand > .container-lg, .navbar-expand > .container-xl {
  padding-right: 0;
  padding-left: 0;
}

.navbar-expand .navbar-nav {
  flex-direction: row;
}

.navbar-expand .navbar-nav .dropdown-menu {
  position: absolute;
}

.navbar-expand .navbar-nav .nav-link {
  padding-right: 0.5rem;
  padding-left: 0.5rem;
}

.navbar-expand > .container,
.navbar-expand > .container-fluid, .navbar-expand > .container-sm, .navbar-expand > .container-md, .navbar-expand > .container-lg, .navbar-expand > .container-xl {
  flex-wrap: nowrap;
}

.navbar-expand .navbar-nav-scroll {
  overflow: visible;
}

.navbar-expand .navbar-collapse {
  display: flex !important;
  flex-basis: auto;
}

.navbar-expand .navbar-toggler {
  display: none;
}

.navbar-light .navbar-brand {
  color: rgba(0, 0, 0, 0.9);
}

.navbar-light .navbar-brand:hover, .navbar-light .navbar-brand:focus {
  color: rgba(0, 0, 0, 0.9);
}

.navbar-light .navbar-nav .nav-link {
  color: rgba(0, 0, 0, 0.5);
}

.navbar-light .navbar-nav .nav-link:hover, .navbar-light .navbar-nav .nav-link:focus {
  color: rgba(0, 0, 0, 0.7);
}

.navbar-light .navbar-nav .nav-link.disabled {
  color: rgba(0, 0, 0, 0.3);
}

.navbar-light .navbar-nav .show > .nav-link,
.navbar-light .navbar-nav .active > .nav-link,
.navbar-light .navbar-nav .nav-link.show,
.navbar-light .navbar-nav .nav-link.active {
  color: rgba(0, 0, 0, 0.9);
}

.navbar-light .navbar-toggler {
  color: rgba(0, 0, 0, 0.5);
  border-color: rgba(0, 0, 0, 0.1);
}

.navbar-light .navbar-toggler-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%280, 0, 0, 0.5%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}

.navbar-light .navbar-text {
  color: rgba(0, 0, 0, 0.5);
}

.navbar-light .navbar-text a {
  color: rgba(0, 0, 0, 0.9);
}

.navbar-light .navbar-text a:hover, .navbar-light .navbar-text a:focus {
  color: rgba(0, 0, 0, 0.9);
}

.navbar-dark .navbar-brand {
  color: #ffffff;
}

.navbar-dark .navbar-brand:hover, .navbar-dark .navbar-brand:focus {
  color: #ffffff;
}

.navbar-dark .navbar-nav .nav-link {
  color: rgba(255, 255, 255, 0.5);
}

.navbar-dark .navbar-nav .nav-link:hover, .navbar-dark .navbar-nav .nav-link:focus {
  color: rgba(255, 255, 255, 0.75);
}

.navbar-dark .navbar-nav .nav-link.disabled {
  color: rgba(255, 255, 255, 0.25);
}

.navbar-dark .navbar-nav .show > .nav-link,
.navbar-dark .navbar-nav .active > .nav-link,
.navbar-dark .navbar-nav .nav-link.show,
.navbar-dark .navbar-nav .nav-link.active {
  color: #ffffff;
}

.navbar-dark .navbar-toggler {
  color: rgba(255, 255, 255, 0.5);
  border-color: rgba(255, 255, 255, 0.1);
}

.navbar-dark .navbar-toggler-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.5%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}

.navbar-dark .navbar-text {
  color: rgba(255, 255, 255, 0.5);
}

.navbar-dark .navbar-text a {
  color: #ffffff;
}

.navbar-dark .navbar-text a:hover, .navbar-dark .navbar-text a:focus {
  color: #ffffff;
}

.card {
  position: relative;
  display: flex;
  flex-direction: column;
  min-width: 0;
  word-wrap: break-word;
  background-color: rgba(0, 0, 0, 0.2);
  background-clip: border-box;
  border: 1px solid transparent;
  border-radius: 2px;
}

.card > hr {
  margin-right: 0;
  margin-left: 0;
}

.card > .list-group {
  border-top: inherit;
  border-bottom: inherit;
}

.card > .list-group:first-child {
  border-top-width: 0;
  border-top-left-radius: 2px;
  border-top-right-radius: 2px;
}

.card > .list-group:last-child {
  border-bottom-width: 0;
  border-bottom-right-radius: 2px;
  border-bottom-left-radius: 2px;
}

.card > .card-header + .list-group,
.card > .list-group + .card-footer {
  border-top: 0;
}

.card-body {
  flex: 1 1 auto;
  min-height: 1px;
  padding: 2.2rem;
}

.card-title {
  margin-bottom: 2.1rem;
}

.card-subtitle {
  margin-top: -1.05rem;
  margin-bottom: 0;
}

.card-text:last-child {
  margin-bottom: 0;
}

.card-link:hover {
  text-decoration: none;
}

.card-link + .card-link {
  margin-left: 2.2rem;
}

.card-header {
  padding: 2.1rem 2.2rem;
  margin-bottom: 0;
  background-color: rgba(0, 0, 0, 0.075);
  border-bottom: 1px solid transparent;
}

.card-header:first-child {
  border-radius: 2px 2px 0 0;
}

.card-footer {
  padding: 2.1rem 2.2rem;
  background-color: rgba(0, 0, 0, 0.075);
  border-top: 1px solid transparent;
}

.card-footer:last-child {
  border-radius: 0 0 2px 2px;
}

.card-header-tabs {
  margin-right: -1.1rem;
  margin-bottom: -2.1rem;
  margin-left: -1.1rem;
  border-bottom: 0;
}

.card-header-pills {
  margin-right: -1.1rem;
  margin-left: -1.1rem;
}

.card-img-overlay {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  padding: 0;
  border-radius: 2px;
}

.card-img,
.card-img-top,
.card-img-bottom {
  flex-shrink: 0;
  width: 100%;
}

.card-img,
.card-img-top {
  border-top-left-radius: 2px;
  border-top-right-radius: 2px;
}

.card-img,
.card-img-bottom {
  border-bottom-right-radius: 2px;
  border-bottom-left-radius: 2px;
}

.card-deck .card {
  margin-bottom: 15px;
}

@media (min-width: 576px) {
  .card-deck {
    display: flex;
    flex-flow: row wrap;
    margin-right: -15px;
    margin-left: -15px;
  }
  .card-deck .card {
    flex: 1 0 0%;
    margin-right: 15px;
    margin-bottom: 0;
    margin-left: 15px;
  }
}

.card-group > .card {
  margin-bottom: 15px;
}

@media (min-width: 576px) {
  .card-group {
    display: flex;
    flex-flow: row wrap;
  }
  .card-group > .card {
    flex: 1 0 0%;
    margin-bottom: 0;
  }
  .card-group > .card + .card {
    margin-left: 0;
    border-left: 0;
  }
  .card-group > .card:not(:last-child) {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
  }
  .card-group > .card:not(:last-child) .card-img-top,
  .card-group > .card:not(:last-child) .card-header {
    border-top-right-radius: 0;
  }
  .card-group > .card:not(:last-child) .card-img-bottom,
  .card-group > .card:not(:last-child) .card-footer {
    border-bottom-right-radius: 0;
  }
  .card-group > .card:not(:first-child) {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
  }
  .card-group > .card:not(:first-child) .card-img-top,
  .card-group > .card:not(:first-child) .card-header {
    border-top-left-radius: 0;
  }
  .card-group > .card:not(:first-child) .card-img-bottom,
  .card-group > .card:not(:first-child) .card-footer {
    border-bottom-left-radius: 0;
  }
}

.card-columns .card {
  margin-bottom: 2.3rem;
}

@media (min-width: 576px) {
  .card-columns {
    column-count: 3;
    column-gap: 1.25rem;
    orphans: 1;
    widows: 1;
  }
  .card-columns .card {
    display: inline-block;
    width: 100%;
  }
}

.accordion {
  overflow-anchor: none;
}

.accordion > .card {
  overflow: hidden;
}

.accordion > .card:not(:last-of-type) {
  border-bottom: 0;
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}

.accordion > .card:not(:first-of-type) {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.accordion > .card > .card-header {
  border-radius: 0;
  margin-bottom: -1px;
}

.breadcrumb {
  display: flex;
  flex-wrap: wrap;
  padding: 0.75rem 0.25rem;
  margin-bottom: 1rem;
  list-style: none;
  background-color: transparent;
  border-radius: 2px;
}

.breadcrumb-item + .breadcrumb-item {
  padding-left: 0.5rem;
}

.breadcrumb-item + .breadcrumb-item::before {
  float: left;
  padding-right: 0.5rem;
  color: rgba(255, 255, 255, 0.5);
  content: "/";
}

.breadcrumb-item + .breadcrumb-item:hover::before {
  text-decoration: underline;
}

.breadcrumb-item + .breadcrumb-item:hover::before {
  text-decoration: none;
}

.breadcrumb-item.active {
  color: #ffffff;
}

.pagination {
  display: flex;
  padding-left: 0;
  list-style: none;
  border-radius: 2px;
}

.page-link {
  position: relative;
  display: block;
  padding: 0 0;
  margin-left: 0;
  line-height: 1.25;
  color: #000000;
  background-color: rgba(255, 255, 255, 0.08);
  border: 0 solid #dee2e6;
}

.page-link:hover {
  z-index: 2;
  color: #000000;
  text-decoration: none;
  background-color: rgba(255, 255, 255, 0.2);
  border-color: #dee2e6;
}

.page-link:focus {
  z-index: 3;
  outline: 0;
  box-shadow: none;
}

.page-item:first-child .page-link {
  margin-left: 0;
  border-top-left-radius: 2px;
  border-bottom-left-radius: 2px;
}

.page-item:last-child .page-link {
  border-top-right-radius: 2px;
  border-bottom-right-radius: 2px;
}

.page-item.active .page-link {
  z-index: 3;
  color: #000000;
  background-color: rgba(0, 0, 0, 0.2);
  border-color: rgba(0, 0, 0, 0.2);
}

.page-item.disabled .page-link {
  color: #000000;
  pointer-events: none;
  cursor: auto;
  background-color: rgba(255, 255, 255, 0.08);
  border-color: #dee2e6;
}

.pagination-lg .page-link {
  padding: 0.75rem 1.5rem;
  font-size: 1.25rem;
  line-height: 1.5;
}

.pagination-lg .page-item:first-child .page-link {
  border-top-left-radius: 2px;
  border-bottom-left-radius: 2px;
}

.pagination-lg .page-item:last-child .page-link {
  border-top-right-radius: 2px;
  border-bottom-right-radius: 2px;
}

.pagination-sm .page-link {
  padding: 0.25rem 0.5rem;
  font-size: 0.875rem;
  line-height: 1.5;
}

.pagination-sm .page-item:first-child .page-link {
  border-top-left-radius: 2px;
  border-bottom-left-radius: 2px;
}

.pagination-sm .page-item:last-child .page-link {
  border-top-right-radius: 2px;
  border-bottom-right-radius: 2px;
}

.badge {
  display: inline-block;
  padding: 0.6em 0.75em;
  font-size: 95%;
  font-weight: 400;
  line-height: 1;
  text-align: center;
  white-space: nowrap;
  vertical-align: baseline;
  border-radius: 2px;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
  .badge {
    transition: none;
  }
}

a.badge:hover, a.badge:focus {
  text-decoration: none;
}

.badge:empty {
  display: none;
}

.btn .badge {
  position: relative;
  top: -1px;
}

.badge-pill {
  padding-right: 1em;
  padding-left: 1em;
  border-radius: 10rem;
}

.badge-primary {
  color: #ffffff;
  background-color: #007bff;
}

a.badge-primary:hover, a.badge-primary:focus {
  color: #ffffff;
  background-color: #0062cc;
}

a.badge-primary:focus, a.badge-primary.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.5);
}

.badge-secondary {
  color: #ffffff;
  background-color: #6c757d;
}

a.badge-secondary:hover, a.badge-secondary:focus {
  color: #ffffff;
  background-color: #545b62;
}

a.badge-secondary:focus, a.badge-secondary.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(108, 117, 125, 0.5);
}

.badge-success {
  color: #ffffff;
  background-color: #28a745;
}

a.badge-success:hover, a.badge-success:focus {
  color: #ffffff;
  background-color: #1e7e34;
}

a.badge-success:focus, a.badge-success.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.5);
}

.badge-info {
  color: #ffffff;
  background-color: #17a2b8;
}

a.badge-info:hover, a.badge-info:focus {
  color: #ffffff;
  background-color: #117a8b;
}

a.badge-info:focus, a.badge-info.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(23, 162, 184, 0.5);
}

.badge-warning {
  color: #212529;
  background-color: #ffc107;
}

a.badge-warning:hover, a.badge-warning:focus {
  color: #212529;
  background-color: #d39e00;
}

a.badge-warning:focus, a.badge-warning.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(255, 193, 7, 0.5);
}

.badge-danger {
  color: #ffffff;
  background-color: #dc3545;
}

a.badge-danger:hover, a.badge-danger:focus {
  color: #ffffff;
  background-color: #bd2130;
}

a.badge-danger:focus, a.badge-danger.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.5);
}

.badge-light {
  color: #212529;
  background-color: #f8f9fa;
}

a.badge-light:hover, a.badge-light:focus {
  color: #212529;
  background-color: #dae0e5;
}

a.badge-light:focus, a.badge-light.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(248, 249, 250, 0.5);
}

.badge-dark {
  color: #ffffff;
  background-color: #343a40;
}

a.badge-dark:hover, a.badge-dark:focus {
  color: #ffffff;
  background-color: #1d2124;
}

a.badge-dark:focus, a.badge-dark.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(52, 58, 64, 0.5);
}

.jumbotron {
  padding: 2rem 1rem;
  margin-bottom: 2rem;
  background-color: rgba(255, 255, 255, 0.08);
  border-radius: 2px;
}

@media (min-width: 576px) {
  .jumbotron {
    padding: 4rem 2rem;
  }
}

.jumbotron-fluid {
  padding-right: 0;
  padding-left: 0;
  border-radius: 0;
}

.alert {
  position: relative;
  padding: 1.5rem 2rem;
  margin-bottom: 1rem;
  border: 0 solid transparent;
  border-radius: 2px;
}

.alert-heading {
  color: inherit;
}

.alert-link {
  font-weight: normal;
}

.alert-dismissible {
  padding-right: 5.5rem;
}

.alert-dismissible .close {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 2;
  padding: 1.5rem 2rem;
  color: inherit;
}

.alert-primary {
  color: #cce5ff;
  background-color: #006ce0;
  border-color: #b8daff;
}

.alert-primary hr {
  border-top-color: #9fcdff;
}

.alert-primary .alert-link {
  color: #99cbff;
}

.alert-secondary {
  color: #e2e3e5;
  background-color: #5f676e;
  border-color: #d6d8db;
}

.alert-secondary hr {
  border-top-color: #c8cbcf;
}

.alert-secondary .alert-link {
  color: #c7c9cd;
}

.alert-success {
  color: #d4edda;
  background-color: #23933d;
  border-color: #c3e6cb;
}

.alert-success hr {
  border-top-color: #b1dfbb;
}

.alert-success .alert-link {
  color: #b0debb;
}

.alert-info {
  color: #d1ecf1;
  background-color: #148fa2;
  border-color: #bee5eb;
}

.alert-info hr {
  border-top-color: #abdde5;
}

.alert-info .alert-link {
  color: #aadce5;
}

.alert-warning {
  color: #fff3cd;
  background-color: #e0aa06;
  border-color: #ffeeba;
}

.alert-warning hr {
  border-top-color: #ffe8a1;
}

.alert-warning .alert-link {
  color: #ffe79a;
}

.alert-danger {
  color: #f8d7da;
  background-color: #c22f3d;
  border-color: #f5c6cb;
}

.alert-danger hr {
  border-top-color: #f1b0b7;
}

.alert-danger .alert-link {
  color: #f0acb2;
}

.alert-light {
  color: #fefefe;
  background-color: #dadbdc;
  border-color: #fdfdfe;
}

.alert-light hr {
  border-top-color: #ececf6;
}

.alert-light .alert-link {
  color: #e5e5e5;
}

.alert-dark {
  color: #d6d8d9;
  background-color: #2e3338;
  border-color: #c6c8ca;
}

.alert-dark hr {
  border-top-color: #b9bbbe;
}

.alert-dark .alert-link {
  color: #bcbfc0;
}

@keyframes progress-bar-stripes {
  from {
    background-position: 3px 0;
  }
  to {
    background-position: 0 0;
  }
}

.progress {
  display: flex;
  height: 3px;
  overflow: hidden;
  line-height: 0;
  font-size: 0.75rem;
  background-color: rgba(255, 255, 255, 0.1);
  border-radius: 2px;
}

.progress-bar {
  display: flex;
  flex-direction: column;
  justify-content: center;
  overflow: hidden;
  color: #ffffff;
  text-align: center;
  white-space: nowrap;
  background-color: #ffffff;
  transition: width 0.6s ease;
}

@media (prefers-reduced-motion: reduce) {
  .progress-bar {
    transition: none;
  }
}

.progress-bar-striped {
  background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-size: 3px 3px;
}

.progress-bar-animated {
  animation: 1s linear infinite progress-bar-stripes;
}

@media (prefers-reduced-motion: reduce) {
  .progress-bar-animated {
    animation: none;
  }
}

.media {
  display: flex;
  align-items: flex-start;
}

.media-body {
  flex: 1;
}

.list-group {
  display: flex;
  flex-direction: column;
  padding-left: 0;
  margin-bottom: 0;
  border-radius: 2px;
}

.list-group-item-action {
  width: 100%;
  color: #495057;
  text-align: inherit;
}

.list-group-item-action:hover, .list-group-item-action:focus {
  z-index: 1;
  color: #495057;
  text-decoration: none;
  background-color: rgba(255, 255, 255, 0.06);
}

.list-group-item-action:active {
  color: #000000;
  background-color: #e9ecef;
}

.list-group-item {
  position: relative;
  display: block;
  padding: 1rem 2rem;
  background-color: transparent;
  border: 0 solid rgba(0, 0, 0, 0.125);
}

.list-group-item:first-child {
  border-top-left-radius: inherit;
  border-top-right-radius: inherit;
}

.list-group-item:last-child {
  border-bottom-right-radius: inherit;
  border-bottom-left-radius: inherit;
}

.list-group-item.disabled, .list-group-item:disabled {
  color: #6c757d;
  pointer-events: none;
  background-color: transparent;
}

.list-group-item.active {
  z-index: 2;
  color: #ffffff;
  background-color: #007bff;
  border-color: #007bff;
}

.list-group-item + .list-group-item {
  border-top-width: 0;
}

.list-group-item + .list-group-item.active {
  margin-top: 0;
  border-top-width: 0;
}

.list-group-horizontal {
  flex-direction: row;
}

.list-group-horizontal > .list-group-item:first-child {
  border-bottom-left-radius: 2px;
  border-top-right-radius: 0;
}

.list-group-horizontal > .list-group-item:last-child {
  border-top-right-radius: 2px;
  border-bottom-left-radius: 0;
}

.list-group-horizontal > .list-group-item.active {
  margin-top: 0;
}

.list-group-horizontal > .list-group-item + .list-group-item {
  border-top-width: 0;
  border-left-width: 0;
}

.list-group-horizontal > .list-group-item + .list-group-item.active {
  margin-left: 0;
  border-left-width: 0;
}

@media (min-width: 576px) {
  .list-group-horizontal-sm {
    flex-direction: row;
  }
  .list-group-horizontal-sm > .list-group-item:first-child {
    border-bottom-left-radius: 2px;
    border-top-right-radius: 0;
  }
  .list-group-horizontal-sm > .list-group-item:last-child {
    border-top-right-radius: 2px;
    border-bottom-left-radius: 0;
  }
  .list-group-horizontal-sm > .list-group-item.active {
    margin-top: 0;
  }
  .list-group-horizontal-sm > .list-group-item + .list-group-item {
    border-top-width: 0;
    border-left-width: 0;
  }
  .list-group-horizontal-sm > .list-group-item + .list-group-item.active {
    margin-left: 0;
    border-left-width: 0;
  }
}

@media (min-width: 768px) {
  .list-group-horizontal-md {
    flex-direction: row;
  }
  .list-group-horizontal-md > .list-group-item:first-child {
    border-bottom-left-radius: 2px;
    border-top-right-radius: 0;
  }
  .list-group-horizontal-md > .list-group-item:last-child {
    border-top-right-radius: 2px;
    border-bottom-left-radius: 0;
  }
  .list-group-horizontal-md > .list-group-item.active {
    margin-top: 0;
  }
  .list-group-horizontal-md > .list-group-item + .list-group-item {
    border-top-width: 0;
    border-left-width: 0;
  }
  .list-group-horizontal-md > .list-group-item + .list-group-item.active {
    margin-left: 0;
    border-left-width: 0;
  }
}

@media (min-width: 992px) {
  .list-group-horizontal-lg {
    flex-direction: row;
  }
  .list-group-horizontal-lg > .list-group-item:first-child {
    border-bottom-left-radius: 2px;
    border-top-right-radius: 0;
  }
  .list-group-horizontal-lg > .list-group-item:last-child {
    border-top-right-radius: 2px;
    border-bottom-left-radius: 0;
  }
  .list-group-horizontal-lg > .list-group-item.active {
    margin-top: 0;
  }
  .list-group-horizontal-lg > .list-group-item + .list-group-item {
    border-top-width: 0;
    border-left-width: 0;
  }
  .list-group-horizontal-lg > .list-group-item + .list-group-item.active {
    margin-left: 0;
    border-left-width: 0;
  }
}

@media (min-width: 1200px) {
  .list-group-horizontal-xl {
    flex-direction: row;
  }
  .list-group-horizontal-xl > .list-group-item:first-child {
    border-bottom-left-radius: 2px;
    border-top-right-radius: 0;
  }
  .list-group-horizontal-xl > .list-group-item:last-child {
    border-top-right-radius: 2px;
    border-bottom-left-radius: 0;
  }
  .list-group-horizontal-xl > .list-group-item.active {
    margin-top: 0;
  }
  .list-group-horizontal-xl > .list-group-item + .list-group-item {
    border-top-width: 0;
    border-left-width: 0;
  }
  .list-group-horizontal-xl > .list-group-item + .list-group-item.active {
    margin-left: 0;
    border-left-width: 0;
  }
}

.list-group-flush {
  border-radius: 0;
}

.list-group-flush > .list-group-item {
  border-width: 0 0 0;
}

.list-group-flush > .list-group-item:last-child {
  border-bottom-width: 0;
}

.list-group-item-primary {
  color: #004085;
  background-color: #b8daff;
}

.list-group-item-primary.list-group-item-action:hover, .list-group-item-primary.list-group-item-action:focus {
  color: #004085;
  background-color: #9fcdff;
}

.list-group-item-primary.list-group-item-action.active {
  color: #ffffff;
  background-color: #004085;
  border-color: #004085;
}

.list-group-item-secondary {
  color: #383d41;
  background-color: #d6d8db;
}

.list-group-item-secondary.list-group-item-action:hover, .list-group-item-secondary.list-group-item-action:focus {
  color: #383d41;
  background-color: #c8cbcf;
}

.list-group-item-secondary.list-group-item-action.active {
  color: #ffffff;
  background-color: #383d41;
  border-color: #383d41;
}

.list-group-item-success {
  color: #155724;
  background-color: #c3e6cb;
}

.list-group-item-success.list-group-item-action:hover, .list-group-item-success.list-group-item-action:focus {
  color: #155724;
  background-color: #b1dfbb;
}

.list-group-item-success.list-group-item-action.active {
  color: #ffffff;
  background-color: #155724;
  border-color: #155724;
}

.list-group-item-info {
  color: #0c5460;
  background-color: #bee5eb;
}

.list-group-item-info.list-group-item-action:hover, .list-group-item-info.list-group-item-action:focus {
  color: #0c5460;
  background-color: #abdde5;
}

.list-group-item-info.list-group-item-action.active {
  color: #ffffff;
  background-color: #0c5460;
  border-color: #0c5460;
}

.list-group-item-warning {
  color: #856404;
  background-color: #ffeeba;
}

.list-group-item-warning.list-group-item-action:hover, .list-group-item-warning.list-group-item-action:focus {
  color: #856404;
  background-color: #ffe8a1;
}

.list-group-item-warning.list-group-item-action.active {
  color: #ffffff;
  background-color: #856404;
  border-color: #856404;
}

.list-group-item-danger {
  color: #721c24;
  background-color: #f5c6cb;
}

.list-group-item-danger.list-group-item-action:hover, .list-group-item-danger.list-group-item-action:focus {
  color: #721c24;
  background-color: #f1b0b7;
}

.list-group-item-danger.list-group-item-action.active {
  color: #ffffff;
  background-color: #721c24;
  border-color: #721c24;
}

.list-group-item-light {
  color: #818182;
  background-color: #fdfdfe;
}

.list-group-item-light.list-group-item-action:hover, .list-group-item-light.list-group-item-action:focus {
  color: #818182;
  background-color: #ececf6;
}

.list-group-item-light.list-group-item-action.active {
  color: #ffffff;
  background-color: #818182;
  border-color: #818182;
}

.list-group-item-dark {
  color: #1b1e21;
  background-color: #c6c8ca;
}

.list-group-item-dark.list-group-item-action:hover, .list-group-item-dark.list-group-item-action:focus {
  color: #1b1e21;
  background-color: #b9bbbe;
}

.list-group-item-dark.list-group-item-action.active {
  color: #ffffff;
  background-color: #1b1e21;
  border-color: #1b1e21;
}

.close {
  float: right;
  font-size: 1.5rem;
  font-weight: normal;
  line-height: 1;
  color: #000000;
  text-shadow: none;
  opacity: .5;
}

.close:hover {
  color: #000000;
  text-decoration: none;
}

.close:not(:disabled):not(.disabled):hover, .close:not(:disabled):not(.disabled):focus {
  opacity: .75;
}

button.close {
  padding: 0;
  background-color: transparent;
  border: 0;
}

a.close.disabled {
  pointer-events: none;
}

.toast {
  flex-basis: 350px;
  max-width: 350px;
  font-size: 0.9rem;
  background-color: rgba(255, 255, 255, 0.85);
  background-clip: padding-box;
  border: 0 solid rgba(0, 0, 0, 0.1);
  box-shadow: 0 0.25rem 0.75rem rgba(0, 0, 0, 0.1);
  opacity: 0;
  border-radius: 2px;
}

.toast:not(:last-child) {
  margin-bottom: 0.75rem;
}

.toast.showing {
  opacity: 1;
}

.toast.show {
  display: block;
  opacity: 1;
}

.toast.hide {
  display: none;
}

.toast-header {
  display: flex;
  align-items: center;
  padding: 0.5rem 0.75rem;
  color: #000000;
  background-color: rgba(255, 255, 255, 0.85);
  background-clip: padding-box;
  border-bottom: 0 solid rgba(0, 0, 0, 0.05);
  border-top-left-radius: 2px;
  border-top-right-radius: 2px;
}

.toast-body {
  padding: 0.75rem;
}

.modal-open {
  overflow: hidden;
}

.modal-open .modal {
  overflow-x: hidden;
  overflow-y: auto;
}

.modal {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1050;
  display: none;
  width: 100%;
  height: 100%;
  overflow: hidden;
  outline: 0;
}

.modal-dialog {
  position: relative;
  width: auto;
  margin: 0.5rem;
  pointer-events: none;
}

.modal.fade .modal-dialog {
  transition: transform 0.3s ease-out;
  transform: translate(0, -50px);
}

@media (prefers-reduced-motion: reduce) {
  .modal.fade .modal-dialog {
    transition: none;
  }
}

.modal.show .modal-dialog {
  transform: none;
}

.modal.modal-static .modal-dialog {
  transform: scale(1.02);
}

.modal-dialog-scrollable {
  display: flex;
  max-height: calc(100% - 1rem);
}

.modal-dialog-scrollable .modal-content {
  max-height: calc(100vh - 1rem);
  overflow: hidden;
}

.modal-dialog-scrollable .modal-header,
.modal-dialog-scrollable .modal-footer {
  flex-shrink: 0;
}

.modal-dialog-scrollable .modal-body {
  overflow-y: auto;
}

.modal-dialog-centered {
  display: flex;
  align-items: center;
  min-height: calc(100% - 1rem);
}

.modal-dialog-centered::before {
  display: block;
  height: calc(100vh - 1rem);
  height: min-content;
  content: "";
}

.modal-dialog-centered.modal-dialog-scrollable {
  flex-direction: column;
  justify-content: center;
  height: 100%;
}

.modal-dialog-centered.modal-dialog-scrollable .modal-content {
  max-height: none;
}

.modal-dialog-centered.modal-dialog-scrollable::before {
  content: none;
}

.modal-content {
  position: relative;
  display: flex;
  flex-direction: column;
  width: 100%;
  pointer-events: auto;
  background-color: rgba(0, 0, 0, 0.96);
  background-clip: padding-box;
  border: 0 solid rgba(0, 0, 0, 0.2);
  border-radius: 2px;
  outline: 0;
}

.modal-backdrop {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1040;
  width: 100vw;
  height: 100vh;
  background-color: #000000;
}

.modal-backdrop.fade {
  opacity: 0;
}

.modal-backdrop.show {
  opacity: 0.2;
}

.modal-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  padding: 25px 30px 0;
  border-bottom: 0 solid #dee2e6;
  border-top-left-radius: 2px;
  border-top-right-radius: 2px;
}

.modal-header .close {
  padding: 25px 30px 0;
  margin: -1rem -1rem -1rem auto;
}

.modal-title {
  margin-bottom: 0;
  line-height: 1.5;
}

.modal-body {
  position: relative;
  flex: 1 1 auto;
  padding: 25px 30px;
}

.modal-footer {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  padding: 25px 30px-0.25rem;
  border-top: 0 solid #dee2e6;
  border-bottom-right-radius: 2px;
  border-bottom-left-radius: 2px;
}

.modal-footer > * {
  margin: 0.25rem;
}

.modal-scrollbar-measure {
  position: absolute;
  top: -9999px;
  width: 50px;
  height: 50px;
  overflow: scroll;
}

@media (min-width: 576px) {
  .modal-dialog {
    max-width: 500px;
    margin: 1.75rem auto;
  }
  .modal-dialog-scrollable {
    max-height: calc(100% - 3.5rem);
  }
  .modal-dialog-scrollable .modal-content {
    max-height: calc(100vh - 3.5rem);
  }
  .modal-dialog-centered {
    min-height: calc(100% - 3.5rem);
  }
  .modal-dialog-centered::before {
    height: calc(100vh - 3.5rem);
    height: min-content;
  }
  .modal-sm {
    max-width: 300px;
  }
}

@media (min-width: 992px) {
  .modal-lg,
  .modal-xl {
    max-width: 800px;
  }
}

@media (min-width: 1200px) {
  .modal-xl {
    max-width: 1140px;
  }
}

.tooltip {
  position: absolute;
  z-index: 1070;
  display: block;
  margin: 0;
  font-family: "Nunito", sans-serif;
  font-style: normal;
  font-weight: 400;
  line-height: 1.5;
  text-align: left;
  text-align: start;
  text-decoration: none;
  text-shadow: none;
  text-transform: none;
  letter-spacing: normal;
  word-break: normal;
  word-spacing: normal;
  white-space: normal;
  line-break: auto;
  font-size: 0.875rem;
  word-wrap: break-word;
  opacity: 0;
}

.tooltip.show {
  opacity: 1;
}

.tooltip .arrow {
  position: absolute;
  display: block;
  width: 0.8rem;
  height: 0.4rem;
}

.tooltip .arrow::before {
  position: absolute;
  content: "";
  border-color: transparent;
  border-style: solid;
}

.bs-tooltip-top, .bs-tooltip-auto[x-placement^="top"] {
  padding: 0.4rem 0;
}

.bs-tooltip-top .arrow, .bs-tooltip-auto[x-placement^="top"] .arrow {
  bottom: 0;
}

.bs-tooltip-top .arrow::before, .bs-tooltip-auto[x-placement^="top"] .arrow::before {
  top: 0;
  border-width: 0.4rem 0.4rem 0;
  border-top-color: rgba(0, 0, 0, 0.96);
}

.bs-tooltip-right, .bs-tooltip-auto[x-placement^="right"] {
  padding: 0 0.4rem;
}

.bs-tooltip-right .arrow, .bs-tooltip-auto[x-placement^="right"] .arrow {
  left: 0;
  width: 0.4rem;
  height: 0.8rem;
}

.bs-tooltip-right .arrow::before, .bs-tooltip-auto[x-placement^="right"] .arrow::before {
  right: 0;
  border-width: 0.4rem 0.4rem 0.4rem 0;
  border-right-color: rgba(0, 0, 0, 0.96);
}

.bs-tooltip-bottom, .bs-tooltip-auto[x-placement^="bottom"] {
  padding: 0.4rem 0;
}

.bs-tooltip-bottom .arrow, .bs-tooltip-auto[x-placement^="bottom"] .arrow {
  top: 0;
}

.bs-tooltip-bottom .arrow::before, .bs-tooltip-auto[x-placement^="bottom"] .arrow::before {
  bottom: 0;
  border-width: 0 0.4rem 0.4rem;
  border-bottom-color: rgba(0, 0, 0, 0.96);
}

.bs-tooltip-left, .bs-tooltip-auto[x-placement^="left"] {
  padding: 0 0.4rem;
}

.bs-tooltip-left .arrow, .bs-tooltip-auto[x-placement^="left"] .arrow {
  right: 0;
  width: 0.4rem;
  height: 0.8rem;
}

.bs-tooltip-left .arrow::before, .bs-tooltip-auto[x-placement^="left"] .arrow::before {
  left: 0;
  border-width: 0.4rem 0 0.4rem 0.4rem;
  border-left-color: rgba(0, 0, 0, 0.96);
}

.tooltip-inner {
  max-width: 200px;
  padding: 0.7rem 1.1rem;
  color: #ffffff;
  text-align: center;
  background-color: rgba(0, 0, 0, 0.96);
  border-radius: 2px;
}

.popover {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1060;
  display: block;
  max-width: 276px;
  font-family: "Nunito", sans-serif;
  font-style: normal;
  font-weight: 400;
  line-height: 1.5;
  text-align: left;
  text-align: start;
  text-decoration: none;
  text-shadow: none;
  text-transform: none;
  letter-spacing: normal;
  word-break: normal;
  word-spacing: normal;
  white-space: normal;
  line-break: auto;
  font-size: 0.9rem;
  word-wrap: break-word;
  background-color: rgba(0, 0, 0, 0.96);
  background-clip: padding-box;
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 2px;
}

.popover .arrow {
  position: absolute;
  display: block;
  width: 1rem;
  height: 0.5rem;
  margin: 0 2px;
}

.popover .arrow::before, .popover .arrow::after {
  position: absolute;
  display: block;
  content: "";
  border-color: transparent;
  border-style: solid;
}

.bs-popover-top, .bs-popover-auto[x-placement^="top"] {
  margin-bottom: 0.5rem;
}

.bs-popover-top > .arrow, .bs-popover-auto[x-placement^="top"] > .arrow {
  bottom: calc(-0.5rem - 1px);
}

.bs-popover-top > .arrow::before, .bs-popover-auto[x-placement^="top"] > .arrow::before {
  bottom: 0;
  border-width: 0.5rem 0.5rem 0;
  border-top-color: transparent;
}

.bs-popover-top > .arrow::after, .bs-popover-auto[x-placement^="top"] > .arrow::after {
  bottom: 1px;
  border-width: 0.5rem 0.5rem 0;
  border-top-color: rgba(0, 0, 0, 0.96);
}

.bs-popover-right, .bs-popover-auto[x-placement^="right"] {
  margin-left: 0.5rem;
}

.bs-popover-right > .arrow, .bs-popover-auto[x-placement^="right"] > .arrow {
  left: calc(-0.5rem - 1px);
  width: 0.5rem;
  height: 1rem;
  margin: 2px 0;
}

.bs-popover-right > .arrow::before, .bs-popover-auto[x-placement^="right"] > .arrow::before {
  left: 0;
  border-width: 0.5rem 0.5rem 0.5rem 0;
  border-right-color: transparent;
}

.bs-popover-right > .arrow::after, .bs-popover-auto[x-placement^="right"] > .arrow::after {
  left: 1px;
  border-width: 0.5rem 0.5rem 0.5rem 0;
  border-right-color: rgba(0, 0, 0, 0.96);
}

.bs-popover-bottom, .bs-popover-auto[x-placement^="bottom"] {
  margin-top: 0.5rem;
}

.bs-popover-bottom > .arrow, .bs-popover-auto[x-placement^="bottom"] > .arrow {
  top: calc(-0.5rem - 1px);
}

.bs-popover-bottom > .arrow::before, .bs-popover-auto[x-placement^="bottom"] > .arrow::before {
  top: 0;
  border-width: 0 0.5rem 0.5rem 0.5rem;
  border-bottom-color: transparent;
}

.bs-popover-bottom > .arrow::after, .bs-popover-auto[x-placement^="bottom"] > .arrow::after {
  top: 1px;
  border-width: 0 0.5rem 0.5rem 0.5rem;
  border-bottom-color: rgba(0, 0, 0, 0.96);
}

.bs-popover-bottom .popover-header::before, .bs-popover-auto[x-placement^="bottom"] .popover-header::before {
  position: absolute;
  top: 0;
  left: 50%;
  display: block;
  width: 1rem;
  margin-left: -0.5rem;
  content: "";
  border-bottom: 1px solid transparent;
}

.bs-popover-left, .bs-popover-auto[x-placement^="left"] {
  margin-right: 0.5rem;
}

.bs-popover-left > .arrow, .bs-popover-auto[x-placement^="left"] > .arrow {
  right: calc(-0.5rem - 1px);
  width: 0.5rem;
  height: 1rem;
  margin: 2px 0;
}

.bs-popover-left > .arrow::before, .bs-popover-auto[x-placement^="left"] > .arrow::before {
  right: 0;
  border-width: 0.5rem 0 0.5rem 0.5rem;
  border-left-color: transparent;
}

.bs-popover-left > .arrow::after, .bs-popover-auto[x-placement^="left"] > .arrow::after {
  right: 1px;
  border-width: 0.5rem 0 0.5rem 0.5rem;
  border-left-color: rgba(0, 0, 0, 0.96);
}

.popover-header {
  padding: 1rem 1rem;
  margin-bottom: 0;
  font-size: 1rem;
  color: #000000;
  background-color: transparent;
  border-bottom: 1px solid rgba(0, 0, 0, 0);
  border-top-left-radius: 1px;
  border-top-right-radius: 1px;
}

.popover-header:empty {
  display: none;
}

.popover-body {
  padding: 1rem 1rem;
  color: #000000;
}

.carousel {
  position: relative;
}

.carousel.pointer-event {
  touch-action: pan-y;
}

.carousel-inner {
  position: relative;
  width: 100%;
  overflow: hidden;
}

.carousel-inner::after {
  display: block;
  clear: both;
  content: "";
}

.carousel-item {
  position: relative;
  display: none;
  float: left;
  width: 100%;
  margin-right: -100%;
  backface-visibility: hidden;
  transition: transform 0.6s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
  .carousel-item {
    transition: none;
  }
}

.carousel-item.active,
.carousel-item-next,
.carousel-item-prev {
  display: block;
}

.carousel-item-next:not(.carousel-item-left),
.active.carousel-item-right {
  transform: translateX(100%);
}

.carousel-item-prev:not(.carousel-item-right),
.active.carousel-item-left {
  transform: translateX(-100%);
}

.carousel-fade .carousel-item {
  opacity: 0;
  transition-property: opacity;
  transform: none;
}

.carousel-fade .carousel-item.active,
.carousel-fade .carousel-item-next.carousel-item-left,
.carousel-fade .carousel-item-prev.carousel-item-right {
  z-index: 1;
  opacity: 1;
}

.carousel-fade .active.carousel-item-left,
.carousel-fade .active.carousel-item-right {
  z-index: 0;
  opacity: 0;
  transition: opacity 0s 0.6s;
}

@media (prefers-reduced-motion: reduce) {
  .carousel-fade .active.carousel-item-left,
  .carousel-fade .active.carousel-item-right {
    transition: none;
  }
}

.carousel-control-prev,
.carousel-control-next {
  position: absolute;
  top: 0;
  bottom: 0;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 15%;
  color: #ffffff;
  text-align: center;
  opacity: 0.8;
  transition: opacity 0.15s ease;
}

@media (prefers-reduced-motion: reduce) {
  .carousel-control-prev,
  .carousel-control-next {
    transition: none;
  }
}

.carousel-control-prev:hover, .carousel-control-prev:focus,
.carousel-control-next:hover,
.carousel-control-next:focus {
  color: #ffffff;
  text-decoration: none;
  outline: 0;
  opacity: 0.9;
}

.carousel-control-prev {
  left: 0;
}

.carousel-control-next {
  right: 0;
}

.carousel-control-prev-icon,
.carousel-control-next-icon {
  display: inline-block;
  width: 40px;
  height: 40px;
  background: 50% / 100% 100% no-repeat;
}

.carousel-control-prev-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23ffffff' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath d='M5.25 0l-4 4 4 4 1.5-1.5L4.25 4l2.5-2.5L5.25 0z'/%3e%3c/svg%3e");
}

.carousel-control-next-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23ffffff' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath d='M2.75 0l-1.5 1.5L3.75 4l-2.5 2.5L2.75 8l4-4-4-4z'/%3e%3c/svg%3e");
}

.carousel-indicators {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 15;
  display: flex;
  justify-content: center;
  padding-left: 0;
  margin-right: 15%;
  margin-left: 15%;
  list-style: none;
}

.carousel-indicators li {
  box-sizing: content-box;
  flex: 0 1 auto;
  width: 30px;
  height: 3px;
  margin-right: 3px;
  margin-left: 3px;
  text-indent: -999px;
  cursor: pointer;
  background-color: #ffffff;
  background-clip: padding-box;
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent;
  opacity: .5;
  transition: opacity 0.6s ease;
}

@media (prefers-reduced-motion: reduce) {
  .carousel-indicators li {
    transition: none;
  }
}

.carousel-indicators .active {
  opacity: 1;
}

.carousel-caption {
  position: absolute;
  right: 15%;
  bottom: 20px;
  left: 15%;
  z-index: 10;
  padding-top: 20px;
  padding-bottom: 20px;
  color: #ffffff;
  text-align: center;
}

@keyframes spinner-border {
  to {
    transform: rotate(360deg);
  }
}

.spinner-border {
  display: inline-block;
  width: 2rem;
  height: 2rem;
  vertical-align: text-bottom;
  border: 0.25em solid currentColor;
  border-right-color: transparent;
  border-radius: 50%;
  animation: .75s linear infinite spinner-border;
}

.spinner-border-sm {
  width: 1rem;
  height: 1rem;
  border-width: 0.2em;
}

@keyframes spinner-grow {
  0% {
    transform: scale(0);
  }
  50% {
    opacity: 1;
    transform: none;
  }
}

.spinner-grow {
  display: inline-block;
  width: 2rem;
  height: 2rem;
  vertical-align: text-bottom;
  background-color: currentColor;
  border-radius: 50%;
  opacity: 0;
  animation: .75s linear infinite spinner-grow;
}

.spinner-grow-sm {
  width: 1rem;
  height: 1rem;
}

@media (prefers-reduced-motion: reduce) {
  .spinner-border,
  .spinner-grow {
    animation-duration: 1.5s;
  }
}

.align-baseline {
  vertical-align: baseline !important;
}

.align-top {
  vertical-align: top !important;
}

.align-middle {
  vertical-align: middle !important;
}

.align-bottom {
  vertical-align: bottom !important;
}

.align-text-bottom {
  vertical-align: text-bottom !important;
}

.align-text-top {
  vertical-align: text-top !important;
}

.bg-primary {
  background-color: #007bff !important;
}

a.bg-primary:hover, a.bg-primary:focus,
button.bg-primary:hover,
button.bg-primary:focus {
  background-color: #0062cc !important;
}

.bg-secondary {
  background-color: #6c757d !important;
}

a.bg-secondary:hover, a.bg-secondary:focus,
button.bg-secondary:hover,
button.bg-secondary:focus {
  background-color: #545b62 !important;
}

.bg-success {
  background-color: #28a745 !important;
}

a.bg-success:hover, a.bg-success:focus,
button.bg-success:hover,
button.bg-success:focus {
  background-color: #1e7e34 !important;
}

.bg-info {
  background-color: #17a2b8 !important;
}

a.bg-info:hover, a.bg-info:focus,
button.bg-info:hover,
button.bg-info:focus {
  background-color: #117a8b !important;
}

.bg-warning {
  background-color: #ffc107 !important;
}

a.bg-warning:hover, a.bg-warning:focus,
button.bg-warning:hover,
button.bg-warning:focus {
  background-color: #d39e00 !important;
}

.bg-danger {
  background-color: #dc3545 !important;
}

a.bg-danger:hover, a.bg-danger:focus,
button.bg-danger:hover,
button.bg-danger:focus {
  background-color: #bd2130 !important;
}

.bg-light {
  background-color: #f8f9fa !important;
}

a.bg-light:hover, a.bg-light:focus,
button.bg-light:hover,
button.bg-light:focus {
  background-color: #dae0e5 !important;
}

.bg-dark {
  background-color: #343a40 !important;
}

a.bg-dark:hover, a.bg-dark:focus,
button.bg-dark:hover,
button.bg-dark:focus {
  background-color: #1d2124 !important;
}

.bg-white {
  background-color: #ffffff !important;
}

.bg-transparent {
  background-color: transparent !important;
}

.border {
  border: 1px solid #dee2e6 !important;
}

.border-top {
  border-top: 1px solid #dee2e6 !important;
}

.border-right {
  border-right: 1px solid #dee2e6 !important;
}

.border-bottom {
  border-bottom: 1px solid #dee2e6 !important;
}

.border-left {
  border-left: 1px solid #dee2e6 !important;
}

.border-0 {
  border: 0 !important;
}

.border-top-0 {
  border-top: 0 !important;
}

.border-right-0 {
  border-right: 0 !important;
}

.border-bottom-0 {
  border-bottom: 0 !important;
}

.border-left-0 {
  border-left: 0 !important;
}

.border-primary {
  border-color: #007bff !important;
}

.border-secondary {
  border-color: #6c757d !important;
}

.border-success {
  border-color: #28a745 !important;
}

.border-info {
  border-color: #17a2b8 !important;
}

.border-warning {
  border-color: #ffc107 !important;
}

.border-danger {
  border-color: #dc3545 !important;
}

.border-light {
  border-color: #f8f9fa !important;
}

.border-dark {
  border-color: #343a40 !important;
}

.border-white {
  border-color: #ffffff !important;
}

.rounded-sm {
  border-radius: 2px !important;
}

.rounded {
  border-radius: 2px !important;
}

.rounded-top {
  border-top-left-radius: 2px !important;
  border-top-right-radius: 2px !important;
}

.rounded-right {
  border-top-right-radius: 2px !important;
  border-bottom-right-radius: 2px !important;
}

.rounded-bottom {
  border-bottom-right-radius: 2px !important;
  border-bottom-left-radius: 2px !important;
}

.rounded-left {
  border-top-left-radius: 2px !important;
  border-bottom-left-radius: 2px !important;
}

.rounded-lg {
  border-radius: 2px !important;
}

.rounded-circle {
  border-radius: 50% !important;
}

.rounded-pill {
  border-radius: 50rem !important;
}

.rounded-0 {
  border-radius: 0 !important;
}

.clearfix::after {
  display: block;
  clear: both;
  content: "";
}

.d-none {
  display: none !important;
}

.d-inline {
  display: inline !important;
}

.d-inline-block {
  display: inline-block !important;
}

.d-block {
  display: block !important;
}

.d-table {
  display: table !important;
}

.d-table-row {
  display: table-row !important;
}

.d-table-cell {
  display: table-cell !important;
}

.d-flex {
  display: flex !important;
}

.d-inline-flex {
  display: inline-flex !important;
}

@media (min-width: 576px) {
  .d-sm-none {
    display: none !important;
  }
  .d-sm-inline {
    display: inline !important;
  }
  .d-sm-inline-block {
    display: inline-block !important;
  }
  .d-sm-block {
    display: block !important;
  }
  .d-sm-table {
    display: table !important;
  }
  .d-sm-table-row {
    display: table-row !important;
  }
  .d-sm-table-cell {
    display: table-cell !important;
  }
  .d-sm-flex {
    display: flex !important;
  }
  .d-sm-inline-flex {
    display: inline-flex !important;
  }
}

@media (min-width: 768px) {
  .d-md-none {
    display: none !important;
  }
  .d-md-inline {
    display: inline !important;
  }
  .d-md-inline-block {
    display: inline-block !important;
  }
  .d-md-block {
    display: block !important;
  }
  .d-md-table {
    display: table !important;
  }
  .d-md-table-row {
    display: table-row !important;
  }
  .d-md-table-cell {
    display: table-cell !important;
  }
  .d-md-flex {
    display: flex !important;
  }
  .d-md-inline-flex {
    display: inline-flex !important;
  }
}

@media (min-width: 992px) {
  .d-lg-none {
    display: none !important;
  }
  .d-lg-inline {
    display: inline !important;
  }
  .d-lg-inline-block {
    display: inline-block !important;
  }
  .d-lg-block {
    display: block !important;
  }
  .d-lg-table {
    display: table !important;
  }
  .d-lg-table-row {
    display: table-row !important;
  }
  .d-lg-table-cell {
    display: table-cell !important;
  }
  .d-lg-flex {
    display: flex !important;
  }
  .d-lg-inline-flex {
    display: inline-flex !important;
  }
}

@media (min-width: 1200px) {
  .d-xl-none {
    display: none !important;
  }
  .d-xl-inline {
    display: inline !important;
  }
  .d-xl-inline-block {
    display: inline-block !important;
  }
  .d-xl-block {
    display: block !important;
  }
  .d-xl-table {
    display: table !important;
  }
  .d-xl-table-row {
    display: table-row !important;
  }
  .d-xl-table-cell {
    display: table-cell !important;
  }
  .d-xl-flex {
    display: flex !important;
  }
  .d-xl-inline-flex {
    display: inline-flex !important;
  }
}

@media print {
  .d-print-none {
    display: none !important;
  }
  .d-print-inline {
    display: inline !important;
  }
  .d-print-inline-block {
    display: inline-block !important;
  }
  .d-print-block {
    display: block !important;
  }
  .d-print-table {
    display: table !important;
  }
  .d-print-table-row {
    display: table-row !important;
  }
  .d-print-table-cell {
    display: table-cell !important;
  }
  .d-print-flex {
    display: flex !important;
  }
  .d-print-inline-flex {
    display: inline-flex !important;
  }
}

.embed-responsive {
  position: relative;
  display: block;
  width: 100%;
  padding: 0;
  overflow: hidden;
}

.embed-responsive::before {
  display: block;
  content: "";
}

.embed-responsive .embed-responsive-item,
.embed-responsive iframe,
.embed-responsive embed,
.embed-responsive object,
.embed-responsive video {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

.embed-responsive-21by9::before {
  padding-top: 42.85714%;
}

.embed-responsive-16by9::before {
  padding-top: 56.25%;
}

.embed-responsive-4by3::before {
  padding-top: 75%;
}

.embed-responsive-1by1::before {
  padding-top: 100%;
}

.flex-row {
  flex-direction: row !important;
}

.flex-column {
  flex-direction: column !important;
}

.flex-row-reverse {
  flex-direction: row-reverse !important;
}

.flex-column-reverse {
  flex-direction: column-reverse !important;
}

.flex-wrap {
  flex-wrap: wrap !important;
}

.flex-nowrap {
  flex-wrap: nowrap !important;
}

.flex-wrap-reverse {
  flex-wrap: wrap-reverse !important;
}

.flex-fill {
  flex: 1 1 auto !important;
}

.flex-grow-0 {
  flex-grow: 0 !important;
}

.flex-grow-1 {
  flex-grow: 1 !important;
}

.flex-shrink-0 {
  flex-shrink: 0 !important;
}

.flex-shrink-1 {
  flex-shrink: 1 !important;
}

.justify-content-start {
  justify-content: flex-start !important;
}

.justify-content-end {
  justify-content: flex-end !important;
}

.justify-content-center {
  justify-content: center !important;
}

.justify-content-between {
  justify-content: space-between !important;
}

.justify-content-around {
  justify-content: space-around !important;
}

.align-items-start {
  align-items: flex-start !important;
}

.align-items-end {
  align-items: flex-end !important;
}

.align-items-center {
  align-items: center !important;
}

.align-items-baseline {
  align-items: baseline !important;
}

.align-items-stretch {
  align-items: stretch !important;
}

.align-content-start {
  align-content: flex-start !important;
}

.align-content-end {
  align-content: flex-end !important;
}

.align-content-center {
  align-content: center !important;
}

.align-content-between {
  align-content: space-between !important;
}

.align-content-around {
  align-content: space-around !important;
}

.align-content-stretch {
  align-content: stretch !important;
}

.align-self-auto {
  align-self: auto !important;
}

.align-self-start {
  align-self: flex-start !important;
}

.align-self-end {
  align-self: flex-end !important;
}

.align-self-center {
  align-self: center !important;
}

.align-self-baseline {
  align-self: baseline !important;
}

.align-self-stretch {
  align-self: stretch !important;
}

@media (min-width: 576px) {
  .flex-sm-row {
    flex-direction: row !important;
  }
  .flex-sm-column {
    flex-direction: column !important;
  }
  .flex-sm-row-reverse {
    flex-direction: row-reverse !important;
  }
  .flex-sm-column-reverse {
    flex-direction: column-reverse !important;
  }
  .flex-sm-wrap {
    flex-wrap: wrap !important;
  }
  .flex-sm-nowrap {
    flex-wrap: nowrap !important;
  }
  .flex-sm-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }
  .flex-sm-fill {
    flex: 1 1 auto !important;
  }
  .flex-sm-grow-0 {
    flex-grow: 0 !important;
  }
  .flex-sm-grow-1 {
    flex-grow: 1 !important;
  }
  .flex-sm-shrink-0 {
    flex-shrink: 0 !important;
  }
  .flex-sm-shrink-1 {
    flex-shrink: 1 !important;
  }
  .justify-content-sm-start {
    justify-content: flex-start !important;
  }
  .justify-content-sm-end {
    justify-content: flex-end !important;
  }
  .justify-content-sm-center {
    justify-content: center !important;
  }
  .justify-content-sm-between {
    justify-content: space-between !important;
  }
  .justify-content-sm-around {
    justify-content: space-around !important;
  }
  .align-items-sm-start {
    align-items: flex-start !important;
  }
  .align-items-sm-end {
    align-items: flex-end !important;
  }
  .align-items-sm-center {
    align-items: center !important;
  }
  .align-items-sm-baseline {
    align-items: baseline !important;
  }
  .align-items-sm-stretch {
    align-items: stretch !important;
  }
  .align-content-sm-start {
    align-content: flex-start !important;
  }
  .align-content-sm-end {
    align-content: flex-end !important;
  }
  .align-content-sm-center {
    align-content: center !important;
  }
  .align-content-sm-between {
    align-content: space-between !important;
  }
  .align-content-sm-around {
    align-content: space-around !important;
  }
  .align-content-sm-stretch {
    align-content: stretch !important;
  }
  .align-self-sm-auto {
    align-self: auto !important;
  }
  .align-self-sm-start {
    align-self: flex-start !important;
  }
  .align-self-sm-end {
    align-self: flex-end !important;
  }
  .align-self-sm-center {
    align-self: center !important;
  }
  .align-self-sm-baseline {
    align-self: baseline !important;
  }
  .align-self-sm-stretch {
    align-self: stretch !important;
  }
}

@media (min-width: 768px) {
  .flex-md-row {
    flex-direction: row !important;
  }
  .flex-md-column {
    flex-direction: column !important;
  }
  .flex-md-row-reverse {
    flex-direction: row-reverse !important;
  }
  .flex-md-column-reverse {
    flex-direction: column-reverse !important;
  }
  .flex-md-wrap {
    flex-wrap: wrap !important;
  }
  .flex-md-nowrap {
    flex-wrap: nowrap !important;
  }
  .flex-md-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }
  .flex-md-fill {
    flex: 1 1 auto !important;
  }
  .flex-md-grow-0 {
    flex-grow: 0 !important;
  }
  .flex-md-grow-1 {
    flex-grow: 1 !important;
  }
  .flex-md-shrink-0 {
    flex-shrink: 0 !important;
  }
  .flex-md-shrink-1 {
    flex-shrink: 1 !important;
  }
  .justify-content-md-start {
    justify-content: flex-start !important;
  }
  .justify-content-md-end {
    justify-content: flex-end !important;
  }
  .justify-content-md-center {
    justify-content: center !important;
  }
  .justify-content-md-between {
    justify-content: space-between !important;
  }
  .justify-content-md-around {
    justify-content: space-around !important;
  }
  .align-items-md-start {
    align-items: flex-start !important;
  }
  .align-items-md-end {
    align-items: flex-end !important;
  }
  .align-items-md-center {
    align-items: center !important;
  }
  .align-items-md-baseline {
    align-items: baseline !important;
  }
  .align-items-md-stretch {
    align-items: stretch !important;
  }
  .align-content-md-start {
    align-content: flex-start !important;
  }
  .align-content-md-end {
    align-content: flex-end !important;
  }
  .align-content-md-center {
    align-content: center !important;
  }
  .align-content-md-between {
    align-content: space-between !important;
  }
  .align-content-md-around {
    align-content: space-around !important;
  }
  .align-content-md-stretch {
    align-content: stretch !important;
  }
  .align-self-md-auto {
    align-self: auto !important;
  }
  .align-self-md-start {
    align-self: flex-start !important;
  }
  .align-self-md-end {
    align-self: flex-end !important;
  }
  .align-self-md-center {
    align-self: center !important;
  }
  .align-self-md-baseline {
    align-self: baseline !important;
  }
  .align-self-md-stretch {
    align-self: stretch !important;
  }
}

@media (min-width: 992px) {
  .flex-lg-row {
    flex-direction: row !important;
  }
  .flex-lg-column {
    flex-direction: column !important;
  }
  .flex-lg-row-reverse {
    flex-direction: row-reverse !important;
  }
  .flex-lg-column-reverse {
    flex-direction: column-reverse !important;
  }
  .flex-lg-wrap {
    flex-wrap: wrap !important;
  }
  .flex-lg-nowrap {
    flex-wrap: nowrap !important;
  }
  .flex-lg-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }
  .flex-lg-fill {
    flex: 1 1 auto !important;
  }
  .flex-lg-grow-0 {
    flex-grow: 0 !important;
  }
  .flex-lg-grow-1 {
    flex-grow: 1 !important;
  }
  .flex-lg-shrink-0 {
    flex-shrink: 0 !important;
  }
  .flex-lg-shrink-1 {
    flex-shrink: 1 !important;
  }
  .justify-content-lg-start {
    justify-content: flex-start !important;
  }
  .justify-content-lg-end {
    justify-content: flex-end !important;
  }
  .justify-content-lg-center {
    justify-content: center !important;
  }
  .justify-content-lg-between {
    justify-content: space-between !important;
  }
  .justify-content-lg-around {
    justify-content: space-around !important;
  }
  .align-items-lg-start {
    align-items: flex-start !important;
  }
  .align-items-lg-end {
    align-items: flex-end !important;
  }
  .align-items-lg-center {
    align-items: center !important;
  }
  .align-items-lg-baseline {
    align-items: baseline !important;
  }
  .align-items-lg-stretch {
    align-items: stretch !important;
  }
  .align-content-lg-start {
    align-content: flex-start !important;
  }
  .align-content-lg-end {
    align-content: flex-end !important;
  }
  .align-content-lg-center {
    align-content: center !important;
  }
  .align-content-lg-between {
    align-content: space-between !important;
  }
  .align-content-lg-around {
    align-content: space-around !important;
  }
  .align-content-lg-stretch {
    align-content: stretch !important;
  }
  .align-self-lg-auto {
    align-self: auto !important;
  }
  .align-self-lg-start {
    align-self: flex-start !important;
  }
  .align-self-lg-end {
    align-self: flex-end !important;
  }
  .align-self-lg-center {
    align-self: center !important;
  }
  .align-self-lg-baseline {
    align-self: baseline !important;
  }
  .align-self-lg-stretch {
    align-self: stretch !important;
  }
}

@media (min-width: 1200px) {
  .flex-xl-row {
    flex-direction: row !important;
  }
  .flex-xl-column {
    flex-direction: column !important;
  }
  .flex-xl-row-reverse {
    flex-direction: row-reverse !important;
  }
  .flex-xl-column-reverse {
    flex-direction: column-reverse !important;
  }
  .flex-xl-wrap {
    flex-wrap: wrap !important;
  }
  .flex-xl-nowrap {
    flex-wrap: nowrap !important;
  }
  .flex-xl-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }
  .flex-xl-fill {
    flex: 1 1 auto !important;
  }
  .flex-xl-grow-0 {
    flex-grow: 0 !important;
  }
  .flex-xl-grow-1 {
    flex-grow: 1 !important;
  }
  .flex-xl-shrink-0 {
    flex-shrink: 0 !important;
  }
  .flex-xl-shrink-1 {
    flex-shrink: 1 !important;
  }
  .justify-content-xl-start {
    justify-content: flex-start !important;
  }
  .justify-content-xl-end {
    justify-content: flex-end !important;
  }
  .justify-content-xl-center {
    justify-content: center !important;
  }
  .justify-content-xl-between {
    justify-content: space-between !important;
  }
  .justify-content-xl-around {
    justify-content: space-around !important;
  }
  .align-items-xl-start {
    align-items: flex-start !important;
  }
  .align-items-xl-end {
    align-items: flex-end !important;
  }
  .align-items-xl-center {
    align-items: center !important;
  }
  .align-items-xl-baseline {
    align-items: baseline !important;
  }
  .align-items-xl-stretch {
    align-items: stretch !important;
  }
  .align-content-xl-start {
    align-content: flex-start !important;
  }
  .align-content-xl-end {
    align-content: flex-end !important;
  }
  .align-content-xl-center {
    align-content: center !important;
  }
  .align-content-xl-between {
    align-content: space-between !important;
  }
  .align-content-xl-around {
    align-content: space-around !important;
  }
  .align-content-xl-stretch {
    align-content: stretch !important;
  }
  .align-self-xl-auto {
    align-self: auto !important;
  }
  .align-self-xl-start {
    align-self: flex-start !important;
  }
  .align-self-xl-end {
    align-self: flex-end !important;
  }
  .align-self-xl-center {
    align-self: center !important;
  }
  .align-self-xl-baseline {
    align-self: baseline !important;
  }
  .align-self-xl-stretch {
    align-self: stretch !important;
  }
}

.float-left {
  float: left !important;
}

.float-right {
  float: right !important;
}

.float-none {
  float: none !important;
}

@media (min-width: 576px) {
  .float-sm-left {
    float: left !important;
  }
  .float-sm-right {
    float: right !important;
  }
  .float-sm-none {
    float: none !important;
  }
}

@media (min-width: 768px) {
  .float-md-left {
    float: left !important;
  }
  .float-md-right {
    float: right !important;
  }
  .float-md-none {
    float: none !important;
  }
}

@media (min-width: 992px) {
  .float-lg-left {
    float: left !important;
  }
  .float-lg-right {
    float: right !important;
  }
  .float-lg-none {
    float: none !important;
  }
}

@media (min-width: 1200px) {
  .float-xl-left {
    float: left !important;
  }
  .float-xl-right {
    float: right !important;
  }
  .float-xl-none {
    float: none !important;
  }
}

.user-select-all {
  user-select: all !important;
}

.user-select-auto {
  user-select: auto !important;
}

.user-select-none {
  user-select: none !important;
}

.overflow-auto {
  overflow: auto !important;
}

.overflow-hidden {
  overflow: hidden !important;
}

.position-static {
  position: static !important;
}

.position-relative {
  position: relative !important;
}

.position-absolute {
  position: absolute !important;
}

.position-fixed {
  position: fixed !important;
}

.position-sticky {
  position: sticky !important;
}

.fixed-top {
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  z-index: 1030;
}

.fixed-bottom {
  position: fixed;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1030;
}

@supports (position: sticky) {
  .sticky-top {
    position: sticky;
    top: 0;
    z-index: 1020;
  }
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.sr-only-focusable:active, .sr-only-focusable:focus {
  position: static;
  width: auto;
  height: auto;
  overflow: visible;
  clip: auto;
  white-space: normal;
}

.shadow-sm {
  box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075) !important;
}

.shadow {
  box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;
}

.shadow-lg {
  box-shadow: 0 1rem 3rem rgba(0, 0, 0, 0.175) !important;
}

.shadow-none {
  box-shadow: none !important;
}

.w-25 {
  width: 25% !important;
}

.w-50 {
  width: 50% !important;
}

.w-75 {
  width: 75% !important;
}

.w-100 {
  width: 100% !important;
}

.w-auto {
  width: auto !important;
}

.h-25 {
  height: 25% !important;
}

.h-50 {
  height: 50% !important;
}

.h-75 {
  height: 75% !important;
}

.h-100 {
  height: 100% !important;
}

.h-auto {
  height: auto !important;
}

.mw-100 {
  max-width: 100% !important;
}

.mh-100 {
  max-height: 100% !important;
}

.min-vw-100 {
  min-width: 100vw !important;
}

.min-vh-100 {
  min-height: 100vh !important;
}

.vw-100 {
  width: 100vw !important;
}

.vh-100 {
  height: 100vh !important;
}

.m-0 {
  margin: 0 !important;
}

.mt-0,
.my-0 {
  margin-top: 0 !important;
}

.mr-0,
.mx-0 {
  margin-right: 0 !important;
}

.mb-0,
.my-0 {
  margin-bottom: 0 !important;
}

.ml-0,
.mx-0 {
  margin-left: 0 !important;
}

.m-1 {
  margin: 0.25rem !important;
}

.mt-1,
.my-1 {
  margin-top: 0.25rem !important;
}

.mr-1,
.mx-1 {
  margin-right: 0.25rem !important;
}

.mb-1,
.my-1 {
  margin-bottom: 0.25rem !important;
}

.ml-1,
.mx-1 {
  margin-left: 0.25rem !important;
}

.m-2 {
  margin: 0.5rem !important;
}

.mt-2,
.my-2 {
  margin-top: 0.5rem !important;
}

.mr-2,
.mx-2 {
  margin-right: 0.5rem !important;
}

.mb-2,
.my-2 {
  margin-bottom: 0.5rem !important;
}

.ml-2,
.mx-2 {
  margin-left: 0.5rem !important;
}

.m-3 {
  margin: 1rem !important;
}

.mt-3,
.my-3 {
  margin-top: 1rem !important;
}

.mr-3,
.mx-3 {
  margin-right: 1rem !important;
}

.mb-3,
.my-3 {
  margin-bottom: 1rem !important;
}

.ml-3,
.mx-3 {
  margin-left: 1rem !important;
}

.m-4 {
  margin: 1.5rem !important;
}

.mt-4,
.my-4 {
  margin-top: 1.5rem !important;
}

.mr-4,
.mx-4 {
  margin-right: 1.5rem !important;
}

.mb-4,
.my-4 {
  margin-bottom: 1.5rem !important;
}

.ml-4,
.mx-4 {
  margin-left: 1.5rem !important;
}

.m-5 {
  margin: 3rem !important;
}

.mt-5,
.my-5 {
  margin-top: 3rem !important;
}

.mr-5,
.mx-5 {
  margin-right: 3rem !important;
}

.mb-5,
.my-5 {
  margin-bottom: 3rem !important;
}

.ml-5,
.mx-5 {
  margin-left: 3rem !important;
}

.p-0 {
  padding: 0 !important;
}

.pt-0,
.py-0 {
  padding-top: 0 !important;
}

.pr-0,
.px-0 {
  padding-right: 0 !important;
}

.pb-0,
.py-0 {
  padding-bottom: 0 !important;
}

.pl-0,
.px-0 {
  padding-left: 0 !important;
}

.p-1 {
  padding: 0.25rem !important;
}

.pt-1,
.py-1 {
  padding-top: 0.25rem !important;
}

.pr-1,
.px-1 {
  padding-right: 0.25rem !important;
}

.pb-1,
.py-1 {
  padding-bottom: 0.25rem !important;
}

.pl-1,
.px-1 {
  padding-left: 0.25rem !important;
}

.p-2 {
  padding: 0.5rem !important;
}

.pt-2,
.py-2 {
  padding-top: 0.5rem !important;
}

.pr-2,
.px-2 {
  padding-right: 0.5rem !important;
}

.pb-2,
.py-2 {
  padding-bottom: 0.5rem !important;
}

.pl-2,
.px-2 {
  padding-left: 0.5rem !important;
}

.p-3 {
  padding: 1rem !important;
}

.pt-3,
.py-3 {
  padding-top: 1rem !important;
}

.pr-3,
.px-3 {
  padding-right: 1rem !important;
}

.pb-3,
.py-3 {
  padding-bottom: 1rem !important;
}

.pl-3,
.px-3 {
  padding-left: 1rem !important;
}

.p-4 {
  padding: 1.5rem !important;
}

.pt-4,
.py-4 {
  padding-top: 1.5rem !important;
}

.pr-4,
.px-4 {
  padding-right: 1.5rem !important;
}

.pb-4,
.py-4 {
  padding-bottom: 1.5rem !important;
}

.pl-4,
.px-4 {
  padding-left: 1.5rem !important;
}

.p-5 {
  padding: 3rem !important;
}

.pt-5,
.py-5 {
  padding-top: 3rem !important;
}

.pr-5,
.px-5 {
  padding-right: 3rem !important;
}

.pb-5,
.py-5 {
  padding-bottom: 3rem !important;
}

.pl-5,
.px-5 {
  padding-left: 3rem !important;
}

.m-n1 {
  margin: -0.25rem !important;
}

.mt-n1,
.my-n1 {
  margin-top: -0.25rem !important;
}

.mr-n1,
.mx-n1 {
  margin-right: -0.25rem !important;
}

.mb-n1,
.my-n1 {
  margin-bottom: -0.25rem !important;
}

.ml-n1,
.mx-n1 {
  margin-left: -0.25rem !important;
}

.m-n2 {
  margin: -0.5rem !important;
}

.mt-n2,
.my-n2 {
  margin-top: -0.5rem !important;
}

.mr-n2,
.mx-n2 {
  margin-right: -0.5rem !important;
}

.mb-n2,
.my-n2 {
  margin-bottom: -0.5rem !important;
}

.ml-n2,
.mx-n2 {
  margin-left: -0.5rem !important;
}

.m-n3 {
  margin: -1rem !important;
}

.mt-n3,
.my-n3 {
  margin-top: -1rem !important;
}

.mr-n3,
.mx-n3 {
  margin-right: -1rem !important;
}

.mb-n3,
.my-n3 {
  margin-bottom: -1rem !important;
}

.ml-n3,
.mx-n3 {
  margin-left: -1rem !important;
}

.m-n4 {
  margin: -1.5rem !important;
}

.mt-n4,
.my-n4 {
  margin-top: -1.5rem !important;
}

.mr-n4,
.mx-n4 {
  margin-right: -1.5rem !important;
}

.mb-n4,
.my-n4 {
  margin-bottom: -1.5rem !important;
}

.ml-n4,
.mx-n4 {
  margin-left: -1.5rem !important;
}

.m-n5 {
  margin: -3rem !important;
}

.mt-n5,
.my-n5 {
  margin-top: -3rem !important;
}

.mr-n5,
.mx-n5 {
  margin-right: -3rem !important;
}

.mb-n5,
.my-n5 {
  margin-bottom: -3rem !important;
}

.ml-n5,
.mx-n5 {
  margin-left: -3rem !important;
}

.m-auto {
  margin: auto !important;
}

.mt-auto,
.my-auto {
  margin-top: auto !important;
}

.mr-auto,
.mx-auto {
  margin-right: auto !important;
}

.mb-auto,
.my-auto {
  margin-bottom: auto !important;
}

.ml-auto,
.mx-auto {
  margin-left: auto !important;
}

@media (min-width: 576px) {
  .m-sm-0 {
    margin: 0 !important;
  }
  .mt-sm-0,
  .my-sm-0 {
    margin-top: 0 !important;
  }
  .mr-sm-0,
  .mx-sm-0 {
    margin-right: 0 !important;
  }
  .mb-sm-0,
  .my-sm-0 {
    margin-bottom: 0 !important;
  }
  .ml-sm-0,
  .mx-sm-0 {
    margin-left: 0 !important;
  }
  .m-sm-1 {
    margin: 0.25rem !important;
  }
  .mt-sm-1,
  .my-sm-1 {
    margin-top: 0.25rem !important;
  }
  .mr-sm-1,
  .mx-sm-1 {
    margin-right: 0.25rem !important;
  }
  .mb-sm-1,
  .my-sm-1 {
    margin-bottom: 0.25rem !important;
  }
  .ml-sm-1,
  .mx-sm-1 {
    margin-left: 0.25rem !important;
  }
  .m-sm-2 {
    margin: 0.5rem !important;
  }
  .mt-sm-2,
  .my-sm-2 {
    margin-top: 0.5rem !important;
  }
  .mr-sm-2,
  .mx-sm-2 {
    margin-right: 0.5rem !important;
  }
  .mb-sm-2,
  .my-sm-2 {
    margin-bottom: 0.5rem !important;
  }
  .ml-sm-2,
  .mx-sm-2 {
    margin-left: 0.5rem !important;
  }
  .m-sm-3 {
    margin: 1rem !important;
  }
  .mt-sm-3,
  .my-sm-3 {
    margin-top: 1rem !important;
  }
  .mr-sm-3,
  .mx-sm-3 {
    margin-right: 1rem !important;
  }
  .mb-sm-3,
  .my-sm-3 {
    margin-bottom: 1rem !important;
  }
  .ml-sm-3,
  .mx-sm-3 {
    margin-left: 1rem !important;
  }
  .m-sm-4 {
    margin: 1.5rem !important;
  }
  .mt-sm-4,
  .my-sm-4 {
    margin-top: 1.5rem !important;
  }
  .mr-sm-4,
  .mx-sm-4 {
    margin-right: 1.5rem !important;
  }
  .mb-sm-4,
  .my-sm-4 {
    margin-bottom: 1.5rem !important;
  }
  .ml-sm-4,
  .mx-sm-4 {
    margin-left: 1.5rem !important;
  }
  .m-sm-5 {
    margin: 3rem !important;
  }
  .mt-sm-5,
  .my-sm-5 {
    margin-top: 3rem !important;
  }
  .mr-sm-5,
  .mx-sm-5 {
    margin-right: 3rem !important;
  }
  .mb-sm-5,
  .my-sm-5 {
    margin-bottom: 3rem !important;
  }
  .ml-sm-5,
  .mx-sm-5 {
    margin-left: 3rem !important;
  }
  .p-sm-0 {
    padding: 0 !important;
  }
  .pt-sm-0,
  .py-sm-0 {
    padding-top: 0 !important;
  }
  .pr-sm-0,
  .px-sm-0 {
    padding-right: 0 !important;
  }
  .pb-sm-0,
  .py-sm-0 {
    padding-bottom: 0 !important;
  }
  .pl-sm-0,
  .px-sm-0 {
    padding-left: 0 !important;
  }
  .p-sm-1 {
    padding: 0.25rem !important;
  }
  .pt-sm-1,
  .py-sm-1 {
    padding-top: 0.25rem !important;
  }
  .pr-sm-1,
  .px-sm-1 {
    padding-right: 0.25rem !important;
  }
  .pb-sm-1,
  .py-sm-1 {
    padding-bottom: 0.25rem !important;
  }
  .pl-sm-1,
  .px-sm-1 {
    padding-left: 0.25rem !important;
  }
  .p-sm-2 {
    padding: 0.5rem !important;
  }
  .pt-sm-2,
  .py-sm-2 {
    padding-top: 0.5rem !important;
  }
  .pr-sm-2,
  .px-sm-2 {
    padding-right: 0.5rem !important;
  }
  .pb-sm-2,
  .py-sm-2 {
    padding-bottom: 0.5rem !important;
  }
  .pl-sm-2,
  .px-sm-2 {
    padding-left: 0.5rem !important;
  }
  .p-sm-3 {
    padding: 1rem !important;
  }
  .pt-sm-3,
  .py-sm-3 {
    padding-top: 1rem !important;
  }
  .pr-sm-3,
  .px-sm-3 {
    padding-right: 1rem !important;
  }
  .pb-sm-3,
  .py-sm-3 {
    padding-bottom: 1rem !important;
  }
  .pl-sm-3,
  .px-sm-3 {
    padding-left: 1rem !important;
  }
  .p-sm-4 {
    padding: 1.5rem !important;
  }
  .pt-sm-4,
  .py-sm-4 {
    padding-top: 1.5rem !important;
  }
  .pr-sm-4,
  .px-sm-4 {
    padding-right: 1.5rem !important;
  }
  .pb-sm-4,
  .py-sm-4 {
    padding-bottom: 1.5rem !important;
  }
  .pl-sm-4,
  .px-sm-4 {
    padding-left: 1.5rem !important;
  }
  .p-sm-5 {
    padding: 3rem !important;
  }
  .pt-sm-5,
  .py-sm-5 {
    padding-top: 3rem !important;
  }
  .pr-sm-5,
  .px-sm-5 {
    padding-right: 3rem !important;
  }
  .pb-sm-5,
  .py-sm-5 {
    padding-bottom: 3rem !important;
  }
  .pl-sm-5,
  .px-sm-5 {
    padding-left: 3rem !important;
  }
  .m-sm-n1 {
    margin: -0.25rem !important;
  }
  .mt-sm-n1,
  .my-sm-n1 {
    margin-top: -0.25rem !important;
  }
  .mr-sm-n1,
  .mx-sm-n1 {
    margin-right: -0.25rem !important;
  }
  .mb-sm-n1,
  .my-sm-n1 {
    margin-bottom: -0.25rem !important;
  }
  .ml-sm-n1,
  .mx-sm-n1 {
    margin-left: -0.25rem !important;
  }
  .m-sm-n2 {
    margin: -0.5rem !important;
  }
  .mt-sm-n2,
  .my-sm-n2 {
    margin-top: -0.5rem !important;
  }
  .mr-sm-n2,
  .mx-sm-n2 {
    margin-right: -0.5rem !important;
  }
  .mb-sm-n2,
  .my-sm-n2 {
    margin-bottom: -0.5rem !important;
  }
  .ml-sm-n2,
  .mx-sm-n2 {
    margin-left: -0.5rem !important;
  }
  .m-sm-n3 {
    margin: -1rem !important;
  }
  .mt-sm-n3,
  .my-sm-n3 {
    margin-top: -1rem !important;
  }
  .mr-sm-n3,
  .mx-sm-n3 {
    margin-right: -1rem !important;
  }
  .mb-sm-n3,
  .my-sm-n3 {
    margin-bottom: -1rem !important;
  }
  .ml-sm-n3,
  .mx-sm-n3 {
    margin-left: -1rem !important;
  }
  .m-sm-n4 {
    margin: -1.5rem !important;
  }
  .mt-sm-n4,
  .my-sm-n4 {
    margin-top: -1.5rem !important;
  }
  .mr-sm-n4,
  .mx-sm-n4 {
    margin-right: -1.5rem !important;
  }
  .mb-sm-n4,
  .my-sm-n4 {
    margin-bottom: -1.5rem !important;
  }
  .ml-sm-n4,
  .mx-sm-n4 {
    margin-left: -1.5rem !important;
  }
  .m-sm-n5 {
    margin: -3rem !important;
  }
  .mt-sm-n5,
  .my-sm-n5 {
    margin-top: -3rem !important;
  }
  .mr-sm-n5,
  .mx-sm-n5 {
    margin-right: -3rem !important;
  }
  .mb-sm-n5,
  .my-sm-n5 {
    margin-bottom: -3rem !important;
  }
  .ml-sm-n5,
  .mx-sm-n5 {
    margin-left: -3rem !important;
  }
  .m-sm-auto {
    margin: auto !important;
  }
  .mt-sm-auto,
  .my-sm-auto {
    margin-top: auto !important;
  }
  .mr-sm-auto,
  .mx-sm-auto {
    margin-right: auto !important;
  }
  .mb-sm-auto,
  .my-sm-auto {
    margin-bottom: auto !important;
  }
  .ml-sm-auto,
  .mx-sm-auto {
    margin-left: auto !important;
  }
}

@media (min-width: 768px) {
  .m-md-0 {
    margin: 0 !important;
  }
  .mt-md-0,
  .my-md-0 {
    margin-top: 0 !important;
  }
  .mr-md-0,
  .mx-md-0 {
    margin-right: 0 !important;
  }
  .mb-md-0,
  .my-md-0 {
    margin-bottom: 0 !important;
  }
  .ml-md-0,
  .mx-md-0 {
    margin-left: 0 !important;
  }
  .m-md-1 {
    margin: 0.25rem !important;
  }
  .mt-md-1,
  .my-md-1 {
    margin-top: 0.25rem !important;
  }
  .mr-md-1,
  .mx-md-1 {
    margin-right: 0.25rem !important;
  }
  .mb-md-1,
  .my-md-1 {
    margin-bottom: 0.25rem !important;
  }
  .ml-md-1,
  .mx-md-1 {
    margin-left: 0.25rem !important;
  }
  .m-md-2 {
    margin: 0.5rem !important;
  }
  .mt-md-2,
  .my-md-2 {
    margin-top: 0.5rem !important;
  }
  .mr-md-2,
  .mx-md-2 {
    margin-right: 0.5rem !important;
  }
  .mb-md-2,
  .my-md-2 {
    margin-bottom: 0.5rem !important;
  }
  .ml-md-2,
  .mx-md-2 {
    margin-left: 0.5rem !important;
  }
  .m-md-3 {
    margin: 1rem !important;
  }
  .mt-md-3,
  .my-md-3 {
    margin-top: 1rem !important;
  }
  .mr-md-3,
  .mx-md-3 {
    margin-right: 1rem !important;
  }
  .mb-md-3,
  .my-md-3 {
    margin-bottom: 1rem !important;
  }
  .ml-md-3,
  .mx-md-3 {
    margin-left: 1rem !important;
  }
  .m-md-4 {
    margin: 1.5rem !important;
  }
  .mt-md-4,
  .my-md-4 {
    margin-top: 1.5rem !important;
  }
  .mr-md-4,
  .mx-md-4 {
    margin-right: 1.5rem !important;
  }
  .mb-md-4,
  .my-md-4 {
    margin-bottom: 1.5rem !important;
  }
  .ml-md-4,
  .mx-md-4 {
    margin-left: 1.5rem !important;
  }
  .m-md-5 {
    margin: 3rem !important;
  }
  .mt-md-5,
  .my-md-5 {
    margin-top: 3rem !important;
  }
  .mr-md-5,
  .mx-md-5 {
    margin-right: 3rem !important;
  }
  .mb-md-5,
  .my-md-5 {
    margin-bottom: 3rem !important;
  }
  .ml-md-5,
  .mx-md-5 {
    margin-left: 3rem !important;
  }
  .p-md-0 {
    padding: 0 !important;
  }
  .pt-md-0,
  .py-md-0 {
    padding-top: 0 !important;
  }
  .pr-md-0,
  .px-md-0 {
    padding-right: 0 !important;
  }
  .pb-md-0,
  .py-md-0 {
    padding-bottom: 0 !important;
  }
  .pl-md-0,
  .px-md-0 {
    padding-left: 0 !important;
  }
  .p-md-1 {
    padding: 0.25rem !important;
  }
  .pt-md-1,
  .py-md-1 {
    padding-top: 0.25rem !important;
  }
  .pr-md-1,
  .px-md-1 {
    padding-right: 0.25rem !important;
  }
  .pb-md-1,
  .py-md-1 {
    padding-bottom: 0.25rem !important;
  }
  .pl-md-1,
  .px-md-1 {
    padding-left: 0.25rem !important;
  }
  .p-md-2 {
    padding: 0.5rem !important;
  }
  .pt-md-2,
  .py-md-2 {
    padding-top: 0.5rem !important;
  }
  .pr-md-2,
  .px-md-2 {
    padding-right: 0.5rem !important;
  }
  .pb-md-2,
  .py-md-2 {
    padding-bottom: 0.5rem !important;
  }
  .pl-md-2,
  .px-md-2 {
    padding-left: 0.5rem !important;
  }
  .p-md-3 {
    padding: 1rem !important;
  }
  .pt-md-3,
  .py-md-3 {
    padding-top: 1rem !important;
  }
  .pr-md-3,
  .px-md-3 {
    padding-right: 1rem !important;
  }
  .pb-md-3,
  .py-md-3 {
    padding-bottom: 1rem !important;
  }
  .pl-md-3,
  .px-md-3 {
    padding-left: 1rem !important;
  }
  .p-md-4 {
    padding: 1.5rem !important;
  }
  .pt-md-4,
  .py-md-4 {
    padding-top: 1.5rem !important;
  }
  .pr-md-4,
  .px-md-4 {
    padding-right: 1.5rem !important;
  }
  .pb-md-4,
  .py-md-4 {
    padding-bottom: 1.5rem !important;
  }
  .pl-md-4,
  .px-md-4 {
    padding-left: 1.5rem !important;
  }
  .p-md-5 {
    padding: 3rem !important;
  }
  .pt-md-5,
  .py-md-5 {
    padding-top: 3rem !important;
  }
  .pr-md-5,
  .px-md-5 {
    padding-right: 3rem !important;
  }
  .pb-md-5,
  .py-md-5 {
    padding-bottom: 3rem !important;
  }
  .pl-md-5,
  .px-md-5 {
    padding-left: 3rem !important;
  }
  .m-md-n1 {
    margin: -0.25rem !important;
  }
  .mt-md-n1,
  .my-md-n1 {
    margin-top: -0.25rem !important;
  }
  .mr-md-n1,
  .mx-md-n1 {
    margin-right: -0.25rem !important;
  }
  .mb-md-n1,
  .my-md-n1 {
    margin-bottom: -0.25rem !important;
  }
  .ml-md-n1,
  .mx-md-n1 {
    margin-left: -0.25rem !important;
  }
  .m-md-n2 {
    margin: -0.5rem !important;
  }
  .mt-md-n2,
  .my-md-n2 {
    margin-top: -0.5rem !important;
  }
  .mr-md-n2,
  .mx-md-n2 {
    margin-right: -0.5rem !important;
  }
  .mb-md-n2,
  .my-md-n2 {
    margin-bottom: -0.5rem !important;
  }
  .ml-md-n2,
  .mx-md-n2 {
    margin-left: -0.5rem !important;
  }
  .m-md-n3 {
    margin: -1rem !important;
  }
  .mt-md-n3,
  .my-md-n3 {
    margin-top: -1rem !important;
  }
  .mr-md-n3,
  .mx-md-n3 {
    margin-right: -1rem !important;
  }
  .mb-md-n3,
  .my-md-n3 {
    margin-bottom: -1rem !important;
  }
  .ml-md-n3,
  .mx-md-n3 {
    margin-left: -1rem !important;
  }
  .m-md-n4 {
    margin: -1.5rem !important;
  }
  .mt-md-n4,
  .my-md-n4 {
    margin-top: -1.5rem !important;
  }
  .mr-md-n4,
  .mx-md-n4 {
    margin-right: -1.5rem !important;
  }
  .mb-md-n4,
  .my-md-n4 {
    margin-bottom: -1.5rem !important;
  }
  .ml-md-n4,
  .mx-md-n4 {
    margin-left: -1.5rem !important;
  }
  .m-md-n5 {
    margin: -3rem !important;
  }
  .mt-md-n5,
  .my-md-n5 {
    margin-top: -3rem !important;
  }
  .mr-md-n5,
  .mx-md-n5 {
    margin-right: -3rem !important;
  }
  .mb-md-n5,
  .my-md-n5 {
    margin-bottom: -3rem !important;
  }
  .ml-md-n5,
  .mx-md-n5 {
    margin-left: -3rem !important;
  }
  .m-md-auto {
    margin: auto !important;
  }
  .mt-md-auto,
  .my-md-auto {
    margin-top: auto !important;
  }
  .mr-md-auto,
  .mx-md-auto {
    margin-right: auto !important;
  }
  .mb-md-auto,
  .my-md-auto {
    margin-bottom: auto !important;
  }
  .ml-md-auto,
  .mx-md-auto {
    margin-left: auto !important;
  }
}

@media (min-width: 992px) {
  .m-lg-0 {
    margin: 0 !important;
  }
  .mt-lg-0,
  .my-lg-0 {
    margin-top: 0 !important;
  }
  .mr-lg-0,
  .mx-lg-0 {
    margin-right: 0 !important;
  }
  .mb-lg-0,
  .my-lg-0 {
    margin-bottom: 0 !important;
  }
  .ml-lg-0,
  .mx-lg-0 {
    margin-left: 0 !important;
  }
  .m-lg-1 {
    margin: 0.25rem !important;
  }
  .mt-lg-1,
  .my-lg-1 {
    margin-top: 0.25rem !important;
  }
  .mr-lg-1,
  .mx-lg-1 {
    margin-right: 0.25rem !important;
  }
  .mb-lg-1,
  .my-lg-1 {
    margin-bottom: 0.25rem !important;
  }
  .ml-lg-1,
  .mx-lg-1 {
    margin-left: 0.25rem !important;
  }
  .m-lg-2 {
    margin: 0.5rem !important;
  }
  .mt-lg-2,
  .my-lg-2 {
    margin-top: 0.5rem !important;
  }
  .mr-lg-2,
  .mx-lg-2 {
    margin-right: 0.5rem !important;
  }
  .mb-lg-2,
  .my-lg-2 {
    margin-bottom: 0.5rem !important;
  }
  .ml-lg-2,
  .mx-lg-2 {
    margin-left: 0.5rem !important;
  }
  .m-lg-3 {
    margin: 1rem !important;
  }
  .mt-lg-3,
  .my-lg-3 {
    margin-top: 1rem !important;
  }
  .mr-lg-3,
  .mx-lg-3 {
    margin-right: 1rem !important;
  }
  .mb-lg-3,
  .my-lg-3 {
    margin-bottom: 1rem !important;
  }
  .ml-lg-3,
  .mx-lg-3 {
    margin-left: 1rem !important;
  }
  .m-lg-4 {
    margin: 1.5rem !important;
  }
  .mt-lg-4,
  .my-lg-4 {
    margin-top: 1.5rem !important;
  }
  .mr-lg-4,
  .mx-lg-4 {
    margin-right: 1.5rem !important;
  }
  .mb-lg-4,
  .my-lg-4 {
    margin-bottom: 1.5rem !important;
  }
  .ml-lg-4,
  .mx-lg-4 {
    margin-left: 1.5rem !important;
  }
  .m-lg-5 {
    margin: 3rem !important;
  }
  .mt-lg-5,
  .my-lg-5 {
    margin-top: 3rem !important;
  }
  .mr-lg-5,
  .mx-lg-5 {
    margin-right: 3rem !important;
  }
  .mb-lg-5,
  .my-lg-5 {
    margin-bottom: 3rem !important;
  }
  .ml-lg-5,
  .mx-lg-5 {
    margin-left: 3rem !important;
  }
  .p-lg-0 {
    padding: 0 !important;
  }
  .pt-lg-0,
  .py-lg-0 {
    padding-top: 0 !important;
  }
  .pr-lg-0,
  .px-lg-0 {
    padding-right: 0 !important;
  }
  .pb-lg-0,
  .py-lg-0 {
    padding-bottom: 0 !important;
  }
  .pl-lg-0,
  .px-lg-0 {
    padding-left: 0 !important;
  }
  .p-lg-1 {
    padding: 0.25rem !important;
  }
  .pt-lg-1,
  .py-lg-1 {
    padding-top: 0.25rem !important;
  }
  .pr-lg-1,
  .px-lg-1 {
    padding-right: 0.25rem !important;
  }
  .pb-lg-1,
  .py-lg-1 {
    padding-bottom: 0.25rem !important;
  }
  .pl-lg-1,
  .px-lg-1 {
    padding-left: 0.25rem !important;
  }
  .p-lg-2 {
    padding: 0.5rem !important;
  }
  .pt-lg-2,
  .py-lg-2 {
    padding-top: 0.5rem !important;
  }
  .pr-lg-2,
  .px-lg-2 {
    padding-right: 0.5rem !important;
  }
  .pb-lg-2,
  .py-lg-2 {
    padding-bottom: 0.5rem !important;
  }
  .pl-lg-2,
  .px-lg-2 {
    padding-left: 0.5rem !important;
  }
  .p-lg-3 {
    padding: 1rem !important;
  }
  .pt-lg-3,
  .py-lg-3 {
    padding-top: 1rem !important;
  }
  .pr-lg-3,
  .px-lg-3 {
    padding-right: 1rem !important;
  }
  .pb-lg-3,
  .py-lg-3 {
    padding-bottom: 1rem !important;
  }
  .pl-lg-3,
  .px-lg-3 {
    padding-left: 1rem !important;
  }
  .p-lg-4 {
    padding: 1.5rem !important;
  }
  .pt-lg-4,
  .py-lg-4 {
    padding-top: 1.5rem !important;
  }
  .pr-lg-4,
  .px-lg-4 {
    padding-right: 1.5rem !important;
  }
  .pb-lg-4,
  .py-lg-4 {
    padding-bottom: 1.5rem !important;
  }
  .pl-lg-4,
  .px-lg-4 {
    padding-left: 1.5rem !important;
  }
  .p-lg-5 {
    padding: 3rem !important;
  }
  .pt-lg-5,
  .py-lg-5 {
    padding-top: 3rem !important;
  }
  .pr-lg-5,
  .px-lg-5 {
    padding-right: 3rem !important;
  }
  .pb-lg-5,
  .py-lg-5 {
    padding-bottom: 3rem !important;
  }
  .pl-lg-5,
  .px-lg-5 {
    padding-left: 3rem !important;
  }
  .m-lg-n1 {
    margin: -0.25rem !important;
  }
  .mt-lg-n1,
  .my-lg-n1 {
    margin-top: -0.25rem !important;
  }
  .mr-lg-n1,
  .mx-lg-n1 {
    margin-right: -0.25rem !important;
  }
  .mb-lg-n1,
  .my-lg-n1 {
    margin-bottom: -0.25rem !important;
  }
  .ml-lg-n1,
  .mx-lg-n1 {
    margin-left: -0.25rem !important;
  }
  .m-lg-n2 {
    margin: -0.5rem !important;
  }
  .mt-lg-n2,
  .my-lg-n2 {
    margin-top: -0.5rem !important;
  }
  .mr-lg-n2,
  .mx-lg-n2 {
    margin-right: -0.5rem !important;
  }
  .mb-lg-n2,
  .my-lg-n2 {
    margin-bottom: -0.5rem !important;
  }
  .ml-lg-n2,
  .mx-lg-n2 {
    margin-left: -0.5rem !important;
  }
  .m-lg-n3 {
    margin: -1rem !important;
  }
  .mt-lg-n3,
  .my-lg-n3 {
    margin-top: -1rem !important;
  }
  .mr-lg-n3,
  .mx-lg-n3 {
    margin-right: -1rem !important;
  }
  .mb-lg-n3,
  .my-lg-n3 {
    margin-bottom: -1rem !important;
  }
  .ml-lg-n3,
  .mx-lg-n3 {
    margin-left: -1rem !important;
  }
  .m-lg-n4 {
    margin: -1.5rem !important;
  }
  .mt-lg-n4,
  .my-lg-n4 {
    margin-top: -1.5rem !important;
  }
  .mr-lg-n4,
  .mx-lg-n4 {
    margin-right: -1.5rem !important;
  }
  .mb-lg-n4,
  .my-lg-n4 {
    margin-bottom: -1.5rem !important;
  }
  .ml-lg-n4,
  .mx-lg-n4 {
    margin-left: -1.5rem !important;
  }
  .m-lg-n5 {
    margin: -3rem !important;
  }
  .mt-lg-n5,
  .my-lg-n5 {
    margin-top: -3rem !important;
  }
  .mr-lg-n5,
  .mx-lg-n5 {
    margin-right: -3rem !important;
  }
  .mb-lg-n5,
  .my-lg-n5 {
    margin-bottom: -3rem !important;
  }
  .ml-lg-n5,
  .mx-lg-n5 {
    margin-left: -3rem !important;
  }
  .m-lg-auto {
    margin: auto !important;
  }
  .mt-lg-auto,
  .my-lg-auto {
    margin-top: auto !important;
  }
  .mr-lg-auto,
  .mx-lg-auto {
    margin-right: auto !important;
  }
  .mb-lg-auto,
  .my-lg-auto {
    margin-bottom: auto !important;
  }
  .ml-lg-auto,
  .mx-lg-auto {
    margin-left: auto !important;
  }
}

@media (min-width: 1200px) {
  .m-xl-0 {
    margin: 0 !important;
  }
  .mt-xl-0,
  .my-xl-0 {
    margin-top: 0 !important;
  }
  .mr-xl-0,
  .mx-xl-0 {
    margin-right: 0 !important;
  }
  .mb-xl-0,
  .my-xl-0 {
    margin-bottom: 0 !important;
  }
  .ml-xl-0,
  .mx-xl-0 {
    margin-left: 0 !important;
  }
  .m-xl-1 {
    margin: 0.25rem !important;
  }
  .mt-xl-1,
  .my-xl-1 {
    margin-top: 0.25rem !important;
  }
  .mr-xl-1,
  .mx-xl-1 {
    margin-right: 0.25rem !important;
  }
  .mb-xl-1,
  .my-xl-1 {
    margin-bottom: 0.25rem !important;
  }
  .ml-xl-1,
  .mx-xl-1 {
    margin-left: 0.25rem !important;
  }
  .m-xl-2 {
    margin: 0.5rem !important;
  }
  .mt-xl-2,
  .my-xl-2 {
    margin-top: 0.5rem !important;
  }
  .mr-xl-2,
  .mx-xl-2 {
    margin-right: 0.5rem !important;
  }
  .mb-xl-2,
  .my-xl-2 {
    margin-bottom: 0.5rem !important;
  }
  .ml-xl-2,
  .mx-xl-2 {
    margin-left: 0.5rem !important;
  }
  .m-xl-3 {
    margin: 1rem !important;
  }
  .mt-xl-3,
  .my-xl-3 {
    margin-top: 1rem !important;
  }
  .mr-xl-3,
  .mx-xl-3 {
    margin-right: 1rem !important;
  }
  .mb-xl-3,
  .my-xl-3 {
    margin-bottom: 1rem !important;
  }
  .ml-xl-3,
  .mx-xl-3 {
    margin-left: 1rem !important;
  }
  .m-xl-4 {
    margin: 1.5rem !important;
  }
  .mt-xl-4,
  .my-xl-4 {
    margin-top: 1.5rem !important;
  }
  .mr-xl-4,
  .mx-xl-4 {
    margin-right: 1.5rem !important;
  }
  .mb-xl-4,
  .my-xl-4 {
    margin-bottom: 1.5rem !important;
  }
  .ml-xl-4,
  .mx-xl-4 {
    margin-left: 1.5rem !important;
  }
  .m-xl-5 {
    margin: 3rem !important;
  }
  .mt-xl-5,
  .my-xl-5 {
    margin-top: 3rem !important;
  }
  .mr-xl-5,
  .mx-xl-5 {
    margin-right: 3rem !important;
  }
  .mb-xl-5,
  .my-xl-5 {
    margin-bottom: 3rem !important;
  }
  .ml-xl-5,
  .mx-xl-5 {
    margin-left: 3rem !important;
  }
  .p-xl-0 {
    padding: 0 !important;
  }
  .pt-xl-0,
  .py-xl-0 {
    padding-top: 0 !important;
  }
  .pr-xl-0,
  .px-xl-0 {
    padding-right: 0 !important;
  }
  .pb-xl-0,
  .py-xl-0 {
    padding-bottom: 0 !important;
  }
  .pl-xl-0,
  .px-xl-0 {
    padding-left: 0 !important;
  }
  .p-xl-1 {
    padding: 0.25rem !important;
  }
  .pt-xl-1,
  .py-xl-1 {
    padding-top: 0.25rem !important;
  }
  .pr-xl-1,
  .px-xl-1 {
    padding-right: 0.25rem !important;
  }
  .pb-xl-1,
  .py-xl-1 {
    padding-bottom: 0.25rem !important;
  }
  .pl-xl-1,
  .px-xl-1 {
    padding-left: 0.25rem !important;
  }
  .p-xl-2 {
    padding: 0.5rem !important;
  }
  .pt-xl-2,
  .py-xl-2 {
    padding-top: 0.5rem !important;
  }
  .pr-xl-2,
  .px-xl-2 {
    padding-right: 0.5rem !important;
  }
  .pb-xl-2,
  .py-xl-2 {
    padding-bottom: 0.5rem !important;
  }
  .pl-xl-2,
  .px-xl-2 {
    padding-left: 0.5rem !important;
  }
  .p-xl-3 {
    padding: 1rem !important;
  }
  .pt-xl-3,
  .py-xl-3 {
    padding-top: 1rem !important;
  }
  .pr-xl-3,
  .px-xl-3 {
    padding-right: 1rem !important;
  }
  .pb-xl-3,
  .py-xl-3 {
    padding-bottom: 1rem !important;
  }
  .pl-xl-3,
  .px-xl-3 {
    padding-left: 1rem !important;
  }
  .p-xl-4 {
    padding: 1.5rem !important;
  }
  .pt-xl-4,
  .py-xl-4 {
    padding-top: 1.5rem !important;
  }
  .pr-xl-4,
  .px-xl-4 {
    padding-right: 1.5rem !important;
  }
  .pb-xl-4,
  .py-xl-4 {
    padding-bottom: 1.5rem !important;
  }
  .pl-xl-4,
  .px-xl-4 {
    padding-left: 1.5rem !important;
  }
  .p-xl-5 {
    padding: 3rem !important;
  }
  .pt-xl-5,
  .py-xl-5 {
    padding-top: 3rem !important;
  }
  .pr-xl-5,
  .px-xl-5 {
    padding-right: 3rem !important;
  }
  .pb-xl-5,
  .py-xl-5 {
    padding-bottom: 3rem !important;
  }
  .pl-xl-5,
  .px-xl-5 {
    padding-left: 3rem !important;
  }
  .m-xl-n1 {
    margin: -0.25rem !important;
  }
  .mt-xl-n1,
  .my-xl-n1 {
    margin-top: -0.25rem !important;
  }
  .mr-xl-n1,
  .mx-xl-n1 {
    margin-right: -0.25rem !important;
  }
  .mb-xl-n1,
  .my-xl-n1 {
    margin-bottom: -0.25rem !important;
  }
  .ml-xl-n1,
  .mx-xl-n1 {
    margin-left: -0.25rem !important;
  }
  .m-xl-n2 {
    margin: -0.5rem !important;
  }
  .mt-xl-n2,
  .my-xl-n2 {
    margin-top: -0.5rem !important;
  }
  .mr-xl-n2,
  .mx-xl-n2 {
    margin-right: -0.5rem !important;
  }
  .mb-xl-n2,
  .my-xl-n2 {
    margin-bottom: -0.5rem !important;
  }
  .ml-xl-n2,
  .mx-xl-n2 {
    margin-left: -0.5rem !important;
  }
  .m-xl-n3 {
    margin: -1rem !important;
  }
  .mt-xl-n3,
  .my-xl-n3 {
    margin-top: -1rem !important;
  }
  .mr-xl-n3,
  .mx-xl-n3 {
    margin-right: -1rem !important;
  }
  .mb-xl-n3,
  .my-xl-n3 {
    margin-bottom: -1rem !important;
  }
  .ml-xl-n3,
  .mx-xl-n3 {
    margin-left: -1rem !important;
  }
  .m-xl-n4 {
    margin: -1.5rem !important;
  }
  .mt-xl-n4,
  .my-xl-n4 {
    margin-top: -1.5rem !important;
  }
  .mr-xl-n4,
  .mx-xl-n4 {
    margin-right: -1.5rem !important;
  }
  .mb-xl-n4,
  .my-xl-n4 {
    margin-bottom: -1.5rem !important;
  }
  .ml-xl-n4,
  .mx-xl-n4 {
    margin-left: -1.5rem !important;
  }
  .m-xl-n5 {
    margin: -3rem !important;
  }
  .mt-xl-n5,
  .my-xl-n5 {
    margin-top: -3rem !important;
  }
  .mr-xl-n5,
  .mx-xl-n5 {
    margin-right: -3rem !important;
  }
  .mb-xl-n5,
  .my-xl-n5 {
    margin-bottom: -3rem !important;
  }
  .ml-xl-n5,
  .mx-xl-n5 {
    margin-left: -3rem !important;
  }
  .m-xl-auto {
    margin: auto !important;
  }
  .mt-xl-auto,
  .my-xl-auto {
    margin-top: auto !important;
  }
  .mr-xl-auto,
  .mx-xl-auto {
    margin-right: auto !important;
  }
  .mb-xl-auto,
  .my-xl-auto {
    margin-bottom: auto !important;
  }
  .ml-xl-auto,
  .mx-xl-auto {
    margin-left: auto !important;
  }
}

.stretched-link::after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
  pointer-events: auto;
  content: "";
  background-color: rgba(0, 0, 0, 0);
}

.text-monospace {
  font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace !important;
}

.text-justify {
  text-align: justify !important;
}

.text-wrap {
  white-space: normal !important;
}

.text-nowrap {
  white-space: nowrap !important;
}

.text-truncate {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.text-left {
  text-align: left !important;
}

.text-right {
  text-align: right !important;
}

.text-center {
  text-align: center !important;
}

@media (min-width: 576px) {
  .text-sm-left {
    text-align: left !important;
  }
  .text-sm-right {
    text-align: right !important;
  }
  .text-sm-center {
    text-align: center !important;
  }
}

@media (min-width: 768px) {
  .text-md-left {
    text-align: left !important;
  }
  .text-md-right {
    text-align: right !important;
  }
  .text-md-center {
    text-align: center !important;
  }
}

@media (min-width: 992px) {
  .text-lg-left {
    text-align: left !important;
  }
  .text-lg-right {
    text-align: right !important;
  }
  .text-lg-center {
    text-align: center !important;
  }
}

@media (min-width: 1200px) {
  .text-xl-left {
    text-align: left !important;
  }
  .text-xl-right {
    text-align: right !important;
  }
  .text-xl-center {
    text-align: center !important;
  }
}

.text-lowercase {
  text-transform: lowercase !important;
}

.text-uppercase {
  text-transform: uppercase !important;
}

.text-capitalize {
  text-transform: capitalize !important;
}

.font-weight-light {
  font-weight: 300 !important;
}

.font-weight-lighter {
  font-weight: lighter !important;
}

.font-weight-normal {
  font-weight: 400 !important;
}

.font-weight-bold {
  font-weight: 600 !important;
}

.font-weight-bolder {
  font-weight: bolder !important;
}

.font-italic {
  font-style: italic !important;
}

.text-white {
  color: #ffffff !important;
}

.text-primary {
  color: #007bff !important;
}

a.text-primary:hover, a.text-primary:focus {
  color: #0056b3 !important;
}

.text-secondary {
  color: #6c757d !important;
}

a.text-secondary:hover, a.text-secondary:focus {
  color: #494f54 !important;
}

.text-success {
  color: #28a745 !important;
}

a.text-success:hover, a.text-success:focus {
  color: #19692c !important;
}

.text-info {
  color: #17a2b8 !important;
}

a.text-info:hover, a.text-info:focus {
  color: #0f6674 !important;
}

.text-warning {
  color: #ffc107 !important;
}

a.text-warning:hover, a.text-warning:focus {
  color: #ba8b00 !important;
}

.text-danger {
  color: #dc3545 !important;
}

a.text-danger:hover, a.text-danger:focus {
  color: #a71d2a !important;
}

.text-light {
  color: #f8f9fa !important;
}

a.text-light:hover, a.text-light:focus {
  color: #cbd3da !important;
}

.text-dark {
  color: #343a40 !important;
}

a.text-dark:hover, a.text-dark:focus {
  color: #121416 !important;
}

.text-body {
  color: #000000 !important;
}

.text-muted {
  color: rgba(255, 255, 255, 0.5) !important;
}

.text-black-50 {
  color: rgba(0, 0, 0, 0.5) !important;
}

.text-white-50 {
  color: rgba(255, 255, 255, 0.5) !important;
}

.text-hide {
  font: 0/0 a;
  color: transparent;
  text-shadow: none;
  background-color: transparent;
  border: 0;
}

.text-decoration-none {
  text-decoration: none !important;
}

.text-break {
  word-break: break-word !important;
  word-wrap: break-word !important;
}

.text-reset {
  color: inherit !important;
}

.visible {
  visibility: visible !important;
}

.invisible {
  visibility: hidden !important;
}

@media print {
  *,
  *::before,
  *::after {
    text-shadow: none !important;
    box-shadow: none !important;
  }
  a:not(.btn) {
    text-decoration: underline;
  }
  abbr[title]::after {
    content: " (" attr(title) ")";
  }
  pre {
    white-space: pre-wrap !important;
  }
  pre,
  blockquote {
    border: 1px solid #adb5bd;
    page-break-inside: avoid;
  }
  thead {
    display: table-header-group;
  }
  tr,
  img {
    page-break-inside: avoid;
  }
  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3;
  }
  h2,
  h3 {
    page-break-after: avoid;
  }
  @page {
    size: a3;
  }
  body {
    min-width: 992px !important;
  }
  .container {
    min-width: 992px !important;
  }
  .navbar {
    display: none;
  }
  .badge {
    border: 1px solid #000000;
  }
  .table {
    border-collapse: collapse !important;
  }
  .table td,
  .table th {
    background-color: #ffffff !important;
  }
  .table-bordered th,
  .table-bordered td {
    border: 1px solid #dee2e6 !important;
  }
  .table-dark {
    color: inherit;
  }
  .table-dark th,
  .table-dark td,
  .table-dark thead th,
  .table-dark tbody + tbody {
    border-color: rgba(255, 255, 255, 0.125);
  }
  .table .thead-dark th {
    color: inherit;
    border-color: rgba(255, 255, 255, 0.125);
  }
}

.dropdown-item {
  transition: background-color 300ms, color 300ms;
}

.dropdown-menu {
  -webkit-animation-name: fadeIn;
  animation-name: fadeIn;
  -webkit-animation-duration: 300ms;
  animation-duration: 300ms;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.175);
}

.dropdown-header {
  font-size: 1rem;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.dropdown-header .actions {
  position: absolute;
  top: 0.4rem;
  right: 0.8rem;
}

.dropdown-menu--block {
  width: 320px;
}

.dropdown-menu--block .dropdown-header {
  padding-top: 1.1rem;
  padding-bottom: 1rem;
}

@media (max-width: 575.98px) {
  .dropdown-menu--block {
    width: 100%;
  }
}

.dropdown-menu--icon .dropdown-item > i {
  line-height: 100%;
  vertical-align: top;
  font-size: 1.4rem;
  margin-right: 0.75rem;
}

.dropdown-menu--invert {
  background-color: rgba(255, 255, 255, 0.95);
}

.dropdown-menu--invert .dropdown-item {
  color: #000000;
}

.dropdown-menu--invert .dropdown-item:hover {
  background-color: rgba(0, 0, 0, 0.1);
}

.progress {
  border-radius: 0;
  height: 3px;
}

.progress-bar {
  height: 100%;
}

.card {
  margin-bottom: 2.3rem;
  box-shadow: 0 1px 5px rgba(0, 0, 0, 0.1);
  background-color: #ffffff;
}

.card:not([class*="border-"]) {
  border: 1px solid #e1e1e1;
}

.card-title {
  font-size: 1.25rem;
  line-height: 140%;
  margin-top: -5px;
}

.card-title:last-child {
  margin-bottom: 0;
}

.customer_update_fields {
  border: none;
}

#customer_update_fields .card {
  background-color: #ffffff;
  border: none;
}

#customer_update_fields label {
  color: #000000;
}

#customer_update_fields_numberEmployees {
  color: black;
  background-color: #ffffff;
  border: 1px solid #e1e1e1;
}

#_customer-number-employees .modal-dialog .modal-content {
  background-color: #ffffff;
  color: black;
}

#_customer-number-employees .modal-dialog .modal-content h4 {
  background-color: #ffffff;
  color: black;
}

.modal-content {
  background-color: #ffffff;
  color: #000000;
}

.modal-content .modal-header i {
  color: grey !important;
}

.customer_form {
  border: none;
}

.card-subtitle {
  color: #000000;
  font-size: 1rem;
  font-weight: normal;
  margin-top: -1.55rem;
  line-height: 1.5;
}

.card-subtitle:not(:last-child) {
  margin-bottom: 2rem;
}

.card > .actions,
.card-body .actions {
  position: absolute;
  right: 15px;
  z-index: 2;
  top: 18px;
}

[class*="card-img"] {
  width: 100%;
}

.card-link {
  text-transform: uppercase;
  font-size: 0.98rem;
  color: rgba(255, 255, 255, 0.5);
  font-weight: 600;
  display: inline-block;
  margin-top: 1rem;
  transition: color 300ms;
}

.card-link:hover {
  color: #ffffff;
}

.card-body .card-body {
  margin-bottom: 0;
}

.card-body__title {
  font-size: 1.15rem;
  color: #000000;
  margin-bottom: 1rem;
  font-weight: normal;
}

.card--fullscreen {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 101;
  background-color: rgba(0, 0, 0, 0.96);
  overflow: auto;
}

.card-header {
  padding: 1.2rem 2.2rem;
}

.card-group {
  box-shadow: 0 1px 5px rgba(0, 0, 0, 0.1);
}

.card-group .card {
  box-shadow: none;
}

.btn-theme {
  background-color: rgba(0, 0, 0, 0.2);
  color: #ffffff;
}

.btn-theme:not([disabled]):hover, .btn-theme:not([disabled]):focus {
  color: inherit;
  background-color: rgba(255, 255, 255, 0.15);
}

.btn-theme:not([disabled]).active {
  color: inherit;
  background-color: rgba(255, 255, 255, 0.35);
}

.btn-theme[disabled] {
  cursor: default;
  opacity: 0.75;
}

.btn-theme-dark {
  background-color: rgba(0, 0, 0, 0.2);
  color: #000000;
}

.btn-theme-dark:not([disabled]):hover, .btn-theme-dark:not([disabled]):focus {
  color: inherit;
  background-color: rgba(0, 0, 0, 0.5);
}

.btn-theme-dark:not([disabled]).active {
  color: inherit;
  background-color: rgba(0, 0, 0, 0.75);
}

.btn-theme-dark[disabled] {
  cursor: default;
  opacity: 0.75;
}

.btn-outline-theme {
  background-color: transparent;
  border-color: rgba(255, 255, 255, 0.25);
  color: #ffffff;
}

.btn-outline-theme:not([disabled]):hover, .btn-outline-theme:not([disabled]):focus {
  color: inherit;
  background-color: rgba(255, 255, 255, 0.125);
  border-color: transparent;
}

.btn-outline-theme-dark {
  background-color: transparent;
  border-color: rgba(0, 0, 0, 0.25);
  color: #000000;
}

.btn-outline-theme-dark:not([disabled]):hover, .btn-outline-theme-dark:not([disabled]):focus {
  color: inherit;
  background-color: rgba(0, 0, 0, 0.25);
  border-color: transparent;
}

.btn-outline-alert {
  background-color: #ffc107;
}

.btn--icon {
  border-radius: 50%;
  width: 3rem;
  height: 3rem;
  padding: 0;
  font-size: 1.5rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.btn--icon-text > [class*="zwicon-"] {
  font-size: 1.2rem;
  display: inline-block;
  vertical-align: top;
  margin: 0.15rem 0.5rem 0 0;
}

.btn--action {
  z-index: 2;
  height: 50px;
  width: 50px;
  padding: 0;
  line-height: 50px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  font-size: 20px;
  cursor: pointer;
  box-shadow: 0 3px 7px rgba(0, 0, 0, 0.15);
}

.btn--fixed {
  position: fixed !important;
  bottom: 30px;
  right: 30px;
  font-size: 2.25rem;
}

.btn-group-justified {
  display: flex;
  width: 100%;
}

.btn-group-justified .btn,
.btn-group-justified .btn-group {
  flex: 1;
}

.btn-group-justified .btn .btn,
.btn-group-justified .btn-group .btn {
  width: 100%;
}

.btn-group--colors > .btn {
  box-shadow: none;
  border-radius: 50% !important;
  width: 30px;
  height: 30px;
  margin-right: 4px;
  margin-bottom: 4px;
  position: relative;
}

.btn-group--colors > .btn:before {
  font-family: "zwicon";
  content: "";
  font-size: 2rem;
  transition: transform 200ms, opacity 200ms;
  position: absolute;
  left: 0;
  top: 0;
  color: #ffffff;
  transform: scale(0);
  opacity: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1px 0 0 1px;
  width: 100%;
  height: 100%;
}

.btn-group--colors > .btn.btn:not([class*="bg-"]) {
  border: 1px solid black;
}

.btn-group--colors > .btn.btn:not([class*="bg-"]):before {
  color: #000000;
}

.btn-group--colors > .btn.active:before {
  transform: scale(1);
  opacity: 1;
}

.btn-group .btn + .btn,
.btn-group .btn + .btn-group,
.btn-group .btn-group + .btn,
.btn-group .btn-group + .btn-group,
.btn-group-vertical .btn + .btn,
.btn-group-vertical .btn + .btn-group,
.btn-group-vertical .btn-group + .btn,
.btn-group-vertical .btn-group + .btn-group {
  margin-left: 0;
}

.btn-group-vertical > .btn:not(:first-child) {
  margin-top: 0;
}

.table th {
  font-weight: 600;
}

.table th,
.table td {
  padding: 1rem 0.8rem;
  vertical-align: middle;
}

.table thead > tr > th {
  border-bottom: 0;
  vertical-align: middle;
}

.thead-dark > tr > th,
.thead-light > tr > th {
  border-top: 0;
}

.thead-dark + tbody > tr:first-child > td,
.thead-dark + tbody > tr:first-child > th,
.thead-light + tbody > tr:first-child > td,
.thead-light + tbody > tr:first-child > th {
  border-top: 0;
}

.form-control {
  resize: none;
  appearance: none;
  -ms-overflow-style: none;
  border: 1px solid black;
  color: #000000;
}

.form-control:focus {
  border: 1px solid black;
}

.form-control[readonly] {
  color: black;
}

.form-group {
  position: relative;
  color: black;
}

select::-ms-expand {
  display: none;
}

select.form-control {
  background: url(/build/images/select-caret.babebfc3.svg) no-repeat bottom 5px right 5px;
}

.login .form-control {
  color: white;
}

.login .form-control::placeholder {
  color: rgba(255, 255, 255, 0.5);
}

.new-contact .form-control {
  color: white;
}

.new-contact .form-control::placeholder {
  color: rgba(255, 255, 255, 0.5);
}

.new-contact .help-text {
  color: white;
}

.login .text-primary {
  color: #a4d0ff !important;
}

.login .text-primary:hover {
  color: #ffffff !important;
}

.login button:hover {
  color: #ffffff !important;
}

.valid-tooltip,
.invalid-tooltip {
  margin-top: 0;
  border-radius: 0;
  padding: 0.25rem 0.5rem 0.35rem;
}

.input-group-prepend {
  margin-right: 0;
}

.input-group-prepend .input-group-text {
  border-right-width: 0;
}

.input-group-append {
  margin-left: 0;
}

.input-group-append .input-group-text {
  border-left-width: 0;
}

.input-group-text [class*="zwicon-"] {
  font-size: 1.5rem;
}

.page-item.disabled {
  opacity: 0.6;
}

.page-item.active .page-link {
  background-color: rgba(0, 0, 0, 0.2);
}

.page-link {
  border-radius: 50% !important;
  width: 32px;
  height: 32px;
  line-height: 32px;
  text-align: center;
  z-index: 1;
  cursor: pointer;
  transition: background-color 300ms, color 300ms;
  margin: 0 2px;
}

.page-link > i {
  font-size: 1.5rem;
  line-height: 32px;
}

.alert-heading {
  font-weight: 600;
  font-size: 1.1rem;
  margin: 0.15rem 0 1rem;
  color: inherit;
}

.alert-info h1, .alert-info h2, .alert-info h3, .alert-info h4, .alert-info h5 {
  color: #ffffff;
}

.alert-link {
  border-bottom: 1px dotted rgba(255, 255, 255, 0.35);
}

.alert-error {
  color: #f8d7da;
  background-color: #c22f3d;
  border-color: #f5c6cb;
}

.alert-error hr {
  border-top-color: #f1b0b7;
}

.alert-error .alert-link {
  color: #f0acb2;
}

.close {
  transition: opacity 300ms;
  cursor: pointer;
}

.close, .close:hover {
  opacity: 1;
}

.breadcrumb {
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 0;
}

.breadcrumb-item:not(.active) > a {
  color: rgba(255, 255, 255, 0.5);
}

.breadcrumb-item:not(.active) > a:hover {
  color: #ffffff;
}

.accordion .card {
  box-shadow: none;
  margin: 0 0 1px;
}

.accordion .card-header > a {
  color: #000000;
  display: block;
  transition: color 300ms;
}

.accordion .card-header > a:hover {
  opacity: 0.9;
}

.carousel-item img {
  width: 100%;
  border-radius: 2px;
}

.carousel-caption {
  background-color: rgba(0, 0, 0, 0.5);
  border-radius: 2px 2px 0 0;
  bottom: 0;
  font-weight: 600;
  padding-bottom: 35px;
}

.carousel-caption h3 {
  color: #ffffff;
  font-size: 1.3rem;
}

.carousel-control-prev:hover,
.carousel-control-next:hover {
  background-color: rgba(0, 0, 0, 0.25);
}

.carousel-control-prev-icon,
.carousel-control-next-icon {
  background-size: auto;
}

.modal-footer {
  padding-top: 0;
}

.modal-footer > .btn-link {
  color: #ffffff;
  text-transform: uppercase;
  cursor: pointer;
  font-size: 0.9rem;
}

.modal-footer > .btn-link:hover, .modal-footer > .btn-link:focus {
  background-color: rgba(255, 255, 255, 0.08);
}

.popover {
  box-shadow: 0 2px 30px rgba(0, 0, 0, 0.1);
}

.popover-header {
  padding-bottom: 0;
}

.nav-tabs .nav-link {
  border: 0;
  color: rgba(255, 255, 255, 0.5);
  transition: color 300ms;
  position: relative;
  font-size: 1.1rem;
}

.nav-tabs .nav-link:before {
  content: "";
  height: 2px;
  position: absolute;
  width: 100%;
  left: 0;
  bottom: 0;
  background-color: #ffffff;
  transform: scale(0);
  transition: transform 300ms;
}

.nav-tabs .nav-link.active:before {
  transform: scale(1);
}

.tab-content {
  padding: 1.5rem 0;
}

.toast-header > i {
  font-size: 1.5rem;
  margin-right: 0.5rem;
}

.toast-header > small {
  margin-left: auto;
  padding: 0 0.5rem;
  font-size: 0.9rem;
}

.toast-header [data-dismiss] {
  margin-right: -1px;
  cursor: pointer;
}

.toast-header [data-dismiss]:hover {
  opacity: 0.8;
}

.toast-body {
  color: #000000;
  font-size: 0.9rem;
}

.bg-blue {
  background-color: #007bff !important;
}

.text-blue {
  color: #007bff !important;
}

.bg-indigo {
  background-color: #6610f2 !important;
}

.text-indigo {
  color: #6610f2 !important;
}

.bg-purple {
  background-color: #6f42c1 !important;
}

.text-purple {
  color: #6f42c1 !important;
}

.bg-pink {
  background-color: #e83e8c !important;
}

.text-pink {
  color: #e83e8c !important;
}

.bg-red {
  background-color: #dc3545 !important;
}

.text-red {
  color: #dc3545 !important;
}

.bg-orange {
  background-color: #fd7e14 !important;
}

.text-orange {
  color: #fd7e14 !important;
}

.bg-yellow {
  background-color: #ffc107 !important;
}

.text-yellow {
  color: #ffc107 !important;
}

.bg-green {
  background-color: #28a745 !important;
}

.text-green {
  color: #28a745 !important;
}

.bg-teal {
  background-color: #20c997 !important;
}

.text-teal {
  color: #20c997 !important;
}

.bg-cyan {
  background-color: #17a2b8 !important;
}

.text-cyan {
  color: #17a2b8 !important;
}

.bg-black {
  background-color: #000000 !important;
}

.text-black {
  color: #000000 !important;
}

::-moz-selection {
  background: rgba(255, 255, 255, 0.1);
}

::selection {
  background: rgba(255, 255, 255, 0.1);
}

* {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

*:focus, *:active {
  outline: none !important;
}

html {
  font-size: 13px;
}

a {
  cursor: pointer;
}

pre {
  background-color: rgba(255, 255, 255, 0.8);
  border-radius: 2px;
  padding: 1.5rem;
}

button,
input,
optgroup,
select,
textarea {
  font-family: "Nunito", sans-serif;
}

.list {
  list-style: none;
  padding-left: 0;
}

.list > li:before {
  font-family: "zwicon";
  margin-right: 1.1rem;
  font-size: 1.25rem;
}

.list--dash > li:before {
  content: '\ea68';
}

.list--check > li:before {
  content: '\ea46';
}

.list--circle > li:before {
  content: '\ea66';
}

.main {
  position: relative;
}

.main--alt {
  padding-top: 40px;
}

@media (min-width: 1200px) {
  .content:not(.content--boxed):not(.content--full) {
    padding: 102px 30px 30px 280px;
  }
}

@media (min-width: 576px) and (max-width: 1199.98px) {
  .content:not(.content--boxed):not(.content--full) {
    padding: 102px 30px 30px;
  }
}

@media (max-width: 767.98px) {
  .content:not(.content--boxed):not(.content--full) {
    padding: 102px 15px 30px;
  }
}

@media (min-width: 576px) {
  .content--full {
    padding: 102px 30px 30px;
  }
}

@media (max-width: 767.98px) {
  .content--full {
    padding: 87px 15px 30px;
  }
}

.content__inner {
  margin: auto;
}

.content__inner:not(.content__inner--sm) {
  max-width: 1320px;
}

.content__inner--sm {
  max-width: 800px;
}

.content__title {
  margin-bottom: 1.5rem;
  padding: 0.75rem 0;
  position: relative;
  display: flex;
  align-items: center;
}

.content__title > h1 {
  line-height: 140%;
  font-size: 1.15rem;
  margin: 0;
  padding-left: 2rem;
  color: #ffffff;
  flex: 1 1 auto;
}

.content__title > h1 > small {
  font-size: 1rem;
  display: block;
  margin-top: 0.5rem;
  color: rgba(255, 255, 255, 0.75);
  text-transform: none;
}

.content__title:not(.content__title--alt) > h1 {
  text-transform: uppercase;
}

.content__title .actions {
  margin-left: auto;
  flex: 0 0 auto;
  padding-left: 2rem;
}

@media (max-width: 767.98px) {
  .content__title .actions {
    display: none;
  }
}

.view-more {
  display: block;
  padding: 1.1rem 0;
  text-align: center;
  margin-top: 0.5rem;
  font-size: 0.9rem;
  text-transform: uppercase;
  font-weight: 600;
  transition: color 300ms;
  color: rgba(255, 255, 255, 0.5);
}

.view-more:hover {
  color: #ffffff;
}

.load-more {
  text-align: center;
  margin-top: 2rem;
}

.load-more > a {
  display: inline-flex;
  align-items: center;
  padding: 0.75rem 1.5rem;
  border: 2px solid rgba(0, 0, 0, 0.15);
  border-radius: 2px;
  color: #000000;
  transition: border-color 300ms;
}

.load-more > a > i {
  font-size: 1.5rem;
  transition: transform 300ms;
  margin-right: 0.5rem;
}

.load-more > a:hover {
  border-color: rgba(0, 0, 0, 0.35);
}

.load-more > a:hover > i {
  transform: rotate(360deg);
}

.card-body .view-more {
  padding: 1rem 0 0;
}

.actions {
  display: flex;
  align-items: center;
}

.actions__item {
  font-size: 1.5rem;
  cursor: pointer;
  color: #000000;
  transition: background-color 300ms, color 300ms;
  width: 35px;
  height: 35px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
}

.actions__item.show, .actions__item:hover {
  background-color: rgba(0, 0, 0, 0.2);
  color: #ffffff;
}

.actions__item--active {
  background-color: rgba(255, 255, 255, 0.08);
}

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

.icon-list > li {
  position: relative;
  padding: 0.3rem 0;
}

.icon-list > li address {
  display: inline-block;
  vertical-align: top;
  margin-top: 0.25rem;
}

.icon-list > li > i {
  width: 2.5rem;
  text-align: center;
  font-size: 1.25rem;
  top: 0.12rem;
  position: relative;
  font-style: normal;
  display: inline-block;
}

.avatar-img,
.avatar-char {
  border-radius: 2px;
  width: 3rem;
  height: 3rem;
  margin-right: 1.2rem;
}

.avatar-char {
  line-height: 2.9rem;
  text-transform: uppercase;
  font-size: 1.2rem;
  text-align: center;
  color: #ffffff;
  background-color: rgba(255, 255, 255, 0.08);
  font-style: normal;
}

.avatar-char > i {
  line-height: 2.8rem;
  font-size: 1.3rem;
}

.sa-backdrop {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  cursor: pointer;
  z-index: 100;
}

.tags > a {
  display: inline-block;
  padding: 0.65rem 1rem;
  border: 2px solid rgba(255, 255, 255, 0.08);
  color: #000000;
  margin: 0 0.3rem 0.5rem 0;
  transition: border-color 300ms;
}

.tags > a:hover {
  border-color: rgba(255, 255, 255, 0.2);
}

.widget-lists {
  column-gap: 30px;
}

@media (min-width: 1500px) {
  .widget-lists {
    column-count: 3;
  }
}

@media (min-width: 900px) and (max-width: 1499px) {
  .widget-lists {
    column-count: 2;
  }
}

@media screen and (max-width: 899px) {
  .widget-lists {
    column-count: 1;
  }
}

.header {
  position: fixed;
  width: 100%;
  height: 72px;
  color: #ffffff;
  z-index: 100;
  display: flex;
  align-items: center;
  background-color: rgba(0, 0, 0, 0.3);
  top: 0;
  left: 0;
  padding-right: 1.5rem;
  box-shadow: 0 0 13px rgba(0, 0, 0, 0.22);
  transition: background-color 1000ms, box-shadow 1000ms;
}

.header::after {
  display: block;
  clear: both;
  content: "";
}

.header .sa-backdrop {
  position: absolute;
}

.header--scrolled {
  background-color: rgba(0, 0, 0, 0.96);
  box-shadow: 0 0 13px rgba(0, 0, 0, 0.22);
}

.navigation-trigger {
  height: 100%;
  width: 50px;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  font-size: 2rem;
  cursor: pointer;
  transition: opacity 100ms;
}

.navigation-trigger:hover {
  cursor: pointer;
  opacity: 0.8;
}

.logo {
  padding-left: 2.2rem;
  height: 72px;
  display: flex;
  align-items: center;
}

@media (min-width: 1200px) {
  .logo {
    min-width: 250px;
  }
}

.logo > a {
  color: #ffffff;
  line-height: 100%;
  font-size: 1.3rem;
  font-weight: normal;
  margin: 0;
}

.top-nav {
  list-style: none;
  margin: 0 0 0 auto;
  padding: 0;
}

.top-nav > li {
  display: inline-block;
  vertical-align: middle;
}

.top-nav > li > a {
  display: block;
  color: #ffffff;
  border-radius: 2px;
  text-align: center;
  line-height: 100%;
  position: relative;
  transition: background-color 300ms;
}

.top-nav > li > a:not(.header__nav__text) {
  padding: 0.65rem 0.15rem;
  min-width: 50px;
}

.top-nav > li > a:not(.header__nav__text) > i {
  font-size: 1.65rem;
  line-height: 100%;
}

.top-nav > li > a:hover,
.top-nav > li.show > a {
  background-color: rgba(255, 255, 255, 0.2);
}

.top-nav > li .dropdown-menu--block {
  padding: 0;
}

@media (max-width: 575.98px) {
  .top-nav > li {
    position: static;
  }
  .top-nav > li .dropdown-menu--block {
    left: 0;
    top: 72px !important;
    transform: none !important;
  }
}

.top-nav__notifications .listview {
  position: relative;
}

.top-nav__notifications .listview:before {
  font-family: "zwicon";
  content: "";
  font-size: 3.5rem;
  transition: transform 300ms, opacity 300ms;
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  width: 90px;
  height: 90px;
  border: 2px solid rgba(255, 255, 255, 0.1);
  color: #ffffff;
  border-radius: 50%;
  transform: scale(0) rotate(-360deg);
  opacity: 0;
  text-align: center;
  line-height: 86px;
}

.top-nav__notifications .listview__scroll {
  height: 350px;
}

.top-nav__notifications--cleared .listview:before {
  transform: scale(1) rotate(0deg);
  opacity: 1;
}

.top-nav__notify:before {
  content: '';
  width: 5px;
  height: 5px;
  background-color: #ffffff;
  color: #ffffff;
  border-radius: 50%;
  position: absolute;
  top: -3px;
  right: 0;
  left: 0;
  margin: auto;
  -webkit-animation-name: flash;
  animation-name: flash;
  -webkit-animation-duration: 2000ms;
  animation-duration: 2000ms;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  animation-iteration-count: infinite;
}

.search {
  flex: 1;
  margin-right: 1.5rem;
  position: relative;
}

@media (max-width: 1199.98px) {
  .search {
    padding: 0 1.5rem;
    position: absolute;
    left: 0;
    top: 0;
    height: 100%;
    width: 100%;
    background-color: #ffffff;
    z-index: 101;
    display: flex;
    align-items: center;
    transition: transform 300ms, box-shadow 300ms, background-color 300ms;
  }
  .search:not(.search--toggled) {
    transform: translate3d(0, -105%, 0);
  }
}

.search--toggled {
  background-color: rgba(0, 0, 0, 0.96);
  box-shadow: 0 0 13px rgba(0, 0, 0, 0.22);
}

.search__inner {
  position: relative;
}

@media (max-width: 1199.98px) {
  .search__inner {
    max-width: 600px;
    margin: 0 auto;
    width: 100%;
  }
}

.search__text {
  border: 0;
  border-radius: 2px;
  height: 2.9rem;
  padding-left: 3rem;
  width: 100%;
  transition: background-color 300ms, color 300ms;
}

@media (min-width: 992px) {
  .search__text {
    background-color: rgba(255, 255, 255, 0.08);
    color: #000000;
  }
  .search__text::placeholder {
    color: rgba(255, 255, 255, 0.85);
  }
  .search__text:focus {
    background-color: rgba(0, 0, 0, 0.2);
    color: #000000;
    color: #ffffff;
  }
  .search__text:focus::placeholder {
    color: rgba(255, 255, 255, 0.85);
  }
}

@media (max-width: 1199.98px) {
  .search__text {
    background-color: rgba(255, 255, 255, 0.125);
    color: #000000;
  }
  .search__text::placeholder {
    color: rgba(255, 255, 255, 0.85);
  }
}

.header--scrolled .search__text {
  background-color: rgba(255, 255, 255, 0.1);
}

.header--scrolled .search__text:focus {
  background-color: rgba(255, 255, 255, 0.12);
}

.search__reset,
.search__helper {
  position: absolute;
  left: 0;
  top: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.3rem;
  height: 100%;
  width: 3rem;
  text-align: center;
  cursor: pointer;
  transition: opacity 300ms, color 300ms, transform 300ms;
}

.search__reset, .search--focus .search__helper {
  opacity: 0;
  z-index: 0;
  transform: scale(0);
}

@media (max-width: 1199.98px) {
  .search__reset {
    opacity: 1;
    transform: scale(1);
  }
}

@media (max-width: 1199.98px) {
  .search__helper {
    opacity: 0;
    z-index: 0;
  }
}

.search--focus .search__reset {
  opacity: 1;
  z-index: 1;
  transform: scale(1);
}

.app-shortcuts {
  margin: 0;
  padding: 1rem;
}

.app-shortcuts__item {
  text-align: center;
  padding: 1rem 0;
  border-radius: 2px;
  transition: background-color 300ms;
}

.app-shortcuts__item:hover {
  background-color: rgba(255, 255, 255, 0.06);
}

.app-shortcuts__item:hover > i {
  background-color: rgba(255, 255, 255, 0.25);
}

.app-shortcuts__item > i {
  width: 45px;
  height: 45px;
  border-radius: 50%;
  color: #ffffff;
  line-height: 45px;
  font-size: 1.5rem;
  background-color: rgba(255, 255, 255, 0.1);
  display: inline-block;
  transition: background-color 300ms;
}

.app-shortcuts__item > small {
  display: block;
  margin-top: 0.5rem;
  font-size: 0.95rem;
}

.app-shortcuts__item > small, .app-shortcuts__item > small:hover, .app-shortcuts__item > small:focus {
  color: #000000;
}

.top-menu {
  position: absolute;
  background-color: #ffffff;
  left: 0;
  top: 100%;
  width: 100%;
  justify-content: center;
  white-space: nowrap;
}

.top-menu > li.active {
  position: relative;
  box-shadow: 0 0 0 -2px red;
}

.top-menu > li > a {
  line-height: 100%;
  color: #262626;
  font-weight: 600;
  text-transform: uppercase;
}

.top-menu > li > a.active {
  color: #000000;
}

.clock {
  background: rgba(255, 255, 255, 0.1);
  line-height: 100%;
  padding: 0.7rem 1rem;
  font-size: 1.5rem;
  margin-left: 1rem;
  border-radius: 2px;
}

.time > span:not(:last-child):after {
  content: ':';
  width: 10px;
  text-align: center;
  display: inline-block;
  position: relative;
  top: -1px;
  right: -2px;
}

.footer {
  text-align: center;
  padding: 4rem 1rem 2rem;
}

.footer__nav {
  padding-left: 0;
  list-style: none;
}

.footer__nav > a {
  padding: 0 1rem;
  margin: 0 0.5rem;
  color: rgba(255, 255, 255, 0.5);
  position: relative;
}

.footer__nav > a + a:before {
  content: '';
  width: 4px;
  height: 4px;
  border-radius: 50%;
  position: absolute;
  left: -11px;
  top: 8px;
  background-color: rgba(255, 255, 255, 0.5);
}

.footer__nav > a:hover {
  color: #ffffff;
}

.aside-toggled {
  overflow: hidden;
}

.sidebar {
  width: 250px;
  position: fixed;
  left: 0;
  height: 100%;
  overflow: hidden;
  z-index: 101;
  background-color: #ffffff;
  border-right: 1px solid #b6b2b2;
}

@media (min-width: 1200px) {
  .sidebar:not(.sidebar--hidden) {
    top: 72px;
    height: calc(100% - 72px);
  }
}

@media (max-width: 1199.98px) {
  .sidebar {
    background-color: rgba(0, 0, 0, 0.96);
    transition: transform 300ms, opacity 300ms;
  }
  .sidebar:not(.toggled) {
    opacity: 0;
    transform: translate3d(-100%, 0, 0);
  }
  .sidebar.toggled {
    box-shadow: 5px 0 10px rgba(0, 0, 0, 0.25);
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
  .sidebar .user__info {
    background-color: rgba(255, 255, 255, 0.09);
  }
  .sidebar .user__info:hover {
    background-color: rgba(255, 255, 255, 0.1);
  }
}

.sidebar .os-content {
  padding: 15px !important;
}

.sidebar--hidden {
  background-color: rgba(0, 0, 0, 0.96);
  transition: transform 300ms, opacity 300ms;
  top: 0;
  height: 100%;
  overflow: hidden;
}

.sidebar--hidden:not(.toggled) {
  opacity: 0;
  transform: translate3d(-100%, 0, 0);
}

.sidebar--hidden.toggled {
  box-shadow: 5px 0 10px rgba(0, 0, 0, 0.25);
  opacity: 1;
  transform: translate3d(0, 0, 0);
}

.sidebar--hidden .user__info {
  background-color: rgba(255, 255, 255, 0.09);
}

.sidebar--hidden .user__info:hover {
  background-color: rgba(255, 255, 255, 0.1);
}

.sidebar__inner {
  padding: 30px 2rem 0.5rem 2rem;
}

.user {
  border-radius: 2px;
  position: relative;
  margin-bottom: 15px;
}

.user .dropdown-menu {
  width: 100%;
  border-radius: 0 0 2px 2px;
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-top: 0;
}

.user__info {
  display: flex;
  flex-direction: row;
  align-items: center;
  cursor: pointer;
  font-size: 0.9rem;
  padding: 1rem;
  border-radius: 2px;
  background-color: rgba(255, 255, 255, 0.06);
  transition: background-color 300ms;
}

.user__info:hover {
  background-color: rgba(255, 255, 255, 0.1);
}

.user__img {
  width: 3rem;
  height: 3rem;
  border-radius: 50%;
  margin-right: 0.8rem;
}

.user__name {
  font-weight: 600;
  margin-top: 0.2rem;
}

.user__email {
  color: rgba(255, 255, 255, 0.5);
}

.user__info__sidebar .user__name {
  color: black;
}

.user__info__sidebar .user__email {
  color: black;
}

.navigation {
  list-style: none;
  padding: 0;
}

.navigation li a {
  transition: background-color 300ms, color 300ms;
  font-weight: 600;
  display: block;
}

.navigation li:not(.navigation__active):not(.navigation__sub--active) a {
  color: #000000;
}

.navigation li:not(.navigation__active):not(.navigation__sub--active) a:hover {
  background-color: rgba(0, 0, 0, 0.2);
  color: #000000;
}

.navigation > li > a {
  padding: 0.75rem 1rem 0.85rem;
  position: relative;
  border-radius: 2px;
}

.navigation > li > a > i {
  vertical-align: top;
  font-size: 1.75rem;
  position: relative;
  top: 0.1rem;
  width: 1.5rem;
  text-align: center;
  margin-right: 0.6rem;
}

.navigation > .navigation__active,
.navigation > .navigation__sub--active {
  margin: 2px 0;
}

.navigation > .navigation__active > a,
.navigation > .navigation__sub--active > a {
  background-color: rgba(255, 255, 255, 0.06);
  color: #ffffff;
}

.navigation__sub > a {
  margin-bottom: 1px;
}

.navigation__sub > ul {
  border-radius: 2px;
  list-style: none;
  overflow: hidden;
  padding: 0;
  margin: 0;
}

.navigation__sub > ul > li > a {
  padding: .6rem 1rem .6rem 2.4rem;
}

.navigation__sub > ul > li:last-child {
  padding-bottom: 0.8rem;
}

.navigation__sub:not(.navigation__sub--active) > ul {
  display: none;
}

.navigation__sub .navigation__active {
  position: relative;
}

.navigation__sub .navigation__active:before {
  width: 5px;
  height: 5px;
  content: '';
  border-radius: 50%;
  background-color: #ffffff;
  position: absolute;
  left: 1.5rem;
  top: 1.1rem;
}

.navigation__sub .navigation__active > a {
  color: #ffffff;
}

.toggle-switch {
  display: inline-block;
  width: 36px;
  height: 20px;
  position: relative;
}

.toggle-switch__helper {
  position: absolute;
  height: 12px;
  width: 100%;
}

.toggle-switch__helper:before, .toggle-switch__helper:after {
  will-change: left, background-color;
  content: '';
  position: absolute;
  left: 0;
  transition: left 200ms, background-color, 200ms;
}

.toggle-switch__helper:before {
  background-color: rgba(0, 0, 0, 0.4);
  top: 4px;
  height: 100%;
  width: 100%;
  border-radius: 10px;
}

.toggle-switch__helper:after {
  width: 19px;
  height: 19px;
  border-radius: 50%;
  background-color: #ffffff;
  left: 0;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
  z-index: 1;
}

.toggle-switch__checkbox {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  z-index: 2;
  cursor: pointer;
}

.toggle-switch__checkbox:checked ~ .toggle-switch__helper:after {
  left: calc(100% - 19px);
  background-color: #dc3545;
}

.toggle-switch__checkbox:disabled {
  cursor: auto;
}

.toggle-switch__checkbox:disabled ~ .toggle-switch__helper {
  opacity: 0.65;
}

.toggle-switch__checkbox:active ~ .toggle-switch__helper:after {
  box-shadow: 0 0 0 10px rgba(255, 255, 255, 0.05);
}

.toggle-switch--amber .toggle-switch__checkbox:checked ~ .toggle-switch__helper:after {
  background-color: #ffc107;
}

.toggle-switch--blue .toggle-switch__checkbox:checked ~ .toggle-switch__helper:after {
  background-color: #007bff;
}

.toggle-switch--green .toggle-switch__checkbox:checked ~ .toggle-switch__helper:after {
  background-color: #28a745;
}

.toggle-switch--teal .toggle-switch__checkbox:checked ~ .toggle-switch__helper:after {
  background-color: #20c997;
}

.toggle-switch--purple .toggle-switch__checkbox:checked ~ .toggle-switch__helper:after {
  background-color: #6f42c1;
}

.toggle-switch--cyan .toggle-switch__checkbox:checked ~ .toggle-switch__helper:after {
  background-color: #17a2b8;
}

.listview__header {
  color: #000000;
  text-transform: uppercase;
  padding: 1.2rem 1rem 1rem;
  border-bottom: 1px solid rgba(255, 255, 255, 0.04);
  text-align: center;
}

.listview__header .actions {
  position: absolute;
  top: 0.8rem;
  right: 1rem;
}

.listview__scroll {
  overflow-y: auto;
}

.listview__item {
  padding: 1.25rem 2.2rem;
  transition: background-color 300ms, border-color 300ms;
}

.listview__item > .avatar-img {
  margin-top: -0.1rem;
}

.listview:not(.listview--block) .listview__item {
  display: flex;
}

@media (min-width: 576px) {
  .listview:not(.listview--block) .listview__item {
    align-items: center;
  }
}

.listview__content {
  flex: 1;
  min-width: 0;
}

.listview__content > p {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  color: grey;
  margin-bottom: 0;
}

.listview__heading {
  font-size: 1rem;
  color: #000000;
  position: relative;
}

.listview__heading:hover {
  color: grey;
}

.listview__heading > small {
  float: right;
  color: rgba(255, 255, 255, 0.5);
  font-weight: 600;
  font-size: 0.85rem;
  margin-top: 0.1rem;
}

.listview__heading + p {
  margin: 0.35rem 0 0;
  color: grey;
}

.listview__attrs {
  flex: 1 100%;
  margin-top: 0.7rem;
}

.listview__attrs > span {
  padding: 0.55rem 0.7rem 0.6rem;
  border: 1px solid rgba(255, 255, 255, 0.125);
  display: inline-block;
  line-height: 100%;
  font-size: 0.9rem;
  margin: 0.2rem 0.05rem 0.055rem 0;
}

.listview--hover .listview__item:hover {
  border-color: transparent !important;
  background-color: rgba(255, 255, 255, 0.06);
}

.listview--striped .listview__item:nth-child(even) {
  background-color: rgba(255, 255, 255, 0.03);
}

.listview__item--active {
  background-color: rgba(0, 0, 0, 0.035);
}

.listview--bordered .listview__item + .listview__item {
  border-top: 1px solid rgba(255, 255, 255, 0.05);
}

.listview__actions {
  margin-left: auto;
  align-self: flex-start;
  margin-right: -1rem;
}

.toolbar {
  display: flex;
  flex-direction: row;
  height: 4.5rem;
  align-items: center;
  padding: 0.05rem 2.2rem 0;
  position: relative;
}

.toolbar:not(.toolbar--inner) {
  background-color: rgba(0, 0, 0, 0.2);
  border-radius: 2px;
  margin-bottom: 30px;
  box-shadow: 0 1px 5px rgba(0, 0, 0, 0.1);
}

.toolbar .actions {
  margin: 0.05rem -0.8rem 0 auto;
}

.toolbar--inner {
  margin-bottom: 1rem;
  border-radius: 2px 2px 0 0;
  background-color: rgba(0, 0, 0, 0.1);
}

.toolbar__nav {
  white-space: nowrap;
  overflow-x: auto;
}

.toolbar__nav > a {
  font-weight: 600;
  color: rgba(255, 255, 255, 0.5);
  display: inline-block;
  transition: color 300ms;
}

.toolbar__nav > a + a {
  padding-left: 1rem;
}

.toolbar__nav > a.active, .toolbar__nav > a:hover {
  color: #000000;
}

.toolbar__search {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  border-radius: 2px;
  padding-left: 3rem;
  display: none;
  background-color: rgba(0, 0, 0, 0.96);
}

.toolbar__search input[type=text] {
  width: 100%;
  height: 100%;
  border: 0;
  padding: 0 1.6rem;
  font-size: 1.2rem;
  background-color: transparent;
  color: #ffffff;
  padding-bottom: 2px;
}

.toolbar__search input[type=text]::-webkit-input-placeholder {
  color: rgba(0, 0, 0, 0.4);
}

.toolbar__search input[type=text]:-moz-placeholder {
  color: rgba(0, 0, 0, 0.4);
}

.toolbar__search input[type=text]::-moz-placeholder {
  color: rgba(0, 0, 0, 0.4);
}

.toolbar__search input[type=text]:-ms-input-placeholder {
  color: rgba(0, 0, 0, 0.4);
}

.toolbar__search__close {
  transition: color 300ms;
  cursor: pointer;
  position: absolute;
  top: 1.2rem;
  left: 1.8rem;
  font-size: 2rem;
  color: #ffffff;
}

.toolbar__search__close:hover {
  color: darkgrey;
}

.toolbar__label {
  margin: 0;
  font-size: 1.1rem;
}

.page-loader {
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.96);
  z-index: 999999999999999999;
  align-items: center;
  justify-content: center;
  display: flex;
}

.page-loader__spinner {
  position: relative;
  width: 50px;
  height: 50px;
}

.page-loader__spinner svg {
  animation: rotate 2s linear infinite;
  transform-origin: center center;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

.page-loader__spinner svg circle {
  stroke-dasharray: 1, 200;
  stroke-dashoffset: 0;
  animation: dash 1.5s ease-in-out infinite, color 6s ease-in-out infinite;
  stroke-linecap: round;
}

@keyframes rotate {
  100% {
    transform: rotate(360deg);
  }
}

@keyframes dash {
  0% {
    stroke-dasharray: 1, 200;
    stroke-dashoffset: 0;
  }
  50% {
    stroke-dasharray: 89, 200;
    stroke-dashoffset: -35px;
  }
  100% {
    stroke-dasharray: 89, 200;
    stroke-dashoffset: -124px;
  }
}

@keyframes color {
  100%,
  0% {
    stroke: #dc3545;
  }
  40% {
    stroke: #007bff;
  }
  66% {
    stroke: #28a745;
  }
  80%,
  90% {
    stroke: #ffc107;
  }
}

@media (min-width: 768px) {
  .profile {
    display: flex;
    align-items: center;
    flex-direction: row;
  }
}

@media (max-width: 767.98px) {
  .profile {
    margin-top: 75px;
    text-align: center;
  }
}

.profile__img {
  padding: 5px;
  position: relative;
}

.profile__img img {
  max-width: 200px;
  border-radius: 2px;
}

@media (max-width: 767.98px) {
  .profile__img img {
    margin: -55px 0 -10px;
    width: 120px;
    border: 5px solid #ffffff;
    border-radius: 50%;
  }
}

.profile__img__edit {
  position: absolute;
  font-size: 1.2rem;
  top: 15px;
  left: 15px;
  background-color: rgba(0, 0, 0, 0.4);
  width: 30px;
  height: 30px;
  line-height: 30px;
  border-radius: 50%;
  text-align: center;
  color: #ffffff;
}

.profile__img__edit:hover {
  background-color: rgba(0, 0, 0, 0.65);
  color: #ffffff;
}

.profile__info {
  padding: 30px;
}

.photos {
  margin: 0 -4px;
}

.photos > a {
  padding: 0;
  border: 4px solid transparent;
}

.photos > a img {
  border-radius: 2px;
  width: 100%;
}

.lightbox > a {
  position: relative;
}

.lightbox > a:before {
  content: '';
  z-index: 1;
  position: absolute;
  left: 10px;
  top: 10px;
  width: calc(100% - 20px);
  height: calc(100% - 20px);
  background-color: rgba(255, 255, 255, 0.25);
  opacity: 0;
  transition: opacity 300ms;
}

.lightbox > a:hover:before {
  opacity: 1;
}

@media (max-width: 575.98px) {
  .contacts {
    margin: 0 -5px;
  }
  .contacts > [class*="col-"] {
    padding: 0 5px;
  }
}

.contacts__item {
  background-color: rgba(0, 0, 0, 0.2);
  border-radius: 2px;
  box-shadow: 0 1px 5px rgba(0, 0, 0, 0.1);
  padding: 1.8rem 1.5rem 1.15rem;
  text-align: center;
  margin-bottom: 30px;
}

.contacts__item:hover .contacts__img > img, .contacts__item:hover .contacts__img > i {
  transform: scale(1.1);
}

@media (max-width: 575.98px) {
  .contacts__item {
    margin-bottom: 10px;
  }
}

.contacts__img {
  display: block;
  margin-bottom: 1.1rem;
}

.contacts__img > img {
  max-width: 120px;
  max-height: 120px;
  width: 100%;
  border-radius: 50%;
  transition: transform 300ms;
}

.contacts__info strong,
.contacts__info small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  display: block;
}

.contacts__info strong {
  font-weight: 600;
}

.contacts__info small {
  font-size: 0.9rem;
  color: rgba(255, 255, 255, 0.5);
}

.contacts__btn {
  margin-top: 10px;
  font-weight: 600;
  text-transform: uppercase;
  border: 0;
  line-height: 100%;
  background-color: transparent;
  color: #ffffff;
  cursor: pointer;
  padding: 8px 10px;
  border-radius: 2px;
  transition: background-color 300ms, color 300ms;
  font-size: 0.9rem;
}

.contacts__btn:hover {
  background-color: rgba(255, 255, 255, 0.08);
}

.new-contact__header {
  background-color: rgba(0, 0, 0, 0.1);
  text-align: center;
  padding: 30px 0;
  border-radius: 2px 2px 0 0;
}

.new-contact__img {
  border-radius: 50%;
  box-shadow: 0 0 0 5px rgba(255, 255, 255, 0.08);
  width: 150px;
  height: 150px;
}

@media (max-width: 767.98px) {
  .new-contact__img {
    width: 100px;
    height: 100px;
  }
}

.new-contact__upload {
  position: absolute;
  top: 20px;
  left: 20px;
  font-size: 1.5rem;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  line-height: 38px;
  background-color: rgba(255, 255, 255, 0.08);
  color: #ffffff;
  transition: background-color 300ms;
}

.new-contact__upload:hover {
  color: #ffffff;
  background-color: rgba(255, 255, 255, 0.2);
}

@media (max-width: 575.98px) {
  .groups {
    margin: 0 -5px;
  }
  .groups [class*=col-] {
    padding: 0 5px;
  }
  .groups .groups__item {
    margin-bottom: 10px;
  }
}

.groups__item {
  position: relative;
  text-align: center;
  padding: 2rem 1rem 1.5rem;
  margin-bottom: 30px;
  background-color: rgba(0, 0, 0, 0.2);
  border-radius: 2px;
  box-shadow: 0 1px 5px rgba(0, 0, 0, 0.1);
}

.groups__item:hover .actions {
  opacity: 1;
}

.groups__item .actions {
  position: absolute;
  top: 0.7rem;
  right: 0.5rem;
  z-index: 1;
  opacity: 0;
}

.groups__img {
  width: 6.5rem;
  display: inline-block;
}

.groups__img .avatar-img {
  display: inline-block;
  margin: 0 1px 4px 0;
  vertical-align: top;
}

.groups__info {
  margin-top: 1rem;
}

.groups__info > strong {
  color: #000000;
  display: block;
  font-weight: 600;
}

.groups__info > small {
  font-size: 0.9rem;
  color: rgba(255, 255, 255, 0.5);
}

.checkbox-char {
  position: relative;
}

.checkbox-char > input[type="checkbox"] {
  display: none;
}

.checkbox-char > input[type="checkbox"]:checked ~ label {
  background-color: rgba(255, 255, 255, 0.75);
  font-size: 0;
}

.checkbox-char > input[type="checkbox"]:checked ~ label:before {
  opacity: 1;
}

.checkbox-char > label {
  border-radius: 50%;
  background-color: rgba(255, 255, 255, 0.08);
  font-size: 1.25rem;
  text-transform: uppercase;
  margin: 0;
  line-height: 100%;
  padding-bottom: 2px;
  transition: background-color 250ms;
}

.checkbox-char > label:hover {
  background-color: rgba(255, 255, 255, 0.15);
}

.checkbox-char > label:before {
  width: 100%;
  height: 100%;
  font-family: "zwicon";
  content: "";
  font-size: 2rem;
  position: absolute;
  left: 0;
  top: 0;
  opacity: 0;
  transition: opacity 250ms;
  color: #000000;
  cursor: pointer;
}

.checkbox-char > label, .checkbox-char > label:before {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
}

.icon-toggle {
  position: relative;
  display: inline-block;
  width: 35px;
  height: 35px;
  cursor: pointer;
  line-height: 35px;
}

.icon-toggle [class*="zwicon-"] {
  z-index: 2;
  font-size: 1.75rem;
  color: rgba(255, 255, 255, 0.25);
  transition: color 300ms;
}

.icon-toggle input[type="checkbox"],
.icon-toggle input[type="radio"] {
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  cursor: pointer;
  opacity: 0;
}

.icon-toggle input[type="checkbox"]:checked ~ [class*="zwicon-"],
.icon-toggle input[type="radio"]:checked ~ [class*="zwicon-"] {
  color: #ffffff;
}

.icon-toggle:hover [class*="zwicon-"] {
  color: rgba(255, 255, 255, 0.5);
}

.custom-control-input:not(:checked) ~ .custom-control-label::before {
  background-color: #ffffff;
  /* Change the background color of the toggle when it is not checked */
  border-color: grey;
  /* Change the border color of the checkbox when it is not checked */
}

.custom-control-input:checked ~ .custom-control-label::before {
  background-color: grey;
  /* Change the color of the toggle when it is checked */
}

.messages {
  display: flex;
  flex-direction: row;
  background-color: rgba(0, 0, 0, 0.2);
  border-radius: 2px;
  box-shadow: 0 1px 5px rgba(0, 0, 0, 0.1);
  height: calc(100vh - 180px);
}

.messages__sidebar {
  width: 23rem;
  overflow: hidden;
}

@media (min-width: 768px) {
  .messages__sidebar {
    border-right: 1px solid rgba(255, 255, 255, 0.04);
  }
}

@media (max-width: 991.98px) {
  .messages__sidebar {
    display: none;
  }
}

.messages__sidebar .listview {
  height: calc(100% - 130px);
  overflow-y: auto;
}

.messages__search {
  padding: 1rem 2.2rem 0;
  position: relative;
}

.messages__search .form-group:before {
  font-family: "zwicon";
  content: "";
  font-size: 1.3rem;
  position: absolute;
  left: 1rem;
  bottom: 0.5rem;
}

.messages__search .form-control {
  padding-left: 3rem;
}

.messages__body {
  flex: 2;
  flex-direction: column;
  display: flex;
}

.messages__header,
.messages__reply {
  flex: 0 0 auto;
}

.messages__content {
  position: relative;
  flex: 1 1 auto;
  padding: 2.5rem;
  overflow: hidden;
  height: 100%;
}

.messages__item {
  display: flex;
  margin-bottom: 2rem;
}

.messages__item:not(.messages__item--right) {
  flex-direction: row;
}

.messages__item:not(.messages__item--right) > .messages__details {
  margin-left: -0.5rem;
}

.messages__item:not(.messages__item--right) > .messages__details > p {
  background-color: rgba(255, 255, 255, 0.08);
}

.messages__details {
  max-width: 500px;
}

.messages__details > p {
  border-radius: 2px;
  padding: 1rem 1.3rem;
  margin-bottom: 0;
  display: inline-block;
  text-align: left;
}

.messages__details > p + p {
  margin-top: 2px;
}

.messages__details > small {
  display: block;
  padding: 0 1.5rem;
  margin-top: 1rem;
  color: rgba(255, 255, 255, 0.5);
  font-size: 0.9rem;
}

.messages__details > small > i {
  font-size: 1.2rem;
  vertical-align: top;
  margin-right: 0.3rem;
  margin-top: 0.15rem;
}

.messages__item--right {
  flex-direction: row-reverse;
}

.messages__item--right .messages__details {
  text-align: right;
}

.messages__item--right .messages__details > p {
  background-color: rgba(255, 255, 255, 0.75);
  color: #131313;
  margin-left: auto;
}

.messages__reply {
  border-top: 1px solid rgba(255, 255, 255, 0.04);
  position: relative;
}

.messages__reply__text {
  height: 50px;
  width: 100%;
  margin-bottom: -5px;
  border: 0;
  border-radius: 2px;
  padding: 1rem 1.5rem;
  resize: none;
  background-color: transparent;
  color: #000000;
}

.messages__reply__text::-webkit-input-placeholder {
  color: rgba(0, 0, 0, 0.4);
}

.messages__reply__text:-moz-placeholder {
  color: rgba(0, 0, 0, 0.4);
}

.messages__reply__text::-moz-placeholder {
  color: rgba(0, 0, 0, 0.4);
}

.messages__reply__text:-ms-input-placeholder {
  color: rgba(0, 0, 0, 0.4);
}

.price-table {
  text-align: center;
}

.price-table:not(.price-table--highlight) {
  margin: 0 -10px;
}

.price-table:not(.price-table--highlight) > [class*="col-"] {
  padding: 0 10px;
  text-align: center;
}

.price-table--highlight {
  margin: 0;
}

.price-table--highlight > [class*="col-"] {
  padding: 0;
}

.price-table__item {
  margin-bottom: 20px;
  background-color: rgba(0, 0, 0, 0.2);
  border-radius: 2px;
  box-shadow: 0 1px 5px rgba(0, 0, 0, 0.1);
}

@media (max-width: 767.98px) {
  .price-table__item {
    max-width: 400px;
    margin-left: auto;
    margin-right: auto;
  }
}

@media (min-width: 768px) {
  .price-table__item--popular {
    padding-bottom: 1rem;
    position: relative;
    z-index: 1;
    margin: -1rem 0 0;
    box-shadow: 0 -5px 30px rgba(0, 0, 0, 0.4);
  }
  .price-table__item--popular .price-table__header {
    padding: 2.5rem 2rem 2.5rem;
    background-color: rgba(0, 0, 0, 0.35);
  }
}

.price-table__header {
  color: #ffffff;
  border-radius: 2px 2px 0 0;
  padding: 2rem;
  margin-bottom: 2rem;
  background-color: rgba(0, 0, 0, 0.2);
}

.price-table__title {
  text-transform: uppercase;
  font-weight: 600;
  font-size: 1.3rem;
}

.price-table__desc {
  color: rgba(255, 255, 255, 0.75);
  margin: 0.3rem 0;
}

.price-table__price {
  font-size: 1.8rem;
}

.price-table__price > small {
  font-size: 1rem;
  position: relative;
  top: -0.4rem;
}

.price-table__info {
  padding-left: 0;
  list-style: none;
  padding: 1rem 0;
}

.price-table__info > li {
  font-weight: 600;
  padding: 1rem 1.5rem;
}

.price-table__info > li + li {
  border-top: 1px solid rgba(255, 255, 255, 0.04);
}

.price-table__action {
  display: inline-block;
  text-transform: uppercase;
  margin-bottom: 2.5rem;
  padding: 0.8rem 1.2rem;
  border-radius: 2px;
  color: #ffffff;
  background-color: rgba(0, 0, 0, 0.2);
  font-weight: 600;
  box-shadow: 0 3px 5px rgba(0, 0, 0, 0.12);
  transition: opacity 300ms;
}

.price-table__action:hover, .price-table__action:focus {
  opacity: 0.9;
  color: #ffffff;
}

.invoice {
  min-width: 1100px;
  max-width: 1170px;
  border-radius: 2px;
  padding: 2.5rem;
  background-color: rgba(0, 0, 0, 0.2);
  border-radius: 2px;
  box-shadow: 0 1px 5px rgba(0, 0, 0, 0.1);
}

.invoice__header {
  padding: 1.5rem;
  text-align: center;
  border-radius: 2px 2px 0 0;
  margin-bottom: 1.5rem;
}

.invoice__address {
  margin-bottom: 4rem;
}

.invoice__address h4 {
  font-weight: normal;
  margin-bottom: 1rem;
}

.invoice__attrs {
  margin-bottom: 2.5rem;
}

.invoice__attrs [class*="col-"] {
  padding: -10px;
}

.invoice__attrs__item {
  padding: 1.5rem 2rem;
  border-radius: 2px;
  text-align: center;
  background-color: rgba(255, 255, 255, 0.08);
}

.invoice__attrs__item small {
  margin-bottom: 0.2rem;
  display: block;
  font-size: 1rem;
}

.invoice__attrs__item h3 {
  margin: 0;
  line-height: 100%;
  font-weight: normal;
}

.invoice__table {
  margin-bottom: 4rem;
}

.invoice__footer {
  text-align: center;
  margin: 4rem 0 1.5rem;
}

.invoice__footer > a {
  color: #000000;
}

@media print {
  @page {
    margin: 0;
    size: auto;
  }
  body {
    margin: 0mm 0mm 0mm 0mm !important;
    padding: 0mm !important;
  }
  .header,
  .actions,
  .content__title,
  .footer,
  .notifications,
  .navigation,
  .chat,
  .growl-animated,
  .btn--action {
    display: none !important;
  }
  .invoice {
    padding: 30px !important;
    -webkit-print-color-adjust: exact !important;
  }
}

.login {
  min-height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  padding-top: 1.2rem;
}

.login__block {
  max-width: 460px;
  width: 100%;
  display: none;
  text-align: center;
  -webkit-animation-name: fadeInUp;
  animation-name: fadeInUp;
  -webkit-animation-duration: 300ms;
  animation-duration: 300ms;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  background-color: rgba(0, 0, 0, 0.2);
  border-radius: 2px;
  box-shadow: 0 1px 5px rgba(0, 0, 0, 0.1);
}

@media (min-width: 576px) {
  .login__block:hover .login__block__actions .dropdown {
    display: block;
  }
}

.login__block.active {
  z-index: 10;
  display: inline-block;
}

.login__block__header {
  padding: 1.25rem;
  position: relative;
  border-radius: 2px 2px 0 0;
  background-color: rgba(0, 0, 0, 0.2);
}

.login__block__header > i,
.login__block__header > img {
  display: block;
  margin-bottom: 0.6rem;
}

.login__block__header > i {
  font-size: 3rem;
}

.login__block__header > img {
  width: 35px;
  height: 35px;
  border-radius: 50%;
  margin-left: auto;
  margin-right: auto;
  box-shadow: 0 0 0 3px rgba(255, 255, 255, 0.1);
}

.login__block__actions {
  position: absolute;
  bottom: 0.8rem;
  right: 0.8rem;
}

.login__block__actions .dropdown:not(.show) {
  display: none;
}

.login__block__body {
  padding: 2rem;
}

.todo__item {
  display: flex;
  align-items: flex-start;
}

.todo__item > label {
  margin-right: 1.25rem;
}

.todo__item > input[type=checkbox]:checked ~ .listview__content, .todo__item > input[type=checkbox]:checked ~ .listview__content .listview__attrs > span {
  text-decoration: line-through;
}

.notes__item {
  margin-bottom: 30px;
}

.notes__item > a {
  height: 155px;
  background-color: rgba(0, 0, 0, 0.2);
  display: block;
  padding: 1.8rem 2rem;
  position: relative;
  color: rgba(255, 255, 255, 0.75);
  transition: background-color 300ms;
}

.notes__item > a, .notes__item > a:before {
  border-radius: 2px;
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.08);
}

.notes__item > a:before {
  content: '';
  position: absolute;
  width: calc(100% - 10px);
  bottom: -5px;
  left: 5px;
  z-index: -1;
  height: 5px;
  background-color: rgba(0, 0, 0, 0.4);
}

.notes__item:hover .notes__actions {
  opacity: 1;
}

.notes__title {
  color: #000000;
  margin-bottom: 1.1rem;
  font-weight: 600;
  font-size: 1.1rem;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.notes__actions {
  position: absolute;
  right: 2.2rem;
  bottom: 1rem;
  font-size: 1.1rem;
  width: 2.2rem;
  height: 2.2rem;
  text-align: center;
  background: rgba(0, 0, 0, 0.96);
  border-radius: 50%;
  line-height: 2rem;
  color: #ffffff;
  box-shadow: 0 0 4px rgba(0, 0, 0, 0.5);
  opacity: 0;
  transition: opacity 300ms;
  cursor: pointer;
}

.notes__actions:hover {
  background: rgba(0, 0, 0, 0.9);
}

.note-view .trumbowyg-editor {
  border: 1px solid black;
}

.results__header {
  padding: 2rem 2rem 0;
  border-radius: 2px 2px 0 0;
  margin-bottom: 2rem;
  background-color: rgba(0, 0, 0, 0.1);
}

.results__search {
  position: relative;
}

.results__search input[type="text"] {
  width: 100%;
  border: 0;
  border-radius: 2px;
  background-color: rgba(255, 255, 255, 0.08);
  color: #000000;
  padding: 0 1rem 0 3rem;
  height: 2.9rem;
  margin-bottom: 1rem;
  transition: background-color 300ms;
}

.results__search input[type="text"]::-webkit-input-placeholder {
  color: rgba(0, 0, 0, 0.4);
}

.results__search input[type="text"]:-moz-placeholder {
  color: rgba(0, 0, 0, 0.4);
}

.results__search input[type="text"]::-moz-placeholder {
  color: rgba(0, 0, 0, 0.4);
}

.results__search input[type="text"]:-ms-input-placeholder {
  color: rgba(0, 0, 0, 0.4);
}

.results__search input[type="text"]:focus {
  background-color: rgba(0, 0, 0, 0.2);
}

.results__search:before {
  content: '';
  font-family: "zwicon";
  content: "";
  font-size: 1.3rem;
  position: absolute;
  top: 0.45rem;
  left: 1.1rem;
  z-index: 1;
}

.results__nav {
  border: 0;
}

.issue-tracker .listview__item {
  position: relative;
}

.issue-tracker .listview__item .actions {
  margin-left: 0.5rem;
}

.issue-tracker__item {
  margin-left: 2rem;
}

.issue-tracker__item > [class*="zwicon-"] {
  font-size: 1.4rem;
  vertical-align: top;
  position: relative;
  top: 0.05rem;
  margin-right: 0.5rem;
}

.team {
  margin-top: 7rem;
}

.team__item {
  text-align: center;
  margin-bottom: 7rem;
}

@media (max-width: 767.98px) {
  .team__item {
    max-width: 365px;
    margin: 0 auto 80px;
  }
}

.team__item .card-subtitle {
  margin-bottom: 1rem;
}

.team__img {
  display: inline-block;
  border-radius: 50%;
  width: 150px;
  height: 150px;
  border: 5px solid rgba(255, 255, 255, 0.08);
  margin: -4rem auto -0.5rem;
}

.team__social {
  margin-top: 2rem;
}

.team__social > a {
  display: inline-block;
  width: 35px;
  height: 35px;
  line-height: 32px;
  border-radius: 50%;
  color: #ffffff;
  background-color: rgba(255, 255, 255, 0.08);
  font-size: 1.5rem;
  margin: 0 1px;
  transition: background-color 300ms;
}

.team__social > a:hover {
  background-color: rgba(255, 255, 255, 0.2);
}

.blog__tags {
  text-align: center;
  border-top: 1px solid rgba(255, 255, 255, 0.04);
  border-bottom: 1px solid rgba(255, 255, 255, 0.04);
  padding: 2rem 1rem 1.5rem;
  margin: 2rem 0 0.5rem;
}

.blog__arthur {
  padding: 2rem 2rem 2.5rem;
  text-align: center;
}

.blog__arthur-img {
  margin-bottom: 1.5rem;
}

.blog__arthur-img > img {
  width: 100px;
  height: 100px;
  border-radius: 50%;
  border: 3px solid rgba(255, 255, 255, 0.08);
}

.blog__arthur-social {
  margin: 2rem 0 0 0;
}

.blog__arthur-social > a {
  display: inline-block;
  width: 35px;
  height: 35px;
  text-align: center;
  border-radius: 50%;
  line-height: 32px;
  color: #ffffff;
  background-color: rgba(255, 255, 255, 0.08);
  font-size: 1.5rem;
  margin: 0 1px;
  transition: background-color 300ms;
}

.blog__arthur-social > a:hover {
  background-color: rgba(255, 255, 255, 0.2);
}

.q-a__item {
  align-items: flex-start;
}

.q-a__stat {
  margin: 0.35rem 2rem 0 0;
  align-self: flex-start;
}

.q-a__stat > span {
  display: inline-block;
  width: 70px;
  border-radius: 2px;
  background-color: rgba(255, 255, 255, 0.08);
  text-align: center;
  padding: 0.9rem 0.5rem 0.65rem;
  margin-right: 0.2rem;
}

.q-a__stat > span > strong {
  display: block;
  font-size: 1.2rem;
  font-weight: 600;
  line-height: 100%;
  margin-bottom: 0.25rem;
}

.q-a__stat > span > small {
  text-transform: uppercase;
  line-height: 100%;
}

.q-a__question {
  position: relative;
  margin-bottom: 3rem;
}

@media (min-width: 768px) {
  .q-a__question {
    margin-top: 1rem;
  }
}

@media (min-width: 576px) {
  .q-a__question {
    padding-left: 100px;
  }
}

.q-a__question > h2 {
  font-size: 1.3rem;
}

.q-a__question > h2 + p {
  margin-top: 1rem;
}

.q-a__question > p {
  font-size: 1.1rem;
}

.q-a__question .q-a__info {
  border-top: 1px solid rgba(255, 255, 255, 0.125);
}

.q-a__vote {
  position: absolute;
  left: 0;
  top: 0;
  text-align: center;
}

.q-a__vote [class*="zwicon-"] {
  font-size: 3rem;
}

.q-a__vote__votes {
  padding: 0.5rem 0 0.6rem;
  background-color: rgba(255, 255, 255, 0.08);
  border-radius: 2px;
  font-weight: 600;
  width: 75px;
  font-size: 1.5rem;
  margin-bottom: -0.2rem;
}

.q-a__info {
  margin-top: 1.5rem;
  padding: 1.25rem 0;
  position: relative;
}

.q-a__info .actions {
  position: absolute;
  top: 1rem;
  right: 0;
}

.q-a__op {
  display: flex;
  align-items: center;
}

.q-a__op > a > img {
  width: 30px;
  height: 30px;
  border-radius: 2px;
  vertical-align: middle;
  margin-right: 1rem;
}

.q-a__answers {
  margin-top: 3rem;
}

[data-sa-theme] {
  transition: background 300ms;
}

@media (min-width: 576px) {
  [data-sa-theme] {
    background-size: 100% 100%;
    background-attachment: fixed;
    background-position: center;
  }
}

[data-sa-theme="1"] {
  background-color: #7b3d54;
}

[data-sa-theme="2"] {
  background-color: #234d6d;
}

[data-sa-theme="3"] {
  background-color: #174042;
}

[data-sa-theme="4"] {
  background-color: #5e3d22;
}

[data-sa-theme="5"] {
  background-color: #49423F;
}

[data-sa-theme="6"] {
  background-color: #383844;
}

[data-sa-theme="7"] {
  background-color: #273C5B;
}

[data-sa-theme="8"] {
  background-color: #3b5e5e;
}

[data-sa-theme="9"] {
  background-color: #0a4c3e;
}

[data-sa-theme="10"] {
  background-color: #772036;
}

.themes {
  position: fixed;
  top: 0;
  right: 0;
  height: 100%;
  width: 250px;
  background-color: rgba(0, 0, 0, 0.96);
  z-index: 101;
  transform: translate3d(260px, 0, 0);
  transition: box-shadow 300ms, transform 300ms, opacity 300ms;
}

.themes.toggled {
  box-shadow: -5px 0 10px rgba(0, 0, 0, 0.25);
  opacity: 1;
  transform: translate3d(0, 0, 0);
}

.themes__item {
  display: block;
  padding: 1.5rem;
  position: relative;
  transition: background-color 300ms, border-color 300ms;
}

.themes__item:not(:last-child) {
  border-bottom: 1px solid rgba(255, 255, 255, 0.02);
}

.themes__item > img {
  width: 100%;
  height: 100px;
}

.themes__item.active, .themes__item:hover {
  background-color: rgba(255, 255, 255, 0.02);
  border-bottom-color: transparent;
}

.themes__item:before {
  width: 50px;
  height: 50px;
  border-radius: 50%;
  border: 1px solid rgba(255, 255, 255, 0.125);
  top: 0;
  left: 0;
  bottom: 0;
  margin: auto;
  right: 0;
  position: absolute;
  color: #ffffff;
  text-align: center;
  line-height: 50px;
  opacity: 0;
  transform: scale(0);
  font-family: "zwicon";
  content: "";
  font-size: 3rem;
  transition: opacity 300ms, transform 300ms;
}

.themes__item.active:before {
  opacity: 1;
  transform: scale(1);
}

.ie-warning {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #ffffff;
  z-index: 1000000;
  text-align: center;
  padding: 3rem;
  overflow: auto;
}

.ie-warning > h1 {
  font-size: 2rem;
}

.ie-warning p {
  font-size: 1.2rem;
  color: rgba(255, 255, 255, 0.5);
}

.ie-warning__downloads {
  background-color: blue;
  padding: 30px 0;
  margin: 30px 0;
}

.ie-warning__downloads > a {
  padding: 0 10px;
}

.error {
  display: flex;
  align-items: center;
  flex-direction: row;
  justify-content: center;
  height: 100vh;
  width: 100%;
}

.error__inner {
  max-width: 600px;
  width: 100%;
  padding: 3rem;
  text-align: center;
  border-radius: 10px;
  background-color: rgba(0, 0, 0, 0.2);
}

.error__inner > h1 {
  font-size: 8rem;
  font-weight: bold;
  color: #ffffff;
  text-shadow: 0 0 10px rgba(0, 0, 0, 0.03);
  line-height: 100%;
  margin-bottom: 1.5rem;
}

.error__inner > h2 {
  color: #000000;
  font-weight: normal;
  margin: 1.3rem 0;
  font-size: 1.5rem;
}

.error__inner > p {
  color: rgba(255, 255, 255, 0.5);
  font-size: 1.1rem;
}

@-webkit-keyframes bounce {
  0%, 20%, 53%, 80%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    -webkit-transform: translateZ(0);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    transform: translateZ(0);
  }
  40%, 43% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    -webkit-transform: translate3d(0, -30px, 0);
    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    transform: translate3d(0, -30px, 0);
  }
  70% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    -webkit-transform: translate3d(0, -15px, 0);
    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    transform: translate3d(0, -15px, 0);
  }
  90% {
    -webkit-transform: translate3d(0, -4px, 0);
    transform: translate3d(0, -4px, 0);
  }
}

@keyframes bounce {
  0%, 20%, 53%, 80%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    -webkit-transform: translateZ(0);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    transform: translateZ(0);
  }
  40%, 43% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    -webkit-transform: translate3d(0, -30px, 0);
    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    transform: translate3d(0, -30px, 0);
  }
  70% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    -webkit-transform: translate3d(0, -15px, 0);
    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    transform: translate3d(0, -15px, 0);
  }
  90% {
    -webkit-transform: translate3d(0, -4px, 0);
    transform: translate3d(0, -4px, 0);
  }
}

.bounce {
  -webkit-animation-name: bounce;
  -webkit-transform-origin: center bottom;
  animation-name: bounce;
  transform-origin: center bottom;
}

@-webkit-keyframes flash {
  0%, 50%, to {
    opacity: 1;
  }
  25%, 75% {
    opacity: 0;
  }
}

@keyframes flash {
  0%, 50%, to {
    opacity: 1;
  }
  25%, 75% {
    opacity: 0;
  }
}

.flash {
  -webkit-animation-name: flash;
  animation-name: flash;
}

@-webkit-keyframes pulse {
  0% {
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
  }
  50% {
    -webkit-transform: scale3d(1.05, 1.05, 1.05);
    transform: scale3d(1.05, 1.05, 1.05);
  }
  to {
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
  }
}

@keyframes pulse {
  0% {
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
  }
  50% {
    -webkit-transform: scale3d(1.05, 1.05, 1.05);
    transform: scale3d(1.05, 1.05, 1.05);
  }
  to {
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
  }
}

.pulse {
  -webkit-animation-name: pulse;
  animation-name: pulse;
}

@-webkit-keyframes rubberBand {
  0% {
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
  }
  30% {
    -webkit-transform: scale3d(1.25, 0.75, 1);
    transform: scale3d(1.25, 0.75, 1);
  }
  40% {
    -webkit-transform: scale3d(0.75, 1.25, 1);
    transform: scale3d(0.75, 1.25, 1);
  }
  50% {
    -webkit-transform: scale3d(1.15, 0.85, 1);
    transform: scale3d(1.15, 0.85, 1);
  }
  65% {
    -webkit-transform: scale3d(0.95, 1.05, 1);
    transform: scale3d(0.95, 1.05, 1);
  }
  75% {
    -webkit-transform: scale3d(1.05, 0.95, 1);
    transform: scale3d(1.05, 0.95, 1);
  }
  to {
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
  }
}

@keyframes rubberBand {
  0% {
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
  }
  30% {
    -webkit-transform: scale3d(1.25, 0.75, 1);
    transform: scale3d(1.25, 0.75, 1);
  }
  40% {
    -webkit-transform: scale3d(0.75, 1.25, 1);
    transform: scale3d(0.75, 1.25, 1);
  }
  50% {
    -webkit-transform: scale3d(1.15, 0.85, 1);
    transform: scale3d(1.15, 0.85, 1);
  }
  65% {
    -webkit-transform: scale3d(0.95, 1.05, 1);
    transform: scale3d(0.95, 1.05, 1);
  }
  75% {
    -webkit-transform: scale3d(1.05, 0.95, 1);
    transform: scale3d(1.05, 0.95, 1);
  }
  to {
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
  }
}

.rubberBand {
  -webkit-animation-name: rubberBand;
  animation-name: rubberBand;
}

@-webkit-keyframes shake {
  0%, to {
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
  }
  10%, 30%, 50%, 70%, 90% {
    -webkit-transform: translate3d(-10px, 0, 0);
    transform: translate3d(-10px, 0, 0);
  }
  20%, 40%, 60%, 80% {
    -webkit-transform: translate3d(10px, 0, 0);
    transform: translate3d(10px, 0, 0);
  }
}

@keyframes shake {
  0%, to {
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
  }
  10%, 30%, 50%, 70%, 90% {
    -webkit-transform: translate3d(-10px, 0, 0);
    transform: translate3d(-10px, 0, 0);
  }
  20%, 40%, 60%, 80% {
    -webkit-transform: translate3d(10px, 0, 0);
    transform: translate3d(10px, 0, 0);
  }
}

.shake {
  -webkit-animation-name: shake;
  animation-name: shake;
}

@-webkit-keyframes headShake {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
  6.5% {
    -webkit-transform: translateX(-6px) rotateY(-9deg);
    transform: translateX(-6px) rotateY(-9deg);
  }
  18.5% {
    -webkit-transform: translateX(5px) rotateY(7deg);
    transform: translateX(5px) rotateY(7deg);
  }
  31.5% {
    -webkit-transform: translateX(-3px) rotateY(-5deg);
    transform: translateX(-3px) rotateY(-5deg);
  }
  43.5% {
    -webkit-transform: translateX(2px) rotateY(3deg);
    transform: translateX(2px) rotateY(3deg);
  }
  50% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}

@keyframes headShake {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
  6.5% {
    -webkit-transform: translateX(-6px) rotateY(-9deg);
    transform: translateX(-6px) rotateY(-9deg);
  }
  18.5% {
    -webkit-transform: translateX(5px) rotateY(7deg);
    transform: translateX(5px) rotateY(7deg);
  }
  31.5% {
    -webkit-transform: translateX(-3px) rotateY(-5deg);
    transform: translateX(-3px) rotateY(-5deg);
  }
  43.5% {
    -webkit-transform: translateX(2px) rotateY(3deg);
    transform: translateX(2px) rotateY(3deg);
  }
  50% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}

.headShake {
  -webkit-animation-name: headShake;
  -webkit-animation-timing-function: ease-in-out;
  animation-name: headShake;
  animation-timing-function: ease-in-out;
}

@-webkit-keyframes swing {
  20% {
    -webkit-transform: rotate(15deg);
    transform: rotate(15deg);
  }
  40% {
    -webkit-transform: rotate(-10deg);
    transform: rotate(-10deg);
  }
  60% {
    -webkit-transform: rotate(5deg);
    transform: rotate(5deg);
  }
  80% {
    -webkit-transform: rotate(-5deg);
    transform: rotate(-5deg);
  }
  to {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
}

@keyframes swing {
  20% {
    -webkit-transform: rotate(15deg);
    transform: rotate(15deg);
  }
  40% {
    -webkit-transform: rotate(-10deg);
    transform: rotate(-10deg);
  }
  60% {
    -webkit-transform: rotate(5deg);
    transform: rotate(5deg);
  }
  80% {
    -webkit-transform: rotate(-5deg);
    transform: rotate(-5deg);
  }
  to {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
}

.swing {
  -webkit-animation-name: swing;
  -webkit-transform-origin: top center;
  animation-name: swing;
  transform-origin: top center;
}

@-webkit-keyframes tada {
  0% {
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
  }
  10%, 20% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9) rotate(-3deg);
    transform: scale3d(0.9, 0.9, 0.9) rotate(-3deg);
  }
  30%, 50%, 70%, 90% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate(3deg);
    transform: scale3d(1.1, 1.1, 1.1) rotate(3deg);
  }
  40%, 60%, 80% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate(-3deg);
    transform: scale3d(1.1, 1.1, 1.1) rotate(-3deg);
  }
  to {
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
  }
}

@keyframes tada {
  0% {
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
  }
  10%, 20% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9) rotate(-3deg);
    transform: scale3d(0.9, 0.9, 0.9) rotate(-3deg);
  }
  30%, 50%, 70%, 90% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate(3deg);
    transform: scale3d(1.1, 1.1, 1.1) rotate(3deg);
  }
  40%, 60%, 80% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate(-3deg);
    transform: scale3d(1.1, 1.1, 1.1) rotate(-3deg);
  }
  to {
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
  }
}

.tada {
  -webkit-animation-name: tada;
  animation-name: tada;
}

@-webkit-keyframes wobble {
  0% {
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
  }
  15% {
    -webkit-transform: translate3d(-25%, 0, 0) rotate(-5deg);
    transform: translate3d(-25%, 0, 0) rotate(-5deg);
  }
  30% {
    -webkit-transform: translate3d(20%, 0, 0) rotate(3deg);
    transform: translate3d(20%, 0, 0) rotate(3deg);
  }
  45% {
    -webkit-transform: translate3d(-15%, 0, 0) rotate(-3deg);
    transform: translate3d(-15%, 0, 0) rotate(-3deg);
  }
  60% {
    -webkit-transform: translate3d(10%, 0, 0) rotate(2deg);
    transform: translate3d(10%, 0, 0) rotate(2deg);
  }
  75% {
    -webkit-transform: translate3d(-5%, 0, 0) rotate(-1deg);
    transform: translate3d(-5%, 0, 0) rotate(-1deg);
  }
  to {
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
  }
}

@keyframes wobble {
  0% {
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
  }
  15% {
    -webkit-transform: translate3d(-25%, 0, 0) rotate(-5deg);
    transform: translate3d(-25%, 0, 0) rotate(-5deg);
  }
  30% {
    -webkit-transform: translate3d(20%, 0, 0) rotate(3deg);
    transform: translate3d(20%, 0, 0) rotate(3deg);
  }
  45% {
    -webkit-transform: translate3d(-15%, 0, 0) rotate(-3deg);
    transform: translate3d(-15%, 0, 0) rotate(-3deg);
  }
  60% {
    -webkit-transform: translate3d(10%, 0, 0) rotate(2deg);
    transform: translate3d(10%, 0, 0) rotate(2deg);
  }
  75% {
    -webkit-transform: translate3d(-5%, 0, 0) rotate(-1deg);
    transform: translate3d(-5%, 0, 0) rotate(-1deg);
  }
  to {
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
  }
}

.wobble {
  -webkit-animation-name: wobble;
  animation-name: wobble;
}

@-webkit-keyframes jello {
  0%, 11.1%, to {
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
  }
  22.2% {
    -webkit-transform: skewX(-12.5deg) skewY(-12.5deg);
    transform: skewX(-12.5deg) skewY(-12.5deg);
  }
  33.3% {
    -webkit-transform: skewX(6.25deg) skewY(6.25deg);
    transform: skewX(6.25deg) skewY(6.25deg);
  }
  44.4% {
    -webkit-transform: skewX(-3.125deg) skewY(-3.125deg);
    transform: skewX(-3.125deg) skewY(-3.125deg);
  }
  55.5% {
    -webkit-transform: skewX(1.5625deg) skewY(1.5625deg);
    transform: skewX(1.5625deg) skewY(1.5625deg);
  }
  66.6% {
    -webkit-transform: skewX(-0.78125deg) skewY(-0.78125deg);
    transform: skewX(-0.78125deg) skewY(-0.78125deg);
  }
  77.7% {
    -webkit-transform: skewX(0.39062deg) skewY(0.39062deg);
    transform: skewX(0.39062deg) skewY(0.39062deg);
  }
  88.8% {
    -webkit-transform: skewX(-0.19531deg) skewY(-0.19531deg);
    transform: skewX(-0.19531deg) skewY(-0.19531deg);
  }
}

@keyframes jello {
  0%, 11.1%, to {
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
  }
  22.2% {
    -webkit-transform: skewX(-12.5deg) skewY(-12.5deg);
    transform: skewX(-12.5deg) skewY(-12.5deg);
  }
  33.3% {
    -webkit-transform: skewX(6.25deg) skewY(6.25deg);
    transform: skewX(6.25deg) skewY(6.25deg);
  }
  44.4% {
    -webkit-transform: skewX(-3.125deg) skewY(-3.125deg);
    transform: skewX(-3.125deg) skewY(-3.125deg);
  }
  55.5% {
    -webkit-transform: skewX(1.5625deg) skewY(1.5625deg);
    transform: skewX(1.5625deg) skewY(1.5625deg);
  }
  66.6% {
    -webkit-transform: skewX(-0.78125deg) skewY(-0.78125deg);
    transform: skewX(-0.78125deg) skewY(-0.78125deg);
  }
  77.7% {
    -webkit-transform: skewX(0.39062deg) skewY(0.39062deg);
    transform: skewX(0.39062deg) skewY(0.39062deg);
  }
  88.8% {
    -webkit-transform: skewX(-0.19531deg) skewY(-0.19531deg);
    transform: skewX(-0.19531deg) skewY(-0.19531deg);
  }
}

.jello {
  -webkit-animation-name: jello;
  -webkit-transform-origin: center;
  animation-name: jello;
  transform-origin: center;
}

@-webkit-keyframes heartBeat {
  0% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }
  14% {
    -webkit-transform: scale(1.3);
    transform: scale(1.3);
  }
  28% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }
  42% {
    -webkit-transform: scale(1.3);
    transform: scale(1.3);
  }
  70% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}

@keyframes heartBeat {
  0% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }
  14% {
    -webkit-transform: scale(1.3);
    transform: scale(1.3);
  }
  28% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }
  42% {
    -webkit-transform: scale(1.3);
    transform: scale(1.3);
  }
  70% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}

.heartBeat {
  -webkit-animation-duration: 1.3s;
  -webkit-animation-name: heartBeat;
  -webkit-animation-timing-function: ease-in-out;
  animation-duration: 1.3s;
  animation-name: heartBeat;
  animation-timing-function: ease-in-out;
}

@-webkit-keyframes bounceIn {
  0%, 20%, 40%, 60%, 80%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  0% {
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    opacity: 0;
    transform: scale3d(0.3, 0.3, 0.3);
  }
  20% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1);
  }
  40% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9);
    transform: scale3d(0.9, 0.9, 0.9);
  }
  60% {
    -webkit-transform: scale3d(1.03, 1.03, 1.03);
    opacity: 1;
    transform: scale3d(1.03, 1.03, 1.03);
  }
  80% {
    -webkit-transform: scale3d(0.97, 0.97, 0.97);
    transform: scale3d(0.97, 0.97, 0.97);
  }
  to {
    -webkit-transform: scaleX(1);
    opacity: 1;
    transform: scaleX(1);
  }
}

@keyframes bounceIn {
  0%, 20%, 40%, 60%, 80%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  0% {
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    opacity: 0;
    transform: scale3d(0.3, 0.3, 0.3);
  }
  20% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1);
  }
  40% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9);
    transform: scale3d(0.9, 0.9, 0.9);
  }
  60% {
    -webkit-transform: scale3d(1.03, 1.03, 1.03);
    opacity: 1;
    transform: scale3d(1.03, 1.03, 1.03);
  }
  80% {
    -webkit-transform: scale3d(0.97, 0.97, 0.97);
    transform: scale3d(0.97, 0.97, 0.97);
  }
  to {
    -webkit-transform: scaleX(1);
    opacity: 1;
    transform: scaleX(1);
  }
}

.bounceIn {
  -webkit-animation-duration: .75s;
  -webkit-animation-name: bounceIn;
  animation-duration: .75s;
  animation-name: bounceIn;
}

@-webkit-keyframes bounceInDown {
  0%, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  0% {
    -webkit-transform: translate3d(0, -3000px, 0);
    opacity: 0;
    transform: translate3d(0, -3000px, 0);
  }
  60% {
    -webkit-transform: translate3d(0, 25px, 0);
    opacity: 1;
    transform: translate3d(0, 25px, 0);
  }
  75% {
    -webkit-transform: translate3d(0, -10px, 0);
    transform: translate3d(0, -10px, 0);
  }
  90% {
    -webkit-transform: translate3d(0, 5px, 0);
    transform: translate3d(0, 5px, 0);
  }
  to {
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
  }
}

@keyframes bounceInDown {
  0%, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  0% {
    -webkit-transform: translate3d(0, -3000px, 0);
    opacity: 0;
    transform: translate3d(0, -3000px, 0);
  }
  60% {
    -webkit-transform: translate3d(0, 25px, 0);
    opacity: 1;
    transform: translate3d(0, 25px, 0);
  }
  75% {
    -webkit-transform: translate3d(0, -10px, 0);
    transform: translate3d(0, -10px, 0);
  }
  90% {
    -webkit-transform: translate3d(0, 5px, 0);
    transform: translate3d(0, 5px, 0);
  }
  to {
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
  }
}

.bounceInDown {
  -webkit-animation-name: bounceInDown;
  animation-name: bounceInDown;
}

@-webkit-keyframes bounceInLeft {
  0%, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  0% {
    -webkit-transform: translate3d(-3000px, 0, 0);
    opacity: 0;
    transform: translate3d(-3000px, 0, 0);
  }
  60% {
    -webkit-transform: translate3d(25px, 0, 0);
    opacity: 1;
    transform: translate3d(25px, 0, 0);
  }
  75% {
    -webkit-transform: translate3d(-10px, 0, 0);
    transform: translate3d(-10px, 0, 0);
  }
  90% {
    -webkit-transform: translate3d(5px, 0, 0);
    transform: translate3d(5px, 0, 0);
  }
  to {
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
  }
}

@keyframes bounceInLeft {
  0%, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  0% {
    -webkit-transform: translate3d(-3000px, 0, 0);
    opacity: 0;
    transform: translate3d(-3000px, 0, 0);
  }
  60% {
    -webkit-transform: translate3d(25px, 0, 0);
    opacity: 1;
    transform: translate3d(25px, 0, 0);
  }
  75% {
    -webkit-transform: translate3d(-10px, 0, 0);
    transform: translate3d(-10px, 0, 0);
  }
  90% {
    -webkit-transform: translate3d(5px, 0, 0);
    transform: translate3d(5px, 0, 0);
  }
  to {
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
  }
}

.bounceInLeft {
  -webkit-animation-name: bounceInLeft;
  animation-name: bounceInLeft;
}

@-webkit-keyframes bounceInRight {
  0%, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  0% {
    -webkit-transform: translate3d(3000px, 0, 0);
    opacity: 0;
    transform: translate3d(3000px, 0, 0);
  }
  60% {
    -webkit-transform: translate3d(-25px, 0, 0);
    opacity: 1;
    transform: translate3d(-25px, 0, 0);
  }
  75% {
    -webkit-transform: translate3d(10px, 0, 0);
    transform: translate3d(10px, 0, 0);
  }
  90% {
    -webkit-transform: translate3d(-5px, 0, 0);
    transform: translate3d(-5px, 0, 0);
  }
  to {
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
  }
}

@keyframes bounceInRight {
  0%, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  0% {
    -webkit-transform: translate3d(3000px, 0, 0);
    opacity: 0;
    transform: translate3d(3000px, 0, 0);
  }
  60% {
    -webkit-transform: translate3d(-25px, 0, 0);
    opacity: 1;
    transform: translate3d(-25px, 0, 0);
  }
  75% {
    -webkit-transform: translate3d(10px, 0, 0);
    transform: translate3d(10px, 0, 0);
  }
  90% {
    -webkit-transform: translate3d(-5px, 0, 0);
    transform: translate3d(-5px, 0, 0);
  }
  to {
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
  }
}

.bounceInRight {
  -webkit-animation-name: bounceInRight;
  animation-name: bounceInRight;
}

@-webkit-keyframes bounceInUp {
  0%, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  0% {
    -webkit-transform: translate3d(0, 3000px, 0);
    opacity: 0;
    transform: translate3d(0, 3000px, 0);
  }
  60% {
    -webkit-transform: translate3d(0, -20px, 0);
    opacity: 1;
    transform: translate3d(0, -20px, 0);
  }
  75% {
    -webkit-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, 10px, 0);
  }
  90% {
    -webkit-transform: translate3d(0, -5px, 0);
    transform: translate3d(0, -5px, 0);
  }
  to {
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
  }
}

@keyframes bounceInUp {
  0%, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  0% {
    -webkit-transform: translate3d(0, 3000px, 0);
    opacity: 0;
    transform: translate3d(0, 3000px, 0);
  }
  60% {
    -webkit-transform: translate3d(0, -20px, 0);
    opacity: 1;
    transform: translate3d(0, -20px, 0);
  }
  75% {
    -webkit-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, 10px, 0);
  }
  90% {
    -webkit-transform: translate3d(0, -5px, 0);
    transform: translate3d(0, -5px, 0);
  }
  to {
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
  }
}

.bounceInUp {
  -webkit-animation-name: bounceInUp;
  animation-name: bounceInUp;
}

@-webkit-keyframes bounceOut {
  20% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9);
    transform: scale3d(0.9, 0.9, 0.9);
  }
  50%, 55% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    opacity: 1;
    transform: scale3d(1.1, 1.1, 1.1);
  }
  to {
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    opacity: 0;
    transform: scale3d(0.3, 0.3, 0.3);
  }
}

@keyframes bounceOut {
  20% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9);
    transform: scale3d(0.9, 0.9, 0.9);
  }
  50%, 55% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    opacity: 1;
    transform: scale3d(1.1, 1.1, 1.1);
  }
  to {
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    opacity: 0;
    transform: scale3d(0.3, 0.3, 0.3);
  }
}

.bounceOut {
  -webkit-animation-duration: .75s;
  -webkit-animation-name: bounceOut;
  animation-duration: .75s;
  animation-name: bounceOut;
}

@-webkit-keyframes bounceOutDown {
  20% {
    -webkit-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, 10px, 0);
  }
  40%, 45% {
    -webkit-transform: translate3d(0, -20px, 0);
    opacity: 1;
    transform: translate3d(0, -20px, 0);
  }
  to {
    -webkit-transform: translate3d(0, 2000px, 0);
    opacity: 0;
    transform: translate3d(0, 2000px, 0);
  }
}

@keyframes bounceOutDown {
  20% {
    -webkit-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, 10px, 0);
  }
  40%, 45% {
    -webkit-transform: translate3d(0, -20px, 0);
    opacity: 1;
    transform: translate3d(0, -20px, 0);
  }
  to {
    -webkit-transform: translate3d(0, 2000px, 0);
    opacity: 0;
    transform: translate3d(0, 2000px, 0);
  }
}

.bounceOutDown {
  -webkit-animation-name: bounceOutDown;
  animation-name: bounceOutDown;
}

@-webkit-keyframes bounceOutLeft {
  20% {
    -webkit-transform: translate3d(20px, 0, 0);
    opacity: 1;
    transform: translate3d(20px, 0, 0);
  }
  to {
    -webkit-transform: translate3d(-2000px, 0, 0);
    opacity: 0;
    transform: translate3d(-2000px, 0, 0);
  }
}

@keyframes bounceOutLeft {
  20% {
    -webkit-transform: translate3d(20px, 0, 0);
    opacity: 1;
    transform: translate3d(20px, 0, 0);
  }
  to {
    -webkit-transform: translate3d(-2000px, 0, 0);
    opacity: 0;
    transform: translate3d(-2000px, 0, 0);
  }
}

.bounceOutLeft {
  -webkit-animation-name: bounceOutLeft;
  animation-name: bounceOutLeft;
}

@-webkit-keyframes bounceOutRight {
  20% {
    -webkit-transform: translate3d(-20px, 0, 0);
    opacity: 1;
    transform: translate3d(-20px, 0, 0);
  }
  to {
    -webkit-transform: translate3d(2000px, 0, 0);
    opacity: 0;
    transform: translate3d(2000px, 0, 0);
  }
}

@keyframes bounceOutRight {
  20% {
    -webkit-transform: translate3d(-20px, 0, 0);
    opacity: 1;
    transform: translate3d(-20px, 0, 0);
  }
  to {
    -webkit-transform: translate3d(2000px, 0, 0);
    opacity: 0;
    transform: translate3d(2000px, 0, 0);
  }
}

.bounceOutRight {
  -webkit-animation-name: bounceOutRight;
  animation-name: bounceOutRight;
}

@-webkit-keyframes bounceOutUp {
  20% {
    -webkit-transform: translate3d(0, -10px, 0);
    transform: translate3d(0, -10px, 0);
  }
  40%, 45% {
    -webkit-transform: translate3d(0, 20px, 0);
    opacity: 1;
    transform: translate3d(0, 20px, 0);
  }
  to {
    -webkit-transform: translate3d(0, -2000px, 0);
    opacity: 0;
    transform: translate3d(0, -2000px, 0);
  }
}

@keyframes bounceOutUp {
  20% {
    -webkit-transform: translate3d(0, -10px, 0);
    transform: translate3d(0, -10px, 0);
  }
  40%, 45% {
    -webkit-transform: translate3d(0, 20px, 0);
    opacity: 1;
    transform: translate3d(0, 20px, 0);
  }
  to {
    -webkit-transform: translate3d(0, -2000px, 0);
    opacity: 0;
    transform: translate3d(0, -2000px, 0);
  }
}

.bounceOutUp {
  -webkit-animation-name: bounceOutUp;
  animation-name: bounceOutUp;
}

@-webkit-keyframes fadeIn {
  0% {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

.fadeIn {
  -webkit-animation-name: fadeIn;
  animation-name: fadeIn;
}

@-webkit-keyframes fadeInDown {
  0% {
    -webkit-transform: translate3d(0, -100%, 0);
    opacity: 0;
    transform: translate3d(0, -100%, 0);
  }
  to {
    -webkit-transform: translateZ(0);
    opacity: 1;
    transform: translateZ(0);
  }
}

@keyframes fadeInDown {
  0% {
    -webkit-transform: translate3d(0, -100%, 0);
    opacity: 0;
    transform: translate3d(0, -100%, 0);
  }
  to {
    -webkit-transform: translateZ(0);
    opacity: 1;
    transform: translateZ(0);
  }
}

.fadeInDown {
  -webkit-animation-name: fadeInDown;
  animation-name: fadeInDown;
}

@-webkit-keyframes fadeInDownBig {
  0% {
    -webkit-transform: translate3d(0, -2000px, 0);
    opacity: 0;
    transform: translate3d(0, -2000px, 0);
  }
  to {
    -webkit-transform: translateZ(0);
    opacity: 1;
    transform: translateZ(0);
  }
}

@keyframes fadeInDownBig {
  0% {
    -webkit-transform: translate3d(0, -2000px, 0);
    opacity: 0;
    transform: translate3d(0, -2000px, 0);
  }
  to {
    -webkit-transform: translateZ(0);
    opacity: 1;
    transform: translateZ(0);
  }
}

.fadeInDownBig {
  -webkit-animation-name: fadeInDownBig;
  animation-name: fadeInDownBig;
}

@-webkit-keyframes fadeInLeft {
  0% {
    -webkit-transform: translate3d(-100%, 0, 0);
    opacity: 0;
    transform: translate3d(-100%, 0, 0);
  }
  to {
    -webkit-transform: translateZ(0);
    opacity: 1;
    transform: translateZ(0);
  }
}

@keyframes fadeInLeft {
  0% {
    -webkit-transform: translate3d(-100%, 0, 0);
    opacity: 0;
    transform: translate3d(-100%, 0, 0);
  }
  to {
    -webkit-transform: translateZ(0);
    opacity: 1;
    transform: translateZ(0);
  }
}

.fadeInLeft {
  -webkit-animation-name: fadeInLeft;
  animation-name: fadeInLeft;
}

@-webkit-keyframes fadeInLeftBig {
  0% {
    -webkit-transform: translate3d(-2000px, 0, 0);
    opacity: 0;
    transform: translate3d(-2000px, 0, 0);
  }
  to {
    -webkit-transform: translateZ(0);
    opacity: 1;
    transform: translateZ(0);
  }
}

@keyframes fadeInLeftBig {
  0% {
    -webkit-transform: translate3d(-2000px, 0, 0);
    opacity: 0;
    transform: translate3d(-2000px, 0, 0);
  }
  to {
    -webkit-transform: translateZ(0);
    opacity: 1;
    transform: translateZ(0);
  }
}

.fadeInLeftBig {
  -webkit-animation-name: fadeInLeftBig;
  animation-name: fadeInLeftBig;
}

@-webkit-keyframes fadeInRight {
  0% {
    -webkit-transform: translate3d(100%, 0, 0);
    opacity: 0;
    transform: translate3d(100%, 0, 0);
  }
  to {
    -webkit-transform: translateZ(0);
    opacity: 1;
    transform: translateZ(0);
  }
}

@keyframes fadeInRight {
  0% {
    -webkit-transform: translate3d(100%, 0, 0);
    opacity: 0;
    transform: translate3d(100%, 0, 0);
  }
  to {
    -webkit-transform: translateZ(0);
    opacity: 1;
    transform: translateZ(0);
  }
}

.fadeInRight {
  -webkit-animation-name: fadeInRight;
  animation-name: fadeInRight;
}

@-webkit-keyframes fadeInRightBig {
  0% {
    -webkit-transform: translate3d(2000px, 0, 0);
    opacity: 0;
    transform: translate3d(2000px, 0, 0);
  }
  to {
    -webkit-transform: translateZ(0);
    opacity: 1;
    transform: translateZ(0);
  }
}

@keyframes fadeInRightBig {
  0% {
    -webkit-transform: translate3d(2000px, 0, 0);
    opacity: 0;
    transform: translate3d(2000px, 0, 0);
  }
  to {
    -webkit-transform: translateZ(0);
    opacity: 1;
    transform: translateZ(0);
  }
}

.fadeInRightBig {
  -webkit-animation-name: fadeInRightBig;
  animation-name: fadeInRightBig;
}

@-webkit-keyframes fadeInUp {
  0% {
    -webkit-transform: translate3d(0, 100%, 0);
    opacity: 0;
    transform: translate3d(0, 100%, 0);
  }
  to {
    -webkit-transform: translateZ(0);
    opacity: 1;
    transform: translateZ(0);
  }
}

@keyframes fadeInUp {
  0% {
    -webkit-transform: translate3d(0, 100%, 0);
    opacity: 0;
    transform: translate3d(0, 100%, 0);
  }
  to {
    -webkit-transform: translateZ(0);
    opacity: 1;
    transform: translateZ(0);
  }
}

.fadeInUp {
  -webkit-animation-name: fadeInUp;
  animation-name: fadeInUp;
}

@-webkit-keyframes fadeInUpBig {
  0% {
    -webkit-transform: translate3d(0, 2000px, 0);
    opacity: 0;
    transform: translate3d(0, 2000px, 0);
  }
  to {
    -webkit-transform: translateZ(0);
    opacity: 1;
    transform: translateZ(0);
  }
}

@keyframes fadeInUpBig {
  0% {
    -webkit-transform: translate3d(0, 2000px, 0);
    opacity: 0;
    transform: translate3d(0, 2000px, 0);
  }
  to {
    -webkit-transform: translateZ(0);
    opacity: 1;
    transform: translateZ(0);
  }
}

.fadeInUpBig {
  -webkit-animation-name: fadeInUpBig;
  animation-name: fadeInUpBig;
}

@-webkit-keyframes fadeOut {
  0% {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}

@keyframes fadeOut {
  0% {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}

.fadeOut {
  -webkit-animation-name: fadeOut;
  animation-name: fadeOut;
}

@-webkit-keyframes fadeOutDown {
  0% {
    opacity: 1;
  }
  to {
    -webkit-transform: translate3d(0, 100%, 0);
    opacity: 0;
    transform: translate3d(0, 100%, 0);
  }
}

@keyframes fadeOutDown {
  0% {
    opacity: 1;
  }
  to {
    -webkit-transform: translate3d(0, 100%, 0);
    opacity: 0;
    transform: translate3d(0, 100%, 0);
  }
}

.fadeOutDown {
  -webkit-animation-name: fadeOutDown;
  animation-name: fadeOutDown;
}

@-webkit-keyframes fadeOutDownBig {
  0% {
    opacity: 1;
  }
  to {
    -webkit-transform: translate3d(0, 2000px, 0);
    opacity: 0;
    transform: translate3d(0, 2000px, 0);
  }
}

@keyframes fadeOutDownBig {
  0% {
    opacity: 1;
  }
  to {
    -webkit-transform: translate3d(0, 2000px, 0);
    opacity: 0;
    transform: translate3d(0, 2000px, 0);
  }
}

.fadeOutDownBig {
  -webkit-animation-name: fadeOutDownBig;
  animation-name: fadeOutDownBig;
}

@-webkit-keyframes fadeOutLeft {
  0% {
    opacity: 1;
  }
  to {
    -webkit-transform: translate3d(-100%, 0, 0);
    opacity: 0;
    transform: translate3d(-100%, 0, 0);
  }
}

@keyframes fadeOutLeft {
  0% {
    opacity: 1;
  }
  to {
    -webkit-transform: translate3d(-100%, 0, 0);
    opacity: 0;
    transform: translate3d(-100%, 0, 0);
  }
}

.fadeOutLeft {
  -webkit-animation-name: fadeOutLeft;
  animation-name: fadeOutLeft;
}

@-webkit-keyframes fadeOutLeftBig {
  0% {
    opacity: 1;
  }
  to {
    -webkit-transform: translate3d(-2000px, 0, 0);
    opacity: 0;
    transform: translate3d(-2000px, 0, 0);
  }
}

@keyframes fadeOutLeftBig {
  0% {
    opacity: 1;
  }
  to {
    -webkit-transform: translate3d(-2000px, 0, 0);
    opacity: 0;
    transform: translate3d(-2000px, 0, 0);
  }
}

.fadeOutLeftBig {
  -webkit-animation-name: fadeOutLeftBig;
  animation-name: fadeOutLeftBig;
}

@-webkit-keyframes fadeOutRight {
  0% {
    opacity: 1;
  }
  to {
    -webkit-transform: translate3d(100%, 0, 0);
    opacity: 0;
    transform: translate3d(100%, 0, 0);
  }
}

@keyframes fadeOutRight {
  0% {
    opacity: 1;
  }
  to {
    -webkit-transform: translate3d(100%, 0, 0);
    opacity: 0;
    transform: translate3d(100%, 0, 0);
  }
}

.fadeOutRight {
  -webkit-animation-name: fadeOutRight;
  animation-name: fadeOutRight;
}

@-webkit-keyframes fadeOutRightBig {
  0% {
    opacity: 1;
  }
  to {
    -webkit-transform: translate3d(2000px, 0, 0);
    opacity: 0;
    transform: translate3d(2000px, 0, 0);
  }
}

@keyframes fadeOutRightBig {
  0% {
    opacity: 1;
  }
  to {
    -webkit-transform: translate3d(2000px, 0, 0);
    opacity: 0;
    transform: translate3d(2000px, 0, 0);
  }
}

.fadeOutRightBig {
  -webkit-animation-name: fadeOutRightBig;
  animation-name: fadeOutRightBig;
}

@-webkit-keyframes fadeOutUp {
  0% {
    opacity: 1;
  }
  to {
    -webkit-transform: translate3d(0, -100%, 0);
    opacity: 0;
    transform: translate3d(0, -100%, 0);
  }
}

@keyframes fadeOutUp {
  0% {
    opacity: 1;
  }
  to {
    -webkit-transform: translate3d(0, -100%, 0);
    opacity: 0;
    transform: translate3d(0, -100%, 0);
  }
}

.fadeOutUp {
  -webkit-animation-name: fadeOutUp;
  animation-name: fadeOutUp;
}

@-webkit-keyframes fadeOutUpBig {
  0% {
    opacity: 1;
  }
  to {
    -webkit-transform: translate3d(0, -2000px, 0);
    opacity: 0;
    transform: translate3d(0, -2000px, 0);
  }
}

@keyframes fadeOutUpBig {
  0% {
    opacity: 1;
  }
  to {
    -webkit-transform: translate3d(0, -2000px, 0);
    opacity: 0;
    transform: translate3d(0, -2000px, 0);
  }
}

.fadeOutUpBig {
  -webkit-animation-name: fadeOutUpBig;
  animation-name: fadeOutUpBig;
}

@-webkit-keyframes flip {
  0% {
    -webkit-animation-timing-function: ease-out;
    -webkit-transform: perspective(400px) scaleX(1) translateZ(0) rotateY(-1turn);
    animation-timing-function: ease-out;
    transform: perspective(400px) scaleX(1) translateZ(0) rotateY(-1turn);
  }
  40% {
    -webkit-animation-timing-function: ease-out;
    -webkit-transform: perspective(400px) scaleX(1) translateZ(150px) rotateY(-190deg);
    animation-timing-function: ease-out;
    transform: perspective(400px) scaleX(1) translateZ(150px) rotateY(-190deg);
  }
  50% {
    -webkit-animation-timing-function: ease-in;
    -webkit-transform: perspective(400px) scaleX(1) translateZ(150px) rotateY(-170deg);
    animation-timing-function: ease-in;
    transform: perspective(400px) scaleX(1) translateZ(150px) rotateY(-170deg);
  }
  80% {
    -webkit-animation-timing-function: ease-in;
    -webkit-transform: perspective(400px) scale3d(0.95, 0.95, 0.95) translateZ(0) rotateY(0deg);
    animation-timing-function: ease-in;
    transform: perspective(400px) scale3d(0.95, 0.95, 0.95) translateZ(0) rotateY(0deg);
  }
  to {
    -webkit-animation-timing-function: ease-in;
    -webkit-transform: perspective(400px) scaleX(1) translateZ(0) rotateY(0deg);
    animation-timing-function: ease-in;
    transform: perspective(400px) scaleX(1) translateZ(0) rotateY(0deg);
  }
}

@keyframes flip {
  0% {
    -webkit-animation-timing-function: ease-out;
    -webkit-transform: perspective(400px) scaleX(1) translateZ(0) rotateY(-1turn);
    animation-timing-function: ease-out;
    transform: perspective(400px) scaleX(1) translateZ(0) rotateY(-1turn);
  }
  40% {
    -webkit-animation-timing-function: ease-out;
    -webkit-transform: perspective(400px) scaleX(1) translateZ(150px) rotateY(-190deg);
    animation-timing-function: ease-out;
    transform: perspective(400px) scaleX(1) translateZ(150px) rotateY(-190deg);
  }
  50% {
    -webkit-animation-timing-function: ease-in;
    -webkit-transform: perspective(400px) scaleX(1) translateZ(150px) rotateY(-170deg);
    animation-timing-function: ease-in;
    transform: perspective(400px) scaleX(1) translateZ(150px) rotateY(-170deg);
  }
  80% {
    -webkit-animation-timing-function: ease-in;
    -webkit-transform: perspective(400px) scale3d(0.95, 0.95, 0.95) translateZ(0) rotateY(0deg);
    animation-timing-function: ease-in;
    transform: perspective(400px) scale3d(0.95, 0.95, 0.95) translateZ(0) rotateY(0deg);
  }
  to {
    -webkit-animation-timing-function: ease-in;
    -webkit-transform: perspective(400px) scaleX(1) translateZ(0) rotateY(0deg);
    animation-timing-function: ease-in;
    transform: perspective(400px) scaleX(1) translateZ(0) rotateY(0deg);
  }
}

.animated.flip {
  -webkit-animation-name: flip;
  -webkit-backface-visibility: visible;
  animation-name: flip;
  backface-visibility: visible;
}

@-webkit-keyframes flipInX {
  0% {
    -webkit-animation-timing-function: ease-in;
    -webkit-transform: perspective(400px) rotateX(90deg);
    animation-timing-function: ease-in;
    opacity: 0;
    transform: perspective(400px) rotateX(90deg);
  }
  40% {
    -webkit-animation-timing-function: ease-in;
    -webkit-transform: perspective(400px) rotateX(-20deg);
    animation-timing-function: ease-in;
    transform: perspective(400px) rotateX(-20deg);
  }
  60% {
    -webkit-transform: perspective(400px) rotateX(10deg);
    opacity: 1;
    transform: perspective(400px) rotateX(10deg);
  }
  80% {
    -webkit-transform: perspective(400px) rotateX(-5deg);
    transform: perspective(400px) rotateX(-5deg);
  }
  to {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }
}

@keyframes flipInX {
  0% {
    -webkit-animation-timing-function: ease-in;
    -webkit-transform: perspective(400px) rotateX(90deg);
    animation-timing-function: ease-in;
    opacity: 0;
    transform: perspective(400px) rotateX(90deg);
  }
  40% {
    -webkit-animation-timing-function: ease-in;
    -webkit-transform: perspective(400px) rotateX(-20deg);
    animation-timing-function: ease-in;
    transform: perspective(400px) rotateX(-20deg);
  }
  60% {
    -webkit-transform: perspective(400px) rotateX(10deg);
    opacity: 1;
    transform: perspective(400px) rotateX(10deg);
  }
  80% {
    -webkit-transform: perspective(400px) rotateX(-5deg);
    transform: perspective(400px) rotateX(-5deg);
  }
  to {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }
}

.flipInX {
  -webkit-animation-name: flipInX;
  -webkit-backface-visibility: visible !important;
  animation-name: flipInX;
  backface-visibility: visible !important;
}

@-webkit-keyframes flipInY {
  0% {
    -webkit-animation-timing-function: ease-in;
    -webkit-transform: perspective(400px) rotateY(90deg);
    animation-timing-function: ease-in;
    opacity: 0;
    transform: perspective(400px) rotateY(90deg);
  }
  40% {
    -webkit-animation-timing-function: ease-in;
    -webkit-transform: perspective(400px) rotateY(-20deg);
    animation-timing-function: ease-in;
    transform: perspective(400px) rotateY(-20deg);
  }
  60% {
    -webkit-transform: perspective(400px) rotateY(10deg);
    opacity: 1;
    transform: perspective(400px) rotateY(10deg);
  }
  80% {
    -webkit-transform: perspective(400px) rotateY(-5deg);
    transform: perspective(400px) rotateY(-5deg);
  }
  to {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }
}

@keyframes flipInY {
  0% {
    -webkit-animation-timing-function: ease-in;
    -webkit-transform: perspective(400px) rotateY(90deg);
    animation-timing-function: ease-in;
    opacity: 0;
    transform: perspective(400px) rotateY(90deg);
  }
  40% {
    -webkit-animation-timing-function: ease-in;
    -webkit-transform: perspective(400px) rotateY(-20deg);
    animation-timing-function: ease-in;
    transform: perspective(400px) rotateY(-20deg);
  }
  60% {
    -webkit-transform: perspective(400px) rotateY(10deg);
    opacity: 1;
    transform: perspective(400px) rotateY(10deg);
  }
  80% {
    -webkit-transform: perspective(400px) rotateY(-5deg);
    transform: perspective(400px) rotateY(-5deg);
  }
  to {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }
}

.flipInY {
  -webkit-animation-name: flipInY;
  -webkit-backface-visibility: visible !important;
  animation-name: flipInY;
  backface-visibility: visible !important;
}

@-webkit-keyframes flipOutX {
  0% {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }
  30% {
    -webkit-transform: perspective(400px) rotateX(-20deg);
    opacity: 1;
    transform: perspective(400px) rotateX(-20deg);
  }
  to {
    -webkit-transform: perspective(400px) rotateX(90deg);
    opacity: 0;
    transform: perspective(400px) rotateX(90deg);
  }
}

@keyframes flipOutX {
  0% {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }
  30% {
    -webkit-transform: perspective(400px) rotateX(-20deg);
    opacity: 1;
    transform: perspective(400px) rotateX(-20deg);
  }
  to {
    -webkit-transform: perspective(400px) rotateX(90deg);
    opacity: 0;
    transform: perspective(400px) rotateX(90deg);
  }
}

.flipOutX {
  -webkit-animation-duration: .75s;
  -webkit-animation-name: flipOutX;
  -webkit-backface-visibility: visible !important;
  animation-duration: .75s;
  animation-name: flipOutX;
  backface-visibility: visible !important;
}

@-webkit-keyframes flipOutY {
  0% {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }
  30% {
    -webkit-transform: perspective(400px) rotateY(-15deg);
    opacity: 1;
    transform: perspective(400px) rotateY(-15deg);
  }
  to {
    -webkit-transform: perspective(400px) rotateY(90deg);
    opacity: 0;
    transform: perspective(400px) rotateY(90deg);
  }
}

@keyframes flipOutY {
  0% {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }
  30% {
    -webkit-transform: perspective(400px) rotateY(-15deg);
    opacity: 1;
    transform: perspective(400px) rotateY(-15deg);
  }
  to {
    -webkit-transform: perspective(400px) rotateY(90deg);
    opacity: 0;
    transform: perspective(400px) rotateY(90deg);
  }
}

.flipOutY {
  -webkit-animation-duration: .75s;
  -webkit-animation-name: flipOutY;
  -webkit-backface-visibility: visible !important;
  animation-duration: .75s;
  animation-name: flipOutY;
  backface-visibility: visible !important;
}

@-webkit-keyframes lightSpeedIn {
  0% {
    -webkit-transform: translate3d(100%, 0, 0) skewX(-30deg);
    opacity: 0;
    transform: translate3d(100%, 0, 0) skewX(-30deg);
  }
  60% {
    -webkit-transform: skewX(20deg);
    opacity: 1;
    transform: skewX(20deg);
  }
  80% {
    -webkit-transform: skewX(-5deg);
    transform: skewX(-5deg);
  }
  to {
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
  }
}

@keyframes lightSpeedIn {
  0% {
    -webkit-transform: translate3d(100%, 0, 0) skewX(-30deg);
    opacity: 0;
    transform: translate3d(100%, 0, 0) skewX(-30deg);
  }
  60% {
    -webkit-transform: skewX(20deg);
    opacity: 1;
    transform: skewX(20deg);
  }
  80% {
    -webkit-transform: skewX(-5deg);
    transform: skewX(-5deg);
  }
  to {
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
  }
}

.lightSpeedIn {
  -webkit-animation-name: lightSpeedIn;
  -webkit-animation-timing-function: ease-out;
  animation-name: lightSpeedIn;
  animation-timing-function: ease-out;
}

@-webkit-keyframes lightSpeedOut {
  0% {
    opacity: 1;
  }
  to {
    -webkit-transform: translate3d(100%, 0, 0) skewX(30deg);
    opacity: 0;
    transform: translate3d(100%, 0, 0) skewX(30deg);
  }
}

@keyframes lightSpeedOut {
  0% {
    opacity: 1;
  }
  to {
    -webkit-transform: translate3d(100%, 0, 0) skewX(30deg);
    opacity: 0;
    transform: translate3d(100%, 0, 0) skewX(30deg);
  }
}

.lightSpeedOut {
  -webkit-animation-name: lightSpeedOut;
  -webkit-animation-timing-function: ease-in;
  animation-name: lightSpeedOut;
  animation-timing-function: ease-in;
}

@-webkit-keyframes rotateIn {
  0% {
    -webkit-transform: rotate(-200deg);
    -webkit-transform-origin: center;
    opacity: 0;
    transform: rotate(-200deg);
    transform-origin: center;
  }
  to {
    -webkit-transform: translateZ(0);
    -webkit-transform-origin: center;
    opacity: 1;
    transform: translateZ(0);
    transform-origin: center;
  }
}

@keyframes rotateIn {
  0% {
    -webkit-transform: rotate(-200deg);
    -webkit-transform-origin: center;
    opacity: 0;
    transform: rotate(-200deg);
    transform-origin: center;
  }
  to {
    -webkit-transform: translateZ(0);
    -webkit-transform-origin: center;
    opacity: 1;
    transform: translateZ(0);
    transform-origin: center;
  }
}

.rotateIn {
  -webkit-animation-name: rotateIn;
  animation-name: rotateIn;
}

@-webkit-keyframes rotateInDownLeft {
  0% {
    -webkit-transform: rotate(-45deg);
    -webkit-transform-origin: left bottom;
    opacity: 0;
    transform: rotate(-45deg);
    transform-origin: left bottom;
  }
  to {
    -webkit-transform: translateZ(0);
    -webkit-transform-origin: left bottom;
    opacity: 1;
    transform: translateZ(0);
    transform-origin: left bottom;
  }
}

@keyframes rotateInDownLeft {
  0% {
    -webkit-transform: rotate(-45deg);
    -webkit-transform-origin: left bottom;
    opacity: 0;
    transform: rotate(-45deg);
    transform-origin: left bottom;
  }
  to {
    -webkit-transform: translateZ(0);
    -webkit-transform-origin: left bottom;
    opacity: 1;
    transform: translateZ(0);
    transform-origin: left bottom;
  }
}

.rotateInDownLeft {
  -webkit-animation-name: rotateInDownLeft;
  animation-name: rotateInDownLeft;
}

@-webkit-keyframes rotateInDownRight {
  0% {
    -webkit-transform: rotate(45deg);
    -webkit-transform-origin: right bottom;
    opacity: 0;
    transform: rotate(45deg);
    transform-origin: right bottom;
  }
  to {
    -webkit-transform: translateZ(0);
    -webkit-transform-origin: right bottom;
    opacity: 1;
    transform: translateZ(0);
    transform-origin: right bottom;
  }
}

@keyframes rotateInDownRight {
  0% {
    -webkit-transform: rotate(45deg);
    -webkit-transform-origin: right bottom;
    opacity: 0;
    transform: rotate(45deg);
    transform-origin: right bottom;
  }
  to {
    -webkit-transform: translateZ(0);
    -webkit-transform-origin: right bottom;
    opacity: 1;
    transform: translateZ(0);
    transform-origin: right bottom;
  }
}

.rotateInDownRight {
  -webkit-animation-name: rotateInDownRight;
  animation-name: rotateInDownRight;
}

@-webkit-keyframes rotateInUpLeft {
  0% {
    -webkit-transform: rotate(45deg);
    -webkit-transform-origin: left bottom;
    opacity: 0;
    transform: rotate(45deg);
    transform-origin: left bottom;
  }
  to {
    -webkit-transform: translateZ(0);
    -webkit-transform-origin: left bottom;
    opacity: 1;
    transform: translateZ(0);
    transform-origin: left bottom;
  }
}

@keyframes rotateInUpLeft {
  0% {
    -webkit-transform: rotate(45deg);
    -webkit-transform-origin: left bottom;
    opacity: 0;
    transform: rotate(45deg);
    transform-origin: left bottom;
  }
  to {
    -webkit-transform: translateZ(0);
    -webkit-transform-origin: left bottom;
    opacity: 1;
    transform: translateZ(0);
    transform-origin: left bottom;
  }
}

.rotateInUpLeft {
  -webkit-animation-name: rotateInUpLeft;
  animation-name: rotateInUpLeft;
}

@-webkit-keyframes rotateInUpRight {
  0% {
    -webkit-transform: rotate(-90deg);
    -webkit-transform-origin: right bottom;
    opacity: 0;
    transform: rotate(-90deg);
    transform-origin: right bottom;
  }
  to {
    -webkit-transform: translateZ(0);
    -webkit-transform-origin: right bottom;
    opacity: 1;
    transform: translateZ(0);
    transform-origin: right bottom;
  }
}

@keyframes rotateInUpRight {
  0% {
    -webkit-transform: rotate(-90deg);
    -webkit-transform-origin: right bottom;
    opacity: 0;
    transform: rotate(-90deg);
    transform-origin: right bottom;
  }
  to {
    -webkit-transform: translateZ(0);
    -webkit-transform-origin: right bottom;
    opacity: 1;
    transform: translateZ(0);
    transform-origin: right bottom;
  }
}

.rotateInUpRight {
  -webkit-animation-name: rotateInUpRight;
  animation-name: rotateInUpRight;
}

@-webkit-keyframes rotateOut {
  0% {
    -webkit-transform-origin: center;
    opacity: 1;
    transform-origin: center;
  }
  to {
    -webkit-transform: rotate(200deg);
    -webkit-transform-origin: center;
    opacity: 0;
    transform: rotate(200deg);
    transform-origin: center;
  }
}

@keyframes rotateOut {
  0% {
    -webkit-transform-origin: center;
    opacity: 1;
    transform-origin: center;
  }
  to {
    -webkit-transform: rotate(200deg);
    -webkit-transform-origin: center;
    opacity: 0;
    transform: rotate(200deg);
    transform-origin: center;
  }
}

.rotateOut {
  -webkit-animation-name: rotateOut;
  animation-name: rotateOut;
}

@-webkit-keyframes rotateOutDownLeft {
  0% {
    -webkit-transform-origin: left bottom;
    opacity: 1;
    transform-origin: left bottom;
  }
  to {
    -webkit-transform: rotate(45deg);
    -webkit-transform-origin: left bottom;
    opacity: 0;
    transform: rotate(45deg);
    transform-origin: left bottom;
  }
}

@keyframes rotateOutDownLeft {
  0% {
    -webkit-transform-origin: left bottom;
    opacity: 1;
    transform-origin: left bottom;
  }
  to {
    -webkit-transform: rotate(45deg);
    -webkit-transform-origin: left bottom;
    opacity: 0;
    transform: rotate(45deg);
    transform-origin: left bottom;
  }
}

.rotateOutDownLeft {
  -webkit-animation-name: rotateOutDownLeft;
  animation-name: rotateOutDownLeft;
}

@-webkit-keyframes rotateOutDownRight {
  0% {
    -webkit-transform-origin: right bottom;
    opacity: 1;
    transform-origin: right bottom;
  }
  to {
    -webkit-transform: rotate(-45deg);
    -webkit-transform-origin: right bottom;
    opacity: 0;
    transform: rotate(-45deg);
    transform-origin: right bottom;
  }
}

@keyframes rotateOutDownRight {
  0% {
    -webkit-transform-origin: right bottom;
    opacity: 1;
    transform-origin: right bottom;
  }
  to {
    -webkit-transform: rotate(-45deg);
    -webkit-transform-origin: right bottom;
    opacity: 0;
    transform: rotate(-45deg);
    transform-origin: right bottom;
  }
}

.rotateOutDownRight {
  -webkit-animation-name: rotateOutDownRight;
  animation-name: rotateOutDownRight;
}

@-webkit-keyframes rotateOutUpLeft {
  0% {
    -webkit-transform-origin: left bottom;
    opacity: 1;
    transform-origin: left bottom;
  }
  to {
    -webkit-transform: rotate(-45deg);
    -webkit-transform-origin: left bottom;
    opacity: 0;
    transform: rotate(-45deg);
    transform-origin: left bottom;
  }
}

@keyframes rotateOutUpLeft {
  0% {
    -webkit-transform-origin: left bottom;
    opacity: 1;
    transform-origin: left bottom;
  }
  to {
    -webkit-transform: rotate(-45deg);
    -webkit-transform-origin: left bottom;
    opacity: 0;
    transform: rotate(-45deg);
    transform-origin: left bottom;
  }
}

.rotateOutUpLeft {
  -webkit-animation-name: rotateOutUpLeft;
  animation-name: rotateOutUpLeft;
}

@-webkit-keyframes rotateOutUpRight {
  0% {
    -webkit-transform-origin: right bottom;
    opacity: 1;
    transform-origin: right bottom;
  }
  to {
    -webkit-transform: rotate(90deg);
    -webkit-transform-origin: right bottom;
    opacity: 0;
    transform: rotate(90deg);
    transform-origin: right bottom;
  }
}

@keyframes rotateOutUpRight {
  0% {
    -webkit-transform-origin: right bottom;
    opacity: 1;
    transform-origin: right bottom;
  }
  to {
    -webkit-transform: rotate(90deg);
    -webkit-transform-origin: right bottom;
    opacity: 0;
    transform: rotate(90deg);
    transform-origin: right bottom;
  }
}

.rotateOutUpRight {
  -webkit-animation-name: rotateOutUpRight;
  animation-name: rotateOutUpRight;
}

@-webkit-keyframes hinge {
  0% {
    -webkit-animation-timing-function: ease-in-out;
    -webkit-transform-origin: top left;
    animation-timing-function: ease-in-out;
    transform-origin: top left;
  }
  20%, 60% {
    -webkit-animation-timing-function: ease-in-out;
    -webkit-transform: rotate(80deg);
    -webkit-transform-origin: top left;
    animation-timing-function: ease-in-out;
    transform: rotate(80deg);
    transform-origin: top left;
  }
  40%, 80% {
    -webkit-animation-timing-function: ease-in-out;
    -webkit-transform: rotate(60deg);
    -webkit-transform-origin: top left;
    animation-timing-function: ease-in-out;
    opacity: 1;
    transform: rotate(60deg);
    transform-origin: top left;
  }
  to {
    -webkit-transform: translate3d(0, 700px, 0);
    opacity: 0;
    transform: translate3d(0, 700px, 0);
  }
}

@keyframes hinge {
  0% {
    -webkit-animation-timing-function: ease-in-out;
    -webkit-transform-origin: top left;
    animation-timing-function: ease-in-out;
    transform-origin: top left;
  }
  20%, 60% {
    -webkit-animation-timing-function: ease-in-out;
    -webkit-transform: rotate(80deg);
    -webkit-transform-origin: top left;
    animation-timing-function: ease-in-out;
    transform: rotate(80deg);
    transform-origin: top left;
  }
  40%, 80% {
    -webkit-animation-timing-function: ease-in-out;
    -webkit-transform: rotate(60deg);
    -webkit-transform-origin: top left;
    animation-timing-function: ease-in-out;
    opacity: 1;
    transform: rotate(60deg);
    transform-origin: top left;
  }
  to {
    -webkit-transform: translate3d(0, 700px, 0);
    opacity: 0;
    transform: translate3d(0, 700px, 0);
  }
}

.hinge {
  -webkit-animation-duration: 2s;
  -webkit-animation-name: hinge;
  animation-duration: 2s;
  animation-name: hinge;
}

@-webkit-keyframes jackInTheBox {
  0% {
    -webkit-transform: scale(0.1) rotate(30deg);
    -webkit-transform-origin: center bottom;
    opacity: 0;
    transform: scale(0.1) rotate(30deg);
    transform-origin: center bottom;
  }
  50% {
    -webkit-transform: rotate(-10deg);
    transform: rotate(-10deg);
  }
  70% {
    -webkit-transform: rotate(3deg);
    transform: rotate(3deg);
  }
  to {
    -webkit-transform: scale(1);
    opacity: 1;
    transform: scale(1);
  }
}

@keyframes jackInTheBox {
  0% {
    -webkit-transform: scale(0.1) rotate(30deg);
    -webkit-transform-origin: center bottom;
    opacity: 0;
    transform: scale(0.1) rotate(30deg);
    transform-origin: center bottom;
  }
  50% {
    -webkit-transform: rotate(-10deg);
    transform: rotate(-10deg);
  }
  70% {
    -webkit-transform: rotate(3deg);
    transform: rotate(3deg);
  }
  to {
    -webkit-transform: scale(1);
    opacity: 1;
    transform: scale(1);
  }
}

.jackInTheBox {
  -webkit-animation-name: jackInTheBox;
  animation-name: jackInTheBox;
}

@-webkit-keyframes rollIn {
  0% {
    -webkit-transform: translate3d(-100%, 0, 0) rotate(-120deg);
    opacity: 0;
    transform: translate3d(-100%, 0, 0) rotate(-120deg);
  }
  to {
    -webkit-transform: translateZ(0);
    opacity: 1;
    transform: translateZ(0);
  }
}

@keyframes rollIn {
  0% {
    -webkit-transform: translate3d(-100%, 0, 0) rotate(-120deg);
    opacity: 0;
    transform: translate3d(-100%, 0, 0) rotate(-120deg);
  }
  to {
    -webkit-transform: translateZ(0);
    opacity: 1;
    transform: translateZ(0);
  }
}

.rollIn {
  -webkit-animation-name: rollIn;
  animation-name: rollIn;
}

@-webkit-keyframes rollOut {
  0% {
    opacity: 1;
  }
  to {
    -webkit-transform: translate3d(100%, 0, 0) rotate(120deg);
    opacity: 0;
    transform: translate3d(100%, 0, 0) rotate(120deg);
  }
}

@keyframes rollOut {
  0% {
    opacity: 1;
  }
  to {
    -webkit-transform: translate3d(100%, 0, 0) rotate(120deg);
    opacity: 0;
    transform: translate3d(100%, 0, 0) rotate(120deg);
  }
}

.rollOut {
  -webkit-animation-name: rollOut;
  animation-name: rollOut;
}

@-webkit-keyframes zoomIn {
  0% {
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    opacity: 0;
    transform: scale3d(0.3, 0.3, 0.3);
  }
  50% {
    opacity: 1;
  }
}

@keyframes zoomIn {
  0% {
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    opacity: 0;
    transform: scale3d(0.3, 0.3, 0.3);
  }
  50% {
    opacity: 1;
  }
}

.zoomIn {
  -webkit-animation-name: zoomIn;
  animation-name: zoomIn;
}

@-webkit-keyframes zoomInDown {
  0% {
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    opacity: 0;
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
  }
  60% {
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    opacity: 1;
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
  }
}

@keyframes zoomInDown {
  0% {
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    opacity: 0;
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
  }
  60% {
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    opacity: 1;
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
  }
}

.zoomInDown {
  -webkit-animation-name: zoomInDown;
  animation-name: zoomInDown;
}

@-webkit-keyframes zoomInLeft {
  0% {
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    opacity: 0;
    transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
  }
  60% {
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    opacity: 1;
    transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
  }
}

@keyframes zoomInLeft {
  0% {
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    opacity: 0;
    transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
  }
  60% {
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    opacity: 1;
    transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
  }
}

.zoomInLeft {
  -webkit-animation-name: zoomInLeft;
  animation-name: zoomInLeft;
}

@-webkit-keyframes zoomInRight {
  0% {
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    opacity: 0;
    transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
  }
  60% {
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    opacity: 1;
    transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
  }
}

@keyframes zoomInRight {
  0% {
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    opacity: 0;
    transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
  }
  60% {
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    opacity: 1;
    transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
  }
}

.zoomInRight {
  -webkit-animation-name: zoomInRight;
  animation-name: zoomInRight;
}

@-webkit-keyframes zoomInUp {
  0% {
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    opacity: 0;
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
  }
  60% {
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    opacity: 1;
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
  }
}

@keyframes zoomInUp {
  0% {
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    opacity: 0;
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
  }
  60% {
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    opacity: 1;
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
  }
}

.zoomInUp {
  -webkit-animation-name: zoomInUp;
  animation-name: zoomInUp;
}

@-webkit-keyframes zoomOut {
  0% {
    opacity: 1;
  }
  50% {
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    opacity: 0;
    transform: scale3d(0.3, 0.3, 0.3);
  }
  to {
    opacity: 0;
  }
}

@keyframes zoomOut {
  0% {
    opacity: 1;
  }
  50% {
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    opacity: 0;
    transform: scale3d(0.3, 0.3, 0.3);
  }
  to {
    opacity: 0;
  }
}

.zoomOut {
  -webkit-animation-name: zoomOut;
  animation-name: zoomOut;
}

@-webkit-keyframes zoomOutDown {
  40% {
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    opacity: 1;
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
  }
  to {
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
    -webkit-transform-origin: center bottom;
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    opacity: 0;
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
    transform-origin: center bottom;
  }
}

@keyframes zoomOutDown {
  40% {
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    opacity: 1;
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
  }
  to {
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
    -webkit-transform-origin: center bottom;
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    opacity: 0;
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
    transform-origin: center bottom;
  }
}

.zoomOutDown {
  -webkit-animation-name: zoomOutDown;
  animation-name: zoomOutDown;
}

@-webkit-keyframes zoomOutLeft {
  40% {
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
    opacity: 1;
    transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
  }
  to {
    -webkit-transform: scale(0.1) translate3d(-2000px, 0, 0);
    -webkit-transform-origin: left center;
    opacity: 0;
    transform: scale(0.1) translate3d(-2000px, 0, 0);
    transform-origin: left center;
  }
}

@keyframes zoomOutLeft {
  40% {
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
    opacity: 1;
    transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
  }
  to {
    -webkit-transform: scale(0.1) translate3d(-2000px, 0, 0);
    -webkit-transform-origin: left center;
    opacity: 0;
    transform: scale(0.1) translate3d(-2000px, 0, 0);
    transform-origin: left center;
  }
}

.zoomOutLeft {
  -webkit-animation-name: zoomOutLeft;
  animation-name: zoomOutLeft;
}

@-webkit-keyframes zoomOutRight {
  40% {
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
    opacity: 1;
    transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
  }
  to {
    -webkit-transform: scale(0.1) translate3d(2000px, 0, 0);
    -webkit-transform-origin: right center;
    opacity: 0;
    transform: scale(0.1) translate3d(2000px, 0, 0);
    transform-origin: right center;
  }
}

@keyframes zoomOutRight {
  40% {
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
    opacity: 1;
    transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
  }
  to {
    -webkit-transform: scale(0.1) translate3d(2000px, 0, 0);
    -webkit-transform-origin: right center;
    opacity: 0;
    transform: scale(0.1) translate3d(2000px, 0, 0);
    transform-origin: right center;
  }
}

.zoomOutRight {
  -webkit-animation-name: zoomOutRight;
  animation-name: zoomOutRight;
}

@-webkit-keyframes zoomOutUp {
  40% {
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    opacity: 1;
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
  }
  to {
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
    -webkit-transform-origin: center bottom;
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    opacity: 0;
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
    transform-origin: center bottom;
  }
}

@keyframes zoomOutUp {
  40% {
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    opacity: 1;
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
  }
  to {
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
    -webkit-transform-origin: center bottom;
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    opacity: 0;
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
    transform-origin: center bottom;
  }
}

.zoomOutUp {
  -webkit-animation-name: zoomOutUp;
  animation-name: zoomOutUp;
}

@-webkit-keyframes slideInDown {
  0% {
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
    visibility: visible;
  }
  to {
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
  }
}

@keyframes slideInDown {
  0% {
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
    visibility: visible;
  }
  to {
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
  }
}

.slideInDown {
  -webkit-animation-name: slideInDown;
  animation-name: slideInDown;
}

@-webkit-keyframes slideInLeft {
  0% {
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
    visibility: visible;
  }
  to {
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
  }
}

@keyframes slideInLeft {
  0% {
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
    visibility: visible;
  }
  to {
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
  }
}

.slideInLeft {
  -webkit-animation-name: slideInLeft;
  animation-name: slideInLeft;
}

@-webkit-keyframes slideInRight {
  0% {
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
    visibility: visible;
  }
  to {
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
  }
}

@keyframes slideInRight {
  0% {
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
    visibility: visible;
  }
  to {
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
  }
}

.slideInRight {
  -webkit-animation-name: slideInRight;
  animation-name: slideInRight;
}

@-webkit-keyframes slideInUp {
  0% {
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
    visibility: visible;
  }
  to {
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
  }
}

@keyframes slideInUp {
  0% {
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
    visibility: visible;
  }
  to {
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
  }
}

.slideInUp {
  -webkit-animation-name: slideInUp;
  animation-name: slideInUp;
}

@-webkit-keyframes slideOutDown {
  0% {
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
  }
  to {
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
    visibility: hidden;
  }
}

@keyframes slideOutDown {
  0% {
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
  }
  to {
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
    visibility: hidden;
  }
}

.slideOutDown {
  -webkit-animation-name: slideOutDown;
  animation-name: slideOutDown;
}

@-webkit-keyframes slideOutLeft {
  0% {
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
  }
  to {
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
    visibility: hidden;
  }
}

@keyframes slideOutLeft {
  0% {
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
  }
  to {
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
    visibility: hidden;
  }
}

.slideOutLeft {
  -webkit-animation-name: slideOutLeft;
  animation-name: slideOutLeft;
}

@-webkit-keyframes slideOutRight {
  0% {
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
  }
  to {
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
    visibility: hidden;
  }
}

@keyframes slideOutRight {
  0% {
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
  }
  to {
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
    visibility: hidden;
  }
}

.slideOutRight {
  -webkit-animation-name: slideOutRight;
  animation-name: slideOutRight;
}

@-webkit-keyframes slideOutUp {
  0% {
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
  }
  to {
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
    visibility: hidden;
  }
}

@keyframes slideOutUp {
  0% {
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
  }
  to {
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
    visibility: hidden;
  }
}

.slideOutUp {
  -webkit-animation-name: slideOutUp;
  animation-name: slideOutUp;
}

.animated {
  -webkit-animation-duration: 1s;
  -webkit-animation-fill-mode: both;
  animation-duration: 1s;
  animation-fill-mode: both;
}

.animated.infinite {
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
}

.animated.delay-1s {
  -webkit-animation-delay: 1s;
  animation-delay: 1s;
}

.animated.delay-2s {
  -webkit-animation-delay: 2s;
  animation-delay: 2s;
}

.animated.delay-3s {
  -webkit-animation-delay: 3s;
  animation-delay: 3s;
}

.animated.delay-4s {
  -webkit-animation-delay: 4s;
  animation-delay: 4s;
}

.animated.delay-5s {
  -webkit-animation-delay: 5s;
  animation-delay: 5s;
}

.animated.fast {
  -webkit-animation-duration: .8s;
  animation-duration: 0.8s;
}

.animated.faster {
  -webkit-animation-duration: .5s;
  animation-duration: 0.5s;
}

.animated.slow {
  -webkit-animation-duration: 2s;
  animation-duration: 2s;
}

.animated.slower {
  -webkit-animation-duration: 3s;
  animation-duration: 3s;
}

@media (prefers-reduced-motion), (print) {
  .animated {
    -webkit-animation: unset !important;
    -webkit-transition: none !important;
    animation: unset !important;
    transition: none !important;
  }
}

.flot-chart {
  height: 200px;
  display: block;
}

.flot-chart-legends {
  text-align: center;
  margin: 20px 0 -10px;
}

.flot-chart-legends table {
  display: inline-block;
}

.flot-chart-legends .legendColorBox > div > div {
  border-radius: 50%;
}

.flot-chart-legends .legendLabel {
  padding: 0 8px 0 3px;
  color: rgba(255, 255, 255, 0.5);
}

.widget-past-days {
  overflow: hidden;
}

.widget-past-days .flot-chart {
  margin: 0 -10px;
}

.widget-past-days__chart {
  opacity: 0.75;
  margin: 0.55rem 0 0 auto;
}

.widget-past-days__info small {
  font-size: 1rem;
  color: rgba(255, 255, 255, 0.9);
}

.widget-past-days__info h3 {
  margin: 0;
  color: #ffffff;
  font-weight: normal;
}

.widget-visitors__stats {
  margin: 0 -0.5rem 2rem;
}

.widget-visitors__stats::after {
  display: block;
  clear: both;
  content: "";
}

.widget-visitors__stats > div {
  padding: 1.5rem 1.5rem 1.45rem;
  float: left;
  margin: 0 0.5rem;
  width: calc(50% - 1rem);
  background-color: rgba(255, 255, 255, 0.08);
  border-radius: 2px;
}

.widget-visitors__stats > div > strong {
  font-size: 1.3rem;
  line-height: 100%;
  color: #000000;
  font-weight: 600;
}

.widget-visitors__stats > div > small {
  display: block;
  color: rgba(255, 255, 255, 0.5);
  font-size: 1rem;
  line-height: 100%;
  margin-top: 0.45rem;
}

.widget-visitors__map {
  width: 100%;
  height: 250px;
}

.widget-visitors__country {
  height: 0.88rem;
  width: auto;
  vertical-align: top;
  position: relative;
  margin-right: 0.25rem;
  left: -0.1rem;
  border-radius: 1px;
}

.widget-pie__inner {
  display: flex;
  flex-wrap: wrap;
}

.widget-pie__item {
  padding: 20px 0;
  text-align: center;
}

.widget-pie__item:nth-child(2n) {
  background-color: rgba(0, 0, 0, 0.1);
}

.widget-pie__title {
  color: #000000;
}

.quick-stats__item {
  padding: 1.85rem 1.75rem 1.75rem 2rem;
  border-radius: 2px;
  box-shadow: 0 1px 5px rgba(0, 0, 0, 0.1);
  margin-bottom: 30px;
  display: flex;
  align-items: center;
  background-color: #ffffff;
  border: 1px solid #e1e1e1;
}

.quick-stats__item::after {
  display: block;
  clear: both;
  content: "";
}

.quick-stats__item > .peity {
  margin-left: auto;
  padding-left: 1.2rem;
}

@media (min-width: 576px) and (max-width: 1199.98px) {
  .quick-stats__item > .peity {
    display: none;
  }
}

.quick-stats__info {
  min-width: 0;
}

.quick-stats__info > h2,
.quick-stats__info > small {
  line-height: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.quick-stats__info > h2 {
  margin: 0;
  font-size: 1.3rem;
  color: #000000;
}

.quick-stats__info > small {
  font-size: 1rem;
  display: block;
  color: #000000;
  margin-top: 0.85rem;
}

.stats {
  padding-top: 1rem;
}

.stats__item {
  background-color: rgba(0, 0, 0, 0.2);
  border-radius: 2px;
  box-shadow: 0 1px 5px rgba(0, 0, 0, 0.1);
  margin-bottom: 30px;
  padding: 1rem;
}

.stats__chart {
  border-radius: 2px;
  padding-top: 1rem;
  overflow: hidden;
}

.stats__chart .flot-chart {
  margin: 0 -12px -12px;
}

.stats__info {
  padding: 1.8rem 1rem 0.5rem;
  position: relative;
  text-align: center;
}

.stats__info h2 {
  font-size: 1.3rem;
  margin: 0;
}

.stats__info small {
  display: block;
  font-size: 1rem;
  margin-top: 0.4rem;
  color: rgba(255, 255, 255, 0.5);
}

.widget-pictures__body {
  margin: 0;
  padding: 2px;
  text-align: center;
}

.widget-pictures__body::after {
  display: block;
  clear: both;
  content: "";
}

.widget-pictures__body > a {
  padding: 2px 2px 1px;
  display: block;
}

.widget-pictures__body > a img {
  width: 100%;
  border-radius: 2px;
}

.widget-pictures__body > a:hover {
  opacity: 0.9;
}

.widget-profile__img {
  width: 100px;
  height: 100px;
  border-radius: 50%;
  margin-bottom: 1.2rem;
  border: 5px solid rgba(255, 255, 255, 0.1);
}

.widget-profile__list {
  color: #ffffff;
}

.widget-profile__list .media {
  padding: 1rem 2rem;
}

.widget-profile__list .media:nth-child(even) {
  background-color: rgba(255, 255, 255, 0.02);
}

.widget-profile__list .media-body strong {
  display: block;
  font-weight: 600;
  color: black;
}

.widget-profile__list .media-body small {
  color: rgba(255, 255, 255, 0.5);
  font-size: 0.92rem;
  color: grey;
}

.widget-contacts__map {
  display: block;
  padding: 3px;
}

.widget-contacts__map img {
  width: 100%;
  border-radius: 2px;
  margin: -20px 0 -1px;
}

.widget-signups__list {
  text-align: center;
}

.widget-signups__list > a {
  vertical-align: top;
  margin: 4px 2px;
  display: inline-block;
}

.widget-signups__list .avatar-char {
  background-color: rgba(255, 255, 255, 0.08);
  color: #ffffff;
}

.widget-signups__list .avatar-char,
.widget-signups__list .avatar-img {
  margin: 0;
}

.widget-time {
  padding: 2rem;
}

.widget-time .time {
  font-size: 2rem;
  text-align: center;
}

.widget-time .time > span {
  padding: 1rem 1.5rem;
  background-color: rgba(255, 255, 255, 0.08);
  border-radius: 2px;
  display: inline-block;
  line-height: 50px;
  margin: 0 5px;
  position: relative;
}

.widget-time .time > span:after {
  position: absolute;
  right: -13px;
  top: 10px;
}

.widget-calendar > .actions {
  top: 30px;
}

.widget-calendar td, .widget-calendar th {
  border-color: transparent;
  text-align: center;
}

.widget-calendar .fc-toolbar h2 {
  font-size: 1.2rem;
  padding-top: 0.3rem;
  text-transform: uppercase;
}

.widget-calendar .fc-day-number {
  text-align: center;
  width: 100%;
  padding: 0;
}

#widget-calendar-body {
  padding: 1rem;
}

.widget-calendar__header {
  padding: 2.1rem 2.2rem;
  background-color: rgba(255, 255, 255, 0.02);
  border-radius: 2px 2px 0 0;
}

.widget-calendar__year {
  font-size: 1.2rem;
  line-height: 100%;
  margin-bottom: 0.6rem;
  color: rgba(255, 255, 255, 0.8);
}

.widget-calendar__day {
  font-size: 1.5rem;
  line-height: 100%;
  color: #ffffff;
}

.widget-calendar__body {
  padding: 1rem;
  margin-top: 1rem;
}

#jqstooltip {
  text-align: center;
  padding: 5px 10px;
  border: 0;
  height: auto !important;
  width: auto !important;
  background: #ffffff;
  box-shadow: 0 3px 5px rgba(0, 0, 0, 0.1);
  border-radius: 2px;
  background-color: rgba(0, 0, 0, 0.8);
}

#jqstooltip .jqsfield {
  font-size: 0.95rem;
  font-weight: 500;
  font-family: inherit;
  text-align: center;
  color: #000000;
}

#jqstooltip .jqsfield > span {
  display: none;
}

.select2-container--default .select2-selection--single {
  border-radius: 0;
  background: rgba(255, 255, 255, 0.08);
  border-color: rgba(0, 0, 0, 0);
  height: auto;
}

.select2-container--default .select2-selection--single .select2-selection__arrow {
  display: none;
}

.select2-container--default .select2-selection--single .select2-selection__placeholder {
  color: rgba(255, 255, 255, 0.5);
}

.select2-container--default .select2-selection--single .select2-selection__rendered {
  line-height: 1.5;
  padding: 0.6rem 1rem;
  color: #ffffff;
}

.select2-container--default #select2-letter_of_intent_gfa_customer-container {
  border: 1px solid #e1e1e1;
  color: black;
}

.select2-container--default #select2-letter_of_intent_gfa_departmentReferential-container {
  border: 1px solid #000000;
  color: black;
}

.select2-container--default #select2-underwriter_mrp_customer-container {
  border: 1px solid #e1e1e1;
  color: black;
}

.select2-container--default #select2-underwriter_pne_customer-container {
  border: 1px solid #e1e1e1;
  color: black;
}

.select2-container--default #select2-underwriter_rcde_customer-container {
  border: 1px solid #e1e1e1;
  color: black;
}

.select2-container--default #select2-underwriter_rcpro_customer-container {
  border: 1px solid #e1e1e1;
  color: black;
}

.select2-container--default #select2-underwriter_rcd_customer-container {
  border: 1px solid #e1e1e1;
  color: black;
}

.select2-container--default #select2-underwriter_dommage_customer-container {
  border: 1px solid #e1e1e1;
  color: black;
}

.select2-container--default.select2-container--focus .select2-selection--multiple {
  border-color: black;
  box-shadow: 0 0 5px rgba(255, 255, 255, 0.15);
}

.select2-container--default .select2-selection--multiple {
  background-color: transparent;
  border-color: black;
  border-radius: 0;
  transition: border-color 300ms;
}

.select2-container--default .select2-selection--multiple .select2-selection__choice {
  border-radius: 0;
  border: 0;
  background-color: rgba(255, 255, 255, 0.08);
  padding: 0.2rem 0.75rem;
  color: #000000;
}

.select2-container--default .select2-selection--multiple .select2-selection__choice__remove {
  margin-right: 0.5rem;
  color: #000000;
}

.select2-container--default .select2-selection--multiple .select2-selection__choice__remove:hover {
  color: #000000;
  opacity: 0.75;
}

.select2-container--default.select2-container--disabled .select2-selection--single {
  background-color: transparent;
  opacity: 0.5;
}

.select2-container--default .select2-results__option[aria-selected=true], .select2-container--default .select2-results__option[aria-selected=true]:hover, .select2-container--default .select2-results__option[aria-selected=true]:focus {
  background-color: rgba(0, 0, 0, 0.25);
  color: #000000;
}

.select2-selection--single,
.select2-selection--multiple {
  transition: border-color 300ms, box-shadow 300ms;
}

.select2-container--open .select2-selection--single {
  box-shadow: 0 0 5px rgba(255, 255, 255, 0.15);
  border-color: none;
}

.select2-dropdown {
  background-color: #ffffff;
  border: 0;
  border-radius: 2px;
  padding: 0.8rem 0;
  box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.175);
  z-index: 99;
  -webkit-animation-name: fadeIn;
  animation-name: fadeIn;
  -webkit-animation-duration: 300ms;
  animation-duration: 300ms;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
}

.select2-dropdown .select2-results__option {
  padding: 0.65rem 1.5rem;
}

.select2-dropdown .select2-results__option--highlighted[aria-selected]:not([aria-selected=true]) {
  background-color: rgba(255, 255, 255, 0.06);
  color: #ffffff;
}

.select2-dropdown .select2-results__option[aria-disabled=true] {
  color: #000000;
  opacity: 0.25;
}

.select2-dropdown .select2-search--dropdown {
  margin-top: -0.5rem;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
  position: relative;
  margin-bottom: 1rem;
}

.select2-dropdown .select2-search--dropdown:before {
  font-family: "zwicon";
  content: "";
  font-size: 1.5rem;
  color: #000000;
  position: absolute;
  left: 1.4rem;
  top: 0.5rem;
}

.select2-dropdown .select2-search--dropdown .select2-search__field {
  border: 0;
  background-color: transparent;
  height: 2.8rem;
  padding: 0 0 0.2rem 3.5rem;
}

.select2-search__field {
  color: #000000;
}

.select2-search__field::-webkit-input-placeholder {
  color: rgba(0, 0, 0, 0.4);
}

.select2-search__field:-moz-placeholder {
  color: rgba(0, 0, 0, 0.4);
}

.select2-search__field::-moz-placeholder {
  color: rgba(0, 0, 0, 0.4);
}

.select2-search__field:-ms-input-placeholder {
  color: rgba(0, 0, 0, 0.4);
}

.select2-container .select2-search--inline .select2-search__field {
  margin: 8px 0 2px;
  padding: 0 5px;
}

#select2-custom_do_customer-container {
  border: 1px solid #e1e1e1;
  color: black;
}

.dropzone {
  border: 0;
  background-color: rgba(0, 0, 0, 0.2);
  border-radius: 2px;
  transition: background-color 300ms;
  min-height: 50px;
  position: relative;
}

.dropzone:before {
  font-family: "zwicon";
  content: "";
  font-size: 2rem;
  font-size: 2rem;
  color: #000000;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  top: 0;
  margin: auto;
  width: 50px;
  height: 50px;
  line-height: 50px;
  text-align: center;
  background-color: rgba(255, 255, 255, 0.08);
  border-radius: 50%;
  opacity: 0;
  transition: opacity 300ms;
}

.dropzone .dz-preview.dz-file-preview .dz-image, .dropzone .dz-preview.dz-image-preview .dz-image {
  border-radius: 2px;
}

.dropzone .dz-preview .dz-remove {
  position: absolute;
  top: -9px;
  right: -9px;
  z-index: 99;
  font-size: 0;
  width: 22px;
  height: 22px;
  background-color: #dc3545;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
}

.dropzone .dz-preview .dz-remove:hover {
  background-color: #dc3545;
  text-decoration: none;
}

.dropzone .dz-preview .dz-remove:before {
  font-family: "zwicon";
  content: "";
  font-size: 1.25rem;
  color: #ffffff;
}

.dropzone .dz-message {
  transition: opacity 300ms;
}

.dropzone .dz-message span {
  display: inline-block;
  border-radius: 2px;
  transition: color 300ms, box-shadow, 300ms;
  padding: 0.5rem 1.4rem 0.8rem;
  background-color: rgba(255, 255, 255, 0.08);
}

.dropzone .dz-message span:before {
  font-family: "zwicon";
  content: "";
  font-size: 1.75rem;
  display: inline-block;
  position: relative;
  top: 2px;
  margin-right: 0.8rem;
}

.dropzone:hover .dz-message span {
  color: #000000;
}

.dropzone:hover, .dropzone.dz-drag-hover {
  background-color: rgba(0, 0, 0, 0.25);
}

.dropzone.dz-drag-hover .dz-message {
  opacity: 0;
}

.dropzone.dz-drag-hover:before {
  opacity: 1;
}

.easy-pie-chart {
  display: inline-block;
  position: relative;
}

.easy-pie-chart__value {
  position: absolute;
  left: 0;
  top: 0;
  text-align: center;
  width: 100%;
  height: 100%;
}

.easy-pie-chart__value:after {
  content: "%";
  font-size: 12px;
}

.easy-pie-chart__title {
  margin-top: -2px;
  line-height: 15px;
  font-size: 11px;
}

.dataTable .sorting,
.dataTable .sorting_asc,
.dataTable .sorting_desc {
  cursor: pointer;
  position: relative;
}

.dataTable .sorting_asc:before,
.dataTable .sorting_desc:before {
  font-family: "zwicon";
  font-size: 1.25rem;
  position: absolute;
  bottom: 8px;
  right: 5px;
  opacity: 0;
  transition: opacity 300ms;
}

.dataTable .sorting_asc:hover:before,
.dataTable .sorting_desc:hover:before {
  opacity: 1;
}

.dataTable .sorting_asc:before {
  content: '\e9e6';
}

.dataTable .sorting_desc:before {
  content: '\e9e7';
}

.dataTables__top {
  display: flex;
  align-items: center;
  margin-bottom: 1.5rem;
}

.dataTables_length,
.dataTables_filter {
  font-size: 0;
  position: relative;
  appearance: none;
}

.dataTables_length:after,
.dataTables_filter:after {
  font-family: "zwicon";
  position: absolute;
  left: 1rem;
  bottom: 0.5rem;
  font-size: 1.3rem;
  color: #000000;
}

.dataTables_length > label,
.dataTables_filter > label {
  margin: 0;
  width: 100%;
}

.dataTables_length > label select,
.dataTables_length > label input[type=search],
.dataTables_filter > label select,
.dataTables_filter > label input[type=search] {
  padding: 0.6rem 1rem 0.6rem 2.75rem;
  font-size: 1rem;
  border: 1px solid black;
  height: calc(1.5em + 1.2rem + 2px);
  border-radius: 0;
  width: 100%;
  background-color: transparent;
  color: #000000;
  transition: border-color 300ms;
}

.dataTables_length > label select:focus,
.dataTables_length > label input[type=search]:focus,
.dataTables_filter > label select:focus,
.dataTables_filter > label input[type=search]:focus {
  border-color: black;
  box-shadow: 0 0 5px rgba(255, 255, 255, 0.15);
}

.dataTables_length > label select::-webkit-input-placeholder,
.dataTables_length > label input[type=search]::-webkit-input-placeholder,
.dataTables_filter > label select::-webkit-input-placeholder,
.dataTables_filter > label input[type=search]::-webkit-input-placeholder {
  color: rgba(0, 0, 0, 0.4);
}

.dataTables_length > label select:-moz-placeholder,
.dataTables_length > label input[type=search]:-moz-placeholder,
.dataTables_filter > label select:-moz-placeholder,
.dataTables_filter > label input[type=search]:-moz-placeholder {
  color: rgba(0, 0, 0, 0.4);
}

.dataTables_length > label select::-moz-placeholder,
.dataTables_length > label input[type=search]::-moz-placeholder,
.dataTables_filter > label select::-moz-placeholder,
.dataTables_filter > label input[type=search]::-moz-placeholder {
  color: rgba(0, 0, 0, 0.4);
}

.dataTables_length > label select:-ms-input-placeholder,
.dataTables_length > label input[type=search]:-ms-input-placeholder,
.dataTables_filter > label select:-ms-input-placeholder,
.dataTables_filter > label input[type=search]:-ms-input-placeholder {
  color: rgba(0, 0, 0, 0.4);
}

@media (min-width: 576px) {
  .dataTables_length {
    min-width: 150px;
    margin-left: 1.5rem;
  }
}

@media (max-width: 575.98px) {
  .dataTables_length {
    display: none;
  }
}

.dataTables_length:after {
  content: '\ea5b';
}

.dataTables_length select {
  appearance: none;
  background: url(/build/images/select-caret.babebfc3.svg) no-repeat bottom 5px right 5px;
}

.dataTables_filter {
  flex: 1 1 auto;
}

.dataTables_filter:after {
  content: '\ea72';
}

.dataTables_paginate {
  text-align: center;
}

.paginate_button {
  background-color: rgba(255, 255, 255, 0.08);
  display: inline-block;
  color: #000000;
  vertical-align: top;
  border-radius: 50%;
  margin: 0 1px 0 2px;
  font-size: 1rem;
  cursor: pointer;
  width: 2.5rem;
  height: 2.5rem;
  line-height: 2.5rem;
  text-align: center;
  transition: background-color 300ms, color 300ms;
}

.paginate_button.current {
  background-color: rgba(0, 0, 0, 0.2);
  color: #000000;
  cursor: default;
}

.paginate_button:not(.current):not(.disabled):hover, .paginate_button:not(.current):not(.disabled):focus {
  background-color: rgba(255, 255, 255, 0.2);
  color: #000000;
}

.paginate_button.current, .paginate_button.disabled {
  cursor: default;
}

.paginate_button.previous, .paginate_button.next {
  font-size: 0;
  position: relative;
}

@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
  .paginate_button.previous, .paginate_button.next {
    font-size: 1rem;
  }
}

.paginate_button.previous:before, .paginate_button.next:before {
  font-family: "zwicon";
  font-size: 1.5rem;
  line-height: 2.55rem;
}

.paginate_button.previous:before {
  content: '\e90f';
}

.paginate_button.next:before {
  content: '\e910';
}

.paginate_button.disabled {
  opacity: 0.6;
}

.paginate_button.disabled:hover, .paginate_button.disabled:focus {
  color: #000000;
}

.dataTables_info {
  text-align: center;
  padding: 2.5rem 0 1.5rem;
  font-size: 0.9rem;
  color: rgba(255, 255, 255, 0.5);
}

.data-table-toggled {
  overflow: hidden;
}

.data-table-toggled .dataTables_buttons [data-table-action="fullscreen"]:before {
  content: '\f16c';
}

.data-table .table > thead > tr > th {
  border-top: 0;
  user-select: none;
  cursor: pointer;
  position: relative;
}

.data-table .table > tbody > tr {
  background-color: inherit;
}

.data-table__header {
  padding: 0 0 2rem;
}

.data-table__filter {
  max-width: 500px;
}

.data-table__filter .form-control {
  padding-left: 2rem;
}

.data-table__filter:before {
  font-family: "zwicon";
  content: "";
  font-size: 1.5rem;
  position: absolute;
  left: 0;
  bottom: 0.263rem;
}

.data-table__footer {
  text-align: center;
  padding: 2.1rem 0;
}

.dt-buttons {
  display: none;
}

@media (min-width: 576px) {
  .dataTables_actions {
    width: 40px;
    height: calc(1.5em + 1.2rem + 2px);
    border: 1px solid black;
    margin-left: 1.5rem;
    position: relative;
  }
  .dataTables_actions > i {
    width: 100%;
    height: 100%;
    display: block;
    font-size: 1.5rem;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
    transition: background-color 300ms;
  }
  .dataTables_actions.show > i,
  .dataTables_actions > i:hover {
    background-color: rgba(255, 255, 255, 0.08);
  }
}

@media (max-width: 575.98px) {
  .dataTables_actions {
    display: none;
  }
}

.flatpickr-calendar {
  border-radius: 2px;
  border: 0;
  box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.175);
  width: auto;
  user-select: none;
  background-color: rgba(0, 0, 0, 0.96);
  margin-top: -3px;
}

.flatpickr-calendar:before, .flatpickr-calendar:after {
  display: none;
}

.flatpickr-months {
  border-radius: 2px 2px 0 0;
}

.flatpickr-months .flatpickr-month {
  height: 60px;
}

.flatpickr-months .flatpickr-prev-month,
.flatpickr-months .flatpickr-next-month {
  width: 35px;
  height: 35px;
  padding: 0;
  line-height: 30px;
  border-radius: 2px;
  color: #ffffff;
  top: 13px;
  font-size: 2rem;
  transition: background-color 300ms;
}

.flatpickr-months .flatpickr-prev-month:hover,
.flatpickr-months .flatpickr-next-month:hover {
  color: #ffffff;
  background-color: rgba(255, 255, 255, 0.1);
}

.flatpickr-months .flatpickr-prev-month {
  margin-left: 15px;
}

.flatpickr-months .flatpickr-next-month {
  margin-right: 15px;
}

.flatpickr-current-month {
  font-size: 1.25rem;
  text-transform: uppercase;
  color: #ffffff;
  padding-top: 18px;
}

.flatpickr-current-month span.cur-month,
.flatpickr-current-month input.cur-year {
  font-weight: 600;
}

.flatpickr-current-month span.cur-month:hover {
  background-color: transparent;
}

.flatpickr-current-month .numInputWrapper:hover {
  background-color: transparent;
}

.flatpickr-current-month .numInputWrapper span {
  border: 0;
  right: -5px;
  padding: 0;
}

.flatpickr-current-month .numInputWrapper span:after {
  left: 3px;
}

.flatpickr-current-month .numInputWrapper span.arrowUp:after {
  border-bottom-color: #ffffff;
}

.flatpickr-current-month .numInputWrapper span.arrowDown:after {
  border-top-color: #ffffff;
}

span.flatpickr-weekday {
  font-weight: 400;
  color: #000000;
}

.flatpickr-day {
  font-size: 0.92rem;
  border: 0;
  color: #ffffff;
}

.flatpickr-day.selected, .flatpickr-day.selected:hover {
  background-color: #ffffff !important;
  color: #131313 !important;
}

.flatpickr-day.today, .flatpickr-day.today:hover {
  background-color: rgba(255, 255, 255, 0.1);
}

.flatpickr-day:hover {
  background-color: rgba(255, 255, 255, 0.1);
}

.flatpickr-day.nextMonthDay, .flatpickr-day.prevMonthDay {
  color: rgba(255, 255, 255, 0.25);
}

.flatpickr-day.nextMonthDay:hover, .flatpickr-day.prevMonthDay:hover {
  background-color: rgba(255, 255, 255, 0.05);
}

.numInputWrapper span:hover {
  background-color: rgba(255, 255, 255, 0.1);
}

.flatpickr-time {
  border-top: 1px solid rgba(255, 255, 255, 0.1) !important;
}

.flatpickr-time .numInputWrapper:hover,
.flatpickr-time .flatpickr-am-pm:hover {
  background-color: rgba(255, 255, 255, 0.005);
}

.flatpickr-time input,
.flatpickr-time .flatpickr-am-pm {
  color: #ffffff;
}

.flatpickr-time input:hover, .flatpickr-time input:focus,
.flatpickr-time .flatpickr-am-pm:hover,
.flatpickr-time .flatpickr-am-pm:focus {
  background-color: transparent;
}

.flatpickr-innerContainer {
  padding: 5px 0;
}

.colorpicker {
  padding: 5px;
  margin-top: -1px;
  border-radius: 0 0 2px 2px;
}

.colorpicker:before,
.colorpicker:after {
  display: none;
}

.colorpicker div {
  border-radius: 2px;
}

.colorpicker-saturation i {
  border: 0;
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.36);
}

.colorpicker-saturation i, .colorpicker-saturation i b {
  height: 10px;
  width: 10px;
}

.colorpicker-hue,
.colorpicker-alpha {
  width: 20px;
}

.colorpicker-color, .colorpicker-color div {
  height: 20px;
}

.color-picker__preview {
  width: 18px;
  height: 18px;
  border-radius: 50%;
}

.trumbowyg-box {
  border: 0;
  background-color: rgba(0, 0, 0, 0.2);
}

.trumbowyg-box.trumbowyg-fullscreen {
  background-color: rgba(0, 0, 0, 0.96);
}

.trumbowyg-textarea {
  background-color: transparent;
  color: #dee2e6;
}

.trumbowyg-button-pane {
  background-color: rgba(255, 255, 255, 0.8);
  border: 0;
}

.trumbowyg-button-pane:after {
  height: 0;
}

.trumbowyg-button-pane .trumbowyg-button-group:not(:empty) + .trumbowyg-button-group:before {
  background-color: black;
}

.trumbowyg-button-pane .trumbowyg-button-group:after {
  background-color: transparent;
}

.trumbowyg-button-pane button {
  margin: 0;
  height: 36px;
}

.trumbowyg-dropdown {
  border: 0;
  box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.175);
}

.trumbowyg-dropdown button {
  font-size: 1rem;
  height: 40px;
  padding: 0 1.5rem;
}

.trumbowyg-dropdown button svg {
  margin-top: -3px;
}

.trumbowyg-dropdown button:hover {
  background-color: rgba(255, 255, 255, 0.06);
}

.trumbowyg-modal-box {
  font-size: 1rem;
  box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.175);
  background-color: rgba(255, 255, 255, 0.08);
  border-radius: 2px;
}

.trumbowyg-modal-box .trumbowyg-modal-title {
  font-size: 1rem;
  color: #000000;
  font-weight: 600;
  border: 0;
  background-color: transparent;
  margin: 0;
}

.trumbowyg-modal-box label {
  margin: 15px 20px;
  font-weight: normal;
}

.trumbowyg-modal-box label .trumbowyg-input-infos span {
  color: #000000;
  border-color: black;
  background-color: rgba(255, 255, 255, 0.08);
}

.trumbowyg-modal-box label input {
  border-color: black;
  font-size: 1rem;
  color: #000000;
  background-color: rgba(255, 255, 255, 0.08);
}

.trumbowyg-modal-box label input:focus, .trumbowyg-modal-box label input:hover {
  border-color: black;
  background-color: rgba(255, 255, 255, 0.08);
}

.trumbowyg-modal-box .trumbowyg-modal-button {
  font-size: 1rem;
  height: auto;
  line-height: 100%;
  border-radius: 2px;
  padding: 7px 0;
  margin: 0 20px;
  bottom: 18px;
}

.trumbowyg-overlay {
  background-color: transparent;
}

.fc th {
  text-transform: uppercase;
  padding: 10px;
}

.fc table {
  background: transparent;
}

.fc table tr > td:first-child {
  border-left-width: 0;
  border-bottom-width: 0;
}

.fc table tr > td:last-child {
  border-right-width: 0;
}

.fc table thead > tr > td {
  border-top-width: 0;
}

.fc-unthemed td.fc-today {
  background-color: transparent;
}

.fc-unthemed td.fc-today span {
  color: #fd7e14;
}

.fc-event {
  padding: 0;
  font-size: 0.95rem;
  border-radius: 1px;
  background-color: rgba(255, 255, 255, 0.75);
  border: 0;
}

.fc-event .fc-title {
  padding: 4px 8px;
  display: block;
  color: #000000;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.fc-event .fc-time {
  float: left;
  background: rgba(0, 0, 0, 0.2);
  padding: 2px 6px;
  margin: 0 0 0 -1px;
}

.fc-view,
.fc-view > table {
  border: 0;
  overflow: hidden;
}

.fc-view > table > tbody > tr .ui-widget-content {
  border-top: 0;
}

.fc-highlight {
  background-color: rgba(0, 0, 0, 0.4);
}

.fc-button {
  border: 0;
  border-radius: 2px;
  padding-bottom: 7px;
}

.fc-button, .fc-button .fc-button-primary {
  background-color: transparent;
}

.fc-button:hover, .fc-button:focus, .fc-button:active, .fc-button .fc-button-primary:hover, .fc-button .fc-button-primary:focus, .fc-button .fc-button-primary:active {
  background-color: rgba(255, 255, 255, 0.08) !important;
}

.fc-button:focus, .fc-button:active, .fc-button .fc-button-primary:focus, .fc-button .fc-button-primary:active {
  box-shadow: none !important;
}

.calendar:before {
  content: '';
  display: block;
  transition: background-image 300ms;
  border: 5px solid transparent;
  border-bottom: 0;
  background-clip: content-box;
  background-repeat: no-repeat;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
  background-position: center;
}

@media (min-width: 768px) {
  .calendar:before {
    height: 250px;
  }
}

@media (max-width: 767.98px) {
  .calendar:before {
    height: 150px;
  }
}

.calendar td, .calendar th {
  border-color: rgba(255, 255, 255, 0.075);
}

.calendar .fc-day-number {
  padding: 6px 10px;
  width: 100%;
  box-sizing: border-box;
}

@media (min-width: 576px) {
  .calendar .fc-day-number {
    font-size: 1.5rem;
  }
}

.calendar .fc-day-header {
  text-align: left;
}

.calendar .fc-day-grid-event {
  margin: 1px 9px;
}

.calendar[data-calendar-month="1"]:before {
  background-image: url(/build/images/1.af130b51.jpg);
}

.calendar[data-calendar-month="2"]:before {
  background-image: url(/build/images/2.743156bb.jpg);
}

.calendar[data-calendar-month="3"]:before {
  background-image: url(/build/images/3.66821695.jpg);
}

.calendar[data-calendar-month="4"]:before {
  background-image: url(/build/images/4.716c3c30.jpg);
}

.calendar[data-calendar-month="5"]:before {
  background-image: url(/build/images/5.d0644f49.jpg);
}

.calendar[data-calendar-month="6"]:before {
  background-image: url(/build/images/6.e14d8d4c.jpg);
}

.calendar[data-calendar-month="7"]:before {
  background-image: url(/build/images/7.ab5a91ae.jpg);
}

.calendar[data-calendar-month="8"]:before {
  background-image: url(/build/images/8.aa08ff8d.jpg);
}

.calendar[data-calendar-month="9"]:before {
  background-image: url(/build/images/9.6fc8fbe8.jpg);
}

.calendar[data-calendar-month="10"]:before {
  background-image: url(/build/images/10.ff09c135.jpg);
}

.calendar[data-calendar-month="11"]:before {
  background-image: url(/build/images/11.b2510050.jpg);
}

.calendar[data-calendar-month="12"]:before {
  background-image: url(/build/images/12.4dd2ff3d.jpg);
}

.lg-outer .lg-thumb-item {
  border-color: rgba(255, 255, 255, 0.25);
  border-radius: 2px;
}

.lg-slide em {
  font-style: normal;
}

.lg-slide em h3 {
  color: #ffffff;
  margin-bottom: 5px;
}

.lg-slide .video-cont {
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.15), 0 2px 10px rgba(0, 0, 0, 0.1);
}

ul.jqtree-tree {
  border-top: 1px solid rgba(255, 255, 255, 0.125);
}

ul.jqtree-tree li.jqtree-selected > .jqtree-element {
  transition: background-color 200ms, border-color 200ms;
  border-color: transparent;
}

ul.jqtree-tree li.jqtree-selected > .jqtree-element,
ul.jqtree-tree li.jqtree-selected > .jqtree-element:hover {
  background: rgba(255, 255, 255, 0.125);
  text-shadow: none;
}

ul.jqtree-tree li:not(.jqtree-selected) > .jqtree-element:hover {
  background-color: rgba(255, 255, 255, 0.02);
}

ul.jqtree-tree li.jqtree-folder {
  margin-bottom: 0;
}

ul.jqtree-tree li.jqtree-folder:not(.jqtree-closed) + li.jqtree_common {
  position: relative;
}

ul.jqtree-tree li.jqtree-folder:not(.jqtree-closed) + li.jqtree_common:before {
  content: '';
  position: absolute;
  top: -1px;
  left: 0;
  width: 30px;
  background-color: rgba(255, 255, 255, 0.125);
  height: 1px;
}

ul.jqtree-tree li.jqtree-folder.jqtree-closed {
  margin: 0;
}

ul.jqtree-tree li.jqtree-ghost span.jqtree-line {
  background-color: #ffffff;
}

ul.jqtree-tree li.jqtree-ghost span.jqtree-circle {
  border-color: #ffffff;
}

ul.jqtree-tree .jqtree-moving > .jqtree-element .jqtree-title {
  outline: none;
}

ul.jqtree-tree span.jqtree-border {
  border-radius: 0;
  border-color: #ffffff;
}

ul.jqtree-tree .jqtree-toggler {
  position: absolute;
  height: 16px;
  width: 16px;
  background: rgba(255, 255, 255, 0.75);
  color: #131313;
  padding: 0 0 0 1px;
  font-size: 1.25rem;
  border-radius: 2px;
  top: 12px;
  left: -8px;
  text-align: center;
  transition: background-color 300ms, color 300ms;
}

ul.jqtree-tree .jqtree-toggler:hover {
  background-color: #ffffff;
  color: #000000;
}

ul.jqtree-tree .jqtree-toggler > i {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
}

ul.jqtree-tree .jqtree-element {
  position: relative;
  padding: 10px 20px;
  border: 1px solid rgba(255, 255, 255, 0.125);
  border-top: 0;
  margin-bottom: 0;
}

ul.jqtree-tree .jqtree-title {
  color: #ffffff;
  margin-left: 0;
}

ul.jqtree-tree ul.jqtree_common {
  margin-left: 22px;
  padding-left: 8px;
}

.text-count-wrapper {
  position: absolute;
  bottom: -23px;
  height: 20px;
  width: 100%;
  left: 0;
  font-size: 0.875rem;
}

.error-text-min {
  float: right;
}

.scrollbar,
.scrollbar-light {
  height: 100%;
}

.os-theme-dark .os-scrollbar,
.os-theme-light .os-scrollbar {
  padding: 0;
}

.os-theme-dark > .os-scrollbar-vertical,
.os-theme-light > .os-scrollbar-vertical {
  width: 3px;
}

.os-theme-dark > .os-scrollbar-horizontal,
.os-theme-light > .os-scrollbar-horizontal {
  height: 3px;
}

.os-theme-light > .os-scrollbar > .os-scrollbar-track > .os-scrollbar-handle {
  background-color: rgba(255, 255, 255, 0.25);
}

.inf__drop-area {
  position: relative;
  display: flex;
  align-items: center;
  height: 65px;
  max-width: 100%;
  border: 1px dashed #c4c4c4;
  border-radius: 3px;
  padding: 0 20px;
  transition: 0.2s;
  margin-bottom: 8px;
}

.inf__drop-area * {
  box-sizing: border-box;
}

.inf__drop-area:hover > .inf__btn, .inf__drop-area:hover > .inf__drop-area {
  background-color: rgba(137, 196, 244, 0.4);
}

.inf__drop-area.is-active {
  background-color: rgba(137, 196, 244, 0.4);
}

input[type="file"] {
  position: absolute;
  left: 0;
  top: 0;
  /* height: 100%;
    width: 100%;*/
  opacity: 0;
  cursor: pointer;
}

input[type="file"]:focus {
  outline: none;
}

.inf__btn {
  display: inline-block;
  border: 1px solid #c4c4c4;
  border-radius: 3px;
  padding: 5px 12px;
  margin-right: 10px;
  font-size: 10px;
  text-transform: uppercase;
}

.inf__hint {
  flex: 1;
  font-size: 11px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.scroll-custom::-webkit-scrollbar-track {
  border-radius: 6px;
  -moz-border-radius: 6px;
  -webkit-border-radius: 6px;
  -o-border-radius: 6px;
  -ms-border-radius: 6px;
  background: 0 0;
  zoom: 1;
  background: rgba(0, 0, 0, 0.1);
}

.scroll-custom::-webkit-scrollbar-thumb {
  border-radius: 6px;
  -moz-border-radius: 6px;
  -webkit-border-radius: 6px;
  -o-border-radius: 6px;
  -ms-border-radius: 6px;
  background: 0 0;
  zoom: 1;
  background: rgba(0, 0, 0, 0.2);
}

.scroll-custom::-webkit-scrollbar {
  width: 5px;
  height: 5px;
}

.nav-tabs .nav-link {
  color: grey;
}

.nav-tabs .nav-link.active,
.nav-tabs .nav-item.show .nav-link {
  color: black;
  background-color: white;
  border-color: #dee2e6 #dee2e6 transparent;
  border-radius: 3px 3px 0 0;
}

select option {
  color: black;
}

.content {
  min-height: calc(100vh - 90px);
}

.footer {
  height: 50px;
}

.__image_error_404 {
  height: auto;
  width: 100%;
  background: url("https://images.pexels.com/photos/262272/pexels-photo-262272.jpeg") no-repeat center;
  background-size: cover;
}

.__no-background {
  background-color: transparent;
}

.__custom-box-body {
  background: transparent;
}

.__btn-file {
  position: relative;
  overflow: hidden;
  margin-left: 5px;
}

.__btn-file input[type=file] {
  position: absolute;
  top: 0;
  right: 0;
  min-width: 100%;
  min-height: 100%;
  font-size: 100px;
  text-align: right;
  filter: alpha(opacity=0);
  opacity: 0;
  outline: none;
  background: white;
  cursor: inherit;
  display: block;
}

.__delete_file {
  float: inherit;
  opacity: .5;
  margin-top: -15px;
}

.box-pack {
  box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2);
  height: 100%;
  -webkit-transition: all 200ms ease-in;
  -webkit-transform: scale(1);
  -ms-transition: all 200ms ease-in;
  -ms-transform: scale(1);
  -moz-transition: all 200ms ease-in;
  -moz-transform: scale(1);
  transition: all 200ms ease-in;
  transform: scale(1);
}

.box-pack:hover {
  z-index: 2;
  -webkit-transition: all 200ms ease-in;
  -webkit-transform: scale(1.05);
  -ms-transition: all 200ms ease-in;
  -ms-transform: scale(1.05);
  -moz-transition: all 200ms ease-in;
  -moz-transform: scale(1.05);
  transition: all 200ms ease-in;
  transform: scale(1.05);
}

.box-pack.active {
  z-index: 2;
  -webkit-transition: all 200ms ease-in;
  -webkit-transform: scale(1.05);
  -ms-transition: all 200ms ease-in;
  -ms-transform: scale(1.05);
  -moz-transition: all 200ms ease-in;
  -moz-transform: scale(1.05);
  transition: all 200ms ease-in;
  transform: scale(1.05);
}

.box-pack.active.shadow-red {
  box-shadow: 0 4px 8px 0 rgba(255, 0, 0, 0.5);
}

.box-pack.active.shadow-blue {
  box-shadow: 0 4px 8px 0 rgba(0, 0, 255, 0.5);
}

.box-pack.active.shadow-orange {
  box-shadow: 0 4px 8px 0 rgba(255, 165, 0, 0.5);
}

.box-pack label {
  cursor: pointer;
  width: 100%;
}

.box-pack hr {
  margin: 5px 0;
}

table > thead > tr > th.no-sort:after {
  content: none !important;
}

/*Spinner*/
.looping-rhombuses-spinner {
  box-sizing: border-box;
  width: calc(15px * 4);
  height: 15px;
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translateX(-50%) translatey(-100%);
}

.looping-rhombuses-spinner * {
  box-sizing: border-box;
}

.looping-rhombuses-spinner .rhombus {
  height: 15px;
  width: 15px;
  background-color: #d81b60;
  left: calc(15px * 4);
  position: absolute;
  margin: 0 auto;
  border-radius: 2px;
  transform: translateY(0) rotate(45deg) scale(0);
  animation: looping-rhombuses-spinner-animation 2500ms linear infinite;
}

.looping-rhombuses-spinner .rhombus:nth-child(1) {
  animation-delay: calc(2500ms * 1 / -1.5);
}

.looping-rhombuses-spinner .rhombus:nth-child(2) {
  animation-delay: calc(2500ms * 2 / -1.5);
}

.looping-rhombuses-spinner .rhombus:nth-child(3) {
  animation-delay: calc(2500ms * 3 / -1.5);
}

@keyframes looping-rhombuses-spinner-animation {
  0% {
    transform: translateX(0) rotate(45deg) scale(0);
  }
  50% {
    transform: translateX(-233%) rotate(45deg) scale(1);
  }
  100% {
    transform: translateX(-466%) rotate(45deg) scale(0);
  }
}

span.__trigger {
  cursor: pointer;
}

span i {
  transition: all .2s ease-in-out;
}

span:hover i.fa, span:hover i.fab {
  transform: scale(1.4);
}

.focus-shake {
  animation: shake 0.5s;
  animation-iteration-count: 1;
}

@keyframes shake {
  0% {
    transform: translate(1px, 1px) rotate(0deg);
  }
  10% {
    transform: translate(-1px, -2px) rotate(-1deg);
  }
  20% {
    transform: translate(-3px, 0px) rotate(1deg);
  }
  30% {
    transform: translate(3px, 2px) rotate(0deg);
  }
  40% {
    transform: translate(1px, -1px) rotate(1deg);
  }
  50% {
    transform: translate(-1px, 2px) rotate(-1deg);
  }
  60% {
    transform: translate(-3px, 1px) rotate(0deg);
  }
  70% {
    transform: translate(3px, 1px) rotate(-1deg);
  }
  80% {
    transform: translate(-1px, -1px) rotate(1deg);
  }
  90% {
    transform: translate(1px, 2px) rotate(0deg);
  }
  100% {
    transform: translate(1px, -2px) rotate(-1deg);
  }
}

.__block-timeline {
  max-height: 490px;
  overflow-y: scroll;
}

.__tab-content-border {
  border: 1px solid #f0f0f0;
}

.__block-new-user .__block-avatar {
  margin-bottom: 20px;
}

.__block-avatar .__input-file input[type='file'] {
  display: none;
}

.__form-help {
  font-size: 11px;
  float: right;
}

.__form-help p {
  margin-bottom: 0;
}

.__form-errors ul {
  padding-left: 0;
}

.__form-errors li {
  list-style: none;
}

.__info-tooltip .tooltip-inner {
  max-width: 500px;
  background-color: #fff;
  color: #0a0a0a;
  border: 1px solid #333;
}

/*Alert overlay*/
.__btnActionsTriggerOverlay {
  color: black !important;
  text-transform: uppercase;
  background: #ffffff;
  padding: 1px 10px;
  border: 2px solid white !important;
  border-radius: 6px;
  display: inline-block;
  font-weight: bold;
  background: linear-gradient(to right, transparent 50%, white 50%);
  background-size: 200% 100%;
  background-position: left bottom;
  transition: background .3s ease-out;
  background-color: rgba(0, 0, 0, 0.2);
}

.__btnActionsTriggerOverlay:hover, .__btnActionsTriggerOverlay.active {
  color: black !important;
  background-position: right bottom;
}

.__actionsOverlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  min-height: 100%;
  z-index: 10001;
}

.__boxActionsOverlay {
  visibility: hidden;
}

.__boxActionsOverlayContents {
  background: #FFF;
  z-index: 10002;
  -webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, 0.18);
  -moz-box-shadow: 0 6px 12px rgba(0, 0, 0, 0.18);
  -o-box-shadow: 0 6px 12px rgba(0, 0, 0, 0.18);
  box-shadow: 0 6px 12px rgba(0, 0, 0, 0.18);
  position: absolute;
  right: 10px;
  min-width: 200px;
  border-radius: 2px 2px 2px 2px;
  text-align: left;
  color: #333;
}

.__boxActionsOverlayHeader {
  border-bottom: 1px solid #e4e5e7;
}

.__boxActionsOverlayBody {
  width: 100%;
}

.__boxActionsOverlayShow {
  visibility: visible;
}

.__boxActionsOverlayShow .__boxActionsOverlayTransition {
  animation-name: bounceInRight;
  animation-duration: .6s;
  animation-fill-mode: both;
}

@keyframes bounceInRight {
  from, 60%, 75%, 90%, to {
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  from {
    opacity: 0;
    transform: translate3d(3000px, 0, 0);
  }
  60% {
    opacity: 1;
    transform: translate3d(-25px, 0, 0);
  }
  75% {
    transform: translate3d(10px, 0, 0);
  }
  90% {
    transform: translate3d(-5px, 0, 0);
  }
  to {
    transform: translate3d(0, 0, 0);
  }
}

/*Actions list*/
ul.__actionList {
  list-style-type: none;
  margin: 0;
  padding: 0;
}

ul.__actionList li {
  border-bottom: 1px solid #e4e5e7;
  padding: 6px 12px;
}

ul.__actionList li:hover {
  background-color: rgba(0, 0, 0, 0.05);
}

ul.__actionList li:last-child {
  border: none;
}

ul.__actionList li a, ul.__actionList li span {
  cursor: pointer;
  text-decoration: none;
  color: #333;
  padding: 2px 12px;
}

/*+/- actions*/
.__padding-rl-xs {
  padding-right: 1px;
  padding-left: 1px;
}

.__wrap {
  padding: 1%;
}

.__table_box {
  margin: 2% 0 2% 0;
}

@media (min-width: 1920px) {
  .product .card {
    width: 50vh;
    height: 48vh;
    text-align: center;
    float: left;
    margin-right: 3em;
    text-transform: uppercase;
    border: none;
    font-weight: bold;
    -webkit-box-shadow: 5px 5px 4px 1px rgba(0, 0, 0, 0.19);
    box-shadow: 5px 5px 4px 1px rgba(0, 0, 0, 0.19);
  }
  .product-title {
    font-size: 20px;
  }
}

@media (min-width: 1500px) and (max-width: 1919px) {
  .product .card {
    width: 50vh;
    height: 60vh;
    text-align: center;
    float: left;
    margin-right: 3em;
    text-transform: uppercase;
    border: none;
    font-weight: bold;
    -webkit-box-shadow: 5px 5px 4px 1px rgba(0, 0, 0, 0.19);
    box-shadow: 5px 5px 4px 1px rgba(0, 0, 0, 0.19);
  }
  .product-title {
    font-size: 20px;
  }
}

@media (min-width: 1205px) and (max-width: 1499px) {
  .product .card {
    width: 50vh;
    height: 73vh;
    text-align: center;
    float: left;
    margin-right: 3em;
    text-transform: uppercase;
    border: none;
    font-weight: bold;
    -webkit-box-shadow: 5px 5px 4px 1px rgba(0, 0, 0, 0.19);
    box-shadow: 5px 5px 4px 1px rgba(0, 0, 0, 0.19);
  }
  .product-title {
    font-size: 20px;
  }
}

@media (max-width: 1204px) {
  .sidebar {
    background-color: white;
  }
  .product .card {
    border: none;
    font-weight: bold;
    margin-left: 0.5em;
    -webkit-box-shadow: 5px 5px 4px 1px rgba(0, 0, 0, 0.19);
    box-shadow: 5px 5px 4px 1px rgba(0, 0, 0, 0.19);
  }
  .product-title {
    font-size: 17px;
  }
}

@media (min-width: 792px) {
  .product {
    display: flex;
    align-items: center;
    justify-content: center;
    padding-top: 2.5em;
  }
  .card-picture {
    display: inline-table;
    width: 48%;
  }
  #switch_user {
    width: 250px;
  }
}

@media (max-width: 791px) {
  .product .card {
    border: none;
    font-weight: bold;
    -webkit-box-shadow: 5px 5px 4px 1px rgba(0, 0, 0, 0.19);
    box-shadow: 5px 5px 4px 1px rgba(0, 0, 0, 0.19);
  }
  .select2-selection__placeholder {
    font-size: 12px;
  }
  .selection {
    visibility: hidden;
  }
}

@media (max-width: 768px) {
  .__wrap {
    padding: 0;
  }
  .__table_box {
    width: 100%;
  }
}

.__padding-section {
  padding: 25px 15px;
}

.__btn-new-customer i {
  font-size: 30px;
}

.__btn-new-customer a {
  font-size: 16px;
  border-radius: 25px;
  padding: 20px;
  width: 135px;
}

/*Files vouchers*/
.__file-body {
  min-height: 120px;
}

.__sticky-content {
  color: white;
  box-shadow: 8px 8px 12px #aaa;
  z-index: 100;
  background-color: #268dba;
}

/*contact*/
span a {
  font-size: 14px;
  line-height: 1.7;
  color: #666666;
  margin: 0px;
  transition: all 0.4s;
  -webkit-transition: all 0.4s;
  -o-transition: all 0.4s;
  -moz-transition: all 0.4s;
}

span a:focus {
  outline: none !important;
}

span a:hover {
  text-decoration: none;
}

#contact_message {
  outline: none;
  border: none;
}

#contact_message:focus {
  border-color: transparent !important;
}

#contact_message::-webkit-input-placeholder, #contact_message:-moz-placeholder, #contact_message::-moz-placeholder, #contact_message:-ms-input-placeholder {
  color: #adadad;
}

/*---------------------------------------------*/
.contact100-form-btn {
  outline: none !important;
  border: none;
  background: transparent;
}

.contact100-form-btn:hover {
  cursor: pointer;
}

.txt1 {
  font-size: 18px;
  line-height: 1.2;
  color: #1a1a1a;
}

.txt3 {
  font-size: 15px;
  line-height: 1.6;
  color: #00ad5f;
}

.txt4 {
  font-size: 15px;
  line-height: 1.6;
  color: #000000;
}

.bold {
  font-weight: bold;
}

.size1 {
  width: 355px;
  max-width: 100%;
}

.size2 {
  width: calc(100% - 43px);
}

.container-contact100 {
  width: 100%;
  min-height: 100vh;
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  background: #f2f2f2;
}

.wrap-contact100 {
  width: 100%;
  background: #fff;
  overflow: hidden;
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  flex-direction: row-reverse;
}

.contact100-more {
  width: calc(100% - 560px);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  position: relative;
  z-index: 1;
  padding: 30px 15px 0px 15px;
}

.contact100-more::before {
  content: "";
  display: block;
  position: absolute;
  z-index: -1;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background: rgba(0, 0, 0, 0.1);
}

.contact100-form {
  width: 560px;
  min-height: 100vh;
  display: block;
  padding: 110px 55px 55px 55px;
}

.contact100-form-title {
  width: 100%;
  display: block;
  font-size: 40px;
  font-weight: 200;
  color: #333333;
  line-height: 1.2;
  text-align: center;
  padding-bottom: 10px;
}

.wrap-input100 {
  width: 100%;
  position: relative;
  border: 1px solid #e6e6e6;
  border-radius: 10px;
  margin-bottom: 20px;
  margin-top: 5%;
}

.label-input100 {
  font-size: 11px;
  color: #666666;
  line-height: 1.2;
  text-transform: uppercase;
  padding: 15px 0 2px 24px;
}

.input100 {
  display: block;
  width: 100%;
  background: transparent;
  font-size: 18px;
  color: #404b46;
  line-height: 1.2;
  padding: 0 26px;
}

input.input100 {
  height: 48px;
}

textarea.input100 {
  min-height: 130px;
  padding-top: 14px;
  padding-bottom: 15px;
}

.focus-input100 {
  position: absolute;
  display: block;
  width: calc(100% + 2px);
  height: calc(100% + 2px);
  top: -1px;
  left: -1px;
  pointer-events: none;
  border: 1px solid #6675df;
  border-radius: 10px;
  visibility: hidden;
  opacity: 0;
  -webkit-transition: all 0.4s;
  -o-transition: all 0.4s;
  -moz-transition: all 0.4s;
  transition: all 0.4s;
  -webkit-transform: scaleX(1.1) scaleY(1.3);
  -moz-transform: scaleX(1.1) scaleY(1.3);
  -ms-transform: scaleX(1.1) scaleY(1.3);
  -o-transform: scaleX(1.1) scaleY(1.3);
  transform: scaleX(1.1) scaleY(1.3);
}

.input100:focus + .focus-input100 {
  visibility: visible;
  opacity: 1;
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}

.container-contact100-form-btn {
  width: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  padding-top: 10px;
}

.contact100-form-btn {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0 20px;
  width: 100%;
  height: 50px;
  border-radius: 10px;
  background: #6675df;
  font-size: 12px;
  color: #fff;
  line-height: 1.2;
  text-transform: uppercase;
  letter-spacing: 1px;
  -webkit-transition: all 0.4s;
  -o-transition: all 0.4s;
  -moz-transition: all 0.4s;
  transition: all 0.4s;
}

.contact100-form-btn:hover {
  background: #404b46;
}

@media (max-width: 992px) {
  .contact100-form {
    width: 50%;
    padding: 110px 30px 55px 30px;
  }
  .contact100-more {
    width: 50%;
  }
}

@media (max-width: 768px) {
  .contact100-form {
    width: 100%;
  }
  .contact100-more {
    display: none;
  }
}

@media (max-width: 576px) {
  .contact100-form {
    padding: 110px 15px 55px 15px;
  }
}

.validate-input {
  position: relative;
}

.wrap-input100 {
  width: 100% !important;
  width: calc(100% + 2px) !important;
}

.p-b-47 {
  padding-bottom: 47px;
}

.p-r-25 {
  padding-right: 25px;
}

.dis-flex {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  color: #ffffff;
}

/*end contact*/
.ui-autocomplete {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 1000;
  float: left;
  display: none;
  min-width: 160px;
  padding: 4px;
  margin: 0 0 10px 65px;
  list-style: none;
  background-color: #ffffff;
  border-color: #ccc;
  border-color: rgba(0, 0, 0, 0.2);
  border-style: solid;
  border-width: 1px;
  -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
  -moz-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
  box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
  -webkit-background-clip: padding-box;
  -moz-background-clip: padding;
  background-clip: padding-box;
}

.ui-menu-item > a.ui-corner-all {
  display: block;
  padding: 3px 15px;
  clear: both;
  font-weight: normal;
  line-height: 18px;
  white-space: nowrap;
  text-decoration: none;
}

.ui-state-hover, .ui-state-active {
  color: #ffffff;
  text-decoration: none;
  background-color: #0088cc;
  border-radius: 0px;
  -webkit-border-radius: 0px;
  -moz-border-radius: 0px;
  background-image: none;
}

.center {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
}

/* autoconnect spring assur */
#autoConnectForm {
  padding: 12px 5px 12px 15px;
  display: block;
}

.__auto-connect-li :hover {
  cursor: pointer;
  background-color: #1e282c;
}

.__w-100 {
  width: 100%;
}

.sm-padding > [class*='col-'] {
  padding-right: 5px;
  padding-left: 5px;
}

.__card-product {
  width: auto;
  background: #fff;
  box-shadow: 0 4px 7px rgba(0, 0, 0, 0.5);
  cursor: pointer;
  transition: all 0.5s cubic-bezier(0.8, 0.5, 0.2, 1.4);
  position: relative;
}

.__card-product img {
  position: relative;
  width: 100%;
  height: 250px;
  transition: all 0.5s cubic-bezier(0.8, 0.5, 0.2, 1.4);
}

.__card-product .__card-title {
  background-color: rgba(255, 255, 255, 0.6);
  width: 100%;
  position: absolute;
  bottom: 8px;
}

.__card-product .__card-title h3 {
  line-height: 48px;
  margin: auto;
  font-family: 'Nunito',sans-serif;
  text-align: center;
  vertical-align: middle !important;
}

.__card-img-transparency {
  opacity: .2;
  cursor: auto;
}

.__descriptions-product {
  position: absolute;
  top: 0;
  left: 0;
  background-color: rgba(255, 255, 255, 0.9);
  width: 100%;
  height: 100%;
  transition: all .7s ease-in-out;
  padding: 20px;
  box-sizing: border-box;
  clip-path: circle(0% at 100% 100%);
}

.__descriptions-product ul li {
  color: black;
  text-decoration: none;
}

.__card-product:hover {
  transition: all 0.5s cubic-bezier(0.8, 0.5, 0.2, 1.4);
  box-shadow: 0 2px 3px rgba(0, 0, 0, 0.3);
  transform: scale(0.97);
}

.__card-product:hover .__descriptions-product {
  left: 0;
  transition: all .7s ease-in-out;
  clip-path: circle(75%);
}

.__card-product h1 {
  color: #ff3838;
  letter-spacing: 1px;
  margin: 0;
}

.__card-product p {
  line-height: 24px;
  height: 70%;
}

/* Config */
/* Absolute Center Spinner */
.loading {
  position: fixed;
  z-index: 999;
  height: 2em;
  width: 2em;
  overflow: show;
  margin: auto;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
}

.loading:before {
  content: '';
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: radial-gradient(rgba(20, 20, 20, 0.8), rgba(0, 0, 0, 0.8));
  background: -webkit-radial-gradient(rgba(20, 20, 20, 0.8), rgba(0, 0, 0, 0.8));
}

.loading:not(:required) {
  /* hide "loading..." text */
  font: 0/0 a;
  color: transparent;
  text-shadow: none;
  background-color: transparent;
  border: 0;
}

/* Transparent Overlay */
/* :not(:required) hides these rules from IE9 and below */
:root {
  --sk-size:100px;
  --sk-color:#d81b60;
}

/* Utility class for centering */
.sk-center {
  margin: auto;
}

/*  Plane
      <div class="sk-plane"></div>
 */
.sk-plane {
  width: var(--sk-size);
  height: var(--sk-size);
  background-color: var(--sk-color);
  animation: sk-plane 1.2s infinite ease-in-out;
}

@keyframes sk-plane {
  0% {
    transform: perspective(120px) rotateX(0deg) rotateY(0deg);
  }
  50% {
    transform: perspective(120px) rotateX(-180.1deg) rotateY(0deg);
  }
  100% {
    transform: perspective(120px) rotateX(-180deg) rotateY(-179.9deg);
  }
}

/*  Chase
      <div class="sk-chase">
        <div class="sk-chase-dot"></div>
        <div class="sk-chase-dot"></div>
        <div class="sk-chase-dot"></div>
        <div class="sk-chase-dot"></div>
        <div class="sk-chase-dot"></div>
        <div class="sk-chase-dot"></div>
      </div>
 */
.block-loading {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.sk-chase {
  width: var(--sk-size);
  height: var(--sk-size);
  position: relative;
  animation: sk-chase 2.5s infinite linear both;
}

.sk-chase-dot {
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  animation: sk-chase-dot 2.0s infinite ease-in-out both;
}

.sk-chase-dot:before {
  content: '';
  display: block;
  width: 25%;
  height: 25%;
  background-color: var(--sk-color);
  border-radius: 100%;
  animation: sk-chase-dot-before 2.0s infinite ease-in-out both;
}

.sk-chase-dot:nth-child(1) {
  animation-delay: -1.1s;
}

.sk-chase-dot:nth-child(2) {
  animation-delay: -1.0s;
}

.sk-chase-dot:nth-child(3) {
  animation-delay: -0.9s;
}

.sk-chase-dot:nth-child(4) {
  animation-delay: -0.8s;
}

.sk-chase-dot:nth-child(5) {
  animation-delay: -0.7s;
}

.sk-chase-dot:nth-child(6) {
  animation-delay: -0.6s;
}

.sk-chase-dot:nth-child(1):before {
  animation-delay: -1.1s;
}

.sk-chase-dot:nth-child(2):before {
  animation-delay: -1.0s;
}

.sk-chase-dot:nth-child(3):before {
  animation-delay: -0.9s;
}

.sk-chase-dot:nth-child(4):before {
  animation-delay: -0.8s;
}

.sk-chase-dot:nth-child(5):before {
  animation-delay: -0.7s;
}

.sk-chase-dot:nth-child(6):before {
  animation-delay: -0.6s;
}

@keyframes sk-chase {
  100% {
    transform: rotate(360deg);
  }
}

@keyframes sk-chase-dot {
  80%, 100% {
    transform: rotate(360deg);
  }
}

@keyframes sk-chase-dot-before {
  50% {
    transform: scale(0.4);
  }
  100%, 0% {
    transform: scale(1);
  }
}

/*  Bounce
      <div class="sk-bounce">
        <div class="sk-bounce-dot"></div>
        <div class="sk-bounce-dot"></div>
      </div>
  */
.sk-bounce {
  width: var(--sk-size);
  height: var(--sk-size);
  position: relative;
}

.sk-bounce-dot {
  width: 100%;
  height: 100%;
  border-radius: 50%;
  background-color: var(--sk-color);
  opacity: 0.6;
  position: absolute;
  top: 0;
  left: 0;
  animation: sk-bounce 2s infinite cubic-bezier(0.455, 0.03, 0.515, 0.955);
}

.sk-bounce-dot:nth-child(2) {
  animation-delay: -1.0s;
}

@keyframes sk-bounce {
  0%, 100% {
    transform: scale(0);
  }
  45%, 55% {
    transform: scale(1);
  }
}

/*  Wave
      <div class="sk-wave">
        <div class="sk-wave-rect"></div>
        <div class="sk-wave-rect"></div>
        <div class="sk-wave-rect"></div>
        <div class="sk-wave-rect"></div>
        <div class="sk-wave-rect"></div>
      </div>
 */
.sk-wave {
  width: var(--sk-size);
  height: var(--sk-size);
  display: flex;
  justify-content: space-between;
}

.sk-wave-rect {
  background-color: var(--sk-color);
  height: 100%;
  width: 15%;
  animation: sk-wave 1.2s infinite ease-in-out;
}

.sk-wave-rect:nth-child(1) {
  animation-delay: -1.2s;
}

.sk-wave-rect:nth-child(2) {
  animation-delay: -1.1s;
}

.sk-wave-rect:nth-child(3) {
  animation-delay: -1.0s;
}

.sk-wave-rect:nth-child(4) {
  animation-delay: -0.9s;
}

.sk-wave-rect:nth-child(5) {
  animation-delay: -0.8s;
}

@keyframes sk-wave {
  0%, 40%, 100% {
    transform: scaleY(0.4);
  }
  20% {
    transform: scaleY(1);
  }
}

/*  Pulse
      <div class="sk-pulse"></div>
 */
.sk-pulse {
  width: var(--sk-size);
  height: var(--sk-size);
  background-color: var(--sk-color);
  border-radius: 100%;
  animation: sk-pulse 1.2s infinite cubic-bezier(0.455, 0.03, 0.515, 0.955);
}

@keyframes sk-pulse {
  0% {
    transform: scale(0);
  }
  100% {
    transform: scale(1);
    opacity: 0;
  }
}

/*  Flow
      <div class="sk-flow">
        <div class="sk-flow-dot"></div>
        <div class="sk-flow-dot"></div>
        <div class="sk-flow-dot"></div>
      </div>
 */
.sk-flow {
  width: calc(var(--sk-size) * 1.3);
  height: calc(var(--sk-size) * 1.3);
  display: flex;
  justify-content: space-between;
}

.sk-flow-dot {
  width: 25%;
  height: 25%;
  background-color: var(--sk-color);
  border-radius: 50%;
  animation: sk-flow 1.4s cubic-bezier(0.455, 0.03, 0.515, 0.955) 0s infinite both;
}

.sk-flow-dot:nth-child(1) {
  animation-delay: -0.30s;
}

.sk-flow-dot:nth-child(2) {
  animation-delay: -0.15s;
}

@keyframes sk-flow {
  0%, 80%, 100% {
    transform: scale(0.3);
  }
  40% {
    transform: scale(1);
  }
}

/*  Swing
      <div class="sk-swing">
        <div class="sk-swing-dot"></div>
        <div class="sk-swing-dot"></div>
      </div>
 */
.sk-swing {
  width: var(--sk-size);
  height: var(--sk-size);
  position: relative;
  animation: sk-swing 1.8s infinite linear;
}

.sk-swing-dot {
  width: 45%;
  height: 45%;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  margin: auto;
  background-color: var(--sk-color);
  border-radius: 100%;
  animation: sk-swing-dot 2s infinite ease-in-out;
}

.sk-swing-dot:nth-child(2) {
  top: auto;
  bottom: 0;
  animation-delay: -1s;
}

@keyframes sk-swing {
  100% {
    transform: rotate(360deg);
  }
}

@keyframes sk-swing-dot {
  0%, 100% {
    transform: scale(0.2);
  }
  50% {
    transform: scale(1);
  }
}

/*  Circle
      <div class="sk-circle">
        <div class="sk-circle-dot"></div>
        <div class="sk-circle-dot"></div>
        <div class="sk-circle-dot"></div>
        <div class="sk-circle-dot"></div>
        <div class="sk-circle-dot"></div>
        <div class="sk-circle-dot"></div>
        <div class="sk-circle-dot"></div>
        <div class="sk-circle-dot"></div>
        <div class="sk-circle-dot"></div>
        <div class="sk-circle-dot"></div>
        <div class="sk-circle-dot"></div>
        <div class="sk-circle-dot"></div>
      </div>
 */
.sk-circle {
  width: var(--sk-size);
  height: var(--sk-size);
  position: relative;
}

.sk-circle-dot {
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
}

.sk-circle-dot:before {
  content: '';
  display: block;
  width: 15%;
  height: 15%;
  background-color: var(--sk-color);
  border-radius: 100%;
  animation: sk-circle 1.2s infinite ease-in-out both;
}

.sk-circle-dot:nth-child(1) {
  transform: rotate(30deg);
}

.sk-circle-dot:nth-child(2) {
  transform: rotate(60deg);
}

.sk-circle-dot:nth-child(3) {
  transform: rotate(90deg);
}

.sk-circle-dot:nth-child(4) {
  transform: rotate(120deg);
}

.sk-circle-dot:nth-child(5) {
  transform: rotate(150deg);
}

.sk-circle-dot:nth-child(6) {
  transform: rotate(180deg);
}

.sk-circle-dot:nth-child(7) {
  transform: rotate(210deg);
}

.sk-circle-dot:nth-child(8) {
  transform: rotate(240deg);
}

.sk-circle-dot:nth-child(9) {
  transform: rotate(270deg);
}

.sk-circle-dot:nth-child(10) {
  transform: rotate(300deg);
}

.sk-circle-dot:nth-child(11) {
  transform: rotate(330deg);
}

.sk-circle-dot:nth-child(1):before {
  animation-delay: -1.1s;
}

.sk-circle-dot:nth-child(2):before {
  animation-delay: -1s;
}

.sk-circle-dot:nth-child(3):before {
  animation-delay: -0.9s;
}

.sk-circle-dot:nth-child(4):before {
  animation-delay: -0.8s;
}

.sk-circle-dot:nth-child(5):before {
  animation-delay: -0.7s;
}

.sk-circle-dot:nth-child(6):before {
  animation-delay: -0.6s;
}

.sk-circle-dot:nth-child(7):before {
  animation-delay: -0.5s;
}

.sk-circle-dot:nth-child(8):before {
  animation-delay: -0.4s;
}

.sk-circle-dot:nth-child(9):before {
  animation-delay: -0.3s;
}

.sk-circle-dot:nth-child(10):before {
  animation-delay: -0.2s;
}

.sk-circle-dot:nth-child(11):before {
  animation-delay: -0.1s;
}

@keyframes sk-circle {
  0%, 80%, 100% {
    transform: scale(0);
  }
  40% {
    transform: scale(1);
  }
}

/*  Circle Fade
      <div class="sk-circle-fade">
        <div class="sk-circle-fade-dot"></div>
        <div class="sk-circle-fade-dot"></div>
        <div class="sk-circle-fade-dot"></div>
        <div class="sk-circle-fade-dot"></div>
        <div class="sk-circle-fade-dot"></div>
        <div class="sk-circle-fade-dot"></div>
        <div class="sk-circle-fade-dot"></div>
        <div class="sk-circle-fade-dot"></div>
        <div class="sk-circle-fade-dot"></div>
        <div class="sk-circle-fade-dot"></div>
        <div class="sk-circle-fade-dot"></div>
        <div class="sk-circle-fade-dot"></div>
      </div>
 */
.sk-circle-fade {
  width: var(--sk-size);
  height: var(--sk-size);
  position: relative;
}

.sk-circle-fade-dot {
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
}

.sk-circle-fade-dot:before {
  content: '';
  display: block;
  width: 15%;
  height: 15%;
  background-color: var(--sk-color);
  border-radius: 100%;
  animation: sk-circle-fade 1.2s infinite ease-in-out both;
}

.sk-circle-fade-dot:nth-child(1) {
  transform: rotate(30deg);
}

.sk-circle-fade-dot:nth-child(2) {
  transform: rotate(60deg);
}

.sk-circle-fade-dot:nth-child(3) {
  transform: rotate(90deg);
}

.sk-circle-fade-dot:nth-child(4) {
  transform: rotate(120deg);
}

.sk-circle-fade-dot:nth-child(5) {
  transform: rotate(150deg);
}

.sk-circle-fade-dot:nth-child(6) {
  transform: rotate(180deg);
}

.sk-circle-fade-dot:nth-child(7) {
  transform: rotate(210deg);
}

.sk-circle-fade-dot:nth-child(8) {
  transform: rotate(240deg);
}

.sk-circle-fade-dot:nth-child(9) {
  transform: rotate(270deg);
}

.sk-circle-fade-dot:nth-child(10) {
  transform: rotate(300deg);
}

.sk-circle-fade-dot:nth-child(11) {
  transform: rotate(330deg);
}

.sk-circle-fade-dot:nth-child(1):before {
  animation-delay: -1.1s;
}

.sk-circle-fade-dot:nth-child(2):before {
  animation-delay: -1.0s;
}

.sk-circle-fade-dot:nth-child(3):before {
  animation-delay: -0.9s;
}

.sk-circle-fade-dot:nth-child(4):before {
  animation-delay: -0.8s;
}

.sk-circle-fade-dot:nth-child(5):before {
  animation-delay: -0.7s;
}

.sk-circle-fade-dot:nth-child(6):before {
  animation-delay: -0.6s;
}

.sk-circle-fade-dot:nth-child(7):before {
  animation-delay: -0.5s;
}

.sk-circle-fade-dot:nth-child(8):before {
  animation-delay: -0.4s;
}

.sk-circle-fade-dot:nth-child(9):before {
  animation-delay: -0.3s;
}

.sk-circle-fade-dot:nth-child(10):before {
  animation-delay: -0.2s;
}

.sk-circle-fade-dot:nth-child(11):before {
  animation-delay: -0.1s;
}

@keyframes sk-circle-fade {
  0%, 39%, 100% {
    opacity: 0;
    transform: scale(0.6);
  }
  40% {
    opacity: 1;
    transform: scale(1);
  }
}

/*  Grid
    <div class="sk-grid">
      <div class="sk-grid-cube"></div>
      <div class="sk-grid-cube"></div>
      <div class="sk-grid-cube"></div>
      <div class="sk-grid-cube"></div>
      <div class="sk-grid-cube"></div>
      <div class="sk-grid-cube"></div>
      <div class="sk-grid-cube"></div>
      <div class="sk-grid-cube"></div>
      <div class="sk-grid-cube"></div>
    </div>
 */
.sk-grid {
  width: var(--sk-size);
  height: var(--sk-size);
  /* Cube positions
     * 1 2 3
     * 4 5 6
     * 7 8 9
     */
}

.sk-grid-cube {
  width: 33.33%;
  height: 33.33%;
  background-color: var(--sk-color);
  float: left;
  animation: sk-grid 1.3s infinite ease-in-out;
}

.sk-grid-cube:nth-child(1) {
  animation-delay: 0.2s;
}

.sk-grid-cube:nth-child(2) {
  animation-delay: 0.3s;
}

.sk-grid-cube:nth-child(3) {
  animation-delay: 0.4s;
}

.sk-grid-cube:nth-child(4) {
  animation-delay: 0.1s;
}

.sk-grid-cube:nth-child(5) {
  animation-delay: 0.2s;
}

.sk-grid-cube:nth-child(6) {
  animation-delay: 0.3s;
}

.sk-grid-cube:nth-child(7) {
  animation-delay: 0.0s;
}

.sk-grid-cube:nth-child(8) {
  animation-delay: 0.1s;
}

.sk-grid-cube:nth-child(9) {
  animation-delay: 0.2s;
}

@keyframes sk-grid {
  0%, 70%, 100% {
    transform: scale3D(1, 1, 1);
  }
  35% {
    transform: scale3D(0, 0, 1);
  }
}

/*  Fold
      <div class="sk-fold">
        <div class="sk-fold-cube"></div>
        <div class="sk-fold-cube"></div>
        <div class="sk-fold-cube"></div>
        <div class="sk-fold-cube"></div>
      </div>
 */
.sk-fold {
  width: var(--sk-size);
  height: var(--sk-size);
  position: relative;
  transform: rotateZ(45deg);
}

.sk-fold-cube {
  float: left;
  width: 50%;
  height: 50%;
  position: relative;
  transform: scale(1.1);
}

.sk-fold-cube:before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: var(--sk-color);
  animation: sk-fold 2.4s infinite linear both;
  transform-origin: 100% 100%;
}

.sk-fold-cube:nth-child(2) {
  transform: scale(1.1) rotateZ(90deg);
}

.sk-fold-cube:nth-child(4) {
  transform: scale(1.1) rotateZ(180deg);
}

.sk-fold-cube:nth-child(3) {
  transform: scale(1.1) rotateZ(270deg);
}

.sk-fold-cube:nth-child(2):before {
  animation-delay: 0.3s;
}

.sk-fold-cube:nth-child(4):before {
  animation-delay: 0.6s;
}

.sk-fold-cube:nth-child(3):before {
  animation-delay: 0.9s;
}

@keyframes sk-fold {
  0%, 10% {
    transform: perspective(140px) rotateX(-180deg);
    opacity: 0;
  }
  25%, 75% {
    transform: perspective(140px) rotateX(0deg);
    opacity: 1;
  }
  90%, 100% {
    transform: perspective(140px) rotateY(180deg);
    opacity: 0;
  }
}

/*  Wander
      <div class="sk-wander">
        <div class="sk-wander-cube"></div>
        <div class="sk-wander-cube"></div>
        <div class="sk-wander-cube"></div>
        <div class="sk-wander-cube"></div>
      </div>
 */
.sk-wander {
  width: var(--sk-size);
  height: var(--sk-size);
  position: relative;
}

.sk-wander-cube {
  background-color: var(--sk-color);
  width: 20%;
  height: 20%;
  position: absolute;
  top: 0;
  left: 0;
  --sk-wander-distance:calc(var(--sk-size) * 0.75);
  animation: sk-wander 2.0s ease-in-out -2.0s infinite both;
}

.sk-wander-cube:nth-child(2) {
  animation-delay: -0.5s;
}

.sk-wander-cube:nth-child(3) {
  animation-delay: -1.0s;
}

@keyframes sk-wander {
  0% {
    transform: rotate(0deg);
  }
  25% {
    transform: translateX(var(--sk-wander-distance)) rotate(-90deg) scale(0.6);
  }
  50% {
    /* Make FF rotate in the right direction */
    transform: translateX(var(--sk-wander-distance)) translateY(var(--sk-wander-distance)) rotate(-179deg);
  }
  50.1% {
    transform: translateX(var(--sk-wander-distance)) translateY(var(--sk-wander-distance)) rotate(-180deg);
  }
  75% {
    transform: translateX(0) translateY(var(--sk-wander-distance)) rotate(-270deg) scale(0.6);
  }
  100% {
    transform: rotate(-360deg);
  }
}

.__checkbox {
  padding: 20px !important;
}

.__has-file {
  opacity: 0.8 !important;
  background-color: #c9c9c9;
}

.__has-bank-loan-chosen {
  display: none;
}

.custom-control-input:not(:checked) ~ .custom-control-label::before {
  background-color: #ffffff;
  /* Change the background color of the toggle when it is not checked */
  border-color: grey;
  /* Change the border color of the checkbox when it is not checked */
}

.custom-control-input:checked ~ .custom-control-label::before {
  background-color: grey;
  /* Change the color of the toggle when it is checked */
}

.upload-file {
  width: 50px;
  height: 50px;
}

#select2-legal_contract_customer-container {
  border: 1px solid #e1e1e1;
  color: black;
}

.jurifisc {
  display: block;
  position: relative;
  padding-left: 35px;
  margin-bottom: 12px;
  cursor: pointer;
  font-size: 22px;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

/* Hide the browser's default checkbox */
.jurifisc input {
  position: absolute;
  opacity: 0;
  cursor: pointer;
  height: 0;
  width: 0;
}

/* Create a custom checkbox */
.checkmark {
  position: absolute;
  top: 0;
  left: 0;
  height: 25px;
  width: 25px;
  background-color: #eee;
}

/* On mouse-over, add a grey background color */
.jurifisc:hover input ~ .checkmark {
  background-color: #ccc;
}

/* When the checkbox is checked, add a blue background */
.jurifisc input:checked ~ .checkmark {
  background-color: #2196F3;
}

/* Create the checkmark/indicator (hidden when not checked) */
.checkmark:after {
  content: "";
  position: absolute;
  display: none;
}

/* Show the checkmark when checked */
.jurifisc input:checked ~ .checkmark:after {
  display: block;
}

/* Style the checkmark/indicator */
.jurifisc .checkmark:after {
  left: 9px;
  top: 5px;
  width: 5px;
  height: 10px;
  border: solid white;
  border-width: 0 3px 3px 0;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}

/* The jurifiscradio */
.jurifiscradio {
  display: block;
  position: relative;
  padding-left: 35px;
  margin-bottom: 12px;
  cursor: pointer;
  font-size: 22px;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

/* Hide the browser's default radio button */
.jurifiscradio input {
  position: absolute;
  opacity: 0;
  cursor: pointer;
}

/* Create a custom radio button */
.checkmarkradio {
  position: absolute;
  top: 0;
  left: 0;
  height: 25px;
  width: 25px;
  background-color: #eee;
  border-radius: 50%;
}

/* On mouse-over, add a grey background color */
.jurifiscradio:hover input ~ .checkmarkradio {
  background-color: #ccc;
}

/* When the radio button is checked, add a blue background */
.jurifiscradio input:checked ~ .checkmarkradio {
  background-color: #2196F3;
}

/* Create the indicator (the dot/circle - hidden when not checked) */
.checkmarkradio:after {
  content: "";
  position: absolute;
  display: none;
}

/* Show the indicator (dot/circle) when checked */
.jurifiscradio input:checked ~ .checkmarkradio:after {
  display: block;
}

/* Style the indicator (dot/circle) */
.jurifiscradio .checkmarkradio:after {
  top: 9px;
  left: 9px;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: white;
}

.__card-product-fisca {
  width: auto;
  /*box-shadow: 0 4px 7px rgba(0, 0, 0, 0.5);*/
  cursor: pointer;
  transition: all 0.5s cubic-bezier(0.8, 0.5, 0.2, 1.4);
  position: relative;
  margin-left: 2%;
}

.__card-product-fisca img {
  position: relative;
  width: 100%;
  height: 250px;
  transition: all 0.5s cubic-bezier(0.8, 0.5, 0.2, 1.4);
}

.__card-product-fisca .__card-title {
  background-color: rgba(255, 255, 255, 0.6);
  width: 100%;
  position: absolute;
  bottom: 8px;
}

.__card-product-fisca .__card-title h3 {
  line-height: 48px;
  margin: auto;
  font-family: 'Nunito',sans-serif;
  text-align: center;
  vertical-align: middle !important;
}

.__descriptions-product-fisca {
  position: absolute;
  top: 0;
  left: 0;
  background-color: rgba(255, 255, 255, 0.9);
  width: 100%;
  height: 100%;
  transition: all .7s ease-in-out;
  padding: 20px;
  box-sizing: border-box;
  clip-path: circle(0% at 100% 100%);
}

.__descriptions-product-fisca ul li {
  color: black;
  text-decoration: none;
}

.__card-product-fisca:hover {
  transition: all 0.5s cubic-bezier(0.8, 0.5, 0.2, 1.4);
  box-shadow: 0 2px 3px rgba(0, 0, 0, 0.3);
  transform: scale(0.97);
}

.__card-product-fisca:hover .__descriptions-product-fisca {
  left: 0;
  transition: all .7s ease-in-out;
  clip-path: circle(75%);
}

.__card-product-fisca h1 {
  color: #ff3838;
  letter-spacing: 1px;
  margin: 0;
}

.__card-product-fisca p {
  line-height: 24px;
  height: 70%;
}

.__card-product-fisca ul {
  list-style: none;
  text-transform: none;
  text-align: left;
}

.__card-product-fisca ul li {
  color: black;
  text-decoration: none;
  font-size: 11px;
}

table.dataTable tbody > tr.selected, table.dataTable tbody > tr > .selected {
  background-color: #b0bed9;
}

table.dataTable.stripe tbody > tr.odd.selected, table.dataTable.stripe tbody > tr.odd > .selected, table.dataTable.display tbody > tr.odd.selected, table.dataTable.display tbody > tr.odd > .selected {
  background-color: #acbad4;
}

table.dataTable.hover tbody > tr.selected:hover, table.dataTable.hover tbody > tr > .selected:hover, table.dataTable.display tbody > tr.selected:hover, table.dataTable.display tbody > tr > .selected:hover {
  background-color: #aab7d1;
}

table.dataTable.order-column tbody > tr.selected > .sorting_1, table.dataTable.order-column tbody > tr.selected > .sorting_2, table.dataTable.order-column tbody > tr.selected > .sorting_3, table.dataTable.order-column tbody > tr > .selected, table.dataTable.display tbody > tr.selected > .sorting_1, table.dataTable.display tbody > tr.selected > .sorting_2, table.dataTable.display tbody > tr.selected > .sorting_3, table.dataTable.display tbody > tr > .selected {
  background-color: #acbad5;
}

table.dataTable.display tbody > tr.odd.selected > .sorting_1, table.dataTable.order-column.stripe tbody > tr.odd.selected > .sorting_1 {
  background-color: #a6b4cd;
}

table.dataTable.display tbody > tr.odd.selected > .sorting_2, table.dataTable.order-column.stripe tbody > tr.odd.selected > .sorting_2 {
  background-color: #a8b5cf;
}

table.dataTable.display tbody > tr.odd.selected > .sorting_3, table.dataTable.order-column.stripe tbody > tr.odd.selected > .sorting_3 {
  background-color: #a9b7d1;
}

table.dataTable.display tbody > tr.even.selected > .sorting_1, table.dataTable.order-column.stripe tbody > tr.even.selected > .sorting_1 {
  background-color: #acbad5;
}

table.dataTable.display tbody > tr.even.selected > .sorting_2, table.dataTable.order-column.stripe tbody > tr.even.selected > .sorting_2 {
  background-color: #aebcd6;
}

table.dataTable.display tbody > tr.even.selected > .sorting_3, table.dataTable.order-column.stripe tbody > tr.even.selected > .sorting_3 {
  background-color: #afbdd8;
}

table.dataTable.display tbody > tr.odd > .selected, table.dataTable.order-column.stripe tbody > tr.odd > .selected {
  background-color: #a6b4cd;
}

table.dataTable.display tbody > tr.even > .selected, table.dataTable.order-column.stripe tbody > tr.even > .selected {
  background-color: #acbad5;
}

table.dataTable.display tbody > tr.selected:hover > .sorting_1, table.dataTable.order-column.hover tbody > tr.selected:hover > .sorting_1 {
  background-color: #a2aec7;
}

table.dataTable.display tbody > tr.selected:hover > .sorting_2, table.dataTable.order-column.hover tbody > tr.selected:hover > .sorting_2 {
  background-color: #a3b0c9;
}

table.dataTable.display tbody > tr.selected:hover > .sorting_3, table.dataTable.order-column.hover tbody > tr.selected:hover > .sorting_3 {
  background-color: #a5b2cb;
}

table.dataTable.display tbody > tr:hover > .selected, table.dataTable.display tbody > tr > .selected:hover, table.dataTable.order-column.hover tbody > tr:hover > .selected, table.dataTable.order-column.hover tbody > tr > .selected:hover {
  background-color: #a2aec7;
}

table.dataTable tbody td.select-checkbox, table.dataTable tbody th.select-checkbox {
  position: relative;
}

table.dataTable tbody td.select-checkbox:before, table.dataTable tbody td.select-checkbox:after, table.dataTable tbody th.select-checkbox:before, table.dataTable tbody th.select-checkbox:after {
  display: block;
  position: absolute;
  top: 1.2em;
  left: 50%;
  width: 12px;
  height: 12px;
  box-sizing: border-box;
}

table.dataTable tbody td.select-checkbox:before, table.dataTable tbody th.select-checkbox:before {
  content: " ";
  margin-top: -6px;
  margin-left: -6px;
  border: 1px solid black;
  border-radius: 3px;
}

table.dataTable tr.selected td.select-checkbox:after, table.dataTable tr.selected th.select-checkbox:after {
  content: "✓";
  font-size: 20px;
  margin-top: -19px;
  margin-left: -6px;
  text-align: center;
  text-shadow: 1px 1px #b0bed9,-1px -1px #b0bed9,1px -1px #b0bed9,-1px 1px #b0bed9;
}

table.dataTable.compact tbody td.select-checkbox:before, table.dataTable.compact tbody th.select-checkbox:before {
  margin-top: -12px;
}

table.dataTable.compact tr.selected td.select-checkbox:after, table.dataTable.compact tr.selected th.select-checkbox:after {
  margin-top: -16px;
}

div.dataTables_wrapper span.select-info, div.dataTables_wrapper span.select-item {
  margin-left: .5em;
}

@media screen and (max-width: 640px) {
  div.dataTables_wrapper span.select-info, div.dataTables_wrapper span.select-item {
    margin-left: 0;
    display: block;
  }
}


/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vY29yZS5jc3MiLCJ3ZWJwYWNrOi8vL2FjY29yZGlvbi5jc3MiLCJ3ZWJwYWNrOi8vL2F1dG9jb21wbGV0ZS5jc3MiLCJ3ZWJwYWNrOi8vL2J1dHRvbi5jc3MiLCJ3ZWJwYWNrOi8vL2NoZWNrYm94cmFkaW8uY3NzIiwid2VicGFjazovLy9jb250cm9sZ3JvdXAuY3NzIiwid2VicGFjazovLy9kYXRlcGlja2VyLmNzcyIsIndlYnBhY2s6Ly8vZGlhbG9nLmNzcyIsIndlYnBhY2s6Ly8vZHJhZ2dhYmxlLmNzcyIsIndlYnBhY2s6Ly8vbWVudS5jc3MiLCJ3ZWJwYWNrOi8vL3Byb2dyZXNzYmFyLmNzcyIsIndlYnBhY2s6Ly8vcmVzaXphYmxlLmNzcyIsIndlYnBhY2s6Ly8vc2VsZWN0YWJsZS5jc3MiLCJ3ZWJwYWNrOi8vL3NlbGVjdG1lbnUuY3NzIiwid2VicGFjazovLy9zb3J0YWJsZS5jc3MiLCJ3ZWJwYWNrOi8vL3NsaWRlci5jc3MiLCJ3ZWJwYWNrOi8vL3NwaW5uZXIuY3NzIiwid2VicGFjazovLy90YWJzLmNzcyIsIndlYnBhY2s6Ly8vdG9vbHRpcC5jc3MiLCJ3ZWJwYWNrOi8vL2Jhc2UuY3NzIiwid2VicGFjazovLy90aGVtZS5jc3MiLCJ3ZWJwYWNrOi8vL2FsbC5jc3MiLCJ3ZWJwYWNrOi8vL2FuaW1hdGUuY3NzIiwid2VicGFjazovLy9PdmVybGF5U2Nyb2xsYmFycy5jc3MiLCJ3ZWJwYWNrOi8vL21haW4uY3NzIiwid2VicGFjazovLy9mbGF0cGlja3IuY3NzIiwid2VicGFjazovLy90cnVtYm93eWcuY3NzIiwid2VicGFjazovLy9zZWxlY3QyLm1pbi5jc3MiLCJ3ZWJwYWNrOi8vL2FwcC5zY3NzIiwid2VicGFjazovLy9saWJzL3p3aWNvbi9fendpY29uLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAtY29sb3JwaWNrZXIvc3JjL3Nhc3MvX2NvbG9ycGlja2VyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9qcXRyZWUvanF0cmVlLmNzcyIsIndlYnBhY2s6Ly8vaW5jL3RlbXBsYXRlcy9fZm9udHMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2Jvb3RzdHJhcC5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3Jvb3Quc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19yZWJvb3Quc2NzcyIsIndlYnBhY2s6Ly8vaW5jL3RlbXBsYXRlcy9fdmFyaWFibGVzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy92ZW5kb3IvX3Jmcy5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3ZhcmlhYmxlcy5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19ob3Zlci5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3R5cGUuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fbGlzdHMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19pbWFnZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9faW1hZ2Uuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYm9yZGVyLXJhZGl1cy5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2NvZGUuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19ncmlkLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2dyaWQuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYnJlYWtwb2ludHMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fZ3JpZC1mcmFtZXdvcmsuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL190YWJsZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fdGFibGUtcm93LnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fZnVuY3Rpb25zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fZm9ybXMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fdHJhbnNpdGlvbi5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19mb3Jtcy5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19ncmFkaWVudHMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19idXR0b25zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2J1dHRvbnMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL190cmFuc2l0aW9ucy5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2Ryb3Bkb3duLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2NhcmV0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX25hdi1kaXZpZGVyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fYnV0dG9uLWdyb3VwLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9faW5wdXQtZ3JvdXAuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19jdXN0b20tZm9ybXMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19uYXYuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19uYXZiYXIuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19jYXJkLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fYnJlYWRjcnVtYi5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3BhZ2luYXRpb24uc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fcGFnaW5hdGlvbi5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2JhZGdlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2JhZGdlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fanVtYm90cm9uLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fYWxlcnQuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYWxlcnQuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19wcm9ncmVzcy5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX21lZGlhLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fbGlzdC1ncm91cC5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19saXN0LWdyb3VwLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fY2xvc2Uuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL190b2FzdHMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19tb2RhbC5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3Rvb2x0aXAuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fcmVzZXQtdGV4dC5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3BvcG92ZXIuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19jYXJvdXNlbC5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19jbGVhcmZpeC5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3NwaW5uZXJzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX2FsaWduLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2JhY2tncm91bmQtdmFyaWFudC5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19iYWNrZ3JvdW5kLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX2JvcmRlcnMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fZGlzcGxheS5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19lbWJlZC5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19mbGV4LnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX2Zsb2F0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX2ludGVyYWN0aW9ucy5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19vdmVyZmxvdy5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19wb3NpdGlvbi5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19zY3JlZW5yZWFkZXJzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3NjcmVlbi1yZWFkZXIuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fc2hhZG93cy5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19zaXppbmcuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fc3BhY2luZy5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19zdHJldGNoZWQtbGluay5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL190ZXh0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3RleHQtdHJ1bmNhdGUuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fdGV4dC1lbXBoYXNpcy5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL190ZXh0LWhpZGUuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fdmlzaWJpbGl0eS5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3ByaW50LnNjc3MiLCJ3ZWJwYWNrOi8vL2luYy9ib290c3RyYXAtb3ZlcnJpZGVzL19kcm9wZG93bi5zY3NzIiwid2VicGFjazovLy9pbmMvdGVtcGxhdGVzL19taXhpbnMuc2NzcyIsIndlYnBhY2s6Ly8vaW5jL2Jvb3RzdHJhcC1vdmVycmlkZXMvX3Byb2dyZXNzLnNjc3MiLCJ3ZWJwYWNrOi8vL2luYy9ib290c3RyYXAtb3ZlcnJpZGVzL19jYXJkLnNjc3MiLCJ3ZWJwYWNrOi8vL2luYy9ib290c3RyYXAtb3ZlcnJpZGVzL19idXR0b25zLnNjc3MiLCJ3ZWJwYWNrOi8vL2luYy9ib290c3RyYXAtb3ZlcnJpZGVzL190YWJsZXMuc2NzcyIsIndlYnBhY2s6Ly8vaW5jL2Jvb3RzdHJhcC1vdmVycmlkZXMvX2Zvcm1zLnNjc3MiLCJ3ZWJwYWNrOi8vL2luYy9ib290c3RyYXAtb3ZlcnJpZGVzL19pbnB1dC1ncm91cHMuc2NzcyIsIndlYnBhY2s6Ly8vaW5jL2Jvb3RzdHJhcC1vdmVycmlkZXMvX3BhZ2luYXRpb24uc2NzcyIsIndlYnBhY2s6Ly8vaW5jL2Jvb3RzdHJhcC1vdmVycmlkZXMvX2FsZXJ0cy5zY3NzIiwid2VicGFjazovLy9pbmMvYm9vdHN0cmFwLW92ZXJyaWRlcy9fY2xvc2Uuc2NzcyIsIndlYnBhY2s6Ly8vaW5jL2Jvb3RzdHJhcC1vdmVycmlkZXMvX2JyZWFkY3J1bWJzLnNjc3MiLCJ3ZWJwYWNrOi8vL2luYy9ib290c3RyYXAtb3ZlcnJpZGVzL19hY2NvcmRpb24uc2NzcyIsIndlYnBhY2s6Ly8vaW5jL2Jvb3RzdHJhcC1vdmVycmlkZXMvX2Nhcm91c2VsLnNjc3MiLCJ3ZWJwYWNrOi8vL2luYy9ib290c3RyYXAtb3ZlcnJpZGVzL19tb2RhbC5zY3NzIiwid2VicGFjazovLy9pbmMvYm9vdHN0cmFwLW92ZXJyaWRlcy9fcG9wb3ZlcnMuc2NzcyIsIndlYnBhY2s6Ly8vaW5jL2Jvb3RzdHJhcC1vdmVycmlkZXMvX3RhYnMuc2NzcyIsIndlYnBhY2s6Ly8vaW5jL2Jvb3RzdHJhcC1vdmVycmlkZXMvX3RvYXN0LnNjc3MiLCJ3ZWJwYWNrOi8vL2luYy90ZW1wbGF0ZXMvX2dlbmVyaWNzLnNjc3MiLCJ3ZWJwYWNrOi8vL2luYy90ZW1wbGF0ZXMvX2Jhc2Uuc2NzcyIsIndlYnBhY2s6Ly8vaW5jL3RlbXBsYXRlcy9fbGlzdC5zY3NzIiwid2VicGFjazovLy9pbmMvdGVtcGxhdGVzL19sYXlvdXQuc2NzcyIsIndlYnBhY2s6Ly8vaW5jL3RlbXBsYXRlcy9fbWlzYy5zY3NzIiwid2VicGFjazovLy9pbmMvdGVtcGxhdGVzL19oZWFkZXIuc2NzcyIsIndlYnBhY2s6Ly8vaW5jL3RlbXBsYXRlcy9fZm9vdGVyLnNjc3MiLCJ3ZWJwYWNrOi8vL2luYy90ZW1wbGF0ZXMvX3NpZGViYXIuc2NzcyIsIndlYnBhY2s6Ly8vaW5jL3RlbXBsYXRlcy9fdG9nZ2xlLXN3aXRjaC5zY3NzIiwid2VicGFjazovLy9pbmMvdGVtcGxhdGVzL19saXN0dmlldy5zY3NzIiwid2VicGFjazovLy9pbmMvdGVtcGxhdGVzL190b29sYmFyLnNjc3MiLCJ3ZWJwYWNrOi8vL2luYy90ZW1wbGF0ZXMvX3BhZ2UtbG9hZGVyLnNjc3MiLCJ3ZWJwYWNrOi8vL2luYy90ZW1wbGF0ZXMvX3Byb2ZpbGUuc2NzcyIsIndlYnBhY2s6Ly8vaW5jL3RlbXBsYXRlcy9fcGhvdG9zLnNjc3MiLCJ3ZWJwYWNrOi8vL2luYy90ZW1wbGF0ZXMvX2NvbnRhY3RzLnNjc3MiLCJ3ZWJwYWNrOi8vL2luYy90ZW1wbGF0ZXMvX2dyb3Vwcy5zY3NzIiwid2VicGFjazovLy9pbmMvdGVtcGxhdGVzL19jdXN0b20tZm9ybXMuc2NzcyIsIndlYnBhY2s6Ly8vaW5jL3RlbXBsYXRlcy9fbWVzc2FnZXMuc2NzcyIsIndlYnBhY2s6Ly8vaW5jL3RlbXBsYXRlcy9fcHJpY2luZy10YWJsZS5zY3NzIiwid2VicGFjazovLy9pbmMvdGVtcGxhdGVzL19pbnZvaWNlLnNjc3MiLCJ3ZWJwYWNrOi8vL2luYy90ZW1wbGF0ZXMvX2xvZ2luLnNjc3MiLCJ3ZWJwYWNrOi8vL2luYy90ZW1wbGF0ZXMvX3RvZG8uc2NzcyIsIndlYnBhY2s6Ly8vaW5jL3RlbXBsYXRlcy9fbm90ZXMuc2NzcyIsIndlYnBhY2s6Ly8vaW5jL3RlbXBsYXRlcy9fcmVzdWx0cy5zY3NzIiwid2VicGFjazovLy9pbmMvdGVtcGxhdGVzL19pc3N1ZS10cmFja2VyLnNjc3MiLCJ3ZWJwYWNrOi8vL2luYy90ZW1wbGF0ZXMvX3RlYW0uc2NzcyIsIndlYnBhY2s6Ly8vaW5jL3RlbXBsYXRlcy9fYmxvZy5zY3NzIiwid2VicGFjazovLy9pbmMvdGVtcGxhdGVzL19xdWVzdGlvbnMtYW5zd2Vycy5zY3NzIiwid2VicGFjazovLy9pbmMvdGVtcGxhdGVzL190aGVtZS5zY3NzIiwid2VicGFjazovLy9pbmMvdGVtcGxhdGVzL19pZS13YXJuaW5nLnNjc3MiLCJ3ZWJwYWNrOi8vL2luYy90ZW1wbGF0ZXMvX2Vycm9yLnNjc3MiLCJ3ZWJwYWNrOi8vL2luYy90ZW1wbGF0ZXMvX2FuaW1hdGUuc2NzcyIsIndlYnBhY2s6Ly8vaW5jL3RlbXBsYXRlcy9fY2hhcnQuc2NzcyIsIndlYnBhY2s6Ly8vaW5jL3dpZGdldHMvX3Bhc3QtZGF5cy5zY3NzIiwid2VicGFjazovLy9pbmMvd2lkZ2V0cy9fdmlzaXRvcnMuc2NzcyIsIndlYnBhY2s6Ly8vaW5jL3dpZGdldHMvX3BpZS1jaGFydHMuc2NzcyIsIndlYnBhY2s6Ly8vaW5jL3dpZGdldHMvX3F1aWNrLXN0YXRzLnNjc3MiLCJ3ZWJwYWNrOi8vL2luYy93aWRnZXRzL19waG90b3Muc2NzcyIsIndlYnBhY2s6Ly8vaW5jL3dpZGdldHMvX3Byb2ZpbGUuc2NzcyIsIndlYnBhY2s6Ly8vaW5jL3dpZGdldHMvX2NvbnRhY3Quc2NzcyIsIndlYnBhY2s6Ly8vaW5jL3dpZGdldHMvX3NpZ251cHMuc2NzcyIsIndlYnBhY2s6Ly8vaW5jL3dpZGdldHMvX3RpbWUuc2NzcyIsIndlYnBhY2s6Ly8vaW5jL3dpZGdldHMvX2NhbGVuZGFyLnNjc3MiLCJ3ZWJwYWNrOi8vL2luYy9saWJzLW92ZXJyaWRlcy9fc3BhcmtsaW5lcy5zY3NzIiwid2VicGFjazovLy9pbmMvbGlicy1vdmVycmlkZXMvX3NlbGVjdDIuc2NzcyIsIndlYnBhY2s6Ly8vaW5jL2xpYnMtb3ZlcnJpZGVzL19kcm9wem9uZS5zY3NzIiwid2VicGFjazovLy9pbmMvbGlicy1vdmVycmlkZXMvX2Vhc3ktcGllLWNoYXJ0cy5zY3NzIiwid2VicGFjazovLy9pbmMvbGlicy1vdmVycmlkZXMvX2RhdGEtdGFibGVzLnNjc3MiLCJ3ZWJwYWNrOi8vL2luYy9saWJzLW92ZXJyaWRlcy9fZmxhdHBpY2tyLnNjc3MiLCJ3ZWJwYWNrOi8vL2luYy9saWJzLW92ZXJyaWRlcy9fYm9vdHN0cmFwLWNvbG9ycGlja2VyLnNjc3MiLCJ3ZWJwYWNrOi8vL2luYy9saWJzLW92ZXJyaWRlcy9fdHJ1bWJvd3lnLnNjc3MiLCJ3ZWJwYWNrOi8vL2luYy9saWJzLW92ZXJyaWRlcy9fZnVsbGNhbGVuZGFyLnNjc3MiLCJ3ZWJwYWNrOi8vL2luYy9saWJzLW92ZXJyaWRlcy9fbGlnaHRnYWxsZXJ5LnNjc3MiLCJ3ZWJwYWNrOi8vL2luYy9saWJzLW92ZXJyaWRlcy9fanF0cmVlLnNjc3MiLCJ3ZWJwYWNrOi8vL2luYy9saWJzLW92ZXJyaWRlcy9fanF1ZXJ5LXRleHQtY291bnRlci5zY3NzIiwid2VicGFjazovLy9pbmMvbGlicy1vdmVycmlkZXMvX292ZXJsYXktc2Nyb2xsYmFycy5zY3NzIiwid2VicGFjazovLy9pbmMvX2lucHV0LWZpbGVfaW50cmFuZXQuc2NzcyIsIndlYnBhY2s6Ly8vaW5jL19pbnRyYW5ldC5zY3NzIiwid2VicGFjazovLy9pbmMvX3Byb2R1Y3RzX2ludHJhbmV0LnNjc3MiLCJ3ZWJwYWNrOi8vL2luYy9fc3BpbmtpdC5zY3NzIiwid2VicGFjazovLy9pbmMvX3VuZGVyd3JpdGVyX2RvbW1hZ2VzLnNjc3MiLCJ3ZWJwYWNrOi8vL2luYy9fbGVnYWwuc2NzcyIsIndlYnBhY2s6Ly8vaW5jL19zZWxlY3QuZGF0YXRhYmxlcy5taW4uc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7O0VBU0U7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O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FDTkE7RUFDRSxnQkFBZ0I7QURTbEI7O0FFenZFQTs7Ozs7Ozs7RUZtd0VFO0FFL3VFRjtFQUNFLFlBQVk7RUFDWixhQUFhO0VBWGIsbThLQUFzQztFQWF0QyxpQkFBaUI7RUFDakIsV0FBVztBRml2RWI7O0FFdHZFQTtFQU9JLGNBQWM7RUFDZCxXQUFXO0VBQ1gsVUFBVTtFQUNWLHNCQUFzQjtFQWZ4QiwwQkFnQjJCO0VBZjNCLHVCQWUyQjtFQWQzQixrQkFjMkI7RUFDekIsa0JBQWtCO0VBQ2xCLE1BQU07RUFDTixPQUFPO0VBQ1AscUJBQXFCO0FGcXZFekI7O0FFcHdFQTtFQWlCTSxjQUFjO0VBQ2QsV0FBVztFQUNYLFVBQVU7RUFDVixzQkFBc0I7RUF6QjFCLDBCQTBCNkI7RUF6QjdCLHVCQXlCNkI7RUF4QjdCLGtCQXdCNkI7QUZ5dkUvQjs7QUVwdkVBOztFQUVFLFdBQVc7RUFDWCxhQUFhO0VBQ2IsV0FBVztFQUNYLGtCQUFrQjtFQUNsQixnQkFBZ0I7RUFDaEIsa0JBQWtCO0FGdXZFcEI7O0FFcHZFQTs7RUFFRSxjQUFjO0VBQ2QsV0FBVztFQUNYLGdCQUFnQjtFQUNoQiwwQkFBMEI7RUFDMUIsa0JBQWtCO0VBQ2xCLE1BQU07RUFDTixPQUFPO0VBQ1AsV0FBVztFQUNYLGdCQUFnQjtBRnV2RWxCOztBRXB2RUE7RUExREUsK3NCQUFzQztBRmt6RXhDOztBRXB2RUE7RUE5REUsMnJCQUFzQztFQWdFdEMsYUFBYTtBRnV2RWY7O0FFcHZFQTs7O0VBR0Usd0JBQXdCO0FGdXZFMUI7O0FFcHZFQTtFQUNFLFlBQVk7RUFDWixnQkFBZ0I7RUFDaEIsZUFBZTtFQXhFZiwwQkF5RXlCO0VBeEV6Qix1QkF3RXlCO0VBdkV6QixrQkF1RXlCO0VBQ3pCLGFBQWE7QUZ5dkVmOztBRXR2RUE7O0VBRUUsY0FBYztFQUNkLFdBQVc7RUFDWCxjQUFjO0FGeXZFaEI7O0FFdHZFQTtFQUNFLFdBQVc7QUZ5dkViOztBRXR2RUE7RUFDRSxXQUFXO0VBQ1gscUJBQXFCO0VBQ3JCLGtDQUFrQztFQUNsQyxtQ0FBbUM7RUFDbkMsNkJBQTZCO0VBQzdCLHVDQUF1QztFQUN2QyxrQkFBa0I7RUFDbEIsU0FBUztFQUNULFNBQVM7QUZ5dkVYOztBRXR3RUE7RUFpQkUsV0FBVztFQUNYLHFCQUFxQjtFQUNyQixrQ0FBa0M7RUFDbEMsbUNBQW1DO0VBQ25DLGdDQUFnQztFQUNoQyxrQkFBa0I7RUFDbEIsU0FBUztFQUNULFNBQVM7QUZ5dkVYOztBRXR2RUE7RUFDRSxrQkFBa0I7QUZ5dkVwQjs7QUV0dkVBO0VBQ0UsZ0JBQWdCO0FGeXZFbEI7O0FFdHZFQTtFQUNFLGNBQWM7QUZ5dkVoQjs7QUV0dkVBO0VBQ0UsWUFBWTtFQUNaLGVBQWU7RUFDZixXQUFXO0VBbElYLDJyQkFBc0M7RUFvSXRDLDJCQUEyQjtBRnl2RTdCOztBRXR2RUE7RUFDRSxZQUFZO0FGeXZFZDs7QUV0dkVBO0VBQ0UsYUFBYTtFQUNiLFlBQVk7RUFDWixlQUFlO0VBQ2YsV0FBVztBRnl2RWI7O0FFdHZFQTtFQUNFLGVBQWU7RUFDZixXQUFXO0VBQ1gsWUFBWTtFQUNaLFdBQVc7QUZ5dkViOztBRXR2RUE7RUFDRSxnQkFBZ0I7QUZ5dkVsQjs7QUV0dkVBOztFQUVFLHFCQUFxQjtFQUNyQixlQUFlO0VBQ2YsWUFBWTtFQUNaLHdCQUF3QjtFQUN4QixXQUFXO0FGeXZFYjs7QUV0dkVBO0VBQ0Usa0JBQWtCO0VBQ2xCLHFCQUFxQjtFQUNyQixXQUFXO0VBQ1gsYUFBYTtBRnl2RWY7O0FFdHZFQTtFQUNFLFlBQVk7RUFDWixnQkFBZ0I7RUFDaEIsWUFBWTtBRnl2RWQ7O0FFdHZFQTtFQUNFLGtCQUFrQjtBRnl2RXBCOztBRXR2RUE7RUFDRSxZQUFZO0FGeXZFZDs7QUV0dkVBOztFQUVFLFlBQVk7RUFDWixZQUFZO0VBQ1osV0FBVztFQUNYLGtCQUFrQjtFQUNsQixnQkFBZ0I7RUFDaEIsa0JBQWtCO0FGeXZFcEI7O0FFdHZFQTs7RUFFRSxjQUFjO0VBQ2QsWUFBWTtFQUNaLG1CQUFtQjtFQUNuQixrQkFBa0I7RUFDbEIsTUFBTTtFQUNOLE9BQU87RUFDUCxVQUFVO0VBQ1YsWUFBWTtFQUNaLGVBQWU7QUZ5dkVqQjs7QUV0dkVBO0VBbE5FLCtxQkFBc0M7QUY0OEV4Qzs7QUV0dkVBO0VBdE5FLHV4QkFBc0M7QUZnOUV4Qzs7QUV0dkVBO0VBQ0UsVUFBVTtFQUNWLFVBQVU7QUZ5dkVaOztBRXR2RUE7RUFDRSxVQUFVO0VBQ1YsVUFBVTtBRnl2RVo7O0FFdHZFQTtFQUNFLGVBQWU7RUFDZixjQUFjO0FGeXZFaEI7O0FFdHZFQTtFQUNFLGVBQWU7RUFDZixjQUFjO0FGeXZFaEI7O0FFdHZFQTs7Ozs7RUFNSSxjQUFjO0FGd3ZFbEI7O0FFcHZFQTs7Ozs7RUFNSSxhQUFhO0FGc3ZFakI7O0FFbHZFQTtFQUNFLHFCQUFxQjtBRnF2RXZCOztBR25nRkE7RUFDSSx3QkFBd0I7RUFDeEIsY0FBYztFQUNkLGdCQUFnQjtFQUNoQixVQUFVO0FIc2dGZDs7QUduZ0ZJO0VBQ0ksa0JBQWtCO0FIc2dGMUI7O0FHbmdGSTtFQUNJLHdCQUF3QjtFQUN4QixpQkFBaUI7RUFDakIsZUFBZTtFQUNmLGdCQUFnQjtFQUNoQixVQUFVO0VBQ1YsY0FBYztBSHNnRnRCOztBR25nRkk7RUFDSSxhQUFhO0FIc2dGckI7O0FHbmdGSTtFQUNJLFdBQVc7RUFDWCxxQkFBcUI7QUhzZ0Y3Qjs7QUduZ0ZJO0VBQ0ksbUJBQW1CO0VBQ25CLFdBQVc7RUFDWCxxQkFBcUI7RUFDckIsc0JBQXNCO0FIc2dGOUI7O0FHbmdGSTtFQUNRLFdBQVc7RUFDWCxxQkFBcUI7QUhzZ0ZqQzs7QUduZ0ZJO0VBQ1Esd0JBQXdCO0FIc2dGcEM7O0FHbmdGSTtFQUNRLG1CQUFtQjtBSHNnRi9COztBR25nRkk7RUFDUSxrQkFBa0I7QUhzZ0Y5Qjs7QUduZ0ZJO0VBQ0ksZUFBZTtFQUNmLGtCQUFrQjtFQUNsQixhQUFhO0FIc2dGckI7O0FHbmdGSTtFQUNJLGNBQWM7RUFDZCxzQkFBc0I7RUFDdEIsa0JBQWtCO0FIc2dGMUI7O0FHbmdGSTtFQUNRLGNBQWM7QUhzZ0YxQjs7QUduZ0ZJO0VBQ0ksa0JBQWtCO0FIc2dGMUI7O0FHbmdGSTtFQUNRLGtCQUFrQjtBSHNnRjlCOztBR25nRkk7RUFDSSxrQkFBa0I7RUFDbEIsV0FBVztFQUNYLGtCQUFrQjtBSHNnRjFCOztBR25nRkk7RUFDUSxjQUFjO0FIc2dGMUI7O0FHbmdGSTtFQUNRLHlCQUF5QjtFQUN6QixvQkFBb0I7RUFDcEIsV0FBVztFQUNYLFVBQVU7RUFDVixrQkFBa0I7RUFDbEIsU0FBUztFQUNULFVBQVU7RUFDVixzQkFBc0I7QUhzZ0ZsQzs7QUduZ0ZJO0VBQ1EseUJBQXlCO0VBQ3pCLFdBQVc7RUFDWCxVQUFVO0VBQ1Ysa0JBQWtCO0VBQ2xCLFNBQVM7RUFDVCxTQUFTO0VBQ1QsV0FBVztBSHNnRnZCOztBR25nRkk7RUFDUSxpQkFBaUI7QUhzZ0Y3Qjs7QUduZ0ZJO0VBQ0ksa0JBQWtCO0VBQ2xCLGNBQWM7RUFDZCxVQUFVO0VBQ1YsTUFBTTtFQUNOLHlCQUF5QjtFQUN6QixrQkFBa0I7RUFDbEIsU0FBUztFQUNULHVCQUF1QjtBSHNnRi9COztBR25nRkk7O0VBRUkseUJBQXlCO0VBQ3pCLDZDQUE2QztFQUM3Qyw2Q0FBNkM7QUhzZ0ZyRDs7QUduZ0ZJO0VBQ0ksMkJBQTJCO0FIc2dGbkM7O0FHbmdGQTtFQUNJLGNBQWM7QUhzZ0ZsQjs7QUduZ0ZBO0VBQ1EsY0FBYztFQUNkLGtCQUFrQjtBSHNnRjFCOztBR25nRkE7RUFDUSxrQkFBa0I7RUFDbEIsZUFBZTtBSHNnRnZCOztBR25nRkE7RUFDUSxjQUFjO0VBQ2QsbUJBQW1CO0FIc2dGM0I7O0FHbmdGQTtFQUNZLGVBQWU7QUhzZ0YzQjs7QUduZ0ZBO0VBQ1EsZUFBZTtFQUNmLGlCQUFpQjtBSHNnRnpCOztBR25nRkE7RUFDWSxXQUFXO0FIc2dGdkI7O0FHbmdGQTtFQUNZLFVBQVU7QUhzZ0Z0Qjs7QUduZ0ZBO0VBQ1ksY0FBYztFQUNkLGtCQUFrQjtBSHNnRjlCOztBR25nRkE7RUFDUSxXQUFXO0FIc2dGbkI7O0FHbmdGQTtFQUNJLFdBQVc7RUFDWCxnQkFBZ0I7RUFDaEIsWUFBWTtFQUNaLGVBQWU7RUFDZixnQkFBZ0I7QUhzZ0ZwQjs7QUk3ckZBO0VBQ0UscUJBQW9CO0VBQ3BCLG9IQUNxRTtFQUNyRSxnQkFBZ0I7RUFDaEIsa0JBQWtCO0VBQ2xCLG9CQUFvQjtBSityRnRCOztBSTNyRkE7RUFDRSxxQkFBb0I7RUFDcEIsb0hBQ3NFO0VBQ3RFLGdCQUFnQjtFQUNoQixrQkFBa0I7RUFDbEIsb0JBQW9CO0VBQ3BCLDBCQUEwQjtBSjZyRjVCOztBSXhyRkE7RUFDRSxxQkFBb0I7RUFDcEIsb0hBQ2tFO0VBQ2xFLGdCQUFnQjtFQUNoQixrQkFBa0I7RUFDbEIsb0JBQW9CO0VBQ3BCLDBCQUEwQjtBSjByRjVCOztBS3h0RkE7Ozs7O0VMK3RGRTtBTS90RkY7RUFHSSxlQUFjO0VBQWQsaUJBQWM7RUFBZCxpQkFBYztFQUFkLGVBQWM7RUFBZCxjQUFjO0VBQWQsaUJBQWM7RUFBZCxpQkFBYztFQUFkLGdCQUFjO0VBQWQsZUFBYztFQUFkLGVBQWM7RUFBZCxnQkFBYztFQUFkLGVBQWM7RUFBZCxvQkFBYztFQUlkLGtCQUFjO0VBQWQsb0JBQWM7RUFBZCxrQkFBYztFQUFkLGVBQWM7RUFBZCxrQkFBYztFQUFkLGlCQUFjO0VBQWQsZ0JBQWM7RUFBZCxlQUFjO0VBSWQsa0JBQWlDO0VBQWpDLHNCQUFpQztFQUFqQyxzQkFBaUM7RUFBakMsc0JBQWlDO0VBQWpDLHVCQUFpQztFQUtuQyw4Q0FBeUI7RUFDekIsNkdBQXdCO0FONHVGMUI7O0FPM3VGQTs7O0VBR0Usc0JBQXNCO0FQOHVGeEI7O0FPM3VGQTtFQUNFLHVCQUF1QjtFQUN2QixpQkFBaUI7RUFDakIsOEJBQThCO0VBQzlCLDZDQ3JCYTtBUm13RmY7O0FPeHVGQTtFQUNFLGNBQWM7QVAydUZoQjs7QU9qdUZBO0VBQ0UsU0FBUztFQUNULGlDQ3lCMkM7RUN1RHZDLGVBdENZO0VGeENoQixnQkc4TytCO0VIN08vQixnQkdrUCtCO0VIalAvQixjQzVDYTtFRDZDYixnQkFBZ0I7RUFDaEIseUJDL0NhO0FSbXhGZjs7QUFFQTtFT3p0RkUscUJBQXFCO0FQMnRGdkI7O0FPbHRGQTtFQUNFLHVCQUF1QjtFQUN2QixTQUFTO0VBQ1QsaUJBQWlCO0FQcXRGbkI7O0FPeHNGQTtFQUNFLGFBQWE7RUFDYixxQkdnTnVDO0FWMi9FekM7O0FPcHNGQTtFQUNFLGFBQWE7RUFDYixtQkdvRjhCO0FWbW5GaEM7O0FPNXJGQTs7RUFFRSwwQkFBMEI7RUFDMUIsaUNBQWlDO0VBQ2pDLFlBQVk7RUFDWixnQkFBZ0I7RUFDaEIsOEJBQThCO0FQK3JGaEM7O0FPNXJGQTtFQUNFLG1CQUFtQjtFQUNuQixrQkFBa0I7RUFDbEIsb0JBQW9CO0FQK3JGdEI7O0FPNXJGQTs7O0VBR0UsYUFBYTtFQUNiLG1CQUFtQjtBUCtyRnJCOztBTzVyRkE7Ozs7RUFJRSxnQkFBZ0I7QVArckZsQjs7QU81ckZBO0VBQ0UsZ0JDbEVvQjtBUml3RnRCOztBTzVyRkE7RUFDRSxvQkFBb0I7RUFDcEIsY0FBYztBUCtyRmhCOztBTzVyRkE7RUFDRSxnQkFBZ0I7QVArckZsQjs7QU81ckZBOztFQUVFLG1CR29Ja0M7QVYyakZwQzs7QU81ckZBO0VFeEZJLGNBQVc7QVR3eEZmOztBT3ZyRkE7O0VBRUUsa0JBQWtCO0VFbkdoQixjQUFXO0VGcUdiLGNBQWM7RUFDZCx3QkFBd0I7QVAwckYxQjs7QU92ckZBO0VBQU0sY0FBYztBUDJyRnBCOztBTzFyRkE7RUFBTSxVQUFVO0FQOHJGaEI7O0FPdnJGQTtFQUNFLGNDbExZO0VEbUxaLHFCR1g0QztFSFk1Qyw2QkFBNkI7QVAwckYvQjs7QVcxMkZFO0VKbUxFLGNHZDhEO0VIZTlELHFCQzdHd0I7QVJ3eUY1Qjs7QU9sckZBO0VBQ0UsY0FBYztFQUNkLHFCQUFxQjtBUHFyRnZCOztBV3AzRkU7RUprTUUsY0FBYztFQUNkLHFCQUFxQjtBUHNyRnpCOztBTzdxRkE7Ozs7RUFJRSxpR0d5RGdIO0VEN005RyxjQUFXO0FUcTBGZjs7QU83cUZBO0VBRUUsYUFBYTtFQUViLG1CQUFtQjtFQUVuQixjQUFjO0VBR2QsNkJBQTZCO0FQMnFGL0I7O0FPbnFGQTtFQUVFLGdCQUFnQjtBUHFxRmxCOztBTzdwRkE7RUFDRSxzQkFBc0I7RUFDdEIsa0JBQWtCO0FQZ3FGcEI7O0FPN3BGQTtFQUdFLGdCQUFnQjtFQUNoQixzQkFBc0I7QVA4cEZ4Qjs7QU90cEZBO0VBQ0UseUJBQXlCO0FQeXBGM0I7O0FPdHBGQTtFQUNFLHdCQ3JEOEI7RURzRDlCLDJCQ3REOEI7RUR1RDlCLCtCQzdRYTtFRDhRYixnQkFBZ0I7RUFDaEIsb0JBQW9CO0FQeXBGdEI7O0FPbHBGQTtFQUVFLG1CQUFtQjtFQUNuQixnQ0FBZ0M7QVBvcEZsQzs7QU81b0ZBO0VBRUUscUJBQXFCO0VBQ3JCLHFCRzJKMkM7QVZtL0U3Qzs7QU94b0ZBO0VBRUUsZ0JBQWdCO0FQMG9GbEI7O0FPbG9GQTtFQUNFLFVBQVU7QVBxb0ZaOztBT2xvRkE7Ozs7O0VBS0UsU0FBUztFQUNULG9CQUFvQjtFRTVQbEIsa0JBQVc7RUY4UGIsb0JBQW9CO0FQcW9GdEI7O0FPbG9GQTs7RUFFRSxpQkFBaUI7QVBxb0ZuQjs7QU9sb0ZBOztFQUVFLG9CQUFvQjtBUHFvRnRCOztBQUVBO0VPaG9GRSxlQUFlO0FQa29GakI7O0FPNW5GQTtFQUNFLGlCQUFpQjtBUCtuRm5COztBT3huRkE7Ozs7RUFJRSwwQkFBMEI7QVAybkY1Qjs7QU90bkZFOzs7O0VBS0ksZUFBZTtBUHduRnJCOztBT2xuRkE7Ozs7RUFJRSxVQUFVO0VBQ1Ysa0JBQWtCO0FQcW5GcEI7O0FPbG5GQTs7RUFFRSxzQkFBc0I7RUFDdEIsVUFBVTtBUHFuRlo7O0FPam5GQTtFQUNFLGNBQWM7RUFFZCxnQkFBZ0I7QVBtbkZsQjs7QU9obkZBO0VBTUUsWUFBWTtFQUVaLFVBQVU7RUFDVixTQUFTO0VBQ1QsU0FBUztBUDZtRlg7O0FPeG1GQTtFQUNFLGNBQWM7RUFDZCxXQUFXO0VBQ1gsZUFBZTtFQUNmLFVBQVU7RUFDVixvQkFBb0I7RUVuU2hCLGlCQXRDWTtFRjJVaEIsb0JBQW9CO0VBQ3BCLGNBQWM7RUFDZCxtQkFBbUI7QVAybUZyQjs7QU94bUZBO0VBQ0Usd0JBQXdCO0FQMm1GMUI7O0FBRUE7O0VPdm1GRSxZQUFZO0FQMG1GZDs7QUFFQTtFT3BtRkUsb0JBQW9CO0VBQ3BCLHdCQUF3QjtBUHNtRjFCOztBQUVBO0VPaG1GRSx3QkFBd0I7QVBrbUYxQjs7QU8xbEZBO0VBQ0UsYUFBYTtFQUNiLDBCQUEwQjtBUDZsRjVCOztBT3RsRkE7RUFDRSxxQkFBcUI7QVB5bEZ2Qjs7QU90bEZBO0VBQ0Usa0JBQWtCO0VBQ2xCLGVBQWU7QVB5bEZqQjs7QU90bEZBO0VBQ0UsYUFBYTtBUHlsRmY7O0FBRUE7RU9ybEZFLHdCQUF3QjtBUHVsRjFCOztBWW5qR0E7O0VBRUUscUJGcVN1QztFRW5TdkMsZ0JKbUVvQjtFSWxFcEIsZ0JGcVMrQjtFRXBTL0IsY0pMYTtBUjBqR2Y7O0FZbGpHQTtFSGdITSxpQkF0Q1k7QVQ0K0ZsQjs7QVlyakdBO0VIK0dNLGVBdENZO0FUZy9GbEI7O0FZeGpHQTtFSDhHTSxrQkF0Q1k7QVRvL0ZsQjs7QVkzakdBO0VINkdNLGlCQXRDWTtBVHcvRmxCOztBWTlqR0E7RUg0R00sa0JBdENZO0FUNC9GbEI7O0FZamtHQTtFSDJHTSxlQXRDWTtBVGdnR2xCOztBWW5rR0E7RUh5R00sa0JBdENZO0VHakVoQixnQkZ1UytCO0FWK3hGakM7O0FZbGtHQTtFSG1HTSxlQXRDWTtFRzNEaEIsZ0JGMFIrQjtFRXpSL0IsZ0JGaVIrQjtBVm96RmpDOztBWW5rR0E7RUg4Rk0saUJBdENZO0VHdERoQixnQkZzUitCO0VFclIvQixnQkY0UStCO0FWMHpGakM7O0FZcGtHQTtFSHlGTSxpQkF0Q1k7RUdqRGhCLGdCRmtSK0I7RUVqUi9CLGdCRnVRK0I7QVZnMEZqQzs7QVlya0dBO0VIb0ZNLGlCQXRDWTtFRzVDaEIsZ0JGOFErQjtFRTdRL0IsZ0JGa1ErQjtBVnMwRmpDOztBTzNpR0E7RUtwQkUsZ0JGZ0ZXO0VFL0VYLG1CRitFVztFRTlFWCxTQUFTO0VBQ1QsZ0RKcERhO0FSdW5HZjs7QVkzakdBOztFSE1JLGNBQVc7RUdIYixnQkYwTitCO0FWbzJGakM7O0FZM2pHQTs7RUFFRSxjRmtRZ0M7RUVqUWhDLHlCRjBRbUM7QVZvekZyQzs7QVl0akdBO0VDL0VFLGVBQWU7RUFDZixnQkFBZ0I7QWJ5b0dsQjs7QVl0akdBO0VDcEZFLGVBQWU7RUFDZixnQkFBZ0I7QWI4b0dsQjs7QVl4akdBO0VBQ0UscUJBQXFCO0FaMmpHdkI7O0FZNWpHQTtFQUlJLG9CRm9QK0I7QVZ3MEZuQzs7QVlsakdBO0VIakNJLGNBQVc7RUdtQ2IseUJBQXlCO0FacWpHM0I7O0FZampHQTtFQUNFLG1CRnVCVztFRFJQLGtCQXRDWTtBVDRrR2xCOztBWWpqR0E7RUFDRSxjQUFjO0VIN0NaLGNBQVc7RUcrQ2IsK0JKakhhO0FScXFHZjs7QVl2akdBO0VBTUkscUJBQXFCO0FacWpHekI7O0FjeHFHQTtFQ0lFLGVBQWU7RUFHZixZQUFZO0Fmc3FHZDs7QWN2cUdBO0VBQ0UsZ0JKbWdDd0M7RUlsZ0N4Qyx5Qk5UYTtFTVViLHlCSk5nQjtFTVFkLGtCUnFKZTtFTzVKakIsZUFBZTtFQUdmLFlBQVk7QWYrcUdkOztBY2pxR0E7RUFFRSxxQkFBcUI7QWRtcUd2Qjs7QWNocUdBO0VBQ0UscUJBQTBCO0VBQzFCLGNBQWM7QWRtcUdoQjs7QWNocUdBO0VMa0NJLGNBQVc7RUtoQ2IsY0ozQmdCO0FWOHJHbEI7O0FpQjFzR0E7RVJ1RUksZ0JBQVc7RVFyRWIsY1RXYztFU1ZkLHFCQUFxQjtBakI2c0d2Qjs7QWlCMXNHRTtFQUNFLGNBQWM7QWpCNnNHbEI7O0FpQnhzR0E7RUFDRSxzQlB1bEN1QztFRDdoQ3JDLGdCQUFXO0VReERiLGNUVmE7RVNXYix5QlBEZ0I7RU1FZCxrQlJ1SmtCO0FSb2pHdEI7O0FpQmh0R0E7RUFTSSxVQUFVO0VSa0RWLGVBQVc7RVFoRFgsZ0JUcURrQjtBUnNwR3RCOztBT25nR0E7RVVqTUUsY0FBYztFUnlDWixnQkFBVztFUXZDYixjVGdCcUI7QVJ3ckd2Qjs7QWlCM3NHQTtFUjBDSSxrQkFBVztFUWxDWCxjQUFjO0VBQ2Qsa0JBQWtCO0FqQndzR3RCOztBaUJuc0dBO0VBQ0UsaUJQOGpDdUM7RU83akN2QyxrQkFBa0I7QWpCc3NHcEI7O0FrQjl1R0U7Ozs7OztFQ0RBLFdBQVc7RUFDWCxtQkFBMEI7RUFDMUIsa0JBQXlCO0VBQ3pCLGtCQUFrQjtFQUNsQixpQkFBaUI7QW5Cd3ZHbkI7O0FvQnJzR0k7RUZ6Q0U7SUFDRSxnQlIrTEc7RVZtakdUO0FBQ0Y7O0FvQjNzR0k7RUZ6Q0U7SUFDRSxnQlJnTUc7RVZ3akdUO0FBQ0Y7O0FvQmp0R0k7RUZ6Q0U7SUFDRSxnQlJpTUc7RVY2akdUO0FBQ0Y7O0FvQnZ0R0k7RUZ6Q0U7SUFDRSxpQlJrTUk7RVZra0dWO0FBQ0Y7O0FrQnp1R0U7RUNuQ0EsYUFBYTtFQUNiLGVBQWU7RUFDZixtQkFBMEI7RUFDMUIsa0JBQXlCO0FuQmd4RzNCOztBa0IxdUdFO0VBQ0UsZUFBZTtFQUNmLGNBQWM7QWxCNnVHbEI7O0FrQi91R0U7O0VBTUksZ0JBQWdCO0VBQ2hCLGVBQWU7QWxCOHVHckI7O0FxQnB5R0U7Ozs7OztFQUNFLGtCQUFrQjtFQUNsQixXQUFXO0VBQ1gsbUJBQTBCO0VBQzFCLGtCQUF5QjtBckI0eUc3Qjs7QXFCdHhHTTtFQUNFLGFBQWE7RUFDYixZQUFZO0VBQ1osZUFBZTtBckJ5eEd2Qjs7QXFCcHhHVTtFRndCTixjQUF1QjtFQUN2QixlQUF3QjtBbkJnd0c1Qjs7QXFCenhHVTtFRndCTixhQUF1QjtFQUN2QixjQUF3QjtBbkJxd0c1Qjs7QXFCOXhHVTtFRndCTixtQkFBdUI7RUFDdkIsb0JBQXdCO0FuQjB3RzVCOztBcUJueUdVO0VGd0JOLGFBQXVCO0VBQ3ZCLGNBQXdCO0FuQit3RzVCOztBcUJ4eUdVO0VGd0JOLGFBQXVCO0VBQ3ZCLGNBQXdCO0FuQm94RzVCOztBcUI3eUdVO0VGd0JOLG1CQUF1QjtFQUN2QixvQkFBd0I7QW5CeXhHNUI7O0FxQjV5R007RUZDSixjQUFjO0VBQ2QsV0FBVztFQUNYLGVBQWU7QW5CK3lHakI7O0FxQjV5R1U7RUZiUixrQkFBc0M7RUFJdEMsbUJBQXVDO0FuQjB6R3pDOztBcUJqekdVO0VGYlIsbUJBQXNDO0VBSXRDLG9CQUF1QztBbkIrekd6Qzs7QXFCdHpHVTtFRmJSLGFBQXNDO0VBSXRDLGNBQXVDO0FuQm8wR3pDOztBcUIzekdVO0VGYlIsbUJBQXNDO0VBSXRDLG9CQUF1QztBbkJ5MEd6Qzs7QXFCaDBHVTtFRmJSLG1CQUFzQztFQUl0QyxvQkFBdUM7QW5CODBHekM7O0FxQnIwR1U7RUZiUixhQUFzQztFQUl0QyxjQUF1QztBbkJtMUd6Qzs7QXFCMTBHVTtFRmJSLG1CQUFzQztFQUl0QyxvQkFBdUM7QW5CdzFHekM7O0FxQi8wR1U7RUZiUixtQkFBc0M7RUFJdEMsb0JBQXVDO0FuQjYxR3pDOztBcUJwMUdVO0VGYlIsYUFBc0M7RUFJdEMsY0FBdUM7QW5CazJHekM7O0FxQnoxR1U7RUZiUixtQkFBc0M7RUFJdEMsb0JBQXVDO0FuQnUyR3pDOztBcUI5MUdVO0VGYlIsbUJBQXNDO0VBSXRDLG9CQUF1QztBbkI0Mkd6Qzs7QXFCbjJHVTtFRmJSLGNBQXNDO0VBSXRDLGVBQXVDO0FuQmkzR3pDOztBcUJsMkdNO0VBQXdCLFNBQVM7QXJCczJHdkM7O0FxQnAyR007RUFBdUIsU1htS0c7QVZxc0doQzs7QXFCcjJHUTtFQUF3QixRQURaO0FyQjAyR3BCOztBcUJ6MkdRO0VBQXdCLFFBRFo7QXJCODJHcEI7O0FxQjcyR1E7RUFBd0IsUUFEWjtBckJrM0dwQjs7QXFCajNHUTtFQUF3QixRQURaO0FyQnMzR3BCOztBcUJyM0dRO0VBQXdCLFFBRFo7QXJCMDNHcEI7O0FxQnozR1E7RUFBd0IsUUFEWjtBckI4M0dwQjs7QXFCNzNHUTtFQUF3QixRQURaO0FyQms0R3BCOztBcUJqNEdRO0VBQXdCLFFBRFo7QXJCczRHcEI7O0FxQnI0R1E7RUFBd0IsUUFEWjtBckIwNEdwQjs7QXFCejRHUTtFQUF3QixRQURaO0FyQjg0R3BCOztBcUI3NEdRO0VBQXdCLFNBRFo7QXJCazVHcEI7O0FxQmo1R1E7RUFBd0IsU0FEWjtBckJzNUdwQjs7QXFCcjVHUTtFQUF3QixTQURaO0FyQjA1R3BCOztBcUJsNUdZO0VGaEJWLHFCQUE4QztBbkJzNkdoRDs7QXFCdDVHWTtFRmhCVixzQkFBOEM7QW5CMDZHaEQ7O0FxQjE1R1k7RUZoQlYsZ0JBQThDO0FuQjg2R2hEOztBcUI5NUdZO0VGaEJWLHNCQUE4QztBbkJrN0doRDs7QXFCbDZHWTtFRmhCVixzQkFBOEM7QW5CczdHaEQ7O0FxQnQ2R1k7RUZoQlYsZ0JBQThDO0FuQjA3R2hEOztBcUIxNkdZO0VGaEJWLHNCQUE4QztBbkI4N0doRDs7QXFCOTZHWTtFRmhCVixzQkFBOEM7QW5CazhHaEQ7O0FxQmw3R1k7RUZoQlYsZ0JBQThDO0FuQnM4R2hEOztBcUJ0N0dZO0VGaEJWLHNCQUE4QztBbkIwOEdoRDs7QXFCMTdHWTtFRmhCVixzQkFBOEM7QW5CODhHaEQ7O0FvQno4R0k7RUMzQkU7SUFDRSxhQUFhO0lBQ2IsWUFBWTtJQUNaLGVBQWU7RXJCdytHckI7RXFCbitHUTtJRndCTixjQUF1QjtJQUN2QixlQUF3QjtFbkI4OEcxQjtFcUJ2K0dRO0lGd0JOLGFBQXVCO0lBQ3ZCLGNBQXdCO0VuQms5RzFCO0VxQjMrR1E7SUZ3Qk4sbUJBQXVCO0lBQ3ZCLG9CQUF3QjtFbkJzOUcxQjtFcUIvK0dRO0lGd0JOLGFBQXVCO0lBQ3ZCLGNBQXdCO0VuQjA5RzFCO0VxQm4vR1E7SUZ3Qk4sYUFBdUI7SUFDdkIsY0FBd0I7RW5CODlHMUI7RXFCdi9HUTtJRndCTixtQkFBdUI7SUFDdkIsb0JBQXdCO0VuQmsrRzFCO0VxQnIvR0k7SUZDSixjQUFjO0lBQ2QsV0FBVztJQUNYLGVBQWU7RW5CdS9HZjtFcUJwL0dRO0lGYlIsa0JBQXNDO0lBSXRDLG1CQUF1QztFbkJpZ0h2QztFcUJ4L0dRO0lGYlIsbUJBQXNDO0lBSXRDLG9CQUF1QztFbkJxZ0h2QztFcUI1L0dRO0lGYlIsYUFBc0M7SUFJdEMsY0FBdUM7RW5CeWdIdkM7RXFCaGdIUTtJRmJSLG1CQUFzQztJQUl0QyxvQkFBdUM7RW5CNmdIdkM7RXFCcGdIUTtJRmJSLG1CQUFzQztJQUl0QyxvQkFBdUM7RW5CaWhIdkM7RXFCeGdIUTtJRmJSLGFBQXNDO0lBSXRDLGNBQXVDO0VuQnFoSHZDO0VxQjVnSFE7SUZiUixtQkFBc0M7SUFJdEMsb0JBQXVDO0VuQnloSHZDO0VxQmhoSFE7SUZiUixtQkFBc0M7SUFJdEMsb0JBQXVDO0VuQjZoSHZDO0VxQnBoSFE7SUZiUixhQUFzQztJQUl0QyxjQUF1QztFbkJpaUh2QztFcUJ4aEhRO0lGYlIsbUJBQXNDO0lBSXRDLG9CQUF1QztFbkJxaUh2QztFcUI1aEhRO0lGYlIsbUJBQXNDO0lBSXRDLG9CQUF1QztFbkJ5aUh2QztFcUJoaUhRO0lGYlIsY0FBc0M7SUFJdEMsZUFBdUM7RW5CNmlIdkM7RXFCOWhISTtJQUF3QixTQUFTO0VyQmlpSHJDO0VxQi9oSEk7SUFBdUIsU1htS0c7RVYrM0c5QjtFcUIvaEhNO0lBQXdCLFFBRFo7RXJCbWlIbEI7RXFCbGlITTtJQUF3QixRQURaO0VyQnNpSGxCO0VxQnJpSE07SUFBd0IsUUFEWjtFckJ5aUhsQjtFcUJ4aUhNO0lBQXdCLFFBRFo7RXJCNGlIbEI7RXFCM2lITTtJQUF3QixRQURaO0VyQitpSGxCO0VxQjlpSE07SUFBd0IsUUFEWjtFckJrakhsQjtFcUJqakhNO0lBQXdCLFFBRFo7RXJCcWpIbEI7RXFCcGpITTtJQUF3QixRQURaO0VyQndqSGxCO0VxQnZqSE07SUFBd0IsUUFEWjtFckIyakhsQjtFcUIxakhNO0lBQXdCLFFBRFo7RXJCOGpIbEI7RXFCN2pITTtJQUF3QixTQURaO0VyQmlrSGxCO0VxQmhrSE07SUFBd0IsU0FEWjtFckJva0hsQjtFcUJua0hNO0lBQXdCLFNBRFo7RXJCdWtIbEI7RXFCL2pIVTtJRmhCVixjQUE0QjtFbkJrbEg1QjtFcUJsa0hVO0lGaEJWLHFCQUE4QztFbkJxbEg5QztFcUJya0hVO0lGaEJWLHNCQUE4QztFbkJ3bEg5QztFcUJ4a0hVO0lGaEJWLGdCQUE4QztFbkIybEg5QztFcUIza0hVO0lGaEJWLHNCQUE4QztFbkI4bEg5QztFcUI5a0hVO0lGaEJWLHNCQUE4QztFbkJpbUg5QztFcUJqbEhVO0lGaEJWLGdCQUE4QztFbkJvbUg5QztFcUJwbEhVO0lGaEJWLHNCQUE4QztFbkJ1bUg5QztFcUJ2bEhVO0lGaEJWLHNCQUE4QztFbkIwbUg5QztFcUIxbEhVO0lGaEJWLGdCQUE4QztFbkI2bUg5QztFcUI3bEhVO0lGaEJWLHNCQUE4QztFbkJnbkg5QztFcUJobUhVO0lGaEJWLHNCQUE4QztFbkJtbkg5QztBQUNGOztBb0IvbUhJO0VDM0JFO0lBQ0UsYUFBYTtJQUNiLFlBQVk7SUFDWixlQUFlO0VyQjhvSHJCO0VxQnpvSFE7SUZ3Qk4sY0FBdUI7SUFDdkIsZUFBd0I7RW5Cb25IMUI7RXFCN29IUTtJRndCTixhQUF1QjtJQUN2QixjQUF3QjtFbkJ3bkgxQjtFcUJqcEhRO0lGd0JOLG1CQUF1QjtJQUN2QixvQkFBd0I7RW5CNG5IMUI7RXFCcnBIUTtJRndCTixhQUF1QjtJQUN2QixjQUF3QjtFbkJnb0gxQjtFcUJ6cEhRO0lGd0JOLGFBQXVCO0lBQ3ZCLGNBQXdCO0VuQm9vSDFCO0VxQjdwSFE7SUZ3Qk4sbUJBQXVCO0lBQ3ZCLG9CQUF3QjtFbkJ3b0gxQjtFcUIzcEhJO0lGQ0osY0FBYztJQUNkLFdBQVc7SUFDWCxlQUFlO0VuQjZwSGY7RXFCMXBIUTtJRmJSLGtCQUFzQztJQUl0QyxtQkFBdUM7RW5CdXFIdkM7RXFCOXBIUTtJRmJSLG1CQUFzQztJQUl0QyxvQkFBdUM7RW5CMnFIdkM7RXFCbHFIUTtJRmJSLGFBQXNDO0lBSXRDLGNBQXVDO0VuQitxSHZDO0VxQnRxSFE7SUZiUixtQkFBc0M7SUFJdEMsb0JBQXVDO0VuQm1ySHZDO0VxQjFxSFE7SUZiUixtQkFBc0M7SUFJdEMsb0JBQXVDO0VuQnVySHZDO0VxQjlxSFE7SUZiUixhQUFzQztJQUl0QyxjQUF1QztFbkIyckh2QztFcUJsckhRO0lGYlIsbUJBQXNDO0lBSXRDLG9CQUF1QztFbkIrckh2QztFcUJ0ckhRO0lGYlIsbUJBQXNDO0lBSXRDLG9CQUF1QztFbkJtc0h2QztFcUIxckhRO0lGYlIsYUFBc0M7SUFJdEMsY0FBdUM7RW5CdXNIdkM7RXFCOXJIUTtJRmJSLG1CQUFzQztJQUl0QyxvQkFBdUM7RW5CMnNIdkM7RXFCbHNIUTtJRmJSLG1CQUFzQztJQUl0QyxvQkFBdUM7RW5CK3NIdkM7RXFCdHNIUTtJRmJSLGNBQXNDO0lBSXRDLGVBQXVDO0VuQm10SHZDO0VxQnBzSEk7SUFBd0IsU0FBUztFckJ1c0hyQztFcUJyc0hJO0lBQXVCLFNYbUtHO0VWcWlIOUI7RXFCcnNITTtJQUF3QixRQURaO0VyQnlzSGxCO0VxQnhzSE07SUFBd0IsUUFEWjtFckI0c0hsQjtFcUIzc0hNO0lBQXdCLFFBRFo7RXJCK3NIbEI7RXFCOXNITTtJQUF3QixRQURaO0VyQmt0SGxCO0VxQmp0SE07SUFBd0IsUUFEWjtFckJxdEhsQjtFcUJwdEhNO0lBQXdCLFFBRFo7RXJCd3RIbEI7RXFCdnRITTtJQUF3QixRQURaO0VyQjJ0SGxCO0VxQjF0SE07SUFBd0IsUUFEWjtFckI4dEhsQjtFcUI3dEhNO0lBQXdCLFFBRFo7RXJCaXVIbEI7RXFCaHVITTtJQUF3QixRQURaO0VyQm91SGxCO0VxQm51SE07SUFBd0IsU0FEWjtFckJ1dUhsQjtFcUJ0dUhNO0lBQXdCLFNBRFo7RXJCMHVIbEI7RXFCenVITTtJQUF3QixTQURaO0VyQjZ1SGxCO0VxQnJ1SFU7SUZoQlYsY0FBNEI7RW5Cd3ZINUI7RXFCeHVIVTtJRmhCVixxQkFBOEM7RW5CMnZIOUM7RXFCM3VIVTtJRmhCVixzQkFBOEM7RW5COHZIOUM7RXFCOXVIVTtJRmhCVixnQkFBOEM7RW5CaXdIOUM7RXFCanZIVTtJRmhCVixzQkFBOEM7RW5Cb3dIOUM7RXFCcHZIVTtJRmhCVixzQkFBOEM7RW5CdXdIOUM7RXFCdnZIVTtJRmhCVixnQkFBOEM7RW5CMHdIOUM7RXFCMXZIVTtJRmhCVixzQkFBOEM7RW5CNndIOUM7RXFCN3ZIVTtJRmhCVixzQkFBOEM7RW5CZ3hIOUM7RXFCaHdIVTtJRmhCVixnQkFBOEM7RW5CbXhIOUM7RXFCbndIVTtJRmhCVixzQkFBOEM7RW5Cc3hIOUM7RXFCdHdIVTtJRmhCVixzQkFBOEM7RW5CeXhIOUM7QUFDRjs7QW9CcnhISTtFQzNCRTtJQUNFLGFBQWE7SUFDYixZQUFZO0lBQ1osZUFBZTtFckJvekhyQjtFcUIveUhRO0lGd0JOLGNBQXVCO0lBQ3ZCLGVBQXdCO0VuQjB4SDFCO0VxQm56SFE7SUZ3Qk4sYUFBdUI7SUFDdkIsY0FBd0I7RW5COHhIMUI7RXFCdnpIUTtJRndCTixtQkFBdUI7SUFDdkIsb0JBQXdCO0VuQmt5SDFCO0VxQjN6SFE7SUZ3Qk4sYUFBdUI7SUFDdkIsY0FBd0I7RW5Cc3lIMUI7RXFCL3pIUTtJRndCTixhQUF1QjtJQUN2QixjQUF3QjtFbkIweUgxQjtFcUJuMEhRO0lGd0JOLG1CQUF1QjtJQUN2QixvQkFBd0I7RW5COHlIMUI7RXFCajBISTtJRkNKLGNBQWM7SUFDZCxXQUFXO0lBQ1gsZUFBZTtFbkJtMEhmO0VxQmgwSFE7SUZiUixrQkFBc0M7SUFJdEMsbUJBQXVDO0VuQjYwSHZDO0VxQnAwSFE7SUZiUixtQkFBc0M7SUFJdEMsb0JBQXVDO0VuQmkxSHZDO0VxQngwSFE7SUZiUixhQUFzQztJQUl0QyxjQUF1QztFbkJxMUh2QztFcUI1MEhRO0lGYlIsbUJBQXNDO0lBSXRDLG9CQUF1QztFbkJ5MUh2QztFcUJoMUhRO0lGYlIsbUJBQXNDO0lBSXRDLG9CQUF1QztFbkI2MUh2QztFcUJwMUhRO0lGYlIsYUFBc0M7SUFJdEMsY0FBdUM7RW5CaTJIdkM7RXFCeDFIUTtJRmJSLG1CQUFzQztJQUl0QyxvQkFBdUM7RW5CcTJIdkM7RXFCNTFIUTtJRmJSLG1CQUFzQztJQUl0QyxvQkFBdUM7RW5CeTJIdkM7RXFCaDJIUTtJRmJSLGFBQXNDO0lBSXRDLGNBQXVDO0VuQjYySHZDO0VxQnAySFE7SUZiUixtQkFBc0M7SUFJdEMsb0JBQXVDO0VuQmkzSHZDO0VxQngySFE7SUZiUixtQkFBc0M7SUFJdEMsb0JBQXVDO0VuQnEzSHZDO0VxQjUySFE7SUZiUixjQUFzQztJQUl0QyxlQUF1QztFbkJ5M0h2QztFcUIxMkhJO0lBQXdCLFNBQVM7RXJCNjJIckM7RXFCMzJISTtJQUF1QixTWG1LRztFVjJzSDlCO0VxQjMySE07SUFBd0IsUUFEWjtFckIrMkhsQjtFcUI5MkhNO0lBQXdCLFFBRFo7RXJCazNIbEI7RXFCajNITTtJQUF3QixRQURaO0VyQnEzSGxCO0VxQnAzSE07SUFBd0IsUUFEWjtFckJ3M0hsQjtFcUJ2M0hNO0lBQXdCLFFBRFo7RXJCMjNIbEI7RXFCMTNITTtJQUF3QixRQURaO0VyQjgzSGxCO0VxQjczSE07SUFBd0IsUUFEWjtFckJpNEhsQjtFcUJoNEhNO0lBQXdCLFFBRFo7RXJCbzRIbEI7RXFCbjRITTtJQUF3QixRQURaO0VyQnU0SGxCO0VxQnQ0SE07SUFBd0IsUUFEWjtFckIwNEhsQjtFcUJ6NEhNO0lBQXdCLFNBRFo7RXJCNjRIbEI7RXFCNTRITTtJQUF3QixTQURaO0VyQmc1SGxCO0VxQi80SE07SUFBd0IsU0FEWjtFckJtNUhsQjtFcUIzNEhVO0lGaEJWLGNBQTRCO0VuQjg1SDVCO0VxQjk0SFU7SUZoQlYscUJBQThDO0VuQmk2SDlDO0VxQmo1SFU7SUZoQlYsc0JBQThDO0VuQm82SDlDO0VxQnA1SFU7SUZoQlYsZ0JBQThDO0VuQnU2SDlDO0VxQnY1SFU7SUZoQlYsc0JBQThDO0VuQjA2SDlDO0VxQjE1SFU7SUZoQlYsc0JBQThDO0VuQjY2SDlDO0VxQjc1SFU7SUZoQlYsZ0JBQThDO0VuQmc3SDlDO0VxQmg2SFU7SUZoQlYsc0JBQThDO0VuQm03SDlDO0VxQm42SFU7SUZoQlYsc0JBQThDO0VuQnM3SDlDO0VxQnQ2SFU7SUZoQlYsZ0JBQThDO0VuQnk3SDlDO0VxQno2SFU7SUZoQlYsc0JBQThDO0VuQjQ3SDlDO0VxQjU2SFU7SUZoQlYsc0JBQThDO0VuQis3SDlDO0FBQ0Y7O0FvQjM3SEk7RUMzQkU7SUFDRSxhQUFhO0lBQ2IsWUFBWTtJQUNaLGVBQWU7RXJCMDlIckI7RXFCcjlIUTtJRndCTixjQUF1QjtJQUN2QixlQUF3QjtFbkJnOEgxQjtFcUJ6OUhRO0lGd0JOLGFBQXVCO0lBQ3ZCLGNBQXdCO0VuQm84SDFCO0VxQjc5SFE7SUZ3Qk4sbUJBQXVCO0lBQ3ZCLG9CQUF3QjtFbkJ3OEgxQjtFcUJqK0hRO0lGd0JOLGFBQXVCO0lBQ3ZCLGNBQXdCO0VuQjQ4SDFCO0VxQnIrSFE7SUZ3Qk4sYUFBdUI7SUFDdkIsY0FBd0I7RW5CZzlIMUI7RXFCeitIUTtJRndCTixtQkFBdUI7SUFDdkIsb0JBQXdCO0VuQm85SDFCO0VxQnYrSEk7SUZDSixjQUFjO0lBQ2QsV0FBVztJQUNYLGVBQWU7RW5CeStIZjtFcUJ0K0hRO0lGYlIsa0JBQXNDO0lBSXRDLG1CQUF1QztFbkJtL0h2QztFcUIxK0hRO0lGYlIsbUJBQXNDO0lBSXRDLG9CQUF1QztFbkJ1L0h2QztFcUI5K0hRO0lGYlIsYUFBc0M7SUFJdEMsY0FBdUM7RW5CMi9IdkM7RXFCbC9IUTtJRmJSLG1CQUFzQztJQUl0QyxvQkFBdUM7RW5CKy9IdkM7RXFCdC9IUTtJRmJSLG1CQUFzQztJQUl0QyxvQkFBdUM7RW5CbWdJdkM7RXFCMS9IUTtJRmJSLGFBQXNDO0lBSXRDLGNBQXVDO0VuQnVnSXZDO0VxQjkvSFE7SUZiUixtQkFBc0M7SUFJdEMsb0JBQXVDO0VuQjJnSXZDO0VxQmxnSVE7SUZiUixtQkFBc0M7SUFJdEMsb0JBQXVDO0VuQitnSXZDO0VxQnRnSVE7SUZiUixhQUFzQztJQUl0QyxjQUF1QztFbkJtaEl2QztFcUIxZ0lRO0lGYlIsbUJBQXNDO0lBSXRDLG9CQUF1QztFbkJ1aEl2QztFcUI5Z0lRO0lGYlIsbUJBQXNDO0lBSXRDLG9CQUF1QztFbkIyaEl2QztFcUJsaElRO0lGYlIsY0FBc0M7SUFJdEMsZUFBdUM7RW5CK2hJdkM7RXFCaGhJSTtJQUF3QixTQUFTO0VyQm1oSXJDO0VxQmpoSUk7SUFBdUIsU1htS0c7RVZpM0g5QjtFcUJqaElNO0lBQXdCLFFBRFo7RXJCcWhJbEI7RXFCcGhJTTtJQUF3QixRQURaO0VyQndoSWxCO0VxQnZoSU07SUFBd0IsUUFEWjtFckIyaElsQjtFcUIxaElNO0lBQXdCLFFBRFo7RXJCOGhJbEI7RXFCN2hJTTtJQUF3QixRQURaO0VyQmlpSWxCO0VxQmhpSU07SUFBd0IsUUFEWjtFckJvaUlsQjtFcUJuaUlNO0lBQXdCLFFBRFo7RXJCdWlJbEI7RXFCdGlJTTtJQUF3QixRQURaO0VyQjBpSWxCO0VxQnppSU07SUFBd0IsUUFEWjtFckI2aUlsQjtFcUI1aUlNO0lBQXdCLFFBRFo7RXJCZ2pJbEI7RXFCL2lJTTtJQUF3QixTQURaO0VyQm1qSWxCO0VxQmxqSU07SUFBd0IsU0FEWjtFckJzaklsQjtFcUJyaklNO0lBQXdCLFNBRFo7RXJCeWpJbEI7RXFCampJVTtJRmhCVixjQUE0QjtFbkJva0k1QjtFcUJwaklVO0lGaEJWLHFCQUE4QztFbkJ1a0k5QztFcUJ2aklVO0lGaEJWLHNCQUE4QztFbkIwa0k5QztFcUIxaklVO0lGaEJWLGdCQUE4QztFbkI2a0k5QztFcUI3aklVO0lGaEJWLHNCQUE4QztFbkJnbEk5QztFcUJoa0lVO0lGaEJWLHNCQUE4QztFbkJtbEk5QztFcUJua0lVO0lGaEJWLGdCQUE4QztFbkJzbEk5QztFcUJ0a0lVO0lGaEJWLHNCQUE4QztFbkJ5bEk5QztFcUJ6a0lVO0lGaEJWLHNCQUE4QztFbkI0bEk5QztFcUI1a0lVO0lGaEJWLGdCQUE4QztFbkIrbEk5QztFcUIva0lVO0lGaEJWLHNCQUE4QztFbkJrbUk5QztFcUJsbElVO0lGaEJWLHNCQUE4QztFbkJxbUk5QztBQUNGOztBc0J6cElBO0VBQ0UsV0FBVztFQUNYLG1CWmlJVztFWWhJWCxjZEFhO0FSNHBJZjs7QXNCL3BJQTs7RUFRSSxvQmRnTjRCO0VjL001QixtQkFBbUI7RUFDbkIsZ0RkUlc7QVJvcUlmOztBc0J0cUlBO0VBY0ksc0JBQXNCO0VBQ3RCLG1EZGJXO0FSeXFJZjs7QXNCM3FJQTtFQW1CSSxnRGRqQlc7QVI2cUlmOztBc0JucElBOztFQUdJLHFCZDBMZ0M7QVIyOUhwQzs7QXNCNW9JQTtFQUNFLDRDZHZDYTtBUnNySWY7O0FzQmhwSUE7O0VBS0ksNENkM0NXO0FSMnJJZjs7QXNCcnBJQTs7RUFXTSx3QkFBNEM7QXRCK29JbEQ7O0FzQjFvSUE7Ozs7RUFLSSxTQUFTO0F0QjRvSWI7O0FzQnBvSUE7RUFFSSwyQ2RyRVc7QVIyc0lmOztBV3JzSUU7RVcyRUksY2RoRlM7RWNpRlQsMkNkbEZTO0FSZ3RJZjs7QXVCanRJRTs7O0VBSUkseUJDZ0c0RDtBeEJtbklsRTs7QXVCdnRJRTs7OztFQVlNLHFCQ3dGMEQ7QXhCMG5JbEU7O0FXdnRJRTtFWWlCTSx5QkFKc0M7QXZCOHNJOUM7O0F1Qi9zSUU7O0VBU1EseUJBUm9DO0F2Qm10STlDOztBdUJ2dUlFOzs7RUFJSSx5QkNnRzREO0F4QnlvSWxFOztBdUI3dUlFOzs7O0VBWU0scUJDd0YwRDtBeEJncElsRTs7QVc3dUlFO0VZaUJNLHlCQUpzQztBdkJvdUk5Qzs7QXVCcnVJRTs7RUFTUSx5QkFSb0M7QXZCeXVJOUM7O0F1Qjd2SUU7OztFQUlJLHlCQ2dHNEQ7QXhCK3BJbEU7O0F1Qm53SUU7Ozs7RUFZTSxxQkN3RjBEO0F4QnNxSWxFOztBV253SUU7RVlpQk0seUJBSnNDO0F2QjB2STlDOztBdUIzdklFOztFQVNRLHlCQVJvQztBdkIrdkk5Qzs7QXVCbnhJRTs7O0VBSUkseUJDZ0c0RDtBeEJxcklsRTs7QXVCenhJRTs7OztFQVlNLHFCQ3dGMEQ7QXhCNHJJbEU7O0FXenhJRTtFWWlCTSx5QkFKc0M7QXZCZ3hJOUM7O0F1Qmp4SUU7O0VBU1EseUJBUm9DO0F2QnF4STlDOztBdUJ6eUlFOzs7RUFJSSx5QkNnRzREO0F4QjJzSWxFOztBdUIveUlFOzs7O0VBWU0scUJDd0YwRDtBeEJrdElsRTs7QVcveUlFO0VZaUJNLHlCQUpzQztBdkJzeUk5Qzs7QXVCdnlJRTs7RUFTUSx5QkFSb0M7QXZCMnlJOUM7O0F1Qi96SUU7OztFQUlJLHlCQ2dHNEQ7QXhCaXVJbEU7O0F1QnIwSUU7Ozs7RUFZTSxxQkN3RjBEO0F4Qnd1SWxFOztBV3IwSUU7RVlpQk0seUJBSnNDO0F2QjR6STlDOztBdUI3eklFOztFQVNRLHlCQVJvQztBdkJpMEk5Qzs7QXVCcjFJRTs7O0VBSUkseUJDZ0c0RDtBeEJ1dklsRTs7QXVCMzFJRTs7OztFQVlNLHFCQ3dGMEQ7QXhCOHZJbEU7O0FXMzFJRTtFWWlCTSx5QkFKc0M7QXZCazFJOUM7O0F1Qm4xSUU7O0VBU1EseUJBUm9DO0F2QnUxSTlDOztBdUIzMklFOzs7RUFJSSx5QkNnRzREO0F4QjZ3SWxFOztBdUJqM0lFOzs7O0VBWU0scUJDd0YwRDtBeEJveElsRTs7QVdqM0lFO0VZaUJNLHlCQUpzQztBdkJ3Mkk5Qzs7QXVCejJJRTs7RUFTUSx5QkFSb0M7QXZCNjJJOUM7O0F1Qmo0SUU7OztFQUlJLDJDZkhTO0FSczRJZjs7QVdoNElFO0VZaUJNLDJDQUpzQztBdkJ1M0k5Qzs7QXVCeDNJRTs7RUFTUSwyQ0FSb0M7QXZCNDNJOUM7O0FzQnR5SUE7RUFHTSxjZDVHUztFYzZHVCxvQ2Q1R1M7RWM2R1QsdUNkOUdTO0FScTVJZjs7QXNCNXlJQTtFQVdNLGNkbkhTO0Vjb0hULDRDZHJIUztFY3NIVCx3Q2R0SFM7QVIyNUlmOztBc0JoeUlBO0VBQ0UsY2Q1SGE7RWM2SGIsb0NkNUhhO0FSKzVJZjs7QXNCcnlJQTs7O0VBT0ksdUNkbElXO0FSczZJZjs7QXNCM3lJQTtFQVdJLFNBQVM7QXRCb3lJYjs7QXNCL3lJQTtFQWdCTSwyQ2QzSVM7QVI4NklmOztBV3g2SUU7RVc0SU0sY2RsSk87RWNtSlAsNENkbkpPO0FSbTdJZjs7QW9CaDNJSTtFRWlHQTtJQUVJLGNBQWM7SUFDZCxXQUFXO0lBQ1gsZ0JBQWdCO0lBQ2hCLGlDQUFpQztFdEJreEl2QztFc0J2eElHO0lBU0ssU0FBUztFdEJpeElqQjtBQUNGOztBb0I1M0lJO0VFaUdBO0lBRUksY0FBYztJQUNkLFdBQVc7SUFDWCxnQkFBZ0I7SUFDaEIsaUNBQWlDO0V0Qjh4SXZDO0VzQm55SUc7SUFTSyxTQUFTO0V0QjZ4SWpCO0FBQ0Y7O0FvQng0SUk7RUVpR0E7SUFFSSxjQUFjO0lBQ2QsV0FBVztJQUNYLGdCQUFnQjtJQUNoQixpQ0FBaUM7RXRCMHlJdkM7RXNCL3lJRztJQVNLLFNBQVM7RXRCeXlJakI7QUFDRjs7QW9CcDVJSTtFRWlHQTtJQUVJLGNBQWM7SUFDZCxXQUFXO0lBQ1gsZ0JBQWdCO0lBQ2hCLGlDQUFpQztFdEJzekl2QztFc0IzeklHO0lBU0ssU0FBUztFdEJxeklqQjtBQUNGOztBc0JwMElBO0VBT1EsY0FBYztFQUNkLFdBQVc7RUFDWCxnQkFBZ0I7RUFDaEIsaUNBQWlDO0F0QmkwSXpDOztBc0IzMElBO0VBY1UsU0FBUztBdEJpMEluQjs7QXlCOStJQTtFQUNFLGNBQWM7RUFDZCxXQUFXO0VBQ1gsa0NEaUg4RDtFQ2hIOUQsb0JqQmdEd0I7RUNxRXBCLGVBdENZO0VnQjVFaEIsZ0Jma1IrQjtFZWpSL0IsZ0Jmc1IrQjtFZXJSL0IsY2pCUmE7RWlCU2IsNkJqQitFb0I7RWlCOUVwQiw0QkFBNEI7RUFDNUIsdUJqQlhhO0VRV1gsZ0JSc0ZtQjtFa0J4RmpCLHdFaEJ1ZTRGO0FWNmdJbEc7O0EwQmgvSU07RURkTjtJQ2VRLGdCQUFnQjtFMUJvL0l0QjtBQUNGOztBeUJwZ0pBO0VBc0JJLDZCQUE2QjtFQUM3QixTQUFTO0F6QmsvSWI7O0F5QnpnSkE7RUE0Qkksa0JBQWtCO0VBQ2xCLDBCakI1Qlc7QVI2Z0pmOztBMkJ2Z0pFO0VBQ0UsY25CUFc7RW1CUVgsNkJuQmdGa0I7RW1CL0VsQixtQm5CVFc7RW1CVVgsVUFBVTtFQUtSLDZDbkJoQlM7QVJzaEpmOztBeUJ0aEpBO0VBcUNJLHlCakJwQ1c7RWlCc0NYLFVBQVU7QXpCby9JZDs7QXlCM2hKQTtFQWlESSw2QmpCMEMyQjtFaUJ4QzNCLFVBQVU7QXpCNitJZDs7QXlCeitJQTs7OztFQUtJLGdCQUFnQjtBekIyK0lwQjs7QXlCditJQTtFQU9JLGNqQnRFVztFaUJ1RVgsNkJqQmlCa0I7QVJtOUl0Qjs7QXlCLzlJQTs7RUFFRSxjQUFjO0VBQ2QsV0FBVztBekJrK0liOztBeUJ4OUlBO0VBQ0UsK0JEeUI4RDtFQ3hCOUQsa0NEd0I4RDtFQ3ZCOUQsZ0JBQWdCO0VoQjNCZCxrQkFBVztFZ0I2QmIsZ0JmK0wrQjtBVjR4SWpDOztBeUJ4OUlBO0VBQ0UsK0JEaUI4RDtFQ2hCOUQsa0NEZ0I4RDtFZksxRCxrQkF0Q1k7RWdCbUJoQixnQmY2SCtCO0FWODFJakM7O0F5Qng5SUE7RUFDRSxnQ0RVOEQ7RUNUOUQsbUNEUzhEO0VmSzFELG1CQXRDWTtFZ0IwQmhCLGdCZnVIK0I7QVZvMklqQzs7QXlCbDlJQTtFQUNFLGNBQWM7RUFDZCxXQUFXO0VBQ1gsaUJBQTJCO0VBQzNCLGdCQUFnQjtFaEJEWixlQXRDWTtFZ0J5Q2hCLGdCZmtLK0I7RWVqSy9CLGNqQjVIYTtFaUI2SGIsNkJBQTZCO0VBQzdCLHlCQUF5QjtFQUN6QixtQkFBbUM7QXpCcTlJckM7O0F5Qi85SUE7RUFjSSxnQkFBZ0I7RUFDaEIsZUFBZTtBekJxOUluQjs7QXlCejhJQTtFQUNFLGtDRDlCOEQ7RUMrQjlELHdCakI3RjhCO0VDbUUxQixtQkF0Q1k7RWdCa0VoQixnQmYrRStCO0VNeE43QixnQlJ3RnNCO0FSOC9JMUI7O0F5Qno4SUE7RUFDRSxnQ0R0QzhEO0VDdUM5RCxvQmZpUGdDO0VEblI1QixrQkF0Q1k7RWdCMEVoQixnQmZzRStCO0VNdk43QixnQlJ1RnNCO0FSdWdKMUI7O0F5Qng4SUE7RUFHSSxZQUFZO0F6Qnk4SWhCOztBeUJyOElBO0VBQ0UsWUFBWTtBekJ3OElkOztBeUJoOElBO0VBQ0UsbUJqQnBGNkI7QVJ1aEovQjs7QXlCaDhJQTtFQUNFLGNBQWM7RUFDZCxtQmYyVDRDO0FWd29JOUM7O0F5QjM3SUE7RUFDRSxhQUFhO0VBQ2IsZUFBZTtFQUNmLGtCQUEwQztFQUMxQyxpQkFBeUM7QXpCODdJM0M7O0F5Qmw4SUE7O0VBUUksa0JBQTBDO0VBQzFDLGlCQUF5QztBekIrN0k3Qzs7QXlCdDdJQTtFQUNFLGtCQUFrQjtFQUNsQixjQUFjO0VBQ2QscUJmZ1M2QztBVnlwSS9DOztBeUJ0N0lBO0VBQ0Usa0JBQWtCO0VBQ2xCLGtCZjRSMkM7RWUzUjNDLHFCZjBSNkM7QVYrcEkvQzs7QXlCNTdJQTs7RUFRSSwrQmpCaE9XO0FSeXBKZjs7QXlCcjdJQTtFQUNFLGdCQUFnQjtBekJ3N0lsQjs7QXlCcjdJQTtFQUNFLG9CQUFvQjtFQUNwQixtQkFBbUI7RUFDbkIsZUFBZTtFQUNmLHFCZjZRNEM7QVYycUk5Qzs7QXlCNTdJQTtFQVFJLGdCQUFnQjtFQUNoQixhQUFhO0VBQ2IsdUJmd1E0QztFZXZRNUMsY0FBYztBekJ3N0lsQjs7QTJCcm9KRTtFQUNFLGFBQWE7RUFDYixXQUFXO0VBQ1gsbUJqQjBjMEM7RUQxWHhDLGlCQXRDWTtFa0J4Q2QsY25CbENXO0FSMHFKZjs7QTJCcm9KRTtFQUNFLGtCQUFrQjtFQUNsQixTQUFTO0VBQ1QsT0FBTztFQUNQLFVBQVU7RUFDVixhQUFhO0VBQ2IsZUFBZTtFQUNmLHNCbkI2UXVCO0VtQjVRdkIsaUJBQWlCO0VsQm1FZixtQkF0Q1k7RWtCM0JkLGdCakJzTzZCO0VpQnJPN0IsY25CekRXO0VtQjBEWCx5Qm5CakRXO0VRR1gsa0JScUplO0FSa2lKbkI7O0EyQnBvSkk7O0VBRUUsU0FBaUM7QTNCdW9KdkM7O0EyQjlxSkk7Ozs7RUE4Q0UsY0FBYztBM0J1b0pwQjs7QTJCcnJKSTtFQW9ERSxxQm5CckVTO0VtQndFUCxtQ0htQ3dEO0VHbEN4RCxpUkgzQjBFO0VHNEIxRSw0QkFBNEI7RUFDNUIsd0RBQTZEO0VBQzdELDRESCtCd0Q7QXhCb21KaEU7O0EyQjlySkk7RUErREkscUJuQmhGTztFbUJpRlAsZ0RuQmpGTztBUm90SmY7O0EyQm5zSkk7RUF5RUksbUNIaUJ3RDtFR2hCeEQsNEVIZ0J3RDtBeEI4bUpoRTs7QTJCeHNKSTtFQWlGRSxxQm5CbEdTO0VtQnFHUCxvQ0hNd0Q7RUdMeEQsd1dBQThKO0EzQnluSnRLOztBMkI5c0pJO0VBeUZJLHFCbkIxR087RW1CMkdQLGdEbkIzR087QVJvdUpmOztBMkJudEpJO0VBa0dJLGNuQm5ITztBUnd1SmY7O0EyQnZ0Skk7OztFQXVHSSxjQUFjO0EzQnNuSnRCOztBMkI3dEpJO0VBK0dJLGNuQmhJTztBUmt2SmY7O0EyQmp1Skk7RUFrSE0scUJuQm5JSztBUnN2SmY7O0EyQnJ1Skk7RUF3SE0scUJBQWtDO0VDbEp4Qyx5QkRtSitDO0EzQmluSm5EOztBMkIxdUpJO0VBK0hNLGdEbkJoSks7QVIrdkpmOztBMkI5dUpJO0VBbUlNLHFCbkJwSks7QVJtd0pmOztBMkJsdkpJO0VBNklJLHFCbkI5Sk87QVJ1d0pmOztBMkJ0dkpJO0VBa0pNLHFCbkJuS0s7RW1Cb0tMLGdEbkJwS0s7QVI0d0pmOztBMkIvdUpFO0VBQ0UsYUFBYTtFQUNiLFdBQVc7RUFDWCxtQmpCMGMwQztFRDFYeEMsaUJBdENZO0VrQnhDZCxjbkJyQ1M7QVJ1eEpiOztBMkIvdUpFO0VBQ0Usa0JBQWtCO0VBQ2xCLFNBQVM7RUFDVCxPQUFPO0VBQ1AsVUFBVTtFQUNWLGFBQWE7RUFDYixlQUFlO0VBQ2Ysc0JuQjZRdUI7RW1CNVF2QixpQkFBaUI7RWxCbUVmLG1CQXRDWTtFa0IzQmQsZ0JqQnNPNkI7RWlCck83QixjbkJ6RFc7RW1CMERYLHlCbkJwRFM7RVFNVCxrQlJxSmU7QVI0b0puQjs7QTJCOXVKSTs7RUFFRSxTQUFpQztBM0Jpdkp2Qzs7QTJCeHhKSTs7OztFQThDRSxjQUFjO0EzQml2SnBCOztBMkIveEpJO0VBb0RFLHFCbkJ4RU87RW1CMkVMLG1DSG1Dd0Q7RUdsQ3hELDRVSDNCMEU7RUc0QjFFLDRCQUE0QjtFQUM1Qix3REFBNkQ7RUFDN0QsNERIK0J3RDtBeEI4c0poRTs7QTJCeHlKSTtFQStESSxxQm5CbkZLO0VtQm9GTCxnRG5CcEZLO0FSaTBKYjs7QTJCN3lKSTtFQXlFSSxtQ0hpQndEO0VHaEJ4RCw0RUhnQndEO0F4Qnd0SmhFOztBMkJsekpJO0VBaUZFLHFCbkJyR087RW1Cd0dMLG9DSE13RDtFR0x4RCxtYUFBOEo7QTNCbXVKdEs7O0EyQnh6Skk7RUF5RkkscUJuQjdHSztFbUI4R0wsZ0RuQjlHSztBUmkxSmI7O0EyQjd6Skk7RUFrR0ksY25CdEhLO0FScTFKYjs7QTJCajBKSTs7O0VBdUdJLGNBQWM7QTNCZ3VKdEI7O0EyQnYwSkk7RUErR0ksY25CbklLO0FSKzFKYjs7QTJCMzBKSTtFQWtITSxxQm5CdElHO0FSbTJKYjs7QTJCLzBKSTtFQXdITSxxQkFBa0M7RUNsSnhDLHlCRG1KK0M7QTNCMnRKbkQ7O0EyQnAxSkk7RUErSE0sZ0RuQm5KRztBUjQySmI7O0EyQngxSkk7RUFtSU0scUJuQnZKRztBUmczSmI7O0EyQjUxSkk7RUE2SUkscUJuQmpLSztBUm8zSmI7O0EyQmgySkk7RUFrSk0scUJuQnRLRztFbUJ1S0gsZ0RuQnZLRztBUnkzSmI7O0F5Qm5uSkE7RUFDRSxhQUFhO0VBQ2IsbUJBQW1CO0VBQ25CLG1CQUFtQjtBekJzbkpyQjs7QXlCem5KQTtFQVNJLFdBQVc7QXpCb25KZjs7QW9CbjFKSTtFS3NOSjtJQWVNLGFBQWE7SUFDYixtQkFBbUI7SUFDbkIsdUJBQXVCO0lBQ3ZCLGdCQUFnQjtFekJtbkpwQjtFeUJyb0pGO0lBdUJNLGFBQWE7SUFDYixjQUFjO0lBQ2QsbUJBQW1CO0lBQ25CLG1CQUFtQjtJQUNuQixnQkFBZ0I7RXpCaW5KcEI7RXlCNW9KRjtJQWdDTSxxQkFBcUI7SUFDckIsV0FBVztJQUNYLHNCQUFzQjtFekIrbUoxQjtFeUJqcEpGO0lBdUNNLHFCQUFxQjtFekI2bUp6QjtFeUJwcEpGOztJQTRDTSxXQUFXO0V6QjRtSmY7RXlCeHBKRjtJQWtETSxhQUFhO0lBQ2IsbUJBQW1CO0lBQ25CLHVCQUF1QjtJQUN2QixXQUFXO0lBQ1gsZUFBZTtFekJ5bUpuQjtFeUIvcEpGO0lBeURNLGtCQUFrQjtJQUNsQixjQUFjO0lBQ2QsYUFBYTtJQUNiLHFCZitLd0M7SWU5S3hDLGNBQWM7RXpCeW1KbEI7RXlCdHFKRjtJQWlFTSxtQkFBbUI7SUFDbkIsdUJBQXVCO0V6QndtSjNCO0V5QjFxSkY7SUFxRU0sZ0JBQWdCO0V6QndtSnBCO0FBQ0Y7O0E2QjE3SkE7RUFDRSxxQkFBcUI7RUFFckIsZ0JuQnNSK0I7RW1CclIvQixjckJIYTtFcUJJYixrQkFBa0I7RUFHbEIsc0JBQXNCO0VBQ3RCLGlCQUFpQjtFQUNqQiw2QkFBNkI7RUFDN0IsNkJBQTJDO0VDdUYzQyxvQnRCOUN3QjtFQ3FFcEIsZUF0Q1k7RXFCaUJoQixnQnBCMEwrQjtFTWxSN0Isa0JScUplO0VrQnZKYixxSWhCZ2I2STtBVmdoSm5KOztBMEI1N0pNO0VHZE47SUhlUSxnQkFBZ0I7RTFCZzhKdEI7QUFDRjs7QVcxOEpFO0VrQlVFLGNyQmZXO0VxQmdCWCxxQkFBcUI7QTdCbzhKekI7O0E2QnI5SkE7RUFzQkksVUFBVTtFQUNWLGdCckJ5QnVCO0FSMDZKM0I7O0E2QjE5SkE7RUE2QkksYW5CaVo2QjtBVmdqSmpDOztBNkI5OUpBO0VBa0NJLGVBQXNEO0E3Qmc4SjFEOztBNkJsN0pBOztFQUVFLG9CQUFvQjtBN0JxN0p0Qjs7QTZCNTZKRTtFQzNEQSxjdEJBYTtFb0JBWCx5QnBCRVU7RXNCQVoscUJ0QkFZO0FSMitKZDs7QVd2K0pFO0VtQkFFLGN0Qk5XO0VvQkFYLHlCRURvRjtFQVNwRixxQkFUeUg7QTlCby9KN0g7O0E4QngrSkU7RUFFRSxjdEJiVztFb0JBWCx5QkVEb0Y7RUFnQnBGLHFCQWhCeUg7RUFxQnZILDJDQUFpRjtBOUJzK0p2Rjs7QThCaitKRTtFQUVFLGN0QjNCVztFc0I0QlgseUJ0QjFCVTtFc0IyQlYscUJ0QjNCVTtBUjgvSmQ7O0E4QjU5SkU7O0VBR0UsY3RCdkNXO0VzQndDWCx5QkF6Q3VLO0VBNkN2SyxxQkE3QytNO0E5QndnS25OOztBOEJ6OUpJOztFQUtJLDJDQUFpRjtBOUJ5OUp6Rjs7QTZCajlKRTtFQzNEQSxjdEJBYTtFb0JBWCx5QmxCT2M7RW9CTGhCLHFCcEJLZ0I7QVYyZ0tsQjs7QVc1Z0tFO0VtQkFFLGN0Qk5XO0VvQkFYLHlCRURvRjtFQVNwRixxQkFUeUg7QTlCeWhLN0g7O0E4QjdnS0U7RUFFRSxjdEJiVztFb0JBWCx5QkVEb0Y7RUFnQnBGLHFCQWhCeUg7RUFxQnZILDRDQUFpRjtBOUIyZ0t2Rjs7QThCdGdLRTtFQUVFLGN0QjNCVztFc0I0QlgseUJwQnJCYztFb0JzQmQscUJwQnRCYztBVjhoS2xCOztBOEJqZ0tFOztFQUdFLGN0QnZDVztFc0J3Q1gseUJBekN1SztFQTZDdksscUJBN0MrTTtBOUI2aUtuTjs7QThCOS9KSTs7RUFLSSw0Q0FBaUY7QTlCOC9KekY7O0E2QnQvSkU7RUMzREEsY3RCQWE7RW9CQVgseUJwQlNXO0VzQlBiLHFCdEJPYTtBUjhpS2Y7O0FXampLRTtFbUJBRSxjdEJOVztFb0JBWCx5QkVEb0Y7RUFTcEYscUJBVHlIO0E5QjhqSzdIOztBOEJsaktFO0VBRUUsY3RCYlc7RW9CQVgseUJFRG9GO0VBZ0JwRixxQkFoQnlIO0VBcUJ2SCwwQ0FBaUY7QTlCZ2pLdkY7O0E4QjNpS0U7RUFFRSxjdEIzQlc7RXNCNEJYLHlCdEJuQlc7RXNCb0JYLHFCdEJwQlc7QVJpa0tmOztBOEJ0aUtFOztFQUdFLGN0QnZDVztFc0J3Q1gseUJBekN1SztFQTZDdksscUJBN0MrTTtBOUJrbEtuTjs7QThCbmlLSTs7RUFLSSwwQ0FBaUY7QTlCbWlLekY7O0E2QjNoS0U7RUMzREEsY3RCQWE7RW9CQVgseUJwQldVO0VzQlRaLHFCdEJTWTtBUmlsS2Q7O0FXdGxLRTtFbUJBRSxjdEJOVztFb0JBWCx5QkVEb0Y7RUFTcEYscUJBVHlIO0E5Qm1tSzdIOztBOEJ2bEtFO0VBRUUsY3RCYlc7RW9CQVgseUJFRG9GO0VBZ0JwRixxQkFoQnlIO0VBcUJ2SCwyQ0FBaUY7QTlCcWxLdkY7O0E4QmhsS0U7RUFFRSxjdEIzQlc7RXNCNEJYLHlCdEJqQlU7RXNCa0JWLHFCdEJsQlU7QVJvbUtkOztBOEIza0tFOztFQUdFLGN0QnZDVztFc0J3Q1gseUJBekN1SztFQTZDdksscUJBN0MrTTtBOUJ1bktuTjs7QThCeGtLSTs7RUFLSSwyQ0FBaUY7QTlCd2tLekY7O0E2QmhrS0U7RUMzREEsY3BCVWdCO0VrQlZkLHlCcEJRWTtFc0JOZCxxQnRCTWM7QVJ5bktoQjs7QVczbktFO0VtQkFFLGNwQkljO0VrQlZkLHlCRURvRjtFQVNwRixxQkFUeUg7QTlCd29LN0g7O0E4QjVuS0U7RUFFRSxjcEJIYztFa0JWZCx5QkVEb0Y7RUFnQnBGLHFCQWhCeUg7RUFxQnZILDJDQUFpRjtBOUIwbkt2Rjs7QThCcm5LRTtFQUVFLGNwQmpCYztFb0JrQmQseUJ0QnBCWTtFc0JxQloscUJ0QnJCWTtBUjRvS2hCOztBOEJobktFOztFQUdFLGNwQjdCYztFb0I4QmQseUJBekN1SztFQTZDdksscUJBN0MrTTtBOUI0cEtuTjs7QThCN21LSTs7RUFLSSwyQ0FBaUY7QTlCNm1LekY7O0E2QnJtS0U7RUMzREEsY3RCQWE7RW9CQVgseUJwQk1TO0VzQkpYLHFCdEJJVztBUmdxS2I7O0FXaHFLRTtFbUJBRSxjdEJOVztFb0JBWCx5QkVEb0Y7RUFTcEYscUJBVHlIO0E5QjZxSzdIOztBOEJqcUtFO0VBRUUsY3RCYlc7RW9CQVgseUJFRG9GO0VBZ0JwRixxQkFoQnlIO0VBcUJ2SCwwQ0FBaUY7QTlCK3BLdkY7O0E4QjFwS0U7RUFFRSxjdEIzQlc7RXNCNEJYLHlCdEJ0QlM7RXNCdUJULHFCdEJ2QlM7QVJtcktiOztBOEJycEtFOztFQUdFLGN0QnZDVztFc0J3Q1gseUJBekN1SztFQTZDdksscUJBN0MrTTtBOUJpc0tuTjs7QThCbHBLSTs7RUFLSSwwQ0FBaUY7QTlCa3BLekY7O0E2QjFvS0U7RUMzREEsY3BCVWdCO0VrQlZkLHlCbEJFYztFb0JBaEIscUJwQkFnQjtBVnlzS2xCOztBV3JzS0U7RW1CQUUsY3BCSWM7RWtCVmQseUJFRG9GO0VBU3BGLHFCQVR5SDtBOUJrdEs3SDs7QThCdHNLRTtFQUVFLGNwQkhjO0VrQlZkLHlCRURvRjtFQWdCcEYscUJBaEJ5SDtFQXFCdkgsNENBQWlGO0E5Qm9zS3ZGOztBOEIvcktFO0VBRUUsY3BCakJjO0VvQmtCZCx5QnBCMUJjO0VvQjJCZCxxQnBCM0JjO0FWNHRLbEI7O0E4QjFyS0U7O0VBR0UsY3BCN0JjO0VvQjhCZCx5QkF6Q3VLO0VBNkN2SyxxQkE3QytNO0E5QnN1S25OOztBOEJ2cktJOztFQUtJLDRDQUFpRjtBOUJ1ckt6Rjs7QTZCL3FLRTtFQzNEQSxjdEJBYTtFb0JBWCx5QmxCU2M7RW9CUGhCLHFCcEJPZ0I7QVZ1dUtsQjs7QVcxdUtFO0VtQkFFLGN0Qk5XO0VvQkFYLHlCRURvRjtFQVNwRixxQkFUeUg7QTlCdXZLN0g7O0E4QjN1S0U7RUFFRSxjdEJiVztFb0JBWCx5QkVEb0Y7RUFnQnBGLHFCQWhCeUg7RUFxQnZILHlDQUFpRjtBOUJ5dUt2Rjs7QThCcHVLRTtFQUVFLGN0QjNCVztFc0I0QlgseUJwQm5CYztFb0JvQmQscUJwQnBCYztBVjB2S2xCOztBOEIvdEtFOztFQUdFLGN0QnZDVztFc0J3Q1gseUJBekN1SztFQTZDdksscUJBN0MrTTtBOUIyd0tuTjs7QThCNXRLSTs7RUFLSSx5Q0FBaUY7QTlCNHRLekY7O0E2QjlzS0U7RUNQQSxjdEJ4RFk7RXNCeURaLHFCdEJ6RFk7QVJreEtkOztBVzl3S0U7RW1Cd0RFLGN0QjlEVztFc0IrRFgseUJ0QjdEVTtFc0I4RFYscUJ0QjlEVTtBUnd4S2Q7O0E4QnZ0S0U7RUFFRSwwQ3RCbkVVO0FSNHhLZDs7QThCdHRLRTtFQUVFLGN0QnhFVTtFc0J5RVYsNkJBQTZCO0E5Qnd0S2pDOztBOEJydEtFOztFQUdFLGN0QmpGVztFc0JrRlgseUJ0QmhGVTtFc0JpRlYscUJ0QmpGVTtBUnd5S2Q7O0E4QnJ0S0k7O0VBS0ksMEN0QnhGTTtBUjZ5S2Q7O0E2Qjl1S0U7RUNQQSxjcEJuRGdCO0VvQm9EaEIscUJwQnBEZ0I7QVY2eUtsQjs7QVc5eUtFO0VtQndERSxjdEI5RFc7RXNCK0RYLHlCcEJ4RGM7RW9CeURkLHFCcEJ6RGM7QVZtektsQjs7QThCdnZLRTtFQUVFLDRDcEI5RGM7QVZ1ektsQjs7QThCdHZLRTtFQUVFLGNwQm5FYztFb0JvRWQsNkJBQTZCO0E5Qnd2S2pDOztBOEJydktFOztFQUdFLGN0QmpGVztFc0JrRlgseUJwQjNFYztFb0I0RWQscUJwQjVFYztBVm0wS2xCOztBOEJydktJOztFQUtJLDRDcEJuRlU7QVZ3MEtsQjs7QTZCOXdLRTtFQ1BBLGN0QmpEYTtFc0JrRGIscUJ0QmxEYTtBUjIwS2Y7O0FXOTBLRTtFbUJ3REUsY3RCOURXO0VzQitEWCx5QnRCdERXO0VzQnVEWCxxQnRCdkRXO0FSaTFLZjs7QThCdnhLRTtFQUVFLDBDdEI1RFc7QVJxMUtmOztBOEJ0eEtFO0VBRUUsY3RCakVXO0VzQmtFWCw2QkFBNkI7QTlCd3hLakM7O0E4QnJ4S0U7O0VBR0UsY3RCakZXO0VzQmtGWCx5QnRCekVXO0VzQjBFWCxxQnRCMUVXO0FSaTJLZjs7QThCcnhLSTs7RUFLSSwwQ3RCakZPO0FSczJLZjs7QTZCOXlLRTtFQ1BBLGN0Qi9DWTtFc0JnRFoscUJ0QmhEWTtBUnkyS2Q7O0FXOTJLRTtFbUJ3REUsY3RCOURXO0VzQitEWCx5QnRCcERVO0VzQnFEVixxQnRCckRVO0FSKzJLZDs7QThCdnpLRTtFQUVFLDJDdEIxRFU7QVJtM0tkOztBOEJ0ektFO0VBRUUsY3RCL0RVO0VzQmdFViw2QkFBNkI7QTlCd3pLakM7O0E4QnJ6S0U7O0VBR0UsY3RCakZXO0VzQmtGWCx5QnRCdkVVO0VzQndFVixxQnRCeEVVO0FSKzNLZDs7QThCcnpLSTs7RUFLSSwyQ3RCL0VNO0FSbzRLZDs7QTZCOTBLRTtFQ1BBLGN0QmxEYztFc0JtRGQscUJ0Qm5EYztBUjQ0S2hCOztBVzk0S0U7RW1Cd0RFLGNwQnBEYztFb0JxRGQseUJ0QnZEWTtFc0J3RFoscUJ0QnhEWTtBUms1S2hCOztBOEJ2MUtFO0VBRUUsMEN0QjdEWTtBUnM1S2hCOztBOEJ0MUtFO0VBRUUsY3RCbEVZO0VzQm1FWiw2QkFBNkI7QTlCdzFLakM7O0E4QnIxS0U7O0VBR0UsY3BCdkVjO0VvQndFZCx5QnRCMUVZO0VzQjJFWixxQnRCM0VZO0FSazZLaEI7O0E4QnIxS0k7O0VBS0ksMEN0QmxGUTtBUnU2S2hCOztBNkI5MktFO0VDUEEsY3RCcERXO0VzQnFEWCxxQnRCckRXO0FSODZLYjs7QVc5NktFO0VtQndERSxjdEI5RFc7RXNCK0RYLHlCdEJ6RFM7RXNCMERULHFCdEIxRFM7QVJvN0tiOztBOEJ2M0tFO0VBRUUsMEN0Qi9EUztBUnc3S2I7O0E4QnQzS0U7RUFFRSxjdEJwRVM7RXNCcUVULDZCQUE2QjtBOUJ3M0tqQzs7QThCcjNLRTs7RUFHRSxjdEJqRlc7RXNCa0ZYLHlCdEI1RVM7RXNCNkVULHFCdEI3RVM7QVJvOEtiOztBOEJyM0tJOztFQUtJLDBDdEJwRks7QVJ5OEtiOztBNkI5NEtFO0VDUEEsY3BCeERnQjtFb0J5RGhCLHFCcEJ6RGdCO0FWazlLbEI7O0FXOThLRTtFbUJ3REUsY3BCcERjO0VvQnFEZCx5QnBCN0RjO0VvQjhEZCxxQnBCOURjO0FWdzlLbEI7O0E4QnY1S0U7RUFFRSw0Q3BCbkVjO0FWNDlLbEI7O0E4QnQ1S0U7RUFFRSxjcEJ4RWM7RW9CeUVkLDZCQUE2QjtBOUJ3NUtqQzs7QThCcjVLRTs7RUFHRSxjcEJ2RWM7RW9Cd0VkLHlCcEJoRmM7RW9CaUZkLHFCcEJqRmM7QVZ3K0tsQjs7QThCcjVLSTs7RUFLSSw0Q3BCeEZVO0FWNitLbEI7O0E2Qjk2S0U7RUNQQSxjcEJqRGdCO0VvQmtEaEIscUJwQmxEZ0I7QVYyK0tsQjs7QVc5K0tFO0VtQndERSxjdEI5RFc7RXNCK0RYLHlCcEJ0RGM7RW9CdURkLHFCcEJ2RGM7QVZpL0tsQjs7QThCdjdLRTtFQUVFLHlDcEI1RGM7QVZxL0tsQjs7QThCdDdLRTtFQUVFLGNwQmpFYztFb0JrRWQsNkJBQTZCO0E5Qnc3S2pDOztBOEJyN0tFOztFQUdFLGN0QmpGVztFc0JrRlgseUJwQnpFYztFb0IwRWQscUJwQjFFYztBVmlnTGxCOztBOEJyN0tJOztFQUtJLHlDcEJqRlU7QVZzZ0xsQjs7QTZCbjhLQTtFQUNFLGdCbkI0TStCO0VtQjNNL0IsY3JCNUVZO0VxQjZFWixxQm5CMkY0QztBVjIySzlDOztBVy9nTEU7RWtCNEVFLGNuQnlGOEQ7RW1CeEY5RCxxQnJCTndCO0FSNjhLNUI7O0E2Qjk4S0E7RUFZSSxxQnJCWHdCO0FSaTlLNUI7O0E2Qmw5S0E7RUFpQkksY25CdEZjO0VtQnVGZCxvQkFBb0I7QTdCcThLeEI7O0E2QjE3S0E7RUNQRSxvQnBCMFNnQztFRG5SNUIsa0JBdENZO0VxQmlCaEIsZ0JwQitIK0I7RU12TjdCLGtCUnNKa0I7QVJ3NEt0Qjs7QTZCNzdLQTtFQ1hFLHdCdEI1QzhCO0VDbUUxQixtQkF0Q1k7RXFCaUJoQixnQnBCZ0krQjtFTXhON0Isa0JSdUprQjtBUjg0S3RCOztBNkIzN0tBO0VBQ0UsY0FBYztFQUNkLFdBQVc7QTdCODdLYjs7QTZCaDhLQTtFQU1JLGtCbkJ1VCtCO0FWdW9LbkM7O0E2Qno3S0E7OztFQUlJLFdBQVc7QTdCMjdLZjs7QStCdGtMQTtFTGdCTSxnQ2hCaVAyQztBVnkwS2pEOztBMEJ0akxNO0VLcEJOO0lMcUJRLGdCQUFnQjtFMUIwakx0QjtBQUNGOztBK0JobExBO0VBSUksVUFBVTtBL0JnbExkOztBK0I1a0xBO0VBRUksYUFBYTtBL0I4a0xqQjs7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QUtJLFdBQVc7RUFDWCxZQUFZO0FoQ3NyTGhCOztBZ0NqckxBO0VFOUdFLFNBQVM7RUFDVCxnQkFBbUI7RUFDbkIsZ0JBQWdCO0VBQ2hCLGdEMUJGYTtBUnF5TGY7O0FnQ2pyTEE7RUFDRSxjQUFjO0VBQ2QsV0FBVztFQUNYLHNCeEI4QjhCO0V3QjdCOUIsV0FBVztFQUNYLGdCdEJnSytCO0VzQi9KL0IsZ0N4QjFIYTtFd0IySGIsbUJBQW1CO0VBRW5CLG1CQUFtQjtFQUNuQiw2QkFBNkI7RUFDN0IsU0FBUztBaENtckxYOztBV3h5TEU7RXFCb0lFLGN4QjlJVztFd0IrSVgscUJBQXFCO0VKL0lyQiwyQ3BCQVc7QVJ3ekxmOztBZ0Nwc0xBO0VBaUNJLGN4QnJKVztFd0JzSlgscUJBQXFCO0VKdEpyQiwyQ3BCQVc7QVI4ekxmOztBZ0Mxc0xBO0VBd0NJLGN0QnRKYztFc0J1SmQsb0JBQW9CO0VBQ3BCLDZCQUE2QjtBaENzcUxqQzs7QWdDOXBMQTtFQUNFLGNBQWM7QWhDaXFMaEI7O0FnQzdwTEE7RUFDRSxjQUFjO0VBQ2Qsc0J4QnhCOEI7RXdCeUI5QixnQkFBZ0I7RXZCckRaLG1CQXRDWTtFdUI2RmhCLGN4QmhMYTtFd0JpTGIsbUJBQW1CO0FoQ2dxTHJCOztBZ0M1cExBO0VBQ0UsY0FBYztFQUNkLHNCeEJsQzhCO0V3Qm1DOUIsZ0N4QnhMYTtBUnUxTGY7O0FtQzExTEE7O0VBRUUsa0JBQWtCO0VBQ2xCLG9CQUFvQjtFQUNwQixzQkFBc0I7QW5DNjFMeEI7O0FtQ2oyTEE7O0VBT0ksa0JBQWtCO0VBQ2xCLGNBQWM7QW5DKzFMbEI7O0FXOTFMRTs7RXdCSUksVUFBVTtBbkMrMUxoQjs7QW1DNTJMQTs7OztFQWtCTSxVQUFVO0FuQ2kyTGhCOztBbUMzMUxBO0VBQ0UsYUFBYTtFQUNiLGVBQWU7RUFDZiwyQkFBMkI7QW5DODFMN0I7O0FtQ2oyTEE7RUFNSSxXQUFXO0FuQysxTGY7O0FtQzMxTEE7O0VBSUksaUJ6Qm1NNkI7QVZ5cExqQzs7QW1DaDJMQTs7RW5CSEksMEJtQmE4QjtFbkJaOUIsNkJtQlk4QjtBbkM0MUxsQzs7QW1DdDJMQTs7RW5CV0kseUJtQkk2QjtFbkJIN0IsNEJtQkc2QjtBbkM2MUxqQzs7QW1DNzBMQTtFQUNFLHNCQUFtQztFQUNuQyxxQkFBa0M7QW5DZzFMcEM7O0FtQ2wxTEE7OztFQU9JLGNBQWM7QW5DaTFMbEI7O0FtQzkwTEU7RUFDRSxlQUFlO0FuQ2kxTG5COztBbUM3MExBO0VBQ0Usd0JBQXNDO0VBQ3RDLHVCQUFxQztBbkNnMUx2Qzs7QW1DNzBMQTtFQUNFLHNCQUFzQztFQUN0QyxxQkFBcUM7QW5DZzFMdkM7O0FtQzV6TEE7RUFDRSxzQkFBc0I7RUFDdEIsdUJBQXVCO0VBQ3ZCLHVCQUF1QjtBbkMrekx6Qjs7QW1DbDBMQTs7RUFPSSxXQUFXO0FuQ2cwTGY7O0FtQ3YwTEE7O0VBWUksZ0J6QmtINkI7QVY4c0xqQzs7QW1DNTBMQTs7RW5CckVJLDZCbUJ1RitCO0VuQnRGL0IsNEJtQnNGK0I7QW5DZzBMbkM7O0FtQ2wxTEE7O0VuQm5GSSx5Qm1CMEc0QjtFbkJ6RzVCLDBCbUJ5RzRCO0FuQ2kwTGhDOztBbUNoekxBOztFQUdJLGdCQUFnQjtBbkNrekxwQjs7QW1DcnpMQTs7OztFQU9NLGtCQUFrQjtFQUNsQixzQkFBc0I7RUFDdEIsb0JBQW9CO0FuQ3F6TDFCOztBb0M5OExBO0VBQ0Usa0JBQWtCO0VBQ2xCLGFBQWE7RUFDYixlQUFlO0VBQ2Ysb0JBQW9CO0VBQ3BCLFdBQVc7QXBDaTlMYjs7QW9DdDlMQTs7OztFQVdJLGtCQUFrQjtFQUNsQixjQUFjO0VBQ2QsU0FBUztFQUNULFlBQVk7RUFDWixnQkFBZ0I7QXBDazlMcEI7O0FvQ2orTEE7Ozs7Ozs7Ozs7OztFQW9CTSxpQjFCa04yQjtBVjB3TGpDOztBb0NoL0xBOzs7RUE0QkksVUFBVTtBcEMwOUxkOztBb0N0L0xBO0VBaUNJLFVBQVU7QXBDeTlMZDs7QW9DMS9MQTs7RXBCMENJLHlCb0JKbUQ7RXBCS25ELDRCb0JMbUQ7QXBDMDlMdkQ7O0FvQ2hnTUE7RUE0Q0ksYUFBYTtFQUNiLG1CQUFtQjtBcEN3OUx2Qjs7QW9DcmdNQTs7RXBCMENJLHlCb0JNc0U7RXBCTHRFLDRCb0JLc0U7QXBDMjlMMUU7O0FvQzNnTUE7OztFcEI0QkksMEJvQjJCZ0M7RXBCMUJoQyw2Qm9CMEJnQztBcEMyOUxwQzs7QW9DbGhNQTs7O0VwQjRCSSwwQm9CbUNnQztFcEJsQ2hDLDZCb0JrQ2dDO0FwQzA5THBDOztBb0M5OExBOztFQUVFLGFBQWE7QXBDaTlMZjs7QW9DbjlMQTs7RUFRSSxrQkFBa0I7RUFDbEIsVUFBVTtBcENnOUxkOztBb0N6OUxBOztFQVlNLFVBQVU7QXBDazlMaEI7O0FvQzk5TEE7Ozs7Ozs7O0VBb0JJLGlCMUJ1STZCO0FWODBMakM7O0FvQ2o5TEE7RUFBdUIsa0IxQm1JVTtBVmsxTGpDOztBb0NwOUxBO0VBQXNCLGlCMUJrSVc7QVZzMUxqQzs7QW9DaDlMQTtFQUNFLGFBQWE7RUFDYixtQkFBbUI7RUFDbkIsb0I1QjNEd0I7RTRCNER4QixnQkFBZ0I7RTNCU1osZUF0Q1k7RTJCK0JoQixnQjFCdUsrQjtFMEJ0Sy9CLGdCMUIySytCO0UwQjFLL0IsYzVCbkhhO0U0Qm9IYixrQkFBa0I7RUFDbEIsbUJBQW1CO0VBQ25CLDZCNUJxSGdDO0U0QnBIaEMsdUI1QnZIYTtFUVdYLGdCUnNGbUI7QVIwK0x2Qjs7QW9DaCtMQTs7RUFrQkksYUFBYTtBcENtOUxqQjs7QW9DejhMQTs7RUFFRSxnQ1p0QjhEO0F4QmsrTGhFOztBb0N6OExBOzs7Ozs7RUFNRSxvQjFCeVBnQztFRG5SNUIsa0JBdENZO0UyQmtFaEIsZ0IxQjhFK0I7RU12TjdCLGdCUnVGc0I7QVIrL0wxQjs7QW9DejhMQTs7RUFFRSxrQ1p2QzhEO0F4Qm0vTGhFOztBb0N6OExBOzs7Ozs7RUFNRSx3QjVCOUc4QjtFQ21FMUIsbUJBdENZO0UyQm1GaEIsZ0IxQjhEK0I7RU14TjdCLGdCUndGc0I7QVIrZ00xQjs7QW9DejhMQTs7RUFFRSxtQkFBMEU7QXBDNDhMNUU7O0FvQ2o4TEE7Ozs7Ozs7O0VwQjNKSSwwQm9CbUs0QjtFcEJsSzVCLDZCb0JrSzRCO0FwQ3E4TGhDOztBb0NsOExBOzs7Ozs7RXBCeEpJLHlCb0I4SjJCO0VwQjdKM0IsNEJvQjZKMkI7QXBDczhML0I7O0FxQzNvTUE7RUFDRSxrQkFBa0I7RUFDbEIsVUFBVTtFQUNWLGNBQWM7RUFDZCxrQkFBK0M7RUFDL0Msd0JBQXFFO0VBQ3JFLG1CQUFtQjtBckM4b01yQjs7QXFDM29NQTtFQUNFLG9CQUFvQjtFQUNwQixrQjNCd2YwQztBVnNwTDVDOztBcUMzb01BO0VBQ0Usa0JBQWtCO0VBQ2xCLE9BQU87RUFDUCxXQUFXO0VBQ1gsaUI3QjJGd0M7RTZCMUZ4QyxrQkFBa0Y7RUFDbEYsVUFBVTtBckM4b01aOztBcUNwcE1BO0VBU0ksYzdCMUJXO0U2QjJCWCxzQzdCM0JXO0VvQkFYLDJDcEJBVztBUjJxTWY7O0FxQzFwTUE7RUFvQk0sNkM3QnJDUztBUitxTWY7O0FxQzlwTUE7RUF5Qkksc0M3QjFDVztBUm1yTWY7O0FxQ2xxTUE7RUE2QkksYzdCOUNXO0U2QitDWCwyQzdCL0NXO0U2QmdEWCxzQzdCaERXO0FSeXJNZjs7QXFDeHFNQTtFQXVDTSwrQjdCeERTO0FSNnJNZjs7QXFDNXFNQTtFQTBDUSw2QjdCZ0N1QjtBUnNtTS9COztBcUM1bk1BO0VBQ0Usa0JBQWtCO0VBQ2xCLGdCQUFnQjtFQUVoQixtQkFBbUI7QXJDOG5NckI7O0FxQ2xvTUE7RUFTSSxrQkFBa0I7RUFDbEIsZ0JBQStFO0VBQy9FLGlCQUErRDtFQUMvRCxjQUFjO0VBQ2QsaUI3QjhCc0M7RTZCN0J0QyxrQjdCNkJzQztFNkI1QnRDLG9CQUFvQjtFQUNwQixXQUFXO0VBQ1gsNkI3QkdrQjtFNkJGbEIsMkMzQitJNkI7QVY4K0xqQzs7QXFDL29NQTtFQXdCSSxrQkFBa0I7RUFDbEIsZ0JBQStFO0VBQy9FLGlCQUErRDtFQUMvRCxjQUFjO0VBQ2QsaUI3QmVzQztFNkJkdEMsa0I3QmNzQztFNkJidEMsV0FBVztFQUNYLG1DQUFnRTtBckMybk1wRTs7QXFDbG5NQTtFckJqR0ksZ0JSZ0h1QztBUnVtTTNDOztBcUN0bk1BO0VBT00scU9iN0Q0RTtBeEJnck1sRjs7QXFDMW5NQTtFQWFNLHFCN0J4SFE7RW9CRlYseUJwQkVVO0FSMHVNZDs7QXFDL25NQTtFQWtCTSxrTGJ4RTRFO0F4QnlyTWxGOztBcUNub01BO0VUN0dJLHdDcEJFVTtBUmt2TWQ7O0FxQ3ZvTUE7RVQ3R0ksd0NwQkVVO0FSc3ZNZDs7QXFDdm1NQTtFQUdJLGtCM0J5WitDO0FWK3NMbkQ7O0FxQzNtTUE7RUFRTSxpTGJsRzRFO0F4QnlzTWxGOztBcUMvbU1BO0VUakpJLHdDcEJFVTtBUmt3TWQ7O0FxQzNsTUE7RUFDRSx3QkFBMkQ7QXJDOGxNN0Q7O0FxQy9sTUE7RUFLTSxpQkFBcUQ7RUFDckQsaUIzQmlZK0U7RTJCaFkvRSxtQkFBbUI7RUFFbkIseUIzQitYNEU7QVY4dExsRjs7QXFDdG1NQTtFQWFNLDRCYmxFMEQ7RWFtRTFELDZCYm5FMEQ7RWFvRTFELDZCYmhEMEQ7RWFpRDFELDhCYmpEMEQ7RWFrRDFELDJDN0IxTFM7RTZCNExULHlCM0JxWDRFO0VnQnZpQjVFLHlJaEJ5ZitIO0FWc3hMckk7O0EwQjN3TU07RVcySk47SVgxSlEsZ0JBQWdCO0UxQit3TXRCO0FBQ0Y7O0FxQ3RuTUE7RUEwQk0sNkI3QjFHZ0I7RTZCMkdoQixpQ0FBNEU7QXJDZ21NbEY7O0FxQzNuTUE7RVR6S0ksd0NwQkVVO0FSc3lNZDs7QXFDbGxNQTtFQUNFLHFCQUFxQjtFQUNyQixXQUFXO0VBQ1gsa0Nickc4RDtFYXNHOUQsZ0M3QnRLd0I7RUNxRXBCLGVBdENZO0U0QjBJaEIsZ0IzQjREK0I7RTJCM0QvQixnQjNCZ0UrQjtFMkIvRC9CLGM3QjlOYTtFNkIrTmIsc0JBQXNCO0VBQ3RCLCtCN0JqT2E7RTZCa09iLHVCN0JqT2E7RVFXWCxrQlJxSmU7RTZCb0VqQixnQkFBZ0I7QXJDbWxNbEI7O0FxQ2xtTUE7RUFrQkksbUI3QnZPVztFNkJ3T1gsVUFBVTtFQUtSLGdEN0I1T1E7QVI0ek1kOztBcUN4bU1BO0VBaUNNLGM3QnRQUztFNkJ1UFQsNkI3Qi9KZ0I7QVIwdU10Qjs7QXFDN21NQTtFQXdDSSxZQUFZO0VBQ1osbUI3QjNNc0I7RTZCNE10QixzQkFBc0I7QXJDeWtNMUI7O0FxQ25uTUE7RUE4Q0ksYzNCN1BjO0UyQjhQZCx5QjNCbFFjO0FWMjBNbEI7O0FxQ3huTUE7RUFvREksYUFBYTtBckN3a01qQjs7QXFDNW5NQTtFQXlESSxrQkFBa0I7RUFDbEIsMEI3Qi9RVztBUnMxTWY7O0FxQ25rTUE7RUFDRSxrQ2JqSzhEO0Vha0s5RCxvQjdCak84QjtFNkJrTzlCLHVCN0JsTzhCO0U2Qm1POUIscUI3QmxPOEI7RUNtRTFCLG1CQXRDWTtBVDR3TWxCOztBcUNua01BO0VBQ0UsZ0Nieks4RDtFYTBLOUQsbUIzQjZHaUM7RTJCNUdqQyxzQjNCNEdpQztFMkIzR2pDLGtCM0I0R2dDO0VEblI1QixrQkF0Q1k7QVRveE1sQjs7QXFDOWpNQTtFQUNFLGtCQUFrQjtFQUNsQixxQkFBcUI7RUFDckIsV0FBVztFQUNYLGtDYnpMOEQ7RWEwTDlELGdCQUFnQjtBckNpa01sQjs7QXFDOWpNQTtFQUNFLGtCQUFrQjtFQUNsQixVQUFVO0VBQ1YsV0FBVztFQUNYLGtDYmpNOEQ7RWFrTTlELFNBQVM7RUFDVCxnQkFBZ0I7RUFDaEIsVUFBVTtBckNpa01aOztBcUN4a01BO0VBVUksbUI3QjFUVztFNkIyVFgsNkM3QjVUVztBUjgzTWY7O0FxQzdrTUE7O0VBaUJJLDZCN0J2TzJCO0FSd3lNL0I7O0FxQ2xsTUE7RUFzQk0saUIzQjJUUTtBVnF3TGQ7O0FxQ3RsTUE7RUEyQkksMEJBQTBCO0FyQytqTTlCOztBcUMzak1BO0VBQ0Usa0JBQWtCO0VBQ2xCLE1BQU07RUFDTixRQUFRO0VBQ1IsT0FBTztFQUNQLFVBQVU7RUFDVixrQ2JsTzhEO0VhbU85RCxvQjdCblN3QjtFNkJvU3hCLGdCQUFnQjtFQUVoQixnQjNCakUrQjtFMkJrRS9CLGdCM0I3RCtCO0UyQjhEL0IsYzdCM1ZhO0U2QjRWYiw2QjdCcFFvQjtFNkJxUXBCLHVCN0I3VmE7RVFXWCxnQlJzRm1CO0FSMHpNdkI7O0FxQzVrTUE7RUFtQkksa0JBQWtCO0VBQ2xCLE1BQU07RUFDTixRQUFRO0VBQ1IsU0FBUztFQUNULFVBQVU7RUFDVixjQUFjO0VBQ2QsNEJiclA0RDtFYXNQNUQsb0I3QnRUc0I7RTZCdVR0QixnQjNCN0U2QjtFMkI4RTdCLGM3QjNXVztFNkI0V1gsaUJBQWlCO0VUN1dqQiw2QnBCNE84QjtFNkJtSTlCLG9CQUFvQjtFckJuV3BCLHNCcUJvV2dGO0FyQzZqTXBGOztBcUNuak1BO0VBQ0UsV0FBVztFQUNYLGNiM1EyQjtFYTRRM0IsVUFBVTtFQUNWLDZCQUE2QjtFQUM3QixnQkFBZ0I7QXJDc2pNbEI7O0FxQzNqTUE7RUFRSSxVQUFVO0FyQ3VqTWQ7O0FxQy9qTUE7RUFZOEIsZ0U3QnRZZjtBUjY3TWY7O0FxQ25rTUE7RUFhOEIsZ0U3QnZZZjtBUmk4TWY7O0FxQ3ZrTUE7RUFjOEIsZ0U3QnhZZjtBUnE4TWY7O0FxQzNrTUE7RUFrQkksU0FBUztBckM2ak1iOztBcUMva01BO0VBc0JJLFczQm1ONkM7RTJCbE43QyxZM0JrTjZDO0UyQmpON0Msb0JBQXlFO0VUbFp6RSx5QnBCRVU7RTZCa1pWLFMzQmtOMEM7RU0xbEIxQyxtQk4ybEI2QztFZ0I3bEIzQyw0R2hCeWYrSDtFMkIzR2pJLGdCQUFnQjtBckM0ak1wQjs7QTBCdDhNTTtFVzRXTjtJWDNXUSxnQkFBZ0I7RTFCMDhNdEI7QUFDRjs7QXFDaG1NQTtFVDFYSSx5QmxCMm1CMkU7QVZtM0wvRTs7QXFDcG1NQTtFQXNDSSxXM0I0TG9DO0UyQjNMcEMsYzNCNExxQztFMkIzTHJDLGtCQUFrQjtFQUNsQixlM0IyTHVDO0UyQjFMdkMseUIzQmhhYztFMkJpYWQseUJBQXlCO0VyQnpaekIsbUJOb2xCb0M7QVZ3NEx4Qzs7QXFDOW1NQTtFQWlESSxXM0J3TDZDO0UyQnZMN0MsWTNCdUw2QztFa0JubUI3Qyx5QnBCRVU7RTZCNGFWLFMzQndMMEM7RU0xbEIxQyxtQk4ybEI2QztFZ0I3bEIzQyw0R2hCeWYrSDtFMkJqRmpJLGdCQUFnQjtBckNna01wQjs7QTBCcCtNTTtFVzRXTjtJWDNXUSxnQkFBZ0I7RTFCdytNdEI7QUFDRjs7QXFDOW5NQTtFVDFYSSx5QmxCMm1CMkU7QVZpNUwvRTs7QXFDbG9NQTtFQWdFSSxXM0JrS29DO0UyQmpLcEMsYzNCa0txQztFMkJqS3JDLGtCQUFrQjtFQUNsQixlM0JpS3VDO0UyQmhLdkMseUIzQjFiYztFMkIyYmQseUJBQXlCO0VyQm5iekIsbUJOb2xCb0M7QVZzNkx4Qzs7QXFDNW9NQTtFQTJFSSxXM0I4SjZDO0UyQjdKN0MsWTNCNko2QztFMkI1SjdDLGFBQWE7RUFDYixvQjNCdEUrQjtFMkJ1RS9CLG1CM0J2RStCO0VrQmxZL0IseUJwQkVVO0U2QnljVixTM0IySjBDO0VNMWxCMUMsbUJOMmxCNkM7RWdCN2xCM0MsNEdoQnlmK0g7RTJCcERqSSxnQkFBZ0I7QXJDb2tNcEI7O0EwQnJnTk07RVc0V047SVgzV1EsZ0JBQWdCO0UxQnlnTnRCO0FBQ0Y7O0FxQy9wTUE7RVQxWEkseUJsQjJtQjJFO0FWazdML0U7O0FxQ25xTUE7RUE2RkksVzNCcUlvQztFMkJwSXBDLGMzQnFJcUM7RTJCcElyQyxrQkFBa0I7RUFDbEIsZTNCb0l1QztFMkJuSXZDLDZCQUE2QjtFQUM3Qix5QkFBeUI7RUFDekIsb0JBQTRDO0FyQzBrTWhEOztBcUM3cU1BO0VBd0dJLHlCM0I5ZGM7RU1RZCxtQk5vbEJvQztBVjQ4THhDOztBcUNsck1BO0VBNkdJLGtCQUFrQjtFQUNsQix5QjNCcGVjO0VNUWQsbUJOb2xCb0M7QVZrOUx4Qzs7QXFDeHJNQTtFQW9ITSx5QjNCeGVZO0FWZ2pObEI7O0FxQzVyTUE7RUF3SE0sZUFBZTtBckN3a01yQjs7QXFDaHNNQTtFQTRITSx5QjNCaGZZO0FWd2pObEI7O0FxQ3BzTUE7RUFnSU0sZUFBZTtBckN3a01yQjs7QXFDeHNNQTtFQW9JTSx5QjNCeGZZO0FWZ2tObEI7O0FxQ25rTUE7OztFWHpmTSw0R2hCeWYrSDtBVnlrTXJJOztBMEI5ak5NO0VXcWZOOzs7SVhwZlEsZ0JBQWdCO0UxQm9rTnRCO0FBQ0Y7O0FzQ3JsTkE7RUFDRSxhQUFhO0VBQ2IsZUFBZTtFQUNmLGVBQWU7RUFDZixnQkFBZ0I7RUFDaEIsZ0JBQWdCO0F0Q3dsTmxCOztBc0NybE5BO0VBQ0UsY0FBYztFQUNkLG9COUJnVHlCO0FSd3lNM0I7O0FXdmxORTtFMkJHRSxxQkFBcUI7QXRDd2xOekI7O0FzQzlsTkE7RUFXSSwrQjlCbEJXO0U4Qm1CWCxvQkFBb0I7RUFDcEIsZUFBZTtBdEN1bE5uQjs7QXNDL2tOQTtFQUNFLGtEOUI3QmE7QVIrbU5mOztBc0NubE5BO0VBSUksbUI5QnFSdUI7RThCcFJ2Qiw2QkFBZ0Q7RXRCWmhELHlCUmlTc0I7RVFoU3RCLDBCUmdTc0I7QVJnME0xQjs7QVc1bU5FO0UyQjJCSSx1RDlCckNTO0FSMG5OZjs7QXNDOWxOQTtFQWFNLCtCOUJ6Q1M7RThCMENULDZCQUE2QjtFQUM3Qix5QkFBeUI7QXRDcWxOL0I7O0FzQ3BtTkE7O0VBcUJJLGM5QmpEVztFOEJrRFgsNkI5QnlRaUM7RThCeFFqQyx5QzlCd1FpQztBUjQwTXJDOztBc0MzbU5BO0VBNEJJLGdCOUI2UHVCO0VRaFN2Qix5QnNCcUM0QjtFdEJwQzVCLDBCc0JvQzRCO0F0Q21sTmhDOztBc0Mxa05BO0V0QnZESSxrQlJxSmU7QVJnL01uQjs7QXNDOWtOQTs7RUFPSSxjOUIxRVc7RThCMkVYLDJDOUIzRVc7QVJ1cE5mOztBc0Nua05BOztFQUdJLGNBQWM7RUFDZCxrQkFBa0I7QXRDcWtOdEI7O0FzQ2prTkE7O0VBR0ksYUFBYTtFQUNiLFlBQVk7RUFDWixrQkFBa0I7QXRDbWtOdEI7O0FzQzFqTkE7RUFFSSxhQUFhO0F0QzRqTmpCOztBc0M5ak5BO0VBS0ksY0FBYztBdEM2ak5sQjs7QXVDanFOQTtFQUNFLGtCQUFrQjtFQUNsQixhQUFhO0VBQ2IsZUFBZTtFQUNmLG1CQUFtQjtFQUNuQiw4QkFBOEI7RUFDOUIsb0I3QmdIVztBVm9qTmI7O0F1QzFxTkE7O0VBV0ksYUFBYTtFQUNiLGVBQWU7RUFDZixtQkFBbUI7RUFDbkIsOEJBQThCO0F2Q29xTmxDOztBdUNocE5BO0VBQ0UscUJBQXFCO0VBQ3JCLHNCN0JpcUIrRTtFNkJocUIvRSx5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Qyt0TmpDO0V1Q3B2Tkc7SUF3QkssbUJBQW1CO0V2Qyt0TjNCO0V1Q3Z2Tkc7SUEyQk8sa0JBQWtCO0V2Qyt0TjVCO0V1QzF2Tkc7SUErQk8scUI3QndoQjZCO0k2QnZoQjdCLG9CN0J1aEI2QjtFVnVzTXZDO0V1Qzl2Tkc7O0lBc0NLLGlCQUFpQjtFdkM0dE56QjtFdUNsd05HO0lBcURLLGlCQUFpQjtFdkNndE56QjtFdUNyd05HO0lBeURLLHdCQUF3QjtJQUd4QixnQkFBZ0I7RXZDNnNOeEI7RXVDendORztJQWdFSyxhQUFhO0V2QzRzTnJCO0FBQ0Y7O0F1Q2x4TkE7RUF5QlEscUJBQXFCO0VBQ3JCLDJCQUEyQjtBdkM2dk5uQzs7QXVDdnhOQTs7RUFRVSxnQkFBZ0I7RUFDaEIsZUFBZTtBdkNveE56Qjs7QXVDN3hOQTtFQTZCVSxtQkFBbUI7QXZDb3dON0I7O0F1Q2p5TkE7RUFnQ1ksa0JBQWtCO0F2Q3F3TjlCOztBdUNyeU5BO0VBb0NZLHFCN0J3aEI2QjtFNkJ2aEI3QixvQjdCdWhCNkI7QVY4dU16Qzs7QXVDMXlOQTs7RUEyQ1UsaUJBQWlCO0F2Q293TjNCOztBdUMveU5BO0VBMERVLGlCQUFpQjtBdkN5dk4zQjs7QXVDbnpOQTtFQThEVSx3QkFBd0I7RUFHeEIsZ0JBQWdCO0F2Q3V2TjFCOztBdUN4ek5BO0VBcUVVLGFBQWE7QXZDdXZOdkI7O0F1QzF1TkE7RUFFSSx5Qi9Cak9XO0FSNjhOZjs7QVdwOE5FO0U0QjJOSSx5Qi9CcE9TO0FSaTlOZjs7QXVDbHZOQTtFQVdNLHlCL0IxT1M7QVJxOU5mOztBVzU4TkU7RTRCb09NLHlCL0I3T087QVJ5OU5mOztBdUMxdk5BO0VBa0JRLHlCL0JqUE87QVI2OU5mOztBdUM5dk5BOzs7O0VBMEJNLHlCL0J6UFM7QVJvK05mOztBdUNyd05BO0VBK0JJLHlCL0I5UFc7RStCK1BYLGdDL0IvUFc7QVJ5K05mOztBdUMxd05BO0VBb0NJLG1SZjdNOEU7QXhCdTdObEY7O0F1Qzl3TkE7RUF3Q0kseUIvQnZRVztBUmkvTmY7O0F1Q2x4TkE7RUEwQ00seUIvQnpRUztBUnEvTmY7O0FXNStORTtFNEJtUU0seUIvQjVRTztBUnkvTmY7O0F1Q3R1TkE7RUFFSSxjL0J0Ulc7QVI4L05mOztBV3AvTkU7RTRCK1FJLGMvQnpSUztBUmtnT2Y7O0F1Qzl1TkE7RUFXTSwrQi9CL1JTO0FSc2dPZjs7QVc1L05FO0U0QndSTSxnQy9CbFNPO0FSMGdPZjs7QXVDdHZOQTtFQWtCUSxnQy9CdFNPO0FSOGdPZjs7QXVDMXZOQTs7OztFQTBCTSxjL0I5U1M7QVJxaE9mOztBdUNqd05BO0VBK0JJLCtCL0JuVFc7RStCb1RYLHNDL0JwVFc7QVIwaE9mOztBdUN0d05BO0VBb0NJLHlSZmpROEU7QXhCdStObEY7O0F1QzF3TkE7RUF3Q0ksK0IvQjVUVztBUmtpT2Y7O0F1Qzl3TkE7RUEwQ00sYy9COVRTO0FSc2lPZjs7QVc1aE9FO0U0QnVUTSxjL0JqVU87QVIwaU9mOztBd0M1aU9BO0VBQ0Usa0JBQWtCO0VBQ2xCLGFBQWE7RUFDYixzQkFBc0I7RUFDdEIsWUFBWTtFQUVaLHFCQUFxQjtFQUNyQixvQ2hDSmE7RWdDS2IsMkJBQTJCO0VBQzNCLDZCaENnTDZCO0VRM0szQixrQlJxSmU7QVJxNU5uQjs7QXdDeGpPQTtFQWFJLGVBQWU7RUFDZixjQUFjO0F4QytpT2xCOztBd0M3ak9BO0VBa0JJLG1CQUFtQjtFQUNuQixzQkFBc0I7QXhDK2lPMUI7O0F3Q2xrT0E7RUFzQk0sbUJBQW1CO0V4QkNyQiwyQlI0SWU7RVEzSWYsNEJSMkllO0FScTZObkI7O0F3Q3hrT0E7RUEyQk0sc0JBQXNCO0V4QlV4QiwrQlI4SGU7RVE3SGYsOEJSNkhlO0FSMjZObkI7O0F3QzlrT0E7O0VBb0NJLGFBQWE7QXhDK2lPakI7O0F3QzNpT0E7RUFHRSxjQUFjO0VBR2QsZUFBZTtFQUNmLGVoQzRJb0I7QVI4NU50Qjs7QXdDdGlPQTtFQUNFLHFCaEN3SW9CO0FSaTZOdEI7O0F3Q3RpT0E7RUFDRSxvQkFBK0I7RUFDL0IsZ0JBQWdCO0F4Q3lpT2xCOztBd0N0aU9BO0VBQ0UsZ0JBQWdCO0F4Q3lpT2xCOztBVzlsT0U7RTZCMERFLHFCQUFxQjtBeEN3aU96Qjs7QXdDMWlPQTtFQU1JLG1CaENxSGtCO0FSbTdOdEI7O0F3Q2hpT0E7RUFDRSxzQmhDNEdvQjtFZ0MzR3BCLGdCQUFnQjtFQUVoQixzQ2hDL0VhO0VnQ2dGYixvQ2hDc0c2QjtBUjQ3Ti9COztBd0N2aU9BO0V4QmhFSSwwQndCd0U4RTtBeENtaU9sRjs7QXdDL2hPQTtFQUNFLHNCaENnR29CO0VnQzlGcEIsc0NoQzFGYTtFZ0MyRmIsaUNoQzJGNkI7QVJzOE4vQjs7QXdDcmlPQTtFeEI1RUksMEJScUplO0FSZytObkI7O0F3Q3poT0E7RUFDRSxxQkFBaUM7RUFDakMsc0JoQ2dGb0I7RWdDL0VwQixvQkFBZ0M7RUFDaEMsZ0JBQWdCO0F4QzRoT2xCOztBd0N6aE9BO0VBQ0UscUJBQWlDO0VBQ2pDLG9CQUFnQztBeEM0aE9sQzs7QXdDeGhPQTtFQUNFLGtCQUFrQjtFQUNsQixNQUFNO0VBQ04sUUFBUTtFQUNSLFNBQVM7RUFDVCxPQUFPO0VBQ1AsVWhDaUUwQjtFUWhMeEIsa0JScUplO0FScy9ObkI7O0F3Q3hoT0E7OztFQUdFLGNBQWM7RUFDZCxXQUFXO0F4QzJoT2I7O0F3Q3hoT0E7O0V4QmpISSwyQlI0SWU7RVEzSWYsNEJSMkllO0FSbWdPbkI7O0F3Q3poT0E7O0V4QnhHSSwrQlI4SGU7RVE3SGYsOEJSNkhlO0FSeWdPbkI7O0F3Q3ZoT0E7RUFFSSxtQjlCbXJCc0Q7QVZzMk0xRDs7QW9CeG5PSTtFb0I2Rko7SUFNSSxhQUFhO0lBQ2IsbUJBQW1CO0lBQ25CLG1COUI2cUJzRDtJOEI1cUJ0RCxrQjlCNHFCc0Q7RVY4Mk14RDtFd0NuaU9GO0lBYU0sWUFBWTtJQUNaLGtCOUJ1cUJvRDtJOEJ0cUJwRCxnQkFBZ0I7SUFDaEIsaUI5QnFxQm9EO0VWbzNNeEQ7QUFDRjs7QXdDaGhPQTtFQUlJLG1COUJ1cEJzRDtBVnkzTTFEOztBb0Izb09JO0VvQnVISjtJQVFJLGFBQWE7SUFDYixtQkFBbUI7RXhDaWhPckI7RXdDMWhPRjtJQWNNLFlBQVk7SUFDWixnQkFBZ0I7RXhDK2dPcEI7RXdDOWhPRjtJQWtCUSxjQUFjO0lBQ2QsY0FBYztFeEMrZ09wQjtFd0NsaU9GO0l4QmpKSSwwQndCMEtvQztJeEJ6S3BDLDZCd0J5S29DO0V4QzZnT3RDO0V3Q3RpT0Y7O0lBOEJZLDBCQUEwQjtFeEM0Z09wQztFd0MxaU9GOztJQW1DWSw2QkFBNkI7RXhDMmdPdkM7RXdDOWlPRjtJeEJuSUkseUJ3QjJLbUM7SXhCMUtuQyw0QndCMEttQztFeEMwZ09yQztFd0Nsak9GOztJQTZDWSx5QkFBeUI7RXhDeWdPbkM7RXdDdGpPRjs7SUFrRFksNEJBQTRCO0V4Q3dnT3RDO0FBQ0Y7O0F3QzUvTkE7RUFFSSxxQmhDaER3QjtBUjhpTzVCOztBb0J0ck9JO0VvQnNMSjtJQU1JLGU5QnlsQmlDO0k4QnhsQmpDLG1COUJ5bEJ1QztJOEJ4bEJ2QyxVQUFVO0lBQ1YsU0FBUztFeEMrL05YO0V3Q3hnT0Y7SUFZTSxxQkFBcUI7SUFDckIsV0FBVztFeEMrL05mO0FBQ0Y7O0F3Q3QvTkE7RUFDRSxxQkFBcUI7QXhDeS9OdkI7O0F3QzEvTkE7RUFJSSxnQkFBZ0I7QXhDMC9OcEI7O0F3QzkvTkE7RUFPTSxnQkFBZ0I7RXhCdk9sQiw2QndCd09pQztFeEJ2T2pDLDRCd0J1T2lDO0F4QzQvTnJDOztBd0NwZ09BO0V4QjlPSSx5QndCMFA4QjtFeEJ6UDlCLDBCd0J5UDhCO0F4QzYvTmxDOztBd0N6Z09BO0V4QnZQSSxnQndCdVEwQjtFQUN4QixtQjlCOUMyQjtBVjJpT2pDOztBeUN2eE9BO0VBQ0UsYUFBYTtFQUNiLGVBQWU7RUFDZix3QmpDaVI0QjtFaUNoUjVCLG1CL0JtaUNzQztFK0JqaUN0QyxnQkFBZ0I7RUFDaEIsNkJqQzRReUI7RVFqUXZCLGtCUnFKZTtBUjBuT25COztBeUN0eE9BO0VBR0ksb0IvQnVoQ3FDO0FWZ3dNekM7O0F5QzF4T0E7RUFNTSxXQUFXO0VBQ1gscUIvQm1oQ21DO0UrQmxoQ25DLCtCakNiUztFaUNjVCxZL0J3aEN1QztBVmd3TTdDOztBeUNqeU9BO0VBb0JJLDBCQUEwQjtBekNpeE85Qjs7QXlDcnlPQTtFQXdCSSxxQkFBcUI7QXpDaXhPekI7O0F5Q3p5T0E7RUE0QkksY2pDakNXO0FSa3pPZjs7QTBDeHpPQTtFQUNFLGFBQWE7RTdCR2IsZUFBZTtFQUNmLGdCQUFnQjtFR2FkLGtCUnFKZTtBUndwT25COztBMEN6ek9BO0VBQ0Usa0JBQWtCO0VBQ2xCLGNBQWM7RUFDZCxZbEMyTnNCO0VrQzFOdEIsY2xDd055QjtFa0N2TnpCLGlCaENteEJzQztFZ0NseEJ0QyxjbENMYTtFa0NPYiwyQ2xDUmE7RWtDU2IsdUJoQ0xnQjtBVmcwT2xCOztBMENwME9BO0VBWUksVUFBVTtFQUNWLGNsQ1pXO0VrQ2FYLHFCQUFxQjtFQUNyQiwwQ2xDZlc7RWtDZ0JYLHFCaENaYztBVncwT2xCOztBMEM1ME9BO0VBb0JJLFVBQVU7RUFDVixVaEMyd0JpQztFZ0Mxd0JqQyxnQmxDaU44QjtBUjJtT2xDOztBMEN4ek9BO0VBR00sY0FBYztFMUJhaEIsMkJSdUhlO0VRdEhmLDhCUnNIZTtBUnVyT25COztBMEM5ek9BO0UxQkVJLDRCUnFJZTtFUXBJZiwrQlJvSWU7QVI0ck9uQjs7QTBDbjBPQTtFQWNJLFVBQVU7RUFDVixjbEN4Q1c7RWtDeUNYLG9DbEN6Q1c7RWtDMENYLGdDbEMxQ1c7QVJtMk9mOztBMEMxME9BO0VBcUJJLGNsQzlDVztFa0MrQ1gsb0JBQW9CO0VBRXBCLFlBQVk7RUFDWiwyQ2xDbkRXO0VrQ29EWCxxQmhDaERjO0FWdzJPbEI7O0EyQy8yT0U7RUFDRSx1QmpDeXhCc0M7RUQ5cEJwQyxrQkF0Q1k7RWtDbkZkLGdCakNtTzZCO0FWK29PakM7O0EyQzcyT007RTNCcUNGLDJCUndIa0I7RVF2SGxCLDhCUnVIa0I7QVJxdE90Qjs7QTJDNzJPTTtFM0JrQkYsNEJSc0lrQjtFUXJJbEIsK0JScUlrQjtBUjB0T3RCOztBMkMvM09FO0VBQ0UsdUJqQ3V4QnFDO0VENXBCbkMsbUJBdENZO0VrQ25GZCxnQmpDb082QjtBVjhwT2pDOztBMkM3M09NO0UzQnFDRiwyQlJ5SGtCO0VReEhsQiw4QlJ3SGtCO0FSb3VPdEI7O0EyQzczT007RTNCa0JGLDRCUnVJa0I7RVF0SWxCLCtCUnNJa0I7QVJ5dU90Qjs7QTRDNzRPQTtFQUNFLHFCQUFxQjtFQUNyQixxQnBDcVFzQjtFQ3BNcEIsY0FBVztFbUMvRGIsZ0JwQ3FRcUI7RW9DcFFyQixjQUFjO0VBQ2Qsa0JBQWtCO0VBQ2xCLG1CQUFtQjtFQUNuQix3QkFBd0I7RTVCS3RCLGtCUnFKZTtFa0J2SmIscUloQmdiNkk7QVYrOU5uSjs7QTBCMzRPTTtFa0JmTjtJbEJnQlEsZ0JBQWdCO0UxQis0T3RCO0FBQ0Y7O0FXcjVPRTtFaUNHSSxxQkFBcUI7QTVDczVPM0I7O0E0Q3A2T0E7RUFvQkksYUFBYTtBNUNvNU9qQjs7QTRDLzRPQTtFQUNFLGtCQUFrQjtFQUNsQixTQUFTO0E1Q2s1T1g7O0E0QzM0T0E7RUFDRSxrQnBDdU93QjtFb0N0T3hCLGlCcENzT3dCO0VRN1B0QixvQk53NUJxQztBVjhnTnpDOztBNEN0NE9FO0VDakRBLGNyQ0thO0VxQ0piLHlCckNNWTtBUnE3T2Q7O0FXNzZPRTtFa0NWSSxjckNBUztFcUNDVCx5QkFBa0M7QTdDMjdPeEM7O0E2Qzk3T1U7RUFRSixVQUFVO0VBQ1YsK0NyQ0xRO0FSKzdPZDs7QTRDcjVPRTtFQ2pEQSxjckNLYTtFcUNKYix5Qm5DV2dCO0FWKzdPbEI7O0FXNTdPRTtFa0NWSSxjckNBUztFcUNDVCx5QkFBa0M7QTdDMDhPeEM7O0E2Qzc4T1U7RUFRSixVQUFVO0VBQ1YsaURuQ0FZO0FWeThPbEI7O0E0Q3A2T0U7RUNqREEsY3JDS2E7RXFDSmIseUJyQ2FhO0FSNDhPZjs7QVczOE9FO0VrQ1ZJLGNyQ0FTO0VxQ0NULHlCQUFrQztBN0N5OU94Qzs7QTZDNTlPVTtFQVFKLFVBQVU7RUFDViwrQ3JDRVM7QVJzOU9mOztBNENuN09FO0VDakRBLGNyQ0thO0VxQ0piLHlCckNlWTtBUnk5T2Q7O0FXMTlPRTtFa0NWSSxjckNBUztFcUNDVCx5QkFBa0M7QTdDdytPeEM7O0E2QzMrT1U7RUFRSixVQUFVO0VBQ1YsZ0RyQ0lRO0FSbStPZDs7QTRDbDhPRTtFQ2pEQSxjbkNlZ0I7RW1DZGhCLHlCckNZYztBUjIrT2hCOztBV3orT0U7RWtDVkksY25DVVk7RW1DVFoseUJBQWtDO0E3Q3UvT3hDOztBNkMxL09VO0VBUUosVUFBVTtFQUNWLCtDckNDVTtBUnEvT2hCOztBNENqOU9FO0VDakRBLGNyQ0thO0VxQ0piLHlCckNVVztBUjQvT2I7O0FXeC9PRTtFa0NWSSxjckNBUztFcUNDVCx5QkFBa0M7QTdDc2dQeEM7O0E2Q3pnUFU7RUFRSixVQUFVO0VBQ1YsK0NyQ0RPO0FSc2dQYjs7QTRDaCtPRTtFQ2pEQSxjbkNlZ0I7RW1DZGhCLHlCbkNNZ0I7QVYrZ1BsQjs7QVd2Z1BFO0VrQ1ZJLGNuQ1VZO0VtQ1RaLHlCQUFrQztBN0NxaFB4Qzs7QTZDeGhQVTtFQVFKLFVBQVU7RUFDVixpRG5DTFk7QVZ5aFBsQjs7QTRDLytPRTtFQ2pEQSxjckNLYTtFcUNKYix5Qm5DYWdCO0FWdWhQbEI7O0FXdGhQRTtFa0NWSSxjckNBUztFcUNDVCx5QkFBa0M7QTdDb2lQeEM7O0E2Q3ZpUFU7RUFRSixVQUFVO0VBQ1YsOENuQ0VZO0FWaWlQbEI7O0E4Q2hqUEE7RUFDRSxrQkFBb0Q7RUFDcEQsbUJwQ3V6QnNDO0VvQ3J6QnRDLDJDdENFYTtFUVlYLGtCUnNKa0I7QVIrNE90Qjs7QW9CMy9PSTtFMEI1REo7SUFRSSxrQnBDaXpCb0M7RVZtd050QztBQUNGOztBOENqalBBO0VBQ0UsZ0JBQWdCO0VBQ2hCLGVBQWU7RTlCSWIsZ0I4QkhzQjtBOUNvalAxQjs7QStDL2pQQTtFQUNFLGtCQUFrQjtFQUNsQixvQnZDeVBvQjtFdUN4UHBCLG1CckN1OUJzQztFcUN0OUJ0QywyQkFBNkM7RS9CVTNDLGtCUnFKZTtBUm82T25COztBK0M5alBBO0VBRUUsY0FBYztBL0Nna1BoQjs7QStDNWpQQTtFQUNFLG1CdkM0TzZCO0FSbTFPL0I7O0ErQ3ZqUEE7RUFDRSxxQkFBc0Q7QS9DMGpQeEQ7O0ErQzNqUEE7RUFLSSxrQkFBa0I7RUFDbEIsTUFBTTtFQUNOLFFBQVE7RUFDUixVQUFVO0VBQ1Ysb0J2QzBOa0I7RXVDek5sQixjQUFjO0EvQzBqUGxCOztBK0NoalBFO0VDL0NBLGN4QndHZ0U7RUluRzlELHlCSm1HOEQ7RXdCdEdoRSxxQnhCc0dnRTtBeEI2L09sRTs7QWdEam1QRTtFQUNFLHlCQUFxQztBaERvbVB6Qzs7QWdEam1QRTtFQUNFLGNBQTBCO0FoRG9tUDlCOztBK0M5alBFO0VDL0NBLGN4QndHZ0U7RUluRzlELHlCSm1HOEQ7RXdCdEdoRSxxQnhCc0dnRTtBeEIyZ1BsRTs7QWdEL21QRTtFQUNFLHlCQUFxQztBaERrblB6Qzs7QWdEL21QRTtFQUNFLGNBQTBCO0FoRGtuUDlCOztBK0M1a1BFO0VDL0NBLGN4QndHZ0U7RUluRzlELHlCSm1HOEQ7RXdCdEdoRSxxQnhCc0dnRTtBeEJ5aFBsRTs7QWdEN25QRTtFQUNFLHlCQUFxQztBaERnb1B6Qzs7QWdEN25QRTtFQUNFLGNBQTBCO0FoRGdvUDlCOztBK0MxbFBFO0VDL0NBLGN4QndHZ0U7RUluRzlELHlCSm1HOEQ7RXdCdEdoRSxxQnhCc0dnRTtBeEJ1aVBsRTs7QWdEM29QRTtFQUNFLHlCQUFxQztBaEQ4b1B6Qzs7QWdEM29QRTtFQUNFLGNBQTBCO0FoRDhvUDlCOztBK0N4bVBFO0VDL0NBLGN4QndHZ0U7RUluRzlELHlCSm1HOEQ7RXdCdEdoRSxxQnhCc0dnRTtBeEJxalBsRTs7QWdEenBQRTtFQUNFLHlCQUFxQztBaEQ0cFB6Qzs7QWdEenBQRTtFQUNFLGNBQTBCO0FoRDRwUDlCOztBK0N0blBFO0VDL0NBLGN4QndHZ0U7RUluRzlELHlCSm1HOEQ7RXdCdEdoRSxxQnhCc0dnRTtBeEJta1BsRTs7QWdEdnFQRTtFQUNFLHlCQUFxQztBaEQwcVB6Qzs7QWdEdnFQRTtFQUNFLGNBQTBCO0FoRDBxUDlCOztBK0Nwb1BFO0VDL0NBLGN4QndHZ0U7RUluRzlELHlCSm1HOEQ7RXdCdEdoRSxxQnhCc0dnRTtBeEJpbFBsRTs7QWdEcnJQRTtFQUNFLHlCQUFxQztBaER3clB6Qzs7QWdEcnJQRTtFQUNFLGNBQTBCO0FoRHdyUDlCOztBK0NscFBFO0VDL0NBLGN4QndHZ0U7RUluRzlELHlCSm1HOEQ7RXdCdEdoRSxxQnhCc0dnRTtBeEIrbFBsRTs7QWdEbnNQRTtFQUNFLHlCQUFxQztBaERzc1B6Qzs7QWdEbnNQRTtFQUNFLGNBQTBCO0FoRHNzUDlCOztBaUQ5c1BFO0VBQ0U7SUFBTywwQkFBdUM7RWpEa3RQaEQ7RWlEanRQRTtJQUFLLHdCQUF3QjtFakRvdFAvQjtBQUNGOztBaURqdFBBO0VBQ0UsYUFBYTtFQUNiLFd6QzRLbUI7RXlDM0tuQixnQkFBZ0I7RUFDaEIsY0FBYztFeENtSFYsa0JBdENZO0V3QzNFaEIsMEN6Q1JhO0VRWVgsa0JScUplO0FSNGpQbkI7O0FpRGh0UEE7RUFDRSxhQUFhO0VBQ2Isc0JBQXNCO0VBQ3RCLHVCQUF1QjtFQUN2QixnQkFBZ0I7RUFDaEIsY3pDbEJhO0V5Q21CYixrQkFBa0I7RUFDbEIsbUJBQW1CO0VBQ25CLHlCekNyQmE7RWtCVVQsMkJoQmsrQjRDO0FWNnZObEQ7O0EwQjN0UE07RXVCRE47SXZCRVEsZ0JBQWdCO0UxQit0UHRCO0FBQ0Y7O0FpRHR0UEE7RXJCWUUscU1BQTZJO0VxQlY3SSx3QnpDcUptQjtBUm9rUHJCOztBaURydFBFO0VBQ0Usa0RBQThEO0FqRHd0UGxFOztBaURydFBNO0VBSko7SUFLTSxlQUFlO0VqRHl0UHJCO0FBQ0Y7O0FrRHB3UEE7RUFDRSxhQUFhO0VBQ2IsdUJBQXVCO0FsRHV3UHpCOztBa0Rwd1BBO0VBQ0UsT0FBTztBbER1d1BUOztBbUR6d1BBO0VBQ0UsYUFBYTtFQUNiLHNCQUFzQjtFQUd0QixlQUFlO0VBQ2YsZ0JBQWdCO0VuQ1FkLGtCUnFKZTtBUjhtUG5COztBbURqd1BBO0VBQ0UsV0FBVztFQUNYLGN6Q1JnQjtFeUNTaEIsbUJBQW1CO0FuRG93UHJCOztBVzN3UEU7RXdDV0UsVUFBVTtFQUNWLGN6Q2RjO0V5Q2VkLHFCQUFxQjtFQUNyQiwyQzNDeEJXO0FSNHhQZjs7QW1EOXdQQTtFQWNJLGMzQzNCVztFMkM0QlgseUJ6QzFCYztBVjh4UGxCOztBbUQzdlBBO0VBQ0Usa0JBQWtCO0VBQ2xCLGNBQWM7RUFDZCxrQjNDaUk4QjtFMkM5SDlCLDZCM0MySHlCO0UyQzFIekIsb0MzQzVDYTtBUnd5UGY7O0FtRG53UEE7RW5DakJJLCtCbUMyQmtDO0VuQzFCbEMsZ0NtQzBCa0M7QW5EOHZQdEM7O0FtRHh3UEE7RW5DSEksbUNtQ2lCcUM7RW5DaEJyQyxrQ21DZ0JxQztBbkQrdlB6Qzs7QW1EN3dQQTtFQW1CSSxjekNsRGM7RXlDbURkLG9CQUFvQjtFQUNwQiw2QjNDNEd1QjtBUmtwUDNCOztBbURueFBBO0VBMEJJLFVBQVU7RUFDVixjM0NqRVc7RTJDa0VYLHlCM0NoRVU7RTJDaUVWLHFCM0NqRVU7QVI4elBkOztBbUQxeFBBO0VBaUNJLG1CQUFtQjtBbkQ2dlB2Qjs7QW1EOXhQQTtFQW9DTSxhM0M4RnFCO0UyQzdGckIsbUIzQzZGcUI7QVJpcVAzQjs7QW1EaHZQSTtFQUNFLG1CQUFtQjtBbkRtdlB6Qjs7QW1EcHZQSTtFbkN0QkEsOEJSOEZlO0VRMUdmLDBCbUN3Q3dDO0FuRG12UDVDOztBbUR6dlBJO0VuQ2xDQSw0QlIwR2U7RVE5RmYsNEJtQ2lDMEM7QW5EbXZQOUM7O0FtRDl2UEk7RUFlTSxhQUFhO0FuRG12UHZCOztBbURsd1BJO0VBbUJNLG1CM0M0RGlCO0UyQzNEakIsb0JBQW9CO0FuRG12UDlCOztBbUR2d1BJO0VBdUJRLGMzQ3dEZTtFMkN2RGYsb0IzQ3VEZTtBUjZyUDNCOztBb0IveVBJO0UrQm1DQTtJQUNFLG1CQUFtQjtFbkRneFB2QjtFbURqeFBFO0luQ3RCQSw4QlI4RmU7SVExR2YsMEJtQ3dDd0M7RW5EK3dQMUM7RW1EcnhQRTtJbkNsQ0EsNEJSMEdlO0lROUZmLDRCbUNpQzBDO0VuRDh3UDVDO0VtRHp4UEU7SUFlTSxhQUFhO0VuRDZ3UHJCO0VtRDV4UEU7SUFtQk0sbUIzQzREaUI7STJDM0RqQixvQkFBb0I7RW5ENHdQNUI7RW1EaHlQRTtJQXVCUSxjM0N3RGU7STJDdkRmLG9CM0N1RGU7RVJxdFB6QjtBQUNGOztBb0J4MFBJO0UrQm1DQTtJQUNFLG1CQUFtQjtFbkR5eVB2QjtFbUQxeVBFO0luQ3RCQSw4QlI4RmU7SVExR2YsMEJtQ3dDd0M7RW5Ed3lQMUM7RW1EOXlQRTtJbkNsQ0EsNEJSMEdlO0lROUZmLDRCbUNpQzBDO0VuRHV5UDVDO0VtRGx6UEU7SUFlTSxhQUFhO0VuRHN5UHJCO0VtRHJ6UEU7SUFtQk0sbUIzQzREaUI7STJDM0RqQixvQkFBb0I7RW5EcXlQNUI7RW1EenpQRTtJQXVCUSxjM0N3RGU7STJDdkRmLG9CM0N1RGU7RVI4dVB6QjtBQUNGOztBb0JqMlBJO0UrQm1DQTtJQUNFLG1CQUFtQjtFbkRrMFB2QjtFbURuMFBFO0luQ3RCQSw4QlI4RmU7SVExR2YsMEJtQ3dDd0M7RW5EaTBQMUM7RW1EdjBQRTtJbkNsQ0EsNEJSMEdlO0lROUZmLDRCbUNpQzBDO0VuRGcwUDVDO0VtRDMwUEU7SUFlTSxhQUFhO0VuRCt6UHJCO0VtRDkwUEU7SUFtQk0sbUIzQzREaUI7STJDM0RqQixvQkFBb0I7RW5EOHpQNUI7RW1EbDFQRTtJQXVCUSxjM0N3RGU7STJDdkRmLG9CM0N1RGU7RVJ1d1B6QjtBQUNGOztBb0IxM1BJO0UrQm1DQTtJQUNFLG1CQUFtQjtFbkQyMVB2QjtFbUQ1MVBFO0luQ3RCQSw4QlI4RmU7SVExR2YsMEJtQ3dDd0M7RW5EMDFQMUM7RW1EaDJQRTtJbkNsQ0EsNEJSMEdlO0lROUZmLDRCbUNpQzBDO0VuRHkxUDVDO0VtRHAyUEU7SUFlTSxhQUFhO0VuRHcxUHJCO0VtRHYyUEU7SUFtQk0sbUIzQzREaUI7STJDM0RqQixvQkFBb0I7RW5EdTFQNUI7RW1EMzJQRTtJQXVCUSxjM0N3RGU7STJDdkRmLG9CM0N1RGU7RVJneVB6QjtBQUNGOztBbUQxMFBBO0VuQ25ISSxnQm1Db0hzQjtBbkQ2MFAxQjs7QW1EOTBQQTtFQUlJLG1CM0NxQ3VCO0FSeXlQM0I7O0FtRGwxUEE7RUFPTSxzQkFBc0I7QW5EKzBQNUI7O0FvRHg5UEU7RUFDRSxjNUJxRzhEO0U0QnBHOUQseUI1Qm9HOEQ7QXhCdTNQbEU7O0FXaDlQRTtFeUNQTSxjNUJnRzBEO0U0Qi9GMUQseUJBQXlDO0FwRDI5UGpEOztBb0RsK1BFO0VBV00sYzVDUk87RTRDU1AseUI1QjBGMEQ7RTRCekYxRCxxQjVCeUYwRDtBeEJrNFBsRTs7QW9EeCtQRTtFQUNFLGM1QnFHOEQ7RTRCcEc5RCx5QjVCb0c4RDtBeEJ1NFBsRTs7QVdoK1BFO0V5Q1BNLGM1QmdHMEQ7RTRCL0YxRCx5QkFBeUM7QXBEMitQakQ7O0FvRGwvUEU7RUFXTSxjNUNSTztFNENTUCx5QjVCMEYwRDtFNEJ6RjFELHFCNUJ5RjBEO0F4Qms1UGxFOztBb0R4L1BFO0VBQ0UsYzVCcUc4RDtFNEJwRzlELHlCNUJvRzhEO0F4QnU1UGxFOztBV2gvUEU7RXlDUE0sYzVCZ0cwRDtFNEIvRjFELHlCQUF5QztBcEQyL1BqRDs7QW9EbGdRRTtFQVdNLGM1Q1JPO0U0Q1NQLHlCNUIwRjBEO0U0QnpGMUQscUI1QnlGMEQ7QXhCazZQbEU7O0FvRHhnUUU7RUFDRSxjNUJxRzhEO0U0QnBHOUQseUI1Qm9HOEQ7QXhCdTZQbEU7O0FXaGdRRTtFeUNQTSxjNUJnRzBEO0U0Qi9GMUQseUJBQXlDO0FwRDJnUWpEOztBb0RsaFFFO0VBV00sYzVDUk87RTRDU1AseUI1QjBGMEQ7RTRCekYxRCxxQjVCeUYwRDtBeEJrN1BsRTs7QW9EeGhRRTtFQUNFLGM1QnFHOEQ7RTRCcEc5RCx5QjVCb0c4RDtBeEJ1N1BsRTs7QVdoaFFFO0V5Q1BNLGM1QmdHMEQ7RTRCL0YxRCx5QkFBeUM7QXBEMmhRakQ7O0FvRGxpUUU7RUFXTSxjNUNSTztFNENTUCx5QjVCMEYwRDtFNEJ6RjFELHFCNUJ5RjBEO0F4Qms4UGxFOztBb0R4aVFFO0VBQ0UsYzVCcUc4RDtFNEJwRzlELHlCNUJvRzhEO0F4QnU4UGxFOztBV2hpUUU7RXlDUE0sYzVCZ0cwRDtFNEIvRjFELHlCQUF5QztBcEQyaVFqRDs7QW9EbGpRRTtFQVdNLGM1Q1JPO0U0Q1NQLHlCNUIwRjBEO0U0QnpGMUQscUI1QnlGMEQ7QXhCazlQbEU7O0FvRHhqUUU7RUFDRSxjNUJxRzhEO0U0QnBHOUQseUI1Qm9HOEQ7QXhCdTlQbEU7O0FXaGpRRTtFeUNQTSxjNUJnRzBEO0U0Qi9GMUQseUJBQXlDO0FwRDJqUWpEOztBb0Rsa1FFO0VBV00sYzVDUk87RTRDU1AseUI1QjBGMEQ7RTRCekYxRCxxQjVCeUYwRDtBeEJrK1BsRTs7QW9EeGtRRTtFQUNFLGM1QnFHOEQ7RTRCcEc5RCx5QjVCb0c4RDtBeEJ1K1BsRTs7QVdoa1FFO0V5Q1BNLGM1QmdHMEQ7RTRCL0YxRCx5QkFBeUM7QXBEMmtRakQ7O0FvRGxsUUU7RUFXTSxjNUNSTztFNENTUCx5QjVCMEYwRDtFNEJ6RjFELHFCNUJ5RjBEO0F4QmsvUGxFOztBcUQzbFFBO0VBQ0UsWUFBWTtFNUM4SFIsaUJBdENZO0U0Q3RGaEIsbUI3Q21Rd0I7RTZDbFF4QixjQUFjO0VBQ2QsYzdDRWE7RTZDRGIsaUI3Q2lRc0I7RTZDaFF0QixXQUFXO0FyRDhsUWI7O0FXemxRRTtFMENERSxjN0NKVztFNkNLWCxxQkFBcUI7QXJEOGxRekI7O0FXMWxRRTtFMENDSSxZQUFZO0FyRDZsUWxCOztBcURsbFFBO0VBQ0UsVUFBVTtFQUNWLDZCQUE2QjtFQUM3QixTQUFTO0FyRHFsUVg7O0FxRC9rUUE7RUFDRSxvQkFBb0I7QXJEa2xRdEI7O0FzRHhuUUE7RUFHRSxpQjVDeTRCdUM7RTRDeDRCdkMsZ0I1Q3c0QnVDO0VEN3dCbkMsaUJBdENZO0U2Q2xGaEIsMkM5Q0RhO0U4Q0ViLDRCQUE0QjtFQUM1QixrQzVDMDRCbUQ7RTRDejRCbkQsZ0Q5Q0hhO0U4Q0liLFVBQVU7RXRDT1Isa0JScUplO0FSNjlQbkI7O0FzRHBvUUE7RUFlSSxzQjVDODNCc0M7QVYydk8xQzs7QXNEeG9RQTtFQW1CSSxVQUFVO0F0RHluUWQ7O0FzRDVvUUE7RUF1QkksY0FBYztFQUNkLFVBQVU7QXREeW5RZDs7QXNEanBRQTtFQTRCSSxhQUFhO0F0RHluUWpCOztBc0RyblFBO0VBQ0UsYUFBYTtFQUNiLG1CQUFtQjtFQUNuQix1QjVDMDJCd0M7RTRDejJCeEMsYzlDN0JhO0U4QzhCYiwyQzlDL0JhO0U4Q2dDYiw0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ZCxXQUFXO0VBQ1gseUJBQXlCO0VBQ3pCLG1CQUFtQjtBMURrL1F6Qjs7QTBENytRQTtFQUNFLHFCaEQ4MUJ1QztBVmtwUHpDOztBMERqL1FBO0VBSUksMkJsQ3FHNEQ7QXhCNDRRaEU7O0EwRHIvUUE7RUFPTSxTQUFTO0VBQ1QsNkJBQWdFO0VBQ2hFLDZCbERpUWlDO0FSaXZRdkM7O0EwRDMvUUE7RUFhTSxXaEQwTDJCO0VnRHpMM0IsNkJBQWdFO0VBQ2hFLHFDbEQ3Q1M7QVIraFJmOztBMEQ3K1FBO0VBQ0UsbUJoRDAwQnVDO0FWc3FQekM7O0EwRGovUUE7RUFJSSx5QmxDaUY0RDtFa0NoRjVELGFoRHMwQnFDO0VnRHIwQnJDLFloRG8wQm9DO0VnRG4wQnBDLGFBQWdDO0ExRGkvUXBDOztBMER4L1FBO0VBVU0sT0FBTztFQUNQLG9DQUEyRjtFQUMzRiwrQmxEME9pQztBUnd3UXZDOztBMEQ5L1FBO0VBZ0JNLFNoRG1LMkI7RWdEbEszQixvQ0FBMkY7RUFDM0YsdUNsRHBFUztBUnNqUmY7O0EwRDcrUUE7RUFDRSxrQmhEbXpCdUM7QVY2clB6Qzs7QTBEai9RQTtFQUlJLHdCbEMwRDREO0F4QnU3UWhFOztBMERyL1FBO0VBT00sTUFBTTtFQUNOLG9DQUEyRjtFQUMzRixnQ2xEc05pQztBUjR4UXZDOztBMEQzL1FBO0VBYU0sUWhEK0kyQjtFZ0Q5STNCLG9DQUEyRjtFQUMzRix3Q2xEeEZTO0FSMGtSZjs7QTBEamdSQTtFQXFCSSxrQkFBa0I7RUFDbEIsTUFBTTtFQUNOLFNBQVM7RUFDVCxjQUFjO0VBQ2QsV2hEMHhCb0M7RWdEenhCcEMsb0JBQXNDO0VBQ3RDLFdBQVc7RUFDWCxvQ2xEd00yQjtBUnd5US9COztBMEQ1K1FBO0VBQ0Usb0JoRG14QnVDO0FWNHRQekM7O0EwRGgvUUE7RUFJSSwwQmxDMEI0RDtFa0N6QjVELGFoRCt3QnFDO0VnRDl3QnJDLFloRDZ3Qm9DO0VnRDV3QnBDLGFBQWdDO0ExRGcvUXBDOztBMER2L1FBO0VBVU0sUUFBUTtFQUNSLG9DaER5d0JtQztFZ0R4d0JuQyw4QmxEbUxpQztBUjh6UXZDOztBMEQ3L1FBO0VBZ0JNLFVoRDRHMkI7RWdEM0czQixvQ2hEbXdCbUM7RWdEbHdCbkMsc0NsRDNIUztBUjRtUmY7O0EwRDM5UUE7RUFDRSxrQmxEeUo2QjtFa0R4SjdCLGdCQUFnQjtFakQzQlosZUF0Q1k7RWlEbUVoQixjbERySmE7RWtEc0piLDZCbER1SjZCO0VrRHRKN0IseUNBQXlFO0UxQ25JdkUsMkJRZ0h5QjtFUi9HekIsNEJRK0d5QjtBeEJtL1E3Qjs7QTBEdCtRQTtFQVVJLGFBQWE7QTFEZytRakI7O0EwRDU5UUE7RUFDRSxrQmxEeUkyQjtFa0R4STNCLGNsRGpLYTtBUmdvUmY7O0EyRDFuUkE7RUFDRSxrQkFBa0I7QTNENm5ScEI7O0EyRDFuUkE7RUFDRSxtQkFBbUI7QTNENm5SckI7O0EyRDFuUkE7RUFDRSxrQkFBa0I7RUFDbEIsV0FBVztFQUNYLGdCQUFnQjtBM0Q2blJsQjs7QTREcHBSRTtFQUNFLGNBQWM7RUFDZCxXQUFXO0VBQ1gsV0FBVztBNUR1cFJmOztBMkQvblJBO0VBQ0Usa0JBQWtCO0VBQ2xCLGFBQWE7RUFDYixXQUFXO0VBQ1gsV0FBVztFQUNYLG1CQUFtQjtFQUNuQiwyQkFBMkI7RWpDbEJ2QixzQ2hCeWpDa0Y7QVY0bFB4Rjs7QTBCanBSTTtFaUNRTjtJakNQUSxnQkFBZ0I7RTFCcXBSdEI7QUFDRjs7QTJEcm9SQTs7O0VBR0UsY0FBYztBM0R3b1JoQjs7QTJEcm9SQTs7RUFFRSwyQkFBMkI7QTNEd29SN0I7O0EyRHJvUkE7O0VBRUUsNEJBQTRCO0EzRHdvUjlCOztBMkRob1JBO0VBRUksVUFBVTtFQUNWLDRCQUE0QjtFQUM1QixlQUFlO0EzRGtvUm5COztBMkR0b1JBOzs7RUFVSSxVQUFVO0VBQ1YsVUFBVTtBM0Rrb1JkOztBMkQ3b1JBOztFQWdCSSxVQUFVO0VBQ1YsVUFBVTtFakM1RFIsMkJoQndqQ2tDO0FWdW9QeEM7O0EwQjNyUk07RWlDdUNOOztJakN0Q1EsZ0JBQWdCO0UxQmdzUnRCO0FBQ0Y7O0EyRGhvUkE7O0VBRUUsa0JBQWtCO0VBQ2xC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QS9EazVSdEQ7O0ErRHg1UkU7RUFDRSxvQ0FBbUM7QS9EMjVSdkM7O0FXajVSRTs7O0VvRExJLG9DQUFnRDtBL0Q0NVJ0RDs7QStEbDZSRTtFQUNFLG9DQUFtQztBL0RxNlJ2Qzs7QVczNVJFOzs7RW9ETEksb0NBQWdEO0EvRHM2UnREOztBK0Q1NlJFO0VBQ0Usb0NBQW1DO0EvRCs2UnZDOztBV3I2UkU7OztFb0RMSSxvQ0FBZ0Q7QS9EZzdSdEQ7O0ErRHQ3UkU7RUFDRSxvQ0FBbUM7QS9EeTdSdkM7O0FXLzZSRTs7O0VvRExJLG9DQUFnRDtBL0QwN1J0RDs7QStEaDhSRTtFQUNFLG9DQUFtQztBL0RtOFJ2Qzs7QVd6N1JFOzs7RW9ETEksb0NBQWdEO0EvRG84UnREOztBK0QxOFJFO0VBQ0Usb0NBQW1DO0EvRDY4UnZDOztBV244UkU7OztFb0RMSSxvQ0FBZ0Q7QS9EODhSdEQ7O0ErRHA5UkU7RUFDRSxvQ0FBbUM7QS9EdTlSdkM7O0FXNzhSRTs7O0VvRExJLG9DQUFnRDtBL0R3OVJ0RDs7QWdFdjlSQTtFQUNFLG9DQUFtQztBaEUwOVJyQzs7QWdFdjlSQTtFQUNFLHdDQUF3QztBaEUwOVIxQzs7QWlFcitSQTtFQUFrQixvQ0FBb0Q7QWpFeStSdEU7O0FpRXgrUkE7RUFBa0Isd0NBQXdEO0FqRTQrUjFFOztBaUUzK1JBO0VBQWtCLDBDQUEwRDtBakUrK1I1RTs7QWlFOStSQTtFQUFrQiwyQ0FBMkQ7QWpFay9SN0U7O0FpRWovUkE7RUFBa0IseUNBQXlEO0FqRXEvUjNFOztBaUVuL1JBO0VBQW1CLG9CQUFvQjtBakV1L1J2Qzs7QWlFdC9SQTtFQUFtQix3QkFBd0I7QWpFMC9SM0M7O0FpRXovUkE7RUFBbUIsMEJBQTBCO0FqRTYvUjdDOztBaUU1L1JBO0VBQW1CLDJCQUEyQjtBakVnZ1M5Qzs7QWlFLy9SQTtFQUFtQix5QkFBeUI7QWpFbWdTNUM7O0FpRWhnU0U7RUFDRSxnQ0FBK0I7QWpFbWdTbkM7O0FpRXBnU0U7RUFDRSxnQ0FBK0I7QWpFdWdTbkM7O0FpRXhnU0U7RUFDRSxnQ0FBK0I7QWpFMmdTbkM7O0FpRTVnU0U7RUFDRSxnQ0FBK0I7QWpFK2dTbkM7O0FpRWhoU0U7RUFDRSxnQ0FBK0I7QWpFbWhTbkM7O0FpRXBoU0U7RUFDRSxnQ0FBK0I7QWpFdWhTbkM7O0FpRXhoU0U7RUFDRSxnQ0FBK0I7QWpFMmhTbkM7O0FpRTVoU0U7RUFDRSxnQ0FBK0I7QWpFK2hTbkM7O0FpRTNoU0E7RUFDRSxnQ0FBK0I7QWpFOGhTakM7O0FpRXZoU0E7RUFDRSw2QkFBMkM7QWpFMGhTN0M7O0FpRXZoU0E7RUFDRSw2QkFBd0M7QWpFMGhTMUM7O0FpRXZoU0E7RUFDRSxzQ0FBaUQ7RUFDakQsdUNBQWtEO0FqRTBoU3BEOztBaUV2aFNBO0VBQ0UsdUNBQWtEO0VBQ2xELDBDQUFxRDtBakUwaFN2RDs7QWlFdmhTQTtFQUNFLDBDQUFxRDtFQUNyRCx5Q0FBb0Q7QWpFMGhTdEQ7O0FpRXZoU0E7RUFDRSxzQ0FBaUQ7RUFDakQseUNBQW9EO0FqRTBoU3REOztBaUV2aFNBO0VBQ0UsNkJBQTJDO0FqRTBoUzdDOztBaUV2aFNBO0VBQ0UsNkJBQTZCO0FqRTBoUy9COztBaUV2aFNBO0VBQ0UsK0JBQXVDO0FqRTBoU3pDOztBaUV2aFNBO0VBQ0UsMkJBQTJCO0FqRTBoUzdCOztBNERsbVNFO0VBQ0UsY0FBYztFQUNkLFdBQVc7RUFDWCxXQUFXO0E1RHFtU2Y7O0FrRTlsU007RUFBd0Isd0JBQTBCO0FsRWttU3hEOztBa0VsbVNNO0VBQXdCLDBCQUEwQjtBbEVzbVN4RDs7QWtFdG1TTTtFQUF3QixnQ0FBMEI7QWxFMG1TeEQ7O0FrRTFtU007RUFBd0IseUJBQTBCO0FsRThtU3hEOztBa0U5bVNNO0VBQXdCLHlCQUEwQjtBbEVrblN4RDs7QWtFbG5TTTtFQUF3Qiw2QkFBMEI7QWxFc25TeEQ7O0FrRXRuU007RUFBd0IsOEJBQTBCO0FsRTBuU3hEOztBa0UxblNNO0VBQXdCLHdCQUEwQjtBbEU4blN4RDs7QWtFOW5TTTtFQUF3QiwrQkFBMEI7QWxFa29TeEQ7O0FvQmpsU0k7RThDakRFO0lBQXdCLHdCQUEwQjtFbEV1b1N0RDtFa0V2b1NJO0lBQXdCLDBCQUEwQjtFbEUwb1N0RDtFa0Uxb1NJO0lBQXdCLGdDQUEwQjtFbEU2b1N0RDtFa0U3b1NJO0lBQXdCLHlCQUEwQjtFbEVncFN0RDtFa0VocFNJO0lBQXdCLHlCQUEwQjtFbEVtcFN0RDtFa0VucFNJO0lBQXdCLDZCQUEwQjtFbEVzcFN0RDtFa0V0cFNJO0lBQXdCLDhCQUEwQjtFbEV5cFN0RDtFa0V6cFNJO0lBQXdCLHdCQUEwQjtFbEU0cFN0RDtFa0U1cFNJO0lBQXdCLCtCQUEwQjtFbEUrcFN0RDtBQUNGOztBb0IvbVNJO0U4Q2pERTtJQUF3Qix3QkFBMEI7RWxFcXFTdEQ7RWtFcnFTSTtJQUF3QiwwQkFBMEI7RWxFd3FTdEQ7RWtFeHFTSTtJQUF3QixnQ0FBMEI7RWxFMnFTdEQ7RWtFM3FTSTtJQUF3Qix5QkFBMEI7RWxFOHFTdEQ7RWtFOXFTSTtJQUF3Qix5QkFBMEI7RWxFaXJTdEQ7RWtFanJTSTtJQUF3Qiw2QkFBMEI7RWxFb3JTdEQ7RWtFcHJTSTtJQUF3Qiw4QkFBMEI7RWxFdXJTdEQ7RWtFdnJTSTtJQUF3Qix3QkFBMEI7RWxFMHJTdEQ7RWtFMXJTSTtJQUF3QiwrQkFBMEI7RWxFNnJTdEQ7QUFDRjs7QW9CN29TSTtFOENqREU7SUFBd0Isd0JBQTBCO0VsRW1zU3REO0VrRW5zU0k7SUFBd0IsMEJBQTBCO0VsRXNzU3REO0VrRXRzU0k7SUFBd0IsZ0NBQTBCO0VsRXlzU3REO0VrRXpzU0k7SUFBd0IseUJBQTBCO0VsRTRzU3REO0VrRTVzU0k7SUFBd0IseUJBQTBCO0VsRStzU3REO0VrRS9zU0k7SUFBd0IsNkJBQTBCO0VsRWt0U3REO0VrRWx0U0k7SUFBd0IsOEJBQTBCO0VsRXF0U3REO0VrRXJ0U0k7SUFBd0Isd0JBQTBCO0VsRXd0U3REO0VrRXh0U0k7SUFBd0IsK0JBQTBCO0VsRTJ0U3REO0FBQ0Y7O0FvQjNxU0k7RThDakRFO0lBQXdCLHdCQUEwQjtFbEVpdVN0RDtFa0VqdVNJO0lBQXdCLDBCQUEwQjtFbEVvdVN0RDtFa0VwdVNJO0lBQXdCLGdDQUEwQjtFbEV1dVN0RDtFa0V2dVNJO0lBQXdCLHlCQUEwQjtFbEUwdVN0RDtFa0UxdVNJO0lBQXdCLHlCQUEwQjtFbEU2dVN0RDtFa0U3dVNJO0lBQXdCLDZCQUEwQjtFbEVndlN0RDtFa0VodlNJO0lBQXdCLDhCQUEwQjtFbEVtdlN0RDtFa0VudlNJO0lBQXdCLHdCQUEwQjtFbEVzdlN0RDtFa0V0dlNJO0lBQXdCLCtCQUEwQjtFbEV5dlN0RDtBQUNGOztBa0VodlNBO0VBRUk7SUFBcUIsd0JBQTBCO0VsRW12U2pEO0VrRW52U0U7SUFBcUIsMEJBQTBCO0VsRXN2U2pEO0VrRXR2U0U7SUFBcUIsZ0NBQTBCO0VsRXl2U2pEO0VrRXp2U0U7SUFBcUIseUJBQTBCO0VsRTR2U2pEO0VrRTV2U0U7SUFBcUIseUJBQTBCO0VsRSt2U2pEO0VrRS92U0U7SUFBcUIsNkJBQTBCO0VsRWt3U2pEO0VrRWx3U0U7SUFBcUIsOEJBQTBCO0VsRXF3U2pEO0VrRXJ3U0U7SUFBcUIsd0JBQTBCO0VsRXd3U2pEO0VrRXh3U0U7SUFBcUIsK0JBQTBCO0VsRTJ3U2pEO0FBQ0Y7O0FtRWp5U0E7RUFDRSxrQkFBa0I7RUFDbEIsY0FBYztFQUNkLFdBQVc7RUFDWCxVQUFVO0VBQ1YsZ0JBQWdCO0FuRW95U2xCOztBbUV6eVNBO0VBUUksY0FBYztFQUNkLFdBQVc7QW5FcXlTZjs7QW1FOXlTQTs7Ozs7RUFpQkksa0JBQWtCO0VBQ2xCLE1BQU07RUFDTixTQUFTO0VBQ1QsT0FBTztFQUNQLFdBQVc7RUFDWCxZQUFZO0VBQ1osU0FBUztBbkVxeVNiOztBbUU3eFNFO0VBRUksc0JBQTRGO0FuRSt4U2xHOztBbUVqeVNFO0VBRUksbUJBQTRGO0FuRW15U2xHOztBbUVyeVNFO0VBRUksZ0JBQTRGO0FuRXV5U2xHOztBbUV6eVNFO0VBRUksaUJBQTRGO0FuRTJ5U2xHOztBb0VwMFNJO0VBQWdDLDhCQUE4QjtBcEV3MFNsRTs7QW9FdjBTSTtFQUFnQyxpQ0FBaUM7QXBFMjBTckU7O0FvRTEwU0k7RUFBZ0Msc0NBQXNDO0FwRTgwUzFFOztBb0U3MFNJO0VBQWdDLHlDQUF5QztBcEVpMVM3RTs7QW9FLzBTSTtFQUE4QiwwQkFBMEI7QXBFbTFTNUQ7O0FvRWwxU0k7RUFBOEIsNEJBQTRCO0FwRXMxUzlEOztBb0VyMVNJO0VBQThCLGtDQUFrQztBcEV5MVNwRTs7QW9FeDFTSTtFQUE4Qix5QkFBeUI7QXBFNDFTM0Q7O0FvRTMxU0k7RUFBOEIsdUJBQXVCO0FwRSsxU3pEOztBb0U5MVNJO0VBQThCLHVCQUF1QjtBcEVrMlN6RDs7QW9FajJTSTtFQUE4Qix5QkFBeUI7QXBFcTJTM0Q7O0FvRXAyU0k7RUFBOEIseUJBQXlCO0FwRXcyUzNEOztBb0V0MlNJO0VBQW9DLHNDQUFzQztBcEUwMlM5RTs7QW9FejJTSTtFQUFvQyxvQ0FBb0M7QXBFNjJTNUU7O0FvRTUyU0k7RUFBb0Msa0NBQWtDO0FwRWczUzFFOztBb0UvMlNJO0VBQW9DLHlDQUF5QztBcEVtM1NqRjs7QW9FbDNTSTtFQUFvQyx3Q0FBd0M7QXBFczNTaEY7O0FvRXAzU0k7RUFBaUMsa0NBQWtDO0FwRXczU3ZFOztBb0V2M1NJO0VBQWlDLGdDQUFnQztBcEUyM1NyRTs7QW9FMTNTSTtFQUFpQyw4QkFBOEI7QXBFODNTbkU7O0FvRTczU0k7RUFBaUMsZ0NBQWdDO0FwRWk0U3JFOztBb0VoNFNJO0VBQWlDLCtCQUErQjtBcEVvNFNwRTs7QW9FbDRTSTtFQUFrQyxvQ0FBb0M7QXBFczRTMUU7O0FvRXI0U0k7RUFBa0Msa0NBQWtDO0FwRXk0U3hFOztBb0V4NFNJO0VBQWtDLGdDQUFnQztBcEU0NFN0RTs7QW9FMzRTSTtFQUFrQyx1Q0FBdUM7QXBFKzRTN0U7O0FvRTk0U0k7RUFBa0Msc0NBQXNDO0FwRWs1UzVFOztBb0VqNVNJO0VBQWtDLGlDQUFpQztBcEVxNVN2RTs7QW9FbjVTSTtFQUFnQywyQkFBMkI7QXBFdTVTL0Q7O0FvRXQ1U0k7RUFBZ0MsaUNBQWlDO0FwRTA1U3JFOztBb0V6NVNJO0VBQWdDLCtCQUErQjtBcEU2NVNuRTs7QW9FNTVTSTtFQUFnQyw2QkFBNkI7QXBFZzZTakU7O0FvRS81U0k7RUFBZ0MsK0JBQStCO0FwRW02U25FOztBb0VsNlNJO0VBQWdDLDhCQUE4QjtBcEVzNlNsRTs7QW9CMTVTSTtFZ0RsREE7SUFBZ0MsOEJBQThCO0VwRWk5U2hFO0VvRWg5U0U7SUFBZ0MsaUNBQWlDO0VwRW05U25FO0VvRWw5U0U7SUFBZ0Msc0NBQXNDO0VwRXE5U3hFO0VvRXA5U0U7SUFBZ0MseUNBQXlDO0VwRXU5UzNFO0VvRXI5U0U7SUFBOEIsMEJBQTBCO0VwRXc5UzFEO0VvRXY5U0U7SUFBOEIsNEJBQTRCO0VwRTA5UzVEO0VvRXo5U0U7SUFBOEIsa0NBQWtDO0VwRTQ5U2xFO0VvRTM5U0U7SUFBOEIseUJBQXlCO0VwRTg5U3pEO0VvRTc5U0U7SUFBOEIsdUJBQXVCO0VwRWcrU3ZEO0VvRS85U0U7SUFBOEIsdUJBQXVCO0VwRWsrU3ZEO0VvRWorU0U7SUFBOEIseUJBQXlCO0VwRW8rU3pEO0VvRW4rU0U7SUFBOEIseUJBQXlCO0VwRXMrU3pEO0VvRXArU0U7SUFBb0Msc0NBQXNDO0VwRXUrUzVFO0VvRXQrU0U7SUFBb0Msb0NBQW9DO0VwRXkrUzFFO0VvRXgrU0U7SUFBb0Msa0NBQWtDO0VwRTIrU3hFO0VvRTErU0U7SUFBb0MseUNBQXlDO0VwRTYrUy9FO0VvRTUrU0U7SUFBb0Msd0NBQXdDO0VwRSsrUzlFO0VvRTcrU0U7SUFBaUMsa0NBQWtDO0VwRWcvU3JFO0VvRS8rU0U7SUFBaUMsZ0NBQWdDO0VwRWsvU25FO0VvRWovU0U7SUFBaUMsOEJBQThCO0VwRW8vU2pFO0VvRW4vU0U7SUFBaUMsZ0NBQWdDO0VwRXMvU25FO0VvRXIvU0U7SUFBaUMsK0JBQStCO0VwRXcvU2xFO0VvRXQvU0U7SUFBa0Msb0NBQW9DO0VwRXkvU3hFO0VvRXgvU0U7SUFBa0Msa0NBQWtDO0VwRTIvU3RFO0VvRTEvU0U7SUFBa0MsZ0NBQWdDO0VwRTYvU3BFO0VvRTUvU0U7SUFBa0MsdUNBQXVDO0VwRSsvUzNFO0VvRTkvU0U7SUFBa0Msc0NBQXNDO0VwRWlnVDFFO0VvRWhnVEU7SUFBa0MsaUNBQWlDO0VwRW1nVHJFO0VvRWpnVEU7SUFBZ0MsMkJBQTJCO0VwRW9nVDdEO0VvRW5nVEU7SUFBZ0MsaUNBQWlDO0VwRXNnVG5FO0VvRXJnVEU7SUFBZ0MsK0JBQStCO0VwRXdnVGpFO0VvRXZnVEU7SUFBZ0MsNkJBQTZCO0VwRTBnVC9EO0VvRXpnVEU7SUFBZ0MsK0JBQStCO0VwRTRnVGpFO0VvRTNnVEU7SUFBZ0MsOEJBQThCO0VwRThnVGhFO0FBQ0Y7O0FvQm5nVEk7RWdEbERBO0lBQWdDLDhCQUE4QjtFcEUwalRoRTtFb0V6alRFO0lBQWdDLGlDQUFpQztFcEU0alRuRTtFb0UzalRFO0lBQWdDLHNDQUFzQztFcEU4alR4RTtFb0U3alRFO0lBQWdDLHlDQUF5QztFcEVna1QzRTtFb0U5alRFO0lBQThCLDBCQUEwQjtFcEVpa1QxRDtFb0Voa1RFO0lBQThCLDRCQUE0QjtFcEVta1Q1RDtFb0Vsa1RFO0lBQThCLGtDQUFrQztFcEVxa1RsRTtFb0Vwa1RFO0lBQThCLHlCQUF5QjtFcEV1a1R6RDtFb0V0a1RFO0lBQThCLHVCQUF1QjtFcEV5a1R2RDtFb0V4a1RFO0lBQThCLHVCQUF1QjtFcEUya1R2RDtFb0Uxa1RFO0lBQThCLHlCQUF5QjtFcEU2a1R6RDtFb0U1a1RFO0lBQThCLHlCQUF5QjtFcEUra1R6RDtFb0U3a1RFO0lBQW9DLHNDQUFzQztFcEVnbFQ1RTtFb0Uva1RFO0lBQW9DLG9DQUFvQztFcEVrbFQxRTtFb0VqbFRFO0lBQW9DLGtDQUFrQztFcEVvbFR4RTtFb0VubFRFO0lBQW9DLHlDQUF5QztFcEVzbFQvRTtFb0VybFRFO0lBQW9DLHdDQUF3QztFcEV3bFQ5RTtFb0V0bFRFO0lBQWlDLGtDQUFrQztFcEV5bFRyRTtFb0V4bFRFO0lBQWlDLGdDQUFnQztFcEUybFRuRTtFb0UxbFRFO0lBQWlDLDhCQUE4QjtFcEU2bFRqRTtFb0U1bFRFO0lBQWlDLGdDQUFnQztFcEUrbFRuRTtFb0U5bFRFO0lBQWlDLCtCQUErQjtFcEVpbVRsRTtFb0UvbFRFO0lBQWtDLG9DQUFvQztFcEVrbVR4RTtFb0VqbVRFO0lBQWtDLGtDQUFrQztFcEVvbVR0RTtFb0VubVRFO0lBQWtDLGdDQUFnQztFcEVzbVRwRTtFb0VybVRFO0lBQWtDLHVDQUF1QztFcEV3bVQzRTtFb0V2bVRFO0lBQWtDLHNDQUFzQztFcEUwbVQxRTtFb0V6bVRFO0lBQWtDLGlDQUFpQztFcEU0bVRyRTtFb0UxbVRFO0lBQWdDLDJCQUEyQjtFcEU2bVQ3RDtFb0U1bVRFO0lBQWdDLGlDQUFpQztFcEUrbVRuRTtFb0U5bVRFO0lBQWdDLCtCQUErQjtFcEVpblRqRTtFb0VoblRFO0lBQWdDLDZCQUE2QjtFcEVtblQvRDtFb0VsblRFO0lBQWdDLCtCQUErQjtFcEVxblRqRTtFb0VwblRFO0lBQWdDLDhCQUE4QjtFcEV1blRoRTtBQUNGOztBb0I1bVRJO0VnRGxEQTtJQUFnQyw4QkFBOEI7RXBFbXFUaEU7RW9FbHFURTtJQUFnQyxpQ0FBaUM7RXBFcXFUbkU7RW9FcHFURTtJQUFnQyxzQ0FBc0M7RXBFdXFUeEU7RW9FdHFURTtJQUFnQyx5Q0FBeUM7RXBFeXFUM0U7RW9FdnFURTtJQUE4QiwwQkFBMEI7RXBFMHFUMUQ7RW9FenFURTtJQUE4Qiw0QkFBNEI7RXBFNHFUNUQ7RW9FM3FURTtJQUE4QixrQ0FBa0M7RXBFOHFUbEU7RW9FN3FURTtJQUE4Qix5QkFBeUI7RXBFZ3JUekQ7RW9FL3FURTtJQUE4Qix1QkFBdUI7RXBFa3JUdkQ7RW9FanJURTtJQUE4Qix1QkFBdUI7RXBFb3JUdkQ7RW9FbnJURTtJQUE4Qix5QkFBeUI7RXBFc3JUekQ7RW9FcnJURTtJQUE4Qix5QkFBeUI7RXBFd3JUekQ7RW9FdHJURTtJQUFvQyxzQ0FBc0M7RXBFeXJUNUU7RW9FeHJURTtJQUFvQyxvQ0FBb0M7RXBFMnJUMUU7RW9FMXJURTtJQUFvQyxrQ0FBa0M7RXBFNnJUeEU7RW9FNXJURTtJQUFvQyx5Q0FBeUM7RXBFK3JUL0U7RW9FOXJURTtJQUFvQyx3Q0FBd0M7RXBFaXNUOUU7RW9FL3JURTtJQUFpQyxrQ0FBa0M7RXBFa3NUckU7RW9FanNURTtJQUFpQyxnQ0FBZ0M7RXBFb3NUbkU7RW9FbnNURTtJQUFpQyw4QkFBOEI7RXBFc3NUakU7RW9FcnNURTtJQUFpQyxnQ0FBZ0M7RXBFd3NUbkU7RW9FdnNURTtJQUFpQywrQkFBK0I7RXBFMHNUbEU7RW9FeHNURTtJQUFrQyxvQ0FBb0M7RXBFMnNUeEU7RW9FMXNURTtJQUFrQyxrQ0FBa0M7RXBFNnNUdEU7RW9FNXNURTtJQUFrQyxnQ0FBZ0M7RXBFK3NUcEU7RW9FOXNURTtJQUFrQyx1Q0FBdUM7RXBFaXRUM0U7RW9FaHRURTtJQUFrQyxzQ0FBc0M7RXBFbXRUMUU7RW9FbHRURTtJQUFrQyxpQ0FBaUM7RXBFcXRUckU7RW9FbnRURTtJQUFnQywyQkFBMkI7RXBFc3RUN0Q7RW9FcnRURTtJQUFnQyxpQ0FBaUM7RXBFd3RUbkU7RW9FdnRURTtJQUFnQywrQkFBK0I7RXBFMHRUakU7RW9FenRURTtJQUFnQyw2QkFBNkI7RXBFNHRUL0Q7RW9FM3RURTtJQUFnQywrQkFBK0I7RXBFOHRUakU7RW9FN3RURTtJQUFnQyw4QkFBOEI7RXBFZ3VUaEU7QUFDRjs7QW9CcnRUSTtFZ0RsREE7SUFBZ0MsOEJBQThCO0VwRTR3VGhFO0VvRTN3VEU7SUFBZ0MsaUNBQWlDO0VwRTh3VG5FO0VvRTd3VEU7SUFBZ0Msc0NBQXNDO0VwRWd4VHhFO0VvRS93VEU7SUFBZ0MseUNBQXlDO0VwRWt4VDNFO0VvRWh4VEU7SUFBOEIsMEJBQTBCO0VwRW14VDFEO0VvRWx4VEU7SUFBOEIsNEJBQTRCO0VwRXF4VDVEO0VvRXB4VEU7SUFBOEIsa0NBQWtDO0VwRXV4VGxFO0VvRXR4VEU7SUFBOEIseUJBQXlCO0VwRXl4VHpEO0VvRXh4VEU7SUFBOEIsdUJBQXVCO0VwRTJ4VHZEO0VvRTF4VEU7SUFBOEIsdUJBQXVCO0VwRTZ4VHZEO0VvRTV4VEU7SUFBOEIseUJBQXlCO0VwRSt4VHpEO0VvRTl4VEU7SUFBOEIseUJBQXlCO0VwRWl5VHpEO0VvRS94VEU7SUFBb0Msc0NBQXNDO0VwRWt5VDVFO0VvRWp5VEU7SUFBb0Msb0NBQW9DO0VwRW95VDFFO0VvRW55VEU7SUFBb0Msa0NBQWtDO0VwRXN5VHhFO0VvRXJ5VEU7SUFBb0MseUNBQXlDO0VwRXd5VC9FO0VvRXZ5VEU7SUFBb0Msd0NBQXdDO0VwRTB5VDlFO0VvRXh5VEU7SUFBaUMsa0NBQWtDO0VwRTJ5VHJFO0VvRTF5VEU7SUFBaUMsZ0NBQWdDO0VwRTZ5VG5FO0VvRTV5VEU7SUFBaUMsOEJBQThCO0VwRSt5VGpFO0VvRTl5VEU7SUFBaUMsZ0NBQWdDO0VwRWl6VG5FO0VvRWh6VEU7SUFBaUMsK0JBQStCO0VwRW16VGxFO0VvRWp6VEU7SUFBa0Msb0NBQW9DO0VwRW96VHhFO0VvRW56VEU7SUFBa0Msa0NBQWtDO0VwRXN6VHRFO0VvRXJ6VEU7SUFBa0MsZ0NBQWdDO0VwRXd6VHBFO0VvRXZ6VEU7SUFBa0MsdUNBQXVDO0VwRTB6VDNFO0VvRXp6VEU7SUFBa0Msc0NBQXNDO0VwRTR6VDFFO0VvRTN6VEU7SUFBa0MsaUNBQWlDO0VwRTh6VHJFO0VvRTV6VEU7SUFBZ0MsMkJBQTJCO0VwRSt6VDdEO0VvRTl6VEU7SUFBZ0MsaUNBQWlDO0VwRWkwVG5FO0VvRWgwVEU7SUFBZ0MsK0JBQStCO0VwRW0wVGpFO0VvRWwwVEU7SUFBZ0MsNkJBQTZCO0VwRXEwVC9EO0VvRXAwVEU7SUFBZ0MsK0JBQStCO0VwRXUwVGpFO0VvRXQwVEU7SUFBZ0MsOEJBQThCO0VwRXkwVGhFO0FBQ0Y7O0FxRXAzVEk7RUFBd0Isc0JBQXNCO0FyRXczVGxEOztBcUV2M1RJO0VBQXdCLHVCQUF1QjtBckUyM1RuRDs7QXFFMTNUSTtFQUF3QixzQkFBc0I7QXJFODNUbEQ7O0FvQjEwVEk7RWlEdERBO0lBQXdCLHNCQUFzQjtFckVxNFRoRDtFcUVwNFRFO0lBQXdCLHVCQUF1QjtFckV1NFRqRDtFcUV0NFRFO0lBQXdCLHNCQUFzQjtFckV5NFRoRDtBQUNGOztBb0J0MVRJO0VpRHREQTtJQUF3QixzQkFBc0I7RXJFaTVUaEQ7RXFFaDVURTtJQUF3Qix1QkFBdUI7RXJFbTVUakQ7RXFFbDVURTtJQUF3QixzQkFBc0I7RXJFcTVUaEQ7QUFDRjs7QW9CbDJUSTtFaUR0REE7SUFBd0Isc0JBQXNCO0VyRTY1VGhEO0VxRTU1VEU7SUFBd0IsdUJBQXVCO0VyRSs1VGpEO0VxRTk1VEU7SUFBd0Isc0JBQXNCO0VyRWk2VGhEO0FBQ0Y7O0FvQjkyVEk7RWlEdERBO0lBQXdCLHNCQUFzQjtFckV5NlRoRDtFcUV4NlRFO0lBQXdCLHVCQUF1QjtFckUyNlRqRDtFcUUxNlRFO0lBQXdCLHNCQUFzQjtFckU2NlRoRDtBQUNGOztBc0VuN1RFO0VBQXlCLDJCQUE4QjtBdEV1N1R6RDs7QXNFdjdURTtFQUF5Qiw0QkFBOEI7QXRFMjdUekQ7O0FzRTM3VEU7RUFBeUIsNEJBQThCO0F0RSs3VHpEOztBdUUvN1RFO0VBQXNCLHlCQUEyQjtBdkVtOFRuRDs7QXVFbjhURTtFQUFzQiwyQkFBMkI7QXZFdThUbkQ7O0F3RXQ4VEU7RUFBeUIsMkJBQThCO0F4RTA4VHpEOztBd0UxOFRFO0VBQXlCLDZCQUE4QjtBeEU4OFR6RDs7QXdFOThURTtFQUF5Qiw2QkFBOEI7QXhFazlUekQ7O0F3RWw5VEU7RUFBeUIsMEJBQThCO0F4RXM5VHpEOztBd0V0OVRFO0VBQXlCLDJCQUE4QjtBeEUwOVR6RDs7QXdFcjlUQTtFQUNFLGVBQWU7RUFDZixNQUFNO0VBQ04sUUFBUTtFQUNSLE9BQU87RUFDUCxhOURncUJzQztBVnd6U3hDOztBd0VyOVRBO0VBQ0UsZUFBZTtFQUNmLFFBQVE7RUFDUixTQUFTO0VBQ1QsT0FBTztFQUNQLGE5RHdwQnNDO0FWZzBTeEM7O0F3RXA5VDhCO0VBRDlCO0lBRUksZ0JBQWdCO0lBQ2hCLE1BQU07SUFDTixhOURncEJvQztFVncwU3RDO0FBQ0Y7O0F5RWwvVEE7RUNFRSxrQkFBa0I7RUFDbEIsVUFBVTtFQUNWLFdBQVc7RUFDWCxVQUFVO0VBQ1YsWUFBWTtFQUNaLGdCQUFnQjtFQUNoQixzQkFBc0I7RUFDdEIsbUJBQW1CO0VBQ25CLFNBQVM7QTFFby9UWDs7QTBFMStURTtFQUVFLGdCQUFnQjtFQUNoQixXQUFXO0VBQ1gsWUFBWTtFQUNaLGlCQUFpQjtFQUNqQixVQUFVO0VBQ1YsbUJBQW1CO0ExRTQrVHZCOztBMkV6Z1VBO0VBQWEsOERBQXFDO0EzRTZnVWxEOztBMkU1Z1VBO0VBQVUsd0RBQWtDO0EzRWdoVTVDOztBMkUvZ1VBO0VBQWEsdURBQXFDO0EzRW1oVWxEOztBMkVsaFVBO0VBQWUsMkJBQTJCO0EzRXNoVTFDOztBNEVyaFVJO0VBQXVCLHFCQUE0QjtBNUV5aFV2RDs7QTRFemhVSTtFQUF1QixxQkFBNEI7QTVFNmhVdkQ7O0E0RTdoVUk7RUFBdUIscUJBQTRCO0E1RWlpVXZEOztBNEVqaVVJO0VBQXVCLHNCQUE0QjtBNUVxaVV2RDs7QTRFcmlVSTtFQUF1QixzQkFBNEI7QTVFeWlVdkQ7O0E0RXppVUk7RUFBdUIsc0JBQTRCO0E1RTZpVXZEOztBNEU3aVVJO0VBQXVCLHNCQUE0QjtBNUVpalV2RDs7QTRFampVSTtFQUF1QixzQkFBNEI7QTVFcWpVdkQ7O0E0RXJqVUk7RUFBdUIsdUJBQTRCO0E1RXlqVXZEOztBNEV6alVJO0VBQXVCLHVCQUE0QjtBNUU2alV2RDs7QTRFempVQTtFQUFVLDBCQUEwQjtBNUU2alVwQzs7QTRFNWpVQTtFQUFVLDJCQUEyQjtBNUVna1VyQzs7QTRFNWpVQTtFQUFjLDJCQUEyQjtBNUVna1V6Qzs7QTRFL2pVQTtFQUFjLDRCQUE0QjtBNUVta1UxQzs7QTRFamtVQTtFQUFVLHVCQUF1QjtBNUVxa1VqQzs7QTRFcGtVQTtFQUFVLHdCQUF3QjtBNUV3a1VsQzs7QTZFamxVUTtFQUFnQyxvQkFBNEI7QTdFcWxVcEU7O0E2RXBsVVE7O0VBRUUsd0JBQW9DO0E3RXVsVTlDOztBNkVybFVROztFQUVFLDBCQUF3QztBN0V3bFVsRDs7QTZFdGxVUTs7RUFFRSwyQkFBMEM7QTdFeWxVcEQ7O0E2RXZsVVE7O0VBRUUseUJBQXNDO0E3RTBsVWhEOztBNkV6bVVRO0VBQWdDLDBCQUE0QjtBN0U2bVVwRTs7QTZFNW1VUTs7RUFFRSw4QkFBb0M7QTdFK21VOUM7O0E2RTdtVVE7O0VBRUUsZ0NBQXdDO0E3RWduVWxEOztBNkU5bVVROztFQUVFLGlDQUEwQztBN0VpblVwRDs7QTZFL21VUTs7RUFFRSwrQkFBc0M7QTdFa25VaEQ7O0E2RWpvVVE7RUFBZ0MseUJBQTRCO0E3RXFvVXBFOztBNkVwb1VROztFQUVFLDZCQUFvQztBN0V1b1U5Qzs7QTZFcm9VUTs7RUFFRSwrQkFBd0M7QTdFd29VbEQ7O0E2RXRvVVE7O0VBRUUsZ0NBQTBDO0E3RXlvVXBEOztBNkV2b1VROztFQUVFLDhCQUFzQztBN0Uwb1VoRDs7QTZFenBVUTtFQUFnQyx1QkFBNEI7QTdFNnBVcEU7O0E2RTVwVVE7O0VBRUUsMkJBQW9DO0E3RStwVTlDOztBNkU3cFVROztFQUVFLDZCQUF3QztBN0VncVVsRDs7QTZFOXBVUTs7RUFFRSw4QkFBMEM7QTdFaXFVcEQ7O0E2RS9wVVE7O0VBRUUsNEJBQXNDO0E3RWtxVWhEOztBNkVqclVRO0VBQWdDLHlCQUE0QjtBN0VxclVwRTs7QTZFcHJVUTs7RUFFRSw2QkFBb0M7QTdFdXJVOUM7O0E2RXJyVVE7O0VBRUUsK0JBQXdDO0E3RXdyVWxEOztBNkV0clVROztFQUVFLGdDQUEwQztBN0V5clVwRDs7QTZFdnJVUTs7RUFFRSw4QkFBc0M7QTdFMHJVaEQ7O0E2RXpzVVE7RUFBZ0MsdUJBQTRCO0E3RTZzVXBFOztBNkU1c1VROztFQUVFLDJCQUFvQztBN0Urc1U5Qzs7QTZFN3NVUTs7RUFFRSw2QkFBd0M7QTdFZ3RVbEQ7O0E2RTlzVVE7O0VBRUUsOEJBQTBDO0E3RWl0VXBEOztBNkUvc1VROztFQUVFLDRCQUFzQztBN0VrdFVoRDs7QTZFanVVUTtFQUFnQyxxQkFBNEI7QTdFcXVVcEU7O0E2RXB1VVE7O0VBRUUseUJBQW9DO0E3RXV1VTlDOztBNkVydVVROztFQUVFLDJCQUF3QztBN0V3dVVsRDs7QTZFdHVVUTs7RUFFRSw0QkFBMEM7QTdFeXVVcEQ7O0E2RXZ1VVE7O0VBRUUsMEJBQXNDO0E3RTB1VWhEOztBNkV6dlVRO0VBQWdDLDJCQUE0QjtBN0U2dlVwRTs7QTZFNXZVUTs7RUFFRSwrQkFBb0M7QTdFK3ZVOUM7O0E2RTd2VVE7O0VBRUUsaUNBQXdDO0E3RWd3VWxEOztBNkU5dlVROztFQUVFLGtDQUEwQztBN0Vpd1VwRDs7QTZFL3ZVUTs7RUFFRSxnQ0FBc0M7QTdFa3dVaEQ7O0E2RWp4VVE7RUFBZ0MsMEJBQTRCO0E3RXF4VXBFOztBNkVweFVROztFQUVFLDhCQUFvQztBN0V1eFU5Qzs7QTZFcnhVUTs7RUFFRSxnQ0FBd0M7QTdFd3hVbEQ7O0E2RXR4VVE7O0VBRUUsaUNBQTBDO0E3RXl4VXBEOztBNkV2eFVROztFQUVFLCtCQUFzQztBN0UweFVoRDs7QTZFenlVUTtFQUFnQyx3QkFBNEI7QTdFNnlVcEU7O0E2RTV5VVE7O0VBRUUsNEJBQW9DO0E3RSt5VTlDOztBNkU3eVVROztFQUVFLDhCQUF3QztBN0VnelVsRDs7QTZFOXlVUTs7RUFFRSwrQkFBMEM7QTdFaXpVcEQ7O0E2RS95VVE7O0VBRUUsNkJBQXNDO0E3RWt6VWhEOztBNkVqMFVRO0VBQWdDLDBCQUE0QjtBN0VxMFVwRTs7QTZFcDBVUTs7RUFFRSw4QkFBb0M7QTdFdTBVOUM7O0E2RXIwVVE7O0VBRUUsZ0NBQXdDO0E3RXcwVWxEOztBNkV0MFVROztFQUVFLGlDQUEwQztBN0V5MFVwRDs7QTZFdjBVUTs7RUFFRSwrQkFBc0M7QTdFMDBVaEQ7O0E2RXoxVVE7RUFBZ0Msd0JBQTRCO0E3RTYxVXBFOztBNkU1MVVROztFQUVFLDRCQUFvQztBN0UrMVU5Qzs7QTZFNzFVUTs7RUFFRSw4QkFBd0M7QTdFZzJVbEQ7O0E2RTkxVVE7O0VBRUUsK0JBQTBDO0E3RWkyVXBEOztBNkUvMVVROztFQUVFLDZCQUFzQztBN0VrMlVoRDs7QTZFMTFVUTtFQUF3QiwyQkFBMkI7QTdFODFVM0Q7O0E2RTcxVVE7O0VBRUUsK0JBQStCO0E3RWcyVXpDOztBNkU5MVVROztFQUVFLGlDQUFpQztBN0VpMlUzQzs7QTZFLzFVUTs7RUFFRSxrQ0FBa0M7QTdFazJVNUM7O0E2RWgyVVE7O0VBRUUsZ0NBQWdDO0E3RW0yVTFDOztBNkVsM1VRO0VBQXdCLDBCQUEyQjtBN0VzM1UzRDs7QTZFcjNVUTs7RUFFRSw4QkFBK0I7QTdFdzNVekM7O0E2RXQzVVE7O0VBRUUsZ0NBQWlDO0E3RXkzVTNDOztBNkV2M1VROztFQUVFLGlDQUFrQztBN0UwM1U1Qzs7QTZFeDNVUTs7RUFFRSwrQkFBZ0M7QTdFMjNVMUM7O0E2RTE0VVE7RUFBd0Isd0JBQTJCO0E3RTg0VTNEOztBNkU3NFVROztFQUVFLDRCQUErQjtBN0VnNVV6Qzs7QTZFOTRVUTs7RUFFRSw4QkFBaUM7QTdFaTVVM0M7O0E2RS80VVE7O0VBRUUsK0JBQWtDO0E3RWs1VTVDOztBNkVoNVVROztFQUVFLDZCQUFnQztBN0VtNVUxQzs7QTZFbDZVUTtFQUF3QiwwQkFBMkI7QTdFczZVM0Q7O0E2RXI2VVE7O0VBRUUsOEJBQStCO0E3RXc2VXpDOztBNkV0NlVROztFQUVFLGdDQUFpQztBN0V5NlUzQzs7QTZFdjZVUTs7RUFFRSxpQ0FBa0M7QTdFMDZVNUM7O0E2RXg2VVE7O0VBRUUsK0JBQWdDO0E3RTI2VTFDOztBNkUxN1VRO0VBQXdCLHdCQUEyQjtBN0U4N1UzRDs7QTZFNzdVUTs7RUFFRSw0QkFBK0I7QTdFZzhVekM7O0E2RTk3VVE7O0VBRUUsOEJBQWlDO0E3RWk4VTNDOztBNkUvN1VROztFQUVFLCtCQUFrQztBN0VrOFU1Qzs7QTZFaDhVUTs7RUFFRSw2QkFBZ0M7QTdFbThVMUM7O0E2RTc3VUk7RUFBbUIsdUJBQXVCO0E3RWk4VTlDOztBNkVoOFVJOztFQUVFLDJCQUEyQjtBN0VtOFVqQzs7QTZFajhVSTs7RUFFRSw2QkFBNkI7QTdFbzhVbkM7O0E2RWw4VUk7O0VBRUUsOEJBQThCO0E3RXE4VXBDOztBNkVuOFVJOztFQUVFLDRCQUE0QjtBN0VzOFVsQzs7QW9CLzhVSTtFeURsREk7SUFBZ0Msb0JBQTRCO0U3RXNnVmxFO0U2RXJnVk07O0lBRUUsd0JBQW9DO0U3RXVnVjVDO0U2RXJnVk07O0lBRUUsMEJBQXdDO0U3RXVnVmhEO0U2RXJnVk07O0lBRUUsMkJBQTBDO0U3RXVnVmxEO0U2RXJnVk07O0lBRUUseUJBQXNDO0U3RXVnVjlDO0U2RXRoVk07SUFBZ0MsMEJBQTRCO0U3RXloVmxFO0U2RXhoVk07O0lBRUUsOEJBQW9DO0U3RTBoVjVDO0U2RXhoVk07O0lBRUUsZ0NBQXdDO0U3RTBoVmhEO0U2RXhoVk07O0lBRUUsaUNBQTBDO0U3RTBoVmxEO0U2RXhoVk07O0lBRUUsK0JBQXNDO0U3RTBoVjlDO0U2RXppVk07SUFBZ0MseUJBQTRCO0U3RTRpVmxFO0U2RTNpVk07O0lBRUUsNkJBQW9DO0U3RTZpVjVDO0U2RTNpVk07O0lBRUUsK0JBQXdDO0U3RTZpVmhEO0U2RTNpVk07O0lBRUUsZ0NBQTBDO0U3RTZpVmxEO0U2RTNpVk07O0lBRUUsOEJBQXNDO0U3RTZpVjlDO0U2RTVqVk07SUFBZ0MsdUJBQTRCO0U3RStqVmxFO0U2RTlqVk07O0lBRUUsMkJBQW9DO0U3RWdrVjVDO0U2RTlqVk07O0lBRUUsNkJBQXdDO0U3RWdrVmhEO0U2RTlqVk07O0lBRUUsOEJBQTBDO0U3RWdrVmxEO0U2RTlqVk07O0lBRUUsNEJBQXNDO0U3RWdrVjlDO0U2RS9rVk07SUFBZ0MseUJBQTRCO0U3RWtsVmxFO0U2RWpsVk07O0lBRUUsNkJBQW9DO0U3RW1sVjVDO0U2RWpsVk07O0lBRUUsK0JBQXdDO0U3RW1sVmhEO0U2RWpsVk07O0lBRUUsZ0NBQTBDO0U3RW1sVmxEO0U2RWpsVk07O0lBRUUsOEJBQXNDO0U3RW1sVjlDO0U2RWxtVk07SUFBZ0MsdUJBQTRCO0U3RXFtVmxFO0U2RXBtVk07O0lBRUUsMkJBQW9DO0U3RXNtVjVDO0U2RXBtVk07O0lBRUUsNkJBQXdDO0U3RXNtVmhEO0U2RXBtVk07O0lBRUUsOEJBQTBDO0U3RXNtVmxEO0U2RXBtVk07O0lBRUUsNEJBQXNDO0U3RXNtVjlDO0U2RXJuVk07SUFBZ0MscUJBQTRCO0U3RXduVmxFO0U2RXZuVk07O0lBRUUseUJBQW9DO0U3RXluVjVDO0U2RXZuVk07O0lBRUUsMkJBQXdDO0U3RXluVmhEO0U2RXZuVk07O0lBRUUsNEJBQTBDO0U3RXluVmxEO0U2RXZuVk07O0lBRUUsMEJBQXNDO0U3RXluVjlDO0U2RXhvVk07SUFBZ0MsMkJBQTRCO0U3RTJvVmxFO0U2RTFvVk07O0lBRUUsK0JBQW9DO0U3RTRvVjVDO0U2RTFvVk07O0lBRUUsaUNBQXdDO0U3RTRvVmhEO0U2RTFvVk07O0lBRUUsa0NBQTBDO0U3RTRvVmxEO0U2RTFvVk07O0lBRUUsZ0NBQXNDO0U3RTRvVjlDO0U2RTNwVk07SUFBZ0MsMEJBQTRCO0U3RThwVmxFO0U2RTdwVk07O0lBRUUsOEJBQW9DO0U3RStwVjVDO0U2RTdwVk07O0lBRUUsZ0NBQXdDO0U3RStwVmhEO0U2RTdwVk07O0lBRUUsaUNBQTBDO0U3RStwVmxEO0U2RTdwVk07O0lBRUUsK0JBQXNDO0U3RStwVjlDO0U2RTlxVk07SUFBZ0Msd0JBQTRCO0U3RWlyVmxFO0U2RWhyVk07O0lBRUUsNEJBQW9DO0U3RWtyVjVDO0U2RWhyVk07O0lBRUUsOEJBQXdDO0U3RWtyVmhEO0U2RWhyVk07O0lBRUUsK0JBQTBDO0U3RWtyVmxEO0U2RWhyVk07O0lBRUUsNkJBQXNDO0U3RWtyVjlDO0U2RWpzVk07SUFBZ0MsMEJBQTRCO0U3RW9zVmxFO0U2RW5zVk07O0lBRUUsOEJBQW9DO0U3RXFzVjVDO0U2RW5zVk07O0lBRUUsZ0NBQXdDO0U3RXFzVmhEO0U2RW5zVk07O0lBRUUsaUNBQTBDO0U3RXFzVmxEO0U2RW5zVk07O0lBRUUsK0JBQXNDO0U3RXFzVjlDO0U2RXB0Vk07SUFBZ0Msd0JBQTRCO0U3RXV0VmxFO0U2RXR0Vk07O0lBRUUsNEJBQW9DO0U3RXd0VjVDO0U2RXR0Vk07O0lBRUUsOEJBQXdDO0U3RXd0VmhEO0U2RXR0Vk07O0lBRUUsK0JBQTBDO0U3RXd0VmxEO0U2RXR0Vk07O0lBRUUsNkJBQXNDO0U3RXd0VjlDO0U2RWh0Vk07SUFBd0IsMkJBQTJCO0U3RW10VnpEO0U2RWx0Vk07O0lBRUUsK0JBQStCO0U3RW90VnZDO0U2RWx0Vk07O0lBRUUsaUNBQWlDO0U3RW90VnpDO0U2RWx0Vk07O0lBRUUsa0NBQWtDO0U3RW90VjFDO0U2RWx0Vk07O0lBRUUsZ0NBQWdDO0U3RW90VnhDO0U2RW51Vk07SUFBd0IsMEJBQTJCO0U3RXN1VnpEO0U2RXJ1Vk07O0lBRUUsOEJBQStCO0U3RXV1VnZDO0U2RXJ1Vk07O0lBRUUsZ0NBQWlDO0U3RXV1VnpDO0U2RXJ1Vk07O0lBRUUsaUNBQWtDO0U3RXV1VjFDO0U2RXJ1Vk07O0lBRUUsK0JBQWdDO0U3RXV1VnhDO0U2RXR2Vk07SUFBd0Isd0JBQTJCO0U3RXl2VnpEO0U2RXh2Vk07O0lBRUUsNEJBQStCO0U3RTB2VnZDO0U2RXh2Vk07O0lBRUUsOEJBQWlDO0U3RTB2VnpDO0U2RXh2Vk07O0lBRUUsK0JBQWtDO0U3RTB2VjFDO0U2RXh2Vk07O0lBRUUsNkJBQWdDO0U3RTB2VnhDO0U2RXp3Vk07SUFBd0IsMEJBQTJCO0U3RTR3VnpEO0U2RTN3Vk07O0lBRUUsOEJBQStCO0U3RTZ3VnZDO0U2RTN3Vk07O0lBRUUsZ0NBQWlDO0U3RTZ3VnpDO0U2RTN3Vk07O0lBRUUsaUNBQWtDO0U3RTZ3VjFDO0U2RTN3Vk07O0lBRUUsK0JBQWdDO0U3RTZ3VnhDO0U2RTV4Vk07SUFBd0Isd0JBQTJCO0U3RSt4VnpEO0U2RTl4Vk07O0lBRUUsNEJBQStCO0U3RWd5VnZDO0U2RTl4Vk07O0lBRUUsOEJBQWlDO0U3RWd5VnpDO0U2RTl4Vk07O0lBRUUsK0JBQWtDO0U3RWd5VjFDO0U2RTl4Vk07O0lBRUUsNkJBQWdDO0U3RWd5VnhDO0U2RTF4VkU7SUFBbUIsdUJBQXVCO0U3RTZ4VjVDO0U2RTV4VkU7O0lBRUUsMkJBQTJCO0U3RTh4Vi9CO0U2RTV4VkU7O0lBRUUsNkJBQTZCO0U3RTh4VmpDO0U2RTV4VkU7O0lBRUUsOEJBQThCO0U3RTh4VmxDO0U2RTV4VkU7O0lBRUUsNEJBQTRCO0U3RTh4VmhDO0FBQ0Y7O0FvQnh5Vkk7RXlEbERJO0lBQWdDLG9CQUE0QjtFN0UrMVZsRTtFNkU5MVZNOztJQUVFLHdCQUFvQztFN0VnMlY1QztFNkU5MVZNOztJQUVFLDBCQUF3QztFN0VnMlZoRDtFNkU5MVZNOztJQUVFLDJCQUEwQztFN0VnMlZsRDtFNkU5MVZNOztJQUVFLHlCQUFzQztFN0VnMlY5QztFNkUvMlZNO0lBQWdDLDBCQUE0QjtFN0VrM1ZsRTtFNkVqM1ZNOztJQUVFLDhCQUFvQztFN0VtM1Y1QztFNkVqM1ZNOztJQUVFLGdDQUF3QztFN0VtM1ZoRDtFNkVqM1ZNOztJQUVFLGlDQUEwQztFN0VtM1ZsRDtFNkVqM1ZNOztJQUVFLCtCQUFzQztFN0VtM1Y5QztFNkVsNFZNO0lBQWdDLHlCQUE0QjtFN0VxNFZsRTtFNkVwNFZNOztJQUVFLDZCQUFvQztFN0VzNFY1QztFNkVwNFZNOztJQUVFLCtCQUF3QztFN0VzNFZoRDtFNkVwNFZNOztJQUVFLGdDQUEwQztFN0VzNFZsRDtFNkVwNFZNOztJQUVFLDhCQUFzQztFN0VzNFY5QztFNkVyNVZNO0lBQWdDLHVCQUE0QjtFN0V3NVZsRTtFNkV2NVZNOztJQUVFLDJCQUFvQztFN0V5NVY1QztFNkV2NVZNOztJQUVFLDZCQUF3QztFN0V5NVZoRDtFNkV2NVZNOztJQUVFLDhCQUEwQztFN0V5NVZsRDtFNkV2NVZNOztJQUVFLDRCQUFzQztFN0V5NVY5QztFNkV4NlZNO0lBQWdDLHlCQUE0QjtFN0UyNlZsRTtFNkUxNlZNOztJQUVFLDZCQUFvQztFN0U0NlY1QztFNkUxNlZNOztJQUVFLCtCQUF3QztFN0U0NlZoRDtFNkUxNlZNOztJQUVFLGdDQUEwQztFN0U0NlZsRDtFNkUxNlZNOztJQUVFLDhCQUFzQztFN0U0NlY5QztFNkUzN1ZNO0lBQWdDLHVCQUE0QjtFN0U4N1ZsRTtFNkU3N1ZNOztJQUVFLDJCQUFvQztFN0UrN1Y1QztFNkU3N1ZNOztJQUVFLDZCQUF3QztFN0UrN1ZoRDtFNkU3N1ZNOztJQUVFLDhCQUEwQztFN0UrN1ZsRDtFNkU3N1ZNOztJQUVFLDRCQUFzQztFN0UrN1Y5QztFNkU5OFZNO0lBQWdDLHFCQUE0QjtFN0VpOVZsRTtFNkVoOVZNOztJQUVFLHlCQUFvQztFN0VrOVY1QztFNkVoOVZNOztJQUVFLDJCQUF3QztFN0VrOVZoRDtFNkVoOVZNOztJQUVFLDRCQUEwQztFN0VrOVZsRDtFNkVoOVZNOztJQUVFLDBCQUFzQztFN0VrOVY5QztFNkVqK1ZNO0lBQWdDLDJCQUE0QjtFN0VvK1ZsRTtFNkVuK1ZNOztJQUVFLCtCQUFvQztFN0VxK1Y1QztFNkVuK1ZNOztJQUVFLGlDQUF3QztFN0VxK1ZoRDtFNkVuK1ZNOztJQUVFLGtDQUEwQztFN0VxK1ZsRDtFNkVuK1ZNOztJQUVFLGdDQUFzQztFN0VxK1Y5QztFNkVwL1ZNO0lBQWdDLDBCQUE0QjtFN0V1L1ZsRTtFNkV0L1ZNOztJQUVFLDhCQUFvQztFN0V3L1Y1QztFNkV0L1ZNOztJQUVFLGdDQUF3QztFN0V3L1ZoRDtFNkV0L1ZNOztJQUVFLGlDQUEwQztFN0V3L1ZsRDtFNkV0L1ZNOztJQUVFLCtCQUFzQztFN0V3L1Y5QztFNkV2Z1dNO0lBQWdDLHdCQUE0QjtFN0UwZ1dsRTtFNkV6Z1dNOztJQUVFLDRCQUFvQztFN0UyZ1c1QztFNkV6Z1dNOztJQUVFLDhCQUF3QztFN0UyZ1doRDtFNkV6Z1dNOztJQUVFLCtCQUEwQztFN0UyZ1dsRDtFNkV6Z1dNOztJQUVFLDZCQUFzQztFN0UyZ1c5QztFNkUxaFdNO0lBQWdDLDBCQUE0QjtFN0U2aFdsRTtFNkU1aFdNOztJQUVFLDhCQUFvQztFN0U4aFc1QztFNkU1aFdNOztJQUVFLGdDQUF3QztFN0U4aFdoRDtFNkU1aFdNOztJQUVFLGlDQUEwQztFN0U4aFdsRDtFNkU1aFdNOztJQUVFLCtCQUFzQztFN0U4aFc5QztFNkU3aVdNO0lBQWdDLHdCQUE0QjtFN0VnaldsRTtFNkUvaVdNOztJQUVFLDRCQUFvQztFN0Vpalc1QztFNkUvaVdNOztJQUVFLDhCQUF3QztFN0VpaldoRDtFNkUvaVdNOztJQUVFLCtCQUEwQztFN0VpaldsRDtFNkUvaVdNOztJQUVFLDZCQUFzQztFN0Vpalc5QztFNkV6aVdNO0lBQXdCLDJCQUEyQjtFN0U0aVd6RDtFNkUzaVdNOztJQUVFLCtCQUErQjtFN0U2aVd2QztFNkUzaVdNOztJQUVFLGlDQUFpQztFN0U2aVd6QztFNkUzaVdNOztJQUVFLGtDQUFrQztFN0U2aVcxQztFNkUzaVdNOztJQUVFLGdDQUFnQztFN0U2aVd4QztFNkU1aldNO0lBQXdCLDBCQUEyQjtFN0Urald6RDtFNkU5aldNOztJQUVFLDhCQUErQjtFN0Vna1d2QztFNkU5aldNOztJQUVFLGdDQUFpQztFN0Vna1d6QztFNkU5aldNOztJQUVFLGlDQUFrQztFN0Vna1cxQztFNkU5aldNOztJQUVFLCtCQUFnQztFN0Vna1d4QztFNkUva1dNO0lBQXdCLHdCQUEyQjtFN0VrbFd6RDtFNkVqbFdNOztJQUVFLDRCQUErQjtFN0VtbFd2QztFNkVqbFdNOztJQUVFLDhCQUFpQztFN0VtbFd6QztFNkVqbFdNOztJQUVFLCtCQUFrQztFN0VtbFcxQztFNkVqbFdNOztJQUVFLDZCQUFnQztFN0VtbFd4QztFNkVsbVdNO0lBQXdCLDBCQUEyQjtFN0VxbVd6RDtFNkVwbVdNOztJQUVFLDhCQUErQjtFN0VzbVd2QztFNkVwbVdNOztJQUVFLGdDQUFpQztFN0VzbVd6QztFNkVwbVdNOztJQUVFLGlDQUFrQztFN0VzbVcxQztFNkVwbVdNOztJQUVFLCtCQUFnQztFN0VzbVd4QztFNkVybldNO0lBQXdCLHdCQUEyQjtFN0V3bld6RDtFNkV2bldNOztJQUVFLDRCQUErQjtFN0V5bld2QztFNkV2bldNOztJQUVFLDhCQUFpQztFN0V5bld6QztFNkV2bldNOztJQUVFLCtCQUFrQztFN0V5blcxQztFNkV2bldNOztJQUVFLDZCQUFnQztFN0V5bld4QztFNkVubldFO0lBQW1CLHVCQUF1QjtFN0Vzblc1QztFNkVybldFOztJQUVFLDJCQUEyQjtFN0V1blcvQjtFNkVybldFOztJQUVFLDZCQUE2QjtFN0V1bldqQztFNkVybldFOztJQUVFLDhCQUE4QjtFN0V1bldsQztFNkVybldFOztJQUVFLDRCQUE0QjtFN0V1bldoQztBQUNGOztBb0Jqb1dJO0V5RGxESTtJQUFnQyxvQkFBNEI7RTdFd3JXbEU7RTZFdnJXTTs7SUFFRSx3QkFBb0M7RTdFeXJXNUM7RTZFdnJXTTs7SUFFRSwwQkFBd0M7RTdFeXJXaEQ7RTZFdnJXTTs7SUFFRSwyQkFBMEM7RTdFeXJXbEQ7RTZFdnJXTTs7SUFFRSx5QkFBc0M7RTdFeXJXOUM7RTZFeHNXTTtJQUFnQywwQkFBNEI7RTdFMnNXbEU7RTZFMXNXTTs7SUFFRSw4QkFBb0M7RTdFNHNXNUM7RTZFMXNXTTs7SUFFRSxnQ0FBd0M7RTdFNHNXaEQ7RTZFMXNXTTs7SUFFRSxpQ0FBMEM7RTdFNHNXbEQ7RTZFMXNXTTs7SUFFRSwrQkFBc0M7RTdFNHNXOUM7RTZFM3RXTTtJQUFnQyx5QkFBNEI7RTdFOHRXbEU7RTZFN3RXTTs7SUFFRSw2QkFBb0M7RTdFK3RXNUM7RTZFN3RXTTs7SUFFRSwrQkFBd0M7RTdFK3RXaEQ7RTZFN3RXTTs7SUFFRSxnQ0FBMEM7RTdFK3RXbEQ7RTZFN3RXTTs7SUFFRSw4QkFBc0M7RTdFK3RXOUM7RTZFOXVXTTtJQUFnQyx1QkFBNEI7RTdFaXZXbEU7RTZFaHZXTTs7SUFFRSwyQkFBb0M7RTdFa3ZXNUM7RTZFaHZXTTs7SUFFRSw2QkFBd0M7RTdFa3ZXaEQ7RTZFaHZXTTs7SUFFRSw4QkFBMEM7RTdFa3ZXbEQ7RTZFaHZXTTs7SUFFRSw0QkFBc0M7RTdFa3ZXOUM7RTZFandXTTtJQUFnQyx5QkFBNEI7RTdFb3dXbEU7RTZFbndXTTs7SUFFRSw2QkFBb0M7RTdFcXdXNUM7RTZFbndXTTs7SUFFRSwrQkFBd0M7RTdFcXdXaEQ7RTZFbndXTTs7SUFFRSxnQ0FBMEM7RTdFcXdXbEQ7RTZFbndXTTs7SUFFRSw4QkFBc0M7RTdFcXdXOUM7RTZFcHhXTTtJQUFnQyx1QkFBNEI7RTdFdXhXbEU7RTZFdHhXTTs7SUFFRSwyQkFBb0M7RTdFd3hXNUM7RTZFdHhXTTs7SUFFRSw2QkFBd0M7RTdFd3hXaEQ7RTZFdHhXTTs7SUFFRSw4QkFBMEM7RTdFd3hXbEQ7RTZFdHhXTTs7SUFFRSw0QkFBc0M7RTdFd3hXOUM7RTZFdnlXTTtJQUFnQyxxQkFBNEI7RTdFMHlXbEU7RTZFenlXTTs7SUFFRSx5QkFBb0M7RTdFMnlXNUM7RTZFenlXTTs7SUFFRSwyQkFBd0M7RTdFMnlXaEQ7RTZFenlXTTs7SUFFRSw0QkFBMEM7RTdFMnlXbEQ7RTZFenlXTTs7SUFFRSwwQkFBc0M7RTdFMnlXOUM7RTZFMXpXTTtJQUFnQywyQkFBNEI7RTdFNnpXbEU7RTZFNXpXTTs7SUFFRSwrQkFBb0M7RTdFOHpXNUM7RTZFNXpXTTs7SUFFRSxpQ0FBd0M7RTdFOHpXaEQ7RTZFNXpXTTs7SUFFRSxrQ0FBMEM7RTdFOHpXbEQ7RTZFNXpXTTs7SUFFRSxnQ0FBc0M7RTdFOHpXOUM7RTZFNzBXTTtJQUFnQywwQkFBNEI7RTdFZzFXbEU7RTZFLzBXTTs7SUFFRSw4QkFBb0M7RTdFaTFXNUM7RTZFLzBXTTs7SUFFRSxnQ0FBd0M7RTdFaTFXaEQ7RTZFLzBXTTs7SUFFRSxpQ0FBMEM7RTdFaTFXbEQ7RTZFLzBXTTs7SUFFRSwrQkFBc0M7RTdFaTFXOUM7RTZFaDJXTTtJQUFnQyx3QkFBNEI7RTdFbTJXbEU7RTZFbDJXTTs7SUFFRSw0QkFBb0M7RTdFbzJXNUM7RTZFbDJXTTs7SUFFRSw4QkFBd0M7RTdFbzJXaEQ7RTZFbDJXTTs7SUFFRSwrQkFBMEM7RTdFbzJXbEQ7RTZFbDJXTTs7SUFFRSw2QkFBc0M7RTdFbzJXOUM7RTZFbjNXTTtJQUFnQywwQkFBNEI7RTdFczNXbEU7RTZFcjNXTTs7SUFFRSw4QkFBb0M7RTdFdTNXNUM7RTZFcjNXTTs7SUFFRSxnQ0FBd0M7RTdFdTNXaEQ7RTZFcjNXTTs7SUFFRSxpQ0FBMEM7RTdFdTNXbEQ7RTZFcjNXTTs7SUFFRSwrQkFBc0M7RTdFdTNXOUM7RTZFdDRXTTtJQUFnQyx3QkFBNEI7RTdFeTRXbEU7RTZFeDRXTTs7SUFFRSw0QkFBb0M7RTdFMDRXNUM7RTZFeDRXTTs7SUFFRSw4QkFBd0M7RTdFMDRXaEQ7RTZFeDRXTTs7SUFFRSwrQkFBMEM7RTdFMDRXbEQ7RTZFeDRXTTs7SUFFRSw2QkFBc0M7RTdFMDRXOUM7RTZFbDRXTTtJQUF3QiwyQkFBMkI7RTdFcTRXekQ7RTZFcDRXTTs7SUFFRSwrQkFBK0I7RTdFczRXdkM7RTZFcDRXTTs7SUFFRSxpQ0FBaUM7RTdFczRXekM7RTZFcDRXTTs7SUFFRSxrQ0FBa0M7RTdFczRXMUM7RTZFcDRXTTs7SUFFRSxnQ0FBZ0M7RTdFczRXeEM7RTZFcjVXTTtJQUF3QiwwQkFBMkI7RTdFdzVXekQ7RTZFdjVXTTs7SUFFRSw4QkFBK0I7RTdFeTVXdkM7RTZFdjVXTTs7SUFFRSxnQ0FBaUM7RTdFeTVXekM7RTZFdjVXTTs7SUFFRSxpQ0FBa0M7RTdFeTVXMUM7RTZFdjVXTTs7SUFFRSwrQkFBZ0M7RTdFeTVXeEM7RTZFeDZXTTtJQUF3Qix3QkFBMkI7RTdFMjZXekQ7RTZFMTZXTTs7SUFFRSw0QkFBK0I7RTdFNDZXdkM7RTZFMTZXTTs7SUFFRSw4QkFBaUM7RTdFNDZXekM7RTZFMTZXTTs7SUFFRSwrQkFBa0M7RTdFNDZXMUM7RTZFMTZXTTs7SUFFRSw2QkFBZ0M7RTdFNDZXeEM7RTZFMzdXTTtJQUF3QiwwQkFBMkI7RTdFODdXekQ7RTZFNzdXTTs7SUFFRSw4QkFBK0I7RTdFKzdXdkM7RTZFNzdXTTs7SUFFRSxnQ0FBaUM7RTdFKzdXekM7RTZFNzdXTTs7SUFFRSxpQ0FBa0M7RTdFKzdXMUM7RTZFNzdXTTs7SUFFRSwrQkFBZ0M7RTdFKzdXeEM7RTZFOThXTTtJQUF3Qix3QkFBMkI7RTdFaTlXekQ7RTZFaDlXTTs7SUFFRSw0QkFBK0I7RTdFazlXdkM7RTZFaDlXTTs7SUFFRSw4QkFBaUM7RTdFazlXekM7RTZFaDlXTTs7SUFFRSwrQkFBa0M7RTdFazlXMUM7RTZFaDlXTTs7SUFFRSw2QkFBZ0M7RTdFazlXeEM7RTZFNThXRTtJQUFtQix1QkFBdUI7RTdFKzhXNUM7RTZFOThXRTs7SUFFRSwyQkFBMkI7RTdFZzlXL0I7RTZFOThXRTs7SUFFRSw2QkFBNkI7RTdFZzlXakM7RTZFOThXRTs7SUFFRSw4QkFBOEI7RTdFZzlXbEM7RTZFOThXRTs7SUFFRSw0QkFBNEI7RTdFZzlXaEM7QUFDRjs7QW9CMTlXSTtFeURsREk7SUFBZ0Msb0JBQTRCO0U3RWloWGxFO0U2RWhoWE07O0lBRUUsd0JBQW9DO0U3RWtoWDVDO0U2RWhoWE07O0lBRUUsMEJBQXdDO0U3RWtoWGhEO0U2RWhoWE07O0lBRUUsMkJBQTBDO0U3RWtoWGxEO0U2RWhoWE07O0lBRUUseUJBQXNDO0U3RWtoWDlDO0U2RWppWE07SUFBZ0MsMEJBQTRCO0U3RW9pWGxFO0U2RW5pWE07O0lBRUUsOEJBQW9DO0U3RXFpWDVDO0U2RW5pWE07O0lBRUUsZ0NBQXdDO0U3RXFpWGhEO0U2RW5pWE07O0lBRUUsaUNBQTBDO0U3RXFpWGxEO0U2RW5pWE07O0lBRUUsK0JBQXNDO0U3RXFpWDlDO0U2RXBqWE07SUFBZ0MseUJBQTRCO0U3RXVqWGxFO0U2RXRqWE07O0lBRUUsNkJBQW9DO0U3RXdqWDVDO0U2RXRqWE07O0lBRUUsK0JBQXdDO0U3RXdqWGhEO0U2RXRqWE07O0lBRUUsZ0NBQTBDO0U3RXdqWGxEO0U2RXRqWE07O0lBRUUsOEJBQXNDO0U3RXdqWDlDO0U2RXZrWE07SUFBZ0MsdUJBQTRCO0U3RTBrWGxFO0U2RXprWE07O0lBRUUsMkJBQW9DO0U3RTJrWDVDO0U2RXprWE07O0lBRUUsNkJBQXdDO0U3RTJrWGhEO0U2RXprWE07O0lBRUUsOEJBQTBDO0U3RTJrWGxEO0U2RXprWE07O0lBRUUsNEJBQXNDO0U3RTJrWDlDO0U2RTFsWE07SUFBZ0MseUJBQTRCO0U3RTZsWGxFO0U2RTVsWE07O0lBRUUsNkJBQW9DO0U3RThsWDVDO0U2RTVsWE07O0lBRUUsK0JBQXdDO0U3RThsWGhEO0U2RTVsWE07O0lBRUUsZ0NBQTBDO0U3RThsWGxEO0U2RTVsWE07O0lBRUUsOEJBQXNDO0U3RThsWDlDO0U2RTdtWE07SUFBZ0MsdUJBQTRCO0U3RWduWGxFO0U2RS9tWE07O0lBRUUsMkJBQW9DO0U3RWluWDVDO0U2RS9tWE07O0lBRUUsNkJBQXdDO0U3RWluWGhEO0U2RS9tWE07O0lBRUUsOEJBQTBDO0U3RWluWGxEO0U2RS9tWE07O0lBRUUsNEJBQXNDO0U3RWluWDlDO0U2RWhvWE07SUFBZ0MscUJBQTRCO0U3RW1vWGxFO0U2RWxvWE07O0lBRUUseUJBQW9DO0U3RW9vWDVDO0U2RWxvWE07O0lBRUUsMkJBQXdDO0U3RW9vWGhEO0U2RWxvWE07O0lBRUUsNEJBQTBDO0U3RW9vWGxEO0U2RWxvWE07O0lBRUUsMEJBQXNDO0U3RW9vWDlDO0U2RW5wWE07SUFBZ0MsMkJBQTRCO0U3RXNwWGxFO0U2RXJwWE07O0lBRUUsK0JBQW9DO0U3RXVwWDVDO0U2RXJwWE07O0lBRUUsaUNBQXdDO0U3RXVwWGhEO0U2RXJwWE07O0lBRUUsa0NBQTBDO0U3RXVwWGxEO0U2RXJwWE07O0lBRUUsZ0NBQXNDO0U3RXVwWDlDO0U2RXRxWE07SUFBZ0MsMEJBQTRCO0U3RXlxWGxFO0U2RXhxWE07O0lBRUUsOEJBQW9DO0U3RTBxWDVDO0U2RXhxWE07O0lBRUUsZ0NBQXdDO0U3RTBxWGhEO0U2RXhxWE07O0lBRUUsaUNBQTBDO0U3RTBxWGxEO0U2RXhxWE07O0lBRUUsK0JBQXNDO0U3RTBxWDlDO0U2RXpyWE07SUFBZ0Msd0JBQTRCO0U3RTRyWGxFO0U2RTNyWE07O0lBRUUsNEJBQW9DO0U3RTZyWDVDO0U2RTNyWE07O0lBRUUsOEJBQXdDO0U3RTZyWGhEO0U2RTNyWE07O0lBRUUsK0JBQTBDO0U3RTZyWGxEO0U2RTNyWE07O0lBRUUsNkJBQXNDO0U3RTZyWDlDO0U2RTVzWE07SUFBZ0MsMEJBQTRCO0U3RStzWGxFO0U2RTlzWE07O0lBRUUsOEJBQW9DO0U3RWd0WDVDO0U2RTlzWE07O0lBRUUsZ0NBQXdDO0U3RWd0WGhEO0U2RTlzWE07O0lBRUUsaUNBQTBDO0U3RWd0WGxEO0U2RTlzWE07O0lBRUUsK0JBQXNDO0U3RWd0WDlDO0U2RS90WE07SUFBZ0Msd0JBQTRCO0U3RWt1WGxFO0U2RWp1WE07O0lBRUUsNEJBQW9DO0U3RW11WDVDO0U2RWp1WE07O0lBRUUsOEJBQXdDO0U3RW11WGhEO0U2RWp1WE07O0lBRUUsK0JBQTBDO0U3RW11WGxEO0U2RWp1WE07O0lBRUUsNkJBQXNDO0U3RW11WDlDO0U2RTN0WE07SUFBd0IsMkJBQTJCO0U3RTh0WHpEO0U2RTd0WE07O0lBRUUsK0JBQStCO0U3RSt0WHZDO0U2RTd0WE07O0lBRUUsaUNBQWlDO0U3RSt0WHpDO0U2RTd0WE07O0lBRUUsa0NBQWtDO0U3RSt0WDFDO0U2RTd0WE07O0lBRUUsZ0NBQWdDO0U3RSt0WHhDO0U2RTl1WE07SUFBd0IsMEJBQTJCO0U3RWl2WHpEO0U2RWh2WE07O0lBRUUsOEJBQStCO0U3RWt2WHZDO0U2RWh2WE07O0lBRUUsZ0NBQWlDO0U3RWt2WHpDO0U2RWh2WE07O0lBRUUsaUNBQWtDO0U3RWt2WDFDO0U2RWh2WE07O0lBRUUsK0JBQWdDO0U3RWt2WHhDO0U2RWp3WE07SUFBd0Isd0JBQTJCO0U3RW93WHpEO0U2RW53WE07O0lBRUUsNEJBQStCO0U3RXF3WHZDO0U2RW53WE07O0lBRUUsOEJBQWlDO0U3RXF3WHpDO0U2RW53WE07O0lBRUUsK0JBQWtDO0U3RXF3WDFDO0U2RW53WE07O0lBRUUsNkJBQWdDO0U3RXF3WHhDO0U2RXB4WE07SUFBd0IsMEJBQTJCO0U3RXV4WHpEO0U2RXR4WE07O0lBRUUsOEJBQStCO0U3RXd4WHZDO0U2RXR4WE07O0lBRUUsZ0NBQWlDO0U3RXd4WHpDO0U2RXR4WE07O0lBRUUsaUNBQWtDO0U3RXd4WDFDO0U2RXR4WE07O0lBRUUsK0JBQWdDO0U3RXd4WHhDO0U2RXZ5WE07SUFBd0Isd0JBQTJCO0U3RTB5WHpEO0U2RXp5WE07O0lBRUUsNEJBQStCO0U3RTJ5WHZDO0U2RXp5WE07O0lBRUUsOEJBQWlDO0U3RTJ5WHpDO0U2RXp5WE07O0lBRUUsK0JBQWtDO0U3RTJ5WDFDO0U2RXp5WE07O0lBRUUsNkJBQWdDO0U3RTJ5WHhDO0U2RXJ5WEU7SUFBbUIsdUJBQXVCO0U3RXd5WDVDO0U2RXZ5WEU7O0lBRUUsMkJBQTJCO0U3RXl5WC9CO0U2RXZ5WEU7O0lBRUUsNkJBQTZCO0U3RXl5WGpDO0U2RXZ5WEU7O0lBRUUsOEJBQThCO0U3RXl5WGxDO0U2RXZ5WEU7O0lBRUUsNEJBQTRCO0U3RXl5WGhDO0FBQ0Y7O0E4RTMyWEE7RUFFSSxrQkFBa0I7RUFDbEIsTUFBTTtFQUNOLFFBQVE7RUFDUixTQUFTO0VBQ1QsT0FBTztFQUNQLFVBQVU7RUFFVixvQkFBb0I7RUFDcEIsV0FBVztFQUVYLGtDQUFrQztBOUUyMlh0Qzs7QStFcjNYQTtFQUFrQiw0R0FBOEM7QS9FeTNYaEU7O0ErRXIzWEE7RUFBaUIsOEJBQThCO0EvRXkzWC9DOztBK0V4M1hBO0VBQWlCLDhCQUE4QjtBL0U0M1gvQzs7QStFMzNYQTtFQUFpQiw4QkFBOEI7QS9FKzNYL0M7O0ErRTkzWEE7RUNURSxnQkFBZ0I7RUFDaEIsdUJBQXVCO0VBQ3ZCLG1CQUFtQjtBaEYyNFhyQjs7QStFNTNYSTtFQUF3QiwyQkFBMkI7QS9FZzRYdkQ7O0ErRS8zWEk7RUFBd0IsNEJBQTRCO0EvRW00WHhEOztBK0VsNFhJO0VBQXdCLDZCQUE2QjtBL0VzNFh6RDs7QW9CajJYSTtFMkR2Q0E7SUFBd0IsMkJBQTJCO0UvRTY0WHJEO0UrRTU0WEU7SUFBd0IsNEJBQTRCO0UvRSs0WHREO0UrRTk0WEU7SUFBd0IsNkJBQTZCO0UvRWk1WHZEO0FBQ0Y7O0FvQjcyWEk7RTJEdkNBO0lBQXdCLDJCQUEyQjtFL0V5NVhyRDtFK0V4NVhFO0lBQXdCLDRCQUE0QjtFL0UyNVh0RDtFK0UxNVhFO0lBQXdCLDZCQUE2QjtFL0U2NVh2RDtBQUNGOztBb0J6M1hJO0UyRHZDQTtJQUF3QiwyQkFBMkI7RS9FcTZYckQ7RStFcDZYRTtJQUF3Qiw0QkFBNEI7RS9FdTZYdEQ7RStFdDZYRTtJQUF3Qiw2QkFBNkI7RS9FeTZYdkQ7QUFDRjs7QW9CcjRYSTtFMkR2Q0E7SUFBd0IsMkJBQTJCO0UvRWk3WHJEO0UrRWg3WEU7SUFBd0IsNEJBQTRCO0UvRW03WHREO0UrRWw3WEU7SUFBd0IsNkJBQTZCO0UvRXE3WHZEO0FBQ0Y7O0ErRWg3WEE7RUFBbUIsb0NBQW9DO0EvRW83WHZEOztBK0VuN1hBO0VBQW1CLG9DQUFvQztBL0V1N1h2RDs7QStFdDdYQTtFQUFtQixxQ0FBcUM7QS9FMDdYeEQ7O0ErRXQ3WEE7RUFBdUIsMkJBQTBDO0EvRTA3WGpFOztBK0V6N1hBO0VBQXVCLCtCQUE0QztBL0U2N1huRTs7QStFNTdYQTtFQUF1QiwyQkFBMkM7QS9FZzhYbEU7O0ErRS83WEE7RUFBdUIsMkJBQXlDO0EvRW04WGhFOztBK0VsOFhBO0VBQXVCLDhCQUEyQztBL0VzOFhsRTs7QStFcjhYQTtFQUF1Qiw2QkFBNkI7QS9FeThYcEQ7O0ErRXI4WEE7RUFBYyx5QkFBd0I7QS9FeThYdEM7O0FpRmgvWEU7RUFDRSx5QkFBd0I7QWpGbS9YNUI7O0FXeitYRTtFc0VMTSx5QkFBMEU7QWpGay9YbEY7O0FpRngvWEU7RUFDRSx5QkFBd0I7QWpGMi9YNUI7O0FXai9YRTtFc0VMTSx5QkFBMEU7QWpGMC9YbEY7O0FpRmhnWUU7RUFDRSx5QkFBd0I7QWpGbWdZNUI7O0FXei9YRTtFc0VMTSx5QkFBMEU7QWpGa2dZbEY7O0FpRnhnWUU7RUFDRSx5QkFBd0I7QWpGMmdZNUI7O0FXamdZRTtFc0VMTSx5QkFBMEU7QWpGMGdZbEY7O0FpRmhoWUU7RUFDRSx5QkFBd0I7QWpGbWhZNUI7O0FXemdZRTtFc0VMTSx5QkFBMEU7QWpGa2hZbEY7O0FpRnhoWUU7RUFDRSx5QkFBd0I7QWpGMmhZNUI7O0FXamhZRTtFc0VMTSx5QkFBMEU7QWpGMGhZbEY7O0FpRmhpWUU7RUFDRSx5QkFBd0I7QWpGbWlZNUI7O0FXemhZRTtFc0VMTSx5QkFBMEU7QWpGa2lZbEY7O0FpRnhpWUU7RUFDRSx5QkFBd0I7QWpGMmlZNUI7O0FXamlZRTtFc0VMTSx5QkFBMEU7QWpGMGlZbEY7O0ErRW5nWUE7RUFBYSx5QkFBNkI7QS9FdWdZMUM7O0ErRXRnWUE7RUFBYywwQ0FBNkI7QS9FMGdZM0M7O0ErRXhnWUE7RUFBaUIsb0NBQWtDO0EvRTRnWW5EOztBK0UzZ1lBO0VBQWlCLDBDQUFrQztBL0UrZ1luRDs7QStFM2dZQTtFR3ZERSxXQUFXO0VBQ1gsa0JBQWtCO0VBQ2xCLGlCQUFpQjtFQUNqQiw2QkFBNkI7RUFDN0IsU0FBUztBbEZza1lYOztBK0UvZ1lBO0VBQXdCLGdDQUFnQztBL0VtaFl4RDs7QStFamhZQTtFQUNFLGlDQUFpQztFQUNqQyxnQ0FBZ0M7QS9Fb2hZbEM7O0ErRS9nWUE7RUFBYyx5QkFBeUI7QS9FbWhZdkM7O0FtRnBsWUE7RUFDRSw4QkFBOEI7QW5GdWxZaEM7O0FtRnBsWUE7RUFDRSw2QkFBNkI7QW5GdWxZL0I7O0FvRnZsWUU7RTdFT0Y7OztJNkVETSw0QkFBNEI7SUFFNUIsMkJBQTJCO0VwRnVsWS9CO0VvRnBsWUU7SUFFSSwwQkFBMEI7RXBGcWxZaEM7RW9GNWtZRTtJQUNFLDZCQUE2QjtFcEY4a1lqQztFT2g1WEY7STZFL0tNLGdDQUFnQztFcEZra1lwQztFb0Zoa1lFOztJQUVFLHlCMUV6Q1k7STBFMENaLHdCQUF3QjtFcEZra1k1QjtFb0YxallFO0lBQ0UsMkJBQTJCO0VwRjRqWS9CO0VvRnpqWUU7O0lBRUUsd0JBQXdCO0VwRjJqWTVCO0VvRnhqWUU7OztJQUdFLFVBQVU7SUFDVixTQUFTO0VwRjBqWWI7RW9GdmpZRTs7SUFFRSx1QkFBdUI7RXBGeWpZM0I7RW9GampZRTtJQUNFLFExRStoQ2dDO0VWb2hXcEM7RU8vbFlGO0k2RStDTSwyQkFBMkM7RXBGbWpZL0M7RW9GampZRTtJQUNFLDJCQUEyQztFcEZtalkvQztFdUNqb1lGO0k2Q21GTSxhQUFhO0VwRmlqWWpCO0U0Q2hwWUY7SXdDa0dNLHlCNUVoR1M7RVJpcFliO0VzQnBwWUY7SThEdUdNLG9DQUFvQztFcEZnall4QztFb0ZqallFOztJQUtJLG9DQUFtQztFcEZnall6QztFc0JubllGOztJOEQwRVEsb0NBQXNDO0VwRjZpWTVDO0VzQmxpWUY7SThETk0sY0FBYztFcEYyaVlsQjtFdUJqcVlBOzs7O0k2RDRITSx3QzVFM0hPO0VSc3FZYjtFc0I3allGO0k4RHVCTSxjQUFjO0lBQ2Qsd0M1RWpJUztFUjBxWWI7QUFDRjs7QWdDdmpZQTtFcUR6SEUsK0NBQStDO0FyRm9yWWpEOztBZ0NycVlBO0VzRGRFLDhCREd1QjtFQ0Z2QixzQkRFdUI7RUNEdkIsaUNEQzhCO0VDQTlCLHlCREE4QjtFQ0M5QixpQ0FBaUM7RUFDakMseUJBQXlCO0VERHpCLDhDN0VDYTtBUndyWWY7O0FnQzlnWUE7RXFEdktFLGVBQWU7RUFDZixrRDdFTGE7QVI4cllmOztBcUYzcllBO0VBS0ksa0JBQWtCO0VBQ2xCLFdBQVc7RUFDWCxhQUFhO0FyRjByWWpCOztBcUZ0cllBO0VBQ0UsWUFBWTtBckZ5cllkOztBcUYxcllBO0VBSUksbUJBQW1CO0VBQ25CLG9CQUFvQjtBckYwcll4Qjs7QW9CMW9ZSTtFaUVyREo7SUFTSSxXQUFXO0VyRjJyWWI7QUFDRjs7QXFGeHJZQTtFQUdNLGlCQUFpQjtFQUNqQixtQkFBbUI7RUFDbkIsaUJBQWlCO0VBQ2pCLHFCQUFxQjtBckZ5clkzQjs7QXFGcHJZQTtFQUNFLDJDN0V2Q2E7QVI4dFlmOztBcUZ4cllBO0VBSUksYzdFekNXO0FSaXVZZjs7QXFGNXJZQTtFQU9NLG9DN0U1Q1M7QVJxdVlmOztBaURwdVlBO0VzQ1BFLGdCQUFnQjtFQUNoQixXL0VvTG1CO0FSMmpZckI7O0FpRDl0WUE7RXNDYkUsWUFBWTtBdkYrdVlkOztBd0NqdllBO0VnREhFLHFCaEZtTTBCO0VnRmxNMUIsd0NoRkthO0VnRkpiLHlCaEZHYTtBUnF2WWY7O0F3RjN2WUE7RUFNSSx5QkFBb0M7QXhGeXZZeEM7O0F3Q3hzWUE7RWdENUNFLGtCQUFrQjtFQUNsQixpQkFBaUI7RUFDakIsZ0JBQWdCO0F4Rnd2WWxCOztBd0YzdllBO0VBTUksZ0JBQWdCO0F4Rnl2WXBCOztBd0ZydllBO0VBQ0UsWUFBWTtBeEZ3dllkOztBd0ZydllBO0VBQ0UseUJoRm5CYTtFZ0ZvQmIsWUFBWTtBeEZ3dllkOztBd0ZydllBO0VBQ0UsY2hGdkJhO0FSK3dZZjs7QXdGcnZZQTtFQUNFLFlBQVk7RUFDWix5QmhGN0JhO0VnRjhCYix5QkFBb0M7QXhGd3ZZdEM7O0F3RnJ2WUE7RUFDRSx5QmhGbENhO0VnRm1DYixZQUFZO0F4Rnd2WWQ7O0F3RnJ2WUE7RUFDRSx5QmhGdkNhO0VnRndDYixZQUFZO0F4Rnd2WWQ7O0F1RDVyWUE7RWlDeERFLHlCaEY1Q2E7RWdGNkNiLGNoRjVDYTtBUm95WWY7O0F3RnJ2WUE7RUFDRSxzQkFBc0I7QXhGd3ZZeEI7O0F3RnJ2WUE7RUFDRSxZQUFZO0F4Rnd2WWQ7O0F3Q3h2WUE7RWdESUUsY2hGeERhO0VnRnlEYixlQUFlO0VBQ2YsbUJB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RjZWb0I7QVJpL1l4Qjs7QXNHdjFaQTtFQWFJLGtCQUFrQjtFQUNsQixlQUFlO0F0RzgwWm5COztBc0c1MVpBO0VBaUJNLFlBQVk7QXRHKzBabEI7O0FzRHJ6WkE7RWdEcEJFLGM5RmhCYTtFOEZpQmIsaUI5RjhVc0I7QVIrL1l4Qjs7QXVHbjJaRTtFQUNFLG9DQUE4QztBdkdzMlpsRDs7QXVHbjJaRTtFQUNFLHlCQUFtQztBdkdzMlp2Qzs7QXVHMzJaRTtFQUNFLG9DQUE4QztBdkc4MlpsRDs7QXVHMzJaRTtFQUNFLHlCQUFtQztBdkc4Mlp2Qzs7QXVHbjNaRTtFQUNFLG9DQUE4QztBdkdzM1psRDs7QXVHbjNaRTtFQUNFLHlCQUFtQztBdkdzM1p2Qzs7QXVHMzNaRTtFQUNFLG9DQUE4QztBdkc4M1psRDs7QXVHMzNaRTtFQUNFLHlCQUFtQztBdkc4M1p2Qzs7QXVHbjRaRTtFQUNFLG9DQUE4QztBdkdzNFpsRDs7QXVHbjRaRTtFQUNFLHlCQUFtQztBdkdzNFp2Qzs7QXVHMzRaRTtFQUNFLG9DQUE4QztBdkc4NFpsRDs7QXVHMzRaRTtFQUNFLHlCQUFtQztBdkc4NFp2Qzs7QXVHbjVaRTtFQUNFLG9DQUE4QztBdkdzNVpsRDs7QXVHbjVaRTtFQUNFLHlCQUFtQztBdkdzNVp2Qzs7QXVHMzVaRTtFQUNFLG9DQUE4QztBdkc4NVpsRDs7QXVHMzVaRTtFQUNFLHlCQUFtQztBdkc4NVp2Qzs7QXVHbjZaRTtFQUNFLG9DQUE4QztBdkdzNlpsRDs7QXVHbjZaRTtFQUNFLHlCQUFtQztBdkdzNlp2Qzs7QXVHMzZaRTtFQUNFLG9DQUE4QztBdkc4NlpsRDs7QXVHMzZaRTtFQUNFLHlCQUFtQztBdkc4Nlp2Qzs7QXVHbjdaRTtFQUNFLG9DQUE4QztBdkdzN1psRDs7QXVHbjdaRTtFQUNFLHlCQUFtQztBdkdzN1p2Qzs7QXdHNzdaQTtFQUNFLG9DaEdLYTtBUjI3WmY7O0F3Rzc3WkE7RUFDRSxvQ2hHQ2E7QVIrN1pmOztBd0c3N1pBO0VBQ0UsbUNBQW1DO0VBQ25DLGtDQUFrQztBeEdnOFpwQzs7QXdHbDhaQTtFQU1JLHdCQUF3QjtBeEdnOFo1Qjs7QU90N1pBO0VpR0xFLGVoR3VEbUI7QVJ3NFpyQjs7QU96eFpBO0VpR2xLRSxlQUFlO0F4Rys3WmpCOztBT3R2WkE7RWlHck1FLDBDaEdyQmE7RWdHc0JiLGtCaEcySWlCO0VnRzFJakIsZUFBZTtBeEcrN1pqQjs7QXdHNTdaQTs7Ozs7RUFLRSxpQ2hHbUMyQztBUjQ1WjdDOztBeUdwK1pBO0VBQ0UsZ0JBQWdCO0VBQ2hCLGVBQWU7QXpHdStaakI7O0F5R3orWkE7RUFNTSxxQmpHbUVxQjtFaUdsRXJCLG9CQUFvQjtFQUNwQixrQkFBa0I7QXpHdStaeEI7O0F5R2wrWkE7RUFDRSxnQkFBZ0I7QXpHcStabEI7O0F5R2wrWkE7RUFDRSxnQkFBZ0I7QXpHcStabEI7O0F5R2wrWkE7RUFDRSxnQkFBZ0I7QXpHcStabEI7O0EwRzMvWkE7RUFDRSxrQkFBa0I7QTFHOC9acEI7O0EwRzMvWkE7RUFDRSxpQkFBaUI7QTFHOC9abkI7O0FvQnY4Wkk7RXNGcERKO0lBR00sOEJBQTBIO0UxRzYvWjlIO0FBQ0Y7O0FvQmo3Wkk7RXNGaEZKO0lBT00sd0JoR2tONEI7RVY2eVpoQztBQUNGOztBb0J0OFpJO0VzRmpFSjtJQVdNLHdCaEc4TTRCO0VWbXpaaEM7QUFDRjs7QW9CejlaSTtFc0ZuRG9CO0lBaUJwQix3QmhHdU04QjtFVnl6WmhDO0FBQ0Y7O0FvQmw5Wkk7RXNGaEVvQjtJQXFCcEIsdUJoR21NOEI7RVYrelpoQztBQUNGOztBMEcvL1pBO0VBQ0UsWUFBWTtBMUdrZ2FkOztBMEduZ2FBO0VBSUksaUJBQWlCO0ExR21nYXJCOztBMEdwZ2FHO0VBTUQsZ0JBQWdCO0ExR2tnYWxCOztBMEcvL1pBO0VBQ0UscUJBQXFCO0VBQ3JCLGtCQUFrQjtFQUNsQixrQkFBa0I7RUFDbEIsYUFBYTtFQUNiLG1CQUFtQjtBMUdrZ2FyQjs7QTBHdmdhQTtFQVFJLGlCQUFpQjtFQUNqQixrQkFBa0I7RUFDbEIsU0FBUztFQUNULGtCQUFrQjtFQUNsQixjbEdwRFc7RWtHcURYLGNBQWM7QTFHbWdhbEI7O0EwR2hoYUE7RUFnQk0sZUFBZTtFQUNmLGNBQWM7RUFDZCxrQkFBa0I7RUFDbEIsZ0NsRzNEUztFa0c0RFQsb0JBQW9CO0ExR29nYTFCOztBMEd4aGFBO0VBMEJNLHlCQUF5QjtBMUdrZ2EvQjs7QTBHNWhhQTtFQStCSSxpQkFBaUI7RUFDakIsY0FBYztFQUNkLGtCQUFrQjtBMUdpZ2F0Qjs7QW9CdmdhSTtFc0YzQko7SUFvQ00sYUFBYTtFMUdtZ2FqQjtBQUNGOztBMkdybGFBO0VBQ0UsY0FBYztFQUNkLGlCQUFpQjtFQUNqQixrQkFBa0I7RUFDbEIsa0JBQWtCO0VBQ2xCLGlCQUFpQjtFQUNqQix5QkFBeUI7RUFDekIsZ0JuR3FFb0I7RW1HcEVwQix1QkFBdUI7RUFDdkIsK0JuR0phO0FSNGxhZjs7QTJHam1hQTtFQVlJLGNuR1BXO0FSZ21hZjs7QTJHcmxhQTtFQUNFLGtCQUFrQjtFQUNsQixnQkFBZ0I7QTNHd2xhbEI7O0EyRzFsYUE7RUFLSSxvQkFBb0I7RUFDcEIsbUJBQW1CO0VBQ25CLHVCQUF1QjtFQUN2QixxQ25HbEJXO0VtR21CWCxrQm5HNkllO0VtRzVJZixjbkdwQlc7RW1HcUJYLDhCQUE4QjtBM0d5bGFsQzs7QTJHcG1hQTtFQWNNLGlCQUFpQjtFQUNqQiwyQkFBMkI7RUFDM0Isb0JBQW9CO0EzRzBsYTFCOztBMkcxbWFBO0VBb0JNLGlDbkc5QlM7QVJ3bmFmOztBMkc5bWFBO0VBdUJRLHlCQUF5QjtBM0cybGFqQzs7QTJHcmxhQTtFQUVJLGlCQUFpQjtBM0d1bGFyQjs7QTJHbGxhQTtFQUNFLGFBQWE7RUFDYixtQkFBbUI7QTNHcWxhckI7O0EyR2xsYUE7RUFDRSxpQkFBaUI7RUFDakIsZUFBZTtFQUNmLGNuR3REYTtFbUd1RGIsK0NBQStDO0VyQlIvQyxXcUJTa0I7RXJCUmxCLFlxQlF3QjtFQUN4QixrQkFBa0I7RUFDbEIsYUFBYTtFQUNiLG1CQUFtQjtFQUNuQix1QkFBdUI7QTNHc2xhekI7O0EyRy9sYUE7RUFhSSxvQ25HaEVXO0VtR2lFWCxjbkdsRVc7QVJ3cGFmOztBMkdsbGFBO0VBQ0UsMkNuR3ZFYTtBUjRwYWY7O0EyR2hsYUE7RUFDRSxnQkFBZ0I7RUFDaEIsVUFBVTtFQUNWLFNBQVM7QTNHbWxhWDs7QTJHdGxhQTtFQU1JLGtCQUFrQjtFQUNsQixpQkFBaUI7QTNHb2xhckI7O0EyRzNsYUE7RUFVTSxxQkFBcUI7RUFDckIsbUJBQW1CO0VBQ25CLG1CQUFtQjtBM0dxbGF6Qjs7QTJHam1hQTtFQWdCTSxhQUFhO0VBQ2Isa0JBQWtCO0VBQ2xCLGtCQUFrQjtFQUNsQixZQUFZO0VBQ1osa0JBQWtCO0VBQ2xCLGtCQUFrQjtFQUNsQixxQkFBcUI7QTNHcWxhM0I7O0EyRzlrYUE7O0VBRUUsa0JuR3NEaUI7RThFakhqQixXcUI0RGtCO0VyQjNEbEIsWXFCMkR3QjtFQUN4QixvQkFBb0I7QTNHa2xhdEI7O0EyRy9rYUE7RUFDRSxtQkFBbUI7RUFDbkIseUJBQXlCO0VBQ3pCLGlCQUFpQjtFQUNqQixrQkFBa0I7RUFDbEIsY25HckhhO0VtR3NIYiwyQ25HdEhhO0VtR3VIYixrQkFBa0I7QTNHa2xhcEI7O0EyR3psYUE7RUFVSSxtQkFBbUI7RUFDbkIsaUJBQWlCO0EzR21sYXJCOztBMkc3a2FBO0VBQ0UsZUFBZTtFQUNmLE1BQU07RUFDTixPQUFPO0VyQnBGUCxXcUJxRmtCO0VyQnBGbEIsWXFCb0Z3QjtFQUN4QixlQUFlO0VBQ2YsWW5HRGtCO0FSa2xhcEI7O0EyRzVrYUE7RUFFSSxxQkFBcUI7RUFDckIscUJBQXFCO0VBQ3JCLDJDbkdoSlc7RW1HaUpYLGNuR2hKVztFbUdpSlgseUJBQXlCO0VBQ3pCLDhCQUE4QjtBM0c4a2FsQzs7QTJHcmxhQTtFQVVNLHNDbkd0SlM7QVJxdWFmOztBMkd4a2FBO0VBQ0UsZ0JqRzZEZ0M7QVY4Z2FsQzs7QTJHemthRTtFQUhGO0lBSUksZUFBZTtFM0c2a2FqQjtBQUNGOztBMkcza2FFO0VBUEY7SUFRSSxlQUFlO0UzRytrYWpCO0FBQ0Y7O0EyRzdrYUU7RUFYRjtJQVlJLGVBQWU7RTNHaWxhakI7QUFDRjs7QTRHaHdhQTtFQUNFLGVBQWU7RUFDZixXQUFXO0VBQ1gsWXBHc0lrQjtFb0dySWxCLGNwR0NhO0VvR0FiLFlwR3NJa0I7RW9HcklsQixhQUFhO0VBQ2IsbUJBQW1CO0VBQ25CLG9DcEdGYTtFb0dHYixNQUFNO0VBQ04sT0FBTztFQUNQLHFCQUFxQjtFQUNyQix3Q3BHTmE7RW9HT2Isc0RBQXNEO0E1R213YXhEOztBNERoeGFFO0VBQ0UsY0FBYztFQUNkLFdBQVc7RUFDWCxXQUFXO0E1RG14YWY7O0E0R3R4YUE7RUFpQkksa0JBQWtCO0E1R3l3YXRCOztBNEdyd2FBO0VBQ0UscUNwR2hCYTtFb0dpQmIsd0NwR2pCYTtBUnl4YWY7O0E0R253YUE7RUFDRSxZQUFZO0VBQ1osV0FBVztFQUNYLGFBQWE7RUFDYixtQkFBbUI7RUFDbkIseUJBQXlCO0VBQ3pCLGVBQWU7RUFDZixlQUFlO0VBQ2YseUJBQXlCO0E1R3N3YTNCOztBNEc5d2FBO0VBV0ksZUFBZTtFQUNmLFlBQVk7QTVHdXdhaEI7O0E0R2p3YUE7RUFDRSxvQkFBb0I7RUFDcEIsWXBHeUZrQjtFb0d4RmxCLGFBQWE7RUFDYixtQkFBbUI7QTVHb3dhckI7O0FvQjN2YUk7RXdGYko7SUFPSSxnQnBHb0ppQjtFUmtuYW5CO0FBQ0Y7O0E0Rzl3YUE7RUFXSSxjcEdwRFc7RW9HcURYLGlCQUFpQjtFQUNqQixpQkFBaUI7RUFDakIsbUJBQW1CO0VBQ25CLFNBQVM7QTVHdXdhYjs7QTRHandhQTtFQUNFLGdCQUFnQjtFQUNoQixrQkFBa0I7RUFDbEIsVUFBVTtBNUdvd2FaOztBNEd2d2FBO0VBTUkscUJBQXFCO0VBQ3JCLHNCQUFzQjtBNUdxd2ExQjs7QTRHNXdhQTtFQVVNLGNBQWM7RUFDZCxjcEd6RVM7RW9HMEVULGtCQUFrQjtFQUNsQixrQkFBa0I7RUFDbEIsaUJBQWlCO0VBQ2pCLGtCQUFrQjtFQUNsQixrQ0FBa0M7QTVHc3dheEM7O0E0R3R4YUE7RUFtQlEsd0JBQXdCO0VBQ3hCLGVBQWU7QTVHdXdhdkI7O0E0RzN4YUE7RUF1QlUsa0JBQWtCO0VBQ2xCLGlCQUFpQjtBNUd3d2EzQjs7QTRHaHlhQTs7RUErQk0sMENwRzdGUztBUm0yYWY7O0E0R3J5YUE7RUFtQ00sVUFBVTtBNUdzd2FoQjs7QW9CcHlhSTtFd0ZMSjtJQXVDTSxnQkFBZ0I7RTVHdXdhcEI7RTRHOXlhRjtJQTBDUSxPQUFPO0lBQ1Asb0JBQThCO0lBQzlCLDBCQUEwQjtFNUd1d2FoQztBQUNGOztBNEdsd2FBO0VBRUksa0JBQWtCO0E1R293YXRCOztBNEd0d2FBO0V0Qm5HRSxxQjlFc0R5QjtFOEVyRHpCLFlzQnVHdUI7RXRCdEd2QixpQnNCc0dzQztFQUNsQywwQ0FBMEM7RUFDMUMsa0JBQWtCO0VBQ2xCLE9BQU87RUFDUCxNQUFNO0VBQ04sUUFBUTtFQUNSLFNBQVM7RUFDVCxZQUFZO0VBQ1osV0FBVztFQUNYLFlBQVk7RUFDWiwwQ3BHL0hTO0VvR2dJVCxjcEdoSVM7RW9HaUlULGtCQUFrQjtFQUNsQixtQ0FBbUM7RUFDbkMsVUFBVTtFQUNWLGtCQUFrQjtFQUNsQixpQkFBaUI7QTVHdXdhdkI7O0E0RzV4YUE7RUEwQkksYUFBYTtBNUdzd2FqQjs7QTRHbHdhQTtFQUdNLGdDQUFnQztFQUNoQyxVQUFVO0E1R213YWhCOztBNEc5dmFBO0VBRUksV0FBVztFQUNYLFVBQVU7RUFDVixXQUFXO0VBQ1gseUJwRzVKVztFb0c2SlgsY3BHN0pXO0VvRzhKWCxrQkFBa0I7RUFDbEIsa0JBQWtCO0VBQ2xCLFNBQVM7RUFDVCxRQUFRO0VBQ1IsT0FBTztFQUNQLFlBQVk7RXRCdktkLDZCc0J3S3dCO0V0QnZLeEIscUJzQnVLd0I7RXRCdEt4QixrQ3NCc0tnQztFdEJyS2hDLDBCc0JxS2dDO0V0QnBLaEMsaUNBQWlDO0VBQ2pDLHlCQUF5QjtFc0JvS3ZCLG1DQUFtQztBNUdxd2F2Qzs7QTRHdHZhQTtFQUNFLE9BQU87RUFDUCxvQkFBb0I7RUFDcEIsa0JBQWtCO0E1R3l2YXBCOztBb0I3MmFJO0V3RmlISjtJQU1JLGlCQUFpQjtJQUNqQixrQkFBa0I7SUFDbEIsT0FBTztJQUNQLE1BQU07SUFDTixZQUFZO0lBQ1osV0FBVztJQUNYLHlCcEdoTVc7SW9HaU1YLFlwRzNEZ0I7SW9HNERoQixhQUFhO0lBQ2IsbUJBQW1CO0lBQ25CLHFFQUFxRTtFNUcydmF2RTtFNEczd2FGO0lBbUJNLG1DQUFpQztFNUcydmFyQztBQUNGOztBNEc3dmFLO0VBT0gscUNwRzVNYTtFb0c2TWIsd0NwRzdNYTtBUnU4YWY7O0E0R3Z2YUE7RUFDRSxrQkFBa0I7QTVHMHZhcEI7O0FvQno0YUk7RXdGOElKO0lBSUksZ0JBQWdCO0lBQ2hCLGNBQWM7SUFDZCxXQUFXO0U1RzR2YWI7QUFDRjs7QTRHenZhQTtFQUNFLFNBQVM7RUFDVCxrQnBHNURpQjtFb0c2RGpCLGNBQWM7RUFDZCxrQkFBa0I7RUFDbEIsV0FBVztFQUNYLCtDQUErQztBNUc0dmFqRDs7QW9CdjZhSTtFd0ZxS0o7SUEvQ0UsMkNwRzVLYTtJb0c2S2IsY3BHNUthO0VSaythYjtFNEdwemFBO0lBQ0UsZ0NwR2hMVztFUnMrYWI7RTRHM3dhRjtJQS9DRSxvQ3BHM0thO0lvRzRLYixjcEc1S2E7SW9HdU9ULGNwR3hPUztFUjIrYWI7RTRHNXphQTtJQUNFLGdDcEdoTFc7RVI4K2FiO0FBQ0Y7O0FvQjU2YUk7RXdGd0pKO0lBL0NFLDRDcEc1S2E7SW9HNktiLGNwRzVLYTtFUm8vYWI7RTRHdDBhQTtJQUNFLGdDcEdoTFc7RVJ3L2FiO0FBQ0Y7O0E0R3h3YUE7RUFFSSwwQ3BHblBXO0FSNi9hZjs7QTRHNXdhQTtFQUtNLDJDcEd0UFM7QVJpZ2JmOztBNEd0d2FBOztFQUVFLGtCQUFrQjtFQUNsQixPQUFPO0VBQ1AsTUFBTTtFQUNOLGFBQWE7RUFDYixtQkFBbUI7RUFDbkIsdUJBQXVCO0VBQ3ZCLGlCQUFpQjtFQUNqQixZQUFZO0VBQ1osV0FBVztFQUNYLGtCQUFrQjtFQUNsQixlQUFlO0VBQ2YsdURBQXVEO0E1R3l3YXpEOztBNEd0d2FBO0VBQ0UsVUFBVTtFQUNWLFVBQVU7RUFDVixtQkFBbUI7QTVHeXdhckI7O0FvQnA5YUk7RXdGOE1KO0lBSUksVUFBVTtJQUNWLG1CQUFtQjtFNUd1d2FyQjtBQUNGOztBb0IzOWFJO0V3RnVOSjtJQUVJLFVBQVU7SUFDVixVQUFVO0U1R3V3YVo7QUFDRjs7QTRHcHdhQTtFQU1JLFVBQVU7RUFDVixVQUFVO0VBQ1YsbUJBQW1CO0E1R2t3YXZCOztBNEc1dmFBO0VBQ0UsU0FBUztFQUNULGFBQWE7QTVHK3ZhZjs7QTRHNXZhQTtFQUNFLGtCQUFrQjtFQUNsQixlQUFlO0VBQ2Ysa0JwR3RKaUI7RW9HdUpqQixrQ0FBa0M7QTVHK3ZhcEM7O0E0R253YUE7RUFPSSwyQ3BHM1RXO0FSMmpiZjs7QTRHdndhQTtFQVVNLDJDcEc5VFM7QVIramJmOztBNEczd2FBO0VBZUksV0FBVztFQUNYLFlBQVk7RUFDWixrQkFBa0I7RUFDbEIsY3BHdFVXO0VvR3VVWCxpQkFBaUI7RUFDakIsaUJBQWlCO0VBQ2pCLDBDcEd6VVc7RW9HMFVYLHFCQUFxQjtFQUNyQixrQ0FBa0M7QTVHZ3dhdEM7O0E0R3Z4YUE7RUEyQkksY0FBYztFQUNkLGtCQUFrQjtFQUNsQixrQkFBa0I7QTVHZ3dhdEI7O0E0Rzd4YUE7RUFrQ00sY3BHclZTO0FSb2xiZjs7QTRHeHZhQTtFQUNFLGtCQUFrQjtFQUNsQix5QnBHL1ZhO0VvR2dXYixPQUFPO0VBQ1AsU0FBUztFQUNULFdBQVc7RUFDWCx1QkFBdUI7RUFDdkIsbUJBQW1CO0E1RzJ2YXJCOztBNEdsd2FBO0VBV00sa0JBQWtCO0VBQ2xCLDBCQUEwQjtBNUcydmFoQzs7QTRHdndhQTtFQWdCTSxpQkFBaUI7RUFDakIsY0FBZ0M7RUFDaEMsZ0JwR3hTZ0I7RW9HeVNoQix5QkFBeUI7QTVHMnZhL0I7O0E0Rzl3YUE7RUFzQlEsY3BHbFhPO0FSOG1iZjs7QTRHcHZhQTtFQUNFLG9DcEc1WGE7RW9HNlhiLGlCQUFpQjtFQUNqQixvQkFBb0I7RUFDcEIsaUJBQWlCO0VBQ2pCLGlCQUFpQjtFQUNqQixrQnBHaE9pQjtBUnU5YW5COztBNEdwdmFBO0VBR00sWUFBWTtFQUNaLFdBQVc7RUFDWCxrQkFBa0I7RUFDbEIscUJBQXFCO0VBQ3JCLGtCQUFrQjtFQUNsQixTQUFTO0VBQ1QsV0FBVztBNUdxdmFqQjs7QTZHeG9iQTtFQUNFLGtCQUFrQjtFQUNsQix1QkFBdUI7QTdHMm9iekI7O0E2R3hvYkE7RWhHREUsZUFBZTtFQUNmLGdCQUFnQjtBYjZvYmxCOztBNkc3b2JBO0VBSUksZUFBZTtFQUNmLGdCQUFnQjtFQUNoQiwrQnJHTFc7RXFHTVgsa0JBQWtCO0E3RzZvYnRCOztBNkdwcGJBO0VBV1EsV0FBVztFdkJzQ2pCLFV1QnJDdUI7RXZCc0N2QixXdUJ0QzRCO0VBQ3RCLGtCQUFrQjtFQUNsQixrQkFBa0I7RUFDbEIsV0FBVztFQUNYLFFBQVE7RUFDUiwwQ3JHaEJPO0FSOHBiZjs7QTZHL3BiQTtFQXNCTSxjckdyQlM7QVJrcWJmOztBOEc5b2JBO0VBQ0UsZ0JBQWdCO0E5R2lwYmxCOztBOEc5b2JBO0VBQ0UsWXRHMkttQjtFc0cxS25CLGVBQWU7RUFDZixPQUFPO0VBQ1AsWUFBWTtFQUNaLGdCQUFnQjtFQUNoQixZdEd3R2tCO0VzR3ZHbEIseUJ0Ry9CYTtFc0dnQ2IsK0JBQTBDO0E5R2lwYjVDOztBb0IzbmJJO0UwRjlCSjtJQVlNLFN0R2dHYztJc0cvRmQseUJBQXNDO0U5R2twYjFDO0FBQ0Y7O0FvQnJuYkk7RTBGM0NKO0lBN0JFLHFDdEdNYTtJc0dMYiwwQ0FBMEM7RTlHa3NiMUM7RThHaHNiQTtJQUNFLFVBQVU7SUFDVixtQ0FBbUM7RTlHa3NickM7RThHL3JiQTtJQUNFLDBDdEdIVztJc0dJWCxVQUFVO0lBQ1YsK0JBQStCO0U5R2lzYmpDO0U4RzVyYkE7SUFDRSwyQ3RHWlc7RVIwc2JiO0U4RzVyYkU7SUFDRSwwQ3RHZlM7RVI2c2JiO0FBQ0Y7O0E4R3RyYkE7RUF1Qkksd0JBQXdCO0E5R21xYjVCOztBOEcvcWJLO0VBeENILHFDdEdNYTtFc0dMYiwwQ0FBMEM7RUF5RDFDLE1BQU07RUFDTixZQUFZO0VBQ1osZ0JBQWdCO0E5R21xYmxCOztBOEc1dGJFO0VBQ0UsVUFBVTtFQUNWLG1DQUFtQztBOUcrdGJ2Qzs7QThHNXRiRTtFQUNFLDBDdEdIVztFc0dJWCxVQUFVO0VBQ1YsK0JBQStCO0E5Ryt0Ym5DOztBOEcxdGJFO0VBQ0UsMkN0R1pXO0FSeXViZjs7QThHM3RiSTtFQUNFLDBDdEdmUztBUjZ1YmY7O0E4R2xyYkE7RUFDRSw4QkFBNEM7QTlHcXJiOUM7O0E4R2hyYkE7RUFDRSxrQnRHK0ZpQjtFc0c5RmpCLGtCQUFrQjtFQUNsQixtQkFBbUI7QTlHbXJickI7O0E4R3RyYkE7RUFNSSxXQUFXO0VBQ1gsMEJ0R3lGZTtFc0d4RmYsMEN0R3pFVztFc0cwRVgsYUFBYTtBOUdvcmJqQjs7QThHNXFiQTtFQUNFLGFBQWE7RUFDYixtQkFBbUI7RUFDbkIsbUJBQW1CO0VBQ25CLGVBQWU7RUFDZixpQkFBaUI7RUFDakIsYUFBYTtFQUNiLGtCdEd3RWlCO0VzR3ZFakIsMkN0RzFGYTtFc0cyRmIsa0NBQWtDO0E5RytxYnBDOztBOEd4cmJBO0VBWUksMEN0RzlGVztBUjh3YmY7O0E4RzVxYkE7RUFDRSxXQUFXO0VBQ1gsWUFBWTtFQUNaLGtCQUFrQjtFQUNsQixvQkFBb0I7QTlHK3FidEI7O0E4RzVxYkE7RUFDRSxnQnRHbkNvQjtFc0dvQ3BCLGtCQUFrQjtBOUcrcWJwQjs7QThHNXFiQTtFQUNFLCtCdEcvR2E7QVI4eGJmOztBOEc1cWJBO0VBQ0UsWUFBWTtBOUcrcWJkOztBOEc1cWJBO0VBQ0UsWUFBWTtBOUcrcWJkOztBOEczcWJBO0VBQ0UsZ0JBQWdCO0VBQ2hCLFVBQVU7QTlHOHFiWjs7QThHaHJiQTtFQU1NLCtDQUErQztFQUMvQyxnQnRHM0RnQjtFc0c0RGhCLGNBQWM7QTlHOHFicEI7O0E4R3RyYkE7RUFhUSxjdEd2SU87QVJvemJmOztBOEcxcmJBO0VBZ0JVLG9DdEcxSUs7RXNHMklMLGN0RzNJSztBUnl6YmY7O0E4Ry9yYkE7RUF5Qk0sNkJBQTZCO0VBQzdCLGtCQUFrQjtFQUNsQixrQnRHV2E7QVIrcGJuQjs7QThHcnNiQTtFQThCUSxtQkFBbUI7RUFDbkIsa0JBQWtCO0VBQ2xCLGtCQUFrQjtFQUNsQixXQUFXO0VBQ1gsYUFBYTtFQUNiLGtCQUFrQjtFQUNsQixvQkFBb0I7QTlHMnFiNUI7O0E4Ry9zYkE7O0VBMkNJLGFBQWE7QTlHeXFiakI7O0E4R3B0YkE7O0VBOENNLDJDdEd6S1M7RXNHMEtULGN0RzFLUztBUnExYmY7O0E4R3RxYkE7RUFFSSxrQkFBa0I7QTlHd3FidEI7O0E4RzFxYkE7RUFNSSxrQnRHcEJlO0VzR3FCZixnQkFBZ0I7RUFDaEIsZ0JBQWdCO0VBQ2hCLFVBQVU7RUFDVixTQUFTO0E5R3dxYmI7O0E4R2xyYkE7RUFjUSxnQ0FBZ0M7QTlHd3FieEM7O0E4R3RyYkE7RUFrQlEsc0JBQXNCO0E5R3dxYjlCOztBOEcxcmJBO0VBeUJNLGFBQWE7QTlHcXFibkI7O0E4RzlyYkE7RUE4Qkksa0JBQWtCO0E5R29xYnRCOztBOEdsc2JBO0V4Qi9IRSxVd0JnS3FCO0V4Qi9KckIsV3dCK0owQjtFQUN0QixXQUFXO0VBQ1gsa0JBQWtCO0VBQ2xCLHlCdEduTlM7RXNHb05ULGtCQUFrQjtFQUNsQixZQUFZO0VBQ1osV0FBVztBOUdzcWJqQjs7QThHN3NiQTtFQTJDTSxjdEcxTlM7QVJnNGJmOztBK0dwNGJBO0VBQ0UscUJBQXFCO0VBQ3JCLFdBQVc7RUFDWCxZQUFZO0VBQ1osa0JBQWtCO0EvR3U0YnBCOztBK0dwNGJBO0VBQ0Usa0JBQWtCO0VBQ2xCLFlBQVk7RUFDWixXQUFXO0EvR3U0YmI7O0ErRzE0YkE7RUFPSSxtQ0FBbUM7RUFDbkMsV0FBVztFQUNYLGtCQUFrQjtFQUNsQixPQUFPO0VBQ1AsK0NBQStDO0EvR3U0Ym5EOztBK0dsNWJBO0VBZUksb0N2R2pCVztFdUdrQlgsUUFBUTtFQUNSLFlBQVk7RUFDWixXQUFXO0VBQ1gsbUJBQW1CO0EvR3U0YnZCOztBK0cxNWJBO0VBdUJJLFdBQVc7RUFDWCxZQUFZO0VBQ1osa0JBQWtCO0VBQ2xCLHlCdkc3Qlc7RXVHOEJYLE9BQU87RUFDUCx3Q3ZHOUJXO0V1RytCWCxVQUFVO0EvR3U0YmQ7O0ErR240YkE7RUFDRSxrQkFBa0I7RUFDbEIsT0FBTztFQUNQLE1BQU07RUFDTixXQUFXO0VBQ1gsWUFBWTtFQUNaLFVBQVU7RUFDVixVQUFVO0VBQ1YsZUFBZTtBL0dzNGJqQjs7QStHOTRiQTtFQWFRLHVCQUF1QjtFQUN2Qix5QnZHNUNLO0FSaTdiYjs7QStHbjViQTtFQW9CSSxZQUFZO0EvR200YmhCOztBK0d2NWJBO0VBdUJNLGFBQWE7QS9HbzRibkI7O0ErRzM1YkE7RUE2Qk0sZ0R2R2pFUztBUm04YmY7O0ErR3gzYlE7RUFDRSx5QnZHcEVNO0FSKzdiaEI7O0ErRzUzYlE7RUFDRSx5QnZHMUVJO0FSeThiZDs7QStHaDRiUTtFQUNFLHlCdkduRUs7QVJzOGJmOztBK0dwNGJRO0VBQ0UseUJ2R2xFSTtBUnk4YmQ7O0ErR3g0YlE7RUFDRSx5QnZHeEVNO0FSbTliaEI7O0ErRzU0YlE7RUFDRSx5QnZHakVJO0FSZzliZDs7QWdIaitiQTtFQUNFLGN4R01hO0V3R0xiLHlCQUF5QjtFQUN6Qix5QkFBeUI7RUFDekIsa0R4R0VhO0V3R0RiLGtCQUFrQjtBaEhvK2JwQjs7QWdIeitiQTtFQVFJLGtCQUFrQjtFQUNsQixXQUFXO0VBQ1gsV0FBVztBaEhxK2JmOztBZ0hqK2JBO0VBQ0UsZ0JBQWdCO0FoSG8rYmxCOztBZ0hqK2JBO0VBQ0UsdUJ4RzRLb0I7RXdHM0twQixzREFBc0Q7QWhIbytieEQ7O0FnSHQrYkE7RUFLSSxtQkFBbUI7QWhIcStidkI7O0FnSGorYkE7RUFFSSxhQUFhO0FoSG0rYmpCOztBb0JwOGJJO0U0RmpDSjtJQUlNLG1CQUFtQjtFaEhzK2J2QjtBQUNGOztBZ0hsK2JBO0VBQ0UsT0FBTztFQUNQLFlBQVk7QWhIcStiZDs7QWdIditiQTtFaENoQ0UsZ0JBQWdCO0VBQ2hCLHVCQUF1QjtFQUN2QixtQkFBbUI7RWdDb0NqQixXQUFXO0VBQ1gsZ0JBQWdCO0FoSHcrYnBCOztBZ0hwK2JBO0VBQ0UsZUFBZTtFQUNmLGN4RzFDYTtFd0cyQ2Isa0JBQWtCO0FoSHUrYnBCOztBZ0gxK2JBO0VBTUksV0FBVztBaEh3K2JmOztBZ0g5K2JBO0VBVUksWUFBWTtFQUNaLCtCeEdwRFc7RXdHcURY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QXdIMW9kQTtFQWdCSSxjQUFjO0VBQ2QsaUJBQWlCO0VBQ2pCLGdCQUFnQjtFQUNoQiwrQmhIOUZXO0VnSCtGWCxpQkFBaUI7QXhIOG5kckI7O0F3SGxwZEE7RUF1Qk0saUJBQWlCO0VBQ2pCLG1CQUFtQjtFQUNuQixvQkFBb0I7RUFDcEIsbUJBQW1CO0F4SCtuZHpCOztBd0h0cWRHO0VBNkNELDJCQUEyQjtBeEg2bmQ3Qjs7QXdIOW5kQTtFQUlJLGlCQUFpQjtBeEg4bmRyQjs7QXdIbG9kQTtFQU9NLDJDaEhqSFM7RWdIa0hULGNoSHZFaUI7RWdId0VqQixpQkFBaUI7QXhIK25kdkI7O0F3SDFuZEE7RUFDRSwrQ2hIekhhO0VnSDBIYixrQkFBa0I7QXhINm5kcEI7O0F3SDFuZEE7RUFDRSxZQUFZO0VBQ1osV0FBVztFQUNYLG1CQUFtQjtFQUNuQixTQUFTO0VBQ1Qsa0JoSCtCaUI7RWdIOUJqQixvQkFBb0I7RUFDcEIsWUFBWTtFQUNaLDZCQUE2QjtFQUM3QixjaEhySWE7QVJrd2RmOztBc0YzdGRFO0VrQ2lHRSx5QmhIeElXO0FSc3dkZjs7QXNGOXRkRTtFa0NnR0UseUJoSHhJVztBUjB3ZGY7O0FzRmp1ZEU7RWtDK0ZFLHlCaEh4SVc7QVI4d2RmOztBc0ZwdWRFO0VrQzhGRSx5QmhIeElXO0FSa3hkZjs7QXlIenhkQTtFQUNFLGtCQUFrQjtBekg0eGRwQjs7QXlIN3hkQTtFQUlJLGVBQWU7QXpINnhkbkI7O0F5SGp5ZEE7RUFPTSxlQUFlO0VBQ2Ysa0JBQWtCO0F6SDh4ZHhCOztBeUhueWRHO0VBV0QsU0FBUztBekg0eGRYOztBeUg3eGRBO0VBSUksVUFBVTtBekg2eGRkOztBeUh6eGRBO0VBQ0UsbUJBQW1CO0VuQ1ZuQixvQzlFTGE7RThFTWIsa0I5RTBKaUI7RThFekpqQix3QzlFUGE7QVI4eWRmOztBb0I1dWRJO0VxR3BESjtJQUtJLGdCQUFnQjtJQUNoQixpQkFBaUI7SUFDakIsa0JBQWtCO0V6SGd5ZHBCO0FBQ0Y7O0FvQmp3ZEk7RXFHNUJKO0lBRUksb0JBQW9CO0lBQ3BCLGtCQUFrQjtJ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SUdXO0UySUZYLDhCM0lHVztFMklGWCxZQUFZO0FuSjZsbUJoQjs7QW1KbG1tQkE7RUFRTSxhQUFhO0FuSjhsbUJuQjs7QW1KdG1tQkE7RUFZTSwrQjNJTlM7QVJvbW1CZjs7QW1KMW1tQkE7RUFnQk0sZ0J6SW9SMkI7RXlJblIzQixvQjNJeUNvQjtFMkl4Q3BCLGMzSVpTO0FSMG1tQmY7O0FtSmhubUJBO0VBdUJJLHlCQUFvQztFQUNwQyxZQUFZO0FuSjZsbUJoQjs7QW1Kcm5tQkE7RUE0QkkseUIzSXJCVztFMklzQlgsWUFBWTtBbko2bG1CaEI7O0FtSjFubUJBO0VBaUNJLHlCQUFvQztFQUNwQyxZQUFZO0FuSjZsbUJoQjs7QW1KL25tQkE7RUFzQ0kseUJBQW9DO0VBQ3BDLFlBQVk7QW5KNmxtQmhCOztBbUpwb21CQTtFQTJDSSx5QkFBb0M7RUFDcEMsWUFBWTtBbko2bG1CaEI7O0FtSnpvbUJBO0VBZ0RJLHlCQUFvQztFQUNwQyxZQUFZO0FuSjZsbUJoQjs7QW1KOW9tQkE7RUFxREkseUJBQW9DO0VBQ3BDLFlBQVk7QW5KNmxtQmhCOztBbUpucG1CQTtFQTBESSx5QkFBb0M7RUFDcEMsWUFBWTtBbko2bG1CaEI7O0FtSnhwbUJBO0VBZ0VNLG1CM0l6RFM7RTJJMERULDZDM0kzRFM7QVJ1cG1CZjs7QW1KN3BtQkE7RUFzRUksNkJBQTZCO0VBQzdCLG1CM0loRVc7RTJJaUVYLGdCQUFnQjtFQUNoQiw4QkFBOEI7QW5KMmxtQmxDOztBbUpwcW1CQTtFQTRFTSxnQkFBZ0I7RUFDaEIsU0FBUztFQUNULDJDM0l4RVM7RTJJeUVULHVCQUF1QjtFQUN2QixjM0l6RVM7QVJxcW1CZjs7QW1KNXFtQkE7RUFvRk0sb0JBQW9CO0VBQ3BCLGMzSTlFUztBUjBxbUJmOztBbUpqcm1CQTtFQXdGUSxjM0lqRk87RTJJa0ZQLGFBQWE7QW5KNmxtQnJCOztBbUp0cm1CQTtFQWdHTSw2QkFBNkI7RUFDN0IsWUFBWTtBbkowbG1CbEI7O0FtSjNybUJBO0VBdUdNLHFDM0loR1M7RTJJaUdULGMzSWpHUztBUnlybUJmOztBbUpubG1CQTs7RUFFRSxnREFBZ0Q7QW5Kc2xtQmxEOztBbUpubG1CQTtFQUVJLDZDM0k5R1c7RTJJK0dYLGtCQUFrQjtBbkpxbG1CdEI7O0FtSmpsbUJBO0VBQ0UseUIzSXBIYTtFMklxSGIsU0FBUztFQUNULGtCM0kyQ2lCO0UySTFDakIsaUJBQThCO0VBQzlCLDhDM0l2SGE7RTJJd0hiLFczSWFrQjtFOEUxSWxCLDhCNkQ4SHVCO0U3RDdIdkIsc0I2RDZIdUI7RTdENUh2QixpQzZENEg4QjtFN0QzSDlCLHlCNkQySDhCO0U3RDFIOUIsaUNBQWlDO0VBQ2pDLHlCQUF5QjtBdEZrdG1CM0I7O0FtSmhtbUJBO0VBVUksdUIzSXdCNEI7QVJra21CaEM7O0FtSnBtbUJBO0VBZU0sMkMzSWxJUztFMkltSVQsYzNJbklTO0FSNHRtQmY7O0FtSnptbUJBO0VBcUJJLGMzSXZJVztFMkl3SVgsYUFBYTtBbkp3bG1CakI7O0FtSjltbUJBO0VBMEJJLG1CQUFtQjtFQUNuQixrRDNJOUlXO0UySStJWCxrQkFBa0I7RUFDbEIsbUJBQW1CO0FuSndsbUJ2Qjs7QW1Kcm5tQkE7RTdEdEdFLHFCOUVzRHlCO0U4RXJEekIsWTZEcUl1QjtFN0RwSXZCLGlCNkRvSXNDO0VBQ2xDLGMzSW5KUztFMklvSlQsa0JBQWtCO0VBQ2xCLFlBQVk7RUFDWixXQUFXO0FuSjJsbUJqQjs7QW1KL25tQkE7RUF5Q00sU0FBUztFQUNULDZCM0lwRWdCO0UySXFFaEIsY0FBYztFQUNkLDBCQUEwQjtBbkowbG1CaEM7O0FtSnJsbUJBO0VBQ0UsYzNJcEthO0FSNHZtQmY7O0FzRnJ0bUJFO0U2RGdJRSx5QjNJdktXO0FSZ3dtQmY7O0FzRnh0bUJFO0U2RCtIRSx5QjNJdktXO0FSb3dtQmY7O0FzRjN0bUJFO0U2RDhIRSx5QjNJdktXO0FSd3dtQmY7O0FzRjl0bUJFO0U2RDZIRSx5QjNJdktXO0FSNHdtQmY7O0FtSmptbUJBO0VBR00saUJBQWlCO0VBQ2pCLGNBQWM7QW5Ka21tQnBCOztBbUo3bG1CQTtFQUNFLHlCQUFvQztFQUNwQyxZQUFZO0Fu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SXZONUIsdUI5STNEUztFOEk0RFQsa0M5SHVEMEQ7RThIdEQxRCxnQkFBZ0I7RUFDaEIsV0FBVztFQUNYLDZCOUl5QmdCO0U4SXhCaEIsYzlJaEVTO0U4SWlFVCw4QkFBOEI7QXRKNjVtQnBDOztBc0oxN21CQTs7OztFQWdDUSxtQjlJcEVPO0U4SXFFUCw2QzlJdEVPO0FSdSttQmY7O0FzRi83bUJFOzs7O0VnRWtDTSx5QjlJekVPO0FSNittQmY7O0FzRnI4bUJFOzs7O0VnRWlDTSx5QjlJekVPO0FSby9tQmY7O0FzRjM4bUJFOzs7O0VnRWdDTSx5QjlJekVPO0FSMi9tQmY7O0FzRmo5bUJFOzs7O0VnRStCTSx5QjlJekVPO0FSa2duQmY7O0FvQjc4bUJJO0VrSTBCSjtJQUVJLGdCQUFnQjtJQUNoQixtQkFBbUI7RXRKczdtQnJCO0FBQ0Y7O0FvQnY4bUJJO0VrSWFKO0lBT0ksYUFBYTtFdEp3N21CZjtBQUNGOztBc0poOG1CQTtFQVdJLGdCQUFnQjtBdEp5N21CcEI7O0FzSnA4bUJBO0VBZUksZ0JBQWdCO0VBQ2hCLG1GOUlLNEY7QVJvN21CaEc7O0FzSnI3bUJBO0VBQ0UsY0FBYztBdEp3N21CaEI7O0FzSno3bUJBO0VBSUksZ0JBQWdCO0F0Snk3bUJwQjs7QXNKcjdtQkE7RUFDRSxrQkFBa0I7QXRKdzdtQnBCOztBc0pyN21CQTtFQUNFLDJDOUlqSGE7RThJa0hiLHFCQUFxQjtFQUNyQixjOUlsSGE7RThJbUhiLG1CQUFtQjtFQUNuQixrQkFBa0I7RUFDbEIsbUJBQW1CO0VBQ25CLGVBQWU7RUFDZixlQUFlO0VBQ2YsYUFBYTtFQUNiLGNBQWM7RUFDZCxtQkFBbUI7RUFDbkIsa0JBQWtCO0VBQ2xCLCtDQUErQztBdEp3N21CakQ7O0FzSnI4bUJBO0VBZ0JJLG9DOUkvSFc7RThJZ0lYLGM5SWhJVztFOElpSVgsZUFBZTtBdEp5N21CbkI7O0FzSjM4bUJBO0VBd0JNLDBDOUl4SVM7RThJeUlULGM5SXhJUztBUitqbkJmOztBc0poOW1CQTtFQStCSSxlQUFlO0F0SnE3bUJuQjs7QXNKcDltQkE7RUFvQ0ksWUFBWTtFQUNaLGtCQUFrQjtBdEpvN21CdEI7O0FzSmw3bUJJO0VBdkNKO0lBd0NNLGVBQWU7RXRKczdtQm5CO0FBQ0Y7O0FzSi85bUJBO0VBNENNLHFCOUl6RnFCO0U4STBGckIsaUJBQWlCO0VBQ2pCLG9CQUFvQjtBdEp1N21CMUI7O0FzSnIrbUJBO0VBb0RNLGdCQUFnQjtBdEpxN21CdEI7O0FzSnorbUJBO0VBMERNLGdCQUFnQjtBdEptN21CdEI7O0FzSjcrbUJBO0VBK0RJLFlBQVk7QXRKazdtQmhCOztBc0pqL21CQTtFQW1FTSxjOUlsTFM7QVJvbW5CZjs7QXNKNzZtQkE7RUFDRSxrQkFBa0I7RUFDbEIsd0JBQXdCO0VBQ3hCLGlCQUFpQjtFQUNqQiwrQjlJNUxhO0FSNG1uQmY7O0FzSjc2bUJBO0VBQ0UsZ0JBQWdCO0F0Smc3bUJsQjs7QXNKajdtQkE7RUFNUSxnQkFBZ0I7QXRKKzZtQnhCOztBc0p6Nm1CQTtFQUVJLGFBQWE7RUFDYixpQkFBaUI7RUFDakIsZUFBZTtFQUNmLGtCQUFrQjtBdEoyNm1CdEI7O0FzSnY2bUJBO0VBRUkseUJBQXlCO0F0Snk2bUI3Qjs7QXNKcjZtQkE7RUFDRSxpQkFBaUI7QXRKdzZtQm5COztBc0pyNm1CQTtFQUNFLGdCQUFnQjtBdEp3Nm1CbEI7O0FzSno2bUJBO0VBSUksa0JBQWtCO0F0Snk2bUJ0Qjs7QXNKNzZtQkE7RWhFak5FLHFCOUVzRHlCO0U4RXJEekIsWWdFd05xQjtFaEV2TnJCLGlCZ0V1Tm9DO0VBQ2xDLGtCQUFrQjtFQUNsQixPQUFPO0VBQ1AsZ0JBQWdCO0F0SjI2bUJwQjs7QXNKdjZtQkE7RUFDRSxrQkFBa0I7RUFDbEIsaUJBQXlCO0F0SjA2bUIzQjs7QXNKdDZtQkE7RUFDRSxhQUFhO0F0Snk2bUJmOztBb0J2bW5CSTtFa0lpTUo7SWhFdk1FLFdnRXlNb0I7SWhFeE1wQixrQzlEbUU4RDtJOEhzSTVELHVCOUl6UFc7SThJMFBYLG1CQUFtQjtJQUNuQixrQkFBa0I7RXRKMDZtQnBCO0VzSi82bUJGO0loRXZNRSxXZ0UrTXNCO0loRTlNdEIsWWdFOE00QjtJQUN4QixjQUFjO0lBQ2QsaUJBQWlCO0lBQ2pCLGFBQWE7SUFDYix1QkFBdUI7SUFDdkIsbUJBQW1CO0lBQ25CLGVBQWU7SUFDZixrQ0FBa0M7RXRKMjZtQnRDO0VzSjE3bUJGOztJQW9CTSwyQzlJM1FTO0VScXJuQmI7QUFDRjs7QW9Cbm5uQkk7RWtJb0xKO0lBeUJJLGFBQWE7RXRKMjZtQmY7QUFDRjs7QXVKbHNuQkE7RUFDRSxrQi9Jc0tpQjtFK0lyS2pCLFNBQVM7RUFDVCw4Qy9JSWE7RStJSGIsV0FBVztFQUNYLGlCQUFpQjtFQUNqQixxQy9JQ2E7RStJQWIsZ0JBQWdCO0F2SnFzbkJsQjs7QXVKNXNuQkE7RUFXSSxhQUFhO0F2SnFzbkJqQjs7QXVKanNuQkE7RUFDRSwwQkFBZ0Q7QXZKb3NuQmxEOztBdUpyc25CQTtFQUlJLFlBQVk7QXZKcXNuQmhCOztBdUp6c25CQTs7RUFTSSxXQUFXO0VBQ1gsWUFBWTtFQUNaLFVBQVU7RUFDVixpQkFBaUI7RUFDakIsa0IvSTJJZTtFK0kxSWYsYy9JdkJXO0UrSXdCWCxTQUFTO0VBQ1QsZUFBZTtFQUNmLGtDQUFrQztBdkpxc25CdEM7O0F1SnR0bkJBOztFQW9CTSxjL0k3QlM7RStJOEJULDBDL0k5QlM7QVJxdW5CZjs7QXVKNXRuQkE7RUEwQkksaUJBQWlCO0F2SnNzbkJyQjs7QXVKaHVuQkE7RUE4Qkksa0JBQWtCO0F2SnNzbkJ0Qjs7QXVKbHNuQkE7RUFDRSxrQkFBa0I7RUFDbEIseUJBQXlCO0VBQ3pCLGMvSTlDYTtFK0krQ2IsaUJBQWlCO0F2SnFzbkJuQjs7QXVKenNuQkE7O0VBUUksZ0IvSW9Ca0I7QVJrcm5CdEI7O0F1SjlzbkJBO0VBWUksNkJBQTZCO0F2SnNzbkJqQzs7QXVKbHRuQkE7RUFpQk0sNkJBQTZCO0F2SnFzbkJuQzs7QXVKdHRuQkE7RUFxQk0sU0FBUztFQUNULFdBQVc7RUFDWCxVQUFVO0F2SnFzbkJoQjs7QXVKNXRuQkE7RUEwQlEsU0FBUztBdkpzc25CakI7O0F1Smh1bkJBO0VBOEJRLDRCL0l6RU87QVIrd25CZjs7QXVKcHVuQkE7RUFrQ1EseUIvSTdFTztBUm14bkJmOztBdUpoc25CQTtFQUNFLGdCN0lxTStCO0U2SXBNL0IsYy9JcEZhO0FSdXhuQmY7O0F1SmhzbkJBO0VBQ0Usa0JBQWtCO0VBQ2xCLFNBQVM7RUFDVCxjL0kzRmE7QVI4eG5CZjs7QXVKdHNuQkE7RUFPTSxvQ0FBbUM7RUFDbkMseUJBQWdDO0F2Sm1zbkJ0Qzs7QXVKM3NuQkE7RUFjTSwwQy9JdEdTO0FSdXluQmY7O0F1Si9zbkJBO0VBbUJJLDBDL0kzR1c7QVIyeW5CZjs7QXVKbnRuQkE7RUF3QkksZ0MvSWhIVztBUit5bkJmOztBdUp2dG5CQTtFQTJCTSwyQy9JbkhTO0FSbXpuQmY7O0F1SjNybkJBO0VBR00sMEMvSTNIUztBUnV6bkJmOztBdUp2cm5CQTtFQUNFLHlEQUFrRDtBdkowcm5CcEQ7O0F1SjNybkJBOztFQU1NLDRDL0l0SVM7QVJnMG5CZjs7QXVKaHNuQkE7O0VBWUksYy9JNUlXO0FScTBuQmY7O0F1SnJzbkJBOzs7RUFnQk0sNkJBQTZCO0F2SjJybkJuQzs7QXVKdHJuQkE7RUFDRSxjQUFjO0F2SnlybkJoQjs7QUVqd25CQTtFc0puRkUsWUFBWTtFQUNaLGdCQUFnQjtFQUNoQiwwQmhKb0tpQjtBUm9ybkJuQjs7QUUvdm5CQTs7RXNKckZJLGFBQWE7QXhKeTFuQmpCOztBRWx1bkJBO0VzSm5ISSxrQmhKNEplO0FSNnJuQm5COztBRWgxbkJBO0VzSkRJLFNBQVM7RUFDVCx1Q2hKYlc7QVJrMm5CZjs7QXdKMTFuQkE7RUFRTSxZQUFZO0VBQ1osV0FBVztBeEpzMW5CakI7O0FFaDBuQkE7O0VzSmZFLFdBQVc7QXhKbzFuQmI7O0F3SmoxbkJBO0VBRUksWUFBWTtBeEptMW5CaEI7O0F3Si8wbkJBO0VsRWNFLFdrRWJrQjtFbEVjbEIsWWtFZHdCO0VBQ3hCLGtCQUFrQjtBeEptMW5CcEI7O0F5SjczbkJBO0VBQ0UsU0FBUztFQUNULG9DakpLYTtBUjIzbkJmOztBeUpsNG5CQTtFQUtJLHFDakpFVztBUiszbkJmOztBeUo3M25CQTtFQUNFLDZCQUE2QjtFQUM3QixjL0lEZ0I7QVZpNG5CbEI7O0F5SjczbkJBO0VBQ0UsMENqSlRhO0VpSlViLFNBQVM7QXpKZzRuQlg7O0F5Smw0bkJBO0VBS0ksU0FBUztBekppNG5CYjs7QXlKdDRuQkE7RUFZVSx1QmpKbkJLO0FSaTVuQmY7O0F5SjE0bkJBO0VBa0JNLDZCQUE2QjtBeko0M25CbkM7O0F5Sjk0bkJBO0VBdUJJLFNBQVM7RUFDVCxZQUFZO0F6SjIzbkJoQjs7QXlKdjNuQkE7RUFDRSxTQUFTO0VBQ1QsOENqSnJDYTtBUis1bkJmOztBeUo1M25CQTtFQUtJLGVBQWU7RUFDZixZQUFZO0VBQ1osaUJqSjBHNEI7QVJpeG5CaEM7O0F5Smw0bkJBO0VBVU0sZ0JBQWdCO0F6SjQzbkJ0Qjs7QXlKdDRuQkE7RUFjTSwyQ2pKbERTO0FSODZuQmY7O0F5SnYzbkJBO0VBQ0UsZUFBZTtFQUNmLDhDakp4RGE7RWlKeURiLDJDakoxRGE7RWlKMkRiLGtCakpzR2lCO0FSb3huQm5COztBeUo5M25CQTtFQU9JLGVBQWU7RUFDZixjako5RFc7RWlKK0RYLGdCakpPa0I7RWlKTmxCLFNBQVM7RUFDVCw2QkFBNkI7RUFDN0IsU0FBUztBekoyM25CYjs7QXlKdjRuQkE7RUFnQkksaUJBQWlCO0VBQ2pCLG1CQUFtQjtBekoyM25CdkI7O0F5SjU0bkJBO0VBcUJRLGNqSjNFTztFaUo0RVAsbUJqSjVFTztFaUo2RVAsMkNqSjlFTztBUnk4bkJmOztBeUpsNW5CQTtFQTRCTSxtQmpKbEZTO0VpSm1GVCxlQUFlO0VBQ2YsY2pKcEZTO0VpSnFGVCwyQ2pKdEZTO0FSZzluQmY7O0F5Sno1bkJBO0VBbUNRLG1CQUE2QztFQUM3QywyQ2pKM0ZPO0FScTluQmY7O0F5Sjk1bkJBO0VBMENJLGVBQWU7RUFDZixZQUFZO0VBQ1osaUJBQWlCO0VBQ2pCLGtCako2RGU7RWlKNURmLGNBQWM7RUFDZCxjQUFjO0VBQ2QsWUFBWTtBekp3M25CaEI7O0F5SnAzbkJBO0VBQ0UsNkJBQTZCO0F6SnUzbkIvQjs7QTBKeituQkE7RUFFSSx5QkFBeUI7RUFDekIsYUFBYTtBMUoyK25CakI7O0EwSjkrbkJBO0VBT0ksdUJBQXVCO0ExSjIrbkIzQjs7QTBKbC9uQkE7RUFZVSxvQkFBb0I7RUFDcEIsc0JBQXNCO0ExSjArbkJoQzs7QTBKdi9uQkE7RUFpQlUscUJBQXFCO0ExSjArbkIvQjs7QTBKMy9uQkE7RUF3QlEsbUJBQW1CO0ExSnUrbkIzQjs7QTBKaituQkE7RUFFSSw2QkFBNkI7QTFKbStuQmpDOztBMEpyK25CQTtFQUtNLGNsSnRCVTtBUjAvbkJoQjs7QTBKLzluQkE7RUFDRSxVQUFVO0VBQ1Ysa0JBQWtCO0VBQ2xCLGtCQUFrQjtFQUNsQiwyQ2xKdENhO0VrSnVDYixTQUFTO0ExSmsrbkJYOztBMEp2K25CQTtFQVFJLGdCQUFnQjtFQUNoQixjQUFjO0VBQ2QsY2xKM0NXO0V3RUhiLGdCQUFnQjtFQUNoQix1QkFBdUI7RUFDdkIsbUJBQW1CO0FoRmtob0JyQjs7QTBKaC9uQkE7RUFlSSxXQUFXO0VBQ1gsOEJsSmpEVztFa0prRFgsZ0JBQWdCO0VBQ2hCLGtCQUFrQjtBMUpxK25CdEI7O0EwSmorbkJBOztFQUdJLFNBQVM7RUFDVCxnQkFBZ0I7QTFKbStuQnBCOztBMEp2K25CQTtFQVdVLGFBQWE7QTFKZytuQnZCOztBMEp6OW5CQTtFQUNFLG9DbEoxRWE7QVJzaW9CZjs7QTBKejluQkE7RUFDRSxTQUFTO0VBQ1Qsa0JsSmlGaUI7RWtKaEZqQixtQkFBbUI7QTFKNDluQnJCOztBMEovOW5CQTtFQU1JLDZCQUE2QjtBMUo2OW5CakM7O0EwSm4rbkJBO0VBV00sc0RBQWtEO0ExSjQ5bkJ4RDs7QTBKdituQkE7RUFnQk0sMkJBQTJCO0ExSjI5bkJqQzs7QTBKcjluQkE7RUFFSSxXQUFXO0VBQ1gsY0FBYztFQUNkLGtDQUFrQztFQUNsQyw2QkFBNkI7RUFDN0IsZ0JBQWdCO0VBQ2hCLDRCQUE0QjtFcEU3RTlCLDRCQUE0QjtFQUM1Qiw4QkFBOEI7RUFDOUIsMkJBQTJCO0VBQzNCLHlCQUF5QjtFQUN6QixzQkFBc0I7RUFDdEIsMkJBQTJCO0F0RnFpb0I3Qjs7QW9CbGhvQkk7RXNJOENKO0lBV00sYUFBYTtFMUo4OW5CakI7QUFDRjs7QW9CM2dvQkk7RXNJaUNKO0lBZU0sYUFBYTtFMUpnK25CakI7QUFDRjs7QTBKaC9uQkE7RUFvQkksd0NsSnhIVztBUndsb0JmOztBMEpwL25CQTtFQTRCSSxpQkFBaUI7RUFDakIsV0FBVztFQUNYLHNCQUFzQjtBMUo0OW5CMUI7O0FvQnhpb0JJO0VzSThDSjtJQXlCTSxpQkFBaUI7RTFKcytuQnJCO0FBQ0Y7O0EwSmhnb0JBO0VBa0NJLGdCQUFnQjtBMUprK25CcEI7O0EwSnBnb0JBO0VBc0NJLGVBQWU7QTFKaytuQm5COztBMEozOW5CRTtFQUVJLG9EQUFxRTtBMUo2OW5CM0U7O0EwSi85bkJFO0VBRUksb0RBQXFFO0ExSmkrbkIzRTs7QTBKbituQkU7RUFFSSxvREFBcUU7QTFKcStuQjNFOztBMEp2K25CRTtFQUVJLG9EQUFxRTtBMUp5K25CM0U7O0EwSjMrbkJFO0VBRUksb0RBQXFFO0ExSjYrbkIzRTs7QTBKLytuQkU7RUFFSSxvREFBcUU7QTFKaS9uQjNFOztBMEpuL25CRTtFQUVJLG9EQUFxRTtBMUpxL25CM0U7O0EwSnYvbkJFO0VBRUksb0RBQXFFO0ExSnkvbkIzRTs7QTBKMy9uQkU7RUFFSSxvREFBcUU7QTFKNi9uQjNFOztBMEovL25CRTtFQUVJLHFEQUFxRTtBMUppZ29CM0U7O0EwSm5nb0JFO0VBRUkscURBQXFFO0ExSnFnb0IzRTs7QTBKdmdvQkU7RUFFSSxxREFBcUU7QTFKeWdvQjNFOztBMkpscW9CQTtFQUVJLHVDbkpJVztFbUpIWCxrQm5Kb0tlO0FSZ2dvQm5COztBMkpocW9CQTtFQUVJLGtCQUFrQjtBM0prcW9CdEI7O0EySnBxb0JBO0VBS00sY25KTlM7RW1KT1Qsa0JBQWtCO0EzSm1xb0J4Qjs7QTJKenFvQkE7RUFXSSx3RW5KWFc7QVI2cW9CZjs7QUdwcm9CQTtFeUpDRSxnRHBKS2E7QVJrcm9CZjs7QTRKeHJvQkE7RUFNUSxzREFBc0Q7RUFDdEQseUJBQXlCO0E1SnNyb0JqQzs7QUdsa29CSTs7RXlKakhNLHNDcEpKSztFb0pLTCxpQkFBaUI7QTVKd3JvQjNCOztBNEpuc29CQTtFQW1CVSwyQ3BKYks7QVJpc29CZjs7QUdsb29CSTtFeUo1Q0UsZ0JBQWdCO0E1Smtyb0J0Qjs7QTRKM3NvQkE7RUE2QlUsa0JBQWtCO0E1Smtyb0I1Qjs7QTRKL3NvQkE7RUFnQ1ksV0FBVztFQUNYLGtCQUFrQjtFQUNsQixTQUFTO0VBQ1QsT0FBTztFQUNQLFdBQVc7RUFDWCw0Q3BKL0JHO0VvSmdDSCxXQUFXO0E1Sm1yb0J2Qjs7QUdocG9CSTtFeUo3QkksU0FBUztBNUppcm9CakI7O0FHM25vQkk7RXlKaERJLHlCcEo1Q087QVIydG9CZjs7QUcxb29CSTtFeUpqQ0kscUJwSmhETztBUit0b0JmOztBR25tb0JJO0V5SnRFQSxhQUFhO0E1SjZxb0JqQjs7QUd6bm9CSTtFeUpoREEsZ0JBQWdCO0VBQ2hCLHFCcEozRFc7QVJ3dW9CZjs7QUdqdG9CSTtFeUp3Q0Esa0JBQWtCO0VBQ2xCLFlBQVk7RUFDWixXQUFXO0VBQ1gscUNwSmxFVztFb0ptRVgsY3BKeEJtQjtFb0p5Qm5CLGtCQUFrQjtFQUNsQixrQkFBa0I7RUFDbEIsa0JBQWtCO0VBQ2xCLFNBQVM7RUFDVCxVQUFVO0VBQ1Ysa0JBQWtCO0VBQ2xCLCtDQUErQztBNUo2cW9CbkQ7O0FHenRvQkk7RXlKK0NFLHlCcEo3RVM7RW9KOEVULGNwSjdFUztBUjJ2b0JmOztBNEpsd29CQTtFQXdGTSxrQkFBa0I7RUFDbEIsT0FBTztFQUNQLE1BQU07RUFDTixXQUFXO0E1Sjhxb0JqQjs7QUdwdG9CSTtFeUoyQ0Esa0JBQWtCO0VBQ2xCLGtCQUFrQjtFQUNsQiw0Q3BKNUZXO0VvSjZGWCxhQUFhO0VBQ2IsZ0JBQWdCO0E1SjZxb0JwQjs7QUd0dG9CSTtFeUo2Q0EsY3BKbEdXO0VvSm1HWCxjQUFjO0E1SjZxb0JsQjs7QUczd29CSTtFeUprR0EsaUJBQWlCO0VBQ2pCLGlCQUFpQjtBNUo2cW9CckI7O0E2SjN4b0JBO0VBQ0Usa0JBQWtCO0VBQ2xCLGFB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SzIrc0IzNEM7O0FxSzMrc0I0NEM7RUFBZ0kseUJBQXdCO0FySysrc0JwaUQ7O0FxSy8rc0JxaUQ7RUFBZ0kseUJBQXdCO0FyS20vc0I3ckQ7O0FxS24vc0I4ckQ7RUFBZ0kseUJBQXdCO0FyS3Uvc0J0MUQ7O0FxS3Yvc0J1MUQ7RUFBMEcseUJBQXdCO0FySzIvc0J6OUQ7O0FxSzMvc0IwOUQ7RUFBNEcseUJBQXdCO0FySysvc0I5bEU7O0FxSy8vc0IrbEU7RUFBaUkseUJBQXdCO0FyS21ndEJ4dkU7O0FxS25ndEJ5dkU7RUFBaUkseUJBQXdCO0FyS3VndEJsNUU7O0FxS3ZndEJtNUU7RUFBaUkseUJBQXdCO0FySzJndEI1aUY7O0FxSzNndEI2aUY7RUFBME4seUJBQXdCO0FySytndEIveEY7O0FxSy9ndEJneUY7RUFBa0Ysa0JBQWlCO0FyS21odEJuNEY7O0FxS25odEJvNEY7RUFBOEwsY0FBYTtFQUFDLGtCQUFpQjtFQUFDLFVBQVM7RUFBQyxTQUFRO0VBQUMsV0FBVTtFQUFDLFlBQVc7RUFBQyxzQkFBcUI7QXJLNmh0QmpxRzs7QXFLN2h0QmtxRztFQUFnRyxZQUFXO0VBQUMsZ0JBQWU7RUFBQyxpQkFBZ0I7RUFBQyx1QkFBc0I7RUFBQyxrQkFBaUI7QXJLcWl0QnYxRzs7QXFLcml0QncxRztFQUEwRyxZQUFRO0VBQUssZUFBYztFQUFDLGlCQUFnQjtFQUFDLGlCQUFnQjtFQUFDLGtCQUFpQjtFQUFDLGdGQUErRTtBcks4aXRCam1IOztBcUs5aXRCa21IO0VBQWdILGlCQUFnQjtBcktranRCbHVIOztBcUtsanRCbXVIO0VBQTBILGlCQUFnQjtBcktzanRCNzJIOztBcUt0anRCODJIO0VBQWdGLGlCQUFnQjtBckswanRCOThIOztBcUsxanRCKzhIO0VBQWpHO0lBQXNOLGNBQWE7SUFBQyxjQUFhO0VyS2drdEI3bEk7QUFDRiIsImZpbGUiOiJhcHAuY2E1MTViMTguY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLyohXG4gKiBqUXVlcnkgVUkgQ1NTIEZyYW1ld29yayAxLjEyLjFcbiAqIGh0dHA6Ly9qcXVlcnl1aS5jb21cbiAqXG4gKiBDb3B5cmlnaHQgalF1ZXJ5IEZvdW5kYXRpb24gYW5kIG90aGVyIGNvbnRyaWJ1dG9yc1xuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlLlxuICogaHR0cDovL2pxdWVyeS5vcmcvbGljZW5zZVxuICpcbiAqIGh0dHA6Ly9hcGkuanF1ZXJ5dWkuY29tL2NhdGVnb3J5L3RoZW1pbmcvXG4gKi9cblxuLyogTGF5b3V0IGhlbHBlcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLWhlbHBlci1oaWRkZW4ge1xuXHRkaXNwbGF5OiBub25lO1xufVxuLnVpLWhlbHBlci1oaWRkZW4tYWNjZXNzaWJsZSB7XG5cdGJvcmRlcjogMDtcblx0Y2xpcDogcmVjdCgwIDAgMCAwKTtcblx0aGVpZ2h0OiAxcHg7XG5cdG1hcmdpbjogLTFweDtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0cGFkZGluZzogMDtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR3aWR0aDogMXB4O1xufVxuLnVpLWhlbHBlci1yZXNldCB7XG5cdG1hcmdpbjogMDtcblx0cGFkZGluZzogMDtcblx0Ym9yZGVyOiAwO1xuXHRvdXRsaW5lOiAwO1xuXHRsaW5lLWhlaWdodDogMS4zO1xuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdGZvbnQtc2l6ZTogMTAwJTtcblx0bGlzdC1zdHlsZTogbm9uZTtcbn1cbi51aS1oZWxwZXItY2xlYXJmaXg6YmVmb3JlLFxuLnVpLWhlbHBlci1jbGVhcmZpeDphZnRlciB7XG5cdGNvbnRlbnQ6IFwiXCI7XG5cdGRpc3BsYXk6IHRhYmxlO1xuXHRib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xufVxuLnVpLWhlbHBlci1jbGVhcmZpeDphZnRlciB7XG5cdGNsZWFyOiBib3RoO1xufVxuLnVpLWhlbHBlci16Zml4IHtcblx0d2lkdGg6IDEwMCU7XG5cdGhlaWdodDogMTAwJTtcblx0dG9wOiAwO1xuXHRsZWZ0OiAwO1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdG9wYWNpdHk6IDA7XG5cdGZpbHRlcjpBbHBoYShPcGFjaXR5PTApOyAvKiBzdXBwb3J0OiBJRTggKi9cbn1cblxuLnVpLWZyb250IHtcblx0ei1pbmRleDogMTAwO1xufVxuXG5cbi8qIEludGVyYWN0aW9uIEN1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLXN0YXRlLWRpc2FibGVkIHtcblx0Y3Vyc29yOiBkZWZhdWx0ICFpbXBvcnRhbnQ7XG5cdHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG5cbi8qIEljb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi51aS1pY29uIHtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXHRtYXJnaW4tdG9wOiAtLjI1ZW07XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0dGV4dC1pbmRlbnQ6IC05OTk5OXB4O1xuXHRvdmVyZmxvdzogaGlkZGVuO1xuXHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuXG4udWktd2lkZ2V0LWljb24tYmxvY2sge1xuXHRsZWZ0OiA1MCU7XG5cdG1hcmdpbi1sZWZ0OiAtOHB4O1xuXHRkaXNwbGF5OiBibG9jaztcbn1cblxuLyogTWlzYyB2aXN1YWxzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogT3ZlcmxheXMgKi9cbi51aS13aWRnZXQtb3ZlcmxheSB7XG5cdHBvc2l0aW9uOiBmaXhlZDtcblx0dG9wOiAwO1xuXHRsZWZ0OiAwO1xuXHR3aWR0aDogMTAwJTtcblx0aGVpZ2h0OiAxMDAlO1xufVxuIiwiLyohXG4gKiBqUXVlcnkgVUkgQWNjb3JkaW9uIDEuMTIuMVxuICogaHR0cDovL2pxdWVyeXVpLmNvbVxuICpcbiAqIENvcHlyaWdodCBqUXVlcnkgRm91bmRhdGlvbiBhbmQgb3RoZXIgY29udHJpYnV0b3JzXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UuXG4gKiBodHRwOi8vanF1ZXJ5Lm9yZy9saWNlbnNlXG4gKlxuICogaHR0cDovL2FwaS5qcXVlcnl1aS5jb20vYWNjb3JkaW9uLyN0aGVtaW5nXG4gKi9cbi51aS1hY2NvcmRpb24gLnVpLWFjY29yZGlvbi1oZWFkZXIge1xuXHRkaXNwbGF5OiBibG9jaztcblx0Y3Vyc29yOiBwb2ludGVyO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdG1hcmdpbjogMnB4IDAgMCAwO1xuXHRwYWRkaW5nOiAuNWVtIC41ZW0gLjVlbSAuN2VtO1xuXHRmb250LXNpemU6IDEwMCU7XG59XG4udWktYWNjb3JkaW9uIC51aS1hY2NvcmRpb24tY29udGVudCB7XG5cdHBhZGRpbmc6IDFlbSAyLjJlbTtcblx0Ym9yZGVyLXRvcDogMDtcblx0b3ZlcmZsb3c6IGF1dG87XG59XG4iLCIvKiFcbiAqIGpRdWVyeSBVSSBBdXRvY29tcGxldGUgMS4xMi4xXG4gKiBodHRwOi8vanF1ZXJ5dWkuY29tXG4gKlxuICogQ29weXJpZ2h0IGpRdWVyeSBGb3VuZGF0aW9uIGFuZCBvdGhlciBjb250cmlidXRvcnNcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZS5cbiAqIGh0dHA6Ly9qcXVlcnkub3JnL2xpY2Vuc2VcbiAqXG4gKiBodHRwOi8vYXBpLmpxdWVyeXVpLmNvbS9hdXRvY29tcGxldGUvI3RoZW1pbmdcbiAqL1xuLnVpLWF1dG9jb21wbGV0ZSB7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0dG9wOiAwO1xuXHRsZWZ0OiAwO1xuXHRjdXJzb3I6IGRlZmF1bHQ7XG59XG4iLCIvKiFcbiAqIGpRdWVyeSBVSSBCdXR0b24gMS4xMi4xXG4gKiBodHRwOi8vanF1ZXJ5dWkuY29tXG4gKlxuICogQ29weXJpZ2h0IGpRdWVyeSBGb3VuZGF0aW9uIGFuZCBvdGhlciBjb250cmlidXRvcnNcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZS5cbiAqIGh0dHA6Ly9qcXVlcnkub3JnL2xpY2Vuc2VcbiAqXG4gKiBodHRwOi8vYXBpLmpxdWVyeXVpLmNvbS9idXR0b24vI3RoZW1pbmdcbiAqL1xuLnVpLWJ1dHRvbiB7XG5cdHBhZGRpbmc6IC40ZW0gMWVtO1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0bGluZS1oZWlnaHQ6IG5vcm1hbDtcblx0bWFyZ2luLXJpZ2h0OiAuMWVtO1xuXHRjdXJzb3I6IHBvaW50ZXI7XG5cdHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcblx0LXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcblx0LW1vei11c2VyLXNlbGVjdDogbm9uZTtcblx0LW1zLXVzZXItc2VsZWN0OiBub25lO1xuXHR1c2VyLXNlbGVjdDogbm9uZTtcblxuXHQvKiBTdXBwb3J0OiBJRSA8PSAxMSAqL1xuXHRvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxuLnVpLWJ1dHRvbixcbi51aS1idXR0b246bGluayxcbi51aS1idXR0b246dmlzaXRlZCxcbi51aS1idXR0b246aG92ZXIsXG4udWktYnV0dG9uOmFjdGl2ZSB7XG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLyogdG8gbWFrZSByb29tIGZvciB0aGUgaWNvbiwgYSB3aWR0aCBuZWVkcyB0byBiZSBzZXQgaGVyZSAqL1xuLnVpLWJ1dHRvbi1pY29uLW9ubHkge1xuXHR3aWR0aDogMmVtO1xuXHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXHR0ZXh0LWluZGVudDogLTk5OTlweDtcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLyogbm8gaWNvbiBzdXBwb3J0IGZvciBpbnB1dCBlbGVtZW50cyAqL1xuaW5wdXQudWktYnV0dG9uLnVpLWJ1dHRvbi1pY29uLW9ubHkge1xuXHR0ZXh0LWluZGVudDogMDtcbn1cblxuLyogYnV0dG9uIGljb24gZWxlbWVudChzKSAqL1xuLnVpLWJ1dHRvbi1pY29uLW9ubHkgLnVpLWljb24ge1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHRvcDogNTAlO1xuXHRsZWZ0OiA1MCU7XG5cdG1hcmdpbi10b3A6IC04cHg7XG5cdG1hcmdpbi1sZWZ0OiAtOHB4O1xufVxuXG4udWktYnV0dG9uLnVpLWljb24tbm90ZXh0IC51aS1pY29uIHtcblx0cGFkZGluZzogMDtcblx0d2lkdGg6IDIuMWVtO1xuXHRoZWlnaHQ6IDIuMWVtO1xuXHR0ZXh0LWluZGVudDogLTk5OTlweDtcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcblxufVxuXG5pbnB1dC51aS1idXR0b24udWktaWNvbi1ub3RleHQgLnVpLWljb24ge1xuXHR3aWR0aDogYXV0bztcblx0aGVpZ2h0OiBhdXRvO1xuXHR0ZXh0LWluZGVudDogMDtcblx0d2hpdGUtc3BhY2U6IG5vcm1hbDtcblx0cGFkZGluZzogLjRlbSAxZW07XG59XG5cbi8qIHdvcmthcm91bmRzICovXG4vKiBTdXBwb3J0OiBGaXJlZm94IDUgLSA0MCAqL1xuaW5wdXQudWktYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuYnV0dG9uLnVpLWJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lciB7XG5cdGJvcmRlcjogMDtcblx0cGFkZGluZzogMDtcbn1cbiIsIi8qIVxuICogalF1ZXJ5IFVJIENoZWNrYm94cmFkaW8gMS4xMi4xXG4gKiBodHRwOi8vanF1ZXJ5dWkuY29tXG4gKlxuICogQ29weXJpZ2h0IGpRdWVyeSBGb3VuZGF0aW9uIGFuZCBvdGhlciBjb250cmlidXRvcnNcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZS5cbiAqIGh0dHA6Ly9qcXVlcnkub3JnL2xpY2Vuc2VcbiAqXG4gKiBodHRwOi8vYXBpLmpxdWVyeXVpLmNvbS9jaGVja2JveHJhZGlvLyN0aGVtaW5nXG4gKi9cblxuLnVpLWNoZWNrYm94cmFkaW8tbGFiZWwgLnVpLWljb24tYmFja2dyb3VuZCB7XG5cdGJveC1zaGFkb3c6IGluc2V0IDFweCAxcHggMXB4ICNjY2M7XG5cdGJvcmRlci1yYWRpdXM6IC4xMmVtO1xuXHRib3JkZXI6IG5vbmU7XG59XG4udWktY2hlY2tib3hyYWRpby1yYWRpby1sYWJlbCAudWktaWNvbi1iYWNrZ3JvdW5kIHtcblx0d2lkdGg6IDE2cHg7XG5cdGhlaWdodDogMTZweDtcblx0Ym9yZGVyLXJhZGl1czogMWVtO1xuXHRvdmVyZmxvdzogdmlzaWJsZTtcblx0Ym9yZGVyOiBub25lO1xufVxuLnVpLWNoZWNrYm94cmFkaW8tcmFkaW8tbGFiZWwudWktY2hlY2tib3hyYWRpby1jaGVja2VkIC51aS1pY29uLFxuLnVpLWNoZWNrYm94cmFkaW8tcmFkaW8tbGFiZWwudWktY2hlY2tib3hyYWRpby1jaGVja2VkOmhvdmVyIC51aS1pY29uIHtcblx0YmFja2dyb3VuZC1pbWFnZTogbm9uZTtcblx0d2lkdGg6IDhweDtcblx0aGVpZ2h0OiA4cHg7XG5cdGJvcmRlci13aWR0aDogNHB4O1xuXHRib3JkZXItc3R5bGU6IHNvbGlkO1xufVxuLnVpLWNoZWNrYm94cmFkaW8tZGlzYWJsZWQge1xuXHRwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cbiIsIi8qIVxuICogalF1ZXJ5IFVJIENvbnRyb2xncm91cCAxLjEyLjFcbiAqIGh0dHA6Ly9qcXVlcnl1aS5jb21cbiAqXG4gKiBDb3B5cmlnaHQgalF1ZXJ5IEZvdW5kYXRpb24gYW5kIG90aGVyIGNvbnRyaWJ1dG9yc1xuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlLlxuICogaHR0cDovL2pxdWVyeS5vcmcvbGljZW5zZVxuICpcbiAqIGh0dHA6Ly9hcGkuanF1ZXJ5dWkuY29tL2NvbnRyb2xncm91cC8jdGhlbWluZ1xuICovXG5cbi51aS1jb250cm9sZ3JvdXAge1xuXHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG4udWktY29udHJvbGdyb3VwID4gLnVpLWNvbnRyb2xncm91cC1pdGVtIHtcblx0ZmxvYXQ6IGxlZnQ7XG5cdG1hcmdpbi1sZWZ0OiAwO1xuXHRtYXJnaW4tcmlnaHQ6IDA7XG59XG4udWktY29udHJvbGdyb3VwID4gLnVpLWNvbnRyb2xncm91cC1pdGVtOmZvY3VzLFxuLnVpLWNvbnRyb2xncm91cCA+IC51aS1jb250cm9sZ3JvdXAtaXRlbS51aS12aXN1YWwtZm9jdXMge1xuXHR6LWluZGV4OiA5OTk5O1xufVxuLnVpLWNvbnRyb2xncm91cC12ZXJ0aWNhbCA+IC51aS1jb250cm9sZ3JvdXAtaXRlbSB7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRmbG9hdDogbm9uZTtcblx0d2lkdGg6IDEwMCU7XG5cdG1hcmdpbi10b3A6IDA7XG5cdG1hcmdpbi1ib3R0b206IDA7XG5cdHRleHQtYWxpZ246IGxlZnQ7XG59XG4udWktY29udHJvbGdyb3VwLXZlcnRpY2FsIC51aS1jb250cm9sZ3JvdXAtaXRlbSB7XG5cdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG4udWktY29udHJvbGdyb3VwIC51aS1jb250cm9sZ3JvdXAtbGFiZWwge1xuXHRwYWRkaW5nOiAuNGVtIDFlbTtcbn1cbi51aS1jb250cm9sZ3JvdXAgLnVpLWNvbnRyb2xncm91cC1sYWJlbCBzcGFuIHtcblx0Zm9udC1zaXplOiA4MCU7XG59XG4udWktY29udHJvbGdyb3VwLWhvcml6b250YWwgLnVpLWNvbnRyb2xncm91cC1sYWJlbCArIC51aS1jb250cm9sZ3JvdXAtaXRlbSB7XG5cdGJvcmRlci1sZWZ0OiBub25lO1xufVxuLnVpLWNvbnRyb2xncm91cC12ZXJ0aWNhbCAudWktY29udHJvbGdyb3VwLWxhYmVsICsgLnVpLWNvbnRyb2xncm91cC1pdGVtIHtcblx0Ym9yZGVyLXRvcDogbm9uZTtcbn1cbi51aS1jb250cm9sZ3JvdXAtaG9yaXpvbnRhbCAudWktY29udHJvbGdyb3VwLWxhYmVsLnVpLXdpZGdldC1jb250ZW50IHtcblx0Ym9yZGVyLXJpZ2h0OiBub25lO1xufVxuLnVpLWNvbnRyb2xncm91cC12ZXJ0aWNhbCAudWktY29udHJvbGdyb3VwLWxhYmVsLnVpLXdpZGdldC1jb250ZW50IHtcblx0Ym9yZGVyLWJvdHRvbTogbm9uZTtcbn1cblxuLyogU3Bpbm5lciBzcGVjaWZpYyBzdHlsZSBmaXhlcyAqL1xuLnVpLWNvbnRyb2xncm91cC12ZXJ0aWNhbCAudWktc3Bpbm5lci1pbnB1dCB7XG5cblx0LyogU3VwcG9ydDogSUU4IG9ubHksIEFuZHJvaWQgPCA0LjQgb25seSAqL1xuXHR3aWR0aDogNzUlO1xuXHR3aWR0aDogY2FsYyggMTAwJSAtIDIuNGVtICk7XG59XG4udWktY29udHJvbGdyb3VwLXZlcnRpY2FsIC51aS1zcGlubmVyIC51aS1zcGlubmVyLXVwIHtcblx0Ym9yZGVyLXRvcC1zdHlsZTogc29saWQ7XG59XG5cbiIsIi8qIVxuICogalF1ZXJ5IFVJIERhdGVwaWNrZXIgMS4xMi4xXG4gKiBodHRwOi8vanF1ZXJ5dWkuY29tXG4gKlxuICogQ29weXJpZ2h0IGpRdWVyeSBGb3VuZGF0aW9uIGFuZCBvdGhlciBjb250cmlidXRvcnNcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZS5cbiAqIGh0dHA6Ly9qcXVlcnkub3JnL2xpY2Vuc2VcbiAqXG4gKiBodHRwOi8vYXBpLmpxdWVyeXVpLmNvbS9kYXRlcGlja2VyLyN0aGVtaW5nXG4gKi9cbi51aS1kYXRlcGlja2VyIHtcblx0d2lkdGg6IDE3ZW07XG5cdHBhZGRpbmc6IC4yZW0gLjJlbSAwO1xuXHRkaXNwbGF5OiBub25lO1xufVxuLnVpLWRhdGVwaWNrZXIgLnVpLWRhdGVwaWNrZXItaGVhZGVyIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRwYWRkaW5nOiAuMmVtIDA7XG59XG4udWktZGF0ZXBpY2tlciAudWktZGF0ZXBpY2tlci1wcmV2LFxuLnVpLWRhdGVwaWNrZXIgLnVpLWRhdGVwaWNrZXItbmV4dCB7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0dG9wOiAycHg7XG5cdHdpZHRoOiAxLjhlbTtcblx0aGVpZ2h0OiAxLjhlbTtcbn1cbi51aS1kYXRlcGlja2VyIC51aS1kYXRlcGlja2VyLXByZXYtaG92ZXIsXG4udWktZGF0ZXBpY2tlciAudWktZGF0ZXBpY2tlci1uZXh0LWhvdmVyIHtcblx0dG9wOiAxcHg7XG59XG4udWktZGF0ZXBpY2tlciAudWktZGF0ZXBpY2tlci1wcmV2IHtcblx0bGVmdDogMnB4O1xufVxuLnVpLWRhdGVwaWNrZXIgLnVpLWRhdGVwaWNrZXItbmV4dCB7XG5cdHJpZ2h0OiAycHg7XG59XG4udWktZGF0ZXBpY2tlciAudWktZGF0ZXBpY2tlci1wcmV2LWhvdmVyIHtcblx0bGVmdDogMXB4O1xufVxuLnVpLWRhdGVwaWNrZXIgLnVpLWRhdGVwaWNrZXItbmV4dC1ob3ZlciB7XG5cdHJpZ2h0OiAxcHg7XG59XG4udWktZGF0ZXBpY2tlciAudWktZGF0ZXBpY2tlci1wcmV2IHNwYW4sXG4udWktZGF0ZXBpY2tlciAudWktZGF0ZXBpY2tlci1uZXh0IHNwYW4ge1xuXHRkaXNwbGF5OiBibG9jaztcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHRsZWZ0OiA1MCU7XG5cdG1hcmdpbi1sZWZ0OiAtOHB4O1xuXHR0b3A6IDUwJTtcblx0bWFyZ2luLXRvcDogLThweDtcbn1cbi51aS1kYXRlcGlja2VyIC51aS1kYXRlcGlja2VyLXRpdGxlIHtcblx0bWFyZ2luOiAwIDIuM2VtO1xuXHRsaW5lLWhlaWdodDogMS44ZW07XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi51aS1kYXRlcGlja2VyIC51aS1kYXRlcGlja2VyLXRpdGxlIHNlbGVjdCB7XG5cdGZvbnQtc2l6ZTogMWVtO1xuXHRtYXJnaW46IDFweCAwO1xufVxuLnVpLWRhdGVwaWNrZXIgc2VsZWN0LnVpLWRhdGVwaWNrZXItbW9udGgsXG4udWktZGF0ZXBpY2tlciBzZWxlY3QudWktZGF0ZXBpY2tlci15ZWFyIHtcblx0d2lkdGg6IDQ1JTtcbn1cbi51aS1kYXRlcGlja2VyIHRhYmxlIHtcblx0d2lkdGg6IDEwMCU7XG5cdGZvbnQtc2l6ZTogLjllbTtcblx0Ym9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcblx0bWFyZ2luOiAwIDAgLjRlbTtcbn1cbi51aS1kYXRlcGlja2VyIHRoIHtcblx0cGFkZGluZzogLjdlbSAuM2VtO1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xuXHRib3JkZXI6IDA7XG59XG4udWktZGF0ZXBpY2tlciB0ZCB7XG5cdGJvcmRlcjogMDtcblx0cGFkZGluZzogMXB4O1xufVxuLnVpLWRhdGVwaWNrZXIgdGQgc3Bhbixcbi51aS1kYXRlcGlja2VyIHRkIGEge1xuXHRkaXNwbGF5OiBibG9jaztcblx0cGFkZGluZzogLjJlbTtcblx0dGV4dC1hbGlnbjogcmlnaHQ7XG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbi51aS1kYXRlcGlja2VyIC51aS1kYXRlcGlja2VyLWJ1dHRvbnBhbmUge1xuXHRiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuXHRtYXJnaW46IC43ZW0gMCAwIDA7XG5cdHBhZGRpbmc6IDAgLjJlbTtcblx0Ym9yZGVyLWxlZnQ6IDA7XG5cdGJvcmRlci1yaWdodDogMDtcblx0Ym9yZGVyLWJvdHRvbTogMDtcbn1cbi51aS1kYXRlcGlja2VyIC51aS1kYXRlcGlja2VyLWJ1dHRvbnBhbmUgYnV0dG9uIHtcblx0ZmxvYXQ6IHJpZ2h0O1xuXHRtYXJnaW46IC41ZW0gLjJlbSAuNGVtO1xuXHRjdXJzb3I6IHBvaW50ZXI7XG5cdHBhZGRpbmc6IC4yZW0gLjZlbSAuM2VtIC42ZW07XG5cdHdpZHRoOiBhdXRvO1xuXHRvdmVyZmxvdzogdmlzaWJsZTtcbn1cbi51aS1kYXRlcGlja2VyIC51aS1kYXRlcGlja2VyLWJ1dHRvbnBhbmUgYnV0dG9uLnVpLWRhdGVwaWNrZXItY3VycmVudCB7XG5cdGZsb2F0OiBsZWZ0O1xufVxuXG4vKiB3aXRoIG11bHRpcGxlIGNhbGVuZGFycyAqL1xuLnVpLWRhdGVwaWNrZXIudWktZGF0ZXBpY2tlci1tdWx0aSB7XG5cdHdpZHRoOiBhdXRvO1xufVxuLnVpLWRhdGVwaWNrZXItbXVsdGkgLnVpLWRhdGVwaWNrZXItZ3JvdXAge1xuXHRmbG9hdDogbGVmdDtcbn1cbi51aS1kYXRlcGlja2VyLW11bHRpIC51aS1kYXRlcGlja2VyLWdyb3VwIHRhYmxlIHtcblx0d2lkdGg6IDk1JTtcblx0bWFyZ2luOiAwIGF1dG8gLjRlbTtcbn1cbi51aS1kYXRlcGlja2VyLW11bHRpLTIgLnVpLWRhdGVwaWNrZXItZ3JvdXAge1xuXHR3aWR0aDogNTAlO1xufVxuLnVpLWRhdGVwaWNrZXItbXVsdGktMyAudWktZGF0ZXBpY2tlci1ncm91cCB7XG5cdHdpZHRoOiAzMy4zJTtcbn1cbi51aS1kYXRlcGlja2VyLW11bHRpLTQgLnVpLWRhdGVwaWNrZXItZ3JvdXAge1xuXHR3aWR0aDogMjUlO1xufVxuLnVpLWRhdGVwaWNrZXItbXVsdGkgLnVpLWRhdGVwaWNrZXItZ3JvdXAtbGFzdCAudWktZGF0ZXBpY2tlci1oZWFkZXIsXG4udWktZGF0ZXBpY2tlci1tdWx0aSAudWktZGF0ZXBpY2tlci1ncm91cC1taWRkbGUgLnVpLWRhdGVwaWNrZXItaGVhZGVyIHtcblx0Ym9yZGVyLWxlZnQtd2lkdGg6IDA7XG59XG4udWktZGF0ZXBpY2tlci1tdWx0aSAudWktZGF0ZXBpY2tlci1idXR0b25wYW5lIHtcblx0Y2xlYXI6IGxlZnQ7XG59XG4udWktZGF0ZXBpY2tlci1yb3ctYnJlYWsge1xuXHRjbGVhcjogYm90aDtcblx0d2lkdGg6IDEwMCU7XG5cdGZvbnQtc2l6ZTogMDtcbn1cblxuLyogUlRMIHN1cHBvcnQgKi9cbi51aS1kYXRlcGlja2VyLXJ0bCB7XG5cdGRpcmVjdGlvbjogcnRsO1xufVxuLnVpLWRhdGVwaWNrZXItcnRsIC51aS1kYXRlcGlja2VyLXByZXYge1xuXHRyaWdodDogMnB4O1xuXHRsZWZ0OiBhdXRvO1xufVxuLnVpLWRhdGVwaWNrZXItcnRsIC51aS1kYXRlcGlja2VyLW5leHQge1xuXHRsZWZ0OiAycHg7XG5cdHJpZ2h0OiBhdXRvO1xufVxuLnVpLWRhdGVwaWNrZXItcnRsIC51aS1kYXRlcGlja2VyLXByZXY6aG92ZXIge1xuXHRyaWdodDogMXB4O1xuXHRsZWZ0OiBhdXRvO1xufVxuLnVpLWRhdGVwaWNrZXItcnRsIC51aS1kYXRlcGlja2VyLW5leHQ6aG92ZXIge1xuXHRsZWZ0OiAxcHg7XG5cdHJpZ2h0OiBhdXRvO1xufVxuLnVpLWRhdGVwaWNrZXItcnRsIC51aS1kYXRlcGlja2VyLWJ1dHRvbnBhbmUge1xuXHRjbGVhcjogcmlnaHQ7XG59XG4udWktZGF0ZXBpY2tlci1ydGwgLnVpLWRhdGVwaWNrZXItYnV0dG9ucGFuZSBidXR0b24ge1xuXHRmbG9hdDogbGVmdDtcbn1cbi51aS1kYXRlcGlja2VyLXJ0bCAudWktZGF0ZXBpY2tlci1idXR0b25wYW5lIGJ1dHRvbi51aS1kYXRlcGlja2VyLWN1cnJlbnQsXG4udWktZGF0ZXBpY2tlci1ydGwgLnVpLWRhdGVwaWNrZXItZ3JvdXAge1xuXHRmbG9hdDogcmlnaHQ7XG59XG4udWktZGF0ZXBpY2tlci1ydGwgLnVpLWRhdGVwaWNrZXItZ3JvdXAtbGFzdCAudWktZGF0ZXBpY2tlci1oZWFkZXIsXG4udWktZGF0ZXBpY2tlci1ydGwgLnVpLWRhdGVwaWNrZXItZ3JvdXAtbWlkZGxlIC51aS1kYXRlcGlja2VyLWhlYWRlciB7XG5cdGJvcmRlci1yaWdodC13aWR0aDogMDtcblx0Ym9yZGVyLWxlZnQtd2lkdGg6IDFweDtcbn1cblxuLyogSWNvbnMgKi9cbi51aS1kYXRlcGlja2VyIC51aS1pY29uIHtcblx0ZGlzcGxheTogYmxvY2s7XG5cdHRleHQtaW5kZW50OiAtOTk5OTlweDtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0bGVmdDogLjVlbTtcblx0dG9wOiAuM2VtO1xufVxuIiwiLyohXG4gKiBqUXVlcnkgVUkgRGlhbG9nIDEuMTIuMVxuICogaHR0cDovL2pxdWVyeXVpLmNvbVxuICpcbiAqIENvcHlyaWdodCBqUXVlcnkgRm91bmRhdGlvbiBhbmQgb3RoZXIgY29udHJpYnV0b3JzXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UuXG4gKiBodHRwOi8vanF1ZXJ5Lm9yZy9saWNlbnNlXG4gKlxuICogaHR0cDovL2FwaS5qcXVlcnl1aS5jb20vZGlhbG9nLyN0aGVtaW5nXG4gKi9cbi51aS1kaWFsb2cge1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHRvcDogMDtcblx0bGVmdDogMDtcblx0cGFkZGluZzogLjJlbTtcblx0b3V0bGluZTogMDtcbn1cbi51aS1kaWFsb2cgLnVpLWRpYWxvZy10aXRsZWJhciB7XG5cdHBhZGRpbmc6IC40ZW0gMWVtO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4udWktZGlhbG9nIC51aS1kaWFsb2ctdGl0bGUge1xuXHRmbG9hdDogbGVmdDtcblx0bWFyZ2luOiAuMWVtIDA7XG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cdHdpZHRoOiA5MCU7XG5cdG92ZXJmbG93OiBoaWRkZW47XG5cdHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xufVxuLnVpLWRpYWxvZyAudWktZGlhbG9nLXRpdGxlYmFyLWNsb3NlIHtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHRyaWdodDogLjNlbTtcblx0dG9wOiA1MCU7XG5cdHdpZHRoOiAyMHB4O1xuXHRtYXJnaW46IC0xMHB4IDAgMCAwO1xuXHRwYWRkaW5nOiAxcHg7XG5cdGhlaWdodDogMjBweDtcbn1cbi51aS1kaWFsb2cgLnVpLWRpYWxvZy1jb250ZW50IHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRib3JkZXI6IDA7XG5cdHBhZGRpbmc6IC41ZW0gMWVtO1xuXHRiYWNrZ3JvdW5kOiBub25lO1xuXHRvdmVyZmxvdzogYXV0bztcbn1cbi51aS1kaWFsb2cgLnVpLWRpYWxvZy1idXR0b25wYW5lIHtcblx0dGV4dC1hbGlnbjogbGVmdDtcblx0Ym9yZGVyLXdpZHRoOiAxcHggMCAwIDA7XG5cdGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG5cdG1hcmdpbi10b3A6IC41ZW07XG5cdHBhZGRpbmc6IC4zZW0gMWVtIC41ZW0gLjRlbTtcbn1cbi51aS1kaWFsb2cgLnVpLWRpYWxvZy1idXR0b25wYW5lIC51aS1kaWFsb2ctYnV0dG9uc2V0IHtcblx0ZmxvYXQ6IHJpZ2h0O1xufVxuLnVpLWRpYWxvZyAudWktZGlhbG9nLWJ1dHRvbnBhbmUgYnV0dG9uIHtcblx0bWFyZ2luOiAuNWVtIC40ZW0gLjVlbSAwO1xuXHRjdXJzb3I6IHBvaW50ZXI7XG59XG4udWktZGlhbG9nIC51aS1yZXNpemFibGUtbiB7XG5cdGhlaWdodDogMnB4O1xuXHR0b3A6IDA7XG59XG4udWktZGlhbG9nIC51aS1yZXNpemFibGUtZSB7XG5cdHdpZHRoOiAycHg7XG5cdHJpZ2h0OiAwO1xufVxuLnVpLWRpYWxvZyAudWktcmVzaXphYmxlLXMge1xuXHRoZWlnaHQ6IDJweDtcblx0Ym90dG9tOiAwO1xufVxuLnVpLWRpYWxvZyAudWktcmVzaXphYmxlLXcge1xuXHR3aWR0aDogMnB4O1xuXHRsZWZ0OiAwO1xufVxuLnVpLWRpYWxvZyAudWktcmVzaXphYmxlLXNlLFxuLnVpLWRpYWxvZyAudWktcmVzaXphYmxlLXN3LFxuLnVpLWRpYWxvZyAudWktcmVzaXphYmxlLW5lLFxuLnVpLWRpYWxvZyAudWktcmVzaXphYmxlLW53IHtcblx0d2lkdGg6IDdweDtcblx0aGVpZ2h0OiA3cHg7XG59XG4udWktZGlhbG9nIC51aS1yZXNpemFibGUtc2Uge1xuXHRyaWdodDogMDtcblx0Ym90dG9tOiAwO1xufVxuLnVpLWRpYWxvZyAudWktcmVzaXphYmxlLXN3IHtcblx0bGVmdDogMDtcblx0Ym90dG9tOiAwO1xufVxuLnVpLWRpYWxvZyAudWktcmVzaXphYmxlLW5lIHtcblx0cmlnaHQ6IDA7XG5cdHRvcDogMDtcbn1cbi51aS1kaWFsb2cgLnVpLXJlc2l6YWJsZS1udyB7XG5cdGxlZnQ6IDA7XG5cdHRvcDogMDtcbn1cbi51aS1kcmFnZ2FibGUgLnVpLWRpYWxvZy10aXRsZWJhciB7XG5cdGN1cnNvcjogbW92ZTtcbn1cbiIsIi8qIVxuICogalF1ZXJ5IFVJIERyYWdnYWJsZSAxLjEyLjFcbiAqIGh0dHA6Ly9qcXVlcnl1aS5jb21cbiAqXG4gKiBDb3B5cmlnaHQgalF1ZXJ5IEZvdW5kYXRpb24gYW5kIG90aGVyIGNvbnRyaWJ1dG9yc1xuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlLlxuICogaHR0cDovL2pxdWVyeS5vcmcvbGljZW5zZVxuICovXG4udWktZHJhZ2dhYmxlLWhhbmRsZSB7XG5cdC1tcy10b3VjaC1hY3Rpb246IG5vbmU7XG5cdHRvdWNoLWFjdGlvbjogbm9uZTtcbn1cbiIsIi8qIVxuICogalF1ZXJ5IFVJIE1lbnUgMS4xMi4xXG4gKiBodHRwOi8vanF1ZXJ5dWkuY29tXG4gKlxuICogQ29weXJpZ2h0IGpRdWVyeSBGb3VuZGF0aW9uIGFuZCBvdGhlciBjb250cmlidXRvcnNcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZS5cbiAqIGh0dHA6Ly9qcXVlcnkub3JnL2xpY2Vuc2VcbiAqXG4gKiBodHRwOi8vYXBpLmpxdWVyeXVpLmNvbS9tZW51LyN0aGVtaW5nXG4gKi9cbi51aS1tZW51IHtcblx0bGlzdC1zdHlsZTogbm9uZTtcblx0cGFkZGluZzogMDtcblx0bWFyZ2luOiAwO1xuXHRkaXNwbGF5OiBibG9jaztcblx0b3V0bGluZTogMDtcbn1cbi51aS1tZW51IC51aS1tZW51IHtcblx0cG9zaXRpb246IGFic29sdXRlO1xufVxuLnVpLW1lbnUgLnVpLW1lbnUtaXRlbSB7XG5cdG1hcmdpbjogMDtcblx0Y3Vyc29yOiBwb2ludGVyO1xuXHQvKiBzdXBwb3J0OiBJRTEwLCBzZWUgIzg4NDQgKi9cblx0bGlzdC1zdHlsZS1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9naWY7YmFzZTY0LFIwbEdPRGxoQVFBQkFJQUFBQUFBQVAvLy95SDVCQUVBQUFBQUxBQUFBQUFCQUFFQUFBSUJSQUE3XCIpO1xufVxuLnVpLW1lbnUgLnVpLW1lbnUtaXRlbS13cmFwcGVyIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRwYWRkaW5nOiAzcHggMWVtIDNweCAuNGVtO1xufVxuLnVpLW1lbnUgLnVpLW1lbnUtZGl2aWRlciB7XG5cdG1hcmdpbjogNXB4IDA7XG5cdGhlaWdodDogMDtcblx0Zm9udC1zaXplOiAwO1xuXHRsaW5lLWhlaWdodDogMDtcblx0Ym9yZGVyLXdpZHRoOiAxcHggMCAwIDA7XG59XG4udWktbWVudSAudWktc3RhdGUtZm9jdXMsXG4udWktbWVudSAudWktc3RhdGUtYWN0aXZlIHtcblx0bWFyZ2luOiAtMXB4O1xufVxuXG4vKiBpY29uIHN1cHBvcnQgKi9cbi51aS1tZW51LWljb25zIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xufVxuLnVpLW1lbnUtaWNvbnMgLnVpLW1lbnUtaXRlbS13cmFwcGVyIHtcblx0cGFkZGluZy1sZWZ0OiAyZW07XG59XG5cbi8qIGxlZnQtYWxpZ25lZCAqL1xuLnVpLW1lbnUgLnVpLWljb24ge1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHRvcDogMDtcblx0Ym90dG9tOiAwO1xuXHRsZWZ0OiAuMmVtO1xuXHRtYXJnaW46IGF1dG8gMDtcbn1cblxuLyogcmlnaHQtYWxpZ25lZCAqL1xuLnVpLW1lbnUgLnVpLW1lbnUtaWNvbiB7XG5cdGxlZnQ6IGF1dG87XG5cdHJpZ2h0OiAwO1xufVxuIiwiLyohXG4gKiBqUXVlcnkgVUkgUHJvZ3Jlc3NiYXIgMS4xMi4xXG4gKiBodHRwOi8vanF1ZXJ5dWkuY29tXG4gKlxuICogQ29weXJpZ2h0IGpRdWVyeSBGb3VuZGF0aW9uIGFuZCBvdGhlciBjb250cmlidXRvcnNcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZS5cbiAqIGh0dHA6Ly9qcXVlcnkub3JnL2xpY2Vuc2VcbiAqXG4gKiBodHRwOi8vYXBpLmpxdWVyeXVpLmNvbS9wcm9ncmVzc2Jhci8jdGhlbWluZ1xuICovXG4udWktcHJvZ3Jlc3NiYXIge1xuXHRoZWlnaHQ6IDJlbTtcblx0dGV4dC1hbGlnbjogbGVmdDtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcbn1cbi51aS1wcm9ncmVzc2JhciAudWktcHJvZ3Jlc3NiYXItdmFsdWUge1xuXHRtYXJnaW46IC0xcHg7XG5cdGhlaWdodDogMTAwJTtcbn1cbi51aS1wcm9ncmVzc2JhciAudWktcHJvZ3Jlc3NiYXItb3ZlcmxheSB7XG5cdGJhY2tncm91bmQ6IHVybChcImRhdGE6aW1hZ2UvZ2lmO2Jhc2U2NCxSMGxHT0RsaEtBQW9BSUFCQUFBQUFQLy8veUgvQzA1RlZGTkRRVkJGTWk0d0F3RUFBQUFoK1FRSkFRQUJBQ3dBQUFBQUtBQW9BQUFDa1l3TnFYcmRDNTJEUzA2YTdNRlpJKzRGSEJDS29EZVdLWHF5bVBxR3F4dkpyWFpiTXg3VHRjK3c5WGdVMkZCM2xPeVFSV0VUMklGR2lVOW0xZnJEVnB4WlpjNmJmSHd2NGMxWVhQNmsxVmR5MjkyRmI2VWt1dkZ0WHB2V1N6QStIeWNYSkhVWGlHWUlpTWcyUjZXNDU5Z25XR2ZITmRqSXFEV1ZxZW1IMmVrcE9ia3BPbHBwV1VxWmlxcjZlZHFxV1FBQUlma0VDUUVBQVFBc0FBQUFBQ2dBS0FBQUFwU01nWm5HZmFxY2cxRTJ1dXpEbW1IVUJSOFFpbDk1aGlQS3FXbjNhcXRMc1MxOHk3RzFTek5lb3dXQkVOdFFkK1QxSmt0UDA1bnpQVGRKWmxSNnZVeE5XV2pWK3ZVV2hXTmtXRnd4bDlWcFpSZWRZY2ZsSU9MYWZhYTI4WGRzSC95bmxjYzF1UFZEWnhRSVIwSzI1K2NJQ0Ntb3FDZTVtR2haT2ZlWVNVaDV5SmNKeXJrWldXcGFSOGRvSjJvNE5ZcTYybEFBQUNINUJBa0JBQUVBTEFBQUFBQW9BQ2dBQUFLVkRJNFl5MjJabklOUk5xb3N3MEJ2N2kxZ3lIVWtGajdvU2FXbHUzb3ZDOEd4TnNvNWZsdXozcUxWaEJWZVQvTHo3WlRIeXhMNWREYWxRV1BWT3NRV3RSbnV3WGFGVGo5alZWaDhwbWE5SmpaNHpZU2o1Wk95bWE3dXVvbGZmaCtJUjVhVzk3Y0h1QlVYS0dLWGxLam4rRGlIV01jWUphaDROMGxZQ01sSk9YaXBHUnI1cWRnb1NUcnFXU3E2V0ZsMnlwb2FVQUFBSWZrRUNRRUFBUUFzQUFBQUFDZ0FLQUFBQXBhRWI2SExnZC9pTzdGTld0Y0ZXZSt1Zk9ER2pSZm9pSjJha1NoYnVlYjB3dEk1MHptMDJwYnZ3ZldFTVdCUTF6S0dsTEloc2tpRVBtOVI2dlJYeFY0WnpXVDJ5SE9HcFdNeW9yYmxLbE5wOEhtSEViL2xDWGpjVzdibXRYUDhYdDIyOU9WV1IxZm9kMmVXcU5mSHVNalhDUGtJR05pbGVPaUltVm1DT0Vtb1NmbjN5WGxKV21vSEdocXA2aWxZdVdZcG1UcUtVZ0FBSWZrRUNRRUFBUUFzQUFBQUFDZ0FLQUFBQXBpRUg2a2I1OGJpUTNGTld0TUZXVzNlTlZjb2p1RkdmcW5acVNlYnVTMDZ3NVY4MC9YMDJwS2U4ekZ3UDZFRldPVDFsREZrOHJHRVJoMVRUTk9vY1E2MUhtNFhtMlZleFVIcHpqeW1WaUhyRmJpRUxzZWZWcm42WEtmbnQyUTlHLytYZGllNDk5WEhkMmc0aDdpb09HaFhHSmJvR0FuWFNCbm9Cd0tZeWZpb3ViWkoySG4wUnVSWmFmbFpPaWw1NlpwNmlpb0tTWHBVQUFBaCtRUUpBUUFCQUN3QUFBQUFLQUFvQUFBQ2tvUVJxUnZueHVJN2tVMWExVVU1YmQ1dG5TZU9aWGhtbjVsV0szcU5UV3ZSZFF4UDhxdmFDKy95YVlRelhPN0JNdmFVRW1KUmQzVHNpTUFnc3dtTllyU2daZFlyVFg2dFNIR1pPNzNlenVBdzJ1eHVRK0JiZVpmTXhzZXhZMzUrL1FlNEoxaW5WMGc0eDNXSHVNaElsMmpYT0tUMlErVlU1ZmdvU1VJNTJWZlp5ZmtKR2toYTZqbVkrYWFZZGlycStsUUFBQ0g1QkFrQkFBRUFMQUFBQUFBb0FDZ0FBQUtXQklLcFllMEwzWU5LVG9xc3dVbHZ6bmlnZDR3aVI0S2hackt0OVVwcWlwNjFpOUUzdk12eFJkSGxiRUZpRVhmazlZQVJZeE9aWkQ2VlEycFV1bkJtdFJYbzFMZjhoTVZWY05sOEphZlYzOGFNMi9GdTVWMTZCbjYzcjZ4dDk3ajA5K01YU0ZpNEJuaUdGYWUzaHpiSDkraFlCemtwdVVoNWFabUh1YW5aT1pnSXV2YkdpTmVvbUNuYXh4YXAydXBhQ1pzcSsxa0FBQ0g1QkFrQkFBRUFMQUFBQUFBb0FDZ0FBQUtYakk4Qnk1emY0a094VFZyWE5WbHYxWDBkOElHWkdLTG5OcFl0bThMcjljcVZldU9TdmZPVzc5RDlhREhpek5oREppZEZaaE55ZEVhaE9hREg2bm9tdEpqcDF0dXRLb05Xa3ZBNkpxZlJWTEhVL1FVZmF1OWwyeDdHNTRkMWZsOTk1eGNJR0FkWHFNZkJOYWRvWXJoSCtNZzJLQmxwVnBibHVDaVhtTW5aMlNoNEdCcUorY2tJT3FxSjZMbUtTbGxabXNvcTZ3cFFBQUFoK1FRSkFRQUJBQ3dBQUFBQUtBQW9BQUFDbFl4L29Mdm94dUpEa1UxYTFZVVpiSjU5blNkMlpYaFdxYlJhMi9nRjhHdTJEWTNpcXM3eXJxK3hCWUVrWXZGU004YVNTT2JFK1pnUmwxQkhGWk5yN3BSQ2F2WjVCVzIxNDJoWTNBTi96V3RzbWYxMnA5WHh4RmwybHBMbjFyc2V6dGZYWmpkSVdJZjJzNWRJdHdqWUtCZ285eWc1cEhnekpYVEVlR2xadWVucHlQbXBHUW9LT1drWW1TcGFTbnFLaWxlSTJGQUFBQ0g1QkFrQkFBRUFMQUFBQUFBb0FDZ0FBQUtWakIrZ3Urakc0a09SVFZyVmhSbHNubjJkSjNabGVGYXB0RnJiK0NYbU85T296ZUw1VmZQOTlIdkFXaHBpVWRjd2twQkgzODI1QXdZZFU4eFRxbExHaHRDb3NBcktNcHZmYTFtTVJhZTlWdldaZmVCMlhmUGtlTG1tMThsVWNCaitwNWRuTjhqWFozWUlHRWhZdU9VbjQ1YW9DRGtwMTZobDVJallKdmpXS2Nub0dRcHF5UGxwT2hyM2FFbGFxcnE1NkJxN1ZBQUFPdz09XCIpO1xuXHRoZWlnaHQ6IDEwMCU7XG5cdGZpbHRlcjogYWxwaGEob3BhY2l0eT0yNSk7IC8qIHN1cHBvcnQ6IElFOCAqL1xuXHRvcGFjaXR5OiAwLjI1O1xufVxuLnVpLXByb2dyZXNzYmFyLWluZGV0ZXJtaW5hdGUgLnVpLXByb2dyZXNzYmFyLXZhbHVlIHtcblx0YmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbn1cbiIsIi8qIVxuICogalF1ZXJ5IFVJIFJlc2l6YWJsZSAxLjEyLjFcbiAqIGh0dHA6Ly9qcXVlcnl1aS5jb21cbiAqXG4gKiBDb3B5cmlnaHQgalF1ZXJ5IEZvdW5kYXRpb24gYW5kIG90aGVyIGNvbnRyaWJ1dG9yc1xuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlLlxuICogaHR0cDovL2pxdWVyeS5vcmcvbGljZW5zZVxuICovXG4udWktcmVzaXphYmxlIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xufVxuLnVpLXJlc2l6YWJsZS1oYW5kbGUge1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdGZvbnQtc2l6ZTogMC4xcHg7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHQtbXMtdG91Y2gtYWN0aW9uOiBub25lO1xuXHR0b3VjaC1hY3Rpb246IG5vbmU7XG59XG4udWktcmVzaXphYmxlLWRpc2FibGVkIC51aS1yZXNpemFibGUtaGFuZGxlLFxuLnVpLXJlc2l6YWJsZS1hdXRvaGlkZSAudWktcmVzaXphYmxlLWhhbmRsZSB7XG5cdGRpc3BsYXk6IG5vbmU7XG59XG4udWktcmVzaXphYmxlLW4ge1xuXHRjdXJzb3I6IG4tcmVzaXplO1xuXHRoZWlnaHQ6IDdweDtcblx0d2lkdGg6IDEwMCU7XG5cdHRvcDogLTVweDtcblx0bGVmdDogMDtcbn1cbi51aS1yZXNpemFibGUtcyB7XG5cdGN1cnNvcjogcy1yZXNpemU7XG5cdGhlaWdodDogN3B4O1xuXHR3aWR0aDogMTAwJTtcblx0Ym90dG9tOiAtNXB4O1xuXHRsZWZ0OiAwO1xufVxuLnVpLXJlc2l6YWJsZS1lIHtcblx0Y3Vyc29yOiBlLXJlc2l6ZTtcblx0d2lkdGg6IDdweDtcblx0cmlnaHQ6IC01cHg7XG5cdHRvcDogMDtcblx0aGVpZ2h0OiAxMDAlO1xufVxuLnVpLXJlc2l6YWJsZS13IHtcblx0Y3Vyc29yOiB3LXJlc2l6ZTtcblx0d2lkdGg6IDdweDtcblx0bGVmdDogLTVweDtcblx0dG9wOiAwO1xuXHRoZWlnaHQ6IDEwMCU7XG59XG4udWktcmVzaXphYmxlLXNlIHtcblx0Y3Vyc29yOiBzZS1yZXNpemU7XG5cdHdpZHRoOiAxMnB4O1xuXHRoZWlnaHQ6IDEycHg7XG5cdHJpZ2h0OiAxcHg7XG5cdGJvdHRvbTogMXB4O1xufVxuLnVpLXJlc2l6YWJsZS1zdyB7XG5cdGN1cnNvcjogc3ctcmVzaXplO1xuXHR3aWR0aDogOXB4O1xuXHRoZWlnaHQ6IDlweDtcblx0bGVmdDogLTVweDtcblx0Ym90dG9tOiAtNXB4O1xufVxuLnVpLXJlc2l6YWJsZS1udyB7XG5cdGN1cnNvcjogbnctcmVzaXplO1xuXHR3aWR0aDogOXB4O1xuXHRoZWlnaHQ6IDlweDtcblx0bGVmdDogLTVweDtcblx0dG9wOiAtNXB4O1xufVxuLnVpLXJlc2l6YWJsZS1uZSB7XG5cdGN1cnNvcjogbmUtcmVzaXplO1xuXHR3aWR0aDogOXB4O1xuXHRoZWlnaHQ6IDlweDtcblx0cmlnaHQ6IC01cHg7XG5cdHRvcDogLTVweDtcbn1cbiIsIi8qIVxuICogalF1ZXJ5IFVJIFNlbGVjdGFibGUgMS4xMi4xXG4gKiBodHRwOi8vanF1ZXJ5dWkuY29tXG4gKlxuICogQ29weXJpZ2h0IGpRdWVyeSBGb3VuZGF0aW9uIGFuZCBvdGhlciBjb250cmlidXRvcnNcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZS5cbiAqIGh0dHA6Ly9qcXVlcnkub3JnL2xpY2Vuc2VcbiAqL1xuLnVpLXNlbGVjdGFibGUge1xuXHQtbXMtdG91Y2gtYWN0aW9uOiBub25lO1xuXHR0b3VjaC1hY3Rpb246IG5vbmU7XG59XG4udWktc2VsZWN0YWJsZS1oZWxwZXIge1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHotaW5kZXg6IDEwMDtcblx0Ym9yZGVyOiAxcHggZG90dGVkIGJsYWNrO1xufVxuIiwiLyohXG4gKiBqUXVlcnkgVUkgU2VsZWN0bWVudSAxLjEyLjFcbiAqIGh0dHA6Ly9qcXVlcnl1aS5jb21cbiAqXG4gKiBDb3B5cmlnaHQgalF1ZXJ5IEZvdW5kYXRpb24gYW5kIG90aGVyIGNvbnRyaWJ1dG9yc1xuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlLlxuICogaHR0cDovL2pxdWVyeS5vcmcvbGljZW5zZVxuICpcbiAqIGh0dHA6Ly9hcGkuanF1ZXJ5dWkuY29tL3NlbGVjdG1lbnUvI3RoZW1pbmdcbiAqL1xuLnVpLXNlbGVjdG1lbnUtbWVudSB7XG5cdHBhZGRpbmc6IDA7XG5cdG1hcmdpbjogMDtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR0b3A6IDA7XG5cdGxlZnQ6IDA7XG5cdGRpc3BsYXk6IG5vbmU7XG59XG4udWktc2VsZWN0bWVudS1tZW51IC51aS1tZW51IHtcblx0b3ZlcmZsb3c6IGF1dG87XG5cdG92ZXJmbG93LXg6IGhpZGRlbjtcblx0cGFkZGluZy1ib3R0b206IDFweDtcbn1cbi51aS1zZWxlY3RtZW51LW1lbnUgLnVpLW1lbnUgLnVpLXNlbGVjdG1lbnUtb3B0Z3JvdXAge1xuXHRmb250LXNpemU6IDFlbTtcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cdGxpbmUtaGVpZ2h0OiAxLjU7XG5cdHBhZGRpbmc6IDJweCAwLjRlbTtcblx0bWFyZ2luOiAwLjVlbSAwIDAgMDtcblx0aGVpZ2h0OiBhdXRvO1xuXHRib3JkZXI6IDA7XG59XG4udWktc2VsZWN0bWVudS1vcGVuIHtcblx0ZGlzcGxheTogYmxvY2s7XG59XG4udWktc2VsZWN0bWVudS10ZXh0IHtcblx0ZGlzcGxheTogYmxvY2s7XG5cdG1hcmdpbi1yaWdodDogMjBweDtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0dGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG59XG4udWktc2VsZWN0bWVudS1idXR0b24udWktYnV0dG9uIHtcblx0dGV4dC1hbGlnbjogbGVmdDtcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcblx0d2lkdGg6IDE0ZW07XG59XG4udWktc2VsZWN0bWVudS1pY29uLnVpLWljb24ge1xuXHRmbG9hdDogcmlnaHQ7XG5cdG1hcmdpbi10b3A6IDA7XG59XG4iLCIvKiFcbiAqIGpRdWVyeSBVSSBTb3J0YWJsZSAxLjEyLjFcbiAqIGh0dHA6Ly9qcXVlcnl1aS5jb21cbiAqXG4gKiBDb3B5cmlnaHQgalF1ZXJ5IEZvdW5kYXRpb24gYW5kIG90aGVyIGNvbnRyaWJ1dG9yc1xuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlLlxuICogaHR0cDovL2pxdWVyeS5vcmcvbGljZW5zZVxuICovXG4udWktc29ydGFibGUtaGFuZGxlIHtcblx0LW1zLXRvdWNoLWFjdGlvbjogbm9uZTtcblx0dG91Y2gtYWN0aW9uOiBub25lO1xufVxuIiwiLyohXG4gKiBqUXVlcnkgVUkgU2xpZGVyIDEuMTIuMVxuICogaHR0cDovL2pxdWVyeXVpLmNvbVxuICpcbiAqIENvcHlyaWdodCBqUXVlcnkgRm91bmRhdGlvbiBhbmQgb3RoZXIgY29udHJpYnV0b3JzXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UuXG4gKiBodHRwOi8vanF1ZXJ5Lm9yZy9saWNlbnNlXG4gKlxuICogaHR0cDovL2FwaS5qcXVlcnl1aS5jb20vc2xpZGVyLyN0aGVtaW5nXG4gKi9cbi51aS1zbGlkZXIge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHRleHQtYWxpZ246IGxlZnQ7XG59XG4udWktc2xpZGVyIC51aS1zbGlkZXItaGFuZGxlIHtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR6LWluZGV4OiAyO1xuXHR3aWR0aDogMS4yZW07XG5cdGhlaWdodDogMS4yZW07XG5cdGN1cnNvcjogZGVmYXVsdDtcblx0LW1zLXRvdWNoLWFjdGlvbjogbm9uZTtcblx0dG91Y2gtYWN0aW9uOiBub25lO1xufVxuLnVpLXNsaWRlciAudWktc2xpZGVyLXJhbmdlIHtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR6LWluZGV4OiAxO1xuXHRmb250LXNpemU6IC43ZW07XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRib3JkZXI6IDA7XG5cdGJhY2tncm91bmQtcG9zaXRpb246IDAgMDtcbn1cblxuLyogc3VwcG9ydDogSUU4IC0gU2VlICM2NzI3ICovXG4udWktc2xpZGVyLnVpLXN0YXRlLWRpc2FibGVkIC51aS1zbGlkZXItaGFuZGxlLFxuLnVpLXNsaWRlci51aS1zdGF0ZS1kaXNhYmxlZCAudWktc2xpZGVyLXJhbmdlIHtcblx0ZmlsdGVyOiBpbmhlcml0O1xufVxuXG4udWktc2xpZGVyLWhvcml6b250YWwge1xuXHRoZWlnaHQ6IC44ZW07XG59XG4udWktc2xpZGVyLWhvcml6b250YWwgLnVpLXNsaWRlci1oYW5kbGUge1xuXHR0b3A6IC0uM2VtO1xuXHRtYXJnaW4tbGVmdDogLS42ZW07XG59XG4udWktc2xpZGVyLWhvcml6b250YWwgLnVpLXNsaWRlci1yYW5nZSB7XG5cdHRvcDogMDtcblx0aGVpZ2h0OiAxMDAlO1xufVxuLnVpLXNsaWRlci1ob3Jpem9udGFsIC51aS1zbGlkZXItcmFuZ2UtbWluIHtcblx0bGVmdDogMDtcbn1cbi51aS1zbGlkZXItaG9yaXpvbnRhbCAudWktc2xpZGVyLXJhbmdlLW1heCB7XG5cdHJpZ2h0OiAwO1xufVxuXG4udWktc2xpZGVyLXZlcnRpY2FsIHtcblx0d2lkdGg6IC44ZW07XG5cdGhlaWdodDogMTAwcHg7XG59XG4udWktc2xpZGVyLXZlcnRpY2FsIC51aS1zbGlkZXItaGFuZGxlIHtcblx0bGVmdDogLS4zZW07XG5cdG1hcmdpbi1sZWZ0OiAwO1xuXHRtYXJnaW4tYm90dG9tOiAtLjZlbTtcbn1cbi51aS1zbGlkZXItdmVydGljYWwgLnVpLXNsaWRlci1yYW5nZSB7XG5cdGxlZnQ6IDA7XG5cdHdpZHRoOiAxMDAlO1xufVxuLnVpLXNsaWRlci12ZXJ0aWNhbCAudWktc2xpZGVyLXJhbmdlLW1pbiB7XG5cdGJvdHRvbTogMDtcbn1cbi51aS1zbGlkZXItdmVydGljYWwgLnVpLXNsaWRlci1yYW5nZS1tYXgge1xuXHR0b3A6IDA7XG59XG4iLCIvKiFcbiAqIGpRdWVyeSBVSSBTcGlubmVyIDEuMTIuMVxuICogaHR0cDovL2pxdWVyeXVpLmNvbVxuICpcbiAqIENvcHlyaWdodCBqUXVlcnkgRm91bmRhdGlvbiBhbmQgb3RoZXIgY29udHJpYnV0b3JzXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UuXG4gKiBodHRwOi8vanF1ZXJ5Lm9yZy9saWNlbnNlXG4gKlxuICogaHR0cDovL2FwaS5qcXVlcnl1aS5jb20vc3Bpbm5lci8jdGhlbWluZ1xuICovXG4udWktc3Bpbm5lciB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRvdmVyZmxvdzogaGlkZGVuO1xuXHRwYWRkaW5nOiAwO1xuXHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuLnVpLXNwaW5uZXItaW5wdXQge1xuXHRib3JkZXI6IG5vbmU7XG5cdGJhY2tncm91bmQ6IG5vbmU7XG5cdGNvbG9yOiBpbmhlcml0O1xuXHRwYWRkaW5nOiAuMjIyZW0gMDtcblx0bWFyZ2luOiAuMmVtIDA7XG5cdHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cdG1hcmdpbi1sZWZ0OiAuNGVtO1xuXHRtYXJnaW4tcmlnaHQ6IDJlbTtcbn1cbi51aS1zcGlubmVyLWJ1dHRvbiB7XG5cdHdpZHRoOiAxLjZlbTtcblx0aGVpZ2h0OiA1MCU7XG5cdGZvbnQtc2l6ZTogLjVlbTtcblx0cGFkZGluZzogMDtcblx0bWFyZ2luOiAwO1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0Y3Vyc29yOiBkZWZhdWx0O1xuXHRkaXNwbGF5OiBibG9jaztcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0cmlnaHQ6IDA7XG59XG4vKiBtb3JlIHNwZWNpZmljaXR5IHJlcXVpcmVkIGhlcmUgdG8gb3ZlcnJpZGUgZGVmYXVsdCBib3JkZXJzICovXG4udWktc3Bpbm5lciBhLnVpLXNwaW5uZXItYnV0dG9uIHtcblx0Ym9yZGVyLXRvcC1zdHlsZTogbm9uZTtcblx0Ym9yZGVyLWJvdHRvbS1zdHlsZTogbm9uZTtcblx0Ym9yZGVyLXJpZ2h0LXN0eWxlOiBub25lO1xufVxuLnVpLXNwaW5uZXItdXAge1xuXHR0b3A6IDA7XG59XG4udWktc3Bpbm5lci1kb3duIHtcblx0Ym90dG9tOiAwO1xufVxuIiwiLyohXG4gKiBqUXVlcnkgVUkgVGFicyAxLjEyLjFcbiAqIGh0dHA6Ly9qcXVlcnl1aS5jb21cbiAqXG4gKiBDb3B5cmlnaHQgalF1ZXJ5IEZvdW5kYXRpb24gYW5kIG90aGVyIGNvbnRyaWJ1dG9yc1xuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlLlxuICogaHR0cDovL2pxdWVyeS5vcmcvbGljZW5zZVxuICpcbiAqIGh0dHA6Ly9hcGkuanF1ZXJ5dWkuY29tL3RhYnMvI3RoZW1pbmdcbiAqL1xuLnVpLXRhYnMge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7LyogcG9zaXRpb246IHJlbGF0aXZlIHByZXZlbnRzIElFIHNjcm9sbCBidWcgKGVsZW1lbnQgd2l0aCBwb3NpdGlvbjogcmVsYXRpdmUgaW5zaWRlIGNvbnRhaW5lciB3aXRoIG92ZXJmbG93OiBhdXRvIGFwcGVhciBhcyBcImZpeGVkXCIpICovXG5cdHBhZGRpbmc6IC4yZW07XG59XG4udWktdGFicyAudWktdGFicy1uYXYge1xuXHRtYXJnaW46IDA7XG5cdHBhZGRpbmc6IC4yZW0gLjJlbSAwO1xufVxuLnVpLXRhYnMgLnVpLXRhYnMtbmF2IGxpIHtcblx0bGlzdC1zdHlsZTogbm9uZTtcblx0ZmxvYXQ6IGxlZnQ7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0dG9wOiAwO1xuXHRtYXJnaW46IDFweCAuMmVtIDAgMDtcblx0Ym9yZGVyLWJvdHRvbS13aWR0aDogMDtcblx0cGFkZGluZzogMDtcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cbi51aS10YWJzIC51aS10YWJzLW5hdiAudWktdGFicy1hbmNob3Ige1xuXHRmbG9hdDogbGVmdDtcblx0cGFkZGluZzogLjVlbSAxZW07XG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbi51aS10YWJzIC51aS10YWJzLW5hdiBsaS51aS10YWJzLWFjdGl2ZSB7XG5cdG1hcmdpbi1ib3R0b206IC0xcHg7XG5cdHBhZGRpbmctYm90dG9tOiAxcHg7XG59XG4udWktdGFicyAudWktdGFicy1uYXYgbGkudWktdGFicy1hY3RpdmUgLnVpLXRhYnMtYW5jaG9yLFxuLnVpLXRhYnMgLnVpLXRhYnMtbmF2IGxpLnVpLXN0YXRlLWRpc2FibGVkIC51aS10YWJzLWFuY2hvcixcbi51aS10YWJzIC51aS10YWJzLW5hdiBsaS51aS10YWJzLWxvYWRpbmcgLnVpLXRhYnMtYW5jaG9yIHtcblx0Y3Vyc29yOiB0ZXh0O1xufVxuLnVpLXRhYnMtY29sbGFwc2libGUgLnVpLXRhYnMtbmF2IGxpLnVpLXRhYnMtYWN0aXZlIC51aS10YWJzLWFuY2hvciB7XG5cdGN1cnNvcjogcG9pbnRlcjtcbn1cbi51aS10YWJzIC51aS10YWJzLXBhbmVsIHtcblx0ZGlzcGxheTogYmxvY2s7XG5cdGJvcmRlci13aWR0aDogMDtcblx0cGFkZGluZzogMWVtIDEuNGVtO1xuXHRiYWNrZ3JvdW5kOiBub25lO1xufVxuIiwiLyohXG4gKiBqUXVlcnkgVUkgVG9vbHRpcCAxLjEyLjFcbiAqIGh0dHA6Ly9qcXVlcnl1aS5jb21cbiAqXG4gKiBDb3B5cmlnaHQgalF1ZXJ5IEZvdW5kYXRpb24gYW5kIG90aGVyIGNvbnRyaWJ1dG9yc1xuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlLlxuICogaHR0cDovL2pxdWVyeS5vcmcvbGljZW5zZVxuICpcbiAqIGh0dHA6Ly9hcGkuanF1ZXJ5dWkuY29tL3Rvb2x0aXAvI3RoZW1pbmdcbiAqL1xuLnVpLXRvb2x0aXAge1xuXHRwYWRkaW5nOiA4cHg7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0ei1pbmRleDogOTk5OTtcblx0bWF4LXdpZHRoOiAzMDBweDtcbn1cbmJvZHkgLnVpLXRvb2x0aXAge1xuXHRib3JkZXItd2lkdGg6IDJweDtcbn1cbiIsIi8qIVxuICogalF1ZXJ5IFVJIENTUyBGcmFtZXdvcmsgMS4xMi4xXG4gKiBodHRwOi8vanF1ZXJ5dWkuY29tXG4gKlxuICogQ29weXJpZ2h0IGpRdWVyeSBGb3VuZGF0aW9uIGFuZCBvdGhlciBjb250cmlidXRvcnNcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZS5cbiAqIGh0dHA6Ly9qcXVlcnkub3JnL2xpY2Vuc2VcbiAqXG4gKiBodHRwOi8vYXBpLmpxdWVyeXVpLmNvbS9jYXRlZ29yeS90aGVtaW5nL1xuICovXG5AaW1wb3J0IHVybChcImNvcmUuY3NzXCIpO1xuXG5AaW1wb3J0IHVybChcImFjY29yZGlvbi5jc3NcIik7XG5AaW1wb3J0IHVybChcImF1dG9jb21wbGV0ZS5jc3NcIik7XG5AaW1wb3J0IHVybChcImJ1dHRvbi5jc3NcIik7XG5AaW1wb3J0IHVybChcImNoZWNrYm94cmFkaW8uY3NzXCIpO1xuQGltcG9ydCB1cmwoXCJjb250cm9sZ3JvdXAuY3NzXCIpO1xuQGltcG9ydCB1cmwoXCJkYXRlcGlja2VyLmNzc1wiKTtcbkBpbXBvcnQgdXJsKFwiZGlhbG9nLmNzc1wiKTtcbkBpbXBvcnQgdXJsKFwiZHJhZ2dhYmxlLmNzc1wiKTtcbkBpbXBvcnQgdXJsKFwibWVudS5jc3NcIik7XG5AaW1wb3J0IHVybChcInByb2dyZXNzYmFyLmNzc1wiKTtcbkBpbXBvcnQgdXJsKFwicmVzaXphYmxlLmNzc1wiKTtcbkBpbXBvcnQgdXJsKFwic2VsZWN0YWJsZS5jc3NcIik7XG5AaW1wb3J0IHVybChcInNlbGVjdG1lbnUuY3NzXCIpO1xuQGltcG9ydCB1cmwoXCJzb3J0YWJsZS5jc3NcIik7XG5AaW1wb3J0IHVybChcInNsaWRlci5jc3NcIik7XG5AaW1wb3J0IHVybChcInNwaW5uZXIuY3NzXCIpO1xuQGltcG9ydCB1cmwoXCJ0YWJzLmNzc1wiKTtcbkBpbXBvcnQgdXJsKFwidG9vbHRpcC5jc3NcIik7XG4iLCIvKiFcbiAqIGpRdWVyeSBVSSBDU1MgRnJhbWV3b3JrIDEuMTIuMVxuICogaHR0cDovL2pxdWVyeXVpLmNvbVxuICpcbiAqIENvcHlyaWdodCBqUXVlcnkgRm91bmRhdGlvbiBhbmQgb3RoZXIgY29udHJpYnV0b3JzXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UuXG4gKiBodHRwOi8vanF1ZXJ5Lm9yZy9saWNlbnNlXG4gKlxuICogaHR0cDovL2FwaS5qcXVlcnl1aS5jb20vY2F0ZWdvcnkvdGhlbWluZy9cbiAqXG4gKiBUbyB2aWV3IGFuZCBtb2RpZnkgdGhpcyB0aGVtZSwgdmlzaXQgaHR0cDovL2pxdWVyeXVpLmNvbS90aGVtZXJvbGxlci9cbiAqL1xuXG5cbi8qIENvbXBvbmVudCBjb250YWluZXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi51aS13aWRnZXQge1xuXHRmb250LWZhbWlseTogQXJpYWwsSGVsdmV0aWNhLHNhbnMtc2VyaWYvKntmZkRlZmF1bHR9Ki87XG5cdGZvbnQtc2l6ZTogMWVtLyp7ZnNEZWZhdWx0fSovO1xufVxuLnVpLXdpZGdldCAudWktd2lkZ2V0IHtcblx0Zm9udC1zaXplOiAxZW07XG59XG4udWktd2lkZ2V0IGlucHV0LFxuLnVpLXdpZGdldCBzZWxlY3QsXG4udWktd2lkZ2V0IHRleHRhcmVhLFxuLnVpLXdpZGdldCBidXR0b24ge1xuXHRmb250LWZhbWlseTogQXJpYWwsSGVsdmV0aWNhLHNhbnMtc2VyaWYvKntmZkRlZmF1bHR9Ki87XG5cdGZvbnQtc2l6ZTogMWVtO1xufVxuLnVpLXdpZGdldC51aS13aWRnZXQtY29udGVudCB7XG5cdGJvcmRlcjogMXB4IHNvbGlkICNjNWM1YzUvKntib3JkZXJDb2xvckRlZmF1bHR9Ki87XG59XG4udWktd2lkZ2V0LWNvbnRlbnQge1xuXHRib3JkZXI6IDFweCBzb2xpZCAjZGRkZGRkLyp7Ym9yZGVyQ29sb3JDb250ZW50fSovO1xuXHRiYWNrZ3JvdW5kOiAjZmZmZmZmLyp7YmdDb2xvckNvbnRlbnR9Ki8gLyp7YmdJbWdVcmxDb250ZW50fSovIC8qe2JnQ29udGVudFhQb3N9Ki8gLyp7YmdDb250ZW50WVBvc30qLyAvKntiZ0NvbnRlbnRSZXBlYXR9Ki87XG5cdGNvbG9yOiAjMzMzMzMzLyp7ZmNDb250ZW50fSovO1xufVxuLnVpLXdpZGdldC1jb250ZW50IGEge1xuXHRjb2xvcjogIzMzMzMzMy8qe2ZjQ29udGVudH0qLztcbn1cbi51aS13aWRnZXQtaGVhZGVyIHtcblx0Ym9yZGVyOiAxcHggc29saWQgI2RkZGRkZC8qe2JvcmRlckNvbG9ySGVhZGVyfSovO1xuXHRiYWNrZ3JvdW5kOiAjZTllOWU5Lyp7YmdDb2xvckhlYWRlcn0qLyAvKntiZ0ltZ1VybEhlYWRlcn0qLyAvKntiZ0hlYWRlclhQb3N9Ki8gLyp7YmdIZWFkZXJZUG9zfSovIC8qe2JnSGVhZGVyUmVwZWF0fSovO1xuXHRjb2xvcjogIzMzMzMzMy8qe2ZjSGVhZGVyfSovO1xuXHRmb250LXdlaWdodDogYm9sZDtcbn1cbi51aS13aWRnZXQtaGVhZGVyIGEge1xuXHRjb2xvcjogIzMzMzMzMy8qe2ZjSGVhZGVyfSovO1xufVxuXG4vKiBJbnRlcmFjdGlvbiBzdGF0ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLXN0YXRlLWRlZmF1bHQsXG4udWktd2lkZ2V0LWNvbnRlbnQgLnVpLXN0YXRlLWRlZmF1bHQsXG4udWktd2lkZ2V0LWhlYWRlciAudWktc3RhdGUtZGVmYXVsdCxcbi51aS1idXR0b24sXG5cbi8qIFdlIHVzZSBodG1sIGhlcmUgYmVjYXVzZSB3ZSBuZWVkIGEgZ3JlYXRlciBzcGVjaWZpY2l0eSB0byBtYWtlIHN1cmUgZGlzYWJsZWRcbndvcmtzIHByb3Blcmx5IHdoZW4gY2xpY2tlZCBvciBob3ZlcmVkICovXG5odG1sIC51aS1idXR0b24udWktc3RhdGUtZGlzYWJsZWQ6aG92ZXIsXG5odG1sIC51aS1idXR0b24udWktc3RhdGUtZGlzYWJsZWQ6YWN0aXZlIHtcblx0Ym9yZGVyOiAxcHggc29saWQgI2M1YzVjNS8qe2JvcmRlckNvbG9yRGVmYXVsdH0qLztcblx0YmFja2dyb3VuZDogI2Y2ZjZmNi8qe2JnQ29sb3JEZWZhdWx0fSovIC8qe2JnSW1nVXJsRGVmYXVsdH0qLyAvKntiZ0RlZmF1bHRYUG9zfSovIC8qe2JnRGVmYXVsdFlQb3N9Ki8gLyp7YmdEZWZhdWx0UmVwZWF0fSovO1xuXHRmb250LXdlaWdodDogbm9ybWFsLyp7ZndEZWZhdWx0fSovO1xuXHRjb2xvcjogIzQ1NDU0NS8qe2ZjRGVmYXVsdH0qLztcbn1cbi51aS1zdGF0ZS1kZWZhdWx0IGEsXG4udWktc3RhdGUtZGVmYXVsdCBhOmxpbmssXG4udWktc3RhdGUtZGVmYXVsdCBhOnZpc2l0ZWQsXG5hLnVpLWJ1dHRvbixcbmE6bGluay51aS1idXR0b24sXG5hOnZpc2l0ZWQudWktYnV0dG9uLFxuLnVpLWJ1dHRvbiB7XG5cdGNvbG9yOiAjNDU0NTQ1Lyp7ZmNEZWZhdWx0fSovO1xuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG4udWktc3RhdGUtaG92ZXIsXG4udWktd2lkZ2V0LWNvbnRlbnQgLnVpLXN0YXRlLWhvdmVyLFxuLnVpLXdpZGdldC1oZWFkZXIgLnVpLXN0YXRlLWhvdmVyLFxuLnVpLXN0YXRlLWZvY3VzLFxuLnVpLXdpZGdldC1jb250ZW50IC51aS1zdGF0ZS1mb2N1cyxcbi51aS13aWRnZXQtaGVhZGVyIC51aS1zdGF0ZS1mb2N1cyxcbi51aS1idXR0b246aG92ZXIsXG4udWktYnV0dG9uOmZvY3VzIHtcblx0Ym9yZGVyOiAxcHggc29saWQgI2NjY2NjYy8qe2JvcmRlckNvbG9ySG92ZXJ9Ki87XG5cdGJhY2tncm91bmQ6ICNlZGVkZWQvKntiZ0NvbG9ySG92ZXJ9Ki8gLyp7YmdJbWdVcmxIb3Zlcn0qLyAvKntiZ0hvdmVyWFBvc30qLyAvKntiZ0hvdmVyWVBvc30qLyAvKntiZ0hvdmVyUmVwZWF0fSovO1xuXHRmb250LXdlaWdodDogbm9ybWFsLyp7ZndEZWZhdWx0fSovO1xuXHRjb2xvcjogIzJiMmIyYi8qe2ZjSG92ZXJ9Ki87XG59XG4udWktc3RhdGUtaG92ZXIgYSxcbi51aS1zdGF0ZS1ob3ZlciBhOmhvdmVyLFxuLnVpLXN0YXRlLWhvdmVyIGE6bGluayxcbi51aS1zdGF0ZS1ob3ZlciBhOnZpc2l0ZWQsXG4udWktc3RhdGUtZm9jdXMgYSxcbi51aS1zdGF0ZS1mb2N1cyBhOmhvdmVyLFxuLnVpLXN0YXRlLWZvY3VzIGE6bGluayxcbi51aS1zdGF0ZS1mb2N1cyBhOnZpc2l0ZWQsXG5hLnVpLWJ1dHRvbjpob3ZlcixcbmEudWktYnV0dG9uOmZvY3VzIHtcblx0Y29sb3I6ICMyYjJiMmIvKntmY0hvdmVyfSovO1xuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi51aS12aXN1YWwtZm9jdXMge1xuXHRib3gtc2hhZG93OiAwIDAgM3B4IDFweCByZ2IoOTQsIDE1OCwgMjE0KTtcbn1cbi51aS1zdGF0ZS1hY3RpdmUsXG4udWktd2lkZ2V0LWNvbnRlbnQgLnVpLXN0YXRlLWFjdGl2ZSxcbi51aS13aWRnZXQtaGVhZGVyIC51aS1zdGF0ZS1hY3RpdmUsXG5hLnVpLWJ1dHRvbjphY3RpdmUsXG4udWktYnV0dG9uOmFjdGl2ZSxcbi51aS1idXR0b24udWktc3RhdGUtYWN0aXZlOmhvdmVyIHtcblx0Ym9yZGVyOiAxcHggc29saWQgIzAwM2VmZi8qe2JvcmRlckNvbG9yQWN0aXZlfSovO1xuXHRiYWNrZ3JvdW5kOiAjMDA3ZmZmLyp7YmdDb2xvckFjdGl2ZX0qLyAvKntiZ0ltZ1VybEFjdGl2ZX0qLyAvKntiZ0FjdGl2ZVhQb3N9Ki8gLyp7YmdBY3RpdmVZUG9zfSovIC8qe2JnQWN0aXZlUmVwZWF0fSovO1xuXHRmb250LXdlaWdodDogbm9ybWFsLyp7ZndEZWZhdWx0fSovO1xuXHRjb2xvcjogI2ZmZmZmZi8qe2ZjQWN0aXZlfSovO1xufVxuLnVpLWljb24tYmFja2dyb3VuZCxcbi51aS1zdGF0ZS1hY3RpdmUgLnVpLWljb24tYmFja2dyb3VuZCB7XG5cdGJvcmRlcjogIzAwM2VmZi8qe2JvcmRlckNvbG9yQWN0aXZlfSovO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmLyp7ZmNBY3RpdmV9Ki87XG59XG4udWktc3RhdGUtYWN0aXZlIGEsXG4udWktc3RhdGUtYWN0aXZlIGE6bGluayxcbi51aS1zdGF0ZS1hY3RpdmUgYTp2aXNpdGVkIHtcblx0Y29sb3I6ICNmZmZmZmYvKntmY0FjdGl2ZX0qLztcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4vKiBJbnRlcmFjdGlvbiBDdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi51aS1zdGF0ZS1oaWdobGlnaHQsXG4udWktd2lkZ2V0LWNvbnRlbnQgLnVpLXN0YXRlLWhpZ2hsaWdodCxcbi51aS13aWRnZXQtaGVhZGVyIC51aS1zdGF0ZS1oaWdobGlnaHQge1xuXHRib3JkZXI6IDFweCBzb2xpZCAjZGFkNTVlLyp7Ym9yZGVyQ29sb3JIaWdobGlnaHR9Ki87XG5cdGJhY2tncm91bmQ6ICNmZmZhOTAvKntiZ0NvbG9ySGlnaGxpZ2h0fSovIC8qe2JnSW1nVXJsSGlnaGxpZ2h0fSovIC8qe2JnSGlnaGxpZ2h0WFBvc30qLyAvKntiZ0hpZ2hsaWdodFlQb3N9Ki8gLyp7YmdIaWdobGlnaHRSZXBlYXR9Ki87XG5cdGNvbG9yOiAjNzc3NjIwLyp7ZmNIaWdobGlnaHR9Ki87XG59XG4udWktc3RhdGUtY2hlY2tlZCB7XG5cdGJvcmRlcjogMXB4IHNvbGlkICNkYWQ1NWUvKntib3JkZXJDb2xvckhpZ2hsaWdodH0qLztcblx0YmFja2dyb3VuZDogI2ZmZmE5MC8qe2JnQ29sb3JIaWdobGlnaHR9Ki87XG59XG4udWktc3RhdGUtaGlnaGxpZ2h0IGEsXG4udWktd2lkZ2V0LWNvbnRlbnQgLnVpLXN0YXRlLWhpZ2hsaWdodCBhLFxuLnVpLXdpZGdldC1oZWFkZXIgLnVpLXN0YXRlLWhpZ2hsaWdodCBhIHtcblx0Y29sb3I6ICM3Nzc2MjAvKntmY0hpZ2hsaWdodH0qLztcbn1cbi51aS1zdGF0ZS1lcnJvcixcbi51aS13aWRnZXQtY29udGVudCAudWktc3RhdGUtZXJyb3IsXG4udWktd2lkZ2V0LWhlYWRlciAudWktc3RhdGUtZXJyb3Ige1xuXHRib3JkZXI6IDFweCBzb2xpZCAjZjFhODk5Lyp7Ym9yZGVyQ29sb3JFcnJvcn0qLztcblx0YmFja2dyb3VuZDogI2ZkZGZkZi8qe2JnQ29sb3JFcnJvcn0qLyAvKntiZ0ltZ1VybEVycm9yfSovIC8qe2JnRXJyb3JYUG9zfSovIC8qe2JnRXJyb3JZUG9zfSovIC8qe2JnRXJyb3JSZXBlYXR9Ki87XG5cdGNvbG9yOiAjNWYzZjNmLyp7ZmNFcnJvcn0qLztcbn1cbi51aS1zdGF0ZS1lcnJvciBhLFxuLnVpLXdpZGdldC1jb250ZW50IC51aS1zdGF0ZS1lcnJvciBhLFxuLnVpLXdpZGdldC1oZWFkZXIgLnVpLXN0YXRlLWVycm9yIGEge1xuXHRjb2xvcjogIzVmM2YzZi8qe2ZjRXJyb3J9Ki87XG59XG4udWktc3RhdGUtZXJyb3ItdGV4dCxcbi51aS13aWRnZXQtY29udGVudCAudWktc3RhdGUtZXJyb3ItdGV4dCxcbi51aS13aWRnZXQtaGVhZGVyIC51aS1zdGF0ZS1lcnJvci10ZXh0IHtcblx0Y29sb3I6ICM1ZjNmM2YvKntmY0Vycm9yfSovO1xufVxuLnVpLXByaW9yaXR5LXByaW1hcnksXG4udWktd2lkZ2V0LWNvbnRlbnQgLnVpLXByaW9yaXR5LXByaW1hcnksXG4udWktd2lkZ2V0LWhlYWRlciAudWktcHJpb3JpdHktcHJpbWFyeSB7XG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuLnVpLXByaW9yaXR5LXNlY29uZGFyeSxcbi51aS13aWRnZXQtY29udGVudCAudWktcHJpb3JpdHktc2Vjb25kYXJ5LFxuLnVpLXdpZGdldC1oZWFkZXIgLnVpLXByaW9yaXR5LXNlY29uZGFyeSB7XG5cdG9wYWNpdHk6IC43O1xuXHRmaWx0ZXI6QWxwaGEoT3BhY2l0eT03MCk7IC8qIHN1cHBvcnQ6IElFOCAqL1xuXHRmb250LXdlaWdodDogbm9ybWFsO1xufVxuLnVpLXN0YXRlLWRpc2FibGVkLFxuLnVpLXdpZGdldC1jb250ZW50IC51aS1zdGF0ZS1kaXNhYmxlZCxcbi51aS13aWRnZXQtaGVhZGVyIC51aS1zdGF0ZS1kaXNhYmxlZCB7XG5cdG9wYWNpdHk6IC4zNTtcblx0ZmlsdGVyOkFscGhhKE9wYWNpdHk9MzUpOyAvKiBzdXBwb3J0OiBJRTggKi9cblx0YmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbn1cbi51aS1zdGF0ZS1kaXNhYmxlZCAudWktaWNvbiB7XG5cdGZpbHRlcjpBbHBoYShPcGFjaXR5PTM1KTsgLyogc3VwcG9ydDogSUU4IC0gU2VlICM2MDU5ICovXG59XG5cbi8qIEljb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLyogc3RhdGVzIGFuZCBpbWFnZXMgKi9cbi51aS1pY29uIHtcblx0d2lkdGg6IDE2cHg7XG5cdGhlaWdodDogMTZweDtcbn1cbi51aS1pY29uLFxuLnVpLXdpZGdldC1jb250ZW50IC51aS1pY29uIHtcblx0YmFja2dyb3VuZC1pbWFnZTogdXJsKFwiaW1hZ2VzL3VpLWljb25zXzQ0NDQ0NF8yNTZ4MjQwLnBuZ1wiKS8qe2ljb25zQ29udGVudH0qLztcbn1cbi51aS13aWRnZXQtaGVhZGVyIC51aS1pY29uIHtcblx0YmFja2dyb3VuZC1pbWFnZTogdXJsKFwiaW1hZ2VzL3VpLWljb25zXzQ0NDQ0NF8yNTZ4MjQwLnBuZ1wiKS8qe2ljb25zSGVhZGVyfSovO1xufVxuLnVpLXN0YXRlLWhvdmVyIC51aS1pY29uLFxuLnVpLXN0YXRlLWZvY3VzIC51aS1pY29uLFxuLnVpLWJ1dHRvbjpob3ZlciAudWktaWNvbixcbi51aS1idXR0b246Zm9jdXMgLnVpLWljb24ge1xuXHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJpbWFnZXMvdWktaWNvbnNfNTU1NTU1XzI1NngyNDAucG5nXCIpLyp7aWNvbnNIb3Zlcn0qLztcbn1cbi51aS1zdGF0ZS1hY3RpdmUgLnVpLWljb24sXG4udWktYnV0dG9uOmFjdGl2ZSAudWktaWNvbiB7XG5cdGJhY2tncm91bmQtaW1hZ2U6IHVybChcImltYWdlcy91aS1pY29uc19mZmZmZmZfMjU2eDI0MC5wbmdcIikvKntpY29uc0FjdGl2ZX0qLztcbn1cbi51aS1zdGF0ZS1oaWdobGlnaHQgLnVpLWljb24sXG4udWktYnV0dG9uIC51aS1zdGF0ZS1oaWdobGlnaHQudWktaWNvbiB7XG5cdGJhY2tncm91bmQtaW1hZ2U6IHVybChcImltYWdlcy91aS1pY29uc183Nzc2MjBfMjU2eDI0MC5wbmdcIikvKntpY29uc0hpZ2hsaWdodH0qLztcbn1cbi51aS1zdGF0ZS1lcnJvciAudWktaWNvbixcbi51aS1zdGF0ZS1lcnJvci10ZXh0IC51aS1pY29uIHtcblx0YmFja2dyb3VuZC1pbWFnZTogdXJsKFwiaW1hZ2VzL3VpLWljb25zX2NjMDAwMF8yNTZ4MjQwLnBuZ1wiKS8qe2ljb25zRXJyb3J9Ki87XG59XG4udWktYnV0dG9uIC51aS1pY29uIHtcblx0YmFja2dyb3VuZC1pbWFnZTogdXJsKFwiaW1hZ2VzL3VpLWljb25zXzc3Nzc3N18yNTZ4MjQwLnBuZ1wiKS8qe2ljb25zRGVmYXVsdH0qLztcbn1cblxuLyogcG9zaXRpb25pbmcgKi9cbi51aS1pY29uLWJsYW5rIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogMTZweCAxNnB4OyB9XG4udWktaWNvbi1jYXJldC0xLW4geyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDA7IH1cbi51aS1pY29uLWNhcmV0LTEtbmUgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTZweCAwOyB9XG4udWktaWNvbi1jYXJldC0xLWUgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzJweCAwOyB9XG4udWktaWNvbi1jYXJldC0xLXNlIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ4cHggMDsgfVxuLnVpLWljb24tY2FyZXQtMS1zIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTY1cHggMDsgfVxuLnVpLWljb24tY2FyZXQtMS1zdyB7IGJhY2tncm91bmQtcG9zaXRpb246IC04MHB4IDA7IH1cbi51aS1pY29uLWNhcmV0LTEtdyB7IGJhY2tncm91bmQtcG9zaXRpb246IC05NnB4IDA7IH1cbi51aS1pY29uLWNhcmV0LTEtbncgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTEycHggMDsgfVxuLnVpLWljb24tY2FyZXQtMi1uLXMgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTI4cHggMDsgfVxuLnVpLWljb24tY2FyZXQtMi1lLXcgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTQ0cHggMDsgfVxuLnVpLWljb24tdHJpYW5nbGUtMS1uIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMTZweDsgfVxuLnVpLWljb24tdHJpYW5nbGUtMS1uZSB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xNnB4IC0xNnB4OyB9XG4udWktaWNvbi10cmlhbmdsZS0xLWUgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzJweCAtMTZweDsgfVxuLnVpLWljb24tdHJpYW5nbGUtMS1zZSB7IGJhY2tncm91bmQtcG9zaXRpb246IC00OHB4IC0xNnB4OyB9XG4udWktaWNvbi10cmlhbmdsZS0xLXMgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNjVweCAtMTZweDsgfVxuLnVpLWljb24tdHJpYW5nbGUtMS1zdyB7IGJhY2tncm91bmQtcG9zaXRpb246IC04MHB4IC0xNnB4OyB9XG4udWktaWNvbi10cmlhbmdsZS0xLXcgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtOTZweCAtMTZweDsgfVxuLnVpLWljb24tdHJpYW5nbGUtMS1udyB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xMTJweCAtMTZweDsgfVxuLnVpLWljb24tdHJpYW5nbGUtMi1uLXMgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTI4cHggLTE2cHg7IH1cbi51aS1pY29uLXRyaWFuZ2xlLTItZS13IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE0NHB4IC0xNnB4OyB9XG4udWktaWNvbi1hcnJvdy0xLW4geyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0zMnB4OyB9XG4udWktaWNvbi1hcnJvdy0xLW5lIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE2cHggLTMycHg7IH1cbi51aS1pY29uLWFycm93LTEtZSB7IGJhY2tncm91bmQtcG9zaXRpb246IC0zMnB4IC0zMnB4OyB9XG4udWktaWNvbi1hcnJvdy0xLXNlIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ4cHggLTMycHg7IH1cbi51aS1pY29uLWFycm93LTEtcyB7IGJhY2tncm91bmQtcG9zaXRpb246IC02NXB4IC0zMnB4OyB9XG4udWktaWNvbi1hcnJvdy0xLXN3IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTgwcHggLTMycHg7IH1cbi51aS1pY29uLWFycm93LTEtdyB7IGJhY2tncm91bmQtcG9zaXRpb246IC05NnB4IC0zMnB4OyB9XG4udWktaWNvbi1hcnJvdy0xLW53IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTExMnB4IC0zMnB4OyB9XG4udWktaWNvbi1hcnJvdy0yLW4tcyB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xMjhweCAtMzJweDsgfVxuLnVpLWljb24tYXJyb3ctMi1uZS1zdyB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xNDRweCAtMzJweDsgfVxuLnVpLWljb24tYXJyb3ctMi1lLXcgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTYwcHggLTMycHg7IH1cbi51aS1pY29uLWFycm93LTItc2UtbncgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTc2cHggLTMycHg7IH1cbi51aS1pY29uLWFycm93c3RvcC0xLW4geyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTkycHggLTMycHg7IH1cbi51aS1pY29uLWFycm93c3RvcC0xLWUgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjA4cHggLTMycHg7IH1cbi51aS1pY29uLWFycm93c3RvcC0xLXMgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjI0cHggLTMycHg7IH1cbi51aS1pY29uLWFycm93c3RvcC0xLXcgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjQwcHggLTMycHg7IH1cbi51aS1pY29uLWFycm93dGhpY2stMS1uIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogMXB4IC00OHB4OyB9XG4udWktaWNvbi1hcnJvd3RoaWNrLTEtbmUgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTZweCAtNDhweDsgfVxuLnVpLWljb24tYXJyb3d0aGljay0xLWUgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzJweCAtNDhweDsgfVxuLnVpLWljb24tYXJyb3d0aGljay0xLXNlIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ4cHggLTQ4cHg7IH1cbi51aS1pY29uLWFycm93dGhpY2stMS1zIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTY0cHggLTQ4cHg7IH1cbi51aS1pY29uLWFycm93dGhpY2stMS1zdyB7IGJhY2tncm91bmQtcG9zaXRpb246IC04MHB4IC00OHB4OyB9XG4udWktaWNvbi1hcnJvd3RoaWNrLTEtdyB7IGJhY2tncm91bmQtcG9zaXRpb246IC05NnB4IC00OHB4OyB9XG4udWktaWNvbi1hcnJvd3RoaWNrLTEtbncgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTEycHggLTQ4cHg7IH1cbi51aS1pY29uLWFycm93dGhpY2stMi1uLXMgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTI4cHggLTQ4cHg7IH1cbi51aS1pY29uLWFycm93dGhpY2stMi1uZS1zdyB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xNDRweCAtNDhweDsgfVxuLnVpLWljb24tYXJyb3d0aGljay0yLWUtdyB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xNjBweCAtNDhweDsgfVxuLnVpLWljb24tYXJyb3d0aGljay0yLXNlLW53IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE3NnB4IC00OHB4OyB9XG4udWktaWNvbi1hcnJvd3RoaWNrc3RvcC0xLW4geyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTkycHggLTQ4cHg7IH1cbi51aS1pY29uLWFycm93dGhpY2tzdG9wLTEtZSB7IGJhY2tncm91bmQtcG9zaXRpb246IC0yMDhweCAtNDhweDsgfVxuLnVpLWljb24tYXJyb3d0aGlja3N0b3AtMS1zIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTIyNHB4IC00OHB4OyB9XG4udWktaWNvbi1hcnJvd3RoaWNrc3RvcC0xLXcgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjQwcHggLTQ4cHg7IH1cbi51aS1pY29uLWFycm93cmV0dXJudGhpY2stMS13IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtNjRweDsgfVxuLnVpLWljb24tYXJyb3dyZXR1cm50aGljay0xLW4geyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTZweCAtNjRweDsgfVxuLnVpLWljb24tYXJyb3dyZXR1cm50aGljay0xLWUgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzJweCAtNjRweDsgfVxuLnVpLWljb24tYXJyb3dyZXR1cm50aGljay0xLXMgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDhweCAtNjRweDsgfVxuLnVpLWljb24tYXJyb3dyZXR1cm4tMS13IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTY0cHggLTY0cHg7IH1cbi51aS1pY29uLWFycm93cmV0dXJuLTEtbiB7IGJhY2tncm91bmQtcG9zaXRpb246IC04MHB4IC02NHB4OyB9XG4udWktaWNvbi1hcnJvd3JldHVybi0xLWUgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtOTZweCAtNjRweDsgfVxuLnVpLWljb24tYXJyb3dyZXR1cm4tMS1zIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTExMnB4IC02NHB4OyB9XG4udWktaWNvbi1hcnJvd3JlZnJlc2gtMS13IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEyOHB4IC02NHB4OyB9XG4udWktaWNvbi1hcnJvd3JlZnJlc2gtMS1uIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE0NHB4IC02NHB4OyB9XG4udWktaWNvbi1hcnJvd3JlZnJlc2gtMS1lIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE2MHB4IC02NHB4OyB9XG4udWktaWNvbi1hcnJvd3JlZnJlc2gtMS1zIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE3NnB4IC02NHB4OyB9XG4udWktaWNvbi1hcnJvdy00IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtODBweDsgfVxuLnVpLWljb24tYXJyb3ctNC1kaWFnIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE2cHggLTgwcHg7IH1cbi51aS1pY29uLWV4dGxpbmsgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzJweCAtODBweDsgfVxuLnVpLWljb24tbmV3d2luIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ4cHggLTgwcHg7IH1cbi51aS1pY29uLXJlZnJlc2ggeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNjRweCAtODBweDsgfVxuLnVpLWljb24tc2h1ZmZsZSB7IGJhY2tncm91bmQtcG9zaXRpb246IC04MHB4IC04MHB4OyB9XG4udWktaWNvbi10cmFuc2Zlci1lLXcgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtOTZweCAtODBweDsgfVxuLnVpLWljb24tdHJhbnNmZXJ0aGljay1lLXcgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTEycHggLTgwcHg7IH1cbi51aS1pY29uLWZvbGRlci1jb2xsYXBzZWQgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC05NnB4OyB9XG4udWktaWNvbi1mb2xkZXItb3BlbiB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xNnB4IC05NnB4OyB9XG4udWktaWNvbi1kb2N1bWVudCB7IGJhY2tncm91bmQtcG9zaXRpb246IC0zMnB4IC05NnB4OyB9XG4udWktaWNvbi1kb2N1bWVudC1iIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ4cHggLTk2cHg7IH1cbi51aS1pY29uLW5vdGUgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNjRweCAtOTZweDsgfVxuLnVpLWljb24tbWFpbC1jbG9zZWQgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtODBweCAtOTZweDsgfVxuLnVpLWljb24tbWFpbC1vcGVuIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTk2cHggLTk2cHg7IH1cbi51aS1pY29uLXN1aXRjYXNlIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTExMnB4IC05NnB4OyB9XG4udWktaWNvbi1jb21tZW50IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEyOHB4IC05NnB4OyB9XG4udWktaWNvbi1wZXJzb24geyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTQ0cHggLTk2cHg7IH1cbi51aS1pY29uLXByaW50IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE2MHB4IC05NnB4OyB9XG4udWktaWNvbi10cmFzaCB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xNzZweCAtOTZweDsgfVxuLnVpLWljb24tbG9ja2VkIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE5MnB4IC05NnB4OyB9XG4udWktaWNvbi11bmxvY2tlZCB7IGJhY2tncm91bmQtcG9zaXRpb246IC0yMDhweCAtOTZweDsgfVxuLnVpLWljb24tYm9va21hcmsgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjI0cHggLTk2cHg7IH1cbi51aS1pY29uLXRhZyB7IGJhY2tncm91bmQtcG9zaXRpb246IC0yNDBweCAtOTZweDsgfVxuLnVpLWljb24taG9tZSB7IGJhY2tncm91bmQtcG9zaXRpb246IDAgLTExMnB4OyB9XG4udWktaWNvbi1mbGFnIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE2cHggLTExMnB4OyB9XG4udWktaWNvbi1jYWxlbmRhciB7IGJhY2tncm91bmQtcG9zaXRpb246IC0zMnB4IC0xMTJweDsgfVxuLnVpLWljb24tY2FydCB7IGJhY2tncm91bmQtcG9zaXRpb246IC00OHB4IC0xMTJweDsgfVxuLnVpLWljb24tcGVuY2lsIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTY0cHggLTExMnB4OyB9XG4udWktaWNvbi1jbG9jayB7IGJhY2tncm91bmQtcG9zaXRpb246IC04MHB4IC0xMTJweDsgfVxuLnVpLWljb24tZGlzayB7IGJhY2tncm91bmQtcG9zaXRpb246IC05NnB4IC0xMTJweDsgfVxuLnVpLWljb24tY2FsY3VsYXRvciB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xMTJweCAtMTEycHg7IH1cbi51aS1pY29uLXpvb21pbiB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xMjhweCAtMTEycHg7IH1cbi51aS1pY29uLXpvb21vdXQgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTQ0cHggLTExMnB4OyB9XG4udWktaWNvbi1zZWFyY2ggeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTYwcHggLTExMnB4OyB9XG4udWktaWNvbi13cmVuY2ggeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTc2cHggLTExMnB4OyB9XG4udWktaWNvbi1nZWFyIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE5MnB4IC0xMTJweDsgfVxuLnVpLWljb24taGVhcnQgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjA4cHggLTExMnB4OyB9XG4udWktaWNvbi1zdGFyIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTIyNHB4IC0xMTJweDsgfVxuLnVpLWljb24tbGluayB7IGJhY2tncm91bmQtcG9zaXRpb246IC0yNDBweCAtMTEycHg7IH1cbi51aS1pY29uLWNhbmNlbCB7IGJhY2tncm91bmQtcG9zaXRpb246IDAgLTEyOHB4OyB9XG4udWktaWNvbi1wbHVzIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE2cHggLTEyOHB4OyB9XG4udWktaWNvbi1wbHVzdGhpY2sgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzJweCAtMTI4cHg7IH1cbi51aS1pY29uLW1pbnVzIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ4cHggLTEyOHB4OyB9XG4udWktaWNvbi1taW51c3RoaWNrIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTY0cHggLTEyOHB4OyB9XG4udWktaWNvbi1jbG9zZSB7IGJhY2tncm91bmQtcG9zaXRpb246IC04MHB4IC0xMjhweDsgfVxuLnVpLWljb24tY2xvc2V0aGljayB7IGJhY2tncm91bmQtcG9zaXRpb246IC05NnB4IC0xMjhweDsgfVxuLnVpLWljb24ta2V5IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTExMnB4IC0xMjhweDsgfVxuLnVpLWljb24tbGlnaHRidWxiIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEyOHB4IC0xMjhweDsgfVxuLnVpLWljb24tc2Npc3NvcnMgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTQ0cHggLTEyOHB4OyB9XG4udWktaWNvbi1jbGlwYm9hcmQgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTYwcHggLTEyOHB4OyB9XG4udWktaWNvbi1jb3B5IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE3NnB4IC0xMjhweDsgfVxuLnVpLWljb24tY29udGFjdCB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xOTJweCAtMTI4cHg7IH1cbi51aS1pY29uLWltYWdlIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTIwOHB4IC0xMjhweDsgfVxuLnVpLWljb24tdmlkZW8geyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjI0cHggLTEyOHB4OyB9XG4udWktaWNvbi1zY3JpcHQgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjQwcHggLTEyOHB4OyB9XG4udWktaWNvbi1hbGVydCB7IGJhY2tncm91bmQtcG9zaXRpb246IDAgLTE0NHB4OyB9XG4udWktaWNvbi1pbmZvIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE2cHggLTE0NHB4OyB9XG4udWktaWNvbi1ub3RpY2UgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzJweCAtMTQ0cHg7IH1cbi51aS1pY29uLWhlbHAgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDhweCAtMTQ0cHg7IH1cbi51aS1pY29uLWNoZWNrIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTY0cHggLTE0NHB4OyB9XG4udWktaWNvbi1idWxsZXQgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtODBweCAtMTQ0cHg7IH1cbi51aS1pY29uLXJhZGlvLW9uIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTk2cHggLTE0NHB4OyB9XG4udWktaWNvbi1yYWRpby1vZmYgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTEycHggLTE0NHB4OyB9XG4udWktaWNvbi1waW4tdyB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xMjhweCAtMTQ0cHg7IH1cbi51aS1pY29uLXBpbi1zIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE0NHB4IC0xNDRweDsgfVxuLnVpLWljb24tcGxheSB7IGJhY2tncm91bmQtcG9zaXRpb246IDAgLTE2MHB4OyB9XG4udWktaWNvbi1wYXVzZSB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xNnB4IC0xNjBweDsgfVxuLnVpLWljb24tc2Vlay1uZXh0IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMycHggLTE2MHB4OyB9XG4udWktaWNvbi1zZWVrLXByZXYgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDhweCAtMTYwcHg7IH1cbi51aS1pY29uLXNlZWstZW5kIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTY0cHggLTE2MHB4OyB9XG4udWktaWNvbi1zZWVrLXN0YXJ0IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTgwcHggLTE2MHB4OyB9XG4vKiB1aS1pY29uLXNlZWstZmlyc3QgaXMgZGVwcmVjYXRlZCwgdXNlIHVpLWljb24tc2Vlay1zdGFydCBpbnN0ZWFkICovXG4udWktaWNvbi1zZWVrLWZpcnN0IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTgwcHggLTE2MHB4OyB9XG4udWktaWNvbi1zdG9wIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTk2cHggLTE2MHB4OyB9XG4udWktaWNvbi1lamVjdCB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xMTJweCAtMTYwcHg7IH1cbi51aS1pY29uLXZvbHVtZS1vZmYgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTI4cHggLTE2MHB4OyB9XG4udWktaWNvbi12b2x1bWUtb24geyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTQ0cHggLTE2MHB4OyB9XG4udWktaWNvbi1wb3dlciB7IGJhY2tncm91bmQtcG9zaXRpb246IDAgLTE3NnB4OyB9XG4udWktaWNvbi1zaWduYWwtZGlhZyB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xNnB4IC0xNzZweDsgfVxuLnVpLWljb24tc2lnbmFsIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMycHggLTE3NnB4OyB9XG4udWktaWNvbi1iYXR0ZXJ5LTAgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDhweCAtMTc2cHg7IH1cbi51aS1pY29uLWJhdHRlcnktMSB7IGJhY2tncm91bmQtcG9zaXRpb246IC02NHB4IC0xNzZweDsgfVxuLnVpLWljb24tYmF0dGVyeS0yIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTgwcHggLTE3NnB4OyB9XG4udWktaWNvbi1iYXR0ZXJ5LTMgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtOTZweCAtMTc2cHg7IH1cbi51aS1pY29uLWNpcmNsZS1wbHVzIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMTkycHg7IH1cbi51aS1pY29uLWNpcmNsZS1taW51cyB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xNnB4IC0xOTJweDsgfVxuLnVpLWljb24tY2lyY2xlLWNsb3NlIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMycHggLTE5MnB4OyB9XG4udWktaWNvbi1jaXJjbGUtdHJpYW5nbGUtZSB7IGJhY2tncm91bmQtcG9zaXRpb246IC00OHB4IC0xOTJweDsgfVxuLnVpLWljb24tY2lyY2xlLXRyaWFuZ2xlLXMgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNjRweCAtMTkycHg7IH1cbi51aS1pY29uLWNpcmNsZS10cmlhbmdsZS13IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTgwcHggLTE5MnB4OyB9XG4udWktaWNvbi1jaXJjbGUtdHJpYW5nbGUtbiB7IGJhY2tncm91bmQtcG9zaXRpb246IC05NnB4IC0xOTJweDsgfVxuLnVpLWljb24tY2lyY2xlLWFycm93LWUgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTEycHggLTE5MnB4OyB9XG4udWktaWNvbi1jaXJjbGUtYXJyb3ctcyB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xMjhweCAtMTkycHg7IH1cbi51aS1pY29uLWNpcmNsZS1hcnJvdy13IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE0NHB4IC0xOTJweDsgfVxuLnVpLWljb24tY2lyY2xlLWFycm93LW4geyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTYwcHggLTE5MnB4OyB9XG4udWktaWNvbi1jaXJjbGUtem9vbWluIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE3NnB4IC0xOTJweDsgfVxuLnVpLWljb24tY2lyY2xlLXpvb21vdXQgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTkycHggLTE5MnB4OyB9XG4udWktaWNvbi1jaXJjbGUtY2hlY2sgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjA4cHggLTE5MnB4OyB9XG4udWktaWNvbi1jaXJjbGVzbWFsbC1wbHVzIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMjA4cHg7IH1cbi51aS1pY29uLWNpcmNsZXNtYWxsLW1pbnVzIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE2cHggLTIwOHB4OyB9XG4udWktaWNvbi1jaXJjbGVzbWFsbC1jbG9zZSB7IGJhY2tncm91bmQtcG9zaXRpb246IC0zMnB4IC0yMDhweDsgfVxuLnVpLWljb24tc3F1YXJlc21hbGwtcGx1cyB7IGJhY2tncm91bmQtcG9zaXRpb246IC00OHB4IC0yMDhweDsgfVxuLnVpLWljb24tc3F1YXJlc21hbGwtbWludXMgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNjRweCAtMjA4cHg7IH1cbi51aS1pY29uLXNxdWFyZXNtYWxsLWNsb3NlIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTgwcHggLTIwOHB4OyB9XG4udWktaWNvbi1ncmlwLWRvdHRlZC12ZXJ0aWNhbCB7IGJhY2tncm91bmQtcG9zaXRpb246IDAgLTIyNHB4OyB9XG4udWktaWNvbi1ncmlwLWRvdHRlZC1ob3Jpem9udGFsIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE2cHggLTIyNHB4OyB9XG4udWktaWNvbi1ncmlwLXNvbGlkLXZlcnRpY2FsIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMycHggLTIyNHB4OyB9XG4udWktaWNvbi1ncmlwLXNvbGlkLWhvcml6b250YWwgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDhweCAtMjI0cHg7IH1cbi51aS1pY29uLWdyaXBzbWFsbC1kaWFnb25hbC1zZSB7IGJhY2tncm91bmQtcG9zaXRpb246IC02NHB4IC0yMjRweDsgfVxuLnVpLWljb24tZ3JpcC1kaWFnb25hbC1zZSB7IGJhY2tncm91bmQtcG9zaXRpb246IC04MHB4IC0yMjRweDsgfVxuXG5cbi8qIE1pc2MgdmlzdWFsc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi8qIENvcm5lciByYWRpdXMgKi9cbi51aS1jb3JuZXItYWxsLFxuLnVpLWNvcm5lci10b3AsXG4udWktY29ybmVyLWxlZnQsXG4udWktY29ybmVyLXRsIHtcblx0Ym9yZGVyLXRvcC1sZWZ0LXJhZGl1czogM3B4Lyp7Y29ybmVyUmFkaXVzfSovO1xufVxuLnVpLWNvcm5lci1hbGwsXG4udWktY29ybmVyLXRvcCxcbi51aS1jb3JuZXItcmlnaHQsXG4udWktY29ybmVyLXRyIHtcblx0Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDNweC8qe2Nvcm5lclJhZGl1c30qLztcbn1cbi51aS1jb3JuZXItYWxsLFxuLnVpLWNvcm5lci1ib3R0b20sXG4udWktY29ybmVyLWxlZnQsXG4udWktY29ybmVyLWJsIHtcblx0Ym9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogM3B4Lyp7Y29ybmVyUmFkaXVzfSovO1xufVxuLnVpLWNvcm5lci1hbGwsXG4udWktY29ybmVyLWJvdHRvbSxcbi51aS1jb3JuZXItcmlnaHQsXG4udWktY29ybmVyLWJyIHtcblx0Ym9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDNweC8qe2Nvcm5lclJhZGl1c30qLztcbn1cblxuLyogT3ZlcmxheXMgKi9cbi51aS13aWRnZXQtb3ZlcmxheSB7XG5cdGJhY2tncm91bmQ6ICNhYWFhYWEvKntiZ0NvbG9yT3ZlcmxheX0qLyAvKntiZ0ltZ1VybE92ZXJsYXl9Ki8gLyp7YmdPdmVybGF5WFBvc30qLyAvKntiZ092ZXJsYXlZUG9zfSovIC8qe2JnT3ZlcmxheVJlcGVhdH0qLztcblx0b3BhY2l0eTogLjMvKntvcGFjaXR5T3ZlcmxheX0qLztcblx0ZmlsdGVyOiBBbHBoYShPcGFjaXR5PTMwKS8qe29wYWNpdHlGaWx0ZXJPdmVybGF5fSovOyAvKiBzdXBwb3J0OiBJRTggKi9cbn1cbi51aS13aWRnZXQtc2hhZG93IHtcblx0LXdlYmtpdC1ib3gtc2hhZG93OiAwLyp7b2Zmc2V0TGVmdFNoYWRvd30qLyAwLyp7b2Zmc2V0VG9wU2hhZG93fSovIDVweC8qe3RoaWNrbmVzc1NoYWRvd30qLyAjNjY2NjY2Lyp7YmdDb2xvclNoYWRvd30qLztcblx0Ym94LXNoYWRvdzogMC8qe29mZnNldExlZnRTaGFkb3d9Ki8gMC8qe29mZnNldFRvcFNoYWRvd30qLyA1cHgvKnt0aGlja25lc3NTaGFkb3d9Ki8gIzY2NjY2Ni8qe2JnQ29sb3JTaGFkb3d9Ki87XG59XG4iLCIvKiFcbiAqIGpRdWVyeSBVSSBDU1MgRnJhbWV3b3JrIDEuMTIuMVxuICogaHR0cDovL2pxdWVyeXVpLmNvbVxuICpcbiAqIENvcHlyaWdodCBqUXVlcnkgRm91bmRhdGlvbiBhbmQgb3RoZXIgY29udHJpYnV0b3JzXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UuXG4gKiBodHRwOi8vanF1ZXJ5Lm9yZy9saWNlbnNlXG4gKlxuICogaHR0cDovL2FwaS5qcXVlcnl1aS5jb20vY2F0ZWdvcnkvdGhlbWluZy9cbiAqL1xuQGltcG9ydCBcImJhc2UuY3NzXCI7XG5AaW1wb3J0IFwidGhlbWUuY3NzXCI7XG4iLCJAY2hhcnNldCBcIlVURi04XCI7XG5cbi8qIVxuICogYW5pbWF0ZS5jc3MgLWh0dHBzOi8vZGFuZWRlbi5naXRodWIuaW8vYW5pbWF0ZS5jc3MvXG4gKiBWZXJzaW9uIC0gMy43LjJcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZSAtIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiAqXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTkgRGFuaWVsIEVkZW5cbiAqL1xuXG5ALXdlYmtpdC1rZXlmcmFtZXMgYm91bmNlIHtcbiAgZnJvbSxcbiAgMjAlLFxuICA1MyUsXG4gIDgwJSxcbiAgdG8ge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIH1cblxuICA0MCUsXG4gIDQzJSB7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC43NTUsIDAuMDUsIDAuODU1LCAwLjA2KTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC43NTUsIDAuMDUsIDAuODU1LCAwLjA2KTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTMwcHgsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTMwcHgsIDApO1xuICB9XG5cbiAgNzAlIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjc1NSwgMC4wNSwgMC44NTUsIDAuMDYpO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjc1NSwgMC4wNSwgMC44NTUsIDAuMDYpO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTVweCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTVweCwgMCk7XG4gIH1cblxuICA5MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtNHB4LCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC00cHgsIDApO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgYm91bmNlIHtcbiAgZnJvbSxcbiAgMjAlLFxuICA1MyUsXG4gIDgwJSxcbiAgdG8ge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIH1cblxuICA0MCUsXG4gIDQzJSB7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC43NTUsIDAuMDUsIDAuODU1LCAwLjA2KTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC43NTUsIDAuMDUsIDAuODU1LCAwLjA2KTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTMwcHgsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTMwcHgsIDApO1xuICB9XG5cbiAgNzAlIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjc1NSwgMC4wNSwgMC44NTUsIDAuMDYpO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjc1NSwgMC4wNSwgMC44NTUsIDAuMDYpO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTVweCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTVweCwgMCk7XG4gIH1cblxuICA5MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtNHB4LCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC00cHgsIDApO1xuICB9XG59XG5cbi5ib3VuY2Uge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBib3VuY2U7XG4gIGFuaW1hdGlvbi1uYW1lOiBib3VuY2U7XG4gIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGJvdHRvbTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGJvdHRvbTtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGZsYXNoIHtcbiAgZnJvbSxcbiAgNTAlLFxuICB0byB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIDI1JSxcbiAgNzUlIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmxhc2gge1xuICBmcm9tLFxuICA1MCUsXG4gIHRvIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgMjUlLFxuICA3NSUge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cblxuLmZsYXNoIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmxhc2g7XG4gIGFuaW1hdGlvbi1uYW1lOiBmbGFzaDtcbn1cblxuLyogb3JpZ2luYWxseSBhdXRob3JlZCBieSBOaWNrIFBldHRpdCAtIGh0dHBzOi8vZ2l0aHViLmNvbS9uaWNrcGV0dGl0L2dsaWRlICovXG5cbkAtd2Via2l0LWtleWZyYW1lcyBwdWxzZSB7XG4gIGZyb20ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcbiAgfVxuXG4gIDUwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMS4wNSwgMS4wNSwgMS4wNSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMDUsIDEuMDUsIDEuMDUpO1xuICB9XG5cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHB1bHNlIHtcbiAgZnJvbSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xuICB9XG5cbiAgNTAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLjA1LCAxLjA1LCAxLjA1KTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4wNSwgMS4wNSwgMS4wNSk7XG4gIH1cblxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xuICB9XG59XG5cbi5wdWxzZSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHB1bHNlO1xuICBhbmltYXRpb24tbmFtZTogcHVsc2U7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBydWJiZXJCYW5kIHtcbiAgZnJvbSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xuICB9XG5cbiAgMzAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLjI1LCAwLjc1LCAxKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4yNSwgMC43NSwgMSk7XG4gIH1cblxuICA0MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuNzUsIDEuMjUsIDEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjc1LCAxLjI1LCAxKTtcbiAgfVxuXG4gIDUwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMS4xNSwgMC44NSwgMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMTUsIDAuODUsIDEpO1xuICB9XG5cbiAgNjUlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjk1LCAxLjA1LCAxKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC45NSwgMS4wNSwgMSk7XG4gIH1cblxuICA3NSUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEuMDUsIDAuOTUsIDEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjA1LCAwLjk1LCAxKTtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBydWJiZXJCYW5kIHtcbiAgZnJvbSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xuICB9XG5cbiAgMzAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLjI1LCAwLjc1LCAxKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4yNSwgMC43NSwgMSk7XG4gIH1cblxuICA0MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuNzUsIDEuMjUsIDEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjc1LCAxLjI1LCAxKTtcbiAgfVxuXG4gIDUwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMS4xNSwgMC44NSwgMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMTUsIDAuODUsIDEpO1xuICB9XG5cbiAgNjUlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjk1LCAxLjA1LCAxKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC45NSwgMS4wNSwgMSk7XG4gIH1cblxuICA3NSUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEuMDUsIDAuOTUsIDEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjA1LCAwLjk1LCAxKTtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XG4gIH1cbn1cblxuLnJ1YmJlckJhbmQge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBydWJiZXJCYW5kO1xuICBhbmltYXRpb24tbmFtZTogcnViYmVyQmFuZDtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHNoYWtlIHtcbiAgZnJvbSxcbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB9XG5cbiAgMTAlLFxuICAzMCUsXG4gIDUwJSxcbiAgNzAlLFxuICA5MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTBweCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTBweCwgMCwgMCk7XG4gIH1cblxuICAyMCUsXG4gIDQwJSxcbiAgNjAlLFxuICA4MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMHB4LCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwcHgsIDAsIDApO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgc2hha2Uge1xuICBmcm9tLFxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIH1cblxuICAxMCUsXG4gIDMwJSxcbiAgNTAlLFxuICA3MCUsXG4gIDkwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMHB4LCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMHB4LCAwLCAwKTtcbiAgfVxuXG4gIDIwJSxcbiAgNDAlLFxuICA2MCUsXG4gIDgwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwcHgsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTBweCwgMCwgMCk7XG4gIH1cbn1cblxuLnNoYWtlIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogc2hha2U7XG4gIGFuaW1hdGlvbi1uYW1lOiBzaGFrZTtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGhlYWRTaGFrZSB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIH1cblxuICA2LjUlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNnB4KSByb3RhdGVZKC05ZGVnKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTZweCkgcm90YXRlWSgtOWRlZyk7XG4gIH1cblxuICAxOC41JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNXB4KSByb3RhdGVZKDdkZWcpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg1cHgpIHJvdGF0ZVkoN2RlZyk7XG4gIH1cblxuICAzMS41JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTNweCkgcm90YXRlWSgtNWRlZyk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0zcHgpIHJvdGF0ZVkoLTVkZWcpO1xuICB9XG5cbiAgNDMuNSUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDJweCkgcm90YXRlWSgzZGVnKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMnB4KSByb3RhdGVZKDNkZWcpO1xuICB9XG5cbiAgNTAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBoZWFkU2hha2Uge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB9XG5cbiAgNi41JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTZweCkgcm90YXRlWSgtOWRlZyk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC02cHgpIHJvdGF0ZVkoLTlkZWcpO1xuICB9XG5cbiAgMTguNSUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDVweCkgcm90YXRlWSg3ZGVnKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNXB4KSByb3RhdGVZKDdkZWcpO1xuICB9XG5cbiAgMzEuNSUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0zcHgpIHJvdGF0ZVkoLTVkZWcpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtM3B4KSByb3RhdGVZKC01ZGVnKTtcbiAgfVxuXG4gIDQzLjUlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgycHgpIHJvdGF0ZVkoM2RlZyk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDJweCkgcm90YXRlWSgzZGVnKTtcbiAgfVxuXG4gIDUwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB9XG59XG5cbi5oZWFkU2hha2Uge1xuICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0O1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogaGVhZFNoYWtlO1xuICBhbmltYXRpb24tbmFtZTogaGVhZFNoYWtlO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgc3dpbmcge1xuICAyMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAxNWRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAxNWRlZyk7XG4gIH1cblxuICA0MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtMTBkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTEwZGVnKTtcbiAgfVxuXG4gIDYwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDVkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgNWRlZyk7XG4gIH1cblxuICA4MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtNWRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtNWRlZyk7XG4gIH1cblxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDBkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgMGRlZyk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBzd2luZyB7XG4gIDIwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDE1ZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDE1ZGVnKTtcbiAgfVxuXG4gIDQwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC0xMGRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtMTBkZWcpO1xuICB9XG5cbiAgNjAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgNWRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA1ZGVnKTtcbiAgfVxuXG4gIDgwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC01ZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC01ZGVnKTtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgMGRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAwZGVnKTtcbiAgfVxufVxuXG4uc3dpbmcge1xuICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHRvcCBjZW50ZXI7XG4gIHRyYW5zZm9ybS1vcmlnaW46IHRvcCBjZW50ZXI7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHN3aW5nO1xuICBhbmltYXRpb24tbmFtZTogc3dpbmc7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyB0YWRhIHtcbiAgZnJvbSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xuICB9XG5cbiAgMTAlLFxuICAyMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuOSwgMC45LCAwLjkpIHJvdGF0ZTNkKDAsIDAsIDEsIC0zZGVnKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC45LCAwLjksIDAuOSkgcm90YXRlM2QoMCwgMCwgMSwgLTNkZWcpO1xuICB9XG5cbiAgMzAlLFxuICA1MCUsXG4gIDcwJSxcbiAgOTAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLjEsIDEuMSwgMS4xKSByb3RhdGUzZCgwLCAwLCAxLCAzZGVnKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4xLCAxLjEsIDEuMSkgcm90YXRlM2QoMCwgMCwgMSwgM2RlZyk7XG4gIH1cblxuICA0MCUsXG4gIDYwJSxcbiAgODAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLjEsIDEuMSwgMS4xKSByb3RhdGUzZCgwLCAwLCAxLCAtM2RlZyk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMSwgMS4xLCAxLjEpIHJvdGF0ZTNkKDAsIDAsIDEsIC0zZGVnKTtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyB0YWRhIHtcbiAgZnJvbSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xuICB9XG5cbiAgMTAlLFxuICAyMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuOSwgMC45LCAwLjkpIHJvdGF0ZTNkKDAsIDAsIDEsIC0zZGVnKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC45LCAwLjksIDAuOSkgcm90YXRlM2QoMCwgMCwgMSwgLTNkZWcpO1xuICB9XG5cbiAgMzAlLFxuICA1MCUsXG4gIDcwJSxcbiAgOTAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLjEsIDEuMSwgMS4xKSByb3RhdGUzZCgwLCAwLCAxLCAzZGVnKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4xLCAxLjEsIDEuMSkgcm90YXRlM2QoMCwgMCwgMSwgM2RlZyk7XG4gIH1cblxuICA0MCUsXG4gIDYwJSxcbiAgODAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLjEsIDEuMSwgMS4xKSByb3RhdGUzZCgwLCAwLCAxLCAtM2RlZyk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMSwgMS4xLCAxLjEpIHJvdGF0ZTNkKDAsIDAsIDEsIC0zZGVnKTtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XG4gIH1cbn1cblxuLnRhZGEge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiB0YWRhO1xuICBhbmltYXRpb24tbmFtZTogdGFkYTtcbn1cblxuLyogb3JpZ2luYWxseSBhdXRob3JlZCBieSBOaWNrIFBldHRpdCAtIGh0dHBzOi8vZ2l0aHViLmNvbS9uaWNrcGV0dGl0L2dsaWRlICovXG5cbkAtd2Via2l0LWtleWZyYW1lcyB3b2JibGUge1xuICBmcm9tIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgfVxuXG4gIDE1JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yNSUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIC01ZGVnKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yNSUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIC01ZGVnKTtcbiAgfVxuXG4gIDMwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwJSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgM2RlZyk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMCUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIDNkZWcpO1xuICB9XG5cbiAgNDUlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTE1JSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgLTNkZWcpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTE1JSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgLTNkZWcpO1xuICB9XG5cbiAgNjAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAyZGVnKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwJSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgMmRlZyk7XG4gIH1cblxuICA3NSUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNSUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIC0xZGVnKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC01JSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgLTFkZWcpO1xuICB9XG5cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgd29iYmxlIHtcbiAgZnJvbSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIH1cblxuICAxNSUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjUlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAtNWRlZyk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjUlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAtNWRlZyk7XG4gIH1cblxuICAzMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMCUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIDNkZWcpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjAlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAzZGVnKTtcbiAgfVxuXG4gIDQ1JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xNSUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIC0zZGVnKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xNSUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIC0zZGVnKTtcbiAgfVxuXG4gIDYwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwJSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgMmRlZyk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMCUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIDJkZWcpO1xuICB9XG5cbiAgNzUlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTUlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAtMWRlZyk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNSUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIC0xZGVnKTtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgfVxufVxuXG4ud29iYmxlIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogd29iYmxlO1xuICBhbmltYXRpb24tbmFtZTogd29iYmxlO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgamVsbG8ge1xuICBmcm9tLFxuICAxMS4xJSxcbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB9XG5cbiAgMjIuMiUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCgtMTIuNWRlZykgc2tld1koLTEyLjVkZWcpO1xuICAgIHRyYW5zZm9ybTogc2tld1goLTEyLjVkZWcpIHNrZXdZKC0xMi41ZGVnKTtcbiAgfVxuXG4gIDMzLjMlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tld1goNi4yNWRlZykgc2tld1koNi4yNWRlZyk7XG4gICAgdHJhbnNmb3JtOiBza2V3WCg2LjI1ZGVnKSBza2V3WSg2LjI1ZGVnKTtcbiAgfVxuXG4gIDQ0LjQlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tld1goLTMuMTI1ZGVnKSBza2V3WSgtMy4xMjVkZWcpO1xuICAgIHRyYW5zZm9ybTogc2tld1goLTMuMTI1ZGVnKSBza2V3WSgtMy4xMjVkZWcpO1xuICB9XG5cbiAgNTUuNSUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCgxLjU2MjVkZWcpIHNrZXdZKDEuNTYyNWRlZyk7XG4gICAgdHJhbnNmb3JtOiBza2V3WCgxLjU2MjVkZWcpIHNrZXdZKDEuNTYyNWRlZyk7XG4gIH1cblxuICA2Ni42JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKC0wLjc4MTI1ZGVnKSBza2V3WSgtMC43ODEyNWRlZyk7XG4gICAgdHJhbnNmb3JtOiBza2V3WCgtMC43ODEyNWRlZykgc2tld1koLTAuNzgxMjVkZWcpO1xuICB9XG5cbiAgNzcuNyUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCgwLjM5MDYyNWRlZykgc2tld1koMC4zOTA2MjVkZWcpO1xuICAgIHRyYW5zZm9ybTogc2tld1goMC4zOTA2MjVkZWcpIHNrZXdZKDAuMzkwNjI1ZGVnKTtcbiAgfVxuXG4gIDg4LjglIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tld1goLTAuMTk1MzEyNWRlZykgc2tld1koLTAuMTk1MzEyNWRlZyk7XG4gICAgdHJhbnNmb3JtOiBza2V3WCgtMC4xOTUzMTI1ZGVnKSBza2V3WSgtMC4xOTUzMTI1ZGVnKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGplbGxvIHtcbiAgZnJvbSxcbiAgMTEuMSUsXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgfVxuXG4gIDIyLjIlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tld1goLTEyLjVkZWcpIHNrZXdZKC0xMi41ZGVnKTtcbiAgICB0cmFuc2Zvcm06IHNrZXdYKC0xMi41ZGVnKSBza2V3WSgtMTIuNWRlZyk7XG4gIH1cblxuICAzMy4zJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKDYuMjVkZWcpIHNrZXdZKDYuMjVkZWcpO1xuICAgIHRyYW5zZm9ybTogc2tld1goNi4yNWRlZykgc2tld1koNi4yNWRlZyk7XG4gIH1cblxuICA0NC40JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKC0zLjEyNWRlZykgc2tld1koLTMuMTI1ZGVnKTtcbiAgICB0cmFuc2Zvcm06IHNrZXdYKC0zLjEyNWRlZykgc2tld1koLTMuMTI1ZGVnKTtcbiAgfVxuXG4gIDU1LjUlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tld1goMS41NjI1ZGVnKSBza2V3WSgxLjU2MjVkZWcpO1xuICAgIHRyYW5zZm9ybTogc2tld1goMS41NjI1ZGVnKSBza2V3WSgxLjU2MjVkZWcpO1xuICB9XG5cbiAgNjYuNiUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCgtMC43ODEyNWRlZykgc2tld1koLTAuNzgxMjVkZWcpO1xuICAgIHRyYW5zZm9ybTogc2tld1goLTAuNzgxMjVkZWcpIHNrZXdZKC0wLjc4MTI1ZGVnKTtcbiAgfVxuXG4gIDc3LjclIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tld1goMC4zOTA2MjVkZWcpIHNrZXdZKDAuMzkwNjI1ZGVnKTtcbiAgICB0cmFuc2Zvcm06IHNrZXdYKDAuMzkwNjI1ZGVnKSBza2V3WSgwLjM5MDYyNWRlZyk7XG4gIH1cblxuICA4OC44JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKC0wLjE5NTMxMjVkZWcpIHNrZXdZKC0wLjE5NTMxMjVkZWcpO1xuICAgIHRyYW5zZm9ybTogc2tld1goLTAuMTk1MzEyNWRlZykgc2tld1koLTAuMTk1MzEyNWRlZyk7XG4gIH1cbn1cblxuLmplbGxvIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogamVsbG87XG4gIGFuaW1hdGlvbi1uYW1lOiBqZWxsbztcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGhlYXJ0QmVhdCB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxuXG4gIDE0JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEuMyk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjMpO1xuICB9XG5cbiAgMjglIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxuXG4gIDQyJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEuMyk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjMpO1xuICB9XG5cbiAgNzAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGhlYXJ0QmVhdCB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxuXG4gIDE0JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEuMyk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjMpO1xuICB9XG5cbiAgMjglIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxuXG4gIDQyJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEuMyk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjMpO1xuICB9XG5cbiAgNzAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxufVxuXG4uaGVhcnRCZWF0IHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogaGVhcnRCZWF0O1xuICBhbmltYXRpb24tbmFtZTogaGVhcnRCZWF0O1xuICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogMS4zcztcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxLjNzO1xuICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0O1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGJvdW5jZUluIHtcbiAgZnJvbSxcbiAgMjAlLFxuICA0MCUsXG4gIDYwJSxcbiAgODAlLFxuICB0byB7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcbiAgfVxuXG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuMywgMC4zLCAwLjMpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjMsIDAuMywgMC4zKTtcbiAgfVxuXG4gIDIwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMS4xLCAxLjEsIDEuMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMSwgMS4xLCAxLjEpO1xuICB9XG5cbiAgNDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjksIDAuOSwgMC45KTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC45LCAwLjksIDAuOSk7XG4gIH1cblxuICA2MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMS4wMywgMS4wMywgMS4wMyk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMDMsIDEuMDMsIDEuMDMpO1xuICB9XG5cbiAgODAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjk3LCAwLjk3LCAwLjk3KTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC45NywgMC45NywgMC45Nyk7XG4gIH1cblxuICB0byB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBib3VuY2VJbiB7XG4gIGZyb20sXG4gIDIwJSxcbiAgNDAlLFxuICA2MCUsXG4gIDgwJSxcbiAgdG8ge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG4gIH1cblxuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjMsIDAuMywgMC4zKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC4zLCAwLjMsIDAuMyk7XG4gIH1cblxuICAyMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEuMSwgMS4xLCAxLjEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjEsIDEuMSwgMS4xKTtcbiAgfVxuXG4gIDQwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC45LCAwLjksIDAuOSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuOSwgMC45LCAwLjkpO1xuICB9XG5cbiAgNjAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEuMDMsIDEuMDMsIDEuMDMpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjAzLCAxLjAzLCAxLjAzKTtcbiAgfVxuXG4gIDgwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC45NywgMC45NywgMC45Nyk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuOTcsIDAuOTcsIDAuOTcpO1xuICB9XG5cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xuICB9XG59XG5cbi5ib3VuY2VJbiB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjc1cztcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjc1cztcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogYm91bmNlSW47XG4gIGFuaW1hdGlvbi1uYW1lOiBib3VuY2VJbjtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGJvdW5jZUluRG93biB7XG4gIGZyb20sXG4gIDYwJSxcbiAgNzUlLFxuICA5MCUsXG4gIHRvIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xuICB9XG5cbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0zMDAwcHgsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTMwMDBweCwgMCk7XG4gIH1cblxuICA2MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDI1cHgsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjVweCwgMCk7XG4gIH1cblxuICA3NSUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTBweCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTBweCwgMCk7XG4gIH1cblxuICA5MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCA1cHgsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgNXB4LCAwKTtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGJvdW5jZUluRG93biB7XG4gIGZyb20sXG4gIDYwJSxcbiAgNzUlLFxuICA5MCUsXG4gIHRvIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xuICB9XG5cbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0zMDAwcHgsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTMwMDBweCwgMCk7XG4gIH1cblxuICA2MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDI1cHgsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjVweCwgMCk7XG4gIH1cblxuICA3NSUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTBweCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTBweCwgMCk7XG4gIH1cblxuICA5MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCA1cHgsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgNXB4LCAwKTtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgfVxufVxuXG4uYm91bmNlSW5Eb3duIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogYm91bmNlSW5Eb3duO1xuICBhbmltYXRpb24tbmFtZTogYm91bmNlSW5Eb3duO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgYm91bmNlSW5MZWZ0IHtcbiAgZnJvbSxcbiAgNjAlLFxuICA3NSUsXG4gIDkwJSxcbiAgdG8ge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG4gIH1cblxuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTMwMDBweCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMzAwMHB4LCAwLCAwKTtcbiAgfVxuXG4gIDYwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjVweCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyNXB4LCAwLCAwKTtcbiAgfVxuXG4gIDc1JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMHB4LCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMHB4LCAwLCAwKTtcbiAgfVxuXG4gIDkwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDVweCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCg1cHgsIDAsIDApO1xuICB9XG5cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgYm91bmNlSW5MZWZ0IHtcbiAgZnJvbSxcbiAgNjAlLFxuICA3NSUsXG4gIDkwJSxcbiAgdG8ge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG4gIH1cblxuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTMwMDBweCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMzAwMHB4LCAwLCAwKTtcbiAgfVxuXG4gIDYwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjVweCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyNXB4LCAwLCAwKTtcbiAgfVxuXG4gIDc1JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMHB4LCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMHB4LCAwLCAwKTtcbiAgfVxuXG4gIDkwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDVweCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCg1cHgsIDAsIDApO1xuICB9XG5cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB9XG59XG5cbi5ib3VuY2VJbkxlZnQge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBib3VuY2VJbkxlZnQ7XG4gIGFuaW1hdGlvbi1uYW1lOiBib3VuY2VJbkxlZnQ7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBib3VuY2VJblJpZ2h0IHtcbiAgZnJvbSxcbiAgNjAlLFxuICA3NSUsXG4gIDkwJSxcbiAgdG8ge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG4gIH1cblxuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgzMDAwcHgsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMzAwMHB4LCAwLCAwKTtcbiAgfVxuXG4gIDYwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTI1cHgsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTI1cHgsIDAsIDApO1xuICB9XG5cbiAgNzUlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTBweCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMHB4LCAwLCAwKTtcbiAgfVxuXG4gIDkwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC01cHgsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTVweCwgMCwgMCk7XG4gIH1cblxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBib3VuY2VJblJpZ2h0IHtcbiAgZnJvbSxcbiAgNjAlLFxuICA3NSUsXG4gIDkwJSxcbiAgdG8ge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG4gIH1cblxuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgzMDAwcHgsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMzAwMHB4LCAwLCAwKTtcbiAgfVxuXG4gIDYwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTI1cHgsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTI1cHgsIDAsIDApO1xuICB9XG5cbiAgNzUlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTBweCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMHB4LCAwLCAwKTtcbiAgfVxuXG4gIDkwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC01cHgsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTVweCwgMCwgMCk7XG4gIH1cblxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIH1cbn1cblxuLmJvdW5jZUluUmlnaHQge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBib3VuY2VJblJpZ2h0O1xuICBhbmltYXRpb24tbmFtZTogYm91bmNlSW5SaWdodDtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGJvdW5jZUluVXAge1xuICBmcm9tLFxuICA2MCUsXG4gIDc1JSxcbiAgOTAlLFxuICB0byB7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcbiAgfVxuXG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDMwMDBweCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAzMDAwcHgsIDApO1xuICB9XG5cbiAgNjAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjBweCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjBweCwgMCk7XG4gIH1cblxuICA3NSUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMHB4LCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwcHgsIDApO1xuICB9XG5cbiAgOTAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTVweCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtNXB4LCAwKTtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGJvdW5jZUluVXAge1xuICBmcm9tLFxuICA2MCUsXG4gIDc1JSxcbiAgOTAlLFxuICB0byB7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcbiAgfVxuXG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDMwMDBweCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAzMDAwcHgsIDApO1xuICB9XG5cbiAgNjAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjBweCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjBweCwgMCk7XG4gIH1cblxuICA3NSUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMHB4LCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwcHgsIDApO1xuICB9XG5cbiAgOTAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTVweCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtNXB4LCAwKTtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgfVxufVxuXG4uYm91bmNlSW5VcCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGJvdW5jZUluVXA7XG4gIGFuaW1hdGlvbi1uYW1lOiBib3VuY2VJblVwO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgYm91bmNlT3V0IHtcbiAgMjAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjksIDAuOSwgMC45KTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC45LCAwLjksIDAuOSk7XG4gIH1cblxuICA1MCUsXG4gIDU1JSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLjEsIDEuMSwgMS4xKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4xLCAxLjEsIDEuMSk7XG4gIH1cblxuICB0byB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjMsIDAuMywgMC4zKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC4zLCAwLjMsIDAuMyk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBib3VuY2VPdXQge1xuICAyMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuOSwgMC45LCAwLjkpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjksIDAuOSwgMC45KTtcbiAgfVxuXG4gIDUwJSxcbiAgNTUlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEuMSwgMS4xLCAxLjEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjEsIDEuMSwgMS4xKTtcbiAgfVxuXG4gIHRvIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuMywgMC4zLCAwLjMpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjMsIDAuMywgMC4zKTtcbiAgfVxufVxuXG4uYm91bmNlT3V0IHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDAuNzVzO1xuICBhbmltYXRpb24tZHVyYXRpb246IDAuNzVzO1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBib3VuY2VPdXQ7XG4gIGFuaW1hdGlvbi1uYW1lOiBib3VuY2VPdXQ7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBib3VuY2VPdXREb3duIHtcbiAgMjAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTBweCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMHB4LCAwKTtcbiAgfVxuXG4gIDQwJSxcbiAgNDUlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjBweCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjBweCwgMCk7XG4gIH1cblxuICB0byB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjAwMHB4LCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDIwMDBweCwgMCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBib3VuY2VPdXREb3duIHtcbiAgMjAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTBweCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMHB4LCAwKTtcbiAgfVxuXG4gIDQwJSxcbiAgNDUlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjBweCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjBweCwgMCk7XG4gIH1cblxuICB0byB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjAwMHB4LCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDIwMDBweCwgMCk7XG4gIH1cbn1cblxuLmJvdW5jZU91dERvd24ge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBib3VuY2VPdXREb3duO1xuICBhbmltYXRpb24tbmFtZTogYm91bmNlT3V0RG93bjtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGJvdW5jZU91dExlZnQge1xuICAyMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwcHgsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjBweCwgMCwgMCk7XG4gIH1cblxuICB0byB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTIwMDBweCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjAwMHB4LCAwLCAwKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGJvdW5jZU91dExlZnQge1xuICAyMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwcHgsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjBweCwgMCwgMCk7XG4gIH1cblxuICB0byB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTIwMDBweCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjAwMHB4LCAwLCAwKTtcbiAgfVxufVxuXG4uYm91bmNlT3V0TGVmdCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGJvdW5jZU91dExlZnQ7XG4gIGFuaW1hdGlvbi1uYW1lOiBib3VuY2VPdXRMZWZ0O1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgYm91bmNlT3V0UmlnaHQge1xuICAyMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yMHB4LCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yMHB4LCAwLCAwKTtcbiAgfVxuXG4gIHRvIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMDAwcHgsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjAwMHB4LCAwLCAwKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGJvdW5jZU91dFJpZ2h0IHtcbiAgMjAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjBweCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjBweCwgMCwgMCk7XG4gIH1cblxuICB0byB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjAwMHB4LCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwMDBweCwgMCwgMCk7XG4gIH1cbn1cblxuLmJvdW5jZU91dFJpZ2h0IHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogYm91bmNlT3V0UmlnaHQ7XG4gIGFuaW1hdGlvbi1uYW1lOiBib3VuY2VPdXRSaWdodDtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGJvdW5jZU91dFVwIHtcbiAgMjAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwcHgsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwcHgsIDApO1xuICB9XG5cbiAgNDAlLFxuICA0NSUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDIwcHgsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjBweCwgMCk7XG4gIH1cblxuICB0byB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwMDBweCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjAwMHB4LCAwKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGJvdW5jZU91dFVwIHtcbiAgMjAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwcHgsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwcHgsIDApO1xuICB9XG5cbiAgNDAlLFxuICA0NSUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDIwcHgsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjBweCwgMCk7XG4gIH1cblxuICB0byB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwMDBweCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjAwMHB4LCAwKTtcbiAgfVxufVxuXG4uYm91bmNlT3V0VXAge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBib3VuY2VPdXRVcDtcbiAgYW5pbWF0aW9uLW5hbWU6IGJvdW5jZU91dFVwO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZUluIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gIHRvIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmFkZUluIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gIHRvIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbi5mYWRlSW4ge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlSW47XG4gIGFuaW1hdGlvbi1uYW1lOiBmYWRlSW47XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBmYWRlSW5Eb3duIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMCUsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMCUsIDApO1xuICB9XG5cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBmYWRlSW5Eb3duIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMCUsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMCUsIDApO1xuICB9XG5cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIH1cbn1cblxuLmZhZGVJbkRvd24ge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlSW5Eb3duO1xuICBhbmltYXRpb24tbmFtZTogZmFkZUluRG93bjtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVJbkRvd25CaWcge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjAwMHB4LCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMDAwcHgsIDApO1xuICB9XG5cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBmYWRlSW5Eb3duQmlnIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwMDBweCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjAwMHB4LCAwKTtcbiAgfVxuXG4gIHRvIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB9XG59XG5cbi5mYWRlSW5Eb3duQmlnIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZUluRG93bkJpZztcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVJbkRvd25CaWc7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBmYWRlSW5MZWZ0IHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xuICB9XG5cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBmYWRlSW5MZWZ0IHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xuICB9XG5cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIH1cbn1cblxuLmZhZGVJbkxlZnQge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlSW5MZWZ0O1xuICBhbmltYXRpb24tbmFtZTogZmFkZUluTGVmdDtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVJbkxlZnRCaWcge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjAwMHB4LCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yMDAwcHgsIDAsIDApO1xuICB9XG5cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBmYWRlSW5MZWZ0QmlnIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTIwMDBweCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjAwMHB4LCAwLCAwKTtcbiAgfVxuXG4gIHRvIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB9XG59XG5cbi5mYWRlSW5MZWZ0QmlnIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZUluTGVmdEJpZztcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVJbkxlZnRCaWc7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBmYWRlSW5SaWdodCB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7XG4gIH1cblxuICB0byB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGZhZGVJblJpZ2h0IHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcbiAgfVxuXG4gIHRvIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB9XG59XG5cbi5mYWRlSW5SaWdodCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVJblJpZ2h0O1xuICBhbmltYXRpb24tbmFtZTogZmFkZUluUmlnaHQ7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBmYWRlSW5SaWdodEJpZyB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwMDBweCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMDAwcHgsIDAsIDApO1xuICB9XG5cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBmYWRlSW5SaWdodEJpZyB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwMDBweCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMDAwcHgsIDAsIDApO1xuICB9XG5cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIH1cbn1cblxuLmZhZGVJblJpZ2h0QmlnIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZUluUmlnaHRCaWc7XG4gIGFuaW1hdGlvbi1uYW1lOiBmYWRlSW5SaWdodEJpZztcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVJblVwIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDAlLCAwKTtcbiAgfVxuXG4gIHRvIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmFkZUluVXAge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDAlLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwMCUsIDApO1xuICB9XG5cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIH1cbn1cblxuLmZhZGVJblVwIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZUluVXA7XG4gIGFuaW1hdGlvbi1uYW1lOiBmYWRlSW5VcDtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVJblVwQmlnIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjAwMHB4LCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDIwMDBweCwgMCk7XG4gIH1cblxuICB0byB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGZhZGVJblVwQmlnIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjAwMHB4LCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDIwMDBweCwgMCk7XG4gIH1cblxuICB0byB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgfVxufVxuXG4uZmFkZUluVXBCaWcge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlSW5VcEJpZztcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVJblVwQmlnO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZU91dCB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICB0byB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGZhZGVPdXQge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cblxuLmZhZGVPdXQge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0O1xuICBhbmltYXRpb24tbmFtZTogZmFkZU91dDtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVPdXREb3duIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIHRvIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDAlLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwMCUsIDApO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmFkZU91dERvd24ge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwMCUsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7XG4gIH1cbn1cblxuLmZhZGVPdXREb3duIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZU91dERvd247XG4gIGFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0RG93bjtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVPdXREb3duQmlnIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIHRvIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyMDAwcHgsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjAwMHB4LCAwKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGZhZGVPdXREb3duQmlnIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIHRvIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyMDAwcHgsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjAwMHB4LCAwKTtcbiAgfVxufVxuXG4uZmFkZU91dERvd25CaWcge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0RG93bkJpZztcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXREb3duQmlnO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZU91dExlZnQge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGZhZGVPdXRMZWZ0IHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIHRvIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7XG4gIH1cbn1cblxuLmZhZGVPdXRMZWZ0IHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZU91dExlZnQ7XG4gIGFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0TGVmdDtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVPdXRMZWZ0QmlnIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIHRvIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjAwMHB4LCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yMDAwcHgsIDAsIDApO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmFkZU91dExlZnRCaWcge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yMDAwcHgsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTIwMDBweCwgMCwgMCk7XG4gIH1cbn1cblxuLmZhZGVPdXRMZWZ0QmlnIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZU91dExlZnRCaWc7XG4gIGFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0TGVmdEJpZztcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVPdXRSaWdodCB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICB0byB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGZhZGVPdXRSaWdodCB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICB0byB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcbiAgfVxufVxuXG4uZmFkZU91dFJpZ2h0IHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZU91dFJpZ2h0O1xuICBhbmltYXRpb24tbmFtZTogZmFkZU91dFJpZ2h0O1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZU91dFJpZ2h0QmlnIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIHRvIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMDAwcHgsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjAwMHB4LCAwLCAwKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGZhZGVPdXRSaWdodEJpZyB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICB0byB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjAwMHB4LCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwMDBweCwgMCwgMCk7XG4gIH1cbn1cblxuLmZhZGVPdXRSaWdodEJpZyB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXRSaWdodEJpZztcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXRSaWdodEJpZztcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVPdXRVcCB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICB0byB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMCUsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMCUsIDApO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmFkZU91dFVwIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIHRvIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAwJSwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAwJSwgMCk7XG4gIH1cbn1cblxuLmZhZGVPdXRVcCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXRVcDtcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXRVcDtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVPdXRVcEJpZyB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICB0byB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwMDBweCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjAwMHB4LCAwKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGZhZGVPdXRVcEJpZyB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICB0byB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwMDBweCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjAwMHB4LCAwKTtcbiAgfVxufVxuXG4uZmFkZU91dFVwQmlnIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZU91dFVwQmlnO1xuICBhbmltYXRpb24tbmFtZTogZmFkZU91dFVwQmlnO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmxpcCB7XG4gIGZyb20ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgc2NhbGUzZCgxLCAxLCAxKSB0cmFuc2xhdGUzZCgwLCAwLCAwKVxuICAgICAgcm90YXRlM2QoMCwgMSwgMCwgLTM2MGRlZyk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgc2NhbGUzZCgxLCAxLCAxKSB0cmFuc2xhdGUzZCgwLCAwLCAwKSByb3RhdGUzZCgwLCAxLCAwLCAtMzYwZGVnKTtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xuICB9XG5cbiAgNDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHNjYWxlM2QoMSwgMSwgMSkgdHJhbnNsYXRlM2QoMCwgMCwgMTUwcHgpXG4gICAgICByb3RhdGUzZCgwLCAxLCAwLCAtMTkwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSBzY2FsZTNkKDEsIDEsIDEpIHRyYW5zbGF0ZTNkKDAsIDAsIDE1MHB4KVxuICAgICAgcm90YXRlM2QoMCwgMSwgMCwgLTE5MGRlZyk7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgfVxuXG4gIDUwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSBzY2FsZTNkKDEsIDEsIDEpIHRyYW5zbGF0ZTNkKDAsIDAsIDE1MHB4KVxuICAgICAgcm90YXRlM2QoMCwgMSwgMCwgLTE3MGRlZyk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgc2NhbGUzZCgxLCAxLCAxKSB0cmFuc2xhdGUzZCgwLCAwLCAxNTBweClcbiAgICAgIHJvdGF0ZTNkKDAsIDEsIDAsIC0xNzBkZWcpO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xuICB9XG5cbiAgODAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHNjYWxlM2QoMC45NSwgMC45NSwgMC45NSkgdHJhbnNsYXRlM2QoMCwgMCwgMClcbiAgICAgIHJvdGF0ZTNkKDAsIDEsIDAsIDBkZWcpO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHNjYWxlM2QoMC45NSwgMC45NSwgMC45NSkgdHJhbnNsYXRlM2QoMCwgMCwgMClcbiAgICAgIHJvdGF0ZTNkKDAsIDEsIDAsIDBkZWcpO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xuICB9XG5cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgc2NhbGUzZCgxLCAxLCAxKSB0cmFuc2xhdGUzZCgwLCAwLCAwKVxuICAgICAgcm90YXRlM2QoMCwgMSwgMCwgMGRlZyk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgc2NhbGUzZCgxLCAxLCAxKSB0cmFuc2xhdGUzZCgwLCAwLCAwKSByb3RhdGUzZCgwLCAxLCAwLCAwZGVnKTtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGZsaXAge1xuICBmcm9tIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHNjYWxlM2QoMSwgMSwgMSkgdHJhbnNsYXRlM2QoMCwgMCwgMClcbiAgICAgIHJvdGF0ZTNkKDAsIDEsIDAsIC0zNjBkZWcpO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHNjYWxlM2QoMSwgMSwgMSkgdHJhbnNsYXRlM2QoMCwgMCwgMCkgcm90YXRlM2QoMCwgMSwgMCwgLTM2MGRlZyk7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgfVxuXG4gIDQwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSBzY2FsZTNkKDEsIDEsIDEpIHRyYW5zbGF0ZTNkKDAsIDAsIDE1MHB4KVxuICAgICAgcm90YXRlM2QoMCwgMSwgMCwgLTE5MGRlZyk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgc2NhbGUzZCgxLCAxLCAxKSB0cmFuc2xhdGUzZCgwLCAwLCAxNTBweClcbiAgICAgIHJvdGF0ZTNkKDAsIDEsIDAsIC0xOTBkZWcpO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG4gIH1cblxuICA1MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgc2NhbGUzZCgxLCAxLCAxKSB0cmFuc2xhdGUzZCgwLCAwLCAxNTBweClcbiAgICAgIHJvdGF0ZTNkKDAsIDEsIDAsIC0xNzBkZWcpO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHNjYWxlM2QoMSwgMSwgMSkgdHJhbnNsYXRlM2QoMCwgMCwgMTUwcHgpXG4gICAgICByb3RhdGUzZCgwLCAxLCAwLCAtMTcwZGVnKTtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcbiAgfVxuXG4gIDgwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSBzY2FsZTNkKDAuOTUsIDAuOTUsIDAuOTUpIHRyYW5zbGF0ZTNkKDAsIDAsIDApXG4gICAgICByb3RhdGUzZCgwLCAxLCAwLCAwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSBzY2FsZTNkKDAuOTUsIDAuOTUsIDAuOTUpIHRyYW5zbGF0ZTNkKDAsIDAsIDApXG4gICAgICByb3RhdGUzZCgwLCAxLCAwLCAwZGVnKTtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHNjYWxlM2QoMSwgMSwgMSkgdHJhbnNsYXRlM2QoMCwgMCwgMClcbiAgICAgIHJvdGF0ZTNkKDAsIDEsIDAsIDBkZWcpO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHNjYWxlM2QoMSwgMSwgMSkgdHJhbnNsYXRlM2QoMCwgMCwgMCkgcm90YXRlM2QoMCwgMSwgMCwgMGRlZyk7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XG4gIH1cbn1cblxuLmFuaW1hdGVkLmZsaXAge1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IHZpc2libGU7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IHZpc2libGU7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZsaXA7XG4gIGFuaW1hdGlvbi1uYW1lOiBmbGlwO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmxpcEluWCB7XG4gIGZyb20ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgOTBkZWcpO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsIDAsIDAsIDkwZGVnKTtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG5cbiAgNDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsIDAsIDAsIC0yMGRlZyk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgLTIwZGVnKTtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcbiAgfVxuXG4gIDYwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLCAwLCAwLCAxMGRlZyk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgMTBkZWcpO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICA4MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgLTVkZWcpO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsIDAsIDAsIC01ZGVnKTtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmxpcEluWCB7XG4gIGZyb20ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgOTBkZWcpO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsIDAsIDAsIDkwZGVnKTtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG5cbiAgNDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsIDAsIDAsIC0yMGRlZyk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgLTIwZGVnKTtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcbiAgfVxuXG4gIDYwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLCAwLCAwLCAxMGRlZyk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgMTBkZWcpO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICA4MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgLTVkZWcpO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsIDAsIDAsIC01ZGVnKTtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpO1xuICB9XG59XG5cbi5mbGlwSW5YIHtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmxpcEluWDtcbiAgYW5pbWF0aW9uLW5hbWU6IGZsaXBJblg7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBmbGlwSW5ZIHtcbiAgZnJvbSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCA5MGRlZyk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgOTBkZWcpO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cblxuICA0MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgLTIwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCAtMjBkZWcpO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xuICB9XG5cbiAgNjAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIDEwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCAxMGRlZyk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIDgwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCAtNWRlZyk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgLTVkZWcpO1xuICB9XG5cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBmbGlwSW5ZIHtcbiAgZnJvbSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCA5MGRlZyk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgOTBkZWcpO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cblxuICA0MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgLTIwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCAtMjBkZWcpO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xuICB9XG5cbiAgNjAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIDEwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCAxMGRlZyk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIDgwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCAtNWRlZyk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgLTVkZWcpO1xuICB9XG5cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7XG4gIH1cbn1cblxuLmZsaXBJblkge1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50O1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmbGlwSW5ZO1xuICBhbmltYXRpb24tbmFtZTogZmxpcEluWTtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGZsaXBPdXRYIHtcbiAgZnJvbSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KTtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KTtcbiAgfVxuXG4gIDMwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLCAwLCAwLCAtMjBkZWcpO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsIDAsIDAsIC0yMGRlZyk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsIDAsIDAsIDkwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLCAwLCAwLCA5MGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGZsaXBPdXRYIHtcbiAgZnJvbSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KTtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KTtcbiAgfVxuXG4gIDMwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLCAwLCAwLCAtMjBkZWcpO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsIDAsIDAsIC0yMGRlZyk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsIDAsIDAsIDkwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLCAwLCAwLCA5MGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG4uZmxpcE91dFgge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogMC43NXM7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogMC43NXM7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZsaXBPdXRYO1xuICBhbmltYXRpb24tbmFtZTogZmxpcE91dFg7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBmbGlwT3V0WSB7XG4gIGZyb20ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7XG4gIH1cblxuICAzMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgLTE1ZGVnKTtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCAtMTVkZWcpO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCA5MGRlZyk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgOTBkZWcpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBmbGlwT3V0WSB7XG4gIGZyb20ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7XG4gIH1cblxuICAzMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgLTE1ZGVnKTtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCAtMTVkZWcpO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCA5MGRlZyk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgOTBkZWcpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cblxuLmZsaXBPdXRZIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDAuNzVzO1xuICBhbmltYXRpb24tZHVyYXRpb246IDAuNzVzO1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50O1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmbGlwT3V0WTtcbiAgYW5pbWF0aW9uLW5hbWU6IGZsaXBPdXRZO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgbGlnaHRTcGVlZEluIHtcbiAgZnJvbSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApIHNrZXdYKC0zMGRlZyk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKSBza2V3WCgtMzBkZWcpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cblxuICA2MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCgyMGRlZyk7XG4gICAgdHJhbnNmb3JtOiBza2V3WCgyMGRlZyk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIDgwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKC01ZGVnKTtcbiAgICB0cmFuc2Zvcm06IHNrZXdYKC01ZGVnKTtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGxpZ2h0U3BlZWRJbiB7XG4gIGZyb20ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKSBza2V3WCgtMzBkZWcpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCkgc2tld1goLTMwZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG5cbiAgNjAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tld1goMjBkZWcpO1xuICAgIHRyYW5zZm9ybTogc2tld1goMjBkZWcpO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICA4MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCgtNWRlZyk7XG4gICAgdHJhbnNmb3JtOiBza2V3WCgtNWRlZyk7XG4gIH1cblxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIH1cbn1cblxuLmxpZ2h0U3BlZWRJbiB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGxpZ2h0U3BlZWRJbjtcbiAgYW5pbWF0aW9uLW5hbWU6IGxpZ2h0U3BlZWRJbjtcbiAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBsaWdodFNwZWVkT3V0IHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCkgc2tld1goMzBkZWcpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCkgc2tld1goMzBkZWcpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBsaWdodFNwZWVkT3V0IHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCkgc2tld1goMzBkZWcpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCkgc2tld1goMzBkZWcpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cblxuLmxpZ2h0U3BlZWRPdXQge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBsaWdodFNwZWVkT3V0O1xuICBhbmltYXRpb24tbmFtZTogbGlnaHRTcGVlZE91dDtcbiAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgcm90YXRlSW4ge1xuICBmcm9tIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC0yMDBkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTIwMGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHJvdGF0ZUluIHtcbiAgZnJvbSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtMjAwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC0yMDBkZWcpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cblxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuLnJvdGF0ZUluIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogcm90YXRlSW47XG4gIGFuaW1hdGlvbi1uYW1lOiByb3RhdGVJbjtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHJvdGF0ZUluRG93bkxlZnQge1xuICBmcm9tIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtNDVkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTQ1ZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG5cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHJvdGF0ZUluRG93bkxlZnQge1xuICBmcm9tIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtNDVkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTQ1ZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG5cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG4ucm90YXRlSW5Eb3duTGVmdCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZUluRG93bkxlZnQ7XG4gIGFuaW1hdGlvbi1uYW1lOiByb3RhdGVJbkRvd25MZWZ0O1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgcm90YXRlSW5Eb3duUmlnaHQge1xuICBmcm9tIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDQ1ZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDQ1ZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG5cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgcm90YXRlSW5Eb3duUmlnaHQge1xuICBmcm9tIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDQ1ZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDQ1ZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG5cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbi5yb3RhdGVJbkRvd25SaWdodCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZUluRG93blJpZ2h0O1xuICBhbmltYXRpb24tbmFtZTogcm90YXRlSW5Eb3duUmlnaHQ7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyByb3RhdGVJblVwTGVmdCB7XG4gIGZyb20ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDQ1ZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDQ1ZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG5cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHJvdGF0ZUluVXBMZWZ0IHtcbiAgZnJvbSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgNDVkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgNDVkZWcpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cblxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbi5yb3RhdGVJblVwTGVmdCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZUluVXBMZWZ0O1xuICBhbmltYXRpb24tbmFtZTogcm90YXRlSW5VcExlZnQ7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyByb3RhdGVJblVwUmlnaHQge1xuICBmcm9tIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC05MGRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtOTBkZWcpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cblxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuQGtleWZyYW1lcyByb3RhdGVJblVwUmlnaHQge1xuICBmcm9tIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC05MGRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtOTBkZWcpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cblxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuLnJvdGF0ZUluVXBSaWdodCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZUluVXBSaWdodDtcbiAgYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZUluVXBSaWdodDtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHJvdGF0ZU91dCB7XG4gIGZyb20ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgMjAwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDIwMGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHJvdGF0ZU91dCB7XG4gIGZyb20ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgMjAwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDIwMGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG4ucm90YXRlT3V0IHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogcm90YXRlT3V0O1xuICBhbmltYXRpb24tbmFtZTogcm90YXRlT3V0O1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgcm90YXRlT3V0RG93bkxlZnQge1xuICBmcm9tIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgNDVkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgNDVkZWcpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cblxuQGtleWZyYW1lcyByb3RhdGVPdXREb3duTGVmdCB7XG4gIGZyb20ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA0NWRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA0NWRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG4ucm90YXRlT3V0RG93bkxlZnQge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiByb3RhdGVPdXREb3duTGVmdDtcbiAgYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZU91dERvd25MZWZ0O1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgcm90YXRlT3V0RG93blJpZ2h0IHtcbiAgZnJvbSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtNDVkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTQ1ZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgcm90YXRlT3V0RG93blJpZ2h0IHtcbiAgZnJvbSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtNDVkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTQ1ZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5cbi5yb3RhdGVPdXREb3duUmlnaHQge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiByb3RhdGVPdXREb3duUmlnaHQ7XG4gIGFuaW1hdGlvbi1uYW1lOiByb3RhdGVPdXREb3duUmlnaHQ7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyByb3RhdGVPdXRVcExlZnQge1xuICBmcm9tIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTQ1ZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC00NWRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHJvdGF0ZU91dFVwTGVmdCB7XG4gIGZyb20ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtNDVkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTQ1ZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5cbi5yb3RhdGVPdXRVcExlZnQge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiByb3RhdGVPdXRVcExlZnQ7XG4gIGFuaW1hdGlvbi1uYW1lOiByb3RhdGVPdXRVcExlZnQ7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyByb3RhdGVPdXRVcFJpZ2h0IHtcbiAgZnJvbSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA5MGRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA5MGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHJvdGF0ZU91dFVwUmlnaHQge1xuICBmcm9tIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDkwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDkwZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5cbi5yb3RhdGVPdXRVcFJpZ2h0IHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogcm90YXRlT3V0VXBSaWdodDtcbiAgYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZU91dFVwUmlnaHQ7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBoaW5nZSB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0O1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0O1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XG4gIH1cblxuICAyMCUsXG4gIDYwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDgwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDgwZGVnKTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0O1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0O1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XG4gIH1cblxuICA0MCUsXG4gIDgwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDYwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDYwZGVnKTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0O1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0O1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgNzAwcHgsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgNzAwcHgsIDApO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBoaW5nZSB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0O1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0O1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XG4gIH1cblxuICAyMCUsXG4gIDYwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDgwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDgwZGVnKTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0O1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0O1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XG4gIH1cblxuICA0MCUsXG4gIDgwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDYwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDYwZGVnKTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0O1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0O1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgNzAwcHgsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgNzAwcHgsIDApO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cblxuLmhpbmdlIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDJzO1xuICBhbmltYXRpb24tZHVyYXRpb246IDJzO1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBoaW5nZTtcbiAgYW5pbWF0aW9uLW5hbWU6IGhpbmdlO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgamFja0luVGhlQm94IHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMC4xKSByb3RhdGUoMzBkZWcpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC4xKSByb3RhdGUoMzBkZWcpO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGJvdHRvbTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgYm90dG9tO1xuICB9XG5cbiAgNTAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKC0xMGRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTEwZGVnKTtcbiAgfVxuXG4gIDcwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzZGVnKTtcbiAgfVxuXG4gIHRvIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgamFja0luVGhlQm94IHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMC4xKSByb3RhdGUoMzBkZWcpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC4xKSByb3RhdGUoMzBkZWcpO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGJvdHRvbTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgYm90dG9tO1xuICB9XG5cbiAgNTAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKC0xMGRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTEwZGVnKTtcbiAgfVxuXG4gIDcwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzZGVnKTtcbiAgfVxuXG4gIHRvIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB9XG59XG5cbi5qYWNrSW5UaGVCb3gge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBqYWNrSW5UaGVCb3g7XG4gIGFuaW1hdGlvbi1uYW1lOiBqYWNrSW5UaGVCb3g7XG59XG5cbi8qIG9yaWdpbmFsbHkgYXV0aG9yZWQgYnkgTmljayBQZXR0aXQgLSBodHRwczovL2dpdGh1Yi5jb20vbmlja3BldHRpdC9nbGlkZSAqL1xuXG5ALXdlYmtpdC1rZXlmcmFtZXMgcm9sbEluIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIC0xMjBkZWcpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIC0xMjBkZWcpO1xuICB9XG5cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyByb2xsSW4ge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgLTEyMGRlZyk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgLTEyMGRlZyk7XG4gIH1cblxuICB0byB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgfVxufVxuXG4ucm9sbEluIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogcm9sbEluO1xuICBhbmltYXRpb24tbmFtZTogcm9sbEluO1xufVxuXG4vKiBvcmlnaW5hbGx5IGF1dGhvcmVkIGJ5IE5pY2sgUGV0dGl0IC0gaHR0cHM6Ly9naXRodWIuY29tL25pY2twZXR0aXQvZ2xpZGUgKi9cblxuQC13ZWJraXQta2V5ZnJhbWVzIHJvbGxPdXQge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIDEyMGRlZyk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAxMjBkZWcpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgcm9sbE91dCB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICB0byB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgMTIwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIDEyMGRlZyk7XG4gIH1cbn1cblxuLnJvbGxPdXQge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiByb2xsT3V0O1xuICBhbmltYXRpb24tbmFtZTogcm9sbE91dDtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHpvb21JbiB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC4zLCAwLjMsIDAuMyk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuMywgMC4zLCAwLjMpO1xuICB9XG5cbiAgNTAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgem9vbUluIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjMsIDAuMywgMC4zKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC4zLCAwLjMsIDAuMyk7XG4gIH1cblxuICA1MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuLnpvb21JbiB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHpvb21JbjtcbiAgYW5pbWF0aW9uLW5hbWU6IHpvb21Jbjtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHpvb21JbkRvd24ge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuMSwgMC4xLCAwLjEpIHRyYW5zbGF0ZTNkKDAsIC0xMDAwcHgsIDApO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjEsIDAuMSwgMC4xKSB0cmFuc2xhdGUzZCgwLCAtMTAwMHB4LCAwKTtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpO1xuICB9XG5cbiAgNjAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuNDc1LCAwLjQ3NSwgMC40NzUpIHRyYW5zbGF0ZTNkKDAsIDYwcHgsIDApO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjQ3NSwgMC40NzUsIDAuNDc1KSB0cmFuc2xhdGUzZCgwLCA2MHB4LCAwKTtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIsIDEpO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIsIDEpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgem9vbUluRG93biB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC4xLCAwLjEsIDAuMSkgdHJhbnNsYXRlM2QoMCwgLTEwMDBweCwgMCk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuMSwgMC4xLCAwLjEpIHRyYW5zbGF0ZTNkKDAsIC0xMDAwcHgsIDApO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XG4gIH1cblxuICA2MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC40NzUsIDAuNDc1LCAwLjQ3NSkgdHJhbnNsYXRlM2QoMCwgNjBweCwgMCk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuNDc1LCAwLjQ3NSwgMC40NzUpIHRyYW5zbGF0ZTNkKDAsIDYwcHgsIDApO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMiwgMSk7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMiwgMSk7XG4gIH1cbn1cblxuLnpvb21JbkRvd24ge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiB6b29tSW5Eb3duO1xuICBhbmltYXRpb24tbmFtZTogem9vbUluRG93bjtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHpvb21JbkxlZnQge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuMSwgMC4xLCAwLjEpIHRyYW5zbGF0ZTNkKC0xMDAwcHgsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjEsIDAuMSwgMC4xKSB0cmFuc2xhdGUzZCgtMTAwMHB4LCAwLCAwKTtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpO1xuICB9XG5cbiAgNjAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuNDc1LCAwLjQ3NSwgMC40NzUpIHRyYW5zbGF0ZTNkKDEwcHgsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjQ3NSwgMC40NzUsIDAuNDc1KSB0cmFuc2xhdGUzZCgxMHB4LCAwLCAwKTtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIsIDEpO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIsIDEpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgem9vbUluTGVmdCB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC4xLCAwLjEsIDAuMSkgdHJhbnNsYXRlM2QoLTEwMDBweCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuMSwgMC4xLCAwLjEpIHRyYW5zbGF0ZTNkKC0xMDAwcHgsIDAsIDApO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XG4gIH1cblxuICA2MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC40NzUsIDAuNDc1LCAwLjQ3NSkgdHJhbnNsYXRlM2QoMTBweCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuNDc1LCAwLjQ3NSwgMC40NzUpIHRyYW5zbGF0ZTNkKDEwcHgsIDAsIDApO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMiwgMSk7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMiwgMSk7XG4gIH1cbn1cblxuLnpvb21JbkxlZnQge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiB6b29tSW5MZWZ0O1xuICBhbmltYXRpb24tbmFtZTogem9vbUluTGVmdDtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHpvb21JblJpZ2h0IHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjEsIDAuMSwgMC4xKSB0cmFuc2xhdGUzZCgxMDAwcHgsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjEsIDAuMSwgMC4xKSB0cmFuc2xhdGUzZCgxMDAwcHgsIDAsIDApO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XG4gIH1cblxuICA2MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC40NzUsIDAuNDc1LCAwLjQ3NSkgdHJhbnNsYXRlM2QoLTEwcHgsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjQ3NSwgMC40NzUsIDAuNDc1KSB0cmFuc2xhdGUzZCgtMTBweCwgMCwgMCk7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyLCAxKTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyLCAxKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHpvb21JblJpZ2h0IHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjEsIDAuMSwgMC4xKSB0cmFuc2xhdGUzZCgxMDAwcHgsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjEsIDAuMSwgMC4xKSB0cmFuc2xhdGUzZCgxMDAwcHgsIDAsIDApO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XG4gIH1cblxuICA2MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC40NzUsIDAuNDc1LCAwLjQ3NSkgdHJhbnNsYXRlM2QoLTEwcHgsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjQ3NSwgMC40NzUsIDAuNDc1KSB0cmFuc2xhdGUzZCgtMTBweCwgMCwgMCk7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyLCAxKTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyLCAxKTtcbiAgfVxufVxuXG4uem9vbUluUmlnaHQge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiB6b29tSW5SaWdodDtcbiAgYW5pbWF0aW9uLW5hbWU6IHpvb21JblJpZ2h0O1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgem9vbUluVXAge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuMSwgMC4xLCAwLjEpIHRyYW5zbGF0ZTNkKDAsIDEwMDBweCwgMCk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuMSwgMC4xLCAwLjEpIHRyYW5zbGF0ZTNkKDAsIDEwMDBweCwgMCk7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcbiAgfVxuXG4gIDYwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjQ3NSwgMC40NzUsIDAuNDc1KSB0cmFuc2xhdGUzZCgwLCAtNjBweCwgMCk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuNDc1LCAwLjQ3NSwgMC40NzUpIHRyYW5zbGF0ZTNkKDAsIC02MHB4LCAwKTtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIsIDEpO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIsIDEpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgem9vbUluVXAge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuMSwgMC4xLCAwLjEpIHRyYW5zbGF0ZTNkKDAsIDEwMDBweCwgMCk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuMSwgMC4xLCAwLjEpIHRyYW5zbGF0ZTNkKDAsIDEwMDBweCwgMCk7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcbiAgfVxuXG4gIDYwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjQ3NSwgMC40NzUsIDAuNDc1KSB0cmFuc2xhdGUzZCgwLCAtNjBweCwgMCk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuNDc1LCAwLjQ3NSwgMC40NzUpIHRyYW5zbGF0ZTNkKDAsIC02MHB4LCAwKTtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIsIDEpO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIsIDEpO1xuICB9XG59XG5cbi56b29tSW5VcCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHpvb21JblVwO1xuICBhbmltYXRpb24tbmFtZTogem9vbUluVXA7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyB6b29tT3V0IHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIDUwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjMsIDAuMywgMC4zKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC4zLCAwLjMsIDAuMyk7XG4gIH1cblxuICB0byB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHpvb21PdXQge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgNTAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuMywgMC4zLCAwLjMpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjMsIDAuMywgMC4zKTtcbiAgfVxuXG4gIHRvIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5cbi56b29tT3V0IHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogem9vbU91dDtcbiAgYW5pbWF0aW9uLW5hbWU6IHpvb21PdXQ7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyB6b29tT3V0RG93biB7XG4gIDQwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjQ3NSwgMC40NzUsIDAuNDc1KSB0cmFuc2xhdGUzZCgwLCAtNjBweCwgMCk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuNDc1LCAwLjQ3NSwgMC40NzUpIHRyYW5zbGF0ZTNkKDAsIC02MHB4LCAwKTtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpO1xuICB9XG5cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC4xLCAwLjEsIDAuMSkgdHJhbnNsYXRlM2QoMCwgMjAwMHB4LCAwKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC4xLCAwLjEsIDAuMSkgdHJhbnNsYXRlM2QoMCwgMjAwMHB4LCAwKTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBib3R0b207XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGJvdHRvbTtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIsIDEpO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIsIDEpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgem9vbU91dERvd24ge1xuICA0MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC40NzUsIDAuNDc1LCAwLjQ3NSkgdHJhbnNsYXRlM2QoMCwgLTYwcHgsIDApO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjQ3NSwgMC40NzUsIDAuNDc1KSB0cmFuc2xhdGUzZCgwLCAtNjBweCwgMCk7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcbiAgfVxuXG4gIHRvIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuMSwgMC4xLCAwLjEpIHRyYW5zbGF0ZTNkKDAsIDIwMDBweCwgMCk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuMSwgMC4xLCAwLjEpIHRyYW5zbGF0ZTNkKDAsIDIwMDBweCwgMCk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgYm90dG9tO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBib3R0b207XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyLCAxKTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyLCAxKTtcbiAgfVxufVxuXG4uem9vbU91dERvd24ge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiB6b29tT3V0RG93bjtcbiAgYW5pbWF0aW9uLW5hbWU6IHpvb21PdXREb3duO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgem9vbU91dExlZnQge1xuICA0MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC40NzUsIDAuNDc1LCAwLjQ3NSkgdHJhbnNsYXRlM2QoNDJweCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuNDc1LCAwLjQ3NSwgMC40NzUpIHRyYW5zbGF0ZTNkKDQycHgsIDAsIDApO1xuICB9XG5cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDAuMSkgdHJhbnNsYXRlM2QoLTIwMDBweCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwLjEpIHRyYW5zbGF0ZTNkKC0yMDAwcHgsIDAsIDApO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBjZW50ZXI7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBjZW50ZXI7XG4gIH1cbn1cblxuQGtleWZyYW1lcyB6b29tT3V0TGVmdCB7XG4gIDQwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjQ3NSwgMC40NzUsIDAuNDc1KSB0cmFuc2xhdGUzZCg0MnB4LCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC40NzUsIDAuNDc1LCAwLjQ3NSkgdHJhbnNsYXRlM2QoNDJweCwgMCwgMCk7XG4gIH1cblxuICB0byB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMC4xKSB0cmFuc2xhdGUzZCgtMjAwMHB4LCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuMSkgdHJhbnNsYXRlM2QoLTIwMDBweCwgMCwgMCk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGNlbnRlcjtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGNlbnRlcjtcbiAgfVxufVxuXG4uem9vbU91dExlZnQge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiB6b29tT3V0TGVmdDtcbiAgYW5pbWF0aW9uLW5hbWU6IHpvb21PdXRMZWZ0O1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgem9vbU91dFJpZ2h0IHtcbiAgNDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuNDc1LCAwLjQ3NSwgMC40NzUpIHRyYW5zbGF0ZTNkKC00MnB4LCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC40NzUsIDAuNDc1LCAwLjQ3NSkgdHJhbnNsYXRlM2QoLTQycHgsIDAsIDApO1xuICB9XG5cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDAuMSkgdHJhbnNsYXRlM2QoMjAwMHB4LCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuMSkgdHJhbnNsYXRlM2QoMjAwMHB4LCAwLCAwKTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGNlbnRlcjtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBjZW50ZXI7XG4gIH1cbn1cblxuQGtleWZyYW1lcyB6b29tT3V0UmlnaHQge1xuICA0MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC40NzUsIDAuNDc1LCAwLjQ3NSkgdHJhbnNsYXRlM2QoLTQycHgsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjQ3NSwgMC40NzUsIDAuNDc1KSB0cmFuc2xhdGUzZCgtNDJweCwgMCwgMCk7XG4gIH1cblxuICB0byB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMC4xKSB0cmFuc2xhdGUzZCgyMDAwcHgsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC4xKSB0cmFuc2xhdGUzZCgyMDAwcHgsIDAsIDApO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgY2VudGVyO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGNlbnRlcjtcbiAgfVxufVxuXG4uem9vbU91dFJpZ2h0IHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogem9vbU91dFJpZ2h0O1xuICBhbmltYXRpb24tbmFtZTogem9vbU91dFJpZ2h0O1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgem9vbU91dFVwIHtcbiAgNDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuNDc1LCAwLjQ3NSwgMC40NzUpIHRyYW5zbGF0ZTNkKDAsIDYwcHgsIDApO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjQ3NSwgMC40NzUsIDAuNDc1KSB0cmFuc2xhdGUzZCgwLCA2MHB4LCAwKTtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpO1xuICB9XG5cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC4xLCAwLjEsIDAuMSkgdHJhbnNsYXRlM2QoMCwgLTIwMDBweCwgMCk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuMSwgMC4xLCAwLjEpIHRyYW5zbGF0ZTNkKDAsIC0yMDAwcHgsIDApO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGJvdHRvbTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgYm90dG9tO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMiwgMSk7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMiwgMSk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyB6b29tT3V0VXAge1xuICA0MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC40NzUsIDAuNDc1LCAwLjQ3NSkgdHJhbnNsYXRlM2QoMCwgNjBweCwgMCk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuNDc1LCAwLjQ3NSwgMC40NzUpIHRyYW5zbGF0ZTNkKDAsIDYwcHgsIDApO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XG4gIH1cblxuICB0byB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjEsIDAuMSwgMC4xKSB0cmFuc2xhdGUzZCgwLCAtMjAwMHB4LCAwKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC4xLCAwLjEsIDAuMSkgdHJhbnNsYXRlM2QoMCwgLTIwMDBweCwgMCk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgYm90dG9tO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBib3R0b207XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyLCAxKTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyLCAxKTtcbiAgfVxufVxuXG4uem9vbU91dFVwIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogem9vbU91dFVwO1xuICBhbmltYXRpb24tbmFtZTogem9vbU91dFVwO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgc2xpZGVJbkRvd24ge1xuICBmcm9tIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMCUsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMCUsIDApO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cblxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBzbGlkZUluRG93biB7XG4gIGZyb20ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAwJSwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAwJSwgMCk7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgfVxufVxuXG4uc2xpZGVJbkRvd24ge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBzbGlkZUluRG93bjtcbiAgYW5pbWF0aW9uLW5hbWU6IHNsaWRlSW5Eb3duO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgc2xpZGVJbkxlZnQge1xuICBmcm9tIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cblxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBzbGlkZUluTGVmdCB7XG4gIGZyb20ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgfVxufVxuXG4uc2xpZGVJbkxlZnQge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBzbGlkZUluTGVmdDtcbiAgYW5pbWF0aW9uLW5hbWU6IHNsaWRlSW5MZWZ0O1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgc2xpZGVJblJpZ2h0IHtcbiAgZnJvbSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHNsaWRlSW5SaWdodCB7XG4gIGZyb20ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cblxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIH1cbn1cblxuLnNsaWRlSW5SaWdodCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHNsaWRlSW5SaWdodDtcbiAgYW5pbWF0aW9uLW5hbWU6IHNsaWRlSW5SaWdodDtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHNsaWRlSW5VcCB7XG4gIGZyb20ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDAlLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwMCUsIDApO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cblxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBzbGlkZUluVXAge1xuICBmcm9tIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDAlLCAwKTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG5cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB9XG59XG5cbi5zbGlkZUluVXAge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBzbGlkZUluVXA7XG4gIGFuaW1hdGlvbi1uYW1lOiBzbGlkZUluVXA7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBzbGlkZU91dERvd24ge1xuICBmcm9tIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgfVxuXG4gIHRvIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwMCUsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBzbGlkZU91dERvd24ge1xuICBmcm9tIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgfVxuXG4gIHRvIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwMCUsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7XG4gIH1cbn1cblxuLnNsaWRlT3V0RG93biB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHNsaWRlT3V0RG93bjtcbiAgYW5pbWF0aW9uLW5hbWU6IHNsaWRlT3V0RG93bjtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHNsaWRlT3V0TGVmdCB7XG4gIGZyb20ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB9XG5cbiAgdG8ge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgc2xpZGVPdXRMZWZ0IHtcbiAgZnJvbSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIH1cblxuICB0byB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7XG4gIH1cbn1cblxuLnNsaWRlT3V0TGVmdCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHNsaWRlT3V0TGVmdDtcbiAgYW5pbWF0aW9uLW5hbWU6IHNsaWRlT3V0TGVmdDtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHNsaWRlT3V0UmlnaHQge1xuICBmcm9tIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgfVxuXG4gIHRvIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBzbGlkZU91dFJpZ2h0IHtcbiAgZnJvbSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIH1cblxuICB0byB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xuICB9XG59XG5cbi5zbGlkZU91dFJpZ2h0IHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogc2xpZGVPdXRSaWdodDtcbiAgYW5pbWF0aW9uLW5hbWU6IHNsaWRlT3V0UmlnaHQ7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBzbGlkZU91dFVwIHtcbiAgZnJvbSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIH1cblxuICB0byB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAwJSwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAwJSwgMCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBzbGlkZU91dFVwIHtcbiAgZnJvbSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIH1cblxuICB0byB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAwJSwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAwJSwgMCk7XG4gIH1cbn1cblxuLnNsaWRlT3V0VXAge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBzbGlkZU91dFVwO1xuICBhbmltYXRpb24tbmFtZTogc2xpZGVPdXRVcDtcbn1cblxuLmFuaW1hdGVkIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDFzO1xuICBhbmltYXRpb24tZHVyYXRpb246IDFzO1xuICAtd2Via2l0LWFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7XG4gIGFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7XG59XG5cbi5hbmltYXRlZC5pbmZpbml0ZSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7XG4gIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlO1xufVxuXG4uYW5pbWF0ZWQuZGVsYXktMXMge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogMXM7XG4gIGFuaW1hdGlvbi1kZWxheTogMXM7XG59XG5cbi5hbmltYXRlZC5kZWxheS0ycyB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAycztcbiAgYW5pbWF0aW9uLWRlbGF5OiAycztcbn1cblxuLmFuaW1hdGVkLmRlbGF5LTNzIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IDNzO1xuICBhbmltYXRpb24tZGVsYXk6IDNzO1xufVxuXG4uYW5pbWF0ZWQuZGVsYXktNHMge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogNHM7XG4gIGFuaW1hdGlvbi1kZWxheTogNHM7XG59XG5cbi5hbmltYXRlZC5kZWxheS01cyB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiA1cztcbiAgYW5pbWF0aW9uLWRlbGF5OiA1cztcbn1cblxuLmFuaW1hdGVkLmZhc3Qge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogODAwbXM7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogODAwbXM7XG59XG5cbi5hbmltYXRlZC5mYXN0ZXIge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogNTAwbXM7XG59XG5cbi5hbmltYXRlZC5zbG93IHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDJzO1xuICBhbmltYXRpb24tZHVyYXRpb246IDJzO1xufVxuXG4uYW5pbWF0ZWQuc2xvd2VyIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDNzO1xuICBhbmltYXRpb24tZHVyYXRpb246IDNzO1xufVxuXG5AbWVkaWEgKHByaW50KSwgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAuYW5pbWF0ZWQge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAxbXMgIWltcG9ydGFudDtcbiAgICBhbmltYXRpb24tZHVyYXRpb246IDFtcyAhaW1wb3J0YW50O1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMW1zICFpbXBvcnRhbnQ7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMW1zICFpbXBvcnRhbnQ7XG4gICAgLXdlYmtpdC1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAxICFpbXBvcnRhbnQ7XG4gICAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogMSAhaW1wb3J0YW50O1xuICB9XG59XG4iLCIvKiFcclxuICogT3ZlcmxheVNjcm9sbGJhcnNcclxuICogaHR0cHM6Ly9naXRodWIuY29tL0tpbmdTb3JhL092ZXJsYXlTY3JvbGxiYXJzXHJcbiAqXHJcbiAqIFZlcnNpb246IDEuMTMuMFxyXG4gKlxyXG4gKiBDb3B5cmlnaHQgS2luZ1NvcmEgfCBSZW5lIEhhYXMuXHJcbiAqIGh0dHBzOi8vZ2l0aHViLmNvbS9LaW5nU29yYVxyXG4gKlxyXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UuXHJcbiAqIERhdGU6IDAyLjA4LjIwMjBcclxuICovXHJcblxyXG4vKlxyXG5PVkVSTEFZIFNDUk9MTEJBUlMgQ09SRTpcclxuKi9cclxuXHJcbmh0bWwub3MtaHRtbCxcclxuaHRtbC5vcy1odG1sID4gLm9zLWhvc3Qge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgIGhlaWdodDogMTAwJSAhaW1wb3J0YW50O1xyXG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcclxuICAgIG1pbi13aWR0aDogMTAwJSAhaW1wb3J0YW50O1xyXG4gICAgbWluLWhlaWdodDogMTAwJSAhaW1wb3J0YW50O1xyXG4gICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDsgLyogY291bGQgYmUgcG9zaXRpb246IGZpeGVkOyBidXQgaXQgY2F1c2VzIGlzc3VlcyBvbiBpT1MgKC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaCkgKi9cclxufVxyXG5odG1sLm9zLWh0bWwgPiAub3MtaG9zdCA+IC5vcy1wYWRkaW5nIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgLyogY291bGQgYmUgcG9zaXRpb246IGZpeGVkOyBidXQgaXQgY2F1c2VzIGlzc3VlcyBvbiBpT1MgKC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaCkgKi9cclxufVxyXG5ib2R5Lm9zLWRyYWdnaW5nLFxyXG5ib2R5Lm9zLWRyYWdnaW5nICoge1xyXG4gICAgY3Vyc29yOiBkZWZhdWx0O1xyXG59XHJcbi5vcy1ob3N0LFxyXG4ub3MtaG9zdC10ZXh0YXJlYSB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBvdmVyZmxvdzogdmlzaWJsZSAhaW1wb3J0YW50O1xyXG4gICAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcclxuICAgIC13ZWJraXQtYm94LWRpcmVjdGlvbjogbm9ybWFsO1xyXG4gICAgICAgIC1tcy1mbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgLW1zLWZsZXgtd3JhcDogbm93cmFwO1xyXG4gICAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xyXG4gICAgLXdlYmtpdC1ib3gtcGFjazogc3RhcnQ7XHJcbiAgICAgICAgLW1zLWZsZXgtcGFjazogc3RhcnQ7XHJcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcclxuICAgIC1tcy1mbGV4LWxpbmUtcGFjazogc3RhcnQ7XHJcbiAgICAgICAgYWxpZ24tY29udGVudDogZmxleC1zdGFydDtcclxuICAgIC13ZWJraXQtYm94LWFsaWduOiBzdGFydDtcclxuICAgICAgICAtbXMtZmxleC1hbGlnbjogc3RhcnQ7XHJcbiAgICAgICAgICAgICAgICAtbXMtZ3JpZC1yb3ctYWxpZ246IGZsZXgtc3RhcnQ7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xyXG59XHJcbi5vcy1ob3N0LWZsZXhib3gge1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbiAhaW1wb3J0YW50O1xyXG4gICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XHJcbiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbn1cclxuLm9zLWhvc3QtZmxleGJveCA+IC5vcy1zaXplLWF1dG8tb2JzZXJ2ZXIge1xyXG4gICAgaGVpZ2h0OiBpbmhlcml0ICFpbXBvcnRhbnQ7XHJcbn1cclxuLm9zLWhvc3QtZmxleGJveCA+IC5vcy1jb250ZW50LWdsdWUge1xyXG4gICAgLXdlYmtpdC1ib3gtZmxleDogMTtcclxuICAgICAgICAtbXMtZmxleC1wb3NpdGl2ZTogMTtcclxuICAgICAgICAgICAgZmxleC1ncm93OiAxO1xyXG4gICAgLW1zLWZsZXgtbmVnYXRpdmU6IDA7XHJcbiAgICAgICAgZmxleC1zaHJpbms6IDA7XHJcbn1cclxuLm9zLWhvc3QtZmxleGJveCA+IC5vcy1zaXplLWF1dG8tb2JzZXJ2ZXIsXHJcbi5vcy1ob3N0LWZsZXhib3ggPiAub3MtY29udGVudC1nbHVlIHtcclxuICAgIG1pbi1oZWlnaHQ6IDA7XHJcbiAgICBtaW4td2lkdGg6IDA7XHJcbiAgICAtd2Via2l0LWJveC1mbGV4OiAwO1xyXG4gICAgICAgIC1tcy1mbGV4LXBvc2l0aXZlOiAwO1xyXG4gICAgICAgICAgICBmbGV4LWdyb3c6IDA7XHJcbiAgICAtbXMtZmxleC1uZWdhdGl2ZTogMTtcclxuICAgICAgICBmbGV4LXNocmluazogMTtcclxuICAgIC1tcy1mbGV4LXByZWZlcnJlZC1zaXplOiBhdXRvO1xyXG4gICAgICAgIGZsZXgtYmFzaXM6IGF1dG87XHJcbn1cclxuI29zLWR1bW15LXNjcm9sbGJhci1zaXplIHtcclxuICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICAtbXMtZmlsdGVyOiAncHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LkFscGhhKE9wYWNpdHk9MCknO1xyXG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gICAgb3ZlcmZsb3c6IHNjcm9sbDtcclxuICAgIGhlaWdodDogNTAwcHg7XHJcbiAgICB3aWR0aDogNTAwcHg7XHJcbn1cclxuI29zLWR1bW15LXNjcm9sbGJhci1zaXplID4gZGl2IHtcclxuICAgIHdpZHRoOiAyMDAlO1xyXG4gICAgaGVpZ2h0OiAyMDAlOyBcclxuICAgIG1hcmdpbjogMTBweCAwO1xyXG59XHJcbi8qIGZpeCByZXN0cmljdGVkIG1lYXN1cmluZyAqL1xyXG4jb3MtZHVtbXktc2Nyb2xsYmFyLXNpemU6YmVmb3JlLFxyXG4jb3MtZHVtbXktc2Nyb2xsYmFyLXNpemU6YWZ0ZXIsXHJcbi5vcy1jb250ZW50OmJlZm9yZSxcclxuLm9zLWNvbnRlbnQ6YWZ0ZXIge1xyXG4gICAgY29udGVudDogJyc7XHJcbiAgICBkaXNwbGF5OiB0YWJsZTtcclxuICAgIHdpZHRoOiAwLjAxcHg7XHJcbiAgICBoZWlnaHQ6IDAuMDFweDtcclxuICAgIGxpbmUtaGVpZ2h0OiAwO1xyXG4gICAgZm9udC1zaXplOiAwO1xyXG4gICAgZmxleC1ncm93OiAwO1xyXG4gICAgZmxleC1zaHJpbms6IDA7XHJcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbn1cclxuI29zLWR1bW15LXNjcm9sbGJhci1zaXplLFxyXG4ub3Mtdmlld3BvcnQge1xyXG4gICAgLW1zLW92ZXJmbG93LXN0eWxlOiBzY3JvbGxiYXIgIWltcG9ydGFudDtcclxufVxyXG4ub3Mtdmlld3BvcnQtbmF0aXZlLXNjcm9sbGJhcnMtaW52aXNpYmxlI29zLWR1bW15LXNjcm9sbGJhci1zaXplLFxyXG4ub3Mtdmlld3BvcnQtbmF0aXZlLXNjcm9sbGJhcnMtaW52aXNpYmxlLm9zLXZpZXdwb3J0IHtcclxuICAgIHNjcm9sbGJhci13aWR0aDogbm9uZSAhaW1wb3J0YW50O1xyXG59XHJcbi5vcy12aWV3cG9ydC1uYXRpdmUtc2Nyb2xsYmFycy1pbnZpc2libGUjb3MtZHVtbXktc2Nyb2xsYmFyLXNpemU6Oi13ZWJraXQtc2Nyb2xsYmFyLFxyXG4ub3Mtdmlld3BvcnQtbmF0aXZlLXNjcm9sbGJhcnMtaW52aXNpYmxlLm9zLXZpZXdwb3J0Ojotd2Via2l0LXNjcm9sbGJhcixcclxuLm9zLXZpZXdwb3J0LW5hdGl2ZS1zY3JvbGxiYXJzLWludmlzaWJsZSNvcy1kdW1teS1zY3JvbGxiYXItc2l6ZTo6LXdlYmtpdC1zY3JvbGxiYXItY29ybmVyLFxyXG4ub3Mtdmlld3BvcnQtbmF0aXZlLXNjcm9sbGJhcnMtaW52aXNpYmxlLm9zLXZpZXdwb3J0Ojotd2Via2l0LXNjcm9sbGJhci1jb3JuZXIge1xyXG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgd2lkdGg6IDBweCAhaW1wb3J0YW50O1xyXG4gICAgaGVpZ2h0OiAwcHggIWltcG9ydGFudDtcclxuICAgIHZpc2liaWxpdHk6IGhpZGRlbiAhaW1wb3J0YW50O1xyXG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcclxufVxyXG4ub3MtY29udGVudC1nbHVlIHtcclxuICAgIGJveC1zaXppbmc6IGluaGVyaXQ7XHJcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xyXG4gICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxufVxyXG4ub3MtcGFkZGluZyB7XHJcbiAgICBib3gtc2l6aW5nOiBpbmhlcml0O1xyXG4gICAgZGlyZWN0aW9uOiBpbmhlcml0O1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHRvcDogMDtcclxuICAgIGJvdHRvbTogMDtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcclxuICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xyXG5cdHotaW5kZXg6IDA7XHJcbn1cclxuLm9zLWhvc3Qtb3ZlcmZsb3cgPiAub3MtcGFkZGluZyB7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcbi5vcy12aWV3cG9ydCB7XHJcbiAgICBkaXJlY3Rpb246IGluaGVyaXQgIWltcG9ydGFudDtcclxuICAgIGJveC1zaXppbmc6IGluaGVyaXQgIWltcG9ydGFudDtcclxuICAgIHJlc2l6ZTogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgb3V0bGluZTogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIHRvcDogMDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICBib3R0b206IDA7XHJcbiAgICByaWdodDogMDtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XHJcbn1cclxuLm9zLWNvbnRlbnQtYXJyYW5nZSB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB6LWluZGV4OiAtMTtcclxuICAgIG1pbi1oZWlnaHQ6IDFweDtcclxuICAgIG1pbi13aWR0aDogMXB4O1xyXG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbn1cclxuLm9zLWNvbnRlbnQge1xyXG4gICAgZGlyZWN0aW9uOiBpbmhlcml0O1xyXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveCAhaW1wb3J0YW50O1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcclxufVxyXG4ub3MtY29udGVudCA+IC5vcy10ZXh0YXJlYSB7XHJcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94ICFpbXBvcnRhbnQ7XHJcbiAgICBkaXJlY3Rpb246IGluaGVyaXQgIWltcG9ydGFudDtcclxuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XHJcbiAgICBvdXRsaW5lOiAwcHggbm9uZSB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbiAhaW1wb3J0YW50O1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XHJcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xyXG4gICAgdG9wOiAwICFpbXBvcnRhbnQ7XHJcbiAgICBsZWZ0OiAwICFpbXBvcnRhbnQ7XHJcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDBweCAhaW1wb3J0YW50O1xyXG4gICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcclxuICAgIC13ZWJraXQtZmlsdGVyOiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIGZpbHRlcjogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICByZXNpemU6IG5vbmUgIWltcG9ydGFudDtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgbWF4LXdpZHRoOiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICBtYXgtaGVpZ2h0OiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICAtd2Via2l0LXBlcnNwZWN0aXZlOiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIHBlcnNwZWN0aXZlOiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICBvcGFjaXR5OiAxICFpbXBvcnRhbnQ7XHJcbiAgICB6LWluZGV4OiAxICFpbXBvcnRhbnQ7XHJcbiAgICBjbGlwOiBhdXRvICFpbXBvcnRhbnQ7XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmUgIWltcG9ydGFudDtcclxuICAgIHBhZGRpbmc6IDBweDtcclxufVxyXG4ub3MtaG9zdC1ydGwgPiAub3MtcGFkZGluZyA+IC5vcy12aWV3cG9ydCA+IC5vcy1jb250ZW50ID4gLm9zLXRleHRhcmVhIHtcclxuICAgIHJpZ2h0OiAwICFpbXBvcnRhbnQ7XHJcbn1cclxuLm9zLWNvbnRlbnQgPiAub3MtdGV4dGFyZWEtY292ZXIge1xyXG4gICAgei1pbmRleDogLTE7XHJcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxufVxyXG4ub3MtY29udGVudCA+IC5vcy10ZXh0YXJlYVt3cmFwPSdvZmYnXSB7XHJcbiAgICB3aGl0ZS1zcGFjZTogcHJlICFpbXBvcnRhbnQ7XHJcbiAgICBtYXJnaW46IDBweCAhaW1wb3J0YW50O1xyXG59XHJcbi5vcy10ZXh0LWluaGVyaXQge1xyXG4gICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XHJcbiAgICBmb250LXNpemU6IGluaGVyaXQ7XHJcbiAgICBmb250LXdlaWdodDogaW5oZXJpdDtcclxuICAgIGZvbnQtc3R5bGU6IGluaGVyaXQ7XHJcbiAgICBmb250LXZhcmlhbnQ6IGluaGVyaXQ7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogaW5oZXJpdDtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogaW5oZXJpdDtcclxuICAgIHRleHQtaW5kZW50OiBpbmhlcml0O1xyXG4gICAgdGV4dC1hbGlnbjogaW5oZXJpdDtcclxuICAgIHRleHQtc2hhZG93OiBpbmhlcml0O1xyXG4gICAgdGV4dC1vdmVyZmxvdzogaW5oZXJpdDtcclxuICAgIGxldHRlci1zcGFjaW5nOiBpbmhlcml0O1xyXG4gICAgd29yZC1zcGFjaW5nOiBpbmhlcml0O1xyXG4gICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XHJcbiAgICB1bmljb2RlLWJpZGk6IGluaGVyaXQ7XHJcbiAgICBkaXJlY3Rpb246IGluaGVyaXQ7XHJcbiAgICBjb2xvcjogaW5oZXJpdDtcclxuICAgIGN1cnNvcjogdGV4dDtcclxufVxyXG4ub3MtcmVzaXplLW9ic2VydmVyLFxyXG4ub3MtcmVzaXplLW9ic2VydmVyLWhvc3Qge1xyXG4gICAgYm94LXNpemluZzogaW5oZXJpdDtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgbGVmdDogMDtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG4gICAgei1pbmRleDogLTE7XHJcbn1cclxuLm9zLXJlc2l6ZS1vYnNlcnZlci1ob3N0IHtcclxuICAgIHBhZGRpbmc6IGluaGVyaXQ7XHJcbiAgICBib3JkZXI6IGluaGVyaXQ7XHJcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcclxuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbn1cclxuLm9zLXJlc2l6ZS1vYnNlcnZlci1ob3N0Lm9ic2VydmVkIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xyXG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XHJcbn1cclxuLm9zLXJlc2l6ZS1vYnNlcnZlci1ob3N0ID4gLm9zLXJlc2l6ZS1vYnNlcnZlcixcclxuLm9zLXJlc2l6ZS1vYnNlcnZlci1ob3N0Lm9ic2VydmVkID4gLm9zLXJlc2l6ZS1vYnNlcnZlciB7XHJcbiAgICBoZWlnaHQ6IDIwMCU7XHJcbiAgICB3aWR0aDogMjAwJTtcclxuICAgIHBhZGRpbmc6IGluaGVyaXQ7XHJcbiAgICBib3JkZXI6IGluaGVyaXQ7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xyXG59XHJcbi5vcy1yZXNpemUtb2JzZXJ2ZXItaG9zdC5vYnNlcnZlZCA+IC5vcy1yZXNpemUtb2JzZXJ2ZXIsXHJcbi5vcy1yZXNpemUtb2JzZXJ2ZXItaG9zdC5vYnNlcnZlZCA+IC5vcy1yZXNpemUtb2JzZXJ2ZXI6YmVmb3JlIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBmbGV4LWdyb3c6IDE7XHJcbiAgICBmbGV4LXNocmluazogMDtcclxuICAgIGZsZXgtYmFzaXM6IGF1dG87XHJcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG59XHJcbi5vcy1yZXNpemUtb2JzZXJ2ZXItaG9zdC5vYnNlcnZlZCA+IC5vcy1yZXNpemUtb2JzZXJ2ZXI6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgYm94LXNpemluZzogY29udGVudC1ib3g7XHJcbiAgICBwYWRkaW5nOiBpbmhlcml0O1xyXG4gICAgYm9yZGVyOiBpbmhlcml0O1xyXG4gICAgbWFyZ2luOiAwO1xyXG59XHJcbi5vcy1zaXplLWF1dG8tb2JzZXJ2ZXIge1xyXG4gICAgYm94LXNpemluZzogaW5oZXJpdCAhaW1wb3J0YW50O1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgd2lkdGg6IGluaGVyaXQ7XHJcbiAgICBtYXgtd2lkdGg6IDFweDtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgbWF4LWhlaWdodDogMXB4O1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIHotaW5kZXg6IC0xO1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIG1hcmdpbjogMDtcclxuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG4gICAgLXdlYmtpdC1ib3gtZmxleDogaW5oZXJpdDtcclxuICAgICAgICAtbXMtZmxleC1wb3NpdGl2ZTogaW5oZXJpdDtcclxuICAgICAgICAgICAgZmxleC1ncm93OiBpbmhlcml0O1xyXG4gICAgLW1zLWZsZXgtbmVnYXRpdmU6IDA7XHJcbiAgICAgICAgZmxleC1zaHJpbms6IDA7XHJcbiAgICAtbXMtZmxleC1wcmVmZXJyZWQtc2l6ZTogMDtcclxuICAgICAgICBmbGV4LWJhc2lzOiAwO1xyXG59XHJcbi5vcy1zaXplLWF1dG8tb2JzZXJ2ZXIgPiAub3MtcmVzaXplLW9ic2VydmVyIHtcclxuICAgIHdpZHRoOiAxMDAwJTtcclxuICAgIGhlaWdodDogMTAwMCU7XHJcbiAgICBtaW4taGVpZ2h0OiAxcHg7XHJcbiAgICBtaW4td2lkdGg6IDFweDtcclxufVxyXG4ub3MtcmVzaXplLW9ic2VydmVyLWl0ZW0ge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgcmlnaHQ6IDA7XHJcbiAgICBib3R0b206IDA7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIHotaW5kZXg6IC0xO1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIGRpcmVjdGlvbjogbHRyICFpbXBvcnRhbnQ7XHJcbiAgICAtd2Via2l0LWJveC1mbGV4OiAwICFpbXBvcnRhbnQ7XHJcbiAgICAtbXMtZmxleDogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgZmxleDogbm9uZSAhaW1wb3J0YW50O1xyXG59XHJcbi5vcy1yZXNpemUtb2JzZXJ2ZXItaXRlbS1maW5hbCB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICB0cmFuc2l0aW9uOiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICAtd2Via2l0LWJveC1mbGV4OiAwICFpbXBvcnRhbnQ7XHJcbiAgICAtbXMtZmxleDogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgZmxleDogbm9uZSAhaW1wb3J0YW50O1xyXG59XHJcbi5vcy1yZXNpemUtb2JzZXJ2ZXIge1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDAuMDAxcztcclxuICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMC4wMDFzO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogb3MtcmVzaXplLW9ic2VydmVyLWR1bW15LWFuaW1hdGlvbjtcclxuICAgIGFuaW1hdGlvbi1uYW1lOiBvcy1yZXNpemUtb2JzZXJ2ZXItZHVtbXktYW5pbWF0aW9uO1xyXG59XHJcbm9iamVjdC5vcy1yZXNpemUtb2JzZXJ2ZXIge1xyXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveCAhaW1wb3J0YW50O1xyXG59XHJcbkAtd2Via2l0LWtleWZyYW1lcyBvcy1yZXNpemUtb2JzZXJ2ZXItZHVtbXktYW5pbWF0aW9uIHtcclxuICAgIGZyb20ge1xyXG4gICAgICAgIHotaW5kZXg6IDA7XHJcbiAgICB9XHJcbiAgICB0byB7XHJcbiAgICAgICAgei1pbmRleDogLTE7XHJcbiAgICB9XHJcbn1cclxuQGtleWZyYW1lcyBvcy1yZXNpemUtb2JzZXJ2ZXItZHVtbXktYW5pbWF0aW9uIHtcclxuICAgIGZyb20ge1xyXG4gICAgICAgIHotaW5kZXg6IDA7XHJcbiAgICB9XHJcbiAgICB0byB7XHJcbiAgICAgICAgei1pbmRleDogLTE7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qXHJcbkNVU1RPTSBTQ1JPTExCQVJTIEFORCBDT1JORVIgQ09SRTpcclxuKi9cclxuXHJcbi5vcy1ob3N0LXRyYW5zaXRpb24gPiAub3Mtc2Nyb2xsYmFyLFxyXG4ub3MtaG9zdC10cmFuc2l0aW9uID4gLm9zLXNjcm9sbGJhci1jb3JuZXIge1xyXG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MsIHZpc2liaWxpdHkgMC4zcywgdG9wIDAuM3MsIHJpZ2h0IDAuM3MsIGJvdHRvbSAwLjNzLCBsZWZ0IDAuM3M7XHJcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MsIHZpc2liaWxpdHkgMC4zcywgdG9wIDAuM3MsIHJpZ2h0IDAuM3MsIGJvdHRvbSAwLjNzLCBsZWZ0IDAuM3M7XHJcbn1cclxuaHRtbC5vcy1odG1sID4gLm9zLWhvc3QgPiAub3Mtc2Nyb2xsYmFyIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgLyogY291bGQgYmUgcG9zaXRpb246IGZpeGVkOyBidXQgaXQgY2F1c2VzIGlzc3VlcyBvbiBpT1MgKC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaCkgKi9cclxuICAgIHotaW5kZXg6IDk5OTk5OTsgLyogaGlnaGVzdCB6LWluZGV4IG9mIHRoZSBwYWdlICovXHJcbn1cclxuLm9zLXNjcm9sbGJhcixcclxuLm9zLXNjcm9sbGJhci1jb3JuZXIge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgb3BhY2l0eTogMTtcclxuICAgIC1tcy1maWx0ZXI6ICdwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuQWxwaGEoT3BhY2l0eT0xMDApJztcclxuICAgIHotaW5kZXg6IDE7XHJcbn1cclxuLm9zLXNjcm9sbGJhci1jb3JuZXIge1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgcmlnaHQ6IDA7XHJcbn1cclxuLm9zLXNjcm9sbGJhciB7XHJcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxufVxyXG4ub3Mtc2Nyb2xsYmFyLXRyYWNrIHtcclxuICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XHJcbiAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcclxufVxyXG4ub3Mtc2Nyb2xsYmFyLWhhbmRsZSB7XHJcbiAgICBwb2ludGVyLWV2ZW50czogYXV0bztcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG59XHJcbi5vcy1zY3JvbGxiYXItaGFuZGxlLW9mZixcclxuLm9zLXNjcm9sbGJhci10cmFjay1vZmYge1xyXG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbn1cclxuLm9zLXNjcm9sbGJhci5vcy1zY3JvbGxiYXItdW51c2FibGUsXHJcbi5vcy1zY3JvbGxiYXIub3Mtc2Nyb2xsYmFyLXVudXNhYmxlICoge1xyXG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmUgIWltcG9ydGFudDtcclxufVxyXG4ub3Mtc2Nyb2xsYmFyLm9zLXNjcm9sbGJhci11bnVzYWJsZSAub3Mtc2Nyb2xsYmFyLWhhbmRsZSB7XHJcbiAgICBvcGFjaXR5OiAwICFpbXBvcnRhbnQ7XHJcbn1cclxuLm9zLXNjcm9sbGJhci1ob3Jpem9udGFsIHtcclxuICAgIGJvdHRvbTogMDtcclxuICAgIGxlZnQ6IDA7XHJcbn1cclxuLm9zLXNjcm9sbGJhci12ZXJ0aWNhbCB7XHJcbiAgICB0b3A6IDA7XHJcbiAgICByaWdodDogMDtcclxufVxyXG4ub3MtaG9zdC1ydGwgPiAub3Mtc2Nyb2xsYmFyLWhvcml6b250YWwge1xyXG4gICAgcmlnaHQ6IDA7XHJcbn1cclxuLm9zLWhvc3QtcnRsID4gLm9zLXNjcm9sbGJhci12ZXJ0aWNhbCB7XHJcbiAgICByaWdodDogYXV0bztcclxuICAgIGxlZnQ6IDA7XHJcbn1cclxuLm9zLWhvc3QtcnRsID4gLm9zLXNjcm9sbGJhci1jb3JuZXIge1xyXG4gICAgcmlnaHQ6IGF1dG87XHJcbiAgICBsZWZ0OiAwO1xyXG59XHJcbi5vcy1zY3JvbGxiYXItYXV0by1oaWRkZW4sXHJcbi5vcy1wYWRkaW5nICsgLm9zLXNjcm9sbGJhci1jb3JuZXIsXHJcbi5vcy1ob3N0LXJlc2l6ZS1kaXNhYmxlZC5vcy1ob3N0LXNjcm9sbGJhci1ob3Jpem9udGFsLWhpZGRlbiA+IC5vcy1zY3JvbGxiYXItY29ybmVyLFxyXG4ub3MtaG9zdC1zY3JvbGxiYXItaG9yaXpvbnRhbC1oaWRkZW4gPiAub3Mtc2Nyb2xsYmFyLWhvcml6b250YWwsXHJcbi5vcy1ob3N0LXJlc2l6ZS1kaXNhYmxlZC5vcy1ob3N0LXNjcm9sbGJhci12ZXJ0aWNhbC1oaWRkZW4gPiAub3Mtc2Nyb2xsYmFyLWNvcm5lcixcclxuLm9zLWhvc3Qtc2Nyb2xsYmFyLXZlcnRpY2FsLWhpZGRlbiA+IC5vcy1zY3JvbGxiYXItdmVydGljYWwsXHJcbi5vcy1zY3JvbGxiYXItaG9yaXpvbnRhbC5vcy1zY3JvbGxiYXItYXV0by1oaWRkZW4gKyAub3Mtc2Nyb2xsYmFyLXZlcnRpY2FsICsgLm9zLXNjcm9sbGJhci1jb3JuZXIsXHJcbi5vcy1zY3JvbGxiYXItaG9yaXpvbnRhbCArIC5vcy1zY3JvbGxiYXItdmVydGljYWwub3Mtc2Nyb2xsYmFyLWF1dG8taGlkZGVuICsgLm9zLXNjcm9sbGJhci1jb3JuZXIsXHJcbi5vcy1zY3JvbGxiYXItaG9yaXpvbnRhbC5vcy1zY3JvbGxiYXItYXV0by1oaWRkZW4gKyAub3Mtc2Nyb2xsYmFyLXZlcnRpY2FsLm9zLXNjcm9sbGJhci1hdXRvLWhpZGRlbiArIC5vcy1zY3JvbGxiYXItY29ybmVyIHtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxufVxyXG4ub3Mtc2Nyb2xsYmFyLWNvcm5lci1yZXNpemUtYm90aCB7XHJcbiAgICBjdXJzb3I6IG53c2UtcmVzaXplO1xyXG59XHJcbi5vcy1ob3N0LXJ0bCA+IC5vcy1zY3JvbGxiYXItY29ybmVyLXJlc2l6ZS1ib3RoIHtcclxuICAgIGN1cnNvcjogbmVzdy1yZXNpemU7XHJcbn1cclxuLm9zLXNjcm9sbGJhci1jb3JuZXItcmVzaXplLWhvcml6b250YWwge1xyXG4gICAgY3Vyc29yOiBldy1yZXNpemU7XHJcbn1cclxuLm9zLXNjcm9sbGJhci1jb3JuZXItcmVzaXplLXZlcnRpY2FsIHtcclxuICAgIGN1cnNvcjogbnMtcmVzaXplO1xyXG59XHJcbi5vcy1kcmFnZ2luZyAub3Mtc2Nyb2xsYmFyLWNvcm5lci5vcy1zY3JvbGxiYXItY29ybmVyLXJlc2l6ZSB7XHJcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XHJcbn1cclxuLm9zLWhvc3QtcmVzaXplLWRpc2FibGVkLm9zLWhvc3Qtc2Nyb2xsYmFyLWhvcml6b250YWwtaGlkZGVuID4gLm9zLXNjcm9sbGJhci12ZXJ0aWNhbCB7XHJcbiAgICB0b3A6IDA7XHJcbiAgICBib3R0b206IDA7XHJcbn1cclxuLm9zLWhvc3QtcmVzaXplLWRpc2FibGVkLm9zLWhvc3Qtc2Nyb2xsYmFyLXZlcnRpY2FsLWhpZGRlbiA+IC5vcy1zY3JvbGxiYXItaG9yaXpvbnRhbCxcclxuLm9zLWhvc3QtcnRsLm9zLWhvc3QtcmVzaXplLWRpc2FibGVkLm9zLWhvc3Qtc2Nyb2xsYmFyLXZlcnRpY2FsLWhpZGRlbiA+IC5vcy1zY3JvbGxiYXItaG9yaXpvbnRhbCB7XHJcbiAgICByaWdodDogMDtcclxuICAgIGxlZnQ6IDA7XHJcbn1cclxuLm9zLXNjcm9sbGJhcjpob3ZlcixcclxuLm9zLXNjcm9sbGJhci1jb3JuZXIub3Mtc2Nyb2xsYmFyLWNvcm5lci1yZXNpemUge1xyXG4gICAgb3BhY2l0eTogMSAhaW1wb3J0YW50O1xyXG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50O1xyXG59XHJcbi5vcy1zY3JvbGxiYXItY29ybmVyLm9zLXNjcm9sbGJhci1jb3JuZXItcmVzaXplIHtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBEOTRiV3dnZG1WeWMybHZiajBpTVM0d0lpQmxibU52WkdsdVp6MGlWVlJHTFRnaUlITjBZVzVrWVd4dmJtVTlJbTV2SWo4K1BITjJaeUFnSUhodGJHNXpPbVJqUFNKb2RIUndPaTh2Y0hWeWJDNXZjbWN2WkdNdlpXeGxiV1Z1ZEhNdk1TNHhMeUlnSUNCNGJXeHVjenBqWXowaWFIUjBjRG92TDJOeVpXRjBhWFpsWTI5dGJXOXVjeTV2Y21jdmJuTWpJaUFnSUhodGJHNXpPbkprWmowaWFIUjBjRG92TDNkM2R5NTNNeTV2Y21jdk1UazVPUzh3TWk4eU1pMXlaR1l0YzNsdWRHRjRMVzV6SXlJZ0lDQjRiV3h1Y3pwemRtYzlJbWgwZEhBNkx5OTNkM2N1ZHpNdWIzSm5Mekl3TURBdmMzWm5JaUFnSUhodGJHNXpQU0pvZEhSd09pOHZkM2QzTG5jekxtOXlaeTh5TURBd0wzTjJaeUlnSUNCM2FXUjBhRDBpTVRBaUlDQWdhR1ZwWjJoMFBTSXhNQ0lnSUNCMlpYSnphVzl1UFNJeExqRWlQaUFnUEdjZ0lDQWdJSFJ5WVc1elptOXliVDBpZEhKaGJuTnNZWFJsS0RBc0xURXdOREl1TXpZeU1pa2lJQ0FnSUNCemRIbHNaVDBpWkdsemNHeGhlVHBwYm14cGJtVWlQaUFnSUNBOGNHRjBhQ0FnSUNBZ0lDQnpkSGxzWlQwaVptbHNiRG9qTURBd01EQXdPMlpwYkd3dGIzQmhZMmwwZVRvd0xqUTVOREV4TnpZMU8yWnBiR3d0Y25Wc1pUcGxkbVZ1YjJSa08zTjBjbTlyWlRwdWIyNWxJaUFnSUNBZ0lDQmtQU0p0SURjdU5ESTBNakU0Tnl3eE1EUXlMak0yTWpJZ1l5QXRNQzQzTWpNMU56a3lMREFnTFRFdU16RXdNVFUyTWl3d0xqVTROallnTFRFdU16RXdNVFUyTWl3eExqTXhNRElnTUN3d0xqSTVPU0F3TGpFd05ETTBNVGtzTUM0MU56RWdNQzR5TnpJNU5Ea3lMREF1TnpreE5TQXdMakl3T1RFd01qUXNNQzR4TkRFeklEQXVORFkxTmpJd05pd3dMakl4T0RRZ01DNDNNelk1TmpJNUxEQXVNakU0TkNBd0xqY3lNelUzT1RNc01DQXhMak14TURFMU5qTXNMVEF1TlRnMk5pQXhMak14TURFMU5qTXNMVEV1TXpFd01pQXdMQzB3TGpJM01UTWdMVEF1TURjM01Ea3pMQzB3TGpVeU56Z2dMVEF1TWpFNE16VTVOQ3d0TUM0M016Y2dMVEF1TWpJd05EazBNU3d0TUM0eE5qZzJJQzB3TGpRNU1qVTBORE1zTFRBdU1qY3lPU0F0TUM0M09URTFOVEk0TEMwd0xqSTNNamtnZWlCdElEQXNNeTR3T0RReklHTWdMVEF1TnpJek5UYzVNaXd3SUMweExqTXhNREUxTmpJc01DNDFPRFkySUMweExqTXhNREUxTmpJc01TNHpNVEF5SURBc01DNHlPVGtnTUM0eE1EUXpOREU1TERBdU5UY3hJREF1TWpjeU9UUTVNaXd3TGpjNU1UVWdNQzR5TURreE1ESTBMREF1TVRReE15QXdMalEyTlRZeU1EWXNNQzR5TVRnMElEQXVOek0yT1RZeU9Td3dMakl4T0RRZ01DNDNNak0xTnprekxEQWdNUzR6TVRBeE5UWXpMQzB3TGpVNE5qWWdNUzR6TVRBeE5UWXpMQzB4TGpNeE1ESWdNQ3d0TUM0eU56RXpJQzB3TGpBM056QTVNeXd0TUM0MU1qYzRJQzB3TGpJeE9ETTFPVFFzTFRBdU56TTJPU0F0TUM0eU1qQTBPVFF4TEMwd0xqRTJPRFlnTFRBdU5Ea3lOVFEwTXl3dE1DNHlOek1nTFRBdU56a3hOVFV5T0N3dE1DNHlOek1nZWlCdElDMHpMakE0TkRNeU5qRXNNQ0JqSUMwd0xqY3lNelUzT1RNc01DQXRNUzR6TVRBeE5UWXpMREF1TlRnMk5pQXRNUzR6TVRBeE5UWXpMREV1TXpFd01pQXdMREF1TWprNUlEQXVNVEEwTXpReE9Td3dMalUzTVNBd0xqSTNNamswT1RJc01DNDNPVEUxSURBdU1qQTVNVEF5TkN3d0xqRTBNVE1nTUM0ME5qVTJNakEzTERBdU1qRTROQ0F3TGpjek5qazJNamtzTUM0eU1UZzBJREF1TnpJek5UYzVNeXd3SURFdU16RXdNVFUyTXl3dE1DNDFPRFkySURFdU16RXdNVFUyTXl3dE1TNHpNVEF5SURBc0xUQXVNamN4TXlBdE1DNHdOemN3T1RNc0xUQXVOVEkzT0NBdE1DNHlNVGd6TlRrMExDMHdMamN6TmprZ0xUQXVNakl3TkRrMExDMHdMakUyT0RZZ0xUQXVORGt5TlRRME1pd3RNQzR5TnpNZ0xUQXVOemt4TlRVeU55d3RNQzR5TnpNZ2VpQnRJQzB6TGpBeU9UY3pOalFzTXk0d01qazRJRU1nTUM0MU9EWTFOelk1TXl3eE1EUTRMalEzTmpNZ01Dd3hNRFE1TGpBMk1qZ2dNQ3d4TURRNUxqYzROalFnWXlBd0xEQXVNams1SURBdU1UQTBNelF4T1N3d0xqVTNNVEVnTUM0eU56STVORGt5TWl3d0xqYzVNVFlnTUM0eU1Ea3hNREl5T1N3d0xqRTBNVElnTUM0ME5qVTJNakEyTlN3d0xqSXhPRE1nTUM0M016WTVOakk0T0N3d0xqSXhPRE1nTUM0M01qTTFOemt6TERBZ01TNHpNVEF4TlRZekxDMHdMalU0TmpVZ01TNHpNVEF4TlRZekxDMHhMak14TURFZ01Dd3RNQzR5TnpFMElDMHdMakEzTnpBNU15d3RNQzQxTWpjNUlDMHdMakl4T0RNMU9UUXNMVEF1TnpNM0lDMHdMakl5TURRNU5ERXNMVEF1TVRZNE5pQXRNQzQwT1RJMU5EUXpMQzB3TGpJM01qa2dMVEF1TnpreE5UVXlPQ3d0TUM0eU56STVJSG9nYlNBekxqQXlPVGN6TmpRc01DQmpJQzB3TGpjeU16VTNPVE1zTUNBdE1TNHpNVEF4TlRZekxEQXVOVGcyTlNBdE1TNHpNVEF4TlRZekxERXVNekV3TVNBd0xEQXVNams1SURBdU1UQTBNelF4T1N3d0xqVTNNVEVnTUM0eU56STVORGt5TERBdU56a3hOaUF3TGpJd09URXdNalFzTUM0eE5ERXlJREF1TkRZMU5qSXdOeXd3TGpJeE9ETWdNQzQzTXpZNU5qSTVMREF1TWpFNE15QXdMamN5TXpVM09UTXNNQ0F4TGpNeE1ERTFOak1zTFRBdU5UZzJOU0F4TGpNeE1ERTFOak1zTFRFdU16RXdNU0F3TEMwd0xqSTNNVFFnTFRBdU1EYzNNRGt6TEMwd0xqVXlOemtnTFRBdU1qRTRNelU1TkN3dE1DNDNNemNnTFRBdU1qSXdORGswTEMwd0xqRTJPRFlnTFRBdU5Ea3lOVFEwTWl3dE1DNHlOekk1SUMwd0xqYzVNVFUxTWpjc0xUQXVNamN5T1NCNklHMGdNeTR3T0RRek1qWXhMREFnWXlBdE1DNDNNak0xTnpreUxEQWdMVEV1TXpFd01UVTJNaXd3TGpVNE5qVWdMVEV1TXpFd01UVTJNaXd4TGpNeE1ERWdNQ3d3TGpJNU9TQXdMakV3TkRNME1Ua3NNQzQxTnpFeElEQXVNamN5T1RRNU1pd3dMamM1TVRZZ01DNHlNRGt4TURJMExEQXVNVFF4TWlBd0xqUTJOVFl5TURZc01DNHlNVGd6SURBdU56TTJPVFl5T1N3d0xqSXhPRE1nTUM0M01qTTFOemt6TERBZ01TNHpNVEF4TlRZekxDMHdMalU0TmpVZ01TNHpNVEF4TlRZekxDMHhMak14TURFZ01Dd3RNQzR5TnpFMElDMHdMakEzTnpBNU15d3RNQzQxTWpjNUlDMHdMakl4T0RNMU9UUXNMVEF1TnpNM0lDMHdMakl5TURRNU5ERXNMVEF1TVRZNE5pQXRNQzQwT1RJMU5EUXpMQzB3TGpJM01qa2dMVEF1TnpreE5UVXlPQ3d0TUM0eU56STVJSG9pTHo0Z0lEd3ZaejRnSUR4bklDQWdJQ0J6ZEhsc1pUMGlaR2x6Y0d4aGVUcHBibXhwYm1VaVBpQWdJQ0E4Y0dGMGFDQWdJQ0FnSUNCemRIbHNaVDBpWm1sc2JEb2pabVptWm1abU8yWnBiR3d0YjNCaFkybDBlVG94TzJacGJHd3RjblZzWlRwbGRtVnViMlJrTzNOMGNtOXJaVHB1YjI1bElpQWdJQ0FnSUNCa1BTSnRJRGd1TWpFMU56Y3hOU3d3TGpJM01qazBPVEl5SUdNZ01DNHhOREV5TmpZM0xEQXVNakE1TVRBeU1qa2dNQzR5TVRnek5UazBMREF1TkRZMU5qSXdOalVnTUM0eU1UZ3pOVGswTERBdU56TTJPVFl5T0RnZ01Dd3dMamN5TXpVM09UTWdMVEF1TlRnMk5UYzNMREV1TXpFd01UVTJNeUF0TVM0ek1UQXhOVFl6TERFdU16RXdNVFUyTXlBdE1DNHlOekV6TkRJekxEQWdMVEF1TlRJM09EWXdOU3d0TUM0d056Y3dPVE1nTFRBdU56TTJPVFl5T1N3dE1DNHlNVGd6TlRrMElEQXVNak01TkRFd05Dd3dMak14TXpBNE5Ua2dNQzQyTVRJMk16WXlMREF1TlRFNE5qQXpOU0F4TGpBek56SXdOeXd3TGpVeE9EWXdNelVnTUM0M01qTTFOemt6TERBZ01TNHpNVEF4TlRZekxDMHdMalU0TmpVM055QXhMak14TURFMU5qTXNMVEV1TXpFd01UVTJNeUF3TEMwd0xqUXlORFUzTURjMklDMHdMakl3TlRVeE56WXNMVEF1TnprM056azJOVGtnTFRBdU5URTROakF6TlN3dE1TNHdNemN5TURZNU9DQjZJRzBnTUN3ekxqQTRORE15TmpFNElHTWdNQzR4TkRFeU5qWTNMREF1TWpBNU1UQXlNeUF3TGpJeE9ETTFPVFFzTUM0ME5qVTJNakEySURBdU1qRTRNelU1TkN3d0xqY3pOamsyTWprZ01Dd3dMamN5TXpVM09UTWdMVEF1TlRnMk5UYzNMREV1TXpFd01UVTJNaUF0TVM0ek1UQXhOVFl6TERFdU16RXdNVFUyTWlBdE1DNHlOekV6TkRJekxEQWdMVEF1TlRJM09EWXdOU3d0TUM0d056Y3dPVE1nTFRBdU56TTJPVFl5T1N3dE1DNHlNVGd6TlRreklEQXVNak01TkRFd05Dd3dMak14TXpBNE5Ua2dNQzQyTVRJMk16WXlMREF1TlRFNE5qQXpOU0F4TGpBek56SXdOeXd3TGpVeE9EWXdNelVnTUM0M01qTTFOemt6TERBZ01TNHpNVEF4TlRZekxDMHdMalU0TmpVM055QXhMak14TURFMU5qTXNMVEV1TXpFd01UVTJNeUF3TEMwd0xqUXlORFUzTURnZ0xUQXVNakExTlRFM05pd3RNQzQzT1RjM09UWTNJQzB3TGpVeE9EWXdNelVzTFRFdU1ETTNNakEzSUhvZ2JTQXRNeTR3T0RRek1qWXlMREFnWXlBd0xqRTBNVEkyTmpjc01DNHlNRGt4TURJeklEQXVNakU0TXpVNU5Dd3dMalEyTlRZeU1EWWdNQzR5TVRnek5UazBMREF1TnpNMk9UWXlPU0F3TERBdU56SXpOVGM1TXlBdE1DNDFPRFkxTnpjc01TNHpNVEF4TlRZeUlDMHhMak14TURFMU5qTXNNUzR6TVRBeE5UWXlJQzB3TGpJM01UTTBNaklzTUNBdE1DNDFNamM0TmpBMUxDMHdMakEzTnpBNU15QXRNQzQzTXpZNU5qSTVMQzB3TGpJeE9ETTFPVE1nTUM0eU16azBNVEEwTERBdU16RXpNRGcxT1NBd0xqWXhNall6TmpNc01DNDFNVGcyTURNMUlERXVNRE0zTWpBM01Td3dMalV4T0RZd016VWdNQzQzTWpNMU56a3pMREFnTVM0ek1UQXhOVFl5TEMwd0xqVTROalUzTnlBeExqTXhNREUxTmpJc0xURXVNekV3TVRVMk15QXdMQzB3TGpReU5EVTNNRGdnTFRBdU1qQTFOVEUzTlN3dE1DNDNPVGMzT1RZM0lDMHdMalV4T0RZd016VXNMVEV1TURNM01qQTNJSG9nVFNBeUxqRXdNVGN3T1N3MkxqTTROekF4TVRjZ1l5QXdMakUwTVRJMk5qY3NNQzR5TURreE1ESTBJREF1TWpFNE16VTVOQ3d3TGpRMk5UWXlNRFlnTUM0eU1UZ3pOVGswTERBdU56TTJPVFl5T1NBd0xEQXVOekl6TlRjNU15QXRNQzQxT0RZMU56Y3NNUzR6TVRBeE5UWXpJQzB4TGpNeE1ERTFOak1zTVM0ek1UQXhOVFl6SUMwd0xqSTNNVE0wTWpJekxEQWdMVEF1TlRJM09EWXdOVGtzTFRBdU1EYzNNRGt6SUMwd0xqY3pOamsyTWpnNExDMHdMakl4T0RNMU9UUWdNQzR5TXprME1UQXpPU3d3TGpNeE16QTROVGtnTUM0Mk1USTJNell5TWl3d0xqVXhPRFl3TXpVZ01TNHdNemN5TURZNU9Dd3dMalV4T0RZd016VWdNQzQzTWpNMU56a3pMREFnTVM0ek1UQXhOVFl6TEMwd0xqVTROalUzTnlBeExqTXhNREUxTmpNc0xURXVNekV3TVRVMk15QXdMQzB3TGpReU5EVTNNRGdnTFRBdU1qQTFOVEUzTml3dE1DNDNPVGMzT1RZMklDMHdMalV4T0RZd016VXNMVEV1TURNM01qQTNJSG9nYlNBekxqQXlPVGN6TmpNc01DQmpJREF1TVRReE1qWTJOeXd3TGpJd09URXdNalFnTUM0eU1UZ3pOVGswTERBdU5EWTFOakl3TmlBd0xqSXhPRE0xT1RRc01DNDNNelk1TmpJNUlEQXNNQzQzTWpNMU56a3pJQzB3TGpVNE5qVTNOeXd4TGpNeE1ERTFOak1nTFRFdU16RXdNVFUyTXl3eExqTXhNREUxTmpNZ0xUQXVNamN4TXpReU1pd3dJQzB3TGpVeU56ZzJNRFVzTFRBdU1EYzNNRGt6SUMwd0xqY3pOamsyTWprc0xUQXVNakU0TXpVNU5DQXdMakl6T1RReE1EUXNNQzR6TVRNd09EVTVJREF1TmpFeU5qTTJNeXd3TGpVeE9EWXdNelVnTVM0d016Y3lNRGN4TERBdU5URTROakF6TlNBd0xqY3lNelUzT1RNc01DQXhMak14TURFMU5qSXNMVEF1TlRnMk5UYzNJREV1TXpFd01UVTJNaXd0TVM0ek1UQXhOVFl6SURBc0xUQXVOREkwTlRjd09DQXRNQzR5TURVMU1UYzFMQzB3TGpjNU56YzVOallnTFRBdU5URTROakF6TlN3dE1TNHdNemN5TURjZ2VpQnRJRE11TURnME16STJNaXd3SUdNZ01DNHhOREV5TmpZM0xEQXVNakE1TVRBeU5DQXdMakl4T0RNMU9UUXNNQzQwTmpVMk1qQTJJREF1TWpFNE16VTVOQ3d3TGpjek5qazJNamtnTUN3d0xqY3lNelUzT1RNZ0xUQXVOVGcyTlRjM0xERXVNekV3TVRVMk15QXRNUzR6TVRBeE5UWXpMREV1TXpFd01UVTJNeUF0TUM0eU56RXpOREl6TERBZ0xUQXVOVEkzT0RZd05Td3RNQzR3Tnpjd09UTWdMVEF1TnpNMk9UWXlPU3d0TUM0eU1UZ3pOVGswSURBdU1qTTVOREV3TkN3d0xqTXhNekE0TlRrZ01DNDJNVEkyTXpZeUxEQXVOVEU0TmpBek5TQXhMakF6TnpJd055d3dMalV4T0RZd016VWdNQzQzTWpNMU56a3pMREFnTVM0ek1UQXhOVFl6TEMwd0xqVTROalUzTnlBeExqTXhNREUxTmpNc0xURXVNekV3TVRVMk15QXdMQzB3TGpReU5EVTNNRGdnTFRBdU1qQTFOVEUzTml3dE1DNDNPVGMzT1RZMklDMHdMalV4T0RZd016VXNMVEV1TURNM01qQTNJSG9pSUM4K0lDQThMMmMrUEM5emRtYyspO1xyXG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDEwMCUgMTAwJTtcclxuICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvICFpbXBvcnRhbnQ7XHJcbn1cclxuLm9zLWhvc3QtcnRsID4gLm9zLXNjcm9sbGJhci1jb3JuZXIub3Mtc2Nyb2xsYmFyLWNvcm5lci1yZXNpemUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKC0xLCAxKTtcclxuICAgIHRyYW5zZm9ybTogc2NhbGUoLTEsIDEpO1xyXG59XHJcbi5vcy1ob3N0LW92ZXJmbG93IHtcclxuICAgIG92ZXJmbG93OiBoaWRkZW4gIWltcG9ydGFudDtcclxufVxyXG4ub3MtaG9zdC1vdmVyZmxvdy14IHtcclxufSBcclxuLm9zLWhvc3Qtb3ZlcmZsb3cteSB7XHJcbn0gXHJcblxyXG4vKlxyXG5USEVNRVM6XHJcbiovXHJcblxyXG4vKiBOT05FIFRIRU1FOiAqL1xyXG4ub3MtdGhlbWUtbm9uZSA+IC5vcy1zY3JvbGxiYXItaG9yaXpvbnRhbCxcclxuLm9zLXRoZW1lLW5vbmUgPiAub3Mtc2Nyb2xsYmFyLXZlcnRpY2FsLFxyXG4ub3MtdGhlbWUtbm9uZSA+IC5vcy1zY3JvbGxiYXItY29ybmVyIHtcclxuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxufVxyXG4ub3MtdGhlbWUtbm9uZSA+IC5vcy1zY3JvbGxiYXItY29ybmVyLXJlc2l6ZSB7XHJcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xyXG4gICAgbWluLXdpZHRoOiAxMHB4O1xyXG4gICAgbWluLWhlaWdodDogMTBweDtcclxufVxyXG4vKiBEQVJLICYgTElHSFQgVEhFTUU6ICovXHJcbi5vcy10aGVtZS1kYXJrID4gLm9zLXNjcm9sbGJhci1ob3Jpem9udGFsLFxyXG4ub3MtdGhlbWUtbGlnaHQgPiAub3Mtc2Nyb2xsYmFyLWhvcml6b250YWwge1xyXG4gICAgcmlnaHQ6IDEwcHg7XHJcbiAgICBoZWlnaHQ6IDEwcHg7XHJcbn1cclxuLm9zLXRoZW1lLWRhcmsgPiAub3Mtc2Nyb2xsYmFyLXZlcnRpY2FsLFxyXG4ub3MtdGhlbWUtbGlnaHQgPiAub3Mtc2Nyb2xsYmFyLXZlcnRpY2FsIHtcclxuICAgIGJvdHRvbTogMTBweDtcclxuICAgIHdpZHRoOiAxMHB4O1xyXG59XHJcbi5vcy10aGVtZS1kYXJrLm9zLWhvc3QtcnRsID4gLm9zLXNjcm9sbGJhci1ob3Jpem9udGFsLFxyXG4ub3MtdGhlbWUtbGlnaHQub3MtaG9zdC1ydGwgPiAub3Mtc2Nyb2xsYmFyLWhvcml6b250YWwge1xyXG4gICAgbGVmdDogMTBweDtcclxuICAgIHJpZ2h0OiAwO1xyXG59XHJcbi5vcy10aGVtZS1kYXJrID4gLm9zLXNjcm9sbGJhci1jb3JuZXIsXHJcbi5vcy10aGVtZS1saWdodCA+IC5vcy1zY3JvbGxiYXItY29ybmVyIHtcclxuICAgIGhlaWdodDogMTBweDtcclxuICAgIHdpZHRoOiAxMHB4O1xyXG59XHJcbi5vcy10aGVtZS1kYXJrID4gLm9zLXNjcm9sbGJhci1jb3JuZXIsXHJcbi5vcy10aGVtZS1saWdodCA+IC5vcy1zY3JvbGxiYXItY29ybmVyIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG59XHJcbi5vcy10aGVtZS1kYXJrID4gLm9zLXNjcm9sbGJhcixcclxuLm9zLXRoZW1lLWxpZ2h0ID4gLm9zLXNjcm9sbGJhciB7XHJcbiAgICBwYWRkaW5nOiAycHg7XHJcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcbn1cclxuLm9zLXRoZW1lLWRhcmsgPiAub3Mtc2Nyb2xsYmFyLm9zLXNjcm9sbGJhci11bnVzYWJsZSxcclxuLm9zLXRoZW1lLWxpZ2h0ID4gLm9zLXNjcm9sbGJhci5vcy1zY3JvbGxiYXItdW51c2FibGUge1xyXG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcbn1cclxuLm9zLXRoZW1lLWRhcmsgPiAub3Mtc2Nyb2xsYmFyID4gLm9zLXNjcm9sbGJhci10cmFjayxcclxuLm9zLXRoZW1lLWxpZ2h0ID4gLm9zLXNjcm9sbGJhciA+IC5vcy1zY3JvbGxiYXItdHJhY2sge1xyXG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcbn1cclxuLm9zLXRoZW1lLWRhcmsgPiAub3Mtc2Nyb2xsYmFyLWhvcml6b250YWwgPiAub3Mtc2Nyb2xsYmFyLXRyYWNrID4gLm9zLXNjcm9sbGJhci1oYW5kbGUsXHJcbi5vcy10aGVtZS1saWdodCA+IC5vcy1zY3JvbGxiYXItaG9yaXpvbnRhbCA+IC5vcy1zY3JvbGxiYXItdHJhY2sgPiAub3Mtc2Nyb2xsYmFyLWhhbmRsZSB7XHJcbiAgICBtaW4td2lkdGg6IDMwcHg7XHJcbn1cclxuLm9zLXRoZW1lLWRhcmsgPiAub3Mtc2Nyb2xsYmFyLXZlcnRpY2FsID4gLm9zLXNjcm9sbGJhci10cmFjayA+IC5vcy1zY3JvbGxiYXItaGFuZGxlLFxyXG4ub3MtdGhlbWUtbGlnaHQgPiAub3Mtc2Nyb2xsYmFyLXZlcnRpY2FsID4gLm9zLXNjcm9sbGJhci10cmFjayA+IC5vcy1zY3JvbGxiYXItaGFuZGxlIHtcclxuICAgIG1pbi1oZWlnaHQ6IDMwcHg7XHJcbn1cclxuLm9zLXRoZW1lLWRhcmsub3MtaG9zdC10cmFuc2l0aW9uID4gLm9zLXNjcm9sbGJhciA+IC5vcy1zY3JvbGxiYXItdHJhY2sgPiAub3Mtc2Nyb2xsYmFyLWhhbmRsZSxcclxuLm9zLXRoZW1lLWxpZ2h0Lm9zLWhvc3QtdHJhbnNpdGlvbiA+IC5vcy1zY3JvbGxiYXIgPiAub3Mtc2Nyb2xsYmFyLXRyYWNrID4gLm9zLXNjcm9sbGJhci1oYW5kbGUge1xyXG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuM3M7XHJcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuM3M7XHJcbn1cclxuLm9zLXRoZW1lLWRhcmsgPiAub3Mtc2Nyb2xsYmFyID4gLm9zLXNjcm9sbGJhci10cmFjayA+IC5vcy1zY3JvbGxiYXItaGFuZGxlLFxyXG4ub3MtdGhlbWUtbGlnaHQgPiAub3Mtc2Nyb2xsYmFyID4gLm9zLXNjcm9sbGJhci10cmFjayA+IC5vcy1zY3JvbGxiYXItaGFuZGxlLFxyXG4ub3MtdGhlbWUtZGFyayA+IC5vcy1zY3JvbGxiYXIgPiAub3Mtc2Nyb2xsYmFyLXRyYWNrLFxyXG4ub3MtdGhlbWUtbGlnaHQgPiAub3Mtc2Nyb2xsYmFyID4gLm9zLXNjcm9sbGJhci10cmFjayB7XHJcbiAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xyXG59XHJcbi5vcy10aGVtZS1kYXJrID4gLm9zLXNjcm9sbGJhciA+IC5vcy1zY3JvbGxiYXItdHJhY2sgPiAub3Mtc2Nyb2xsYmFyLWhhbmRsZSB7XHJcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNCk7XHJcbn1cclxuLm9zLXRoZW1lLWxpZ2h0ID4gLm9zLXNjcm9sbGJhciA+IC5vcy1zY3JvbGxiYXItdHJhY2sgPiAub3Mtc2Nyb2xsYmFyLWhhbmRsZSB7XHJcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNCk7XHJcbn1cclxuLm9zLXRoZW1lLWRhcmsgPiAub3Mtc2Nyb2xsYmFyOmhvdmVyID4gLm9zLXNjcm9sbGJhci10cmFjayA+IC5vcy1zY3JvbGxiYXItaGFuZGxlIHtcclxuICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgLjU1KTtcclxufVxyXG4ub3MtdGhlbWUtbGlnaHQgPiAub3Mtc2Nyb2xsYmFyOmhvdmVyID4gLm9zLXNjcm9sbGJhci10cmFjayA+IC5vcy1zY3JvbGxiYXItaGFuZGxlIHtcclxuICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgLjU1KTtcclxufVxyXG4ub3MtdGhlbWUtZGFyayA+IC5vcy1zY3JvbGxiYXIgPiAub3Mtc2Nyb2xsYmFyLXRyYWNrID4gLm9zLXNjcm9sbGJhci1oYW5kbGUuYWN0aXZlIHtcclxuICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgLjcpO1xyXG59XHJcbi5vcy10aGVtZS1saWdodCA+IC5vcy1zY3JvbGxiYXIgPiAub3Mtc2Nyb2xsYmFyLXRyYWNrID4gLm9zLXNjcm9sbGJhci1oYW5kbGUuYWN0aXZlIHtcclxuICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgLjcpO1xyXG59XHJcbi5vcy10aGVtZS1kYXJrID4gLm9zLXNjcm9sbGJhci1ob3Jpem9udGFsIC5vcy1zY3JvbGxiYXItaGFuZGxlOmJlZm9yZSxcclxuLm9zLXRoZW1lLWRhcmsgPiAub3Mtc2Nyb2xsYmFyLXZlcnRpY2FsIC5vcy1zY3JvbGxiYXItaGFuZGxlOmJlZm9yZSxcclxuLm9zLXRoZW1lLWxpZ2h0ID4gLm9zLXNjcm9sbGJhci1ob3Jpem9udGFsIC5vcy1zY3JvbGxiYXItaGFuZGxlOmJlZm9yZSxcclxuLm9zLXRoZW1lLWxpZ2h0ID4gLm9zLXNjcm9sbGJhci12ZXJ0aWNhbCAub3Mtc2Nyb2xsYmFyLWhhbmRsZTpiZWZvcmUge1xyXG4gICAgY29udGVudDogJyc7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgcmlnaHQ6IDA7XHJcbiAgICB0b3A6IDA7XHJcbiAgICBib3R0b206IDA7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxufVxyXG4ub3MtdGhlbWUtZGFyay5vcy1ob3N0LXNjcm9sbGJhci1ob3Jpem9udGFsLWhpZGRlbiA+IC5vcy1zY3JvbGxiYXItaG9yaXpvbnRhbCAub3Mtc2Nyb2xsYmFyLWhhbmRsZTpiZWZvcmUsXHJcbi5vcy10aGVtZS1kYXJrLm9zLWhvc3Qtc2Nyb2xsYmFyLXZlcnRpY2FsLWhpZGRlbiA+IC5vcy1zY3JvbGxiYXItdmVydGljYWwgLm9zLXNjcm9sbGJhci1oYW5kbGU6YmVmb3JlLFxyXG4ub3MtdGhlbWUtbGlnaHQub3MtaG9zdC1zY3JvbGxiYXItaG9yaXpvbnRhbC1oaWRkZW4gPiAub3Mtc2Nyb2xsYmFyLWhvcml6b250YWwgLm9zLXNjcm9sbGJhci1oYW5kbGU6YmVmb3JlLFxyXG4ub3MtdGhlbWUtbGlnaHQub3MtaG9zdC1zY3JvbGxiYXItdmVydGljYWwtaGlkZGVuID4gLm9zLXNjcm9sbGJhci12ZXJ0aWNhbCAub3Mtc2Nyb2xsYmFyLWhhbmRsZTpiZWZvcmUge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxufVxyXG4ub3MtdGhlbWUtZGFyayA+IC5vcy1zY3JvbGxiYXItaG9yaXpvbnRhbCAub3Mtc2Nyb2xsYmFyLWhhbmRsZTpiZWZvcmUsXHJcbi5vcy10aGVtZS1saWdodCA+IC5vcy1zY3JvbGxiYXItaG9yaXpvbnRhbCAub3Mtc2Nyb2xsYmFyLWhhbmRsZTpiZWZvcmUge1xyXG4gICAgdG9wOiAtNnB4O1xyXG4gICAgYm90dG9tOiAtMnB4O1xyXG59XHJcbi5vcy10aGVtZS1kYXJrID4gLm9zLXNjcm9sbGJhci12ZXJ0aWNhbCAub3Mtc2Nyb2xsYmFyLWhhbmRsZTpiZWZvcmUsXHJcbi5vcy10aGVtZS1saWdodCA+IC5vcy1zY3JvbGxiYXItdmVydGljYWwgLm9zLXNjcm9sbGJhci1oYW5kbGU6YmVmb3JlIHtcclxuICAgIGxlZnQ6IC02cHg7XHJcbiAgICByaWdodDogLTJweDtcclxufVxyXG4ub3MtaG9zdC1ydGwub3MtdGhlbWUtZGFyayA+IC5vcy1zY3JvbGxiYXItdmVydGljYWwgLm9zLXNjcm9sbGJhci1oYW5kbGU6YmVmb3JlLFxyXG4ub3MtaG9zdC1ydGwub3MtdGhlbWUtbGlnaHQgPiAub3Mtc2Nyb2xsYmFyLXZlcnRpY2FsIC5vcy1zY3JvbGxiYXItaGFuZGxlOmJlZm9yZSB7XHJcbiAgICByaWdodDogLTZweDtcclxuICAgIGxlZnQ6IC0ycHg7XHJcbn1cclxuIiwiLyogRGF5R3JpZFZpZXdcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIGRheSByb3cgc3RydWN0dXJlICovXG4uZmMtZGF5R3JpZFdlZWstdmlldyAuZmMtY29udGVudC1za2VsZXRvbixcbi5mYy1kYXlHcmlkRGF5LXZpZXcgLmZjLWNvbnRlbnQtc2tlbGV0b24ge1xuICAvKiB0aGVyZSBtYXkgYmUgd2VlayBudW1iZXJzIGluIHRoZXNlIHZpZXdzLCBzbyBubyBwYWRkaW5nLXRvcCAqL1xuICBwYWRkaW5nLWJvdHRvbTogMWVtO1xuICAvKiBlbnN1cmUgYSBzcGFjZSBhdCBib3R0b20gb2YgY2VsbCBmb3IgdXNlciBzZWxlY3RpbmcvY2xpY2tpbmcgKi9cbn1cblxuLmZjLWRheUdyaWQtdmlldyAuZmMtYm9keSAuZmMtcm93IHtcbiAgbWluLWhlaWdodDogNGVtO1xuICAvKiBlbnN1cmUgdGhhdCBhbGwgcm93cyBhcmUgYXQgbGVhc3QgdGhpcyB0YWxsICovXG59XG5cbi8qIGEgXCJyaWdpZFwiIHJvdyB3aWxsIHRha2UgdXAgYSBjb25zdGFudCBhbW91bnQgb2YgaGVpZ2h0IGJlY2F1c2UgY29udGVudC1za2VsZXRvbiBpcyBhYnNvbHV0ZSAqL1xuLmZjLXJvdy5mYy1yaWdpZCB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5mYy1yb3cuZmMtcmlnaWQgLmZjLWNvbnRlbnQtc2tlbGV0b24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG59XG5cbi8qIHdlZWsgYW5kIGRheSBudW1iZXIgc3R5bGluZyAqL1xuLmZjLWRheS10b3AuZmMtb3RoZXItbW9udGgge1xuICBvcGFjaXR5OiAwLjM7XG59XG5cbi5mYy1kYXlHcmlkLXZpZXcgLmZjLXdlZWstbnVtYmVyLFxuLmZjLWRheUdyaWQtdmlldyAuZmMtZGF5LW51bWJlciB7XG4gIHBhZGRpbmc6IDJweDtcbn1cblxuLmZjLWRheUdyaWQtdmlldyB0aC5mYy13ZWVrLW51bWJlcixcbi5mYy1kYXlHcmlkLXZpZXcgdGguZmMtZGF5LW51bWJlciB7XG4gIHBhZGRpbmc6IDAgMnB4O1xuICAvKiBjb2x1bW4gaGVhZGVycyBjYW4ndCBoYXZlIGFzIG11Y2ggdiBzcGFjZSAqL1xufVxuXG4uZmMtbHRyIC5mYy1kYXlHcmlkLXZpZXcgLmZjLWRheS10b3AgLmZjLWRheS1udW1iZXIge1xuICBmbG9hdDogcmlnaHQ7XG59XG5cbi5mYy1ydGwgLmZjLWRheUdyaWQtdmlldyAuZmMtZGF5LXRvcCAuZmMtZGF5LW51bWJlciB7XG4gIGZsb2F0OiBsZWZ0O1xufVxuXG4uZmMtbHRyIC5mYy1kYXlHcmlkLXZpZXcgLmZjLWRheS10b3AgLmZjLXdlZWstbnVtYmVyIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGJvcmRlci1yYWRpdXM6IDAgMCAzcHggMDtcbn1cblxuLmZjLXJ0bCAuZmMtZGF5R3JpZC12aWV3IC5mYy1kYXktdG9wIC5mYy13ZWVrLW51bWJlciB7XG4gIGZsb2F0OiByaWdodDtcbiAgYm9yZGVyLXJhZGl1czogMCAwIDAgM3B4O1xufVxuXG4uZmMtZGF5R3JpZC12aWV3IC5mYy1kYXktdG9wIC5mYy13ZWVrLW51bWJlciB7XG4gIG1pbi13aWR0aDogMS41ZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YyZjJmMjtcbiAgY29sb3I6ICM4MDgwODA7XG59XG5cbi8qIHdoZW4gd2Vlay9kYXkgbnVtYmVyIGhhdmUgb3duIGNvbHVtbiAqL1xuLmZjLWRheUdyaWQtdmlldyB0ZC5mYy13ZWVrLW51bWJlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLmZjLWRheUdyaWQtdmlldyB0ZC5mYy13ZWVrLW51bWJlciA+ICoge1xuICAvKiB3b3JrIGFyb3VuZCB0aGUgd2F5IHdlIGRvIGNvbHVtbiByZXNpemluZyBhbmQgZW5zdXJlIGEgbWluaW11bSB3aWR0aCAqL1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1pbi13aWR0aDogMS4yNWVtO1xufVxuIiwiLmZsYXRwaWNrci1jYWxlbmRhciB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBvcGFjaXR5OiAwO1xuICBkaXNwbGF5OiBub25lO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgcGFkZGluZzogMDtcbiAgLXdlYmtpdC1hbmltYXRpb246IG5vbmU7XG4gICAgICAgICAgYW5pbWF0aW9uOiBub25lO1xuICBkaXJlY3Rpb246IGx0cjtcbiAgYm9yZGVyOiAwO1xuICBmb250LXNpemU6IDE0cHg7XG4gIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDMwNy44NzVweDtcbiAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC1tcy10b3VjaC1hY3Rpb246IG1hbmlwdWxhdGlvbjtcbiAgICAgIHRvdWNoLWFjdGlvbjogbWFuaXB1bGF0aW9uO1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDFweCAwIDAgI2U2ZTZlNiwgLTFweCAwIDAgI2U2ZTZlNiwgMCAxcHggMCAjZTZlNmU2LCAwIC0xcHggMCAjZTZlNmU2LCAwIDNweCAxM3B4IHJnYmEoMCwwLDAsMC4wOCk7XG4gICAgICAgICAgYm94LXNoYWRvdzogMXB4IDAgMCAjZTZlNmU2LCAtMXB4IDAgMCAjZTZlNmU2LCAwIDFweCAwICNlNmU2ZTYsIDAgLTFweCAwICNlNmU2ZTYsIDAgM3B4IDEzcHggcmdiYSgwLDAsMCwwLjA4KTtcbn1cbi5mbGF0cGlja3ItY2FsZW5kYXIub3Blbixcbi5mbGF0cGlja3ItY2FsZW5kYXIuaW5saW5lIHtcbiAgb3BhY2l0eTogMTtcbiAgbWF4LWhlaWdodDogNjQwcHg7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG59XG4uZmxhdHBpY2tyLWNhbGVuZGFyLm9wZW4ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHotaW5kZXg6IDk5OTk5O1xufVxuLmZsYXRwaWNrci1jYWxlbmRhci5hbmltYXRlLm9wZW4ge1xuICAtd2Via2l0LWFuaW1hdGlvbjogZnBGYWRlSW5Eb3duIDMwMG1zIGN1YmljLWJlemllcigwLjIzLCAxLCAwLjMyLCAxKTtcbiAgICAgICAgICBhbmltYXRpb246IGZwRmFkZUluRG93biAzMDBtcyBjdWJpYy1iZXppZXIoMC4yMywgMSwgMC4zMiwgMSk7XG59XG4uZmxhdHBpY2tyLWNhbGVuZGFyLmlubGluZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogMnB4O1xufVxuLmZsYXRwaWNrci1jYWxlbmRhci5zdGF0aWMge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogY2FsYygxMDAlICsgMnB4KTtcbn1cbi5mbGF0cGlja3ItY2FsZW5kYXIuc3RhdGljLm9wZW4ge1xuICB6LWluZGV4OiA5OTk7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLmZsYXRwaWNrci1jYWxlbmRhci5tdWx0aU1vbnRoIC5mbGF0cGlja3ItZGF5cyAuZGF5Q29udGFpbmVyOm50aC1jaGlsZChuKzEpIC5mbGF0cGlja3ItZGF5LmluUmFuZ2U6bnRoLWNoaWxkKDduKzcpIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xufVxuLmZsYXRwaWNrci1jYWxlbmRhci5tdWx0aU1vbnRoIC5mbGF0cGlja3ItZGF5cyAuZGF5Q29udGFpbmVyOm50aC1jaGlsZChuKzIpIC5mbGF0cGlja3ItZGF5LmluUmFuZ2U6bnRoLWNoaWxkKDduKzEpIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAtMnB4IDAgMCAjZTZlNmU2LCA1cHggMCAwICNlNmU2ZTY7XG4gICAgICAgICAgYm94LXNoYWRvdzogLTJweCAwIDAgI2U2ZTZlNiwgNXB4IDAgMCAjZTZlNmU2O1xufVxuLmZsYXRwaWNrci1jYWxlbmRhciAuaGFzV2Vla3MgLmRheUNvbnRhaW5lcixcbi5mbGF0cGlja3ItY2FsZW5kYXIgLmhhc1RpbWUgLmRheUNvbnRhaW5lciB7XG4gIGJvcmRlci1ib3R0b206IDA7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xufVxuLmZsYXRwaWNrci1jYWxlbmRhciAuaGFzV2Vla3MgLmRheUNvbnRhaW5lciB7XG4gIGJvcmRlci1sZWZ0OiAwO1xufVxuLmZsYXRwaWNrci1jYWxlbmRhci5oYXNUaW1lIC5mbGF0cGlja3ItdGltZSB7XG4gIGhlaWdodDogNDBweDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNlNmU2ZTY7XG59XG4uZmxhdHBpY2tyLWNhbGVuZGFyLm5vQ2FsZW5kYXIuaGFzVGltZSAuZmxhdHBpY2tyLXRpbWUge1xuICBoZWlnaHQ6IGF1dG87XG59XG4uZmxhdHBpY2tyLWNhbGVuZGFyOmJlZm9yZSxcbi5mbGF0cGlja3ItY2FsZW5kYXI6YWZ0ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgYm9yZGVyOiBzb2xpZCB0cmFuc3BhcmVudDtcbiAgY29udGVudDogJyc7XG4gIGhlaWdodDogMDtcbiAgd2lkdGg6IDA7XG4gIGxlZnQ6IDIycHg7XG59XG4uZmxhdHBpY2tyLWNhbGVuZGFyLnJpZ2h0TW9zdDpiZWZvcmUsXG4uZmxhdHBpY2tyLWNhbGVuZGFyLmFycm93UmlnaHQ6YmVmb3JlLFxuLmZsYXRwaWNrci1jYWxlbmRhci5yaWdodE1vc3Q6YWZ0ZXIsXG4uZmxhdHBpY2tyLWNhbGVuZGFyLmFycm93UmlnaHQ6YWZ0ZXIge1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogMjJweDtcbn1cbi5mbGF0cGlja3ItY2FsZW5kYXIuYXJyb3dDZW50ZXI6YmVmb3JlLFxuLmZsYXRwaWNrci1jYWxlbmRhci5hcnJvd0NlbnRlcjphZnRlciB7XG4gIGxlZnQ6IDUwJTtcbiAgcmlnaHQ6IDUwJTtcbn1cbi5mbGF0cGlja3ItY2FsZW5kYXI6YmVmb3JlIHtcbiAgYm9yZGVyLXdpZHRoOiA1cHg7XG4gIG1hcmdpbjogMCAtNXB4O1xufVxuLmZsYXRwaWNrci1jYWxlbmRhcjphZnRlciB7XG4gIGJvcmRlci13aWR0aDogNHB4O1xuICBtYXJnaW46IDAgLTRweDtcbn1cbi5mbGF0cGlja3ItY2FsZW5kYXIuYXJyb3dUb3A6YmVmb3JlLFxuLmZsYXRwaWNrci1jYWxlbmRhci5hcnJvd1RvcDphZnRlciB7XG4gIGJvdHRvbTogMTAwJTtcbn1cbi5mbGF0cGlja3ItY2FsZW5kYXIuYXJyb3dUb3A6YmVmb3JlIHtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogI2U2ZTZlNjtcbn1cbi5mbGF0cGlja3ItY2FsZW5kYXIuYXJyb3dUb3A6YWZ0ZXIge1xuICBib3JkZXItYm90dG9tLWNvbG9yOiAjZmZmO1xufVxuLmZsYXRwaWNrci1jYWxlbmRhci5hcnJvd0JvdHRvbTpiZWZvcmUsXG4uZmxhdHBpY2tyLWNhbGVuZGFyLmFycm93Qm90dG9tOmFmdGVyIHtcbiAgdG9wOiAxMDAlO1xufVxuLmZsYXRwaWNrci1jYWxlbmRhci5hcnJvd0JvdHRvbTpiZWZvcmUge1xuICBib3JkZXItdG9wLWNvbG9yOiAjZTZlNmU2O1xufVxuLmZsYXRwaWNrci1jYWxlbmRhci5hcnJvd0JvdHRvbTphZnRlciB7XG4gIGJvcmRlci10b3AtY29sb3I6ICNmZmY7XG59XG4uZmxhdHBpY2tyLWNhbGVuZGFyOmZvY3VzIHtcbiAgb3V0bGluZTogMDtcbn1cbi5mbGF0cGlja3Itd3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuLmZsYXRwaWNrci1tb250aHMge1xuICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgZGlzcGxheTogZmxleDtcbn1cbi5mbGF0cGlja3ItbW9udGhzIC5mbGF0cGlja3ItbW9udGgge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6IHJnYmEoMCwwLDAsMC45KTtcbiAgZmlsbDogcmdiYSgwLDAsMCwwLjkpO1xuICBoZWlnaHQ6IDM0cHg7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgLXdlYmtpdC1ib3gtZmxleDogMTtcbiAgLXdlYmtpdC1mbGV4OiAxO1xuICAgICAgLW1zLWZsZXg6IDE7XG4gICAgICAgICAgZmxleDogMTtcbn1cbi5mbGF0cGlja3ItbW9udGhzIC5mbGF0cGlja3ItcHJldi1tb250aCxcbi5mbGF0cGlja3ItbW9udGhzIC5mbGF0cGlja3ItbmV4dC1tb250aCB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgaGVpZ2h0OiAzNHB4O1xuICBwYWRkaW5nOiAxMHB4O1xuICB6LWluZGV4OiAzO1xuICBjb2xvcjogcmdiYSgwLDAsMCwwLjkpO1xuICBmaWxsOiByZ2JhKDAsMCwwLDAuOSk7XG59XG4uZmxhdHBpY2tyLW1vbnRocyAuZmxhdHBpY2tyLXByZXYtbW9udGguZmxhdHBpY2tyLWRpc2FibGVkLFxuLmZsYXRwaWNrci1tb250aHMgLmZsYXRwaWNrci1uZXh0LW1vbnRoLmZsYXRwaWNrci1kaXNhYmxlZCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4uZmxhdHBpY2tyLW1vbnRocyAuZmxhdHBpY2tyLXByZXYtbW9udGggaSxcbi5mbGF0cGlja3ItbW9udGhzIC5mbGF0cGlja3ItbmV4dC1tb250aCBpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLmZsYXRwaWNrci1tb250aHMgLmZsYXRwaWNrci1wcmV2LW1vbnRoLmZsYXRwaWNrci1wcmV2LW1vbnRoLFxuLmZsYXRwaWNrci1tb250aHMgLmZsYXRwaWNrci1uZXh0LW1vbnRoLmZsYXRwaWNrci1wcmV2LW1vbnRoIHtcbi8qXG4gICAgICAvKnJ0bDpiZWdpbjppZ25vcmUqL1xuLypcbiAgICAgICovXG4gIGxlZnQ6IDA7XG4vKlxuICAgICAgLypydGw6ZW5kOmlnbm9yZSovXG4vKlxuICAgICAgKi9cbn1cbi8qXG4gICAgICAvKnJ0bDpiZWdpbjppZ25vcmUqL1xuLypcbiAgICAgIC8qcnRsOmVuZDppZ25vcmUqL1xuLmZsYXRwaWNrci1tb250aHMgLmZsYXRwaWNrci1wcmV2LW1vbnRoLmZsYXRwaWNrci1uZXh0LW1vbnRoLFxuLmZsYXRwaWNrci1tb250aHMgLmZsYXRwaWNrci1uZXh0LW1vbnRoLmZsYXRwaWNrci1uZXh0LW1vbnRoIHtcbi8qXG4gICAgICAvKnJ0bDpiZWdpbjppZ25vcmUqL1xuLypcbiAgICAgICovXG4gIHJpZ2h0OiAwO1xuLypcbiAgICAgIC8qcnRsOmVuZDppZ25vcmUqL1xuLypcbiAgICAgICovXG59XG4vKlxuICAgICAgLypydGw6YmVnaW46aWdub3JlKi9cbi8qXG4gICAgICAvKnJ0bDplbmQ6aWdub3JlKi9cbi5mbGF0cGlja3ItbW9udGhzIC5mbGF0cGlja3ItcHJldi1tb250aDpob3Zlcixcbi5mbGF0cGlja3ItbW9udGhzIC5mbGF0cGlja3ItbmV4dC1tb250aDpob3ZlciB7XG4gIGNvbG9yOiAjOTU5ZWE5O1xufVxuLmZsYXRwaWNrci1tb250aHMgLmZsYXRwaWNrci1wcmV2LW1vbnRoOmhvdmVyIHN2Zyxcbi5mbGF0cGlja3ItbW9udGhzIC5mbGF0cGlja3ItbmV4dC1tb250aDpob3ZlciBzdmcge1xuICBmaWxsOiAjZjY0NzQ3O1xufVxuLmZsYXRwaWNrci1tb250aHMgLmZsYXRwaWNrci1wcmV2LW1vbnRoIHN2Zyxcbi5mbGF0cGlja3ItbW9udGhzIC5mbGF0cGlja3ItbmV4dC1tb250aCBzdmcge1xuICB3aWR0aDogMTRweDtcbiAgaGVpZ2h0OiAxNHB4O1xufVxuLmZsYXRwaWNrci1tb250aHMgLmZsYXRwaWNrci1wcmV2LW1vbnRoIHN2ZyBwYXRoLFxuLmZsYXRwaWNrci1tb250aHMgLmZsYXRwaWNrci1uZXh0LW1vbnRoIHN2ZyBwYXRoIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBmaWxsIDAuMXM7XG4gIHRyYW5zaXRpb246IGZpbGwgMC4xcztcbiAgZmlsbDogaW5oZXJpdDtcbn1cbi5udW1JbnB1dFdyYXBwZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogYXV0bztcbn1cbi5udW1JbnB1dFdyYXBwZXIgaW5wdXQsXG4ubnVtSW5wdXRXcmFwcGVyIHNwYW4ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG4ubnVtSW5wdXRXcmFwcGVyIGlucHV0IHtcbiAgd2lkdGg6IDEwMCU7XG59XG4ubnVtSW5wdXRXcmFwcGVyIGlucHV0OjotbXMtY2xlYXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuLm51bUlucHV0V3JhcHBlciBpbnB1dDo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbixcbi5udW1JbnB1dFdyYXBwZXIgaW5wdXQ6Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24ge1xuICBtYXJnaW46IDA7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cbi5udW1JbnB1dFdyYXBwZXIgc3BhbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIHdpZHRoOiAxNHB4O1xuICBwYWRkaW5nOiAwIDRweCAwIDJweDtcbiAgaGVpZ2h0OiA1MCU7XG4gIGxpbmUtaGVpZ2h0OiA1MCU7XG4gIG9wYWNpdHk6IDA7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSg1Nyw1Nyw1NywwLjE1KTtcbiAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG4ubnVtSW5wdXRXcmFwcGVyIHNwYW46aG92ZXIge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsMCwwLDAuMSk7XG59XG4ubnVtSW5wdXRXcmFwcGVyIHNwYW46YWN0aXZlIHtcbiAgYmFja2dyb3VuZDogcmdiYSgwLDAsMCwwLjIpO1xufVxuLm51bUlucHV0V3JhcHBlciBzcGFuOmFmdGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbn1cbi5udW1JbnB1dFdyYXBwZXIgc3Bhbi5hcnJvd1VwIHtcbiAgdG9wOiAwO1xuICBib3JkZXItYm90dG9tOiAwO1xufVxuLm51bUlucHV0V3JhcHBlciBzcGFuLmFycm93VXA6YWZ0ZXIge1xuICBib3JkZXItbGVmdDogNHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6IDRweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWJvdHRvbTogNHB4IHNvbGlkIHJnYmEoNTcsNTcsNTcsMC42KTtcbiAgdG9wOiAyNiU7XG59XG4ubnVtSW5wdXRXcmFwcGVyIHNwYW4uYXJyb3dEb3duIHtcbiAgdG9wOiA1MCU7XG59XG4ubnVtSW5wdXRXcmFwcGVyIHNwYW4uYXJyb3dEb3duOmFmdGVyIHtcbiAgYm9yZGVyLWxlZnQ6IDRweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0OiA0cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci10b3A6IDRweCBzb2xpZCByZ2JhKDU3LDU3LDU3LDAuNik7XG4gIHRvcDogNDAlO1xufVxuLm51bUlucHV0V3JhcHBlciBzcGFuIHN2ZyB7XG4gIHdpZHRoOiBpbmhlcml0O1xuICBoZWlnaHQ6IGF1dG87XG59XG4ubnVtSW5wdXRXcmFwcGVyIHNwYW4gc3ZnIHBhdGgge1xuICBmaWxsOiByZ2JhKDAsMCwwLDAuNSk7XG59XG4ubnVtSW5wdXRXcmFwcGVyOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogcmdiYSgwLDAsMCwwLjA1KTtcbn1cbi5udW1JbnB1dFdyYXBwZXI6aG92ZXIgc3BhbiB7XG4gIG9wYWNpdHk6IDE7XG59XG4uZmxhdHBpY2tyLWN1cnJlbnQtbW9udGgge1xuICBmb250LXNpemU6IDEzNSU7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICBmb250LXdlaWdodDogMzAwO1xuICBjb2xvcjogaW5oZXJpdDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogNzUlO1xuICBsZWZ0OiAxMi41JTtcbiAgcGFkZGluZzogNy40OHB4IDAgMCAwO1xuICBsaW5lLWhlaWdodDogMTtcbiAgaGVpZ2h0OiAzNHB4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDBweCwgMHB4LCAwcHgpO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMHB4LCAwcHgsIDBweCk7XG59XG4uZmxhdHBpY2tyLWN1cnJlbnQtbW9udGggc3Bhbi5jdXItbW9udGgge1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLWxlZnQ6IDAuNWNoO1xuICBwYWRkaW5nOiAwO1xufVxuLmZsYXRwaWNrci1jdXJyZW50LW1vbnRoIHNwYW4uY3VyLW1vbnRoOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogcmdiYSgwLDAsMCwwLjA1KTtcbn1cbi5mbGF0cGlja3ItY3VycmVudC1tb250aCAubnVtSW5wdXRXcmFwcGVyIHtcbiAgd2lkdGg6IDZjaDtcbiAgd2lkdGg6IDdjaFxcMDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuLmZsYXRwaWNrci1jdXJyZW50LW1vbnRoIC5udW1JbnB1dFdyYXBwZXIgc3Bhbi5hcnJvd1VwOmFmdGVyIHtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogcmdiYSgwLDAsMCwwLjkpO1xufVxuLmZsYXRwaWNrci1jdXJyZW50LW1vbnRoIC5udW1JbnB1dFdyYXBwZXIgc3Bhbi5hcnJvd0Rvd246YWZ0ZXIge1xuICBib3JkZXItdG9wLWNvbG9yOiByZ2JhKDAsMCwwLDAuOSk7XG59XG4uZmxhdHBpY2tyLWN1cnJlbnQtbW9udGggaW5wdXQuY3VyLXllYXIge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGNvbG9yOiBpbmhlcml0O1xuICBjdXJzb3I6IHRleHQ7XG4gIHBhZGRpbmc6IDAgMCAwIDAuNWNoO1xuICBtYXJnaW46IDA7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1zaXplOiBpbmhlcml0O1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIGhlaWdodDogYXV0bztcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICB2ZXJ0aWNhbC1hbGlnbjogaW5pdGlhbDtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7XG4gIC1tb3otYXBwZWFyYW5jZTogdGV4dGZpZWxkO1xuICBhcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7XG59XG4uZmxhdHBpY2tyLWN1cnJlbnQtbW9udGggaW5wdXQuY3VyLXllYXI6Zm9jdXMge1xuICBvdXRsaW5lOiAwO1xufVxuLmZsYXRwaWNrci1jdXJyZW50LW1vbnRoIGlucHV0LmN1ci15ZWFyW2Rpc2FibGVkXSxcbi5mbGF0cGlja3ItY3VycmVudC1tb250aCBpbnB1dC5jdXIteWVhcltkaXNhYmxlZF06aG92ZXIge1xuICBmb250LXNpemU6IDEwMCU7XG4gIGNvbG9yOiByZ2JhKDAsMCwwLDAuNSk7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cbi5mbGF0cGlja3ItY3VycmVudC1tb250aCAuZmxhdHBpY2tyLW1vbnRoRHJvcGRvd24tbW9udGhzIHtcbiAgYXBwZWFyYW5jZTogbWVudWxpc3Q7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGNvbG9yOiBpbmhlcml0O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGhlaWdodDogYXV0bztcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIG1hcmdpbjogLTFweCAwIDAgMDtcbiAgb3V0bGluZTogbm9uZTtcbiAgcGFkZGluZzogMCAwIDAgMC41Y2g7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdmVydGljYWwtYWxpZ246IGluaXRpYWw7XG4gIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBtZW51bGlzdDtcbiAgLW1vei1hcHBlYXJhbmNlOiBtZW51bGlzdDtcbiAgd2lkdGg6IGF1dG87XG59XG4uZmxhdHBpY2tyLWN1cnJlbnQtbW9udGggLmZsYXRwaWNrci1tb250aERyb3Bkb3duLW1vbnRoczpmb2N1cyxcbi5mbGF0cGlja3ItY3VycmVudC1tb250aCAuZmxhdHBpY2tyLW1vbnRoRHJvcGRvd24tbW9udGhzOmFjdGl2ZSB7XG4gIG91dGxpbmU6IG5vbmU7XG59XG4uZmxhdHBpY2tyLWN1cnJlbnQtbW9udGggLmZsYXRwaWNrci1tb250aERyb3Bkb3duLW1vbnRoczpob3ZlciB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwwLDAsMC4wNSk7XG59XG4uZmxhdHBpY2tyLWN1cnJlbnQtbW9udGggLmZsYXRwaWNrci1tb250aERyb3Bkb3duLW1vbnRocyAuZmxhdHBpY2tyLW1vbnRoRHJvcGRvd24tbW9udGgge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgb3V0bGluZTogbm9uZTtcbiAgcGFkZGluZzogMDtcbn1cbi5mbGF0cGlja3Itd2Vla2RheXMge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB3aWR0aDogMTAwJTtcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7XG4gIC13ZWJraXQtYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgaGVpZ2h0OiAyOHB4O1xufVxuLmZsYXRwaWNrci13ZWVrZGF5cyAuZmxhdHBpY2tyLXdlZWtkYXljb250YWluZXIge1xuICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgZGlzcGxheTogZmxleDtcbiAgLXdlYmtpdC1ib3gtZmxleDogMTtcbiAgLXdlYmtpdC1mbGV4OiAxO1xuICAgICAgLW1zLWZsZXg6IDE7XG4gICAgICAgICAgZmxleDogMTtcbn1cbnNwYW4uZmxhdHBpY2tyLXdlZWtkYXkge1xuICBjdXJzb3I6IGRlZmF1bHQ7XG4gIGZvbnQtc2l6ZTogOTAlO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6IHJnYmEoMCwwLDAsMC41NCk7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBtYXJnaW46IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIC13ZWJraXQtYm94LWZsZXg6IDE7XG4gIC13ZWJraXQtZmxleDogMTtcbiAgICAgIC1tcy1mbGV4OiAxO1xuICAgICAgICAgIGZsZXg6IDE7XG4gIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG59XG4uZGF5Q29udGFpbmVyLFxuLmZsYXRwaWNrci13ZWVrcyB7XG4gIHBhZGRpbmc6IDFweCAwIDAgMDtcbn1cbi5mbGF0cGlja3ItZGF5cyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIC13ZWJraXQtYm94LWFsaWduOiBzdGFydDtcbiAgLXdlYmtpdC1hbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgIC1tcy1mbGV4LWFsaWduOiBzdGFydDtcbiAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgd2lkdGg6IDMwNy44NzVweDtcbn1cbi5mbGF0cGlja3ItZGF5czpmb2N1cyB7XG4gIG91dGxpbmU6IDA7XG59XG4uZGF5Q29udGFpbmVyIHtcbiAgcGFkZGluZzogMDtcbiAgb3V0bGluZTogMDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgd2lkdGg6IDMwNy44NzVweDtcbiAgbWluLXdpZHRoOiAzMDcuODc1cHg7XG4gIG1heC13aWR0aDogMzA3Ljg3NXB4O1xuICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgZGlzcGxheTogZmxleDtcbiAgLXdlYmtpdC1mbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAtbXMtZmxleC13cmFwOiB3cmFwO1xuICAtbXMtZmxleC1wYWNrOiBqdXN0aWZ5O1xuICAtd2Via2l0LWp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMHB4LCAwcHgsIDBweCk7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwcHgsIDBweCwgMHB4KTtcbiAgb3BhY2l0eTogMTtcbn1cbi5kYXlDb250YWluZXIgKyAuZGF5Q29udGFpbmVyIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAtMXB4IDAgMCAjZTZlNmU2O1xuICAgICAgICAgIGJveC1zaGFkb3c6IC0xcHggMCAwICNlNmU2ZTY7XG59XG4uZmxhdHBpY2tyLWRheSB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmFkaXVzOiAxNTBweDtcbiAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGNvbG9yOiAjMzkzOTM5O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIHdpZHRoOiAxNC4yODU3MTQzJTtcbiAgLXdlYmtpdC1mbGV4LWJhc2lzOiAxNC4yODU3MTQzJTtcbiAgICAgIC1tcy1mbGV4LXByZWZlcnJlZC1zaXplOiAxNC4yODU3MTQzJTtcbiAgICAgICAgICBmbGV4LWJhc2lzOiAxNC4yODU3MTQzJTtcbiAgbWF4LXdpZHRoOiAzOXB4O1xuICBoZWlnaHQ6IDM5cHg7XG4gIGxpbmUtaGVpZ2h0OiAzOXB4O1xuICBtYXJnaW46IDA7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAtd2Via2l0LWJveC1wYWNrOiBjZW50ZXI7XG4gIC13ZWJraXQtanVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAtbXMtZmxleC1wYWNrOiBjZW50ZXI7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi5mbGF0cGlja3ItZGF5LmluUmFuZ2UsXG4uZmxhdHBpY2tyLWRheS5wcmV2TW9udGhEYXkuaW5SYW5nZSxcbi5mbGF0cGlja3ItZGF5Lm5leHRNb250aERheS5pblJhbmdlLFxuLmZsYXRwaWNrci1kYXkudG9kYXkuaW5SYW5nZSxcbi5mbGF0cGlja3ItZGF5LnByZXZNb250aERheS50b2RheS5pblJhbmdlLFxuLmZsYXRwaWNrci1kYXkubmV4dE1vbnRoRGF5LnRvZGF5LmluUmFuZ2UsXG4uZmxhdHBpY2tyLWRheTpob3Zlcixcbi5mbGF0cGlja3ItZGF5LnByZXZNb250aERheTpob3Zlcixcbi5mbGF0cGlja3ItZGF5Lm5leHRNb250aERheTpob3Zlcixcbi5mbGF0cGlja3ItZGF5OmZvY3VzLFxuLmZsYXRwaWNrci1kYXkucHJldk1vbnRoRGF5OmZvY3VzLFxuLmZsYXRwaWNrci1kYXkubmV4dE1vbnRoRGF5OmZvY3VzIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBvdXRsaW5lOiAwO1xuICBiYWNrZ3JvdW5kOiAjZTZlNmU2O1xuICBib3JkZXItY29sb3I6ICNlNmU2ZTY7XG59XG4uZmxhdHBpY2tyLWRheS50b2RheSB7XG4gIGJvcmRlci1jb2xvcjogIzk1OWVhOTtcbn1cbi5mbGF0cGlja3ItZGF5LnRvZGF5OmhvdmVyLFxuLmZsYXRwaWNrci1kYXkudG9kYXk6Zm9jdXMge1xuICBib3JkZXItY29sb3I6ICM5NTllYTk7XG4gIGJhY2tncm91bmQ6ICM5NTllYTk7XG4gIGNvbG9yOiAjZmZmO1xufVxuLmZsYXRwaWNrci1kYXkuc2VsZWN0ZWQsXG4uZmxhdHBpY2tyLWRheS5zdGFydFJhbmdlLFxuLmZsYXRwaWNrci1kYXkuZW5kUmFuZ2UsXG4uZmxhdHBpY2tyLWRheS5zZWxlY3RlZC5pblJhbmdlLFxuLmZsYXRwaWNrci1kYXkuc3RhcnRSYW5nZS5pblJhbmdlLFxuLmZsYXRwaWNrci1kYXkuZW5kUmFuZ2UuaW5SYW5nZSxcbi5mbGF0cGlja3ItZGF5LnNlbGVjdGVkOmZvY3VzLFxuLmZsYXRwaWNrci1kYXkuc3RhcnRSYW5nZTpmb2N1cyxcbi5mbGF0cGlja3ItZGF5LmVuZFJhbmdlOmZvY3VzLFxuLmZsYXRwaWNrci1kYXkuc2VsZWN0ZWQ6aG92ZXIsXG4uZmxhdHBpY2tyLWRheS5zdGFydFJhbmdlOmhvdmVyLFxuLmZsYXRwaWNrci1kYXkuZW5kUmFuZ2U6aG92ZXIsXG4uZmxhdHBpY2tyLWRheS5zZWxlY3RlZC5wcmV2TW9udGhEYXksXG4uZmxhdHBpY2tyLWRheS5zdGFydFJhbmdlLnByZXZNb250aERheSxcbi5mbGF0cGlja3ItZGF5LmVuZFJhbmdlLnByZXZNb250aERheSxcbi5mbGF0cGlja3ItZGF5LnNlbGVjdGVkLm5leHRNb250aERheSxcbi5mbGF0cGlja3ItZGF5LnN0YXJ0UmFuZ2UubmV4dE1vbnRoRGF5LFxuLmZsYXRwaWNrci1kYXkuZW5kUmFuZ2UubmV4dE1vbnRoRGF5IHtcbiAgYmFja2dyb3VuZDogIzU2OWZmNztcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lO1xuICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gIGNvbG9yOiAjZmZmO1xuICBib3JkZXItY29sb3I6ICM1NjlmZjc7XG59XG4uZmxhdHBpY2tyLWRheS5zZWxlY3RlZC5zdGFydFJhbmdlLFxuLmZsYXRwaWNrci1kYXkuc3RhcnRSYW5nZS5zdGFydFJhbmdlLFxuLmZsYXRwaWNrci1kYXkuZW5kUmFuZ2Uuc3RhcnRSYW5nZSB7XG4gIGJvcmRlci1yYWRpdXM6IDUwcHggMCAwIDUwcHg7XG59XG4uZmxhdHBpY2tyLWRheS5zZWxlY3RlZC5lbmRSYW5nZSxcbi5mbGF0cGlja3ItZGF5LnN0YXJ0UmFuZ2UuZW5kUmFuZ2UsXG4uZmxhdHBpY2tyLWRheS5lbmRSYW5nZS5lbmRSYW5nZSB7XG4gIGJvcmRlci1yYWRpdXM6IDAgNTBweCA1MHB4IDA7XG59XG4uZmxhdHBpY2tyLWRheS5zZWxlY3RlZC5zdGFydFJhbmdlICsgLmVuZFJhbmdlOm5vdCg6bnRoLWNoaWxkKDduKzEpKSxcbi5mbGF0cGlja3ItZGF5LnN0YXJ0UmFuZ2Uuc3RhcnRSYW5nZSArIC5lbmRSYW5nZTpub3QoOm50aC1jaGlsZCg3bisxKSksXG4uZmxhdHBpY2tyLWRheS5lbmRSYW5nZS5zdGFydFJhbmdlICsgLmVuZFJhbmdlOm5vdCg6bnRoLWNoaWxkKDduKzEpKSB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogLTEwcHggMCAwICM1NjlmZjc7XG4gICAgICAgICAgYm94LXNoYWRvdzogLTEwcHggMCAwICM1NjlmZjc7XG59XG4uZmxhdHBpY2tyLWRheS5zZWxlY3RlZC5zdGFydFJhbmdlLmVuZFJhbmdlLFxuLmZsYXRwaWNrci1kYXkuc3RhcnRSYW5nZS5zdGFydFJhbmdlLmVuZFJhbmdlLFxuLmZsYXRwaWNrci1kYXkuZW5kUmFuZ2Uuc3RhcnRSYW5nZS5lbmRSYW5nZSB7XG4gIGJvcmRlci1yYWRpdXM6IDUwcHg7XG59XG4uZmxhdHBpY2tyLWRheS5pblJhbmdlIHtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAtNXB4IDAgMCAjZTZlNmU2LCA1cHggMCAwICNlNmU2ZTY7XG4gICAgICAgICAgYm94LXNoYWRvdzogLTVweCAwIDAgI2U2ZTZlNiwgNXB4IDAgMCAjZTZlNmU2O1xufVxuLmZsYXRwaWNrci1kYXkuZmxhdHBpY2tyLWRpc2FibGVkLFxuLmZsYXRwaWNrci1kYXkuZmxhdHBpY2tyLWRpc2FibGVkOmhvdmVyLFxuLmZsYXRwaWNrci1kYXkucHJldk1vbnRoRGF5LFxuLmZsYXRwaWNrci1kYXkubmV4dE1vbnRoRGF5LFxuLmZsYXRwaWNrci1kYXkubm90QWxsb3dlZCxcbi5mbGF0cGlja3ItZGF5Lm5vdEFsbG93ZWQucHJldk1vbnRoRGF5LFxuLmZsYXRwaWNrci1kYXkubm90QWxsb3dlZC5uZXh0TW9udGhEYXkge1xuICBjb2xvcjogcmdiYSg1Nyw1Nyw1NywwLjMpO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgY3Vyc29yOiBkZWZhdWx0O1xufVxuLmZsYXRwaWNrci1kYXkuZmxhdHBpY2tyLWRpc2FibGVkLFxuLmZsYXRwaWNrci1kYXkuZmxhdHBpY2tyLWRpc2FibGVkOmhvdmVyIHtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgY29sb3I6IHJnYmEoNTcsNTcsNTcsMC4xKTtcbn1cbi5mbGF0cGlja3ItZGF5LndlZWsuc2VsZWN0ZWQge1xuICBib3JkZXItcmFkaXVzOiAwO1xuICAtd2Via2l0LWJveC1zaGFkb3c6IC01cHggMCAwICM1NjlmZjcsIDVweCAwIDAgIzU2OWZmNztcbiAgICAgICAgICBib3gtc2hhZG93OiAtNXB4IDAgMCAjNTY5ZmY3LCA1cHggMCAwICM1NjlmZjc7XG59XG4uZmxhdHBpY2tyLWRheS5oaWRkZW4ge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG4ucmFuZ2VNb2RlIC5mbGF0cGlja3ItZGF5IHtcbiAgbWFyZ2luLXRvcDogMXB4O1xufVxuLmZsYXRwaWNrci13ZWVrd3JhcHBlciB7XG4gIGZsb2F0OiBsZWZ0O1xufVxuLmZsYXRwaWNrci13ZWVrd3JhcHBlciAuZmxhdHBpY2tyLXdlZWtzIHtcbiAgcGFkZGluZzogMCAxMnB4O1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDFweCAwIDAgI2U2ZTZlNjtcbiAgICAgICAgICBib3gtc2hhZG93OiAxcHggMCAwICNlNmU2ZTY7XG59XG4uZmxhdHBpY2tyLXdlZWt3cmFwcGVyIC5mbGF0cGlja3Itd2Vla2RheSB7XG4gIGZsb2F0OiBub25lO1xuICB3aWR0aDogMTAwJTtcbiAgbGluZS1oZWlnaHQ6IDI4cHg7XG59XG4uZmxhdHBpY2tyLXdlZWt3cmFwcGVyIHNwYW4uZmxhdHBpY2tyLWRheSxcbi5mbGF0cGlja3Itd2Vla3dyYXBwZXIgc3Bhbi5mbGF0cGlja3ItZGF5OmhvdmVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IG5vbmU7XG4gIGNvbG9yOiByZ2JhKDU3LDU3LDU3LDAuMyk7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBjdXJzb3I6IGRlZmF1bHQ7XG4gIGJvcmRlcjogbm9uZTtcbn1cbi5mbGF0cGlja3ItaW5uZXJDb250YWluZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuLmZsYXRwaWNrci1yQ29udGFpbmVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiAwO1xuICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cbi5mbGF0cGlja3ItdGltZSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgb3V0bGluZTogMDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMDtcbiAgbGluZS1oZWlnaHQ6IDQwcHg7XG4gIG1heC1oZWlnaHQ6IDQwcHg7XG4gIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgZGlzcGxheTogZmxleDtcbn1cbi5mbGF0cGlja3ItdGltZTphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBjbGVhcjogYm90aDtcbn1cbi5mbGF0cGlja3ItdGltZSAubnVtSW5wdXRXcmFwcGVyIHtcbiAgLXdlYmtpdC1ib3gtZmxleDogMTtcbiAgLXdlYmtpdC1mbGV4OiAxO1xuICAgICAgLW1zLWZsZXg6IDE7XG4gICAgICAgICAgZmxleDogMTtcbiAgd2lkdGg6IDQwJTtcbiAgaGVpZ2h0OiA0MHB4O1xuICBmbG9hdDogbGVmdDtcbn1cbi5mbGF0cGlja3ItdGltZSAubnVtSW5wdXRXcmFwcGVyIHNwYW4uYXJyb3dVcDphZnRlciB7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6ICMzOTM5Mzk7XG59XG4uZmxhdHBpY2tyLXRpbWUgLm51bUlucHV0V3JhcHBlciBzcGFuLmFycm93RG93bjphZnRlciB7XG4gIGJvcmRlci10b3AtY29sb3I6ICMzOTM5Mzk7XG59XG4uZmxhdHBpY2tyLXRpbWUuaGFzU2Vjb25kcyAubnVtSW5wdXRXcmFwcGVyIHtcbiAgd2lkdGg6IDI2JTtcbn1cbi5mbGF0cGlja3ItdGltZS50aW1lMjRociAubnVtSW5wdXRXcmFwcGVyIHtcbiAgd2lkdGg6IDQ5JTtcbn1cbi5mbGF0cGlja3ItdGltZSBpbnB1dCB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgaGVpZ2h0OiBpbmhlcml0O1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgY29sb3I6ICMzOTM5Mzk7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7XG4gIC1tb3otYXBwZWFyYW5jZTogdGV4dGZpZWxkO1xuICBhcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7XG59XG4uZmxhdHBpY2tyLXRpbWUgaW5wdXQuZmxhdHBpY2tyLWhvdXIge1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cbi5mbGF0cGlja3ItdGltZSBpbnB1dC5mbGF0cGlja3ItbWludXRlLFxuLmZsYXRwaWNrci10aW1lIGlucHV0LmZsYXRwaWNrci1zZWNvbmQge1xuICBmb250LXdlaWdodDogNDAwO1xufVxuLmZsYXRwaWNrci10aW1lIGlucHV0OmZvY3VzIHtcbiAgb3V0bGluZTogMDtcbiAgYm9yZGVyOiAwO1xufVxuLmZsYXRwaWNrci10aW1lIC5mbGF0cGlja3ItdGltZS1zZXBhcmF0b3IsXG4uZmxhdHBpY2tyLXRpbWUgLmZsYXRwaWNrci1hbS1wbSB7XG4gIGhlaWdodDogaW5oZXJpdDtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICBjb2xvcjogIzM5MzkzOTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIHdpZHRoOiAyJTtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgLXdlYmtpdC1hbGlnbi1zZWxmOiBjZW50ZXI7XG4gICAgICAtbXMtZmxleC1pdGVtLWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgYWxpZ24tc2VsZjogY2VudGVyO1xufVxuLmZsYXRwaWNrci10aW1lIC5mbGF0cGlja3ItYW0tcG0ge1xuICBvdXRsaW5lOiAwO1xuICB3aWR0aDogMTglO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbn1cbi5mbGF0cGlja3ItdGltZSBpbnB1dDpob3Zlcixcbi5mbGF0cGlja3ItdGltZSAuZmxhdHBpY2tyLWFtLXBtOmhvdmVyLFxuLmZsYXRwaWNrci10aW1lIGlucHV0OmZvY3VzLFxuLmZsYXRwaWNrci10aW1lIC5mbGF0cGlja3ItYW0tcG06Zm9jdXMge1xuICBiYWNrZ3JvdW5kOiAjZWVlO1xufVxuLmZsYXRwaWNrci1pbnB1dFtyZWFkb25seV0ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5ALXdlYmtpdC1rZXlmcmFtZXMgZnBGYWRlSW5Eb3duIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwcHgsIDApO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjBweCwgMCk7XG4gIH1cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgfVxufVxuQGtleWZyYW1lcyBmcEZhZGVJbkRvd24ge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjBweCwgMCk7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMHB4LCAwKTtcbiAgfVxuICB0byB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB9XG59XG4iLCIvKipcbiAqIFRydW1ib3d5ZyB2Mi4yNS4xIC0gQSBsaWdodHdlaWdodCBXWVNJV1lHIGVkaXRvclxuICogRGVmYXVsdCBzdHlsZXNoZWV0IGZvciBUcnVtYm93eWcgZWRpdG9yXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqIEBsaW5rIGh0dHA6Ly9hbGV4LWQuZ2l0aHViLmlvL1RydW1ib3d5Z1xuICogQGxpY2Vuc2UgTUlUXG4gKiBAYXV0aG9yIEFsZXhhbmRyZSBEZW1vZGUgKEFsZXgtRClcbiAqICAgICAgICAgVHdpdHRlciA6IEBBbGV4YW5kcmVEZW1vZGVcbiAqICAgICAgICAgV2Vic2l0ZSA6IGFsZXgtZC5mclxuICovXG5cbiN0cnVtYm93eWctaWNvbnMge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIGhlaWdodDogMDtcbiAgd2lkdGg6IDA7IH1cbiAgI3RydW1ib3d5Zy1pY29ucyBzdmcge1xuICAgIGhlaWdodDogMDtcbiAgICB3aWR0aDogMDsgfVxuXG4udHJ1bWJvd3lnLWJveCAqLFxuLnRydW1ib3d5Zy1ib3ggKjo6YmVmb3JlLFxuLnRydW1ib3d5Zy1ib3ggKjo6YWZ0ZXIsXG4udHJ1bWJvd3lnLW1vZGFsICosXG4udHJ1bWJvd3lnLW1vZGFsICo6OmJlZm9yZSxcbi50cnVtYm93eWctbW9kYWwgKjo6YWZ0ZXIge1xuICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OyB9XG5cbi50cnVtYm93eWctYm94IHN2Zyxcbi50cnVtYm93eWctbW9kYWwgc3ZnIHtcbiAgd2lkdGg6IDE3cHg7XG4gIGhlaWdodDogMTAwJTtcbiAgZmlsbDogIzIyMjsgfVxuXG4udHJ1bWJvd3lnLWJveCxcbi50cnVtYm93eWctZWRpdG9yIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm9yZGVyOiAxcHggc29saWQgI0RERDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1pbi1oZWlnaHQ6IDMwMHB4OyB9XG5cbi50cnVtYm93eWctYm94IC50cnVtYm93eWctZWRpdG9yIHtcbiAgbWFyZ2luOiAwIGF1dG87IH1cblxuLnRydW1ib3d5Zy1ib3gudHJ1bWJvd3lnLWZ1bGxzY3JlZW4ge1xuICBiYWNrZ3JvdW5kOiAjRkVGRUZFO1xuICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDsgfVxuXG4udHJ1bWJvd3lnLWVkaXRvcixcbi50cnVtYm93eWctdGV4dGFyZWEge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHBhZGRpbmc6IDIwcHg7XG4gIG1pbi1oZWlnaHQ6IDMwMHB4O1xuICB3aWR0aDogMTAwJTtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xuICByZXNpemU6IG5vbmU7XG4gIG91dGxpbmU6IG5vbmU7XG4gIG92ZXJmbG93OiBhdXRvO1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiB0ZXh0O1xuICAgICAtbW96LXVzZXItc2VsZWN0OiB0ZXh0O1xuICAgICAgLW1zLXVzZXItc2VsZWN0OiB0ZXh0O1xuICAgICAgICAgIHVzZXItc2VsZWN0OiB0ZXh0OyB9XG4gIC50cnVtYm93eWctZWRpdG9yLnRydW1ib3d5Zy1hdXRvZ3Jvdy1vbi1lbnRlcixcbiAgLnRydW1ib3d5Zy10ZXh0YXJlYS50cnVtYm93eWctYXV0b2dyb3ctb24tZW50ZXIge1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogaGVpZ2h0IDMwMG1zIGVhc2Utb3V0O1xuICAgIC1vLXRyYW5zaXRpb246IGhlaWdodCAzMDBtcyBlYXNlLW91dDtcbiAgICB0cmFuc2l0aW9uOiBoZWlnaHQgMzAwbXMgZWFzZS1vdXQ7IH1cblxuLnRydW1ib3d5Zy1ib3gtYmx1ciAudHJ1bWJvd3lnLWVkaXRvciAqLCAudHJ1bWJvd3lnLWJveC1ibHVyIC50cnVtYm93eWctZWRpdG9yOjpiZWZvcmUge1xuICBjb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgdGV4dC1zaGFkb3c6IDAgMCA3cHggIzMzMzsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAwIFxcMCkge1xuICAgIC50cnVtYm93eWctYm94LWJsdXIgLnRydW1ib3d5Zy1lZGl0b3IgKiwgLnRydW1ib3d5Zy1ib3gtYmx1ciAudHJ1bWJvd3lnLWVkaXRvcjo6YmVmb3JlIHtcbiAgICAgIGNvbG9yOiByZ2JhKDIwMCwgMjAwLCAyMDAsIDAuNikgIWltcG9ydGFudDsgfSB9XG4gIEBzdXBwb3J0cyAoLW1zLWFjY2VsZXJhdG9yOiB0cnVlKSB7XG4gICAgLnRydW1ib3d5Zy1ib3gtYmx1ciAudHJ1bWJvd3lnLWVkaXRvciAqLCAudHJ1bWJvd3lnLWJveC1ibHVyIC50cnVtYm93eWctZWRpdG9yOjpiZWZvcmUge1xuICAgICAgY29sb3I6IHJnYmEoMjAwLCAyMDAsIDIwMCwgMC42KSAhaW1wb3J0YW50OyB9IH1cblxuLnRydW1ib3d5Zy1ib3gtYmx1ciAudHJ1bWJvd3lnLWVkaXRvciBpbWcsXG4udHJ1bWJvd3lnLWJveC1ibHVyIC50cnVtYm93eWctZWRpdG9yIGhyIHtcbiAgb3BhY2l0eTogMC4yOyB9XG5cbi50cnVtYm93eWctdGV4dGFyZWEge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBvdmVyZmxvdzogYXV0bztcbiAgYm9yZGVyOiBub25lO1xuICBmb250LXNpemU6IDE0cHg7XG4gIGZvbnQtZmFtaWx5OiBcIkluY29uc29sYXRhXCIsIFwiQ29uc29sYXNcIiwgXCJDb3VyaWVyXCIsIFwiQ291cmllciBOZXdcIiwgc2Fucy1zZXJpZjtcbiAgbGluZS1oZWlnaHQ6IDE4cHg7IH1cblxuLnRydW1ib3d5Zy1ib3gudHJ1bWJvd3lnLWVkaXRvci12aXNpYmxlIC50cnVtYm93eWctdGV4dGFyZWEge1xuICBoZWlnaHQ6IDFweCAhaW1wb3J0YW50O1xuICB3aWR0aDogMjUlO1xuICBtaW4taGVpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgb3BhY2l0eTogMCAhaW1wb3J0YW50OyB9XG5cbi50cnVtYm93eWctYm94LnRydW1ib3d5Zy1lZGl0b3ItaGlkZGVuIC50cnVtYm93eWctdGV4dGFyZWEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogMXB4OyB9XG5cbi50cnVtYm93eWctYm94LnRydW1ib3d5Zy1lZGl0b3ItaGlkZGVuIC50cnVtYm93eWctZWRpdG9yIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4udHJ1bWJvd3lnLWJveC50cnVtYm93eWctZGlzYWJsZWQgLnRydW1ib3d5Zy10ZXh0YXJlYSB7XG4gIG9wYWNpdHk6IDAuODtcbiAgYmFja2dyb3VuZDogbm9uZTsgfVxuXG4udHJ1bWJvd3lnLWVkaXRvcltjb250ZW50ZWRpdGFibGU9dHJ1ZV06ZW1wdHk6bm90KDpmb2N1cyk6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IGF0dHIocGxhY2Vob2xkZXIpO1xuICBjb2xvcjogIzk5OTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIHdoaXRlLXNwYWNlOiBicmVhay1zcGFjZXM7IH1cblxuLnRydW1ib3d5Zy1idXR0b24tcGFuZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4taGVpZ2h0OiAzNnB4O1xuICBiYWNrZ3JvdW5kOiAjZWNmMGYxO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2Q3ZTBlMjtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwIDVweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gIGxpbmUtaGVpZ2h0OiAxMHB4O1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIHotaW5kZXg6IDExOyB9XG4gIC50cnVtYm93eWctYnV0dG9uLXBhbmU6OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiBcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAzNnB4O1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgYmFja2dyb3VuZDogI2Q3ZTBlMjsgfVxuICAudHJ1bWJvd3lnLWJ1dHRvbi1wYW5lIC50cnVtYm93eWctYnV0dG9uLWdyb3VwIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgICAudHJ1bWJvd3lnLWJ1dHRvbi1wYW5lIC50cnVtYm93eWctYnV0dG9uLWdyb3VwIC50cnVtYm93eWctZnVsbHNjcmVlbi1idXR0b24gc3ZnIHtcbiAgICAgIGNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgIC50cnVtYm93eWctYnV0dG9uLXBhbmUgLnRydW1ib3d5Zy1idXR0b24tZ3JvdXA6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgd2lkdGg6IDFweDtcbiAgICAgIGJhY2tncm91bmQ6ICNkN2UwZTI7XG4gICAgICBtYXJnaW46IDAgNXB4O1xuICAgICAgaGVpZ2h0OiAzNXB4O1xuICAgICAgdmVydGljYWwtYWxpZ246IHRvcDsgfVxuICAgIC50cnVtYm93eWctYnV0dG9uLXBhbmUgLnRydW1ib3d5Zy1idXR0b24tZ3JvdXA6bGFzdC1jaGlsZDo6YWZ0ZXIge1xuICAgICAgY29udGVudDogbm9uZTsgfVxuICAudHJ1bWJvd3lnLWJ1dHRvbi1wYW5lIGJ1dHRvbiB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMzVweDtcbiAgICBoZWlnaHQ6IDM1cHg7XG4gICAgcGFkZGluZzogMXB4IDZweCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1ib3R0b206IDFweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAxNTBtcywgb3BhY2l0eSAxNTBtcztcbiAgICAtby10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDE1MG1zLCBvcGFjaXR5IDE1MG1zO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMTUwbXMsIG9wYWNpdHkgMTUwbXM7IH1cbiAgICAudHJ1bWJvd3lnLWJ1dHRvbi1wYW5lIGJ1dHRvbi50cnVtYm93eWctdGV4dHVhbC1idXR0b24ge1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICBsaW5lLWhlaWdodDogMzVweDtcbiAgICAgIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICAgICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAgICAgICAgIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgICAgICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7IH1cbiAgLnRydW1ib3d5Zy1idXR0b24tcGFuZS50cnVtYm93eWctZGlzYWJsZSBidXR0b246bm90KC50cnVtYm93eWctbm90LWRpc2FibGUpOm5vdCgudHJ1bWJvd3lnLWFjdGl2ZSksXG4gIC50cnVtYm93eWctYnV0dG9uLXBhbmUgYnV0dG9uLnRydW1ib3d5Zy1kaXNhYmxlLFxuICAudHJ1bWJvd3lnLWRpc2FibGVkIC50cnVtYm93eWctYnV0dG9uLXBhbmUgYnV0dG9uOm5vdCgudHJ1bWJvd3lnLW5vdC1kaXNhYmxlKTpub3QoLnRydW1ib3d5Zy12aWV3SFRNTC1idXR0b24pIHtcbiAgICBvcGFjaXR5OiAwLjI7XG4gICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lOyB9XG4gIC50cnVtYm93eWctYnV0dG9uLXBhbmUudHJ1bWJvd3lnLWRpc2FibGUgLnRydW1ib3d5Zy1idXR0b24tZ3JvdXA6OmJlZm9yZSxcbiAgLnRydW1ib3d5Zy1kaXNhYmxlZCAudHJ1bWJvd3lnLWJ1dHRvbi1wYW5lIC50cnVtYm93eWctYnV0dG9uLWdyb3VwOjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQ6ICNlM2U5ZWI7IH1cbiAgLnRydW1ib3d5Zy1idXR0b24tcGFuZSBidXR0b246bm90KC50cnVtYm93eWctZGlzYWJsZSk6aG92ZXIsXG4gIC50cnVtYm93eWctYnV0dG9uLXBhbmUgYnV0dG9uOm5vdCgudHJ1bWJvd3lnLWRpc2FibGUpOmZvY3VzLFxuICAudHJ1bWJvd3lnLWJ1dHRvbi1wYW5lIGJ1dHRvbi50cnVtYm93eWctYWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGO1xuICAgIG91dGxpbmU6IG5vbmU7IH1cbiAgLnRydW1ib3d5Zy1idXR0b24tcGFuZSAudHJ1bWJvd3lnLW9wZW4tZHJvcGRvd246OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjb250ZW50OiBcIiBcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAyNXB4O1xuICAgIHJpZ2h0OiAzcHg7XG4gICAgaGVpZ2h0OiAwO1xuICAgIHdpZHRoOiAwO1xuICAgIGJvcmRlcjogM3B4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci10b3AtY29sb3I6ICM1NTU7IH1cbiAgLnRydW1ib3d5Zy1idXR0b24tcGFuZSAudHJ1bWJvd3lnLW9wZW4tZHJvcGRvd24udHJ1bWJvd3lnLXRleHR1YWwtYnV0dG9uIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDEwcHggIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxOHB4ICFpbXBvcnRhbnQ7IH1cbiAgICAudHJ1bWJvd3lnLWJ1dHRvbi1wYW5lIC50cnVtYm93eWctb3Blbi1kcm9wZG93bi50cnVtYm93eWctdGV4dHVhbC1idXR0b246OmFmdGVyIHtcbiAgICAgIHRvcDogMTdweDtcbiAgICAgIHJpZ2h0OiA3cHg7IH1cbiAgLnRydW1ib3d5Zy1idXR0b24tcGFuZSAudHJ1bWJvd3lnLXJpZ2h0IHtcbiAgICBmbG9hdDogcmlnaHQ7IH1cblxuLnRydW1ib3d5Zy1kcm9wZG93biB7XG4gIG1heC13aWR0aDogMzAwcHg7XG4gIG1heC1oZWlnaHQ6IDI1MHB4O1xuICBvdmVyZmxvdy15OiBhdXRvO1xuICBvdmVyZmxvdy14OiBoaWRkZW47XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlY2YwZjE7XG4gIHBhZGRpbmc6IDVweCAwO1xuICBib3JkZXItdG9wOiBub25lO1xuICBiYWNrZ3JvdW5kOiAjRkZGO1xuICBtYXJnaW4tbGVmdDogLTFweDtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiByZ2JhKDAsIDAsIDAsIDAuMSkgMCAycHggM3B4O1xuICAgICAgICAgIGJveC1zaGFkb3c6IHJnYmEoMCwgMCwgMCwgMC4xKSAwIDJweCAzcHg7XG4gIHotaW5kZXg6IDEyOyB9XG4gIC50cnVtYm93eWctZHJvcGRvd24gYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDM1cHg7XG4gICAgbGluZS1oZWlnaHQ6IDM1cHg7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGJhY2tncm91bmQ6ICNGRkY7XG4gICAgcGFkZGluZzogMCAyMHB4IDAgMTBweDtcbiAgICBjb2xvcjogIzMzMyAhaW1wb3J0YW50O1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBmb250LXNpemU6IDE1cHg7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMTUwbXM7XG4gICAgLW8tdHJhbnNpdGlvbjogYWxsIDE1MG1zO1xuICAgIHRyYW5zaXRpb246IGFsbCAxNTBtczsgfVxuICAgIC50cnVtYm93eWctZHJvcGRvd24gYnV0dG9uOmhvdmVyLCAudHJ1bWJvd3lnLWRyb3Bkb3duIGJ1dHRvbjpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kOiAjZWNmMGYxOyB9XG4gICAgLnRydW1ib3d5Zy1kcm9wZG93biBidXR0b24gc3ZnIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxNHB4OyB9XG5cbi8qIE1vZGFsIGJveCAqL1xuLnRydW1ib3d5Zy1tb2RhbCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiA1MCU7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICBtYXgtd2lkdGg6IDUyMHB4O1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAzNTBweDtcbiAgei1pbmRleDogMTI7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG4udHJ1bWJvd3lnLW1vZGFsLWJveCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiA1MCU7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICBtYXgtd2lkdGg6IDUwMHB4O1xuICB3aWR0aDogY2FsYygxMDAlIC0gMjBweCk7XG4gIHBhZGRpbmctYm90dG9tOiA0NXB4O1xuICB6LWluZGV4OiAxO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiByZ2JhKDAsIDAsIDAsIDAuMikgMCAycHggM3B4O1xuICAgICAgICAgIGJveC1zaGFkb3c6IHJnYmEoMCwgMCwgMCwgMC4yKSAwIDJweCAzcHg7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsgfVxuICAudHJ1bWJvd3lnLW1vZGFsLWJveCAudHJ1bWJvd3lnLW1vZGFsLXRpdGxlIHtcbiAgICBmb250LXNpemU6IDI0cHg7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgbWFyZ2luOiAwIDAgMjBweDtcbiAgICBwYWRkaW5nOiAxNXB4IDAgMTNweDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0VFRTtcbiAgICBjb2xvcjogIzMzMztcbiAgICBiYWNrZ3JvdW5kOiAjZmJmY2ZjOyB9XG4gIC50cnVtYm93eWctbW9kYWwtYm94IC50cnVtYm93eWctcHJvZ3Jlc3Mge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogM3B4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDU4cHg7IH1cbiAgICAudHJ1bWJvd3lnLW1vZGFsLWJveCAudHJ1bWJvd3lnLXByb2dyZXNzIC50cnVtYm93eWctcHJvZ3Jlc3MtYmFyIHtcbiAgICAgIGJhY2tncm91bmQ6ICMyQkMwNkE7XG4gICAgICB3aWR0aDogMDtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogd2lkdGggMTUwbXMgbGluZWFyO1xuICAgICAgLW8tdHJhbnNpdGlvbjogd2lkdGggMTUwbXMgbGluZWFyO1xuICAgICAgdHJhbnNpdGlvbjogd2lkdGggMTUwbXMgbGluZWFyOyB9XG4gIC50cnVtYm93eWctbW9kYWwtYm94IC50cnVtYm93eWctaW5wdXQtcm93IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luOiAxNXB4IDEycHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI0RFREVERTtcbiAgICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gIC50cnVtYm93eWctbW9kYWwtYm94IC50cnVtYm93eWctaW5wdXQtaW5mb3Mge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMTUwbXM7XG4gICAgLW8tdHJhbnNpdGlvbjogYWxsIDE1MG1zO1xuICAgIHRyYW5zaXRpb246IGFsbCAxNTBtcztcbiAgICB3aWR0aDogMTUwcHg7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI0RFREVERTtcbiAgICBwYWRkaW5nOiAwIDdweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmJmY2ZjO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7IH1cbiAgICAudHJ1bWJvd3lnLW1vZGFsLWJveCAudHJ1bWJvd3lnLWlucHV0LWluZm9zIGxhYmVsIHtcbiAgICAgIGNvbG9yOiAjNjk4NzhmO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIGhlaWdodDogMjdweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyN3B4OyB9XG4gICAgICAudHJ1bWJvd3lnLW1vZGFsLWJveCAudHJ1bWJvd3lnLWlucHV0LWluZm9zIGxhYmVsLCAudHJ1bWJvd3lnLW1vZGFsLWJveCAudHJ1bWJvd3lnLWlucHV0LWluZm9zIGxhYmVsIHNwYW4ge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgaGVpZ2h0OiAyN3B4O1xuICAgICAgICBsaW5lLWhlaWdodDogMjdweDtcbiAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMTUwbXM7XG4gICAgICAgIC1vLXRyYW5zaXRpb246IGFsbCAxNTBtcztcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDE1MG1zOyB9XG4gICAgLnRydW1ib3d5Zy1tb2RhbC1ib3ggLnRydW1ib3d5Zy1pbnB1dC1pbmZvcyAudHJ1bWJvd3lnLW1zZy1lcnJvciB7XG4gICAgICBjb2xvcjogI2U3NGMzYzsgfVxuICAudHJ1bWJvd3lnLW1vZGFsLWJveCAudHJ1bWJvd3lnLWlucHV0LWh0bWwge1xuICAgIHBhZGRpbmc6IDFweCAxcHggMXB4IDE1MnB4OyB9XG4gICAgLnRydW1ib3d5Zy1tb2RhbC1ib3ggLnRydW1ib3d5Zy1pbnB1dC1odG1sLCAudHJ1bWJvd3lnLW1vZGFsLWJveCAudHJ1bWJvd3lnLWlucHV0LWh0bWwgaW5wdXQsIC50cnVtYm93eWctbW9kYWwtYm94IC50cnVtYm93eWctaW5wdXQtaHRtbCB0ZXh0YXJlYSwgLnRydW1ib3d5Zy1tb2RhbC1ib3ggLnRydW1ib3d5Zy1pbnB1dC1odG1sIHNlbGVjdCB7XG4gICAgICBmb250LXNpemU6IDE0cHg7IH1cbiAgICAudHJ1bWJvd3lnLW1vZGFsLWJveCAudHJ1bWJvd3lnLWlucHV0LWh0bWwgaW5wdXQsIC50cnVtYm93eWctbW9kYWwtYm94IC50cnVtYm93eWctaW5wdXQtaHRtbCB0ZXh0YXJlYSwgLnRydW1ib3d5Zy1tb2RhbC1ib3ggLnRydW1ib3d5Zy1pbnB1dC1odG1sIHNlbGVjdCB7XG4gICAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAxNTBtcztcbiAgICAgIC1vLXRyYW5zaXRpb246IGFsbCAxNTBtcztcbiAgICAgIHRyYW5zaXRpb246IGFsbCAxNTBtcztcbiAgICAgIGhlaWdodDogMjdweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyN3B4O1xuICAgICAgYm9yZGVyOiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBwYWRkaW5nOiAwIDdweDsgfVxuICAgICAgLnRydW1ib3d5Zy1tb2RhbC1ib3ggLnRydW1ib3d5Zy1pbnB1dC1odG1sIGlucHV0OmhvdmVyLCAudHJ1bWJvd3lnLW1vZGFsLWJveCAudHJ1bWJvd3lnLWlucHV0LWh0bWwgaW5wdXQ6Zm9jdXMsIC50cnVtYm93eWctbW9kYWwtYm94IC50cnVtYm93eWctaW5wdXQtaHRtbCB0ZXh0YXJlYTpob3ZlciwgLnRydW1ib3d5Zy1tb2RhbC1ib3ggLnRydW1ib3d5Zy1pbnB1dC1odG1sIHRleHRhcmVhOmZvY3VzLCAudHJ1bWJvd3lnLW1vZGFsLWJveCAudHJ1bWJvd3lnLWlucHV0LWh0bWwgc2VsZWN0OmhvdmVyLCAudHJ1bWJvd3lnLW1vZGFsLWJveCAudHJ1bWJvd3lnLWlucHV0LWh0bWwgc2VsZWN0OmZvY3VzIHtcbiAgICAgICAgb3V0bGluZTogMXB4IHNvbGlkICM5NWE1YTY7IH1cbiAgICAgIC50cnVtYm93eWctbW9kYWwtYm94IC50cnVtYm93eWctaW5wdXQtaHRtbCBpbnB1dDpmb2N1cywgLnRydW1ib3d5Zy1tb2RhbC1ib3ggLnRydW1ib3d5Zy1pbnB1dC1odG1sIHRleHRhcmVhOmZvY3VzLCAudHJ1bWJvd3lnLW1vZGFsLWJveCAudHJ1bWJvd3lnLWlucHV0LWh0bWwgc2VsZWN0OmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZDogI2ZiZmNmYzsgfVxuICAgIC50cnVtYm93eWctbW9kYWwtYm94IC50cnVtYm93eWctaW5wdXQtaHRtbCBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAgICAgd2lkdGg6IDE2cHg7XG4gICAgICBoZWlnaHQ6IDE2cHg7XG4gICAgICBwYWRkaW5nOiAwOyB9XG4gICAgLnRydW1ib3d5Zy1tb2RhbC1ib3ggLnRydW1ib3d5Zy1pbnB1dC1odG1sLXdpdGgtY2hlY2tib3gge1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgIHBhZGRpbmc6IDNweCAxcHggMXB4IDNweDsgfVxuICAudHJ1bWJvd3lnLW1vZGFsLWJveCAudHJ1bWJvd3lnLWlucHV0LWVycm9yIGlucHV0LCAudHJ1bWJvd3lnLW1vZGFsLWJveCAudHJ1bWJvd3lnLWlucHV0LWVycm9yIHNlbGVjdCwgLnRydW1ib3d5Zy1tb2RhbC1ib3ggLnRydW1ib3d5Zy1pbnB1dC1lcnJvciB0ZXh0YXJlYSB7XG4gICAgb3V0bGluZTogMXB4IHNvbGlkICNlNzRjM2M7IH1cbiAgLnRydW1ib3d5Zy1tb2RhbC1ib3ggLnRydW1ib3d5Zy1pbnB1dC1lcnJvciAudHJ1bWJvd3lnLWlucHV0LWluZm9zIGxhYmVsIHNwYW46Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi10b3A6IC0yN3B4OyB9XG4gIC50cnVtYm93eWctbW9kYWwtYm94IC5lcnJvciB7XG4gICAgbWFyZ2luLXRvcDogMjVweDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjb2xvcjogcmVkOyB9XG4gIC50cnVtYm93eWctbW9kYWwtYm94IC50cnVtYm93eWctbW9kYWwtYnV0dG9uIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAxMHB4O1xuICAgIHJpZ2h0OiAwO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBjb2xvcjogI0ZGRjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwcHg7XG4gICAgaGVpZ2h0OiAzNXB4O1xuICAgIGxpbmUtaGVpZ2h0OiAzM3B4O1xuICAgIG1hcmdpbjogMCAxMHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMzMzM7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBmb250LWZhbWlseTogXCJUcmVidWNoZXQgTVNcIiwgSGVsdmV0aWNhLCBWZXJkYW5hLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAxNTBtcztcbiAgICAtby10cmFuc2l0aW9uOiBhbGwgMTUwbXM7XG4gICAgdHJhbnNpdGlvbjogYWxsIDE1MG1zOyB9XG4gICAgLnRydW1ib3d5Zy1tb2RhbC1ib3ggLnRydW1ib3d5Zy1tb2RhbC1idXR0b24udHJ1bWJvd3lnLW1vZGFsLXN1Ym1pdCB7XG4gICAgICByaWdodDogMTEwcHg7XG4gICAgICBiYWNrZ3JvdW5kOiAjMmJjMDZhOyB9XG4gICAgICAudHJ1bWJvd3lnLW1vZGFsLWJveCAudHJ1bWJvd3lnLW1vZGFsLWJ1dHRvbi50cnVtYm93eWctbW9kYWwtc3VibWl0OmhvdmVyLCAudHJ1bWJvd3lnLW1vZGFsLWJveCAudHJ1bWJvd3lnLW1vZGFsLWJ1dHRvbi50cnVtYm93eWctbW9kYWwtc3VibWl0OmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZDogIzQwZDQ3ZTtcbiAgICAgICAgb3V0bGluZTogbm9uZTsgfVxuICAgICAgLnRydW1ib3d5Zy1tb2RhbC1ib3ggLnRydW1ib3d5Zy1tb2RhbC1idXR0b24udHJ1bWJvd3lnLW1vZGFsLXN1Ym1pdDphY3RpdmUge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjMjVhMjVhOyB9XG4gICAgLnRydW1ib3d5Zy1tb2RhbC1ib3ggLnRydW1ib3d5Zy1tb2RhbC1idXR0b24udHJ1bWJvd3lnLW1vZGFsLXJlc2V0IHtcbiAgICAgIGNvbG9yOiAjNTU1O1xuICAgICAgYmFja2dyb3VuZDogI2U2ZTZlNjsgfVxuICAgICAgLnRydW1ib3d5Zy1tb2RhbC1ib3ggLnRydW1ib3d5Zy1tb2RhbC1idXR0b24udHJ1bWJvd3lnLW1vZGFsLXJlc2V0OmhvdmVyLCAudHJ1bWJvd3lnLW1vZGFsLWJveCAudHJ1bWJvd3lnLW1vZGFsLWJ1dHRvbi50cnVtYm93eWctbW9kYWwtcmVzZXQ6Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZmJmYmZiO1xuICAgICAgICBvdXRsaW5lOiBub25lOyB9XG4gICAgICAudHJ1bWJvd3lnLW1vZGFsLWJveCAudHJ1bWJvd3lnLW1vZGFsLWJ1dHRvbi50cnVtYm93eWctbW9kYWwtcmVzZXQ6YWN0aXZlIHtcbiAgICAgICAgYmFja2dyb3VuZDogI2Q1ZDVkNTsgfVxuXG4udHJ1bWJvd3lnLW92ZXJsYXkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogMTAwJTtcbiAgbGVmdDogMDtcbiAgZGlzcGxheTogbm9uZTtcbiAgdG9wOiAwO1xuICB6LWluZGV4OiAxMDsgfVxuXG4vKipcbiAqIEZ1bGxzY3JlZW5cbiAqL1xuYm9keS50cnVtYm93eWctYm9keS1mdWxsc2NyZWVuIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG4udHJ1bWJvd3lnLWZ1bGxzY3JlZW4ge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICB6LWluZGV4OiA5OTk5OTsgfVxuICAudHJ1bWJvd3lnLWZ1bGxzY3JlZW4udHJ1bWJvd3lnLWJveCxcbiAgLnRydW1ib3d5Zy1mdWxsc2NyZWVuIC50cnVtYm93eWctZWRpdG9yIHtcbiAgICBib3JkZXI6IG5vbmU7IH1cbiAgLnRydW1ib3d5Zy1mdWxsc2NyZWVuIC50cnVtYm93eWctZWRpdG9yLFxuICAudHJ1bWJvd3lnLWZ1bGxzY3JlZW4gLnRydW1ib3d5Zy10ZXh0YXJlYSB7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAzN3B4KSAhaW1wb3J0YW50O1xuICAgIG92ZXJmbG93OiBhdXRvOyB9XG4gIC50cnVtYm93eWctZnVsbHNjcmVlbiAudHJ1bWJvd3lnLW92ZXJsYXkge1xuICAgIGhlaWdodDogMTAwJSAhaW1wb3J0YW50OyB9XG4gIC50cnVtYm93eWctZnVsbHNjcmVlbiAudHJ1bWJvd3lnLWJ1dHRvbi1ncm91cCAudHJ1bWJvd3lnLWZ1bGxzY3JlZW4tYnV0dG9uIHN2ZyB7XG4gICAgY29sb3I6ICMyMjI7XG4gICAgZmlsbDogdHJhbnNwYXJlbnQ7IH1cblxuLnRydW1ib3d5Zy1lZGl0b3Ige1xuICAvKlxuICAgICAqIGxzZXQgZm9yIHJlc2V0Q3NzIG9wdGlvblxuICAgICAqLyB9XG4gIC50cnVtYm93eWctZWRpdG9yIG9iamVjdCxcbiAgLnRydW1ib3d5Zy1lZGl0b3IgZW1iZWQsXG4gIC50cnVtYm93eWctZWRpdG9yIHZpZGVvLFxuICAudHJ1bWJvd3lnLWVkaXRvciBpbWcge1xuICAgIG1heC13aWR0aDogMTAwJTsgfVxuICAudHJ1bWJvd3lnLWVkaXRvciB2aWRlbyxcbiAgLnRydW1ib3d5Zy1lZGl0b3IgaW1nIHtcbiAgICBoZWlnaHQ6IGF1dG87IH1cbiAgLnRydW1ib3d5Zy1lZGl0b3IgaW1nIHtcbiAgICBjdXJzb3I6IG1vdmU7IH1cbiAgLnRydW1ib3d5Zy1lZGl0b3IgY2FudmFzOmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lOyB9XG4gIC50cnVtYm93eWctZWRpdG9yLnRydW1ib3d5Zy1yZXNldC1jc3Mge1xuICAgIGJhY2tncm91bmQ6ICNGRUZFRkUgIWltcG9ydGFudDtcbiAgICBmb250LWZhbWlseTogXCJUcmVidWNoZXQgTVNcIiwgSGVsdmV0aWNhLCBWZXJkYW5hLCBzYW5zLXNlcmlmICFpbXBvcnRhbnQ7XG4gICAgZm9udC1zaXplOiAxNHB4ICFpbXBvcnRhbnQ7XG4gICAgbGluZS1oZWlnaHQ6IDEuNDVlbSAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAjMzMzOyB9XG4gICAgLnRydW1ib3d5Zy1lZGl0b3IudHJ1bWJvd3lnLXJlc2V0LWNzcyBhIHtcbiAgICAgIGNvbG9yOiAjMTVjICFpbXBvcnRhbnQ7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSAhaW1wb3J0YW50OyB9XG4gICAgLnRydW1ib3d5Zy1lZGl0b3IudHJ1bWJvd3lnLXJlc2V0LWNzcyBkaXYsXG4gICAgLnRydW1ib3d5Zy1lZGl0b3IudHJ1bWJvd3lnLXJlc2V0LWNzcyBwLFxuICAgIC50cnVtYm93eWctZWRpdG9yLnRydW1ib3d5Zy1yZXNldC1jc3MgdWwsXG4gICAgLnRydW1ib3d5Zy1lZGl0b3IudHJ1bWJvd3lnLXJlc2V0LWNzcyBvbCxcbiAgICAudHJ1bWJvd3lnLWVkaXRvci50cnVtYm93eWctcmVzZXQtY3NzIGJsb2NrcXVvdGUge1xuICAgICAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIGJhY2tncm91bmQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTVweCAhaW1wb3J0YW50O1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNGVtICFpbXBvcnRhbnQ7XG4gICAgICBmb250LWZhbWlseTogXCJUcmVidWNoZXQgTVNcIiwgSGVsdmV0aWNhLCBWZXJkYW5hLCBzYW5zLXNlcmlmICFpbXBvcnRhbnQ7XG4gICAgICBmb250LXNpemU6IDE0cHggIWltcG9ydGFudDtcbiAgICAgIGJvcmRlcjogbm9uZTsgfVxuICAgIC50cnVtYm93eWctZWRpdG9yLnRydW1ib3d5Zy1yZXNldC1jc3MgaWZyYW1lLFxuICAgIC50cnVtYm93eWctZWRpdG9yLnRydW1ib3d5Zy1yZXNldC1jc3Mgb2JqZWN0LFxuICAgIC50cnVtYm93eWctZWRpdG9yLnRydW1ib3d5Zy1yZXNldC1jc3MgaHIge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTVweCAhaW1wb3J0YW50OyB9XG4gICAgLnRydW1ib3d5Zy1lZGl0b3IudHJ1bWJvd3lnLXJlc2V0LWNzcyBibG9ja3F1b3RlIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAzMnB4ICFpbXBvcnRhbnQ7XG4gICAgICBmb250LXN0eWxlOiBpdGFsaWMgIWltcG9ydGFudDtcbiAgICAgIGNvbG9yOiAjNTU1OyB9XG4gICAgLnRydW1ib3d5Zy1lZGl0b3IudHJ1bWJvd3lnLXJlc2V0LWNzcyB1bCB7XG4gICAgICBsaXN0LXN0eWxlOiBkaXNjOyB9XG4gICAgLnRydW1ib3d5Zy1lZGl0b3IudHJ1bWJvd3lnLXJlc2V0LWNzcyBvbCB7XG4gICAgICBsaXN0LXN0eWxlOiBkZWNpbWFsOyB9XG4gICAgLnRydW1ib3d5Zy1lZGl0b3IudHJ1bWJvd3lnLXJlc2V0LWNzcyB1bCxcbiAgICAudHJ1bWJvd3lnLWVkaXRvci50cnVtYm93eWctcmVzZXQtY3NzIG9sIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMjBweCAhaW1wb3J0YW50OyB9XG4gICAgLnRydW1ib3d5Zy1lZGl0b3IudHJ1bWJvd3lnLXJlc2V0LWNzcyB1bCB1bCxcbiAgICAudHJ1bWJvd3lnLWVkaXRvci50cnVtYm93eWctcmVzZXQtY3NzIG9sIG9sLFxuICAgIC50cnVtYm93eWctZWRpdG9yLnRydW1ib3d5Zy1yZXNldC1jc3MgdWwgb2wsXG4gICAgLnRydW1ib3d5Zy1lZGl0b3IudHJ1bWJvd3lnLXJlc2V0LWNzcyBvbCB1bCB7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBtYXJnaW46IDJweCAhaW1wb3J0YW50O1xuICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgICAgcGFkZGluZy1sZWZ0OiAyNHB4ICFpbXBvcnRhbnQ7IH1cbiAgICAudHJ1bWJvd3lnLWVkaXRvci50cnVtYm93eWctcmVzZXQtY3NzIGhyIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgI0NDQzsgfVxuICAgIC50cnVtYm93eWctZWRpdG9yLnRydW1ib3d5Zy1yZXNldC1jc3MgaDEsXG4gICAgLnRydW1ib3d5Zy1lZGl0b3IudHJ1bWJvd3lnLXJlc2V0LWNzcyBoMixcbiAgICAudHJ1bWJvd3lnLWVkaXRvci50cnVtYm93eWctcmVzZXQtY3NzIGgzLFxuICAgIC50cnVtYm93eWctZWRpdG9yLnRydW1ib3d5Zy1yZXNldC1jc3MgaDQge1xuICAgICAgY29sb3I6ICMxMTE7XG4gICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgICBmb250LXdlaWdodDogYm9sZDsgfVxuICAgIC50cnVtYm93eWctZWRpdG9yLnRydW1ib3d5Zy1yZXNldC1jc3MgaDEge1xuICAgICAgZm9udC1zaXplOiAzMnB4ICFpbXBvcnRhbnQ7XG4gICAgICBsaW5lLWhlaWdodDogMzhweCAhaW1wb3J0YW50O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjBweCAhaW1wb3J0YW50OyB9XG4gICAgLnRydW1ib3d5Zy1lZGl0b3IudHJ1bWJvd3lnLXJlc2V0LWNzcyBoMiB7XG4gICAgICBmb250LXNpemU6IDI2cHggIWltcG9ydGFudDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAzNHB4ICFpbXBvcnRhbnQ7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxNXB4ICFpbXBvcnRhbnQ7IH1cbiAgICAudHJ1bWJvd3lnLWVkaXRvci50cnVtYm93eWctcmVzZXQtY3NzIGgzIHtcbiAgICAgIGZvbnQtc2l6ZTogMjJweCAhaW1wb3J0YW50O1xuICAgICAgbGluZS1oZWlnaHQ6IDI4cHggIWltcG9ydGFudDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDdweCAhaW1wb3J0YW50OyB9XG4gICAgLnRydW1ib3d5Zy1lZGl0b3IudHJ1bWJvd3lnLXJlc2V0LWNzcyBoNCB7XG4gICAgICBmb250LXNpemU6IDE2cHggIWltcG9ydGFudDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyMnB4ICFpbXBvcnRhbnQ7XG4gICAgICBtYXJnaW4tYm90dG9tOiA3cHggIWltcG9ydGFudDsgfVxuXG4vKlxuICogRGFyayB0aGVtZVxuICovXG4udHJ1bWJvd3lnLWRhcmsgLnRydW1ib3d5Zy10ZXh0YXJlYSB7XG4gIGJhY2tncm91bmQ6ICMxMTE7XG4gIGNvbG9yOiAjZGRkOyB9XG5cbi50cnVtYm93eWctZGFyayAudHJ1bWJvd3lnLWJveCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICMzNDM0MzQ7IH1cbiAgLnRydW1ib3d5Zy1kYXJrIC50cnVtYm93eWctYm94LnRydW1ib3d5Zy1mdWxsc2NyZWVuIHtcbiAgICBiYWNrZ3JvdW5kOiAjMTExOyB9XG4gIC50cnVtYm93eWctZGFyayAudHJ1bWJvd3lnLWJveC50cnVtYm93eWctYm94LWJsdXIgLnRydW1ib3d5Zy1lZGl0b3IgKiwgLnRydW1ib3d5Zy1kYXJrIC50cnVtYm93eWctYm94LnRydW1ib3d5Zy1ib3gtYmx1ciAudHJ1bWJvd3lnLWVkaXRvcjo6YmVmb3JlIHtcbiAgICB0ZXh0LXNoYWRvdzogMCAwIDdweCAjY2NjOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMCBcXDAgKSB7XG4gICAgICAudHJ1bWJvd3lnLWRhcmsgLnRydW1ib3d5Zy1ib3gudHJ1bWJvd3lnLWJveC1ibHVyIC50cnVtYm93eWctZWRpdG9yICosIC50cnVtYm93eWctZGFyayAudHJ1bWJvd3lnLWJveC50cnVtYm93eWctYm94LWJsdXIgLnRydW1ib3d5Zy1lZGl0b3I6OmJlZm9yZSB7XG4gICAgICAgIGNvbG9yOiByZ2JhKDIwLCAyMCwgMjAsIDAuNikgIWltcG9ydGFudDsgfSB9XG4gICAgQHN1cHBvcnRzICgtbXMtYWNjZWxlcmF0b3I6IHRydWUpIHtcbiAgICAgIC50cnVtYm93eWctZGFyayAudHJ1bWJvd3lnLWJveC50cnVtYm93eWctYm94LWJsdXIgLnRydW1ib3d5Zy1lZGl0b3IgKiwgLnRydW1ib3d5Zy1kYXJrIC50cnVtYm93eWctYm94LnRydW1ib3d5Zy1ib3gtYmx1ciAudHJ1bWJvd3lnLWVkaXRvcjo6YmVmb3JlIHtcbiAgICAgICAgY29sb3I6IHJnYmEoMjAsIDIwLCAyMCwgMC42KSAhaW1wb3J0YW50OyB9IH1cbiAgLnRydW1ib3d5Zy1kYXJrIC50cnVtYm93eWctYm94IHN2ZyB7XG4gICAgZmlsbDogI2VjZjBmMTtcbiAgICBjb2xvcjogI2VjZjBmMTsgfVxuXG4udHJ1bWJvd3lnLWRhcmsgLnRydW1ib3d5Zy1idXR0b24tcGFuZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyMjI7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6ICMzNDM0MzQ7IH1cbiAgLnRydW1ib3d5Zy1kYXJrIC50cnVtYm93eWctYnV0dG9uLXBhbmU6OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiAjMzQzNDM0OyB9XG4gIC50cnVtYm93eWctZGFyayAudHJ1bWJvd3lnLWJ1dHRvbi1wYW5lIC50cnVtYm93eWctYnV0dG9uLWdyb3VwOm5vdCg6ZW1wdHkpOjphZnRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzM0MzQzNDsgfVxuICAudHJ1bWJvd3lnLWRhcmsgLnRydW1ib3d5Zy1idXR0b24tcGFuZSAudHJ1bWJvd3lnLWJ1dHRvbi1ncm91cDpub3QoOmVtcHR5KSAudHJ1bWJvd3lnLWZ1bGxzY3JlZW4tYnV0dG9uIHN2ZyB7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gIC50cnVtYm93eWctZGFyayAudHJ1bWJvd3lnLWJ1dHRvbi1wYW5lLnRydW1ib3d5Zy1kaXNhYmxlIC50cnVtYm93eWctYnV0dG9uLWdyb3VwOjphZnRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzJhMmEyYTsgfVxuICAudHJ1bWJvd3lnLWRhcmsgLnRydW1ib3d5Zy1idXR0b24tcGFuZSBidXR0b246bm90KC50cnVtYm93eWctZGlzYWJsZSk6aG92ZXIsXG4gIC50cnVtYm93eWctZGFyayAudHJ1bWJvd3lnLWJ1dHRvbi1wYW5lIGJ1dHRvbjpub3QoLnRydW1ib3d5Zy1kaXNhYmxlKTpmb2N1cyxcbiAgLnRydW1ib3d5Zy1kYXJrIC50cnVtYm93eWctYnV0dG9uLXBhbmUgYnV0dG9uLnRydW1ib3d5Zy1hY3RpdmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMzMzM7IH1cbiAgLnRydW1ib3d5Zy1kYXJrIC50cnVtYm93eWctYnV0dG9uLXBhbmUgLnRydW1ib3d5Zy1vcGVuLWRyb3Bkb3duOjphZnRlciB7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogI2ZmZjsgfVxuXG4udHJ1bWJvd3lnLWRhcmsgLnRydW1ib3d5Zy1mdWxsc2NyZWVuIC50cnVtYm93eWctYnV0dG9uLXBhbmUgLnRydW1ib3d5Zy1idXR0b24tZ3JvdXA6bm90KDplbXB0eSkgLnRydW1ib3d5Zy1mdWxsc2NyZWVuLWJ1dHRvbiBzdmcge1xuICBjb2xvcjogI2VjZjBmMTtcbiAgZmlsbDogdHJhbnNwYXJlbnQ7IH1cblxuLnRydW1ib3d5Zy1kYXJrIC50cnVtYm93eWctZHJvcGRvd24ge1xuICBib3JkZXItY29sb3I6ICMyMjI7XG4gIGJhY2tncm91bmQ6ICMzMzM7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogcmdiYSgwLCAwLCAwLCAwLjMpIDAgMnB4IDNweDtcbiAgICAgICAgICBib3gtc2hhZG93OiByZ2JhKDAsIDAsIDAsIDAuMykgMCAycHggM3B4OyB9XG4gIC50cnVtYm93eWctZGFyayAudHJ1bWJvd3lnLWRyb3Bkb3duIGJ1dHRvbiB7XG4gICAgYmFja2dyb3VuZDogIzMzMztcbiAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50OyB9XG4gICAgLnRydW1ib3d5Zy1kYXJrIC50cnVtYm93eWctZHJvcGRvd24gYnV0dG9uOmhvdmVyLCAudHJ1bWJvd3lnLWRhcmsgLnRydW1ib3d5Zy1kcm9wZG93biBidXR0b246Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZDogIzIyMjsgfVxuXG4udHJ1bWJvd3lnLWRhcmsgLnRydW1ib3d5Zy1tb2RhbC1ib3gge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjIyOyB9XG4gIC50cnVtYm93eWctZGFyayAudHJ1bWJvd3lnLW1vZGFsLWJveCAudHJ1bWJvd3lnLW1vZGFsLXRpdGxlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzU1NTtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBiYWNrZ3JvdW5kOiAjM2MzYzNjOyB9XG4gIC50cnVtYm93eWctZGFyayAudHJ1bWJvd3lnLW1vZGFsLWJveCBsYWJlbCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbjogMTVweCAxMnB4O1xuICAgIGhlaWdodDogMjdweDtcbiAgICBsaW5lLWhlaWdodDogMjdweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gICAgLnRydW1ib3d5Zy1kYXJrIC50cnVtYm93eWctbW9kYWwtYm94IGxhYmVsIC50cnVtYm93eWctaW5wdXQtaW5mb3Mgc3BhbiB7XG4gICAgICBjb2xvcjogI2VlZTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMyZjJmMmY7XG4gICAgICBib3JkZXItY29sb3I6ICMyMjI7IH1cbiAgICAudHJ1bWJvd3lnLWRhcmsgLnRydW1ib3d5Zy1tb2RhbC1ib3ggbGFiZWwgLnRydW1ib3d5Zy1pbnB1dC1pbmZvcyBzcGFuLnRydW1ib3d5Zy1tc2ctZXJyb3Ige1xuICAgICAgY29sb3I6ICNlNzRjM2M7IH1cbiAgICAudHJ1bWJvd3lnLWRhcmsgLnRydW1ib3d5Zy1tb2RhbC1ib3ggbGFiZWwudHJ1bWJvd3lnLWlucHV0LWVycm9yIGlucHV0LFxuICAgIC50cnVtYm93eWctZGFyayAudHJ1bWJvd3lnLW1vZGFsLWJveCBsYWJlbC50cnVtYm93eWctaW5wdXQtZXJyb3IgdGV4dGFyZWEge1xuICAgICAgYm9yZGVyLWNvbG9yOiAjZTc0YzNjOyB9XG4gICAgLnRydW1ib3d5Zy1kYXJrIC50cnVtYm93eWctbW9kYWwtYm94IGxhYmVsIGlucHV0IHtcbiAgICAgIGJvcmRlci1jb2xvcjogIzIyMjtcbiAgICAgIGNvbG9yOiAjZWVlO1xuICAgICAgYmFja2dyb3VuZDogIzMzMzsgfVxuICAgICAgLnRydW1ib3d5Zy1kYXJrIC50cnVtYm93eWctbW9kYWwtYm94IGxhYmVsIGlucHV0OmhvdmVyLCAudHJ1bWJvd3lnLWRhcmsgLnRydW1ib3d5Zy1tb2RhbC1ib3ggbGFiZWwgaW5wdXQ6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICM2MjYyNjI7IH1cbiAgICAgIC50cnVtYm93eWctZGFyayAudHJ1bWJvd3lnLW1vZGFsLWJveCBsYWJlbCBpbnB1dDpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMyZjJmMmY7IH1cbiAgLnRydW1ib3d5Zy1kYXJrIC50cnVtYm93eWctbW9kYWwtYm94IC50cnVtYm93eWctbW9kYWwtYnV0dG9uLnRydW1ib3d5Zy1tb2RhbC1zdWJtaXQge1xuICAgIGJhY2tncm91bmQ6ICMxYjc5NDM7IH1cbiAgICAudHJ1bWJvd3lnLWRhcmsgLnRydW1ib3d5Zy1tb2RhbC1ib3ggLnRydW1ib3d5Zy1tb2RhbC1idXR0b24udHJ1bWJvd3lnLW1vZGFsLXN1Ym1pdDpob3ZlciwgLnRydW1ib3d5Zy1kYXJrIC50cnVtYm93eWctbW9kYWwtYm94IC50cnVtYm93eWctbW9kYWwtYnV0dG9uLnRydW1ib3d5Zy1tb2RhbC1zdWJtaXQ6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZDogIzI1YTI1YTsgfVxuICAgIC50cnVtYm93eWctZGFyayAudHJ1bWJvd3lnLW1vZGFsLWJveCAudHJ1bWJvd3lnLW1vZGFsLWJ1dHRvbi50cnVtYm93eWctbW9kYWwtc3VibWl0OmFjdGl2ZSB7XG4gICAgICBiYWNrZ3JvdW5kOiAjMTc2NDM3OyB9XG4gIC50cnVtYm93eWctZGFyayAudHJ1bWJvd3lnLW1vZGFsLWJveCAudHJ1bWJvd3lnLW1vZGFsLWJ1dHRvbi50cnVtYm93eWctbW9kYWwtcmVzZXQge1xuICAgIGJhY2tncm91bmQ6ICMzMzM7XG4gICAgY29sb3I6ICNjY2M7IH1cbiAgICAudHJ1bWJvd3lnLWRhcmsgLnRydW1ib3d5Zy1tb2RhbC1ib3ggLnRydW1ib3d5Zy1tb2RhbC1idXR0b24udHJ1bWJvd3lnLW1vZGFsLXJlc2V0OmhvdmVyLCAudHJ1bWJvd3lnLWRhcmsgLnRydW1ib3d5Zy1tb2RhbC1ib3ggLnRydW1ib3d5Zy1tb2RhbC1idXR0b24udHJ1bWJvd3lnLW1vZGFsLXJlc2V0OmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQ6ICM0NDQ7IH1cbiAgICAudHJ1bWJvd3lnLWRhcmsgLnRydW1ib3d5Zy1tb2RhbC1ib3ggLnRydW1ib3d5Zy1tb2RhbC1idXR0b24udHJ1bWJvd3lnLW1vZGFsLXJlc2V0OmFjdGl2ZSB7XG4gICAgICBiYWNrZ3JvdW5kOiAjMTExOyB9XG5cbi50cnVtYm93eWctZGFyayAudHJ1bWJvd3lnLW92ZXJsYXkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDE1LCAxNSwgMTUsIDAuNik7IH1cbiIsIi5zZWxlY3QyLWNvbnRhaW5lcntib3gtc2l6aW5nOmJvcmRlci1ib3g7ZGlzcGxheTppbmxpbmUtYmxvY2s7bWFyZ2luOjA7cG9zaXRpb246cmVsYXRpdmU7dmVydGljYWwtYWxpZ246bWlkZGxlfS5zZWxlY3QyLWNvbnRhaW5lciAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZXtib3gtc2l6aW5nOmJvcmRlci1ib3g7Y3Vyc29yOnBvaW50ZXI7ZGlzcGxheTpibG9jaztoZWlnaHQ6MjhweDt1c2VyLXNlbGVjdDpub25lOy13ZWJraXQtdXNlci1zZWxlY3Q6bm9uZX0uc2VsZWN0Mi1jb250YWluZXIgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19yZW5kZXJlZHtkaXNwbGF5OmJsb2NrO3BhZGRpbmctbGVmdDo4cHg7cGFkZGluZy1yaWdodDoyMHB4O292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vd3JhcH0uc2VsZWN0Mi1jb250YWluZXIgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19jbGVhcntiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O2JvcmRlcjpub25lO2ZvbnQtc2l6ZToxZW19LnNlbGVjdDItY29udGFpbmVyW2Rpcj1cInJ0bFwiXSAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX3JlbmRlcmVke3BhZGRpbmctcmlnaHQ6OHB4O3BhZGRpbmctbGVmdDoyMHB4fS5zZWxlY3QyLWNvbnRhaW5lciAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxle2JveC1zaXppbmc6Ym9yZGVyLWJveDtjdXJzb3I6cG9pbnRlcjtkaXNwbGF5OmJsb2NrO21pbi1oZWlnaHQ6MzJweDt1c2VyLXNlbGVjdDpub25lOy13ZWJraXQtdXNlci1zZWxlY3Q6bm9uZX0uc2VsZWN0Mi1jb250YWluZXIgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX3JlbmRlcmVke2Rpc3BsYXk6aW5saW5lO2xpc3Qtc3R5bGU6bm9uZTtwYWRkaW5nOjB9LnNlbGVjdDItY29udGFpbmVyIC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUgLnNlbGVjdDItc2VsZWN0aW9uX19jbGVhcntiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O2JvcmRlcjpub25lO2ZvbnQtc2l6ZToxZW19LnNlbGVjdDItY29udGFpbmVyIC5zZWxlY3QyLXNlYXJjaC0taW5saW5lIC5zZWxlY3QyLXNlYXJjaF9fZmllbGR7Ym94LXNpemluZzpib3JkZXItYm94O2JvcmRlcjpub25lO2ZvbnQtc2l6ZToxMDAlO21hcmdpbi10b3A6NXB4O21hcmdpbi1sZWZ0OjVweDtwYWRkaW5nOjA7bWF4LXdpZHRoOjEwMCU7cmVzaXplOm5vbmU7aGVpZ2h0OjE4cHg7dmVydGljYWwtYWxpZ246Ym90dG9tO2ZvbnQtZmFtaWx5OnNhbnMtc2VyaWY7b3ZlcmZsb3c6aGlkZGVuO3dvcmQtYnJlYWs6a2VlcC1hbGx9LnNlbGVjdDItY29udGFpbmVyIC5zZWxlY3QyLXNlYXJjaC0taW5saW5lIC5zZWxlY3QyLXNlYXJjaF9fZmllbGQ6Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b257LXdlYmtpdC1hcHBlYXJhbmNlOm5vbmV9LnNlbGVjdDItZHJvcGRvd257YmFja2dyb3VuZC1jb2xvcjp3aGl0ZTtib3JkZXI6MXB4IHNvbGlkICNhYWE7Ym9yZGVyLXJhZGl1czo0cHg7Ym94LXNpemluZzpib3JkZXItYm94O2Rpc3BsYXk6YmxvY2s7cG9zaXRpb246YWJzb2x1dGU7bGVmdDotMTAwMDAwcHg7d2lkdGg6MTAwJTt6LWluZGV4OjEwNTF9LnNlbGVjdDItcmVzdWx0c3tkaXNwbGF5OmJsb2NrfS5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbnN7bGlzdC1zdHlsZTpub25lO21hcmdpbjowO3BhZGRpbmc6MH0uc2VsZWN0Mi1yZXN1bHRzX19vcHRpb257cGFkZGluZzo2cHg7dXNlci1zZWxlY3Q6bm9uZTstd2Via2l0LXVzZXItc2VsZWN0Om5vbmV9LnNlbGVjdDItcmVzdWx0c19fb3B0aW9uLS1zZWxlY3RhYmxle2N1cnNvcjpwb2ludGVyfS5zZWxlY3QyLWNvbnRhaW5lci0tb3BlbiAuc2VsZWN0Mi1kcm9wZG93bntsZWZ0OjB9LnNlbGVjdDItY29udGFpbmVyLS1vcGVuIC5zZWxlY3QyLWRyb3Bkb3duLS1hYm92ZXtib3JkZXItYm90dG9tOm5vbmU7Ym9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czowO2JvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOjB9LnNlbGVjdDItY29udGFpbmVyLS1vcGVuIC5zZWxlY3QyLWRyb3Bkb3duLS1iZWxvd3tib3JkZXItdG9wOm5vbmU7Ym9yZGVyLXRvcC1sZWZ0LXJhZGl1czowO2JvcmRlci10b3AtcmlnaHQtcmFkaXVzOjB9LnNlbGVjdDItc2VhcmNoLS1kcm9wZG93bntkaXNwbGF5OmJsb2NrO3BhZGRpbmc6NHB4fS5zZWxlY3QyLXNlYXJjaC0tZHJvcGRvd24gLnNlbGVjdDItc2VhcmNoX19maWVsZHtwYWRkaW5nOjRweDt3aWR0aDoxMDAlO2JveC1zaXppbmc6Ym9yZGVyLWJveH0uc2VsZWN0Mi1zZWFyY2gtLWRyb3Bkb3duIC5zZWxlY3QyLXNlYXJjaF9fZmllbGQ6Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b257LXdlYmtpdC1hcHBlYXJhbmNlOm5vbmV9LnNlbGVjdDItc2VhcmNoLS1kcm9wZG93bi5zZWxlY3QyLXNlYXJjaC0taGlkZXtkaXNwbGF5Om5vbmV9LnNlbGVjdDItY2xvc2UtbWFza3tib3JkZXI6MDttYXJnaW46MDtwYWRkaW5nOjA7ZGlzcGxheTpibG9jaztwb3NpdGlvbjpmaXhlZDtsZWZ0OjA7dG9wOjA7bWluLWhlaWdodDoxMDAlO21pbi13aWR0aDoxMDAlO2hlaWdodDphdXRvO3dpZHRoOmF1dG87b3BhY2l0eTowO3otaW5kZXg6OTk7YmFja2dyb3VuZC1jb2xvcjojZmZmO2ZpbHRlcjphbHBoYShvcGFjaXR5PTApfS5zZWxlY3QyLWhpZGRlbi1hY2Nlc3NpYmxle2JvcmRlcjowICFpbXBvcnRhbnQ7Y2xpcDpyZWN0KDAgMCAwIDApICFpbXBvcnRhbnQ7LXdlYmtpdC1jbGlwLXBhdGg6aW5zZXQoNTAlKSAhaW1wb3J0YW50O2NsaXAtcGF0aDppbnNldCg1MCUpICFpbXBvcnRhbnQ7aGVpZ2h0OjFweCAhaW1wb3J0YW50O292ZXJmbG93OmhpZGRlbiAhaW1wb3J0YW50O3BhZGRpbmc6MCAhaW1wb3J0YW50O3Bvc2l0aW9uOmFic29sdXRlICFpbXBvcnRhbnQ7d2lkdGg6MXB4ICFpbXBvcnRhbnQ7d2hpdGUtc3BhY2U6bm93cmFwICFpbXBvcnRhbnR9LnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xle2JhY2tncm91bmQtY29sb3I6I2ZmZjtib3JkZXI6MXB4IHNvbGlkICNhYWE7Ym9yZGVyLXJhZGl1czo0cHh9LnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fcmVuZGVyZWR7Y29sb3I6IzQ0NDtsaW5lLWhlaWdodDoyOHB4fS5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2NsZWFye2N1cnNvcjpwb2ludGVyO2Zsb2F0OnJpZ2h0O2ZvbnQtd2VpZ2h0OmJvbGQ7aGVpZ2h0OjI2cHg7bWFyZ2luLXJpZ2h0OjIwcHg7cGFkZGluZy1yaWdodDowcHh9LnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fcGxhY2Vob2xkZXJ7Y29sb3I6Izk5OX0uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19hcnJvd3toZWlnaHQ6MjZweDtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MXB4O3JpZ2h0OjFweDt3aWR0aDoyMHB4fS5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Fycm93IGJ7Ym9yZGVyLWNvbG9yOiM4ODggdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7Ym9yZGVyLXN0eWxlOnNvbGlkO2JvcmRlci13aWR0aDo1cHggNHB4IDAgNHB4O2hlaWdodDowO2xlZnQ6NTAlO21hcmdpbi1sZWZ0Oi00cHg7bWFyZ2luLXRvcDotMnB4O3Bvc2l0aW9uOmFic29sdXRlO3RvcDo1MCU7d2lkdGg6MH0uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHRbZGlyPVwicnRsXCJdIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2xlYXJ7ZmxvYXQ6bGVmdH0uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHRbZGlyPVwicnRsXCJdIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fYXJyb3d7bGVmdDoxcHg7cmlnaHQ6YXV0b30uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQuc2VsZWN0Mi1jb250YWluZXItLWRpc2FibGVkIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xle2JhY2tncm91bmQtY29sb3I6I2VlZTtjdXJzb3I6ZGVmYXVsdH0uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQuc2VsZWN0Mi1jb250YWluZXItLWRpc2FibGVkIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2xlYXJ7ZGlzcGxheTpub25lfS5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdC5zZWxlY3QyLWNvbnRhaW5lci0tb3BlbiAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Fycm93IGJ7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICM4ODggdHJhbnNwYXJlbnQ7Ym9yZGVyLXdpZHRoOjAgNHB4IDVweCA0cHh9LnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGV7YmFja2dyb3VuZC1jb2xvcjp3aGl0ZTtib3JkZXI6MXB4IHNvbGlkICNhYWE7Ym9yZGVyLXJhZGl1czo0cHg7Y3Vyc29yOnRleHQ7cGFkZGluZy1ib3R0b206NXB4O3BhZGRpbmctcmlnaHQ6NXB4O3Bvc2l0aW9uOnJlbGF0aXZlfS5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlLnNlbGVjdDItc2VsZWN0aW9uLS1jbGVhcmFibGV7cGFkZGluZy1yaWdodDoyNXB4fS5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2xlYXJ7Y3Vyc29yOnBvaW50ZXI7Zm9udC13ZWlnaHQ6Ym9sZDtoZWlnaHQ6MjBweDttYXJnaW4tcmlnaHQ6MTBweDttYXJnaW4tdG9wOjVweDtwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDowO3BhZGRpbmc6MXB4fS5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2hvaWNle2JhY2tncm91bmQtY29sb3I6I2U0ZTRlNDtib3JkZXI6MXB4IHNvbGlkICNhYWE7Ym9yZGVyLXJhZGl1czo0cHg7Ym94LXNpemluZzpib3JkZXItYm94O2Rpc3BsYXk6aW5saW5lLWJsb2NrO21hcmdpbi1sZWZ0OjVweDttYXJnaW4tdG9wOjVweDtwYWRkaW5nOjA7cGFkZGluZy1sZWZ0OjIwcHg7cG9zaXRpb246cmVsYXRpdmU7bWF4LXdpZHRoOjEwMCU7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7dmVydGljYWwtYWxpZ246Ym90dG9tO3doaXRlLXNwYWNlOm5vd3JhcH0uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Nob2ljZV9fZGlzcGxheXtjdXJzb3I6ZGVmYXVsdDtwYWRkaW5nLWxlZnQ6MnB4O3BhZGRpbmctcmlnaHQ6NXB4fS5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2hvaWNlX19yZW1vdmV7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtib3JkZXI6bm9uZTtib3JkZXItcmlnaHQ6MXB4IHNvbGlkICNhYWE7Ym9yZGVyLXRvcC1sZWZ0LXJhZGl1czo0cHg7Ym9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czo0cHg7Y29sb3I6Izk5OTtjdXJzb3I6cG9pbnRlcjtmb250LXNpemU6MWVtO2ZvbnQtd2VpZ2h0OmJvbGQ7cGFkZGluZzowIDRweDtwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0OjA7dG9wOjB9LnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUgLnNlbGVjdDItc2VsZWN0aW9uX19jaG9pY2VfX3JlbW92ZTpob3Zlciwuc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Nob2ljZV9fcmVtb3ZlOmZvY3Vze2JhY2tncm91bmQtY29sb3I6I2YxZjFmMTtjb2xvcjojMzMzO291dGxpbmU6bm9uZX0uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHRbZGlyPVwicnRsXCJdIC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUgLnNlbGVjdDItc2VsZWN0aW9uX19jaG9pY2V7bWFyZ2luLWxlZnQ6NXB4O21hcmdpbi1yaWdodDphdXRvfS5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdFtkaXI9XCJydGxcIl0gLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Nob2ljZV9fZGlzcGxheXtwYWRkaW5nLWxlZnQ6NXB4O3BhZGRpbmctcmlnaHQ6MnB4fS5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdFtkaXI9XCJydGxcIl0gLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Nob2ljZV9fcmVtb3Zle2JvcmRlci1sZWZ0OjFweCBzb2xpZCAjYWFhO2JvcmRlci1yaWdodDpub25lO2JvcmRlci10b3AtbGVmdC1yYWRpdXM6MDtib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOjA7Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6NHB4O2JvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOjRweH0uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHRbZGlyPVwicnRsXCJdIC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUgLnNlbGVjdDItc2VsZWN0aW9uX19jbGVhcntmbG9hdDpsZWZ0O21hcmdpbi1sZWZ0OjEwcHg7bWFyZ2luLXJpZ2h0OmF1dG99LnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0LnNlbGVjdDItY29udGFpbmVyLS1mb2N1cyAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxle2JvcmRlcjpzb2xpZCBibGFjayAxcHg7b3V0bGluZTowfS5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdC5zZWxlY3QyLWNvbnRhaW5lci0tZGlzYWJsZWQgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZXtiYWNrZ3JvdW5kLWNvbG9yOiNlZWU7Y3Vyc29yOmRlZmF1bHR9LnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0LnNlbGVjdDItY29udGFpbmVyLS1kaXNhYmxlZCAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Nob2ljZV9fcmVtb3Zle2Rpc3BsYXk6bm9uZX0uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQuc2VsZWN0Mi1jb250YWluZXItLW9wZW4uc2VsZWN0Mi1jb250YWluZXItLWFib3ZlIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlLC5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdC5zZWxlY3QyLWNvbnRhaW5lci0tb3Blbi5zZWxlY3QyLWNvbnRhaW5lci0tYWJvdmUgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZXtib3JkZXItdG9wLWxlZnQtcmFkaXVzOjA7Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6MH0uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQuc2VsZWN0Mi1jb250YWluZXItLW9wZW4uc2VsZWN0Mi1jb250YWluZXItLWJlbG93IC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlLC5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdC5zZWxlY3QyLWNvbnRhaW5lci0tb3Blbi5zZWxlY3QyLWNvbnRhaW5lci0tYmVsb3cgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZXtib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOjA7Ym9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6MH0uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VhcmNoLS1kcm9wZG93biAuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxke2JvcmRlcjoxcHggc29saWQgI2FhYX0uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VhcmNoLS1pbmxpbmUgLnNlbGVjdDItc2VhcmNoX19maWVsZHtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2JvcmRlcjpub25lO291dGxpbmU6MDtib3gtc2hhZG93Om5vbmU7LXdlYmtpdC1hcHBlYXJhbmNlOnRleHRmaWVsZH0uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItcmVzdWx0cz4uc2VsZWN0Mi1yZXN1bHRzX19vcHRpb25ze21heC1oZWlnaHQ6MjAwcHg7b3ZlcmZsb3cteTphdXRvfS5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gLnNlbGVjdDItcmVzdWx0c19fb3B0aW9ue3BhZGRpbmctbGVmdDoxZW19LnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gLnNlbGVjdDItcmVzdWx0c19fZ3JvdXB7cGFkZGluZy1sZWZ0OjB9LnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gLnNlbGVjdDItcmVzdWx0c19fb3B0aW9ue21hcmdpbi1sZWZ0Oi0xZW07cGFkZGluZy1sZWZ0OjJlbX0uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gLnNlbGVjdDItcmVzdWx0c19fb3B0aW9ue21hcmdpbi1sZWZ0Oi0yZW07cGFkZGluZy1sZWZ0OjNlbX0uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbnttYXJnaW4tbGVmdDotM2VtO3BhZGRpbmctbGVmdDo0ZW19LnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gLnNlbGVjdDItcmVzdWx0c19fb3B0aW9ue21hcmdpbi1sZWZ0Oi00ZW07cGFkZGluZy1sZWZ0OjVlbX0uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gLnNlbGVjdDItcmVzdWx0c19fb3B0aW9ue21hcmdpbi1sZWZ0Oi01ZW07cGFkZGluZy1sZWZ0OjZlbX0uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uLS1ncm91cHtwYWRkaW5nOjB9LnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbi0tZGlzYWJsZWR7Y29sb3I6Izk5OX0uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uLS1zZWxlY3RlZHtiYWNrZ3JvdW5kLWNvbG9yOiNkZGR9LnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbi0taGlnaGxpZ2h0ZWQuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24tLXNlbGVjdGFibGV7YmFja2dyb3VuZC1jb2xvcjojNTg5N2ZiO2NvbG9yOndoaXRlfS5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1yZXN1bHRzX19ncm91cHtjdXJzb3I6ZGVmYXVsdDtkaXNwbGF5OmJsb2NrO3BhZGRpbmc6NnB4fS5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYyAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZXtiYWNrZ3JvdW5kLWNvbG9yOiNmN2Y3Zjc7Ym9yZGVyOjFweCBzb2xpZCAjYWFhO2JvcmRlci1yYWRpdXM6NHB4O291dGxpbmU6MDtiYWNrZ3JvdW5kLWltYWdlOi13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgI2ZmZiA1MCUsICNlZWUgMTAwJSk7YmFja2dyb3VuZC1pbWFnZTotby1saW5lYXItZ3JhZGllbnQodG9wLCAjZmZmIDUwJSwgI2VlZSAxMDAlKTtiYWNrZ3JvdW5kLWltYWdlOmxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICNmZmYgNTAlLCAjZWVlIDEwMCUpO2JhY2tncm91bmQtcmVwZWF0OnJlcGVhdC14O2ZpbHRlcjpwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nI0ZGRkZGRkZGJywgZW5kQ29sb3JzdHI9JyNGRkVFRUVFRScsIEdyYWRpZW50VHlwZT0wKX0uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGU6Zm9jdXN7Ym9yZGVyOjFweCBzb2xpZCAjNTg5N2ZifS5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYyAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX3JlbmRlcmVke2NvbG9yOiM0NDQ7bGluZS1oZWlnaHQ6MjhweH0uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19jbGVhcntjdXJzb3I6cG9pbnRlcjtmbG9hdDpyaWdodDtmb250LXdlaWdodDpib2xkO2hlaWdodDoyNnB4O21hcmdpbi1yaWdodDoyMHB4fS5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYyAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX3BsYWNlaG9sZGVye2NvbG9yOiM5OTl9LnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fYXJyb3d7YmFja2dyb3VuZC1jb2xvcjojZGRkO2JvcmRlcjpub25lO2JvcmRlci1sZWZ0OjFweCBzb2xpZCAjYWFhO2JvcmRlci10b3AtcmlnaHQtcmFkaXVzOjRweDtib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czo0cHg7aGVpZ2h0OjI2cHg7cG9zaXRpb246YWJzb2x1dGU7dG9wOjFweDtyaWdodDoxcHg7d2lkdGg6MjBweDtiYWNrZ3JvdW5kLWltYWdlOi13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgI2VlZSA1MCUsICNjY2MgMTAwJSk7YmFja2dyb3VuZC1pbWFnZTotby1saW5lYXItZ3JhZGllbnQodG9wLCAjZWVlIDUwJSwgI2NjYyAxMDAlKTtiYWNrZ3JvdW5kLWltYWdlOmxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICNlZWUgNTAlLCAjY2NjIDEwMCUpO2JhY2tncm91bmQtcmVwZWF0OnJlcGVhdC14O2ZpbHRlcjpwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nI0ZGRUVFRUVFJywgZW5kQ29sb3JzdHI9JyNGRkNDQ0NDQycsIEdyYWRpZW50VHlwZT0wKX0uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19hcnJvdyBie2JvcmRlci1jb2xvcjojODg4IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O2JvcmRlci1zdHlsZTpzb2xpZDtib3JkZXItd2lkdGg6NXB4IDRweCAwIDRweDtoZWlnaHQ6MDtsZWZ0OjUwJTttYXJnaW4tbGVmdDotNHB4O21hcmdpbi10b3A6LTJweDtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6NTAlO3dpZHRoOjB9LnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljW2Rpcj1cInJ0bFwiXSAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2NsZWFye2Zsb2F0OmxlZnR9LnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljW2Rpcj1cInJ0bFwiXSAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Fycm93e2JvcmRlcjpub25lO2JvcmRlci1yaWdodDoxcHggc29saWQgI2FhYTtib3JkZXItcmFkaXVzOjA7Ym9yZGVyLXRvcC1sZWZ0LXJhZGl1czo0cHg7Ym9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czo0cHg7bGVmdDoxcHg7cmlnaHQ6YXV0b30uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMuc2VsZWN0Mi1jb250YWluZXItLW9wZW4gLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGV7Ym9yZGVyOjFweCBzb2xpZCAjNTg5N2ZifS5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYy5zZWxlY3QyLWNvbnRhaW5lci0tb3BlbiAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Fycm93e2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7Ym9yZGVyOm5vbmV9LnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljLnNlbGVjdDItY29udGFpbmVyLS1vcGVuIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fYXJyb3cgYntib3JkZXItY29sb3I6dHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgIzg4OCB0cmFuc3BhcmVudDtib3JkZXItd2lkdGg6MCA0cHggNXB4IDRweH0uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMuc2VsZWN0Mi1jb250YWluZXItLW9wZW4uc2VsZWN0Mi1jb250YWluZXItLWFib3ZlIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xle2JvcmRlci10b3A6bm9uZTtib3JkZXItdG9wLWxlZnQtcmFkaXVzOjA7Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6MDtiYWNrZ3JvdW5kLWltYWdlOi13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgI2ZmZiAwJSwgI2VlZSA1MCUpO2JhY2tncm91bmQtaW1hZ2U6LW8tbGluZWFyLWdyYWRpZW50KHRvcCwgI2ZmZiAwJSwgI2VlZSA1MCUpO2JhY2tncm91bmQtaW1hZ2U6bGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgI2ZmZiAwJSwgI2VlZSA1MCUpO2JhY2tncm91bmQtcmVwZWF0OnJlcGVhdC14O2ZpbHRlcjpwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nI0ZGRkZGRkZGJywgZW5kQ29sb3JzdHI9JyNGRkVFRUVFRScsIEdyYWRpZW50VHlwZT0wKX0uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMuc2VsZWN0Mi1jb250YWluZXItLW9wZW4uc2VsZWN0Mi1jb250YWluZXItLWJlbG93IC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xle2JvcmRlci1ib3R0b206bm9uZTtib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOjA7Ym9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6MDtiYWNrZ3JvdW5kLWltYWdlOi13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgI2VlZSA1MCUsICNmZmYgMTAwJSk7YmFja2dyb3VuZC1pbWFnZTotby1saW5lYXItZ3JhZGllbnQodG9wLCAjZWVlIDUwJSwgI2ZmZiAxMDAlKTtiYWNrZ3JvdW5kLWltYWdlOmxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICNlZWUgNTAlLCAjZmZmIDEwMCUpO2JhY2tncm91bmQtcmVwZWF0OnJlcGVhdC14O2ZpbHRlcjpwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nI0ZGRUVFRUVFJywgZW5kQ29sb3JzdHI9JyNGRkZGRkZGRicsIEdyYWRpZW50VHlwZT0wKX0uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZXtiYWNrZ3JvdW5kLWNvbG9yOndoaXRlO2JvcmRlcjoxcHggc29saWQgI2FhYTtib3JkZXItcmFkaXVzOjRweDtjdXJzb3I6dGV4dDtvdXRsaW5lOjA7cGFkZGluZy1ib3R0b206NXB4O3BhZGRpbmctcmlnaHQ6NXB4fS5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYyAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlOmZvY3Vze2JvcmRlcjoxcHggc29saWQgIzU4OTdmYn0uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2NsZWFye2Rpc3BsYXk6bm9uZX0uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Nob2ljZXtiYWNrZ3JvdW5kLWNvbG9yOiNlNGU0ZTQ7Ym9yZGVyOjFweCBzb2xpZCAjYWFhO2JvcmRlci1yYWRpdXM6NHB4O2Rpc3BsYXk6aW5saW5lLWJsb2NrO21hcmdpbi1sZWZ0OjVweDttYXJnaW4tdG9wOjVweDtwYWRkaW5nOjB9LnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljIC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUgLnNlbGVjdDItc2VsZWN0aW9uX19jaG9pY2VfX2Rpc3BsYXl7Y3Vyc29yOmRlZmF1bHQ7cGFkZGluZy1sZWZ0OjJweDtwYWRkaW5nLXJpZ2h0OjVweH0uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Nob2ljZV9fcmVtb3Zle2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7Ym9yZGVyOm5vbmU7Ym9yZGVyLXRvcC1sZWZ0LXJhZGl1czo0cHg7Ym9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czo0cHg7Y29sb3I6Izg4ODtjdXJzb3I6cG9pbnRlcjtmb250LXNpemU6MWVtO2ZvbnQtd2VpZ2h0OmJvbGQ7cGFkZGluZzowIDRweH0uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Nob2ljZV9fcmVtb3ZlOmhvdmVye2NvbG9yOiM1NTU7b3V0bGluZTpub25lfS5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpY1tkaXI9XCJydGxcIl0gLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Nob2ljZXttYXJnaW4tbGVmdDo1cHg7bWFyZ2luLXJpZ2h0OmF1dG99LnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljW2Rpcj1cInJ0bFwiXSAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2hvaWNlX19kaXNwbGF5e3BhZGRpbmctbGVmdDo1cHg7cGFkZGluZy1yaWdodDoycHh9LnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljW2Rpcj1cInJ0bFwiXSAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2hvaWNlX19yZW1vdmV7Ym9yZGVyLXRvcC1sZWZ0LXJhZGl1czowO2JvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6MDtib3JkZXItdG9wLXJpZ2h0LXJhZGl1czo0cHg7Ym9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6NHB4fS5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYy5zZWxlY3QyLWNvbnRhaW5lci0tb3BlbiAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxle2JvcmRlcjoxcHggc29saWQgIzU4OTdmYn0uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMuc2VsZWN0Mi1jb250YWluZXItLW9wZW4uc2VsZWN0Mi1jb250YWluZXItLWFib3ZlIC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGV7Ym9yZGVyLXRvcDpub25lO2JvcmRlci10b3AtbGVmdC1yYWRpdXM6MDtib3JkZXItdG9wLXJpZ2h0LXJhZGl1czowfS5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYy5zZWxlY3QyLWNvbnRhaW5lci0tb3Blbi5zZWxlY3QyLWNvbnRhaW5lci0tYmVsb3cgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZXtib3JkZXItYm90dG9tOm5vbmU7Ym9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czowO2JvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOjB9LnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljIC5zZWxlY3QyLXNlYXJjaC0tZHJvcGRvd24gLnNlbGVjdDItc2VhcmNoX19maWVsZHtib3JkZXI6MXB4IHNvbGlkICNhYWE7b3V0bGluZTowfS5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYyAuc2VsZWN0Mi1zZWFyY2gtLWlubGluZSAuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxke291dGxpbmU6MDtib3gtc2hhZG93Om5vbmV9LnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljIC5zZWxlY3QyLWRyb3Bkb3due2JhY2tncm91bmQtY29sb3I6I2ZmZjtib3JkZXI6MXB4IHNvbGlkIHRyYW5zcGFyZW50fS5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYyAuc2VsZWN0Mi1kcm9wZG93bi0tYWJvdmV7Ym9yZGVyLWJvdHRvbTpub25lfS5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYyAuc2VsZWN0Mi1kcm9wZG93bi0tYmVsb3d7Ym9yZGVyLXRvcDpub25lfS5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYyAuc2VsZWN0Mi1yZXN1bHRzPi5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbnN7bWF4LWhlaWdodDoyMDBweDtvdmVyZmxvdy15OmF1dG99LnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbi0tZ3JvdXB7cGFkZGluZzowfS5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYyAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24tLWRpc2FibGVke2NvbG9yOmdyZXl9LnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbi0taGlnaGxpZ2h0ZWQuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24tLXNlbGVjdGFibGV7YmFja2dyb3VuZC1jb2xvcjojMzg3NWQ3O2NvbG9yOiNmZmZ9LnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljIC5zZWxlY3QyLXJlc3VsdHNfX2dyb3Vwe2N1cnNvcjpkZWZhdWx0O2Rpc3BsYXk6YmxvY2s7cGFkZGluZzo2cHh9LnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljLnNlbGVjdDItY29udGFpbmVyLS1vcGVuIC5zZWxlY3QyLWRyb3Bkb3due2JvcmRlci1jb2xvcjojNTg5N2ZifVxuIiwiLy9ub2RlX21vZHVsZXNcbkBpbXBvcnQgXCJsaWJzL3p3aWNvbi96d2ljb25cIjtcbkBpbXBvcnQgXCJ+anF1ZXJ5LXVpL3RoZW1lcy9iYXNlL2FsbC5jc3NcIjtcbkBpbXBvcnQgXCJ+YW5pbWF0ZS5jc3MvYW5pbWF0ZS5jc3NcIjtcbkBpbXBvcnQgXCJ+b3ZlcmxheXNjcm9sbGJhcnMvY3NzL092ZXJsYXlTY3JvbGxiYXJzLmNzc1wiO1xuQGltcG9ydCBcIn5AZnVsbGNhbGVuZGFyL2NvcmUvbWFpbi5jc3NcIjtcbkBpbXBvcnQgXCJ+QGZ1bGxjYWxlbmRhci9kYXlncmlkL21haW4uY3NzXCI7XG5AaW1wb3J0IFwifmZsYXRwaWNrci9kaXN0L2ZsYXRwaWNrci5jc3NcIjtcbkBpbXBvcnQgXCJ+Ym9vdHN0cmFwLWNvbG9ycGlja2VyL3NyYy9zYXNzL2NvbG9ycGlja2VyXCI7XG5AaW1wb3J0IFwifnRydW1ib3d5Zy9kaXN0L3VpL3RydW1ib3d5Zy5jc3NcIjtcbkBpbXBvcnQgXCJ+anF0cmVlL2pxdHJlZVwiO1xuQGltcG9ydCBcIn5zZWxlY3QyL2Rpc3QvY3NzL3NlbGVjdDIubWluLmNzc1wiO1xuXG4vLyBGb250XG5AaW1wb3J0IFwiaW5jL3RlbXBsYXRlcy9mb250c1wiO1xuXG4vLyBWYXJpYWJsZXNcbkBpbXBvcnQgXCJpbmMvdGVtcGxhdGVzL3ZhcmlhYmxlc1wiO1xuXG4vLyBCb290c3RyYXBcbkBpbXBvcnQgXCJ+Ym9vdHN0cmFwL3Njc3MvYm9vdHN0cmFwXCI7XG5cbi8vIE1peGluc1xuQGltcG9ydCBcImluYy90ZW1wbGF0ZXMvbWl4aW5zXCI7IC8vIFRoaXMgYWxzbyBpbmNsdWRlcyBCb290c3RyYXAgTWl4aW5zXG5cbi8vIEluY2x1ZGUgY3VzdG9tc1xuQGltcG9ydCBcImluY1wiOyIsIkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ3p3aWNvbic7XG4gIHNyYzogdXJsKCdmb250cy96d2ljb24uZW90P2s0ODNrOCcpO1xuICBzcmM6IHVybCgnZm9udHMvendpY29uLmVvdD9rNDgzazgjaWVmaXgnKSBmb3JtYXQoXCJlbWJlZGRlZC1vcGVudHlwZVwiKSwgdXJsKCdmb250cy96d2ljb24udHRmP2s0ODNrOCcpIGZvcm1hdChcInRydWV0eXBlXCIpLCB1cmwoJ2ZvbnRzL3p3aWNvbi53b2ZmP2s0ODNrOCcpIGZvcm1hdChcIndvZmZcIiksIHVybCgnZm9udHMvendpY29uLnN2Zz9rNDgzazgjendpY29uJykgZm9ybWF0KFwic3ZnXCIpO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5cbltjbGFzcyo9XCJ6d2ljb24tXCJdIHtcbiAgLyogdXNlICFpbXBvcnRhbnQgdG8gcHJldmVudCBpc3N1ZXMgd2l0aCBicm93c2VyIGV4dGVuc2lvbnMgdGhhdCBjaGFuZ2UgZm9udHMgKi9cbiAgZm9udC1mYW1pbHk6ICd6d2ljb24nICFpbXBvcnRhbnQ7XG4gIHNwZWFrOiBub25lO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtdmFyaWFudDogbm9ybWFsO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgbGluZS1oZWlnaHQ6IDE7XG5cbiAgLyogQmV0dGVyIEZvbnQgUmVuZGVyaW5nID09PT09PT09PT09ICovXG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xufVxuXG4uendpY29uLWFsaWduLWJvdHRvbTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwMFwiO1xufVxuXG4uendpY29uLWFsaWduLWg6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MDFcIjtcbn1cblxuLnp3aWNvbi1hbGlnbi1sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTAyXCI7XG59XG5cbi56d2ljb24tYWxpZ24tcmlnaHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MDNcIjtcbn1cblxuLnp3aWNvbi1hbGlnbi10b3A6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MDRcIjtcbn1cblxuLnp3aWNvbi1hbGlnbi12OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTA1XCI7XG59XG5cbi56d2ljb24tZGlzdHJpYnV0ZS1oOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTA2XCI7XG59XG5cbi56d2ljb24tZGlzdHJpYnV0ZS12OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTA3XCI7XG59XG5cbi56d2ljb24tYXJyb3ctYm90dG9tLWxlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MDhcIjtcbn1cblxuLnp3aWNvbi1hcnJvdy1ib3R0b20tcmlnaHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MDlcIjtcbn1cblxuLnp3aWNvbi1hcnJvdy1jaXJjbGUtZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwYVwiO1xufVxuXG4uendpY29uLWFycm93LWNpcmNsZS1sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTBiXCI7XG59XG5cbi56d2ljb24tYXJyb3ctY2lyY2xlLXJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTBjXCI7XG59XG5cbi56d2ljb24tYXJyb3ctY2lyY2xlLXVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTBkXCI7XG59XG5cbi56d2ljb24tYXJyb3ctZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwZVwiO1xufVxuXG4uendpY29uLWFycm93LWxlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MGZcIjtcbn1cblxuLnp3aWNvbi1hcnJvdy1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkxMFwiO1xufVxuXG4uendpY29uLWFycm93LXNxdWFyZS1kb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTExXCI7XG59XG5cbi56d2ljb24tYXJyb3ctc3F1YXJlLWxlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MTJcIjtcbn1cblxuLnp3aWNvbi1hcnJvdy1zcXVhcmUtcmlnaHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MTNcIjtcbn1cblxuLnp3aWNvbi1hcnJvdy1zcXVhcmUtdXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MTRcIjtcbn1cblxuLnp3aWNvbi1hcnJvdy10by10b3A6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MTVcIjtcbn1cblxuLnp3aWNvbi1hcnJvdy10b3AtbGVmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkxNlwiO1xufVxuXG4uendpY29uLWFycm93LXRvcC1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkxN1wiO1xufVxuXG4uendpY29uLWFycm93LXVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTE4XCI7XG59XG5cbi56d2ljb24tYmFjazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkxOVwiO1xufVxuXG4uendpY29uLWNoZXZyb24tZG91YmxlLWRvd246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MWFcIjtcbn1cblxuLnp3aWNvbi1jaGV2cm9uLWRvdWJsZS1sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTFiXCI7XG59XG5cbi56d2ljb24tY2hldnJvbi1kb3VibGUtcmlnaHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MWNcIjtcbn1cblxuLnp3aWNvbi1jaGV2cm9uLWRvdWJsZS11cDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkxZFwiO1xufVxuXG4uendpY29uLWNoZXZyb24tZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkxZVwiO1xufVxuXG4uendpY29uLWNoZXZyb24tbGVmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkxZlwiO1xufVxuXG4uendpY29uLWNoZXZyb24tcmlnaHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MjBcIjtcbn1cblxuLnp3aWNvbi1jaGV2cm9uLXVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTIxXCI7XG59XG5cbi56d2ljb24tY29sbGFwc2UtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTIyXCI7XG59XG5cbi56d2ljb24tY29sbGFwc2UtYWx0MjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkyM1wiO1xufVxuXG4uendpY29uLWNvbGxhcHNlLWRvd246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MjRcIjtcbn1cblxuLnp3aWNvbi1jb2xsYXBzZS1sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTI1XCI7XG59XG5cbi56d2ljb24tY29sbGFwc2UtcmlnaHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MjZcIjtcbn1cblxuLnp3aWNvbi1jb2xsYXBzZS11cDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkyN1wiO1xufVxuXG4uendpY29uLWNvbGxhcHNlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTI4XCI7XG59XG5cbi56d2ljb24tY29udGludWU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MjlcIjtcbn1cblxuLnp3aWNvbi1leHBhbmQtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTJhXCI7XG59XG5cbi56d2ljb24tZXhwYW5kLWFsdDI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MmJcIjtcbn1cblxuLnp3aWNvbi1leHBhbmQtZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkyY1wiO1xufVxuXG4uendpY29uLWV4cGFuZC1oOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTJkXCI7XG59XG5cbi56d2ljb24tZXhwYW5kLWxlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MmVcIjtcbn1cblxuLnp3aWNvbi1leHBhbmQtcmlnaHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MmZcIjtcbn1cblxuLnp3aWNvbi1leHBhbmQtdXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MzBcIjtcbn1cblxuLnp3aWNvbi1leHBhbmQtdjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkzMVwiO1xufVxuXG4uendpY29uLWV4cGFuZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkzMlwiO1xufVxuXG4uendpY29uLWxvb3A6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MzNcIjtcbn1cblxuLnp3aWNvbi1wcmlvcml0aXplLWRvd246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MzRcIjtcbn1cblxuLnp3aWNvbi1wcmlvcml0aXplLXVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTM1XCI7XG59XG5cbi56d2ljb24tcmVkbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkzNlwiO1xufVxuXG4uendpY29uLXJlZnJlc2gtZG91YmxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTM3XCI7XG59XG5cbi56d2ljb24tcmVmcmVzaC1sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTM4XCI7XG59XG5cbi56d2ljb24tcmVmcmVzaC1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkzOVwiO1xufVxuXG4uendpY29uLXJlc3RhcnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5M2FcIjtcbn1cblxuLnp3aWNvbi1zcGxpdC1oOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTNiXCI7XG59XG5cbi56d2ljb24tc3BsaXQtdjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkzY1wiO1xufVxuXG4uendpY29uLXVuZG86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5M2RcIjtcbn1cblxuLnp3aWNvbi1jZWxsLWJvcmRlci1ib3R0b206YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5M2VcIjtcbn1cblxuLnp3aWNvbi1jZWxsLWJvcmRlci1mdWxsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTNmXCI7XG59XG5cbi56d2ljb24tY2VsbC1ib3JkZXItbGVmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk0MFwiO1xufVxuXG4uendpY29uLWNlbGwtYm9yZGVyLXJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTQxXCI7XG59XG5cbi56d2ljb24tY2VsbC1ib3JkZXItdG9wOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTQyXCI7XG59XG5cbi56d2ljb24tY2VsbC1lbXB0eTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk0M1wiO1xufVxuXG4uendpY29uLWNlbGwtZnVsbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk0NFwiO1xufVxuXG4uendpY29uLWNlbGwtc3BsaXQtaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk0NVwiO1xufVxuXG4uendpY29uLWNlbGwtc3BsaXQtdjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk0NlwiO1xufVxuXG4uendpY29uLWNlbGwtc3BsaXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NDdcIjtcbn1cblxuLnp3aWNvbi1hcmNoaXZlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTQ4XCI7XG59XG5cbi56d2ljb24tZG9jdW1lbnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NDlcIjtcbn1cblxuLnp3aWNvbi1mb2xkZXItZGVsZXRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTRhXCI7XG59XG5cbi56d2ljb24tZm9sZGVyLW1pbnVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTRiXCI7XG59XG5cbi56d2ljb24tZm9sZGVyLW9wZW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NGNcIjtcbn1cblxuLnp3aWNvbi1mb2xkZXItcGx1czpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk0ZFwiO1xufVxuXG4uendpY29uLWZvbGRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk0ZVwiO1xufVxuXG4uendpY29uLW5vdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NGZcIjtcbn1cblxuLnp3aWNvbi1ub3RlYm9vazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk1MFwiO1xufVxuXG4uendpY29uLXNjcmlwdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk1MVwiO1xufVxuXG4uendpY29uLXN0aWNrZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NTJcIjtcbn1cblxuLnp3aWNvbi1zdGlja3ktbm90ZXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NTNcIjtcbn1cblxuLnp3aWNvbi10cmF5LWRlbGV0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk1NFwiO1xufVxuXG4uendpY29uLXRyYXktZW1wdHk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NTVcIjtcbn1cblxuLnp3aWNvbi10cmF5LWV4cG9ydDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk1NlwiO1xufVxuXG4uendpY29uLXRyYXktaW1wb3J0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTU3XCI7XG59XG5cbi56d2ljb24tdHJheS1taW51czpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk1OFwiO1xufVxuXG4uendpY29uLXRyYXktcGx1czpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk1OVwiO1xufVxuXG4uendpY29uLXRyYXktc3RhY2s6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NWFcIjtcbn1cblxuLnp3aWNvbi10cmF5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTViXCI7XG59XG5cbi56d2ljb24tYXJ0Ym9hcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NWNcIjtcbn1cblxuLnp3aWNvbi1icnVzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk1ZFwiO1xufVxuXG4uendpY29uLWNsaXBib2FyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk1ZVwiO1xufVxuXG4uendpY29uLWNvcHktYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTVmXCI7XG59XG5cbi56d2ljb24tY29weTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk2MFwiO1xufVxuXG4uendpY29uLWNyb3A6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NjFcIjtcbn1cblxuLnp3aWNvbi1jdXQtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTYyXCI7XG59XG5cbi56d2ljb24tY3V0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTYzXCI7XG59XG5cbi56d2ljb24tZHJhZnRpbmctY29tcGFzczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk2NFwiO1xufVxuXG4uendpY29uLWR1cGxpY2F0ZS1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NjVcIjtcbn1cblxuLnp3aWNvbi1kdXBsaWNhdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NjZcIjtcbn1cblxuLnp3aWNvbi1lcmFzZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NjdcIjtcbn1cblxuLnp3aWNvbi1leWUtZHJvcHBlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk2OFwiO1xufVxuXG4uendpY29uLWdyb3VwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTY5XCI7XG59XG5cbi56d2ljb24tbGF5ZXItc3RhY2s6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NmFcIjtcbn1cblxuLnp3aWNvbi1tYWdpYy13YW5kOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTZiXCI7XG59XG5cbi56d2ljb24tbWFya2VyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTZjXCI7XG59XG5cbi56d2ljb24tcGFpbnQtYnVja2V0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTZkXCI7XG59XG5cbi56d2ljb24tcGFpbnQtcm9sbGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTZlXCI7XG59XG5cbi56d2ljb24tcGFsZXR0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk2ZlwiO1xufVxuXG4uendpY29uLXBhc3RlLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk3MFwiO1xufVxuXG4uendpY29uLXBhc3RlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTcxXCI7XG59XG5cbi56d2ljb24tcGVuLWNpcmNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk3MlwiO1xufVxuXG4uendpY29uLXBlbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk3M1wiO1xufVxuXG4uendpY29uLXBlbmNpbC1jaXJjbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NzRcIjtcbn1cblxuLnp3aWNvbi1wZW5jaWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NzVcIjtcbn1cblxuLnp3aWNvbi1ydWxlci1jb21iaW5lZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk3NlwiO1xufVxuXG4uendpY29uLXJ1bGVyLWg6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NzdcIjtcbn1cblxuLnp3aWNvbi1ydWxlci12OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTc4XCI7XG59XG5cbi56d2ljb24tc3RhbXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NzlcIjtcbn1cblxuLnp3aWNvbi10YWJsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk3YVwiO1xufVxuXG4uendpY29uLWFjdGl2aXR5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTdiXCI7XG59XG5cbi56d2ljb24tYW5kcm9pZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk3Y1wiO1xufVxuXG4uendpY29uLWFwcGxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTdkXCI7XG59XG5cbi56d2ljb24tYm9sdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk3ZVwiO1xufVxuXG4uendpY29uLWNsb3VkLWRvd25sb2FkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTdmXCI7XG59XG5cbi56d2ljb24tY2xvdWQtbWludXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5ODBcIjtcbn1cblxuLnp3aWNvbi1jbG91ZC1wbHVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTgxXCI7XG59XG5cbi56d2ljb24tY2xvdWQtdXBsb2FkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTgyXCI7XG59XG5cbi56d2ljb24tY29kZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk4M1wiO1xufVxuXG4uendpY29uLWNvbW1hbmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5ODRcIjtcbn1cblxuLnp3aWNvbi1kYXRhYmFzZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk4NVwiO1xufVxuXG4uendpY29uLWRlcGxveTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk4NlwiO1xufVxuXG4uendpY29uLWdpdC1icmFuY2g6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5ODdcIjtcbn1cblxuLnp3aWNvbi1naXQtY29tbWl0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTg4XCI7XG59XG5cbi56d2ljb24tZ2l0LWZvcms6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5ODlcIjtcbn1cblxuLnp3aWNvbi1naXQtbWVyZ2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5OGFcIjtcbn1cblxuLnp3aWNvbi1naXQtcHVsbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk4YlwiO1xufVxuXG4uendpY29uLWlvczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk4Y1wiO1xufVxuXG4uendpY29uLWxhbi1jb25uZWN0aW9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOThkXCI7XG59XG5cbi56d2ljb24tbGFuLWVycm9yOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOThlXCI7XG59XG5cbi56d2ljb24tbGFuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOThmXCI7XG59XG5cbi56d2ljb24tb3N4OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTkwXCI7XG59XG5cbi56d2ljb24tcmVwb3NpdG9yeTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk5MVwiO1xufVxuXG4uendpY29uLXdlYjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk5MlwiO1xufVxuXG4uendpY29uLXdpbmRvdy1kZWxldGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5OTNcIjtcbn1cblxuLnp3aWNvbi13aW5kb3ctbWludXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5OTRcIjtcbn1cblxuLnp3aWNvbi13aW5kb3ctcGx1czpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk5NVwiO1xufVxuXG4uendpY29uLXdpbmRvdzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk5NlwiO1xufVxuXG4uendpY29uLXdpbmRvd3M6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5OTdcIjtcbn1cblxuLnp3aWNvbi1haXJwb2RzLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk5OFwiO1xufVxuXG4uendpY29uLWFpcnBvZHM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5OTlcIjtcbn1cblxuLnp3aWNvbi1hcHBsZS13YXRjaC1zbWlsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk5YVwiO1xufVxuXG4uendpY29uLWFwcGxlLXdhdGNoLXRpbWU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5OWJcIjtcbn1cblxuLnp3aWNvbi1hcHBsZS13YXRjaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk5Y1wiO1xufVxuXG4uendpY29uLWNhYmxlLWhkbWk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5OWRcIjtcbn1cblxuLnp3aWNvbi1jYWJsZS1qYWNrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTllXCI7XG59XG5cbi56d2ljb24tY2FibGUtbGFuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTlmXCI7XG59XG5cbi56d2ljb24tY2FibGUtbGlnaHRuaW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWEwXCI7XG59XG5cbi56d2ljb24tY2FibGUtbWFnc2FmZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTlhMVwiO1xufVxuXG4uendpY29uLWNhYmxlLXVzYjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTlhMlwiO1xufVxuXG4uendpY29uLWNhcmRib2FyZC12cjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTlhM1wiO1xufVxuXG4uendpY29uLWNvbnRyb2xsZXItYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWE0XCI7XG59XG5cbi56d2ljb24tY29udHJvbGxlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTlhNVwiO1xufVxuXG4uendpY29uLWRlc2t0b3A6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5YTZcIjtcbn1cblxuLnp3aWNvbi1kZXZpY2VzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWE3XCI7XG59XG5cbi56d2ljb24tZmxvcHB5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWE4XCI7XG59XG5cbi56d2ljb24tZ2FtZWJveTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTlhOVwiO1xufVxuXG4uendpY29uLWhhcmQtZHJpdmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5YWFcIjtcbn1cblxuLnp3aWNvbi1oZWFkcGhvbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5YWJcIjtcbn1cblxuLnp3aWNvbi1pbWFjOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWFjXCI7XG59XG5cbi56d2ljb24taXBhZC1oOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWFkXCI7XG59XG5cbi56d2ljb24taXBhZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTlhZVwiO1xufVxuXG4uendpY29uLWlwaG9uZS1oOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWFmXCI7XG59XG5cbi56d2ljb24taXBob25lLXgtaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTliMFwiO1xufVxuXG4uendpY29uLWlwaG9uZS14OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWIxXCI7XG59XG5cbi56d2ljb24taXBob25lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWIyXCI7XG59XG5cbi56d2ljb24ta2V5Ym9hcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5YjNcIjtcbn1cblxuLnp3aWNvbi1sYXB0b3A6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5YjRcIjtcbn1cblxuLnp3aWNvbi1tYWMtcHJvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWI1XCI7XG59XG5cbi56d2ljb24tbWFjYm9vay1wcm86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5YjZcIjtcbn1cblxuLnp3aWNvbi1tZW1vcnktY2FyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTliN1wiO1xufVxuXG4uendpY29uLW1vdXNlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWI4XCI7XG59XG5cbi56d2ljb24tcGhvbmUtYW5kb3JpZC1oOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWI5XCI7XG59XG5cbi56d2ljb24tcGhvbmUtYW5kb3JpZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTliYVwiO1xufVxuXG4uendpY29uLXBob25lLWhvbGRpbmctZG91YmxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWJiXCI7XG59XG5cbi56d2ljb24tcGhvbmUtaG9sZGluZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTliY1wiO1xufVxuXG4uendpY29uLXBsdWc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5YmRcIjtcbn1cblxuLnp3aWNvbi1wcmludGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWJlXCI7XG59XG5cbi56d2ljb24tc2VydmVyLXN0YWNrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWJmXCI7XG59XG5cbi56d2ljb24tc21hcnQtZ2xhc3NlczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTljMFwiO1xufVxuXG4uendpY29uLXNtYXJ0LXR2OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWMxXCI7XG59XG5cbi56d2ljb24tc21hcnQtd2F0Y2gtdGltZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTljMlwiO1xufVxuXG4uendpY29uLXNtYXJ0LXdhdGNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWMzXCI7XG59XG5cbi56d2ljb24tdGFibGV0LWg6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5YzRcIjtcbn1cblxuLnp3aWNvbi10YWJsZXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5YzVcIjtcbn1cblxuLnp3aWNvbi10ZXJtaW5hbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTljNlwiO1xufVxuXG4uendpY29uLXZpcnR1YWwtcmVhbGl0eTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTljN1wiO1xufVxuXG4uendpY29uLXZvaWNlLWFzc2lzdGFudDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTljOFwiO1xufVxuXG4uendpY29uLWVkaXQtY2lyY2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWM5XCI7XG59XG5cbi56d2ljb24tZWRpdC1wZW5jaWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5Y2FcIjtcbn1cblxuLnp3aWNvbi1lZGl0LXNxdWFyZS1mZWF0aGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWNiXCI7XG59XG5cbi56d2ljb24tZWRpdC1zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5Y2NcIjtcbn1cblxuLnp3aWNvbi1maWxlLWFyY2hpdmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5Y2RcIjtcbn1cblxuLnp3aWNvbi1maWxlLWF1ZGlvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWNlXCI7XG59XG5cbi56d2ljb24tZmlsZS1jbG91ZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTljZlwiO1xufVxuXG4uendpY29uLWZpbGUtZG93bmxvYWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5ZDBcIjtcbn1cblxuLnp3aWNvbi1maWxlLWVtcHR5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWQxXCI7XG59XG5cbi56d2ljb24tZmlsZS1leHBvcnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5ZDJcIjtcbn1cblxuLnp3aWNvbi1maWxlLWZvbnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5ZDNcIjtcbn1cblxuLnp3aWNvbi1maWxlLWdyYXBoaWM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5ZDRcIjtcbn1cblxuLnp3aWNvbi1maWxlLWltYWdlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWQ1XCI7XG59XG5cbi56d2ljb24tZmlsZS1pbXBvcnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5ZDZcIjtcbn1cblxuLnp3aWNvbi1maWxlLXBkZjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTlkN1wiO1xufVxuXG4uendpY29uLWZpbGUtc2VhcmNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWQ4XCI7XG59XG5cbi56d2ljb24tZmlsZS1za2V0Y2g6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5ZDlcIjtcbn1cblxuLnp3aWNvbi1maWxlLXRhYmxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWRhXCI7XG59XG5cbi56d2ljb24tZmlsZS11cGxvYWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5ZGJcIjtcbn1cblxuLnp3aWNvbi1maWxlLXZlY3RvcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTlkY1wiO1xufVxuXG4uendpY29uLWZpbGUtdmlkZW86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5ZGRcIjtcbn1cblxuLnp3aWNvbi1maWx0ZXItYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWRlXCI7XG59XG5cbi56d2ljb24tZmlsdGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWRmXCI7XG59XG5cbi56d2ljb24tc2xpZGVyLWNpcmNsZS1oOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWUwXCI7XG59XG5cbi56d2ljb24tc2xpZGVyLWNpcmNsZS12OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWUxXCI7XG59XG5cbi56d2ljb24tc2xpZGVyLXJlY3RhbmdsZS1oOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWUyXCI7XG59XG5cbi56d2ljb24tc2xpZGVyLXJlY3RhbmdsZS12OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWUzXCI7XG59XG5cbi56d2ljb24tc29ydC1hbHBoYWJldGljLWRvd246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5ZTRcIjtcbn1cblxuLnp3aWNvbi1zb3J0LWFscGhhYmV0aWMtdXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5ZTVcIjtcbn1cblxuLnp3aWNvbi1zb3J0LWFtb3VudC1kb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWU2XCI7XG59XG5cbi56d2ljb24tc29ydC1hbW91bnQtdXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5ZTdcIjtcbn1cblxuLnp3aWNvbi1zb3J0LW51bWVyaWMtZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTllOFwiO1xufVxuXG4uendpY29uLXNvcnQtbnVtZXJpYy11cDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTllOVwiO1xufVxuXG4uendpY29uLXRvZ2dsZS1zd2l0Y2g6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5ZWFcIjtcbn1cblxuLnp3aWNvbi1iYXItY29kZS1zY2FuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWViXCI7XG59XG5cbi56d2ljb24tYmFyLWNvZGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5ZWNcIjtcbn1cblxuLnp3aWNvbi1iaWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5ZWRcIjtcbn1cblxuLnp3aWNvbi1iaWxsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWVlXCI7XG59XG5cbi56d2ljb24tYml0Y29pbi1zaWduOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWVmXCI7XG59XG5cbi56d2ljb24tYnVsbC1ob3JuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWYwXCI7XG59XG5cbi56d2ljb24tY29pbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTlmMVwiO1xufVxuXG4uendpY29uLWNyZWRpdC1jYXJkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWYyXCI7XG59XG5cbi56d2ljb24tZGlhbW9uZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTlmM1wiO1xufVxuXG4uendpY29uLWRvbGxhci1zaWduOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWY0XCI7XG59XG5cbi56d2ljb24tZXVyby1zaWduOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWY1XCI7XG59XG5cbi56d2ljb24taGFtbWVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWY2XCI7XG59XG5cbi56d2ljb24tbGluZS1jaGFydDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTlmN1wiO1xufVxuXG4uendpY29uLWxpcmEtc2lnbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTlmOFwiO1xufVxuXG4uendpY29uLW1vbmV5LWJpbGw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5ZjlcIjtcbn1cblxuLnp3aWNvbi1tb25leS1zdGFjazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTlmYVwiO1xufVxuXG4uendpY29uLXBhY2thZ2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5ZmJcIjtcbn1cblxuLnp3aWNvbi1waWdneS1iYW5rOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOWZjXCI7XG59XG5cbi56d2ljb24tcG91bmQtc2lnbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTlmZFwiO1xufVxuXG4uendpY29uLXByaWNlLXRhZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTlmZVwiO1xufVxuXG4uendpY29uLXFyLWNvZGUtc2NhbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTlmZlwiO1xufVxuXG4uendpY29uLXFyLWNvZGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhMDBcIjtcbn1cblxuLnp3aWNvbi1yZWNlaXB0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTAxXCI7XG59XG5cbi56d2ljb24tcnViZWwtc2lnbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWEwMlwiO1xufVxuXG4uendpY29uLXJ1cGVlLXNpZ246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhMDNcIjtcbn1cblxuLnp3aWNvbi1zYWxlLWJhZGdlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTA0XCI7XG59XG5cbi56d2ljb24tc2hvcHBpbmctYmFnLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWEwNVwiO1xufVxuXG4uendpY29uLXNob3BwaW5nLWJhZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWEwNlwiO1xufVxuXG4uendpY29uLXNob3BwaW5nLWNhcnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhMDdcIjtcbn1cblxuLnp3aWNvbi1zdG9yZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWEwOFwiO1xufVxuXG4uendpY29uLXdhbGxldDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWEwOVwiO1xufVxuXG4uendpY29uLXdvbi1zaWduOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTBhXCI7XG59XG5cbi56d2ljb24teWVuLXNpZ246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhMGJcIjtcbn1cblxuLnp3aWNvbi1mbGlwLWxlZnQtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTBjXCI7XG59XG5cbi56d2ljb24tZmxpcC1sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTBkXCI7XG59XG5cbi56d2ljb24tZmxpcC1yaWdodC1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhMGVcIjtcbn1cblxuLnp3aWNvbi1mbGlwLXJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTBmXCI7XG59XG5cbi56d2ljb24tZG91YmxlLXRhcC10d286YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhMTBcIjtcbn1cblxuLnp3aWNvbi1kb3VibGUtdGFwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTExXCI7XG59XG5cbi56d2ljb24tZHJhZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWExMlwiO1xufVxuXG4uendpY29uLWZsaWNrLWxlZnQtdHdvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTEzXCI7XG59XG5cbi56d2ljb24tZmxpY2stbGVmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWExNFwiO1xufVxuXG4uendpY29uLWZsaWNrLXJpZ2h0LXR3bzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWExNVwiO1xufVxuXG4uendpY29uLWZsaWNrLXJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTE2XCI7XG59XG5cbi56d2ljb24taG9ybnM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhMTdcIjtcbn1cblxuLnp3aWNvbi1waW5jaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWExOFwiO1xufVxuXG4uendpY29uLXBvaW50OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTE5XCI7XG59XG5cbi56d2ljb24tcHJlc3M6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhMWFcIjtcbn1cblxuLnp3aWNvbi1zY3JvbGwtZG93bi10d286YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhMWJcIjtcbn1cblxuLnp3aWNvbi1zY3JvbGwtZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWExY1wiO1xufVxuXG4uendpY29uLXNjcm9sbC1oLXR3bzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWExZFwiO1xufVxuXG4uendpY29uLXNjcm9sbC1oOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTFlXCI7XG59XG5cbi56d2ljb24tc2Nyb2xsLXVwLXR3bzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWExZlwiO1xufVxuXG4uendpY29uLXNjcm9sbC11cDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWEyMFwiO1xufVxuXG4uendpY29uLXNjcm9sbC12LXR3bzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWEyMVwiO1xufVxuXG4uendpY29uLXNjcm9sbC12OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTIyXCI7XG59XG5cbi56d2ljb24tc2hha2E6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhMjNcIjtcbn1cblxuLnp3aWNvbi1zcHJlYWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhMjRcIjtcbn1cblxuLnp3aWNvbi10YXAtdHdvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTI1XCI7XG59XG5cbi56d2ljb24tdGFwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTI2XCI7XG59XG5cbi56d2ljb24tdHdvLWRyYWc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhMjdcIjtcbn1cblxuLnp3aWNvbi1hZGQtaXRlbS1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhMjhcIjtcbn1cblxuLnp3aWNvbi1hZGQtaXRlbTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWEyOVwiO1xufVxuXG4uendpY29uLWFkZC1ub3RlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTJhXCI7XG59XG5cbi56d2ljb24tYWRkLXRvLWxpc3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhMmJcIjtcbn1cblxuLnp3aWNvbi1hdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWEyY1wiO1xufVxuXG4uendpY29uLWF0dGFjaC1kb2N1bWVudDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWEyZFwiO1xufVxuXG4uendpY29uLXBhcGVyY2xpcDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWEyZVwiO1xufVxuXG4uendpY29uLWJhdHRlcnktZnVsbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWEzMFwiO1xufVxuXG4uendpY29uLWJhdHRlcnktbG93OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTMxXCI7XG59XG5cbi56d2ljb24tYmF0dGVyeS1taWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhMzJcIjtcbn1cblxuLnp3aWNvbi1iYXR0ZXJ5LXY6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhMzNcIjtcbn1cblxuLnp3aWNvbi1iZWxsLWFsdC1yaW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTM0XCI7XG59XG5cbi56d2ljb24tYmVsbC1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhMzVcIjtcbn1cblxuLnp3aWNvbi1iZWxsLXNsYXNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTM2XCI7XG59XG5cbi56d2ljb24tYmVsbC1zbm9vemU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhMzdcIjtcbn1cblxuLnp3aWNvbi1iZWxsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTM4XCI7XG59XG5cbi56d2ljb24tYmxvY2s6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhMzlcIjtcbn1cblxuLnp3aWNvbi1ib29rLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWEzYVwiO1xufVxuXG4uendpY29uLWJvb2s6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhM2JcIjtcbn1cblxuLnp3aWNvbi1ib29rbWFyazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWEzY1wiO1xufVxuXG4uendpY29uLWJyaWVmY2FzZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWEzZFwiO1xufVxuXG4uendpY29uLWNhbGVuZGFyLWRheTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWEzZVwiO1xufVxuXG4uendpY29uLWNhbGVuZGFyLW1vbnRoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTNmXCI7XG59XG5cbi56d2ljb24tY2FsZW5kYXItbmV2ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhNDBcIjtcbn1cblxuLnp3aWNvbi1jYWxlbmRhci13ZWVrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTQxXCI7XG59XG5cbi56d2ljb24tY2FsZW5kYXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhNDJcIjtcbn1cblxuLnp3aWNvbi1jYWxsLWluOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTQzXCI7XG59XG5cbi56d2ljb24tY2FsbC1vdXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhNDRcIjtcbn1cblxuLnp3aWNvbi1jaGF0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTQ1XCI7XG59XG5cbi56d2ljb24tY2hlY2ttYXJrLWNpcmNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE0NlwiO1xufVxuXG4uendpY29uLWNoZWNrbWFyay1zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhNDdcIjtcbn1cblxuLnp3aWNvbi1jaGVja21hcms6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhNDhcIjtcbn1cblxuLnp3aWNvbi1jbG9jazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE0OVwiO1xufVxuXG4uendpY29uLWNsb3NlLWNpcmNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE0YVwiO1xufVxuXG4uendpY29uLWNsb3NlLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE0YlwiO1xufVxuXG4uendpY29uLWNsb3NlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTRjXCI7XG59XG5cbi56d2ljb24tY29nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTRkXCI7XG59XG5cbi56d2ljb24tY29tbWVudDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE0ZVwiO1xufVxuXG4uendpY29uLWNvbXBhc3M6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhNGZcIjtcbn1cblxuLnp3aWNvbi1kZWxldGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhNTBcIjtcbn1cblxuLnp3aWNvbi1kb3dubG9hZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE1MVwiO1xufVxuXG4uendpY29uLWVhcnRoLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE1MlwiO1xufVxuXG4uendpY29uLWVhcnRoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTUzXCI7XG59XG5cbi56d2ljb24tZXhjbGFtYXRpb24tdHJpYW5nbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhNTRcIjtcbn1cblxuLnp3aWNvbi1leGNsYW1hdGlvbi1tYXJrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTJmXCI7XG59XG5cbi56d2ljb24tZXhwb3J0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTU1XCI7XG59XG5cbi56d2ljb24tZXllLXNsYXNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTU2XCI7XG59XG5cbi56d2ljb24tZXllOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTU3XCI7XG59XG5cbi56d2ljb24tZmFjZS1pZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE1OFwiO1xufVxuXG4uendpY29uLWZsYWc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhNTlcIjtcbn1cblxuLnp3aWNvbi1ncmlkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTVhXCI7XG59XG5cbi56d2ljb24taGFtYnVyZ2VyLW1lbnU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhNWJcIjtcbn1cblxuLnp3aWNvbi1oZWFydDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE1Y1wiO1xufVxuXG4uendpY29uLWhvbWU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhNWRcIjtcbn1cblxuLnp3aWNvbi1pbXBvcnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhNWVcIjtcbn1cblxuLnp3aWNvbi1pbmZvLWNpcmNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE1ZlwiO1xufVxuXG4uendpY29uLWxpZmViZWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTYwXCI7XG59XG5cbi56d2ljb24tbGluazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE2MVwiO1xufVxuXG4uendpY29uLWxvY2stYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTYyXCI7XG59XG5cbi56d2ljb24tbG9jazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE2M1wiO1xufVxuXG4uendpY29uLW1haWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhNjRcIjtcbn1cblxuLnp3aWNvbi1tYXAtbWFya2VyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTY1XCI7XG59XG5cbi56d2ljb24tbWludXMtY2lyY2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTY2XCI7XG59XG5cbi56d2ljb24tbWludXMtc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTY3XCI7XG59XG5cbi56d2ljb24tbWludXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhNjhcIjtcbn1cblxuLnp3aWNvbi1tb3JlLWg6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhNjlcIjtcbn1cblxuLnp3aWNvbi1tb3JlLXY6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhNmFcIjtcbn1cblxuLnp3aWNvbi1teS1sb2NhdGlvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE2YlwiO1xufVxuXG4uendpY29uLXBhc3N3b3JkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTZjXCI7XG59XG5cbi56d2ljb24tcGhvbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhNmRcIjtcbn1cblxuLnp3aWNvbi1waW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhNmVcIjtcbn1cblxuLnp3aWNvbi1wbHVzLWNpcmNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE2ZlwiO1xufVxuXG4uendpY29uLXBsdXMtc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTcwXCI7XG59XG5cbi56d2ljb24tcGx1czpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE3MVwiO1xufVxuXG4uendpY29uLXNlYXJjaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE3MlwiO1xufVxuXG4uendpY29uLXNlbmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhNzNcIjtcbn1cblxuLnp3aWNvbi1zaGFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE3NFwiO1xufVxuXG4uendpY29uLXNob3J0Y3V0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTc1XCI7XG59XG5cbi56d2ljb24tc2lnbi1pbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE3NlwiO1xufVxuXG4uendpY29uLXNpZ24tb3V0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTc3XCI7XG59XG5cbi56d2ljb24tdGh1bWJzLWRvd246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhNzhcIjtcbn1cblxuLnp3aWNvbi10aHVtYnMtdXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhNzlcIjtcbn1cblxuLnp3aWNvbi10cmFzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE3YVwiO1xufVxuXG4uendpY29uLXVubGluazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE3YlwiO1xufVxuXG4uendpY29uLXVwbG9hZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE3Y1wiO1xufVxuXG4uendpY29uLXVzZXItY2lyY2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTdkXCI7XG59XG5cbi56d2ljb24tdXNlci1kZWxldGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhN2VcIjtcbn1cblxuLnp3aWNvbi11c2VyLWZvbGxvdzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE3ZlwiO1xufVxuXG4uendpY29uLXVzZXItbWludXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhODBcIjtcbn1cblxuLnp3aWNvbi11c2VyLXBsdXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhODFcIjtcbn1cblxuLnp3aWNvbi11c2VyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTgyXCI7XG59XG5cbi56d2ljb24tdXNlcnM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhODNcIjtcbn1cblxuLnp3aWNvbi1oaXN0b3J5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTg0XCI7XG59XG5cbi56d2ljb24tdGFzazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE4NVwiO1xufVxuXG4uendpY29uLWJvdHRvbS1iYXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhODZcIjtcbn1cblxuLnp3aWNvbi1jb250ZW50LWxlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhODdcIjtcbn1cblxuLnp3aWNvbi1jb250ZW50LXJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTg4XCI7XG59XG5cbi56d2ljb24tZGVza3RvcC0xOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTg5XCI7XG59XG5cbi56d2ljb24tZGVza3RvcC0yOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYThhXCI7XG59XG5cbi56d2ljb24tZGVza3RvcC0zOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYThiXCI7XG59XG5cbi56d2ljb24taGFsZi1oOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYThjXCI7XG59XG5cbi56d2ljb24taGFsZi12OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYThkXCI7XG59XG5cbi56d2ljb24tbGF5b3V0LTE6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhOGVcIjtcbn1cblxuLnp3aWNvbi1sYXlvdXQtMjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE4ZlwiO1xufVxuXG4uendpY29uLWxheW91dC0zOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTkwXCI7XG59XG5cbi56d2ljb24tbGF5b3V0LTQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhOTFcIjtcbn1cblxuLnp3aWNvbi1sYXlvdXQtNTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE5MlwiO1xufVxuXG4uendpY29uLWxlZnQtYmFyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTkzXCI7XG59XG5cbi56d2ljb24tbWFyZ2luOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTk0XCI7XG59XG5cbi56d2ljb24tcmlnaHQtYmFyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTk1XCI7XG59XG5cbi56d2ljb24tc2lkZWJhcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE5NlwiO1xufVxuXG4uendpY29uLXRocmVlLWg6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhOTdcIjtcbn1cblxuLnp3aWNvbi10aHJlZS12OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTk4XCI7XG59XG5cbi56d2ljb24tdG8tYm90dG9tOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTk5XCI7XG59XG5cbi56d2ljb24tdG8tbGVmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE5YVwiO1xufVxuXG4uendpY29uLXRvLXJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTliXCI7XG59XG5cbi56d2ljb24tdG8tdG9wOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTljXCI7XG59XG5cbi56d2ljb24tdG9wLWJhcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE5ZFwiO1xufVxuXG4uendpY29uLWFpcnBsYXk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhOWVcIjtcbn1cblxuLnp3aWNvbi1icm9hZGNhc3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhOWZcIjtcbn1cblxuLnp3aWNvbi1jYW1lcmEtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWEwXCI7XG59XG5cbi56d2ljb24tY2FtZXJhLWFsdDI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhYTFcIjtcbn1cblxuLnp3aWNvbi1jYW1lcmE6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhYTJcIjtcbn1cblxuLnp3aWNvbi1jYXN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWEzXCI7XG59XG5cbi56d2ljb24tY29sbGFwc2Utd2lkZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFhNFwiO1xufVxuXG4uendpY29uLWNvbGxhcHNlMTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFhNVwiO1xufVxuXG4uendpY29uLWRpc2s6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhYTZcIjtcbn1cblxuLnp3aWNvbi1leHBhbmQtd2lkZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFhN1wiO1xufVxuXG4uendpY29uLWV4cGFuZDE6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhYThcIjtcbn1cblxuLnp3aWNvbi1maWxtLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFhOVwiO1xufVxuXG4uendpY29uLWZpbG0tcGxheTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFhYVwiO1xufVxuXG4uendpY29uLWZpbG06YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhYWJcIjtcbn1cblxuLnp3aWNvbi1pbWFnZS1jaXJjbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhYWNcIjtcbn1cblxuLnp3aWNvbi1pbWFnZS1nYWxsZXJ5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWFkXCI7XG59XG5cbi56d2ljb24taW1hZ2Utd2lkZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFhZVwiO1xufVxuXG4uendpY29uLWltYWdlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWFmXCI7XG59XG5cbi56d2ljb24tbWljcm9waG9uZS1tdXRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWIwXCI7XG59XG5cbi56d2ljb24tbWljcm9waG9uZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFiMVwiO1xufVxuXG4uendpY29uLW5leHQtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWIyXCI7XG59XG5cbi56d2ljb24tbmV4dDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFiM1wiO1xufVxuXG4uendpY29uLXBhbm9yYW1hLWg6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhYjRcIjtcbn1cblxuLnp3aWNvbi1wYXVzZS1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhYjVcIjtcbn1cblxuLnp3aWNvbi1wYXVzZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFiNlwiO1xufVxuXG4uendpY29uLXBsYXktYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWI3XCI7XG59XG5cbi56d2ljb24tcGxheTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFiOFwiO1xufVxuXG4uendpY29uLXByZXZpb3VzLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFiOVwiO1xufVxuXG4uendpY29uLXByZXZpb3VzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWJhXCI7XG59XG5cbi56d2ljb24tc2h1ZmZsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFiYlwiO1xufVxuXG4uendpY29uLXZpZGVvLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFiY1wiO1xufVxuXG4uendpY29uLXZpZGVvLWNhbWVyYTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFiZFwiO1xufVxuXG4uendpY29uLXZpZGVvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWJlXCI7XG59XG5cbi56d2ljb24tdm9sdW1lLWxvdzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFiZlwiO1xufVxuXG4uendpY29uLXZvbHVtZS1tYXg6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhYzBcIjtcbn1cblxuLnp3aWNvbi12b2x1bWUtbWlkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWMxXCI7XG59XG5cbi56d2ljb24tdm9sdW1lLW1pbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFjMlwiO1xufVxuXG4uendpY29uLXdpZGUtYW5nbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhYzNcIjtcbn1cblxuLnp3aWNvbi1leGNsdWRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWM0XCI7XG59XG5cbi56d2ljb24tZmxhdHRlbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFjNVwiO1xufVxuXG4uendpY29uLWludGVyc2VjdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFjNlwiO1xufVxuXG4uendpY29uLXN1YnN0cmFjdC1iYWNrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWM3XCI7XG59XG5cbi56d2ljb24tc3Vic3RyYWN0LWZyb250OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWM4XCI7XG59XG5cbi56d2ljb24tdW5pdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhYzlcIjtcbn1cblxuLnp3aWNvbi1oZWlnaHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhY2FcIjtcbn1cblxuLnp3aWNvbi1yZXNpemUtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWNiXCI7XG59XG5cbi56d2ljb24tcmVzaXplOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWNjXCI7XG59XG5cbi56d2ljb24tc2NhbGUtZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFjZFwiO1xufVxuXG4uendpY29uLXNjYWxlLXVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWNlXCI7XG59XG5cbi56d2ljb24tc2NhbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhY2ZcIjtcbn1cblxuLnp3aWNvbi13aWR0aDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFkMFwiO1xufVxuXG4uendpY29uLXJvdGF0ZS1heGlzLXg6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhZDFcIjtcbn1cblxuLnp3aWNvbi1yb3RhdGUtYXhpcy14eTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFkMlwiO1xufVxuXG4uendpY29uLXJvdGF0ZS1heGlzLXk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhZDNcIjtcbn1cblxuLnp3aWNvbi1yb3RhdGUtbGVmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFkNFwiO1xufVxuXG4uendpY29uLXJvdGF0ZS1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFkNVwiO1xufVxuXG4uendpY29uLXJvdGF0ZS1zaGFwZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFkNlwiO1xufVxuXG4uendpY29uLWN1cnNvci1zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhZDdcIjtcbn1cblxuLnp3aWNvbi1jdXJzb3I6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhZDhcIjtcbn1cblxuLnp3aWNvbi1zZWxlY3QtY3Vyc29yOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWQ5XCI7XG59XG5cbi56d2ljb24tc2VsZWN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWRhXCI7XG59XG5cbi56d2ljb24tc2hhcGUtY2lyY2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWRiXCI7XG59XG5cbi56d2ljb24tc2hhcGUtY29uZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFkY1wiO1xufVxuXG4uendpY29uLXNoYXBlLWN1YmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhZGRcIjtcbn1cblxuLnp3aWNvbi1zaGFwZS1jeWxpbmRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFkZVwiO1xufVxuXG4uendpY29uLXNoYXBlLW9jdGFnb25hbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFkZlwiO1xufVxuXG4uendpY29uLXNoYXBlLXBvbHlnb246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhZTBcIjtcbn1cblxuLnp3aWNvbi1zaGFwZS1zcGhlcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhZTFcIjtcbn1cblxuLnp3aWNvbi1zaGFwZS1zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhZTJcIjtcbn1cblxuLnp3aWNvbi1sYXVnaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFlM1wiO1xufVxuXG4uendpY29uLW5ldXRyYWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhZTRcIjtcbn1cblxuLnp3aWNvbi1zYWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhZTVcIjtcbn1cblxuLnp3aWNvbi1zbWlsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFlNlwiO1xufVxuXG4uendpY29uLWJvbGQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhZTdcIjtcbn1cblxuLnp3aWNvbi1kcmF3LXRleHQtZmllbGQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhZThcIjtcbn1cblxuLnp3aWNvbi1mb250LWhlaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFlOVwiO1xufVxuXG4uendpY29uLWZvbnQtc2l6ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFlYVwiO1xufVxuXG4uendpY29uLWZvbnQtd2lkdGg6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhZWJcIjtcbn1cblxuLnp3aWNvbi1mb250OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWVjXCI7XG59XG5cbi56d2ljb24taGVhZGluZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFlZFwiO1xufVxuXG4uendpY29uLWluZGVudC1sZWZ0LWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFlZVwiO1xufVxuXG4uendpY29uLWluZGVudC1sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWVmXCI7XG59XG5cbi56d2ljb24taW5kZW50LXJpZ2h0LWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFmMFwiO1xufVxuXG4uendpY29uLWluZGVudC1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFmMVwiO1xufVxuXG4uendpY29uLWl0YWxpYzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFmMlwiO1xufVxuXG4uendpY29uLWxpc3QtYnVsbGV0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWYzXCI7XG59XG5cbi56d2ljb24tbGlzdC1udW1iZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhZjRcIjtcbn1cblxuLnp3aWNvbi1vdXRkZW50LWxlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhZjVcIjtcbn1cblxuLnp3aWNvbi1vdXRkZW50LXJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWY2XCI7XG59XG5cbi56d2ljb24tcGFyYWdyYXBoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWY3XCI7XG59XG5cbi56d2ljb24tdGV4dC1hbGlnbi1jZW50ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhZjhcIjtcbn1cblxuLnp3aWNvbi10ZXh0LWFsaWduLWp1c3RpZnk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhZjlcIjtcbn1cblxuLnp3aWNvbi10ZXh0LWFsaWduLWxlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhZmFcIjtcbn1cblxuLnp3aWNvbi10ZXh0LWFsaWduLXJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWZiXCI7XG59XG5cbi56d2ljb24tdGV4dC1jdXJzb3I6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhZmNcIjtcbn1cblxuLnp3aWNvbi10ZXh0LWRlY29yYXRpb246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhZmRcIjtcbn1cblxuLnp3aWNvbi10ZXh0LWZpZWxkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYWZlXCI7XG59XG5cbi56d2ljb24tdGV4dDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWFmZlwiO1xufVxuXG4uendpY29uLXVuZGVybGluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWIwMFwiO1xufVxuXG4uendpY29uLXdyYXAtaW1nLWxlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViMDFcIjtcbn1cblxuLnp3aWNvbi13cmFwLWltZy1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWIwMlwiO1xufVxuXG4uendpY29uLXdyYXAtbGVmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWIwM1wiO1xufVxuXG4uendpY29uLXdyYXAtcmlnaHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViMDRcIjtcbn1cblxuLnp3aWNvbi10cmFuc2Zvcm0tbGVmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWIwNVwiO1xufVxuXG4uendpY29uLXRyYW5zZm9ybS1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWIwNlwiO1xufVxuXG4uendpY29uLWFiLXRlc3Rpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViMDdcIjtcbn1cblxuLnp3aWNvbi1hZ2lsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWIwOFwiO1xufVxuXG4uendpY29uLWJhY2tsb2c6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViMDlcIjtcbn1cblxuLnp3aWNvbi1kZXNpZ24tc3R1ZGlvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjBhXCI7XG59XG5cbi56d2ljb24tZGVzaWduLXZhbGlkYXRpb246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViMGJcIjtcbn1cblxuLnp3aWNvbi1pbmZvcm1hdGlvbi1hcmNoaXRlY3R1cmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViMGNcIjtcbn1cblxuLnp3aWNvbi1pbnRlcnZpZXc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViMGRcIjtcbn1cblxuLnp3aWNvbi1rYW5iYW4tYm9hcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViMGVcIjtcbn1cblxuLnp3aWNvbi1sZWdvLXNlcmlvdXMtcGxheTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWIwZlwiO1xufVxuXG4uendpY29uLXBhcGVyLXByb3RvdHlwZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWIxMFwiO1xufVxuXG4uendpY29uLXBlcnNvbmE6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViMTFcIjtcbn1cblxuLnp3aWNvbi1wcm90b3R5cGUtbW9iaWxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjEyXCI7XG59XG5cbi56d2ljb24tcHJvdG90eXBlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjEzXCI7XG59XG5cbi56d2ljb24tcmVzcG9uc2l2ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWIxNFwiO1xufVxuXG4uendpY29uLXNjcmVlbi1mbG93OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjE1XCI7XG59XG5cbi56d2ljb24tc3RhbmQtdXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViMTZcIjtcbn1cblxuLnp3aWNvbi1zdGlja3ktbm90ZXMxOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjE3XCI7XG59XG5cbi56d2ljb24tdXNhYmlsaXR5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjE4XCI7XG59XG5cbi56d2ljb24tdXNlci1mbG93OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjE5XCI7XG59XG5cbi56d2ljb24tdXNlci1pbnRlcnZpZXc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViMWFcIjtcbn1cblxuLnp3aWNvbi11c2VyLWpvdXJuZXk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViMWJcIjtcbn1cblxuLnp3aWNvbi1jbG91ZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWIxY1wiO1xufVxuXG4uendpY29uLWNsb3VkeS1kYXk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViMWRcIjtcbn1cblxuLnp3aWNvbi1jbG91ZHktbmlnaHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViMWVcIjtcbn1cblxuLnp3aWNvbi1oZWF2eS1yYWluLWRheTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWIxZlwiO1xufVxuXG4uendpY29uLWhlYXZ5LXJhaW4tbmlnaHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViMjBcIjtcbn1cblxuLnp3aWNvbi1oZWF2eS1yYWluOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjIxXCI7XG59XG5cbi56d2ljb24taGVhdnktd2luZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWIyMlwiO1xufVxuXG4uendpY29uLW1pbGQtcmFpbi1kYXk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViMjNcIjtcbn1cblxuLnp3aWNvbi1taWxkLXJhaW4tbmlnaHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViMjRcIjtcbn1cblxuLnp3aWNvbi1taWxkLXJhaW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViMjVcIjtcbn1cblxuLnp3aWNvbi1tb29uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjI2XCI7XG59XG5cbi56d2ljb24tcmFpbi1kYXk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViMjdcIjtcbn1cblxuLnp3aWNvbi1yYWluLW5pZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjI4XCI7XG59XG5cbi56d2ljb24tcmFpbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWIyOVwiO1xufVxuXG4uendpY29uLXNub3ctZGF5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjJhXCI7XG59XG5cbi56d2ljb24tc25vdy1uaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWIyYlwiO1xufVxuXG4uendpY29uLXNub3c6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViMmNcIjtcbn1cblxuLnp3aWNvbi1zdG9ybS1kYXk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViMmRcIjtcbn1cblxuLnp3aWNvbi1zdG9ybS1uaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWIyZVwiO1xufVxuXG4uendpY29uLXN0b3JtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjJmXCI7XG59XG5cbi56d2ljb24tc3VuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjMwXCI7XG59XG5cbi56d2ljb24tdGVtcGVyYXR1cmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViMzFcIjtcbn1cblxuLnp3aWNvbi13aW5kLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWIzMlwiO1xufVxuXG4uendpY29uLXdpbmQtY2xvdWR5LWRheTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWIzM1wiO1xufVxuXG4uendpY29uLXdpbmQtY2xvdWR5LW5pZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjM0XCI7XG59XG5cbi56d2ljb24td2luZC1jbG91ZHk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGViMzVcIjtcbn1cblxuLnp3aWNvbi13aW5kOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYjM2XCI7XG59IiwiLyohXG4gKiBCb290c3RyYXAgQ29sb3JwaWNrZXIgdjIuNS4yXG4gKiBodHRwczovL2l0c2phdmkuY29tL2Jvb3RzdHJhcC1jb2xvcnBpY2tlci9cbiAqXG4gKiBPcmlnaW5hbGx5IHdyaXR0ZW4gYnkgKGMpIDIwMTIgU3RlZmFuIFBldHJlXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UgdjIuMFxuICogaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wLnR4dFxuICpcbiAqL1xuXG5AbWl4aW4gYmdJbWcoJGltZ0Jhc2U2NCkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIjeyRpbWdCYXNlNjR9XCIpO1xufVxuXG5AbWl4aW4gYm9yZGVyUmFkaXVzKCRzaXplKSB7XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogJHNpemU7XG4gIC1tb3otYm9yZGVyLXJhZGl1czogJHNpemU7XG4gIGJvcmRlci1yYWRpdXM6ICRzaXplO1xufVxuXG4uY29sb3JwaWNrZXItc2F0dXJhdGlvbiB7XG4gIHdpZHRoOiAxMDBweDtcbiAgaGVpZ2h0OiAxMDBweDtcbiAgQGluY2x1ZGUgYmdJbWcoJ2RhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBR1FBQUFCa0NBUUFBQURhNjEzZkFBQVA5a2xFUVZSNFhuUldDNDdyTmd3Y0tqbEEwYnYyVkwxUWkvWUVMUmF2NzIwM2lTMXBwcVpvaVhDQWh1QkhWTEk3NHhGdEczL0h6MmpvSU9qUkd1UjVlTVl1Um45WUExZmRzODU5S1g4WnZjekxyOS9wSW1pUjNScWt5OS93bGFqUklkVkUvMVJ1ZmV1LzBObzMvQVNnQlpBSlVrd2dpMGlDYUVhdGVrSkpvRXFpVFFuY2Q2Ny9neU9mUkNac2hUZWQwTmw4TGJMajhENnF4dG9xOS83a0p6L2FILzNYZnU4VndJNStBVUg4RHhFN2dVeWlJcFo1THdpR3pVcUUzQ1NjSnNDRFFIQXN2Qm54V3BrYkMwUU1IbUJwNmxhdFdTMGJudnJDTi94MSt4UGZjZStJajBHQXllQUdHejE1c09pYXgyVXlsUGhLckZhTVBuVldDbHdlcEtoMDdoZGhrVkRzSzJ1b3lFSXlTZXJnamRiWTJWQnRWOFZMcjhNZjltRi80d01iN2tSOEZPaHpGV1paZTdISVpEOUpSSWJlZTI4ZUpLQndlVEI2VHdqWWtBZ1dhVW10RHZlR3cxV3gzelo3NllsUFBmUWQvK2dUVFVGa2lHaUorTlFBc3pVMUVQVC9RSkVndWZvbEFNUGtOVTRDVk95VUlCTGc0eGdsRVpIR1FuVEZPRlYwVmF1bFlkZEJoQTk4NmdlLzdOL3lRaS8zZmxGZ3dmUXEyaWJMblREQlJsOVRtVUh5SkFTUFYvZW9OMFVJU0lyK0lDUUtJRlY0RXBsalNqVjF1RlZVcTloUnRldDVlOWdYdnV5SFBXMHpNaFF4V2FvQkJhOVRnOHZzQ0Vod3cyM1NtZDBDS2pJa21QSW94V3JVQkRnSnFGQ3lFU0Y0M2N0UXhMVW9ITjdRMUt5Vmhxck5ObTNjeTJ2TXlRTlBWS2pjMjlSaDVTU1UrZ2lXZFJKSGtMblFHNzFGUUV1TnlOR0JURGRCUVFBS0N1R2lFVVMvamN5R2JrTVBxOTMxT0l6Yi9kVVBHdVZsRzdmK3NscWtPNU5BQWx6VE1kY3EwTmt6bXNFQm1BUWtiSStwU0hiaXFudVdJQTZsaWpodnF3SXhNeVd4TUdaaVBVNjY5WEpFMXRBRERUczJIV3B3S3h1cWRuVHBPaU9SNDJ4bHpMdG0zcFhHZWwzeGQ4L29UczhYeTBNVjhHTTFSbHNDMlkzV3kzd3V0M00rMm1FVnV4MEd0OWZoelRXeUx2R2lpSllhcVk1RFdSRkl3QWlRNXI2Z0I5R3BRaWhKdzRJOWo1TWtzY2ozQm56R2pCaHY4eG5hNVAxSm80MjhvNklPUFk1S0ZadFZPa0VLcVVqcVFZOUdpK2pySU9Gd0pVRHpSdEE5eHlvSXJHR21rTlJteFZBblpvSytUa1VJZVVZbmk1d0V6Z09HNWlaWDVIQ3IySnlRTnFkaysrRzByZ2Ixb2NoU0lHdXRUajRQN0YwUHVSVUFvbG1oNXNDekFIbjFCWXlhQURoNmJnRmVvQng2dnN0MDkxQ0V2Y1NMV0JCcHFHcTM4NGpaNWxsVkhTd0VTaEx4K0Q0ZDBtVTNENWVFQUpROUtFaE9aVVluREVOVjJxS2dtSWxRaFdmZHZjb1hZYWVnUHAvbjFvS0lPZ1lGcXhyelFTY2lxTmh2LzVGcVBweTZiMFVjWDJ2ZjEzRGZXeVNSU0Vna0VZbEVKSkdRU3lLSlNFUVNDWWxFRXBIZXhJVk8zWE9ldmZmemUyYStQZlB2OXgxcm5lMWMzYjNNbWxtejltRSsrenV6bmdmbncvRStEbGM0TEw0TndIZEZ5N3UzS0dQVm1aNi80ZWVNb0R5cmUzaS9LSEFESUhZTzA0dzl6TzBtQW90dUtucmM3WGFQanZ1NjZiTmU1Y0RUN1JsUGVwRW5mUzJYOGRGMS91dER2RCtPd0dEQnhFZ1F5d0xDdklNWVdCWStEU2h3QUFPUkFkdjlQc3doREFxT1VDaTUrNzFBYkZjRE1SNHhCRE5maHlTS1hQWFoxK1Z1YitRMUx0ZjV6N2VDMEFqVmxkSEkyNnJJRmRLSUF5WUJKQ0ZWVWhWRHd0dEFuTTUyQjNFY3QxVEZRWHpKMHozM2xPdWliL1FPOGcrQ3VPMGdLQlJVODBBOGhrZUowYjFLUlFXbUZRVlNoOG1mM2xwVXBOYVJ1bHpONU5BcnJtS0tHTWlqWGd6azd3NWlqZEZWZ1Q4ZjFJZEZOalZXakRXaWNVWVdFRU1tU0ZEdElMZHpIVzVYdWVIcDdwK3l1UzU0ZXA1L2M1QkUyR3cvZ1dQTllVNC9QWmFhazJWR0VzRmpTYk9mOGlyZWE2S1Fnb2pHQ2swS3haWTMxdFdXZ3p3YXlGOE41S1l5bzNWQURWaWNXV3Jod3pyM1pxSU9hNXhXNXpicU1QUE1peURVUkhESUhRVGVXcTdLRlhjUVBPcXpQT0w1T3YvaUlERUR5N0RIRXd4MFBUZ2pPOFNTMGZPRUhjWk5NdCtYS0VGTWo4UTRRVVN2UHU2SFB1dmQ0TjkveDEyUlB3Y0lWUkNBYWtTT1V6SGdzVVNNRldZekRRK1BpT0pxQU91WWM5amg1VGVjbkEreEhmRnlPWWhlYmVUSDg5UDgwd3JDSnpVamxzeDdldUlWMGc0elFGVVNpQlBpb0lXQkFDRkM3R2dEajhQOTFaU0pPUW1RUDc0TUFuUW84SDVSSWU4a1owa0JjUUNNQWxFcFJEaUtST0J4YlIwa3NkaFdGcTBnUjlxOXVRemtEenVJRlFTUHFBZ1JDQXNDYVZORjJaQUFoeHZ0emNxY25EazZ0cFh4U3NheXFYTElnU09iNnpxZUgrZnZPMGk5WEV1NUVWVitPWmVoUlpKNkJHVGVhUmhDa1R6VklaZUF6YVdHQUZmRXJJUG9nUUk1Q3VSM0hRUXg3RHpCQjE2UjNzN2UwTUJVUGVkald1dGdHL0pVVFBxTWVBUU5FaXl0SlJuSmVhcldVZ2R3Rk54TjdydEJvRUN1ai9PM0JNSGFUSXhRMGE0R2N0aXJlRWxUSkhKdkxUYWFsaWg1a3ZCQ0dNdmtkRVNVTUFkQ0ZhSTR5RzhTcERmUldBcHRxa0FKVXdDRzZCN2xPUkVGU1pCcUtzNTdNRUhxVkpFQndIYTJscDBPaUt0aVExOGd4OVA4OVFyU1h5YzB2T2JCTTR2UG1CQURxSlpMQW8veXpLN3FQU1pzdEN5K2ZEU1psaHJtK1preWpzZjVxMm90ZEMxNHprTGpITGYwbWU5d2pOcVFvMEIxYTZ3QkpSYUlFZ0MyUXc5b2J5L2NSSEEreEhDUXkveGxCMUhWU1YzWS81eVZoc2M3ZEJpMlVvSVdDTWNiRUxaV2d4TkNHVVo1eTRjZUJhTGxFOGRBZnJFb3NyWVQrejh5YTNzeFhuZEZCeHVRaXZOR0VIRkNiTEdCbEJMS0dZSFpvZW9RcGNqdE1uL3VJQ1BlZmN4ZWNwdURPRWVtZzlTLzQ0Y2ZsWlBJbFdvbHlIa0xyRXBnYlM5SVFSbEFnWmdpMFdEanNFaVBoK1BOL0Zrb2dxNEdkelB0YXJsUkdXMnRKd0VLMVJNVEV2ZFZkbWhBS0hPMXBkVXVHUXNWY1grclNmR3pEYndHeUU4TlJQUWM4M0hDYU9rVFp3UHFBQlpCZEZxOHpBTjFndWUwRlBPOHdZVUZCRTFXa013VnpNMWlRNEJJdEZoK0gzNlF5L3lKZzBEUlFJQ21CbCt0YktVQzVjQ2ozeVhJK1NVRkJTNzhaQWNCdEh0K2U5bEJ1aXFwVE5oOXpUdklqenVJV3hWWUdRSnBBWlkrVldTM1FLaDg0aVNaYnd1SWRpRHBjNEt6dFFhL3NqaE1hREpFSkRTWjhtWitrQ0JkQzBKcEtWTlF6WmRLdStFc09lRkNvc3JuZ1ZBa0RTL3V5NmlHblc3VXhtTXBrQjhGeUZLbzZpUVc4ejFIdUJkTXUxcGRrWmRCOGpXVGpsRnROYWlKUlluaUlEY0QrZUVDTXFGTFM5RUQ2RGd4ekNNS25SRDNIWVlBMnVNQ0pVaDcwT0s4RzBFVW5KVjhscWU4bmo4NFFkcUxoZG9Kc2tObEV3MWl2YWpNOEx0UEJoSWVOOTlMRVNYSTl4Y1FJSEZRdWRIbmdaalVoWE9RZUdsVVltQWRkaDVweE1oelYwTTF2TUF0TUZJVm1mcDZmcStEZ0VXZWZqUVZlbnN0YXFVeTNiSlFBaVZsRWloRGdoQ0RJTkZRZzhvVWhvUVBrTzhTQkVNN1NGUTcyVllCd1B1RTdrOHVZRjVMTndnL1RFZDJ6a3VLaklJaFRpSlJsWXJEZk5TMVFMN0RZVWNiY0N5S0pOd093dWNWQ1ZTd0JCai9Ed2doWEEyaFF0QUNnQ0JCUHByZlhrQUlGSVlSWGhPTlFBUkZVMDBUc2g2TEVtbVFVYmtUSW1NaTltZTVxYUhESWVCZ0hlUmJkeEFJcUFKQkNEU29DTlZRZ2xyY2lxWC9aQ0Q5UlJQNnJncEJ2aG1LQUZoZzJGb3JCTFhCWVB0VWpqN3ZDSFBlOFNYYllBWTQ3Z0hCOW1LZXFqaklnLzUzZm1NRDBmUjlCdWc3U0ZjSEk2RUExT0MvRThRVEw0TmdCU0dpQ2l5VENobkkxemNReG15ZlJaR002dzcwMUtSeWJEdnNJSzNMV0R4Nm14R2tjZ2xFWlFMa2F3bkNkcHBaNnNnQ2g4dHJXV0JVUWFVV0NFT2xPczdIQWVuRkU0NVFTdTlSUVFEQXFjaFhOeERxNG9yUVI0NHFSSUZVUXZNK21SSnVCNkdERWl4Z0NiU0JRR1hnaEVFYmRuMVAvek8vUWhBV0NzV3NtUmhMYTJWRmtTWklnU1ZLbWdFUWh2azZLOFlLTVJabDdEd2c0YW1PVVl2RkJmTGxFNFJhc09DQjVTOVBYS3EwQXFHRE1pWUlSZVhGMG1ZY3RJVFdCbXFSNUYzOFg1WTd5SmZlQ3RLQnpOYldZbTVYcHNNcGYzZFJaRDNqUERlc3ZkVkNPczZLWVFYSUZ3MUU0ZmNFOGRIV09lcFpCWHBMSmNBQ1dVWlZNUlpiZnZnWFI0QWs4QTdWVlNLU1Z1dTlwNi9tRnh5RTdjT1dhdnRMcDk1Mk84aHVLODMrZ21IekhhQXNWWExnQXZsOGdQQ3ZIekFGc004R05YR0tQSDVjbU4wMnNYVExhOFFkS1JYTXpIdjY3L2s1QTlrMVVJeDM2VUgvVmxXV3R1S3NzTmlSYXBCNkJhTFhsNk1BK2F5RGNOUzN2L3NZWGdDTDYyMEYxa2s4UWhLQUVPdkt1NER2YWpETzV6a0hjNGZCZzc2YW55RUlJY2FtQlBleDVFSzhBb1ZIaE1XN1FBcVdyWUQxMjA0Q0pCMWhDZk9BVi9QVEJQSDB6Qm1KbXNaWktDRWFBbWRxbTR6TWNZeFlMTjBKdUhUaElBamlyQW5wM3B4N1RSZ0QrWlNEL0s5Mk0xQ05JZ2JDOEV4N0ZrU0VJbFFFRVVRRVFRUUJSQkFCRVVRUUVRVHgzWDBFdmFwOUFoUDM5akw1T3Z1ekFXdXZiRGFUVERJelgyYXlwVUNKMGk3bkFpZ29RQWs5Z1VJVVN4WEVvQ0Z5eVZJdUw5WlFjTVpvQXJud3I0RDBPTFM4akdOR1RnR25zWlFXTVlyY09BUm9JUmVBQUxCZVdoZitSVUNBSUVzRUNGUUhMa3dSNXpqNEpXM3Q1V09VVTVkanZnUUlhd0Q1M0VEc2N0bVl6OHhHYVpHUEJVUjNxTmtpR3dxRElDVVlJRnBxQmdSYWF5Q2ZGaUFXUjJ3V3Zvb2JtenhkRjhONWt5eFhtdmFwL3NnR2NMRi9hb0Jvc2JHK2xFMzk1Ujh6Q0E0QnFVWWdPZ1lxK0h0dkJyVDBMSzE1WDhsWnd4NWY5a2xDWDByZGdYeklJR2JkaFhNcVp0SHpKaHVwdEVqbXNGYzRLem1ONUlGUHRmTTdnV3cya1BjelNJcVFTUFVEWUtZQk1hbXNCQ3BLcGhXMGlBNUg4QWJNRFBKT1FZakxaZzFWazRHNDlHbENZTllBa2RPZDBrd1JROEZDeUFIeWRnTFo2WjJBcXJWdGpEVVE3aENFbXJrRW9vREFzQjJZbkJDdmtCcFo2eUJ2SnBDZDdNbjV6SjZDNFFGMkJVUVBnSEVJR1VyR25IelE4cmxNZWtCZVR5QXp3REprc3h3TTQrdzNCWTAyQjhtSWwwQ21GUm0rWnNjeEF1U252d3FRc0VDVElHU1Y2RkVvSkZUeWdWdXpCNXhBc0txQnZBUUUzK25rVm9KREkxQkpJYVBCV2lrN1pTdTVOSXA1QTNtUlFhVEZ2TGdrTzlmVmdFZ01xcWVWZmIrcDU1dGlqV0grS2VhNzF1YnE0djhTbDgwODlzWktiS0VaTnErVlVmSVNKSkY3ajc5V3JiWWdTOTk0WkVmK25JejBwTkZSV3FhcFNtSzZQNDVpM09RdUl0SWlQRHlnNlJueFo0RDBnK0NGUHhBemx1b1JzV3NhQTZJNkpPcVZXQ2lzRHZKMEJnSFR6TVNSZ01pMHZtaThSK3NSNnRnL1hVaDdrQ2M3a01ScVNOa1RCRHgwT2tBVWVnRmNNYXpjaUJYTnBtNzk4UjZrbFhhcC9XWno0OVRRd0JIcUVjajRvQ1RvVVBqVXVQOWxmeGNieUtNQXdUNmJUZjFxcUlJUURsM2k1b0NFUk5tVm0wd2dXNEE4QkdSeE1YM2hXaDhiRVY1UnZmcDREUzVGM2RqV0gyenRETldLVzdPQmpnakl3c0RXYUtSa25KanFNc2g5UUNhMXA2MDhsTG92RmtCRTk2OURZdFllbFN6d1NSY2c1MzV2QXNGZU5VOVN6UkNZWmI0TERteG1GUUtrd1lHTSs1eS9HN2IxdXhNSXlsTGR5RTV5eEl5WXNvWFdoUUlwelFoWVBpM0prSm9La0I5K0J4RDBPTXV5T0VCZTM2RGd5UFNyeHNjbUFUbGRnS2o4UHhya0Eva0E1UFlNZ2tyb2N3SVE2R1NSR21GMFZhTnFCS1FaNUZZREVaU0R6RlR6cTltQlFqQWF5RTFBK3J5RFR6Y1FaZTBJYmJ4ajdFd3BBbVRySndFaW1aUjlDQ1B0T0Roenh1TnRZMTlaZDJMZi9makNUbkVpREFPZzYyajF1dGIvZHY5bVovYUhDajRBeU9IYnNXMy9BczBCVHpJZ2VKVTdBQUFBQUVsRlRrU3VRbUNDJyk7XG4gIGN1cnNvcjogY3Jvc3NoYWlyO1xuICBmbG9hdDogbGVmdDtcbiAgaSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiA1cHg7XG4gICAgd2lkdGg6IDVweDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjMDAwO1xuICAgIEBpbmNsdWRlIGJvcmRlclJhZGl1cyg1cHgpO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBtYXJnaW46IC00cHggMCAwIC00cHg7XG4gICAgYiB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGhlaWdodDogNXB4O1xuICAgICAgd2lkdGg6IDVweDtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNmZmY7XG4gICAgICBAaW5jbHVkZSBib3JkZXJSYWRpdXMoNXB4KTtcbiAgICB9XG4gIH1cbn1cblxuLmNvbG9ycGlja2VyLWh1ZSxcbi5jb2xvcnBpY2tlci1hbHBoYSB7XG4gIHdpZHRoOiAxNXB4O1xuICBoZWlnaHQ6IDEwMHB4O1xuICBmbG9hdDogbGVmdDtcbiAgY3Vyc29yOiByb3ctcmVzaXplO1xuICBtYXJnaW4tbGVmdDogNHB4O1xuICBtYXJnaW4tYm90dG9tOiA0cHg7XG59XG5cbi5jb2xvcnBpY2tlci1odWUgaSxcbi5jb2xvcnBpY2tlci1hbHBoYSBpIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMXB4O1xuICBiYWNrZ3JvdW5kOiAjMDAwO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2ZmZjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tdG9wOiAtMXB4O1xufVxuXG4uY29sb3JwaWNrZXItaHVlIHtcbiAgQGluY2x1ZGUgYmdJbWcoJ2RhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQUVBQUFCa0NBTUFBQUJ3OHFwU0FBQUJMRkJNVkVYcUZCYi9BQkgvQUNML0FESC9BRUgvQUZEL0FHRC9BRzcvQUg3L0FJMy9BSjMvQUt6L0FMei9BTXIvQU52L0FPci9BUHIyQVAvbUFQL1hBUC9IQVArNEFQK29BUCthQVArSkFQOTdBUDlyQVA5Y0FQOU1BUDgrQVA4dEFQOGZBUDhQQVA4QkF2OEFFUDhBSC84QUwvOEFQdjhBVHY4QVhQOEFiZjhBZS84QWkvOEFtdjhBcXY4QXVQOEF5ZjhBMS84QTUvOEE5LzhBLy9nQS8ra0EvOWtBLzhvQS83b0EvNndBLzVzQS80MEEvMzBBLzI0QS8xNEEvMUFBL3o4QS96RUEveUVBL3hFQi93TU4vd0FkL3dBcy93QTgvd0JLL3dCYi93QnAvd0I1L3dDSS93Q1kvd0NtL3dDMy93REYvd0RWL3dEay93RDEvd0QvK2dELzdBRC8zQUQvekFEL3ZnRC9yUUQvbndEL2pnRC9nQUQvY0FEL1lnRC9VUUQvUXdEL01nRC9KQUQvRkFENEVnNDJxQWVkQUFBQWgwbEVRVlI0WGdYQWczRURBQUFBd0k5dG83WnQyN2ExL3c0OUJBU0ZoRVZFeGNRbEpLV2taV1RsNUJVVWxaUlZWTlhVTlRTMXRIWG8xS1ZiajE1OStnMFlOR1RZaUZGanhrMllOR1hhakZsejVpMVl0R1RaaWxWcjFtM1l0R1hiamwxNzloMDRkT1RZaVZObnpsMjRkT1hhalZ0MzdqMTQ5T1RaaTFkdjNuMzQ5T1hiajE5Ly93T3hFMWRROHJlR0FBQUFBRWxGVGtTdVFtQ0MnKTtcbn1cblxuLmNvbG9ycGlja2VyLWFscGhhIHtcbiAgQGluY2x1ZGUgYmdJbWcoJ2RhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQW9BQUFCa0NBUUFBQUFWeFdrY0FBQUJyMGxFUVZSNFhvMlZ3VTBEUVF4RjdkbVJ1TklGbHpsU0FSM1FBYVhRUWRJQkpWQUJGWERjT1ZBQWQ2N2NqSkxSMDdka2hjU3JrWktmYi90N2JHODhyRm8zQjVnWlBNTnljSXR1Mnhsb0dWN01XSHpNOXp1ekZXQ2ttQTBuSzZBc3pDVUpEVzYrbUc2UjAzbmN3NXY4RU1URXZaMk8zQWxpWWpwc2xibGMwUkY5TG1aWVd4VVJVNmFLeXRXWllzb1dDQWUreHdPWnAxR3NFdWtHaUlrWXhjUUNIY2s5OStnUmdCN0puY3lJQjVTR0VoUDNZaDVQNkp3WCt1NkFuWW90MTA0ZDhESlQ3dUg3TTlKSDZPWmJpbWowdmZNVmFZbkpJWkZKREJXOWtIbGVyTDJDNkpWNG1TdDd1dW8yTjU3UnhuWit1c1FqbjBSMWp3QkpCck5PM2V2SnBWWVVXc0ovRTNVaVhSbHYyNC83WVowNHhtRWRXbHpjS1MrQi9lYXBleU12RmQyazAraFJrL1QwQW1UVzhoNjlzMnNqWU1zZFBudEVDaUlMaEFlSU1aQWVINFF2VXdmbjZpakMwdFRWK2ZUOWt5OGpNOW5LMmc3THkxVmpTcEtZcTZJdnNBbTdNdE51MW9yRXFhL0szS052Z01GZGhmcXVQZkptcDJkYmgwLzhHemI2WTIyVmlhTnI2bjU0MTB6WGRuZ1ZoYnU2WHFkT3RXT3VpbjVoakFCR3A0YTJ1b3RaNzFNVkNmd0RCdDIvdjM3eW82QUFBQUFBU1VWT1JLNUNZSUk9Jyk7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5jb2xvcnBpY2tlci1zYXR1cmF0aW9uLFxuLmNvbG9ycGlja2VyLWh1ZSxcbi5jb2xvcnBpY2tlci1hbHBoYSB7XG4gIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbn1cblxuLmNvbG9ycGlja2VyIHtcbiAgcGFkZGluZzogNHB4O1xuICBtaW4td2lkdGg6IDEzMHB4O1xuICBtYXJnaW4tdG9wOiAxcHg7XG4gIEBpbmNsdWRlIGJvcmRlclJhZGl1cyg0cHgpO1xuICB6LWluZGV4OiAyNTAwO1xufVxuXG4uY29sb3JwaWNrZXI6YmVmb3JlLFxuLmNvbG9ycGlja2VyOmFmdGVyIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGxpbmUtaGVpZ2h0OiAwO1xufVxuXG4uY29sb3JwaWNrZXI6YWZ0ZXIge1xuICBjbGVhcjogYm90aDtcbn1cblxuLmNvbG9ycGlja2VyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICcnO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGJvcmRlci1sZWZ0OiA3cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogN3B4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItYm90dG9tOiA3cHggc29saWQgI2NjYztcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjIpO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogLTdweDtcbiAgbGVmdDogNnB4O1xufVxuXG4uY29sb3JwaWNrZXI6YWZ0ZXIge1xuICBjb250ZW50OiAnJztcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBib3JkZXItbGVmdDogNnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6IDZweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWJvdHRvbTogNnB4IHNvbGlkICNmZmZmZmY7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAtNnB4O1xuICBsZWZ0OiA3cHg7XG59XG5cbi5jb2xvcnBpY2tlciBkaXYge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5jb2xvcnBpY2tlci5jb2xvcnBpY2tlci13aXRoLWFscGhhIHtcbiAgbWluLXdpZHRoOiAxNDBweDtcbn1cblxuLmNvbG9ycGlja2VyLmNvbG9ycGlja2VyLXdpdGgtYWxwaGEgLmNvbG9ycGlja2VyLWFscGhhIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5jb2xvcnBpY2tlci1jb2xvciB7XG4gIGhlaWdodDogMTBweDtcbiAgbWFyZ2luLXRvcDogNXB4O1xuICBjbGVhcjogYm90aDtcbiAgQGluY2x1ZGUgYmdJbWcoJ2RhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQW9BQUFCa0NBUUFBQUFWeFdrY0FBQUJyMGxFUVZSNFhvMlZ3VTBEUVF4RjdkbVJ1TklGbHpsU0FSM1FBYVhRUWRJQkpWQUJGWERjT1ZBQWQ2N2NqSkxSMDdka2hjU3JrWktmYi90N2JHODhyRm8zQjVnWlBNTnljSXR1Mnhsb0dWN01XSHpNOXp1ekZXQ2ttQTBuSzZBc3pDVUpEVzYrbUc2UjAzbmN3NXY4RU1URXZaMk8zQWxpWWpwc2xibGMwUkY5TG1aWVd4VVJVNmFLeXRXWllzb1dDQWUreHdPWnAxR3NFdWtHaUlrWXhjUUNIY2s5OStnUmdCN0puY3lJQjVTR0VoUDNZaDVQNkp3WCt1NkFuWW90MTA0ZDhESlQ3dUg3TTlKSDZPWmJpbWowdmZNVmFZbkpJWkZKREJXOWtIbGVyTDJDNkpWNG1TdDd1dW8yTjU3UnhuWit1c1FqbjBSMWp3QkpCck5PM2V2SnBWWVVXc0ovRTNVaVhSbHYyNC83WVowNHhtRWRXbHpjS1MrQi9lYXBleU12RmQyazAraFJrL1QwQW1UVzhoNjlzMnNqWU1zZFBudEVDaUlMaEFlSU1aQWVINFF2VXdmbjZpakMwdFRWK2ZUOWt5OGpNOW5LMmc3THkxVmpTcEtZcTZJdnNBbTdNdE51MW9yRXFhL0szS052Z01GZGhmcXVQZkptcDJkYmgwLzhHemI2WTIyVmlhTnI2bjU0MTB6WGRuZ1ZoYnU2WHFkT3RXT3VpbjVoakFCR3A0YTJ1b3RaNzFNVkNmd0RCdDIvdjM3eW82QUFBQUFBU1VWT1JLNUNZSUk9Jyk7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgMTAwJTtcbn1cblxuLmNvbG9ycGlja2VyLWNvbG9yIGRpdiB7XG4gIGhlaWdodDogMTBweDtcbn1cblxuLmNvbG9ycGlja2VyLXNlbGVjdG9ycyB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGhlaWdodDogMTBweDtcbiAgbWFyZ2luLXRvcDogNXB4O1xuICBjbGVhcjogYm90aDtcbn1cblxuLmNvbG9ycGlja2VyLXNlbGVjdG9ycyBpIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBmbG9hdDogbGVmdDtcbiAgaGVpZ2h0OiAxMHB4O1xuICB3aWR0aDogMTBweDtcbn1cblxuLmNvbG9ycGlja2VyLXNlbGVjdG9ycyBpICsgaSB7XG4gIG1hcmdpbi1sZWZ0OiAzcHg7XG59XG5cbi5jb2xvcnBpY2tlci1lbGVtZW50IC5pbnB1dC1ncm91cC1hZGRvbiBpLFxuLmNvbG9ycGlja2VyLWVsZW1lbnQgLmFkZC1vbiBpIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGhlaWdodDogMTZweDtcbiAgdmVydGljYWwtYWxpZ246IHRleHQtdG9wO1xuICB3aWR0aDogMTZweDtcbn1cblxuLmNvbG9ycGlja2VyLmNvbG9ycGlja2VyLWlubGluZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmbG9hdDogbm9uZTtcbiAgei1pbmRleDogYXV0bztcbn1cblxuLmNvbG9ycGlja2VyLmNvbG9ycGlja2VyLWhvcml6b250YWwge1xuICB3aWR0aDogMTEwcHg7XG4gIG1pbi13aWR0aDogMTEwcHg7XG4gIGhlaWdodDogYXV0bztcbn1cblxuLmNvbG9ycGlja2VyLmNvbG9ycGlja2VyLWhvcml6b250YWwgLmNvbG9ycGlja2VyLXNhdHVyYXRpb24ge1xuICBtYXJnaW4tYm90dG9tOiA0cHg7XG59XG5cbi5jb2xvcnBpY2tlci5jb2xvcnBpY2tlci1ob3Jpem9udGFsIC5jb2xvcnBpY2tlci1jb2xvciB7XG4gIHdpZHRoOiAxMDBweDtcbn1cblxuLmNvbG9ycGlja2VyLmNvbG9ycGlja2VyLWhvcml6b250YWwgLmNvbG9ycGlja2VyLWh1ZSxcbi5jb2xvcnBpY2tlci5jb2xvcnBpY2tlci1ob3Jpem9udGFsIC5jb2xvcnBpY2tlci1hbHBoYSB7XG4gIHdpZHRoOiAxMDBweDtcbiAgaGVpZ2h0OiAxNXB4O1xuICBmbG9hdDogbGVmdDtcbiAgY3Vyc29yOiBjb2wtcmVzaXplO1xuICBtYXJnaW4tbGVmdDogMHB4O1xuICBtYXJnaW4tYm90dG9tOiA0cHg7XG59XG5cbi5jb2xvcnBpY2tlci5jb2xvcnBpY2tlci1ob3Jpem9udGFsIC5jb2xvcnBpY2tlci1odWUgaSxcbi5jb2xvcnBpY2tlci5jb2xvcnBpY2tlci1ob3Jpem9udGFsIC5jb2xvcnBpY2tlci1hbHBoYSBpIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMTVweDtcbiAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxcHg7XG4gIGJvcmRlcjogbm9uZTtcbiAgbWFyZ2luLXRvcDogMHB4O1xufVxuXG4uY29sb3JwaWNrZXIuY29sb3JwaWNrZXItaG9yaXpvbnRhbCAuY29sb3JwaWNrZXItaHVlIHtcbiAgQGluY2x1ZGUgYmdJbWcoJ2RhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBR1FBQUFBQkNBTUFBQUFmQmZ1UEFBQUJMRkJNVkVYcUZCYi9BQkgvQUNML0FESC9BRUgvQUZEL0FHRC9BRzcvQUg3L0FJMy9BSjMvQUt6L0FMei9BTXIvQU52L0FPci9BUHIyQVAvbUFQL1hBUC9IQVArNEFQK29BUCthQVArSkFQOTdBUDlyQVA5Y0FQOU1BUDgrQVA4dEFQOGZBUDhQQVA4QkF2OEFFUDhBSC84QUwvOEFQdjhBVHY4QVhQOEFiZjhBZS84QWkvOEFtdjhBcXY4QXVQOEF5ZjhBMS84QTUvOEE5LzhBLy9nQS8ra0EvOWtBLzhvQS83b0EvNndBLzVzQS80MEEvMzBBLzI0QS8xNEEvMUFBL3o4QS96RUEveUVBL3hFQi93TU4vd0FkL3dBcy93QTgvd0JLL3dCYi93QnAvd0I1L3dDSS93Q1kvd0NtL3dDMy93REYvd0RWL3dEay93RDEvd0QvK2dELzdBRC8zQUQvekFEL3ZnRC9yUUQvbndEL2pnRC9nQUQvY0FEL1lnRC9VUUQvUXdEL01nRC9KQUQvRkFENEVnNDJxQWVkQUFBQWJVbEVRVlI0WGdYQWdoRURzYnh0bHJadDI3YXgvdzQ5QUNBWVFUR2NJQ21hWVRsZUVDVlpVVFhkTUMxV205M2hkTGs5WHA4L0VBeUZJOUZZUEpGTXBUUFpYTDVRTEpVcjFWcTkwV3kxTzkxZWZ6QWNqU2ZUMlh5eFhLMDMyOTMrY0R5ZEw5ZmIvZkY4dlQvZjN4K0xmUk5YQVJNYkNBQUFBQUJKUlU1RXJrSmdnZz09Jyk7XG59XG5cbi5jb2xvcnBpY2tlci5jb2xvcnBpY2tlci1ob3Jpem9udGFsIC5jb2xvcnBpY2tlci1hbHBoYSB7XG4gIEBpbmNsdWRlIGJnSW1nKCdkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUdRQUFBQUtDQVFBQUFEb0ZUUDFBQUFCOUVsRVFWUjRYb1dUUVc0Vk1SQkV1OXFXRWltTDdEaEVNcDhORitBU25KSkxjQVFnRTFiY2dCVVNrWUtVdUhDclo5cGplcVNVNVluOUxQdTd1bUpRQklJditrN3ZJT3J0SzY2TDRsbXIzcFZPck92M290cDYxOUtaMC9LamROSTc5TDUyVW8wOUZCUVdyVTB2ZmU1dHJlelUraExzb1VLZDNSZXBvdnRlKzB2YnEvN0xqNVhiYUhFQ0thc1I5RzRNUGxicCtnelp4ZDZrb1BFSkNrQVlDNVNqY09UQUlJT0s5MERqYTFJZklaOForekFZOWptM2I1SWErTVQ1c0ZjcVJKclIyQVlZQThLdWE1QnpZUnJGUE5tRDRQUU1lZ0dKTU9mZkpKVXNXaUkzbkNIWlpqSW5OZGZmTFdPdWZ6YmMzSmFib0NBVnh3bW5SSGJoTFNQd1JKNHdVMEJSU2M2SGtFQ1lZVnc5NW5NS2dKT2N5bHhySnR0RTVJYnpmOVhxOUdQdlArV1gzTWlWL01HSGZSdS9TZW50UlFyZkcxR3pzSXJ5dGROWHVjU1JLeFFOSUdITTlZaEdGUUpjZGpOY0JadmZKYXl1WWU0U2lhMUN6d1crMTltV09oZTM3SHN4SldLd2J1L2psdUVVMTVRekFRakFxQ0ViaE1KYzc4R1lWMkUwa29vSER1YlVJbVdrVE9oR3BndjhQb1Q4REpHL2J6eG5hNEJaMGVPRlNPYUxBREdlU3BGc2c1QXplYURaSURRUVhqWjR5LzhyeWZ6VVhCd2RFTFJqVGpDTnZPZVQwck5sckp6OTB2d3k2TjlwWFhRRWx1WDBpbkVscFBXb2tTZGlMQ2ZpTkpKak1LUThRc2g4R0VLUUtNby9laUhyTmJJOVVrc0FBQUFBU1VWT1JLNUNZSUk9Jyk7XG59XG5cbi5jb2xvcnBpY2tlci1yaWdodDpiZWZvcmUge1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogNnB4O1xufVxuXG4uY29sb3JwaWNrZXItcmlnaHQ6YWZ0ZXIge1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogN3B4O1xufVxuXG4uY29sb3JwaWNrZXItbm8tYXJyb3c6YmVmb3JlIHtcbiAgYm9yZGVyLXJpZ2h0OiAwO1xuICBib3JkZXItbGVmdDogMDtcbn1cblxuLmNvbG9ycGlja2VyLW5vLWFycm93OmFmdGVyIHtcbiAgYm9yZGVyLXJpZ2h0OiAwO1xuICBib3JkZXItbGVmdDogMDtcbn1cblxuLmNvbG9ycGlja2VyLFxuLmNvbG9ycGlja2VyLWFscGhhLFxuLmNvbG9ycGlja2VyLXNhdHVyYXRpb24sXG4uY29sb3JwaWNrZXItaHVlLFxuLmNvbG9ycGlja2VyLXNlbGVjdG9ycyB7XG4gICYuY29sb3JwaWNrZXItdmlzaWJsZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxuLmNvbG9ycGlja2VyLFxuLmNvbG9ycGlja2VyLWFscGhhLFxuLmNvbG9ycGlja2VyLXNhdHVyYXRpb24sXG4uY29sb3JwaWNrZXItaHVlLFxuLmNvbG9ycGlja2VyLXNlbGVjdG9ycyB7XG4gICYuY29sb3JwaWNrZXItaGlkZGVuIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5jb2xvcnBpY2tlci1pbmxpbmUuY29sb3JwaWNrZXItdmlzaWJsZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cbiIsInVsLmpxdHJlZS10cmVlIHtcbiAgICBsaXN0LXN0eWxlOiBub25lIG91dHNpZGU7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBwYWRkaW5nOiAwO1xufVxuXG4gICAgdWwuanF0cmVlLXRyZWUuanF0cmVlLWRuZCB7XG4gICAgICAgIHRvdWNoLWFjdGlvbjogbm9uZTtcbiAgICB9XG5cbiAgICB1bC5qcXRyZWUtdHJlZSB1bC5qcXRyZWVfY29tbW9uIHtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZSBvdXRzaWRlO1xuICAgICAgICBtYXJnaW4tbGVmdDogMTJweDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICB1bC5qcXRyZWUtdHJlZSBsaS5qcXRyZWUtY2xvc2VkID4gdWwuanF0cmVlX2NvbW1vbiB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgdWwuanF0cmVlLXRyZWUgbGkuanF0cmVlX2NvbW1vbiB7XG4gICAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gICAgfVxuXG4gICAgdWwuanF0cmVlLXRyZWUgLmpxdHJlZS10b2dnbGVyIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICAgICAgY29sb3I6ICMzMzM7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB9XG5cbiAgICB1bC5qcXRyZWUtdHJlZSAuanF0cmVlLXRvZ2dsZXI6aG92ZXIge1xuICAgICAgICAgICAgY29sb3I6ICMwMDA7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIH1cblxuICAgIHVsLmpxdHJlZS10cmVlIC5qcXRyZWUtdG9nZ2xlci5qcXRyZWUtY2xvc2VkIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgMDtcbiAgICAgICAgfVxuXG4gICAgdWwuanF0cmVlLXRyZWUgLmpxdHJlZS10b2dnbGVyLmpxdHJlZS10b2dnbGVyLWxlZnQge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwLjVlbTtcbiAgICAgICAgfVxuXG4gICAgdWwuanF0cmVlLXRyZWUgLmpxdHJlZS10b2dnbGVyLmpxdHJlZS10b2dnbGVyLXJpZ2h0IHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwLjVlbTtcbiAgICAgICAgfVxuXG4gICAgdWwuanF0cmVlLXRyZWUgLmpxdHJlZS1lbGVtZW50IHtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgfVxuXG4gICAgdWwuanF0cmVlLXRyZWUgLmpxdHJlZS10aXRsZSB7XG4gICAgICAgIGNvbG9yOiAjMWM0MjU3O1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICBtYXJnaW4tbGVmdDogMS41ZW07XG4gICAgfVxuXG4gICAgdWwuanF0cmVlLXRyZWUgLmpxdHJlZS10aXRsZS5qcXRyZWUtdGl0bGUtZm9sZGVyIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICB9XG5cbiAgICB1bC5qcXRyZWUtdHJlZSBsaS5qcXRyZWUtZm9sZGVyIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNHB4O1xuICAgIH1cblxuICAgIHVsLmpxdHJlZS10cmVlIGxpLmpxdHJlZS1mb2xkZXIuanF0cmVlLWNsb3NlZCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxcHg7XG4gICAgICAgIH1cblxuICAgIHVsLmpxdHJlZS10cmVlIGxpLmpxdHJlZS1naG9zdCB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgei1pbmRleDogMTA7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICB9XG5cbiAgICB1bC5qcXRyZWUtdHJlZSBsaS5qcXRyZWUtZ2hvc3Qgc3BhbiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuXG4gICAgdWwuanF0cmVlLXRyZWUgbGkuanF0cmVlLWdob3N0IHNwYW4uanF0cmVlLWNpcmNsZSB7XG4gICAgICAgICAgICBib3JkZXI6IHNvbGlkIDJweCAjMDAwMGZmO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDhweDtcbiAgICAgICAgICAgIHdpZHRoOiA4cHg7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IC00cHg7XG4gICAgICAgICAgICBsZWZ0OiAtNnB4O1xuICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgfVxuXG4gICAgdWwuanF0cmVlLXRyZWUgbGkuanF0cmVlLWdob3N0IHNwYW4uanF0cmVlLWxpbmUge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDBmZjtcbiAgICAgICAgICAgIGhlaWdodDogMnB4O1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogLTFweDtcbiAgICAgICAgICAgIGxlZnQ6IDJweDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG5cbiAgICB1bC5qcXRyZWUtdHJlZSBsaS5qcXRyZWUtZ2hvc3QuanF0cmVlLWluc2lkZSB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogNDhweDtcbiAgICAgICAgfVxuXG4gICAgdWwuanF0cmVlLXRyZWUgc3Bhbi5qcXRyZWUtYm9yZGVyIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbGVmdDogLTJweDtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBib3JkZXI6IHNvbGlkIDJweCAjMDAwMGZmO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gICAgfVxuXG4gICAgdWwuanF0cmVlLXRyZWUgbGkuanF0cmVlLXNlbGVjdGVkID4gLmpxdHJlZS1lbGVtZW50LFxuICAgIHVsLmpxdHJlZS10cmVlIGxpLmpxdHJlZS1zZWxlY3RlZCA+IC5qcXRyZWUtZWxlbWVudDpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM5N2JkZDY7XG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgjYmVlMGY1LCAjODlhZmNhKTtcbiAgICAgICAgdGV4dC1zaGFkb3c6IDAgMXB4IDAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpO1xuICAgIH1cblxuICAgIHVsLmpxdHJlZS10cmVlIC5qcXRyZWUtbW92aW5nID4gLmpxdHJlZS1lbGVtZW50IC5qcXRyZWUtdGl0bGUge1xuICAgICAgICBvdXRsaW5lOiBkYXNoZWQgMXB4ICMwMDAwZmY7XG4gICAgfVxuXG51bC5qcXRyZWUtdHJlZS5qcXRyZWUtcnRsIHtcbiAgICBkaXJlY3Rpb246IHJ0bDtcbn1cblxudWwuanF0cmVlLXRyZWUuanF0cmVlLXJ0bCB1bC5qcXRyZWVfY29tbW9uIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMTJweDtcbiAgICB9XG5cbnVsLmpxdHJlZS10cmVlLmpxdHJlZS1ydGwgLmpxdHJlZS10b2dnbGVyIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDAuNWVtO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgfVxuXG51bC5qcXRyZWUtdHJlZS5qcXRyZWUtcnRsIC5qcXRyZWUtdGl0bGUge1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxLjVlbTtcbiAgICB9XG5cbnVsLmpxdHJlZS10cmVlLmpxdHJlZS1ydGwgLmpxdHJlZS10aXRsZS5qcXRyZWUtdGl0bGUtZm9sZGVyIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgfVxuXG51bC5qcXRyZWUtdHJlZS5qcXRyZWUtcnRsIGxpLmpxdHJlZS1naG9zdCB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgfVxuXG51bC5qcXRyZWUtdHJlZS5qcXRyZWUtcnRsIGxpLmpxdHJlZS1naG9zdCBzcGFuLmpxdHJlZS1jaXJjbGUge1xuICAgICAgICAgICAgcmlnaHQ6IC02cHg7XG4gICAgICAgIH1cblxudWwuanF0cmVlLXRyZWUuanF0cmVlLXJ0bCBsaS5qcXRyZWUtZ2hvc3Qgc3Bhbi5qcXRyZWUtbGluZSB7XG4gICAgICAgICAgICByaWdodDogMnB4O1xuICAgICAgICB9XG5cbnVsLmpxdHJlZS10cmVlLmpxdHJlZS1ydGwgbGkuanF0cmVlLWdob3N0LmpxdHJlZS1pbnNpZGUge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDQ4cHg7XG4gICAgICAgIH1cblxudWwuanF0cmVlLXRyZWUuanF0cmVlLXJ0bCBzcGFuLmpxdHJlZS1ib3JkZXIge1xuICAgICAgICByaWdodDogLTJweDtcbiAgICB9XG5cbnNwYW4uanF0cmVlLWRyYWdnaW5nIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBiYWNrZ3JvdW5kOiAjMDAwO1xuICAgIG9wYWNpdHk6IDAuNjtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgcGFkZGluZzogMnB4IDhweDtcbn1cbiIsIi8vIE51bml0byBSZWd1bGFyXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6J051bml0byc7XG4gIHNyYzogIHVybCgnLi4vLi4vLi4vZm9udHMvbnVuaXRvL251bml0by1yZWd1bGFyLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxuICAgICAgICB1cmwoJy4uLy4uLy4uL2ZvbnRzL251bml0by9udW5pdG8tcmVndWxhci53b2ZmJykgZm9ybWF0KCd3b2ZmJyk7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC1zdHJldGNoOiBub3JtYWw7XG59XG5cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OidOdW5pdG8nO1xuICBzcmM6ICB1cmwoJy4uLy4uLy4uL2ZvbnRzL251bml0by9udW5pdG8tc2VtaWJvbGQud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksXG4gICAgICAgIHVybCgnLi4vLi4vLi4vZm9udHMvbnVuaXRvL251bml0by1zZW1pYm9sZC53b2ZmJykgZm9ybWF0KCd3b2ZmJyk7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC1zdHJldGNoOiBub3JtYWw7XG4gIHVuaWNvZGUtcmFuZ2U6IFUrMDAyMC0yMjEyO1xufVxuXG5cbi8vIE51bml0byBCb2xkXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6J051bml0byc7XG4gIHNyYzogIHVybCgnLi4vLi4vLi4vZm9udHMvbnVuaXRvL251bml0by1ib2xkLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxuICAgICAgICB1cmwoJy4uLy4uLy4uL2ZvbnRzL251bml0by9udW5pdG8tYm9sZC53b2ZmJykgZm9ybWF0KCd3b2ZmJyk7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC1zdHJldGNoOiBub3JtYWw7XG4gIHVuaWNvZGUtcmFuZ2U6IFUrMDAyMC0yMjEyO1xufSIsIi8qIVxuICogQm9vdHN0cmFwIHY0LjYuMCAoaHR0cHM6Ly9nZXRib290c3RyYXAuY29tLylcbiAqIENvcHlyaWdodCAyMDExLTIwMjEgVGhlIEJvb3RzdHJhcCBBdXRob3JzXG4gKiBDb3B5cmlnaHQgMjAxMS0yMDIxIFR3aXR0ZXIsIEluYy5cbiAqIExpY2Vuc2VkIHVuZGVyIE1JVCAoaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2Jsb2IvbWFpbi9MSUNFTlNFKVxuICovXG5cbkBpbXBvcnQgXCJmdW5jdGlvbnNcIjtcbkBpbXBvcnQgXCJ2YXJpYWJsZXNcIjtcbkBpbXBvcnQgXCJtaXhpbnNcIjtcbkBpbXBvcnQgXCJyb290XCI7XG5AaW1wb3J0IFwicmVib290XCI7XG5AaW1wb3J0IFwidHlwZVwiO1xuQGltcG9ydCBcImltYWdlc1wiO1xuQGltcG9ydCBcImNvZGVcIjtcbkBpbXBvcnQgXCJncmlkXCI7XG5AaW1wb3J0IFwidGFibGVzXCI7XG5AaW1wb3J0IFwiZm9ybXNcIjtcbkBpbXBvcnQgXCJidXR0b25zXCI7XG5AaW1wb3J0IFwidHJhbnNpdGlvbnNcIjtcbkBpbXBvcnQgXCJkcm9wZG93blwiO1xuQGltcG9ydCBcImJ1dHRvbi1ncm91cFwiO1xuQGltcG9ydCBcImlucHV0LWdyb3VwXCI7XG5AaW1wb3J0IFwiY3VzdG9tLWZvcm1zXCI7XG5AaW1wb3J0IFwibmF2XCI7XG5AaW1wb3J0IFwibmF2YmFyXCI7XG5AaW1wb3J0IFwiY2FyZFwiO1xuQGltcG9ydCBcImJyZWFkY3J1bWJcIjtcbkBpbXBvcnQgXCJwYWdpbmF0aW9uXCI7XG5AaW1wb3J0IFwiYmFkZ2VcIjtcbkBpbXBvcnQgXCJqdW1ib3Ryb25cIjtcbkBpbXBvcnQgXCJhbGVydFwiO1xuQGltcG9ydCBcInByb2dyZXNzXCI7XG5AaW1wb3J0IFwibWVkaWFcIjtcbkBpbXBvcnQgXCJsaXN0LWdyb3VwXCI7XG5AaW1wb3J0IFwiY2xvc2VcIjtcbkBpbXBvcnQgXCJ0b2FzdHNcIjtcbkBpbXBvcnQgXCJtb2RhbFwiO1xuQGltcG9ydCBcInRvb2x0aXBcIjtcbkBpbXBvcnQgXCJwb3BvdmVyXCI7XG5AaW1wb3J0IFwiY2Fyb3VzZWxcIjtcbkBpbXBvcnQgXCJzcGlubmVyc1wiO1xuQGltcG9ydCBcInV0aWxpdGllc1wiO1xuQGltcG9ydCBcInByaW50XCI7XG4iLCI6cm9vdCB7XG4gIC8vIEN1c3RvbSB2YXJpYWJsZSB2YWx1ZXMgb25seSBzdXBwb3J0IFNhc3NTY3JpcHQgaW5zaWRlIGAje31gLlxuICBAZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkY29sb3JzIHtcbiAgICAtLSN7JGNvbG9yfTogI3skdmFsdWV9O1xuICB9XG5cbiAgQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gICAgLS0jeyRjb2xvcn06ICN7JHZhbHVlfTtcbiAgfVxuXG4gIEBlYWNoICRicCwgJHZhbHVlIGluICRncmlkLWJyZWFrcG9pbnRzIHtcbiAgICAtLWJyZWFrcG9pbnQtI3skYnB9OiAjeyR2YWx1ZX07XG4gIH1cblxuICAvLyBVc2UgYGluc3BlY3RgIGZvciBsaXN0cyBzbyB0aGF0IHF1b3RlZCBpdGVtcyBrZWVwIHRoZSBxdW90ZXMuXG4gIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vc2Fzcy9zYXNzL2lzc3Vlcy8yMzgzI2lzc3VlY29tbWVudC0zMzYzNDkxNzJcbiAgLS1mb250LWZhbWlseS1zYW5zLXNlcmlmOiAje2luc3BlY3QoJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWYpfTtcbiAgLS1mb250LWZhbWlseS1tb25vc3BhY2U6ICN7aW5zcGVjdCgkZm9udC1mYW1pbHktbW9ub3NwYWNlKX07XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnQsIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZSwgcHJvcGVydHktbm8tdmVuZG9yLXByZWZpeFxuXG4vLyBSZWJvb3Rcbi8vXG4vLyBOb3JtYWxpemF0aW9uIG9mIEhUTUwgZWxlbWVudHMsIG1hbnVhbGx5IGZvcmtlZCBmcm9tIE5vcm1hbGl6ZS5jc3MgdG8gcmVtb3ZlXG4vLyBzdHlsZXMgdGFyZ2V0aW5nIGlycmVsZXZhbnQgYnJvd3NlcnMgd2hpbGUgYXBwbHlpbmcgbmV3IHN0eWxlcy5cbi8vXG4vLyBOb3JtYWxpemUgaXMgbGljZW5zZWQgTUlULiBodHRwczovL2dpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzXG5cblxuLy8gRG9jdW1lbnRcbi8vXG4vLyAxLiBDaGFuZ2UgZnJvbSBgYm94LXNpemluZzogY29udGVudC1ib3hgIHNvIHRoYXQgYHdpZHRoYCBpcyBub3QgYWZmZWN0ZWQgYnkgYHBhZGRpbmdgIG9yIGBib3JkZXJgLlxuLy8gMi4gQ2hhbmdlIHRoZSBkZWZhdWx0IGZvbnQgZmFtaWx5IGluIGFsbCBicm93c2Vycy5cbi8vIDMuIENvcnJlY3QgdGhlIGxpbmUgaGVpZ2h0IGluIGFsbCBicm93c2Vycy5cbi8vIDQuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW4gSUUgb24gV2luZG93cyBQaG9uZSBhbmQgaW4gaU9TLlxuLy8gNS4gQ2hhbmdlIHRoZSBkZWZhdWx0IHRhcCBoaWdobGlnaHQgdG8gYmUgY29tcGxldGVseSB0cmFuc3BhcmVudCBpbiBpT1MuXG5cbiosXG4qOjpiZWZvcmUsXG4qOjphZnRlciB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8vIDFcbn1cblxuaHRtbCB7XG4gIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmOyAvLyAyXG4gIGxpbmUtaGVpZ2h0OiAxLjE1OyAvLyAzXG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLy8gNFxuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoJGJsYWNrLCAwKTsgLy8gNVxufVxuXG4vLyBTaGltIGZvciBcIm5ld1wiIEhUTUw1IHN0cnVjdHVyYWwgZWxlbWVudHMgdG8gZGlzcGxheSBjb3JyZWN0bHkgKElFMTAsIG9sZGVyIGJyb3dzZXJzKVxuLy8gVE9ETzogcmVtb3ZlIGluIHY1XG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3ItbGlzdC1jb21tYS1uZXdsaW5lLWFmdGVyXG5hcnRpY2xlLCBhc2lkZSwgZmlnY2FwdGlvbiwgZmlndXJlLCBmb290ZXIsIGhlYWRlciwgaGdyb3VwLCBtYWluLCBuYXYsIHNlY3Rpb24ge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLy8gQm9keVxuLy9cbi8vIDEuIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2Vycy5cbi8vIDIuIEFzIGEgYmVzdCBwcmFjdGljZSwgYXBwbHkgYSBkZWZhdWx0IGBiYWNrZ3JvdW5kLWNvbG9yYC5cbi8vIDMuIFNldCBhbiBleHBsaWNpdCBpbml0aWFsIHRleHQtYWxpZ24gdmFsdWUgc28gdGhhdCB3ZSBjYW4gbGF0ZXIgdXNlXG4vLyAgICB0aGUgYGluaGVyaXRgIHZhbHVlIG9uIHRoaW5ncyBsaWtlIGA8dGg+YCBlbGVtZW50cy5cblxuYm9keSB7XG4gIG1hcmdpbjogMDsgLy8gMVxuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWJhc2U7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9udC1zaXplLWJhc2UpO1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJhc2U7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgY29sb3I6ICRib2R5LWNvbG9yO1xuICB0ZXh0LWFsaWduOiBsZWZ0OyAvLyAzXG4gIGJhY2tncm91bmQtY29sb3I6ICRib2R5LWJnOyAvLyAyXG59XG5cbi8vIEZ1dHVyZS1wcm9vZiBydWxlOiBpbiBicm93c2VycyB0aGF0IHN1cHBvcnQgOmZvY3VzLXZpc2libGUsIHN1cHByZXNzIHRoZSBmb2N1cyBvdXRsaW5lXG4vLyBvbiBlbGVtZW50cyB0aGF0IHByb2dyYW1tYXRpY2FsbHkgcmVjZWl2ZSBmb2N1cyBidXQgd291bGRuJ3Qgbm9ybWFsbHkgc2hvdyBhIHZpc2libGVcbi8vIGZvY3VzIG91dGxpbmUuIEluIGdlbmVyYWwsIHRoaXMgd291bGQgbWVhbiB0aGF0IHRoZSBvdXRsaW5lIGlzIG9ubHkgYXBwbGllZCBpZiB0aGVcbi8vIGludGVyYWN0aW9uIHRoYXQgbGVkIHRvIHRoZSBlbGVtZW50IHJlY2VpdmluZyBwcm9ncmFtbWF0aWMgZm9jdXMgd2FzIGEga2V5Ym9hcmQgaW50ZXJhY3Rpb24sXG4vLyBvciB0aGUgYnJvd3NlciBoYXMgc29tZWhvdyBkZXRlcm1pbmVkIHRoYXQgdGhlIHVzZXIgaXMgcHJpbWFyaWx5IGEga2V5Ym9hcmQgdXNlciBhbmQvb3Jcbi8vIHdhbnRzIGZvY3VzIG91dGxpbmVzIHRvIGFsd2F5cyBiZSBwcmVzZW50ZWQuXG4vL1xuLy8gU2VlIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0NTUy86Zm9jdXMtdmlzaWJsZVxuLy8gYW5kIGh0dHBzOi8vZGV2ZWxvcGVyLnBhY2llbGxvZ3JvdXAuY29tL2Jsb2cvMjAxOC8wMy9mb2N1cy12aXNpYmxlLWFuZC1iYWNrd2FyZHMtY29tcGF0aWJpbGl0eS9cblt0YWJpbmRleD1cIi0xXCJdOmZvY3VzOm5vdCg6Zm9jdXMtdmlzaWJsZSkge1xuICBvdXRsaW5lOiAwICFpbXBvcnRhbnQ7XG59XG5cblxuLy8gQ29udGVudCBncm91cGluZ1xuLy9cbi8vIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIEZpcmVmb3guXG4vLyAyLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlIGFuZCBJRS5cblxuaHIge1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDsgLy8gMVxuICBoZWlnaHQ6IDA7IC8vIDFcbiAgb3ZlcmZsb3c6IHZpc2libGU7IC8vIDJcbn1cblxuXG4vL1xuLy8gVHlwb2dyYXBoeVxuLy9cblxuLy8gUmVtb3ZlIHRvcCBtYXJnaW5zIGZyb20gaGVhZGluZ3Ncbi8vXG4vLyBCeSBkZWZhdWx0LCBgPGgxPmAtYDxoNj5gIGFsbCByZWNlaXZlIHRvcCBhbmQgYm90dG9tIG1hcmdpbnMuIFdlIG51a2UgdGhlIHRvcFxuLy8gbWFyZ2luIGZvciBlYXNpZXIgY29udHJvbCB3aXRoaW4gdHlwZSBzY2FsZXMgYXMgaXQgYXZvaWRzIG1hcmdpbiBjb2xsYXBzaW5nLlxuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLWxpc3QtY29tbWEtbmV3bGluZS1hZnRlclxuaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206ICRoZWFkaW5ncy1tYXJnaW4tYm90dG9tO1xufVxuXG4vLyBSZXNldCBtYXJnaW5zIG9uIHBhcmFncmFwaHNcbi8vXG4vLyBTaW1pbGFybHksIHRoZSB0b3AgbWFyZ2luIG9uIGA8cD5gcyBnZXQgcmVzZXQuIEhvd2V2ZXIsIHdlIGFsc28gcmVzZXQgdGhlXG4vLyBib3R0b20gbWFyZ2luIHRvIHVzZSBgcmVtYCB1bml0cyBpbnN0ZWFkIG9mIGBlbWAuXG5wIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tO1xufVxuXG4vLyBBYmJyZXZpYXRpb25zXG4vL1xuLy8gMS4gRHVwbGljYXRlIGJlaGF2aW9yIHRvIHRoZSBkYXRhLSogYXR0cmlidXRlIGZvciBvdXIgdG9vbHRpcCBwbHVnaW5cbi8vIDIuIEFkZCB0aGUgY29ycmVjdCB0ZXh0IGRlY29yYXRpb24gaW4gQ2hyb21lLCBFZGdlLCBJRSwgT3BlcmEsIGFuZCBTYWZhcmkuXG4vLyAzLiBBZGQgZXhwbGljaXQgY3Vyc29yIHRvIGluZGljYXRlIGNoYW5nZWQgYmVoYXZpb3IuXG4vLyA0LiBSZW1vdmUgdGhlIGJvdHRvbSBib3JkZXIgaW4gRmlyZWZveCAzOS0uXG4vLyA1LiBQcmV2ZW50IHRoZSB0ZXh0LWRlY29yYXRpb24gdG8gYmUgc2tpcHBlZC5cblxuYWJiclt0aXRsZV0sXG5hYmJyW2RhdGEtb3JpZ2luYWwtdGl0bGVdIHsgLy8gMVxuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgLy8gMlxuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7IC8vIDJcbiAgY3Vyc29yOiBoZWxwOyAvLyAzXG4gIGJvcmRlci1ib3R0b206IDA7IC8vIDRcbiAgdGV4dC1kZWNvcmF0aW9uLXNraXAtaW5rOiBub25lOyAvLyA1XG59XG5cbmFkZHJlc3Mge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xufVxuXG5vbCxcbnVsLFxuZGwge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuXG5vbCBvbCxcbnVsIHVsLFxub2wgdWwsXG51bCBvbCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbmR0IHtcbiAgZm9udC13ZWlnaHQ6ICRkdC1mb250LXdlaWdodDtcbn1cblxuZGQge1xuICBtYXJnaW4tYm90dG9tOiAuNXJlbTtcbiAgbWFyZ2luLWxlZnQ6IDA7IC8vIFVuZG8gYnJvd3NlciBkZWZhdWx0XG59XG5cbmJsb2NrcXVvdGUge1xuICBtYXJnaW46IDAgMCAxcmVtO1xufVxuXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkZXI7IC8vIEFkZCB0aGUgY29ycmVjdCBmb250IHdlaWdodCBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmlcbn1cblxuc21hbGwge1xuICBAaW5jbHVkZSBmb250LXNpemUoODAlKTsgLy8gQWRkIHRoZSBjb3JyZWN0IGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnNcbn1cblxuLy9cbi8vIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGVsZW1lbnRzIGZyb20gYWZmZWN0aW5nIHRoZSBsaW5lIGhlaWdodCBpblxuLy8gYWxsIGJyb3dzZXJzLlxuLy9cblxuc3ViLFxuc3VwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBAaW5jbHVkZSBmb250LXNpemUoNzUlKTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuc3ViIHsgYm90dG9tOiAtLjI1ZW07IH1cbnN1cCB7IHRvcDogLS41ZW07IH1cblxuXG4vL1xuLy8gTGlua3Ncbi8vXG5cbmEge1xuICBjb2xvcjogJGxpbmstY29sb3I7XG4gIHRleHQtZGVjb3JhdGlvbjogJGxpbmstZGVjb3JhdGlvbjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IC8vIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIG9uIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cblxuICBAaW5jbHVkZSBob3ZlcigpIHtcbiAgICBjb2xvcjogJGxpbmstaG92ZXItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay1ob3Zlci1kZWNvcmF0aW9uO1xuICB9XG59XG5cbi8vIEFuZCB1bmRvIHRoZXNlIHN0eWxlcyBmb3IgcGxhY2Vob2xkZXIgbGlua3MvbmFtZWQgYW5jaG9ycyAod2l0aG91dCBocmVmKS5cbi8vIEl0IHdvdWxkIGJlIG1vcmUgc3RyYWlnaHRmb3J3YXJkIHRvIGp1c3QgdXNlIGFbaHJlZl0gaW4gcHJldmlvdXMgYmxvY2ssIGJ1dCB0aGF0XG4vLyBjYXVzZXMgc3BlY2lmaWNpdHkgaXNzdWVzIGluIG1hbnkgb3RoZXIgc3R5bGVzIHRoYXQgYXJlIHRvbyBjb21wbGV4IHRvIGZpeC5cbi8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE5NDAyXG5cbmE6bm90KFtocmVmXSk6bm90KFtjbGFzc10pIHtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICBAaW5jbHVkZSBob3ZlcigpIHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cbn1cblxuXG4vL1xuLy8gQ29kZVxuLy9cblxucHJlLFxuY29kZSxcbmtiZCxcbnNhbXAge1xuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKDFlbSk7IC8vIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbn1cblxucHJlIHtcbiAgLy8gUmVtb3ZlIGJyb3dzZXIgZGVmYXVsdCB0b3AgbWFyZ2luXG4gIG1hcmdpbi10b3A6IDA7XG4gIC8vIFJlc2V0IGJyb3dzZXIgZGVmYXVsdCBvZiBgMWVtYCB0byB1c2UgYHJlbWBzXG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIC8vIERvbid0IGFsbG93IGNvbnRlbnQgdG8gYnJlYWsgb3V0c2lkZVxuICBvdmVyZmxvdzogYXV0bztcbiAgLy8gRGlzYWJsZSBhdXRvLWhpZGluZyBzY3JvbGxiYXIgaW4gSUUgJiBsZWdhY3kgRWRnZSB0byBhdm9pZCBvdmVybGFwLFxuICAvLyBtYWtpbmcgaXQgaW1wb3NzaWJsZSB0byBpbnRlcmFjdCB3aXRoIHRoZSBjb250ZW50XG4gIC1tcy1vdmVyZmxvdy1zdHlsZTogc2Nyb2xsYmFyO1xufVxuXG5cbi8vXG4vLyBGaWd1cmVzXG4vL1xuXG5maWd1cmUge1xuICAvLyBBcHBseSBhIGNvbnNpc3RlbnQgbWFyZ2luIHN0cmF0ZWd5IChtYXRjaGVzIG91ciB0eXBlIHN0eWxlcykuXG4gIG1hcmdpbjogMCAwIDFyZW07XG59XG5cblxuLy9cbi8vIEltYWdlcyBhbmQgY29udGVudFxuLy9cblxuaW1nIHtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgYm9yZGVyLXN0eWxlOiBub25lOyAvLyBSZW1vdmUgdGhlIGJvcmRlciBvbiBpbWFnZXMgaW5zaWRlIGxpbmtzIGluIElFIDEwLS5cbn1cblxuc3ZnIHtcbiAgLy8gV29ya2Fyb3VuZCBmb3IgdGhlIFNWRyBvdmVyZmxvdyBidWcgaW4gSUUxMC8xMSBpcyBzdGlsbCByZXF1aXJlZC5cbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjY4NzhcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuXG4vL1xuLy8gVGFibGVzXG4vL1xuXG50YWJsZSB7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7IC8vIFByZXZlbnQgZG91YmxlIGJvcmRlcnNcbn1cblxuY2FwdGlvbiB7XG4gIHBhZGRpbmctdG9wOiAkdGFibGUtY2VsbC1wYWRkaW5nO1xuICBwYWRkaW5nLWJvdHRvbTogJHRhYmxlLWNlbGwtcGFkZGluZztcbiAgY29sb3I6ICR0YWJsZS1jYXB0aW9uLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBjYXB0aW9uLXNpZGU6IGJvdHRvbTtcbn1cblxuLy8gMS4gUmVtb3ZlcyBmb250LXdlaWdodCBib2xkIGJ5IGluaGVyaXRpbmdcbi8vIDIuIE1hdGNoZXMgZGVmYXVsdCBgPHRkPmAgYWxpZ25tZW50IGJ5IGluaGVyaXRpbmcgYHRleHQtYWxpZ25gLlxuLy8gMy4gRml4IGFsaWdubWVudCBmb3IgU2FmYXJpXG5cbnRoIHtcbiAgZm9udC13ZWlnaHQ6ICR0YWJsZS10aC1mb250LXdlaWdodDsgLy8gMVxuICB0ZXh0LWFsaWduOiBpbmhlcml0OyAvLyAyXG4gIHRleHQtYWxpZ246IC13ZWJraXQtbWF0Y2gtcGFyZW50OyAvLyAzXG59XG5cblxuLy9cbi8vIEZvcm1zXG4vL1xuXG5sYWJlbCB7XG4gIC8vIEFsbG93IGxhYmVscyB0byB1c2UgYG1hcmdpbmAgZm9yIHNwYWNpbmcuXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogJGxhYmVsLW1hcmdpbi1ib3R0b207XG59XG5cbi8vIFJlbW92ZSB0aGUgZGVmYXVsdCBgYm9yZGVyLXJhZGl1c2AgdGhhdCBtYWNPUyBDaHJvbWUgYWRkcy5cbi8vXG4vLyBEZXRhaWxzIGF0IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjQwOTNcbmJ1dHRvbiB7XG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cblxuLy8gRXhwbGljaXRseSByZW1vdmUgZm9jdXMgb3V0bGluZSBpbiBDaHJvbWl1bSB3aGVuIGl0IHNob3VsZG4ndCBiZVxuLy8gdmlzaWJsZSAoZS5nLiBhcyByZXN1bHQgb2YgbW91c2UgY2xpY2sgb3IgdG91Y2ggdGFwKS4gSXQgYWxyZWFkeVxuLy8gc2hvdWxkIGJlIGRvaW5nIHRoaXMgYXV0b21hdGljYWxseSwgYnV0IHNlZW1zIHRvIGN1cnJlbnRseSBiZVxuLy8gY29uZnVzZWQgYW5kIGFwcGxpZXMgaXRzIHZlcnkgdmlzaWJsZSB0d28tdG9uZSBvdXRsaW5lIGFueXdheS5cblxuYnV0dG9uOmZvY3VzOm5vdCg6Zm9jdXMtdmlzaWJsZSkge1xuICBvdXRsaW5lOiAwO1xufVxuXG5pbnB1dCxcbmJ1dHRvbixcbnNlbGVjdCxcbm9wdGdyb3VwLFxudGV4dGFyZWEge1xuICBtYXJnaW46IDA7IC8vIFJlbW92ZSB0aGUgbWFyZ2luIGluIEZpcmVmb3ggYW5kIFNhZmFyaVxuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKGluaGVyaXQpO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbn1cblxuYnV0dG9uLFxuaW5wdXQge1xuICBvdmVyZmxvdzogdmlzaWJsZTsgLy8gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZVxufVxuXG5idXR0b24sXG5zZWxlY3Qge1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTsgLy8gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBGaXJlZm94XG59XG5cbi8vIFNldCB0aGUgY3Vyc29yIGZvciBub24tYDxidXR0b24+YCBidXR0b25zXG4vL1xuLy8gRGV0YWlscyBhdCBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8zMDU2MlxuW3JvbGU9XCJidXR0b25cIl0ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi8vIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2Ygd29yZC13cmFwIGluIFNhZmFyaS5cbi8vXG4vLyBEZXRhaWxzIGF0IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjQ5OTBcbnNlbGVjdCB7XG4gIHdvcmQtd3JhcDogbm9ybWFsO1xufVxuXG5cbi8vIDEuIFByZXZlbnQgYSBXZWJLaXQgYnVnIHdoZXJlICgyKSBkZXN0cm95cyBuYXRpdmUgYGF1ZGlvYCBhbmQgYHZpZGVvYFxuLy8gICAgY29udHJvbHMgaW4gQW5kcm9pZCA0LlxuLy8gMi4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbmJ1dHRvbixcblt0eXBlPVwiYnV0dG9uXCJdLCAvLyAxXG5bdHlwZT1cInJlc2V0XCJdLFxuW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLy8gMlxufVxuXG4vLyBPcGluaW9uYXRlZDogYWRkIFwiaGFuZFwiIGN1cnNvciB0byBub24tZGlzYWJsZWQgYnV0dG9uIGVsZW1lbnRzLlxuQGlmICRlbmFibGUtcG9pbnRlci1jdXJzb3ItZm9yLWJ1dHRvbnMge1xuICBidXR0b24sXG4gIFt0eXBlPVwiYnV0dG9uXCJdLFxuICBbdHlwZT1cInJlc2V0XCJdLFxuICBbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgJjpub3QoOmRpc2FibGVkKSB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxuICB9XG59XG5cbi8vIFJlbW92ZSBpbm5lciBib3JkZXIgYW5kIHBhZGRpbmcgZnJvbSBGaXJlZm94LCBidXQgZG9uJ3QgcmVzdG9yZSB0aGUgb3V0bGluZSBsaWtlIE5vcm1hbGl6ZS5cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwiYnV0dG9uXCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJyZXNldFwiXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwic3VibWl0XCJdOjotbW96LWZvY3VzLWlubmVyIHtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xufVxuXG5pbnB1dFt0eXBlPVwicmFkaW9cIl0sXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvLyAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBJRSAxMC1cbiAgcGFkZGluZzogMDsgLy8gMi4gUmVtb3ZlIHRoZSBwYWRkaW5nIGluIElFIDEwLVxufVxuXG5cbnRleHRhcmVhIHtcbiAgb3ZlcmZsb3c6IGF1dG87IC8vIFJlbW92ZSB0aGUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUuXG4gIC8vIFRleHRhcmVhcyBzaG91bGQgcmVhbGx5IG9ubHkgcmVzaXplIHZlcnRpY2FsbHkgc28gdGhleSBkb24ndCBicmVhayB0aGVpciAoaG9yaXpvbnRhbCkgY29udGFpbmVycy5cbiAgcmVzaXplOiB2ZXJ0aWNhbDtcbn1cblxuZmllbGRzZXQge1xuICAvLyBCcm93c2VycyBzZXQgYSBkZWZhdWx0IGBtaW4td2lkdGg6IG1pbi1jb250ZW50O2Agb24gZmllbGRzZXRzLFxuICAvLyB1bmxpa2UgZS5nLiBgPGRpdj5gcywgd2hpY2ggaGF2ZSBgbWluLXdpZHRoOiAwO2AgYnkgZGVmYXVsdC5cbiAgLy8gU28gd2UgcmVzZXQgdGhhdCB0byBlbnN1cmUgZmllbGRzZXRzIGJlaGF2ZSBtb3JlIGxpa2UgYSBzdGFuZGFyZCBibG9jayBlbGVtZW50LlxuICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMjM1OVxuICAvLyBhbmQgaHR0cHM6Ly9odG1sLnNwZWMud2hhdHdnLm9yZy9tdWx0aXBhZ2UvI3RoZS1maWVsZHNldC1hbmQtbGVnZW5kLWVsZW1lbnRzXG4gIG1pbi13aWR0aDogMDtcbiAgLy8gUmVzZXQgdGhlIGRlZmF1bHQgb3V0bGluZSBiZWhhdmlvciBvZiBmaWVsZHNldHMgc28gdGhleSBkb24ndCBhZmZlY3QgcGFnZSBsYXlvdXQuXG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgYm9yZGVyOiAwO1xufVxuXG4vLyAxLiBDb3JyZWN0IHRoZSB0ZXh0IHdyYXBwaW5nIGluIEVkZ2UgYW5kIElFLlxuLy8gMi4gQ29ycmVjdCB0aGUgY29sb3IgaW5oZXJpdGFuY2UgZnJvbSBgZmllbGRzZXRgIGVsZW1lbnRzIGluIElFLlxubGVnZW5kIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMCU7IC8vIDFcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luLWJvdHRvbTogLjVyZW07XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgxLjVyZW0pO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgY29sb3I6IGluaGVyaXQ7IC8vIDJcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDsgLy8gMVxufVxuXG5wcm9ncmVzcyB7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgLy8gQWRkIHRoZSBjb3JyZWN0IHZlcnRpY2FsIGFsaWdubWVudCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cbn1cblxuLy8gQ29ycmVjdCB0aGUgY3Vyc29yIHN0eWxlIG9mIGluY3JlbWVudCBhbmQgZGVjcmVtZW50IGJ1dHRvbnMgaW4gQ2hyb21lLlxuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuW3R5cGU9XCJzZWFyY2hcIl0ge1xuICAvLyBUaGlzIG92ZXJyaWRlcyB0aGUgZXh0cmEgcm91bmRlZCBjb3JuZXJzIG9uIHNlYXJjaCBpbnB1dHMgaW4gaU9TIHNvIHRoYXQgb3VyXG4gIC8vIGAuZm9ybS1jb250cm9sYCBjbGFzcyBjYW4gcHJvcGVybHkgc3R5bGUgdGhlbS4gTm90ZSB0aGF0IHRoaXMgY2Fubm90IHNpbXBseVxuICAvLyBiZSBhZGRlZCB0byBgLmZvcm0tY29udHJvbGAgYXMgaXQncyBub3Qgc3BlY2lmaWMgZW5vdWdoLiBGb3IgZGV0YWlscywgc2VlXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTE1ODYuXG4gIG91dGxpbmUtb2Zmc2V0OiAtMnB4OyAvLyAyLiBDb3JyZWN0IHRoZSBvdXRsaW5lIHN0eWxlIGluIFNhZmFyaS5cbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4vL1xuLy8gUmVtb3ZlIHRoZSBpbm5lciBwYWRkaW5nIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIG1hY09TLlxuLy9cblxuW3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbi8vXG4vLyAxLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuLy8gMi4gQ2hhbmdlIGZvbnQgcHJvcGVydGllcyB0byBgaW5oZXJpdGAgaW4gU2FmYXJpLlxuLy9cblxuOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gIGZvbnQ6IGluaGVyaXQ7IC8vIDJcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8vIDFcbn1cblxuLy9cbi8vIENvcnJlY3QgZWxlbWVudCBkaXNwbGF5c1xuLy9cblxub3V0cHV0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG5zdW1tYXJ5IHtcbiAgZGlzcGxheTogbGlzdC1pdGVtOyAvLyBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBhbGwgYnJvd3NlcnNcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG50ZW1wbGF0ZSB7XG4gIGRpc3BsYXk6IG5vbmU7IC8vIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFXG59XG5cbi8vIEFsd2F5cyBoaWRlIGFuIGVsZW1lbnQgd2l0aCB0aGUgYGhpZGRlbmAgSFRNTCBhdHRyaWJ1dGUgKGZyb20gUHVyZUNTUykuXG4vLyBOZWVkZWQgZm9yIHByb3BlciBkaXNwbGF5IGluIElFIDEwLS5cbltoaWRkZW5dIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuIiwiLy8gT3B0aW9uc1xuJGVuYWJsZS10cmFuc2l0aW9uczogdHJ1ZTtcbiRlbmFibGUtc2hhZG93czogZmFsc2U7XG5cblxuLy8gQ29sb3JzXG4kd2hpdGU6ICNmZmZmZmY7XG4kYmxhY2s6ICMwMDAwMDA7XG4kYmx1ZTogIzAwN2JmZjtcbiRpbmRpZ286ICM2NjEwZjI7XG4kcHVycGxlOiAjNmY0MmMxO1xuJHBpbms6ICNlODNlOGM7XG4kcmVkOiAjZGMzNTQ1O1xuJG9yYW5nZTogI2ZkN2UxNDtcbiR5ZWxsb3c6ICNmZmMxMDc7XG4kZ3JlZW46ICMyOGE3NDU7XG4kdGVhbDogIzIwYzk5NztcbiRjeWFuOiAjMTdhMmI4O1xuXG4kY3VzdG9tLWNvbG9yczogKFxuICAnYmx1ZSc6ICRibHVlLFxuICAnaW5kaWdvJzogJGluZGlnbyxcbiAgJ3B1cnBsZSc6ICRwdXJwbGUsXG4gICdwaW5rJzogJHBpbmssXG4gICdyZWQnOiAkcmVkLFxuICAnb3JhbmdlJzogJG9yYW5nZSxcbiAgJ3llbGxvdyc6ICR5ZWxsb3csXG4gICdncmVlbic6ICRncmVlbixcbiAgJ3RlYWwnOiAkdGVhbCxcbiAgJ2N5YW4nOiAkY3lhbixcbiAgJ2JsYWNrJzogJGJsYWNrXG4pO1xuXG4kdGhlbWUtY29sb3JzOiAoXG4gIHByaW1hcnk6ICRibHVlLFxuICBzdWNjZXNzOiAkZ3JlZW4sXG4gIGluZm86ICRjeWFuLFxuICB3YXJuaW5nOiAkeWVsbG93LFxuICBkYW5nZXI6ICRyZWRcbik7XG5cbi8vIENvbW1vbiBhY3Rpb24gY29sb3JzXG4kYmctaG92ZXI6IHJnYmEoJHdoaXRlLCAwLjA2KTtcbiRiZy1oaWdobGlnaHRlZC1saWdodDogcmdiYSgkd2hpdGUsIDAuMDgpO1xuJGJnLWhpZ2hsaWdodGVkLWxpZ2h0ZXN0OiByZ2JhKCR3aGl0ZSwgMC4wMik7XG4kYmctaGlnaGxpZ2h0ZWQtZGFyazogcmdiYSgkYmxhY2ssIDAuMik7XG4kYmctaGlnaGxpZ2h0ZWQtZGFya2VzdDogcmdiYSgkYmxhY2ssIDAuOTYpO1xuJGJvcmRlci1saWdodDogcmdiYSgkd2hpdGUsIDAuMTI1KTtcbiRib3JkZXItbGlnaHRlc3Q6IHJnYmEoJHdoaXRlLCAwLjA0KTtcbiRjb2xvci1pbnZlcnNlOiAjMTMxMzEzO1xuXG5cbi8vIEJ1dHRvbnNcbiRidG4tYm94LXNoYWRvdzogMCAycHggMnB4IDAgcmdiYSgkYmxhY2ssIDAuMTIpO1xuJGJ0bi1mb2N1cy1ib3gtc2hhZG93OiBub25lO1xuJGJ0bi1mb2N1cy13aWR0aDogMDtcbiRidG4tYWN0aXZlLWJveC1zaGFkb3c6ICRidG4tZm9jdXMtYm94LXNoYWRvdztcbiRpbnB1dC1idG4tcGFkZGluZy15OiAwLjZyZW07XG4kaW5wdXQtYnRuLXBhZGRpbmcteDogMXJlbTtcbiRpbnB1dC1idG4tcGFkZGluZy15LXNtOiAwLjI1cmVtO1xuJGlucHV0LWJ0bi1wYWRkaW5nLXgtc206IDAuNTVyZW07XG5cbiRidG4tdGhlbWUtY29sb3I6ICR3aGl0ZTtcbiRidG4tdGhlbWUtYmc6IHJnYmEoJHdoaXRlLCAwLjEyNSk7XG4kYnRuLXRoZW1lLWhvdmVyLWJnOiByZ2JhKCR3aGl0ZSwgMC4xNSk7XG4kYnRuLXRoZW1lLWFjdGl2ZS1iZzogcmdiYSgkd2hpdGUsIDAuMzUpO1xuJGJ0bi10aGVtZS1kYXJrLWNvbG9yOiAkYmxhY2s7XG4kYnRuLXRoZW1lLWRhcmstYmc6IHJnYmEoJGJsYWNrLCAwLjI1KTtcbiRidG4tdGhlbWUtZGFyay1ob3Zlci1iZzogcmdiYSgkYmxhY2ssIDAuNSk7XG4kYnRuLXRoZW1lLWRhcmstYWN0aXZlLWJnOiByZ2JhKCRibGFjaywgMC43NSk7XG5cbi8vIFR5cG9ncmFwaHlcbiRmb250LWZhbWlseS1zYW5zLXNlcmlmOiAnTnVuaXRvJywgc2Fucy1zZXJpZjtcbiRmb250LWZhbWlseS1pY29uOiAnendpY29uJztcbiRmb250LXNpemUtcm9vdDogMTNweDtcbiR0ZXh0LW11dGVkOiByZ2JhKCR3aGl0ZSwgMC41KTtcbiRoZWFkaW5ncy1jb2xvcjogJGJsYWNrO1xuJGZvbnQtd2VpZ2h0LWJvbGQ6IDYwMDtcbiRoZWFkaW5ncy1mb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG4kYmxvY2txdW90ZS1zbWFsbC1jb2xvcjogJHRleHQtbXV0ZWQ7XG5cblxuLy8gTGlua3NcbiRsaW5rLWhvdmVyLWRlY29yYXRpb246IG5vbmU7XG4kbGluay1jb2xvcjogJGJsdWU7XG5cblxuLy8gQm9keVxuJGJvZHktYmc6ICR3aGl0ZTtcbiRib2R5LWNvbG9yOiAkYmxhY2s7XG5cbi8vRmxhdHBpY2tyXG4kZmxhdHBpY2tyLWNvbG9yOiAkd2hpdGU7XG5cbi8vIEZvcm1cbiRpbnB1dC1iZzogdHJhbnNwYXJlbnQ7XG4kaW5wdXQtY29sb3I6ICRib2R5LWNvbG9yO1xuJGlucHV0LWRpc2FibGVkLWJnOiB0cmFuc3BhcmVudDtcbiRpbnB1dC1ib3gtc2hhZG93OiByZ2JhKCRibGFjaywgMCk7XG4kaW5wdXQtYm9yZGVyLWNvbG9yOiByZ2JhKCRibGFjaywgMSk7XG4kaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yOiByZ2JhKCRibGFjaywgMSk7XG4kZm9ybS1ncm91cC1tYXJnaW4tYm90dG9tOiAycmVtO1xuJGlucHV0LWZvY3VzLWJveC1zaGFkb3c6IDAgMCA1cHggcmdiYSgkd2hpdGUsIDAuMTUpO1xuJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yOiByZ2JhKCRibGFjaywgMC40KTtcbiRpbnB1dC1ib3JkZXItcmFkaXVzOiAwO1xuJGlucHV0LWJvcmRlci1yYWRpdXMtbGc6IDA7XG4kaW5wdXQtYm9yZGVyLXJhZGl1cy1zbTogMDtcbiRzZWxlY3QtYmc6IHVybCguLi8uLi8uLi9pbWFnZXMvdGVtcGxhdGVzL2Zvcm1zL3NlbGVjdC1jYXJldC5zdmcpIG5vLXJlcGVhdCBib3R0b20gNXB4IHJpZ2h0IDVweDtcblxuXG4vLyBGb3JtIFZhbGlkYXRpb25cbi8vJGZvcm0tZmVlZGJhY2staWNvbi12YWxpZDogdXJsKC4uLy4uLy4uL2ltYWdlcy90ZW1wbGF0ZXMvZm9ybXMvZm9ybS12YWxpZGF0aW9uLXZhbGlkLnN2Zyk7XG4vLyRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZDogdXJsKC4uLy4uLy4uL2ltYWdlcy90ZW1wbGF0ZXMvZm9ybXMvZm9ybS12YWxpZGF0aW9uLWludmFsaWQuc3ZnKTtcbiRmb3JtLWZlZWRiYWNrLWZvbnQtc2l6ZTogMC45cmVtO1xuXG5cbi8vIEN1c3RvbSBGb3Jtc1xuJGN1c3RvbS1jb250cm9sLWd1dHRlcjogMC43NXJlbTtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZTogMS41Mzg0N3JlbTtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm9yZGVyLWNvbG9yOiByZ2JhKCR3aGl0ZSwgMC4zNSk7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtYm9yZGVyLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJvcmRlci1jb2xvcjtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1iZzogcmdiYSgkd2hpdGUsIDAuMTUpO1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtYmc6IHJnYmEoJHdoaXRlLCAwLjE1KTtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItZm9jdXMtYmc6IHJnYmEoJHdoaXRlLCAwLjE1KTtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1ib3JkZXItY29sb3I6IHJnYmEoJHdoaXRlLCAwLjUpO1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1mb2N1cy1ib3JkZXItY29sb3I6IHJnYmEoJHdoaXRlLCAwLjUpO1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtYm9yZGVyLWNvbG9yOiByZ2JhKCR3aGl0ZSwgMC41KTtcbi8vJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaWNvbi1jaGVja2VkOiB1cmwoLi4vLi4vLi4vaW1hZ2VzL3RlbXBsYXRlcy9mb3Jtcy9jaGVja2JveC1jaGVja2VkLnN2Zyk7XG4kY3VzdG9tLWNvbnRyb2wtbGFiZWwtZGlzYWJsZWQtY29sb3I6IHJnYmEoJHdoaXRlLCAwLjQpO1xuJGN1c3RvbS1zZWxlY3QtYmFja2dyb3VuZDogJHdoaXRlO1xuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1czogMDtcblxuXG4vLyBMYXlvdXRcbiRjb250ZW50LXRpdGxlLWhlYWRpbmctY29sb3I6ICR3aGl0ZTtcblxuXG4vLyBIZWFkZXJcbiRoZWFkZXItaGVpZ2h0OiA3MnB4O1xuJGhlYWRlci1zaGFkb3c6IDAgMCAxM3B4IHJnYmEoJGJsYWNrLCAwLjIyKTtcbiRoZWFkZXItei1pbmRleDogMTAwO1xuJGhlYWRlci1iZzogcmdiYSgkYmxhY2ssIDAuMyk7XG4kaGVhZGVyLWJnLXNjcm9sbGVkOiAkYmctaGlnaGxpZ2h0ZWQtZGFya2VzdDtcblxuXG4vLyBEcm9wZG93blxuJGRyb3Bkb3duLWJnOiAkYmctaGlnaGxpZ2h0ZWQtbGlnaHQ7XG4kZHJvcGRvd24tYm9yZGVyLXdpZHRoOiAxO1xuJGRyb3Bkb3duLWJvcmRlci1jb2xvcjogJGJsYWNrO1xuJGRyb3Bkb3duLWxpbmstY29sb3I6IHJnYmEoJHdoaXRlLCAwLjg1KTtcbiRkcm9wZG93bi1saW5rLWhvdmVyLWNvbG9yOiAkd2hpdGU7XG4kZHJvcGRvd24tbGluay1hY3RpdmUtY29sb3I6ICRkcm9wZG93bi1saW5rLWhvdmVyLWNvbG9yO1xuJGRyb3Bkb3duLWxpbmstaG92ZXItYmc6ICRiZy1ob3ZlcjtcbiRkcm9wZG93bi1saW5rLWFjdGl2ZS1iZzogJGRyb3Bkb3duLWxpbmstaG92ZXItYmc7XG4kZHJvcGRvd24tcGFkZGluZy15OiAwLjhyZW07XG4kZHJvcGRvd24taXRlbS1wYWRkaW5nLXg6IDEuNXJlbTtcbiRkcm9wZG93bi1pdGVtLXBhZGRpbmcteTogMC41cmVtO1xuJGRyb3Bkb3duLXNwYWNlcjogMDtcbiRkcm9wZG93bi1kaXZpZGVyLWJnOiByZ2JhKCR3aGl0ZSwgMC4wNTUpO1xuJGRyb3Bkb3duLWhlYWRlci1jb2xvcjogJHdoaXRlO1xuJGRyb3Bkb3duLW1lbnUtaW52ZXJ0LWJnOiByZ2JhKCR3aGl0ZSwgMC45NSk7XG4kZHJvcGRvd24taXRlbS1pbnZlcnQtY29sb3I6ICRibGFjaztcbiRkcm9wZG93bi1pdGVtLWludmVydC1ob3Zlci1iZzogcmdiYSgkYmxhY2ssIDAuMSk7XG4kY2FyZXQtc3BhY2luZzogMC41cmVtO1xuXG5cbi8vIEJvcmRlciBSYWRpdXNcbiRib3JkZXItcmFkaXVzOiAycHg7XG4kYm9yZGVyLXJhZGl1cy1sZzogMnB4O1xuJGJvcmRlci1yYWRpdXMtc206IDJweDtcblxuXG4vLyBMaXN0IEdyb3VwXG4kbGlzdC1ncm91cC1iZzogdHJhbnNwYXJlbnQ7XG4kbGlzdC1ncm91cC1ib3JkZXItd2lkdGg6IDA7XG4kbGlzdC1ncm91cC1ob3Zlci1iZzogJGJnLWhvdmVyO1xuJGxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXg6IDJyZW07XG4kbGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteTogMXJlbTtcblxuXG4vLyBQcmVncmVzcyBCYXJcbiRwcm9ncmVzcy1iZzogcmdiYSgkd2hpdGUsIDAuMSk7XG4kcHJvZ3Jlc3MtaGVpZ2h0OiAzcHg7XG4kcHJvZ3Jlc3MtYmFyLWJnOiAkd2hpdGU7XG5cblxuLy8gQ2FyZFxuJGNhcmQtYmc6IHJnYmEoJGJsYWNrLCAwLjIpO1xuJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4kY2FyZC1ib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuJGNhcmQtYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4kY2FyZC1zcGFjZXIteDogMi4ycmVtO1xuJGNhcmQtc3BhY2VyLXk6IDIuMXJlbTtcbiRjYXJkLWNhcC1iZzogcmdiYSgkYmxhY2ssIDAuMDc1KTtcbiRjYXJkLWltZy1vdmVybGF5LXBhZGRpbmc6IDA7XG4kY2FyZC1zaGFkb3c6IDAgMXB4IDVweCByZ2JhKCRibGFjaywgMC4xKTtcbiRjYXJkLWNvbHVtbnMtbWFyZ2luOiAyLjNyZW07XG5cblxuLy8gU2lkZWJhcnNcbiRzaWRlYmFyLWJnOiAkd2hpdGU7XG4kc2lkZWJhci1oaWRkZW4tYmc6ICRiZy1oaWdobGlnaHRlZC1kYXJrZXN0O1xuJHNpZGViYXItd2lkdGg6IDI1MHB4O1xuJHNpZGViYXItei1pbmRleDogJGhlYWRlci16LWluZGV4ICsgMTtcbiRuYXZpZ2F0aW9uLWxpbmstY29sb3I6IHJnYmEoJHdoaXRlLCAwLjcpO1xuJG5hdmlnYXRpb24tbGluay1hY3RpdmUtY29sb3I6ICR3aGl0ZTtcbiRuYXZpZ2F0aW9uLWxpbmstaG92ZXItYmc6IHJnYmEoJHdoaXRlLCAwLjA0KTtcbiRuYXZpZ2F0aW9uLWxpbmstYWN0aXZlLWJnOiByZ2JhKCR3aGl0ZSwgMC4wNik7XG5cblxuLy8gbG9nb1xuJGxvZ28tYmc6IHJnYmEoJGJsYWNrLCAwLjE4KTtcblxuXG4vLyBUYWJlbHNcbiR0YWJsZS1ib3JkZXItY29sb3I6ICRib3JkZXItbGlnaHQ7XG4kdGFibGUtZGFyay1iZzogcmdiYSgkYmxhY2ssIDAuMik7XG4kdGFibGUtZGFyay1ib3JkZXItY29sb3I6IHJnYmEoJHdoaXRlLCAwLjA2KTtcbiR0YWJsZS1hY2NlbnQtYmc6ICRib3JkZXItbGlnaHRlc3Q7XG4kdGFibGUtaG92ZXItYmc6ICR0YWJsZS1hY2NlbnQtYmc7XG4kdGFibGUtY2VsbC1wYWRkaW5nOiAxcmVtIDEuNXJlbTtcbiR0YWJsZS1jZWxsLXBhZGRpbmctc206IDAuNzVyZW0gMXJlbTtcbiR0YWJsZS1oZWFkLWJnOiAkYm9yZGVyLWxpZ2h0O1xuJHRhYmxlLWhlYWQtY29sb3I6ICRib2R5LWNvbG9yO1xuXG4vLyBQYWdpbmF0aW9uXG4kcGFnaW5hdGlvbi1ib3JkZXItd2lkdGg6IDA7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXk6IDA7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXg6IDA7XG4kcGFnaW5hdGlvbi1iZzogJGJnLWhpZ2hsaWdodGVkLWxpZ2h0O1xuJHBhZ2luYXRpb24taG92ZXItYmc6IHJnYmEoJHdoaXRlLCAwLjIpO1xuJHBhZ2luYXRpb24tY29sb3I6ICRib2R5LWNvbG9yO1xuJHBhZ2luYXRpb24taG92ZXItY29sb3I6ICRwYWdpbmF0aW9uLWNvbG9yO1xuJHBhZ2luYXRpb24tZGlzYWJsZWQtYmc6ICRwYWdpbmF0aW9uLWJnO1xuJHBhZ2luYXRpb24tZGlzYWJsZWQtY29sb3I6ICRwYWdpbmF0aW9uLWNvbG9yO1xuJHBhZ2luYXRpb24tYWN0aXZlLWJnOiAkYmctaGlnaGxpZ2h0ZWQtZGFyaztcbiRwYWdpbmF0aW9uLWFjdGl2ZS1jb2xvcjogJGJsYWNrO1xuJHBhZ2luYXRpb24tZm9jdXMtYm94LXNoYWRvdzogbm9uZTtcblxuXG4vLyBJbnB1dCBHcm91cFxuJGlucHV0LWdyb3VwLWFkZG9uLWJvcmRlci1jb2xvcjogJGlucHV0LWJvcmRlci1jb2xvcjtcbiRpbnB1dC1ncm91cC1hZGRvbi1iZzogdHJhbnNwYXJlbnQ7XG5cblxuLy8gQ29kZVxuJHByZS1jb2xvcjogJGNvbG9yLWludmVyc2U7XG4kcHJlLWJnOiByZ2JhKCR3aGl0ZSwgMC44KTtcbiRwcmUtYm9yZGVyLWNvbG9yOiAkcHJlLWJnO1xuJGNvZGUtYmc6ICRiZy1oaWdobGlnaHRlZC1saWdodDtcbiRjb2RlLWNvbG9yOiAkeWVsbG93O1xuXG5cbi8vIEFsZXJ0XG4kYWxlcnQtcGFkZGluZy15OiAxLjVyZW07XG4kYWxlcnQtcGFkZGluZy14OiAycmVtO1xuJGFsZXJ0LWxpbmstZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiRhbGVydC1ib3JkZXItd2lkdGg6IDA7XG4kYWxlcnQtY29sb3ItbGV2ZWw6IC0xMDtcbiRhbGVydC1iZy1sZXZlbDogMS41O1xuXG4vLyBDbG9zZVxuJGNsb3NlLWZvbnQtd2VpZ2h0OiBub3JtYWw7XG4kY2xvc2UtdGV4dC1zaGFkb3c6IG5vbmU7XG5cblxuLy8gQmFkZ2VzXG4kYmFkZ2UtcGFkZGluZy15OiAwLjZlbTtcbiRiYWRnZS1wYWRkaW5nLXg6IDAuNzVlbTtcbiRiYWRnZS1mb250LXNpemU6IDk1JTtcbiRiYWRnZS1mb250LXdlaWdodDogNDAwO1xuJGJhZGdlLXBpbGwtcGFkZGluZy14OiAxZW07XG5cblxuLy8gQnJlYWRjcnVtYnNcbiRicmVhZGNydW1iLWJnOiB0cmFuc3BhcmVudDtcbiRicmVhZGNydW1iLXBhZGRpbmcteDogMC4yNXJlbTtcbiRicmVhZGNydW1iLWFjdGl2ZS1jb2xvcjogJHdoaXRlO1xuJGJyZWFkY3J1bWItZGl2aWRlci1jb2xvcjogJHRleHQtbXV0ZWQ7XG5cblxuLy8gQ2Fyb3VzZWxcbi8vJGNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uLWJnOiB1cmwoLi4vLi4vLi4vaW1hZ2VzL3RlbXBsYXRlcy9jYXJvdXNlbC9wcmV2LnN2Zyk7XG4vLyRjYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbi1iZzogdXJsKC4uLy4uLy4uL2ltYWdlcy90ZW1wbGF0ZXMvY2Fyb3VzZWwvbmV4dC5zdmcpO1xuJGNhcm91c2VsLWNvbnRyb2wtaWNvbi13aWR0aDogNDBweDtcbiRjYXJvdXNlbC1jb250cm9sLW9wYWNpdHk6IDAuODtcblxuXG4vLyBNb2RhbFxuJG1vZGFsLWNvbnRlbnQtYmc6ICRiZy1oaWdobGlnaHRlZC1kYXJrZXN0O1xuJG1vZGFsLWJhY2tkcm9wLWJnOiAkYmxhY2s7XG4kbW9kYWwtYmFja2Ryb3Atb3BhY2l0eTogMC4yO1xuJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy14czogMCA1cHggMjBweCByZ2JhKDAsMCwwLC4zKTtcbiRtb2RhbC1jb250ZW50LWJveC1zaGFkb3ctc20tdXA6ICRtb2RhbC1jb250ZW50LWJveC1zaGFkb3cteHM7XG4kbW9kYWwtY29udGVudC1ib3JkZXItd2lkdGg6IDA7XG4kbW9kYWwtaGVhZGVyLWJvcmRlci13aWR0aDogMDtcbiRtb2RhbC1mb290ZXItYm9yZGVyLXdpZHRoOiAwO1xuJG1vZGFsLWhlYWRlci1wYWRkaW5nOiAyNXB4IDMwcHggMDtcbiRtb2RhbC1pbm5lci1wYWRkaW5nOiAyNXB4IDMwcHg7XG5cblxuLy8gUG9wb3ZlcnNcbiRwb3BvdmVyLWJveC1zaGFkb3c6IDAgMnB4IDMwcHggcmdiYSgkYmxhY2ssIDAuMSk7XG4kcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4kcG9wb3Zlci1ib2R5LXBhZGRpbmcteDogMXJlbTtcbiRwb3BvdmVyLWJvZHktcGFkZGluZy15OiAxcmVtO1xuJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteDogMXJlbTtcbiRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXk6IDFyZW07XG4kcG9wb3Zlci1oZWFkZXItYmc6IHRyYW5zcGFyZW50O1xuJHBvcG92ZXItYmc6ICRiZy1oaWdobGlnaHRlZC1kYXJrZXN0O1xuJHBvcG92ZXItZm9udC1zaXplOiAwLjlyZW07XG5cblxuLy8gTmF2XG4kbmF2LWxpbmstZGlzYWJsZWQtY29sb3I6ICR0ZXh0LW11dGVkO1xuJG5hdi10YWJzLWJvcmRlci13aWR0aDogMnB4O1xuJG5hdi10YWJzLWJvcmRlci1yYWRpdXM6IDA7XG4kbmF2LXRhYnMtYm9yZGVyLWNvbG9yOiAkYmctaGlnaGxpZ2h0ZWQtbGlnaHQ7XG4kbmF2LWxpbmstcGFkZGluZy15OiAxcmVtO1xuJG5hdi1saW5rLXBhZGRpbmcteDogMS41cmVtO1xuJG5hdi1saW5rLXBhZGRpbmc6IDFyZW0gMS41cmVtO1xuJG5hdi10YWJzLWxpbmstYWN0aXZlLWJnOiB0cmFuc3BhcmVudDtcbiRuYXYtdGFicy1saW5rLWFjdGl2ZS1jb2xvcjogJHdoaXRlO1xuJG5hdi1waWxscy1saW5rLWFjdGl2ZS1iZzogJGJnLWhpZ2hsaWdodGVkLWxpZ2h0O1xuJG5hdi1waWxscy1saW5rLWFjdGl2ZS1jb2xvcjogJHdoaXRlO1xuXG4vLyBUb29sdGlwc1xuJHRvb2x0aXAtcGFkZGluZy15OiAwLjdyZW07XG4kdG9vbHRpcC1wYWRkaW5nLXg6ICAxLjFyZW07XG4kdG9vbHRpcC1iZzogJGJnLWhpZ2hsaWdodGVkLWRhcmtlc3Q7XG4kdG9vbHRpcC1hcnJvdy1jb2xvcjogJHRvb2x0aXAtYmc7XG4kdG9vbHRpcC1vcGFjaXR5OiAxO1xuXG5cbi8vIEJhY2tkcm9wXG4kYmFja2Ryb3Atei1pbmRleDogMTAwO1xuXG5cbi8vIExpc3R2aWV3XG4kbGlzdHZpZXctaXRlbS1hY3RpdmUtYmc6IHJnYmEoJGJsYWNrLCAwLjAzNSk7XG4kbGlzdHZpZXctaXRlbS1ob3Zlci1iZzogJGJnLWhvdmVyO1xuJGxpc3R2aWV3LWl0ZW0tc3RyaXBlZC1iZzogcmdiYSgkd2hpdGUsIDAuMDMpO1xuJGxpc3R2aWV3LWJvcmRlci1jb2xvcjogcmdiYSgkd2hpdGUsIDAuMDUpO1xuXG5cbi8vIEhSXG4kaHItYm9yZGVyLWNvbG9yOiAkYm9yZGVyLWxpZ2h0O1xuXG5cbi8vIEJyZWFkY3J1bWJzXG4kYnJlYWRjcnVtYi1hY3RpdmUtY29sb3I6ICR3aGl0ZTtcblxuXG4vLyBKdW1ib3Ryb25cbiRqdW1ib3Ryb24tYmc6ICRiZy1oaWdobGlnaHRlZC1saWdodDtcblxuXG4vLyBUb2FzdFxuJHRvYXN0LWZvbnQtc2l6ZTogMC45cmVtO1xuJHRvYXN0LWhlYWRlci1jb2xvcjogJGJsYWNrO1xuJHRvYXN0LXBhZGRpbmcteTogMC41cmVtO1xuJHRvYXN0LWJvcmRlci13aWR0aDogMDtcbiR0b2FzdC1ib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1czsiLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBwcm9wZXJ0eS1ibGFja2xpc3QsIHNjc3MvZG9sbGFyLXZhcmlhYmxlLWRlZmF1bHRcblxuLy8gU0NTUyBSRlMgbWl4aW5cbi8vXG4vLyBBdXRvbWF0ZWQgZm9udC1yZXNpemluZ1xuLy9cbi8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9yZnNcblxuLy8gQ29uZmlndXJhdGlvblxuXG4vLyBCYXNlIGZvbnQgc2l6ZVxuJHJmcy1iYXNlLWZvbnQtc2l6ZTogMS4yNXJlbSAhZGVmYXVsdDtcbiRyZnMtZm9udC1zaXplLXVuaXQ6IHJlbSAhZGVmYXVsdDtcblxuLy8gQnJlYWtwb2ludCBhdCB3aGVyZSBmb250LXNpemUgc3RhcnRzIGRlY3JlYXNpbmcgaWYgc2NyZWVuIHdpZHRoIGlzIHNtYWxsZXJcbiRyZnMtYnJlYWtwb2ludDogMTIwMHB4ICFkZWZhdWx0O1xuJHJmcy1icmVha3BvaW50LXVuaXQ6IHB4ICFkZWZhdWx0O1xuXG4vLyBSZXNpemUgZm9udC1zaXplIGJhc2VkIG9uIHNjcmVlbiBoZWlnaHQgYW5kIHdpZHRoXG4kcmZzLXR3by1kaW1lbnNpb25hbDogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vIEZhY3RvciBvZiBkZWNyZWFzZVxuJHJmcy1mYWN0b3I6IDEwICFkZWZhdWx0O1xuXG5AaWYgdHlwZS1vZigkcmZzLWZhY3RvcikgIT0gXCJudW1iZXJcIiBvciAkcmZzLWZhY3RvciA8PSAxIHtcbiAgQGVycm9yIFwiYCN7JHJmcy1mYWN0b3J9YCBpcyBub3QgYSB2YWxpZCAgJHJmcy1mYWN0b3IsIGl0IG11c3QgYmUgZ3JlYXRlciB0aGFuIDEuXCI7XG59XG5cbi8vIEdlbmVyYXRlIGVuYWJsZSBvciBkaXNhYmxlIGNsYXNzZXMuIFBvc3NpYmlsaXRpZXM6IGZhbHNlLCBcImVuYWJsZVwiIG9yIFwiZGlzYWJsZVwiXG4kcmZzLWNsYXNzOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8gMSByZW0gPSAkcmZzLXJlbS12YWx1ZSBweFxuJHJmcy1yZW0tdmFsdWU6IDE2ICFkZWZhdWx0O1xuXG4vLyBTYWZhcmkgaWZyYW1lIHJlc2l6ZSBidWc6IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL3Jmcy9pc3N1ZXMvMTRcbiRyZnMtc2FmYXJpLWlmcmFtZS1yZXNpemUtYnVnLWZpeDogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vIERpc2FibGUgUkZTIGJ5IHNldHRpbmcgJGVuYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZXMgdG8gZmFsc2VcbiRlbmFibGUtcmVzcG9uc2l2ZS1mb250LXNpemVzOiB0cnVlICFkZWZhdWx0O1xuXG4vLyBDYWNoZSAkcmZzLWJhc2UtZm9udC1zaXplIHVuaXRcbiRyZnMtYmFzZS1mb250LXNpemUtdW5pdDogdW5pdCgkcmZzLWJhc2UtZm9udC1zaXplKTtcblxuLy8gUmVtb3ZlIHB4LXVuaXQgZnJvbSAkcmZzLWJhc2UtZm9udC1zaXplIGZvciBjYWxjdWxhdGlvbnNcbkBpZiAkcmZzLWJhc2UtZm9udC1zaXplLXVuaXQgPT0gXCJweFwiIHtcbiAgJHJmcy1iYXNlLWZvbnQtc2l6ZTogJHJmcy1iYXNlLWZvbnQtc2l6ZSAvICgkcmZzLWJhc2UtZm9udC1zaXplICogMCArIDEpO1xufVxuQGVsc2UgaWYgJHJmcy1iYXNlLWZvbnQtc2l6ZS11bml0ID09IFwicmVtXCIge1xuICAkcmZzLWJhc2UtZm9udC1zaXplOiAkcmZzLWJhc2UtZm9udC1zaXplIC8gKCRyZnMtYmFzZS1mb250LXNpemUgKiAwICsgMSAvICRyZnMtcmVtLXZhbHVlKTtcbn1cblxuLy8gQ2FjaGUgJHJmcy1icmVha3BvaW50IHVuaXQgdG8gcHJldmVudCBtdWx0aXBsZSBjYWxsc1xuJHJmcy1icmVha3BvaW50LXVuaXQtY2FjaGU6IHVuaXQoJHJmcy1icmVha3BvaW50KTtcblxuLy8gUmVtb3ZlIHVuaXQgZnJvbSAkcmZzLWJyZWFrcG9pbnQgZm9yIGNhbGN1bGF0aW9uc1xuQGlmICRyZnMtYnJlYWtwb2ludC11bml0LWNhY2hlID09IFwicHhcIiB7XG4gICRyZnMtYnJlYWtwb2ludDogJHJmcy1icmVha3BvaW50IC8gKCRyZnMtYnJlYWtwb2ludCAqIDAgKyAxKTtcbn1cbkBlbHNlIGlmICRyZnMtYnJlYWtwb2ludC11bml0LWNhY2hlID09IFwicmVtXCIgb3IgJHJmcy1icmVha3BvaW50LXVuaXQtY2FjaGUgPT0gXCJlbVwiIHtcbiAgJHJmcy1icmVha3BvaW50OiAkcmZzLWJyZWFrcG9pbnQgLyAoJHJmcy1icmVha3BvaW50ICogMCArIDEgLyAkcmZzLXJlbS12YWx1ZSk7XG59XG5cbi8vIFJlc3BvbnNpdmUgZm9udC1zaXplIG1peGluXG5AbWl4aW4gcmZzKCRmcywgJGltcG9ydGFudDogZmFsc2UpIHtcbiAgLy8gQ2FjaGUgJGZzIHVuaXRcbiAgJGZzLXVuaXQ6IGlmKHR5cGUtb2YoJGZzKSA9PSBcIm51bWJlclwiLCB1bml0KCRmcyksIGZhbHNlKTtcblxuICAvLyBBZGQgIWltcG9ydGFudCBzdWZmaXggaWYgbmVlZGVkXG4gICRyZnMtc3VmZml4OiBpZigkaW1wb3J0YW50LCBcIiAhaW1wb3J0YW50XCIsIFwiXCIpO1xuXG4gIC8vIElmICRmcyBpc24ndCBhIG51bWJlciAobGlrZSBpbmhlcml0KSBvciAkZnMgaGFzIGEgdW5pdCAobm90IHB4IG9yIHJlbSwgbGlrZSAxLjVlbSkgb3IgJCBpcyAwLCBqdXN0IHByaW50IHRoZSB2YWx1ZVxuICBAaWYgbm90ICRmcy11bml0IG9yICRmcy11bml0ICE9IFwiXCIgYW5kICRmcy11bml0ICE9IFwicHhcIiBhbmQgJGZzLXVuaXQgIT0gXCJyZW1cIiBvciAkZnMgPT0gMCB7XG4gICAgZm9udC1zaXplOiAjeyRmc30jeyRyZnMtc3VmZml4fTtcbiAgfVxuICBAZWxzZSB7XG4gICAgLy8gVmFyaWFibGVzIGZvciBzdG9yaW5nIHN0YXRpYyBhbmQgZmx1aWQgcmVzY2FsaW5nXG4gICAgJHJmcy1zdGF0aWM6IG51bGw7XG4gICAgJHJmcy1mbHVpZDogbnVsbDtcblxuICAgIC8vIFJlbW92ZSBweC11bml0IGZyb20gJGZzIGZvciBjYWxjdWxhdGlvbnNcbiAgICBAaWYgJGZzLXVuaXQgPT0gXCJweFwiIHtcbiAgICAgICRmczogJGZzIC8gKCRmcyAqIDAgKyAxKTtcbiAgICB9XG4gICAgQGVsc2UgaWYgJGZzLXVuaXQgPT0gXCJyZW1cIiB7XG4gICAgICAkZnM6ICRmcyAvICgkZnMgKiAwICsgMSAvICRyZnMtcmVtLXZhbHVlKTtcbiAgICB9XG5cbiAgICAvLyBTZXQgZGVmYXVsdCBmb250LXNpemVcbiAgICBAaWYgJHJmcy1mb250LXNpemUtdW5pdCA9PSByZW0ge1xuICAgICAgJHJmcy1zdGF0aWM6ICN7JGZzIC8gJHJmcy1yZW0tdmFsdWV9cmVtI3skcmZzLXN1ZmZpeH07XG4gICAgfVxuICAgIEBlbHNlIGlmICRyZnMtZm9udC1zaXplLXVuaXQgPT0gcHgge1xuICAgICAgJHJmcy1zdGF0aWM6ICN7JGZzfXB4I3skcmZzLXN1ZmZpeH07XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEBlcnJvciBcImAjeyRyZnMtZm9udC1zaXplLXVuaXR9YCBpcyBub3QgYSB2YWxpZCB1bml0IGZvciAkcmZzLWZvbnQtc2l6ZS11bml0LiBVc2UgYHB4YCBvciBgcmVtYC5cIjtcbiAgICB9XG5cbiAgICAvLyBPbmx5IGFkZCBtZWRpYSBxdWVyeSBpZiBmb250LXNpemUgaXMgYmlnZ2VyIGFzIHRoZSBtaW5pbXVtIGZvbnQtc2l6ZVxuICAgIC8vIElmICRyZnMtZmFjdG9yID09IDEsIG5vIHJlc2NhbGluZyB3aWxsIHRha2UgcGxhY2VcbiAgICBAaWYgJGZzID4gJHJmcy1iYXNlLWZvbnQtc2l6ZSBhbmQgJGVuYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZXMge1xuICAgICAgJG1pbi13aWR0aDogbnVsbDtcbiAgICAgICR2YXJpYWJsZS11bml0OiBudWxsO1xuXG4gICAgICAvLyBDYWxjdWxhdGUgbWluaW11bSBmb250LXNpemUgZm9yIGdpdmVuIGZvbnQtc2l6ZVxuICAgICAgJGZzLW1pbjogJHJmcy1iYXNlLWZvbnQtc2l6ZSArICgkZnMgLSAkcmZzLWJhc2UtZm9udC1zaXplKSAvICRyZnMtZmFjdG9yO1xuXG4gICAgICAvLyBDYWxjdWxhdGUgZGlmZmVyZW5jZSBiZXR3ZWVuIGdpdmVuIGZvbnQtc2l6ZSBhbmQgbWluaW11bSBmb250LXNpemUgZm9yIGdpdmVuIGZvbnQtc2l6ZVxuICAgICAgJGZzLWRpZmY6ICRmcyAtICRmcy1taW47XG5cbiAgICAgIC8vIEJhc2UgZm9udC1zaXplIGZvcm1hdHRpbmdcbiAgICAgIC8vIE5vIG5lZWQgdG8gY2hlY2sgaWYgdGhlIHVuaXQgaXMgdmFsaWQsIGJlY2F1c2Ugd2UgZGlkIHRoYXQgYmVmb3JlXG4gICAgICAkbWluLXdpZHRoOiBpZigkcmZzLWZvbnQtc2l6ZS11bml0ID09IHJlbSwgI3skZnMtbWluIC8gJHJmcy1yZW0tdmFsdWV9cmVtLCAjeyRmcy1taW59cHgpO1xuXG4gICAgICAvLyBJZiB0d28tZGltZW5zaW9uYWwsIHVzZSBzbWFsbGVzdCBvZiBzY3JlZW4gd2lkdGggYW5kIGhlaWdodFxuICAgICAgJHZhcmlhYmxlLXVuaXQ6IGlmKCRyZnMtdHdvLWRpbWVuc2lvbmFsLCB2bWluLCB2dyk7XG5cbiAgICAgIC8vIENhbGN1bGF0ZSB0aGUgdmFyaWFibGUgd2lkdGggYmV0d2VlbiAwIGFuZCAkcmZzLWJyZWFrcG9pbnRcbiAgICAgICR2YXJpYWJsZS13aWR0aDogI3skZnMtZGlmZiAqIDEwMCAvICRyZnMtYnJlYWtwb2ludH0jeyR2YXJpYWJsZS11bml0fTtcblxuICAgICAgLy8gU2V0IHRoZSBjYWxjdWxhdGVkIGZvbnQtc2l6ZS5cbiAgICAgICRyZnMtZmx1aWQ6IGNhbGMoI3skbWluLXdpZHRofSArICN7JHZhcmlhYmxlLXdpZHRofSkgI3skcmZzLXN1ZmZpeH07XG4gICAgfVxuXG4gICAgLy8gUmVuZGVyaW5nXG4gICAgQGlmICRyZnMtZmx1aWQgPT0gbnVsbCB7XG4gICAgICAvLyBPbmx5IHJlbmRlciBzdGF0aWMgZm9udC1zaXplIGlmIG5vIGZsdWlkIGZvbnQtc2l6ZSBpcyBhdmFpbGFibGVcbiAgICAgIGZvbnQtc2l6ZTogJHJmcy1zdGF0aWM7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICRtcS12YWx1ZTogbnVsbDtcblxuICAgICAgLy8gUkZTIGJyZWFrcG9pbnQgZm9ybWF0dGluZ1xuICAgICAgQGlmICRyZnMtYnJlYWtwb2ludC11bml0ID09IGVtIG9yICRyZnMtYnJlYWtwb2ludC11bml0ID09IHJlbSB7XG4gICAgICAgICRtcS12YWx1ZTogI3skcmZzLWJyZWFrcG9pbnQgLyAkcmZzLXJlbS12YWx1ZX0jeyRyZnMtYnJlYWtwb2ludC11bml0fTtcbiAgICAgIH1cbiAgICAgIEBlbHNlIGlmICRyZnMtYnJlYWtwb2ludC11bml0ID09IHB4IHtcbiAgICAgICAgJG1xLXZhbHVlOiAjeyRyZnMtYnJlYWtwb2ludH1weDtcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgQGVycm9yIFwiYCN7JHJmcy1icmVha3BvaW50LXVuaXR9YCBpcyBub3QgYSB2YWxpZCB1bml0IGZvciAkcmZzLWJyZWFrcG9pbnQtdW5pdC4gVXNlIGBweGAsIGBlbWAgb3IgYHJlbWAuXCI7XG4gICAgICB9XG5cbiAgICAgIEBpZiAkcmZzLWNsYXNzID09IFwiZGlzYWJsZVwiIHtcbiAgICAgICAgLy8gQWRkaW5nIGFuIGV4dHJhIGNsYXNzIGluY3JlYXNlcyBzcGVjaWZpY2l0eSxcbiAgICAgICAgLy8gd2hpY2ggcHJldmVudHMgdGhlIG1lZGlhIHF1ZXJ5IHRvIG92ZXJyaWRlIHRoZSBmb250IHNpemVcbiAgICAgICAgJixcbiAgICAgICAgLmRpc2FibGUtcmVzcG9uc2l2ZS1mb250LXNpemUgJixcbiAgICAgICAgJi5kaXNhYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplIHtcbiAgICAgICAgICBmb250LXNpemU6ICRyZnMtc3RhdGljO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogJHJmcy1zdGF0aWM7XG4gICAgICB9XG5cbiAgICAgIEBpZiAkcmZzLXR3by1kaW1lbnNpb25hbCB7XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAjeyRtcS12YWx1ZX0pLCAobWF4LWhlaWdodDogI3skbXEtdmFsdWV9KSB7XG4gICAgICAgICAgQGlmICRyZnMtY2xhc3MgPT0gXCJlbmFibGVcIiB7XG4gICAgICAgICAgICAuZW5hYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplICYsXG4gICAgICAgICAgICAmLmVuYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZSB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogJHJmcy1mbHVpZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgQGVsc2Uge1xuICAgICAgICAgICAgZm9udC1zaXplOiAkcmZzLWZsdWlkO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIEBpZiAkcmZzLXNhZmFyaS1pZnJhbWUtcmVzaXplLWJ1Zy1maXgge1xuICAgICAgICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIGxlbmd0aC16ZXJvLW5vLXVuaXRcbiAgICAgICAgICAgIG1pbi13aWR0aDogMHZ3O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogI3skbXEtdmFsdWV9KSB7XG4gICAgICAgICAgQGlmICRyZnMtY2xhc3MgPT0gXCJlbmFibGVcIiB7XG4gICAgICAgICAgICAuZW5hYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplICYsXG4gICAgICAgICAgICAmLmVuYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZSB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogJHJmcy1mbHVpZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgQGVsc2Uge1xuICAgICAgICAgICAgZm9udC1zaXplOiAkcmZzLWZsdWlkO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIEBpZiAkcmZzLXNhZmFyaS1pZnJhbWUtcmVzaXplLWJ1Zy1maXgge1xuICAgICAgICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIGxlbmd0aC16ZXJvLW5vLXVuaXRcbiAgICAgICAgICAgIG1pbi13aWR0aDogMHZ3O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBUaGUgZm9udC1zaXplICYgcmVzcG9uc2l2ZS1mb250LXNpemUgbWl4aW4gdXNlcyBSRlMgdG8gcmVzY2FsZSBmb250IHNpemVzXG5AbWl4aW4gZm9udC1zaXplKCRmcywgJGltcG9ydGFudDogZmFsc2UpIHtcbiAgQGluY2x1ZGUgcmZzKCRmcywgJGltcG9ydGFudCk7XG59XG5cbkBtaXhpbiByZXNwb25zaXZlLWZvbnQtc2l6ZSgkZnMsICRpbXBvcnRhbnQ6IGZhbHNlKSB7XG4gIEBpbmNsdWRlIHJmcygkZnMsICRpbXBvcnRhbnQpO1xufVxuIiwiLy8gVmFyaWFibGVzXG4vL1xuLy8gVmFyaWFibGVzIHNob3VsZCBmb2xsb3cgdGhlIGAkY29tcG9uZW50LXN0YXRlLXByb3BlcnR5LXNpemVgIGZvcm11bGEgZm9yXG4vLyBjb25zaXN0ZW50IG5hbWluZy4gRXg6ICRuYXYtbGluay1kaXNhYmxlZC1jb2xvciBhbmQgJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy14cy5cblxuLy8gQ29sb3Igc3lzdGVtXG5cbiR3aGl0ZTogICAgI2ZmZiAhZGVmYXVsdDtcbiRncmF5LTEwMDogI2Y4ZjlmYSAhZGVmYXVsdDtcbiRncmF5LTIwMDogI2U5ZWNlZiAhZGVmYXVsdDtcbiRncmF5LTMwMDogI2RlZTJlNiAhZGVmYXVsdDtcbiRncmF5LTQwMDogI2NlZDRkYSAhZGVmYXVsdDtcbiRncmF5LTUwMDogI2FkYjViZCAhZGVmYXVsdDtcbiRncmF5LTYwMDogIzZjNzU3ZCAhZGVmYXVsdDtcbiRncmF5LTcwMDogIzQ5NTA1NyAhZGVmYXVsdDtcbiRncmF5LTgwMDogIzM0M2E0MCAhZGVmYXVsdDtcbiRncmF5LTkwMDogIzIxMjUyOSAhZGVmYXVsdDtcbiRibGFjazogICAgIzAwMCAhZGVmYXVsdDtcblxuJGdyYXlzOiAoKSAhZGVmYXVsdDtcbiRncmF5czogbWFwLW1lcmdlKFxuICAoXG4gICAgXCIxMDBcIjogJGdyYXktMTAwLFxuICAgIFwiMjAwXCI6ICRncmF5LTIwMCxcbiAgICBcIjMwMFwiOiAkZ3JheS0zMDAsXG4gICAgXCI0MDBcIjogJGdyYXktNDAwLFxuICAgIFwiNTAwXCI6ICRncmF5LTUwMCxcbiAgICBcIjYwMFwiOiAkZ3JheS02MDAsXG4gICAgXCI3MDBcIjogJGdyYXktNzAwLFxuICAgIFwiODAwXCI6ICRncmF5LTgwMCxcbiAgICBcIjkwMFwiOiAkZ3JheS05MDBcbiAgKSxcbiAgJGdyYXlzXG4pO1xuXG4kYmx1ZTogICAgIzAwN2JmZiAhZGVmYXVsdDtcbiRpbmRpZ286ICAjNjYxMGYyICFkZWZhdWx0O1xuJHB1cnBsZTogICM2ZjQyYzEgIWRlZmF1bHQ7XG4kcGluazogICAgI2U4M2U4YyAhZGVmYXVsdDtcbiRyZWQ6ICAgICAjZGMzNTQ1ICFkZWZhdWx0O1xuJG9yYW5nZTogICNmZDdlMTQgIWRlZmF1bHQ7XG4keWVsbG93OiAgI2ZmYzEwNyAhZGVmYXVsdDtcbiRncmVlbjogICAjMjhhNzQ1ICFkZWZhdWx0O1xuJHRlYWw6ICAgICMyMGM5OTcgIWRlZmF1bHQ7XG4kY3lhbjogICAgIzE3YTJiOCAhZGVmYXVsdDtcblxuJGNvbG9yczogKCkgIWRlZmF1bHQ7XG4kY29sb3JzOiBtYXAtbWVyZ2UoXG4gIChcbiAgICBcImJsdWVcIjogICAgICAgJGJsdWUsXG4gICAgXCJpbmRpZ29cIjogICAgICRpbmRpZ28sXG4gICAgXCJwdXJwbGVcIjogICAgICRwdXJwbGUsXG4gICAgXCJwaW5rXCI6ICAgICAgICRwaW5rLFxuICAgIFwicmVkXCI6ICAgICAgICAkcmVkLFxuICAgIFwib3JhbmdlXCI6ICAgICAkb3JhbmdlLFxuICAgIFwieWVsbG93XCI6ICAgICAkeWVsbG93LFxuICAgIFwiZ3JlZW5cIjogICAgICAkZ3JlZW4sXG4gICAgXCJ0ZWFsXCI6ICAgICAgICR0ZWFsLFxuICAgIFwiY3lhblwiOiAgICAgICAkY3lhbixcbiAgICBcIndoaXRlXCI6ICAgICAgJHdoaXRlLFxuICAgIFwiZ3JheVwiOiAgICAgICAkZ3JheS02MDAsXG4gICAgXCJncmF5LWRhcmtcIjogICRncmF5LTgwMFxuICApLFxuICAkY29sb3JzXG4pO1xuXG4kcHJpbWFyeTogICAgICAgJGJsdWUgIWRlZmF1bHQ7XG4kc2Vjb25kYXJ5OiAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJHN1Y2Nlc3M6ICAgICAgICRncmVlbiAhZGVmYXVsdDtcbiRpbmZvOiAgICAgICAgICAkY3lhbiAhZGVmYXVsdDtcbiR3YXJuaW5nOiAgICAgICAkeWVsbG93ICFkZWZhdWx0O1xuJGRhbmdlcjogICAgICAgICRyZWQgIWRlZmF1bHQ7XG4kbGlnaHQ6ICAgICAgICAgJGdyYXktMTAwICFkZWZhdWx0O1xuJGRhcms6ICAgICAgICAgICRncmF5LTgwMCAhZGVmYXVsdDtcblxuJHRoZW1lLWNvbG9yczogKCkgIWRlZmF1bHQ7XG4kdGhlbWUtY29sb3JzOiBtYXAtbWVyZ2UoXG4gIChcbiAgICBcInByaW1hcnlcIjogICAgJHByaW1hcnksXG4gICAgXCJzZWNvbmRhcnlcIjogICRzZWNvbmRhcnksXG4gICAgXCJzdWNjZXNzXCI6ICAgICRzdWNjZXNzLFxuICAgIFwiaW5mb1wiOiAgICAgICAkaW5mbyxcbiAgICBcIndhcm5pbmdcIjogICAgJHdhcm5pbmcsXG4gICAgXCJkYW5nZXJcIjogICAgICRkYW5nZXIsXG4gICAgXCJsaWdodFwiOiAgICAgICRsaWdodCxcbiAgICBcImRhcmtcIjogICAgICAgJGRhcmtcbiAgKSxcbiAgJHRoZW1lLWNvbG9yc1xuKTtcblxuLy8gU2V0IGEgc3BlY2lmaWMganVtcCBwb2ludCBmb3IgcmVxdWVzdGluZyBjb2xvciBqdW1wc1xuJHRoZW1lLWNvbG9yLWludGVydmFsOiAgICAgIDglICFkZWZhdWx0O1xuXG4vLyBUaGUgeWlxIGxpZ2h0bmVzcyB2YWx1ZSB0aGF0IGRldGVybWluZXMgd2hlbiB0aGUgbGlnaHRuZXNzIG9mIGNvbG9yIGNoYW5nZXMgZnJvbSBcImRhcmtcIiB0byBcImxpZ2h0XCIuIEFjY2VwdGFibGUgdmFsdWVzIGFyZSBiZXR3ZWVuIDAgYW5kIDI1NS5cbiR5aXEtY29udHJhc3RlZC10aHJlc2hvbGQ6ICAxNTAgIWRlZmF1bHQ7XG5cbi8vIEN1c3RvbWl6ZSB0aGUgbGlnaHQgYW5kIGRhcmsgdGV4dCBjb2xvcnMgZm9yIHVzZSBpbiBvdXIgWUlRIGNvbG9yIGNvbnRyYXN0IGZ1bmN0aW9uLlxuJHlpcS10ZXh0LWRhcms6ICAgICAgICAgICAgICRncmF5LTkwMCAhZGVmYXVsdDtcbiR5aXEtdGV4dC1saWdodDogICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vIENoYXJhY3RlcnMgd2hpY2ggYXJlIGVzY2FwZWQgYnkgdGhlIGVzY2FwZS1zdmcgZnVuY3Rpb25cbiRlc2NhcGVkLWNoYXJhY3RlcnM6IChcbiAgKFwiPFwiLCBcIiUzY1wiKSxcbiAgKFwiPlwiLCBcIiUzZVwiKSxcbiAgKFwiI1wiLCBcIiUyM1wiKSxcbiAgKFwiKFwiLCBcIiUyOFwiKSxcbiAgKFwiKVwiLCBcIiUyOVwiKSxcbikgIWRlZmF1bHQ7XG5cblxuLy8gT3B0aW9uc1xuLy9cbi8vIFF1aWNrbHkgbW9kaWZ5IGdsb2JhbCBzdHlsaW5nIGJ5IGVuYWJsaW5nIG9yIGRpc2FibGluZyBvcHRpb25hbCBmZWF0dXJlcy5cblxuJGVuYWJsZS1jYXJldDogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXJvdW5kZWQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtc2hhZG93czogICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmYWxzZSAhZGVmYXVsdDtcbiRlbmFibGUtZ3JhZGllbnRzOiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmYWxzZSAhZGVmYXVsdDtcbiRlbmFibGUtdHJhbnNpdGlvbnM6ICAgICAgICAgICAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1wcmVmZXJzLXJlZHVjZWQtbW90aW9uLW1lZGlhLXF1ZXJ5OiAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLWhvdmVyLW1lZGlhLXF1ZXJ5OiAgICAgICAgICAgICAgICAgICAgZmFsc2UgIWRlZmF1bHQ7IC8vIERlcHJlY2F0ZWQsIG5vIGxvbmdlciBhZmZlY3RzIGFueSBjb21waWxlZCBDU1NcbiRlbmFibGUtZ3JpZC1jbGFzc2VzOiAgICAgICAgICAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1wb2ludGVyLWN1cnNvci1mb3ItYnV0dG9uczogICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXByaW50LXN0eWxlczogICAgICAgICAgICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtcmVzcG9uc2l2ZS1mb250LXNpemVzOiAgICAgICAgICAgICAgICBmYWxzZSAhZGVmYXVsdDtcbiRlbmFibGUtdmFsaWRhdGlvbi1pY29uczogICAgICAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1kZXByZWNhdGlvbi1tZXNzYWdlczogICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG5cblxuLy8gU3BhY2luZ1xuLy9cbi8vIENvbnRyb2wgdGhlIGRlZmF1bHQgc3R5bGluZyBvZiBtb3N0IEJvb3RzdHJhcCBlbGVtZW50cyBieSBtb2RpZnlpbmcgdGhlc2Vcbi8vIHZhcmlhYmxlcy4gTW9zdGx5IGZvY3VzZWQgb24gc3BhY2luZy5cbi8vIFlvdSBjYW4gYWRkIG1vcmUgZW50cmllcyB0byB0aGUgJHNwYWNlcnMgbWFwLCBzaG91bGQgeW91IG5lZWQgbW9yZSB2YXJpYXRpb24uXG5cbiRzcGFjZXI6IDFyZW0gIWRlZmF1bHQ7XG4kc3BhY2VyczogKCkgIWRlZmF1bHQ7XG4kc3BhY2VyczogbWFwLW1lcmdlKFxuICAoXG4gICAgMDogMCxcbiAgICAxOiAoJHNwYWNlciAqIC4yNSksXG4gICAgMjogKCRzcGFjZXIgKiAuNSksXG4gICAgMzogJHNwYWNlcixcbiAgICA0OiAoJHNwYWNlciAqIDEuNSksXG4gICAgNTogKCRzcGFjZXIgKiAzKVxuICApLFxuICAkc3BhY2Vyc1xuKTtcblxuLy8gVGhpcyB2YXJpYWJsZSBhZmZlY3RzIHRoZSBgLmgtKmAgYW5kIGAudy0qYCBjbGFzc2VzLlxuJHNpemVzOiAoKSAhZGVmYXVsdDtcbiRzaXplczogbWFwLW1lcmdlKFxuICAoXG4gICAgMjU6IDI1JSxcbiAgICA1MDogNTAlLFxuICAgIDc1OiA3NSUsXG4gICAgMTAwOiAxMDAlLFxuICAgIGF1dG86IGF1dG9cbiAgKSxcbiAgJHNpemVzXG4pO1xuXG5cbi8vIEJvZHlcbi8vXG4vLyBTZXR0aW5ncyBmb3IgdGhlIGA8Ym9keT5gIGVsZW1lbnQuXG5cbiRib2R5LWJnOiAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kYm9keS1jb2xvcjogICAgICAgICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xuXG5cbi8vIExpbmtzXG4vL1xuLy8gU3R5bGUgYW5jaG9yIGVsZW1lbnRzLlxuXG4kbGluay1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGVtZS1jb2xvcihcInByaW1hcnlcIikgIWRlZmF1bHQ7XG4kbGluay1kZWNvcmF0aW9uOiAgICAgICAgICAgICAgICAgICAgICAgICBub25lICFkZWZhdWx0O1xuJGxpbmstaG92ZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgZGFya2VuKCRsaW5rLWNvbG9yLCAxNSUpICFkZWZhdWx0O1xuJGxpbmstaG92ZXItZGVjb3JhdGlvbjogICAgICAgICAgICAgICAgICAgdW5kZXJsaW5lICFkZWZhdWx0O1xuLy8gRGFya2VuIHBlcmNlbnRhZ2UgZm9yIGxpbmtzIHdpdGggYC50ZXh0LSpgIGNsYXNzIChlLmcuIGAudGV4dC1zdWNjZXNzYClcbiRlbXBoYXNpemVkLWxpbmstaG92ZXItZGFya2VuLXBlcmNlbnRhZ2U6IDE1JSAhZGVmYXVsdDtcblxuLy8gUGFyYWdyYXBoc1xuLy9cbi8vIFN0eWxlIHAgZWxlbWVudC5cblxuJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tOiAgIDFyZW0gIWRlZmF1bHQ7XG5cblxuLy8gR3JpZCBicmVha3BvaW50c1xuLy9cbi8vIERlZmluZSB0aGUgbWluaW11bSBkaW1lbnNpb25zIGF0IHdoaWNoIHlvdXIgbGF5b3V0IHdpbGwgY2hhbmdlLFxuLy8gYWRhcHRpbmcgdG8gZGlmZmVyZW50IHNjcmVlbiBzaXplcywgZm9yIHVzZSBpbiBtZWRpYSBxdWVyaWVzLlxuXG4kZ3JpZC1icmVha3BvaW50czogKFxuICB4czogMCxcbiAgc206IDU3NnB4LFxuICBtZDogNzY4cHgsXG4gIGxnOiA5OTJweCxcbiAgeGw6IDEyMDBweFxuKSAhZGVmYXVsdDtcblxuQGluY2x1ZGUgX2Fzc2VydC1hc2NlbmRpbmcoJGdyaWQtYnJlYWtwb2ludHMsIFwiJGdyaWQtYnJlYWtwb2ludHNcIik7XG5AaW5jbHVkZSBfYXNzZXJ0LXN0YXJ0cy1hdC16ZXJvKCRncmlkLWJyZWFrcG9pbnRzLCBcIiRncmlkLWJyZWFrcG9pbnRzXCIpO1xuXG5cbi8vIEdyaWQgY29udGFpbmVyc1xuLy9cbi8vIERlZmluZSB0aGUgbWF4aW11bSB3aWR0aCBvZiBgLmNvbnRhaW5lcmAgZm9yIGRpZmZlcmVudCBzY3JlZW4gc2l6ZXMuXG5cbiRjb250YWluZXItbWF4LXdpZHRoczogKFxuICBzbTogNTQwcHgsXG4gIG1kOiA3MjBweCxcbiAgbGc6IDk2MHB4LFxuICB4bDogMTE0MHB4XG4pICFkZWZhdWx0O1xuXG5AaW5jbHVkZSBfYXNzZXJ0LWFzY2VuZGluZygkY29udGFpbmVyLW1heC13aWR0aHMsIFwiJGNvbnRhaW5lci1tYXgtd2lkdGhzXCIpO1xuXG5cbi8vIEdyaWQgY29sdW1uc1xuLy9cbi8vIFNldCB0aGUgbnVtYmVyIG9mIGNvbHVtbnMgYW5kIHNwZWNpZnkgdGhlIHdpZHRoIG9mIHRoZSBndXR0ZXJzLlxuXG4kZ3JpZC1jb2x1bW5zOiAgICAgICAgICAgICAgICAxMiAhZGVmYXVsdDtcbiRncmlkLWd1dHRlci13aWR0aDogICAgICAgICAgIDMwcHggIWRlZmF1bHQ7XG4kZ3JpZC1yb3ctY29sdW1uczogICAgICAgICAgICA2ICFkZWZhdWx0O1xuXG5cbi8vIENvbXBvbmVudHNcbi8vXG4vLyBEZWZpbmUgY29tbW9uIHBhZGRpbmcgYW5kIGJvcmRlciByYWRpdXMgc2l6ZXMgYW5kIG1vcmUuXG5cbiRsaW5lLWhlaWdodC1sZzogICAgICAgICAgICAgIDEuNSAhZGVmYXVsdDtcbiRsaW5lLWhlaWdodC1zbTogICAgICAgICAgICAgIDEuNSAhZGVmYXVsdDtcblxuJGJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgMXB4ICFkZWZhdWx0O1xuJGJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuXG4kYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kYm9yZGVyLXJhZGl1cy1sZzogICAgICAgICAgICAuM3JlbSAhZGVmYXVsdDtcbiRib3JkZXItcmFkaXVzLXNtOiAgICAgICAgICAgIC4ycmVtICFkZWZhdWx0O1xuXG4kcm91bmRlZC1waWxsOiAgICAgICAgICAgICAgICA1MHJlbSAhZGVmYXVsdDtcblxuJGJveC1zaGFkb3ctc206ICAgICAgICAgICAgICAgMCAuMTI1cmVtIC4yNXJlbSByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XG4kYm94LXNoYWRvdzogICAgICAgICAgICAgICAgICAwIC41cmVtIDFyZW0gcmdiYSgkYmxhY2ssIC4xNSkgIWRlZmF1bHQ7XG4kYm94LXNoYWRvdy1sZzogICAgICAgICAgICAgICAwIDFyZW0gM3JlbSByZ2JhKCRibGFjaywgLjE3NSkgIWRlZmF1bHQ7XG5cbiRjb21wb25lbnQtYWN0aXZlLWNvbG9yOiAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRjb21wb25lbnQtYWN0aXZlLWJnOiAgICAgICAgIHRoZW1lLWNvbG9yKFwicHJpbWFyeVwiKSAhZGVmYXVsdDtcblxuJGNhcmV0LXdpZHRoOiAgICAgICAgICAgICAgICAgLjNlbSAhZGVmYXVsdDtcbiRjYXJldC12ZXJ0aWNhbC1hbGlnbjogICAgICAgICRjYXJldC13aWR0aCAqIC44NSAhZGVmYXVsdDtcbiRjYXJldC1zcGFjaW5nOiAgICAgICAgICAgICAgICRjYXJldC13aWR0aCAqIC44NSAhZGVmYXVsdDtcblxuJHRyYW5zaXRpb24tYmFzZTogICAgICAgICAgICAgYWxsIC4ycyBlYXNlLWluLW91dCAhZGVmYXVsdDtcbiR0cmFuc2l0aW9uLWZhZGU6ICAgICAgICAgICAgIG9wYWNpdHkgLjE1cyBsaW5lYXIgIWRlZmF1bHQ7XG4kdHJhbnNpdGlvbi1jb2xsYXBzZTogICAgICAgICBoZWlnaHQgLjM1cyBlYXNlICFkZWZhdWx0O1xuXG4kZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW9zOiAoKSAhZGVmYXVsdDtcbiRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpb3M6IGpvaW4oXG4gIChcbiAgICAoMjEgOSksXG4gICAgKDE2IDkpLFxuICAgICg0IDMpLFxuICAgICgxIDEpLFxuICApLFxuICAkZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW9zXG4pO1xuXG4vLyBUeXBvZ3JhcGh5XG4vL1xuLy8gRm9udCwgbGluZS1oZWlnaHQsIGFuZCBjb2xvciBmb3IgYm9keSB0ZXh0LCBoZWFkaW5ncywgYW5kIG1vcmUuXG5cbi8vIHN0eWxlbGludC1kaXNhYmxlIHZhbHVlLWtleXdvcmQtY2FzZVxuJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWY6ICAgICAgLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBcIlNlZ29lIFVJXCIsIFJvYm90bywgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBBcmlhbCwgXCJOb3RvIFNhbnNcIiwgXCJMaWJlcmF0aW9uIFNhbnNcIiwgc2Fucy1zZXJpZiwgXCJBcHBsZSBDb2xvciBFbW9qaVwiLCBcIlNlZ29lIFVJIEVtb2ppXCIsIFwiU2Vnb2UgVUkgU3ltYm9sXCIsIFwiTm90byBDb2xvciBFbW9qaVwiICFkZWZhdWx0O1xuJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTogICAgICAgU0ZNb25vLVJlZ3VsYXIsIE1lbmxvLCBNb25hY28sIENvbnNvbGFzLCBcIkxpYmVyYXRpb24gTW9ub1wiLCBcIkNvdXJpZXIgTmV3XCIsIG1vbm9zcGFjZSAhZGVmYXVsdDtcbiRmb250LWZhbWlseS1iYXNlOiAgICAgICAgICAgICRmb250LWZhbWlseS1zYW5zLXNlcmlmICFkZWZhdWx0O1xuLy8gc3R5bGVsaW50LWVuYWJsZSB2YWx1ZS1rZXl3b3JkLWNhc2VcblxuJGZvbnQtc2l6ZS1iYXNlOiAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDsgLy8gQXNzdW1lcyB0aGUgYnJvd3NlciBkZWZhdWx0LCB0eXBpY2FsbHkgYDE2cHhgXG4kZm9udC1zaXplLWxnOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjI1ICFkZWZhdWx0O1xuJGZvbnQtc2l6ZS1zbTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogLjg3NSAhZGVmYXVsdDtcblxuJGZvbnQtd2VpZ2h0LWxpZ2h0ZXI6ICAgICAgICAgbGlnaHRlciAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1saWdodDogICAgICAgICAgIDMwMCAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1ub3JtYWw6ICAgICAgICAgIDQwMCAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1ib2xkOiAgICAgICAgICAgIDcwMCAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1ib2xkZXI6ICAgICAgICAgIGJvbGRlciAhZGVmYXVsdDtcblxuJGZvbnQtd2VpZ2h0LWJhc2U6ICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcbiRsaW5lLWhlaWdodC1iYXNlOiAgICAgICAgICAgIDEuNSAhZGVmYXVsdDtcblxuJGgxLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMi41ICFkZWZhdWx0O1xuJGgyLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMiAhZGVmYXVsdDtcbiRoMy1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuNzUgIWRlZmF1bHQ7XG4kaDQtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjUgIWRlZmF1bHQ7XG4kaDUtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjI1ICFkZWZhdWx0O1xuJGg2LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICFkZWZhdWx0O1xuXG4kaGVhZGluZ3MtbWFyZ2luLWJvdHRvbTogICAgICAkc3BhY2VyIC8gMiAhZGVmYXVsdDtcbiRoZWFkaW5ncy1mb250LWZhbWlseTogICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtZm9udC13ZWlnaHQ6ICAgICAgICA1MDAgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtbGluZS1oZWlnaHQ6ICAgICAgICAxLjIgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtY29sb3I6ICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuXG4kZGlzcGxheTEtc2l6ZTogICAgICAgICAgICAgICA2cmVtICFkZWZhdWx0O1xuJGRpc3BsYXkyLXNpemU6ICAgICAgICAgICAgICAgNS41cmVtICFkZWZhdWx0O1xuJGRpc3BsYXkzLXNpemU6ICAgICAgICAgICAgICAgNC41cmVtICFkZWZhdWx0O1xuJGRpc3BsYXk0LXNpemU6ICAgICAgICAgICAgICAgMy41cmVtICFkZWZhdWx0O1xuXG4kZGlzcGxheTEtd2VpZ2h0OiAgICAgICAgICAgICAzMDAgIWRlZmF1bHQ7XG4kZGlzcGxheTItd2VpZ2h0OiAgICAgICAgICAgICAzMDAgIWRlZmF1bHQ7XG4kZGlzcGxheTMtd2VpZ2h0OiAgICAgICAgICAgICAzMDAgIWRlZmF1bHQ7XG4kZGlzcGxheTQtd2VpZ2h0OiAgICAgICAgICAgICAzMDAgIWRlZmF1bHQ7XG4kZGlzcGxheS1saW5lLWhlaWdodDogICAgICAgICAkaGVhZGluZ3MtbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG5cbiRsZWFkLWZvbnQtc2l6ZTogICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuMjUgIWRlZmF1bHQ7XG4kbGVhZC1mb250LXdlaWdodDogICAgICAgICAgICAzMDAgIWRlZmF1bHQ7XG5cbiRzbWFsbC1mb250LXNpemU6ICAgICAgICAgICAgIDgwJSAhZGVmYXVsdDtcblxuJHRleHQtbXV0ZWQ6ICAgICAgICAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuXG4kYmxvY2txdW90ZS1zbWFsbC1jb2xvcjogICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kYmxvY2txdW90ZS1zbWFsbC1mb250LXNpemU6ICAkc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuJGJsb2NrcXVvdGUtZm9udC1zaXplOiAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS4yNSAhZGVmYXVsdDtcblxuJGhyLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4xKSAhZGVmYXVsdDtcbiRoci1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG5cbiRtYXJrLXBhZGRpbmc6ICAgICAgICAgICAgICAgIC4yZW0gIWRlZmF1bHQ7XG5cbiRkdC1mb250LXdlaWdodDogICAgICAgICAgICAgICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuXG4ka2JkLWJveC1zaGFkb3c6ICAgICAgICAgICAgICBpbnNldCAwIC0uMXJlbSAwIHJnYmEoJGJsYWNrLCAuMjUpICFkZWZhdWx0O1xuJG5lc3RlZC1rYmQtZm9udC13ZWlnaHQ6ICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG5cbiRsaXN0LWlubGluZS1wYWRkaW5nOiAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuXG4kbWFyay1iZzogICAgICAgICAgICAgICAgICAgICAjZmNmOGUzICFkZWZhdWx0O1xuXG4kaHItbWFyZ2luLXk6ICAgICAgICAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuXG5cbi8vIFRhYmxlc1xuLy9cbi8vIEN1c3RvbWl6ZXMgdGhlIGAudGFibGVgIGNvbXBvbmVudCB3aXRoIGJhc2ljIHZhbHVlcywgZWFjaCB1c2VkIGFjcm9zcyBhbGwgdGFibGUgdmFyaWF0aW9ucy5cblxuJHRhYmxlLWNlbGwtcGFkZGluZzogICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJHRhYmxlLWNlbGwtcGFkZGluZy1zbTogICAgICAgLjNyZW0gIWRlZmF1bHQ7XG5cbiR0YWJsZS1jb2xvcjogICAgICAgICAgICAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuJHRhYmxlLWJnOiAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiR0YWJsZS1hY2NlbnQtYmc6ICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMDUpICFkZWZhdWx0O1xuJHRhYmxlLWhvdmVyLWNvbG9yOiAgICAgICAgICAgJHRhYmxlLWNvbG9yICFkZWZhdWx0O1xuJHRhYmxlLWhvdmVyLWJnOiAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xuJHRhYmxlLWFjdGl2ZS1iZzogICAgICAgICAgICAgJHRhYmxlLWhvdmVyLWJnICFkZWZhdWx0O1xuXG4kdGFibGUtYm9yZGVyLXdpZHRoOiAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJHRhYmxlLWJvcmRlci1jb2xvcjogICAgICAgICAgJGJvcmRlci1jb2xvciAhZGVmYXVsdDtcblxuJHRhYmxlLWhlYWQtYmc6ICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJHRhYmxlLWhlYWQtY29sb3I6ICAgICAgICAgICAgJGdyYXktNzAwICFkZWZhdWx0O1xuJHRhYmxlLXRoLWZvbnQtd2VpZ2h0OiAgICAgICAgbnVsbCAhZGVmYXVsdDtcblxuJHRhYmxlLWRhcmstY29sb3I6ICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHRhYmxlLWRhcmstYmc6ICAgICAgICAgICAgICAgJGdyYXktODAwICFkZWZhdWx0O1xuJHRhYmxlLWRhcmstYWNjZW50LWJnOiAgICAgICAgcmdiYSgkd2hpdGUsIC4wNSkgIWRlZmF1bHQ7XG4kdGFibGUtZGFyay1ob3Zlci1jb2xvcjogICAgICAkdGFibGUtZGFyay1jb2xvciAhZGVmYXVsdDtcbiR0YWJsZS1kYXJrLWhvdmVyLWJnOiAgICAgICAgIHJnYmEoJHdoaXRlLCAuMDc1KSAhZGVmYXVsdDtcbiR0YWJsZS1kYXJrLWJvcmRlci1jb2xvcjogICAgIGxpZ2h0ZW4oJHRhYmxlLWRhcmstYmcsIDcuNSUpICFkZWZhdWx0O1xuXG4kdGFibGUtc3RyaXBlZC1vcmRlcjogICAgICAgICBvZGQgIWRlZmF1bHQ7XG5cbiR0YWJsZS1jYXB0aW9uLWNvbG9yOiAgICAgICAgICR0ZXh0LW11dGVkICFkZWZhdWx0O1xuXG4kdGFibGUtYmctbGV2ZWw6ICAgICAgICAgICAgICAtOSAhZGVmYXVsdDtcbiR0YWJsZS1ib3JkZXItbGV2ZWw6ICAgICAgICAgIC02ICFkZWZhdWx0O1xuXG5cbi8vIEJ1dHRvbnMgKyBGb3Jtc1xuLy9cbi8vIFNoYXJlZCB2YXJpYWJsZXMgdGhhdCBhcmUgcmVhc3NpZ25lZCB0byBgJGlucHV0LWAgYW5kIGAkYnRuLWAgc3BlY2lmaWMgdmFyaWFibGVzLlxuXG4kaW5wdXQtYnRuLXBhZGRpbmcteTogICAgICAgICAuMzc1cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1wYWRkaW5nLXg6ICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb250LWZhbWlseTogICAgICAgbnVsbCAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9udC1zaXplOiAgICAgICAgICRmb250LXNpemUtYmFzZSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tbGluZS1oZWlnaHQ6ICAgICAgICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xuXG4kaW5wdXQtYnRuLWZvY3VzLXdpZHRoOiAgICAgICAuMnJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9jdXMtY29sb3I6ICAgICAgIHJnYmEoJGNvbXBvbmVudC1hY3RpdmUtYmcsIC4yNSkgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3c6ICAwIDAgMCAkaW5wdXQtYnRuLWZvY3VzLXdpZHRoICRpbnB1dC1idG4tZm9jdXMtY29sb3IgIWRlZmF1bHQ7XG5cbiRpbnB1dC1idG4tcGFkZGluZy15LXNtOiAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tcGFkZGluZy14LXNtOiAgICAgIC41cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb250LXNpemUtc206ICAgICAgJGZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tbGluZS1oZWlnaHQtc206ICAgICRsaW5lLWhlaWdodC1zbSAhZGVmYXVsdDtcblxuJGlucHV0LWJ0bi1wYWRkaW5nLXktbGc6ICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLXBhZGRpbmcteC1sZzogICAgICAxcmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb250LXNpemUtbGc6ICAgICAgJGZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbiRpbnB1dC1idG4tbGluZS1oZWlnaHQtbGc6ICAgICRsaW5lLWhlaWdodC1sZyAhZGVmYXVsdDtcblxuJGlucHV0LWJ0bi1ib3JkZXItd2lkdGg6ICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuXG4vLyBCdXR0b25zXG4vL1xuLy8gRm9yIGVhY2ggb2YgQm9vdHN0cmFwJ3MgYnV0dG9ucywgZGVmaW5lIHRleHQsIGJhY2tncm91bmQsIGFuZCBib3JkZXIgY29sb3IuXG5cbiRidG4tcGFkZGluZy15OiAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15ICFkZWZhdWx0O1xuJGJ0bi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kYnRuLWZvbnQtZmFtaWx5OiAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuJGJ0bi1mb250LXNpemU6ICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUgIWRlZmF1bHQ7XG4kYnRuLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuJGJ0bi13aGl0ZS1zcGFjZTogICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDsgLy8gU2V0IHRvIGBub3dyYXBgIHRvIHByZXZlbnQgdGV4dCB3cmFwcGluZ1xuXG4kYnRuLXBhZGRpbmcteS1zbTogICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteS1zbSAhZGVmYXVsdDtcbiRidG4tcGFkZGluZy14LXNtOiAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14LXNtICFkZWZhdWx0O1xuJGJ0bi1mb250LXNpemUtc206ICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUtc20gIWRlZmF1bHQ7XG4kYnRuLWxpbmUtaGVpZ2h0LXNtOiAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LXNtICFkZWZhdWx0O1xuXG4kYnRuLXBhZGRpbmcteS1sZzogICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteS1sZyAhZGVmYXVsdDtcbiRidG4tcGFkZGluZy14LWxnOiAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14LWxnICFkZWZhdWx0O1xuJGJ0bi1mb250LXNpemUtbGc6ICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUtbGcgIWRlZmF1bHQ7XG4kYnRuLWxpbmUtaGVpZ2h0LWxnOiAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LWxnICFkZWZhdWx0O1xuXG4kYnRuLWJvcmRlci13aWR0aDogICAgICAgICAgICAkaW5wdXQtYnRuLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuJGJ0bi1mb250LXdlaWdodDogICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcbiRidG4tYm94LXNoYWRvdzogICAgICAgICAgICAgIGluc2V0IDAgMXB4IDAgcmdiYSgkd2hpdGUsIC4xNSksIDAgMXB4IDFweCByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XG4kYnRuLWZvY3VzLXdpZHRoOiAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLXdpZHRoICFkZWZhdWx0O1xuJGJ0bi1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAgJGlucHV0LWJ0bi1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJGJ0bi1kaXNhYmxlZC1vcGFjaXR5OiAgICAgICAgLjY1ICFkZWZhdWx0O1xuJGJ0bi1hY3RpdmUtYm94LXNoYWRvdzogICAgICAgaW5zZXQgMCAzcHggNXB4IHJnYmEoJGJsYWNrLCAuMTI1KSAhZGVmYXVsdDtcblxuJGJ0bi1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuXG4kYnRuLWJsb2NrLXNwYWNpbmcteTogICAgICAgICAuNXJlbSAhZGVmYXVsdDtcblxuLy8gQWxsb3dzIGZvciBjdXN0b21pemluZyBidXR0b24gcmFkaXVzIGluZGVwZW5kZW50bHkgZnJvbSBnbG9iYWwgYm9yZGVyIHJhZGl1c1xuJGJ0bi1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kYnRuLWJvcmRlci1yYWRpdXMtbGc6ICAgICAgICAkYm9yZGVyLXJhZGl1cy1sZyAhZGVmYXVsdDtcbiRidG4tYm9yZGVyLXJhZGl1cy1zbTogICAgICAgICRib3JkZXItcmFkaXVzLXNtICFkZWZhdWx0O1xuXG4kYnRuLXRyYW5zaXRpb246ICAgICAgICAgICAgICBjb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG5cblxuLy8gRm9ybXNcblxuJGxhYmVsLW1hcmdpbi1ib3R0b206ICAgICAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuXG4kaW5wdXQtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kaW5wdXQtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kaW5wdXQtZm9udC1mYW1pbHk6ICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LWZhbWlseSAhZGVmYXVsdDtcbiRpbnB1dC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRpbnB1dC1mb250LXdlaWdodDogICAgICAgICAgICAgICAgICAgICAkZm9udC13ZWlnaHQtYmFzZSAhZGVmYXVsdDtcbiRpbnB1dC1saW5lLWhlaWdodDogICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuXG4kaW5wdXQtcGFkZGluZy15LXNtOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXktc20gIWRlZmF1bHQ7XG4kaW5wdXQtcGFkZGluZy14LXNtOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXgtc20gIWRlZmF1bHQ7XG4kaW5wdXQtZm9udC1zaXplLXNtOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUtc20gIWRlZmF1bHQ7XG4kaW5wdXQtbGluZS1oZWlnaHQtc206ICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodC1zbSAhZGVmYXVsdDtcblxuJGlucHV0LXBhZGRpbmcteS1sZzogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15LWxnICFkZWZhdWx0O1xuJGlucHV0LXBhZGRpbmcteC1sZzogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14LWxnICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtc2l6ZS1sZzogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplLWxnICFkZWZhdWx0O1xuJGlucHV0LWxpbmUtaGVpZ2h0LWxnOiAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQtbGcgIWRlZmF1bHQ7XG5cbiRpbnB1dC1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kaW5wdXQtZGlzYWJsZWQtYmc6ICAgICAgICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuXG4kaW5wdXQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdyYXktNzAwICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICRncmF5LTQwMCAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRpbnB1dC1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAgICAgICBpbnNldCAwIDFweCAxcHggcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xuXG4kaW5wdXQtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kaW5wdXQtYm9yZGVyLXJhZGl1cy1sZzogICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMtbGcgIWRlZmF1bHQ7XG4kaW5wdXQtYm9yZGVyLXJhZGl1cy1zbTogICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMtc20gIWRlZmF1bHQ7XG5cbiRpbnB1dC1mb2N1cy1iZzogICAgICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYmcgIWRlZmF1bHQ7XG4kaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgbGlnaHRlbigkY29tcG9uZW50LWFjdGl2ZS1iZywgMjUlKSAhZGVmYXVsdDtcbiRpbnB1dC1mb2N1cy1jb2xvcjogICAgICAgICAgICAgICAgICAgICAkaW5wdXQtY29sb3IgIWRlZmF1bHQ7XG4kaW5wdXQtZm9jdXMtd2lkdGg6ICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb2N1cy13aWR0aCAhZGVmYXVsdDtcbiRpbnB1dC1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG5cbiRpbnB1dC1wbGFjZWhvbGRlci1jb2xvcjogICAgICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kaW5wdXQtcGxhaW50ZXh0LWNvbG9yOiAgICAgICAgICAgICAgICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG5cbiRpbnB1dC1oZWlnaHQtYm9yZGVyOiAgICAgICAgICAgICAgICAgICAkaW5wdXQtYm9yZGVyLXdpZHRoICogMiAhZGVmYXVsdDtcblxuJGlucHV0LWhlaWdodC1pbm5lcjogICAgICAgICAgICAgICAgICAgIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQgKiAxZW0sICRpbnB1dC1wYWRkaW5nLXkgKiAyKSAhZGVmYXVsdDtcbiRpbnB1dC1oZWlnaHQtaW5uZXItaGFsZjogICAgICAgICAgICAgICBhZGQoJGlucHV0LWxpbmUtaGVpZ2h0ICogLjVlbSwgJGlucHV0LXBhZGRpbmcteSkgIWRlZmF1bHQ7XG4kaW5wdXQtaGVpZ2h0LWlubmVyLXF1YXJ0ZXI6ICAgICAgICAgICAgYWRkKCRpbnB1dC1saW5lLWhlaWdodCAqIC4yNWVtLCAkaW5wdXQtcGFkZGluZy15IC8gMikgIWRlZmF1bHQ7XG5cbiRpbnB1dC1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICAgICBhZGQoJGlucHV0LWxpbmUtaGVpZ2h0ICogMWVtLCBhZGQoJGlucHV0LXBhZGRpbmcteSAqIDIsICRpbnB1dC1oZWlnaHQtYm9yZGVyLCBmYWxzZSkpICFkZWZhdWx0O1xuJGlucHV0LWhlaWdodC1zbTogICAgICAgICAgICAgICAgICAgICAgIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQtc20gKiAxZW0sIGFkZCgkaW5wdXQtcGFkZGluZy15LXNtICogMiwgJGlucHV0LWhlaWdodC1ib3JkZXIsIGZhbHNlKSkgIWRlZmF1bHQ7XG4kaW5wdXQtaGVpZ2h0LWxnOiAgICAgICAgICAgICAgICAgICAgICAgYWRkKCRpbnB1dC1saW5lLWhlaWdodC1sZyAqIDFlbSwgYWRkKCRpbnB1dC1wYWRkaW5nLXktbGcgKiAyLCAkaW5wdXQtaGVpZ2h0LWJvcmRlciwgZmFsc2UpKSAhZGVmYXVsdDtcblxuJGlucHV0LXRyYW5zaXRpb246ICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG5cbiRmb3JtLXRleHQtbWFyZ2luLXRvcDogICAgICAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG5cbiRmb3JtLWNoZWNrLWlucHV0LWd1dHRlcjogICAgICAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtbWFyZ2luLXk6ICAgICAgICAgICAgIC4zcmVtICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtbWFyZ2luLXg6ICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcblxuJGZvcm0tY2hlY2staW5saW5lLW1hcmdpbi14OiAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlubGluZS1pbnB1dC1tYXJnaW4teDogICAgICAuMzEyNXJlbSAhZGVmYXVsdDtcblxuJGZvcm0tZ3JpZC1ndXR0ZXItd2lkdGg6ICAgICAgICAgICAgICAgIDEwcHggIWRlZmF1bHQ7XG4kZm9ybS1ncm91cC1tYXJnaW4tYm90dG9tOiAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcblxuJGlucHV0LWdyb3VwLWFkZG9uLWNvbG9yOiAgICAgICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcbiRpbnB1dC1ncm91cC1hZGRvbi1iZzogICAgICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kaW5wdXQtZ3JvdXAtYWRkb24tYm9yZGVyLWNvbG9yOiAgICAgICAgJGlucHV0LWJvcmRlci1jb2xvciAhZGVmYXVsdDtcblxuJGN1c3RvbS1mb3Jtcy10cmFuc2l0aW9uOiAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWd1dHRlcjogICAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLXNwYWNlci14OiAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtY3Vyc29yOiAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplOiAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJnOiAgICAgICAgICAgJGlucHV0LWJnICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJnLXNpemU6ICAgICAgNTAlIDUwJSAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm94LXNoYWRvdzogICAkaW5wdXQtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm9yZGVyLWNvbG9yOiAkZ3JheS01MDAgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJvcmRlci13aWR0aDogJGlucHV0LWJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWxhYmVsLWNvbG9yOiAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItZGlzYWJsZWQtYmc6ICAgICAgICAgICRpbnB1dC1kaXNhYmxlZC1iZyAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1sYWJlbC1kaXNhYmxlZC1jb2xvcjogICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWNvbG9yOiAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtYmc6ICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1kaXNhYmxlZC1iZzogIHJnYmEodGhlbWUtY29sb3IoXCJwcmltYXJ5XCIpLCAuNSkgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtYm94LXNoYWRvdzogICBudWxsICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWJvcmRlci1jb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWJnICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWZvY3VzLWJveC1zaGFkb3c6ICAgICAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItZm9jdXMtYm9yZGVyLWNvbG9yOiAgICRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWNvbG9yOiAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtYmc6ICAgICAgICAgICAgbGlnaHRlbigkY29tcG9uZW50LWFjdGl2ZS1iZywgMzUlKSAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWJveC1zaGFkb3c6ICAgIG51bGwgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1ib3JkZXItY29sb3I6ICAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1czogICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pY29uLWNoZWNrZWQ6ICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSc4JyBoZWlnaHQ9JzgnIHZpZXdCb3g9JzAgMCA4IDgnPjxwYXRoIGZpbGw9JyN7JGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWNvbG9yfScgZD0nTTYuNTY0Ljc1bC0zLjU5IDMuNjEyLTEuNTM4LTEuNTVMMCA0LjI2bDIuOTc0IDIuOTlMOCAyLjE5M3onLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtYmc6ICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtY29sb3I6ICAgICAgICAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pY29uLWluZGV0ZXJtaW5hdGU6ICAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nNCcgaGVpZ2h0PSc0JyB2aWV3Qm94PScwIDAgNCA0Jz48cGF0aCBzdHJva2U9JyN7JGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1jb2xvcn0nIGQ9J00wIDJoNCcvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtYm94LXNoYWRvdzogICBudWxsICFkZWZhdWx0O1xuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1ib3JkZXItY29sb3I6ICRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtYmcgIWRlZmF1bHQ7XG5cbiRjdXN0b20tcmFkaW8taW5kaWNhdG9yLWJvcmRlci1yYWRpdXM6ICAgICAgICAgIDUwJSAhZGVmYXVsdDtcbiRjdXN0b20tcmFkaW8taW5kaWNhdG9yLWljb24tY2hlY2tlZDogICAgICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzEyJyBoZWlnaHQ9JzEyJyB2aWV3Qm94PSctNCAtNCA4IDgnPjxjaXJjbGUgcj0nMycgZmlsbD0nI3skY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtY29sb3J9Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuXG4kY3VzdG9tLXN3aXRjaC13aWR0aDogICAgICAgICAgICAgICAgICAgICAgICAgICAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUgKiAxLjc1ICFkZWZhdWx0O1xuJGN1c3RvbS1zd2l0Y2gtaW5kaWNhdG9yLWJvcmRlci1yYWRpdXM6ICAgICAgICAgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplIC8gMiAhZGVmYXVsdDtcbiRjdXN0b20tc3dpdGNoLWluZGljYXRvci1zaXplOiAgICAgICAgICAgICAgICAgIHN1YnRyYWN0KCRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSwgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3JkZXItd2lkdGggKiA0KSAhZGVmYXVsdDtcblxuJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15OiAgICAgICAgICAgJGlucHV0LXBhZGRpbmcteSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LXBhZGRpbmcteDogICAgICAgICAgICRpbnB1dC1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1mb250LWZhbWlseTogICAgICAgICAkaW5wdXQtZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1mb250LXNpemU6ICAgICAgICAgICAkaW5wdXQtZm9udC1zaXplICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtaGVpZ2h0OiAgICAgICAgICAgICAgJGlucHV0LWhlaWdodCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nOiAgIDFyZW0gIWRlZmF1bHQ7IC8vIEV4dHJhIHBhZGRpbmcgdG8gYWNjb3VudCBmb3IgdGhlIHByZXNlbmNlIG9mIHRoZSBiYWNrZ3JvdW5kLWltYWdlIGJhc2VkIGluZGljYXRvclxuJGN1c3RvbS1zZWxlY3QtZm9udC13ZWlnaHQ6ICAgICAgICAgJGlucHV0LWZvbnQtd2VpZ2h0ICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtbGluZS1oZWlnaHQ6ICAgICAgICAgJGlucHV0LWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtY29sb3I6ICAgICAgICAgICAgICAgJGlucHV0LWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZGlzYWJsZWQtY29sb3I6ICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtYmc6ICAgICAgICAgICAgICAgICAgJGlucHV0LWJnICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZGlzYWJsZWQtYmc6ICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtYmctc2l6ZTogICAgICAgICAgICAgOHB4IDEwcHggIWRlZmF1bHQ7IC8vIEluIHBpeGVscyBiZWNhdXNlIGltYWdlIGRpbWVuc2lvbnNcbiRjdXN0b20tc2VsZWN0LWluZGljYXRvci1jb2xvcjogICAgICRncmF5LTgwMCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWluZGljYXRvcjogICAgICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzQnIGhlaWdodD0nNScgdmlld0JveD0nMCAwIDQgNSc+PHBhdGggZmlsbD0nI3skY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItY29sb3J9JyBkPSdNMiAwTDAgMmg0em0wIDVMMCAzaDR6Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtYmFja2dyb3VuZDogICAgICAgICAgZXNjYXBlLXN2ZygkY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3IpIHJpZ2h0ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteCBjZW50ZXIgLyAkY3VzdG9tLXNlbGVjdC1iZy1zaXplIG5vLXJlcGVhdCAhZGVmYXVsdDsgLy8gVXNlZCBzbyB3ZSBjYW4gaGF2ZSBtdWx0aXBsZSBiYWNrZ3JvdW5kIGVsZW1lbnRzIChlLmcuLCBhcnJvdyBhbmQgZmVlZGJhY2sgaWNvbilcblxuJGN1c3RvbS1zZWxlY3QtZmVlZGJhY2staWNvbi1wYWRkaW5nLXJpZ2h0OiBhZGQoMWVtICogLjc1LCAoMiAqICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteSAqIC43NSkgKyAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXggKyAkY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZykgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1mZWVkYmFjay1pY29uLXBvc2l0aW9uOiAgICAgIGNlbnRlciByaWdodCAoJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14ICsgJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmcpICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZmVlZGJhY2staWNvbi1zaXplOiAgICAgICAgICAkaW5wdXQtaGVpZ2h0LWlubmVyLWhhbGYgJGlucHV0LWhlaWdodC1pbm5lci1oYWxmICFkZWZhdWx0O1xuXG4kY3VzdG9tLXNlbGVjdC1ib3JkZXItd2lkdGg6ICAgICAgICAkaW5wdXQtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtYm9yZGVyLWNvbG9yOiAgICAgICAgJGlucHV0LWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWJvcmRlci1yYWRpdXM6ICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtYm94LXNoYWRvdzogICAgICAgICAgaW5zZXQgMCAxcHggMnB4IHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcblxuJGN1c3RvbS1zZWxlY3QtZm9jdXMtYm9yZGVyLWNvbG9yOiAgJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWZvY3VzLXdpZHRoOiAgICAgICAgICRpbnB1dC1mb2N1cy13aWR0aCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWZvY3VzLWJveC1zaGFkb3c6ICAgIDAgMCAwICRjdXN0b20tc2VsZWN0LWZvY3VzLXdpZHRoICRpbnB1dC1idG4tZm9jdXMtY29sb3IgIWRlZmF1bHQ7XG5cbiRjdXN0b20tc2VsZWN0LXBhZGRpbmcteS1zbTogICAgICAgICRpbnB1dC1wYWRkaW5nLXktc20gIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXgtc206ICAgICAgICAkaW5wdXQtcGFkZGluZy14LXNtICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZm9udC1zaXplLXNtOiAgICAgICAgJGlucHV0LWZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWhlaWdodC1zbTogICAgICAgICAgICRpbnB1dC1oZWlnaHQtc20gIWRlZmF1bHQ7XG5cbiRjdXN0b20tc2VsZWN0LXBhZGRpbmcteS1sZzogICAgICAgICRpbnB1dC1wYWRkaW5nLXktbGcgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXgtbGc6ICAgICAgICAkaW5wdXQtcGFkZGluZy14LWxnICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZm9udC1zaXplLWxnOiAgICAgICAgJGlucHV0LWZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWhlaWdodC1sZzogICAgICAgICAgICRpbnB1dC1oZWlnaHQtbGcgIWRlZmF1bHQ7XG5cbiRjdXN0b20tcmFuZ2UtdHJhY2std2lkdGg6ICAgICAgICAgIDEwMCUgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRyYWNrLWhlaWdodDogICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdHJhY2stY3Vyc29yOiAgICAgICAgIHBvaW50ZXIgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRyYWNrLWJnOiAgICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRyYWNrLWJvcmRlci1yYWRpdXM6ICAxcmVtICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10cmFjay1ib3gtc2hhZG93OiAgICAgaW5zZXQgMCAuMjVyZW0gLjI1cmVtIHJnYmEoJGJsYWNrLCAuMSkgIWRlZmF1bHQ7XG5cbiRjdXN0b20tcmFuZ2UtdGh1bWItd2lkdGg6ICAgICAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWhlaWdodDogICAgICAgICAgICAgICAgICAkY3VzdG9tLXJhbmdlLXRodW1iLXdpZHRoICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10aHVtYi1iZzogICAgICAgICAgICAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWJvcmRlcjogICAgICAgICAgICAgICAgICAwICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10aHVtYi1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItYm94LXNoYWRvdzogICAgICAgICAgICAgIDAgLjFyZW0gLjI1cmVtIHJnYmEoJGJsYWNrLCAuMSkgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICAwIDAgMCAxcHggJGJvZHktYmcsICRpbnB1dC1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93LXdpZHRoOiAgJGlucHV0LWZvY3VzLXdpZHRoICFkZWZhdWx0OyAvLyBGb3IgZm9jdXMgYm94IHNoYWRvdyBpc3N1ZSBpbiBJRS9FZGdlXG4kY3VzdG9tLXJhbmdlLXRodW1iLWFjdGl2ZS1iZzogICAgICAgICAgICAgICBsaWdodGVuKCRjb21wb25lbnQtYWN0aXZlLWJnLCAzNSUpICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10aHVtYi1kaXNhYmxlZC1iZzogICAgICAgICAgICAgJGdyYXktNTAwICFkZWZhdWx0O1xuXG4kY3VzdG9tLWZpbGUtaGVpZ2h0OiAgICAgICAgICAgICAgICAkaW5wdXQtaGVpZ2h0ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWhlaWdodC1pbm5lcjogICAgICAgICAgJGlucHV0LWhlaWdodC1pbm5lciAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1mb2N1cy1ib3JkZXItY29sb3I6ICAgICRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtZm9jdXMtYm94LXNoYWRvdzogICAgICAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1kaXNhYmxlZC1iZzogICAgICAgICAgICRpbnB1dC1kaXNhYmxlZC1iZyAhZGVmYXVsdDtcblxuJGN1c3RvbS1maWxlLXBhZGRpbmcteTogICAgICAgICAgICAgJGlucHV0LXBhZGRpbmcteSAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1wYWRkaW5nLXg6ICAgICAgICAgICAgICRpbnB1dC1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtbGluZS1oZWlnaHQ6ICAgICAgICAgICAkaW5wdXQtbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtZm9udC1mYW1pbHk6ICAgICAgICAgICAkaW5wdXQtZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtZm9udC13ZWlnaHQ6ICAgICAgICAgICAkaW5wdXQtZm9udC13ZWlnaHQgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtY29sb3I6ICAgICAgICAgICAgICAgICAkaW5wdXQtY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYmc6ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYmcgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYm9yZGVyLXdpZHRoOiAgICAgICAgICAkaW5wdXQtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJvcmRlci1jb2xvcjogICAgICAgICAgJGlucHV0LWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1ib3JkZXItcmFkaXVzOiAgICAgICAgICRpbnB1dC1ib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJveC1zaGFkb3c6ICAgICAgICAgICAgJGlucHV0LWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYnV0dG9uLWNvbG9yOiAgICAgICAgICAkY3VzdG9tLWZpbGUtY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYnV0dG9uLWJnOiAgICAgICAgICAgICAkaW5wdXQtZ3JvdXAtYWRkb24tYmcgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtdGV4dDogKFxuICBlbjogXCJCcm93c2VcIlxuKSAhZGVmYXVsdDtcblxuXG4vLyBGb3JtIHZhbGlkYXRpb25cblxuJGZvcm0tZmVlZGJhY2stbWFyZ2luLXRvcDogICAgICAgICAgJGZvcm0tdGV4dC1tYXJnaW4tdG9wICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stZm9udC1zaXplOiAgICAgICAgICAgJHNtYWxsLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXZhbGlkLWNvbG9yOiAgICAgICAgIHRoZW1lLWNvbG9yKFwic3VjY2Vzc1wiKSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWludmFsaWQtY29sb3I6ICAgICAgIHRoZW1lLWNvbG9yKFwiZGFuZ2VyXCIpICFkZWZhdWx0O1xuXG4kZm9ybS1mZWVkYmFjay1pY29uLXZhbGlkLWNvbG9yOiAgICAkZm9ybS1mZWVkYmFjay12YWxpZC1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWljb24tdmFsaWQ6ICAgICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzgnIGhlaWdodD0nOCcgdmlld0JveD0nMCAwIDggOCc+PHBhdGggZmlsbD0nI3skZm9ybS1mZWVkYmFjay1pY29uLXZhbGlkLWNvbG9yfScgZD0nTTIuMyA2LjczTC42IDQuNTNjLS40LTEuMDQuNDYtMS40IDEuMS0uOGwxLjEgMS40IDMuNC0zLjhjLjYtLjYzIDEuNi0uMjcgMS4yLjdsLTQgNC42Yy0uNDMuNS0uOC40LTEuMS4xeicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZC1jb2xvcjogICRmb3JtLWZlZWRiYWNrLWludmFsaWQtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWQ6ICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPScxMicgaGVpZ2h0PScxMicgZmlsbD0nbm9uZScgc3Ryb2tlPScjeyRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZC1jb2xvcn0nIHZpZXdCb3g9JzAgMCAxMiAxMic+PGNpcmNsZSBjeD0nNicgY3k9JzYnIHI9JzQuNScvPjxwYXRoIHN0cm9rZS1saW5lam9pbj0ncm91bmQnIGQ9J001LjggMy42aC40TDYgNi41eicvPjxjaXJjbGUgY3g9JzYnIGN5PSc4LjInIHI9Jy42JyBmaWxsPScjeyRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZC1jb2xvcn0nIHN0cm9rZT0nbm9uZScvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcblxuJGZvcm0tdmFsaWRhdGlvbi1zdGF0ZXM6ICgpICFkZWZhdWx0O1xuJGZvcm0tdmFsaWRhdGlvbi1zdGF0ZXM6IG1hcC1tZXJnZShcbiAgKFxuICAgIFwidmFsaWRcIjogKFxuICAgICAgXCJjb2xvclwiOiAkZm9ybS1mZWVkYmFjay12YWxpZC1jb2xvcixcbiAgICAgIFwiaWNvblwiOiAkZm9ybS1mZWVkYmFjay1pY29uLXZhbGlkXG4gICAgKSxcbiAgICBcImludmFsaWRcIjogKFxuICAgICAgXCJjb2xvclwiOiAkZm9ybS1mZWVkYmFjay1pbnZhbGlkLWNvbG9yLFxuICAgICAgXCJpY29uXCI6ICRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZFxuICAgICksXG4gICksXG4gICRmb3JtLXZhbGlkYXRpb24tc3RhdGVzXG4pO1xuXG4vLyBaLWluZGV4IG1hc3RlciBsaXN0XG4vL1xuLy8gV2FybmluZzogQXZvaWQgY3VzdG9taXppbmcgdGhlc2UgdmFsdWVzLiBUaGV5J3JlIHVzZWQgZm9yIGEgYmlyZCdzIGV5ZSB2aWV3XG4vLyBvZiBjb21wb25lbnRzIGRlcGVuZGVudCBvbiB0aGUgei1heGlzIGFuZCBhcmUgZGVzaWduZWQgdG8gYWxsIHdvcmsgdG9nZXRoZXIuXG5cbiR6aW5kZXgtZHJvcGRvd246ICAgICAgICAgICAgICAgICAgIDEwMDAgIWRlZmF1bHQ7XG4kemluZGV4LXN0aWNreTogICAgICAgICAgICAgICAgICAgICAxMDIwICFkZWZhdWx0O1xuJHppbmRleC1maXhlZDogICAgICAgICAgICAgICAgICAgICAgMTAzMCAhZGVmYXVsdDtcbiR6aW5kZXgtbW9kYWwtYmFja2Ryb3A6ICAgICAgICAgICAgIDEwNDAgIWRlZmF1bHQ7XG4kemluZGV4LW1vZGFsOiAgICAgICAgICAgICAgICAgICAgICAxMDUwICFkZWZhdWx0O1xuJHppbmRleC1wb3BvdmVyOiAgICAgICAgICAgICAgICAgICAgMTA2MCAhZGVmYXVsdDtcbiR6aW5kZXgtdG9vbHRpcDogICAgICAgICAgICAgICAgICAgIDEwNzAgIWRlZmF1bHQ7XG5cblxuLy8gTmF2c1xuXG4kbmF2LWxpbmstcGFkZGluZy15OiAgICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRuYXYtbGluay1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kbmF2LWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG5cbiRuYXYtdGFicy1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcbiRuYXYtdGFicy1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbmF2LXRhYnMtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWhvdmVyLWJvcmRlci1jb2xvcjogICRncmF5LTIwMCAkZ3JheS0yMDAgJG5hdi10YWJzLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWFjdGl2ZS1jb2xvcjogICAgICAgICRncmF5LTcwMCAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgICRib2R5LWJnICFkZWZhdWx0O1xuJG5hdi10YWJzLWxpbmstYWN0aXZlLWJvcmRlci1jb2xvcjogJGdyYXktMzAwICRncmF5LTMwMCAkbmF2LXRhYnMtbGluay1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRuYXYtcGlsbHMtYm9yZGVyLXJhZGl1czogICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJG5hdi1waWxscy1saW5rLWFjdGl2ZS1jb2xvcjogICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kbmF2LXBpbGxzLWxpbmstYWN0aXZlLWJnOiAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuJG5hdi1kaXZpZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJG5hdi1kaXZpZGVyLW1hcmdpbi15OiAgICAgICAgICAgICAgJHNwYWNlciAvIDIgIWRlZmF1bHQ7XG5cblxuLy8gTmF2YmFyXG5cbiRuYXZiYXItcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICRzcGFjZXIgLyAyICFkZWZhdWx0O1xuJG5hdmJhci1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcblxuJG5hdmJhci1uYXYtbGluay1wYWRkaW5nLXg6ICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbiRuYXZiYXItYnJhbmQtZm9udC1zaXplOiAgICAgICAgICAgICRmb250LXNpemUtbGcgIWRlZmF1bHQ7XG4vLyBDb21wdXRlIHRoZSBuYXZiYXItYnJhbmQgcGFkZGluZy15IHNvIHRoZSBuYXZiYXItYnJhbmQgd2lsbCBoYXZlIHRoZSBzYW1lIGhlaWdodCBhcyBuYXZiYXItdGV4dCBhbmQgbmF2LWxpbmtcbiRuYXYtbGluay1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlICsgJG5hdi1saW5rLXBhZGRpbmcteSAqIDIgIWRlZmF1bHQ7XG4kbmF2YmFyLWJyYW5kLWhlaWdodDogICAgICAgICAgICAgICAkbmF2YmFyLWJyYW5kLWZvbnQtc2l6ZSAqICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xuJG5hdmJhci1icmFuZC1wYWRkaW5nLXk6ICAgICAgICAgICAgKCRuYXYtbGluay1oZWlnaHQgLSAkbmF2YmFyLWJyYW5kLWhlaWdodCkgLyAyICFkZWZhdWx0O1xuXG4kbmF2YmFyLXRvZ2dsZXItcGFkZGluZy15OiAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kbmF2YmFyLXRvZ2dsZXItcGFkZGluZy14OiAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kbmF2YmFyLXRvZ2dsZXItZm9udC1zaXplOiAgICAgICAgICAkZm9udC1zaXplLWxnICFkZWZhdWx0O1xuJG5hdmJhci10b2dnbGVyLWJvcmRlci1yYWRpdXM6ICAgICAgJGJ0bi1ib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuXG4kbmF2YmFyLW5hdi1zY3JvbGwtbWF4LWhlaWdodDogICAgICA3NXZoICFkZWZhdWx0O1xuXG4kbmF2YmFyLWRhcmstY29sb3I6ICAgICAgICAgICAgICAgICByZ2JhKCR3aGl0ZSwgLjUpICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWhvdmVyLWNvbG9yOiAgICAgICAgICAgcmdiYSgkd2hpdGUsIC43NSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yOiAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstZGlzYWJsZWQtY29sb3I6ICAgICAgICByZ2JhKCR3aGl0ZSwgLjI1KSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay10b2dnbGVyLWljb24tYmc6ICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzMwJyBoZWlnaHQ9JzMwJyB2aWV3Qm94PScwIDAgMzAgMzAnPjxwYXRoIHN0cm9rZT0nI3skbmF2YmFyLWRhcmstY29sb3J9JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1taXRlcmxpbWl0PScxMCcgc3Ryb2tlLXdpZHRoPScyJyBkPSdNNCA3aDIyTTQgMTVoMjJNNCAyM2gyMicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay10b2dnbGVyLWJvcmRlci1jb2xvcjogIHJnYmEoJHdoaXRlLCAuMSkgIWRlZmF1bHQ7XG5cbiRuYXZiYXItbGlnaHQtY29sb3I6ICAgICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuNSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWhvdmVyLWNvbG9yOiAgICAgICAgICByZ2JhKCRibGFjaywgLjcpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3I6ICAgICAgICAgcmdiYSgkYmxhY2ssIC45KSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtZGlzYWJsZWQtY29sb3I6ICAgICAgIHJnYmEoJGJsYWNrLCAuMykgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LXRvZ2dsZXItaWNvbi1iZzogICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSczMCcgaGVpZ2h0PSczMCcgdmlld0JveD0nMCAwIDMwIDMwJz48cGF0aCBzdHJva2U9JyN7JG5hdmJhci1saWdodC1jb2xvcn0nIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLW1pdGVybGltaXQ9JzEwJyBzdHJva2Utd2lkdGg9JzInIGQ9J000IDdoMjJNNCAxNWgyMk00IDIzaDIyJy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC10b2dnbGVyLWJvcmRlci1jb2xvcjogcmdiYSgkYmxhY2ssIC4xKSAhZGVmYXVsdDtcblxuJG5hdmJhci1saWdodC1icmFuZC1jb2xvcjogICAgICAgICAgICAgICAgJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWJyYW5kLWhvdmVyLWNvbG9yOiAgICAgICAgICAkbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1icmFuZC1jb2xvcjogICAgICAgICAgICAgICAgICRuYXZiYXItZGFyay1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstYnJhbmQtaG92ZXItY29sb3I6ICAgICAgICAgICAkbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuXG5cbi8vIERyb3Bkb3duc1xuLy9cbi8vIERyb3Bkb3duIG1lbnUgY29udGFpbmVyIGFuZCBjb250ZW50cy5cblxuJGRyb3Bkb3duLW1pbi13aWR0aDogICAgICAgICAgICAgICAgMTByZW0gIWRlZmF1bHQ7XG4kZHJvcGRvd24tcGFkZGluZy14OiAgICAgICAgICAgICAgICAwICFkZWZhdWx0O1xuJGRyb3Bkb3duLXBhZGRpbmcteTogICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kZHJvcGRvd24tc3BhY2VyOiAgICAgICAgICAgICAgICAgICAuMTI1cmVtICFkZWZhdWx0O1xuJGRyb3Bkb3duLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICFkZWZhdWx0O1xuJGRyb3Bkb3duLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYmc6ICAgICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjE1KSAhZGVmYXVsdDtcbiRkcm9wZG93bi1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJvcmRlci13aWR0aDogICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRkcm9wZG93bi1pbm5lci1ib3JkZXItcmFkaXVzOiAgICAgIHN1YnRyYWN0KCRkcm9wZG93bi1ib3JkZXItcmFkaXVzLCAkZHJvcGRvd24tYm9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiRkcm9wZG93bi1kaXZpZGVyLWJnOiAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRkcm9wZG93bi1kaXZpZGVyLW1hcmdpbi15OiAgICAgICAgICRuYXYtZGl2aWRlci1tYXJnaW4teSAhZGVmYXVsdDtcbiRkcm9wZG93bi1ib3gtc2hhZG93OiAgICAgICAgICAgICAgIDAgLjVyZW0gMXJlbSByZ2JhKCRibGFjaywgLjE3NSkgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1saW5rLWNvbG9yOiAgICAgICAgICAgICAgICRncmF5LTkwMCAhZGVmYXVsdDtcbiRkcm9wZG93bi1saW5rLWhvdmVyLWNvbG9yOiAgICAgICAgIGRhcmtlbigkZ3JheS05MDAsIDUlKSAhZGVmYXVsdDtcbiRkcm9wZG93bi1saW5rLWhvdmVyLWJnOiAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yOiAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kZHJvcGRvd24tbGluay1hY3RpdmUtYmc6ICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAgJGdyYXktNTAwICFkZWZhdWx0O1xuXG4kZHJvcGRvd24taXRlbS1wYWRkaW5nLXk6ICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kZHJvcGRvd24taXRlbS1wYWRkaW5nLXg6ICAgICAgICAgICAxLjVyZW0gIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1oZWFkZXItY29sb3I6ICAgICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRkcm9wZG93bi1oZWFkZXItcGFkZGluZzogICAgICAgICAgICRkcm9wZG93bi1wYWRkaW5nLXkgJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14ICFkZWZhdWx0O1xuXG5cbi8vIFBhZ2luYXRpb25cblxuJHBhZ2luYXRpb24tcGFkZGluZy15OiAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXktc206ICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXgtc206ICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteS1sZzogICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteC1sZzogICAgICAgICAgIDEuNXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgIDEuMjUgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWNvbG9yOiAgICAgICAgICAgICAgICAgICRsaW5rLWNvbG9yICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYmc6ICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYm9yZGVyLXdpZHRoOiAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJvcmRlci1jb2xvcjogICAgICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tZm9jdXMtYm94LXNoYWRvdzogICAgICAgJGlucHV0LWJ0bi1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZm9jdXMtb3V0bGluZTogICAgICAgICAgMCAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24taG92ZXItY29sb3I6ICAgICAgICAgICAgJGxpbmstaG92ZXItY29sb3IgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ob3Zlci1iZzogICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ob3Zlci1ib3JkZXItY29sb3I6ICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYWN0aXZlLWJnOiAgICAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1hY3RpdmUtYm9yZGVyLWNvbG9yOiAgICAkcGFnaW5hdGlvbi1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWRpc2FibGVkLWJnOiAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWRpc2FibGVkLWJvcmRlci1jb2xvcjogICRncmF5LTMwMCAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tYm9yZGVyLXJhZGl1cy1zbTogICAgICAgJGJvcmRlci1yYWRpdXMtc20gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ib3JkZXItcmFkaXVzLWxnOiAgICAgICAkYm9yZGVyLXJhZGl1cy1sZyAhZGVmYXVsdDtcblxuLy8gSnVtYm90cm9uXG5cbiRqdW1ib3Ryb24tcGFkZGluZzogICAgICAgICAgICAgICAgIDJyZW0gIWRlZmF1bHQ7XG4kanVtYm90cm9uLWNvbG9yOiAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGp1bWJvdHJvbi1iZzogICAgICAgICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuXG5cbi8vIENhcmRzXG5cbiRjYXJkLXNwYWNlci15OiAgICAgICAgICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRjYXJkLXNwYWNlci14OiAgICAgICAgICAgICAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG4kY2FyZC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGNhcmQtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kY2FyZC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjEyNSkgIWRlZmF1bHQ7XG4kY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzOiAgICAgICAgICBzdWJ0cmFjdCgkY2FyZC1ib3JkZXItcmFkaXVzLCAkY2FyZC1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJGNhcmQtY2FwLWJnOiAgICAgICAgICAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4wMykgIWRlZmF1bHQ7XG4kY2FyZC1jYXAtY29sb3I6ICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGNhcmQtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRjYXJkLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kY2FyZC1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG5cbiRjYXJkLWltZy1vdmVybGF5LXBhZGRpbmc6ICAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG5cbiRjYXJkLWdyb3VwLW1hcmdpbjogICAgICAgICAgICAgICAgICRncmlkLWd1dHRlci13aWR0aCAvIDIgIWRlZmF1bHQ7XG4kY2FyZC1kZWNrLW1hcmdpbjogICAgICAgICAgICAgICAgICAkY2FyZC1ncm91cC1tYXJnaW4gIWRlZmF1bHQ7XG5cbiRjYXJkLWNvbHVtbnMtY291bnQ6ICAgICAgICAgICAgICAgIDMgIWRlZmF1bHQ7XG4kY2FyZC1jb2x1bW5zLWdhcDogICAgICAgICAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuJGNhcmQtY29sdW1ucy1tYXJnaW46ICAgICAgICAgICAgICAgJGNhcmQtc3BhY2VyLXkgIWRlZmF1bHQ7XG5cblxuLy8gVG9vbHRpcHNcblxuJHRvb2x0aXAtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiR0b29sdGlwLW1heC13aWR0aDogICAgICAgICAgICAgICAgIDIwMHB4ICFkZWZhdWx0O1xuJHRvb2x0aXAtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHRvb2x0aXAtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgJGJsYWNrICFkZWZhdWx0O1xuJHRvb2x0aXAtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kdG9vbHRpcC1vcGFjaXR5OiAgICAgICAgICAgICAgICAgICAuOSAhZGVmYXVsdDtcbiR0b29sdGlwLXBhZGRpbmcteTogICAgICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiR0b29sdGlwLXBhZGRpbmcteDogICAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJHRvb2x0aXAtbWFyZ2luOiAgICAgICAgICAgICAgICAgICAgMCAhZGVmYXVsdDtcblxuJHRvb2x0aXAtYXJyb3ctd2lkdGg6ICAgICAgICAgICAgICAgLjhyZW0gIWRlZmF1bHQ7XG4kdG9vbHRpcC1hcnJvdy1oZWlnaHQ6ICAgICAgICAgICAgICAuNHJlbSAhZGVmYXVsdDtcbiR0b29sdGlwLWFycm93LWNvbG9yOiAgICAgICAgICAgICAgICR0b29sdGlwLWJnICFkZWZhdWx0O1xuXG4vLyBGb3JtIHRvb2x0aXBzIG11c3QgY29tZSBhZnRlciByZWd1bGFyIHRvb2x0aXBzXG4kZm9ybS1mZWVkYmFjay10b29sdGlwLXBhZGRpbmcteTogICAgICR0b29sdGlwLXBhZGRpbmcteSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtcGFkZGluZy14OiAgICAgJHRvb2x0aXAtcGFkZGluZy14ICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1mb250LXNpemU6ICAgICAkdG9vbHRpcC1mb250LXNpemUgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay10b29sdGlwLWxpbmUtaGVpZ2h0OiAgICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1vcGFjaXR5OiAgICAgICAkdG9vbHRpcC1vcGFjaXR5ICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1ib3JkZXItcmFkaXVzOiAkdG9vbHRpcC1ib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuXG5cbi8vIFBvcG92ZXJzXG5cbiRwb3BvdmVyLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICRmb250LXNpemUtc20gIWRlZmF1bHQ7XG4kcG9wb3Zlci1iZzogICAgICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kcG9wb3Zlci1tYXgtd2lkdGg6ICAgICAgICAgICAgICAgICAyNzZweCAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvcmRlci13aWR0aDogICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjIpICFkZWZhdWx0O1xuJHBvcG92ZXItYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMtbGcgIWRlZmF1bHQ7XG4kcG9wb3Zlci1pbm5lci1ib3JkZXItcmFkaXVzOiAgICAgICBzdWJ0cmFjdCgkcG9wb3Zlci1ib3JkZXItcmFkaXVzLCAkcG9wb3Zlci1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJHBvcG92ZXItYm94LXNoYWRvdzogICAgICAgICAgICAgICAgMCAuMjVyZW0gLjVyZW0gcmdiYSgkYmxhY2ssIC4yKSAhZGVmYXVsdDtcblxuJHBvcG92ZXItaGVhZGVyLWJnOiAgICAgICAgICAgICAgICAgZGFya2VuKCRwb3BvdmVyLWJnLCAzJSkgIWRlZmF1bHQ7XG4kcG9wb3Zlci1oZWFkZXItY29sb3I6ICAgICAgICAgICAgICAkaGVhZGluZ3MtY29sb3IgIWRlZmF1bHQ7XG4kcG9wb3Zlci1oZWFkZXItcGFkZGluZy15OiAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXg6ICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcblxuJHBvcG92ZXItYm9keS1jb2xvcjogICAgICAgICAgICAgICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib2R5LXBhZGRpbmcteTogICAgICAgICAgICAkcG9wb3Zlci1oZWFkZXItcGFkZGluZy15ICFkZWZhdWx0O1xuJHBvcG92ZXItYm9keS1wYWRkaW5nLXg6ICAgICAgICAgICAgJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteCAhZGVmYXVsdDtcblxuJHBvcG92ZXItYXJyb3ctd2lkdGg6ICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRwb3BvdmVyLWFycm93LWhlaWdodDogICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJHBvcG92ZXItYXJyb3ctY29sb3I6ICAgICAgICAgICAgICAgJHBvcG92ZXItYmcgIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yOiAgICAgICAgIGZhZGUtaW4oJHBvcG92ZXItYm9yZGVyLWNvbG9yLCAuMDUpICFkZWZhdWx0O1xuXG5cbi8vIFRvYXN0c1xuXG4kdG9hc3QtbWF4LXdpZHRoOiAgICAgICAgICAgICAgICAgICAzNTBweCAhZGVmYXVsdDtcbiR0b2FzdC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiR0b2FzdC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiR0b2FzdC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgIC44NzVyZW0gIWRlZmF1bHQ7XG4kdG9hc3QtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJHRvYXN0LWJhY2tncm91bmQtY29sb3I6ICAgICAgICAgICAgcmdiYSgkd2hpdGUsIC44NSkgIWRlZmF1bHQ7XG4kdG9hc3QtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAxcHggIWRlZmF1bHQ7XG4kdG9hc3QtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICByZ2JhKDAsIDAsIDAsIC4xKSAhZGVmYXVsdDtcbiR0b2FzdC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiR0b2FzdC1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAgIDAgLjI1cmVtIC43NXJlbSByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuXG4kdG9hc3QtaGVhZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kdG9hc3QtaGVhZGVyLWJhY2tncm91bmQtY29sb3I6ICAgICByZ2JhKCR3aGl0ZSwgLjg1KSAhZGVmYXVsdDtcbiR0b2FzdC1oZWFkZXItYm9yZGVyLWNvbG9yOiAgICAgICAgIHJnYmEoMCwgMCwgMCwgLjA1KSAhZGVmYXVsdDtcblxuXG4vLyBCYWRnZXNcblxuJGJhZGdlLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgNzUlICFkZWZhdWx0O1xuJGJhZGdlLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG4kYmFkZ2UtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAuMjVlbSAhZGVmYXVsdDtcbiRiYWRnZS1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgIC40ZW0gIWRlZmF1bHQ7XG4kYmFkZ2UtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcblxuJGJhZGdlLXRyYW5zaXRpb246ICAgICAgICAgICAgICAgICAgJGJ0bi10cmFuc2l0aW9uICFkZWZhdWx0O1xuJGJhZGdlLWZvY3VzLXdpZHRoOiAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb2N1cy13aWR0aCAhZGVmYXVsdDtcblxuJGJhZGdlLXBpbGwtcGFkZGluZy14OiAgICAgICAgICAgICAgLjZlbSAhZGVmYXVsdDtcbi8vIFVzZSBhIGhpZ2hlciB0aGFuIG5vcm1hbCB2YWx1ZSB0byBlbnN1cmUgY29tcGxldGVseSByb3VuZGVkIGVkZ2VzIHdoZW5cbi8vIGN1c3RvbWl6aW5nIHBhZGRpbmcgb3IgZm9udC1zaXplIG9uIGxhYmVscy5cbiRiYWRnZS1waWxsLWJvcmRlci1yYWRpdXM6ICAgICAgICAgIDEwcmVtICFkZWZhdWx0O1xuXG5cbi8vIE1vZGFsc1xuXG4vLyBQYWRkaW5nIGFwcGxpZWQgdG8gdGhlIG1vZGFsIGJvZHlcbiRtb2RhbC1pbm5lci1wYWRkaW5nOiAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG5cbi8vIE1hcmdpbiBiZXR3ZWVuIGVsZW1lbnRzIGluIGZvb3RlciwgbXVzdCBiZSBsb3dlciB0aGFuIG9yIGVxdWFsIHRvIDIgKiAkbW9kYWwtaW5uZXItcGFkZGluZ1xuJG1vZGFsLWZvb3Rlci1tYXJnaW4tYmV0d2VlbjogICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbiRtb2RhbC1kaWFsb2ctbWFyZ2luOiAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJG1vZGFsLWRpYWxvZy1tYXJnaW4teS1zbS11cDogICAgICAgMS43NXJlbSAhZGVmYXVsdDtcblxuJG1vZGFsLXRpdGxlLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgJGxpbmUtaGVpZ2h0LWJhc2UgIWRlZmF1bHQ7XG5cbiRtb2RhbC1jb250ZW50LWNvbG9yOiAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1iZzogICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3JkZXItY29sb3I6ICAgICAgICByZ2JhKCRibGFjaywgLjIpICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXdpZHRoOiAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJvcmRlci1yYWRpdXM6ICAgICAgICRib3JkZXItcmFkaXVzLWxnICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtaW5uZXItYm9yZGVyLXJhZGl1czogc3VidHJhY3QoJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXJhZGl1cywgJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJveC1zaGFkb3cteHM6ICAgICAgIDAgLjI1cmVtIC41cmVtIHJnYmEoJGJsYWNrLCAuNSkgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXNtLXVwOiAgICAwIC41cmVtIDFyZW0gcmdiYSgkYmxhY2ssIC41KSAhZGVmYXVsdDtcblxuJG1vZGFsLWJhY2tkcm9wLWJnOiAgICAgICAgICAgICAgICAgJGJsYWNrICFkZWZhdWx0O1xuJG1vZGFsLWJhY2tkcm9wLW9wYWNpdHk6ICAgICAgICAgICAgLjUgIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvcjogICAgICAgICAkYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJG1vZGFsLWZvb3Rlci1ib3JkZXItY29sb3I6ICAgICAgICAgJG1vZGFsLWhlYWRlci1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLWJvcmRlci13aWR0aDogICAgICAgICAkbW9kYWwtY29udGVudC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbW9kYWwtZm9vdGVyLWJvcmRlci13aWR0aDogICAgICAgICAkbW9kYWwtaGVhZGVyLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItcGFkZGluZy15OiAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLXBhZGRpbmcteDogICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1wYWRkaW5nOiAgICAgICAgICAgICAgJG1vZGFsLWhlYWRlci1wYWRkaW5nLXkgJG1vZGFsLWhlYWRlci1wYWRkaW5nLXggIWRlZmF1bHQ7IC8vIEtlZXAgdGhpcyBmb3IgYmFja3dhcmRzIGNvbXBhdGliaWxpdHlcblxuJG1vZGFsLXhsOiAgICAgICAgICAgICAgICAgICAgICAgICAgMTE0MHB4ICFkZWZhdWx0O1xuJG1vZGFsLWxnOiAgICAgICAgICAgICAgICAgICAgICAgICAgODAwcHggIWRlZmF1bHQ7XG4kbW9kYWwtbWQ6ICAgICAgICAgICAgICAgICAgICAgICAgICA1MDBweCAhZGVmYXVsdDtcbiRtb2RhbC1zbTogICAgICAgICAgICAgICAgICAgICAgICAgIDMwMHB4ICFkZWZhdWx0O1xuXG4kbW9kYWwtZmFkZS10cmFuc2Zvcm06ICAgICAgICAgICAgICB0cmFuc2xhdGUoMCwgLTUwcHgpICFkZWZhdWx0O1xuJG1vZGFsLXNob3ctdHJhbnNmb3JtOiAgICAgICAgICAgICAgbm9uZSAhZGVmYXVsdDtcbiRtb2RhbC10cmFuc2l0aW9uOiAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAuM3MgZWFzZS1vdXQgIWRlZmF1bHQ7XG4kbW9kYWwtc2NhbGUtdHJhbnNmb3JtOiAgICAgICAgICAgICBzY2FsZSgxLjAyKSAhZGVmYXVsdDtcblxuXG4vLyBBbGVydHNcbi8vXG4vLyBEZWZpbmUgYWxlcnQgY29sb3JzLCBib3JkZXIgcmFkaXVzLCBhbmQgcGFkZGluZy5cblxuJGFsZXJ0LXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJGFsZXJ0LXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRhbGVydC1tYXJnaW4tYm90dG9tOiAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kYWxlcnQtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRhbGVydC1saW5rLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuJGFsZXJ0LWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuJGFsZXJ0LWJnLWxldmVsOiAgICAgICAgICAgICAgICAgICAgLTEwICFkZWZhdWx0O1xuJGFsZXJ0LWJvcmRlci1sZXZlbDogICAgICAgICAgICAgICAgLTkgIWRlZmF1bHQ7XG4kYWxlcnQtY29sb3ItbGV2ZWw6ICAgICAgICAgICAgICAgICA2ICFkZWZhdWx0O1xuXG5cbi8vIFByb2dyZXNzIGJhcnNcblxuJHByb2dyZXNzLWhlaWdodDogICAgICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIC43NSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iZzogICAgICAgICAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRwcm9ncmVzcy1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJHByb2dyZXNzLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgaW5zZXQgMCAuMXJlbSAuMXJlbSByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci1jb2xvcjogICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci1iZzogICAgICAgICAgICAgICAgICAgdGhlbWUtY29sb3IoXCJwcmltYXJ5XCIpICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci1hbmltYXRpb24tdGltaW5nOiAgICAgMXMgbGluZWFyIGluZmluaXRlICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci10cmFuc2l0aW9uOiAgICAgICAgICAgd2lkdGggLjZzIGVhc2UgIWRlZmF1bHQ7XG5cblxuLy8gTGlzdCBncm91cFxuXG4kbGlzdC1ncm91cC1jb2xvcjogICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYmc6ICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4xMjUpICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteTogICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteDogICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1ob3Zlci1iZzogICAgICAgICAgICAgICAkZ3JheS0xMDAgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3RpdmUtY29sb3I6ICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGl2ZS1iZzogICAgICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aXZlLWJvcmRlci1jb2xvcjogICAgJGxpc3QtZ3JvdXAtYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1kaXNhYmxlZC1jb2xvcjogICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1kaXNhYmxlZC1iZzogICAgICAgICAgICAkbGlzdC1ncm91cC1iZyAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtYWN0aW9uLWNvbG9yOiAgICAgICAgICAgJGdyYXktNzAwICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aW9uLWhvdmVyLWNvbG9yOiAgICAgJGxpc3QtZ3JvdXAtYWN0aW9uLWNvbG9yICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWNvbG9yOiAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtYmc6ICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcblxuXG4vLyBJbWFnZSB0aHVtYm5haWxzXG5cbiR0aHVtYm5haWwtcGFkZGluZzogICAgICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYmc6ICAgICAgICAgICAgICAgICAgICAgICRib2R5LWJnICFkZWZhdWx0O1xuJHRodW1ibmFpbC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYm9yZGVyLXJhZGl1czogICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJHRodW1ibmFpbC1ib3gtc2hhZG93OiAgICAgICAgICAgICAgMCAxcHggMnB4IHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcblxuXG4vLyBGaWd1cmVzXG5cbiRmaWd1cmUtY2FwdGlvbi1mb250LXNpemU6ICAgICAgICAgIDkwJSAhZGVmYXVsdDtcbiRmaWd1cmUtY2FwdGlvbi1jb2xvcjogICAgICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcblxuXG4vLyBCcmVhZGNydW1ic1xuXG4kYnJlYWRjcnVtYi1mb250LXNpemU6ICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuXG4kYnJlYWRjcnVtYi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItaXRlbS1wYWRkaW5nOiAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbiRicmVhZGNydW1iLW1hcmdpbi1ib3R0b206ICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG5cbiRicmVhZGNydW1iLWJnOiAgICAgICAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWRpdmlkZXItY29sb3I6ICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWRpdmlkZXI6ICAgICAgICAgICAgICAgIHF1b3RlKFwiL1wiKSAhZGVmYXVsdDtcblxuJGJyZWFkY3J1bWItYm9yZGVyLXJhZGl1czogICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG5cblxuLy8gQ2Fyb3VzZWxcblxuJGNhcm91c2VsLWNvbnRyb2wtY29sb3I6ICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLXdpZHRoOiAgICAgICAgICAgICAxNSUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC1vcGFjaXR5OiAgICAgICAgICAgLjUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC1ob3Zlci1vcGFjaXR5OiAgICAgLjkgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC10cmFuc2l0aW9uOiAgICAgICAgb3BhY2l0eSAuMTVzIGVhc2UgIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1pbmRpY2F0b3Itd2lkdGg6ICAgICAgICAgICAzMHB4ICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1oZWlnaHQ6ICAgICAgICAgIDNweCAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItaGl0LWFyZWEtaGVpZ2h0OiAxMHB4ICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1zcGFjZXI6ICAgICAgICAgIDNweCAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItYWN0aXZlLWJnOiAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLXRyYW5zaXRpb246ICAgICAgb3BhY2l0eSAuNnMgZWFzZSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWNhcHRpb24td2lkdGg6ICAgICAgICAgICAgIDcwJSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jYXB0aW9uLWNvbG9yOiAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1jb250cm9sLWljb24td2lkdGg6ICAgICAgICAyMHB4ICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24tYmc6ICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyBmaWxsPScjeyRjYXJvdXNlbC1jb250cm9sLWNvbG9yfScgd2lkdGg9JzgnIGhlaWdodD0nOCcgdmlld0JveD0nMCAwIDggOCc+PHBhdGggZD0nTTUuMjUgMGwtNCA0IDQgNCAxLjUtMS41TDQuMjUgNGwyLjUtMi41TDUuMjUgMHonLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24tYmc6ICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyBmaWxsPScjeyRjYXJvdXNlbC1jb250cm9sLWNvbG9yfScgd2lkdGg9JzgnIGhlaWdodD0nOCcgdmlld0JveD0nMCAwIDggOCc+PHBhdGggZD0nTTIuNzUgMGwtMS41IDEuNUwzLjc1IDRsLTIuNSAyLjVMMi43NSA4bDQtNC00LTR6Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtdHJhbnNpdGlvbi1kdXJhdGlvbjogICAgICAgLjZzICFkZWZhdWx0O1xuJGNhcm91c2VsLXRyYW5zaXRpb246ICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAkY2Fyb3VzZWwtdHJhbnNpdGlvbi1kdXJhdGlvbiBlYXNlLWluLW91dCAhZGVmYXVsdDsgLy8gRGVmaW5lIHRyYW5zZm9ybSB0cmFuc2l0aW9uIGZpcnN0IGlmIHVzaW5nIG11bHRpcGxlIHRyYW5zaXRpb25zIChlLmcuLCBgdHJhbnNmb3JtIDJzIGVhc2UsIG9wYWNpdHkgLjVzIGVhc2Utb3V0YClcblxuXG4vLyBTcGlubmVyc1xuXG4kc3Bpbm5lci13aWR0aDogICAgICAgICAycmVtICFkZWZhdWx0O1xuJHNwaW5uZXItaGVpZ2h0OiAgICAgICAgJHNwaW5uZXItd2lkdGggIWRlZmF1bHQ7XG4kc3Bpbm5lci1ib3JkZXItd2lkdGg6ICAuMjVlbSAhZGVmYXVsdDtcblxuJHNwaW5uZXItd2lkdGgtc206ICAgICAgICAxcmVtICFkZWZhdWx0O1xuJHNwaW5uZXItaGVpZ2h0LXNtOiAgICAgICAkc3Bpbm5lci13aWR0aC1zbSAhZGVmYXVsdDtcbiRzcGlubmVyLWJvcmRlci13aWR0aC1zbTogLjJlbSAhZGVmYXVsdDtcblxuXG4vLyBDbG9zZVxuXG4kY2xvc2UtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjUgIWRlZmF1bHQ7XG4kY2xvc2UtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAgICAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcbiRjbG9zZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICRibGFjayAhZGVmYXVsdDtcbiRjbG9zZS10ZXh0LXNoYWRvdzogICAgICAgICAgICAgICAgIDAgMXB4IDAgJHdoaXRlICFkZWZhdWx0O1xuXG5cbi8vIENvZGVcblxuJGNvZGUtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgODcuNSUgIWRlZmF1bHQ7XG4kY29kZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAkcGluayAhZGVmYXVsdDtcblxuJGtiZC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgICAgLjJyZW0gIWRlZmF1bHQ7XG4ka2JkLXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgICAuNHJlbSAhZGVmYXVsdDtcbiRrYmQtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICRjb2RlLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRrYmQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRrYmQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICRncmF5LTkwMCAhZGVmYXVsdDtcblxuJHByZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xuJHByZS1zY3JvbGxhYmxlLW1heC1oZWlnaHQ6ICAgICAgICAgMzQwcHggIWRlZmF1bHQ7XG5cblxuLy8gVXRpbGl0aWVzXG5cbiRkaXNwbGF5czogbm9uZSwgaW5saW5lLCBpbmxpbmUtYmxvY2ssIGJsb2NrLCB0YWJsZSwgdGFibGUtcm93LCB0YWJsZS1jZWxsLCBmbGV4LCBpbmxpbmUtZmxleCAhZGVmYXVsdDtcbiRvdmVyZmxvd3M6IGF1dG8sIGhpZGRlbiAhZGVmYXVsdDtcbiRwb3NpdGlvbnM6IHN0YXRpYywgcmVsYXRpdmUsIGFic29sdXRlLCBmaXhlZCwgc3RpY2t5ICFkZWZhdWx0O1xuJHVzZXItc2VsZWN0czogYWxsLCBhdXRvLCBub25lICFkZWZhdWx0O1xuXG5cbi8vIFByaW50aW5nXG5cbiRwcmludC1wYWdlLXNpemU6ICAgICAgICAgICAgICAgICAgIGEzICFkZWZhdWx0O1xuJHByaW50LWJvZHktbWluLXdpZHRoOiAgICAgICAgICAgICAgbWFwLWdldCgkZ3JpZC1icmVha3BvaW50cywgXCJsZ1wiKSAhZGVmYXVsdDtcbiIsIi8vIEhvdmVyIG1peGluIGFuZCBgJGVuYWJsZS1ob3Zlci1tZWRpYS1xdWVyeWAgYXJlIGRlcHJlY2F0ZWQuXG4vL1xuLy8gT3JpZ2luYWxseSBhZGRlZCBkdXJpbmcgb3VyIGFscGhhcyBhbmQgbWFpbnRhaW5lZCBkdXJpbmcgYmV0YXMsIHRoaXMgbWl4aW4gd2FzXG4vLyBkZXNpZ25lZCB0byBwcmV2ZW50IGA6aG92ZXJgIHN0aWNraW5lc3Mgb24gaU9TLWFuIGlzc3VlIHdoZXJlIGhvdmVyIHN0eWxlc1xuLy8gd291bGQgcGVyc2lzdCBhZnRlciBpbml0aWFsIHRvdWNoLlxuLy9cbi8vIEZvciBiYWNrd2FyZCBjb21wYXRpYmlsaXR5LCB3ZSd2ZSBrZXB0IHRoZXNlIG1peGlucyBhbmQgdXBkYXRlZCB0aGVtIHRvXG4vLyBhbHdheXMgcmV0dXJuIHRoZWlyIHJlZ3VsYXIgcHNldWRvLWNsYXNzZXMgaW5zdGVhZCBvZiBhIHNoaW1tZWQgbWVkaWEgcXVlcnkuXG4vL1xuLy8gSXNzdWU6IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjUxOTVcblxuQG1peGluIGhvdmVyKCkge1xuICAmOmhvdmVyIHsgQGNvbnRlbnQ7IH1cbn1cblxuQG1peGluIGhvdmVyLWZvY3VzKCkge1xuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG5AbWl4aW4gcGxhaW4taG92ZXItZm9jdXMoKSB7XG4gICYsXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbkBtaXhpbiBob3Zlci1mb2N1cy1hY3RpdmUoKSB7XG4gICY6aG92ZXIsXG4gICY6Zm9jdXMsXG4gICY6YWN0aXZlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3ItbGlzdC1jb21tYS1uZXdsaW5lLWFmdGVyXG5cbi8vXG4vLyBIZWFkaW5nc1xuLy9cblxuaDEsIGgyLCBoMywgaDQsIGg1LCBoNixcbi5oMSwgLmgyLCAuaDMsIC5oNCwgLmg1LCAuaDYge1xuICBtYXJnaW4tYm90dG9tOiAkaGVhZGluZ3MtbWFyZ2luLWJvdHRvbTtcbiAgZm9udC1mYW1pbHk6ICRoZWFkaW5ncy1mb250LWZhbWlseTtcbiAgZm9udC13ZWlnaHQ6ICRoZWFkaW5ncy1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRoZWFkaW5ncy1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRoZWFkaW5ncy1jb2xvcjtcbn1cblxuaDEsIC5oMSB7IEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDEtZm9udC1zaXplKTsgfVxuaDIsIC5oMiB7IEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDItZm9udC1zaXplKTsgfVxuaDMsIC5oMyB7IEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDMtZm9udC1zaXplKTsgfVxuaDQsIC5oNCB7IEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDQtZm9udC1zaXplKTsgfVxuaDUsIC5oNSB7IEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDUtZm9udC1zaXplKTsgfVxuaDYsIC5oNiB7IEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDYtZm9udC1zaXplKTsgfVxuXG4ubGVhZCB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkbGVhZC1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogJGxlYWQtZm9udC13ZWlnaHQ7XG59XG5cbi8vIFR5cGUgZGlzcGxheSBjbGFzc2VzXG4uZGlzcGxheS0xIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRkaXNwbGF5MS1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRkaXNwbGF5MS13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkZGlzcGxheS1saW5lLWhlaWdodDtcbn1cbi5kaXNwbGF5LTIge1xuICBAaW5jbHVkZSBmb250LXNpemUoJGRpc3BsYXkyLXNpemUpO1xuICBmb250LXdlaWdodDogJGRpc3BsYXkyLXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRkaXNwbGF5LWxpbmUtaGVpZ2h0O1xufVxuLmRpc3BsYXktMyB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZGlzcGxheTMtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkZGlzcGxheTMtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGRpc3BsYXktbGluZS1oZWlnaHQ7XG59XG4uZGlzcGxheS00IHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRkaXNwbGF5NC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRkaXNwbGF5NC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkZGlzcGxheS1saW5lLWhlaWdodDtcbn1cblxuXG4vL1xuLy8gSG9yaXpvbnRhbCBydWxlc1xuLy9cblxuaHIge1xuICBtYXJnaW4tdG9wOiAkaHItbWFyZ2luLXk7XG4gIG1hcmdpbi1ib3R0b206ICRoci1tYXJnaW4teTtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItdG9wOiAkaHItYm9yZGVyLXdpZHRoIHNvbGlkICRoci1ib3JkZXItY29sb3I7XG59XG5cblxuLy9cbi8vIEVtcGhhc2lzXG4vL1xuXG5zbWFsbCxcbi5zbWFsbCB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkc21hbGwtZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG59XG5cbm1hcmssXG4ubWFyayB7XG4gIHBhZGRpbmc6ICRtYXJrLXBhZGRpbmc7XG4gIGJhY2tncm91bmQtY29sb3I6ICRtYXJrLWJnO1xufVxuXG5cbi8vXG4vLyBMaXN0c1xuLy9cblxuLmxpc3QtdW5zdHlsZWQge1xuICBAaW5jbHVkZSBsaXN0LXVuc3R5bGVkKCk7XG59XG5cbi8vIElubGluZSB0dXJucyBsaXN0IGl0ZW1zIGludG8gaW5saW5lLWJsb2NrXG4ubGlzdC1pbmxpbmUge1xuICBAaW5jbHVkZSBsaXN0LXVuc3R5bGVkKCk7XG59XG4ubGlzdC1pbmxpbmUtaXRlbSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIG1hcmdpbi1yaWdodDogJGxpc3QtaW5saW5lLXBhZGRpbmc7XG4gIH1cbn1cblxuXG4vL1xuLy8gTWlzY1xuLy9cblxuLy8gQnVpbGRzIG9uIGBhYmJyYFxuLmluaXRpYWxpc20ge1xuICBAaW5jbHVkZSBmb250LXNpemUoOTAlKTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLy8gQmxvY2txdW90ZXNcbi5ibG9ja3F1b3RlIHtcbiAgbWFyZ2luLWJvdHRvbTogJHNwYWNlcjtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRibG9ja3F1b3RlLWZvbnQtc2l6ZSk7XG59XG5cbi5ibG9ja3F1b3RlLWZvb3RlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGJsb2NrcXVvdGUtc21hbGwtZm9udC1zaXplKTtcbiAgY29sb3I6ICRibG9ja3F1b3RlLXNtYWxsLWNvbG9yO1xuXG4gICY6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcXDIwMTRcXDAwQTBcIjsgLy8gZW0gZGFzaCwgbmJzcFxuICB9XG59XG4iLCIvLyBMaXN0c1xuXG4vLyBVbnN0eWxlZCBrZWVwcyBsaXN0IGl0ZW1zIGJsb2NrIGxldmVsLCBqdXN0IHJlbW92ZXMgZGVmYXVsdCBicm93c2VyIHBhZGRpbmcgYW5kIGxpc3Qtc3R5bGVcbkBtaXhpbiBsaXN0LXVuc3R5bGVkKCkge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG4iLCIvLyBSZXNwb25zaXZlIGltYWdlcyAoZW5zdXJlIGltYWdlcyBkb24ndCBzY2FsZSBiZXlvbmQgdGhlaXIgcGFyZW50cylcbi8vXG4vLyBUaGlzIGlzIHB1cnBvc2VmdWxseSBvcHQtaW4gdmlhIGFuIGV4cGxpY2l0IGNsYXNzIHJhdGhlciB0aGFuIGJlaW5nIHRoZSBkZWZhdWx0IGZvciBhbGwgYDxpbWc+YHMuXG4vLyBXZSBwcmV2aW91c2x5IHRyaWVkIHRoZSBcImltYWdlcyBhcmUgcmVzcG9uc2l2ZSBieSBkZWZhdWx0XCIgYXBwcm9hY2ggaW4gQm9vdHN0cmFwIHYyLFxuLy8gYW5kIGFiYW5kb25lZCBpdCBpbiBCb290c3RyYXAgdjMgYmVjYXVzZSBpdCBicmVha3MgbG90cyBvZiB0aGlyZC1wYXJ0eSB3aWRnZXRzIChpbmNsdWRpbmcgR29vZ2xlIE1hcHMpXG4vLyB3aGljaCB3ZXJlbid0IGV4cGVjdGluZyB0aGUgaW1hZ2VzIHdpdGhpbiB0aGVtc2VsdmVzIHRvIGJlIGludm9sdW50YXJpbHkgcmVzaXplZC5cbi8vIFNlZSBhbHNvIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTgxNzhcbi5pbWctZmx1aWQge1xuICBAaW5jbHVkZSBpbWctZmx1aWQoKTtcbn1cblxuXG4vLyBJbWFnZSB0aHVtYm5haWxzXG4uaW1nLXRodW1ibmFpbCB7XG4gIHBhZGRpbmc6ICR0aHVtYm5haWwtcGFkZGluZztcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRodW1ibmFpbC1iZztcbiAgYm9yZGVyOiAkdGh1bWJuYWlsLWJvcmRlci13aWR0aCBzb2xpZCAkdGh1bWJuYWlsLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkdGh1bWJuYWlsLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCR0aHVtYm5haWwtYm94LXNoYWRvdyk7XG5cbiAgLy8gS2VlcCB0aGVtIGF0IG1vc3QgMTAwJSB3aWRlXG4gIEBpbmNsdWRlIGltZy1mbHVpZCgpO1xufVxuXG4vL1xuLy8gRmlndXJlc1xuLy9cblxuLmZpZ3VyZSB7XG4gIC8vIEVuc3VyZXMgdGhlIGNhcHRpb24ncyB0ZXh0IGFsaWducyB3aXRoIHRoZSBpbWFnZS5cbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4uZmlndXJlLWltZyB7XG4gIG1hcmdpbi1ib3R0b206ICRzcGFjZXIgLyAyO1xuICBsaW5lLWhlaWdodDogMTtcbn1cblxuLmZpZ3VyZS1jYXB0aW9uIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmaWd1cmUtY2FwdGlvbi1mb250LXNpemUpO1xuICBjb2xvcjogJGZpZ3VyZS1jYXB0aW9uLWNvbG9yO1xufVxuIiwiLy8gSW1hZ2UgTWl4aW5zXG4vLyAtIFJlc3BvbnNpdmUgaW1hZ2Vcbi8vIC0gUmV0aW5hIGltYWdlXG5cblxuLy8gUmVzcG9uc2l2ZSBpbWFnZVxuLy9cbi8vIEtlZXAgaW1hZ2VzIGZyb20gc2NhbGluZyBiZXlvbmQgdGhlIHdpZHRoIG9mIHRoZWlyIHBhcmVudHMuXG5cbkBtaXhpbiBpbWctZmx1aWQoKSB7XG4gIC8vIFBhcnQgMTogU2V0IGEgbWF4aW11bSByZWxhdGl2ZSB0byB0aGUgcGFyZW50XG4gIG1heC13aWR0aDogMTAwJTtcbiAgLy8gUGFydCAyOiBPdmVycmlkZSB0aGUgaGVpZ2h0IHRvIGF1dG8sIG90aGVyd2lzZSBpbWFnZXMgd2lsbCBiZSBzdHJldGNoZWRcbiAgLy8gd2hlbiBzZXR0aW5nIGEgd2lkdGggYW5kIGhlaWdodCBhdHRyaWJ1dGUgb24gdGhlIGltZyBlbGVtZW50LlxuICBoZWlnaHQ6IGF1dG87XG59XG5cblxuLy8gUmV0aW5hIGltYWdlXG4vL1xuLy8gU2hvcnQgcmV0aW5hIG1peGluIGZvciBzZXR0aW5nIGJhY2tncm91bmQtaW1hZ2UgYW5kIC1zaXplLlxuXG5AbWl4aW4gaW1nLXJldGluYSgkZmlsZS0xeCwgJGZpbGUtMngsICR3aWR0aC0xeCwgJGhlaWdodC0xeCkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJGZpbGUtMXgpO1xuXG4gIC8vIEF1dG9wcmVmaXhlciB0YWtlcyBjYXJlIG9mIGFkZGluZyAtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW8gYW5kIC1vLW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW8sXG4gIC8vIGJ1dCBkb2Vzbid0IGNvbnZlcnQgZHBweD0+ZHBpLlxuICAvLyBUaGVyZSdzIG5vIHN1Y2ggdGhpbmcgYXMgdW5wcmVmaXhlZCBtaW4tZGV2aWNlLXBpeGVsLXJhdGlvIHNpbmNlIGl0J3Mgbm9uc3RhbmRhcmQuXG4gIC8vIENvbXBhdGliaWxpdHkgaW5mbzogaHR0cHM6Ly9jYW5pdXNlLmNvbS9jc3MtbWVkaWEtcmVzb2x1dGlvblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4tcmVzb2x1dGlvbjogMTkyZHBpKSwgLy8gSUU5LTExIGRvbid0IHN1cHBvcnQgZHBweFxuICAgIG9ubHkgc2NyZWVuIGFuZCAobWluLXJlc29sdXRpb246IDJkcHB4KSB7IC8vIFN0YW5kYXJkaXplZFxuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgkZmlsZS0yeCk7XG4gICAgYmFja2dyb3VuZC1zaXplOiAkd2lkdGgtMXggJGhlaWdodC0xeDtcbiAgfVxuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJgaW1nLXJldGluYSgpYFwiLCBcInY0LjMuMFwiLCBcInY1XCIpO1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4vLyBTaW5nbGUgc2lkZSBib3JkZXItcmFkaXVzXG5cbi8vIEhlbHBlciBmdW5jdGlvbiB0byByZXBsYWNlIG5lZ2F0aXZlIHZhbHVlcyB3aXRoIDBcbkBmdW5jdGlvbiB2YWxpZC1yYWRpdXMoJHJhZGl1cykge1xuICAkcmV0dXJuOiAoKTtcbiAgQGVhY2ggJHZhbHVlIGluICRyYWRpdXMge1xuICAgIEBpZiB0eXBlLW9mKCR2YWx1ZSkgPT0gbnVtYmVyIHtcbiAgICAgICRyZXR1cm46IGFwcGVuZCgkcmV0dXJuLCBtYXgoJHZhbHVlLCAwKSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICAkcmV0dXJuOiBhcHBlbmQoJHJldHVybiwgJHZhbHVlKTtcbiAgICB9XG4gIH1cbiAgQHJldHVybiAkcmV0dXJuO1xufVxuXG5AbWl4aW4gYm9yZGVyLXJhZGl1cygkcmFkaXVzOiAkYm9yZGVyLXJhZGl1cywgJGZhbGxiYWNrLWJvcmRlci1yYWRpdXM6IGZhbHNlKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxuICBAZWxzZSBpZiAkZmFsbGJhY2stYm9yZGVyLXJhZGl1cyAhPSBmYWxzZSB7XG4gICAgYm9yZGVyLXJhZGl1czogJGZhbGxiYWNrLWJvcmRlci1yYWRpdXM7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci10b3AtcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1yaWdodC1yYWRpdXMoJHJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1ib3R0b20tcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1sZWZ0LXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci10b3AtbGVmdC1yYWRpdXMoJHJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXMoJHJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG4iLCIvLyBJbmxpbmUgY29kZVxuY29kZSB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkY29kZS1mb250LXNpemUpO1xuICBjb2xvcjogJGNvZGUtY29sb3I7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcblxuICAvLyBTdHJlYW1saW5lIHRoZSBzdHlsZSB3aGVuIGluc2lkZSBhbmNob3JzIHRvIGF2b2lkIGJyb2tlbiB1bmRlcmxpbmUgYW5kIG1vcmVcbiAgYSA+ICYge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICB9XG59XG5cbi8vIFVzZXIgaW5wdXQgdHlwaWNhbGx5IGVudGVyZWQgdmlhIGtleWJvYXJkXG5rYmQge1xuICBwYWRkaW5nOiAka2JkLXBhZGRpbmcteSAka2JkLXBhZGRpbmcteDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRrYmQtZm9udC1zaXplKTtcbiAgY29sb3I6ICRrYmQtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRrYmQtYmc7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMtc20pO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRrYmQtYm94LXNoYWRvdyk7XG5cbiAga2JkIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgxMDAlKTtcbiAgICBmb250LXdlaWdodDogJG5lc3RlZC1rYmQtZm9udC13ZWlnaHQ7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhub25lKTtcbiAgfVxufVxuXG4vLyBCbG9ja3Mgb2YgY29kZVxucHJlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkY29kZS1mb250LXNpemUpO1xuICBjb2xvcjogJHByZS1jb2xvcjtcblxuICAvLyBBY2NvdW50IGZvciBzb21lIGNvZGUgb3V0cHV0cyB0aGF0IHBsYWNlIGNvZGUgdGFncyBpbiBwcmUgdGFnc1xuICBjb2RlIHtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoaW5oZXJpdCk7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgd29yZC1icmVhazogbm9ybWFsO1xuICB9XG59XG5cbi8vIEVuYWJsZSBzY3JvbGxhYmxlIGJsb2NrcyBvZiBjb2RlXG4ucHJlLXNjcm9sbGFibGUge1xuICBtYXgtaGVpZ2h0OiAkcHJlLXNjcm9sbGFibGUtbWF4LWhlaWdodDtcbiAgb3ZlcmZsb3cteTogc2Nyb2xsO1xufVxuIiwiLy8gQ29udGFpbmVyIHdpZHRoc1xuLy9cbi8vIFNldCB0aGUgY29udGFpbmVyIHdpZHRoLCBhbmQgb3ZlcnJpZGUgaXQgZm9yIGZpeGVkIG5hdmJhcnMgaW4gbWVkaWEgcXVlcmllcy5cblxuQGlmICRlbmFibGUtZ3JpZC1jbGFzc2VzIHtcbiAgLy8gU2luZ2xlIGNvbnRhaW5lciBjbGFzcyB3aXRoIGJyZWFrcG9pbnQgbWF4LXdpZHRoc1xuICAuY29udGFpbmVyLFxuICAvLyAxMDAlIHdpZGUgY29udGFpbmVyIGF0IGFsbCBicmVha3BvaW50c1xuICAuY29udGFpbmVyLWZsdWlkIHtcbiAgICBAaW5jbHVkZSBtYWtlLWNvbnRhaW5lcigpO1xuICB9XG5cbiAgLy8gUmVzcG9uc2l2ZSBjb250YWluZXJzIHRoYXQgYXJlIDEwMCUgd2lkZSB1bnRpbCBhIGJyZWFrcG9pbnRcbiAgQGVhY2ggJGJyZWFrcG9pbnQsICRjb250YWluZXItbWF4LXdpZHRoIGluICRjb250YWluZXItbWF4LXdpZHRocyB7XG4gICAgLmNvbnRhaW5lci0jeyRicmVha3BvaW50fSB7XG4gICAgICBAZXh0ZW5kIC5jb250YWluZXItZmx1aWQ7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgICAgICVyZXNwb25zaXZlLWNvbnRhaW5lci0jeyRicmVha3BvaW50fSB7XG4gICAgICAgIG1heC13aWR0aDogJGNvbnRhaW5lci1tYXgtd2lkdGg7XG4gICAgICB9XG5cbiAgICAgIC8vIEV4dGVuZCBlYWNoIGJyZWFrcG9pbnQgd2hpY2ggaXMgc21hbGxlciBvciBlcXVhbCB0byB0aGUgY3VycmVudCBicmVha3BvaW50XG4gICAgICAkZXh0ZW5kLWJyZWFrcG9pbnQ6IHRydWU7XG5cbiAgICAgIEBlYWNoICRuYW1lLCAkd2lkdGggaW4gJGdyaWQtYnJlYWtwb2ludHMge1xuICAgICAgICBAaWYgKCRleHRlbmQtYnJlYWtwb2ludCkge1xuICAgICAgICAgIC5jb250YWluZXIje2JyZWFrcG9pbnQtaW5maXgoJG5hbWUsICRncmlkLWJyZWFrcG9pbnRzKX0ge1xuICAgICAgICAgICAgQGV4dGVuZCAlcmVzcG9uc2l2ZS1jb250YWluZXItI3skYnJlYWtwb2ludH07XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLy8gT25jZSB0aGUgY3VycmVudCBicmVha3BvaW50IGlzIHJlYWNoZWQsIHN0b3AgZXh0ZW5kaW5nXG4gICAgICAgICAgQGlmICgkYnJlYWtwb2ludCA9PSAkbmFtZSkge1xuICAgICAgICAgICAgJGV4dGVuZC1icmVha3BvaW50OiBmYWxzZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4vLyBSb3dcbi8vXG4vLyBSb3dzIGNvbnRhaW4geW91ciBjb2x1bW5zLlxuXG5AaWYgJGVuYWJsZS1ncmlkLWNsYXNzZXMge1xuICAucm93IHtcbiAgICBAaW5jbHVkZSBtYWtlLXJvdygpO1xuICB9XG5cbiAgLy8gUmVtb3ZlIHRoZSBuZWdhdGl2ZSBtYXJnaW4gZnJvbSBkZWZhdWx0IC5yb3csIHRoZW4gdGhlIGhvcml6b250YWwgcGFkZGluZ1xuICAvLyBmcm9tIGFsbCBpbW1lZGlhdGUgY2hpbGRyZW4gY29sdW1ucyAodG8gcHJldmVudCBydW5hd2F5IHN0eWxlIGluaGVyaXRhbmNlKS5cbiAgLm5vLWd1dHRlcnMge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcblxuICAgID4gLmNvbCxcbiAgICA+IFtjbGFzcyo9XCJjb2wtXCJdIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgfVxuICB9XG59XG5cbi8vIENvbHVtbnNcbi8vXG4vLyBDb21tb24gc3R5bGVzIGZvciBzbWFsbCBhbmQgbGFyZ2UgZ3JpZCBjb2x1bW5zXG5cbkBpZiAkZW5hYmxlLWdyaWQtY2xhc3NlcyB7XG4gIEBpbmNsdWRlIG1ha2UtZ3JpZC1jb2x1bW5zKCk7XG59XG4iLCIvLy8gR3JpZCBzeXN0ZW1cbi8vXG4vLyBHZW5lcmF0ZSBzZW1hbnRpYyBncmlkIGNvbHVtbnMgd2l0aCB0aGVzZSBtaXhpbnMuXG5cbkBtaXhpbiBtYWtlLWNvbnRhaW5lcigkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctcmlnaHQ6ICRndXR0ZXIgLyAyO1xuICBwYWRkaW5nLWxlZnQ6ICRndXR0ZXIgLyAyO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xufVxuXG5AbWl4aW4gbWFrZS1yb3coJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgbWFyZ2luLXJpZ2h0OiAtJGd1dHRlciAvIDI7XG4gIG1hcmdpbi1sZWZ0OiAtJGd1dHRlciAvIDI7XG59XG5cbi8vIEZvciBlYWNoIGJyZWFrcG9pbnQsIGRlZmluZSB0aGUgbWF4aW11bSB3aWR0aCBvZiB0aGUgY29udGFpbmVyIGluIGEgbWVkaWEgcXVlcnlcbkBtaXhpbiBtYWtlLWNvbnRhaW5lci1tYXgtd2lkdGhzKCRtYXgtd2lkdGhzOiAkY29udGFpbmVyLW1heC13aWR0aHMsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGVhY2ggJGJyZWFrcG9pbnQsICRjb250YWluZXItbWF4LXdpZHRoIGluICRtYXgtd2lkdGhzIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50LCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIG1heC13aWR0aDogJGNvbnRhaW5lci1tYXgtd2lkdGg7XG4gICAgfVxuICB9XG4gIEBpbmNsdWRlIGRlcHJlY2F0ZShcIlRoZSBgbWFrZS1jb250YWluZXItbWF4LXdpZHRoc2AgbWl4aW5cIiwgXCJ2NC41LjJcIiwgXCJ2NVwiKTtcbn1cblxuQG1peGluIG1ha2UtY29sLXJlYWR5KCRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC8vIFByZXZlbnQgY29sdW1ucyBmcm9tIGJlY29taW5nIHRvbyBuYXJyb3cgd2hlbiBhdCBzbWFsbGVyIGdyaWQgdGllcnMgYnlcbiAgLy8gYWx3YXlzIHNldHRpbmcgYHdpZHRoOiAxMDAlO2AuIFRoaXMgd29ya3MgYmVjYXVzZSB3ZSB1c2UgYGZsZXhgIHZhbHVlc1xuICAvLyBsYXRlciBvbiB0byBvdmVycmlkZSB0aGlzIGluaXRpYWwgd2lkdGguXG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLXJpZ2h0OiAkZ3V0dGVyIC8gMjtcbiAgcGFkZGluZy1sZWZ0OiAkZ3V0dGVyIC8gMjtcbn1cblxuQG1peGluIG1ha2UtY29sKCRzaXplLCAkY29sdW1uczogJGdyaWQtY29sdW1ucykge1xuICBmbGV4OiAwIDAgcGVyY2VudGFnZSgkc2l6ZSAvICRjb2x1bW5zKTtcbiAgLy8gQWRkIGEgYG1heC13aWR0aGAgdG8gZW5zdXJlIGNvbnRlbnQgd2l0aGluIGVhY2ggY29sdW1uIGRvZXMgbm90IGJsb3cgb3V0XG4gIC8vIHRoZSB3aWR0aCBvZiB0aGUgY29sdW1uLiBBcHBsaWVzIHRvIElFMTArIGFuZCBGaXJlZm94LiBDaHJvbWUgYW5kIFNhZmFyaVxuICAvLyBkbyBub3QgYXBwZWFyIHRvIHJlcXVpcmUgdGhpcy5cbiAgbWF4LXdpZHRoOiBwZXJjZW50YWdlKCRzaXplIC8gJGNvbHVtbnMpO1xufVxuXG5AbWl4aW4gbWFrZS1jb2wtYXV0bygpIHtcbiAgZmxleDogMCAwIGF1dG87XG4gIHdpZHRoOiBhdXRvO1xuICBtYXgtd2lkdGg6IDEwMCU7IC8vIFJlc2V0IGVhcmxpZXIgZ3JpZCB0aWVyc1xufVxuXG5AbWl4aW4gbWFrZS1jb2wtb2Zmc2V0KCRzaXplLCAkY29sdW1uczogJGdyaWQtY29sdW1ucykge1xuICAkbnVtOiAkc2l6ZSAvICRjb2x1bW5zO1xuICBtYXJnaW4tbGVmdDogaWYoJG51bSA9PSAwLCAwLCBwZXJjZW50YWdlKCRudW0pKTtcbn1cblxuLy8gUm93IGNvbHVtbnNcbi8vXG4vLyBTcGVjaWZ5IG9uIGEgcGFyZW50IGVsZW1lbnQoZS5nLiwgLnJvdykgdG8gZm9yY2UgaW1tZWRpYXRlIGNoaWxkcmVuIGludG8gTk5cbi8vIG51bWJlcm9mIGNvbHVtbnMuIFN1cHBvcnRzIHdyYXBwaW5nIHRvIG5ldyBsaW5lcywgYnV0IGRvZXMgbm90IGRvIGEgTWFzb25yeVxuLy8gc3R5bGUgZ3JpZC5cbkBtaXhpbiByb3ctY29scygkY291bnQpIHtcbiAgPiAqIHtcbiAgICBmbGV4OiAwIDAgMTAwJSAvICRjb3VudDtcbiAgICBtYXgtd2lkdGg6IDEwMCUgLyAkY291bnQ7XG4gIH1cbn1cbiIsIi8vIEJyZWFrcG9pbnQgdmlld3BvcnQgc2l6ZXMgYW5kIG1lZGlhIHF1ZXJpZXMuXG4vL1xuLy8gQnJlYWtwb2ludHMgYXJlIGRlZmluZWQgYXMgYSBtYXAgb2YgKG5hbWU6IG1pbmltdW0gd2lkdGgpLCBvcmRlciBmcm9tIHNtYWxsIHRvIGxhcmdlOlxuLy9cbi8vICAgICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweClcbi8vXG4vLyBUaGUgbWFwIGRlZmluZWQgaW4gdGhlIGAkZ3JpZC1icmVha3BvaW50c2AgZ2xvYmFsIHZhcmlhYmxlIGlzIHVzZWQgYXMgdGhlIGAkYnJlYWtwb2ludHNgIGFyZ3VtZW50IGJ5IGRlZmF1bHQuXG5cbi8vIE5hbWUgb2YgdGhlIG5leHQgYnJlYWtwb2ludCwgb3IgbnVsbCBmb3IgdGhlIGxhc3QgYnJlYWtwb2ludC5cbi8vXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20pXG4vLyAgICBtZFxuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgbWRcbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSwgJGJyZWFrcG9pbnQtbmFtZXM6ICh4cyBzbSBtZCBsZyB4bCkpXG4vLyAgICBtZFxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbmV4dCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cywgJGJyZWFrcG9pbnQtbmFtZXM6IG1hcC1rZXlzKCRicmVha3BvaW50cykpIHtcbiAgJG46IGluZGV4KCRicmVha3BvaW50LW5hbWVzLCAkbmFtZSk7XG4gIEByZXR1cm4gaWYoJG4gIT0gbnVsbCBhbmQgJG4gPCBsZW5ndGgoJGJyZWFrcG9pbnQtbmFtZXMpLCBudGgoJGJyZWFrcG9pbnQtbmFtZXMsICRuICsgMSksIG51bGwpO1xufVxuXG4vLyBNaW5pbXVtIGJyZWFrcG9pbnQgd2lkdGguIE51bGwgZm9yIHRoZSBzbWFsbGVzdCAoZmlyc3QpIGJyZWFrcG9pbnQuXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1taW4oc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICA1NzZweFxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkbmFtZSk7XG4gIEByZXR1cm4gaWYoJG1pbiAhPSAwLCAkbWluLCBudWxsKTtcbn1cblxuLy8gTWF4aW11bSBicmVha3BvaW50IHdpZHRoLiBOdWxsIGZvciB0aGUgbGFyZ2VzdCAobGFzdCkgYnJlYWtwb2ludC5cbi8vIFRoZSBtYXhpbXVtIHZhbHVlIGlzIGNhbGN1bGF0ZWQgYXMgdGhlIG1pbmltdW0gb2YgdGhlIG5leHQgb25lIGxlc3MgMC4wMnB4XG4vLyB0byB3b3JrIGFyb3VuZCB0aGUgbGltaXRhdGlvbnMgb2YgYG1pbi1gIGFuZCBgbWF4LWAgcHJlZml4ZXMgYW5kIHZpZXdwb3J0cyB3aXRoIGZyYWN0aW9uYWwgd2lkdGhzLlxuLy8gU2VlIGh0dHBzOi8vd3d3LnczLm9yZy9UUi9tZWRpYXF1ZXJpZXMtNC8jbXEtbWluLW1heFxuLy8gVXNlcyAwLjAycHggcmF0aGVyIHRoYW4gMC4wMXB4IHRvIHdvcmsgYXJvdW5kIGEgY3VycmVudCByb3VuZGluZyBidWcgaW4gU2FmYXJpLlxuLy8gU2VlIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzgyNjFcbi8vXG4vLyAgICA+PiBicmVha3BvaW50LW1heChzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcbi8vICAgIDc2Ny45OHB4XG5AZnVuY3Rpb24gYnJlYWtwb2ludC1tYXgoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG5leHQ6IGJyZWFrcG9pbnQtbmV4dCgkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgQHJldHVybiBpZigkbmV4dCwgYnJlYWtwb2ludC1taW4oJG5leHQsICRicmVha3BvaW50cykgLSAuMDIsIG51bGwpO1xufVxuXG4vLyBSZXR1cm5zIGEgYmxhbmsgc3RyaW5nIGlmIHNtYWxsZXN0IGJyZWFrcG9pbnQsIG90aGVyd2lzZSByZXR1cm5zIHRoZSBuYW1lIHdpdGggYSBkYXNoIGluIGZyb250LlxuLy8gVXNlZnVsIGZvciBtYWtpbmcgcmVzcG9uc2l2ZSB1dGlsaXRpZXMuXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1pbmZpeCh4cywgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcbi8vICAgIFwiXCIgIChSZXR1cm5zIGEgYmxhbmsgc3RyaW5nKVxuLy8gICAgPj4gYnJlYWtwb2ludC1pbmZpeChzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcbi8vICAgIFwiLXNtXCJcbkBmdW5jdGlvbiBicmVha3BvaW50LWluZml4KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEByZXR1cm4gaWYoYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cykgPT0gbnVsbCwgXCJcIiwgXCItI3skbmFtZX1cIik7XG59XG5cbi8vIE1lZGlhIG9mIGF0IGxlYXN0IHRoZSBtaW5pbXVtIGJyZWFrcG9pbnQgd2lkdGguIE5vIHF1ZXJ5IGZvciB0aGUgc21hbGxlc3QgYnJlYWtwb2ludC5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSB0byB0aGUgZ2l2ZW4gYnJlYWtwb2ludCBhbmQgd2lkZXIuXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC11cCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgQGlmICRtaW4ge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbWluKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vIE1lZGlhIG9mIGF0IG1vc3QgdGhlIG1heGltdW0gYnJlYWtwb2ludCB3aWR0aC4gTm8gcXVlcnkgZm9yIHRoZSBsYXJnZXN0IGJyZWFrcG9pbnQuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQgYW5kIG5hcnJvd2VyLlxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWF4OiBicmVha3BvaW50LW1heCgkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgQGlmICRtYXgge1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vIE1lZGlhIHRoYXQgc3BhbnMgbXVsdGlwbGUgYnJlYWtwb2ludCB3aWR0aHMuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgYmV0d2VlbiB0aGUgbWluIGFuZCBtYXggYnJlYWtwb2ludHNcbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LWJldHdlZW4oJGxvd2VyLCAkdXBwZXIsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogYnJlYWtwb2ludC1taW4oJGxvd2VyLCAkYnJlYWtwb2ludHMpO1xuICAkbWF4OiBicmVha3BvaW50LW1heCgkdXBwZXIsICRicmVha3BvaW50cyk7XG5cbiAgQGlmICRtaW4gIT0gbnVsbCBhbmQgJG1heCAhPSBudWxsIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikgYW5kIChtYXgtd2lkdGg6ICRtYXgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWF4ID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGxvd2VyLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWluID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkdXBwZXIsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vIE1lZGlhIGJldHdlZW4gdGhlIGJyZWFrcG9pbnQncyBtaW5pbXVtIGFuZCBtYXhpbXVtIHdpZHRocy5cbi8vIE5vIG1pbmltdW0gZm9yIHRoZSBzbWFsbGVzdCBicmVha3BvaW50LCBhbmQgbm8gbWF4aW11bSBmb3IgdGhlIGxhcmdlc3Qgb25lLlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IG9ubHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQsIG5vdCB2aWV3cG9ydHMgYW55IHdpZGVyIG9yIG5hcnJvd2VyLlxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtb25seSgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJG5hbWUsICRicmVha3BvaW50cyk7XG5cbiAgQGlmICRtaW4gIT0gbnVsbCBhbmQgJG1heCAhPSBudWxsIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikgYW5kIChtYXgtd2lkdGg6ICRtYXgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWF4ID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5hbWUsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRtaW4gPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCRuYW1lLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRnJhbWV3b3JrIGdyaWQgZ2VuZXJhdGlvblxuLy9cbi8vIFVzZWQgb25seSBieSBCb290c3RyYXAgdG8gZ2VuZXJhdGUgdGhlIGNvcnJlY3QgbnVtYmVyIG9mIGdyaWQgY2xhc3NlcyBnaXZlblxuLy8gYW55IHZhbHVlIG9mIGAkZ3JpZC1jb2x1bW5zYC5cblxuQG1peGluIG1ha2UtZ3JpZC1jb2x1bW5zKCRjb2x1bW5zOiAkZ3JpZC1jb2x1bW5zLCAkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgLy8gQ29tbW9uIHByb3BlcnRpZXMgZm9yIGFsbCBicmVha3BvaW50c1xuICAlZ3JpZC1jb2x1bW4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkZ3V0dGVyIC8gMjtcbiAgICBwYWRkaW5nLWxlZnQ6ICRndXR0ZXIgLyAyO1xuICB9XG5cbiAgQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGJyZWFrcG9pbnRzKSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkYnJlYWtwb2ludHMpO1xuXG4gICAgQGlmICRjb2x1bW5zID4gMCB7XG4gICAgICAvLyBBbGxvdyBjb2x1bW5zIHRvIHN0cmV0Y2ggZnVsbCB3aWR0aCBiZWxvdyB0aGVpciBicmVha3BvaW50c1xuICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkY29sdW1ucyB7XG4gICAgICAgIC5jb2wjeyRpbmZpeH0tI3skaX0ge1xuICAgICAgICAgIEBleHRlbmQgJWdyaWQtY29sdW1uO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmNvbCN7JGluZml4fSxcbiAgICAuY29sI3skaW5maXh9LWF1dG8ge1xuICAgICAgQGV4dGVuZCAlZ3JpZC1jb2x1bW47XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICAvLyBQcm92aWRlIGJhc2ljIGAuY29sLXticH1gIGNsYXNzZXMgZm9yIGVxdWFsLXdpZHRoIGZsZXhib3ggY29sdW1uc1xuICAgICAgLmNvbCN7JGluZml4fSB7XG4gICAgICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgfVxuXG4gICAgICBAaWYgJGdyaWQtcm93LWNvbHVtbnMgPiAwIHtcbiAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1yb3ctY29sdW1ucyB7XG4gICAgICAgICAgLnJvdy1jb2xzI3skaW5maXh9LSN7JGl9IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHJvdy1jb2xzKCRpKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLmNvbCN7JGluZml4fS1hdXRvIHtcbiAgICAgICAgQGluY2x1ZGUgbWFrZS1jb2wtYXV0bygpO1xuICAgICAgfVxuXG4gICAgICBAaWYgJGNvbHVtbnMgPiAwIHtcbiAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkY29sdW1ucyB7XG4gICAgICAgICAgLmNvbCN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBtYWtlLWNvbCgkaSwgJGNvbHVtbnMpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAub3JkZXIjeyRpbmZpeH0tZmlyc3QgeyBvcmRlcjogLTE7IH1cblxuICAgICAgLm9yZGVyI3skaW5maXh9LWxhc3QgeyBvcmRlcjogJGNvbHVtbnMgKyAxOyB9XG5cbiAgICAgIEBmb3IgJGkgZnJvbSAwIHRocm91Z2ggJGNvbHVtbnMge1xuICAgICAgICAub3JkZXIjeyRpbmZpeH0tI3skaX0geyBvcmRlcjogJGk7IH1cbiAgICAgIH1cblxuICAgICAgQGlmICRjb2x1bW5zID4gMCB7XG4gICAgICAgIC8vIGAkY29sdW1ucyAtIDFgIGJlY2F1c2Ugb2Zmc2V0dGluZyBieSB0aGUgd2lkdGggb2YgYW4gZW50aXJlIHJvdyBpc24ndCBwb3NzaWJsZVxuICAgICAgICBAZm9yICRpIGZyb20gMCB0aHJvdWdoICgkY29sdW1ucyAtIDEpIHtcbiAgICAgICAgICBAaWYgbm90ICgkaW5maXggPT0gXCJcIiBhbmQgJGkgPT0gMCkgeyAvLyBBdm9pZCBlbWl0dGluZyB1c2VsZXNzIC5vZmZzZXQtMFxuICAgICAgICAgICAgLm9mZnNldCN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIG1ha2UtY29sLW9mZnNldCgkaSwgJGNvbHVtbnMpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIEJhc2ljIEJvb3RzdHJhcCB0YWJsZVxuLy9cblxuLnRhYmxlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206ICRzcGFjZXI7XG4gIGNvbG9yOiAkdGFibGUtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1iZzsgLy8gUmVzZXQgZm9yIG5lc3Rpbmcgd2l0aGluIHBhcmVudHMgd2l0aCBgYmFja2dyb3VuZC1jb2xvcmAuXG5cbiAgdGgsXG4gIHRkIHtcbiAgICBwYWRkaW5nOiAkdGFibGUtY2VsbC1wYWRkaW5nO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgYm9yZGVyLXRvcDogJHRhYmxlLWJvcmRlci13aWR0aCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgdGhlYWQgdGgge1xuICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG4gICAgYm9yZGVyLWJvdHRvbTogKDIgKiAkdGFibGUtYm9yZGVyLXdpZHRoKSBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgdGJvZHkgKyB0Ym9keSB7XG4gICAgYm9yZGVyLXRvcDogKDIgKiAkdGFibGUtYm9yZGVyLXdpZHRoKSBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICB9XG59XG5cblxuLy9cbi8vIENvbmRlbnNlZCB0YWJsZSB3LyBoYWxmIHBhZGRpbmdcbi8vXG5cbi50YWJsZS1zbSB7XG4gIHRoLFxuICB0ZCB7XG4gICAgcGFkZGluZzogJHRhYmxlLWNlbGwtcGFkZGluZy1zbTtcbiAgfVxufVxuXG5cbi8vIEJvcmRlciB2ZXJzaW9uc1xuLy9cbi8vIEFkZCBvciByZW1vdmUgYm9yZGVycyBhbGwgYXJvdW5kIHRoZSB0YWJsZSBhbmQgYmV0d2VlbiBhbGwgdGhlIGNvbHVtbnMuXG5cbi50YWJsZS1ib3JkZXJlZCB7XG4gIGJvcmRlcjogJHRhYmxlLWJvcmRlci13aWR0aCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuXG4gIHRoLFxuICB0ZCB7XG4gICAgYm9yZGVyOiAkdGFibGUtYm9yZGVyLXdpZHRoIHNvbGlkICR0YWJsZS1ib3JkZXItY29sb3I7XG4gIH1cblxuICB0aGVhZCB7XG4gICAgdGgsXG4gICAgdGQge1xuICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMiAqICR0YWJsZS1ib3JkZXItd2lkdGg7XG4gICAgfVxuICB9XG59XG5cbi50YWJsZS1ib3JkZXJsZXNzIHtcbiAgdGgsXG4gIHRkLFxuICB0aGVhZCB0aCxcbiAgdGJvZHkgKyB0Ym9keSB7XG4gICAgYm9yZGVyOiAwO1xuICB9XG59XG5cbi8vIFplYnJhLXN0cmlwaW5nXG4vL1xuLy8gRGVmYXVsdCB6ZWJyYS1zdHJpcGUgc3R5bGVzIChhbHRlcm5hdGluZyBncmF5IGFuZCB0cmFuc3BhcmVudCBiYWNrZ3JvdW5kcylcblxuLnRhYmxlLXN0cmlwZWQge1xuICB0Ym9keSB0cjpudGgtb2YtdHlwZSgjeyR0YWJsZS1zdHJpcGVkLW9yZGVyfSkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1hY2NlbnQtYmc7XG4gIH1cbn1cblxuXG4vLyBIb3ZlciBlZmZlY3Rcbi8vXG4vLyBQbGFjZWQgaGVyZSBzaW5jZSBpdCBoYXMgdG8gY29tZSBhZnRlciB0aGUgcG90ZW50aWFsIHplYnJhIHN0cmlwaW5nXG5cbi50YWJsZS1ob3ZlciB7XG4gIHRib2R5IHRyIHtcbiAgICBAaW5jbHVkZSBob3ZlcigpIHtcbiAgICAgIGNvbG9yOiAkdGFibGUtaG92ZXItY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtaG92ZXItYmc7XG4gICAgfVxuICB9XG59XG5cblxuLy8gVGFibGUgYmFja2dyb3VuZHNcbi8vXG4vLyBFeGFjdCBzZWxlY3RvcnMgYmVsb3cgcmVxdWlyZWQgdG8gb3ZlcnJpZGUgYC50YWJsZS1zdHJpcGVkYCBhbmQgcHJldmVudFxuLy8gaW5oZXJpdGFuY2UgdG8gbmVzdGVkIHRhYmxlcy5cblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIEBpbmNsdWRlIHRhYmxlLXJvdy12YXJpYW50KCRjb2xvciwgdGhlbWUtY29sb3ItbGV2ZWwoJGNvbG9yLCAkdGFibGUtYmctbGV2ZWwpLCB0aGVtZS1jb2xvci1sZXZlbCgkY29sb3IsICR0YWJsZS1ib3JkZXItbGV2ZWwpKTtcbn1cblxuQGluY2x1ZGUgdGFibGUtcm93LXZhcmlhbnQoYWN0aXZlLCAkdGFibGUtYWN0aXZlLWJnKTtcblxuXG4vLyBEYXJrIHN0eWxlc1xuLy9cbi8vIFNhbWUgdGFibGUgbWFya3VwLCBidXQgaW52ZXJ0ZWQgY29sb3Igc2NoZW1lOiBkYXJrIGJhY2tncm91bmQgYW5kIGxpZ2h0IHRleHQuXG5cbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1kdXBsaWNhdGUtc2VsZWN0b3JzXG4udGFibGUge1xuICAudGhlYWQtZGFyayB7XG4gICAgdGgge1xuICAgICAgY29sb3I6ICR0YWJsZS1kYXJrLWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWRhcmstYmc7XG4gICAgICBib3JkZXItY29sb3I6ICR0YWJsZS1kYXJrLWJvcmRlci1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAudGhlYWQtbGlnaHQge1xuICAgIHRoIHtcbiAgICAgIGNvbG9yOiAkdGFibGUtaGVhZC1jb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1oZWFkLWJnO1xuICAgICAgYm9yZGVyLWNvbG9yOiAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4udGFibGUtZGFyayB7XG4gIGNvbG9yOiAkdGFibGUtZGFyay1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWRhcmstYmc7XG5cbiAgdGgsXG4gIHRkLFxuICB0aGVhZCB0aCB7XG4gICAgYm9yZGVyLWNvbG9yOiAkdGFibGUtZGFyay1ib3JkZXItY29sb3I7XG4gIH1cblxuICAmLnRhYmxlLWJvcmRlcmVkIHtcbiAgICBib3JkZXI6IDA7XG4gIH1cblxuICAmLnRhYmxlLXN0cmlwZWQge1xuICAgIHRib2R5IHRyOm50aC1vZi10eXBlKCN7JHRhYmxlLXN0cmlwZWQtb3JkZXJ9KSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtZGFyay1hY2NlbnQtYmc7XG4gICAgfVxuICB9XG5cbiAgJi50YWJsZS1ob3ZlciB7XG4gICAgdGJvZHkgdHIge1xuICAgICAgQGluY2x1ZGUgaG92ZXIoKSB7XG4gICAgICAgIGNvbG9yOiAkdGFibGUtZGFyay1ob3Zlci1jb2xvcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWRhcmstaG92ZXItYmc7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLy8gUmVzcG9uc2l2ZSB0YWJsZXNcbi8vXG4vLyBHZW5lcmF0ZSBzZXJpZXMgb2YgYC50YWJsZS1yZXNwb25zaXZlLSpgIGNsYXNzZXMgZm9yIGNvbmZpZ3VyaW5nIHRoZSBzY3JlZW5cbi8vIHNpemUgb2Ygd2hlcmUgeW91ciB0YWJsZSB3aWxsIG92ZXJmbG93LlxuXG4udGFibGUtcmVzcG9uc2l2ZSB7XG4gIEBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICAgJG5leHQ6IGJyZWFrcG9pbnQtbmV4dCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkbmV4dCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgJiN7JGluZml4fSB7XG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJGJyZWFrcG9pbnQpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgICAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG5cbiAgICAgICAgLy8gUHJldmVudCBkb3VibGUgYm9yZGVyIG9uIGhvcml6b250YWwgc2Nyb2xsIGR1ZSB0byB1c2Ugb2YgYGRpc3BsYXk6IGJsb2NrO2BcbiAgICAgICAgPiAudGFibGUtYm9yZGVyZWQge1xuICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gVGFibGVzXG5cbkBtaXhpbiB0YWJsZS1yb3ctdmFyaWFudCgkc3RhdGUsICRiYWNrZ3JvdW5kLCAkYm9yZGVyOiBudWxsKSB7XG4gIC8vIEV4YWN0IHNlbGVjdG9ycyBiZWxvdyByZXF1aXJlZCB0byBvdmVycmlkZSBgLnRhYmxlLXN0cmlwZWRgIGFuZCBwcmV2ZW50XG4gIC8vIGluaGVyaXRhbmNlIHRvIG5lc3RlZCB0YWJsZXMuXG4gIC50YWJsZS0jeyRzdGF0ZX0ge1xuICAgICYsXG4gICAgPiB0aCxcbiAgICA+IHRkIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIH1cblxuICAgIEBpZiAkYm9yZGVyICE9IG51bGwge1xuICAgICAgdGgsXG4gICAgICB0ZCxcbiAgICAgIHRoZWFkIHRoLFxuICAgICAgdGJvZHkgKyB0Ym9keSB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGJvcmRlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBIb3ZlciBzdGF0ZXMgZm9yIGAudGFibGUtaG92ZXJgXG4gIC8vIE5vdGU6IHRoaXMgaXMgbm90IGF2YWlsYWJsZSBmb3IgY2VsbHMgb3Igcm93cyB3aXRoaW4gYHRoZWFkYCBvciBgdGZvb3RgLlxuICAudGFibGUtaG92ZXIge1xuICAgICRob3Zlci1iYWNrZ3JvdW5kOiBkYXJrZW4oJGJhY2tncm91bmQsIDUlKTtcblxuICAgIC50YWJsZS0jeyRzdGF0ZX0ge1xuICAgICAgQGluY2x1ZGUgaG92ZXIoKSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRob3Zlci1iYWNrZ3JvdW5kO1xuXG4gICAgICAgID4gdGQsXG4gICAgICAgID4gdGgge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRob3Zlci1iYWNrZ3JvdW5kO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBCb290c3RyYXAgZnVuY3Rpb25zXG4vL1xuLy8gVXRpbGl0eSBtaXhpbnMgYW5kIGZ1bmN0aW9ucyBmb3IgZXZhbHVhdGluZyBzb3VyY2UgY29kZSBhY3Jvc3Mgb3VyIHZhcmlhYmxlcywgbWFwcywgYW5kIG1peGlucy5cblxuLy8gQXNjZW5kaW5nXG4vLyBVc2VkIHRvIGV2YWx1YXRlIFNhc3MgbWFwcyBsaWtlIG91ciBncmlkIGJyZWFrcG9pbnRzLlxuQG1peGluIF9hc3NlcnQtYXNjZW5kaW5nKCRtYXAsICRtYXAtbmFtZSkge1xuICAkcHJldi1rZXk6IG51bGw7XG4gICRwcmV2LW51bTogbnVsbDtcbiAgQGVhY2ggJGtleSwgJG51bSBpbiAkbWFwIHtcbiAgICBAaWYgJHByZXYtbnVtID09IG51bGwgb3IgdW5pdCgkbnVtKSA9PSBcIiVcIiBvciB1bml0KCRwcmV2LW51bSkgPT0gXCIlXCIge1xuICAgICAgLy8gRG8gbm90aGluZ1xuICAgIH0gQGVsc2UgaWYgbm90IGNvbXBhcmFibGUoJHByZXYtbnVtLCAkbnVtKSB7XG4gICAgICBAd2FybiBcIlBvdGVudGlhbGx5IGludmFsaWQgdmFsdWUgZm9yICN7JG1hcC1uYW1lfTogVGhpcyBtYXAgbXVzdCBiZSBpbiBhc2NlbmRpbmcgb3JkZXIsIGJ1dCBrZXkgJyN7JGtleX0nIGhhcyB2YWx1ZSAjeyRudW19IHdob3NlIHVuaXQgbWFrZXMgaXQgaW5jb21wYXJhYmxlIHRvICN7JHByZXYtbnVtfSwgdGhlIHZhbHVlIG9mIHRoZSBwcmV2aW91cyBrZXkgJyN7JHByZXYta2V5fScgIVwiO1xuICAgIH0gQGVsc2UgaWYgJHByZXYtbnVtID49ICRudW0ge1xuICAgICAgQHdhcm4gXCJJbnZhbGlkIHZhbHVlIGZvciAjeyRtYXAtbmFtZX06IFRoaXMgbWFwIG11c3QgYmUgaW4gYXNjZW5kaW5nIG9yZGVyLCBidXQga2V5ICcjeyRrZXl9JyBoYXMgdmFsdWUgI3skbnVtfSB3aGljaCBpc24ndCBncmVhdGVyIHRoYW4gI3skcHJldi1udW19LCB0aGUgdmFsdWUgb2YgdGhlIHByZXZpb3VzIGtleSAnI3skcHJldi1rZXl9JyAhXCI7XG4gICAgfVxuICAgICRwcmV2LWtleTogJGtleTtcbiAgICAkcHJldi1udW06ICRudW07XG4gIH1cbn1cblxuLy8gU3RhcnRzIGF0IHplcm9cbi8vIFVzZWQgdG8gZW5zdXJlIHRoZSBtaW4td2lkdGggb2YgdGhlIGxvd2VzdCBicmVha3BvaW50IHN0YXJ0cyBhdCAwLlxuQG1peGluIF9hc3NlcnQtc3RhcnRzLWF0LXplcm8oJG1hcCwgJG1hcC1uYW1lOiBcIiRncmlkLWJyZWFrcG9pbnRzXCIpIHtcbiAgQGlmIGxlbmd0aCgkbWFwKSA+IDAge1xuICAgICR2YWx1ZXM6IG1hcC12YWx1ZXMoJG1hcCk7XG4gICAgJGZpcnN0LXZhbHVlOiBudGgoJHZhbHVlcywgMSk7XG4gICAgQGlmICRmaXJzdC12YWx1ZSAhPSAwIHtcbiAgICAgIEB3YXJuIFwiRmlyc3QgYnJlYWtwb2ludCBpbiAjeyRtYXAtbmFtZX0gbXVzdCBzdGFydCBhdCAwLCBidXQgc3RhcnRzIGF0ICN7JGZpcnN0LXZhbHVlfS5cIjtcbiAgICB9XG4gIH1cbn1cblxuLy8gUmVwbGFjZSBgJHNlYXJjaGAgd2l0aCBgJHJlcGxhY2VgIGluIGAkc3RyaW5nYFxuLy8gVXNlZCBvbiBvdXIgU1ZHIGljb24gYmFja2dyb3VuZHMgZm9yIGN1c3RvbSBmb3Jtcy5cbi8vXG4vLyBAYXV0aG9yIEh1Z28gR2lyYXVkZWxcbi8vIEBwYXJhbSB7U3RyaW5nfSAkc3RyaW5nIC0gSW5pdGlhbCBzdHJpbmdcbi8vIEBwYXJhbSB7U3RyaW5nfSAkc2VhcmNoIC0gU3Vic3RyaW5nIHRvIHJlcGxhY2Vcbi8vIEBwYXJhbSB7U3RyaW5nfSAkcmVwbGFjZSAoJycpIC0gTmV3IHZhbHVlXG4vLyBAcmV0dXJuIHtTdHJpbmd9IC0gVXBkYXRlZCBzdHJpbmdcbkBmdW5jdGlvbiBzdHItcmVwbGFjZSgkc3RyaW5nLCAkc2VhcmNoLCAkcmVwbGFjZTogXCJcIikge1xuICAkaW5kZXg6IHN0ci1pbmRleCgkc3RyaW5nLCAkc2VhcmNoKTtcblxuICBAaWYgJGluZGV4IHtcbiAgICBAcmV0dXJuIHN0ci1zbGljZSgkc3RyaW5nLCAxLCAkaW5kZXggLSAxKSArICRyZXBsYWNlICsgc3RyLXJlcGxhY2Uoc3RyLXNsaWNlKCRzdHJpbmcsICRpbmRleCArIHN0ci1sZW5ndGgoJHNlYXJjaCkpLCAkc2VhcmNoLCAkcmVwbGFjZSk7XG4gIH1cblxuICBAcmV0dXJuICRzdHJpbmc7XG59XG5cbi8vIFNlZSBodHRwczovL2NvZGVwZW4uaW8va2V2aW53ZWJlci9wZW4vZFhXb1J3XG4vL1xuLy8gUmVxdWlyZXMgdGhlIHVzZSBvZiBxdW90ZXMgYXJvdW5kIGRhdGEgVVJJcy5cblxuQGZ1bmN0aW9uIGVzY2FwZS1zdmcoJHN0cmluZykge1xuICBAaWYgc3RyLWluZGV4KCRzdHJpbmcsIFwiZGF0YTppbWFnZS9zdmcreG1sXCIpIHtcbiAgICBAZWFjaCAkY2hhciwgJGVuY29kZWQgaW4gJGVzY2FwZWQtY2hhcmFjdGVycyB7XG4gICAgICAvLyBEbyBub3QgZXNjYXBlIHRoZSB1cmwgYnJhY2tldHNcbiAgICAgIEBpZiBzdHItaW5kZXgoJHN0cmluZywgXCJ1cmwoXCIpID09IDEge1xuICAgICAgICAkc3RyaW5nOiB1cmwoXCIje3N0ci1yZXBsYWNlKHN0ci1zbGljZSgkc3RyaW5nLCA2LCAtMyksICRjaGFyLCAkZW5jb2RlZCl9XCIpO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgICRzdHJpbmc6IHN0ci1yZXBsYWNlKCRzdHJpbmcsICRjaGFyLCAkZW5jb2RlZCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAkc3RyaW5nO1xufVxuXG4vLyBDb2xvciBjb250cmFzdFxuQGZ1bmN0aW9uIGNvbG9yLXlpcSgkY29sb3IsICRkYXJrOiAkeWlxLXRleHQtZGFyaywgJGxpZ2h0OiAkeWlxLXRleHQtbGlnaHQpIHtcbiAgJHI6IHJlZCgkY29sb3IpO1xuICAkZzogZ3JlZW4oJGNvbG9yKTtcbiAgJGI6IGJsdWUoJGNvbG9yKTtcblxuICAkeWlxOiAoKCRyICogMjk5KSArICgkZyAqIDU4NykgKyAoJGIgKiAxMTQpKSAvIDEwMDA7XG5cbiAgQGlmICgkeWlxID49ICR5aXEtY29udHJhc3RlZC10aHJlc2hvbGQpIHtcbiAgICBAcmV0dXJuICRkYXJrO1xuICB9IEBlbHNlIHtcbiAgICBAcmV0dXJuICRsaWdodDtcbiAgfVxufVxuXG4vLyBSZXRyaWV2ZSBjb2xvciBTYXNzIG1hcHNcbkBmdW5jdGlvbiBjb2xvcigka2V5OiBcImJsdWVcIikge1xuICBAcmV0dXJuIG1hcC1nZXQoJGNvbG9ycywgJGtleSk7XG59XG5cbkBmdW5jdGlvbiB0aGVtZS1jb2xvcigka2V5OiBcInByaW1hcnlcIikge1xuICBAcmV0dXJuIG1hcC1nZXQoJHRoZW1lLWNvbG9ycywgJGtleSk7XG59XG5cbkBmdW5jdGlvbiBncmF5KCRrZXk6IFwiMTAwXCIpIHtcbiAgQHJldHVybiBtYXAtZ2V0KCRncmF5cywgJGtleSk7XG59XG5cbi8vIFJlcXVlc3QgYSB0aGVtZSBjb2xvciBsZXZlbFxuQGZ1bmN0aW9uIHRoZW1lLWNvbG9yLWxldmVsKCRjb2xvci1uYW1lOiBcInByaW1hcnlcIiwgJGxldmVsOiAwKSB7XG4gICRjb2xvcjogdGhlbWUtY29sb3IoJGNvbG9yLW5hbWUpO1xuICAkY29sb3ItYmFzZTogaWYoJGxldmVsID4gMCwgJGJsYWNrLCAkd2hpdGUpO1xuICAkbGV2ZWw6IGFicygkbGV2ZWwpO1xuXG4gIEByZXR1cm4gbWl4KCRjb2xvci1iYXNlLCAkY29sb3IsICRsZXZlbCAqICR0aGVtZS1jb2xvci1pbnRlcnZhbCk7XG59XG5cbi8vIFJldHVybiB2YWxpZCBjYWxjXG5AZnVuY3Rpb24gYWRkKCR2YWx1ZTEsICR2YWx1ZTIsICRyZXR1cm4tY2FsYzogdHJ1ZSkge1xuICBAaWYgJHZhbHVlMSA9PSBudWxsIHtcbiAgICBAcmV0dXJuICR2YWx1ZTI7XG4gIH1cblxuICBAaWYgJHZhbHVlMiA9PSBudWxsIHtcbiAgICBAcmV0dXJuICR2YWx1ZTE7XG4gIH1cblxuICBAaWYgdHlwZS1vZigkdmFsdWUxKSA9PSBudW1iZXIgYW5kIHR5cGUtb2YoJHZhbHVlMikgPT0gbnVtYmVyIGFuZCBjb21wYXJhYmxlKCR2YWx1ZTEsICR2YWx1ZTIpIHtcbiAgICBAcmV0dXJuICR2YWx1ZTEgKyAkdmFsdWUyO1xuICB9XG5cbiAgQHJldHVybiBpZigkcmV0dXJuLWNhbGMgPT0gdHJ1ZSwgY2FsYygjeyR2YWx1ZTF9ICsgI3skdmFsdWUyfSksICR2YWx1ZTEgKyB1bnF1b3RlKFwiICsgXCIpICsgJHZhbHVlMik7XG59XG5cbkBmdW5jdGlvbiBzdWJ0cmFjdCgkdmFsdWUxLCAkdmFsdWUyLCAkcmV0dXJuLWNhbGM6IHRydWUpIHtcbiAgQGlmICR2YWx1ZTEgPT0gbnVsbCBhbmQgJHZhbHVlMiA9PSBudWxsIHtcbiAgICBAcmV0dXJuIG51bGw7XG4gIH1cblxuICBAaWYgJHZhbHVlMSA9PSBudWxsIHtcbiAgICBAcmV0dXJuIC0kdmFsdWUyO1xuICB9XG5cbiAgQGlmICR2YWx1ZTIgPT0gbnVsbCB7XG4gICAgQHJldHVybiAkdmFsdWUxO1xuICB9XG5cbiAgQGlmIHR5cGUtb2YoJHZhbHVlMSkgPT0gbnVtYmVyIGFuZCB0eXBlLW9mKCR2YWx1ZTIpID09IG51bWJlciBhbmQgY29tcGFyYWJsZSgkdmFsdWUxLCAkdmFsdWUyKSB7XG4gICAgQHJldHVybiAkdmFsdWUxIC0gJHZhbHVlMjtcbiAgfVxuXG4gIEByZXR1cm4gaWYoJHJldHVybi1jYWxjID09IHRydWUsIGNhbGMoI3skdmFsdWUxfSAtICN7JHZhbHVlMn0pLCAkdmFsdWUxICsgdW5xdW90ZShcIiAtIFwiKSArICR2YWx1ZTIpO1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG5cbi8vXG4vLyBUZXh0dWFsIGZvcm0gY29udHJvbHNcbi8vXG5cbi5mb3JtLWNvbnRyb2wge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogJGlucHV0LWhlaWdodDtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteSAkaW5wdXQtcGFkZGluZy14O1xuICBmb250LWZhbWlseTogJGlucHV0LWZvbnQtZmFtaWx5O1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkaW5wdXQtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaW5wdXQtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iZztcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiAkaW5wdXQtYm9yZGVyLXdpZHRoIHNvbGlkICRpbnB1dC1ib3JkZXItY29sb3I7XG5cbiAgLy8gTm90ZTogVGhpcyBoYXMgbm8gZWZmZWN0IG9uIDxzZWxlY3Q+cyBpbiBzb21lIGJyb3dzZXJzLCBkdWUgdG8gdGhlIGxpbWl0ZWQgc3R5bGFiaWxpdHkgb2YgYDxzZWxlY3Q+YHMgaW4gQ1NTLlxuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzLCAwKTtcblxuICBAaW5jbHVkZSBib3gtc2hhZG93KCRpbnB1dC1ib3gtc2hhZG93KTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkaW5wdXQtdHJhbnNpdGlvbik7XG5cbiAgLy8gVW5zdHlsZSB0aGUgY2FyZXQgb24gYDxzZWxlY3Q+YHMgaW4gSUUxMCsuXG4gICY6Oi1tcy1leHBhbmQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogMDtcbiAgfVxuXG4gIC8vIFJlbW92ZSBzZWxlY3Qgb3V0bGluZSBmcm9tIHNlbGVjdCBib3ggaW4gRkZcbiAgJjotbW96LWZvY3VzcmluZyB7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHRleHQtc2hhZG93OiAwIDAgMCAkaW5wdXQtY29sb3I7XG4gIH1cblxuICAvLyBDdXN0b21pemUgdGhlIGA6Zm9jdXNgIHN0YXRlIHRvIGltaXRhdGUgbmF0aXZlIFdlYktpdCBzdHlsZXMuXG4gIEBpbmNsdWRlIGZvcm0tY29udHJvbC1mb2N1cygkaWdub3JlLXdhcm5pbmc6IHRydWUpO1xuXG4gIC8vIFBsYWNlaG9sZGVyXG4gICY6OnBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yO1xuICAgIC8vIE92ZXJyaWRlIEZpcmVmb3gncyB1bnVzdWFsIGRlZmF1bHQgb3BhY2l0eTsgc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzExNTI2LlxuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAvLyBEaXNhYmxlZCBhbmQgcmVhZC1vbmx5IGlucHV0c1xuICAvL1xuICAvLyBIVE1MNSBzYXlzIHRoYXQgY29udHJvbHMgdW5kZXIgYSBmaWVsZHNldCA+IGxlZ2VuZDpmaXJzdC1jaGlsZCB3b24ndCBiZVxuICAvLyBkaXNhYmxlZCBpZiB0aGUgZmllbGRzZXQgaXMgZGlzYWJsZWQuIER1ZSB0byBpbXBsZW1lbnRhdGlvbiBkaWZmaWN1bHR5LCB3ZVxuICAvLyBkb24ndCBob25vciB0aGF0IGVkZ2UgY2FzZTsgd2Ugc3R5bGUgdGhlbSBhcyBkaXNhYmxlZCBhbnl3YXkuXG4gICY6ZGlzYWJsZWQsXG4gICZbcmVhZG9ubHldIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtZGlzYWJsZWQtYmc7XG4gICAgLy8gaU9TIGZpeCBmb3IgdW5yZWFkYWJsZSBkaXNhYmxlZCBjb250ZW50OyBzZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMTY1NS5cbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbmlucHV0W3R5cGU9XCJkYXRlXCJdLFxuaW5wdXRbdHlwZT1cInRpbWVcIl0sXG5pbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl0sXG5pbnB1dFt0eXBlPVwibW9udGhcIl0ge1xuICAmLmZvcm0tY29udHJvbCB7XG4gICAgYXBwZWFyYW5jZTogbm9uZTsgLy8gRml4IGFwcGVhcmFuY2UgZm9yIGRhdGUgaW5wdXRzIGluIFNhZmFyaVxuICB9XG59XG5cbnNlbGVjdC5mb3JtLWNvbnRyb2wge1xuICAmOmZvY3VzOjotbXMtdmFsdWUge1xuICAgIC8vIFN1cHByZXNzIHRoZSBuZXN0ZWQgZGVmYXVsdCB3aGl0ZSB0ZXh0IG9uIGJsdWUgYmFja2dyb3VuZCBoaWdobGlnaHQgZ2l2ZW4gdG9cbiAgICAvLyB0aGUgc2VsZWN0ZWQgb3B0aW9uIHRleHQgd2hlbiB0aGUgKHN0aWxsIGNsb3NlZCkgPHNlbGVjdD4gcmVjZWl2ZXMgZm9jdXNcbiAgICAvLyBpbiBJRSBhbmQgKHVuZGVyIGNlcnRhaW4gY29uZGl0aW9ucykgRWRnZSwgYXMgaXQgbG9va3MgYmFkIGFuZCBjYW5ub3QgYmUgbWFkZSB0b1xuICAgIC8vIG1hdGNoIHRoZSBhcHBlYXJhbmNlIG9mIHRoZSBuYXRpdmUgd2lkZ2V0LlxuICAgIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE5Mzk4LlxuICAgIGNvbG9yOiAkaW5wdXQtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJnO1xuICB9XG59XG5cbi8vIE1ha2UgZmlsZSBpbnB1dHMgYmV0dGVyIG1hdGNoIHRleHQgaW5wdXRzIGJ5IGZvcmNpbmcgdGhlbSB0byBuZXcgbGluZXMuXG4uZm9ybS1jb250cm9sLWZpbGUsXG4uZm9ybS1jb250cm9sLXJhbmdlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG5cbi8vXG4vLyBMYWJlbHNcbi8vXG5cbi8vIEZvciB1c2Ugd2l0aCBob3Jpem9udGFsIGFuZCBpbmxpbmUgZm9ybXMsIHdoZW4geW91IG5lZWQgdGhlIGxhYmVsIChvciBsZWdlbmQpXG4vLyB0ZXh0IHRvIGFsaWduIHdpdGggdGhlIGZvcm0gY29udHJvbHMuXG4uY29sLWZvcm0tbGFiZWwge1xuICBwYWRkaW5nLXRvcDogYWRkKCRpbnB1dC1wYWRkaW5nLXksICRpbnB1dC1ib3JkZXItd2lkdGgpO1xuICBwYWRkaW5nLWJvdHRvbTogYWRkKCRpbnB1dC1wYWRkaW5nLXksICRpbnB1dC1ib3JkZXItd2lkdGgpO1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBPdmVycmlkZSB0aGUgYDxsYWJlbD4vPGxlZ2VuZD5gIGRlZmF1bHRcbiAgQGluY2x1ZGUgZm9udC1zaXplKGluaGVyaXQpOyAvLyBPdmVycmlkZSB0aGUgYDxsZWdlbmQ+YCBkZWZhdWx0XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG59XG5cbi5jb2wtZm9ybS1sYWJlbC1sZyB7XG4gIHBhZGRpbmctdG9wOiBhZGQoJGlucHV0LXBhZGRpbmcteS1sZywgJGlucHV0LWJvcmRlci13aWR0aCk7XG4gIHBhZGRpbmctYm90dG9tOiBhZGQoJGlucHV0LXBhZGRpbmcteS1sZywgJGlucHV0LWJvcmRlci13aWR0aCk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplLWxnKTtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodC1sZztcbn1cblxuLmNvbC1mb3JtLWxhYmVsLXNtIHtcbiAgcGFkZGluZy10b3A6IGFkZCgkaW5wdXQtcGFkZGluZy15LXNtLCAkaW5wdXQtYm9yZGVyLXdpZHRoKTtcbiAgcGFkZGluZy1ib3R0b206IGFkZCgkaW5wdXQtcGFkZGluZy15LXNtLCAkaW5wdXQtYm9yZGVyLXdpZHRoKTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUtc20pO1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0LXNtO1xufVxuXG5cbi8vIFJlYWRvbmx5IGNvbnRyb2xzIGFzIHBsYWluIHRleHRcbi8vXG4vLyBBcHBseSBjbGFzcyB0byBhIHJlYWRvbmx5IGlucHV0IHRvIG1ha2UgaXQgYXBwZWFyIGxpa2UgcmVndWxhciBwbGFpblxuLy8gdGV4dCAod2l0aG91dCBhbnkgYm9yZGVyLCBiYWNrZ3JvdW5kIGNvbG9yLCBmb2N1cyBpbmRpY2F0b3IpXG5cbi5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIG1hdGNoIGlucHV0cyBpZiB0aGlzIGNsYXNzIGNvbWVzIG9uIGlucHV0cyB3aXRoIGRlZmF1bHQgbWFyZ2luc1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZSk7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaW5wdXQtcGxhaW50ZXh0LWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXdpZHRoOiAkaW5wdXQtYm9yZGVyLXdpZHRoIDA7XG5cbiAgJi5mb3JtLWNvbnRyb2wtc20sXG4gICYuZm9ybS1jb250cm9sLWxnIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxufVxuXG5cbi8vIEZvcm0gY29udHJvbCBzaXppbmdcbi8vXG4vLyBCdWlsZCBvbiBgLmZvcm0tY29udHJvbGAgd2l0aCBtb2RpZmllciBjbGFzc2VzIHRvIGRlY3JlYXNlIG9yIGluY3JlYXNlIHRoZVxuLy8gaGVpZ2h0IGFuZCBmb250LXNpemUgb2YgZm9ybSBjb250cm9scy5cbi8vXG4vLyBSZXBlYXRlZCBpbiBgX2lucHV0X2dyb3VwLnNjc3NgIHRvIGF2b2lkIFNhc3MgZXh0ZW5kIGlzc3Vlcy5cblxuLmZvcm0tY29udHJvbC1zbSB7XG4gIGhlaWdodDogJGlucHV0LWhlaWdodC1zbTtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteS1zbSAkaW5wdXQtcGFkZGluZy14LXNtO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZS1zbSk7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQtc207XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMtc20pO1xufVxuXG4uZm9ybS1jb250cm9sLWxnIHtcbiAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWxnO1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15LWxnICRpbnB1dC1wYWRkaW5nLXgtbGc7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplLWxnKTtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodC1sZztcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cy1sZyk7XG59XG5cbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1kdXBsaWNhdGUtc2VsZWN0b3JzXG5zZWxlY3QuZm9ybS1jb250cm9sIHtcbiAgJltzaXplXSxcbiAgJlttdWx0aXBsZV0ge1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxufVxuXG50ZXh0YXJlYS5mb3JtLWNvbnRyb2wge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi8vIEZvcm0gZ3JvdXBzXG4vL1xuLy8gRGVzaWduZWQgdG8gaGVscCB3aXRoIHRoZSBvcmdhbml6YXRpb24gYW5kIHNwYWNpbmcgb2YgdmVydGljYWwgZm9ybXMuIEZvclxuLy8gaG9yaXpvbnRhbCBmb3JtcywgdXNlIHRoZSBwcmVkZWZpbmVkIGdyaWQgY2xhc3Nlcy5cblxuLmZvcm0tZ3JvdXAge1xuICBtYXJnaW4tYm90dG9tOiAkZm9ybS1ncm91cC1tYXJnaW4tYm90dG9tO1xufVxuXG4uZm9ybS10ZXh0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi10b3A6ICRmb3JtLXRleHQtbWFyZ2luLXRvcDtcbn1cblxuXG4vLyBGb3JtIGdyaWRcbi8vXG4vLyBTcGVjaWFsIHJlcGxhY2VtZW50IGZvciBvdXIgZ3JpZCBzeXN0ZW0ncyBgLnJvd2AgZm9yIHRpZ2h0ZXIgZm9ybSBsYXlvdXRzLlxuXG4uZm9ybS1yb3cge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIG1hcmdpbi1yaWdodDogLSRmb3JtLWdyaWQtZ3V0dGVyLXdpZHRoIC8gMjtcbiAgbWFyZ2luLWxlZnQ6IC0kZm9ybS1ncmlkLWd1dHRlci13aWR0aCAvIDI7XG5cbiAgPiAuY29sLFxuICA+IFtjbGFzcyo9XCJjb2wtXCJdIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkZm9ybS1ncmlkLWd1dHRlci13aWR0aCAvIDI7XG4gICAgcGFkZGluZy1sZWZ0OiAkZm9ybS1ncmlkLWd1dHRlci13aWR0aCAvIDI7XG4gIH1cbn1cblxuXG4vLyBDaGVja2JveGVzIGFuZCByYWRpb3Ncbi8vXG4vLyBJbmRlbnQgdGhlIGxhYmVscyB0byBwb3NpdGlvbiByYWRpb3MvY2hlY2tib3hlcyBhcyBoYW5naW5nIGNvbnRyb2xzLlxuXG4uZm9ybS1jaGVjayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmctbGVmdDogJGZvcm0tY2hlY2staW5wdXQtZ3V0dGVyO1xufVxuXG4uZm9ybS1jaGVjay1pbnB1dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbWFyZ2luLXRvcDogJGZvcm0tY2hlY2staW5wdXQtbWFyZ2luLXk7XG4gIG1hcmdpbi1sZWZ0OiAtJGZvcm0tY2hlY2staW5wdXQtZ3V0dGVyO1xuXG4gIC8vIFVzZSBbZGlzYWJsZWRdIGFuZCA6ZGlzYWJsZWQgZm9yIHdvcmthcm91bmQgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yODI0N1xuICAmW2Rpc2FibGVkXSB+IC5mb3JtLWNoZWNrLWxhYmVsLFxuICAmOmRpc2FibGVkIH4gLmZvcm0tY2hlY2stbGFiZWwge1xuICAgIGNvbG9yOiAkdGV4dC1tdXRlZDtcbiAgfVxufVxuXG4uZm9ybS1jaGVjay1sYWJlbCB7XG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIE92ZXJyaWRlIGRlZmF1bHQgYDxsYWJlbD5gIGJvdHRvbSBtYXJnaW5cbn1cblxuLmZvcm0tY2hlY2staW5saW5lIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmctbGVmdDogMDsgLy8gT3ZlcnJpZGUgYmFzZSAuZm9ybS1jaGVja1xuICBtYXJnaW4tcmlnaHQ6ICRmb3JtLWNoZWNrLWlubGluZS1tYXJnaW4teDtcblxuICAvLyBVbmRvIC5mb3JtLWNoZWNrLWlucHV0IGRlZmF1bHRzIGFuZCBhZGQgc29tZSBgbWFyZ2luLXJpZ2h0YC5cbiAgLmZvcm0tY2hlY2staW5wdXQge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6ICRmb3JtLWNoZWNrLWlubGluZS1pbnB1dC1tYXJnaW4teDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxufVxuXG5cbi8vIEZvcm0gdmFsaWRhdGlvblxuLy9cbi8vIFByb3ZpZGUgZmVlZGJhY2sgdG8gdXNlcnMgd2hlbiBmb3JtIGZpZWxkIHZhbHVlcyBhcmUgdmFsaWQgb3IgaW52YWxpZC4gV29ya3Ncbi8vIHByaW1hcmlseSBmb3IgY2xpZW50LXNpZGUgdmFsaWRhdGlvbiB2aWEgc2NvcGVkIGA6aW52YWxpZGAgYW5kIGA6dmFsaWRgXG4vLyBwc2V1ZG8tY2xhc3NlcyBidXQgYWxzbyBpbmNsdWRlcyBgLmlzLWludmFsaWRgIGFuZCBgLmlzLXZhbGlkYCBjbGFzc2VzIGZvclxuLy8gc2VydmVyIHNpZGUgdmFsaWRhdGlvbi5cblxuQGVhY2ggJHN0YXRlLCAkZGF0YSBpbiAkZm9ybS12YWxpZGF0aW9uLXN0YXRlcyB7XG4gIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZSgkc3RhdGUsIG1hcC1nZXQoJGRhdGEsIGNvbG9yKSwgbWFwLWdldCgkZGF0YSwgaWNvbikpO1xufVxuXG4vLyBJbmxpbmUgZm9ybXNcbi8vXG4vLyBNYWtlIGZvcm1zIGFwcGVhciBpbmxpbmUoLWJsb2NrKSBieSBhZGRpbmcgdGhlIGAuZm9ybS1pbmxpbmVgIGNsYXNzLiBJbmxpbmVcbi8vIGZvcm1zIGJlZ2luIHN0YWNrZWQgb24gZXh0cmEgc21hbGwgKG1vYmlsZSkgZGV2aWNlcyBhbmQgdGhlbiBnbyBpbmxpbmUgd2hlblxuLy8gdmlld3BvcnRzIHJlYWNoIDw3NjhweC5cbi8vXG4vLyBSZXF1aXJlcyB3cmFwcGluZyBpbnB1dHMgYW5kIGxhYmVscyB3aXRoIGAuZm9ybS1ncm91cGAgZm9yIHByb3BlciBkaXNwbGF5IG9mXG4vLyBkZWZhdWx0IEhUTUwgZm9ybSBjb250cm9scyBhbmQgb3VyIGN1c3RvbSBmb3JtIGNvbnRyb2xzIChlLmcuLCBpbnB1dCBncm91cHMpLlxuXG4uZm9ybS1pbmxpbmUge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICBhbGlnbi1pdGVtczogY2VudGVyOyAvLyBQcmV2ZW50IHNob3J0ZXIgZWxlbWVudHMgZnJvbSBncm93aW5nIHRvIHNhbWUgaGVpZ2h0IGFzIG90aGVycyAoZS5nLiwgc21hbGwgYnV0dG9ucyBncm93aW5nIHRvIG5vcm1hbCBzaXplZCBidXR0b24gaGVpZ2h0KVxuXG4gIC8vIEJlY2F1c2Ugd2UgdXNlIGZsZXgsIHRoZSBpbml0aWFsIHNpemluZyBvZiBjaGVja2JveGVzIGlzIGNvbGxhcHNlZCBhbmRcbiAgLy8gZG9lc24ndCBvY2N1cHkgdGhlIGZ1bGwtd2lkdGggKHdoaWNoIGlzIHdoYXQgd2Ugd2FudCBmb3IgeHMgZ3JpZCB0aWVyKSxcbiAgLy8gc28gd2UgZm9yY2UgdGhhdCBoZXJlLlxuICAuZm9ybS1jaGVjayB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAvLyBLaWNrIGluIHRoZSBpbmxpbmVcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAgIGxhYmVsIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cblxuICAgIC8vIElubGluZS1ibG9jayBhbGwgdGhlIHRoaW5ncyBmb3IgXCJpbmxpbmVcIlxuICAgIC5mb3JtLWdyb3VwIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICAvLyBBbGxvdyBmb2xrcyB0byAqbm90KiB1c2UgYC5mb3JtLWdyb3VwYFxuICAgIC5mb3JtLWNvbnRyb2wge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgd2lkdGg6IGF1dG87IC8vIFByZXZlbnQgbGFiZWxzIGZyb20gc3RhY2tpbmcgYWJvdmUgaW5wdXRzIGluIGAuZm9ybS1ncm91cGBcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgfVxuXG4gICAgLy8gTWFrZSBzdGF0aWMgY29udHJvbHMgYmVoYXZlIGxpa2UgcmVndWxhciBvbmVzXG4gICAgLmZvcm0tY29udHJvbC1wbGFpbnRleHQge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cblxuICAgIC5pbnB1dC1ncm91cCxcbiAgICAuY3VzdG9tLXNlbGVjdCB7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICB9XG5cbiAgICAvLyBSZW1vdmUgZGVmYXVsdCBtYXJnaW4gb24gcmFkaW9zL2NoZWNrYm94ZXMgdGhhdCB3ZXJlIHVzZWQgZm9yIHN0YWNraW5nLCBhbmRcbiAgICAvLyB0aGVuIHVuZG8gdGhlIGZsb2F0aW5nIG9mIHJhZGlvcyBhbmQgY2hlY2tib3hlcyB0byBtYXRjaC5cbiAgICAuZm9ybS1jaGVjayB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgfVxuICAgIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIG1hcmdpbi1yaWdodDogJGZvcm0tY2hlY2staW5wdXQtbWFyZ2luLXg7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG5cbiAgICAuY3VzdG9tLWNvbnRyb2wge1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIH1cbiAgICAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuQG1peGluIHRyYW5zaXRpb24oJHRyYW5zaXRpb24uLi4pIHtcbiAgQGlmIGxlbmd0aCgkdHJhbnNpdGlvbikgPT0gMCB7XG4gICAgJHRyYW5zaXRpb246ICR0cmFuc2l0aW9uLWJhc2U7XG4gIH1cblxuICBAaWYgbGVuZ3RoKCR0cmFuc2l0aW9uKSA+IDEge1xuICAgIEBlYWNoICR2YWx1ZSBpbiAkdHJhbnNpdGlvbiB7XG4gICAgICBAaWYgJHZhbHVlID09IG51bGwgb3IgJHZhbHVlID09IG5vbmUge1xuICAgICAgICBAd2FybiBcIlRoZSBrZXl3b3JkICdub25lJyBvciAnbnVsbCcgbXVzdCBiZSB1c2VkIGFzIGEgc2luZ2xlIGFyZ3VtZW50LlwiO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpZiAkZW5hYmxlLXRyYW5zaXRpb25zIHtcbiAgICBAaWYgbnRoKCR0cmFuc2l0aW9uLCAxKSAhPSBudWxsIHtcbiAgICAgIHRyYW5zaXRpb246ICR0cmFuc2l0aW9uO1xuICAgIH1cblxuICAgIEBpZiAkZW5hYmxlLXByZWZlcnMtcmVkdWNlZC1tb3Rpb24tbWVkaWEtcXVlcnkgYW5kIG50aCgkdHJhbnNpdGlvbiwgMSkgIT0gbnVsbCBhbmQgbnRoKCR0cmFuc2l0aW9uLCAxKSAhPSBub25lIHtcbiAgICAgIEBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gICAgICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3JtIGNvbnRyb2wgZm9jdXMgc3RhdGVcbi8vXG4vLyBHZW5lcmF0ZSBhIGN1c3RvbWl6ZWQgZm9jdXMgc3RhdGUgYW5kIGZvciBhbnkgaW5wdXQgd2l0aCB0aGUgc3BlY2lmaWVkIGNvbG9yLFxuLy8gd2hpY2ggZGVmYXVsdHMgdG8gdGhlIGAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yYCB2YXJpYWJsZS5cbi8vXG4vLyBXZSBoaWdobHkgZW5jb3VyYWdlIHlvdSB0byBub3QgY3VzdG9taXplIHRoZSBkZWZhdWx0IHZhbHVlLCBidXQgaW5zdGVhZCB1c2Vcbi8vIHRoaXMgdG8gdHdlYWsgY29sb3JzIG9uIGFuIGFzLW5lZWRlZCBiYXNpcy4gVGhpcyBhZXN0aGV0aWMgY2hhbmdlIGlzIGJhc2VkIG9uXG4vLyBXZWJLaXQncyBkZWZhdWx0IHN0eWxlcywgYnV0IGFwcGxpY2FibGUgdG8gYSB3aWRlciByYW5nZSBvZiBicm93c2Vycy4gSXRzXG4vLyB1c2FiaWxpdHkgYW5kIGFjY2Vzc2liaWxpdHkgc2hvdWxkIGJlIHRha2VuIGludG8gYWNjb3VudCB3aXRoIGFueSBjaGFuZ2UuXG4vL1xuLy8gRXhhbXBsZSB1c2FnZTogY2hhbmdlIHRoZSBkZWZhdWx0IGJsdWUgYm9yZGVyIGFuZCBzaGFkb3cgdG8gd2hpdGUgZm9yIGJldHRlclxuLy8gY29udHJhc3QgYWdhaW5zdCBhIGRhcmsgZ3JheSBiYWNrZ3JvdW5kLlxuQG1peGluIGZvcm0tY29udHJvbC1mb2N1cygkaWdub3JlLXdhcm5pbmc6IGZhbHNlKSB7XG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiAkaW5wdXQtZm9jdXMtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWZvY3VzLWJnO1xuICAgIGJvcmRlci1jb2xvcjogJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvcjtcbiAgICBvdXRsaW5lOiAwO1xuICAgIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xuICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkaW5wdXQtYm94LXNoYWRvdywgJGlucHV0LWZvY3VzLWJveC1zaGFkb3cpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxuICAgICAgYm94LXNoYWRvdzogJGlucHV0LWZvY3VzLWJveC1zaGFkb3c7XG4gICAgfVxuICB9XG4gIEBpbmNsdWRlIGRlcHJlY2F0ZShcIlRoZSBgZm9ybS1jb250cm9sLWZvY3VzKClgIG1peGluXCIsIFwidjQuNC4wXCIsIFwidjVcIiwgJGlnbm9yZS13YXJuaW5nKTtcbn1cblxuLy8gVGhpcyBtaXhpbiB1c2VzIGFuIGBpZigpYCB0ZWNobmlxdWUgdG8gYmUgY29tcGF0aWJsZSB3aXRoIERhcnQgU2Fzc1xuLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9zYXNzL3Nhc3MvaXNzdWVzLzE4NzMjaXNzdWVjb21tZW50LTE1MjI5MzcyNSBmb3IgbW9yZSBkZXRhaWxzXG5AbWl4aW4gZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICBAaWYgKCRzdGF0ZSA9PSBcInZhbGlkXCIgb3IgJHN0YXRlID09IFwiaW52YWxpZFwiKSB7XG4gICAgLndhcy12YWxpZGF0ZWQgI3tpZigmLCBcIiZcIiwgXCJcIil9OiN7JHN0YXRlfSxcbiAgICAje2lmKCYsIFwiJlwiLCBcIlwiKX0uaXMtI3skc3RhdGV9IHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgI3tpZigmLCBcIiZcIiwgXCJcIil9LmlzLSN7JHN0YXRlfSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZSgkc3RhdGUsICRjb2xvciwgJGljb24pIHtcbiAgLiN7JHN0YXRlfS1mZWVkYmFjayB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tdG9wOiAkZm9ybS1mZWVkYmFjay1tYXJnaW4tdG9wO1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9ybS1mZWVkYmFjay1mb250LXNpemUpO1xuICAgIGNvbG9yOiAkY29sb3I7XG4gIH1cblxuICAuI3skc3RhdGV9LXRvb2x0aXAge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDEwMCU7XG4gICAgbGVmdDogMDtcbiAgICB6LWluZGV4OiA1O1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgbWF4LXdpZHRoOiAxMDAlOyAvLyBDb250YWluIHRvIHBhcmVudCB3aGVuIHBvc3NpYmxlXG4gICAgcGFkZGluZzogJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1wYWRkaW5nLXkgJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1wYWRkaW5nLXg7XG4gICAgbWFyZ2luLXRvcDogLjFyZW07XG4gICAgQGluY2x1ZGUgZm9udC1zaXplKCRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtZm9udC1zaXplKTtcbiAgICBsaW5lLWhlaWdodDogJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1saW5lLWhlaWdodDtcbiAgICBjb2xvcjogY29sb3IteWlxKCRjb2xvcik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3IsICRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtb3BhY2l0eSk7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZm9ybS1mZWVkYmFjay10b29sdGlwLWJvcmRlci1yYWRpdXMpO1xuXG4gICAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzMxNTU3XG4gICAgLy8gQWxpZ24gdG9vbHRpcCB0byBmb3JtIGVsZW1lbnRzXG4gICAgLmZvcm0tcm93ID4gLmNvbCA+ICYsXG4gICAgLmZvcm0tcm93ID4gW2NsYXNzKj1cImNvbC1cIl0gPiAmIHtcbiAgICAgIGxlZnQ6ICRmb3JtLWdyaWQtZ3V0dGVyLXdpZHRoIC8gMjtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gICAgfiAuI3skc3RhdGV9LWZlZWRiYWNrLFxuICAgIH4gLiN7JHN0YXRlfS10b29sdGlwIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxuXG4gIC5mb3JtLWNvbnRyb2wge1xuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuXG4gICAgICBAaWYgJGVuYWJsZS12YWxpZGF0aW9uLWljb25zIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogJGlucHV0LWhlaWdodC1pbm5lcjtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkaWNvbik7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0ICRpbnB1dC1oZWlnaHQtaW5uZXItcXVhcnRlciBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogJGlucHV0LWhlaWdodC1pbm5lci1oYWxmICRpbnB1dC1oZWlnaHQtaW5uZXItaGFsZjtcbiAgICAgIH1cblxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAkaW5wdXQtZm9jdXMtd2lkdGggcmdiYSgkY29sb3IsIC4yNSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuICB0ZXh0YXJlYS5mb3JtLWNvbnRyb2wge1xuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICAgIEBpZiAkZW5hYmxlLXZhbGlkYXRpb24taWNvbnMge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkaW5wdXQtaGVpZ2h0LWlubmVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgJGlucHV0LWhlaWdodC1pbm5lci1xdWFydGVyIHJpZ2h0ICRpbnB1dC1oZWlnaHQtaW5uZXItcXVhcnRlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuY3VzdG9tLXNlbGVjdCB7XG4gICAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG5cbiAgICAgIEBpZiAkZW5hYmxlLXZhbGlkYXRpb24taWNvbnMge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkY3VzdG9tLXNlbGVjdC1mZWVkYmFjay1pY29uLXBhZGRpbmctcmlnaHQ7XG4gICAgICAgIGJhY2tncm91bmQ6ICRjdXN0b20tc2VsZWN0LWJhY2tncm91bmQsICRjdXN0b20tc2VsZWN0LWJnIGVzY2FwZS1zdmcoJGljb24pICRjdXN0b20tc2VsZWN0LWZlZWRiYWNrLWljb24tcG9zaXRpb24gLyAkY3VzdG9tLXNlbGVjdC1mZWVkYmFjay1pY29uLXNpemUgbm8tcmVwZWF0O1xuICAgICAgfVxuXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRpbnB1dC1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjI1KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuZm9ybS1jaGVjay1pbnB1dCB7XG4gICAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICAgICAgfiAuZm9ybS1jaGVjay1sYWJlbCB7XG4gICAgICAgIGNvbG9yOiAkY29sb3I7XG4gICAgICB9XG5cbiAgICAgIH4gLiN7JHN0YXRlfS1mZWVkYmFjayxcbiAgICAgIH4gLiN7JHN0YXRlfS10b29sdGlwIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLWlucHV0IHtcbiAgICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gICAgICB+IC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgICAgIGNvbG9yOiAkY29sb3I7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmOmNoZWNrZWQge1xuICAgICAgICB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAgICAgICBib3JkZXItY29sb3I6IGxpZ2h0ZW4oJGNvbG9yLCAxMCUpO1xuICAgICAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKGxpZ2h0ZW4oJGNvbG9yLCAxMCUpKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGlucHV0LWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAuMjUpO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpub3QoOmNoZWNrZWQpIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gY3VzdG9tIGZpbGVcbiAgLmN1c3RvbS1maWxlLWlucHV0IHtcbiAgICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gICAgICB+IC5jdXN0b20tZmlsZS1sYWJlbCB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgICAgfVxuXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgfiAuY3VzdG9tLWZpbGUtbGFiZWwge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRpbnB1dC1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjI1KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gR3JhZGllbnRzXG5cbkBtaXhpbiBncmFkaWVudC1iZygkY29sb3IpIHtcbiAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3IgbGluZWFyLWdyYWRpZW50KDE4MGRlZywgbWl4KCRib2R5LWJnLCAkY29sb3IsIDE1JSksICRjb2xvcikgcmVwZWF0LXg7XG4gIH0gQGVsc2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbiAgfVxufVxuXG4vLyBIb3Jpem9udGFsIGdyYWRpZW50LCBmcm9tIGxlZnQgdG8gcmlnaHRcbi8vXG4vLyBDcmVhdGVzIHR3byBjb2xvciBzdG9wcywgc3RhcnQgYW5kIGVuZCwgYnkgc3BlY2lmeWluZyBhIGNvbG9yIGFuZCBwb3NpdGlvbiBmb3IgZWFjaCBjb2xvciBzdG9wLlxuQG1peGluIGdyYWRpZW50LXgoJHN0YXJ0LWNvbG9yOiAkZ3JheS03MDAsICRlbmQtY29sb3I6ICRncmF5LTgwMCwgJHN0YXJ0LXBlcmNlbnQ6IDAlLCAkZW5kLXBlcmNlbnQ6IDEwMCUpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xufVxuXG4vLyBWZXJ0aWNhbCBncmFkaWVudCwgZnJvbSB0b3AgdG8gYm90dG9tXG4vL1xuLy8gQ3JlYXRlcyB0d28gY29sb3Igc3RvcHMsIHN0YXJ0IGFuZCBlbmQsIGJ5IHNwZWNpZnlpbmcgYSBjb2xvciBhbmQgcG9zaXRpb24gZm9yIGVhY2ggY29sb3Igc3RvcC5cbkBtaXhpbiBncmFkaWVudC15KCRzdGFydC1jb2xvcjogJGdyYXktNzAwLCAkZW5kLWNvbG9yOiAkZ3JheS04MDAsICRzdGFydC1wZXJjZW50OiAwJSwgJGVuZC1wZXJjZW50OiAxMDAlKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICRzdGFydC1jb2xvciAkc3RhcnQtcGVyY2VudCwgJGVuZC1jb2xvciAkZW5kLXBlcmNlbnQpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG59XG5cbkBtaXhpbiBncmFkaWVudC1kaXJlY3Rpb25hbCgkc3RhcnQtY29sb3I6ICRncmF5LTcwMCwgJGVuZC1jb2xvcjogJGdyYXktODAwLCAkZGVnOiA0NWRlZykge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJGRlZywgJHN0YXJ0LWNvbG9yLCAkZW5kLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xufVxuQG1peGluIGdyYWRpZW50LXgtdGhyZWUtY29sb3JzKCRzdGFydC1jb2xvcjogJGJsdWUsICRtaWQtY29sb3I6ICRwdXJwbGUsICRjb2xvci1zdG9wOiA1MCUsICRlbmQtY29sb3I6ICRyZWQpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuQG1peGluIGdyYWRpZW50LXktdGhyZWUtY29sb3JzKCRzdGFydC1jb2xvcjogJGJsdWUsICRtaWQtY29sb3I6ICRwdXJwbGUsICRjb2xvci1zdG9wOiA1MCUsICRlbmQtY29sb3I6ICRyZWQpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCRzdGFydC1jb2xvciwgJG1pZC1jb2xvciAkY29sb3Itc3RvcCwgJGVuZC1jb2xvcik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG5AbWl4aW4gZ3JhZGllbnQtcmFkaWFsKCRpbm5lci1jb2xvcjogJGdyYXktNzAwLCAkb3V0ZXItY29sb3I6ICRncmF5LTgwMCkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiByYWRpYWwtZ3JhZGllbnQoY2lyY2xlLCAkaW5uZXItY29sb3IsICRvdXRlci1jb2xvcik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG5AbWl4aW4gZ3JhZGllbnQtc3RyaXBlZCgkY29sb3I6IHJnYmEoJHdoaXRlLCAuMTUpLCAkYW5nbGU6IDQ1ZGVnKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkYW5nbGUsICRjb2xvciAyNSUsIHRyYW5zcGFyZW50IDI1JSwgdHJhbnNwYXJlbnQgNTAlLCAkY29sb3IgNTAlLCAkY29sb3IgNzUlLCB0cmFuc3BhcmVudCA3NSUsIHRyYW5zcGFyZW50KTtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuXG4vL1xuLy8gQmFzZSBzdHlsZXNcbi8vXG5cbi5idG4ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtZmFtaWx5OiAkYnRuLWZvbnQtZmFtaWx5O1xuICBmb250LXdlaWdodDogJGJ0bi1mb250LXdlaWdodDtcbiAgY29sb3I6ICRib2R5LWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstZGVjb3JhdGlvbiA9PSBub25lLCBudWxsLCBub25lKTtcbiAgd2hpdGUtc3BhY2U6ICRidG4td2hpdGUtc3BhY2U7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAkYnRuLWJvcmRlci13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgQGluY2x1ZGUgYnV0dG9uLXNpemUoJGJ0bi1wYWRkaW5nLXksICRidG4tcGFkZGluZy14LCAkYnRuLWZvbnQtc2l6ZSwgJGJ0bi1saW5lLWhlaWdodCwgJGJ0bi1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkYnRuLXRyYW5zaXRpb24pO1xuXG4gIEBpbmNsdWRlIGhvdmVyKCkge1xuICAgIGNvbG9yOiAkYm9keS1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICAmOmZvY3VzLFxuICAmLmZvY3VzIHtcbiAgICBvdXRsaW5lOiAwO1xuICAgIGJveC1zaGFkb3c6ICRidG4tZm9jdXMtYm94LXNoYWRvdztcbiAgfVxuXG4gIC8vIERpc2FibGVkIGNvbWVzIGZpcnN0IHNvIGFjdGl2ZSBjYW4gcHJvcGVybHkgcmVzdHlsZVxuICAmLmRpc2FibGVkLFxuICAmOmRpc2FibGVkIHtcbiAgICBvcGFjaXR5OiAkYnRuLWRpc2FibGVkLW9wYWNpdHk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhub25lKTtcbiAgfVxuXG4gICY6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkge1xuICAgIGN1cnNvcjogaWYoJGVuYWJsZS1wb2ludGVyLWN1cnNvci1mb3ItYnV0dG9ucywgcG9pbnRlciwgbnVsbCk7XG5cbiAgICAmOmFjdGl2ZSxcbiAgICAmLmFjdGl2ZSB7XG4gICAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRidG4tYWN0aXZlLWJveC1zaGFkb3cpO1xuXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkYnRuLWZvY3VzLWJveC1zaGFkb3csICRidG4tYWN0aXZlLWJveC1zaGFkb3cpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBGdXR1cmUtcHJvb2YgZGlzYWJsaW5nIG9mIGNsaWNrcyBvbiBgPGE+YCBlbGVtZW50c1xuYS5idG4uZGlzYWJsZWQsXG5maWVsZHNldDpkaXNhYmxlZCBhLmJ0biB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG5cbi8vXG4vLyBBbHRlcm5hdGUgYnV0dG9uc1xuLy9cblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIC5idG4tI3skY29sb3J9IHtcbiAgICBAaW5jbHVkZSBidXR0b24tdmFyaWFudCgkdmFsdWUsICR2YWx1ZSk7XG4gIH1cbn1cblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIC5idG4tb3V0bGluZS0jeyRjb2xvcn0ge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1vdXRsaW5lLXZhcmlhbnQoJHZhbHVlKTtcbiAgfVxufVxuXG5cbi8vXG4vLyBMaW5rIGJ1dHRvbnNcbi8vXG5cbi8vIE1ha2UgYSBidXR0b24gbG9vayBhbmQgYmVoYXZlIGxpa2UgYSBsaW5rXG4uYnRuLWxpbmsge1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcbiAgY29sb3I6ICRsaW5rLWNvbG9yO1xuICB0ZXh0LWRlY29yYXRpb246ICRsaW5rLWRlY29yYXRpb247XG5cbiAgQGluY2x1ZGUgaG92ZXIoKSB7XG4gICAgY29sb3I6ICRsaW5rLWhvdmVyLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogJGxpbmstaG92ZXItZGVjb3JhdGlvbjtcbiAgfVxuXG4gICY6Zm9jdXMsXG4gICYuZm9jdXMge1xuICAgIHRleHQtZGVjb3JhdGlvbjogJGxpbmstaG92ZXItZGVjb3JhdGlvbjtcbiAgfVxuXG4gICY6ZGlzYWJsZWQsXG4gICYuZGlzYWJsZWQge1xuICAgIGNvbG9yOiAkYnRuLWxpbmstZGlzYWJsZWQtY29sb3I7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIH1cblxuICAvLyBObyBuZWVkIGZvciBhbiBhY3RpdmUgc3RhdGUgaGVyZVxufVxuXG5cbi8vXG4vLyBCdXR0b24gU2l6ZXNcbi8vXG5cbi5idG4tbGcge1xuICBAaW5jbHVkZSBidXR0b24tc2l6ZSgkYnRuLXBhZGRpbmcteS1sZywgJGJ0bi1wYWRkaW5nLXgtbGcsICRidG4tZm9udC1zaXplLWxnLCAkYnRuLWxpbmUtaGVpZ2h0LWxnLCAkYnRuLWJvcmRlci1yYWRpdXMtbGcpO1xufVxuXG4uYnRuLXNtIHtcbiAgQGluY2x1ZGUgYnV0dG9uLXNpemUoJGJ0bi1wYWRkaW5nLXktc20sICRidG4tcGFkZGluZy14LXNtLCAkYnRuLWZvbnQtc2l6ZS1zbSwgJGJ0bi1saW5lLWhlaWdodC1zbSwgJGJ0bi1ib3JkZXItcmFkaXVzLXNtKTtcbn1cblxuXG4vL1xuLy8gQmxvY2sgYnV0dG9uXG4vL1xuXG4uYnRuLWJsb2NrIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuXG4gIC8vIFZlcnRpY2FsbHkgc3BhY2Ugb3V0IG11bHRpcGxlIGJsb2NrIGJ1dHRvbnNcbiAgKyAuYnRuLWJsb2NrIHtcbiAgICBtYXJnaW4tdG9wOiAkYnRuLWJsb2NrLXNwYWNpbmcteTtcbiAgfVxufVxuXG4vLyBTcGVjaWZpY2l0eSBvdmVycmlkZXNcbmlucHV0W3R5cGU9XCJzdWJtaXRcIl0sXG5pbnB1dFt0eXBlPVwicmVzZXRcIl0sXG5pbnB1dFt0eXBlPVwiYnV0dG9uXCJdIHtcbiAgJi5idG4tYmxvY2sge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG4iLCIvLyBCdXR0b24gdmFyaWFudHNcbi8vXG4vLyBFYXNpbHkgcHVtcCBvdXQgZGVmYXVsdCBzdHlsZXMsIGFzIHdlbGwgYXMgOmhvdmVyLCA6Zm9jdXMsIDphY3RpdmUsXG4vLyBhbmQgZGlzYWJsZWQgb3B0aW9ucyBmb3IgYWxsIGJ1dHRvbnNcblxuQG1peGluIGJ1dHRvbi12YXJpYW50KCRiYWNrZ3JvdW5kLCAkYm9yZGVyLCAkaG92ZXItYmFja2dyb3VuZDogZGFya2VuKCRiYWNrZ3JvdW5kLCA3LjUlKSwgJGhvdmVyLWJvcmRlcjogZGFya2VuKCRib3JkZXIsIDEwJSksICRhY3RpdmUtYmFja2dyb3VuZDogZGFya2VuKCRiYWNrZ3JvdW5kLCAxMCUpLCAkYWN0aXZlLWJvcmRlcjogZGFya2VuKCRib3JkZXIsIDEyLjUlKSkge1xuICBjb2xvcjogY29sb3IteWlxKCRiYWNrZ3JvdW5kKTtcbiAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGJhY2tncm91bmQpO1xuICBib3JkZXItY29sb3I6ICRib3JkZXI7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGJ0bi1ib3gtc2hhZG93KTtcblxuICBAaW5jbHVkZSBob3ZlcigpIHtcbiAgICBjb2xvcjogY29sb3IteWlxKCRob3Zlci1iYWNrZ3JvdW5kKTtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkaG92ZXItYmFja2dyb3VuZCk7XG4gICAgYm9yZGVyLWNvbG9yOiAkaG92ZXItYm9yZGVyO1xuICB9XG5cbiAgJjpmb2N1cyxcbiAgJi5mb2N1cyB7XG4gICAgY29sb3I6IGNvbG9yLXlpcSgkaG92ZXItYmFja2dyb3VuZCk7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGhvdmVyLWJhY2tncm91bmQpO1xuICAgIGJvcmRlci1jb2xvcjogJGhvdmVyLWJvcmRlcjtcbiAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGJ0bi1ib3gtc2hhZG93LCAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEobWl4KGNvbG9yLXlpcSgkYmFja2dyb3VuZCksICRib3JkZXIsIDE1JSksIC41KSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICAvLyBBdm9pZCB1c2luZyBtaXhpbiBzbyB3ZSBjYW4gcGFzcyBjdXN0b20gZm9jdXMgc2hhZG93IHByb3Blcmx5XG4gICAgICBib3gtc2hhZG93OiAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEobWl4KGNvbG9yLXlpcSgkYmFja2dyb3VuZCksICRib3JkZXIsIDE1JSksIC41KTtcbiAgICB9XG4gIH1cblxuICAvLyBEaXNhYmxlZCBjb21lcyBmaXJzdCBzbyBhY3RpdmUgY2FuIHByb3Blcmx5IHJlc3R5bGVcbiAgJi5kaXNhYmxlZCxcbiAgJjpkaXNhYmxlZCB7XG4gICAgY29sb3I6IGNvbG9yLXlpcSgkYmFja2dyb3VuZCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xuICAgIC8vIFJlbW92ZSBDU1MgZ3JhZGllbnRzIGlmIHRoZXkncmUgZW5hYmxlZFxuICAgIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgIH1cbiAgfVxuXG4gICY6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLFxuICAmOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSxcbiAgLnNob3cgPiAmLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgY29sb3I6IGNvbG9yLXlpcSgkYWN0aXZlLWJhY2tncm91bmQpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRhY3RpdmUtYmFja2dyb3VuZDtcbiAgICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTsgLy8gUmVtb3ZlIHRoZSBncmFkaWVudCBmb3IgdGhlIHByZXNzZWQvYWN0aXZlIHN0YXRlXG4gICAgfVxuICAgIGJvcmRlci1jb2xvcjogJGFjdGl2ZS1ib3JkZXI7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIEBpZiAkZW5hYmxlLXNoYWRvd3MgYW5kICRidG4tYWN0aXZlLWJveC1zaGFkb3cgIT0gbm9uZSB7XG4gICAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGJ0bi1hY3RpdmUtYm94LXNoYWRvdywgMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKG1peChjb2xvci15aXEoJGJhY2tncm91bmQpLCAkYm9yZGVyLCAxNSUpLCAuNSkpO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKG1peChjb2xvci15aXEoJGJhY2tncm91bmQpLCAkYm9yZGVyLCAxNSUpLCAuNSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBidXR0b24tb3V0bGluZS12YXJpYW50KCRjb2xvciwgJGNvbG9yLWhvdmVyOiBjb2xvci15aXEoJGNvbG9yKSwgJGFjdGl2ZS1iYWNrZ3JvdW5kOiAkY29sb3IsICRhY3RpdmUtYm9yZGVyOiAkY29sb3IpIHtcbiAgY29sb3I6ICRjb2xvcjtcbiAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG5cbiAgQGluY2x1ZGUgaG92ZXIoKSB7XG4gICAgY29sb3I6ICRjb2xvci1ob3ZlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWN0aXZlLWJhY2tncm91bmQ7XG4gICAgYm9yZGVyLWNvbG9yOiAkYWN0aXZlLWJvcmRlcjtcbiAgfVxuXG4gICY6Zm9jdXMsXG4gICYuZm9jdXMge1xuICAgIGJveC1zaGFkb3c6IDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYSgkY29sb3IsIC41KTtcbiAgfVxuXG4gICYuZGlzYWJsZWQsXG4gICY6ZGlzYWJsZWQge1xuICAgIGNvbG9yOiAkY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cblxuICAmOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSxcbiAgJjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsXG4gIC5zaG93ID4gJi5kcm9wZG93bi10b2dnbGUge1xuICAgIGNvbG9yOiBjb2xvci15aXEoJGFjdGl2ZS1iYWNrZ3JvdW5kKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWN0aXZlLWJhY2tncm91bmQ7XG4gICAgYm9yZGVyLWNvbG9yOiAkYWN0aXZlLWJvcmRlcjtcblxuICAgICY6Zm9jdXMge1xuICAgICAgQGlmICRlbmFibGUtc2hhZG93cyBhbmQgJGJ0bi1hY3RpdmUtYm94LXNoYWRvdyAhPSBub25lIHtcbiAgICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkYnRuLWFjdGl2ZS1ib3gtc2hhZG93LCAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAuNSkpO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBCdXR0b24gc2l6ZXNcbkBtaXhpbiBidXR0b24tc2l6ZSgkcGFkZGluZy15LCAkcGFkZGluZy14LCAkZm9udC1zaXplLCAkbGluZS1oZWlnaHQsICRib3JkZXItcmFkaXVzKSB7XG4gIHBhZGRpbmc6ICRwYWRkaW5nLXkgJHBhZGRpbmcteDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmb250LXNpemUpO1xuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0O1xuICAvLyBNYW51YWxseSBkZWNsYXJlIHRvIHByb3ZpZGUgYW4gb3ZlcnJpZGUgdG8gdGhlIGJyb3dzZXIgZGVmYXVsdFxuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzLCAwKTtcbn1cbiIsIi5mYWRlIHtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkdHJhbnNpdGlvbi1mYWRlKTtcblxuICAmOm5vdCguc2hvdykge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cblxuLmNvbGxhcHNlIHtcbiAgJjpub3QoLnNob3cpIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5jb2xsYXBzaW5nIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJHRyYW5zaXRpb24tY29sbGFwc2UpO1xufVxuIiwiLy8gVGhlIGRyb3Bkb3duIHdyYXBwZXIgKGA8ZGl2PmApXG4uZHJvcHVwLFxuLmRyb3ByaWdodCxcbi5kcm9wZG93bixcbi5kcm9wbGVmdCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgLy8gR2VuZXJhdGUgdGhlIGNhcmV0IGF1dG9tYXRpY2FsbHlcbiAgQGluY2x1ZGUgY2FyZXQoKTtcbn1cblxuLy8gVGhlIGRyb3Bkb3duIG1lbnVcbi5kcm9wZG93bi1tZW51IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDEwMCU7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICR6aW5kZXgtZHJvcGRvd247XG4gIGRpc3BsYXk6IG5vbmU7IC8vIG5vbmUgYnkgZGVmYXVsdCwgYnV0IGJsb2NrIG9uIFwib3BlblwiIG9mIHRoZSBtZW51XG4gIGZsb2F0OiBsZWZ0O1xuICBtaW4td2lkdGg6ICRkcm9wZG93bi1taW4td2lkdGg7XG4gIHBhZGRpbmc6ICRkcm9wZG93bi1wYWRkaW5nLXkgJGRyb3Bkb3duLXBhZGRpbmcteDtcbiAgbWFyZ2luOiAkZHJvcGRvd24tc3BhY2VyIDAgMDsgLy8gb3ZlcnJpZGUgZGVmYXVsdCB1bFxuICBAaW5jbHVkZSBmb250LXNpemUoJGRyb3Bkb3duLWZvbnQtc2l6ZSk7XG4gIGNvbG9yOiAkZHJvcGRvd24tY29sb3I7XG4gIHRleHQtYWxpZ246IGxlZnQ7IC8vIEVuc3VyZXMgcHJvcGVyIGFsaWdubWVudCBpZiBwYXJlbnQgaGFzIGl0IGNoYW5nZWQgKGUuZy4sIG1vZGFsIGZvb3RlcilcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGRyb3Bkb3duLWJnO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXI6ICRkcm9wZG93bi1ib3JkZXItd2lkdGggc29saWQgJGRyb3Bkb3duLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZHJvcGRvd24tYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGRyb3Bkb3duLWJveC1zaGFkb3cpO1xufVxuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAuZHJvcGRvd24tbWVudSN7JGluZml4fS1sZWZ0IHtcbiAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgbGVmdDogMDtcbiAgICB9XG5cbiAgICAuZHJvcGRvd24tbWVudSN7JGluZml4fS1yaWdodCB7XG4gICAgICByaWdodDogMDtcbiAgICAgIGxlZnQ6IGF1dG87XG4gICAgfVxuICB9XG59XG5cbi8vIEFsbG93IGZvciBkcm9wZG93bnMgdG8gZ28gYm90dG9tIHVwIChha2EsIGRyb3B1cC1tZW51KVxuLy8gSnVzdCBhZGQgLmRyb3B1cCBhZnRlciB0aGUgc3RhbmRhcmQgLmRyb3Bkb3duIGNsYXNzIGFuZCB5b3UncmUgc2V0LlxuLmRyb3B1cCB7XG4gIC5kcm9wZG93bi1tZW51IHtcbiAgICB0b3A6IGF1dG87XG4gICAgYm90dG9tOiAxMDAlO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogJGRyb3Bkb3duLXNwYWNlcjtcbiAgfVxuXG4gIC5kcm9wZG93bi10b2dnbGUge1xuICAgIEBpbmNsdWRlIGNhcmV0KHVwKTtcbiAgfVxufVxuXG4uZHJvcHJpZ2h0IHtcbiAgLmRyb3Bkb3duLW1lbnUge1xuICAgIHRvcDogMDtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAxMDAlO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgbWFyZ2luLWxlZnQ6ICRkcm9wZG93bi1zcGFjZXI7XG4gIH1cblxuICAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBAaW5jbHVkZSBjYXJldChyaWdodCk7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgdmVydGljYWwtYWxpZ246IDA7XG4gICAgfVxuICB9XG59XG5cbi5kcm9wbGVmdCB7XG4gIC5kcm9wZG93bi1tZW51IHtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDEwMCU7XG4gICAgbGVmdDogYXV0bztcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1yaWdodDogJGRyb3Bkb3duLXNwYWNlcjtcbiAgfVxuXG4gIC5kcm9wZG93bi10b2dnbGUge1xuICAgIEBpbmNsdWRlIGNhcmV0KGxlZnQpO1xuICAgICY6OmJlZm9yZSB7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogMDtcbiAgICB9XG4gIH1cbn1cblxuLy8gV2hlbiBQb3BwZXIgaXMgZW5hYmxlZCwgcmVzZXQgdGhlIGJhc2ljIGRyb3Bkb3duIHBvc2l0aW9uXG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tZHVwbGljYXRlLXNlbGVjdG9yc1xuLmRyb3Bkb3duLW1lbnUge1xuICAmW3gtcGxhY2VtZW50Xj1cInRvcFwiXSxcbiAgJlt4LXBsYWNlbWVudF49XCJyaWdodFwiXSxcbiAgJlt4LXBsYWNlbWVudF49XCJib3R0b21cIl0sXG4gICZbeC1wbGFjZW1lbnRePVwibGVmdFwiXSB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgYm90dG9tOiBhdXRvO1xuICB9XG59XG5cbi8vIERpdmlkZXJzIChiYXNpY2FsbHkgYW4gYDxocj5gKSB3aXRoaW4gdGhlIGRyb3Bkb3duXG4uZHJvcGRvd24tZGl2aWRlciB7XG4gIEBpbmNsdWRlIG5hdi1kaXZpZGVyKCRkcm9wZG93bi1kaXZpZGVyLWJnLCAkZHJvcGRvd24tZGl2aWRlci1tYXJnaW4teSwgdHJ1ZSk7XG59XG5cbi8vIExpbmtzLCBidXR0b25zLCBhbmQgbW9yZSB3aXRoaW4gdGhlIGRyb3Bkb3duIG1lbnVcbi8vXG4vLyBgPGJ1dHRvbj5gLXNwZWNpZmljIHN0eWxlcyBhcmUgZGVub3RlZCB3aXRoIGAvLyBGb3IgPGJ1dHRvbj5zYFxuLmRyb3Bkb3duLWl0ZW0ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7IC8vIEZvciBgPGJ1dHRvbj5gc1xuICBwYWRkaW5nOiAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXkgJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14O1xuICBjbGVhcjogYm90aDtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG4gIGNvbG9yOiAkZHJvcGRvd24tbGluay1jb2xvcjtcbiAgdGV4dC1hbGlnbjogaW5oZXJpdDsgLy8gRm9yIGA8YnV0dG9uPmBzXG4gIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstZGVjb3JhdGlvbiA9PSBub25lLCBudWxsLCBub25lKTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgLy8gcHJldmVudCBsaW5rcyBmcm9tIHJhbmRvbWx5IGJyZWFraW5nIG9udG8gbmV3IGxpbmVzXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyAvLyBGb3IgYDxidXR0b24+YHNcbiAgYm9yZGVyOiAwOyAvLyBGb3IgYDxidXR0b24+YHNcblxuICAvLyBQcmV2ZW50IGRyb3Bkb3duIG92ZXJmbG93IGlmIHRoZXJlJ3Mgbm8gcGFkZGluZ1xuICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMjc3MDNcbiAgQGlmICRkcm9wZG93bi1wYWRkaW5nLXkgPT0gMCB7XG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkZHJvcGRvd24taW5uZXItYm9yZGVyLXJhZGl1cyk7XG4gICAgfVxuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKCRkcm9wZG93bi1pbm5lci1ib3JkZXItcmFkaXVzKTtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICBjb2xvcjogJGRyb3Bkb3duLWxpbmstaG92ZXItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRkcm9wZG93bi1saW5rLWhvdmVyLWJnKTtcbiAgfVxuXG4gICYuYWN0aXZlLFxuICAmOmFjdGl2ZSB7XG4gICAgY29sb3I6ICRkcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGRyb3Bkb3duLWxpbmstYWN0aXZlLWJnKTtcbiAgfVxuXG4gICYuZGlzYWJsZWQsXG4gICY6ZGlzYWJsZWQge1xuICAgIGNvbG9yOiAkZHJvcGRvd24tbGluay1kaXNhYmxlZC1jb2xvcjtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAvLyBSZW1vdmUgQ1NTIGdyYWRpZW50cyBpZiB0aGV5J3JlIGVuYWJsZWRcbiAgICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuLmRyb3Bkb3duLW1lbnUuc2hvdyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vLyBEcm9wZG93biBzZWN0aW9uIGhlYWRlcnNcbi5kcm9wZG93bi1oZWFkZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogJGRyb3Bkb3duLWhlYWRlci1wYWRkaW5nO1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBmb3IgdXNlIHdpdGggaGVhZGluZyBlbGVtZW50c1xuICBAaW5jbHVkZSBmb250LXNpemUoJGZvbnQtc2l6ZS1zbSk7XG4gIGNvbG9yOiAkZHJvcGRvd24taGVhZGVyLWNvbG9yO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwOyAvLyBhcyB3aXRoID4gbGkgPiBhXG59XG5cbi8vIERyb3Bkb3duIHRleHRcbi5kcm9wZG93bi1pdGVtLXRleHQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy15ICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteDtcbiAgY29sb3I6ICRkcm9wZG93bi1saW5rLWNvbG9yO1xufVxuIiwiQG1peGluIGNhcmV0LWRvd24oKSB7XG4gIGJvcmRlci10b3A6ICRjYXJldC13aWR0aCBzb2xpZDtcbiAgYm9yZGVyLXJpZ2h0OiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1ib3R0b206IDA7XG4gIGJvcmRlci1sZWZ0OiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG59XG5cbkBtaXhpbiBjYXJldC11cCgpIHtcbiAgYm9yZGVyLXRvcDogMDtcbiAgYm9yZGVyLXJpZ2h0OiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1ib3R0b206ICRjYXJldC13aWR0aCBzb2xpZDtcbiAgYm9yZGVyLWxlZnQ6ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbn1cblxuQG1peGluIGNhcmV0LXJpZ2h0KCkge1xuICBib3JkZXItdG9wOiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogMDtcbiAgYm9yZGVyLWJvdHRvbTogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItbGVmdDogJGNhcmV0LXdpZHRoIHNvbGlkO1xufVxuXG5AbWl4aW4gY2FyZXQtbGVmdCgpIHtcbiAgYm9yZGVyLXRvcDogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6ICRjYXJldC13aWR0aCBzb2xpZDtcbiAgYm9yZGVyLWJvdHRvbTogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xufVxuXG5AbWl4aW4gY2FyZXQoJGRpcmVjdGlvbjogZG93bikge1xuICBAaWYgJGVuYWJsZS1jYXJldCB7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luLWxlZnQ6ICRjYXJldC1zcGFjaW5nO1xuICAgICAgdmVydGljYWwtYWxpZ246ICRjYXJldC12ZXJ0aWNhbC1hbGlnbjtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBAaWYgJGRpcmVjdGlvbiA9PSBkb3duIHtcbiAgICAgICAgQGluY2x1ZGUgY2FyZXQtZG93bigpO1xuICAgICAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IHVwIHtcbiAgICAgICAgQGluY2x1ZGUgY2FyZXQtdXAoKTtcbiAgICAgIH0gQGVsc2UgaWYgJGRpcmVjdGlvbiA9PSByaWdodCB7XG4gICAgICAgIEBpbmNsdWRlIGNhcmV0LXJpZ2h0KCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGlmICRkaXJlY3Rpb24gPT0gbGVmdCB7XG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAkY2FyZXQtc3BhY2luZztcbiAgICAgICAgdmVydGljYWwtYWxpZ246ICRjYXJldC12ZXJ0aWNhbC1hbGlnbjtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgQGluY2x1ZGUgY2FyZXQtbGVmdCgpO1xuICAgICAgfVxuICAgIH1cblxuICAgICY6ZW1wdHk6OmFmdGVyIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gSG9yaXpvbnRhbCBkaXZpZGVyc1xuLy9cbi8vIERpdmlkZXJzIChiYXNpY2FsbHkgYW4gaHIpIHdpdGhpbiBkcm9wZG93bnMgYW5kIG5hdiBsaXN0c1xuXG5AbWl4aW4gbmF2LWRpdmlkZXIoJGNvbG9yOiAkbmF2LWRpdmlkZXItY29sb3IsICRtYXJnaW4teTogJG5hdi1kaXZpZGVyLW1hcmdpbi15LCAkaWdub3JlLXdhcm5pbmc6IGZhbHNlKSB7XG4gIGhlaWdodDogMDtcbiAgbWFyZ2luOiAkbWFyZ2luLXkgMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRjb2xvcjtcbiAgQGluY2x1ZGUgZGVwcmVjYXRlKFwiVGhlIGBuYXYtZGl2aWRlcigpYCBtaXhpblwiLCBcInY0LjQuMFwiLCBcInY1XCIsICRpZ25vcmUtd2FybmluZyk7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGVcblxuLy8gTWFrZSB0aGUgZGl2IGJlaGF2ZSBsaWtlIGEgYnV0dG9uXG4uYnRuLWdyb3VwLFxuLmJ0bi1ncm91cC12ZXJ0aWNhbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IC8vIG1hdGNoIC5idG4gYWxpZ25tZW50IGdpdmVuIGZvbnQtc2l6ZSBoYWNrIGFib3ZlXG5cbiAgPiAuYnRuIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZmxleDogMSAxIGF1dG87XG5cbiAgICAvLyBCcmluZyB0aGUgaG92ZXIsIGZvY3VzZWQsIGFuZCBcImFjdGl2ZVwiIGJ1dHRvbnMgdG8gdGhlIGZyb250IHRvIG92ZXJsYXlcbiAgICAvLyB0aGUgYm9yZGVycyBwcm9wZXJseVxuICAgIEBpbmNsdWRlIGhvdmVyKCkge1xuICAgICAgei1pbmRleDogMTtcbiAgICB9XG4gICAgJjpmb2N1cyxcbiAgICAmOmFjdGl2ZSxcbiAgICAmLmFjdGl2ZSB7XG4gICAgICB6LWluZGV4OiAxO1xuICAgIH1cbiAgfVxufVxuXG4vLyBPcHRpb25hbDogR3JvdXAgbXVsdGlwbGUgYnV0dG9uIGdyb3VwcyB0b2dldGhlciBmb3IgYSB0b29sYmFyXG4uYnRuLXRvb2xiYXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblxuICAuaW5wdXQtZ3JvdXAge1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG59XG5cbi5idG4tZ3JvdXAge1xuICAvLyBQcmV2ZW50IGRvdWJsZSBib3JkZXJzIHdoZW4gYnV0dG9ucyBhcmUgbmV4dCB0byBlYWNoIG90aGVyXG4gID4gLmJ0bjpub3QoOmZpcnN0LWNoaWxkKSxcbiAgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tbGVmdDogLSRidG4tYm9yZGVyLXdpZHRoO1xuICB9XG5cbiAgLy8gUmVzZXQgcm91bmRlZCBjb3JuZXJzXG4gID4gLmJ0bjpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSxcbiAgPiAuYnRuLWdyb3VwOm5vdCg6bGFzdC1jaGlsZCkgPiAuYnRuIHtcbiAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKDApO1xuICB9XG5cbiAgPiAuYnRuOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuIHtcbiAgICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoMCk7XG4gIH1cbn1cblxuLy8gU2l6aW5nXG4vL1xuLy8gUmVtaXggdGhlIGRlZmF1bHQgYnV0dG9uIHNpemluZyBjbGFzc2VzIGludG8gbmV3IG9uZXMgZm9yIGVhc2llciBtYW5pcHVsYXRpb24uXG5cbi5idG4tZ3JvdXAtc20gPiAuYnRuIHsgQGV4dGVuZCAuYnRuLXNtOyB9XG4uYnRuLWdyb3VwLWxnID4gLmJ0biB7IEBleHRlbmQgLmJ0bi1sZzsgfVxuXG5cbi8vXG4vLyBTcGxpdCBidXR0b24gZHJvcGRvd25zXG4vL1xuXG4uZHJvcGRvd24tdG9nZ2xlLXNwbGl0IHtcbiAgcGFkZGluZy1yaWdodDogJGJ0bi1wYWRkaW5nLXggKiAuNzU7XG4gIHBhZGRpbmctbGVmdDogJGJ0bi1wYWRkaW5nLXggKiAuNzU7XG5cbiAgJjo6YWZ0ZXIsXG4gIC5kcm9wdXAgJjo6YWZ0ZXIsXG4gIC5kcm9wcmlnaHQgJjo6YWZ0ZXIge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG5cbiAgLmRyb3BsZWZ0ICY6OmJlZm9yZSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICB9XG59XG5cbi5idG4tc20gKyAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0IHtcbiAgcGFkZGluZy1yaWdodDogJGJ0bi1wYWRkaW5nLXgtc20gKiAuNzU7XG4gIHBhZGRpbmctbGVmdDogJGJ0bi1wYWRkaW5nLXgtc20gKiAuNzU7XG59XG5cbi5idG4tbGcgKyAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0IHtcbiAgcGFkZGluZy1yaWdodDogJGJ0bi1wYWRkaW5nLXgtbGcgKiAuNzU7XG4gIHBhZGRpbmctbGVmdDogJGJ0bi1wYWRkaW5nLXgtbGcgKiAuNzU7XG59XG5cblxuLy8gVGhlIGNsaWNrYWJsZSBidXR0b24gZm9yIHRvZ2dsaW5nIHRoZSBtZW51XG4vLyBTZXQgdGhlIHNhbWUgaW5zZXQgc2hhZG93IGFzIHRoZSA6YWN0aXZlIHN0YXRlXG4uYnRuLWdyb3VwLnNob3cgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGJ0bi1hY3RpdmUtYm94LXNoYWRvdyk7XG5cbiAgLy8gU2hvdyBubyBzaGFkb3cgZm9yIGAuYnRuLWxpbmtgIHNpbmNlIGl0IGhhcyBubyBvdGhlciBidXR0b24gc3R5bGVzLlxuICAmLmJ0bi1saW5rIHtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO1xuICB9XG59XG5cblxuLy9cbi8vIFZlcnRpY2FsIGJ1dHRvbiBncm91cHNcbi8vXG5cbi5idG4tZ3JvdXAtdmVydGljYWwge1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgPiAuYnRuLFxuICA+IC5idG4tZ3JvdXAge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgPiAuYnRuOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIG1hcmdpbi10b3A6IC0kYnRuLWJvcmRlci13aWR0aDtcbiAgfVxuXG4gIC8vIFJlc2V0IHJvdW5kZWQgY29ybmVyc1xuICA+IC5idG46bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSksXG4gID4gLmJ0bi1ncm91cDpub3QoOmxhc3QtY2hpbGQpID4gLmJ0biB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoMCk7XG4gIH1cblxuICA+IC5idG46bm90KDpmaXJzdC1jaGlsZCksXG4gID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG4ge1xuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKDApO1xuICB9XG59XG5cblxuLy8gQ2hlY2tib3ggYW5kIHJhZGlvIG9wdGlvbnNcbi8vXG4vLyBJbiBvcmRlciB0byBzdXBwb3J0IHRoZSBicm93c2VyJ3MgZm9ybSB2YWxpZGF0aW9uIGZlZWRiYWNrLCBwb3dlcmVkIGJ5IHRoZVxuLy8gYHJlcXVpcmVkYCBhdHRyaWJ1dGUsIHdlIGhhdmUgdG8gXCJoaWRlXCIgdGhlIGlucHV0cyB2aWEgYGNsaXBgLiBXZSBjYW5ub3QgdXNlXG4vLyBgZGlzcGxheTogbm9uZTtgIG9yIGB2aXNpYmlsaXR5OiBoaWRkZW47YCBhcyB0aGF0IGFsc28gaGlkZXMgdGhlIHBvcG92ZXIuXG4vLyBTaW1wbHkgdmlzdWFsbHkgaGlkaW5nIHRoZSBpbnB1dHMgdmlhIGBvcGFjaXR5YCB3b3VsZCBsZWF2ZSB0aGVtIGNsaWNrYWJsZSBpblxuLy8gY2VydGFpbiBjYXNlcyB3aGljaCBpcyBwcmV2ZW50ZWQgYnkgdXNpbmcgYGNsaXBgIGFuZCBgcG9pbnRlci1ldmVudHNgLlxuLy8gVGhpcyB3YXksIHdlIGVuc3VyZSBhIERPTSBlbGVtZW50IGlzIHZpc2libGUgdG8gcG9zaXRpb24gdGhlIHBvcG92ZXIgZnJvbS5cbi8vXG4vLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMTI3OTQgYW5kXG4vLyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8xNDU1OSBmb3IgbW9yZSBpbmZvcm1hdGlvbi5cblxuLmJ0bi1ncm91cC10b2dnbGUge1xuICA+IC5idG4sXG4gID4gLmJ0bi1ncm91cCA+IC5idG4ge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IC8vIE92ZXJyaWRlIGRlZmF1bHQgYDxsYWJlbD5gIHZhbHVlXG5cbiAgICBpbnB1dFt0eXBlPVwicmFkaW9cIl0sXG4gICAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuXG4vL1xuLy8gQmFzZSBzdHlsZXNcbi8vXG5cbi5pbnB1dC1ncm91cCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwOyAvLyBGb3IgZm9ybSB2YWxpZGF0aW9uIGZlZWRiYWNrXG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICB3aWR0aDogMTAwJTtcblxuICA+IC5mb3JtLWNvbnRyb2wsXG4gID4gLmZvcm0tY29udHJvbC1wbGFpbnRleHQsXG4gID4gLmN1c3RvbS1zZWxlY3QsXG4gID4gLmN1c3RvbS1maWxlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IC8vIEZvciBmb2N1cyBzdGF0ZSdzIHotaW5kZXhcbiAgICBmbGV4OiAxIDEgYXV0bztcbiAgICB3aWR0aDogMSU7XG4gICAgbWluLXdpZHRoOiAwOyAvLyBodHRwczovL3N0YWNrb3ZlcmZsb3cuY29tL3F1ZXN0aW9ucy8zNjI0NzE0MC93aHktZG9udC1mbGV4LWl0ZW1zLXNocmluay1wYXN0LWNvbnRlbnQtc2l6ZVxuICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICArIC5mb3JtLWNvbnRyb2wsXG4gICAgKyAuY3VzdG9tLXNlbGVjdCxcbiAgICArIC5jdXN0b20tZmlsZSB7XG4gICAgICBtYXJnaW4tbGVmdDogLSRpbnB1dC1ib3JkZXItd2lkdGg7XG4gICAgfVxuICB9XG5cbiAgLy8gQnJpbmcgdGhlIFwiYWN0aXZlXCIgZm9ybSBjb250cm9sIHRvIHRoZSB0b3Agb2Ygc3Vycm91bmRpbmcgZWxlbWVudHNcbiAgPiAuZm9ybS1jb250cm9sOmZvY3VzLFxuICA+IC5jdXN0b20tc2VsZWN0OmZvY3VzLFxuICA+IC5jdXN0b20tZmlsZSAuY3VzdG9tLWZpbGUtaW5wdXQ6Zm9jdXMgfiAuY3VzdG9tLWZpbGUtbGFiZWwge1xuICAgIHotaW5kZXg6IDM7XG4gIH1cblxuICAvLyBCcmluZyB0aGUgY3VzdG9tIGZpbGUgaW5wdXQgYWJvdmUgdGhlIGxhYmVsXG4gID4gLmN1c3RvbS1maWxlIC5jdXN0b20tZmlsZS1pbnB1dDpmb2N1cyB7XG4gICAgei1pbmRleDogNDtcbiAgfVxuXG4gID4gLmZvcm0tY29udHJvbCxcbiAgPiAuY3VzdG9tLXNlbGVjdCB7XG4gICAgJjpub3QoOmZpcnN0LWNoaWxkKSB7IEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygwKTsgfVxuICB9XG5cbiAgLy8gQ3VzdG9tIGZpbGUgaW5wdXRzIGhhdmUgbW9yZSBjb21wbGV4IG1hcmt1cCwgdGh1cyByZXF1aXJpbmcgZGlmZmVyZW50XG4gIC8vIGJvcmRlci1yYWRpdXMgb3ZlcnJpZGVzLlxuICA+IC5jdXN0b20tZmlsZSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgJjpub3QoOmxhc3QtY2hpbGQpIC5jdXN0b20tZmlsZS1sYWJlbCxcbiAgICAmOm5vdCg6Zmlyc3QtY2hpbGQpIC5jdXN0b20tZmlsZS1sYWJlbCB7IEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygwKTsgfVxuICB9XG5cbiAgJjpub3QoLmhhcy12YWxpZGF0aW9uKSB7XG4gICAgPiAuZm9ybS1jb250cm9sOm5vdCg6bGFzdC1jaGlsZCksXG4gICAgPiAuY3VzdG9tLXNlbGVjdDpub3QoOmxhc3QtY2hpbGQpLFxuICAgID4gLmN1c3RvbS1maWxlOm5vdCg6bGFzdC1jaGlsZCkgLmN1c3RvbS1maWxlLWxhYmVsOjphZnRlciB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKDApO1xuICAgIH1cbiAgfVxuXG4gICYuaGFzLXZhbGlkYXRpb24ge1xuICAgID4gLmZvcm0tY29udHJvbDpudGgtbGFzdC1jaGlsZChuICsgMyksXG4gICAgPiAuY3VzdG9tLXNlbGVjdDpudGgtbGFzdC1jaGlsZChuICsgMyksXG4gICAgPiAuY3VzdG9tLWZpbGU6bnRoLWxhc3QtY2hpbGQobiArIDMpIC5jdXN0b20tZmlsZS1sYWJlbDo6YWZ0ZXIge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygwKTtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBQcmVwZW5kIGFuZCBhcHBlbmRcbi8vXG4vLyBXaGlsZSBpdCByZXF1aXJlcyBvbmUgZXh0cmEgbGF5ZXIgb2YgSFRNTCBmb3IgZWFjaCwgZGVkaWNhdGVkIHByZXBlbmQgYW5kXG4vLyBhcHBlbmQgZWxlbWVudHMgYWxsb3cgdXMgdG8gMSkgYmUgbGVzcyBjbGV2ZXIsIDIpIHNpbXBsaWZ5IG91ciBzZWxlY3RvcnMsIGFuZFxuLy8gMykgc3VwcG9ydCBIVE1MNSBmb3JtIHZhbGlkYXRpb24uXG5cbi5pbnB1dC1ncm91cC1wcmVwZW5kLFxuLmlucHV0LWdyb3VwLWFwcGVuZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG5cbiAgLy8gRW5zdXJlIGJ1dHRvbnMgYXJlIGFsd2F5cyBhYm92ZSBpbnB1dHMgZm9yIG1vcmUgdmlzdWFsbHkgcGxlYXNpbmcgYm9yZGVycy5cbiAgLy8gVGhpcyBpc24ndCBuZWVkZWQgZm9yIGAuaW5wdXQtZ3JvdXAtdGV4dGAgc2luY2UgaXQgc2hhcmVzIHRoZSBzYW1lIGJvcmRlci1jb2xvclxuICAvLyBhcyBvdXIgaW5wdXRzLlxuICAuYnRuIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMjtcblxuICAgICY6Zm9jdXMge1xuICAgICAgei1pbmRleDogMztcbiAgICB9XG4gIH1cblxuICAuYnRuICsgLmJ0bixcbiAgLmJ0biArIC5pbnB1dC1ncm91cC10ZXh0LFxuICAuaW5wdXQtZ3JvdXAtdGV4dCArIC5pbnB1dC1ncm91cC10ZXh0LFxuICAuaW5wdXQtZ3JvdXAtdGV4dCArIC5idG4ge1xuICAgIG1hcmdpbi1sZWZ0OiAtJGlucHV0LWJvcmRlci13aWR0aDtcbiAgfVxufVxuXG4uaW5wdXQtZ3JvdXAtcHJlcGVuZCB7IG1hcmdpbi1yaWdodDogLSRpbnB1dC1ib3JkZXItd2lkdGg7IH1cbi5pbnB1dC1ncm91cC1hcHBlbmQgeyBtYXJnaW4tbGVmdDogLSRpbnB1dC1ib3JkZXItd2lkdGg7IH1cblxuXG4vLyBUZXh0dWFsIGFkZG9uc1xuLy9cbi8vIFNlcnZlcyBhcyBhIGNhdGNoLWFsbCBlbGVtZW50IGZvciBhbnkgdGV4dCBvciByYWRpby9jaGVja2JveCBpbnB1dCB5b3Ugd2lzaFxuLy8gdG8gcHJlcGVuZCBvciBhcHBlbmQgdG8gYW4gaW5wdXQuXG5cbi5pbnB1dC1ncm91cC10ZXh0IHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteSAkaW5wdXQtcGFkZGluZy14O1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBBbGxvdyB1c2Ugb2YgPGxhYmVsPiBlbGVtZW50cyBieSBvdmVycmlkaW5nIG91ciBkZWZhdWx0IG1hcmdpbi1ib3R0b21cbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUpOyAvLyBNYXRjaCBpbnB1dHNcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaW5wdXQtZ3JvdXAtYWRkb24tY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWdyb3VwLWFkZG9uLWJnO1xuICBib3JkZXI6ICRpbnB1dC1ib3JkZXItd2lkdGggc29saWQgJGlucHV0LWdyb3VwLWFkZG9uLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cyk7XG5cbiAgLy8gTnVrZSBkZWZhdWx0IG1hcmdpbnMgZnJvbSBjaGVja2JveGVzIGFuZCByYWRpb3MgdG8gdmVydGljYWxseSBjZW50ZXIgd2l0aGluLlxuICBpbnB1dFt0eXBlPVwicmFkaW9cIl0sXG4gIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxufVxuXG5cbi8vIFNpemluZ1xuLy9cbi8vIFJlbWl4IHRoZSBkZWZhdWx0IGZvcm0gY29udHJvbCBzaXppbmcgY2xhc3NlcyBpbnRvIG5ldyBvbmVzIGZvciBlYXNpZXJcbi8vIG1hbmlwdWxhdGlvbi5cblxuLmlucHV0LWdyb3VwLWxnID4gLmZvcm0tY29udHJvbDpub3QodGV4dGFyZWEpLFxuLmlucHV0LWdyb3VwLWxnID4gLmN1c3RvbS1zZWxlY3Qge1xuICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtbGc7XG59XG5cbi5pbnB1dC1ncm91cC1sZyA+IC5mb3JtLWNvbnRyb2wsXG4uaW5wdXQtZ3JvdXAtbGcgPiAuY3VzdG9tLXNlbGVjdCxcbi5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC1wcmVwZW5kID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZCA+IC5idG4sXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kID4gLmJ0biB7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXktbGcgJGlucHV0LXBhZGRpbmcteC1sZztcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUtbGcpO1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0LWxnO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzLWxnKTtcbn1cblxuLmlucHV0LWdyb3VwLXNtID4gLmZvcm0tY29udHJvbDpub3QodGV4dGFyZWEpLFxuLmlucHV0LWdyb3VwLXNtID4gLmN1c3RvbS1zZWxlY3Qge1xuICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtc207XG59XG5cbi5pbnB1dC1ncm91cC1zbSA+IC5mb3JtLWNvbnRyb2wsXG4uaW5wdXQtZ3JvdXAtc20gPiAuY3VzdG9tLXNlbGVjdCxcbi5pbnB1dC1ncm91cC1zbSA+IC5pbnB1dC1ncm91cC1wcmVwZW5kID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtYXBwZW5kID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZCA+IC5idG4sXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtYXBwZW5kID4gLmJ0biB7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXktc20gJGlucHV0LXBhZGRpbmcteC1zbTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUtc20pO1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0LXNtO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzLXNtKTtcbn1cblxuLmlucHV0LWdyb3VwLWxnID4gLmN1c3RvbS1zZWxlY3QsXG4uaW5wdXQtZ3JvdXAtc20gPiAuY3VzdG9tLXNlbGVjdCB7XG4gIHBhZGRpbmctcmlnaHQ6ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteCArICRjdXN0b20tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nO1xufVxuXG5cbi8vIFByZXBlbmQgYW5kIGFwcGVuZCByb3VuZGVkIGNvcm5lcnNcbi8vXG4vLyBUaGVzZSBydWxlc2V0cyBtdXN0IGNvbWUgYWZ0ZXIgdGhlIHNpemluZyBvbmVzIHRvIHByb3Blcmx5IG92ZXJyaWRlIHNtIGFuZCBsZ1xuLy8gYm9yZGVyLXJhZGl1cyB2YWx1ZXMgd2hlbiBleHRlbmRpbmcuIFRoZXkncmUgbW9yZSBzcGVjaWZpYyB0aGFuIHdlJ2QgbGlrZVxuLy8gd2l0aCB0aGUgYC5pbnB1dC1ncm91cCA+YCBwYXJ0LCBidXQgd2l0aG91dCBpdCwgd2UgY2Fubm90IG92ZXJyaWRlIHRoZSBzaXppbmcuXG5cblxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLXByZXBlbmQgPiAuYnRuLFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLXByZXBlbmQgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cDpub3QoLmhhcy12YWxpZGF0aW9uKSA+IC5pbnB1dC1ncm91cC1hcHBlbmQ6bm90KDpsYXN0LWNoaWxkKSA+IC5idG4sXG4uaW5wdXQtZ3JvdXA6bm90KC5oYXMtdmFsaWRhdGlvbikgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kOm5vdCg6bGFzdC1jaGlsZCkgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cC5oYXMtdmFsaWRhdGlvbiA+IC5pbnB1dC1ncm91cC1hcHBlbmQ6bnRoLWxhc3QtY2hpbGQobiArIDMpID4gLmJ0bixcbi5pbnB1dC1ncm91cC5oYXMtdmFsaWRhdGlvbiA+IC5pbnB1dC1ncm91cC1hcHBlbmQ6bnRoLWxhc3QtY2hpbGQobiArIDMpID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kOmxhc3QtY2hpbGQgPiAuYnRuOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpLFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLWFwcGVuZDpsYXN0LWNoaWxkID4gLmlucHV0LWdyb3VwLXRleHQ6bm90KDpsYXN0LWNoaWxkKSB7XG4gIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoMCk7XG59XG5cbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1hcHBlbmQgPiAuYnRuLFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLWFwcGVuZCA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLXByZXBlbmQ6bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuLFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLXByZXBlbmQ6bm90KDpmaXJzdC1jaGlsZCkgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1wcmVwZW5kOmZpcnN0LWNoaWxkID4gLmJ0bjpub3QoOmZpcnN0LWNoaWxkKSxcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1wcmVwZW5kOmZpcnN0LWNoaWxkID4gLmlucHV0LWdyb3VwLXRleHQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoMCk7XG59XG4iLCIvLyBFbWJlZGRlZCBpY29ucyBmcm9tIE9wZW4gSWNvbmljLlxuLy8gUmVsZWFzZWQgdW5kZXIgTUlUIGFuZCBjb3B5cmlnaHQgMjAxNCBXYXlidXJ5LlxuLy8gaHR0cHM6Ly91c2VpY29uaWMuY29tL29wZW5cblxuXG4vLyBDaGVja2JveGVzIGFuZCByYWRpb3Ncbi8vXG4vLyBCYXNlIGNsYXNzIHRha2VzIGNhcmUgb2YgYWxsIHRoZSBrZXkgYmVoYXZpb3JhbCBhc3BlY3RzLlxuXG4uY3VzdG9tLWNvbnRyb2wge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDE7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtaW4taGVpZ2h0OiAkZm9udC1zaXplLWJhc2UgKiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgcGFkZGluZy1sZWZ0OiAkY3VzdG9tLWNvbnRyb2wtZ3V0dGVyICsgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplO1xuICBjb2xvci1hZGp1c3Q6IGV4YWN0OyAvLyBLZWVwIHRoZW1lZCBhcHBlYXJhbmNlIGZvciBwcmludFxufVxuXG4uY3VzdG9tLWNvbnRyb2wtaW5saW5lIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIG1hcmdpbi1yaWdodDogJGN1c3RvbS1jb250cm9sLXNwYWNlci14O1xufVxuXG4uY3VzdG9tLWNvbnRyb2wtaW5wdXQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IC0xOyAvLyBQdXQgdGhlIGlucHV0IGJlaGluZCB0aGUgbGFiZWwgc28gaXQgZG9lc24ndCBvdmVybGF5IHRleHRcbiAgd2lkdGg6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZTtcbiAgaGVpZ2h0OiAoJGZvbnQtc2l6ZS1iYXNlICogJGxpbmUtaGVpZ2h0LWJhc2UgKyAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUpIC8gMjtcbiAgb3BhY2l0eTogMDtcblxuICAmOmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1jb2xvcjtcbiAgICBib3JkZXItY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1ib3JkZXItY29sb3I7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWJnKTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1ib3gtc2hhZG93KTtcbiAgfVxuXG4gICY6Zm9jdXMgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgLy8gdGhlIG1peGluIGlzIG5vdCB1c2VkIGhlcmUgdG8gbWFrZSBzdXJlIHRoZXJlIGlzIGZlZWRiYWNrXG4gICAgQGlmICRlbmFibGUtc2hhZG93cyB7XG4gICAgICBib3gtc2hhZG93OiAkaW5wdXQtYm94LXNoYWRvdywgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1mb2N1cy1ib3gtc2hhZG93O1xuICAgIH0gQGVsc2Uge1xuICAgICAgYm94LXNoYWRvdzogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1mb2N1cy1ib3gtc2hhZG93O1xuICAgIH1cbiAgfVxuXG4gICY6Zm9jdXM6bm90KDpjaGVja2VkKSB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICBib3JkZXItY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItZm9jdXMtYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgJjpub3QoOmRpc2FibGVkKTphY3RpdmUgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWJnO1xuICAgIGJvcmRlci1jb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtYm9yZGVyLWNvbG9yO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtYm94LXNoYWRvdyk7XG4gIH1cblxuICAvLyBVc2UgW2Rpc2FibGVkXSBhbmQgOmRpc2FibGVkIHRvIHdvcmsgYXJvdW5kIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjgyNDdcbiAgJltkaXNhYmxlZF0sXG4gICY6ZGlzYWJsZWQge1xuICAgIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICAgIGNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtbGFiZWwtZGlzYWJsZWQtY29sb3I7XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItZGlzYWJsZWQtYmc7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIEN1c3RvbSBjb250cm9sIGluZGljYXRvcnNcbi8vXG4vLyBCdWlsZCB0aGUgY3VzdG9tIGNvbnRyb2xzIG91dCBvZiBwc2V1ZG8tZWxlbWVudHMuXG5cbi5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgY29sb3I6ICRjdXN0b20tY29udHJvbC1sYWJlbC1jb2xvcjtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgY3Vyc29yOiAkY3VzdG9tLWNvbnRyb2wtY3Vyc29yO1xuXG4gIC8vIEJhY2tncm91bmQtY29sb3IgYW5kICh3aGVuIGVuYWJsZWQpIGdyYWRpZW50XG4gICY6OmJlZm9yZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogKCRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlIC0gJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplKSAvIDI7XG4gICAgbGVmdDogLSgkY3VzdG9tLWNvbnRyb2wtZ3V0dGVyICsgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplKTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplO1xuICAgIGhlaWdodDogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1iZztcbiAgICBib3JkZXI6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm9yZGVyLWNvbG9yIHNvbGlkICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm9yZGVyLXdpZHRoO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3gtc2hhZG93KTtcbiAgfVxuXG4gIC8vIEZvcmVncm91bmQgKGljb24pXG4gICY6OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAoJGZvbnQtc2l6ZS1iYXNlICogJGxpbmUtaGVpZ2h0LWJhc2UgLSAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUpIC8gMjtcbiAgICBsZWZ0OiAtKCRjdXN0b20tY29udHJvbC1ndXR0ZXIgKyAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUpO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemU7XG4gICAgaGVpZ2h0OiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemU7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBiYWNrZ3JvdW5kOiA1MCUgLyAjeyRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYmctc2l6ZX0gbm8tcmVwZWF0O1xuICB9XG59XG5cblxuLy8gQ2hlY2tib3hlc1xuLy9cbi8vIFR3ZWFrIGp1c3QgYSBmZXcgdGhpbmdzIGZvciBjaGVja2JveGVzLlxuXG4uY3VzdG9tLWNoZWNrYm94IHtcbiAgLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1cyk7XG4gIH1cblxuICAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pY29uLWNoZWNrZWQpO1xuICAgIH1cbiAgfVxuXG4gIC5jdXN0b20tY29udHJvbC1pbnB1dDppbmRldGVybWluYXRlIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWJvcmRlci1jb2xvcjtcbiAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtYmcpO1xuICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWJveC1zaGFkb3cpO1xuICAgIH1cbiAgICAmOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWljb24taW5kZXRlcm1pbmF0ZSk7XG4gICAgfVxuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLWlucHV0OmRpc2FibGVkIHtcbiAgICAmOmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtZGlzYWJsZWQtYmcpO1xuICAgIH1cbiAgICAmOmluZGV0ZXJtaW5hdGUgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtZGlzYWJsZWQtYmcpO1xuICAgIH1cbiAgfVxufVxuXG4vLyBSYWRpb3Ncbi8vXG4vLyBUd2VhayBqdXN0IGEgZmV3IHRoaW5ncyBmb3IgcmFkaW9zLlxuXG4uY3VzdG9tLXJhZGlvIHtcbiAgLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgICBib3JkZXItcmFkaXVzOiAkY3VzdG9tLXJhZGlvLWluZGljYXRvci1ib3JkZXItcmFkaXVzO1xuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICAgICY6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGN1c3RvbS1yYWRpby1pbmRpY2F0b3ItaWNvbi1jaGVja2VkKTtcbiAgICB9XG4gIH1cblxuICAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6ZGlzYWJsZWQge1xuICAgICY6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1kaXNhYmxlZC1iZyk7XG4gICAgfVxuICB9XG59XG5cblxuLy8gc3dpdGNoZXNcbi8vXG4vLyBUd2VhayBhIGZldyB0aGluZ3MgZm9yIHN3aXRjaGVzXG5cbi5jdXN0b20tc3dpdGNoIHtcbiAgcGFkZGluZy1sZWZ0OiAkY3VzdG9tLXN3aXRjaC13aWR0aCArICRjdXN0b20tY29udHJvbC1ndXR0ZXI7XG5cbiAgLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgbGVmdDogLSgkY3VzdG9tLXN3aXRjaC13aWR0aCArICRjdXN0b20tY29udHJvbC1ndXR0ZXIpO1xuICAgICAgd2lkdGg6ICRjdXN0b20tc3dpdGNoLXdpZHRoO1xuICAgICAgcG9pbnRlci1ldmVudHM6IGFsbDtcbiAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgICAgIGJvcmRlci1yYWRpdXM6ICRjdXN0b20tc3dpdGNoLWluZGljYXRvci1ib3JkZXItcmFkaXVzO1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIHRvcDogYWRkKCgkZm9udC1zaXplLWJhc2UgKiAkbGluZS1oZWlnaHQtYmFzZSAtICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSkgLyAyLCAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJvcmRlci13aWR0aCAqIDIpO1xuICAgICAgbGVmdDogYWRkKC0oJGN1c3RvbS1zd2l0Y2gtd2lkdGggKyAkY3VzdG9tLWNvbnRyb2wtZ3V0dGVyKSwgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3JkZXItd2lkdGggKiAyKTtcbiAgICAgIHdpZHRoOiAkY3VzdG9tLXN3aXRjaC1pbmRpY2F0b3Itc2l6ZTtcbiAgICAgIGhlaWdodDogJGN1c3RvbS1zd2l0Y2gtaW5kaWNhdG9yLXNpemU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJvcmRlci1jb2xvcjtcbiAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgICAgIGJvcmRlci1yYWRpdXM6ICRjdXN0b20tc3dpdGNoLWluZGljYXRvci1ib3JkZXItcmFkaXVzO1xuICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbih0cmFuc2Zvcm0gLjE1cyBlYXNlLWluLW91dCwgJGN1c3RvbS1mb3Jtcy10cmFuc2l0aW9uKTtcbiAgICB9XG4gIH1cblxuICAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1iZztcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgkY3VzdG9tLXN3aXRjaC13aWR0aCAtICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSk7XG4gICAgfVxuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLWlucHV0OmRpc2FibGVkIHtcbiAgICAmOmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtZGlzYWJsZWQtYmcpO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIFNlbGVjdFxuLy9cbi8vIFJlcGxhY2VzIHRoZSBicm93c2VyIGRlZmF1bHQgc2VsZWN0IHdpdGggYSBjdXN0b20gb25lLCBtb3N0bHkgcHVsbGVkIGZyb21cbi8vIGh0dHBzOi8vcHJpbWVyLmdpdGh1Yi5pby8uXG4vL1xuXG4uY3VzdG9tLXNlbGVjdCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogJGN1c3RvbS1zZWxlY3QtaGVpZ2h0O1xuICBwYWRkaW5nOiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXkgKCRjdXN0b20tc2VsZWN0LXBhZGRpbmcteCArICRjdXN0b20tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nKSAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXkgJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14O1xuICBmb250LWZhbWlseTogJGN1c3RvbS1zZWxlY3QtZm9udC1mYW1pbHk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkY3VzdG9tLXNlbGVjdC1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogJGN1c3RvbS1zZWxlY3QtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkY3VzdG9tLXNlbGVjdC1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRjdXN0b20tc2VsZWN0LWNvbG9yO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBiYWNrZ3JvdW5kOiAkY3VzdG9tLXNlbGVjdC1iZyAkY3VzdG9tLXNlbGVjdC1iYWNrZ3JvdW5kO1xuICBib3JkZXI6ICRjdXN0b20tc2VsZWN0LWJvcmRlci13aWR0aCBzb2xpZCAkY3VzdG9tLXNlbGVjdC1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1zZWxlY3QtYm9yZGVyLXJhZGl1cywgMCk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1zZWxlY3QtYm94LXNoYWRvdyk7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG5cbiAgJjpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiAkY3VzdG9tLXNlbGVjdC1mb2N1cy1ib3JkZXItY29sb3I7XG4gICAgb3V0bGluZTogMDtcbiAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1zZWxlY3QtYm94LXNoYWRvdywgJGN1c3RvbS1zZWxlY3QtZm9jdXMtYm94LXNoYWRvdyk7XG4gICAgfSBAZWxzZSB7XG4gICAgICAvLyBBdm9pZCB1c2luZyBtaXhpbiBzbyB3ZSBjYW4gcGFzcyBjdXN0b20gZm9jdXMgc2hhZG93IHByb3Blcmx5XG4gICAgICBib3gtc2hhZG93OiAkY3VzdG9tLXNlbGVjdC1mb2N1cy1ib3gtc2hhZG93O1xuICAgIH1cblxuICAgICY6Oi1tcy12YWx1ZSB7XG4gICAgICAvLyBGb3IgdmlzdWFsIGNvbnNpc3RlbmN5IHdpdGggb3RoZXIgcGxhdGZvcm1zL2Jyb3dzZXJzLFxuICAgICAgLy8gc3VwcHJlc3MgdGhlIGRlZmF1bHQgd2hpdGUgdGV4dCBvbiBibHVlIGJhY2tncm91bmQgaGlnaGxpZ2h0IGdpdmVuIHRvXG4gICAgICAvLyB0aGUgc2VsZWN0ZWQgb3B0aW9uIHRleHQgd2hlbiB0aGUgKHN0aWxsIGNsb3NlZCkgPHNlbGVjdD4gcmVjZWl2ZXMgZm9jdXNcbiAgICAgIC8vIGluIElFIGFuZCAodW5kZXIgY2VydGFpbiBjb25kaXRpb25zKSBFZGdlLlxuICAgICAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTkzOTguXG4gICAgICBjb2xvcjogJGlucHV0LWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJnO1xuICAgIH1cbiAgfVxuXG4gICZbbXVsdGlwbGVdLFxuICAmW3NpemVdOm5vdChbc2l6ZT1cIjFcIl0pIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgcGFkZGluZy1yaWdodDogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14O1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIH1cblxuICAmOmRpc2FibGVkIHtcbiAgICBjb2xvcjogJGN1c3RvbS1zZWxlY3QtZGlzYWJsZWQtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1zZWxlY3QtZGlzYWJsZWQtYmc7XG4gIH1cblxuICAvLyBIaWRlcyB0aGUgZGVmYXVsdCBjYXJldCBpbiBJRTExXG4gICY6Oi1tcy1leHBhbmQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAvLyBSZW1vdmUgb3V0bGluZSBmcm9tIHNlbGVjdCBib3ggaW4gRkZcbiAgJjotbW96LWZvY3VzcmluZyB7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHRleHQtc2hhZG93OiAwIDAgMCAkY3VzdG9tLXNlbGVjdC1jb2xvcjtcbiAgfVxufVxuXG4uY3VzdG9tLXNlbGVjdC1zbSB7XG4gIGhlaWdodDogJGN1c3RvbS1zZWxlY3QtaGVpZ2h0LXNtO1xuICBwYWRkaW5nLXRvcDogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15LXNtO1xuICBwYWRkaW5nLWJvdHRvbTogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15LXNtO1xuICBwYWRkaW5nLWxlZnQ6ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteC1zbTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRjdXN0b20tc2VsZWN0LWZvbnQtc2l6ZS1zbSk7XG59XG5cbi5jdXN0b20tc2VsZWN0LWxnIHtcbiAgaGVpZ2h0OiAkY3VzdG9tLXNlbGVjdC1oZWlnaHQtbGc7XG4gIHBhZGRpbmctdG9wOiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXktbGc7XG4gIHBhZGRpbmctYm90dG9tOiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXktbGc7XG4gIHBhZGRpbmctbGVmdDogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14LWxnO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGN1c3RvbS1zZWxlY3QtZm9udC1zaXplLWxnKTtcbn1cblxuXG4vLyBGaWxlXG4vL1xuLy8gQ3VzdG9tIGZpbGUgaW5wdXQuXG5cbi5jdXN0b20tZmlsZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAkY3VzdG9tLWZpbGUtaGVpZ2h0O1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uY3VzdG9tLWZpbGUtaW5wdXQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDI7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6ICRjdXN0b20tZmlsZS1oZWlnaHQ7XG4gIG1hcmdpbjogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgb3BhY2l0eTogMDtcblxuICAmOmZvY3VzIH4gLmN1c3RvbS1maWxlLWxhYmVsIHtcbiAgICBib3JkZXItY29sb3I6ICRjdXN0b20tZmlsZS1mb2N1cy1ib3JkZXItY29sb3I7XG4gICAgYm94LXNoYWRvdzogJGN1c3RvbS1maWxlLWZvY3VzLWJveC1zaGFkb3c7XG4gIH1cblxuICAvLyBVc2UgW2Rpc2FibGVkXSBhbmQgOmRpc2FibGVkIHRvIHdvcmsgYXJvdW5kIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjgyNDdcbiAgJltkaXNhYmxlZF0gfiAuY3VzdG9tLWZpbGUtbGFiZWwsXG4gICY6ZGlzYWJsZWQgfiAuY3VzdG9tLWZpbGUtbGFiZWwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tZmlsZS1kaXNhYmxlZC1iZztcbiAgfVxuXG4gIEBlYWNoICRsYW5nLCAkdmFsdWUgaW4gJGN1c3RvbS1maWxlLXRleHQge1xuICAgICY6bGFuZygjeyRsYW5nfSkgfiAuY3VzdG9tLWZpbGUtbGFiZWw6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICR2YWx1ZTtcbiAgICB9XG4gIH1cblxuICB+IC5jdXN0b20tZmlsZS1sYWJlbFtkYXRhLWJyb3dzZV06OmFmdGVyIHtcbiAgICBjb250ZW50OiBhdHRyKGRhdGEtYnJvd3NlKTtcbiAgfVxufVxuXG4uY3VzdG9tLWZpbGUtbGFiZWwge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDE7XG4gIGhlaWdodDogJGN1c3RvbS1maWxlLWhlaWdodDtcbiAgcGFkZGluZzogJGN1c3RvbS1maWxlLXBhZGRpbmcteSAkY3VzdG9tLWZpbGUtcGFkZGluZy14O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBmb250LWZhbWlseTogJGN1c3RvbS1maWxlLWZvbnQtZmFtaWx5O1xuICBmb250LXdlaWdodDogJGN1c3RvbS1maWxlLWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGN1c3RvbS1maWxlLWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGN1c3RvbS1maWxlLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLWZpbGUtYmc7XG4gIGJvcmRlcjogJGN1c3RvbS1maWxlLWJvcmRlci13aWR0aCBzb2xpZCAkY3VzdG9tLWZpbGUtYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tZmlsZS1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLWZpbGUtYm94LXNoYWRvdyk7XG5cbiAgJjo6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIHotaW5kZXg6IDM7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiAkY3VzdG9tLWZpbGUtaGVpZ2h0LWlubmVyO1xuICAgIHBhZGRpbmc6ICRjdXN0b20tZmlsZS1wYWRkaW5nLXkgJGN1c3RvbS1maWxlLXBhZGRpbmcteDtcbiAgICBsaW5lLWhlaWdodDogJGN1c3RvbS1maWxlLWxpbmUtaGVpZ2h0O1xuICAgIGNvbG9yOiAkY3VzdG9tLWZpbGUtYnV0dG9uLWNvbG9yO1xuICAgIGNvbnRlbnQ6IFwiQnJvd3NlXCI7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGN1c3RvbS1maWxlLWJ1dHRvbi1iZyk7XG4gICAgYm9yZGVyLWxlZnQ6IGluaGVyaXQ7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwICRjdXN0b20tZmlsZS1ib3JkZXItcmFkaXVzICRjdXN0b20tZmlsZS1ib3JkZXItcmFkaXVzIDApO1xuICB9XG59XG5cbi8vIFJhbmdlXG4vL1xuLy8gU3R5bGUgcmFuZ2UgaW5wdXRzIHRoZSBzYW1lIGFjcm9zcyBicm93c2Vycy4gVmVuZG9yLXNwZWNpZmljIHJ1bGVzIGZvciBwc2V1ZG9cbi8vIGVsZW1lbnRzIGNhbm5vdCBiZSBtaXhlZC4gQXMgc3VjaCwgdGhlcmUgYXJlIG5vIHNoYXJlZCBzdHlsZXMgZm9yIGZvY3VzIG9yXG4vLyBhY3RpdmUgc3RhdGVzIG9uIHByZWZpeGVkIHNlbGVjdG9ycy5cblxuLmN1c3RvbS1yYW5nZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGFkZCgkY3VzdG9tLXJhbmdlLXRodW1iLWhlaWdodCwgJGN1c3RvbS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93LXdpZHRoICogMik7XG4gIHBhZGRpbmc6IDA7IC8vIE5lZWQgdG8gcmVzZXQgcGFkZGluZ1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYXBwZWFyYW5jZTogbm9uZTtcblxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiAwO1xuXG4gICAgLy8gUHNldWRvLWVsZW1lbnRzIG11c3QgYmUgc3BsaXQgYWNyb3NzIG11bHRpcGxlIHJ1bGVzZXRzIHRvIGhhdmUgYW4gZWZmZWN0LlxuICAgIC8vIE5vIGJveC1zaGFkb3coKSBtaXhpbiBmb3IgZm9jdXMgYWNjZXNzaWJpbGl0eS5cbiAgICAmOjotd2Via2l0LXNsaWRlci10aHVtYiB7IGJveC1zaGFkb3c6ICRjdXN0b20tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdzsgfVxuICAgICY6Oi1tb3otcmFuZ2UtdGh1bWIgICAgIHsgYm94LXNoYWRvdzogJGN1c3RvbS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93OyB9XG4gICAgJjo6LW1zLXRodW1iICAgICAgICAgICAgeyBib3gtc2hhZG93OiAkY3VzdG9tLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3c7IH1cbiAgfVxuXG4gICY6Oi1tb3otZm9jdXMtb3V0ZXIge1xuICAgIGJvcmRlcjogMDtcbiAgfVxuXG4gICY6Oi13ZWJraXQtc2xpZGVyLXRodW1iIHtcbiAgICB3aWR0aDogJGN1c3RvbS1yYW5nZS10aHVtYi13aWR0aDtcbiAgICBoZWlnaHQ6ICRjdXN0b20tcmFuZ2UtdGh1bWItaGVpZ2h0O1xuICAgIG1hcmdpbi10b3A6ICgkY3VzdG9tLXJhbmdlLXRyYWNrLWhlaWdodCAtICRjdXN0b20tcmFuZ2UtdGh1bWItaGVpZ2h0KSAvIDI7IC8vIFdlYmtpdCBzcGVjaWZpY1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRjdXN0b20tcmFuZ2UtdGh1bWItYmcpO1xuICAgIGJvcmRlcjogJGN1c3RvbS1yYW5nZS10aHVtYi1ib3JkZXI7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY3VzdG9tLXJhbmdlLXRodW1iLWJvcmRlci1yYWRpdXMpO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1yYW5nZS10aHVtYi1ib3gtc2hhZG93KTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRjdXN0b20tZm9ybXMtdHJhbnNpdGlvbik7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcblxuICAgICY6YWN0aXZlIHtcbiAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRjdXN0b20tcmFuZ2UtdGh1bWItYWN0aXZlLWJnKTtcbiAgICB9XG4gIH1cblxuICAmOjotd2Via2l0LXNsaWRlci1ydW5uYWJsZS10cmFjayB7XG4gICAgd2lkdGg6ICRjdXN0b20tcmFuZ2UtdHJhY2std2lkdGg7XG4gICAgaGVpZ2h0OiAkY3VzdG9tLXJhbmdlLXRyYWNrLWhlaWdodDtcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7IC8vIFdoeT9cbiAgICBjdXJzb3I6ICRjdXN0b20tcmFuZ2UtdHJhY2stY3Vyc29yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tcmFuZ2UtdHJhY2stYmc7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tcmFuZ2UtdHJhY2stYm9yZGVyLXJhZGl1cyk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLXJhbmdlLXRyYWNrLWJveC1zaGFkb3cpO1xuICB9XG5cbiAgJjo6LW1vei1yYW5nZS10aHVtYiB7XG4gICAgd2lkdGg6ICRjdXN0b20tcmFuZ2UtdGh1bWItd2lkdGg7XG4gICAgaGVpZ2h0OiAkY3VzdG9tLXJhbmdlLXRodW1iLWhlaWdodDtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLXJhbmdlLXRodW1iLWJnKTtcbiAgICBib3JkZXI6ICRjdXN0b20tcmFuZ2UtdGh1bWItYm9yZGVyO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1yYW5nZS10aHVtYi1ib3JkZXItcmFkaXVzKTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tcmFuZ2UtdGh1bWItYm94LXNoYWRvdyk7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkY3VzdG9tLWZvcm1zLXRyYW5zaXRpb24pO1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG5cbiAgICAmOmFjdGl2ZSB7XG4gICAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLXJhbmdlLXRodW1iLWFjdGl2ZS1iZyk7XG4gICAgfVxuICB9XG5cbiAgJjo6LW1vei1yYW5nZS10cmFjayB7XG4gICAgd2lkdGg6ICRjdXN0b20tcmFuZ2UtdHJhY2std2lkdGg7XG4gICAgaGVpZ2h0OiAkY3VzdG9tLXJhbmdlLXRyYWNrLWhlaWdodDtcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgY3Vyc29yOiAkY3VzdG9tLXJhbmdlLXRyYWNrLWN1cnNvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLXJhbmdlLXRyYWNrLWJnO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7IC8vIEZpcmVmb3ggc3BlY2lmaWM/XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY3VzdG9tLXJhbmdlLXRyYWNrLWJvcmRlci1yYWRpdXMpO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1yYW5nZS10cmFjay1ib3gtc2hhZG93KTtcbiAgfVxuXG4gICY6Oi1tcy10aHVtYiB7XG4gICAgd2lkdGg6ICRjdXN0b20tcmFuZ2UtdGh1bWItd2lkdGg7XG4gICAgaGVpZ2h0OiAkY3VzdG9tLXJhbmdlLXRodW1iLWhlaWdodDtcbiAgICBtYXJnaW4tdG9wOiAwOyAvLyBFZGdlIHNwZWNpZmljXG4gICAgbWFyZ2luLXJpZ2h0OiAkY3VzdG9tLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3ctd2lkdGg7IC8vIFdvcmthcm91bmQgdGhhdCBvdmVyZmxvd2VkIGJveC1zaGFkb3cgaXMgaGlkZGVuLlxuICAgIG1hcmdpbi1sZWZ0OiAkY3VzdG9tLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3ctd2lkdGg7ICAvLyBXb3JrYXJvdW5kIHRoYXQgb3ZlcmZsb3dlZCBib3gtc2hhZG93IGlzIGhpZGRlbi5cbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLXJhbmdlLXRodW1iLWJnKTtcbiAgICBib3JkZXI6ICRjdXN0b20tcmFuZ2UtdGh1bWItYm9yZGVyO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1yYW5nZS10aHVtYi1ib3JkZXItcmFkaXVzKTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tcmFuZ2UtdGh1bWItYm94LXNoYWRvdyk7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkY3VzdG9tLWZvcm1zLXRyYW5zaXRpb24pO1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG5cbiAgICAmOmFjdGl2ZSB7XG4gICAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLXJhbmdlLXRodW1iLWFjdGl2ZS1iZyk7XG4gICAgfVxuICB9XG5cbiAgJjo6LW1zLXRyYWNrIHtcbiAgICB3aWR0aDogJGN1c3RvbS1yYW5nZS10cmFjay13aWR0aDtcbiAgICBoZWlnaHQ6ICRjdXN0b20tcmFuZ2UtdHJhY2staGVpZ2h0O1xuICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBjdXJzb3I6ICRjdXN0b20tcmFuZ2UtdHJhY2stY3Vyc29yO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXdpZHRoOiAkY3VzdG9tLXJhbmdlLXRodW1iLWhlaWdodCAvIDI7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLXJhbmdlLXRyYWNrLWJveC1zaGFkb3cpO1xuICB9XG5cbiAgJjo6LW1zLWZpbGwtbG93ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tcmFuZ2UtdHJhY2stYmc7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY3VzdG9tLXJhbmdlLXRyYWNrLWJvcmRlci1yYWRpdXMpO1xuICB9XG5cbiAgJjo6LW1zLWZpbGwtdXBwZXIge1xuICAgIG1hcmdpbi1yaWdodDogMTVweDsgLy8gYXJiaXRyYXJ5P1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tcmFuZ2UtdHJhY2stYmc7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY3VzdG9tLXJhbmdlLXRyYWNrLWJvcmRlci1yYWRpdXMpO1xuICB9XG5cbiAgJjpkaXNhYmxlZCB7XG4gICAgJjo6LXdlYmtpdC1zbGlkZXItdGh1bWIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1yYW5nZS10aHVtYi1kaXNhYmxlZC1iZztcbiAgICB9XG5cbiAgICAmOjotd2Via2l0LXNsaWRlci1ydW5uYWJsZS10cmFjayB7XG4gICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgfVxuXG4gICAgJjo6LW1vei1yYW5nZS10aHVtYiB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLXJhbmdlLXRodW1iLWRpc2FibGVkLWJnO1xuICAgIH1cblxuICAgICY6Oi1tb3otcmFuZ2UtdHJhY2sge1xuICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgIH1cblxuICAgICY6Oi1tcy10aHVtYiB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLXJhbmdlLXRodW1iLWRpc2FibGVkLWJnO1xuICAgIH1cbiAgfVxufVxuXG4uY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSxcbi5jdXN0b20tZmlsZS1sYWJlbCxcbi5jdXN0b20tc2VsZWN0IHtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkY3VzdG9tLWZvcm1zLXRyYW5zaXRpb24pO1xufVxuIiwiLy8gQmFzZSBjbGFzc1xuLy9cbi8vIEtpY2tzdGFydCBhbnkgbmF2aWdhdGlvbiBjb21wb25lbnQgd2l0aCBhIHNldCBvZiBzdHlsZSByZXNldHMuIFdvcmtzIHdpdGhcbi8vIGA8bmF2PmBzLCBgPHVsPmBzIG9yIGA8b2w+YHMuXG5cbi5uYXYge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuLm5hdi1saW5rIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6ICRuYXYtbGluay1wYWRkaW5nLXkgJG5hdi1saW5rLXBhZGRpbmcteDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1kZWNvcmF0aW9uID09IG5vbmUsIG51bGwsIG5vbmUpO1xuXG4gIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gIC8vIERpc2FibGVkIHN0YXRlIGxpZ2h0ZW5zIHRleHRcbiAgJi5kaXNhYmxlZCB7XG4gICAgY29sb3I6ICRuYXYtbGluay1kaXNhYmxlZC1jb2xvcjtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gIH1cbn1cblxuLy9cbi8vIFRhYnNcbi8vXG5cbi5uYXYtdGFicyB7XG4gIGJvcmRlci1ib3R0b206ICRuYXYtdGFicy1ib3JkZXItd2lkdGggc29saWQgJG5hdi10YWJzLWJvcmRlci1jb2xvcjtcblxuICAubmF2LWxpbmsge1xuICAgIG1hcmdpbi1ib3R0b206IC0kbmF2LXRhYnMtYm9yZGVyLXdpZHRoO1xuICAgIGJvcmRlcjogJG5hdi10YWJzLWJvcmRlci13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkbmF2LXRhYnMtYm9yZGVyLXJhZGl1cyk7XG5cbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJG5hdi10YWJzLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yO1xuICAgIH1cblxuICAgICYuZGlzYWJsZWQge1xuICAgICAgY29sb3I6ICRuYXYtbGluay1kaXNhYmxlZC1jb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB9XG4gIH1cblxuICAubmF2LWxpbmsuYWN0aXZlLFxuICAubmF2LWl0ZW0uc2hvdyAubmF2LWxpbmsge1xuICAgIGNvbG9yOiAkbmF2LXRhYnMtbGluay1hY3RpdmUtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdi10YWJzLWxpbmstYWN0aXZlLWJnO1xuICAgIGJvcmRlci1jb2xvcjogJG5hdi10YWJzLWxpbmstYWN0aXZlLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gIC5kcm9wZG93bi1tZW51IHtcbiAgICAvLyBNYWtlIGRyb3Bkb3duIGJvcmRlciBvdmVybGFwIHRhYiBib3JkZXJcbiAgICBtYXJnaW4tdG9wOiAtJG5hdi10YWJzLWJvcmRlci13aWR0aDtcbiAgICAvLyBSZW1vdmUgdGhlIHRvcCByb3VuZGVkIGNvcm5lcnMgaGVyZSBzaW5jZSB0aGVyZSBpcyBhIGhhcmQgZWRnZSBhYm92ZSB0aGUgbWVudVxuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKDApO1xuICB9XG59XG5cblxuLy9cbi8vIFBpbGxzXG4vL1xuXG4ubmF2LXBpbGxzIHtcbiAgLm5hdi1saW5rIHtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRuYXYtcGlsbHMtYm9yZGVyLXJhZGl1cyk7XG4gIH1cblxuICAubmF2LWxpbmsuYWN0aXZlLFxuICAuc2hvdyA+IC5uYXYtbGluayB7XG4gICAgY29sb3I6ICRuYXYtcGlsbHMtbGluay1hY3RpdmUtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdi1waWxscy1saW5rLWFjdGl2ZS1iZztcbiAgfVxufVxuXG5cbi8vXG4vLyBKdXN0aWZpZWQgdmFyaWFudHNcbi8vXG5cbi5uYXYtZmlsbCB7XG4gID4gLm5hdi1saW5rLFxuICAubmF2LWl0ZW0ge1xuICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxufVxuXG4ubmF2LWp1c3RpZmllZCB7XG4gID4gLm5hdi1saW5rLFxuICAubmF2LWl0ZW0ge1xuICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgZmxleC1ncm93OiAxO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxufVxuXG5cbi8vIFRhYmJhYmxlIHRhYnNcbi8vXG4vLyBIaWRlIHRhYmJhYmxlIHBhbmVzIHRvIHN0YXJ0LCBzaG93IHRoZW0gd2hlbiBgLmFjdGl2ZWBcblxuLnRhYi1jb250ZW50IHtcbiAgPiAudGFiLXBhbmUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgPiAuYWN0aXZlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuIiwiLy8gQ29udGVudHNcbi8vXG4vLyBOYXZiYXJcbi8vIE5hdmJhciBicmFuZFxuLy8gTmF2YmFyIG5hdlxuLy8gTmF2YmFyIHRleHRcbi8vIE5hdmJhciBkaXZpZGVyXG4vLyBSZXNwb25zaXZlIG5hdmJhclxuLy8gTmF2YmFyIHBvc2l0aW9uXG4vLyBOYXZiYXIgdGhlbWVzXG5cblxuLy8gTmF2YmFyXG4vL1xuLy8gUHJvdmlkZSBhIHN0YXRpYyBuYXZiYXIgZnJvbSB3aGljaCB3ZSBleHBhbmQgdG8gY3JlYXRlIGZ1bGwtd2lkdGgsIGZpeGVkLCBhbmRcbi8vIG90aGVyIG5hdmJhciB2YXJpYXRpb25zLlxuXG4ubmF2YmFyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7IC8vIGFsbG93IHVzIHRvIGRvIHRoZSBsaW5lIGJyZWFrIGZvciBjb2xsYXBzaW5nIGNvbnRlbnRcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyAvLyBzcGFjZSBvdXQgYnJhbmQgZnJvbSBsb2dvXG4gIHBhZGRpbmc6ICRuYXZiYXItcGFkZGluZy15ICRuYXZiYXItcGFkZGluZy14O1xuXG4gIC8vIEJlY2F1c2UgZmxleCBwcm9wZXJ0aWVzIGFyZW4ndCBpbmhlcml0ZWQsIHdlIG5lZWQgdG8gcmVkZWNsYXJlIHRoZXNlIGZpcnN0XG4gIC8vIGZldyBwcm9wZXJ0aWVzIHNvIHRoYXQgY29udGVudCBuZXN0ZWQgd2l0aGluIGJlaGF2ZSBwcm9wZXJseS5cbiAgJWNvbnRhaW5lci1mbGV4LXByb3BlcnRpZXMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICB9XG5cbiAgLmNvbnRhaW5lcixcbiAgLmNvbnRhaW5lci1mbHVpZCB7XG4gICAgQGV4dGVuZCAlY29udGFpbmVyLWZsZXgtcHJvcGVydGllcztcbiAgfVxuXG4gIEBlYWNoICRicmVha3BvaW50LCAkY29udGFpbmVyLW1heC13aWR0aCBpbiAkY29udGFpbmVyLW1heC13aWR0aHMge1xuICAgID4gLmNvbnRhaW5lciN7YnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGNvbnRhaW5lci1tYXgtd2lkdGhzKX0ge1xuICAgICAgQGV4dGVuZCAlY29udGFpbmVyLWZsZXgtcHJvcGVydGllcztcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBOYXZiYXIgYnJhbmRcbi8vXG4vLyBVc2VkIGZvciBicmFuZCwgcHJvamVjdCwgb3Igc2l0ZSBuYW1lcy5cblxuLm5hdmJhci1icmFuZCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZy10b3A6ICRuYXZiYXItYnJhbmQtcGFkZGluZy15O1xuICBwYWRkaW5nLWJvdHRvbTogJG5hdmJhci1icmFuZC1wYWRkaW5nLXk7XG4gIG1hcmdpbi1yaWdodDogJG5hdmJhci1wYWRkaW5nLXg7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkbmF2YmFyLWJyYW5kLWZvbnQtc2l6ZSk7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxufVxuXG5cbi8vIE5hdmJhciBuYXZcbi8vXG4vLyBDdXN0b20gbmF2YmFyIG5hdmlnYXRpb24gKGRvZXNuJ3QgcmVxdWlyZSBgLm5hdmAsIGJ1dCBkb2VzIG1ha2UgdXNlIG9mIGAubmF2LWxpbmtgKS5cblxuLm5hdmJhci1uYXYge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyAvLyBjYW5ub3QgdXNlIGBpbmhlcml0YCB0byBnZXQgdGhlIGAubmF2YmFyYHMgdmFsdWVcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuXG4gIC5uYXYtbGluayB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cblxuICAuZHJvcGRvd24tbWVudSB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICBmbG9hdDogbm9uZTtcbiAgfVxufVxuXG5cbi8vIE5hdmJhciB0ZXh0XG4vL1xuLy9cblxuLm5hdmJhci10ZXh0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nLXRvcDogJG5hdi1saW5rLXBhZGRpbmcteTtcbiAgcGFkZGluZy1ib3R0b206ICRuYXYtbGluay1wYWRkaW5nLXk7XG59XG5cblxuLy8gUmVzcG9uc2l2ZSBuYXZiYXJcbi8vXG4vLyBDdXN0b20gc3R5bGVzIGZvciByZXNwb25zaXZlIGNvbGxhcHNpbmcgYW5kIHRvZ2dsaW5nIG9mIG5hdmJhciBjb250ZW50cy5cbi8vIFBvd2VyZWQgYnkgdGhlIGNvbGxhcHNlIEJvb3RzdHJhcCBKYXZhU2NyaXB0IHBsdWdpbi5cblxuLy8gV2hlbiBjb2xsYXBzZWQsIHByZXZlbnQgdGhlIHRvZ2dsZWFibGUgbmF2YmFyIGNvbnRlbnRzIGZyb20gYXBwZWFyaW5nIGluXG4vLyB0aGUgZGVmYXVsdCBmbGV4Ym94IHJvdyBvcmllbnRhdGlvbi4gUmVxdWlyZXMgdGhlIHVzZSBvZiBgZmxleC13cmFwOiB3cmFwYFxuLy8gb24gdGhlIGAubmF2YmFyYCBwYXJlbnQuXG4ubmF2YmFyLWNvbGxhcHNlIHtcbiAgZmxleC1iYXNpczogMTAwJTtcbiAgZmxleC1ncm93OiAxO1xuICAvLyBGb3IgYWx3YXlzIGV4cGFuZGVkIG9yIGV4dHJhIGZ1bGwgbmF2YmFycywgZW5zdXJlIGNvbnRlbnQgYWxpZ25zIGl0c2VsZlxuICAvLyBwcm9wZXJseSB2ZXJ0aWNhbGx5LiBDYW4gYmUgZWFzaWx5IG92ZXJyaWRkZW4gd2l0aCBmbGV4IHV0aWxpdGllcy5cbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLy8gQnV0dG9uIGZvciB0b2dnbGluZyB0aGUgbmF2YmFyIHdoZW4gaW4gaXRzIGNvbGxhcHNlZCBzdGF0ZVxuLm5hdmJhci10b2dnbGVyIHtcbiAgcGFkZGluZzogJG5hdmJhci10b2dnbGVyLXBhZGRpbmcteSAkbmF2YmFyLXRvZ2dsZXItcGFkZGluZy14O1xuICBAaW5jbHVkZSBmb250LXNpemUoJG5hdmJhci10b2dnbGVyLWZvbnQtc2l6ZSk7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgLy8gcmVtb3ZlIGRlZmF1bHQgYnV0dG9uIHN0eWxlXG4gIGJvcmRlcjogJGJvcmRlci13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDsgLy8gcmVtb3ZlIGRlZmF1bHQgYnV0dG9uIHN0eWxlXG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJG5hdmJhci10b2dnbGVyLWJvcmRlci1yYWRpdXMpO1xuXG4gIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxufVxuXG4vLyBLZWVwIGFzIGEgc2VwYXJhdGUgZWxlbWVudCBzbyBmb2xrcyBjYW4gZWFzaWx5IG92ZXJyaWRlIGl0IHdpdGggYW5vdGhlciBpY29uXG4vLyBvciBpbWFnZSBmaWxlIGFzIG5lZWRlZC5cbi5uYXZiYXItdG9nZ2xlci1pY29uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMS41ZW07XG4gIGhlaWdodDogMS41ZW07XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJhY2tncm91bmQ6IDUwJSAvIDEwMCUgMTAwJSBuby1yZXBlYXQ7XG59XG5cbi5uYXZiYXItbmF2LXNjcm9sbCB7XG4gIG1heC1oZWlnaHQ6ICRuYXZiYXItbmF2LXNjcm9sbC1tYXgtaGVpZ2h0O1xuICBvdmVyZmxvdy15OiBhdXRvO1xufVxuXG4vLyBHZW5lcmF0ZSBzZXJpZXMgb2YgYC5uYXZiYXItZXhwYW5kLSpgIHJlc3BvbnNpdmUgY2xhc3NlcyBmb3IgY29uZmlndXJpbmdcbi8vIHdoZXJlIHlvdXIgbmF2YmFyIGNvbGxhcHNlcy5cbi5uYXZiYXItZXhwYW5kIHtcbiAgQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgICAkbmV4dDogYnJlYWtwb2ludC1uZXh0KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRuZXh0LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAmI3skaW5maXh9IHtcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkYnJlYWtwb2ludCkge1xuICAgICAgICAlY29udGFpbmVyLW5hdmJhci1leHBhbmQtI3skYnJlYWtwb2ludH0ge1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgPiAuY29udGFpbmVyLFxuICAgICAgICA+IC5jb250YWluZXItZmx1aWQge1xuICAgICAgICAgIEBleHRlbmQgJWNvbnRhaW5lci1uYXZiYXItZXhwYW5kLSN7JGJyZWFrcG9pbnR9O1xuICAgICAgICB9XG5cbiAgICAgICAgQGVhY2ggJHNpemUsICRjb250YWluZXItbWF4LXdpZHRoIGluICRjb250YWluZXItbWF4LXdpZHRocyB7XG4gICAgICAgICAgPiAuY29udGFpbmVyI3ticmVha3BvaW50LWluZml4KCRzaXplLCAkY29udGFpbmVyLW1heC13aWR0aHMpfSB7XG4gICAgICAgICAgICBAZXh0ZW5kICVjb250YWluZXItbmF2YmFyLWV4cGFuZC0jeyRicmVha3BvaW50fTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkbmV4dCkge1xuICAgICAgICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblxuICAgICAgICAubmF2YmFyLW5hdiB7XG4gICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcblxuICAgICAgICAgIC5kcm9wZG93bi1tZW51IHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAubmF2LWxpbmsge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogJG5hdmJhci1uYXYtbGluay1wYWRkaW5nLXg7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6ICRuYXZiYXItbmF2LWxpbmstcGFkZGluZy14O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIEZvciBuZXN0aW5nIGNvbnRhaW5lcnMsIGhhdmUgdG8gcmVkZWNsYXJlIGZvciBhbGlnbm1lbnQgcHVycG9zZXNcbiAgICAgICAgJWNvbnRhaW5lci1uZXN0aW5nLSN7JGJyZWFrcG9pbnR9IHtcbiAgICAgICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICAgICAgfVxuXG4gICAgICAgID4gLmNvbnRhaW5lcixcbiAgICAgICAgPiAuY29udGFpbmVyLWZsdWlkIHtcbiAgICAgICAgICBAZXh0ZW5kICVjb250YWluZXItbmVzdGluZy0jeyRicmVha3BvaW50fTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBlYWNoICRzaXplLCAkY29udGFpbmVyLW1heC13aWR0aCBpbiAkY29udGFpbmVyLW1heC13aWR0aHMge1xuICAgICAgICAgID4gLmNvbnRhaW5lciN7YnJlYWtwb2ludC1pbmZpeCgkc2l6ZSwgJGNvbnRhaW5lci1tYXgtd2lkdGhzKX0ge1xuICAgICAgICAgICAgQGV4dGVuZCAlY29udGFpbmVyLW5lc3RpbmctI3skYnJlYWtwb2ludH07XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLm5hdmJhci1uYXYtc2Nyb2xsIHtcbiAgICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5uYXZiYXItY29sbGFwc2Uge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuICAgICAgICAgIC8vIENoYW5nZXMgZmxleC1iYXNlcyB0byBhdXRvIGJlY2F1c2Ugb2YgYW4gSUUxMCBidWdcbiAgICAgICAgICBmbGV4LWJhc2lzOiBhdXRvO1xuICAgICAgICB9XG5cbiAgICAgICAgLm5hdmJhci10b2dnbGVyIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLy8gTmF2YmFyIHRoZW1lc1xuLy9cbi8vIFN0eWxlcyBmb3Igc3dpdGNoaW5nIGJldHdlZW4gbmF2YmFycyB3aXRoIGxpZ2h0IG9yIGRhcmsgYmFja2dyb3VuZC5cblxuLy8gRGFyayBsaW5rcyBhZ2FpbnN0IGEgbGlnaHQgYmFja2dyb3VuZFxuLm5hdmJhci1saWdodCB7XG4gIC5uYXZiYXItYnJhbmQge1xuICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWJyYW5kLWNvbG9yO1xuXG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgICBjb2xvcjogJG5hdmJhci1saWdodC1icmFuZC1ob3Zlci1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAubmF2YmFyLW5hdiB7XG4gICAgLm5hdi1saW5rIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWNvbG9yO1xuXG4gICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICAgICAgY29sb3I6ICRuYXZiYXItbGlnaHQtaG92ZXItY29sb3I7XG4gICAgICB9XG5cbiAgICAgICYuZGlzYWJsZWQge1xuICAgICAgICBjb2xvcjogJG5hdmJhci1saWdodC1kaXNhYmxlZC1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuc2hvdyA+IC5uYXYtbGluayxcbiAgICAuYWN0aXZlID4gLm5hdi1saW5rLFxuICAgIC5uYXYtbGluay5zaG93LFxuICAgIC5uYXYtbGluay5hY3RpdmUge1xuICAgICAgY29sb3I6ICRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC5uYXZiYXItdG9nZ2xlciB7XG4gICAgY29sb3I6ICRuYXZiYXItbGlnaHQtY29sb3I7XG4gICAgYm9yZGVyLWNvbG9yOiAkbmF2YmFyLWxpZ2h0LXRvZ2dsZXItYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgLm5hdmJhci10b2dnbGVyLWljb24ge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJG5hdmJhci1saWdodC10b2dnbGVyLWljb24tYmcpO1xuICB9XG5cbiAgLm5hdmJhci10ZXh0IHtcbiAgICBjb2xvcjogJG5hdmJhci1saWdodC1jb2xvcjtcbiAgICBhIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvcjtcblxuICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gV2hpdGUgbGlua3MgYWdhaW5zdCBhIGRhcmsgYmFja2dyb3VuZFxuLm5hdmJhci1kYXJrIHtcbiAgLm5hdmJhci1icmFuZCB7XG4gICAgY29sb3I6ICRuYXZiYXItZGFyay1icmFuZC1jb2xvcjtcblxuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgICAgY29sb3I6ICRuYXZiYXItZGFyay1icmFuZC1ob3Zlci1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAubmF2YmFyLW5hdiB7XG4gICAgLm5hdi1saW5rIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstY29sb3I7XG5cbiAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgICAgICBjb2xvcjogJG5hdmJhci1kYXJrLWhvdmVyLWNvbG9yO1xuICAgICAgfVxuXG4gICAgICAmLmRpc2FibGVkIHtcbiAgICAgICAgY29sb3I6ICRuYXZiYXItZGFyay1kaXNhYmxlZC1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuc2hvdyA+IC5uYXYtbGluayxcbiAgICAuYWN0aXZlID4gLm5hdi1saW5rLFxuICAgIC5uYXYtbGluay5zaG93LFxuICAgIC5uYXYtbGluay5hY3RpdmUge1xuICAgICAgY29sb3I6ICRuYXZiYXItZGFyay1hY3RpdmUtY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLm5hdmJhci10b2dnbGVyIHtcbiAgICBjb2xvcjogJG5hdmJhci1kYXJrLWNvbG9yO1xuICAgIGJvcmRlci1jb2xvcjogJG5hdmJhci1kYXJrLXRvZ2dsZXItYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgLm5hdmJhci10b2dnbGVyLWljb24ge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJG5hdmJhci1kYXJrLXRvZ2dsZXItaWNvbi1iZyk7XG4gIH1cblxuICAubmF2YmFyLXRleHQge1xuICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstY29sb3I7XG4gICAgYSB7XG4gICAgICBjb2xvcjogJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvcjtcblxuICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIEJhc2Ugc3R5bGVzXG4vL1xuXG4uY2FyZCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgbWluLXdpZHRoOiAwOyAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMjI3NDAjaXNzdWVjb21tZW50LTMwNTg2ODEwNlxuICBoZWlnaHQ6ICRjYXJkLWhlaWdodDtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2FyZC1iZztcbiAgYmFja2dyb3VuZC1jbGlwOiBib3JkZXItYm94O1xuICBib3JkZXI6ICRjYXJkLWJvcmRlci13aWR0aCBzb2xpZCAkY2FyZC1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGNhcmQtYm9yZGVyLXJhZGl1cyk7XG5cbiAgPiBociB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG5cbiAgPiAubGlzdC1ncm91cCB7XG4gICAgYm9yZGVyLXRvcDogaW5oZXJpdDtcbiAgICBib3JkZXItYm90dG9tOiBpbmhlcml0O1xuXG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG4gICAgfVxuXG4gICAgJjpsYXN0LWNoaWxkICB7XG4gICAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG4gICAgfVxuICB9XG5cbiAgLy8gRHVlIHRvIHNwZWNpZmljaXR5IG9mIHRoZSBhYm92ZSBzZWxlY3RvciAoYC5jYXJkID4gLmxpc3QtZ3JvdXBgKSwgd2UgbXVzdFxuICAvLyB1c2UgYSBjaGlsZCBzZWxlY3RvciBoZXJlIHRvIHByZXZlbnQgZG91YmxlIGJvcmRlcnMuXG4gID4gLmNhcmQtaGVhZGVyICsgLmxpc3QtZ3JvdXAsXG4gID4gLmxpc3QtZ3JvdXAgKyAuY2FyZC1mb290ZXIge1xuICAgIGJvcmRlci10b3A6IDA7XG4gIH1cbn1cblxuLmNhcmQtYm9keSB7XG4gIC8vIEVuYWJsZSBgZmxleC1ncm93OiAxYCBmb3IgZGVja3MgYW5kIGdyb3VwcyBzbyB0aGF0IGNhcmQgYmxvY2tzIHRha2UgdXBcbiAgLy8gYXMgbXVjaCBzcGFjZSBhcyBwb3NzaWJsZSwgZW5zdXJpbmcgZm9vdGVycyBhcmUgYWxpZ25lZCB0byB0aGUgYm90dG9tLlxuICBmbGV4OiAxIDEgYXV0bztcbiAgLy8gV29ya2Fyb3VuZCBmb3IgdGhlIGltYWdlIHNpemUgYnVnIGluIElFXG4gIC8vIFNlZTogaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMjg4NTVcbiAgbWluLWhlaWdodDogMXB4O1xuICBwYWRkaW5nOiAkY2FyZC1zcGFjZXIteDtcbiAgY29sb3I6ICRjYXJkLWNvbG9yO1xufVxuXG4uY2FyZC10aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206ICRjYXJkLXNwYWNlci15O1xufVxuXG4uY2FyZC1zdWJ0aXRsZSB7XG4gIG1hcmdpbi10b3A6IC0kY2FyZC1zcGFjZXIteSAvIDI7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5jYXJkLXRleHQ6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5jYXJkLWxpbmsge1xuICBAaW5jbHVkZSBob3ZlcigpIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICArIC5jYXJkLWxpbmsge1xuICAgIG1hcmdpbi1sZWZ0OiAkY2FyZC1zcGFjZXIteDtcbiAgfVxufVxuXG4vL1xuLy8gT3B0aW9uYWwgdGV4dHVhbCBjYXBzXG4vL1xuXG4uY2FyZC1oZWFkZXIge1xuICBwYWRkaW5nOiAkY2FyZC1zcGFjZXIteSAkY2FyZC1zcGFjZXIteDtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gUmVtb3ZlcyB0aGUgZGVmYXVsdCBtYXJnaW4tYm90dG9tIG9mIDxoTj5cbiAgY29sb3I6ICRjYXJkLWNhcC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNhcmQtY2FwLWJnO1xuICBib3JkZXItYm90dG9tOiAkY2FyZC1ib3JkZXItd2lkdGggc29saWQgJGNhcmQtYm9yZGVyLWNvbG9yO1xuXG4gICY6Zmlyc3QtY2hpbGQge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyAkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzIDAgMCk7XG4gIH1cbn1cblxuLmNhcmQtZm9vdGVyIHtcbiAgcGFkZGluZzogJGNhcmQtc3BhY2VyLXkgJGNhcmQtc3BhY2VyLXg7XG4gIGNvbG9yOiAkY2FyZC1jYXAtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjYXJkLWNhcC1iZztcbiAgYm9yZGVyLXRvcDogJGNhcmQtYm9yZGVyLXdpZHRoIHNvbGlkICRjYXJkLWJvcmRlci1jb2xvcjtcblxuICAmOmxhc3QtY2hpbGQge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCAwICRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMgJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG4gIH1cbn1cblxuXG4vL1xuLy8gSGVhZGVyIG5hdnNcbi8vXG5cbi5jYXJkLWhlYWRlci10YWJzIHtcbiAgbWFyZ2luLXJpZ2h0OiAtJGNhcmQtc3BhY2VyLXggLyAyO1xuICBtYXJnaW4tYm90dG9tOiAtJGNhcmQtc3BhY2VyLXk7XG4gIG1hcmdpbi1sZWZ0OiAtJGNhcmQtc3BhY2VyLXggLyAyO1xuICBib3JkZXItYm90dG9tOiAwO1xufVxuXG4uY2FyZC1oZWFkZXItcGlsbHMge1xuICBtYXJnaW4tcmlnaHQ6IC0kY2FyZC1zcGFjZXIteCAvIDI7XG4gIG1hcmdpbi1sZWZ0OiAtJGNhcmQtc3BhY2VyLXggLyAyO1xufVxuXG4vLyBDYXJkIGltYWdlXG4uY2FyZC1pbWctb3ZlcmxheSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICBwYWRkaW5nOiAkY2FyZC1pbWctb3ZlcmxheS1wYWRkaW5nO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpO1xufVxuXG4uY2FyZC1pbWcsXG4uY2FyZC1pbWctdG9wLFxuLmNhcmQtaW1nLWJvdHRvbSB7XG4gIGZsZXgtc2hyaW5rOiAwOyAvLyBGb3IgSUU6IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjkzOTZcbiAgd2lkdGg6IDEwMCU7IC8vIFJlcXVpcmVkIGJlY2F1c2Ugd2UgdXNlIGZsZXhib3ggYW5kIHRoaXMgaW5oZXJlbnRseSBhcHBsaWVzIGFsaWduLXNlbGY6IHN0cmV0Y2hcbn1cblxuLmNhcmQtaW1nLFxuLmNhcmQtaW1nLXRvcCB7XG4gIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpO1xufVxuXG4uY2FyZC1pbWcsXG4uY2FyZC1pbWctYm90dG9tIHtcbiAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG59XG5cblxuLy8gQ2FyZCBkZWNrXG5cbi5jYXJkLWRlY2sge1xuICAuY2FyZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogJGNhcmQtZGVjay1tYXJnaW47XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgIG1hcmdpbi1yaWdodDogLSRjYXJkLWRlY2stbWFyZ2luO1xuICAgIG1hcmdpbi1sZWZ0OiAtJGNhcmQtZGVjay1tYXJnaW47XG5cbiAgICAuY2FyZCB7XG4gICAgICAvLyBGbGV4YnVncyAjNDogaHR0cHM6Ly9naXRodWIuY29tL3BoaWxpcHdhbHRvbi9mbGV4YnVncyNmbGV4YnVnLTRcbiAgICAgIGZsZXg6IDEgMCAwJTtcbiAgICAgIG1hcmdpbi1yaWdodDogJGNhcmQtZGVjay1tYXJnaW47XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyAvLyBPdmVycmlkZSB0aGUgZGVmYXVsdFxuICAgICAgbWFyZ2luLWxlZnQ6ICRjYXJkLWRlY2stbWFyZ2luO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vXG4vLyBDYXJkIGdyb3Vwc1xuLy9cblxuLmNhcmQtZ3JvdXAge1xuICAvLyBUaGUgY2hpbGQgc2VsZWN0b3IgYWxsb3dzIG5lc3RlZCBgLmNhcmRgIHdpdGhpbiBgLmNhcmQtZ3JvdXBgXG4gIC8vIHRvIGRpc3BsYXkgcHJvcGVybHkuXG4gID4gLmNhcmQge1xuICAgIG1hcmdpbi1ib3R0b206ICRjYXJkLWdyb3VwLW1hcmdpbjtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAgLy8gVGhlIGNoaWxkIHNlbGVjdG9yIGFsbG93cyBuZXN0ZWQgYC5jYXJkYCB3aXRoaW4gYC5jYXJkLWdyb3VwYFxuICAgIC8vIHRvIGRpc3BsYXkgcHJvcGVybHkuXG4gICAgPiAuY2FyZCB7XG4gICAgICAvLyBGbGV4YnVncyAjNDogaHR0cHM6Ly9naXRodWIuY29tL3BoaWxpcHdhbHRvbi9mbGV4YnVncyNmbGV4YnVnLTRcbiAgICAgIGZsZXg6IDEgMCAwJTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAgICsgLmNhcmQge1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDA7XG4gICAgICB9XG5cbiAgICAgIC8vIEhhbmRsZSByb3VuZGVkIGNvcm5lcnNcbiAgICAgIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoMCk7XG5cbiAgICAgICAgICAuY2FyZC1pbWctdG9wLFxuICAgICAgICAgIC5jYXJkLWhlYWRlciB7XG4gICAgICAgICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gICAgICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbiAgICAgICAgICB9XG4gICAgICAgICAgLmNhcmQtaW1nLWJvdHRvbSxcbiAgICAgICAgICAuY2FyZC1mb290ZXIge1xuICAgICAgICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJjpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKDApO1xuXG4gICAgICAgICAgLmNhcmQtaW1nLXRvcCxcbiAgICAgICAgICAuY2FyZC1oZWFkZXIge1xuICAgICAgICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuICAgICAgICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcbiAgICAgICAgICB9XG4gICAgICAgICAgLmNhcmQtaW1nLWJvdHRvbSxcbiAgICAgICAgICAuY2FyZC1mb290ZXIge1xuICAgICAgICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4vL1xuLy8gQ29sdW1uc1xuLy9cblxuLmNhcmQtY29sdW1ucyB7XG4gIC5jYXJkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkY2FyZC1jb2x1bW5zLW1hcmdpbjtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgICBjb2x1bW4tY291bnQ6ICRjYXJkLWNvbHVtbnMtY291bnQ7XG4gICAgY29sdW1uLWdhcDogJGNhcmQtY29sdW1ucy1nYXA7XG4gICAgb3JwaGFuczogMTtcbiAgICB3aWRvd3M6IDE7XG5cbiAgICAuY2FyZCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IC8vIERvbid0IGxldCB0aGVtIHZlcnRpY2FsbHkgc3BhbiBtdWx0aXBsZSBjb2x1bW5zXG4gICAgICB3aWR0aDogMTAwJTsgLy8gRG9uJ3QgbGV0IHRoZWlyIHdpZHRoIGNoYW5nZVxuICAgIH1cbiAgfVxufVxuXG5cbi8vXG4vLyBBY2NvcmRpb25cbi8vXG5cbi5hY2NvcmRpb24ge1xuICBvdmVyZmxvdy1hbmNob3I6IG5vbmU7XG5cbiAgPiAuY2FyZCB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICY6bm90KDpsYXN0LW9mLXR5cGUpIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygwKTtcbiAgICB9XG5cbiAgICAmOm5vdCg6Zmlyc3Qtb2YtdHlwZSkge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoMCk7XG4gICAgfVxuXG4gICAgPiAuY2FyZC1oZWFkZXIge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwKTtcbiAgICAgIG1hcmdpbi1ib3R0b206IC0kY2FyZC1ib3JkZXItd2lkdGg7XG4gICAgfVxuICB9XG59XG4iLCIuYnJlYWRjcnVtYiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgcGFkZGluZzogJGJyZWFkY3J1bWItcGFkZGluZy15ICRicmVhZGNydW1iLXBhZGRpbmcteDtcbiAgbWFyZ2luLWJvdHRvbTogJGJyZWFkY3J1bWItbWFyZ2luLWJvdHRvbTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRicmVhZGNydW1iLWZvbnQtc2l6ZSk7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRicmVhZGNydW1iLWJnO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRicmVhZGNydW1iLWJvcmRlci1yYWRpdXMpO1xufVxuXG4uYnJlYWRjcnVtYi1pdGVtIHtcbiAgLy8gVGhlIHNlcGFyYXRvciBiZXR3ZWVuIGJyZWFkY3J1bWJzIChieSBkZWZhdWx0LCBhIGZvcndhcmQtc2xhc2g6IFwiL1wiKVxuICArIC5icmVhZGNydW1iLWl0ZW0ge1xuICAgIHBhZGRpbmctbGVmdDogJGJyZWFkY3J1bWItaXRlbS1wYWRkaW5nO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyAvLyBTdXBwcmVzcyBpbmxpbmUgc3BhY2luZ3MgYW5kIHVuZGVybGluaW5nIG9mIHRoZSBzZXBhcmF0b3JcbiAgICAgIHBhZGRpbmctcmlnaHQ6ICRicmVhZGNydW1iLWl0ZW0tcGFkZGluZztcbiAgICAgIGNvbG9yOiAkYnJlYWRjcnVtYi1kaXZpZGVyLWNvbG9yO1xuICAgICAgY29udGVudDogZXNjYXBlLXN2ZygkYnJlYWRjcnVtYi1kaXZpZGVyKTtcbiAgICB9XG4gIH1cblxuICAvLyBJRTktMTEgaGFjayB0byBwcm9wZXJseSBoYW5kbGUgaHlwZXJsaW5rIHVuZGVybGluZXMgZm9yIGJyZWFkY3J1bWJzIGJ1aWx0XG4gIC8vIHdpdGhvdXQgYDx1bD5gcy4gVGhlIGA6OmJlZm9yZWAgcHNldWRvLWVsZW1lbnQgZ2VuZXJhdGVzIGFuIGVsZW1lbnRcbiAgLy8gKndpdGhpbiogdGhlIC5icmVhZGNydW1iLWl0ZW0gYW5kIHRoZXJlYnkgaW5oZXJpdHMgdGhlIGB0ZXh0LWRlY29yYXRpb25gLlxuICAvL1xuICAvLyBUbyB0cmljayBJRSBpbnRvIHN1cHByZXNzaW5nIHRoZSB1bmRlcmxpbmUsIHdlIGdpdmUgdGhlIHBzZXVkby1lbGVtZW50IGFuXG4gIC8vIHVuZGVybGluZSBhbmQgdGhlbiBpbW1lZGlhdGVseSByZW1vdmUgaXQuXG4gICsgLmJyZWFkY3J1bWItaXRlbTpob3Zlcjo6YmVmb3JlIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgfVxuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tZHVwbGljYXRlLXNlbGVjdG9yc1xuICArIC5icmVhZGNydW1iLWl0ZW06aG92ZXI6OmJlZm9yZSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgJi5hY3RpdmUge1xuICAgIGNvbG9yOiAkYnJlYWRjcnVtYi1hY3RpdmUtY29sb3I7XG4gIH1cbn1cbiIsIi5wYWdpbmF0aW9uIHtcbiAgZGlzcGxheTogZmxleDtcbiAgQGluY2x1ZGUgbGlzdC11bnN0eWxlZCgpO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCk7XG59XG5cbi5wYWdlLWxpbmsge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAkcGFnaW5hdGlvbi1wYWRkaW5nLXkgJHBhZ2luYXRpb24tcGFkZGluZy14O1xuICBtYXJnaW4tbGVmdDogLSRwYWdpbmF0aW9uLWJvcmRlci13aWR0aDtcbiAgbGluZS1oZWlnaHQ6ICRwYWdpbmF0aW9uLWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJHBhZ2luYXRpb24tY29sb3I7XG4gIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstZGVjb3JhdGlvbiA9PSBub25lLCBudWxsLCBub25lKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2luYXRpb24tYmc7XG4gIGJvcmRlcjogJHBhZ2luYXRpb24tYm9yZGVyLXdpZHRoIHNvbGlkICRwYWdpbmF0aW9uLWJvcmRlci1jb2xvcjtcblxuICAmOmhvdmVyIHtcbiAgICB6LWluZGV4OiAyO1xuICAgIGNvbG9yOiAkcGFnaW5hdGlvbi1ob3Zlci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2luYXRpb24taG92ZXItYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkcGFnaW5hdGlvbi1ob3Zlci1ib3JkZXItY29sb3I7XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICB6LWluZGV4OiAzO1xuICAgIG91dGxpbmU6ICRwYWdpbmF0aW9uLWZvY3VzLW91dGxpbmU7XG4gICAgYm94LXNoYWRvdzogJHBhZ2luYXRpb24tZm9jdXMtYm94LXNoYWRvdztcbiAgfVxufVxuXG4ucGFnZS1pdGVtIHtcbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgLnBhZ2UtbGluayB7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG4gICAgfVxuICB9XG4gICY6bGFzdC1jaGlsZCB7XG4gICAgLnBhZ2UtbGluayB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbiAgICB9XG4gIH1cblxuICAmLmFjdGl2ZSAucGFnZS1saW5rIHtcbiAgICB6LWluZGV4OiAzO1xuICAgIGNvbG9yOiAkcGFnaW5hdGlvbi1hY3RpdmUtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2luYXRpb24tYWN0aXZlLWJnO1xuICAgIGJvcmRlci1jb2xvcjogJHBhZ2luYXRpb24tYWN0aXZlLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gICYuZGlzYWJsZWQgLnBhZ2UtbGluayB7XG4gICAgY29sb3I6ICRwYWdpbmF0aW9uLWRpc2FibGVkLWNvbG9yO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIC8vIE9waW5pb25hdGVkOiByZW1vdmUgdGhlIFwiaGFuZFwiIGN1cnNvciBzZXQgcHJldmlvdXNseSBmb3IgLnBhZ2UtbGlua1xuICAgIGN1cnNvcjogYXV0bztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnaW5hdGlvbi1kaXNhYmxlZC1iZztcbiAgICBib3JkZXItY29sb3I6ICRwYWdpbmF0aW9uLWRpc2FibGVkLWJvcmRlci1jb2xvcjtcbiAgfVxufVxuXG5cbi8vXG4vLyBTaXppbmdcbi8vXG5cbi5wYWdpbmF0aW9uLWxnIHtcbiAgQGluY2x1ZGUgcGFnaW5hdGlvbi1zaXplKCRwYWdpbmF0aW9uLXBhZGRpbmcteS1sZywgJHBhZ2luYXRpb24tcGFkZGluZy14LWxnLCAkZm9udC1zaXplLWxnLCAkbGluZS1oZWlnaHQtbGcsICRwYWdpbmF0aW9uLWJvcmRlci1yYWRpdXMtbGcpO1xufVxuXG4ucGFnaW5hdGlvbi1zbSB7XG4gIEBpbmNsdWRlIHBhZ2luYXRpb24tc2l6ZSgkcGFnaW5hdGlvbi1wYWRkaW5nLXktc20sICRwYWdpbmF0aW9uLXBhZGRpbmcteC1zbSwgJGZvbnQtc2l6ZS1zbSwgJGxpbmUtaGVpZ2h0LXNtLCAkcGFnaW5hdGlvbi1ib3JkZXItcmFkaXVzLXNtKTtcbn1cbiIsIi8vIFBhZ2luYXRpb25cblxuQG1peGluIHBhZ2luYXRpb24tc2l6ZSgkcGFkZGluZy15LCAkcGFkZGluZy14LCAkZm9udC1zaXplLCAkbGluZS1oZWlnaHQsICRib3JkZXItcmFkaXVzKSB7XG4gIC5wYWdlLWxpbmsge1xuICAgIHBhZGRpbmc6ICRwYWRkaW5nLXkgJHBhZGRpbmcteDtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoJGZvbnQtc2l6ZSk7XG4gICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodDtcbiAgfVxuXG4gIC5wYWdlLWl0ZW0ge1xuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgLnBhZ2UtbGluayB7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG4gICAgICB9XG4gICAgfVxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAucGFnZS1saW5rIHtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBCYXNlIGNsYXNzXG4vL1xuLy8gUmVxdWlyZXMgb25lIG9mIHRoZSBjb250ZXh0dWFsLCBjb2xvciBtb2RpZmllciBjbGFzc2VzIGZvciBgY29sb3JgIGFuZFxuLy8gYGJhY2tncm91bmQtY29sb3JgLlxuXG4uYmFkZ2Uge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6ICRiYWRnZS1wYWRkaW5nLXkgJGJhZGdlLXBhZGRpbmcteDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRiYWRnZS1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogJGJhZGdlLWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogMTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJhZGdlLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRiYWRnZS10cmFuc2l0aW9uKTtcblxuICBAYXQtcm9vdCBhI3smfSB7XG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgLy8gRW1wdHkgYmFkZ2VzIGNvbGxhcHNlIGF1dG9tYXRpY2FsbHlcbiAgJjplbXB0eSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4vLyBRdWljayBmaXggZm9yIGJhZGdlcyBpbiBidXR0b25zXG4uYnRuIC5iYWRnZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAtMXB4O1xufVxuXG4vLyBQaWxsIGJhZGdlc1xuLy9cbi8vIE1ha2UgdGhlbSBleHRyYSByb3VuZGVkIHdpdGggYSBtb2RpZmllciB0byByZXBsYWNlIHYzJ3MgYmFkZ2VzLlxuXG4uYmFkZ2UtcGlsbCB7XG4gIHBhZGRpbmctcmlnaHQ6ICRiYWRnZS1waWxsLXBhZGRpbmcteDtcbiAgcGFkZGluZy1sZWZ0OiAkYmFkZ2UtcGlsbC1wYWRkaW5nLXg7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJhZGdlLXBpbGwtYm9yZGVyLXJhZGl1cyk7XG59XG5cbi8vIENvbG9yc1xuLy9cbi8vIENvbnRleHR1YWwgdmFyaWF0aW9ucyAobGlua2VkIGJhZGdlcyBnZXQgZGFya2VyIG9uIDpob3ZlcikuXG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAuYmFkZ2UtI3skY29sb3J9IHtcbiAgICBAaW5jbHVkZSBiYWRnZS12YXJpYW50KCR2YWx1ZSk7XG4gIH1cbn1cbiIsIkBtaXhpbiBiYWRnZS12YXJpYW50KCRiZykge1xuICBjb2xvcjogY29sb3IteWlxKCRiZyk7XG4gIGJhY2tncm91bmQtY29sb3I6ICRiZztcblxuICBAYXQtcm9vdCBhI3smfSB7XG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgICBjb2xvcjogY29sb3IteWlxKCRiZyk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGJnLCAxMCUpO1xuICAgIH1cblxuICAgICY6Zm9jdXMsXG4gICAgJi5mb2N1cyB7XG4gICAgICBvdXRsaW5lOiAwO1xuICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGJhZGdlLWZvY3VzLXdpZHRoIHJnYmEoJGJnLCAuNSk7XG4gICAgfVxuICB9XG59XG4iLCIuanVtYm90cm9uIHtcbiAgcGFkZGluZzogJGp1bWJvdHJvbi1wYWRkaW5nICgkanVtYm90cm9uLXBhZGRpbmcgLyAyKTtcbiAgbWFyZ2luLWJvdHRvbTogJGp1bWJvdHJvbi1wYWRkaW5nO1xuICBjb2xvcjogJGp1bWJvdHJvbi1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGp1bWJvdHJvbi1iZztcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cy1sZyk7XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAgIHBhZGRpbmc6ICgkanVtYm90cm9uLXBhZGRpbmcgKiAyKSAkanVtYm90cm9uLXBhZGRpbmc7XG4gIH1cbn1cblxuLmp1bWJvdHJvbi1mbHVpZCB7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwKTtcbn1cbiIsIi8vXG4vLyBCYXNlIHN0eWxlc1xuLy9cblxuLmFsZXJ0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiAkYWxlcnQtcGFkZGluZy15ICRhbGVydC1wYWRkaW5nLXg7XG4gIG1hcmdpbi1ib3R0b206ICRhbGVydC1tYXJnaW4tYm90dG9tO1xuICBib3JkZXI6ICRhbGVydC1ib3JkZXItd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGFsZXJ0LWJvcmRlci1yYWRpdXMpO1xufVxuXG4vLyBIZWFkaW5ncyBmb3IgbGFyZ2VyIGFsZXJ0c1xuLmFsZXJ0LWhlYWRpbmcge1xuICAvLyBTcGVjaWZpZWQgdG8gcHJldmVudCBjb25mbGljdHMgb2YgY2hhbmdpbmcgJGhlYWRpbmdzLWNvbG9yXG4gIGNvbG9yOiBpbmhlcml0O1xufVxuXG4vLyBQcm92aWRlIGNsYXNzIGZvciBsaW5rcyB0aGF0IG1hdGNoIGFsZXJ0c1xuLmFsZXJ0LWxpbmsge1xuICBmb250LXdlaWdodDogJGFsZXJ0LWxpbmstZm9udC13ZWlnaHQ7XG59XG5cblxuLy8gRGlzbWlzc2libGUgYWxlcnRzXG4vL1xuLy8gRXhwYW5kIHRoZSByaWdodCBwYWRkaW5nIGFuZCBhY2NvdW50IGZvciB0aGUgY2xvc2UgYnV0dG9uJ3MgcG9zaXRpb25pbmcuXG5cbi5hbGVydC1kaXNtaXNzaWJsZSB7XG4gIHBhZGRpbmctcmlnaHQ6ICRjbG9zZS1mb250LXNpemUgKyAkYWxlcnQtcGFkZGluZy14ICogMjtcblxuICAvLyBBZGp1c3QgY2xvc2UgbGluayBwb3NpdGlvblxuICAuY2xvc2Uge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgei1pbmRleDogMjtcbiAgICBwYWRkaW5nOiAkYWxlcnQtcGFkZGluZy15ICRhbGVydC1wYWRkaW5nLXg7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gIH1cbn1cblxuXG4vLyBBbHRlcm5hdGUgc3R5bGVzXG4vL1xuLy8gR2VuZXJhdGUgY29udGV4dHVhbCBtb2RpZmllciBjbGFzc2VzIGZvciBjb2xvcml6aW5nIHRoZSBhbGVydC5cblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIC5hbGVydC0jeyRjb2xvcn0ge1xuICAgIEBpbmNsdWRlIGFsZXJ0LXZhcmlhbnQodGhlbWUtY29sb3ItbGV2ZWwoJGNvbG9yLCAkYWxlcnQtYmctbGV2ZWwpLCB0aGVtZS1jb2xvci1sZXZlbCgkY29sb3IsICRhbGVydC1ib3JkZXItbGV2ZWwpLCB0aGVtZS1jb2xvci1sZXZlbCgkY29sb3IsICRhbGVydC1jb2xvci1sZXZlbCkpO1xuICB9XG59XG4iLCJAbWl4aW4gYWxlcnQtdmFyaWFudCgkYmFja2dyb3VuZCwgJGJvcmRlciwgJGNvbG9yKSB7XG4gIGNvbG9yOiAkY29sb3I7XG4gIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRiYWNrZ3JvdW5kKTtcbiAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xuXG4gIGhyIHtcbiAgICBib3JkZXItdG9wLWNvbG9yOiBkYXJrZW4oJGJvcmRlciwgNSUpO1xuICB9XG5cbiAgLmFsZXJ0LWxpbmsge1xuICAgIGNvbG9yOiBkYXJrZW4oJGNvbG9yLCAxMCUpO1xuICB9XG59XG4iLCIvLyBEaXNhYmxlIGFuaW1hdGlvbiBpZiB0cmFuc2l0aW9ucyBhcmUgZGlzYWJsZWRcbkBpZiAkZW5hYmxlLXRyYW5zaXRpb25zIHtcbiAgQGtleWZyYW1lcyBwcm9ncmVzcy1iYXItc3RyaXBlcyB7XG4gICAgZnJvbSB7IGJhY2tncm91bmQtcG9zaXRpb246ICRwcm9ncmVzcy1oZWlnaHQgMDsgfVxuICAgIHRvIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAwOyB9XG4gIH1cbn1cblxuLnByb2dyZXNzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgaGVpZ2h0OiAkcHJvZ3Jlc3MtaGVpZ2h0O1xuICBvdmVyZmxvdzogaGlkZGVuOyAvLyBmb3JjZSByb3VuZGVkIGNvcm5lcnMgYnkgY3JvcHBpbmcgaXRcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkcHJvZ3Jlc3MtZm9udC1zaXplKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHByb2dyZXNzLWJnO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRwcm9ncmVzcy1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkcHJvZ3Jlc3MtYm94LXNoYWRvdyk7XG59XG5cbi5wcm9ncmVzcy1iYXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY29sb3I6ICRwcm9ncmVzcy1iYXItY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHByb2dyZXNzLWJhci1iZztcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkcHJvZ3Jlc3MtYmFyLXRyYW5zaXRpb24pO1xufVxuXG4ucHJvZ3Jlc3MtYmFyLXN0cmlwZWQge1xuICBAaW5jbHVkZSBncmFkaWVudC1zdHJpcGVkKCk7XG4gIGJhY2tncm91bmQtc2l6ZTogJHByb2dyZXNzLWhlaWdodCAkcHJvZ3Jlc3MtaGVpZ2h0O1xufVxuXG5AaWYgJGVuYWJsZS10cmFuc2l0aW9ucyB7XG4gIC5wcm9ncmVzcy1iYXItYW5pbWF0ZWQge1xuICAgIGFuaW1hdGlvbjogJHByb2dyZXNzLWJhci1hbmltYXRpb24tdGltaW5nIHByb2dyZXNzLWJhci1zdHJpcGVzO1xuXG4gICAgQGlmICRlbmFibGUtcHJlZmVycy1yZWR1Y2VkLW1vdGlvbi1tZWRpYS1xdWVyeSB7XG4gICAgICBAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAgICAgICBhbmltYXRpb246IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIubWVkaWEge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbn1cblxuLm1lZGlhLWJvZHkge1xuICBmbGV4OiAxO1xufVxuIiwiLy8gQmFzZSBjbGFzc1xuLy9cbi8vIEVhc2lseSB1c2FibGUgb24gPHVsPiwgPG9sPiwgb3IgPGRpdj4uXG5cbi5saXN0LWdyb3VwIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAvLyBObyBuZWVkIHRvIHNldCBsaXN0LXN0eWxlOiBub25lOyBzaW5jZSAubGlzdC1ncm91cC1pdGVtIGlzIGJsb2NrIGxldmVsXG4gIHBhZGRpbmctbGVmdDogMDsgLy8gcmVzZXQgcGFkZGluZyBiZWNhdXNlIHVsIGFuZCBvbFxuICBtYXJnaW4tYm90dG9tOiAwO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRsaXN0LWdyb3VwLWJvcmRlci1yYWRpdXMpO1xufVxuXG5cbi8vIEludGVyYWN0aXZlIGxpc3QgaXRlbXNcbi8vXG4vLyBVc2UgYW5jaG9yIG9yIGJ1dHRvbiBlbGVtZW50cyBpbnN0ZWFkIG9mIGBsaWBzIG9yIGBkaXZgcyB0byBjcmVhdGUgaW50ZXJhY3RpdmVcbi8vIGxpc3QgaXRlbXMuIEluY2x1ZGVzIGFuIGV4dHJhIGAuYWN0aXZlYCBtb2RpZmllciBjbGFzcyBmb3Igc2VsZWN0ZWQgaXRlbXMuXG5cbi5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uIHtcbiAgd2lkdGg6IDEwMCU7IC8vIEZvciBgPGJ1dHRvbj5gcyAoYW5jaG9ycyBiZWNvbWUgMTAwJSBieSBkZWZhdWx0IHRob3VnaClcbiAgY29sb3I6ICRsaXN0LWdyb3VwLWFjdGlvbi1jb2xvcjtcbiAgdGV4dC1hbGlnbjogaW5oZXJpdDsgLy8gRm9yIGA8YnV0dG9uPmBzIChhbmNob3JzIGluaGVyaXQpXG5cbiAgLy8gSG92ZXIgc3RhdGVcbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgei1pbmRleDogMTsgLy8gUGxhY2UgaG92ZXIvZm9jdXMgaXRlbXMgYWJvdmUgdGhlaXIgc2libGluZ3MgZm9yIHByb3BlciBib3JkZXIgc3R5bGluZ1xuICAgIGNvbG9yOiAkbGlzdC1ncm91cC1hY3Rpb24taG92ZXItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaXN0LWdyb3VwLWhvdmVyLWJnO1xuICB9XG5cbiAgJjphY3RpdmUge1xuICAgIGNvbG9yOiAkbGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtYmc7XG4gIH1cbn1cblxuXG4vLyBJbmRpdmlkdWFsIGxpc3QgaXRlbXNcbi8vXG4vLyBVc2Ugb24gYGxpYHMgb3IgYGRpdmBzIHdpdGhpbiB0aGUgYC5saXN0LWdyb3VwYCBwYXJlbnQuXG5cbi5saXN0LWdyb3VwLWl0ZW0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAkbGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteSAkbGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteDtcbiAgY29sb3I6ICRsaXN0LWdyb3VwLWNvbG9yO1xuICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWRlY29yYXRpb24gPT0gbm9uZSwgbnVsbCwgbm9uZSk7XG4gIGJhY2tncm91bmQtY29sb3I6ICRsaXN0LWdyb3VwLWJnO1xuICBib3JkZXI6ICRsaXN0LWdyb3VwLWJvcmRlci13aWR0aCBzb2xpZCAkbGlzdC1ncm91cC1ib3JkZXItY29sb3I7XG5cbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoaW5oZXJpdCk7XG4gIH1cblxuICAmOmxhc3QtY2hpbGQge1xuICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKGluaGVyaXQpO1xuICB9XG5cbiAgJi5kaXNhYmxlZCxcbiAgJjpkaXNhYmxlZCB7XG4gICAgY29sb3I6ICRsaXN0LWdyb3VwLWRpc2FibGVkLWNvbG9yO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaXN0LWdyb3VwLWRpc2FibGVkLWJnO1xuICB9XG5cbiAgLy8gSW5jbHVkZSBib3RoIGhlcmUgZm9yIGA8YT5gcyBhbmQgYDxidXR0b24+YHNcbiAgJi5hY3RpdmUge1xuICAgIHotaW5kZXg6IDI7IC8vIFBsYWNlIGFjdGl2ZSBpdGVtcyBhYm92ZSB0aGVpciBzaWJsaW5ncyBmb3IgcHJvcGVyIGJvcmRlciBzdHlsaW5nXG4gICAgY29sb3I6ICRsaXN0LWdyb3VwLWFjdGl2ZS1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlzdC1ncm91cC1hY3RpdmUtYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkbGlzdC1ncm91cC1hY3RpdmUtYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgJiArICYge1xuICAgIGJvcmRlci10b3Atd2lkdGg6IDA7XG5cbiAgICAmLmFjdGl2ZSB7XG4gICAgICBtYXJnaW4tdG9wOiAtJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoO1xuICAgICAgYm9yZGVyLXRvcC13aWR0aDogJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIEhvcml6b250YWxcbi8vXG4vLyBDaGFuZ2UgdGhlIGxheW91dCBvZiBsaXN0IGdyb3VwIGl0ZW1zIGZyb20gdmVydGljYWwgKGRlZmF1bHQpIHRvIGhvcml6b250YWwuXG5cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIC5saXN0LWdyb3VwLWhvcml6b250YWwjeyRpbmZpeH0ge1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcblxuICAgICAgPiAubGlzdC1ncm91cC1pdGVtIHtcbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1cygkbGlzdC1ncm91cC1ib3JkZXItcmFkaXVzKTtcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJpZ2h0LXJhZGl1cygwKTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXMoJGxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1cyk7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1cygwKTtcbiAgICAgICAgfVxuXG4gICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgKyAubGlzdC1ncm91cC1pdGVtIHtcbiAgICAgICAgICBib3JkZXItdG9wLXdpZHRoOiAkbGlzdC1ncm91cC1ib3JkZXItd2lkdGg7XG4gICAgICAgICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG5cbiAgICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogLSRsaXN0LWdyb3VwLWJvcmRlci13aWR0aDtcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAkbGlzdC1ncm91cC1ib3JkZXItd2lkdGg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLy8gRmx1c2ggbGlzdCBpdGVtc1xuLy9cbi8vIFJlbW92ZSBib3JkZXJzIGFuZCBib3JkZXItcmFkaXVzIHRvIGtlZXAgbGlzdCBncm91cCBpdGVtcyBlZGdlLXRvLWVkZ2UuIE1vc3Rcbi8vIHVzZWZ1bCB3aXRoaW4gb3RoZXIgY29tcG9uZW50cyAoZS5nLiwgY2FyZHMpLlxuXG4ubGlzdC1ncm91cC1mbHVzaCB7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCk7XG5cbiAgPiAubGlzdC1ncm91cC1pdGVtIHtcbiAgICBib3JkZXItd2lkdGg6IDAgMCAkbGlzdC1ncm91cC1ib3JkZXItd2lkdGg7XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBDb250ZXh0dWFsIHZhcmlhbnRzXG4vL1xuLy8gQWRkIG1vZGlmaWVyIGNsYXNzZXMgdG8gY2hhbmdlIHRleHQgYW5kIGJhY2tncm91bmQgY29sb3Igb24gaW5kaXZpZHVhbCBpdGVtcy5cbi8vIE9yZ2FuaXphdGlvbmFsbHksIHRoaXMgbXVzdCBjb21lIGFmdGVyIHRoZSBgOmhvdmVyYCBzdGF0ZXMuXG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICBAaW5jbHVkZSBsaXN0LWdyb3VwLWl0ZW0tdmFyaWFudCgkY29sb3IsIHRoZW1lLWNvbG9yLWxldmVsKCRjb2xvciwgLTkpLCB0aGVtZS1jb2xvci1sZXZlbCgkY29sb3IsIDYpKTtcbn1cbiIsIi8vIExpc3QgR3JvdXBzXG5cbkBtaXhpbiBsaXN0LWdyb3VwLWl0ZW0tdmFyaWFudCgkc3RhdGUsICRiYWNrZ3JvdW5kLCAkY29sb3IpIHtcbiAgLmxpc3QtZ3JvdXAtaXRlbS0jeyRzdGF0ZX0ge1xuICAgIGNvbG9yOiAkY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG5cbiAgICAmLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb24ge1xuICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgICAgIGNvbG9yOiAkY29sb3I7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYmFja2dyb3VuZCwgNSUpO1xuICAgICAgfVxuXG4gICAgICAmLmFjdGl2ZSB7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIuY2xvc2Uge1xuICBmbG9hdDogcmlnaHQ7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkY2xvc2UtZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRjbG9zZS1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGNvbG9yOiAkY2xvc2UtY29sb3I7XG4gIHRleHQtc2hhZG93OiAkY2xvc2UtdGV4dC1zaGFkb3c7XG4gIG9wYWNpdHk6IC41O1xuXG4gIC8vIE92ZXJyaWRlIDxhPidzIGhvdmVyIHN0eWxlXG4gIEBpbmNsdWRlIGhvdmVyKCkge1xuICAgIGNvbG9yOiAkY2xvc2UtY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgJjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKSB7XG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgICBvcGFjaXR5OiAuNzU7XG4gICAgfVxuICB9XG59XG5cbi8vIEFkZGl0aW9uYWwgcHJvcGVydGllcyBmb3IgYnV0dG9uIHZlcnNpb25cbi8vIGlPUyByZXF1aXJlcyB0aGUgYnV0dG9uIGVsZW1lbnQgaW5zdGVhZCBvZiBhbiBhbmNob3IgdGFnLlxuLy8gSWYgeW91IHdhbnQgdGhlIGFuY2hvciB2ZXJzaW9uLCBpdCByZXF1aXJlcyBgaHJlZj1cIiNcImAuXG4vLyBTZWUgaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvRXZlbnRzL2NsaWNrI1NhZmFyaV9Nb2JpbGVcblxuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuYnV0dG9uLmNsb3NlIHtcbiAgcGFkZGluZzogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcbn1cblxuLy8gRnV0dXJlLXByb29mIGRpc2FibGluZyBvZiBjbGlja3Mgb24gYDxhPmAgZWxlbWVudHNcblxuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuYS5jbG9zZS5kaXNhYmxlZCB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuIiwiLnRvYXN0IHtcbiAgLy8gUHJldmVudHMgZnJvbSBzaHJpbmtpbmcgaW4gSUUxMSwgd2hlbiBpbiBhIGZsZXggY29udGFpbmVyXG4gIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI4MzQxXG4gIGZsZXgtYmFzaXM6ICR0b2FzdC1tYXgtd2lkdGg7XG4gIG1heC13aWR0aDogJHRvYXN0LW1heC13aWR0aDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCR0b2FzdC1mb250LXNpemUpO1xuICBjb2xvcjogJHRvYXN0LWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdG9hc3QtYmFja2dyb3VuZC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiAkdG9hc3QtYm9yZGVyLXdpZHRoIHNvbGlkICR0b2FzdC1ib3JkZXItY29sb3I7XG4gIGJveC1zaGFkb3c6ICR0b2FzdC1ib3gtc2hhZG93O1xuICBvcGFjaXR5OiAwO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCR0b2FzdC1ib3JkZXItcmFkaXVzKTtcblxuICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIG1hcmdpbi1ib3R0b206ICR0b2FzdC1wYWRkaW5nLXg7XG4gIH1cblxuICAmLnNob3dpbmcge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAmLnNob3cge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAmLmhpZGUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLnRvYXN0LWhlYWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6ICR0b2FzdC1wYWRkaW5nLXkgJHRvYXN0LXBhZGRpbmcteDtcbiAgY29sb3I6ICR0b2FzdC1oZWFkZXItY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0b2FzdC1oZWFkZXItYmFja2dyb3VuZC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyLWJvdHRvbTogJHRvYXN0LWJvcmRlci13aWR0aCBzb2xpZCAkdG9hc3QtaGVhZGVyLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoc3VidHJhY3QoJHRvYXN0LWJvcmRlci1yYWRpdXMsICR0b2FzdC1ib3JkZXItd2lkdGgpKTtcbn1cblxuLnRvYXN0LWJvZHkge1xuICBwYWRkaW5nOiAkdG9hc3QtcGFkZGluZy14OyAvLyBhcHBseSB0byBib3RoIHZlcnRpY2FsIGFuZCBob3Jpem9udGFsXG59XG4iLCIvLyAubW9kYWwtb3BlbiAgICAgIC0gYm9keSBjbGFzcyBmb3Iga2lsbGluZyB0aGUgc2Nyb2xsXG4vLyAubW9kYWwgICAgICAgICAgIC0gY29udGFpbmVyIHRvIHNjcm9sbCB3aXRoaW5cbi8vIC5tb2RhbC1kaWFsb2cgICAgLSBwb3NpdGlvbmluZyBzaGVsbCBmb3IgdGhlIGFjdHVhbCBtb2RhbFxuLy8gLm1vZGFsLWNvbnRlbnQgICAtIGFjdHVhbCBtb2RhbCB3LyBiZyBhbmQgY29ybmVycyBhbmQgc3R1ZmZcblxuXG4ubW9kYWwtb3BlbiB7XG4gIC8vIEtpbGwgdGhlIHNjcm9sbCBvbiB0aGUgYm9keVxuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gIC5tb2RhbCB7XG4gICAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gIH1cbn1cblxuLy8gQ29udGFpbmVyIHRoYXQgdGhlIG1vZGFsIHNjcm9sbHMgd2l0aGluXG4ubW9kYWwge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1tb2RhbDtcbiAgZGlzcGxheTogbm9uZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgLy8gUHJldmVudCBDaHJvbWUgb24gV2luZG93cyBmcm9tIGFkZGluZyBhIGZvY3VzIG91dGxpbmUuIEZvciBkZXRhaWxzLCBzZWVcbiAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMTA5NTEuXG4gIG91dGxpbmU6IDA7XG4gIC8vIFdlIGRlbGliZXJhdGVseSBkb24ndCB1c2UgYC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtgIGR1ZSB0byBhXG4gIC8vIGduYXJseSBpT1MgU2FmYXJpIGJ1ZzogaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1ODM0MlxuICAvLyBTZWUgYWxzbyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE3Njk1XG59XG5cbi8vIFNoZWxsIGRpdiB0byBwb3NpdGlvbiB0aGUgbW9kYWwgd2l0aCBib3R0b20gcGFkZGluZ1xuLm1vZGFsLWRpYWxvZyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IGF1dG87XG4gIG1hcmdpbjogJG1vZGFsLWRpYWxvZy1tYXJnaW47XG4gIC8vIGFsbG93IGNsaWNrcyB0byBwYXNzIHRocm91Z2ggZm9yIGN1c3RvbSBjbGljayBoYW5kbGluZyB0byBjbG9zZSBtb2RhbFxuICBwb2ludGVyLWV2ZW50czogbm9uZTtcblxuICAvLyBXaGVuIGZhZGluZyBpbiB0aGUgbW9kYWwsIGFuaW1hdGUgaXQgdG8gc2xpZGUgZG93blxuICAubW9kYWwuZmFkZSAmIHtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRtb2RhbC10cmFuc2l0aW9uKTtcbiAgICB0cmFuc2Zvcm06ICRtb2RhbC1mYWRlLXRyYW5zZm9ybTtcbiAgfVxuICAubW9kYWwuc2hvdyAmIHtcbiAgICB0cmFuc2Zvcm06ICRtb2RhbC1zaG93LXRyYW5zZm9ybTtcbiAgfVxuXG4gIC8vIFdoZW4gdHJ5aW5nIHRvIGNsb3NlLCBhbmltYXRlIGZvY3VzIHRvIHNjYWxlXG4gIC5tb2RhbC5tb2RhbC1zdGF0aWMgJiB7XG4gICAgdHJhbnNmb3JtOiAkbW9kYWwtc2NhbGUtdHJhbnNmb3JtO1xuICB9XG59XG5cbi5tb2RhbC1kaWFsb2ctc2Nyb2xsYWJsZSB7XG4gIGRpc3BsYXk6IGZsZXg7IC8vIElFMTAvMTFcbiAgbWF4LWhlaWdodDogc3VidHJhY3QoMTAwJSwgJG1vZGFsLWRpYWxvZy1tYXJnaW4gKiAyKTtcblxuICAubW9kYWwtY29udGVudCB7XG4gICAgbWF4LWhlaWdodDogc3VidHJhY3QoMTAwdmgsICRtb2RhbC1kaWFsb2ctbWFyZ2luICogMik7IC8vIElFMTAvMTFcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG5cbiAgLm1vZGFsLWhlYWRlcixcbiAgLm1vZGFsLWZvb3RlciB7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gIH1cblxuICAubW9kYWwtYm9keSB7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgfVxufVxuXG4ubW9kYWwtZGlhbG9nLWNlbnRlcmVkIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWluLWhlaWdodDogc3VidHJhY3QoMTAwJSwgJG1vZGFsLWRpYWxvZy1tYXJnaW4gKiAyKTtcblxuICAvLyBFbnN1cmUgYG1vZGFsLWRpYWxvZy1jZW50ZXJlZGAgZXh0ZW5kcyB0aGUgZnVsbCBoZWlnaHQgb2YgdGhlIHZpZXcgKElFMTAvMTEpXG4gICY6OmJlZm9yZSB7XG4gICAgZGlzcGxheTogYmxvY2s7IC8vIElFMTBcbiAgICBoZWlnaHQ6IHN1YnRyYWN0KDEwMHZoLCAkbW9kYWwtZGlhbG9nLW1hcmdpbiAqIDIpO1xuICAgIGhlaWdodDogbWluLWNvbnRlbnQ7IC8vIFJlc2V0IGhlaWdodCB0byAwIGV4Y2VwdCBvbiBJRVxuICAgIGNvbnRlbnQ6IFwiXCI7XG4gIH1cblxuICAvLyBFbnN1cmUgYC5tb2RhbC1ib2R5YCBzaG93cyBzY3JvbGxiYXIgKElFMTAvMTEpXG4gICYubW9kYWwtZGlhbG9nLXNjcm9sbGFibGUge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgaGVpZ2h0OiAxMDAlO1xuXG4gICAgLm1vZGFsLWNvbnRlbnQge1xuICAgICAgbWF4LWhlaWdodDogbm9uZTtcbiAgICB9XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgY29udGVudDogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuLy8gQWN0dWFsIG1vZGFsXG4ubW9kYWwtY29udGVudCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgd2lkdGg6IDEwMCU7IC8vIEVuc3VyZSBgLm1vZGFsLWNvbnRlbnRgIGV4dGVuZHMgdGhlIGZ1bGwgd2lkdGggb2YgdGhlIHBhcmVudCBgLm1vZGFsLWRpYWxvZ2BcbiAgLy8gY291bnRlcmFjdCB0aGUgcG9pbnRlci1ldmVudHM6IG5vbmU7IGluIHRoZSAubW9kYWwtZGlhbG9nXG4gIGNvbG9yOiAkbW9kYWwtY29udGVudC1jb2xvcjtcbiAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gIGJhY2tncm91bmQtY29sb3I6ICRtb2RhbC1jb250ZW50LWJnO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXI6ICRtb2RhbC1jb250ZW50LWJvcmRlci13aWR0aCBzb2xpZCAkbW9kYWwtY29udGVudC1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy14cyk7XG4gIC8vIFJlbW92ZSBmb2N1cyBvdXRsaW5lIGZyb20gb3BlbmVkIG1vZGFsXG4gIG91dGxpbmU6IDA7XG59XG5cbi8vIE1vZGFsIGJhY2tncm91bmRcbi5tb2RhbC1iYWNrZHJvcCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4LW1vZGFsLWJhY2tkcm9wO1xuICB3aWR0aDogMTAwdnc7XG4gIGhlaWdodDogMTAwdmg7XG4gIGJhY2tncm91bmQtY29sb3I6ICRtb2RhbC1iYWNrZHJvcC1iZztcblxuICAvLyBGYWRlIGZvciBiYWNrZHJvcFxuICAmLmZhZGUgeyBvcGFjaXR5OiAwOyB9XG4gICYuc2hvdyB7IG9wYWNpdHk6ICRtb2RhbC1iYWNrZHJvcC1vcGFjaXR5OyB9XG59XG5cbi8vIE1vZGFsIGhlYWRlclxuLy8gVG9wIHNlY3Rpb24gb2YgdGhlIG1vZGFsIHcvIHRpdGxlIGFuZCBkaXNtaXNzXG4ubW9kYWwtaGVhZGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7IC8vIHNvIHRoZSBjbG9zZSBidG4gYWx3YXlzIHN0YXlzIG9uIHRoZSB1cHBlciByaWdodCBjb3JuZXJcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyAvLyBQdXQgbW9kYWwgaGVhZGVyIGVsZW1lbnRzICh0aXRsZSBhbmQgZGlzbWlzcykgb24gb3Bwb3NpdGUgZW5kc1xuICBwYWRkaW5nOiAkbW9kYWwtaGVhZGVyLXBhZGRpbmc7XG4gIGJvcmRlci1ib3R0b206ICRtb2RhbC1oZWFkZXItYm9yZGVyLXdpZHRoIHNvbGlkICRtb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkbW9kYWwtY29udGVudC1pbm5lci1ib3JkZXItcmFkaXVzKTtcblxuICAuY2xvc2Uge1xuICAgIHBhZGRpbmc6ICRtb2RhbC1oZWFkZXItcGFkZGluZztcbiAgICAvLyBhdXRvIG9uIHRoZSBsZWZ0IGZvcmNlIGljb24gdG8gdGhlIHJpZ2h0IGV2ZW4gd2hlbiB0aGVyZSBpcyBubyAubW9kYWwtdGl0bGVcbiAgICBtYXJnaW46ICgtJG1vZGFsLWhlYWRlci1wYWRkaW5nLXkpICgtJG1vZGFsLWhlYWRlci1wYWRkaW5nLXgpICgtJG1vZGFsLWhlYWRlci1wYWRkaW5nLXkpIGF1dG87XG4gIH1cbn1cblxuLy8gVGl0bGUgdGV4dCB3aXRoaW4gaGVhZGVyXG4ubW9kYWwtdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBsaW5lLWhlaWdodDogJG1vZGFsLXRpdGxlLWxpbmUtaGVpZ2h0O1xufVxuXG4vLyBNb2RhbCBib2R5XG4vLyBXaGVyZSBhbGwgbW9kYWwgY29udGVudCByZXNpZGVzIChzaWJsaW5nIG9mIC5tb2RhbC1oZWFkZXIgYW5kIC5tb2RhbC1mb290ZXIpXG4ubW9kYWwtYm9keSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLy8gRW5hYmxlIGBmbGV4LWdyb3c6IDFgIHNvIHRoYXQgdGhlIGJvZHkgdGFrZSB1cCBhcyBtdWNoIHNwYWNlIGFzIHBvc3NpYmxlXG4gIC8vIHdoZW4gdGhlcmUgc2hvdWxkIGJlIGEgZml4ZWQgaGVpZ2h0IG9uIGAubW9kYWwtZGlhbG9nYC5cbiAgZmxleDogMSAxIGF1dG87XG4gIHBhZGRpbmc6ICRtb2RhbC1pbm5lci1wYWRkaW5nO1xufVxuXG4vLyBGb290ZXIgKGZvciBhY3Rpb25zKVxuLm1vZGFsLWZvb3RlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgLy8gdmVydGljYWxseSBjZW50ZXJcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDsgLy8gUmlnaHQgYWxpZ24gYnV0dG9ucyB3aXRoIGZsZXggcHJvcGVydHkgYmVjYXVzZSB0ZXh0LWFsaWduIGRvZXNuJ3Qgd29yayBvbiBmbGV4IGl0ZW1zXG4gIHBhZGRpbmc6ICRtb2RhbC1pbm5lci1wYWRkaW5nIC0gJG1vZGFsLWZvb3Rlci1tYXJnaW4tYmV0d2VlbiAvIDI7XG4gIGJvcmRlci10b3A6ICRtb2RhbC1mb290ZXItYm9yZGVyLXdpZHRoIHNvbGlkICRtb2RhbC1mb290ZXItYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygkbW9kYWwtY29udGVudC1pbm5lci1ib3JkZXItcmFkaXVzKTtcblxuICAvLyBQbGFjZSBtYXJnaW4gYmV0d2VlbiBmb290ZXIgZWxlbWVudHNcbiAgLy8gVGhpcyBzb2x1dGlvbiBpcyBmYXIgZnJvbSBpZGVhbCBiZWNhdXNlIG9mIHRoZSB1bml2ZXJzYWwgc2VsZWN0b3IgdXNhZ2UsXG4gIC8vIGJ1dCBpcyBuZWVkZWQgdG8gZml4IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjQ4MDBcbiAgPiAqIHtcbiAgICBtYXJnaW46ICRtb2RhbC1mb290ZXItbWFyZ2luLWJldHdlZW4gLyAyO1xuICB9XG59XG5cbi8vIE1lYXN1cmUgc2Nyb2xsYmFyIHdpZHRoIGZvciBwYWRkaW5nIGJvZHkgZHVyaW5nIG1vZGFsIHNob3cvaGlkZVxuLm1vZGFsLXNjcm9sbGJhci1tZWFzdXJlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IC05OTk5cHg7XG4gIHdpZHRoOiA1MHB4O1xuICBoZWlnaHQ6IDUwcHg7XG4gIG92ZXJmbG93OiBzY3JvbGw7XG59XG5cbi8vIFNjYWxlIHVwIHRoZSBtb2RhbFxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAvLyBBdXRvbWF0aWNhbGx5IHNldCBtb2RhbCdzIHdpZHRoIGZvciBsYXJnZXIgdmlld3BvcnRzXG4gIC5tb2RhbC1kaWFsb2cge1xuICAgIG1heC13aWR0aDogJG1vZGFsLW1kO1xuICAgIG1hcmdpbjogJG1vZGFsLWRpYWxvZy1tYXJnaW4teS1zbS11cCBhdXRvO1xuICB9XG5cbiAgLm1vZGFsLWRpYWxvZy1zY3JvbGxhYmxlIHtcbiAgICBtYXgtaGVpZ2h0OiBzdWJ0cmFjdCgxMDAlLCAkbW9kYWwtZGlhbG9nLW1hcmdpbi15LXNtLXVwICogMik7XG5cbiAgICAubW9kYWwtY29udGVudCB7XG4gICAgICBtYXgtaGVpZ2h0OiBzdWJ0cmFjdCgxMDB2aCwgJG1vZGFsLWRpYWxvZy1tYXJnaW4teS1zbS11cCAqIDIpO1xuICAgIH1cbiAgfVxuXG4gIC5tb2RhbC1kaWFsb2ctY2VudGVyZWQge1xuICAgIG1pbi1oZWlnaHQ6IHN1YnRyYWN0KDEwMCUsICRtb2RhbC1kaWFsb2ctbWFyZ2luLXktc20tdXAgKiAyKTtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBoZWlnaHQ6IHN1YnRyYWN0KDEwMHZoLCAkbW9kYWwtZGlhbG9nLW1hcmdpbi15LXNtLXVwICogMik7XG4gICAgICBoZWlnaHQ6IG1pbi1jb250ZW50O1xuICAgIH1cbiAgfVxuXG4gIC5tb2RhbC1jb250ZW50IHtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRtb2RhbC1jb250ZW50LWJveC1zaGFkb3ctc20tdXApO1xuICB9XG5cbiAgLm1vZGFsLXNtIHsgbWF4LXdpZHRoOiAkbW9kYWwtc207IH1cbn1cblxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAubW9kYWwtbGcsXG4gIC5tb2RhbC14bCB7XG4gICAgbWF4LXdpZHRoOiAkbW9kYWwtbGc7XG4gIH1cbn1cblxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4bCkge1xuICAubW9kYWwteGwgeyBtYXgtd2lkdGg6ICRtb2RhbC14bDsgfVxufVxuIiwiLy8gQmFzZSBjbGFzc1xuLnRvb2x0aXAge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6ICR6aW5kZXgtdG9vbHRpcDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogJHRvb2x0aXAtbWFyZ2luO1xuICAvLyBPdXIgcGFyZW50IGVsZW1lbnQgY2FuIGJlIGFyYml0cmFyeSBzaW5jZSB0b29sdGlwcyBhcmUgYnkgZGVmYXVsdCBpbnNlcnRlZCBhcyBhIHNpYmxpbmcgb2YgdGhlaXIgdGFyZ2V0IGVsZW1lbnQuXG4gIC8vIFNvIHJlc2V0IG91ciBmb250IGFuZCB0ZXh0IHByb3BlcnRpZXMgdG8gYXZvaWQgaW5oZXJpdGluZyB3ZWlyZCB2YWx1ZXMuXG4gIEBpbmNsdWRlIHJlc2V0LXRleHQoKTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCR0b29sdGlwLWZvbnQtc2l6ZSk7XG4gIC8vIEFsbG93IGJyZWFraW5nIHZlcnkgbG9uZyB3b3JkcyBzbyB0aGV5IGRvbid0IG92ZXJmbG93IHRoZSB0b29sdGlwJ3MgYm91bmRzXG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgb3BhY2l0eTogMDtcblxuICAmLnNob3cgeyBvcGFjaXR5OiAkdG9vbHRpcC1vcGFjaXR5OyB9XG5cbiAgLmFycm93IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6ICR0b29sdGlwLWFycm93LXdpZHRoO1xuICAgIGhlaWdodDogJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXRvb2x0aXAtdG9wIHtcbiAgcGFkZGluZzogJHRvb2x0aXAtYXJyb3ctaGVpZ2h0IDA7XG5cbiAgLmFycm93IHtcbiAgICBib3R0b206IDA7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgdG9wOiAwO1xuICAgICAgYm9yZGVyLXdpZHRoOiAkdG9vbHRpcC1hcnJvdy1oZWlnaHQgKCR0b29sdGlwLWFycm93LXdpZHRoIC8gMikgMDtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6ICR0b29sdGlwLWFycm93LWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtdG9vbHRpcC1yaWdodCB7XG4gIHBhZGRpbmc6IDAgJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuXG4gIC5hcnJvdyB7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuICAgIGhlaWdodDogJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBib3JkZXItd2lkdGg6ICgkdG9vbHRpcC1hcnJvdy13aWR0aCAvIDIpICR0b29sdGlwLWFycm93LWhlaWdodCAoJHRvb2x0aXAtYXJyb3ctd2lkdGggLyAyKSAwO1xuICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXRvb2x0aXAtYm90dG9tIHtcbiAgcGFkZGluZzogJHRvb2x0aXAtYXJyb3ctaGVpZ2h0IDA7XG5cbiAgLmFycm93IHtcbiAgICB0b3A6IDA7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgYm9yZGVyLXdpZHRoOiAwICgkdG9vbHRpcC1hcnJvdy13aWR0aCAvIDIpICR0b29sdGlwLWFycm93LWhlaWdodDtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICR0b29sdGlwLWFycm93LWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtdG9vbHRpcC1sZWZ0IHtcbiAgcGFkZGluZzogMCAkdG9vbHRpcC1hcnJvdy1oZWlnaHQ7XG5cbiAgLmFycm93IHtcbiAgICByaWdodDogMDtcbiAgICB3aWR0aDogJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuICAgIGhlaWdodDogJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgbGVmdDogMDtcbiAgICAgIGJvcmRlci13aWR0aDogKCR0b29sdGlwLWFycm93LXdpZHRoIC8gMikgMCAoJHRvb2x0aXAtYXJyb3ctd2lkdGggLyAyKSAkdG9vbHRpcC1hcnJvdy1oZWlnaHQ7XG4gICAgICBib3JkZXItbGVmdC1jb2xvcjogJHRvb2x0aXAtYXJyb3ctY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi5icy10b29sdGlwLWF1dG8ge1xuICAmW3gtcGxhY2VtZW50Xj1cInRvcFwiXSB7XG4gICAgQGV4dGVuZCAuYnMtdG9vbHRpcC10b3A7XG4gIH1cbiAgJlt4LXBsYWNlbWVudF49XCJyaWdodFwiXSB7XG4gICAgQGV4dGVuZCAuYnMtdG9vbHRpcC1yaWdodDtcbiAgfVxuICAmW3gtcGxhY2VtZW50Xj1cImJvdHRvbVwiXSB7XG4gICAgQGV4dGVuZCAuYnMtdG9vbHRpcC1ib3R0b207XG4gIH1cbiAgJlt4LXBsYWNlbWVudF49XCJsZWZ0XCJdIHtcbiAgICBAZXh0ZW5kIC5icy10b29sdGlwLWxlZnQ7XG4gIH1cbn1cblxuLy8gV3JhcHBlciBmb3IgdGhlIHRvb2x0aXAgY29udGVudFxuLnRvb2x0aXAtaW5uZXIge1xuICBtYXgtd2lkdGg6ICR0b29sdGlwLW1heC13aWR0aDtcbiAgcGFkZGluZzogJHRvb2x0aXAtcGFkZGluZy15ICR0b29sdGlwLXBhZGRpbmcteDtcbiAgY29sb3I6ICR0b29sdGlwLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0b29sdGlwLWJnO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCR0b29sdGlwLWJvcmRlci1yYWRpdXMpO1xufVxuIiwiQG1peGluIHJlc2V0LXRleHQoKSB7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktYmFzZTtcbiAgLy8gV2UgZGVsaWJlcmF0ZWx5IGRvIE5PVCByZXNldCBmb250LXNpemUgb3Igd29yZC13cmFwLlxuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gIHRleHQtYWxpZ246IGxlZnQ7IC8vIEZhbGxiYWNrIGZvciB3aGVyZSBgc3RhcnRgIGlzIG5vdCBzdXBwb3J0ZWRcbiAgdGV4dC1hbGlnbjogc3RhcnQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuICB3b3JkLWJyZWFrOiBub3JtYWw7XG4gIHdvcmQtc3BhY2luZzogbm9ybWFsO1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICBsaW5lLWJyZWFrOiBhdXRvO1xufVxuIiwiLnBvcG92ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1wb3BvdmVyO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWF4LXdpZHRoOiAkcG9wb3Zlci1tYXgtd2lkdGg7XG4gIC8vIE91ciBwYXJlbnQgZWxlbWVudCBjYW4gYmUgYXJiaXRyYXJ5IHNpbmNlIHRvb2x0aXBzIGFyZSBieSBkZWZhdWx0IGluc2VydGVkIGFzIGEgc2libGluZyBvZiB0aGVpciB0YXJnZXQgZWxlbWVudC5cbiAgLy8gU28gcmVzZXQgb3VyIGZvbnQgYW5kIHRleHQgcHJvcGVydGllcyB0byBhdm9pZCBpbmhlcml0aW5nIHdlaXJkIHZhbHVlcy5cbiAgQGluY2x1ZGUgcmVzZXQtdGV4dCgpO1xuICBAaW5jbHVkZSBmb250LXNpemUoJHBvcG92ZXItZm9udC1zaXplKTtcbiAgLy8gQWxsb3cgYnJlYWtpbmcgdmVyeSBsb25nIHdvcmRzIHNvIHRoZXkgZG9uJ3Qgb3ZlcmZsb3cgdGhlIHBvcG92ZXIncyBib3VuZHNcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcG9wb3Zlci1iZztcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiAkcG9wb3Zlci1ib3JkZXItd2lkdGggc29saWQgJHBvcG92ZXItYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRwb3BvdmVyLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRwb3BvdmVyLWJveC1zaGFkb3cpO1xuXG4gIC5hcnJvdyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAkcG9wb3Zlci1hcnJvdy13aWR0aDtcbiAgICBoZWlnaHQ6ICRwb3BvdmVyLWFycm93LWhlaWdodDtcbiAgICBtYXJnaW46IDAgJHBvcG92ZXItYm9yZGVyLXJhZGl1cztcblxuICAgICY6OmJlZm9yZSxcbiAgICAmOjphZnRlciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXBvcG92ZXItdG9wIHtcbiAgbWFyZ2luLWJvdHRvbTogJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuXG4gID4gLmFycm93IHtcbiAgICBib3R0b206IHN1YnRyYWN0KC0kcG9wb3Zlci1hcnJvdy1oZWlnaHQsICRwb3BvdmVyLWJvcmRlci13aWR0aCk7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgYm9yZGVyLXdpZHRoOiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQgKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgMDtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6ICRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yO1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIGJvdHRvbTogJHBvcG92ZXItYm9yZGVyLXdpZHRoO1xuICAgICAgYm9yZGVyLXdpZHRoOiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQgKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgMDtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6ICRwb3BvdmVyLWFycm93LWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtcG9wb3Zlci1yaWdodCB7XG4gIG1hcmdpbi1sZWZ0OiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQ7XG5cbiAgPiAuYXJyb3cge1xuICAgIGxlZnQ6IHN1YnRyYWN0KC0kcG9wb3Zlci1hcnJvdy1oZWlnaHQsICRwb3BvdmVyLWJvcmRlci13aWR0aCk7XG4gICAgd2lkdGg6ICRwb3BvdmVyLWFycm93LWhlaWdodDtcbiAgICBoZWlnaHQ6ICRwb3BvdmVyLWFycm93LXdpZHRoO1xuICAgIG1hcmdpbjogJHBvcG92ZXItYm9yZGVyLXJhZGl1cyAwOyAvLyBtYWtlIHN1cmUgdGhlIGFycm93IGRvZXMgbm90IHRvdWNoIHRoZSBwb3BvdmVyJ3Mgcm91bmRlZCBjb3JuZXJzXG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgbGVmdDogMDtcbiAgICAgIGJvcmRlci13aWR0aDogKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgJHBvcG92ZXItYXJyb3ctaGVpZ2h0ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpIDA7XG4gICAgICBib3JkZXItcmlnaHQtY29sb3I6ICRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yO1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIGxlZnQ6ICRwb3BvdmVyLWJvcmRlci13aWR0aDtcbiAgICAgIGJvcmRlci13aWR0aDogKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgJHBvcG92ZXItYXJyb3ctaGVpZ2h0ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpIDA7XG4gICAgICBib3JkZXItcmlnaHQtY29sb3I6ICRwb3BvdmVyLWFycm93LWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtcG9wb3Zlci1ib3R0b20ge1xuICBtYXJnaW4tdG9wOiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQ7XG5cbiAgPiAuYXJyb3cge1xuICAgIHRvcDogc3VidHJhY3QoLSRwb3BvdmVyLWFycm93LWhlaWdodCwgJHBvcG92ZXItYm9yZGVyLXdpZHRoKTtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICB0b3A6IDA7XG4gICAgICBib3JkZXItd2lkdGg6IDAgKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgJHBvcG92ZXItYXJyb3ctaGVpZ2h0ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpO1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3I7XG4gICAgfVxuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgdG9wOiAkcG9wb3Zlci1ib3JkZXItd2lkdGg7XG4gICAgICBib3JkZXItd2lkdGg6IDAgKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgJHBvcG92ZXItYXJyb3ctaGVpZ2h0ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpO1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHBvcG92ZXItYXJyb3ctY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLy8gVGhpcyB3aWxsIHJlbW92ZSB0aGUgcG9wb3Zlci1oZWFkZXIncyBib3JkZXIganVzdCBiZWxvdyB0aGUgYXJyb3dcbiAgLnBvcG92ZXItaGVhZGVyOjpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogNTAlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAkcG9wb3Zlci1hcnJvdy13aWR0aDtcbiAgICBtYXJnaW4tbGVmdDogLSRwb3BvdmVyLWFycm93LXdpZHRoIC8gMjtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGJvcmRlci1ib3R0b206ICRwb3BvdmVyLWJvcmRlci13aWR0aCBzb2xpZCAkcG9wb3Zlci1oZWFkZXItYmc7XG4gIH1cbn1cblxuLmJzLXBvcG92ZXItbGVmdCB7XG4gIG1hcmdpbi1yaWdodDogJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuXG4gID4gLmFycm93IHtcbiAgICByaWdodDogc3VidHJhY3QoLSRwb3BvdmVyLWFycm93LWhlaWdodCwgJHBvcG92ZXItYm9yZGVyLXdpZHRoKTtcbiAgICB3aWR0aDogJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuICAgIGhlaWdodDogJHBvcG92ZXItYXJyb3ctd2lkdGg7XG4gICAgbWFyZ2luOiAkcG9wb3Zlci1ib3JkZXItcmFkaXVzIDA7IC8vIG1ha2Ugc3VyZSB0aGUgYXJyb3cgZG9lcyBub3QgdG91Y2ggdGhlIHBvcG92ZXIncyByb3VuZGVkIGNvcm5lcnNcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICByaWdodDogMDtcbiAgICAgIGJvcmRlci13aWR0aDogKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgMCAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAkcG9wb3Zlci1hcnJvdy1oZWlnaHQ7XG4gICAgICBib3JkZXItbGVmdC1jb2xvcjogJHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3I7XG4gICAgfVxuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgcmlnaHQ6ICRwb3BvdmVyLWJvcmRlci13aWR0aDtcbiAgICAgIGJvcmRlci13aWR0aDogKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgMCAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAkcG9wb3Zlci1hcnJvdy1oZWlnaHQ7XG4gICAgICBib3JkZXItbGVmdC1jb2xvcjogJHBvcG92ZXItYXJyb3ctY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi5icy1wb3BvdmVyLWF1dG8ge1xuICAmW3gtcGxhY2VtZW50Xj1cInRvcFwiXSB7XG4gICAgQGV4dGVuZCAuYnMtcG9wb3Zlci10b3A7XG4gIH1cbiAgJlt4LXBsYWNlbWVudF49XCJyaWdodFwiXSB7XG4gICAgQGV4dGVuZCAuYnMtcG9wb3Zlci1yaWdodDtcbiAgfVxuICAmW3gtcGxhY2VtZW50Xj1cImJvdHRvbVwiXSB7XG4gICAgQGV4dGVuZCAuYnMtcG9wb3Zlci1ib3R0b207XG4gIH1cbiAgJlt4LXBsYWNlbWVudF49XCJsZWZ0XCJdIHtcbiAgICBAZXh0ZW5kIC5icy1wb3BvdmVyLWxlZnQ7XG4gIH1cbn1cblxuXG4vLyBPZmZzZXQgdGhlIHBvcG92ZXIgdG8gYWNjb3VudCBmb3IgdGhlIHBvcG92ZXIgYXJyb3dcbi5wb3BvdmVyLWhlYWRlciB7XG4gIHBhZGRpbmc6ICRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXkgJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteDtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gUmVzZXQgdGhlIGRlZmF1bHQgZnJvbSBSZWJvb3RcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmb250LXNpemUtYmFzZSk7XG4gIGNvbG9yOiAkcG9wb3Zlci1oZWFkZXItY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwb3BvdmVyLWhlYWRlci1iZztcbiAgYm9yZGVyLWJvdHRvbTogJHBvcG92ZXItYm9yZGVyLXdpZHRoIHNvbGlkIGRhcmtlbigkcG9wb3Zlci1oZWFkZXItYmcsIDUlKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJHBvcG92ZXItaW5uZXItYm9yZGVyLXJhZGl1cyk7XG5cbiAgJjplbXB0eSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4ucG9wb3Zlci1ib2R5IHtcbiAgcGFkZGluZzogJHBvcG92ZXItYm9keS1wYWRkaW5nLXkgJHBvcG92ZXItYm9keS1wYWRkaW5nLXg7XG4gIGNvbG9yOiAkcG9wb3Zlci1ib2R5LWNvbG9yO1xufVxuIiwiLy8gTm90ZXMgb24gdGhlIGNsYXNzZXM6XG4vL1xuLy8gMS4gLmNhcm91c2VsLnBvaW50ZXItZXZlbnQgc2hvdWxkIGlkZWFsbHkgYmUgcGFuLXkgKHRvIGFsbG93IGZvciB1c2VycyB0byBzY3JvbGwgdmVydGljYWxseSlcbi8vICAgIGV2ZW4gd2hlbiB0aGVpciBzY3JvbGwgYWN0aW9uIHN0YXJ0ZWQgb24gYSBjYXJvdXNlbCwgYnV0IGZvciBjb21wYXRpYmlsaXR5ICh3aXRoIEZpcmVmb3gpXG4vLyAgICB3ZSdyZSBwcmV2ZW50aW5nIGFsbCBhY3Rpb25zIGluc3RlYWRcbi8vIDIuIFRoZSAuY2Fyb3VzZWwtaXRlbS1sZWZ0IGFuZCAuY2Fyb3VzZWwtaXRlbS1yaWdodCBpcyB1c2VkIHRvIGluZGljYXRlIHdoZXJlXG4vLyAgICB0aGUgYWN0aXZlIHNsaWRlIGlzIGhlYWRpbmcuXG4vLyAzLiAuYWN0aXZlLmNhcm91c2VsLWl0ZW0gaXMgdGhlIGN1cnJlbnQgc2xpZGUuXG4vLyA0LiAuYWN0aXZlLmNhcm91c2VsLWl0ZW0tbGVmdCBhbmQgLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLXJpZ2h0IGlzIHRoZSBjdXJyZW50XG4vLyAgICBzbGlkZSBpbiBpdHMgaW4tdHJhbnNpdGlvbiBzdGF0ZS4gT25seSBvbmUgb2YgdGhlc2Ugb2NjdXJzIGF0IGEgdGltZS5cbi8vIDUuIC5jYXJvdXNlbC1pdGVtLW5leHQuY2Fyb3VzZWwtaXRlbS1sZWZ0IGFuZCAuY2Fyb3VzZWwtaXRlbS1wcmV2LmNhcm91c2VsLWl0ZW0tcmlnaHRcbi8vICAgIGlzIHRoZSB1cGNvbWluZyBzbGlkZSBpbiB0cmFuc2l0aW9uLlxuXG4uY2Fyb3VzZWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5jYXJvdXNlbC5wb2ludGVyLWV2ZW50IHtcbiAgdG91Y2gtYWN0aW9uOiBwYW4teTtcbn1cblxuLmNhcm91c2VsLWlubmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgQGluY2x1ZGUgY2xlYXJmaXgoKTtcbn1cblxuLmNhcm91c2VsLWl0ZW0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLXJpZ2h0OiAtMTAwJTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRjYXJvdXNlbC10cmFuc2l0aW9uKTtcbn1cblxuLmNhcm91c2VsLWl0ZW0uYWN0aXZlLFxuLmNhcm91c2VsLWl0ZW0tbmV4dCxcbi5jYXJvdXNlbC1pdGVtLXByZXYge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmNhcm91c2VsLWl0ZW0tbmV4dDpub3QoLmNhcm91c2VsLWl0ZW0tbGVmdCksXG4uYWN0aXZlLmNhcm91c2VsLWl0ZW0tcmlnaHQge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XG59XG5cbi5jYXJvdXNlbC1pdGVtLXByZXY6bm90KC5jYXJvdXNlbC1pdGVtLXJpZ2h0KSxcbi5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1sZWZ0IHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcbn1cblxuXG4vL1xuLy8gQWx0ZXJuYXRlIHRyYW5zaXRpb25zXG4vL1xuXG4uY2Fyb3VzZWwtZmFkZSB7XG4gIC5jYXJvdXNlbC1pdGVtIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHk7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG5cbiAgLmNhcm91c2VsLWl0ZW0uYWN0aXZlLFxuICAuY2Fyb3VzZWwtaXRlbS1uZXh0LmNhcm91c2VsLWl0ZW0tbGVmdCxcbiAgLmNhcm91c2VsLWl0ZW0tcHJldi5jYXJvdXNlbC1pdGVtLXJpZ2h0IHtcbiAgICB6LWluZGV4OiAxO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAuYWN0aXZlLmNhcm91c2VsLWl0ZW0tbGVmdCxcbiAgLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLXJpZ2h0IHtcbiAgICB6LWluZGV4OiAwO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbihvcGFjaXR5IDBzICRjYXJvdXNlbC10cmFuc2l0aW9uLWR1cmF0aW9uKTtcbiAgfVxufVxuXG5cbi8vXG4vLyBMZWZ0L3JpZ2h0IGNvbnRyb2xzIGZvciBuYXZcbi8vXG5cbi5jYXJvdXNlbC1jb250cm9sLXByZXYsXG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgei1pbmRleDogMTtcbiAgLy8gVXNlIGZsZXggZm9yIGFsaWdubWVudCAoMS0zKVxuICBkaXNwbGF5OiBmbGV4OyAvLyAxLiBhbGxvdyBmbGV4IHN0eWxlc1xuICBhbGlnbi1pdGVtczogY2VudGVyOyAvLyAyLiB2ZXJ0aWNhbGx5IGNlbnRlciBjb250ZW50c1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgLy8gMy4gaG9yaXpvbnRhbGx5IGNlbnRlciBjb250ZW50c1xuICB3aWR0aDogJGNhcm91c2VsLWNvbnRyb2wtd2lkdGg7XG4gIGNvbG9yOiAkY2Fyb3VzZWwtY29udHJvbC1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBvcGFjaXR5OiAkY2Fyb3VzZWwtY29udHJvbC1vcGFjaXR5O1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRjYXJvdXNlbC1jb250cm9sLXRyYW5zaXRpb24pO1xuXG4gIC8vIEhvdmVyL2ZvY3VzIHN0YXRlXG4gIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgIGNvbG9yOiAkY2Fyb3VzZWwtY29udHJvbC1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgb3V0bGluZTogMDtcbiAgICBvcGFjaXR5OiAkY2Fyb3VzZWwtY29udHJvbC1ob3Zlci1vcGFjaXR5O1xuICB9XG59XG4uY2Fyb3VzZWwtY29udHJvbC1wcmV2IHtcbiAgbGVmdDogMDtcbiAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsIHJnYmEoJGJsYWNrLCAuMjUpLCByZ2JhKCRibGFjaywgLjAwMSkpO1xuICB9XG59XG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0IHtcbiAgcmlnaHQ6IDA7XG4gIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KDI3MGRlZywgcmdiYSgkYmxhY2ssIC4yNSksIHJnYmEoJGJsYWNrLCAuMDAxKSk7XG4gIH1cbn1cblxuLy8gSWNvbnMgZm9yIHdpdGhpblxuLmNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uLFxuLmNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogJGNhcm91c2VsLWNvbnRyb2wtaWNvbi13aWR0aDtcbiAgaGVpZ2h0OiAkY2Fyb3VzZWwtY29udHJvbC1pY29uLXdpZHRoO1xuICBiYWNrZ3JvdW5kOiA1MCUgLyAxMDAlIDEwMCUgbm8tcmVwZWF0O1xufVxuLmNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24tYmcpO1xufVxuLmNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24tYmcpO1xufVxuXG5cbi8vIE9wdGlvbmFsIGluZGljYXRvciBwaXBzXG4vL1xuLy8gQWRkIGFuIG9yZGVyZWQgbGlzdCB3aXRoIHRoZSBmb2xsb3dpbmcgY2xhc3MgYW5kIGFkZCBhIGxpc3QgaXRlbSBmb3IgZWFjaFxuLy8gc2xpZGUgeW91ciBjYXJvdXNlbCBob2xkcy5cblxuLmNhcm91c2VsLWluZGljYXRvcnMge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDE1O1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgcGFkZGluZy1sZWZ0OiAwOyAvLyBvdmVycmlkZSA8b2w+IGRlZmF1bHRcbiAgLy8gVXNlIHRoZSAuY2Fyb3VzZWwtY29udHJvbCdzIHdpZHRoIGFzIG1hcmdpbiBzbyB3ZSBkb24ndCBvdmVybGF5IHRob3NlXG4gIG1hcmdpbi1yaWdodDogJGNhcm91c2VsLWNvbnRyb2wtd2lkdGg7XG4gIG1hcmdpbi1sZWZ0OiAkY2Fyb3VzZWwtY29udHJvbC13aWR0aDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcblxuICBsaSB7XG4gICAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gICAgZmxleDogMCAxIGF1dG87XG4gICAgd2lkdGg6ICRjYXJvdXNlbC1pbmRpY2F0b3Itd2lkdGg7XG4gICAgaGVpZ2h0OiAkY2Fyb3VzZWwtaW5kaWNhdG9yLWhlaWdodDtcbiAgICBtYXJnaW4tcmlnaHQ6ICRjYXJvdXNlbC1pbmRpY2F0b3Itc3BhY2VyO1xuICAgIG1hcmdpbi1sZWZ0OiAkY2Fyb3VzZWwtaW5kaWNhdG9yLXNwYWNlcjtcbiAgICB0ZXh0LWluZGVudDogLTk5OXB4O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2Fyb3VzZWwtaW5kaWNhdG9yLWFjdGl2ZS1iZztcbiAgICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICAgIC8vIFVzZSB0cmFuc3BhcmVudCBib3JkZXJzIHRvIGluY3JlYXNlIHRoZSBoaXQgYXJlYSBieSAxMHB4IG9uIHRvcCBhbmQgYm90dG9tLlxuICAgIGJvcmRlci10b3A6ICRjYXJvdXNlbC1pbmRpY2F0b3ItaGl0LWFyZWEtaGVpZ2h0IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1ib3R0b206ICRjYXJvdXNlbC1pbmRpY2F0b3ItaGl0LWFyZWEtaGVpZ2h0IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIG9wYWNpdHk6IC41O1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJGNhcm91c2VsLWluZGljYXRvci10cmFuc2l0aW9uKTtcbiAgfVxuXG4gIC5hY3RpdmUge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuXG4vLyBPcHRpb25hbCBjYXB0aW9uc1xuLy9cbi8vXG5cbi5jYXJvdXNlbC1jYXB0aW9uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogKDEwMCUgLSAkY2Fyb3VzZWwtY2FwdGlvbi13aWR0aCkgLyAyO1xuICBib3R0b206IDIwcHg7XG4gIGxlZnQ6ICgxMDAlIC0gJGNhcm91c2VsLWNhcHRpb24td2lkdGgpIC8gMjtcbiAgei1pbmRleDogMTA7XG4gIHBhZGRpbmctdG9wOiAyMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgY29sb3I6ICRjYXJvdXNlbC1jYXB0aW9uLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4iLCJAbWl4aW4gY2xlYXJmaXgoKSB7XG4gICY6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjbGVhcjogYm90aDtcbiAgICBjb250ZW50OiBcIlwiO1xuICB9XG59XG4iLCIvL1xuLy8gUm90YXRpbmcgYm9yZGVyXG4vL1xuXG5Aa2V5ZnJhbWVzIHNwaW5uZXItYm9yZGVyIHtcbiAgdG8geyB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOyB9XG59XG5cbi5zcGlubmVyLWJvcmRlciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6ICRzcGlubmVyLXdpZHRoO1xuICBoZWlnaHQ6ICRzcGlubmVyLWhlaWdodDtcbiAgdmVydGljYWwtYWxpZ246IHRleHQtYm90dG9tO1xuICBib3JkZXI6ICRzcGlubmVyLWJvcmRlci13aWR0aCBzb2xpZCBjdXJyZW50Q29sb3I7XG4gIGJvcmRlci1yaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBhbmltYXRpb246IC43NXMgbGluZWFyIGluZmluaXRlIHNwaW5uZXItYm9yZGVyO1xufVxuXG4uc3Bpbm5lci1ib3JkZXItc20ge1xuICB3aWR0aDogJHNwaW5uZXItd2lkdGgtc207XG4gIGhlaWdodDogJHNwaW5uZXItaGVpZ2h0LXNtO1xuICBib3JkZXItd2lkdGg6ICRzcGlubmVyLWJvcmRlci13aWR0aC1zbTtcbn1cblxuLy9cbi8vIEdyb3dpbmcgY2lyY2xlXG4vL1xuXG5Aa2V5ZnJhbWVzIHNwaW5uZXItZ3JvdyB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICB9XG4gIDUwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cbn1cblxuLnNwaW5uZXItZ3JvdyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6ICRzcGlubmVyLXdpZHRoO1xuICBoZWlnaHQ6ICRzcGlubmVyLWhlaWdodDtcbiAgdmVydGljYWwtYWxpZ246IHRleHQtYm90dG9tO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBjdXJyZW50Q29sb3I7XG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBvcGFjaXR5OiAwO1xuICBhbmltYXRpb246IC43NXMgbGluZWFyIGluZmluaXRlIHNwaW5uZXItZ3Jvdztcbn1cblxuLnNwaW5uZXItZ3Jvdy1zbSB7XG4gIHdpZHRoOiAkc3Bpbm5lci13aWR0aC1zbTtcbiAgaGVpZ2h0OiAkc3Bpbm5lci1oZWlnaHQtc207XG59XG5cbkBpZiAkZW5hYmxlLXByZWZlcnMtcmVkdWNlZC1tb3Rpb24tbWVkaWEtcXVlcnkge1xuICBAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAgIC5zcGlubmVyLWJvcmRlcixcbiAgICAuc3Bpbm5lci1ncm93IHtcbiAgICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMS41cztcbiAgICB9XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4uYWxpZ24tYmFzZWxpbmUgICAgeyB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmUgIWltcG9ydGFudDsgfSAvLyBCcm93c2VyIGRlZmF1bHRcbi5hbGlnbi10b3AgICAgICAgICB7IHZlcnRpY2FsLWFsaWduOiB0b3AgIWltcG9ydGFudDsgfVxuLmFsaWduLW1pZGRsZSAgICAgIHsgdmVydGljYWwtYWxpZ246IG1pZGRsZSAhaW1wb3J0YW50OyB9XG4uYWxpZ24tYm90dG9tICAgICAgeyB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tICFpbXBvcnRhbnQ7IH1cbi5hbGlnbi10ZXh0LWJvdHRvbSB7IHZlcnRpY2FsLWFsaWduOiB0ZXh0LWJvdHRvbSAhaW1wb3J0YW50OyB9XG4uYWxpZ24tdGV4dC10b3AgICAgeyB2ZXJ0aWNhbC1hbGlnbjogdGV4dC10b3AgIWltcG9ydGFudDsgfVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIENvbnRleHR1YWwgYmFja2dyb3VuZHNcblxuQG1peGluIGJnLXZhcmlhbnQoJHBhcmVudCwgJGNvbG9yLCAkaWdub3JlLXdhcm5pbmc6IGZhbHNlKSB7XG4gICN7JHBhcmVudH0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvciAhaW1wb3J0YW50O1xuICB9XG4gIGEjeyRwYXJlbnR9LFxuICBidXR0b24jeyRwYXJlbnR9IHtcbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkY29sb3IsIDEwJSkgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbiAgQGluY2x1ZGUgZGVwcmVjYXRlKFwiVGhlIGBiZy12YXJpYW50YCBtaXhpblwiLCBcInY0LjQuMFwiLCBcInY1XCIsICRpZ25vcmUtd2FybmluZyk7XG59XG5cbkBtaXhpbiBiZy1ncmFkaWVudC12YXJpYW50KCRwYXJlbnQsICRjb2xvciwgJGlnbm9yZS13YXJuaW5nOiBmYWxzZSkge1xuICAjeyRwYXJlbnR9IHtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3IgbGluZWFyLWdyYWRpZW50KDE4MGRlZywgbWl4KCRib2R5LWJnLCAkY29sb3IsIDE1JSksICRjb2xvcikgcmVwZWF0LXggIWltcG9ydGFudDtcbiAgfVxuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJUaGUgYGJnLWdyYWRpZW50LXZhcmlhbnRgIG1peGluXCIsIFwidjQuNS4wXCIsIFwidjVcIiwgJGlnbm9yZS13YXJuaW5nKTtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgQGluY2x1ZGUgYmctdmFyaWFudChcIi5iZy0jeyRjb2xvcn1cIiwgJHZhbHVlLCB0cnVlKTtcbn1cblxuQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gICAgQGluY2x1ZGUgYmctZ3JhZGllbnQtdmFyaWFudChcIi5iZy1ncmFkaWVudC0jeyRjb2xvcn1cIiwgJHZhbHVlLCB0cnVlKTtcbiAgfVxufVxuXG4uYmctd2hpdGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcbn1cblxuLmJnLXRyYW5zcGFyZW50IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdCwgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vXG4vLyBCb3JkZXJcbi8vXG5cbi5ib3JkZXIgICAgICAgICB7IGJvcmRlcjogJGJvcmRlci13aWR0aCBzb2xpZCAkYm9yZGVyLWNvbG9yICFpbXBvcnRhbnQ7IH1cbi5ib3JkZXItdG9wICAgICB7IGJvcmRlci10b3A6ICRib3JkZXItd2lkdGggc29saWQgJGJvcmRlci1jb2xvciAhaW1wb3J0YW50OyB9XG4uYm9yZGVyLXJpZ2h0ICAgeyBib3JkZXItcmlnaHQ6ICRib3JkZXItd2lkdGggc29saWQgJGJvcmRlci1jb2xvciAhaW1wb3J0YW50OyB9XG4uYm9yZGVyLWJvdHRvbSAgeyBib3JkZXItYm90dG9tOiAkYm9yZGVyLXdpZHRoIHNvbGlkICRib3JkZXItY29sb3IgIWltcG9ydGFudDsgfVxuLmJvcmRlci1sZWZ0ICAgIHsgYm9yZGVyLWxlZnQ6ICRib3JkZXItd2lkdGggc29saWQgJGJvcmRlci1jb2xvciAhaW1wb3J0YW50OyB9XG5cbi5ib3JkZXItMCAgICAgICAgeyBib3JkZXI6IDAgIWltcG9ydGFudDsgfVxuLmJvcmRlci10b3AtMCAgICB7IGJvcmRlci10b3A6IDAgIWltcG9ydGFudDsgfVxuLmJvcmRlci1yaWdodC0wICB7IGJvcmRlci1yaWdodDogMCAhaW1wb3J0YW50OyB9XG4uYm9yZGVyLWJvdHRvbS0wIHsgYm9yZGVyLWJvdHRvbTogMCAhaW1wb3J0YW50OyB9XG4uYm9yZGVyLWxlZnQtMCAgIHsgYm9yZGVyLWxlZnQ6IDAgIWltcG9ydGFudDsgfVxuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgLmJvcmRlci0jeyRjb2xvcn0ge1xuICAgIGJvcmRlci1jb2xvcjogJHZhbHVlICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmJvcmRlci13aGl0ZSB7XG4gIGJvcmRlci1jb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XG59XG5cbi8vXG4vLyBCb3JkZXItcmFkaXVzXG4vL1xuXG4ucm91bmRlZC1zbSB7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLXNtICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkIHtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtdG9wIHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLXJpZ2h0IHtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC1ib3R0b20ge1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtbGVmdCB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLWxnIHtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtbGcgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtY2lyY2xlIHtcbiAgYm9yZGVyLXJhZGl1czogNTAlICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLXBpbGwge1xuICBib3JkZXItcmFkaXVzOiAkcm91bmRlZC1waWxsICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLTAge1xuICBib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy9cbi8vIFV0aWxpdGllcyBmb3IgY29tbW9uIGBkaXNwbGF5YCB2YWx1ZXNcbi8vXG5cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIEBlYWNoICR2YWx1ZSBpbiAkZGlzcGxheXMge1xuICAgICAgLmQjeyRpbmZpeH0tI3skdmFsdWV9IHsgZGlzcGxheTogJHZhbHVlICFpbXBvcnRhbnQ7IH1cbiAgICB9XG4gIH1cbn1cblxuXG4vL1xuLy8gVXRpbGl0aWVzIGZvciB0b2dnbGluZyBgZGlzcGxheWAgaW4gcHJpbnRcbi8vXG5cbkBtZWRpYSBwcmludCB7XG4gIEBlYWNoICR2YWx1ZSBpbiAkZGlzcGxheXMge1xuICAgIC5kLXByaW50LSN7JHZhbHVlfSB7IGRpc3BsYXk6ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG4gIH1cbn1cbiIsIi8vIENyZWRpdDogTmljb2xhcyBHYWxsYWdoZXIgYW5kIFNVSVQgQ1NTLlxuXG4uZW1iZWQtcmVzcG9uc2l2ZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICY6OmJlZm9yZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY29udGVudDogXCJcIjtcbiAgfVxuXG4gIC5lbWJlZC1yZXNwb25zaXZlLWl0ZW0sXG4gIGlmcmFtZSxcbiAgZW1iZWQsXG4gIG9iamVjdCxcbiAgdmlkZW8ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJvcmRlcjogMDtcbiAgfVxufVxuXG5AZWFjaCAkZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW8gaW4gJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvcyB7XG4gICRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpby14OiBudGgoJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvLCAxKTtcbiAgJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvLXk6IG50aCgkZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW8sIDIpO1xuXG4gIC5lbWJlZC1yZXNwb25zaXZlLSN7JGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvLXh9YnkjeyRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpby15fSB7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHBhZGRpbmctdG9wOiBwZXJjZW50YWdlKCRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpby15IC8gJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvLXgpO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIEZsZXggdmFyaWF0aW9uXG4vL1xuLy8gQ3VzdG9tIHN0eWxlcyBmb3IgYWRkaXRpb25hbCBmbGV4IGFsaWdubWVudCBvcHRpb25zLlxuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAuZmxleCN7JGluZml4fS1yb3cgICAgICAgICAgICB7IGZsZXgtZGlyZWN0aW9uOiByb3cgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LWNvbHVtbiAgICAgICAgIHsgZmxleC1kaXJlY3Rpb246IGNvbHVtbiAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tcm93LXJldmVyc2UgICAgeyBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2UgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LWNvbHVtbi1yZXZlcnNlIHsgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlICFpbXBvcnRhbnQ7IH1cblxuICAgIC5mbGV4I3skaW5maXh9LXdyYXAgICAgICAgICB7IGZsZXgtd3JhcDogd3JhcCAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tbm93cmFwICAgICAgIHsgZmxleC13cmFwOiBub3dyYXAgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LXdyYXAtcmV2ZXJzZSB7IGZsZXgtd3JhcDogd3JhcC1yZXZlcnNlICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1maWxsICAgICAgICAgeyBmbGV4OiAxIDEgYXV0byAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tZ3Jvdy0wICAgICAgIHsgZmxleC1ncm93OiAwICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1ncm93LTEgICAgICAgeyBmbGV4LWdyb3c6IDEgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LXNocmluay0wICAgICB7IGZsZXgtc2hyaW5rOiAwICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1zaHJpbmstMSAgICAgeyBmbGV4LXNocmluazogMSAhaW1wb3J0YW50OyB9XG5cbiAgICAuanVzdGlmeS1jb250ZW50I3skaW5maXh9LXN0YXJ0ICAgeyBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDsgfVxuICAgIC5qdXN0aWZ5LWNvbnRlbnQjeyRpbmZpeH0tZW5kICAgICB7IGp1c3RpZnktY29udGVudDogZmxleC1lbmQgIWltcG9ydGFudDsgfVxuICAgIC5qdXN0aWZ5LWNvbnRlbnQjeyRpbmZpeH0tY2VudGVyICB7IGp1c3RpZnktY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgICAuanVzdGlmeS1jb250ZW50I3skaW5maXh9LWJldHdlZW4geyBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW4gIWltcG9ydGFudDsgfVxuICAgIC5qdXN0aWZ5LWNvbnRlbnQjeyRpbmZpeH0tYXJvdW5kICB7IGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kICFpbXBvcnRhbnQ7IH1cblxuICAgIC5hbGlnbi1pdGVtcyN7JGluZml4fS1zdGFydCAgICB7IGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24taXRlbXMjeyRpbmZpeH0tZW5kICAgICAgeyBhbGlnbi1pdGVtczogZmxleC1lbmQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1pdGVtcyN7JGluZml4fS1jZW50ZXIgICB7IGFsaWduLWl0ZW1zOiBjZW50ZXIgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1pdGVtcyN7JGluZml4fS1iYXNlbGluZSB7IGFsaWduLWl0ZW1zOiBiYXNlbGluZSAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWl0ZW1zI3skaW5maXh9LXN0cmV0Y2ggIHsgYWxpZ24taXRlbXM6IHN0cmV0Y2ggIWltcG9ydGFudDsgfVxuXG4gICAgLmFsaWduLWNvbnRlbnQjeyRpbmZpeH0tc3RhcnQgICB7IGFsaWduLWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1jb250ZW50I3skaW5maXh9LWVuZCAgICAgeyBhbGlnbi1jb250ZW50OiBmbGV4LWVuZCAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWNvbnRlbnQjeyRpbmZpeH0tY2VudGVyICB7IGFsaWduLWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWNvbnRlbnQjeyRpbmZpeH0tYmV0d2VlbiB7IGFsaWduLWNvbnRlbnQ6IHNwYWNlLWJldHdlZW4gIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1jb250ZW50I3skaW5maXh9LWFyb3VuZCAgeyBhbGlnbi1jb250ZW50OiBzcGFjZS1hcm91bmQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1jb250ZW50I3skaW5maXh9LXN0cmV0Y2ggeyBhbGlnbi1jb250ZW50OiBzdHJldGNoICFpbXBvcnRhbnQ7IH1cblxuICAgIC5hbGlnbi1zZWxmI3skaW5maXh9LWF1dG8gICAgIHsgYWxpZ24tc2VsZjogYXV0byAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLXNlbGYjeyRpbmZpeH0tc3RhcnQgICAgeyBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tc2VsZiN7JGluZml4fS1lbmQgICAgICB7IGFsaWduLXNlbGY6IGZsZXgtZW5kICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tc2VsZiN7JGluZml4fS1jZW50ZXIgICB7IGFsaWduLXNlbGY6IGNlbnRlciAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLXNlbGYjeyRpbmZpeH0tYmFzZWxpbmUgeyBhbGlnbi1zZWxmOiBiYXNlbGluZSAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLXNlbGYjeyRpbmZpeH0tc3RyZXRjaCAgeyBhbGlnbi1zZWxmOiBzdHJldGNoICFpbXBvcnRhbnQ7IH1cbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIC5mbG9hdCN7JGluZml4fS1sZWZ0ICB7IGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxvYXQjeyRpbmZpeH0tcmlnaHQgeyBmbG9hdDogcmlnaHQgIWltcG9ydGFudDsgfVxuICAgIC5mbG9hdCN7JGluZml4fS1ub25lICB7IGZsb2F0OiBub25lICFpbXBvcnRhbnQ7IH1cbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbkBlYWNoICR2YWx1ZSBpbiAkdXNlci1zZWxlY3RzIHtcbiAgLnVzZXItc2VsZWN0LSN7JHZhbHVlfSB7IHVzZXItc2VsZWN0OiAkdmFsdWUgIWltcG9ydGFudDsgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbkBlYWNoICR2YWx1ZSBpbiAkb3ZlcmZsb3dzIHtcbiAgLm92ZXJmbG93LSN7JHZhbHVlfSB7IG92ZXJmbG93OiAkdmFsdWUgIWltcG9ydGFudDsgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIENvbW1vbiB2YWx1ZXNcbkBlYWNoICRwb3NpdGlvbiBpbiAkcG9zaXRpb25zIHtcbiAgLnBvc2l0aW9uLSN7JHBvc2l0aW9ufSB7IHBvc2l0aW9uOiAkcG9zaXRpb24gIWltcG9ydGFudDsgfVxufVxuXG4vLyBTaG9ydGhhbmRcblxuLmZpeGVkLXRvcCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1maXhlZDtcbn1cblxuLmZpeGVkLWJvdHRvbSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1maXhlZDtcbn1cblxuLnN0aWNreS10b3Age1xuICBAc3VwcG9ydHMgKHBvc2l0aW9uOiBzdGlja3kpIHtcbiAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgIHRvcDogMDtcbiAgICB6LWluZGV4OiAkemluZGV4LXN0aWNreTtcbiAgfVxufVxuIiwiLy9cbi8vIFNjcmVlbnJlYWRlcnNcbi8vXG5cbi5zci1vbmx5IHtcbiAgQGluY2x1ZGUgc3Itb25seSgpO1xufVxuXG4uc3Itb25seS1mb2N1c2FibGUge1xuICBAaW5jbHVkZSBzci1vbmx5LWZvY3VzYWJsZSgpO1xufVxuIiwiLy8gT25seSBkaXNwbGF5IGNvbnRlbnQgdG8gc2NyZWVuIHJlYWRlcnNcbi8vXG4vLyBTZWU6IGh0dHBzOi8vd3d3LmExMXlwcm9qZWN0LmNvbS9wb3N0cy8yMDEzLTAxLTExLWhvdy10by1oaWRlLWNvbnRlbnQvXG4vLyBTZWU6IGh0dHBzOi8vaHVnb2dpcmF1ZGVsLmNvbS8yMDE2LzEwLzEzL2Nzcy1oaWRlLWFuZC1zZWVrL1xuXG5AbWl4aW4gc3Itb25seSgpIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAtMXB4OyAvLyBGaXggZm9yIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjU2ODZcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYm9yZGVyOiAwO1xufVxuXG4vLyBVc2UgaW4gY29uanVuY3Rpb24gd2l0aCAuc3Itb25seSB0byBvbmx5IGRpc3BsYXkgY29udGVudCB3aGVuIGl0J3MgZm9jdXNlZC5cbi8vXG4vLyBVc2VmdWwgZm9yIFwiU2tpcCB0byBtYWluIGNvbnRlbnRcIiBsaW5rczsgc2VlIGh0dHBzOi8vd3d3LnczLm9yZy9UUi8yMDEzL05PVEUtV0NBRzIwLVRFQ0hTLTIwMTMwOTA1L0cxXG4vL1xuLy8gQ3JlZGl0OiBIVE1MNSBCb2lsZXJwbGF0ZVxuXG5AbWl4aW4gc3Itb25seS1mb2N1c2FibGUoKSB7XG4gICY6YWN0aXZlLFxuICAmOmZvY3VzIHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICBjbGlwOiBhdXRvO1xuICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4uc2hhZG93LXNtIHsgYm94LXNoYWRvdzogJGJveC1zaGFkb3ctc20gIWltcG9ydGFudDsgfVxuLnNoYWRvdyB7IGJveC1zaGFkb3c6ICRib3gtc2hhZG93ICFpbXBvcnRhbnQ7IH1cbi5zaGFkb3ctbGcgeyBib3gtc2hhZG93OiAkYm94LXNoYWRvdy1sZyAhaW1wb3J0YW50OyB9XG4uc2hhZG93LW5vbmUgeyBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7IH1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vLyBXaWR0aCBhbmQgaGVpZ2h0XG5cbkBlYWNoICRwcm9wLCAkYWJicmV2IGluICh3aWR0aDogdywgaGVpZ2h0OiBoKSB7XG4gIEBlYWNoICRzaXplLCAkbGVuZ3RoIGluICRzaXplcyB7XG4gICAgLiN7JGFiYnJldn0tI3skc2l6ZX0geyAjeyRwcm9wfTogJGxlbmd0aCAhaW1wb3J0YW50OyB9XG4gIH1cbn1cblxuLm13LTEwMCB7IG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50OyB9XG4ubWgtMTAwIHsgbWF4LWhlaWdodDogMTAwJSAhaW1wb3J0YW50OyB9XG5cbi8vIFZpZXdwb3J0IGFkZGl0aW9uYWwgaGVscGVyc1xuXG4ubWluLXZ3LTEwMCB7IG1pbi13aWR0aDogMTAwdncgIWltcG9ydGFudDsgfVxuLm1pbi12aC0xMDAgeyBtaW4taGVpZ2h0OiAxMDB2aCAhaW1wb3J0YW50OyB9XG5cbi52dy0xMDAgeyB3aWR0aDogMTAwdncgIWltcG9ydGFudDsgfVxuLnZoLTEwMCB7IGhlaWdodDogMTAwdmggIWltcG9ydGFudDsgfVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIE1hcmdpbiBhbmQgUGFkZGluZ1xuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICBAZWFjaCAkcHJvcCwgJGFiYnJldiBpbiAobWFyZ2luOiBtLCBwYWRkaW5nOiBwKSB7XG4gICAgICBAZWFjaCAkc2l6ZSwgJGxlbmd0aCBpbiAkc3BhY2VycyB7XG4gICAgICAgIC4jeyRhYmJyZXZ9I3skaW5maXh9LSN7JHNpemV9IHsgI3skcHJvcH06ICRsZW5ndGggIWltcG9ydGFudDsgfVxuICAgICAgICAuI3skYWJicmV2fXQjeyRpbmZpeH0tI3skc2l6ZX0sXG4gICAgICAgIC4jeyRhYmJyZXZ9eSN7JGluZml4fS0jeyRzaXplfSB7XG4gICAgICAgICAgI3skcHJvcH0tdG9wOiAkbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLiN7JGFiYnJldn1yI3skaW5maXh9LSN7JHNpemV9LFxuICAgICAgICAuI3skYWJicmV2fXgjeyRpbmZpeH0tI3skc2l6ZX0ge1xuICAgICAgICAgICN7JHByb3B9LXJpZ2h0OiAkbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLiN7JGFiYnJldn1iI3skaW5maXh9LSN7JHNpemV9LFxuICAgICAgICAuI3skYWJicmV2fXkjeyRpbmZpeH0tI3skc2l6ZX0ge1xuICAgICAgICAgICN7JHByb3B9LWJvdHRvbTogJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIC4jeyRhYmJyZXZ9bCN7JGluZml4fS0jeyRzaXplfSxcbiAgICAgICAgLiN7JGFiYnJldn14I3skaW5maXh9LSN7JHNpemV9IHtcbiAgICAgICAgICAjeyRwcm9wfS1sZWZ0OiAkbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBOZWdhdGl2ZSBtYXJnaW5zIChlLmcuLCB3aGVyZSBgLm1iLW4xYCBpcyBuZWdhdGl2ZSB2ZXJzaW9uIG9mIGAubWItMWApXG4gICAgQGVhY2ggJHNpemUsICRsZW5ndGggaW4gJHNwYWNlcnMge1xuICAgICAgQGlmICRzaXplICE9IDAge1xuICAgICAgICAubSN7JGluZml4fS1uI3skc2l6ZX0geyBtYXJnaW46IC0kbGVuZ3RoICFpbXBvcnRhbnQ7IH1cbiAgICAgICAgLm10I3skaW5maXh9LW4jeyRzaXplfSxcbiAgICAgICAgLm15I3skaW5maXh9LW4jeyRzaXplfSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogLSRsZW5ndGggIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICAubXIjeyRpbmZpeH0tbiN7JHNpemV9LFxuICAgICAgICAubXgjeyRpbmZpeH0tbiN7JHNpemV9IHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC0kbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLm1iI3skaW5maXh9LW4jeyRzaXplfSxcbiAgICAgICAgLm15I3skaW5maXh9LW4jeyRzaXplfSB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogLSRsZW5ndGggIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICAubWwjeyRpbmZpeH0tbiN7JHNpemV9LFxuICAgICAgICAubXgjeyRpbmZpeH0tbiN7JHNpemV9IHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogLSRsZW5ndGggIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFNvbWUgc3BlY2lhbCBtYXJnaW4gdXRpbHNcbiAgICAubSN7JGluZml4fS1hdXRvIHsgbWFyZ2luOiBhdXRvICFpbXBvcnRhbnQ7IH1cbiAgICAubXQjeyRpbmZpeH0tYXV0byxcbiAgICAubXkjeyRpbmZpeH0tYXV0byB7XG4gICAgICBtYXJnaW4tdG9wOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5tciN7JGluZml4fS1hdXRvLFxuICAgIC5teCN7JGluZml4fS1hdXRvIHtcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAubWIjeyRpbmZpeH0tYXV0byxcbiAgICAubXkjeyRpbmZpeH0tYXV0byB7XG4gICAgICBtYXJnaW4tYm90dG9tOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5tbCN7JGluZml4fS1hdXRvLFxuICAgIC5teCN7JGluZml4fS1hdXRvIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gU3RyZXRjaGVkIGxpbmtcbi8vXG5cbi5zdHJldGNoZWQtbGluayB7XG4gICY6OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6IDE7XG4gICAgLy8gSnVzdCBpbiBjYXNlIGBwb2ludGVyLWV2ZW50czogbm9uZWAgaXMgc2V0IG9uIGEgcGFyZW50XG4gICAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gICAgY29udGVudDogXCJcIjtcbiAgICAvLyBJRTEwIGJ1Z2ZpeCwgc2VlIGh0dHBzOi8vc3RhY2tvdmVyZmxvdy5jb20vcXVlc3Rpb25zLzE2OTQ3OTY3L2llMTAtaG92ZXItcHNldWRvLWNsYXNzLWRvZXNudC13b3JrLXdpdGhvdXQtYmFja2dyb3VuZC1jb2xvclxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vL1xuLy8gVGV4dFxuLy9cblxuLnRleHQtbW9ub3NwYWNlIHsgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1tb25vc3BhY2UgIWltcG9ydGFudDsgfVxuXG4vLyBBbGlnbm1lbnRcblxuLnRleHQtanVzdGlmeSAgeyB0ZXh0LWFsaWduOiBqdXN0aWZ5ICFpbXBvcnRhbnQ7IH1cbi50ZXh0LXdyYXAgICAgIHsgd2hpdGUtc3BhY2U6IG5vcm1hbCAhaW1wb3J0YW50OyB9XG4udGV4dC1ub3dyYXAgICB7IHdoaXRlLXNwYWNlOiBub3dyYXAgIWltcG9ydGFudDsgfVxuLnRleHQtdHJ1bmNhdGUgeyBAaW5jbHVkZSB0ZXh0LXRydW5jYXRlKCk7IH1cblxuLy8gUmVzcG9uc2l2ZSBhbGlnbm1lbnRcblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgLnRleHQjeyRpbmZpeH0tbGVmdCAgIHsgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50OyB9XG4gICAgLnRleHQjeyRpbmZpeH0tcmlnaHQgIHsgdGV4dC1hbGlnbjogcmlnaHQgIWltcG9ydGFudDsgfVxuICAgIC50ZXh0I3skaW5maXh9LWNlbnRlciB7IHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50OyB9XG4gIH1cbn1cblxuLy8gVHJhbnNmb3JtYXRpb25cblxuLnRleHQtbG93ZXJjYXNlICB7IHRleHQtdHJhbnNmb3JtOiBsb3dlcmNhc2UgIWltcG9ydGFudDsgfVxuLnRleHQtdXBwZXJjYXNlICB7IHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2UgIWltcG9ydGFudDsgfVxuLnRleHQtY2FwaXRhbGl6ZSB7IHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplICFpbXBvcnRhbnQ7IH1cblxuLy8gV2VpZ2h0IGFuZCBpdGFsaWNzXG5cbi5mb250LXdlaWdodC1saWdodCAgIHsgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1saWdodCAhaW1wb3J0YW50OyB9XG4uZm9udC13ZWlnaHQtbGlnaHRlciB7IGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbGlnaHRlciAhaW1wb3J0YW50OyB9XG4uZm9udC13ZWlnaHQtbm9ybWFsICB7IGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsICFpbXBvcnRhbnQ7IH1cbi5mb250LXdlaWdodC1ib2xkICAgIHsgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkICFpbXBvcnRhbnQ7IH1cbi5mb250LXdlaWdodC1ib2xkZXIgIHsgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkZXIgIWltcG9ydGFudDsgfVxuLmZvbnQtaXRhbGljICAgICAgICAgeyBmb250LXN0eWxlOiBpdGFsaWMgIWltcG9ydGFudDsgfVxuXG4vLyBDb250ZXh0dWFsIGNvbG9yc1xuXG4udGV4dC13aGl0ZSB7IGNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDsgfVxuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgQGluY2x1ZGUgdGV4dC1lbXBoYXNpcy12YXJpYW50KFwiLnRleHQtI3skY29sb3J9XCIsICR2YWx1ZSwgdHJ1ZSk7XG59XG5cbi50ZXh0LWJvZHkgeyBjb2xvcjogJGJvZHktY29sb3IgIWltcG9ydGFudDsgfVxuLnRleHQtbXV0ZWQgeyBjb2xvcjogJHRleHQtbXV0ZWQgIWltcG9ydGFudDsgfVxuXG4udGV4dC1ibGFjay01MCB7IGNvbG9yOiByZ2JhKCRibGFjaywgLjUpICFpbXBvcnRhbnQ7IH1cbi50ZXh0LXdoaXRlLTUwIHsgY29sb3I6IHJnYmEoJHdoaXRlLCAuNSkgIWltcG9ydGFudDsgfVxuXG4vLyBNaXNjXG5cbi50ZXh0LWhpZGUge1xuICBAaW5jbHVkZSB0ZXh0LWhpZGUoJGlnbm9yZS13YXJuaW5nOiB0cnVlKTtcbn1cblxuLnRleHQtZGVjb3JhdGlvbi1ub25lIHsgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7IH1cblxuLnRleHQtYnJlYWsge1xuICB3b3JkLWJyZWFrOiBicmVhay13b3JkICFpbXBvcnRhbnQ7IC8vIERlcHJlY2F0ZWQsIGJ1dCBhdm9pZHMgaXNzdWVzIHdpdGggZmxleCBjb250YWluZXJzXG4gIHdvcmQtd3JhcDogYnJlYWstd29yZCAhaW1wb3J0YW50OyAvLyBVc2VkIGluc3RlYWQgb2YgYG92ZXJmbG93LXdyYXBgIGZvciBJRSAmIEVkZ2UgTGVnYWN5XG59XG5cbi8vIFJlc2V0XG5cbi50ZXh0LXJlc2V0IHsgY29sb3I6IGluaGVyaXQgIWltcG9ydGFudDsgfVxuIiwiLy8gVGV4dCB0cnVuY2F0ZVxuLy8gUmVxdWlyZXMgaW5saW5lLWJsb2NrIG9yIGJsb2NrIGZvciBwcm9wZXIgc3R5bGluZ1xuXG5AbWl4aW4gdGV4dC10cnVuY2F0ZSgpIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy8gVHlwb2dyYXBoeVxuXG5AbWl4aW4gdGV4dC1lbXBoYXNpcy12YXJpYW50KCRwYXJlbnQsICRjb2xvciwgJGlnbm9yZS13YXJuaW5nOiBmYWxzZSkge1xuICAjeyRwYXJlbnR9IHtcbiAgICBjb2xvcjogJGNvbG9yICFpbXBvcnRhbnQ7XG4gIH1cbiAgQGlmICRlbXBoYXNpemVkLWxpbmstaG92ZXItZGFya2VuLXBlcmNlbnRhZ2UgIT0gMCB7XG4gICAgYSN7JHBhcmVudH0ge1xuICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgICAgIGNvbG9yOiBkYXJrZW4oJGNvbG9yLCAkZW1waGFzaXplZC1saW5rLWhvdmVyLWRhcmtlbi1wZXJjZW50YWdlKSAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJgdGV4dC1lbXBoYXNpcy12YXJpYW50KClgXCIsIFwidjQuNC4wXCIsIFwidjVcIiwgJGlnbm9yZS13YXJuaW5nKTtcbn1cbiIsIi8vIENTUyBpbWFnZSByZXBsYWNlbWVudFxuQG1peGluIHRleHQtaGlkZSgkaWdub3JlLXdhcm5pbmc6IGZhbHNlKSB7XG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBmb250LWZhbWlseS1uby1taXNzaW5nLWdlbmVyaWMtZmFtaWx5LWtleXdvcmRcbiAgZm9udDogMC8wIGE7XG4gIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDA7XG5cbiAgQGluY2x1ZGUgZGVwcmVjYXRlKFwiYHRleHQtaGlkZSgpYFwiLCBcInY0LjEuMFwiLCBcInY1XCIsICRpZ25vcmUtd2FybmluZyk7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy9cbi8vIFZpc2liaWxpdHkgdXRpbGl0aWVzXG4vL1xuXG4udmlzaWJsZSB7XG4gIHZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDtcbn1cblxuLmludmlzaWJsZSB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbiAhaW1wb3J0YW50O1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50LCBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGVcblxuLy8gU291cmNlOiBodHRwczovL2dpdGh1Yi5jb20vaDVicC9tYWluLmNzcy9ibG9iL21hc3Rlci9zcmMvX3ByaW50LmNzc1xuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gUHJpbnQgc3R5bGVzLlxuLy8gSW5saW5lZCB0byBhdm9pZCB0aGUgYWRkaXRpb25hbCBIVFRQIHJlcXVlc3Q6XG4vLyBodHRwczovL3d3dy5waHBpZWQuY29tL2RlbGF5LWxvYWRpbmcteW91ci1wcmludC1jc3MvXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AaWYgJGVuYWJsZS1wcmludC1zdHlsZXMge1xuICBAbWVkaWEgcHJpbnQge1xuICAgICosXG4gICAgKjo6YmVmb3JlLFxuICAgICo6OmFmdGVyIHtcbiAgICAgIC8vIEJvb3RzdHJhcCBzcGVjaWZpYzsgY29tbWVudCBvdXQgYGNvbG9yYCBhbmQgYGJhY2tncm91bmRgXG4gICAgICAvL2NvbG9yOiAkYmxhY2sgIWltcG9ydGFudDsgLy8gQmxhY2sgcHJpbnRzIGZhc3RlclxuICAgICAgdGV4dC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIC8vYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBhIHtcbiAgICAgICY6bm90KC5idG4pIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQm9vdHN0cmFwIHNwZWNpZmljOyBjb21tZW50IHRoZSBmb2xsb3dpbmcgc2VsZWN0b3Igb3V0XG4gICAgLy9hW2hyZWZdOjphZnRlciB7XG4gICAgLy8gIGNvbnRlbnQ6IFwiIChcIiBhdHRyKGhyZWYpIFwiKVwiO1xuICAgIC8vfVxuXG4gICAgYWJiclt0aXRsZV06OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiIChcIiBhdHRyKHRpdGxlKSBcIilcIjtcbiAgICB9XG5cbiAgICAvLyBCb290c3RyYXAgc3BlY2lmaWM7IGNvbW1lbnQgdGhlIGZvbGxvd2luZyBzZWxlY3RvciBvdXRcbiAgICAvL1xuICAgIC8vIERvbid0IHNob3cgbGlua3MgdGhhdCBhcmUgZnJhZ21lbnQgaWRlbnRpZmllcnMsXG4gICAgLy8gb3IgdXNlIHRoZSBgamF2YXNjcmlwdDpgIHBzZXVkbyBwcm90b2NvbFxuICAgIC8vXG5cbiAgICAvL2FbaHJlZl49XCIjXCJdOjphZnRlcixcbiAgICAvL2FbaHJlZl49XCJqYXZhc2NyaXB0OlwiXTo6YWZ0ZXIge1xuICAgIC8vIGNvbnRlbnQ6IFwiXCI7XG4gICAgLy99XG5cbiAgICBwcmUge1xuICAgICAgd2hpdGUtc3BhY2U6IHByZS13cmFwICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIHByZSxcbiAgICBibG9ja3F1b3RlIHtcbiAgICAgIGJvcmRlcjogJGJvcmRlci13aWR0aCBzb2xpZCAkZ3JheS01MDA7IC8vIEJvb3RzdHJhcCBjdXN0b20gY29kZTsgdXNpbmcgYCRib3JkZXItd2lkdGhgIGluc3RlYWQgb2YgMXB4XG4gICAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7XG4gICAgfVxuXG4gICAgLy9cbiAgICAvLyBQcmludGluZyBUYWJsZXM6XG4gICAgLy8gaHR0cHM6Ly93ZWIuYXJjaGl2ZS5vcmcvd2ViLzIwMTgwODE1MTUwOTM0L2h0dHA6Ly9jc3MtZGlzY3Vzcy5pbmN1dGlvLmNvbS93aWtpL1ByaW50aW5nX1RhYmxlc1xuICAgIC8vXG5cbiAgICB0aGVhZCB7XG4gICAgICBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXA7XG4gICAgfVxuXG4gICAgdHIsXG4gICAgaW1nIHtcbiAgICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgICB9XG5cbiAgICBwLFxuICAgIGgyLFxuICAgIGgzIHtcbiAgICAgIG9ycGhhbnM6IDM7XG4gICAgICB3aWRvd3M6IDM7XG4gICAgfVxuXG4gICAgaDIsXG4gICAgaDMge1xuICAgICAgcGFnZS1icmVhay1hZnRlcjogYXZvaWQ7XG4gICAgfVxuXG4gICAgLy8gQm9vdHN0cmFwIHNwZWNpZmljIGNoYW5nZXMgc3RhcnRcblxuICAgIC8vIFNwZWNpZnkgYSBzaXplIGFuZCBtaW4td2lkdGggdG8gbWFrZSBwcmludGluZyBjbG9zZXIgYWNyb3NzIGJyb3dzZXJzLlxuICAgIC8vIFdlIGRvbid0IHNldCBtYXJnaW4gaGVyZSBiZWNhdXNlIGl0IGJyZWFrcyBgc2l6ZWAgaW4gQ2hyb21lLiBXZSBhbHNvXG4gICAgLy8gZG9uJ3QgdXNlIGAhaW1wb3J0YW50YCBvbiBgc2l6ZWAgYXMgaXQgYnJlYWtzIGluIENocm9tZS5cbiAgICBAcGFnZSB7XG4gICAgICBzaXplOiAkcHJpbnQtcGFnZS1zaXplO1xuICAgIH1cbiAgICBib2R5IHtcbiAgICAgIG1pbi13aWR0aDogJHByaW50LWJvZHktbWluLXdpZHRoICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5jb250YWluZXIge1xuICAgICAgbWluLXdpZHRoOiAkcHJpbnQtYm9keS1taW4td2lkdGggIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAvLyBCb290c3RyYXAgY29tcG9uZW50c1xuICAgIC5uYXZiYXIge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gICAgLmJhZGdlIHtcbiAgICAgIGJvcmRlcjogJGJvcmRlci13aWR0aCBzb2xpZCAkYmxhY2s7XG4gICAgfVxuXG4gICAgLnRhYmxlIHtcbiAgICAgIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2UgIWltcG9ydGFudDtcblxuICAgICAgdGQsXG4gICAgICB0aCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cblxuICAgIC50YWJsZS1ib3JkZXJlZCB7XG4gICAgICB0aCxcbiAgICAgIHRkIHtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGdyYXktMzAwICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnRhYmxlLWRhcmsge1xuICAgICAgY29sb3I6IGluaGVyaXQ7XG5cbiAgICAgIHRoLFxuICAgICAgdGQsXG4gICAgICB0aGVhZCB0aCxcbiAgICAgIHRib2R5ICsgdGJvZHkge1xuICAgICAgICBib3JkZXItY29sb3I6ICR0YWJsZS1ib3JkZXItY29sb3I7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnRhYmxlIC50aGVhZC1kYXJrIHRoIHtcbiAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgYm9yZGVyLWNvbG9yOiAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICAgIH1cblxuICAgIC8vIEJvb3RzdHJhcCBzcGVjaWZpYyBjaGFuZ2VzIGVuZFxuICB9XG59XG4iLCIuZHJvcGRvd24taXRlbSB7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMzAwbXMsIGNvbG9yIDMwMG1zO1xufVxuXG4uZHJvcGRvd24tbWVudSB7XG4gIEBpbmNsdWRlIGFuaW1hdGUoZmFkZUluLCAzMDBtcyk7XG4gIGJveC1zaGFkb3c6ICRkcm9wZG93bi1ib3gtc2hhZG93O1xufVxuXG4uZHJvcGRvd24taGVhZGVyIHtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGJnLWhpZ2hsaWdodGVkLWxpZ2h0O1xuXG4gIC5hY3Rpb25zIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwLjRyZW07XG4gICAgcmlnaHQ6IDAuOHJlbTtcbiAgfVxufVxuXG4uZHJvcGRvd24tbWVudS0tYmxvY2sge1xuICB3aWR0aDogMzIwcHg7XG5cbiAgLmRyb3Bkb3duLWhlYWRlciB7XG4gICAgcGFkZGluZy10b3A6IDEuMXJlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bih4cykge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5cbi5kcm9wZG93bi1tZW51LS1pY29uIHtcbiAgLmRyb3Bkb3duLWl0ZW0ge1xuICAgICYgPiBpIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxMDAlO1xuICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwLjc1cmVtO1xuICAgIH1cbiAgfVxufVxuXG4uZHJvcGRvd24tbWVudS0taW52ZXJ0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGRyb3Bkb3duLW1lbnUtaW52ZXJ0LWJnO1xuXG4gIC5kcm9wZG93bi1pdGVtIHtcbiAgICBjb2xvcjogJGRyb3Bkb3duLWl0ZW0taW52ZXJ0LWNvbG9yO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZHJvcGRvd24taXRlbS1pbnZlcnQtaG92ZXItYmc7XG4gICAgfVxuICB9XG59IiwiLy8gQ1NTIEFuaW1hdGlvbnMgYmFzZWQgb24gYW5pbWF0ZS5jc3NcbkBtaXhpbiBhbmltYXRlKCRuYW1lLCAkZHVyYXRpb24pIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogJG5hbWU7XG4gIGFuaW1hdGlvbi1uYW1lOiAkbmFtZTtcbiAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246ICRkdXJhdGlvbjtcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAkZHVyYXRpb247XG4gIC13ZWJraXQtYW5pbWF0aW9uLWZpbGwtbW9kZTogYm90aDtcbiAgYW5pbWF0aW9uLWZpbGwtbW9kZTogYm90aDtcbn1cblxuLy8gQ2FyZFxuQG1peGluIGNhcmQoKSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjYXJkLWJnO1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgYm94LXNoYWRvdzogJGNhcmQtc2hhZG93O1xufVxuXG4vLyBGb250IEljb24gKGZvciBiZWZvcmUvYWZ0ZXIgY29udGVudClcbkBtaXhpbiBmb250LWljb24oJGNvbnRlbnQsICRmb250LXNpemUpIHtcbiAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1pY29uO1xuICBjb250ZW50OiAkY29udGVudDtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplO1xufVxuXG4vLyBCYWNrZ3JvdW5kIEltYWdlIENvdmVyXG5AbWl4aW4gYmctY292ZXIoJGltYWdlKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgkaW1hZ2UpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAtd2Via2l0LWJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIC1tb3otYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgLW8tYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xufVxuXG5AbWl4aW4gYmctY292ZXItaW5saW5lKCkge1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAtd2Via2l0LWJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIC1tb3otYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgLW8tYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xufVxuXG4vLyBQbGFjZWhvbGRlclxuQG1peGluIHBsYWNlaG9sZGVyIHtcbiAgJjo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7IEBjb250ZW50IH1cbiAgJjotbW96LXBsYWNlaG9sZGVyIHsgQGNvbnRlbnQgfVxuICAmOjotbW96LXBsYWNlaG9sZGVyIHsgQGNvbnRlbnQgfVxuICAmOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7IEBjb250ZW50IH1cbn1cblxuLy8gU2l6aW5nIHNob3J0Y3V0c1xuQG1peGluIHNpemUoJHdpZHRoLCAkaGVpZ2h0OiAkd2lkdGgpIHtcbiAgd2lkdGg6ICR3aWR0aDtcbiAgaGVpZ2h0OiAkaGVpZ2h0O1xufSIsIi5wcm9ncmVzcyB7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGhlaWdodDogJHByb2dyZXNzLWhlaWdodDtcbn1cblxuLnByb2dyZXNzLWJhciB7XG4gIGhlaWdodDogMTAwJTtcbn0iLCIuY2FyZCB7XG4gIG1hcmdpbi1ib3R0b206ICRjYXJkLWNvbHVtbnMtbWFyZ2luO1xuICBib3gtc2hhZG93OiAkY2FyZC1zaGFkb3c7XG4gIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcblxuICAmOm5vdChbY2xhc3MqPVwiYm9yZGVyLVwiXSkge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYigyMjUsIDIyNSwgMjI1KTtcbiAgfVxufVxuXG4uY2FyZC10aXRsZSB7XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDE0MCU7XG4gIG1hcmdpbi10b3A6IC01cHg7XG5cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi5jdXN0b21lcl91cGRhdGVfZmllbGRze1xuICBib3JkZXI6IG5vbmU7XG59XG5cbiNjdXN0b21lcl91cGRhdGVfZmllbGRzIC5jYXJke1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gIGJvcmRlcjogbm9uZTtcbn1cblxuI2N1c3RvbWVyX3VwZGF0ZV9maWVsZHMgbGFiZWx7XG4gIGNvbG9yOiAkYmxhY2tcbn1cblxuI2N1c3RvbWVyX3VwZGF0ZV9maWVsZHNfbnVtYmVyRW1wbG95ZWVze1xuICBjb2xvcjogYmxhY2s7XG4gIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiKDIyNSwgMjI1LCAyMjUpO1xufVxuXG4jX2N1c3RvbWVyLW51bWJlci1lbXBsb3llZXMgLm1vZGFsLWRpYWxvZyAubW9kYWwtY29udGVudHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICBjb2xvcjogYmxhY2s7XG59XG5cbiNfY3VzdG9tZXItbnVtYmVyLWVtcGxveWVlcyAubW9kYWwtZGlhbG9nIC5tb2RhbC1jb250ZW50IGg0e1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gIGNvbG9yOiBibGFjaztcbn1cblxuLm1vZGFsLWNvbnRlbnR7XG4gIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgY29sb3I6ICRibGFja1xufVxuXG4ubW9kYWwtY29udGVudCAubW9kYWwtaGVhZGVyIGl7XG4gIGNvbG9yOiBncmV5ICFpbXBvcnRhbnQ7XG59XG5cbi5jdXN0b21lcl9mb3Jte1xuICBib3JkZXI6IG5vbmU7XG59XG5cbi5jYXJkLXN1YnRpdGxlIHtcbiAgY29sb3I6ICRibGFjaztcbiAgZm9udC1zaXplOiAxcmVtO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBtYXJnaW4tdG9wOiAtMS41NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcblxuICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gIH1cbn1cblxuLmNhcmQgPiAuYWN0aW9ucyxcbi5jYXJkLWJvZHkgLmFjdGlvbnMge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAxNXB4O1xuICB6LWluZGV4OiAyO1xuICB0b3A6IDE4cHg7XG59XG5cbltjbGFzcyo9XCJjYXJkLWltZ1wiXSB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uY2FyZC1saW5rIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC1zaXplOiAwLjk4cmVtO1xuICBjb2xvcjogJHRleHQtbXV0ZWQ7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tdG9wOiAxcmVtO1xuICB0cmFuc2l0aW9uOiBjb2xvciAzMDBtcztcblxuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogJHdoaXRlO1xuICB9XG59XG5cbi5jYXJkLWJvZHkge1xuICAuY2FyZC1ib2R5IHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cblxuLmNhcmQtYm9keV9fdGl0bGUge1xuICBmb250LXNpemU6IDEuMTVyZW07XG4gIGNvbG9yOiAkaGVhZGluZ3MtY29sb3I7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG59XG5cbi5jYXJkLS1mdWxsc2NyZWVuIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHotaW5kZXg6ICRoZWFkZXItei1pbmRleCArIDE7XG4gIGJhY2tncm91bmQtY29sb3I6ICRiZy1oaWdobGlnaHRlZC1kYXJrZXN0O1xuICBvdmVyZmxvdzogYXV0bztcbn1cblxuLmNhcmQtaGVhZGVyIHtcbiAgcGFkZGluZzogMS4ycmVtICRjYXJkLXNwYWNlci14O1xufVxuXG4uY2FyZC1ncm91cCB7XG4gIGJveC1zaGFkb3c6ICRjYXJkLXNoYWRvdztcblxuICAuY2FyZCB7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgfVxufVxuIiwiLy8gQ3VzdG9tIHRoZW1lIGJ1dHRvbnNcbkBtaXhpbiBjdXN0b20tdGhlbWUtYnV0dG9ucyAoJGNvbG9yLCAkYmcsICRob3Zlci1iZywgJGFjdGl2ZS1iZykge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmctaGlnaGxpZ2h0ZWQtZGFyaztcbiAgY29sb3I6ICRjb2xvcjtcblxuICAmOm5vdChbZGlzYWJsZWRdKSB7XG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGhvdmVyLWJnO1xuICAgIH1cblxuICAgICYuYWN0aXZlIHtcbiAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGFjdGl2ZS1iZztcbiAgICB9XG4gIH1cblxuICAmW2Rpc2FibGVkXSB7XG4gICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgIG9wYWNpdHk6IDAuNzU7XG4gIH1cbn1cblxuQG1peGluIGN1c3RvbS10aGVtZS1vdXRsaW5lLWJ1dHRvbnMgKCRjb2xvciwgJGJvcmRlci1jb2xvciwgJGhvdmVyLWJnKSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXItY29sb3I6ICRib3JkZXItY29sb3I7XG4gIGNvbG9yOiAkY29sb3I7XG5cbiAgJjpub3QoW2Rpc2FibGVkXSkge1xuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRob3Zlci1iZztcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgfVxuICB9XG59XG5cbi5idG4tdGhlbWUge1xuICBAaW5jbHVkZSBjdXN0b20tdGhlbWUtYnV0dG9ucygkYnRuLXRoZW1lLWNvbG9yLCAkYnRuLXRoZW1lLWJnLCAkYnRuLXRoZW1lLWhvdmVyLWJnLCAkYnRuLXRoZW1lLWFjdGl2ZS1iZyk7XG59XG5cbi5idG4tdGhlbWUtZGFyayB7XG4gIEBpbmNsdWRlIGN1c3RvbS10aGVtZS1idXR0b25zKCRidG4tdGhlbWUtZGFyay1jb2xvciwgJGJ0bi10aGVtZS1kYXJrLWJnLCAkYnRuLXRoZW1lLWRhcmstaG92ZXItYmcsICRidG4tdGhlbWUtZGFyay1hY3RpdmUtYmcpO1xufVxuXG4uYnRuLW91dGxpbmUtdGhlbWUge1xuICBAaW5jbHVkZSBjdXN0b20tdGhlbWUtb3V0bGluZS1idXR0b25zKCRidG4tdGhlbWUtY29sb3IsIHJnYmEoJGJ0bi10aGVtZS1jb2xvciwgMC4yNSksICRidG4tdGhlbWUtYmcpO1xufVxuXG4uYnRuLW91dGxpbmUtdGhlbWUtZGFyayB7XG4gIEBpbmNsdWRlIGN1c3RvbS10aGVtZS1vdXRsaW5lLWJ1dHRvbnMoJGJ0bi10aGVtZS1kYXJrLWNvbG9yLCAkYnRuLXRoZW1lLWRhcmstYmcsICRidG4tdGhlbWUtZGFyay1iZyk7XG59XG5cbi5idG4tb3V0bGluZS1hbGVydHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHllbGxvdztcbn1cblxuLy8gSWNvbiBCdXR0b25zXG4uYnRuLS1pY29uIHtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICB3aWR0aDogM3JlbTtcbiAgaGVpZ2h0OiAzcmVtO1xuICBwYWRkaW5nOiAwOyBcbiAgZm9udC1zaXplOiAxLjVyZW07XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuLmJ0bi0taWNvbi10ZXh0IHtcbiAgJiA+IFtjbGFzcyo9XCJ6d2ljb24tXCJdIHtcbiAgICBmb250LXNpemU6IDEuMnJlbTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICBtYXJnaW46IDAuMTVyZW0gMC41cmVtIDAgMDtcbiAgfVxufVxuXG5cbi8vIEFjdGlvbiBhbmQgRml4ZWQgQnV0dG9uc1xuLmJ0bi0tYWN0aW9uIHtcbiAgei1pbmRleDogMjtcbiAgaGVpZ2h0OiA1MHB4O1xuICB3aWR0aDogNTBweDtcbiAgcGFkZGluZzogMDtcbiAgbGluZS1oZWlnaHQ6IDUwcHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGZvbnQtc2l6ZTogMjBweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBib3gtc2hhZG93OiAwIDNweCA3cHggcmdiYSgkYmxhY2ssIDAuMTUpO1xufVxuXG4uYnRuLS1maXhlZCB7XG4gIHBvc2l0aW9uOiBmaXhlZCAhaW1wb3J0YW50O1xuICBib3R0b206IDMwcHg7XG4gIHJpZ2h0OiAzMHB4O1xuICBmb250LXNpemU6IDIuMjVyZW07XG59XG5cblxuLy8gQnV0dG9uIEdyb3Vwc1xuLmJ0bi1ncm91cC1qdXN0aWZpZWQge1xuICBkaXNwbGF5OiBmbGV4O1xuICB3aWR0aDogMTAwJTtcbiAgLmJ0bixcbiAgLmJ0bi1ncm91cCB7XG4gICAgZmxleDogMTtcbiAgICAuYnRuIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxufVxuXG4uYnRuLWdyb3VwLS1jb2xvcnMge1xuICAmID4gLmJ0biB7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiA1MCUgIWltcG9ydGFudDtcbiAgICB3aWR0aDogMzBweDtcbiAgICBoZWlnaHQ6IDMwcHg7XG4gICAgbWFyZ2luLXJpZ2h0OiA0cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogNHB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICY6YmVmb3JlIHtcbiAgICAgIEBpbmNsdWRlIGZvbnQtaWNvbignXFxlYTQ4JywgMnJlbSk7XG4gICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMjAwbXMsIG9wYWNpdHkgMjAwbXM7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgdG9wOiAwO1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIHBhZGRpbmc6IDFweCAwIDAgMXB4O1xuICAgICAgQGluY2x1ZGUgc2l6ZSgxMDAlLCAxMDAlKTtcbiAgICB9XG5cbiAgICAmLmJ0bjpub3QoW2NsYXNzKj1cImJnLVwiXSkge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgZGFya2VuKCRpbnB1dC1ib3JkZXItY29sb3IsIDUlKTtcblxuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBjb2xvcjogJGJvZHktY29sb3I7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5hY3RpdmUge1xuICAgICAgJjpiZWZvcmUge1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uYnRuLWdyb3VwLFxuLmJ0bi1ncm91cC12ZXJ0aWNhbCB7XG4gIC5idG4gKyAuYnRuLFxuICAuYnRuICsgLmJ0bi1ncm91cCxcbiAgLmJ0bi1ncm91cCArIC5idG4sXG4gIC5idG4tZ3JvdXAgKyAuYnRuLWdyb3VwIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxufVxuXG4uYnRuLWdyb3VwLXZlcnRpY2FsIHtcbiAgJiA+IC5idG46bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cbn1cbiIsIi50YWJsZSB7XG4gIHRoIHtcbiAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG4gIH1cblxuICB0aCwgdGQge1xuICAgIHBhZGRpbmc6IDFyZW0gMC44cmVtO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIH1cblxuICB0aGVhZCB7XG4gICAgJiA+IHRyIHtcbiAgICAgICYgPiB0aCB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi50aGVhZC1kYXJrLFxuLnRoZWFkLWxpZ2h0IHtcbiAgJiA+IHRyIHtcbiAgICAmID4gdGgge1xuICAgICAgYm9yZGVyLXRvcDogMDtcbiAgICB9XG4gIH1cblxuICAmICsgdGJvZHkge1xuICAgICYgPiB0cjpmaXJzdC1jaGlsZCB7XG4gICAgICAmID4gdGQsXG4gICAgICAmID50aCB7XG4gICAgICAgIGJvcmRlci10b3A6IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG59IiwiLmZvcm0tY29udHJvbCB7XG4gIHJlc2l6ZTogbm9uZTtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgLW1zLW92ZXJmbG93LXN0eWxlOiBub25lO1xuICBib3JkZXI6IDFweCBzb2xpZCBibGFjaztcbiAgY29sb3I6ICRibGFjaztcbn1cbi5mb3JtLWNvbnRyb2w6Zm9jdXMge1xuICBib3JkZXI6IDFweCBzb2xpZCBibGFjaztcbn1cblxuLmZvcm0tY29udHJvbFtyZWFkb25seV17XG4gIGNvbG9yOiBibGFjaztcbn1cblxuLmZvcm0tZ3JvdXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGNvbG9yOiBibGFjaztcbn1cblxuc2VsZWN0OjotbXMtZXhwYW5kIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuc2VsZWN0LmZvcm0tY29udHJvbCB7XG4gIGJhY2tncm91bmQ6ICRzZWxlY3QtYmc7XG59XG5cbi5sb2dpbiAuZm9ybS1jb250cm9se1xuICBjb2xvcjogd2hpdGU7XG4gICY6OnBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogcmdiYSgkd2hpdGUsIDAuNSk7XG4gIH1cbn0gXG5cbi5uZXctY29udGFjdCAuZm9ybS1jb250cm9se1xuICBjb2xvcjogd2hpdGU7XG4gICY6OnBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogcmdiYSgkd2hpdGUsIDAuNSk7XG4gIH1cbn0gXG5cbi5uZXctY29udGFjdCAuaGVscC10ZXh0e1xuICBjb2xvcjogd2hpdGU7XG59XG5cbi5sb2dpbiAudGV4dC1wcmltYXJ5e1xuICBjb2xvcjogI2E0ZDBmZiAhaW1wb3J0YW50O1xufVxuXG4ubG9naW4gLnRleHQtcHJpbWFyeTpob3ZlcntcbiAgY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xufVxuXG4ubG9naW4gYnV0dG9uOmhvdmVye1xuICBjb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XG59XG5cbi8vIHZhbGlkYXRpb25cbi52YWxpZC10b29sdGlwLFxuLmludmFsaWQtdG9vbHRpcCB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIHBhZGRpbmc6IDAuMjVyZW0gMC41cmVtIDAuMzVyZW07XG59IiwiLmlucHV0LWdyb3VwLXByZXBlbmQge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG5cbiAgLmlucHV0LWdyb3VwLXRleHQge1xuICAgIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgfVxufVxuXG4uaW5wdXQtZ3JvdXAtYXBwZW5kIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG5cbiAgLmlucHV0LWdyb3VwLXRleHQge1xuICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICB9XG59XG5cbi5pbnB1dC1ncm91cC10ZXh0IHtcbiAgW2NsYXNzKj1cInp3aWNvbi1cIl0ge1xuICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICB9XG59IiwiLnBhZ2UtaXRlbSB7XG4gICYuZGlzYWJsZWQge1xuICAgIG9wYWNpdHk6IDAuNjtcbiAgfVxufVxuXG4ucGFnZS1pdGVtLmFjdGl2ZSAucGFnZS1saW5re1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmctaGlnaGxpZ2h0ZWQtZGFyaztcbn1cblxuLnBhZ2UtbGluayB7XG4gIGJvcmRlci1yYWRpdXM6IDUwJSAhaW1wb3J0YW50O1xuICB3aWR0aDogMzJweDtcbiAgaGVpZ2h0OiAzMnB4O1xuICBsaW5lLWhlaWdodDogMzJweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB6LWluZGV4OiAxO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMzAwbXMsIGNvbG9yIDMwMG1zO1xuICBtYXJnaW46IDAgMnB4O1xuXG4gICYgPiBpIHtcbiAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICBsaW5lLWhlaWdodDogMzJweDtcbiAgfVxufSIsIi5hbGVydC1oZWFkaW5nIHtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkO1xuICBmb250LXNpemU6IDEuMXJlbTtcbiAgbWFyZ2luOiAwLjE1cmVtIDAgMXJlbTtcbiAgY29sb3I6IGluaGVyaXQ7XG59XG5cbi5hbGVydC1pbmZve1xuICBoMSwgaDIsIGgzLCBoNCwgaDV7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgfVxufVxuXG4uYWxlcnQtbGluayB7XG4gIGJvcmRlci1ib3R0b206IDFweCBkb3R0ZWQgcmdiYSgkd2hpdGUsIDAuMzUpO1xufVxuXG4uYWxlcnQtZXJyb3Ige1xuICBjb2xvcjogI2Y4ZDdkYTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2MyMmYzZDtcbiAgYm9yZGVyLWNvbG9yOiAjZjVjNmNiO1xufVxuXG4uYWxlcnQtZXJyb3IgaHIge1xuICBib3JkZXItdG9wLWNvbG9yOiAjZjFiMGI3O1xufVxuXG4uYWxlcnQtZXJyb3IgLmFsZXJ0LWxpbmsge1xuICBjb2xvcjogI2YwYWNiMjtcbn0iLCIuY2xvc2Uge1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDMwMG1zO1xuICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgJiwgJjpob3ZlciB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufSIsIi5icmVhZGNydW1iIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRiZy1oaWdobGlnaHRlZC1saWdodDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cblxuLmJyZWFkY3J1bWItaXRlbSB7XG4gICY6bm90KC5hY3RpdmUpIHtcbiAgICAmID4gYSB7XG4gICAgICBjb2xvcjogJHRleHQtbXV0ZWQ7XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgfVxuICAgIH1cbiAgfVxufSIsIi5hY2NvcmRpb24ge1xuICAuY2FyZCB7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICBtYXJnaW46IDAgMCAxcHg7XG4gIH1cblxuICAuY2FyZC1oZWFkZXIge1xuICAgICYgPiBhIHtcbiAgICAgIGNvbG9yOiAkaGVhZGluZ3MtY29sb3I7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHRyYW5zaXRpb246IGNvbG9yIDMwMG1zO1xuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgb3BhY2l0eTogMC45O1xuICAgICAgfVxuICAgIH1cbiAgfVxufSIsIi5jYXJvdXNlbC1pdGVtIHtcbiAgaW1nIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgfVxufVxuXG4uY2Fyb3VzZWwtY2FwdGlvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGJsYWNrLCAwLjUpO1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAkYm9yZGVyLXJhZGl1cyAwIDA7XG4gIGJvdHRvbTogMDtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkO1xuICBwYWRkaW5nLWJvdHRvbTogMzVweDtcblxuICBoMyB7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBmb250LXNpemU6IDEuM3JlbTtcbiAgfVxufVxuXG4uY2Fyb3VzZWwtY29udHJvbC1wcmV2LFxuLmNhcm91c2VsLWNvbnRyb2wtbmV4dCB7XG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGJsYWNrLCAwLjI1KTtcbiAgfVxufVxuXG4uY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24sXG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24ge1xuICBiYWNrZ3JvdW5kLXNpemU6IGF1dG87XG59IiwiLm1vZGFsLWZvb3RlciB7XG4gIHBhZGRpbmctdG9wOiAwO1xuXG4gICYgPiAuYnRuLWxpbmsge1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgZm9udC1zaXplOiAwLjlyZW07XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJnLWhpZ2hsaWdodGVkLWxpZ2h0O1xuICAgIH1cbiAgfVxufSIsIi5wb3BvdmVyIHtcbiAgYm94LXNoYWRvdzogJHBvcG92ZXItYm94LXNoYWRvdztcbn1cblxuLnBvcG92ZXItaGVhZGVyIHtcbiAgcGFkZGluZy1ib3R0b206IDA7XG59IiwiLm5hdi10YWJzIHtcbiAgLm5hdi1saW5rIHtcbiAgICBib3JkZXI6IDA7XG4gICAgY29sb3I6ICR0ZXh0LW11dGVkO1xuICAgIHRyYW5zaXRpb246IGNvbG9yIDMwMG1zO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmb250LXNpemU6IDEuMXJlbTtcblxuICAgICY6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBoZWlnaHQ6IDJweDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbGVmdDogMDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMzAwbXM7XG4gICAgfVxuXG4gICAgJi5hY3RpdmUge1xuICAgICAgJjpiZWZvcmUge1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4udGFiLWNvbnRlbnQge1xuICBwYWRkaW5nOiAxLjVyZW0gMDtcbn0iLCIudG9hc3QtaGVhZGVyIHtcbiAgJiA+IGkge1xuICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgIG1hcmdpbi1yaWdodDogMC41cmVtO1xuICB9XG5cbiAgJiA+IHNtYWxsIHtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBwYWRkaW5nOiAwIDAuNXJlbTtcbiAgICBmb250LXNpemU6ICR0b2FzdC1mb250LXNpemU7XG4gIH1cblxuICBbZGF0YS1kaXNtaXNzXSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMXB4O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICY6aG92ZXIge1xuICAgICAgb3BhY2l0eTogMC44O1xuICAgIH1cbiAgfVxufVxuXG4udG9hc3QtYm9keSB7XG4gIGNvbG9yOiAkYmxhY2s7XG4gIGZvbnQtc2l6ZTogJHRvYXN0LWZvbnQtc2l6ZTtcbn0iLCIvLyBHZW5lcmF0ZSBiYWNrZ3JvdW5kIGNvbG9yIGFuZCBjb2xvciBjbGFzc2VzXG5AZWFjaCAkY29sb3IgaW4gJGN1c3RvbS1jb2xvcnMge1xuICAuYmctI3tudGgoJGNvbG9yLCAxKX0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICN7bnRoKCRjb2xvciwgMil9ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudGV4dC0je250aCgkY29sb3IsIDEpfSB7XG4gICAgY29sb3I6ICN7bnRoKCRjb2xvciwgMil9ICFpbXBvcnRhbnQ7XG4gIH1cbn0gICAiLCI6Oi1tb3otc2VsZWN0aW9uIHtcbiAgYmFja2dyb3VuZDogcmdiYSgkd2hpdGUsIDAuMSk7XG59XG5cbjo6c2VsZWN0aW9uIHtcbiAgYmFja2dyb3VuZDogcmdiYSgkd2hpdGUsIDAuMSk7XG59XG5cbioge1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcblxuICAmOmZvY3VzLFxuICAmOmFjdGl2ZSB7XG4gICAgb3V0bGluZTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbmh0bWwge1xuICBmb250LXNpemU6ICRmb250LXNpemUtcm9vdDtcbn1cblxuYSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxucHJlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHByZS1iZztcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gIHBhZGRpbmc6IDEuNXJlbTtcbn1cblxuYnV0dG9uLFxuaW5wdXQsXG5vcHRncm91cCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1zYW5zLXNlcmlmO1xufSIsIi5saXN0IHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuXG4gICYgPiBsaSB7XG4gICAgJjpiZWZvcmUge1xuICAgICAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1pY29uO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxLjFyZW07XG4gICAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgfVxuICB9XG59XG5cbi5saXN0LS1kYXNoID4gbGk6YmVmb3JlIHtcbiAgY29udGVudDogJ1xcZWE2OCc7XG59XG5cbi5saXN0LS1jaGVjayA+IGxpOmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICdcXGVhNDYnO1xufVxuXG4ubGlzdC0tY2lyY2xlID4gbGk6YmVmb3JlIHtcbiAgY29udGVudDogJ1xcZWE2Nic7XG59IiwiLm1haW4ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5tYWluLS1hbHQge1xuICBwYWRkaW5nLXRvcDogNDBweDtcbn1cblxuLmNvbnRlbnQge1xuICAmOm5vdCguY29udGVudC0tYm94ZWQpOm5vdCguY29udGVudC0tZnVsbCkge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoeGwpIHtcbiAgICAgIHBhZGRpbmc6ICgkaGVhZGVyLWhlaWdodCArICRncmlkLWd1dHRlci13aWR0aCkgJGdyaWQtZ3V0dGVyLXdpZHRoICRncmlkLWd1dHRlci13aWR0aCAoJHNpZGViYXItd2lkdGggKyAkZ3JpZC1ndXR0ZXItd2lkdGgpO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtYmV0d2VlbihzbSwgbGcpIHtcbiAgICAgIHBhZGRpbmc6ICgkaGVhZGVyLWhlaWdodCArICRncmlkLWd1dHRlci13aWR0aCkgJGdyaWQtZ3V0dGVyLXdpZHRoICRncmlkLWd1dHRlci13aWR0aDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcbiAgICAgIHBhZGRpbmc6ICgkaGVhZGVyLWhlaWdodCArICRncmlkLWd1dHRlci13aWR0aCkgJGdyaWQtZ3V0dGVyLXdpZHRoLzIgJGdyaWQtZ3V0dGVyLXdpZHRoO1xuICAgIH1cbiAgfVxufVxuXG4uY29udGVudC0tZnVsbCB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgICBwYWRkaW5nOiAoJGhlYWRlci1oZWlnaHQgKyAkZ3JpZC1ndXR0ZXItd2lkdGgpICRncmlkLWd1dHRlci13aWR0aCAkZ3JpZC1ndXR0ZXItd2lkdGg7XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcbiAgICBwYWRkaW5nOiAoJGhlYWRlci1oZWlnaHQgKyAkZ3JpZC1ndXR0ZXItd2lkdGgvMikgJGdyaWQtZ3V0dGVyLXdpZHRoLzIgJGdyaWQtZ3V0dGVyLXdpZHRoO1xuICB9XG59XG5cbi5jb250ZW50X19pbm5lciB7XG4gIG1hcmdpbjogYXV0bztcblxuICAmOm5vdCguY29udGVudF9faW5uZXItLXNtKSB7XG4gICAgbWF4LXdpZHRoOiAxMzIwcHg7XG4gIH1cbn1cblxuLmNvbnRlbnRfX2lubmVyLS1zbSB7XG4gIG1heC13aWR0aDogODAwcHg7XG59XG5cbi5jb250ZW50X190aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgcGFkZGluZzogMC43NXJlbSAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgJiA+IGgxIHtcbiAgICBsaW5lLWhlaWdodDogMTQwJTtcbiAgICBmb250LXNpemU6IDEuMTVyZW07XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmctbGVmdDogMnJlbTtcbiAgICBjb2xvcjogJGNvbnRlbnQtdGl0bGUtaGVhZGluZy1jb2xvcjtcbiAgICBmbGV4OiAxIDEgYXV0bztcblxuICAgICYgPiBzbWFsbCB7XG4gICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG1hcmdpbi10b3A6IDAuNXJlbTtcbiAgICAgIGNvbG9yOiByZ2JhKCRjb250ZW50LXRpdGxlLWhlYWRpbmctY29sb3IsIDAuNzUpO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgJjpub3QoLmNvbnRlbnRfX3RpdGxlLS1hbHQpIHtcbiAgICAmID4gaDEge1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB9XG4gIH1cblxuICAuYWN0aW9ucyB7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgcGFkZGluZy1sZWZ0OiAycmVtO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxufSIsIi8vIFZpZXcgTW9yZSBMaW5rXG4udmlldy1tb3JlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDEuMXJlbSAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbi10b3A6IDAuNXJlbTtcbiAgZm9udC1zaXplOiAwLjlyZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZDtcbiAgdHJhbnNpdGlvbjogY29sb3IgMzAwbXM7XG4gIGNvbG9yOiAkdGV4dC1tdXRlZDtcblxuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogJHdoaXRlO1xuICB9XG59XG5cbi5sb2FkLW1vcmUge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbi10b3A6IDJyZW07XG5cbiAgJiA+IGEge1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgcGFkZGluZzogMC43NXJlbSAxLjVyZW07XG4gICAgYm9yZGVyOiAycHggc29saWQgcmdiYSgkYmxhY2ssIDAuMTUpO1xuICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgIGNvbG9yOiAkYm9keS1jb2xvcjtcbiAgICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgMzAwbXM7XG5cbiAgICAmID4gaSB7XG4gICAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAzMDBtcztcbiAgICAgIG1hcmdpbi1yaWdodDogMC41cmVtO1xuICAgIH1cblxuICAgICY6aG92ZXIge1xuICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKCRibGFjaywgMC4zNSk7XG5cbiAgICAgICYgPiBpIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmNhcmQtYm9keSB7XG4gIC52aWV3LW1vcmUge1xuICAgIHBhZGRpbmc6IDFyZW0gMCAwO1xuICB9XG59XG5cbi8vIEFjdGlvbiBJY29uc1xuLmFjdGlvbnMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4uYWN0aW9uc19faXRlbSB7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGNvbG9yOiAkYm9keS1jb2xvcjtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAzMDBtcywgY29sb3IgMzAwbXM7XG4gIEBpbmNsdWRlIHNpemUoMzVweCwgMzVweCk7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgJi5zaG93LFxuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmctaGlnaGxpZ2h0ZWQtZGFyaztcbiAgICBjb2xvcjogJHdoaXRlO1xuICB9XG59XG5cbi5hY3Rpb25zX19pdGVtLS1hY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmctaGlnaGxpZ2h0ZWQtbGlnaHQ7XG59XG5cblxuLy8gSWNvbiBMaXN0c1xuLmljb24tbGlzdCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcblxuICAmID4gbGkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nOiAwLjNyZW0gMDtcblxuICAgIGFkZHJlc3Mge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAgIG1hcmdpbi10b3A6IDAuMjVyZW07XG4gICAgfVxuXG4gICAgJiA+IGkge1xuICAgICAgd2lkdGg6IDIuNXJlbTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICAgIHRvcDogMC4xMnJlbTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBBdmF0YXJzXG4uYXZhdGFyLWltZyxcbi5hdmF0YXItY2hhciB7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICBAaW5jbHVkZSBzaXplKDNyZW0sIDNyZW0pO1xuICBtYXJnaW4tcmlnaHQ6IDEuMnJlbTtcbn1cblxuLmF2YXRhci1jaGFyIHtcbiAgbGluZS1oZWlnaHQ6IDIuOXJlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC1zaXplOiAxLjJyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY29sb3I6ICR3aGl0ZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJnLWhpZ2hsaWdodGVkLWxpZ2h0O1xuICBmb250LXN0eWxlOiBub3JtYWw7XG5cbiAgJiA+IGkge1xuICAgIGxpbmUtaGVpZ2h0OiAyLjhyZW07XG4gICAgZm9udC1zaXplOiAxLjNyZW07XG4gIH1cbn1cblxuXG4vLyBCYWNrZHJvcHNcbi5zYS1iYWNrZHJvcCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBAaW5jbHVkZSBzaXplKDEwMCUsIDEwMCUpO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHotaW5kZXg6ICRzaWRlYmFyLXotaW5kZXggLSAxO1xufVxuXG5cbi8vIFRhZ3Ncbi50YWdzIHtcbiAgJiA+IGEge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwYWRkaW5nOiAwLjY1cmVtIDFyZW07XG4gICAgYm9yZGVyOiAycHggc29saWQgJGJnLWhpZ2hsaWdodGVkLWxpZ2h0O1xuICAgIGNvbG9yOiAkYm9keS1jb2xvcjtcbiAgICBtYXJnaW46IDAgMC4zcmVtIDAuNXJlbSAwO1xuICAgIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAzMDBtcztcblxuICAgICY6aG92ZXIge1xuICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKCR3aGl0ZSwgMC4yKTtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBEYXNoYm9hcmRcbi53aWRnZXQtbGlzdHMge1xuICBjb2x1bW4tZ2FwOiAkZ3JpZC1ndXR0ZXItd2lkdGg7XG5cbiAgQG1lZGlhKG1pbi13aWR0aDogMTUwMHB4KSB7XG4gICAgY29sdW1uLWNvdW50OiAzO1xuICB9XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6IDkwMHB4KSBhbmQgKG1heC13aWR0aDogMTQ5OXB4KSB7XG4gICAgY29sdW1uLWNvdW50OiAyO1xuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogODk5cHgpIHtcbiAgICBjb2x1bW4tY291bnQ6IDE7XG4gIH1cbn0iLCIvLyBIZWFkZXIgQmFzZVxuLmhlYWRlciB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogJGhlYWRlci1oZWlnaHQ7XG4gIGNvbG9yOiAkd2hpdGU7XG4gIHotaW5kZXg6ICRoZWFkZXItei1pbmRleDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGhlYWRlci1iZztcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW07XG4gIGJveC1zaGFkb3c6ICRoZWFkZXItc2hhZG93O1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDEwMDBtcywgYm94LXNoYWRvdyAxMDAwbXM7XG4gIEBpbmNsdWRlIGNsZWFyZml4KCk7XG5cbiAgLnNhLWJhY2tkcm9wIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIH1cbn1cblxuLmhlYWRlci0tc2Nyb2xsZWQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkaGVhZGVyLWJnLXNjcm9sbGVkO1xuICBib3gtc2hhZG93OiAkaGVhZGVyLXNoYWRvdztcbn1cblxuXG4vLyBOYXZpZ2F0aW9uIHRyaWdnZXJcbi5uYXZpZ2F0aW9uLXRyaWdnZXIge1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiA1MHB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICBmb250LXNpemU6IDJyZW07XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAxMDBtcztcblxuICAmOmhvdmVyIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgb3BhY2l0eTogMC44O1xuICB9XG59XG5cblxuLy8gTG9nb1xuLmxvZ28ge1xuICBwYWRkaW5nLWxlZnQ6IDIuMnJlbTtcbiAgaGVpZ2h0OiAkaGVhZGVyLWhlaWdodDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHhsKSB7XG4gICAgbWluLXdpZHRoOiAkc2lkZWJhci13aWR0aDtcbiAgfVxuXG4gICYgPiBhIHtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIGxpbmUtaGVpZ2h0OiAxMDAlO1xuICAgIGZvbnQtc2l6ZTogMS4zcmVtO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgbWFyZ2luOiAwO1xuICB9XG59XG5cblxuLy8gTmF2XG4udG9wLW5hdiB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbjogMCAwIDAgYXV0bztcbiAgcGFkZGluZzogMDtcblxuICAmID4gbGkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXG4gICAgJiA+IGEge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgYm9yZGVyLXJhZGl1czogMnB4O1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgbGluZS1oZWlnaHQ6IDEwMCU7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDMwMG1zO1xuXG4gICAgICAmOm5vdCguaGVhZGVyX19uYXZfX3RleHQpIHtcbiAgICAgICAgcGFkZGluZzogMC42NXJlbSAwLjE1cmVtO1xuICAgICAgICBtaW4td2lkdGg6IDUwcHg7XG5cbiAgICAgICAgJiA+IGkge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS42NXJlbTtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMTAwJTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICYgPiBhOmhvdmVyLFxuICAgICYuc2hvdyA+IGEge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkd2hpdGUsIDAuMik7XG4gICAgfVxuXG4gICAgLmRyb3Bkb3duLW1lbnUtLWJsb2NrIHtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHhzKSB7XG4gICAgICBwb3NpdGlvbjogc3RhdGljO1xuXG4gICAgICAuZHJvcGRvd24tbWVudS0tYmxvY2sge1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB0b3A6ICRoZWFkZXItaGVpZ2h0ICFpbXBvcnRhbnQ7XG4gICAgICAgIHRyYW5zZm9ybTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4udG9wLW5hdl9fbm90aWZpY2F0aW9ucyB7XG4gIC5saXN0dmlldyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgJjpiZWZvcmUge1xuICAgICAgQGluY2x1ZGUgZm9udC1pY29uKCdcXGVhNDgnLCAzLjVyZW0pO1xuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDMwMG1zLCBvcGFjaXR5IDMwMG1zO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHRvcDogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgd2lkdGg6IDkwcHg7XG4gICAgICBoZWlnaHQ6IDkwcHg7XG4gICAgICBib3JkZXI6IDJweCBzb2xpZCByZ2JhKCR3aGl0ZSwgMC4xKTtcbiAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDApIHJvdGF0ZSgtMzYwZGVnKTtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBsaW5lLWhlaWdodDogODZweDtcbiAgICB9XG4gIH1cblxuICAubGlzdHZpZXdfX3Njcm9sbCB7XG4gICAgaGVpZ2h0OiAzNTBweDtcbiAgfVxufVxuXG4udG9wLW5hdl9fbm90aWZpY2F0aW9ucy0tY2xlYXJlZCB7XG4gIC5saXN0dmlldyB7XG4gICAgJjpiZWZvcmUge1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKSByb3RhdGUoMGRlZyk7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgIH1cbiAgfVxufVxuXG4udG9wLW5hdl9fbm90aWZ5IHtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHdpZHRoOiA1cHg7XG4gICAgaGVpZ2h0OiA1cHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IC0zcHg7XG4gICAgcmlnaHQ6IDA7XG4gICAgbGVmdDogMDtcbiAgICBtYXJnaW46IGF1dG87XG4gICAgQGluY2x1ZGUgYW5pbWF0ZShmbGFzaCwgMjAwMG1zKTtcbiAgICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTtcbiAgfVxufVxuXG5cbi8vIFNlYXJjaFxuQG1peGluIHNlYXJjaC1mbG9hdCgkYmctY29sb3IsICRjb2xvciwgJHBsYWNlaG9sZGVyLWNvbG9yKSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRiZy1jb2xvcjtcbiAgY29sb3I6ICRjb2xvcjtcblxuICAmOjpwbGFjZWhvbGRlciB7XG4gICAgY29sb3I6IHJnYmEoJHdoaXRlLCAwLjg1KTtcbiAgfVxufVxuXG4uc2VhcmNoIHtcbiAgZmxleDogMTtcbiAgbWFyZ2luLXJpZ2h0OiAxLjVyZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obGcpIHtcbiAgICBwYWRkaW5nOiAwIDEuNXJlbTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDA7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICB6LWluZGV4OiAkaGVhZGVyLXotaW5kZXggKyAxO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMzAwbXMsIGJveC1zaGFkb3cgMzAwbXMsIGJhY2tncm91bmQtY29sb3IgMzAwbXM7XG5cbiAgICAmOm5vdCguc2VhcmNoLS10b2dnbGVkKSB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsLTEwNSUsMCk7XG4gICAgfVxuICB9XG59XG5cbi5zZWFyY2gtLXRvZ2dsZWQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkaGVhZGVyLWJnLXNjcm9sbGVkO1xuICBib3gtc2hhZG93OiAkaGVhZGVyLXNoYWRvdztcbn1cblxuLnNlYXJjaF9faW5uZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKGxnKSB7XG4gICAgbWF4LXdpZHRoOiA2MDBweDtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuXG4uc2VhcmNoX190ZXh0IHtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgaGVpZ2h0OiAyLjlyZW07XG4gIHBhZGRpbmctbGVmdDogM3JlbTtcbiAgd2lkdGg6IDEwMCU7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMzAwbXMsIGNvbG9yIDMwMG1zO1xuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgICBAaW5jbHVkZSBzZWFyY2gtZmxvYXQocmdiYSgkd2hpdGUsIDAuMDgpLCAkaW5wdXQtY29sb3IsICRpbnB1dC1wbGFjZWhvbGRlci1jb2xvcik7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIEBpbmNsdWRlIHNlYXJjaC1mbG9hdChyZ2JhKCRibGFjaywgMC4yKSwgJGlucHV0LWNvbG9yLCAkaW5wdXQtcGxhY2Vob2xkZXItY29sb3IpO1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obGcpIHtcbiAgICBAaW5jbHVkZSBzZWFyY2gtZmxvYXQocmdiYSgkd2hpdGUsIDAuMTI1KSwgJGlucHV0LWNvbG9yLCAkaW5wdXQtcGxhY2Vob2xkZXItY29sb3IpO1xuICB9XG59XG5cbi5oZWFkZXItLXNjcm9sbGVkIHtcbiAgLnNlYXJjaF9fdGV4dCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkd2hpdGUsIDAuMSk7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJHdoaXRlLCAwLjEyKTtcbiAgICB9XG4gIH1cbn1cblxuLnNlYXJjaF9fcmVzZXQsXG4uc2VhcmNoX19oZWxwZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGZvbnQtc2l6ZTogMS4zcmVtO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAzcmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAzMDBtcywgY29sb3IgMzAwbXMsIHRyYW5zZm9ybSAzMDBtcztcbn1cblxuJWluYWN0aXZlLXByb3BzIHtcbiAgb3BhY2l0eTogMDtcbiAgei1pbmRleDogMDtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbn1cblxuLnNlYXJjaF9fcmVzZXQge1xuICBAZXh0ZW5kICVpbmFjdGl2ZS1wcm9wcztcblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obGcpIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cbn1cblxuLnNlYXJjaF9faGVscGVyIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKGxnKSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB6LWluZGV4OiAwO1xuICB9XG59XG5cbi5zZWFyY2gtLWZvY3VzIHtcbiAgLnNlYXJjaF9faGVscGVyIHtcbiAgICBAZXh0ZW5kICVpbmFjdGl2ZS1wcm9wcztcbiAgfVxuXG4gIC5zZWFyY2hfX3Jlc2V0IHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHotaW5kZXg6IDE7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxufVxuXG5cbi8vIEFwcCBzaG9ydGN1dHNcbi5hcHAtc2hvcnRjdXRzIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAxcmVtO1xufVxuXG4uYXBwLXNob3J0Y3V0c19faXRlbSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZzogMXJlbSAwO1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAzMDBtcztcblxuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmctaG92ZXI7XG5cbiAgICAmID4gaSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCR3aGl0ZSwgMC4yNSk7XG4gICAgfVxuICB9XG5cbiAgJiA+IGkge1xuICAgIHdpZHRoOiA0NXB4O1xuICAgIGhlaWdodDogNDVweDtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBsaW5lLWhlaWdodDogNDVweDtcbiAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCR3aGl0ZSwgMC4xKTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAzMDBtcztcbiAgfVxuXG4gICYgPiBzbWFsbCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLXRvcDogMC41cmVtO1xuICAgIGZvbnQtc2l6ZTogMC45NXJlbTtcblxuICAgICYsXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAkYm9keS1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBUb3AgTmF2aWdhdGlvblxuLnRvcC1tZW51IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gICYgPiBsaSB7XG4gICAgJi5hY3RpdmUge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgYm94LXNoYWRvdzogMCAwIDAgLTJweCByZWQ7XG4gICAgfVxuXG4gICAgJiA+IGEge1xuICAgICAgbGluZS1oZWlnaHQ6IDEwMCU7XG4gICAgICBjb2xvcjogbGlnaHRlbigkYm9keS1jb2xvciwgMTUlKTtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cbiAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgY29sb3I6ICRoZWFkaW5ncy1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4vLyBDbG9ja1xuLmNsb2NrIHtcbiAgYmFja2dyb3VuZDogcmdiYSgkd2hpdGUsIDAuMSk7XG4gIGxpbmUtaGVpZ2h0OiAxMDAlO1xuICBwYWRkaW5nOiAwLjdyZW0gMXJlbTtcbiAgZm9udC1zaXplOiAxLjVyZW07XG4gIG1hcmdpbi1sZWZ0OiAxcmVtO1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbn1cblxuLnRpbWUge1xuICAmID4gc3BhbiB7XG4gICAgJjpub3QoOmxhc3QtY2hpbGQpOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICc6JztcbiAgICAgIHdpZHRoOiAxMHB4O1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgdG9wOiAtMXB4O1xuICAgICAgcmlnaHQ6IC0ycHg7XG4gICAgfVxuICB9XG59IiwiLmZvb3RlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZzogNHJlbSAxcmVtIDJyZW07XG59XG5cbi5mb290ZXJfX25hdiB7XG4gIEBpbmNsdWRlIGxpc3QtdW5zdHlsZWQoKTtcblxuICAmID4gYSB7XG4gICAgcGFkZGluZzogMCAxcmVtO1xuICAgIG1hcmdpbjogMCAwLjVyZW07XG4gICAgY29sb3I6ICR0ZXh0LW11dGVkO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICYgKyBhIHtcbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIEBpbmNsdWRlIHNpemUoNHB4LCA0cHgpO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogLTExcHg7XG4gICAgICAgIHRvcDogOHB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGV4dC1tdXRlZDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgfVxuICB9XG59IiwiQG1peGluIHNpZGViYXItdG9nZ2xlZCgpIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHNpZGViYXItaGlkZGVuLWJnO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMzAwbXMsIG9wYWNpdHkgMzAwbXM7XG5cbiAgJjpub3QoLnRvZ2dsZWQpIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xuICB9XG5cbiAgJi50b2dnbGVkIHtcbiAgICBib3gtc2hhZG93OiA1cHggMCAxMHB4IHJnYmEoJGJsYWNrLCAwLjI1KTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIH1cbn1cblxuQG1peGluIHVzZXItaW52ZXJzZSgpIHtcbiAgLnVzZXJfX2luZm8ge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJHdoaXRlLCAwLjA5KTtcblxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkd2hpdGUsIDAuMSk7XG4gICAgfVxuICB9XG59XG5cbi5hc2lkZS10b2dnbGVkIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLnNpZGViYXIge1xuICB3aWR0aDogJHNpZGViYXItd2lkdGg7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgbGVmdDogMDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB6LWluZGV4OiAkc2lkZWJhci16LWluZGV4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2lkZWJhci1iZztcbiAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgcmdiKDE4MiwgMTc4LCAxNzgpO1xuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoeGwpIHtcbiAgICAmOm5vdCguc2lkZWJhci0taGlkZGVuKSB7XG4gICAgICB0b3A6ICRoZWFkZXItaGVpZ2h0O1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAjeyRoZWFkZXItaGVpZ2h0fSk7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKGxnKSB7XG4gICAgQGluY2x1ZGUgc2lkZWJhci10b2dnbGVkKCk7XG4gICAgQGluY2x1ZGUgdXNlci1pbnZlcnNlKCk7XG4gIH1cblxuICAub3MtY29udGVudCB7XG4gICAgcGFkZGluZzogMTVweCAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5zaWRlYmFyLS1oaWRkZW4ge1xuICBAaW5jbHVkZSBzaWRlYmFyLXRvZ2dsZWQoKTtcbiAgdG9wOiAwO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIEBpbmNsdWRlIHVzZXItaW52ZXJzZSgpO1xufVxuXG4uc2lkZWJhcl9faW5uZXIge1xuICBwYWRkaW5nOiAkZ3JpZC1ndXR0ZXItd2lkdGggMnJlbSAwLjVyZW0gMnJlbTtcbn1cblxuXG4vLyBVc2VyXG4udXNlciB7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi1ib3R0b206IDE1cHg7XG5cbiAgLmRyb3Bkb3duLW1lbnUge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJvcmRlci1yYWRpdXM6IDAgMCAkYm9yZGVyLXJhZGl1cyAkYm9yZGVyLXJhZGl1cztcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKCR3aGl0ZSwgMC4xKTtcbiAgICBib3JkZXItdG9wOiAwO1xuICAgIFxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihsZykge1xuICAgICAgXG4gICAgfVxuICB9XG59XG5cbi51c2VyX19pbmZvIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBmb250LXNpemU6IDAuOXJlbTtcbiAgcGFkZGluZzogMXJlbTtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gIGJhY2tncm91bmQtY29sb3I6ICRuYXZpZ2F0aW9uLWxpbmstYWN0aXZlLWJnO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDMwMG1zO1xuXG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJHdoaXRlLCAwLjEpO1xuICB9XG59XG5cbi51c2VyX19pbWcge1xuICB3aWR0aDogM3JlbTtcbiAgaGVpZ2h0OiAzcmVtO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIG1hcmdpbi1yaWdodDogMC44cmVtO1xufVxuXG4udXNlcl9fbmFtZSB7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZDtcbiAgbWFyZ2luLXRvcDogMC4ycmVtO1xufVxuXG4udXNlcl9fZW1haWwge1xuICBjb2xvcjogJHRleHQtbXV0ZWQ7XG59XG5cbi51c2VyX19pbmZvX19zaWRlYmFyIC51c2VyX19uYW1le1xuICBjb2xvcjogYmxhY2s7XG59XG5cbi51c2VyX19pbmZvX19zaWRlYmFyIC51c2VyX19lbWFpbHtcbiAgY29sb3I6IGJsYWNrO1xufVxuXG4vLyBTaXRlIE5hdmlnYXRpb25cbi5uYXZpZ2F0aW9uIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgcGFkZGluZzogMDtcblxuICBsaSB7XG4gICAgYSB7XG4gICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDMwMG1zLCBjb2xvciAzMDBtcztcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgICY6bm90KC5uYXZpZ2F0aW9uX19hY3RpdmUpOm5vdCgubmF2aWdhdGlvbl9fc3ViLS1hY3RpdmUpIHtcbiAgICAgIGEge1xuICAgICAgICBjb2xvcjogJGJsYWNrO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRiZy1oaWdobGlnaHRlZC1kYXJrO1xuICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmID4gbGkge1xuICAgICYgPiBhIHtcbiAgICAgIHBhZGRpbmc6IDAuNzVyZW0gMXJlbSAwLjg1cmVtO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG5cbiAgICAgICYgPiBpIHtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAgICAgZm9udC1zaXplOiAxLjc1cmVtO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRvcDogMC4xcmVtO1xuICAgICAgICB3aWR0aDogMS41cmVtO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMC42cmVtO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYgPiAubmF2aWdhdGlvbl9fYWN0aXZlLFxuICAmID4gLm5hdmlnYXRpb25fX3N1Yi0tYWN0aXZlIHtcbiAgICBtYXJnaW46IDJweCAwO1xuXG4gICAgJiA+IGEge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmlnYXRpb24tbGluay1hY3RpdmUtYmc7XG4gICAgICBjb2xvcjogJG5hdmlnYXRpb24tbGluay1hY3RpdmUtY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi5uYXZpZ2F0aW9uX19zdWIge1xuICAmID4gYSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMXB4O1xuICB9XG5cbiAgJiA+IHVsIHtcbiAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW46IDA7XG5cbiAgICAmID4gbGkge1xuICAgICAgJiA+IGEge1xuICAgICAgICBwYWRkaW5nOiAuNnJlbSAxcmVtIC42cmVtIDIuNHJlbTtcbiAgICAgIH1cblxuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDAuOHJlbTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmOm5vdCgubmF2aWdhdGlvbl9fc3ViLS1hY3RpdmUpIHtcbiAgICAmID4gdWwge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAubmF2aWdhdGlvbl9fYWN0aXZlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSBzaXplKDVweCwgNXB4KTtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogMS41cmVtO1xuICAgICAgdG9wOiAxLjFyZW07XG4gICAgfVxuICAgIFxuICAgICYgPiBhIHtcbiAgICAgIGNvbG9yOiAkbmF2aWdhdGlvbi1saW5rLWFjdGl2ZS1jb2xvcjtcbiAgICB9XG4gIH1cbn0iLCIkdG9nZ2xlLXN3aXRjaC1yYWlsLWJnOiByZ2JhKCRibGFjaywgMC40KTtcblxuLnRvZ2dsZS1zd2l0Y2gge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAzNnB4O1xuICBoZWlnaHQ6IDIwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLnRvZ2dsZS1zd2l0Y2hfX2hlbHBlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgaGVpZ2h0OiAxMnB4O1xuICB3aWR0aDogMTAwJTtcblxuICAmOmJlZm9yZSxcbiAgJjphZnRlciB7XG4gICAgd2lsbC1jaGFuZ2U6IGxlZnQsIGJhY2tncm91bmQtY29sb3I7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgdHJhbnNpdGlvbjogbGVmdCAyMDBtcywgYmFja2dyb3VuZC1jb2xvciwgMjAwbXM7XG4gIH1cblxuICAmOmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHRvZ2dsZS1zd2l0Y2gtcmFpbC1iZztcbiAgICB0b3A6IDRweDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgfVxuXG4gICY6YWZ0ZXIge1xuICAgIHdpZHRoOiAxOXB4O1xuICAgIGhlaWdodDogMTlweDtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgYm94LXNoYWRvdzogMCAycHggOHB4IHJnYmEoJGJsYWNrLCAwLjIpO1xuICAgIHotaW5kZXg6IDE7XG4gIH1cbn1cblxuLnRvZ2dsZS1zd2l0Y2hfX2NoZWNrYm94IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG9wYWNpdHk6IDA7XG4gIHotaW5kZXg6IDI7XG4gIGN1cnNvcjogcG9pbnRlcjtcblxuICAmOmNoZWNrZWQge1xuICAgICYgfiAudG9nZ2xlLXN3aXRjaF9faGVscGVye1xuICAgICAgJjphZnRlciB7XG4gICAgICAgIGxlZnQ6IGNhbGMoMTAwJSAtIDE5cHgpO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcmVkO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICY6ZGlzYWJsZWQge1xuICAgIGN1cnNvcjogYXV0bztcblxuICAgICYgfiAudG9nZ2xlLXN3aXRjaF9faGVscGVyIHtcbiAgICAgIG9wYWNpdHk6IDAuNjU7XG4gICAgfVxuICB9XG5cbiAgJjphY3RpdmUge1xuICAgICYgfiAudG9nZ2xlLXN3aXRjaF9faGVscGVyOmFmdGVyIHtcbiAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDEwcHggcmdiYSgkd2hpdGUsIDAuMDUpO1xuICAgIH1cbiAgfVxufVxuXG4vLyBUaGVtaW5nXG5AbWl4aW4gdG9nZ2xlLXN3aXRjaC10aGVtZSgkY29sb3IpIHtcbiAgLnRvZ2dsZS1zd2l0Y2hfX2NoZWNrYm94IHtcbiAgICAmOmNoZWNrZWQge1xuICAgICAgJiB+IC50b2dnbGUtc3dpdGNoX19oZWxwZXJ7XG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4udG9nZ2xlLXN3aXRjaC0tYW1iZXIgeyBAaW5jbHVkZSB0b2dnbGUtc3dpdGNoLXRoZW1lKCR5ZWxsb3cpOyB9XG4udG9nZ2xlLXN3aXRjaC0tYmx1ZSB7IEBpbmNsdWRlIHRvZ2dsZS1zd2l0Y2gtdGhlbWUoJGJsdWUpOyB9XG4udG9nZ2xlLXN3aXRjaC0tZ3JlZW4geyBAaW5jbHVkZSB0b2dnbGUtc3dpdGNoLXRoZW1lKCRncmVlbik7IH1cbi50b2dnbGUtc3dpdGNoLS10ZWFsIHsgQGluY2x1ZGUgdG9nZ2xlLXN3aXRjaC10aGVtZSgkdGVhbCk7IH1cbi50b2dnbGUtc3dpdGNoLS1wdXJwbGUgeyBAaW5jbHVkZSB0b2dnbGUtc3dpdGNoLXRoZW1lKCRwdXJwbGUpOyB9XG4udG9nZ2xlLXN3aXRjaC0tY3lhbiB7IEBpbmNsdWRlIHRvZ2dsZS1zd2l0Y2gtdGhlbWUoJGN5YW4pOyB9IiwiLmxpc3R2aWV3X19oZWFkZXIge1xuICBjb2xvcjogJGhlYWRpbmdzLWNvbG9yO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBwYWRkaW5nOiAxLjJyZW0gMXJlbSAxcmVtO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGJvcmRlci1saWdodGVzdDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gIC5hY3Rpb25zIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwLjhyZW07XG4gICAgcmlnaHQ6IDFyZW07XG4gIH1cbn1cblxuLmxpc3R2aWV3X19zY3JvbGwge1xuICBvdmVyZmxvdy15OiBhdXRvO1xufVxuXG4ubGlzdHZpZXdfX2l0ZW0ge1xuICBwYWRkaW5nOiAxLjI1cmVtICRjYXJkLXNwYWNlci14O1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDMwMG1zLCBib3JkZXItY29sb3IgMzAwbXM7XG5cbiAgJiA+IC5hdmF0YXItaW1nIHtcbiAgICBtYXJnaW4tdG9wOiAtMC4xcmVtO1xuICB9XG59XG5cbi5saXN0dmlldzpub3QoLmxpc3R2aWV3LS1ibG9jaykge1xuICAubGlzdHZpZXdfX2l0ZW0ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB9XG4gIH1cbn1cblxuLmxpc3R2aWV3X19jb250ZW50IHtcbiAgZmxleDogMTtcbiAgbWluLXdpZHRoOiAwO1xuXG4gICYgPiBwIHtcbiAgICBAaW5jbHVkZSB0ZXh0LXRydW5jYXRlKCk7XG4gICAgY29sb3I6IGdyZXk7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4ubGlzdHZpZXdfX2hlYWRpbmcge1xuICBmb250LXNpemU6IDFyZW07XG4gIGNvbG9yOiAkaGVhZGluZ3MtY29sb3I7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogZ3JleTtcbiAgfVxuXG4gICYgPiBzbWFsbCB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIGNvbG9yOiAkdGV4dC1tdXRlZDtcbiAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG4gICAgZm9udC1zaXplOiAwLjg1cmVtO1xuICAgIG1hcmdpbi10b3A6IDAuMXJlbTtcbiAgfVxuXG4gICYgKyBwIHtcbiAgICBtYXJnaW46IDAuMzVyZW0gMCAwO1xuICAgIGNvbG9yOiBncmV5O1xuICB9XG59XG5cbi5saXN0dmlld19fYXR0cnMge1xuICBmbGV4OiAxIDEwMCU7XG4gIG1hcmdpbi10b3A6IDAuN3JlbTtcblxuICAmID4gc3BhbiB7XG4gICAgcGFkZGluZzogMC41NXJlbSAwLjdyZW0gMC42cmVtO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRib3JkZXItbGlnaHQ7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGxpbmUtaGVpZ2h0OiAxMDAlO1xuICAgIGZvbnQtc2l6ZTogMC45cmVtO1xuICAgIG1hcmdpbjogMC4ycmVtIDAuMDVyZW0gMC4wNTVyZW0gMDtcbiAgfVxufVxuXG4vLyBMaXN0dmlldyBtb2RpZmllciBjbGFzc2VzXG4ubGlzdHZpZXctLWhvdmVyIHtcbiAgLmxpc3R2aWV3X19pdGVtIHtcbiAgICAmOmhvdmVyIHtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaXN0dmlldy1pdGVtLWhvdmVyLWJnO1xuICAgIH1cbiAgfVxufVxuXG4ubGlzdHZpZXctLXN0cmlwZWQge1xuICAubGlzdHZpZXdfX2l0ZW06bnRoLWNoaWxkKGV2ZW4pIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlzdHZpZXctaXRlbS1zdHJpcGVkLWJnO1xuICB9XG59XG5cbi5saXN0dmlld19faXRlbS0tYWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGxpc3R2aWV3LWl0ZW0tYWN0aXZlLWJnO1xufVxuXG4ubGlzdHZpZXctLWJvcmRlcmVkIHtcbiAgLmxpc3R2aWV3X19pdGVtICsgLmxpc3R2aWV3X19pdGVtIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgkd2hpdGUsIDAuMDUpO1xuICB9XG59XG5cbi5saXN0dmlld19fYWN0aW9ucyB7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0O1xuICBtYXJnaW4tcmlnaHQ6IC0xcmVtO1xufSIsIi50b29sYmFyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgaGVpZ2h0OiA0LjVyZW07XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBwYWRkaW5nOiAwLjA1cmVtICRjYXJkLXNwYWNlci14IDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgJjpub3QoLnRvb2xiYXItLWlubmVyKSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2FyZC1iZztcbiAgICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgICAgbWFyZ2luLWJvdHRvbTogJGdyaWQtZ3V0dGVyLXdpZHRoO1xuICAgICAgYm94LXNoYWRvdzogJGNhcmQtc2hhZG93O1xuICAgIH1cbiAgXG4gICAgLmFjdGlvbnMge1xuICAgICAgbWFyZ2luOiAwLjA1cmVtIC0wLjhyZW0gMCBhdXRvO1xuICAgIH1cbiAgfVxuICBcbiAgLnRvb2xiYXItLWlubmVyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzICRib3JkZXItcmFkaXVzIDAgMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRibGFjaywgMC4xKTtcbiAgfVxuICBcbiAgLnRvb2xiYXJfX25hdiB7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuXG4gICAgJiA+IGEge1xuICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkO1xuICAgICAgY29sb3I6ICR0ZXh0LW11dGVkO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgdHJhbnNpdGlvbjogY29sb3IgMzAwbXM7XG4gIFxuICAgICAgJiArIGEge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDFyZW07XG4gICAgICB9XG4gIFxuICAgICAgJi5hY3RpdmUsXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICRib2R5LWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBcbiAgLnRvb2xiYXJfX3NlYXJjaCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIEBpbmNsdWRlIHNpemUoMTAwJSwgMTAwJSk7XG4gICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gICAgcGFkZGluZy1sZWZ0OiAzcmVtO1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJnLWhpZ2hsaWdodGVkLWRhcmtlc3Q7XG4gIFxuICAgIGlucHV0W3R5cGU9dGV4dF0ge1xuICAgICAgQGluY2x1ZGUgc2l6ZSgxMDAlLCAxMDAlKTtcbiAgICAgIGJvcmRlcjogMDtcbiAgICAgIHBhZGRpbmc6IDAgMS42cmVtO1xuICAgICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMnB4O1xuICAgICAgXG4gICAgICBAaW5jbHVkZSBwbGFjZWhvbGRlcigpIHtcbiAgICAgICAgY29sb3I6ICRpbnB1dC1wbGFjZWhvbGRlci1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgXG4gIC50b29sYmFyX19zZWFyY2hfX2Nsb3NlIHtcbiAgICB0cmFuc2l0aW9uOiBjb2xvciAzMDBtcztcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMS4ycmVtO1xuICAgIGxlZnQ6IDEuOHJlbTtcbiAgICBmb250LXNpemU6IDJyZW07XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgXG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogZGFya2dyZXk7XG4gICAgfVxuICB9XG4gIFxuICAudG9vbGJhcl9fbGFiZWwge1xuICAgIG1hcmdpbjogMDtcbiAgICBmb250LXNpemU6IDEuMXJlbTtcbiAgfSIsIi5wYWdlLWxvYWRlciB7XG4gIEBpbmNsdWRlIHNpemUoMTAwJSwgMTAwJSk7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmctaGlnaGxpZ2h0ZWQtZGFya2VzdDtcbiAgei1pbmRleDogOTk5OTk5OTk5OTk5OTk5OTk5O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgZGlzcGxheTogZmxleDtcbn1cblxuLnBhZ2UtbG9hZGVyX19zcGlubmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBAaW5jbHVkZSBzaXplKDUwcHgsIDUwcHgpO1xuXG5cbiAgc3ZnIHtcbiAgICBhbmltYXRpb246IHJvdGF0ZSAycyBsaW5lYXIgaW5maW5pdGU7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGNlbnRlcjtcbiAgICBAaW5jbHVkZSBzaXplKDEwMCUsIDEwMCUpO1xuXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuXG4gICAgY2lyY2xlIHtcbiAgICAgIHN0cm9rZS1kYXNoYXJyYXk6IDEsIDIwMDtcbiAgICAgIHN0cm9rZS1kYXNob2Zmc2V0OiAwO1xuICAgICAgYW5pbWF0aW9uOiBkYXNoIDEuNXMgZWFzZS1pbi1vdXQgaW5maW5pdGUsIGNvbG9yIDZzIGVhc2UtaW4tb3V0IGluZmluaXRlO1xuICAgICAgc3Ryb2tlLWxpbmVjYXA6IHJvdW5kO1xuICAgIH1cbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHJvdGF0ZSB7XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBkYXNoIHtcbiAgMCUge1xuICAgIHN0cm9rZS1kYXNoYXJyYXk6IDEsIDIwMDtcbiAgICBzdHJva2UtZGFzaG9mZnNldDogMDtcbiAgfVxuICA1MCUge1xuICAgIHN0cm9rZS1kYXNoYXJyYXk6IDg5LCAyMDA7XG4gICAgc3Ryb2tlLWRhc2hvZmZzZXQ6IC0zNXB4O1xuICB9XG4gIDEwMCUge1xuICAgIHN0cm9rZS1kYXNoYXJyYXk6IDg5LCAyMDA7XG4gICAgc3Ryb2tlLWRhc2hvZmZzZXQ6IC0xMjRweDtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGNvbG9yIHtcbiAgMTAwJSxcbiAgMCUge1xuICAgIHN0cm9rZTogJHJlZDtcbiAgfVxuICA0MCUge1xuICAgIHN0cm9rZTogJGJsdWU7XG4gIH1cbiAgNjYlIHtcbiAgICBzdHJva2U6ICRncmVlbjtcbiAgfVxuICA4MCUsXG4gIDkwJSB7XG4gICAgc3Ryb2tlOiAkeWVsbG93O1xuICB9XG59IiwiLnByb2ZpbGUge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcbiAgICBtYXJnaW4tdG9wOiA3NXB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxufVxuXG4ucHJvZmlsZV9faW1nIHtcbiAgcGFkZGluZzogNXB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgaW1nIHtcbiAgICBtYXgtd2lkdGg6IDIwMHB4O1xuICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKXtcbiAgICBpbWcge1xuICAgICAgbWFyZ2luOiAtNTVweCAwIC0xMHB4O1xuICAgICAgd2lkdGg6IDEyMHB4O1xuICAgICAgYm9yZGVyOiA1cHggc29saWQgJHdoaXRlO1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIH1cbiAgfVxufVxuXG4ucHJvZmlsZV9faW1nX19lZGl0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBmb250LXNpemU6IDEuMnJlbTtcbiAgdG9wOiAxNXB4O1xuICBsZWZ0OiAxNXB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRibGFjaywwLjQpO1xuICB3aWR0aDogMzBweDtcbiAgaGVpZ2h0OiAzMHB4O1xuICBsaW5lLWhlaWdodDogMzBweDtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGNvbG9yOiAkd2hpdGU7XG5cbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkYmxhY2ssMC42NSk7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgfVxufVxuXG4ucHJvZmlsZV9faW5mbyB7XG4gICBwYWRkaW5nOiAzMHB4O1xufVxuIiwiLnBob3RvcyB7XG4gIG1hcmdpbjogMCAtNHB4O1xuXG4gICYgPiBhIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJvcmRlcjogNHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuXG4gICAgaW1nIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG59XG5cbi5saWdodGJveCB7XG4gICYgPiBhIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OiAxMHB4O1xuICAgICAgdG9wOiAxMHB4O1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDIwcHgpO1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAyMHB4KTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJHdoaXRlLCAwLjI1KTtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDMwMG1zO1xuICAgIH1cblxuICAgICY6aG92ZXIge1xuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgfVxuICAgIH1cbiAgfVxufSIsIi5jb250YWN0cyB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bih4cykge1xuICAgIG1hcmdpbjogMCAtNXB4O1xuXG4gICAgJiA+IFtjbGFzcyo9XCJjb2wtXCJdIHtcbiAgICAgIHBhZGRpbmc6IDAgNXB4O1xuICAgIH1cbiAgfVxufVxuXG4uY29udGFjdHNfX2l0ZW0ge1xuICBAaW5jbHVkZSBjYXJkKCk7XG4gIHBhZGRpbmc6IDEuOHJlbSAxLjVyZW0gMS4xNXJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW4tYm90dG9tOiAkZ3JpZC1ndXR0ZXItd2lkdGg7XG5cbiAgJjpob3ZlciB7XG4gICAgLmNvbnRhY3RzX19pbWcgPiB7XG4gICAgICBpbWcsIGkge1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHhzKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgfSBcbn1cblxuLmNvbnRhY3RzX19pbWcge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogMS4xcmVtO1xuXG4gICYgPiBpbWcge1xuICAgIG1heC13aWR0aDogMTIwcHg7XG4gICAgbWF4LWhlaWdodDogMTIwcHg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAzMDBtcztcbiAgfVxufVxuXG4uY29udGFjdHNfX2luZm8ge1xuICBzdHJvbmcsXG4gIHNtYWxsIHtcbiAgICBAaW5jbHVkZSB0ZXh0LXRydW5jYXRlKCk7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICBzdHJvbmcge1xuICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZDtcbiAgfVxuXG4gIHNtYWxsIHtcbiAgICBmb250LXNpemU6IDAuOXJlbTtcbiAgICBjb2xvcjogJHRleHQtbXV0ZWQ7XG4gIH1cbn1cblxuLmNvbnRhY3RzX19idG4ge1xuICBtYXJnaW4tdG9wOiAxMHB4O1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGJvcmRlcjogMDtcbiAgbGluZS1oZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogJHdoaXRlO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHBhZGRpbmc6IDhweCAxMHB4O1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAzMDBtcywgY29sb3IgMzAwbXM7XG4gIGZvbnQtc2l6ZTogMC45cmVtO1xuXG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiZy1oaWdobGlnaHRlZC1saWdodDtcbiAgfVxufVxuXG4ubmV3LWNvbnRhY3RfX2hlYWRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGJsYWNrLCAwLjEpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDMwcHggMDtcbiAgYm9yZGVyLXJhZGl1czogJGNhcmQtYm9yZGVyLXJhZGl1cyAkY2FyZC1ib3JkZXItcmFkaXVzIDAgMDtcbn1cblxuLm5ldy1jb250YWN0X19pbWcge1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDVweCAkYmctaGlnaGxpZ2h0ZWQtbGlnaHQ7XG4gIEBpbmNsdWRlIHNpemUoMTUwcHgsIDE1MHB4KTtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XG4gICAgQGluY2x1ZGUgc2l6ZSgxMDBweCwgMTAwcHgpO1xuICB9XG59XG5cbi5uZXctY29udGFjdF9fdXBsb2FkIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDIwcHg7XG4gIGxlZnQ6IDIwcHg7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBAaW5jbHVkZSBzaXplKDQwcHgsIDQwcHgpO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGxpbmUtaGVpZ2h0OiAzOHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmctaGlnaGxpZ2h0ZWQtbGlnaHQ7XG4gIGNvbG9yOiAkd2hpdGU7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMzAwbXM7XG5cbiAgJjpob3ZlciB7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCR3aGl0ZSwgMC4yKTtcbiAgfVxufSIsIi5ncm91cHMge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oeHMpIHtcbiAgICBtYXJnaW46IDAgLTVweDtcblxuICAgIFtjbGFzcyo9Y29sLV0ge1xuICAgICAgcGFkZGluZzogMCA1cHg7XG4gICAgfVxuXG4gICAgLmdyb3Vwc19faXRlbSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgIH1cbiAgfVxufVxuXG4uZ3JvdXBzX19pdGVtIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDJyZW0gMXJlbSAxLjVyZW07XG4gIG1hcmdpbi1ib3R0b206ICRncmlkLWd1dHRlci13aWR0aDtcbiAgQGluY2x1ZGUgY2FyZCgpO1xuXG4gICY6aG92ZXIge1xuICAgIC5hY3Rpb25zIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuICB9XG5cbiAgLmFjdGlvbnMge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDAuN3JlbTtcbiAgICByaWdodDogMC41cmVtO1xuICAgIHotaW5kZXg6IDE7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG4uZ3JvdXBzX19pbWcge1xuICB3aWR0aDogNi41cmVtO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgLmF2YXRhci1pbWcge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW46IDAgMXB4IDRweCAwO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIH1cbn1cblxuLmdyb3Vwc19faW5mbyB7XG4gIG1hcmdpbi10b3A6IDFyZW07XG5cbiAgJiA+IHN0cm9uZyB7XG4gICAgY29sb3I6ICRoZWFkaW5ncy1jb2xvcjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG4gIH1cblxuICAmID4gc21hbGwge1xuICAgIGZvbnQtc2l6ZTogMC45cmVtO1xuICAgIGNvbG9yOiAkdGV4dC1tdXRlZDtcbiAgfVxufSIsIi8vIEN1c3RvbSBjaGVja2JveFxuLmNoZWNrYm94LWNoYXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgJiA+IGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgZGlzcGxheTogbm9uZTtcblxuICAgICY6Y2hlY2tlZCB7XG4gICAgICAmIH4gbGFiZWwge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCR3aGl0ZSwgMC43NSk7XG4gICAgICAgIGZvbnQtc2l6ZTogMDtcblxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYgPiBsYWJlbCB7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiZy1oaWdobGlnaHRlZC1saWdodDtcbiAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBtYXJnaW46IDA7XG4gICAgbGluZS1oZWlnaHQ6IDEwMCU7XG4gICAgcGFkZGluZy1ib3R0b206IDJweDtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDI1MG1zO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCR3aGl0ZSwgMC4xNSk7XG4gICAgfVxuXG4gICAgJjpiZWZvcmUge1xuICAgICAgQGluY2x1ZGUgc2l6ZSgxMDAlLCAxMDAlKTtcbiAgICAgIEBpbmNsdWRlIGZvbnQtaWNvbignXFxlYTQ4JywgMnJlbSk7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgdG9wOiAwO1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMjUwbXM7XG4gICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cblxuICAgICYsICY6YmVmb3JlIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBAaW5jbHVkZSBzaXplKDQwcHgsIDQwcHgpO1xuICAgIH1cbiAgfVxufVxuXG4vLyBJY29uIHRvZ2dsZXNcbi5pY29uLXRvZ2dsZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMzVweDtcbiAgaGVpZ2h0OiAzNXB4O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGxpbmUtaGVpZ2h0OiAzNXB4O1xuXG4gIFtjbGFzcyo9XCJ6d2ljb24tXCJdIHtcbiAgICB6LWluZGV4OiAyO1xuICAgIGZvbnQtc2l6ZTogMS43NXJlbTtcbiAgICBjb2xvcjogcmdiYSgkd2hpdGUsIDAuMjUpO1xuICAgIHRyYW5zaXRpb246IGNvbG9yIDMwMG1zO1xuICB9XG4gIFxuICBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0sXG4gIGlucHV0W3R5cGU9XCJyYWRpb1wiXSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IDE7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBvcGFjaXR5OiAwO1xuICAgIFxuICAgICY6Y2hlY2tlZCB7XG4gICAgICAmIH4gW2NsYXNzKj1cInp3aWNvbi1cIl0ge1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICY6aG92ZXIge1xuICAgIFtjbGFzcyo9XCJ6d2ljb24tXCJdIHtcbiAgICAgIGNvbG9yOiByZ2JhKCR3aGl0ZSwgMC41KTtcbiAgICB9XG4gIH1cbn1cblxuLmN1c3RvbS1jb250cm9sLWlucHV0Om5vdCg6Y2hlY2tlZCkgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTsgLyogQ2hhbmdlIHRoZSBiYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSB0b2dnbGUgd2hlbiBpdCBpcyBub3QgY2hlY2tlZCAqL1xuICBib3JkZXItY29sb3I6IGdyZXk7IC8qIENoYW5nZSB0aGUgYm9yZGVyIGNvbG9yIG9mIHRoZSBjaGVja2JveCB3aGVuIGl0IGlzIG5vdCBjaGVja2VkICovXG59XG5cbi5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBncmV5OyAvKiBDaGFuZ2UgdGhlIGNvbG9yIG9mIHRoZSB0b2dnbGUgd2hlbiBpdCBpcyBjaGVja2VkICovXG59IiwiJG1lc3NhZ2Utc2lkZWJhci13aWR0aDogMjNyZW07XG5cbi5tZXNzYWdlcyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIEBpbmNsdWRlIGNhcmQoKTtcbiAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gMTgwcHgpO1xufVxuXG4ubWVzc2FnZXNfX3NpZGViYXIge1xuICB3aWR0aDogJG1lc3NhZ2Utc2lkZWJhci13aWR0aDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgJGJvcmRlci1saWdodGVzdDtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAubGlzdHZpZXcge1xuICAgIGhlaWdodDogY2FsYygxMDAlIC0gMTMwcHgpO1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gIH1cbn1cblxuLm1lc3NhZ2VzX19zZWFyY2gge1xuICBwYWRkaW5nOiAxcmVtIDIuMnJlbSAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgLmZvcm0tZ3JvdXAge1xuICAgICY6YmVmb3JlIHtcbiAgICAgIEBpbmNsdWRlIGZvbnQtaWNvbignXFxlYTcyJywgMS4zcmVtKTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDFyZW07XG4gICAgICBib3R0b206IDAuNXJlbTtcbiAgICB9XG4gIH1cblxuICAuZm9ybS1jb250cm9sIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDNyZW07XG4gIH1cbn1cblxuLm1lc3NhZ2VzX19ib2R5IHtcbiAgZmxleDogMjtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZGlzcGxheTogZmxleDtcbn1cblxuLm1lc3NhZ2VzX19oZWFkZXIsXG4ubWVzc2FnZXNfX3JlcGx5IHtcbiAgZmxleDogMCAwIGF1dG87XG59XG5cbi5tZXNzYWdlc19fY29udGVudCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZmxleDogMSAxIGF1dG87XG4gIHBhZGRpbmc6IDIuNXJlbTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4ubWVzc2FnZXNfX2l0ZW0ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xuXG4gICY6bm90KC5tZXNzYWdlc19faXRlbS0tcmlnaHQpIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuXG4gICAgJiA+IC5tZXNzYWdlc19fZGV0YWlscyB7XG4gICAgICBtYXJnaW4tbGVmdDogLTAuNXJlbTtcblxuICAgICAgJiA+IHAge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmctaGlnaGxpZ2h0ZWQtbGlnaHQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5tZXNzYWdlc19fZGV0YWlscyB7XG4gIG1heC13aWR0aDogNTAwcHg7XG5cbiAgJiA+IHAge1xuICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgIHBhZGRpbmc6IDFyZW0gMS4zcmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG5cbiAgICAmICsgcCB7XG4gICAgICBtYXJnaW4tdG9wOiAycHg7XG4gICAgfVxuICB9XG5cbiAgJiA+IHNtYWxsIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAwIDEuNXJlbTtcbiAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICAgIGNvbG9yOiAkdGV4dC1tdXRlZDtcbiAgICBmb250LXNpemU6IDAuOXJlbTtcblxuICAgICYgPiBpIHtcbiAgICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAgIG1hcmdpbi1yaWdodDogMC4zcmVtO1xuICAgICAgbWFyZ2luLXRvcDogMC4xNXJlbTtcbiAgICB9XG4gIH1cbn1cblxuLm1lc3NhZ2VzX19pdGVtLS1yaWdodCB7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcblxuICAubWVzc2FnZXNfX2RldGFpbHMge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuXG4gICAgJiA+IHAge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkd2hpdGUsIDAuNzUpO1xuICAgICAgY29sb3I6ICRjb2xvci1pbnZlcnNlO1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgfVxuICB9XG59XG5cbi5tZXNzYWdlc19fcmVwbHkge1xuICBib3JkZXItdG9wOiAxcHggc29saWQgJGJvcmRlci1saWdodGVzdDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4ubWVzc2FnZXNfX3JlcGx5X190ZXh0IHtcbiAgaGVpZ2h0OiA1MHB4O1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogLTVweDtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgcGFkZGluZzogMXJlbSAxLjVyZW07XG4gIHJlc2l6ZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiAkaW5wdXQtY29sb3I7XG4gIFxuICBAaW5jbHVkZSBwbGFjZWhvbGRlcigpIHtcbiAgICBjb2xvcjogJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yO1xuICB9XG59XG5cbiIsIi5wcmljZS10YWJsZSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAmOm5vdCgucHJpY2UtdGFibGUtLWhpZ2hsaWdodCkge1xuICAgIG1hcmdpbjogMCAtMTBweDtcblxuICAgICYgPiBbY2xhc3MqPVwiY29sLVwiXSB7XG4gICAgICBwYWRkaW5nOiAwIDEwcHg7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuICB9XG59XG5cbi5wcmljZS10YWJsZS0taGlnaGxpZ2h0IHtcbiAgbWFyZ2luOiAwO1xuXG4gICYgPiBbY2xhc3MqPVwiY29sLVwiXSB7XG4gICAgcGFkZGluZzogMDtcbiAgfVxufVxuXG4ucHJpY2UtdGFibGVfX2l0ZW0ge1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBAaW5jbHVkZSBjYXJkKCk7XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XG4gICAgbWF4LXdpZHRoOiA0MDBweDtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIH1cbn1cblxuLnByaWNlLXRhYmxlX19pdGVtLS1wb3B1bGFyIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuICAgIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAxO1xuICAgIG1hcmdpbjogLTFyZW0gMCAwO1xuICAgIGJveC1zaGFkb3c6IDAgLTVweCAzMHB4IHJnYmEoJGJsYWNrLCAwLjQpO1xuXG4gICAgLnByaWNlLXRhYmxlX19oZWFkZXIge1xuICAgICAgcGFkZGluZzogMi41cmVtIDJyZW0gMi41cmVtO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkYmxhY2ssIDAuMzUpO1xuICAgIH1cbiAgfVxufVxuXG4ucHJpY2UtdGFibGVfX2hlYWRlciB7XG4gIGNvbG9yOiAkd2hpdGU7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzICRib3JkZXItcmFkaXVzIDAgMDtcbiAgcGFkZGluZzogMnJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJnLWhpZ2hsaWdodGVkLWRhcms7XG59XG5cbi5wcmljZS10YWJsZV9fdGl0bGUge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG4gIGZvbnQtc2l6ZTogMS4zcmVtO1xufVxuXG4ucHJpY2UtdGFibGVfX2Rlc2Mge1xuICBjb2xvcjogcmdiYSgkd2hpdGUsIDAuNzUpO1xuICBtYXJnaW46IDAuM3JlbSAwO1xufVxuXG4ucHJpY2UtdGFibGVfX3ByaWNlIHtcbiAgZm9udC1zaXplOiAxLjhyZW07XG5cbiAgJiA+IHNtYWxsIHtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogLTAuNHJlbTtcbiAgfVxufVxuXG4ucHJpY2UtdGFibGVfX2luZm8ge1xuICBAaW5jbHVkZSBsaXN0LXVuc3R5bGVkO1xuICBwYWRkaW5nOiAxcmVtIDA7XG5cbiAgJiA+IGxpIHtcbiAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG4gICAgcGFkZGluZzogMXJlbSAxLjVyZW07XG5cbiAgICAmICsgbGkge1xuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRib3JkZXItbGlnaHRlc3Q7XG4gICAgfVxuICB9XG59XG5cbi5wcmljZS10YWJsZV9fYWN0aW9uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBtYXJnaW4tYm90dG9tOiAyLjVyZW07XG4gIHBhZGRpbmc6IDAuOHJlbSAxLjJyZW07XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICBjb2xvcjogJHdoaXRlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmctaGlnaGxpZ2h0ZWQtZGFyaztcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkO1xuICBib3gtc2hhZG93OiAwIDNweCA1cHggcmdiYSgkYmxhY2ssIDAuMTIpO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDMwMG1zO1xuICBcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgb3BhY2l0eTogMC45O1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gIH1cbn0iLCIuaW52b2ljZSB7XG4gIG1pbi13aWR0aDogMTEwMHB4O1xuICBtYXgtd2lkdGg6IDExNzBweDtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICBwYWRkaW5nOiAyLjVyZW07XG4gIEBpbmNsdWRlIGNhcmQoKTtcbn1cblxuLmludm9pY2VfX2hlYWRlciB7XG4gIHBhZGRpbmc6IDEuNXJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAkYm9yZGVyLXJhZGl1cyAwIDA7XG4gIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbn1cblxuLmludm9pY2VfX2FkZHJlc3Mge1xuICBtYXJnaW4tYm90dG9tOiA0cmVtO1xuXG4gIGg0IHtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIH1cbn1cblxuLmludm9pY2VfX2F0dHJzIHtcbiAgbWFyZ2luLWJvdHRvbTogMi41cmVtO1xuXG4gIFtjbGFzcyo9XCJjb2wtXCJdIHtcbiAgICBwYWRkaW5nOiAtMTBweDtcbiAgfVxufVxuXG4uaW52b2ljZV9fYXR0cnNfX2l0ZW0ge1xuICBwYWRkaW5nOiAxLjVyZW0gMnJlbTtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJnLWhpZ2hsaWdodGVkLWxpZ2h0O1xuXG4gIHNtYWxsIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjJyZW07XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICB9XG5cbiAgaDMge1xuICAgIG1hcmdpbjogMDtcbiAgICBsaW5lLWhlaWdodDogMTAwJTtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICB9XG59XG5cbi5pbnZvaWNlX190YWJsZSB7XG4gIG1hcmdpbi1ib3R0b206IDRyZW07XG59XG5cbi5pbnZvaWNlX19mb290ZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbjogNHJlbSAwIDEuNXJlbTtcblxuICAmID4gYSB7XG4gICAgY29sb3I6ICRib2R5LWNvbG9yO1xuICB9XG59XG5cbkBtZWRpYSBwcmludCB7XG4gIEBwYWdlIHtcbiAgICBtYXJnaW46IDA7XG4gICAgc2l6ZTogYXV0bztcbiAgfVxuXG4gIGJvZHkge1xuICAgIG1hcmdpbjogMG1tIDBtbSAwbW0gMG1tICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogMG1tICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuaGVhZGVyLFxuICAuYWN0aW9ucyxcbiAgLmNvbnRlbnRfX3RpdGxlLFxuICAuZm9vdGVyLFxuICAubm90aWZpY2F0aW9ucyxcbiAgLm5hdmlnYXRpb24sXG4gIC5jaGF0LFxuICAuZ3Jvd2wtYW5pbWF0ZWQsXG4gIC5idG4tLWFjdGlvbiB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLy8gSW52b2ljZVxuICAuaW52b2ljZSB7XG4gICAgcGFkZGluZzogMzBweCAhaW1wb3J0YW50O1xuICAgIC13ZWJraXQtcHJpbnQtY29sb3ItYWRqdXN0OiBleGFjdCAhaW1wb3J0YW50O1xuICB9XG59IiwiLmxvZ2luIHtcbiAgbWluLWhlaWdodDogMTAwdmg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBwYWRkaW5nLXRvcDogMS4ycmVtO1xufVxuXG4ubG9naW5fX2Jsb2NrIHtcbiAgbWF4LXdpZHRoOiA0NjBweDtcbiAgd2lkdGg6IDEwMCU7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgQGluY2x1ZGUgYW5pbWF0ZShmYWRlSW5VcCwgMzAwbXMpO1xuICBAaW5jbHVkZSBjYXJkKCk7XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAgICY6aG92ZXIge1xuICAgICAgLmxvZ2luX19ibG9ja19fYWN0aW9ucyAuZHJvcGRvd24ge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmxvZ2luX19ibG9jay5hY3RpdmUge1xuICB6LWluZGV4OiAxMDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4ubG9naW5fX2Jsb2NrX19oZWFkZXIge1xuICBwYWRkaW5nOiAxLjI1cmVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzICRib3JkZXItcmFkaXVzIDAgMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJnLWhpZ2hsaWdodGVkLWRhcms7XG5cbiAgJiA+IGksXG4gICYgPiBpbWcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1ib3R0b206IDAuNnJlbTtcbiAgfVxuXG4gICYgPiBpIHtcbiAgICBmb250LXNpemU6IDNyZW07XG4gIH1cblxuICAmID4gaW1nIHtcbiAgICB3aWR0aDogMzVweDtcbiAgICBoZWlnaHQ6IDM1cHg7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBib3gtc2hhZG93OiAwIDAgMCAzcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpO1xuICB9XG59XG5cbi5sb2dpbl9fYmxvY2tfX2FjdGlvbnMge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMC44cmVtO1xuICByaWdodDogMC44cmVtO1xuXG4gIC5kcm9wZG93bjpub3QoLnNob3cpIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5sb2dpbl9fYmxvY2tfX2JvZHkge1xuICBwYWRkaW5nOiAycmVtO1xufSIsIi50b2RvX19pdGVtIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG5cbiAgJiA+IGxhYmVsIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDEuMjVyZW07XG4gIH1cblxuICAmID4gaW5wdXRbdHlwZT1jaGVja2JveF0ge1xuICAgICY6Y2hlY2tlZCB7XG4gICAgICAmIH4gLmxpc3R2aWV3X19jb250ZW50IHtcbiAgICAgICAgJiwgLmxpc3R2aWV3X19hdHRycyA+IHNwYW4ge1xuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbGluZS10aHJvdWdoO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59IiwiLy9MaXN0aW5nXG4ubm90ZXNfX2l0ZW0ge1xuICBtYXJnaW4tYm90dG9tOiAkZ3JpZC1ndXR0ZXItd2lkdGg7XG5cbiAgJiA+IGEge1xuICAgIGhlaWdodDogMTU1cHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNhcmQtYmc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogMS44cmVtIDJyZW07XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGNvbG9yOiByZ2JhKCR3aGl0ZSwgMC43NSk7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAzMDBtcztcblxuICAgICYsXG4gICAgJjpiZWZvcmUge1xuICAgICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gICAgICBib3gtc2hhZG93OiAwIDFweCAxcHggcmdiYSgkYmxhY2ssMC4wOCk7XG4gICAgfVxuXG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gMTBweCk7XG4gICAgICBib3R0b206IC01cHg7XG4gICAgICBsZWZ0OiA1cHg7XG4gICAgICB6LWluZGV4OiAtMTtcbiAgICAgIGhlaWdodDogNXB4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkYmxhY2ssIDAuNCk7XG4gICAgfVxuICB9XG5cbiAgJjpob3ZlciB7XG4gICAgLm5vdGVzX19hY3Rpb25zIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuICB9XG59XG5cbi5ub3Rlc19fdGl0bGUge1xuICBjb2xvcjogJGhlYWRpbmdzLWNvbG9yO1xuICBtYXJnaW4tYm90dG9tOiAxLjFyZW07XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZDtcbiAgZm9udC1zaXplOiAxLjFyZW07XG4gIEBpbmNsdWRlIHRleHQtdHJ1bmNhdGUoKTtcbn1cblxuLm5vdGVzX19hY3Rpb25zIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMi4ycmVtO1xuICBib3R0b206IDFyZW07XG4gIGZvbnQtc2l6ZTogMS4xcmVtO1xuICB3aWR0aDogMi4ycmVtO1xuICBoZWlnaHQ6IDIuMnJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kOiAkYmctaGlnaGxpZ2h0ZWQtZGFya2VzdDtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBsaW5lLWhlaWdodDogMnJlbTtcbiAgY29sb3I6ICR3aGl0ZTtcbiAgYm94LXNoYWRvdzogMCAwIDRweCByZ2JhKCRibGFjaywwLjUpO1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDMwMG1zO1xuICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogcmdiYSgkYmxhY2ssMC45KTtcbiAgfVxufVxuXG5cbi8vTmV3IE5vdGUgTW9kYWxcbi5ub3RlLXZpZXcge1xuICAudHJ1bWJvd3lnLWVkaXRvciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJGlucHV0LWJvcmRlci1jb2xvcjtcbiAgfVxufSIsIi5yZXN1bHRzX19oZWFkZXIge1xuICBwYWRkaW5nOiAycmVtIDJyZW0gMDtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMgJGJvcmRlci1yYWRpdXMgMCAwO1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRibGFjaywgMC4xKTtcbn1cblxuLnJlc3VsdHNfX3NlYXJjaCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICBpbnB1dFt0eXBlPVwidGV4dFwiXSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiZy1oaWdobGlnaHRlZC1saWdodDtcbiAgICBjb2xvcjogJGlucHV0LWNvbG9yO1xuICAgIHBhZGRpbmc6IDAgMXJlbSAwIDNyZW07XG4gICAgaGVpZ2h0OiAyLjlyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDMwMG1zO1xuICAgIFxuICAgIEBpbmNsdWRlIHBsYWNlaG9sZGVyIHtcbiAgICAgIGNvbG9yOiAkaW5wdXQtcGxhY2Vob2xkZXItY29sb3I7XG4gICAgfVxuXG4gICAgJjpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmctaGlnaGxpZ2h0ZWQtZGFyaztcbiAgICB9XG4gIH1cblxuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgQGluY2x1ZGUgZm9udC1pY29uKCdcXGVhNzInLCAxLjNyZW0pO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDAuNDVyZW07XG4gICAgbGVmdDogMS4xcmVtO1xuICAgIHotaW5kZXg6IDE7XG4gIH1cbn1cblxuLnJlc3VsdHNfX25hdiB7XG4gIGJvcmRlcjogMDtcbn0iLCIuaXNzdWUtdHJhY2tlciB7XG4gIC5saXN0dmlld19faXRlbSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgLmFjdGlvbnMge1xuICAgICAgbWFyZ2luLWxlZnQ6IDAuNXJlbTtcbiAgICB9XG4gIH1cbn1cblxuLmlzc3VlLXRyYWNrZXJfX2l0ZW0ge1xuICBtYXJnaW4tbGVmdDogMnJlbTtcblxuICAmID4gW2NsYXNzKj1cInp3aWNvbi1cIl0ge1xuICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMC4wNXJlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTtcbiAgfVxufSIsIi50ZWFtIHtcbiAgbWFyZ2luLXRvcDogN3JlbTtcbn1cblxuLnRlYW1fX2l0ZW0ge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbi1ib3R0b206IDdyZW07XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XG4gICAgbWF4LXdpZHRoOiAzNjVweDtcbiAgICBtYXJnaW46IDAgYXV0byA4MHB4O1xuICB9XG5cbiAgLmNhcmQtc3VidGl0bGUge1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIH1cbn1cblxuLnRlYW1fX2ltZyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBAaW5jbHVkZSBzaXplKDE1MHB4LCAxNTBweCk7XG4gIGJvcmRlcjogNXB4IHNvbGlkICRiZy1oaWdobGlnaHRlZC1saWdodDtcbiAgbWFyZ2luOiAtNHJlbSBhdXRvIC0wLjVyZW07XG59XG5cbi50ZWFtX19zb2NpYWwge1xuICBtYXJnaW4tdG9wOiAycmVtO1xuXG4gICYgPiBhIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IDM1cHg7XG4gICAgaGVpZ2h0OiAzNXB4O1xuICAgIGxpbmUtaGVpZ2h0OiAzMnB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiZy1oaWdobGlnaHRlZC1saWdodDtcbiAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICBtYXJnaW46IDAgMXB4O1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMzAwbXM7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJHdoaXRlLCAwLjIpO1xuICAgIH1cbiAgfVxufSIsIi5ibG9nX190YWdzIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgJGJvcmRlci1saWdodGVzdDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRib3JkZXItbGlnaHRlc3Q7XG4gIHBhZGRpbmc6IDJyZW0gMXJlbSAxLjVyZW07XG4gIG1hcmdpbjogMnJlbSAwIDAuNXJlbTtcbn1cblxuLmJsb2dfX2FydGh1ciB7XG4gIHBhZGRpbmc6IDJyZW0gMnJlbSAyLjVyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLmJsb2dfX2FydGh1ci1pbWcge1xuICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG5cbiAgJiA+IGltZyB7XG4gICAgd2lkdGg6IDEwMHB4O1xuICAgIGhlaWdodDogMTAwcHg7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGJvcmRlcjogM3B4IHNvbGlkICRiZy1oaWdobGlnaHRlZC1saWdodDtcbiAgfVxufVxuXG4uYmxvZ19fYXJ0aHVyLXNvY2lhbCB7XG4gIG1hcmdpbjogMnJlbSAwIDAgMDtcblxuICAmID4gYSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiAzNXB4O1xuICAgIGhlaWdodDogMzVweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGxpbmUtaGVpZ2h0OiAzMnB4O1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJnLWhpZ2hsaWdodGVkLWxpZ2h0O1xuICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgIG1hcmdpbjogMCAxcHg7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAzMDBtcztcblxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkd2hpdGUsIDAuMik7XG4gICAgfVxuICB9XG59IiwiLnEtYSB7XG5cbn1cblxuLnEtYV9faXRlbSB7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xufVxuXG4ucS1hX19zdGF0IHtcbiAgbWFyZ2luOiAwLjM1cmVtIDJyZW0gMCAwO1xuICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0O1xuXG4gICYgPiBzcGFuIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IDcwcHg7XG4gICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJnLWhpZ2hsaWdodGVkLWxpZ2h0O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBwYWRkaW5nOiAwLjlyZW0gMC41cmVtIDAuNjVyZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjJyZW07XG5cbiAgICAmID4gc3Ryb25nIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG4gICAgICBsaW5lLWhlaWdodDogMTAwJTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDAuMjVyZW07XG4gICAgfVxuXG4gICAgJiA+IHNtYWxsIHtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBsaW5lLWhlaWdodDogMTAwJTtcbiAgICB9XG4gIH1cbn1cblxuLnEtYV9fcXVlc3Rpb24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi1ib3R0b206IDNyZW07XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuICAgIG1hcmdpbi10b3A6IDFyZW07XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gICAgcGFkZGluZy1sZWZ0OiAxMDBweDtcbiAgfVxuXG4gICYgPiBoMiB7XG4gICAgZm9udC1zaXplOiAxLjNyZW07XG5cbiAgICAmICsgcCB7XG4gICAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICAgIH1cbiAgfVxuXG4gICYgPiBwIHtcbiAgICBmb250LXNpemU6IDEuMXJlbTtcbiAgfVxuXG4gIC5xLWFfX2luZm8ge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkYm9yZGVyLWxpZ2h0O1xuICB9XG59XG5cbi5xLWFfX3ZvdGUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gIFtjbGFzcyo9XCJ6d2ljb24tXCJdIHtcbiAgICBmb250LXNpemU6IDNyZW07XG4gIH1cbn1cblxuLnEtYV9fdm90ZV9fdm90ZXMge1xuICBwYWRkaW5nOiAwLjVyZW0gMCAwLjZyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICRiZy1oaWdobGlnaHRlZC1saWdodDtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZDtcbiAgd2lkdGg6IDc1cHg7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBtYXJnaW4tYm90dG9tOiAtMC4ycmVtO1xufVxuXG4ucS1hX19pbmZvIHtcbiAgbWFyZ2luLXRvcDogMS41cmVtO1xuICBwYWRkaW5nOiAxLjI1cmVtIDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAuYWN0aW9ucyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMXJlbTtcbiAgICByaWdodDogMDtcbiAgfVxufVxuXG4ucS1hX19vcCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgJiA+IGEge1xuICAgICYgPiBpbWcge1xuICAgICAgd2lkdGg6IDMwcHg7XG4gICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDFyZW07XG4gICAgfVxuICB9XG59XG5cbi5xLWFfX2Fuc3dlcnMge1xuICBtYXJnaW4tdG9wOiAzcmVtO1xufSIsIiR0aGVtZS1iZ3M6IChcbiAgMTogKCcxLmpwZycsICM3YjNkNTQpLFxuICAyOiAoJzIuanBnJywgIzIzNGQ2ZCksXG4gIDM6ICgnMy5qcGcnLCAjMTc0MDQyKSxcbiAgNDogKCc0LmpwZycsICM1ZTNkMjIpLFxuICA1OiAoJzUuanBnJywgIzQ5NDIzRiksXG4gIDY6ICgnNi5qcGcnLCAjMzgzODQ0KSxcbiAgNzogKCc3LmpwZycsICMyNzNDNUIpLFxuICA4OiAoJzguanBnJywgIzNiNWU1ZSksXG4gIDk6ICgnOS5qcGcnLCAjMGE0YzNlKSxcbiAgMTA6ICgnMTAuanBnJyAjNzcyMDM2KVxuKTtcblxuW2RhdGEtc2EtdGhlbWVdIHtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAzMDBtcztcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJSAxMDAlO1xuICAgIGJhY2tncm91bmQtYXR0YWNobWVudDogZml4ZWQ7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICB9XG59XG5cbkBlYWNoICRiZywgJHZhbHVlIGluICR0aGVtZS1iZ3Mge1xuICAkYmdpbWc6IG50aCgkdmFsdWUsIDEpO1xuICAkYmdjb2xvcjogbnRoKCR2YWx1ZSwgMik7XG5cbiAgW2RhdGEtc2EtdGhlbWU9XCIjeyRiZ31cIl0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiZ2NvbG9yO1xuXG4gICAgLy9AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gICAgLy8gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vLi4vLi4vaW1hZ2VzL3RlbXBsYXRlcy9iZy8jeyRiZ2ltZ30nKTtcbiAgICAvL31cbiAgfVxufVxuXG4udGhlbWVzIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAkc2lkZWJhci13aWR0aDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJnLWhpZ2hsaWdodGVkLWRhcmtlc3Q7XG4gIHotaW5kZXg6ICRzaWRlYmFyLXotaW5kZXg7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoKCRzaWRlYmFyLXdpZHRoICsgMTBweCksIDAsIDApO1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDMwMG1zLCB0cmFuc2Zvcm0gMzAwbXMsIG9wYWNpdHkgMzAwbXM7XG5cbiAgJi50b2dnbGVkIHtcbiAgICBib3gtc2hhZG93OiAtNXB4IDAgMTBweCByZ2JhKCRibGFjaywgMC4yNSk7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB9XG59XG5cbi50aGVtZXNfX2l0ZW0ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMS41cmVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMzAwbXMsIGJvcmRlci1jb2xvciAzMDBtcztcblxuICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkYmctaGlnaGxpZ2h0ZWQtbGlnaHRlc3Q7XG4gIH1cblxuICAmID4gaW1nIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMHB4O1xuICB9XG5cbiAgJi5hY3RpdmUsXG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiZy1oaWdobGlnaHRlZC1saWdodGVzdDtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxuXG4gICY6YmVmb3JlIHtcbiAgICB3aWR0aDogNTBweDtcbiAgICBoZWlnaHQ6IDUwcHg7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRib3JkZXItbGlnaHQ7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIG1hcmdpbjogYXV0bztcbiAgICByaWdodDogMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbGluZS1oZWlnaHQ6IDUwcHg7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICAgIEBpbmNsdWRlIGZvbnQtaWNvbignXFxlYTQ4JywgM3JlbSk7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAzMDBtcywgdHJhbnNmb3JtIDMwMG1zO1xuICB9XG5cbiAgJi5hY3RpdmUge1xuICAgICY6YmVmb3JlIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIH1cbiAgfVxufSIsIi5pZS13YXJuaW5nIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgei1pbmRleDogMTAwMDAwMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nOiAzcmVtO1xuICBvdmVyZmxvdzogYXV0bztcblxuICAmID4gaDEge1xuICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgfVxuXG4gIHAge1xuICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgIGNvbG9yOiAkdGV4dC1tdXRlZDtcbiAgfVxufVxuXG4uaWUtd2FybmluZ19fZG93bmxvYWRzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogYmx1ZTtcbiAgcGFkZGluZzogMzBweCAwO1xuICBtYXJnaW46IDMwcHggMDtcblxuICAmID4gYSB7XG4gICAgcGFkZGluZzogMCAxMHB4O1xuICB9XG59IiwiLmVycm9yIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGhlaWdodDogMTAwdmg7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uZXJyb3JfX2lubmVyIHtcbiAgbWF4LXdpZHRoOiA2MDBweDtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDNyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNhcmQtYmc7XG5cbiAgJiA+IGgxIHtcbiAgICBmb250LXNpemU6IDhyZW07XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICB0ZXh0LXNoYWRvdzogMCAwIDEwcHggcmdiYSgkYmxhY2ssIDAuMDMpO1xuICAgIGxpbmUtaGVpZ2h0OiAxMDAlO1xuICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgfVxuXG4gICYgPiBoMiB7XG4gICAgY29sb3I6ICRib2R5LWNvbG9yO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgbWFyZ2luOiAxLjNyZW0gMDtcbiAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgfVxuICBcbiAgJiA+IHAge1xuICAgIGNvbG9yOiAkdGV4dC1tdXRlZDtcbiAgICBmb250LXNpemU6IDEuMXJlbTtcbiAgfVxufSIsIkAtd2Via2l0LWtleWZyYW1lcyBib3VuY2Uge1xuICAwJSwyMCUsNTMlLDgwJSx0byB7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gIH1cblxuICA0MCUsNDMlIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjc1NSwgMC4wNSwgMC44NTUsIDAuMDYpO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMzBweCwgMCk7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNzU1LCAwLjA1LCAwLjg1NSwgMC4wNik7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMzBweCwgMCk7XG4gIH1cblxuICA3MCUge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNzU1LCAwLjA1LCAwLjg1NSwgMC4wNik7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xNXB4LCAwKTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC43NTUsIDAuMDUsIDAuODU1LCAwLjA2KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xNXB4LCAwKTtcbiAgfVxuXG4gIDkwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC00cHgsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTRweCwgMCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBib3VuY2Uge1xuICAwJSwyMCUsNTMlLDgwJSx0byB7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gIH1cblxuICA0MCUsNDMlIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjc1NSwgMC4wNSwgMC44NTUsIDAuMDYpO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMzBweCwgMCk7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNzU1LCAwLjA1LCAwLjg1NSwgMC4wNik7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMzBweCwgMCk7XG4gIH1cblxuICA3MCUge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNzU1LCAwLjA1LCAwLjg1NSwgMC4wNik7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xNXB4LCAwKTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC43NTUsIDAuMDUsIDAuODU1LCAwLjA2KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xNXB4LCAwKTtcbiAgfVxuXG4gIDkwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC00cHgsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTRweCwgMCk7XG4gIH1cbn1cblxuLmJvdW5jZSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGJvdW5jZTtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgYm90dG9tO1xuICBhbmltYXRpb24tbmFtZTogYm91bmNlO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgYm90dG9tO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmxhc2gge1xuICAwJSw1MCUsdG8ge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAyNSUsNzUlIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmxhc2gge1xuICAwJSw1MCUsdG8ge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAyNSUsNzUlIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5cbi5mbGFzaCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZsYXNoO1xuICBhbmltYXRpb24tbmFtZTogZmxhc2g7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBwdWxzZSB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGVYKDEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGVYKDEpO1xuICB9XG5cbiAgNTAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLjA1LCAxLjA1LCAxLjA1KTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4wNSwgMS4wNSwgMS4wNSk7XG4gIH1cblxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWCgxKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlWCgxKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHB1bHNlIHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVgoMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZVgoMSk7XG4gIH1cblxuICA1MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEuMDUsIDEuMDUsIDEuMDUpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjA1LCAxLjA1LCAxLjA1KTtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGVYKDEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGVYKDEpO1xuICB9XG59XG5cbi5wdWxzZSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHB1bHNlO1xuICBhbmltYXRpb24tbmFtZTogcHVsc2U7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBydWJiZXJCYW5kIHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVgoMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZVgoMSk7XG4gIH1cblxuICAzMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEuMjUsIDAuNzUsIDEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjI1LCAwLjc1LCAxKTtcbiAgfVxuXG4gIDQwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC43NSwgMS4yNSwgMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuNzUsIDEuMjUsIDEpO1xuICB9XG5cbiAgNTAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLjE1LCAwLjg1LCAxKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4xNSwgMC44NSwgMSk7XG4gIH1cblxuICA2NSUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuOTUsIDEuMDUsIDEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjk1LCAxLjA1LCAxKTtcbiAgfVxuXG4gIDc1JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMS4wNSwgMC45NSwgMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMDUsIDAuOTUsIDEpO1xuICB9XG5cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVgoMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZVgoMSk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBydWJiZXJCYW5kIHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVgoMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZVgoMSk7XG4gIH1cblxuICAzMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEuMjUsIDAuNzUsIDEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjI1LCAwLjc1LCAxKTtcbiAgfVxuXG4gIDQwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC43NSwgMS4yNSwgMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuNzUsIDEuMjUsIDEpO1xuICB9XG5cbiAgNTAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLjE1LCAwLjg1LCAxKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4xNSwgMC44NSwgMSk7XG4gIH1cblxuICA2NSUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuOTUsIDEuMDUsIDEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjk1LCAxLjA1LCAxKTtcbiAgfVxuXG4gIDc1JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMS4wNSwgMC45NSwgMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMDUsIDAuOTUsIDEpO1xuICB9XG5cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVgoMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZVgoMSk7XG4gIH1cbn1cblxuLnJ1YmJlckJhbmQge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBydWJiZXJCYW5kO1xuICBhbmltYXRpb24tbmFtZTogcnViYmVyQmFuZDtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHNoYWtlIHtcbiAgMCUsdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgfVxuXG4gIDEwJSwzMCUsNTAlLDcwJSw5MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTBweCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTBweCwgMCwgMCk7XG4gIH1cblxuICAyMCUsNDAlLDYwJSw4MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMHB4LCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwcHgsIDAsIDApO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgc2hha2Uge1xuICAwJSx0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICB9XG5cbiAgMTAlLDMwJSw1MCUsNzAlLDkwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMHB4LCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMHB4LCAwLCAwKTtcbiAgfVxuXG4gIDIwJSw0MCUsNjAlLDgwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwcHgsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTBweCwgMCwgMCk7XG4gIH1cbn1cblxuLnNoYWtlIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogc2hha2U7XG4gIGFuaW1hdGlvbi1uYW1lOiBzaGFrZTtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGhlYWRTaGFrZSB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIH1cblxuICA2LjUlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNnB4KSByb3RhdGVZKC05ZGVnKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTZweCkgcm90YXRlWSgtOWRlZyk7XG4gIH1cblxuICAxOC41JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNXB4KSByb3RhdGVZKDdkZWcpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg1cHgpIHJvdGF0ZVkoN2RlZyk7XG4gIH1cblxuICAzMS41JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTNweCkgcm90YXRlWSgtNWRlZyk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0zcHgpIHJvdGF0ZVkoLTVkZWcpO1xuICB9XG5cbiAgNDMuNSUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDJweCkgcm90YXRlWSgzZGVnKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMnB4KSByb3RhdGVZKDNkZWcpO1xuICB9XG5cbiAgNTAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBoZWFkU2hha2Uge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB9XG5cbiAgNi41JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTZweCkgcm90YXRlWSgtOWRlZyk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC02cHgpIHJvdGF0ZVkoLTlkZWcpO1xuICB9XG5cbiAgMTguNSUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDVweCkgcm90YXRlWSg3ZGVnKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNXB4KSByb3RhdGVZKDdkZWcpO1xuICB9XG5cbiAgMzEuNSUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0zcHgpIHJvdGF0ZVkoLTVkZWcpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtM3B4KSByb3RhdGVZKC01ZGVnKTtcbiAgfVxuXG4gIDQzLjUlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgycHgpIHJvdGF0ZVkoM2RlZyk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDJweCkgcm90YXRlWSgzZGVnKTtcbiAgfVxuXG4gIDUwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB9XG59XG5cbi5oZWFkU2hha2Uge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBoZWFkU2hha2U7XG4gIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XG4gIGFuaW1hdGlvbi1uYW1lOiBoZWFkU2hha2U7XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0O1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgc3dpbmcge1xuICAyMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMTVkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDE1ZGVnKTtcbiAgfVxuXG4gIDQwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgtMTBkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC0xMGRlZyk7XG4gIH1cblxuICA2MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoNWRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoNWRlZyk7XG4gIH1cblxuICA4MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoLTVkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC01ZGVnKTtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgc3dpbmcge1xuICAyMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMTVkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDE1ZGVnKTtcbiAgfVxuXG4gIDQwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgtMTBkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC0xMGRlZyk7XG4gIH1cblxuICA2MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoNWRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoNWRlZyk7XG4gIH1cblxuICA4MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoLTVkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC01ZGVnKTtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICB9XG59XG5cbi5zd2luZyB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHN3aW5nO1xuICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHRvcCBjZW50ZXI7XG4gIGFuaW1hdGlvbi1uYW1lOiBzd2luZztcbiAgdHJhbnNmb3JtLW9yaWdpbjogdG9wIGNlbnRlcjtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHRhZGEge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWCgxKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlWCgxKTtcbiAgfVxuXG4gIDEwJSwyMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuOSwgMC45LCAwLjkpIHJvdGF0ZSgtM2RlZyk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuOSwgMC45LCAwLjkpIHJvdGF0ZSgtM2RlZyk7XG4gIH1cblxuICAzMCUsNTAlLDcwJSw5MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEuMSwgMS4xLCAxLjEpIHJvdGF0ZSgzZGVnKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4xLCAxLjEsIDEuMSkgcm90YXRlKDNkZWcpO1xuICB9XG5cbiAgNDAlLDYwJSw4MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEuMSwgMS4xLCAxLjEpIHJvdGF0ZSgtM2RlZyk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMSwgMS4xLCAxLjEpIHJvdGF0ZSgtM2RlZyk7XG4gIH1cblxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWCgxKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlWCgxKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHRhZGEge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWCgxKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlWCgxKTtcbiAgfVxuXG4gIDEwJSwyMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuOSwgMC45LCAwLjkpIHJvdGF0ZSgtM2RlZyk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuOSwgMC45LCAwLjkpIHJvdGF0ZSgtM2RlZyk7XG4gIH1cblxuICAzMCUsNTAlLDcwJSw5MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEuMSwgMS4xLCAxLjEpIHJvdGF0ZSgzZGVnKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4xLCAxLjEsIDEuMSkgcm90YXRlKDNkZWcpO1xuICB9XG5cbiAgNDAlLDYwJSw4MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEuMSwgMS4xLCAxLjEpIHJvdGF0ZSgtM2RlZyk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMSwgMS4xLCAxLjEpIHJvdGF0ZSgtM2RlZyk7XG4gIH1cblxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWCgxKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlWCgxKTtcbiAgfVxufVxuXG4udGFkYSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHRhZGE7XG4gIGFuaW1hdGlvbi1uYW1lOiB0YWRhO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgd29iYmxlIHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgfVxuXG4gIDE1JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yNSUsIDAsIDApIHJvdGF0ZSgtNWRlZyk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjUlLCAwLCAwKSByb3RhdGUoLTVkZWcpO1xuICB9XG5cbiAgMzAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjAlLCAwLCAwKSByb3RhdGUoM2RlZyk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMCUsIDAsIDApIHJvdGF0ZSgzZGVnKTtcbiAgfVxuXG4gIDQ1JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xNSUsIDAsIDApIHJvdGF0ZSgtM2RlZyk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTUlLCAwLCAwKSByb3RhdGUoLTNkZWcpO1xuICB9XG5cbiAgNjAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAlLCAwLCAwKSByb3RhdGUoMmRlZyk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMCUsIDAsIDApIHJvdGF0ZSgyZGVnKTtcbiAgfVxuXG4gIDc1JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC01JSwgMCwgMCkgcm90YXRlKC0xZGVnKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC01JSwgMCwgMCkgcm90YXRlKC0xZGVnKTtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyB3b2JibGUge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICB9XG5cbiAgMTUlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTI1JSwgMCwgMCkgcm90YXRlKC01ZGVnKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yNSUsIDAsIDApIHJvdGF0ZSgtNWRlZyk7XG4gIH1cblxuICAzMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMCUsIDAsIDApIHJvdGF0ZSgzZGVnKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwJSwgMCwgMCkgcm90YXRlKDNkZWcpO1xuICB9XG5cbiAgNDUlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTE1JSwgMCwgMCkgcm90YXRlKC0zZGVnKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xNSUsIDAsIDApIHJvdGF0ZSgtM2RlZyk7XG4gIH1cblxuICA2MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMCUsIDAsIDApIHJvdGF0ZSgyZGVnKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwJSwgMCwgMCkgcm90YXRlKDJkZWcpO1xuICB9XG5cbiAgNzUlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTUlLCAwLCAwKSByb3RhdGUoLTFkZWcpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTUlLCAwLCAwKSByb3RhdGUoLTFkZWcpO1xuICB9XG5cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgfVxufVxuXG4ud29iYmxlIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogd29iYmxlO1xuICBhbmltYXRpb24tbmFtZTogd29iYmxlO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgamVsbG8ge1xuICAwJSwxMS4xJSx0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICB9XG5cbiAgMjIuMiUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCgtMTIuNWRlZykgc2tld1koLTEyLjVkZWcpO1xuICAgIHRyYW5zZm9ybTogc2tld1goLTEyLjVkZWcpIHNrZXdZKC0xMi41ZGVnKTtcbiAgfVxuXG4gIDMzLjMlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tld1goNi4yNWRlZykgc2tld1koNi4yNWRlZyk7XG4gICAgdHJhbnNmb3JtOiBza2V3WCg2LjI1ZGVnKSBza2V3WSg2LjI1ZGVnKTtcbiAgfVxuXG4gIDQ0LjQlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tld1goLTMuMTI1ZGVnKSBza2V3WSgtMy4xMjVkZWcpO1xuICAgIHRyYW5zZm9ybTogc2tld1goLTMuMTI1ZGVnKSBza2V3WSgtMy4xMjVkZWcpO1xuICB9XG5cbiAgNTUuNSUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCgxLjU2MjVkZWcpIHNrZXdZKDEuNTYyNWRlZyk7XG4gICAgdHJhbnNmb3JtOiBza2V3WCgxLjU2MjVkZWcpIHNrZXdZKDEuNTYyNWRlZyk7XG4gIH1cblxuICA2Ni42JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKC0wLjc4MTI1ZGVnKSBza2V3WSgtMC43ODEyNWRlZyk7XG4gICAgdHJhbnNmb3JtOiBza2V3WCgtMC43ODEyNWRlZykgc2tld1koLTAuNzgxMjVkZWcpO1xuICB9XG5cbiAgNzcuNyUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCgwLjM5MDYyNWRlZykgc2tld1koMC4zOTA2MjVkZWcpO1xuICAgIHRyYW5zZm9ybTogc2tld1goMC4zOTA2MjVkZWcpIHNrZXdZKDAuMzkwNjI1ZGVnKTtcbiAgfVxuXG4gIDg4LjglIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tld1goLTAuMTk1MzEyNWRlZykgc2tld1koLTAuMTk1MzEyNWRlZyk7XG4gICAgdHJhbnNmb3JtOiBza2V3WCgtMC4xOTUzMTI1ZGVnKSBza2V3WSgtMC4xOTUzMTI1ZGVnKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGplbGxvIHtcbiAgMCUsMTEuMSUsdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgfVxuXG4gIDIyLjIlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tld1goLTEyLjVkZWcpIHNrZXdZKC0xMi41ZGVnKTtcbiAgICB0cmFuc2Zvcm06IHNrZXdYKC0xMi41ZGVnKSBza2V3WSgtMTIuNWRlZyk7XG4gIH1cblxuICAzMy4zJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKDYuMjVkZWcpIHNrZXdZKDYuMjVkZWcpO1xuICAgIHRyYW5zZm9ybTogc2tld1goNi4yNWRlZykgc2tld1koNi4yNWRlZyk7XG4gIH1cblxuICA0NC40JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKC0zLjEyNWRlZykgc2tld1koLTMuMTI1ZGVnKTtcbiAgICB0cmFuc2Zvcm06IHNrZXdYKC0zLjEyNWRlZykgc2tld1koLTMuMTI1ZGVnKTtcbiAgfVxuXG4gIDU1LjUlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tld1goMS41NjI1ZGVnKSBza2V3WSgxLjU2MjVkZWcpO1xuICAgIHRyYW5zZm9ybTogc2tld1goMS41NjI1ZGVnKSBza2V3WSgxLjU2MjVkZWcpO1xuICB9XG5cbiAgNjYuNiUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCgtMC43ODEyNWRlZykgc2tld1koLTAuNzgxMjVkZWcpO1xuICAgIHRyYW5zZm9ybTogc2tld1goLTAuNzgxMjVkZWcpIHNrZXdZKC0wLjc4MTI1ZGVnKTtcbiAgfVxuXG4gIDc3LjclIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tld1goMC4zOTA2MjVkZWcpIHNrZXdZKDAuMzkwNjI1ZGVnKTtcbiAgICB0cmFuc2Zvcm06IHNrZXdYKDAuMzkwNjI1ZGVnKSBza2V3WSgwLjM5MDYyNWRlZyk7XG4gIH1cblxuICA4OC44JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKC0wLjE5NTMxMjVkZWcpIHNrZXdZKC0wLjE5NTMxMjVkZWcpO1xuICAgIHRyYW5zZm9ybTogc2tld1goLTAuMTk1MzEyNWRlZykgc2tld1koLTAuMTk1MzEyNWRlZyk7XG4gIH1cbn1cblxuLmplbGxvIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogamVsbG87XG4gIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuICBhbmltYXRpb24tbmFtZTogamVsbG87XG4gIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGhlYXJ0QmVhdCB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxuXG4gIDE0JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEuMyk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjMpO1xuICB9XG5cbiAgMjglIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxuXG4gIDQyJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEuMyk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjMpO1xuICB9XG5cbiAgNzAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGhlYXJ0QmVhdCB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxuXG4gIDE0JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEuMyk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjMpO1xuICB9XG5cbiAgMjglIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxuXG4gIDQyJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEuMyk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjMpO1xuICB9XG5cbiAgNzAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxufVxuXG4uaGVhcnRCZWF0IHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDEuM3M7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGhlYXJ0QmVhdDtcbiAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDtcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxLjNzO1xuICBhbmltYXRpb24tbmFtZTogaGVhcnRCZWF0O1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGJvdW5jZUluIHtcbiAgMCUsMjAlLDQwJSw2MCUsODAlLHRvIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xuICB9XG5cbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuMywgMC4zLCAwLjMpO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuMywgMC4zLCAwLjMpO1xuICB9XG5cbiAgMjAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLjEsIDEuMSwgMS4xKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4xLCAxLjEsIDEuMSk7XG4gIH1cblxuICA0MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuOSwgMC45LCAwLjkpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjksIDAuOSwgMC45KTtcbiAgfVxuXG4gIDYwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMS4wMywgMS4wMywgMS4wMyk7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4wMywgMS4wMywgMS4wMyk7XG4gIH1cblxuICA4MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuOTcsIDAuOTcsIDAuOTcpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjk3LCAwLjk3LCAwLjk3KTtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGVYKDEpO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiBzY2FsZVgoMSk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBib3VuY2VJbiB7XG4gIDAlLDIwJSw0MCUsNjAlLDgwJSx0byB7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcbiAgfVxuXG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjMsIDAuMywgMC4zKTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjMsIDAuMywgMC4zKTtcbiAgfVxuXG4gIDIwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMS4xLCAxLjEsIDEuMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMSwgMS4xLCAxLjEpO1xuICB9XG5cbiAgNDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjksIDAuOSwgMC45KTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC45LCAwLjksIDAuOSk7XG4gIH1cblxuICA2MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEuMDMsIDEuMDMsIDEuMDMpO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMDMsIDEuMDMsIDEuMDMpO1xuICB9XG5cbiAgODAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjk3LCAwLjk3LCAwLjk3KTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC45NywgMC45NywgMC45Nyk7XG4gIH1cblxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWCgxKTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogc2NhbGVYKDEpO1xuICB9XG59XG5cbi5ib3VuY2VJbiB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAuNzVzO1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBib3VuY2VJbjtcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAuNzVzO1xuICBhbmltYXRpb24tbmFtZTogYm91bmNlSW47XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBib3VuY2VJbkRvd24ge1xuICAwJSw2MCUsNzUlLDkwJSx0byB7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcbiAgfVxuXG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTMwMDBweCwgMCk7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0zMDAwcHgsIDApO1xuICB9XG5cbiAgNjAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjVweCwgMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDI1cHgsIDApO1xuICB9XG5cbiAgNzUlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwcHgsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwcHgsIDApO1xuICB9XG5cbiAgOTAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgNXB4LCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDVweCwgMCk7XG4gIH1cblxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgYm91bmNlSW5Eb3duIHtcbiAgMCUsNjAlLDc1JSw5MCUsdG8ge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG4gIH1cblxuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0zMDAwcHgsIDApO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMzAwMHB4LCAwKTtcbiAgfVxuXG4gIDYwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDI1cHgsIDApO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyNXB4LCAwKTtcbiAgfVxuXG4gIDc1JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMHB4LCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMHB4LCAwKTtcbiAgfVxuXG4gIDkwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDVweCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCA1cHgsIDApO1xuICB9XG5cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgfVxufVxuXG4uYm91bmNlSW5Eb3duIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogYm91bmNlSW5Eb3duO1xuICBhbmltYXRpb24tbmFtZTogYm91bmNlSW5Eb3duO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgYm91bmNlSW5MZWZ0IHtcbiAgMCUsNjAlLDc1JSw5MCUsdG8ge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG4gIH1cblxuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0zMDAwcHgsIDAsIDApO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMzAwMHB4LCAwLCAwKTtcbiAgfVxuXG4gIDYwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDI1cHgsIDAsIDApO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyNXB4LCAwLCAwKTtcbiAgfVxuXG4gIDc1JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMHB4LCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMHB4LCAwLCAwKTtcbiAgfVxuXG4gIDkwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDVweCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCg1cHgsIDAsIDApO1xuICB9XG5cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGJvdW5jZUluTGVmdCB7XG4gIDAlLDYwJSw3NSUsOTAlLHRvIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xuICB9XG5cbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMzAwMHB4LCAwLCAwKTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTMwMDBweCwgMCwgMCk7XG4gIH1cblxuICA2MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyNXB4LCAwLCAwKTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjVweCwgMCwgMCk7XG4gIH1cblxuICA3NSUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTBweCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTBweCwgMCwgMCk7XG4gIH1cblxuICA5MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCg1cHgsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoNXB4LCAwLCAwKTtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gIH1cbn1cblxuLmJvdW5jZUluTGVmdCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGJvdW5jZUluTGVmdDtcbiAgYW5pbWF0aW9uLW5hbWU6IGJvdW5jZUluTGVmdDtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGJvdW5jZUluUmlnaHQge1xuICAwJSw2MCUsNzUlLDkwJSx0byB7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcbiAgfVxuXG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMzAwMHB4LCAwLCAwKTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMzAwMHB4LCAwLCAwKTtcbiAgfVxuXG4gIDYwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yNXB4LCAwLCAwKTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTI1cHgsIDAsIDApO1xuICB9XG5cbiAgNzUlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTBweCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMHB4LCAwLCAwKTtcbiAgfVxuXG4gIDkwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC01cHgsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTVweCwgMCwgMCk7XG4gIH1cblxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgYm91bmNlSW5SaWdodCB7XG4gIDAlLDYwJSw3NSUsOTAlLHRvIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xuICB9XG5cbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgzMDAwcHgsIDAsIDApO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgzMDAwcHgsIDAsIDApO1xuICB9XG5cbiAgNjAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTI1cHgsIDAsIDApO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjVweCwgMCwgMCk7XG4gIH1cblxuICA3NSUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMHB4LCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwcHgsIDAsIDApO1xuICB9XG5cbiAgOTAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTVweCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNXB4LCAwLCAwKTtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gIH1cbn1cblxuLmJvdW5jZUluUmlnaHQge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBib3VuY2VJblJpZ2h0O1xuICBhbmltYXRpb24tbmFtZTogYm91bmNlSW5SaWdodDtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGJvdW5jZUluVXAge1xuICAwJSw2MCUsNzUlLDkwJSx0byB7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcbiAgfVxuXG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMzAwMHB4LCAwKTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMzAwMHB4LCAwKTtcbiAgfVxuXG4gIDYwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMHB4LCAwKTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwcHgsIDApO1xuICB9XG5cbiAgNzUlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTBweCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMHB4LCAwKTtcbiAgfVxuXG4gIDkwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC01cHgsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTVweCwgMCk7XG4gIH1cblxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgYm91bmNlSW5VcCB7XG4gIDAlLDYwJSw3NSUsOTAlLHRvIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xuICB9XG5cbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAzMDAwcHgsIDApO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAzMDAwcHgsIDApO1xuICB9XG5cbiAgNjAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwcHgsIDApO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjBweCwgMCk7XG4gIH1cblxuICA3NSUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMHB4LCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwcHgsIDApO1xuICB9XG5cbiAgOTAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTVweCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtNXB4LCAwKTtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gIH1cbn1cblxuLmJvdW5jZUluVXAge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBib3VuY2VJblVwO1xuICBhbmltYXRpb24tbmFtZTogYm91bmNlSW5VcDtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGJvdW5jZU91dCB7XG4gIDIwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC45LCAwLjksIDAuOSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuOSwgMC45LCAwLjkpO1xuICB9XG5cbiAgNTAlLDU1JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMS4xLCAxLjEsIDEuMSk7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4xLCAxLjEsIDEuMSk7XG4gIH1cblxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC4zLCAwLjMsIDAuMyk7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC4zLCAwLjMsIDAuMyk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBib3VuY2VPdXQge1xuICAyMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuOSwgMC45LCAwLjkpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjksIDAuOSwgMC45KTtcbiAgfVxuXG4gIDUwJSw1NSUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEuMSwgMS4xLCAxLjEpO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMSwgMS4xLCAxLjEpO1xuICB9XG5cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuMywgMC4zLCAwLjMpO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuMywgMC4zLCAwLjMpO1xuICB9XG59XG5cbi5ib3VuY2VPdXQge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogLjc1cztcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogYm91bmNlT3V0O1xuICBhbmltYXRpb24tZHVyYXRpb246IC43NXM7XG4gIGFuaW1hdGlvbi1uYW1lOiBib3VuY2VPdXQ7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBib3VuY2VPdXREb3duIHtcbiAgMjAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTBweCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMHB4LCAwKTtcbiAgfVxuXG4gIDQwJSw0NSUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjBweCwgMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMHB4LCAwKTtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjAwMHB4LCAwKTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjAwMHB4LCAwKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGJvdW5jZU91dERvd24ge1xuICAyMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMHB4LCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwcHgsIDApO1xuICB9XG5cbiAgNDAlLDQ1JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMHB4LCAwKTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwcHgsIDApO1xuICB9XG5cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyMDAwcHgsIDApO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyMDAwcHgsIDApO1xuICB9XG59XG5cbi5ib3VuY2VPdXREb3duIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogYm91bmNlT3V0RG93bjtcbiAgYW5pbWF0aW9uLW5hbWU6IGJvdW5jZU91dERvd247XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBib3VuY2VPdXRMZWZ0IHtcbiAgMjAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjBweCwgMCwgMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwcHgsIDAsIDApO1xuICB9XG5cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjAwMHB4LCAwLCAwKTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTIwMDBweCwgMCwgMCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBib3VuY2VPdXRMZWZ0IHtcbiAgMjAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjBweCwgMCwgMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwcHgsIDAsIDApO1xuICB9XG5cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjAwMHB4LCAwLCAwKTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTIwMDBweCwgMCwgMCk7XG4gIH1cbn1cblxuLmJvdW5jZU91dExlZnQge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBib3VuY2VPdXRMZWZ0O1xuICBhbmltYXRpb24tbmFtZTogYm91bmNlT3V0TGVmdDtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGJvdW5jZU91dFJpZ2h0IHtcbiAgMjAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTIwcHgsIDAsIDApO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjBweCwgMCwgMCk7XG4gIH1cblxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwMDBweCwgMCwgMCk7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwMDBweCwgMCwgMCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBib3VuY2VPdXRSaWdodCB7XG4gIDIwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yMHB4LCAwLCAwKTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTIwcHgsIDAsIDApO1xuICB9XG5cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMDAwcHgsIDAsIDApO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMDAwcHgsIDAsIDApO1xuICB9XG59XG5cbi5ib3VuY2VPdXRSaWdodCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGJvdW5jZU91dFJpZ2h0O1xuICBhbmltYXRpb24tbmFtZTogYm91bmNlT3V0UmlnaHQ7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBib3VuY2VPdXRVcCB7XG4gIDIwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMHB4LCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMHB4LCAwKTtcbiAgfVxuXG4gIDQwJSw0NSUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyMHB4LCAwKTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjBweCwgMCk7XG4gIH1cblxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMDAwcHgsIDApO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjAwMHB4LCAwKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGJvdW5jZU91dFVwIHtcbiAgMjAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwcHgsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwcHgsIDApO1xuICB9XG5cbiAgNDAlLDQ1JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDIwcHgsIDApO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyMHB4LCAwKTtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwMDBweCwgMCk7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMDAwcHgsIDApO1xuICB9XG59XG5cbi5ib3VuY2VPdXRVcCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGJvdW5jZU91dFVwO1xuICBhbmltYXRpb24tbmFtZTogYm91bmNlT3V0VXA7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBmYWRlSW4ge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gIHRvIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmFkZUluIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cblxuICB0byB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG4uZmFkZUluIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZUluO1xuICBhbmltYXRpb24tbmFtZTogZmFkZUluO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZUluRG93biB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMCUsIDApO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAwJSwgMCk7XG4gIH1cblxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBmYWRlSW5Eb3duIHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAwJSwgMCk7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgfVxufVxuXG4uZmFkZUluRG93biB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVJbkRvd247XG4gIGFuaW1hdGlvbi1uYW1lOiBmYWRlSW5Eb3duO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZUluRG93bkJpZyB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwMDBweCwgMCk7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMDAwcHgsIDApO1xuICB9XG5cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmFkZUluRG93bkJpZyB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwMDBweCwgMCk7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMDAwcHgsIDApO1xuICB9XG5cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICB9XG59XG5cbi5mYWRlSW5Eb3duQmlnIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZUluRG93bkJpZztcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVJbkRvd25CaWc7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBmYWRlSW5MZWZ0IHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGZhZGVJbkxlZnQge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xuICB9XG5cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICB9XG59XG5cbi5mYWRlSW5MZWZ0IHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZUluTGVmdDtcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVJbkxlZnQ7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBmYWRlSW5MZWZ0QmlnIHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjAwMHB4LCAwLCAwKTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTIwMDBweCwgMCwgMCk7XG4gIH1cblxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBmYWRlSW5MZWZ0QmlnIHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjAwMHB4LCAwLCAwKTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTIwMDBweCwgMCwgMCk7XG4gIH1cblxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gIH1cbn1cblxuLmZhZGVJbkxlZnRCaWcge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlSW5MZWZ0QmlnO1xuICBhbmltYXRpb24tbmFtZTogZmFkZUluTGVmdEJpZztcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVJblJpZ2h0IHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7XG4gIH1cblxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBmYWRlSW5SaWdodCB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xuICB9XG5cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICB9XG59XG5cbi5mYWRlSW5SaWdodCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVJblJpZ2h0O1xuICBhbmltYXRpb24tbmFtZTogZmFkZUluUmlnaHQ7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBmYWRlSW5SaWdodEJpZyB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjAwMHB4LCAwLCAwKTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjAwMHB4LCAwLCAwKTtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGZhZGVJblJpZ2h0QmlnIHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMDAwcHgsIDAsIDApO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMDAwcHgsIDAsIDApO1xuICB9XG5cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICB9XG59XG5cbi5mYWRlSW5SaWdodEJpZyB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVJblJpZ2h0QmlnO1xuICBhbmltYXRpb24tbmFtZTogZmFkZUluUmlnaHRCaWc7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBmYWRlSW5VcCB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwMCUsIDApO1xuICB9XG5cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmFkZUluVXAge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwMCUsIDApO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDAlLCAwKTtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgfVxufVxuXG4uZmFkZUluVXAge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlSW5VcDtcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVJblVwO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZUluVXBCaWcge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDIwMDBweCwgMCk7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDIwMDBweCwgMCk7XG4gIH1cblxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBmYWRlSW5VcEJpZyB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjAwMHB4LCAwKTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjAwMHB4LCAwKTtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgfVxufVxuXG4uZmFkZUluVXBCaWcge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlSW5VcEJpZztcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVJblVwQmlnO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZU91dCB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBmYWRlT3V0IHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICB0byB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG4uZmFkZU91dCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXQ7XG4gIGFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0O1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZU91dERvd24ge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwMCUsIDApO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmFkZU91dERvd24ge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwMCUsIDApO1xuICB9XG59XG5cbi5mYWRlT3V0RG93biB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXREb3duO1xuICBhbmltYXRpb24tbmFtZTogZmFkZU91dERvd247XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBmYWRlT3V0RG93bkJpZyB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyMDAwcHgsIDApO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyMDAwcHgsIDApO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmFkZU91dERvd25CaWcge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjAwMHB4LCAwKTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjAwMHB4LCAwKTtcbiAgfVxufVxuXG4uZmFkZU91dERvd25CaWcge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0RG93bkJpZztcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXREb3duQmlnO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZU91dExlZnQge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBmYWRlT3V0TGVmdCB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTtcbiAgfVxufVxuXG4uZmFkZU91dExlZnQge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0TGVmdDtcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXRMZWZ0O1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZU91dExlZnRCaWcge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTIwMDBweCwgMCwgMCk7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yMDAwcHgsIDAsIDApO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmFkZU91dExlZnRCaWcge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTIwMDBweCwgMCwgMCk7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yMDAwcHgsIDAsIDApO1xuICB9XG59XG5cbi5mYWRlT3V0TGVmdEJpZyB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXRMZWZ0QmlnO1xuICBhbmltYXRpb24tbmFtZTogZmFkZU91dExlZnRCaWc7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBmYWRlT3V0UmlnaHQge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmFkZU91dFJpZ2h0IHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcbiAgfVxufVxuXG4uZmFkZU91dFJpZ2h0IHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZU91dFJpZ2h0O1xuICBhbmltYXRpb24tbmFtZTogZmFkZU91dFJpZ2h0O1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZU91dFJpZ2h0QmlnIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwMDBweCwgMCwgMCk7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwMDBweCwgMCwgMCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBmYWRlT3V0UmlnaHRCaWcge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjAwMHB4LCAwLCAwKTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjAwMHB4LCAwLCAwKTtcbiAgfVxufVxuXG4uZmFkZU91dFJpZ2h0QmlnIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZU91dFJpZ2h0QmlnO1xuICBhbmltYXRpb24tbmFtZTogZmFkZU91dFJpZ2h0QmlnO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZU91dFVwIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMCUsIDApO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmFkZU91dFVwIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMCUsIDApO1xuICB9XG59XG5cbi5mYWRlT3V0VXAge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0VXA7XG4gIGFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0VXA7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBmYWRlT3V0VXBCaWcge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwMDBweCwgMCk7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMDAwcHgsIDApO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmFkZU91dFVwQmlnIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMDAwcHgsIDApO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjAwMHB4LCAwKTtcbiAgfVxufVxuXG4uZmFkZU91dFVwQmlnIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZU91dFVwQmlnO1xuICBhbmltYXRpb24tbmFtZTogZmFkZU91dFVwQmlnO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmxpcCB7XG4gIDAlIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgc2NhbGVYKDEpIHRyYW5zbGF0ZVooMCkgcm90YXRlWSgtMXR1cm4pO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHNjYWxlWCgxKSB0cmFuc2xhdGVaKDApIHJvdGF0ZVkoLTF0dXJuKTtcbiAgfVxuXG4gIDQwJSB7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHNjYWxlWCgxKSB0cmFuc2xhdGVaKDE1MHB4KSByb3RhdGVZKC0xOTBkZWcpO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHNjYWxlWCgxKSB0cmFuc2xhdGVaKDE1MHB4KSByb3RhdGVZKC0xOTBkZWcpO1xuICB9XG5cbiAgNTAlIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSBzY2FsZVgoMSkgdHJhbnNsYXRlWigxNTBweCkgcm90YXRlWSgtMTcwZGVnKTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHNjYWxlWCgxKSB0cmFuc2xhdGVaKDE1MHB4KSByb3RhdGVZKC0xNzBkZWcpO1xuICB9XG5cbiAgODAlIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSBzY2FsZTNkKDAuOTUsIDAuOTUsIDAuOTUpIHRyYW5zbGF0ZVooMCkgcm90YXRlWSgwZGVnKTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHNjYWxlM2QoMC45NSwgMC45NSwgMC45NSkgdHJhbnNsYXRlWigwKSByb3RhdGVZKDBkZWcpO1xuICB9XG5cbiAgdG8ge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHNjYWxlWCgxKSB0cmFuc2xhdGVaKDApIHJvdGF0ZVkoMGRlZyk7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSBzY2FsZVgoMSkgdHJhbnNsYXRlWigwKSByb3RhdGVZKDBkZWcpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmxpcCB7XG4gIDAlIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgc2NhbGVYKDEpIHRyYW5zbGF0ZVooMCkgcm90YXRlWSgtMXR1cm4pO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHNjYWxlWCgxKSB0cmFuc2xhdGVaKDApIHJvdGF0ZVkoLTF0dXJuKTtcbiAgfVxuXG4gIDQwJSB7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHNjYWxlWCgxKSB0cmFuc2xhdGVaKDE1MHB4KSByb3RhdGVZKC0xOTBkZWcpO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHNjYWxlWCgxKSB0cmFuc2xhdGVaKDE1MHB4KSByb3RhdGVZKC0xOTBkZWcpO1xuICB9XG5cbiAgNTAlIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSBzY2FsZVgoMSkgdHJhbnNsYXRlWigxNTBweCkgcm90YXRlWSgtMTcwZGVnKTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHNjYWxlWCgxKSB0cmFuc2xhdGVaKDE1MHB4KSByb3RhdGVZKC0xNzBkZWcpO1xuICB9XG5cbiAgODAlIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSBzY2FsZTNkKDAuOTUsIDAuOTUsIDAuOTUpIHRyYW5zbGF0ZVooMCkgcm90YXRlWSgwZGVnKTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHNjYWxlM2QoMC45NSwgMC45NSwgMC45NSkgdHJhbnNsYXRlWigwKSByb3RhdGVZKDBkZWcpO1xuICB9XG5cbiAgdG8ge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHNjYWxlWCgxKSB0cmFuc2xhdGVaKDApIHJvdGF0ZVkoMGRlZyk7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSBzY2FsZVgoMSkgdHJhbnNsYXRlWigwKSByb3RhdGVZKDBkZWcpO1xuICB9XG59XG5cbi5hbmltYXRlZC5mbGlwIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmxpcDtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiB2aXNpYmxlO1xuICBhbmltYXRpb24tbmFtZTogZmxpcDtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogdmlzaWJsZTtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGZsaXBJblgge1xuICAwJSB7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWCg5MGRlZyk7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVgoOTBkZWcpO1xuICB9XG5cbiAgNDAlIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVYKC0yMGRlZyk7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVYKC0yMGRlZyk7XG4gIH1cblxuICA2MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWCgxMGRlZyk7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVYKDEwZGVnKTtcbiAgfVxuXG4gIDgwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVYKC01ZGVnKTtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVYKC01ZGVnKTtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmxpcEluWCB7XG4gIDAlIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVYKDkwZGVnKTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWCg5MGRlZyk7XG4gIH1cblxuICA0MCUge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVgoLTIwZGVnKTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVgoLTIwZGVnKTtcbiAgfVxuXG4gIDYwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVYKDEwZGVnKTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVgoMTBkZWcpO1xuICB9XG5cbiAgODAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVgoLTVkZWcpO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVgoLTVkZWcpO1xuICB9XG5cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7XG4gIH1cbn1cblxuLmZsaXBJblgge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmbGlwSW5YO1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDtcbiAgYW5pbWF0aW9uLW5hbWU6IGZsaXBJblg7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGZsaXBJblkge1xuICAwJSB7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWSg5MGRlZyk7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVkoOTBkZWcpO1xuICB9XG5cbiAgNDAlIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVZKC0yMGRlZyk7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVZKC0yMGRlZyk7XG4gIH1cblxuICA2MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWSgxMGRlZyk7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVZKDEwZGVnKTtcbiAgfVxuXG4gIDgwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVZKC01ZGVnKTtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVZKC01ZGVnKTtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmxpcEluWSB7XG4gIDAlIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVZKDkwZGVnKTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWSg5MGRlZyk7XG4gIH1cblxuICA0MCUge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVkoLTIwZGVnKTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVkoLTIwZGVnKTtcbiAgfVxuXG4gIDYwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVZKDEwZGVnKTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVkoMTBkZWcpO1xuICB9XG5cbiAgODAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVkoLTVkZWcpO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVkoLTVkZWcpO1xuICB9XG5cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7XG4gIH1cbn1cblxuLmZsaXBJblkge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmbGlwSW5ZO1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDtcbiAgYW5pbWF0aW9uLW5hbWU6IGZsaXBJblk7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGZsaXBPdXRYIHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7XG4gIH1cblxuICAzMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWCgtMjBkZWcpO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWCgtMjBkZWcpO1xuICB9XG5cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWCg5MGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVYKDkwZGVnKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGZsaXBPdXRYIHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7XG4gIH1cblxuICAzMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWCgtMjBkZWcpO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWCgtMjBkZWcpO1xuICB9XG5cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWCg5MGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVYKDkwZGVnKTtcbiAgfVxufVxuXG4uZmxpcE91dFgge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogLjc1cztcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmxpcE91dFg7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50O1xuICBhbmltYXRpb24tZHVyYXRpb246IC43NXM7XG4gIGFuaW1hdGlvbi1uYW1lOiBmbGlwT3V0WDtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50O1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmxpcE91dFkge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KTtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KTtcbiAgfVxuXG4gIDMwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVZKC0xNWRlZyk7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVZKC0xNWRlZyk7XG4gIH1cblxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVZKDkwZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVkoOTBkZWcpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmxpcE91dFkge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KTtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KTtcbiAgfVxuXG4gIDMwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVZKC0xNWRlZyk7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVZKC0xNWRlZyk7XG4gIH1cblxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVZKDkwZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVkoOTBkZWcpO1xuICB9XG59XG5cbi5mbGlwT3V0WSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAuNzVzO1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmbGlwT3V0WTtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogLjc1cztcbiAgYW5pbWF0aW9uLW5hbWU6IGZsaXBPdXRZO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBsaWdodFNwZWVkSW4ge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApIHNrZXdYKC0zMGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApIHNrZXdYKC0zMGRlZyk7XG4gIH1cblxuICA2MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCgyMGRlZyk7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHNrZXdYKDIwZGVnKTtcbiAgfVxuXG4gIDgwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKC01ZGVnKTtcbiAgICB0cmFuc2Zvcm06IHNrZXdYKC01ZGVnKTtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBsaWdodFNwZWVkSW4ge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApIHNrZXdYKC0zMGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApIHNrZXdYKC0zMGRlZyk7XG4gIH1cblxuICA2MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCgyMGRlZyk7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHNrZXdYKDIwZGVnKTtcbiAgfVxuXG4gIDgwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKC01ZGVnKTtcbiAgICB0cmFuc2Zvcm06IHNrZXdYKC01ZGVnKTtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gIH1cbn1cblxuLmxpZ2h0U3BlZWRJbiB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGxpZ2h0U3BlZWRJbjtcbiAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgYW5pbWF0aW9uLW5hbWU6IGxpZ2h0U3BlZWRJbjtcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBsaWdodFNwZWVkT3V0IHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApIHNrZXdYKDMwZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCkgc2tld1goMzBkZWcpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgbGlnaHRTcGVlZE91dCB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKSBza2V3WCgzMGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApIHNrZXdYKDMwZGVnKTtcbiAgfVxufVxuXG4ubGlnaHRTcGVlZE91dCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGxpZ2h0U3BlZWRPdXQ7XG4gIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcbiAgYW5pbWF0aW9uLW5hbWU6IGxpZ2h0U3BlZWRPdXQ7XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyByb3RhdGVJbiB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKC0yMDBkZWcpO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTIwMGRlZyk7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuICB9XG5cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHJvdGF0ZUluIHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoLTIwMGRlZyk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMjAwZGVnKTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG4gIH1cblxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuICB9XG59XG5cbi5yb3RhdGVJbiB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZUluO1xuICBhbmltYXRpb24tbmFtZTogcm90YXRlSW47XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyByb3RhdGVJbkRvd25MZWZ0IHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgcm90YXRlSW5Eb3duTGVmdCB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XG4gIH1cblxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcbiAgfVxufVxuXG4ucm90YXRlSW5Eb3duTGVmdCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZUluRG93bkxlZnQ7XG4gIGFuaW1hdGlvbi1uYW1lOiByb3RhdGVJbkRvd25MZWZ0O1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgcm90YXRlSW5Eb3duUmlnaHQge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xuICB9XG5cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHJvdGF0ZUluRG93blJpZ2h0IHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XG4gIH1cbn1cblxuLnJvdGF0ZUluRG93blJpZ2h0IHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogcm90YXRlSW5Eb3duUmlnaHQ7XG4gIGFuaW1hdGlvbi1uYW1lOiByb3RhdGVJbkRvd25SaWdodDtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHJvdGF0ZUluVXBMZWZ0IHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XG4gIH1cblxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHJvdGF0ZUluVXBMZWZ0IHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XG4gIH1cblxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcbiAgfVxufVxuXG4ucm90YXRlSW5VcExlZnQge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiByb3RhdGVJblVwTGVmdDtcbiAgYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZUluVXBMZWZ0O1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgcm90YXRlSW5VcFJpZ2h0IHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xuICB9XG5cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHJvdGF0ZUluVXBSaWdodCB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XG4gIH1cbn1cblxuLnJvdGF0ZUluVXBSaWdodCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZUluVXBSaWdodDtcbiAgYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZUluVXBSaWdodDtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHJvdGF0ZU91dCB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDIwMGRlZyk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgyMDBkZWcpO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHJvdGF0ZU91dCB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDIwMGRlZyk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgyMDBkZWcpO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcbiAgfVxufVxuXG4ucm90YXRlT3V0IHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogcm90YXRlT3V0O1xuICBhbmltYXRpb24tbmFtZTogcm90YXRlT3V0O1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgcm90YXRlT3V0RG93bkxlZnQge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xuICB9XG5cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XG4gIH1cbn1cblxuQGtleWZyYW1lcyByb3RhdGVPdXREb3duTGVmdCB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XG4gIH1cblxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcbiAgfVxufVxuXG4ucm90YXRlT3V0RG93bkxlZnQge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiByb3RhdGVPdXREb3duTGVmdDtcbiAgYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZU91dERvd25MZWZ0O1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgcm90YXRlT3V0RG93blJpZ2h0IHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xuICB9XG5cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgcm90YXRlT3V0RG93blJpZ2h0IHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xuICB9XG5cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xuICB9XG59XG5cbi5yb3RhdGVPdXREb3duUmlnaHQge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiByb3RhdGVPdXREb3duUmlnaHQ7XG4gIGFuaW1hdGlvbi1uYW1lOiByb3RhdGVPdXREb3duUmlnaHQ7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyByb3RhdGVPdXRVcExlZnQge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xuICB9XG5cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHJvdGF0ZU91dFVwTGVmdCB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XG4gIH1cblxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xuICB9XG59XG5cbi5yb3RhdGVPdXRVcExlZnQge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiByb3RhdGVPdXRVcExlZnQ7XG4gIGFuaW1hdGlvbi1uYW1lOiByb3RhdGVPdXRVcExlZnQ7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyByb3RhdGVPdXRVcFJpZ2h0IHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xuICB9XG5cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHJvdGF0ZU91dFVwUmlnaHQge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XG4gIH1cblxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xuICB9XG59XG5cbi5yb3RhdGVPdXRVcFJpZ2h0IHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogcm90YXRlT3V0VXBSaWdodDtcbiAgYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZU91dFVwUmlnaHQ7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBoaW5nZSB7XG4gIDAlIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0O1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogdG9wIGxlZnQ7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogdG9wIGxlZnQ7XG4gIH1cblxuICAyMCUsNjAlIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0O1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoODBkZWcpO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogdG9wIGxlZnQ7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoODBkZWcpO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0O1xuICB9XG5cbiAgNDAlLDgwJSB7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDYwZGVnKTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0O1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0O1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoNjBkZWcpO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0O1xuICB9XG5cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCA3MDBweCwgMCk7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDcwMHB4LCAwKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGhpbmdlIHtcbiAgMCUge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiB0b3AgbGVmdDtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiB0b3AgbGVmdDtcbiAgfVxuXG4gIDIwJSw2MCUge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSg4MGRlZyk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiB0b3AgbGVmdDtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg4MGRlZyk7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogdG9wIGxlZnQ7XG4gIH1cblxuICA0MCUsODAlIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0O1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoNjBkZWcpO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogdG9wIGxlZnQ7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg2MGRlZyk7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogdG9wIGxlZnQ7XG4gIH1cblxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDcwMHB4LCAwKTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgNzAwcHgsIDApO1xuICB9XG59XG5cbi5oaW5nZSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAycztcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogaGluZ2U7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogMnM7XG4gIGFuaW1hdGlvbi1uYW1lOiBoaW5nZTtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGphY2tJblRoZUJveCB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMC4xKSByb3RhdGUoMzBkZWcpO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGJvdHRvbTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC4xKSByb3RhdGUoMzBkZWcpO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBib3R0b207XG4gIH1cblxuICA1MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoLTEwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMTBkZWcpO1xuICB9XG5cbiAgNzAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDNkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDNkZWcpO1xuICB9XG5cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBqYWNrSW5UaGVCb3gge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDAuMSkgcm90YXRlKDMwZGVnKTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBib3R0b207XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuMSkgcm90YXRlKDMwZGVnKTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgYm90dG9tO1xuICB9XG5cbiAgNTAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKC0xMGRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTEwZGVnKTtcbiAgfVxuXG4gIDcwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzZGVnKTtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB9XG59XG5cbi5qYWNrSW5UaGVCb3gge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBqYWNrSW5UaGVCb3g7XG4gIGFuaW1hdGlvbi1uYW1lOiBqYWNrSW5UaGVCb3g7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyByb2xsSW4ge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKSByb3RhdGUoLTEyMGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKSByb3RhdGUoLTEyMGRlZyk7XG4gIH1cblxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyByb2xsSW4ge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKSByb3RhdGUoLTEyMGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKSByb3RhdGUoLTEyMGRlZyk7XG4gIH1cblxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gIH1cbn1cblxuLnJvbGxJbiB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHJvbGxJbjtcbiAgYW5pbWF0aW9uLW5hbWU6IHJvbGxJbjtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHJvbGxPdXQge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCkgcm90YXRlKDEyMGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApIHJvdGF0ZSgxMjBkZWcpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgcm9sbE91dCB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKSByb3RhdGUoMTIwZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCkgcm90YXRlKDEyMGRlZyk7XG4gIH1cbn1cblxuLnJvbGxPdXQge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiByb2xsT3V0O1xuICBhbmltYXRpb24tbmFtZTogcm9sbE91dDtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHpvb21JbiB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjMsIDAuMywgMC4zKTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjMsIDAuMywgMC4zKTtcbiAgfVxuXG4gIDUwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHpvb21JbiB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjMsIDAuMywgMC4zKTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjMsIDAuMywgMC4zKTtcbiAgfVxuXG4gIDUwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG4uem9vbUluIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogem9vbUluO1xuICBhbmltYXRpb24tbmFtZTogem9vbUluO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgem9vbUluRG93biB7XG4gIDAlIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuMSwgMC4xLCAwLjEpIHRyYW5zbGF0ZTNkKDAsIC0xMDAwcHgsIDApO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuMSwgMC4xLCAwLjEpIHRyYW5zbGF0ZTNkKDAsIC0xMDAwcHgsIDApO1xuICB9XG5cbiAgNjAlIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIsIDEpO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuNDc1LCAwLjQ3NSwgMC40NzUpIHRyYW5zbGF0ZTNkKDAsIDYwcHgsIDApO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIsIDEpO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuNDc1LCAwLjQ3NSwgMC40NzUpIHRyYW5zbGF0ZTNkKDAsIDYwcHgsIDApO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgem9vbUluRG93biB7XG4gIDAlIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuMSwgMC4xLCAwLjEpIHRyYW5zbGF0ZTNkKDAsIC0xMDAwcHgsIDApO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuMSwgMC4xLCAwLjEpIHRyYW5zbGF0ZTNkKDAsIC0xMDAwcHgsIDApO1xuICB9XG5cbiAgNjAlIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIsIDEpO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuNDc1LCAwLjQ3NSwgMC40NzUpIHRyYW5zbGF0ZTNkKDAsIDYwcHgsIDApO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIsIDEpO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuNDc1LCAwLjQ3NSwgMC40NzUpIHRyYW5zbGF0ZTNkKDAsIDYwcHgsIDApO1xuICB9XG59XG5cbi56b29tSW5Eb3duIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogem9vbUluRG93bjtcbiAgYW5pbWF0aW9uLW5hbWU6IHpvb21JbkRvd247XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyB6b29tSW5MZWZ0IHtcbiAgMCUge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC4xLCAwLjEsIDAuMSkgdHJhbnNsYXRlM2QoLTEwMDBweCwgMCwgMCk7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC4xLCAwLjEsIDAuMSkgdHJhbnNsYXRlM2QoLTEwMDBweCwgMCwgMCk7XG4gIH1cblxuICA2MCUge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMiwgMSk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC40NzUsIDAuNDc1LCAwLjQ3NSkgdHJhbnNsYXRlM2QoMTBweCwgMCwgMCk7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMiwgMSk7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC40NzUsIDAuNDc1LCAwLjQ3NSkgdHJhbnNsYXRlM2QoMTBweCwgMCwgMCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyB6b29tSW5MZWZ0IHtcbiAgMCUge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC4xLCAwLjEsIDAuMSkgdHJhbnNsYXRlM2QoLTEwMDBweCwgMCwgMCk7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC4xLCAwLjEsIDAuMSkgdHJhbnNsYXRlM2QoLTEwMDBweCwgMCwgMCk7XG4gIH1cblxuICA2MCUge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMiwgMSk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC40NzUsIDAuNDc1LCAwLjQ3NSkgdHJhbnNsYXRlM2QoMTBweCwgMCwgMCk7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMiwgMSk7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC40NzUsIDAuNDc1LCAwLjQ3NSkgdHJhbnNsYXRlM2QoMTBweCwgMCwgMCk7XG4gIH1cbn1cblxuLnpvb21JbkxlZnQge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiB6b29tSW5MZWZ0O1xuICBhbmltYXRpb24tbmFtZTogem9vbUluTGVmdDtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHpvb21JblJpZ2h0IHtcbiAgMCUge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC4xLCAwLjEsIDAuMSkgdHJhbnNsYXRlM2QoMTAwMHB4LCAwLCAwKTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjEsIDAuMSwgMC4xKSB0cmFuc2xhdGUzZCgxMDAwcHgsIDAsIDApO1xuICB9XG5cbiAgNjAlIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIsIDEpO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuNDc1LCAwLjQ3NSwgMC40NzUpIHRyYW5zbGF0ZTNkKC0xMHB4LCAwLCAwKTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyLCAxKTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjQ3NSwgMC40NzUsIDAuNDc1KSB0cmFuc2xhdGUzZCgtMTBweCwgMCwgMCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyB6b29tSW5SaWdodCB7XG4gIDAlIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuMSwgMC4xLCAwLjEpIHRyYW5zbGF0ZTNkKDEwMDBweCwgMCwgMCk7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC4xLCAwLjEsIDAuMSkgdHJhbnNsYXRlM2QoMTAwMHB4LCAwLCAwKTtcbiAgfVxuXG4gIDYwJSB7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyLCAxKTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjQ3NSwgMC40NzUsIDAuNDc1KSB0cmFuc2xhdGUzZCgtMTBweCwgMCwgMCk7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMiwgMSk7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC40NzUsIDAuNDc1LCAwLjQ3NSkgdHJhbnNsYXRlM2QoLTEwcHgsIDAsIDApO1xuICB9XG59XG5cbi56b29tSW5SaWdodCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHpvb21JblJpZ2h0O1xuICBhbmltYXRpb24tbmFtZTogem9vbUluUmlnaHQ7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyB6b29tSW5VcCB7XG4gIDAlIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuMSwgMC4xLCAwLjEpIHRyYW5zbGF0ZTNkKDAsIDEwMDBweCwgMCk7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC4xLCAwLjEsIDAuMSkgdHJhbnNsYXRlM2QoMCwgMTAwMHB4LCAwKTtcbiAgfVxuXG4gIDYwJSB7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyLCAxKTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjQ3NSwgMC40NzUsIDAuNDc1KSB0cmFuc2xhdGUzZCgwLCAtNjBweCwgMCk7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMiwgMSk7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC40NzUsIDAuNDc1LCAwLjQ3NSkgdHJhbnNsYXRlM2QoMCwgLTYwcHgsIDApO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgem9vbUluVXAge1xuICAwJSB7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjEsIDAuMSwgMC4xKSB0cmFuc2xhdGUzZCgwLCAxMDAwcHgsIDApO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuMSwgMC4xLCAwLjEpIHRyYW5zbGF0ZTNkKDAsIDEwMDBweCwgMCk7XG4gIH1cblxuICA2MCUge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMiwgMSk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC40NzUsIDAuNDc1LCAwLjQ3NSkgdHJhbnNsYXRlM2QoMCwgLTYwcHgsIDApO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIsIDEpO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuNDc1LCAwLjQ3NSwgMC40NzUpIHRyYW5zbGF0ZTNkKDAsIC02MHB4LCAwKTtcbiAgfVxufVxuXG4uem9vbUluVXAge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiB6b29tSW5VcDtcbiAgYW5pbWF0aW9uLW5hbWU6IHpvb21JblVwO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgem9vbU91dCB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgNTAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjMsIDAuMywgMC4zKTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjMsIDAuMywgMC4zKTtcbiAgfVxuXG4gIHRvIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgem9vbU91dCB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgNTAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjMsIDAuMywgMC4zKTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjMsIDAuMywgMC4zKTtcbiAgfVxuXG4gIHRvIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5cbi56b29tT3V0IHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogem9vbU91dDtcbiAgYW5pbWF0aW9uLW5hbWU6IHpvb21PdXQ7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyB6b29tT3V0RG93biB7XG4gIDQwJSB7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjQ3NSwgMC40NzUsIDAuNDc1KSB0cmFuc2xhdGUzZCgwLCAtNjBweCwgMCk7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC40NzUsIDAuNDc1LCAwLjQ3NSkgdHJhbnNsYXRlM2QoMCwgLTYwcHgsIDApO1xuICB9XG5cbiAgdG8ge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMiwgMSk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC4xLCAwLjEsIDAuMSkgdHJhbnNsYXRlM2QoMCwgMjAwMHB4LCAwKTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBib3R0b207XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMiwgMSk7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC4xLCAwLjEsIDAuMSkgdHJhbnNsYXRlM2QoMCwgMjAwMHB4LCAwKTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgYm90dG9tO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgem9vbU91dERvd24ge1xuICA0MCUge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC40NzUsIDAuNDc1LCAwLjQ3NSkgdHJhbnNsYXRlM2QoMCwgLTYwcHgsIDApO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuNDc1LCAwLjQ3NSwgMC40NzUpIHRyYW5zbGF0ZTNkKDAsIC02MHB4LCAwKTtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIsIDEpO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuMSwgMC4xLCAwLjEpIHRyYW5zbGF0ZTNkKDAsIDIwMDBweCwgMCk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgYm90dG9tO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIsIDEpO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuMSwgMC4xLCAwLjEpIHRyYW5zbGF0ZTNkKDAsIDIwMDBweCwgMCk7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGJvdHRvbTtcbiAgfVxufVxuXG4uem9vbU91dERvd24ge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiB6b29tT3V0RG93bjtcbiAgYW5pbWF0aW9uLW5hbWU6IHpvb21PdXREb3duO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgem9vbU91dExlZnQge1xuICA0MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuNDc1LCAwLjQ3NSwgMC40NzUpIHRyYW5zbGF0ZTNkKDQycHgsIDAsIDApO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuNDc1LCAwLjQ3NSwgMC40NzUpIHRyYW5zbGF0ZTNkKDQycHgsIDAsIDApO1xuICB9XG5cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwLjEpIHRyYW5zbGF0ZTNkKC0yMDAwcHgsIDAsIDApO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBjZW50ZXI7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuMSkgdHJhbnNsYXRlM2QoLTIwMDBweCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBjZW50ZXI7XG4gIH1cbn1cblxuQGtleWZyYW1lcyB6b29tT3V0TGVmdCB7XG4gIDQwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC40NzUsIDAuNDc1LCAwLjQ3NSkgdHJhbnNsYXRlM2QoNDJweCwgMCwgMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC40NzUsIDAuNDc1LCAwLjQ3NSkgdHJhbnNsYXRlM2QoNDJweCwgMCwgMCk7XG4gIH1cblxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDAuMSkgdHJhbnNsYXRlM2QoLTIwMDBweCwgMCwgMCk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGNlbnRlcjtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC4xKSB0cmFuc2xhdGUzZCgtMjAwMHB4LCAwLCAwKTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGNlbnRlcjtcbiAgfVxufVxuXG4uem9vbU91dExlZnQge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiB6b29tT3V0TGVmdDtcbiAgYW5pbWF0aW9uLW5hbWU6IHpvb21PdXRMZWZ0O1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgem9vbU91dFJpZ2h0IHtcbiAgNDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjQ3NSwgMC40NzUsIDAuNDc1KSB0cmFuc2xhdGUzZCgtNDJweCwgMCwgMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC40NzUsIDAuNDc1LCAwLjQ3NSkgdHJhbnNsYXRlM2QoLTQycHgsIDAsIDApO1xuICB9XG5cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwLjEpIHRyYW5zbGF0ZTNkKDIwMDBweCwgMCwgMCk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBjZW50ZXI7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuMSkgdHJhbnNsYXRlM2QoMjAwMHB4LCAwLCAwKTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBjZW50ZXI7XG4gIH1cbn1cblxuQGtleWZyYW1lcyB6b29tT3V0UmlnaHQge1xuICA0MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuNDc1LCAwLjQ3NSwgMC40NzUpIHRyYW5zbGF0ZTNkKC00MnB4LCAwLCAwKTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjQ3NSwgMC40NzUsIDAuNDc1KSB0cmFuc2xhdGUzZCgtNDJweCwgMCwgMCk7XG4gIH1cblxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDAuMSkgdHJhbnNsYXRlM2QoMjAwMHB4LCAwLCAwKTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGNlbnRlcjtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC4xKSB0cmFuc2xhdGUzZCgyMDAwcHgsIDAsIDApO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGNlbnRlcjtcbiAgfVxufVxuXG4uem9vbU91dFJpZ2h0IHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogem9vbU91dFJpZ2h0O1xuICBhbmltYXRpb24tbmFtZTogem9vbU91dFJpZ2h0O1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgem9vbU91dFVwIHtcbiAgNDAlIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuNDc1LCAwLjQ3NSwgMC40NzUpIHRyYW5zbGF0ZTNkKDAsIDYwcHgsIDApO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuNDc1LCAwLjQ3NSwgMC40NzUpIHRyYW5zbGF0ZTNkKDAsIDYwcHgsIDApO1xuICB9XG5cbiAgdG8ge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMiwgMSk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC4xLCAwLjEsIDAuMSkgdHJhbnNsYXRlM2QoMCwgLTIwMDBweCwgMCk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgYm90dG9tO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIsIDEpO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuMSwgMC4xLCAwLjEpIHRyYW5zbGF0ZTNkKDAsIC0yMDAwcHgsIDApO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBib3R0b207XG4gIH1cbn1cblxuQGtleWZyYW1lcyB6b29tT3V0VXAge1xuICA0MCUge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC40NzUsIDAuNDc1LCAwLjQ3NSkgdHJhbnNsYXRlM2QoMCwgNjBweCwgMCk7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC40NzUsIDAuNDc1LCAwLjQ3NSkgdHJhbnNsYXRlM2QoMCwgNjBweCwgMCk7XG4gIH1cblxuICB0byB7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyLCAxKTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjEsIDAuMSwgMC4xKSB0cmFuc2xhdGUzZCgwLCAtMjAwMHB4LCAwKTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBib3R0b207XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMiwgMSk7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC4xLCAwLjEsIDAuMSkgdHJhbnNsYXRlM2QoMCwgLTIwMDBweCwgMCk7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGJvdHRvbTtcbiAgfVxufVxuXG4uem9vbU91dFVwIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogem9vbU91dFVwO1xuICBhbmltYXRpb24tbmFtZTogem9vbU91dFVwO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgc2xpZGVJbkRvd24ge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG5cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHNsaWRlSW5Eb3duIHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAwJSwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAwJSwgMCk7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gIH1cbn1cblxuLnNsaWRlSW5Eb3duIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogc2xpZGVJbkRvd247XG4gIGFuaW1hdGlvbi1uYW1lOiBzbGlkZUluRG93bjtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHNsaWRlSW5MZWZ0IHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBzbGlkZUluTGVmdCB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cblxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICB9XG59XG5cbi5zbGlkZUluTGVmdCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHNsaWRlSW5MZWZ0O1xuICBhbmltYXRpb24tbmFtZTogc2xpZGVJbkxlZnQ7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBzbGlkZUluUmlnaHQge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBzbGlkZUluUmlnaHQge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gIH1cbn1cblxuLnNsaWRlSW5SaWdodCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHNsaWRlSW5SaWdodDtcbiAgYW5pbWF0aW9uLW5hbWU6IHNsaWRlSW5SaWdodDtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHNsaWRlSW5VcCB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDAlLCAwKTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG5cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHNsaWRlSW5VcCB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDAlLCAwKTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG5cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgfVxufVxuXG4uc2xpZGVJblVwIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogc2xpZGVJblVwO1xuICBhbmltYXRpb24tbmFtZTogc2xpZGVJblVwO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgc2xpZGVPdXREb3duIHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDAlLCAwKTtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cbn1cblxuQGtleWZyYW1lcyBzbGlkZU91dERvd24ge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICB9XG5cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDAlLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwMCUsIDApO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxufVxuXG4uc2xpZGVPdXREb3duIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogc2xpZGVPdXREb3duO1xuICBhbmltYXRpb24tbmFtZTogc2xpZGVPdXREb3duO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgc2xpZGVPdXRMZWZ0IHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHNsaWRlT3V0TGVmdCB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gIH1cblxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cbn1cblxuLnNsaWRlT3V0TGVmdCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHNsaWRlT3V0TGVmdDtcbiAgYW5pbWF0aW9uLW5hbWU6IHNsaWRlT3V0TGVmdDtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHNsaWRlT3V0UmlnaHQge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICB9XG5cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHNsaWRlT3V0UmlnaHQge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICB9XG5cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxufVxuXG4uc2xpZGVPdXRSaWdodCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHNsaWRlT3V0UmlnaHQ7XG4gIGFuaW1hdGlvbi1uYW1lOiBzbGlkZU91dFJpZ2h0O1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgc2xpZGVPdXRVcCB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gIH1cblxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cbn1cblxuQGtleWZyYW1lcyBzbGlkZU91dFVwIHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMCUsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMCUsIDApO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxufVxuXG4uc2xpZGVPdXRVcCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHNsaWRlT3V0VXA7XG4gIGFuaW1hdGlvbi1uYW1lOiBzbGlkZU91dFVwO1xufVxuXG4uYW5pbWF0ZWQge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogMXM7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWZpbGwtbW9kZTogYm90aDtcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxcztcbiAgYW5pbWF0aW9uLWZpbGwtbW9kZTogYm90aDtcblxuICAmLmluZmluaXRlIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlO1xuICAgIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlO1xuICB9XG5cbiAgJi5kZWxheS0xcyB7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IDFzO1xuICAgIGFuaW1hdGlvbi1kZWxheTogMXM7XG4gIH1cblxuICAmLmRlbGF5LTJzIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogMnM7XG4gICAgYW5pbWF0aW9uLWRlbGF5OiAycztcbiAgfVxuXG4gICYuZGVsYXktM3Mge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAzcztcbiAgICBhbmltYXRpb24tZGVsYXk6IDNzO1xuICB9XG5cbiAgJi5kZWxheS00cyB7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IDRzO1xuICAgIGFuaW1hdGlvbi1kZWxheTogNHM7XG4gIH1cblxuICAmLmRlbGF5LTVzIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogNXM7XG4gICAgYW5pbWF0aW9uLWRlbGF5OiA1cztcbiAgfVxuXG4gICYuZmFzdCB7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IC44cztcbiAgICBhbmltYXRpb24tZHVyYXRpb246IDAuOHM7XG4gIH1cblxuICAmLmZhc3RlciB7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IC41cztcbiAgICBhbmltYXRpb24tZHVyYXRpb246IDAuNXM7XG4gIH1cblxuICAmLnNsb3cge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAycztcbiAgICBhbmltYXRpb24tZHVyYXRpb246IDJzO1xuICB9XG5cbiAgJi5zbG93ZXIge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAzcztcbiAgICBhbmltYXRpb24tZHVyYXRpb246IDNzO1xuICB9XG59XG5cbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbiksIChwcmludCkge1xuICAuYW5pbWF0ZWQge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uOiB1bnNldCAhaW1wb3J0YW50O1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICAgIGFuaW1hdGlvbjogdW5zZXQgIWltcG9ydGFudDtcbiAgICB0cmFuc2l0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn0iLCIuZmxvdC1jaGFydCB7XG4gIGhlaWdodDogMjAwcHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uZmxvdC1jaGFydC1sZWdlbmRzIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW46IDIwcHggMCAtMTBweDtcbn1cblxuLmZsb3QtY2hhcnQtbGVnZW5kcyB0YWJsZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLmZsb3QtY2hhcnQtbGVnZW5kcyAubGVnZW5kQ29sb3JCb3ggPiBkaXYgPiBkaXYge1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG59XG5cbi5mbG90LWNoYXJ0LWxlZ2VuZHMgLmxlZ2VuZExhYmVsIHtcbiAgcGFkZGluZzogMCA4cHggMCAzcHg7XG4gIGNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LC41KTtcbn0iLCIud2lkZ2V0LXBhc3QtZGF5cyB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgLmZsb3QtY2hhcnQge1xuICAgIG1hcmdpbjogMCAtMTBweDtcbiAgfVxufVxuXG4ud2lkZ2V0LXBhc3QtZGF5c19fY2hhcnQge1xuICBvcGFjaXR5OiAwLjc1O1xuICBtYXJnaW46IDAuNTVyZW0gMCAwIGF1dG87XG5cbn1cblxuLndpZGdldC1wYXN0LWRheXNfX2luZm8ge1xuICBzbWFsbCB7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIGNvbG9yOiByZ2JhKCR3aGl0ZSwgMC45KTtcbiAgfVxuXG4gIGgzIHtcbiAgICBtYXJnaW46IDA7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICB9XG59IiwiLndpZGdldC12aXNpdG9yc19fc3RhdHMge1xuICBAaW5jbHVkZSBjbGVhcmZpeCgpO1xuICBtYXJnaW46IDAgLTAuNXJlbSAycmVtO1xuXG4gICYgPiBkaXYge1xuICAgIHBhZGRpbmc6IDEuNXJlbSAxLjVyZW0gMS40NXJlbTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW46IDAgMC41cmVtO1xuICAgIHdpZHRoOiBjYWxjKDUwJSAtIDFyZW0pO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiZy1oaWdobGlnaHRlZC1saWdodDtcbiAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcblxuICAgICYgPiBzdHJvbmcge1xuICAgICAgZm9udC1zaXplOiAxLjNyZW07XG4gICAgICBsaW5lLWhlaWdodDogMTAwJTtcbiAgICAgIGNvbG9yOiAkaGVhZGluZ3MtY29sb3I7XG4gICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG4gICAgfVxuXG4gICAgJiA+IHNtYWxsIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgY29sb3I6ICR0ZXh0LW11dGVkO1xuICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDEwMCU7XG4gICAgICBtYXJnaW4tdG9wOiAwLjQ1cmVtO1xuICAgIH1cbiAgfVxufVxuXG4ud2lkZ2V0LXZpc2l0b3JzX19tYXAge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAyNTBweDtcbn1cblxuLndpZGdldC12aXNpdG9yc19fY291bnRyeSB7XG4gIGhlaWdodDogMC44OHJlbTtcbiAgd2lkdGg6IGF1dG87XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLXJpZ2h0OiAwLjI1cmVtO1xuICBsZWZ0OiAtMC4xcmVtO1xuICBib3JkZXItcmFkaXVzOiAxcHg7XG59IiwiLndpZGdldC1waWVfX2lubmVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xufVxuXG4ud2lkZ2V0LXBpZV9faXRlbSB7XG4gIHBhZGRpbmc6IDIwcHggMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICY6bnRoLWNoaWxkKDJuKSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkYmxhY2ssIDAuMSk7XG4gIH1cbn1cblxuLndpZGdldC1waWVfX3RpdGxlIHtcbiAgY29sb3I6ICRib2R5LWNvbG9yO1xufSIsIi5xdWljay1zdGF0c19faXRlbSB7XG4gIHBhZGRpbmc6IDEuODVyZW0gMS43NXJlbSAxLjc1cmVtIDJyZW07XG4gIEBpbmNsdWRlIGNsZWFyZml4KCk7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICBib3gtc2hhZG93OiAkY2FyZC1zaGFkb3c7XG4gIG1hcmdpbi1ib3R0b206ICRncmlkLWd1dHRlci13aWR0aDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2IoMjI1LCAyMjUsIDIyNSk7XG5cbiAgJiA+IC5wZWl0eSB7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgcGFkZGluZy1sZWZ0OiAxLjJyZW07XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWJldHdlZW4oc20sIGxnKSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4ucXVpY2stc3RhdHNfX2luZm8ge1xuICBtaW4td2lkdGg6IDA7XG5cbiAgJiA+IGgyLFxuICAmID4gc21hbGwge1xuICAgIGxpbmUtaGVpZ2h0OiAxMDAlO1xuICAgIEBpbmNsdWRlIHRleHQtdHJ1bmNhdGUoKTtcbiAgfVxuXG4gICYgPiBoMiB7XG4gICAgbWFyZ2luOiAwO1xuICAgIGZvbnQtc2l6ZTogMS4zcmVtO1xuICAgIGNvbG9yOiAkYmxhY2s7XG4gIH1cblxuICAmID4gc21hbGwge1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjb2xvcjogJGJsYWNrO1xuICAgIG1hcmdpbi10b3A6IDAuODVyZW07XG4gIH1cbn1cblxuLnN0YXRzIHtcbiAgcGFkZGluZy10b3A6IDFyZW07XG59XG5cbi5zdGF0c19faXRlbSB7XG4gIEBpbmNsdWRlIGNhcmQoKTtcbiAgbWFyZ2luLWJvdHRvbTogJGdyaWQtZ3V0dGVyLXdpZHRoO1xuICBwYWRkaW5nOiAxcmVtO1xufVxuXG4uc3RhdHNfX2NoYXJ0IHtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gIHBhZGRpbmctdG9wOiAxcmVtO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gIC5mbG90LWNoYXJ0IHtcbiAgICBtYXJnaW46IDAgLTEycHggLTEycHg7XG4gIH1cbn1cblxuLnN0YXRzX19pbmZvIHtcbiAgcGFkZGluZzogMS44cmVtIDFyZW0gMC41cmVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICBoMiB7XG4gICAgZm9udC1zaXplOiAxLjNyZW07XG4gICAgbWFyZ2luOiAwO1xuXG4gIH1cblxuICBzbWFsbCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIG1hcmdpbi10b3A6IDAuNHJlbTtcbiAgICBjb2xvcjogJHRleHQtbXV0ZWQ7XG4gIH1cbn0iLCIud2lkZ2V0LXBpY3R1cmVzX19ib2R5IHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAycHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgQGluY2x1ZGUgY2xlYXJmaXgoKTtcblxuICAmID4gYSB7XG4gICAgcGFkZGluZzogMnB4IDJweCAxcHg7XG4gICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICBpbWcge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgICB9XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIG9wYWNpdHk6IDAuOTtcbiAgICB9XG4gIH1cbn0iLCIud2lkZ2V0LXByb2ZpbGUge1xufVxuXG4ud2lkZ2V0LXByb2ZpbGVfX2ltZyB7XG4gIHdpZHRoOiAxMDBweDtcbiAgaGVpZ2h0OiAxMDBweDtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBtYXJnaW4tYm90dG9tOiAxLjJyZW07XG4gIGJvcmRlcjogNXB4IHNvbGlkIHJnYmEoJHdoaXRlLCAwLjEpO1xufVxuXG4ud2lkZ2V0LXByb2ZpbGVfX2xpc3Qge1xuICBjb2xvcjogJHdoaXRlO1xuXG4gIC5tZWRpYSB7XG4gICAgcGFkZGluZzogMXJlbSAycmVtO1xuXG4gICAgJjpudGgtY2hpbGQoZXZlbikge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJnLWhpZ2hsaWdodGVkLWxpZ2h0ZXN0O1xuICAgIH1cbiAgfVxuXG4gIC5tZWRpYS1ib2R5IHtcbiAgICBzdHJvbmd7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZDtcbiAgICAgIGNvbG9yOiBibGFjaztcbiAgICB9XG5cbiAgICBzbWFsbCB7XG4gICAgICBjb2xvcjogJHRleHQtbXV0ZWQ7XG4gICAgICBmb250LXNpemU6IDAuOTJyZW07XG4gICAgICBjb2xvcjogZ3JleTtcbiAgICB9XG4gIH1cbn0iLCIud2lkZ2V0LWNvbnRhY3RzX19tYXAge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogM3B4O1xuXG4gIGltZyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gICAgbWFyZ2luOiAtMjBweCAwIC0xcHg7XG4gIH1cbn0iLCIud2lkZ2V0LXNpZ251cHMge1xuXG59XG5cbi53aWRnZXQtc2lnbnVwc19fbGlzdCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAmID4gYSB7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICBtYXJnaW46IDRweCAycHg7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB9XG5cbiAgLmF2YXRhci1jaGFyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmctaGlnaGxpZ2h0ZWQtbGlnaHQ7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgfVxuXG4gIC5hdmF0YXItY2hhcixcbiAgLmF2YXRhci1pbWcge1xuICAgIG1hcmdpbjogMDtcbiAgfVxufSIsIi53aWRnZXQtdGltZSB7XG4gIHBhZGRpbmc6IDJyZW07XG5cbiAgLnRpbWUge1xuICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAmID4gc3BhbiB7XG4gICAgICBwYWRkaW5nOiAxcmVtIDEuNXJlbTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRiZy1oaWdobGlnaHRlZC1saWdodDtcbiAgICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbGluZS1oZWlnaHQ6IDUwcHg7XG4gICAgICBtYXJnaW46IDAgNXB4O1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogLTEzcHg7XG4gICAgICAgIHRvcDogMTBweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn0iLCIud2lkZ2V0LWNhbGVuZGFyIHtcbiAgJiA+IC5hY3Rpb25zIHtcbiAgICB0b3A6IDMwcHg7XG4gIH1cblxuICB0ZCwgdGgge1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG5cbiAgLmZjLXRvb2xiYXIge1xuICAgIGgyIHtcbiAgICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgICAgcGFkZGluZy10b3A6IDAuM3JlbTtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgfVxuICB9XG5cbiAgLmZjLWRheS1udW1iZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG59XG5cbiN3aWRnZXQtY2FsZW5kYXItYm9keSB7XG4gIHBhZGRpbmc6IDFyZW07XG59XG5cbi53aWRnZXQtY2FsZW5kYXJfX2hlYWRlciB7XG4gIHBhZGRpbmc6ICRjYXJkLXNwYWNlci15ICRjYXJkLXNwYWNlci14O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmctaGlnaGxpZ2h0ZWQtbGlnaHRlc3Q7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzICRib3JkZXItcmFkaXVzIDAgMDtcbn1cblxuLndpZGdldC1jYWxlbmRhcl9feWVhciB7XG4gIGZvbnQtc2l6ZTogMS4ycmVtO1xuICBsaW5lLWhlaWdodDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMC42cmVtO1xuICBjb2xvcjogcmdiYSgkd2hpdGUsIDAuOCk7XG59XG5cbi53aWRnZXQtY2FsZW5kYXJfX2RheSB7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBsaW5lLWhlaWdodDogMTAwJTtcbiAgY29sb3I6ICR3aGl0ZTtcbn1cblxuLndpZGdldC1jYWxlbmRhcl9fYm9keSB7XG4gIHBhZGRpbmc6IDFyZW07XG4gIG1hcmdpbi10b3A6IDFyZW07XG59IiwiI2pxc3Rvb2x0aXAge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDVweCAxMHB4O1xuICBib3JkZXI6IDA7XG4gIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gIGJveC1zaGFkb3c6IDAgM3B4IDVweCByZ2JhKCRibGFjayAsMC4xKTtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGJsYWNrLCAwLjgpO1xuXG4gIC5qcXNmaWVsZCB7XG4gICAgZm9udC1zaXplOiAwLjk1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGNvbG9yOiAkYm9keS1jb2xvcjtcblxuICAgICYgPiBzcGFuIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG59IiwiLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IHtcbiAgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUge1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgYmFja2dyb3VuZDogJGJnLWhpZ2hsaWdodGVkLWxpZ2h0O1xuICAgIGJvcmRlci1jb2xvcjogcmdiYSgkYmxhY2ssIDApO1xuICAgIGhlaWdodDogYXV0bztcblxuICAgIC5zZWxlY3QyLXNlbGVjdGlvbl9fYXJyb3cge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAuc2VsZWN0Mi1zZWxlY3Rpb25fX3BsYWNlaG9sZGVyIHtcbiAgICAgIGNvbG9yOiByZ2JhKCR3aGl0ZSwgMC41KTtcbiAgICB9XG5cbiAgICAuc2VsZWN0Mi1zZWxlY3Rpb25fX3JlbmRlcmVkIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0O1xuICAgICAgcGFkZGluZzogJGlucHV0LWJ0bi1wYWRkaW5nLXkgJGlucHV0LWJ0bi1wYWRkaW5nLXg7XG4gICAgICBjb2xvcjogJHdoaXRlXG4gICAgfVxuICB9XG5cbiAgI3NlbGVjdDItbGV0dGVyX29mX2ludGVudF9nZmFfY3VzdG9tZXItY29udGFpbmVye1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYigyMjUsIDIyNSwgMjI1KTtcbiAgICBjb2xvcjogYmxhY2s7XG4gIH1cblxuICAjc2VsZWN0Mi1sZXR0ZXJfb2ZfaW50ZW50X2dmYV9kZXBhcnRtZW50UmVmZXJlbnRpYWwtY29udGFpbmVye1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRibGFjaztcbiAgICBjb2xvcjogYmxhY2s7XG4gIH1cblxuICAjc2VsZWN0Mi11bmRlcndyaXRlcl9tcnBfY3VzdG9tZXItY29udGFpbmVye1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYigyMjUsIDIyNSwgMjI1KTtcbiAgICBjb2xvcjogYmxhY2s7XG4gIH1cblxuICAjc2VsZWN0Mi11bmRlcndyaXRlcl9wbmVfY3VzdG9tZXItY29udGFpbmVye1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYigyMjUsIDIyNSwgMjI1KTtcbiAgICBjb2xvcjogYmxhY2s7XG4gIH1cblxuICAjc2VsZWN0Mi11bmRlcndyaXRlcl9yY2RlX2N1c3RvbWVyLWNvbnRhaW5lcntcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2IoMjI1LCAyMjUsIDIyNSk7XG4gICAgY29sb3I6IGJsYWNrO1xuICB9XG5cbiAgI3NlbGVjdDItdW5kZXJ3cml0ZXJfcmNwcm9fY3VzdG9tZXItY29udGFpbmVye1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYigyMjUsIDIyNSwgMjI1KTtcbiAgICBjb2xvcjogYmxhY2s7XG4gIH1cblxuICAjc2VsZWN0Mi11bmRlcndyaXRlcl9yY2RfY3VzdG9tZXItY29udGFpbmVye1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYigyMjUsIDIyNSwgMjI1KTtcbiAgICBjb2xvcjogYmxhY2s7XG4gIH1cblxuICAjc2VsZWN0Mi11bmRlcndyaXRlcl9kb21tYWdlX2N1c3RvbWVyLWNvbnRhaW5lcntcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2IoMjI1LCAyMjUsIDIyNSk7XG4gICAgY29sb3I6IGJsYWNrO1xuICB9XG5cbiAgJi5zZWxlY3QyLWNvbnRhaW5lci0tZm9jdXMge1xuICAgIC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yO1xuICAgICAgYm94LXNoYWRvdzogJGlucHV0LWZvY3VzLWJveC1zaGFkb3c7XG4gICAgfVxuICB9XG5cbiAgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWNvbG9yOiAkaW5wdXQtYm9yZGVyLWNvbG9yO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIDMwMG1zO1xuXG4gICAgLnNlbGVjdDItc2VsZWN0aW9uX19jaG9pY2Uge1xuICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgIGJvcmRlcjogMDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRiZy1oaWdobGlnaHRlZC1saWdodDtcbiAgICAgIHBhZGRpbmc6IDAuMnJlbSAwLjc1cmVtO1xuICAgICAgY29sb3I6ICRpbnB1dC1jb2xvcjtcbiAgICB9XG5cbiAgICAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Nob2ljZV9fcmVtb3ZlIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMC41cmVtO1xuICAgICAgY29sb3I6ICRpbnB1dC1jb2xvcjtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAkaW5wdXQtY29sb3I7XG4gICAgICAgIG9wYWNpdHk6IDAuNzU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi5zZWxlY3QyLWNvbnRhaW5lci0tZGlzYWJsZWQge1xuICAgIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgb3BhY2l0eTogMC41O1xuICAgIH1cbiAgfVxuXG4gIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvblthcmlhLXNlbGVjdGVkPXRydWVdIHtcbiAgICAmLCAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGJsYWNrLCAwLjI1KTtcbiAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgfVxuICB9XG59XG5cbi5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlLFxuLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSB7XG4gIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAzMDBtcywgYm94LXNoYWRvdyAzMDBtcztcbn1cblxuLnNlbGVjdDItY29udGFpbmVyLS1vcGVuIHtcbiAgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUge1xuICAgIGJveC1zaGFkb3c6ICRpbnB1dC1mb2N1cy1ib3gtc2hhZG93O1xuICAgIGJvcmRlci1jb2xvcjogbm9uZTtcbiAgfVxufVxuXG4uc2VsZWN0Mi1kcm9wZG93biB7XG4gIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgcGFkZGluZzogJGRyb3Bkb3duLXBhZGRpbmcteSAwO1xuICBib3gtc2hhZG93OiAkZHJvcGRvd24tYm94LXNoYWRvdztcbiAgei1pbmRleDogJGhlYWRlci16LWluZGV4IC0gMTtcbiAgQGluY2x1ZGUgYW5pbWF0ZShmYWRlSW4sIDMwMG1zKTtcblxuICAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24ge1xuICAgIHBhZGRpbmc6IDAuNjVyZW0gJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14O1xuICB9XG5cbiAgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uLS1oaWdobGlnaHRlZFthcmlhLXNlbGVjdGVkXSB7XG4gICAgJjpub3QoW2FyaWEtc2VsZWN0ZWQ9dHJ1ZV0pIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkcm9wZG93bi1saW5rLWhvdmVyLWJnO1xuICAgICAgY29sb3I6ICRkcm9wZG93bi1saW5rLWhvdmVyLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvblthcmlhLWRpc2FibGVkPXRydWVdIHtcbiAgICBjb2xvcjogJGlucHV0LWNvbG9yO1xuICAgIG9wYWNpdHk6IDAuMjU7XG4gIH1cblxuICAuc2VsZWN0Mi1zZWFyY2gtLWRyb3Bkb3duIHtcbiAgICBtYXJnaW4tdG9wOiAtMC41cmVtO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKCR3aGl0ZSwgMC4wOCk7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSBmb250LWljb24oJ1xcZWE3MicsIDEuNXJlbSk7XG4gICAgICBjb2xvcjogJGJvZHktY29sb3I7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OiAxLjRyZW07XG4gICAgICB0b3A6IDAuNXJlbTtcblxuICAgIH1cblxuICAgIC5zZWxlY3QyLXNlYXJjaF9fZmllbGQge1xuICAgICAgYm9yZGVyOiAwO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJnO1xuICAgICAgaGVpZ2h0OiAyLjhyZW07XG4gICAgICBwYWRkaW5nOiAwIDAgMC4ycmVtIDMuNXJlbTtcbiAgICB9XG4gIH1cbn1cblxuLnNlbGVjdDItc2VhcmNoX19maWVsZCB7XG4gIGNvbG9yOiAkaW5wdXQtY29sb3I7XG4gIFxuICBAaW5jbHVkZSBwbGFjZWhvbGRlcigpIHtcbiAgICBjb2xvcjogJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yO1xuICB9XG59XG5cbi5zZWxlY3QyLWNvbnRhaW5lciB7XG4gIC5zZWxlY3QyLXNlYXJjaC0taW5saW5lIHtcbiAgICAuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkIHtcbiAgICAgIG1hcmdpbjogOHB4IDAgMnB4O1xuICAgICAgcGFkZGluZzogMCA1cHg7XG4gICAgfVxuICB9XG59XG5cbiNzZWxlY3QyLWN1c3RvbV9kb19jdXN0b21lci1jb250YWluZXJ7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYigyMjUsIDIyNSwgMjI1KTtcbiAgY29sb3I6IGJsYWNrO1xufVxuIiwiLmRyb3B6b25lIHtcbiAgYm9yZGVyOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmctaGlnaGxpZ2h0ZWQtZGFyaztcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMzAwbXM7XG4gIG1pbi1oZWlnaHQ6IDUwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuXG4gICY6YmVmb3JlIHtcbiAgICBAaW5jbHVkZSBmb250LWljb24oJ1xcZWE3YycsIDJyZW0pO1xuICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICBjb2xvcjogJGJvZHktY29sb3I7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIHRvcDogMDtcbiAgICBtYXJnaW46IGF1dG87XG4gICAgd2lkdGg6IDUwcHg7XG4gICAgaGVpZ2h0OiA1MHB4O1xuICAgIGxpbmUtaGVpZ2h0OiA1MHB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmctaGlnaGxpZ2h0ZWQtbGlnaHQ7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAzMDBtcztcbiAgfVxuXG4gIC5kei1wcmV2aWV3IHtcbiAgICAmLmR6LWZpbGUtcHJldmlldyxcbiAgICAmLmR6LWltYWdlLXByZXZpZXcge1xuICAgICAgLmR6LWltYWdlIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmR6LXJlbW92ZSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IC05cHg7XG4gICAgICByaWdodDogLTlweDtcbiAgICAgIHotaW5kZXg6ICRoZWFkZXItei1pbmRleCAtIDE7XG4gICAgICBmb250LXNpemU6IDA7XG4gICAgICB3aWR0aDogMjJweDtcbiAgICAgIGhlaWdodDogMjJweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRyZWQ7XG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHJlZDtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgfVxuXG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIEBpbmNsdWRlIGZvbnQtaWNvbignXFxlYTRjJywgMS4yNXJlbSk7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmR6LW1lc3NhZ2Uge1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMzAwbXM7XG5cbiAgICBzcGFuIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWxnO1xuICAgICAgdHJhbnNpdGlvbjogY29sb3IgMzAwbXMsIGJveC1zaGFkb3csIDMwMG1zO1xuICAgICAgcGFkZGluZzogMC41cmVtIDEuNHJlbSAwLjhyZW07XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmctaGlnaGxpZ2h0ZWQtbGlnaHQ7XG5cbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgQGluY2x1ZGUgZm9udC1pY29uKCdcXGVhN2MnLCAxLjc1cmVtKTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRvcDogMnB4O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDAuOHJlbTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmOmhvdmVyIHtcbiAgICAuZHotbWVzc2FnZSB7XG4gICAgICBzcGFuIHtcbiAgICAgICAgY29sb3I6ICRib2R5LWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICY6aG92ZXIsXG4gICYuZHotZHJhZy1ob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkYmxhY2ssIDAuMjUpO1xuICB9XG5cbiAgJi5kei1kcmFnLWhvdmVyIHtcbiAgICAuZHotbWVzc2FnZSB7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgIH1cblxuICAgICY6YmVmb3JlIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuICB9XG59XG5cbiIsIi5lYXN5LXBpZS1jaGFydCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uZWFzeS1waWUtY2hhcnRfX3ZhbHVlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcblxuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiVcIjtcbiAgICBmb250LXNpemU6IDEycHg7XG4gIH1cbn1cblxuLmVhc3ktcGllLWNoYXJ0X190aXRsZSB7XG4gIG1hcmdpbi10b3A6IC0ycHg7XG4gIGxpbmUtaGVpZ2h0OiAxNXB4O1xuICBmb250LXNpemU6IDExcHg7XG59XG4iLCIuZGF0YVRhYmxlIHtcbiAgLnNvcnRpbmcsXG4gIC5zb3J0aW5nX2FzYyxcbiAgLnNvcnRpbmdfZGVzYyB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxuXG4gIC5zb3J0aW5nX2FzYyxcbiAgLnNvcnRpbmdfZGVzYyB7XG4gICAgJjpiZWZvcmUge1xuICAgICAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1pY29uO1xuICAgICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYm90dG9tOiA4cHg7XG4gICAgICByaWdodDogNXB4O1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMzAwbXM7XG4gICAgfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnNvcnRpbmdfYXNjOmJlZm9yZSB7XG4gICAgY29udGVudDogJ1xcZTllNic7XG4gIH1cblxuICAuc29ydGluZ19kZXNjOmJlZm9yZSB7XG4gICAgY29udGVudDogJ1xcZTllNyc7XG4gIH1cbn1cblxuXG4uZGF0YVRhYmxlc19fdG9wIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xufVxuXG4uZGF0YVRhYmxlc19sZW5ndGgsXG4uZGF0YVRhYmxlc19maWx0ZXIge1xuICBmb250LXNpemU6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYXBwZWFyYW5jZTogbm9uZTtcblxuICAmOmFmdGVyIHtcbiAgICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWljb247XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDFyZW07XG4gICAgYm90dG9tOiAwLjVyZW07XG4gICAgZm9udC1zaXplOiAxLjNyZW07XG4gICAgY29sb3I6ICRoZWFkaW5ncy1jb2xvcjtcbiAgfVxuXG4gICYgPiBsYWJlbCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgc2VsZWN0LFxuICAgIGlucHV0W3R5cGU9c2VhcmNoXSB7XG4gICAgICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15ICRpbnB1dC1wYWRkaW5nLXggJGlucHV0LXBhZGRpbmcteSAkaW5wdXQtcGFkZGluZy14ICsgMS43NTtcbiAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlO1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgJGlucHV0LWJvcmRlci1jb2xvcjtcbiAgICAgIGhlaWdodDogJGlucHV0LWhlaWdodDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iZztcbiAgICAgIGNvbG9yOiAkaW5wdXQtY29sb3I7XG4gICAgICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgMzAwbXM7XG5cbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3I7XG4gICAgICAgIGJveC1zaGFkb3c6ICRpbnB1dC1mb2N1cy1ib3gtc2hhZG93O1xuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBwbGFjZWhvbGRlciB7XG4gICAgICAgIGNvbG9yOiAkaW5wdXQtcGxhY2Vob2xkZXItY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5kYXRhVGFibGVzX2xlbmd0aCB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgICBtaW4td2lkdGg6IDE1MHB4O1xuICAgIG1hcmdpbi1sZWZ0OiAxLjVyZW07XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oeHMpIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgJjphZnRlciB7XG4gICAgY29udGVudDogJ1xcZWE1Yic7XG4gIH1cblxuICBzZWxlY3Qge1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgYmFja2dyb3VuZDogJHNlbGVjdC1iZztcbiAgfVxufVxuXG4uZGF0YVRhYmxlc19maWx0ZXIge1xuICBmbGV4OiAxIDEgYXV0bztcblxuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OiAnXFxlYTcyJztcbiAgfVxufVxuXG4uZGF0YVRhYmxlc19wYWdpbmF0ZSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLnBhZ2luYXRlX2J1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwYWdpbmF0aW9uLWJnO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGNvbG9yOiAkcGFnaW5hdGlvbi1jb2xvcjtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBtYXJnaW46IDAgMXB4IDAgMnB4O1xuICBmb250LXNpemU6IDFyZW07XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgd2lkdGg6IDIuNXJlbTtcbiAgaGVpZ2h0OiAyLjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAyLjVyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAzMDBtcywgY29sb3IgMzAwbXM7XG5cbiAgJi5jdXJyZW50IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnaW5hdGlvbi1hY3RpdmUtYmc7XG4gICAgY29sb3I6ICRwYWdpbmF0aW9uLWFjdGl2ZS1jb2xvcjtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gIH1cblxuICAmOm5vdCguY3VycmVudCk6bm90KC5kaXNhYmxlZCkge1xuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnaW5hdGlvbi1ob3Zlci1iZztcbiAgICAgIGNvbG9yOiAkcGFnaW5hdGlvbi1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAmLmN1cnJlbnQsXG4gICYuZGlzYWJsZWQge1xuICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgfVxuXG4gICYucHJldmlvdXMsXG4gICYubmV4dCB7XG4gICAgZm9udC1zaXplOiAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSwgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSB7XG4gICAgICBmb250LXNpemU6IDFyZW07XG4gICAgfVxuXG4gICAgJjpiZWZvcmUge1xuICAgICAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1pY29uO1xuICAgICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgICBsaW5lLWhlaWdodDogMi41NXJlbTtcbiAgICB9XG4gIH1cblxuICAmLnByZXZpb3VzIHtcbiAgICAmOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnXFxlOTBmJztcbiAgICB9XG4gIH1cblxuICAmLm5leHQge1xuICAgICY6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICdcXGU5MTAnO1xuICAgIH1cbiAgfVxuXG4gICYuZGlzYWJsZWQge1xuICAgIG9wYWNpdHk6IDAuNjtcblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBjb2xvcjogJHBhZ2luYXRpb24tY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi5kYXRhVGFibGVzX2luZm8ge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDIuNXJlbSAwIDEuNXJlbTtcbiAgZm9udC1zaXplOiAwLjlyZW07XG4gIGNvbG9yOiAkdGV4dC1tdXRlZDtcbn1cblxuLmRhdGEtdGFibGUtdG9nZ2xlZCB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgLmRhdGFUYWJsZXNfYnV0dG9ucyB7XG4gICAgW2RhdGEtdGFibGUtYWN0aW9uPVwiZnVsbHNjcmVlblwiXSB7XG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICdcXGYxNmMnO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uZGF0YS10YWJsZSB7XG4gIC50YWJsZSA+IHRoZWFkID4gdHIgPiB0aCB7XG4gICAgYm9yZGVyLXRvcDogMDtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG59XG5cbi5kYXRhLXRhYmxlIHtcbiAgLnRhYmxlID4gdGJvZHkgPiB0ciAge1xuICAgIGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQ7XG4gIH1cbn1cblxuLmRhdGEtdGFibGVfX2hlYWRlciB7XG4gIHBhZGRpbmc6IDAgMCAycmVtO1xufVxuXG4uZGF0YS10YWJsZV9fZmlsdGVyIHtcbiAgbWF4LXdpZHRoOiA1MDBweDtcblxuICAuZm9ybS1jb250cm9sIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDJyZW07XG4gIH1cblxuICAmOmJlZm9yZSB7XG4gICAgQGluY2x1ZGUgZm9udC1pY29uKCdcXGYxYzMnLCAxLjVyZW0pO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIGJvdHRvbTogMC4yNjNyZW07XG4gIH1cbn1cblxuLmRhdGEtdGFibGVfX2Zvb3RlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZzogJGNhcmQtc3BhY2VyLXkgMDtcbn1cblxuLy8gQWN0aW9uIG1lbnVcbi5kdC1idXR0b25zIHsgLy8gSGlkaW5nIGRlZmF1bHQgYnV0dG9ucyBpbiBmYXZvdXIgb2YgYWRkZWQgY3VzdG9tIGFjdGlvbiBtZW51XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5kYXRhVGFibGVzX2FjdGlvbnMge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gICAgQGluY2x1ZGUgc2l6ZSg0MHB4LCAkaW5wdXQtaGVpZ2h0KTtcbiAgICBib3JkZXI6ICAxcHggc29saWQgJGlucHV0LWJvcmRlci1jb2xvcjtcbiAgICBtYXJnaW4tbGVmdDogMS41cmVtO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICYgPiBpIHtcbiAgICAgIEBpbmNsdWRlIHNpemUoMTAwJSwgMTAwJSk7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMzAwbXM7XG4gICAgfVxuXG4gICAgJi5zaG93ID4gaSxcbiAgICAmID4gaTpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmctaGlnaGxpZ2h0ZWQtbGlnaHQ7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHhzKSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufSIsIi5mbGF0cGlja3ItY2FsZW5kYXIge1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgYm9yZGVyOiAwO1xuICBib3gtc2hhZG93OiAkZHJvcGRvd24tYm94LXNoYWRvdztcbiAgd2lkdGg6IGF1dG87XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmctaGlnaGxpZ2h0ZWQtZGFya2VzdDtcbiAgbWFyZ2luLXRvcDogLTNweDtcblxuICAmOmJlZm9yZSxcbiAgJjphZnRlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4uZmxhdHBpY2tyLW1vbnRocyB7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzICRib3JkZXItcmFkaXVzIDAgMDtcblxuICAuZmxhdHBpY2tyLW1vbnRoIHtcbiAgICBoZWlnaHQ6IDYwcHg7XG4gIH1cblxuICAuZmxhdHBpY2tyLXByZXYtbW9udGgsXG4gIC5mbGF0cGlja3ItbmV4dC1tb250aCB7XG4gICAgd2lkdGg6IDM1cHg7XG4gICAgaGVpZ2h0OiAzNXB4O1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGluZS1oZWlnaHQ6IDMwcHg7XG4gICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICB0b3A6IDEzcHg7XG4gICAgZm9udC1zaXplOiAycmVtO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMzAwbXM7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCR3aGl0ZSwgMC4xKTtcbiAgICB9XG4gIH1cblxuICAuZmxhdHBpY2tyLXByZXYtbW9udGgge1xuICAgIG1hcmdpbi1sZWZ0OiAxNXB4O1xuICB9XG5cbiAgLmZsYXRwaWNrci1uZXh0LW1vbnRoIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG4gIH1cbn1cblxuLmZsYXRwaWNrci1jdXJyZW50LW1vbnRoIHtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBjb2xvcjogJHdoaXRlO1xuICBwYWRkaW5nLXRvcDogMThweDtcblxuICBzcGFuLmN1ci1tb250aCxcbiAgaW5wdXQuY3VyLXllYXIge1xuICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZDtcbiAgfVxuXG4gIHNwYW4uY3VyLW1vbnRoOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxuXG4gIC5udW1JbnB1dFdyYXBwZXIge1xuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgfVxuXG4gICAgc3BhbiB7XG4gICAgICBib3JkZXI6IDA7XG4gICAgICByaWdodDogLTVweDtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBsZWZ0OiAzcHg7XG4gICAgICB9XG5cbiAgICAgICYuYXJyb3dVcDphZnRlciB7XG4gICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICR3aGl0ZTtcbiAgICAgIH1cblxuICAgICAgJi5hcnJvd0Rvd246YWZ0ZXIge1xuICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAkd2hpdGU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbnNwYW4uZmxhdHBpY2tyLXdlZWtkYXkge1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJhc2U7XG4gIGNvbG9yOiAkaGVhZGluZ3MtY29sb3I7XG59XG5cbi5mbGF0cGlja3ItZGF5IHtcbiAgZm9udC1zaXplOiAwLjkycmVtO1xuICBib3JkZXI6IDA7XG4gIGNvbG9yOiAkZmxhdHBpY2tyLWNvbG9yO1xuXG4gICYuc2VsZWN0ZWQge1xuICAgICYsICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XG4gICAgICBjb2xvcjogJGNvbG9yLWludmVyc2UgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAmLnRvZGF5IHtcbiAgICAmLCAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJHdoaXRlLCAwLjEpO1xuICAgIH1cbiAgfVxuXG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJHdoaXRlLCAwLjEpO1xuICB9XG5cbiAgJi5uZXh0TW9udGhEYXksXG4gICYucHJldk1vbnRoRGF5IHtcbiAgICBjb2xvcjogcmdiYSgkd2hpdGUsIDAuMjUpO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCR3aGl0ZSwgMC4wNSk7XG4gICAgfVxuICB9XG59XG5cbi5udW1JbnB1dFdyYXBwZXIge1xuICBzcGFuIHtcbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJHdoaXRlLCAwLjEpO1xuICAgIH1cbiAgfVxufVxuXG4uZmxhdHBpY2tyLXRpbWUge1xuICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgkd2hpdGUsIDAuMSkgIWltcG9ydGFudDtcblxuICAubnVtSW5wdXRXcmFwcGVyLFxuICAuZmxhdHBpY2tyLWFtLXBtIHtcbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJHdoaXRlLCAwLjAwNSk7XG4gICAgfVxuICB9XG4gIFxuICBpbnB1dCxcbiAgLmZsYXRwaWNrci1hbS1wbSB7XG4gICAgY29sb3I6ICRmbGF0cGlja3ItY29sb3I7XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgfVxuICB9XG59XG5cbi5mbGF0cGlja3ItaW5uZXJDb250YWluZXIge1xuICBwYWRkaW5nOiA1cHggMDtcbn0iLCIuY29sb3JwaWNrZXIge1xuICBwYWRkaW5nOiA1cHg7XG4gIG1hcmdpbi10b3A6IC0xcHg7XG4gIGJvcmRlci1yYWRpdXM6IDAgMCAkYm9yZGVyLXJhZGl1cyAkYm9yZGVyLXJhZGl1cztcblxuICAmOmJlZm9yZSxcbiAgJjphZnRlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIGRpdiB7XG4gICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gIH1cbn1cblxuLmNvbG9ycGlja2VyLXNhdHVyYXRpb24ge1xuXG5cbiAgaSB7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJveC1zaGFkb3c6IDAgMCA1cHggcmdiYSgkYmxhY2ssIDAuMzYpO1xuXG4gICAgJiwgYiB7XG4gICAgICBoZWlnaHQ6IDEwcHg7XG4gICAgICB3aWR0aDogMTBweDtcbiAgICB9XG4gIH1cbn1cblxuLmNvbG9ycGlja2VyLWh1ZSxcbi5jb2xvcnBpY2tlci1hbHBoYSB7XG4gIHdpZHRoOiAyMHB4O1xufVxuXG4uY29sb3JwaWNrZXItY29sb3Ige1xuICAmLCBkaXYge1xuICAgIGhlaWdodDogMjBweDtcbiAgfVxufVxuXG4uY29sb3ItcGlja2VyX19wcmV2aWV3IHtcbiAgQGluY2x1ZGUgc2l6ZSgxOHB4LCAxOHB4KTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xufSIsIi50cnVtYm93eWctYm94IHtcbiAgYm9yZGVyOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmctaGlnaGxpZ2h0ZWQtZGFyaztcblxuICAmLnRydW1ib3d5Zy1mdWxsc2NyZWVuIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmctaGlnaGxpZ2h0ZWQtZGFya2VzdDtcbiAgfVxufVxuXG4udHJ1bWJvd3lnLXRleHRhcmVhIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiAkYm9yZGVyLWNvbG9yO1xufVxuXG4udHJ1bWJvd3lnLWJ1dHRvbi1wYW5lIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkd2hpdGUsIDAuOCk7XG4gIGJvcmRlcjogMDtcblxuICAmOmFmdGVyIHtcbiAgICBoZWlnaHQ6IDA7XG4gIH1cblxuICAudHJ1bWJvd3lnLWJ1dHRvbi1ncm91cCB7XG4gICAgJjpub3QoOmVtcHR5KSB7XG4gICAgICAmICsgLnRydW1ib3d5Zy1idXR0b24tZ3JvdXAge1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJvcmRlci1jb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICY6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgfVxuICB9XG5cbiAgYnV0dG9uIHtcbiAgICBtYXJnaW46IDA7XG4gICAgaGVpZ2h0OiAzNnB4O1xuICB9XG59XG5cbi50cnVtYm93eWctZHJvcGRvd24ge1xuICBib3JkZXI6IDA7XG4gIGJveC1zaGFkb3c6ICRkcm9wZG93bi1ib3gtc2hhZG93O1xuXG4gIGJ1dHRvbiB7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIGhlaWdodDogNDBweDtcbiAgICBwYWRkaW5nOiAwICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteDtcblxuICAgIHN2ZyB7XG4gICAgICBtYXJnaW4tdG9wOiAtM3B4O1xuICAgIH1cblxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRyb3Bkb3duLWxpbmstaG92ZXItYmc7XG4gICAgfVxuICB9XG59XG5cbi50cnVtYm93eWctbW9kYWwtYm94IHtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBib3gtc2hhZG93OiAkZHJvcGRvd24tYm94LXNoYWRvdztcbiAgYmFja2dyb3VuZC1jb2xvcjogJGRyb3Bkb3duLWJnO1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcblxuICAudHJ1bWJvd3lnLW1vZGFsLXRpdGxlIHtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgY29sb3I6ICRoZWFkaW5ncy1jb2xvcjtcbiAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIG1hcmdpbjogMDtcbiAgfVxuICBcbiAgbGFiZWwge1xuICAgIG1hcmdpbjogMTVweCAyMHB4O1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG5cbiAgICAudHJ1bWJvd3lnLWlucHV0LWluZm9zIHtcbiAgICAgIHNwYW4ge1xuICAgICAgICBjb2xvcjogJGhlYWRpbmdzLWNvbG9yO1xuICAgICAgICBib3JkZXItY29sb3I6ICRpbnB1dC1ib3JkZXItY29sb3I7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkcm9wZG93bi1iZztcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpbnB1dCB7XG4gICAgICBib3JkZXItY29sb3I6ICRpbnB1dC1ib3JkZXItY29sb3I7XG4gICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICBjb2xvcjogJGlucHV0LWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRyb3Bkb3duLWJnO1xuXG4gICAgICAmOmZvY3VzLFxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogZGFya2VuKCRpbnB1dC1ib3JkZXItY29sb3IsIDUlKTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRyb3Bkb3duLWJnO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC50cnVtYm93eWctbW9kYWwtYnV0dG9uIHtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIGxpbmUtaGVpZ2h0OiAxMDAlO1xuICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgIHBhZGRpbmc6IDdweCAwO1xuICAgIG1hcmdpbjogMCAyMHB4O1xuICAgIGJvdHRvbTogMThweDtcbiAgfVxufVxuXG4udHJ1bWJvd3lnLW92ZXJsYXkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn0iLCIuZmMge1xuICB0aCB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBwYWRkaW5nOiAxMHB4O1xuICB9XG5cbiAgdGFibGUge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuXG4gICAgdHIge1xuICAgICAgJiA+IHRkIHtcbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgdGhlYWQge1xuICAgICAgJiA+IHRyID4gdGQge1xuICAgICAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uZmMtdW50aGVtZWQge1xuICB0ZC5mYy10b2RheSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cbiAgICBzcGFuIHtcbiAgICAgIGNvbG9yOiAkb3JhbmdlO1xuICAgIH1cbiAgfVxufVxuXG4uZmMtZXZlbnQge1xuICBwYWRkaW5nOiAwO1xuICBmb250LXNpemU6IDAuOTVyZW07XG4gIGJvcmRlci1yYWRpdXM6IDFweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkd2hpdGUsIDAuNzUpO1xuICBib3JkZXI6IDA7XG5cbiAgLmZjLXRpdGxlIHtcbiAgICBwYWRkaW5nOiA0cHggOHB4O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgQGluY2x1ZGUgdGV4dC10cnVuY2F0ZSgpO1xuICB9XG5cbiAgLmZjLXRpbWUge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGJhY2tncm91bmQ6IHJnYmEoJGJsYWNrLCAwLjIpO1xuICAgIHBhZGRpbmc6IDJweCA2cHg7XG4gICAgbWFyZ2luOiAwIDAgMCAtMXB4O1xuICB9XG59XG5cbi5mYy12aWV3IHtcbiAgJixcbiAgJiA+IHRhYmxlIHtcbiAgICBib3JkZXI6IDA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxuXG4gICYgPiB0YWJsZSB7XG4gICAgJiA+IHRib2R5IHtcbiAgICAgICYgPiB0ciB7XG4gICAgICAgIC51aS13aWRnZXQtY29udGVudCB7XG4gICAgICAgICAgYm9yZGVyLXRvcDogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uZmMtaGlnaGxpZ2h0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkYmxhY2ssIDAuNCk7XG59XG5cbi5mYy1idXR0b24ge1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICBwYWRkaW5nLWJvdHRvbTogN3B4O1xuXG4gICYsIC5mYy1idXR0b24tcHJpbWFyeSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMsXG4gICAgJjphY3RpdmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJnLWhpZ2hsaWdodGVkLWxpZ2h0ICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgJjpmb2N1cyxcbiAgICAmOmFjdGl2ZSB7XG4gICAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vIE1haW4gQ2FsZW5kYXJcbi5jYWxlbmRhciB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWltYWdlIDMwMG1zO1xuICAgIGJvcmRlcjogNXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgYmFja2dyb3VuZC1jbGlwOiBjb250ZW50LWJveDtcbiAgICBAaW5jbHVkZSBiZy1jb3Zlci1pbmxpbmUoKTtcblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcbiAgICAgIGhlaWdodDogMjUwcHg7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XG4gICAgICBoZWlnaHQ6IDE1MHB4O1xuICAgIH1cbiAgfVxuXG4gIHRkLCB0aCB7XG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKCR3aGl0ZSwgMC4wNzUpO1xuICB9XG5cbiAgLmZjLWRheS1udW1iZXIge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgIH1cblxuICAgIHBhZGRpbmc6IDZweCAxMHB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIH1cblxuICAuZmMtZGF5LWhlYWRlciB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgfVxuXG4gIC5mYy1kYXktZ3JpZC1ldmVudCB7XG4gICAgbWFyZ2luOiAxcHggOXB4O1xuICB9XG59XG5cblxuLy8gTWFpbiBDYWxlbmRhciBTZWFzb25hbCBoZWFkZXJzXG5AZm9yICRpIGZyb20gMSB0aHJvdWdoIDEyIHtcbiAgLmNhbGVuZGFyW2RhdGEtY2FsZW5kYXItbW9udGg9XCIjeyRpfVwiXSB7XG4gICAgJjpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vLi4vLi4vaW1hZ2VzL3RlbXBsYXRlcy9jYWxlbmRhci8jeyRpfS5qcGdcIik7XG4gICAgfVxuICB9XG59IiwiLmxnLW91dGVyIHtcbiAgLmxnLXRodW1iLWl0ZW0ge1xuICAgIGJvcmRlci1jb2xvcjogcmdiYSgkd2hpdGUsIDAuMjUpO1xuICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICB9XG59XG5cbi5sZy1zbGlkZSB7XG4gIGVtIHtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG5cbiAgICBoMyB7XG4gICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgIH1cbiAgfVxuXG4gIC52aWRlby1jb250IHtcbiAgICBib3gtc2hhZG93OiAwIDJweCA1cHggcmdiYSgkYmxhY2ssIDAuMTUpLCAwIDJweCAxMHB4IHJnYmEoJGJsYWNrLCAwLjEpO1xuICB9XG59IiwidWwuanF0cmVlLXRyZWUge1xuICBib3JkZXItdG9wOiAxcHggc29saWQgJGJvcmRlci1saWdodDtcblxuICBsaSB7XG4gICAgJi5qcXRyZWUtc2VsZWN0ZWQge1xuICAgICAgJiA+IC5qcXRyZWUtZWxlbWVudCB7XG4gICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMjAwbXMsIGJvcmRlci1jb2xvciAyMDBtcztcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcblxuICAgICAgICAmLCAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAkYm9yZGVyLWxpZ2h0O1xuICAgICAgICAgIHRleHQtc2hhZG93OiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjpub3QoLmpxdHJlZS1zZWxlY3RlZCkge1xuICAgICAgJiA+IC5qcXRyZWUtZWxlbWVudCB7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRiZy1oaWdobGlnaHRlZC1saWdodGVzdDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICYuanF0cmVlLWZvbGRlciB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgICAmOm5vdCguanF0cmVlLWNsb3NlZCkge1xuICAgICAgICAmICsgbGkuanF0cmVlX2NvbW1vbiB7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IC0xcHg7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgd2lkdGg6IDMwcHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYm9yZGVyLWxpZ2h0O1xuICAgICAgICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYuanF0cmVlLWNsb3NlZCB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmpxdHJlZS1naG9zdCB7XG4gICAgICBzcGFuLmpxdHJlZS1saW5lIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgfVxuXG4gICAgICBzcGFuLmpxdHJlZS1jaXJjbGUge1xuICAgICAgICBib3JkZXItY29sb3I6ICR3aGl0ZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuanF0cmVlLW1vdmluZyA+IC5qcXRyZWUtZWxlbWVudCAuanF0cmVlLXRpdGxlIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICB9XG5cbiAgc3Bhbi5qcXRyZWUtYm9yZGVyIHtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGJvcmRlci1jb2xvcjogJHdoaXRlO1xuICB9XG5cbiAgLmpxdHJlZS10b2dnbGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7IFxuICAgIGhlaWdodDogMTZweDtcbiAgICB3aWR0aDogMTZweDtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKCR3aGl0ZSwgMC43NSk7XG4gICAgY29sb3I6ICRjb2xvci1pbnZlcnNlO1xuICAgIHBhZGRpbmc6IDAgMCAwIDFweDtcbiAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgYm9yZGVyLXJhZGl1czogMnB4O1xuICAgIHRvcDogMTJweDtcbiAgICBsZWZ0OiAtOHB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDMwMG1zLCBjb2xvciAzMDBtcztcblxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgY29sb3I6ICRibGFjaztcbiAgICB9XG5cbiAgICAmID4gaSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgdG9wOiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG5cbiAgLmpxdHJlZS1lbGVtZW50IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZzogMTBweCAyMHB4O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRib3JkZXItbGlnaHQ7XG4gICAgYm9yZGVyLXRvcDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG5cbiAgLmpxdHJlZS10aXRsZSB7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuXG4gIHVsLmpxdHJlZV9jb21tb24ge1xuICAgIG1hcmdpbi1sZWZ0OiAyMnB4O1xuICAgIHBhZGRpbmctbGVmdDogOHB4O1xuICB9XG59IiwiLnRleHQtY291bnQtd3JhcHBlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAtMjNweDtcbiAgaGVpZ2h0OiAyMHB4O1xuICB3aWR0aDogMTAwJTtcbiAgbGVmdDogMDtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLXNtO1xufVxuXG4uZXJyb3ItdGV4dC1taW4ge1xuICBmbG9hdDogcmlnaHQ7XG59IiwiLnNjcm9sbGJhcixcbi5zY3JvbGxiYXItbGlnaHQge1xuICBoZWlnaHQ6IDEwMCVcbn1cblxuLm9zLXRoZW1lLWRhcmssXG4ub3MtdGhlbWUtbGlnaHQge1xuICAub3Mtc2Nyb2xsYmFyIHtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgJiA+IC5vcy1zY3JvbGxiYXItdmVydGljYWwge1xuICAgIHdpZHRoOiAzcHg7XG4gIH1cblxuICAmID4gLm9zLXNjcm9sbGJhci1ob3Jpem9udGFsIHtcbiAgICBoZWlnaHQ6IDNweDtcbiAgfVxufVxuXG4ub3MtdGhlbWUtbGlnaHQge1xuICAmID4gLm9zLXNjcm9sbGJhciB7XG4gICAgJiA+IC5vcy1zY3JvbGxiYXItdHJhY2sge1xuICAgICAgJiA+IC5vcy1zY3JvbGxiYXItaGFuZGxlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkd2hpdGUsIDAuMjUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufSIsIi5pbmZfX2Ryb3AtYXJlYSB7XG4gICAgKiB7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgfVxuXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBoZWlnaHQ6IDY1cHg7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIGJvcmRlcjogMXB4IGRhc2hlZCAjYzRjNGM0O1xuICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICBwYWRkaW5nOiAwIDIwcHg7XG4gICAgdHJhbnNpdGlvbjogMC4ycztcbiAgICBtYXJnaW4tYm90dG9tOiA4cHg7XG5cbiAgICAmOmhvdmVyID4ge1xuICAgICAgICAuaW5mX19idG4sIC5pbmZfX2Ryb3AtYXJlYSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDEzNywgMTk2LCAyNDQsIDAuNCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTM3LCAxOTYsIDI0NCwgMC40KTtcbiAgICB9XG59XG5cbmlucHV0W3R5cGU9XCJmaWxlXCJdIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDA7XG4gICAvKiBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IDEwMCU7Ki9cbiAgICBvcGFjaXR5OiAwO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICY6Zm9jdXMge1xuICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgIH1cbn1cblxuLmluZl9fYnRuIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2M0YzRjNDtcbiAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgcGFkZGluZzogNXB4IDEycHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4uaW5mX19oaW50IHtcbiAgICBmbGV4OiAxO1xuICAgIGZvbnQtc2l6ZTogMTFweDtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG59XG4iLCIuc2Nyb2xsLWN1c3RvbTo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2sge1xuICAgIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgICAtbW96LWJvcmRlci1yYWRpdXM6IDZweDtcbiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDZweDtcbiAgICAtby1ib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgLW1zLWJvcmRlci1yYWRpdXM6IDZweDtcbiAgICBiYWNrZ3JvdW5kOiAwIDA7XG4gICAgem9vbTogMTtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsMCwwLC4xKTtcbn1cblxuLnNjcm9sbC1jdXN0b206Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iIHtcbiAgICBib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgLW1vei1ib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgLW8tYm9yZGVyLXJhZGl1czogNnB4O1xuICAgIC1tcy1ib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgYmFja2dyb3VuZDogMCAwO1xuICAgIHpvb206IDE7XG4gICAgYmFja2dyb3VuZDogcmdiYSgwLDAsMCwuMik7XG59XG5cbi5zY3JvbGwtY3VzdG9tOjotd2Via2l0LXNjcm9sbGJhciB7XG4gICAgd2lkdGg6IDVweDtcbiAgICBoZWlnaHQ6IDVweDtcbn1cblxuLm5hdi10YWJzIC5uYXYtbGluayB7XG4gICAgY29sb3I6IGdyZXk7XG59XG5cbi5uYXYtdGFicyAubmF2LWxpbmsuYWN0aXZlLCAubmF2LXRhYnMgLm5hdi1pdGVtLnNob3cgLm5hdi1saW5rIHtcbiAgICBjb2xvcjogYmxhY2s7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgYm9yZGVyLWNvbG9yOiAjZGVlMmU2ICNkZWUyZTYgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXJhZGl1czogM3B4IDNweCAwIDA7XG59XG5cbnNlbGVjdCBvcHRpb24ge1xuICAgIGNvbG9yOiBibGFjaztcbn1cblxuLmNvbnRlbnQge1xuICAgIG1pbi1oZWlnaHQ6IGNhbGMoMTAwdmggLSA5MHB4KTtcbn1cblxuLmZvb3RlciB7XG4gICAgaGVpZ2h0OiA1MHB4O1xufVxuXG4uX19pbWFnZV9lcnJvcl80MDQge1xuICAgIGhlaWdodDogYXV0bztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoXCJodHRwczovL2ltYWdlcy5wZXhlbHMuY29tL3Bob3Rvcy8yNjIyNzIvcGV4ZWxzLXBob3RvLTI2MjI3Mi5qcGVnXCIpIG5vLXJlcGVhdCBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3Zlcjtcbn1cblxuLl9fbm8tYmFja2dyb3VuZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi5fX2N1c3RvbS1ib3gtYm9keSB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG59XG5cbi5fX2J0bi1maWxlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBtYXJnaW4tbGVmdDogNXB4O1xuXG4gICAgaW5wdXRbdHlwZT1maWxlXSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgbWluLXdpZHRoOiAxMDAlO1xuICAgICAgICBtaW4taGVpZ2h0OiAxMDAlO1xuICAgICAgICBmb250LXNpemU6IDEwMHB4O1xuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgZmlsdGVyOiBhbHBoYShvcGFjaXR5ID0gMCk7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgICAgICBjdXJzb3I6IGluaGVyaXQ7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbn1cblxuLl9fZGVsZXRlX2ZpbGUge1xuICAgIGZsb2F0OiBpbmhlcml0O1xuICAgIG9wYWNpdHk6IC41O1xuICAgIG1hcmdpbi10b3A6IC0xNXB4O1xufVxuXG4uYm94LXBhY2sge1xuICAgIGJveC1zaGFkb3c6IDAgNHB4IDhweCAwIHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMjAwbXMgZWFzZS1pbjtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgLW1zLXRyYW5zaXRpb246IGFsbCAyMDBtcyBlYXNlLWluO1xuICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIC1tb3otdHJhbnNpdGlvbjogYWxsIDIwMG1zIGVhc2UtaW47XG4gICAgLW1vei10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIHRyYW5zaXRpb246IGFsbCAyMDBtcyBlYXNlLWluO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgICAgei1pbmRleDogMjtcbiAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMjAwbXMgZWFzZS1pbjtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEuMDUpO1xuICAgICAgICAtbXMtdHJhbnNpdGlvbjogYWxsIDIwMG1zIGVhc2UtaW47XG4gICAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDEuMDUpO1xuICAgICAgICAtbW96LXRyYW5zaXRpb246IGFsbCAyMDBtcyBlYXNlLWluO1xuICAgICAgICAtbW96LXRyYW5zZm9ybTogc2NhbGUoMS4wNSk7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAyMDBtcyBlYXNlLWluO1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMDUpO1xuICAgIH1cblxuICAgICYuYWN0aXZlIHtcbiAgICAgICAgei1pbmRleDogMjtcbiAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMjAwbXMgZWFzZS1pbjtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEuMDUpO1xuICAgICAgICAtbXMtdHJhbnNpdGlvbjogYWxsIDIwMG1zIGVhc2UtaW47XG4gICAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDEuMDUpO1xuICAgICAgICAtbW96LXRyYW5zaXRpb246IGFsbCAyMDBtcyBlYXNlLWluO1xuICAgICAgICAtbW96LXRyYW5zZm9ybTogc2NhbGUoMS4wNSk7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAyMDBtcyBlYXNlLWluO1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMDUpO1xuXG4gICAgICAgICYuc2hhZG93LXJlZCB7XG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDRweCA4cHggMCByZ2JhKDI1NSwgMCwgMCwgMC41KTtcbiAgICAgICAgfVxuXG4gICAgICAgICYuc2hhZG93LWJsdWUge1xuICAgICAgICAgICAgYm94LXNoYWRvdzogMCA0cHggOHB4IDAgcmdiYSgwLCAwLCAyNTUsIDAuNSk7XG4gICAgICAgIH1cblxuICAgICAgICAmLnNoYWRvdy1vcmFuZ2Uge1xuICAgICAgICAgICAgYm94LXNoYWRvdzogMCA0cHggOHB4IDAgcmdiYSgyNTUsIDE2NSwgMCwgMC41KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGxhYmVsIHtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICBociB7XG4gICAgICAgIG1hcmdpbjogNXB4IDA7XG4gICAgfVxufVxuXG50YWJsZSA+IHRoZWFkID4gdHIgPiB0aC5uby1zb3J0OmFmdGVyIHtcbiAgICBjb250ZW50OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi8qU3Bpbm5lciovXG5cbi5sb29waW5nLXJob21idXNlcy1zcGlubmVyIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXG4gICAgKiB7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgfVxuXG4gICAgd2lkdGg6IGNhbGMoMTVweCAqIDQpO1xuICAgIGhlaWdodDogMTVweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogNTAlO1xuICAgIHRvcDogNTAlO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHRyYW5zbGF0ZXkoLTEwMCUpO1xuXG4gICAgLnJob21idXMge1xuICAgICAgICBoZWlnaHQ6IDE1cHg7XG4gICAgICAgIHdpZHRoOiAxNXB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDgxYjYwO1xuICAgICAgICBsZWZ0OiBjYWxjKDE1cHggKiA0KTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMnB4O1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCkgcm90YXRlKDQ1ZGVnKSBzY2FsZSgwKTtcbiAgICAgICAgYW5pbWF0aW9uOiBsb29waW5nLXJob21idXNlcy1zcGlubmVyLWFuaW1hdGlvbiAyNTAwbXMgbGluZWFyIGluZmluaXRlO1xuXG4gICAgICAgICY6bnRoLWNoaWxkKDEpIHtcbiAgICAgICAgICAgIGFuaW1hdGlvbi1kZWxheTogY2FsYygyNTAwbXMgKiAxIC8gLTEuNSk7XG4gICAgICAgIH1cblxuICAgICAgICAmOm50aC1jaGlsZCgyKSB7XG4gICAgICAgICAgICBhbmltYXRpb24tZGVsYXk6IGNhbGMoMjUwMG1zICogMiAvIC0xLjUpO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpudGgtY2hpbGQoMykge1xuICAgICAgICAgICAgYW5pbWF0aW9uLWRlbGF5OiBjYWxjKDI1MDBtcyAqIDMgLyAtMS41KTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuQGtleWZyYW1lcyBsb29waW5nLXJob21idXNlcy1zcGlubmVyLWFuaW1hdGlvbiB7XG4gICAgMCUge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCkgcm90YXRlKDQ1ZGVnKSBzY2FsZSgwKTtcbiAgICB9XG5cbiAgICA1MCUge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTIzMyUpIHJvdGF0ZSg0NWRlZykgc2NhbGUoMSk7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNDY2JSkgcm90YXRlKDQ1ZGVnKSBzY2FsZSgwKTtcbiAgICB9XG59XG5cbnNwYW4ge1xuICAgICYuX190cmlnZ2VyIHtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cblxuICAgIGkge1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjJzIGVhc2UtaW4tb3V0O1xuICAgIH1cblxuICAgICY6aG92ZXIgaSB7XG4gICAgICAgICYuZmEsICYuZmFiIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS40KTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmZvY3VzLXNoYWtlIHtcbiAgICBhbmltYXRpb246IHNoYWtlIDAuNXM7XG4gICAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogMTtcbn1cblxuQGtleWZyYW1lcyBzaGFrZSB7XG4gICAgMCUge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgxcHgsIDFweCkgcm90YXRlKDBkZWcpO1xuICAgIH1cblxuICAgIDEwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC0xcHgsIC0ycHgpIHJvdGF0ZSgtMWRlZyk7XG4gICAgfVxuXG4gICAgMjAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTNweCwgMHB4KSByb3RhdGUoMWRlZyk7XG4gICAgfVxuXG4gICAgMzAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoM3B4LCAycHgpIHJvdGF0ZSgwZGVnKTtcbiAgICB9XG5cbiAgICA0MCUge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgxcHgsIC0xcHgpIHJvdGF0ZSgxZGVnKTtcbiAgICB9XG5cbiAgICA1MCUge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtMXB4LCAycHgpIHJvdGF0ZSgtMWRlZyk7XG4gICAgfVxuXG4gICAgNjAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTNweCwgMXB4KSByb3RhdGUoMGRlZyk7XG4gICAgfVxuXG4gICAgNzAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoM3B4LCAxcHgpIHJvdGF0ZSgtMWRlZyk7XG4gICAgfVxuXG4gICAgODAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTFweCwgLTFweCkgcm90YXRlKDFkZWcpO1xuICAgIH1cblxuICAgIDkwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDFweCwgMnB4KSByb3RhdGUoMGRlZyk7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDFweCwgLTJweCkgcm90YXRlKC0xZGVnKTtcbiAgICB9XG59XG5cbi5fX2Jsb2NrLXRpbWVsaW5lIHtcbiAgICBtYXgtaGVpZ2h0OiA0OTBweDtcbiAgICBvdmVyZmxvdy15OiBzY3JvbGw7XG59XG5cbi5fX3RhYi1jb250ZW50LWJvcmRlciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2YwZjBmMDtcbn1cblxuLl9fYmxvY2stbmV3LXVzZXIgLl9fYmxvY2stYXZhdGFyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xufVxuXG4uX19ibG9jay1hdmF0YXIge1xuICAgIC5fX2lucHV0LWZpbGUgaW5wdXRbdHlwZT0nZmlsZSddIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG59XG5cbi5fX2Zvcm0taGVscCB7XG4gICAgZm9udC1zaXplOiAxMXB4O1xuICAgIGZsb2F0OiByaWdodDtcblxuICAgIHAge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbn1cblxuLl9fZm9ybS1lcnJvcnMge1xuICAgIHVsIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIH1cblxuICAgIGxpIHtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICB9XG59XG5cbi5fX2luZm8tdG9vbHRpcCAudG9vbHRpcC1pbm5lciB7XG4gICAgbWF4LXdpZHRoOiA1MDBweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIGNvbG9yOiAjMGEwYTBhO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICMzMzM7XG59XG5cbi8qQWxlcnQgb3ZlcmxheSovXG5cbi5fX2J0bkFjdGlvbnNUcmlnZ2VyT3ZlcmxheSB7XG4gICAgY29sb3I6IGJsYWNrICFpbXBvcnRhbnQ7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICAgIHBhZGRpbmc6IDFweCAxMHB4O1xuICAgIGJvcmRlcjogMnB4IHNvbGlkIHdoaXRlICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLXJhZGl1czogNnB4O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHRyYW5zcGFyZW50IDUwJSwgd2hpdGUgNTAlKTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDIwMCUgMTAwJTtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0IGJvdHRvbTtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIC4zcyBlYXNlLW91dDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmctaGlnaGxpZ2h0ZWQtZGFyaztcblxuICAgICY6aG92ZXIsICYuYWN0aXZlIHtcbiAgICAgICAgY29sb3I6IGJsYWNrICFpbXBvcnRhbnQ7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IGJvdHRvbTtcbiAgICB9XG59XG5cbi5fX2FjdGlvbnNPdmVybGF5IHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWluLWhlaWdodDogMTAwJTtcbiAgICB6LWluZGV4OiAxMDAwMTtcbn1cblxuLl9fYm94QWN0aW9uc092ZXJsYXkge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLl9fYm94QWN0aW9uc092ZXJsYXlDb250ZW50cyB7XG4gICAgYmFja2dyb3VuZDogI0ZGRjtcbiAgICB6LWluZGV4OiAxMDAwMjtcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IDAgNnB4IDEycHggcmdiYSgwLCAwLCAwLCAwLjE4KTtcbiAgICAtbW96LWJveC1zaGFkb3c6IDAgNnB4IDEycHggcmdiYSgwLCAwLCAwLCAwLjE4KTtcbiAgICAtby1ib3gtc2hhZG93OiAwIDZweCAxMnB4IHJnYmEoMCwgMCwgMCwgMC4xOCk7XG4gICAgYm94LXNoYWRvdzogMCA2cHggMTJweCByZ2JhKDAsIDAsIDAsIDAuMTgpO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMTBweDtcbiAgICBtaW4td2lkdGg6IDIwMHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDJweCAycHggMnB4IDJweDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIGNvbG9yOiAjMzMzO1xufVxuXG4uX19ib3hBY3Rpb25zT3ZlcmxheUhlYWRlciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlNGU1ZTc7XG59XG5cbi5fX2JveEFjdGlvbnNPdmVybGF5Qm9keSB7XG4gICAgd2lkdGg6IDEwMCU7XG59XG5cbi5fX2JveEFjdGlvbnNPdmVybGF5U2hvdyB7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcblxuICAgIC5fX2JveEFjdGlvbnNPdmVybGF5VHJhbnNpdGlvbiB7XG4gICAgICAgIGFuaW1hdGlvbi1uYW1lOiBib3VuY2VJblJpZ2h0O1xuICAgICAgICBhbmltYXRpb24tZHVyYXRpb246IC42cztcbiAgICAgICAgYW5pbWF0aW9uLWZpbGwtbW9kZTogYm90aDtcbiAgICB9XG59XG5cbkBrZXlmcmFtZXMgYm91bmNlSW5SaWdodCB7XG4gICAgZnJvbSwgNjAlLCA3NSUsIDkwJSwgdG8ge1xuICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcbiAgICB9XG5cbiAgICBmcm9tIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgzMDAwcHgsIDAsIDApO1xuICAgIH1cblxuICAgIDYwJSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTI1cHgsIDAsIDApO1xuICAgIH1cblxuICAgIDc1JSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTBweCwgMCwgMCk7XG4gICAgfVxuXG4gICAgOTAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNXB4LCAwLCAwKTtcbiAgICB9XG5cbiAgICB0byB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgfVxufVxuXG4vKkFjdGlvbnMgbGlzdCovXG5cbnVsLl9fYWN0aW9uTGlzdCB7XG4gICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgbGkge1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2U0ZTVlNztcbiAgICAgICAgcGFkZGluZzogNnB4IDEycHg7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMDUpO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGEsIHNwYW4ge1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgY29sb3I6ICMzMzM7XG4gICAgICAgICAgICBwYWRkaW5nOiAycHggMTJweDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLyorLy0gYWN0aW9ucyovXG5cbi5fX3BhZGRpbmctcmwteHMge1xuICAgIHBhZGRpbmctcmlnaHQ6IDFweDtcbiAgICBwYWRkaW5nLWxlZnQ6IDFweDtcbn1cblxuLl9fd3JhcCB7XG4gICAgcGFkZGluZzogMSU7XG59XG5cbi5fX3RhYmxlX2JveCB7XG4gICAgbWFyZ2luOiAyJSAwIDIlIDA7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOjE5MjBweCl7XG4gICAgLnByb2R1Y3QgLmNhcmR7XG4gICAgICAgIHdpZHRoOiA1MHZoOyBcbiAgICAgICAgaGVpZ2h0OiA0OHZoO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IFxuICAgICAgICBmbG9hdDogbGVmdDsgXG4gICAgICAgIG1hcmdpbi1yaWdodDogM2VtOyBcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgXG4gICAgICAgIGJvcmRlcjogbm9uZTsgXG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkOyBcbiAgICAgICAgLXdlYmtpdC1ib3gtc2hhZG93OiA1cHggNXB4IDRweCAxcHggcmdiYSgwLDAsMCwwLjE5KTsgXG4gICAgICAgIGJveC1zaGFkb3c6IDVweCA1cHggNHB4IDFweCByZ2JhKDAsMCwwLDAuMTkpO1xuICAgIH1cblxuICAgIC5wcm9kdWN0LXRpdGxle1xuICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDoxNTAwcHgpIGFuZCAobWF4LXdpZHRoOjE5MTlweCl7XG4gICAgLnByb2R1Y3QgLmNhcmR7XG4gICAgICAgIHdpZHRoOiA1MHZoO1xuICAgICAgICBoZWlnaHQ6IDYwdmg7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgXG4gICAgICAgIGZsb2F0OiBsZWZ0OyBcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAzZW07IFxuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyBcbiAgICAgICAgYm9yZGVyOiBub25lOyBcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7IFxuICAgICAgICAtd2Via2l0LWJveC1zaGFkb3c6IDVweCA1cHggNHB4IDFweCByZ2JhKDAsMCwwLDAuMTkpOyBcbiAgICAgICAgYm94LXNoYWRvdzogNXB4IDVweCA0cHggMXB4IHJnYmEoMCwwLDAsMC4xOSk7XG4gICAgfVxuXG4gICAgLnByb2R1Y3QtdGl0bGV7XG4gICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOjEyMDVweCkgYW5kIChtYXgtd2lkdGg6MTQ5OXB4KXtcbiAgICAucHJvZHVjdCAuY2FyZHtcbiAgICAgICAgd2lkdGg6IDUwdmg7XG4gICAgICAgIGhlaWdodDogNzN2aDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyBcbiAgICAgICAgZmxvYXQ6IGxlZnQ7IFxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDNlbTsgXG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IFxuICAgICAgICBib3JkZXI6IG5vbmU7IFxuICAgICAgICBmb250LXdlaWdodDogYm9sZDsgXG4gICAgICAgIC13ZWJraXQtYm94LXNoYWRvdzogNXB4IDVweCA0cHggMXB4IHJnYmEoMCwwLDAsMC4xOSk7IFxuICAgICAgICBib3gtc2hhZG93OiA1cHggNXB4IDRweCAxcHggcmdiYSgwLDAsMCwwLjE5KTtcbiAgICB9XG5cbiAgICAucHJvZHVjdC10aXRsZXtcbiAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDEyMDRweCl7XG4gICAgLnNpZGViYXJ7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgIH1cblxuICAgIC5wcm9kdWN0IC5jYXJke1xuICAgICAgICBib3JkZXI6IG5vbmU7IFxuICAgICAgICBmb250LXdlaWdodDogYm9sZDsgXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwLjVlbTtcbiAgICAgICAgLXdlYmtpdC1ib3gtc2hhZG93OiA1cHggNXB4IDRweCAxcHggcmdiYSgwLDAsMCwwLjE5KTsgXG4gICAgICAgIGJveC1zaGFkb3c6IDVweCA1cHggNHB4IDFweCByZ2JhKDAsMCwwLDAuMTkpO1xuICAgIH1cblxuICAgIC5wcm9kdWN0LXRpdGxle1xuICAgICAgICBmb250LXNpemU6IDE3cHg7XG4gICAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzkycHgpIHtcbiAgICAucHJvZHVjdHtcbiAgICAgICAgZGlzcGxheTogZmxleDsgYWxpZ24taXRlbXM6IGNlbnRlcjsganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IHBhZGRpbmctdG9wOjIuNWVtXG4gICAgfVxuXG4gICAgLmNhcmQtcGljdHVyZXtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLXRhYmxlOyB3aWR0aDo0OCU7IFxuICAgIH1cblxuICAgICNzd2l0Y2hfdXNlcntcbiAgICAgICAgd2lkdGg6MjUwcHg7XG4gICAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzkxcHgpe1xuICAgIC5wcm9kdWN0IC5jYXJke1xuICAgICAgICBib3JkZXI6IG5vbmU7IFxuICAgICAgICBmb250LXdlaWdodDogYm9sZDsgXG4gICAgICAgIC13ZWJraXQtYm94LXNoYWRvdzogNXB4IDVweCA0cHggMXB4IHJnYmEoMCwwLDAsMC4xOSk7IFxuICAgICAgICBib3gtc2hhZG93OiA1cHggNXB4IDRweCAxcHggcmdiYSgwLDAsMCwwLjE5KTtcbiAgICB9XG5cbiAgICAuc2VsZWN0Mi1zZWxlY3Rpb25fX3BsYWNlaG9sZGVye1xuICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgfVxuICAgIC5zZWxlY3Rpb257XG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlblxuICAgIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgLl9fd3JhcCB7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgLl9fdGFibGVfYm94IHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxufVxuXG4uX19wYWRkaW5nLXNlY3Rpb24ge1xuICAgIHBhZGRpbmc6IDI1cHggMTVweDtcbn1cblxuLl9fYnRuLW5ldy1jdXN0b21lciB7XG4gICAgaSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICB9XG5cbiAgICBhIHtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiAyNXB4O1xuICAgICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgICB3aWR0aDogMTM1cHg7XG4gICAgfVxufVxuXG4vKkZpbGVzIHZvdWNoZXJzKi9cblxuLl9fZmlsZS1ib2R5IHtcbiAgICBtaW4taGVpZ2h0OiAxMjBweDtcbn1cblxuLl9fc3RpY2t5LWNvbnRlbnQge1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICBib3gtc2hhZG93OiA4cHggOHB4IDEycHggI2FhYTtcbiAgICB6LWluZGV4OiAxMDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDM4LCAxNDEsIDE4Nik7XG59XG5cbi8qY29udGFjdCovXG5cbnNwYW4gYSB7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjc7XG4gICAgY29sb3I6ICM2NjY2NjY7XG4gICAgbWFyZ2luOiAwcHg7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuNHM7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC40cztcbiAgICAtby10cmFuc2l0aW9uOiBhbGwgMC40cztcbiAgICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjRzO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICAgIG91dGxpbmU6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cbn1cblxuI2NvbnRhY3RfbWVzc2FnZSB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBib3JkZXI6IG5vbmU7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgICY6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIsICY6LW1vei1wbGFjZWhvbGRlciwgJjo6LW1vei1wbGFjZWhvbGRlciwgJjotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgICAgICBjb2xvcjogI2FkYWRhZDtcbiAgICB9XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLmNvbnRhY3QxMDAtZm9ybS1idG4ge1xuICAgIG91dGxpbmU6IG5vbmUgIWltcG9ydGFudDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cbn1cblxuLnR4dDEge1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgIGNvbG9yOiAjMWExYTFhO1xufVxuXG4udHh0MyB7XG4gICAgZm9udC1zaXplOiAxNXB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjY7XG4gICAgY29sb3I6ICMwMGFkNWY7XG59XG5cbi50eHQ0IHtcbiAgICBmb250LXNpemU6IDE1cHg7XG4gICAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgICBjb2xvcjogIzAwMDAwMDtcbn1cblxuLmJvbGQge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4uc2l6ZTEge1xuICAgIHdpZHRoOiAzNTVweDtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG59XG5cbi5zaXplMiB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDQzcHgpO1xufVxuXG4uY29udGFpbmVyLWNvbnRhY3QxMDAge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1pbi1oZWlnaHQ6IDEwMHZoO1xuICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgICBkaXNwbGF5OiAtbW96LWJveDtcbiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGJhY2tncm91bmQ6ICNmMmYyZjI7XG59XG5cbi53cmFwLWNvbnRhY3QxMDAge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gICAgZGlzcGxheTogLW1vei1ib3g7XG4gICAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xufVxuXG4uY29udGFjdDEwMC1tb3JlIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gNTYwcHgpO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDE7XG4gICAgcGFkZGluZzogMzBweCAxNXB4IDBweCAxNXB4O1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgei1pbmRleDogLTE7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjEpO1xuICAgIH1cbn1cblxuLmNvbnRhY3QxMDAtZm9ybSB7XG4gICAgd2lkdGg6IDU2MHB4O1xuICAgIG1pbi1oZWlnaHQ6IDEwMHZoO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IDExMHB4IDU1cHggNTVweCA1NXB4O1xufVxuXG4uY29udGFjdDEwMC1mb3JtLXRpdGxlIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXNpemU6IDQwcHg7XG4gICAgZm9udC13ZWlnaHQ6IDIwMDtcbiAgICBjb2xvcjogIzMzMzMzMztcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbn1cblxuLndyYXAtaW5wdXQxMDAge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZTZlNmU2O1xuICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICBtYXJnaW4tdG9wOiA1JTtcbn1cblxuLmxhYmVsLWlucHV0MTAwIHtcbiAgICBmb250LXNpemU6IDExcHg7XG4gICAgY29sb3I6ICM2NjY2NjY7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIHBhZGRpbmc6IDE1cHggMCAycHggMjRweDtcbn1cblxuLmlucHV0MTAwIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBmb250LXNpemU6IDE4cHg7XG4gICAgY29sb3I6ICM0MDRiNDY7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICBwYWRkaW5nOiAwIDI2cHg7XG59XG5cbmlucHV0LmlucHV0MTAwIHtcbiAgICBoZWlnaHQ6IDQ4cHg7XG59XG5cbnRleHRhcmVhLmlucHV0MTAwIHtcbiAgICBtaW4taGVpZ2h0OiAxMzBweDtcbiAgICBwYWRkaW5nLXRvcDogMTRweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTVweDtcbn1cblxuLmZvY3VzLWlucHV0MTAwIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSArIDJweCk7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMCUgKyAycHgpO1xuICAgIHRvcDogLTFweDtcbiAgICBsZWZ0OiAtMXB4O1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICM2Njc1ZGY7XG4gICAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjRzO1xuICAgIC1vLXRyYW5zaXRpb246IGFsbCAwLjRzO1xuICAgIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuNHM7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuNHM7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWCgxLjEpIHNjYWxlWSgxLjMpO1xuICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZVgoMS4xKSBzY2FsZVkoMS4zKTtcbiAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZVgoMS4xKSBzY2FsZVkoMS4zKTtcbiAgICAtby10cmFuc2Zvcm06IHNjYWxlWCgxLjEpIHNjYWxlWSgxLjMpO1xuICAgIHRyYW5zZm9ybTogc2NhbGVYKDEuMSkgc2NhbGVZKDEuMyk7XG59XG5cbi5pbnB1dDEwMDpmb2N1cyArIC5mb2N1cy1pbnB1dDEwMCB7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICAtbW96LXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xufVxuXG4uY29udGFpbmVyLWNvbnRhY3QxMDAtZm9ybS1idG4ge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgICBkaXNwbGF5OiAtbW96LWJveDtcbiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBwYWRkaW5nLXRvcDogMTBweDtcbn1cblxuLmNvbnRhY3QxMDAtZm9ybS1idG4ge1xuICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgICBkaXNwbGF5OiAtbW96LWJveDtcbiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgcGFkZGluZzogMCAyMHB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogNTBweDtcbiAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgIGJhY2tncm91bmQ6ICM2Njc1ZGY7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBsZXR0ZXItc3BhY2luZzogMXB4O1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuNHM7XG4gICAgLW8tdHJhbnNpdGlvbjogYWxsIDAuNHM7XG4gICAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC40cztcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC40cztcblxuICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjNDA0YjQ2O1xuICAgIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MnB4KSB7XG4gICAgLmNvbnRhY3QxMDAtZm9ybSB7XG4gICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgIHBhZGRpbmc6IDExMHB4IDMwcHggNTVweCAzMHB4O1xuICAgIH1cblxuICAgIC5jb250YWN0MTAwLW1vcmUge1xuICAgICAgICB3aWR0aDogNTAlO1xuICAgIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgLmNvbnRhY3QxMDAtZm9ybSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgIC5jb250YWN0MTAwLW1vcmUge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDU3NnB4KSB7XG4gICAgLmNvbnRhY3QxMDAtZm9ybSB7XG4gICAgICAgIHBhZGRpbmc6IDExMHB4IDE1cHggNTVweCAxNXB4O1xuICAgIH1cbn1cblxuLnZhbGlkYXRlLWlucHV0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi53cmFwLWlucHV0MTAwIHtcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgKyAycHgpICFpbXBvcnRhbnQ7XG59XG5cbi5wLWItNDcge1xuICAgIHBhZGRpbmctYm90dG9tOiA0N3B4O1xufVxuXG4ucC1yLTI1IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyNXB4O1xufVxuXG4uZGlzLWZsZXgge1xuICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgICBkaXNwbGF5OiAtbW96LWJveDtcbiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGNvbG9yOiAkd2hpdGU7XG59XG5cbi8qZW5kIGNvbnRhY3QqL1xuXG4udWktYXV0b2NvbXBsZXRlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAxMDAlO1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogMTAwMDtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIG1pbi13aWR0aDogMTYwcHg7XG4gICAgcGFkZGluZzogNHB4O1xuICAgIG1hcmdpbjogMCAwIDEwcHggNjVweDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gICAgYm9yZGVyLWNvbG9yOiAjY2NjO1xuICAgIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjIpO1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLXdpZHRoOiAxcHg7XG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDVweCAxMHB4IHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgICAtbW96LWJveC1zaGFkb3c6IDAgNXB4IDEwcHggcmdiYSgwLCAwLCAwLCAwLjIpO1xuICAgIGJveC1zaGFkb3c6IDAgNXB4IDEwcHggcmdiYSgwLCAwLCAwLCAwLjIpO1xuICAgIC13ZWJraXQtYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgICAtbW96LWJhY2tncm91bmQtY2xpcDogcGFkZGluZztcbiAgICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xufVxuXG4udWktbWVudS1pdGVtID4gYS51aS1jb3JuZXItYWxsIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAzcHggMTVweDtcbiAgICBjbGVhcjogYm90aDtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4udWktc3RhdGUtaG92ZXIsIC51aS1zdGF0ZS1hY3RpdmUge1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA4OGNjO1xuICAgIGJvcmRlci1yYWRpdXM6IDBweDtcbiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDBweDtcbiAgICAtbW96LWJvcmRlci1yYWRpdXM6IDBweDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xufVxuXG4uY2VudGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIG1hcmdpbjogYXV0bztcbn1cblxuXG4vKiBhdXRvY29ubmVjdCBzcHJpbmcgYXNzdXIgKi9cblxuI2F1dG9Db25uZWN0Rm9ybSB7XG4gICAgcGFkZGluZzogMTJweCA1cHggMTJweCAxNXB4O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uX19hdXRvLWNvbm5lY3QtbGkgOmhvdmVyIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzFlMjgyYztcbn1cblxuLl9fdy0xMDAge1xuICAgIHdpZHRoOiAxMDAlO1xufVxuXG4uc20tcGFkZGluZyA+IFtjbGFzcyo9J2NvbC0nXSB7XG4gICAgcGFkZGluZy1yaWdodDogNXB4O1xuICAgIHBhZGRpbmctbGVmdDogNXB4O1xufVxuIiwiLl9fY2FyZC1wcm9kdWN0IHtcbiAgICB3aWR0aDogYXV0bztcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgIGJveC1zaGFkb3c6IDAgNHB4IDdweCByZ2JhKDAsIDAsIDAsIDAuNSk7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGN1YmljLWJlemllcigwLjgsIDAuNSwgMC4yLCAxLjQpO1xuICAgIC8vb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICBpbWcge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDI1MHB4O1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBjdWJpYy1iZXppZXIoMC44LCAwLjUsIDAuMiwgMS40KTtcbiAgICB9XG5cbiAgICAuX19jYXJkLXRpdGxlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjYpO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgLy9oZWlnaHQ6IDUwcHg7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgYm90dG9tOiA4cHg7XG5cbiAgICAgICAgaDMge1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDQ4cHg7XG4gICAgICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgICAgICBmb250LWZhbWlseTogJ051bml0bycsc2Fucy1zZXJpZjtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGUgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLl9fY2FyZC1pbWctdHJhbnNwYXJlbmN5IHtcbiAgICBvcGFjaXR5OiAuMjtcbiAgICBjdXJzb3I6IGF1dG87XG59XG5cbi5fX2Rlc2NyaXB0aW9ucy1wcm9kdWN0IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjdzIGVhc2UtaW4tb3V0O1xuICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBjbGlwLXBhdGg6IGNpcmNsZSgwJSBhdCAxMDAlIDEwMCUpO1xuXG4gICAgdWwgbGkge1xuICAgICAgICBjb2xvcjogYmxhY2s7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG59XG5cbi5fX2NhcmQtcHJvZHVjdCB7XG4gICAgJjpob3ZlciB7XG4gICAgICAgIC5fX2Rlc2NyaXB0aW9ucy1wcm9kdWN0IHtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjdzIGVhc2UtaW4tb3V0O1xuICAgICAgICAgICAgY2xpcC1wYXRoOiBjaXJjbGUoNzUlKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGN1YmljLWJlemllcigwLjgsIDAuNSwgMC4yLCAxLjQpO1xuICAgICAgICBib3gtc2hhZG93OiAwIDJweCAzcHggcmdiYSgwLCAwLCAwLCAwLjMpO1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOTcpO1xuICAgIH1cblxuICAgIGgxIHtcbiAgICAgICAgY29sb3I6ICNmZjM4Mzg7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAxcHg7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICB9XG5cbiAgICBwIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gICAgICAgIGhlaWdodDogNzAlO1xuICAgIH1cbn0iLCIvKiBDb25maWcgKi9cbi8qIEFic29sdXRlIENlbnRlciBTcGlubmVyICovXG5cbi5sb2FkaW5nIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgei1pbmRleDogOTk5O1xuICAgIGhlaWdodDogMmVtO1xuICAgIHdpZHRoOiAyZW07XG4gICAgb3ZlcmZsb3c6IHNob3c7XG4gICAgbWFyZ2luOiBhdXRvO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICByaWdodDogMDtcblxuICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgYmFja2dyb3VuZDogcmFkaWFsLWdyYWRpZW50KHJnYmEoMjAsIDIwLCAyMCwgMC44KSwgcmdiYSgwLCAwLCAwLCAwLjgpKTtcbiAgICAgICAgYmFja2dyb3VuZDogLXdlYmtpdC1yYWRpYWwtZ3JhZGllbnQocmdiYSgyMCwgMjAsIDIwLCAwLjgpLCByZ2JhKDAsIDAsIDAsIDAuOCkpO1xuICAgIH1cblxuICAgICY6bm90KDpyZXF1aXJlZCkge1xuICAgICAgICAvKiBoaWRlIFwibG9hZGluZy4uLlwiIHRleHQgKi9cbiAgICAgICAgZm9udDogMC8wIGE7XG4gICAgICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBib3JkZXI6IDA7XG4gICAgfVxufVxuXG4vKiBUcmFuc3BhcmVudCBPdmVybGF5ICovXG5cbi8qIDpub3QoOnJlcXVpcmVkKSBoaWRlcyB0aGVzZSBydWxlcyBmcm9tIElFOSBhbmQgYmVsb3cgKi9cblxuOnJvb3Qge1xuICAgIC0tc2stc2l6ZToxMDBweDtcbiAgICAtLXNrLWNvbG9yOiNkODFiNjA7XG59XG5cbi8qIFV0aWxpdHkgY2xhc3MgZm9yIGNlbnRlcmluZyAqL1xuXG4uc2stY2VudGVyIHtcbiAgICBtYXJnaW46IGF1dG87XG59XG5cbi8qICBQbGFuZVxuICAgICAgPGRpdiBjbGFzcz1cInNrLXBsYW5lXCI+PC9kaXY+XG4gKi9cblxuLnNrLXBsYW5lIHtcbiAgICB3aWR0aDogdmFyKC0tc2stc2l6ZSk7XG4gICAgaGVpZ2h0OiB2YXIoLS1zay1zaXplKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zay1jb2xvcik7XG4gICAgYW5pbWF0aW9uOiBzay1wbGFuZSAxLjJzIGluZmluaXRlIGVhc2UtaW4tb3V0O1xufVxuXG5Aa2V5ZnJhbWVzIHNrLXBsYW5lIHtcbiAgICAwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTIwcHgpIHJvdGF0ZVgoMGRlZykgcm90YXRlWSgwZGVnKTtcbiAgICB9XG5cbiAgICA1MCUge1xuICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDEyMHB4KSByb3RhdGVYKC0xODAuMWRlZykgcm90YXRlWSgwZGVnKTtcbiAgICB9XG5cbiAgICAxMDAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxMjBweCkgcm90YXRlWCgtMTgwZGVnKSByb3RhdGVZKC0xNzkuOWRlZyk7XG4gICAgfVxufVxuXG4vKiAgQ2hhc2VcbiAgICAgIDxkaXYgY2xhc3M9XCJzay1jaGFzZVwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwic2stY2hhc2UtZG90XCI+PC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzay1jaGFzZS1kb3RcIj48L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNrLWNoYXNlLWRvdFwiPjwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwic2stY2hhc2UtZG90XCI+PC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzay1jaGFzZS1kb3RcIj48L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNrLWNoYXNlLWRvdFwiPjwvZGl2PlxuICAgICAgPC9kaXY+XG4gKi9cblxuLmJsb2NrLWxvYWRpbmcge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG59XG5cbi5zay1jaGFzZSB7XG4gICAgd2lkdGg6IHZhcigtLXNrLXNpemUpO1xuICAgIGhlaWdodDogdmFyKC0tc2stc2l6ZSk7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGFuaW1hdGlvbjogc2stY2hhc2UgMi41cyBpbmZpbml0ZSBsaW5lYXIgYm90aDtcbn1cblxuLnNrLWNoYXNlLWRvdCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDtcbiAgICBhbmltYXRpb246IHNrLWNoYXNlLWRvdCAyLjBzIGluZmluaXRlIGVhc2UtaW4tb3V0IGJvdGg7XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDI1JTtcbiAgICAgICAgaGVpZ2h0OiAyNSU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXNrLWNvbG9yKTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICAgICAgYW5pbWF0aW9uOiBzay1jaGFzZS1kb3QtYmVmb3JlIDIuMHMgaW5maW5pdGUgZWFzZS1pbi1vdXQgYm90aDtcbiAgICB9XG5cbiAgICAmOm50aC1jaGlsZCgxKSB7XG4gICAgICAgIGFuaW1hdGlvbi1kZWxheTogLTEuMXM7XG4gICAgfVxuXG4gICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgICBhbmltYXRpb24tZGVsYXk6IC0xLjBzO1xuICAgIH1cblxuICAgICY6bnRoLWNoaWxkKDMpIHtcbiAgICAgICAgYW5pbWF0aW9uLWRlbGF5OiAtMC45cztcbiAgICB9XG5cbiAgICAmOm50aC1jaGlsZCg0KSB7XG4gICAgICAgIGFuaW1hdGlvbi1kZWxheTogLTAuOHM7XG4gICAgfVxuXG4gICAgJjpudGgtY2hpbGQoNSkge1xuICAgICAgICBhbmltYXRpb24tZGVsYXk6IC0wLjdzO1xuICAgIH1cblxuICAgICY6bnRoLWNoaWxkKDYpIHtcbiAgICAgICAgYW5pbWF0aW9uLWRlbGF5OiAtMC42cztcbiAgICB9XG5cbiAgICAmOm50aC1jaGlsZCgxKTpiZWZvcmUge1xuICAgICAgICBhbmltYXRpb24tZGVsYXk6IC0xLjFzO1xuICAgIH1cblxuICAgICY6bnRoLWNoaWxkKDIpOmJlZm9yZSB7XG4gICAgICAgIGFuaW1hdGlvbi1kZWxheTogLTEuMHM7XG4gICAgfVxuXG4gICAgJjpudGgtY2hpbGQoMyk6YmVmb3JlIHtcbiAgICAgICAgYW5pbWF0aW9uLWRlbGF5OiAtMC45cztcbiAgICB9XG5cbiAgICAmOm50aC1jaGlsZCg0KTpiZWZvcmUge1xuICAgICAgICBhbmltYXRpb24tZGVsYXk6IC0wLjhzO1xuICAgIH1cblxuICAgICY6bnRoLWNoaWxkKDUpOmJlZm9yZSB7XG4gICAgICAgIGFuaW1hdGlvbi1kZWxheTogLTAuN3M7XG4gICAgfVxuXG4gICAgJjpudGgtY2hpbGQoNik6YmVmb3JlIHtcbiAgICAgICAgYW5pbWF0aW9uLWRlbGF5OiAtMC42cztcbiAgICB9XG59XG5cbkBrZXlmcmFtZXMgc2stY2hhc2Uge1xuICAgIDEwMCUge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyBzay1jaGFzZS1kb3Qge1xuICAgIDgwJSwgMTAwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIHNrLWNoYXNlLWRvdC1iZWZvcmUge1xuICAgIDUwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMC40KTtcbiAgICB9XG5cbiAgICAxMDAlLCAwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgfVxufVxuXG4vKiAgQm91bmNlXG4gICAgICA8ZGl2IGNsYXNzPVwic2stYm91bmNlXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzay1ib3VuY2UtZG90XCI+PC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzay1ib3VuY2UtZG90XCI+PC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgKi9cblxuLnNrLWJvdW5jZSB7XG4gICAgd2lkdGg6IHZhcigtLXNrLXNpemUpO1xuICAgIGhlaWdodDogdmFyKC0tc2stc2l6ZSk7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uc2stYm91bmNlLWRvdCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zay1jb2xvcik7XG4gICAgb3BhY2l0eTogMC42O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBhbmltYXRpb246IHNrLWJvdW5jZSAycyBpbmZpbml0ZSBjdWJpYy1iZXppZXIoMC40NTUsIDAuMDMsIDAuNTE1LCAwLjk1NSk7XG5cbiAgICAmOm50aC1jaGlsZCgyKSB7XG4gICAgICAgIGFuaW1hdGlvbi1kZWxheTogLTEuMHM7XG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIHNrLWJvdW5jZSB7XG4gICAgMCUsIDEwMCUge1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICAgIH1cblxuICAgIDQ1JSwgNTUlIHtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICB9XG59XG5cbi8qICBXYXZlXG4gICAgICA8ZGl2IGNsYXNzPVwic2std2F2ZVwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwic2std2F2ZS1yZWN0XCI+PC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzay13YXZlLXJlY3RcIj48L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNrLXdhdmUtcmVjdFwiPjwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwic2std2F2ZS1yZWN0XCI+PC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzay13YXZlLXJlY3RcIj48L2Rpdj5cbiAgICAgIDwvZGl2PlxuICovXG5cbi5zay13YXZlIHtcbiAgICB3aWR0aDogdmFyKC0tc2stc2l6ZSk7XG4gICAgaGVpZ2h0OiB2YXIoLS1zay1zaXplKTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcbn1cblxuLnNrLXdhdmUtcmVjdCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc2stY29sb3IpO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB3aWR0aDogMTUlO1xuICAgIGFuaW1hdGlvbjogc2std2F2ZSAxLjJzIGluZmluaXRlIGVhc2UtaW4tb3V0O1xuXG4gICAgJjpudGgtY2hpbGQoMSkge1xuICAgICAgICBhbmltYXRpb24tZGVsYXk6IC0xLjJzO1xuICAgIH1cblxuICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgYW5pbWF0aW9uLWRlbGF5OiAtMS4xcztcbiAgICB9XG5cbiAgICAmOm50aC1jaGlsZCgzKSB7XG4gICAgICAgIGFuaW1hdGlvbi1kZWxheTogLTEuMHM7XG4gICAgfVxuXG4gICAgJjpudGgtY2hpbGQoNCkge1xuICAgICAgICBhbmltYXRpb24tZGVsYXk6IC0wLjlzO1xuICAgIH1cblxuICAgICY6bnRoLWNoaWxkKDUpIHtcbiAgICAgICAgYW5pbWF0aW9uLWRlbGF5OiAtMC44cztcbiAgICB9XG59XG5cbkBrZXlmcmFtZXMgc2std2F2ZSB7XG4gICAgMCUsIDQwJSwgMTAwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGVZKDAuNCk7XG4gICAgfVxuXG4gICAgMjAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZVkoMSk7XG4gICAgfVxufVxuXG4vKiAgUHVsc2VcbiAgICAgIDxkaXYgY2xhc3M9XCJzay1wdWxzZVwiPjwvZGl2PlxuICovXG5cbi5zay1wdWxzZSB7XG4gICAgd2lkdGg6IHZhcigtLXNrLXNpemUpO1xuICAgIGhlaWdodDogdmFyKC0tc2stc2l6ZSk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc2stY29sb3IpO1xuICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gICAgYW5pbWF0aW9uOiBzay1wdWxzZSAxLjJzIGluZmluaXRlIGN1YmljLWJlemllcigwLjQ1NSwgMC4wMywgMC41MTUsIDAuOTU1KTtcbn1cblxuQGtleWZyYW1lcyBzay1wdWxzZSB7XG4gICAgMCUge1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICAgIH1cblxuICAgIDEwMCUge1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgIH1cbn1cblxuLyogIEZsb3dcbiAgICAgIDxkaXYgY2xhc3M9XCJzay1mbG93XCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzay1mbG93LWRvdFwiPjwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwic2stZmxvdy1kb3RcIj48L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNrLWZsb3ctZG90XCI+PC9kaXY+XG4gICAgICA8L2Rpdj5cbiAqL1xuXG4uc2stZmxvdyB7XG4gICAgd2lkdGg6IGNhbGModmFyKC0tc2stc2l6ZSkgKiAxLjMpO1xuICAgIGhlaWdodDogY2FsYyh2YXIoLS1zay1zaXplKSAqIDEuMyk7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG59XG5cbi5zay1mbG93LWRvdCB7XG4gICAgd2lkdGg6IDI1JTtcbiAgICBoZWlnaHQ6IDI1JTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zay1jb2xvcik7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGFuaW1hdGlvbjogc2stZmxvdyAxLjRzIGN1YmljLWJlemllcigwLjQ1NSwgMC4wMywgMC41MTUsIDAuOTU1KSAwcyBpbmZpbml0ZSBib3RoO1xuXG4gICAgJjpudGgtY2hpbGQoMSkge1xuICAgICAgICBhbmltYXRpb24tZGVsYXk6IC0wLjMwcztcbiAgICB9XG5cbiAgICAmOm50aC1jaGlsZCgyKSB7XG4gICAgICAgIGFuaW1hdGlvbi1kZWxheTogLTAuMTVzO1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyBzay1mbG93IHtcbiAgICAwJSwgODAlLCAxMDAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwLjMpO1xuICAgIH1cblxuICAgIDQwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgfVxufVxuXG4vKiAgU3dpbmdcbiAgICAgIDxkaXYgY2xhc3M9XCJzay1zd2luZ1wiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwic2stc3dpbmctZG90XCI+PC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzay1zd2luZy1kb3RcIj48L2Rpdj5cbiAgICAgIDwvZGl2PlxuICovXG5cbi5zay1zd2luZyB7XG4gICAgd2lkdGg6IHZhcigtLXNrLXNpemUpO1xuICAgIGhlaWdodDogdmFyKC0tc2stc2l6ZSk7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGFuaW1hdGlvbjogc2stc3dpbmcgMS44cyBpbmZpbml0ZSBsaW5lYXI7XG59XG5cbi5zay1zd2luZy1kb3Qge1xuICAgIHdpZHRoOiA0NSU7XG4gICAgaGVpZ2h0OiA0NSU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIG1hcmdpbjogYXV0bztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zay1jb2xvcik7XG4gICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICBhbmltYXRpb246IHNrLXN3aW5nLWRvdCAycyBpbmZpbml0ZSBlYXNlLWluLW91dDtcblxuICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgdG9wOiBhdXRvO1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIGFuaW1hdGlvbi1kZWxheTogLTFzO1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyBzay1zd2luZyB7XG4gICAgMTAwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIHNrLXN3aW5nLWRvdCB7XG4gICAgMCUsIDEwMCUge1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDAuMik7XG4gICAgfVxuXG4gICAgNTAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICB9XG59XG5cbi8qICBDaXJjbGVcbiAgICAgIDxkaXYgY2xhc3M9XCJzay1jaXJjbGVcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNrLWNpcmNsZS1kb3RcIj48L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNrLWNpcmNsZS1kb3RcIj48L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNrLWNpcmNsZS1kb3RcIj48L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNrLWNpcmNsZS1kb3RcIj48L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNrLWNpcmNsZS1kb3RcIj48L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNrLWNpcmNsZS1kb3RcIj48L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNrLWNpcmNsZS1kb3RcIj48L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNrLWNpcmNsZS1kb3RcIj48L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNrLWNpcmNsZS1kb3RcIj48L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNrLWNpcmNsZS1kb3RcIj48L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNrLWNpcmNsZS1kb3RcIj48L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNrLWNpcmNsZS1kb3RcIj48L2Rpdj5cbiAgICAgIDwvZGl2PlxuICovXG5cbi5zay1jaXJjbGUge1xuICAgIHdpZHRoOiB2YXIoLS1zay1zaXplKTtcbiAgICBoZWlnaHQ6IHZhcigtLXNrLXNpemUpO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLnNrLWNpcmNsZS1kb3Qge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDA7XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDE1JTtcbiAgICAgICAgaGVpZ2h0OiAxNSU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXNrLWNvbG9yKTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICAgICAgYW5pbWF0aW9uOiBzay1jaXJjbGUgMS4ycyBpbmZpbml0ZSBlYXNlLWluLW91dCBib3RoO1xuICAgIH1cblxuICAgICY6bnRoLWNoaWxkKDEpIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMzBkZWcpO1xuICAgIH1cblxuICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNjBkZWcpO1xuICAgIH1cblxuICAgICY6bnRoLWNoaWxkKDMpIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICAgIH1cblxuICAgICY6bnRoLWNoaWxkKDQpIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTIwZGVnKTtcbiAgICB9XG5cbiAgICAmOm50aC1jaGlsZCg1KSB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE1MGRlZyk7XG4gICAgfVxuXG4gICAgJjpudGgtY2hpbGQoNikge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAgIH1cblxuICAgICY6bnRoLWNoaWxkKDcpIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMjEwZGVnKTtcbiAgICB9XG5cbiAgICAmOm50aC1jaGlsZCg4KSB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDI0MGRlZyk7XG4gICAgfVxuXG4gICAgJjpudGgtY2hpbGQoOSkge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgyNzBkZWcpO1xuICAgIH1cblxuICAgICY6bnRoLWNoaWxkKDEwKSB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDMwMGRlZyk7XG4gICAgfVxuXG4gICAgJjpudGgtY2hpbGQoMTEpIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMzMwZGVnKTtcbiAgICB9XG5cbiAgICAmOm50aC1jaGlsZCgxKTpiZWZvcmUge1xuICAgICAgICBhbmltYXRpb24tZGVsYXk6IC0xLjFzO1xuICAgIH1cblxuICAgICY6bnRoLWNoaWxkKDIpOmJlZm9yZSB7XG4gICAgICAgIGFuaW1hdGlvbi1kZWxheTogLTFzO1xuICAgIH1cblxuICAgICY6bnRoLWNoaWxkKDMpOmJlZm9yZSB7XG4gICAgICAgIGFuaW1hdGlvbi1kZWxheTogLTAuOXM7XG4gICAgfVxuXG4gICAgJjpudGgtY2hpbGQoNCk6YmVmb3JlIHtcbiAgICAgICAgYW5pbWF0aW9uLWRlbGF5OiAtMC44cztcbiAgICB9XG5cbiAgICAmOm50aC1jaGlsZCg1KTpiZWZvcmUge1xuICAgICAgICBhbmltYXRpb24tZGVsYXk6IC0wLjdzO1xuICAgIH1cblxuICAgICY6bnRoLWNoaWxkKDYpOmJlZm9yZSB7XG4gICAgICAgIGFuaW1hdGlvbi1kZWxheTogLTAuNnM7XG4gICAgfVxuXG4gICAgJjpudGgtY2hpbGQoNyk6YmVmb3JlIHtcbiAgICAgICAgYW5pbWF0aW9uLWRlbGF5OiAtMC41cztcbiAgICB9XG5cbiAgICAmOm50aC1jaGlsZCg4KTpiZWZvcmUge1xuICAgICAgICBhbmltYXRpb24tZGVsYXk6IC0wLjRzO1xuICAgIH1cblxuICAgICY6bnRoLWNoaWxkKDkpOmJlZm9yZSB7XG4gICAgICAgIGFuaW1hdGlvbi1kZWxheTogLTAuM3M7XG4gICAgfVxuXG4gICAgJjpudGgtY2hpbGQoMTApOmJlZm9yZSB7XG4gICAgICAgIGFuaW1hdGlvbi1kZWxheTogLTAuMnM7XG4gICAgfVxuXG4gICAgJjpudGgtY2hpbGQoMTEpOmJlZm9yZSB7XG4gICAgICAgIGFuaW1hdGlvbi1kZWxheTogLTAuMXM7XG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIHNrLWNpcmNsZSB7XG4gICAgMCUsIDgwJSwgMTAwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gICAgfVxuXG4gICAgNDAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICB9XG59XG5cbi8qICBDaXJjbGUgRmFkZVxuICAgICAgPGRpdiBjbGFzcz1cInNrLWNpcmNsZS1mYWRlXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzay1jaXJjbGUtZmFkZS1kb3RcIj48L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNrLWNpcmNsZS1mYWRlLWRvdFwiPjwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwic2stY2lyY2xlLWZhZGUtZG90XCI+PC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzay1jaXJjbGUtZmFkZS1kb3RcIj48L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNrLWNpcmNsZS1mYWRlLWRvdFwiPjwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwic2stY2lyY2xlLWZhZGUtZG90XCI+PC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzay1jaXJjbGUtZmFkZS1kb3RcIj48L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNrLWNpcmNsZS1mYWRlLWRvdFwiPjwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwic2stY2lyY2xlLWZhZGUtZG90XCI+PC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzay1jaXJjbGUtZmFkZS1kb3RcIj48L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNrLWNpcmNsZS1mYWRlLWRvdFwiPjwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwic2stY2lyY2xlLWZhZGUtZG90XCI+PC9kaXY+XG4gICAgICA8L2Rpdj5cbiAqL1xuXG4uc2stY2lyY2xlLWZhZGUge1xuICAgIHdpZHRoOiB2YXIoLS1zay1zaXplKTtcbiAgICBoZWlnaHQ6IHZhcigtLXNrLXNpemUpO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLnNrLWNpcmNsZS1mYWRlLWRvdCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDtcblxuICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogMTUlO1xuICAgICAgICBoZWlnaHQ6IDE1JTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc2stY29sb3IpO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgICAgICBhbmltYXRpb246IHNrLWNpcmNsZS1mYWRlIDEuMnMgaW5maW5pdGUgZWFzZS1pbi1vdXQgYm90aDtcbiAgICB9XG5cbiAgICAmOm50aC1jaGlsZCgxKSB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDMwZGVnKTtcbiAgICB9XG5cbiAgICAmOm50aC1jaGlsZCgyKSB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDYwZGVnKTtcbiAgICB9XG5cbiAgICAmOm50aC1jaGlsZCgzKSB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbiAgICB9XG5cbiAgICAmOm50aC1jaGlsZCg0KSB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDEyMGRlZyk7XG4gICAgfVxuXG4gICAgJjpudGgtY2hpbGQoNSkge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxNTBkZWcpO1xuICAgIH1cblxuICAgICY6bnRoLWNoaWxkKDYpIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgICB9XG5cbiAgICAmOm50aC1jaGlsZCg3KSB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDIxMGRlZyk7XG4gICAgfVxuXG4gICAgJjpudGgtY2hpbGQoOCkge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgyNDBkZWcpO1xuICAgIH1cblxuICAgICY6bnRoLWNoaWxkKDkpIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMjcwZGVnKTtcbiAgICB9XG5cbiAgICAmOm50aC1jaGlsZCgxMCkge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzMDBkZWcpO1xuICAgIH1cblxuICAgICY6bnRoLWNoaWxkKDExKSB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDMzMGRlZyk7XG4gICAgfVxuXG4gICAgJjpudGgtY2hpbGQoMSk6YmVmb3JlIHtcbiAgICAgICAgYW5pbWF0aW9uLWRlbGF5OiAtMS4xcztcbiAgICB9XG5cbiAgICAmOm50aC1jaGlsZCgyKTpiZWZvcmUge1xuICAgICAgICBhbmltYXRpb24tZGVsYXk6IC0xLjBzO1xuICAgIH1cblxuICAgICY6bnRoLWNoaWxkKDMpOmJlZm9yZSB7XG4gICAgICAgIGFuaW1hdGlvbi1kZWxheTogLTAuOXM7XG4gICAgfVxuXG4gICAgJjpudGgtY2hpbGQoNCk6YmVmb3JlIHtcbiAgICAgICAgYW5pbWF0aW9uLWRlbGF5OiAtMC44cztcbiAgICB9XG5cbiAgICAmOm50aC1jaGlsZCg1KTpiZWZvcmUge1xuICAgICAgICBhbmltYXRpb24tZGVsYXk6IC0wLjdzO1xuICAgIH1cblxuICAgICY6bnRoLWNoaWxkKDYpOmJlZm9yZSB7XG4gICAgICAgIGFuaW1hdGlvbi1kZWxheTogLTAuNnM7XG4gICAgfVxuXG4gICAgJjpudGgtY2hpbGQoNyk6YmVmb3JlIHtcbiAgICAgICAgYW5pbWF0aW9uLWRlbGF5OiAtMC41cztcbiAgICB9XG5cbiAgICAmOm50aC1jaGlsZCg4KTpiZWZvcmUge1xuICAgICAgICBhbmltYXRpb24tZGVsYXk6IC0wLjRzO1xuICAgIH1cblxuICAgICY6bnRoLWNoaWxkKDkpOmJlZm9yZSB7XG4gICAgICAgIGFuaW1hdGlvbi1kZWxheTogLTAuM3M7XG4gICAgfVxuXG4gICAgJjpudGgtY2hpbGQoMTApOmJlZm9yZSB7XG4gICAgICAgIGFuaW1hdGlvbi1kZWxheTogLTAuMnM7XG4gICAgfVxuXG4gICAgJjpudGgtY2hpbGQoMTEpOmJlZm9yZSB7XG4gICAgICAgIGFuaW1hdGlvbi1kZWxheTogLTAuMXM7XG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIHNrLWNpcmNsZS1mYWRlIHtcbiAgICAwJSwgMzklLCAxMDAlIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwLjYpO1xuICAgIH1cblxuICAgIDQwJSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgfVxufVxuXG4vKiAgR3JpZFxuICAgIDxkaXYgY2xhc3M9XCJzay1ncmlkXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwic2stZ3JpZC1jdWJlXCI+PC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwic2stZ3JpZC1jdWJlXCI+PC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwic2stZ3JpZC1jdWJlXCI+PC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwic2stZ3JpZC1jdWJlXCI+PC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwic2stZ3JpZC1jdWJlXCI+PC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwic2stZ3JpZC1jdWJlXCI+PC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwic2stZ3JpZC1jdWJlXCI+PC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwic2stZ3JpZC1jdWJlXCI+PC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwic2stZ3JpZC1jdWJlXCI+PC9kaXY+XG4gICAgPC9kaXY+XG4gKi9cblxuLnNrLWdyaWQge1xuICAgIHdpZHRoOiB2YXIoLS1zay1zaXplKTtcbiAgICBoZWlnaHQ6IHZhcigtLXNrLXNpemUpO1xuXG4gICAgLyogQ3ViZSBwb3NpdGlvbnNcbiAgICAgKiAxIDIgM1xuICAgICAqIDQgNSA2XG4gICAgICogNyA4IDlcbiAgICAgKi9cbn1cblxuLnNrLWdyaWQtY3ViZSB7XG4gICAgd2lkdGg6IDMzLjMzJTtcbiAgICBoZWlnaHQ6IDMzLjMzJTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zay1jb2xvcik7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgYW5pbWF0aW9uOiBzay1ncmlkIDEuM3MgaW5maW5pdGUgZWFzZS1pbi1vdXQ7XG5cbiAgICAmOm50aC1jaGlsZCgxKSB7XG4gICAgICAgIGFuaW1hdGlvbi1kZWxheTogMC4ycztcbiAgICB9XG5cbiAgICAmOm50aC1jaGlsZCgyKSB7XG4gICAgICAgIGFuaW1hdGlvbi1kZWxheTogMC4zcztcbiAgICB9XG5cbiAgICAmOm50aC1jaGlsZCgzKSB7XG4gICAgICAgIGFuaW1hdGlvbi1kZWxheTogMC40cztcbiAgICB9XG5cbiAgICAmOm50aC1jaGlsZCg0KSB7XG4gICAgICAgIGFuaW1hdGlvbi1kZWxheTogMC4xcztcbiAgICB9XG5cbiAgICAmOm50aC1jaGlsZCg1KSB7XG4gICAgICAgIGFuaW1hdGlvbi1kZWxheTogMC4ycztcbiAgICB9XG5cbiAgICAmOm50aC1jaGlsZCg2KSB7XG4gICAgICAgIGFuaW1hdGlvbi1kZWxheTogMC4zcztcbiAgICB9XG5cbiAgICAmOm50aC1jaGlsZCg3KSB7XG4gICAgICAgIGFuaW1hdGlvbi1kZWxheTogMC4wcztcbiAgICB9XG5cbiAgICAmOm50aC1jaGlsZCg4KSB7XG4gICAgICAgIGFuaW1hdGlvbi1kZWxheTogMC4xcztcbiAgICB9XG5cbiAgICAmOm50aC1jaGlsZCg5KSB7XG4gICAgICAgIGFuaW1hdGlvbi1kZWxheTogMC4ycztcbiAgICB9XG59XG5cbkBrZXlmcmFtZXMgc2stZ3JpZCB7XG4gICAgMCUsIDcwJSwgMTAwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUzRCgxLCAxLCAxKTtcbiAgICB9XG5cbiAgICAzNSUge1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM0QoMCwgMCwgMSk7XG4gICAgfVxufVxuXG4vKiAgRm9sZFxuICAgICAgPGRpdiBjbGFzcz1cInNrLWZvbGRcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNrLWZvbGQtY3ViZVwiPjwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwic2stZm9sZC1jdWJlXCI+PC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzay1mb2xkLWN1YmVcIj48L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNrLWZvbGQtY3ViZVwiPjwvZGl2PlxuICAgICAgPC9kaXY+XG4gKi9cblxuLnNrLWZvbGQge1xuICAgIHdpZHRoOiB2YXIoLS1zay1zaXplKTtcbiAgICBoZWlnaHQ6IHZhcigtLXNrLXNpemUpO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZVooNDVkZWcpO1xufVxuXG4uc2stZm9sZC1jdWJlIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogNTAlO1xuICAgIGhlaWdodDogNTAlO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc2stY29sb3IpO1xuICAgICAgICBhbmltYXRpb246IHNrLWZvbGQgMi40cyBpbmZpbml0ZSBsaW5lYXIgYm90aDtcbiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogMTAwJSAxMDAlO1xuICAgIH1cblxuICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjEpIHJvdGF0ZVooOTBkZWcpO1xuICAgIH1cblxuICAgICY6bnRoLWNoaWxkKDQpIHtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjEpIHJvdGF0ZVooMTgwZGVnKTtcbiAgICB9XG5cbiAgICAmOm50aC1jaGlsZCgzKSB7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xKSByb3RhdGVaKDI3MGRlZyk7XG4gICAgfVxuXG4gICAgJjpudGgtY2hpbGQoMik6YmVmb3JlIHtcbiAgICAgICAgYW5pbWF0aW9uLWRlbGF5OiAwLjNzO1xuICAgIH1cblxuICAgICY6bnRoLWNoaWxkKDQpOmJlZm9yZSB7XG4gICAgICAgIGFuaW1hdGlvbi1kZWxheTogMC42cztcbiAgICB9XG5cbiAgICAmOm50aC1jaGlsZCgzKTpiZWZvcmUge1xuICAgICAgICBhbmltYXRpb24tZGVsYXk6IDAuOXM7XG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIHNrLWZvbGQge1xuICAgIDAlLCAxMCUge1xuICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDE0MHB4KSByb3RhdGVYKC0xODBkZWcpO1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgIH1cblxuICAgIDI1JSwgNzUlIHtcbiAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxNDBweCkgcm90YXRlWCgwZGVnKTtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG5cbiAgICA5MCUsIDEwMCUge1xuICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDE0MHB4KSByb3RhdGVZKDE4MGRlZyk7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxufVxuXG4vKiAgV2FuZGVyXG4gICAgICA8ZGl2IGNsYXNzPVwic2std2FuZGVyXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzay13YW5kZXItY3ViZVwiPjwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwic2std2FuZGVyLWN1YmVcIj48L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNrLXdhbmRlci1jdWJlXCI+PC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzay13YW5kZXItY3ViZVwiPjwvZGl2PlxuICAgICAgPC9kaXY+XG4gKi9cblxuLnNrLXdhbmRlciB7XG4gICAgd2lkdGg6IHZhcigtLXNrLXNpemUpO1xuICAgIGhlaWdodDogdmFyKC0tc2stc2l6ZSk7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uc2std2FuZGVyLWN1YmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXNrLWNvbG9yKTtcbiAgICB3aWR0aDogMjAlO1xuICAgIGhlaWdodDogMjAlO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICAtLXNrLXdhbmRlci1kaXN0YW5jZTpjYWxjKHZhcigtLXNrLXNpemUpICogMC43NSk7XG4gICAgYW5pbWF0aW9uOiBzay13YW5kZXIgMi4wcyBlYXNlLWluLW91dCAtMi4wcyBpbmZpbml0ZSBib3RoO1xuXG4gICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgICBhbmltYXRpb24tZGVsYXk6IC0wLjVzO1xuICAgIH1cblxuICAgICY6bnRoLWNoaWxkKDMpIHtcbiAgICAgICAgYW5pbWF0aW9uLWRlbGF5OiAtMS4wcztcbiAgICB9XG59XG5cbkBrZXlmcmFtZXMgc2std2FuZGVyIHtcbiAgICAwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgIH1cblxuICAgIDI1JSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCh2YXIoLS1zay13YW5kZXItZGlzdGFuY2UpKSByb3RhdGUoLTkwZGVnKSBzY2FsZSgwLjYpO1xuICAgIH1cblxuICAgIDUwJSB7XG4gICAgICAgIC8qIE1ha2UgRkYgcm90YXRlIGluIHRoZSByaWdodCBkaXJlY3Rpb24gKi9cbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKHZhcigtLXNrLXdhbmRlci1kaXN0YW5jZSkpIHRyYW5zbGF0ZVkodmFyKC0tc2std2FuZGVyLWRpc3RhbmNlKSkgcm90YXRlKC0xNzlkZWcpO1xuICAgIH1cblxuICAgIDUwLjElIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKHZhcigtLXNrLXdhbmRlci1kaXN0YW5jZSkpIHRyYW5zbGF0ZVkodmFyKC0tc2std2FuZGVyLWRpc3RhbmNlKSkgcm90YXRlKC0xODBkZWcpO1xuICAgIH1cblxuICAgIDc1JSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKSB0cmFuc2xhdGVZKHZhcigtLXNrLXdhbmRlci1kaXN0YW5jZSkpIHJvdGF0ZSgtMjcwZGVnKSBzY2FsZSgwLjYpO1xuICAgIH1cblxuICAgIDEwMCUge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMzYwZGVnKTtcbiAgICB9XG59IiwiLl9fY2hlY2tib3gge1xuICAgIHBhZGRpbmc6IDIwcHggIWltcG9ydGFudDtcbn1cblxuLl9faGFzLWZpbGUge1xuICAgIG9wYWNpdHk6IDAuOCAhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNjOWM5Yzk7XG59XG5cbi5fX2hhcy1iYW5rLWxvYW4tY2hvc2VuIHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuXG4uY3VzdG9tLWNvbnRyb2wtaW5wdXQ6bm90KDpjaGVja2VkKSB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7IC8qIENoYW5nZSB0aGUgYmFja2dyb3VuZCBjb2xvciBvZiB0aGUgdG9nZ2xlIHdoZW4gaXQgaXMgbm90IGNoZWNrZWQgKi9cbiAgICBib3JkZXItY29sb3I6IGdyZXk7IC8qIENoYW5nZSB0aGUgYm9yZGVyIGNvbG9yIG9mIHRoZSBjaGVja2JveCB3aGVuIGl0IGlzIG5vdCBjaGVja2VkICovXG59XG5cbi5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IGdyZXk7IC8qIENoYW5nZSB0aGUgY29sb3Igb2YgdGhlIHRvZ2dsZSB3aGVuIGl0IGlzIGNoZWNrZWQgKi9cbn1cblxuLnVwbG9hZC1maWxlIHtcbiAgICB3aWR0aDogNTBweDtcbiAgICBoZWlnaHQ6IDUwcHg7XG59XG4iLCJcbiNzZWxlY3QyLWxlZ2FsX2NvbnRyYWN0X2N1c3RvbWVyLWNvbnRhaW5lcntcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiKDIyNSwgMjI1LCAyMjUpO1xuICBjb2xvcjogYmxhY2s7XG59XG4uanVyaWZpc2Mge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLWxlZnQ6IDM1cHg7XG4gIG1hcmdpbi1ib3R0b206IDEycHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZm9udC1zaXplOiAyMnB4O1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHVzZXItc2VsZWN0OiBub25lO1xufVxuXG4vKiBIaWRlIHRoZSBicm93c2VyJ3MgZGVmYXVsdCBjaGVja2JveCAqL1xuLmp1cmlmaXNjIGlucHV0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBvcGFjaXR5OiAwO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGhlaWdodDogMDtcbiAgd2lkdGg6IDA7XG59XG5cbi8qIENyZWF0ZSBhIGN1c3RvbSBjaGVja2JveCAqL1xuLmNoZWNrbWFyayB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBoZWlnaHQ6IDI1cHg7XG4gIHdpZHRoOiAyNXB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVlO1xufVxuXG4vKiBPbiBtb3VzZS1vdmVyLCBhZGQgYSBncmV5IGJhY2tncm91bmQgY29sb3IgKi9cbi5qdXJpZmlzYzpob3ZlciBpbnB1dCB+IC5jaGVja21hcmsge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2NjO1xufVxuXG4vKiBXaGVuIHRoZSBjaGVja2JveCBpcyBjaGVja2VkLCBhZGQgYSBibHVlIGJhY2tncm91bmQgKi9cbi5qdXJpZmlzYyBpbnB1dDpjaGVja2VkIH4gLmNoZWNrbWFyayB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyMTk2RjM7XG59XG5cbi8qIENyZWF0ZSB0aGUgY2hlY2ttYXJrL2luZGljYXRvciAoaGlkZGVuIHdoZW4gbm90IGNoZWNrZWQpICovXG4uY2hlY2ttYXJrOmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKiBTaG93IHRoZSBjaGVja21hcmsgd2hlbiBjaGVja2VkICovXG4uanVyaWZpc2MgaW5wdXQ6Y2hlY2tlZCB+IC5jaGVja21hcms6YWZ0ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLyogU3R5bGUgdGhlIGNoZWNrbWFyay9pbmRpY2F0b3IgKi9cbi5qdXJpZmlzYyAuY2hlY2ttYXJrOmFmdGVyIHtcbiAgbGVmdDogOXB4O1xuICB0b3A6IDVweDtcbiAgd2lkdGg6IDVweDtcbiAgaGVpZ2h0OiAxMHB4O1xuICBib3JkZXI6IHNvbGlkIHdoaXRlO1xuICBib3JkZXItd2lkdGg6IDAgM3B4IDNweCAwO1xuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xufVxuLyogVGhlIGp1cmlmaXNjcmFkaW8gKi9cbi5qdXJpZmlzY3JhZGlvIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZy1sZWZ0OiAzNXB4O1xuICBtYXJnaW4tYm90dG9tOiAxMnB4O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGZvbnQtc2l6ZTogMjJweDtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbn1cblxuLyogSGlkZSB0aGUgYnJvd3NlcidzIGRlZmF1bHQgcmFkaW8gYnV0dG9uICovXG4uanVyaWZpc2NyYWRpbyBpbnB1dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgb3BhY2l0eTogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4vKiBDcmVhdGUgYSBjdXN0b20gcmFkaW8gYnV0dG9uICovXG4uY2hlY2ttYXJrcmFkaW8ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgaGVpZ2h0OiAyNXB4O1xuICB3aWR0aDogMjVweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VlZTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xufVxuXG4vKiBPbiBtb3VzZS1vdmVyLCBhZGQgYSBncmV5IGJhY2tncm91bmQgY29sb3IgKi9cbi5qdXJpZmlzY3JhZGlvOmhvdmVyIGlucHV0IH4gLmNoZWNrbWFya3JhZGlvIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2NjYztcbn1cblxuLyogV2hlbiB0aGUgcmFkaW8gYnV0dG9uIGlzIGNoZWNrZWQsIGFkZCBhIGJsdWUgYmFja2dyb3VuZCAqL1xuLmp1cmlmaXNjcmFkaW8gaW5wdXQ6Y2hlY2tlZCB+IC5jaGVja21hcmtyYWRpbyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyMTk2RjM7XG59XG5cbi8qIENyZWF0ZSB0aGUgaW5kaWNhdG9yICh0aGUgZG90L2NpcmNsZSAtIGhpZGRlbiB3aGVuIG5vdCBjaGVja2VkKSAqL1xuLmNoZWNrbWFya3JhZGlvOmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKiBTaG93IHRoZSBpbmRpY2F0b3IgKGRvdC9jaXJjbGUpIHdoZW4gY2hlY2tlZCAqL1xuLmp1cmlmaXNjcmFkaW8gaW5wdXQ6Y2hlY2tlZCB+IC5jaGVja21hcmtyYWRpbzphZnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKiBTdHlsZSB0aGUgaW5kaWNhdG9yIChkb3QvY2lyY2xlKSAqL1xuLmp1cmlmaXNjcmFkaW8gLmNoZWNrbWFya3JhZGlvOmFmdGVyIHtcbiAgdG9wOiA5cHg7XG4gIGxlZnQ6IDlweDtcbiAgd2lkdGg6IDhweDtcbiAgaGVpZ2h0OiA4cHg7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgYmFja2dyb3VuZDogd2hpdGU7XG59XG5cbi5fX2NhcmQtcHJvZHVjdC1maXNjYSB7XG4gIHdpZHRoOiBhdXRvO1xuICAvKmJveC1zaGFkb3c6IDAgNHB4IDdweCByZ2JhKDAsIDAsIDAsIDAuNSk7Ki9cbiAgY3Vyc29yOiBwb2ludGVyO1xuICB0cmFuc2l0aW9uOiBhbGwgMC41cyBjdWJpYy1iZXppZXIoMC44LCAwLjUsIDAuMiwgMS40KTtcbiAgLy9vdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi1sZWZ0OiAyJTtcblxuICBpbWcge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDI1MHB4O1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGN1YmljLWJlemllcigwLjgsIDAuNSwgMC4yLCAxLjQpO1xuICB9XG5cbiAgLl9fY2FyZC10aXRsZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjYpO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIC8vaGVpZ2h0OiA1MHB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IDhweDtcblxuICAgIGgzIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiA0OHB4O1xuICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgZm9udC1mYW1pbHk6ICdOdW5pdG8nLHNhbnMtc2VyaWY7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG5cblxuLl9fZGVzY3JpcHRpb25zLXByb2R1Y3QtZmlzY2Ege1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB0cmFuc2l0aW9uOiBhbGwgLjdzIGVhc2UtaW4tb3V0O1xuICBwYWRkaW5nOiAyMHB4O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBjbGlwLXBhdGg6IGNpcmNsZSgwJSBhdCAxMDAlIDEwMCUpO1xuXG4gIHVsIGxpIHtcbiAgICBjb2xvcjogYmxhY2s7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG59XG5cbi5fX2NhcmQtcHJvZHVjdC1maXNjYSB7XG4gICY6aG92ZXIge1xuICAgIC5fX2Rlc2NyaXB0aW9ucy1wcm9kdWN0LWZpc2NhIHtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgLjdzIGVhc2UtaW4tb3V0O1xuICAgICAgY2xpcC1wYXRoOiBjaXJjbGUoNzUlKTtcbiAgICB9XG5cbiAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBjdWJpYy1iZXppZXIoMC44LCAwLjUsIDAuMiwgMS40KTtcbiAgICBib3gtc2hhZG93OiAwIDJweCAzcHggcmdiYSgwLCAwLCAwLCAwLjMpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC45Nyk7XG4gIH1cblxuICBoMSB7XG4gICAgY29sb3I6ICNmZjM4Mzg7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgICBtYXJnaW46IDA7XG4gIH1cblxuICBwIHtcbiAgICBsaW5lLWhlaWdodDogMjRweDtcbiAgICBoZWlnaHQ6IDcwJTtcbiAgfVxuXG4gIHVsICB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG4gIHVsIGxpIHtcbiAgICBjb2xvcjogYmxhY2s7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGZvbnQtc2l6ZTogMTFweDtcbiAgfVxufVxuXG4iLCJ0YWJsZS5kYXRhVGFibGUgdGJvZHk+dHIuc2VsZWN0ZWQsdGFibGUuZGF0YVRhYmxlIHRib2R5PnRyPi5zZWxlY3RlZHtiYWNrZ3JvdW5kLWNvbG9yOiNiMGJlZDl9dGFibGUuZGF0YVRhYmxlLnN0cmlwZSB0Ym9keT50ci5vZGQuc2VsZWN0ZWQsdGFibGUuZGF0YVRhYmxlLnN0cmlwZSB0Ym9keT50ci5vZGQ+LnNlbGVjdGVkLHRhYmxlLmRhdGFUYWJsZS5kaXNwbGF5IHRib2R5PnRyLm9kZC5zZWxlY3RlZCx0YWJsZS5kYXRhVGFibGUuZGlzcGxheSB0Ym9keT50ci5vZGQ+LnNlbGVjdGVke2JhY2tncm91bmQtY29sb3I6I2FjYmFkNH10YWJsZS5kYXRhVGFibGUuaG92ZXIgdGJvZHk+dHIuc2VsZWN0ZWQ6aG92ZXIsdGFibGUuZGF0YVRhYmxlLmhvdmVyIHRib2R5PnRyPi5zZWxlY3RlZDpob3Zlcix0YWJsZS5kYXRhVGFibGUuZGlzcGxheSB0Ym9keT50ci5zZWxlY3RlZDpob3Zlcix0YWJsZS5kYXRhVGFibGUuZGlzcGxheSB0Ym9keT50cj4uc2VsZWN0ZWQ6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjojYWFiN2QxfXRhYmxlLmRhdGFUYWJsZS5vcmRlci1jb2x1bW4gdGJvZHk+dHIuc2VsZWN0ZWQ+LnNvcnRpbmdfMSx0YWJsZS5kYXRhVGFibGUub3JkZXItY29sdW1uIHRib2R5PnRyLnNlbGVjdGVkPi5zb3J0aW5nXzIsdGFibGUuZGF0YVRhYmxlLm9yZGVyLWNvbHVtbiB0Ym9keT50ci5zZWxlY3RlZD4uc29ydGluZ18zLHRhYmxlLmRhdGFUYWJsZS5vcmRlci1jb2x1bW4gdGJvZHk+dHI+LnNlbGVjdGVkLHRhYmxlLmRhdGFUYWJsZS5kaXNwbGF5IHRib2R5PnRyLnNlbGVjdGVkPi5zb3J0aW5nXzEsdGFibGUuZGF0YVRhYmxlLmRpc3BsYXkgdGJvZHk+dHIuc2VsZWN0ZWQ+LnNvcnRpbmdfMix0YWJsZS5kYXRhVGFibGUuZGlzcGxheSB0Ym9keT50ci5zZWxlY3RlZD4uc29ydGluZ18zLHRhYmxlLmRhdGFUYWJsZS5kaXNwbGF5IHRib2R5PnRyPi5zZWxlY3RlZHtiYWNrZ3JvdW5kLWNvbG9yOiNhY2JhZDV9dGFibGUuZGF0YVRhYmxlLmRpc3BsYXkgdGJvZHk+dHIub2RkLnNlbGVjdGVkPi5zb3J0aW5nXzEsdGFibGUuZGF0YVRhYmxlLm9yZGVyLWNvbHVtbi5zdHJpcGUgdGJvZHk+dHIub2RkLnNlbGVjdGVkPi5zb3J0aW5nXzF7YmFja2dyb3VuZC1jb2xvcjojYTZiNGNkfXRhYmxlLmRhdGFUYWJsZS5kaXNwbGF5IHRib2R5PnRyLm9kZC5zZWxlY3RlZD4uc29ydGluZ18yLHRhYmxlLmRhdGFUYWJsZS5vcmRlci1jb2x1bW4uc3RyaXBlIHRib2R5PnRyLm9kZC5zZWxlY3RlZD4uc29ydGluZ18ye2JhY2tncm91bmQtY29sb3I6I2E4YjVjZn10YWJsZS5kYXRhVGFibGUuZGlzcGxheSB0Ym9keT50ci5vZGQuc2VsZWN0ZWQ+LnNvcnRpbmdfMyx0YWJsZS5kYXRhVGFibGUub3JkZXItY29sdW1uLnN0cmlwZSB0Ym9keT50ci5vZGQuc2VsZWN0ZWQ+LnNvcnRpbmdfM3tiYWNrZ3JvdW5kLWNvbG9yOiNhOWI3ZDF9dGFibGUuZGF0YVRhYmxlLmRpc3BsYXkgdGJvZHk+dHIuZXZlbi5zZWxlY3RlZD4uc29ydGluZ18xLHRhYmxlLmRhdGFUYWJsZS5vcmRlci1jb2x1bW4uc3RyaXBlIHRib2R5PnRyLmV2ZW4uc2VsZWN0ZWQ+LnNvcnRpbmdfMXtiYWNrZ3JvdW5kLWNvbG9yOiNhY2JhZDV9dGFibGUuZGF0YVRhYmxlLmRpc3BsYXkgdGJvZHk+dHIuZXZlbi5zZWxlY3RlZD4uc29ydGluZ18yLHRhYmxlLmRhdGFUYWJsZS5vcmRlci1jb2x1bW4uc3RyaXBlIHRib2R5PnRyLmV2ZW4uc2VsZWN0ZWQ+LnNvcnRpbmdfMntiYWNrZ3JvdW5kLWNvbG9yOiNhZWJjZDZ9dGFibGUuZGF0YVRhYmxlLmRpc3BsYXkgdGJvZHk+dHIuZXZlbi5zZWxlY3RlZD4uc29ydGluZ18zLHRhYmxlLmRhdGFUYWJsZS5vcmRlci1jb2x1bW4uc3RyaXBlIHRib2R5PnRyLmV2ZW4uc2VsZWN0ZWQ+LnNvcnRpbmdfM3tiYWNrZ3JvdW5kLWNvbG9yOiNhZmJkZDh9dGFibGUuZGF0YVRhYmxlLmRpc3BsYXkgdGJvZHk+dHIub2RkPi5zZWxlY3RlZCx0YWJsZS5kYXRhVGFibGUub3JkZXItY29sdW1uLnN0cmlwZSB0Ym9keT50ci5vZGQ+LnNlbGVjdGVke2JhY2tncm91bmQtY29sb3I6I2E2YjRjZH10YWJsZS5kYXRhVGFibGUuZGlzcGxheSB0Ym9keT50ci5ldmVuPi5zZWxlY3RlZCx0YWJsZS5kYXRhVGFibGUub3JkZXItY29sdW1uLnN0cmlwZSB0Ym9keT50ci5ldmVuPi5zZWxlY3RlZHtiYWNrZ3JvdW5kLWNvbG9yOiNhY2JhZDV9dGFibGUuZGF0YVRhYmxlLmRpc3BsYXkgdGJvZHk+dHIuc2VsZWN0ZWQ6aG92ZXI+LnNvcnRpbmdfMSx0YWJsZS5kYXRhVGFibGUub3JkZXItY29sdW1uLmhvdmVyIHRib2R5PnRyLnNlbGVjdGVkOmhvdmVyPi5zb3J0aW5nXzF7YmFja2dyb3VuZC1jb2xvcjojYTJhZWM3fXRhYmxlLmRhdGFUYWJsZS5kaXNwbGF5IHRib2R5PnRyLnNlbGVjdGVkOmhvdmVyPi5zb3J0aW5nXzIsdGFibGUuZGF0YVRhYmxlLm9yZGVyLWNvbHVtbi5ob3ZlciB0Ym9keT50ci5zZWxlY3RlZDpob3Zlcj4uc29ydGluZ18ye2JhY2tncm91bmQtY29sb3I6I2EzYjBjOX10YWJsZS5kYXRhVGFibGUuZGlzcGxheSB0Ym9keT50ci5zZWxlY3RlZDpob3Zlcj4uc29ydGluZ18zLHRhYmxlLmRhdGFUYWJsZS5vcmRlci1jb2x1bW4uaG92ZXIgdGJvZHk+dHIuc2VsZWN0ZWQ6aG92ZXI+LnNvcnRpbmdfM3tiYWNrZ3JvdW5kLWNvbG9yOiNhNWIyY2J9dGFibGUuZGF0YVRhYmxlLmRpc3BsYXkgdGJvZHk+dHI6aG92ZXI+LnNlbGVjdGVkLHRhYmxlLmRhdGFUYWJsZS5kaXNwbGF5IHRib2R5PnRyPi5zZWxlY3RlZDpob3Zlcix0YWJsZS5kYXRhVGFibGUub3JkZXItY29sdW1uLmhvdmVyIHRib2R5PnRyOmhvdmVyPi5zZWxlY3RlZCx0YWJsZS5kYXRhVGFibGUub3JkZXItY29sdW1uLmhvdmVyIHRib2R5PnRyPi5zZWxlY3RlZDpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOiNhMmFlYzd9dGFibGUuZGF0YVRhYmxlIHRib2R5IHRkLnNlbGVjdC1jaGVja2JveCx0YWJsZS5kYXRhVGFibGUgdGJvZHkgdGguc2VsZWN0LWNoZWNrYm94e3Bvc2l0aW9uOnJlbGF0aXZlfXRhYmxlLmRhdGFUYWJsZSB0Ym9keSB0ZC5zZWxlY3QtY2hlY2tib3g6YmVmb3JlLHRhYmxlLmRhdGFUYWJsZSB0Ym9keSB0ZC5zZWxlY3QtY2hlY2tib3g6YWZ0ZXIsdGFibGUuZGF0YVRhYmxlIHRib2R5IHRoLnNlbGVjdC1jaGVja2JveDpiZWZvcmUsdGFibGUuZGF0YVRhYmxlIHRib2R5IHRoLnNlbGVjdC1jaGVja2JveDphZnRlcntkaXNwbGF5OmJsb2NrO3Bvc2l0aW9uOmFic29sdXRlO3RvcDoxLjJlbTtsZWZ0OjUwJTt3aWR0aDoxMnB4O2hlaWdodDoxMnB4O2JveC1zaXppbmc6Ym9yZGVyLWJveH10YWJsZS5kYXRhVGFibGUgdGJvZHkgdGQuc2VsZWN0LWNoZWNrYm94OmJlZm9yZSx0YWJsZS5kYXRhVGFibGUgdGJvZHkgdGguc2VsZWN0LWNoZWNrYm94OmJlZm9yZXtjb250ZW50OlwiIFwiO21hcmdpbi10b3A6LTZweDttYXJnaW4tbGVmdDotNnB4O2JvcmRlcjoxcHggc29saWQgYmxhY2s7Ym9yZGVyLXJhZGl1czozcHh9dGFibGUuZGF0YVRhYmxlIHRyLnNlbGVjdGVkIHRkLnNlbGVjdC1jaGVja2JveDphZnRlcix0YWJsZS5kYXRhVGFibGUgdHIuc2VsZWN0ZWQgdGguc2VsZWN0LWNoZWNrYm94OmFmdGVye2NvbnRlbnQ6XCLinJNcIjtmb250LXNpemU6MjBweDttYXJnaW4tdG9wOi0xOXB4O21hcmdpbi1sZWZ0Oi02cHg7dGV4dC1hbGlnbjpjZW50ZXI7dGV4dC1zaGFkb3c6MXB4IDFweCAjYjBiZWQ5LC0xcHggLTFweCAjYjBiZWQ5LDFweCAtMXB4ICNiMGJlZDksLTFweCAxcHggI2IwYmVkOX10YWJsZS5kYXRhVGFibGUuY29tcGFjdCB0Ym9keSB0ZC5zZWxlY3QtY2hlY2tib3g6YmVmb3JlLHRhYmxlLmRhdGFUYWJsZS5jb21wYWN0IHRib2R5IHRoLnNlbGVjdC1jaGVja2JveDpiZWZvcmV7bWFyZ2luLXRvcDotMTJweH10YWJsZS5kYXRhVGFibGUuY29tcGFjdCB0ci5zZWxlY3RlZCB0ZC5zZWxlY3QtY2hlY2tib3g6YWZ0ZXIsdGFibGUuZGF0YVRhYmxlLmNvbXBhY3QgdHIuc2VsZWN0ZWQgdGguc2VsZWN0LWNoZWNrYm94OmFmdGVye21hcmdpbi10b3A6LTE2cHh9ZGl2LmRhdGFUYWJsZXNfd3JhcHBlciBzcGFuLnNlbGVjdC1pbmZvLGRpdi5kYXRhVGFibGVzX3dyYXBwZXIgc3Bhbi5zZWxlY3QtaXRlbXttYXJnaW4tbGVmdDouNWVtfUBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY0MHB4KXtkaXYuZGF0YVRhYmxlc193cmFwcGVyIHNwYW4uc2VsZWN0LWluZm8sZGl2LmRhdGFUYWJsZXNfd3JhcHBlciBzcGFuLnNlbGVjdC1pdGVte21hcmdpbi1sZWZ0OjA7ZGlzcGxheTpibG9ja319XG4iXSwic291cmNlUm9vdCI6IiJ9*/