/*!****************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[1]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[2]!./assets/css/hal.scss ***!
  \****************************************************************************************************************************************************************************************/
@import url(https://fonts.googleapis.com/css2?family=Noto+Sans:wght@400;700&display=swap);
/*!************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./node_modules/jquery-ui/themes/base/core.css ***!
  \************************************************************************************************************************************/
/*!
 * jQuery UI CSS Framework 1.13.2
 * 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;
	-ms-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%;
}

/*!*****************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./node_modules/jquery-ui/themes/base/draggable.css ***!
  \*****************************************************************************************************************************************/
/*!
 * jQuery UI Draggable 1.13.2
 * 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;
}

/*!*****************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./node_modules/jquery-ui/themes/base/resizable.css ***!
  \*****************************************************************************************************************************************/
/*!
 * jQuery UI Resizable 1.13.2
 * 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;
}

/*!******************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./node_modules/jquery-ui/themes/base/selectable.css ***!
  \******************************************************************************************************************************************/
/*!
 * jQuery UI Selectable 1.13.2
 * 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;
}

/*!****************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./node_modules/jquery-ui/themes/base/sortable.css ***!
  \****************************************************************************************************************************************/
/*!
 * jQuery UI Sortable 1.13.2
 * 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;
}

/*!*****************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./node_modules/jquery-ui/themes/base/accordion.css ***!
  \*****************************************************************************************************************************************/
/*!
 * jQuery UI Accordion 1.13.2
 * 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;
}

/*!********************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./node_modules/jquery-ui/themes/base/autocomplete.css ***!
  \********************************************************************************************************************************************/
/*!
 * jQuery UI Autocomplete 1.13.2
 * 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;
}

/*!**************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./node_modules/jquery-ui/themes/base/button.css ***!
  \**************************************************************************************************************************************/
/*!
 * jQuery UI Button 1.13.2
 * 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;
}

/*!*********************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./node_modules/jquery-ui/themes/base/checkboxradio.css ***!
  \*********************************************************************************************************************************************/
/*!
 * jQuery UI Checkboxradio 1.13.2
 * 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;
}

/*!********************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./node_modules/jquery-ui/themes/base/controlgroup.css ***!
  \********************************************************************************************************************************************/
/*!
 * jQuery UI Controlgroup 1.13.2
 * 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;
}


/*!******************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./node_modules/jquery-ui/themes/base/datepicker.css ***!
  \******************************************************************************************************************************************/
/*!
 * jQuery UI Datepicker 1.13.2
 * 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;
}

/*!**************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./node_modules/jquery-ui/themes/base/dialog.css ***!
  \**************************************************************************************************************************************/
/*!
 * jQuery UI Dialog 1.13.2
 * 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;
}

/*!************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./node_modules/jquery-ui/themes/base/menu.css ***!
  \************************************************************************************************************************************/
/*!
 * jQuery UI Menu 1.13.2
 * 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;
}

/*!*******************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./node_modules/jquery-ui/themes/base/progressbar.css ***!
  \*******************************************************************************************************************************************/
/*!
 * jQuery UI Progressbar 1.13.2
 * 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%;
	-ms-filter: "alpha(opacity=25)"; /* support: IE8 */
	opacity: 0.25;
}
.ui-progressbar-indeterminate .ui-progressbar-value {
	background-image: none;
}

/*!******************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./node_modules/jquery-ui/themes/base/selectmenu.css ***!
  \******************************************************************************************************************************************/
/*!
 * jQuery UI Selectmenu 1.13.2
 * 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;
}

/*!**************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./node_modules/jquery-ui/themes/base/slider.css ***!
  \**************************************************************************************************************************************/
/*!
 * jQuery UI Slider 1.13.2
 * 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: pointer;
	-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;
}

/*!***************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./node_modules/jquery-ui/themes/base/spinner.css ***!
  \***************************************************************************************************************************************/
/*!
 * jQuery UI Spinner 1.13.2
 * 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;
}

/*!************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./node_modules/jquery-ui/themes/base/tabs.css ***!
  \************************************************************************************************************************************/
/*!
 * jQuery UI Tabs 1.13.2
 * 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;
}

/*!***************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./node_modules/jquery-ui/themes/base/tooltip.css ***!
  \***************************************************************************************************************************************/
/*!
 * jQuery UI Tooltip 1.13.2
 * 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;
}

/*!********************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[1]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[2]!./assets/css/hal.scss (1) ***!
  \********************************************************************************************************************************************************************************************/
@charset "UTF-8";
/*!
 * Bootstrap v4.6.2 (https://getbootstrap.com/)
 * Copyright 2011-2022 The Bootstrap Authors
 * Copyright 2011-2022 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: #fff;
  --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: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  --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: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #212529;
  text-align: left;
  background-color: #fff;
}

[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: 700;
}

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: underline;
}

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: 0.75rem;
  padding-bottom: 0.75rem;
  color: #6c757d;
  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: 500;
  line-height: 1.2;
}

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(0, 0, 0, 0.1);
}

small,
.small {
  font-size: 0.875em;
  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: 0.875em;
  color: #6c757d;
}

.blockquote-footer::before {
  content: "\2014\00A0";
}

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

.img-thumbnail {
  padding: 0.25rem;
  background-color: #fff;
  border: 1px solid #dee2e6;
  border-radius: 0.25rem;
  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: #e83e8c;
  word-wrap: break-word;
}

a > code {
  color: inherit;
}

kbd {
  padding: 0.2rem 0.4rem;
  font-size: 87.5%;
  color: #fff;
  background-color: #212529;
  border-radius: 0.2rem;
}

kbd kbd {
  padding: 0;
  font-size: 100%;
  font-weight: 700;
}

pre {
  display: block;
  font-size: 87.5%;
  color: #212529;
}

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: #212529;
}

.table th,
.table td {
  padding: 0.75rem;
  vertical-align: top;
  border-top: 1px solid #dee2e6;
}

.table thead th {
  vertical-align: bottom;
  border-bottom: 2px solid #dee2e6;
}

.table tbody + tbody {
  border-top: 2px solid #dee2e6;
}

.table-sm th,
.table-sm td {
  padding: 0.3rem;
}

.table-bordered {
  border: 1px solid #dee2e6;
}

.table-bordered th,
.table-bordered td {
  border: 1px solid #dee2e6;
}

.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(0, 0, 0, 0.05);
}

.table-hover tbody tr:hover {
  color: #212529;
  background-color: rgba(0, 0, 0, 0.075);
}

.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(0, 0, 0, 0.075);
}

.table-hover .table-active:hover {
  background-color: rgba(0, 0, 0, 0.075);
}

.table-hover .table-active:hover > td,
.table-hover .table-active:hover > th {
  background-color: rgba(0, 0, 0, 0.075);
}

.table .thead-dark th {
  color: #fff;
  background-color: #343a40;
  border-color: #454d55;
}

.table .thead-light th {
  color: #495057;
  background-color: #e9ecef;
  border-color: #dee2e6;
}

.table-dark {
  color: #fff;
  background-color: #343a40;
}

.table-dark th,
.table-dark td,
.table-dark thead th {
  border-color: #454d55;
}

.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: #fff;
  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 + 0.75rem + 2px);
  padding: 0.375rem 0.75rem;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #495057;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid #ced4da;
  border-radius: 0.25rem;
  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:focus {
  color: #495057;
  background-color: #fff;
  border-color: #80bdff;
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

.form-control::placeholder {
  color: #6c757d;
  opacity: 1;
}

.form-control:disabled, .form-control[readonly] {
  background-color: #e9ecef;
  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:-moz-focusring {
  color: transparent;
  text-shadow: 0 0 0 #495057;
}

select.form-control:focus::-ms-value {
  color: #495057;
  background-color: #fff;
}

.form-control-file,
.form-control-range {
  display: block;
  width: 100%;
}

.col-form-label {
  padding-top: calc(0.375rem + 1px);
  padding-bottom: calc(0.375rem + 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.375rem 0;
  margin-bottom: 0;
  font-size: 1rem;
  line-height: 1.5;
  color: #212529;
  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.5rem;
  font-size: 0.875rem;
  line-height: 1.5;
  border-radius: 0.2rem;
}

.form-control-lg {
  height: calc(1.5em + 1rem + 2px);
  padding: 0.5rem 1rem;
  font-size: 1.25rem;
  line-height: 1.5;
  border-radius: 0.3rem;
}

select.form-control[size], select.form-control[multiple] {
  height: auto;
}

textarea.form-control {
  height: auto;
}

.form-group {
  margin-bottom: 1rem;
}

.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: #6c757d;
}

.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.875em;
  color: #28a745;
}

.valid-tooltip {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 5;
  display: none;
  max-width: 100%;
  padding: 0.25rem 0.5rem;
  margin-top: .1rem;
  font-size: 0.875rem;
  line-height: 1.5;
  color: #fff;
  background-color: rgba(40, 167, 69, 0.9);
  border-radius: 0.25rem;
}

.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 + 0.75rem) !important;
  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.1875rem) center;
  background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}

.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 select.form-control:valid, select.form-control.is-valid {
  padding-right: 3rem !important;
  background-position: right 1.5rem center;
}

.was-validated textarea.form-control:valid, textarea.form-control.is-valid {
  padding-right: calc(1.5em + 0.75rem);
  background-position: top calc(0.375em + 0.1875rem) right calc(0.375em + 0.1875rem);
}

.was-validated .custom-select:valid, .custom-select.is-valid {
  border-color: #28a745;
  padding-right: calc(0.75em + 2.3125rem) !important;
  background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") right 0.75rem center/8px 10px no-repeat, #fff 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 1.75rem/calc(0.75em + 0.375rem) calc(0.75em + 0.375rem) 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.875em;
  color: #dc3545;
}

.invalid-tooltip {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 5;
  display: none;
  max-width: 100%;
  padding: 0.25rem 0.5rem;
  margin-top: .1rem;
  font-size: 0.875rem;
  line-height: 1.5;
  color: #fff;
  background-color: rgba(220, 53, 69, 0.9);
  border-radius: 0.25rem;
}

.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 + 0.75rem) !important;
  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.1875rem) center;
  background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}

.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 select.form-control:invalid, select.form-control.is-invalid {
  padding-right: 3rem !important;
  background-position: right 1.5rem center;
}

.was-validated textarea.form-control:invalid, textarea.form-control.is-invalid {
  padding-right: calc(1.5em + 0.75rem);
  background-position: top calc(0.375em + 0.1875rem) right calc(0.375em + 0.1875rem);
}

.was-validated .custom-select:invalid, .custom-select.is-invalid {
  border-color: #dc3545;
  padding-right: calc(0.75em + 2.3125rem) !important;
  background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") right 0.75rem center/8px 10px no-repeat, #fff 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 1.75rem/calc(0.75em + 0.375rem) calc(0.75em + 0.375rem) 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: #212529;
  text-align: center;
  vertical-align: middle;
  user-select: none;
  background-color: transparent;
  border: 1px solid transparent;
  padding: 0.375rem 0.75rem;
  font-size: 1rem;
  line-height: 1.5;
  border-radius: 0.25rem;
  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: #212529;
  text-decoration: none;
}

.btn:focus, .btn.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

.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: #fff;
  background-color: #007bff;
  border-color: #007bff;
}

.btn-primary:hover {
  color: #fff;
  background-color: #0069d9;
  border-color: #0062cc;
}

.btn-primary:focus, .btn-primary.focus {
  color: #fff;
  background-color: #0069d9;
  border-color: #0062cc;
  box-shadow: 0 0 0 0.2rem rgba(38, 143, 255, 0.5);
}

.btn-primary.disabled, .btn-primary:disabled {
  color: #fff;
  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: #fff;
  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.2rem rgba(38, 143, 255, 0.5);
}

.btn-secondary {
  color: #fff;
  background-color: #6c757d;
  border-color: #6c757d;
}

.btn-secondary:hover {
  color: #fff;
  background-color: #5a6268;
  border-color: #545b62;
}

.btn-secondary:focus, .btn-secondary.focus {
  color: #fff;
  background-color: #5a6268;
  border-color: #545b62;
  box-shadow: 0 0 0 0.2rem rgba(130, 138, 145, 0.5);
}

.btn-secondary.disabled, .btn-secondary:disabled {
  color: #fff;
  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: #fff;
  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.2rem rgba(130, 138, 145, 0.5);
}

.btn-success {
  color: #fff;
  background-color: #28a745;
  border-color: #28a745;
}

.btn-success:hover {
  color: #fff;
  background-color: #218838;
  border-color: #1e7e34;
}

.btn-success:focus, .btn-success.focus {
  color: #fff;
  background-color: #218838;
  border-color: #1e7e34;
  box-shadow: 0 0 0 0.2rem rgba(72, 180, 97, 0.5);
}

.btn-success.disabled, .btn-success:disabled {
  color: #fff;
  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: #fff;
  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.2rem rgba(72, 180, 97, 0.5);
}

.btn-info {
  color: #fff;
  background-color: #17a2b8;
  border-color: #17a2b8;
}

.btn-info:hover {
  color: #fff;
  background-color: #138496;
  border-color: #117a8b;
}

.btn-info:focus, .btn-info.focus {
  color: #fff;
  background-color: #138496;
  border-color: #117a8b;
  box-shadow: 0 0 0 0.2rem rgba(58, 176, 195, 0.5);
}

.btn-info.disabled, .btn-info:disabled {
  color: #fff;
  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: #fff;
  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.2rem 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.2rem 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.2rem rgba(222, 170, 12, 0.5);
}

.btn-danger {
  color: #fff;
  background-color: #dc3545;
  border-color: #dc3545;
}

.btn-danger:hover {
  color: #fff;
  background-color: #c82333;
  border-color: #bd2130;
}

.btn-danger:focus, .btn-danger.focus {
  color: #fff;
  background-color: #c82333;
  border-color: #bd2130;
  box-shadow: 0 0 0 0.2rem rgba(225, 83, 97, 0.5);
}

.btn-danger.disabled, .btn-danger:disabled {
  color: #fff;
  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: #fff;
  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.2rem 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.2rem 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.2rem rgba(216, 217, 219, 0.5);
}

.btn-dark {
  color: #fff;
  background-color: #343a40;
  border-color: #343a40;
}

.btn-dark:hover {
  color: #fff;
  background-color: #23272b;
  border-color: #1d2124;
}

.btn-dark:focus, .btn-dark.focus {
  color: #fff;
  background-color: #23272b;
  border-color: #1d2124;
  box-shadow: 0 0 0 0.2rem rgba(82, 88, 93, 0.5);
}

.btn-dark.disabled, .btn-dark:disabled {
  color: #fff;
  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: #fff;
  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.2rem rgba(82, 88, 93, 0.5);
}

.btn-outline-primary {
  color: #007bff;
  border-color: #007bff;
}

.btn-outline-primary:hover {
  color: #fff;
  background-color: #007bff;
  border-color: #007bff;
}

.btn-outline-primary:focus, .btn-outline-primary.focus {
  box-shadow: 0 0 0 0.2rem 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: #fff;
  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.2rem rgba(0, 123, 255, 0.5);
}

.btn-outline-secondary {
  color: #6c757d;
  border-color: #6c757d;
}

.btn-outline-secondary:hover {
  color: #fff;
  background-color: #6c757d;
  border-color: #6c757d;
}

.btn-outline-secondary:focus, .btn-outline-secondary.focus {
  box-shadow: 0 0 0 0.2rem 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: #fff;
  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.2rem rgba(108, 117, 125, 0.5);
}

.btn-outline-success {
  color: #28a745;
  border-color: #28a745;
}

.btn-outline-success:hover {
  color: #fff;
  background-color: #28a745;
  border-color: #28a745;
}

.btn-outline-success:focus, .btn-outline-success.focus {
  box-shadow: 0 0 0 0.2rem 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: #fff;
  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.2rem rgba(40, 167, 69, 0.5);
}

.btn-outline-info {
  color: #17a2b8;
  border-color: #17a2b8;
}

.btn-outline-info:hover {
  color: #fff;
  background-color: #17a2b8;
  border-color: #17a2b8;
}

.btn-outline-info:focus, .btn-outline-info.focus {
  box-shadow: 0 0 0 0.2rem 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: #fff;
  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.2rem 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.2rem 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.2rem rgba(255, 193, 7, 0.5);
}

.btn-outline-danger {
  color: #dc3545;
  border-color: #dc3545;
}

.btn-outline-danger:hover {
  color: #fff;
  background-color: #dc3545;
  border-color: #dc3545;
}

.btn-outline-danger:focus, .btn-outline-danger.focus {
  box-shadow: 0 0 0 0.2rem 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: #fff;
  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.2rem 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.2rem 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.2rem rgba(248, 249, 250, 0.5);
}

.btn-outline-dark {
  color: #343a40;
  border-color: #343a40;
}

.btn-outline-dark:hover {
  color: #fff;
  background-color: #343a40;
  border-color: #343a40;
}

.btn-outline-dark:focus, .btn-outline-dark.focus {
  box-shadow: 0 0 0 0.2rem 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: #fff;
  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.2rem rgba(52, 58, 64, 0.5);
}

.btn-link {
  font-weight: 400;
  color: #007bff;
  text-decoration: none;
}

.btn-link:hover {
  color: #0056b3;
  text-decoration: underline;
}

.btn-link:focus, .btn-link.focus {
  text-decoration: underline;
}

.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: 0.3rem;
}

.btn-sm, .btn-group-sm > .btn {
  padding: 0.25rem 0.5rem;
  font-size: 0.875rem;
  line-height: 1.5;
  border-radius: 0.2rem;
}

.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;
  }
}

.collapsing.width {
  width: 0;
  height: auto;
  transition: width 0.35s ease;
}

@media (prefers-reduced-motion: reduce) {
  .collapsing.width {
    transition: none;
  }
}

.dropup,
.dropright,
.dropdown,
.dropleft {
  position: relative;
}

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

.dropdown-toggle::after {
  display: inline-block;
  margin-left: 0.255em;
  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.5rem 0;
  margin: 0.125rem 0 0;
  font-size: 1rem;
  color: #212529;
  text-align: left;
  list-style: none;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid rgba(0, 0, 0, 0.15);
  border-radius: 0.25rem;
}

.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.125rem;
}

.dropup .dropdown-toggle::after {
  display: inline-block;
  margin-left: 0.255em;
  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.125rem;
}

.dropright .dropdown-toggle::after {
  display: inline-block;
  margin-left: 0.255em;
  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.125rem;
}

.dropleft .dropdown-toggle::after {
  display: inline-block;
  margin-left: 0.255em;
  vertical-align: 0.255em;
  content: "";
}

.dropleft .dropdown-toggle::after {
  display: none;
}

.dropleft .dropdown-toggle::before {
  display: inline-block;
  margin-right: 0.255em;
  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 #e9ecef;
}

.dropdown-item {
  display: block;
  width: 100%;
  padding: 0.25rem 1.5rem;
  clear: both;
  font-weight: 400;
  color: #212529;
  text-align: inherit;
  white-space: nowrap;
  background-color: transparent;
  border: 0;
}

.dropdown-item:hover, .dropdown-item:focus {
  color: #16181b;
  text-decoration: none;
  background-color: #e9ecef;
}

.dropdown-item.active, .dropdown-item:active {
  color: #fff;
  text-decoration: none;
  background-color: #007bff;
}

.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.5rem 1.5rem;
  margin-bottom: 0;
  font-size: 0.875rem;
  color: #6c757d;
  white-space: nowrap;
}

.dropdown-item-text {
  display: block;
  padding: 0.25rem 1.5rem;
  color: #212529;
}

.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.5625rem;
  padding-left: 0.5625rem;
}

.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.375rem;
  padding-left: 0.375rem;
}

.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(:last-child) .custom-file-label::after {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.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,
.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,
.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.375rem 0.75rem;
  margin-bottom: 0;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #495057;
  text-align: center;
  white-space: nowrap;
  background-color: #e9ecef;
  border: 1px solid #ced4da;
  border-radius: 0.25rem;
}

.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.3rem;
}

.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.5rem;
  font-size: 0.875rem;
  line-height: 1.5;
  border-radius: 0.2rem;
}

.input-group-lg > .custom-select,
.input-group-sm > .custom-select {
  padding-right: 1.75rem;
}

.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: 1.5rem;
  print-color-adjust: exact;
}

.custom-control-inline {
  display: inline-flex;
  margin-right: 1rem;
}

.custom-control-input {
  position: absolute;
  left: 0;
  z-index: -1;
  width: 1rem;
  height: 1.25rem;
  opacity: 0;
}

.custom-control-input:checked ~ .custom-control-label::before {
  color: #fff;
  border-color: #007bff;
  background-color: #007bff;
}

.custom-control-input:focus ~ .custom-control-label::before {
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

.custom-control-input:focus:not(:checked) ~ .custom-control-label::before {
  border-color: #80bdff;
}

.custom-control-input:not(:disabled):active ~ .custom-control-label::before {
  color: #fff;
  background-color: #b3d7ff;
  border-color: #b3d7ff;
}

.custom-control-input[disabled] ~ .custom-control-label, .custom-control-input:disabled ~ .custom-control-label {
  color: #6c757d;
}

.custom-control-input[disabled] ~ .custom-control-label::before, .custom-control-input:disabled ~ .custom-control-label::before {
  background-color: #e9ecef;
}

.custom-control-label {
  position: relative;
  margin-bottom: 0;
  vertical-align: top;
}

.custom-control-label::before {
  position: absolute;
  top: 0.25rem;
  left: -1.5rem;
  display: block;
  width: 1rem;
  height: 1rem;
  pointer-events: none;
  content: "";
  background-color: #fff;
  border: 1px solid #adb5bd;
}

.custom-control-label::after {
  position: absolute;
  top: 0.25rem;
  left: -1.5rem;
  display: block;
  width: 1rem;
  height: 1rem;
  content: "";
  background: 50% / 50% 50% no-repeat;
}

.custom-checkbox .custom-control-label::before {
  border-radius: 0.25rem;
}

.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='%23fff' 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='%23fff' 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='%23fff'/%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: 2.25rem;
}

.custom-switch .custom-control-label::before {
  left: -2.25rem;
  width: 1.75rem;
  pointer-events: all;
  border-radius: 0.5rem;
}

.custom-switch .custom-control-label::after {
  top: calc(0.25rem + 2px);
  left: calc(-2.25rem + 2px);
  width: calc(1rem - 4px);
  height: calc(1rem - 4px);
  background-color: #adb5bd;
  border-radius: 0.5rem;
  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: #fff;
  transform: translateX(0.75rem);
}

.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 + 0.75rem + 2px);
  padding: 0.375rem 1.75rem 0.375rem 0.75rem;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #495057;
  vertical-align: middle;
  background: #fff url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") right 0.75rem center/8px 10px no-repeat;
  border: 1px solid #ced4da;
  border-radius: 0.25rem;
  appearance: none;
}

.custom-select:focus {
  border-color: #80bdff;
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

.custom-select:focus::-ms-value {
  color: #495057;
  background-color: #fff;
}

.custom-select[multiple], .custom-select[size]:not([size="1"]) {
  height: auto;
  padding-right: 0.75rem;
  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 #495057;
}

.custom-select-sm {
  height: calc(1.5em + 0.5rem + 2px);
  padding-top: 0.25rem;
  padding-bottom: 0.25rem;
  padding-left: 0.5rem;
  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 + 0.75rem + 2px);
  margin-bottom: 0;
}

.custom-file-input {
  position: relative;
  z-index: 2;
  width: 100%;
  height: calc(1.5em + 0.75rem + 2px);
  margin: 0;
  overflow: hidden;
  opacity: 0;
}

.custom-file-input:focus ~ .custom-file-label {
  border-color: #80bdff;
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

.custom-file-input[disabled] ~ .custom-file-label,
.custom-file-input:disabled ~ .custom-file-label {
  background-color: #e9ecef;
}

.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 + 0.75rem + 2px);
  padding: 0.375rem 0.75rem;
  overflow: hidden;
  font-weight: 400;
  line-height: 1.5;
  color: #495057;
  background-color: #fff;
  border: 1px solid #ced4da;
  border-radius: 0.25rem;
}

.custom-file-label::after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  z-index: 3;
  display: block;
  height: calc(1.5em + 0.75rem);
  padding: 0.375rem 0.75rem;
  line-height: 1.5;
  color: #495057;
  content: "Browse";
  background-color: #e9ecef;
  border-left: inherit;
  border-radius: 0 0.25rem 0.25rem 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 #fff, 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

.custom-range:focus::-moz-range-thumb {
  box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

.custom-range:focus::-ms-thumb {
  box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

.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: 0.5rem 1rem;
}

.nav-link:hover, .nav-link:focus {
  text-decoration: none;
}

.nav-link.disabled {
  color: #6c757d;
  pointer-events: none;
  cursor: default;
}

.nav-tabs {
  border-bottom: 1px solid #dee2e6;
}

.nav-tabs .nav-link {
  margin-bottom: -1px;
  background-color: transparent;
  border: 1px solid transparent;
  border-top-left-radius: 0.25rem;
  border-top-right-radius: 0.25rem;
}

.nav-tabs .nav-link:hover, .nav-tabs .nav-link:focus {
  isolation: isolate;
  border-color: #e9ecef #e9ecef #dee2e6;
}

.nav-tabs .nav-link.disabled {
  color: #6c757d;
  background-color: transparent;
  border-color: transparent;
}

.nav-tabs .nav-link.active,
.nav-tabs .nav-item.show .nav-link {
  color: #495057;
  background-color: #fff;
  border-color: #dee2e6 #dee2e6 #fff;
}

.nav-tabs .dropdown-menu {
  margin-top: -1px;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.nav-pills .nav-link {
  background: none;
  border: 0;
  border-radius: 0.25rem;
}

.nav-pills .nav-link.active,
.nav-pills .show > .nav-link {
  color: #fff;
  background-color: #007bff;
}

.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.3125rem;
  padding-bottom: 0.3125rem;
  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: 0.5rem;
  padding-bottom: 0.5rem;
}

.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: 0.25rem;
}

.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: #fff;
}

.navbar-dark .navbar-brand:hover, .navbar-dark .navbar-brand:focus {
  color: #fff;
}

.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: #fff;
}

.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: #fff;
}

.navbar-dark .navbar-text a:hover, .navbar-dark .navbar-text a:focus {
  color: #fff;
}

.card {
  position: relative;
  display: flex;
  flex-direction: column;
  min-width: 0;
  word-wrap: break-word;
  background-color: #fff;
  background-clip: border-box;
  border: 1px solid rgba(0, 0, 0, 0.125);
  border-radius: 0.25rem;
}

.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: calc(0.25rem - 1px);
  border-top-right-radius: calc(0.25rem - 1px);
}

.card > .list-group:last-child {
  border-bottom-width: 0;
  border-bottom-right-radius: calc(0.25rem - 1px);
  border-bottom-left-radius: calc(0.25rem - 1px);
}

.card > .card-header + .list-group,
.card > .list-group + .card-footer {
  border-top: 0;
}

.card-body {
  flex: 1 1 auto;
  min-height: 1px;
  padding: 1.25rem;
}

.card-title {
  margin-bottom: 0.75rem;
}

.card-subtitle {
  margin-top: -0.375rem;
  margin-bottom: 0;
}

.card-text:last-child {
  margin-bottom: 0;
}

.card-link:hover {
  text-decoration: none;
}

.card-link + .card-link {
  margin-left: 1.25rem;
}

.card-header {
  padding: 0.75rem 1.25rem;
  margin-bottom: 0;
  background-color: rgba(0, 0, 0, 0.03);
  border-bottom: 1px solid rgba(0, 0, 0, 0.125);
}

.card-header:first-child {
  border-radius: calc(0.25rem - 1px) calc(0.25rem - 1px) 0 0;
}

.card-footer {
  padding: 0.75rem 1.25rem;
  background-color: rgba(0, 0, 0, 0.03);
  border-top: 1px solid rgba(0, 0, 0, 0.125);
}

.card-footer:last-child {
  border-radius: 0 0 calc(0.25rem - 1px) calc(0.25rem - 1px);
}

.card-header-tabs {
  margin-right: -0.625rem;
  margin-bottom: -0.75rem;
  margin-left: -0.625rem;
  border-bottom: 0;
}

.card-header-pills {
  margin-right: -0.625rem;
  margin-left: -0.625rem;
}

.card-img-overlay {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  padding: 1.25rem;
  border-radius: calc(0.25rem - 1px);
}

.card-img,
.card-img-top,
.card-img-bottom {
  flex-shrink: 0;
  width: 100%;
}

.card-img,
.card-img-top {
  border-top-left-radius: calc(0.25rem - 1px);
  border-top-right-radius: calc(0.25rem - 1px);
}

.card-img,
.card-img-bottom {
  border-bottom-right-radius: calc(0.25rem - 1px);
  border-bottom-left-radius: calc(0.25rem - 1px);
}

.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: 0.75rem;
}

@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 1rem;
  margin-bottom: 1rem;
  list-style: none;
  background-color: #e9ecef;
  border-radius: 0.25rem;
}

.breadcrumb-item + .breadcrumb-item {
  padding-left: 0.5rem;
}

.breadcrumb-item + .breadcrumb-item::before {
  float: left;
  padding-right: 0.5rem;
  color: #6c757d;
  content: "/";
}

.breadcrumb-item + .breadcrumb-item:hover::before {
  text-decoration: underline;
}

.breadcrumb-item + .breadcrumb-item:hover::before {
  text-decoration: none;
}

.breadcrumb-item.active {
  color: #6c757d;
}

.pagination {
  display: flex;
  padding-left: 0;
  list-style: none;
  border-radius: 0.25rem;
}

.page-link {
  position: relative;
  display: block;
  padding: 0.5rem 0.75rem;
  margin-left: -1px;
  line-height: 1.25;
  color: #007bff;
  background-color: #fff;
  border: 1px solid #dee2e6;
}

.page-link:hover {
  z-index: 2;
  color: #0056b3;
  text-decoration: none;
  background-color: #e9ecef;
  border-color: #dee2e6;
}

.page-link:focus {
  z-index: 3;
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

.page-item:first-child .page-link {
  margin-left: 0;
  border-top-left-radius: 0.25rem;
  border-bottom-left-radius: 0.25rem;
}

.page-item:last-child .page-link {
  border-top-right-radius: 0.25rem;
  border-bottom-right-radius: 0.25rem;
}

.page-item.active .page-link {
  z-index: 3;
  color: #fff;
  background-color: #007bff;
  border-color: #007bff;
}

.page-item.disabled .page-link {
  color: #6c757d;
  pointer-events: none;
  cursor: auto;
  background-color: #fff;
  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: 0.3rem;
  border-bottom-left-radius: 0.3rem;
}

.pagination-lg .page-item:last-child .page-link {
  border-top-right-radius: 0.3rem;
  border-bottom-right-radius: 0.3rem;
}

.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: 0.2rem;
  border-bottom-left-radius: 0.2rem;
}

.pagination-sm .page-item:last-child .page-link {
  border-top-right-radius: 0.2rem;
  border-bottom-right-radius: 0.2rem;
}

.badge {
  display: inline-block;
  padding: 0.25em 0.4em;
  font-size: 75%;
  font-weight: 700;
  line-height: 1;
  text-align: center;
  white-space: nowrap;
  vertical-align: baseline;
  border-radius: 0.25rem;
  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: 0.6em;
  padding-left: 0.6em;
  border-radius: 10rem;
}

.badge-primary {
  color: #fff;
  background-color: #007bff;
}

a.badge-primary:hover, a.badge-primary:focus {
  color: #fff;
  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: #fff;
  background-color: #6c757d;
}

a.badge-secondary:hover, a.badge-secondary:focus {
  color: #fff;
  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: #fff;
  background-color: #28a745;
}

a.badge-success:hover, a.badge-success:focus {
  color: #fff;
  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: #fff;
  background-color: #17a2b8;
}

a.badge-info:hover, a.badge-info:focus {
  color: #fff;
  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: #fff;
  background-color: #dc3545;
}

a.badge-danger:hover, a.badge-danger:focus {
  color: #fff;
  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: #fff;
  background-color: #343a40;
}

a.badge-dark:hover, a.badge-dark:focus {
  color: #fff;
  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: #e9ecef;
  border-radius: 0.3rem;
}

@media (min-width: 576px) {
  .jumbotron {
    padding: 4rem 2rem;
  }
}

.jumbotron-fluid {
  padding-right: 0;
  padding-left: 0;
  border-radius: 0;
}

.alert {
  position: relative;
  padding: 0.75rem 1.25rem;
  margin-bottom: 1rem;
  border: 1px solid transparent;
  border-radius: 0.25rem;
}

.alert-heading {
  color: inherit;
}

.alert-link {
  font-weight: 700;
}

.alert-dismissible {
  padding-right: 4rem;
}

.alert-dismissible .close {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 2;
  padding: 0.75rem 1.25rem;
  color: inherit;
}

.alert-primary {
  color: #004085;
  background-color: #cce5ff;
  border-color: #b8daff;
}

.alert-primary hr {
  border-top-color: #9fcdff;
}

.alert-primary .alert-link {
  color: #002752;
}

.alert-secondary {
  color: #383d41;
  background-color: #e2e3e5;
  border-color: #d6d8db;
}

.alert-secondary hr {
  border-top-color: #c8cbcf;
}

.alert-secondary .alert-link {
  color: #202326;
}

.alert-success {
  color: #155724;
  background-color: #d4edda;
  border-color: #c3e6cb;
}

.alert-success hr {
  border-top-color: #b1dfbb;
}

.alert-success .alert-link {
  color: #0b2e13;
}

.alert-info {
  color: #0c5460;
  background-color: #d1ecf1;
  border-color: #bee5eb;
}

.alert-info hr {
  border-top-color: #abdde5;
}

.alert-info .alert-link {
  color: #062c33;
}

.alert-warning {
  color: #856404;
  background-color: #fff3cd;
  border-color: #ffeeba;
}

.alert-warning hr {
  border-top-color: #ffe8a1;
}

.alert-warning .alert-link {
  color: #533f03;
}

.alert-danger {
  color: #721c24;
  background-color: #f8d7da;
  border-color: #f5c6cb;
}

.alert-danger hr {
  border-top-color: #f1b0b7;
}

.alert-danger .alert-link {
  color: #491217;
}

.alert-light {
  color: #818182;
  background-color: #fefefe;
  border-color: #fdfdfe;
}

.alert-light hr {
  border-top-color: #ececf6;
}

.alert-light .alert-link {
  color: #686868;
}

.alert-dark {
  color: #1b1e21;
  background-color: #d6d8d9;
  border-color: #c6c8ca;
}

.alert-dark hr {
  border-top-color: #b9bbbe;
}

.alert-dark .alert-link {
  color: #040505;
}

@keyframes progress-bar-stripes {
  from {
    background-position: 1rem 0;
  }
  to {
    background-position: 0 0;
  }
}

.progress {
  display: flex;
  height: 1rem;
  overflow: hidden;
  line-height: 0;
  font-size: 0.75rem;
  background-color: #e9ecef;
  border-radius: 0.25rem;
}

.progress-bar {
  display: flex;
  flex-direction: column;
  justify-content: center;
  overflow: hidden;
  color: #fff;
  text-align: center;
  white-space: nowrap;
  background-color: #007bff;
  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: 1rem 1rem;
}

.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: 0.25rem;
}

.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: #f8f9fa;
}

.list-group-item-action:active {
  color: #212529;
  background-color: #e9ecef;
}

.list-group-item {
  position: relative;
  display: block;
  padding: 0.75rem 1.25rem;
  background-color: #fff;
  border: 1px 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: #fff;
}

.list-group-item.active {
  z-index: 2;
  color: #fff;
  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: -1px;
  border-top-width: 1px;
}

.list-group-horizontal {
  flex-direction: row;
}

.list-group-horizontal > .list-group-item:first-child {
  border-bottom-left-radius: 0.25rem;
  border-top-right-radius: 0;
}

.list-group-horizontal > .list-group-item:last-child {
  border-top-right-radius: 0.25rem;
  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: 1px;
  border-left-width: 0;
}

.list-group-horizontal > .list-group-item + .list-group-item.active {
  margin-left: -1px;
  border-left-width: 1px;
}

@media (min-width: 576px) {
  .list-group-horizontal-sm {
    flex-direction: row;
  }
  .list-group-horizontal-sm > .list-group-item:first-child {
    border-bottom-left-radius: 0.25rem;
    border-top-right-radius: 0;
  }
  .list-group-horizontal-sm > .list-group-item:last-child {
    border-top-right-radius: 0.25rem;
    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: 1px;
    border-left-width: 0;
  }
  .list-group-horizontal-sm > .list-group-item + .list-group-item.active {
    margin-left: -1px;
    border-left-width: 1px;
  }
}

@media (min-width: 768px) {
  .list-group-horizontal-md {
    flex-direction: row;
  }
  .list-group-horizontal-md > .list-group-item:first-child {
    border-bottom-left-radius: 0.25rem;
    border-top-right-radius: 0;
  }
  .list-group-horizontal-md > .list-group-item:last-child {
    border-top-right-radius: 0.25rem;
    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: 1px;
    border-left-width: 0;
  }
  .list-group-horizontal-md > .list-group-item + .list-group-item.active {
    margin-left: -1px;
    border-left-width: 1px;
  }
}

@media (min-width: 992px) {
  .list-group-horizontal-lg {
    flex-direction: row;
  }
  .list-group-horizontal-lg > .list-group-item:first-child {
    border-bottom-left-radius: 0.25rem;
    border-top-right-radius: 0;
  }
  .list-group-horizontal-lg > .list-group-item:last-child {
    border-top-right-radius: 0.25rem;
    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: 1px;
    border-left-width: 0;
  }
  .list-group-horizontal-lg > .list-group-item + .list-group-item.active {
    margin-left: -1px;
    border-left-width: 1px;
  }
}

@media (min-width: 1200px) {
  .list-group-horizontal-xl {
    flex-direction: row;
  }
  .list-group-horizontal-xl > .list-group-item:first-child {
    border-bottom-left-radius: 0.25rem;
    border-top-right-radius: 0;
  }
  .list-group-horizontal-xl > .list-group-item:last-child {
    border-top-right-radius: 0.25rem;
    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: 1px;
    border-left-width: 0;
  }
  .list-group-horizontal-xl > .list-group-item + .list-group-item.active {
    margin-left: -1px;
    border-left-width: 1px;
  }
}

.list-group-flush {
  border-radius: 0;
}

.list-group-flush > .list-group-item {
  border-width: 0 0 1px;
}

.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: #fff;
  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: #fff;
  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: #fff;
  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: #fff;
  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: #fff;
  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: #fff;
  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: #fff;
  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: #fff;
  background-color: #1b1e21;
  border-color: #1b1e21;
}

.close {
  float: right;
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1;
  color: #000;
  text-shadow: 0 1px 0 #fff;
  opacity: .5;
}

.close:hover {
  color: #000;
  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.875rem;
  background-color: rgba(255, 255, 255, 0.85);
  background-clip: padding-box;
  border: 1px solid rgba(0, 0, 0, 0.1);
  box-shadow: 0 0.25rem 0.75rem rgba(0, 0, 0, 0.1);
  opacity: 0;
  border-radius: 0.25rem;
}

.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.25rem 0.75rem;
  color: #6c757d;
  background-color: rgba(255, 255, 255, 0.85);
  background-clip: padding-box;
  border-bottom: 1px solid rgba(0, 0, 0, 0.05);
  border-top-left-radius: calc(0.25rem - 1px);
  border-top-right-radius: calc(0.25rem - 1px);
}

.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: #fff;
  background-clip: padding-box;
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 0.3rem;
  outline: 0;
}

.modal-backdrop {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1040;
  width: 100vw;
  height: 100vh;
  background-color: #000;
}

.modal-backdrop.fade {
  opacity: 0;
}

.modal-backdrop.show {
  opacity: 0.5;
}

.modal-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  padding: 1rem 1rem;
  border-bottom: 1px solid #dee2e6;
  border-top-left-radius: calc(0.3rem - 1px);
  border-top-right-radius: calc(0.3rem - 1px);
}

.modal-header .close {
  padding: 1rem 1rem;
  margin: -1rem -1rem -1rem auto;
}

.modal-title {
  margin-bottom: 0;
  line-height: 1.5;
}

.modal-body {
  position: relative;
  flex: 1 1 auto;
  padding: 1rem;
}

.modal-footer {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  padding: 0.75rem;
  border-top: 1px solid #dee2e6;
  border-bottom-right-radius: calc(0.3rem - 1px);
  border-bottom-left-radius: calc(0.3rem - 1px);
}

.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: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  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;
  white-space: normal;
  word-spacing: normal;
  line-break: auto;
  font-size: 0.875rem;
  word-wrap: break-word;
  opacity: 0;
}

.tooltip.show {
  opacity: 0.9;
}

.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: #000;
}

.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: #000;
}

.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: #000;
}

.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: #000;
}

.tooltip-inner {
  max-width: 200px;
  padding: 0.25rem 0.5rem;
  color: #fff;
  text-align: center;
  background-color: #000;
  border-radius: 0.25rem;
}

.popover {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1060;
  display: block;
  max-width: 276px;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  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;
  white-space: normal;
  word-spacing: normal;
  line-break: auto;
  font-size: 0.875rem;
  word-wrap: break-word;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 0.3rem;
}

.popover .arrow {
  position: absolute;
  display: block;
  width: 1rem;
  height: 0.5rem;
  margin: 0 0.3rem;
}

.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: rgba(0, 0, 0, 0.25);
}

.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: #fff;
}

.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: 0.3rem 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: rgba(0, 0, 0, 0.25);
}

.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: #fff;
}

.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: rgba(0, 0, 0, 0.25);
}

.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: #fff;
}

.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 #f7f7f7;
}

.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: 0.3rem 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: rgba(0, 0, 0, 0.25);
}

.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: #fff;
}

.popover-header {
  padding: 0.5rem 0.75rem;
  margin-bottom: 0;
  font-size: 1rem;
  background-color: #f7f7f7;
  border-bottom: 1px solid #ebebeb;
  border-top-left-radius: calc(0.3rem - 1px);
  border-top-right-radius: calc(0.3rem - 1px);
}

.popover-header:empty {
  display: none;
}

.popover-body {
  padding: 0.5rem 0.75rem;
  color: #212529;
}

.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%;
  padding: 0;
  color: #fff;
  text-align: center;
  background: none;
  border: 0;
  opacity: 0.5;
  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: #fff;
  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: 20px;
  height: 20px;
  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='%23fff' 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='%23fff' 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: #fff;
  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: #fff;
  text-align: center;
}

@keyframes spinner-border {
  to {
    transform: rotate(360deg);
  }
}

.spinner-border {
  display: inline-block;
  width: 2rem;
  height: 2rem;
  vertical-align: -0.125em;
  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: -0.125em;
  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: #fff !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: #fff !important;
}

.rounded-sm {
  border-radius: 0.2rem !important;
}

.rounded {
  border-radius: 0.25rem !important;
}

.rounded-top {
  border-top-left-radius: 0.25rem !important;
  border-top-right-radius: 0.25rem !important;
}

.rounded-right {
  border-top-right-radius: 0.25rem !important;
  border-bottom-right-radius: 0.25rem !important;
}

.rounded-bottom {
  border-bottom-right-radius: 0.25rem !important;
  border-bottom-left-radius: 0.25rem !important;
}

.rounded-left {
  border-top-left-radius: 0.25rem !important;
  border-bottom-left-radius: 0.25rem !important;
}

.rounded-lg {
  border-radius: 0.3rem !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: 700 !important;
}

.font-weight-bolder {
  font-weight: bolder !important;
}

.font-italic {
  font-style: italic !important;
}

.text-white {
  color: #fff !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: #212529 !important;
}

.text-muted {
  color: #6c757d !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;
  }
  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 #000;
  }
  .table {
    border-collapse: collapse !important;
  }
  .table td,
  .table th {
    background-color: #fff !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: #dee2e6;
  }
  .table .thead-dark th {
    color: inherit;
    border-color: #dee2e6;
  }
}

/*!
 * jQuery UI Datepicker 1.13.2
 * 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;
}

/**
 * easymde v2.17.0
 * Copyright Jeroen Akkerman
 * @link https://github.com/ionaru/easy-markdown-editor
 * @license MIT
 */
.CodeMirror {
  font-family: monospace;
  height: 300px;
  color: #000;
  direction: ltr;
}

.CodeMirror-lines {
  padding: 4px 0;
}

.CodeMirror pre.CodeMirror-line, .CodeMirror pre.CodeMirror-line-like {
  padding: 0 4px;
}

.CodeMirror-gutter-filler, .CodeMirror-scrollbar-filler {
  background-color: #fff;
}

.CodeMirror-gutters {
  border-right: 1px solid #ddd;
  background-color: #f7f7f7;
  white-space: nowrap;
}

.CodeMirror-linenumber {
  padding: 0 3px 0 5px;
  min-width: 20px;
  text-align: right;
  color: #999;
  white-space: nowrap;
}

.CodeMirror-guttermarker {
  color: #000;
}

.CodeMirror-guttermarker-subtle {
  color: #999;
}

.CodeMirror-cursor {
  border-left: 1px solid #000;
  border-right: none;
  width: 0;
}

.CodeMirror div.CodeMirror-secondarycursor {
  border-left: 1px solid silver;
}

.cm-fat-cursor .CodeMirror-cursor {
  width: auto;
  border: 0 !important;
  background: #7e7;
}

.cm-fat-cursor div.CodeMirror-cursors {
  z-index: 1;
}

.cm-fat-cursor .CodeMirror-line::selection, .cm-fat-cursor .CodeMirror-line > span::selection, .cm-fat-cursor .CodeMirror-line > span > span::selection {
  background: 0 0;
}

.cm-fat-cursor .CodeMirror-line::-moz-selection, .cm-fat-cursor .CodeMirror-line > span::-moz-selection, .cm-fat-cursor .CodeMirror-line > span > span::-moz-selection {
  background: 0 0;
}

.cm-fat-cursor {
  caret-color: transparent;
}

@-moz-keyframes blink {
  50% {
    background-color: transparent;
  }
}

@-webkit-keyframes blink {
  50% {
    background-color: transparent;
  }
}

@keyframes blink {
  50% {
    background-color: transparent;
  }
}

.cm-tab {
  display: inline-block;
  text-decoration: inherit;
}

.CodeMirror-rulers {
  position: absolute;
  left: 0;
  right: 0;
  top: -50px;
  bottom: 0;
  overflow: hidden;
}

.CodeMirror-ruler {
  border-left: 1px solid #ccc;
  top: 0;
  bottom: 0;
  position: absolute;
}

.cm-s-default .cm-header {
  color: #00f;
}

.cm-s-default .cm-quote {
  color: #090;
}

.cm-negative {
  color: #d44;
}

.cm-positive {
  color: #292;
}

.cm-header, .cm-strong {
  font-weight: 700;
}

.cm-em {
  font-style: italic;
}

.cm-link {
  text-decoration: underline;
}

.cm-strikethrough {
  text-decoration: line-through;
}

.cm-s-default .cm-keyword {
  color: #708;
}

.cm-s-default .cm-atom {
  color: #219;
}

.cm-s-default .cm-number {
  color: #164;
}

.cm-s-default .cm-def {
  color: #00f;
}

.cm-s-default .cm-variable-2 {
  color: #05a;
}

.cm-s-default .cm-type, .cm-s-default .cm-variable-3 {
  color: #085;
}

.cm-s-default .cm-comment {
  color: #a50;
}

.cm-s-default .cm-string {
  color: #a11;
}

.cm-s-default .cm-string-2 {
  color: #f50;
}

.cm-s-default .cm-meta {
  color: #555;
}

.cm-s-default .cm-qualifier {
  color: #555;
}

.cm-s-default .cm-builtin {
  color: #30a;
}

.cm-s-default .cm-bracket {
  color: #997;
}

.cm-s-default .cm-tag {
  color: #170;
}

.cm-s-default .cm-attribute {
  color: #00c;
}

.cm-s-default .cm-hr {
  color: #999;
}

.cm-s-default .cm-link {
  color: #00c;
}

.cm-s-default .cm-error {
  color: red;
}

.cm-invalidchar {
  color: red;
}

.CodeMirror-composing {
  border-bottom: 2px solid;
}

div.CodeMirror span.CodeMirror-matchingbracket {
  color: #0b0;
}

div.CodeMirror span.CodeMirror-nonmatchingbracket {
  color: #a22;
}

.CodeMirror-matchingtag {
  background: rgba(255, 150, 0, 0.3);
}

.CodeMirror-activeline-background {
  background: #e8f2ff;
}

.CodeMirror {
  position: relative;
  overflow: hidden;
  background: #fff;
}

.CodeMirror-scroll {
  overflow: scroll !important;
  margin-bottom: -50px;
  margin-right: -50px;
  padding-bottom: 50px;
  height: 100%;
  outline: 0;
  position: relative;
  z-index: 0;
}

.CodeMirror-sizer {
  position: relative;
  border-right: 50px solid transparent;
}

.CodeMirror-gutter-filler, .CodeMirror-hscrollbar, .CodeMirror-scrollbar-filler, .CodeMirror-vscrollbar {
  position: absolute;
  z-index: 6;
  display: none;
  outline: 0;
}

.CodeMirror-vscrollbar {
  right: 0;
  top: 0;
  overflow-x: hidden;
  overflow-y: scroll;
}

.CodeMirror-hscrollbar {
  bottom: 0;
  left: 0;
  overflow-y: hidden;
  overflow-x: scroll;
}

.CodeMirror-scrollbar-filler {
  right: 0;
  bottom: 0;
}

.CodeMirror-gutter-filler {
  left: 0;
  bottom: 0;
}

.CodeMirror-gutters {
  position: absolute;
  left: 0;
  top: 0;
  min-height: 100%;
  z-index: 3;
}

.CodeMirror-gutter {
  white-space: normal;
  height: 100%;
  display: inline-block;
  vertical-align: top;
  margin-bottom: -50px;
}

.CodeMirror-gutter-wrapper {
  position: absolute;
  z-index: 4;
  background: 0 0 !important;
  border: none !important;
}

.CodeMirror-gutter-background {
  position: absolute;
  top: 0;
  bottom: 0;
  z-index: 4;
}

.CodeMirror-gutter-elt {
  position: absolute;
  cursor: default;
  z-index: 4;
}

.CodeMirror-gutter-wrapper ::selection {
  background-color: transparent;
}

.CodeMirror-gutter-wrapper ::-moz-selection {
  background-color: transparent;
}

.CodeMirror-lines {
  cursor: text;
  min-height: 1px;
}

.CodeMirror pre.CodeMirror-line, .CodeMirror pre.CodeMirror-line-like {
  -moz-border-radius: 0;
  -webkit-border-radius: 0;
  border-radius: 0;
  border-width: 0;
  background: 0 0;
  font-family: inherit;
  font-size: inherit;
  margin: 0;
  white-space: pre;
  word-wrap: normal;
  line-height: inherit;
  color: inherit;
  z-index: 2;
  position: relative;
  overflow: visible;
  -webkit-tap-highlight-color: transparent;
  -webkit-font-variant-ligatures: contextual;
  font-variant-ligatures: contextual;
}

.CodeMirror-wrap pre.CodeMirror-line, .CodeMirror-wrap pre.CodeMirror-line-like {
  word-wrap: break-word;
  white-space: pre-wrap;
  word-break: normal;
}

.CodeMirror-linebackground {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  z-index: 0;
}

.CodeMirror-linewidget {
  position: relative;
  z-index: 2;
  padding: .1px;
}

.CodeMirror-rtl pre {
  direction: rtl;
}

.CodeMirror-code {
  outline: 0;
}

.CodeMirror-gutter, .CodeMirror-gutters, .CodeMirror-linenumber, .CodeMirror-scroll, .CodeMirror-sizer {
  -moz-box-sizing: content-box;
  box-sizing: content-box;
}

.CodeMirror-measure {
  position: absolute;
  width: 100%;
  height: 0;
  overflow: hidden;
  visibility: hidden;
}

.CodeMirror-cursor {
  position: absolute;
  pointer-events: none;
}

.CodeMirror-measure pre {
  position: static;
}

div.CodeMirror-cursors {
  visibility: hidden;
  position: relative;
  z-index: 3;
}

div.CodeMirror-dragcursors {
  visibility: visible;
}

.CodeMirror-focused div.CodeMirror-cursors {
  visibility: visible;
}

.CodeMirror-selected {
  background: #d9d9d9;
}

.CodeMirror-focused .CodeMirror-selected {
  background: #d7d4f0;
}

.CodeMirror-crosshair {
  cursor: crosshair;
}

.CodeMirror-line::selection, .CodeMirror-line > span::selection, .CodeMirror-line > span > span::selection {
  background: #d7d4f0;
}

.CodeMirror-line::-moz-selection, .CodeMirror-line > span::-moz-selection, .CodeMirror-line > span > span::-moz-selection {
  background: #d7d4f0;
}

.cm-searching {
  background-color: #ffa;
  background-color: rgba(255, 255, 0, 0.4);
}

.cm-force-border {
  padding-right: .1px;
}

@media print {
  .CodeMirror div.CodeMirror-cursors {
    visibility: hidden;
  }
}

.cm-tab-wrap-hack:after {
  content: '';
}

span.CodeMirror-selectedtext {
  background: 0 0;
}

.EasyMDEContainer {
  display: block;
}

.CodeMirror-rtl pre {
  direction: rtl;
}

.EasyMDEContainer.sided--no-fullscreen {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
}

.EasyMDEContainer .CodeMirror {
  box-sizing: border-box;
  height: auto;
  border: 1px solid #ced4da;
  border-bottom-left-radius: 4px;
  border-bottom-right-radius: 4px;
  padding: 10px;
  font: inherit;
  z-index: 0;
  word-wrap: break-word;
}

.EasyMDEContainer .CodeMirror-scroll {
  cursor: text;
}

.EasyMDEContainer .CodeMirror-fullscreen {
  background: #fff;
  position: fixed !important;
  top: 50px;
  left: 0;
  right: 0;
  bottom: 0;
  height: auto;
  z-index: 8;
  border-right: none !important;
  border-bottom-right-radius: 0 !important;
}

.EasyMDEContainer .CodeMirror-sided {
  width: 50% !important;
}

.EasyMDEContainer.sided--no-fullscreen .CodeMirror-sided {
  border-right: none !important;
  border-bottom-right-radius: 0;
  position: relative;
  flex: 1 1 auto;
}

.EasyMDEContainer .CodeMirror-placeholder {
  opacity: .5;
}

.EasyMDEContainer .CodeMirror-focused .CodeMirror-selected {
  background: #d9d9d9;
}

.editor-toolbar {
  position: relative;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  -o-user-select: none;
  user-select: none;
  padding: 9px 10px;
  border-top: 1px solid #ced4da;
  border-left: 1px solid #ced4da;
  border-right: 1px solid #ced4da;
  border-top-left-radius: 4px;
  border-top-right-radius: 4px;
}

.editor-toolbar.fullscreen {
  width: 100%;
  height: 50px;
  padding-top: 10px;
  padding-bottom: 10px;
  box-sizing: border-box;
  background: #fff;
  border: 0;
  position: fixed;
  top: 0;
  left: 0;
  opacity: 1;
  z-index: 9;
}

.editor-toolbar.fullscreen::before {
  width: 20px;
  height: 50px;
  background: -moz-linear-gradient(left, #fff 0, rgba(255, 255, 255, 0) 100%);
  background: -webkit-gradient(linear, left top, right top, color-stop(0, #fff), color-stop(100%, rgba(255, 255, 255, 0)));
  background: -webkit-linear-gradient(left, #fff 0, rgba(255, 255, 255, 0) 100%);
  background: -o-linear-gradient(left, #fff 0, rgba(255, 255, 255, 0) 100%);
  background: -ms-linear-gradient(left, #fff 0, rgba(255, 255, 255, 0) 100%);
  background: linear-gradient(to right, #fff 0, rgba(255, 255, 255, 0) 100%);
  position: fixed;
  top: 0;
  left: 0;
  margin: 0;
  padding: 0;
}

.editor-toolbar.fullscreen::after {
  width: 20px;
  height: 50px;
  background: -moz-linear-gradient(left, rgba(255, 255, 255, 0) 0, #fff 100%);
  background: -webkit-gradient(linear, left top, right top, color-stop(0, rgba(255, 255, 255, 0)), color-stop(100%, #fff));
  background: -webkit-linear-gradient(left, rgba(255, 255, 255, 0) 0, #fff 100%);
  background: -o-linear-gradient(left, rgba(255, 255, 255, 0) 0, #fff 100%);
  background: -ms-linear-gradient(left, rgba(255, 255, 255, 0) 0, #fff 100%);
  background: linear-gradient(to right, rgba(255, 255, 255, 0) 0, #fff 100%);
  position: fixed;
  top: 0;
  right: 0;
  margin: 0;
  padding: 0;
}

.EasyMDEContainer.sided--no-fullscreen .editor-toolbar {
  width: 100%;
}

.editor-toolbar .easymde-dropdown, .editor-toolbar button {
  background: 0 0;
  display: inline-block;
  text-align: center;
  text-decoration: none !important;
  height: 30px;
  margin: 0;
  padding: 0;
  border: 1px solid transparent;
  border-radius: 3px;
  cursor: pointer;
}

.editor-toolbar button {
  font-weight: 700;
  min-width: 30px;
  padding: 0 6px;
  white-space: nowrap;
}

.editor-toolbar button.active, .editor-toolbar button:hover {
  background: #fcfcfc;
  border-color: #95a5a6;
}

.editor-toolbar i.separator {
  display: inline-block;
  width: 0;
  border-left: 1px solid #d9d9d9;
  border-right: 1px solid #fff;
  color: transparent;
  text-indent: -10px;
  margin: 0 6px;
}

.editor-toolbar button:after {
  font-family: Arial,"Helvetica Neue",Helvetica,sans-serif;
  font-size: 65%;
  vertical-align: text-bottom;
  position: relative;
  top: 2px;
}

.editor-toolbar button.heading-1:after {
  content: "1";
}

.editor-toolbar button.heading-2:after {
  content: "2";
}

.editor-toolbar button.heading-3:after {
  content: "3";
}

.editor-toolbar button.heading-bigger:after {
  content: "▲";
}

.editor-toolbar button.heading-smaller:after {
  content: "▼";
}

.editor-toolbar.disabled-for-preview button:not(.no-disable) {
  opacity: .6;
  pointer-events: none;
}

@media only screen and (max-width: 700px) {
  .editor-toolbar i.no-mobile {
    display: none;
  }
}

.editor-statusbar {
  padding: 8px 10px;
  font-size: 12px;
  color: #959694;
  text-align: right;
}

.EasyMDEContainer.sided--no-fullscreen .editor-statusbar {
  width: 100%;
}

.editor-statusbar span {
  display: inline-block;
  min-width: 4em;
  margin-left: 1em;
}

.editor-statusbar .lines:before {
  content: 'lines: ';
}

.editor-statusbar .words:before {
  content: 'words: ';
}

.editor-statusbar .characters:before {
  content: 'characters: ';
}

.editor-preview-full {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 7;
  overflow: auto;
  display: none;
  box-sizing: border-box;
}

.editor-preview-side {
  position: fixed;
  bottom: 0;
  width: 50%;
  top: 50px;
  right: 0;
  z-index: 9;
  overflow: auto;
  display: none;
  box-sizing: border-box;
  border: 1px solid #ddd;
  word-wrap: break-word;
}

.editor-preview-active-side {
  display: block;
}

.EasyMDEContainer.sided--no-fullscreen .editor-preview-active-side {
  flex: 1 1 auto;
  height: auto;
  position: static;
}

.editor-preview-active {
  display: block;
}

.editor-preview {
  padding: 10px;
  background: #fafafa;
}

.editor-preview > p {
  margin-top: 0;
}

.editor-preview pre {
  background: #eee;
  margin-bottom: 10px;
}

.editor-preview table td, .editor-preview table th {
  border: 1px solid #ddd;
  padding: 5px;
}

.cm-s-easymde .cm-tag {
  color: #63a35c;
}

.cm-s-easymde .cm-attribute {
  color: #795da3;
}

.cm-s-easymde .cm-string {
  color: #183691;
}

.cm-s-easymde .cm-header-1 {
  font-size: calc(1.375rem + 1.5vw);
}

.cm-s-easymde .cm-header-2 {
  font-size: calc(1.325rem + .9vw);
}

.cm-s-easymde .cm-header-3 {
  font-size: calc(1.3rem + .6vw);
}

.cm-s-easymde .cm-header-4 {
  font-size: calc(1.275rem + .3vw);
}

.cm-s-easymde .cm-header-5 {
  font-size: 1.25rem;
}

.cm-s-easymde .cm-header-6 {
  font-size: 1rem;
}

.cm-s-easymde .cm-header-1, .cm-s-easymde .cm-header-2, .cm-s-easymde .cm-header-3, .cm-s-easymde .cm-header-4, .cm-s-easymde .cm-header-5, .cm-s-easymde .cm-header-6 {
  margin-bottom: .5rem;
  line-height: 1.2;
}

.cm-s-easymde .cm-comment {
  background: rgba(0, 0, 0, 0.05);
  border-radius: 2px;
}

.cm-s-easymde .cm-link {
  color: #7f8c8d;
}

.cm-s-easymde .cm-url {
  color: #aab2b3;
}

.cm-s-easymde .cm-quote {
  color: #7f8c8d;
  font-style: italic;
}

.editor-toolbar .easymde-dropdown {
  position: relative;
  background: linear-gradient(to bottom right, #fff 0, #fff 84%, #333 50%, #333 100%);
  border-radius: 0;
  border: 1px solid #fff;
}

.editor-toolbar .easymde-dropdown:hover {
  background: linear-gradient(to bottom right, #fff 0, #fff 84%, #333 50%, #333 100%);
}

.easymde-dropdown-content {
  display: block;
  visibility: hidden;
  position: absolute;
  background-color: #f9f9f9;
  box-shadow: 0 8px 16px 0 rgba(0, 0, 0, 0.2);
  padding: 8px;
  z-index: 2;
  top: 30px;
}

.easymde-dropdown:active .easymde-dropdown-content, .easymde-dropdown:focus .easymde-dropdown-content, .easymde-dropdown:focus-within .easymde-dropdown-content {
  visibility: visible;
}

.easymde-dropdown-content button {
  display: block;
}

span[data-img-src]::after {
  content: '';
  background-image: var(--bg-image);
  display: block;
  max-height: 100%;
  max-width: 100%;
  background-size: contain;
  height: 0;
  padding-top: var(--height);
  width: var(--width);
  background-repeat: no-repeat;
}

.CodeMirror .cm-spell-error:not(.cm-url):not(.cm-comment):not(.cm-tag):not(.cm-word) {
  background: rgba(255, 0, 0, 0.15);
}

/*
 * Table styles
 */
table.dataTable {
  width: 100%;
  margin: 0 auto;
  clear: both;
  border-collapse: separate;
  border-spacing: 0;
  /*
   * Header and footer styles
   */
  /*
   * Body styles
   */
}

table.dataTable thead th,
table.dataTable tfoot th {
  font-weight: bold;
}

table.dataTable thead th,
table.dataTable thead td {
  padding: 10px 18px;
  border-bottom: 1px solid #111;
}

table.dataTable thead th:active,
table.dataTable thead td:active {
  outline: none;
}

table.dataTable tfoot th,
table.dataTable tfoot td {
  padding: 10px 18px 6px 18px;
  border-top: 1px solid #111;
}

table.dataTable thead .sorting,
table.dataTable thead .sorting_asc,
table.dataTable thead .sorting_desc,
table.dataTable thead .sorting_asc_disabled,
table.dataTable thead .sorting_desc_disabled {
  cursor: pointer;
  *cursor: hand;
  background-repeat: no-repeat;
  background-position: center right;
}

table.dataTable thead .sorting {
  background-image: url("../images/sort_both.png");
}

table.dataTable thead .sorting_asc {
  background-image: url("../images/sort_asc.png");
}

table.dataTable thead .sorting_desc {
  background-image: url("../images/sort_desc.png");
}

table.dataTable thead .sorting_asc_disabled {
  background-image: url("../images/sort_asc_disabled.png");
}

table.dataTable thead .sorting_desc_disabled {
  background-image: url("../images/sort_desc_disabled.png");
}

table.dataTable tbody tr {
  background-color: #ffffff;
}

table.dataTable tbody tr.selected {
  background-color: #B0BED9;
}

table.dataTable tbody th,
table.dataTable tbody td {
  padding: 8px 10px;
}

table.dataTable.row-border tbody th, table.dataTable.row-border tbody td, table.dataTable.display tbody th, table.dataTable.display tbody td {
  border-top: 1px solid #ddd;
}

table.dataTable.row-border tbody tr:first-child th,
table.dataTable.row-border tbody tr:first-child td, table.dataTable.display tbody tr:first-child th,
table.dataTable.display tbody tr:first-child td {
  border-top: none;
}

table.dataTable.cell-border tbody th, table.dataTable.cell-border tbody td {
  border-top: 1px solid #ddd;
  border-right: 1px solid #ddd;
}

table.dataTable.cell-border tbody tr th:first-child,
table.dataTable.cell-border tbody tr td:first-child {
  border-left: 1px solid #ddd;
}

table.dataTable.cell-border tbody tr:first-child th,
table.dataTable.cell-border tbody tr:first-child td {
  border-top: none;
}

table.dataTable.stripe tbody tr.odd, table.dataTable.display tbody tr.odd {
  background-color: #f9f9f9;
}

table.dataTable.stripe tbody tr.odd.selected, table.dataTable.display tbody tr.odd.selected {
  background-color: #acbad4;
}

table.dataTable.hover tbody tr:hover, table.dataTable.display tbody tr:hover {
  background-color: #f6f6f6;
}

table.dataTable.hover tbody tr:hover.selected, table.dataTable.display tbody tr:hover.selected {
  background-color: #aab7d1;
}

table.dataTable.order-column tbody tr > .sorting_1,
table.dataTable.order-column tbody tr > .sorting_2,
table.dataTable.order-column tbody tr > .sorting_3, table.dataTable.display tbody tr > .sorting_1,
table.dataTable.display tbody tr > .sorting_2,
table.dataTable.display tbody tr > .sorting_3 {
  background-color: #fafafa;
}

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.display tbody tr.selected > .sorting_1,
table.dataTable.display tbody tr.selected > .sorting_2,
table.dataTable.display tbody tr.selected > .sorting_3 {
  background-color: #acbad5;
}

table.dataTable.display tbody tr.odd > .sorting_1, table.dataTable.order-column.stripe tbody tr.odd > .sorting_1 {
  background-color: #f1f1f1;
}

table.dataTable.display tbody tr.odd > .sorting_2, table.dataTable.order-column.stripe tbody tr.odd > .sorting_2 {
  background-color: #f3f3f3;
}

table.dataTable.display tbody tr.odd > .sorting_3, table.dataTable.order-column.stripe tbody tr.odd > .sorting_3 {
  background-color: whitesmoke;
}

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 > .sorting_1, table.dataTable.order-column.stripe tbody tr.even > .sorting_1 {
  background-color: #fafafa;
}

table.dataTable.display tbody tr.even > .sorting_2, table.dataTable.order-column.stripe tbody tr.even > .sorting_2 {
  background-color: #fcfcfc;
}

table.dataTable.display tbody tr.even > .sorting_3, table.dataTable.order-column.stripe tbody tr.even > .sorting_3 {
  background-color: #fefefe;
}

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:hover > .sorting_1, table.dataTable.order-column.hover tbody tr:hover > .sorting_1 {
  background-color: #eaeaea;
}

table.dataTable.display tbody tr:hover > .sorting_2, table.dataTable.order-column.hover tbody tr:hover > .sorting_2 {
  background-color: #ececec;
}

table.dataTable.display tbody tr:hover > .sorting_3, table.dataTable.order-column.hover tbody tr:hover > .sorting_3 {
  background-color: #efefef;
}

table.dataTable.display tbody tr:hover.selected > .sorting_1, table.dataTable.order-column.hover tbody tr:hover.selected > .sorting_1 {
  background-color: #a2aec7;
}

table.dataTable.display tbody tr:hover.selected > .sorting_2, table.dataTable.order-column.hover tbody tr:hover.selected > .sorting_2 {
  background-color: #a3b0c9;
}

table.dataTable.display tbody tr:hover.selected > .sorting_3, table.dataTable.order-column.hover tbody tr:hover.selected > .sorting_3 {
  background-color: #a5b2cb;
}

table.dataTable.no-footer {
  border-bottom: 1px solid #111;
}

table.dataTable.nowrap th, table.dataTable.nowrap td {
  white-space: nowrap;
}

table.dataTable.compact thead th,
table.dataTable.compact thead td {
  padding: 4px 17px 4px 4px;
}

table.dataTable.compact tfoot th,
table.dataTable.compact tfoot td {
  padding: 4px;
}

table.dataTable.compact tbody th,
table.dataTable.compact tbody td {
  padding: 4px;
}

table.dataTable th.dt-left,
table.dataTable td.dt-left {
  text-align: left;
}

table.dataTable th.dt-center,
table.dataTable td.dt-center,
table.dataTable td.dataTables_empty {
  text-align: center;
}

table.dataTable th.dt-right,
table.dataTable td.dt-right {
  text-align: right;
}

table.dataTable th.dt-justify,
table.dataTable td.dt-justify {
  text-align: justify;
}

table.dataTable th.dt-nowrap,
table.dataTable td.dt-nowrap {
  white-space: nowrap;
}

table.dataTable thead th.dt-head-left,
table.dataTable thead td.dt-head-left,
table.dataTable tfoot th.dt-head-left,
table.dataTable tfoot td.dt-head-left {
  text-align: left;
}

table.dataTable thead th.dt-head-center,
table.dataTable thead td.dt-head-center,
table.dataTable tfoot th.dt-head-center,
table.dataTable tfoot td.dt-head-center {
  text-align: center;
}

table.dataTable thead th.dt-head-right,
table.dataTable thead td.dt-head-right,
table.dataTable tfoot th.dt-head-right,
table.dataTable tfoot td.dt-head-right {
  text-align: right;
}

table.dataTable thead th.dt-head-justify,
table.dataTable thead td.dt-head-justify,
table.dataTable tfoot th.dt-head-justify,
table.dataTable tfoot td.dt-head-justify {
  text-align: justify;
}

table.dataTable thead th.dt-head-nowrap,
table.dataTable thead td.dt-head-nowrap,
table.dataTable tfoot th.dt-head-nowrap,
table.dataTable tfoot td.dt-head-nowrap {
  white-space: nowrap;
}

table.dataTable tbody th.dt-body-left,
table.dataTable tbody td.dt-body-left {
  text-align: left;
}

table.dataTable tbody th.dt-body-center,
table.dataTable tbody td.dt-body-center {
  text-align: center;
}

table.dataTable tbody th.dt-body-right,
table.dataTable tbody td.dt-body-right {
  text-align: right;
}

table.dataTable tbody th.dt-body-justify,
table.dataTable tbody td.dt-body-justify {
  text-align: justify;
}

table.dataTable tbody th.dt-body-nowrap,
table.dataTable tbody td.dt-body-nowrap {
  white-space: nowrap;
}

table.dataTable,
table.dataTable th,
table.dataTable td {
  box-sizing: content-box;
}

/*
 * Control feature layout
 */
.dataTables_wrapper {
  position: relative;
  clear: both;
  *zoom: 1;
  zoom: 1;
}

.dataTables_wrapper .dataTables_length {
  float: left;
}

.dataTables_wrapper .dataTables_filter {
  float: right;
  text-align: right;
}

.dataTables_wrapper .dataTables_filter input {
  margin-left: 0.5em;
}

.dataTables_wrapper .dataTables_info {
  clear: both;
  float: left;
  padding-top: 0.755em;
}

.dataTables_wrapper .dataTables_paginate {
  float: right;
  text-align: right;
  padding-top: 0.25em;
}

.dataTables_wrapper .dataTables_paginate .paginate_button {
  box-sizing: border-box;
  display: inline-block;
  min-width: 1.5em;
  padding: 0.5em 1em;
  margin-left: 2px;
  text-align: center;
  text-decoration: none !important;
  cursor: pointer;
  *cursor: hand;
  color: #333 !important;
  border: 1px solid transparent;
  border-radius: 2px;
}

.dataTables_wrapper .dataTables_paginate .paginate_button.current, .dataTables_wrapper .dataTables_paginate .paginate_button.current:hover {
  color: #333 !important;
  border: 1px solid #979797;
  background-color: white;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, white), color-stop(100%, #dcdcdc));
  /* Chrome,Safari4+ */
  background: -webkit-linear-gradient(top, white 0%, #dcdcdc 100%);
  /* Chrome10+,Safari5.1+ */
  background: -moz-linear-gradient(top, white 0%, #dcdcdc 100%);
  /* FF3.6+ */
  background: -ms-linear-gradient(top, white 0%, #dcdcdc 100%);
  /* IE10+ */
  background: -o-linear-gradient(top, white 0%, #dcdcdc 100%);
  /* Opera 11.10+ */
  background: linear-gradient(to bottom, white 0%, #dcdcdc 100%);
  /* W3C */
}

.dataTables_wrapper .dataTables_paginate .paginate_button.disabled, .dataTables_wrapper .dataTables_paginate .paginate_button.disabled:hover, .dataTables_wrapper .dataTables_paginate .paginate_button.disabled:active {
  cursor: default;
  color: #666 !important;
  border: 1px solid transparent;
  background: transparent;
  box-shadow: none;
}

.dataTables_wrapper .dataTables_paginate .paginate_button:hover {
  color: white !important;
  border: 1px solid #111;
  background-color: #585858;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #585858), color-stop(100%, #111));
  /* Chrome,Safari4+ */
  background: -webkit-linear-gradient(top, #585858 0%, #111 100%);
  /* Chrome10+,Safari5.1+ */
  background: -moz-linear-gradient(top, #585858 0%, #111 100%);
  /* FF3.6+ */
  background: -ms-linear-gradient(top, #585858 0%, #111 100%);
  /* IE10+ */
  background: -o-linear-gradient(top, #585858 0%, #111 100%);
  /* Opera 11.10+ */
  background: linear-gradient(to bottom, #585858 0%, #111 100%);
  /* W3C */
}

.dataTables_wrapper .dataTables_paginate .paginate_button:active {
  outline: none;
  background-color: #2b2b2b;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #2b2b2b), color-stop(100%, #0c0c0c));
  /* Chrome,Safari4+ */
  background: -webkit-linear-gradient(top, #2b2b2b 0%, #0c0c0c 100%);
  /* Chrome10+,Safari5.1+ */
  background: -moz-linear-gradient(top, #2b2b2b 0%, #0c0c0c 100%);
  /* FF3.6+ */
  background: -ms-linear-gradient(top, #2b2b2b 0%, #0c0c0c 100%);
  /* IE10+ */
  background: -o-linear-gradient(top, #2b2b2b 0%, #0c0c0c 100%);
  /* Opera 11.10+ */
  background: linear-gradient(to bottom, #2b2b2b 0%, #0c0c0c 100%);
  /* W3C */
  box-shadow: inset 0 0 3px #111;
}

.dataTables_wrapper .dataTables_paginate .ellipsis {
  padding: 0 1em;
}

.dataTables_wrapper .dataTables_processing {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  height: 40px;
  margin-left: -50%;
  margin-top: -25px;
  padding-top: 20px;
  text-align: center;
  font-size: 1.2em;
  background-color: white;
  background: -webkit-gradient(linear, left top, right top, color-stop(0%, rgba(255, 255, 255, 0)), color-stop(25%, rgba(255, 255, 255, 0.9)), color-stop(75%, rgba(255, 255, 255, 0.9)), color-stop(100%, rgba(255, 255, 255, 0)));
  background: -webkit-linear-gradient(left, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.9) 25%, rgba(255, 255, 255, 0.9) 75%, rgba(255, 255, 255, 0) 100%);
  background: -moz-linear-gradient(left, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.9) 25%, rgba(255, 255, 255, 0.9) 75%, rgba(255, 255, 255, 0) 100%);
  background: -ms-linear-gradient(left, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.9) 25%, rgba(255, 255, 255, 0.9) 75%, rgba(255, 255, 255, 0) 100%);
  background: -o-linear-gradient(left, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.9) 25%, rgba(255, 255, 255, 0.9) 75%, rgba(255, 255, 255, 0) 100%);
  background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.9) 25%, rgba(255, 255, 255, 0.9) 75%, rgba(255, 255, 255, 0) 100%);
}

.dataTables_wrapper .dataTables_length,
.dataTables_wrapper .dataTables_filter,
.dataTables_wrapper .dataTables_info,
.dataTables_wrapper .dataTables_processing,
.dataTables_wrapper .dataTables_paginate {
  color: #333;
}

.dataTables_wrapper .dataTables_scroll {
  clear: both;
}

.dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody {
  *margin-top: -1px;
  -webkit-overflow-scrolling: touch;
}

.dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody > table > thead > tr > th, .dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody > table > thead > tr > td, .dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody > table > tbody > tr > th, .dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody > table > tbody > tr > td {
  vertical-align: middle;
}

.dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody > table > thead > tr > th > div.dataTables_sizing,
.dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody > table > thead > tr > td > div.dataTables_sizing, .dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody > table > tbody > tr > th > div.dataTables_sizing,
.dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody > table > tbody > tr > td > div.dataTables_sizing {
  height: 0;
  overflow: hidden;
  margin: 0 !important;
  padding: 0 !important;
}

.dataTables_wrapper.no-footer .dataTables_scrollBody {
  border-bottom: 1px solid #111;
}

.dataTables_wrapper.no-footer div.dataTables_scrollHead table.dataTable,
.dataTables_wrapper.no-footer div.dataTables_scrollBody > table {
  border-bottom: none;
}

.dataTables_wrapper:after {
  visibility: hidden;
  display: block;
  content: "";
  clear: both;
  height: 0;
}

@media screen and (max-width: 767px) {
  .dataTables_wrapper .dataTables_info,
  .dataTables_wrapper .dataTables_paginate {
    float: none;
    text-align: center;
  }
  .dataTables_wrapper .dataTables_paginate {
    margin-top: 0.5em;
  }
}

@media screen and (max-width: 640px) {
  .dataTables_wrapper .dataTables_length,
  .dataTables_wrapper .dataTables_filter {
    float: none;
    text-align: center;
  }
  .dataTables_wrapper .dataTables_filter {
    margin-top: 0.5em;
  }
}

/**********************
        COLORS
**********************/
/* echelle de gris */
/* Sherpa */
/* ORCID */
/* arXiv */
/**********************
   TAILLE DES FONTS
**********************/
/**********************
   FONT COLOR AND WEIGHT
**********************/
.color-major-color, .color-major-color a {
  color: #00005c !important;
}

.color-sheader {
  color: #E9EDF0;
}

.color-white {
  color: #ffffff;
}

.color-black {
  color: #000000;
}

.hal-icon.disabled, .hal-icon.disabled:before {
  color: #cacaca;
}

.red, .red:before {
  color: #B94A48 !important;
}

.green, .green:before {
  color: #468847 !important;
}

.color-orcid {
  color: #a6ce39;
}

.deposit-type {
  font-weight: bold;
}

/* type deposit */
.deposit-status {
  font-weight: bold;
}

.deposit-status.status-11 {
  color: #468847;
}

.deposit-status.status-0, .deposit-status.status-9, .deposit-status.status-10 {
  color: #ff4600;
}

.deposit-status.status-1 {
  color: #337AB7;
}

.deposit-status.status-2 {
  color: #ff4600;
}

.tools-color {
  color: #124B89;
  font-weight: bold;
  font-size: 0.85rem;
}

.second-color {
  color: #337AB7 !important;
}

.icon-large, .text-large {
  font-size: 1.15rem;
}

.size-regular {
  font-size: 0.9rem !important;
}

.text-big {
  font-size: 3rem;
}

.text-xl {
  font-size: 1.5rem;
}

.text-xxl {
  font-size: 2.125rem;
}

.text-xxxl {
  font-size: 2.5rem;
}

.text-small {
  font-size: 0.85rem;
}

.text-xsmall {
  font-size: 0.7rem;
}

.text-one {
  font-size: 1rem;
}

.strong {
  font-weight: bold;
}

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

.center-text {
  text-align: center;
}

.go-back {
  color: #337AB7;
  font-weight: bold;
}

.icon {
  width: 20px;
}

.round-icon {
  font-size: 2rem;
  color: #ffffff;
  border-radius: 180px;
  padding: 30px;
  margin: auto;
  margin-bottom: 20px;
}

/**********************
    BORDER AND LIST
**********************/
.border-dark {
  border-color: #707070 !important;
}

.border-3 {
  border: 3px solid #e8e8e8;
}

.border-btm {
  padding-bottom: 20px;
  border-bottom: 1px solid #e8e8e8;
}

.no-style-list {
  list-style: none;
  padding: 0;
}

/**********************
   BACKGROUND-COLOR
**********************/
.valid-bg, .success-bg {
  background-color: #468847;
}

.warning-bg, .danger-bg {
  background-color: #B94A48;
}

.bgcolor-second, info-bg {
  background-color: #337AB7 !important;
}

.ui-menu a.ui-menu-item-wrapper {
  display: block;
}

.ui-autocomplete.ui-front.colorList .valid, .ui-autocomplete.ui-front.colorList .old, .ui-autocomplete.ui-front.colorList .incoming {
  display: block;
  width: 100%;
  padding: 0 0 5px 0;
}

.ui-autocomplete.ui-front.colorList .valid dl, .ui-autocomplete.ui-front.colorList .old dl, .ui-autocomplete.ui-front.colorList .incoming dl {
  margin: 0;
}

.ui-autocomplete.ui-front.colorList .valid, .ui-autocomplete.ui-front.colorList .valid dl {
  background-color: #dff0d8;
}

.ui-autocomplete.ui-front.colorList .old, .ui-autocomplete.ui-front.colorList .old dl {
  background-color: #fcf8e3;
}

.ui-autocomplete.ui-front.colorList .incoming, .ui-autocomplete.ui-front.colorList .incoming dl {
  background-color: #f2dede;
}

.ui-autocomplete.ui-front.colorList .ui-menu-item {
  padding: 0 0 4px 0;
}

.ui-autocomplete.ui-front.colorList li.ui-menu-item:hover {
  background-color: transparent !important;
}

/**********************
   PADDING ET MARGIN
**********************/
.pg-50 {
  padding: 30px 50px 60px 50px;
}

.pg-20 {
  padding: 20px 30px;
}

.center {
  margin-left: auto;
  margin-right: auto;
}

.mt-60 {
  margin-top: 60px;
  margin-bottom: 15px;
}

.block {
  display: block;
}

.m-deposit {
  margin: 75px 85px 10px 85px;
}

@media (max-width: 1199.98px) {
  .m-deposit {
    margin: 50px 20px 10px 20px;
  }
}

.icon-drag {
  cursor: move;
}

.btn-hal {
  border-radius: 0;
  border: none;
  transition: 0.3s;
}

.btn-link {
  background: none;
  border: none;
  outline: none !important;
}

.btn-primary-orange {
  background-color: #ff4600;
  color: #ffffff;
}

.btn-primary-orange:hover {
  background-color: #E23700;
}

.btn-primary-orange:disabled {
  background-color: #FE8158;
}

.btn-primary-blue {
  background-color: #337AB7;
  color: #ffffff;
}

.btn-primary-blue:hover {
  background-color: #09579A;
  color: #ffffff;
}

.btn-primary-blue:disabled {
  background-color: #759FCC;
  color: #ffffff;
}

.btn-primary-darkblue {
  background-color: #00005c;
  color: #ffffff;
}

.btn-primary-darkblue:hover {
  background-color: #2C1C97;
  color: #ffffff;
}

.btn-primary-darkblue:disabled {
  background-color: #ACA8C4;
  color: #ffffff;
}

.btn-primary-purple {
  background-color: #5E5B72;
  color: #ffffff;
}

.btn-primary-purple:hover {
  background-color: #757094;
  color: #ffffff;
}

.btn-primary-lightblue {
  background-color: #90A4B6;
  color: #ffffff;
}

.btn-primary-lightblue:hover {
  background-color: #647585;
  color: #ffffff;
}

.btn-secondary-blue {
  color: #337AB7;
}

.btn-secondary-blue:hover {
  color: #90A4B6;
}

.btn-secondary-grey {
  background-color: #e8e8e8;
  color: #000000;
}

.btn-secondary-grey:hover {
  background-color: #b9b9b9;
}

.btn-icon {
  background: none;
  border: none;
  outline: none !important;
  padding: 6px 9px 4px;
  border-radius: 50%;
}

.btn-icon:hover {
  background-color: #e8e8e8;
}

.btn-sherpa {
  background: none;
  border: 1px solid #21A66F;
  color: #21A66F;
}

.btn-sherpa:hover {
  background-color: #f8fcfb;
}

.sherpa-unknown {
  background: none;
  border: 1px solid #6b716f;
  color: #6b716f;
}

.btn-orcid {
  border: solid 1px #e8e8e8;
  border-radius: 0.25rem;
  padding: 5px;
}

.btn-orcid:hover {
  background-color: #e8e8e8;
}

.btn-default {
  color: #333;
  background-color: #fff;
  border-color: #ccc;
}

.btn-more {
  padding-left: 5px;
  padding-right: 5px;
}

.btn-action {
  padding: 2px 0;
}

.btn-norender {
  border: none;
  color: #337AB7;
}

.btn-cv-export {
  padding: 0px 12px;
}

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

[class^="icon-"], [class*=" icon-"], [class^="ui-icon-"], [class*=" ui-icon-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'icomoon' !important;
  speak: never;
  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;
}

.icon-linkedin:before {
  content: "\e990";
}

.icon-twitter:before {
  content: "\e991";
}

.icon-researchgate:before {
  content: "\e998";
}

.icon-text-color:before {
  content: "\e992";
}

.icon-users:before {
  content: "\e993";
}

.icon-translate:before {
  content: "\e994";
}

.icon-bien_commun:before {
  content: "\e995";
}

.icon-archives_services:before {
  content: "\e996";
}

.icon-rayonnement_international:before {
  content: "\e997";
}

.icon-communaute:before {
  content: "\e998";
}

.icon-idhal .path1:before {
  content: "\e999";
  color: black;
}

.icon-idhal .path2:before {
  content: "\e99a";
  margin-left: -1em;
  color: white;
}

.icon-idhal .path3:before {
  content: "\e99b";
  margin-left: -1em;
  color: white;
}

.icon-envelope:before {
  content: "\e99c";
}

.icon-notice:before {
  content: "\e98b";
}

.icon-open-access:before {
  content: "\e90f";
}

.icon-hal:before {
  content: "\e987";
}

.icon-pie-chart:before {
  content: "\e988";
}

.icon-rubber:before {
  content: "\e989";
}

.icon-users1:before {
  content: "\e96a";
}

.icon-upload_1:before {
  content: "\e96b";
}

.icon-transfer:before {
  content: "\e96c";
}

.icon-website:before {
  content: "\e96d";
}

.icon-save1:before {
  content: "\e96e";
}

.icon-init:before {
  content: "\e96f";
}

.icon-plus:before {
  content: "\e970";
}

.icon-plus_square:before {
  content: "\e971";
}

.icon-params:before {
  content: "\e972";
}

.icon-open:before {
  content: "\e973";
}

.icon-open_file:before {
  content: "\e974";
}

.icon-tools1:before {
  content: "\e975";
}

.icon-notice1:before {
  content: "\e976";
}

.icon-portal:before {
  content: "\e977";
}

.icon-message:before {
  content: "\e978";
}

.icon-structures:before {
  content: "\e979";
}

.icon-templates:before {
  content: "\e97a";
}

.icon-collections:before {
  content: "\e97b";
}

.icon-menu_close:before {
  content: "\e97c";
}

.icon-menu_open:before {
  content: "\e97d";
}

.icon-moderate:before {
  content: "\e97e";
}

.icon-ligne_actions:before {
  content: "\e97f";
}

.icon-info1:before {
  content: "\e980";
}

.icon-history:before {
  content: "\e981";
}

.icon-hierarchical:before {
  content: "\e982";
}

.icon-merge:before {
  content: "\e983";
}

.icon-close:before {
  content: "\e984";
}

.icon-directory:before {
  content: "\e985";
}

.icon-file:before {
  content: "\e965";
}

.icon-deposits:before {
  content: "\e966";
}

.icon-copy:before {
  content: "\e967";
}

.icon-warning:before {
  content: "\e968";
}

.icon-apply:before {
  content: "\e969";
}

.icon-orcid:before {
  content: "\e964";
}

.icon-actions:before {
  content: "\e963";
}

.icon-left:before {
  content: "\e961";
}

.icon-top:before {
  content: "\e98d";
}

.icon-bottom:before {
  content: "\e98e";
}

.icon-right:before {
  content: "\e962";
}

.icon-visibilite:before {
  content: "\e900";
}

.icon-upload:before {
  content: "\e901";
}

.icon-drop_down:before {
  content: "\e902";
}

.icon-DOI:before {
  content: "\e903";
}

.icon-arrow_top:before {
  content: "\e904";
}

.icon-arrow_down:before {
  content: "\e98c";
}

.icon-arrow_left:before {
  content: "\e905";
}

.icon-archivage:before {
  content: "\e906";
}

.icon-add:before {
  content: "\e907";
}

.icon-activite_miseajout_depot:before {
  content: "\e908";
}

.icon-Activite_ajout_biblio:before {
  content: "\e909";
}

.icon-typdoc_video:before {
  content: "\e90a";
}

.icon-typdoc_software:before {
  content: "\e90b";
}

.icon-more:before {
  content: "\e90c";
}

.icon-typdoc_mem:before {
  content: "\e90d";
}

.icon-typdoc_son:before {
  content: "\e90e";
}

.icon-typdoc_presconf:before {
  content: "\e910";
}

.icon-bookmark_fill:before {
  content: "\e911";
}

.icon-bookmark_fill2:before {
  content: "\e986";
}

.icon-retour_moderation:before {
  content: "\e912";
}

.icon-delete_from_collection:before {
  content: "\e913";
}

.icon-documentation:before {
  content: "\e914";
}

.icon-drag:before {
  content: "\e915";
}

.icon-person_added_notification:before {
  content: "\e916";
}

.icon-saved_search:before {
  content: "\e917";
}

.icon-calendar:before {
  content: "\e918";
}

.icon-change_password:before {
  content: "\e919";
}

.icon-chrono:before {
  content: "\e91a";
}

.icon-consulter:before {
  content: "\e91b";
}

.icon-delete_history:before {
  content: "\e91c";
}

.icon-demander_propriete:before {
  content: "\e91d";
}

.icon-en_moderation:before {
  content: "\e91e";
}

.icon-previsualiser:before {
  content: "\e91f";
}

.icon-save:before {
  content: "\e920";
}

.icon-scroll:before {
  content: "\e921";
}

.icon-typdoc_hdr:before {
  content: "\e922";
}

.icon-typdoc_art:before {
  content: "\e923";
}

.icon-typdoc_comm:before {
  content: "\e924";
}

.icon-typdoc_couv:before {
  content: "\e925";
}

.icon-typdoc_data:before {
  content: "\e926";
}

.icon-typdoc_douv:before {
  content: "\e927";
}

.icon-typdoc_img:before {
  content: "\e928";
}

.icon-typdoc_lecture:before {
  content: "\e929";
}

.icon-typdoc_map:before {
  content: "\e92a";
}

.icon-typdoc_other:before {
  content: "\e92b";
}

.icon-typdoc_ouv:before {
  content: "\e92c";
}

.icon-typdoc_patent:before {
  content: "\e92d";
}

.icon-typdoc_poster:before {
  content: "\e92e";
}

.icon-typdoc_report:before {
  content: "\e92f";
}

.icon-typdoc_these:before {
  content: "\e930";
}

.icon-typdoc_undefined:before {
  content: "\e931";
}

.icon-subdomaine:before {
  content: "\e932";
}

.icon-font_small:before {
  content: "\e933";
}

.icon-exit:before {
  content: "\e934";
}

.icon-font_big:before {
  content: "\e935";
}

.icon-refresh:before {
  content: "\e936";
}

.icon-sort:before {
  content: "\e937";
}

.icon-tools:before {
  content: "\e938";
}

.icon-visualize:before {
  content: "\e939";
}

.icon-download:before {
  content: "\e93a";
}

.icon-facebook:before {
  content: "\e93b";
}

.icon-info:before {
  content: "\e93c";
}

.icon-check:before {
  content: "\e93d";
}

.icon-institution:before {
  content: "\e93e";
}

.icon-not_valid:before {
  content: "\e93f";
}

.icon-rss:before {
  content: "\e940";
}

.icon-valid:before {
  content: "\e941";
}

.icon-add_file:before {
  content: "\e942";
}

.icon-delete:before {
  content: "\e943";
}

.icon-document:before {
  content: "\e944";
}

.icon-export:before {
  content: "\e945";
}

.icon-loi:before {
  content: "\e946";
}

.icon-notice_small:before {
  content: "\e947";
}

.icon-notifications:before {
  content: "\e948";
}

.icon-open_page:before {
  content: "\e949";
}

.icon-share:before {
  content: "\e94a";
}

.icon-add_collection:before {
  content: "\e94b";
}

.icon-edit:before {
  content: "\e94c";
}

.icon-filter:before {
  content: "\e94d";
}

.icon-hide:before {
  content: "\e94e";
}

.icon-star_fill:before {
  content: "\e94f";
}

.icon-star:before {
  content: "\e950";
}

.icon-add_user:before {
  content: "\e951";
}

.icon-bookmark:before {
  content: "\e952";
}

.icon-embargo:before {
  content: "\e953";
}

.icon-link:before {
  content: "\e954";
}

.icon-logout:before {
  content: "\e955";
}

.icon-notice2:before {
  content: "\e956";
}

.icon-pluridisciplinarite:before {
  content: "\e957";
}

.icon-search:before {
  content: "\e958";
}

.icon-use_model:before {
  content: "\e959";
}

.icon-administration:before {
  content: "\e95a";
}

.icon-dashboard:before {
  content: "\e95b";
}

.icon-depots:before {
  content: "\e95c";
}

.icon-library:before {
  content: "\e95d";
}

.icon-profil:before {
  content: "\e95e";
}

.icon-resume:before {
  content: "\e95f";
}

.icon-valorisation:before {
  content: "\e960";
}

.icon-dashboard-index:before {
  content: "\e95b";
}

.icon-user-index:before {
  content: "\e95e";
}

.icon-user-idhal:before {
  content: "\e987";
}

.icon-user-cv:before {
  content: "\e95f";
}

.icon-user-submissions:before {
  content: "\e95c";
}

.icon-user-library:before {
  content: "\e95d";
}

.icon-user-docowner:before {
  content: "\e94a";
}

.icon-user-ownership-requests:before {
  content: "\e91d";
}

.icon-external-doc:before {
  content: "\e964";
  font-size: 16px;
}

.icon-actions {
  font-size: 1.15rem;
}

.icon-actions.xxl {
  font-size: 2.125rem;
}

.icon-user-collections:before {
  content: "\e97b";
}

.icon-collection-list:before {
  content: "\e972";
}

.icon-website-index:before {
  content: "\e96d";
}

.icon-stat-dashboard:before {
  content: "\e988";
}

.icon-patrol-index:before {
  content: "\e97e";
}

.icon-moderate-index:before {
  content: "\e97e";
}

.icon-validate-index:before {
  content: "\e97e";
}

.icon-administrate-index:before {
  content: "\e975";
}

.ui-icon-circle-triangle-w:before {
  content: "\e961";
}

.ui-icon-circle-triangle-e:before {
  content: "\e962";
}

.icon-music {
  content: "\e90e";
}

.icon-film {
  content: "\e90a";
}

.icon-picture {
  content: "\e928";
}

.fa-check:before {
  content: "\e93d";
}

.fa-times:before {
  content: "\e934";
}

.icon-typdoc_proceedings:before {
  content: "\e927";
}

.icon-typdoc_notice:before {
  content: "\e947";
}

.icon-typdoc_blog:before {
  content: "\e96d";
}

.icon-typdoc_issue:before {
  content: "\e910";
}

.icon-typdoc_trad:before {
  content: "\e994";
}

/*************************
          STYLE
*************************/
.typdoc, .doc-identifier, .doc-arxiv, .browse-filter, .doc-orcid {
  background-color: #86839D;
  padding: 5px 8px;
  color: #ffffff;
  font-weight: bold;
  font-size: 0.85rem;
  line-height: 2.5;
}

.typdoc a, .typdoc a:hover, .typdoc a:active, .doc-identifier a, .doc-identifier a:hover, .doc-identifier a:active, .doc-arxiv a, .doc-arxiv a:hover, .doc-arxiv a:active, .browse-filter a, .browse-filter a:hover, .browse-filter a:active, .doc-orcid a, .doc-orcid a:hover, .doc-orcid a:active {
  color: #ffffff;
}

.doc-identifier {
  background-color: #5E5B72;
}

.doc-arxiv {
  background-color: #b31b1b;
}

.doc-orcid {
  border: 1px solid #a6ce39;
  color: #a6ce39;
  font-weight: normal;
  background-color: #ffffff;
}

.section-shadow {
  box-shadow: 0px 3px 6px #00000029;
  margin-bottom: 18px;
  background-color: #ffffff;
}

/*************************
    PRIMARY BUTTONS
*************************/
.hal-submit-button, .hal-option-button, .hal-visualize-button, .hal-save-button, .hal-privilege-button, .hal-warning-button, .hal-login-button, .hal-secondary-button, a.hal-secondary-button, .hal-bgtext, a.hal-bgtext, .hal-valid-submit-btn, .btn-primary-orange {
  border: none;
  border-radius: 0;
  color: #ffffff;
  font-weight: bold;
  font-size: 1.15rem;
  cursor: pointer;
  text-align: center;
}

.hal-submit-button a, .hal-option-button a, .hal-visualize-button a, .hal-save-button a, .hal-privilege-button a, .hal-warning-button a, .hal-login-button a, .hal-secondary-button a, .hal-bgtext a, .hal-valid-submit-btn a, .btn-primary-orange a {
  color: #ffffff;
  text-align: center;
}

.hal-submit-button:hover, .hal-option-button:hover, .hal-visualize-button:hover, .hal-save-button:hover, .hal-privilege-button:hover, .hal-warning-button:hover, .hal-login-button:hover, .hal-secondary-button:hover, .hal-bgtext:hover, .hal-valid-submit-btn:hover, .btn-primary-orange:hover {
  color: #ffffff;
}

.hal-submit-button {
  padding: 19px 18px 16px 18px;
  margin-right: -1px;
  white-space: nowrap;
}

.hal-submit-button span.hal-icon {
  margin-right: 20px;
}

.hal-option-button {
  background-color: #337AB7;
  padding: 12px 40px;
  text-align: center;
}

.hal-option-button span.hal-icon {
  margin-right: 20px;
}

.hal-option-button:hover {
  background-color: #09579A;
}

.hal-option-button:disabled {
  background-color: #759FCC;
  cursor: unset;
}

.hal-option-button-disabled {
  background-color: #759FCC;
}

.hal-visualize-button {
  font-size: 0.9rem;
  background-color: #00005c;
  padding: 14px 40px;
}

.hal-visualize-button span.hal-icon {
  margin-right: 20px;
}

.hal-visualize-button:hover {
  background-color: #2C1C97;
}

.hal-visualize-button:disabled {
  background-color: #ACA8C4;
  cursor: unset;
}

.hal-save-button {
  background-color: #337AB7;
  font-size: 0.85rem;
}

.hal-save-button:hover {
  background-color: #09579A;
}

.hal-save-button:disabled {
  background-color: #759FCC;
  cursor: unset;
}

.hal-privilege-button {
  font-size: 0.9rem;
  background-color: #495572;
  padding: 14px 40px;
}

.hal-privilege-button span.hal-icon {
  margin-right: 20px;
}

.hal-privilege-button:hover {
  background-color: #90A4B6;
}

.hal-privilege-button:disabled {
  background-color: #90A4B6;
  cursor: unset;
}

.hal-warning-button {
  font-size: 0.9rem;
  background-color: #B94A48;
  padding: 14px 40px;
}

.hal-warning-button span.hal-icon {
  margin-right: 20px;
}

.hal-warning-button span.hal-icon::before {
  color: #ffffff;
}

.hal-warning-button:hover {
  background-color: #B32E2C;
}

.hal-warning-button:disabled {
  background-color: #F1D1D4;
  cursor: unset;
}

/*************************
    SECONDARY BUTTONS
*************************/
.hal-login-button {
  color: #ffffff;
  font-size: 0.9rem;
  font-weight: normal;
  margin-right: 10px;
}

.hal-login-button:hover {
  color: #ff4600;
}

.hal-secondary-button, a.hal-secondary-button {
  background-color: transparent;
  color: #337AB7;
  font-size: 0.9rem;
}

.hal-secondary-button span, a.hal-secondary-button span {
  color: #337AB7;
}

.hal-secondary-button span.hal-icon, a.hal-secondary-button span.hal-icon {
  margin-right: 12px;
}

.hal-secondary-button:hover, .hal-secondary-button:hover span, a.hal-secondary-button:hover, a.hal-secondary-button:hover span {
  cursor: pointer;
  color: #90A4B6;
}

.hal-bgtext, a.hal-bgtext {
  background-color: #e8e8e8;
  padding: 10px;
  color: #000000;
  font-weight: normal;
  text-decoration: none;
  margin-right: 10px;
  display: inline !important;
  line-height: 3.5rem;
}

.hal-bgtext:hover, a.hal-bgtext:hover {
  cursor: pointer;
  background-color: #b9b9b9;
}

.hal-advexport {
  background-color: #337AB7;
  padding: 10px;
  color: #ffffff !important;
  margin-right: 10px;
  display: inline !important;
  line-height: 3.5rem;
}

.hal-advexport:hover {
  cursor: pointer;
  background-color: #09579A;
  color: #ffffff;
}

.hal-bguser {
  border-radius: 0;
  background-color: #90A4B6;
  color: #ffffff;
  display: inline-flex;
  padding: 5px;
}

/*************************
        SEARCH BAR
*************************/
.hal-second-search-input {
  border: none;
  border-bottom: solid 2px #337AB7;
  padding-right: 50px;
  padding-bottom: 5px;
  padding-top: 10px;
  color: #00005c;
}

.hal-second-search-input::placeholder {
  color: #cacaca;
}

.hal-main-search-input {
  border: none;
  height: 48px;
  color: #00005c;
  width: 100%;
  background-color: #ffffff;
  background-image: linear-gradient(0deg, #ff4600 50%, #0000 50%);
  background-repeat: no-repeat;
  background-size: 0px;
  background-position: 50%;
  background-position-y: 20px;
  transition: 0.3s cubic-bezier(0.25, 0.8, 0.5, 1);
}

.hal-main-search-input::placeholder {
  color: #cacaca;
}

#littleSearchBar {
  padding-left: 50px;
}

#littleSearchBar:focus-visible {
  /* Changement de la couleur de la Bordure de la barre de recherche */
  outline: 0px;
  background-size: 100%;
}

#littleSearchBar:hover {
  /* === Ombre au suvole de la barre de recherche === */
  box-shadow: 0 3px 8px 0 #0000004f;
}

.hal-main-search-button {
  border: none;
  background-color: transparent;
  color: #337AB7;
  font-size: 1.15rem;
  position: absolute;
  top: 15px;
}

.hal-main-advsearch-button {
  font-size: 0.6875rem;
  background-color: transparent;
  border: none;
  position: relative;
  top: -34px;
  left: 95%;
  z-index: 1;
  color: #979797;
}

/*************************
          PANEL
*************************/
.panel-doc > button:first-child {
  color: #000000;
  font-weight: bold;
  width: 100%;
  text-align: left;
  background-color: #f4f4f4;
  border-radius: 0;
  border: none;
  border-bottom: 1px solid #e8e8e8;
  margin-top: 40px;
  padding: 6px 12px;
}

.panel-doc > button:first-child span {
  font-size: .5rem;
  transform: rotate(-90deg);
  display: inline-block;
}

.panel-doc .panel-doc-detailed {
  background-color: #f4f4f4;
}

.panel-doc .panel-doc-detailed h5 {
  font-size: calc(0.9rem + .1rem);
}

ul.nav-pills.light-border a {
  border-radius: 0;
  background-color: transparent;
  color: #337AB7;
  border: 1px solid #337AB7;
  margin-left: 5px;
}

ul.nav-pills.light-border a.active {
  background-color: #337AB7;
  color: #ffffff;
  font-weight: bold;
}

ul.nav-pills.light-border a.active:hover {
  cursor: initial;
}

ul.nav-pills.light-border a:not(.active):hover {
  background-color: #90A4B6;
  border: 1px solid #90A4B6;
}

/**********************
        TOOLS
**********************/
.ui-tooltip.ui-widget-content {
  box-shadow: none;
  border: none !important;
  background-color: #373737;
  color: #ffffff;
  border-radius: 0;
  font-size: 0.7rem;
  padding: 4px;
  margin-top: -10px;
  position: absolute !important;
}

button[data-toggle-second='tooltip'] {
  background-color: transparent;
  border: none;
  color: #cacaca;
}

button.no-arrow::after {
  content: none;
}

button[data-toggle-second="tooltip"]:hover, button[data-toggle-second="tooltip"]:focus,
.show > button[data-toggle-second="tooltip"].btn-secondary.dropdown-toggle, .focus-round:focus, .focus-round:hover {
  color: #00005c;
  background-color: rgba(204, 216, 229, 0.34);
  border-radius: 180px;
}

.hide {
  display: none;
}

.form-error {
  display: none;
}

/**********************
       CHECKBOX
**********************/
[type="checkbox"]:not(:checked),
[type="checkbox"]:checked {
  /* Cache la checkbox sans
     la désactiver pour les
     lecteurs d'écran */
  width: 1px;
  left: 0;
  opacity: 0.01;
}

[type="checkbox"]:not(:checked):focus + label:before,
[type="checkbox"]:checked:focus + label:before {
  border-color: #80bdff;
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

/* on prépare le label */
[type="checkbox"]:not(:checked) + label,
[type="checkbox"]:checked + label {
  position: relative;
  /* permet de positionner les pseudo-éléments */
  padding-left: 2.3em;
  /* fait un peu d'espace pour notre case à venir */
  font-size: calc(0.9rem + .1rem);
  /* Label un peu plus gros */
  line-height: 1.15;
  cursor: pointer;
  /* affiche un curseur adapté */
}

/* Aspect de la case */
[type="checkbox"]:not(:checked) + label:before,
[type="checkbox"]:checked + label:before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  width: 1.4em;
  height: 1.4em;
  border: 1px solid #b9b9b9;
  background: #ffffff;
  transition: all .275s;
}

[type="checkbox"]:checked + label:before {
  background: #495572;
}

/* Aspect de la coche */
[type="checkbox"]:not(:checked) + label:after,
[type="checkbox"]:checked + label:after {
  content: '\2713';
  position: absolute;
  top: 0.55em;
  left: 0.2em;
  font-size: 1.3em;
  color: #ffffff;
  line-height: 0;
  font-weight: normal;
  transition: all .2s;
  /* Petite transition */
}

[type="checkbox"]:not(:checked) + label.tick:after,
[type="checkbox"]:checked + label.tick:after {
  content: '\2713';
  color: #ffffff;
}

[type="checkbox"]:checked + label.tick::before {
  background: #495572;
}

/* Aspect non cochée */
[type="checkbox"]:not(:checked) + label:after {
  opacity: 0;
  transform: scale(0) rotate(45deg);
}

/* Aspect cochée */
[type="checkbox"]:checked + label:after {
  opacity: 1;
  transform: scale(1) rotate(0);
}

/**********************
   WHITE TABLE
**********************/
.table-white {
  width: 100%;
}

.table-white .authors-results {
  font-weight: bold;
  color: #337AB7;
  font-size: 0.85rem;
}

.media {
  height: 94px;
  width: 74px;
}

.media img {
  background: #ffffff;
  width: 100%;
  border: 1px solid #e8e8e8;
  height: 100%;
}

.media span.icon-chrono {
  position: relative;
  top: 30px;
  left: -35px;
  font-size: 1.15rem;
  color: #86839D;
}

.media.not-file-img {
  position: relative;
  border-left: 2px solid #86839D;
  border-right: 2px solid #86839D;
}

.media.not-file-img::before, .media.not-file-img::after {
  border-top: 2px solid #86839D;
  border-bottom: 2px solid #86839D;
  width: 15px;
  height: 94px;
  content: "";
  position: absolute;
}

.media.not-file-img::after {
  margin-left: 56px !important;
}

.media.not-file-img .icon-open-access {
  left: 16px;
}

.media.not-file-img .icon {
  font-size: 40px;
  position: absolute;
  top: 24px;
  color: #86839D;
}

.media.not-file-img .icon-chrono, .media.not-file-img .icon-notice {
  left: 20px;
}

/**********************
        TOAST
**********************/
.toast {
  position: fixed;
  z-index: 2000;
  bottom: 0;
  left: 0;
  margin-left: 0.75rem;
  color: #ffffff;
  font-weight: bold;
  font-size: 0.9rem;
  max-width: none;
}

.toast.toast-warning {
  box-shadow: 0px 7px 7px rgba(66, 65, 65, 0.58);
}

.toast .toast-body {
  display: flex;
}

.toast .message {
  padding-right: 30px;
  padding-left: 25px;
  margin: auto;
}

.toast .message span:first-child {
  padding-right: 20px;
  font-size: 1.15rem;
}

.toast .message .flash-messages {
  font-weight: normal;
}

.toast .ml-2.mb-1.close {
  border-left: 1px solid #ffffff;
  padding-left: 25px;
  padding-right: 20px;
  color: #ffffff;
}

.toast .spinner-border {
  width: 1rem;
  height: 1rem;
}

/**********************
  INPUT WITH RIGHT BUTTON
**********************/
.input-button {
  margin-top: 10px;
  display: flex;
}

.input-button input {
  flex: auto !important;
}

.input-button button {
  margin-left: 16px;
  padding: 12px 20px;
}

/**********************
  SELECT 2 : HAL theme
**********************/
.select2-container--hal .select2-selection--multiple {
  background-color: white;
  border: 1px solid #aaa;
  cursor: text;
}

.select2-container--hal .select2-selection--multiple .select2-selection__rendered {
  width: 100%;
  list-style: none;
  margin: 0 0 5px;
}

.select2-container--hal .select2-selection--multiple .select2-selection__rendered li {
  margin-right: 10px;
  margin-top: 5px;
  padding: 0 5px;
  cursor: default;
  float: left;
}

.select2-container--hal .select2-selection--multiple .select2-selection__choice__remove {
  cursor: pointer;
  color: #ffffff;
  margin-right: 5px;
}

.select2-container--hal .select2-results > .select2-results__options {
  max-height: 200px;
  overflow-y: auto;
}

.select2-container--hal .select2-results > .select2-results__options .item-label {
  font-size: 10px;
  font-weight: bold;
}

.select2-container--hal .select2-selection {
  border-radius: 0 !important;
  border-color: #90A4B6;
}

.select2-container--hal .select2-selection__choice {
  background-color: #90A4B6 !important;
  color: #ffffff;
  border-color: #90A4B6 !important;
  border-radius: 0 !important;
  font-weight: normal;
  min-width: auto;
}

.select2-container--hal.select2-container--focus .select2-selection--multiple, .select2-selection:active, .select2-selection:focus {
  border-color: #124B89 !important;
}

#library_Modal .modal-dialog {
  width: 300px;
}

#library_Modal .modal-footer {
  padding-top: 0;
  justify-content: flex-end;
}

#library_Modal .modal-footer .cancel {
  padding: 0.375rem 0.75rem;
  font-size: 0.85rem;
}

#library-list .select2-container--hal .select2-selection--multiple .select2-selection__rendered .select2-search--inline {
  border: unset;
  margin: unset;
}

#library-list .select2-container--hal .select2-results__option {
  color: #337AB7;
  width: 100%;
}

#library-list .select2-container--hal .select2-results__option[aria-selected="true"] {
  background-color: #ddd;
}

#library-list .select2-container--hal .select2-results__options .select2-results__option--highlighted {
  color: #ffffff;
  background-color: #09579A;
}

#library-list .select2-container--hal .select2-selection__choice {
  background-color: #337AB7 !important;
  border-color: #337AB7 !important;
}

#library-list .shelf_value {
  font-size: 0.9rem;
}

.header-site {
  margin: 0 9.5%;
}

.website-navigation {
  min-height: 60px;
  padding-top: 10px;
  padding-bottom: 10px;
  background: #00005c;
}

.website-navigation a {
  line-height: 40px;
  color: #ffffff;
  font-size: 1.15rem;
  padding: 0 1rem !important;
}

.website-navigation .dropdown-menu a {
  color: #00005c;
}

.website-navigation .dropdown-menu li.nav-item:hover a {
  color: #00005c !important;
}

.website-navigation .dropdown-menu .dropdown-submenu {
  position: relative;
}

.website-navigation .dropdown-menu .dropdown-submenu > .dropdown-menu {
  top: 0;
  left: 100%;
  margin-top: -6px;
  margin-left: -1px;
}

.website-navigation .dropdown-menu .dropdown-submenu:hover {
  color: #00005c;
  background-color: inherit;
  font-weight: normal;
}

.website-navigation .dropdown-menu .dropdown-submenu:hover > .dropdown-item {
  text-decoration: underline;
}

.website-navigation .dropdown-menu .dropdown-submenu:hover > .dropdown-menu {
  display: block;
}

.custom-page .widget .widget-header {
  font-size: 20px;
  text-align: center;
  padding: 10px;
}

.custom-page .widget .widget-content {
  padding-bottom: 20px;
  padding-top: 1rem;
}

.custom-page .widget .widget-content ul {
  margin-bottom: 0;
}

.custom-page .widget .widget-feeds.accordion {
  margin-top: -1rem;
}

.custom-page .form-actions {
  margin: 2rem 0 0 0;
}

.blockquote-news {
  font-size: 0.85rem;
  border-left: 4px solid #337AB7;
  background: #E9EDF0;
  padding: 20px;
}

.news-title {
  color: #00005c;
}

.widget-content .ui.grid {
  margin: 1rem;
}

#homepage-search input {
  margin-bottom: -20px;
  padding-right: 30px;
  margin-top: -1rem;
}

#homepage-search button {
  right: 0;
  top: 0;
  z-index: 3;
}

#portals-list {
  margin: 50px 40px;
}

@media (max-width: 767.98px) {
  #portals-list {
    margin: 50px 0px;
  }
}

#portals-list .title {
  background-color: #f2f2f2;
  margin-bottom: 40px;
  margin-left: 0;
  margin-right: 0;
}

#portals-list .title h1 {
  font-size: 1.15rem;
  padding-left: 30px;
}

#portals-list .title h1, #portals-list .title .col-search {
  line-height: 80px;
}

#portals-list ul.list {
  border: none;
  padding: 0;
}

#portals-list ul.list .list-group-item {
  border-left: 0;
  border-right: 0;
  border-top: 0 !important;
  padding: 20px 0;
  border-bottom: 1px solid #e8e8e8 !important;
  margin-bottom: 0;
}

#portals-list ul.list .list-group-item:first-child {
  padding-top: 0;
}

#portals-list ul.list .list-group-item img {
  width: 140px;
}

#portals-list ul.list .list-group-item h4 {
  font-weight: bold;
  font-size: 1.5rem;
}

#portals-list ul.list .list-group-item p {
  line-height: 1;
}

#portals-list ul.list .list-group-item small {
  color: #979797;
  font-weight: bold;
  font-size: 0.7rem;
}

#portals-list ul.list .list-group-item a {
  color: inherit;
}

#portals-list ul.list .list-group-item .bloc-counter {
  background-color: #e8e8e8;
  color: #000000;
  padding: 7px 4px;
  margin-right: 10px;
  font-weight: bold;
  font-size: 0.7rem;
}

ul.pagination li {
  padding-bottom: 0;
}

ul.pagination li .page {
  color: #124B89;
}

.secondary-search {
  font-size: 1.15rem;
  border-bottom: 1px solid #337AB7;
  margin-right: 30px;
}

.secondary-search input {
  background: none;
  border: none;
}

.secondary-search input:focus {
  outline: 0;
}

.secondary-search input::placeholder {
  color: #cacaca;
  font-size: 0.85rem;
}

.secondary-search .icon-large::before {
  font-size: 1.15rem;
}

.browse-doctype h2 {
  margin-top: 40px;
}

.browse-doctype .section-shadow .typdoc-label {
  display: flex;
  align-items: center;
}

.browse-doctype .section-shadow .col-3 {
  padding-left: 10px;
  padding-right: 10px;
}

.browse-doctype .section-shadow .counter {
  padding: 20px 0 10px;
}

.browse-doctype .section-shadow .counter.total {
  background-color: #ACA8C4;
}

.browse-doctype .section-shadow .counter.nb {
  background-color: #edecf1;
}

.browse-doctype .section-shadow .nb {
  font-weight: bold;
  font-size: 1.5rem;
  color: #000000;
}

.browse-doctype .section-shadow p {
  font-weight: normal;
  font-size: 0.85rem;
}

.period-table {
  border: 0;
  border-radius: 0;
}

.period-table th {
  width: 15%;
  text-align: right;
}

.period-table td.td-values {
  width: 15%;
  text-align: right;
}

.period-table .btn {
  border-radius: 0;
  font-size: 0.9rem;
}

.period-table .btn-default {
  background-color: #ffffff;
  border-color: #cacaca;
}

.period-table .btn-default:hover {
  background-color: #e6e6e6;
}

.period-table thead tr {
  box-shadow: 1px 2px 3px #00000029;
}

.period-table thead tr th {
  padding: 20px;
  margin-bottom: 10px;
  border-bottom: 0;
}

.period-table tbody:before {
  line-height: 1.5em;
  content: "\200C";
  display: block;
}

.period-table tbody tr {
  box-shadow: 1px 0px 3px #00000029;
}

.period-table tbody tr:last-child {
  box-shadow: 1px 2px 3px #00000029;
}

.period-table tbody tr:hover, .period-table tbody tr.active {
  background: #EEF2F6;
}

.period-table tbody tr td {
  border-top: 0;
}

.browse-alphabet {
  margin: 20px 0 !important;
  flex-wrap: wrap;
}

.browse-alphabet li {
  margin: unset !important;
  padding: unset !important;
}

.browse-alphabet li a {
  position: relative;
  float: left;
  padding: 6px 12px;
  margin-left: -1px;
  line-height: 1.428571429;
  text-decoration: none;
  background-color: #ffffff;
  border: 1px solid #dedede;
  border-radius: 0 !important;
  color: #337AB7;
}

.browse-alphabet li a:hover {
  background: #EEF2F6;
}

.browse-alphabet li.active {
  border-bottom: unset !important;
}

.browse-alphabet li.active a {
  background: #5E5B72;
  color: #ffffff;
}

.browse-list {
  border-radius: 0;
}

.browse-list li a {
  color: #337AB7;
}

.browse-list li:hover {
  background: #EEF2F6;
}

#domain-element .head-list:before {
  content: unset;
}

#domain-element .tree li {
  list-style-type: none !important;
}

#domain-element [type="checkbox"]:not(:checked) + label:after {
  content: unset;
}

#domain-element [class^="icon-"], #domain-element [class*=" icon-"] {
  cursor: pointer;
}

/* List Export */
.export-list {
  list-style: none;
  padding-left: 0;
}

.export-list li {
  background-color: #E9EDF0;
  padding: 8px;
  margin-bottom: 6px;
}

.export-list li span {
  padding-right: 15px;
  color: #979797;
}

.export-list li label {
  padding-left: 60px !important;
}

.connected-navigation .list-group {
  border: 0;
}

.connected-navigation .list-group .list-group-item {
  padding-left: 15px;
  border: 0;
  border-left: 5px solid #ffffff;
  padding-right: 10px;
  color: #000000;
  border-radius: 0;
}

.connected-navigation .list-group .list-group-item::after {
  float: right;
  margin-right: 11px;
  margin-top: 6px;
}

.connected-navigation .list-group .list-group-item.active, .connected-navigation .list-group .list-group-item.active:hover {
  color: #00005c;
  border-left-color: #00005c;
  background-color: #EFEEF3;
}

.connected-navigation .list-group .list-group-item:hover {
  color: #00005c;
  background-color: #EFEEF3;
  border-left-color: #EFEEF3;
}

.connected-navigation .list-group .list-group-item span {
  display: inline-block;
  width: 30px;
}

.connected-navigation .list-group .list-group-item.list-group-item-action {
  text-align: left;
}

.connected-navigation .list-group .dropdown-menu .list-group-item span {
  display: none;
}

#idext .field {
  color: #797676;
  font-size: 0.85rem;
  font-weight: bold;
  width: 130px;
}

#idext .value {
  color: #000000;
  font-size: 0.85rem;
  font-weight: bold;
}

.account .field, .user-idhal .field, .preferences .field {
  color: #797676;
  font-weight: bold;
}

.account .value, .user-idhal .value, .preferences .value {
  color: #000000;
  font-weight: bold;
}

.account, .preferences, .user-idhal {
  position: relative;
}

.account tr:first-child td, .preferences tr:first-child td, .user-idhal tr:first-child td {
  border-top: none;
}

.account .btn-edit, .preferences .btn-edit, .user-idhal .btn-edit {
  position: absolute;
  top: 0;
  right: 0;
  height: 40px;
  width: 40px;
}

.account .btn-edit .icon, .preferences .btn-edit .icon, .user-idhal .btn-edit .icon {
  font-size: 1.15rem;
}

.account .btn-secondary-blue, .account .btn-secondary-blue .icon, .preferences .btn-secondary-blue, .preferences .btn-secondary-blue .icon, .user-idhal .btn-secondary-blue, .user-idhal .btn-secondary-blue .icon {
  font-size: 0.9rem;
}

.account .field, .account value, .user-idhal .field, .user-idhal value {
  font-size: 0.85rem;
}

.account .field, .user-idhal .field {
  width: 130px;
}

.preferences .field, .preferences .value {
  font-size: 0.9rem;
  width: inherit;
}

.preferences div.field, .preferences div.value {
  padding: 0.75rem;
  vertical-align: top;
  border-top: none;
}

.preferences .value {
  text-align: right !important;
}

@media (max-width: 767.98px) {
  .preferences .select2-container {
    width: 100% !important;
  }
}

.preferences .title-prepend {
  position: absolute;
  border-bottom: 2px solid #000000;
  width: 23px;
  height: 10px;
  left: -16px;
  top: 2px;
}

.preferences .hal-select {
  width: 150px;
  height: 35px;
  background: #f4f4f4;
  border-radius: 0 !important;
  border: none;
  font-weight: bold;
}

.preferences .hal-select:active, .preferences .hal-select:focus {
  outline: none !important;
}

.table-white tr, #partage_table tbody tr, #mydeposit tbody #ownsub tr {
  border-bottom: 1px solid #cacaca;
}

.table-white tr:hover, #partage_table tbody tr:hover, #mydeposit tbody #ownsub tr:hover, .table-white tr:focus, #partage_table tbody tr:focus, #mydeposit tbody #ownsub tr:focus {
  background-color: #EEF2F6;
  box-shadow: 0px 3px 6px #00000029;
}

.table-white tr:hover .icon-drag, #partage_table tbody tr:hover .icon-drag, #mydeposit tbody #ownsub tr:hover .icon-drag, .table-white tr:focus .icon-drag, #partage_table tbody tr:focus .icon-drag, #mydeposit tbody #ownsub tr:focus .icon-drag {
  color: #337AB7;
}

.table-white tr td:first-child, #partage_table tbody tr td:first-child, #mydeposit tbody #ownsub tr td:first-child {
  padding-left: 14px;
}

.table-white tr td, #partage_table tbody tr td, #mydeposit tbody #ownsub tr td {
  display: table-cell;
  vertical-align: middle;
  padding-top: 20px;
  padding-bottom: 20px;
}

#partage_table {
  width: 100%;
}

#partage-deposit #share-doc .form-group {
  display: flex;
  justify-content: center;
  align-items: baseline;
}

@media (max-width: 575.98px) {
  #partage-deposit #share-doc .form-group {
    flex-direction: column;
    align-items: center;
  }
}

#partage-deposit #share-doc #user {
  width: 400px;
}

#mydeposit {
  width: 100%;
}

#carouselDepots {
  height: 100%;
}

#carouselDepots .carousel-inner {
  height: 100%;
}

#carouselDepots .carousel-control-prev {
  justify-content: unset;
  bottom: unset;
  color: #337AB7;
  opacity: 1;
}

#carouselDepots .carousel-control-prev:hover, #carouselDepots .carousel-control-prev:focus {
  color: #337AB7;
}

.hal-modal {
  /***********************
    MON COMPTE
   ++++++++++++++++++++++*/
}

.hal-modal.modal-large .modal-dialog {
  max-width: 1000px !important;
}

.hal-modal .btn-changephoto, .hal-modal .btn-deletephoto, .hal-modal .btn-submiteditaccount {
  width: 200px;
  font-size: 0.85rem;
  font-weight: bold;
}

.hal-modal .btn-deletephoto {
  color: #B94A48;
}

.progress {
  height: 10px;
  border-radius: 0;
}

.progress .progress-bar {
  width: 0%;
  background-color: #00005c;
}

.bg-gray {
  background-color: #f4f4f4;
}

.no-library, .no-suggest, .no-favorite, .no-stat, .no-deposit, .no-activity, .no-cv {
  background-color: #E9EDF0;
  text-align: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.no-library > div, .no-suggest > div, .no-favorite > div, .no-stat > div, .no-deposit > div, .no-activity > div, .no-cv > div {
  width: 320px;
  margin: auto;
  font-size: 1.15rem;
}

.no-library .hal-submit-button, .no-suggest .hal-submit-button, .no-favorite .hal-submit-button, .no-stat .hal-submit-button, .no-deposit .hal-submit-button, .no-activity .hal-submit-button, .no-cv .hal-submit-button {
  padding: 10px 20px;
}

.info-no-document {
  color: #B94A48;
  margin: 20px;
}

.square {
  display: inline-block;
  height: 20px;
  width: 20px;
}

.square.square-added {
  background-color: #dff0d8;
}

.square.square-deleted {
  background-color: #f2dede;
}

.added-elm {
  background-color: #dff0d8;
}

.deleted-elm {
  background-color: #f2dede;
}

/*************************
    GENERAL TABLE
*************************/
.sort {
  font-weight: bold;
  color: #337AB7;
  cursor: pointer;
  border: none;
  background-color: transparent;
}

.sort:not(:last-child) {
  padding-right: 15px;
}

.sort span {
  transform: rotate(180deg);
  font-size: .3rem;
}

.sort.asc span {
  transform: rotate(0deg);
}

.sort.desc span {
  transform: rotate(180deg);
}

.table-user-tools .checkbox {
  width: 60px;
  padding-left: 14px;
  padding-top: 20px;
  padding-bottom: 20px;
  padding-right: 0px;
}

.table-user-tools .sort-library {
  text-align: center;
}

.table-user-tools .icons-library {
  display: flex;
  flex-wrap: wrap;
}

.table-user-tools .icons-searches .pop-over {
  right: unset;
}

/*************************
    MES FAVORIS
*************************/
.section-content .nav-pills .nav-item .nav-link {
  background-color: transparent;
  color: #000000;
  border-radius: 0;
  font-weight: bold;
  position: relative;
  cursor: pointer;
  font-size: calc(1.15rem - .1rem);
  margin-right: 20px;
}

.section-content .nav-pills .nav-item .nav-link::before {
  left: .7rem;
  bottom: 0;
  width: 90%;
  border-bottom: 1px solid #000000;
  position: absolute;
  content: "";
}

.section-content .nav-pills .nav-item .nav-link.active {
  color: #337AB7;
}

.section-content .nav-pills .nav-item .nav-link.active::before {
  border-bottom: 7px solid #337AB7;
}

.user-section-menu {
  padding: 30px 26px 0 26px !important;
  background-color: #f2f2f2;
  margin-bottom: 34px;
}

.searches-table [type="checkbox"]:not(:checked) + label {
  top: -8px;
}

.searches-table .row {
  align-items: center;
  justify-content: center;
}

.searches-table .row div:not(.search-date) {
  font-weight: bold;
}

.searches-table .row .icon-saved_search {
  font-size: 2.125rem;
}

.searches-table td:first-child {
  width: 60px;
}

.search-freq-list {
  text-align: center;
  list-style: none;
  padding: 0;
  background-color: #ffffff;
  color: #000000;
  font-weight: bold;
}

.search-freq-list li:hover {
  color: #ffffff;
  background-color: #337AB7;
  cursor: pointer;
}

.search-freq-list li.disabled:hover {
  cursor: not-allowed;
}

.search-freq-div {
  max-width: 250px;
  padding: 0 20px 10px 20px;
  background-color: #f2f2f2;
}

.search-freq-div span {
  font-size: 0.85rem;
  color: #646464;
}

.dropdown-search > li button > span:first-child, .dropdown-search > li a > span:first-child, .dropdown-library > li button > span:first-child, .dropdown-library > li a > span:first-child {
  margin-left: -10px;
  margin-right: 10px;
}

.dropdown-search > li button > span:first-child:before, .dropdown-search > li a > span:first-child:before, .dropdown-library > li button > span:first-child:before, .dropdown-library > li a > span:first-child:before {
  color: unset;
}

.dropdown-search .hal-option-button > span, .dropdown-library .hal-option-button > span {
  margin: unset !important;
}

.dropdown-search li .btn-secondary:focus, .dropdown-search li .btn-secondary:hover, .dropdown-library li .btn-secondary:focus, .dropdown-library li .btn-secondary:hover {
  background-color: #337AB7;
}

.dropdown-library {
  max-width: 300px;
}

label[for="select-all-head-search"], label[for="select-all-head-library"] {
  top: -8px;
}

#partage_table .secondary-search, #favorite-user-searches .secondary-search, #favorite-user .secondary-search, #Mesdepots .secondary-search {
  font-size: 0.85rem;
  white-space: nowrap;
}

#partage_table .secondary-search input, #favorite-user-searches .secondary-search input, #favorite-user .secondary-search input, #Mesdepots .secondary-search input {
  max-width: 100%;
}

#partage_table .row, #favorite-user-searches .row, #favorite-user .row, #Mesdepots .row {
  align-items: center;
  margin-right: unset;
  margin-left: unset;
  justify-content: center;
}

#partage_table table td:last-child, #favorite-user-searches table td:last-child, #favorite-user table td:last-child, #Mesdepots table td:last-child {
  width: 10%;
}

@media (max-width: 767.98px) {
  #partage_table .secondary-search input, #favorite-user-searches .secondary-search input, #favorite-user .secondary-search input, #Mesdepots .secondary-search input {
    width: 80%;
  }
}

#partage_table .search-date, #favorite-user-searches .search-date, #favorite-user .search-date, #Mesdepots .search-date {
  text-align: center;
}

@media (max-width: 767.98px) {
  #partage_table .typdoc, #favorite-user-searches .typdoc, #favorite-user .typdoc, #Mesdepots .typdoc {
    display: none;
  }
}

#favorite-user-searches div.section-shadow.section-content button span {
  color: #cacaca;
}

#favorite-user-searches div.section-shadow.section-content button span:before {
  color: #cacaca;
}

#favorite-user div.section-shadow.section-content .secondary-search {
  font-size: 0.85rem;
  white-space: nowrap;
}

#favorite-user .sort-group {
  min-width: 40%;
}

.no-library, .no-suggest {
  height: 100%;
}

.no-suggest {
  min-height: 400px;
}

.no-favorite {
  height: 300px;
}

/*************************
    MES DEPOTS
*************************/
.section-tools {
  padding-right: 0px !important;
  padding-left: 0px !important;
}

@media (max-width: 767.98px) {
  #Mesdepots .secondary-search {
    margin-right: unset;
  }
  #Mesdepots td:last-child {
    width: 0 !important;
  }
}

#favorite-user .secondary-search {
  margin-left: unset !important;
}

#favorite-user .secondary-search input {
  width: 100%;
}

@media (min-width: 576px) {
  #library-table .lib-title {
    width: 51%;
    padding-right: 40px;
    padding-left: 0;
  }
}

#library-table .list tr td:first-child {
  width: 60px;
}

@media (max-width: 575.98px) {
  #library-table .typdoc {
    display: none;
  }
}

/*************************
    DROPDOWN-MENU
*************************/
#favorite-user .dropdown-menu, #favorite-user-searches .dropdown-menu, #carouselDepots .dropdown-menu {
  background-color: #fafafa;
  border: none;
  border-radius: 0px;
  padding: 16px 16px 6px 16px;
}

#favorite-user .section-tools .dropdown-menu, #favorite-user-searches .section-tools .dropdown-menu, #carouselDepots .section-tools .dropdown-menu {
  width: max-content;
}

#favorite-user .section-tools .dropdown-menu li, #favorite-user-searches .section-tools .dropdown-menu li, #carouselDepots .section-tools .dropdown-menu li {
  margin-bottom: 10px;
}

.dropdown-submenu .dropdown-menu {
  top: 0;
  left: -114%;
  margin-left: .1rem;
  margin-right: .1rem;
}

.dropdown-actions {
  box-shadow: 0px 3px 6px #00000029;
  border: 0 !important;
  left: -50px !important;
}

.dropdown-actions li.divider {
  border-top: 1px solid #cacaca;
  margin: 5px 20px;
}

.dropdown-actions li a, .dropdown-actions li button {
  font-weight: normal !important;
}

.dropdown-actions li a i, .dropdown-actions li button i {
  padding-right: 10px;
}

/**********************
        LOGO
**********************/
.home-submit {
  background-image: url(/assets/img/hal-index-bg.png);
  background-position: top -50px center;
  background-repeat: no-repeat;
  border-top: 1px solid #ffffff;
  padding-top: 60px;
}

.home-submit .home-title {
  height: 460px;
}

.home-submit .logo-hal-home {
  width: 500px;
}

.home-submit .home-promise {
  font-size: 2.125rem;
  color: #ffffff;
  font-weight: bold;
  margin-top: 125px;
}

@media (min-width: 0px) and (max-width: 576px) {
  .home-submit .home-promise {
    margin-top: 0px !important;
  }
}

@media (max-width: 991.98px) {
  .home-submit {
    height: auto;
  }
}

@media (min-width: 1920px) {
  .home-submit {
    background-size: 100% 600px;
  }
}

#deposit-index-link {
  margin: -120px auto 50px;
  text-align: center;
}

#deposit-index-link a {
  font-size: 2.125rem;
  padding: 10px 25px;
}

#deposit-index-link a:hover {
  color: #ffffff;
}

/**********************
     PRESENTATION
**********************/
#hal-presentation {
  margin-top: 5%;
}

#hal-presentation div {
  max-width: 400px;
}

#hal-presentation i {
  color: #00005c;
}

#hal-presentation h2 {
  font-weight: bold;
  font-size: 1.5rem;
  color: #00005c;
}

#hal-presentation table tr {
  text-align: center;
}

#hal-presentation table tr:first-child {
  font-size: 2.5rem;
}

#hal-presentation table tr:nth-child(2) td {
  height: 100px;
}

#hal-presentation table tr:last-child {
  font-size: 1.15rem;
}

#hal-presentation p {
  color: #373737;
}

#scrollTo {
  position: absolute;
  top: 50px;
}

#scrollTo .icon-scroll::before {
  color: #00005c;
  font-size: 2.5rem;
}

/**********************
     RECHERCHE
**********************/
section.home-search {
  background: #00005c;
  padding: 50px 50px 100px;
}

section.home-search #searchNG .input-group input {
  padding-left: 30px;
}

section.home-search #searchNG .input-group button {
  padding-right: 30px;
}

section.home-search #searchNG input:focus {
  color: black !important;
  border-color: #337AB7 !important;
}

section.home-search #searchNG input:focus::placeholder {
  color: transparent;
}

section.home-search #searchNG .input-group {
  padding: 50px 20%;
}

section.home-search #searchNG .input-group .form-control {
  background-color: #ffffff;
  border: 2px solid #90A4B6 !important;
  border-right: 0 !important;
  height: 75px;
  font-size: 1.15rem;
}

section.home-search #searchNG .input-group .form-control:placeholder-shown {
  color: #cacaca;
}

section.home-search #searchNG .input-group button {
  background-color: white;
  border: 2px solid #90A4B6 !important;
  border-left: 0 !important;
}

section.home-search #searchNG .input-group button .icon-search {
  font-size: 40px;
  color: #337AB7;
}

section.home-search #searchNG .input-group .search-spinner {
  top: 77px;
  right: inherit;
  z-index: 10;
  margin-left: 7px;
}

section.home-search .white_bold {
  font-weight: bold;
  color: #ffffff;
  font-size: 2.125rem;
  text-align: center;
  position: relative;
}

section.home-search .white_bold.browse-domain {
  font-size: 1.5rem;
}

section.home-search .white_bold span {
  color: #ff4600;
  font-size: larger;
  white-space: nowrap;
}

section.home-search #wrapperDomain {
  margin: 30px 20%;
  line-height: 40px;
  text-align: center;
}

section.home-search #wrapperDomain a {
  font-size: 1.5rem;
  color: #ffffff;
  margin-right: 8px;
  margin-bottom: 8px;
  background-color: #337AB7;
  border-radius: 5px;
  padding: 5px 10px;
  white-space: nowrap;
}

section.home-search #wrapperDomain:hover > a {
  text-decoration: none;
}

section.home-search #wrapperDomain:hover > a:hover {
  background-color: #2C1C97;
}

section {
  margin-bottom: 104px;
}

@media (max-width: 767.98px) {
  .home-promise {
    line-height: normal !important;
  }
  .home-submit .home-title {
    height: 200px;
  }
  .home-submit > article {
    margin-top: 200px;
  }
  #deposit-index-link {
    margin-top: 0;
  }
  section.home-search {
    padding-left: 0;
    padding-right: 0;
  }
  section.home-search #searchNG .input-group {
    padding-left: 10px;
    padding-right: 10px;
  }
  section.home-search #searchNG .input-group button {
    display: none;
  }
  section.home-search #wrapperDomain {
    margin: 0;
  }
}

@media (max-width: 767.98px) {
  /*#deposit-index-link{
    padding: 5px;
  }*/
  #scrollTo {
    display: none;
  }
}

@media (max-width: 991.98px) {
  #tsparticles, #tsparticles2 {
    display: none;
  }
}

/**********************
       WIDGET
**********************/
.section-widget {
  margin: 0 9.5%;
}

.section-widget .widget {
  box-shadow: 0px 3px 15px #00000029;
}

.section-widget .widget .widget-header {
  background-color: #00005c;
  color: #ffffff;
  text-align: center;
  height: auto;
  padding-top: 10px;
  padding-bottom: 10px;
  margin-bottom: 0;
}

.section-widget .widget h3.title {
  font-size: inherit;
}

/* Cloud */
.widget-cloud .keyword {
  text-align: justify;
  padding-right: 1%;
  padding-left: 1%;
}

.widget-cloud .keyword-1 {
  font-size: 8px;
}

.widget-cloud .keyword-2 {
  font-size: 9px;
}

.widget-cloud .keyword-3 {
  font-size: 10px;
}

.widget-cloud .keyword-4 {
  font-size: 12px;
}

.widget-cloud .keyword-5 {
  font-size: 14px;
}

.widget-cloud .keyword-6 {
  font-size: 16px;
}

.widget-cloud .keyword-7 {
  font-size: 18px;
}

.widget-cloud .keyword-8 {
  font-size: 20px;
}

.widget-cloud .keyword-9 {
  font-size: 22px;
}

.widget-cloud .keyword-10 {
  font-size: 24px;
}

/* Feed */
.widget-feeds {
  width: 100%;
}

.widget-feeds button.icon-drop_down {
  transform: rotate(-90deg);
}

.widget-feeds .dateFeed {
  font-weight: bold;
}

.widget-feeds .titleFeed {
  color: #90A4B6;
  font-weight: bold;
  margin-left: 45px;
}

.widget-feeds .feed.item span[class^='icon-'] {
  font-size: .55rem;
  display: inline-block;
  color: #337AB7;
}

.widget-feeds .feed.item .card-header button {
  width: 100%;
  text-align: unset;
}

.widget-feeds .feed.item button.display {
  border: none;
  background-color: transparent;
}

.widget-feeds .link span {
  color: #124B89;
  font-weight: bold;
}

.widget-feeds .link .btn-link span[class^="icon-"] {
  margin-right: 5px;
  font-size: 0.9rem;
  color: #124B89;
}

.widget-feeds .link a:hover, .widget-feeds .link a:hover span, .widget-feeds .link a:hover path, .widget-feeds .link a:hover span[class^="icon-"] {
  color: #90A4B6;
  text-decoration: none;
}

.widget-feeds .link.right {
  float: right;
  margin-right: 15px;
}

.section-widget .col-sm-12 .widget-content {
  max-height: 739px;
}

.section-widget .col-sm-12:first-of-type > div[id^="widget-"] .widget-content {
  margin-top: 1rem;
}

@media (max-width: 767.98px) {
  .col-sm-12 .widget.widget {
    margin-bottom: 15px;
  }
}

.label.label-contrast {
  background-color: transparent;
  font-weight: bold;
  color: #ff4600;
}

.widget-header.block.pb-2 {
  background-color: transparent;
  font-weight: normal;
  color: #000000;
}

.list-deposit {
  padding: 10px 50px;
}

.list-deposit .media {
  height: auto;
  width: 100%;
  border-bottom: 1px solid #cacaca;
  padding-bottom: 10px;
  margin-top: 10px;
}

.list-deposit .media:hover {
  background-color: #EEF2F6;
}

.list-deposit .media .media-body a {
  color: #000000;
}

.list-deposit .media .media-body a:hover {
  color: #000000;
}

.search-widget {
  margin-bottom: 50px;
  padding: 160px;
  background: transparent linear-gradient(180deg, #292063EB 0%, #337AB7E6 100%) 0% 0% no-repeat padding-box;
  margin-top: 50px;
}

.search-container {
  margin-bottom: 550px;
}

.search-container .widget.widget {
  position: absolute;
  left: 0;
  right: 0;
}

#sherpa {
  margin: 30px;
}

#by-publisher input, #by-journal input {
  flex: 1 1 0% !important;
}

#by-publisher .btn-success, #by-journal .btn-success {
  height: 100%;
  width: 40px;
}

#by-publisher .btn-success span.icon-search::before, #by-journal .btn-success span.icon-search::before {
  color: #ffffff;
}

.switch + .pl-3 {
  font-size: 0.7rem;
  font-weight: bold;
}

.key_numbers {
  list-style: none;
  position: relative;
  height: 70px;
  padding-top: 8px;
}

.key_numbers > div {
  display: block;
  float: left;
  text-align: center;
}

.key_numbers > div > span {
  font-size: 15px;
  font-weight: bold;
}

.key_numbers > div > strong {
  font-size: 10px;
  font-weight: normal;
  text-transform: uppercase;
  display: block;
  padding-top: 15px;
}

/**********************
       GENERAL HEADER
**********************/
.navs {
  z-index: 10000;
  width: 100%;
  position: fixed;
  top: 0;
  left: 0;
  transition: all 300ms ease;
}

.navs.scroll-up {
  transform: translateY(0);
}

.navs.scroll-down {
  transform: translateY(-100%);
}

nav.navbar {
  margin: 0;
  padding: 0;
  border: none;
  border-radius: 0;
  /*background-color: $primary-blue;*/
  color: #ffffff;
  min-height: 60px;
  /* Animation pour le logo, fin de feuille */
  /*.navbar-brand.logo-HAL:hover{
    -webkit-animation: swing 1s ease;
    animation: swing 1s ease;
    -webkit-animation-iteration-count: 1;
    animation-iteration-count: 1;
    color: $white;
  }*/
}

nav.navbar.header {
  height: 40px;
  background-position: top center;
  background-repeat: no-repeat;
  background: #00005c;
}

nav.navbar .navbar-brand.logo-HAL {
  margin-left: 30px;
  position: relative;
  display: inline-block;
}

nav.navbar .navbar-brand.logo-HAL:hover {
  background-image: url(/assets/img/hal-logo-header.gif);
  background-size: 40px 40px;
  background-position: -1px 4px;
  background-repeat: no-repeat;
}

nav.navbar .navbar-brand.logo-HAL:hover img:first-child {
  opacity: 0;
}

nav.navbar button.btn-secondary {
  color: #ffffff;
}

#nav-services .administration {
  position: relative;
}

.nav.navbar-nav.ml-auto li {
  margin-right: 70px;
  line-height: 100%;
  padding: 0;
}

.nav.navbar-nav.ml-auto li:last-child {
  margin-right: 10px;
}

.nav.navbar-nav.ml-auto li a {
  color: #ffffff;
}

.nav.navbar-nav.ml-auto li button:not(.list-group-item) {
  padding: 0px;
  background-color: transparent;
  border: none;
}

.nav.navbar-nav.ml-auto li .btn-admin {
  color: #ffffff;
  background-color: transparent;
  height: inherit;
  padding-right: 15px !important;
  padding-left: 15px !important;
  border-radius: 0;
}

.nav.navbar-nav.ml-auto li .btn-admin.btn-active, .nav.navbar-nav.ml-auto li .btn-admin:hover {
  color: #000000;
  background-color: #E9EDF0;
}

.nav.navbar-nav.ml-auto li .btn-admin .btn-icon {
  font-size: 1.4rem;
}

.nav.navbar-nav.ml-auto li .btn-admin .btn-name {
  font-size: 0.9rem;
  font-weight: bold;
}

.nav.navbar-nav.ml-auto li .btn-admin[aria-expanded="true"] {
  color: #000000;
  background-color: #EFEEF3;
}

.skip-link-top:focus {
  position: relative;
  display: inline-block;
  background-color: #00005c;
  width: 100%;
  height: calc(2.125rem + 1.35rem);
  z-index: 1040;
  font-size: 2.125rem;
  text-decoration: none;
  text-align: center;
  color: #ffffff;
  clip-path: none;
}

.sub-header {
  box-shadow: 0px 3px 6px #00000029;
  background-color: #E9EDF0 !important;
}

.sub-header .site-env {
  margin-left: 30px;
  line-height: 50px;
}

.deposit-header {
  height: 70px;
  width: 100%;
  z-index: 2;
}

.deposit-header.fixed {
  top: 0;
  position: fixed;
}

/**********************
   CHOIX DES LANGUES
    ET DISCIPLINES
**********************/
#formLang {
  min-width: 70px;
  width: 70px;
}

#formLang .list-group-item-action:hover {
  cursor: pointer;
}

#disciplineList ul {
  background-color: #E9EDF0;
  opacity: 0.94;
  border-radius: 0;
  border: none;
  box-shadow: 0px 3px 6px #00000029;
  top: 35px;
}

/**********************
      UTILISATEUR
**********************/
.header .menu-lang, .menu-connect, .menu-orcid-ext {
  border-radius: 0;
  top: 45px;
  box-shadow: 0px 3px 6px #00000029;
  /* Triangle au dessus de la liste utilisateur */
  /* Notifications */
}

.header .menu-lang .list-group-item, .menu-connect .list-group-item, .menu-orcid-ext .list-group-item {
  border: 0;
  color: #000000 !important;
  font-family: "Arial";
}

.header .menu-lang .list-group-item:hover, .menu-connect .list-group-item:hover, .menu-orcid-ext .list-group-item:hover {
  background-color: #EFEEF3;
}

.header .menu-lang .list-group-item:hover [class^='icon-'], .menu-connect .list-group-item:hover [class^='icon-'], .menu-orcid-ext .list-group-item:hover [class^='icon-'] {
  color: #00005c;
}

.header .menu-lang .list-group-item:first-child:after, .menu-connect .list-group-item:first-child:after, .menu-orcid-ext .list-group-item:first-child:after {
  content: '';
  position: absolute;
  right: "5px";
  top: -15px;
  width: 0;
  height: 0;
  border-left: 15px solid transparent;
  border-right: 15px solid transparent;
  border-bottom: 15px solid #ffffff;
}

.header .menu-lang hr, .menu-connect hr, .menu-orcid-ext hr {
  margin: 10px;
  border-top-color: #707070;
}

.header .menu-lang.notif, .menu-connect.notif, .menu-orcid-ext.notif {
  width: 589px;
}

.header .connected-menu {
  border: none;
  border-radius: 0;
  top: 45px;
  box-shadow: 0px 3px 6px #00000029;
  width: 220px;
  /* Triangle au dessus de la liste utilisateur */
  /* Notifications */
}

.header .connected-menu .list-group-item {
  border: 0;
  color: #000000 !important;
  font-family: "Arial";
}

.header .connected-menu .list-group-item span {
  display: inline-block;
  width: 30px;
}

.header .connected-menu .list-group-item:hover {
  background-color: #EFEEF3;
}

.header .connected-menu .list-group-item:hover [class^='icon-'] {
  color: #00005c;
}

.header .connected-menu .list-group-item#log-out {
  color: #B94A48 !important;
}

.header .connected-menu .list-group-item#log-out:hover[class^='icon-'] {
  color: #B94A48 !important;
}

.header .connected-menu .list-group-item:first-child:after {
  content: '';
  position: absolute;
  right: "23px";
  top: -15px;
  width: 0;
  height: 0;
  border-left: 15px solid transparent;
  border-right: 15px solid transparent;
  border-bottom: 15px solid #ffffff;
}

.header .connected-menu hr {
  margin: 10px;
  border-top-color: #707070;
}

.header .connected-menu.notif {
  width: 589px;
}

#notifs .dropdown-toggle::after {
  display: none;
}

.nav.navbar-nav.ml-auto .icon-notifications {
  color: #ffffff;
}

/**********************
      ADMINISTRATION
**********************/
.header .administration-menu {
  border: none;
  border-radius: 0;
  top: 45px;
  box-shadow: 0px 3px 6px #00000029;
  width: 100%;
  padding-top: 0;
  right: auto;
  left: auto;
  /*list-group-item {
    .dropdown-toggle {
      width: 100%;
      text-align: left;
    }
  }*/
}

.header .administration-menu .list-group-item {
  border: 0;
  color: #000000 !important;
  font-family: "Arial";
}

.header .administration-menu .list-group-item span {
  display: inline-block;
  width: 30px;
}

.header .administration-menu .list-group-item:hover {
  background-color: #EFEEF3;
}

.header .administration-menu .list-group-item:hover [class^='icon-'] {
  color: #00005c;
}

.header .administration-menu .roles {
  padding: 5%;
  padding-bottom: 20px;
  padding-top: 20px;
  margin: 0;
  margin-bottom: 5px;
  background-color: #EFEEF3;
  font-size: 0.85rem;
}

.header .administration-menu .roles span {
  background-color: #86839D;
  color: #ffffff;
  padding: 5px;
  border-radius: 0;
  display: inline-block;
  margin: 2%;
  margin-bottom: 0;
  margin-left: 0;
}

.header .administration-menu .dropdown-menu {
  width: 100%;
  max-width: 300px;
}

.header .administration-menu .dropdown-toggle:hover .dropdown-menu {
  display: block;
}

.header .administration-menu .list-group-item-arrowed:first-child:after {
  content: '';
  position: absolute;
  left: -10px;
  top: "100px";
  width: 0;
  height: 0;
  border-right: 10px solid #ffffff;
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent;
}

/**********************
      SOUS-HEADER
**********************/
#second-navbar {
  width: 100%;
  align-items: center;
}

#disciplineList {
  top: 10px;
}

#disciplineList button {
  background-color: transparent;
  border: none;
  color: #00005c;
}

#disciplineList button span {
  float: left;
  color: #00005c;
}

#disciplineList .dropdown-toggle::after {
  border-top: .5em solid;
  border-right: .5em solid transparent;
  border-left: .5em solid transparent;
}

#disciplineList ul li {
  margin-bottom: 26px;
  margin-left: 30px;
}

#disciplineList ul li a {
  color: #000000;
  font-weight: bold;
}

#disciplineList ul {
  background-color: #E9EDF0;
  opacity: 0.94;
  border-radius: 0;
}

/* Bouton déposer */
#ssheader-submit {
  margin-left: auto;
  transform: rotate(0);
  padding: 20px 18px 18px 18px;
  /* Pour firefox */
}

@media (max-width: 991.98px) {
  #ssheader-submit {
    margin-left: unset;
    margin-top: 1rem;
    width: 100%;
    text-align: center;
  }
}

#ssheader-submit a {
  padding: 0;
}

/* Barre de recherche */
#searchHeaderList {
  max-height: 45px;
  margin: 0 0 0 calc(45% - 400px);
  float: right;
  width: 50%;
  min-width: 700px;
}

#searchHeaderList #collapseSearch {
  top: 65px;
  position: absolute;
  width: 100%;
  z-index: 10;
}

#searchHeaderList #advSearchHeader, #searchHeaderList #solrSearchHeader {
  background-color: #ffffff;
  box-shadow: 0px 5px 6px #00000029;
  padding: 20px 60px 100px 60px;
}

@media (max-width: 991.98px) {
  #searchHeaderList #advSearchHeader, #searchHeaderList #solrSearchHeader {
    padding: 20px;
  }
  #searchHeaderList #advSearchHeader .btn-hide-show, #searchHeaderList #solrSearchHeader .btn-hide-show {
    position: relative !important;
  }
}

@media (max-width: 991.98px) and (min-width: 576px) {
  #searchHeaderList #advSearchHeader .btn-hide-show, #searchHeaderList #solrSearchHeader .btn-hide-show {
    bottom: 40px !important;
  }
}

@media (max-width: 767.98px) {
  #searchHeaderList #advSearchHeader .btn-hide-show, #searchHeaderList #solrSearchHeader .btn-hide-show {
    bottom: 0 !important;
  }
}

#searchHeaderList #advSearchHeader .row, #searchHeaderList #solrSearchHeader .row {
  margin: 0;
}

#searchHeaderList #advSearchHeader h3, #searchHeaderList #solrSearchHeader h3 {
  color: #cacaca;
  font-size: 1.15rem;
}

#searchHeaderList #advSearchHeader .mt-3 button, #searchHeaderList #solrSearchHeader .mt-3 button {
  background-color: transparent;
  border: none;
  position: absolute;
  bottom: 65px;
}

#searchHeaderList #advSearchHeader .mt-3 button:hover, #searchHeaderList #solrSearchHeader .mt-3 button:hover {
  color: #759FCC;
}

#solrSearchHeader textarea {
  width: 100%;
  max-width: 100%;
  min-height: 295px;
  border: 1px solid #90A4B6;
  color: #000000;
}

#solrSearchHeader form div {
  min-width: max-content;
  position: absolute;
  right: 60px;
  bottom: 50px;
}

#solrSearchHeader form div button {
  position: initial;
  float: right;
}

#solrSearchHeader form div button span.icon-search {
  padding-right: 10px;
}

#solrSearchHeader form div button span.icon-search::before {
  color: #ffffff;
}

#submit-button {
  position: relative;
  padding-left: 50px;
  border: none;
}

@media (min-width: 992px) {
  .border-r-lg {
    border-right: 1px solid #000000;
  }
}

/**********************
     PORTAIL MENU
**********************/
header img {
  width: 100%;
  object-fit: contain;
  height: 259px;
}

header #portailMenu {
  background-color: #363842;
  height: 60px;
}

header #portailMenu li {
  margin-right: 34px;
  margin-left: 34px;
  font-weight: bold;
  font-size: 1.4rem;
  padding: 10px 15px;
}

header #portailMenu li:hover {
  cursor: pointer;
}

header #portailMenu li.active {
  background-color: #B7B7B7;
  border-radius: 4px;
}

/**********************
      RESPONSIVE
**********************/
@media (max-width: 991.98px) {
  /* Style pour le hamburger
    Manuel, pas d'utilisation du SVG de bootstrap
    pour faire l'animation
    Style du départ avec le time de l'animation*/
  .hamburger {
    width: 30px;
    height: 20px;
    position: relative;
    margin: 0;
    transform: rotate(0deg);
    transition: .5s ease-in-out;
    cursor: pointer;
    display: inline-block;
  }
  .hamburger span {
    display: block;
    position: absolute;
    height: 1.5px;
    width: 100%;
    opacity: 1;
    background-color: #ffffff;
    left: 0;
    transform: rotate(0deg);
    transition: .4s ease-in-out;
  }
  .hamburger span:first-child {
    top: 0;
  }
  .hamburger span:nth-child(2) {
    top: 10px;
  }
  .hamburger span:last-child {
    top: 20px;
  }
  /* Disposition du hamburger lorsque celui-ci est ouvert
     Style en forme de croix avec disparition du span du milieu */
  .hamburger.open span:first-child {
    top: 11px;
    transform: rotate(135deg);
  }
  .hamburger.open span:nth-child(2) {
    opacity: 0;
    left: -60px;
  }
  .hamburger.open span:last-child {
    top: 11px;
    transform: rotate(-135deg);
  }
  /* Toggle-menu avec une bordure au-dessus et un background*/
  #nav-services {
    z-index: 4;
    background-color: #00005c;
    padding-left: 35px;
    border-top: 1px solid #E9EDF0;
    margin-top: -5px;
  }
  #nav-services .administration {
    width: 100%;
  }
  #nav-services #formLang {
    width: unset;
  }
  #nav-services li.nav-item {
    width: 100%;
    text-align: center;
  }
  #nav-services .administration-menu, #nav-services .menu-lang, #nav-services .connected-menu, #nav-services .menu-orcid-ext {
    background-color: unset;
  }
  #nav-services .administration-menu .dropdown-menu, #nav-services .menu-lang .dropdown-menu, #nav-services .connected-menu .dropdown-menu, #nav-services .menu-orcid-ext .dropdown-menu {
    float: left;
    border-top: solid 1px #707070;
    border-bottom: solid 1px #707070;
    margin-top: 1rem;
  }
  #nav-services .administration-menu div, #nav-services .administration-menu button, #nav-services .administration-menu a, #nav-services .menu-lang div, #nav-services .menu-lang button, #nav-services .menu-lang a, #nav-services .connected-menu div, #nav-services .connected-menu button, #nav-services .connected-menu a, #nav-services .menu-orcid-ext div, #nav-services .menu-orcid-ext button, #nav-services .menu-orcid-ext a {
    background-color: unset;
    color: #ffffff !important;
    text-align: center;
  }
  #nav-services .dropdown-menu {
    margin-left: -2%;
    width: 100%;
  }
  #nav-services .dropdown-menu .roles {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
  }
  #nav-services .dropdown-menu .roles span {
    margin: 1%;
  }
  .nav.navbar-nav.ml-auto .dropdown-menu .list-group-item:first-child::after {
    display: none;
  }
  .nav.navbar-nav.ml-auto {
    padding-bottom: 10px;
  }
  .nav.navbar-nav.ml-auto li {
    padding: 10px 0;
    margin-right: 0;
  }
  .nav.navbar-nav.ml-auto .btn-admin {
    padding-top: 2%;
    border-radius: 0.25rem !important;
  }
  #userList {
    margin-left: 0;
    margin-right: 0;
  }
}

@media (max-width: 575.98px) {
  .hal-main-advsearch-button {
    left: 90%;
  }
  .nav.navbar-nav.ml-auto {
    margin-left: 0 !important;
  }
}

@media (max-width: 991.98px) {
  #searchHeaderList {
    width: 90% !important;
    margin: 0 !important;
    min-width: unset;
  }
}

@media (min-width: 992px) and (max-width: 1199.98px) {
  #disciplineList {
    display: none;
  }
  #searchHeaderList {
    margin-bottom: 0;
    width: 70%;
    min-width: unset;
  }
}

/**********************
    ANIMATION POUR
      LE LOGO
**********************/
@-webkit-keyframes swing {
  15% {
    -webkit-transform: translateX(5px);
    transform: translateX(5px);
  }
  30% {
    -webkit-transform: translateX(-5px);
    transform: translateX(-5px);
  }
  50% {
    -webkit-transform: translateX(3px);
    transform: translateX(3px);
  }
  65% {
    -webkit-transform: translateX(-3px);
    transform: translateX(-3px);
  }
  80% {
    -webkit-transform: translateX(2px);
    transform: translateX(2px);
  }
  100% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}

@keyframes swing {
  15% {
    -webkit-transform: translateX(5px);
    transform: translateX(5px);
  }
  30% {
    -webkit-transform: translateX(-5px);
    transform: translateX(-5px);
  }
  50% {
    -webkit-transform: translateX(3px);
    transform: translateX(3px);
  }
  65% {
    -webkit-transform: translateX(-3px);
    transform: translateX(-3px);
  }
  80% {
    -webkit-transform: translateX(2px);
    transform: translateX(2px);
  }
  100% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}

.user-circle {
  border-radius: 50%;
  border: 2px solid #cacaca;
  background-color: #757094;
  height: 40px;
  text-align: center;
  width: 40px;
  display: block;
}

.user-circle .initials {
  font-size: 20px;
  color: #ffffff;
  line-height: 1;
  position: relative;
  top: 8px;
}

.user-circle.photo {
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  background-color: #ffffff;
  border-color: #757094;
}

.user-circle.large {
  height: 60px;
  width: 60px;
}

.user-circle.large .initials {
  font-size: 30px;
  top: 14px;
}

.user-circle.xlarge {
  height: 80px;
  width: 80px;
}

.user-circle.xlarge .initials {
  font-size: 40px;
  top: 18px;
}

.user-circle.xxlarge {
  height: 120px;
  width: 120px;
}

.user-circle.xxlarge .initials {
  font-size: 60px;
  top: 30px;
}

.user-circle.xxxlarge {
  height: 160px;
  width: 160px;
}

.user-circle.xxxlarge .initials {
  font-size: 80px;
  top: 35px;
}

/**********************
       ERROR FORM
**********************/
.has-error .form-control, .has-error .select2 {
  border-color: #B94A48 !important;
}

.has-error .help-block.error, .has-error .control-label,
.has-error .radio, .has-error .checkbox, .has-error .radio-inline,
.has-error .checkbox-inline {
  color: #B94A48;
}

.form-control {
  border-radius: 0 !important;
  border-color: #c8c8c8;
}

/**********************
       ELEMENTS
     MULTILANGUES
**********************/
div.form-group.row {
  /* !important car style inline dans Lang.php */
}

div.form-group.row label {
  color: #000000;
  font-weight: bold;
  text-align: left;
  width: 100%;
  display: contents;
}

div.form-group.row label.required:after {
  content: "*";
  padding-left: 5px;
  color: #337AB7;
}

div.form-group.row input.input-flex {
  margin: 0;
  border: solid 1px #90A4B6;
  height: 34px;
  padding: 0;
  flex: 1 1 0% !important;
  padding-left: 10px;
  border-radius: 0px;
}

div.form-group.row .col-md-9 {
  width: 100%;
  padding: 0;
  flex: none;
  max-width: none;
}

div.form-group.row .btn-primary.btn-sm, div.form-group.row .btn-group-sm > .btn-primary.btn {
  margin-left: 8px;
}

div.form-group.row .input-group-btn button {
  height: 34px !important;
}

div.form-group.row span.input-group-btn {
  background-color: #337AB7;
  margin-left: 10px;
}

div.form-group.row span.input-group-btn:hover {
  background-color: #09579A;
}

div.form-group.row .input-group {
  margin-top: 10px;
}

div.form-group.row button.dropdown-toggle, div.form-group.row button.btn-primary {
  font-weight: bold;
  background-color: transparent;
  color: #000000;
  border: none;
}

div.form-group.row #submit-button {
  position: initial;
  float: right;
}

div.form-group.row #submit-button:hover {
  color: #ffffff;
}

input.input-flex {
  margin: 0;
  border: solid 1px #90A4B6;
  height: 37px;
  padding: 0;
  flex: 1 1 0% !important;
  padding-left: 10px;
}

/* Flèches dans le choix de la langue */
.nav #advSearchHeader .input-group .caret {
  border-top: 6px solid #000000;
  margin-left: 15px;
}

#submit-element {
  position: absolute;
  right: 60px;
  bottom: 45px;
}

ul.dropdown-menu .dropdown-item {
  padding-left: 5px;
}

ul.dropdown-menu a {
  color: #000000;
  display: block;
  width: 100%;
}

ul.dropdown-menu li.disabled a {
  color: #6c757d;
}

ul.dropdown-menu li:not(.not-white):hover {
  background-color: #337AB7;
  color: #ffffff;
  font-weight: bold;
}

ul.dropdown-menu li:not(.not-white):hover a {
  color: #ffffff !important;
}

/**********************
        DATES
**********************/
/* !important car style inline */
#ui-datepicker-div {
  z-index: 10 !important;
}

/*#writingDate-id-element{
  .input-group{
    border: 1px solid $primary-blue3;
  }
  .input-group-addon.calendar-trigger{
    background-color: transparent;
    border-radius: 0;
    border: none;
    float: right;
    transform: translateX(-20px);
  }
  #writingDate-id{
    width: 100px;
    border: none;
    box-shadow: none;
    margin: 3px 0 0 0;
  }
}*/
/**********************
       GENERAL
**********************/
form label {
  font-weight: bold;
}

form input.form-control {
  border-radius: 0 !important;
  border: 1px solid #cacaca !important;
}

/**********************
    ACCOUNT CREATE
**********************/
#divCreate form .row {
  display: block;
}

#accountcreate {
  padding: 30px 78px;
}

#accountcreate .input-group .form-control {
  width: inherit;
}

.hide-show-psw {
  position: relative;
  margin-top: 8px;
  margin-left: -45px;
  font-size: 1.25rem;
  z-index: 3;
  cursor: pointer;
  background: none;
}

.info-create-user {
  z-index: 4;
  position: absolute;
  margin-left: 102%;
  font-size: 1.5rem;
  margin-top: 7px;
  cursor: pointer;
  background: none;
}

#CAPTCHA-element pre {
  text-align: center;
}

.ccsd_form_required {
  font-size: small;
  color: #337AB7;
}

/*Voir si on conserve */
.new-form .ccsd_form_required, .new-form .help-block {
  display: none;
}

.new-form .help-block.error {
  display: block;
  color: #B94A48;
  font-size: 0.85rem;
  padding-top: 5px;
}

.new-form .form-control {
  border-color: #90A4B6;
  width: 100%;
}

.new-form .form-control:active, .new-form .form-control:focus {
  border-color: #124B89;
  outline: none !important;
  box-shadow: none !important;
}

.new-form .form-control:disabled, .new-form .form-control[readonly] {
  background-color: #f6f6f6;
  color: #979797;
}

.new-form .has-error .form-control {
  border-color: #B94A48;
}

.new-form label, .new-form .col-md-3, .new-form .col-md-9 {
  flex: inherit !important;
  max-width: inherit !important;
}

.new-form label {
  color: #979797;
  font-size: 0.85rem;
  font-weight: bold;
  margin-bottom: 5px;
}

.new-form #csrf_token-element {
  display: none;
}

.switch {
  position: relative;
  display: inline-block;
  width: 40px;
  height: 12px;
  margin-bottom: 0 !important;
}

.switch input {
  opacity: 0;
  width: 0;
  height: 0;
}

.switch .slider {
  position: absolute;
  cursor: pointer;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #e8e8e8;
  -webkit-transition: .4s;
  transition: .4s;
  border-radius: 34px;
}

.switch .slider:before {
  position: absolute;
  content: "";
  height: 20px;
  width: 20px;
  left: 0px;
  bottom: -4px;
  background-color: #337AB7;
  -webkit-transition: .4s;
  transition: .4s;
  border-radius: 50%;
}

.switch input:checked + .slider {
  background-color: #124B89;
}

.switch input:focus + .slider {
  box-shadow: 0 0 1px #124B89;
}

.switch input:checked + .slider:before {
  -webkit-transform: translateX(20px);
  -ms-transform: translateX(20px);
  transform: translateX(20px);
}

/**********************
    ADVANCED EXPORT
**********************/
#bringData {
  width: 100%;
}

#bringData .row {
  margin-bottom: 20px;
}

#bringData .row li {
  padding-bottom: 5px;
}

#bringData .row .icon-drag {
  padding-right: 15px;
}

#bringData #available li {
  cursor: pointer;
}

#bringData #available li:hover {
  background-color: #EFEEF3;
}

#bringData #fl .placeholder {
  margin: 5px 0;
  height: 40px;
  width: 100%;
  border: 2px dashed #86839D;
}

#exportableFields .card {
  border-radius: 0;
  border: none;
  background-color: transparent;
}

#exportableFields .card .card-header {
  padding: 30px 15px;
  font-weight: bold;
}

#exportableFields .card .card-body {
  margin-top: 20px;
  height: 400px;
  overflow: auto;
}

#messageAboutExport {
  text-align: center;
}

#messageAboutExport div {
  height: 100%;
  padding: 15px;
}

/**********************
    LOST PASSWORD &
    LOST LOGIN
**********************/
#accountlostpassword, #accountlostlogin {
  width: 100%;
}

#accountlostpassword #USERNAME-element, #accountlostpassword #EMAIL-element, #accountlostlogin #USERNAME-element, #accountlostlogin #EMAIL-element {
  padding: 20px 10% 20px 20px;
}

#accountlostpassword #USERNAME-element .col-md-3, #accountlostpassword #EMAIL-element .col-md-3, #accountlostlogin #USERNAME-element .col-md-3, #accountlostlogin #EMAIL-element .col-md-3 {
  text-align: right;
}

#accountlostpassword .form-actions, #accountlostlogin .form-actions {
  width: 100%;
  display: block;
}

#Demanderunnouveaumotdepasse, #Recevoirmonlogin {
  margin-bottom: 50px;
}

/**********************
    Configuration
        IdHal
***********************/
#idhal_Modal .modal-dialog, #forms_Modal .modal-dialog, #modal-search-documents .modal-dialog, #modal-update-idhal-publications-recap .modal-dialog {
  max-width: 80%;
}

#idhal_Modal .form-row, #forms_Modal .form-row, #modal-search-documents .form-row, #modal-update-idhal-publications-recap .form-row {
  align-items: center;
}

#idhal_Modal #q, #forms_Modal #q, #modal-search-documents #q, #modal-update-idhal-publications-recap #q {
  flex: 0.4 1 auto;
  background-color: #f6f6f6;
}

#idhal_Modal th, #forms_Modal th, #modal-search-documents th, #modal-update-idhal-publications-recap th {
  background-color: #f6f6f6;
}

#idhal_Modal .warning, #forms_Modal .warning, #modal-search-documents .warning, #modal-update-idhal-publications-recap .warning {
  color: #B94A48;
}

input.checkbox[type="checkbox"] {
  width: inherit;
  opacity: inherit;
}

/**********************
        GENERAL
**********************/
.hal-bgtext, .bg-beige {
  background-color: #f4f4f4;
}

.hal-bgtext.versions, .bg-beige.versions {
  display: inline-block;
  margin-bottom: 10px;
}

.hal-bgtext.versions span:first-child, .bg-beige.versions span:first-child {
  color: #646464;
  margin-left: 15px;
}

.hal-bgtext.versions span:nth-child(2), .bg-beige.versions span:nth-child(2) {
  font-weight: bold;
}

.hal-bgtext.versions span:nth-child(2) a, .bg-beige.versions span:nth-child(2) a {
  color: #000000;
}

.hal-bgtext.versions span:nth-child(3), .bg-beige.versions span:nth-child(3) {
  margin-right: 10px;
}

.btn-group-lang {
  margin-left: 5px;
}

.btn-group-lang button.btn {
  margin-right: 5px;
  line-height: 1;
  border-radius: 0;
  font-size: 0.85rem;
  font-weight: bold;
  color: #337AB7;
  background-color: transparent;
  border: 1px solid #337AB7;
}

.btn-group-lang button.btn.active {
  color: #ffffff;
  background-color: #337AB7;
  border: none;
}

#flash-messages .alert {
  z-index: 5;
  top: 130px;
  position: absolute;
}

.a2a_default_style .a2a_count, .a2a_default_style .a2a_svg,
.a2a_floating_style .a2a_svg, .a2a_menu .a2a_svg, .a2a_vertical_style .a2a_count,
.a2a_vertical_style .a2a_svg {
  border-radius: 0 !important;
}

/**********************
        WIDGET
**********************/
#metrics {
  box-shadow: none;
  border: 1px solid #90A4B6;
  text-align: center;
}

#metrics .metrics-views {
  display: inline-grid;
}

#metrics .metrics-views:nth-child(2) {
  border-left: 1px solid #cacaca;
}

#metrics .metrics-views span:first-child {
  text-align: center;
  font-weight: bold;
  font-size: 1.15rem;
}

.identifier-list ul {
  list-style: none;
  padding: 0;
  color: #646464;
}

.identifier-list ul li {
  word-break: break-all;
}

.identifier-list span:nth-child(2) {
  font-weight: bold;
  margin-left: 12px;
  color: #000000;
}

.identifier-list span:nth-child(2) a {
  color: #000000;
}

.section-content.widget-files div.file {
  color: #ffffff;
  font-weight: bold;
  fill: #ffffff;
  font-size: calc(0.9rem + .1rem);
  line-height: 2;
}

.section-content.widget-files div.file span:first-child {
  margin-right: 30px;
}

.section-content.widget-files div.file.not {
  color: #000000;
  fill: #000000;
  cursor: default;
}

.section-content.widget-files div.file .embargo-msg {
  color: #B94A48;
  font-size: 0.85rem;
  text-align: center;
}

.section-content.widget-files div.file .embargo-msg button {
  border: none;
  background-color: transparent;
  color: #B94A48;
}

section.flex-74 .authors .btn-popover, section.flex-74 .structures .btn-popover, #preview-doc .authors .btn-popover, #preview-doc .structures .btn-popover {
  color: #000000;
  background: none;
  border: none;
  padding: 0;
  font: inherit;
  cursor: pointer;
  outline: inherit;
}

section.flex-74 .authors .btn-popover:hover, section.flex-74 .structures .btn-popover:hover, #preview-doc .authors .btn-popover:hover, #preview-doc .structures .btn-popover:hover {
  color: #337AB7;
  font-weight: bold;
}

/**********************
    WIDGET-AUTHORS
        auteurs
**********************/
.popover-authors {
  display: inline-grid;
}

.popover-authors .popover-author-header {
  padding: 15px 10px 0 25px;
}

.popover-authors .popover-author-header h4 {
  color: #337AB7;
  float: left;
}

.popover-authors .popover-author-header ul {
  list-style: none;
  float: right;
}

.popover-authors a.popover-affil {
  padding: 0 10px 15px 25px;
  color: #000000;
}

.popover-authors .popover-resume {
  font-size: 0.9rem;
}

.popover-authors .hal-privilege-button {
  background-color: #86839D;
  padding: 12px;
}

.popover-authors .hal-privilege-button:hover {
  background-color: #757094;
}

.popover.fade {
  max-width: 555px;
}

.popover.fade .popover-body {
  padding: 0;
  max-width: 450px;
}

.popover.fade .popover-body.popover-journal-body {
  max-width: none;
  padding: 5px 20px;
  font-size: 0.6875rem;
}

.popover.fade .arrow {
  display: none;
}

.authors + button {
  color: #337AB7;
  background-color: transparent;
  border: 1px solid #337AB7;
  border-radius: unset;
  opacity: 0.64;
  margin-top: 10px;
  font-size: 0.9rem;
  line-height: 1;
}

.authors + button:hover {
  background-color: #90A4B6;
}

#authors-detailed {
  display: none;
}

#authors-detailed button.btn-hide-show {
  background-color: #337AB7;
  color: #ffffff;
  border-radius: 0;
  font-size: 0.9rem;
  line-height: 1;
}

.popover-structure {
  padding: 15px 10px 15px 25px;
}

.popover-structure > a {
  color: #337AB7;
  font-weight: bold;
}

.popover-structure > a:hover {
  color: #09579A;
}

.popover-structure ul a {
  color: #337AB7;
  font-weight: bold;
}

.popover-structure ul a:hover {
  color: #09579A;
}

.popover-structure .label.label-primary {
  font-size: .75rem;
  background-color: #337AB7;
  color: white;
  font-weight: bold;
  padding-left: 3px;
  padding-right: 3px;
}

#authors-detailed .col-lg-4 {
  padding: 0;
  margin-top: 20px;
}

.col-lg-4 .bg-beige {
  padding: 10px;
  margin-bottom: 20px;
  margin-right: 20px;
  max-width: 337px;
  height: 100%;
}

.col-lg-4 .bg-beige a {
  color: #000000;
}

.col-lg-4 .bg-beige > a {
  color: #124B89;
  font-weight: bold;
}

.col-lg-4 .bg-beige ul {
  list-style: none;
  margin-top: 10px;
  padding: 0;
}

.col-lg-4 .bg-beige .detailed-resume {
  border: 1px solid #337AB7;
  position: absolute;
  top: 10px;
  float: right;
  right: 45px;
  padding: 5px;
}

.col-lg-4 .bg-beige .detailed-resume a {
  color: #337AB7;
}

.col-lg-4 .bg-beige .hal-icon {
  margin-right: 10px;
}

.col-lg-4 .bg-beige .detailed-affil {
  font-weight: bold;
}

/**********************
    WIDGET-AUTHORS
      structures
**********************/
.structures {
  font-weight: bold;
  padding: 20px 15px 5px;
  margin-top: 20px;
  display: flex;
}

.structures div:first-child {
  float: left;
  margin-right: 20px;
  color: #495572;
  font-size: 1.5rem;
  position: relative;
  top: -10px;
}

.structures div:nth-child(2) span {
  background-color: #e8e8e8;
  padding: 0 8px;
}

.structures div:nth-child(2) a {
  color: #000000;
}

/**********************
    WIDGET-ABSTRACT
    -KEYWORDS-DOMAINS
**********************/
.abstract div:first-child, .keywords div:first-child {
  margin-top: 48px;
}

.abstract h4, .keywords h4 {
  margin-right: 5px;
  margin-top: 10px;
  display: inline;
}

.abstract .btn-group button.btn, .keywords .btn-group button.btn {
  margin-right: 5px;
  line-height: 1;
  border-radius: 0;
  font-size: 0.85rem;
  font-weight: bold;
  color: #337AB7;
  background-color: transparent;
  border: 1px solid #337AB7;
}

.abstract .btn-group button.btn.active, .keywords .btn-group button.btn.active {
  color: #ffffff;
  background-color: #337AB7;
  border: none;
}

.abstract .abstract-content, .keywords .abstract-content {
  display: none;
}

.abstract .abstract-content.active, .keywords .abstract-content.active {
  display: block;
  border: 1px solid #cacaca;
  max-width: 674px;
  padding: 5px 15px;
  margin-top: 5px;
}

.btn-group > .btn.active {
  z-index: 0;
}

.keywords h4, .domains h4 {
  margin-top: 48px;
}

.keywords a.hal-bgtext, .domains a.hal-bgtext {
  white-space: nowrap;
  background-color: #90A4B6;
  color: #ffffff;
  font-size: 0.85rem;
}

.keywords a.hal-bgtext:hover, .domains a.hal-bgtext:hover {
  background-color: #647585;
}

.keywords .keys-lang, .domains .keys-lang {
  display: none;
}

.keywords .keys-lang.active, .domains .keys-lang.active {
  display: block;
}

.section-export a.hal-bgtext, .keywords a.hal-bgtext, .domains a.hal-bgtext, .section-collection a.hal-bgtext {
  line-height: 3rem;
  white-space: nowrap;
}

.metadata-software-list .meta-value {
  font-weight: bold;
}

.metadata-software-list .meta-value:not(:last-child):after {
  content: ', ';
}

/**********************
    WIDGET-METADATA
**********************/
#metadatas_Modal .modal-dialog {
  max-width: 70%;
}

#metadatas_Modal .typesubmission {
  background-color: #337ab7;
  padding: 2px 10px;
  display: inline-block;
  color: #ffffff;
  font-weight: bold;
}

#metadatas_Modal table {
  table-layout: fixed;
}

#metadatas_Modal th {
  padding-left: 2rem;
  width: 25%;
}

#metadatas_Modal caption {
  padding-left: 2rem;
}

#metadatas_Modal .title-table {
  color: #337AB7;
  font-weight: bold;
  font-size: 1.15rem;
}

#metadatas_Modal .badge {
  font-size: 100%;
}

#metadatas_Modal .prec {
  font-size: small;
  font-style: italic;
}

#metadatas_Modal .struct {
  margin-bottom: 10px;
}

#metadatas_Modal .grey-badge {
  border-radius: unset;
  background-color: #e8e8e8;
}

@media (max-width: 767.98px) {
  #metadatas_Modal {
    padding-right: 0px;
  }
  #metadatas_Modal .modal-dialog {
    max-width: 100%;
    margin: 0.5rem;
  }
}

blockquote .referentiel small {
  display: block;
  line-height: 1.4;
}

blockquote .referentiel small:before {
  content: '\2014 \00A0';
}

/* SHERPA/ROMEO */
.popover table td.text-left span {
  border-radius: 0 !important;
}

/**********************
    WIDGET-METADATA
**********************/
#bookmark-button, #bookmark-fill-button,
.bookmark-button, .bookmark-fill-button {
  border: none;
  background-color: transparent;
  float: right;
  font-size: 1.5rem;
  color: #337AB7;
}

#bookmark-button:focus, #bookmark-fill-button:focus,
.bookmark-button:focus, .bookmark-fill-button:focus {
  outline: none;
}

#library-list {
  list-style: none;
  padding-left: 0;
}

#library-list + div {
  margin-left: 12px;
}

@media (max-width: 1199.98px) {
  section.col-3, section.col-8 {
    display: contents;
  }
  section.col-3 .section-content, section.col-8 .section-content {
    width: 100%;
  }
}

/**********************
    WIDGET-VIEWER
**********************/
.viewer button:first-child span.hal-icon {
  transform: rotate(0deg);
}

#viewer-detailed {
  height: 570px;
}

#viewer-detailed > div:nth-child(1) {
  margin: 0 30px 0 47px;
  padding-top: 38px;
  padding-bottom: 38px;
  height: 100%;
}

#viewer-detailed > div:nth-child(1) .col-md-2 {
  padding-left: 0;
  padding-right: 0;
  margin-left: -30px;
  margin-right: 30px;
  height: 100%;
  overflow: auto;
}

#viewer-detailed > div:nth-child(1) .col-md-2 a {
  color: #ffffff;
}

#viewer-detailed > div:nth-child(1) .col-md-2 .file-major {
  top: 20px;
  position: relative;
  font-weight: bold;
}

#viewer-detailed > div:nth-child(1) .col-md-2 .thumbnail-viewer {
  background-color: #e8e8e8;
  text-align: center;
  margin-top: 20px;
  cursor: pointer;
}

#viewer-detailed > div:nth-child(1) .col-md-2 .thumbnail-viewer img {
  background: #fff;
}

#viewer-detailed > div:nth-child(1) .col-md-2 .thumbnail-viewer .default-thumbnail {
  padding: 10px;
}

#viewer-detailed > div:nth-child(1) .col-md-2 .thumbnail-viewer .default-thumbnail i {
  font-size: 60px;
  color: #646464;
}

#viewer-detailed > div:nth-child(1) .col-md-2 .thumbnail-viewer span {
  line-height: 5.5;
  color: #646464;
  font-size: 1.5rem;
}

#viewer-detailed > div:nth-child(1) .col-md-2 .thumbnail-viewer.active {
  border: 6px solid #00005c;
  cursor: default;
}

#viewer-detailed > div:nth-child(1) .viewer-content {
  display: none;
}

#viewer-detailed > div:nth-child(1) .viewer-content.active {
  display: block;
  height: 100%;
}

#viewer-detailed > div:nth-child(1) .col-md-9 {
  padding-left: 0;
  padding-right: 0;
  -ms-flex: 0 0 83%;
  flex: 0 0 83%;
  max-width: 83%;
}

#viewer-detailed > div:nth-child(1) .col-md-9 iframe {
  min-height: 95%;
  width: 100%;
}

#viewer-detailed > div:nth-child(1) .col-md-9 .embargo {
  background-color: #e8e8e8;
  color: #646464;
  font-size: 1.15rem;
  text-align: center;
  font-weight: bold;
  height: 100%;
}

#viewer-detailed > div:nth-child(1) .col-md-9 .embargo div:first-child {
  position: relative;
  top: 35%;
}

#viewer-detailed > div:nth-child(1) .col-md-9 .embargo div:first-child div:first-child {
  margin-bottom: 20px;
}

#viewer-detailed > div:nth-child(1) .col-md-9 .embargo table {
  margin: auto;
  text-align: center;
}

#viewer-detailed > div:nth-child(1) .col-md-9 .embargo table td {
  padding: 4px 15px;
}

#viewer-detailed > div:nth-child(1) .col-md-9 .embargo table + span {
  font-weight: normal;
  font-size: 0.9rem;
}

.hal-option-button {
  font-size: 0.9rem;
  color: #ffffff;
  padding: 12px;
}

.embargo-label {
  background-color: #cacaca;
  color: #000000;
  font-size: 0.7rem;
  padding: 12px;
  text-align: center;
  font-weight: bold;
}

.embargo-label span:first-child {
  margin-right: 10px;
}

#list-thumbnail-viewer span, .viewer-content span {
  color: #373737;
  font-size: 0.7rem;
}

#list-thumbnail-viewer a, .viewer-content a {
  float: right;
}

/**********************
    SUBMITTED DATE
**********************/
.submitted-date {
  color: #cacaca;
  font-size: 0.85rem;
  line-height: .9;
  margin-top: 20px;
}

/**********************
    AUTOCOMPLETE
**********************/
.ui-autocomplete.ui-front {
  z-index: 1060 !important;
  background-color: #ffffff;
  max-height: 300px;
  overflow: auto;
  padding: 10px;
  list-style: none;
  box-shadow: 0px 3px 6px #00000029;
}

.ui-autocomplete.ui-front .ui-menu-item {
  padding: 3px;
}

.ui-autocomplete.ui-front .ui-menu-item:hover {
  color: #ffffff !important;
  cursor: pointer;
}

.preview-not-available {
  background-color: #e8e8e8;
  text-align: center;
}

.preview-not-available h1 {
  color: #646464;
  font-size: 1.15rem;
  font-weight: bold;
}

.preview-not-available div:first-child {
  position: relative;
  margin-top: 160px;
}

.label.label-VALID {
  background: #468847 !important;
}

.label.label-OLD {
  background: #AA8F52 !important;
}

.label.label-INCOMING {
  background: #B94A48 !important;
}

#history-detailed {
  border: 1px solid #e8e8e8;
}

.alert-history {
  background-color: #f6f6f6;
  border-radius: 0;
}

.alert-history .badge {
  border-radius: 0;
}

.alert-history .badge.badge-success {
  background-color: #468847;
}

.alert-history .badge.badge-info {
  background-color: #337AB7;
}

.alert-history .badge.badge-warning {
  background-color: #AA8F52;
}

.alert-history .badge.badge-danger {
  background-color: #B94A48;
}

.alert-history .badge.badge-orange {
  background-color: #ff4600;
}

.alert-history .badge.badge-violet {
  background-color: #ACA8C4;
}

/* References */
#ref-detailed {
  background: #fafafa;
}

.references-filtre .btn {
  border-radius: 0;
}

.references-filtre .dropdown-item.active {
  background-color: #90A4B6;
}

.reference-buttons {
  float: right;
}

.references-section {
  overflow: auto;
  max-height: 300px;
  margin: .5em 0 .5em 0;
  /* other search engines */
}

.references-section table {
  width: 100%;
}

.references-section .reference-row {
  background-color: #f6f6f6;
  border-bottom: thick solid #ffffff;
}

.references-section .reference-row .reference-text {
  vertical-align: middle;
  padding: .5em 0 .5em 0;
}

.references-section .reference-row .reference-text .inside-reference-text {
  margin-left: .5em;
  padding: 0 0 .5em .5em;
  border-left: 1px groove #ffffff;
  vertical-align: middle;
}

.references-section .reference-row .reference-text .title-reference {
  font-weight: bold;
}

.references-section .reference-row .reference-text .titleEvent-reference-value {
  font-style: italic;
}

.references-section .reference-row .reference-text p {
  margin: 0;
  padding: 0;
}

.references-section .reference-row .reference-text .references-identifiers {
  display: table;
  margin: 3px;
}

.references-section .reference-row .reference-text .references-identifier {
  display: table-cell;
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
  color: #ffffff;
  font-weight: lighter;
  font-size: 12px;
  min-width: 40px;
  margin: 0;
  padding: 5px;
}

.references-section .reference-row .reference-text .references-identifier-value {
  display: table-cell;
  background-color: #a2a2a2;
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
  color: #ffffff;
  font-weight: lighter;
  font-size: 12px;
  margin: 0;
  padding: 5px;
}

.references-section .reference-row .reference-text a:focus {
  color: #404040;
  font-weight: bolder;
}

.references-section .reference-row .validation-button {
  color: #468847;
}

.references-section .reference-row .remove-button {
  color: #B94A48;
}

.references-section .link-free-full-text-url {
  background-color: #86839D;
}

.references-section .link-free-full-text-url:hover {
  color: #ffffff;
  background-color: #757094;
}

.references-section .link-doi {
  background-color: #00005c;
}

.references-section .link-doi:hover {
  color: #ffffff;
  background-color: #2C1C97;
}

.references-section .link-se {
  background-color: #90A4B6;
}

.references-section .link-se:hover {
  color: #ffffff;
  background-color: #647585;
}

#toggle-actions {
  position: fixed;
  top: 167px;
  right: 0;
  background-color: #00005c;
  width: 75px;
  height: 67px;
  border-radius: 0;
}

#toggle-actions span {
  color: #ffffff;
}

#accordion-actions {
  position: fixed;
  top: 200px;
  right: 0;
  z-index: 1;
}

#accordion-actions .pop-over, #accordion-actions .pop-over-content > div {
  transition: none;
}

#accordion-actions ul {
  list-style: none;
  max-height: calc(100vh - 230px);
  overflow-x: hidden;
  overflow-y: scroll;
}

#accordion-actions ul li div.btn-accordion {
  width: 60px;
  transition: width .6s ease-in-out;
}

#accordion-actions ul li a, #accordion-actions ul li button:not(.btn-tampon) {
  display: block;
  width: 280px;
  height: 60px;
  margin-bottom: 5px;
  padding: 0;
}

#accordion-actions ul li a span:first-child, #accordion-actions ul li button:not(.btn-tampon) span:first-child,
#accordion-actions ul li a i, #accordion-actions ul li button:not(.btn-tampon) i {
  margin-right: 40px;
  margin-left: 20px;
}

#accordion-actions ul li a span:nth-child(2), #accordion-actions ul li button:not(.btn-tampon) span:nth-child(2),
#accordion-actions ul li a span, #accordion-actions ul li button:not(.btn-tampon) span {
  display: inline-block;
}

#accordion-actions ul li div.btn-accordion > button > span, #accordion-actions ul li div.btn-accordion > button > i,
#accordion-actions ul li div.btn-accordion > a > span, #accordion-actions ul li div.btn-accordion > a > i {
  display: inline-block;
  font-size: 0.9rem;
  line-height: 60px;
  white-space: nowrap;
  float: left;
}

#accordion-actions ul li div.btn-accordion > button > i, #accordion-actions ul li div.btn-accordion > a > i {
  font-size: 1.5rem;
}

#accordion-actions ul:hover li .btn-accordion, #accordion-actions ul:focus li .btn-accordion {
  width: 280px;
}

#accordion-actions ul:hover li a, #accordion-actions ul:focus li a {
  color: #ffffff;
}

#accordion-actions ul.keepopen li div.btn-accordion {
  width: 280px !important;
}

/**********************
       MODAL
**********************/
.modal.fade.show {
  background: rgba(67, 67, 67, 0.74) none repeat scroll 0% 0%;
}

.modal-backdrop.fade.show {
  display: none;
}

.modal-content {
  border-radius: 0;
}

.modal-content .modal-header {
  border-bottom: none;
}

.modal-content .modal-header .close {
  opacity: 1;
}

.modal-content .modal-footer {
  border-top: none;
  justify-content: flex-start;
  font-weight: bold;
}

.btn.hal-visualize-button.cancel {
  background-color: #90A4B6;
}

.btn.hal-visualize-button.cancel:hover {
  background-color: #647585;
}

/**********************
       TAMPONNER
**********************/
div .btn-tampon {
  padding: 5px;
  white-space: nowrap;
  margin-right: 5px;
  margin-bottom: 5px;
}

/*
.modal-body:not(#metadata-body, ) li{
  border: 1px solid $primary-blue1;
  padding: 10px 10px 5px 10px;
  color: $primary-blue1;
  border-bottom: 2px solid $primary-blue1;
  min-width: 200px;
  width: min-content;
  margin-bottom: 10px;
  list-style: none;
}
 */
/**********************
       SUPPRIMER
**********************/
#delete_Modal .modal-body, #exit_Modal .modal-body, #clear_Modal .modal-body {
  text-align: center;
}

#delete_Modal .modal-footer, #exit_Modal .modal-footer, #clear_Modal .modal-footer {
  justify-content: center;
}

/**********************
       PARTAGE
**********************/
[id^=transfert_Modal] {
  font-weight: bold;
}

[id^=transfert_Modal] .modal-dialog {
  max-width: 800px;
  text-align: left;
}

[id^=transfert_Modal] div:first-child {
  margin-bottom: 30px;
}

[id^=transfert_Modal] div p:first-child {
  color: #797676;
}

.hal-bguser.removeUser {
  margin-right: 10px;
}

.hal-bguser.removeUser button, .hal-bguser.removeUser a {
  border: none;
  margin-left: 15px;
  background-color: transparent;
}

.user-share {
  background: none;
  width: 100%;
  border: 1px solid #e8e8e8;
  height: 50px;
}

/**********************
       HISTORIQUE
**********************/
/* alert violet */
.alert-violet {
  color: #86708A;
  background-color: #E3D9E5;
  border-color: #C9BFCB;
}

.alert-violet h4 {
  font-size: unset;
  font-weight: unset;
  color: #ce5c00;
}

.alert {
  margin: 5px auto;
  padding: 5px;
}

.alert small {
  color: #999;
  font-size: 75%;
  margin-left: 5px;
}

#history-detailed {
  padding-top: 5px;
  padding-bottom: 5px;
}

/**********************
       RELATED
**********************/
#related_Modal form {
  overflow-y: auto;
  overflow-x: hidden;
  max-height: 50vh;
}

#related_Modal .modal-dialog {
  max-width: 900px;
}

#related_Modal .hal-option-button {
  padding: 0.375rem 0.75rem;
}

#related_Modal .form-related.pillar {
  border: 1px solid #cacaca;
  padding: 20px;
}

#related_Modal .form-related.pillar label {
  display: inline-block !important;
  flex: 0 0 0 0;
  padding-left: 0;
}

#related_Modal .form-related.pillar form {
  overflow: hidden;
  padding: 0 20px 20px;
}

/**********************
       Stamp/unstamp
**********************/
#tamponner_Modal .modal-dialog, #detamponner_Modal .modal-dialog {
  max-width: 100%;
  width: 80%;
}

.section-error {
  padding: 50px 200px;
  width: max-content;
  margin: 60px auto auto auto;
}

.error-title {
  color: #ff4600;
  font-size: 3rem;
}

.error-content {
  font-size: 1.15rem;
}

/**********************
        FACETS
**********************/
.section-facets {
  margin-top: 195px;
}

.title-facet {
  border-radius: 0;
  width: 100%;
  text-align: left;
  color: #337AB7;
  font-weight: bold;
  font-size: 1.15rem;
  background-color: #f6f6f6;
}

.title-facet span.hal-icon {
  float: right;
  font-size: 0.6875rem;
  margin-top: 2%;
}

.content-facet {
  margin-top: 15px;
  margin-left: 22px;
  padding-bottom: 15px;
}

.content-facet ul {
  max-height: 350px;
  overflow: auto;
  margin-bottom: 0;
}

.content-facet [type="checkbox"]:not(:checked) + label, .content-facet [type="checkbox"]:checked + label {
  width: 70%;
  font-size: 0.9rem;
}

.content-facet a {
  color: #000000;
}

.content-facet .text-muted {
  float: right;
  margin-right: 30px;
}

.filter-header {
  font-size: 1.15rem;
  margin-bottom: 15px;
  font-weight: bold;
}

#addFilter-button {
  display: block;
  margin: 0 auto;
  background-color: transparent;
  border: 1px solid #e8e8e8;
  border-radius: 0;
  font-weight: bold;
  margin-bottom: 15px;
}

#addFilter-button:hover {
  background-color: #b9b9b9;
}

/**********************
        TOOLS BAR
**********************/
.left-top {
  left: 250px;
  top: 0;
}

.results-tools {
  height: 81px;
  display: flex;
  align-items: center;
  width: 100%;
}

.results-tools > label {
  top: -10px;
  margin-left: 14px;
}

.results-tools .table-results-tools {
  width: 100%;
}

.results-tools .table-results-tools td:first-child, .results-tools .table-results-tools td:nth-child(2) {
  width: 10%;
}

.results-tools .table-results-tools td:first-child {
  padding-left: 10px;
  padding-bottom: 20px;
}

.results-tools .table-results-tools td:last-child {
  width: 20%;
}

.results-tools .table-results-tools td:nth-child(3) {
  width: 60%;
}

ul.dropdown-menu.pagination {
  min-width: auto;
}

.dropdown-sort button {
  color: #337AB7;
}

span.subtext {
  color: #646464;
}

.pagination {
  margin: auto;
  justify-content: center;
}

.pagination li {
  margin-left: 12px;
  margin-right: 12px;
  padding: 6px;
}

.pagination li a {
  color: #00005c;
}

.pagination li.active {
  border-bottom: 1px solid #00005c;
}

.detamponner .tampon-list, .tamponner .tampon-list {
  max-width: 50vw;
}

.detamponner button, .tamponner button {
  padding: 5px;
  margin: 2px;
}

.detamponner button .hal-icon, .tamponner button .hal-icon {
  margin-right: unset;
}

/**********************
        RESULTS
**********************/
.results-header > div:first-child > span, .results-header > div:first-child > button {
  font-weight: bold;
  font-size: 1.5rem;
  margin-bottom: 15px;
}

.results-header > div:first-child > button {
  background-color: transparent;
  border: none;
  font-size: 1.5rem;
  margin-left: 20px;
}

.results-header > div:nth-child(2) {
  margin-bottom: 50px;
}

.results-header > div:nth-child(2) .hal-bguser {
  background-color: #337AB7;
  font-size: 0.9rem;
  font-weight: normal;
}

.results-table tr td:first-child {
  width: 61px;
}

.results-table tr td:nth-child(2) {
  width: 100px;
}

.results-table tr .result-actions {
  width: 100px;
}

.results-table td a {
  color: #000000;
  width: 100%;
  height: 100%;
}

.results-table td .istex {
  font-size: 0.85rem;
  padding: 5px 8px;
  font-weight: bold;
  margin-right: 10px;
  background-color: #e8e8e8;
  display: inline !important;
}

.results-table td .istex:hover {
  background-color: #b9b9b9;
}

.results-table h3 {
  font-size: 1.15rem;
  margin-bottom: 0;
}

.results-table .authors-results a {
  font-weight: bold;
  color: #337AB7;
  font-size: 0.85rem;
}

.results-table .citation-results, .results-table .citation-results a {
  font-size: 0.85rem;
  color: #826B6B;
}

.results-table .halId-results {
  font-size: 0.85rem;
}

.dropdown-tools {
  border: 1px solid #cacaca;
  border-radius: 0;
  width: max-content;
}

.dropdown-tools li > button, .dropdown-tools li > a, .dropdown-tools li.nb-doc-checked {
  padding: 10px 21px 10px 34px;
}

.dropdown-tools li > a {
  display: block;
}

.dropdown-tools li > button, .dropdown-tools li > a {
  background-color: transparent;
  border: none;
  color: #000000;
  font-weight: bold;
  display: flex;
}

.dropdown-tools li > button .hal-icon, .dropdown-tools li > button .hal-icon::before, .dropdown-tools li > a .hal-icon, .dropdown-tools li > a .hal-icon::before {
  color: #124B89;
  margin-right: 17px;
}

.dropdown-tools li:not(.nb-doc-checked):hover, .dropdown-tools li:not(.nb-doc-checked):focus, .dropdown-tools li.active {
  background-color: #337AB7;
}

.dropdown-tools li:not(.nb-doc-checked):hover > button, .dropdown-tools li:not(.nb-doc-checked):hover > a, .dropdown-tools li:not(.nb-doc-checked):hover .hal-icon, .dropdown-tools li:not(.nb-doc-checked):hover .hal-icon::before, .dropdown-tools li:not(.nb-doc-checked):focus > button, .dropdown-tools li:not(.nb-doc-checked):focus > a, .dropdown-tools li:not(.nb-doc-checked):focus .hal-icon, .dropdown-tools li:not(.nb-doc-checked):focus .hal-icon::before, .dropdown-tools li.active > button, .dropdown-tools li.active > a, .dropdown-tools li.active .hal-icon, .dropdown-tools li.active .hal-icon::before {
  color: #ffffff;
}

.nb-doc-checked {
  color: #979797;
  padding-left: 10px;
}

.nb-doc-checked::after {
  border-bottom: 1px solid #979797;
  width: 100px;
  content: "";
  position: absolute;
  top: 45px;
  left: 34px;
}

.pop-over {
  display: none;
  position: absolute;
  right: 110%;
  bottom: 0%;
  width: max-content;
  padding: 15px 25px;
  overflow-y: scroll;
}

.pop-over.left {
  right: 0;
  z-index: 2;
}

.pop-over.show {
  display: block;
}

.pop-over h4 {
  margin-top: 10px;
  padding-left: 10px;
  font-size: 1.15rem;
}

.pop-over-content, .pop-over-footer {
  padding-left: 10px;
}

.pop-over-footer a {
  color: #337AB7;
}

@media (max-width: 575.98px) {
  .popupSaveSearch {
    position: relative;
    right: 0;
    left: 0;
    width: 100%;
    height: 175px;
  }
}

#formSaveSearch .input-group {
  display: table;
}

#formSaveSearch .input-group span, #formSaveSearch .input-group input {
  display: table-cell;
  font-size: 1rem;
}

#formSaveSearch .input-group input {
  margin-left: 20px;
  width: 90%;
}

#formSaveSearch .float-right {
  margin-top: 10px;
}

#formSaveSearch .float-right button {
  font-size: 1rem;
  display: inline;
  padding: 10px 30px;
}

@media (max-width: 1199.98px) {
  .col-3.section-facets > * {
    width: 100%;
  }
}

/*******
  ADVANCED
*******/
.input-group .form-btn-lang {
  background: #f4f4f4 !important;
  border: 1px solid #c8c8c8 !important;
  border-right: 0;
  border-radius: 0;
  font-weight: normal !important;
  text-transform: capitalize;
  font-size: 0.85rem;
}

.input-group input {
  width: 80%;
}

.input-group span.input-group-btn {
  width: 100px;
  height: 35px;
  background-color: inherit;
}

.input-group span.input-group-btn:hover {
  background-color: inherit;
}

.input-group span.input-group-btn button {
  border-radius: 0;
  font-weight: normal;
  color: #ffffff !important;
  background-color: #337AB7;
  padding: 0 10px;
}

.input-group span.input-group-btn button:hover {
  background-color: #09579A;
}

.input-group span.input-group-btn button.form-btn-del {
  color: #B94A48;
  font-size: 0.6875rem;
  background-color: inherit !important;
}

.input-group span.input-group-btn button.form-btn-del:hover {
  background-color: inherit !important;
}

#modifAdvancedSearch {
  text-align: center;
  font-size: 0.9rem;
  color: #ffffff;
  background-color: #337AB7;
  border-radius: 5px;
  padding: 5px 10px;
  white-space: nowrap;
  margin-bottom: 15px;
  border: transparent;
  width: 100%;
}

#modifAdvancedSearch:hover {
  text-decoration: none;
  background-color: #2C1C97;
}

#advSearch .dropdown-toggle {
  white-space: unset;
}

@media (max-width: 991.98px) {
  #advSearch .input-group-btn {
    width: unset;
  }
  #advSearch .input-group-btn .btn {
    margin-left: unset;
  }
  #advSearch .input-group-btn .btn span {
    display: none;
  }
  #advSearch #submit-element {
    position: relative;
    right: 0;
    bottom: 0;
    text-align: right;
  }
}

@media (max-width: 767.98px) {
  #advSearch .dropdown-toggle {
    width: 100%;
  }
  #advSearch .input-group-btn {
    margin-left: unset;
  }
  #advSearch #submit-element {
    width: 100%;
  }
  #advSearch #submit-element #submit-button {
    width: 100%;
  }
}

@media (max-width: 767.98px) {
  #searchHeaderSolr div {
    width: 100%;
    position: unset !important;
  }
  #searchHeaderSolr div button {
    width: 100%;
    float: unset !important;
  }
}

.search-spinner {
  color: #759FCC;
  top: 14px;
  right: 55px;
  width: 1.5rem;
  height: 1.5rem;
  border-width: 0.15rem;
}

/***************
FLASH MESSGAE
 ***************/
.flash-message {
  background-color: #E9EDF0;
  border-radius: 0;
  margin-bottom: 47px;
}

.flash-message .close {
  z-index: 1;
}

.flash-message .col-lg-1 {
  max-width: 1%;
  background-color: #337AB7;
  width: 40px;
  margin: -5px 0 -5px 0;
  padding: 0;
}

.flash-message .col-lg-8 {
  margin: auto;
}

.flash-message .col-lg-3 {
  margin: auto;
}

/***************
STATISTIQUES
 ***************/
.no-stat {
  height: 300px;
  margin-bottom: 50px;
}

/***************
MES DEPOTS & MON ACTIVITE
 ***************/
.dashboard-widget-section {
  margin-bottom: 55px;
}

.dashboard-widget-section .margin-right {
  margin-right: 1.5%;
}

.dashboard-widget-section h4 {
  font-size: 1.15rem;
}

@media (min-width: 768px) {
  .dashboard-widget-section .col-lg-6 {
    flex: 0 0 calc(6/12*100% - 1.5%);
    max-width: calc(6/12*100% - 1.5%);
  }
}

.item-dashboard {
  padding: 52px 47px 37px 47px;
  max-height: 576px;
  overflow: auto;
}

.item-dashboard .item:last-child {
  padding-top: 24px;
}

.item-dashboard .edit-deposit, .item-dashboard .reply-button {
  float: right;
  padding: 7px;
  margin: 2px;
}

.item-dashboard .edit-deposit .icon, .item-dashboard .reply-button .icon {
  padding-right: 5px;
}

.item-dashboard table {
  width: 100%;
}

.item-dashboard table tr td:first-child {
  padding: 0;
  margin-right: 30px;
}

.item-dashboard table tr td:nth-child(2) {
  width: 100%;
}

/***************
MES DEPOTS
 ***************/
.no-deposit {
  height: 100%;
}

/***************
MON ACTIVITE
 ***************/
.icon-activity {
  background-color: #e8e8e8;
  border-radius: 90px;
  width: 51px;
  height: 51px;
  margin-right: 30px;
}

.icon-activity span {
  display: block;
  padding-left: 35%;
  padding-top: 35%;
  color: #495572;
}

.date-activity {
  float: right;
  color: #495572;
  font-style: italic;
}

.no-activity {
  height: 400px;
  margin-bottom: 50px;
}

/***************
ORCID
 ***************/
.gray-separator {
  padding: 1px;
  background-color: #e8e8e8;
  margin-bottom: 20px;
  border-radius: 0.25rem;
}

/**********************
       NO RESUME
**********************/
.no-cv {
  height: 100%;
  align-items: center;
  padding: 50px 0px;
  /*.icon{
    font-size: 28rem;
    opacity: .1;
    margin: auto;
    width: unset;
  }*/
}

.no-cv .hal-option-button {
  width: unset;
  padding: 5px 10px;
  margin-top: 20px;
  margin-bottom: 40px;
}

.no-cv .ccsd_form_required {
  flex: unset;
}

#form-create-cv {
  width: 80%;
}

#form-create-cv textarea {
  border: 1px solid #c8c8c8 !important;
}

#form-create-cv .textarea-group {
  margin-top: 10px;
  position: relative;
}

#form-create-cv .textarea-group > button.dropdown-toggle {
  width: 100%;
  font-weight: normal !important;
  text-transform: capitalize;
  text-align: left;
  background: #f4f4f4 !important;
  border-left: 1px !important;
  border: 1px solid #cacaca !important;
  border-bottom: 0 !important;
  border-radius: 0;
  height: 40px !important;
  font-size: 0.85rem;
}

#form-create-cv .textarea-group .pull-right button {
  margin-top: 5px;
  font-size: 0.85rem;
  color: #337AB7;
}

#form-create-cv .textarea-group .pull-right button.form-btn-del {
  font-weight: normal;
  color: #B94A48 !important;
  margin-bottom: 10px;
}

/**********************
 GENERAL RESUME
**********************/
/*
  HEAD WITH CONSULT ... BUTTON
 */
.resume-head h1 {
  float: left;
  font-weight: unset;
}

.resume-head a {
  font-size: 0.9rem;
  margin-top: 40px;
}

/*
  EXPLICATIF TEXT FOR EACH TAB
 */
.explicatif-text {
  color: #797676;
  line-height: 2;
  margin-bottom: 36px;
}

.explicatif-text + button.hal-visualize-button {
  float: right;
  position: relative;
  top: -80px;
}

/**********************
      MY WIDGETS
**********************/
.gu-transit {
  opacity: 0.2;
}

.gu-mirror {
  padding: 5px;
  text-align: left;
  position: fixed !important;
  margin: 0 !important;
  z-index: 9999 !important;
  opacity: 0.8;
  filter: alpha(opacity=80);
  list-style: none;
  background-color: #E9EDF0;
  font-weight: bold;
}

.gu-mirror label {
  padding-left: 60px !important;
}

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

.gu-unselectable {
  -webkit-user-select: none !important;
  -moz-user-select: none !important;
  -ms-user-select: none !important;
  user-select: none !important;
}

/**********************
     BIOGRAPHY DATA
**********************/
.section-shadow.pg-20 h3 {
  font-size: 1.15rem;
}

.section-shadow.pg-20.col-lg-5 {
  max-height: 563px;
  overflow: auto;
}

.section-shadow.pg-20.col-lg-5 textarea {
  height: 130px;
}

.section-shadow.pg-20 textarea {
  resize: none;
  height: 230px;
  width: 100%;
}

.section-shadow.pg-20 .little {
  max-height: 250px;
  overflow: auto;
}

.section-shadow.pg-20 .user-photo {
  margin: 50px 0;
}

.section-shadow.pg-20 li {
  margin-bottom: 30px;
}

.section-shadow.pg-20 .displayed .select2-container {
  width: 100% !important;
}

.section-shadow.pg-20 .displayed .select2-selection {
  border: none;
}

.section-shadow.pg-20 .displayed input {
  width: 100% !important;
  border: 1px solid #90A4B6;
  display: block;
  height: 42px;
  padding-left: 10px;
}

.section-shadow.pg-20 .displayed .select2-search {
  float: none;
}

.section-shadow.pg-20 .displayed .icon-add_white:before {
  color: #337AB7;
}

.section-shadow.pg-20 .displayed button.go-back:hover .icon-add_white:before {
  color: #000000;
}

#content-resume .tab-content li {
  margin-bottom: 0;
}

@media (min-width: 992px) {
  #biography-data .pg-20:not(:first-of-type) {
    margin-left: 3%;
  }
}

.section-shadow.pg-20 .displayed .select2-selection__choice, .ticket {
  background-color: #90A4B6;
  border: none;
  padding: 5px 15px;
  border-radius: 0;
  color: white;
  margin-bottom: 10px;
}

.section-shadow.pg-20 .displayed .select2-selection__choice span, .ticket span {
  color: white;
  padding-right: 10px;
}

.ticket {
  display: inline-flex;
  width: max-content;
}

#skills {
  display: flex;
  flex-wrap: wrap;
}

#skills div {
  margin-right: 10px;
}

.select2-container--open.s2-to-tree {
  margin-top: -30px !important;
}

.wrapper-switch {
  display: flex;
}

.wrapper-switch h3 {
  flex-grow: 12;
  font-weight: unset;
}

.wrapper-switch h3 button span {
  color: #337AB7;
}

.social-name {
  color: #707070;
  font-weight: bold;
  min-width: 45%;
}

.no-in-resume {
  font-weight: bold;
  text-align: center;
  color: #797676;
  font-size: 1.15rem;
  padding: 72px 0;
}

#domains-resume .select2-search {
  margin-bottom: unset;
}

#domains-resume .select2-search__field {
  margin-top: 120px;
}

#domains-resume .select2-container {
  border: unset;
}

#domains-resume .displayed {
  flex-direction: column;
  height: 95%;
  justify-content: flex-end;
}

#domains-resume .displayed:not(.hide) {
  display: flex;
}

#skills-resume .displayed {
  flex-direction: column;
  justify-content: space-between;
}

#skills-resume .displayed:not(.hide) {
  display: flex;
}

@media (min-width: 992px) {
  #skills-resume .displayed {
    height: 95%;
  }
}

@media (max-width: 991.98px) {
  #skills-resume .displayed {
    height: 150px;
  }
}

#user-publications .row, #user-facettes .row {
  width: 100%;
}

#user-publications .col-xl-4, #user-facettes .col-xl-4 {
  border: 1px solid #dedede;
  padding: 10px;
  height: fit-content;
}

#user-publications #dragon-publi li, #user-publications #dragon-widget li, #user-facettes #dragon-publi li, #user-facettes #dragon-widget li {
  display: flex;
  align-items: center;
  padding: 5px;
  background-color: #E9EDF0;
  margin: 5px;
}

#user-publications #dragon-publi li.selected, #user-publications #dragon-widget li.selected, #user-facettes #dragon-publi li.selected, #user-facettes #dragon-widget li.selected {
  background-color: #90A4B6;
  color: #ffffff;
  font-weight: bold;
}

#user-publications #dragon-publi li label, #user-publications #dragon-widget li label, #user-facettes #dragon-publi li label, #user-facettes #dragon-widget li label {
  font-weight: unset;
}

#user-publications #list-publi-resume, #user-facettes #list-publi-resume {
  padding-left: 2%;
  padding-right: 0;
  overflow-y: auto;
}

#user-publications #list-publi-resume table, #user-facettes #list-publi-resume table {
  border: 1px solid #E9EDF0;
}

#user-publications #list-publi-resume table thead tr, #user-facettes #list-publi-resume table thead tr {
  background-color: #E9EDF0;
}

#user-publications #list-publi-resume table thead td, #user-facettes #list-publi-resume table thead td {
  padding-top: 7px;
  padding-bottom: 7px;
}

#user-publications #list-publi-resume table thead td .tick, #user-facettes #list-publi-resume table thead td .tick {
  top: -17px;
}

#user-cv-customization #css-form {
  display: flex;
  flex-direction: column;
}

#user-cv-customization #css-form #theme-element {
  width: 40%;
}

#user-cv-customization #css-form #css-element {
  width: 90%;
}

.editor-toolbar .table {
  width: unset;
}

.icon-cv {
  background: #d2352c;
  padding: 5px;
  color: #ffffff;
}

@media (max-width: 1199.98px) {
  .xxxlarge {
    height: 80px !important;
    width: 80px !important;
  }
  .xxxlarge .initials {
    font-size: 40px !important;
    top: 18px !important;
  }
}

#social {
  position: absolute;
  bottom: 0;
  right: 0;
}

#social a {
  margin-left: 4px;
}

#social .icon-cv {
  font-size: 20px;
}

#social .icon-twitter {
  background-color: #4299ED;
}

#social .icon-facebook {
  background-color: #2C408D;
}

#social .icon-linkedin {
  background-color: #0e70a1;
}

#resume-visu .p50 {
  padding: 45px 50px 25px 50px;
  width: 100%;
}

#resume-visu.navbar-collapse {
  align-items: initial;
}

.read-more {
  max-height: 355px;
  word-wrap: anywhere;
  overflow: hidden;
}

#domain-resume-visualization {
  max-height: 310px;
}

#domain-resume-visualization .hal-bgtext {
  background-color: #90A4B6;
  color: #ffffff;
  font-size: 0.9rem;
  font-weight: bold;
}

#resume-content-document .section-shadow.pg-20 {
  display: flex;
  width: 100%;
}

#resume-content-document .section-shadow.pg-20 form {
  margin: 0;
  flex-grow: 3;
}

#resume-content-document .section-shadow.pg-20 input {
  width: 30%;
}

#resume-content-document .search:focus-visible {
  outline: none;
}

#resume-content-document .results-table .media {
  margin-right: 10px;
}

#resume-content-document .title-facet {
  padding: 0.75rem;
}

#resume-content-document .title-facet span.hal-icon {
  margin-top: 0;
  margin-right: 10px;
  padding-top: 8px;
}

#resume-content-document .table-white tr:last-child {
  border-bottom: none;
}

.read-more .tab-content .hide {
  white-space: break-spaces;
}

@media (max-width: 1006px) {
  #resume-content-document .section-shadow.pg-20 {
    display: block;
  }
  #resume-content-document .section-shadow.pg-20 input {
    width: 80%;
  }
  #resume-content-document .section-shadow.list {
    width: 100%;
  }
}

@media (max-width: 1406px) {
  #resume-presentation-visu .col-8 {
    max-width: 100%;
    flex: 0 0 100%;
  }
  #resume-presentation-visu .col-2 {
    margin-top: 30px;
    top: 0 !important;
  }
}

@media (max-width: 991.98px) {
  #resume-presentation-visu #coord {
    margin: 0;
    width: 100%;
  }
  #resume-presentation-visu #coord .col-3 {
    flex: 0 0 100%;
    max-width: 100%;
    text-align: left;
    margin-bottom: 20px;
  }
  #resume-presentation-visu #coord .col-3 tr {
    display: grid;
  }
  #resume-presentation-visu .photo-col-3 {
    flex: 0 0 100%;
    max-width: 100%;
    padding: 0;
  }
  #resume-presentation-visu .row:first-of-type .col-9 {
    flex: 0 0 100%;
    max-width: 100%;
    text-align: center;
  }
  #resume-presentation-visu .row:first-of-type .col-9 .col-2 {
    flex: 0 0 50%;
    max-width: 50%;
  }
  #resume-presentation-visu .navbar-toggler span span {
    background-color: #337AB7;
  }
}

@media (min-width: 992px) and (max-width: 1199.98px) {
  #resume-presentation-visu .row:first-of-type .col-9 {
    text-align: right;
  }
  #resume-presentation-visu .row:first-of-type .col-9 .row {
    justify-content: flex-end;
  }
}

.m-deposit .form-meta .has-error .error {
  display: block;
}

.m-deposit .form-meta .has-error input, .m-deposit .form-meta .has-error textarea {
  border: 1px solid #B94A48 !important;
}

.modal .icon-required {
  display: none;
}

#exit_Modal {
  z-index: 1000;
}

#modal-typdoc {
  z-index: 999;
}

#list-item-deposit {
  font-size: 1.15rem;
  position: fixed;
}

#list-item-deposit li {
  padding: 5px;
}

#list-item-deposit li a {
  color: #000000;
}

#list-item-deposit li.main-item {
  font-weight: bold;
}

#list-item-deposit li.main-item:not(first-child) {
  margin-top: 20px;
}

#list-item-deposit li.child-item {
  padding-left: 20px;
  font-size: 0.9rem;
  margin-top: 10px;
}

#list-item-deposit li.active a {
  color: #337AB7;
}

#list-item-deposit li.active.child-item {
  background-color: #e8e8e8;
}

#list-item-deposit li:hover {
  background-color: #e8e8e8;
}

#list-item-deposit li:hover a {
  color: #337AB7;
}

.submission-form {
  margin-bottom: 23px;
}

.submission-form h2 small {
  font-size: 1.15rem;
  color: #646464;
}

.submission-form .submit-step .step-title {
  padding: 15px 36px;
  font-size: 1.15rem;
  color: #337AB7;
  background: #f6f6f6;
}

.submission-form .submit-step .step-title small {
  font-size: 0.85rem;
  font-style: italic;
  padding-left: 10px;
}

.upload-area {
  border: 1px dashed #00005c;
  border-radius: 6px;
  opacity: 1;
  height: 242px;
  position: relative;
}

.upload-area.is-active {
  background-color: #E9EDF0;
}

.upload-area .icon-upload {
  color: #00005c;
  font-size: 100px;
}

.upload-area .upload-text, .upload-area .upload-text-sep {
  color: #b5b5b5;
  padding-top: 10px;
  font-size: 1.5rem;
}

.upload-area .upload-text-sep {
  font-size: 0.9rem;
}

.upload-area #fileupload {
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 100%;
  cursor: pointer;
  opacity: 0;
}

.upload-area #fileupload:focus {
  outline: none;
}

.upload-area:hover {
  background-color: #f5f5f5;
  cursor: pointer;
  -webkit-transition: background-color 2s ease-out;
  -moz-transition: background-color 2s ease-out;
  -o-transition: background-color 2s ease-out;
  transition: background-color 2s ease-out;
}

.table-files-head {
  width: calc(100% - 40px);
}

.table-files-head th {
  padding-top: 10px;
  padding-bottom: 10px;
}

.row-file {
  background: #eeeeee;
}

.row-file .checkbox-mainfile {
  padding-left: 30px !important;
  font-size: 0.85rem !important;
  top: -16px;
  left: 6px;
}

.row-file .div-file-origin {
  display: none;
}

.row-file .div-file-set-main {
  display: block;
}

.row-file.file-main {
  background: #ffffff;
  border-bottom: 10px solid #f5f5f5;
}

.row-file.file-main .div-file-origin {
  display: block;
}

.row-file.file-main .div-file-set-main {
  display: none;
}

.row-file.file-main .details {
  background: #ffffff;
}

.row-file.file-main + .row-file-details .default-annex,
.row-file.file-main + .row-file-details .format-annex {
  display: none;
}

.row-file:not(.file-main):not(:last-child) td:not(:last-child) {
  border-bottom: 1px solid #c6c6c6;
}

.row-file td {
  padding-top: 10px;
  padding-bottom: 10px;
}

.row-file td.details {
  background: #e6e6e6;
}

.row-file td.delete {
  background: #f5f5f5;
}

.row-file .file-name {
  display: block;
  color: #000000;
  font-size: 0.9rem;
  font-weight: bold;
}

.row-file .file-size {
  display: block;
  color: #646464;
  font-size: 0.7rem;
}

.row-file select {
  width: 100%;
  font-size: 11px;
  height: 27px;
  background: inherit;
}

.row-file .file-more {
  color: #000000;
  font-size: 6px;
}

.row-file .btn-link:hover, .row-file .btn-link:active {
  text-decoration: none;
}

.row-file .licence-date {
  border-radius: 0 !important;
  border: 1px solid #c8c8c8;
  height: 27px;
}

.row-file .licence-date input {
  border: none !important;
}

.row-file .licence-date .calendar-trigger {
  left: 0px;
  padding-top: 0;
}

/* typdoc step */
#modal-typdoc .modal-dialog {
  max-width: 1300px;
}

#modal-typdoc .modal-dialog .modal-header {
  background: #f5f5f5;
}

#modal-typdoc .modal-dialog .modal-header .modal-title {
  color: #124B89;
  font-size: 1.15rem;
  font-weight: bold;
}

#modal-typdoc .modal-dialog .modal-body {
  padding: 2rem 4rem 1rem;
}

#modal-typdoc .modal-dialog .typdoc-btn-group {
  background: #efefef;
  width: 100%;
  margin: 10px;
  height: 50px;
}

#modal-typdoc .modal-dialog .typdoc-btn-group.selected {
  background-color: #00005c;
}

#modal-typdoc .modal-dialog .typdoc-btn-group.selected.selected .btn {
  color: white;
}

#modal-typdoc .modal-dialog .typdoc-btn-group .btn {
  height: 100%;
  font-weight: bold;
  border-radius: 0;
}

#modal-typdoc .modal-dialog .typdoc-btn-group .btn:disabled {
  cursor: not-allowed;
}

#modal-typdoc .modal-dialog .typdoc-btn-group .btn-typdoc {
  width: 85%;
  text-align: left;
}

#modal-typdoc .modal-dialog .typdoc-btn-group .btn-typdoc .typdoc-icon {
  text-align: center;
  width: 25px;
}

#modal-typdoc .modal-dialog .typdoc-btn-group .btn-typdoc .typdoc-icon i {
  font-size: 18px;
}

#modal-typdoc .modal-dialog .typdoc-btn-group .btn-typdoc .typdoc-label {
  font-size: 0.9rem;
}

#modal-typdoc .modal-dialog .typdoc-btn-group .btn-typdoc-more {
  width: 10%;
  float: right;
}

#modal-typdoc .modal-dialog .typdoc-btn-group:not(.selected):hover, #modal-typdoc .modal-dialog .typdoc-btn-group:not(.selected).btn:focus {
  background: #cacaca;
}

#modal-typdoc .modal-dialog .typdoc-btn-group .dropdown-menu {
  background: #efefef;
  border-radius: 0;
  box-shadow: 0px 3px 6px #00000029;
  padding: 20px 30px;
}

#modal-typdoc .modal-dialog .typdoc-btn-group .dropdown-menu .dropdown-item {
  padding: 10px 0;
}

#modal-typdoc .modal-dialog .typdoc-btn-group .dropdown-menu .dropdown-item:not(:last-child) {
  border-bottom: 1px solid #cacaca;
}

#modal-typdoc .modal-dialog .typdoc-btn-group .dropdown-menu .dropdown-item.selected {
  font-weight: bold;
}

#modal-typdoc .modal-dialog .typdoc-btn-group .dropdown-menu .dropdown-item:hover {
  background: inherit;
  color: #00005c;
}

/*
STEP EXTRACT
*/
#identifiertype {
  z-index: 1;
  background: #f4f4f4;
}

#identifiertype:hover {
  background: #647585;
}

.show > #identifiertype {
  background: #647585;
}

.extract-info, .author-info, .mainmeta-info, .related-info {
  background: #efefef;
  margin-top: -15px;
}

.extract-info > div, .author-info > div, .mainmeta-info > div, .related-info > div {
  padding: 35px;
  word-break: break-word;
}

.extract-info > div.errors, .author-info > div.errors, .mainmeta-info > div.errors, .related-info > div.errors {
  color: #B94A48;
}

.extract-info .extract-meta, .author-info .extract-meta, .mainmeta-info .extract-meta, .related-info .extract-meta {
  font-size: small;
  color: #646464;
  font-style: italic;
}

.extract-info .close-extract-info, .extract-info .close-error-info, .author-info .close-extract-info, .author-info .close-error-info, .mainmeta-info .close-extract-info, .mainmeta-info .close-error-info, .related-info .close-extract-info, .related-info .close-error-info {
  color: #B94A48;
  font-weight: normal;
}

/**
STEP author
 */
#aut_new #searchAuthor {
  border-radius: 0;
  height: 50px;
}

#aut_new #searchAuthor-label {
  font-size: 1.15rem;
  font-weight: bold;
}

.ui-autocomplete.ui-front .ui-state-active {
  background: #f4f4f4;
  font-weight: normal !important;
}

.ui-autocomplete.ui-front .ui-menu-item {
  padding: 0;
  line-height: 25px;
}

.ui-autocomplete.ui-front .ui-menu-item.highlight {
  background: #337AB7;
}

.ui-autocomplete.ui-front .ui-menu-item.highlight a {
  color: #ffffff !important;
}

.ui-autocomplete.ui-front .ui-menu-item.highlight a:hover {
  background: #09579A;
}

.ui-autocomplete.ui-front .ui-menu-item.highlight:hover {
  background: #09579A;
}

.ui-autocomplete.ui-front .ui-menu-item.highlight .ui-state-active {
  background: #09579A !important;
}

.ui-autocomplete.ui-front .ui-menu-item .valid, .ui-autocomplete.ui-front .ui-menu-item .preferred, #struct-info .valid, #struct-info .preferred {
  color: #468847;
  font-weight: bold !important;
}

.ui-autocomplete.ui-front .ui-menu-item .old, #struct-info .old {
  color: #AA8F52;
}

.ui-autocomplete.ui-front .ui-menu-item .incoming, #struct-info .incoming {
  color: #B94A48;
}

.ui-autocomplete.ui-front .ui-menu-item span > span:not(.acronym), .ui-autocomplete.ui-front .ui-menu-item span > dl, #struct-info span > span:not(.acronym), #struct-info span > dl {
  color: #797676;
  font-size: smaller;
}

.ui-autocomplete.ui-front .ui-menu-item .address, .ui-autocomplete.ui-front .ui-menu-item .idhal, .ui-autocomplete.ui-front .ui-menu-item .acronym, #struct-info .address, #struct-info .idhal, #struct-info .acronym {
  font-weight: bold;
}

.ui-autocomplete.ui-front .ui-menu-item .acronym:before, #struct-info .acronym:before {
  content: ' - ';
}

.ui-autocomplete.ui-front .ui-menu-item span > dl > dt, #struct-info span > dl > dt {
  font-weight: normal;
  display: inline;
}

.ui-autocomplete.ui-front .ui-menu-item span > dl > dt .acronym:before, #struct-info span > dl > dt .acronym:before {
  content: '';
}

.ui-autocomplete.ui-front .ui-menu-item span > dl > dt .acronym:after, #struct-info span > dl > dt .acronym:after {
  content: ' - ';
}

.ui-autocomplete.ui-front .ui-menu-item span > dl > dt:after, #struct-info span > dl > dt:after {
  content: ' ; ';
}

.ui-autocomplete.ui-front .ui-menu-item span > dl > dt .code:before, #struct-info span > dl > dt .code:before {
  content: ' : ';
}

.view-author-detailed {
  font-weight: bold;
  color: #337AB7;
  background-color: #f2f2f2;
  font-size: inherit;
  width: 100%;
  border-radius: 0 !important;
}

.view-author-detailed:hover {
  color: #09579A;
}

div.authors {
  background: #f5f5f5;
}

div.authors table.author {
  min-height: 120px;
}

div.authors .author-state-highlight {
  height: 60px;
  border: 2px dashed #e6e6e6;
  display: block;
  margin: 0.5rem !important;
}

div.authors .author-icon-drag, div.authors .author-info, div.authors .author-icon-edit {
  background: #e6e6e6;
  padding-top: 10px;
  padding-bottom: 10px;
}

div.authors .author-icon-drag {
  width: 50px;
  padding-left: 20px !important;
  color: #797676;
}

div.authors .author-icon-mv-top, div.authors .author-icon-mv-bottom {
  color: #c2c2c2;
  padding: 0;
  height: 10px;
}

div.authors .author-icon-mv-bottom {
  margin-top: -10px;
}

div.authors .author-info {
  width: 250px;
}

div.authors .author-info h5 {
  font-weight: bold;
}

div.authors .author-info .id-hal-author {
  color: #797676;
}

div.authors .author-icon-edit {
  width: 50px;
  text-align: right;
  padding-right: 20px !important;
  color: #797676;
}

div.authors .author-icon-edit button {
  margin-right: -15px;
  margin-top: -25px;
}

div.authors .author-icon-edit button i {
  color: #797676;
}

div.authors .author-icon-edit button:disabled {
  cursor: not-allowed;
}

div.authors .div-author-role {
  margin-left: 0;
  padding: 0;
  color: #373737;
}

div.authors .div-author-role select {
  background: inherit;
  border-radius: 0;
  font-size: 0.7rem;
  border-color: #a2a2a2;
}

div.authors .author-affiliations {
  background: #ececec;
}

div.authors .author-affiliations .searchStructure {
  width: 70%;
  margin-left: 40px;
  background: inherit;
  border: 1px solid #a2a2a2;
}

div.authors .author-affiliations .structure-menu {
  position: absolute;
  right: 10px;
  color: #797676;
}

div.authors .author-affiliations .structure-menu .dropdown-item {
  font-size: 0.85rem;
}

div.authors .author-remove {
  padding-left: 5px;
  width: 60px;
}

div.authors .author-remove .btn {
  font-size: 0.85rem;
}

.step-author-actions {
  background: #efefef;
  padding: 10px;
}

@media (min-width: 992px) {
  .collapse.dont-collapse-sm {
    display: block;
    height: auto !important;
    visibility: visible;
  }
}

#modal-author.show, #modal-ref.show {
  background: rgba(0, 0, 0, 0.5);
}

#modal-author .modal-dialog, #modal-ref .modal-dialog {
  max-width: 900px;
  width: 60%;
}

#modal-author .modal-dialog .modal-content, #modal-ref .modal-dialog .modal-content {
  color: #00005f;
}

#modal-author .modal-dialog .modal-content .label, #modal-ref .modal-dialog .modal-content .label {
  color: #fff;
  border-radius: 3px;
  padding: 1px 2px;
  margin: 2px;
  font-size: 70%;
}

#modal-author .modal-dialog .modal-content .label-default, #modal-ref .modal-dialog .modal-content .label-default {
  background: #808080;
  position: inherit;
  font-weight: bold;
}

#modal-author .modal-dialog .modal-content h6, #modal-ref .modal-dialog .modal-content h6 {
  padding: .9rem 0 0 .1rem;
  font-weight: bold;
}

#modal-author .modal-dialog .modal-content h6 .label-labo, #modal-author .modal-dialog .modal-content h6 .label-researchteam, #modal-ref .modal-dialog .modal-content h6 .label-labo, #modal-ref .modal-dialog .modal-content h6 .label-researchteam {
  background: #ff4600;
}

#modal-author .modal-dialog .modal-content h6 .label-institution, #modal-ref .modal-dialog .modal-content h6 .label-institution {
  background: #7d2d46;
}

#modal-author .modal-dialog .modal-content h6 .label-rgplabo, #modal-author .modal-dialog .modal-content h6 .label-department, #modal-ref .modal-dialog .modal-content h6 .label-rgplabo, #modal-ref .modal-dialog .modal-content h6 .label-department {
  background: #cd3c1b;
}

#modal-author .modal-dialog .modal-content h6 .label-rgpinst, #modal-ref .modal-dialog .modal-content h6 .label-rgpinst {
  background: #641e6e;
}

#modal-author .modal-dialog .modal-content h6 .badge, #modal-ref .modal-dialog .modal-content h6 .badge {
  background: #808080;
  color: #fff;
  border-radius: 5px;
  margin: 1px;
  padding: 2px;
  font-size: 70%;
}

#modal-author .modal-dialog .modal-content .struct-infos, #modal-ref .modal-dialog .modal-content .struct-infos {
  padding-left: .5rem;
  padding-bottom: .2em;
  font-size: .8rem;
  line-height: 1;
}

#modal-author .modal-dialog .modal-content .struct-infos p, #modal-ref .modal-dialog .modal-content .struct-infos p {
  margin: 4px 0 0 0;
}

#modal-author .modal-dialog .modal-content .struct-infos .struct-sigle, #modal-ref .modal-dialog .modal-content .struct-infos .struct-sigle {
  margin-top: 2px;
}

#modal-author .modal-dialog .modal-content .struct-infos .struct-lock, #modal-ref .modal-dialog .modal-content .struct-infos .struct-lock {
  color: #808080;
  margin-top: 8px;
}

#modal-author .modal-dialog .modal-content .struct-infos .struct-country, #modal-ref .modal-dialog .modal-content .struct-infos .struct-country {
  font-weight: bold;
}

#modal-author .modal-dialog .modal-content .struct-infos li, #modal-ref .modal-dialog .modal-content .struct-infos li {
  list-style: none;
  margin: 2px 0 0 0;
}

#modal-author .modal-dialog .modal-content .struct-infos li ul::before, #modal-ref .modal-dialog .modal-content .struct-infos li ul::before {
  content: '\002013';
  margin: .2em;
}

#modal-author .modal-dialog .modal-content .struct-infos ul, #modal-ref .modal-dialog .modal-content .struct-infos ul {
  padding: 0;
  margin: 2px 0 0 0;
}

#modal-author .modal-dialog .modal-header, #modal-ref .modal-dialog .modal-header {
  padding-top: 2rem;
}

#modal-author .modal-dialog .modal-title, #modal-ref .modal-dialog .modal-title {
  font-weight: bold;
  margin: auto;
}

#modal-author .modal-dialog .modal-body, #modal-ref .modal-dialog .modal-body {
  padding: 10px 100px;
}

#modal-author .modal-dialog .close, #modal-ref .modal-dialog .close {
  margin-top: -2rem;
}

#modal-author #Ajouter-element, #modal-ref #Ajouter-element {
  text-align: right;
}

#modal-author .ui-menu-item, #modal-ref .ui-menu-item {
  width: 100%;
  border: none;
}

#modal-author .ui-menu-item:first-child, #modal-ref .ui-menu-item:first-child {
  background: inherit;
}

#modal-author .ui-menu-item:first-child a, #modal-ref .ui-menu-item:first-child a {
  color: inherit !important;
}

#modal-author .ui-menu-item:first-child a:hover, #modal-ref .ui-menu-item:first-child a:hover {
  background: #f4f4f4 !important;
}

#modal-author .ui-menu-item:first-child:hover, #modal-ref .ui-menu-item:first-child:hover {
  background: #f4f4f4 !important;
}

#modal-author .ui-menu-item:first-child .ui-state-active, #modal-ref .ui-menu-item:first-child .ui-state-active {
  background: #f4f4f4 !important;
}

#modal-author #struct-info, #modal-ref #struct-info {
  border: 1px solid #a2a2a2;
  margin-top: 20px;
  margin-bottom: 20px;
}

#modal-author .label-struct-type, #modal-ref .label-struct-type {
  background-color: #ACA8C4;
  padding: 2px 10px;
  color: #ffffff;
}

#modal-author .new-struct-form > .list-group > .new-struct > .new-struct-item > .new-struct-label input[type=text], #modal-ref .new-struct-form > .list-group > .new-struct > .new-struct-item > .new-struct-label input[type=text] {
  display: none;
}

#modal-author .list-group, #modal-ref .list-group {
  list-style: none;
}

#modal-author .structure-icons, #modal-ref .structure-icons {
  float: right;
}

.authors-from-structure {
  min-height: 300px;
}

#authorsfromstructsearch {
  width: 70%;
}

#my-authors, #authors-from-struct {
  max-height: 200px;
  overflow-y: scroll;
  border: 1px solid #a2a2a2;
  padding-left: 20px;
}

#my-authors [type="checkbox"]:not(:checked), #my-authors [type="checkbox"]:checked, #authors-from-struct [type="checkbox"]:not(:checked), #authors-from-struct [type="checkbox"]:checked {
  position: inherit;
  opacity: inherit;
  margin-right: 10px;
  width: inherit;
}

#modal-sherpa .modal-content {
  padding: 10px;
}

#modal-sherpa caption {
  caption-side: top;
}

#modal-sherpa .text-left > span {
  border-radius: 0 !important;
}

#modal-sherpa tr > td:first-child {
  font-weight: bold;
}

.structure-name i, .referential i {
  color: #000000;
}

.structure-name.valid, .referential.valid {
  color: #468847;
  font-weight: bold !important;
}

.structure-name.old, .referential.old {
  color: #AA8F52;
}

.structure-name.incoming, .referential.incoming {
  color: #B94A48;
}

.authors .structure-name {
  cursor: grab;
}

#new-struct-form li {
  width: 100%;
  border: none;
}

.new-struct-label {
  display: none;
}

#modal-author .glyphicon {
  display: none;
}

#modal-author .structure-arborescence h5 + div {
  display: none;
}

#form_mainmeta #type-element {
  display: none;
}

.form-meta .row {
  margin-left: 10px;
  margin-right: 10px;
}

.form-meta .row#mainDomain-element {
  margin-bottom: -10px;
}

.form-meta .row .selection {
  width: inherit;
  display: inherit;
  padding-right: 10%;
}

.form-meta .row #select2-mainDomain-container:empty {
  background-color: #fff !important;
  width: 100%;
}

.form-meta .row #select2-mainDomain-container {
  width: fit-content;
}

.form-meta .row .select2-container--default .select2-selection--single {
  width: inherit;
}

.form-meta .row .textarea-group {
  margin-top: 10px;
  position: relative;
}

.form-meta .row .textarea-group:not(:first-of-type) {
  margin-top: 45px;
}

.form-meta .row .textarea-group > button.dropdown-toggle {
  width: 100%;
  font-weight: normal !important;
  text-transform: capitalize;
  text-align: left;
  background: #f4f4f4 !important;
  border-left: 1px !important;
  border: 1px solid #cacaca !important;
  border-bottom: 0 !important;
  border-radius: 0;
  height: 40px !important;
  font-size: 0.85rem;
}

.form-meta .row .textarea-group .pull-right {
  float: right;
}

.form-meta .row .textarea-group .pull-right button {
  margin-top: 5px;
  font-size: 0.85rem;
  color: #337AB7;
}

.form-meta .row .textarea-group .pull-right button.form-btn-del {
  font-weight: normal;
  color: #B94A48 !important;
  margin-bottom: 10px;
}

.form-meta .row textarea {
  border: 1px solid #c8c8c8 !important;
  border-radius: 0;
}

.form-meta .row select {
  width: 300px;
  background: #f4f4f4;
  border-radius: 0px;
  border: 1px solid #C8C8C8;
}

.form-meta .row .input-group .form-btn-lang {
  background: #f4f4f4;
  border: 1px solid #c8c8c8;
  border-right: 0 !important;
  border-radius: 0;
  font-weight: normal;
  text-transform: capitalize;
  font-size: 0.85rem;
}

.form-meta .row .input-group input {
  width: 80%;
}

.form-meta .row .input-group span.input-group-btn {
  width: 100px;
  height: 35px;
  background-color: inherit;
}

.form-meta .row .input-group span.input-group-btn:hover {
  background-color: inherit;
}

.form-meta .row .input-group span.input-group-btn button {
  border-radius: 0;
  font-weight: normal;
  color: #ffffff;
  background-color: #337AB7;
  padding: 0 10px;
}

.form-meta .row .input-group span.input-group-btn button:hover {
  background-color: #09579A;
}

.form-meta .row .input-group span.input-group-btn button.form-btn-del {
  color: #B94A48 !important;
  font-size: 0.6875rem;
  background-color: inherit !important;
}

.form-meta .row .input-group span.input-group-btn button.form-btn-del:hover {
  background-color: inherit !important;
}

.form-meta .row input[type='checkbox'] {
  position: inherit;
  opacity: 1;
  width: 14px;
}

.form-meta .row .datepicker {
  width: 200px !important;
  flex: none;
}

blockquote .referentiel {
  border: 1px solid #C8C8C8;
  padding: 10px;
}

blockquote .referentiel .btn-del-ref {
  margin-left: 10px;
  color: #B94A48;
}

.hal-duplicate-entry {
  position: fixed;
  font-size: 0.85rem;
  top: 150px;
  margin-right: 60px;
}

.hal-duplicate-entry h5 {
  font-size: 0.9rem;
  color: #B94A48;
  background-color: #f7ebea;
  padding: 10px;
}

.hal-valid-submit-btn {
  position: fixed;
  bottom: 50px;
  background: inherit;
  border: 1px solid #ff4600;
  color: #ff4600;
  padding: 19px 18px 16px 18px;
  margin-right: -1px;
  transition: 0.5s;
}

.hal-valid-submit-btn:hover {
  background: #fffdfd;
  color: #ff4600;
}

.hal-valid-submit-btn:disabled {
  border: 1px solid #cecece;
  color: #dedede;
  cursor: default;
}

.hal-valid-submit-btn:disabled:hover {
  background: inherit;
  color: #dedede;
}

.btn-primary-orange {
  background: #ff4600;
  border: 1px solid #ff4600;
  color: #ffffff;
  padding: 19px 18px 16px 18px;
  margin-right: -1px;
  transition: 0.5s;
}

.select2-container--default {
  display: block;
  width: 100% !important;
  border: 1px solid #cacaca;
  border-radius: 0;
}

.select2-container--default .select2-search__field {
  line-height: 2rem !important;
}

.select2-container--default li.select2-results__option.non-leaf .expand-collapse:before {
  content: "\e962" !important;
  color: #647585 !important;
  font-family: 'icomoon' !important;
  font-size: 10px !important;
  top: 6px !important;
  left: -4px !important;
}

.select2-container--default li.select2-results__option.non-leaf.opened .expand-collapse:before {
  content: "\e98e" !important;
}

.select2-container--default.select2-container--open.s2-to-tree {
  margin-top: 0 !important;
  border: 0 !important;
}

.select2-container--default.select2-container--open .select2-dropdown--below {
  border-color: #cacaca;
  background: #f4f4f4;
  border-radius: 0;
}

.select2-container--default.select2-results__option--highlighted[aria-selected] > span.item-label {
  background: red !important;
}

.select2-container--default .select2-selection--multiple {
  border: none !important;
}

.select2-container--default .select2-selection--multiple .select2-selection__choice__remove {
  color: #ffffff !important;
  margin-right: 10px !important;
  font-size: 14px !important;
}

.select2-container--default .select2-selection--multiple .select2-selection__choice {
  background-color: #90A4B6 !important;
  color: #ffffff !important;
  border: 0 !important;
  border-radius: 0 !important;
  padding: 5px 10px !important;
}

.select2-container--default .select2-selection--single {
  margin-top: 5px;
  margin-left: 5px;
  display: inline-block !important;
  border: none !important;
}

.select2-container--default .select2-selection--single .select2-selection__rendered {
  background-color: #647585 !important;
  color: #ffffff !important;
  border: 0 !important;
  border-radius: 0 !important;
  padding: 2px 10px !important;
}

.select2-container--default .select2-selection--single .select2-selection__arrow {
  top: 8px !important;
}

.select2-container--default li.select2-results__option[aria-selected="true"] > span.item-label {
  background-color: inherit !important;
  color: #647585;
  font-weight: bold;
}

.select2-container--default li.select2-results__option[aria-selected="true"]:hover > span.item-label {
  color: #647585;
  font-weight: bold;
}

.select2-container--default .select2-results__option--highlighted[aria-selected] > span.item-label, .select2-container--default .select2-results__option--highlighted[aria-selected]:hover > span.item-label {
  background-color: #efefef !important;
  color: #90A4B6 !important;
}

.datepicker {
  background: inherit !important;
}

.datepicker + .ui-datepicker-trigger {
  display: none;
}

.calendar-trigger {
  background: none;
  border: none;
  position: relative;
  left: -32px;
}

.calendar-trigger .icon-calendar:before {
  font-size: 20px;
  color: #c8c8c8;
}

.ui-datepicker {
  background: #f4f4f4;
  border: 1px solid #c8c8c8;
}

.ui-datepicker select {
  border-radius: 0px;
  border: 1px solid #c8c8c8;
}

.ui-datepicker select.ui-datepicker-month {
  border-right: 0;
}

.ui-datepicker select.ui-datepicker-year {
  border-left: 0;
}

.ui-datepicker .ui-state-default, .ui-datepicker .ui-state-active {
  text-align: center;
}

.ui-datepicker .ui-state-default {
  color: #337AB7;
}

.ui-datepicker .ui-state-active {
  color: #ffffff;
  background: #337AB7;
}

.ui-datepicker-prev .ui-icon-circle-triangle-w {
  color: transparent;
  text-indent: inherit;
  margin-top: -4px !important;
  margin-left: 0 !important;
}

.ui-datepicker-prev .ui-icon-circle-triangle-w:before {
  color: #337AB7;
}

.ui-datepicker-next .ui-icon-circle-triangle-e {
  color: transparent;
  text-indent: inherit;
  margin-top: -4px !important;
}

.ui-datepicker-next .ui-icon-circle-triangle-e:before {
  color: #337AB7;
}

.load-by-id.input-group button, .load-by-id.input-group input {
  border: 1px solid #90A4B6;
  border-radius: 0;
  height: inherit;
}

.load-by-id.input-group button {
  font-size: small;
  font-weight: bold;
}

/**
STEP TRANSFERT
 */
#panel-transfer .section-shadow {
  padding: 30px 100px;
}

#panel-transfer .section-shadow .alert-text {
  border: 1px solid #c8c8c8;
  border-radius: 0;
}

#panel-transfer .section-shadow .condition-filled {
  color: #468847;
}

#panel-transfer .section-shadow .condition-notfilled {
  color: #B94A48;
}

/*
STEP RECAP
*/
.step-recap {
  padding: 30px 100px;
}

.step-recap h5 {
  font-weight: bold;
}

.step-recap .recap-citation.recap-doublon, .step-recap .invalid-steps {
  background: #f7ebea;
}

.step-recap .invalid-steps {
  padding: 20px;
}

.step-recap .invalid-steps li a {
  margin-left: 20px;
}

.step-recap .recap-citation {
  background: #ececec;
  padding: 20px;
  font-weight: bold;
}

.step-recap .recap-typdoc {
  padding: 10px;
  line-height: 50px;
  background: #86839D;
  color: #ffffff;
}

.step-recap .recap-cgu {
  border: 1px solid #c8c8c8;
}

.step-recap label {
  font-weight: bold !important;
}

.content-nav .nav-item .nav-link {
  background: #ffffff;
  color: #337AB7;
  border-radius: 0 !important;
  border: 1px solid #337AB7;
  margin-right: 10px;
}

.content-nav .nav-item .nav-link.active {
  background: #337AB7;
  color: #ffffff;
}

.stat-graph, .stat-spinner {
  margin-right: -15px;
  margin-left: -15px;
  padding: 20px;
}

.stat-graph > .row, .stat-spinner > .row {
  height: 40px;
}

.stat-graph h4, .stat-spinner h4 {
  color: #979797;
  font-size: 1.15rem;
  margin-top: -5px;
}

.stat-graph .select-range-depot, .stat-graph .select-range, .stat-spinner .select-range-depot, .stat-spinner .select-range {
  border: 2px solid #337AB7;
  margin-top: -10px;
}

.stat-graph .select-range-depot .btn, .stat-graph .select-range .btn, .stat-spinner .select-range-depot .btn, .stat-spinner .select-range .btn {
  border-radius: 0;
  font-weight: bold !important;
  padding: 5px 20px;
}

.stat-graph .select-range-depot .btn.active, .stat-graph .select-range .btn.active, .stat-spinner .select-range-depot .btn.active, .stat-spinner .select-range .btn.active {
  background: #337AB7;
  color: #fff;
}

.stat-spinner {
  text-align: center;
}

.stat-spinner .spinner-border {
  color: #337AB7;
}

.stat-counter {
  padding: 10px;
  color: #979797;
  font-size: 1.15rem;
  font-weight: bold;
}

.stat-counter .counter-large {
  color: #337AB7;
  font-size: 2.5rem;
  font-weight: bold;
  display: block;
}

.stat-counter > div:not(:first-child) {
  border-left: 1px solid #e6e6e6;
}

.site-header {
  height: 300px;
  min-height: 200px;
}

@media screen and (min-width: 1920px) {
  .site-header {
    background-size: 100% 300px;
  }
}

.site-header .title {
  font-size: 3.5rem;
  font-weight: bold;
  font-family: "Noto Sans", sans-serif;
}

.website-navigation .nav-pills .nav-link {
  transition: 0.5s;
}

body.dark {
  background-color: #202124;
  color: #ffffff;
}

body.dark nav.navbar.header, body.dark footer {
  background-color: #0d0d0e;
}

body.dark .sub-header, body.dark .title-facet {
  background-color: #131416 !important;
}

body.dark .section-shadow, body.dark .authors, body.dark .hal-bgtext, body.dark .bg-beige {
  background-color: #36373a;
}

body.dark .table-white tr:hover, body.dark #partage_table tbody tr:hover, body.dark #mydeposit tbody #ownsub tr:hover, body.dark .table-white tr:focus, body.dark #partage_table tbody tr:focus, body.dark #mydeposit tbody #ownsub tr:focus {
  background-color: #909092;
}

body.dark .table-white tr, body.dark #partage_table tbody tr, body.dark #mydeposit tbody #ownsub tr {
  border-bottom-color: #0d0d0e;
}

body.dark .content-facet a, body.dark .results-table td a {
  color: #ffffff;
}

/*! X-editable - v1.5.3
* In-place editing with Twitter Bootstrap, jQuery UI or pure jQuery
* http://github.com/vitalets/x-editable
* Copyright (c) 2018 Vitaliy Potapov; Licensed MIT */
.editableform {
  margin-bottom: 0;
  /* overwrites bootstrap margin */
}

.editableform .control-group {
  margin-bottom: 0;
  /* overwrites bootstrap margin */
  white-space: nowrap;
  /* prevent wrapping buttons on new line */
  line-height: 20px;
  /* overwriting bootstrap line-height. See #133 */
}

/*
    BS3 fix: stop css from breaking when the form is inside a popup and inside a form with the class .form-horizontal
    See: https://github.com/vitalets/x-editable/issues/682
*/
.form-horizontal .editable-popup .editableform .form-group {
  margin-left: 0;
  margin-right: 0;
}

/*
  BS3 width:1005 for inputs breaks editable form in popup
  See: https://github.com/vitalets/x-editable/issues/393
*/
.editableform .form-control {
  width: auto;
}

.editable-buttons {
  display: inline-block;
  /* should be inline to take effect of parent's white-space: nowrap */
  vertical-align: top;
  margin-left: 7px;
  /* inline-block emulation for IE7*/
  zoom: 1;
  *display: inline;
}

.editable-buttons.editable-buttons-bottom {
  display: block;
  margin-top: 7px;
  margin-left: 0;
}

.editable-input {
  vertical-align: top;
  display: inline-block;
  /* should be inline to take effect of parent's white-space: nowrap */
  width: auto;
  /* bootstrap-responsive has width: 100% that breakes layout */
  white-space: normal;
  /* reset white-space decalred in parent*/
  /* display-inline emulation for IE7*/
  zoom: 1;
  *display: inline;
}

.editable-buttons .editable-cancel {
  margin-left: 7px;
}

/*for jquery-ui buttons need set height to look more pretty*/
.editable-buttons button.ui-button-icon-only {
  height: 24px;
  width: 30px;
}

.editableform-loading {
  background: url("../img/loading.gif") center center no-repeat;
  height: 25px;
  width: auto;
  min-width: 25px;
}

.editable-inline .editableform-loading {
  background-position: left 5px;
}

.editable-error-block {
  max-width: 300px;
  margin: 5px 0 0 0;
  width: auto;
  white-space: normal;
}

/*add padding for jquery ui*/
.editable-error-block.ui-state-error {
  padding: 3px;
}

.editable-error {
  color: red;
}

/* ---- For specific types ---- */
.editableform .editable-date {
  padding: 0;
  margin: 0;
  float: left;
}

/* move datepicker icon to center of add-on button. See https://github.com/vitalets/x-editable/issues/183 */
.editable-inline .add-on .icon-th {
  margin-top: 3px;
  margin-left: 1px;
}

/* checklist vertical alignment */
.editable-checklist label input[type="checkbox"],
.editable-checklist label span {
  vertical-align: middle;
  margin: 0;
}

.editable-checklist label {
  white-space: nowrap;
}

/* set exact width of textarea to fit buttons toolbar */
.editable-wysihtml5 {
  width: 566px;
  height: 250px;
}

/* clear button shown as link in date inputs */
.editable-clear {
  clear: both;
  font-size: 0.9em;
  text-decoration: none;
  text-align: right;
}

/* IOS-style clear button for text inputs */
.editable-clear-x {
  background: url("../img/clear.png") center center no-repeat;
  display: block;
  width: 13px;
  height: 13px;
  position: absolute;
  opacity: 0.6;
  z-index: 100;
  top: 50%;
  right: 6px;
  margin-top: -6px;
}

.editable-clear-x:hover {
  opacity: 1;
}

.editable-pre-wrapped {
  white-space: pre-wrap;
}

.editable-container.editable-popup {
  max-width: none !important;
  /* without this rule poshytip/tooltip does not stretch */
}

.editable-container.popover {
  width: auto;
  /* without this rule popover does not stretch */
}

.editable-container.editable-inline {
  display: inline-block;
  vertical-align: middle;
  width: auto;
  /* inline-block emulation for IE7*/
  zoom: 1;
  *display: inline;
}

.editable-container.ui-widget {
  font-size: inherit;
  /* jqueryui widget font 1.1em too big, overwrite it */
  z-index: 9990;
  /* should be less than select2 dropdown z-index to close dropdown first when click */
}

.editable-click,
a.editable-click,
a.editable-click:hover {
  text-decoration: none;
  border-bottom: dashed 1px #0088cc;
}

.editable-click.editable-disabled,
a.editable-click.editable-disabled,
a.editable-click.editable-disabled:hover {
  color: #585858;
  cursor: default;
  border-bottom: none;
}

.editable-empty, .editable-empty:hover, .editable-empty:focus {
  font-style: italic;
  color: #DD1144;
  /* border-bottom: none; */
  text-decoration: none;
}

.editable-unsaved {
  font-weight: bold;
}

.editable-unsaved:after {
  /*    content: '*'*/
}

.editable-bg-transition {
  -webkit-transition: background-color 1400ms ease-out;
  -moz-transition: background-color 1400ms ease-out;
  -o-transition: background-color 1400ms ease-out;
  -ms-transition: background-color 1400ms ease-out;
  transition: background-color 1400ms ease-out;
}

/*see https://github.com/vitalets/x-editable/issues/139 */
.form-horizontal .editable {
  padding-top: 5px;
  display: inline-block;
}

/*!
 * Datepicker for Bootstrap
 *
 * Copyright 2012 Stefan Petre
 * Improvements by Andrew Rowls
 * Licensed under the Apache License v2.0
 * http://www.apache.org/licenses/LICENSE-2.0
 *
 */
.datepicker {
  padding: 4px;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
  direction: ltr;
  /*.dow {
		border-top: 1px solid #ddd !important;
	}*/
}

.datepicker-inline {
  width: 220px;
}

.datepicker.datepicker-rtl {
  direction: rtl;
}

.datepicker.datepicker-rtl table tr td span {
  float: right;
}

.datepicker-dropdown {
  top: 0;
  left: 0;
}

.datepicker-dropdown: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;
}

.datepicker-dropdown: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;
}

.datepicker > div {
  display: none;
}

.datepicker.days div.datepicker-days {
  display: block;
}

.datepicker.months div.datepicker-months {
  display: block;
}

.datepicker.years div.datepicker-years {
  display: block;
}

.datepicker table {
  margin: 0;
}

.datepicker td,
.datepicker th {
  text-align: center;
  width: 20px;
  height: 20px;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
  border: none;
}

.table-striped .datepicker table tr td,
.table-striped .datepicker table tr th {
  background-color: transparent;
}

.datepicker table tr td.day:hover {
  background: #eeeeee;
  cursor: pointer;
}

.datepicker table tr td.old,
.datepicker table tr td.new {
  color: #999999;
}

.datepicker table tr td.disabled,
.datepicker table tr td.disabled:hover {
  background: none;
  color: #999999;
  cursor: default;
}

.datepicker table tr td.today,
.datepicker table tr td.today:hover,
.datepicker table tr td.today.disabled,
.datepicker table tr td.today.disabled:hover {
  background-color: #fde19a;
  background-image: -moz-linear-gradient(top, #fdd49a, #fdf59a);
  background-image: -ms-linear-gradient(top, #fdd49a, #fdf59a);
  background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#fdd49a), to(#fdf59a));
  background-image: -webkit-linear-gradient(top, #fdd49a, #fdf59a);
  background-image: -o-linear-gradient(top, #fdd49a, #fdf59a);
  background-image: linear-gradient(top, #fdd49a, #fdf59a);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fdd49a', endColorstr='#fdf59a', GradientType=0);
  border-color: #fdf59a #fdf59a #fbed50;
  border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
  filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
  color: #000;
}

.datepicker table tr td.today:hover,
.datepicker table tr td.today:hover:hover,
.datepicker table tr td.today.disabled:hover,
.datepicker table tr td.today.disabled:hover:hover,
.datepicker table tr td.today:active,
.datepicker table tr td.today:hover:active,
.datepicker table tr td.today.disabled:active,
.datepicker table tr td.today.disabled:hover:active,
.datepicker table tr td.today.active,
.datepicker table tr td.today:hover.active,
.datepicker table tr td.today.disabled.active,
.datepicker table tr td.today.disabled:hover.active,
.datepicker table tr td.today.disabled,
.datepicker table tr td.today:hover.disabled,
.datepicker table tr td.today.disabled.disabled,
.datepicker table tr td.today.disabled:hover.disabled,
.datepicker table tr td.today[disabled],
.datepicker table tr td.today:hover[disabled],
.datepicker table tr td.today.disabled[disabled],
.datepicker table tr td.today.disabled:hover[disabled] {
  background-color: #fdf59a;
}

.datepicker table tr td.today:active,
.datepicker table tr td.today:hover:active,
.datepicker table tr td.today.disabled:active,
.datepicker table tr td.today.disabled:hover:active,
.datepicker table tr td.today.active,
.datepicker table tr td.today:hover.active,
.datepicker table tr td.today.disabled.active,
.datepicker table tr td.today.disabled:hover.active {
  background-color: #fbf069 \9;
}

.datepicker table tr td.today:hover:hover {
  color: #000;
}

.datepicker table tr td.today.active:hover {
  color: #fff;
}

.datepicker table tr td.range,
.datepicker table tr td.range:hover,
.datepicker table tr td.range.disabled,
.datepicker table tr td.range.disabled:hover {
  background: #eeeeee;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
}

.datepicker table tr td.range.today,
.datepicker table tr td.range.today:hover,
.datepicker table tr td.range.today.disabled,
.datepicker table tr td.range.today.disabled:hover {
  background-color: #f3d17a;
  background-image: -moz-linear-gradient(top, #f3c17a, #f3e97a);
  background-image: -ms-linear-gradient(top, #f3c17a, #f3e97a);
  background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#f3c17a), to(#f3e97a));
  background-image: -webkit-linear-gradient(top, #f3c17a, #f3e97a);
  background-image: -o-linear-gradient(top, #f3c17a, #f3e97a);
  background-image: linear-gradient(top, #f3c17a, #f3e97a);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#f3c17a', endColorstr='#f3e97a', GradientType=0);
  border-color: #f3e97a #f3e97a #edde34;
  border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
  filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
}

.datepicker table tr td.range.today:hover,
.datepicker table tr td.range.today:hover:hover,
.datepicker table tr td.range.today.disabled:hover,
.datepicker table tr td.range.today.disabled:hover:hover,
.datepicker table tr td.range.today:active,
.datepicker table tr td.range.today:hover:active,
.datepicker table tr td.range.today.disabled:active,
.datepicker table tr td.range.today.disabled:hover:active,
.datepicker table tr td.range.today.active,
.datepicker table tr td.range.today:hover.active,
.datepicker table tr td.range.today.disabled.active,
.datepicker table tr td.range.today.disabled:hover.active,
.datepicker table tr td.range.today.disabled,
.datepicker table tr td.range.today:hover.disabled,
.datepicker table tr td.range.today.disabled.disabled,
.datepicker table tr td.range.today.disabled:hover.disabled,
.datepicker table tr td.range.today[disabled],
.datepicker table tr td.range.today:hover[disabled],
.datepicker table tr td.range.today.disabled[disabled],
.datepicker table tr td.range.today.disabled:hover[disabled] {
  background-color: #f3e97a;
}

.datepicker table tr td.range.today:active,
.datepicker table tr td.range.today:hover:active,
.datepicker table tr td.range.today.disabled:active,
.datepicker table tr td.range.today.disabled:hover:active,
.datepicker table tr td.range.today.active,
.datepicker table tr td.range.today:hover.active,
.datepicker table tr td.range.today.disabled.active,
.datepicker table tr td.range.today.disabled:hover.active {
  background-color: #efe24b \9;
}

.datepicker table tr td.selected,
.datepicker table tr td.selected:hover,
.datepicker table tr td.selected.disabled,
.datepicker table tr td.selected.disabled:hover {
  background-color: #9e9e9e;
  background-image: -moz-linear-gradient(top, #b3b3b3, #808080);
  background-image: -ms-linear-gradient(top, #b3b3b3, #808080);
  background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#b3b3b3), to(#808080));
  background-image: -webkit-linear-gradient(top, #b3b3b3, #808080);
  background-image: -o-linear-gradient(top, #b3b3b3, #808080);
  background-image: linear-gradient(top, #b3b3b3, #808080);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#b3b3b3', endColorstr='#808080', GradientType=0);
  border-color: #808080 #808080 #595959;
  border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
  filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
  color: #fff;
  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
}

.datepicker table tr td.selected:hover,
.datepicker table tr td.selected:hover:hover,
.datepicker table tr td.selected.disabled:hover,
.datepicker table tr td.selected.disabled:hover:hover,
.datepicker table tr td.selected:active,
.datepicker table tr td.selected:hover:active,
.datepicker table tr td.selected.disabled:active,
.datepicker table tr td.selected.disabled:hover:active,
.datepicker table tr td.selected.active,
.datepicker table tr td.selected:hover.active,
.datepicker table tr td.selected.disabled.active,
.datepicker table tr td.selected.disabled:hover.active,
.datepicker table tr td.selected.disabled,
.datepicker table tr td.selected:hover.disabled,
.datepicker table tr td.selected.disabled.disabled,
.datepicker table tr td.selected.disabled:hover.disabled,
.datepicker table tr td.selected[disabled],
.datepicker table tr td.selected:hover[disabled],
.datepicker table tr td.selected.disabled[disabled],
.datepicker table tr td.selected.disabled:hover[disabled] {
  background-color: #808080;
}

.datepicker table tr td.selected:active,
.datepicker table tr td.selected:hover:active,
.datepicker table tr td.selected.disabled:active,
.datepicker table tr td.selected.disabled:hover:active,
.datepicker table tr td.selected.active,
.datepicker table tr td.selected:hover.active,
.datepicker table tr td.selected.disabled.active,
.datepicker table tr td.selected.disabled:hover.active {
  background-color: #666666 \9;
}

.datepicker table tr td.active,
.datepicker table tr td.active:hover,
.datepicker table tr td.active.disabled,
.datepicker table tr td.active.disabled:hover {
  background-color: #006dcc;
  background-image: -moz-linear-gradient(top, #0088cc, #0044cc);
  background-image: -ms-linear-gradient(top, #0088cc, #0044cc);
  background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#0088cc), to(#0044cc));
  background-image: -webkit-linear-gradient(top, #0088cc, #0044cc);
  background-image: -o-linear-gradient(top, #0088cc, #0044cc);
  background-image: linear-gradient(top, #0088cc, #0044cc);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#0088cc', endColorstr='#0044cc', GradientType=0);
  border-color: #0044cc #0044cc #002a80;
  border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
  filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
  color: #fff;
  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
}

.datepicker table tr td.active:hover,
.datepicker table tr td.active:hover:hover,
.datepicker table tr td.active.disabled:hover,
.datepicker table tr td.active.disabled:hover:hover,
.datepicker table tr td.active:active,
.datepicker table tr td.active:hover:active,
.datepicker table tr td.active.disabled:active,
.datepicker table tr td.active.disabled:hover:active,
.datepicker table tr td.active.active,
.datepicker table tr td.active:hover.active,
.datepicker table tr td.active.disabled.active,
.datepicker table tr td.active.disabled:hover.active,
.datepicker table tr td.active.disabled,
.datepicker table tr td.active:hover.disabled,
.datepicker table tr td.active.disabled.disabled,
.datepicker table tr td.active.disabled:hover.disabled,
.datepicker table tr td.active[disabled],
.datepicker table tr td.active:hover[disabled],
.datepicker table tr td.active.disabled[disabled],
.datepicker table tr td.active.disabled:hover[disabled] {
  background-color: #0044cc;
}

.datepicker table tr td.active:active,
.datepicker table tr td.active:hover:active,
.datepicker table tr td.active.disabled:active,
.datepicker table tr td.active.disabled:hover:active,
.datepicker table tr td.active.active,
.datepicker table tr td.active:hover.active,
.datepicker table tr td.active.disabled.active,
.datepicker table tr td.active.disabled:hover.active {
  background-color: #003399 \9;
}

.datepicker table tr td span {
  display: block;
  width: 23%;
  height: 54px;
  line-height: 54px;
  float: left;
  margin: 1%;
  cursor: pointer;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
}

.datepicker table tr td span:hover {
  background: #eeeeee;
}

.datepicker table tr td span.disabled,
.datepicker table tr td span.disabled:hover {
  background: none;
  color: #999999;
  cursor: default;
}

.datepicker table tr td span.active,
.datepicker table tr td span.active:hover,
.datepicker table tr td span.active.disabled,
.datepicker table tr td span.active.disabled:hover {
  background-color: #006dcc;
  background-image: -moz-linear-gradient(top, #0088cc, #0044cc);
  background-image: -ms-linear-gradient(top, #0088cc, #0044cc);
  background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#0088cc), to(#0044cc));
  background-image: -webkit-linear-gradient(top, #0088cc, #0044cc);
  background-image: -o-linear-gradient(top, #0088cc, #0044cc);
  background-image: linear-gradient(top, #0088cc, #0044cc);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#0088cc', endColorstr='#0044cc', GradientType=0);
  border-color: #0044cc #0044cc #002a80;
  border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
  filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
  color: #fff;
  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
}

.datepicker table tr td span.active:hover,
.datepicker table tr td span.active:hover:hover,
.datepicker table tr td span.active.disabled:hover,
.datepicker table tr td span.active.disabled:hover:hover,
.datepicker table tr td span.active:active,
.datepicker table tr td span.active:hover:active,
.datepicker table tr td span.active.disabled:active,
.datepicker table tr td span.active.disabled:hover:active,
.datepicker table tr td span.active.active,
.datepicker table tr td span.active:hover.active,
.datepicker table tr td span.active.disabled.active,
.datepicker table tr td span.active.disabled:hover.active,
.datepicker table tr td span.active.disabled,
.datepicker table tr td span.active:hover.disabled,
.datepicker table tr td span.active.disabled.disabled,
.datepicker table tr td span.active.disabled:hover.disabled,
.datepicker table tr td span.active[disabled],
.datepicker table tr td span.active:hover[disabled],
.datepicker table tr td span.active.disabled[disabled],
.datepicker table tr td span.active.disabled:hover[disabled] {
  background-color: #0044cc;
}

.datepicker table tr td span.active:active,
.datepicker table tr td span.active:hover:active,
.datepicker table tr td span.active.disabled:active,
.datepicker table tr td span.active.disabled:hover:active,
.datepicker table tr td span.active.active,
.datepicker table tr td span.active:hover.active,
.datepicker table tr td span.active.disabled.active,
.datepicker table tr td span.active.disabled:hover.active {
  background-color: #003399 \9;
}

.datepicker table tr td span.old,
.datepicker table tr td span.new {
  color: #999999;
}

.datepicker th.datepicker-switch {
  width: 145px;
}

.datepicker thead tr:first-child th,
.datepicker tfoot tr th {
  cursor: pointer;
}

.datepicker thead tr:first-child th:hover,
.datepicker tfoot tr th:hover {
  background: #eeeeee;
}

.datepicker .cw {
  font-size: 10px;
  width: 12px;
  padding: 0 2px 0 5px;
  vertical-align: middle;
}

.datepicker thead tr:first-child th.cw {
  cursor: default;
  background-color: transparent;
}

.input-append.date .add-on i,
.input-prepend.date .add-on i {
  display: block;
  cursor: pointer;
  width: 16px;
  height: 16px;
}

.input-daterange input {
  text-align: center;
}

.input-daterange input:first-child {
  -webkit-border-radius: 3px 0 0 3px;
  -moz-border-radius: 3px 0 0 3px;
  border-radius: 3px 0 0 3px;
}

.input-daterange input:last-child {
  -webkit-border-radius: 0 3px 3px 0;
  -moz-border-radius: 0 3px 3px 0;
  border-radius: 0 3px 3px 0;
}

.input-daterange .add-on {
  display: inline-block;
  width: auto;
  min-width: 16px;
  height: 18px;
  padding: 4px 5px;
  font-weight: normal;
  line-height: 18px;
  text-align: center;
  text-shadow: 0 1px 0 #ffffff;
  vertical-align: middle;
  background-color: #eeeeee;
  border: 1px solid #ccc;
  margin-left: -5px;
  margin-right: -5px;
}

/**********************
       BODY
**********************/
html, body {
  width: 100%;
  height: auto;
  min-height: 100%;
  font-size: 0.9rem;
  font-family: "Noto Sans", sans-serif;
  background-color: #fafafa;
}

main {
  min-height: 61%;
}

a {
  color: #337AB7;
}

a:hover {
  text-decoration: none;
}

button:hover {
  cursor: pointer;
}

@media (max-width: 991.98px) {
  main .section-corps {
    margin: 60px 4% 0 4%;
  }
}

@media (min-width: 768px) {
  .section-corps {
    margin: 0 9.5%;
  }
}

.section-corps .section-content {
  padding: 16px 26px;
}

.section-corps .section-content h3 {
  font-size: 1.15rem;
}

.section-corps .widget-files {
  min-height: 58px;
  color: #ffffff;
  text-align: center;
}

.section-corps .widget {
  box-shadow: 0px 3px 15px #00000029;
}

.section-corps .widget .widget-header {
  background-color: #00005c;
  color: #ffffff;
  text-align: center;
  height: auto;
  padding-top: 10px;
  font-weight: bold;
  margin-bottom: 0;
}

.section-corps.user-space, .section-corps.admin-space, .section-corps .info-page {
  margin-top: 20px;
}

.section-corps.user-space h1, .section-corps.user-space .hal-title, .section-corps.admin-space h1, .section-corps.admin-space .hal-title, .section-corps .info-page h1, .section-corps .info-page .hal-title {
  font-size: 1.5rem;
  margin-top: 40px;
  margin-bottom: 20px;
}

.section-corps.row {
  margin-top: 60px;
}

.section-corps.row .header-section {
  margin-bottom: 23px;
}

.section-corps.row .header-section div.col-1 {
  -ms-flex: 0 0 1%;
  flex: 0 0 1%;
  max-width: 1%;
  padding: 0;
}

.section-corps.row .header-section section.flex-74 {
  -ms-flex: 0 0 74%;
  flex: 0 0 74%;
  max-width: 74%;
}

.header-section .journal, .header-section .year {
  margin-left: 5px;
}

section.flex-74 h2, #preview-doc h2 {
  line-height: 1.6;
  display: inline-block;
}

section.flex-74 h2.title-lang, #preview-doc h2.title-lang {
  display: none;
}

section.flex-74 h2:not(.title-lang), section.flex-74 h2.active, #preview-doc h2:not(.title-lang), #preview-doc h2.active {
  display: inline-block;
}

h1, h2, h3, h4 {
  font-weight: bold;
}

h2 {
  font-size: 1.5rem;
}

h4 {
  font-size: 0.9rem;
}

/**********************
       FOOTER
**********************/
footer {
  background-color: #0c053a;
  color: #ffffff;
  padding-top: 50px;
  margin-top: 100px;
}

footer .col-sm-4, footer .col-md-2 {
  padding: 0;
}

footer p {
  font-weight: bold;
  text-align: center;
  font-size: 1.15rem;
}

footer ul {
  padding-left: 0;
}

footer li {
  list-style-type: none;
  text-align: center;
  line-height: 2;
}

footer li:last-child {
  margin-bottom: 50px;
}

footer li a {
  color: #ffffff;
}

footer li a:hover, footer li a:focus {
  color: #ffffff;
  text-decoration: none;
  font-weight: bold;
}

.maintenance-alert {
  background-color: #f44336;
  color: black;
  text-align: center;
  font-size: 150%;
  z-index: 1200;
  position: fixed;
  top: 0;
  left: 20%;
  right: 20%;
}


/*# sourceMappingURL=data:application/json;charset=utf-8;base64,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QUNFLGNBQWM7RUFFZCxnQkFBZ0I7QUhyR2xCOztBR3dHQTtFQU1FLFlBQVk7RUFFWixVQUFVO0VBQ1YsU0FBUztFQUNULFNBQVM7QUgzR1g7O0FHZ0hBO0VBQ0UsY0FBYztFQUNkLFdBQVc7RUFDWCxlQUFlO0VBQ2YsVUFBVTtFQUNWLG9CQUFvQjtFRTlPaEIsaUJBQVc7RUZnUGYsb0JBQW9CO0VBQ3BCLGNBQWM7RUFDZCxtQkFBbUI7QUg3R3JCOztBR2dIQTtFQUNFLHdCQUF3QjtBSDdHMUI7O0FBRUE7O0VHaUhFLFlBQVk7QUg5R2Q7O0FBRUE7RUdvSEUsb0JBQW9CO0VBQ3BCLHdCQUF3QjtBSGxIMUI7O0FBRUE7RUd3SEUsd0JBQXdCO0FIdEgxQjs7QUc4SEE7RUFDRSxhQUFhO0VBQ2IsMEJBQTBCO0FIM0g1Qjs7QUdrSUE7RUFDRSxxQkFBcUI7QUgvSHZCOztBR2tJQTtFQUNFLGtCQUFrQjtFQUNsQixlQUFlO0FIL0hqQjs7QUdrSUE7RUFDRSxhQUFhO0FIL0hmOztBQUVBO0VHbUlFLHdCQUF3QjtBSGpJMUI7O0FPM1ZBOztFQUVFLHFCSHNTd0M7RUdwU3hDLGdCSHNTK0I7RUdyUy9CLGdCSHNTK0I7QUp1RGpDOztBT3pWQTtFRnFLTSxpQkFBVztBTHdMakI7O0FPNVZBO0VGb0tNLGVBQVc7QUw0TGpCOztBTy9WQTtFRm1LTSxrQkFBVztBTGdNakI7O0FPbFdBO0VGa0tNLGlCQUFXO0FMb01qQjs7QU9yV0E7RUZpS00sa0JBQVc7QUx3TWpCOztBT3hXQTtFRmdLTSxlQUFXO0FMNE1qQjs7QU8xV0E7RUY4Sk0sa0JBQVc7RUU1SmYsZ0JId1MrQjtBSnFFakM7O0FPeldBO0VGd0pNLGVBQVc7RUV0SmYsZ0JIMlIrQjtFRzFSL0IsZ0JIa1IrQjtBSjBGakM7O0FPMVdBO0VGbUpNLGlCQUFXO0VFakpmLGdCSHVSK0I7RUd0Ui9CLGdCSDZRK0I7QUpnR2pDOztBTzNXQTtFRjhJTSxpQkFBVztFRTVJZixnQkhtUitCO0VHbFIvQixnQkh3UStCO0FKc0dqQzs7QU81V0E7RUZ5SU0saUJBQVc7RUV2SWYsZ0JIK1ErQjtFRzlRL0IsZ0JIbVErQjtBSjRHakM7O0FHbFZBO0VJcEJFLGdCSGdGVztFRy9FWCxtQkgrRVc7RUc5RVgsU0FBUztFQUNULHdDSHpDYTtBSm1aZjs7QU9sV0E7O0VGa0dJLGtCQUFXO0VFL0ZiLGdCSDJOK0I7QUowSWpDOztBT2xXQTs7RUFFRSxjSG1RZ0M7RUdsUWhDLHlCSDJRbUM7QUowRnJDOztBTzdWQTtFQy9FRSxlQUFlO0VBQ2YsZ0JBQWdCO0FSZ2JsQjs7QU83VkE7RUNwRkUsZUFBZTtFQUNmLGdCQUFnQjtBUnFibEI7O0FPL1ZBO0VBQ0UscUJBQXFCO0FQa1d2Qjs7QU9uV0E7RUFJSSxvQkhxUCtCO0FKOEduQzs7QU96VkE7RUYyREksY0FBVztFRXpEYix5QkFBeUI7QVA0VjNCOztBT3hWQTtFQUNFLG1CSHVCVztFQzZDUCxrQkFBVztBTHdSakI7O0FPeFZBO0VBQ0UsY0FBYztFRitDWixrQkFBVztFRTdDYixjSDFHZ0I7QUpxY2xCOztBTzlWQTtFQU1JLHFCQUFxQjtBUDRWekI7O0FTL2NBO0VDSUUsZUFBZTtFQUdmLFlBQVk7QVY2Y2Q7O0FTOWNBO0VBQ0UsZ0JMcWdDd0M7RUtwZ0N4QyxzQkxSYTtFS1NiLHlCTE5nQjtFT1FkLHNCUDZOZ0M7RU1wT2xDLGVBQWU7RUFHZixZQUFZO0FWc2RkOztBU3hjQTtFQUVFLHFCQUFxQjtBVDBjdkI7O0FTdmNBO0VBQ0UscUJBQTJCO0VBQzNCLGNBQWM7QVQwY2hCOztBU3ZjQTtFSjhISSxjQUFXO0VJNUhiLGNMM0JnQjtBSnFlbEI7O0FZamZBO0VQbUtJLGdCQUFXO0VPaktiLGNSbUNlO0VRbENmLHFCQUFxQjtBWm9mdkI7O0FZamZFO0VBQ0UsY0FBYztBWm9mbEI7O0FZL2VBO0VBQ0Usc0JSMGxDdUM7RUNwOEJyQyxnQkFBVztFT3BKYixXUlRhO0VRVWIseUJSRGdCO0VPRWQscUJQK04rQjtBSm1SbkM7O0FZdmZBO0VBU0ksVUFBVTtFUDhJVixlQUFXO0VPNUlYLGdCUnlRNkI7QUp5T2pDOztBRzFTQTtFU2pNRSxjQUFjO0VQcUlaLGdCQUFXO0VPbkliLGNSakJnQjtBSmdnQmxCOztBWWxmQTtFUHNJSSxrQkFBVztFTzlIWCxjQUFjO0VBQ2Qsa0JBQWtCO0FaK2V0Qjs7QVkxZUE7RUFDRSxpQlJpa0N1QztFUWhrQ3ZDLGtCQUFrQjtBWjZlcEI7O0FhcmhCRTs7Ozs7O0VDREEsV0FBVztFQUNYLG1CQUEyQjtFQUMzQixrQkFBMEI7RUFDMUIsa0JBQWtCO0VBQ2xCLGlCQUFpQjtBZCtoQm5COztBZTVlSTtFRnpDRTtJQUNFLGdCVCtMRztFSjBWVDtBQUNGOztBZWxmSTtFRnpDRTtJQUNFLGdCVGdNRztFSitWVDtBQUNGOztBZXhmSTtFRnpDRTtJQUNFLGdCVGlNRztFSm9XVDtBQUNGOztBZTlmSTtFRnpDRTtJQUNFLGlCVGtNSTtFSnlXVjtBQUNGOztBYWhoQkU7RUNuQ0EsYUFBYTtFQUNiLGVBQWU7RUFDZixtQkFBMkI7RUFDM0Isa0JBQTBCO0FkdWpCNUI7O0FhamhCRTtFQUNFLGVBQWU7RUFDZixjQUFjO0Fib2hCbEI7O0FhdGhCRTs7RUFNSSxnQkFBZ0I7RUFDaEIsZUFBZTtBYnFoQnJCOztBZ0Iza0JFOzs7Ozs7RUFDRSxrQkFBa0I7RUFDbEIsV0FBVztFQUNYLG1CQUEyQjtFQUMzQixrQkFBMEI7QWhCbWxCOUI7O0FnQjdqQk07RUFDRSxhQUFhO0VBQ2IsWUFBWTtFQUNaLGVBQWU7QWhCZ2tCdkI7O0FnQjNqQlU7RUZ3Qk4sY1R1QnFEO0VTdEJyRCxlVHNCcUQ7QUxpaEJ6RDs7QWdCaGtCVTtFRndCTixhVHVCcUQ7RVN0QnJELGNUc0JxRDtBTHNoQnpEOztBZ0Jya0JVO0VGd0JOLG1CVHVCcUQ7RVN0QnJELG9CVHNCcUQ7QUwyaEJ6RDs7QWdCMWtCVTtFRndCTixhVHVCcUQ7RVN0QnJELGNUc0JxRDtBTGdpQnpEOztBZ0Iva0JVO0VGd0JOLGFUdUJxRDtFU3RCckQsY1RzQnFEO0FMcWlCekQ7O0FnQnBsQlU7RUZ3Qk4sbUJUdUJxRDtFU3RCckQsb0JUc0JxRDtBTDBpQnpEOztBZ0JubEJNO0VGQ0osY0FBYztFQUNkLFdBQVc7RUFDWCxlQUFlO0Fkc2xCakI7O0FnQm5sQlU7RUZiUixrQkFBNkM7RUFJN0MsbUJBQThDO0FkaW1CaEQ7O0FnQnhsQlU7RUZiUixtQkFBNkM7RUFJN0Msb0JBQThDO0Fkc21CaEQ7O0FnQjdsQlU7RUZiUixhQUE2QztFQUk3QyxjQUE4QztBZDJtQmhEOztBZ0JsbUJVO0VGYlIsbUJBQTZDO0VBSTdDLG9CQUE4QztBZGduQmhEOztBZ0J2bUJVO0VGYlIsbUJBQTZDO0VBSTdDLG9CQUE4QztBZHFuQmhEOztBZ0I1bUJVO0VGYlIsYUFBNkM7RUFJN0MsY0FBOEM7QWQwbkJoRDs7QWdCam5CVTtFRmJSLG1CQUE2QztFQUk3QyxvQkFBOEM7QWQrbkJoRDs7QWdCdG5CVTtFRmJSLG1CQUE2QztFQUk3QyxvQkFBOEM7QWRvb0JoRDs7QWdCM25CVTtFRmJSLGFBQTZDO0VBSTdDLGNBQThDO0FkeW9CaEQ7O0FnQmhvQlU7RUZiUixtQkFBNkM7RUFJN0Msb0JBQThDO0FkOG9CaEQ7O0FnQnJvQlU7RUZiUixtQkFBNkM7RUFJN0Msb0JBQThDO0FkbXBCaEQ7O0FnQjFvQlU7RUZiUixjQUE2QztFQUk3QyxlQUE4QztBZHdwQmhEOztBZ0J6b0JNO0VBQXdCLFNBQVM7QWhCNm9CdkM7O0FnQjNvQk07RUFBdUIsU1ptS0c7QUo0ZWhDOztBZ0I1b0JRO0VBQXdCLFFBRFo7QWhCaXBCcEI7O0FnQmhwQlE7RUFBd0IsUUFEWjtBaEJxcEJwQjs7QWdCcHBCUTtFQUF3QixRQURaO0FoQnlwQnBCOztBZ0J4cEJRO0VBQXdCLFFBRFo7QWhCNnBCcEI7O0FnQjVwQlE7RUFBd0IsUUFEWjtBaEJpcUJwQjs7QWdCaHFCUTtFQUF3QixRQURaO0FoQnFxQnBCOztBZ0JwcUJRO0VBQXdCLFFBRFo7QWhCeXFCcEI7O0FnQnhxQlE7RUFBd0IsUUFEWjtBaEI2cUJwQjs7QWdCNXFCUTtFQUF3QixRQURaO0FoQmlyQnBCOztBZ0JockJRO0VBQXdCLFFBRFo7QWhCcXJCcEI7O0FnQnByQlE7RUFBd0IsU0FEWjtBaEJ5ckJwQjs7QWdCeHJCUTtFQUF3QixTQURaO0FoQjZyQnBCOztBZ0I1ckJRO0VBQXdCLFNBRFo7QWhCaXNCcEI7O0FnQnpyQlk7RUZoQlYscUJBQThDO0FkNnNCaEQ7O0FnQjdyQlk7RUZoQlYsc0JBQThDO0FkaXRCaEQ7O0FnQmpzQlk7RUZoQlYsZ0JBQThDO0FkcXRCaEQ7O0FnQnJzQlk7RUZoQlYsc0JBQThDO0FkeXRCaEQ7O0FnQnpzQlk7RUZoQlYsc0JBQThDO0FkNnRCaEQ7O0FnQjdzQlk7RUZoQlYsZ0JBQThDO0FkaXVCaEQ7O0FnQmp0Qlk7RUZoQlYsc0JBQThDO0FkcXVCaEQ7O0FnQnJ0Qlk7RUZoQlYsc0JBQThDO0FkeXVCaEQ7O0FnQnp0Qlk7RUZoQlYsZ0JBQThDO0FkNnVCaEQ7O0FnQjd0Qlk7RUZoQlYsc0JBQThDO0FkaXZCaEQ7O0FnQmp1Qlk7RUZoQlYsc0JBQThDO0FkcXZCaEQ7O0FlaHZCSTtFQzNCRTtJQUNFLGFBQWE7SUFDYixZQUFZO0lBQ1osZUFBZTtFaEIrd0JyQjtFZ0Ixd0JRO0lGd0JOLGNUdUJxRDtJU3RCckQsZVRzQnFEO0VMK3RCdkQ7RWdCOXdCUTtJRndCTixhVHVCcUQ7SVN0QnJELGNUc0JxRDtFTG11QnZEO0VnQmx4QlE7SUZ3Qk4sbUJUdUJxRDtJU3RCckQsb0JUc0JxRDtFTHV1QnZEO0VnQnR4QlE7SUZ3Qk4sYVR1QnFEO0lTdEJyRCxjVHNCcUQ7RUwydUJ2RDtFZ0IxeEJRO0lGd0JOLGFUdUJxRDtJU3RCckQsY1RzQnFEO0VMK3VCdkQ7RWdCOXhCUTtJRndCTixtQlR1QnFEO0lTdEJyRCxvQlRzQnFEO0VMbXZCdkQ7RWdCNXhCSTtJRkNKLGNBQWM7SUFDZCxXQUFXO0lBQ1gsZUFBZTtFZDh4QmY7RWdCM3hCUTtJRmJSLGtCQUE2QztJQUk3QyxtQkFBOEM7RWR3eUI5QztFZ0IveEJRO0lGYlIsbUJBQTZDO0lBSTdDLG9CQUE4QztFZDR5QjlDO0VnQm55QlE7SUZiUixhQUE2QztJQUk3QyxjQUE4QztFZGd6QjlDO0VnQnZ5QlE7SUZiUixtQkFBNkM7SUFJN0Msb0JBQThDO0Vkb3pCOUM7RWdCM3lCUTtJRmJSLG1CQUE2QztJQUk3QyxvQkFBOEM7RWR3ekI5QztFZ0IveUJRO0lGYlIsYUFBNkM7SUFJN0MsY0FBOEM7RWQ0ekI5QztFZ0JuekJRO0lGYlIsbUJBQTZDO0lBSTdDLG9CQUE4QztFZGcwQjlDO0VnQnZ6QlE7SUZiUixtQkFBNkM7SUFJN0Msb0JBQThDO0VkbzBCOUM7RWdCM3pCUTtJRmJSLGFBQTZDO0lBSTdDLGNBQThDO0VkdzBCOUM7RWdCL3pCUTtJRmJSLG1CQUE2QztJQUk3QyxvQkFBOEM7RWQ0MEI5QztFZ0JuMEJRO0lGYlIsbUJBQTZDO0lBSTdDLG9CQUE4QztFZGcxQjlDO0VnQnYwQlE7SUZiUixjQUE2QztJQUk3QyxlQUE4QztFZG8xQjlDO0VnQnIwQkk7SUFBd0IsU0FBUztFaEJ3MEJyQztFZ0J0MEJJO0lBQXVCLFNabUtHO0VKc3FCOUI7RWdCdDBCTTtJQUF3QixRQURaO0VoQjAwQmxCO0VnQnowQk07SUFBd0IsUUFEWjtFaEI2MEJsQjtFZ0I1MEJNO0lBQXdCLFFBRFo7RWhCZzFCbEI7RWdCLzBCTTtJQUF3QixRQURaO0VoQm0xQmxCO0VnQmwxQk07SUFBd0IsUUFEWjtFaEJzMUJsQjtFZ0JyMUJNO0lBQXdCLFFBRFo7RWhCeTFCbEI7RWdCeDFCTTtJQUF3QixRQURaO0VoQjQxQmxCO0VnQjMxQk07SUFBd0IsUUFEWjtFaEIrMUJsQjtFZ0I5MUJNO0lBQXdCLFFBRFo7RWhCazJCbEI7RWdCajJCTTtJQUF3QixRQURaO0VoQnEyQmxCO0VnQnAyQk07SUFBd0IsU0FEWjtFaEJ3MkJsQjtFZ0J2MkJNO0lBQXdCLFNBRFo7RWhCMjJCbEI7RWdCMTJCTTtJQUF3QixTQURaO0VoQjgyQmxCO0VnQnQyQlU7SUZoQlYsY0FBNEI7RWR5M0I1QjtFZ0J6MkJVO0lGaEJWLHFCQUE4QztFZDQzQjlDO0VnQjUyQlU7SUZoQlYsc0JBQThDO0VkKzNCOUM7RWdCLzJCVTtJRmhCVixnQkFBOEM7RWRrNEI5QztFZ0JsM0JVO0lGaEJWLHNCQUE4QztFZHE0QjlDO0VnQnIzQlU7SUZoQlYsc0JBQThDO0VkdzRCOUM7RWdCeDNCVTtJRmhCVixnQkFBOEM7RWQyNEI5QztFZ0IzM0JVO0lGaEJWLHNCQUE4QztFZDg0QjlDO0VnQjkzQlU7SUZoQlYsc0JBQThDO0VkaTVCOUM7RWdCajRCVTtJRmhCVixnQkFBOEM7RWRvNUI5QztFZ0JwNEJVO0lGaEJWLHNCQUE4QztFZHU1QjlDO0VnQnY0QlU7SUZoQlYsc0JBQThDO0VkMDVCOUM7QUFDRjs7QWV0NUJJO0VDM0JFO0lBQ0UsYUFBYTtJQUNiLFlBQVk7SUFDWixlQUFlO0VoQnE3QnJCO0VnQmg3QlE7SUZ3Qk4sY1R1QnFEO0lTdEJyRCxlVHNCcUQ7RUxxNEJ2RDtFZ0JwN0JRO0lGd0JOLGFUdUJxRDtJU3RCckQsY1RzQnFEO0VMeTRCdkQ7RWdCeDdCUTtJRndCTixtQlR1QnFEO0lTdEJyRCxvQlRzQnFEO0VMNjRCdkQ7RWdCNTdCUTtJRndCTixhVHVCcUQ7SVN0QnJELGNUc0JxRDtFTGk1QnZEO0VnQmg4QlE7SUZ3Qk4sYVR1QnFEO0lTdEJyRCxjVHNCcUQ7RUxxNUJ2RDtFZ0JwOEJRO0lGd0JOLG1CVHVCcUQ7SVN0QnJELG9CVHNCcUQ7RUx5NUJ2RDtFZ0JsOEJJO0lGQ0osY0FBYztJQUNkLFdBQVc7SUFDWCxlQUFlO0VkbzhCZjtFZ0JqOEJRO0lGYlIsa0JBQTZDO0lBSTdDLG1CQUE4QztFZDg4QjlDO0VnQnI4QlE7SUZiUixtQkFBNkM7SUFJN0Msb0JBQThDO0VkazlCOUM7RWdCejhCUTtJRmJSLGFBQTZDO0lBSTdDLGNBQThDO0VkczlCOUM7RWdCNzhCUTtJRmJSLG1CQUE2QztJQUk3QyxvQkFBOEM7RWQwOUI5QztFZ0JqOUJRO0lGYlIsbUJBQTZDO0lBSTdDLG9CQUE4QztFZDg5QjlDO0VnQnI5QlE7SUZiUixhQUE2QztJQUk3QyxjQUE4QztFZGsrQjlDO0VnQno5QlE7SUZiUixtQkFBNkM7SUFJN0Msb0JBQThDO0VkcytCOUM7RWdCNzlCUTtJRmJSLG1CQUE2QztJQUk3QyxvQkFBOEM7RWQwK0I5QztFZ0JqK0JRO0lGYlIsYUFBNkM7SUFJN0MsY0FBOEM7RWQ4K0I5QztFZ0JyK0JRO0lGYlIsbUJBQTZDO0lBSTdDLG9CQUE4QztFZGsvQjlDO0VnQnorQlE7SUZiUixtQkFBNkM7SUFJN0Msb0JBQThDO0Vkcy9COUM7RWdCNytCUTtJRmJSLGNBQTZDO0lBSTdDLGVBQThDO0VkMC9COUM7RWdCMytCSTtJQUF3QixTQUFTO0VoQjgrQnJDO0VnQjUrQkk7SUFBdUIsU1ptS0c7RUo0MEI5QjtFZ0I1K0JNO0lBQXdCLFFBRFo7RWhCZy9CbEI7RWdCLytCTTtJQUF3QixRQURaO0VoQm0vQmxCO0VnQmwvQk07SUFBd0IsUUFEWjtFaEJzL0JsQjtFZ0JyL0JNO0lBQXdCLFFBRFo7RWhCeS9CbEI7RWdCeC9CTTtJQUF3QixRQURaO0VoQjQvQmxCO0VnQjMvQk07SUFBd0IsUUFEWjtFaEIrL0JsQjtFZ0I5L0JNO0lBQXdCLFFBRFo7RWhCa2dDbEI7RWdCamdDTTtJQUF3QixRQURaO0VoQnFnQ2xCO0VnQnBnQ007SUFBd0IsUUFEWjtFaEJ3Z0NsQjtFZ0J2Z0NNO0lBQXdCLFFBRFo7RWhCMmdDbEI7RWdCMWdDTTtJQUF3QixTQURaO0VoQjhnQ2xCO0VnQjdnQ007SUFBd0IsU0FEWjtFaEJpaENsQjtFZ0JoaENNO0lBQXdCLFNBRFo7RWhCb2hDbEI7RWdCNWdDVTtJRmhCVixjQUE0QjtFZCtoQzVCO0VnQi9nQ1U7SUZoQlYscUJBQThDO0Vka2lDOUM7RWdCbGhDVTtJRmhCVixzQkFBOEM7RWRxaUM5QztFZ0JyaENVO0lGaEJWLGdCQUE4QztFZHdpQzlDO0VnQnhoQ1U7SUZoQlYsc0JBQThDO0VkMmlDOUM7RWdCM2hDVTtJRmhCVixzQkFBOEM7RWQ4aUM5QztFZ0I5aENVO0lGaEJWLGdCQUE4QztFZGlqQzlDO0VnQmppQ1U7SUZoQlYsc0JBQThDO0Vkb2pDOUM7RWdCcGlDVTtJRmhCVixzQkFBOEM7RWR1akM5QztFZ0J2aUNVO0lGaEJWLGdCQUE4QztFZDBqQzlDO0VnQjFpQ1U7SUZoQlYsc0JBQThDO0VkNmpDOUM7RWdCN2lDVTtJRmhCVixzQkFBOEM7RWRna0M5QztBQUNGOztBZTVqQ0k7RUMzQkU7SUFDRSxhQUFhO0lBQ2IsWUFBWTtJQUNaLGVBQWU7RWhCMmxDckI7RWdCdGxDUTtJRndCTixjVHVCcUQ7SVN0QnJELGVUc0JxRDtFTDJpQ3ZEO0VnQjFsQ1E7SUZ3Qk4sYVR1QnFEO0lTdEJyRCxjVHNCcUQ7RUwraUN2RDtFZ0I5bENRO0lGd0JOLG1CVHVCcUQ7SVN0QnJELG9CVHNCcUQ7RUxtakN2RDtFZ0JsbUNRO0lGd0JOLGFUdUJxRDtJU3RCckQsY1RzQnFEO0VMdWpDdkQ7RWdCdG1DUTtJRndCTixhVHVCcUQ7SVN0QnJELGNUc0JxRDtFTDJqQ3ZEO0VnQjFtQ1E7SUZ3Qk4sbUJUdUJxRDtJU3RCckQsb0JUc0JxRDtFTCtqQ3ZEO0VnQnhtQ0k7SUZDSixjQUFjO0lBQ2QsV0FBVztJQUNYLGVBQWU7RWQwbUNmO0VnQnZtQ1E7SUZiUixrQkFBNkM7SUFJN0MsbUJBQThDO0Vkb25DOUM7RWdCM21DUTtJRmJSLG1CQUE2QztJQUk3QyxvQkFBOEM7RWR3bkM5QztFZ0IvbUNRO0lGYlIsYUFBNkM7SUFJN0MsY0FBOEM7RWQ0bkM5QztFZ0JubkNRO0lGYlIsbUJBQTZDO0lBSTdDLG9CQUE4QztFZGdvQzlDO0VnQnZuQ1E7SUZiUixtQkFBNkM7SUFJN0Msb0JBQThDO0Vkb29DOUM7RWdCM25DUTtJRmJSLGFBQTZDO0lBSTdDLGNBQThDO0Vkd29DOUM7RWdCL25DUTtJRmJSLG1CQUE2QztJQUk3QyxvQkFBOEM7RWQ0b0M5QztFZ0Jub0NRO0lGYlIsbUJBQTZDO0lBSTdDLG9CQUE4QztFZGdwQzlDO0VnQnZvQ1E7SUZiUixhQUE2QztJQUk3QyxjQUE4QztFZG9wQzlDO0VnQjNvQ1E7SUZiUixtQkFBNkM7SUFJN0Msb0JBQThDO0Vkd3BDOUM7RWdCL29DUTtJRmJSLG1CQUE2QztJQUk3QyxvQkFBOEM7RWQ0cEM5QztFZ0JucENRO0lGYlIsY0FBNkM7SUFJN0MsZUFBOEM7RWRncUM5QztFZ0JqcENJO0lBQXdCLFNBQVM7RWhCb3BDckM7RWdCbHBDSTtJQUF1QixTWm1LRztFSmsvQjlCO0VnQmxwQ007SUFBd0IsUUFEWjtFaEJzcENsQjtFZ0JycENNO0lBQXdCLFFBRFo7RWhCeXBDbEI7RWdCeHBDTTtJQUF3QixRQURaO0VoQjRwQ2xCO0VnQjNwQ007SUFBd0IsUUFEWjtFaEIrcENsQjtFZ0I5cENNO0lBQXdCLFFBRFo7RWhCa3FDbEI7RWdCanFDTTtJQUF3QixRQURaO0VoQnFxQ2xCO0VnQnBxQ007SUFBd0IsUUFEWjtFaEJ3cUNsQjtFZ0J2cUNNO0lBQXdCLFFBRFo7RWhCMnFDbEI7RWdCMXFDTTtJQUF3QixRQURaO0VoQjhxQ2xCO0VnQjdxQ007SUFBd0IsUUFEWjtFaEJpckNsQjtFZ0JockNNO0lBQXdCLFNBRFo7RWhCb3JDbEI7RWdCbnJDTTtJQUF3QixTQURaO0VoQnVyQ2xCO0VnQnRyQ007SUFBd0IsU0FEWjtFaEIwckNsQjtFZ0JsckNVO0lGaEJWLGNBQTRCO0VkcXNDNUI7RWdCcnJDVTtJRmhCVixxQkFBOEM7RWR3c0M5QztFZ0J4ckNVO0lGaEJWLHNCQUE4QztFZDJzQzlDO0VnQjNyQ1U7SUZoQlYsZ0JBQThDO0VkOHNDOUM7RWdCOXJDVTtJRmhCVixzQkFBOEM7RWRpdEM5QztFZ0Jqc0NVO0lGaEJWLHNCQUE4QztFZG90QzlDO0VnQnBzQ1U7SUZoQlYsZ0JBQThDO0VkdXRDOUM7RWdCdnNDVTtJRmhCVixzQkFBOEM7RWQwdEM5QztFZ0Ixc0NVO0lGaEJWLHNCQUE4QztFZDZ0QzlDO0VnQjdzQ1U7SUZoQlYsZ0JBQThDO0VkZ3VDOUM7RWdCaHRDVTtJRmhCVixzQkFBOEM7RWRtdUM5QztFZ0JudENVO0lGaEJWLHNCQUE4QztFZHN1QzlDO0FBQ0Y7O0FlbHVDSTtFQzNCRTtJQUNFLGFBQWE7SUFDYixZQUFZO0lBQ1osZUFBZTtFaEJpd0NyQjtFZ0I1dkNRO0lGd0JOLGNUdUJxRDtJU3RCckQsZVRzQnFEO0VMaXRDdkQ7RWdCaHdDUTtJRndCTixhVHVCcUQ7SVN0QnJELGNUc0JxRDtFTHF0Q3ZEO0VnQnB3Q1E7SUZ3Qk4sbUJUdUJxRDtJU3RCckQsb0JUc0JxRDtFTHl0Q3ZEO0VnQnh3Q1E7SUZ3Qk4sYVR1QnFEO0lTdEJyRCxjVHNCcUQ7RUw2dEN2RDtFZ0I1d0NRO0lGd0JOLGFUdUJxRDtJU3RCckQsY1RzQnFEO0VMaXVDdkQ7RWdCaHhDUTtJRndCTixtQlR1QnFEO0lTdEJyRCxvQlRzQnFEO0VMcXVDdkQ7RWdCOXdDSTtJRkNKLGNBQWM7SUFDZCxXQUFXO0lBQ1gsZUFBZTtFZGd4Q2Y7RWdCN3dDUTtJRmJSLGtCQUE2QztJQUk3QyxtQkFBOEM7RWQweEM5QztFZ0JqeENRO0lGYlIsbUJBQTZDO0lBSTdDLG9CQUE4QztFZDh4QzlDO0VnQnJ4Q1E7SUZiUixhQUE2QztJQUk3QyxjQUE4QztFZGt5QzlDO0VnQnp4Q1E7SUZiUixtQkFBNkM7SUFJN0Msb0JBQThDO0Vkc3lDOUM7RWdCN3hDUTtJRmJSLG1CQUE2QztJQUk3QyxvQkFBOEM7RWQweUM5QztFZ0JqeUNRO0lGYlIsYUFBNkM7SUFJN0MsY0FBOEM7RWQ4eUM5QztFZ0JyeUNRO0lGYlIsbUJBQTZDO0lBSTdDLG9CQUE4QztFZGt6QzlDO0VnQnp5Q1E7SUZiUixtQkFBNkM7SUFJN0Msb0JBQThDO0Vkc3pDOUM7RWdCN3lDUTtJRmJSLGFBQTZDO0lBSTdDLGNBQThDO0VkMHpDOUM7RWdCanpDUTtJRmJSLG1CQUE2QztJQUk3QyxvQkFBOEM7RWQ4ekM5QztFZ0JyekNRO0lGYlIsbUJBQTZDO0lBSTdDLG9CQUE4QztFZGswQzlDO0VnQnp6Q1E7SUZiUixjQUE2QztJQUk3QyxlQUE4QztFZHMwQzlDO0VnQnZ6Q0k7SUFBd0IsU0FBUztFaEIwekNyQztFZ0J4ekNJO0lBQXVCLFNabUtHO0VKd3BDOUI7RWdCeHpDTTtJQUF3QixRQURaO0VoQjR6Q2xCO0VnQjN6Q007SUFBd0IsUUFEWjtFaEIrekNsQjtFZ0I5ekNNO0lBQXdCLFFBRFo7RWhCazBDbEI7RWdCajBDTTtJQUF3QixRQURaO0VoQnEwQ2xCO0VnQnAwQ007SUFBd0IsUUFEWjtFaEJ3MENsQjtFZ0J2MENNO0lBQXdCLFFBRFo7RWhCMjBDbEI7RWdCMTBDTTtJQUF3QixRQURaO0VoQjgwQ2xCO0VnQjcwQ007SUFBd0IsUUFEWjtFaEJpMUNsQjtFZ0JoMUNNO0lBQXdCLFFBRFo7RWhCbzFDbEI7RWdCbjFDTTtJQUF3QixRQURaO0VoQnUxQ2xCO0VnQnQxQ007SUFBd0IsU0FEWjtFaEIwMUNsQjtFZ0J6MUNNO0lBQXdCLFNBRFo7RWhCNjFDbEI7RWdCNTFDTTtJQUF3QixTQURaO0VoQmcyQ2xCO0VnQngxQ1U7SUZoQlYsY0FBNEI7RWQyMkM1QjtFZ0IzMUNVO0lGaEJWLHFCQUE4QztFZDgyQzlDO0VnQjkxQ1U7SUZoQlYsc0JBQThDO0VkaTNDOUM7RWdCajJDVTtJRmhCVixnQkFBOEM7RWRvM0M5QztFZ0JwMkNVO0lGaEJWLHNCQUE4QztFZHUzQzlDO0VnQnYyQ1U7SUZoQlYsc0JBQThDO0VkMDNDOUM7RWdCMTJDVTtJRmhCVixnQkFBOEM7RWQ2M0M5QztFZ0I3MkNVO0lGaEJWLHNCQUE4QztFZGc0QzlDO0VnQmgzQ1U7SUZoQlYsc0JBQThDO0VkbTRDOUM7RWdCbjNDVTtJRmhCVixnQkFBOEM7RWRzNEM5QztFZ0J0M0NVO0lGaEJWLHNCQUE4QztFZHk0QzlDO0VnQnozQ1U7SUZoQlYsc0JBQThDO0VkNDRDOUM7QUFDRjs7QWlCaDhDQTtFQUNFLFdBQVc7RUFDWCxtQmJpSVc7RWFoSVgsY2JTZ0I7QUowN0NsQjs7QWlCdDhDQTs7RUFRSSxnQmJtVmdDO0VhbFZoQyxtQkFBbUI7RUFDbkIsNkJiSmM7QUp1OENsQjs7QWlCNzhDQTtFQWNJLHNCQUFzQjtFQUN0QixnQ2JUYztBSjQ4Q2xCOztBaUJsOUNBO0VBbUJJLDZCYmJjO0FKZzlDbEI7O0FpQjE3Q0E7O0VBR0ksZWI2VCtCO0FKK25DbkM7O0FpQm43Q0E7RUFDRSx5QmJuQ2dCO0FKeTlDbEI7O0FpQnY3Q0E7O0VBS0kseUJidkNjO0FKODlDbEI7O0FpQjU3Q0E7O0VBV00sd0JBQTRDO0FqQnM3Q2xEOztBaUJqN0NBOzs7O0VBS0ksU0FBUztBakJtN0NiOztBaUIzNkNBO0VBRUkscUNiMURXO0FKdStDZjs7QU01K0NFO0VXMkVJLGNidkVZO0Vhd0VaLHNDYnZFUztBSjQrQ2Y7O0FrQngvQ0U7OztFQUlJLHlCQ2dHNEQ7QW5CMDVDbEU7O0FrQjkvQ0U7Ozs7RUFZTSxxQkN3RjBEO0FuQmk2Q2xFOztBTTkvQ0U7RVlpQk0seUJBSnNDO0FsQnEvQzlDOztBa0J0L0NFOztFQVNRLHlCQVJvQztBbEIwL0M5Qzs7QWtCOWdERTs7O0VBSUkseUJDZ0c0RDtBbkJnN0NsRTs7QWtCcGhERTs7OztFQVlNLHFCQ3dGMEQ7QW5CdTdDbEU7O0FNcGhERTtFWWlCTSx5QkFKc0M7QWxCMmdEOUM7O0FrQjVnREU7O0VBU1EseUJBUm9DO0FsQmdoRDlDOztBa0JwaURFOzs7RUFJSSx5QkNnRzREO0FuQnM4Q2xFOztBa0IxaURFOzs7O0VBWU0scUJDd0YwRDtBbkI2OENsRTs7QU0xaURFO0VZaUJNLHlCQUpzQztBbEJpaUQ5Qzs7QWtCbGlERTs7RUFTUSx5QkFSb0M7QWxCc2lEOUM7O0FrQjFqREU7OztFQUlJLHlCQ2dHNEQ7QW5CNDlDbEU7O0FrQmhrREU7Ozs7RUFZTSxxQkN3RjBEO0FuQm0rQ2xFOztBTWhrREU7RVlpQk0seUJBSnNDO0FsQnVqRDlDOztBa0J4akRFOztFQVNRLHlCQVJvQztBbEI0akQ5Qzs7QWtCaGxERTs7O0VBSUkseUJDZ0c0RDtBbkJrL0NsRTs7QWtCdGxERTs7OztFQVlNLHFCQ3dGMEQ7QW5CeS9DbEU7O0FNdGxERTtFWWlCTSx5QkFKc0M7QWxCNmtEOUM7O0FrQjlrREU7O0VBU1EseUJBUm9DO0FsQmtsRDlDOztBa0J0bURFOzs7RUFJSSx5QkNnRzREO0FuQndnRGxFOztBa0I1bURFOzs7O0VBWU0scUJDd0YwRDtBbkIrZ0RsRTs7QU01bURFO0VZaUJNLHlCQUpzQztBbEJtbUQ5Qzs7QWtCcG1ERTs7RUFTUSx5QkFSb0M7QWxCd21EOUM7O0FrQjVuREU7OztFQUlJLHlCQ2dHNEQ7QW5COGhEbEU7O0FrQmxvREU7Ozs7RUFZTSxxQkN3RjBEO0FuQnFpRGxFOztBTWxvREU7RVlpQk0seUJBSnNDO0FsQnluRDlDOztBa0IxbkRFOztFQVNRLHlCQVJvQztBbEI4bkQ5Qzs7QWtCbHBERTs7O0VBSUkseUJDZ0c0RDtBbkJvakRsRTs7QWtCeHBERTs7OztFQVlNLHFCQ3dGMEQ7QW5CMmpEbEU7O0FNeHBERTtFWWlCTSx5QkFKc0M7QWxCK29EOUM7O0FrQmhwREU7O0VBU1EseUJBUm9DO0FsQm9wRDlDOztBa0J4cURFOzs7RUFJSSxzQ2RRUztBSmtxRGY7O0FNdnFERTtFWWlCTSxzQ0FKc0M7QWxCOHBEOUM7O0FrQi9wREU7O0VBU1Esc0NBUm9DO0FsQm1xRDlDOztBaUI3a0RBO0VBR00sV2IzR1M7RWE0R1QseUJicEdZO0VhcUdaLHFCYmlRcUQ7QUo2MEMzRDs7QWlCbmxEQTtFQVdNLGNiNUdZO0VhNkdaLHlCYmxIWTtFYW1IWixxQmJsSFk7QUo4ckRsQjs7QWlCdmtEQTtFQUNFLFdiM0hhO0VhNEhiLHlCYnBIZ0I7QUo4ckRsQjs7QWlCNWtEQTs7O0VBT0kscUJiNk91RDtBSjgxQzNEOztBaUJsbERBO0VBV0ksU0FBUztBakIya0RiOztBaUJ0bERBO0VBZ0JNLDJDYjFJUztBSm90RGY7O0FNL3NERTtFVzRJTSxXYmpKTztFYWtKUCw0Q2JsSk87QUp5dERmOztBZXZwREk7RUVpR0E7SUFFSSxjQUFjO0lBQ2QsV0FBVztJQUNYLGdCQUFnQjtJQUNoQixpQ0FBaUM7RWpCeWpEdkM7RWlCOWpERztJQVNLLFNBQVM7RWpCd2pEakI7QUFDRjs7QWVucURJO0VFaUdBO0lBRUksY0FBYztJQUNkLFdBQVc7SUFDWCxnQkFBZ0I7SUFDaEIsaUNBQWlDO0VqQnFrRHZDO0VpQjFrREc7SUFTSyxTQUFTO0VqQm9rRGpCO0FBQ0Y7O0FlL3FESTtFRWlHQTtJQUVJLGNBQWM7SUFDZCxXQUFXO0lBQ1gsZ0JBQWdCO0lBQ2hCLGlDQUFpQztFakJpbER2QztFaUJ0bERHO0lBU0ssU0FBUztFakJnbERqQjtBQUNGOztBZTNyREk7RUVpR0E7SUFFSSxjQUFjO0lBQ2QsV0FBVztJQUNYLGdCQUFnQjtJQUNoQixpQ0FBaUM7RWpCNmxEdkM7RWlCbG1ERztJQVNLLFNBQVM7RWpCNGxEakI7QUFDRjs7QWlCM21EQTtFQU9RLGNBQWM7RUFDZCxXQUFXO0VBQ1gsZ0JBQWdCO0VBQ2hCLGlDQUFpQztBakJ3bUR6Qzs7QWlCbG5EQTtFQWNVLFNBQVM7QWpCd21EbkI7O0FvQnJ4REE7RUFDRSxjQUFjO0VBQ2QsV0FBVztFQUNYLG1DRGlIOEQ7RUNoSDlELHlCaEIwWGtDO0VDaE45QixlQUFXO0VldktmLGdCaEJtUitCO0VnQmxSL0IsZ0JoQnVSK0I7RWdCdFIvQixjaEJEZ0I7RWdCRWhCLHNCaEJUYTtFZ0JVYiw0QkFBNEI7RUFDNUIseUJoQlBnQjtFT09kLHNCUDZOZ0M7RWlCL045Qix3RWpCd2U0RjtBSm16Q2xHOztBcUJ2eERNO0VEZE47SUNlUSxnQkFBZ0I7RXJCMnhEdEI7QUFDRjs7QW9CM3lEQTtFQXNCSSw2QkFBNkI7RUFDN0IsU0FBUztBcEJ5eERiOztBc0J6eURFO0VBQ0UsY2xCQWM7RWtCQ2Qsc0JsQlJXO0VrQlNYLHFCbEJzZHNFO0VrQnJkdEUsVUFBVTtFQUtSLGdEbEJhVztBSjJ4RGpCOztBb0J4ekRBO0VBK0JJLGNoQnhCYztFZ0IwQmQsVUFBVTtBcEI0eERkOztBb0I3ekRBO0VBMkNJLHlCaEJ4Q2M7RWdCMENkLFVBQVU7QXBCcXhEZDs7QW9CanhEQTs7OztFQUtJLGdCQUFnQjtBcEJteERwQjs7QW9CL3dEQTtFQUdJLGtCQUFrQjtFQUNsQiwwQmhCdERjO0FKczBEbEI7O0FvQnB4REE7RUFhSSxjaEIvRGM7RWdCZ0VkLHNCaEJ2RVc7QUprMURmOztBb0J0d0RBOztFQUVFLGNBQWM7RUFDZCxXQUFXO0FwQnl3RGI7O0FvQi92REE7RUFDRSxpQ0R5QjhEO0VDeEI5RCxvQ0R3QjhEO0VDdkI5RCxnQkFBZ0I7RWZpRWQsa0JBQVc7RWUvRGIsZ0JoQmdNK0I7QUpra0RqQzs7QW9CL3ZEQTtFQUNFLCtCRGlCOEQ7RUNoQjlELGtDRGdCOEQ7RWQwRDFELGtCQUFXO0VleEVmLGdCaEI2SCtCO0FKcW9EakM7O0FvQi92REE7RUFDRSxnQ0RVOEQ7RUNUOUQsbUNEUzhEO0VkMEQxRCxtQkFBVztFZWpFZixnQmhCdUgrQjtBSjJvRGpDOztBb0J6dkRBO0VBQ0UsY0FBYztFQUNkLFdBQVc7RUFDWCxtQkFBMkI7RUFDM0IsZ0JBQWdCO0Vmb0RaLGVBQVc7RWVsRGYsZ0JoQm1LK0I7RWdCbEsvQixjaEJuSGdCO0VnQm9IaEIsNkJBQTZCO0VBQzdCLHlCQUF5QjtFQUN6QixtQkFBbUM7QXBCNHZEckM7O0FvQnR3REE7RUFjSSxnQkFBZ0I7RUFDaEIsZUFBZTtBcEI0dkRuQjs7QW9CaHZEQTtFQUNFLGtDRDlCOEQ7RUMrQjlELHVCaEJxUGlDO0VDMU43QixtQkFBVztFZXpCZixnQmhCK0UrQjtFT3hON0IscUJQK04rQjtBSjhwRG5DOztBb0JodkRBO0VBQ0UsZ0NEdEM4RDtFQ3VDOUQsb0JoQmtQZ0M7RUMvTjVCLGtCQUFXO0VlakJmLGdCaEJzRStCO0VPdk43QixxQlA4TitCO0FKdXFEbkM7O0FvQi91REE7RUFHSSxZQUFZO0FwQmd2RGhCOztBb0I1dURBO0VBQ0UsWUFBWTtBcEIrdURkOztBb0J2dURBO0VBQ0UsbUJoQjJVMEM7QUorNUM1Qzs7QW9CdnVEQTtFQUNFLGNBQWM7RUFDZCxtQmhCNFQ0QztBSjg2QzlDOztBb0JsdURBO0VBQ0UsYUFBYTtFQUNiLGVBQWU7RUFDZixrQkFBMkM7RUFDM0MsaUJBQTBDO0FwQnF1RDVDOztBb0J6dURBOztFQVFJLGtCQUEyQztFQUMzQyxpQkFBMEM7QXBCc3VEOUM7O0FvQjd0REE7RUFDRSxrQkFBa0I7RUFDbEIsY0FBYztFQUNkLHFCaEJpUzZDO0FKKzdDL0M7O0FvQjd0REE7RUFDRSxrQkFBa0I7RUFDbEIsa0JoQjZSMkM7RWdCNVIzQyxxQmhCMlI2QztBSnE4Qy9DOztBb0JudURBOztFQVFJLGNoQnpOYztBSnk3RGxCOztBb0I1dERBO0VBQ0UsZ0JBQWdCO0FwQit0RGxCOztBb0I1dERBO0VBQ0Usb0JBQW9CO0VBQ3BCLG1CQUFtQjtFQUNuQixlQUFlO0VBQ2YscUJoQjhRNEM7QUppOUM5Qzs7QW9CbnVEQTtFQVFJLGdCQUFnQjtFQUNoQixhQUFhO0VBQ2IsdUJoQnlRNEM7RWdCeFE1QyxjQUFjO0FwQit0RGxCOztBc0I1NkRFO0VBQ0UsYUFBYTtFQUNiLFdBQVc7RUFDWCxtQmxCMmMwQztFQ3RWMUMsa0JBQVc7RWlCbkhYLGNsQlBhO0FKczdEakI7O0FzQjU2REU7RUFDRSxrQkFBa0I7RUFDbEIsU0FBUztFQUNULE9BQU87RUFDUCxVQUFVO0VBQ1YsYUFBYTtFQUNiLGVBQWU7RUFDZix1QmxCc3lCcUM7RWtCcnlCckMsaUJBQWlCO0VqQndIZixtQkFBVztFaUJ0SGIsZ0JsQnVPNkI7RWtCdE83QixXbEJ4RFc7RWtCeURYLHdDbEJ0QmE7RU94QmIsc0JQNk5nQztBSml3RHBDOztBc0IzNkRJOztFQUVFLFNBQWtDO0F0Qjg2RHhDOztBc0JyOURJOzs7O0VBOENFLGNBQWM7QXRCODZEcEI7O0FzQjU5REk7RUFvREUscUJsQjFDVztFa0I2Q1QsK0NBQTZDO0VBQzdDLGlSSDNCMEU7RUc0QjFFLDRCQUE0QjtFQUM1QiwyREFBNkQ7RUFDN0QsZ0VIK0J3RDtBbkIyNERoRTs7QXNCcitESTtFQStESSxxQmxCckRTO0VrQnNEVCxnRGxCdERTO0FKZytEakI7O0FzQjErREk7RUF5RUksOEJBQThDO0VBQzlDLHdDQUFzRDtBdEJxNkQ5RDs7QXNCLytESTtFQW1GSSxvQ0hPd0Q7RUdOeEQsa0ZITXdEO0FuQjA1RGhFOztBc0JwL0RJO0VBMkZFLHFCbEJqRlc7RWtCb0ZULGtEQUFvRTtFQUNwRSx1akJBQThKO0F0QjI1RHRLOztBc0IxL0RJO0VBbUdJLHFCbEJ6RlM7RWtCMEZULGdEbEIxRlM7QUpxL0RqQjs7QXNCLy9ESTtFQTRHSSxjbEJsR1M7QUp5L0RqQjs7QXNCbmdFSTs7O0VBaUhJLGNBQWM7QXRCdzVEdEI7O0FzQnpnRUk7RUF5SEksY2xCL0dTO0FKbWdFakI7O0FzQjdnRUk7RUE0SE0scUJsQmxITztBSnVnRWpCOztBc0JqaEVJO0VBa0lNLHFCQUFrQztFQzVKeEMseUJENkorQztBdEJtNURuRDs7QXNCdGhFSTtFQXlJTSxnRGxCL0hPO0FKZ2hFakI7O0FzQjFoRUk7RUE2SU0scUJsQm5JTztBSm9oRWpCOztBc0I5aEVJO0VBdUpJLHFCbEI3SVM7QUp3aEVqQjs7QXNCbGlFSTtFQTRKTSxxQmxCbEpPO0VrQm1KUCxnRGxCbkpPO0FKNmhFakI7O0FzQjNoRUU7RUFDRSxhQUFhO0VBQ2IsV0FBVztFQUNYLG1CbEIyYzBDO0VDdFYxQyxrQkFBVztFaUJuSFgsY2xCVmE7QUp3aUVqQjs7QXNCM2hFRTtFQUNFLGtCQUFrQjtFQUNsQixTQUFTO0VBQ1QsT0FBTztFQUNQLFVBQVU7RUFDVixhQUFhO0VBQ2IsZUFBZTtFQUNmLHVCbEJzeUJxQztFa0JyeUJyQyxpQkFBaUI7RWpCd0hmLG1CQUFXO0VpQnRIYixnQmxCdU82QjtFa0J0TzdCLFdsQnhEVztFa0J5RFgsd0NsQnpCYTtFT3JCYixzQlA2TmdDO0FKZzNEcEM7O0FzQjFoRUk7O0VBRUUsU0FBa0M7QXRCNmhFeEM7O0FzQnBrRUk7Ozs7RUE4Q0UsY0FBYztBdEI2aEVwQjs7QXNCM2tFSTtFQW9ERSxxQmxCN0NXO0VrQmdEVCwrQ0FBNkM7RUFDN0MsNFVIM0IwRTtFRzRCMUUsNEJBQTRCO0VBQzVCLDJEQUE2RDtFQUM3RCxnRUgrQndEO0FuQjAvRGhFOztBc0JwbEVJO0VBK0RJLHFCbEJ4RFM7RWtCeURULGdEbEJ6RFM7QUprbEVqQjs7QXNCemxFSTtFQXlFSSw4QkFBOEM7RUFDOUMsd0NBQXNEO0F0Qm9oRTlEOztBc0I5bEVJO0VBbUZJLG9DSE93RDtFR054RCxrRkhNd0Q7QW5CeWdFaEU7O0FzQm5tRUk7RUEyRkUscUJsQnBGVztFa0J1RlQsa0RBQW9FO0VBQ3BFLGtuQkFBOEo7QXRCMGdFdEs7O0FzQnptRUk7RUFtR0kscUJsQjVGUztFa0I2RlQsZ0RsQjdGUztBSnVtRWpCOztBc0I5bUVJO0VBNEdJLGNsQnJHUztBSjJtRWpCOztBc0JsbkVJOzs7RUFpSEksY0FBYztBdEJ1Z0V0Qjs7QXNCeG5FSTtFQXlISSxjbEJsSFM7QUpxbkVqQjs7QXNCNW5FSTtFQTRITSxxQmxCckhPO0FKeW5FakI7O0FzQmhvRUk7RUFrSU0scUJBQWtDO0VDNUp4Qyx5QkQ2SitDO0F0QmtnRW5EOztBc0Jyb0VJO0VBeUlNLGdEbEJsSU87QUprb0VqQjs7QXNCem9FSTtFQTZJTSxxQmxCdElPO0FKc29FakI7O0FzQjdvRUk7RUF1SkkscUJsQmhKUztBSjBvRWpCOztBc0JqcEVJO0VBNEpNLHFCbEJySk87RWtCc0pQLGdEbEJ0Sk87QUorb0VqQjs7QW9CcDZEQTtFQUNFLGFBQWE7RUFDYixtQkFBbUI7RUFDbkIsbUJBQW1CO0FwQnU2RHJCOztBb0IxNkRBO0VBU0ksV0FBVztBcEJxNkRmOztBZXBvRUk7RUtzTko7SUFlTSxhQUFhO0lBQ2IsbUJBQW1CO0lBQ25CLHVCQUF1QjtJQUN2QixnQkFBZ0I7RXBCbzZEcEI7RW9CdDdERjtJQXVCTSxhQUFhO0lBQ2IsY0FBYztJQUNkLG1CQUFtQjtJQUNuQixtQkFBbUI7SUFDbkIsZ0JBQWdCO0VwQms2RHBCO0VvQjc3REY7SUFnQ00scUJBQXFCO0lBQ3JCLFdBQVc7SUFDWCxzQkFBc0I7RXBCZzZEMUI7RW9CbDhERjtJQXVDTSxxQkFBcUI7RXBCODVEekI7RW9CcjhERjs7SUE0Q00sV0FBVztFcEI2NURmO0VvQno4REY7SUFrRE0sYUFBYTtJQUNiLG1CQUFtQjtJQUNuQix1QkFBdUI7SUFDdkIsV0FBVztJQUNYLGVBQWU7RXBCMDVEbkI7RW9CaDlERjtJQXlETSxrQkFBa0I7SUFDbEIsY0FBYztJQUNkLGFBQWE7SUFDYixxQmhCZ0x3QztJZ0IvS3hDLGNBQWM7RXBCMDVEbEI7RW9CdjlERjtJQWlFTSxtQkFBbUI7SUFDbkIsdUJBQXVCO0VwQnk1RDNCO0VvQjM5REY7SUFxRU0sZ0JBQWdCO0VwQnk1RHBCO0FBQ0Y7O0F3QjN1RUE7RUFDRSxxQkFBcUI7RUFFckIsZ0JwQnVSK0I7RW9CdFIvQixjcEJNZ0I7RW9CTGhCLGtCQUFrQjtFQUdsQixzQkFBc0I7RUFDdEIsaUJBQWlCO0VBQ2pCLDZCQUE2QjtFQUM3Qiw2QkFBMkM7RUN1RjNDLHlCckI0UmtDO0VDaE45QixlQUFXO0VvQjFFZixnQnJCMkwrQjtFT25SN0Isc0JQNk5nQztFaUIvTjlCLHFJakJpYjZJO0FKZzBEbko7O0FxQjd1RU07RUdkTjtJSGVRLGdCQUFnQjtFckJpdkV0QjtBQUNGOztBTTN2RUU7RWtCVUUsY3BCTmM7RW9CT2QscUJBQXFCO0F4QnF2RXpCOztBd0J0d0VBO0VBc0JJLFVBQVU7RUFDVixnRHBCTWE7QUo4dUVqQjs7QXdCM3dFQTtFQTZCSSxhcEJrWjZCO0FKZzJEakM7O0F3Qi93RUE7RUFrQ0ksZUFBc0Q7QXhCaXZFMUQ7O0F3Qm51RUE7O0VBRUUsb0JBQW9CO0F4QnN1RXRCOztBd0I3dEVFO0VDM0RBLFdyQkNhO0VtQkRYLHlCbkI2QmE7RXFCM0JmLHFCckIyQmU7QUppd0VqQjs7QU14eEVFO0VtQkFFLFdyQkxXO0VtQkRYLHlCRURvRjtFQVNwRixxQkFUeUg7QXpCcXlFN0g7O0F5Qnp4RUU7RUFFRSxXckJaVztFbUJEWCx5QkVEb0Y7RUFnQnBGLHFCQWhCeUg7RUFxQnZILGdEQUFpRjtBekJ1eEV2Rjs7QXlCbHhFRTtFQUVFLFdyQjFCVztFcUIyQlgseUJyQkNhO0VxQkFiLHFCckJBYTtBSm94RWpCOztBeUI3d0VFOztFQUdFLFdyQnRDVztFcUJ1Q1gseUJBekN1SztFQTZDdksscUJBN0MrTTtBekJ5ekVuTjs7QXlCMXdFSTs7RUFLSSxnREFBaUY7QXpCMHdFekY7O0F3Qmx3RUU7RUMzREEsV3JCQ2E7RW1CRFgseUJuQk9jO0VxQkxoQixxQnJCS2dCO0FKNHpFbEI7O0FNN3pFRTtFbUJBRSxXckJMVztFbUJEWCx5QkVEb0Y7RUFTcEYscUJBVHlIO0F6QjAwRTdIOztBeUI5ekVFO0VBRUUsV3JCWlc7RW1CRFgseUJFRG9GO0VBZ0JwRixxQkFoQnlIO0VBcUJ2SCxpREFBaUY7QXpCNHpFdkY7O0F5QnZ6RUU7RUFFRSxXckIxQlc7RXFCMkJYLHlCckJyQmM7RXFCc0JkLHFCckJ0QmM7QUorMEVsQjs7QXlCbHpFRTs7RUFHRSxXckJ0Q1c7RXFCdUNYLHlCQXpDdUs7RUE2Q3ZLLHFCQTdDK007QXpCODFFbk47O0F5Qi95RUk7O0VBS0ksaURBQWlGO0F6Qit5RXpGOztBd0J2eUVFO0VDM0RBLFdyQkNhO0VtQkRYLHlCbkJvQ2E7RXFCbENmLHFCckJrQ2U7QUpvMEVqQjs7QU1sMkVFO0VtQkFFLFdyQkxXO0VtQkRYLHlCRURvRjtFQVNwRixxQkFUeUg7QXpCKzJFN0g7O0F5Qm4yRUU7RUFFRSxXckJaVztFbUJEWCx5QkVEb0Y7RUFnQnBGLHFCQWhCeUg7RUFxQnZILCtDQUFpRjtBekJpMkV2Rjs7QXlCNTFFRTtFQUVFLFdyQjFCVztFcUIyQlgseUJyQlFhO0VxQlBiLHFCckJPYTtBSnUxRWpCOztBeUJ2MUVFOztFQUdFLFdyQnRDVztFcUJ1Q1gseUJBekN1SztFQTZDdksscUJBN0MrTTtBekJtNEVuTjs7QXlCcDFFSTs7RUFLSSwrQ0FBaUY7QXpCbzFFekY7O0F3QjUwRUU7RUMzREEsV3JCQ2E7RW1CRFgseUJuQnNDYTtFcUJwQ2YscUJyQm9DZTtBSnUyRWpCOztBTXY0RUU7RW1CQUUsV3JCTFc7RW1CRFgseUJFRG9GO0VBU3BGLHFCQVR5SDtBekJvNUU3SDs7QXlCeDRFRTtFQUVFLFdyQlpXO0VtQkRYLHlCRURvRjtFQWdCcEYscUJBaEJ5SDtFQXFCdkgsZ0RBQWlGO0F6QnM0RXZGOztBeUJqNEVFO0VBRUUsV3JCMUJXO0VxQjJCWCx5QnJCVWE7RXFCVGIscUJyQlNhO0FKMDNFakI7O0F5QjUzRUU7O0VBR0UsV3JCdENXO0VxQnVDWCx5QkF6Q3VLO0VBNkN2SyxxQkE3QytNO0F6Qnc2RW5OOztBeUJ6M0VJOztFQUtJLGdEQUFpRjtBekJ5M0V6Rjs7QXdCajNFRTtFQzNEQSxjckJVZ0I7RW1CVmQseUJuQm1DYTtFcUJqQ2YscUJyQmlDZTtBSis0RWpCOztBTTU2RUU7RW1CQUUsY3JCSWM7RW1CVmQseUJFRG9GO0VBU3BGLHFCQVR5SDtBekJ5N0U3SDs7QXlCNzZFRTtFQUVFLGNyQkhjO0VtQlZkLHlCRURvRjtFQWdCcEYscUJBaEJ5SDtFQXFCdkgsZ0RBQWlGO0F6QjI2RXZGOztBeUJ0NkVFO0VBRUUsY3JCakJjO0VxQmtCZCx5QnJCT2E7RXFCTmIscUJyQk1hO0FKazZFakI7O0F5Qmo2RUU7O0VBR0UsY3JCN0JjO0VxQjhCZCx5QkF6Q3VLO0VBNkN2SyxxQkE3QytNO0F6QjY4RW5OOztBeUI5NUVJOztFQUtJLGdEQUFpRjtBekI4NUV6Rjs7QXdCdDVFRTtFQzNEQSxXckJDYTtFbUJEWCx5Qm5CaUNhO0VxQi9CZixxQnJCK0JlO0FKczdFakI7O0FNajlFRTtFbUJBRSxXckJMVztFbUJEWCx5QkVEb0Y7RUFTcEYscUJBVHlIO0F6Qjg5RTdIOztBeUJsOUVFO0VBRUUsV3JCWlc7RW1CRFgseUJFRG9GO0VBZ0JwRixxQkFoQnlIO0VBcUJ2SCwrQ0FBaUY7QXpCZzlFdkY7O0F5QjM4RUU7RUFFRSxXckIxQlc7RXFCMkJYLHlCckJLYTtFcUJKYixxQnJCSWE7QUp5OEVqQjs7QXlCdDhFRTs7RUFHRSxXckJ0Q1c7RXFCdUNYLHlCQXpDdUs7RUE2Q3ZLLHFCQTdDK007QXpCay9Fbk47O0F5Qm44RUk7O0VBS0ksK0NBQWlGO0F6Qm04RXpGOztBd0IzN0VFO0VDM0RBLGNyQlVnQjtFbUJWZCx5Qm5CRWM7RXFCQWhCLHFCckJBZ0I7QUowL0VsQjs7QU10L0VFO0VtQkFFLGNyQkljO0VtQlZkLHlCRURvRjtFQVNwRixxQkFUeUg7QXpCbWdGN0g7O0F5QnYvRUU7RUFFRSxjckJIYztFbUJWZCx5QkVEb0Y7RUFnQnBGLHFCQWhCeUg7RUFxQnZILGlEQUFpRjtBekJxL0V2Rjs7QXlCaC9FRTtFQUVFLGNyQmpCYztFcUJrQmQseUJyQjFCYztFcUIyQmQscUJyQjNCYztBSjZnRmxCOztBeUIzK0VFOztFQUdFLGNyQjdCYztFcUI4QmQseUJBekN1SztFQTZDdksscUJBN0MrTTtBekJ1aEZuTjs7QXlCeCtFSTs7RUFLSSxpREFBaUY7QXpCdytFekY7O0F3QmgrRUU7RUMzREEsV3JCQ2E7RW1CRFgseUJuQlNjO0VxQlBoQixxQnJCT2dCO0FKd2hGbEI7O0FNM2hGRTtFbUJBRSxXckJMVztFbUJEWCx5QkVEb0Y7RUFTcEYscUJBVHlIO0F6QndpRjdIOztBeUI1aEZFO0VBRUUsV3JCWlc7RW1CRFgseUJFRG9GO0VBZ0JwRixxQkFoQnlIO0VBcUJ2SCw4Q0FBaUY7QXpCMGhGdkY7O0F5QnJoRkU7RUFFRSxXckIxQlc7RXFCMkJYLHlCckJuQmM7RXFCb0JkLHFCckJwQmM7QUoyaUZsQjs7QXlCaGhGRTs7RUFHRSxXckJ0Q1c7RXFCdUNYLHlCQXpDdUs7RUE2Q3ZLLHFCQTdDK007QXpCNGpGbk47O0F5QjdnRkk7O0VBS0ksOENBQWlGO0F6QjZnRnpGOztBd0IvL0VFO0VDUEEsY3JCN0JlO0VxQjhCZixxQnJCOUJlO0FKd2lGakI7O0FNL2pGRTtFbUJ3REUsV3JCN0RXO0VxQjhEWCx5QnJCbENhO0VxQm1DYixxQnJCbkNhO0FKOGlGakI7O0F5QnhnRkU7RUFFRSwrQ3JCeENhO0FKa2pGakI7O0F5QnZnRkU7RUFFRSxjckI3Q2E7RXFCOENiLDZCQUE2QjtBekJ5Z0ZqQzs7QXlCdGdGRTs7RUFHRSxXckJoRlc7RXFCaUZYLHlCckJyRGE7RXFCc0RiLHFCckJ0RGE7QUo4akZqQjs7QXlCdGdGSTs7RUFLSSwrQ3JCN0RTO0FKbWtGakI7O0F3Qi9oRkU7RUNQQSxjckJuRGdCO0VxQm9EaEIscUJyQnBEZ0I7QUo4bEZsQjs7QU0vbEZFO0VtQndERSxXckI3RFc7RXFCOERYLHlCckJ4RGM7RXFCeURkLHFCckJ6RGM7QUpvbUZsQjs7QXlCeGlGRTtFQUVFLGlEckI5RGM7QUp3bUZsQjs7QXlCdmlGRTtFQUVFLGNyQm5FYztFcUJvRWQsNkJBQTZCO0F6QnlpRmpDOztBeUJ0aUZFOztFQUdFLFdyQmhGVztFcUJpRlgseUJyQjNFYztFcUI0RWQscUJyQjVFYztBSm9uRmxCOztBeUJ0aUZJOztFQUtJLGlEckJuRlU7QUp5bkZsQjs7QXdCL2pGRTtFQ1BBLGNyQnRCZTtFcUJ1QmYscUJyQnZCZTtBSmltRmpCOztBTS9uRkU7RW1Cd0RFLFdyQjdEVztFcUI4RFgseUJyQjNCYTtFcUI0QmIscUJyQjVCYTtBSnVtRmpCOztBeUJ4a0ZFO0VBRUUsK0NyQmpDYTtBSjJtRmpCOztBeUJ2a0ZFO0VBRUUsY3JCdENhO0VxQnVDYiw2QkFBNkI7QXpCeWtGakM7O0F5QnRrRkU7O0VBR0UsV3JCaEZXO0VxQmlGWCx5QnJCOUNhO0VxQitDYixxQnJCL0NhO0FKdW5GakI7O0F5QnRrRkk7O0VBS0ksK0NyQnREUztBSjRuRmpCOztBd0IvbEZFO0VDUEEsY3JCcEJlO0VxQnFCZixxQnJCckJlO0FKK25GakI7O0FNL3BGRTtFbUJ3REUsV3JCN0RXO0VxQjhEWCx5QnJCekJhO0VxQjBCYixxQnJCMUJhO0FKcW9GakI7O0F5QnhtRkU7RUFFRSxnRHJCL0JhO0FKeW9GakI7O0F5QnZtRkU7RUFFRSxjckJwQ2E7RXFCcUNiLDZCQUE2QjtBekJ5bUZqQzs7QXlCdG1GRTs7RUFHRSxXckJoRlc7RXFCaUZYLHlCckI1Q2E7RXFCNkNiLHFCckI3Q2E7QUpxcEZqQjs7QXlCdG1GSTs7RUFLSSxnRHJCcERTO0FKMHBGakI7O0F3Qi9uRkU7RUNQQSxjckJ2QmU7RXFCd0JmLHFCckJ4QmU7QUprcUZqQjs7QU0vckZFO0VtQndERSxjckJwRGM7RXFCcURkLHlCckI1QmE7RXFCNkJiLHFCckI3QmE7QUp3cUZqQjs7QXlCeG9GRTtFQUVFLCtDckJsQ2E7QUo0cUZqQjs7QXlCdm9GRTtFQUVFLGNyQnZDYTtFcUJ3Q2IsNkJBQTZCO0F6QnlvRmpDOztBeUJ0b0ZFOztFQUdFLGNyQnZFYztFcUJ3RWQseUJyQi9DYTtFcUJnRGIscUJyQmhEYTtBSndyRmpCOztBeUJ0b0ZJOztFQUtJLCtDckJ2RFM7QUo2ckZqQjs7QXdCL3BGRTtFQ1BBLGNyQnpCZTtFcUIwQmYscUJyQjFCZTtBSm9zRmpCOztBTS90RkU7RW1Cd0RFLFdyQjdEVztFcUI4RFgseUJyQjlCYTtFcUIrQmIscUJyQi9CYTtBSjBzRmpCOztBeUJ4cUZFO0VBRUUsK0NyQnBDYTtBSjhzRmpCOztBeUJ2cUZFO0VBRUUsY3JCekNhO0VxQjBDYiw2QkFBNkI7QXpCeXFGakM7O0F5QnRxRkU7O0VBR0UsV3JCaEZXO0VxQmlGWCx5QnJCakRhO0VxQmtEYixxQnJCbERhO0FKMHRGakI7O0F5QnRxRkk7O0VBS0ksK0NyQnpEUztBSit0RmpCOztBd0IvckZFO0VDUEEsY3JCeERnQjtFcUJ5RGhCLHFCckJ6RGdCO0FKbXdGbEI7O0FNL3ZGRTtFbUJ3REUsY3JCcERjO0VxQnFEZCx5QnJCN0RjO0VxQjhEZCxxQnJCOURjO0FKeXdGbEI7O0F5QnhzRkU7RUFFRSxpRHJCbkVjO0FKNndGbEI7O0F5QnZzRkU7RUFFRSxjckJ4RWM7RXFCeUVkLDZCQUE2QjtBekJ5c0ZqQzs7QXlCdHNGRTs7RUFHRSxjckJ2RWM7RXFCd0VkLHlCckJoRmM7RXFCaUZkLHFCckJqRmM7QUp5eEZsQjs7QXlCdHNGSTs7RUFLSSxpRHJCeEZVO0FKOHhGbEI7O0F3Qi90RkU7RUNQQSxjckJqRGdCO0VxQmtEaEIscUJyQmxEZ0I7QUo0eEZsQjs7QU0veEZFO0VtQndERSxXckI3RFc7RXFCOERYLHlCckJ0RGM7RXFCdURkLHFCckJ2RGM7QUpreUZsQjs7QXlCeHVGRTtFQUVFLDhDckI1RGM7QUpzeUZsQjs7QXlCdnVGRTtFQUVFLGNyQmpFYztFcUJrRWQsNkJBQTZCO0F6Qnl1RmpDOztBeUJ0dUZFOztFQUdFLFdyQmhGVztFcUJpRlgseUJyQnpFYztFcUIwRWQscUJyQjFFYztBSmt6RmxCOztBeUJ0dUZJOztFQUtJLDhDckJqRlU7QUp1ekZsQjs7QXdCcHZGQTtFQUNFLGdCcEI2TStCO0VvQjVNL0IsY3BCakRlO0VvQmtEZixxQnBCMkY0QztBSjRwRjlDOztBTWgwRkU7RWtCNEVFLGNwQnlGOEQ7RW9CeEY5RCwwQnBCeUYrQztBSitwRm5EOztBd0IvdkZBO0VBWUksMEJwQm9GK0M7QUptcUZuRDs7QXdCbndGQTtFQWlCSSxjcEJ0RmM7RW9CdUZkLG9CQUFvQjtBeEJzdkZ4Qjs7QXdCM3VGQTtFQ1BFLG9CckIyU2dDO0VDL041QixrQkFBVztFb0IxRWYsZ0JyQitIK0I7RU92TjdCLHFCUDhOK0I7QUppbkZuQzs7QXdCOXVGQTtFQ1hFLHVCckJzU2lDO0VDMU43QixtQkFBVztFb0IxRWYsZ0JyQmdJK0I7RU94TjdCLHFCUCtOK0I7QUp1bkZuQzs7QXdCNXVGQTtFQUNFLGNBQWM7RUFDZCxXQUFXO0F4Qit1RmI7O0F3Qmp2RkE7RUFNSSxrQnBCd1QrQjtBSnU3RW5DOztBd0IxdUZBOzs7RUFJSSxXQUFXO0F4QjR1RmY7O0EwQnYzRkE7RUxnQk0sZ0NqQmlQMkM7QUowbkZqRDs7QXFCdjJGTTtFS3BCTjtJTHFCUSxnQkFBZ0I7RXJCMjJGdEI7QUFDRjs7QTBCajRGQTtFQUlJLFVBQVU7QTFCaTRGZDs7QTBCNzNGQTtFQUVJLGFBQWE7QTFCKzNGakI7O0EwQjMzRkE7RUFDRSxrQkFBa0I7RUFDbEIsU0FBUztFQUNULGdCQUFnQjtFTERaLDZCakJrUHdDO0FKOG9GOUM7O0FxQjUzRk07RUtOTjtJTE9RLGdCQUFnQjtFckJnNEZ0QjtBQUNGOztBMEJ4NEZBO0VBT0ksUUFBUTtFQUNSLFlBQVk7RUxOViw0QmpCbVB1QztBSnlwRjdDOztBcUJ4NEZNO0VLTk47SUxPUSxnQkFBZ0I7RXJCNDRGdEI7QUFDRjs7QTJCajZGQTs7OztFQUlFLGtCQUFrQjtBM0JvNkZwQjs7QTJCajZGQTtFQUNFLG1CQUFtQjtBM0JvNkZyQjs7QTRCaDVGSTtFQUNFLHFCQUFxQjtFQUNyQixvQnhCK04wQztFd0I5TjFDLHVCeEI2TjBDO0V3QjVOMUMsV0FBVztFQWhDZix1QkFBOEI7RUFDOUIscUNBQTRDO0VBQzVDLGdCQUFnQjtFQUNoQixvQ0FBMkM7QTVCbzdGN0M7O0E0Qi8zRkk7RUFDRSxjQUFjO0E1Qms0RnBCOztBMkI1NkZBO0VBQ0Usa0JBQWtCO0VBQ2xCLFNBQVM7RUFDVCxPQUFPO0VBQ1AsYXZCeXBCc0M7RXVCeHBCdEMsYUFBYTtFQUNiLFdBQVc7RUFDWCxnQnZCaXVCdUM7RXVCaHVCdkMsaUJ2Qml1Qm1DO0V1Qmh1Qm5DLG9CQUE0QjtFdEIySnhCLGVBQVc7RXNCekpmLGN2QlhnQjtFdUJZaEIsZ0JBQWdCO0VBQ2hCLGdCQUFnQjtFQUNoQixzQnZCdkJhO0V1QndCYiw0QkFBNEI7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S2hCLG1CQUFtQjtBM0I2OUZyQjs7QTJCejlGQTtFQUNFLGNBQWM7RUFDZCx1QnZCb2xCd0M7RXVCbmxCeEMsY3ZCOUtnQjtBSjBvR2xCOztBOEJ2cEdBOztFQUVFLGtCQUFrQjtFQUNsQixvQkFBb0I7RUFDcEIsc0JBQXNCO0E5QjBwR3hCOztBOEI5cEdBOztFQU9JLGtCQUFrQjtFQUNsQixjQUFjO0E5QjRwR2xCOztBTTNwR0U7O0V3QklJLFVBQVU7QTlCNHBHaEI7O0E4QnpxR0E7Ozs7RUFrQk0sVUFBVTtBOUI4cEdoQjs7QThCeHBHQTtFQUNFLGFBQWE7RUFDYixlQUFlO0VBQ2YsMkJBQTJCO0E5QjJwRzdCOztBOEI5cEdBO0VBTUksV0FBVztBOUI0cEdmOztBOEJ4cEdBOztFQUlJLGlCMUJtTTZCO0FKczlGakM7O0E4QjdwR0E7O0VuQkhJLDBCbUJhOEI7RW5CWjlCLDZCbUJZOEI7QTlCeXBHbEM7O0E4Qm5xR0E7O0VuQldJLHlCbUJJNkI7RW5CSDdCLDRCbUJHNkI7QTlCMHBHakM7O0E4QjFvR0E7RUFDRSx3QkFBbUM7RUFDbkMsdUJBQWtDO0E5QjZvR3BDOztBOEIvb0dBOzs7RUFPSSxjQUFjO0E5QjhvR2xCOztBOEIzb0dFO0VBQ0UsZUFBZTtBOUI4b0duQjs7QThCMW9HQTtFQUNFLHVCQUFzQztFQUN0QyxzQkFBcUM7QTlCNm9HdkM7O0E4QjFvR0E7RUFDRSxzQkFBc0M7RUFDdEMscUJBQXFDO0E5QjZvR3ZDOztBOEJ6bkdBO0VBQ0Usc0JBQXNCO0VBQ3RCLHVCQUF1QjtFQUN2Qix1QkFBdUI7QTlCNG5HekI7O0E4Qi9uR0E7O0VBT0ksV0FBVztBOUI2bkdmOztBOEJwb0dBOztFQVlJLGdCMUJrSDZCO0FKMmdHakM7O0E4QnpvR0E7O0VuQnJFSSw2Qm1CdUYrQjtFbkJ0Ri9CLDRCbUJzRitCO0E5QjZuR25DOztBOEIvb0dBOztFbkJuRkkseUJtQjBHNEI7RW5Cekc1QiwwQm1CeUc0QjtBOUI4bkdoQzs7QThCN21HQTs7RUFHSSxnQkFBZ0I7QTlCK21HcEI7O0E4QmxuR0E7Ozs7RUFPTSxrQkFBa0I7RUFDbEIsc0JBQXNCO0VBQ3RCLG9CQUFvQjtBOUJrbkcxQjs7QStCM3dHQTtFQUNFLGtCQUFrQjtFQUNsQixhQUFhO0VBQ2IsZUFBZTtFQUNmLG9CQUFvQjtFQUNwQixXQUFXO0EvQjh3R2I7O0ErQm54R0E7Ozs7RUFXSSxrQkFBa0I7RUFDbEIsY0FBYztFQUNkLFNBQVM7RUFDVCxZQUFZO0VBQ1osZ0JBQWdCO0EvQit3R3BCOztBK0I5eEdBOzs7Ozs7Ozs7Ozs7RUFvQk0saUIzQmtOMkI7QUp1a0dqQzs7QStCN3lHQTs7O0VBNEJJLFVBQVU7QS9CdXhHZDs7QStCbnpHQTtFQWlDSSxVQUFVO0EvQnN4R2Q7O0ErQnZ6R0E7O0VwQjBDSSx5Qm9CSm1EO0VwQktuRCw0Qm9CTG1EO0EvQnV4R3ZEOztBK0I3ekdBO0VBNENJLGFBQWE7RUFDYixtQkFBbUI7QS9CcXhHdkI7O0ErQmwwR0E7O0VwQjRCSSwwQm9Cb0I2RTtFcEJuQjdFLDZCb0JtQjZFO0EvQnd4R2pGOztBK0J4MEdBO0VwQjBDSSx5Qm9CT3NFO0VwQk50RSw0Qm9CTXNFO0EvQjR4RzFFOztBK0I3MEdBOzs7O0VwQjRCSSwwQm9CNkJnQztFcEI1QmhDLDZCb0I0QmdDO0EvQjR4R3BDOztBK0JyMUdBOzs7O0VwQjRCSSwwQm9Cc0NnQztFcEJyQ2hDLDZCb0JxQ2dDO0EvQjJ4R3BDOztBK0Ivd0dBOztFQUVFLGFBQWE7QS9Ca3hHZjs7QStCcHhHQTs7RUFRSSxrQkFBa0I7RUFDbEIsVUFBVTtBL0JpeEdkOztBK0IxeEdBOztFQVlNLFVBQVU7QS9CbXhHaEI7O0ErQi94R0E7Ozs7Ozs7O0VBb0JJLGlCM0JvSTZCO0FKa3BHakM7O0ErQmx4R0E7RUFBdUIsa0IzQmdJVTtBSnNwR2pDOztBK0JyeEdBO0VBQXNCLGlCM0IrSFc7QUowcEdqQzs7QStCanhHQTtFQUNFLGFBQWE7RUFDYixtQkFBbUI7RUFDbkIseUIzQjRRa0M7RTJCM1FsQyxnQkFBZ0I7RTFCMkRaLGVBQVc7RTBCekRmLGdCM0JxSytCO0UyQnBLL0IsZ0IzQnlLK0I7RTJCeEsvQixjM0IvR2dCO0UyQmdIaEIsa0JBQWtCO0VBQ2xCLG1CQUFtQjtFQUNuQix5QjNCdkhnQjtFMkJ3SGhCLHlCM0J0SGdCO0VPT2Qsc0JQNk5nQztBSnVxR3BDOztBK0JqeUdBOztFQWtCSSxhQUFhO0EvQm94R2pCOztBK0Ixd0dBOztFQUVFLGdDWnpCOEQ7QW5Cc3lHaEU7O0ErQjF3R0E7Ozs7OztFQU1FLG9CM0J1UGdDO0VDL041QixrQkFBVztFMEJ0QmYsZ0IzQjJFK0I7RU92TjdCLHFCUDhOK0I7QUo0ckduQzs7QStCMXdHQTs7RUFFRSxrQ1oxQzhEO0FuQnV6R2hFOztBK0Ixd0dBOzs7Ozs7RUFNRSx1QjNCaU9pQztFQzFON0IsbUJBQVc7RTBCTGYsZ0IzQjJEK0I7RU94TjdCLHFCUCtOK0I7QUo0c0duQzs7QStCMXdHQTs7RUFFRSxzQkFBMEU7QS9CNndHNUU7O0ErQmx3R0E7Ozs7Ozs7O0VwQjlKSSwwQm9Cc0s0QjtFcEJySzVCLDZCb0JxSzRCO0EvQnN3R2hDOztBK0Jud0dBOzs7Ozs7RXBCM0pJLHlCb0JpSzJCO0VwQmhLM0IsNEJvQmdLMkI7QS9CdXdHL0I7O0FnQy84R0E7RUFDRSxrQkFBa0I7RUFDbEIsVUFBVTtFQUNWLGNBQWM7RUFDZCxrQkFBK0M7RUFDL0Msb0JBQXFFO0VBQ3JFLHlCQUF5QjtBaENrOUczQjs7QWdDLzhHQTtFQUNFLG9CQUFvQjtFQUNwQixrQjVCeWYwQztBSnk5RjVDOztBZ0MvOEdBO0VBQ0Usa0JBQWtCO0VBQ2xCLE9BQU87RUFDUCxXQUFXO0VBQ1gsVzVCcWYwQztFNEJwZjFDLGVBQW1GO0VBQ25GLFVBQVU7QWhDazlHWjs7QWdDeDlHQTtFQVNJLFc1QnpCVztFNEIwQlgscUI1QkVhO0VtQjdCYix5Qm5CNkJhO0FKazlHakI7O0FnQzk5R0E7RUFvQk0sZ0Q1QlJXO0FKczlHakI7O0FnQ2wrR0E7RUF5QkkscUI1QnNic0U7QUp1aEcxRTs7QWdDdCtHQTtFQTZCSSxXNUI3Q1c7RTRCOENYLHlCNUJrZjhFO0U0QmpmOUUscUI1QmlmOEU7QUo0OUZsRjs7QWdDNStHQTtFQXVDTSxjNUJqRFk7QUowL0dsQjs7QWdDaC9HQTtFQTBDUSx5QjVCeERVO0FKa2dIbEI7O0FnQ2g4R0E7RUFDRSxrQkFBa0I7RUFDbEIsZ0JBQWdCO0VBRWhCLG1CQUFtQjtBaENrOEdyQjs7QWdDdDhHQTtFQVNJLGtCQUFrQjtFQUNsQixZQUFnRjtFQUNoRixhQUErRDtFQUMvRCxjQUFjO0VBQ2QsVzVCd2J3QztFNEJ2YnhDLFk1QnVid0M7RTRCdGJ4QyxvQkFBb0I7RUFDcEIsV0FBVztFQUNYLHNCNUJyRlc7RTRCc0ZYLHlCNUJqRmM7QUpraEhsQjs7QWdDbjlHQTtFQXdCSSxrQkFBa0I7RUFDbEIsWUFBZ0Y7RUFDaEYsYUFBK0Q7RUFDL0QsY0FBYztFQUNkLFc1Qnlhd0M7RTRCeGF4QyxZNUJ3YXdDO0U0QnZheEMsV0FBVztFQUNYLG1DQUFnRTtBaEMrN0dwRTs7QWdDdDdHQTtFckJqR0ksc0JQNk5nQztBSjh6R3BDOztBZ0MxN0dBO0VBT00sa09iN0Q0RTtBbkJvL0dsRjs7QWdDOTdHQTtFQWFNLHFCNUI3Rlc7RW1CN0JiLHlCbkI2QmE7QUptaEhqQjs7QWdDbjhHQTtFQWtCTSwrS2J4RTRFO0FuQjYvR2xGOztBZ0N2OEdBO0VUN0dJLHdDbkI2QmE7QUoyaEhqQjs7QWdDMzhHQTtFVDdHSSx3Q25CNkJhO0FKK2hIakI7O0FnQzM2R0E7RUFHSSxrQjVCMForQztBSmtoR25EOztBZ0MvNkdBO0VBUU0sOEtibEc0RTtBbkI2Z0hsRjs7QWdDbjdHQTtFVGpKSSx3Q25CNkJhO0FKMmlIakI7O0FnQy81R0E7RUFDRSxxQkFBMkQ7QWhDazZHN0Q7O0FnQ242R0E7RUFLTSxjQUFxRDtFQUNyRCxjNUJrWStFO0U0QmpZL0UsbUJBQW1CO0VBRW5CLHFCNUJnWTZFO0FKaWlHbkY7O0FnQzE2R0E7RUFhTSx3QmJsRTBEO0VhbUUxRCwwQmJuRTBEO0Vhb0UxRCx1QmI1QzBEO0VhNkMxRCx3QmI3QzBEO0VhOEMxRCx5QjVCcExZO0U0QnNMWixxQjVCc1g2RTtFaUJ4aUI3RSx5SWpCMGYrSDtBSnlsR3JJOztBcUIva0hNO0VXMkpOO0lYMUpRLGdCQUFnQjtFckJtbEh0QjtBQUNGOztBZ0MxN0dBO0VBMEJNLHNCNUJsTVM7RTRCbU1ULDhCQUE0RTtBaENvNkdsRjs7QWdDLzdHQTtFVHpLSSx3Q25CNkJhO0FKK2tIakI7O0FnQ3Q1R0E7RUFDRSxxQkFBcUI7RUFDckIsV0FBVztFQUNYLG1DYnJHOEQ7RWFzRzlELDBDNUJvS2tDO0VDaE45QixlQUFXO0UyQitDZixnQjVCNkQrQjtFNEI1RC9CLGdCNUJpRStCO0U0QmhFL0IsYzVCdk5nQjtFNEJ3TmhCLHNCQUFzQjtFQUN0Qix1TzVCbVcrSTtFNEJsVy9JLHlCNUI3TmdCO0VPT2Qsc0JQNk5nQztFNEJKbEMsZ0JBQWdCO0FoQ3U1R2xCOztBZ0N0NkdBO0VBa0JJLHFCNUJ3UHNFO0U0QnZQdEUsVUFBVTtFQUtSLGdENUJqTlc7QUpxbUhqQjs7QWdDNTZHQTtFQWlDTSxjNUIvT1k7RTRCZ1BaLHNCNUJ2UFM7QUpzb0hmOztBZ0NqN0dBO0VBd0NJLFlBQVk7RUFDWixzQjVCK0hnQztFNEI5SGhDLHNCQUFzQjtBaEM2NEcxQjs7QWdDdjdHQTtFQThDSSxjNUI3UGM7RTRCOFBkLHlCNUJsUWM7QUorb0hsQjs7QWdDNTdHQTtFQW9ESSxhQUFhO0FoQzQ0R2pCOztBZ0NoOEdBO0VBeURJLGtCQUFrQjtFQUNsQiwwQjVCeFFjO0FKbXBIbEI7O0FnQ3Y0R0E7RUFDRSxrQ2JqSzhEO0Vha0s5RCxvQjVCaUhrQztFNEJoSGxDLHVCNUJnSGtDO0U0Qi9HbEMsb0I1QmdIaUM7RUMxTjdCLG1CQUFXO0FMcS9HakI7O0FnQ3Y0R0E7RUFDRSxnQ2J6SzhEO0VhMEs5RCxtQjVCOEdpQztFNEI3R2pDLHNCNUI2R2lDO0U0QjVHakMsa0I1QjZHZ0M7RUMvTjVCLGtCQUFXO0FMNi9HakI7O0FnQ2w0R0E7RUFDRSxrQkFBa0I7RUFDbEIscUJBQXFCO0VBQ3JCLFdBQVc7RUFDWCxtQ2J6TDhEO0VhMEw5RCxnQkFBZ0I7QWhDcTRHbEI7O0FnQ2w0R0E7RUFDRSxrQkFBa0I7RUFDbEIsVUFBVTtFQUNWLFdBQVc7RUFDWCxtQ2JqTThEO0Vha005RCxTQUFTO0VBQ1QsZ0JBQWdCO0VBQ2hCLFVBQVU7QWhDcTRHWjs7QWdDNTRHQTtFQVVJLHFCNUJxS3NFO0U0QnBLdEUsZ0Q1Qi9SYTtBSnFxSGpCOztBZ0NqNUdBOztFQWlCSSx5QjVCL1RjO0FKb3NIbEI7O0FnQ3Q1R0E7RUFzQk0saUI1QjRUUTtBSndrR2Q7O0FnQzE1R0E7RUEyQkksMEJBQTBCO0FoQ200RzlCOztBZ0MvM0dBO0VBQ0Usa0JBQWtCO0VBQ2xCLE1BQU07RUFDTixRQUFRO0VBQ1IsT0FBTztFQUNQLFVBQVU7RUFDVixtQ2JsTzhEO0VhbU85RCx5QjVCdUNrQztFNEJ0Q2xDLGdCQUFnQjtFQUVoQixnQjVCaEUrQjtFNEJpRS9CLGdCNUI1RCtCO0U0QjZEL0IsYzVCcFZnQjtFNEJxVmhCLHNCNUI1VmE7RTRCNlZiLHlCNUJ6VmdCO0VPT2Qsc0JQNk5nQztBSnUvR3BDOztBZ0NoNUdBO0VBbUJJLGtCQUFrQjtFQUNsQixNQUFNO0VBQ04sUUFBUTtFQUNSLFNBQVM7RUFDVCxVQUFVO0VBQ1YsY0FBYztFQUNkLDZCYnJQNEQ7RWFzUDVELHlCNUJvQmdDO0U0Qm5CaEMsZ0I1QjVFNkI7RTRCNkU3QixjNUJwV2M7RTRCcVdkLGlCQUFpQjtFVDdXakIseUJuQkdjO0U0QjRXZCxvQkFBb0I7RXJCbldwQixrQ3FCb1dnRjtBaENpNEdwRjs7QWdDdjNHQTtFQUNFLFdBQVc7RUFDWCxjYjNRMkI7RWE0UTNCLFVBQVU7RUFDViw2QkFBNkI7RUFDN0IsZ0JBQWdCO0FoQzAzR2xCOztBZ0MvM0dBO0VBUUksVUFBVTtBaEMyM0dkOztBZ0NuNEdBO0VBWThCLGdFNUJ6V2I7QUpvdUhqQjs7QWdDdjRHQTtFQWE4QixnRTVCMVdiO0FKd3VIakI7O0FnQzM0R0E7RUFjOEIsZ0U1QjNXYjtBSjR1SGpCOztBZ0MvNEdBO0VBa0JJLFNBQVM7QWhDaTRHYjs7QWdDbjVHQTtFQXNCSSxXNUJvTjZDO0U0Qm5ON0MsWTVCbU42QztFNEJsTjdDLG9CQUEwRTtFVGxaMUUseUJuQjZCYTtFNEJ1WGIsUzVCbU4wQztFTzNsQjFDLG1CUDRsQjZDO0VpQjlsQjNDLDRHakIwZitIO0U0QjVHakksZ0JBQWdCO0FoQ2c0R3BCOztBcUIxd0hNO0VXNFdOO0lYM1dRLGdCQUFnQjtFckI4d0h0QjtBQUNGOztBZ0NwNkdBO0VUMVhJLHlCbkI0bUIyRTtBSnNyRy9FOztBZ0N4NkdBO0VBc0NJLFc1QjZMb0M7RTRCNUxwQyxjNUI2THFDO0U0QjVMckMsa0JBQWtCO0VBQ2xCLGU1QjRMdUM7RTRCM0x2Qyx5QjVCaGFjO0U0QmlhZCx5QkFBeUI7RXJCelp6QixtQlBxbEJvQztBSjJzR3hDOztBZ0NsN0dBO0VBaURJLFc1QnlMNkM7RTRCeEw3QyxZNUJ3TDZDO0VtQnBtQjdDLHlCbkI2QmE7RTRCaVpiLFM1QnlMMEM7RU8zbEIxQyxtQlA0bEI2QztFaUI5bEIzQyw0R2pCMGYrSDtFNEJsRmpJLGdCQUFnQjtBaENvNEdwQjs7QXFCeHlITTtFVzRXTjtJWDNXUSxnQkFBZ0I7RXJCNHlIdEI7QUFDRjs7QWdDbDhHQTtFVDFYSSx5Qm5CNG1CMkU7QUpvdEcvRTs7QWdDdDhHQTtFQWdFSSxXNUJtS29DO0U0QmxLcEMsYzVCbUtxQztFNEJsS3JDLGtCQUFrQjtFQUNsQixlNUJrS3VDO0U0QmpLdkMseUI1QjFiYztFNEIyYmQseUJBQXlCO0VyQm5iekIsbUJQcWxCb0M7QUp5dUd4Qzs7QWdDaDlHQTtFQTJFSSxXNUIrSjZDO0U0QjlKN0MsWTVCOEo2QztFNEI3SjdDLGFBQWE7RUFDYixvQjVCckUrQjtFNEJzRS9CLG1CNUJ0RStCO0VtQm5ZL0IseUJuQjZCYTtFNEI4YWIsUzVCNEowQztFTzNsQjFDLG1CUDRsQjZDO0VpQjlsQjNDLDRHakIwZitIO0U0QnJEakksZ0JBQWdCO0FoQ3c0R3BCOztBcUJ6MEhNO0VXNFdOO0lYM1dRLGdCQUFnQjtFckI2MEh0QjtBQUNGOztBZ0NuK0dBO0VUMVhJLHlCbkI0bUIyRTtBSnF2Ry9FOztBZ0N2K0dBO0VBNkZJLFc1QnNJb0M7RTRCcklwQyxjNUJzSXFDO0U0QnJJckMsa0JBQWtCO0VBQ2xCLGU1QnFJdUM7RTRCcEl2Qyw2QkFBNkI7RUFDN0IseUJBQXlCO0VBQ3pCLG9CQUE2QztBaEM4NEdqRDs7QWdDai9HQTtFQXdHSSx5QjVCOWRjO0VPUWQsbUJQcWxCb0M7QUord0d4Qzs7QWdDdC9HQTtFQTZHSSxrQkFBa0I7RUFDbEIseUI1QnBlYztFT1FkLG1CUHFsQm9DO0FKcXhHeEM7O0FnQzUvR0E7RUFvSE0seUI1QnhlWTtBSm8zSGxCOztBZ0NoZ0hBO0VBd0hNLGVBQWU7QWhDNDRHckI7O0FnQ3BnSEE7RUE0SE0seUI1QmhmWTtBSjQzSGxCOztBZ0N4Z0hBO0VBZ0lNLGVBQWU7QWhDNDRHckI7O0FnQzVnSEE7RUFvSU0seUI1QnhmWTtBSm80SGxCOztBZ0N2NEdBOzs7RVh6Zk0sNEdqQjBmK0g7QUo0NEdySTs7QXFCbDRITTtFV3FmTjs7O0lYcGZRLGdCQUFnQjtFckJ3NEh0QjtBQUNGOztBaUN6NUhBO0VBQ0UsYUFBYTtFQUNiLGVBQWU7RUFDZixlQUFlO0VBQ2YsZ0JBQWdCO0VBQ2hCLGdCQUFnQjtBakM0NUhsQjs7QWlDejVIQTtFQUNFLGNBQWM7RUFDZCxvQjdCMHFCc0M7QUprdkd4Qzs7QU0zNUhFO0UyQkdFLHFCQUFxQjtBakM0NUh6Qjs7QWlDbDZIQTtFQVdJLGM3QlhjO0U2QllkLG9CQUFvQjtFQUNwQixlQUFlO0FqQzI1SG5COztBaUNuNUhBO0VBQ0UsZ0M3QnpCZ0I7QUorNkhsQjs7QWlDdjVIQTtFQUlJLG1CN0JzTTZCO0U2QnJNN0IsNkJBQTZCO0VBQzdCLDZCQUFnRDtFdEJiaEQsK0JQb05nQztFT25OaEMsZ0NQbU5nQztBSmt0SHBDOztBTWo3SEU7RTJCNkJJLGtCQUFrQjtFQUNsQixxQzdCcENZO0FKNDdIbEI7O0FpQ3A2SEE7RUFnQk0sYzdCckNZO0U2QnNDWiw2QkFBNkI7RUFDN0IseUJBQXlCO0FqQ3c1SC9COztBaUMxNkhBOztFQXdCSSxjN0I1Q2M7RTZCNkNkLHNCN0JwRFc7RTZCcURYLGtDN0JyRFc7QUo0OEhmOztBaUNqN0hBO0VBK0JJ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bUlBO0VBb0NZLHFCOUJ5aEI2QjtFOEJ4aEI3QixvQjlCd2hCNkI7QUpxakh6Qzs7QWtDbG5JQTs7RUEyQ1UsaUJBQWlCO0FsQzRrSTNCOztBa0N2bklBO0VBMERVLGlCQUFpQjtBbENpa0kzQjs7QWtDM25JQTtFQThEVSx3QkFBd0I7RUFHeEIsZ0JBQWdCO0FsQytqSTFCOztBa0Nob0lBO0VBcUVVLGFBQWE7QWxDK2pJdkI7O0FrQ2xqSUE7RUFFSSx5QjlCdk5XO0FKMndJZjs7QU01d0lFO0U0QjJOSSx5QjlCMU5TO0FKK3dJZjs7QWtDMWpJQTtFQVdNLHlCOUJoT1M7QUpteElmOztBTXB4SUU7RTRCb09NLHlCOUJuT087QUp1eElmOztBa0Nsa0lBO0VBa0JRLHlCOUJ2T087QUoyeElmOztBa0N0a0lBOzs7O0VBMEJNLHlCOUIvT1M7QUpreUlmOztBa0M3a0lBO0VBK0JJLHlCOUJwUFc7RThCcVBYLGdDOUJyUFc7QUp1eUlmOztBa0NsbElBO0VBb0NJLG1SZjdNOEU7QW5CK3ZJbEY7O0FrQ3RsSUE7RUF3Q0kseUI5QjdQVztBSit5SWY7O0FrQzFsSUE7RUEwQ00seUI5Qi9QUztBSm16SWY7O0FNcHpJRTtFNEJtUU0seUI5QmxRTztBSnV6SWY7O0FrQzlpSUE7RUFFSSxXOUJyUlc7QUpxMElmOztBTTV6SUU7RTRCK1FJLFc5QnhSUztBSnkwSWY7O0FrQ3RqSUE7RUFXTSwrQjlCOVJTO0FKNjBJZjs7QU1wMElFO0U0QndSTSxnQzlCalNPO0FKaTFJZjs7QWtDOWpJQTtFQWtCUSxnQzlCclNPO0FKcTFJZjs7QWtDbGtJQTs7OztFQTBCTSxXOUI3U1M7QUo0MUlmOztBa0N6a0lBO0VBK0JJLCtCOUJsVFc7RThCbVRYLHNDOUJuVFc7QUppMklmOztBa0M5a0lBO0VBb0NJLHlSZmpROEU7QW5CK3lJbEY7O0FrQ2xsSUE7RUF3Q0ksK0I5QjNUVztBSnkySWY7O0FrQ3RsSUE7RUEwQ00sVzlCN1RTO0FKNjJJZjs7QU1wMklFO0U0QnVUTSxXOUJoVU87QUppM0lmOztBbUNwM0lBO0VBQ0Usa0JBQWtCO0VBQ2xCLGFBQWE7RUFDYixzQkFBc0I7RUFDdEIsWUFBWTtFQUVaLHFCQUFxQjtFQUNyQixzQi9CSmE7RStCS2IsMkJBQTJCO0VBQzNCLHNDL0JJYTtFT0NYLHNCUDZOZ0M7QUpxcElwQzs7QW1DaDRJQTtFQWFJLGVBQWU7RUFDZixjQUFjO0FuQ3UzSWxCOztBbUNyNElBO0VBa0JJLG1CQUFtQjtFQUNuQixzQkFBc0I7QW5DdTNJMUI7O0FtQzE0SUE7RUFzQk0sbUJBQW1CO0V4QkNyQiwyQ1F1SDREO0VSdEg1RCw0Q1FzSDREO0FuQmt3SWhFOztBbUNoNUlBO0VBMkJNLHNCQUFzQjtFeEJVeEIsK0NReUc0RDtFUnhHNUQsOENRd0c0RDtBbkJ3d0loRTs7QW1DdDVJQTs7RUFvQ0ksYUFBYTtBbkN1M0lqQjs7QW1DbjNJQTtFQUdFLGNBQWM7RUFHZCxlQUFlO0VBQ2YsZ0IvQmd4QnlDO0FKa21IM0M7O0FtQzkySUE7RUFDRSxzQi9CMHdCd0M7QUp1bUgxQzs7QW1DOTJJQTtFQUNFLHFCQUFnQztFQUNoQyxnQkFBZ0I7QW5DaTNJbEI7O0FtQzkySUE7RUFDRSxnQkFBZ0I7QW5DaTNJbEI7O0FNdDZJRTtFNkIwREUscUJBQXFCO0FuQ2czSXpCOztBbUNsM0lBO0VBTUksb0IvQnl2QnVDO0FKdW5IM0M7O0FtQ3gySUE7RUFDRSx3Qi9CZ3ZCeUM7RStCL3VCekMsZ0JBQWdCO0VBRWhCLHFDL0JyRWE7RStCc0ViLDZDL0J0RWE7QUpnN0lmOztBbUMvMklBO0V4QmhFSSwwRHdCd0U4RTtBbkMyMklsRjs7QW1DdjJJQTtFQUNFLHdCL0JvdUJ5QztFK0JsdUJ6QyxxQy9CaEZhO0UrQmlGYiwwQy9CakZhO0FKMDdJZjs7QW1DNzJJQTtFeEI1RUksMERRZ0k0RDtBbkI2ekloRTs7QW1DajJJQTtFQUNFLHVCQUFrQztFQUNsQyx1Qi9Ca3RCd0M7RStCanRCeEMsc0JBQWlDO0VBQ2pDLGdCQUFnQjtBbkNvMklsQjs7QW1DajJJQTtFQUNFLHVCQUFrQztFQUNsQyxzQkFBaUM7QW5DbzJJbkM7O0FtQ2gySUE7RUFDRSxrQkFBa0I7RUFDbEIsTUFBTTtFQUNOLFFBQVE7RUFDUixTQUFTO0VBQ1QsT0FBTztFQUNQLGdCL0I2c0J5QztFTzV6QnZDLGtDUWdJNEQ7QW5CbTFJaEU7O0FtQ2gySUE7OztFQUdFLGNBQWM7RUFDZCxXQUFXO0FuQ20ySWI7O0FtQ2gySUE7O0V4QmpISSwyQ1F1SDREO0VSdEg1RCw0Q1FzSDREO0FuQmcySWhFOztBbUNqMklBOztFeEJ4R0ksK0NReUc0RDtFUnhHNUQsOENRd0c0RDtBbkJzMkloRTs7QW1DLzFJQTtFQUVJLG1CL0JxckJ1RDtBSjRxSDNEOztBZWg4SUk7RW9CNkZKO0lBTUksYUFBYTtJQUNiLG1CQUFtQjtJQUNuQixtQi9CK3FCdUQ7SStCOXFCdkQsa0IvQjhxQnVEO0VKb3JIekQ7RW1DMzJJRjtJQWFNLFlBQVk7SUFDWixrQi9CeXFCcUQ7SStCeHFCckQsZ0JBQWdCO0lBQ2hCLGlCL0J1cUJxRDtFSjBySHpEO0FBQ0Y7O0FtQ3gxSUE7RUFJSSxtQi9CeXBCdUQ7QUorckgzRDs7QWVuOUlJO0VvQnVISjtJQVFJLGFBQWE7SUFDYixtQkFBbUI7RW5DeTFJckI7RW1DbDJJRjtJQWNNLFlBQVk7SUFDWixnQkFBZ0I7RW5DdTFJcEI7RW1DdDJJRjtJQWtCUSxjQUFjO0lBQ2QsY0FBYztFbkN1MUlwQjtFbUMxMklGO0l4QmpKSSwwQndCMEtvQztJeEJ6S3BDLDZCd0J5S29DO0VuQ3ExSXRDO0VtQzkySUY7O0lBOEJZLDBCQUEwQjtFbkNvMUlwQztFbUNsM0lGOztJQW1DWSw2QkFBNkI7RW5DbTFJdkM7RW1DdDNJRjtJeEJuSUkseUJ3QjJLbUM7SXhCMUtuQyw0QndCMEttQztFbkNrMUlyQztFbUMxM0lGOztJQTZDWSx5QkFBeUI7RW5DaTFJbkM7RW1DOTNJRjs7SUFrRFksNEJBQTRCO0VuQ2cxSXRDO0FBQ0Y7O0FtQ3AwSUE7RUFFSSxzQi9COGtCc0M7QUp3dkgxQzs7QWU5L0lJO0VvQnNMSjtJQU1JLGUvQjJsQmlDO0krQjFsQmpDLG1CL0IybEJ1QztJK0IxbEJ2QyxVQUFVO0lBQ1YsU0FBUztFbkN1MElYO0VtQ2gxSUY7SUFZTSxxQkFBcUI7SUFDckIsV0FBVztFbkN1MElmO0FBQ0Y7O0FtQzl6SUE7RUFDRSxxQkFBcUI7QW5DaTBJdkI7O0FtQ2wwSUE7RUFJSSxnQkFBZ0I7QW5DazBJcEI7O0FtQ3QwSUE7RUFPTSxnQkFBZ0I7RXhCdk9sQiw2QndCd09pQztFeEJ2T2pDLDRCd0J1T2lDO0FuQ28wSXJDOztBbUM1MElBO0V4QjlPSSx5QndCMFA4QjtFeEJ6UDlCLDBCd0J5UDhCO0FuQ3EwSWxDOztBbUNqMUlBO0V4QnZQSSxnQndCdVEwQjtFQUN4QixtQi9COUMyQjtBSm0zSWpDOztBb0MvbEpBO0VBQ0UsYUFBYTtFQUNiLGVBQWU7RUFDZixxQmhDbWlDc0M7RWdDbGlDdEMsbUJoQ3FpQ3NDO0VnQ25pQ3RDLGdCQUFnQjtFQUNoQix5QmhDRWdCO0VPU2Qsc0JQNk5nQztBSjAzSXBDOztBb0M5bEpBO0VBR0ksb0JoQ3loQ3FDO0FKc2tIekM7O0FvQ2xtSkE7RUFNTSxXQUFXO0VBQ1gscUJoQ3FoQ21DO0VnQ3BoQ25DLGNoQ05ZO0VnQ09aLFloQzBoQ3VDO0FKc2tIN0M7O0FvQ3ptSkE7RUFvQkksMEJBQTBCO0FwQ3lsSjlCOztBb0M3bUpBO0VBd0JJLHFCQUFxQjtBcEN5bEp6Qjs7QW9Dam5KQTtFQTRCSSxjaEMxQmM7QUptbkpsQjs7QXFDaG9KQTtFQUNFLGFBQWE7RTdCR2IsZUFBZTtFQUNmLGdCQUFnQjtFR2FkLHNCUDZOZ0M7QUp3NUlwQzs7QXFDam9KQTtFQUNFLGtCQUFrQjtFQUNsQixjQUFjO0VBQ2QsdUJqQ2l4QndDO0VpQ2h4QnhDLGlCakNrTytCO0VpQ2pPL0IsaUJqQ294QnNDO0VpQ254QnRDLGNqQ3VCZTtFaUNyQmYsc0JqQ1BhO0VpQ1FiLHlCakNMZ0I7QUp3b0psQjs7QXFDNW9KQTtFQVlJLFVBQVU7RUFDVixjakM4SjhEO0VpQzdKOUQscUJBQXFCO0VBQ3JCLHlCakNaYztFaUNhZCxxQmpDWmM7QUpncEpsQjs7QXFDcHBKQTtFQW9CSSxVQUFVO0VBQ1YsVWpDNHdCaUM7RWlDM3dCakMsZ0RqQ09hO0FKNm5KakI7O0FxQ2hvSkE7RUFHTSxjQUFjO0UxQmFoQiwrQlArTGdDO0VPOUxoQyxrQ1A4TGdDO0FKdTdJcEM7O0FxQ3RvSkE7RTFCRUksZ0NQNk1nQztFTzVNaEMsbUNQNE1nQztBSjQ3SXBDOztBcUMzb0pBO0VBY0ksVUFBVTtFQUNWLFdqQ3hDVztFaUN5Q1gseUJqQ2JhO0VpQ2NiLHFCakNkYTtBSitvSmpCOztBcUNscEpBO0VBcUJJLGNqQ3hDYztFaUN5Q2Qsb0JBQW9CO0VBRXBCLFlBQVk7RUFDWixzQmpDbERXO0VpQ21EWCxxQmpDaERjO0FKZ3JKbEI7O0FzQ3ZySkU7RUFDRSx1QmxDMHhCc0M7RUMxbUJwQyxrQkFBVztFaUM5S2IsZ0JsQ21PNkI7QUp1OUlqQzs7QXNDcnJKTTtFM0JxQ0YsOEJQZ00rQjtFTy9ML0IsaUNQK0wrQjtBSnE5SW5DOztBc0NyckpNO0UzQmtCRiwrQlA4TStCO0VPN00vQixrQ1A2TStCO0FKMDlJbkM7O0FzQ3ZzSkU7RUFDRSx1QmxDd3hCcUM7RUN4bUJuQyxtQkFBVztFaUM5S2IsZ0JsQ29PNkI7QUpzK0lqQzs7QXNDcnNKTTtFM0JxQ0YsOEJQaU0rQjtFT2hNL0IsaUNQZ00rQjtBSm8rSW5DOztBc0Nyc0pNO0UzQmtCRiwrQlArTStCO0VPOU0vQixrQ1A4TStCO0FKeStJbkM7O0F1Q3J0SkE7RUFDRSxxQkFBcUI7RUFDckIscUJuQzQ1QnNDO0VDL3ZCcEMsY0FBVztFa0MzSmIsZ0JuQ3dSK0I7RW1DdlIvQixjQUFjO0VBQ2Qsa0JBQWtCO0VBQ2xCLG1CQUFtQjtFQUNuQix3QkFBd0I7RTVCS3RCLHNCUDZOZ0M7RWlCL045QixxSWpCaWI2STtBSnN5SW5KOztBcUJudEpNO0VrQmZOO0lsQmdCUSxnQkFBZ0I7RXJCdXRKdEI7QUFDRjs7QU03dEpFO0VpQ0dJLHFCQUFxQjtBdkM4dEozQjs7QXVDNXVKQTtFQW9CSSxhQUFhO0F2QzR0SmpCOztBdUN2dEpBO0VBQ0Usa0JBQWtCO0VBQ2xCLFNBQVM7QXZDMHRKWDs7QXVDbnRKQTtFQUNFLG9CbkNpNEJzQztFbUNoNEJ0QyxtQm5DZzRCc0M7RU92NUJwQyxvQlAwNUJxQztBSm8xSHpDOztBdUM5c0pFO0VDakRBLFdwQ01hO0VvQ0xiLHlCcENpQ2U7QUprdUpqQjs7QU1ydkpFO0VrQ1ZJLFdwQ0NTO0VvQ0FULHlCQUFrQztBeENtd0p4Qzs7QXdDdHdKVTtFQVFKLFVBQVU7RUFDViwrQ3BDc0JXO0FKNHVKakI7O0F1Qzd0SkU7RUNqREEsV3BDTWE7RW9DTGIseUJwQ1dnQjtBSnV3SmxCOztBTXB3SkU7RWtDVkksV3BDQ1M7RW9DQVQseUJBQWtDO0F4Q2t4SnhDOztBd0NyeEpVO0VBUUosVUFBVTtFQUNWLGlEcENBWTtBSml4SmxCOztBdUM1dUpFO0VDakRBLFdwQ01hO0VvQ0xiLHlCcEN3Q2U7QUp5dkpqQjs7QU1ueEpFO0VrQ1ZJLFdwQ0NTO0VvQ0FULHlCQUFrQztBeENpeUp4Qzs7QXdDcHlKVTtFQVFKLFVBQVU7RUFDViwrQ3BDNkJXO0FKbXdKakI7O0F1QzN2SkU7RUNqREEsV3BDTWE7RW9DTGIseUJwQzBDZTtBSnN3SmpCOztBTWx5SkU7RWtDVkksV3BDQ1M7RW9DQVQseUJBQWtDO0F4Q2d6SnhDOztBd0NuekpVO0VBUUosVUFBVTtFQUNWLGdEcEMrQlc7QUpneEpqQjs7QXVDMXdKRTtFQ2pEQSxjcENlZ0I7RW9DZGhCLHlCcEN1Q2U7QUp3eEpqQjs7QU1qekpFO0VrQ1ZJLGNwQ1VZO0VvQ1RaLHlCQUFrQztBeEMrekp4Qzs7QXdDbDBKVTtFQVFKLFVBQVU7RUFDViwrQ3BDNEJXO0FKa3lKakI7O0F1Q3p4SkU7RUNqREEsV3BDTWE7RW9DTGIseUJwQ3FDZTtBSnl5SmpCOztBTWgwSkU7RWtDVkksV3BDQ1M7RW9DQVQseUJBQWtDO0F4QzgwSnhDOztBd0NqMUpVO0VBUUosVUFBVTtFQUNWLCtDcEMwQlc7QUptekpqQjs7QXVDeHlKRTtFQ2pEQSxjcENlZ0I7RW9DZGhCLHlCcENNZ0I7QUp1MUpsQjs7QU0vMEpFO0VrQ1ZJLGNwQ1VZO0VvQ1RaLHlCQUFrQztBeEM2MUp4Qzs7QXdDaDJKVTtFQVFKLFVBQVU7RUFDVixpRHBDTFk7QUppMkpsQjs7QXVDdnpKRTtFQ2pEQSxXcENNYTtFb0NMYix5QnBDYWdCO0FKKzFKbEI7O0FNOTFKRTtFa0NWSSxXcENDUztFb0NBVCx5QkFBa0M7QXhDNDJKeEM7O0F3Qy8ySlU7RUFRSixVQUFVO0VBQ1YsOENwQ0VZO0FKeTJKbEI7O0F5Q3gzSkE7RUFDRSxrQkFBcUQ7RUFDckQsbUJyQ3l6QnNDO0VxQ3Z6QnRDLHlCckNLZ0I7RU9TZCxxQlA4TitCO0FKK29KbkM7O0FlbjBKSTtFMEI1REo7SUFRSSxrQnJDbXpCb0M7RUp5a0l0QztBQUNGOztBeUN6M0pBO0VBQ0UsZ0JBQWdCO0VBQ2hCLGVBQWU7RTlCSWIsZ0I4QkhzQjtBekM0M0oxQjs7QTBDdjRKQTtFQUNFLGtCQUFrQjtFQUNsQix3QnRDeTlCeUM7RXNDeDlCekMsbUJ0Q3k5QnNDO0VzQ3g5QnRDLDZCQUE2QztFL0JVM0Msc0JQNk5nQztBSm9xSnBDOztBMEN0NEpBO0VBRUUsY0FBYztBMUN3NEpoQjs7QTBDcDRKQTtFQUNFLGdCdEM2UStCO0FKMG5KakM7O0EwQy8zSkE7RUFDRSxtQkFBc0Q7QTFDazRKeEQ7O0EwQ240SkE7RUFLSSxrQkFBa0I7RUFDbEIsTUFBTTtFQUNOLFFBQVE7RUFDUixVQUFVO0VBQ1Ysd0J0QzA3QnVDO0VzQ3o3QnZDLGNBQWM7QTFDazRKbEI7O0EwQ3gzSkU7RUMvQ0EsY3hCd0dnRTtFSW5HOUQseUJKbUc4RDtFd0J0R2hFLHFCeEJzR2dFO0FuQnEwSmxFOztBMkN6NkpFO0VBQ0UseUJBQXFDO0EzQzQ2SnpDOztBMkN6NkpFO0VBQ0UsY0FBMEI7QTNDNDZKOUI7O0EwQ3Q0SkU7RUMvQ0EsY3hCd0dnRTtFSW5HOUQseUJKbUc4RDtFd0J0R2hFLHFCeEJzR2dFO0FuQm0xSmxFOztBMkN2N0pFO0VBQ0UseUJBQXFDO0EzQzA3SnpDOztBMkN2N0pFO0VBQ0UsY0FBMEI7QTNDMDdKOUI7O0EwQ3A1SkU7RUMvQ0EsY3hCd0dnRTtFSW5HOUQseUJKbUc4RDtFd0J0R2hFLHFCeEJzR2dFO0FuQmkySmxFOztBMkNyOEpFO0VBQ0UseUJBQXFDO0EzQ3c4SnpDOztBMkNyOEpFO0VBQ0UsY0FBMEI7QTNDdzhKOUI7O0EwQ2w2SkU7RUMvQ0EsY3hCd0dnRTtFSW5HOUQseUJKbUc4RDtFd0J0R2hFLHFCeEJzR2dFO0FuQisySmxFOztBMkNuOUpFO0VBQ0UseUJBQXFDO0EzQ3M5SnpDOztBMkNuOUpFO0VBQ0UsY0FBMEI7QTNDczlKOUI7O0EwQ2g3SkU7RUMvQ0EsY3hCd0dnRTtFSW5HOUQseUJKbUc4RDtFd0J0R2hFLHFCeEJzR2dFO0FuQjYzSmxFOztBMkNqK0pFO0VBQ0UseUJBQXFDO0EzQ28rSnpDOztBMkNqK0pFO0VBQ0UsY0FBMEI7QTNDbytKOUI7O0EwQzk3SkU7RUMvQ0EsY3hCd0dnRTtFSW5HOUQseUJKbUc4RDtFd0J0R2hFLHFCeEJzR2dFO0FuQjI0SmxFOztBMkMvK0pFO0VBQ0UseUJBQXFDO0EzQ2svSnpDOztBMkMvK0pFO0VBQ0UsY0FBMEI7QTNDay9KOUI7O0EwQzU4SkU7RUMvQ0EsY3hCd0dnRTtFSW5HOUQseUJKbUc4RDtFd0J0R2hFLHFCeEJzR2dFO0FuQnk1SmxFOztBMkM3L0pFO0VBQ0UseUJBQXFDO0EzQ2dnS3pDOztBMkM3L0pFO0VBQ0UsY0FBMEI7QTNDZ2dLOUI7O0EwQzE5SkU7RUMvQ0EsY3hCd0dnRTtFSW5HOUQseUJKbUc4RDtFd0J0R2hFLHFCeEJzR2dFO0FuQnU2SmxFOztBMkMzZ0tFO0VBQ0UseUJBQXFDO0EzQzhnS3pDOztBMkMzZ0tFO0VBQ0UsY0FBMEI7QTNDOGdLOUI7O0E0Q3RoS0U7RUFDRTtJQUFPLDJCQUF1QztFNUMwaEtoRDtFNEN6aEtFO0lBQUssd0JBQXdCO0U1QzRoSy9CO0FBQ0Y7O0E0Q3poS0E7RUFDRSxhQUFhO0VBQ2IsWXhDaytCc0M7RXdDaitCdEMsZ0JBQWdCO0VBQ2hCLGNBQWM7RXZDd0tWLGtCQUFXO0V1Q3RLZix5QnhDTGdCO0VPU2Qsc0JQNk5nQztBSjR6SnBDOztBNEN4aEtBO0VBQ0UsYUFBYTtFQUNiLHNCQUFzQjtFQUN0Qix1QkFBdUI7RUFDdkIsZ0JBQWdCO0VBQ2hCLFd4Q2pCYTtFd0NrQmIsa0JBQWtCO0VBQ2xCLG1CQUFtQjtFQUNuQix5QnhDUWU7RWlCbkJYLDJCakJvK0I0QztBSm1rSWxEOztBcUJuaUtNO0V1QkROO0l2QkVRLGdCQUFnQjtFckJ1aUt0QjtBQUNGOztBNEM5aEtBO0VyQllFLHFNQUE2STtFcUJWN0ksMEJ4QzI4QnNDO0FKc2xJeEM7O0E0QzdoS0U7RUFDRSxrREFBOEQ7QTVDZ2lLbEU7O0E0QzdoS007RUFKSjtJQUtNLGVBQWU7RTVDaWlLckI7QUFDRjs7QTZDNWtLQTtFQUNFLGFBQWE7RUFDYix1QkFBdUI7QTdDK2tLekI7O0E2QzVrS0E7RUFDRSxPQUFPO0E3QytrS1Q7O0E4Q2psS0E7RUFDRSxhQUFhO0VBQ2Isc0JBQXNCO0VBR3RCLGVBQWU7RUFDZixnQkFBZ0I7RW5DUWQsc0JQNk5nQztBSjgySnBDOztBOEN6a0tBO0VBQ0UsV0FBVztFQUNYLGMxQ1JnQjtFMENTaEIsbUJBQW1CO0E5QzRrS3JCOztBTW5sS0U7RXdDV0UsVUFBVTtFQUNWLGMxQ2RjO0UwQ2VkLHFCQUFxQjtFQUNyQix5QjFDdEJjO0FKa21LbEI7O0E4Q3RsS0E7RUFjSSxjMUNsQmM7RTBDbUJkLHlCMUMxQmM7QUpzbUtsQjs7QThDbmtLQTtFQUNFLGtCQUFrQjtFQUNsQixjQUFjO0VBQ2Qsd0IxQ2k5QnlDO0UwQzk4QnpDLHNCMUMzQ2E7RTBDNENiLHNDMUNsQ2E7QUpzbUtmOztBOEMza0tBO0VuQ2pCSSwrQm1DMkJrQztFbkMxQmxDLGdDbUMwQmtDO0E5Q3NrS3RDOztBOENobEtBO0VuQ0hJLG1DbUNpQnFDO0VuQ2hCckMsa0NtQ2dCcUM7QTlDdWtLekM7O0E4Q3JsS0E7RUFtQkksYzFDbERjO0UwQ21EZCxvQkFBb0I7RUFDcEIsc0IxQzFEVztBSmdvS2Y7O0E4QzNsS0E7RUEwQkksVUFBVTtFQUNWLFcxQ2hFVztFMENpRVgseUIxQ3JDYTtFMENzQ2IscUIxQ3RDYTtBSjJtS2pCOztBOENsbUtBO0VBaUNJLG1CQUFtQjtBOUNxa0t2Qjs7QThDdG1LQTtFQW9DTSxnQjFDNEoyQjtFMEMzSjNCLHFCMUMySjJCO0FKMjZKakM7O0E4Q3hqS0k7RUFDRSxtQkFBbUI7QTlDMmpLekI7O0E4QzVqS0k7RW5DdEJBLGtDUHNLZ0M7RU9sTGhDLDBCbUN3Q3dDO0E5QzJqSzVDOztBOENqa0tJO0VuQ2xDQSxnQ1BrTGdDO0VPdEtoQyw0Qm1DaUMwQztBOUMyaks5Qzs7QThDdGtLSTtFQWVNLGFBQWE7QTlDMmpLdkI7O0E4QzFrS0k7RUFtQk0scUIxQzBIdUI7RTBDekh2QixvQkFBb0I7QTlDMmpLOUI7O0E4Qy9rS0k7RUF1QlEsaUIxQ3NIcUI7RTBDckhyQixzQjFDcUhxQjtBSnU4SmpDOztBZXZuS0k7RStCbUNBO0lBQ0UsbUJBQW1CO0U5Q3dsS3ZCO0U4Q3psS0U7SW5DdEJBLGtDUHNLZ0M7SU9sTGhDLDBCbUN3Q3dDO0U5Q3VsSzFDO0U4QzdsS0U7SW5DbENBLGdDUGtMZ0M7SU90S2hDLDRCbUNpQzBDO0U5Q3NsSzVDO0U4Q2ptS0U7SUFlTSxhQUFhO0U5Q3FsS3JCO0U4Q3BtS0U7SUFtQk0scUIxQzBIdUI7STBDekh2QixvQkFBb0I7RTlDb2xLNUI7RThDeG1LRTtJQXVCUSxpQjFDc0hxQjtJMENySHJCLHNCMUNxSHFCO0VKKzlKL0I7QUFDRjs7QWVocEtJO0UrQm1DQTtJQUNFLG1CQUFtQjtFOUNpbkt2QjtFOENsbktFO0luQ3RCQSxrQ1BzS2dDO0lPbExoQywwQm1Dd0N3QztFOUNnbksxQztFOEN0bktFO0luQ2xDQSxnQ1BrTGdDO0lPdEtoQyw0Qm1DaUMwQztFOUMrbUs1QztFOEMxbktFO0lBZU0sYUFBYTtFOUM4bUtyQjtFOEM3bktFO0lBbUJNLHFCMUMwSHVCO0kwQ3pIdkIsb0JBQW9CO0U5QzZtSzVCO0U4Q2pvS0U7SUF1QlEsaUIxQ3NIcUI7STBDckhyQixzQjFDcUhxQjtFSncvSi9CO0FBQ0Y7O0FlenFLSTtFK0JtQ0E7SUFDRSxtQkFBbUI7RTlDMG9LdkI7RThDM29LRTtJbkN0QkEsa0NQc0tnQztJT2xMaEMsMEJtQ3dDd0M7RTlDeW9LMUM7RThDL29LRTtJbkNsQ0EsZ0NQa0xnQztJT3RLaEMsNEJtQ2lDMEM7RTlDd29LNUM7RThDbnBLRTtJQWVNLGFBQWE7RTlDdW9LckI7RThDdHBLRTtJQW1CTSxxQjFDMEh1QjtJMEN6SHZCLG9CQUFvQjtFOUNzb0s1QjtFOEMxcEtFO0lBdUJRLGlCMUNzSHFCO0kwQ3JIckIsc0IxQ3FIcUI7RUppaEsvQjtBQUNGOztBZWxzS0k7RStCbUNBO0lBQ0UsbUJBQW1CO0U5Q21xS3ZCO0U4Q3BxS0U7SW5DdEJBLGtDUHNLZ0M7SU9sTGhDLDBCbUN3Q3dDO0U5Q2txSzFDO0U4Q3hxS0U7SW5DbENBLGdDUGtMZ0M7SU90S2hDLDRCbUNpQzBDO0U5Q2lxSzVDO0U4QzVxS0U7SUFlTSxhQUFhO0U5Q2dxS3JCO0U4Qy9xS0U7SUFtQk0scUIxQzBIdUI7STBDekh2QixvQkFBb0I7RTlDK3BLNUI7RThDbnJLRTtJQXVCUSxpQjFDc0hxQjtJMENySHJCLHNCMUNxSHFCO0VKMGlLL0I7QUFDRjs7QThDbHBLQTtFbkNuSEksZ0JtQ29Ic0I7QTlDcXBLMUI7O0E4Q3RwS0E7RUFJSSxxQjFDbUc2QjtBSm1qS2pDOztBOEMxcEtBO0VBT00sc0JBQXNCO0E5Q3VwSzVCOztBK0NoeUtFO0VBQ0UsYzVCcUc4RDtFNEJwRzlELHlCNUJvRzhEO0FuQityS2xFOztBTXh4S0U7RXlDUE0sYzVCZ0cwRDtFNEIvRjFELHlCQUF5QztBL0NteUtqRDs7QStDMXlLRTtFQVdNLFczQ1BPO0UyQ1FQLHlCNUIwRjBEO0U0QnpGMUQscUI1QnlGMEQ7QW5CMHNLbEU7O0ErQ2h6S0U7RUFDRSxjNUJxRzhEO0U0QnBHOUQseUI1Qm9HOEQ7QW5CK3NLbEU7O0FNeHlLRTtFeUNQTSxjNUJnRzBEO0U0Qi9GMUQseUJBQXlDO0EvQ216S2pEOztBK0MxektFO0VBV00sVzNDUE87RTJDUVAseUI1QjBGMEQ7RTRCekYxRCxxQjVCeUYwRDtBbkIwdEtsRTs7QStDaDBLRTtFQUNFLGM1QnFHOEQ7RTRCcEc5RCx5QjVCb0c4RDtBbkIrdEtsRTs7QU14ektFO0V5Q1BNLGM1QmdHMEQ7RTRCL0YxRCx5QkFBeUM7QS9DbTBLakQ7O0ErQzEwS0U7RUFXTSxXM0NQTztFMkNRUCx5QjVCMEYwRDtFNEJ6RjFELHFCNUJ5RjBEO0FuQjB1S2xFOztBK0NoMUtFO0VBQ0UsYzVCcUc4RDtFNEJwRzlELHlCNUJvRzhEO0FuQit1S2xFOztBTXgwS0U7RXlDUE0sYzVCZ0cwRDtFNEIvRjFELHlCQUF5QztBL0NtMUtqRDs7QStDMTFLRTtFQVdNLFczQ1BPO0UyQ1FQLHlCNUIwRjBEO0U0QnpGMUQscUI1QnlGMEQ7QW5CMHZLbEU7O0ErQ2gyS0U7RUFDRSxjNUJxRzhEO0U0QnBHOUQseUI1Qm9HOEQ7QW5CK3ZLbEU7O0FNeDFLRTtFeUNQTSxjNUJnRzBEO0U0Qi9GMUQseUJBQXlDO0EvQ20yS2pEOztBK0MxMktFO0VBV00sVzNDUE87RTJDUVAseUI1QjBGMEQ7RTRCekYxRCxxQjVCeUYwRDtBbkIwd0tsRTs7QStDaDNLRTtFQUNFLGM1QnFHOEQ7RTRCcEc5RCx5QjVCb0c4RDtBbkIrd0tsRTs7QU14MktFO0V5Q1BNLGM1QmdHMEQ7RTRCL0YxRCx5QkFBeUM7QS9DbTNLakQ7O0ErQzEzS0U7RUFXTSxXM0NQTztFMkNRUCx5QjVCMEYwRDtFNEJ6RjFELHFCNUJ5RjBEO0FuQjB4S2xFOztBK0NoNEtFO0VBQ0UsYzVCcUc4RDtFNEJwRzlELHlCNUJvRzhEO0FuQit4S2xFOztBTXgzS0U7RXlDUE0sYzVCZ0cwRDtFNEIvRjFELHlCQUF5QztBL0NtNEtqRDs7QStDMTRLRTtFQVdNLFczQ1BPO0UyQ1FQLHlCNUIwRjBEO0U0QnpGMUQscUI1QnlGMEQ7QW5CMHlLbEU7O0ErQ2g1S0U7RUFDRSxjNUJxRzhEO0U0QnBHOUQseUI1Qm9HOEQ7QW5CK3lLbEU7O0FNeDRLRTtFeUNQTSxjNUJnRzBEO0U0Qi9GMUQseUJBQXlDO0EvQ201S2pEOztBK0MxNUtFO0VBV00sVzNDUE87RTJDUVAseUI1QjBGMEQ7RTRCekYxRCxxQjVCeUYwRDtBbkIwektsRTs7QWdEbjZLQTtFQUNFLFlBQVk7RTNDbUxSLGlCQUFXO0UyQ2pMZixnQjVDOFIrQjtFNEM3Ui9CLGNBQWM7RUFDZCxXNUNZYTtFNENYYix5QjVDQ2E7RTRDQWIsV0FBVztBaERzNktiOztBTWo2S0U7RTBDREUsVzVDTVc7RTRDTFgscUJBQXFCO0FoRHM2S3pCOztBTWw2S0U7RTBDQ0ksWUFBWTtBaERxNktsQjs7QWdEMTVLQTtFQUNFLFVBQVU7RUFDViw2QkFBNkI7RUFDN0IsU0FBUztBaEQ2NUtYOztBZ0R2NUtBO0VBQ0Usb0JBQW9CO0FoRDA1S3RCOztBaURoOEtBO0VBR0UsaUI3QzI0QnVDO0U2QzE0QnZDLGdCN0MwNEJ1QztFQzF0Qm5DLG1CQUFXO0U0QzdLZiwyQzdDQWE7RTZDQ2IsNEJBQTRCO0VBQzVCLG9DN0M0NEJtRDtFNkMzNEJuRCxnRDdDT2E7RTZDTmIsVUFBVTtFdENPUixzQlBvNEJzQztBSnNqSjFDOztBaUQ1OEtBO0VBZUksc0I3Q2c0QnNDO0FKaWtKMUM7O0FpRGg5S0E7RUFtQkksVUFBVTtBakRpOEtkOztBaURwOUtBO0VBdUJJLGNBQWM7RUFDZCxVQUFVO0FqRGk4S2Q7O0FpRHo5S0E7RUE0QkksYUFBYTtBakRpOEtqQjs7QWlENzdLQTtFQUNFLGFBQWE7RUFDYixtQkFBbUI7RUFDbkIsd0I3QzQyQndDO0U2QzMyQnhDLGM3Q3ZCZ0I7RTZDd0JoQiwyQzdDOUJhO0U2QytCYiw0QkFBNEI7RUFDNUIsNEM3Q28zQm9EO0VPaDRCbEQsMkNRdUg0RDtFUnRINUQsNENRc0g0RDtBbkJ1MUtoRTs7QWlEOTdLQTtFQUNFLGdCN0NtMkJ3QztBSjhsSjFDOztBa0R2K0tBO0VBRUUsZ0JBQWdCO0FsRHkrS2xCOztBa0QzK0tBO0VBS0ksa0JBQWtCO0VBQ2xCLGdCQUFnQjtBbEQwK0twQjs7QWtEcitLQTtFQUNFLGVBQWU7RUFDZixNQUFNO0VBQ04sT0FBTztFQUNQLGE5QzRwQnNDO0U4QzNwQnRDLGFBQWE7RUFDYixXQUFXO0VBQ1gsWUFBWTtFQUNaLGdCQUFnQjtFQUdoQixVQUFVO0FsRHMrS1o7O0FrRC85S0E7RUFDRSxrQkFBa0I7RUFDbEIsV0FBVztFQUNYLGM5Q2k1QnVDO0U4Qy80QnZDLG9CQUFvQjtBbERpK0t0Qjs7QWtEOTlLRTtFN0IzQkksbUNqQnM4Qm9EO0U4Q3o2QnRELDhCOUN1NkJtRDtBSjBqSnZEOztBcUIxL0tNO0U2QnVCSjtJN0J0Qk0sZ0JBQWdCO0VyQjgvS3RCO0FBQ0Y7O0FrRHIrS0U7RUFDRSxlOUNxNkJvQztBSm1rSnhDOztBa0RwK0tFO0VBQ0Usc0I5Q2s2QjJDO0FKcWtKL0M7O0FrRG4rS0E7RUFDRSxhQUFhO0VBQ2IsNkIvQnVGOEQ7QW5CKzRLaEU7O0FrRHgrS0E7RUFLSSw4Qi9Cb0Y0RDtFK0JuRjVELGdCQUFnQjtBbER1K0twQjs7QWtENytLQTs7RUFXSSxjQUFjO0FsRHUrS2xCOztBa0RsL0tBO0VBZUksZ0JBQWdCO0FsRHUrS3BCOztBa0RuK0tBO0VBQ0UsYUFBYTtFQUNiLG1CQUFtQjtFQUNuQiw2Qi9CbUU4RDtBbkJtNktoRTs7QWtEeitLQTtFQU9JLGNBQWM7RUFDZCwwQi9COEQ0RDtFK0I3RDVELG1CQUFtQjtFQUNuQixXQUFXO0FsRHMrS2Y7O0FrRGgvS0E7RUFlSSxzQkFBc0I7RUFDdEIsdUJBQXVCO0VBQ3ZCLFlBQVk7QWxEcStLaEI7O0FrRHQvS0E7RUFvQk0sZ0JBQWdCO0FsRHMrS3RCOztBa0QxL0tBO0VBd0JNLGFBQWE7QWxEcytLbkI7O0FrRGgrS0E7RUFDRSxrQkFBa0I7RUFDbEIsYUFBYTtFQUNiLHNCQUFzQjtFQUN0QixXQUFXO0VBR1gsb0JBQW9CO0VBQ3BCLHNCOUMzR2E7RThDNEdiLDRCQUE0QjtFQUM1QixvQzlDbkdhO0VPQ1gscUJQOE4rQjtFOEN4SGpDLFVBQVU7QWxEKzlLWjs7QWtEMzlLQTtFQUNFLGVBQWU7RUFDZixNQUFNO0VBQ04sT0FBTztFQUNQLGE5Q2dqQnNDO0U4Qy9pQnRDLFlBQVk7RUFDWixhQUFhO0VBQ2Isc0I5Q2xIYTtBSmdsTGY7O0FrRHIrS0E7RUFVVyxVQUFVO0FsRCs5S3JCOztBa0R6K0tBO0VBV1csWTlDK3pCMkI7QUptcUp0Qzs7QWtENzlLQTtFQUNFLGFBQWE7RUFDYix1QkFBdUI7RUFDdkIsOEJBQThCO0VBQzlCLGtCOUM0ekJzQztFOEMzekJ0QyxnQzlDdklnQjtFT2lCZCwwQ1F1SDREO0VSdEg1RCwyQ1FzSDREO0FuQmkrS2hFOztBa0R2K0tBO0VBU0ksa0I5Q3V6Qm9DO0U4Q3J6QnBDLDhCQUE2RjtBbERpK0tqRzs7QWtENTlLQTtFQUNFLGdCQUFnQjtFQUNoQixnQjlDdUkrQjtBSncxS2pDOztBa0QxOUtBO0VBQ0Usa0JBQWtCO0VBR2xCLGNBQWM7RUFDZCxhOUMwd0JzQztBSml0SnhDOztBa0R2OUtBO0VBQ0UsYUFBYTtFQUNiLGVBQWU7RUFDZixtQkFBbUI7RUFDbkIseUJBQXlCO0VBQ3pCLGdCQUFpRTtFQUNqRSw2QjlDeEtnQjtFTytCZCw4Q1F5RzREO0VSeEc1RCw2Q1F3RzREO0FuQjQvS2hFOztBa0RsK0tBO0VBYUksZUFBeUM7QWxEeTlLN0M7O0FrRHA5S0E7RUFDRSxrQkFBa0I7RUFDbEIsWUFBWTtFQUNaLFdBQVc7RUFDWCxZQUFZO0VBQ1osZ0JBQWdCO0FsRHU5S2xCOztBZTlsTEk7RW1DekJKO0lBdUtJLGdCOUN1d0JxQztJOEN0d0JyQyxvQkFBeUM7RWxEcTlLM0M7RWtEdm1MRjtJQXNKSSwrQi9CN0Q0RDtFbkJpaEw5RDtFa0QxbUxGO0lBeUpNLGdDL0JoRTBEO0VuQm9oTDlEO0VrRDFsTEY7SUEySUksK0IvQnJFNEQ7RW5CdWhMOUQ7RWtEN2xMRjtJQThJTSw0Qi9CeEUwRDtJK0J5RTFELG1CQUFtQjtFbERrOUt2QjtFa0QxOEtBO0lBQVksZ0I5Qyt1QjJCO0VKOHRKdkM7QUFDRjs7QWVybkxJO0VtQzJLRjs7SUFFRSxnQjlDdXVCcUM7RUp1dUp2QztBQUNGOztBZTVuTEk7RW1Da0xGO0lBQVksaUI5Q2l1QjRCO0VKOHVKeEM7QUFDRjs7QW1EN3JMQTtFQUNFLGtCQUFrQjtFQUNsQixhL0NnckJzQztFK0MvcUJ0QyxjQUFjO0VBQ2QsUy9DNjFCbUM7RWdEajJCbkMscU5oRG9Sb087RWdEbFJwTyxrQkFBa0I7RUFD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czBCb0M7RWlEcjBCcEMsZ0JBQWdDO0FyRHl6THBDOztBcURoMExBO0VBVU0sT0FBTztFQUNQLG9DQUE2RjtFQUM3Rix1Q2pEbzBCaUU7QUpzL0p2RTs7QXFEdDBMQTtFQWdCTSxTakRtSzJCO0VpRGxLM0Isb0NBQTZGO0VBQzdGLHdCakRwRVM7QUo4M0xmOztBcURyekxBO0VBQ0Usa0JqRHF6QnVDO0FKbWdLekM7O0FxRHp6TEE7RUFJSSx3QmxDOEQ0RDtBbkIydkxoRTs7QXFEN3pMQTtFQU9NLE1BQU07RUFDTixvQ0FBNkY7RUFDN0Ysd0NqRGd6QmlFO0FKMGdLdkU7O0FxRG4wTEE7RUFhTSxRakQrSTJCO0VpRDlJM0Isb0NBQTZGO0VBQzdGLHlCakR4RlM7QUprNUxmOztBcUR6MExBO0VBcUJJLGtCQUFrQjtFQUNsQixNQUFNO0VBQ04sU0FBUztFQUNULGNBQWM7RUFDZCxXakQ0eEJvQztFaUQzeEJwQyxvQkFBdUM7RUFDdkMsV0FBVztFQUNYLGdDakRneEJ1RDtBSndpSzNEOztBcURwekxBO0VBQ0Usb0JqRHF4QnVDO0FKa2lLekM7O0FxRHh6TEE7RUFJSSwwQmxDOEI0RDtFa0M3QjVELGFqRGl4QnFDO0VpRGh4QnJDLFlqRCt3Qm9DO0VpRDl3QnBDLGdCQUFnQztBckR3ekxwQzs7QXFEL3pMQTtFQVVNLFFBQVE7RUFDUixvQ2pEMndCbUM7RWlEMXdCbkMsc0NqRDZ3QmlFO0FKNGlLdkU7O0FxRHIwTEE7RUFnQk0sVWpENEcyQjtFaUQzRzNCLG9DakRxd0JtQztFaURwd0JuQyx1QmpEM0hTO0FKbzdMZjs7QXFEbnlMQTtFQUNFLHVCakRzdUJ3QztFaURydUJ4QyxnQkFBZ0I7RWhEMEJaLGVBQVc7RWdEdkJmLHlCakQrdEJ5RDtFaUQ5dEJ6RCxnQ0FBeUU7RTFDbkl2RSwwQ1F1SDREO0VSdEg1RCwyQ1FzSDREO0FuQm16TGhFOztBcUQ3eUxBO0VBVUksYUFBYTtBckR1eUxqQjs7QXFEbnlMQTtFQUNFLHVCakR3dEJ3QztFaUR2dEJ4QyxjakR4SmdCO0FKODdMbEI7O0FzRGo4TEE7RUFDRSxrQkFB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QUErQjtFQUUvQixrQkFBa0I7RUFDbEIsOENBQThDO0F4RDZvTWhEOztBd0Qxb01BO0VBQ0UsV3BEZ2tDNEI7RW9EL2pDNUIsWXBEK2pDNEI7RW9EOWpDNUIsbUJwRGdrQzRCO0FKNmtLOUI7O0F3RHRvTUE7RUFDRTtJQUNFLG1CQUFtQjtFeER5b01yQjtFd0R2b01BO0lBQ0UsVUFBVTtJQUNWLGVBQWU7RXhEeW9NakI7QUFDRjs7QXdEdG9NQTtFQUNFLHFCQUFxQjtFQUNyQixXcERzaUM0QjtFb0RyaUM1QixZcERxaUM0QjtFb0RwaUM1Qix3QnBEc2lDK0I7RW9EcmlDL0IsOEJBQThCO0VBRTlCLGtCQUFrQjtFQUNsQixVQUFVO0VBQ1YsNENBQTRDO0F4RHdvTTlDOztBd0Ryb01BO0VBQ0UsV3BEZ2lDNEI7RW9EL2hDNUIsWXBEK2hDNEI7QUp5bUs5Qjs7QXdEcG9NRTtFQUNFOztJQUVFLHdCQUF3QjtFeER1b001QjtBQUNGOztBeURuc01BO0VBQXFCLG1DQUFtQztBekR1c014RDs7QXlEdHNNQTtFQUFxQiw4QkFBOEI7QXpEMHNNbkQ7O0F5RHpzTUE7RUFBcUIsaUNBQWlDO0F6RDZzTXREOztBeUQ1c01BO0VBQXFCLGlDQUFpQztBekRndE10RDs7QXlEL3NNQTtFQUFxQixzQ0FBc0M7QXpEbXRNM0Q7O0F5RGx0TUE7RUFBcUIsbUNBQW1DO0F6RHN0TXhEOztBMER4dE1FO0VBQ0Usb0NBQW1DO0ExRDJ0TXZDOztBTWp0TUU7OztFb0RMSSxvQ0FBZ0Q7QTFENHRNdEQ7O0EwRGx1TUU7RUFDRSxvQ0FBbUM7QTFEcXVNdkM7O0FNM3RNRTs7O0VvRExJLG9DQUFnRDtBMURzdU10RDs7QTBENXVNRTtFQUNFLG9DQUFtQztBMUQrdU12Qzs7QU1ydU1FOzs7RW9ETEksb0NBQWdEO0ExRGd2TXREOztBMER0dk1FO0VBQ0Usb0NBQW1DO0ExRHl2TXZDOztBTS91TUU7OztFb0RMSSxvQ0FBZ0Q7QTFEMHZNdEQ7O0EwRGh3TUU7RUFDRSxvQ0FBbUM7QTFEbXdNdkM7O0FNenZNRTs7O0VvRExJLG9DQUFnRDtBMURvd010RDs7QTBEMXdNRTtFQUNFLG9DQUFtQztBMUQ2d012Qzs7QU1ud01FOzs7RW9ETEksb0NBQWdEO0ExRDh3TXREOztBMERweE1FO0VBQ0Usb0NBQW1DO0ExRHV4TXZDOztBTTd3TUU7OztFb0RMSSxvQ0FBZ0Q7QTFEd3hNdEQ7O0EwRDl4TUU7RUFDRSxvQ0FBbUM7QTFEaXlNdkM7O0FNdnhNRTs7O0VvRExJLG9DQUFnRDtBMURreU10RDs7QTJEanlNQTtFQUNFLGlDQUFtQztBM0RveU1yQzs7QTJEanlNQTtFQUNFLHdDQUF3QztBM0RveU0xQzs7QTREL3lNQTtFQUFrQixvQ0FBb0Q7QTVEbXpNdEU7O0E0RGx6TUE7RUFBa0Isd0NBQXdEO0E1RHN6TTFFOztBNERyek1BO0VBQWtCLDBDQUEwRDtBNUR5ek01RTs7QTREeHpNQTtFQUFrQiwyQ0FBMkQ7QTVENHpNN0U7O0E0RDN6TUE7RUFBa0IseUNBQXlEO0E1RCt6TTNFOztBNEQ3ek1BO0VBQW1CLG9CQUFvQjtBNURpME12Qzs7QTREaDBNQTtFQUFtQix3QkFBd0I7QTVEbzBNM0M7O0E0RG4wTUE7RUFBbUIsMEJBQTBCO0E1RHUwTTdDOztBNER0ME1BO0VBQW1CLDJCQUEyQjtBNUQwME05Qzs7QTREejBNQTtFQUFtQix5QkFBeUI7QTVENjBNNUM7O0E0RDEwTUU7RUFDRSxnQ0FBK0I7QTVENjBNbkM7O0E0RDkwTUU7RUFDRSxnQ0FBK0I7QTVEaTFNbkM7O0E0RGwxTUU7RUFDRSxnQ0FBK0I7QTVEcTFNbkM7O0E0RHQxTUU7RUFDRSxnQ0FBK0I7QTVEeTFNbkM7O0E0RDExTUU7RUFDRSxnQ0FBK0I7QTVENjFNbkM7O0E0RDkxTUU7RUFDRSxnQ0FBK0I7QTVEaTJNbkM7O0E0RGwyTUU7RUFDRSxnQ0FBK0I7QTVEcTJNbkM7O0E0RHQyTUU7RUFDRSxnQ0FBK0I7QTVEeTJNbkM7O0E0RHIyTUE7RUFDRSw2QkFBK0I7QTVEdzJNakM7O0E0RGoyTUE7RUFDRSxnQ0FBMkM7QTVEbzJNN0M7O0E0RGoyTUE7RUFDRSxpQ0FBd0M7QTVEbzJNMUM7O0E0RGoyTUE7RUFDRSwwQ0FBaUQ7RUFDakQsMkNBQWtEO0E1RG8yTXBEOztBNERqMk1BO0VBQ0UsMkNBQWtEO0VBQ2xELDhDQUFxRDtBNURvMk12RDs7QTREajJNQTtFQUNFLDhDQUFxRDtFQUNyRCw2Q0FBb0Q7QTVEbzJNdEQ7O0E0RGoyTUE7RUFDRSwwQ0FBaUQ7RUFDakQsNkNBQW9EO0E1RG8yTXREOztBNERqMk1BO0VBQ0UsZ0NBQTJDO0E1RG8yTTdDOztBNERqMk1BO0VBQ0UsNkJBQTZCO0E1RG8yTS9COztBNERqMk1BO0VBQ0UsK0JBQXVDO0E1RG8yTXpDOztBNERqMk1BO0VBQ0UsMkJBQTJCO0E1RG8yTTdCOztBdUQ1Nk1FO0VBQ0UsY0FBYztFQUNkLFdBQVc7RUFDWCxXQUFXO0F2RCs2TWY7O0E2RHg2TU07RUFBd0Isd0JBQTBCO0E3RDQ2TXhEOztBNkQ1Nk1NO0VBQXdCLDBCQUEwQjtBN0RnN014RDs7QTZEaDdNTTtFQUF3QixnQ0FBMEI7QTdEbzdNeEQ7O0E2RHA3TU07RUFBd0IseUJBQTBCO0E3RHc3TXhEOztBNkR4N01NO0VBQXdCLHlCQUEwQjtBN0Q0N014RDs7QTZENTdNTTtFQUF3Qiw2QkFBMEI7QTdEZzhNeEQ7O0E2RGg4TU07RUFBd0IsOEJBQTBCO0E3RG84TXhEOztBNkRwOE1NO0VBQXdCLHdCQUEwQjtBN0R3OE14RDs7QTZEeDhNTTtFQUF3QiwrQkFBMEI7QTdENDhNeEQ7O0FlMzVNSTtFOENqREU7SUFBd0Isd0JBQTBCO0U3RGk5TXREO0U2RGo5TUk7SUFBd0IsMEJBQTBCO0U3RG85TXREO0U2RHA5TUk7SUFBd0IsZ0NBQTBCO0U3RHU5TXREO0U2RHY5TUk7SUFBd0IseUJBQTBCO0U3RDA5TXREO0U2RDE5TUk7SUFBd0IseUJBQTBCO0U3RDY5TXREO0U2RDc5TUk7SUFBd0IsNkJBQTBCO0U3RGcrTXREO0U2RGgrTUk7SUFBd0IsOEJBQTBCO0U3RG0rTXREO0U2RG4rTUk7SUFBd0Isd0JBQTBCO0U3RHMrTXREO0U2RHQrTUk7SUFBd0IsK0JBQTBCO0U3RHkrTXREO0FBQ0Y7O0FlejdNSTtFOENqREU7SUFBd0Isd0JBQTBCO0U3RCsrTXREO0U2RC8rTUk7SUFBd0IsMEJBQTBCO0U3RGsvTXREO0U2RGwvTUk7SUFBd0IsZ0NBQTBCO0U3RHEvTXREO0U2RHIvTUk7SUFBd0IseUJBQTBCO0U3RHcvTXREO0U2RHgvTUk7SUFBd0IseUJBQTBCO0U3RDIvTXREO0U2RDMvTUk7SUFBd0IsNkJBQTBCO0U3RDgvTXREO0U2RDkvTUk7SUFBd0IsOEJBQTBCO0U3RGlnTnREO0U2RGpnTkk7SUFBd0Isd0JBQTBCO0U3RG9nTnREO0U2RHBnTkk7SUFBd0IsK0JBQTBCO0U3RHVnTnREO0FBQ0Y7O0FldjlNSTtFOENqREU7SUFBd0Isd0JBQTBCO0U3RDZnTnREO0U2RDdnTkk7SUFBd0IsMEJBQTBCO0U3RGdoTnREO0U2RGhoTkk7SUFBd0IsZ0NBQTBCO0U3RG1oTnREO0U2RG5oTkk7SUFBd0IseUJBQTBCO0U3RHNoTnREO0U2RHRoTkk7SUFBd0IseUJBQTBCO0U3RHloTnREO0U2RHpoTkk7SUFBd0IsNkJBQTBCO0U3RDRoTnREO0U2RDVoTkk7SUFBd0IsOEJBQTBCO0U3RCtoTnREO0U2RC9oTkk7SUFBd0Isd0JBQTBCO0U3RGtpTnREO0U2RGxpTkk7SUFBd0IsK0JBQTBCO0U3RHFpTnREO0FBQ0Y7O0Flci9NSTtFOENqREU7SUFBd0Isd0JBQTBCO0U3RDJpTnREO0U2RDNpTkk7SUFBd0IsMEJBQTBCO0U3RDhpTnREO0U2RDlpTkk7SUFBd0IsZ0NBQTBCO0U3RGlqTnREO0U2RGpqTkk7SUFBd0IseUJBQTBCO0U3RG9qTnREO0U2RHBqTkk7SUFBd0IseUJBQTBCO0U3RHVqTnREO0U2RHZqTkk7SUFBd0IsNkJBQTBCO0U3RDBqTnREO0U2RDFqTkk7SUFBd0IsOEJBQTBCO0U3RDZqTnREO0U2RDdqTkk7SUFBd0Isd0JBQTBCO0U3RGdrTnREO0U2RGhrTkk7SUFBd0IsK0JBQTBCO0U3RG1rTnREO0FBQ0Y7O0E2RDFqTkE7RUFFSTtJQUFxQix3QkFBMEI7RTdENmpOakQ7RTZEN2pORTtJQUFxQiwwQkFBMEI7RTdEZ2tOakQ7RTZEaGtORTtJQUFxQixnQ0FBMEI7RTdEbWtOakQ7RTZEbmtORTtJQUFxQix5QkFBMEI7RTdEc2tOakQ7RTZEdGtORTtJQUFxQix5QkFBMEI7RTdEeWtOakQ7RTZEemtORTtJQUFxQiw2QkFBMEI7RTdENGtOakQ7RTZENWtORTtJQUFxQiw4QkFBMEI7RTdEK2tOakQ7RTZEL2tORTtJQUFxQix3QkFBMEI7RTdEa2xOakQ7RTZEbGxORTtJQUFxQiwrQkFBMEI7RTdEcWxOakQ7QUFDRjs7QThEM21OQTtFQUNFLGtCQUFrQjtFQUNsQixjQUFjO0VBQ2QsV0FBVztFQUNYLFVBQVU7RUFDVixnQkFBZ0I7QTlEOG1ObEI7O0E4RG5uTkE7RUFRSSxjQUFjO0VBQ2QsV0FBVztBOUQrbU5mOztBOER4bk5BOzs7OztFQWlCSSxrQkFBa0I7RUFDbEIsTUFBTTtFQUNOLFNBQVM7RUFDVCxPQUFPO0VBQ1AsV0FBVztFQUNYLFlBQVk7RUFDWixTQUFTO0E5RCttTmI7O0E4RHZtTkU7RUFFSSxzQkFBbUc7QTlEeW1Oekc7O0E4RDNtTkU7RUFFSSxtQkFBbUc7QTlENm1Oekc7O0E4RC9tTkU7RUFFSSxnQkFBbUc7QTlEaW5Oekc7O0E4RG5uTkU7RUFFSSxpQkFBbUc7QTlEcW5Oekc7O0ErRDlvTkk7RUFBZ0MsOEJBQThCO0EvRGtwTmxFOztBK0RqcE5JO0VBQWdDLGlDQUFpQztBL0RxcE5yRTs7QStEcHBOSTtFQUFnQyxzQ0FBc0M7QS9Ed3BOMUU7O0ErRHZwTkk7RUFBZ0MseUNBQXlDO0EvRDJwTjdFOztBK0R6cE5JO0VBQThCLDBCQUEwQjtBL0Q2cE41RDs7QStENXBOSTtFQUE4Qiw0QkFBNEI7QS9EZ3FOOUQ7O0ErRC9wTkk7RUFBOEIsa0NBQWtDO0EvRG1xTnBFOztBK0RscU5JO0VBQThCLHlCQUF5QjtBL0RzcU4zRDs7QStEcnFOSTtFQUE4Qix1QkFBdUI7QS9EeXFOekQ7O0ErRHhxTkk7RUFBOEIsdUJBQXVCO0EvRDRxTnpEOztBK0QzcU5JO0VBQThCLHlCQUF5QjtBL0QrcU4zRDs7QStEOXFOSTtFQUE4Qix5QkFBeUI7QS9Ea3JOM0Q7O0ErRGhyTkk7RUFBb0Msc0NBQXNDO0EvRG9yTjlFOztBK0Ruck5JO0VBQW9DLG9DQUFvQztBL0R1ck41RTs7QStEdHJOSTtFQUFvQyxrQ0FBa0M7QS9EMHJOMUU7O0ErRHpyTkk7RUFBb0MseUNBQXlDO0EvRDZyTmpGOztBK0Q1ck5JO0VBQW9DLHdDQUF3QztBL0Rnc05oRjs7QStEOXJOSTtFQUFpQyxrQ0FBa0M7QS9Ea3NOdkU7O0ErRGpzTkk7RUFBaUMsZ0NBQWdDO0EvRHFzTnJFOztBK0Rwc05JO0VBQWlDLDhCQUE4QjtBL0R3c05uRTs7QStEdnNOSTtFQUFpQyxnQ0FBZ0M7QS9EMnNOckU7O0ErRDFzTkk7RUFBaUMsK0JBQStCO0EvRDhzTnBFOztBK0Q1c05JO0VBQWtDLG9DQUFvQztBL0RndE4xRTs7QStEL3NOSTtFQUFrQyxrQ0FBa0M7QS9EbXROeEU7O0ErRGx0Tkk7RUFBa0MsZ0NBQWdDO0EvRHN0TnRFOztBK0RydE5JO0VBQWtDLHVDQUF1QztBL0R5dE43RTs7QStEeHROSTtFQUFrQyxzQ0FBc0M7QS9ENHRONUU7O0ErRDN0Tkk7RUFBa0MsaUNBQWlDO0EvRCt0TnZFOztBK0Q3dE5JO0VBQWdDLDJCQUEyQjtBL0RpdU4vRDs7QStEaHVOSTtFQUFnQyxpQ0FBaUM7QS9Eb3VOckU7O0ErRG51Tkk7RUFBZ0MsK0JBQStCO0EvRHV1Tm5FOztBK0R0dU5JO0VBQWdDLDZCQUE2QjtBL0QwdU5qRTs7QStEenVOSTtFQUFnQywrQkFBK0I7QS9ENnVObkU7O0ErRDV1Tkk7RUFBZ0MsOEJBQThCO0EvRGd2TmxFOztBZXB1Tkk7RWdEbERBO0lBQWdDLDhCQUE4QjtFL0QyeE5oRTtFK0QxeE5FO0lBQWdDLGlDQUFpQztFL0Q2eE5uRTtFK0Q1eE5FO0lBQWdDLHNDQUFzQztFL0QreE54RTtFK0Q5eE5FO0lBQWdDLHlDQUF5QztFL0RpeU4zRTtFK0QveE5FO0lBQThCLDBCQUEwQjtFL0RreU4xRDtFK0RqeU5FO0lBQThCLDRCQUE0QjtFL0RveU41RDtFK0RueU5FO0lBQThCLGtDQUFrQztFL0RzeU5sRTtFK0RyeU5FO0lBQThCLHlCQUF5QjtFL0R3eU56RDtFK0R2eU5FO0lBQThCLHVCQUF1QjtFL0QweU52RDtFK0R6eU5FO0lBQThCLHVCQUF1QjtFL0Q0eU52RDtFK0QzeU5FO0lBQThCLHlCQUF5QjtFL0Q4eU56RDtFK0Q3eU5FO0lBQThCLHlCQUF5QjtFL0Rnek56RDtFK0Q5eU5FO0lBQW9DLHNDQUFzQztFL0Rpek41RTtFK0Roek5FO0lBQW9DLG9DQUFvQztFL0Rtek4xRTtFK0Rsek5FO0lBQW9DLGtDQUFrQztFL0Rxek54RTtFK0Rwek5FO0lBQW9DLHlDQUF5QztFL0R1ek4vRTtFK0R0ek5FO0lBQW9DLHdDQUF3QztFL0R5ek45RTtFK0R2ek5FO0lBQWlDLGtDQUFrQztFL0Qwek5yRTtFK0R6ek5FO0lBQWlDLGdDQUFnQztFL0Q0ek5uRTtFK0Qzek5FO0lBQWlDLDhCQUE4QjtFL0Q4ek5qRTtFK0Q3ek5FO0lBQWlDLGdDQUFnQztFL0RnME5uRTtFK0Qvek5FO0lBQWlDLCtCQUErQjtFL0RrME5sRTtFK0RoME5FO0lBQWtDLG9DQUFvQztFL0RtME54RTtFK0RsME5FO0lBQWtDLGtDQUFrQztFL0RxME50RTtFK0RwME5FO0lBQWtDLGdDQUFnQztFL0R1ME5wRTtFK0R0ME5FO0lBQWtDLHVDQUF1QztFL0R5ME4zRTtFK0R4ME5FO0lBQWtDLHNDQUFzQztFL0QyME4xRTtFK0QxME5FO0lBQWtDLGlDQUFpQztFL0Q2ME5yRTtFK0QzME5FO0lBQWdDLDJCQUEyQjtFL0Q4ME43RDtFK0Q3ME5FO0lBQWdDLGlDQUFpQztFL0RnMU5uRTtFK0QvME5FO0lBQWdDLCtCQUErQjtFL0RrMU5qRTtFK0RqMU5FO0lBQWdDLDZCQUE2QjtFL0RvMU4vRDtFK0RuMU5FO0lBQWdDLCtCQUErQjtFL0RzMU5qRTtFK0RyMU5FO0lBQWdDLDhCQUE4QjtFL0R3MU5oRTtBQUNGOztBZTcwTkk7RWdEbERBO0lBQWdDLDhCQUE4QjtFL0RvNE5oRTtFK0RuNE5FO0lBQWdDLGlDQUFpQztFL0RzNE5uRTtFK0RyNE5FO0lBQWdDLHNDQUFzQztFL0R3NE54RTtFK0R2NE5FO0lBQWdDLHlDQUF5QztFL0QwNE4zRTtFK0R4NE5FO0lBQThCLDBCQUEwQjtFL0QyNE4xRDtFK0QxNE5FO0lBQThCLDRCQUE0QjtFL0Q2NE41RDtFK0Q1NE5FO0lBQThCLGtDQUFrQztFL0QrNE5sRTtFK0Q5NE5FO0lBQThCLHlCQUF5QjtFL0RpNU56RDtFK0RoNU5FO0lBQThCLHVCQUF1QjtFL0RtNU52RDtFK0RsNU5FO0lBQThCLHVCQUF1QjtFL0RxNU52RDtFK0RwNU5FO0lBQThCLHlCQUF5QjtFL0R1NU56RDtFK0R0NU5FO0lBQThCLHlCQUF5QjtFL0R5NU56RDtFK0R2NU5FO0lBQW9DLHNDQUFzQztFL0QwNU41RTtFK0R6NU5FO0lBQW9DLG9DQUFvQztFL0Q0NU4xRTtFK0QzNU5FO0lBQW9DLGtDQUFrQztFL0Q4NU54RTtFK0Q3NU5FO0lBQW9DLHlDQUF5QztFL0RnNk4vRTtFK0QvNU5FO0lBQW9DLHdDQUF3QztFL0RrNk45RTtFK0RoNk5FO0lBQWlDLGtDQUFrQztFL0RtNk5yRTtFK0RsNk5FO0lBQWlDLGdDQUFnQztFL0RxNk5uRTtFK0RwNk5FO0lBQWlDLDhCQUE4QjtFL0R1Nk5qRTtFK0R0Nk5FO0lBQWlDLGdDQUFnQztFL0R5Nk5uRTtFK0R4Nk5FO0lBQWlDLCtCQUErQjtFL0QyNk5sRTtFK0R6Nk5FO0lBQWtDLG9DQUFvQztFL0Q0Nk54RTtFK0QzNk5FO0lBQWtDLGtDQUFrQztFL0Q4Nk50RTtFK0Q3Nk5FO0lBQWtDLGdDQUFnQztFL0RnN05wRTtFK0QvNk5FO0lBQWtDLHVDQUF1QztFL0RrN04zRTtFK0RqN05FO0lBQWtDLHNDQUFzQztFL0RvN04xRTtFK0RuN05FO0lBQWtDLGlDQUFpQztFL0RzN05yRTtFK0RwN05FO0lBQWdDLDJCQUEyQjtFL0R1N043RDtFK0R0N05FO0lBQWdDLGlDQUFpQztFL0R5N05uRTtFK0R4N05FO0lBQWdDLCtCQUErQjtFL0QyN05qRTtFK0QxN05FO0lBQWdDLDZCQUE2QjtFL0Q2N04vRDtFK0Q1N05FO0lBQWdDLCtCQUErQjtFL0QrN05qRTtFK0Q5N05FO0lBQWdDLDhCQUE4QjtFL0RpOE5oRTtBQUNGOztBZXQ3Tkk7RWdEbERBO0lBQWdDLDhCQUE4QjtFL0Q2K05oRTtFK0Q1K05FO0lBQWdDLGlDQUFpQztFL0QrK05uRTtFK0Q5K05FO0lBQWdDLHNDQUFzQztFL0RpL054RTtFK0RoL05FO0lBQWdDLHlDQUF5QztFL0RtL04zRTtFK0RqL05FO0lBQThCLDBCQUEwQjtFL0RvL04xRDtFK0RuL05FO0lBQThCLDRCQUE0QjtFL0RzL041RDtFK0RyL05FO0lBQThCLGtDQUFrQztFL0R3L05sRTtFK0R2L05FO0lBQThCLHlCQUF5QjtFL0QwL056RDtFK0R6L05FO0lBQThCLHVCQUF1QjtFL0Q0L052RDtFK0QzL05FO0lBQThCLHVCQUF1QjtFL0Q4L052RDtFK0Q3L05FO0lBQThCLHlCQUF5QjtFL0RnZ096RDtFK0QvL05FO0lBQThCLHlCQUF5QjtFL0RrZ096RDtFK0RoZ09FO0lBQW9DLHNDQUFzQztFL0RtZ081RTtFK0RsZ09FO0lBQW9DLG9DQUFvQztFL0RxZ08xRTtFK0RwZ09FO0lBQW9DLGtDQUFrQztFL0R1Z094RTtFK0R0Z09FO0lBQW9DLHlDQUF5QztFL0R5Z08vRTtFK0R4Z09FO0lBQW9DLHdDQUF3QztFL0QyZ085RTtFK0R6Z09FO0lBQWlDLGtDQUFrQztFL0Q0Z09yRTtFK0QzZ09FO0lBQWlDLGdDQUFnQztFL0Q4Z09uRTtFK0Q3Z09FO0lBQWlDLDhCQUE4QjtFL0RnaE9qRTtFK0QvZ09FO0lBQWlDLGdDQUFnQztFL0RraE9uRTtFK0RqaE9FO0lBQWlDLCtCQUErQjtFL0RvaE9sRTtFK0RsaE9FO0lBQWtDLG9DQUFvQztFL0RxaE94RTtFK0RwaE9FO0lBQWtDLGtDQUFrQztFL0R1aE90RTtFK0R0aE9FO0lBQWtDLGdDQUFnQztFL0R5aE9wRTtFK0R4aE9FO0lBQWtDLHVDQUF1QztFL0QyaE8zRTtFK0QxaE9FO0lBQWtDLHNDQUFzQztFL0Q2aE8xRTtFK0Q1aE9FO0lBQWtDLGlDQUFpQztFL0QraE9yRTtFK0Q3aE9FO0lBQWdDLDJCQUEyQjtFL0RnaU83RDtFK0QvaE9FO0lBQWdDLGlDQUFpQztFL0RraU9uRTtFK0RqaU9FO0lBQWdDLCtCQUErQjtFL0RvaU9qRTtFK0RuaU9FO0lBQWdDLDZCQUE2QjtFL0RzaU8vRDtFK0RyaU9FO0lBQWdDLCtCQUErQjtFL0R3aU9qRTtFK0R2aU9FO0lBQWdDLDhCQUE4QjtFL0QwaU9oRTtBQUNGOztBZS9oT0k7RWdEbERBO0lBQWdDLDhCQUE4QjtFL0RzbE9oRTtFK0RybE9FO0lBQWdDLGlDQUFpQztFL0R3bE9uRTtFK0R2bE9FO0lBQWdDLHNDQUFzQztFL0QwbE94RTtFK0R6bE9FO0lBQWdDLHlDQUF5QztFL0Q0bE8zRTtFK0QxbE9FO0lBQThCLDBCQUEwQjtFL0Q2bE8xRDtFK0Q1bE9FO0lBQThCLDRCQUE0QjtFL0QrbE81RDtFK0Q5bE9FO0lBQThCLGtDQUFrQztFL0RpbU9sRTtFK0RobU9FO0lBQThCLHlCQUF5QjtFL0RtbU96RDtFK0RsbU9FO0lBQThCLHVCQUF1QjtFL0RxbU92RDtFK0RwbU9FO0lBQThCLHVCQUF1QjtFL0R1bU92RDtFK0R0bU9FO0lBQThCLHlCQUF5QjtFL0R5bU96RDtFK0R4bU9FO0lBQThCLHlCQUF5QjtFL0QybU96RDtFK0R6bU9FO0lBQW9DLHNDQUFzQztFL0Q0bU81RTtFK0QzbU9FO0lBQW9DLG9DQUFvQztFL0Q4bU8xRTtFK0Q3bU9FO0lBQW9DLGtDQUFrQztFL0Rnbk94RTtFK0QvbU9FO0lBQW9DLHlDQUF5QztFL0Rrbk8vRTtFK0Rqbk9FO0lBQW9DLHdDQUF3QztFL0Rvbk85RTtFK0Rsbk9FO0lBQWlDLGtDQUFrQztFL0Rxbk9yRTtFK0Rwbk9FO0lBQWlDLGdDQUFnQztFL0R1bk9uRTtFK0R0bk9FO0lBQWlDLDhCQUE4QjtFL0R5bk9qRTtFK0R4bk9FO0lBQWlDLGdDQUFnQztFL0Qybk9uRTtFK0Qxbk9FO0lBQWlDLCtCQUErQjtFL0Q2bk9sRTtFK0Qzbk9FO0lBQWtDLG9DQUFvQztFL0Q4bk94RTtFK0Q3bk9FO0lBQWtDLGtDQUFrQztFL0Rnb090RTtFK0Qvbk9FO0lBQWtDLGdDQUFnQztFL0Rrb09wRTtFK0Rqb09FO0lBQWtDLHVDQUF1QztFL0Rvb08zRTtFK0Rub09FO0lBQWtDLHNDQUFzQztFL0Rzb08xRTtFK0Ryb09FO0lBQWtDLGlDQUFpQztFL0R3b09yRTtFK0R0b09FO0lBQWdDLDJCQUEyQjtFL0R5b083RDtFK0R4b09FO0lBQWdDLGlDQUFpQztFL0Qyb09uRTtFK0Qxb09FO0lBQWdDLCtCQUErQjtFL0Q2b09qRTtFK0Q1b09FO0lBQWdDLDZCQUE2QjtFL0Qrb08vRDtFK0Q5b09FO0lBQWdDLCtCQUErQjtFL0RpcE9qRTtFK0RocE9FO0lBQWdDLDhCQUE4QjtFL0RtcE9oRTtBQUNGOztBZ0U5ck9JO0VBQXdCLHNCQUFzQjtBaEVrc09sRDs7QWdFanNPSTtFQUF3Qix1QkFBdUI7QWhFcXNPbkQ7O0FnRXBzT0k7RUFBd0Isc0JBQXNCO0FoRXdzT2xEOztBZXBwT0k7RWlEdERBO0lBQXdCLHNCQUFzQjtFaEUrc09oRDtFZ0U5c09FO0lBQXdCLHVCQUF1QjtFaEVpdE9qRDtFZ0VodE9FO0lBQXdCLHNCQUFzQjtFaEVtdE9oRDtBQUNGOztBZWhxT0k7RWlEdERBO0lBQXdCLHNCQUFzQjtFaEUydE9oRDtFZ0UxdE9FO0lBQXdCLHVCQUF1QjtFaEU2dE9qRDtFZ0U1dE9FO0lBQXdCLHNCQUFzQjtFaEUrdE9oRDtBQUNGOztBZTVxT0k7RWlEdERBO0lBQXdCLHNCQUFzQjtFaEV1dU9oRDtFZ0V0dU9FO0lBQXdCLHVCQUF1QjtFaEV5dU9qRDtFZ0V4dU9FO0lBQXdCLHNCQUFzQjtFaEUydU9oRDtBQUNGOztBZXhyT0k7RWlEdERBO0lBQXdCLHNCQUFzQjtFaEVtdk9oRDtFZ0Vsdk9FO0lBQXdCLHVCQUF1QjtFaEVxdk9qRDtFZ0Vwdk9FO0lBQXdCLHNCQUFzQjtFaEV1dk9oRDtBQUNGOztBaUU3dk9FO0VBQXlCLDJCQUE4QjtBakVpd096RDs7QWlFandPRTtFQUF5Qiw0QkFBOEI7QWpFcXdPekQ7O0FpRXJ3T0U7RUFBeUIsNEJBQThCO0FqRXl3T3pEOztBa0V6d09FO0VBQXNCLHlCQUEyQjtBbEU2d09uRDs7QWtFN3dPRTtFQUFzQiwyQkFBMkI7QWxFaXhPbkQ7O0FtRWh4T0U7RUFBeUIsMkJBQThCO0FuRW94T3pEOztBbUVweE9FO0VBQXlCLDZCQUE4QjtBbkV3eE96RDs7QW1FeHhPRTtFQUF5Qiw2QkFBOEI7QW5FNHhPekQ7O0FtRTV4T0U7RUFBeUIsMEJBQThCO0FuRWd5T3pEOztBbUVoeU9FO0VBQXlCLDJCQUE4QjtBbkVveU96RDs7QW1FL3hPQTtFQUNFLGVBQWU7RUFDZixNQUFNO0VBQ04sUUFBUTtFQUNSLE9BQU87RUFDUCxhL0RpcUJzQztBSmlvTnhDOztBbUUveE9BO0VBQ0UsZUFBZTtFQUNmLFFBQVE7RUFDUixTQUFTO0VBQ1QsT0FBTztFQUNQLGEvRHlwQnNDO0FKeW9OeEM7O0FtRTl4TzhCO0VBRDlCO0lBRUksZ0JBQWdCO0lBQ2hCLE1BQU07SUFDTixhL0RpcEJvQztFSmlwTnRDO0FBQ0Y7O0FvRTV6T0E7RUNFRSxrQkFBa0I7RUFDbEIsVUFBVTtFQUNWLFdBQVc7RUFDWCxVQUFVO0VBQ1YsWUFBWTtFQUNaLGdCQUFnQjtFQUNoQixzQkFBc0I7RUFDdEIsbUJBQW1CO0VBQ25CLFNBQVM7QXJFOHpPWDs7QXFFcHpPRTtFQUVFLGdCQUFnQjtFQUNoQixXQUFXO0VBQ1gsWUFBWTtFQUNaLGlCQUFpQjtFQUNqQixVQUFVO0VBQ1YsbUJBQW1CO0FyRXN6T3ZCOztBc0VuMU9BO0VBQWEsOERBQXFDO0F0RXUxT2xEOztBc0V0MU9BO0VBQVUsd0RBQWtDO0F0RTAxTzVDOztBc0V6MU9BO0VBQWEsdURBQXFDO0F0RTYxT2xEOztBc0U1MU9BO0VBQWUsMkJBQTJCO0F0RWcyTzFDOztBdUUvMU9JO0VBQXVCLHFCQUE0QjtBdkVtMk92RDs7QXVFbjJPSTtFQUF1QixxQkFBNEI7QXZFdTJPdkQ7O0F1RXYyT0k7RUFBdUIscUJBQTRCO0F2RTIyT3ZEOztBdUUzMk9JO0VBQXVCLHNCQUE0QjtBdkUrMk92RDs7QXVFLzJPSTtFQUF1QixzQkFBNEI7QXZFbTNPdkQ7O0F1RW4zT0k7RUFBdUIsc0JBQTRCO0F2RXUzT3ZEOztBdUV2M09JO0VBQXVCLHNCQUE0QjtBdkUyM092RDs7QXVFMzNPSTtFQUF1QixzQkFBNEI7QXZFKzNPdkQ7O0F1RS8zT0k7RUFBdUIsdUJBQTRCO0F2RW00T3ZEOztBdUVuNE9JO0VBQXVCLHVCQUE0QjtBdkV1NE92RDs7QXVFbjRPQTtFQUFVLDBCQUEwQjtBdkV1NE9wQzs7QXVFdDRPQTtFQUFVLDJCQUEyQjtBdkUwNE9yQzs7QXVFdDRPQTtFQUFjLDJCQUEyQjtBdkUwNE96Qzs7QXVFejRPQTtFQUFjLDRCQUE0QjtBdkU2NE8xQzs7QXVFMzRPQTtFQUFVLHVCQUF1QjtBdkUrNE9qQzs7QXVFOTRPQTtFQUFVLHdCQUF3QjtBdkVrNU9sQzs7QXdFMzVPUTtFQUFnQyxvQkFBNEI7QXhFKzVPcEU7O0F3RTk1T1E7O0VBRUUsd0JBQW9DO0F4RWk2TzlDOztBd0UvNU9ROztFQUVFLDBCQUF3QztBeEVrNk9sRDs7QXdFaDZPUTs7RUFFRSwyQkFBMEM7QXhFbTZPcEQ7O0F3RWo2T1E7O0VBRUUseUJBQXNDO0F4RW82T2hEOztBd0VuN09RO0VBQWdDLDBCQUE0QjtBeEV1N09wRTs7QXdFdDdPUTs7RUFFRSw4QkFBb0M7QXhFeTdPOUM7O0F3RXY3T1E7O0VBRUUsZ0NBQXdDO0F4RTA3T2xEOztBd0V4N09ROztFQUVFLGlDQUEwQztBeEUyN09wRDs7QXdFejdPUTs7RUFFRSwrQkFBc0M7QXhFNDdPaEQ7O0F3RTM4T1E7RUFBZ0MseUJBQTRCO0F4RSs4T3BFOztBd0U5OE9ROztFQUVFLDZCQUFvQztBeEVpOU85Qzs7QXdFLzhPUTs7RUFFRSwrQkFBd0M7QXhFazlPbEQ7O0F3RWg5T1E7O0VBRUUsZ0NBQTBDO0F4RW05T3BEOztBd0VqOU9ROztFQUVFLDhCQUFzQztBeEVvOU9oRDs7QXdFbitPUTtFQUFnQyx1QkFBNEI7QXhFdStPcEU7O0F3RXQrT1E7O0VBRUUsMkJBQW9DO0F4RXkrTzlDOztBd0V2K09ROztFQUVFLDZCQUF3QztBeEUwK09sRDs7QXdFeCtPUTs7RUFFRSw4QkFBMEM7QXhFMitPcEQ7O0F3RXorT1E7O0VBRUUsNEJBQXNDO0F4RTQrT2hEOztBd0UzL09RO0VBQWdDLHlCQUE0QjtBeEUrL09wRTs7QXdFOS9PUTs7RUFFRSw2QkFBb0M7QXhFaWdQOUM7O0F3RS8vT1E7O0VBRUUsK0JBQXdDO0F4RWtnUGxEOztBd0VoZ1BROztFQUVFLGdDQUEwQztBeEVtZ1BwRDs7QXdFamdQUTs7RUFFRSw4QkFBc0M7QXhFb2dQaEQ7O0F3RW5oUFE7RUFBZ0MsdUJBQTRCO0F4RXVoUHBFOztBd0V0aFBROztFQUVFLDJCQUFvQztBeEV5aFA5Qzs7QXdFdmhQUTs7RUFFRSw2QkFBd0M7QXhFMGhQbEQ7O0F3RXhoUFE7O0VBRUUsOEJBQTBDO0F4RTJoUHBEOztBd0V6aFBROztFQUVFLDRCQUFzQztBeEU0aFBoRDs7QXdFM2lQUTtFQUFnQyxxQkFBNEI7QXhFK2lQcEU7O0F3RTlpUFE7O0VBRUUseUJBQW9DO0F4RWlqUDlDOztBd0UvaVBROztFQUVFLDJCQUF3QztBeEVralBsRDs7QXdFaGpQUTs7RUFFRSw0QkFBMEM7QXhFbWpQcEQ7O0F3RWpqUFE7O0VBRUUsMEJBQXNDO0F4RW9qUGhEOztBd0Vua1BRO0VBQWdDLDJCQUE0QjtBeEV1a1BwRTs7QXdFdGtQUTs7RUFFRSwrQkFBb0M7QXhFeWtQOUM7O0F3RXZrUFE7O0VBRUUsaUNBQXdDO0F4RTBrUGxEOztBd0V4a1BROztFQUVFLGtDQUEwQztBeEUya1BwRDs7QXdFemtQUTs7RUFFRSxnQ0FBc0M7QXhFNGtQaEQ7O0F3RTNsUFE7RUFBZ0MsMEJBQTRCO0F4RStsUHBFOztBd0U5bFBROztFQUVFLDhCQUFvQztBeEVpbVA5Qzs7QXdFL2xQUTs7RUFFRSxnQ0FBd0M7QXhFa21QbEQ7O0F3RWhtUFE7O0VBRUUsaUNBQTBDO0F4RW1tUHBEOztBd0VqbVBROztFQUVFLCtCQUFzQztBeEVvbVBoRDs7QXdFbm5QUTtFQUFnQyx3QkFBNEI7QXhFdW5QcEU7O0F3RXRuUFE7O0VBRUUsNEJBQW9DO0F4RXluUDlDOztBd0V2blBROztFQUVFLDhCQUF3QztBeEUwblBsRDs7QXdFeG5QUTs7RUFFRSwrQkFBMEM7QXhFMm5QcEQ7O0F3RXpuUFE7O0VBRUUsNkJBQXNDO0F4RTRuUGhEOztBd0Uzb1BRO0VBQWdDLDBCQUE0QjtBeEUrb1BwRTs7QXdFOW9QUTs7RUFFRSw4QkFBb0M7QXhFaXBQOUM7O0F3RS9vUFE7O0VBRUUsZ0NBQXdDO0F4RWtwUGxEOztBd0VocFBROztFQUVFLGlDQUEwQztBeEVtcFBwRDs7QXdFanBQUTs7RUFFRSwrQkFBc0M7QXhFb3BQaEQ7O0F3RW5xUFE7RUFBZ0Msd0JBQTRCO0F4RXVxUHBFOztBd0V0cVBROztFQUVFLDRCQUFvQztBeEV5cVA5Qzs7QXdFdnFQUTs7RUFFRSw4QkFBd0M7QXhFMHFQbEQ7O0F3RXhxUFE7O0VBRUUsK0JBQTBDO0F4RTJxUHBEOztBd0V6cVBROztFQUVFLDZCQUFzQztBeEU0cVBoRDs7QXdFcHFQUTtFQUF3QiwyQkFBMkI7QXhFd3FQM0Q7O0F3RXZxUFE7O0VBRUUsK0JBQStCO0F4RTBxUHpDOztBd0V4cVBROztFQUVFLGlDQUFpQztBeEUycVAzQzs7QXdFenFQUTs7RUFFRSxrQ0FBa0M7QXhFNHFQNUM7O0F3RTFxUFE7O0VBRUUsZ0NBQWdDO0F4RTZxUDFDOztBd0U1clBRO0VBQXdCLDBCQUEyQjtBeEVnc1AzRDs7QXdFL3JQUTs7RUFFRSw4QkFBK0I7QXhFa3NQekM7O0F3RWhzUFE7O0VBRUUsZ0NBQWlDO0F4RW1zUDNDOztBd0Vqc1BROztFQUVFLGlDQUFrQztBeEVvc1A1Qzs7QXdFbHNQUTs7RUFFRSwrQkFBZ0M7QXhFcXNQMUM7O0F3RXB0UFE7RUFBd0Isd0JBQTJCO0F4RXd0UDNEOztBd0V2dFBROztFQUVFLDRCQUErQjtBeEUwdFB6Qzs7QXdFeHRQUTs7RUFFRSw4QkFBaUM7QXhFMnRQM0M7O0F3RXp0UFE7O0VBRUUsK0JBQWtDO0F4RTR0UDVDOztBd0UxdFBROztFQUVFLDZCQUFnQztBeEU2dFAxQzs7QXdFNXVQUTtFQUF3QiwwQkFBMkI7QXhFZ3ZQM0Q7O0F3RS91UFE7O0VBRUUsOEJBQStCO0F4RWt2UHpDOztBd0VodlBROztFQUVFLGdDQUFpQztBeEVtdlAzQzs7QXdFanZQUTs7RUFFRSxpQ0FBa0M7QXhFb3ZQNUM7O0F3RWx2UFE7O0VBRUUsK0JBQWdDO0F4RXF2UDFDOztBd0Vwd1BRO0VBQXdCLHdCQUEyQjtBeEV3d1AzRDs7QXdFdndQUTs7RUFFRSw0QkFBK0I7QXhFMHdQekM7O0F3RXh3UFE7O0VBRUUsOEJBQWlDO0F4RTJ3UDNDOztBd0V6d1BROztFQUVFLCtCQUFrQztBeEU0d1A1Qzs7QXdFMXdQUTs7RUFFRSw2QkFBZ0M7QXhFNndQMUM7O0F3RXZ3UEk7RUFBbUIsdUJBQXVCO0F4RTJ3UDlDOztBd0Uxd1BJOztFQUVFLDJCQUEyQjtBeEU2d1BqQzs7QXdFM3dQSTs7RUFFRSw2QkFBNkI7QXhFOHdQbkM7O0F3RTV3UEk7O0VBRUUsOEJBQThCO0F4RSt3UHBDOztBd0U3d1BJOztFQUVFLDRCQUE0QjtBeEVneFBsQzs7QWV6eFBJO0V5RGxESTtJQUFnQyxvQkFBNEI7RXhFZzFQbEU7RXdFLzBQTTs7SUFFRSx3QkFBb0M7RXhFaTFQNUM7RXdFLzBQTTs7SUFFRSwwQkFBd0M7RXhFaTFQaEQ7RXdFLzBQTTs7SUFFRSwyQkFBMEM7RXhFaTFQbEQ7RXdFLzBQTTs7SUFFRSx5QkFBc0M7RXhFaTFQOUM7RXdFaDJQTTtJQUFnQywwQkFBNEI7RXhFbTJQbEU7RXdFbDJQTTs7SUFFRSw4QkFBb0M7RXhFbzJQNUM7RXdFbDJQTTs7SUFFRSxnQ0FBd0M7RXhFbzJQaEQ7RXdFbDJQTTs7SUFFRSxpQ0FBMEM7RXhFbzJQbEQ7RXdFbDJQTTs7SUFFRSwrQkFBc0M7RXhFbzJQOUM7RXdFbjNQTTtJQUFnQyx5QkFBNEI7RXhFczNQbEU7RXdFcjNQTTs7SUFFRSw2QkFBb0M7RXhFdTNQNUM7RXdFcjNQTTs7SUFFRSwrQkFBd0M7RXhFdTNQaEQ7RXdFcjNQTTs7SUFFRSxnQ0FBMEM7RXhFdTNQbEQ7RXdFcjNQTTs7SUFFRSw4QkFBc0M7RXhFdTNQOUM7RXdFdDRQTTtJQUFnQyx1QkFBNEI7RXhFeTRQbEU7RXdFeDRQTTs7SUFFRSwyQkFBb0M7RXhFMDRQNUM7RXdFeDRQTTs7SUFFRSw2QkFBd0M7RXhFMDRQaEQ7RXdFeDRQTTs7SUFFRSw4QkFBMEM7RXhFMDRQbEQ7RXdFeDRQTTs7SUFFRSw0QkFBc0M7RXhFMDRQOUM7RXdFejVQTTtJQUFnQyx5QkFBNEI7RXhFNDVQbEU7RXdFMzVQTTs7SUFFRSw2QkFBb0M7RXhFNjVQNUM7RXdFMzVQTTs7SUFFRSwrQkFBd0M7RXhFNjVQaEQ7RXdFMzVQTTs7SUFFRSxnQ0FBMEM7RXhFNjVQbEQ7RXdFMzVQTTs7SUFFRSw4QkFBc0M7RXhFNjVQOUM7RXdFNTZQTTtJQUFnQyx1QkFBNEI7RXhFKzZQbEU7RXdFOTZQTTs7SUFFRSwyQkFBb0M7RXhFZzdQNUM7RXdFOTZQTTs7SUFFRSw2QkFBd0M7RXhFZzdQaEQ7RXdFOTZQTTs7SUFFRSw4QkFBMEM7RXhFZzdQbEQ7RXdFOTZQTTs7SUFFRSw0QkFBc0M7RXhFZzdQOUM7RXdFLzdQTTtJQUFnQyxxQkFBNEI7RXhFazhQbEU7RXdFajhQTTs7SUFFRSx5QkFBb0M7RXhFbThQNUM7RXdFajhQTTs7SUFFRSwyQkFBd0M7RXhFbThQaEQ7RXdFajhQTTs7SUFFRSw0QkFBMEM7RXhFbThQbEQ7RXdFajhQTTs7SUFFRSwwQkFBc0M7RXhFbThQOUM7RXdFbDlQTTtJQUFnQywyQkFBNEI7RXhFcTlQbEU7RXdFcDlQTTs7SUFFRSwrQkFBb0M7RXhFczlQNUM7RXdFcDlQTTs7SUFFRSxpQ0FBd0M7RXhFczlQaEQ7RXdFcDlQTTs7SUFFRSxrQ0FBMEM7RXhFczlQbEQ7RXdFcDlQTTs7SUFFRSxnQ0FBc0M7RXhFczlQOUM7RXdFcitQTTtJQUFnQywwQkFBNEI7RXhFdytQbEU7RXdFditQTTs7SUFFRSw4QkFBb0M7RXhFeStQNUM7RXdFditQTTs7SUFFRSxnQ0FBd0M7RXhFeStQaEQ7RXdFditQTTs7SUFFRSxpQ0FBMEM7RXhFeStQbEQ7RXdFditQTTs7SUFFRSwrQkFBc0M7RXhFeStQOUM7RXdFeC9QTTtJQUFnQyx3QkFBNEI7RXhFMi9QbEU7RXdFMS9QTTs7SUFFRSw0QkFBb0M7RXhFNC9QNUM7RXdFMS9QTTs7SUFFRSw4QkFBd0M7RXhFNC9QaEQ7RXdFMS9QTTs7SUFFRSwrQkFBMEM7RXhFNC9QbEQ7RXdFMS9QTTs7SUFFRSw2QkFBc0M7RXhFNC9QOUM7RXdFM2dRTTtJQUFnQywwQkFBNEI7RXhFOGdRbEU7RXdFN2dRTTs7SUFFRSw4QkFBb0M7RXhFK2dRNUM7RXdFN2dRTTs7SUFFRSxnQ0FBd0M7RXhFK2dRaEQ7RXdFN2dRTTs7SUFFRSxpQ0FBMEM7RXhFK2dRbEQ7RXdFN2dRTTs7SUFFRSwrQkFBc0M7RXhFK2dROUM7RXdFOWhRTTtJQUFnQyx3QkFBNEI7RXhFaWlRbEU7RXdFaGlRTTs7SUFFRSw0QkFBb0M7RXhFa2lRNUM7RXdFaGlRTTs7SUFFRSw4QkFBd0M7RXhFa2lRaEQ7RXdFaGlRTTs7SUFFRSwrQkFBMEM7RXhFa2lRbEQ7RXdFaGlRTTs7SUFFRSw2QkFBc0M7RXhFa2lROUM7RXdFMWhRTTtJQUF3QiwyQkFBMkI7RXhFNmhRekQ7RXdFNWhRTTs7SUFFRSwrQkFBK0I7RXhFOGhRdkM7RXdFNWhRTTs7SUFFRSxpQ0FBaUM7RXhFOGhRekM7RXdFNWhRTTs7SUFFRSxrQ0FBa0M7RXhFOGhRMUM7RXdFNWhRTTs7SUFFRSxnQ0FBZ0M7RXhFOGhReEM7RXdFN2lRTTtJQUF3QiwwQkFBMkI7RXhFZ2pRekQ7RXdFL2lRTTs7SUFFRSw4QkFBK0I7RXhFaWpRdkM7RXdFL2lRTTs7SUFFRSxnQ0FBaUM7RXhFaWpRekM7RXdFL2lRTTs7SUFFRSxpQ0FBa0M7RXhFaWpRMUM7RXdFL2lRTTs7SUFFRSwrQkFBZ0M7RXhFaWpReEM7RXdFaGtRTTtJQUF3Qix3QkFBMkI7RXhFbWtRekQ7RXdFbGtRTTs7SUFFRSw0QkFBK0I7RXhFb2tRdkM7RXdFbGtRTTs7SUFFRSw4QkFBaUM7RXhFb2tRekM7RXdFbGtRTTs7SUFFRSwrQkFBa0M7RXhFb2tRMUM7RXdFbGtRTTs7SUFFRSw2QkFBZ0M7RXhFb2tReEM7RXdFbmxRTTtJQUF3QiwwQkFBMkI7RXhFc2xRekQ7RXdFcmxRTTs7SUFFRSw4QkFBK0I7RXhFdWxRdkM7RXdFcmxRTTs7SUFFRSxnQ0FBaUM7RXhFdWxRekM7RXdFcmxRTTs7SUFFRSxpQ0FBa0M7RXhFdWxRMUM7RXdFcmxRTTs7SUFFRSwrQkFBZ0M7RXhFdWxReEM7RXdFdG1RTTtJQUF3Qix3QkFBMkI7RXhFeW1RekQ7RXdFeG1RTTs7SUFFRSw0QkFBK0I7RXhFMG1RdkM7RXdFeG1RTTs7SUFFRSw4QkFBaUM7RXhFMG1RekM7RXdFeG1RTTs7SUFFRSwrQkFBa0M7RXhFMG1RMUM7RXdFeG1RTTs7SUFFRSw2QkFBZ0M7RXhFMG1ReEM7RXdFcG1RRTtJQUFtQix1QkFBdUI7RXhFdW1RNUM7RXdFdG1RRTs7SUFFRSwyQkFBMkI7RXhFd21RL0I7RXdFdG1RRTs7SUFFRSw2QkFBNkI7RXhFd21RakM7RXdFdG1RRTs7SUFFRSw4QkFBOEI7RXhFd21RbEM7RXdFdG1RRTs7SUFFRSw0QkFBNEI7RXhFd21RaEM7QUFDRjs7QWVsblFJO0V5RGxESTtJQUFnQyxvQkFBNEI7RXhFeXFRbEU7RXdFeHFRTTs7SUFFRSx3QkFBb0M7RXhFMHFRNUM7RXdFeHFRTTs7SUFFRSwwQkFBd0M7RXhFMHFRaEQ7RXdFeHFRTTs7SUFFRSwyQkFBMEM7RXhFMHFRbEQ7RXdFeHFRTTs7SUFFRSx5QkFBc0M7RXhFMHFROUM7RXdFenJRTTtJQUFnQywwQkFBNEI7RXhFNHJRbEU7RXdFM3JRTTs7SUFFRSw4QkFBb0M7RXhFNnJRNUM7RXdFM3JRTTs7SUFFRSxnQ0FBd0M7RXhFNnJRaEQ7RXdFM3JRTTs7SUFFRSxpQ0FBMEM7RXhFNnJRbEQ7RXdFM3JRTTs7SUFFRSwrQkFBc0M7RXhFNnJROUM7RXdFNXNRTTtJQUFnQyx5QkFBNEI7RXhFK3NRbEU7RXdFOXNRTTs7SUFFRSw2QkFBb0M7RXhFZ3RRNUM7RXdFOXNRTTs7SUFFRSwrQkFBd0M7RXhFZ3RRaEQ7RXdFOXNRTTs7SUFFRSxnQ0FBMEM7RXhFZ3RRbEQ7RXdFOXNRTTs7SUFFRSw4QkFBc0M7RXhFZ3RROUM7RXdFL3RRTTtJQUFnQyx1QkFBNEI7RXhFa3VRbEU7RXdFanVRTTs7SUFFRSwyQkFBb0M7RXhFbXVRNUM7RXdFanVRTTs7SUFFRSw2QkFBd0M7RXhFbXVRaEQ7RXdFanVRTTs7SUFFRSw4QkFBMEM7RXhFbXVRbEQ7RXdFanVRTTs7SUFFRSw0QkFBc0M7RXhFbXVROUM7RXdFbHZRTTtJQUFnQyx5QkFBNEI7RXhFcXZRbEU7RXdFcHZRTTs7SUFFRSw2QkFBb0M7RXhFc3ZRNUM7RXdFcHZRTTs7SUFFRSwrQkFBd0M7RXhFc3ZRaEQ7RXdFcHZRTTs7SUFFRSxnQ0FBMEM7RXhFc3ZRbEQ7RXdFcHZRTTs7SUFFRSw4QkFBc0M7RXhFc3ZROUM7RXdFcndRTTtJQUFnQyx1QkFBNEI7RXhFd3dRbEU7RXdFdndRTTs7SUFFRSwyQkFBb0M7RXhFeXdRNUM7RXdFdndRTTs7SUFFRSw2QkFBd0M7RXhFeXdRaEQ7RXdFdndRTTs7SUFFRSw4QkFBMEM7RXhFeXdRbEQ7RXdFdndRTTs7SUFFRSw0QkFBc0M7RXhFeXdROUM7RXdFeHhRTTtJQUFnQyxxQkFBNEI7RXhFMnhRbEU7RXdFMXhRTTs7SUFFRSx5QkFBb0M7RXhFNHhRNUM7RXdFMXhRTTs7SUFFRSwyQkFBd0M7RXhFNHhRaEQ7RXdFMXhRTTs7SUFFRSw0QkFBMEM7RXhFNHhRbEQ7RXdFMXhRTTs7SUFFRSwwQkFBc0M7RXhFNHhROUM7RXdFM3lRTTtJQUFnQywyQkFBNEI7RXhFOHlRbEU7RXdFN3lRTTs7SUFFRSwrQkFBb0M7RXhFK3lRNUM7RXdFN3lRTTs7SUFFRSxpQ0FBd0M7RXhFK3lRaEQ7RXdFN3lRTTs7SUFFRSxrQ0FBMEM7RXhFK3lRbEQ7RXdFN3lRTTs7SUFFRSxnQ0FBc0M7RXhFK3lROUM7RXdFOXpRTTtJQUFnQywwQkFBNEI7RXhFaTBRbEU7RXdFaDBRTTs7SUFFRSw4QkFBb0M7RXhFazBRNUM7RXdFaDBRTTs7SUFFRSxnQ0FBd0M7RXhFazBRaEQ7RXdFaDBRTTs7SUFFRSxpQ0FBMEM7RXhFazBRbEQ7RXdFaDBRTTs7SUFFRSwrQkFBc0M7RXhFazBROUM7RXdFajFRTTtJQUFnQyx3QkFBNEI7RXhFbzFRbEU7RXdFbjFRTTs7SUFFRSw0QkFBb0M7RXhFcTFRNUM7RXdFbjFRTTs7SUFFRSw4QkFBd0M7RXhFcTFRaEQ7RXdFbjFRTTs7SUFFRSwrQkFBMEM7RXhFcTFRbEQ7RXdFbjFRTTs7SUFFRSw2QkFBc0M7RXhFcTFROUM7RXdFcDJRTTtJQUFnQywwQkFBNEI7RXhFdTJRbEU7RXdFdDJRTTs7SUFFRSw4QkFBb0M7RXhFdzJRNUM7RXdFdDJRTTs7SUFFRSxnQ0FBd0M7RXhFdzJRaEQ7RXdFdDJRTTs7SUFFRSxpQ0FBMEM7RXhFdzJRbEQ7RXdFdDJRTTs7SUFFRSwrQkFBc0M7RXhFdzJROUM7RXdFdjNRTTtJQUFnQyx3QkFBNEI7RXhFMDNRbEU7RXdFejNRTTs7SUFFRSw0QkFBb0M7RXhFMjNRNUM7RXdFejNRTTs7SUFFRSw4QkFBd0M7RXhFMjNRaEQ7RXdFejNRTTs7SUFFRSwrQkFBMEM7RXhFMjNRbEQ7RXdFejNRTTs7SUFFRSw2QkFBc0M7RXhFMjNROUM7RXdFbjNRTTtJQUF3QiwyQkFBMkI7RXhFczNRekQ7RXdFcjNRTTs7SUFFRSwrQkFBK0I7RXhFdTNRdkM7RXdFcjNRTTs7SUFFRSxpQ0FBaUM7RXhFdTNRekM7RXdFcjNRTTs7SUFFRSxrQ0FBa0M7RXhFdTNRMUM7RXdFcjNRTTs7SUFFRSxnQ0FBZ0M7RXhFdTNReEM7RXdFdDRRTTtJQUF3QiwwQkFBMkI7RXhFeTRRekQ7RXdFeDRRTTs7SUFFRSw4QkFBK0I7RXhFMDRRdkM7RXdFeDRRTTs7SUFFRSxnQ0FBaUM7RXhFMDRRekM7RXdFeDRRTTs7SUFFRSxpQ0FBa0M7RXhFMDRRMUM7RXdFeDRRTTs7SUFFRSwrQkFBZ0M7RXhFMDRReEM7RXdFejVRTTtJQUF3Qix3QkFBMkI7RXhFNDVRekQ7RXdFMzVRTTs7SUFFRSw0QkFBK0I7RXhFNjVRdkM7RXdFMzVRTTs7SUFFRSw4QkFBaUM7RXhFNjVRekM7RXdFMzVRTTs7SUFFRSwrQkFBa0M7RXhFNjVRMUM7RXdFMzVRTTs7SUFFRSw2QkFBZ0M7RXhFNjVReEM7RXdFNTZRTTtJQUF3QiwwQkFBMkI7RXhFKzZRekQ7RXdFOTZRTTs7SUFFRSw4QkFBK0I7RXhFZzdRdkM7RXdFOTZRTTs7SUFFRSxnQ0FBaUM7RXhFZzdRekM7RXdFOTZRTTs7SUFFRSxpQ0FBa0M7RXhFZzdRMUM7RXdFOTZRTTs7SUFFRSwrQkFBZ0M7RXhFZzdReEM7RXdFLzdRTTtJQUF3Qix3QkFBMkI7RXhFazhRekQ7RXdFajhRTTs7SUFFRSw0QkFBK0I7RXhFbThRdkM7RXdFajhRTTs7SUFFRSw4QkFBaUM7RXhFbThRekM7RXdFajhRTTs7SUFFRSwrQkFBa0M7RXhFbThRMUM7RXdFajhRTTs7SUFFRSw2QkFBZ0M7RXhFbThReEM7RXdFNzdRRTtJQUFtQix1QkFBdUI7RXhFZzhRNUM7RXdFLzdRRTs7SUFFRSwyQkFBMkI7RXhFaThRL0I7RXdFLzdRRTs7SUFFRSw2QkFBNkI7RXhFaThRakM7RXdFLzdRRTs7SUFFRSw4QkFBOEI7RXhFaThRbEM7RXdFLzdRRTs7SUFFRSw0QkFBNEI7RXhFaThRaEM7QUFDRjs7QWUzOFFJO0V5RGxESTtJQUFnQyxvQkFBNEI7RXhFa2dSbEU7RXdFamdSTTs7SUFFRSx3QkFBb0M7RXhFbWdSNUM7RXdFamdSTTs7SUFFRSwwQkFBd0M7RXhFbWdSaEQ7RXdFamdSTTs7SUFFRSwyQkFBMEM7RXhFbWdSbEQ7RXdFamdSTTs7SUFFRSx5QkFBc0M7RXhFbWdSOUM7RXdFbGhSTTtJQUFnQywwQkFBNEI7RXhFcWhSbEU7RXdFcGhSTTs7SUFFRSw4QkFBb0M7RXhFc2hSNUM7RXdFcGhSTTs7SUFFRSxnQ0FBd0M7RXhFc2hSaEQ7RXdFcGhSTTs7SUFFRSxpQ0FBMEM7RXhFc2hSbEQ7RXdFcGhSTTs7SUFFRSwrQkFBc0M7RXhFc2hSOUM7RXdFcmlSTTtJQUFnQyx5QkFBNEI7RXhFd2lSbEU7RXdFdmlSTTs7SUFFRSw2QkFBb0M7RXhFeWlSNUM7RXdFdmlSTTs7SUFFRSwrQkFBd0M7RXhFeWlSaEQ7RXdFdmlSTTs7SUFFRSxnQ0FBMEM7RXhFeWlSbEQ7RXdFdmlSTTs7SUFFRSw4QkFBc0M7RXhFeWlSOUM7RXdFeGpSTTtJQUFnQyx1QkFBNEI7RXhFMmpSbEU7RXdFMWpSTTs7SUFFRSwyQkFBb0M7RXhFNGpSNUM7RXdFMWpSTTs7SUFFRSw2QkFBd0M7RXhFNGpSaEQ7RXdFMWpSTTs7SUFFRSw4QkFBMEM7RXhFNGpSbEQ7RXdFMWpSTTs7SUFFRSw0QkFBc0M7RXhFNGpSOUM7RXdFM2tSTTtJQUFnQyx5QkFBNEI7RXhFOGtSbEU7RXdFN2tSTTs7SUFFRSw2QkFBb0M7RXhFK2tSNUM7RXdFN2tSTTs7SUFFRSwrQkFBd0M7RXhFK2tSaEQ7RXdFN2tSTTs7SUFFRSxnQ0FBMEM7RXhFK2tSbEQ7RXdFN2tSTTs7SUFFRSw4QkFBc0M7RXhFK2tSOUM7RXdFOWxSTTtJQUFnQyx1QkFBNEI7RXhFaW1SbEU7RXdFaG1STTs7SUFFRSwyQkFBb0M7RXhFa21SNUM7RXdFaG1STTs7SUFFRSw2QkFBd0M7RXhFa21SaEQ7RXdFaG1STTs7SUFFRSw4QkFBMEM7RXhFa21SbEQ7RXdFaG1STTs7SUFFRSw0QkFBc0M7RXhFa21SOUM7RXdFam5STTtJQUFnQyxxQkFBNEI7RXhFb25SbEU7RXdFbm5STTs7SUFFRSx5QkFBb0M7RXhFcW5SNUM7RXdFbm5STTs7SUFFRSwyQkFBd0M7RXhFcW5SaEQ7RXdFbm5STTs7SUFFRSw0QkFBMEM7RXhFcW5SbEQ7RXdFbm5STTs7SUFFRSwwQkFBc0M7RXhFcW5SOUM7RXdFcG9STTtJQUFnQywyQkFBNEI7RXhFdW9SbEU7RXdFdG9STTs7SUFFRSwrQkFBb0M7RXhFd29SNUM7RXdFdG9STTs7SUFFRSxpQ0FBd0M7RXhFd29SaEQ7RXdFdG9STTs7SUFFRSxrQ0FBMEM7RXhFd29SbEQ7RXdFdG9STTs7SUFFRSxnQ0FBc0M7RXhFd29SOUM7RXdFdnBSTTtJQUFnQywwQkFBNEI7RXhFMHBSbEU7RXdFenBSTTs7SUFFRSw4QkFBb0M7RXhFMnBSNUM7RXdFenBSTTs7SUFFRSxnQ0FBd0M7RXhFMnBSaEQ7RXdFenBSTTs7SUFFRSxpQ0FBMEM7RXhFMnBSbEQ7RXdFenBSTTs7SUFFRSwrQkFBc0M7RXhFMnBSOUM7RXdFMXFSTTtJQUFnQyx3QkFBNEI7RXhFNnFSbEU7RXdFNXFSTTs7SUFFRSw0QkFBb0M7RXhFOHFSNUM7RXdFNXFSTTs7SUFFRSw4QkFBd0M7RXhFOHFSaEQ7RXdFNXFSTTs7SUFFRSwrQkFBMEM7RXhFOHFSbEQ7RXdFNXFSTTs7SUFFRSw2QkFBc0M7RXhFOHFSOUM7RXdFN3JSTTtJQUFnQywwQkFBNEI7RXhFZ3NSbEU7RXdFL3JSTTs7SUFFRSw4QkFBb0M7RXhFaXNSNUM7RXdFL3JSTTs7SUFFRSxnQ0FBd0M7RXhFaXNSaEQ7RXdFL3JSTTs7SUFFRSxpQ0FBMEM7RXhFaXNSbEQ7RXdFL3JSTTs7SUFFRSwrQkFBc0M7RXhFaXNSOUM7RXdFaHRSTTtJQUFnQyx3QkFBNEI7RXhFbXRSbEU7RXdFbHRSTTs7SUFFRSw0QkFBb0M7RXhFb3RSNUM7RXdFbHRSTTs7SUFFRSw4QkFBd0M7RXhFb3RSaEQ7RXdFbHRSTTs7SUFFRSwrQkFBMEM7RXhFb3RSbEQ7RXdFbHRSTTs7SUFFRSw2QkFBc0M7RXhFb3RSOUM7RXdFNXNSTTtJQUF3QiwyQkFBMkI7RXhFK3NSekQ7RXdFOXNSTTs7SUFFRSwrQkFBK0I7RXhFZ3RSdkM7RXdFOXNSTTs7SUFFRSxpQ0FBaUM7RXhFZ3RSekM7RXdFOXNSTTs7SUFFRSxrQ0FBa0M7RXhFZ3RSMUM7RXdFOXNSTTs7SUFFRSxnQ0FBZ0M7RXhFZ3RSeEM7RXdFL3RSTTtJQUF3QiwwQkFBMkI7RXhFa3VSekQ7RXdFanVSTTs7SUFFRSw4QkFBK0I7RXhFbXVSdkM7RXdFanVSTTs7SUFFRSxnQ0FBaUM7RXhFbXVSekM7RXdFanVSTTs7SUFFRSxpQ0FBa0M7RXhFbXVSMUM7RXdFanVSTTs7SUFFRSwrQkFBZ0M7RXhFbXVSeEM7RXdFbHZSTTtJQUF3Qix3QkFBMkI7RXhFcXZSekQ7RXdFcHZSTTs7SUFFRSw0QkFBK0I7RXhFc3ZSdkM7RXdFcHZSTTs7SUFFRSw4QkFBaUM7RXhFc3ZSekM7RXdFcHZSTTs7SUFFRSwrQkFBa0M7RXhFc3ZSMUM7RXdFcHZSTTs7SUFFRSw2QkFBZ0M7RXhFc3ZSeEM7RXdFcndSTTtJQUF3QiwwQkFBMkI7RXhFd3dSekQ7RXdFdndSTTs7SUFFRSw4QkFBK0I7RXhFeXdSdkM7RXdFdndSTTs7SUFFRSxnQ0FBaUM7RXhFeXdSekM7RXdFdndSTTs7SUFFRSxpQ0FBa0M7RXhFeXdSMUM7RXdFdndSTTs7SUFFRSwrQkFBZ0M7RXhFeXdSeEM7RXdFeHhSTTtJQUF3Qix3QkFBMkI7RXhFMnhSekQ7RXdFMXhSTTs7SUFFRSw0QkFBK0I7RXhFNHhSdkM7RXdFMXhSTTs7SUFFRSw4QkFBaUM7RXhFNHhSekM7RXdFMXhSTTs7SUFFRSwrQkFBa0M7RXhFNHhSMUM7RXdFMXhSTTs7SUFFRSw2QkFBZ0M7RXhFNHhSeEM7RXdFdHhSRTtJQUFtQix1QkFBdUI7RXhFeXhSNUM7RXdFeHhSRTs7SUFFRSwyQkFBMkI7RXhFMHhSL0I7RXdFeHhSRTs7SUFFRSw2QkFBNkI7RXhFMHhSakM7RXdFeHhSRTs7SUFFRSw4QkFBOEI7RXhFMHhSbEM7RXdFeHhSRTs7SUFFRSw0QkFBNEI7RXhFMHhSaEM7QUFDRjs7QWVweVJJO0V5RGxESTtJQUFnQyxvQkFBNEI7RXhFMjFSbEU7RXdFMTFSTTs7SUFFRSx3QkFBb0M7RXhFNDFSNUM7RXdFMTFSTTs7SUFFRSwwQkFBd0M7RXhFNDFSaEQ7RXdFMTFSTTs7SUFFRSwyQkFBMEM7RXhFNDFSbEQ7RXdFMTFSTTs7SUFFRSx5QkFBc0M7RXhFNDFSOUM7RXdFMzJSTTtJQUFnQywwQkFBNEI7RXhFODJSbEU7RXdFNzJSTTs7SUFFRSw4QkFBb0M7RXhFKzJSNUM7RXdFNzJSTTs7SUFFRSxnQ0FBd0M7RXhFKzJSaEQ7RXdFNzJSTTs7SUFFRSxpQ0FBMEM7RXhFKzJSbEQ7RXdFNzJSTTs7SUFFRSwrQkFBc0M7RXhFKzJSOUM7RXdFOTNSTTtJQUFnQyx5QkFBNEI7RXhFaTRSbEU7RXdFaDRSTTs7SUFFRSw2QkFBb0M7RXhFazRSNUM7RXdFaDRSTTs7SUFFRSwrQkFBd0M7RXhFazRSaEQ7RXdFaDRSTTs7SUFFRSxnQ0FBMEM7RXhFazRSbEQ7RXdFaDRSTTs7SUFFRSw4QkFBc0M7RXhFazRSOUM7RXdFajVSTTtJQUFnQyx1QkFBNEI7RXhFbzVSbEU7RXdFbjVSTTs7SUFFRSwyQkFBb0M7RXhFcTVSNUM7RXdFbjVSTTs7SUFFRSw2QkFBd0M7RXhFcTVSaEQ7RXdFbjVSTTs7SUFFRSw4QkFBMEM7RXhFcTVSbEQ7RXdFbjVSTTs7SUFFRSw0QkFBc0M7RXhFcTVSOUM7RXdFcDZSTTtJQUFnQyx5QkFBNEI7RXhFdTZSbEU7RXdFdDZSTTs7SUFFRSw2QkFBb0M7RXhFdzZSNUM7RXdFdDZSTTs7SUFFRSwrQkFBd0M7RXhFdzZSaEQ7RXdFdDZSTTs7SUFFRSxnQ0FBMEM7RXhFdzZSbEQ7RXdFdDZSTTs7SUFFRSw4QkFBc0M7RXhFdzZSOUM7RXdFdjdSTTtJQUFnQyx1QkFBNEI7RXhFMDdSbEU7RXdFejdSTTs7SUFFRSwyQkFBb0M7RXhFMjdSNUM7RXdFejdSTTs7SUFFRSw2QkFBd0M7RXhFMjdSaEQ7RXdFejdSTTs7SUFFRSw4QkFBMEM7RXhFMjdSbEQ7RXdFejdSTTs7SUFFRSw0QkFBc0M7RXhFMjdSOUM7RXdFMThSTTtJQUFnQyxxQkFBNEI7RXhFNjhSbEU7RXdFNThSTTs7SUFFRSx5QkFBb0M7RXhFODhSNUM7RXdFNThSTTs7SUFFRSwyQkFBd0M7RXhFODhSaEQ7RXdFNThSTTs7SUFFRSw0QkFBMEM7RXhFODhSbEQ7RXdFNThSTTs7SUFFRSwwQkFBc0M7RXhFODhSOUM7RXdFNzlSTTtJQUFnQywyQkFBNEI7RXhFZytSbEU7RXdFLzlSTTs7SUFFRSwrQkFBb0M7RXhFaStSNUM7RXdFLzlSTTs7SUFFRSxpQ0FBd0M7RXhFaStSaEQ7RXdFLzlSTTs7SUFFRSxrQ0FBMEM7RXhFaStSbEQ7RXdFLzlSTTs7SUFFRSxnQ0FBc0M7RXhFaStSOUM7RXdFaC9STTtJQUFnQywwQkFBNEI7RXhFbS9SbEU7RXdFbC9STTs7SUFFRSw4QkFBb0M7RXhFby9SNUM7RXdFbC9STTs7SUFFRSxnQ0FBd0M7RXhFby9SaEQ7RXdFbC9STTs7SUFFRSxpQ0FBMEM7RXhFby9SbEQ7RXdFbC9STTs7SUFFRSwrQkFBc0M7RXhFby9SOUM7RXdFbmdTTTtJQUFnQyx3QkFBNEI7RXhFc2dTbEU7RXdFcmdTTTs7SUFFRSw0QkFBb0M7RXhFdWdTNUM7RXdFcmdTTTs7SUFFRSw4QkFBd0M7RXhFdWdTaEQ7RXdFcmdTTTs7SUFFRSwrQkFBMEM7RXhFdWdTbEQ7RXdFcmdTTTs7SUFFRSw2QkFBc0M7RXhFdWdTOUM7RXdFdGhTTTtJQUFnQywwQkFBNEI7RXhFeWhTbEU7RXdFeGhTTTs7SUFFRSw4QkFBb0M7RXhFMGhTNUM7RXdFeGhTTTs7SUFFRSxnQ0FBd0M7RXhFMGhTaEQ7RXdFeGhTTTs7SUFFRSxpQ0FBMEM7RXhFMGhTbEQ7RXdFeGhTTTs7SUFFRSwrQkFBc0M7RXhFMGhTOUM7RXdFemlTTTtJQUFnQyx3QkFBNEI7RXhFNGlTbEU7RXdFM2lTTTs7SUFFRSw0QkFBb0M7RXhFNmlTNUM7RXdFM2lTTTs7SUFFRSw4QkFBd0M7RXhFNmlTaEQ7RXdFM2lTTTs7SUFFRSwrQkFBMEM7RXhFNmlTbEQ7RXdFM2lTTTs7SUFFRSw2QkFBc0M7RXhFNmlTOUM7RXdFcmlTTTtJQUF3QiwyQkFBMkI7RXhFd2lTekQ7RXdFdmlTTTs7SUFFRSwrQkFBK0I7RXhFeWlTdkM7RXdFdmlTTTs7SUFFRSxpQ0FBaUM7RXhFeWlTekM7RXdFdmlTTTs7SUFFRSxrQ0FBa0M7RXhFeWlTMUM7RXdFdmlTTTs7SUFFRSxnQ0FBZ0M7RXhFeWlTeEM7RXdFeGpTTTtJQUF3QiwwQkFBMkI7RXhFMmpTekQ7RXdFMWpTTTs7SUFFRSw4QkFBK0I7RXhFNGpTdkM7RXdFMWpTTTs7SUFFRSxnQ0FBaUM7RXhFNGpTekM7RXdFMWpTTTs7SUFFRSxpQ0FBa0M7RXhFNGpTMUM7RXdFMWpTTTs7SUFFRSwrQkFBZ0M7RXhFNGpTeEM7RXdFM2tTTTtJQUF3Qix3QkFBMkI7RXhFOGtTekQ7RXdFN2tTTTs7SUFFRSw0QkFBK0I7RXhFK2tTdkM7RXdFN2tTTTs7SUFFRSw4QkFBaUM7RXhFK2tTekM7RXdFN2tTTTs7SUFFRSwrQkFBa0M7RXhFK2tTMUM7RXdFN2tTTTs7SUFFRSw2QkFBZ0M7RXhFK2tTeEM7RXdFOWxTTTtJQUF3QiwwQkFBMkI7RXhFaW1TekQ7RXdFaG1TTTs7SUFFRSw4QkFBK0I7RXhFa21TdkM7RXdFaG1TTTs7SUFFRSxnQ0FBaUM7RXhFa21TekM7RXdFaG1TTTs7SUFFRSxpQ0FBa0M7RXhFa21TMUM7RXdFaG1TTTs7SUFFRSwrQkFBZ0M7RXhFa21TeEM7RXdFam5TTTtJQUF3Qix3QkFBMkI7RXhFb25TekQ7RXdFbm5TTTs7SUFFRSw0QkFBK0I7RXhFcW5TdkM7RXdFbm5TTTs7SUFFRSw4QkFBaUM7RXhFcW5TekM7RXdFbm5TTTs7SUFFRSwrQkFBa0M7RXhFcW5TMUM7RXdFbm5TTTs7SUFFRSw2QkFBZ0M7RXhFcW5TeEM7RXdFL21TRTtJQUFtQix1QkFBdUI7RXhFa25TNUM7RXdFam5TRTs7SUFFRSwyQkFBMkI7RXhFbW5TL0I7RXdFam5TRTs7SUFFRSw2QkFBNkI7RXhFbW5TakM7RXdFam5TRTs7SUFFRSw4QkFBOEI7RXhFbW5TbEM7RXdFam5TRTs7SUFFRSw0QkFBNEI7RXhFbW5TaEM7QUFDRjs7QXlFcnJTQTtFQUVJLGtCQUFrQjtFQUNsQixNQUFNO0VBQ04sUUFBUTtFQUNSLFNBQVM7RUFDVCxPQUFPO0VBQ1AsVUFBVTtFQUVWLG9CQUFvQjtFQUNwQixXQUFXO0VBRVgsa0NBQWtDO0F6RXFyU3RDOztBMEUvclNBO0VBQWtCLDRHQUE4QztBMUVtc1NoRTs7QTBFL3JTQTtFQUFpQiw4QkFBOEI7QTFFbXNTL0M7O0EwRWxzU0E7RUFBaUIsOEJBQThCO0ExRXNzUy9DOztBMEVyc1NBO0VBQWlCLDhCQUE4QjtBMUV5c1MvQzs7QTBFeHNTQTtFQ1RFLGdCQUFnQjtFQUNoQix1QkFBdUI7RUFDdkIsbUJBQW1CO0EzRXF0U3JCOztBMEV0c1NJO0VBQXdCLDJCQUEyQjtBMUUwc1N2RDs7QTBFenNTSTtFQUF3Qiw0QkFBNEI7QTFFNnNTeEQ7O0EwRTVzU0k7RUFBd0IsNkJBQTZCO0ExRWd0U3pEOztBZTNxU0k7RTJEdkNBO0lBQXdCLDJCQUEyQjtFMUV1dFNyRDtFMEV0dFNFO0lBQXdCLDRCQUE0QjtFMUV5dFN0RDtFMEV4dFNFO0lBQXdCLDZCQUE2QjtFMUUydFN2RDtBQUNGOztBZXZyU0k7RTJEdkNBO0lBQXdCLDJCQUEyQjtFMUVtdVNyRDtFMEVsdVNFO0lBQXdCLDRCQUE0QjtFMUVxdVN0RDtFMEVwdVNFO0lBQXdCLDZCQUE2QjtFMUV1dVN2RDtBQUNGOztBZW5zU0k7RTJEdkNBO0lBQXdCLDJCQUEyQjtFMUUrdVNyRDtFMEU5dVNFO0lBQXdCLDRCQUE0QjtFMUVpdlN0RDtFMEVodlNFO0lBQXdCLDZCQUE2QjtFMUVtdlN2RDtBQUNGOztBZS9zU0k7RTJEdkNBO0lBQXdCLDJCQUEyQjtFMUUydlNyRDtFMEUxdlNFO0lBQXdCLDRCQUE0QjtFMUU2dlN0RDtFMEU1dlNFO0lBQXdCLDZCQUE2QjtFMUUrdlN2RDtBQUNGOztBMEUxdlNBO0VBQW1CLG9DQUFvQztBMUU4dlN2RDs7QTBFN3ZTQTtFQUFtQixvQ0FBb0M7QTFFaXdTdkQ7O0EwRWh3U0E7RUFBbUIscUNBQXFDO0ExRW93U3hEOztBMEVod1NBO0VBQXVCLDJCQUEwQztBMUVvd1NqRTs7QTBFbndTQTtFQUF1QiwrQkFBNEM7QTFFdXdTbkU7O0EwRXR3U0E7RUFBdUIsMkJBQTJDO0ExRTB3U2xFOztBMEV6d1NBO0VBQXVCLDJCQUF5QztBMUU2d1NoRTs7QTBFNXdTQTtFQUF1Qiw4QkFBMkM7QTFFZ3hTbEU7O0EwRS93U0E7RUFBdUIsNkJBQTZCO0ExRW14U3BEOztBMEUvd1NBO0VBQWMsc0JBQXdCO0ExRW14U3RDOztBNEUxelNFO0VBQ0UseUJBQXdCO0E1RTZ6UzVCOztBTW56U0U7RXNFTE0seUJBQTBFO0E1RTR6U2xGOztBNEVsMFNFO0VBQ0UseUJBQXdCO0E1RXEwUzVCOztBTTN6U0U7RXNFTE0seUJBQTBFO0E1RW8wU2xGOztBNEUxMFNFO0VBQ0UseUJBQXdCO0E1RTYwUzVCOztBTW4wU0U7RXNFTE0seUJBQTBFO0E1RTQwU2xGOztBNEVsMVNFO0VBQ0UseUJBQXdCO0E1RXExUzVCOztBTTMwU0U7RXNFTE0seUJBQTBFO0E1RW8xU2xGOztBNEUxMVNFO0VBQ0UseUJBQXdCO0E1RTYxUzVCOztBTW4xU0U7RXNFTE0seUJBQTBFO0E1RTQxU2xGOztBNEVsMlNFO0VBQ0UseUJBQXdCO0E1RXEyUzVCOztBTTMxU0U7RXNFTE0seUJBQTBFO0E1RW8yU2xGOztBNEUxMlNFO0VBQ0UseUJBQXdCO0E1RTYyUzVCOztBTW4yU0U7RXNFTE0seUJBQTBFO0E1RTQyU2xGOztBNEVsM1NFO0VBQ0UseUJBQXdCO0E1RXEzUzVCOztBTTMyU0U7RXNFTE0seUJBQTBFO0E1RW8zU2xGOztBMEU3MFNBO0VBQWEseUJBQTZCO0ExRWkxUzFDOztBMEVoMVNBO0VBQWMseUJBQTZCO0ExRW8xUzNDOztBMEVsMVNBO0VBQWlCLG9DQUFrQztBMUVzMVNuRDs7QTBFcjFTQTtFQUFpQiwwQ0FBa0M7QTFFeTFTbkQ7O0EwRXIxU0E7RUd2REUsV0FBVztFQUNYLGtCQUFrQjtFQUNsQixpQkFBaUI7RUFDakIsNkJBQTZCO0VBQzdCLFNBQVM7QTdFZzVTWDs7QTBFejFTQTtFQUF3QixnQ0FBZ0M7QTFFNjFTeEQ7O0EwRTMxU0E7RUFDRSxpQ0FBaUM7RUFDakMsZ0NBQWdDO0ExRTgxU2xDOztBMEV6MVNBO0VBQWMseUJBQXlCO0ExRTYxU3ZDOztBOEU5NVNBO0VBQ0UsOEJBQThCO0E5RWk2U2hDOztBOEU5NVNBO0VBQ0UsNkJBQTZCO0E5RWk2Uy9COztBK0VqNlNFO0U1RU9GOzs7STRFRE0sNEJBQTRCO0lBRTVCLDJCQUEyQjtFL0VpNlMvQjtFK0U5NVNFO0lBRUksMEJBQTBCO0UvRSs1U2hDO0UrRXQ1U0U7SUFDRSw2QkFBNkI7RS9FdzVTakM7RUcxdFNGO0k0RS9LTSxnQ0FBZ0M7RS9FNDRTcEM7RStFMTRTRTs7SUFFRSx5QjNFekNZO0kyRTBDWix3QkFBd0I7RS9FNDRTNUI7RStFejRTRTs7SUFFRSx3QkFBd0I7RS9FMjRTNUI7RStFeDRTRTs7O0lBR0UsVUFBVTtJQUNWLFNBQVM7RS9FMDRTYjtF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aUY1bFZBO0VBQ0UseUJBQXlCO0FqRitsVjNCOztBaUY3bFZBO0VBQ0UseUJBQXlCO0FqRmdtVjNCOztBaUY5bFZBO0VBQ0UseUJBQXlCO0FqRmltVjNCOztBaUYvbFZBO0VBQ0UseUJBQXlCO0FqRmttVjNCOztBaUZobVZBO0VBQ0UseUJBQXlCO0FqRm1tVjNCOztBaUZqbVZBO0VBQ0UseUJBQXlCO0FqRm9tVjNCOztBaUZsbVZBO0VBQ0UseUJBQXlCO0FqRnFtVjNCOztBaUZubVZBO0VBQ0UseUJBQXlCO0FqRnNtVjNCOztBaUZwbVZBO0VBQ0UseUJBQXlCO0FqRnVtVjNCOztBaUZybVZBO0VBQ0UseUJBQXlCO0FqRndtVjNCOztBaUZ0bVZBO0VBQ0UseUJBQXlCO0FqRnltVjNCOztBaUZ2bVZBO0VBQ0UseUJBQXlCO0FqRjBtVjNCOztBaUZ4bVZBO0VBQ0UsNkJBQTZCO0FqRjJtVi9COztBaUZ6bVZBO0VBQ0UsbUJBQW1CO0FqRjRtVnJCOztBaUYxbVZBOztFQUVFLHlCQUF5QjtBakY2bVYzQjs7QWlGM21WQTs7RUFFRSxZQUFZO0FqRjhtVmQ7O0FpRjVtVkE7O0VBRUUsWUFBWTtBakYrbVZkOztBaUY3bVZBOztFQUVFLGdCQUFnQjtBakZnblZsQjs7QWlGOW1WQTs7O0VBR0Usa0JBQWtCO0FqRmluVnBCOztBaUYvbVZBOztFQUVFLGlCQUFpQjtBakZrblZuQjs7QWlGaG5WQTs7RUFFRSxtQkFBbUI7QWpGbW5WckI7O0FpRmpuVkE7O0VBRUUsbUJBQW1CO0FqRm9uVnJCOztBaUZsblZBOzs7O0VBSUUsZ0JBQWdCO0FqRnFuVmxCOztBaUZublZBOzs7O0VBSUUsa0JBQWtCO0FqRnNuVnBCOztBaUZwblZBOzs7O0VBSUUsaUJBQWlCO0FqRnVuVm5COztBaUZyblZBOzs7O0VBSUUsbUJBQW1CO0FqRnduVnJCOztBaUZ0blZBOzs7O0VBSUUsbUJBQW1CO0FqRnluVnJCOztBaUZ2blZBOztFQUVFLGdCQUFnQjtBakYwblZsQjs7QWlGeG5WQTs7RUFFRSxrQkFBa0I7QWpGMm5WcEI7O0FpRnpuVkE7O0VB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QUNFOztJQUVFLFdBQVc7SUFDWCxrQkFBa0I7RWpGbXBWcEI7RWlGeHpWRjtJQXdLSSxpQkFBaUI7RWpGbXBWbkI7QUFDRjs7QWtGN2tXQTs7c0JsRmlsV3NCO0FrRnpoV3RCO0FBNEJBO0FBTUE7QUFHQTtBQVVBOztzQmxGaS9Wc0I7QW1GNWxXdEI7O3NCbkYrbFdzQjtBbUY1bFd0QjtFQUNFLHlCQUErQjtBbkY4bFdqQzs7QW1GNWxXQTtFQUNFLGNEa0RlO0FsRjZpV2pCOztBbUY3bFdBO0VBQ0UsY0Q0RWE7QWxGb2hXZjs7QW1GOWxXQTtFQUNFLGNEaURhO0FsRmdqV2Y7O0FtRi9sV0E7RUFDRSxjRHlEZTtBbEZ5aVdqQjs7QW1GaG1XQTtFQUNFLHlCQUFrQztBbkZtbVdwQzs7QW1Gam1XQTtFQUNFLHlCQUFvQztBbkZvbVd0Qzs7QW1GbG1XQTtFQUNFLGNEc0VvQjtBbEYraFd0Qjs7QW1GbG1XQTtFQUNFLGlCQUFpQjtBbkZxbVduQjs7QW1Gbm1XQTtBQUNBO0VBQ0UsaUJBQWlCO0FuRnNtV25COztBbUZwbVdBO0VBQ0UsY0REMEI7QWxGd21XNUI7O0FtRnJtV0E7RUFDRSxjRGxCc0I7QWxGMG5XeEI7O0FtRnRtV0E7RUFDRSxjRDlCcUI7QWxGdW9XdkI7O0FtRnZtV0E7RUFDRSxjRHhCc0I7QWxGa29XeEI7O0FtRnZtV0E7RUFDRSxjRE1rQjtFQ0xsQixpQkFBaUI7RUFDakIsa0JENkRrQjtBbEY2aVdwQjs7QW1GeG1XQTtFQUNFLHlCQUFnQztBbkYybVdsQzs7QW1Gem1XQTtFQUNFLGtCRHlEa0I7QWxGbWpXcEI7O0FtRjFtV0E7RUFDRSw0QkFBbUM7QW5GNm1XckM7O0FtRjNtV0E7RUFDRSxlRHVEYTtBbEZ1aldmOztBbUY1bVdBO0VBQ0UsaUJEaURjO0FsRjhqV2hCOztBbUY3bVdBO0VBQ0UsbUJEK0NpQjtBbEZpa1duQjs7QW1GOW1XQTtFQUNFLGlCRDZDZ0I7QWxGb2tXbEI7O0FtRi9tV0E7RUFDRSxrQkRxQ2tCO0FsRjZrV3BCOztBbUZobldBO0VBQ0UsaUJEaUNrQjtBbEZrbFdwQjs7QW1Gam5XQTtFQUNFLGVBQWU7QW5Gb25XakI7O0FtRmxuV0E7RUFDRSxpQkFBaUI7QW5GcW5XbkI7O0FtRm5uV0E7RUFDRSxnQkFBZ0I7QW5Gc25XbEI7O0FtRnBuV0E7RUFDRSxrQkFBa0I7QW5GdW5XcEI7O0FtRnJuV0E7RUFDRSxjRGpGcUI7RUNrRnJCLGlCQUFpQjtBbkZ3blduQjs7QW1GdG5XQTtFQUNFLFdBQVc7QW5GeW5XYjs7QW1Gdm5XQTtFQUNFLGVBQWU7RUFDZixjRGZhO0VDZ0JiLG9CQUFvQjtFQUNwQixhQUFhO0VBQ2IsWUFBWTtFQUNaLG1CQUFtQjtBbkYwbldyQjs7QW1Gdm5XQTs7c0JuRjJuV3NCO0E0RHB0V3BCO0V1QjZGQSxnQ0FBaUM7QW5GMG5XbkM7O0FtRnhuV0E7RUFDRSx5QkR2Q2U7QWxGa3FXakI7O0FtRnpuV0E7RUFDRSxvQkFBb0I7RUFDcEIsZ0NEM0NlO0FsRnVxV2pCOztBbUYxbldBO0VBQ0UsZ0JBQWdCO0VBQ2hCLFVBQVU7QW5GNm5XWjs7QW1GMW5XQTs7c0JuRjhuV3NCO0FtRjNuV3RCO0VBQ0UseUJEL0YwQjtBbEY0dFc1Qjs7QW1GM25XQTtFQUNFLHlCRHhHd0I7QWxGc3VXMUI7O0FtRjVuV0E7RUFDRSxvQ0FBMkM7QW5GK25XN0M7O0FtRjduV0E7RUFDRSxjQUFjO0FuRmdvV2hCOztBbUY5bldBO0VBRUksY0FBYztFQUNkLFdBQVc7RUFDWCxrQkFBa0I7QW5GZ29XdEI7O0FtRnBvV0E7RUFNTSxTQUFTO0FuRmtvV2Y7O0FtRnhvV0E7RUFXSSx5QkRuSG9DO0FsRm92V3hDOztBbUY1b1dBO0VBY0kseUJEL0dtQztBbEZpdld2Qzs7QW1GaHBXQTtFQWlCSSx5QkQ5SGtDO0FsRml3V3RDOztBbUZwcFdBO0VBcUJJLGtCQUFrQjtBbkZtb1d0Qjs7QW1GL25XQTtFQUVJLHdDQUF3QztBbkZpb1c1Qzs7QW1GNW5XQTs7c0JuRmdvV3NCO0FtRjduV3RCO0VBQ0UsNEJBQTRCO0FuRituVzlCOztBbUY3bldBO0VBQ0Usa0JBQWtCO0FuRmdvV3BCOztBbUY5bldBO0VBQ0UsaUJBQWlCO0VBQ2pCLGtCQUFrQjtBbkZpb1dwQjs7QW1GL25XQTtFQUNFLGdCQUFnQjtFQUNoQixtQkFBbUI7QW5Ga29XckI7O0FtRmhvV0E7RUFDRSxjQUFjO0FuRm1vV2hCOztBbUZqb1dBO0VBQ0UsMkJBQTJCO0FuRm9vVzdCOztBZTd2V0k7RW9Fd0hKO0lBS0ksMkJBQTJCO0VuRnFvVzdCO0FBQ0Y7O0FtRmpvV0E7RUFDRSxZQUFZO0FuRm9vV2Q7O0FvRmgxV0E7RUFDRSxnQkFBZ0I7RUFDaEIsWUFBWTtFQUNaLGdCQUFnQjtBcEZtMVdsQjs7QXdCcHdXQTtFNEQzRUUsZ0JBQWdCO0VBQ2hCLFlBQVk7RUFDWix3QkFBd0I7QXBGbTFXMUI7O0FvRmgxV0E7RUFDRSx5QkZRc0I7RUVQdEIsY0Z3RWE7QWxGMndXZjs7QW9GcjFXQTtFQUlJLHlCRk0wQjtBbEYrMFc5Qjs7QW9GejFXQTtFQU9JLHlCRkk2QjtBbEZrMVdqQzs7QW9GbDFXQTtFQUNFLHlCRlpxQjtFRWFyQixjRjZEYTtBbEZ3eFdmOztBb0Z2MVdBO0VBSUkseUJGZHlCO0VFZXpCLGNGMERXO0FsRjZ4V2Y7O0FvRjUxV0E7RUFRSSx5QkZqQjRCO0VFa0I1QixjRnNEVztBbEZreVdmOztBb0ZwMVdBO0VBQ0UseUJGOUJxQjtFRStCckIsY0ZnRGE7QWxGdXlXZjs7QW9GejFXQTtFQUlJLHlCRmhDeUI7RUVpQ3pCLGNGNkNXO0FsRjR5V2Y7O0FvRjkxV0E7RUFRSSx5QkZuQzRCO0VFb0M1QixjRnlDVztBbEZpeldmOztBb0Z0MVdBO0VBQ0UseUJGSnFCO0VFS3JCLGNGbUNhO0FsRnN6V2Y7O0FvRjMxV0E7RUFJSSx5QkZOa0I7RUVPbEIsY0ZnQ1c7QWxGMnpXZjs7QW9GdjFXQTtFQUNFLHlCRnpDcUI7RUUwQ3JCLGNGMEJhO0FsRmcwV2Y7O0FvRjUxV0E7RUFJSSx5QkYzQ3lCO0VFNEN6QixjRnVCVztBbEZxMFdmOztBb0Z4MVdBO0VBQ0UsY0Z4RHFCO0FsRm01V3ZCOztBb0Y1MVdBO0VBR0ksY0ZwRG1CO0FsRmk1V3ZCOztBb0Z6MVdBO0VBQ0UseUJGQ2U7RUVBZixjRmRhO0FsRjAyV2Y7O0FvRjkxV0E7RUFJSSx5QkZUYTtBbEZ1MldqQjs7QW9GMTFXQTtFQUNFLGdCQUFnQjtFQUNoQixZQUFZO0VBQ1osd0JBQXdCO0VBQ3hCLG9CQUFtQjtFQUNuQixrQkFBa0I7QXBGNjFXcEI7O0FvRmwyV0E7RUFPSSx5QkZiYTtBbEY0MldqQjs7QW9GMzFXQTtFQUNFLGdCQUFnQjtFQUNoQix5QkZOcUI7RUVPckIsY0ZQcUI7QWxGcTJXdkI7O0FvRmoyV0E7RUFLSSx5QkZSc0I7QWxGdzJXMUI7O0FvRjMxV0E7RUFDRSxnQkFBZ0I7RUFDaEIseUJGYnVCO0VFY3ZCLGNGZHVCO0FsRjQyV3pCOztBb0YzMVdBO0VBQ0UseUJGbENlO0VFbUNmLHNCQUFzQjtFQUN0QixZQUFZO0FwRjgxV2Q7O0FvRmoyV0E7RUFLSSx5QkZ0Q2E7QWxGczRXakI7O0FvRjUxV0E7RUFDRSxXQUFXO0VBQ1gsc0JBQXNCO0VBQ3RCLGtCQUFrQjtBcEYrMVdwQjs7QW9GNzFXQTtFQUNFLGlCQUFpQjtFQUNqQixrQkFBa0I7QXBGZzJXcEI7O0FvRjcxV0E7RUFDRSxjQUFjO0FwRmcyV2hCOztBb0Y3MVdBO0VBQ0UsWUFBWTtFQUNaLGNGMUhxQjtBbEYwOVd2Qjs7QW9GNzFXQTtFQUNFLGlCQUFpQjtBcEZnMlduQjs7QXFGMStXQTtFQUNFLHNCQUFzQjtFQUN0Qiw0Q0FBNkM7RUFDN0Msa1FBRzZEO0VBQzdELG1CQUFtQjtFQUNuQixrQkFBa0I7RUFDbEIsbUJBQW1CO0FyRjArV3JCOztBQUVBO0VxRnorV0U7RUFDQSxpQ0FBaUM7RUFDakMsWUFBWTtFQUNaLGtCQUFrQjtFQUNsQixtQkFBbUI7RUFDbkIsb0JBQW9CO0VBQ3BCLG9CQUFvQjtFQUNwQixjQUFjO0VBRWQ7RUFDQSxtQ0FBbUM7RUFDbkMsa0NBQWtDO0FyRjArV3BDOztBcUZ2K1dBO0VBQ0UsZ0JBQWdCO0FyRjArV2xCOztBcUZ4K1dBO0VBQ0UsZ0JBQWdCO0FyRjIrV2xCOztBcUZ6K1dBO0VBQ0UsZ0JBQWdCO0FyRjQrV2xCOztBcUZ6K1dBO0VBQ0UsZ0JBQWdCO0FyRjQrV2xCOztBcUYxK1dBO0VBQ0UsZ0JBQWdCO0FyRjYrV2xCOztBcUYzK1dBO0VBQ0UsZ0JBQWdCO0FyRjgrV2xCOztBcUY1K1dBO0VBQ0UsZ0JBQWdCO0FyRisrV2xCOztBcUY3K1dBO0VBQ0UsZ0JBQWdCO0FyRmcvV2xCOztBcUY5K1dBO0VBQ0UsZ0JBQWdCO0FyRmkvV2xCOztBcUYvK1dBO0VBQ0UsZ0JBQWdCO0FyRmsvV2xCOztBcUZoL1dBO0VBQ0UsZ0JBQWdCO0VBQ2hCLFlBQW1CO0FyRm0vV3JCOztBcUZqL1dBO0VBQ0UsZ0JBQWdCO0VBQ2hCLGlCQUFpQjtFQUNqQixZQUF5QjtBckZvL1czQjs7QXFGbC9XQTtFQUNFLGdCQUFnQjtFQUNoQixpQkFBaUI7RUFDakIsWUFBeUI7QXJGcS9XM0I7O0FxRm4vV0E7RUFDRSxnQkFBZ0I7QXJGcy9XbEI7O0FxRnAvV0E7RUFDRSxnQkFBZ0I7QXJGdS9XbEI7O0FxRnIvV0E7RUFDRSxnQkFBZ0I7QXJGdy9XbEI7O0FxRnQvV0E7RUFDRSxnQkFBZ0I7QXJGeS9XbEI7O0FxRnYvV0E7RUFDRSxnQkFBZ0I7QXJGMC9XbEI7O0FxRngvV0E7RUFDRSxnQkFBZ0I7QXJGMi9XbEI7O0FxRnovV0E7RUFDRSxnQkFBZ0I7QXJGNC9XbEI7O0FxRjEvV0E7RUFDRSxnQkFBZ0I7QXJGNi9XbEI7O0FxRjMvV0E7RUFDRSxnQkFBZ0I7QXJGOC9XbEI7O0FxRjUvV0E7RUFDRSxnQkFBZ0I7QXJGKy9XbEI7O0FxRjcvV0E7RUFDRSxnQkFBZ0I7QXJGZ2dYbEI7O0FxRjkvV0E7RUFDRSxnQkFBZ0I7QXJGaWdYbEI7O0FxRi8vV0E7RUFDRSxnQkFBZ0I7QXJGa2dYbEI7O0FxRmhnWEE7RUFDRSxnQkFBZ0I7QXJGbWdYbEI7O0FxRmpnWEE7RUFDRSxnQkFBZ0I7QXJGb2dYbEI7O0FxRmxnWEE7RUFDRSxnQkFBZ0I7QXJGcWdYbEI7O0FxRm5nWEE7RUFDRSxnQkFBZ0I7QXJGc2dYbEI7O0FxRnBnWEE7RUFDRSxnQkFBZ0I7QXJGdWdYbEI7O0FxRnJnWEE7RUFDRSxnQkFBZ0I7QXJGd2dYbEI7O0FxRnRnWEE7RUFDRSxnQkFBZ0I7QXJGeWdYbEI7O0FxRnZnWEE7RUFDRSxnQkFBZ0I7QXJGMGdYbEI7O0FxRnhnWEE7RUFDRSxnQkFBZ0I7QXJGMmdYbEI7O0FxRnpnWEE7RUFDRSxnQkFBZ0I7QXJGNGdYbEI7O0FxRjFnWEE7RUFDRSxnQkFBZ0I7QXJGNmdYbEI7O0FxRjNnWEE7RUFDRSxnQkFBZ0I7QXJGOGdYbEI7O0FxRjVnWEE7RUFDRSxnQkFBZ0I7QXJGK2dYbEI7O0FxRjdnWEE7RUFDRSxnQkFBZ0I7QXJGZ2hYbEI7O0FxRjlnWEE7RUFDRSxnQkFBZ0I7QXJGaWhYbEI7O0FxRi9nWEE7RUFDRSxnQkFBZ0I7QXJGa2hYbEI7O0FxRmhoWEE7RUFDRSxnQkFBZ0I7QXJGbWhYbEI7O0FxRmpoWEE7RUFDRSxnQkFBZ0I7QXJGb2hYbEI7O0FxRmxoWEE7RUFDRSxnQkFBZ0I7QXJGcWhYbEI7O0FxRm5oWEE7RUFDRSxnQkFBZ0I7QXJGc2hYbEI7O0FxRnBoWEE7RUFDRSxnQkFBZ0I7QXJGdWhYbEI7O0FxRnJoWEE7RUFDRSxnQkFBZ0I7QXJGd2hYbEI7O0FxRnRoWEE7RUFDRSxnQkFBZ0I7QXJGeWhYbEI7O0FxRnZoWEE7RUFDRSxnQkFBZ0I7QXJGMGhYbEI7O0FxRnhoWEE7RUFDRSxnQkFBZ0I7QXJGMmhYbEI7O0FxRnpoWEE7RUFDRSxnQkFBZ0I7QXJGNGhYbEI7O0FxRjFoWEE7RUFDRSxnQkFBZ0I7QXJGNmhYbEI7O0FxRjNoWEE7RUFDRSxnQkFBZ0I7QXJGOGhYbEI7O0FxRjVoWEE7RUFDRSxnQkFBZ0I7QXJGK2hYbEI7O0FxRjdoWEE7RUFDRSxnQkFBZ0I7QXJGZ2lYbEI7O0FxRjloWEE7RUFDRSxnQkFBZ0I7QXJGaWlYbEI7O0FxRi9oWEE7RUFDRSxnQkFBZ0I7QXJGa2lYbEI7O0FxRmhpWEE7RUFDRSxnQkFBZ0I7QXJGbWlYbEI7O0FxRmppWEE7RUFDRSxnQkFBZ0I7QXJGb2lYbEI7O0FxRmxpWEE7RUFDRSxnQkFBZ0I7QXJGcWlYbEI7O0FxRm5pWEE7RUFDRSxnQkFBZ0I7QXJGc2lYbEI7O0FxRnBpWEE7RUFDRSxnQkFBZ0I7QXJGdWlYbEI7O0FxRnJpWEE7RUFDRSxnQkFBZ0I7QXJGd2lYbEI7O0FxRnRpWEE7RUFDRSxnQkFBZ0I7QXJGeWlYbEI7O0FxRnZpWEE7RUFDRSxnQkFBZ0I7QXJGMGlYbEI7O0FxRnhpWEE7RUFDRSxnQkFBZ0I7QXJGMmlYbEI7O0FxRnppWEE7RUFDRSxnQkFBZ0I7QXJGNGlYbEI7O0FxRjFpWEE7RUFDRSxnQkFBZ0I7QXJGNmlYbEI7O0FxRjNpWEE7RUFDRSxnQkFBZ0I7QXJGOGlYbEI7O0FxRjVpWEE7RUFDRSxnQkFBZ0I7QXJGK2lYbEI7O0FxRjdpWEE7RUFDRSxnQkFBZ0I7QXJGZ2pYbEI7O0FxRjlpWEE7RUFDRSxnQkFBZ0I7QXJGaWpYbEI7O0FxRi9pWEE7RUFDRSxnQkFBZ0I7QXJGa2pYbEI7O0FxRmhqWEE7RUFDRSxnQkFBZ0I7QXJGbWpYbEI7O0FxRmpqWEE7RUFDRSxnQkFBZ0I7QXJGb2pYbEI7O0FxRmxqWEE7RUFDRSxnQkFBZ0I7QXJGcWpYbEI7O0FxRm5qWEE7RUFDRSxnQkFBZ0I7QXJGc2pYbEI7O0FxRnBqWEE7RUFDRSxnQkFBZ0I7QXJGdWpYbEI7O0FxRnJqWEE7RUFDRSxnQkFBZ0I7QXJGd2pYbEI7O0FxRnRqWEE7RUFDRSxnQkFBZ0I7QXJGeWpYbEI7O0FxRnZqWEE7RUFDRSxnQkFBZ0I7QXJGMGpYbEI7O0FxRnhqWEE7RUFDRSxnQkFBZ0I7QXJGMmpYbEI7O0FxRnpqWEE7RUFDRSxnQkFBZ0I7QXJGNGpYbEI7O0FxRjFqWEE7RUFDRSxnQkFBZ0I7QXJGNmpYbEI7O0FxRjNqWEE7RUFDRSxnQkFBZ0I7QXJGOGpYbEI7O0FxRjVqWEE7RUFDRSxnQkFBZ0I7QXJGK2pYbEI7O0FxRjdqWEE7RUFDRSxnQkFBZ0I7QXJGZ2tYbEI7O0FxRjlqWEE7RUFDRSxnQkFBZ0I7QXJGaWtYbEI7O0FxRi9qWEE7RUFDRSxnQkFBZ0I7QXJGa2tYbEI7O0FxRmhrWEE7RUFDRSxnQkFBZ0I7QXJGbWtYbEI7O0FxRmprWEE7RUFDRSxnQkFBZ0I7QXJGb2tYbEI7O0FxRmxrWEE7RUFDRSxnQkFBZ0I7QXJGcWtYbEI7O0FxRm5rWEE7RUFDRSxnQkFBZ0I7QXJGc2tYbEI7O0FxRnBrWEE7RUFDRSxnQkFBZ0I7QXJGdWtYbEI7O0FxRnJrWEE7RUFDRSxnQkFBZ0I7QXJGd2tYbEI7O0FxRnRrWEE7RUFDRSxnQkFBZ0I7QXJGeWtYbEI7O0FxRnZrWEE7RUFDRSxnQkFBZ0I7QXJGMGtYbEI7O0FxRnhrWEE7RUFDRSxnQkFBZ0I7QXJGMmtYbEI7O0FxRnprWEE7RUFDRSxnQkFBZ0I7QXJGNGtYbEI7O0FxRjFrWEE7RUFDRSxnQkFBZ0I7QXJGNmtYbEI7O0FxRjNrWEE7RUFDRSxnQkFBZ0I7QXJGOGtYbEI7O0FxRjVrWEE7RUFDRSxnQkFBZ0I7QXJGK2tYbEI7O0FxRjdrWEE7RUFDRSxnQkFBZ0I7QXJGZ2xYbEI7O0FxRjlrWEE7RUFDRSxnQkFBZ0I7QXJGaWxYbEI7O0FxRi9rWEE7RUFDRSxnQkFBZ0I7QXJGa2xYbEI7O0FxRmhsWEE7RUFDRSxnQkFBZ0I7QXJGbWxYbEI7O0FxRmpsWEE7RUFDRSxnQkFBZ0I7QXJGb2xYbEI7O0FxRmxsWEE7RUFDRSxnQkFBZ0I7QXJGcWxYbEI7O0FxRm5sWEE7RUFDRSxnQkFBZ0I7QXJGc2xYbEI7O0FxRnBsWEE7RUFDRSxnQkFBZ0I7QXJGdWxYbEI7O0FxRnJsWEE7RUFDRSxnQkFBZ0I7QXJGd2xYbEI7O0FxRnRsWEE7RUFDRSxnQkFBZ0I7QXJGeWxYbEI7O0FxRnZsWEE7RUFDRSxnQkFBZ0I7QXJGMGxYbEI7O0FxRnhsWEE7RUFDRSxnQkFBZ0I7QXJGMmxYbEI7O0FxRnpsWEE7RUFDRSxnQkFBZ0I7QXJGNGxYbEI7O0FxRjFsWEE7RUFDRSxnQkFBZ0I7QXJGNmxYbEI7O0FxRjNsWEE7RUFDRSxnQkFBZ0I7QXJGOGxYbEI7O0FxRjVsWEE7RUFDRSxnQkFBZ0I7QXJGK2xYbEI7O0FxRjdsWEE7RUFDRSxnQkFBZ0I7QXJGZ21YbEI7O0FxRjlsWEE7RUFDRSxnQkFBZ0I7QXJGaW1YbEI7O0FxRi9sWEE7RUFDRSxnQkFBZ0I7QXJGa21YbEI7O0FxRmhtWEE7RUFDRSxnQkFBZ0I7QXJGbW1YbEI7O0FxRmptWEE7RUFDRSxnQkFBZ0I7QXJGb21YbEI7O0FxRmxtWEE7RUFDRSxnQkFBZ0I7QXJGcW1YbEI7O0FxRm5tWEE7RUFDRSxnQkFBZ0I7QXJGc21YbEI7O0FxRnBtWEE7RUFDRSxnQkFBZ0I7QXJGdW1YbEI7O0FxRnJtWEE7RUFDRSxnQkFBZ0I7QXJGd21YbEI7O0FxRnRtWEE7RUFDRSxnQkFBZ0I7QXJGeW1YbEI7O0FxRnZtWEE7RUFDRSxnQkFBZ0I7QXJGMG1YbEI7O0FxRnhtWEE7RUFDRSxnQkFBZ0I7QXJGMm1YbEI7O0FxRnptWEE7RUFDRSxnQkFBZ0I7QXJGNG1YbEI7O0FxRjFtWEE7RUFDRSxnQkFBZ0I7QXJGNm1YbEI7O0FxRjNtWEE7RUFDRSxnQkFBZ0I7QXJGOG1YbEI7O0FxRjVtWEE7RUFDRSxnQkFBZ0I7QXJGK21YbEI7O0FxRjdtWEE7RUFDRSxnQkFBZ0I7QXJGZ25YbEI7O0FxRjltWEE7RUFDRSxnQkFBZ0I7QXJGaW5YbEI7O0FxRi9tWEE7RUFDRSxnQkFBZ0I7QXJGa25YbEI7O0FxRmhuWEE7RUFDRSxnQkFBZ0I7QXJGbW5YbEI7O0FxRmpuWEE7RUFDRSxnQkFBZ0I7QXJGb25YbEI7O0FxRmxuWEE7RUFDRSxnQkFBZ0I7QXJGcW5YbEI7O0FxRm5uWEE7RUFDRSxnQkFBZ0I7QXJGc25YbEI7O0FxRnBuWEE7RUFDRSxnQkFBZ0I7QXJGdW5YbEI7O0FxRnJuWEE7RUFDRSxnQkFBZ0I7QXJGd25YbEI7O0FxRnRuWEE7RUFDRSxnQkFBZ0I7QXJGeW5YbEI7O0FxRnZuWEE7RUFDRSxnQkFBZ0I7QXJGMG5YbEI7O0FxRnhuWEE7RUFDRSxnQkFBZ0I7QXJGMm5YbEI7O0FxRnpuWEE7RUFDRSxnQkFBZ0I7QXJGNG5YbEI7O0FxRjFuWEE7RUFDRSxnQkFBZ0I7QXJGNm5YbEI7O0FxRjNuWEE7RUFDRSxnQkFBZ0I7QXJGOG5YbEI7O0FxRjVuWEE7RUFDRSxnQkFBZ0I7QXJGK25YbEI7O0FxRjduWEE7RUFDRSxnQkFBZ0I7QXJGZ29YbEI7O0FxRjluWEE7RUFDRSxnQkFBZ0I7QXJGaW9YbEI7O0FxRi9uWEE7RUFDRSxnQkFBZ0I7QXJGa29YbEI7O0FxRmhvWEE7RUFDRSxnQkFBZ0I7QXJGbW9YbEI7O0FxRmpvWEE7RUFDRSxnQkFBZ0I7QXJGb29YbEI7O0FzRnJuWUE7RUFDRSxnQkFBZ0I7QXRGd25ZbEI7O0FzRnJuWUE7RUFDRSxnQkFBZ0I7QXRGd25ZbEI7O0FzRnJuWUE7RUFDRSxnQkFBZ0I7QXRGd25ZbEI7O0FzRnJuWUE7RUFDRSxnQkFBZ0I7QXRGd25ZbEI7O0FzRnJuWUE7RUFDRSxnQkFBZ0I7QXRGd25ZbEI7O0FzRnJuWUE7RUFDRSxnQkFBZ0I7QXRGd25ZbEI7O0FzRnJuWUE7RUFDRSxnQkFBZ0I7QXRGd25ZbEI7O0FzRnJuWUE7RUFDRSxnQkFBZ0I7QXRGd25ZbEI7O0FzRnJuWUE7RUFDRSxnQkFBZ0I7RUFDaEIsZUFBZTtBdEZ3bllqQjs7QXNGcm5ZQTtFQUNFLGtCSjJFa0I7QWxGNmlZcEI7O0FzRnpuWUE7RUFHSSxtQkoyRWU7QWxGK2lZbkI7O0FzRnJuWUE7RUFDRSxnQkFBZ0I7QXRGd25ZbEI7O0FzRnJuWUE7RUFDRSxnQkFBZ0I7QXRGd25ZbEI7O0FzRnRuWUE7RUFDRSxnQkFBZ0I7QXRGeW5ZbEI7O0FzRnZuWUE7RUFDRSxnQkFBZ0I7QXRGMG5ZbEI7O0FzRnhuWUE7RUFDRSxnQkFBZ0I7QXRGMm5ZbEI7O0FzRnpuWUE7RUFDRSxnQkFBZ0I7QXRGNG5ZbEI7O0FzRjFuWUE7RUFDRyxnQkFBZ0I7QXRGNm5ZbkI7O0FzRjNuWUE7RUFDRSxnQkFBZ0I7QXRGOG5ZbEI7O0FzRjNuWUE7RUFDRSxnQkFBZ0I7QXRGOG5ZbEI7O0FzRjVuWUE7RUFDRSxnQkFBZ0I7QXRGK25ZbEI7O0FzRjVuWUE7RUFDRSxnQkFBZ0I7QXRGK25ZbEI7O0FzRjduWUE7RUFDRSxnQkFBZ0I7QXRGZ29ZbEI7O0FzRjluWUE7RUFDRSxnQkFBZ0I7QXRGaW9ZbEI7O0FzRi9uWUE7RUFDRSxnQkFBZ0I7QXRGa29ZbEI7O0FzRmhvWUE7RUFDRSxnQkFBZ0I7QXRGbW9ZbEI7O0FzRmhvWUE7RUFDRSxnQkFBZ0I7QXRGbW9ZbEI7O0FzRmhvWUE7RUFDRSxnQkFBZ0I7QXRGbW9ZbEI7O0FzRmhvWUE7RUFDRSxnQkFBZ0I7QXRGbW9ZbEI7O0FzRmhvWUE7RUFDRSxnQkFBZ0I7QXRGbW9ZbEI7O0FzRmhvWUE7RUFDRSxnQkFBZ0I7QXRGbW9ZbEI7O0F1Rm52WUE7O3lCdkZ1dll5QjtBdUZwdll6QjtFQUNFLHlCTDRDYztFSzNDZCxnQkFBZ0I7RUFDaEIsY0xnRmE7RUsvRWIsaUJBQWlCO0VBQ2pCLGtCTHdHa0I7RUt2R2xCLGdCQUFnQjtBdkZzdllsQjs7QXVGNXZZQTtFQVFJLGNMMkVXO0FsRjZxWWY7O0F1RnJ2WUE7RUFDRSx5QkwrQnFCO0FsRnl0WXZCOztBdUZ0dllBO0VBQ0UseUJMZ0ZpQjtBbEZ5cVluQjs7QXVGdnZZQTtFQUNFLHlCTDBFb0I7RUt6RXBCLGNMeUVvQjtFS3hFcEIsbUJBQW1CO0VBQ25CLHlCTDhEYTtBbEY0cllmOztBdUZ2dllBO0VBQ0UsaUNMNEJvQjtFSzNCcEIsbUJBQW1CO0VBQ25CLHlCTHdEYTtBbEZrc1lmOztBdUZ2dllBOzt5QnZGMnZZeUI7QXVGeHZZekI7RUFDRSxZQUFZO0VBQ1osZ0JBQWdCO0VBQ2hCLGNMK0NhO0VLOUNiLGlCQUFpQjtFQUNqQixrQkx5RWtCO0VLeEVsQixlQUFlO0VBQ2Ysa0JBQWtCO0F2RjB2WXBCOztBdUZ6dllFO0VBQ0UsY0x5Q1c7RUt4Q1gsa0JBQWtCO0F2RjR2WXRCOztBdUYxdllFO0VBQ0UsY0xxQ1c7QWxGd3RZZjs7QXVGenZZQTtFQUVFLDRCQUE0QjtFQUM1QixrQkFBa0I7RUFDbEIsbUJBQW1CO0F2RjJ2WXJCOztBdUYvdllBO0VBT0ksa0JBQWtCO0F2RjR2WXRCOztBdUZ4dllBO0VBRUUseUJMdERxQjtFS3VEckIsa0JBQWtCO0VBQ2xCLGtCQUFrQjtBdkYwdllwQjs7QXVGOXZZQTtFQU9JLGtCQUFrQjtBdkYydll0Qjs7QXVGbHdZQTtFQVVJLHlCTDdEeUI7QWxGeXpZN0I7O0F1RnR3WUE7RUFjSSx5QkxoRTRCO0VLaUU1QixhQUFhO0F2RjR2WWpCOztBdUZ4dllBO0VBQ0UseUJMdEU4QjtBbEZpMFloQzs7QXVGeHZZQTtFQUVFLGlCTHdCbUI7RUt2Qm5CLHlCTG5GcUI7RUtvRnJCLGtCQUFrQjtBdkYwdllwQjs7QXVGOXZZQTtFQU9JLGtCQUFrQjtBdkYydll0Qjs7QXVGbHdZQTtFQVVJLHlCTHpGeUI7QWxGcTFZN0I7O0F1RnR3WUE7RUFhSSx5QkwzRjRCO0VLNEY1QixhQUFhO0F2RjZ2WWpCOztBdUZ6dllBO0VBRUUseUJML0ZxQjtFS2dHckIsa0JMSWtCO0FsRnV2WXBCOztBdUY5dllBO0VBTUkseUJMbEd5QjtBbEY4MVk3Qjs7QXVGbHdZQTtFQVNJLHlCTHBHNEI7RUtxRzVCLGFBQWE7QXZGNnZZakI7O0F1Rnh2WUE7RUFFRSxpQkxUbUI7RUtVbkIseUJMckV3QjtFS3NFeEIsa0JBQWtCO0F2RjB2WXBCOztBdUY5dllBO0VBT0ksa0JBQWtCO0F2RjJ2WXRCOztBdUZsd1lBO0VBVUkseUJMaEhtQjtBbEY0Mll2Qjs7QXVGdHdZQTtFQWFJLHlCTG5IbUI7RUtvSG5CLGFBQWE7QXZGNnZZakI7O0F1Rnp2WUE7RUFFRSxpQkwzQm1CO0VLNEJuQix5QkxoSHdCO0VLaUh4QixrQkFBa0I7QXZGMnZZcEI7O0F1Ri92WUE7RUFPSSxrQkFBa0I7QXZGNHZZdEI7O0F1Rm53WUE7RUFTTSxjTDdEUztBbEYyellmOztBdUZ2d1lBO0VBYUkseUJMekg0QjtBbEZ1M1loQzs7QXVGM3dZQTtFQWdCSSx5QkwzSDRCO0VLNEg1QixhQUFhO0F2Rit2WWpCOztBdUY1dllBOzt5QnZGZ3dZeUI7QXVGN3ZZekI7RUFFRSxjTDdFYTtFSzhFYixpQkxuRG1CO0VLb0RuQixtQkFBbUI7RUFDbkIsa0JBQWtCO0F2Rjh2WXBCOztBdUZud1lBO0VBUUksY0xwSm9CO0FsRm01WXhCOztBdUYzdllBO0VBRUUsNkJBQTZCO0VBQzdCLGNMcEtxQjtF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Q2IsYUFBYTtBdkY2eFl2Qjs7QXVGbnlZQTtFQVlNLGNMNW9CaUI7RUs2b0JqQixXQUFXO0F2RjJ4WWpCOztBdUZ4eVlBO0VBZ0JNLHNCQUFzQjtBdkY0eFk1Qjs7QXVGNXlZQTtFQW9CUSxjTDFrQk87RUsya0JQLHlCTHBwQnFCO0FsRmc3WjdCOztBdUZqellBO0VBeUJNLG9DQUEyQztFQUMzQyxnQ0FBdUM7QXZGNHhZN0M7O0F1RnR6WUE7RUE4QkksaUJMempCaUI7QWxGcTFackI7O0F3RnQ4WkE7RUFDRSxjQUFjO0F4Rnk4WmhCOztBd0Z0OFpBO0VBQ0UsZ0JBQWdCO0VBQ2hCLGlCQUFpQjtFQUNqQixvQkFBb0I7RUFDcEIsbUJORHFCO0FsRjA4WnZCOztBd0Y3OFpBO0VBT0ksaUJBQWlCO0VBQ2pCLGNOMEVXO0VNekVYLGtCTnFHZ0I7RU1wR2hCLDBCQUEwQjtBeEYwOFo5Qjs7QXdGcDlaQTtFQWVNLGNOWmlCO0FsRnE5WnZCOztBd0Z4OVpBO0VBbUJRLHlCQUErQjtBeEZ5OFp2Qzs7QXdGNTlaQTtFQXdCTSxrQkFBa0I7QXhGdzhaeEI7O0F3RmgrWkE7RUEyQlEsTUFBTTtFQUNOLFVBQVU7RUFDVixnQkFBZ0I7RUFDaEIsaUJBQWlCO0F4Rnk4WnpCOztBd0Z2K1pBO0VBa0NRLGNOL0JlO0VNZ0NmLHlCQUF5QjtFQUN6QixtQkFBbUI7QXhGeThaM0I7O0F3RjcrWkE7RUFzQ1UsMEJBQTBCO0F4RjI4WnBDOztBd0ZqL1pBO0VBMENVLGNBQWM7QXhGMjhaeEI7O0F3Rm44WkE7RUFHTSxlQUFlO0VBQ2Ysa0JBQWtCO0VBQ2xCLGFBQWE7QXhGbzhabkI7O0F3Rno4WkE7RUFTTSxvQkFBb0I7RUFDcEIsaUJBQWlCO0F4Rm84WnZCOztBd0Y5OFpBO0VBWVEsZ0JBQWdCO0F4RnM4WnhCOztBd0ZsOVpBO0VBaUJNLGlCQUFpQjtBeEZxOFp2Qjs7QXdGdDlaQTtFQXNCSSxrQkFBa0I7QXhGbzhadEI7O0F3Rmg4WkE7RUFDRSxrQk4rQmtCO0VNOUJsQiw4Qk50RXFCO0VNdUVyQixtQk4xQmU7RU0yQmYsYUFB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QWFRLFlBQVk7RUFDWixrQkFBa0I7RUFDbEIsZUFBZTtBMUZpMWF2Qjs7QTBGaDJhQTtFQW1CUSxjUmJlO0VRY2YsMEJSZGU7RVFlZix5QlI0Qm9CO0FsRnF6YTVCOztBMEZ0MmFBO0VBeUJRLGNSbkJlO0VRb0JmLHlCUnVCb0I7RVF0QnBCLDBCUnNCb0I7QWxGMnphNUI7O0EwRjUyYUE7RUErQlEscUJBQXFCO0VBQ3JCLFdBQVc7QTFGaTFhbkI7O0EwRmozYUE7RUFvQ1EsZ0JBQWdCO0ExRmkxYXhCOztBMEZyM2FBO0VBeUNRLGFBQWE7QTFGZzFhckI7O0EwRnowYUE7RUFFSSxjUkZtQjtFUUduQixrQlI0RGdCO0VRM0RoQixpQkFBaUI7RUFDakIsWUFBWTtBMUYyMGFoQjs7QTBGaDFhQTtFQVFJLGNSS1c7RVFKWCxrQlJzRGdCO0VRckRoQixpQkFBaUI7QTFGNDBhckI7O0EwRnYwYUU7RUFDRSxjUmhCbUI7RVFpQm5CLGlCQUFpQjtBMUYwMGFyQjs7QTBGeDBhRTtFQUNFLGNSUFc7RVFRWCxpQkFBaUI7QTFGMjBhckI7O0EwRnYwYUE7RUFDRSxrQkFBa0I7QTFGMDBhcEI7O0EwRjMwYUE7RUFJSSxnQkFBZ0I7QTFGMjBhcEI7O0EwRi8wYUE7RUFRSSxrQkFBa0I7RUFDbEIsTUFBSztFQUNMLFFBQVE7RUFDUixZQUFZO0VBQ1osV0FBVztBMUYyMGFmOztBMEZ2MWFBO0VBY00sa0JSMEJjO0FsRm16YXBCOztBMEYzMWFBO0VBa0JJLGlCUnFCaUI7QWxGd3phckI7O0EwRnowYUE7RUFHSSxrQlJhZ0I7QWxGNnphcEI7O0EwRjcwYUE7RUFNSSxZQUFZO0ExRjIwYWhCOztBMEZ2MGFBO0VBR0ksaUJSSWlCO0VRSGpCLGNBQWM7QTFGdzBhbEI7O0EwRjUwYUE7RUFRSSxnQkFBZ0I7RUFDaEIsbUJBQW1CO0VBQ25CLGdCQUFnQjtBMUZ3MGFwQjs7QTBGbDFhQTtFQWNJLDRCQUE0QjtBMUZ3MGFoQzs7QWV2M2FJO0UyRWlDSjtJQW1CTSxzQkFBc0I7RTFGdzBhMUI7QUFDRjs7QTBGNTFhQTtFQXdCSSxrQkFBa0I7RUFDbEIsZ0NSckVXO0VRc0VYLFdBQVU7RUFDVixZQUFXO0VBQ1gsV0FBVTtFQUNWLFFBQU87QTFGdzBhWDs7QTBGcjJhQTtFQWdDSSxZQUFZO0VBQ1osWUFBWTtFQUNaLG1CUjFEYTtFUTJEYiwyQkFBMkI7RUFDM0IsWUFBWTtFQUNaLGlCQUFpQjtBMUZ5MGFyQjs7QTBGOTJhQTtFQXdDTSx3QkFBd0I7QTFGMDBhOUI7O0F1RjFnYUE7RUd6VEksZ0NSaEZhO0FsRnU1YWpCOztBdUY5Z2FBO0VHdFRNLHlCUmxHUztFUW1HVCxpQ1JyR2dCO0FsRjY2YXRCOztBdUZuaGFBO0VHbFRRLGNScEplO0FsRjY5YXZCOztBdUZ2aGFBO0VHN1NNLGtCQUFrQjtBMUZ3MGF4Qjs7QXVGM2hhQTtFR3pTTSxtQkFBbUI7RUFDbkIsc0JBQXNCO0VBQ3RCLGlCQUFpQjtFQUNqQixvQkFBb0I7QTFGdzBhMUI7O0EwRm4wYUE7RUFFRSxXQUFXO0ExRnEwYWI7O0EwRi96YUE7RUFFSSxhQUFhO0VBQ2IsdUJBQXVCO0VBQ3ZCLHFCQUFxQjtBMUZpMGF6Qjs7QWVyN2FJO0UyRWdISjtJQU1NLHNCQUFzQjtJQUN0QixtQkFBbUI7RTFGbzBhdkI7QUFDRjs7QTBGNTBhQTtFQVlNLFlBQVc7QTFGbzBhakI7O0EwRi96YUE7RUFDRSxXQUFXO0ExRmswYWI7O0EwRjF6YUE7RUFDRSxZQUFZO0ExRjZ6YWQ7O0EwRjl6YUE7RUFHSSxZQUFZO0ExRit6YWhCOztBMEZsMGFBO0VBTUksc0JBQXNCO0VBQ3RCLGFBQWE7RUFDYixjUi9NbUI7RVFnTm5CLFVBQVU7QTFGZzBhZDs7QTBGejBhQTtFQVlJLGNSbk5tQjtBbEZvaGJ2Qjs7QTBGN3phQTtFQWFFOzswQjFGcXphd0I7QUFDMUI7O0EwRm4wYUE7RUFRUSw0QkFBNEI7QTFGK3phcEM7O0EwRnYwYUE7RUFrQkksWUFBWTtFQUNaLGtCUnRJZ0I7RVF1SWhCLGlCQUFpQjtBMUZ5emFyQjs7QTBGNzBhQTtFQXdCSSxjUjlOc0I7QWxGdWhiMUI7O0E0QzVpYkE7RThDd1BFLFlBQVk7RUFD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MkZwbmJBO0VBQ0UsU0FBUztBM0Z1bmJYOztBMEZobWJBO0VDakJJLGtCVGhEZ0I7RVNpRGhCLG1CQUFtQjtBM0ZxbmJ2Qjs7QTBGcm1iQTtFQ2RNLGVBQWU7QTNGdW5ickI7O0EwRnptYkE7RUNWSSxtQkFBbUI7RUFDbkIsbUJBQW1CO0VBQ25CLGtCQUFrQjtFQUNsQix1QkFBdUI7QTNGdW5iM0I7O0EwRmhuYkE7RUNITSxVQUFVO0EzRnVuYmhCOztBZTV0Ykk7RTJFd0dKO0lDSVEsVUFBVTtFM0ZxbmJoQjtBQUNGOztBMEYxbmJBO0VDVUksa0JBQWtCO0EzRm9uYnRCOztBZXR1Ykk7RTJFd0dKO0lDY00sYUFBYTtFM0ZxbmJqQjtBQUNGOztBMkZqbmJBO0VBSU0sY1QvSFc7QWxGZ3ZiakI7O0EyRnJuYkE7RUFPUSxjVGxJUztBbEZvdmJqQjs7QTJGNW1iQTtFQUlNLGtCVHJHYztFU3NHZCxtQkFBbUI7QTNGNG1iekI7O0EyRmpuYkE7RUFTSSxjQUFjO0EzRjRtYmxCOztBMkZ4bWJBO0VBRUUsWUFBWTtBM0YwbWJkOztBMkZ2bWJBO0VBQ0UsaUJBQWlCO0EzRjBtYm5COztBMkZ2bWJBO0VBRUUsYUFBYTtBM0Z5bWJmOztBMkZ0bWJBOzt5QjNGMG1ieUI7QTJGdm1iekI7RUFJRSw2QkFBNkI7RUFDN0IsNEJBQTRCO0EzRnNtYjlCOztBZWp4Ykk7RTRFOEtKO0lBSU0sbUJBQW1CO0UzRm9tYnZCO0UyRnhtYkY7SUFPTSxtQkFBbUI7RTNGb21idkI7QUFDRjs7QTJGaG1iQTtFQUVJLDZCQUE2QjtBM0ZrbWJqQzs7QTJGcG1iQTtFQUlNLFdBQVc7QTNGb21iakI7O0FlL3liSTtFNEVpTko7SUFHTSxVQUFVO0lBQ1YsbUJBQW1CO0lBQ25CLGVBQWU7RTNGZ21ibkI7QUFDRjs7QTJGdG1iQTtFQVdRLFdBQVc7QTNGK2xibkI7O0FlOXliSTtFNEVvTUo7SUFpQk0sYUFBYTtFM0Y4bGJqQjtBQUNGOztBMkZ6bGJBOzt5QjNGNmxieUI7QTJGMWxiekI7RUFFSSx5QlRwTmE7RVNxTmIsWUFBWTtFQUNaLGtCQUFrQjtFQUNsQiwyQkFBMkI7QTNGMmxiL0I7O0EyRmhtYkE7RUFRSSxrQkFBa0I7QTNGNGxidEI7O0EyRnBtYkE7RUFVTSxtQkFBbUI7QTNGOGxiekI7O0EyRnpsYkE7RUFDRSxNQUFNO0VBQ04sV0FBVztFQUNYLGtCQUFrQjtFQUNsQixtQkFBbUI7QTNGNGxickI7O0EyRnpsYkE7RUFDRSxpQ0FBaUM7RUFDakMsb0JBQW1CO0VBQ25CLHNCQUFxQjtBM0Y0bGJ2Qjs7QTJGL2xiQTtFQU1NLDZCVDFQVztFUzJQWCxnQkFBZ0I7QTNGNmxidEI7O0EyRnBtYkE7RUFVTSw4QkFBNkI7QTNGOGxibkM7O0EyRnhtYkE7RUFhUSxtQkFBbUI7QTNGK2xiM0I7O0E0Rno2YkE7O3NCNUY2NmJzQjtBNEYxNmJ0QjtFQUNFLG1EQUFtRDtFQUNuRCxxQ0FBcUM7RUFDckMsNEJBQTZCO0VBQzdCLDZCVitFYTtFVTlFYixpQkFBaUI7QTVGNDZibkI7O0E0Rmo3YkE7RUFRSSxhQUFhO0E1RjY2YmpCOztBNEZyN2JBO0VBV0ksWUFBWTtBNUY4NmJoQjs7QTRGejdiQTtFQWNJLG1CVm1HZTtFVWxHZixjVm9FVztFVW5FWCxpQkFBaUI7RUFDakIsaUJBQWlCO0E1Ris2YnJCOztBNEY3NmJJO0VBbkJKO0lBb0JNLDBCQUF5QjtFNUZpN2I3QjtBQUNGOztBZWg0Ykk7RTZFdEVKO0lBeUJNLFlBQVk7RTVGazdiaEI7QUFDRjs7QTRGaDdiRTtFQTVCRjtJQTZCTSwyQkFBMkI7RTVGbzdiL0I7QUFDRjs7QTRGajdiQTtFQUNFLHdCQUF3QjtFQUN4QixrQkFBa0I7QTVGbzdicEI7O0E0RnQ3YkE7RUFJSSxtQlY0RWU7RVUzRWYsa0JBQWlCO0E1RnM3YnJCOztBNEYzN2JBO0VBT00sY1YyQ1M7QWxGNjRiZjs7QTRGbjdiQTs7c0I1RnU3YnNCO0E0RnA3YnRCO0VBQ0UsY0FBYztBNUZzN2JoQjs7QTRGdjdiQTtFQUdJLGdCQUFnQjtBNUZ3N2JwQjs7QTRGMzdiQTtFQU1JLGNWbERtQjtBbEYyK2J2Qjs7QTRGLzdiQTtFQVNJLGlCQUFpQjtFQUNqQixpQlZzRFk7RVVyRFosY1Z2RG1CO0FsRmkvYnZCOztBNEZyOGJBO0VBY0ksa0JBQWtCO0E1RjI3YnRCOztBNEZ6OGJBO0VBaUJNLGlCVmlEWTtBbEYyNGJsQjs7QTRGNzhiQTtFQW9CTSxhQUFhO0E1RjY3Ym5COztBNEZqOWJBO0VBdUJNLGtCVndDYztBbEZzNWJwQjs7QTRGcjliQTtFQTJCSSxjVmZhO0FsRjY4YmpCOztBNEYzN2JBO0VBQ0Usa0JBQWtCO0VBQ2xCLFNBQVM7QTVGODdiWDs7QTRGaDhiQTtFQUtJLGNWL0VtQjtFVWdGbkIsaUJWOEJjO0FsRmk2YmxCOztBNEYzN2JBOztzQjVGKzdic0I7QTRGNTdidEI7RUFDRSxtQlZ4RnFCO0VVeUZyQix3QkFBd0I7QTVGODdiMUI7O0E0Rmg4YkE7RUFPUSxrQkFBa0I7QTVGNjdiMUI7O0E0RnA4YkE7RUFVUSxtQkFBbUI7QTVGODdiM0I7O0E0Rng4YkE7RUFlTSx1QkFBdUI7RUFDdkIsZ0NBQXVDO0E1RjY3YjdDOztBNEY3OGJBO0VBbUJRLGtCQUFrQjtBNUY4N2IxQjs7QTRGajliQTtFQXlCTSxpQkFBa0I7QTVGNDdieEI7O0E0RnI5YkE7RUE0QlEseUJWcENPO0VVcUNQLG9DQUEyQztFQUMzQywwQkFBeUI7RUFDekIsWUFBWTtFQUNaLGtCVlpZO0FsRnk4YnBCOztBNEY3OWJBO0VBa0NVLGNWdkRPO0FsRnMvYmpCOztBNEZqK2JBO0VBc0NRLHVCQUF1QjtFQUN2QixvQ0FBMkM7RUFDM0MseUJBQXdCO0E1Ris3YmhDOztBNEZ2K2JBO0VBMENVLGVBQWU7RUFDZixjVjdIYTtBbEY4amN2Qjs7QTRGNStiQTtFQWdEUSxTQUFTO0VBQ1QsY0FBYztFQUNkLFdBQVc7RUFDWCxnQkFBZ0I7QTVGZzhieEI7O0E0Rm4vYkE7RUEwREksaUJBQWlCO0VBQ2pCLGNWbkVXO0VVb0VYLG1CVnRDZTtFVXVDZixrQkFBa0I7RUFDbEIsa0JBQWtCO0E1RjY3YnRCOztBNEYzL2JBO0VBaUVNLGlCVjVDVTtBbEYwK2JoQjs7QTRGLy9iQTtFQW9FTSxjVjdJa0I7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QTtFQU9NLGNkcURXO0VjcERYLGlCQUFpQjtBaEcrcGZ2Qjs7QWdHdnFmQTtFQVdNLGlCQUFpQjtBaEdncWZ2Qjs7QWdHM3FmQTtFQWFRLGNkNkNPO0FsRnFuZmY7O0FnRy9xZkE7RUFpQk0sa0JBQWtCO0FoR2txZnhCOztBZ0c3cGZBO0VBQ0UsZ0JBQWdCO0FoR2dxZmxCOztBZ0dqcWZBO0VBR0ksaUJBQWlCO0VBQ2pCLGNBQWM7RUFDZCxnQkFBZ0I7RUFDaEIsa0JkZ0ZnQjtFYy9FaEIsaUJBQWlCO0VBQ2pCLGNkdEJtQjtFY3VCbkIsNkJBQTZCO0VBQzdCLHlCZHhCbUI7QWxGMHJmdkI7O0FnRzVxZkE7RUFZTSxjZGdEUztFYy9DVCx5QmQzQmlCO0VjNEJqQixZQUFZO0FoR29xZmxCOztBZ0cvcGZBO0VBQ0UsVUFBVTtFQUNWLFVBQVU7RUFDVixrQkFBa0I7QWhHa3FmcEI7O0FnRy9wZkE7OztFQUdFLDJCQUEyQjtBaEdrcWY3Qjs7QWdHaHFmQTs7c0JoR29xZnNCO0FnR2hxZnRCO0VBQ0UsZ0JBQWdCO0VBQ2hCLHlCZDVDcUI7RWM2Q3JCLGtCQUFrQjtBaEdrcWZwQjs7QWdHcnFmQTtFQVNJLG9CQUFvQjtBaEdncWZ4Qjs7QWdHenFmQTtFQU1NLDhCZE9XO0FsRmdxZmpCOztBZ0c3cWZBO0VBV00sa0JBQWtCO0VBQ2xCLGlCQUFpQjtFQUNqQixrQmR5Q2M7QWxGNm5mcEI7O0FnR2hxZkE7RUFFSSxnQkFBZ0I7RUFDaEIsVUFBVTtFQUNWLGNkbkJhO0FsRnFyZmpCOztBZ0d0cWZBO0VBT00scUJBQXFCO0FoR21xZjNCOztBZ0cxcWZBO0VBV0ksaUJBQWlCO0VBQ2pCLGlCQUFpQjtFQUNqQixjZDlCVztBbEZpc2ZmOztBZ0docmZBO0VBZU0sY2RoQ1M7QWxGcXNmZjs7QWdHaHFmQTtFQUVJLGNkZlc7RWNnQlgsaUJBQWlCO0VBQ2pCLGFkakJXO0Vja0JYLCtCQUF5QztFQUN6QyxjQUFjO0FoR2txZmxCOztBZ0d4cWZBO0VBU00sa0JBQWtCO0FoR21xZnhCOztBZ0c1cWZBO0VBWU0sY2RqRFM7RWNrRFQsYWRsRFM7RWNtRFQsZUFBZTtBaEdvcWZyQjs7QWdHbHJmQTtFQWlCTSxjZHZGb0I7RWN3RnBCLGtCZExjO0VjTWQsa0JBQWtCO0FoR3FxZnhCOztBZ0d4cmZBO0VBc0JRLFlBQVk7RUFDWiw2QkFBNkI7RUFDN0IsY2Q5RmtCO0FsRm93ZjFCOztBQXJwZkE7RWdHUkksY2R0RVc7RWN1RVgsZ0JBQWdCO0VBQ2hCLFlBQVk7RUFDWixVQUFVO0VBQ1YsYUFBYTtFQUNiLGVBQWU7RUFDZixnQkFBZ0I7QWhHaXFmcEI7O0FBL3BmQTtFZ0dDTSxjZGpJaUI7RWNrSWpCLGlCQUFpQjtBaEdrcWZ2Qjs7QWdHOXBmQTs7O3NCaEdtcWZzQjtBZ0cvcGZ0QjtFQUNFLG9CQUFvQjtBaEdpcWZ0Qjs7QWdHbHFmQTtFQUlNLHlCQUF5QjtBaEdrcWYvQjs7QWdHdHFmQTtFQU9NLGNkakppQjtFY2tKakIsV0FBVztBaEdtcWZqQjs7QWdHM3FmQTtFQVdNLGdCQUFnQjtFQUNoQixZQUFZO0FoR29xZmxCOztBZ0docmZBO0VBZ0JJLHlCQUF5QjtFQUN6QixjZHpHVztBbEY2d2ZmOztBZ0dycmZBO0VBb0JJLGlCZHpEaUI7QWxGOHRmckI7O0FnR3pyZkE7RUF1QkkseUJkN0hZO0VjOEhaLGFBQWE7QWhHc3FmakI7O0FnRzlyZkE7RUEwQk0seUJkaklnQjtBbEZ5eWZ0Qjs7QWdHbnFmQTtFQUNFLGdCQUFnQjtBaEdzcWZsQjs7QWdHdnFmQTtFQUlJLFVBQVU7RUFDVixnQkFBZ0I7QWhHdXFmcEI7O0FnRzVxZkE7RUFRTSxlQUFlO0VBQ2YsaUJBQWlCO0VBQ2pCLG9CZGpGZ0I7QWxGeXZmdEI7O0FnR2xyZkE7RUFjSSxhQUFhO0FoR3dxZmpCOztBZ0dwcWZBO0VBRUksY2Q3TG1CO0VjOExuQiw2QkFBNkI7RUFDN0IseUJkL0xtQjtFY2dNbkIsb0JBQW9CO0VBQ3BCLGFBQWE7RUFDYixnQkFBZ0I7RUFDaEIsaUJkOUZpQjtFYytGakIsY0FBYztBaEdzcWZsQjs7QWdHL3FmQTtFQVlNLHlCZGpNaUI7QWxGdzJmdkI7O0FnR2xxZkE7RUFDRSxhQUFhO0FoR3FxZmY7O0FnR3RxZkE7RUFHSSx5QmQvTW1CO0VjZ05uQixjZHRJVztFY3VJWCxnQkFBZ0I7RUFDaEIsaUJkN0dpQjtFYzhHakIsY0FBYztBaEd1cWZsQjs7QWdHbnFmQTtFQUNFLDRCQUE0QjtBaEdzcWY5Qjs7QWdHdnFmQTtFQUdJLGNkMU5tQjtFYzJObkIsaUJBQWlCO0FoR3dxZnJCOztBZ0c1cWZBO0VBTU0sY2Q1TnVCO0FsRnM0ZjdCOztBZ0docmZBO0VBV00sY2RsT2lCO0VjbU9qQixpQkFBaUI7QWhHeXFmdkI7O0FnR3JyZkE7RUFjUSxjZHBPcUI7QWxGKzRmN0I7O0FnR3pyZkE7RUFtQkksaUJBQWlCO0VBQ2pCLHlCZDNPbUI7RWM0T25CLFlBQVk7RUFDWixpQkFBaUI7RUFDakIsaUJBQWlCO0VBQ2pCLGtCQUFrQjtBaEcwcWZ0Qjs7QWdHdHFmQTtFQUNFLFVBQVU7RUFDVixnQkFBZ0I7QWhHeXFmbEI7O0FnR3JxZkE7RUFDRSxhQUFhO0VBQ2IsbUJBQW1CO0VBQ25CLGtCQUFrQjtFQUNsQixnQkFBZ0I7RUFDaEIsWUFBWTtBaEd3cWZkOztBZ0c3cWZBO0VBUUksY2QvTVc7QWxGdzNmZjs7QWdHanJmQTtFQVdJLGNkek5nQjtFYzBOaEIsaUJBQWlCO0FoRzBxZnJCOztBZ0d0cmZBO0VBZUksZ0JBQWdCO0VBQ2hCLGdCQUFnQjtFQUNoQixVQUFVO0FoRzJxZmQ7O0FnRzVyZkE7RUFvQkkseUJkN1FtQjtFYzhRbkIsa0JBQWtCO0VBQ2xCLFNBQVM7RUFDVCxZQUFZO0VBQ1osV0FBVztFQUNYLFlBQVk7QWhHNHFmaEI7O0FnR3JzZkE7RUE0Qk0sY2RyUmlCO0FsRms4ZnZCOztBZ0d6c2ZBO0VBZ0NJLGtCQUFrQjtBaEc2cWZ0Qjs7QWdHN3NmQTtFQW1DSSxpQkFBaUI7QWhHOHFmckI7O0FnRzFxZkE7OztzQmhHK3Fmc0I7QWdHM3FmdEI7RUFDRSxpQkFBaUI7RUFDakIsc0JBQXNCO0VBQ3RCLGdCQUFnQjtFQUNoQixhQUFhO0FoRzZxZmY7O0FnR2pyZkE7RUFPSSxXQUFXO0VBQ1gsa0JBQWtCO0VBQ2xCLGNkblFzQjtFY29RdEIsaUJkdk1ZO0Vjd01aLGtCQUFrQjtFQUNsQixVQUFVO0FoRzhxZmQ7O0FnRzFyZkE7RUFnQk0seUJkcFBXO0VjcVBYLGNBQWM7QWhHOHFmcEI7O0FnRy9yZkE7RUFvQk0sY2R0UVM7QWxGcTdmZjs7QWdHMXFmQTs7O3NCaEcrcWZzQjtBZ0czcWZ0QjtFQUVJLGdCQUFnQjtBaEc0cWZwQjs7QWdHOXFmQTtFQU1JLGlCQUFpQjtFQUNqQixnQkFBZ0I7RUFDaEIsZUFBZTtBaEc0cWZuQjs7QWdHcHJmQTtFQWNNLGlCQUFpQjtFQUNqQixjQUFjO0VBQ2QsZ0JBQWdCO0VBQ2hCLGtCZDlPYztFYytPZCxpQkFBaUI7RUFDakIsY2RwVmlCO0VjcVZqQiw2QkFBNkI7RUFDN0IseUJkdFZpQjtBbEZnZ2dCdkI7O0FnRy9yZkE7RUF1QlEsY2Q5UU87RWMrUVAseUJkelZlO0VjMFZmLFlBQVk7QWhHNHFmcEI7O0FnR3JzZkE7RUErQkksYUFBYTtBaEcwcWZqQjs7QWdHenNmQTtFQWlDTSxjQUFjO0VBQ2QseUJkdFNXO0VjdVNYLGdCQUFnQjtFQUNoQixpQkFBaUI7RUFDakIsZUFBZTtBaEc0cWZyQjs7QWdHdnFmQTtFQUNFLFVBQVU7QWhHMHFmWjs7QWdHdnFmQTtFQUVJLGdCQUFnQjtBaEd5cWZwQjs7QWdHM3FmQTtFQU1NLG1CQUFtQjtFQUVyQix5QmRqWG1CO0Vja1huQixjZDlTVztFYytTWCxrQmRyUmdCO0FsRjY3ZnBCOztBZ0dscmZBO0VBWU0seUJkcFh1QjtBbEY4aGdCN0I7O0FnR3RyZkE7RUFpQkksYUFBYTtBaEd5cWZqQjs7QWdHMXJmQTtFQW1CTSxjQUFjO0FoRzJxZnBCOztBZ0d0cWZBO0VBS0ksaUJBQWlCO0VBQ2pCLG1CQUFtQjtBaEdxcWZ2Qjs7QWdHanFmQTtFQUVJLGlCQUFpQjtBaEdtcWZyQjs7QWdHcnFmQTtFQUtNLGFBQWE7QWhHb3FmbkI7O0FnRzlwZkE7O3NCaEdrcWZzQjtBZ0cvcGZ0QjtFQUVJLGNBQWM7QWhHZ3FmbEI7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RUFDWixrQkFBa0I7QWhHbXJmNUI7O0FnR3J4ZkE7RUFxR1ksaUJBQWlCO0FoR29yZjdCOztBZ0d6eGZBO0VBMEdVLG1CQUFtQjtFQUNuQixpQmQzZ0JXO0FsRjhyZ0JyQjs7QXVGL3VnQkE7RVNxa0JJLGlCZHBoQmlCO0VjcWhCakIsY2RoakJXO0VjaWpCWCxhQUFhO0FoRzhxZmpCOztBZ0cxcWZBO0VBQ0UseUJkbmtCZTtFY29rQmYsY2Qva0JhO0VjZ2xCYixpQmQvaEJrQjtFY2dpQmxCLGFBQWE7RUFDYixrQkFBa0I7RUFDbEIsaUJBQWlCO0FoRzZxZm5COztBZ0ducmZBO0VBU0ksa0JBQWtCO0FoRzhxZnRCOztBZ0cxcWZBO0VBRUksY2QzbEJhO0VjNGxCYixpQmQ1aUJnQjtBbEZ3dGdCcEI7O0FnRy9xZkE7RUFNSSxZQUFZO0FoRzZxZmhCOztBZ0d6cWZBOztzQmhHNnFmc0I7QWdHMXFmdEI7RUFDRSxjZDdsQmU7RWM4bEJmLGtCZHZqQmtCO0Vjd2pCbEIsZUFBZTtFQUNmLGdCQUFnQjtBaEc0cWZsQjs7QWdHMXFmQTs7c0JoRzhxZnNCO0FnRzNxZnRCO0VBQ0Usd0JBQXdCO0VBQ3hCLHlCZDFsQmE7RWMybEJiLGlCQUFpQjtFQUNqQixjQUFjO0VBQ2QsYUFBYTtFQUNiLGdCQUFnQjtFQUNoQixpQ2Q3bkJvQjtBbEYweWdCdEI7O0FnR3ByZkE7RUFTSSxZQUFZO0FoRytxZmhCOztBZ0d4cmZBO0VBWU0seUJBQXdCO0VBQ3hCLGVBQWU7QWhHZ3JmckI7O0FnRzFxZkE7RUFDRSx5QmR0bkJlO0VjdW5CZixrQkFBa0I7QWhHNnFmcEI7O0FnRy9xZkE7RUFLSSxjZHRvQmE7RWN1b0JiLGtCZHJsQmdCO0Vjc2xCaEIsaUJBQWlCO0FoRzhxZnJCOztBZ0dycmZBO0VBVUksa0JBQWtCO0VBQ2xCLGlCQUFpQjtBaEcrcWZyQjs7QWdHM3FmQTtFQUVJLDhCQUF3QztBaEc2cWY1Qzs7QWdHL3FmQTtFQUtJLDhCQUF3QztBaEc4cWY1Qzs7QWdHbnJmQTtFQVFJLDhCQUFzQztBaEcrcWYxQzs7QWdHM3FmQTtFQUNFLHlCQUF5QjtBaEc4cWYzQjs7QWdHM3FmQTtFQUNFLHlCZDdvQmU7RWM4b0JmLGdCQUFnQjtBaEc4cWZsQjs7QWdHaHJmQTtFQUlJLGdCQUFnQjtBaEdncmZwQjs7QWdHcHJmQTtFQU1NLHlCZG5zQnNCO0FsRnEzZ0I1Qjs7QWdHeHJmQTtFQVNNLHlCZDd0QmlCO0FsRmc1Z0J2Qjs7QWdHNXJmQTtFQVlNLHlCZGxzQnFCO0FsRnMzZ0IzQjs7QWdHaHNmQTtFQWVNLHlCZGx0Qm9CO0FsRnU0Z0IxQjs7QWdHcHNmQTtFQWtCTSx5QmQ3dEJrQjtBbEZtNWdCeEI7O0FnR3hzZkE7RUFxQk0seUJkNXVCMEI7QWxGbTZnQmhDOztBZ0dqcmZBO0FBRUE7RUFDRSxtQmR6cUJlO0FsRjQxZ0JqQjs7QWdHanJmQTtFQUVJLGdCQUFnQjtBaEdtcmZwQjs7QWdHcnJmQTtFQUtJLHlCZG52Qm1CO0FsRnU2Z0J2Qjs7QWdHaHJmQTtFQUNFLFlBQVk7QWhHbXJmZDs7QWdHaHJmQTtFQUNFLGNBQW1CO0VBQ25CLGlCQUFvQjtFQUNwQixxQkFBcUI7RUErRXJCO0FoR3FtZkY7O0FnR3ZyZkE7RUFLSSxXQUFXO0FoR3NyZmY7O0FnRzNyZkE7RUFRSSx5QmRqc0JhO0Vja3NCYixrQ2Roc0JXO0FsRnUzZ0JmOztBZ0doc2ZBO0VBV00sc0JBQXNCO0VBQ3RCLHNCQUE2QjtBaEd5cmZuQzs7QWdHcnNmQTtFQWNRLGlCQUFrQjtFQUNsQixzQkFBc0I7RUFDdEIsK0JkdnNCTztFY3dzQlAsc0JBQXNCO0FoRzJyZjlCOztBZ0c1c2ZBO0VBb0JRLGlCQUFpQjtBaEc0cmZ6Qjs7QWdHaHRmQTtFQXVCUSxrQkFBa0I7QWhHNnJmMUI7O0FnR3B0ZkE7RUEwQlEsU0FBVTtFQUNWLFVBQVU7QWhHOHJmbEI7O0FnR3p0ZkE7RUE4QlEsY0FBYztFQUNkLFdBQVc7QWhHK3JmbkI7O0FnRzl0ZkE7RUFrQ1EsbUJBQW1CO0VBQ25CLDBCQUEwQjtFQUMxQiw2QkFBNkI7RUFDN0IsY2Q1dEJPO0VjNnRCUCxvQkFBb0I7RUFDcEIsZUFBZTtFQUNmLGVBQWU7RUFDZixTQUFTO0VBQ1QsWUFBWTtBaEdnc2ZwQjs7QWdHMXVmQTtFQTZDUSxtQkFBbUI7RUFDbkIseUJkeHZCUztFY3l2QlQseUJBQXlCO0VBQ3pCLDRCQUE0QjtFQUM1QixjZHh1Qk87RWN5dUJQLG9CQUFvQjtFQUNwQixlQUFlO0VBQ2YsU0FBUztFQUNULFlBQVk7QWhHaXNmcEI7O0FnR3R2ZkE7RUF3RFEsY0FBYztFQUNkLG1CQUFtQjtBaEdrc2YzQjs7QWdHM3ZmQTtFQTZETSxjZHZ5QnNCO0FsRnkrZ0I1Qjs7QWdHL3ZmQTtFQWdFTSxjZGh6Qm9CO0FsRm0vZ0IxQjs7QWdHbndmQTtFQXFFSSx5QmRseUJZO0FsRm8rZ0JoQjs7QWdHdndmQTtFQXVFTSxjZDl2QlM7RWMrdkJULHlCZHR5QmdCO0FsRjArZ0J0Qjs7QWdHNXdmQTtFQTRFSSx5QmRsMUJtQjtBbEZzaGhCdkI7O0FnR2h4ZkE7RUE4RU0sY2Ryd0JTO0Vjc3dCVCx5QmRwMUJ1QjtBbEYwaGhCN0I7O0FnR3J4ZkE7RUFvRkkseUJkLzBCbUI7QWxGb2hoQnZCOztBZ0d6eGZBO0VBc0ZNLGNkN3dCUztFYzh3QlQseUJkajFCdUI7QWxGd2hoQjdCOztBaUczaWhCQTtFQUNFLGVBQWU7RUFDZixVQUFVO0VBQ1YsUUFBUTtFQUNSLHlCZkdxQjtFZUZyQixXQUFXO0VBQ1gsWUFBWTtFQUNaLGdCQUFnQjtBakc4aWhCbEI7O0FpR3JqaEJBO0VBU0ksY2Y2RVc7QWxGbStnQmY7O0FpRzdpaEJBO0VBQ0UsZUFBZTtFQUNmLFVBQVU7RUFDVixRQUFRO0VBQ1IsVUFBVTtBakdnamhCWjs7QWlHcGpoQkE7RUFPSSxnQkFBZ0I7QWpHaWpoQnBCOztBaUd4amhCQTtFQVdJLGdCQUFnQjtFQUNoQiwrQkFBK0I7RUFDL0Isa0JBQWtCO0VBQ2xCLGtCQUFrQjtBakdpamhCdEI7O0FpRy9qaEJBO0VBaUJRLFdBQVc7RUFDWCxpQ0FBaUM7QWpHa2poQnpDOztBaUdwa2hCQTtFQXNCUSxjQUFjO0VBQ2QsWUFBWTtFQUNaLFlBQVk7RUFDWixrQkFBa0I7RUFDbEIsVUFBVTtBakdramhCbEI7O0FpRzVraEJBOztFQThCUSxrQkFBa0I7RUFDbEIsaUJBQWlCO0FqR21qaEJ6Qjs7QWlHbGxoQkE7O0VBbUNRLHFCQUFxQjtBakdvamhCN0I7O0FpR3ZsaEJBOztFQXVDUSxxQkFBcUI7RUFDckIsaUJmNkRhO0VlNURiLGlCQUFpQjtFQUNqQixtQkFBbUI7RUFDbkIsV0FBVztBakdxamhCbkI7O0FpR2htaEJBO0VBOENRLGlCZnlEUTtBbEY2L2dCaEI7O0FpR3BtaEJBO0VBb0RVLFlBQVk7QWpHb2poQnRCOztBaUd4bWhCQTtFQXVEVSxjZm1CSztBbEZraWhCZjs7QWlHNW1oQkE7RUErRFEsdUJBQXNCO0FqR2lqaEI5Qjs7QWlHM2loQkE7O3NCakcraWhCc0I7QWlHNWloQnRCO0VBQ0UsMkRBQTJEO0FqRzhpaEI3RDs7QWlHNWloQkE7RUFDRSxhQUFhO0FqRytpaEJmOztBa0Q3aGhCQTtFK0NmRSxnQkFBZ0I7QWpHZ2poQmxCOztBaUdqamhCQTtFQUdJLG1CQUFtQjtBakdramhCdkI7O0FpR3JqaEJBO0VBTU0sVUFBVTtBakdtamhCaEI7O0FpR3pqaEJBO0VBVUksZ0JBQWdCO0VBQ2hCLDJCQUEyQjtFQUMzQixpQkFBaUI7QWpHbWpoQnJCOztBaUcvaWhCQTtFQUNFLHlCZnpGcUI7QWxGMm9oQnZCOztBaUduamhCQTtFQUlJLHlCZjNGeUI7QWxGOG9oQjdCOztBaUdoamhCQTs7c0JqR29qaEJzQjtBaUdoamhCdEI7RUFDRSxZQUFZO0VBQ1osbUJBQW1CO0VBQ25CLGlCQUFpQjtFQUNqQixrQkFBa0I7QWpHa2poQnBCOztBaUcvaWhCQTs7Ozs7Ozs7Ozs7RWpHNGpoQkU7QWlHL2loQkY7O3NCakdramhCc0I7QWlHL2loQnRCO0VBRUksa0JBQWtCO0FqR2dqaEJ0Qjs7QWlHbGpoQkE7RUFLSSx1QkFBdUI7QWpHaWpoQjNCOztBaUc3aWhCQTs7c0JqR2lqaEJzQjtBQUN0QjtFaUc5aWhCRSxpQkFBaUI7QWpHZ2poQm5COztBQUVBO0VpRy9paEJJLGdCQUFnQjtFQUNo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VixpQkFBaUI7QW5HdzBoQnJCOztBbUdoMWhCQTtFQVdJLFdBQVc7QW5HeTBoQmY7O0FtR3AxaEJBO0VBYU0sVUFBVTtBbkcyMGhCaEI7O0FtR3gxaEJBO0VBZ0JNLGtCQUFrQjtFQUNsQixvQkFBb0I7QW5HNDBoQjFCOztBbUc3MWhCQTtFQW9CTSxVQUFVO0FuRzYwaEJoQjs7QW1HajJoQkE7RUF1Qk0sVUFBVTtBbkc4MGhCaEI7O0FtRzEwaEJBO0VBQ0UsZUFBZTtBbkc2MGhCakI7O0FtRzMwaEJBO0VBRUksY2pCNUZtQjtBbEZ5NmhCdkI7O0FtRzEwaEJBO0VBQ0UsY2pCNUNlO0FsRnkzaEJqQjs7QXFDejdoQkE7RThEZ0hFLFlBQVk7RUFDWix1QkFBdUI7QW5HNjBoQnpCOztBbUcvMGhCQTtFQUtJLGlCQUFpQjtFQUNqQixrQkFBa0I7RUFDbEIsWUFBWTtBbkc4MGhCaEI7O0FtR3IxaEJBO0VBVU0sY2pCbEhpQjtBbEZpOGhCdkI7O0FtR3oxaEJBO0VBYU0sZ0NqQnJIaUI7QWxGcThoQnZCOztBbUczMGhCQTtFQUVJLGVBQWU7QW5HNjBoQm5COztBbUcvMGhCQTtFQUtJLFlBQVk7RUFDWixXQUFXO0FuRzgwaEJmOztBbUdwMWhCQTtFQVFNLG1CQUFtQjtBbkdnMWhCekI7O0FtRzEwaEJBOztzQm5HODBoQnNCO0FtRzMwaEJ0QjtFQUVJLGlCQUFpQjtFQUNqQixpQmpCbENZO0VpQm1DWixtQkFBbUI7QW5HNDBoQnZCOztBbUdoMWhCQTtFQU9JLDZCQUE2QjtFQUM3QixZQUFZO0VBQ1osaUJqQnhDWTtFaUJ5Q1osaUJBQWlCO0FuRzYwaEJyQjs7QW1HdjFoQkE7RUFjSSxtQkFBbUI7QW5HNjBoQnZCOztBbUczMWhCQTtFQWdCTSx5QmpCdEppQjtFaUJ1SmpCLGlCakJsRGU7RWlCbURmLG1CQUFtQjtBbkcrMGhCekI7O0FtR3owaEJBO0VBR00sV0FBVztBbkcwMGhCakI7O0FtRzcwaEJBO0VBTU0sWUFBWTtBbkcyMGhCbEI7O0FtR2oxaEJBO0VBU00sWUFBWTtBbkc0MGhCbEI7O0FtR3IxaEJBO0VBY00sY2pCMUhTO0VpQjJIVCxXQUFXO0VBQ1gsWUFBWTtBbkcyMGhCbEI7O0FtRzMxaEJBO0VBbUJNLGtCakI3RWM7RWlCOEVkLGdCQUFnQjtFQUNoQixpQkFBaUI7RUFDakIsa0JBQWtCO0VBQ2xCLHlCakJySFc7RWlCc0hYLDBCQUEwQjtBbkc0MGhCaEM7O0FtR3AyaEJBO0VBMEJRLHlCakIvSFM7QWxGNjhoQmpCOztBbUd4MmhCQTtFQStCSSxrQmpCdkZnQjtFaUJ3RmhCLGdCQUFnQjtBbkc2MGhCcEI7O0FtRzcyaEJBO0VBbUNJLGlCQUFpQjtFQUNqQixjakJsTW1CO0VpQm1NbkIsa0JqQi9GZ0I7QWxGNjZoQnBCOztBbUduM2hCQTtFQXdDSSxrQmpCbEdnQjtFaUJtR2hCLGNqQnhMbUI7QWxGdWdpQnZCOztBbUd4M2hCQTtFQTRDSSxrQmpCdEdnQjtBbEZzN2hCcEI7O0FtRzUwaEJBO0VBQ0UseUJqQmxKZTtFaUJtSmYsZ0JBQWdCO0VBQ2hCLGtCQUFrQjtBbkcrMGhCcEI7O0FtR2wxaEJBO0VBTUksNEJBQTRCO0FuR2cxaEJoQzs7QW1HdDFoQkE7RUFTSSxjQUFjO0FuR2kxaEJsQjs7QW1HMTFoQkE7RUFZSSw2QkFBNkI7RUFDN0IsWUFBWTtFQUNaLGNqQjFLVztFaUIyS1gsaUJBQWlCO0VBQ2pCLGFBQWE7QW5HazFoQmpCOztBbUdsMmhCQTtFQW1CTSxjakJ0TGM7RWlCdUxkLGtCQUFrQjtBbkdtMWhCeEI7O0FtR3YyaEJBO0VBd0JJLHlCakJ0T21CO0FsRnlqaUJ2Qjs7QW1HMzJoQkE7RUEwQk0sY2pCOUpTO0FsRm0vaEJmOztBbUd4MWhCSTtFQVNGLGNqQnhMZTtFaUJ5TGYsa0JBQWtCO0FuR20xaEJwQjs7QW1HcjFoQkE7RUFJSSxnQ2pCM0xhO0VpQjRMYixZQUFZO0VBQ1osV0FBVztFQUNYLGtCQUFrQjtFQUNsQixTQUFTO0VBQ1QsVUFBVTtBbkdxMWhCZDs7QW1HajFoQkE7RUFDRSxhQUFhO0VBQ2Isa0JBQWtCO0VBQ2xCLFdBQVc7RUFDWCxVQUFVO0VBQ1Ysa0JBQWtCO0VBQ2xCLGtC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RnE3akJqQjs7QXVHeitqQkE7RUFxQ0kseUJyQmVhO0FsRnk3akJqQjs7QXVHNytqQkE7RUF3Q00sY3JCcERpQjtBbEY2L2pCdkI7O0F1R244akJBO0VBQ0UsbUJBQW1CO0F2R3M4akJyQjs7QXVHdjhqQkE7RUFJSSxrQnJCd0NnQjtFcUJ2Q2hCLGNyQlhhO0FsRms5akJqQjs7QXVHNThqQkE7RUFVTSxrQkFBa0I7RUFDbEIsa0JyQmlDYztFcUJoQ2QsY3JCdEVpQjtFcUJ1RWpCLG1CckJDVztBbEZxOGpCakI7O0F1R245akJBO0VBZVEsa0JyQjJCWTtFcUIxQlosa0JBQWlCO0VBQ2pCLGtCQUFpQjtBdkd3OGpCekI7O0F1R2w4akJBO0VBQ0UsMEJyQnZGcUI7RXFCd0ZyQixrQkFBa0I7RUFDbEIsVUFBVTtFQUNWLGFBQWE7RUFDYixrQkFBa0I7QXZHcThqQnBCOztBdUcxOGpCQTtFQU9JLHlCckIzQ2E7QWxGay9qQmpCOztBdUc5OGpCQTtFQVlJLGNyQmxHbUI7RXFCbUduQixnQkFBZ0I7QXZHczhqQnBCOztBdUduOWpCQTtFQWlCSSxjckIxQ2E7RXFCMkNiLGlCQUFpQjtFQUNqQixpQnJCR1k7QWxGbThqQmhCOztBdUd6OWpCQTtFQXVCSSxpQnJCSGlCO0FsRnk4akJyQjs7QXVHNzlqQkE7RUEyQkksa0JBQWtCO0VBQ2xCLE9BQU87RUFDUCxNQUFNO0VBQ04sWUFBWTtFQUNaLFdBQVc7RUFDWCxlQUFlO0VBQ2YsVUFBVTtBdkdzOGpCZDs7QXVHditqQkE7RUFtQ00sYUFBYTtBdkd3OGpCbkI7O0F1RzMrakJBO0VBd0NJLHlCckJsRGE7RXFCbURiLGVBQWU7RUFDZixnREFBZ0Q7RUFDaEQsNkNBQTZDO0VBQzdDLDJDQUEyQztFQUMzQyx3Q0FBd0M7QXZHdThqQjVDOztBdUc3N2pCQTtFQUNFLHdCQUF3QjtBdkdnOGpCMUI7O0F1R2o4akJBO0VBSUksaUJBQWlCO0VBQ2pCLG9CQUFvQjtBdkdpOGpCeEI7O0F1Rzc3akJBO0VBdURFLG1CckJySWU7QWxGK2drQmpCOztBdUdqOGpCQTtFQUVJLDZCQUE0QjtFQUM1Qiw2QkFBZ0M7RUFDaEMsVUFBVTtFQUNWLFNBQVM7QXZHbThqQmI7O0F1R3g4akJBO0VBVUksYUFBYTtBdkdrOGpCakI7O0F1RzU4akJBO0VBY0ksY0FBYztBdkdrOGpCbEI7O0F1R2g5akJBO0VBa0JJLG1CckJ6Rlc7RXFCMEZYLGlDckI3RmE7QWxGK2hrQmpCOztBdUdyOWpCQTtFQXNCTSxjQUFjO0F2R204akJwQjs7QXVHejlqQkE7RUEwQk0sYUFBYTtBdkdtOGpCbkI7O0F1Rzc5akJBO0VBNkJNLG1CckJwR1M7QWxGd2lrQmY7O0F1R2orakJBOztFQW1DSSxhQUFhO0F2R204akJqQjs7QXVHdCtqQkE7RUF1Q0ksZ0NyQjdIYTtBbEZna2tCakI7O0F1RzErakJBO0VBMkNJLGlCQUFpQjtFQUNqQixvQkFBb0I7QXZHbThqQnhCOztBdUcvK2pCQTtFQStDTSxtQnJCL0hXO0FsRm1ra0JqQjs7QXVHbi9qQkE7RUFtRE0sbUJyQjdIVztBbEZpa2tCakI7O0F1R3YvakJBO0VBMERJLGNBQWM7RUFDZCxjckIxSlc7RXFCMkpYLGlCckJ4R2lCO0VxQnlHakIsaUJBQWlCO0F2R2k4akJyQjs7QXVHOS9qQkE7RUFpRUksY0FBYztFQUNkLGNyQi9KYTtFcUJnS2IsaUJyQmpIZ0I7QWxGa2prQnBCOztBdUdwZ2tCQTtFQXVFSSxXQUFXO0VBQ1gsZUFBZTtFQUNmLFlBQVk7RUFDWixtQkFBbUI7QXZHaThqQnZCOztBdUczZ2tCQTtFQThFSSxjckI3S1c7RXFCOEtYLGNBQWM7QXZHaThqQmxCOztBdUdoaGtCQTtFQW1GSSxxQkFBcUI7QXZHaThqQnpCOztBdUdwaGtCQTtFQXVGSSwyQkFBMkI7RUFDM0IseUJyQjdLYTtFcUI4S2IsWUFBWTtBdkdpOGpCaEI7O0F1RzFoa0JBO0VBNEZNLHVCQUFzQjtBdkdrOGpCNUI7O0F1Rzloa0JBO0VBK0ZNLFNBQVM7RUFDVCxjQUFjO0F2R204akJwQjs7QXVHNzdqQkE7QUFDQTtFQUVJLGlCQUFpQjtBdkcrN2pCckI7O0F1R2o4akJBO0VBS00sbUJyQnRMVztBbEZzbmtCakI7O0F1R3I4akJBO0VBUVEsY3JCck5ZO0VxQnNOWixrQnJCM0pZO0VxQjRKWixpQkFBaUI7QXZHaThqQnpCOztBdUczOGpCQTtFQWVNLHVCQUF1QjtBdkdnOGpCN0I7O0F1Ry84akJBO0VBbUJNLG1CckJ2TVc7RXFCd01YLFdBQVc7RUFDWCxZQUFZO0VBQ1osWUFBWTtBdkdnOGpCbEI7O0F1R3Q5akJBO0VBeUJRLHlCckJ0UmU7QWxGdXRrQnZCOztBdUcxOWpCQTtFQTJCVSxZQUFZO0F2R204akJ0Qjs7QXVHOTlqQkE7RUErQlEsWUFBWTtFQUNaLGlCQUFpQjtFQUNqQixnQkFBZ0I7QXZHbThqQnhCOztBdUdwK2pCQTtFQW1DVSxtQkFBbUI7QXZHcThqQjdCOztBdUd4K2pCQTtFQXVDUSxVQUFVO0VBQ1YsZ0JBQWdCO0F2R3E4akJ4Qjs7QXVHNytqQkE7RUEwQ1Usa0JBQWtCO0VBQ2xCLFdBQVc7QXZHdThqQnJCOztBdUdsL2pCQTtFQThDWSxlQUFlO0F2R3c4akIzQjs7QXVHdC9qQkE7RUFtRFUsaUJBQWlCO0F2R3U4akIzQjs7QXVHMS9qQkE7RUF1RFEsVUFBVTtFQUNWLFlBQVk7QXZHdThqQnBCOztBdUcvL2pCQTtFQTREUSxtQnJCdlBTO0FsRjhya0JqQjs7QXVHbmdrQkE7RUFnRVEsbUJyQnBQUztFcUJxUFQsZ0JBQWdCO0VBQ2hCLGlDckI5UWM7RXFCK1FkLGtCQUFrQjtBdkd1OGpCMUI7O0F1RzFna0JBO0VBc0VVLGVBQWU7QXZHdzhqQnpCOztBdUc5Z2tCQTtFQXdFWSxnQ3JCblFLO0FsRjZza0JqQjs7QXVHbGhrQkE7RUEyRVksaUJBQWlCO0F2RzI4akI3Qjs7QXVHdGhrQkE7RUE4RVksbUJBQW1CO0VBQ25CLGNyQjVVVztBbEZ3eGtCdkI7O0F1R3A4akJBOztDdkd3OGpCQztBdUdyOGpCRDtFQUNFLFVBQVU7RUFDVixtQnJCOVFlO0FsRnF0a0JqQjs7QXVHejhqQkE7RUFLSSxtQnJCaFZ5QjtBbEZ3eGtCN0I7O0F1R3I4akJBO0VBQ0UsbUJyQnBWMkI7QWxGNHhrQjdCOztBdUdwOGpCQTtFQUNFLG1CckI1UmU7RXFCNlJmLGlCQUFnQjtBdkd1OGpCbEI7O0F1R3o4akJBO0VBSUksYUFBWTtFQUNaLHNCQUFzQjtBdkd5OGpCMUI7O0F1Rzk4akJBO0VBUUksY3JCdFZzQjtBbEZneWtCMUI7O0F1R2w5akJBO0VBV0ksZ0JBQWdCO0VBQ2hCLGNyQnZUYTtFcUJ3VGIsa0JBQWlCO0F2RzI4akJyQjs7QXVHeDlqQkE7RUFnQkksY3JCOVZzQjtFcUIrVnRCLG1CQUFtQjtBdkc0OGpCdkI7O0F1R3Y4akJBOztFdkcyOGpCRTtBdUd2OGpCRjtFQUVJLGdCQUFnQjtFQUNoQixZQUFZO0F2R3c4akJoQjs7QXVHMzhqQkE7RUFNSSxrQnJCelJnQjtFcUIwUmhCLGlCQUFpQjtBdkd5OGpCckI7O0F1R3I4akJBO0VBRUksbUJyQmhVYTtFcUJpVWIsOEJBQTZCO0F2R3U4akJqQzs7QWdHNXFqQkE7RU92UkksVUFBUztFQUNULGlCQUFpQjtBdkd1OGpCckI7O0F1Ry84akJBO0VBV00sbUJyQi9ZaUI7QWxGdTFrQnZCOztBdUduOWpCQTtFQWFRLHlCQUFzQjtBdkcwOGpCOUI7O0F1R3Y5akJBO0VBZVUsbUJyQmxabUI7QWxGODFrQjdCOztBdUczOWpCQTtFQW1CUSxtQnJCdFpxQjtBbEZrMmtCN0I7O0F1Ry85akJBO0VBc0JRLDhCQUEwQztBdkc2OGpCbEQ7O0F1R3Q4akJBO0VBRUksY3JCNVl3QjtFcUI2WXhCLDRCQUEyQjtBdkd3OGpCL0I7O0F1RzM4akJBO0VBTUksY3JCell1QjtBbEZrMWtCM0I7O0F1Ry84akJBO0VBU0ksY3JCelpzQjtBbEZtMmtCMUI7O0F1R245akJBO0VBYUksY3JCelltQjtFcUIwWW5CLGtCQUFrQjtBdkcwOGpCdEI7O0F1R3g5akJBO0VBaUJJLGlCQUFpQjtBdkcyOGpCckI7O0F1RzU5akJBO0VBcUJJLGNBQWM7QXZHMjhqQmxCOztBdUdoK2pCQTtFQXlCSSxtQkFBbUI7RUFDbkIsZUFBZTtBdkcyOGpCbkI7O0F1R3IrakJBO0VBNEJNLFdBQVc7QXZHNjhqQmpCOztBdUd6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O0VxQm8yQkwseUJyQjk2QmE7RXFCKzZCYixlQUFlO0F2R3M5akJ6Qjs7QXVHamtrQkE7RUE2R1kseUJyQmg3QmlCO0FsRnc0bEI3Qjs7QXVHcmtrQkE7RUFpSFkseUJBQWlDO0VBQ2pDLG9CckJwMUJVO0VxQnExQlYsb0NBQW1DO0F2R3c5akIvQzs7QXVHM2trQkE7RUFxSGMsb0NBQW1DO0F2RzA5akJqRDs7QXVHL2trQkE7RUE2SE0saUJBQWlCO0VBQ2pCLFVBQVU7RUFDVixXQUFXO0F2R3M5akJqQjs7QXVHcmxrQkE7RUFtSU0sdUJBQXNCO0VBQ3RCLFVBQVU7QXZHczlqQmhCOztBdUdqOWpCQTtFQUNFLHlCQUF5QjtFQUN6QixhQUFhO0F2R285akJmOztBdUd0OWpCQTtFQU1JLGlCQUFpQjtFQUNqQixjckJuOEJzQjtBbEZ1NWxCMUI7O0F1R2g5akJBO0VBT0UsZUFBZTtFQUNmLGtCckI1M0JrQjtFcUI2M0JsQixVQUFVO0VBQ1Ysa0JBQWtCO0F2RzY4akJwQjs7QXVHdjlqQkE7RUFFSSxpQnJCcjNCaUI7RXFCczNCakIsY3JCMThCc0I7RXFCMjhCdEIseUJyQnY4QnlCO0VxQnc4QnpCLGFBQWE7QXZHeTlqQmpCOztBdUdoOWpCQTtFQUNFLGVBQWU7RUFDZixZQUFZO0VBRVosbUJBQW1CO0VBQ25CLHlCckJsK0JzQjtFcUJtK0J0QixjckJuK0JzQjtFcUJvK0J0Qiw0QkFBNEI7RUFDNUIsa0JBQWtCO0VBQ2xCLGdCQUFnQjtBdkdrOWpCbEI7O0F1RzM5akJBO0VBV0ksbUJyQnArQm1CO0VxQnErQm5CLGNyQnorQm9CO0FsRjY3bEJ4Qjs7QXVHaCtqQkE7RUFnQkkseUJyQng3QmE7RXFCeTdCYixjckJ4N0JhO0VxQnk3QmIsZUFBZTtBdkdvOWpCbkI7O0F1R3QrakJBO0VBcUJJLG1CQUFtQjtFQUNuQixjckI3N0JhO0FsRms1bEJqQjs7QW9GajlsQkE7RW1Cb2dDRSxtQnJCMy9Cc0I7RXFCNC9CdEIseUJyQjUvQnNCO0VxQjYvQnRCLGNyQjU3QmE7RXFCNjdCYiw0QkFBNEI7RUFDNUIsa0JBQWtCO0VBQ2xCLGdCQUFnQjtBdkdpOWpCbEI7O0F1Rzk4akJBO0VBQ0UsY0FBYztFQUNkLHNCQUFxQjtFQUNyQix5QnJCbDlCZTtFcUJtOUJmLGdCQUFnQjtBdkdpOWpCbEI7O0F1R3I5akJBO0VBTUksNEJBQTJCO0F2R205akIvQjs7QXVHejlqQkE7RUFXTSwyQkFBMkI7RUFDM0IseUJBQXFDO0VBQ3JDLGlDQUFpQztFQUNqQywwQkFBeUI7RUFDekIsbUJBQWtCO0VBQ2xCLHFCQUFxQjtBdkdrOWpCM0I7O0F1R2wrakJBO0VBcUJJLDJCQUEyQjtBdkdpOWpCL0I7O0F1R3QrakJBO0VBeUJJLHdCQUF1QjtFQUN2QixvQkFBbUI7QXZHaTlqQnZCOztBdUczK2pCQTtFQTZCSSxxQnJCNStCYTtFcUI2K0JiLG1CckJwK0JhO0VxQnErQmIsZ0JBQWdCO0F2R2s5akJwQjs7QXVHai9qQkE7RUFrQ0ksMEJBQXlCO0F2R205akI3Qjs7QXVHci9qQkE7RUFzQ0ksdUJBQXVCO0F2R205akIzQjs7QXVHei9qQkE7RUF5Q00seUJBQXVCO0VBQ3ZCLDZCQUE0QjtFQUM1QiwwQkFBeUI7QXZHbzlqQi9COztBdUcvL2pCQTtFQThDTSxvQ0FBMEM7RUFDMUMseUJBQXVCO0VBQ3ZCLG9CQUFtQjtFQUNuQiwyQkFBMEI7RUFDMUIsNEJBQTJCO0F2R3E5akJqQzs7QXVHdmdrQkE7RUF1REksZUFBZTtFQUNmLGdCQUFnQjtFQUNoQixnQ0FBK0I7RUFDL0IsdUJBQXNCO0F2R285akIxQjs7QXVHOWdrQkE7RUE2RE0sb0NBQWdEO0VBQ2hELHlCQUF1QjtFQUN2QixvQkFBbUI7RUFDbkIsMkJBQTBCO0VBQzFCLDRCQUEyQjtBdkdxOWpCakM7O0F1R3Roa0JBO0VBb0VNLG1CQUFrQjtBdkdzOWpCeEI7O0F1RzFoa0JBO0VBMEVNLG9DQUFvQztFQUNwQyxjckJobEN1QjtFcUJpbEN2QixpQkFBaUI7QXZHbzlqQnZCOztBdUdoaWtCQTtFQStFTSxjckJwbEN1QjtFcUJxbEN2QixpQkFBaUI7QXZHcTlqQnZCOztBdUdyaWtCQTtFQXNGTSxvQ0FBcUM7RUFDckMseUJBQStCO0F2R205akJyQzs7QXVHOThqQkE7RUFDRSw4QkFBOEI7QXZHaTlqQmhDOztBdUcvOGpCQTtFQUNFLGFBQVk7QXZHazlqQmQ7O0F1Ry84akJBO0VBQ0UsZ0JBQWdCO0VBQ2hCLFlBQVk7RUFDWixrQkFBa0I7RUFDbEIsV0FBVztBdkdrOWpCYjs7QXVHdDlqQkE7RUFPSSxlQUFlO0VBQ2YsY3JCM2pDYTtBbEY4Z21CakI7O0FUNWttQkE7RWdIOG5DRSxtQnJCdGpDZTtFcUJ1akNmLHlCckJqa0NlO0FsRm1obUJqQjs7QXVHcDlqQkE7RUFLSSxrQkFBa0I7RUFDbEIseUJyQnJrQ2E7QWxGd2htQmpCOztBdUd6OWpCQTtFQVFNLGVBQWU7QXZHcTlqQnJCOztBdUc3OWpCQTtFQVdNLGNBQWM7QXZHczlqQnBCOztBdUdqK2pCQTtFQWdCSSxrQkFBa0I7QXZHcTlqQnRCOztBdUdyK2pCQTtFQW1CSSxjckI5b0NtQjtBbEZvbW1CdkI7O0F1R3orakJBO0VBc0JJLGNyQnZrQ1c7RXFCd2tDWCxtQnJCbHBDbUI7QWxGeW1tQnZCOztBdUdwOWpCQTtFQUVJLGtCQUFrQjtFQUNsQixvQkFBbUI7RUFDbkIsMkJBQTBCO0VBQzFCLHlCQUF3QjtBdkdzOWpCNUI7O0F1RzM5akJBO0VBT00sY3JCNXBDaUI7QWxGb25tQnZCOztBdUdwOWpCQTtFQUVJLGtCQUFrQjtFQUNsQixvQkFBbUI7RUFDbkIsMkJBQTBCO0F2R3M5akI5Qjs7QXVHMTlqQkE7RUFNTSxjckJ0cUNpQjtBbEY4bm1CdkI7O0F1R245akJBO0VBRUkseUJyQnZxQ21CO0VxQndxQ25CLGdCQUFnQjtFQUNoQixlQUFlO0F2R3E5akJuQjs7QXVHejlqQkE7RUFPSSxnQkFBZ0I7RUFDaEIsaUJBQWlCO0F2R3M5akJyQjs7QXVHbDlqQkE7O0V2R3M5akJFO0F1R2w5akJGO0VBQ0UsbUJBQW1CO0F2R285akJyQjs7QXVHcjlqQkE7RUFJSSx5QnJCbm9DYTtFcUJvb0NiLGdCQUFnQjtBdkdxOWpCcEI7O0F1RzE5akJBO0VBU0ksY3JCN3FDd0I7QWxGa29tQjVCOztBdUc5OWpCQTtFQVlJLGNyQnRyQ3NCO0FsRjRvbUIxQjs7QXVHaDlqQkE7O0N2R285akJDO0F1R2g5akJEO0VBQ0UsbUJBQW1CO0F2R2s5akJyQjs7QXVHbjlqQkE7RUFHSSxpQkFBaUI7QXZHbzlqQnJCOztBdUd2OWpCQTtFQU1JLG1CckJsc0N5QjtBbEZ1cG1CN0I7O0F1RzM5akJBO0VBU0ksYUFBYTtBdkdzOWpCakI7O0F1Ry85akJBO0VBWU0saUJBQWlCO0F2R3U5akJ2Qjs7QXVHbitqQkE7RUFnQkksbUJyQi9wQ2E7RXFCZ3FDYixhQUFhO0VBQ2IsaUJBQWlCO0F2R3U5akJyQjs7QXVHeitqQkE7RUFxQkksYUFBYTtFQUNiLGlCQUFpQjtFQUNqQixtQnJCcHNDWTtFcUJxc0NaLGNyQi9wQ1c7QWxGdW5tQmY7O0F1R2gvakJBO0VBMkJJLHlCckJockNhO0FsRnlvbUJqQjs7QXVHcC9qQkE7RUE4QkksNEJBQTJCO0F2RzA5akIvQjs7QXdHcHRtQkE7RUFHTSxtQnRCa0ZTO0VzQmpGVCxjdEJPaUI7RXNCTmpCLDJCQUEwQjtFQUMxQix5QnRCS2lCO0VzQkpqQixrQkFBa0I7QXhHcXRtQnhCOztBd0c1dG1CQTtFQVVRLG1CdEJDZTtFc0JBZixjdEIwRU87QWxGNG9tQmY7O0F5R2p1bUJBO0VBQ0UsbUJBQW1CO0VBQ25CLGtCQUFrQjtFQUNsQixhQUFZO0F6R291bUJkOztBeUd2dW1CQTtFQU1JLFlBQVk7QXpHcXVtQmhCOztBeUczdW1CQTtFQVVJLGN2QnVEYTtFdUJ0RGIsa0J2QnNHZ0I7RXVCckdoQixnQkFBZ0I7QXpHcXVtQnBCOztBeUdqdm1CQTtFQWVJLHlCdkJKbUI7RXVCS25CLGlCQUFpQjtBekdzdW1CckI7O0F5R3R2bUJBO0VBbUJNLGdCQUFnQjtFQUNoQiw0QkFBMkI7RUFDM0IsaUJBQWlCO0F6R3V1bUJ2Qjs7QXlHNXZtQkE7RUF1QlEsbUJ2QlplO0V1QmFmLFdBQVc7QXpHeXVtQm5COztBeUdudW1CQTtFQUNFLGtCQUFrQjtBekdzdW1CcEI7O0F5R3Z1bUJBO0VBR0ksY3ZCdEJtQjtBbEY4dm1CdkI7O0F5R3B1bUJBO0VBQ0UsYUFBYTtFQUViLGN2QnlCZTtFdUJ4QmYsa0J2QndFa0I7RXVCdkVsQixpQkFBaUI7QXpHc3VtQm5COztBeUczdW1CQTtFQVFJLGN2QmxDbUI7RXVCbUNuQixpQnZCc0VjO0V1QnJFZCxpQkFBaUI7RUFDakIsY0FBYztBekd1dW1CbEI7O0F5R2x2bUJBO0VBZUksOEJ2QndCYTtBbEYrc21CakI7O0EwRzV4bUJBO0VBQ0UsYUFBYTtFQUNiLGlCQUFpQjtBMUcreG1CbkI7O0EwRzd4bUJBO0VBSkE7SUFNSSwyQkFBMkI7RTFHZ3ltQjdCO0FBQ0Y7O0EwRzl4bUJBO0VBQ0UsaUJ4QjZHaUI7RXdCNUdqQixpQkFBaUI7RUFDakIsb0N4QlhnQztBbEY0eW1CbEM7O0EwRzl4bUJBO0VBQ0UsZ0JBQWdCO0ExR2l5bUJsQjs7QTJHaHptQkE7RUFDRSx5QkFBeUI7RUFDekIsY3pCbUZhO0FsRmd1bUJmOztBMkdyem1CQTtFQUtJLHlCQUF5QjtBM0dvem1CN0I7O0EyR3p6bUJBO0VBU0ksb0NBQW1DO0EzR296bUJ2Qzs7QTJHN3ptQkE7RUFhSSx5QkFBeUI7QTNHb3ptQjdCOztBMkdqMG1CQTtFQWdCSSx5QkFBeUI7QTNHcXptQjdCOztBMkdyMG1CQTtFQW9CSSw0QkFBNEI7QTNHcXptQmhDOztBMkd6MG1CQTtFQXdCSSxjekI2RFc7QWxGd3ZtQmY7O0E0R3owbUJBOzs7b0Q1RzgwbUJvRDtBNEcxMG1CcEQ7RUFDRSxnQkFBZ0I7RUFBRTtBNUc2MG1CcEI7O0E0RzEwbUJBO0VBQ0UsZ0JBQWdCO0VBQUU7RUFDbEIsbUJBQW1CO0VBQUU7RUFDckIsaUJBQWlCO0VBQUU7QTVHZzFtQnJCOztBNEc3MG1CQTs7O0M1R2sxbUJDO0E0RzkwbUJEO0VBQ0UsY0FBYTtFQUNiLGVBQWM7QTVHZzFtQmhCOztBNEc1MG1CQTs7O0M1R2kxbUJDO0E0RzcwbUJEO0VBQ0UsV0FBVztBNUcrMG1CYjs7QTRHNTBtQkE7RUFDRSxxQkFBcUI7RUFBRTtFQUN2Qixt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L2hvQkE7RUE2Qk0sY2tGcEhTO0VsRnFIVCxxQkFBcUI7RUFDckIsaUJBQWlCO0FBc2dvQnZCOztBQWpnb0JBO0VBQ0UseUJBQXlCO0VBQ3pCLFlBQVk7RUFDWixrQkFBaUI7RUFDakIsZUFBZTtFQUNmLGFBQWE7RUFDYixlQUFlO0VBQ2YsTUFBTTtFQUNOLFNBQVM7RUFDVCxVQUFTO0FBb2dvQlgiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9hc3NldHMvLi9ub2RlX21vZHVsZXMvanF1ZXJ5LXVpL3RoZW1lcy9iYXNlL2NvcmUuY3NzIiwid2VicGFjazovL2Fzc2V0cy8uL25vZGVfbW9kdWxlcy9qcXVlcnktdWkvdGhlbWVzL2Jhc2UvZHJhZ2dhYmxlLmNzcyIsIndlYnBhY2s6Ly9hc3NldHMvLi9ub2RlX21vZHVsZXMvanF1ZXJ5LXVpL3RoZW1lcy9iYXNlL3Jlc2l6YWJsZS5jc3MiLCJ3ZWJwYWNrOi8vYXNzZXRzLy4vbm9kZV9tb2R1bGVzL2pxdWVyeS11aS90aGVtZXMvYmFzZS9zZWxlY3RhYmxlLmNzcyIsIndlYnBhY2s6Ly9hc3NldHMvLi9ub2RlX21vZHVsZXMvanF1ZXJ5LXVpL3RoZW1lcy9iYXNlL3NvcnRhYmxlLmNzcyIsIndlYnBhY2s6Ly9hc3NldHMvLi9ub2RlX21vZHVsZXMvanF1ZXJ5LXVpL3RoZW1lcy9iYXNlL2FjY29yZGlvbi5jc3MiLCJ3ZWJwYWNrOi8vYXNzZXRzLy4vbm9kZV9tb2R1bGVzL2pxdWVyeS11aS90aGVtZXMvYmFzZS9hdXRvY29tcGxldGUuY3NzIiwid2VicGFjazovL2Fzc2V0cy8uL25vZGVfbW9kdWxlcy9qcXVlcnktdWkvdGhlbWVzL2Jhc2UvYnV0dG9uLmNzcyIsIndlYnBhY2s6Ly9hc3NldHMvLi9ub2RlX21vZHVsZXMvanF1ZXJ5LXVpL3RoZW1lcy9iYXNlL2NoZWNrYm94cmFkaW8uY3NzIiwid2VicGFjazovL2Fzc2V0cy8uL25vZGVfbW9kdWxlcy9qcXVlcnktdWkvdGhlbWVzL2Jhc2UvY29udHJvbGdyb3VwLmNzcyIsIndlYnBhY2s6Ly9hc3NldHMvLi9ub2RlX21vZHVsZXMvanF1ZXJ5LXVpL3RoZW1lcy9iYXNlL2RhdGVwaWNrZXIuY3NzIiwid2VicGFjazovL2Fzc2V0cy8uL25vZGVfbW9kdWxlcy9qcXVlcnktdWkvdGhlbWVzL2Jhc2UvZGlhbG9nLmNzcyIsIndlYnBhY2s6Ly9hc3NldHMvLi9ub2RlX21vZHVsZXMvanF1ZXJ5LXVpL3RoZW1lcy9iYXNlL21lbnUuY3NzIiwid2VicGFjazovL2Fzc2V0cy8uL25vZGVfbW9kdWxlcy9qcXVlcnktdWkvdGhlbWVzL2Jhc2UvcHJvZ3Jlc3NiYXIuY3NzIiwid2VicGFjazovL2Fzc2V0cy8uL25vZGVfbW9kdWxlcy9qcXVlcnktdWkvdGhlbWVzL2Jhc2Uvc2VsZWN0bWVudS5jc3MiLCJ3ZWJwYWNrOi8vYXNzZXRzLy4vbm9kZV9tb2R1bGVzL2pxdWVyeS11aS90aGVtZXMvYmFzZS9zbGlkZXIuY3NzIiwid2VicGFjazovL2Fzc2V0cy8uL25vZGVfbW9kdWxlcy9qcXVlcnktdWkvdGhlbWVzL2Jhc2Uvc3Bpbm5lci5jc3MiLCJ3ZWJwYWNrOi8vYXNzZXRzLy4vbm9kZV9tb2R1bGVzL2pxdWVyeS11aS90aGVtZXMvYmFzZS90YWJzLmNzcyIsIndlYnBhY2s6Ly9hc3NldHMvLi9ub2RlX21vZHVsZXMvanF1ZXJ5LXVpL3RoZW1lcy9iYXNlL3Rvb2x0aXAuY3NzIiwid2VicGFjazovL2Fzc2V0cy8uL2Fzc2V0cy9jc3MvaGFsLnNjc3MiLCJ3ZWJwYWNrOi8vYXNzZXRzLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2Jvb3RzdHJhcC5zY3NzIiwid2VicGFjazovL2Fzc2V0cy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fcm9vdC5zY3NzIiwid2VicGFjazovL2Fzc2V0cy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fcmVib290LnNjc3MiLCJ3ZWJwYWNrOi8vYXNzZXRzLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL192YXJpYWJsZXMuc2NzcyIsIndlYnBhY2s6Ly9hc3NldHMvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdmVuZG9yL19yZnMuc2NzcyIsIndlYnBhY2s6Ly9hc3NldHMvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19ob3Zlci5zY3NzIiwid2VicGFjazovL2Fzc2V0cy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fdHlwZS5zY3NzIiwid2VicGFjazovL2Fzc2V0cy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2xpc3RzLnNjc3MiLCJ3ZWJwYWNrOi8vYXNzZXRzLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19pbWFnZXMuc2NzcyIsIndlYnBhY2s6Ly9hc3NldHMvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19pbWFnZS5zY3NzIiwid2VicGFjazovL2Fzc2V0cy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2JvcmRlci1yYWRpdXMuc2NzcyIsIndlYnBhY2s6Ly9hc3NldHMvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2NvZGUuc2NzcyIsIndlYnBhY2s6Ly9hc3NldHMvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2dyaWQuc2NzcyIsIndlYnBhY2s6Ly9hc3NldHMvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19ncmlkLnNjc3MiLCJ3ZWJwYWNrOi8vYXNzZXRzLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYnJlYWtwb2ludHMuc2NzcyIsIndlYnBhY2s6Ly9hc3NldHMvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19ncmlkLWZyYW1ld29yay5zY3NzIiwid2VicGFjazovL2Fzc2V0cy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fdGFibGVzLnNjc3MiLCJ3ZWJwYWNrOi8vYXNzZXRzLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fdGFibGUtcm93LnNjc3MiLCJ3ZWJwYWNrOi8vYXNzZXRzLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19mdW5jdGlvbnMuc2NzcyIsIndlYnBhY2s6Ly9hc3NldHMvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2Zvcm1zLnNjc3MiLCJ3ZWJwYWNrOi8vYXNzZXRzLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fdHJhbnNpdGlvbi5zY3NzIiwid2VicGFjazovL2Fzc2V0cy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2Zvcm1zLnNjc3MiLCJ3ZWJwYWNrOi8vYXNzZXRzLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fZ3JhZGllbnRzLnNjc3MiLCJ3ZWJwYWNrOi8vYXNzZXRzLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19idXR0b25zLnNjc3MiLCJ3ZWJwYWNrOi8vYXNzZXRzLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYnV0dG9ucy5zY3NzIiwid2VicGFjazovL2Fzc2V0cy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fdHJhbnNpdGlvbnMuc2NzcyIsIndlYnBhY2s6Ly9hc3NldHMvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2Ryb3Bkb3duLnNjc3MiLCJ3ZWJwYWNrOi8vYXNzZXRzLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fY2FyZXQuc2NzcyIsIndlYnBhY2s6Ly9hc3NldHMvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19uYXYtZGl2aWRlci5zY3NzIiwid2VicGFjazovL2Fzc2V0cy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fYnV0dG9uLWdyb3VwLnNjc3MiLCJ3ZWJwYWNrOi8vYXNzZXRzLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19pbnB1dC1ncm91cC5zY3NzIiwid2VicGFjazovL2Fzc2V0cy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fY3VzdG9tLWZvcm1zLnNjc3MiLCJ3ZWJwYWNrOi8vYXNzZXRzLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19uYXYuc2NzcyIsIndlYnBhY2s6Ly9hc3NldHMvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX25hdmJhci5zY3NzIiwid2VicGFjazovL2Fzc2V0cy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fY2FyZC5zY3NzIiwid2VicGFjazovL2Fzc2V0cy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fYnJlYWRjcnVtYi5zY3NzIiwid2VicGFjazovL2Fzc2V0cy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fcGFnaW5hdGlvbi5zY3NzIiwid2VicGFjazovL2Fzc2V0cy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3BhZ2luYXRpb24uc2NzcyIsIndlYnBhY2s6Ly9hc3NldHMvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2JhZGdlLnNjc3MiLCJ3ZWJwYWNrOi8vYXNzZXRzLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYmFkZ2Uuc2NzcyIsIndlYnBhY2s6Ly9hc3NldHMvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2p1bWJvdHJvbi5zY3NzIiwid2VicGFjazovL2Fzc2V0cy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fYWxlcnQuc2NzcyIsIndlYnBhY2s6Ly9hc3NldHMvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19hbGVydC5zY3NzIiwid2VicGFjazovL2Fzc2V0cy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fcHJvZ3Jlc3Muc2NzcyIsIndlYnBhY2s6Ly9hc3NldHMvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX21lZGlhLnNjc3MiLCJ3ZWJwYWNrOi8vYXNzZXRzLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19saXN0LWdyb3VwLnNjc3MiLCJ3ZWJwYWNrOi8vYXNzZXRzLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fbGlzdC1ncm91cC5zY3NzIiwid2VicGFjazovL2Fzc2V0cy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fY2xvc2Uuc2NzcyIsIndlYnBhY2s6Ly9hc3NldHMvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3RvYXN0cy5zY3NzIiwid2VicGFjazovL2Fzc2V0cy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fbW9kYWwuc2NzcyIsIndlYnBhY2s6Ly9hc3NldHMvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3Rvb2x0aXAuc2NzcyIsIndlYnBhY2s6Ly9hc3NldHMvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19yZXNldC10ZXh0LnNjc3MiLCJ3ZWJwYWNrOi8vYXNzZXRzLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19wb3BvdmVyLnNjc3MiLCJ3ZWJwYWNrOi8vYXNzZXRzLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19jYXJvdXNlbC5zY3NzIiwid2VicGFjazovL2Fzc2V0cy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2NsZWFyZml4LnNjc3MiLCJ3ZWJwYWNrOi8vYXNzZXRzLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19zcGlubmVycy5zY3NzIiwid2VicGFjazovL2Fzc2V0cy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX2FsaWduLnNjc3MiLCJ3ZWJwYWNrOi8vYXNzZXRzLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYmFja2dyb3VuZC12YXJpYW50LnNjc3MiLCJ3ZWJwYWNrOi8vYXNzZXRzLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fYmFja2dyb3VuZC5zY3NzIiwid2VicGFjazovL2Fzc2V0cy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX2JvcmRlcnMuc2NzcyIsIndlYnBhY2s6Ly9hc3NldHMvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19kaXNwbGF5LnNjc3MiLCJ3ZWJwYWNrOi8vYXNzZXRzLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fZW1iZWQuc2NzcyIsIndlYnBhY2s6Ly9hc3NldHMvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19mbGV4LnNjc3MiLCJ3ZWJwYWNrOi8vYXNzZXRzLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fZmxvYXQuc2NzcyIsIndlYnBhY2s6Ly9hc3NldHMvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19pbnRlcmFjdGlvbnMuc2NzcyIsIndlYnBhY2s6Ly9hc3NldHMvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19vdmVyZmxvdy5zY3NzIiwid2VicGFjazovL2Fzc2V0cy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX3Bvc2l0aW9uLnNjc3MiLCJ3ZWJwYWNrOi8vYXNzZXRzLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fc2NyZWVucmVhZGVycy5zY3NzIiwid2VicGFjazovL2Fzc2V0cy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3NjcmVlbi1yZWFkZXIuc2NzcyIsIndlYnBhY2s6Ly9hc3NldHMvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19zaGFkb3dzLnNjc3MiLCJ3ZWJwYWNrOi8vYXNzZXRzLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fc2l6aW5nLnNjc3MiLCJ3ZWJwYWNrOi8vYXNzZXRzLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fc3BhY2luZy5zY3NzIiwid2VicGFjazovL2Fzc2V0cy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX3N0cmV0Y2hlZC1saW5rLnNjc3MiLCJ3ZWJwYWNrOi8vYXNzZXRzLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fdGV4dC5zY3NzIiwid2VicGFjazovL2Fzc2V0cy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3RleHQtdHJ1bmNhdGUuc2NzcyIsIndlYnBhY2s6Ly9hc3NldHMvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL190ZXh0LWVtcGhhc2lzLnNjc3MiLCJ3ZWJwYWNrOi8vYXNzZXRzLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fdGV4dC1oaWRlLnNjc3MiLCJ3ZWJwYWNrOi8vYXNzZXRzLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fdmlzaWJpbGl0eS5zY3NzIiwid2VicGFjazovL2Fzc2V0cy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fcHJpbnQuc2NzcyIsIndlYnBhY2s6Ly9hc3NldHMvLi9ub2RlX21vZHVsZXMvZWFzeW1kZS9kaXN0L2Vhc3ltZGUubWluLmNzcyIsIndlYnBhY2s6Ly9hc3NldHMvLi9ub2RlX21vZHVsZXMvZGF0YXRhYmxlcy9tZWRpYS9jc3MvanF1ZXJ5LmRhdGFUYWJsZXMuY3NzIiwid2VicGFjazovL2Fzc2V0cy8uL2Fzc2V0cy9jc3MvX3ZhcmlhYmxlcy5zY3NzIiwid2VicGFjazovL2Fzc2V0cy8uL2Fzc2V0cy9jc3MvX2dlbmVyYWwuc2NzcyIsIndlYnBhY2s6Ly9hc3NldHMvLi9hc3NldHMvY3NzL19idXR0b25zLnNjc3MiLCJ3ZWJwYWNrOi8vYXNzZXRzLy4vYXNzZXRzL2Nzcy9faWNvbnMuc2NzcyIsIndlYnBhY2s6Ly9hc3NldHMvLi9hc3NldHMvY3NzL19pY29ucy1teXNwYWNlLnNjc3MiLCJ3ZWJwYWNrOi8vYXNzZXRzLy4vYXNzZXRzL2Nzcy9fbGlicmFyeS5zY3NzIiwid2VicGFjazovL2Fzc2V0cy8uL2Fzc2V0cy9jc3MvX3BvcnRhbC5zY3NzIiwid2VicGFjazovL2Fzc2V0cy8uL2Fzc2V0cy9jc3MvX2Jyb3dzZS5zY3NzIiwid2VicGFjazovL2Fzc2V0cy8uL2Fzc2V0cy9jc3MvX2Nvbm5lY3RlZC1zcGFjZS5zY3NzIiwid2VicGFjazovL2Fzc2V0cy8uL2Fzc2V0cy9jc3MvX215TGlicmFyeS5zY3NzIiwid2VicGFjazovL2Fzc2V0cy8uL2Fzc2V0cy9jc3MvaW5kZXguc2NzcyIsIndlYnBhY2s6Ly9hc3NldHMvLi9hc3NldHMvY3NzL25hdmJhci5zY3NzIiwid2VicGFjazovL2Fzc2V0cy8uL2Fzc2V0cy9jc3MvX2Z1bmN0aW9ucy5zY3NzIiwid2VicGFjazovL2Fzc2V0cy8uL2Fzc2V0cy9jc3MvY2NzZF9mb3JtLnNjc3MiLCJ3ZWJwYWNrOi8vYXNzZXRzLy4vYXNzZXRzL2Nzcy9kb2N1bWVudC5zY3NzIiwid2VicGFjazovL2Fzc2V0cy8uL2Fzc2V0cy9jc3MvYWN0aW9ucy5zY3NzIiwid2VicGFjazovL2Fzc2V0cy8uL2Fzc2V0cy9jc3MvX2Vycm9yLnNjc3MiLCJ3ZWJwYWNrOi8vYXNzZXRzLy4vYXNzZXRzL2Nzcy9zZWFyY2guc2NzcyIsIndlYnBhY2s6Ly9hc3NldHMvLi9hc3NldHMvY3NzL19kYXNoYm9hcmQuc2NzcyIsIndlYnBhY2s6Ly9hc3NldHMvLi9hc3NldHMvY3NzL19yZXN1bWUuc2NzcyIsIndlYnBhY2s6Ly9hc3NldHMvLi9hc3NldHMvY3NzL19yZXN1bWUtdmlzdWFsaXphdGlvbi5zY3NzIiwid2VicGFjazovL2Fzc2V0cy8uL2Fzc2V0cy9jc3MvX3N1Ym1pdC5zY3NzIiwid2VicGFjazovL2Fzc2V0cy8uL2Fzc2V0cy9jc3MvX3BhZ2Uuc2NzcyIsIndlYnBhY2s6Ly9hc3NldHMvLi9hc3NldHMvY3NzL19zdGF0cy5zY3NzIiwid2VicGFjazovL2Fzc2V0cy8uL2Fzc2V0cy9jc3MvX3NpdGUuc2NzcyIsIndlYnBhY2s6Ly9hc3NldHMvLi9hc3NldHMvY3NzL19kYXJrLnNjc3MiLCJ3ZWJwYWNrOi8vYXNzZXRzLy4vYXNzZXRzL2Nzcy9ib290c3RyYXAtZWRpdGFibGUuc2NzcyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKiFcbiAqIGpRdWVyeSBVSSBDU1MgRnJhbWV3b3JrIDEuMTMuMlxuICogaHR0cDovL2pxdWVyeXVpLmNvbVxuICpcbiAqIENvcHlyaWdodCBqUXVlcnkgRm91bmRhdGlvbiBhbmQgb3RoZXIgY29udHJpYnV0b3JzXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UuXG4gKiBodHRwOi8vanF1ZXJ5Lm9yZy9saWNlbnNlXG4gKlxuICogaHR0cDovL2FwaS5qcXVlcnl1aS5jb20vY2F0ZWdvcnkvdGhlbWluZy9cbiAqL1xuXG4vKiBMYXlvdXQgaGVscGVyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4udWktaGVscGVyLWhpZGRlbiB7XG5cdGRpc3BsYXk6IG5vbmU7XG59XG4udWktaGVscGVyLWhpZGRlbi1hY2Nlc3NpYmxlIHtcblx0Ym9yZGVyOiAwO1xuXHRjbGlwOiByZWN0KDAgMCAwIDApO1xuXHRoZWlnaHQ6IDFweDtcblx0bWFyZ2luOiAtMXB4O1xuXHRvdmVyZmxvdzogaGlkZGVuO1xuXHRwYWRkaW5nOiAwO1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHdpZHRoOiAxcHg7XG59XG4udWktaGVscGVyLXJlc2V0IHtcblx0bWFyZ2luOiAwO1xuXHRwYWRkaW5nOiAwO1xuXHRib3JkZXI6IDA7XG5cdG91dGxpbmU6IDA7XG5cdGxpbmUtaGVpZ2h0OiAxLjM7XG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0Zm9udC1zaXplOiAxMDAlO1xuXHRsaXN0LXN0eWxlOiBub25lO1xufVxuLnVpLWhlbHBlci1jbGVhcmZpeDpiZWZvcmUsXG4udWktaGVscGVyLWNsZWFyZml4OmFmdGVyIHtcblx0Y29udGVudDogXCJcIjtcblx0ZGlzcGxheTogdGFibGU7XG5cdGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG59XG4udWktaGVscGVyLWNsZWFyZml4OmFmdGVyIHtcblx0Y2xlYXI6IGJvdGg7XG59XG4udWktaGVscGVyLXpmaXgge1xuXHR3aWR0aDogMTAwJTtcblx0aGVpZ2h0OiAxMDAlO1xuXHR0b3A6IDA7XG5cdGxlZnQ6IDA7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0b3BhY2l0eTogMDtcblx0LW1zLWZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTApXCI7IC8qIHN1cHBvcnQ6IElFOCAqL1xufVxuXG4udWktZnJvbnQge1xuXHR6LWluZGV4OiAxMDA7XG59XG5cblxuLyogSW50ZXJhY3Rpb24gQ3Vlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4udWktc3RhdGUtZGlzYWJsZWQge1xuXHRjdXJzb3I6IGRlZmF1bHQgIWltcG9ydGFudDtcblx0cG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cblxuLyogSWNvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLWljb24ge1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cdG1hcmdpbi10b3A6IC0uMjVlbTtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHR0ZXh0LWluZGVudDogLTk5OTk5cHg7XG5cdG92ZXJmbG93OiBoaWRkZW47XG5cdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG5cbi51aS13aWRnZXQtaWNvbi1ibG9jayB7XG5cdGxlZnQ6IDUwJTtcblx0bWFyZ2luLWxlZnQ6IC04cHg7XG5cdGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKiBNaXNjIHZpc3VhbHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBPdmVybGF5cyAqL1xuLnVpLXdpZGdldC1vdmVybGF5IHtcblx0cG9zaXRpb246IGZpeGVkO1xuXHR0b3A6IDA7XG5cdGxlZnQ6IDA7XG5cdHdpZHRoOiAxMDAlO1xuXHRoZWlnaHQ6IDEwMCU7XG59XG4iLCIvKiFcbiAqIGpRdWVyeSBVSSBEcmFnZ2FibGUgMS4xMy4yXG4gKiBodHRwOi8vanF1ZXJ5dWkuY29tXG4gKlxuICogQ29weXJpZ2h0IGpRdWVyeSBGb3VuZGF0aW9uIGFuZCBvdGhlciBjb250cmlidXRvcnNcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZS5cbiAqIGh0dHA6Ly9qcXVlcnkub3JnL2xpY2Vuc2VcbiAqL1xuLnVpLWRyYWdnYWJsZS1oYW5kbGUge1xuXHQtbXMtdG91Y2gtYWN0aW9uOiBub25lO1xuXHR0b3VjaC1hY3Rpb246IG5vbmU7XG59XG4iLCIvKiFcbiAqIGpRdWVyeSBVSSBSZXNpemFibGUgMS4xMy4yXG4gKiBodHRwOi8vanF1ZXJ5dWkuY29tXG4gKlxuICogQ29weXJpZ2h0IGpRdWVyeSBGb3VuZGF0aW9uIGFuZCBvdGhlciBjb250cmlidXRvcnNcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZS5cbiAqIGh0dHA6Ly9qcXVlcnkub3JnL2xpY2Vuc2VcbiAqL1xuLnVpLXJlc2l6YWJsZSB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi51aS1yZXNpemFibGUtaGFuZGxlIHtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHRmb250LXNpemU6IDAuMXB4O1xuXHRkaXNwbGF5OiBibG9jaztcblx0LW1zLXRvdWNoLWFjdGlvbjogbm9uZTtcblx0dG91Y2gtYWN0aW9uOiBub25lO1xufVxuLnVpLXJlc2l6YWJsZS1kaXNhYmxlZCAudWktcmVzaXphYmxlLWhhbmRsZSxcbi51aS1yZXNpemFibGUtYXV0b2hpZGUgLnVpLXJlc2l6YWJsZS1oYW5kbGUge1xuXHRkaXNwbGF5OiBub25lO1xufVxuLnVpLXJlc2l6YWJsZS1uIHtcblx0Y3Vyc29yOiBuLXJlc2l6ZTtcblx0aGVpZ2h0OiA3cHg7XG5cdHdpZHRoOiAxMDAlO1xuXHR0b3A6IC01cHg7XG5cdGxlZnQ6IDA7XG59XG4udWktcmVzaXphYmxlLXMge1xuXHRjdXJzb3I6IHMtcmVzaXplO1xuXHRoZWlnaHQ6IDdweDtcblx0d2lkdGg6IDEwMCU7XG5cdGJvdHRvbTogLTVweDtcblx0bGVmdDogMDtcbn1cbi51aS1yZXNpemFibGUtZSB7XG5cdGN1cnNvcjogZS1yZXNpemU7XG5cdHdpZHRoOiA3cHg7XG5cdHJpZ2h0OiAtNXB4O1xuXHR0b3A6IDA7XG5cdGhlaWdodDogMTAwJTtcbn1cbi51aS1yZXNpemFibGUtdyB7XG5cdGN1cnNvcjogdy1yZXNpemU7XG5cdHdpZHRoOiA3cHg7XG5cdGxlZnQ6IC01cHg7XG5cdHRvcDogMDtcblx0aGVpZ2h0OiAxMDAlO1xufVxuLnVpLXJlc2l6YWJsZS1zZSB7XG5cdGN1cnNvcjogc2UtcmVzaXplO1xuXHR3aWR0aDogMTJweDtcblx0aGVpZ2h0OiAxMnB4O1xuXHRyaWdodDogMXB4O1xuXHRib3R0b206IDFweDtcbn1cbi51aS1yZXNpemFibGUtc3cge1xuXHRjdXJzb3I6IHN3LXJlc2l6ZTtcblx0d2lkdGg6IDlweDtcblx0aGVpZ2h0OiA5cHg7XG5cdGxlZnQ6IC01cHg7XG5cdGJvdHRvbTogLTVweDtcbn1cbi51aS1yZXNpemFibGUtbncge1xuXHRjdXJzb3I6IG53LXJlc2l6ZTtcblx0d2lkdGg6IDlweDtcblx0aGVpZ2h0OiA5cHg7XG5cdGxlZnQ6IC01cHg7XG5cdHRvcDogLTVweDtcbn1cbi51aS1yZXNpemFibGUtbmUge1xuXHRjdXJzb3I6IG5lLXJlc2l6ZTtcblx0d2lkdGg6IDlweDtcblx0aGVpZ2h0OiA5cHg7XG5cdHJpZ2h0OiAtNXB4O1xuXHR0b3A6IC01cHg7XG59XG4iLCIvKiFcbiAqIGpRdWVyeSBVSSBTZWxlY3RhYmxlIDEuMTMuMlxuICogaHR0cDovL2pxdWVyeXVpLmNvbVxuICpcbiAqIENvcHlyaWdodCBqUXVlcnkgRm91bmRhdGlvbiBhbmQgb3RoZXIgY29udHJpYnV0b3JzXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UuXG4gKiBodHRwOi8vanF1ZXJ5Lm9yZy9saWNlbnNlXG4gKi9cbi51aS1zZWxlY3RhYmxlIHtcblx0LW1zLXRvdWNoLWFjdGlvbjogbm9uZTtcblx0dG91Y2gtYWN0aW9uOiBub25lO1xufVxuLnVpLXNlbGVjdGFibGUtaGVscGVyIHtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR6LWluZGV4OiAxMDA7XG5cdGJvcmRlcjogMXB4IGRvdHRlZCBibGFjaztcbn1cbiIsIi8qIVxuICogalF1ZXJ5IFVJIFNvcnRhYmxlIDEuMTMuMlxuICogaHR0cDovL2pxdWVyeXVpLmNvbVxuICpcbiAqIENvcHlyaWdodCBqUXVlcnkgRm91bmRhdGlvbiBhbmQgb3RoZXIgY29udHJpYnV0b3JzXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UuXG4gKiBodHRwOi8vanF1ZXJ5Lm9yZy9saWNlbnNlXG4gKi9cbi51aS1zb3J0YWJsZS1oYW5kbGUge1xuXHQtbXMtdG91Y2gtYWN0aW9uOiBub25lO1xuXHR0b3VjaC1hY3Rpb246IG5vbmU7XG59XG4iLCIvKiFcbiAqIGpRdWVyeSBVSSBBY2NvcmRpb24gMS4xMy4yXG4gKiBodHRwOi8vanF1ZXJ5dWkuY29tXG4gKlxuICogQ29weXJpZ2h0IGpRdWVyeSBGb3VuZGF0aW9uIGFuZCBvdGhlciBjb250cmlidXRvcnNcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZS5cbiAqIGh0dHA6Ly9qcXVlcnkub3JnL2xpY2Vuc2VcbiAqXG4gKiBodHRwOi8vYXBpLmpxdWVyeXVpLmNvbS9hY2NvcmRpb24vI3RoZW1pbmdcbiAqL1xuLnVpLWFjY29yZGlvbiAudWktYWNjb3JkaW9uLWhlYWRlciB7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRjdXJzb3I6IHBvaW50ZXI7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0bWFyZ2luOiAycHggMCAwIDA7XG5cdHBhZGRpbmc6IC41ZW0gLjVlbSAuNWVtIC43ZW07XG5cdGZvbnQtc2l6ZTogMTAwJTtcbn1cbi51aS1hY2NvcmRpb24gLnVpLWFjY29yZGlvbi1jb250ZW50IHtcblx0cGFkZGluZzogMWVtIDIuMmVtO1xuXHRib3JkZXItdG9wOiAwO1xuXHRvdmVyZmxvdzogYXV0bztcbn1cbiIsIi8qIVxuICogalF1ZXJ5IFVJIEF1dG9jb21wbGV0ZSAxLjEzLjJcbiAqIGh0dHA6Ly9qcXVlcnl1aS5jb21cbiAqXG4gKiBDb3B5cmlnaHQgalF1ZXJ5IEZvdW5kYXRpb24gYW5kIG90aGVyIGNvbnRyaWJ1dG9yc1xuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlLlxuICogaHR0cDovL2pxdWVyeS5vcmcvbGljZW5zZVxuICpcbiAqIGh0dHA6Ly9hcGkuanF1ZXJ5dWkuY29tL2F1dG9jb21wbGV0ZS8jdGhlbWluZ1xuICovXG4udWktYXV0b2NvbXBsZXRlIHtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR0b3A6IDA7XG5cdGxlZnQ6IDA7XG5cdGN1cnNvcjogZGVmYXVsdDtcbn1cbiIsIi8qIVxuICogalF1ZXJ5IFVJIEJ1dHRvbiAxLjEzLjJcbiAqIGh0dHA6Ly9qcXVlcnl1aS5jb21cbiAqXG4gKiBDb3B5cmlnaHQgalF1ZXJ5IEZvdW5kYXRpb24gYW5kIG90aGVyIGNvbnRyaWJ1dG9yc1xuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlLlxuICogaHR0cDovL2pxdWVyeS5vcmcvbGljZW5zZVxuICpcbiAqIGh0dHA6Ly9hcGkuanF1ZXJ5dWkuY29tL2J1dHRvbi8jdGhlbWluZ1xuICovXG4udWktYnV0dG9uIHtcblx0cGFkZGluZzogLjRlbSAxZW07XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRsaW5lLWhlaWdodDogbm9ybWFsO1xuXHRtYXJnaW4tcmlnaHQ6IC4xZW07XG5cdGN1cnNvcjogcG9pbnRlcjtcblx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcblx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHQtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuXHQtbW96LXVzZXItc2VsZWN0OiBub25lO1xuXHQtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG5cdHVzZXItc2VsZWN0OiBub25lO1xuXG5cdC8qIFN1cHBvcnQ6IElFIDw9IDExICovXG5cdG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG4udWktYnV0dG9uLFxuLnVpLWJ1dHRvbjpsaW5rLFxuLnVpLWJ1dHRvbjp2aXNpdGVkLFxuLnVpLWJ1dHRvbjpob3Zlcixcbi51aS1idXR0b246YWN0aXZlIHtcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4vKiB0byBtYWtlIHJvb20gZm9yIHRoZSBpY29uLCBhIHdpZHRoIG5lZWRzIHRvIGJlIHNldCBoZXJlICovXG4udWktYnV0dG9uLWljb24tb25seSB7XG5cdHdpZHRoOiAyZW07XG5cdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cdHRleHQtaW5kZW50OiAtOTk5OXB4O1xuXHR3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4vKiBubyBpY29uIHN1cHBvcnQgZm9yIGlucHV0IGVsZW1lbnRzICovXG5pbnB1dC51aS1idXR0b24udWktYnV0dG9uLWljb24tb25seSB7XG5cdHRleHQtaW5kZW50OiAwO1xufVxuXG4vKiBidXR0b24gaWNvbiBlbGVtZW50KHMpICovXG4udWktYnV0dG9uLWljb24tb25seSAudWktaWNvbiB7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0dG9wOiA1MCU7XG5cdGxlZnQ6IDUwJTtcblx0bWFyZ2luLXRvcDogLThweDtcblx0bWFyZ2luLWxlZnQ6IC04cHg7XG59XG5cbi51aS1idXR0b24udWktaWNvbi1ub3RleHQgLnVpLWljb24ge1xuXHRwYWRkaW5nOiAwO1xuXHR3aWR0aDogMi4xZW07XG5cdGhlaWdodDogMi4xZW07XG5cdHRleHQtaW5kZW50OiAtOTk5OXB4O1xuXHR3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG59XG5cbmlucHV0LnVpLWJ1dHRvbi51aS1pY29uLW5vdGV4dCAudWktaWNvbiB7XG5cdHdpZHRoOiBhdXRvO1xuXHRoZWlnaHQ6IGF1dG87XG5cdHRleHQtaW5kZW50OiAwO1xuXHR3aGl0ZS1zcGFjZTogbm9ybWFsO1xuXHRwYWRkaW5nOiAuNGVtIDFlbTtcbn1cblxuLyogd29ya2Fyb3VuZHMgKi9cbi8qIFN1cHBvcnQ6IEZpcmVmb3ggNSAtIDQwICovXG5pbnB1dC51aS1idXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG5idXR0b24udWktYnV0dG9uOjotbW96LWZvY3VzLWlubmVyIHtcblx0Ym9yZGVyOiAwO1xuXHRwYWRkaW5nOiAwO1xufVxuIiwiLyohXG4gKiBqUXVlcnkgVUkgQ2hlY2tib3hyYWRpbyAxLjEzLjJcbiAqIGh0dHA6Ly9qcXVlcnl1aS5jb21cbiAqXG4gKiBDb3B5cmlnaHQgalF1ZXJ5IEZvdW5kYXRpb24gYW5kIG90aGVyIGNvbnRyaWJ1dG9yc1xuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlLlxuICogaHR0cDovL2pxdWVyeS5vcmcvbGljZW5zZVxuICpcbiAqIGh0dHA6Ly9hcGkuanF1ZXJ5dWkuY29tL2NoZWNrYm94cmFkaW8vI3RoZW1pbmdcbiAqL1xuXG4udWktY2hlY2tib3hyYWRpby1sYWJlbCAudWktaWNvbi1iYWNrZ3JvdW5kIHtcblx0Ym94LXNoYWRvdzogaW5zZXQgMXB4IDFweCAxcHggI2NjYztcblx0Ym9yZGVyLXJhZGl1czogLjEyZW07XG5cdGJvcmRlcjogbm9uZTtcbn1cbi51aS1jaGVja2JveHJhZGlvLXJhZGlvLWxhYmVsIC51aS1pY29uLWJhY2tncm91bmQge1xuXHR3aWR0aDogMTZweDtcblx0aGVpZ2h0OiAxNnB4O1xuXHRib3JkZXItcmFkaXVzOiAxZW07XG5cdG92ZXJmbG93OiB2aXNpYmxlO1xuXHRib3JkZXI6IG5vbmU7XG59XG4udWktY2hlY2tib3hyYWRpby1yYWRpby1sYWJlbC51aS1jaGVja2JveHJhZGlvLWNoZWNrZWQgLnVpLWljb24sXG4udWktY2hlY2tib3hyYWRpby1yYWRpby1sYWJlbC51aS1jaGVja2JveHJhZGlvLWNoZWNrZWQ6aG92ZXIgLnVpLWljb24ge1xuXHRiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuXHR3aWR0aDogOHB4O1xuXHRoZWlnaHQ6IDhweDtcblx0Ym9yZGVyLXdpZHRoOiA0cHg7XG5cdGJvcmRlci1zdHlsZTogc29saWQ7XG59XG4udWktY2hlY2tib3hyYWRpby1kaXNhYmxlZCB7XG5cdHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuIiwiLyohXG4gKiBqUXVlcnkgVUkgQ29udHJvbGdyb3VwIDEuMTMuMlxuICogaHR0cDovL2pxdWVyeXVpLmNvbVxuICpcbiAqIENvcHlyaWdodCBqUXVlcnkgRm91bmRhdGlvbiBhbmQgb3RoZXIgY29udHJpYnV0b3JzXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UuXG4gKiBodHRwOi8vanF1ZXJ5Lm9yZy9saWNlbnNlXG4gKlxuICogaHR0cDovL2FwaS5qcXVlcnl1aS5jb20vY29udHJvbGdyb3VwLyN0aGVtaW5nXG4gKi9cblxuLnVpLWNvbnRyb2xncm91cCB7XG5cdHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cbi51aS1jb250cm9sZ3JvdXAgPiAudWktY29udHJvbGdyb3VwLWl0ZW0ge1xuXHRmbG9hdDogbGVmdDtcblx0bWFyZ2luLWxlZnQ6IDA7XG5cdG1hcmdpbi1yaWdodDogMDtcbn1cbi51aS1jb250cm9sZ3JvdXAgPiAudWktY29udHJvbGdyb3VwLWl0ZW06Zm9jdXMsXG4udWktY29udHJvbGdyb3VwID4gLnVpLWNvbnRyb2xncm91cC1pdGVtLnVpLXZpc3VhbC1mb2N1cyB7XG5cdHotaW5kZXg6IDk5OTk7XG59XG4udWktY29udHJvbGdyb3VwLXZlcnRpY2FsID4gLnVpLWNvbnRyb2xncm91cC1pdGVtIHtcblx0ZGlzcGxheTogYmxvY2s7XG5cdGZsb2F0OiBub25lO1xuXHR3aWR0aDogMTAwJTtcblx0bWFyZ2luLXRvcDogMDtcblx0bWFyZ2luLWJvdHRvbTogMDtcblx0dGV4dC1hbGlnbjogbGVmdDtcbn1cbi51aS1jb250cm9sZ3JvdXAtdmVydGljYWwgLnVpLWNvbnRyb2xncm91cC1pdGVtIHtcblx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcbn1cbi51aS1jb250cm9sZ3JvdXAgLnVpLWNvbnRyb2xncm91cC1sYWJlbCB7XG5cdHBhZGRpbmc6IC40ZW0gMWVtO1xufVxuLnVpLWNvbnRyb2xncm91cCAudWktY29udHJvbGdyb3VwLWxhYmVsIHNwYW4ge1xuXHRmb250LXNpemU6IDgwJTtcbn1cbi51aS1jb250cm9sZ3JvdXAtaG9yaXpvbnRhbCAudWktY29udHJvbGdyb3VwLWxhYmVsICsgLnVpLWNvbnRyb2xncm91cC1pdGVtIHtcblx0Ym9yZGVyLWxlZnQ6IG5vbmU7XG59XG4udWktY29udHJvbGdyb3VwLXZlcnRpY2FsIC51aS1jb250cm9sZ3JvdXAtbGFiZWwgKyAudWktY29udHJvbGdyb3VwLWl0ZW0ge1xuXHRib3JkZXItdG9wOiBub25lO1xufVxuLnVpLWNvbnRyb2xncm91cC1ob3Jpem9udGFsIC51aS1jb250cm9sZ3JvdXAtbGFiZWwudWktd2lkZ2V0LWNvbnRlbnQge1xuXHRib3JkZXItcmlnaHQ6IG5vbmU7XG59XG4udWktY29udHJvbGdyb3VwLXZlcnRpY2FsIC51aS1jb250cm9sZ3JvdXAtbGFiZWwudWktd2lkZ2V0LWNvbnRlbnQge1xuXHRib3JkZXItYm90dG9tOiBub25lO1xufVxuXG4vKiBTcGlubmVyIHNwZWNpZmljIHN0eWxlIGZpeGVzICovXG4udWktY29udHJvbGdyb3VwLXZlcnRpY2FsIC51aS1zcGlubmVyLWlucHV0IHtcblxuXHQvKiBTdXBwb3J0OiBJRTggb25seSwgQW5kcm9pZCA8IDQuNCBvbmx5ICovXG5cdHdpZHRoOiA3NSU7XG5cdHdpZHRoOiBjYWxjKCAxMDAlIC0gMi40ZW0gKTtcbn1cbi51aS1jb250cm9sZ3JvdXAtdmVydGljYWwgLnVpLXNwaW5uZXIgLnVpLXNwaW5uZXItdXAge1xuXHRib3JkZXItdG9wLXN0eWxlOiBzb2xpZDtcbn1cblxuIiwiLyohXG4gKiBqUXVlcnkgVUkgRGF0ZXBpY2tlciAxLjEzLjJcbiAqIGh0dHA6Ly9qcXVlcnl1aS5jb21cbiAqXG4gKiBDb3B5cmlnaHQgalF1ZXJ5IEZvdW5kYXRpb24gYW5kIG90aGVyIGNvbnRyaWJ1dG9yc1xuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlLlxuICogaHR0cDovL2pxdWVyeS5vcmcvbGljZW5zZVxuICpcbiAqIGh0dHA6Ly9hcGkuanF1ZXJ5dWkuY29tL2RhdGVwaWNrZXIvI3RoZW1pbmdcbiAqL1xuLnVpLWRhdGVwaWNrZXIge1xuXHR3aWR0aDogMTdlbTtcblx0cGFkZGluZzogLjJlbSAuMmVtIDA7XG5cdGRpc3BsYXk6IG5vbmU7XG59XG4udWktZGF0ZXBpY2tlciAudWktZGF0ZXBpY2tlci1oZWFkZXIge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHBhZGRpbmc6IC4yZW0gMDtcbn1cbi51aS1kYXRlcGlja2VyIC51aS1kYXRlcGlja2VyLXByZXYsXG4udWktZGF0ZXBpY2tlciAudWktZGF0ZXBpY2tlci1uZXh0IHtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR0b3A6IDJweDtcblx0d2lkdGg6IDEuOGVtO1xuXHRoZWlnaHQ6IDEuOGVtO1xufVxuLnVpLWRhdGVwaWNrZXIgLnVpLWRhdGVwaWNrZXItcHJldi1ob3Zlcixcbi51aS1kYXRlcGlja2VyIC51aS1kYXRlcGlja2VyLW5leHQtaG92ZXIge1xuXHR0b3A6IDFweDtcbn1cbi51aS1kYXRlcGlja2VyIC51aS1kYXRlcGlja2VyLXByZXYge1xuXHRsZWZ0OiAycHg7XG59XG4udWktZGF0ZXBpY2tlciAudWktZGF0ZXBpY2tlci1uZXh0IHtcblx0cmlnaHQ6IDJweDtcbn1cbi51aS1kYXRlcGlja2VyIC51aS1kYXRlcGlja2VyLXByZXYtaG92ZXIge1xuXHRsZWZ0OiAxcHg7XG59XG4udWktZGF0ZXBpY2tlciAudWktZGF0ZXBpY2tlci1uZXh0LWhvdmVyIHtcblx0cmlnaHQ6IDFweDtcbn1cbi51aS1kYXRlcGlja2VyIC51aS1kYXRlcGlja2VyLXByZXYgc3Bhbixcbi51aS1kYXRlcGlja2VyIC51aS1kYXRlcGlja2VyLW5leHQgc3BhbiB7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdGxlZnQ6IDUwJTtcblx0bWFyZ2luLWxlZnQ6IC04cHg7XG5cdHRvcDogNTAlO1xuXHRtYXJnaW4tdG9wOiAtOHB4O1xufVxuLnVpLWRhdGVwaWNrZXIgLnVpLWRhdGVwaWNrZXItdGl0bGUge1xuXHRtYXJnaW46IDAgMi4zZW07XG5cdGxpbmUtaGVpZ2h0OiAxLjhlbTtcblx0dGV4dC1hbGlnbjogY2VudGVyO1xufVxuLnVpLWRhdGVwaWNrZXIgLnVpLWRhdGVwaWNrZXItdGl0bGUgc2VsZWN0IHtcblx0Zm9udC1zaXplOiAxZW07XG5cdG1hcmdpbjogMXB4IDA7XG59XG4udWktZGF0ZXBpY2tlciBzZWxlY3QudWktZGF0ZXBpY2tlci1tb250aCxcbi51aS1kYXRlcGlja2VyIHNlbGVjdC51aS1kYXRlcGlja2VyLXllYXIge1xuXHR3aWR0aDogNDUlO1xufVxuLnVpLWRhdGVwaWNrZXIgdGFibGUge1xuXHR3aWR0aDogMTAwJTtcblx0Zm9udC1zaXplOiAuOWVtO1xuXHRib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuXHRtYXJnaW46IDAgMCAuNGVtO1xufVxuLnVpLWRhdGVwaWNrZXIgdGgge1xuXHRwYWRkaW5nOiAuN2VtIC4zZW07XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cdGJvcmRlcjogMDtcbn1cbi51aS1kYXRlcGlja2VyIHRkIHtcblx0Ym9yZGVyOiAwO1xuXHRwYWRkaW5nOiAxcHg7XG59XG4udWktZGF0ZXBpY2tlciB0ZCBzcGFuLFxuLnVpLWRhdGVwaWNrZXIgdGQgYSB7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRwYWRkaW5nOiAuMmVtO1xuXHR0ZXh0LWFsaWduOiByaWdodDtcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuLnVpLWRhdGVwaWNrZXIgLnVpLWRhdGVwaWNrZXItYnV0dG9ucGFuZSB7XG5cdGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG5cdG1hcmdpbjogLjdlbSAwIDAgMDtcblx0cGFkZGluZzogMCAuMmVtO1xuXHRib3JkZXItbGVmdDogMDtcblx0Ym9yZGVyLXJpZ2h0OiAwO1xuXHRib3JkZXItYm90dG9tOiAwO1xufVxuLnVpLWRhdGVwaWNrZXIgLnVpLWRhdGVwaWNrZXItYnV0dG9ucGFuZSBidXR0b24ge1xuXHRmbG9hdDogcmlnaHQ7XG5cdG1hcmdpbjogLjVlbSAuMmVtIC40ZW07XG5cdGN1cnNvcjogcG9pbnRlcjtcblx0cGFkZGluZzogLjJlbSAuNmVtIC4zZW0gLjZlbTtcblx0d2lkdGg6IGF1dG87XG5cdG92ZXJmbG93OiB2aXNpYmxlO1xufVxuLnVpLWRhdGVwaWNrZXIgLnVpLWRhdGVwaWNrZXItYnV0dG9ucGFuZSBidXR0b24udWktZGF0ZXBpY2tlci1jdXJyZW50IHtcblx0ZmxvYXQ6IGxlZnQ7XG59XG5cbi8qIHdpdGggbXVsdGlwbGUgY2FsZW5kYXJzICovXG4udWktZGF0ZXBpY2tlci51aS1kYXRlcGlja2VyLW11bHRpIHtcblx0d2lkdGg6IGF1dG87XG59XG4udWktZGF0ZXBpY2tlci1tdWx0aSAudWktZGF0ZXBpY2tlci1ncm91cCB7XG5cdGZsb2F0OiBsZWZ0O1xufVxuLnVpLWRhdGVwaWNrZXItbXVsdGkgLnVpLWRhdGVwaWNrZXItZ3JvdXAgdGFibGUge1xuXHR3aWR0aDogOTUlO1xuXHRtYXJnaW46IDAgYXV0byAuNGVtO1xufVxuLnVpLWRhdGVwaWNrZXItbXVsdGktMiAudWktZGF0ZXBpY2tlci1ncm91cCB7XG5cdHdpZHRoOiA1MCU7XG59XG4udWktZGF0ZXBpY2tlci1tdWx0aS0zIC51aS1kYXRlcGlja2VyLWdyb3VwIHtcblx0d2lkdGg6IDMzLjMlO1xufVxuLnVpLWRhdGVwaWNrZXItbXVsdGktNCAudWktZGF0ZXBpY2tlci1ncm91cCB7XG5cdHdpZHRoOiAyNSU7XG59XG4udWktZGF0ZXBpY2tlci1tdWx0aSAudWktZGF0ZXBpY2tlci1ncm91cC1sYXN0IC51aS1kYXRlcGlja2VyLWhlYWRlcixcbi51aS1kYXRlcGlja2VyLW11bHRpIC51aS1kYXRlcGlja2VyLWdyb3VwLW1pZGRsZSAudWktZGF0ZXBpY2tlci1oZWFkZXIge1xuXHRib3JkZXItbGVmdC13aWR0aDogMDtcbn1cbi51aS1kYXRlcGlja2VyLW11bHRpIC51aS1kYXRlcGlja2VyLWJ1dHRvbnBhbmUge1xuXHRjbGVhcjogbGVmdDtcbn1cbi51aS1kYXRlcGlja2VyLXJvdy1icmVhayB7XG5cdGNsZWFyOiBib3RoO1xuXHR3aWR0aDogMTAwJTtcblx0Zm9udC1zaXplOiAwO1xufVxuXG4vKiBSVEwgc3VwcG9ydCAqL1xuLnVpLWRhdGVwaWNrZXItcnRsIHtcblx0ZGlyZWN0aW9uOiBydGw7XG59XG4udWktZGF0ZXBpY2tlci1ydGwgLnVpLWRhdGVwaWNrZXItcHJldiB7XG5cdHJpZ2h0OiAycHg7XG5cdGxlZnQ6IGF1dG87XG59XG4udWktZGF0ZXBpY2tlci1ydGwgLnVpLWRhdGVwaWNrZXItbmV4dCB7XG5cdGxlZnQ6IDJweDtcblx0cmlnaHQ6IGF1dG87XG59XG4udWktZGF0ZXBpY2tlci1ydGwgLnVpLWRhdGVwaWNrZXItcHJldjpob3ZlciB7XG5cdHJpZ2h0OiAxcHg7XG5cdGxlZnQ6IGF1dG87XG59XG4udWktZGF0ZXBpY2tlci1ydGwgLnVpLWRhdGVwaWNrZXItbmV4dDpob3ZlciB7XG5cdGxlZnQ6IDFweDtcblx0cmlnaHQ6IGF1dG87XG59XG4udWktZGF0ZXBpY2tlci1ydGwgLnVpLWRhdGVwaWNrZXItYnV0dG9ucGFuZSB7XG5cdGNsZWFyOiByaWdodDtcbn1cbi51aS1kYXRlcGlja2VyLXJ0bCAudWktZGF0ZXBpY2tlci1idXR0b25wYW5lIGJ1dHRvbiB7XG5cdGZsb2F0OiBsZWZ0O1xufVxuLnVpLWRhdGVwaWNrZXItcnRsIC51aS1kYXRlcGlja2VyLWJ1dHRvbnBhbmUgYnV0dG9uLnVpLWRhdGVwaWNrZXItY3VycmVudCxcbi51aS1kYXRlcGlja2VyLXJ0bCAudWktZGF0ZXBpY2tlci1ncm91cCB7XG5cdGZsb2F0OiByaWdodDtcbn1cbi51aS1kYXRlcGlja2VyLXJ0bCAudWktZGF0ZXBpY2tlci1ncm91cC1sYXN0IC51aS1kYXRlcGlja2VyLWhlYWRlcixcbi51aS1kYXRlcGlja2VyLXJ0bCAudWktZGF0ZXBpY2tlci1ncm91cC1taWRkbGUgLnVpLWRhdGVwaWNrZXItaGVhZGVyIHtcblx0Ym9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xuXHRib3JkZXItbGVmdC13aWR0aDogMXB4O1xufVxuXG4vKiBJY29ucyAqL1xuLnVpLWRhdGVwaWNrZXIgLnVpLWljb24ge1xuXHRkaXNwbGF5OiBibG9jaztcblx0dGV4dC1pbmRlbnQ6IC05OTk5OXB4O1xuXHRvdmVyZmxvdzogaGlkZGVuO1xuXHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRsZWZ0OiAuNWVtO1xuXHR0b3A6IC4zZW07XG59XG4iLCIvKiFcbiAqIGpRdWVyeSBVSSBEaWFsb2cgMS4xMy4yXG4gKiBodHRwOi8vanF1ZXJ5dWkuY29tXG4gKlxuICogQ29weXJpZ2h0IGpRdWVyeSBGb3VuZGF0aW9uIGFuZCBvdGhlciBjb250cmlidXRvcnNcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZS5cbiAqIGh0dHA6Ly9qcXVlcnkub3JnL2xpY2Vuc2VcbiAqXG4gKiBodHRwOi8vYXBpLmpxdWVyeXVpLmNvbS9kaWFsb2cvI3RoZW1pbmdcbiAqL1xuLnVpLWRpYWxvZyB7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0dG9wOiAwO1xuXHRsZWZ0OiAwO1xuXHRwYWRkaW5nOiAuMmVtO1xuXHRvdXRsaW5lOiAwO1xufVxuLnVpLWRpYWxvZyAudWktZGlhbG9nLXRpdGxlYmFyIHtcblx0cGFkZGluZzogLjRlbSAxZW07XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi51aS1kaWFsb2cgLnVpLWRpYWxvZy10aXRsZSB7XG5cdGZsb2F0OiBsZWZ0O1xuXHRtYXJnaW46IC4xZW0gMDtcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcblx0d2lkdGg6IDkwJTtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0dGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG59XG4udWktZGlhbG9nIC51aS1kaWFsb2ctdGl0bGViYXItY2xvc2Uge1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHJpZ2h0OiAuM2VtO1xuXHR0b3A6IDUwJTtcblx0d2lkdGg6IDIwcHg7XG5cdG1hcmdpbjogLTEwcHggMCAwIDA7XG5cdHBhZGRpbmc6IDFweDtcblx0aGVpZ2h0OiAyMHB4O1xufVxuLnVpLWRpYWxvZyAudWktZGlhbG9nLWNvbnRlbnQge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdGJvcmRlcjogMDtcblx0cGFkZGluZzogLjVlbSAxZW07XG5cdGJhY2tncm91bmQ6IG5vbmU7XG5cdG92ZXJmbG93OiBhdXRvO1xufVxuLnVpLWRpYWxvZyAudWktZGlhbG9nLWJ1dHRvbnBhbmUge1xuXHR0ZXh0LWFsaWduOiBsZWZ0O1xuXHRib3JkZXItd2lkdGg6IDFweCAwIDAgMDtcblx0YmFja2dyb3VuZC1pbWFnZTogbm9uZTtcblx0bWFyZ2luLXRvcDogLjVlbTtcblx0cGFkZGluZzogLjNlbSAxZW0gLjVlbSAuNGVtO1xufVxuLnVpLWRpYWxvZyAudWktZGlhbG9nLWJ1dHRvbnBhbmUgLnVpLWRpYWxvZy1idXR0b25zZXQge1xuXHRmbG9hdDogcmlnaHQ7XG59XG4udWktZGlhbG9nIC51aS1kaWFsb2ctYnV0dG9ucGFuZSBidXR0b24ge1xuXHRtYXJnaW46IC41ZW0gLjRlbSAuNWVtIDA7XG5cdGN1cnNvcjogcG9pbnRlcjtcbn1cbi51aS1kaWFsb2cgLnVpLXJlc2l6YWJsZS1uIHtcblx0aGVpZ2h0OiAycHg7XG5cdHRvcDogMDtcbn1cbi51aS1kaWFsb2cgLnVpLXJlc2l6YWJsZS1lIHtcblx0d2lkdGg6IDJweDtcblx0cmlnaHQ6IDA7XG59XG4udWktZGlhbG9nIC51aS1yZXNpemFibGUtcyB7XG5cdGhlaWdodDogMnB4O1xuXHRib3R0b206IDA7XG59XG4udWktZGlhbG9nIC51aS1yZXNpemFibGUtdyB7XG5cdHdpZHRoOiAycHg7XG5cdGxlZnQ6IDA7XG59XG4udWktZGlhbG9nIC51aS1yZXNpemFibGUtc2UsXG4udWktZGlhbG9nIC51aS1yZXNpemFibGUtc3csXG4udWktZGlhbG9nIC51aS1yZXNpemFibGUtbmUsXG4udWktZGlhbG9nIC51aS1yZXNpemFibGUtbncge1xuXHR3aWR0aDogN3B4O1xuXHRoZWlnaHQ6IDdweDtcbn1cbi51aS1kaWFsb2cgLnVpLXJlc2l6YWJsZS1zZSB7XG5cdHJpZ2h0OiAwO1xuXHRib3R0b206IDA7XG59XG4udWktZGlhbG9nIC51aS1yZXNpemFibGUtc3cge1xuXHRsZWZ0OiAwO1xuXHRib3R0b206IDA7XG59XG4udWktZGlhbG9nIC51aS1yZXNpemFibGUtbmUge1xuXHRyaWdodDogMDtcblx0dG9wOiAwO1xufVxuLnVpLWRpYWxvZyAudWktcmVzaXphYmxlLW53IHtcblx0bGVmdDogMDtcblx0dG9wOiAwO1xufVxuLnVpLWRyYWdnYWJsZSAudWktZGlhbG9nLXRpdGxlYmFyIHtcblx0Y3Vyc29yOiBtb3ZlO1xufVxuIiwiLyohXG4gKiBqUXVlcnkgVUkgTWVudSAxLjEzLjJcbiAqIGh0dHA6Ly9qcXVlcnl1aS5jb21cbiAqXG4gKiBDb3B5cmlnaHQgalF1ZXJ5IEZvdW5kYXRpb24gYW5kIG90aGVyIGNvbnRyaWJ1dG9yc1xuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlLlxuICogaHR0cDovL2pxdWVyeS5vcmcvbGljZW5zZVxuICpcbiAqIGh0dHA6Ly9hcGkuanF1ZXJ5dWkuY29tL21lbnUvI3RoZW1pbmdcbiAqL1xuLnVpLW1lbnUge1xuXHRsaXN0LXN0eWxlOiBub25lO1xuXHRwYWRkaW5nOiAwO1xuXHRtYXJnaW46IDA7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRvdXRsaW5lOiAwO1xufVxuLnVpLW1lbnUgLnVpLW1lbnUge1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG59XG4udWktbWVudSAudWktbWVudS1pdGVtIHtcblx0bWFyZ2luOiAwO1xuXHRjdXJzb3I6IHBvaW50ZXI7XG5cdC8qIHN1cHBvcnQ6IElFMTAsIHNlZSAjODg0NCAqL1xuXHRsaXN0LXN0eWxlLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL2dpZjtiYXNlNjQsUjBsR09EbGhBUUFCQUlBQUFBQUFBUC8vL3lINUJBRUFBQUFBTEFBQUFBQUJBQUVBQUFJQlJBQTdcIik7XG59XG4udWktbWVudSAudWktbWVudS1pdGVtLXdyYXBwZXIge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHBhZGRpbmc6IDNweCAxZW0gM3B4IC40ZW07XG59XG4udWktbWVudSAudWktbWVudS1kaXZpZGVyIHtcblx0bWFyZ2luOiA1cHggMDtcblx0aGVpZ2h0OiAwO1xuXHRmb250LXNpemU6IDA7XG5cdGxpbmUtaGVpZ2h0OiAwO1xuXHRib3JkZXItd2lkdGg6IDFweCAwIDAgMDtcbn1cbi51aS1tZW51IC51aS1zdGF0ZS1mb2N1cyxcbi51aS1tZW51IC51aS1zdGF0ZS1hY3RpdmUge1xuXHRtYXJnaW46IC0xcHg7XG59XG5cbi8qIGljb24gc3VwcG9ydCAqL1xuLnVpLW1lbnUtaWNvbnMge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4udWktbWVudS1pY29ucyAudWktbWVudS1pdGVtLXdyYXBwZXIge1xuXHRwYWRkaW5nLWxlZnQ6IDJlbTtcbn1cblxuLyogbGVmdC1hbGlnbmVkICovXG4udWktbWVudSAudWktaWNvbiB7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0dG9wOiAwO1xuXHRib3R0b206IDA7XG5cdGxlZnQ6IC4yZW07XG5cdG1hcmdpbjogYXV0byAwO1xufVxuXG4vKiByaWdodC1hbGlnbmVkICovXG4udWktbWVudSAudWktbWVudS1pY29uIHtcblx0bGVmdDogYXV0bztcblx0cmlnaHQ6IDA7XG59XG4iLCIvKiFcbiAqIGpRdWVyeSBVSSBQcm9ncmVzc2JhciAxLjEzLjJcbiAqIGh0dHA6Ly9qcXVlcnl1aS5jb21cbiAqXG4gKiBDb3B5cmlnaHQgalF1ZXJ5IEZvdW5kYXRpb24gYW5kIG90aGVyIGNvbnRyaWJ1dG9yc1xuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlLlxuICogaHR0cDovL2pxdWVyeS5vcmcvbGljZW5zZVxuICpcbiAqIGh0dHA6Ly9hcGkuanF1ZXJ5dWkuY29tL3Byb2dyZXNzYmFyLyN0aGVtaW5nXG4gKi9cbi51aS1wcm9ncmVzc2JhciB7XG5cdGhlaWdodDogMmVtO1xuXHR0ZXh0LWFsaWduOiBsZWZ0O1xuXHRvdmVyZmxvdzogaGlkZGVuO1xufVxuLnVpLXByb2dyZXNzYmFyIC51aS1wcm9ncmVzc2Jhci12YWx1ZSB7XG5cdG1hcmdpbjogLTFweDtcblx0aGVpZ2h0OiAxMDAlO1xufVxuLnVpLXByb2dyZXNzYmFyIC51aS1wcm9ncmVzc2Jhci1vdmVybGF5IHtcblx0YmFja2dyb3VuZDogdXJsKFwiZGF0YTppbWFnZS9naWY7YmFzZTY0LFIwbEdPRGxoS0FBb0FJQUJBQUFBQVAvLy95SC9DMDVGVkZORFFWQkZNaTR3QXdFQUFBQWgrUVFKQVFBQkFDd0FBQUFBS0FBb0FBQUNrWXdOcVhyZEM1MkRTMDZhN01GWkkrNEZIQkNLb0RlV0tYcXltUHFHcXh2SnJYWmJNeDdUdGMrdzlYZ1UyRkIzbE95UVJXRVQySUZHaVU5bTFmckRWcHhaWmM2YmZId3Y0YzFZWFA2azFWZHkyOTJGYjZVa3V2RnRYcHZXU3pBK0h5Y1hKSFVYaUdZSWlNZzJSNlc0NTlnbldHZkhOZGpJcURXVnFlbUgyZWtwT2JrcE9scHBXVXFaaXFyNmVkcXFXUUFBSWZrRUNRRUFBUUFzQUFBQUFDZ0FLQUFBQXBTTWdabkdmYXFjZzFFMnV1ekRtbUhVQlI4UWlsOTVoaVBLcVduM2FxdExzUzE4eTdHMVN6TmVvd1dCRU50UWQrVDFKa3RQMDVuelBUZEpabFI2dlV4TldXalYrdlVXaFdOa1dGd3hsOVZwWlJlZFljZmxJT0xhZmFhMjhYZHNIL3lubGNjMXVQVkRaeFFJUjBLMjUrY0lDQ21vcUNlNW1HaFpPZmVZU1VoNXlKY0p5cmtaV1dwYVI4ZG9KMm80TllxNjJsQUFBQ0g1QkFrQkFBRUFMQUFBQUFBb0FDZ0FBQUtWREk0WXkyMlpuSU5STnFvc3cwQnY3aTFneUhVa0ZqN29TYVdsdTNvdkM4R3hOc281Zmx1ejNxTFZoQlZlVC9MejdaVEh5eEw1ZERhbFFXUFZPc1FXdFJudXdYYUZUajlqVlZoOHBtYTlKalo0ellTajVaT3ltYTd1dW9sZmZoK0lSNWFXOTdjSHVCVVhLR0tYbEtqbitEaUhXTWNZSmFoNE4wbFlDTWxKT1hpcEdScjVxZGdvU1RycVdTcTZXRmwyeXBvYVVBQUFJZmtFQ1FFQUFRQXNBQUFBQUNnQUtBQUFBcGFFYjZITGdkL2lPN0ZOV3RjRldlK3VmT0RHalJmb2lKMmFrU2hidWViMHd0STUwem0wMnBidndmV0VNV0JRMXpLR2xMSWhza2lFUG05UjZ2Ulh4VjRaeldUMnlIT0dwV015b3JibEtsTnA4SG1IRWIvbENYamNXN2JtdFhQOFh0MjI5T1ZXUjFmb2QyZVdxTmZIdU1qWENQa0lHTmlsZU9pSW1WbUNPRW1vU2ZuM3lYbEpXbW9IR2hxcDZpbFl1V1lwbVRxS1VnQUFJZmtFQ1FFQUFRQXNBQUFBQUNnQUtBQUFBcGlFSDZrYjU4YmlRM0ZOV3RNRldXM2VOVmNvanVGR2ZxblpxU2VidVMwNnc1VjgwL1gwMnBLZTh6RndQNkVGV09UMWxERms4ckdFUmgxVFROT29jUTYxSG00WG0yVmV4VUhwemp5bVZpSHJGYmlFTHNlZlZybjZYS2ZudDJROUcvK1hkaWU0OTlYSGQyZzRoN2lvT0doWEdKYm9HQW5YU0Jub0J3S1l5ZmlvdWJaSjJIbjBSdVJaYWZsWk9pbDU2WnA2aWlvS1NYcFVBQUFoK1FRSkFRQUJBQ3dBQUFBQUtBQW9BQUFDa29RUnFSdm54dUk3a1UxYTFVVTViZDV0blNlT1pYaG1uNWxXSzNxTlRXdlJkUXhQOHF2YUMrL3lhWVF6WE83Qk12YVVFbUpSZDNUc2lNQWdzd21OWXJTZ1pkWXJUWDZ0U0hHWk83M2V6dUF3MnV4dVErQmJlWmZNeHNleFkzNSsvUWU0SjFpblYwZzR4M1dIdU1oSWwyalhPS1QyUStWVTVmZ29TVUk1MlZmWnlma0pHa2hhNmptWSthYVlkaXJxK2xRQUFDSDVCQWtCQUFFQUxBQUFBQUFvQUNnQUFBS1dCSUtwWWUwTDNZTktUb3Fzd1VsdnpuaWdkNHdpUjRLaFpyS3Q5VXBxaXA2MWk5RTN2TXZ4UmRIbGJFRmlFWGZrOVlBUll4T1paRDZWUTJwVXVuQm10UlhvMUxmOGhNVlZjTmw4SmFmVjM4YU0yL0Z1NVYxNkJuNjNyNnh0OTdqMDkrTVhTRmk0Qm5pR0ZhZTNoemJIOStoWUJ6a3B1VWg1YVptSHVhblpPWmdJdXZiR2lOZW9tQ25heHhhcDJ1cGFDWnNxKzFrQUFDSDVCQWtCQUFFQUxBQUFBQUFvQUNnQUFBS1hqSThCeTV6ZjRrT3hUVnJYTlZsdjFYMGQ4SUdaR0tMbk5wWXRtOExyOWNxVmV1T1N2Zk9XNzlEOWFESGl6TmhESmlkRlpoTnlkRWFoT2FESDZub210SmpwMXR1dEtvTldrdkE2SnFmUlZMSFUvUVVmYXU5bDJ4N0c1NGQxZmw5OTV4Y0lHQWRYcU1mQk5hZG9ZcmhIK01nMktCbHBWcGJsdUNpWG1NbloyU2g0R0JxSitja0lPcXFKNkxtS1NsbFptc29xNndwUUFBQWgrUVFKQVFBQkFDd0FBQUFBS0FBb0FBQUNsWXgvb0x2b3h1SkRrVTFhMVlVWmJKNTluU2QyWlhoV3FiUmEyL2dGOEd1MkRZM2lxczd5cnEreEJZRWtZdkZTTThhU1NPYkUrWmdSbDFCSEZaTnI3cFJDYXZaNUJXMjE0MmhZM0FOL3pXdHNtZjEycDlYeHhGbDJscExuMXJzZXp0ZlhaamRJV0lmMnM1ZEl0d2pZS0Jnbzl5ZzVwSGd6SlhURWVHbFp1ZW5weVBtcEdRb0tPV2tZbVNwYVNucUtpbGVJMkZBQUFDSDVCQWtCQUFFQUxBQUFBQUFvQUNnQUFBS1ZqQitndStqRzRrT1JUVnJWaFJsc25uMmRKM1psZUZhcHRGcmIrQ1htTzlPb3plTDVWZlA5OUh2QVdocGlVZGN3a3BCSDM4MjVBd1lkVTh4VHFsTEdodENvc0FyS01wdmZhMW1NUmFlOVZ2V1pmZUIyWGZQa2VMbW0xOGxVY0JqK3A1ZG5OOGpYWjNZSUdFaFl1T1VuNDVhb0NEa3AxNmhsNUlqWUp2aldLY25vR1FwcXlQbHBPaHIzYUVsYXFycTU2QnE3VkFBQU93PT1cIik7XG5cdGhlaWdodDogMTAwJTtcblx0LW1zLWZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTI1KVwiOyAvKiBzdXBwb3J0OiBJRTggKi9cblx0b3BhY2l0eTogMC4yNTtcbn1cbi51aS1wcm9ncmVzc2Jhci1pbmRldGVybWluYXRlIC51aS1wcm9ncmVzc2Jhci12YWx1ZSB7XG5cdGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG59XG4iLCIvKiFcbiAqIGpRdWVyeSBVSSBTZWxlY3RtZW51IDEuMTMuMlxuICogaHR0cDovL2pxdWVyeXVpLmNvbVxuICpcbiAqIENvcHlyaWdodCBqUXVlcnkgRm91bmRhdGlvbiBhbmQgb3RoZXIgY29udHJpYnV0b3JzXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UuXG4gKiBodHRwOi8vanF1ZXJ5Lm9yZy9saWNlbnNlXG4gKlxuICogaHR0cDovL2FwaS5qcXVlcnl1aS5jb20vc2VsZWN0bWVudS8jdGhlbWluZ1xuICovXG4udWktc2VsZWN0bWVudS1tZW51IHtcblx0cGFkZGluZzogMDtcblx0bWFyZ2luOiAwO1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHRvcDogMDtcblx0bGVmdDogMDtcblx0ZGlzcGxheTogbm9uZTtcbn1cbi51aS1zZWxlY3RtZW51LW1lbnUgLnVpLW1lbnUge1xuXHRvdmVyZmxvdzogYXV0bztcblx0b3ZlcmZsb3cteDogaGlkZGVuO1xuXHRwYWRkaW5nLWJvdHRvbTogMXB4O1xufVxuLnVpLXNlbGVjdG1lbnUtbWVudSAudWktbWVudSAudWktc2VsZWN0bWVudS1vcHRncm91cCB7XG5cdGZvbnQtc2l6ZTogMWVtO1xuXHRmb250LXdlaWdodDogYm9sZDtcblx0bGluZS1oZWlnaHQ6IDEuNTtcblx0cGFkZGluZzogMnB4IDAuNGVtO1xuXHRtYXJnaW46IDAuNWVtIDAgMCAwO1xuXHRoZWlnaHQ6IGF1dG87XG5cdGJvcmRlcjogMDtcbn1cbi51aS1zZWxlY3RtZW51LW9wZW4ge1xuXHRkaXNwbGF5OiBibG9jaztcbn1cbi51aS1zZWxlY3RtZW51LXRleHQge1xuXHRkaXNwbGF5OiBibG9jaztcblx0bWFyZ2luLXJpZ2h0OiAyMHB4O1xuXHRvdmVyZmxvdzogaGlkZGVuO1xuXHR0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbn1cbi51aS1zZWxlY3RtZW51LWJ1dHRvbi51aS1idXR0b24ge1xuXHR0ZXh0LWFsaWduOiBsZWZ0O1xuXHR3aGl0ZS1zcGFjZTogbm93cmFwO1xuXHR3aWR0aDogMTRlbTtcbn1cbi51aS1zZWxlY3RtZW51LWljb24udWktaWNvbiB7XG5cdGZsb2F0OiByaWdodDtcblx0bWFyZ2luLXRvcDogMDtcbn1cbiIsIi8qIVxuICogalF1ZXJ5IFVJIFNsaWRlciAxLjEzLjJcbiAqIGh0dHA6Ly9qcXVlcnl1aS5jb21cbiAqXG4gKiBDb3B5cmlnaHQgalF1ZXJ5IEZvdW5kYXRpb24gYW5kIG90aGVyIGNvbnRyaWJ1dG9yc1xuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlLlxuICogaHR0cDovL2pxdWVyeS5vcmcvbGljZW5zZVxuICpcbiAqIGh0dHA6Ly9hcGkuanF1ZXJ5dWkuY29tL3NsaWRlci8jdGhlbWluZ1xuICovXG4udWktc2xpZGVyIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHR0ZXh0LWFsaWduOiBsZWZ0O1xufVxuLnVpLXNsaWRlciAudWktc2xpZGVyLWhhbmRsZSB7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0ei1pbmRleDogMjtcblx0d2lkdGg6IDEuMmVtO1xuXHRoZWlnaHQ6IDEuMmVtO1xuXHRjdXJzb3I6IHBvaW50ZXI7XG5cdC1tcy10b3VjaC1hY3Rpb246IG5vbmU7XG5cdHRvdWNoLWFjdGlvbjogbm9uZTtcbn1cbi51aS1zbGlkZXIgLnVpLXNsaWRlci1yYW5nZSB7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0ei1pbmRleDogMTtcblx0Zm9udC1zaXplOiAuN2VtO1xuXHRkaXNwbGF5OiBibG9jaztcblx0Ym9yZGVyOiAwO1xuXHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDA7XG59XG5cbi8qIHN1cHBvcnQ6IElFOCAtIFNlZSAjNjcyNyAqL1xuLnVpLXNsaWRlci51aS1zdGF0ZS1kaXNhYmxlZCAudWktc2xpZGVyLWhhbmRsZSxcbi51aS1zbGlkZXIudWktc3RhdGUtZGlzYWJsZWQgLnVpLXNsaWRlci1yYW5nZSB7XG5cdGZpbHRlcjogaW5oZXJpdDtcbn1cblxuLnVpLXNsaWRlci1ob3Jpem9udGFsIHtcblx0aGVpZ2h0OiAuOGVtO1xufVxuLnVpLXNsaWRlci1ob3Jpem9udGFsIC51aS1zbGlkZXItaGFuZGxlIHtcblx0dG9wOiAtLjNlbTtcblx0bWFyZ2luLWxlZnQ6IC0uNmVtO1xufVxuLnVpLXNsaWRlci1ob3Jpem9udGFsIC51aS1zbGlkZXItcmFuZ2Uge1xuXHR0b3A6IDA7XG5cdGhlaWdodDogMTAwJTtcbn1cbi51aS1zbGlkZXItaG9yaXpvbnRhbCAudWktc2xpZGVyLXJhbmdlLW1pbiB7XG5cdGxlZnQ6IDA7XG59XG4udWktc2xpZGVyLWhvcml6b250YWwgLnVpLXNsaWRlci1yYW5nZS1tYXgge1xuXHRyaWdodDogMDtcbn1cblxuLnVpLXNsaWRlci12ZXJ0aWNhbCB7XG5cdHdpZHRoOiAuOGVtO1xuXHRoZWlnaHQ6IDEwMHB4O1xufVxuLnVpLXNsaWRlci12ZXJ0aWNhbCAudWktc2xpZGVyLWhhbmRsZSB7XG5cdGxlZnQ6IC0uM2VtO1xuXHRtYXJnaW4tbGVmdDogMDtcblx0bWFyZ2luLWJvdHRvbTogLS42ZW07XG59XG4udWktc2xpZGVyLXZlcnRpY2FsIC51aS1zbGlkZXItcmFuZ2Uge1xuXHRsZWZ0OiAwO1xuXHR3aWR0aDogMTAwJTtcbn1cbi51aS1zbGlkZXItdmVydGljYWwgLnVpLXNsaWRlci1yYW5nZS1taW4ge1xuXHRib3R0b206IDA7XG59XG4udWktc2xpZGVyLXZlcnRpY2FsIC51aS1zbGlkZXItcmFuZ2UtbWF4IHtcblx0dG9wOiAwO1xufVxuIiwiLyohXG4gKiBqUXVlcnkgVUkgU3Bpbm5lciAxLjEzLjJcbiAqIGh0dHA6Ly9qcXVlcnl1aS5jb21cbiAqXG4gKiBDb3B5cmlnaHQgalF1ZXJ5IEZvdW5kYXRpb24gYW5kIG90aGVyIGNvbnRyaWJ1dG9yc1xuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlLlxuICogaHR0cDovL2pxdWVyeS5vcmcvbGljZW5zZVxuICpcbiAqIGh0dHA6Ly9hcGkuanF1ZXJ5dWkuY29tL3NwaW5uZXIvI3RoZW1pbmdcbiAqL1xuLnVpLXNwaW5uZXIge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0cGFkZGluZzogMDtcblx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cbi51aS1zcGlubmVyLWlucHV0IHtcblx0Ym9yZGVyOiBub25lO1xuXHRiYWNrZ3JvdW5kOiBub25lO1xuXHRjb2xvcjogaW5oZXJpdDtcblx0cGFkZGluZzogLjIyMmVtIDA7XG5cdG1hcmdpbjogLjJlbSAwO1xuXHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXHRtYXJnaW4tbGVmdDogLjRlbTtcblx0bWFyZ2luLXJpZ2h0OiAyZW07XG59XG4udWktc3Bpbm5lci1idXR0b24ge1xuXHR3aWR0aDogMS42ZW07XG5cdGhlaWdodDogNTAlO1xuXHRmb250LXNpemU6IC41ZW07XG5cdHBhZGRpbmc6IDA7XG5cdG1hcmdpbjogMDtcblx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdGN1cnNvcjogZGVmYXVsdDtcblx0ZGlzcGxheTogYmxvY2s7XG5cdG92ZXJmbG93OiBoaWRkZW47XG5cdHJpZ2h0OiAwO1xufVxuLyogbW9yZSBzcGVjaWZpY2l0eSByZXF1aXJlZCBoZXJlIHRvIG92ZXJyaWRlIGRlZmF1bHQgYm9yZGVycyAqL1xuLnVpLXNwaW5uZXIgYS51aS1zcGlubmVyLWJ1dHRvbiB7XG5cdGJvcmRlci10b3Atc3R5bGU6IG5vbmU7XG5cdGJvcmRlci1ib3R0b20tc3R5bGU6IG5vbmU7XG5cdGJvcmRlci1yaWdodC1zdHlsZTogbm9uZTtcbn1cbi51aS1zcGlubmVyLXVwIHtcblx0dG9wOiAwO1xufVxuLnVpLXNwaW5uZXItZG93biB7XG5cdGJvdHRvbTogMDtcbn1cbiIsIi8qIVxuICogalF1ZXJ5IFVJIFRhYnMgMS4xMy4yXG4gKiBodHRwOi8vanF1ZXJ5dWkuY29tXG4gKlxuICogQ29weXJpZ2h0IGpRdWVyeSBGb3VuZGF0aW9uIGFuZCBvdGhlciBjb250cmlidXRvcnNcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZS5cbiAqIGh0dHA6Ly9qcXVlcnkub3JnL2xpY2Vuc2VcbiAqXG4gKiBodHRwOi8vYXBpLmpxdWVyeXVpLmNvbS90YWJzLyN0aGVtaW5nXG4gKi9cbi51aS10YWJzIHtcblx0cG9zaXRpb246IHJlbGF0aXZlOy8qIHBvc2l0aW9uOiByZWxhdGl2ZSBwcmV2ZW50cyBJRSBzY3JvbGwgYnVnIChlbGVtZW50IHdpdGggcG9zaXRpb246IHJlbGF0aXZlIGluc2lkZSBjb250YWluZXIgd2l0aCBvdmVyZmxvdzogYXV0byBhcHBlYXIgYXMgXCJmaXhlZFwiKSAqL1xuXHRwYWRkaW5nOiAuMmVtO1xufVxuLnVpLXRhYnMgLnVpLXRhYnMtbmF2IHtcblx0bWFyZ2luOiAwO1xuXHRwYWRkaW5nOiAuMmVtIC4yZW0gMDtcbn1cbi51aS10YWJzIC51aS10YWJzLW5hdiBsaSB7XG5cdGxpc3Qtc3R5bGU6IG5vbmU7XG5cdGZsb2F0OiBsZWZ0O1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHRvcDogMDtcblx0bWFyZ2luOiAxcHggLjJlbSAwIDA7XG5cdGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG5cdHBhZGRpbmc6IDA7XG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG4udWktdGFicyAudWktdGFicy1uYXYgLnVpLXRhYnMtYW5jaG9yIHtcblx0ZmxvYXQ6IGxlZnQ7XG5cdHBhZGRpbmc6IC41ZW0gMWVtO1xuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG4udWktdGFicyAudWktdGFicy1uYXYgbGkudWktdGFicy1hY3RpdmUge1xuXHRtYXJnaW4tYm90dG9tOiAtMXB4O1xuXHRwYWRkaW5nLWJvdHRvbTogMXB4O1xufVxuLnVpLXRhYnMgLnVpLXRhYnMtbmF2IGxpLnVpLXRhYnMtYWN0aXZlIC51aS10YWJzLWFuY2hvcixcbi51aS10YWJzIC51aS10YWJzLW5hdiBsaS51aS1zdGF0ZS1kaXNhYmxlZCAudWktdGFicy1hbmNob3IsXG4udWktdGFicyAudWktdGFicy1uYXYgbGkudWktdGFicy1sb2FkaW5nIC51aS10YWJzLWFuY2hvciB7XG5cdGN1cnNvcjogdGV4dDtcbn1cbi51aS10YWJzLWNvbGxhcHNpYmxlIC51aS10YWJzLW5hdiBsaS51aS10YWJzLWFjdGl2ZSAudWktdGFicy1hbmNob3Ige1xuXHRjdXJzb3I6IHBvaW50ZXI7XG59XG4udWktdGFicyAudWktdGFicy1wYW5lbCB7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRib3JkZXItd2lkdGg6IDA7XG5cdHBhZGRpbmc6IDFlbSAxLjRlbTtcblx0YmFja2dyb3VuZDogbm9uZTtcbn1cbiIsIi8qIVxuICogalF1ZXJ5IFVJIFRvb2x0aXAgMS4xMy4yXG4gKiBodHRwOi8vanF1ZXJ5dWkuY29tXG4gKlxuICogQ29weXJpZ2h0IGpRdWVyeSBGb3VuZGF0aW9uIGFuZCBvdGhlciBjb250cmlidXRvcnNcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZS5cbiAqIGh0dHA6Ly9qcXVlcnkub3JnL2xpY2Vuc2VcbiAqXG4gKiBodHRwOi8vYXBpLmpxdWVyeXVpLmNvbS90b29sdGlwLyN0aGVtaW5nXG4gKi9cbi51aS10b29sdGlwIHtcblx0cGFkZGluZzogOHB4O1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHotaW5kZXg6IDk5OTk7XG5cdG1heC13aWR0aDogMzAwcHg7XG59XG5ib2R5IC51aS10b29sdGlwIHtcblx0Ym9yZGVyLXdpZHRoOiAycHg7XG59XG4iLCJAaW1wb3J0IFwibm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2Jvb3RzdHJhcFwiO1xuQGltcG9ydCBcIm5vZGVfbW9kdWxlcy9qcXVlcnktdWkvdGhlbWVzL2Jhc2UvZGF0ZXBpY2tlclwiO1xuQGltcG9ydCBcIm5vZGVfbW9kdWxlcy9lYXN5bWRlL2Rpc3QvZWFzeW1kZS5taW5cIjtcbkBpbXBvcnQgXCJub2RlX21vZHVsZXMvZGF0YXRhYmxlcy9tZWRpYS9jc3MvanF1ZXJ5LmRhdGFUYWJsZXNcIjtcblxuQGltcG9ydCBcIl92YXJpYWJsZXNcIjtcbkBpbXBvcnQgXCJfZ2VuZXJhbFwiO1xuQGltcG9ydCBcIl9idXR0b25zXCI7XG5AaW1wb3J0IFwiX2Z1bmN0aW9uc1wiO1xuQGltcG9ydCBcIl9pY29uc1wiO1xuQGltcG9ydCBcIl9pY29ucy1teXNwYWNlLnNjc3NcIjtcbkBpbXBvcnQgXCJfbGlicmFyeS5zY3NzXCI7XG5AaW1wb3J0IFwiX3BvcnRhbC5zY3NzXCI7XG5AaW1wb3J0IFwiX2Jyb3dzZS5zY3NzXCI7XG5AaW1wb3J0IFwiX2Nvbm5lY3RlZC1zcGFjZS5zY3NzXCI7XG5AaW1wb3J0IFwiX215TGlicmFyeS5zY3NzXCI7XG5AaW1wb3J0IFwiaW5kZXhcIjtcbkBpbXBvcnQgXCJuYXZiYXJcIjtcbkBpbXBvcnQgXCJjY3NkX2Zvcm1cIjtcbkBpbXBvcnQgXCJkb2N1bWVudFwiO1xuQGltcG9ydCBcImFjdGlvbnNcIjtcbkBpbXBvcnQgXCJfZXJyb3JcIjtcbkBpbXBvcnQgXCJzZWFyY2hcIjtcbkBpbXBvcnQgXCJfZGFzaGJvYXJkXCI7XG5AaW1wb3J0IFwiX3Jlc3VtZVwiO1xuQGltcG9ydCBcIl9yZXN1bWUtdmlzdWFsaXphdGlvblwiO1xuQGltcG9ydCBcIl9zdWJtaXRcIjtcbkBpbXBvcnQgXCJfcGFnZVwiO1xuQGltcG9ydCBcIl9zdGF0c1wiO1xuQGltcG9ydCBcIl9zaXRlXCI7XG5AaW1wb3J0IFwiX2RhcmtcIjtcblxuLy8gY29kZSBjb3BpZWQgZnJvbSwgaXQgcyBhYm91dCBhIGpzIGNsYXNzIHRoYXQgcmVsaWVzIG9uIGJvb3RzdHJhcCBwb3BvdmVycyB0byBtYWtlIGZpZWxkIGVkaXRhYmxlIChmb3IgbW9kZXJhdGlvbiwgZHVwbGljYXRlcylcbi8vIGNoZWNrIDogaHR0cHM6Ly9naXRodWIuY29tL1RhbHYveC1lZGl0YWJsZS9ibG9iL2RldmVsb3AvZGlzdC9ib290c3RyYXA0LWVkaXRhYmxlL2Nzcy9ib290c3RyYXAtZWRpdGFibGUuY3NzXG4vLyB3ZSB1cGRhdGVkIHRoZSBpY29ucyB0byB1c2UgSEFMIGljb25zIGZhLXRpbWU9PiBpY29uLWV4aXQgYW5kIGZhLXN1Ym1pdD0+IGljb24tY2hlY2tcbi8vIHRoZSBvcmlnaW5hbCByZXBvIGlzIG5vdCBtYWludGFpbmUgYW55bW9yZSAhIDogaHR0cHM6Ly9naXRodWIuY29tL3ZpdGFsZXRzL3gtZWRpdGFibGUvaXNzdWVzLzYxMCAvIGh0dHBzOi8vZ2l0aHViLmNvbS92aXRhbGV0cy94LWVkaXRhYmxlL2lzc3Vlcy8xMTc5XG5AaW1wb3J0IFwiYm9vdHN0cmFwLWVkaXRhYmxlXCI7XG5cbi8qKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgQk9EWVxuKioqKioqKioqKioqKioqKioqKioqKi9cbmh0bWwsIGJvZHl7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG4gIG1pbi1oZWlnaHQ6IDEwMCU7XG4gIGZvbnQtc2l6ZTogJHNpemUtcmVndWxhcjtcbiAgZm9udC1mYW1pbHk6ICRmb250LWhhbDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGdyYXktZmE7XG59XG5cbm1haW57XG4gIG1pbi1oZWlnaHQ6IDYxJTtcbn1cblxuYSB7XG4gIGNvbG9yOiAkcHJpbWFyeS1ibHVlMTtcbn1cblxuYTpob3ZlcntcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuYnV0dG9uOmhvdmVye1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbm1haW4gLnNlY3Rpb24tY29ycHMge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcbiAgICBtYXJnaW46IDYwcHggNCUgMCA0JTtcbiAgfVxufVxuXG4uc2VjdGlvbi1jb3JwcyB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcbiAgICBtYXJnaW46IDAgOS41JTtcbiAgfVxuXG4gIC5zZWN0aW9uLWNvbnRlbnQge1xuICAgIHBhZGRpbmc6IDE2cHggMjZweDtcblxuICAgIGgzIHtcbiAgICAgIGZvbnQtc2l6ZTogJHNpemUtbGFyZ2U7XG4gICAgfVxuICB9XG5cbiAgLndpZGdldC1maWxlcyB7XG4gICAgbWluLWhlaWdodDogNThweDtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuXG4gIC53aWRnZXQge1xuICAgIGJveC1zaGFkb3c6IDBweCAzcHggMTVweCAjMDAwMDAwMjk7XG5cbiAgICAud2lkZ2V0LWhlYWRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1ibHVlO1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIHBhZGRpbmctdG9wOiAxMHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgfVxuXG5cbiAgJi51c2VyLXNwYWNlLCAmLmFkbWluLXNwYWNlLCAuaW5mby1wYWdlIHtcbiAgICBtYXJnaW4tdG9wOiAyMHB4O1xuXG4gICAgaDEsIC5oYWwtdGl0bGUge1xuICAgICAgZm9udC1zaXplOiAkc2l6ZS14bDtcbiAgICAgIG1hcmdpbi10b3A6IDQwcHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIH1cbiAgfVxuXG4gICYucm93IHtcbiAgICBtYXJnaW4tdG9wOiA2MHB4O1xuXG4gICAgLmhlYWRlci1zZWN0aW9uIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIzcHg7XG5cbiAgICAgIGRpdi5jb2wtMSB7XG4gICAgICAgIC1tcy1mbGV4OiAwIDAgMSU7XG4gICAgICAgIGZsZXg6IDAgMCAxJTtcbiAgICAgICAgbWF4LXdpZHRoOiAxJTtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgIH1cblxuICAgICAgc2VjdGlvbi5mbGV4LTc0IHtcbiAgICAgICAgLW1zLWZsZXg6IDAgMCA3NCU7XG4gICAgICAgIGZsZXg6IDAgMCA3NCU7XG4gICAgICAgIG1heC13aWR0aDogNzQlO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uaGVhZGVyLXNlY3Rpb24gLmpvdXJuYWwsIC5oZWFkZXItc2VjdGlvbiAueWVhciB7XG4gIG1hcmdpbi1sZWZ0OiA1cHg7XG59XG5zZWN0aW9uLmZsZXgtNzQsICNwcmV2aWV3LWRvYyB7XG4gIGgye1xuICAgIGxpbmUtaGVpZ2h0OiAxLjY7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICYudGl0bGUtbGFuZyB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICAmOm5vdCgudGl0bGUtbGFuZyksICYuYWN0aXZlIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB9XG4gIH1cbiAgLmF1dGhvcnMsIC5zdHJ1Y3R1cmVze1xuICAgIEBleHRlbmQgJWJ0bi1wb3BvdmVyO1xuICB9XG59XG5cbmgxLCBoMiwgaDMsIGg0IHtcbiAgQGluY2x1ZGUgZm9udC1ib2xkKCk7XG59XG5cbmgyIHtcbiAgZm9udC1zaXplOiAkc2l6ZS14bDtcbn1cblxuaDQge1xuICBmb250LXNpemU6ICRzaXplLXJlZ3VsYXI7XG59XG5cblxuXG4vKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgIEZPT1RFUlxuKioqKioqKioqKioqKioqKioqKioqKi9cbmZvb3RlcntcbiAgYmFja2dyb3VuZC1jb2xvcjogJGRhcmtibHVlO1xuICBjb2xvcjogJHdoaXRlO1xuICBwYWRkaW5nLXRvcDogNTBweDtcbiAgbWFyZ2luLXRvcDogMTAwcHg7XG5cbiAgLmNvbC1zbS00LCAuY29sLW1kLTJ7XG4gICAgcGFkZGluZzowO1xuICB9XG4gIHB7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGZvbnQtc2l6ZTogJHNpemUtbGFyZ2U7XG4gIH1cbiAgdWx7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG4gIGxpe1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbGluZS1oZWlnaHQ6IDI7XG5cbiAgICAmOmxhc3QtY2hpbGR7XG4gICAgICBtYXJnaW4tYm90dG9tOiA1MHB4O1xuICAgIH1cbiAgICBhe1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICB9XG4gICAgYTpob3ZlciwgYTpmb2N1c3tcbiAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICB9XG4gIH1cbn1cblxuLm1haW50ZW5hbmNlLWFsZXJ0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y0NDMzNjtcbiAgY29sb3I6IGJsYWNrO1xuICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgZm9udC1zaXplOiAxNTAlO1xuICB6LWluZGV4OiAxMjAwO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMjAlO1xuICByaWdodDoyMCU7XG59XG4iLCIvKiFcbiAqIEJvb3RzdHJhcCB2NC42LjIgKGh0dHBzOi8vZ2V0Ym9vdHN0cmFwLmNvbS8pXG4gKiBDb3B5cmlnaHQgMjAxMS0yMDIyIFRoZSBCb290c3RyYXAgQXV0aG9yc1xuICogQ29weXJpZ2h0IDIwMTEtMjAyMiBUd2l0dGVyLCBJbmMuXG4gKiBMaWNlbnNlZCB1bmRlciBNSVQgKGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9ibG9iL21haW4vTElDRU5TRSlcbiAqL1xuXG5AaW1wb3J0IFwiZnVuY3Rpb25zXCI7XG5AaW1wb3J0IFwidmFyaWFibGVzXCI7XG5AaW1wb3J0IFwibWl4aW5zXCI7XG5AaW1wb3J0IFwicm9vdFwiO1xuQGltcG9ydCBcInJlYm9vdFwiO1xuQGltcG9ydCBcInR5cGVcIjtcbkBpbXBvcnQgXCJpbWFnZXNcIjtcbkBpbXBvcnQgXCJjb2RlXCI7XG5AaW1wb3J0IFwiZ3JpZFwiO1xuQGltcG9ydCBcInRhYmxlc1wiO1xuQGltcG9ydCBcImZvcm1zXCI7XG5AaW1wb3J0IFwiYnV0dG9uc1wiO1xuQGltcG9ydCBcInRyYW5zaXRpb25zXCI7XG5AaW1wb3J0IFwiZHJvcGRvd25cIjtcbkBpbXBvcnQgXCJidXR0b24tZ3JvdXBcIjtcbkBpbXBvcnQgXCJpbnB1dC1ncm91cFwiO1xuQGltcG9ydCBcImN1c3RvbS1mb3Jtc1wiO1xuQGltcG9ydCBcIm5hdlwiO1xuQGltcG9ydCBcIm5hdmJhclwiO1xuQGltcG9ydCBcImNhcmRcIjtcbkBpbXBvcnQgXCJicmVhZGNydW1iXCI7XG5AaW1wb3J0IFwicGFnaW5hdGlvblwiO1xuQGltcG9ydCBcImJhZGdlXCI7XG5AaW1wb3J0IFwianVtYm90cm9uXCI7XG5AaW1wb3J0IFwiYWxlcnRcIjtcbkBpbXBvcnQgXCJwcm9ncmVzc1wiO1xuQGltcG9ydCBcIm1lZGlhXCI7XG5AaW1wb3J0IFwibGlzdC1ncm91cFwiO1xuQGltcG9ydCBcImNsb3NlXCI7XG5AaW1wb3J0IFwidG9hc3RzXCI7XG5AaW1wb3J0IFwibW9kYWxcIjtcbkBpbXBvcnQgXCJ0b29sdGlwXCI7XG5AaW1wb3J0IFwicG9wb3ZlclwiO1xuQGltcG9ydCBcImNhcm91c2VsXCI7XG5AaW1wb3J0IFwic3Bpbm5lcnNcIjtcbkBpbXBvcnQgXCJ1dGlsaXRpZXNcIjtcbkBpbXBvcnQgXCJwcmludFwiO1xuIiwiOnJvb3Qge1xuICAvLyBDdXN0b20gdmFyaWFibGUgdmFsdWVzIG9ubHkgc3VwcG9ydCBTYXNzU2NyaXB0IGluc2lkZSBgI3t9YC5cbiAgQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJGNvbG9ycyB7XG4gICAgLS0jeyRjb2xvcn06ICN7JHZhbHVlfTtcbiAgfVxuXG4gIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAgIC0tI3skY29sb3J9OiAjeyR2YWx1ZX07XG4gIH1cblxuICBAZWFjaCAkYnAsICR2YWx1ZSBpbiAkZ3JpZC1icmVha3BvaW50cyB7XG4gICAgLS1icmVha3BvaW50LSN7JGJwfTogI3skdmFsdWV9O1xuICB9XG5cbiAgLy8gVXNlIGBpbnNwZWN0YCBmb3IgbGlzdHMgc28gdGhhdCBxdW90ZWQgaXRlbXMga2VlcCB0aGUgcXVvdGVzLlxuICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3Nhc3Mvc2Fzcy9pc3N1ZXMvMjM4MyNpc3N1ZWNvbW1lbnQtMzM2MzQ5MTcyXG4gIC0tZm9udC1mYW1pbHktc2Fucy1zZXJpZjogI3tpbnNwZWN0KCRmb250LWZhbWlseS1zYW5zLXNlcmlmKX07XG4gIC0tZm9udC1mYW1pbHktbW9ub3NwYWNlOiAje2luc3BlY3QoJGZvbnQtZmFtaWx5LW1vbm9zcGFjZSl9O1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50LCBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGUsIHByb3BlcnR5LW5vLXZlbmRvci1wcmVmaXhcblxuLy8gUmVib290XG4vL1xuLy8gTm9ybWFsaXphdGlvbiBvZiBIVE1MIGVsZW1lbnRzLCBtYW51YWxseSBmb3JrZWQgZnJvbSBOb3JtYWxpemUuY3NzIHRvIHJlbW92ZVxuLy8gc3R5bGVzIHRhcmdldGluZyBpcnJlbGV2YW50IGJyb3dzZXJzIHdoaWxlIGFwcGx5aW5nIG5ldyBzdHlsZXMuXG4vL1xuLy8gTm9ybWFsaXplIGlzIGxpY2Vuc2VkIE1JVC4gaHR0cHM6Ly9naXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzc1xuXG5cbi8vIERvY3VtZW50XG4vL1xuLy8gMS4gQ2hhbmdlIGZyb20gYGJveC1zaXppbmc6IGNvbnRlbnQtYm94YCBzbyB0aGF0IGB3aWR0aGAgaXMgbm90IGFmZmVjdGVkIGJ5IGBwYWRkaW5nYCBvciBgYm9yZGVyYC5cbi8vIDIuIENoYW5nZSB0aGUgZGVmYXVsdCBmb250IGZhbWlseSBpbiBhbGwgYnJvd3NlcnMuXG4vLyAzLiBDb3JyZWN0IHRoZSBsaW5lIGhlaWdodCBpbiBhbGwgYnJvd3NlcnMuXG4vLyA0LiBQcmV2ZW50IGFkanVzdG1lbnRzIG9mIGZvbnQgc2l6ZSBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2VzIGluIElFIG9uIFdpbmRvd3MgUGhvbmUgYW5kIGluIGlPUy5cbi8vIDUuIENoYW5nZSB0aGUgZGVmYXVsdCB0YXAgaGlnaGxpZ2h0IHRvIGJlIGNvbXBsZXRlbHkgdHJhbnNwYXJlbnQgaW4gaU9TLlxuXG4qLFxuKjo6YmVmb3JlLFxuKjo6YWZ0ZXIge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvLyAxXG59XG5cbmh0bWwge1xuICBmb250LWZhbWlseTogc2Fucy1zZXJpZjsgLy8gMlxuICBsaW5lLWhlaWdodDogMS4xNTsgLy8gM1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8vIDRcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKCRibGFjaywgMCk7IC8vIDVcbn1cblxuLy8gU2hpbSBmb3IgXCJuZXdcIiBIVE1MNSBzdHJ1Y3R1cmFsIGVsZW1lbnRzIHRvIGRpc3BsYXkgY29ycmVjdGx5IChJRTEwLCBvbGRlciBicm93c2Vycylcbi8vIFRPRE86IHJlbW92ZSBpbiB2NVxuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLWxpc3QtY29tbWEtbmV3bGluZS1hZnRlclxuYXJ0aWNsZSwgYXNpZGUsIGZpZ2NhcHRpb24sIGZpZ3VyZSwgZm9vdGVyLCBoZWFkZXIsIGhncm91cCwgbWFpbiwgbmF2LCBzZWN0aW9uIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8vIEJvZHlcbi8vXG4vLyAxLiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBhbGwgYnJvd3NlcnMuXG4vLyAyLiBBcyBhIGJlc3QgcHJhY3RpY2UsIGFwcGx5IGEgZGVmYXVsdCBgYmFja2dyb3VuZC1jb2xvcmAuXG4vLyAzLiBTZXQgYW4gZXhwbGljaXQgaW5pdGlhbCB0ZXh0LWFsaWduIHZhbHVlIHNvIHRoYXQgd2UgY2FuIGxhdGVyIHVzZVxuLy8gICAgdGhlIGBpbmhlcml0YCB2YWx1ZSBvbiB0aGluZ3MgbGlrZSBgPHRoPmAgZWxlbWVudHMuXG5cbmJvZHkge1xuICBtYXJnaW46IDA7IC8vIDFcbiAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1iYXNlO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGZvbnQtc2l6ZS1iYXNlKTtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1iYXNlO1xuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gIGNvbG9yOiAkYm9keS1jb2xvcjtcbiAgdGV4dC1hbGlnbjogbGVmdDsgLy8gM1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYm9keS1iZzsgLy8gMlxufVxuXG4vLyBGdXR1cmUtcHJvb2YgcnVsZTogaW4gYnJvd3NlcnMgdGhhdCBzdXBwb3J0IDpmb2N1cy12aXNpYmxlLCBzdXBwcmVzcyB0aGUgZm9jdXMgb3V0bGluZVxuLy8gb24gZWxlbWVudHMgdGhhdCBwcm9ncmFtbWF0aWNhbGx5IHJlY2VpdmUgZm9jdXMgYnV0IHdvdWxkbid0IG5vcm1hbGx5IHNob3cgYSB2aXNpYmxlXG4vLyBmb2N1cyBvdXRsaW5lLiBJbiBnZW5lcmFsLCB0aGlzIHdvdWxkIG1lYW4gdGhhdCB0aGUgb3V0bGluZSBpcyBvbmx5IGFwcGxpZWQgaWYgdGhlXG4vLyBpbnRlcmFjdGlvbiB0aGF0IGxlZCB0byB0aGUgZWxlbWVudCByZWNlaXZpbmcgcHJvZ3JhbW1hdGljIGZvY3VzIHdhcyBhIGtleWJvYXJkIGludGVyYWN0aW9uLFxuLy8gb3IgdGhlIGJyb3dzZXIgaGFzIHNvbWVob3cgZGV0ZXJtaW5lZCB0aGF0IHRoZSB1c2VyIGlzIHByaW1hcmlseSBhIGtleWJvYXJkIHVzZXIgYW5kL29yXG4vLyB3YW50cyBmb2N1cyBvdXRsaW5lcyB0byBhbHdheXMgYmUgcHJlc2VudGVkLlxuLy9cbi8vIFNlZSBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9DU1MvOmZvY3VzLXZpc2libGVcbi8vIGFuZCBodHRwczovL2RldmVsb3Blci5wYWNpZWxsb2dyb3VwLmNvbS9ibG9nLzIwMTgvMDMvZm9jdXMtdmlzaWJsZS1hbmQtYmFja3dhcmRzLWNvbXBhdGliaWxpdHkvXG5bdGFiaW5kZXg9XCItMVwiXTpmb2N1czpub3QoOmZvY3VzLXZpc2libGUpIHtcbiAgb3V0bGluZTogMCAhaW1wb3J0YW50O1xufVxuXG5cbi8vIENvbnRlbnQgZ3JvdXBpbmdcbi8vXG4vLyAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBGaXJlZm94LlxuLy8gMi4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZSBhbmQgSUUuXG5cbmhyIHtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7IC8vIDFcbiAgaGVpZ2h0OiAwOyAvLyAxXG4gIG92ZXJmbG93OiB2aXNpYmxlOyAvLyAyXG59XG5cblxuLy9cbi8vIFR5cG9ncmFwaHlcbi8vXG5cbi8vIFJlbW92ZSB0b3AgbWFyZ2lucyBmcm9tIGhlYWRpbmdzXG4vL1xuLy8gQnkgZGVmYXVsdCwgYDxoMT5gLWA8aDY+YCBhbGwgcmVjZWl2ZSB0b3AgYW5kIGJvdHRvbSBtYXJnaW5zLiBXZSBudWtlIHRoZSB0b3Bcbi8vIG1hcmdpbiBmb3IgZWFzaWVyIGNvbnRyb2wgd2l0aGluIHR5cGUgc2NhbGVzIGFzIGl0IGF2b2lkcyBtYXJnaW4gY29sbGFwc2luZy5cbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1saXN0LWNvbW1hLW5ld2xpbmUtYWZ0ZXJcbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAkaGVhZGluZ3MtbWFyZ2luLWJvdHRvbTtcbn1cblxuLy8gUmVzZXQgbWFyZ2lucyBvbiBwYXJhZ3JhcGhzXG4vL1xuLy8gU2ltaWxhcmx5LCB0aGUgdG9wIG1hcmdpbiBvbiBgPHA+YHMgZ2V0IHJlc2V0LiBIb3dldmVyLCB3ZSBhbHNvIHJlc2V0IHRoZVxuLy8gYm90dG9tIG1hcmdpbiB0byB1c2UgYHJlbWAgdW5pdHMgaW5zdGVhZCBvZiBgZW1gLlxucCB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206ICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTtcbn1cblxuLy8gQWJicmV2aWF0aW9uc1xuLy9cbi8vIDEuIER1cGxpY2F0ZSBiZWhhdmlvciB0byB0aGUgZGF0YS0qIGF0dHJpYnV0ZSBmb3Igb3VyIHRvb2x0aXAgcGx1Z2luXG4vLyAyLiBBZGQgdGhlIGNvcnJlY3QgdGV4dCBkZWNvcmF0aW9uIGluIENocm9tZSwgRWRnZSwgSUUsIE9wZXJhLCBhbmQgU2FmYXJpLlxuLy8gMy4gQWRkIGV4cGxpY2l0IGN1cnNvciB0byBpbmRpY2F0ZSBjaGFuZ2VkIGJlaGF2aW9yLlxuLy8gNC4gUmVtb3ZlIHRoZSBib3R0b20gYm9yZGVyIGluIEZpcmVmb3ggMzktLlxuLy8gNS4gUHJldmVudCB0aGUgdGV4dC1kZWNvcmF0aW9uIHRvIGJlIHNraXBwZWQuXG5cbmFiYnJbdGl0bGVdLFxuYWJicltkYXRhLW9yaWdpbmFsLXRpdGxlXSB7IC8vIDFcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IC8vIDJcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkOyAvLyAyXG4gIGN1cnNvcjogaGVscDsgLy8gM1xuICBib3JkZXItYm90dG9tOiAwOyAvLyA0XG4gIHRleHQtZGVjb3JhdGlvbi1za2lwLWluazogbm9uZTsgLy8gNVxufVxuXG5hZGRyZXNzIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbn1cblxub2wsXG51bCxcbmRsIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cblxub2wgb2wsXG51bCB1bCxcbm9sIHVsLFxudWwgb2wge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG5kdCB7XG4gIGZvbnQtd2VpZ2h0OiAkZHQtZm9udC13ZWlnaHQ7XG59XG5cbmRkIHtcbiAgbWFyZ2luLWJvdHRvbTogLjVyZW07XG4gIG1hcmdpbi1sZWZ0OiAwOyAvLyBVbmRvIGJyb3dzZXIgZGVmYXVsdFxufVxuXG5ibG9ja3F1b3RlIHtcbiAgbWFyZ2luOiAwIDAgMXJlbTtcbn1cblxuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZGVyOyAvLyBBZGQgdGhlIGNvcnJlY3QgZm9udCB3ZWlnaHQgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpXG59XG5cbnNtYWxsIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKDgwJSk7IC8vIEFkZCB0aGUgY29ycmVjdCBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzXG59XG5cbi8vXG4vLyBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBlbGVtZW50cyBmcm9tIGFmZmVjdGluZyB0aGUgbGluZSBoZWlnaHQgaW5cbi8vIGFsbCBicm93c2Vycy5cbi8vXG5cbnN1YixcbnN1cCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKDc1JSk7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbnN1YiB7IGJvdHRvbTogLS4yNWVtOyB9XG5zdXAgeyB0b3A6IC0uNWVtOyB9XG5cblxuLy9cbi8vIExpbmtzXG4vL1xuXG5hIHtcbiAgY29sb3I6ICRsaW5rLWNvbG9yO1xuICB0ZXh0LWRlY29yYXRpb246ICRsaW5rLWRlY29yYXRpb247XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyAvLyBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBvbiBhY3RpdmUgbGlua3MgaW4gSUUgMTAuXG5cbiAgQGluY2x1ZGUgaG92ZXIoKSB7XG4gICAgY29sb3I6ICRsaW5rLWhvdmVyLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogJGxpbmstaG92ZXItZGVjb3JhdGlvbjtcbiAgfVxufVxuXG4vLyBBbmQgdW5kbyB0aGVzZSBzdHlsZXMgZm9yIHBsYWNlaG9sZGVyIGxpbmtzL25hbWVkIGFuY2hvcnMgKHdpdGhvdXQgaHJlZikuXG4vLyBJdCB3b3VsZCBiZSBtb3JlIHN0cmFpZ2h0Zm9yd2FyZCB0byBqdXN0IHVzZSBhW2hyZWZdIGluIHByZXZpb3VzIGJsb2NrLCBidXQgdGhhdFxuLy8gY2F1c2VzIHNwZWNpZmljaXR5IGlzc3VlcyBpbiBtYW55IG90aGVyIHN0eWxlcyB0aGF0IGFyZSB0b28gY29tcGxleCB0byBmaXguXG4vLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xOTQwMlxuXG5hOm5vdChbaHJlZl0pOm5vdChbY2xhc3NdKSB7XG4gIGNvbG9yOiBpbmhlcml0O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgQGluY2x1ZGUgaG92ZXIoKSB7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG59XG5cblxuLy9cbi8vIENvZGVcbi8vXG5cbnByZSxcbmNvZGUsXG5rYmQsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1tb25vc3BhY2U7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgxZW0pOyAvLyBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG59XG5cbnByZSB7XG4gIC8vIFJlbW92ZSBicm93c2VyIGRlZmF1bHQgdG9wIG1hcmdpblxuICBtYXJnaW4tdG9wOiAwO1xuICAvLyBSZXNldCBicm93c2VyIGRlZmF1bHQgb2YgYDFlbWAgdG8gdXNlIGByZW1gc1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAvLyBEb24ndCBhbGxvdyBjb250ZW50IHRvIGJyZWFrIG91dHNpZGVcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIC8vIERpc2FibGUgYXV0by1oaWRpbmcgc2Nyb2xsYmFyIGluIElFICYgbGVnYWN5IEVkZ2UgdG8gYXZvaWQgb3ZlcmxhcCxcbiAgLy8gbWFraW5nIGl0IGltcG9zc2libGUgdG8gaW50ZXJhY3Qgd2l0aCB0aGUgY29udGVudFxuICAtbXMtb3ZlcmZsb3ctc3R5bGU6IHNjcm9sbGJhcjtcbn1cblxuXG4vL1xuLy8gRmlndXJlc1xuLy9cblxuZmlndXJlIHtcbiAgLy8gQXBwbHkgYSBjb25zaXN0ZW50IG1hcmdpbiBzdHJhdGVneSAobWF0Y2hlcyBvdXIgdHlwZSBzdHlsZXMpLlxuICBtYXJnaW46IDAgMCAxcmVtO1xufVxuXG5cbi8vXG4vLyBJbWFnZXMgYW5kIGNvbnRlbnRcbi8vXG5cbmltZyB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGJvcmRlci1zdHlsZTogbm9uZTsgLy8gUmVtb3ZlIHRoZSBib3JkZXIgb24gaW1hZ2VzIGluc2lkZSBsaW5rcyBpbiBJRSAxMC0uXG59XG5cbnN2ZyB7XG4gIC8vIFdvcmthcm91bmQgZm9yIHRoZSBTVkcgb3ZlcmZsb3cgYnVnIGluIElFMTAvMTEgaXMgc3RpbGwgcmVxdWlyZWQuXG4gIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI2ODc4XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cblxuLy9cbi8vIFRhYmxlc1xuLy9cblxudGFibGUge1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlOyAvLyBQcmV2ZW50IGRvdWJsZSBib3JkZXJzXG59XG5cbmNhcHRpb24ge1xuICBwYWRkaW5nLXRvcDogJHRhYmxlLWNlbGwtcGFkZGluZztcbiAgcGFkZGluZy1ib3R0b206ICR0YWJsZS1jZWxsLXBhZGRpbmc7XG4gIGNvbG9yOiAkdGFibGUtY2FwdGlvbi1jb2xvcjtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgY2FwdGlvbi1zaWRlOiBib3R0b207XG59XG5cbi8vIDEuIFJlbW92ZXMgZm9udC13ZWlnaHQgYm9sZCBieSBpbmhlcml0aW5nXG4vLyAyLiBNYXRjaGVzIGRlZmF1bHQgYDx0ZD5gIGFsaWdubWVudCBieSBpbmhlcml0aW5nIGB0ZXh0LWFsaWduYC5cbi8vIDMuIEZpeCBhbGlnbm1lbnQgZm9yIFNhZmFyaVxuXG50aCB7XG4gIGZvbnQtd2VpZ2h0OiAkdGFibGUtdGgtZm9udC13ZWlnaHQ7IC8vIDFcbiAgdGV4dC1hbGlnbjogaW5oZXJpdDsgLy8gMlxuICB0ZXh0LWFsaWduOiAtd2Via2l0LW1hdGNoLXBhcmVudDsgLy8gM1xufVxuXG5cbi8vXG4vLyBGb3Jtc1xuLy9cblxubGFiZWwge1xuICAvLyBBbGxvdyBsYWJlbHMgdG8gdXNlIGBtYXJnaW5gIGZvciBzcGFjaW5nLlxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1ib3R0b206ICRsYWJlbC1tYXJnaW4tYm90dG9tO1xufVxuXG4vLyBSZW1vdmUgdGhlIGRlZmF1bHQgYGJvcmRlci1yYWRpdXNgIHRoYXQgbWFjT1MgQ2hyb21lIGFkZHMuXG4vL1xuLy8gRGV0YWlscyBhdCBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI0MDkzXG5idXR0b24ge1xuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG5cbi8vIEV4cGxpY2l0bHkgcmVtb3ZlIGZvY3VzIG91dGxpbmUgaW4gQ2hyb21pdW0gd2hlbiBpdCBzaG91bGRuJ3QgYmVcbi8vIHZpc2libGUgKGUuZy4gYXMgcmVzdWx0IG9mIG1vdXNlIGNsaWNrIG9yIHRvdWNoIHRhcCkuIEl0IGFscmVhZHlcbi8vIHNob3VsZCBiZSBkb2luZyB0aGlzIGF1dG9tYXRpY2FsbHksIGJ1dCBzZWVtcyB0byBjdXJyZW50bHkgYmVcbi8vIGNvbmZ1c2VkIGFuZCBhcHBsaWVzIGl0cyB2ZXJ5IHZpc2libGUgdHdvLXRvbmUgb3V0bGluZSBhbnl3YXkuXG5cbmJ1dHRvbjpmb2N1czpub3QoOmZvY3VzLXZpc2libGUpIHtcbiAgb3V0bGluZTogMDtcbn1cblxuaW5wdXQsXG5idXR0b24sXG5zZWxlY3QsXG5vcHRncm91cCxcbnRleHRhcmVhIHtcbiAgbWFyZ2luOiAwOyAvLyBSZW1vdmUgdGhlIG1hcmdpbiBpbiBGaXJlZm94IGFuZCBTYWZhcmlcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZShpbmhlcml0KTtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG59XG5cbmJ1dHRvbixcbmlucHV0IHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7IC8vIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2Vcbn1cblxuYnV0dG9uLFxuc2VsZWN0IHtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7IC8vIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRmlyZWZveFxufVxuXG4vLyBTZXQgdGhlIGN1cnNvciBmb3Igbm9uLWA8YnV0dG9uPmAgYnV0dG9uc1xuLy9cbi8vIERldGFpbHMgYXQgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMzA1NjJcbltyb2xlPVwiYnV0dG9uXCJdIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4vLyBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHdvcmQtd3JhcCBpbiBTYWZhcmkuXG4vL1xuLy8gRGV0YWlscyBhdCBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI0OTkwXG5zZWxlY3Qge1xuICB3b3JkLXdyYXA6IG5vcm1hbDtcbn1cblxuXG4vLyAxLiBQcmV2ZW50IGEgV2ViS2l0IGJ1ZyB3aGVyZSAoMikgZGVzdHJveXMgbmF0aXZlIGBhdWRpb2AgYW5kIGB2aWRlb2Bcbi8vICAgIGNvbnRyb2xzIGluIEFuZHJvaWQgNC5cbi8vIDIuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG5idXR0b24sXG5bdHlwZT1cImJ1dHRvblwiXSwgLy8gMVxuW3R5cGU9XCJyZXNldFwiXSxcblt0eXBlPVwic3VibWl0XCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8vIDJcbn1cblxuLy8gT3BpbmlvbmF0ZWQ6IGFkZCBcImhhbmRcIiBjdXJzb3IgdG8gbm9uLWRpc2FibGVkIGJ1dHRvbiBlbGVtZW50cy5cbkBpZiAkZW5hYmxlLXBvaW50ZXItY3Vyc29yLWZvci1idXR0b25zIHtcbiAgYnV0dG9uLFxuICBbdHlwZT1cImJ1dHRvblwiXSxcbiAgW3R5cGU9XCJyZXNldFwiXSxcbiAgW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgICY6bm90KDpkaXNhYmxlZCkge1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cbiAgfVxufVxuXG4vLyBSZW1vdmUgaW5uZXIgYm9yZGVyIGFuZCBwYWRkaW5nIGZyb20gRmlyZWZveCwgYnV0IGRvbid0IHJlc3RvcmUgdGhlIG91dGxpbmUgbGlrZSBOb3JtYWxpemUuXG5idXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cImJ1dHRvblwiXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwicmVzZXRcIl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cInN1Ym1pdFwiXTo6LW1vei1mb2N1cy1pbm5lciB7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcbn1cblxuaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLy8gMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gSUUgMTAtXG4gIHBhZGRpbmc6IDA7IC8vIDIuIFJlbW92ZSB0aGUgcGFkZGluZyBpbiBJRSAxMC1cbn1cblxuXG50ZXh0YXJlYSB7XG4gIG92ZXJmbG93OiBhdXRvOyAvLyBSZW1vdmUgdGhlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFLlxuICAvLyBUZXh0YXJlYXMgc2hvdWxkIHJlYWxseSBvbmx5IHJlc2l6ZSB2ZXJ0aWNhbGx5IHNvIHRoZXkgZG9uJ3QgYnJlYWsgdGhlaXIgKGhvcml6b250YWwpIGNvbnRhaW5lcnMuXG4gIHJlc2l6ZTogdmVydGljYWw7XG59XG5cbmZpZWxkc2V0IHtcbiAgLy8gQnJvd3NlcnMgc2V0IGEgZGVmYXVsdCBgbWluLXdpZHRoOiBtaW4tY29udGVudDtgIG9uIGZpZWxkc2V0cyxcbiAgLy8gdW5saWtlIGUuZy4gYDxkaXY+YHMsIHdoaWNoIGhhdmUgYG1pbi13aWR0aDogMDtgIGJ5IGRlZmF1bHQuXG4gIC8vIFNvIHdlIHJlc2V0IHRoYXQgdG8gZW5zdXJlIGZpZWxkc2V0cyBiZWhhdmUgbW9yZSBsaWtlIGEgc3RhbmRhcmQgYmxvY2sgZWxlbWVudC5cbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTIzNTlcbiAgLy8gYW5kIGh0dHBzOi8vaHRtbC5zcGVjLndoYXR3Zy5vcmcvbXVsdGlwYWdlLyN0aGUtZmllbGRzZXQtYW5kLWxlZ2VuZC1lbGVtZW50c1xuICBtaW4td2lkdGg6IDA7XG4gIC8vIFJlc2V0IHRoZSBkZWZhdWx0IG91dGxpbmUgYmVoYXZpb3Igb2YgZmllbGRzZXRzIHNvIHRoZXkgZG9uJ3QgYWZmZWN0IHBhZ2UgbGF5b3V0LlxuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGJvcmRlcjogMDtcbn1cblxuLy8gMS4gQ29ycmVjdCB0aGUgdGV4dCB3cmFwcGluZyBpbiBFZGdlIGFuZCBJRS5cbi8vIDIuIENvcnJlY3QgdGhlIGNvbG9yIGluaGVyaXRhbmNlIGZyb20gYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBJRS5cbmxlZ2VuZCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlOyAvLyAxXG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbi1ib3R0b206IC41cmVtO1xuICBAaW5jbHVkZSBmb250LXNpemUoMS41cmVtKTtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIGNvbG9yOiBpbmhlcml0OyAvLyAyXG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7IC8vIDFcbn1cblxucHJvZ3Jlc3Mge1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IC8vIEFkZCB0aGUgY29ycmVjdCB2ZXJ0aWNhbCBhbGlnbm1lbnQgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG59XG5cbi8vIENvcnJlY3QgdGhlIGN1cnNvciBzdHlsZSBvZiBpbmNyZW1lbnQgYW5kIGRlY3JlbWVudCBidXR0b25zIGluIENocm9tZS5cblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cblt0eXBlPVwic2VhcmNoXCJdIHtcbiAgLy8gVGhpcyBvdmVycmlkZXMgdGhlIGV4dHJhIHJvdW5kZWQgY29ybmVycyBvbiBzZWFyY2ggaW5wdXRzIGluIGlPUyBzbyB0aGF0IG91clxuICAvLyBgLmZvcm0tY29udHJvbGAgY2xhc3MgY2FuIHByb3Blcmx5IHN0eWxlIHRoZW0uIE5vdGUgdGhhdCB0aGlzIGNhbm5vdCBzaW1wbHlcbiAgLy8gYmUgYWRkZWQgdG8gYC5mb3JtLWNvbnRyb2xgIGFzIGl0J3Mgbm90IHNwZWNpZmljIGVub3VnaC4gRm9yIGRldGFpbHMsIHNlZVxuICAvLyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzExNTg2LlxuICBvdXRsaW5lLW9mZnNldDogLTJweDsgLy8gMi4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLy9cbi8vIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBtYWNPUy5cbi8vXG5cblt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4vL1xuLy8gMS4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbi8vIDIuIENoYW5nZSBmb250IHByb3BlcnRpZXMgdG8gYGluaGVyaXRgIGluIFNhZmFyaS5cbi8vXG5cbjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICBmb250OiBpbmhlcml0OyAvLyAyXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvLyAxXG59XG5cbi8vXG4vLyBDb3JyZWN0IGVsZW1lbnQgZGlzcGxheXNcbi8vXG5cbm91dHB1dCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGxpc3QtaXRlbTsgLy8gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gYWxsIGJyb3dzZXJzXG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxudGVtcGxhdGUge1xuICBkaXNwbGF5OiBub25lOyAvLyBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRVxufVxuXG4vLyBBbHdheXMgaGlkZSBhbiBlbGVtZW50IHdpdGggdGhlIGBoaWRkZW5gIEhUTUwgYXR0cmlidXRlIChmcm9tIFB1cmVDU1MpLlxuLy8gTmVlZGVkIGZvciBwcm9wZXIgZGlzcGxheSBpbiBJRSAxMC0uXG5baGlkZGVuXSB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cbiIsIi8vIFZhcmlhYmxlc1xuLy9cbi8vIFZhcmlhYmxlcyBzaG91bGQgZm9sbG93IHRoZSBgJGNvbXBvbmVudC1zdGF0ZS1wcm9wZXJ0eS1zaXplYCBmb3JtdWxhIGZvclxuLy8gY29uc2lzdGVudCBuYW1pbmcuIEV4OiAkbmF2LWxpbmstZGlzYWJsZWQtY29sb3IgYW5kICRtb2RhbC1jb250ZW50LWJveC1zaGFkb3cteHMuXG5cbi8vIENvbG9yIHN5c3RlbVxuXG4kd2hpdGU6ICAgICNmZmYgIWRlZmF1bHQ7XG4kZ3JheS0xMDA6ICNmOGY5ZmEgIWRlZmF1bHQ7XG4kZ3JheS0yMDA6ICNlOWVjZWYgIWRlZmF1bHQ7XG4kZ3JheS0zMDA6ICNkZWUyZTYgIWRlZmF1bHQ7XG4kZ3JheS00MDA6ICNjZWQ0ZGEgIWRlZmF1bHQ7XG4kZ3JheS01MDA6ICNhZGI1YmQgIWRlZmF1bHQ7XG4kZ3JheS02MDA6ICM2Yzc1N2QgIWRlZmF1bHQ7XG4kZ3JheS03MDA6ICM0OTUwNTcgIWRlZmF1bHQ7XG4kZ3JheS04MDA6ICMzNDNhNDAgIWRlZmF1bHQ7XG4kZ3JheS05MDA6ICMyMTI1MjkgIWRlZmF1bHQ7XG4kYmxhY2s6ICAgICMwMDAgIWRlZmF1bHQ7XG5cbiRncmF5czogKCkgIWRlZmF1bHQ7XG4kZ3JheXM6IG1hcC1tZXJnZShcbiAgKFxuICAgIFwiMTAwXCI6ICRncmF5LTEwMCxcbiAgICBcIjIwMFwiOiAkZ3JheS0yMDAsXG4gICAgXCIzMDBcIjogJGdyYXktMzAwLFxuICAgIFwiNDAwXCI6ICRncmF5LTQwMCxcbiAgICBcIjUwMFwiOiAkZ3JheS01MDAsXG4gICAgXCI2MDBcIjogJGdyYXktNjAwLFxuICAgIFwiNzAwXCI6ICRncmF5LTcwMCxcbiAgICBcIjgwMFwiOiAkZ3JheS04MDAsXG4gICAgXCI5MDBcIjogJGdyYXktOTAwXG4gICksXG4gICRncmF5c1xuKTtcblxuJGJsdWU6ICAgICMwMDdiZmYgIWRlZmF1bHQ7XG4kaW5kaWdvOiAgIzY2MTBmMiAhZGVmYXVsdDtcbiRwdXJwbGU6ICAjNmY0MmMxICFkZWZhdWx0O1xuJHBpbms6ICAgICNlODNlOGMgIWRlZmF1bHQ7XG4kcmVkOiAgICAgI2RjMzU0NSAhZGVmYXVsdDtcbiRvcmFuZ2U6ICAjZmQ3ZTE0ICFkZWZhdWx0O1xuJHllbGxvdzogICNmZmMxMDcgIWRlZmF1bHQ7XG4kZ3JlZW46ICAgIzI4YTc0NSAhZGVmYXVsdDtcbiR0ZWFsOiAgICAjMjBjOTk3ICFkZWZhdWx0O1xuJGN5YW46ICAgICMxN2EyYjggIWRlZmF1bHQ7XG5cbiRjb2xvcnM6ICgpICFkZWZhdWx0O1xuJGNvbG9yczogbWFwLW1lcmdlKFxuICAoXG4gICAgXCJibHVlXCI6ICAgICAgICRibHVlLFxuICAgIFwiaW5kaWdvXCI6ICAgICAkaW5kaWdvLFxuICAgIFwicHVycGxlXCI6ICAgICAkcHVycGxlLFxuICAgIFwicGlua1wiOiAgICAgICAkcGluayxcbiAgICBcInJlZFwiOiAgICAgICAgJHJlZCxcbiAgICBcIm9yYW5nZVwiOiAgICAgJG9yYW5nZSxcbiAgICBcInllbGxvd1wiOiAgICAgJHllbGxvdyxcbiAgICBcImdyZWVuXCI6ICAgICAgJGdyZWVuLFxuICAgIFwidGVhbFwiOiAgICAgICAkdGVhbCxcbiAgICBcImN5YW5cIjogICAgICAgJGN5YW4sXG4gICAgXCJ3aGl0ZVwiOiAgICAgICR3aGl0ZSxcbiAgICBcImdyYXlcIjogICAgICAgJGdyYXktNjAwLFxuICAgIFwiZ3JheS1kYXJrXCI6ICAkZ3JheS04MDBcbiAgKSxcbiAgJGNvbG9yc1xuKTtcblxuJHByaW1hcnk6ICAgICAgICRibHVlICFkZWZhdWx0O1xuJHNlY29uZGFyeTogICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRzdWNjZXNzOiAgICAgICAkZ3JlZW4gIWRlZmF1bHQ7XG4kaW5mbzogICAgICAgICAgJGN5YW4gIWRlZmF1bHQ7XG4kd2FybmluZzogICAgICAgJHllbGxvdyAhZGVmYXVsdDtcbiRkYW5nZXI6ICAgICAgICAkcmVkICFkZWZhdWx0O1xuJGxpZ2h0OiAgICAgICAgICRncmF5LTEwMCAhZGVmYXVsdDtcbiRkYXJrOiAgICAgICAgICAkZ3JheS04MDAgIWRlZmF1bHQ7XG5cbiR0aGVtZS1jb2xvcnM6ICgpICFkZWZhdWx0O1xuJHRoZW1lLWNvbG9yczogbWFwLW1lcmdlKFxuICAoXG4gICAgXCJwcmltYXJ5XCI6ICAgICRwcmltYXJ5LFxuICAgIFwic2Vjb25kYXJ5XCI6ICAkc2Vjb25kYXJ5LFxuICAgIFwic3VjY2Vzc1wiOiAgICAkc3VjY2VzcyxcbiAgICBcImluZm9cIjogICAgICAgJGluZm8sXG4gICAgXCJ3YXJuaW5nXCI6ICAgICR3YXJuaW5nLFxuICAgIFwiZGFuZ2VyXCI6ICAgICAkZGFuZ2VyLFxuICAgIFwibGlnaHRcIjogICAgICAkbGlnaHQsXG4gICAgXCJkYXJrXCI6ICAgICAgICRkYXJrXG4gICksXG4gICR0aGVtZS1jb2xvcnNcbik7XG5cbi8vIFNldCBhIHNwZWNpZmljIGp1bXAgcG9pbnQgZm9yIHJlcXVlc3RpbmcgY29sb3IganVtcHNcbiR0aGVtZS1jb2xvci1pbnRlcnZhbDogICAgICA4JSAhZGVmYXVsdDtcblxuLy8gVGhlIHlpcSBsaWdodG5lc3MgdmFsdWUgdGhhdCBkZXRlcm1pbmVzIHdoZW4gdGhlIGxpZ2h0bmVzcyBvZiBjb2xvciBjaGFuZ2VzIGZyb20gXCJkYXJrXCIgdG8gXCJsaWdodFwiLiBBY2NlcHRhYmxlIHZhbHVlcyBhcmUgYmV0d2VlbiAwIGFuZCAyNTUuXG4keWlxLWNvbnRyYXN0ZWQtdGhyZXNob2xkOiAgMTUwICFkZWZhdWx0O1xuXG4vLyBDdXN0b21pemUgdGhlIGxpZ2h0IGFuZCBkYXJrIHRleHQgY29sb3JzIGZvciB1c2UgaW4gb3VyIFlJUSBjb2xvciBjb250cmFzdCBmdW5jdGlvbi5cbiR5aXEtdGV4dC1kYXJrOiAgICAgICAgICAgICAkZ3JheS05MDAgIWRlZmF1bHQ7XG4keWlxLXRleHQtbGlnaHQ6ICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuXG4vLyBDaGFyYWN0ZXJzIHdoaWNoIGFyZSBlc2NhcGVkIGJ5IHRoZSBlc2NhcGUtc3ZnIGZ1bmN0aW9uXG4kZXNjYXBlZC1jaGFyYWN0ZXJzOiAoXG4gIChcIjxcIiwgXCIlM2NcIiksXG4gIChcIj5cIiwgXCIlM2VcIiksXG4gIChcIiNcIiwgXCIlMjNcIiksXG4gIChcIihcIiwgXCIlMjhcIiksXG4gIChcIilcIiwgXCIlMjlcIiksXG4pICFkZWZhdWx0O1xuXG5cbi8vIE9wdGlvbnNcbi8vXG4vLyBRdWlja2x5IG1vZGlmeSBnbG9iYWwgc3R5bGluZyBieSBlbmFibGluZyBvciBkaXNhYmxpbmcgb3B0aW9uYWwgZmVhdHVyZXMuXG5cbiRlbmFibGUtY2FyZXQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1yb3VuZGVkOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXNoYWRvd3M6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmFsc2UgIWRlZmF1bHQ7XG4kZW5hYmxlLWdyYWRpZW50czogICAgICAgICAgICAgICAgICAgICAgICAgICAgZmFsc2UgIWRlZmF1bHQ7XG4kZW5hYmxlLXRyYW5zaXRpb25zOiAgICAgICAgICAgICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtcHJlZmVycy1yZWR1Y2VkLW1vdGlvbi1tZWRpYS1xdWVyeTogICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1ob3Zlci1tZWRpYS1xdWVyeTogICAgICAgICAgICAgICAgICAgIGZhbHNlICFkZWZhdWx0OyAvLyBEZXByZWNhdGVkLCBubyBsb25nZXIgYWZmZWN0cyBhbnkgY29tcGlsZWQgQ1NTXG4kZW5hYmxlLWdyaWQtY2xhc3NlczogICAgICAgICAgICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtcG9pbnRlci1jdXJzb3ItZm9yLWJ1dHRvbnM6ICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1wcmludC1zdHlsZXM6ICAgICAgICAgICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplczogICAgICAgICAgICAgICAgZmFsc2UgIWRlZmF1bHQ7XG4kZW5hYmxlLXZhbGlkYXRpb24taWNvbnM6ICAgICAgICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtZGVwcmVjYXRpb24tbWVzc2FnZXM6ICAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuXG5cbi8vIFNwYWNpbmdcbi8vXG4vLyBDb250cm9sIHRoZSBkZWZhdWx0IHN0eWxpbmcgb2YgbW9zdCBCb290c3RyYXAgZWxlbWVudHMgYnkgbW9kaWZ5aW5nIHRoZXNlXG4vLyB2YXJpYWJsZXMuIE1vc3RseSBmb2N1c2VkIG9uIHNwYWNpbmcuXG4vLyBZb3UgY2FuIGFkZCBtb3JlIGVudHJpZXMgdG8gdGhlICRzcGFjZXJzIG1hcCwgc2hvdWxkIHlvdSBuZWVkIG1vcmUgdmFyaWF0aW9uLlxuXG4kc3BhY2VyOiAxcmVtICFkZWZhdWx0O1xuJHNwYWNlcnM6ICgpICFkZWZhdWx0O1xuJHNwYWNlcnM6IG1hcC1tZXJnZShcbiAgKFxuICAgIDA6IDAsXG4gICAgMTogKCRzcGFjZXIgKiAuMjUpLFxuICAgIDI6ICgkc3BhY2VyICogLjUpLFxuICAgIDM6ICRzcGFjZXIsXG4gICAgNDogKCRzcGFjZXIgKiAxLjUpLFxuICAgIDU6ICgkc3BhY2VyICogMylcbiAgKSxcbiAgJHNwYWNlcnNcbik7XG5cbi8vIFRoaXMgdmFyaWFibGUgYWZmZWN0cyB0aGUgYC5oLSpgIGFuZCBgLnctKmAgY2xhc3Nlcy5cbiRzaXplczogKCkgIWRlZmF1bHQ7XG4kc2l6ZXM6IG1hcC1tZXJnZShcbiAgKFxuICAgIDI1OiAyNSUsXG4gICAgNTA6IDUwJSxcbiAgICA3NTogNzUlLFxuICAgIDEwMDogMTAwJSxcbiAgICBhdXRvOiBhdXRvXG4gICksXG4gICRzaXplc1xuKTtcblxuXG4vLyBCb2R5XG4vL1xuLy8gU2V0dGluZ3MgZm9yIHRoZSBgPGJvZHk+YCBlbGVtZW50LlxuXG4kYm9keS1iZzogICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGJvZHktY29sb3I6ICAgICAgICAgICAgICAgICRncmF5LTkwMCAhZGVmYXVsdDtcblxuXG4vLyBMaW5rc1xuLy9cbi8vIFN0eWxlIGFuY2hvciBlbGVtZW50cy5cblxuJGxpbmstY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhlbWUtY29sb3IoXCJwcmltYXJ5XCIpICFkZWZhdWx0O1xuJGxpbmstZGVjb3JhdGlvbjogICAgICAgICAgICAgICAgICAgICAgICAgbm9uZSAhZGVmYXVsdDtcbiRsaW5rLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgIGRhcmtlbigkbGluay1jb2xvciwgMTUlKSAhZGVmYXVsdDtcbiRsaW5rLWhvdmVyLWRlY29yYXRpb246ICAgICAgICAgICAgICAgICAgIHVuZGVybGluZSAhZGVmYXVsdDtcbi8vIERhcmtlbiBwZXJjZW50YWdlIGZvciBsaW5rcyB3aXRoIGAudGV4dC0qYCBjbGFzcyAoZS5nLiBgLnRleHQtc3VjY2Vzc2ApXG4kZW1waGFzaXplZC1saW5rLWhvdmVyLWRhcmtlbi1wZXJjZW50YWdlOiAxNSUgIWRlZmF1bHQ7XG5cbi8vIFBhcmFncmFwaHNcbi8vXG4vLyBTdHlsZSBwIGVsZW1lbnQuXG5cbiRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTogICAxcmVtICFkZWZhdWx0O1xuXG5cbi8vIEdyaWQgYnJlYWtwb2ludHNcbi8vXG4vLyBEZWZpbmUgdGhlIG1pbmltdW0gZGltZW5zaW9ucyBhdCB3aGljaCB5b3VyIGxheW91dCB3aWxsIGNoYW5nZSxcbi8vIGFkYXB0aW5nIHRvIGRpZmZlcmVudCBzY3JlZW4gc2l6ZXMsIGZvciB1c2UgaW4gbWVkaWEgcXVlcmllcy5cblxuJGdyaWQtYnJlYWtwb2ludHM6IChcbiAgeHM6IDAsXG4gIHNtOiA1NzZweCxcbiAgbWQ6IDc2OHB4LFxuICBsZzogOTkycHgsXG4gIHhsOiAxMjAwcHhcbikgIWRlZmF1bHQ7XG5cbkBpbmNsdWRlIF9hc3NlcnQtYXNjZW5kaW5nKCRncmlkLWJyZWFrcG9pbnRzLCBcIiRncmlkLWJyZWFrcG9pbnRzXCIpO1xuQGluY2x1ZGUgX2Fzc2VydC1zdGFydHMtYXQtemVybygkZ3JpZC1icmVha3BvaW50cywgXCIkZ3JpZC1icmVha3BvaW50c1wiKTtcblxuXG4vLyBHcmlkIGNvbnRhaW5lcnNcbi8vXG4vLyBEZWZpbmUgdGhlIG1heGltdW0gd2lkdGggb2YgYC5jb250YWluZXJgIGZvciBkaWZmZXJlbnQgc2NyZWVuIHNpemVzLlxuXG4kY29udGFpbmVyLW1heC13aWR0aHM6IChcbiAgc206IDU0MHB4LFxuICBtZDogNzIwcHgsXG4gIGxnOiA5NjBweCxcbiAgeGw6IDExNDBweFxuKSAhZGVmYXVsdDtcblxuQGluY2x1ZGUgX2Fzc2VydC1hc2NlbmRpbmcoJGNvbnRhaW5lci1tYXgtd2lkdGhzLCBcIiRjb250YWluZXItbWF4LXdpZHRoc1wiKTtcblxuXG4vLyBHcmlkIGNvbHVtbnNcbi8vXG4vLyBTZXQgdGhlIG51bWJlciBvZiBjb2x1bW5zIGFuZCBzcGVjaWZ5IHRoZSB3aWR0aCBvZiB0aGUgZ3V0dGVycy5cblxuJGdyaWQtY29sdW1uczogICAgICAgICAgICAgICAgMTIgIWRlZmF1bHQ7XG4kZ3JpZC1ndXR0ZXItd2lkdGg6ICAgICAgICAgICAzMHB4ICFkZWZhdWx0O1xuJGdyaWQtcm93LWNvbHVtbnM6ICAgICAgICAgICAgNiAhZGVmYXVsdDtcblxuXG4vLyBDb21wb25lbnRzXG4vL1xuLy8gRGVmaW5lIGNvbW1vbiBwYWRkaW5nIGFuZCBib3JkZXIgcmFkaXVzIHNpemVzIGFuZCBtb3JlLlxuXG4kbGluZS1oZWlnaHQtbGc6ICAgICAgICAgICAgICAxLjUgIWRlZmF1bHQ7XG4kbGluZS1oZWlnaHQtc206ICAgICAgICAgICAgICAxLjUgIWRlZmF1bHQ7XG5cbiRib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgIDFweCAhZGVmYXVsdDtcbiRib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcblxuJGJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJGJvcmRlci1yYWRpdXMtbGc6ICAgICAgICAgICAgLjNyZW0gIWRlZmF1bHQ7XG4kYm9yZGVyLXJhZGl1cy1zbTogICAgICAgICAgICAuMnJlbSAhZGVmYXVsdDtcblxuJHJvdW5kZWQtcGlsbDogICAgICAgICAgICAgICAgNTByZW0gIWRlZmF1bHQ7XG5cbiRib3gtc2hhZG93LXNtOiAgICAgICAgICAgICAgIDAgLjEyNXJlbSAuMjVyZW0gcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xuJGJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICAgMCAuNXJlbSAxcmVtIHJnYmEoJGJsYWNrLCAuMTUpICFkZWZhdWx0O1xuJGJveC1zaGFkb3ctbGc6ICAgICAgICAgICAgICAgMCAxcmVtIDNyZW0gcmdiYSgkYmxhY2ssIC4xNzUpICFkZWZhdWx0O1xuXG4kY29tcG9uZW50LWFjdGl2ZS1jb2xvcjogICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kY29tcG9uZW50LWFjdGl2ZS1iZzogICAgICAgICB0aGVtZS1jb2xvcihcInByaW1hcnlcIikgIWRlZmF1bHQ7XG5cbiRjYXJldC13aWR0aDogICAgICAgICAgICAgICAgIC4zZW0gIWRlZmF1bHQ7XG4kY2FyZXQtdmVydGljYWwtYWxpZ246ICAgICAgICAkY2FyZXQtd2lkdGggKiAuODUgIWRlZmF1bHQ7XG4kY2FyZXQtc3BhY2luZzogICAgICAgICAgICAgICAkY2FyZXQtd2lkdGggKiAuODUgIWRlZmF1bHQ7XG5cbiR0cmFuc2l0aW9uLWJhc2U6ICAgICAgICAgICAgIGFsbCAuMnMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG4kdHJhbnNpdGlvbi1mYWRlOiAgICAgICAgICAgICBvcGFjaXR5IC4xNXMgbGluZWFyICFkZWZhdWx0O1xuJHRyYW5zaXRpb24tY29sbGFwc2U6ICAgICAgICAgaGVpZ2h0IC4zNXMgZWFzZSAhZGVmYXVsdDtcbiR0cmFuc2l0aW9uLWNvbGxhcHNlLXdpZHRoOiAgIHdpZHRoIC4zNXMgZWFzZSAhZGVmYXVsdDtcblxuJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvczogKCkgIWRlZmF1bHQ7XG4kZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW9zOiBqb2luKFxuICAoXG4gICAgKDIxIDkpLFxuICAgICgxNiA5KSxcbiAgICAoNCAzKSxcbiAgICAoMSAxKSxcbiAgKSxcbiAgJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvc1xuKTtcblxuLy8gVHlwb2dyYXBoeVxuLy9cbi8vIEZvbnQsIGxpbmUtaGVpZ2h0LCBhbmQgY29sb3IgZm9yIGJvZHkgdGV4dCwgaGVhZGluZ3MsIGFuZCBtb3JlLlxuXG4vLyBzdHlsZWxpbnQtZGlzYWJsZSB2YWx1ZS1rZXl3b3JkLWNhc2VcbiRmb250LWZhbWlseS1zYW5zLXNlcmlmOiAgICAgIC1hcHBsZS1zeXN0ZW0sIEJsaW5rTWFjU3lzdGVtRm9udCwgXCJTZWdvZSBVSVwiLCBSb2JvdG8sIFwiSGVsdmV0aWNhIE5ldWVcIiwgQXJpYWwsIFwiTm90byBTYW5zXCIsIFwiTGliZXJhdGlvbiBTYW5zXCIsIHNhbnMtc2VyaWYsIFwiQXBwbGUgQ29sb3IgRW1vamlcIiwgXCJTZWdvZSBVSSBFbW9qaVwiLCBcIlNlZ29lIFVJIFN5bWJvbFwiLCBcIk5vdG8gQ29sb3IgRW1vamlcIiAhZGVmYXVsdDtcbiRmb250LWZhbWlseS1tb25vc3BhY2U6ICAgICAgIFNGTW9uby1SZWd1bGFyLCBNZW5sbywgTW9uYWNvLCBDb25zb2xhcywgXCJMaWJlcmF0aW9uIE1vbm9cIiwgXCJDb3VyaWVyIE5ld1wiLCBtb25vc3BhY2UgIWRlZmF1bHQ7XG4kZm9udC1mYW1pbHktYmFzZTogICAgICAgICAgICAkZm9udC1mYW1pbHktc2Fucy1zZXJpZiAhZGVmYXVsdDtcbi8vIHN0eWxlbGludC1lbmFibGUgdmFsdWUta2V5d29yZC1jYXNlXG5cbiRmb250LXNpemUtYmFzZTogICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7IC8vIEFzc3VtZXMgdGhlIGJyb3dzZXIgZGVmYXVsdCwgdHlwaWNhbGx5IGAxNnB4YFxuJGZvbnQtc2l6ZS1sZzogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS4yNSAhZGVmYXVsdDtcbiRmb250LXNpemUtc206ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIC44NzUgIWRlZmF1bHQ7XG5cbiRmb250LXdlaWdodC1saWdodGVyOiAgICAgICAgIGxpZ2h0ZXIgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtbGlnaHQ6ICAgICAgICAgICAzMDAgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtbm9ybWFsOiAgICAgICAgICA0MDAgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtYm9sZDogICAgICAgICAgICA3MDAgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtYm9sZGVyOiAgICAgICAgICBib2xkZXIgIWRlZmF1bHQ7XG5cbiRmb250LXdlaWdodC1iYXNlOiAgICAgICAgICAgICRmb250LXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG4kbGluZS1oZWlnaHQtYmFzZTogICAgICAgICAgICAxLjUgIWRlZmF1bHQ7XG5cbiRoMS1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDIuNSAhZGVmYXVsdDtcbiRoMi1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDIgIWRlZmF1bHQ7XG4kaDMtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjc1ICFkZWZhdWx0O1xuJGg0LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS41ICFkZWZhdWx0O1xuJGg1LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS4yNSAhZGVmYXVsdDtcbiRoNi1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAhZGVmYXVsdDtcblxuJGhlYWRpbmdzLW1hcmdpbi1ib3R0b206ICAgICAgJHNwYWNlciAqIC41ICFkZWZhdWx0O1xuJGhlYWRpbmdzLWZvbnQtZmFtaWx5OiAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRoZWFkaW5ncy1mb250LXdlaWdodDogICAgICAgIDUwMCAhZGVmYXVsdDtcbiRoZWFkaW5ncy1saW5lLWhlaWdodDogICAgICAgIDEuMiAhZGVmYXVsdDtcbiRoZWFkaW5ncy1jb2xvcjogICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG5cbiRkaXNwbGF5MS1zaXplOiAgICAgICAgICAgICAgIDZyZW0gIWRlZmF1bHQ7XG4kZGlzcGxheTItc2l6ZTogICAgICAgICAgICAgICA1LjVyZW0gIWRlZmF1bHQ7XG4kZGlzcGxheTMtc2l6ZTogICAgICAgICAgICAgICA0LjVyZW0gIWRlZmF1bHQ7XG4kZGlzcGxheTQtc2l6ZTogICAgICAgICAgICAgICAzLjVyZW0gIWRlZmF1bHQ7XG5cbiRkaXNwbGF5MS13ZWlnaHQ6ICAgICAgICAgICAgIDMwMCAhZGVmYXVsdDtcbiRkaXNwbGF5Mi13ZWlnaHQ6ICAgICAgICAgICAgIDMwMCAhZGVmYXVsdDtcbiRkaXNwbGF5My13ZWlnaHQ6ICAgICAgICAgICAgIDMwMCAhZGVmYXVsdDtcbiRkaXNwbGF5NC13ZWlnaHQ6ICAgICAgICAgICAgIDMwMCAhZGVmYXVsdDtcbiRkaXNwbGF5LWxpbmUtaGVpZ2h0OiAgICAgICAgICRoZWFkaW5ncy1saW5lLWhlaWdodCAhZGVmYXVsdDtcblxuJGxlYWQtZm9udC1zaXplOiAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS4yNSAhZGVmYXVsdDtcbiRsZWFkLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgIDMwMCAhZGVmYXVsdDtcblxuJHNtYWxsLWZvbnQtc2l6ZTogICAgICAgICAgICAgLjg3NWVtICFkZWZhdWx0O1xuXG4kdGV4dC1tdXRlZDogICAgICAgICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG5cbiRibG9ja3F1b3RlLXNtYWxsLWNvbG9yOiAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRibG9ja3F1b3RlLXNtYWxsLWZvbnQtc2l6ZTogICRzbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG4kYmxvY2txdW90ZS1mb250LXNpemU6ICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjI1ICFkZWZhdWx0O1xuXG4kaHItYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuJGhyLWJvcmRlci13aWR0aDogICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuJG1hcmstcGFkZGluZzogICAgICAgICAgICAgICAgLjJlbSAhZGVmYXVsdDtcblxuJGR0LWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG5cbiRrYmQtYm94LXNoYWRvdzogICAgICAgICAgICAgIGluc2V0IDAgLS4xcmVtIDAgcmdiYSgkYmxhY2ssIC4yNSkgIWRlZmF1bHQ7XG4kbmVzdGVkLWtiZC1mb250LXdlaWdodDogICAgICAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcblxuJGxpc3QtaW5saW5lLXBhZGRpbmc6ICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbiRtYXJrLWJnOiAgICAgICAgICAgICAgICAgICAgICNmY2Y4ZTMgIWRlZmF1bHQ7XG5cbiRoci1tYXJnaW4teTogICAgICAgICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG5cblxuLy8gVGFibGVzXG4vL1xuLy8gQ3VzdG9taXplcyB0aGUgYC50YWJsZWAgY29tcG9uZW50IHdpdGggYmFzaWMgdmFsdWVzLCBlYWNoIHVzZWQgYWNyb3NzIGFsbCB0YWJsZSB2YXJpYXRpb25zLlxuXG4kdGFibGUtY2VsbC1wYWRkaW5nOiAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kdGFibGUtY2VsbC1wYWRkaW5nLXNtOiAgICAgICAuM3JlbSAhZGVmYXVsdDtcblxuJHRhYmxlLWNvbG9yOiAgICAgICAgICAgICAgICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG4kdGFibGUtYmc6ICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJHRhYmxlLWFjY2VudC1iZzogICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4wNSkgIWRlZmF1bHQ7XG4kdGFibGUtaG92ZXItY29sb3I6ICAgICAgICAgICAkdGFibGUtY29sb3IgIWRlZmF1bHQ7XG4kdGFibGUtaG92ZXItYmc6ICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XG4kdGFibGUtYWN0aXZlLWJnOiAgICAgICAgICAgICAkdGFibGUtaG92ZXItYmcgIWRlZmF1bHQ7XG5cbiR0YWJsZS1ib3JkZXItd2lkdGg6ICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kdGFibGUtYm9yZGVyLWNvbG9yOiAgICAgICAgICAkYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuXG4kdGFibGUtaGVhZC1iZzogICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kdGFibGUtaGVhZC1jb2xvcjogICAgICAgICAgICAkZ3JheS03MDAgIWRlZmF1bHQ7XG4kdGFibGUtdGgtZm9udC13ZWlnaHQ6ICAgICAgICBudWxsICFkZWZhdWx0O1xuXG4kdGFibGUtZGFyay1jb2xvcjogICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kdGFibGUtZGFyay1iZzogICAgICAgICAgICAgICAkZ3JheS04MDAgIWRlZmF1bHQ7XG4kdGFibGUtZGFyay1hY2NlbnQtYmc6ICAgICAgICByZ2JhKCR3aGl0ZSwgLjA1KSAhZGVmYXVsdDtcbiR0YWJsZS1kYXJrLWhvdmVyLWNvbG9yOiAgICAgICR0YWJsZS1kYXJrLWNvbG9yICFkZWZhdWx0O1xuJHRhYmxlLWRhcmstaG92ZXItYmc6ICAgICAgICAgcmdiYSgkd2hpdGUsIC4wNzUpICFkZWZhdWx0O1xuJHRhYmxlLWRhcmstYm9yZGVyLWNvbG9yOiAgICAgbGlnaHRlbigkdGFibGUtZGFyay1iZywgNy41JSkgIWRlZmF1bHQ7XG5cbiR0YWJsZS1zdHJpcGVkLW9yZGVyOiAgICAgICAgIG9kZCAhZGVmYXVsdDtcblxuJHRhYmxlLWNhcHRpb24tY29sb3I6ICAgICAgICAgJHRleHQtbXV0ZWQgIWRlZmF1bHQ7XG5cbiR0YWJsZS1iZy1sZXZlbDogICAgICAgICAgICAgIC05ICFkZWZhdWx0O1xuJHRhYmxlLWJvcmRlci1sZXZlbDogICAgICAgICAgLTYgIWRlZmF1bHQ7XG5cblxuLy8gQnV0dG9ucyArIEZvcm1zXG4vL1xuLy8gU2hhcmVkIHZhcmlhYmxlcyB0aGF0IGFyZSByZWFzc2lnbmVkIHRvIGAkaW5wdXQtYCBhbmQgYCRidG4tYCBzcGVjaWZpYyB2YXJpYWJsZXMuXG5cbiRpbnB1dC1idG4tcGFkZGluZy15OiAgICAgICAgIC4zNzVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLXBhZGRpbmcteDogICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvbnQtZmFtaWx5OiAgICAgICBudWxsICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb250LXNpemU6ICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1saW5lLWhlaWdodDogICAgICAgJGxpbmUtaGVpZ2h0LWJhc2UgIWRlZmF1bHQ7XG5cbiRpbnB1dC1idG4tZm9jdXMtd2lkdGg6ICAgICAgIC4ycmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb2N1cy1jb2xvcjogICAgICAgcmdiYSgkY29tcG9uZW50LWFjdGl2ZS1iZywgLjI1KSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdzogIDAgMCAwICRpbnB1dC1idG4tZm9jdXMtd2lkdGggJGlucHV0LWJ0bi1mb2N1cy1jb2xvciAhZGVmYXVsdDtcblxuJGlucHV0LWJ0bi1wYWRkaW5nLXktc206ICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1wYWRkaW5nLXgtc206ICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvbnQtc2l6ZS1zbTogICAgICAkZm9udC1zaXplLXNtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1saW5lLWhlaWdodC1zbTogICAgJGxpbmUtaGVpZ2h0LXNtICFkZWZhdWx0O1xuXG4kaW5wdXQtYnRuLXBhZGRpbmcteS1sZzogICAgICAuNXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tcGFkZGluZy14LWxnOiAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvbnQtc2l6ZS1sZzogICAgICAkZm9udC1zaXplLWxnICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1saW5lLWhlaWdodC1sZzogICAgJGxpbmUtaGVpZ2h0LWxnICFkZWZhdWx0O1xuXG4kaW5wdXQtYnRuLWJvcmRlci13aWR0aDogICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuXG5cbi8vIEJ1dHRvbnNcbi8vXG4vLyBGb3IgZWFjaCBvZiBCb290c3RyYXAncyBidXR0b25zLCBkZWZpbmUgdGV4dCwgYmFja2dyb3VuZCwgYW5kIGJvcmRlciBjb2xvci5cblxuJGJ0bi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kYnRuLXBhZGRpbmcteDogICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteCAhZGVmYXVsdDtcbiRidG4tZm9udC1mYW1pbHk6ICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG4kYnRuLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRidG4tbGluZS1oZWlnaHQ6ICAgICAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG4kYnRuLXdoaXRlLXNwYWNlOiAgICAgICAgICAgICBudWxsICFkZWZhdWx0OyAvLyBTZXQgdG8gYG5vd3JhcGAgdG8gcHJldmVudCB0ZXh0IHdyYXBwaW5nXG5cbiRidG4tcGFkZGluZy15LXNtOiAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15LXNtICFkZWZhdWx0O1xuJGJ0bi1wYWRkaW5nLXgtc206ICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXgtc20gIWRlZmF1bHQ7XG4kYnRuLWZvbnQtc2l6ZS1zbTogICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiRidG4tbGluZS1oZWlnaHQtc206ICAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQtc20gIWRlZmF1bHQ7XG5cbiRidG4tcGFkZGluZy15LWxnOiAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15LWxnICFkZWZhdWx0O1xuJGJ0bi1wYWRkaW5nLXgtbGc6ICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXgtbGcgIWRlZmF1bHQ7XG4kYnRuLWZvbnQtc2l6ZS1sZzogICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbiRidG4tbGluZS1oZWlnaHQtbGc6ICAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQtbGcgIWRlZmF1bHQ7XG5cbiRidG4tYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICRpbnB1dC1idG4tYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuXG4kYnRuLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAkZm9udC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuJGJ0bi1ib3gtc2hhZG93OiAgICAgICAgICAgICAgaW5zZXQgMCAxcHggMCByZ2JhKCR3aGl0ZSwgLjE1KSwgMCAxcHggMXB4IHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcbiRidG4tZm9jdXMtd2lkdGg6ICAgICAgICAgICAgICRpbnB1dC1idG4tZm9jdXMtd2lkdGggIWRlZmF1bHQ7XG4kYnRuLWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kYnRuLWRpc2FibGVkLW9wYWNpdHk6ICAgICAgICAuNjUgIWRlZmF1bHQ7XG4kYnRuLWFjdGl2ZS1ib3gtc2hhZG93OiAgICAgICBpbnNldCAwIDNweCA1cHggcmdiYSgkYmxhY2ssIC4xMjUpICFkZWZhdWx0O1xuXG4kYnRuLWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG5cbiRidG4tYmxvY2stc3BhY2luZy15OiAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuXG4vLyBBbGxvd3MgZm9yIGN1c3RvbWl6aW5nIGJ1dHRvbiByYWRpdXMgaW5kZXBlbmRlbnRseSBmcm9tIGdsb2JhbCBib3JkZXIgcmFkaXVzXG4kYnRuLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRidG4tYm9yZGVyLXJhZGl1cy1sZzogICAgICAgICRib3JkZXItcmFkaXVzLWxnICFkZWZhdWx0O1xuJGJ0bi1ib3JkZXItcmFkaXVzLXNtOiAgICAgICAgJGJvcmRlci1yYWRpdXMtc20gIWRlZmF1bHQ7XG5cbiRidG4tdHJhbnNpdGlvbjogICAgICAgICAgICAgIGNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuXG4vLyBGb3Jtc1xuXG4kbGFiZWwtbWFyZ2luLWJvdHRvbTogICAgICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbiRpbnB1dC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteSAhZGVmYXVsdDtcbiRpbnB1dC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteCAhZGVmYXVsdDtcbiRpbnB1dC1mb250LWZhbWlseTogICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICAgICAgICRmb250LXdlaWdodC1iYXNlICFkZWZhdWx0O1xuJGlucHV0LWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG5cbiRpbnB1dC1wYWRkaW5nLXktc206ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteS1zbSAhZGVmYXVsdDtcbiRpbnB1dC1wYWRkaW5nLXgtc206ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteC1zbSAhZGVmYXVsdDtcbiRpbnB1dC1mb250LXNpemUtc206ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiRpbnB1dC1saW5lLWhlaWdodC1zbTogICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LXNtICFkZWZhdWx0O1xuXG4kaW5wdXQtcGFkZGluZy15LWxnOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXktbGcgIWRlZmF1bHQ7XG4kaW5wdXQtcGFkZGluZy14LWxnOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXgtbGcgIWRlZmF1bHQ7XG4kaW5wdXQtZm9udC1zaXplLWxnOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUtbGcgIWRlZmF1bHQ7XG4kaW5wdXQtbGluZS1oZWlnaHQtbGc6ICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodC1sZyAhZGVmYXVsdDtcblxuJGlucHV0LWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRpbnB1dC1kaXNhYmxlZC1iZzogICAgICAgICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG5cbiRpbnB1dC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAkZ3JheS03MDAgIWRlZmF1bHQ7XG4kaW5wdXQtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgJGdyYXktNDAwICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGlucHV0LWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICAgICAgIGluc2V0IDAgMXB4IDFweCByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XG5cbiRpbnB1dC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItcmFkaXVzLWxnOiAgICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cy1sZyAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItcmFkaXVzLXNtOiAgICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cy1zbSAhZGVmYXVsdDtcblxuJGlucHV0LWZvY3VzLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1iZyAhZGVmYXVsdDtcbiRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICBsaWdodGVuKCRjb21wb25lbnQtYWN0aXZlLWJnLCAyNSUpICFkZWZhdWx0O1xuJGlucHV0LWZvY3VzLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcbiRpbnB1dC1mb2N1cy13aWR0aDogICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLXdpZHRoICFkZWZhdWx0O1xuJGlucHV0LWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcblxuJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yOiAgICAgICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRpbnB1dC1wbGFpbnRleHQtY29sb3I6ICAgICAgICAgICAgICAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcblxuJGlucHV0LWhlaWdodC1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICRpbnB1dC1ib3JkZXItd2lkdGggKiAyICFkZWZhdWx0O1xuXG4kaW5wdXQtaGVpZ2h0LWlubmVyOiAgICAgICAgICAgICAgICAgICAgYWRkKCRpbnB1dC1saW5lLWhlaWdodCAqIDFlbSwgJGlucHV0LXBhZGRpbmcteSAqIDIpICFkZWZhdWx0O1xuJGlucHV0LWhlaWdodC1pbm5lci1oYWxmOiAgICAgICAgICAgICAgIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQgKiAuNWVtLCAkaW5wdXQtcGFkZGluZy15KSAhZGVmYXVsdDtcbiRpbnB1dC1oZWlnaHQtaW5uZXItcXVhcnRlcjogICAgICAgICAgICBhZGQoJGlucHV0LWxpbmUtaGVpZ2h0ICogLjI1ZW0sICRpbnB1dC1wYWRkaW5nLXkgKiAuNSkgIWRlZmF1bHQ7XG5cbiRpbnB1dC1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICAgICBhZGQoJGlucHV0LWxpbmUtaGVpZ2h0ICogMWVtLCBhZGQoJGlucHV0LXBhZGRpbmcteSAqIDIsICRpbnB1dC1oZWlnaHQtYm9yZGVyLCBmYWxzZSkpICFkZWZhdWx0O1xuJGlucHV0LWhlaWdodC1zbTogICAgICAgICAgICAgICAgICAgICAgIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQtc20gKiAxZW0sIGFkZCgkaW5wdXQtcGFkZGluZy15LXNtICogMiwgJGlucHV0LWhlaWdodC1ib3JkZXIsIGZhbHNlKSkgIWRlZmF1bHQ7XG4kaW5wdXQtaGVpZ2h0LWxnOiAgICAgICAgICAgICAgICAgICAgICAgYWRkKCRpbnB1dC1saW5lLWhlaWdodC1sZyAqIDFlbSwgYWRkKCRpbnB1dC1wYWRkaW5nLXktbGcgKiAyLCAkaW5wdXQtaGVpZ2h0LWJvcmRlciwgZmFsc2UpKSAhZGVmYXVsdDtcblxuJGlucHV0LXRyYW5zaXRpb246ICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG5cbiRmb3JtLXRleHQtbWFyZ2luLXRvcDogICAgICAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG5cbiRmb3JtLWNoZWNrLWlucHV0LWd1dHRlcjogICAgICAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtbWFyZ2luLXk6ICAgICAgICAgICAgIC4zcmVtICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtbWFyZ2luLXg6ICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcblxuJGZvcm0tY2hlY2staW5saW5lLW1hcmdpbi14OiAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlubGluZS1pbnB1dC1tYXJnaW4teDogICAgICAuMzEyNXJlbSAhZGVmYXVsdDtcblxuJGZvcm0tZ3JpZC1ndXR0ZXItd2lkdGg6ICAgICAgICAgICAgICAgIDEwcHggIWRlZmF1bHQ7XG4kZm9ybS1ncm91cC1tYXJnaW4tYm90dG9tOiAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcblxuJGlucHV0LWdyb3VwLWFkZG9uLWNvbG9yOiAgICAgICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcbiRpbnB1dC1ncm91cC1hZGRvbi1iZzogICAgICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kaW5wdXQtZ3JvdXAtYWRkb24tYm9yZGVyLWNvbG9yOiAgICAgICAgJGlucHV0LWJvcmRlci1jb2xvciAhZGVmYXVsdDtcblxuJGN1c3RvbS1mb3Jtcy10cmFuc2l0aW9uOiAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWd1dHRlcjogICAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLXNwYWNlci14OiAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtY3Vyc29yOiAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplOiAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJnOiAgICAgICAgICAgJGlucHV0LWJnICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJnLXNpemU6ICAgICAgNTAlIDUwJSAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm94LXNoYWRvdzogICAkaW5wdXQtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm9yZGVyLWNvbG9yOiAkZ3JheS01MDAgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJvcmRlci13aWR0aDogJGlucHV0LWJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWxhYmVsLWNvbG9yOiAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItZGlzYWJsZWQtYmc6ICAgICAgICAgICRpbnB1dC1kaXNhYmxlZC1iZyAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1sYWJlbC1kaXNhYmxlZC1jb2xvcjogICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWNvbG9yOiAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtYmc6ICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1kaXNhYmxlZC1iZzogIHJnYmEodGhlbWUtY29sb3IoXCJwcmltYXJ5XCIpLCAuNSkgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtYm94LXNoYWRvdzogICBudWxsICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWJvcmRlci1jb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWJnICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWZvY3VzLWJveC1zaGFkb3c6ICAgICAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItZm9jdXMtYm9yZGVyLWNvbG9yOiAgICRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWNvbG9yOiAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtYmc6ICAgICAgICAgICAgbGlnaHRlbigkY29tcG9uZW50LWFjdGl2ZS1iZywgMzUlKSAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWJveC1zaGFkb3c6ICAgIG51bGwgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1ib3JkZXItY29sb3I6ICAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1czogICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pY29uLWNoZWNrZWQ6ICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSc4JyBoZWlnaHQ9JzgnIHZpZXdCb3g9JzAgMCA4IDgnPjxwYXRoIGZpbGw9JyN7JGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWNvbG9yfScgZD0nTTYuNTY0Ljc1bC0zLjU5IDMuNjEyLTEuNTM4LTEuNTVMMCA0LjI2bDIuOTc0IDIuOTlMOCAyLjE5M3onLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtYmc6ICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtY29sb3I6ICAgICAgICAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pY29uLWluZGV0ZXJtaW5hdGU6ICAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nNCcgaGVpZ2h0PSc0JyB2aWV3Qm94PScwIDAgNCA0Jz48cGF0aCBzdHJva2U9JyN7JGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1jb2xvcn0nIGQ9J00wIDJoNCcvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtYm94LXNoYWRvdzogICBudWxsICFkZWZhdWx0O1xuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1ib3JkZXItY29sb3I6ICRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtYmcgIWRlZmF1bHQ7XG5cbiRjdXN0b20tcmFkaW8taW5kaWNhdG9yLWJvcmRlci1yYWRpdXM6ICAgICAgICAgIDUwJSAhZGVmYXVsdDtcbiRjdXN0b20tcmFkaW8taW5kaWNhdG9yLWljb24tY2hlY2tlZDogICAgICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzEyJyBoZWlnaHQ9JzEyJyB2aWV3Qm94PSctNCAtNCA4IDgnPjxjaXJjbGUgcj0nMycgZmlsbD0nI3skY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtY29sb3J9Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuXG4kY3VzdG9tLXN3aXRjaC13aWR0aDogICAgICAgICAgICAgICAgICAgICAgICAgICAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUgKiAxLjc1ICFkZWZhdWx0O1xuJGN1c3RvbS1zd2l0Y2gtaW5kaWNhdG9yLWJvcmRlci1yYWRpdXM6ICAgICAgICAgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplICogLjUgIWRlZmF1bHQ7XG4kY3VzdG9tLXN3aXRjaC1pbmRpY2F0b3Itc2l6ZTogICAgICAgICAgICAgICAgICBzdWJ0cmFjdCgkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUsICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm9yZGVyLXdpZHRoICogNCkgIWRlZmF1bHQ7XG5cbiRjdXN0b20tc2VsZWN0LXBhZGRpbmcteTogICAgICAgICAgICRpbnB1dC1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXg6ICAgICAgICAgICAkaW5wdXQtcGFkZGluZy14ICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZm9udC1mYW1pbHk6ICAgICAgICAgJGlucHV0LWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZm9udC1zaXplOiAgICAgICAgICAgJGlucHV0LWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWhlaWdodDogICAgICAgICAgICAgICRpbnB1dC1oZWlnaHQgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZzogICAxcmVtICFkZWZhdWx0OyAvLyBFeHRyYSBwYWRkaW5nIHRvIGFjY291bnQgZm9yIHRoZSBwcmVzZW5jZSBvZiB0aGUgYmFja2dyb3VuZC1pbWFnZSBiYXNlZCBpbmRpY2F0b3JcbiRjdXN0b20tc2VsZWN0LWZvbnQtd2VpZ2h0OiAgICAgICAgICRpbnB1dC1mb250LXdlaWdodCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWxpbmUtaGVpZ2h0OiAgICAgICAgICRpbnB1dC1saW5lLWhlaWdodCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWNvbG9yOiAgICAgICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWRpc2FibGVkLWNvbG9yOiAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWJnOiAgICAgICAgICAgICAgICAgICRpbnB1dC1iZyAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWRpc2FibGVkLWJnOiAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWJnLXNpemU6ICAgICAgICAgICAgIDhweCAxMHB4ICFkZWZhdWx0OyAvLyBJbiBwaXhlbHMgYmVjYXVzZSBpbWFnZSBkaW1lbnNpb25zXG4kY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItY29sb3I6ICAgICAkZ3JheS04MDAgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3I6ICAgICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSc0JyBoZWlnaHQ9JzUnIHZpZXdCb3g9JzAgMCA0IDUnPjxwYXRoIGZpbGw9JyN7JGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLWNvbG9yfScgZD0nTTIgMEwwIDJoNHptMCA1TDAgM2g0eicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWJhY2tncm91bmQ6ICAgICAgICAgIGVzY2FwZS1zdmcoJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yKSByaWdodCAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXggY2VudGVyIC8gJGN1c3RvbS1zZWxlY3QtYmctc2l6ZSBuby1yZXBlYXQgIWRlZmF1bHQ7IC8vIFVzZWQgc28gd2UgY2FuIGhhdmUgbXVsdGlwbGUgYmFja2dyb3VuZCBlbGVtZW50cyAoZS5nLiwgYXJyb3cgYW5kIGZlZWRiYWNrIGljb24pXG5cbiRjdXN0b20tc2VsZWN0LWZlZWRiYWNrLWljb24tcGFkZGluZy1yaWdodDogYWRkKDFlbSAqIC43NSwgKDIgKiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXkgKiAuNzUpICsgJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14ICsgJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmcpICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZmVlZGJhY2staWNvbi1wb3NpdGlvbjogICAgICBjZW50ZXIgcmlnaHQgKCRjdXN0b20tc2VsZWN0LXBhZGRpbmcteCArICRjdXN0b20tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nKSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWZlZWRiYWNrLWljb24tc2l6ZTogICAgICAgICAgJGlucHV0LWhlaWdodC1pbm5lci1oYWxmICRpbnB1dC1oZWlnaHQtaW5uZXItaGFsZiAhZGVmYXVsdDtcblxuJGN1c3RvbS1zZWxlY3QtYm9yZGVyLXdpZHRoOiAgICAgICAgJGlucHV0LWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWJvcmRlci1jb2xvcjogICAgICAgICRpbnB1dC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1ib3JkZXItcmFkaXVzOiAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWJveC1zaGFkb3c6ICAgICAgICAgIGluc2V0IDAgMXB4IDJweCByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XG5cbiRjdXN0b20tc2VsZWN0LWZvY3VzLWJvcmRlci1jb2xvcjogICRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1mb2N1cy13aWR0aDogICAgICAgICAkaW5wdXQtZm9jdXMtd2lkdGggIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1mb2N1cy1ib3gtc2hhZG93OiAgICAwIDAgMCAkY3VzdG9tLXNlbGVjdC1mb2N1cy13aWR0aCAkaW5wdXQtYnRuLWZvY3VzLWNvbG9yICFkZWZhdWx0O1xuXG4kY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXktc206ICAgICAgICAkaW5wdXQtcGFkZGluZy15LXNtICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14LXNtOiAgICAgICAgJGlucHV0LXBhZGRpbmcteC1zbSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWZvbnQtc2l6ZS1zbTogICAgICAgICRpbnB1dC1mb250LXNpemUtc20gIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1oZWlnaHQtc206ICAgICAgICAgICAkaW5wdXQtaGVpZ2h0LXNtICFkZWZhdWx0O1xuXG4kY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXktbGc6ICAgICAgICAkaW5wdXQtcGFkZGluZy15LWxnICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14LWxnOiAgICAgICAgJGlucHV0LXBhZGRpbmcteC1sZyAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWZvbnQtc2l6ZS1sZzogICAgICAgICRpbnB1dC1mb250LXNpemUtbGcgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1oZWlnaHQtbGc6ICAgICAgICAgICAkaW5wdXQtaGVpZ2h0LWxnICFkZWZhdWx0O1xuXG4kY3VzdG9tLXJhbmdlLXRyYWNrLXdpZHRoOiAgICAgICAgICAxMDAlICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10cmFjay1oZWlnaHQ6ICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRyYWNrLWN1cnNvcjogICAgICAgICBwb2ludGVyICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10cmFjay1iZzogICAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10cmFjay1ib3JkZXItcmFkaXVzOiAgMXJlbSAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdHJhY2stYm94LXNoYWRvdzogICAgIGluc2V0IDAgLjI1cmVtIC4yNXJlbSByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuXG4kY3VzdG9tLXJhbmdlLXRodW1iLXdpZHRoOiAgICAgICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10aHVtYi1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgJGN1c3RvbS1yYW5nZS10aHVtYi13aWR0aCAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItYmc6ICAgICAgICAgICAgICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10aHVtYi1ib3JkZXI6ICAgICAgICAgICAgICAgICAgMCAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItYm9yZGVyLXJhZGl1czogICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAwIC4xcmVtIC4yNXJlbSByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAgMCAwIDAgMXB4ICRib2R5LWJnLCAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdy13aWR0aDogICRpbnB1dC1mb2N1cy13aWR0aCAhZGVmYXVsdDsgLy8gRm9yIGZvY3VzIGJveCBzaGFkb3cgaXNzdWUgaW4gSUUvRWRnZVxuJGN1c3RvbS1yYW5nZS10aHVtYi1hY3RpdmUtYmc6ICAgICAgICAgICAgICAgbGlnaHRlbigkY29tcG9uZW50LWFjdGl2ZS1iZywgMzUlKSAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItZGlzYWJsZWQtYmc6ICAgICAgICAgICAgICRncmF5LTUwMCAhZGVmYXVsdDtcblxuJGN1c3RvbS1maWxlLWhlaWdodDogICAgICAgICAgICAgICAgJGlucHV0LWhlaWdodCAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1oZWlnaHQtaW5uZXI6ICAgICAgICAgICRpbnB1dC1oZWlnaHQtaW5uZXIgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtZm9jdXMtYm9yZGVyLWNvbG9yOiAgICAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWZvY3VzLWJveC1zaGFkb3c6ICAgICAgJGlucHV0LWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtZGlzYWJsZWQtYmc6ICAgICAgICAgICAkaW5wdXQtZGlzYWJsZWQtYmcgIWRlZmF1bHQ7XG5cbiRjdXN0b20tZmlsZS1wYWRkaW5nLXk6ICAgICAgICAgICAgICRpbnB1dC1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtcGFkZGluZy14OiAgICAgICAgICAgICAkaW5wdXQtcGFkZGluZy14ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgJGlucHV0LWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWZvbnQtZmFtaWx5OiAgICAgICAgICAgJGlucHV0LWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgJGlucHV0LWZvbnQtd2VpZ2h0ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWNvbG9yOiAgICAgICAgICAgICAgICAgJGlucHV0LWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJnOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJnICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJvcmRlci13aWR0aDogICAgICAgICAgJGlucHV0LWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1ib3JkZXItY29sb3I6ICAgICAgICAgICRpbnB1dC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYm9yZGVyLXJhZGl1czogICAgICAgICAkaW5wdXQtYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1ib3gtc2hhZG93OiAgICAgICAgICAgICRpbnB1dC1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJ1dHRvbi1jb2xvcjogICAgICAgICAgJGN1c3RvbS1maWxlLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJ1dHRvbi1iZzogICAgICAgICAgICAgJGlucHV0LWdyb3VwLWFkZG9uLWJnICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLXRleHQ6IChcbiAgZW46IFwiQnJvd3NlXCJcbikgIWRlZmF1bHQ7XG5cblxuLy8gRm9ybSB2YWxpZGF0aW9uXG5cbiRmb3JtLWZlZWRiYWNrLW1hcmdpbi10b3A6ICAgICAgICAgICRmb3JtLXRleHQtbWFyZ2luLXRvcCAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWZvbnQtc2l6ZTogICAgICAgICAgICRzbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay12YWxpZC1jb2xvcjogICAgICAgICB0aGVtZS1jb2xvcihcInN1Y2Nlc3NcIikgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1pbnZhbGlkLWNvbG9yOiAgICAgICB0aGVtZS1jb2xvcihcImRhbmdlclwiKSAhZGVmYXVsdDtcblxuJGZvcm0tZmVlZGJhY2staWNvbi12YWxpZC1jb2xvcjogICAgJGZvcm0tZmVlZGJhY2stdmFsaWQtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1pY29uLXZhbGlkOiAgICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSc4JyBoZWlnaHQ9JzgnIHZpZXdCb3g9JzAgMCA4IDgnPjxwYXRoIGZpbGw9JyN7JGZvcm0tZmVlZGJhY2staWNvbi12YWxpZC1jb2xvcn0nIGQ9J00yLjMgNi43M0wuNiA0LjUzYy0uNC0xLjA0LjQ2LTEuNCAxLjEtLjhsMS4xIDEuNCAzLjQtMy44Yy42LS42MyAxLjYtLjI3IDEuMi43bC00IDQuNmMtLjQzLjUtLjguNC0xLjEuMXonLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWQtY29sb3I6ICAkZm9ybS1mZWVkYmFjay1pbnZhbGlkLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkOiAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nMTInIGhlaWdodD0nMTInIGZpbGw9J25vbmUnIHN0cm9rZT0nI3skZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWQtY29sb3J9JyB2aWV3Qm94PScwIDAgMTIgMTInPjxjaXJjbGUgY3g9JzYnIGN5PSc2JyByPSc0LjUnLz48cGF0aCBzdHJva2UtbGluZWpvaW49J3JvdW5kJyBkPSdNNS44IDMuNmguNEw2IDYuNXonLz48Y2lyY2xlIGN4PSc2JyBjeT0nOC4yJyByPScuNicgZmlsbD0nI3skZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWQtY29sb3J9JyBzdHJva2U9J25vbmUnLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG5cbiRmb3JtLXZhbGlkYXRpb24tc3RhdGVzOiAoKSAhZGVmYXVsdDtcbiRmb3JtLXZhbGlkYXRpb24tc3RhdGVzOiBtYXAtbWVyZ2UoXG4gIChcbiAgICBcInZhbGlkXCI6IChcbiAgICAgIFwiY29sb3JcIjogJGZvcm0tZmVlZGJhY2stdmFsaWQtY29sb3IsXG4gICAgICBcImljb25cIjogJGZvcm0tZmVlZGJhY2staWNvbi12YWxpZFxuICAgICksXG4gICAgXCJpbnZhbGlkXCI6IChcbiAgICAgIFwiY29sb3JcIjogJGZvcm0tZmVlZGJhY2staW52YWxpZC1jb2xvcixcbiAgICAgIFwiaWNvblwiOiAkZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWRcbiAgICApLFxuICApLFxuICAkZm9ybS12YWxpZGF0aW9uLXN0YXRlc1xuKTtcblxuLy8gWi1pbmRleCBtYXN0ZXIgbGlzdFxuLy9cbi8vIFdhcm5pbmc6IEF2b2lkIGN1c3RvbWl6aW5nIHRoZXNlIHZhbHVlcy4gVGhleSdyZSB1c2VkIGZvciBhIGJpcmQncyBleWUgdmlld1xuLy8gb2YgY29tcG9uZW50cyBkZXBlbmRlbnQgb24gdGhlIHotYXhpcyBhbmQgYXJlIGRlc2lnbmVkIHRvIGFsbCB3b3JrIHRvZ2V0aGVyLlxuXG4kemluZGV4LWRyb3Bkb3duOiAgICAgICAgICAgICAgICAgICAxMDAwICFkZWZhdWx0O1xuJHppbmRleC1zdGlja3k6ICAgICAgICAgICAgICAgICAgICAgMTAyMCAhZGVmYXVsdDtcbiR6aW5kZXgtZml4ZWQ6ICAgICAgICAgICAgICAgICAgICAgIDEwMzAgIWRlZmF1bHQ7XG4kemluZGV4LW1vZGFsLWJhY2tkcm9wOiAgICAgICAgICAgICAxMDQwICFkZWZhdWx0O1xuJHppbmRleC1tb2RhbDogICAgICAgICAgICAgICAgICAgICAgMTA1MCAhZGVmYXVsdDtcbiR6aW5kZXgtcG9wb3ZlcjogICAgICAgICAgICAgICAgICAgIDEwNjAgIWRlZmF1bHQ7XG4kemluZGV4LXRvb2x0aXA6ICAgICAgICAgICAgICAgICAgICAxMDcwICFkZWZhdWx0O1xuXG5cbi8vIE5hdnNcblxuJG5hdi1saW5rLXBhZGRpbmcteTogICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kbmF2LWxpbmstcGFkZGluZy14OiAgICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJG5hdi1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuXG4kbmF2LXRhYnMtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJG5hdi10YWJzLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3I6ICAkZ3JheS0yMDAgJGdyYXktMjAwICRuYXYtdGFicy1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtbGluay1hY3RpdmUtY29sb3I6ICAgICAgICAkZ3JheS03MDAgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtbGluay1hY3RpdmUtYmc6ICAgICAgICAgICAkYm9keS1iZyAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWFjdGl2ZS1ib3JkZXItY29sb3I6ICRncmF5LTMwMCAkZ3JheS0zMDAgJG5hdi10YWJzLWxpbmstYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kbmF2LXBpbGxzLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRuYXYtcGlsbHMtbGluay1hY3RpdmUtY29sb3I6ICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJG5hdi1waWxscy1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRuYXYtZGl2aWRlci1jb2xvcjogICAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRuYXYtZGl2aWRlci1tYXJnaW4teTogICAgICAgICAgICAgICRzcGFjZXIgKiAuNSAhZGVmYXVsdDtcblxuXG4vLyBOYXZiYXJcblxuJG5hdmJhci1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgJHNwYWNlciAqIC41ICFkZWZhdWx0O1xuJG5hdmJhci1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcblxuJG5hdmJhci1uYXYtbGluay1wYWRkaW5nLXg6ICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbiRuYXZiYXItYnJhbmQtZm9udC1zaXplOiAgICAgICAgICAgICRmb250LXNpemUtbGcgIWRlZmF1bHQ7XG4vLyBDb21wdXRlIHRoZSBuYXZiYXItYnJhbmQgcGFkZGluZy15IHNvIHRoZSBuYXZiYXItYnJhbmQgd2lsbCBoYXZlIHRoZSBzYW1lIGhlaWdodCBhcyBuYXZiYXItdGV4dCBhbmQgbmF2LWxpbmtcbiRuYXYtbGluay1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlICsgJG5hdi1saW5rLXBhZGRpbmcteSAqIDIgIWRlZmF1bHQ7XG4kbmF2YmFyLWJyYW5kLWhlaWdodDogICAgICAgICAgICAgICAkbmF2YmFyLWJyYW5kLWZvbnQtc2l6ZSAqICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xuJG5hdmJhci1icmFuZC1wYWRkaW5nLXk6ICAgICAgICAgICAgKCRuYXYtbGluay1oZWlnaHQgLSAkbmF2YmFyLWJyYW5kLWhlaWdodCkgKiAuNSAhZGVmYXVsdDtcblxuJG5hdmJhci10b2dnbGVyLXBhZGRpbmcteTogICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJG5hdmJhci10b2dnbGVyLXBhZGRpbmcteDogICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJG5hdmJhci10b2dnbGVyLWZvbnQtc2l6ZTogICAgICAgICAgJGZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbiRuYXZiYXItdG9nZ2xlci1ib3JkZXItcmFkaXVzOiAgICAgICRidG4tYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcblxuJG5hdmJhci1uYXYtc2Nyb2xsLW1heC1oZWlnaHQ6ICAgICAgNzV2aCAhZGVmYXVsdDtcblxuJG5hdmJhci1kYXJrLWNvbG9yOiAgICAgICAgICAgICAgICAgcmdiYSgkd2hpdGUsIC41KSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1ob3Zlci1jb2xvcjogICAgICAgICAgIHJnYmEoJHdoaXRlLCAuNzUpICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvcjogICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWRpc2FibGVkLWNvbG9yOiAgICAgICAgcmdiYSgkd2hpdGUsIC4yNSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstdG9nZ2xlci1pY29uLWJnOiAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSczMCcgaGVpZ2h0PSczMCcgdmlld0JveD0nMCAwIDMwIDMwJz48cGF0aCBzdHJva2U9JyN7JG5hdmJhci1kYXJrLWNvbG9yfScgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbWl0ZXJsaW1pdD0nMTAnIHN0cm9rZS13aWR0aD0nMicgZD0nTTQgN2gyMk00IDE1aDIyTTQgMjNoMjInLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstdG9nZ2xlci1ib3JkZXItY29sb3I6ICByZ2JhKCR3aGl0ZSwgLjEpICFkZWZhdWx0O1xuXG4kbmF2YmFyLWxpZ2h0LWNvbG9yOiAgICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjUpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1ob3Zlci1jb2xvcjogICAgICAgICAgcmdiYSgkYmxhY2ssIC43KSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yOiAgICAgICAgIHJnYmEoJGJsYWNrLCAuOSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWRpc2FibGVkLWNvbG9yOiAgICAgICByZ2JhKCRibGFjaywgLjMpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC10b2dnbGVyLWljb24tYmc6ICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nMzAnIGhlaWdodD0nMzAnIHZpZXdCb3g9JzAgMCAzMCAzMCc+PHBhdGggc3Ryb2tlPScjeyRuYXZiYXItbGlnaHQtY29sb3J9JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1taXRlcmxpbWl0PScxMCcgc3Ryb2tlLXdpZHRoPScyJyBkPSdNNCA3aDIyTTQgMTVoMjJNNCAyM2gyMicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtdG9nZ2xlci1ib3JkZXItY29sb3I6IHJnYmEoJGJsYWNrLCAuMSkgIWRlZmF1bHQ7XG5cbiRuYXZiYXItbGlnaHQtYnJhbmQtY29sb3I6ICAgICAgICAgICAgICAgICRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1icmFuZC1ob3Zlci1jb2xvcjogICAgICAgICAgJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstYnJhbmQtY29sb3I6ICAgICAgICAgICAgICAgICAkbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWJyYW5kLWhvdmVyLWNvbG9yOiAgICAgICAgICAgJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcblxuXG4vLyBEcm9wZG93bnNcbi8vXG4vLyBEcm9wZG93biBtZW51IGNvbnRhaW5lciBhbmQgY29udGVudHMuXG5cbiRkcm9wZG93bi1taW4td2lkdGg6ICAgICAgICAgICAgICAgIDEwcmVtICFkZWZhdWx0O1xuJGRyb3Bkb3duLXBhZGRpbmcteDogICAgICAgICAgICAgICAgMCAhZGVmYXVsdDtcbiRkcm9wZG93bi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJGRyb3Bkb3duLXNwYWNlcjogICAgICAgICAgICAgICAgICAgLjEyNXJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAhZGVmYXVsdDtcbiRkcm9wZG93bi1jb2xvcjogICAgICAgICAgICAgICAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJnOiAgICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4xNSkgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYm9yZGVyLXJhZGl1czogICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRkcm9wZG93bi1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kZHJvcGRvd24taW5uZXItYm9yZGVyLXJhZGl1czogICAgICBzdWJ0cmFjdCgkZHJvcGRvd24tYm9yZGVyLXJhZGl1cywgJGRyb3Bkb3duLWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGl2aWRlci1iZzogICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGl2aWRlci1tYXJnaW4teTogICAgICAgICAkbmF2LWRpdmlkZXItbWFyZ2luLXkgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYm94LXNoYWRvdzogICAgICAgICAgICAgICAwIC41cmVtIDFyZW0gcmdiYSgkYmxhY2ssIC4xNzUpICFkZWZhdWx0O1xuXG4kZHJvcGRvd24tbGluay1jb2xvcjogICAgICAgICAgICAgICAkZ3JheS05MDAgIWRlZmF1bHQ7XG4kZHJvcGRvd24tbGluay1ob3Zlci1jb2xvcjogICAgICAgICBkYXJrZW4oJGdyYXktOTAwLCA1JSkgIWRlZmF1bHQ7XG4kZHJvcGRvd24tbGluay1ob3Zlci1iZzogICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvcjogICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGRyb3Bkb3duLWxpbmstYWN0aXZlLWJnOiAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgICRncmF5LTUwMCAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy15OiAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14OiAgICAgICAgICAgMS41cmVtICFkZWZhdWx0O1xuXG4kZHJvcGRvd24taGVhZGVyLWNvbG9yOiAgICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kZHJvcGRvd24taGVhZGVyLXBhZGRpbmc6ICAgICAgICAgICAkZHJvcGRvd24tcGFkZGluZy15ICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteCAhZGVmYXVsdDtcblxuXG4vLyBQYWdpbmF0aW9uXG5cbiRwYWdpbmF0aW9uLXBhZGRpbmcteTogICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy14OiAgICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy15LXNtOiAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy14LXNtOiAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXktbGc6ICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXgtbGc6ICAgICAgICAgICAxLjVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1saW5lLWhlaWdodDogICAgICAgICAgICAxLjI1ICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1jb2xvcjogICAgICAgICAgICAgICAgICAkbGluay1jb2xvciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJnOiAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJvcmRlci13aWR0aDogICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ib3JkZXItY29sb3I6ICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWZvY3VzLW91dGxpbmU6ICAgICAgICAgIDAgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICRsaW5rLWhvdmVyLWNvbG9yICFkZWZhdWx0O1xuJHBhZ2luYXRpb24taG92ZXItYmc6ICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJHBhZ2luYXRpb24taG92ZXItYm9yZGVyLWNvbG9yOiAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1hY3RpdmUtY29sb3I6ICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWFjdGl2ZS1iZzogICAgICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYWN0aXZlLWJvcmRlci1jb2xvcjogICAgJHBhZ2luYXRpb24tYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1jb2xvcjogICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1iZzogICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1ib3JkZXItY29sb3I6ICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWJvcmRlci1yYWRpdXMtc206ICAgICAgICRib3JkZXItcmFkaXVzLXNtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYm9yZGVyLXJhZGl1cy1sZzogICAgICAgJGJvcmRlci1yYWRpdXMtbGcgIWRlZmF1bHQ7XG5cblxuLy8gSnVtYm90cm9uXG5cbiRqdW1ib3Ryb24tcGFkZGluZzogICAgICAgICAgICAgICAgIDJyZW0gIWRlZmF1bHQ7XG4kanVtYm90cm9uLWNvbG9yOiAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGp1bWJvdHJvbi1iZzogICAgICAgICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuXG5cbi8vIENhcmRzXG5cbiRjYXJkLXNwYWNlci15OiAgICAgICAgICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRjYXJkLXNwYWNlci14OiAgICAgICAgICAgICAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG4kY2FyZC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGNhcmQtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kY2FyZC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjEyNSkgIWRlZmF1bHQ7XG4kY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzOiAgICAgICAgICBzdWJ0cmFjdCgkY2FyZC1ib3JkZXItcmFkaXVzLCAkY2FyZC1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJGNhcmQtY2FwLWJnOiAgICAgICAgICAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4wMykgIWRlZmF1bHQ7XG4kY2FyZC1jYXAtY29sb3I6ICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGNhcmQtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRjYXJkLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kY2FyZC1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG5cbiRjYXJkLWltZy1vdmVybGF5LXBhZGRpbmc6ICAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG5cbiRjYXJkLWdyb3VwLW1hcmdpbjogICAgICAgICAgICAgICAgICRncmlkLWd1dHRlci13aWR0aCAqIC41ICFkZWZhdWx0O1xuJGNhcmQtZGVjay1tYXJnaW46ICAgICAgICAgICAgICAgICAgJGNhcmQtZ3JvdXAtbWFyZ2luICFkZWZhdWx0O1xuXG4kY2FyZC1jb2x1bW5zLWNvdW50OiAgICAgICAgICAgICAgICAzICFkZWZhdWx0O1xuJGNhcmQtY29sdW1ucy1nYXA6ICAgICAgICAgICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRjYXJkLWNvbHVtbnMtbWFyZ2luOiAgICAgICAgICAgICAgICRjYXJkLXNwYWNlci15ICFkZWZhdWx0O1xuXG5cbi8vIFRvb2x0aXBzXG5cbiR0b29sdGlwLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICRmb250LXNpemUtc20gIWRlZmF1bHQ7XG4kdG9vbHRpcC1tYXgtd2lkdGg6ICAgICAgICAgICAgICAgICAyMDBweCAhZGVmYXVsdDtcbiR0b29sdGlwLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiR0b29sdGlwLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICRibGFjayAhZGVmYXVsdDtcbiR0b29sdGlwLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJHRvb2x0aXAtb3BhY2l0eTogICAgICAgICAgICAgICAgICAgLjkgIWRlZmF1bHQ7XG4kdG9vbHRpcC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kdG9vbHRpcC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiR0b29sdGlwLW1hcmdpbjogICAgICAgICAgICAgICAgICAgIDAgIWRlZmF1bHQ7XG5cbiR0b29sdGlwLWFycm93LXdpZHRoOiAgICAgICAgICAgICAgIC44cmVtICFkZWZhdWx0O1xuJHRvb2x0aXAtYXJyb3ctaGVpZ2h0OiAgICAgICAgICAgICAgLjRyZW0gIWRlZmF1bHQ7XG4kdG9vbHRpcC1hcnJvdy1jb2xvcjogICAgICAgICAgICAgICAkdG9vbHRpcC1iZyAhZGVmYXVsdDtcblxuLy8gRm9ybSB0b29sdGlwcyBtdXN0IGNvbWUgYWZ0ZXIgcmVndWxhciB0b29sdGlwc1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1wYWRkaW5nLXk6ICAgICAkdG9vbHRpcC1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay10b29sdGlwLXBhZGRpbmcteDogICAgICR0b29sdGlwLXBhZGRpbmcteCAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtZm9udC1zaXplOiAgICAgJHRvb2x0aXAtZm9udC1zaXplICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1saW5lLWhlaWdodDogICAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtb3BhY2l0eTogICAgICAgJHRvb2x0aXAtb3BhY2l0eSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtYm9yZGVyLXJhZGl1czogJHRvb2x0aXAtYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcblxuXG4vLyBQb3BvdmVyc1xuXG4kcG9wb3Zlci1mb250LXNpemU6ICAgICAgICAgICAgICAgICAkZm9udC1zaXplLXNtICFkZWZhdWx0O1xuJHBvcG92ZXItYmc6ICAgICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHBvcG92ZXItbWF4LXdpZHRoOiAgICAgICAgICAgICAgICAgMjc2cHggIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJHBvcG92ZXItYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4yKSAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICRib3JkZXItcmFkaXVzLWxnICFkZWZhdWx0O1xuJHBvcG92ZXItaW5uZXItYm9yZGVyLXJhZGl1czogICAgICAgc3VidHJhY3QoJHBvcG92ZXItYm9yZGVyLXJhZGl1cywgJHBvcG92ZXItYm9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiRwb3BvdmVyLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgIDAgLjI1cmVtIC41cmVtIHJnYmEoJGJsYWNrLCAuMikgIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWhlYWRlci1iZzogICAgICAgICAgICAgICAgIGRhcmtlbigkcG9wb3Zlci1iZywgMyUpICFkZWZhdWx0O1xuJHBvcG92ZXItaGVhZGVyLWNvbG9yOiAgICAgICAgICAgICAgJGhlYWRpbmdzLWNvbG9yICFkZWZhdWx0O1xuJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteTogICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kcG9wb3Zlci1oZWFkZXItcGFkZGluZy14OiAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWJvZHktY29sb3I6ICAgICAgICAgICAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuJHBvcG92ZXItYm9keS1wYWRkaW5nLXk6ICAgICAgICAgICAgJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteSAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvZHktcGFkZGluZy14OiAgICAgICAgICAgICRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXggIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWFycm93LXdpZHRoOiAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kcG9wb3Zlci1hcnJvdy1oZWlnaHQ6ICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRwb3BvdmVyLWFycm93LWNvbG9yOiAgICAgICAgICAgICAgICRwb3BvdmVyLWJnICFkZWZhdWx0O1xuXG4kcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjogICAgICAgICBmYWRlLWluKCRwb3BvdmVyLWJvcmRlci1jb2xvciwgLjA1KSAhZGVmYXVsdDtcblxuXG4vLyBUb2FzdHNcblxuJHRvYXN0LW1heC13aWR0aDogICAgICAgICAgICAgICAgICAgMzUwcHggIWRlZmF1bHQ7XG4kdG9hc3QtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kdG9hc3QtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kdG9hc3QtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAuODc1cmVtICFkZWZhdWx0O1xuJHRvYXN0LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiR0b2FzdC1iYWNrZ3JvdW5kLWNvbG9yOiAgICAgICAgICAgIHJnYmEoJHdoaXRlLCAuODUpICFkZWZhdWx0O1xuJHRvYXN0LWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgMXB4ICFkZWZhdWx0O1xuJHRvYXN0LWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgcmdiYSgwLCAwLCAwLCAuMSkgIWRlZmF1bHQ7XG4kdG9hc3QtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kdG9hc3QtYm94LXNoYWRvdzogICAgICAgICAgICAgICAgICAwIC4yNXJlbSAuNzVyZW0gcmdiYSgkYmxhY2ssIC4xKSAhZGVmYXVsdDtcblxuJHRvYXN0LWhlYWRlci1jb2xvcjogICAgICAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJHRvYXN0LWhlYWRlci1iYWNrZ3JvdW5kLWNvbG9yOiAgICAgcmdiYSgkd2hpdGUsIC44NSkgIWRlZmF1bHQ7XG4kdG9hc3QtaGVhZGVyLWJvcmRlci1jb2xvcjogICAgICAgICByZ2JhKDAsIDAsIDAsIC4wNSkgIWRlZmF1bHQ7XG5cblxuLy8gQmFkZ2VzXG5cbiRiYWRnZS1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgIDc1JSAhZGVmYXVsdDtcbiRiYWRnZS1mb250LXdlaWdodDogICAgICAgICAgICAgICAgICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuJGJhZGdlLXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgLjI1ZW0gIWRlZmF1bHQ7XG4kYmFkZ2UtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAuNGVtICFkZWZhdWx0O1xuJGJhZGdlLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG5cbiRiYWRnZS10cmFuc2l0aW9uOiAgICAgICAgICAgICAgICAgICRidG4tdHJhbnNpdGlvbiAhZGVmYXVsdDtcbiRiYWRnZS1mb2N1cy13aWR0aDogICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9jdXMtd2lkdGggIWRlZmF1bHQ7XG5cbiRiYWRnZS1waWxsLXBhZGRpbmcteDogICAgICAgICAgICAgIC42ZW0gIWRlZmF1bHQ7XG4vLyBVc2UgYSBoaWdoZXIgdGhhbiBub3JtYWwgdmFsdWUgdG8gZW5zdXJlIGNvbXBsZXRlbHkgcm91bmRlZCBlZGdlcyB3aGVuXG4vLyBjdXN0b21pemluZyBwYWRkaW5nIG9yIGZvbnQtc2l6ZSBvbiBsYWJlbHMuXG4kYmFkZ2UtcGlsbC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAxMHJlbSAhZGVmYXVsdDtcblxuXG4vLyBNb2RhbHNcblxuLy8gUGFkZGluZyBhcHBsaWVkIHRvIHRoZSBtb2RhbCBib2R5XG4kbW9kYWwtaW5uZXItcGFkZGluZzogICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuXG4vLyBNYXJnaW4gYmV0d2VlbiBlbGVtZW50cyBpbiBmb290ZXIsIG11c3QgYmUgbG93ZXIgdGhhbiBvciBlcXVhbCB0byAyICogJG1vZGFsLWlubmVyLXBhZGRpbmdcbiRtb2RhbC1mb290ZXItbWFyZ2luLWJldHdlZW46ICAgICAgIC41cmVtICFkZWZhdWx0O1xuXG4kbW9kYWwtZGlhbG9nLW1hcmdpbjogICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRtb2RhbC1kaWFsb2ctbWFyZ2luLXktc20tdXA6ICAgICAgIDEuNzVyZW0gIWRlZmF1bHQ7XG5cbiRtb2RhbC10aXRsZS1saW5lLWhlaWdodDogICAgICAgICAgICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xuXG4kbW9kYWwtY29udGVudC1jb2xvcjogICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYmc6ICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm9yZGVyLWNvbG9yOiAgICAgICAgcmdiYSgkYmxhY2ssIC4yKSAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJvcmRlci13aWR0aDogICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3JkZXItcmFkaXVzOiAgICAgICAkYm9yZGVyLXJhZGl1cy1sZyAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWlubmVyLWJvcmRlci1yYWRpdXM6IHN1YnRyYWN0KCRtb2RhbC1jb250ZW50LWJvcmRlci1yYWRpdXMsICRtb2RhbC1jb250ZW50LWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXhzOiAgICAgICAwIC4yNXJlbSAuNXJlbSByZ2JhKCRibGFjaywgLjUpICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy1zbS11cDogICAgMCAuNXJlbSAxcmVtIHJnYmEoJGJsYWNrLCAuNSkgIWRlZmF1bHQ7XG5cbiRtb2RhbC1iYWNrZHJvcC1iZzogICAgICAgICAgICAgICAgICRibGFjayAhZGVmYXVsdDtcbiRtb2RhbC1iYWNrZHJvcC1vcGFjaXR5OiAgICAgICAgICAgIC41ICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1ib3JkZXItY29sb3I6ICAgICAgICAgJGJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRtb2RhbC1mb290ZXItYm9yZGVyLWNvbG9yOiAgICAgICAgICRtb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1ib3JkZXItd2lkdGg6ICAgICAgICAgJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJG1vZGFsLWZvb3Rlci1ib3JkZXItd2lkdGg6ICAgICAgICAgJG1vZGFsLWhlYWRlci1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLXBhZGRpbmcteTogICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1wYWRkaW5nLXg6ICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItcGFkZGluZzogICAgICAgICAgICAgICRtb2RhbC1oZWFkZXItcGFkZGluZy15ICRtb2RhbC1oZWFkZXItcGFkZGluZy14ICFkZWZhdWx0OyAvLyBLZWVwIHRoaXMgZm9yIGJhY2t3YXJkcyBjb21wYXRpYmlsaXR5XG5cbiRtb2RhbC14bDogICAgICAgICAgICAgICAgICAgICAgICAgIDExNDBweCAhZGVmYXVsdDtcbiRtb2RhbC1sZzogICAgICAgICAgICAgICAgICAgICAgICAgIDgwMHB4ICFkZWZhdWx0O1xuJG1vZGFsLW1kOiAgICAgICAgICAgICAgICAgICAgICAgICAgNTAwcHggIWRlZmF1bHQ7XG4kbW9kYWwtc206ICAgICAgICAgICAgICAgICAgICAgICAgICAzMDBweCAhZGVmYXVsdDtcblxuJG1vZGFsLWZhZGUtdHJhbnNmb3JtOiAgICAgICAgICAgICAgdHJhbnNsYXRlKDAsIC01MHB4KSAhZGVmYXVsdDtcbiRtb2RhbC1zaG93LXRyYW5zZm9ybTogICAgICAgICAgICAgIG5vbmUgIWRlZmF1bHQ7XG4kbW9kYWwtdHJhbnNpdGlvbjogICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gLjNzIGVhc2Utb3V0ICFkZWZhdWx0O1xuJG1vZGFsLXNjYWxlLXRyYW5zZm9ybTogICAgICAgICAgICAgc2NhbGUoMS4wMikgIWRlZmF1bHQ7XG5cblxuLy8gQWxlcnRzXG4vL1xuLy8gRGVmaW5lIGFsZXJ0IGNvbG9ycywgYm9yZGVyIHJhZGl1cywgYW5kIHBhZGRpbmcuXG5cbiRhbGVydC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRhbGVydC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG4kYWxlcnQtbWFyZ2luLWJvdHRvbTogICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGFsZXJ0LWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kYWxlcnQtbGluay1mb250LXdlaWdodDogICAgICAgICAgICAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcbiRhbGVydC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG5cbiRhbGVydC1iZy1sZXZlbDogICAgICAgICAgICAgICAgICAgIC0xMCAhZGVmYXVsdDtcbiRhbGVydC1ib3JkZXItbGV2ZWw6ICAgICAgICAgICAgICAgIC05ICFkZWZhdWx0O1xuJGFsZXJ0LWNvbG9yLWxldmVsOiAgICAgICAgICAgICAgICAgNiAhZGVmYXVsdDtcblxuXG4vLyBQcm9ncmVzcyBiYXJzXG5cbiRwcm9ncmVzcy1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAuNzUgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmc6ICAgICAgICAgICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRwcm9ncmVzcy1ib3gtc2hhZG93OiAgICAgICAgICAgICAgIGluc2V0IDAgLjFyZW0gLjFyZW0gcmdiYSgkYmxhY2ssIC4xKSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iYXItY29sb3I6ICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iYXItYmc6ICAgICAgICAgICAgICAgICAgIHRoZW1lLWNvbG9yKFwicHJpbWFyeVwiKSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iYXItYW5pbWF0aW9uLXRpbWluZzogICAgIDFzIGxpbmVhciBpbmZpbml0ZSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iYXItdHJhbnNpdGlvbjogICAgICAgICAgIHdpZHRoIC42cyBlYXNlICFkZWZhdWx0O1xuXG5cbi8vIExpc3QgZ3JvdXBcblxuJGxpc3QtZ3JvdXAtY29sb3I6ICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWJnOiAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWJvcmRlci1jb2xvcjogICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMTI1KSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWJvcmRlci13aWR0aDogICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXk6ICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXg6ICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtaG92ZXItYmc6ICAgICAgICAgICAgICAgJGdyYXktMTAwICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aXZlLWNvbG9yOiAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3RpdmUtYmc6ICAgICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGl2ZS1ib3JkZXItY29sb3I6ICAgICRsaXN0LWdyb3VwLWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtZGlzYWJsZWQtY29sb3I6ICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtZGlzYWJsZWQtYmc6ICAgICAgICAgICAgJGxpc3QtZ3JvdXAtYmcgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWFjdGlvbi1jb2xvcjogICAgICAgICAgICRncmF5LTcwMCAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGlvbi1ob3Zlci1jb2xvcjogICAgICRsaXN0LWdyb3VwLWFjdGlvbi1jb2xvciAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1jb2xvcjogICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWJnOiAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG5cblxuLy8gSW1hZ2UgdGh1bWJuYWlsc1xuXG4kdGh1bWJuYWlsLXBhZGRpbmc6ICAgICAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJnOiAgICAgICAgICAgICAgICAgICAgICAkYm9keS1iZyAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJvcmRlci1jb2xvcjogICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYm94LXNoYWRvdzogICAgICAgICAgICAgIDAgMXB4IDJweCByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XG5cblxuLy8gRmlndXJlc1xuXG4kZmlndXJlLWNhcHRpb24tZm9udC1zaXplOiAgICAgICAgICA5MCUgIWRlZmF1bHQ7XG4kZmlndXJlLWNhcHRpb24tY29sb3I6ICAgICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG5cblxuLy8gQnJlYWRjcnVtYnNcblxuJGJyZWFkY3J1bWItZm9udC1zaXplOiAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcblxuJGJyZWFkY3J1bWItcGFkZGluZy15OiAgICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItcGFkZGluZy14OiAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWl0ZW0tcGFkZGluZzogICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuXG4kYnJlYWRjcnVtYi1tYXJnaW4tYm90dG9tOiAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuXG4kYnJlYWRjcnVtYi1iZzogICAgICAgICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1kaXZpZGVyLWNvbG9yOiAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1hY3RpdmUtY29sb3I6ICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1kaXZpZGVyOiAgICAgICAgICAgICAgICBxdW90ZShcIi9cIikgIWRlZmF1bHQ7XG5cbiRicmVhZGNydW1iLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuXG5cbi8vIENhcm91c2VsXG5cbiRjYXJvdXNlbC1jb250cm9sLWNvbG9yOiAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC13aWR0aDogICAgICAgICAgICAgMTUlICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtb3BhY2l0eTogICAgICAgICAgIC41ICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtaG92ZXItb3BhY2l0eTogICAgIC45ICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtdHJhbnNpdGlvbjogICAgICAgIG9wYWNpdHkgLjE1cyBlYXNlICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtaW5kaWNhdG9yLXdpZHRoOiAgICAgICAgICAgMzBweCAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItaGVpZ2h0OiAgICAgICAgICAzcHggIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLWhpdC1hcmVhLWhlaWdodDogMTBweCAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3Itc3BhY2VyOiAgICAgICAgICAzcHggIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLWFjdGl2ZS1iZzogICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci10cmFuc2l0aW9uOiAgICAgIG9wYWNpdHkgLjZzIGVhc2UgIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1jYXB0aW9uLXdpZHRoOiAgICAgICAgICAgICA3MCUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY2FwdGlvbi1jb2xvcjogICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtY29udHJvbC1pY29uLXdpZHRoOiAgICAgICAgMjBweCAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uLWJnOiAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgZmlsbD0nI3skY2Fyb3VzZWwtY29udHJvbC1jb2xvcn0nIHdpZHRoPSc4JyBoZWlnaHQ9JzgnIHZpZXdCb3g9JzAgMCA4IDgnPjxwYXRoIGQ9J001LjI1IDBsLTQgNCA0IDQgMS41LTEuNUw0LjI1IDRsMi41LTIuNUw1LjI1IDB6Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uLWJnOiAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgZmlsbD0nI3skY2Fyb3VzZWwtY29udHJvbC1jb2xvcn0nIHdpZHRoPSc4JyBoZWlnaHQ9JzgnIHZpZXdCb3g9JzAgMCA4IDgnPjxwYXRoIGQ9J00yLjc1IDBsLTEuNSAxLjVMMy43NSA0bC0yLjUgMi41TDIuNzUgOGw0LTQtNC00eicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLXRyYW5zaXRpb24tZHVyYXRpb246ICAgICAgIC42cyAhZGVmYXVsdDtcbiRjYXJvdXNlbC10cmFuc2l0aW9uOiAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gJGNhcm91c2VsLXRyYW5zaXRpb24tZHVyYXRpb24gZWFzZS1pbi1vdXQgIWRlZmF1bHQ7IC8vIERlZmluZSB0cmFuc2Zvcm0gdHJhbnNpdGlvbiBmaXJzdCBpZiB1c2luZyBtdWx0aXBsZSB0cmFuc2l0aW9ucyAoZS5nLiwgYHRyYW5zZm9ybSAycyBlYXNlLCBvcGFjaXR5IC41cyBlYXNlLW91dGApXG5cblxuLy8gU3Bpbm5lcnNcblxuJHNwaW5uZXItd2lkdGg6ICAgICAgICAgICAycmVtICFkZWZhdWx0O1xuJHNwaW5uZXItaGVpZ2h0OiAgICAgICAgICAkc3Bpbm5lci13aWR0aCAhZGVmYXVsdDtcbiRzcGlubmVyLXZlcnRpY2FsLWFsaWduOiAgLS4xMjVlbSAhZGVmYXVsdDtcbiRzcGlubmVyLWJvcmRlci13aWR0aDogICAgLjI1ZW0gIWRlZmF1bHQ7XG5cbiRzcGlubmVyLXdpZHRoLXNtOiAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRzcGlubmVyLWhlaWdodC1zbTogICAgICAgJHNwaW5uZXItd2lkdGgtc20gIWRlZmF1bHQ7XG4kc3Bpbm5lci1ib3JkZXItd2lkdGgtc206IC4yZW0gIWRlZmF1bHQ7XG5cblxuLy8gQ2xvc2VcblxuJGNsb3NlLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS41ICFkZWZhdWx0O1xuJGNsb3NlLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG4kY2xvc2UtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAkYmxhY2sgIWRlZmF1bHQ7XG4kY2xvc2UtdGV4dC1zaGFkb3c6ICAgICAgICAgICAgICAgICAwIDFweCAwICR3aGl0ZSAhZGVmYXVsdDtcblxuXG4vLyBDb2RlXG5cbiRjb2RlLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgIDg3LjUlICFkZWZhdWx0O1xuJGNvZGUtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgJHBpbmsgIWRlZmF1bHQ7XG5cbiRrYmQtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAgIC4ycmVtICFkZWZhdWx0O1xuJGtiZC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgICAgLjRyZW0gIWRlZmF1bHQ7XG4ka2JkLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAkY29kZS1mb250LXNpemUgIWRlZmF1bHQ7XG4ka2JkLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4ka2JkLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ3JheS05MDAgIWRlZmF1bHQ7XG5cbiRwcmUtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICRncmF5LTkwMCAhZGVmYXVsdDtcbiRwcmUtc2Nyb2xsYWJsZS1tYXgtaGVpZ2h0OiAgICAgICAgIDM0MHB4ICFkZWZhdWx0O1xuXG5cbi8vIFV0aWxpdGllc1xuXG4kZGlzcGxheXM6IG5vbmUsIGlubGluZSwgaW5saW5lLWJsb2NrLCBibG9jaywgdGFibGUsIHRhYmxlLXJvdywgdGFibGUtY2VsbCwgZmxleCwgaW5saW5lLWZsZXggIWRlZmF1bHQ7XG4kb3ZlcmZsb3dzOiBhdXRvLCBoaWRkZW4gIWRlZmF1bHQ7XG4kcG9zaXRpb25zOiBzdGF0aWMsIHJlbGF0aXZlLCBhYnNvbHV0ZSwgZml4ZWQsIHN0aWNreSAhZGVmYXVsdDtcbiR1c2VyLXNlbGVjdHM6IGFsbCwgYXV0bywgbm9uZSAhZGVmYXVsdDtcblxuXG4vLyBQcmludGluZ1xuXG4kcHJpbnQtcGFnZS1zaXplOiAgICAgICAgICAgICAgICAgICBhMyAhZGVmYXVsdDtcbiRwcmludC1ib2R5LW1pbi13aWR0aDogICAgICAgICAgICAgIG1hcC1nZXQoJGdyaWQtYnJlYWtwb2ludHMsIFwibGdcIikgIWRlZmF1bHQ7XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBwcm9wZXJ0eS1ibGFja2xpc3QsIHNjc3MvZG9sbGFyLXZhcmlhYmxlLWRlZmF1bHRcblxuLy8gU0NTUyBSRlMgbWl4aW5cbi8vXG4vLyBBdXRvbWF0ZWQgcmVzcG9uc2l2ZSBmb250IHNpemVzXG4vL1xuLy8gTGljZW5zZWQgdW5kZXIgTUlUIChodHRwczovL2dpdGh1Yi5jb20vdHdicy9yZnMvYmxvYi92OC54L0xJQ0VOU0UpXG5cbi8vIENvbmZpZ3VyYXRpb25cblxuLy8gQmFzZSBmb250IHNpemVcbiRyZnMtYmFzZS1mb250LXNpemU6IDEuMjVyZW0gIWRlZmF1bHQ7XG4kcmZzLWZvbnQtc2l6ZS11bml0OiByZW0gIWRlZmF1bHQ7XG5cbkBpZiAkcmZzLWZvbnQtc2l6ZS11bml0ICE9IHJlbSBhbmQgJHJmcy1mb250LXNpemUtdW5pdCAhPSBweCB7XG4gIEBlcnJvciBcImAjeyRyZnMtZm9udC1zaXplLXVuaXR9YCBpcyBub3QgYSB2YWxpZCB1bml0IGZvciAkcmZzLWZvbnQtc2l6ZS11bml0LiBVc2UgYHB4YCBvciBgcmVtYC5cIjtcbn1cblxuLy8gQnJlYWtwb2ludCBhdCB3aGVyZSBmb250LXNpemUgc3RhcnRzIGRlY3JlYXNpbmcgaWYgc2NyZWVuIHdpZHRoIGlzIHNtYWxsZXJcbiRyZnMtYnJlYWtwb2ludDogMTIwMHB4ICFkZWZhdWx0O1xuJHJmcy1icmVha3BvaW50LXVuaXQ6IHB4ICFkZWZhdWx0O1xuXG5AaWYgJHJmcy1icmVha3BvaW50LXVuaXQgIT0gcHggYW5kICRyZnMtYnJlYWtwb2ludC11bml0ICE9IGVtIGFuZCAkcmZzLWJyZWFrcG9pbnQtdW5pdCAhPSByZW0ge1xuICBAZXJyb3IgXCJgI3skcmZzLWJyZWFrcG9pbnQtdW5pdH1gIGlzIG5vdCBhIHZhbGlkIHVuaXQgZm9yICRyZnMtYnJlYWtwb2ludC11bml0LiBVc2UgYHB4YCwgYGVtYCBvciBgcmVtYC5cIjtcbn1cblxuLy8gUmVzaXplIGZvbnQgc2l6ZSBiYXNlZCBvbiBzY3JlZW4gaGVpZ2h0IGFuZCB3aWR0aFxuJHJmcy10d28tZGltZW5zaW9uYWw6IGZhbHNlICFkZWZhdWx0O1xuXG4vLyBGYWN0b3Igb2YgZGVjcmVhc2VcbiRyZnMtZmFjdG9yOiAxMCAhZGVmYXVsdDtcblxuQGlmIHR5cGUtb2YoJHJmcy1mYWN0b3IpICE9IFwibnVtYmVyXCIgb3IgJHJmcy1mYWN0b3IgPD0gMSB7XG4gIEBlcnJvciBcImAjeyRyZnMtZmFjdG9yfWAgaXMgbm90IGEgdmFsaWQgICRyZnMtZmFjdG9yLCBpdCBtdXN0IGJlIGdyZWF0ZXIgdGhhbiAxLlwiO1xufVxuXG4vLyBHZW5lcmF0ZSBlbmFibGUgb3IgZGlzYWJsZSBjbGFzc2VzLiBQb3NzaWJpbGl0aWVzOiBmYWxzZSwgXCJlbmFibGVcIiBvciBcImRpc2FibGVcIlxuJHJmcy1jbGFzczogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vIDEgcmVtID0gJHJmcy1yZW0tdmFsdWUgcHhcbiRyZnMtcmVtLXZhbHVlOiAxNiAhZGVmYXVsdDtcblxuLy8gU2FmYXJpIGlmcmFtZSByZXNpemUgYnVnOiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9yZnMvaXNzdWVzLzE0XG4kcmZzLXNhZmFyaS1pZnJhbWUtcmVzaXplLWJ1Zy1maXg6IGZhbHNlICFkZWZhdWx0O1xuXG4vLyBEaXNhYmxlIFJGUyBieSBzZXR0aW5nICRlbmFibGUtcmVzcG9uc2l2ZS1mb250LXNpemVzIHRvIGZhbHNlXG4kZW5hYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplczogdHJ1ZSAhZGVmYXVsdDtcblxuLy8gQ2FjaGUgJHJmcy1iYXNlLWZvbnQtc2l6ZSB1bml0XG4kcmZzLWJhc2UtZm9udC1zaXplLXVuaXQ6IHVuaXQoJHJmcy1iYXNlLWZvbnQtc2l6ZSk7XG5cbkBmdW5jdGlvbiBkaXZpZGUoJGRpdmlkZW5kLCAkZGl2aXNvciwgJHByZWNpc2lvbjogMTApIHtcbiAgJHNpZ246IGlmKCRkaXZpZGVuZCA+IDAgYW5kICRkaXZpc29yID4gMCBvciAkZGl2aWRlbmQgPCAwIGFuZCAkZGl2aXNvciA8IDAsIDEsIC0xKTtcbiAgJGRpdmlkZW5kOiBhYnMoJGRpdmlkZW5kKTtcbiAgJGRpdmlzb3I6IGFicygkZGl2aXNvcik7XG4gIEBpZiAkZGl2aWRlbmQgPT0gMCB7XG4gICAgQHJldHVybiAwO1xuICB9XG4gIEBpZiAkZGl2aXNvciA9PSAwIHtcbiAgICBAZXJyb3IgXCJDYW5ub3QgZGl2aWRlIGJ5IDBcIjtcbiAgfVxuICAkcmVtYWluZGVyOiAkZGl2aWRlbmQ7XG4gICRyZXN1bHQ6IDA7XG4gICRmYWN0b3I6IDEwO1xuICBAd2hpbGUgKCRyZW1haW5kZXIgPiAwIGFuZCAkcHJlY2lzaW9uID49IDApIHtcbiAgICAkcXVvdGllbnQ6IDA7XG4gICAgQHdoaWxlICgkcmVtYWluZGVyID49ICRkaXZpc29yKSB7XG4gICAgICAkcmVtYWluZGVyOiAkcmVtYWluZGVyIC0gJGRpdmlzb3I7XG4gICAgICAkcXVvdGllbnQ6ICRxdW90aWVudCArIDE7XG4gICAgfVxuICAgICRyZXN1bHQ6ICRyZXN1bHQgKiAxMCArICRxdW90aWVudDtcbiAgICAkZmFjdG9yOiAkZmFjdG9yICogLjE7XG4gICAgJHJlbWFpbmRlcjogJHJlbWFpbmRlciAqIDEwO1xuICAgICRwcmVjaXNpb246ICRwcmVjaXNpb24gLSAxO1xuICAgIEBpZiAoJHByZWNpc2lvbiA8IDAgYW5kICRyZW1haW5kZXIgPj0gJGRpdmlzb3IgKiA1KSB7XG4gICAgICAkcmVzdWx0OiAkcmVzdWx0ICsgMTtcbiAgICB9XG4gIH1cbiAgJHJlc3VsdDogJHJlc3VsdCAqICRmYWN0b3IgKiAkc2lnbjtcbiAgJGRpdmlkZW5kLXVuaXQ6IHVuaXQoJGRpdmlkZW5kKTtcbiAgJGRpdmlzb3ItdW5pdDogdW5pdCgkZGl2aXNvcik7XG4gICR1bml0LW1hcDogKFxuICAgIFwicHhcIjogMXB4LFxuICAgIFwicmVtXCI6IDFyZW0sXG4gICAgXCJlbVwiOiAxZW0sXG4gICAgXCIlXCI6IDElXG4gICk7XG4gIEBpZiAoJGRpdmlkZW5kLXVuaXQgIT0gJGRpdmlzb3ItdW5pdCBhbmQgbWFwLWhhcy1rZXkoJHVuaXQtbWFwLCAkZGl2aWRlbmQtdW5pdCkpIHtcbiAgICAkcmVzdWx0OiAkcmVzdWx0ICogbWFwLWdldCgkdW5pdC1tYXAsICRkaXZpZGVuZC11bml0KTtcbiAgfVxuICBAcmV0dXJuICRyZXN1bHQ7XG59XG5cbi8vIFJlbW92ZSBweC11bml0IGZyb20gJHJmcy1iYXNlLWZvbnQtc2l6ZSBmb3IgY2FsY3VsYXRpb25zXG5AaWYgJHJmcy1iYXNlLWZvbnQtc2l6ZS11bml0ID09IFwicHhcIiB7XG4gICRyZnMtYmFzZS1mb250LXNpemU6IGRpdmlkZSgkcmZzLWJhc2UtZm9udC1zaXplLCAkcmZzLWJhc2UtZm9udC1zaXplICogMCArIDEpO1xufVxuQGVsc2UgaWYgJHJmcy1iYXNlLWZvbnQtc2l6ZS11bml0ID09IFwicmVtXCIge1xuICAkcmZzLWJhc2UtZm9udC1zaXplOiBkaXZpZGUoJHJmcy1iYXNlLWZvbnQtc2l6ZSwgZGl2aWRlKCRyZnMtYmFzZS1mb250LXNpemUgKiAwICsgMSwgJHJmcy1yZW0tdmFsdWUpKTtcbn1cblxuLy8gQ2FjaGUgJHJmcy1icmVha3BvaW50IHVuaXQgdG8gcHJldmVudCBtdWx0aXBsZSBjYWxsc1xuJHJmcy1icmVha3BvaW50LXVuaXQtY2FjaGU6IHVuaXQoJHJmcy1icmVha3BvaW50KTtcblxuLy8gUmVtb3ZlIHVuaXQgZnJvbSAkcmZzLWJyZWFrcG9pbnQgZm9yIGNhbGN1bGF0aW9uc1xuQGlmICRyZnMtYnJlYWtwb2ludC11bml0LWNhY2hlID09IFwicHhcIiB7XG4gICRyZnMtYnJlYWtwb2ludDogZGl2aWRlKCRyZnMtYnJlYWtwb2ludCwgJHJmcy1icmVha3BvaW50ICogMCArIDEpO1xufVxuQGVsc2UgaWYgJHJmcy1icmVha3BvaW50LXVuaXQtY2FjaGUgPT0gXCJyZW1cIiBvciAkcmZzLWJyZWFrcG9pbnQtdW5pdC1jYWNoZSA9PSBcImVtXCIge1xuICAkcmZzLWJyZWFrcG9pbnQ6IGRpdmlkZSgkcmZzLWJyZWFrcG9pbnQsIGRpdmlkZSgkcmZzLWJyZWFrcG9pbnQgKiAwICsgMSwgJHJmcy1yZW0tdmFsdWUpKTtcbn1cblxuLy8gSW50ZXJuYWwgbWl4aW4gdGhhdCBhZGRzIGRpc2FibGUgY2xhc3NlcyB0byB0aGUgc2VsZWN0b3IgaWYgbmVlZGVkLlxuQG1peGluIF9yZnMtZGlzYWJsZS1jbGFzcyB7XG4gIEBpZiAkcmZzLWNsYXNzID09IFwiZGlzYWJsZVwiIHtcbiAgICAvLyBBZGRpbmcgYW4gZXh0cmEgY2xhc3MgaW5jcmVhc2VzIHNwZWNpZmljaXR5LCB3aGljaCBwcmV2ZW50cyB0aGUgbWVkaWEgcXVlcnkgdG8gb3ZlcnJpZGUgdGhlIGZvbnQgc2l6ZVxuICAgICYsXG4gICAgLmRpc2FibGUtcmVzcG9uc2l2ZS1mb250LXNpemUgJixcbiAgICAmLmRpc2FibGUtcmVzcG9uc2l2ZS1mb250LXNpemUge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBJbnRlcm5hbCBtaXhpbiB0aGF0IGFkZHMgZW5hYmxlIGNsYXNzZXMgdG8gdGhlIHNlbGVjdG9yIGlmIG5lZWRlZC5cbkBtaXhpbiBfcmZzLWVuYWJsZS1jbGFzcyB7XG4gIEBpZiAkcmZzLWNsYXNzID09IFwiZW5hYmxlXCIge1xuICAgIC5lbmFibGUtcmVzcG9uc2l2ZS1mb250LXNpemUgJixcbiAgICAmLmVuYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vIEludGVybmFsIG1peGluIHVzZWQgdG8gZGV0ZXJtaW5lIHdoaWNoIG1lZGlhIHF1ZXJ5IG5lZWRzIHRvIGJlIHVzZWRcbkBtaXhpbiBfcmZzLW1lZGlhLXF1ZXJ5KCRtcS12YWx1ZSkge1xuICBAaWYgJHJmcy10d28tZGltZW5zaW9uYWwge1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAjeyRtcS12YWx1ZX0pLCAobWF4LWhlaWdodDogI3skbXEtdmFsdWV9KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAjeyRtcS12YWx1ZX0pIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLyBSZXNwb25zaXZlIGZvbnQgc2l6ZSBtaXhpblxuQG1peGluIHJmcygkZnMsICRpbXBvcnRhbnQ6IGZhbHNlKSB7XG4gIC8vIENhY2hlICRmcyB1bml0XG4gICRmcy11bml0OiBpZih0eXBlLW9mKCRmcykgPT0gXCJudW1iZXJcIiwgdW5pdCgkZnMpLCBmYWxzZSk7XG5cbiAgLy8gQWRkICFpbXBvcnRhbnQgc3VmZml4IGlmIG5lZWRlZFxuICAkcmZzLXN1ZmZpeDogaWYoJGltcG9ydGFudCwgXCIgIWltcG9ydGFudFwiLCBcIlwiKTtcblxuICAvLyBJZiAkZnMgaXNuJ3QgYSBudW1iZXIgKGxpa2UgaW5oZXJpdCkgb3IgJGZzIGhhcyBhIHVuaXQgKG5vdCBweCBvciByZW0sIGxpa2UgMS41ZW0pIG9yICQgaXMgMCwganVzdCBwcmludCB0aGUgdmFsdWVcbiAgQGlmIG5vdCAkZnMtdW5pdCBvciAkZnMtdW5pdCAhPSBcIlwiIGFuZCAkZnMtdW5pdCAhPSBcInB4XCIgYW5kICRmcy11bml0ICE9IFwicmVtXCIgb3IgJGZzID09IDAge1xuICAgIGZvbnQtc2l6ZTogI3skZnN9I3skcmZzLXN1ZmZpeH07XG4gIH1cbiAgQGVsc2Uge1xuICAgIC8vIFJlbW92ZSB1bml0IGZyb20gJGZzIGZvciBjYWxjdWxhdGlvbnNcbiAgICBAaWYgJGZzLXVuaXQgPT0gXCJweFwiIHtcbiAgICAgICRmczogZGl2aWRlKCRmcywgJGZzICogMCArIDEpO1xuICAgIH1cbiAgICBAZWxzZSBpZiAkZnMtdW5pdCA9PSBcInJlbVwiIHtcbiAgICAgICRmczogZGl2aWRlKCRmcywgZGl2aWRlKCRmcyAqIDAgKyAxLCAkcmZzLXJlbS12YWx1ZSkpO1xuICAgIH1cblxuICAgIC8vIFNldCBkZWZhdWx0IGZvbnQgc2l6ZVxuICAgICRyZnMtc3RhdGljOiBpZigkcmZzLWZvbnQtc2l6ZS11bml0ID09IHJlbSwgI3tkaXZpZGUoJGZzLCAkcmZzLXJlbS12YWx1ZSl9cmVtLCAjeyRmc31weCk7XG5cbiAgICAvLyBPbmx5IGFkZCB0aGUgbWVkaWEgcXVlcnkgaWYgdGhlIGZvbnQgc2l6ZSBpcyBiaWdnZXIgdGhhbiB0aGUgbWluaW11bSBmb250IHNpemVcbiAgICBAaWYgJGZzIDw9ICRyZnMtYmFzZS1mb250LXNpemUgb3Igbm90ICRlbmFibGUtcmVzcG9uc2l2ZS1mb250LXNpemVzIHtcbiAgICAgIGZvbnQtc2l6ZTogI3skcmZzLXN0YXRpY30jeyRyZnMtc3VmZml4fTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgLy8gQ2FsY3VsYXRlIHRoZSBtaW5pbXVtIGZvbnQgc2l6ZSBmb3IgJGZzXG4gICAgICAkZnMtbWluOiAkcmZzLWJhc2UtZm9udC1zaXplICsgZGl2aWRlKCRmcyAtICRyZnMtYmFzZS1mb250LXNpemUsICRyZnMtZmFjdG9yKTtcblxuICAgICAgLy8gQ2FsY3VsYXRlIGRpZmZlcmVuY2UgYmV0d2VlbiAkZnMgYW5kIHRoZSBtaW5pbXVtIGZvbnQgc2l6ZVxuICAgICAgJGZzLWRpZmY6ICRmcyAtICRmcy1taW47XG5cbiAgICAgIC8vIEJhc2UgZm9udC1zaXplIGZvcm1hdHRpbmdcbiAgICAgICRtaW4td2lkdGg6IGlmKCRyZnMtZm9udC1zaXplLXVuaXQgPT0gcmVtLCAje2RpdmlkZSgkZnMtbWluLCAkcmZzLXJlbS12YWx1ZSl9cmVtLCAjeyRmcy1taW59cHgpO1xuXG4gICAgICAvLyBVc2UgYHZtaW5gIGlmIHR3by1kaW1lbnNpb25hbCBpcyBlbmFibGVkXG4gICAgICAkdmFyaWFibGUtdW5pdDogaWYoJHJmcy10d28tZGltZW5zaW9uYWwsIHZtaW4sIHZ3KTtcblxuICAgICAgLy8gQ2FsY3VsYXRlIHRoZSB2YXJpYWJsZSB3aWR0aCBiZXR3ZWVuIDAgYW5kICRyZnMtYnJlYWtwb2ludFxuICAgICAgJHZhcmlhYmxlLXdpZHRoOiAje2RpdmlkZSgkZnMtZGlmZiAqIDEwMCwgJHJmcy1icmVha3BvaW50KX0jeyR2YXJpYWJsZS11bml0fTtcblxuICAgICAgLy8gU2V0IHRoZSBjYWxjdWxhdGVkIGZvbnQtc2l6ZVxuICAgICAgJHJmcy1mbHVpZDogY2FsYygjeyRtaW4td2lkdGh9ICsgI3skdmFyaWFibGUtd2lkdGh9KSAjeyRyZnMtc3VmZml4fTtcblxuICAgICAgLy8gQnJlYWtwb2ludCBmb3JtYXR0aW5nXG4gICAgICAkbXEtdmFsdWU6IGlmKCRyZnMtYnJlYWtwb2ludC11bml0ID09IHB4LCAjeyRyZnMtYnJlYWtwb2ludH1weCwgI3tkaXZpZGUoJHJmcy1icmVha3BvaW50LCAkcmZzLXJlbS12YWx1ZSl9I3skcmZzLWJyZWFrcG9pbnQtdW5pdH0pO1xuXG4gICAgICBAaW5jbHVkZSBfcmZzLWRpc2FibGUtY2xhc3Mge1xuICAgICAgICBmb250LXNpemU6ICN7JHJmcy1zdGF0aWN9I3skcmZzLXN1ZmZpeH07XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIF9yZnMtbWVkaWEtcXVlcnkoJG1xLXZhbHVlKSB7XG4gICAgICAgIEBpbmNsdWRlIF9yZnMtZW5hYmxlLWNsYXNzIHtcbiAgICAgICAgICBmb250LXNpemU6ICRyZnMtZmx1aWQ7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBJbmNsdWRlIHNhZmFyaSBpZnJhbWUgcmVzaXplIGZpeCBpZiBuZWVkZWRcbiAgICAgICAgbWluLXdpZHRoOiBpZigkcmZzLXNhZmFyaS1pZnJhbWUtcmVzaXplLWJ1Zy1maXgsICgwICogMXZ3KSwgbnVsbCk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIFRoZSBmb250LXNpemUgJiByZXNwb25zaXZlLWZvbnQtc2l6ZSBtaXhpbnMgdXNlIFJGUyB0byByZXNjYWxlIHRoZSBmb250IHNpemVcbkBtaXhpbiBmb250LXNpemUoJGZzLCAkaW1wb3J0YW50OiBmYWxzZSkge1xuICBAaW5jbHVkZSByZnMoJGZzLCAkaW1wb3J0YW50KTtcbn1cblxuQG1peGluIHJlc3BvbnNpdmUtZm9udC1zaXplKCRmcywgJGltcG9ydGFudDogZmFsc2UpIHtcbiAgQGluY2x1ZGUgcmZzKCRmcywgJGltcG9ydGFudCk7XG59XG4iLCIvLyBIb3ZlciBtaXhpbiBhbmQgYCRlbmFibGUtaG92ZXItbWVkaWEtcXVlcnlgIGFyZSBkZXByZWNhdGVkLlxuLy9cbi8vIE9yaWdpbmFsbHkgYWRkZWQgZHVyaW5nIG91ciBhbHBoYXMgYW5kIG1haW50YWluZWQgZHVyaW5nIGJldGFzLCB0aGlzIG1peGluIHdhc1xuLy8gZGVzaWduZWQgdG8gcHJldmVudCBgOmhvdmVyYCBzdGlja2luZXNzIG9uIGlPUy1hbiBpc3N1ZSB3aGVyZSBob3ZlciBzdHlsZXNcbi8vIHdvdWxkIHBlcnNpc3QgYWZ0ZXIgaW5pdGlhbCB0b3VjaC5cbi8vXG4vLyBGb3IgYmFja3dhcmQgY29tcGF0aWJpbGl0eSwgd2UndmUga2VwdCB0aGVzZSBtaXhpbnMgYW5kIHVwZGF0ZWQgdGhlbSB0b1xuLy8gYWx3YXlzIHJldHVybiB0aGVpciByZWd1bGFyIHBzZXVkby1jbGFzc2VzIGluc3RlYWQgb2YgYSBzaGltbWVkIG1lZGlhIHF1ZXJ5LlxuLy9cbi8vIElzc3VlOiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI1MTk1XG5cbkBtaXhpbiBob3ZlcigpIHtcbiAgJjpob3ZlciB7IEBjb250ZW50OyB9XG59XG5cbkBtaXhpbiBob3Zlci1mb2N1cygpIHtcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuQG1peGluIHBsYWluLWhvdmVyLWZvY3VzKCkge1xuICAmLFxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG5AbWl4aW4gaG92ZXItZm9jdXMtYWN0aXZlKCkge1xuICAmOmhvdmVyLFxuICAmOmZvY3VzLFxuICAmOmFjdGl2ZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLWxpc3QtY29tbWEtbmV3bGluZS1hZnRlclxuXG4vL1xuLy8gSGVhZGluZ3Ncbi8vXG5cbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYsXG4uaDEsIC5oMiwgLmgzLCAuaDQsIC5oNSwgLmg2IHtcbiAgbWFyZ2luLWJvdHRvbTogJGhlYWRpbmdzLW1hcmdpbi1ib3R0b207XG4gIGZvbnQtZmFtaWx5OiAkaGVhZGluZ3MtZm9udC1mYW1pbHk7XG4gIGZvbnQtd2VpZ2h0OiAkaGVhZGluZ3MtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkaGVhZGluZ3MtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaGVhZGluZ3MtY29sb3I7XG59XG5cbmgxLCAuaDEgeyBAaW5jbHVkZSBmb250LXNpemUoJGgxLWZvbnQtc2l6ZSk7IH1cbmgyLCAuaDIgeyBAaW5jbHVkZSBmb250LXNpemUoJGgyLWZvbnQtc2l6ZSk7IH1cbmgzLCAuaDMgeyBAaW5jbHVkZSBmb250LXNpemUoJGgzLWZvbnQtc2l6ZSk7IH1cbmg0LCAuaDQgeyBAaW5jbHVkZSBmb250LXNpemUoJGg0LWZvbnQtc2l6ZSk7IH1cbmg1LCAuaDUgeyBAaW5jbHVkZSBmb250LXNpemUoJGg1LWZvbnQtc2l6ZSk7IH1cbmg2LCAuaDYgeyBAaW5jbHVkZSBmb250LXNpemUoJGg2LWZvbnQtc2l6ZSk7IH1cblxuLmxlYWQge1xuICBAaW5jbHVkZSBmb250LXNpemUoJGxlYWQtZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRsZWFkLWZvbnQtd2VpZ2h0O1xufVxuXG4vLyBUeXBlIGRpc3BsYXkgY2xhc3Nlc1xuLmRpc3BsYXktMSB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZGlzcGxheTEtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkZGlzcGxheTEtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGRpc3BsYXktbGluZS1oZWlnaHQ7XG59XG4uZGlzcGxheS0yIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRkaXNwbGF5Mi1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRkaXNwbGF5Mi13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkZGlzcGxheS1saW5lLWhlaWdodDtcbn1cbi5kaXNwbGF5LTMge1xuICBAaW5jbHVkZSBmb250LXNpemUoJGRpc3BsYXkzLXNpemUpO1xuICBmb250LXdlaWdodDogJGRpc3BsYXkzLXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRkaXNwbGF5LWxpbmUtaGVpZ2h0O1xufVxuLmRpc3BsYXktNCB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZGlzcGxheTQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkZGlzcGxheTQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGRpc3BsYXktbGluZS1oZWlnaHQ7XG59XG5cblxuLy9cbi8vIEhvcml6b250YWwgcnVsZXNcbi8vXG5cbmhyIHtcbiAgbWFyZ2luLXRvcDogJGhyLW1hcmdpbi15O1xuICBtYXJnaW4tYm90dG9tOiAkaHItbWFyZ2luLXk7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXRvcDogJGhyLWJvcmRlci13aWR0aCBzb2xpZCAkaHItYm9yZGVyLWNvbG9yO1xufVxuXG5cbi8vXG4vLyBFbXBoYXNpc1xuLy9cblxuc21hbGwsXG4uc21hbGwge1xuICBAaW5jbHVkZSBmb250LXNpemUoJHNtYWxsLWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xufVxuXG5tYXJrLFxuLm1hcmsge1xuICBwYWRkaW5nOiAkbWFyay1wYWRkaW5nO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbWFyay1iZztcbn1cblxuXG4vL1xuLy8gTGlzdHNcbi8vXG5cbi5saXN0LXVuc3R5bGVkIHtcbiAgQGluY2x1ZGUgbGlzdC11bnN0eWxlZCgpO1xufVxuXG4vLyBJbmxpbmUgdHVybnMgbGlzdCBpdGVtcyBpbnRvIGlubGluZS1ibG9ja1xuLmxpc3QtaW5saW5lIHtcbiAgQGluY2x1ZGUgbGlzdC11bnN0eWxlZCgpO1xufVxuLmxpc3QtaW5saW5lLWl0ZW0ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tcmlnaHQ6ICRsaXN0LWlubGluZS1wYWRkaW5nO1xuICB9XG59XG5cblxuLy9cbi8vIE1pc2Ncbi8vXG5cbi8vIEJ1aWxkcyBvbiBgYWJicmBcbi5pbml0aWFsaXNtIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKDkwJSk7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi8vIEJsb2NrcXVvdGVzXG4uYmxvY2txdW90ZSB7XG4gIG1hcmdpbi1ib3R0b206ICRzcGFjZXI7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkYmxvY2txdW90ZS1mb250LXNpemUpO1xufVxuXG4uYmxvY2txdW90ZS1mb290ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRibG9ja3F1b3RlLXNtYWxsLWZvbnQtc2l6ZSk7XG4gIGNvbG9yOiAkYmxvY2txdW90ZS1zbWFsbC1jb2xvcjtcblxuICAmOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFwyMDE0XFwwMEEwXCI7IC8vIGVtIGRhc2gsIG5ic3BcbiAgfVxufVxuIiwiLy8gTGlzdHNcblxuLy8gVW5zdHlsZWQga2VlcHMgbGlzdCBpdGVtcyBibG9jayBsZXZlbCwganVzdCByZW1vdmVzIGRlZmF1bHQgYnJvd3NlciBwYWRkaW5nIGFuZCBsaXN0LXN0eWxlXG5AbWl4aW4gbGlzdC11bnN0eWxlZCgpIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuIiwiLy8gUmVzcG9uc2l2ZSBpbWFnZXMgKGVuc3VyZSBpbWFnZXMgZG9uJ3Qgc2NhbGUgYmV5b25kIHRoZWlyIHBhcmVudHMpXG4vL1xuLy8gVGhpcyBpcyBwdXJwb3NlZnVsbHkgb3B0LWluIHZpYSBhbiBleHBsaWNpdCBjbGFzcyByYXRoZXIgdGhhbiBiZWluZyB0aGUgZGVmYXVsdCBmb3IgYWxsIGA8aW1nPmBzLlxuLy8gV2UgcHJldmlvdXNseSB0cmllZCB0aGUgXCJpbWFnZXMgYXJlIHJlc3BvbnNpdmUgYnkgZGVmYXVsdFwiIGFwcHJvYWNoIGluIEJvb3RzdHJhcCB2Mixcbi8vIGFuZCBhYmFuZG9uZWQgaXQgaW4gQm9vdHN0cmFwIHYzIGJlY2F1c2UgaXQgYnJlYWtzIGxvdHMgb2YgdGhpcmQtcGFydHkgd2lkZ2V0cyAoaW5jbHVkaW5nIEdvb2dsZSBNYXBzKVxuLy8gd2hpY2ggd2VyZW4ndCBleHBlY3RpbmcgdGhlIGltYWdlcyB3aXRoaW4gdGhlbXNlbHZlcyB0byBiZSBpbnZvbHVudGFyaWx5IHJlc2l6ZWQuXG4vLyBTZWUgYWxzbyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE4MTc4XG4uaW1nLWZsdWlkIHtcbiAgQGluY2x1ZGUgaW1nLWZsdWlkKCk7XG59XG5cblxuLy8gSW1hZ2UgdGh1bWJuYWlsc1xuLmltZy10aHVtYm5haWwge1xuICBwYWRkaW5nOiAkdGh1bWJuYWlsLXBhZGRpbmc7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0aHVtYm5haWwtYmc7XG4gIGJvcmRlcjogJHRodW1ibmFpbC1ib3JkZXItd2lkdGggc29saWQgJHRodW1ibmFpbC1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJHRodW1ibmFpbC1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkdGh1bWJuYWlsLWJveC1zaGFkb3cpO1xuXG4gIC8vIEtlZXAgdGhlbSBhdCBtb3N0IDEwMCUgd2lkZVxuICBAaW5jbHVkZSBpbWctZmx1aWQoKTtcbn1cblxuLy9cbi8vIEZpZ3VyZXNcbi8vXG5cbi5maWd1cmUge1xuICAvLyBFbnN1cmVzIHRoZSBjYXB0aW9uJ3MgdGV4dCBhbGlnbnMgd2l0aCB0aGUgaW1hZ2UuXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLmZpZ3VyZS1pbWcge1xuICBtYXJnaW4tYm90dG9tOiAkc3BhY2VyICogLjU7XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG4uZmlndXJlLWNhcHRpb24ge1xuICBAaW5jbHVkZSBmb250LXNpemUoJGZpZ3VyZS1jYXB0aW9uLWZvbnQtc2l6ZSk7XG4gIGNvbG9yOiAkZmlndXJlLWNhcHRpb24tY29sb3I7XG59XG4iLCIvLyBJbWFnZSBNaXhpbnNcbi8vIC0gUmVzcG9uc2l2ZSBpbWFnZVxuLy8gLSBSZXRpbmEgaW1hZ2VcblxuXG4vLyBSZXNwb25zaXZlIGltYWdlXG4vL1xuLy8gS2VlcCBpbWFnZXMgZnJvbSBzY2FsaW5nIGJleW9uZCB0aGUgd2lkdGggb2YgdGhlaXIgcGFyZW50cy5cblxuQG1peGluIGltZy1mbHVpZCgpIHtcbiAgLy8gUGFydCAxOiBTZXQgYSBtYXhpbXVtIHJlbGF0aXZlIHRvIHRoZSBwYXJlbnRcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICAvLyBQYXJ0IDI6IE92ZXJyaWRlIHRoZSBoZWlnaHQgdG8gYXV0bywgb3RoZXJ3aXNlIGltYWdlcyB3aWxsIGJlIHN0cmV0Y2hlZFxuICAvLyB3aGVuIHNldHRpbmcgYSB3aWR0aCBhbmQgaGVpZ2h0IGF0dHJpYnV0ZSBvbiB0aGUgaW1nIGVsZW1lbnQuXG4gIGhlaWdodDogYXV0bztcbn1cblxuXG4vLyBSZXRpbmEgaW1hZ2Vcbi8vXG4vLyBTaG9ydCByZXRpbmEgbWl4aW4gZm9yIHNldHRpbmcgYmFja2dyb3VuZC1pbWFnZSBhbmQgLXNpemUuXG5cbkBtaXhpbiBpbWctcmV0aW5hKCRmaWxlLTF4LCAkZmlsZS0yeCwgJHdpZHRoLTF4LCAkaGVpZ2h0LTF4KSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgkZmlsZS0xeCk7XG5cbiAgLy8gQXV0b3ByZWZpeGVyIHRha2VzIGNhcmUgb2YgYWRkaW5nIC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbyBhbmQgLW8tbWluLWRldmljZS1waXhlbC1yYXRpbyxcbiAgLy8gYnV0IGRvZXNuJ3QgY29udmVydCBkcHB4PT5kcGkuXG4gIC8vIFRoZXJlJ3Mgbm8gc3VjaCB0aGluZyBhcyB1bnByZWZpeGVkIG1pbi1kZXZpY2UtcGl4ZWwtcmF0aW8gc2luY2UgaXQncyBub25zdGFuZGFyZC5cbiAgLy8gQ29tcGF0aWJpbGl0eSBpbmZvOiBodHRwczovL2Nhbml1c2UuY29tL2Nzcy1tZWRpYS1yZXNvbHV0aW9uXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi1yZXNvbHV0aW9uOiAxOTJkcGkpLCAvLyBJRTktMTEgZG9uJ3Qgc3VwcG9ydCBkcHB4XG4gICAgb25seSBzY3JlZW4gYW5kIChtaW4tcmVzb2x1dGlvbjogMmRwcHgpIHsgLy8gU3RhbmRhcmRpemVkXG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCRmaWxlLTJ4KTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6ICR3aWR0aC0xeCAkaGVpZ2h0LTF4O1xuICB9XG4gIEBpbmNsdWRlIGRlcHJlY2F0ZShcImBpbWctcmV0aW5hKClgXCIsIFwidjQuMy4wXCIsIFwidjVcIik7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3Rcbi8vIFNpbmdsZSBzaWRlIGJvcmRlci1yYWRpdXNcblxuLy8gSGVscGVyIGZ1bmN0aW9uIHRvIHJlcGxhY2UgbmVnYXRpdmUgdmFsdWVzIHdpdGggMFxuQGZ1bmN0aW9uIHZhbGlkLXJhZGl1cygkcmFkaXVzKSB7XG4gICRyZXR1cm46ICgpO1xuICBAZWFjaCAkdmFsdWUgaW4gJHJhZGl1cyB7XG4gICAgQGlmIHR5cGUtb2YoJHZhbHVlKSA9PSBudW1iZXIge1xuICAgICAgJHJldHVybjogYXBwZW5kKCRyZXR1cm4sIG1heCgkdmFsdWUsIDApKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgICRyZXR1cm46IGFwcGVuZCgkcmV0dXJuLCAkdmFsdWUpO1xuICAgIH1cbiAgfVxuICBAcmV0dXJuICRyZXR1cm47XG59XG5cbkBtaXhpbiBib3JkZXItcmFkaXVzKCRyYWRpdXM6ICRib3JkZXItcmFkaXVzLCAkZmFsbGJhY2stYm9yZGVyLXJhZGl1czogZmFsc2UpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG4gIEBlbHNlIGlmICRmYWxsYmFjay1ib3JkZXItcmFkaXVzICE9IGZhbHNlIHtcbiAgICBib3JkZXItcmFkaXVzOiAkZmFsbGJhY2stYm9yZGVyLXJhZGl1cztcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLXRvcC1yYWRpdXMoJHJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLXJpZ2h0LXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLWJvdHRvbS1yYWRpdXMoJHJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLWxlZnQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLXRvcC1sZWZ0LXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLXRvcC1yaWdodC1yYWRpdXMoJHJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXMoJHJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cbiIsIi8vIElubGluZSBjb2RlXG5jb2RlIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRjb2RlLWZvbnQtc2l6ZSk7XG4gIGNvbG9yOiAkY29kZS1jb2xvcjtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuXG4gIC8vIFN0cmVhbWxpbmUgdGhlIHN0eWxlIHdoZW4gaW5zaWRlIGFuY2hvcnMgdG8gYXZvaWQgYnJva2VuIHVuZGVybGluZSBhbmQgbW9yZVxuICBhID4gJiB7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gIH1cbn1cblxuLy8gVXNlciBpbnB1dCB0eXBpY2FsbHkgZW50ZXJlZCB2aWEga2V5Ym9hcmRcbmtiZCB7XG4gIHBhZGRpbmc6ICRrYmQtcGFkZGluZy15ICRrYmQtcGFkZGluZy14O1xuICBAaW5jbHVkZSBmb250LXNpemUoJGtiZC1mb250LXNpemUpO1xuICBjb2xvcjogJGtiZC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGtiZC1iZztcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cy1zbSk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGtiZC1ib3gtc2hhZG93KTtcblxuICBrYmQge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgQGluY2x1ZGUgZm9udC1zaXplKDEwMCUpO1xuICAgIGZvbnQtd2VpZ2h0OiAkbmVzdGVkLWtiZC1mb250LXdlaWdodDtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO1xuICB9XG59XG5cbi8vIEJsb2NrcyBvZiBjb2RlXG5wcmUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRjb2RlLWZvbnQtc2l6ZSk7XG4gIGNvbG9yOiAkcHJlLWNvbG9yO1xuXG4gIC8vIEFjY291bnQgZm9yIHNvbWUgY29kZSBvdXRwdXRzIHRoYXQgcGxhY2UgY29kZSB0YWdzIGluIHByZSB0YWdzXG4gIGNvZGUge1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZShpbmhlcml0KTtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB3b3JkLWJyZWFrOiBub3JtYWw7XG4gIH1cbn1cblxuLy8gRW5hYmxlIHNjcm9sbGFibGUgYmxvY2tzIG9mIGNvZGVcbi5wcmUtc2Nyb2xsYWJsZSB7XG4gIG1heC1oZWlnaHQ6ICRwcmUtc2Nyb2xsYWJsZS1tYXgtaGVpZ2h0O1xuICBvdmVyZmxvdy15OiBzY3JvbGw7XG59XG4iLCIvLyBDb250YWluZXIgd2lkdGhzXG4vL1xuLy8gU2V0IHRoZSBjb250YWluZXIgd2lkdGgsIGFuZCBvdmVycmlkZSBpdCBmb3IgZml4ZWQgbmF2YmFycyBpbiBtZWRpYSBxdWVyaWVzLlxuXG5AaWYgJGVuYWJsZS1ncmlkLWNsYXNzZXMge1xuICAvLyBTaW5nbGUgY29udGFpbmVyIGNsYXNzIHdpdGggYnJlYWtwb2ludCBtYXgtd2lkdGhzXG4gIC5jb250YWluZXIsXG4gIC8vIDEwMCUgd2lkZSBjb250YWluZXIgYXQgYWxsIGJyZWFrcG9pbnRzXG4gIC5jb250YWluZXItZmx1aWQge1xuICAgIEBpbmNsdWRlIG1ha2UtY29udGFpbmVyKCk7XG4gIH1cblxuICAvLyBSZXNwb25zaXZlIGNvbnRhaW5lcnMgdGhhdCBhcmUgMTAwJSB3aWRlIHVudGlsIGEgYnJlYWtwb2ludFxuICBAZWFjaCAkYnJlYWtwb2ludCwgJGNvbnRhaW5lci1tYXgtd2lkdGggaW4gJGNvbnRhaW5lci1tYXgtd2lkdGhzIHtcbiAgICAuY29udGFpbmVyLSN7JGJyZWFrcG9pbnR9IHtcbiAgICAgIEBleHRlbmQgLmNvbnRhaW5lci1mbHVpZDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cykge1xuICAgICAgJXJlc3BvbnNpdmUtY29udGFpbmVyLSN7JGJyZWFrcG9pbnR9IHtcbiAgICAgICAgbWF4LXdpZHRoOiAkY29udGFpbmVyLW1heC13aWR0aDtcbiAgICAgIH1cblxuICAgICAgLy8gRXh0ZW5kIGVhY2ggYnJlYWtwb2ludCB3aGljaCBpcyBzbWFsbGVyIG9yIGVxdWFsIHRvIHRoZSBjdXJyZW50IGJyZWFrcG9pbnRcbiAgICAgICRleHRlbmQtYnJlYWtwb2ludDogdHJ1ZTtcblxuICAgICAgQGVhY2ggJG5hbWUsICR3aWR0aCBpbiAkZ3JpZC1icmVha3BvaW50cyB7XG4gICAgICAgIEBpZiAoJGV4dGVuZC1icmVha3BvaW50KSB7XG4gICAgICAgICAgLmNvbnRhaW5lciN7YnJlYWtwb2ludC1pbmZpeCgkbmFtZSwgJGdyaWQtYnJlYWtwb2ludHMpfSB7XG4gICAgICAgICAgICBAZXh0ZW5kICVyZXNwb25zaXZlLWNvbnRhaW5lci0jeyRicmVha3BvaW50fTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAvLyBPbmNlIHRoZSBjdXJyZW50IGJyZWFrcG9pbnQgaXMgcmVhY2hlZCwgc3RvcCBleHRlbmRpbmdcbiAgICAgICAgICBAaWYgKCRicmVha3BvaW50ID09ICRuYW1lKSB7XG4gICAgICAgICAgICAkZXh0ZW5kLWJyZWFrcG9pbnQ6IGZhbHNlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cbi8vIFJvd1xuLy9cbi8vIFJvd3MgY29udGFpbiB5b3VyIGNvbHVtbnMuXG5cbkBpZiAkZW5hYmxlLWdyaWQtY2xhc3NlcyB7XG4gIC5yb3cge1xuICAgIEBpbmNsdWRlIG1ha2Utcm93KCk7XG4gIH1cblxuICAvLyBSZW1vdmUgdGhlIG5lZ2F0aXZlIG1hcmdpbiBmcm9tIGRlZmF1bHQgLnJvdywgdGhlbiB0aGUgaG9yaXpvbnRhbCBwYWRkaW5nXG4gIC8vIGZyb20gYWxsIGltbWVkaWF0ZSBjaGlsZHJlbiBjb2x1bW5zICh0byBwcmV2ZW50IHJ1bmF3YXkgc3R5bGUgaW5oZXJpdGFuY2UpLlxuICAubm8tZ3V0dGVycyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuXG4gICAgPiAuY29sLFxuICAgID4gW2NsYXNzKj1cImNvbC1cIl0ge1xuICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICB9XG4gIH1cbn1cblxuLy8gQ29sdW1uc1xuLy9cbi8vIENvbW1vbiBzdHlsZXMgZm9yIHNtYWxsIGFuZCBsYXJnZSBncmlkIGNvbHVtbnNcblxuQGlmICRlbmFibGUtZ3JpZC1jbGFzc2VzIHtcbiAgQGluY2x1ZGUgbWFrZS1ncmlkLWNvbHVtbnMoKTtcbn1cbiIsIi8vLyBHcmlkIHN5c3RlbVxuLy9cbi8vIEdlbmVyYXRlIHNlbWFudGljIGdyaWQgY29sdW1ucyB3aXRoIHRoZXNlIG1peGlucy5cblxuQG1peGluIG1ha2UtY29udGFpbmVyKCRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZy1yaWdodDogJGd1dHRlciAqIC41O1xuICBwYWRkaW5nLWxlZnQ6ICRndXR0ZXIgKiAuNTtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbn1cblxuQG1peGluIG1ha2Utcm93KCRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIG1hcmdpbi1yaWdodDogLSRndXR0ZXIgKiAuNTtcbiAgbWFyZ2luLWxlZnQ6IC0kZ3V0dGVyICogLjU7XG59XG5cbi8vIEZvciBlYWNoIGJyZWFrcG9pbnQsIGRlZmluZSB0aGUgbWF4aW11bSB3aWR0aCBvZiB0aGUgY29udGFpbmVyIGluIGEgbWVkaWEgcXVlcnlcbkBtaXhpbiBtYWtlLWNvbnRhaW5lci1tYXgtd2lkdGhzKCRtYXgtd2lkdGhzOiAkY29udGFpbmVyLW1heC13aWR0aHMsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGVhY2ggJGJyZWFrcG9pbnQsICRjb250YWluZXItbWF4LXdpZHRoIGluICRtYXgtd2lkdGhzIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50LCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIG1heC13aWR0aDogJGNvbnRhaW5lci1tYXgtd2lkdGg7XG4gICAgfVxuICB9XG4gIEBpbmNsdWRlIGRlcHJlY2F0ZShcIlRoZSBgbWFrZS1jb250YWluZXItbWF4LXdpZHRoc2AgbWl4aW5cIiwgXCJ2NC41LjJcIiwgXCJ2NVwiKTtcbn1cblxuQG1peGluIG1ha2UtY29sLXJlYWR5KCRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC8vIFByZXZlbnQgY29sdW1ucyBmcm9tIGJlY29taW5nIHRvbyBuYXJyb3cgd2hlbiBhdCBzbWFsbGVyIGdyaWQgdGllcnMgYnlcbiAgLy8gYWx3YXlzIHNldHRpbmcgYHdpZHRoOiAxMDAlO2AuIFRoaXMgd29ya3MgYmVjYXVzZSB3ZSB1c2UgYGZsZXhgIHZhbHVlc1xuICAvLyBsYXRlciBvbiB0byBvdmVycmlkZSB0aGlzIGluaXRpYWwgd2lkdGguXG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLXJpZ2h0OiAkZ3V0dGVyICogLjU7XG4gIHBhZGRpbmctbGVmdDogJGd1dHRlciAqIC41O1xufVxuXG5AbWl4aW4gbWFrZS1jb2woJHNpemUsICRjb2x1bW5zOiAkZ3JpZC1jb2x1bW5zKSB7XG4gIGZsZXg6IDAgMCBwZXJjZW50YWdlKGRpdmlkZSgkc2l6ZSwgJGNvbHVtbnMpKTtcbiAgLy8gQWRkIGEgYG1heC13aWR0aGAgdG8gZW5zdXJlIGNvbnRlbnQgd2l0aGluIGVhY2ggY29sdW1uIGRvZXMgbm90IGJsb3cgb3V0XG4gIC8vIHRoZSB3aWR0aCBvZiB0aGUgY29sdW1uLiBBcHBsaWVzIHRvIElFMTArIGFuZCBGaXJlZm94LiBDaHJvbWUgYW5kIFNhZmFyaVxuICAvLyBkbyBub3QgYXBwZWFyIHRvIHJlcXVpcmUgdGhpcy5cbiAgbWF4LXdpZHRoOiBwZXJjZW50YWdlKGRpdmlkZSgkc2l6ZSwgJGNvbHVtbnMpKTtcbn1cblxuQG1peGluIG1ha2UtY29sLWF1dG8oKSB7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICB3aWR0aDogYXV0bztcbiAgbWF4LXdpZHRoOiAxMDAlOyAvLyBSZXNldCBlYXJsaWVyIGdyaWQgdGllcnNcbn1cblxuQG1peGluIG1ha2UtY29sLW9mZnNldCgkc2l6ZSwgJGNvbHVtbnM6ICRncmlkLWNvbHVtbnMpIHtcbiAgJG51bTogZGl2aWRlKCRzaXplLCAkY29sdW1ucyk7XG4gIG1hcmdpbi1sZWZ0OiBpZigkbnVtID09IDAsIDAsIHBlcmNlbnRhZ2UoJG51bSkpO1xufVxuXG4vLyBSb3cgY29sdW1uc1xuLy9cbi8vIFNwZWNpZnkgb24gYSBwYXJlbnQgZWxlbWVudChlLmcuLCAucm93KSB0byBmb3JjZSBpbW1lZGlhdGUgY2hpbGRyZW4gaW50byBOTlxuLy8gbnVtYmVyb2YgY29sdW1ucy4gU3VwcG9ydHMgd3JhcHBpbmcgdG8gbmV3IGxpbmVzLCBidXQgZG9lcyBub3QgZG8gYSBNYXNvbnJ5XG4vLyBzdHlsZSBncmlkLlxuQG1peGluIHJvdy1jb2xzKCRjb3VudCkge1xuICA+ICoge1xuICAgIGZsZXg6IDAgMCBkaXZpZGUoMTAwJSwgJGNvdW50KTtcbiAgICBtYXgtd2lkdGg6IGRpdmlkZSgxMDAlLCAkY291bnQpO1xuICB9XG59XG4iLCIvLyBCcmVha3BvaW50IHZpZXdwb3J0IHNpemVzIGFuZCBtZWRpYSBxdWVyaWVzLlxuLy9cbi8vIEJyZWFrcG9pbnRzIGFyZSBkZWZpbmVkIGFzIGEgbWFwIG9mIChuYW1lOiBtaW5pbXVtIHdpZHRoKSwgb3JkZXIgZnJvbSBzbWFsbCB0byBsYXJnZTpcbi8vXG4vLyAgICAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpXG4vL1xuLy8gVGhlIG1hcCBkZWZpbmVkIGluIHRoZSBgJGdyaWQtYnJlYWtwb2ludHNgIGdsb2JhbCB2YXJpYWJsZSBpcyB1c2VkIGFzIHRoZSBgJGJyZWFrcG9pbnRzYCBhcmd1bWVudCBieSBkZWZhdWx0LlxuXG4vLyBOYW1lIG9mIHRoZSBuZXh0IGJyZWFrcG9pbnQsIG9yIG51bGwgZm9yIHRoZSBsYXN0IGJyZWFrcG9pbnQuXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtKVxuLy8gICAgbWRcbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcbi8vICAgIG1kXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20sICRicmVha3BvaW50LW5hbWVzOiAoeHMgc20gbWQgbGcgeGwpKVxuLy8gICAgbWRcbkBmdW5jdGlvbiBicmVha3BvaW50LW5leHQoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMsICRicmVha3BvaW50LW5hbWVzOiBtYXAta2V5cygkYnJlYWtwb2ludHMpKSB7XG4gICRuOiBpbmRleCgkYnJlYWtwb2ludC1uYW1lcywgJG5hbWUpO1xuICBAcmV0dXJuIGlmKCRuICE9IG51bGwgYW5kICRuIDwgbGVuZ3RoKCRicmVha3BvaW50LW5hbWVzKSwgbnRoKCRicmVha3BvaW50LW5hbWVzLCAkbiArIDEpLCBudWxsKTtcbn1cblxuLy8gTWluaW11bSBicmVha3BvaW50IHdpZHRoLiBOdWxsIGZvciB0aGUgc21hbGxlc3QgKGZpcnN0KSBicmVha3BvaW50LlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtbWluKHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgNTc2cHhcbkBmdW5jdGlvbiBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJG5hbWUpO1xuICBAcmV0dXJuIGlmKCRtaW4gIT0gMCwgJG1pbiwgbnVsbCk7XG59XG5cbi8vIE1heGltdW0gYnJlYWtwb2ludCB3aWR0aC4gTnVsbCBmb3IgdGhlIGxhcmdlc3QgKGxhc3QpIGJyZWFrcG9pbnQuXG4vLyBUaGUgbWF4aW11bSB2YWx1ZSBpcyBjYWxjdWxhdGVkIGFzIHRoZSBtaW5pbXVtIG9mIHRoZSBuZXh0IG9uZSBsZXNzIDAuMDJweFxuLy8gdG8gd29yayBhcm91bmQgdGhlIGxpbWl0YXRpb25zIG9mIGBtaW4tYCBhbmQgYG1heC1gIHByZWZpeGVzIGFuZCB2aWV3cG9ydHMgd2l0aCBmcmFjdGlvbmFsIHdpZHRocy5cbi8vIFNlZSBodHRwczovL3d3dy53My5vcmcvVFIvbWVkaWFxdWVyaWVzLTQvI21xLW1pbi1tYXhcbi8vIFVzZXMgMC4wMnB4IHJhdGhlciB0aGFuIDAuMDFweCB0byB3b3JrIGFyb3VuZCBhIGN1cnJlbnQgcm91bmRpbmcgYnVnIGluIFNhZmFyaS5cbi8vIFNlZSBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTc4MjYxXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1tYXgoc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICA3NjcuOThweFxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbWF4KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRuZXh0OiBicmVha3BvaW50LW5leHQoJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEByZXR1cm4gaWYoJG5leHQsIGJyZWFrcG9pbnQtbWluKCRuZXh0LCAkYnJlYWtwb2ludHMpIC0gLjAyLCBudWxsKTtcbn1cblxuLy8gUmV0dXJucyBhIGJsYW5rIHN0cmluZyBpZiBzbWFsbGVzdCBicmVha3BvaW50LCBvdGhlcndpc2UgcmV0dXJucyB0aGUgbmFtZSB3aXRoIGEgZGFzaCBpbiBmcm9udC5cbi8vIFVzZWZ1bCBmb3IgbWFraW5nIHJlc3BvbnNpdmUgdXRpbGl0aWVzLlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtaW5maXgoeHMsICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICBcIlwiICAoUmV0dXJucyBhIGJsYW5rIHN0cmluZylcbi8vICAgID4+IGJyZWFrcG9pbnQtaW5maXgoc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICBcIi1zbVwiXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1pbmZpeCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICBAcmV0dXJuIGlmKGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpID09IG51bGwsIFwiXCIsIFwiLSN7JG5hbWV9XCIpO1xufVxuXG4vLyBNZWRpYSBvZiBhdCBsZWFzdCB0aGUgbWluaW11bSBicmVha3BvaW50IHdpZHRoLiBObyBxdWVyeSBmb3IgdGhlIHNtYWxsZXN0IGJyZWFrcG9pbnQuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQgYW5kIHdpZGVyLlxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEBpZiAkbWluIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBNZWRpYSBvZiBhdCBtb3N0IHRoZSBtYXhpbXVtIGJyZWFrcG9pbnQgd2lkdGguIE5vIHF1ZXJ5IGZvciB0aGUgbGFyZ2VzdCBicmVha3BvaW50LlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50IGFuZCBuYXJyb3dlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LWRvd24oJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEBpZiAkbWF4IHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1heCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBNZWRpYSB0aGF0IHNwYW5zIG11bHRpcGxlIGJyZWFrcG9pbnQgd2lkdGhzLlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IGJldHdlZW4gdGhlIG1pbiBhbmQgbWF4IGJyZWFrcG9pbnRzXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1iZXR3ZWVuKCRsb3dlciwgJHVwcGVyLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IGJyZWFrcG9pbnQtbWluKCRsb3dlciwgJGJyZWFrcG9pbnRzKTtcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJHVwcGVyLCAkYnJlYWtwb2ludHMpO1xuXG4gIEBpZiAkbWluICE9IG51bGwgYW5kICRtYXggIT0gbnVsbCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIGFuZCAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1heCA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRsb3dlciwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1pbiA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJHVwcGVyLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLyBNZWRpYSBiZXR3ZWVuIHRoZSBicmVha3BvaW50J3MgbWluaW11bSBhbmQgbWF4aW11bSB3aWR0aHMuXG4vLyBObyBtaW5pbXVtIGZvciB0aGUgc21hbGxlc3QgYnJlYWtwb2ludCwgYW5kIG5vIG1heGltdW0gZm9yIHRoZSBsYXJnZXN0IG9uZS5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSBvbmx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50LCBub3Qgdmlld3BvcnRzIGFueSB3aWRlciBvciBuYXJyb3dlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LW9ubHkoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cyk7XG4gICRtYXg6IGJyZWFrcG9pbnQtbWF4KCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuXG4gIEBpZiAkbWluICE9IG51bGwgYW5kICRtYXggIT0gbnVsbCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIGFuZCAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1heCA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRuYW1lLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWluID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkbmFtZSwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZyYW1ld29yayBncmlkIGdlbmVyYXRpb25cbi8vXG4vLyBVc2VkIG9ubHkgYnkgQm9vdHN0cmFwIHRvIGdlbmVyYXRlIHRoZSBjb3JyZWN0IG51bWJlciBvZiBncmlkIGNsYXNzZXMgZ2l2ZW5cbi8vIGFueSB2YWx1ZSBvZiBgJGdyaWQtY29sdW1uc2AuXG5cbkBtaXhpbiBtYWtlLWdyaWQtY29sdW1ucygkY29sdW1uczogJGdyaWQtY29sdW1ucywgJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIC8vIENvbW1vbiBwcm9wZXJ0aWVzIGZvciBhbGwgYnJlYWtwb2ludHNcbiAgJWdyaWQtY29sdW1uIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZy1yaWdodDogJGd1dHRlciAqIC41O1xuICAgIHBhZGRpbmctbGVmdDogJGd1dHRlciAqIC41O1xuICB9XG5cbiAgQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGJyZWFrcG9pbnRzKSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkYnJlYWtwb2ludHMpO1xuXG4gICAgQGlmICRjb2x1bW5zID4gMCB7XG4gICAgICAvLyBBbGxvdyBjb2x1bW5zIHRvIHN0cmV0Y2ggZnVsbCB3aWR0aCBiZWxvdyB0aGVpciBicmVha3BvaW50c1xuICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkY29sdW1ucyB7XG4gICAgICAgIC5jb2wjeyRpbmZpeH0tI3skaX0ge1xuICAgICAgICAgIEBleHRlbmQgJWdyaWQtY29sdW1uO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmNvbCN7JGluZml4fSxcbiAgICAuY29sI3skaW5maXh9LWF1dG8ge1xuICAgICAgQGV4dGVuZCAlZ3JpZC1jb2x1bW47XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICAvLyBQcm92aWRlIGJhc2ljIGAuY29sLXticH1gIGNsYXNzZXMgZm9yIGVxdWFsLXdpZHRoIGZsZXhib3ggY29sdW1uc1xuICAgICAgLmNvbCN7JGluZml4fSB7XG4gICAgICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgfVxuXG4gICAgICBAaWYgJGdyaWQtcm93LWNvbHVtbnMgPiAwIHtcbiAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1yb3ctY29sdW1ucyB7XG4gICAgICAgICAgLnJvdy1jb2xzI3skaW5maXh9LSN7JGl9IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHJvdy1jb2xzKCRpKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLmNvbCN7JGluZml4fS1hdXRvIHtcbiAgICAgICAgQGluY2x1ZGUgbWFrZS1jb2wtYXV0bygpO1xuICAgICAgfVxuXG4gICAgICBAaWYgJGNvbHVtbnMgPiAwIHtcbiAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkY29sdW1ucyB7XG4gICAgICAgICAgLmNvbCN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBtYWtlLWNvbCgkaSwgJGNvbHVtbnMpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAub3JkZXIjeyRpbmZpeH0tZmlyc3QgeyBvcmRlcjogLTE7IH1cblxuICAgICAgLm9yZGVyI3skaW5maXh9LWxhc3QgeyBvcmRlcjogJGNvbHVtbnMgKyAxOyB9XG5cbiAgICAgIEBmb3IgJGkgZnJvbSAwIHRocm91Z2ggJGNvbHVtbnMge1xuICAgICAgICAub3JkZXIjeyRpbmZpeH0tI3skaX0geyBvcmRlcjogJGk7IH1cbiAgICAgIH1cblxuICAgICAgQGlmICRjb2x1bW5zID4gMCB7XG4gICAgICAgIC8vIGAkY29sdW1ucyAtIDFgIGJlY2F1c2Ugb2Zmc2V0dGluZyBieSB0aGUgd2lkdGggb2YgYW4gZW50aXJlIHJvdyBpc24ndCBwb3NzaWJsZVxuICAgICAgICBAZm9yICRpIGZyb20gMCB0aHJvdWdoICgkY29sdW1ucyAtIDEpIHtcbiAgICAgICAgICBAaWYgbm90ICgkaW5maXggPT0gXCJcIiBhbmQgJGkgPT0gMCkgeyAvLyBBdm9pZCBlbWl0dGluZyB1c2VsZXNzIC5vZmZzZXQtMFxuICAgICAgICAgICAgLm9mZnNldCN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIG1ha2UtY29sLW9mZnNldCgkaSwgJGNvbHVtbnMpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIEJhc2ljIEJvb3RzdHJhcCB0YWJsZVxuLy9cblxuLnRhYmxlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206ICRzcGFjZXI7XG4gIGNvbG9yOiAkdGFibGUtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1iZzsgLy8gUmVzZXQgZm9yIG5lc3Rpbmcgd2l0aGluIHBhcmVudHMgd2l0aCBgYmFja2dyb3VuZC1jb2xvcmAuXG5cbiAgdGgsXG4gIHRkIHtcbiAgICBwYWRkaW5nOiAkdGFibGUtY2VsbC1wYWRkaW5nO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgYm9yZGVyLXRvcDogJHRhYmxlLWJvcmRlci13aWR0aCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgdGhlYWQgdGgge1xuICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG4gICAgYm9yZGVyLWJvdHRvbTogKDIgKiAkdGFibGUtYm9yZGVyLXdpZHRoKSBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgdGJvZHkgKyB0Ym9keSB7XG4gICAgYm9yZGVyLXRvcDogKDIgKiAkdGFibGUtYm9yZGVyLXdpZHRoKSBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICB9XG59XG5cblxuLy9cbi8vIENvbmRlbnNlZCB0YWJsZSB3LyBoYWxmIHBhZGRpbmdcbi8vXG5cbi50YWJsZS1zbSB7XG4gIHRoLFxuICB0ZCB7XG4gICAgcGFkZGluZzogJHRhYmxlLWNlbGwtcGFkZGluZy1zbTtcbiAgfVxufVxuXG5cbi8vIEJvcmRlciB2ZXJzaW9uc1xuLy9cbi8vIEFkZCBvciByZW1vdmUgYm9yZGVycyBhbGwgYXJvdW5kIHRoZSB0YWJsZSBhbmQgYmV0d2VlbiBhbGwgdGhlIGNvbHVtbnMuXG5cbi50YWJsZS1ib3JkZXJlZCB7XG4gIGJvcmRlcjogJHRhYmxlLWJvcmRlci13aWR0aCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuXG4gIHRoLFxuICB0ZCB7XG4gICAgYm9yZGVyOiAkdGFibGUtYm9yZGVyLXdpZHRoIHNvbGlkICR0YWJsZS1ib3JkZXItY29sb3I7XG4gIH1cblxuICB0aGVhZCB7XG4gICAgdGgsXG4gICAgdGQge1xuICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMiAqICR0YWJsZS1ib3JkZXItd2lkdGg7XG4gICAgfVxuICB9XG59XG5cbi50YWJsZS1ib3JkZXJsZXNzIHtcbiAgdGgsXG4gIHRkLFxuICB0aGVhZCB0aCxcbiAgdGJvZHkgKyB0Ym9keSB7XG4gICAgYm9yZGVyOiAwO1xuICB9XG59XG5cbi8vIFplYnJhLXN0cmlwaW5nXG4vL1xuLy8gRGVmYXVsdCB6ZWJyYS1zdHJpcGUgc3R5bGVzIChhbHRlcm5hdGluZyBncmF5IGFuZCB0cmFuc3BhcmVudCBiYWNrZ3JvdW5kcylcblxuLnRhYmxlLXN0cmlwZWQge1xuICB0Ym9keSB0cjpudGgtb2YtdHlwZSgjeyR0YWJsZS1zdHJpcGVkLW9yZGVyfSkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1hY2NlbnQtYmc7XG4gIH1cbn1cblxuXG4vLyBIb3ZlciBlZmZlY3Rcbi8vXG4vLyBQbGFjZWQgaGVyZSBzaW5jZSBpdCBoYXMgdG8gY29tZSBhZnRlciB0aGUgcG90ZW50aWFsIHplYnJhIHN0cmlwaW5nXG5cbi50YWJsZS1ob3ZlciB7XG4gIHRib2R5IHRyIHtcbiAgICBAaW5jbHVkZSBob3ZlcigpIHtcbiAgICAgIGNvbG9yOiAkdGFibGUtaG92ZXItY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtaG92ZXItYmc7XG4gICAgfVxuICB9XG59XG5cblxuLy8gVGFibGUgYmFja2dyb3VuZHNcbi8vXG4vLyBFeGFjdCBzZWxlY3RvcnMgYmVsb3cgcmVxdWlyZWQgdG8gb3ZlcnJpZGUgYC50YWJsZS1zdHJpcGVkYCBhbmQgcHJldmVudFxuLy8gaW5oZXJpdGFuY2UgdG8gbmVzdGVkIHRhYmxlcy5cblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIEBpbmNsdWRlIHRhYmxlLXJvdy12YXJpYW50KCRjb2xvciwgdGhlbWUtY29sb3ItbGV2ZWwoJGNvbG9yLCAkdGFibGUtYmctbGV2ZWwpLCB0aGVtZS1jb2xvci1sZXZlbCgkY29sb3IsICR0YWJsZS1ib3JkZXItbGV2ZWwpKTtcbn1cblxuQGluY2x1ZGUgdGFibGUtcm93LXZhcmlhbnQoYWN0aXZlLCAkdGFibGUtYWN0aXZlLWJnKTtcblxuXG4vLyBEYXJrIHN0eWxlc1xuLy9cbi8vIFNhbWUgdGFibGUgbWFya3VwLCBidXQgaW52ZXJ0ZWQgY29sb3Igc2NoZW1lOiBkYXJrIGJhY2tncm91bmQgYW5kIGxpZ2h0IHRleHQuXG5cbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1kdXBsaWNhdGUtc2VsZWN0b3JzXG4udGFibGUge1xuICAudGhlYWQtZGFyayB7XG4gICAgdGgge1xuICAgICAgY29sb3I6ICR0YWJsZS1kYXJrLWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWRhcmstYmc7XG4gICAgICBib3JkZXItY29sb3I6ICR0YWJsZS1kYXJrLWJvcmRlci1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAudGhlYWQtbGlnaHQge1xuICAgIHRoIHtcbiAgICAgIGNvbG9yOiAkdGFibGUtaGVhZC1jb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1oZWFkLWJnO1xuICAgICAgYm9yZGVyLWNvbG9yOiAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4udGFibGUtZGFyayB7XG4gIGNvbG9yOiAkdGFibGUtZGFyay1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWRhcmstYmc7XG5cbiAgdGgsXG4gIHRkLFxuICB0aGVhZCB0aCB7XG4gICAgYm9yZGVyLWNvbG9yOiAkdGFibGUtZGFyay1ib3JkZXItY29sb3I7XG4gIH1cblxuICAmLnRhYmxlLWJvcmRlcmVkIHtcbiAgICBib3JkZXI6IDA7XG4gIH1cblxuICAmLnRhYmxlLXN0cmlwZWQge1xuICAgIHRib2R5IHRyOm50aC1vZi10eXBlKCN7JHRhYmxlLXN0cmlwZWQtb3JkZXJ9KSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtZGFyay1hY2NlbnQtYmc7XG4gICAgfVxuICB9XG5cbiAgJi50YWJsZS1ob3ZlciB7XG4gICAgdGJvZHkgdHIge1xuICAgICAgQGluY2x1ZGUgaG92ZXIoKSB7XG4gICAgICAgIGNvbG9yOiAkdGFibGUtZGFyay1ob3Zlci1jb2xvcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWRhcmstaG92ZXItYmc7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLy8gUmVzcG9uc2l2ZSB0YWJsZXNcbi8vXG4vLyBHZW5lcmF0ZSBzZXJpZXMgb2YgYC50YWJsZS1yZXNwb25zaXZlLSpgIGNsYXNzZXMgZm9yIGNvbmZpZ3VyaW5nIHRoZSBzY3JlZW5cbi8vIHNpemUgb2Ygd2hlcmUgeW91ciB0YWJsZSB3aWxsIG92ZXJmbG93LlxuXG4udGFibGUtcmVzcG9uc2l2ZSB7XG4gIEBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICAgJG5leHQ6IGJyZWFrcG9pbnQtbmV4dCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkbmV4dCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgJiN7JGluZml4fSB7XG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJGJyZWFrcG9pbnQpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgICAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG5cbiAgICAgICAgLy8gUHJldmVudCBkb3VibGUgYm9yZGVyIG9uIGhvcml6b250YWwgc2Nyb2xsIGR1ZSB0byB1c2Ugb2YgYGRpc3BsYXk6IGJsb2NrO2BcbiAgICAgICAgPiAudGFibGUtYm9yZGVyZWQge1xuICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gVGFibGVzXG5cbkBtaXhpbiB0YWJsZS1yb3ctdmFyaWFudCgkc3RhdGUsICRiYWNrZ3JvdW5kLCAkYm9yZGVyOiBudWxsKSB7XG4gIC8vIEV4YWN0IHNlbGVjdG9ycyBiZWxvdyByZXF1aXJlZCB0byBvdmVycmlkZSBgLnRhYmxlLXN0cmlwZWRgIGFuZCBwcmV2ZW50XG4gIC8vIGluaGVyaXRhbmNlIHRvIG5lc3RlZCB0YWJsZXMuXG4gIC50YWJsZS0jeyRzdGF0ZX0ge1xuICAgICYsXG4gICAgPiB0aCxcbiAgICA+IHRkIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIH1cblxuICAgIEBpZiAkYm9yZGVyICE9IG51bGwge1xuICAgICAgdGgsXG4gICAgICB0ZCxcbiAgICAgIHRoZWFkIHRoLFxuICAgICAgdGJvZHkgKyB0Ym9keSB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGJvcmRlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBIb3ZlciBzdGF0ZXMgZm9yIGAudGFibGUtaG92ZXJgXG4gIC8vIE5vdGU6IHRoaXMgaXMgbm90IGF2YWlsYWJsZSBmb3IgY2VsbHMgb3Igcm93cyB3aXRoaW4gYHRoZWFkYCBvciBgdGZvb3RgLlxuICAudGFibGUtaG92ZXIge1xuICAgICRob3Zlci1iYWNrZ3JvdW5kOiBkYXJrZW4oJGJhY2tncm91bmQsIDUlKTtcblxuICAgIC50YWJsZS0jeyRzdGF0ZX0ge1xuICAgICAgQGluY2x1ZGUgaG92ZXIoKSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRob3Zlci1iYWNrZ3JvdW5kO1xuXG4gICAgICAgID4gdGQsXG4gICAgICAgID4gdGgge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRob3Zlci1iYWNrZ3JvdW5kO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBCb290c3RyYXAgZnVuY3Rpb25zXG4vL1xuLy8gVXRpbGl0eSBtaXhpbnMgYW5kIGZ1bmN0aW9ucyBmb3IgZXZhbHVhdGluZyBzb3VyY2UgY29kZSBhY3Jvc3Mgb3VyIHZhcmlhYmxlcywgbWFwcywgYW5kIG1peGlucy5cblxuLy8gQXNjZW5kaW5nXG4vLyBVc2VkIHRvIGV2YWx1YXRlIFNhc3MgbWFwcyBsaWtlIG91ciBncmlkIGJyZWFrcG9pbnRzLlxuQG1peGluIF9hc3NlcnQtYXNjZW5kaW5nKCRtYXAsICRtYXAtbmFtZSkge1xuICAkcHJldi1rZXk6IG51bGw7XG4gICRwcmV2LW51bTogbnVsbDtcbiAgQGVhY2ggJGtleSwgJG51bSBpbiAkbWFwIHtcbiAgICBAaWYgJHByZXYtbnVtID09IG51bGwgb3IgdW5pdCgkbnVtKSA9PSBcIiVcIiBvciB1bml0KCRwcmV2LW51bSkgPT0gXCIlXCIge1xuICAgICAgLy8gRG8gbm90aGluZ1xuICAgIH0gQGVsc2UgaWYgbm90IGNvbXBhcmFibGUoJHByZXYtbnVtLCAkbnVtKSB7XG4gICAgICBAd2FybiBcIlBvdGVudGlhbGx5IGludmFsaWQgdmFsdWUgZm9yICN7JG1hcC1uYW1lfTogVGhpcyBtYXAgbXVzdCBiZSBpbiBhc2NlbmRpbmcgb3JkZXIsIGJ1dCBrZXkgJyN7JGtleX0nIGhhcyB2YWx1ZSAjeyRudW19IHdob3NlIHVuaXQgbWFrZXMgaXQgaW5jb21wYXJhYmxlIHRvICN7JHByZXYtbnVtfSwgdGhlIHZhbHVlIG9mIHRoZSBwcmV2aW91cyBrZXkgJyN7JHByZXYta2V5fScgIVwiO1xuICAgIH0gQGVsc2UgaWYgJHByZXYtbnVtID49ICRudW0ge1xuICAgICAgQHdhcm4gXCJJbnZhbGlkIHZhbHVlIGZvciAjeyRtYXAtbmFtZX06IFRoaXMgbWFwIG11c3QgYmUgaW4gYXNjZW5kaW5nIG9yZGVyLCBidXQga2V5ICcjeyRrZXl9JyBoYXMgdmFsdWUgI3skbnVtfSB3aGljaCBpc24ndCBncmVhdGVyIHRoYW4gI3skcHJldi1udW19LCB0aGUgdmFsdWUgb2YgdGhlIHByZXZpb3VzIGtleSAnI3skcHJldi1rZXl9JyAhXCI7XG4gICAgfVxuICAgICRwcmV2LWtleTogJGtleTtcbiAgICAkcHJldi1udW06ICRudW07XG4gIH1cbn1cblxuLy8gU3RhcnRzIGF0IHplcm9cbi8vIFVzZWQgdG8gZW5zdXJlIHRoZSBtaW4td2lkdGggb2YgdGhlIGxvd2VzdCBicmVha3BvaW50IHN0YXJ0cyBhdCAwLlxuQG1peGluIF9hc3NlcnQtc3RhcnRzLWF0LXplcm8oJG1hcCwgJG1hcC1uYW1lOiBcIiRncmlkLWJyZWFrcG9pbnRzXCIpIHtcbiAgQGlmIGxlbmd0aCgkbWFwKSA+IDAge1xuICAgICR2YWx1ZXM6IG1hcC12YWx1ZXMoJG1hcCk7XG4gICAgJGZpcnN0LXZhbHVlOiBudGgoJHZhbHVlcywgMSk7XG4gICAgQGlmICRmaXJzdC12YWx1ZSAhPSAwIHtcbiAgICAgIEB3YXJuIFwiRmlyc3QgYnJlYWtwb2ludCBpbiAjeyRtYXAtbmFtZX0gbXVzdCBzdGFydCBhdCAwLCBidXQgc3RhcnRzIGF0ICN7JGZpcnN0LXZhbHVlfS5cIjtcbiAgICB9XG4gIH1cbn1cblxuLy8gUmVwbGFjZSBgJHNlYXJjaGAgd2l0aCBgJHJlcGxhY2VgIGluIGAkc3RyaW5nYFxuLy8gVXNlZCBvbiBvdXIgU1ZHIGljb24gYmFja2dyb3VuZHMgZm9yIGN1c3RvbSBmb3Jtcy5cbi8vXG4vLyBAYXV0aG9yIEh1Z28gR2lyYXVkZWxcbi8vIEBwYXJhbSB7U3RyaW5nfSAkc3RyaW5nIC0gSW5pdGlhbCBzdHJpbmdcbi8vIEBwYXJhbSB7U3RyaW5nfSAkc2VhcmNoIC0gU3Vic3RyaW5nIHRvIHJlcGxhY2Vcbi8vIEBwYXJhbSB7U3RyaW5nfSAkcmVwbGFjZSAoJycpIC0gTmV3IHZhbHVlXG4vLyBAcmV0dXJuIHtTdHJpbmd9IC0gVXBkYXRlZCBzdHJpbmdcbkBmdW5jdGlvbiBzdHItcmVwbGFjZSgkc3RyaW5nLCAkc2VhcmNoLCAkcmVwbGFjZTogXCJcIikge1xuICAkaW5kZXg6IHN0ci1pbmRleCgkc3RyaW5nLCAkc2VhcmNoKTtcblxuICBAaWYgJGluZGV4IHtcbiAgICBAcmV0dXJuIHN0ci1zbGljZSgkc3RyaW5nLCAxLCAkaW5kZXggLSAxKSArICRyZXBsYWNlICsgc3RyLXJlcGxhY2Uoc3RyLXNsaWNlKCRzdHJpbmcsICRpbmRleCArIHN0ci1sZW5ndGgoJHNlYXJjaCkpLCAkc2VhcmNoLCAkcmVwbGFjZSk7XG4gIH1cblxuICBAcmV0dXJuICRzdHJpbmc7XG59XG5cbi8vIFNlZSBodHRwczovL2NvZGVwZW4uaW8va2V2aW53ZWJlci9wZW4vZFhXb1J3XG4vL1xuLy8gUmVxdWlyZXMgdGhlIHVzZSBvZiBxdW90ZXMgYXJvdW5kIGRhdGEgVVJJcy5cblxuQGZ1bmN0aW9uIGVzY2FwZS1zdmcoJHN0cmluZykge1xuICBAaWYgc3RyLWluZGV4KCRzdHJpbmcsIFwiZGF0YTppbWFnZS9zdmcreG1sXCIpIHtcbiAgICBAZWFjaCAkY2hhciwgJGVuY29kZWQgaW4gJGVzY2FwZWQtY2hhcmFjdGVycyB7XG4gICAgICAvLyBEbyBub3QgZXNjYXBlIHRoZSB1cmwgYnJhY2tldHNcbiAgICAgIEBpZiBzdHItaW5kZXgoJHN0cmluZywgXCJ1cmwoXCIpID09IDEge1xuICAgICAgICAkc3RyaW5nOiB1cmwoXCIje3N0ci1yZXBsYWNlKHN0ci1zbGljZSgkc3RyaW5nLCA2LCAtMyksICRjaGFyLCAkZW5jb2RlZCl9XCIpO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgICRzdHJpbmc6IHN0ci1yZXBsYWNlKCRzdHJpbmcsICRjaGFyLCAkZW5jb2RlZCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAkc3RyaW5nO1xufVxuXG4vLyBDb2xvciBjb250cmFzdFxuQGZ1bmN0aW9uIGNvbG9yLXlpcSgkY29sb3IsICRkYXJrOiAkeWlxLXRleHQtZGFyaywgJGxpZ2h0OiAkeWlxLXRleHQtbGlnaHQpIHtcbiAgJHI6IHJlZCgkY29sb3IpO1xuICAkZzogZ3JlZW4oJGNvbG9yKTtcbiAgJGI6IGJsdWUoJGNvbG9yKTtcblxuICAkeWlxOiAoKCRyICogMjk5KSArICgkZyAqIDU4NykgKyAoJGIgKiAxMTQpKSAqIC4wMDE7XG5cbiAgQGlmICgkeWlxID49ICR5aXEtY29udHJhc3RlZC10aHJlc2hvbGQpIHtcbiAgICBAcmV0dXJuICRkYXJrO1xuICB9IEBlbHNlIHtcbiAgICBAcmV0dXJuICRsaWdodDtcbiAgfVxufVxuXG4vLyBSZXRyaWV2ZSBjb2xvciBTYXNzIG1hcHNcbkBmdW5jdGlvbiBjb2xvcigka2V5OiBcImJsdWVcIikge1xuICBAcmV0dXJuIG1hcC1nZXQoJGNvbG9ycywgJGtleSk7XG59XG5cbkBmdW5jdGlvbiB0aGVtZS1jb2xvcigka2V5OiBcInByaW1hcnlcIikge1xuICBAcmV0dXJuIG1hcC1nZXQoJHRoZW1lLWNvbG9ycywgJGtleSk7XG59XG5cbkBmdW5jdGlvbiBncmF5KCRrZXk6IFwiMTAwXCIpIHtcbiAgQHJldHVybiBtYXAtZ2V0KCRncmF5cywgJGtleSk7XG59XG5cbi8vIFJlcXVlc3QgYSB0aGVtZSBjb2xvciBsZXZlbFxuQGZ1bmN0aW9uIHRoZW1lLWNvbG9yLWxldmVsKCRjb2xvci1uYW1lOiBcInByaW1hcnlcIiwgJGxldmVsOiAwKSB7XG4gICRjb2xvcjogdGhlbWUtY29sb3IoJGNvbG9yLW5hbWUpO1xuICAkY29sb3ItYmFzZTogaWYoJGxldmVsID4gMCwgJGJsYWNrLCAkd2hpdGUpO1xuICAkbGV2ZWw6IGFicygkbGV2ZWwpO1xuXG4gIEByZXR1cm4gbWl4KCRjb2xvci1iYXNlLCAkY29sb3IsICRsZXZlbCAqICR0aGVtZS1jb2xvci1pbnRlcnZhbCk7XG59XG5cbi8vIFJldHVybiB2YWxpZCBjYWxjXG5AZnVuY3Rpb24gYWRkKCR2YWx1ZTEsICR2YWx1ZTIsICRyZXR1cm4tY2FsYzogdHJ1ZSkge1xuICBAaWYgJHZhbHVlMSA9PSBudWxsIHtcbiAgICBAcmV0dXJuICR2YWx1ZTI7XG4gIH1cblxuICBAaWYgJHZhbHVlMiA9PSBudWxsIHtcbiAgICBAcmV0dXJuICR2YWx1ZTE7XG4gIH1cblxuICBAaWYgdHlwZS1vZigkdmFsdWUxKSA9PSBudW1iZXIgYW5kIHR5cGUtb2YoJHZhbHVlMikgPT0gbnVtYmVyIGFuZCBjb21wYXJhYmxlKCR2YWx1ZTEsICR2YWx1ZTIpIHtcbiAgICBAcmV0dXJuICR2YWx1ZTEgKyAkdmFsdWUyO1xuICB9XG5cbiAgQHJldHVybiBpZigkcmV0dXJuLWNhbGMgPT0gdHJ1ZSwgY2FsYygjeyR2YWx1ZTF9ICsgI3skdmFsdWUyfSksICR2YWx1ZTEgKyB1bnF1b3RlKFwiICsgXCIpICsgJHZhbHVlMik7XG59XG5cbkBmdW5jdGlvbiBzdWJ0cmFjdCgkdmFsdWUxLCAkdmFsdWUyLCAkcmV0dXJuLWNhbGM6IHRydWUpIHtcbiAgQGlmICR2YWx1ZTEgPT0gbnVsbCBhbmQgJHZhbHVlMiA9PSBudWxsIHtcbiAgICBAcmV0dXJuIG51bGw7XG4gIH1cblxuICBAaWYgJHZhbHVlMSA9PSBudWxsIHtcbiAgICBAcmV0dXJuIC0kdmFsdWUyO1xuICB9XG5cbiAgQGlmICR2YWx1ZTIgPT0gbnVsbCB7XG4gICAgQHJldHVybiAkdmFsdWUxO1xuICB9XG5cbiAgQGlmIHR5cGUtb2YoJHZhbHVlMSkgPT0gbnVtYmVyIGFuZCB0eXBlLW9mKCR2YWx1ZTIpID09IG51bWJlciBhbmQgY29tcGFyYWJsZSgkdmFsdWUxLCAkdmFsdWUyKSB7XG4gICAgQHJldHVybiAkdmFsdWUxIC0gJHZhbHVlMjtcbiAgfVxuXG4gIEBpZiB0eXBlLW9mKCR2YWx1ZTIpICE9IG51bWJlciB7XG4gICAgJHZhbHVlMjogdW5xdW90ZShcIihcIikgKyAkdmFsdWUyICsgdW5xdW90ZShcIilcIik7XG4gIH1cblxuICBAcmV0dXJuIGlmKCRyZXR1cm4tY2FsYyA9PSB0cnVlLCBjYWxjKCN7JHZhbHVlMX0gLSAjeyR2YWx1ZTJ9KSwgJHZhbHVlMSArIHVucXVvdGUoXCIgLSBcIikgKyAkdmFsdWUyKTtcbn1cblxuQGZ1bmN0aW9uIGRpdmlkZSgkZGl2aWRlbmQsICRkaXZpc29yLCAkcHJlY2lzaW9uOiAxMCkge1xuICAkc2lnbjogaWYoJGRpdmlkZW5kID4gMCBhbmQgJGRpdmlzb3IgPiAwIG9yICRkaXZpZGVuZCA8IDAgYW5kICRkaXZpc29yIDwgMCwgMSwgLTEpO1xuICAkZGl2aWRlbmQ6IGFicygkZGl2aWRlbmQpO1xuICAkZGl2aXNvcjogYWJzKCRkaXZpc29yKTtcbiAgQGlmICRkaXZpZGVuZCA9PSAwIHtcbiAgICBAcmV0dXJuIDA7XG4gIH1cbiAgQGlmICRkaXZpc29yID09IDAge1xuICAgIEBlcnJvciBcIkNhbm5vdCBkaXZpZGUgYnkgMFwiO1xuICB9XG4gICRyZW1haW5kZXI6ICRkaXZpZGVuZDtcbiAgJHJlc3VsdDogMDtcbiAgJGZhY3RvcjogMTA7XG4gIEB3aGlsZSAoJHJlbWFpbmRlciA+IDAgYW5kICRwcmVjaXNpb24gPj0gMCkge1xuICAgICRxdW90aWVudDogMDtcbiAgICBAd2hpbGUgKCRyZW1haW5kZXIgPj0gJGRpdmlzb3IpIHtcbiAgICAgICRyZW1haW5kZXI6ICRyZW1haW5kZXIgLSAkZGl2aXNvcjtcbiAgICAgICRxdW90aWVudDogJHF1b3RpZW50ICsgMTtcbiAgICB9XG4gICAgJHJlc3VsdDogJHJlc3VsdCAqIDEwICsgJHF1b3RpZW50O1xuICAgICRmYWN0b3I6ICRmYWN0b3IgKiAuMTtcbiAgICAkcmVtYWluZGVyOiAkcmVtYWluZGVyICogMTA7XG4gICAgJHByZWNpc2lvbjogJHByZWNpc2lvbiAtIDE7XG4gICAgQGlmICgkcHJlY2lzaW9uIDwgMCBhbmQgJHJlbWFpbmRlciA+PSAkZGl2aXNvciAqIDUpIHtcbiAgICAgICRyZXN1bHQ6ICRyZXN1bHQgKyAxO1xuICAgIH1cbiAgfVxuICAkcmVzdWx0OiAkcmVzdWx0ICogJGZhY3RvciAqICRzaWduO1xuICAkZGl2aWRlbmQtdW5pdDogdW5pdCgkZGl2aWRlbmQpO1xuICAkZGl2aXNvci11bml0OiB1bml0KCRkaXZpc29yKTtcbiAgJHVuaXQtbWFwOiAoXG4gICAgXCJweFwiOiAxcHgsXG4gICAgXCJyZW1cIjogMXJlbSxcbiAgICBcImVtXCI6IDFlbSxcbiAgICBcIiVcIjogMSVcbiAgKTtcbiAgQGlmICgkZGl2aWRlbmQtdW5pdCAhPSAkZGl2aXNvci11bml0IGFuZCBtYXAtaGFzLWtleSgkdW5pdC1tYXAsICRkaXZpZGVuZC11bml0KSkge1xuICAgICRyZXN1bHQ6ICRyZXN1bHQgKiBtYXAtZ2V0KCR1bml0LW1hcCwgJGRpdmlkZW5kLXVuaXQpO1xuICB9XG4gIEByZXR1cm4gJHJlc3VsdDtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuXG4vL1xuLy8gVGV4dHVhbCBmb3JtIGNvbnRyb2xzXG4vL1xuXG4uZm9ybS1jb250cm9sIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQ7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXkgJGlucHV0LXBhZGRpbmcteDtcbiAgZm9udC1mYW1pbHk6ICRpbnB1dC1mb250LWZhbWlseTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogJGlucHV0LWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGlucHV0LWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmc7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogJGlucHV0LWJvcmRlci13aWR0aCBzb2xpZCAkaW5wdXQtYm9yZGVyLWNvbG9yO1xuXG4gIC8vIE5vdGU6IFRoaXMgaGFzIG5vIGVmZmVjdCBvbiA8c2VsZWN0PnMgaW4gc29tZSBicm93c2VycywgZHVlIHRvIHRoZSBsaW1pdGVkIHN0eWxhYmlsaXR5IG9mIGA8c2VsZWN0PmBzIGluIENTUy5cbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cywgMCk7XG5cbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkaW5wdXQtYm94LXNoYWRvdyk7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGlucHV0LXRyYW5zaXRpb24pO1xuXG4gIC8vIFVuc3R5bGUgdGhlIGNhcmV0IG9uIGA8c2VsZWN0PmBzIGluIElFMTArLlxuICAmOjotbXMtZXhwYW5kIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IDA7XG4gIH1cblxuICAvLyBDdXN0b21pemUgdGhlIGA6Zm9jdXNgIHN0YXRlIHRvIGltaXRhdGUgbmF0aXZlIFdlYktpdCBzdHlsZXMuXG4gIEBpbmNsdWRlIGZvcm0tY29udHJvbC1mb2N1cygkaWdub3JlLXdhcm5pbmc6IHRydWUpO1xuXG4gIC8vIFBsYWNlaG9sZGVyXG4gICY6OnBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yO1xuICAgIC8vIE92ZXJyaWRlIEZpcmVmb3gncyB1bnVzdWFsIGRlZmF1bHQgb3BhY2l0eTsgc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzExNTI2LlxuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAvLyBEaXNhYmxlZCBhbmQgcmVhZC1vbmx5IGlucHV0c1xuICAvL1xuICAvLyBIVE1MNSBzYXlzIHRoYXQgY29udHJvbHMgdW5kZXIgYSBmaWVsZHNldCA+IGxlZ2VuZDpmaXJzdC1jaGlsZCB3b24ndCBiZVxuICAvLyBkaXNhYmxlZCBpZiB0aGUgZmllbGRzZXQgaXMgZGlzYWJsZWQuIER1ZSB0byBpbXBsZW1lbnRhdGlvbiBkaWZmaWN1bHR5LCB3ZVxuICAvLyBkb24ndCBob25vciB0aGF0IGVkZ2UgY2FzZTsgd2Ugc3R5bGUgdGhlbSBhcyBkaXNhYmxlZCBhbnl3YXkuXG4gICY6ZGlzYWJsZWQsXG4gICZbcmVhZG9ubHldIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtZGlzYWJsZWQtYmc7XG4gICAgLy8gaU9TIGZpeCBmb3IgdW5yZWFkYWJsZSBkaXNhYmxlZCBjb250ZW50OyBzZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMTY1NS5cbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbmlucHV0W3R5cGU9XCJkYXRlXCJdLFxuaW5wdXRbdHlwZT1cInRpbWVcIl0sXG5pbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl0sXG5pbnB1dFt0eXBlPVwibW9udGhcIl0ge1xuICAmLmZvcm0tY29udHJvbCB7XG4gICAgYXBwZWFyYW5jZTogbm9uZTsgLy8gRml4IGFwcGVhcmFuY2UgZm9yIGRhdGUgaW5wdXRzIGluIFNhZmFyaVxuICB9XG59XG5cbnNlbGVjdC5mb3JtLWNvbnRyb2wge1xuICAvLyBSZW1vdmUgc2VsZWN0IG91dGxpbmUgZnJvbSBzZWxlY3QgYm94IGluIEZGXG4gICY6LW1vei1mb2N1c3Jpbmcge1xuICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB0ZXh0LXNoYWRvdzogMCAwIDAgJGlucHV0LWNvbG9yO1xuICB9XG5cbiAgJjpmb2N1czo6LW1zLXZhbHVlIHtcbiAgICAvLyBTdXBwcmVzcyB0aGUgbmVzdGVkIGRlZmF1bHQgd2hpdGUgdGV4dCBvbiBibHVlIGJhY2tncm91bmQgaGlnaGxpZ2h0IGdpdmVuIHRvXG4gICAgLy8gdGhlIHNlbGVjdGVkIG9wdGlvbiB0ZXh0IHdoZW4gdGhlIChzdGlsbCBjbG9zZWQpIDxzZWxlY3Q+IHJlY2VpdmVzIGZvY3VzXG4gICAgLy8gaW4gSUUgYW5kICh1bmRlciBjZXJ0YWluIGNvbmRpdGlvbnMpIEVkZ2UsIGFzIGl0IGxvb2tzIGJhZCBhbmQgY2Fubm90IGJlIG1hZGUgdG9cbiAgICAvLyBtYXRjaCB0aGUgYXBwZWFyYW5jZSBvZiB0aGUgbmF0aXZlIHdpZGdldC5cbiAgICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xOTM5OC5cbiAgICBjb2xvcjogJGlucHV0LWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iZztcbiAgfVxufVxuXG4vLyBNYWtlIGZpbGUgaW5wdXRzIGJldHRlciBtYXRjaCB0ZXh0IGlucHV0cyBieSBmb3JjaW5nIHRoZW0gdG8gbmV3IGxpbmVzLlxuLmZvcm0tY29udHJvbC1maWxlLFxuLmZvcm0tY29udHJvbC1yYW5nZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbn1cblxuXG4vL1xuLy8gTGFiZWxzXG4vL1xuXG4vLyBGb3IgdXNlIHdpdGggaG9yaXpvbnRhbCBhbmQgaW5saW5lIGZvcm1zLCB3aGVuIHlvdSBuZWVkIHRoZSBsYWJlbCAob3IgbGVnZW5kKVxuLy8gdGV4dCB0byBhbGlnbiB3aXRoIHRoZSBmb3JtIGNvbnRyb2xzLlxuLmNvbC1mb3JtLWxhYmVsIHtcbiAgcGFkZGluZy10b3A6IGFkZCgkaW5wdXQtcGFkZGluZy15LCAkaW5wdXQtYm9yZGVyLXdpZHRoKTtcbiAgcGFkZGluZy1ib3R0b206IGFkZCgkaW5wdXQtcGFkZGluZy15LCAkaW5wdXQtYm9yZGVyLXdpZHRoKTtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gT3ZlcnJpZGUgdGhlIGA8bGFiZWw+LzxsZWdlbmQ+YCBkZWZhdWx0XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZShpbmhlcml0KTsgLy8gT3ZlcnJpZGUgdGhlIGA8bGVnZW5kPmAgZGVmYXVsdFxuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0O1xufVxuXG4uY29sLWZvcm0tbGFiZWwtbGcge1xuICBwYWRkaW5nLXRvcDogYWRkKCRpbnB1dC1wYWRkaW5nLXktbGcsICRpbnB1dC1ib3JkZXItd2lkdGgpO1xuICBwYWRkaW5nLWJvdHRvbTogYWRkKCRpbnB1dC1wYWRkaW5nLXktbGcsICRpbnB1dC1ib3JkZXItd2lkdGgpO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZS1sZyk7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQtbGc7XG59XG5cbi5jb2wtZm9ybS1sYWJlbC1zbSB7XG4gIHBhZGRpbmctdG9wOiBhZGQoJGlucHV0LXBhZGRpbmcteS1zbSwgJGlucHV0LWJvcmRlci13aWR0aCk7XG4gIHBhZGRpbmctYm90dG9tOiBhZGQoJGlucHV0LXBhZGRpbmcteS1zbSwgJGlucHV0LWJvcmRlci13aWR0aCk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplLXNtKTtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodC1zbTtcbn1cblxuXG4vLyBSZWFkb25seSBjb250cm9scyBhcyBwbGFpbiB0ZXh0XG4vL1xuLy8gQXBwbHkgY2xhc3MgdG8gYSByZWFkb25seSBpbnB1dCB0byBtYWtlIGl0IGFwcGVhciBsaWtlIHJlZ3VsYXIgcGxhaW5cbi8vIHRleHQgKHdpdGhvdXQgYW55IGJvcmRlciwgYmFja2dyb3VuZCBjb2xvciwgZm9jdXMgaW5kaWNhdG9yKVxuXG4uZm9ybS1jb250cm9sLXBsYWludGV4dCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteSAwO1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBtYXRjaCBpbnB1dHMgaWYgdGhpcyBjbGFzcyBjb21lcyBvbiBpbnB1dHMgd2l0aCBkZWZhdWx0IG1hcmdpbnNcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUpO1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGlucHV0LXBsYWludGV4dC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci13aWR0aDogJGlucHV0LWJvcmRlci13aWR0aCAwO1xuXG4gICYuZm9ybS1jb250cm9sLXNtLFxuICAmLmZvcm0tY29udHJvbC1sZyB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cbn1cblxuXG4vLyBGb3JtIGNvbnRyb2wgc2l6aW5nXG4vL1xuLy8gQnVpbGQgb24gYC5mb3JtLWNvbnRyb2xgIHdpdGggbW9kaWZpZXIgY2xhc3NlcyB0byBkZWNyZWFzZSBvciBpbmNyZWFzZSB0aGVcbi8vIGhlaWdodCBhbmQgZm9udC1zaXplIG9mIGZvcm0gY29udHJvbHMuXG4vL1xuLy8gUmVwZWF0ZWQgaW4gYF9pbnB1dF9ncm91cC5zY3NzYCB0byBhdm9pZCBTYXNzIGV4dGVuZCBpc3N1ZXMuXG5cbi5mb3JtLWNvbnRyb2wtc20ge1xuICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtc207XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXktc20gJGlucHV0LXBhZGRpbmcteC1zbTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUtc20pO1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0LXNtO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzLXNtKTtcbn1cblxuLmZvcm0tY29udHJvbC1sZyB7XG4gIGhlaWdodDogJGlucHV0LWhlaWdodC1sZztcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteS1sZyAkaW5wdXQtcGFkZGluZy14LWxnO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZS1sZyk7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQtbGc7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMtbGcpO1xufVxuXG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tZHVwbGljYXRlLXNlbGVjdG9yc1xuc2VsZWN0LmZvcm0tY29udHJvbCB7XG4gICZbc2l6ZV0sXG4gICZbbXVsdGlwbGVdIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbn1cblxudGV4dGFyZWEuZm9ybS1jb250cm9sIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4vLyBGb3JtIGdyb3Vwc1xuLy9cbi8vIERlc2lnbmVkIHRvIGhlbHAgd2l0aCB0aGUgb3JnYW5pemF0aW9uIGFuZCBzcGFjaW5nIG9mIHZlcnRpY2FsIGZvcm1zLiBGb3Jcbi8vIGhvcml6b250YWwgZm9ybXMsIHVzZSB0aGUgcHJlZGVmaW5lZCBncmlkIGNsYXNzZXMuXG5cbi5mb3JtLWdyb3VwIHtcbiAgbWFyZ2luLWJvdHRvbTogJGZvcm0tZ3JvdXAtbWFyZ2luLWJvdHRvbTtcbn1cblxuLmZvcm0tdGV4dCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tdG9wOiAkZm9ybS10ZXh0LW1hcmdpbi10b3A7XG59XG5cblxuLy8gRm9ybSBncmlkXG4vL1xuLy8gU3BlY2lhbCByZXBsYWNlbWVudCBmb3Igb3VyIGdyaWQgc3lzdGVtJ3MgYC5yb3dgIGZvciB0aWdodGVyIGZvcm0gbGF5b3V0cy5cblxuLmZvcm0tcm93IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBtYXJnaW4tcmlnaHQ6IC0kZm9ybS1ncmlkLWd1dHRlci13aWR0aCAqIC41O1xuICBtYXJnaW4tbGVmdDogLSRmb3JtLWdyaWQtZ3V0dGVyLXdpZHRoICogLjU7XG5cbiAgPiAuY29sLFxuICA+IFtjbGFzcyo9XCJjb2wtXCJdIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkZm9ybS1ncmlkLWd1dHRlci13aWR0aCAqIC41O1xuICAgIHBhZGRpbmctbGVmdDogJGZvcm0tZ3JpZC1ndXR0ZXItd2lkdGggKiAuNTtcbiAgfVxufVxuXG5cbi8vIENoZWNrYm94ZXMgYW5kIHJhZGlvc1xuLy9cbi8vIEluZGVudCB0aGUgbGFiZWxzIHRvIHBvc2l0aW9uIHJhZGlvcy9jaGVja2JveGVzIGFzIGhhbmdpbmcgY29udHJvbHMuXG5cbi5mb3JtLWNoZWNrIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZy1sZWZ0OiAkZm9ybS1jaGVjay1pbnB1dC1ndXR0ZXI7XG59XG5cbi5mb3JtLWNoZWNrLWlucHV0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBtYXJnaW4tdG9wOiAkZm9ybS1jaGVjay1pbnB1dC1tYXJnaW4teTtcbiAgbWFyZ2luLWxlZnQ6IC0kZm9ybS1jaGVjay1pbnB1dC1ndXR0ZXI7XG5cbiAgLy8gVXNlIFtkaXNhYmxlZF0gYW5kIDpkaXNhYmxlZCBmb3Igd29ya2Fyb3VuZCBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI4MjQ3XG4gICZbZGlzYWJsZWRdIH4gLmZvcm0tY2hlY2stbGFiZWwsXG4gICY6ZGlzYWJsZWQgfiAuZm9ybS1jaGVjay1sYWJlbCB7XG4gICAgY29sb3I6ICR0ZXh0LW11dGVkO1xuICB9XG59XG5cbi5mb3JtLWNoZWNrLWxhYmVsIHtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gT3ZlcnJpZGUgZGVmYXVsdCBgPGxhYmVsPmAgYm90dG9tIG1hcmdpblxufVxuXG4uZm9ybS1jaGVjay1pbmxpbmUge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZy1sZWZ0OiAwOyAvLyBPdmVycmlkZSBiYXNlIC5mb3JtLWNoZWNrXG4gIG1hcmdpbi1yaWdodDogJGZvcm0tY2hlY2staW5saW5lLW1hcmdpbi14O1xuXG4gIC8vIFVuZG8gLmZvcm0tY2hlY2staW5wdXQgZGVmYXVsdHMgYW5kIGFkZCBzb21lIGBtYXJnaW4tcmlnaHRgLlxuICAuZm9ybS1jaGVjay1pbnB1dCB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1yaWdodDogJGZvcm0tY2hlY2staW5saW5lLWlucHV0LW1hcmdpbi14O1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG59XG5cblxuLy8gRm9ybSB2YWxpZGF0aW9uXG4vL1xuLy8gUHJvdmlkZSBmZWVkYmFjayB0byB1c2VycyB3aGVuIGZvcm0gZmllbGQgdmFsdWVzIGFyZSB2YWxpZCBvciBpbnZhbGlkLiBXb3Jrc1xuLy8gcHJpbWFyaWx5IGZvciBjbGllbnQtc2lkZSB2YWxpZGF0aW9uIHZpYSBzY29wZWQgYDppbnZhbGlkYCBhbmQgYDp2YWxpZGBcbi8vIHBzZXVkby1jbGFzc2VzIGJ1dCBhbHNvIGluY2x1ZGVzIGAuaXMtaW52YWxpZGAgYW5kIGAuaXMtdmFsaWRgIGNsYXNzZXMgZm9yXG4vLyBzZXJ2ZXIgc2lkZSB2YWxpZGF0aW9uLlxuXG5AZWFjaCAkc3RhdGUsICRkYXRhIGluICRmb3JtLXZhbGlkYXRpb24tc3RhdGVzIHtcbiAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlKCRzdGF0ZSwgbWFwLWdldCgkZGF0YSwgY29sb3IpLCBtYXAtZ2V0KCRkYXRhLCBpY29uKSk7XG59XG5cbi8vIElubGluZSBmb3Jtc1xuLy9cbi8vIE1ha2UgZm9ybXMgYXBwZWFyIGlubGluZSgtYmxvY2spIGJ5IGFkZGluZyB0aGUgYC5mb3JtLWlubGluZWAgY2xhc3MuIElubGluZVxuLy8gZm9ybXMgYmVnaW4gc3RhY2tlZCBvbiBleHRyYSBzbWFsbCAobW9iaWxlKSBkZXZpY2VzIGFuZCB0aGVuIGdvIGlubGluZSB3aGVuXG4vLyB2aWV3cG9ydHMgcmVhY2ggPDc2OHB4LlxuLy9cbi8vIFJlcXVpcmVzIHdyYXBwaW5nIGlucHV0cyBhbmQgbGFiZWxzIHdpdGggYC5mb3JtLWdyb3VwYCBmb3IgcHJvcGVyIGRpc3BsYXkgb2Zcbi8vIGRlZmF1bHQgSFRNTCBmb3JtIGNvbnRyb2xzIGFuZCBvdXIgY3VzdG9tIGZvcm0gY29udHJvbHMgKGUuZy4sIGlucHV0IGdyb3VwcykuXG5cbi5mb3JtLWlubGluZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IC8vIFByZXZlbnQgc2hvcnRlciBlbGVtZW50cyBmcm9tIGdyb3dpbmcgdG8gc2FtZSBoZWlnaHQgYXMgb3RoZXJzIChlLmcuLCBzbWFsbCBidXR0b25zIGdyb3dpbmcgdG8gbm9ybWFsIHNpemVkIGJ1dHRvbiBoZWlnaHQpXG5cbiAgLy8gQmVjYXVzZSB3ZSB1c2UgZmxleCwgdGhlIGluaXRpYWwgc2l6aW5nIG9mIGNoZWNrYm94ZXMgaXMgY29sbGFwc2VkIGFuZFxuICAvLyBkb2Vzbid0IG9jY3VweSB0aGUgZnVsbC13aWR0aCAod2hpY2ggaXMgd2hhdCB3ZSB3YW50IGZvciB4cyBncmlkIHRpZXIpLFxuICAvLyBzbyB3ZSBmb3JjZSB0aGF0IGhlcmUuXG4gIC5mb3JtLWNoZWNrIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIC8vIEtpY2sgaW4gdGhlIGlubGluZVxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gICAgbGFiZWwge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuXG4gICAgLy8gSW5saW5lLWJsb2NrIGFsbCB0aGUgdGhpbmdzIGZvciBcImlubGluZVwiXG4gICAgLmZvcm0tZ3JvdXAge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cblxuICAgIC8vIEFsbG93IGZvbGtzIHRvICpub3QqIHVzZSBgLmZvcm0tZ3JvdXBgXG4gICAgLmZvcm0tY29udHJvbCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB3aWR0aDogYXV0bzsgLy8gUHJldmVudCBsYWJlbHMgZnJvbSBzdGFja2luZyBhYm92ZSBpbnB1dHMgaW4gYC5mb3JtLWdyb3VwYFxuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB9XG5cbiAgICAvLyBNYWtlIHN0YXRpYyBjb250cm9scyBiZWhhdmUgbGlrZSByZWd1bGFyIG9uZXNcbiAgICAuZm9ybS1jb250cm9sLXBsYWludGV4dCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuXG4gICAgLmlucHV0LWdyb3VwLFxuICAgIC5jdXN0b20tc2VsZWN0IHtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgIH1cblxuICAgIC8vIFJlbW92ZSBkZWZhdWx0IG1hcmdpbiBvbiByYWRpb3MvY2hlY2tib3hlcyB0aGF0IHdlcmUgdXNlZCBmb3Igc3RhY2tpbmcsIGFuZFxuICAgIC8vIHRoZW4gdW5kbyB0aGUgZmxvYXRpbmcgb2YgcmFkaW9zIGFuZCBjaGVja2JveGVzIHRvIG1hdGNoLlxuICAgIC5mb3JtLWNoZWNrIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICB9XG4gICAgLmZvcm0tY2hlY2staW5wdXQge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAkZm9ybS1jaGVjay1pbnB1dC1tYXJnaW4teDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cblxuICAgIC5jdXN0b20tY29udHJvbCB7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgfVxuICAgIC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG5AbWl4aW4gdHJhbnNpdGlvbigkdHJhbnNpdGlvbi4uLikge1xuICBAaWYgbGVuZ3RoKCR0cmFuc2l0aW9uKSA9PSAwIHtcbiAgICAkdHJhbnNpdGlvbjogJHRyYW5zaXRpb24tYmFzZTtcbiAgfVxuXG4gIEBpZiBsZW5ndGgoJHRyYW5zaXRpb24pID4gMSB7XG4gICAgQGVhY2ggJHZhbHVlIGluICR0cmFuc2l0aW9uIHtcbiAgICAgIEBpZiAkdmFsdWUgPT0gbnVsbCBvciAkdmFsdWUgPT0gbm9uZSB7XG4gICAgICAgIEB3YXJuIFwiVGhlIGtleXdvcmQgJ25vbmUnIG9yICdudWxsJyBtdXN0IGJlIHVzZWQgYXMgYSBzaW5nbGUgYXJndW1lbnQuXCI7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGlmICRlbmFibGUtdHJhbnNpdGlvbnMge1xuICAgIEBpZiBudGgoJHRyYW5zaXRpb24sIDEpICE9IG51bGwge1xuICAgICAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb247XG4gICAgfVxuXG4gICAgQGlmICRlbmFibGUtcHJlZmVycy1yZWR1Y2VkLW1vdGlvbi1tZWRpYS1xdWVyeSBhbmQgbnRoKCR0cmFuc2l0aW9uLCAxKSAhPSBudWxsIGFuZCBudGgoJHRyYW5zaXRpb24sIDEpICE9IG5vbmUge1xuICAgICAgQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgICAgICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvcm0gY29udHJvbCBmb2N1cyBzdGF0ZVxuLy9cbi8vIEdlbmVyYXRlIGEgY3VzdG9taXplZCBmb2N1cyBzdGF0ZSBhbmQgZm9yIGFueSBpbnB1dCB3aXRoIHRoZSBzcGVjaWZpZWQgY29sb3IsXG4vLyB3aGljaCBkZWZhdWx0cyB0byB0aGUgYCRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3JgIHZhcmlhYmxlLlxuLy9cbi8vIFdlIGhpZ2hseSBlbmNvdXJhZ2UgeW91IHRvIG5vdCBjdXN0b21pemUgdGhlIGRlZmF1bHQgdmFsdWUsIGJ1dCBpbnN0ZWFkIHVzZVxuLy8gdGhpcyB0byB0d2VhayBjb2xvcnMgb24gYW4gYXMtbmVlZGVkIGJhc2lzLiBUaGlzIGFlc3RoZXRpYyBjaGFuZ2UgaXMgYmFzZWQgb25cbi8vIFdlYktpdCdzIGRlZmF1bHQgc3R5bGVzLCBidXQgYXBwbGljYWJsZSB0byBhIHdpZGVyIHJhbmdlIG9mIGJyb3dzZXJzLiBJdHNcbi8vIHVzYWJpbGl0eSBhbmQgYWNjZXNzaWJpbGl0eSBzaG91bGQgYmUgdGFrZW4gaW50byBhY2NvdW50IHdpdGggYW55IGNoYW5nZS5cbi8vXG4vLyBFeGFtcGxlIHVzYWdlOiBjaGFuZ2UgdGhlIGRlZmF1bHQgYmx1ZSBib3JkZXIgYW5kIHNoYWRvdyB0byB3aGl0ZSBmb3IgYmV0dGVyXG4vLyBjb250cmFzdCBhZ2FpbnN0IGEgZGFyayBncmF5IGJhY2tncm91bmQuXG5AbWl4aW4gZm9ybS1jb250cm9sLWZvY3VzKCRpZ25vcmUtd2FybmluZzogZmFsc2UpIHtcbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6ICRpbnB1dC1mb2N1cy1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtZm9jdXMtYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yO1xuICAgIG91dGxpbmU6IDA7XG4gICAgQGlmICRlbmFibGUtc2hhZG93cyB7XG4gICAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRpbnB1dC1ib3gtc2hhZG93LCAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdyk7XG4gICAgfSBAZWxzZSB7XG4gICAgICAvLyBBdm9pZCB1c2luZyBtaXhpbiBzbyB3ZSBjYW4gcGFzcyBjdXN0b20gZm9jdXMgc2hhZG93IHByb3Blcmx5XG4gICAgICBib3gtc2hhZG93OiAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdztcbiAgICB9XG4gIH1cbiAgQGluY2x1ZGUgZGVwcmVjYXRlKFwiVGhlIGBmb3JtLWNvbnRyb2wtZm9jdXMoKWAgbWl4aW5cIiwgXCJ2NC40LjBcIiwgXCJ2NVwiLCAkaWdub3JlLXdhcm5pbmcpO1xufVxuXG4vLyBUaGlzIG1peGluIHVzZXMgYW4gYGlmKClgIHRlY2huaXF1ZSB0byBiZSBjb21wYXRpYmxlIHdpdGggRGFydCBTYXNzXG4vLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3Nhc3Mvc2Fzcy9pc3N1ZXMvMTg3MyNpc3N1ZWNvbW1lbnQtMTUyMjkzNzI1IGZvciBtb3JlIGRldGFpbHNcbkBtaXhpbiBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gIEBpZiAoJHN0YXRlID09IFwidmFsaWRcIiBvciAkc3RhdGUgPT0gXCJpbnZhbGlkXCIpIHtcbiAgICAud2FzLXZhbGlkYXRlZCAje2lmKCYsIFwiJlwiLCBcIlwiKX06I3skc3RhdGV9LFxuICAgICN7aWYoJiwgXCImXCIsIFwiXCIpfS5pcy0jeyRzdGF0ZX0ge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICAje2lmKCYsIFwiJlwiLCBcIlwiKX0uaXMtI3skc3RhdGV9IHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gZm9ybS12YWxpZGF0aW9uLXN0YXRlKCRzdGF0ZSwgJGNvbG9yLCAkaWNvbikge1xuICAuI3skc3RhdGV9LWZlZWRiYWNrIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi10b3A6ICRmb3JtLWZlZWRiYWNrLW1hcmdpbi10b3A7XG4gICAgQGluY2x1ZGUgZm9udC1zaXplKCRmb3JtLWZlZWRiYWNrLWZvbnQtc2l6ZSk7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgfVxuXG4gIC4jeyRzdGF0ZX0tdG9vbHRpcCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMTAwJTtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6IDU7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7IC8vIENvbnRhaW4gdG8gcGFyZW50IHdoZW4gcG9zc2libGVcbiAgICBwYWRkaW5nOiAkZm9ybS1mZWVkYmFjay10b29sdGlwLXBhZGRpbmcteSAkZm9ybS1mZWVkYmFjay10b29sdGlwLXBhZGRpbmcteDtcbiAgICBtYXJnaW4tdG9wOiAuMXJlbTtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1mb250LXNpemUpO1xuICAgIGxpbmUtaGVpZ2h0OiAkZm9ybS1mZWVkYmFjay10b29sdGlwLWxpbmUtaGVpZ2h0O1xuICAgIGNvbG9yOiBjb2xvci15aXEoJGNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvciwgJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1vcGFjaXR5KTtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtYm9yZGVyLXJhZGl1cyk7XG5cbiAgICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMzE1NTdcbiAgICAvLyBBbGlnbiB0b29sdGlwIHRvIGZvcm0gZWxlbWVudHNcbiAgICAuZm9ybS1yb3cgPiAuY29sID4gJixcbiAgICAuZm9ybS1yb3cgPiBbY2xhc3MqPVwiY29sLVwiXSA+ICYge1xuICAgICAgbGVmdDogJGZvcm0tZ3JpZC1ndXR0ZXItd2lkdGggKiAuNTtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gICAgfiAuI3skc3RhdGV9LWZlZWRiYWNrLFxuICAgIH4gLiN7JHN0YXRlfS10b29sdGlwIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxuXG4gIC5mb3JtLWNvbnRyb2wge1xuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuXG4gICAgICBAaWYgJGVuYWJsZS12YWxpZGF0aW9uLWljb25zIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogJGlucHV0LWhlaWdodC1pbm5lciAhaW1wb3J0YW50OyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRpY29uKTtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgJGlucHV0LWhlaWdodC1pbm5lci1xdWFydGVyIGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAkaW5wdXQtaGVpZ2h0LWlubmVyLWhhbGYgJGlucHV0LWhlaWdodC1pbm5lci1oYWxmO1xuICAgICAgfVxuXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRpbnB1dC1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjI1KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG4gIHNlbGVjdC5mb3JtLWNvbnRyb2wge1xuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICAgIEBpZiAkZW5hYmxlLXZhbGlkYXRpb24taWNvbnMge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkaW5wdXQtcGFkZGluZy14ICogNCAhaW1wb3J0YW50OyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCAkaW5wdXQtcGFkZGluZy14ICogMiBjZW50ZXI7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuICB0ZXh0YXJlYS5mb3JtLWNvbnRyb2wge1xuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICAgIEBpZiAkZW5hYmxlLXZhbGlkYXRpb24taWNvbnMge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkaW5wdXQtaGVpZ2h0LWlubmVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgJGlucHV0LWhlaWdodC1pbm5lci1xdWFydGVyIHJpZ2h0ICRpbnB1dC1oZWlnaHQtaW5uZXItcXVhcnRlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuY3VzdG9tLXNlbGVjdCB7XG4gICAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG5cbiAgICAgIEBpZiAkZW5hYmxlLXZhbGlkYXRpb24taWNvbnMge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkY3VzdG9tLXNlbGVjdC1mZWVkYmFjay1pY29uLXBhZGRpbmctcmlnaHQgIWltcG9ydGFudDsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcbiAgICAgICAgYmFja2dyb3VuZDogJGN1c3RvbS1zZWxlY3QtYmFja2dyb3VuZCwgJGN1c3RvbS1zZWxlY3QtYmcgZXNjYXBlLXN2ZygkaWNvbikgJGN1c3RvbS1zZWxlY3QtZmVlZGJhY2staWNvbi1wb3NpdGlvbiAvICRjdXN0b20tc2VsZWN0LWZlZWRiYWNrLWljb24tc2l6ZSBuby1yZXBlYXQ7XG4gICAgICB9XG5cbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGlucHV0LWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAuMjUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gICAgICB+IC5mb3JtLWNoZWNrLWxhYmVsIHtcbiAgICAgICAgY29sb3I6ICRjb2xvcjtcbiAgICAgIH1cblxuICAgICAgfiAuI3skc3RhdGV9LWZlZWRiYWNrLFxuICAgICAgfiAuI3skc3RhdGV9LXRvb2x0aXAge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuY3VzdG9tLWNvbnRyb2wtaW5wdXQge1xuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICAgIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICAgICAgY29sb3I6ICRjb2xvcjtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICY6Y2hlY2tlZCB7XG4gICAgICAgIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogbGlnaHRlbigkY29sb3IsIDEwJSk7XG4gICAgICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcobGlnaHRlbigkY29sb3IsIDEwJSkpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICY6Zm9jdXMge1xuICAgICAgICB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAkaW5wdXQtZm9jdXMtd2lkdGggcmdiYSgkY29sb3IsIC4yNSk7XG4gICAgICAgIH1cblxuICAgICAgICAmOm5vdCg6Y2hlY2tlZCkgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBjdXN0b20gZmlsZVxuICAuY3VzdG9tLWZpbGUtaW5wdXQge1xuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICAgIH4gLmN1c3RvbS1maWxlLWxhYmVsIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgICB9XG5cbiAgICAgICY6Zm9jdXMge1xuICAgICAgICB+IC5jdXN0b20tZmlsZS1sYWJlbCB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGlucHV0LWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAuMjUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBHcmFkaWVudHNcblxuQG1peGluIGdyYWRpZW50LWJnKCRjb2xvcikge1xuICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgIGJhY2tncm91bmQ6ICRjb2xvciBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCBtaXgoJGJvZHktYmcsICRjb2xvciwgMTUlKSwgJGNvbG9yKSByZXBlYXQteDtcbiAgfSBAZWxzZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuICB9XG59XG5cbi8vIEhvcml6b250YWwgZ3JhZGllbnQsIGZyb20gbGVmdCB0byByaWdodFxuLy9cbi8vIENyZWF0ZXMgdHdvIGNvbG9yIHN0b3BzLCBzdGFydCBhbmQgZW5kLCBieSBzcGVjaWZ5aW5nIGEgY29sb3IgYW5kIHBvc2l0aW9uIGZvciBlYWNoIGNvbG9yIHN0b3AuXG5AbWl4aW4gZ3JhZGllbnQteCgkc3RhcnQtY29sb3I6ICRncmF5LTcwMCwgJGVuZC1jb2xvcjogJGdyYXktODAwLCAkc3RhcnQtcGVyY2VudDogMCUsICRlbmQtcGVyY2VudDogMTAwJSkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICRzdGFydC1jb2xvciAkc3RhcnQtcGVyY2VudCwgJGVuZC1jb2xvciAkZW5kLXBlcmNlbnQpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG59XG5cbi8vIFZlcnRpY2FsIGdyYWRpZW50LCBmcm9tIHRvcCB0byBib3R0b21cbi8vXG4vLyBDcmVhdGVzIHR3byBjb2xvciBzdG9wcywgc3RhcnQgYW5kIGVuZCwgYnkgc3BlY2lmeWluZyBhIGNvbG9yIGFuZCBwb3NpdGlvbiBmb3IgZWFjaCBjb2xvciBzdG9wLlxuQG1peGluIGdyYWRpZW50LXkoJHN0YXJ0LWNvbG9yOiAkZ3JheS03MDAsICRlbmQtY29sb3I6ICRncmF5LTgwMCwgJHN0YXJ0LXBlcmNlbnQ6IDAlLCAkZW5kLXBlcmNlbnQ6IDEwMCUpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgJHN0YXJ0LWNvbG9yICRzdGFydC1wZXJjZW50LCAkZW5kLWNvbG9yICRlbmQtcGVyY2VudCk7XG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbn1cblxuQG1peGluIGdyYWRpZW50LWRpcmVjdGlvbmFsKCRzdGFydC1jb2xvcjogJGdyYXktNzAwLCAkZW5kLWNvbG9yOiAkZ3JheS04MDAsICRkZWc6IDQ1ZGVnKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkZGVnLCAkc3RhcnQtY29sb3IsICRlbmQtY29sb3IpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG59XG5AbWl4aW4gZ3JhZGllbnQteC10aHJlZS1jb2xvcnMoJHN0YXJ0LWNvbG9yOiAkYmx1ZSwgJG1pZC1jb2xvcjogJHB1cnBsZSwgJGNvbG9yLXN0b3A6IDUwJSwgJGVuZC1jb2xvcjogJHJlZCkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICRzdGFydC1jb2xvciwgJG1pZC1jb2xvciAkY29sb3Itc3RvcCwgJGVuZC1jb2xvcik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG5AbWl4aW4gZ3JhZGllbnQteS10aHJlZS1jb2xvcnMoJHN0YXJ0LWNvbG9yOiAkYmx1ZSwgJG1pZC1jb2xvcjogJHB1cnBsZSwgJGNvbG9yLXN0b3A6IDUwJSwgJGVuZC1jb2xvcjogJHJlZCkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cbkBtaXhpbiBncmFkaWVudC1yYWRpYWwoJGlubmVyLWNvbG9yOiAkZ3JheS03MDAsICRvdXRlci1jb2xvcjogJGdyYXktODAwKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHJhZGlhbC1ncmFkaWVudChjaXJjbGUsICRpbm5lci1jb2xvciwgJG91dGVyLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cbkBtaXhpbiBncmFkaWVudC1zdHJpcGVkKCRjb2xvcjogcmdiYSgkd2hpdGUsIC4xNSksICRhbmdsZTogNDVkZWcpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCRhbmdsZSwgJGNvbG9yIDI1JSwgdHJhbnNwYXJlbnQgMjUlLCB0cmFuc3BhcmVudCA1MCUsICRjb2xvciA1MCUsICRjb2xvciA3NSUsIHRyYW5zcGFyZW50IDc1JSwgdHJhbnNwYXJlbnQpO1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG5cbi8vXG4vLyBCYXNlIHN0eWxlc1xuLy9cblxuLmJ0biB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1mYW1pbHk6ICRidG4tZm9udC1mYW1pbHk7XG4gIGZvbnQtd2VpZ2h0OiAkYnRuLWZvbnQtd2VpZ2h0O1xuICBjb2xvcjogJGJvZHktY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1kZWNvcmF0aW9uID09IG5vbmUsIG51bGwsIG5vbmUpO1xuICB3aGl0ZS1zcGFjZTogJGJ0bi13aGl0ZS1zcGFjZTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6ICRidG4tYm9yZGVyLXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBAaW5jbHVkZSBidXR0b24tc2l6ZSgkYnRuLXBhZGRpbmcteSwgJGJ0bi1wYWRkaW5nLXgsICRidG4tZm9udC1zaXplLCAkYnRuLWxpbmUtaGVpZ2h0LCAkYnRuLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRidG4tdHJhbnNpdGlvbik7XG5cbiAgQGluY2x1ZGUgaG92ZXIoKSB7XG4gICAgY29sb3I6ICRib2R5LWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gICY6Zm9jdXMsXG4gICYuZm9jdXMge1xuICAgIG91dGxpbmU6IDA7XG4gICAgYm94LXNoYWRvdzogJGJ0bi1mb2N1cy1ib3gtc2hhZG93O1xuICB9XG5cbiAgLy8gRGlzYWJsZWQgY29tZXMgZmlyc3Qgc28gYWN0aXZlIGNhbiBwcm9wZXJseSByZXN0eWxlXG4gICYuZGlzYWJsZWQsXG4gICY6ZGlzYWJsZWQge1xuICAgIG9wYWNpdHk6ICRidG4tZGlzYWJsZWQtb3BhY2l0eTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO1xuICB9XG5cbiAgJjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKSB7XG4gICAgY3Vyc29yOiBpZigkZW5hYmxlLXBvaW50ZXItY3Vyc29yLWZvci1idXR0b25zLCBwb2ludGVyLCBudWxsKTtcblxuICAgICY6YWN0aXZlLFxuICAgICYuYWN0aXZlIHtcbiAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGJ0bi1hY3RpdmUtYm94LXNoYWRvdyk7XG5cbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRidG4tZm9jdXMtYm94LXNoYWRvdywgJGJ0bi1hY3RpdmUtYm94LXNoYWRvdyk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIEZ1dHVyZS1wcm9vZiBkaXNhYmxpbmcgb2YgY2xpY2tzIG9uIGA8YT5gIGVsZW1lbnRzXG5hLmJ0bi5kaXNhYmxlZCxcbmZpZWxkc2V0OmRpc2FibGVkIGEuYnRuIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cblxuLy9cbi8vIEFsdGVybmF0ZSBidXR0b25zXG4vL1xuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgLmJ0bi0jeyRjb2xvcn0ge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KCR2YWx1ZSwgJHZhbHVlKTtcbiAgfVxufVxuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgLmJ0bi1vdXRsaW5lLSN7JGNvbG9yfSB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLW91dGxpbmUtdmFyaWFudCgkdmFsdWUpO1xuICB9XG59XG5cblxuLy9cbi8vIExpbmsgYnV0dG9uc1xuLy9cblxuLy8gTWFrZSBhIGJ1dHRvbiBsb29rIGFuZCBiZWhhdmUgbGlrZSBhIGxpbmtcbi5idG4tbGluayB7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xuICBjb2xvcjogJGxpbmstY29sb3I7XG4gIHRleHQtZGVjb3JhdGlvbjogJGxpbmstZGVjb3JhdGlvbjtcblxuICBAaW5jbHVkZSBob3ZlcigpIHtcbiAgICBjb2xvcjogJGxpbmstaG92ZXItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay1ob3Zlci1kZWNvcmF0aW9uO1xuICB9XG5cbiAgJjpmb2N1cyxcbiAgJi5mb2N1cyB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay1ob3Zlci1kZWNvcmF0aW9uO1xuICB9XG5cbiAgJjpkaXNhYmxlZCxcbiAgJi5kaXNhYmxlZCB7XG4gICAgY29sb3I6ICRidG4tbGluay1kaXNhYmxlZC1jb2xvcjtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgfVxuXG4gIC8vIE5vIG5lZWQgZm9yIGFuIGFjdGl2ZSBzdGF0ZSBoZXJlXG59XG5cblxuLy9cbi8vIEJ1dHRvbiBTaXplc1xuLy9cblxuLmJ0bi1sZyB7XG4gIEBpbmNsdWRlIGJ1dHRvbi1zaXplKCRidG4tcGFkZGluZy15LWxnLCAkYnRuLXBhZGRpbmcteC1sZywgJGJ0bi1mb250LXNpemUtbGcsICRidG4tbGluZS1oZWlnaHQtbGcsICRidG4tYm9yZGVyLXJhZGl1cy1sZyk7XG59XG5cbi5idG4tc20ge1xuICBAaW5jbHVkZSBidXR0b24tc2l6ZSgkYnRuLXBhZGRpbmcteS1zbSwgJGJ0bi1wYWRkaW5nLXgtc20sICRidG4tZm9udC1zaXplLXNtLCAkYnRuLWxpbmUtaGVpZ2h0LXNtLCAkYnRuLWJvcmRlci1yYWRpdXMtc20pO1xufVxuXG5cbi8vXG4vLyBCbG9jayBidXR0b25cbi8vXG5cbi5idG4tYmxvY2sge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG5cbiAgLy8gVmVydGljYWxseSBzcGFjZSBvdXQgbXVsdGlwbGUgYmxvY2sgYnV0dG9uc1xuICArIC5idG4tYmxvY2sge1xuICAgIG1hcmdpbi10b3A6ICRidG4tYmxvY2stc3BhY2luZy15O1xuICB9XG59XG5cbi8vIFNwZWNpZmljaXR5IG92ZXJyaWRlc1xuaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSxcbmlucHV0W3R5cGU9XCJyZXNldFwiXSxcbmlucHV0W3R5cGU9XCJidXR0b25cIl0ge1xuICAmLmJ0bi1ibG9jayB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbiIsIi8vIEJ1dHRvbiB2YXJpYW50c1xuLy9cbi8vIEVhc2lseSBwdW1wIG91dCBkZWZhdWx0IHN0eWxlcywgYXMgd2VsbCBhcyA6aG92ZXIsIDpmb2N1cywgOmFjdGl2ZSxcbi8vIGFuZCBkaXNhYmxlZCBvcHRpb25zIGZvciBhbGwgYnV0dG9uc1xuXG5AbWl4aW4gYnV0dG9uLXZhcmlhbnQoJGJhY2tncm91bmQsICRib3JkZXIsICRob3Zlci1iYWNrZ3JvdW5kOiBkYXJrZW4oJGJhY2tncm91bmQsIDcuNSUpLCAkaG92ZXItYm9yZGVyOiBkYXJrZW4oJGJvcmRlciwgMTAlKSwgJGFjdGl2ZS1iYWNrZ3JvdW5kOiBkYXJrZW4oJGJhY2tncm91bmQsIDEwJSksICRhY3RpdmUtYm9yZGVyOiBkYXJrZW4oJGJvcmRlciwgMTIuNSUpKSB7XG4gIGNvbG9yOiBjb2xvci15aXEoJGJhY2tncm91bmQpO1xuICBAaW5jbHVkZSBncmFkaWVudC1iZygkYmFja2dyb3VuZCk7XG4gIGJvcmRlci1jb2xvcjogJGJvcmRlcjtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkYnRuLWJveC1zaGFkb3cpO1xuXG4gIEBpbmNsdWRlIGhvdmVyKCkge1xuICAgIGNvbG9yOiBjb2xvci15aXEoJGhvdmVyLWJhY2tncm91bmQpO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRob3Zlci1iYWNrZ3JvdW5kKTtcbiAgICBib3JkZXItY29sb3I6ICRob3Zlci1ib3JkZXI7XG4gIH1cblxuICAmOmZvY3VzLFxuICAmLmZvY3VzIHtcbiAgICBjb2xvcjogY29sb3IteWlxKCRob3Zlci1iYWNrZ3JvdW5kKTtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkaG92ZXItYmFja2dyb3VuZCk7XG4gICAgYm9yZGVyLWNvbG9yOiAkaG92ZXItYm9yZGVyO1xuICAgIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xuICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkYnRuLWJveC1zaGFkb3csIDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYShtaXgoY29sb3IteWlxKCRiYWNrZ3JvdW5kKSwgJGJvcmRlciwgMTUlKSwgLjUpKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYShtaXgoY29sb3IteWlxKCRiYWNrZ3JvdW5kKSwgJGJvcmRlciwgMTUlKSwgLjUpO1xuICAgIH1cbiAgfVxuXG4gIC8vIERpc2FibGVkIGNvbWVzIGZpcnN0IHNvIGFjdGl2ZSBjYW4gcHJvcGVybHkgcmVzdHlsZVxuICAmLmRpc2FibGVkLFxuICAmOmRpc2FibGVkIHtcbiAgICBjb2xvcjogY29sb3IteWlxKCRiYWNrZ3JvdW5kKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICBib3JkZXItY29sb3I6ICRib3JkZXI7XG4gICAgLy8gUmVtb3ZlIENTUyBncmFkaWVudHMgaWYgdGhleSdyZSBlbmFibGVkXG4gICAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgJjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsXG4gICY6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLFxuICAuc2hvdyA+ICYuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBjb2xvcjogY29sb3IteWlxKCRhY3RpdmUtYmFja2dyb3VuZCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGFjdGl2ZS1iYWNrZ3JvdW5kO1xuICAgIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOyAvLyBSZW1vdmUgdGhlIGdyYWRpZW50IGZvciB0aGUgcHJlc3NlZC9hY3RpdmUgc3RhdGVcbiAgICB9XG4gICAgYm9yZGVyLWNvbG9yOiAkYWN0aXZlLWJvcmRlcjtcblxuICAgICY6Zm9jdXMge1xuICAgICAgQGlmICRlbmFibGUtc2hhZG93cyBhbmQgJGJ0bi1hY3RpdmUtYm94LXNoYWRvdyAhPSBub25lIHtcbiAgICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkYnRuLWFjdGl2ZS1ib3gtc2hhZG93LCAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEobWl4KGNvbG9yLXlpcSgkYmFja2dyb3VuZCksICRib3JkZXIsIDE1JSksIC41KSk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxuICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEobWl4KGNvbG9yLXlpcSgkYmFja2dyb3VuZCksICRib3JkZXIsIDE1JSksIC41KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGJ1dHRvbi1vdXRsaW5lLXZhcmlhbnQoJGNvbG9yLCAkY29sb3ItaG92ZXI6IGNvbG9yLXlpcSgkY29sb3IpLCAkYWN0aXZlLWJhY2tncm91bmQ6ICRjb2xvciwgJGFjdGl2ZS1ib3JkZXI6ICRjb2xvcikge1xuICBjb2xvcjogJGNvbG9yO1xuICBib3JkZXItY29sb3I6ICRjb2xvcjtcblxuICBAaW5jbHVkZSBob3ZlcigpIHtcbiAgICBjb2xvcjogJGNvbG9yLWhvdmVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRhY3RpdmUtYmFja2dyb3VuZDtcbiAgICBib3JkZXItY29sb3I6ICRhY3RpdmUtYm9yZGVyO1xuICB9XG5cbiAgJjpmb2N1cyxcbiAgJi5mb2N1cyB7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjUpO1xuICB9XG5cbiAgJi5kaXNhYmxlZCxcbiAgJjpkaXNhYmxlZCB7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxuXG4gICY6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLFxuICAmOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSxcbiAgLnNob3cgPiAmLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgY29sb3I6IGNvbG9yLXlpcSgkYWN0aXZlLWJhY2tncm91bmQpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRhY3RpdmUtYmFja2dyb3VuZDtcbiAgICBib3JkZXItY29sb3I6ICRhY3RpdmUtYm9yZGVyO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIGFuZCAkYnRuLWFjdGl2ZS1ib3gtc2hhZG93ICE9IG5vbmUge1xuICAgICAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRidG4tYWN0aXZlLWJveC1zaGFkb3csIDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYSgkY29sb3IsIC41KSk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxuICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAuNSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIEJ1dHRvbiBzaXplc1xuQG1peGluIGJ1dHRvbi1zaXplKCRwYWRkaW5nLXksICRwYWRkaW5nLXgsICRmb250LXNpemUsICRsaW5lLWhlaWdodCwgJGJvcmRlci1yYWRpdXMpIHtcbiAgcGFkZGluZzogJHBhZGRpbmcteSAkcGFkZGluZy14O1xuICBAaW5jbHVkZSBmb250LXNpemUoJGZvbnQtc2l6ZSk7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQ7XG4gIC8vIE1hbnVhbGx5IGRlY2xhcmUgdG8gcHJvdmlkZSBhbiBvdmVycmlkZSB0byB0aGUgYnJvd3NlciBkZWZhdWx0XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMsIDApO1xufVxuIiwiLmZhZGUge1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCR0cmFuc2l0aW9uLWZhZGUpO1xuXG4gICY6bm90KC5zaG93KSB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG4uY29sbGFwc2Uge1xuICAmOm5vdCguc2hvdykge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLmNvbGxhcHNpbmcge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkdHJhbnNpdGlvbi1jb2xsYXBzZSk7XG5cbiAgJi53aWR0aCB7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJHRyYW5zaXRpb24tY29sbGFwc2Utd2lkdGgpO1xuICB9XG59XG4iLCIvLyBUaGUgZHJvcGRvd24gd3JhcHBlciAoYDxkaXY+YClcbi5kcm9wdXAsXG4uZHJvcHJpZ2h0LFxuLmRyb3Bkb3duLFxuLmRyb3BsZWZ0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uZHJvcGRvd24tdG9nZ2xlIHtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAvLyBHZW5lcmF0ZSB0aGUgY2FyZXQgYXV0b21hdGljYWxseVxuICBAaW5jbHVkZSBjYXJldCgpO1xufVxuXG4vLyBUaGUgZHJvcGRvd24gbWVudVxuLmRyb3Bkb3duLW1lbnUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMTAwJTtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1kcm9wZG93bjtcbiAgZGlzcGxheTogbm9uZTsgLy8gbm9uZSBieSBkZWZhdWx0LCBidXQgYmxvY2sgb24gXCJvcGVuXCIgb2YgdGhlIG1lbnVcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1pbi13aWR0aDogJGRyb3Bkb3duLW1pbi13aWR0aDtcbiAgcGFkZGluZzogJGRyb3Bkb3duLXBhZGRpbmcteSAkZHJvcGRvd24tcGFkZGluZy14O1xuICBtYXJnaW46ICRkcm9wZG93bi1zcGFjZXIgMCAwOyAvLyBvdmVycmlkZSBkZWZhdWx0IHVsXG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZHJvcGRvd24tZm9udC1zaXplKTtcbiAgY29sb3I6ICRkcm9wZG93bi1jb2xvcjtcbiAgdGV4dC1hbGlnbjogbGVmdDsgLy8gRW5zdXJlcyBwcm9wZXIgYWxpZ25tZW50IGlmIHBhcmVudCBoYXMgaXQgY2hhbmdlZCAoZS5nLiwgbW9kYWwgZm9vdGVyKVxuICBsaXN0LXN0eWxlOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZHJvcGRvd24tYmc7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogJGRyb3Bkb3duLWJvcmRlci13aWR0aCBzb2xpZCAkZHJvcGRvd24tYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRkcm9wZG93bi1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkZHJvcGRvd24tYm94LXNoYWRvdyk7XG59XG5cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIC5kcm9wZG93bi1tZW51I3skaW5maXh9LWxlZnQge1xuICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICBsZWZ0OiAwO1xuICAgIH1cblxuICAgIC5kcm9wZG93bi1tZW51I3skaW5maXh9LXJpZ2h0IHtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgbGVmdDogYXV0bztcbiAgICB9XG4gIH1cbn1cblxuLy8gQWxsb3cgZm9yIGRyb3Bkb3ducyB0byBnbyBib3R0b20gdXAgKGFrYSwgZHJvcHVwLW1lbnUpXG4vLyBKdXN0IGFkZCAuZHJvcHVwIGFmdGVyIHRoZSBzdGFuZGFyZCAuZHJvcGRvd24gY2xhc3MgYW5kIHlvdSdyZSBzZXQuXG4uZHJvcHVwIHtcbiAgLmRyb3Bkb3duLW1lbnUge1xuICAgIHRvcDogYXV0bztcbiAgICBib3R0b206IDEwMCU7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAkZHJvcGRvd24tc3BhY2VyO1xuICB9XG5cbiAgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgQGluY2x1ZGUgY2FyZXQodXApO1xuICB9XG59XG5cbi5kcm9wcmlnaHQge1xuICAuZHJvcGRvd24tbWVudSB7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDEwMCU7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tbGVmdDogJGRyb3Bkb3duLXNwYWNlcjtcbiAgfVxuXG4gIC5kcm9wZG93bi10b2dnbGUge1xuICAgIEBpbmNsdWRlIGNhcmV0KHJpZ2h0KTtcbiAgICAmOjphZnRlciB7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogMDtcbiAgICB9XG4gIH1cbn1cblxuLmRyb3BsZWZ0IHtcbiAgLmRyb3Bkb3duLW1lbnUge1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMTAwJTtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAkZHJvcGRvd24tc3BhY2VyO1xuICB9XG5cbiAgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgQGluY2x1ZGUgY2FyZXQobGVmdCk7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiAwO1xuICAgIH1cbiAgfVxufVxuXG4vLyBXaGVuIFBvcHBlciBpcyBlbmFibGVkLCByZXNldCB0aGUgYmFzaWMgZHJvcGRvd24gcG9zaXRpb25cbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1kdXBsaWNhdGUtc2VsZWN0b3JzXG4uZHJvcGRvd24tbWVudSB7XG4gICZbeC1wbGFjZW1lbnRePVwidG9wXCJdLFxuICAmW3gtcGxhY2VtZW50Xj1cInJpZ2h0XCJdLFxuICAmW3gtcGxhY2VtZW50Xj1cImJvdHRvbVwiXSxcbiAgJlt4LXBsYWNlbWVudF49XCJsZWZ0XCJdIHtcbiAgICByaWdodDogYXV0bztcbiAgICBib3R0b206IGF1dG87XG4gIH1cbn1cblxuLy8gRGl2aWRlcnMgKGJhc2ljYWxseSBhbiBgPGhyPmApIHdpdGhpbiB0aGUgZHJvcGRvd25cbi5kcm9wZG93bi1kaXZpZGVyIHtcbiAgQGluY2x1ZGUgbmF2LWRpdmlkZXIoJGRyb3Bkb3duLWRpdmlkZXItYmcsICRkcm9wZG93bi1kaXZpZGVyLW1hcmdpbi15LCB0cnVlKTtcbn1cblxuLy8gTGlua3MsIGJ1dHRvbnMsIGFuZCBtb3JlIHdpdGhpbiB0aGUgZHJvcGRvd24gbWVudVxuLy9cbi8vIGA8YnV0dG9uPmAtc3BlY2lmaWMgc3R5bGVzIGFyZSBkZW5vdGVkIHdpdGggYC8vIEZvciA8YnV0dG9uPnNgXG4uZHJvcGRvd24taXRlbSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTsgLy8gRm9yIGA8YnV0dG9uPmBzXG4gIHBhZGRpbmc6ICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteSAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXg7XG4gIGNsZWFyOiBib3RoO1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcbiAgY29sb3I6ICRkcm9wZG93bi1saW5rLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBpbmhlcml0OyAvLyBGb3IgYDxidXR0b24+YHNcbiAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1kZWNvcmF0aW9uID09IG5vbmUsIG51bGwsIG5vbmUpO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwOyAvLyBwcmV2ZW50IGxpbmtzIGZyb20gcmFuZG9tbHkgYnJlYWtpbmcgb250byBuZXcgbGluZXNcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IC8vIEZvciBgPGJ1dHRvbj5gc1xuICBib3JkZXI6IDA7IC8vIEZvciBgPGJ1dHRvbj5gc1xuXG4gIC8vIFByZXZlbnQgZHJvcGRvd24gb3ZlcmZsb3cgaWYgdGhlcmUncyBubyBwYWRkaW5nXG4gIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8yNzcwM1xuICBAaWYgJGRyb3Bkb3duLXBhZGRpbmcteSA9PSAwIHtcbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRkcm9wZG93bi1pbm5lci1ib3JkZXItcmFkaXVzKTtcbiAgICB9XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoJGRyb3Bkb3duLWlubmVyLWJvcmRlci1yYWRpdXMpO1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgIGNvbG9yOiAkZHJvcGRvd24tbGluay1ob3Zlci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGRyb3Bkb3duLWxpbmstaG92ZXItYmcpO1xuICB9XG5cbiAgJi5hY3RpdmUsXG4gICY6YWN0aXZlIHtcbiAgICBjb2xvcjogJGRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkZHJvcGRvd24tbGluay1hY3RpdmUtYmcpO1xuICB9XG5cbiAgJi5kaXNhYmxlZCxcbiAgJjpkaXNhYmxlZCB7XG4gICAgY29sb3I6ICRkcm9wZG93bi1saW5rLWRpc2FibGVkLWNvbG9yO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIC8vIFJlbW92ZSBDU1MgZ3JhZGllbnRzIGlmIHRoZXkncmUgZW5hYmxlZFxuICAgIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4uZHJvcGRvd24tbWVudS5zaG93IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8vIERyb3Bkb3duIHNlY3Rpb24gaGVhZGVyc1xuLmRyb3Bkb3duLWhlYWRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAkZHJvcGRvd24taGVhZGVyLXBhZGRpbmc7XG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIGZvciB1c2Ugd2l0aCBoZWFkaW5nIGVsZW1lbnRzXG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9udC1zaXplLXNtKTtcbiAgY29sb3I6ICRkcm9wZG93bi1oZWFkZXItY29sb3I7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7IC8vIGFzIHdpdGggPiBsaSA+IGFcbn1cblxuLy8gRHJvcGRvd24gdGV4dFxuLmRyb3Bkb3duLWl0ZW0tdGV4dCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXkgJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14O1xuICBjb2xvcjogJGRyb3Bkb3duLWxpbmstY29sb3I7XG59XG4iLCJAbWl4aW4gY2FyZXQtZG93bigpIHtcbiAgYm9yZGVyLXRvcDogJGNhcmV0LXdpZHRoIHNvbGlkO1xuICBib3JkZXItcmlnaHQ6ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbiAgYm9yZGVyLWxlZnQ6ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbn1cblxuQG1peGluIGNhcmV0LXVwKCkge1xuICBib3JkZXItdG9wOiAwO1xuICBib3JkZXItcmlnaHQ6ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWJvdHRvbTogJGNhcmV0LXdpZHRoIHNvbGlkO1xuICBib3JkZXItbGVmdDogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xufVxuXG5AbWl4aW4gY2FyZXQtcmlnaHQoKSB7XG4gIGJvcmRlci10b3A6ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0OiAwO1xuICBib3JkZXItYm90dG9tOiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1sZWZ0OiAkY2FyZXQtd2lkdGggc29saWQ7XG59XG5cbkBtaXhpbiBjYXJldC1sZWZ0KCkge1xuICBib3JkZXItdG9wOiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogJGNhcmV0LXdpZHRoIHNvbGlkO1xuICBib3JkZXItYm90dG9tOiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG59XG5cbkBtaXhpbiBjYXJldCgkZGlyZWN0aW9uOiBkb3duKSB7XG4gIEBpZiAkZW5hYmxlLWNhcmV0IHtcbiAgICAmOjphZnRlciB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXJnaW4tbGVmdDogJGNhcmV0LXNwYWNpbmc7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogJGNhcmV0LXZlcnRpY2FsLWFsaWduO1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIEBpZiAkZGlyZWN0aW9uID09IGRvd24ge1xuICAgICAgICBAaW5jbHVkZSBjYXJldC1kb3duKCk7XG4gICAgICB9IEBlbHNlIGlmICRkaXJlY3Rpb24gPT0gdXAge1xuICAgICAgICBAaW5jbHVkZSBjYXJldC11cCgpO1xuICAgICAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IHJpZ2h0IHtcbiAgICAgICAgQGluY2x1ZGUgY2FyZXQtcmlnaHQoKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgJGRpcmVjdGlvbiA9PSBsZWZ0IHtcbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6ICRjYXJldC1zcGFjaW5nO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogJGNhcmV0LXZlcnRpY2FsLWFsaWduO1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBAaW5jbHVkZSBjYXJldC1sZWZ0KCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjplbXB0eTo6YWZ0ZXIge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuICB9XG59XG4iLCIvLyBIb3Jpem9udGFsIGRpdmlkZXJzXG4vL1xuLy8gRGl2aWRlcnMgKGJhc2ljYWxseSBhbiBocikgd2l0aGluIGRyb3Bkb3ducyBhbmQgbmF2IGxpc3RzXG5cbkBtaXhpbiBuYXYtZGl2aWRlcigkY29sb3I6ICRuYXYtZGl2aWRlci1jb2xvciwgJG1hcmdpbi15OiAkbmF2LWRpdmlkZXItbWFyZ2luLXksICRpZ25vcmUtd2FybmluZzogZmFsc2UpIHtcbiAgaGVpZ2h0OiAwO1xuICBtYXJnaW46ICRtYXJnaW4teSAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgJGNvbG9yO1xuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJUaGUgYG5hdi1kaXZpZGVyKClgIG1peGluXCIsIFwidjQuNC4wXCIsIFwidjVcIiwgJGlnbm9yZS13YXJuaW5nKTtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuXG4vLyBNYWtlIHRoZSBkaXYgYmVoYXZlIGxpa2UgYSBidXR0b25cbi5idG4tZ3JvdXAsXG4uYnRuLWdyb3VwLXZlcnRpY2FsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgLy8gbWF0Y2ggLmJ0biBhbGlnbm1lbnQgZ2l2ZW4gZm9udC1zaXplIGhhY2sgYWJvdmVcblxuICA+IC5idG4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmbGV4OiAxIDEgYXV0bztcblxuICAgIC8vIEJyaW5nIHRoZSBob3ZlciwgZm9jdXNlZCwgYW5kIFwiYWN0aXZlXCIgYnV0dG9ucyB0byB0aGUgZnJvbnQgdG8gb3ZlcmxheVxuICAgIC8vIHRoZSBib3JkZXJzIHByb3Blcmx5XG4gICAgQGluY2x1ZGUgaG92ZXIoKSB7XG4gICAgICB6LWluZGV4OiAxO1xuICAgIH1cbiAgICAmOmZvY3VzLFxuICAgICY6YWN0aXZlLFxuICAgICYuYWN0aXZlIHtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgfVxuICB9XG59XG5cbi8vIE9wdGlvbmFsOiBHcm91cCBtdWx0aXBsZSBidXR0b24gZ3JvdXBzIHRvZ2V0aGVyIGZvciBhIHRvb2xiYXJcbi5idG4tdG9vbGJhciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuXG4gIC5pbnB1dC1ncm91cCB7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbn1cblxuLmJ0bi1ncm91cCB7XG4gIC8vIFByZXZlbnQgZG91YmxlIGJvcmRlcnMgd2hlbiBidXR0b25zIGFyZSBuZXh0IHRvIGVhY2ggb3RoZXJcbiAgPiAuYnRuOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIG1hcmdpbi1sZWZ0OiAtJGJ0bi1ib3JkZXItd2lkdGg7XG4gIH1cblxuICAvLyBSZXNldCByb3VuZGVkIGNvcm5lcnNcbiAgPiAuYnRuOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpLFxuICA+IC5idG4tZ3JvdXA6bm90KDpsYXN0LWNoaWxkKSA+IC5idG4ge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoMCk7XG4gIH1cblxuICA+IC5idG46bm90KDpmaXJzdC1jaGlsZCksXG4gID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG4ge1xuICAgIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygwKTtcbiAgfVxufVxuXG4vLyBTaXppbmdcbi8vXG4vLyBSZW1peCB0aGUgZGVmYXVsdCBidXR0b24gc2l6aW5nIGNsYXNzZXMgaW50byBuZXcgb25lcyBmb3IgZWFzaWVyIG1hbmlwdWxhdGlvbi5cblxuLmJ0bi1ncm91cC1zbSA+IC5idG4geyBAZXh0ZW5kIC5idG4tc207IH1cbi5idG4tZ3JvdXAtbGcgPiAuYnRuIHsgQGV4dGVuZCAuYnRuLWxnOyB9XG5cblxuLy9cbi8vIFNwbGl0IGJ1dHRvbiBkcm9wZG93bnNcbi8vXG5cbi5kcm9wZG93bi10b2dnbGUtc3BsaXQge1xuICBwYWRkaW5nLXJpZ2h0OiAkYnRuLXBhZGRpbmcteCAqIC43NTtcbiAgcGFkZGluZy1sZWZ0OiAkYnRuLXBhZGRpbmcteCAqIC43NTtcblxuICAmOjphZnRlcixcbiAgLmRyb3B1cCAmOjphZnRlcixcbiAgLmRyb3ByaWdodCAmOjphZnRlciB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cblxuICAuZHJvcGxlZnQgJjo6YmVmb3JlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbn1cblxuLmJ0bi1zbSArIC5kcm9wZG93bi10b2dnbGUtc3BsaXQge1xuICBwYWRkaW5nLXJpZ2h0OiAkYnRuLXBhZGRpbmcteC1zbSAqIC43NTtcbiAgcGFkZGluZy1sZWZ0OiAkYnRuLXBhZGRpbmcteC1zbSAqIC43NTtcbn1cblxuLmJ0bi1sZyArIC5kcm9wZG93bi10b2dnbGUtc3BsaXQge1xuICBwYWRkaW5nLXJpZ2h0OiAkYnRuLXBhZGRpbmcteC1sZyAqIC43NTtcbiAgcGFkZGluZy1sZWZ0OiAkYnRuLXBhZGRpbmcteC1sZyAqIC43NTtcbn1cblxuXG4vLyBUaGUgY2xpY2thYmxlIGJ1dHRvbiBmb3IgdG9nZ2xpbmcgdGhlIG1lbnVcbi8vIFNldCB0aGUgc2FtZSBpbnNldCBzaGFkb3cgYXMgdGhlIDphY3RpdmUgc3RhdGVcbi5idG4tZ3JvdXAuc2hvdyAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkYnRuLWFjdGl2ZS1ib3gtc2hhZG93KTtcblxuICAvLyBTaG93IG5vIHNoYWRvdyBmb3IgYC5idG4tbGlua2Agc2luY2UgaXQgaGFzIG5vIG90aGVyIGJ1dHRvbiBzdHlsZXMuXG4gICYuYnRuLWxpbmsge1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7XG4gIH1cbn1cblxuXG4vL1xuLy8gVmVydGljYWwgYnV0dG9uIGdyb3Vwc1xuLy9cblxuLmJ0bi1ncm91cC12ZXJ0aWNhbCB7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICA+IC5idG4sXG4gID4gLmJ0bi1ncm91cCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICA+IC5idG46bm90KDpmaXJzdC1jaGlsZCksXG4gID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLXRvcDogLSRidG4tYm9yZGVyLXdpZHRoO1xuICB9XG5cbiAgLy8gUmVzZXQgcm91bmRlZCBjb3JuZXJzXG4gID4gLmJ0bjpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSxcbiAgPiAuYnRuLWdyb3VwOm5vdCg6bGFzdC1jaGlsZCkgPiAuYnRuIHtcbiAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygwKTtcbiAgfVxuXG4gID4gLmJ0bjpub3QoOmZpcnN0LWNoaWxkKSxcbiAgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmJ0biB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoMCk7XG4gIH1cbn1cblxuXG4vLyBDaGVja2JveCBhbmQgcmFkaW8gb3B0aW9uc1xuLy9cbi8vIEluIG9yZGVyIHRvIHN1cHBvcnQgdGhlIGJyb3dzZXIncyBmb3JtIHZhbGlkYXRpb24gZmVlZGJhY2ssIHBvd2VyZWQgYnkgdGhlXG4vLyBgcmVxdWlyZWRgIGF0dHJpYnV0ZSwgd2UgaGF2ZSB0byBcImhpZGVcIiB0aGUgaW5wdXRzIHZpYSBgY2xpcGAuIFdlIGNhbm5vdCB1c2Vcbi8vIGBkaXNwbGF5OiBub25lO2Agb3IgYHZpc2liaWxpdHk6IGhpZGRlbjtgIGFzIHRoYXQgYWxzbyBoaWRlcyB0aGUgcG9wb3Zlci5cbi8vIFNpbXBseSB2aXN1YWxseSBoaWRpbmcgdGhlIGlucHV0cyB2aWEgYG9wYWNpdHlgIHdvdWxkIGxlYXZlIHRoZW0gY2xpY2thYmxlIGluXG4vLyBjZXJ0YWluIGNhc2VzIHdoaWNoIGlzIHByZXZlbnRlZCBieSB1c2luZyBgY2xpcGAgYW5kIGBwb2ludGVyLWV2ZW50c2AuXG4vLyBUaGlzIHdheSwgd2UgZW5zdXJlIGEgRE9NIGVsZW1lbnQgaXMgdmlzaWJsZSB0byBwb3NpdGlvbiB0aGUgcG9wb3ZlciBmcm9tLlxuLy9cbi8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8xMjc5NCBhbmRcbi8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzE0NTU5IGZvciBtb3JlIGluZm9ybWF0aW9uLlxuXG4uYnRuLWdyb3VwLXRvZ2dsZSB7XG4gID4gLmJ0bixcbiAgPiAuYnRuLWdyb3VwID4gLmJ0biB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgLy8gT3ZlcnJpZGUgZGVmYXVsdCBgPGxhYmVsPmAgdmFsdWVcblxuICAgIGlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbiAgICBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG5cbi8vXG4vLyBCYXNlIHN0eWxlc1xuLy9cblxuLmlucHV0LWdyb3VwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7IC8vIEZvciBmb3JtIHZhbGlkYXRpb24gZmVlZGJhY2tcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gIHdpZHRoOiAxMDAlO1xuXG4gID4gLmZvcm0tY29udHJvbCxcbiAgPiAuZm9ybS1jb250cm9sLXBsYWludGV4dCxcbiAgPiAuY3VzdG9tLXNlbGVjdCxcbiAgPiAuY3VzdG9tLWZpbGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgLy8gRm9yIGZvY3VzIHN0YXRlJ3Mgei1pbmRleFxuICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgIHdpZHRoOiAxJTtcbiAgICBtaW4td2lkdGg6IDA7IC8vIGh0dHBzOi8vc3RhY2tvdmVyZmxvdy5jb20vcXVlc3Rpb25zLzM2MjQ3MTQwL3doeS1kb250LWZsZXgtaXRlbXMtc2hyaW5rLXBhc3QtY29udGVudC1zaXplXG4gICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICsgLmZvcm0tY29udHJvbCxcbiAgICArIC5jdXN0b20tc2VsZWN0LFxuICAgICsgLmN1c3RvbS1maWxlIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtJGlucHV0LWJvcmRlci13aWR0aDtcbiAgICB9XG4gIH1cblxuICAvLyBCcmluZyB0aGUgXCJhY3RpdmVcIiBmb3JtIGNvbnRyb2wgdG8gdGhlIHRvcCBvZiBzdXJyb3VuZGluZyBlbGVtZW50c1xuICA+IC5mb3JtLWNvbnRyb2w6Zm9jdXMsXG4gID4gLmN1c3RvbS1zZWxlY3Q6Zm9jdXMsXG4gID4gLmN1c3RvbS1maWxlIC5jdXN0b20tZmlsZS1pbnB1dDpmb2N1cyB+IC5jdXN0b20tZmlsZS1sYWJlbCB7XG4gICAgei1pbmRleDogMztcbiAgfVxuXG4gIC8vIEJyaW5nIHRoZSBjdXN0b20gZmlsZSBpbnB1dCBhYm92ZSB0aGUgbGFiZWxcbiAgPiAuY3VzdG9tLWZpbGUgLmN1c3RvbS1maWxlLWlucHV0OmZvY3VzIHtcbiAgICB6LWluZGV4OiA0O1xuICB9XG5cbiAgPiAuZm9ybS1jb250cm9sLFxuICA+IC5jdXN0b20tc2VsZWN0IHtcbiAgICAmOm5vdCg6Zmlyc3QtY2hpbGQpIHsgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKDApOyB9XG4gIH1cblxuICAvLyBDdXN0b20gZmlsZSBpbnB1dHMgaGF2ZSBtb3JlIGNvbXBsZXggbWFya3VwLCB0aHVzIHJlcXVpcmluZyBkaWZmZXJlbnRcbiAgLy8gYm9yZGVyLXJhZGl1cyBvdmVycmlkZXMuXG4gID4gLmN1c3RvbS1maWxlIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAmOm5vdCg6bGFzdC1jaGlsZCkgLmN1c3RvbS1maWxlLWxhYmVsLFxuICAgICY6bm90KDpsYXN0LWNoaWxkKSAuY3VzdG9tLWZpbGUtbGFiZWw6OmFmdGVyIHsgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygwKTsgfVxuICAgICY6bm90KDpmaXJzdC1jaGlsZCkgLmN1c3RvbS1maWxlLWxhYmVsIHsgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKDApOyB9XG4gIH1cblxuICAmOm5vdCguaGFzLXZhbGlkYXRpb24pIHtcbiAgICA+IC5mb3JtLWNvbnRyb2w6bm90KDpsYXN0LWNoaWxkKSxcbiAgICA+IC5jdXN0b20tc2VsZWN0Om5vdCg6bGFzdC1jaGlsZCksXG4gICAgPiAuY3VzdG9tLWZpbGU6bm90KDpsYXN0LWNoaWxkKSAuY3VzdG9tLWZpbGUtbGFiZWwsXG4gICAgPiAuY3VzdG9tLWZpbGU6bm90KDpsYXN0LWNoaWxkKSAuY3VzdG9tLWZpbGUtbGFiZWw6OmFmdGVyIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoMCk7XG4gICAgfVxuICB9XG5cbiAgJi5oYXMtdmFsaWRhdGlvbiB7XG4gICAgPiAuZm9ybS1jb250cm9sOm50aC1sYXN0LWNoaWxkKG4gKyAzKSxcbiAgICA+IC5jdXN0b20tc2VsZWN0Om50aC1sYXN0LWNoaWxkKG4gKyAzKSxcbiAgICA+IC5jdXN0b20tZmlsZTpudGgtbGFzdC1jaGlsZChuICsgMykgLmN1c3RvbS1maWxlLWxhYmVsLFxuICAgID4gLmN1c3RvbS1maWxlOm50aC1sYXN0LWNoaWxkKG4gKyAzKSAuY3VzdG9tLWZpbGUtbGFiZWw6OmFmdGVyIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoMCk7XG4gICAgfVxuICB9XG59XG5cblxuLy8gUHJlcGVuZCBhbmQgYXBwZW5kXG4vL1xuLy8gV2hpbGUgaXQgcmVxdWlyZXMgb25lIGV4dHJhIGxheWVyIG9mIEhUTUwgZm9yIGVhY2gsIGRlZGljYXRlZCBwcmVwZW5kIGFuZFxuLy8gYXBwZW5kIGVsZW1lbnRzIGFsbG93IHVzIHRvIDEpIGJlIGxlc3MgY2xldmVyLCAyKSBzaW1wbGlmeSBvdXIgc2VsZWN0b3JzLCBhbmRcbi8vIDMpIHN1cHBvcnQgSFRNTDUgZm9ybSB2YWxpZGF0aW9uLlxuXG4uaW5wdXQtZ3JvdXAtcHJlcGVuZCxcbi5pbnB1dC1ncm91cC1hcHBlbmQge1xuICBkaXNwbGF5OiBmbGV4O1xuXG4gIC8vIEVuc3VyZSBidXR0b25zIGFyZSBhbHdheXMgYWJvdmUgaW5wdXRzIGZvciBtb3JlIHZpc3VhbGx5IHBsZWFzaW5nIGJvcmRlcnMuXG4gIC8vIFRoaXMgaXNuJ3QgbmVlZGVkIGZvciBgLmlucHV0LWdyb3VwLXRleHRgIHNpbmNlIGl0IHNoYXJlcyB0aGUgc2FtZSBib3JkZXItY29sb3JcbiAgLy8gYXMgb3VyIGlucHV0cy5cbiAgLmJ0biB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDI7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIHotaW5kZXg6IDM7XG4gICAgfVxuICB9XG5cbiAgLmJ0biArIC5idG4sXG4gIC5idG4gKyAuaW5wdXQtZ3JvdXAtdGV4dCxcbiAgLmlucHV0LWdyb3VwLXRleHQgKyAuaW5wdXQtZ3JvdXAtdGV4dCxcbiAgLmlucHV0LWdyb3VwLXRleHQgKyAuYnRuIHtcbiAgICBtYXJnaW4tbGVmdDogLSRpbnB1dC1ib3JkZXItd2lkdGg7XG4gIH1cbn1cblxuLmlucHV0LWdyb3VwLXByZXBlbmQgeyBtYXJnaW4tcmlnaHQ6IC0kaW5wdXQtYm9yZGVyLXdpZHRoOyB9XG4uaW5wdXQtZ3JvdXAtYXBwZW5kIHsgbWFyZ2luLWxlZnQ6IC0kaW5wdXQtYm9yZGVyLXdpZHRoOyB9XG5cblxuLy8gVGV4dHVhbCBhZGRvbnNcbi8vXG4vLyBTZXJ2ZXMgYXMgYSBjYXRjaC1hbGwgZWxlbWVudCBmb3IgYW55IHRleHQgb3IgcmFkaW8vY2hlY2tib3ggaW5wdXQgeW91IHdpc2hcbi8vIHRvIHByZXBlbmQgb3IgYXBwZW5kIHRvIGFuIGlucHV0LlxuXG4uaW5wdXQtZ3JvdXAtdGV4dCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXkgJGlucHV0LXBhZGRpbmcteDtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gQWxsb3cgdXNlIG9mIDxsYWJlbD4gZWxlbWVudHMgYnkgb3ZlcnJpZGluZyBvdXIgZGVmYXVsdCBtYXJnaW4tYm90dG9tXG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplKTsgLy8gTWF0Y2ggaW5wdXRzXG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGlucHV0LWdyb3VwLWFkZG9uLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1ncm91cC1hZGRvbi1iZztcbiAgYm9yZGVyOiAkaW5wdXQtYm9yZGVyLXdpZHRoIHNvbGlkICRpbnB1dC1ncm91cC1hZGRvbi1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMpO1xuXG4gIC8vIE51a2UgZGVmYXVsdCBtYXJnaW5zIGZyb20gY2hlY2tib3hlcyBhbmQgcmFkaW9zIHRvIHZlcnRpY2FsbHkgY2VudGVyIHdpdGhpbi5cbiAgaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxuICBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cbn1cblxuXG4vLyBTaXppbmdcbi8vXG4vLyBSZW1peCB0aGUgZGVmYXVsdCBmb3JtIGNvbnRyb2wgc2l6aW5nIGNsYXNzZXMgaW50byBuZXcgb25lcyBmb3IgZWFzaWVyXG4vLyBtYW5pcHVsYXRpb24uXG5cbi5pbnB1dC1ncm91cC1sZyA+IC5mb3JtLWNvbnRyb2w6bm90KHRleHRhcmVhKSxcbi5pbnB1dC1ncm91cC1sZyA+IC5jdXN0b20tc2VsZWN0IHtcbiAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWxnO1xufVxuXG4uaW5wdXQtZ3JvdXAtbGcgPiAuZm9ybS1jb250cm9sLFxuLmlucHV0LWdyb3VwLWxnID4gLmN1c3RvbS1zZWxlY3QsXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZCA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwLWxnID4gLmlucHV0LWdyb3VwLWFwcGVuZCA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwLWxnID4gLmlucHV0LWdyb3VwLXByZXBlbmQgPiAuYnRuLFxuLmlucHV0LWdyb3VwLWxnID4gLmlucHV0LWdyb3VwLWFwcGVuZCA+IC5idG4ge1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15LWxnICRpbnB1dC1wYWRkaW5nLXgtbGc7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplLWxnKTtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodC1sZztcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cy1sZyk7XG59XG5cbi5pbnB1dC1ncm91cC1zbSA+IC5mb3JtLWNvbnRyb2w6bm90KHRleHRhcmVhKSxcbi5pbnB1dC1ncm91cC1zbSA+IC5jdXN0b20tc2VsZWN0IHtcbiAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LXNtO1xufVxuXG4uaW5wdXQtZ3JvdXAtc20gPiAuZm9ybS1jb250cm9sLFxuLmlucHV0LWdyb3VwLXNtID4gLmN1c3RvbS1zZWxlY3QsXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZCA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLWFwcGVuZCA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLXByZXBlbmQgPiAuYnRuLFxuLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLWFwcGVuZCA+IC5idG4ge1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15LXNtICRpbnB1dC1wYWRkaW5nLXgtc207XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplLXNtKTtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodC1zbTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cy1zbSk7XG59XG5cbi5pbnB1dC1ncm91cC1sZyA+IC5jdXN0b20tc2VsZWN0LFxuLmlucHV0LWdyb3VwLXNtID4gLmN1c3RvbS1zZWxlY3Qge1xuICBwYWRkaW5nLXJpZ2h0OiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXggKyAkY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZztcbn1cblxuXG4vLyBQcmVwZW5kIGFuZCBhcHBlbmQgcm91bmRlZCBjb3JuZXJzXG4vL1xuLy8gVGhlc2UgcnVsZXNldHMgbXVzdCBjb21lIGFmdGVyIHRoZSBzaXppbmcgb25lcyB0byBwcm9wZXJseSBvdmVycmlkZSBzbSBhbmQgbGdcbi8vIGJvcmRlci1yYWRpdXMgdmFsdWVzIHdoZW4gZXh0ZW5kaW5nLiBUaGV5J3JlIG1vcmUgc3BlY2lmaWMgdGhhbiB3ZSdkIGxpa2Vcbi8vIHdpdGggdGhlIGAuaW5wdXQtZ3JvdXAgPmAgcGFydCwgYnV0IHdpdGhvdXQgaXQsIHdlIGNhbm5vdCBvdmVycmlkZSB0aGUgc2l6aW5nLlxuXG5cbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1wcmVwZW5kID4gLmJ0bixcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1wcmVwZW5kID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXA6bm90KC5oYXMtdmFsaWRhdGlvbikgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kOm5vdCg6bGFzdC1jaGlsZCkgPiAuYnRuLFxuLmlucHV0LWdyb3VwOm5vdCguaGFzLXZhbGlkYXRpb24pID4gLmlucHV0LWdyb3VwLWFwcGVuZDpub3QoOmxhc3QtY2hpbGQpID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAuaGFzLXZhbGlkYXRpb24gPiAuaW5wdXQtZ3JvdXAtYXBwZW5kOm50aC1sYXN0LWNoaWxkKG4gKyAzKSA+IC5idG4sXG4uaW5wdXQtZ3JvdXAuaGFzLXZhbGlkYXRpb24gPiAuaW5wdXQtZ3JvdXAtYXBwZW5kOm50aC1sYXN0LWNoaWxkKG4gKyAzKSA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLWFwcGVuZDpsYXN0LWNoaWxkID4gLmJ0bjpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSxcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1hcHBlbmQ6bGFzdC1jaGlsZCA+IC5pbnB1dC1ncm91cC10ZXh0Om5vdCg6bGFzdC1jaGlsZCkge1xuICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKDApO1xufVxuXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kID4gLmJ0bixcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1hcHBlbmQgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1wcmVwZW5kOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmJ0bixcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1wcmVwZW5kOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZDpmaXJzdC1jaGlsZCA+IC5idG46bm90KDpmaXJzdC1jaGlsZCksXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZDpmaXJzdC1jaGlsZCA+IC5pbnB1dC1ncm91cC10ZXh0Om5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKDApO1xufVxuIiwiLy8gRW1iZWRkZWQgaWNvbnMgZnJvbSBPcGVuIEljb25pYy5cbi8vIFJlbGVhc2VkIHVuZGVyIE1JVCBhbmQgY29weXJpZ2h0IDIwMTQgV2F5YnVyeS5cbi8vIGh0dHBzOi8vdXNlaWNvbmljLmNvbS9vcGVuXG5cblxuLy8gQ2hlY2tib3hlcyBhbmQgcmFkaW9zXG4vL1xuLy8gQmFzZSBjbGFzcyB0YWtlcyBjYXJlIG9mIGFsbCB0aGUga2V5IGJlaGF2aW9yYWwgYXNwZWN0cy5cblxuLmN1c3RvbS1jb250cm9sIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWluLWhlaWdodDogJGZvbnQtc2l6ZS1iYXNlICogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gIHBhZGRpbmctbGVmdDogJGN1c3RvbS1jb250cm9sLWd1dHRlciArICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZTtcbiAgcHJpbnQtY29sb3ItYWRqdXN0OiBleGFjdDsgLy8gS2VlcCB0aGVtZWQgYXBwZWFyYW5jZSBmb3IgcHJpbnRcbn1cblxuLmN1c3RvbS1jb250cm9sLWlubGluZSB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBtYXJnaW4tcmlnaHQ6ICRjdXN0b20tY29udHJvbC1zcGFjZXIteDtcbn1cblxuLmN1c3RvbS1jb250cm9sLWlucHV0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAtMTsgLy8gUHV0IHRoZSBpbnB1dCBiZWhpbmQgdGhlIGxhYmVsIHNvIGl0IGRvZXNuJ3Qgb3ZlcmxheSB0ZXh0XG4gIHdpZHRoOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemU7XG4gIGhlaWdodDogKCRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlICsgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplKSAqIC41O1xuICBvcGFjaXR5OiAwO1xuXG4gICY6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICBjb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWNvbG9yO1xuICAgIGJvcmRlci1jb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWJvcmRlci1jb2xvcjtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtYmcpO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWJveC1zaGFkb3cpO1xuICB9XG5cbiAgJjpmb2N1cyB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAvLyB0aGUgbWl4aW4gaXMgbm90IHVzZWQgaGVyZSB0byBtYWtlIHN1cmUgdGhlcmUgaXMgZmVlZGJhY2tcbiAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAgIGJveC1zaGFkb3c6ICRpbnB1dC1ib3gtc2hhZG93LCAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWZvY3VzLWJveC1zaGFkb3c7XG4gICAgfSBAZWxzZSB7XG4gICAgICBib3gtc2hhZG93OiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWZvY3VzLWJveC1zaGFkb3c7XG4gICAgfVxuICB9XG5cbiAgJjpmb2N1czpub3QoOmNoZWNrZWQpIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgIGJvcmRlci1jb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1mb2N1cy1ib3JkZXItY29sb3I7XG4gIH1cblxuICAmOm5vdCg6ZGlzYWJsZWQpOmFjdGl2ZSB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICBjb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1ib3JkZXItY29sb3I7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1ib3gtc2hhZG93KTtcbiAgfVxuXG4gIC8vIFVzZSBbZGlzYWJsZWRdIGFuZCA6ZGlzYWJsZWQgdG8gd29yayBhcm91bmQgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yODI0N1xuICAmW2Rpc2FibGVkXSxcbiAgJjpkaXNhYmxlZCB7XG4gICAgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICAgICAgY29sb3I6ICRjdXN0b20tY29udHJvbC1sYWJlbC1kaXNhYmxlZC1jb2xvcjtcblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1kaXNhYmxlZC1iZztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gQ3VzdG9tIGNvbnRyb2wgaW5kaWNhdG9yc1xuLy9cbi8vIEJ1aWxkIHRoZSBjdXN0b20gY29udHJvbHMgb3V0IG9mIHBzZXVkby1lbGVtZW50cy5cblxuLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBjb2xvcjogJGN1c3RvbS1jb250cm9sLWxhYmVsLWNvbG9yO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICBjdXJzb3I6ICRjdXN0b20tY29udHJvbC1jdXJzb3I7XG5cbiAgLy8gQmFja2dyb3VuZC1jb2xvciBhbmQgKHdoZW4gZW5hYmxlZCkgZ3JhZGllbnRcbiAgJjo6YmVmb3JlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAoJGZvbnQtc2l6ZS1iYXNlICogJGxpbmUtaGVpZ2h0LWJhc2UgLSAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUpICogLjU7XG4gICAgbGVmdDogLSgkY3VzdG9tLWNvbnRyb2wtZ3V0dGVyICsgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplKTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplO1xuICAgIGhlaWdodDogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1iZztcbiAgICBib3JkZXI6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm9yZGVyLXdpZHRoIHNvbGlkICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm9yZGVyLWNvbG9yO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3gtc2hhZG93KTtcbiAgfVxuXG4gIC8vIEZvcmVncm91bmQgKGljb24pXG4gICY6OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAoJGZvbnQtc2l6ZS1iYXNlICogJGxpbmUtaGVpZ2h0LWJhc2UgLSAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUpICogLjU7XG4gICAgbGVmdDogLSgkY3VzdG9tLWNvbnRyb2wtZ3V0dGVyICsgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplKTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplO1xuICAgIGhlaWdodDogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgYmFja2dyb3VuZDogNTAlIC8gI3skY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJnLXNpemV9IG5vLXJlcGVhdDtcbiAgfVxufVxuXG5cbi8vIENoZWNrYm94ZXNcbi8vXG4vLyBUd2VhayBqdXN0IGEgZmV3IHRoaW5ncyBmb3IgY2hlY2tib3hlcy5cblxuLmN1c3RvbS1jaGVja2JveCB7XG4gIC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWJvcmRlci1yYWRpdXMpO1xuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICAgICY6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaWNvbi1jaGVja2VkKTtcbiAgICB9XG4gIH1cblxuICAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6aW5kZXRlcm1pbmF0ZSB+IC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1ib3JkZXItY29sb3I7XG4gICAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWJnKTtcbiAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1ib3gtc2hhZG93KTtcbiAgICB9XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pY29uLWluZGV0ZXJtaW5hdGUpO1xuICAgIH1cbiAgfVxuXG4gIC5jdXN0b20tY29udHJvbC1pbnB1dDpkaXNhYmxlZCB7XG4gICAgJjpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWRpc2FibGVkLWJnKTtcbiAgICB9XG4gICAgJjppbmRldGVybWluYXRlIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWRpc2FibGVkLWJnKTtcbiAgICB9XG4gIH1cbn1cblxuLy8gUmFkaW9zXG4vL1xuLy8gVHdlYWsganVzdCBhIGZldyB0aGluZ3MgZm9yIHJhZGlvcy5cblxuLmN1c3RvbS1yYWRpbyB7XG4gIC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gICAgYm9yZGVyLXJhZGl1czogJGN1c3RvbS1yYWRpby1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1cztcbiAgfVxuXG4gIC5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICAmOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRjdXN0b20tcmFkaW8taW5kaWNhdG9yLWljb24tY2hlY2tlZCk7XG4gICAgfVxuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLWlucHV0OmRpc2FibGVkIHtcbiAgICAmOmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtZGlzYWJsZWQtYmcpO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIHN3aXRjaGVzXG4vL1xuLy8gVHdlYWsgYSBmZXcgdGhpbmdzIGZvciBzd2l0Y2hlc1xuXG4uY3VzdG9tLXN3aXRjaCB7XG4gIHBhZGRpbmctbGVmdDogJGN1c3RvbS1zd2l0Y2gtd2lkdGggKyAkY3VzdG9tLWNvbnRyb2wtZ3V0dGVyO1xuXG4gIC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGxlZnQ6IC0oJGN1c3RvbS1zd2l0Y2gtd2lkdGggKyAkY3VzdG9tLWNvbnRyb2wtZ3V0dGVyKTtcbiAgICAgIHdpZHRoOiAkY3VzdG9tLXN3aXRjaC13aWR0aDtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBhbGw7XG4gICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gICAgICBib3JkZXItcmFkaXVzOiAkY3VzdG9tLXN3aXRjaC1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1cztcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICB0b3A6IGFkZCgoJGZvbnQtc2l6ZS1iYXNlICogJGxpbmUtaGVpZ2h0LWJhc2UgLSAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUpICogLjUsICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm9yZGVyLXdpZHRoICogMik7XG4gICAgICBsZWZ0OiBhZGQoLSgkY3VzdG9tLXN3aXRjaC13aWR0aCArICRjdXN0b20tY29udHJvbC1ndXR0ZXIpLCAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJvcmRlci13aWR0aCAqIDIpO1xuICAgICAgd2lkdGg6ICRjdXN0b20tc3dpdGNoLWluZGljYXRvci1zaXplO1xuICAgICAgaGVpZ2h0OiAkY3VzdG9tLXN3aXRjaC1pbmRpY2F0b3Itc2l6ZTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm9yZGVyLWNvbG9yO1xuICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuICAgICAgYm9yZGVyLXJhZGl1czogJGN1c3RvbS1zd2l0Y2gtaW5kaWNhdG9yLWJvcmRlci1yYWRpdXM7XG4gICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKHRyYW5zZm9ybSAuMTVzIGVhc2UtaW4tb3V0LCAkY3VzdG9tLWZvcm1zLXRyYW5zaXRpb24pO1xuICAgIH1cbiAgfVxuXG4gIC5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICAmOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJnO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKCRjdXN0b20tc3dpdGNoLXdpZHRoIC0gJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplKTtcbiAgICB9XG4gIH1cblxuICAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6ZGlzYWJsZWQge1xuICAgICY6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1kaXNhYmxlZC1iZyk7XG4gICAgfVxuICB9XG59XG5cblxuLy8gU2VsZWN0XG4vL1xuLy8gUmVwbGFjZXMgdGhlIGJyb3dzZXIgZGVmYXVsdCBzZWxlY3Qgd2l0aCBhIGN1c3RvbSBvbmUsIG1vc3RseSBwdWxsZWQgZnJvbVxuLy8gaHR0cHM6Ly9wcmltZXIuZ2l0aHViLmlvLy5cbi8vXG5cbi5jdXN0b20tc2VsZWN0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAkY3VzdG9tLXNlbGVjdC1oZWlnaHQ7XG4gIHBhZGRpbmc6ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteSAoJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14ICsgJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmcpICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteSAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXg7XG4gIGZvbnQtZmFtaWx5OiAkY3VzdG9tLXNlbGVjdC1mb250LWZhbWlseTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRjdXN0b20tc2VsZWN0LWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkY3VzdG9tLXNlbGVjdC1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRjdXN0b20tc2VsZWN0LWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGN1c3RvbS1zZWxlY3QtY29sb3I7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGJhY2tncm91bmQ6ICRjdXN0b20tc2VsZWN0LWJnICRjdXN0b20tc2VsZWN0LWJhY2tncm91bmQ7XG4gIGJvcmRlcjogJGN1c3RvbS1zZWxlY3QtYm9yZGVyLXdpZHRoIHNvbGlkICRjdXN0b20tc2VsZWN0LWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY3VzdG9tLXNlbGVjdC1ib3JkZXItcmFkaXVzLCAwKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLXNlbGVjdC1ib3gtc2hhZG93KTtcbiAgYXBwZWFyYW5jZTogbm9uZTtcblxuICAmOmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6ICRjdXN0b20tc2VsZWN0LWZvY3VzLWJvcmRlci1jb2xvcjtcbiAgICBvdXRsaW5lOiAwO1xuICAgIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xuICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLXNlbGVjdC1ib3gtc2hhZG93LCAkY3VzdG9tLXNlbGVjdC1mb2N1cy1ib3gtc2hhZG93KTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgICAgIGJveC1zaGFkb3c6ICRjdXN0b20tc2VsZWN0LWZvY3VzLWJveC1zaGFkb3c7XG4gICAgfVxuXG4gICAgJjo6LW1zLXZhbHVlIHtcbiAgICAgIC8vIEZvciB2aXN1YWwgY29uc2lzdGVuY3kgd2l0aCBvdGhlciBwbGF0Zm9ybXMvYnJvd3NlcnMsXG4gICAgICAvLyBzdXBwcmVzcyB0aGUgZGVmYXVsdCB3aGl0ZSB0ZXh0IG9uIGJsdWUgYmFja2dyb3VuZCBoaWdobGlnaHQgZ2l2ZW4gdG9cbiAgICAgIC8vIHRoZSBzZWxlY3RlZCBvcHRpb24gdGV4dCB3aGVuIHRoZSAoc3RpbGwgY2xvc2VkKSA8c2VsZWN0PiByZWNlaXZlcyBmb2N1c1xuICAgICAgLy8gaW4gSUUgYW5kICh1bmRlciBjZXJ0YWluIGNvbmRpdGlvbnMpIEVkZ2UuXG4gICAgICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xOTM5OC5cbiAgICAgIGNvbG9yOiAkaW5wdXQtY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmc7XG4gICAgfVxuICB9XG5cbiAgJlttdWx0aXBsZV0sXG4gICZbc2l6ZV06bm90KFtzaXplPVwiMVwiXSkge1xuICAgIGhlaWdodDogYXV0bztcbiAgICBwYWRkaW5nLXJpZ2h0OiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXg7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgfVxuXG4gICY6ZGlzYWJsZWQge1xuICAgIGNvbG9yOiAkY3VzdG9tLXNlbGVjdC1kaXNhYmxlZC1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLXNlbGVjdC1kaXNhYmxlZC1iZztcbiAgfVxuXG4gIC8vIEhpZGVzIHRoZSBkZWZhdWx0IGNhcmV0IGluIElFMTFcbiAgJjo6LW1zLWV4cGFuZCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC8vIFJlbW92ZSBvdXRsaW5lIGZyb20gc2VsZWN0IGJveCBpbiBGRlxuICAmOi1tb3otZm9jdXNyaW5nIHtcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgdGV4dC1zaGFkb3c6IDAgMCAwICRjdXN0b20tc2VsZWN0LWNvbG9yO1xuICB9XG59XG5cbi5jdXN0b20tc2VsZWN0LXNtIHtcbiAgaGVpZ2h0OiAkY3VzdG9tLXNlbGVjdC1oZWlnaHQtc207XG4gIHBhZGRpbmctdG9wOiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXktc207XG4gIHBhZGRpbmctYm90dG9tOiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXktc207XG4gIHBhZGRpbmctbGVmdDogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14LXNtO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGN1c3RvbS1zZWxlY3QtZm9udC1zaXplLXNtKTtcbn1cblxuLmN1c3RvbS1zZWxlY3QtbGcge1xuICBoZWlnaHQ6ICRjdXN0b20tc2VsZWN0LWhlaWdodC1sZztcbiAgcGFkZGluZy10b3A6ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteS1sZztcbiAgcGFkZGluZy1ib3R0b206ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteS1sZztcbiAgcGFkZGluZy1sZWZ0OiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXgtbGc7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkY3VzdG9tLXNlbGVjdC1mb250LXNpemUtbGcpO1xufVxuXG5cbi8vIEZpbGVcbi8vXG4vLyBDdXN0b20gZmlsZSBpbnB1dC5cblxuLmN1c3RvbS1maWxlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6ICRjdXN0b20tZmlsZS1oZWlnaHQ7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5jdXN0b20tZmlsZS1pbnB1dCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMjtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogJGN1c3RvbS1maWxlLWhlaWdodDtcbiAgbWFyZ2luOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBvcGFjaXR5OiAwO1xuXG4gICY6Zm9jdXMgfiAuY3VzdG9tLWZpbGUtbGFiZWwge1xuICAgIGJvcmRlci1jb2xvcjogJGN1c3RvbS1maWxlLWZvY3VzLWJvcmRlci1jb2xvcjtcbiAgICBib3gtc2hhZG93OiAkY3VzdG9tLWZpbGUtZm9jdXMtYm94LXNoYWRvdztcbiAgfVxuXG4gIC8vIFVzZSBbZGlzYWJsZWRdIGFuZCA6ZGlzYWJsZWQgdG8gd29yayBhcm91bmQgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yODI0N1xuICAmW2Rpc2FibGVkXSB+IC5jdXN0b20tZmlsZS1sYWJlbCxcbiAgJjpkaXNhYmxlZCB+IC5jdXN0b20tZmlsZS1sYWJlbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1maWxlLWRpc2FibGVkLWJnO1xuICB9XG5cbiAgQGVhY2ggJGxhbmcsICR2YWx1ZSBpbiAkY3VzdG9tLWZpbGUtdGV4dCB7XG4gICAgJjpsYW5nKCN7JGxhbmd9KSB+IC5jdXN0b20tZmlsZS1sYWJlbDo6YWZ0ZXIge1xuICAgICAgY29udGVudDogJHZhbHVlO1xuICAgIH1cbiAgfVxuXG4gIH4gLmN1c3RvbS1maWxlLWxhYmVsW2RhdGEtYnJvd3NlXTo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IGF0dHIoZGF0YS1icm93c2UpO1xuICB9XG59XG5cbi5jdXN0b20tZmlsZS1sYWJlbCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMTtcbiAgaGVpZ2h0OiAkY3VzdG9tLWZpbGUtaGVpZ2h0O1xuICBwYWRkaW5nOiAkY3VzdG9tLWZpbGUtcGFkZGluZy15ICRjdXN0b20tZmlsZS1wYWRkaW5nLXg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGZvbnQtZmFtaWx5OiAkY3VzdG9tLWZpbGUtZm9udC1mYW1pbHk7XG4gIGZvbnQtd2VpZ2h0OiAkY3VzdG9tLWZpbGUtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkY3VzdG9tLWZpbGUtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkY3VzdG9tLWZpbGUtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tZmlsZS1iZztcbiAgYm9yZGVyOiAkY3VzdG9tLWZpbGUtYm9yZGVyLXdpZHRoIHNvbGlkICRjdXN0b20tZmlsZS1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1maWxlLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tZmlsZS1ib3gtc2hhZG93KTtcblxuICAmOjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgei1pbmRleDogMztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6ICRjdXN0b20tZmlsZS1oZWlnaHQtaW5uZXI7XG4gICAgcGFkZGluZzogJGN1c3RvbS1maWxlLXBhZGRpbmcteSAkY3VzdG9tLWZpbGUtcGFkZGluZy14O1xuICAgIGxpbmUtaGVpZ2h0OiAkY3VzdG9tLWZpbGUtbGluZS1oZWlnaHQ7XG4gICAgY29sb3I6ICRjdXN0b20tZmlsZS1idXR0b24tY29sb3I7XG4gICAgY29udGVudDogXCJCcm93c2VcIjtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLWZpbGUtYnV0dG9uLWJnKTtcbiAgICBib3JkZXItbGVmdDogaW5oZXJpdDtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDAgJGN1c3RvbS1maWxlLWJvcmRlci1yYWRpdXMgJGN1c3RvbS1maWxlLWJvcmRlci1yYWRpdXMgMCk7XG4gIH1cbn1cblxuLy8gUmFuZ2Vcbi8vXG4vLyBTdHlsZSByYW5nZSBpbnB1dHMgdGhlIHNhbWUgYWNyb3NzIGJyb3dzZXJzLiBWZW5kb3Itc3BlY2lmaWMgcnVsZXMgZm9yIHBzZXVkb1xuLy8gZWxlbWVudHMgY2Fubm90IGJlIG1peGVkLiBBcyBzdWNoLCB0aGVyZSBhcmUgbm8gc2hhcmVkIHN0eWxlcyBmb3IgZm9jdXMgb3Jcbi8vIGFjdGl2ZSBzdGF0ZXMgb24gcHJlZml4ZWQgc2VsZWN0b3JzLlxuXG4uY3VzdG9tLXJhbmdlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYWRkKCRjdXN0b20tcmFuZ2UtdGh1bWItaGVpZ2h0LCAkY3VzdG9tLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3ctd2lkdGggKiAyKTtcbiAgcGFkZGluZzogMDsgLy8gTmVlZCB0byByZXNldCBwYWRkaW5nXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBhcHBlYXJhbmNlOiBub25lO1xuXG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IDA7XG5cbiAgICAvLyBQc2V1ZG8tZWxlbWVudHMgbXVzdCBiZSBzcGxpdCBhY3Jvc3MgbXVsdGlwbGUgcnVsZXNldHMgdG8gaGF2ZSBhbiBlZmZlY3QuXG4gICAgLy8gTm8gYm94LXNoYWRvdygpIG1peGluIGZvciBmb2N1cyBhY2Nlc3NpYmlsaXR5LlxuICAgICY6Oi13ZWJraXQtc2xpZGVyLXRodW1iIHsgYm94LXNoYWRvdzogJGN1c3RvbS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93OyB9XG4gICAgJjo6LW1vei1yYW5nZS10aHVtYiAgICAgeyBib3gtc2hhZG93OiAkY3VzdG9tLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3c7IH1cbiAgICAmOjotbXMtdGh1bWIgICAgICAgICAgICB7IGJveC1zaGFkb3c6ICRjdXN0b20tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdzsgfVxuICB9XG5cbiAgJjo6LW1vei1mb2N1cy1vdXRlciB7XG4gICAgYm9yZGVyOiAwO1xuICB9XG5cbiAgJjo6LXdlYmtpdC1zbGlkZXItdGh1bWIge1xuICAgIHdpZHRoOiAkY3VzdG9tLXJhbmdlLXRodW1iLXdpZHRoO1xuICAgIGhlaWdodDogJGN1c3RvbS1yYW5nZS10aHVtYi1oZWlnaHQ7XG4gICAgbWFyZ2luLXRvcDogKCRjdXN0b20tcmFuZ2UtdHJhY2staGVpZ2h0IC0gJGN1c3RvbS1yYW5nZS10aHVtYi1oZWlnaHQpICogLjU7IC8vIFdlYmtpdCBzcGVjaWZpY1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRjdXN0b20tcmFuZ2UtdGh1bWItYmcpO1xuICAgIGJvcmRlcjogJGN1c3RvbS1yYW5nZS10aHVtYi1ib3JkZXI7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY3VzdG9tLXJhbmdlLXRodW1iLWJvcmRlci1yYWRpdXMpO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1yYW5nZS10aHVtYi1ib3gtc2hhZG93KTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRjdXN0b20tZm9ybXMtdHJhbnNpdGlvbik7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcblxuICAgICY6YWN0aXZlIHtcbiAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRjdXN0b20tcmFuZ2UtdGh1bWItYWN0aXZlLWJnKTtcbiAgICB9XG4gIH1cblxuICAmOjotd2Via2l0LXNsaWRlci1ydW5uYWJsZS10cmFjayB7XG4gICAgd2lkdGg6ICRjdXN0b20tcmFuZ2UtdHJhY2std2lkdGg7XG4gICAgaGVpZ2h0OiAkY3VzdG9tLXJhbmdlLXRyYWNrLWhlaWdodDtcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7IC8vIFdoeT9cbiAgICBjdXJzb3I6ICRjdXN0b20tcmFuZ2UtdHJhY2stY3Vyc29yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tcmFuZ2UtdHJhY2stYmc7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tcmFuZ2UtdHJhY2stYm9yZGVyLXJhZGl1cyk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLXJhbmdlLXRyYWNrLWJveC1zaGFkb3cpO1xuICB9XG5cbiAgJjo6LW1vei1yYW5nZS10aHVtYiB7XG4gICAgd2lkdGg6ICRjdXN0b20tcmFuZ2UtdGh1bWItd2lkdGg7XG4gICAgaGVpZ2h0OiAkY3VzdG9tLXJhbmdlLXRodW1iLWhlaWdodDtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLXJhbmdlLXRodW1iLWJnKTtcbiAgICBib3JkZXI6ICRjdXN0b20tcmFuZ2UtdGh1bWItYm9yZGVyO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1yYW5nZS10aHVtYi1ib3JkZXItcmFkaXVzKTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tcmFuZ2UtdGh1bWItYm94LXNoYWRvdyk7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkY3VzdG9tLWZvcm1zLXRyYW5zaXRpb24pO1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG5cbiAgICAmOmFjdGl2ZSB7XG4gICAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLXJhbmdlLXRodW1iLWFjdGl2ZS1iZyk7XG4gICAgfVxuICB9XG5cbiAgJjo6LW1vei1yYW5nZS10cmFjayB7XG4gICAgd2lkdGg6ICRjdXN0b20tcmFuZ2UtdHJhY2std2lkdGg7XG4gICAgaGVpZ2h0OiAkY3VzdG9tLXJhbmdlLXRyYWNrLWhlaWdodDtcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgY3Vyc29yOiAkY3VzdG9tLXJhbmdlLXRyYWNrLWN1cnNvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLXJhbmdlLXRyYWNrLWJnO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7IC8vIEZpcmVmb3ggc3BlY2lmaWM/XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY3VzdG9tLXJhbmdlLXRyYWNrLWJvcmRlci1yYWRpdXMpO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1yYW5nZS10cmFjay1ib3gtc2hhZG93KTtcbiAgfVxuXG4gICY6Oi1tcy10aHVtYiB7XG4gICAgd2lkdGg6ICRjdXN0b20tcmFuZ2UtdGh1bWItd2lkdGg7XG4gICAgaGVpZ2h0OiAkY3VzdG9tLXJhbmdlLXRodW1iLWhlaWdodDtcbiAgICBtYXJnaW4tdG9wOiAwOyAvLyBFZGdlIHNwZWNpZmljXG4gICAgbWFyZ2luLXJpZ2h0OiAkY3VzdG9tLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3ctd2lkdGg7IC8vIFdvcmthcm91bmQgdGhhdCBvdmVyZmxvd2VkIGJveC1zaGFkb3cgaXMgaGlkZGVuLlxuICAgIG1hcmdpbi1sZWZ0OiAkY3VzdG9tLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3ctd2lkdGg7ICAvLyBXb3JrYXJvdW5kIHRoYXQgb3ZlcmZsb3dlZCBib3gtc2hhZG93IGlzIGhpZGRlbi5cbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLXJhbmdlLXRodW1iLWJnKTtcbiAgICBib3JkZXI6ICRjdXN0b20tcmFuZ2UtdGh1bWItYm9yZGVyO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1yYW5nZS10aHVtYi1ib3JkZXItcmFkaXVzKTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tcmFuZ2UtdGh1bWItYm94LXNoYWRvdyk7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkY3VzdG9tLWZvcm1zLXRyYW5zaXRpb24pO1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG5cbiAgICAmOmFjdGl2ZSB7XG4gICAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLXJhbmdlLXRodW1iLWFjdGl2ZS1iZyk7XG4gICAgfVxuICB9XG5cbiAgJjo6LW1zLXRyYWNrIHtcbiAgICB3aWR0aDogJGN1c3RvbS1yYW5nZS10cmFjay13aWR0aDtcbiAgICBoZWlnaHQ6ICRjdXN0b20tcmFuZ2UtdHJhY2staGVpZ2h0O1xuICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBjdXJzb3I6ICRjdXN0b20tcmFuZ2UtdHJhY2stY3Vyc29yO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXdpZHRoOiAkY3VzdG9tLXJhbmdlLXRodW1iLWhlaWdodCAqIC41O1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1yYW5nZS10cmFjay1ib3gtc2hhZG93KTtcbiAgfVxuXG4gICY6Oi1tcy1maWxsLWxvd2VyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLXJhbmdlLXRyYWNrLWJnO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1yYW5nZS10cmFjay1ib3JkZXItcmFkaXVzKTtcbiAgfVxuXG4gICY6Oi1tcy1maWxsLXVwcGVyIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7IC8vIGFyYml0cmFyeT9cbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLXJhbmdlLXRyYWNrLWJnO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1yYW5nZS10cmFjay1ib3JkZXItcmFkaXVzKTtcbiAgfVxuXG4gICY6ZGlzYWJsZWQge1xuICAgICY6Oi13ZWJraXQtc2xpZGVyLXRodW1iIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tcmFuZ2UtdGh1bWItZGlzYWJsZWQtYmc7XG4gICAgfVxuXG4gICAgJjo6LXdlYmtpdC1zbGlkZXItcnVubmFibGUtdHJhY2sge1xuICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgIH1cblxuICAgICY6Oi1tb3otcmFuZ2UtdGh1bWIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1yYW5nZS10aHVtYi1kaXNhYmxlZC1iZztcbiAgICB9XG5cbiAgICAmOjotbW96LXJhbmdlLXRyYWNrIHtcbiAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICB9XG5cbiAgICAmOjotbXMtdGh1bWIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1yYW5nZS10aHVtYi1kaXNhYmxlZC1iZztcbiAgICB9XG4gIH1cbn1cblxuLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUsXG4uY3VzdG9tLWZpbGUtbGFiZWwsXG4uY3VzdG9tLXNlbGVjdCB7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGN1c3RvbS1mb3Jtcy10cmFuc2l0aW9uKTtcbn1cbiIsIi8vIEJhc2UgY2xhc3Ncbi8vXG4vLyBLaWNrc3RhcnQgYW55IG5hdmlnYXRpb24gY29tcG9uZW50IHdpdGggYSBzZXQgb2Ygc3R5bGUgcmVzZXRzLiBXb3JrcyB3aXRoXG4vLyBgPG5hdj5gcywgYDx1bD5gcyBvciBgPG9sPmBzLlxuXG4ubmF2IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cbi5uYXYtbGluayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAkbmF2LWxpbmstcGFkZGluZy15ICRuYXYtbGluay1wYWRkaW5nLXg7XG4gIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstZGVjb3JhdGlvbiA9PSBub25lLCBudWxsLCBub25lKTtcblxuICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICAvLyBEaXNhYmxlZCBzdGF0ZSBsaWdodGVucyB0ZXh0XG4gICYuZGlzYWJsZWQge1xuICAgIGNvbG9yOiAkbmF2LWxpbmstZGlzYWJsZWQtY29sb3I7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgY3Vyc29yOiBkZWZhdWx0O1xuICB9XG59XG5cbi8vXG4vLyBUYWJzXG4vL1xuXG4ubmF2LXRhYnMge1xuICBib3JkZXItYm90dG9tOiAkbmF2LXRhYnMtYm9yZGVyLXdpZHRoIHNvbGlkICRuYXYtdGFicy1ib3JkZXItY29sb3I7XG5cbiAgLm5hdi1saW5rIHtcbiAgICBtYXJnaW4tYm90dG9tOiAtJG5hdi10YWJzLWJvcmRlci13aWR0aDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6ICRuYXYtdGFicy1ib3JkZXItd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJG5hdi10YWJzLWJvcmRlci1yYWRpdXMpO1xuXG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgICAvLyBQcmV2ZW50cyBhY3RpdmUgLm5hdi1saW5rIHRhYiBvdmVybGFwcGluZyBmb2N1cyBvdXRsaW5lIG9mIHByZXZpb3VzL25leHQgLm5hdi1saW5rXG4gICAgICBpc29sYXRpb246IGlzb2xhdGU7XG4gICAgICBib3JkZXItY29sb3I6ICRuYXYtdGFicy1saW5rLWhvdmVyLWJvcmRlci1jb2xvcjtcbiAgICB9XG5cbiAgICAmLmRpc2FibGVkIHtcbiAgICAgIGNvbG9yOiAkbmF2LWxpbmstZGlzYWJsZWQtY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgfVxuICB9XG5cbiAgLm5hdi1saW5rLmFjdGl2ZSxcbiAgLm5hdi1pdGVtLnNob3cgLm5hdi1saW5rIHtcbiAgICBjb2xvcjogJG5hdi10YWJzLWxpbmstYWN0aXZlLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXYtdGFicy1saW5rLWFjdGl2ZS1iZztcbiAgICBib3JkZXItY29sb3I6ICRuYXYtdGFicy1saW5rLWFjdGl2ZS1ib3JkZXItY29sb3I7XG4gIH1cblxuICAuZHJvcGRvd24tbWVudSB7XG4gICAgLy8gTWFrZSBkcm9wZG93biBib3JkZXIgb3ZlcmxhcCB0YWIgYm9yZGVyXG4gICAgbWFyZ2luLXRvcDogLSRuYXYtdGFicy1ib3JkZXItd2lkdGg7XG4gICAgLy8gUmVtb3ZlIHRoZSB0b3Agcm91bmRlZCBjb3JuZXJzIGhlcmUgc2luY2UgdGhlcmUgaXMgYSBoYXJkIGVkZ2UgYWJvdmUgdGhlIG1lbnVcbiAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygwKTtcbiAgfVxufVxuXG5cbi8vXG4vLyBQaWxsc1xuLy9cblxuLm5hdi1waWxscyB7XG4gIC5uYXYtbGluayB7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICBib3JkZXI6IDA7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkbmF2LXBpbGxzLWJvcmRlci1yYWRpdXMpO1xuICB9XG5cbiAgLm5hdi1saW5rLmFjdGl2ZSxcbiAgLnNob3cgPiAubmF2LWxpbmsge1xuICAgIGNvbG9yOiAkbmF2LXBpbGxzLWxpbmstYWN0aXZlLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXYtcGlsbHMtbGluay1hY3RpdmUtYmc7XG4gIH1cbn1cblxuXG4vL1xuLy8gSnVzdGlmaWVkIHZhcmlhbnRzXG4vL1xuXG4ubmF2LWZpbGwge1xuICA+IC5uYXYtbGluayxcbiAgLm5hdi1pdGVtIHtcbiAgICBmbGV4OiAxIDEgYXV0bztcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbn1cblxuLm5hdi1qdXN0aWZpZWQge1xuICA+IC5uYXYtbGluayxcbiAgLm5hdi1pdGVtIHtcbiAgICBmbGV4LWJhc2lzOiAwO1xuICAgIGZsZXgtZ3JvdzogMTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbn1cblxuXG4vLyBUYWJiYWJsZSB0YWJzXG4vL1xuLy8gSGlkZSB0YWJiYWJsZSBwYW5lcyB0byBzdGFydCwgc2hvdyB0aGVtIHdoZW4gYC5hY3RpdmVgXG5cbi50YWItY29udGVudCB7XG4gID4gLnRhYi1wYW5lIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gID4gLmFjdGl2ZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cbiIsIi8vIENvbnRlbnRzXG4vL1xuLy8gTmF2YmFyXG4vLyBOYXZiYXIgYnJhbmRcbi8vIE5hdmJhciBuYXZcbi8vIE5hdmJhciB0ZXh0XG4vLyBOYXZiYXIgZGl2aWRlclxuLy8gUmVzcG9uc2l2ZSBuYXZiYXJcbi8vIE5hdmJhciBwb3NpdGlvblxuLy8gTmF2YmFyIHRoZW1lc1xuXG5cbi8vIE5hdmJhclxuLy9cbi8vIFByb3ZpZGUgYSBzdGF0aWMgbmF2YmFyIGZyb20gd2hpY2ggd2UgZXhwYW5kIHRvIGNyZWF0ZSBmdWxsLXdpZHRoLCBmaXhlZCwgYW5kXG4vLyBvdGhlciBuYXZiYXIgdmFyaWF0aW9ucy5cblxuLm5hdmJhciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwOyAvLyBhbGxvdyB1cyB0byBkbyB0aGUgbGluZSBicmVhayBmb3IgY29sbGFwc2luZyBjb250ZW50XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgLy8gc3BhY2Ugb3V0IGJyYW5kIGZyb20gbG9nb1xuICBwYWRkaW5nOiAkbmF2YmFyLXBhZGRpbmcteSAkbmF2YmFyLXBhZGRpbmcteDtcblxuICAvLyBCZWNhdXNlIGZsZXggcHJvcGVydGllcyBhcmVuJ3QgaW5oZXJpdGVkLCB3ZSBuZWVkIHRvIHJlZGVjbGFyZSB0aGVzZSBmaXJzdFxuICAvLyBmZXcgcHJvcGVydGllcyBzbyB0aGF0IGNvbnRlbnQgbmVzdGVkIHdpdGhpbiBiZWhhdmUgcHJvcGVybHkuXG4gICVjb250YWluZXItZmxleC1wcm9wZXJ0aWVzIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgfVxuXG4gIC5jb250YWluZXIsXG4gIC5jb250YWluZXItZmx1aWQge1xuICAgIEBleHRlbmQgJWNvbnRhaW5lci1mbGV4LXByb3BlcnRpZXM7XG4gIH1cblxuICBAZWFjaCAkYnJlYWtwb2ludCwgJGNvbnRhaW5lci1tYXgtd2lkdGggaW4gJGNvbnRhaW5lci1tYXgtd2lkdGhzIHtcbiAgICA+IC5jb250YWluZXIje2JyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRjb250YWluZXItbWF4LXdpZHRocyl9IHtcbiAgICAgIEBleHRlbmQgJWNvbnRhaW5lci1mbGV4LXByb3BlcnRpZXM7XG4gICAgfVxuICB9XG59XG5cblxuLy8gTmF2YmFyIGJyYW5kXG4vL1xuLy8gVXNlZCBmb3IgYnJhbmQsIHByb2plY3QsIG9yIHNpdGUgbmFtZXMuXG5cbi5uYXZiYXItYnJhbmQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmctdG9wOiAkbmF2YmFyLWJyYW5kLXBhZGRpbmcteTtcbiAgcGFkZGluZy1ib3R0b206ICRuYXZiYXItYnJhbmQtcGFkZGluZy15O1xuICBtYXJnaW4tcmlnaHQ6ICRuYXZiYXItcGFkZGluZy14O1xuICBAaW5jbHVkZSBmb250LXNpemUoJG5hdmJhci1icmFuZC1mb250LXNpemUpO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cbn1cblxuXG4vLyBOYXZiYXIgbmF2XG4vL1xuLy8gQ3VzdG9tIG5hdmJhciBuYXZpZ2F0aW9uIChkb2Vzbid0IHJlcXVpcmUgYC5uYXZgLCBidXQgZG9lcyBtYWtlIHVzZSBvZiBgLm5hdi1saW5rYCkuXG5cbi5uYXZiYXItbmF2IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgLy8gY2Fubm90IHVzZSBgaW5oZXJpdGAgdG8gZ2V0IHRoZSBgLm5hdmJhcmBzIHZhbHVlXG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcblxuICAubmF2LWxpbmsge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG5cbiAgLmRyb3Bkb3duLW1lbnUge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgZmxvYXQ6IG5vbmU7XG4gIH1cbn1cblxuXG4vLyBOYXZiYXIgdGV4dFxuLy9cbi8vXG5cbi5uYXZiYXItdGV4dCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZy10b3A6ICRuYXYtbGluay1wYWRkaW5nLXk7XG4gIHBhZGRpbmctYm90dG9tOiAkbmF2LWxpbmstcGFkZGluZy15O1xufVxuXG5cbi8vIFJlc3BvbnNpdmUgbmF2YmFyXG4vL1xuLy8gQ3VzdG9tIHN0eWxlcyBmb3IgcmVzcG9uc2l2ZSBjb2xsYXBzaW5nIGFuZCB0b2dnbGluZyBvZiBuYXZiYXIgY29udGVudHMuXG4vLyBQb3dlcmVkIGJ5IHRoZSBjb2xsYXBzZSBCb290c3RyYXAgSmF2YVNjcmlwdCBwbHVnaW4uXG5cbi8vIFdoZW4gY29sbGFwc2VkLCBwcmV2ZW50IHRoZSB0b2dnbGVhYmxlIG5hdmJhciBjb250ZW50cyBmcm9tIGFwcGVhcmluZyBpblxuLy8gdGhlIGRlZmF1bHQgZmxleGJveCByb3cgb3JpZW50YXRpb24uIFJlcXVpcmVzIHRoZSB1c2Ugb2YgYGZsZXgtd3JhcDogd3JhcGBcbi8vIG9uIHRoZSBgLm5hdmJhcmAgcGFyZW50LlxuLm5hdmJhci1jb2xsYXBzZSB7XG4gIGZsZXgtYmFzaXM6IDEwMCU7XG4gIGZsZXgtZ3JvdzogMTtcbiAgLy8gRm9yIGFsd2F5cyBleHBhbmRlZCBvciBleHRyYSBmdWxsIG5hdmJhcnMsIGVuc3VyZSBjb250ZW50IGFsaWducyBpdHNlbGZcbiAgLy8gcHJvcGVybHkgdmVydGljYWxseS4gQ2FuIGJlIGVhc2lseSBvdmVycmlkZGVuIHdpdGggZmxleCB1dGlsaXRpZXMuXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi8vIEJ1dHRvbiBmb3IgdG9nZ2xpbmcgdGhlIG5hdmJhciB3aGVuIGluIGl0cyBjb2xsYXBzZWQgc3RhdGVcbi5uYXZiYXItdG9nZ2xlciB7XG4gIHBhZGRpbmc6ICRuYXZiYXItdG9nZ2xlci1wYWRkaW5nLXkgJG5hdmJhci10b2dnbGVyLXBhZGRpbmcteDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRuYXZiYXItdG9nZ2xlci1mb250LXNpemUpO1xuICBsaW5lLWhlaWdodDogMTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IC8vIHJlbW92ZSBkZWZhdWx0IGJ1dHRvbiBzdHlsZVxuICBib3JkZXI6ICRib3JkZXItd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7IC8vIHJlbW92ZSBkZWZhdWx0IGJ1dHRvbiBzdHlsZVxuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRuYXZiYXItdG9nZ2xlci1ib3JkZXItcmFkaXVzKTtcblxuICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cbn1cblxuLy8gS2VlcCBhcyBhIHNlcGFyYXRlIGVsZW1lbnQgc28gZm9sa3MgY2FuIGVhc2lseSBvdmVycmlkZSBpdCB3aXRoIGFub3RoZXIgaWNvblxuLy8gb3IgaW1hZ2UgZmlsZSBhcyBuZWVkZWQuXG4ubmF2YmFyLXRvZ2dsZXItaWNvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDEuNWVtO1xuICBoZWlnaHQ6IDEuNWVtO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBjb250ZW50OiBcIlwiO1xuICBiYWNrZ3JvdW5kOiA1MCUgLyAxMDAlIDEwMCUgbm8tcmVwZWF0O1xufVxuXG4ubmF2YmFyLW5hdi1zY3JvbGwge1xuICBtYXgtaGVpZ2h0OiAkbmF2YmFyLW5hdi1zY3JvbGwtbWF4LWhlaWdodDtcbiAgb3ZlcmZsb3cteTogYXV0bztcbn1cblxuLy8gR2VuZXJhdGUgc2VyaWVzIG9mIGAubmF2YmFyLWV4cGFuZC0qYCByZXNwb25zaXZlIGNsYXNzZXMgZm9yIGNvbmZpZ3VyaW5nXG4vLyB3aGVyZSB5b3VyIG5hdmJhciBjb2xsYXBzZXMuXG4ubmF2YmFyLWV4cGFuZCB7XG4gIEBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICAgJG5leHQ6IGJyZWFrcG9pbnQtbmV4dCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkbmV4dCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgJiN7JGluZml4fSB7XG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJGJyZWFrcG9pbnQpIHtcbiAgICAgICAgJWNvbnRhaW5lci1uYXZiYXItZXhwYW5kLSN7JGJyZWFrcG9pbnR9IHtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgfVxuXG4gICAgICAgID4gLmNvbnRhaW5lcixcbiAgICAgICAgPiAuY29udGFpbmVyLWZsdWlkIHtcbiAgICAgICAgICBAZXh0ZW5kICVjb250YWluZXItbmF2YmFyLWV4cGFuZC0jeyRicmVha3BvaW50fTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBlYWNoICRzaXplLCAkY29udGFpbmVyLW1heC13aWR0aCBpbiAkY29udGFpbmVyLW1heC13aWR0aHMge1xuICAgICAgICAgID4gLmNvbnRhaW5lciN7YnJlYWtwb2ludC1pbmZpeCgkc2l6ZSwgJGNvbnRhaW5lci1tYXgtd2lkdGhzKX0ge1xuICAgICAgICAgICAgQGV4dGVuZCAlY29udGFpbmVyLW5hdmJhci1leHBhbmQtI3skYnJlYWtwb2ludH07XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5leHQpIHtcbiAgICAgICAgZmxleC1mbG93OiByb3cgbm93cmFwO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG5cbiAgICAgICAgLm5hdmJhci1uYXYge1xuICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cbiAgICAgICAgICAuZHJvcGRvd24tbWVudSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLm5hdi1saW5rIHtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6ICRuYXZiYXItbmF2LWxpbmstcGFkZGluZy14O1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAkbmF2YmFyLW5hdi1saW5rLXBhZGRpbmcteDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBGb3IgbmVzdGluZyBjb250YWluZXJzLCBoYXZlIHRvIHJlZGVjbGFyZSBmb3IgYWxpZ25tZW50IHB1cnBvc2VzXG4gICAgICAgICVjb250YWluZXItbmVzdGluZy0jeyRicmVha3BvaW50fSB7XG4gICAgICAgICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgICAgIH1cblxuICAgICAgICA+IC5jb250YWluZXIsXG4gICAgICAgID4gLmNvbnRhaW5lci1mbHVpZCB7XG4gICAgICAgICAgQGV4dGVuZCAlY29udGFpbmVyLW5lc3RpbmctI3skYnJlYWtwb2ludH07XG4gICAgICAgIH1cblxuICAgICAgICBAZWFjaCAkc2l6ZSwgJGNvbnRhaW5lci1tYXgtd2lkdGggaW4gJGNvbnRhaW5lci1tYXgtd2lkdGhzIHtcbiAgICAgICAgICA+IC5jb250YWluZXIje2JyZWFrcG9pbnQtaW5maXgoJHNpemUsICRjb250YWluZXItbWF4LXdpZHRocyl9IHtcbiAgICAgICAgICAgIEBleHRlbmQgJWNvbnRhaW5lci1uZXN0aW5nLSN7JGJyZWFrcG9pbnR9O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5uYXZiYXItbmF2LXNjcm9sbCB7XG4gICAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgICAgIH1cblxuICAgICAgICAubmF2YmFyLWNvbGxhcHNlIHtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbiAgICAgICAgICAvLyBDaGFuZ2VzIGZsZXgtYmFzZXMgdG8gYXV0byBiZWNhdXNlIG9mIGFuIElFMTAgYnVnXG4gICAgICAgICAgZmxleC1iYXNpczogYXV0bztcbiAgICAgICAgfVxuXG4gICAgICAgIC5uYXZiYXItdG9nZ2xlciB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cbi8vIE5hdmJhciB0aGVtZXNcbi8vXG4vLyBTdHlsZXMgZm9yIHN3aXRjaGluZyBiZXR3ZWVuIG5hdmJhcnMgd2l0aCBsaWdodCBvciBkYXJrIGJhY2tncm91bmQuXG5cbi8vIERhcmsgbGlua3MgYWdhaW5zdCBhIGxpZ2h0IGJhY2tncm91bmRcbi5uYXZiYXItbGlnaHQge1xuICAubmF2YmFyLWJyYW5kIHtcbiAgICBjb2xvcjogJG5hdmJhci1saWdodC1icmFuZC1jb2xvcjtcblxuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgICAgY29sb3I6ICRuYXZiYXItbGlnaHQtYnJhbmQtaG92ZXItY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLm5hdmJhci1uYXYge1xuICAgIC5uYXYtbGluayB7XG4gICAgICBjb2xvcjogJG5hdmJhci1saWdodC1jb2xvcjtcblxuICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWhvdmVyLWNvbG9yO1xuICAgICAgfVxuXG4gICAgICAmLmRpc2FibGVkIHtcbiAgICAgICAgY29sb3I6ICRuYXZiYXItbGlnaHQtZGlzYWJsZWQtY29sb3I7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnNob3cgPiAubmF2LWxpbmssXG4gICAgLmFjdGl2ZSA+IC5uYXYtbGluayxcbiAgICAubmF2LWxpbmsuc2hvdyxcbiAgICAubmF2LWxpbmsuYWN0aXZlIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAubmF2YmFyLXRvZ2dsZXIge1xuICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWNvbG9yO1xuICAgIGJvcmRlci1jb2xvcjogJG5hdmJhci1saWdodC10b2dnbGVyLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gIC5uYXZiYXItdG9nZ2xlci1pY29uIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRuYXZiYXItbGlnaHQtdG9nZ2xlci1pY29uLWJnKTtcbiAgfVxuXG4gIC5uYXZiYXItdGV4dCB7XG4gICAgY29sb3I6ICRuYXZiYXItbGlnaHQtY29sb3I7XG4gICAgYSB7XG4gICAgICBjb2xvcjogJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3I7XG5cbiAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgICAgICBjb2xvcjogJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIFdoaXRlIGxpbmtzIGFnYWluc3QgYSBkYXJrIGJhY2tncm91bmRcbi5uYXZiYXItZGFyayB7XG4gIC5uYXZiYXItYnJhbmQge1xuICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstYnJhbmQtY29sb3I7XG5cbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstYnJhbmQtaG92ZXItY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLm5hdmJhci1uYXYge1xuICAgIC5uYXYtbGluayB7XG4gICAgICBjb2xvcjogJG5hdmJhci1kYXJrLWNvbG9yO1xuXG4gICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICAgICAgY29sb3I6ICRuYXZiYXItZGFyay1ob3Zlci1jb2xvcjtcbiAgICAgIH1cblxuICAgICAgJi5kaXNhYmxlZCB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstZGlzYWJsZWQtY29sb3I7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnNob3cgPiAubmF2LWxpbmssXG4gICAgLmFjdGl2ZSA+IC5uYXYtbGluayxcbiAgICAubmF2LWxpbmsuc2hvdyxcbiAgICAubmF2LWxpbmsuYWN0aXZlIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC5uYXZiYXItdG9nZ2xlciB7XG4gICAgY29sb3I6ICRuYXZiYXItZGFyay1jb2xvcjtcbiAgICBib3JkZXItY29sb3I6ICRuYXZiYXItZGFyay10b2dnbGVyLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gIC5uYXZiYXItdG9nZ2xlci1pY29uIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRuYXZiYXItZGFyay10b2dnbGVyLWljb24tYmcpO1xuICB9XG5cbiAgLm5hdmJhci10ZXh0IHtcbiAgICBjb2xvcjogJG5hdmJhci1kYXJrLWNvbG9yO1xuICAgIGEge1xuICAgICAgY29sb3I6ICRuYXZiYXItZGFyay1hY3RpdmUtY29sb3I7XG5cbiAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgICAgICBjb2xvcjogJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vXG4vLyBCYXNlIHN0eWxlc1xuLy9cblxuLmNhcmQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIG1pbi13aWR0aDogMDsgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzIyNzQwI2lzc3VlY29tbWVudC0zMDU4NjgxMDZcbiAgaGVpZ2h0OiAkY2FyZC1oZWlnaHQ7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNhcmQtYmc7XG4gIGJhY2tncm91bmQtY2xpcDogYm9yZGVyLWJveDtcbiAgYm9yZGVyOiAkY2FyZC1ib3JkZXItd2lkdGggc29saWQgJGNhcmQtYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjYXJkLWJvcmRlci1yYWRpdXMpO1xuXG4gID4gaHIge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuXG4gID4gLmxpc3QtZ3JvdXAge1xuICAgIGJvcmRlci10b3A6IGluaGVyaXQ7XG4gICAgYm9yZGVyLWJvdHRvbTogaW5oZXJpdDtcblxuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLXRvcC13aWR0aDogMDtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpO1xuICAgIH1cblxuICAgICY6bGFzdC1jaGlsZCAge1xuICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKCRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpO1xuICAgIH1cbiAgfVxuXG4gIC8vIER1ZSB0byBzcGVjaWZpY2l0eSBvZiB0aGUgYWJvdmUgc2VsZWN0b3IgKGAuY2FyZCA+IC5saXN0LWdyb3VwYCksIHdlIG11c3RcbiAgLy8gdXNlIGEgY2hpbGQgc2VsZWN0b3IgaGVyZSB0byBwcmV2ZW50IGRvdWJsZSBib3JkZXJzLlxuICA+IC5jYXJkLWhlYWRlciArIC5saXN0LWdyb3VwLFxuICA+IC5saXN0LWdyb3VwICsgLmNhcmQtZm9vdGVyIHtcbiAgICBib3JkZXItdG9wOiAwO1xuICB9XG59XG5cbi5jYXJkLWJvZHkge1xuICAvLyBFbmFibGUgYGZsZXgtZ3JvdzogMWAgZm9yIGRlY2tzIGFuZCBncm91cHMgc28gdGhhdCBjYXJkIGJsb2NrcyB0YWtlIHVwXG4gIC8vIGFzIG11Y2ggc3BhY2UgYXMgcG9zc2libGUsIGVuc3VyaW5nIGZvb3RlcnMgYXJlIGFsaWduZWQgdG8gdGhlIGJvdHRvbS5cbiAgZmxleDogMSAxIGF1dG87XG4gIC8vIFdvcmthcm91bmQgZm9yIHRoZSBpbWFnZSBzaXplIGJ1ZyBpbiBJRVxuICAvLyBTZWU6IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzI4ODU1XG4gIG1pbi1oZWlnaHQ6IDFweDtcbiAgcGFkZGluZzogJGNhcmQtc3BhY2VyLXg7XG4gIGNvbG9yOiAkY2FyZC1jb2xvcjtcbn1cblxuLmNhcmQtdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAkY2FyZC1zcGFjZXIteTtcbn1cblxuLmNhcmQtc3VidGl0bGUge1xuICBtYXJnaW4tdG9wOiAtJGNhcmQtc3BhY2VyLXkgKiAuNTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmNhcmQtdGV4dDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmNhcmQtbGluayB7XG4gIEBpbmNsdWRlIGhvdmVyKCkge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gICsgLmNhcmQtbGluayB7XG4gICAgbWFyZ2luLWxlZnQ6ICRjYXJkLXNwYWNlci14O1xuICB9XG59XG5cbi8vXG4vLyBPcHRpb25hbCB0ZXh0dWFsIGNhcHNcbi8vXG5cbi5jYXJkLWhlYWRlciB7XG4gIHBhZGRpbmc6ICRjYXJkLXNwYWNlci15ICRjYXJkLXNwYWNlci14O1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBSZW1vdmVzIHRoZSBkZWZhdWx0IG1hcmdpbi1ib3R0b20gb2YgPGhOPlxuICBjb2xvcjogJGNhcmQtY2FwLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2FyZC1jYXAtYmc7XG4gIGJvcmRlci1ib3R0b206ICRjYXJkLWJvcmRlci13aWR0aCBzb2xpZCAkY2FyZC1ib3JkZXItY29sb3I7XG5cbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzICRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMgMCAwKTtcbiAgfVxufVxuXG4uY2FyZC1mb290ZXIge1xuICBwYWRkaW5nOiAkY2FyZC1zcGFjZXIteSAkY2FyZC1zcGFjZXIteDtcbiAgY29sb3I6ICRjYXJkLWNhcC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNhcmQtY2FwLWJnO1xuICBib3JkZXItdG9wOiAkY2FyZC1ib3JkZXItd2lkdGggc29saWQgJGNhcmQtYm9yZGVyLWNvbG9yO1xuXG4gICY6bGFzdC1jaGlsZCB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwIDAgJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyAkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKTtcbiAgfVxufVxuXG5cbi8vXG4vLyBIZWFkZXIgbmF2c1xuLy9cblxuLmNhcmQtaGVhZGVyLXRhYnMge1xuICBtYXJnaW4tcmlnaHQ6IC0kY2FyZC1zcGFjZXIteCAqIC41O1xuICBtYXJnaW4tYm90dG9tOiAtJGNhcmQtc3BhY2VyLXk7XG4gIG1hcmdpbi1sZWZ0OiAtJGNhcmQtc3BhY2VyLXggKiAuNTtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbn1cblxuLmNhcmQtaGVhZGVyLXBpbGxzIHtcbiAgbWFyZ2luLXJpZ2h0OiAtJGNhcmQtc3BhY2VyLXggKiAuNTtcbiAgbWFyZ2luLWxlZnQ6IC0kY2FyZC1zcGFjZXIteCAqIC41O1xufVxuXG4vLyBDYXJkIGltYWdlXG4uY2FyZC1pbWctb3ZlcmxheSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICBwYWRkaW5nOiAkY2FyZC1pbWctb3ZlcmxheS1wYWRkaW5nO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpO1xufVxuXG4uY2FyZC1pbWcsXG4uY2FyZC1pbWctdG9wLFxuLmNhcmQtaW1nLWJvdHRvbSB7XG4gIGZsZXgtc2hyaW5rOiAwOyAvLyBGb3IgSUU6IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjkzOTZcbiAgd2lkdGg6IDEwMCU7IC8vIFJlcXVpcmVkIGJlY2F1c2Ugd2UgdXNlIGZsZXhib3ggYW5kIHRoaXMgaW5oZXJlbnRseSBhcHBsaWVzIGFsaWduLXNlbGY6IHN0cmV0Y2hcbn1cblxuLmNhcmQtaW1nLFxuLmNhcmQtaW1nLXRvcCB7XG4gIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpO1xufVxuXG4uY2FyZC1pbWcsXG4uY2FyZC1pbWctYm90dG9tIHtcbiAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG59XG5cblxuLy8gQ2FyZCBkZWNrXG5cbi5jYXJkLWRlY2sge1xuICAuY2FyZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogJGNhcmQtZGVjay1tYXJnaW47XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgIG1hcmdpbi1yaWdodDogLSRjYXJkLWRlY2stbWFyZ2luO1xuICAgIG1hcmdpbi1sZWZ0OiAtJGNhcmQtZGVjay1tYXJnaW47XG5cbiAgICAuY2FyZCB7XG4gICAgICAvLyBGbGV4YnVncyAjNDogaHR0cHM6Ly9naXRodWIuY29tL3BoaWxpcHdhbHRvbi9mbGV4YnVncyNmbGV4YnVnLTRcbiAgICAgIGZsZXg6IDEgMCAwJTtcbiAgICAgIG1hcmdpbi1yaWdodDogJGNhcmQtZGVjay1tYXJnaW47XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyAvLyBPdmVycmlkZSB0aGUgZGVmYXVsdFxuICAgICAgbWFyZ2luLWxlZnQ6ICRjYXJkLWRlY2stbWFyZ2luO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vXG4vLyBDYXJkIGdyb3Vwc1xuLy9cblxuLmNhcmQtZ3JvdXAge1xuICAvLyBUaGUgY2hpbGQgc2VsZWN0b3IgYWxsb3dzIG5lc3RlZCBgLmNhcmRgIHdpdGhpbiBgLmNhcmQtZ3JvdXBgXG4gIC8vIHRvIGRpc3BsYXkgcHJvcGVybHkuXG4gID4gLmNhcmQge1xuICAgIG1hcmdpbi1ib3R0b206ICRjYXJkLWdyb3VwLW1hcmdpbjtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAgLy8gVGhlIGNoaWxkIHNlbGVjdG9yIGFsbG93cyBuZXN0ZWQgYC5jYXJkYCB3aXRoaW4gYC5jYXJkLWdyb3VwYFxuICAgIC8vIHRvIGRpc3BsYXkgcHJvcGVybHkuXG4gICAgPiAuY2FyZCB7XG4gICAgICAvLyBGbGV4YnVncyAjNDogaHR0cHM6Ly9naXRodWIuY29tL3BoaWxpcHdhbHRvbi9mbGV4YnVncyNmbGV4YnVnLTRcbiAgICAgIGZsZXg6IDEgMCAwJTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAgICsgLmNhcmQge1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDA7XG4gICAgICB9XG5cbiAgICAgIC8vIEhhbmRsZSByb3VuZGVkIGNvcm5lcnNcbiAgICAgIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoMCk7XG5cbiAgICAgICAgICAuY2FyZC1pbWctdG9wLFxuICAgICAgICAgIC5jYXJkLWhlYWRlciB7XG4gICAgICAgICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gICAgICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbiAgICAgICAgICB9XG4gICAgICAgICAgLmNhcmQtaW1nLWJvdHRvbSxcbiAgICAgICAgICAuY2FyZC1mb290ZXIge1xuICAgICAgICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJjpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKDApO1xuXG4gICAgICAgICAgLmNhcmQtaW1nLXRvcCxcbiAgICAgICAgICAuY2FyZC1oZWFkZXIge1xuICAgICAgICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuICAgICAgICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcbiAgICAgICAgICB9XG4gICAgICAgICAgLmNhcmQtaW1nLWJvdHRvbSxcbiAgICAgICAgICAuY2FyZC1mb290ZXIge1xuICAgICAgICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4vL1xuLy8gQ29sdW1uc1xuLy9cblxuLmNhcmQtY29sdW1ucyB7XG4gIC5jYXJkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkY2FyZC1jb2x1bW5zLW1hcmdpbjtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgICBjb2x1bW4tY291bnQ6ICRjYXJkLWNvbHVtbnMtY291bnQ7XG4gICAgY29sdW1uLWdhcDogJGNhcmQtY29sdW1ucy1nYXA7XG4gICAgb3JwaGFuczogMTtcbiAgICB3aWRvd3M6IDE7XG5cbiAgICAuY2FyZCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IC8vIERvbid0IGxldCB0aGVtIHZlcnRpY2FsbHkgc3BhbiBtdWx0aXBsZSBjb2x1bW5zXG4gICAgICB3aWR0aDogMTAwJTsgLy8gRG9uJ3QgbGV0IHRoZWlyIHdpZHRoIGNoYW5nZVxuICAgIH1cbiAgfVxufVxuXG5cbi8vXG4vLyBBY2NvcmRpb25cbi8vXG5cbi5hY2NvcmRpb24ge1xuICBvdmVyZmxvdy1hbmNob3I6IG5vbmU7XG5cbiAgPiAuY2FyZCB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICY6bm90KDpsYXN0LW9mLXR5cGUpIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygwKTtcbiAgICB9XG5cbiAgICAmOm5vdCg6Zmlyc3Qtb2YtdHlwZSkge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoMCk7XG4gICAgfVxuXG4gICAgPiAuY2FyZC1oZWFkZXIge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwKTtcbiAgICAgIG1hcmdpbi1ib3R0b206IC0kY2FyZC1ib3JkZXItd2lkdGg7XG4gICAgfVxuICB9XG59XG4iLCIuYnJlYWRjcnVtYiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgcGFkZGluZzogJGJyZWFkY3J1bWItcGFkZGluZy15ICRicmVhZGNydW1iLXBhZGRpbmcteDtcbiAgbWFyZ2luLWJvdHRvbTogJGJyZWFkY3J1bWItbWFyZ2luLWJvdHRvbTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRicmVhZGNydW1iLWZvbnQtc2l6ZSk7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRicmVhZGNydW1iLWJnO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRicmVhZGNydW1iLWJvcmRlci1yYWRpdXMpO1xufVxuXG4uYnJlYWRjcnVtYi1pdGVtIHtcbiAgLy8gVGhlIHNlcGFyYXRvciBiZXR3ZWVuIGJyZWFkY3J1bWJzIChieSBkZWZhdWx0LCBhIGZvcndhcmQtc2xhc2g6IFwiL1wiKVxuICArIC5icmVhZGNydW1iLWl0ZW0ge1xuICAgIHBhZGRpbmctbGVmdDogJGJyZWFkY3J1bWItaXRlbS1wYWRkaW5nO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyAvLyBTdXBwcmVzcyBpbmxpbmUgc3BhY2luZ3MgYW5kIHVuZGVybGluaW5nIG9mIHRoZSBzZXBhcmF0b3JcbiAgICAgIHBhZGRpbmctcmlnaHQ6ICRicmVhZGNydW1iLWl0ZW0tcGFkZGluZztcbiAgICAgIGNvbG9yOiAkYnJlYWRjcnVtYi1kaXZpZGVyLWNvbG9yO1xuICAgICAgY29udGVudDogZXNjYXBlLXN2ZygkYnJlYWRjcnVtYi1kaXZpZGVyKTtcbiAgICB9XG4gIH1cblxuICAvLyBJRTktMTEgaGFjayB0byBwcm9wZXJseSBoYW5kbGUgaHlwZXJsaW5rIHVuZGVybGluZXMgZm9yIGJyZWFkY3J1bWJzIGJ1aWx0XG4gIC8vIHdpdGhvdXQgYDx1bD5gcy4gVGhlIGA6OmJlZm9yZWAgcHNldWRvLWVsZW1lbnQgZ2VuZXJhdGVzIGFuIGVsZW1lbnRcbiAgLy8gKndpdGhpbiogdGhlIC5icmVhZGNydW1iLWl0ZW0gYW5kIHRoZXJlYnkgaW5oZXJpdHMgdGhlIGB0ZXh0LWRlY29yYXRpb25gLlxuICAvL1xuICAvLyBUbyB0cmljayBJRSBpbnRvIHN1cHByZXNzaW5nIHRoZSB1bmRlcmxpbmUsIHdlIGdpdmUgdGhlIHBzZXVkby1lbGVtZW50IGFuXG4gIC8vIHVuZGVybGluZSBhbmQgdGhlbiBpbW1lZGlhdGVseSByZW1vdmUgaXQuXG4gICsgLmJyZWFkY3J1bWItaXRlbTpob3Zlcjo6YmVmb3JlIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgfVxuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tZHVwbGljYXRlLXNlbGVjdG9yc1xuICArIC5icmVhZGNydW1iLWl0ZW06aG92ZXI6OmJlZm9yZSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgJi5hY3RpdmUge1xuICAgIGNvbG9yOiAkYnJlYWRjcnVtYi1hY3RpdmUtY29sb3I7XG4gIH1cbn1cbiIsIi5wYWdpbmF0aW9uIHtcbiAgZGlzcGxheTogZmxleDtcbiAgQGluY2x1ZGUgbGlzdC11bnN0eWxlZCgpO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCk7XG59XG5cbi5wYWdlLWxpbmsge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAkcGFnaW5hdGlvbi1wYWRkaW5nLXkgJHBhZ2luYXRpb24tcGFkZGluZy14O1xuICBtYXJnaW4tbGVmdDogLSRwYWdpbmF0aW9uLWJvcmRlci13aWR0aDtcbiAgbGluZS1oZWlnaHQ6ICRwYWdpbmF0aW9uLWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJHBhZ2luYXRpb24tY29sb3I7XG4gIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstZGVjb3JhdGlvbiA9PSBub25lLCBudWxsLCBub25lKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2luYXRpb24tYmc7XG4gIGJvcmRlcjogJHBhZ2luYXRpb24tYm9yZGVyLXdpZHRoIHNvbGlkICRwYWdpbmF0aW9uLWJvcmRlci1jb2xvcjtcblxuICAmOmhvdmVyIHtcbiAgICB6LWluZGV4OiAyO1xuICAgIGNvbG9yOiAkcGFnaW5hdGlvbi1ob3Zlci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2luYXRpb24taG92ZXItYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkcGFnaW5hdGlvbi1ob3Zlci1ib3JkZXItY29sb3I7XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICB6LWluZGV4OiAzO1xuICAgIG91dGxpbmU6ICRwYWdpbmF0aW9uLWZvY3VzLW91dGxpbmU7XG4gICAgYm94LXNoYWRvdzogJHBhZ2luYXRpb24tZm9jdXMtYm94LXNoYWRvdztcbiAgfVxufVxuXG4ucGFnZS1pdGVtIHtcbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgLnBhZ2UtbGluayB7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG4gICAgfVxuICB9XG4gICY6bGFzdC1jaGlsZCB7XG4gICAgLnBhZ2UtbGluayB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbiAgICB9XG4gIH1cblxuICAmLmFjdGl2ZSAucGFnZS1saW5rIHtcbiAgICB6LWluZGV4OiAzO1xuICAgIGNvbG9yOiAkcGFnaW5hdGlvbi1hY3RpdmUtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2luYXRpb24tYWN0aXZlLWJnO1xuICAgIGJvcmRlci1jb2xvcjogJHBhZ2luYXRpb24tYWN0aXZlLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gICYuZGlzYWJsZWQgLnBhZ2UtbGluayB7XG4gICAgY29sb3I6ICRwYWdpbmF0aW9uLWRpc2FibGVkLWNvbG9yO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIC8vIE9waW5pb25hdGVkOiByZW1vdmUgdGhlIFwiaGFuZFwiIGN1cnNvciBzZXQgcHJldmlvdXNseSBmb3IgLnBhZ2UtbGlua1xuICAgIGN1cnNvcjogYXV0bztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnaW5hdGlvbi1kaXNhYmxlZC1iZztcbiAgICBib3JkZXItY29sb3I6ICRwYWdpbmF0aW9uLWRpc2FibGVkLWJvcmRlci1jb2xvcjtcbiAgfVxufVxuXG5cbi8vXG4vLyBTaXppbmdcbi8vXG5cbi5wYWdpbmF0aW9uLWxnIHtcbiAgQGluY2x1ZGUgcGFnaW5hdGlvbi1zaXplKCRwYWdpbmF0aW9uLXBhZGRpbmcteS1sZywgJHBhZ2luYXRpb24tcGFkZGluZy14LWxnLCAkZm9udC1zaXplLWxnLCAkbGluZS1oZWlnaHQtbGcsICRwYWdpbmF0aW9uLWJvcmRlci1yYWRpdXMtbGcpO1xufVxuXG4ucGFnaW5hdGlvbi1zbSB7XG4gIEBpbmNsdWRlIHBhZ2luYXRpb24tc2l6ZSgkcGFnaW5hdGlvbi1wYWRkaW5nLXktc20sICRwYWdpbmF0aW9uLXBhZGRpbmcteC1zbSwgJGZvbnQtc2l6ZS1zbSwgJGxpbmUtaGVpZ2h0LXNtLCAkcGFnaW5hdGlvbi1ib3JkZXItcmFkaXVzLXNtKTtcbn1cbiIsIi8vIFBhZ2luYXRpb25cblxuQG1peGluIHBhZ2luYXRpb24tc2l6ZSgkcGFkZGluZy15LCAkcGFkZGluZy14LCAkZm9udC1zaXplLCAkbGluZS1oZWlnaHQsICRib3JkZXItcmFkaXVzKSB7XG4gIC5wYWdlLWxpbmsge1xuICAgIHBhZGRpbmc6ICRwYWRkaW5nLXkgJHBhZGRpbmcteDtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoJGZvbnQtc2l6ZSk7XG4gICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodDtcbiAgfVxuXG4gIC5wYWdlLWl0ZW0ge1xuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgLnBhZ2UtbGluayB7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG4gICAgICB9XG4gICAgfVxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAucGFnZS1saW5rIHtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBCYXNlIGNsYXNzXG4vL1xuLy8gUmVxdWlyZXMgb25lIG9mIHRoZSBjb250ZXh0dWFsLCBjb2xvciBtb2RpZmllciBjbGFzc2VzIGZvciBgY29sb3JgIGFuZFxuLy8gYGJhY2tncm91bmQtY29sb3JgLlxuXG4uYmFkZ2Uge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6ICRiYWRnZS1wYWRkaW5nLXkgJGJhZGdlLXBhZGRpbmcteDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRiYWRnZS1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogJGJhZGdlLWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogMTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJhZGdlLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRiYWRnZS10cmFuc2l0aW9uKTtcblxuICBAYXQtcm9vdCBhI3smfSB7XG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgLy8gRW1wdHkgYmFkZ2VzIGNvbGxhcHNlIGF1dG9tYXRpY2FsbHlcbiAgJjplbXB0eSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4vLyBRdWljayBmaXggZm9yIGJhZGdlcyBpbiBidXR0b25zXG4uYnRuIC5iYWRnZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAtMXB4O1xufVxuXG4vLyBQaWxsIGJhZGdlc1xuLy9cbi8vIE1ha2UgdGhlbSBleHRyYSByb3VuZGVkIHdpdGggYSBtb2RpZmllciB0byByZXBsYWNlIHYzJ3MgYmFkZ2VzLlxuXG4uYmFkZ2UtcGlsbCB7XG4gIHBhZGRpbmctcmlnaHQ6ICRiYWRnZS1waWxsLXBhZGRpbmcteDtcbiAgcGFkZGluZy1sZWZ0OiAkYmFkZ2UtcGlsbC1wYWRkaW5nLXg7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJhZGdlLXBpbGwtYm9yZGVyLXJhZGl1cyk7XG59XG5cbi8vIENvbG9yc1xuLy9cbi8vIENvbnRleHR1YWwgdmFyaWF0aW9ucyAobGlua2VkIGJhZGdlcyBnZXQgZGFya2VyIG9uIDpob3ZlcikuXG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAuYmFkZ2UtI3skY29sb3J9IHtcbiAgICBAaW5jbHVkZSBiYWRnZS12YXJpYW50KCR2YWx1ZSk7XG4gIH1cbn1cbiIsIkBtaXhpbiBiYWRnZS12YXJpYW50KCRiZykge1xuICBjb2xvcjogY29sb3IteWlxKCRiZyk7XG4gIGJhY2tncm91bmQtY29sb3I6ICRiZztcblxuICBAYXQtcm9vdCBhI3smfSB7XG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgICBjb2xvcjogY29sb3IteWlxKCRiZyk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGJnLCAxMCUpO1xuICAgIH1cblxuICAgICY6Zm9jdXMsXG4gICAgJi5mb2N1cyB7XG4gICAgICBvdXRsaW5lOiAwO1xuICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGJhZGdlLWZvY3VzLXdpZHRoIHJnYmEoJGJnLCAuNSk7XG4gICAgfVxuICB9XG59XG4iLCIuanVtYm90cm9uIHtcbiAgcGFkZGluZzogJGp1bWJvdHJvbi1wYWRkaW5nICgkanVtYm90cm9uLXBhZGRpbmcgKiAuNSk7XG4gIG1hcmdpbi1ib3R0b206ICRqdW1ib3Ryb24tcGFkZGluZztcbiAgY29sb3I6ICRqdW1ib3Ryb24tY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRqdW1ib3Ryb24tYmc7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMtbGcpO1xuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgICBwYWRkaW5nOiAoJGp1bWJvdHJvbi1wYWRkaW5nICogMikgJGp1bWJvdHJvbi1wYWRkaW5nO1xuICB9XG59XG5cbi5qdW1ib3Ryb24tZmx1aWQge1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCk7XG59XG4iLCIvL1xuLy8gQmFzZSBzdHlsZXNcbi8vXG5cbi5hbGVydCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogJGFsZXJ0LXBhZGRpbmcteSAkYWxlcnQtcGFkZGluZy14O1xuICBtYXJnaW4tYm90dG9tOiAkYWxlcnQtbWFyZ2luLWJvdHRvbTtcbiAgYm9yZGVyOiAkYWxlcnQtYm9yZGVyLXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRhbGVydC1ib3JkZXItcmFkaXVzKTtcbn1cblxuLy8gSGVhZGluZ3MgZm9yIGxhcmdlciBhbGVydHNcbi5hbGVydC1oZWFkaW5nIHtcbiAgLy8gU3BlY2lmaWVkIHRvIHByZXZlbnQgY29uZmxpY3RzIG9mIGNoYW5naW5nICRoZWFkaW5ncy1jb2xvclxuICBjb2xvcjogaW5oZXJpdDtcbn1cblxuLy8gUHJvdmlkZSBjbGFzcyBmb3IgbGlua3MgdGhhdCBtYXRjaCBhbGVydHNcbi5hbGVydC1saW5rIHtcbiAgZm9udC13ZWlnaHQ6ICRhbGVydC1saW5rLWZvbnQtd2VpZ2h0O1xufVxuXG5cbi8vIERpc21pc3NpYmxlIGFsZXJ0c1xuLy9cbi8vIEV4cGFuZCB0aGUgcmlnaHQgcGFkZGluZyBhbmQgYWNjb3VudCBmb3IgdGhlIGNsb3NlIGJ1dHRvbidzIHBvc2l0aW9uaW5nLlxuXG4uYWxlcnQtZGlzbWlzc2libGUge1xuICBwYWRkaW5nLXJpZ2h0OiAkY2xvc2UtZm9udC1zaXplICsgJGFsZXJ0LXBhZGRpbmcteCAqIDI7XG5cbiAgLy8gQWRqdXN0IGNsb3NlIGxpbmsgcG9zaXRpb25cbiAgLmNsb3NlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHotaW5kZXg6IDI7XG4gICAgcGFkZGluZzogJGFsZXJ0LXBhZGRpbmcteSAkYWxlcnQtcGFkZGluZy14O1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICB9XG59XG5cblxuLy8gQWx0ZXJuYXRlIHN0eWxlc1xuLy9cbi8vIEdlbmVyYXRlIGNvbnRleHR1YWwgbW9kaWZpZXIgY2xhc3NlcyBmb3IgY29sb3JpemluZyB0aGUgYWxlcnQuXG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAuYWxlcnQtI3skY29sb3J9IHtcbiAgICBAaW5jbHVkZSBhbGVydC12YXJpYW50KHRoZW1lLWNvbG9yLWxldmVsKCRjb2xvciwgJGFsZXJ0LWJnLWxldmVsKSwgdGhlbWUtY29sb3ItbGV2ZWwoJGNvbG9yLCAkYWxlcnQtYm9yZGVyLWxldmVsKSwgdGhlbWUtY29sb3ItbGV2ZWwoJGNvbG9yLCAkYWxlcnQtY29sb3ItbGV2ZWwpKTtcbiAgfVxufVxuIiwiQG1peGluIGFsZXJ0LXZhcmlhbnQoJGJhY2tncm91bmQsICRib3JkZXIsICRjb2xvcikge1xuICBjb2xvcjogJGNvbG9yO1xuICBAaW5jbHVkZSBncmFkaWVudC1iZygkYmFja2dyb3VuZCk7XG4gIGJvcmRlci1jb2xvcjogJGJvcmRlcjtcblxuICBociB7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogZGFya2VuKCRib3JkZXIsIDUlKTtcbiAgfVxuXG4gIC5hbGVydC1saW5rIHtcbiAgICBjb2xvcjogZGFya2VuKCRjb2xvciwgMTAlKTtcbiAgfVxufVxuIiwiLy8gRGlzYWJsZSBhbmltYXRpb24gaWYgdHJhbnNpdGlvbnMgYXJlIGRpc2FibGVkXG5AaWYgJGVuYWJsZS10cmFuc2l0aW9ucyB7XG4gIEBrZXlmcmFtZXMgcHJvZ3Jlc3MtYmFyLXN0cmlwZXMge1xuICAgIGZyb20geyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAkcHJvZ3Jlc3MtaGVpZ2h0IDA7IH1cbiAgICB0byB7IGJhY2tncm91bmQtcG9zaXRpb246IDAgMDsgfVxuICB9XG59XG5cbi5wcm9ncmVzcyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGhlaWdodDogJHByb2dyZXNzLWhlaWdodDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgLy8gZm9yY2Ugcm91bmRlZCBjb3JuZXJzIGJ5IGNyb3BwaW5nIGl0XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBAaW5jbHVkZSBmb250LXNpemUoJHByb2dyZXNzLWZvbnQtc2l6ZSk7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwcm9ncmVzcy1iZztcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkcHJvZ3Jlc3MtYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJHByb2dyZXNzLWJveC1zaGFkb3cpO1xufVxuXG4ucHJvZ3Jlc3MtYmFyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNvbG9yOiAkcHJvZ3Jlc3MtYmFyLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwcm9ncmVzcy1iYXItYmc7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJHByb2dyZXNzLWJhci10cmFuc2l0aW9uKTtcbn1cblxuLnByb2dyZXNzLWJhci1zdHJpcGVkIHtcbiAgQGluY2x1ZGUgZ3JhZGllbnQtc3RyaXBlZCgpO1xuICBiYWNrZ3JvdW5kLXNpemU6ICRwcm9ncmVzcy1oZWlnaHQgJHByb2dyZXNzLWhlaWdodDtcbn1cblxuQGlmICRlbmFibGUtdHJhbnNpdGlvbnMge1xuICAucHJvZ3Jlc3MtYmFyLWFuaW1hdGVkIHtcbiAgICBhbmltYXRpb246ICRwcm9ncmVzcy1iYXItYW5pbWF0aW9uLXRpbWluZyBwcm9ncmVzcy1iYXItc3RyaXBlcztcblxuICAgIEBpZiAkZW5hYmxlLXByZWZlcnMtcmVkdWNlZC1tb3Rpb24tbWVkaWEtcXVlcnkge1xuICAgICAgQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgICAgICAgYW5pbWF0aW9uOiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLm1lZGlhIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG59XG5cbi5tZWRpYS1ib2R5IHtcbiAgZmxleDogMTtcbn1cbiIsIi8vIEJhc2UgY2xhc3Ncbi8vXG4vLyBFYXNpbHkgdXNhYmxlIG9uIDx1bD4sIDxvbD4sIG9yIDxkaXY+LlxuXG4ubGlzdC1ncm91cCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgLy8gTm8gbmVlZCB0byBzZXQgbGlzdC1zdHlsZTogbm9uZTsgc2luY2UgLmxpc3QtZ3JvdXAtaXRlbSBpcyBibG9jayBsZXZlbFxuICBwYWRkaW5nLWxlZnQ6IDA7IC8vIHJlc2V0IHBhZGRpbmcgYmVjYXVzZSB1bCBhbmQgb2xcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkbGlzdC1ncm91cC1ib3JkZXItcmFkaXVzKTtcbn1cblxuXG4vLyBJbnRlcmFjdGl2ZSBsaXN0IGl0ZW1zXG4vL1xuLy8gVXNlIGFuY2hvciBvciBidXR0b24gZWxlbWVudHMgaW5zdGVhZCBvZiBgbGlgcyBvciBgZGl2YHMgdG8gY3JlYXRlIGludGVyYWN0aXZlXG4vLyBsaXN0IGl0ZW1zLiBJbmNsdWRlcyBhbiBleHRyYSBgLmFjdGl2ZWAgbW9kaWZpZXIgY2xhc3MgZm9yIHNlbGVjdGVkIGl0ZW1zLlxuXG4ubGlzdC1ncm91cC1pdGVtLWFjdGlvbiB7XG4gIHdpZHRoOiAxMDAlOyAvLyBGb3IgYDxidXR0b24+YHMgKGFuY2hvcnMgYmVjb21lIDEwMCUgYnkgZGVmYXVsdCB0aG91Z2gpXG4gIGNvbG9yOiAkbGlzdC1ncm91cC1hY3Rpb24tY29sb3I7XG4gIHRleHQtYWxpZ246IGluaGVyaXQ7IC8vIEZvciBgPGJ1dHRvbj5gcyAoYW5jaG9ycyBpbmhlcml0KVxuXG4gIC8vIEhvdmVyIHN0YXRlXG4gIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgIHotaW5kZXg6IDE7IC8vIFBsYWNlIGhvdmVyL2ZvY3VzIGl0ZW1zIGFib3ZlIHRoZWlyIHNpYmxpbmdzIGZvciBwcm9wZXIgYm9yZGVyIHN0eWxpbmdcbiAgICBjb2xvcjogJGxpc3QtZ3JvdXAtYWN0aW9uLWhvdmVyLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlzdC1ncm91cC1ob3Zlci1iZztcbiAgfVxuXG4gICY6YWN0aXZlIHtcbiAgICBjb2xvcjogJGxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWJnO1xuICB9XG59XG5cblxuLy8gSW5kaXZpZHVhbCBsaXN0IGl0ZW1zXG4vL1xuLy8gVXNlIG9uIGBsaWBzIG9yIGBkaXZgcyB3aXRoaW4gdGhlIGAubGlzdC1ncm91cGAgcGFyZW50LlxuXG4ubGlzdC1ncm91cC1pdGVtIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogJGxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXkgJGxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXg7XG4gIGNvbG9yOiAkbGlzdC1ncm91cC1jb2xvcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1kZWNvcmF0aW9uID09IG5vbmUsIG51bGwsIG5vbmUpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlzdC1ncm91cC1iZztcbiAgYm9yZGVyOiAkbGlzdC1ncm91cC1ib3JkZXItd2lkdGggc29saWQgJGxpc3QtZ3JvdXAtYm9yZGVyLWNvbG9yO1xuXG4gICY6Zmlyc3QtY2hpbGQge1xuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKGluaGVyaXQpO1xuICB9XG5cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cyhpbmhlcml0KTtcbiAgfVxuXG4gICYuZGlzYWJsZWQsXG4gICY6ZGlzYWJsZWQge1xuICAgIGNvbG9yOiAkbGlzdC1ncm91cC1kaXNhYmxlZC1jb2xvcjtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlzdC1ncm91cC1kaXNhYmxlZC1iZztcbiAgfVxuXG4gIC8vIEluY2x1ZGUgYm90aCBoZXJlIGZvciBgPGE+YHMgYW5kIGA8YnV0dG9uPmBzXG4gICYuYWN0aXZlIHtcbiAgICB6LWluZGV4OiAyOyAvLyBQbGFjZSBhY3RpdmUgaXRlbXMgYWJvdmUgdGhlaXIgc2libGluZ3MgZm9yIHByb3BlciBib3JkZXIgc3R5bGluZ1xuICAgIGNvbG9yOiAkbGlzdC1ncm91cC1hY3RpdmUtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxpc3QtZ3JvdXAtYWN0aXZlLWJnO1xuICAgIGJvcmRlci1jb2xvcjogJGxpc3QtZ3JvdXAtYWN0aXZlLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gICYgKyAmIHtcbiAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xuXG4gICAgJi5hY3RpdmUge1xuICAgICAgbWFyZ2luLXRvcDogLSRsaXN0LWdyb3VwLWJvcmRlci13aWR0aDtcbiAgICAgIGJvcmRlci10b3Atd2lkdGg6ICRsaXN0LWdyb3VwLWJvcmRlci13aWR0aDtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBIb3Jpem9udGFsXG4vL1xuLy8gQ2hhbmdlIHRoZSBsYXlvdXQgb2YgbGlzdCBncm91cCBpdGVtcyBmcm9tIHZlcnRpY2FsIChkZWZhdWx0KSB0byBob3Jpem9udGFsLlxuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAubGlzdC1ncm91cC1ob3Jpem9udGFsI3skaW5maXh9IHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cbiAgICAgID4gLmxpc3QtZ3JvdXAtaXRlbSB7XG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXMoJGxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1cyk7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXMoMCk7XG4gICAgICAgIH1cblxuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzKCRsaXN0LWdyb3VwLWJvcmRlci1yYWRpdXMpO1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXMoMCk7XG4gICAgICAgIH1cblxuICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgfVxuXG4gICAgICAgICsgLmxpc3QtZ3JvdXAtaXRlbSB7XG4gICAgICAgICAgYm9yZGVyLXRvcC13aWR0aDogJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoO1xuICAgICAgICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuXG4gICAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0kbGlzdC1ncm91cC1ib3JkZXItd2lkdGg7XG4gICAgICAgICAgICBib3JkZXItbGVmdC13aWR0aDogJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cbi8vIEZsdXNoIGxpc3QgaXRlbXNcbi8vXG4vLyBSZW1vdmUgYm9yZGVycyBhbmQgYm9yZGVyLXJhZGl1cyB0byBrZWVwIGxpc3QgZ3JvdXAgaXRlbXMgZWRnZS10by1lZGdlLiBNb3N0XG4vLyB1c2VmdWwgd2l0aGluIG90aGVyIGNvbXBvbmVudHMgKGUuZy4sIGNhcmRzKS5cblxuLmxpc3QtZ3JvdXAtZmx1c2gge1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xuXG4gID4gLmxpc3QtZ3JvdXAtaXRlbSB7XG4gICAgYm9yZGVyLXdpZHRoOiAwIDAgJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoO1xuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgfVxuICB9XG59XG5cblxuLy8gQ29udGV4dHVhbCB2YXJpYW50c1xuLy9cbi8vIEFkZCBtb2RpZmllciBjbGFzc2VzIHRvIGNoYW5nZSB0ZXh0IGFuZCBiYWNrZ3JvdW5kIGNvbG9yIG9uIGluZGl2aWR1YWwgaXRlbXMuXG4vLyBPcmdhbml6YXRpb25hbGx5LCB0aGlzIG11c3QgY29tZSBhZnRlciB0aGUgYDpob3ZlcmAgc3RhdGVzLlxuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgQGluY2x1ZGUgbGlzdC1ncm91cC1pdGVtLXZhcmlhbnQoJGNvbG9yLCB0aGVtZS1jb2xvci1sZXZlbCgkY29sb3IsIC05KSwgdGhlbWUtY29sb3ItbGV2ZWwoJGNvbG9yLCA2KSk7XG59XG4iLCIvLyBMaXN0IEdyb3Vwc1xuXG5AbWl4aW4gbGlzdC1ncm91cC1pdGVtLXZhcmlhbnQoJHN0YXRlLCAkYmFja2dyb3VuZCwgJGNvbG9yKSB7XG4gIC5saXN0LWdyb3VwLWl0ZW0tI3skc3RhdGV9IHtcbiAgICBjb2xvcjogJGNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuXG4gICAgJi5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uIHtcbiAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgICAgICBjb2xvcjogJGNvbG9yO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGJhY2tncm91bmQsIDUlKTtcbiAgICAgIH1cblxuICAgICAgJi5hY3RpdmUge1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLmNsb3NlIHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBAaW5jbHVkZSBmb250LXNpemUoJGNsb3NlLWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkY2xvc2UtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogJGNsb3NlLWNvbG9yO1xuICB0ZXh0LXNoYWRvdzogJGNsb3NlLXRleHQtc2hhZG93O1xuICBvcGFjaXR5OiAuNTtcblxuICAvLyBPdmVycmlkZSA8YT4ncyBob3ZlciBzdHlsZVxuICBAaW5jbHVkZSBob3ZlcigpIHtcbiAgICBjb2xvcjogJGNsb3NlLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gICY6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkge1xuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgICAgb3BhY2l0eTogLjc1O1xuICAgIH1cbiAgfVxufVxuXG4vLyBBZGRpdGlvbmFsIHByb3BlcnRpZXMgZm9yIGJ1dHRvbiB2ZXJzaW9uXG4vLyBpT1MgcmVxdWlyZXMgdGhlIGJ1dHRvbiBlbGVtZW50IGluc3RlYWQgb2YgYW4gYW5jaG9yIHRhZy5cbi8vIElmIHlvdSB3YW50IHRoZSBhbmNob3IgdmVyc2lvbiwgaXQgcmVxdWlyZXMgYGhyZWY9XCIjXCJgLlxuLy8gU2VlIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0V2ZW50cy9jbGljayNTYWZhcmlfTW9iaWxlXG5cbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGVcbmJ1dHRvbi5jbG9zZSB7XG4gIHBhZGRpbmc6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDA7XG59XG5cbi8vIEZ1dHVyZS1wcm9vZiBkaXNhYmxpbmcgb2YgY2xpY2tzIG9uIGA8YT5gIGVsZW1lbnRzXG5cbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGVcbmEuY2xvc2UuZGlzYWJsZWQge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cbiIsIi50b2FzdCB7XG4gIC8vIFByZXZlbnRzIGZyb20gc2hyaW5raW5nIGluIElFMTEsIHdoZW4gaW4gYSBmbGV4IGNvbnRhaW5lclxuICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yODM0MVxuICBmbGV4LWJhc2lzOiAkdG9hc3QtbWF4LXdpZHRoO1xuICBtYXgtd2lkdGg6ICR0b2FzdC1tYXgtd2lkdGg7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkdG9hc3QtZm9udC1zaXplKTtcbiAgY29sb3I6ICR0b2FzdC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRvYXN0LWJhY2tncm91bmQtY29sb3I7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogJHRvYXN0LWJvcmRlci13aWR0aCBzb2xpZCAkdG9hc3QtYm9yZGVyLWNvbG9yO1xuICBib3gtc2hhZG93OiAkdG9hc3QtYm94LXNoYWRvdztcbiAgb3BhY2l0eTogMDtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkdG9hc3QtYm9yZGVyLXJhZGl1cyk7XG5cbiAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkdG9hc3QtcGFkZGluZy14O1xuICB9XG5cbiAgJi5zaG93aW5nIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgJi5zaG93IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgJi5oaWRlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi50b2FzdC1oZWFkZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nOiAkdG9hc3QtcGFkZGluZy15ICR0b2FzdC1wYWRkaW5nLXg7XG4gIGNvbG9yOiAkdG9hc3QtaGVhZGVyLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdG9hc3QtaGVhZGVyLWJhY2tncm91bmQtY29sb3I7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlci1ib3R0b206ICR0b2FzdC1ib3JkZXItd2lkdGggc29saWQgJHRvYXN0LWhlYWRlci1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKHN1YnRyYWN0KCR0b2FzdC1ib3JkZXItcmFkaXVzLCAkdG9hc3QtYm9yZGVyLXdpZHRoKSk7XG59XG5cbi50b2FzdC1ib2R5IHtcbiAgcGFkZGluZzogJHRvYXN0LXBhZGRpbmcteDsgLy8gYXBwbHkgdG8gYm90aCB2ZXJ0aWNhbCBhbmQgaG9yaXpvbnRhbFxufVxuIiwiLy8gLm1vZGFsLW9wZW4gICAgICAtIGJvZHkgY2xhc3MgZm9yIGtpbGxpbmcgdGhlIHNjcm9sbFxuLy8gLm1vZGFsICAgICAgICAgICAtIGNvbnRhaW5lciB0byBzY3JvbGwgd2l0aGluXG4vLyAubW9kYWwtZGlhbG9nICAgIC0gcG9zaXRpb25pbmcgc2hlbGwgZm9yIHRoZSBhY3R1YWwgbW9kYWxcbi8vIC5tb2RhbC1jb250ZW50ICAgLSBhY3R1YWwgbW9kYWwgdy8gYmcgYW5kIGNvcm5lcnMgYW5kIHN0dWZmXG5cblxuLm1vZGFsLW9wZW4ge1xuICAvLyBLaWxsIHRoZSBzY3JvbGwgb24gdGhlIGJvZHlcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAubW9kYWwge1xuICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICB9XG59XG5cbi8vIENvbnRhaW5lciB0aGF0IHRoZSBtb2RhbCBzY3JvbGxzIHdpdGhpblxuLm1vZGFsIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICR6aW5kZXgtbW9kYWw7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIC8vIFByZXZlbnQgQ2hyb21lIG9uIFdpbmRvd3MgZnJvbSBhZGRpbmcgYSBmb2N1cyBvdXRsaW5lLiBGb3IgZGV0YWlscywgc2VlXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzEwOTUxLlxuICBvdXRsaW5lOiAwO1xuICAvLyBXZSBkZWxpYmVyYXRlbHkgZG9uJ3QgdXNlIGAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7YCBkdWUgdG8gYVxuICAvLyBnbmFybHkgaU9TIFNhZmFyaSBidWc6IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNTgzNDJcbiAgLy8gU2VlIGFsc28gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xNzY5NVxufVxuXG4vLyBTaGVsbCBkaXYgdG8gcG9zaXRpb24gdGhlIG1vZGFsIHdpdGggYm90dG9tIHBhZGRpbmdcbi5tb2RhbC1kaWFsb2cge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiBhdXRvO1xuICBtYXJnaW46ICRtb2RhbC1kaWFsb2ctbWFyZ2luO1xuICAvLyBhbGxvdyBjbGlja3MgdG8gcGFzcyB0aHJvdWdoIGZvciBjdXN0b20gY2xpY2sgaGFuZGxpbmcgdG8gY2xvc2UgbW9kYWxcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG5cbiAgLy8gV2hlbiBmYWRpbmcgaW4gdGhlIG1vZGFsLCBhbmltYXRlIGl0IHRvIHNsaWRlIGRvd25cbiAgLm1vZGFsLmZhZGUgJiB7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkbW9kYWwtdHJhbnNpdGlvbik7XG4gICAgdHJhbnNmb3JtOiAkbW9kYWwtZmFkZS10cmFuc2Zvcm07XG4gIH1cbiAgLm1vZGFsLnNob3cgJiB7XG4gICAgdHJhbnNmb3JtOiAkbW9kYWwtc2hvdy10cmFuc2Zvcm07XG4gIH1cblxuICAvLyBXaGVuIHRyeWluZyB0byBjbG9zZSwgYW5pbWF0ZSBmb2N1cyB0byBzY2FsZVxuICAubW9kYWwubW9kYWwtc3RhdGljICYge1xuICAgIHRyYW5zZm9ybTogJG1vZGFsLXNjYWxlLXRyYW5zZm9ybTtcbiAgfVxufVxuXG4ubW9kYWwtZGlhbG9nLXNjcm9sbGFibGUge1xuICBkaXNwbGF5OiBmbGV4OyAvLyBJRTEwLzExXG4gIG1heC1oZWlnaHQ6IHN1YnRyYWN0KDEwMCUsICRtb2RhbC1kaWFsb2ctbWFyZ2luICogMik7XG5cbiAgLm1vZGFsLWNvbnRlbnQge1xuICAgIG1heC1oZWlnaHQ6IHN1YnRyYWN0KDEwMHZoLCAkbW9kYWwtZGlhbG9nLW1hcmdpbiAqIDIpOyAvLyBJRTEwLzExXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxuXG4gIC5tb2RhbC1oZWFkZXIsXG4gIC5tb2RhbC1mb290ZXIge1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICB9XG5cbiAgLm1vZGFsLWJvZHkge1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gIH1cbn1cblxuLm1vZGFsLWRpYWxvZy1jZW50ZXJlZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG1pbi1oZWlnaHQ6IHN1YnRyYWN0KDEwMCUsICRtb2RhbC1kaWFsb2ctbWFyZ2luICogMik7XG5cbiAgLy8gRW5zdXJlIGBtb2RhbC1kaWFsb2ctY2VudGVyZWRgIGV4dGVuZHMgdGhlIGZ1bGwgaGVpZ2h0IG9mIHRoZSB2aWV3IChJRTEwLzExKVxuICAmOjpiZWZvcmUge1xuICAgIGRpc3BsYXk6IGJsb2NrOyAvLyBJRTEwXG4gICAgaGVpZ2h0OiBzdWJ0cmFjdCgxMDB2aCwgJG1vZGFsLWRpYWxvZy1tYXJnaW4gKiAyKTtcbiAgICBoZWlnaHQ6IG1pbi1jb250ZW50OyAvLyBSZXNldCBoZWlnaHQgdG8gMCBleGNlcHQgb24gSUVcbiAgICBjb250ZW50OiBcIlwiO1xuICB9XG5cbiAgLy8gRW5zdXJlIGAubW9kYWwtYm9keWAgc2hvd3Mgc2Nyb2xsYmFyIChJRTEwLzExKVxuICAmLm1vZGFsLWRpYWxvZy1zY3JvbGxhYmxlIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGhlaWdodDogMTAwJTtcblxuICAgIC5tb2RhbC1jb250ZW50IHtcbiAgICAgIG1heC1oZWlnaHQ6IG5vbmU7XG4gICAgfVxuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbi8vIEFjdHVhbCBtb2RhbFxuLm1vZGFsLWNvbnRlbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIHdpZHRoOiAxMDAlOyAvLyBFbnN1cmUgYC5tb2RhbC1jb250ZW50YCBleHRlbmRzIHRoZSBmdWxsIHdpZHRoIG9mIHRoZSBwYXJlbnQgYC5tb2RhbC1kaWFsb2dgXG4gIC8vIGNvdW50ZXJhY3QgdGhlIHBvaW50ZXItZXZlbnRzOiBub25lOyBpbiB0aGUgLm1vZGFsLWRpYWxvZ1xuICBjb2xvcjogJG1vZGFsLWNvbnRlbnQtY29sb3I7XG4gIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbW9kYWwtY29udGVudC1iZztcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiAkbW9kYWwtY29udGVudC1ib3JkZXItd2lkdGggc29saWQgJG1vZGFsLWNvbnRlbnQtYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRtb2RhbC1jb250ZW50LWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRtb2RhbC1jb250ZW50LWJveC1zaGFkb3cteHMpO1xuICAvLyBSZW1vdmUgZm9jdXMgb3V0bGluZSBmcm9tIG9wZW5lZCBtb2RhbFxuICBvdXRsaW5lOiAwO1xufVxuXG4vLyBNb2RhbCBiYWNrZ3JvdW5kXG4ubW9kYWwtYmFja2Ryb3Age1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1tb2RhbC1iYWNrZHJvcDtcbiAgd2lkdGg6IDEwMHZ3O1xuICBoZWlnaHQ6IDEwMHZoO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbW9kYWwtYmFja2Ryb3AtYmc7XG5cbiAgLy8gRmFkZSBmb3IgYmFja2Ryb3BcbiAgJi5mYWRlIHsgb3BhY2l0eTogMDsgfVxuICAmLnNob3cgeyBvcGFjaXR5OiAkbW9kYWwtYmFja2Ryb3Atb3BhY2l0eTsgfVxufVxuXG4vLyBNb2RhbCBoZWFkZXJcbi8vIFRvcCBzZWN0aW9uIG9mIHRoZSBtb2RhbCB3LyB0aXRsZSBhbmQgZGlzbWlzc1xuLm1vZGFsLWhlYWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OyAvLyBzbyB0aGUgY2xvc2UgYnRuIGFsd2F5cyBzdGF5cyBvbiB0aGUgdXBwZXIgcmlnaHQgY29ybmVyXG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgLy8gUHV0IG1vZGFsIGhlYWRlciBlbGVtZW50cyAodGl0bGUgYW5kIGRpc21pc3MpIG9uIG9wcG9zaXRlIGVuZHNcbiAgcGFkZGluZzogJG1vZGFsLWhlYWRlci1wYWRkaW5nO1xuICBib3JkZXItYm90dG9tOiAkbW9kYWwtaGVhZGVyLWJvcmRlci13aWR0aCBzb2xpZCAkbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJG1vZGFsLWNvbnRlbnQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG5cbiAgLmNsb3NlIHtcbiAgICBwYWRkaW5nOiAkbW9kYWwtaGVhZGVyLXBhZGRpbmc7XG4gICAgLy8gYXV0byBvbiB0aGUgbGVmdCBmb3JjZSBpY29uIHRvIHRoZSByaWdodCBldmVuIHdoZW4gdGhlcmUgaXMgbm8gLm1vZGFsLXRpdGxlXG4gICAgbWFyZ2luOiAoLSRtb2RhbC1oZWFkZXItcGFkZGluZy15KSAoLSRtb2RhbC1oZWFkZXItcGFkZGluZy14KSAoLSRtb2RhbC1oZWFkZXItcGFkZGluZy15KSBhdXRvO1xuICB9XG59XG5cbi8vIFRpdGxlIHRleHQgd2l0aGluIGhlYWRlclxuLm1vZGFsLXRpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbGluZS1oZWlnaHQ6ICRtb2RhbC10aXRsZS1saW5lLWhlaWdodDtcbn1cblxuLy8gTW9kYWwgYm9keVxuLy8gV2hlcmUgYWxsIG1vZGFsIGNvbnRlbnQgcmVzaWRlcyAoc2libGluZyBvZiAubW9kYWwtaGVhZGVyIGFuZCAubW9kYWwtZm9vdGVyKVxuLm1vZGFsLWJvZHkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC8vIEVuYWJsZSBgZmxleC1ncm93OiAxYCBzbyB0aGF0IHRoZSBib2R5IHRha2UgdXAgYXMgbXVjaCBzcGFjZSBhcyBwb3NzaWJsZVxuICAvLyB3aGVuIHRoZXJlIHNob3VsZCBiZSBhIGZpeGVkIGhlaWdodCBvbiBgLm1vZGFsLWRpYWxvZ2AuXG4gIGZsZXg6IDEgMSBhdXRvO1xuICBwYWRkaW5nOiAkbW9kYWwtaW5uZXItcGFkZGluZztcbn1cblxuLy8gRm9vdGVyIChmb3IgYWN0aW9ucylcbi5tb2RhbC1mb290ZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IC8vIHZlcnRpY2FsbHkgY2VudGVyXG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7IC8vIFJpZ2h0IGFsaWduIGJ1dHRvbnMgd2l0aCBmbGV4IHByb3BlcnR5IGJlY2F1c2UgdGV4dC1hbGlnbiBkb2Vzbid0IHdvcmsgb24gZmxleCBpdGVtc1xuICBwYWRkaW5nOiAkbW9kYWwtaW5uZXItcGFkZGluZyAtICRtb2RhbC1mb290ZXItbWFyZ2luLWJldHdlZW4gKiAuNTtcbiAgYm9yZGVyLXRvcDogJG1vZGFsLWZvb3Rlci1ib3JkZXItd2lkdGggc29saWQgJG1vZGFsLWZvb3Rlci1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKCRtb2RhbC1jb250ZW50LWlubmVyLWJvcmRlci1yYWRpdXMpO1xuXG4gIC8vIFBsYWNlIG1hcmdpbiBiZXR3ZWVuIGZvb3RlciBlbGVtZW50c1xuICAvLyBUaGlzIHNvbHV0aW9uIGlzIGZhciBmcm9tIGlkZWFsIGJlY2F1c2Ugb2YgdGhlIHVuaXZlcnNhbCBzZWxlY3RvciB1c2FnZSxcbiAgLy8gYnV0IGlzIG5lZWRlZCB0byBmaXggaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yNDgwMFxuICA+ICoge1xuICAgIG1hcmdpbjogJG1vZGFsLWZvb3Rlci1tYXJnaW4tYmV0d2VlbiAqIC41O1xuICB9XG59XG5cbi8vIE1lYXN1cmUgc2Nyb2xsYmFyIHdpZHRoIGZvciBwYWRkaW5nIGJvZHkgZHVyaW5nIG1vZGFsIHNob3cvaGlkZVxuLm1vZGFsLXNjcm9sbGJhci1tZWFzdXJlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IC05OTk5cHg7XG4gIHdpZHRoOiA1MHB4O1xuICBoZWlnaHQ6IDUwcHg7XG4gIG92ZXJmbG93OiBzY3JvbGw7XG59XG5cbi8vIFNjYWxlIHVwIHRoZSBtb2RhbFxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAvLyBBdXRvbWF0aWNhbGx5IHNldCBtb2RhbCdzIHdpZHRoIGZvciBsYXJnZXIgdmlld3BvcnRzXG4gIC5tb2RhbC1kaWFsb2cge1xuICAgIG1heC13aWR0aDogJG1vZGFsLW1kO1xuICAgIG1hcmdpbjogJG1vZGFsLWRpYWxvZy1tYXJnaW4teS1zbS11cCBhdXRvO1xuICB9XG5cbiAgLm1vZGFsLWRpYWxvZy1zY3JvbGxhYmxlIHtcbiAgICBtYXgtaGVpZ2h0OiBzdWJ0cmFjdCgxMDAlLCAkbW9kYWwtZGlhbG9nLW1hcmdpbi15LXNtLXVwICogMik7XG5cbiAgICAubW9kYWwtY29udGVudCB7XG4gICAgICBtYXgtaGVpZ2h0OiBzdWJ0cmFjdCgxMDB2aCwgJG1vZGFsLWRpYWxvZy1tYXJnaW4teS1zbS11cCAqIDIpO1xuICAgIH1cbiAgfVxuXG4gIC5tb2RhbC1kaWFsb2ctY2VudGVyZWQge1xuICAgIG1pbi1oZWlnaHQ6IHN1YnRyYWN0KDEwMCUsICRtb2RhbC1kaWFsb2ctbWFyZ2luLXktc20tdXAgKiAyKTtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBoZWlnaHQ6IHN1YnRyYWN0KDEwMHZoLCAkbW9kYWwtZGlhbG9nLW1hcmdpbi15LXNtLXVwICogMik7XG4gICAgICBoZWlnaHQ6IG1pbi1jb250ZW50O1xuICAgIH1cbiAgfVxuXG4gIC5tb2RhbC1jb250ZW50IHtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRtb2RhbC1jb250ZW50LWJveC1zaGFkb3ctc20tdXApO1xuICB9XG5cbiAgLm1vZGFsLXNtIHsgbWF4LXdpZHRoOiAkbW9kYWwtc207IH1cbn1cblxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAubW9kYWwtbGcsXG4gIC5tb2RhbC14bCB7XG4gICAgbWF4LXdpZHRoOiAkbW9kYWwtbGc7XG4gIH1cbn1cblxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4bCkge1xuICAubW9kYWwteGwgeyBtYXgtd2lkdGg6ICRtb2RhbC14bDsgfVxufVxuIiwiLy8gQmFzZSBjbGFzc1xuLnRvb2x0aXAge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6ICR6aW5kZXgtdG9vbHRpcDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogJHRvb2x0aXAtbWFyZ2luO1xuICAvLyBPdXIgcGFyZW50IGVsZW1lbnQgY2FuIGJlIGFyYml0cmFyeSBzaW5jZSB0b29sdGlwcyBhcmUgYnkgZGVmYXVsdCBpbnNlcnRlZCBhcyBhIHNpYmxpbmcgb2YgdGhlaXIgdGFyZ2V0IGVsZW1lbnQuXG4gIC8vIFNvIHJlc2V0IG91ciBmb250IGFuZCB0ZXh0IHByb3BlcnRpZXMgdG8gYXZvaWQgaW5oZXJpdGluZyB3ZWlyZCB2YWx1ZXMuXG4gIEBpbmNsdWRlIHJlc2V0LXRleHQoKTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCR0b29sdGlwLWZvbnQtc2l6ZSk7XG4gIC8vIEFsbG93IGJyZWFraW5nIHZlcnkgbG9uZyB3b3JkcyBzbyB0aGV5IGRvbid0IG92ZXJmbG93IHRoZSB0b29sdGlwJ3MgYm91bmRzXG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgb3BhY2l0eTogMDtcblxuICAmLnNob3cgeyBvcGFjaXR5OiAkdG9vbHRpcC1vcGFjaXR5OyB9XG5cbiAgLmFycm93IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6ICR0b29sdGlwLWFycm93LXdpZHRoO1xuICAgIGhlaWdodDogJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXRvb2x0aXAtdG9wIHtcbiAgcGFkZGluZzogJHRvb2x0aXAtYXJyb3ctaGVpZ2h0IDA7XG5cbiAgLmFycm93IHtcbiAgICBib3R0b206IDA7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgdG9wOiAwO1xuICAgICAgYm9yZGVyLXdpZHRoOiAkdG9vbHRpcC1hcnJvdy1oZWlnaHQgKCR0b29sdGlwLWFycm93LXdpZHRoICogLjUpIDA7XG4gICAgICBib3JkZXItdG9wLWNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXRvb2x0aXAtcmlnaHQge1xuICBwYWRkaW5nOiAwICR0b29sdGlwLWFycm93LWhlaWdodDtcblxuICAuYXJyb3cge1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6ICR0b29sdGlwLWFycm93LWhlaWdodDtcbiAgICBoZWlnaHQ6ICR0b29sdGlwLWFycm93LXdpZHRoO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgYm9yZGVyLXdpZHRoOiAoJHRvb2x0aXAtYXJyb3ctd2lkdGggKiAuNSkgJHRvb2x0aXAtYXJyb3ctaGVpZ2h0ICgkdG9vbHRpcC1hcnJvdy13aWR0aCAqIC41KSAwO1xuICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXRvb2x0aXAtYm90dG9tIHtcbiAgcGFkZGluZzogJHRvb2x0aXAtYXJyb3ctaGVpZ2h0IDA7XG5cbiAgLmFycm93IHtcbiAgICB0b3A6IDA7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgYm9yZGVyLXdpZHRoOiAwICgkdG9vbHRpcC1hcnJvdy13aWR0aCAqIC41KSAkdG9vbHRpcC1hcnJvdy1oZWlnaHQ7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXRvb2x0aXAtbGVmdCB7XG4gIHBhZGRpbmc6IDAgJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuXG4gIC5hcnJvdyB7XG4gICAgcmlnaHQ6IDA7XG4gICAgd2lkdGg6ICR0b29sdGlwLWFycm93LWhlaWdodDtcbiAgICBoZWlnaHQ6ICR0b29sdGlwLWFycm93LXdpZHRoO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBib3JkZXItd2lkdGg6ICgkdG9vbHRpcC1hcnJvdy13aWR0aCAqIC41KSAwICgkdG9vbHRpcC1hcnJvdy13aWR0aCAqIC41KSAkdG9vbHRpcC1hcnJvdy1oZWlnaHQ7XG4gICAgICBib3JkZXItbGVmdC1jb2xvcjogJHRvb2x0aXAtYXJyb3ctY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi5icy10b29sdGlwLWF1dG8ge1xuICAmW3gtcGxhY2VtZW50Xj1cInRvcFwiXSB7XG4gICAgQGV4dGVuZCAuYnMtdG9vbHRpcC10b3A7XG4gIH1cbiAgJlt4LXBsYWNlbWVudF49XCJyaWdodFwiXSB7XG4gICAgQGV4dGVuZCAuYnMtdG9vbHRpcC1yaWdodDtcbiAgfVxuICAmW3gtcGxhY2VtZW50Xj1cImJvdHRvbVwiXSB7XG4gICAgQGV4dGVuZCAuYnMtdG9vbHRpcC1ib3R0b207XG4gIH1cbiAgJlt4LXBsYWNlbWVudF49XCJsZWZ0XCJdIHtcbiAgICBAZXh0ZW5kIC5icy10b29sdGlwLWxlZnQ7XG4gIH1cbn1cblxuLy8gV3JhcHBlciBmb3IgdGhlIHRvb2x0aXAgY29udGVudFxuLnRvb2x0aXAtaW5uZXIge1xuICBtYXgtd2lkdGg6ICR0b29sdGlwLW1heC13aWR0aDtcbiAgcGFkZGluZzogJHRvb2x0aXAtcGFkZGluZy15ICR0b29sdGlwLXBhZGRpbmcteDtcbiAgY29sb3I6ICR0b29sdGlwLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0b29sdGlwLWJnO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCR0b29sdGlwLWJvcmRlci1yYWRpdXMpO1xufVxuIiwiQG1peGluIHJlc2V0LXRleHQoKSB7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktYmFzZTtcbiAgLy8gV2UgZGVsaWJlcmF0ZWx5IGRvIE5PVCByZXNldCBmb250LXNpemUgb3Igd29yZC13cmFwLlxuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gIHRleHQtYWxpZ246IGxlZnQ7IC8vIEZhbGxiYWNrIGZvciB3aGVyZSBgc3RhcnRgIGlzIG5vdCBzdXBwb3J0ZWRcbiAgdGV4dC1hbGlnbjogc3RhcnQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuICB3b3JkLWJyZWFrOiBub3JtYWw7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIHdvcmQtc3BhY2luZzogbm9ybWFsO1xuICBsaW5lLWJyZWFrOiBhdXRvO1xufVxuIiwiLnBvcG92ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1wb3BvdmVyO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWF4LXdpZHRoOiAkcG9wb3Zlci1tYXgtd2lkdGg7XG4gIC8vIE91ciBwYXJlbnQgZWxlbWVudCBjYW4gYmUgYXJiaXRyYXJ5IHNpbmNlIHRvb2x0aXBzIGFyZSBieSBkZWZhdWx0IGluc2VydGVkIGFzIGEgc2libGluZyBvZiB0aGVpciB0YXJnZXQgZWxlbWVudC5cbiAgLy8gU28gcmVzZXQgb3VyIGZvbnQgYW5kIHRleHQgcHJvcGVydGllcyB0byBhdm9pZCBpbmhlcml0aW5nIHdlaXJkIHZhbHVlcy5cbiAgQGluY2x1ZGUgcmVzZXQtdGV4dCgpO1xuICBAaW5jbHVkZSBmb250LXNpemUoJHBvcG92ZXItZm9udC1zaXplKTtcbiAgLy8gQWxsb3cgYnJlYWtpbmcgdmVyeSBsb25nIHdvcmRzIHNvIHRoZXkgZG9uJ3Qgb3ZlcmZsb3cgdGhlIHBvcG92ZXIncyBib3VuZHNcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcG9wb3Zlci1iZztcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiAkcG9wb3Zlci1ib3JkZXItd2lkdGggc29saWQgJHBvcG92ZXItYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRwb3BvdmVyLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRwb3BvdmVyLWJveC1zaGFkb3cpO1xuXG4gIC5hcnJvdyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAkcG9wb3Zlci1hcnJvdy13aWR0aDtcbiAgICBoZWlnaHQ6ICRwb3BvdmVyLWFycm93LWhlaWdodDtcbiAgICBtYXJnaW46IDAgJHBvcG92ZXItYm9yZGVyLXJhZGl1cztcblxuICAgICY6OmJlZm9yZSxcbiAgICAmOjphZnRlciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXBvcG92ZXItdG9wIHtcbiAgbWFyZ2luLWJvdHRvbTogJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuXG4gID4gLmFycm93IHtcbiAgICBib3R0b206IHN1YnRyYWN0KC0kcG9wb3Zlci1hcnJvdy1oZWlnaHQsICRwb3BvdmVyLWJvcmRlci13aWR0aCk7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgYm9yZGVyLXdpZHRoOiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQgKCRwb3BvdmVyLWFycm93LXdpZHRoICogLjUpIDA7XG4gICAgICBib3JkZXItdG9wLWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjtcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBib3R0b206ICRwb3BvdmVyLWJvcmRlci13aWR0aDtcbiAgICAgIGJvcmRlci13aWR0aDogJHBvcG92ZXItYXJyb3ctaGVpZ2h0ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAqIC41KSAwO1xuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJHBvcG92ZXItYXJyb3ctY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi5icy1wb3BvdmVyLXJpZ2h0IHtcbiAgbWFyZ2luLWxlZnQ6ICRwb3BvdmVyLWFycm93LWhlaWdodDtcblxuICA+IC5hcnJvdyB7XG4gICAgbGVmdDogc3VidHJhY3QoLSRwb3BvdmVyLWFycm93LWhlaWdodCwgJHBvcG92ZXItYm9yZGVyLXdpZHRoKTtcbiAgICB3aWR0aDogJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuICAgIGhlaWdodDogJHBvcG92ZXItYXJyb3ctd2lkdGg7XG4gICAgbWFyZ2luOiAkcG9wb3Zlci1ib3JkZXItcmFkaXVzIDA7IC8vIG1ha2Ugc3VyZSB0aGUgYXJyb3cgZG9lcyBub3QgdG91Y2ggdGhlIHBvcG92ZXIncyByb3VuZGVkIGNvcm5lcnNcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgYm9yZGVyLXdpZHRoOiAoJHBvcG92ZXItYXJyb3ctd2lkdGggKiAuNSkgJHBvcG92ZXItYXJyb3ctaGVpZ2h0ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAqIC41KSAwO1xuICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjtcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBsZWZ0OiAkcG9wb3Zlci1ib3JkZXItd2lkdGg7XG4gICAgICBib3JkZXItd2lkdGg6ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAqIC41KSAkcG9wb3Zlci1hcnJvdy1oZWlnaHQgKCRwb3BvdmVyLWFycm93LXdpZHRoICogLjUpIDA7XG4gICAgICBib3JkZXItcmlnaHQtY29sb3I6ICRwb3BvdmVyLWFycm93LWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtcG9wb3Zlci1ib3R0b20ge1xuICBtYXJnaW4tdG9wOiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQ7XG5cbiAgPiAuYXJyb3cge1xuICAgIHRvcDogc3VidHJhY3QoLSRwb3BvdmVyLWFycm93LWhlaWdodCwgJHBvcG92ZXItYm9yZGVyLXdpZHRoKTtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICB0b3A6IDA7XG4gICAgICBib3JkZXItd2lkdGg6IDAgKCRwb3BvdmVyLWFycm93LXdpZHRoICogLjUpICRwb3BvdmVyLWFycm93LWhlaWdodCAoJHBvcG92ZXItYXJyb3ctd2lkdGggKiAuNSk7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjtcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICB0b3A6ICRwb3BvdmVyLWJvcmRlci13aWR0aDtcbiAgICAgIGJvcmRlci13aWR0aDogMCAoJHBvcG92ZXItYXJyb3ctd2lkdGggKiAuNSkgJHBvcG92ZXItYXJyb3ctaGVpZ2h0ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAqIC41KTtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRwb3BvdmVyLWFycm93LWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC8vIFRoaXMgd2lsbCByZW1vdmUgdGhlIHBvcG92ZXItaGVhZGVyJ3MgYm9yZGVyIGp1c3QgYmVsb3cgdGhlIGFycm93XG4gIC5wb3BvdmVyLWhlYWRlcjo6YmVmb3JlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDUwJTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogJHBvcG92ZXItYXJyb3ctd2lkdGg7XG4gICAgbWFyZ2luLWxlZnQ6IC0kcG9wb3Zlci1hcnJvdy13aWR0aCAqIC41O1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgYm9yZGVyLWJvdHRvbTogJHBvcG92ZXItYm9yZGVyLXdpZHRoIHNvbGlkICRwb3BvdmVyLWhlYWRlci1iZztcbiAgfVxufVxuXG4uYnMtcG9wb3Zlci1sZWZ0IHtcbiAgbWFyZ2luLXJpZ2h0OiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQ7XG5cbiAgPiAuYXJyb3cge1xuICAgIHJpZ2h0OiBzdWJ0cmFjdCgtJHBvcG92ZXItYXJyb3ctaGVpZ2h0LCAkcG9wb3Zlci1ib3JkZXItd2lkdGgpO1xuICAgIHdpZHRoOiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQ7XG4gICAgaGVpZ2h0OiAkcG9wb3Zlci1hcnJvdy13aWR0aDtcbiAgICBtYXJnaW46ICRwb3BvdmVyLWJvcmRlci1yYWRpdXMgMDsgLy8gbWFrZSBzdXJlIHRoZSBhcnJvdyBkb2VzIG5vdCB0b3VjaCB0aGUgcG9wb3ZlcidzIHJvdW5kZWQgY29ybmVyc1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgYm9yZGVyLXdpZHRoOiAoJHBvcG92ZXItYXJyb3ctd2lkdGggKiAuNSkgMCAoJHBvcG92ZXItYXJyb3ctd2lkdGggKiAuNSkgJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yO1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIHJpZ2h0OiAkcG9wb3Zlci1ib3JkZXItd2lkdGg7XG4gICAgICBib3JkZXItd2lkdGg6ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAqIC41KSAwICgkcG9wb3Zlci1hcnJvdy13aWR0aCAqIC41KSAkcG9wb3Zlci1hcnJvdy1oZWlnaHQ7XG4gICAgICBib3JkZXItbGVmdC1jb2xvcjogJHBvcG92ZXItYXJyb3ctY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi5icy1wb3BvdmVyLWF1dG8ge1xuICAmW3gtcGxhY2VtZW50Xj1cInRvcFwiXSB7XG4gICAgQGV4dGVuZCAuYnMtcG9wb3Zlci10b3A7XG4gIH1cbiAgJlt4LXBsYWNlbWVudF49XCJyaWdodFwiXSB7XG4gICAgQGV4dGVuZCAuYnMtcG9wb3Zlci1yaWdodDtcbiAgfVxuICAmW3gtcGxhY2VtZW50Xj1cImJvdHRvbVwiXSB7XG4gICAgQGV4dGVuZCAuYnMtcG9wb3Zlci1ib3R0b207XG4gIH1cbiAgJlt4LXBsYWNlbWVudF49XCJsZWZ0XCJdIHtcbiAgICBAZXh0ZW5kIC5icy1wb3BvdmVyLWxlZnQ7XG4gIH1cbn1cblxuXG4vLyBPZmZzZXQgdGhlIHBvcG92ZXIgdG8gYWNjb3VudCBmb3IgdGhlIHBvcG92ZXIgYXJyb3dcbi5wb3BvdmVyLWhlYWRlciB7XG4gIHBhZGRpbmc6ICRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXkgJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteDtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gUmVzZXQgdGhlIGRlZmF1bHQgZnJvbSBSZWJvb3RcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmb250LXNpemUtYmFzZSk7XG4gIGNvbG9yOiAkcG9wb3Zlci1oZWFkZXItY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwb3BvdmVyLWhlYWRlci1iZztcbiAgYm9yZGVyLWJvdHRvbTogJHBvcG92ZXItYm9yZGVyLXdpZHRoIHNvbGlkIGRhcmtlbigkcG9wb3Zlci1oZWFkZXItYmcsIDUlKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJHBvcG92ZXItaW5uZXItYm9yZGVyLXJhZGl1cyk7XG5cbiAgJjplbXB0eSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4ucG9wb3Zlci1ib2R5IHtcbiAgcGFkZGluZzogJHBvcG92ZXItYm9keS1wYWRkaW5nLXkgJHBvcG92ZXItYm9keS1wYWRkaW5nLXg7XG4gIGNvbG9yOiAkcG9wb3Zlci1ib2R5LWNvbG9yO1xufVxuIiwiLy8gTm90ZXMgb24gdGhlIGNsYXNzZXM6XG4vL1xuLy8gMS4gLmNhcm91c2VsLnBvaW50ZXItZXZlbnQgc2hvdWxkIGlkZWFsbHkgYmUgcGFuLXkgKHRvIGFsbG93IGZvciB1c2VycyB0byBzY3JvbGwgdmVydGljYWxseSlcbi8vICAgIGV2ZW4gd2hlbiB0aGVpciBzY3JvbGwgYWN0aW9uIHN0YXJ0ZWQgb24gYSBjYXJvdXNlbCwgYnV0IGZvciBjb21wYXRpYmlsaXR5ICh3aXRoIEZpcmVmb3gpXG4vLyAgICB3ZSdyZSBwcmV2ZW50aW5nIGFsbCBhY3Rpb25zIGluc3RlYWRcbi8vIDIuIFRoZSAuY2Fyb3VzZWwtaXRlbS1sZWZ0IGFuZCAuY2Fyb3VzZWwtaXRlbS1yaWdodCBpcyB1c2VkIHRvIGluZGljYXRlIHdoZXJlXG4vLyAgICB0aGUgYWN0aXZlIHNsaWRlIGlzIGhlYWRpbmcuXG4vLyAzLiAuYWN0aXZlLmNhcm91c2VsLWl0ZW0gaXMgdGhlIGN1cnJlbnQgc2xpZGUuXG4vLyA0LiAuYWN0aXZlLmNhcm91c2VsLWl0ZW0tbGVmdCBhbmQgLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLXJpZ2h0IGlzIHRoZSBjdXJyZW50XG4vLyAgICBzbGlkZSBpbiBpdHMgaW4tdHJhbnNpdGlvbiBzdGF0ZS4gT25seSBvbmUgb2YgdGhlc2Ugb2NjdXJzIGF0IGEgdGltZS5cbi8vIDUuIC5jYXJvdXNlbC1pdGVtLW5leHQuY2Fyb3VzZWwtaXRlbS1sZWZ0IGFuZCAuY2Fyb3VzZWwtaXRlbS1wcmV2LmNhcm91c2VsLWl0ZW0tcmlnaHRcbi8vICAgIGlzIHRoZSB1cGNvbWluZyBzbGlkZSBpbiB0cmFuc2l0aW9uLlxuXG4uY2Fyb3VzZWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5jYXJvdXNlbC5wb2ludGVyLWV2ZW50IHtcbiAgdG91Y2gtYWN0aW9uOiBwYW4teTtcbn1cblxuLmNhcm91c2VsLWlubmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgQGluY2x1ZGUgY2xlYXJmaXgoKTtcbn1cblxuLmNhcm91c2VsLWl0ZW0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLXJpZ2h0OiAtMTAwJTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRjYXJvdXNlbC10cmFuc2l0aW9uKTtcbn1cblxuLmNhcm91c2VsLWl0ZW0uYWN0aXZlLFxuLmNhcm91c2VsLWl0ZW0tbmV4dCxcbi5jYXJvdXNlbC1pdGVtLXByZXYge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmNhcm91c2VsLWl0ZW0tbmV4dDpub3QoLmNhcm91c2VsLWl0ZW0tbGVmdCksXG4uYWN0aXZlLmNhcm91c2VsLWl0ZW0tcmlnaHQge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XG59XG5cbi5jYXJvdXNlbC1pdGVtLXByZXY6bm90KC5jYXJvdXNlbC1pdGVtLXJpZ2h0KSxcbi5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1sZWZ0IHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcbn1cblxuXG4vL1xuLy8gQWx0ZXJuYXRlIHRyYW5zaXRpb25zXG4vL1xuXG4uY2Fyb3VzZWwtZmFkZSB7XG4gIC5jYXJvdXNlbC1pdGVtIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHk7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG5cbiAgLmNhcm91c2VsLWl0ZW0uYWN0aXZlLFxuICAuY2Fyb3VzZWwtaXRlbS1uZXh0LmNhcm91c2VsLWl0ZW0tbGVmdCxcbiAgLmNhcm91c2VsLWl0ZW0tcHJldi5jYXJvdXNlbC1pdGVtLXJpZ2h0IHtcbiAgICB6LWluZGV4OiAxO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAuYWN0aXZlLmNhcm91c2VsLWl0ZW0tbGVmdCxcbiAgLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLXJpZ2h0IHtcbiAgICB6LWluZGV4OiAwO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbihvcGFjaXR5IDBzICRjYXJvdXNlbC10cmFuc2l0aW9uLWR1cmF0aW9uKTtcbiAgfVxufVxuXG5cbi8vXG4vLyBMZWZ0L3JpZ2h0IGNvbnRyb2xzIGZvciBuYXZcbi8vXG5cbi5jYXJvdXNlbC1jb250cm9sLXByZXYsXG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgei1pbmRleDogMTtcbiAgLy8gVXNlIGZsZXggZm9yIGFsaWdubWVudCAoMS0zKVxuICBkaXNwbGF5OiBmbGV4OyAvLyAxLiBhbGxvdyBmbGV4IHN0eWxlc1xuICBhbGlnbi1pdGVtczogY2VudGVyOyAvLyAyLiB2ZXJ0aWNhbGx5IGNlbnRlciBjb250ZW50c1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgLy8gMy4gaG9yaXpvbnRhbGx5IGNlbnRlciBjb250ZW50c1xuICB3aWR0aDogJGNhcm91c2VsLWNvbnRyb2wtd2lkdGg7XG4gIHBhZGRpbmc6IDA7XG4gIGNvbG9yOiAkY2Fyb3VzZWwtY29udHJvbC1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBib3JkZXI6IDA7XG4gIG9wYWNpdHk6ICRjYXJvdXNlbC1jb250cm9sLW9wYWNpdHk7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGNhcm91c2VsLWNvbnRyb2wtdHJhbnNpdGlvbik7XG5cbiAgLy8gSG92ZXIvZm9jdXMgc3RhdGVcbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgY29sb3I6ICRjYXJvdXNlbC1jb250cm9sLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBvdXRsaW5lOiAwO1xuICAgIG9wYWNpdHk6ICRjYXJvdXNlbC1jb250cm9sLWhvdmVyLW9wYWNpdHk7XG4gIH1cbn1cbi5jYXJvdXNlbC1jb250cm9sLXByZXYge1xuICBsZWZ0OiAwO1xuICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgcmdiYSgkYmxhY2ssIC4yNSksIHJnYmEoJGJsYWNrLCAuMDAxKSk7XG4gIH1cbn1cbi5jYXJvdXNlbC1jb250cm9sLW5leHQge1xuICByaWdodDogMDtcbiAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoMjcwZGVnLCByZ2JhKCRibGFjaywgLjI1KSwgcmdiYSgkYmxhY2ssIC4wMDEpKTtcbiAgfVxufVxuXG4vLyBJY29ucyBmb3Igd2l0aGluXG4uY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24sXG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAkY2Fyb3VzZWwtY29udHJvbC1pY29uLXdpZHRoO1xuICBoZWlnaHQ6ICRjYXJvdXNlbC1jb250cm9sLWljb24td2lkdGg7XG4gIGJhY2tncm91bmQ6IDUwJSAvIDEwMCUgMTAwJSBuby1yZXBlYXQ7XG59XG4uY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRjYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbi1iZyk7XG59XG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRjYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbi1iZyk7XG59XG5cblxuLy8gT3B0aW9uYWwgaW5kaWNhdG9yIHBpcHNcbi8vXG4vLyBBZGQgYW4gb3JkZXJlZCBsaXN0IHdpdGggdGhlIGZvbGxvd2luZyBjbGFzcyBhbmQgYWRkIGEgbGlzdCBpdGVtIGZvciBlYWNoXG4vLyBzbGlkZSB5b3VyIGNhcm91c2VsIGhvbGRzLlxuXG4uY2Fyb3VzZWwtaW5kaWNhdG9ycyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMTU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBwYWRkaW5nLWxlZnQ6IDA7IC8vIG92ZXJyaWRlIDxvbD4gZGVmYXVsdFxuICAvLyBVc2UgdGhlIC5jYXJvdXNlbC1jb250cm9sJ3Mgd2lkdGggYXMgbWFyZ2luIHNvIHdlIGRvbid0IG92ZXJsYXkgdGhvc2VcbiAgbWFyZ2luLXJpZ2h0OiAkY2Fyb3VzZWwtY29udHJvbC13aWR0aDtcbiAgbWFyZ2luLWxlZnQ6ICRjYXJvdXNlbC1jb250cm9sLXdpZHRoO1xuICBsaXN0LXN0eWxlOiBub25lO1xuXG4gIGxpIHtcbiAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgICBmbGV4OiAwIDEgYXV0bztcbiAgICB3aWR0aDogJGNhcm91c2VsLWluZGljYXRvci13aWR0aDtcbiAgICBoZWlnaHQ6ICRjYXJvdXNlbC1pbmRpY2F0b3ItaGVpZ2h0O1xuICAgIG1hcmdpbi1yaWdodDogJGNhcm91c2VsLWluZGljYXRvci1zcGFjZXI7XG4gICAgbWFyZ2luLWxlZnQ6ICRjYXJvdXNlbC1pbmRpY2F0b3Itc3BhY2VyO1xuICAgIHRleHQtaW5kZW50OiAtOTk5cHg7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjYXJvdXNlbC1pbmRpY2F0b3ItYWN0aXZlLWJnO1xuICAgIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gICAgLy8gVXNlIHRyYW5zcGFyZW50IGJvcmRlcnMgdG8gaW5jcmVhc2UgdGhlIGhpdCBhcmVhIGJ5IDEwcHggb24gdG9wIGFuZCBib3R0b20uXG4gICAgYm9yZGVyLXRvcDogJGNhcm91c2VsLWluZGljYXRvci1oaXQtYXJlYS1oZWlnaHQgc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWJvdHRvbTogJGNhcm91c2VsLWluZGljYXRvci1oaXQtYXJlYS1oZWlnaHQgc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgb3BhY2l0eTogLjU7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkY2Fyb3VzZWwtaW5kaWNhdG9yLXRyYW5zaXRpb24pO1xuICB9XG5cbiAgLmFjdGl2ZSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG5cbi8vIE9wdGlvbmFsIGNhcHRpb25zXG4vL1xuLy9cblxuLmNhcm91c2VsLWNhcHRpb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAoMTAwJSAtICRjYXJvdXNlbC1jYXB0aW9uLXdpZHRoKSAqIC41O1xuICBib3R0b206IDIwcHg7XG4gIGxlZnQ6ICgxMDAlIC0gJGNhcm91c2VsLWNhcHRpb24td2lkdGgpICogLjU7XG4gIHotaW5kZXg6IDEwO1xuICBwYWRkaW5nLXRvcDogMjBweDtcbiAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gIGNvbG9yOiAkY2Fyb3VzZWwtY2FwdGlvbi1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuIiwiQG1peGluIGNsZWFyZml4KCkge1xuICAmOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgY29udGVudDogXCJcIjtcbiAgfVxufVxuIiwiLy9cbi8vIFJvdGF0aW5nIGJvcmRlclxuLy9cblxuQGtleWZyYW1lcyBzcGlubmVyLWJvcmRlciB7XG4gIHRvIHsgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTsgfVxufVxuXG4uc3Bpbm5lci1ib3JkZXIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAkc3Bpbm5lci13aWR0aDtcbiAgaGVpZ2h0OiAkc3Bpbm5lci1oZWlnaHQ7XG4gIHZlcnRpY2FsLWFsaWduOiAkc3Bpbm5lci12ZXJ0aWNhbC1hbGlnbjtcbiAgYm9yZGVyOiAkc3Bpbm5lci1ib3JkZXItd2lkdGggc29saWQgY3VycmVudGNvbG9yO1xuICBib3JkZXItcmlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgYW5pbWF0aW9uOiAuNzVzIGxpbmVhciBpbmZpbml0ZSBzcGlubmVyLWJvcmRlcjtcbn1cblxuLnNwaW5uZXItYm9yZGVyLXNtIHtcbiAgd2lkdGg6ICRzcGlubmVyLXdpZHRoLXNtO1xuICBoZWlnaHQ6ICRzcGlubmVyLWhlaWdodC1zbTtcbiAgYm9yZGVyLXdpZHRoOiAkc3Bpbm5lci1ib3JkZXItd2lkdGgtc207XG59XG5cbi8vXG4vLyBHcm93aW5nIGNpcmNsZVxuLy9cblxuQGtleWZyYW1lcyBzcGlubmVyLWdyb3cge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgfVxuICA1MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG59XG5cbi5zcGlubmVyLWdyb3cge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAkc3Bpbm5lci13aWR0aDtcbiAgaGVpZ2h0OiAkc3Bpbm5lci1oZWlnaHQ7XG4gIHZlcnRpY2FsLWFsaWduOiAkc3Bpbm5lci12ZXJ0aWNhbC1hbGlnbjtcbiAgYmFja2dyb3VuZC1jb2xvcjogY3VycmVudGNvbG9yO1xuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgb3BhY2l0eTogMDtcbiAgYW5pbWF0aW9uOiAuNzVzIGxpbmVhciBpbmZpbml0ZSBzcGlubmVyLWdyb3c7XG59XG5cbi5zcGlubmVyLWdyb3ctc20ge1xuICB3aWR0aDogJHNwaW5uZXItd2lkdGgtc207XG4gIGhlaWdodDogJHNwaW5uZXItaGVpZ2h0LXNtO1xufVxuXG5AaWYgJGVuYWJsZS1wcmVmZXJzLXJlZHVjZWQtbW90aW9uLW1lZGlhLXF1ZXJ5IHtcbiAgQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgICAuc3Bpbm5lci1ib3JkZXIsXG4gICAgLnNwaW5uZXItZ3JvdyB7XG4gICAgICBhbmltYXRpb24tZHVyYXRpb246IDEuNXM7XG4gICAgfVxuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLmFsaWduLWJhc2VsaW5lICAgIHsgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lICFpbXBvcnRhbnQ7IH0gLy8gQnJvd3NlciBkZWZhdWx0XG4uYWxpZ24tdG9wICAgICAgICAgeyB2ZXJ0aWNhbC1hbGlnbjogdG9wICFpbXBvcnRhbnQ7IH1cbi5hbGlnbi1taWRkbGUgICAgICB7IHZlcnRpY2FsLWFsaWduOiBtaWRkbGUgIWltcG9ydGFudDsgfVxuLmFsaWduLWJvdHRvbSAgICAgIHsgdmVydGljYWwtYWxpZ246IGJvdHRvbSAhaW1wb3J0YW50OyB9XG4uYWxpZ24tdGV4dC1ib3R0b20geyB2ZXJ0aWNhbC1hbGlnbjogdGV4dC1ib3R0b20gIWltcG9ydGFudDsgfVxuLmFsaWduLXRleHQtdG9wICAgIHsgdmVydGljYWwtYWxpZ246IHRleHQtdG9wICFpbXBvcnRhbnQ7IH1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vLyBDb250ZXh0dWFsIGJhY2tncm91bmRzXG5cbkBtaXhpbiBiZy12YXJpYW50KCRwYXJlbnQsICRjb2xvciwgJGlnbm9yZS13YXJuaW5nOiBmYWxzZSkge1xuICAjeyRwYXJlbnR9IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3IgIWltcG9ydGFudDtcbiAgfVxuICBhI3skcGFyZW50fSxcbiAgYnV0dG9uI3skcGFyZW50fSB7XG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGNvbG9yLCAxMCUpICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG4gIEBpbmNsdWRlIGRlcHJlY2F0ZShcIlRoZSBgYmctdmFyaWFudGAgbWl4aW5cIiwgXCJ2NC40LjBcIiwgXCJ2NVwiLCAkaWdub3JlLXdhcm5pbmcpO1xufVxuXG5AbWl4aW4gYmctZ3JhZGllbnQtdmFyaWFudCgkcGFyZW50LCAkY29sb3IsICRpZ25vcmUtd2FybmluZzogZmFsc2UpIHtcbiAgI3skcGFyZW50fSB7XG4gICAgYmFja2dyb3VuZDogJGNvbG9yIGxpbmVhci1ncmFkaWVudCgxODBkZWcsIG1peCgkYm9keS1iZywgJGNvbG9yLCAxNSUpLCAkY29sb3IpIHJlcGVhdC14ICFpbXBvcnRhbnQ7XG4gIH1cbiAgQGluY2x1ZGUgZGVwcmVjYXRlKFwiVGhlIGBiZy1ncmFkaWVudC12YXJpYW50YCBtaXhpblwiLCBcInY0LjUuMFwiLCBcInY1XCIsICRpZ25vcmUtd2FybmluZyk7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIEBpbmNsdWRlIGJnLXZhcmlhbnQoXCIuYmctI3skY29sb3J9XCIsICR2YWx1ZSwgdHJ1ZSk7XG59XG5cbkBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAgIEBpbmNsdWRlIGJnLWdyYWRpZW50LXZhcmlhbnQoXCIuYmctZ3JhZGllbnQtI3skY29sb3J9XCIsICR2YWx1ZSwgdHJ1ZSk7XG4gIH1cbn1cblxuLmJnLXdoaXRlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XG59XG5cbi5iZy10cmFuc3BhcmVudCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3QsIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vL1xuLy8gQm9yZGVyXG4vL1xuXG4uYm9yZGVyICAgICAgICAgeyBib3JkZXI6ICRib3JkZXItd2lkdGggc29saWQgJGJvcmRlci1jb2xvciAhaW1wb3J0YW50OyB9XG4uYm9yZGVyLXRvcCAgICAgeyBib3JkZXItdG9wOiAkYm9yZGVyLXdpZHRoIHNvbGlkICRib3JkZXItY29sb3IgIWltcG9ydGFudDsgfVxuLmJvcmRlci1yaWdodCAgIHsgYm9yZGVyLXJpZ2h0OiAkYm9yZGVyLXdpZHRoIHNvbGlkICRib3JkZXItY29sb3IgIWltcG9ydGFudDsgfVxuLmJvcmRlci1ib3R0b20gIHsgYm9yZGVyLWJvdHRvbTogJGJvcmRlci13aWR0aCBzb2xpZCAkYm9yZGVyLWNvbG9yICFpbXBvcnRhbnQ7IH1cbi5ib3JkZXItbGVmdCAgICB7IGJvcmRlci1sZWZ0OiAkYm9yZGVyLXdpZHRoIHNvbGlkICRib3JkZXItY29sb3IgIWltcG9ydGFudDsgfVxuXG4uYm9yZGVyLTAgICAgICAgIHsgYm9yZGVyOiAwICFpbXBvcnRhbnQ7IH1cbi5ib3JkZXItdG9wLTAgICAgeyBib3JkZXItdG9wOiAwICFpbXBvcnRhbnQ7IH1cbi5ib3JkZXItcmlnaHQtMCAgeyBib3JkZXItcmlnaHQ6IDAgIWltcG9ydGFudDsgfVxuLmJvcmRlci1ib3R0b20tMCB7IGJvcmRlci1ib3R0b206IDAgIWltcG9ydGFudDsgfVxuLmJvcmRlci1sZWZ0LTAgICB7IGJvcmRlci1sZWZ0OiAwICFpbXBvcnRhbnQ7IH1cblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIC5ib3JkZXItI3skY29sb3J9IHtcbiAgICBib3JkZXItY29sb3I6ICR2YWx1ZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5ib3JkZXItd2hpdGUge1xuICBib3JkZXItY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xufVxuXG4vL1xuLy8gQm9yZGVyLXJhZGl1c1xuLy9cblxuLnJvdW5kZWQtc20ge1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1zbSAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZCB7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLXRvcCB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC1yaWdodCB7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtYm90dG9tIHtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLWxlZnQge1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC1sZyB7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWxnICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLWNpcmNsZSB7XG4gIGJvcmRlci1yYWRpdXM6IDUwJSAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC1waWxsIHtcbiAgYm9yZGVyLXJhZGl1czogJHJvdW5kZWQtcGlsbCAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC0wIHtcbiAgYm9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50O1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vXG4vLyBVdGlsaXRpZXMgZm9yIGNvbW1vbiBgZGlzcGxheWAgdmFsdWVzXG4vL1xuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICBAZWFjaCAkdmFsdWUgaW4gJGRpc3BsYXlzIHtcbiAgICAgIC5kI3skaW5maXh9LSN7JHZhbHVlfSB7IGRpc3BsYXk6ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG4gICAgfVxuICB9XG59XG5cblxuLy9cbi8vIFV0aWxpdGllcyBmb3IgdG9nZ2xpbmcgYGRpc3BsYXlgIGluIHByaW50XG4vL1xuXG5AbWVkaWEgcHJpbnQge1xuICBAZWFjaCAkdmFsdWUgaW4gJGRpc3BsYXlzIHtcbiAgICAuZC1wcmludC0jeyR2YWx1ZX0geyBkaXNwbGF5OiAkdmFsdWUgIWltcG9ydGFudDsgfVxuICB9XG59XG4iLCIvLyBDcmVkaXQ6IE5pY29sYXMgR2FsbGFnaGVyIGFuZCBTVUlUIENTUy5cblxuLmVtYmVkLXJlc3BvbnNpdmUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAmOjpiZWZvcmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gIH1cblxuICAuZW1iZWQtcmVzcG9uc2l2ZS1pdGVtLFxuICBpZnJhbWUsXG4gIGVtYmVkLFxuICBvYmplY3QsXG4gIHZpZGVvIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBib3JkZXI6IDA7XG4gIH1cbn1cblxuQGVhY2ggJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvIGluICRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpb3Mge1xuICAkZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW8teDogbnRoKCRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpbywgMSk7XG4gICRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpby15OiBudGgoJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvLCAyKTtcblxuICAuZW1iZWQtcmVzcG9uc2l2ZS0jeyRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpby14fWJ5I3skZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW8teX0ge1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBwYWRkaW5nLXRvcDogcGVyY2VudGFnZShkaXZpZGUoJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvLXksICRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpby14KSk7XG4gICAgfVxuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy8gRmxleCB2YXJpYXRpb25cbi8vXG4vLyBDdXN0b20gc3R5bGVzIGZvciBhZGRpdGlvbmFsIGZsZXggYWxpZ25tZW50IG9wdGlvbnMuXG5cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIC5mbGV4I3skaW5maXh9LXJvdyAgICAgICAgICAgIHsgZmxleC1kaXJlY3Rpb246IHJvdyAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tY29sdW1uICAgICAgICAgeyBmbGV4LWRpcmVjdGlvbjogY29sdW1uICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1yb3ctcmV2ZXJzZSAgICB7IGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZSAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tY29sdW1uLXJldmVyc2UgeyBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2UgIWltcG9ydGFudDsgfVxuXG4gICAgLmZsZXgjeyRpbmZpeH0td3JhcCAgICAgICAgIHsgZmxleC13cmFwOiB3cmFwICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1ub3dyYXAgICAgICAgeyBmbGV4LXdyYXA6IG5vd3JhcCAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0td3JhcC1yZXZlcnNlIHsgZmxleC13cmFwOiB3cmFwLXJldmVyc2UgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LWZpbGwgICAgICAgICB7IGZsZXg6IDEgMSBhdXRvICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1ncm93LTAgICAgICAgeyBmbGV4LWdyb3c6IDAgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LWdyb3ctMSAgICAgICB7IGZsZXgtZ3JvdzogMSAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tc2hyaW5rLTAgICAgIHsgZmxleC1zaHJpbms6IDAgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LXNocmluay0xICAgICB7IGZsZXgtc2hyaW5rOiAxICFpbXBvcnRhbnQ7IH1cblxuICAgIC5qdXN0aWZ5LWNvbnRlbnQjeyRpbmZpeH0tc3RhcnQgICB7IGp1c3RpZnktY29udGVudDogZmxleC1zdGFydCAhaW1wb3J0YW50OyB9XG4gICAgLmp1c3RpZnktY29udGVudCN7JGluZml4fS1lbmQgICAgIHsganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZCAhaW1wb3J0YW50OyB9XG4gICAgLmp1c3RpZnktY29udGVudCN7JGluZml4fS1jZW50ZXIgIHsganVzdGlmeS1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDsgfVxuICAgIC5qdXN0aWZ5LWNvbnRlbnQjeyRpbmZpeH0tYmV0d2VlbiB7IGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbiAhaW1wb3J0YW50OyB9XG4gICAgLmp1c3RpZnktY29udGVudCN7JGluZml4fS1hcm91bmQgIHsganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQgIWltcG9ydGFudDsgfVxuXG4gICAgLmFsaWduLWl0ZW1zI3skaW5maXh9LXN0YXJ0ICAgIHsgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1pdGVtcyN7JGluZml4fS1lbmQgICAgICB7IGFsaWduLWl0ZW1zOiBmbGV4LWVuZCAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWl0ZW1zI3skaW5maXh9LWNlbnRlciAgIHsgYWxpZ24taXRlbXM6IGNlbnRlciAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWl0ZW1zI3skaW5maXh9LWJhc2VsaW5lIHsgYWxpZ24taXRlbXM6IGJhc2VsaW5lICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24taXRlbXMjeyRpbmZpeH0tc3RyZXRjaCAgeyBhbGlnbi1pdGVtczogc3RyZXRjaCAhaW1wb3J0YW50OyB9XG5cbiAgICAuYWxpZ24tY29udGVudCN7JGluZml4fS1zdGFydCAgIHsgYWxpZ24tY29udGVudDogZmxleC1zdGFydCAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWNvbnRlbnQjeyRpbmZpeH0tZW5kICAgICB7IGFsaWduLWNvbnRlbnQ6IGZsZXgtZW5kICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tY29udGVudCN7JGluZml4fS1jZW50ZXIgIHsgYWxpZ24tY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tY29udGVudCN7JGluZml4fS1iZXR3ZWVuIHsgYWxpZ24tY29udGVudDogc3BhY2UtYmV0d2VlbiAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWNvbnRlbnQjeyRpbmZpeH0tYXJvdW5kICB7IGFsaWduLWNvbnRlbnQ6IHNwYWNlLWFyb3VuZCAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWNvbnRlbnQjeyRpbmZpeH0tc3RyZXRjaCB7IGFsaWduLWNvbnRlbnQ6IHN0cmV0Y2ggIWltcG9ydGFudDsgfVxuXG4gICAgLmFsaWduLXNlbGYjeyRpbmZpeH0tYXV0byAgICAgeyBhbGlnbi1zZWxmOiBhdXRvICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tc2VsZiN7JGluZml4fS1zdGFydCAgICB7IGFsaWduLXNlbGY6IGZsZXgtc3RhcnQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1zZWxmI3skaW5maXh9LWVuZCAgICAgIHsgYWxpZ24tc2VsZjogZmxleC1lbmQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1zZWxmI3skaW5maXh9LWNlbnRlciAgIHsgYWxpZ24tc2VsZjogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tc2VsZiN7JGluZml4fS1iYXNlbGluZSB7IGFsaWduLXNlbGY6IGJhc2VsaW5lICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tc2VsZiN7JGluZml4fS1zdHJldGNoICB7IGFsaWduLXNlbGY6IHN0cmV0Y2ggIWltcG9ydGFudDsgfVxuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgLmZsb2F0I3skaW5maXh9LWxlZnQgIHsgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDsgfVxuICAgIC5mbG9hdCN7JGluZml4fS1yaWdodCB7IGZsb2F0OiByaWdodCAhaW1wb3J0YW50OyB9XG4gICAgLmZsb2F0I3skaW5maXh9LW5vbmUgIHsgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDsgfVxuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuQGVhY2ggJHZhbHVlIGluICR1c2VyLXNlbGVjdHMge1xuICAudXNlci1zZWxlY3QtI3skdmFsdWV9IHsgdXNlci1zZWxlY3Q6ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuQGVhY2ggJHZhbHVlIGluICRvdmVyZmxvd3Mge1xuICAub3ZlcmZsb3ctI3skdmFsdWV9IHsgb3ZlcmZsb3c6ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy8gQ29tbW9uIHZhbHVlc1xuQGVhY2ggJHBvc2l0aW9uIGluICRwb3NpdGlvbnMge1xuICAucG9zaXRpb24tI3skcG9zaXRpb259IHsgcG9zaXRpb246ICRwb3NpdGlvbiAhaW1wb3J0YW50OyB9XG59XG5cbi8vIFNob3J0aGFuZFxuXG4uZml4ZWQtdG9wIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4LWZpeGVkO1xufVxuXG4uZml4ZWQtYm90dG9tIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4LWZpeGVkO1xufVxuXG4uc3RpY2t5LXRvcCB7XG4gIEBzdXBwb3J0cyAocG9zaXRpb246IHN0aWNreSkge1xuICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgdG9wOiAwO1xuICAgIHotaW5kZXg6ICR6aW5kZXgtc3RpY2t5O1xuICB9XG59XG4iLCIvL1xuLy8gU2NyZWVucmVhZGVyc1xuLy9cblxuLnNyLW9ubHkge1xuICBAaW5jbHVkZSBzci1vbmx5KCk7XG59XG5cbi5zci1vbmx5LWZvY3VzYWJsZSB7XG4gIEBpbmNsdWRlIHNyLW9ubHktZm9jdXNhYmxlKCk7XG59XG4iLCIvLyBPbmx5IGRpc3BsYXkgY29udGVudCB0byBzY3JlZW4gcmVhZGVyc1xuLy9cbi8vIFNlZTogaHR0cHM6Ly93d3cuYTExeXByb2plY3QuY29tL3Bvc3RzLzIwMTMtMDEtMTEtaG93LXRvLWhpZGUtY29udGVudC9cbi8vIFNlZTogaHR0cHM6Ly9raXR0eWdpcmF1ZGVsLmNvbS8yMDE2LzEwLzEzL2Nzcy1oaWRlLWFuZC1zZWVrL1xuXG5AbWl4aW4gc3Itb25seSgpIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAtMXB4OyAvLyBGaXggZm9yIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjU2ODZcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYm9yZGVyOiAwO1xufVxuXG4vLyBVc2UgaW4gY29uanVuY3Rpb24gd2l0aCAuc3Itb25seSB0byBvbmx5IGRpc3BsYXkgY29udGVudCB3aGVuIGl0J3MgZm9jdXNlZC5cbi8vXG4vLyBVc2VmdWwgZm9yIFwiU2tpcCB0byBtYWluIGNvbnRlbnRcIiBsaW5rczsgc2VlIGh0dHBzOi8vd3d3LnczLm9yZy9UUi8yMDEzL05PVEUtV0NBRzIwLVRFQ0hTLTIwMTMwOTA1L0cxXG4vL1xuLy8gQ3JlZGl0OiBIVE1MNSBCb2lsZXJwbGF0ZVxuXG5AbWl4aW4gc3Itb25seS1mb2N1c2FibGUoKSB7XG4gICY6YWN0aXZlLFxuICAmOmZvY3VzIHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICBjbGlwOiBhdXRvO1xuICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4uc2hhZG93LXNtIHsgYm94LXNoYWRvdzogJGJveC1zaGFkb3ctc20gIWltcG9ydGFudDsgfVxuLnNoYWRvdyB7IGJveC1zaGFkb3c6ICRib3gtc2hhZG93ICFpbXBvcnRhbnQ7IH1cbi5zaGFkb3ctbGcgeyBib3gtc2hhZG93OiAkYm94LXNoYWRvdy1sZyAhaW1wb3J0YW50OyB9XG4uc2hhZG93LW5vbmUgeyBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7IH1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vLyBXaWR0aCBhbmQgaGVpZ2h0XG5cbkBlYWNoICRwcm9wLCAkYWJicmV2IGluICh3aWR0aDogdywgaGVpZ2h0OiBoKSB7XG4gIEBlYWNoICRzaXplLCAkbGVuZ3RoIGluICRzaXplcyB7XG4gICAgLiN7JGFiYnJldn0tI3skc2l6ZX0geyAjeyRwcm9wfTogJGxlbmd0aCAhaW1wb3J0YW50OyB9XG4gIH1cbn1cblxuLm13LTEwMCB7IG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50OyB9XG4ubWgtMTAwIHsgbWF4LWhlaWdodDogMTAwJSAhaW1wb3J0YW50OyB9XG5cbi8vIFZpZXdwb3J0IGFkZGl0aW9uYWwgaGVscGVyc1xuXG4ubWluLXZ3LTEwMCB7IG1pbi13aWR0aDogMTAwdncgIWltcG9ydGFudDsgfVxuLm1pbi12aC0xMDAgeyBtaW4taGVpZ2h0OiAxMDB2aCAhaW1wb3J0YW50OyB9XG5cbi52dy0xMDAgeyB3aWR0aDogMTAwdncgIWltcG9ydGFudDsgfVxuLnZoLTEwMCB7IGhlaWdodDogMTAwdmggIWltcG9ydGFudDsgfVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIE1hcmdpbiBhbmQgUGFkZGluZ1xuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICBAZWFjaCAkcHJvcCwgJGFiYnJldiBpbiAobWFyZ2luOiBtLCBwYWRkaW5nOiBwKSB7XG4gICAgICBAZWFjaCAkc2l6ZSwgJGxlbmd0aCBpbiAkc3BhY2VycyB7XG4gICAgICAgIC4jeyRhYmJyZXZ9I3skaW5maXh9LSN7JHNpemV9IHsgI3skcHJvcH06ICRsZW5ndGggIWltcG9ydGFudDsgfVxuICAgICAgICAuI3skYWJicmV2fXQjeyRpbmZpeH0tI3skc2l6ZX0sXG4gICAgICAgIC4jeyRhYmJyZXZ9eSN7JGluZml4fS0jeyRzaXplfSB7XG4gICAgICAgICAgI3skcHJvcH0tdG9wOiAkbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLiN7JGFiYnJldn1yI3skaW5maXh9LSN7JHNpemV9LFxuICAgICAgICAuI3skYWJicmV2fXgjeyRpbmZpeH0tI3skc2l6ZX0ge1xuICAgICAgICAgICN7JHByb3B9LXJpZ2h0OiAkbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLiN7JGFiYnJldn1iI3skaW5maXh9LSN7JHNpemV9LFxuICAgICAgICAuI3skYWJicmV2fXkjeyRpbmZpeH0tI3skc2l6ZX0ge1xuICAgICAgICAgICN7JHByb3B9LWJvdHRvbTogJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIC4jeyRhYmJyZXZ9bCN7JGluZml4fS0jeyRzaXplfSxcbiAgICAgICAgLiN7JGFiYnJldn14I3skaW5maXh9LSN7JHNpemV9IHtcbiAgICAgICAgICAjeyRwcm9wfS1sZWZ0OiAkbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBOZWdhdGl2ZSBtYXJnaW5zIChlLmcuLCB3aGVyZSBgLm1iLW4xYCBpcyBuZWdhdGl2ZSB2ZXJzaW9uIG9mIGAubWItMWApXG4gICAgQGVhY2ggJHNpemUsICRsZW5ndGggaW4gJHNwYWNlcnMge1xuICAgICAgQGlmIFwiI3skc2l6ZX1cIiAhPSBcIjBcIiB7XG4gICAgICAgIC5tI3skaW5maXh9LW4jeyRzaXplfSB7IG1hcmdpbjogLSRsZW5ndGggIWltcG9ydGFudDsgfVxuICAgICAgICAubXQjeyRpbmZpeH0tbiN7JHNpemV9LFxuICAgICAgICAubXkjeyRpbmZpeH0tbiN7JHNpemV9IHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAtJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIC5tciN7JGluZml4fS1uI3skc2l6ZX0sXG4gICAgICAgIC5teCN7JGluZml4fS1uI3skc2l6ZX0ge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogLSRsZW5ndGggIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICAubWIjeyRpbmZpeH0tbiN7JHNpemV9LFxuICAgICAgICAubXkjeyRpbmZpeH0tbiN7JHNpemV9IHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAtJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIC5tbCN7JGluZml4fS1uI3skc2l6ZX0sXG4gICAgICAgIC5teCN7JGluZml4fS1uI3skc2l6ZX0ge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gU29tZSBzcGVjaWFsIG1hcmdpbiB1dGlsc1xuICAgIC5tI3skaW5maXh9LWF1dG8geyBtYXJnaW46IGF1dG8gIWltcG9ydGFudDsgfVxuICAgIC5tdCN7JGluZml4fS1hdXRvLFxuICAgIC5teSN7JGluZml4fS1hdXRvIHtcbiAgICAgIG1hcmdpbi10b3A6IGF1dG8gIWltcG9ydGFudDtcbiAgICB9XG4gICAgLm1yI3skaW5maXh9LWF1dG8sXG4gICAgLm14I3skaW5maXh9LWF1dG8ge1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5tYiN7JGluZml4fS1hdXRvLFxuICAgIC5teSN7JGluZml4fS1hdXRvIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IGF1dG8gIWltcG9ydGFudDtcbiAgICB9XG4gICAgLm1sI3skaW5maXh9LWF1dG8sXG4gICAgLm14I3skaW5maXh9LWF1dG8ge1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vXG4vLyBTdHJldGNoZWQgbGlua1xuLy9cblxuLnN0cmV0Y2hlZC1saW5rIHtcbiAgJjo6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogMTtcbiAgICAvLyBKdXN0IGluIGNhc2UgYHBvaW50ZXItZXZlbnRzOiBub25lYCBpcyBzZXQgb24gYSBwYXJlbnRcbiAgICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIC8vIElFMTAgYnVnZml4LCBzZWUgaHR0cHM6Ly9zdGFja292ZXJmbG93LmNvbS9xdWVzdGlvbnMvMTY5NDc5NjcvaWUxMC1ob3Zlci1wc2V1ZG8tY2xhc3MtZG9lc250LXdvcmstd2l0aG91dC1iYWNrZ3JvdW5kLWNvbG9yXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwKTtcbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vXG4vLyBUZXh0XG4vL1xuXG4udGV4dC1tb25vc3BhY2UgeyBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZSAhaW1wb3J0YW50OyB9XG5cbi8vIEFsaWdubWVudFxuXG4udGV4dC1qdXN0aWZ5ICB7IHRleHQtYWxpZ246IGp1c3RpZnkgIWltcG9ydGFudDsgfVxuLnRleHQtd3JhcCAgICAgeyB3aGl0ZS1zcGFjZTogbm9ybWFsICFpbXBvcnRhbnQ7IH1cbi50ZXh0LW5vd3JhcCAgIHsgd2hpdGUtc3BhY2U6IG5vd3JhcCAhaW1wb3J0YW50OyB9XG4udGV4dC10cnVuY2F0ZSB7IEBpbmNsdWRlIHRleHQtdHJ1bmNhdGUoKTsgfVxuXG4vLyBSZXNwb25zaXZlIGFsaWdubWVudFxuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAudGV4dCN7JGluZml4fS1sZWZ0ICAgeyB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7IH1cbiAgICAudGV4dCN7JGluZml4fS1yaWdodCAgeyB0ZXh0LWFsaWduOiByaWdodCAhaW1wb3J0YW50OyB9XG4gICAgLnRleHQjeyRpbmZpeH0tY2VudGVyIHsgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgfVxufVxuXG4vLyBUcmFuc2Zvcm1hdGlvblxuXG4udGV4dC1sb3dlcmNhc2UgIHsgdGV4dC10cmFuc2Zvcm06IGxvd2VyY2FzZSAhaW1wb3J0YW50OyB9XG4udGV4dC11cHBlcmNhc2UgIHsgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZSAhaW1wb3J0YW50OyB9XG4udGV4dC1jYXBpdGFsaXplIHsgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemUgIWltcG9ydGFudDsgfVxuXG4vLyBXZWlnaHQgYW5kIGl0YWxpY3NcblxuLmZvbnQtd2VpZ2h0LWxpZ2h0ICAgeyBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWxpZ2h0ICFpbXBvcnRhbnQ7IH1cbi5mb250LXdlaWdodC1saWdodGVyIHsgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1saWdodGVyICFpbXBvcnRhbnQ7IH1cbi5mb250LXdlaWdodC1ub3JtYWwgIHsgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWwgIWltcG9ydGFudDsgfVxuLmZvbnQtd2VpZ2h0LWJvbGQgICAgeyBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQgIWltcG9ydGFudDsgfVxuLmZvbnQtd2VpZ2h0LWJvbGRlciAgeyBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGRlciAhaW1wb3J0YW50OyB9XG4uZm9udC1pdGFsaWMgICAgICAgICB7IGZvbnQtc3R5bGU6IGl0YWxpYyAhaW1wb3J0YW50OyB9XG5cbi8vIENvbnRleHR1YWwgY29sb3JzXG5cbi50ZXh0LXdoaXRlIHsgY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50OyB9XG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICBAaW5jbHVkZSB0ZXh0LWVtcGhhc2lzLXZhcmlhbnQoXCIudGV4dC0jeyRjb2xvcn1cIiwgJHZhbHVlLCB0cnVlKTtcbn1cblxuLnRleHQtYm9keSB7IGNvbG9yOiAkYm9keS1jb2xvciAhaW1wb3J0YW50OyB9XG4udGV4dC1tdXRlZCB7IGNvbG9yOiAkdGV4dC1tdXRlZCAhaW1wb3J0YW50OyB9XG5cbi50ZXh0LWJsYWNrLTUwIHsgY29sb3I6IHJnYmEoJGJsYWNrLCAuNSkgIWltcG9ydGFudDsgfVxuLnRleHQtd2hpdGUtNTAgeyBjb2xvcjogcmdiYSgkd2hpdGUsIC41KSAhaW1wb3J0YW50OyB9XG5cbi8vIE1pc2NcblxuLnRleHQtaGlkZSB7XG4gIEBpbmNsdWRlIHRleHQtaGlkZSgkaWdub3JlLXdhcm5pbmc6IHRydWUpO1xufVxuXG4udGV4dC1kZWNvcmF0aW9uLW5vbmUgeyB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDsgfVxuXG4udGV4dC1icmVhayB7XG4gIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQgIWltcG9ydGFudDsgLy8gRGVwcmVjYXRlZCwgYnV0IGF2b2lkcyBpc3N1ZXMgd2l0aCBmbGV4IGNvbnRhaW5lcnNcbiAgd29yZC13cmFwOiBicmVhay13b3JkICFpbXBvcnRhbnQ7IC8vIFVzZWQgaW5zdGVhZCBvZiBgb3ZlcmZsb3ctd3JhcGAgZm9yIElFICYgRWRnZSBMZWdhY3lcbn1cblxuLy8gUmVzZXRcblxuLnRleHQtcmVzZXQgeyBjb2xvcjogaW5oZXJpdCAhaW1wb3J0YW50OyB9XG4iLCIvLyBUZXh0IHRydW5jYXRlXG4vLyBSZXF1aXJlcyBpbmxpbmUtYmxvY2sgb3IgYmxvY2sgZm9yIHByb3BlciBzdHlsaW5nXG5cbkBtaXhpbiB0ZXh0LXRydW5jYXRlKCkge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vLyBUeXBvZ3JhcGh5XG5cbkBtaXhpbiB0ZXh0LWVtcGhhc2lzLXZhcmlhbnQoJHBhcmVudCwgJGNvbG9yLCAkaWdub3JlLXdhcm5pbmc6IGZhbHNlKSB7XG4gICN7JHBhcmVudH0ge1xuICAgIGNvbG9yOiAkY29sb3IgIWltcG9ydGFudDtcbiAgfVxuICBAaWYgJGVtcGhhc2l6ZWQtbGluay1ob3Zlci1kYXJrZW4tcGVyY2VudGFnZSAhPSAwIHtcbiAgICBhI3skcGFyZW50fSB7XG4gICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICAgICAgY29sb3I6IGRhcmtlbigkY29sb3IsICRlbXBoYXNpemVkLWxpbmstaG92ZXItZGFya2VuLXBlcmNlbnRhZ2UpICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBpbmNsdWRlIGRlcHJlY2F0ZShcImB0ZXh0LWVtcGhhc2lzLXZhcmlhbnQoKWBcIiwgXCJ2NC40LjBcIiwgXCJ2NVwiLCAkaWdub3JlLXdhcm5pbmcpO1xufVxuIiwiLy8gQ1NTIGltYWdlIHJlcGxhY2VtZW50XG5AbWl4aW4gdGV4dC1oaWRlKCRpZ25vcmUtd2FybmluZzogZmFsc2UpIHtcbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIGZvbnQtZmFtaWx5LW5vLW1pc3NpbmctZ2VuZXJpYy1mYW1pbHkta2V5d29yZFxuICBmb250OiAwLzAgYTtcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcblxuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJgdGV4dC1oaWRlKClgXCIsIFwidjQuMS4wXCIsIFwidjVcIiwgJGlnbm9yZS13YXJuaW5nKTtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vL1xuLy8gVmlzaWJpbGl0eSB1dGlsaXRpZXNcbi8vXG5cbi52aXNpYmxlIHtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50O1xufVxuXG4uaW52aXNpYmxlIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuICFpbXBvcnRhbnQ7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnQsIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuXG4vLyBTb3VyY2U6IGh0dHBzOi8vZ2l0aHViLmNvbS9oNWJwL21haW4uY3NzL2Jsb2IvbWFzdGVyL3NyYy9fcHJpbnQuY3NzXG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBQcmludCBzdHlsZXMuXG4vLyBJbmxpbmVkIHRvIGF2b2lkIHRoZSBhZGRpdGlvbmFsIEhUVFAgcmVxdWVzdDpcbi8vIGh0dHBzOi8vd3d3LnBocGllZC5jb20vZGVsYXktbG9hZGluZy15b3VyLXByaW50LWNzcy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkBpZiAkZW5hYmxlLXByaW50LXN0eWxlcyB7XG4gIEBtZWRpYSBwcmludCB7XG4gICAgKixcbiAgICAqOjpiZWZvcmUsXG4gICAgKjo6YWZ0ZXIge1xuICAgICAgLy8gQm9vdHN0cmFwIHNwZWNpZmljOyBjb21tZW50IG91dCBgY29sb3JgIGFuZCBgYmFja2dyb3VuZGBcbiAgICAgIC8vY29sb3I6ICRibGFjayAhaW1wb3J0YW50OyAvLyBCbGFjayBwcmludHMgZmFzdGVyXG4gICAgICB0ZXh0LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgLy9iYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIGEge1xuICAgICAgJjpub3QoLmJ0bikge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBCb290c3RyYXAgc3BlY2lmaWM7IGNvbW1lbnQgdGhlIGZvbGxvd2luZyBzZWxlY3RvciBvdXRcbiAgICAvL2FbaHJlZl06OmFmdGVyIHtcbiAgICAvLyAgY29udGVudDogXCIgKFwiIGF0dHIoaHJlZikgXCIpXCI7XG4gICAgLy99XG5cbiAgICBhYmJyW3RpdGxlXTo6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCIgKFwiIGF0dHIodGl0bGUpIFwiKVwiO1xuICAgIH1cblxuICAgIC8vIEJvb3RzdHJhcCBzcGVjaWZpYzsgY29tbWVudCB0aGUgZm9sbG93aW5nIHNlbGVjdG9yIG91dFxuICAgIC8vXG4gICAgLy8gRG9uJ3Qgc2hvdyBsaW5rcyB0aGF0IGFyZSBmcmFnbWVudCBpZGVudGlmaWVycyxcbiAgICAvLyBvciB1c2UgdGhlIGBqYXZhc2NyaXB0OmAgcHNldWRvIHByb3RvY29sXG4gICAgLy9cblxuICAgIC8vYVtocmVmXj1cIiNcIl06OmFmdGVyLFxuICAgIC8vYVtocmVmXj1cImphdmFzY3JpcHQ6XCJdOjphZnRlciB7XG4gICAgLy8gY29udGVudDogXCJcIjtcbiAgICAvL31cblxuICAgIHByZSB7XG4gICAgICB3aGl0ZS1zcGFjZTogcHJlLXdyYXAgIWltcG9ydGFudDtcbiAgICB9XG4gICAgcHJlLFxuICAgIGJsb2NrcXVvdGUge1xuICAgICAgYm9yZGVyOiAkYm9yZGVyLXdpZHRoIHNvbGlkICRncmF5LTUwMDsgLy8gQm9vdHN0cmFwIGN1c3RvbSBjb2RlOyB1c2luZyBgJGJvcmRlci13aWR0aGAgaW5zdGVhZCBvZiAxcHhcbiAgICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgICB9XG5cbiAgICB0cixcbiAgICBpbWcge1xuICAgICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xuICAgIH1cblxuICAgIHAsXG4gICAgaDIsXG4gICAgaDMge1xuICAgICAgb3JwaGFuczogMztcbiAgICAgIHdpZG93czogMztcbiAgICB9XG5cbiAgICBoMixcbiAgICBoMyB7XG4gICAgICBwYWdlLWJyZWFrLWFmdGVyOiBhdm9pZDtcbiAgICB9XG5cbiAgICAvLyBCb290c3RyYXAgc3BlY2lmaWMgY2hhbmdlcyBzdGFydFxuXG4gICAgLy8gU3BlY2lmeSBhIHNpemUgYW5kIG1pbi13aWR0aCB0byBtYWtlIHByaW50aW5nIGNsb3NlciBhY3Jvc3MgYnJvd3NlcnMuXG4gICAgLy8gV2UgZG9uJ3Qgc2V0IG1hcmdpbiBoZXJlIGJlY2F1c2UgaXQgYnJlYWtzIGBzaXplYCBpbiBDaHJvbWUuIFdlIGFsc29cbiAgICAvLyBkb24ndCB1c2UgYCFpbXBvcnRhbnRgIG9uIGBzaXplYCBhcyBpdCBicmVha3MgaW4gQ2hyb21lLlxuICAgIEBwYWdlIHtcbiAgICAgIHNpemU6ICRwcmludC1wYWdlLXNpemU7XG4gICAgfVxuICAgIGJvZHkge1xuICAgICAgbWluLXdpZHRoOiAkcHJpbnQtYm9keS1taW4td2lkdGggIWltcG9ydGFudDtcbiAgICB9XG4gICAgLmNvbnRhaW5lciB7XG4gICAgICBtaW4td2lkdGg6ICRwcmludC1ib2R5LW1pbi13aWR0aCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC8vIEJvb3RzdHJhcCBjb21wb25lbnRzXG4gICAgLm5hdmJhciB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICAuYmFkZ2Uge1xuICAgICAgYm9yZGVyOiAkYm9yZGVyLXdpZHRoIHNvbGlkICRibGFjaztcbiAgICB9XG5cbiAgICAudGFibGUge1xuICAgICAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZSAhaW1wb3J0YW50O1xuXG4gICAgICB0ZCxcbiAgICAgIHRoIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnRhYmxlLWJvcmRlcmVkIHtcbiAgICAgIHRoLFxuICAgICAgdGQge1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkZ3JheS0zMDAgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAudGFibGUtZGFyayB7XG4gICAgICBjb2xvcjogaW5oZXJpdDtcblxuICAgICAgdGgsXG4gICAgICB0ZCxcbiAgICAgIHRoZWFkIHRoLFxuICAgICAgdGJvZHkgKyB0Ym9keSB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAudGFibGUgLnRoZWFkLWRhcmsgdGgge1xuICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICBib3JkZXItY29sb3I6ICR0YWJsZS1ib3JkZXItY29sb3I7XG4gICAgfVxuXG4gICAgLy8gQm9vdHN0cmFwIHNwZWNpZmljIGNoYW5nZXMgZW5kXG4gIH1cbn1cbiIsIi8qKlxuICogZWFzeW1kZSB2Mi4xNy4wXG4gKiBDb3B5cmlnaHQgSmVyb2VuIEFra2VybWFuXG4gKiBAbGluayBodHRwczovL2dpdGh1Yi5jb20vaW9uYXJ1L2Vhc3ktbWFya2Rvd24tZWRpdG9yXG4gKiBAbGljZW5zZSBNSVRcbiAqL1xuLkNvZGVNaXJyb3J7Zm9udC1mYW1pbHk6bW9ub3NwYWNlO2hlaWdodDozMDBweDtjb2xvcjojMDAwO2RpcmVjdGlvbjpsdHJ9LkNvZGVNaXJyb3ItbGluZXN7cGFkZGluZzo0cHggMH0uQ29kZU1pcnJvciBwcmUuQ29kZU1pcnJvci1saW5lLC5Db2RlTWlycm9yIHByZS5Db2RlTWlycm9yLWxpbmUtbGlrZXtwYWRkaW5nOjAgNHB4fS5Db2RlTWlycm9yLWd1dHRlci1maWxsZXIsLkNvZGVNaXJyb3Itc2Nyb2xsYmFyLWZpbGxlcntiYWNrZ3JvdW5kLWNvbG9yOiNmZmZ9LkNvZGVNaXJyb3ItZ3V0dGVyc3tib3JkZXItcmlnaHQ6MXB4IHNvbGlkICNkZGQ7YmFja2dyb3VuZC1jb2xvcjojZjdmN2Y3O3doaXRlLXNwYWNlOm5vd3JhcH0uQ29kZU1pcnJvci1saW5lbnVtYmVye3BhZGRpbmc6MCAzcHggMCA1cHg7bWluLXdpZHRoOjIwcHg7dGV4dC1hbGlnbjpyaWdodDtjb2xvcjojOTk5O3doaXRlLXNwYWNlOm5vd3JhcH0uQ29kZU1pcnJvci1ndXR0ZXJtYXJrZXJ7Y29sb3I6IzAwMH0uQ29kZU1pcnJvci1ndXR0ZXJtYXJrZXItc3VidGxle2NvbG9yOiM5OTl9LkNvZGVNaXJyb3ItY3Vyc29ye2JvcmRlci1sZWZ0OjFweCBzb2xpZCAjMDAwO2JvcmRlci1yaWdodDpub25lO3dpZHRoOjB9LkNvZGVNaXJyb3IgZGl2LkNvZGVNaXJyb3Itc2Vjb25kYXJ5Y3Vyc29ye2JvcmRlci1sZWZ0OjFweCBzb2xpZCBzaWx2ZXJ9LmNtLWZhdC1jdXJzb3IgLkNvZGVNaXJyb3ItY3Vyc29ye3dpZHRoOmF1dG87Ym9yZGVyOjAhaW1wb3J0YW50O2JhY2tncm91bmQ6IzdlN30uY20tZmF0LWN1cnNvciBkaXYuQ29kZU1pcnJvci1jdXJzb3Jze3otaW5kZXg6MX0uY20tZmF0LWN1cnNvciAuQ29kZU1pcnJvci1saW5lOjpzZWxlY3Rpb24sLmNtLWZhdC1jdXJzb3IgLkNvZGVNaXJyb3ItbGluZT5zcGFuOjpzZWxlY3Rpb24sLmNtLWZhdC1jdXJzb3IgLkNvZGVNaXJyb3ItbGluZT5zcGFuPnNwYW46OnNlbGVjdGlvbntiYWNrZ3JvdW5kOjAgMH0uY20tZmF0LWN1cnNvciAuQ29kZU1pcnJvci1saW5lOjotbW96LXNlbGVjdGlvbiwuY20tZmF0LWN1cnNvciAuQ29kZU1pcnJvci1saW5lPnNwYW46Oi1tb3otc2VsZWN0aW9uLC5jbS1mYXQtY3Vyc29yIC5Db2RlTWlycm9yLWxpbmU+c3Bhbj5zcGFuOjotbW96LXNlbGVjdGlvbntiYWNrZ3JvdW5kOjAgMH0uY20tZmF0LWN1cnNvcntjYXJldC1jb2xvcjp0cmFuc3BhcmVudH1ALW1vei1rZXlmcmFtZXMgYmxpbmt7NTAle2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnR9fUAtd2Via2l0LWtleWZyYW1lcyBibGlua3s1MCV7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudH19QGtleWZyYW1lcyBibGlua3s1MCV7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudH19LmNtLXRhYntkaXNwbGF5OmlubGluZS1ibG9jazt0ZXh0LWRlY29yYXRpb246aW5oZXJpdH0uQ29kZU1pcnJvci1ydWxlcnN7cG9zaXRpb246YWJzb2x1dGU7bGVmdDowO3JpZ2h0OjA7dG9wOi01MHB4O2JvdHRvbTowO292ZXJmbG93OmhpZGRlbn0uQ29kZU1pcnJvci1ydWxlcntib3JkZXItbGVmdDoxcHggc29saWQgI2NjYzt0b3A6MDtib3R0b206MDtwb3NpdGlvbjphYnNvbHV0ZX0uY20tcy1kZWZhdWx0IC5jbS1oZWFkZXJ7Y29sb3I6IzAwZn0uY20tcy1kZWZhdWx0IC5jbS1xdW90ZXtjb2xvcjojMDkwfS5jbS1uZWdhdGl2ZXtjb2xvcjojZDQ0fS5jbS1wb3NpdGl2ZXtjb2xvcjojMjkyfS5jbS1oZWFkZXIsLmNtLXN0cm9uZ3tmb250LXdlaWdodDo3MDB9LmNtLWVte2ZvbnQtc3R5bGU6aXRhbGljfS5jbS1saW5re3RleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmV9LmNtLXN0cmlrZXRocm91Z2h7dGV4dC1kZWNvcmF0aW9uOmxpbmUtdGhyb3VnaH0uY20tcy1kZWZhdWx0IC5jbS1rZXl3b3Jke2NvbG9yOiM3MDh9LmNtLXMtZGVmYXVsdCAuY20tYXRvbXtjb2xvcjojMjE5fS5jbS1zLWRlZmF1bHQgLmNtLW51bWJlcntjb2xvcjojMTY0fS5jbS1zLWRlZmF1bHQgLmNtLWRlZntjb2xvcjojMDBmfS5jbS1zLWRlZmF1bHQgLmNtLXZhcmlhYmxlLTJ7Y29sb3I6IzA1YX0uY20tcy1kZWZhdWx0IC5jbS10eXBlLC5jbS1zLWRlZmF1bHQgLmNtLXZhcmlhYmxlLTN7Y29sb3I6IzA4NX0uY20tcy1kZWZhdWx0IC5jbS1jb21tZW50e2NvbG9yOiNhNTB9LmNtLXMtZGVmYXVsdCAuY20tc3RyaW5ne2NvbG9yOiNhMTF9LmNtLXMtZGVmYXVsdCAuY20tc3RyaW5nLTJ7Y29sb3I6I2Y1MH0uY20tcy1kZWZhdWx0IC5jbS1tZXRhe2NvbG9yOiM1NTV9LmNtLXMtZGVmYXVsdCAuY20tcXVhbGlmaWVye2NvbG9yOiM1NTV9LmNtLXMtZGVmYXVsdCAuY20tYnVpbHRpbntjb2xvcjojMzBhfS5jbS1zLWRlZmF1bHQgLmNtLWJyYWNrZXR7Y29sb3I6Izk5N30uY20tcy1kZWZhdWx0IC5jbS10YWd7Y29sb3I6IzE3MH0uY20tcy1kZWZhdWx0IC5jbS1hdHRyaWJ1dGV7Y29sb3I6IzAwY30uY20tcy1kZWZhdWx0IC5jbS1ocntjb2xvcjojOTk5fS5jbS1zLWRlZmF1bHQgLmNtLWxpbmt7Y29sb3I6IzAwY30uY20tcy1kZWZhdWx0IC5jbS1lcnJvcntjb2xvcjpyZWR9LmNtLWludmFsaWRjaGFye2NvbG9yOnJlZH0uQ29kZU1pcnJvci1jb21wb3Npbmd7Ym9yZGVyLWJvdHRvbToycHggc29saWR9ZGl2LkNvZGVNaXJyb3Igc3Bhbi5Db2RlTWlycm9yLW1hdGNoaW5nYnJhY2tldHtjb2xvcjojMGIwfWRpdi5Db2RlTWlycm9yIHNwYW4uQ29kZU1pcnJvci1ub25tYXRjaGluZ2JyYWNrZXR7Y29sb3I6I2EyMn0uQ29kZU1pcnJvci1tYXRjaGluZ3RhZ3tiYWNrZ3JvdW5kOnJnYmEoMjU1LDE1MCwwLC4zKX0uQ29kZU1pcnJvci1hY3RpdmVsaW5lLWJhY2tncm91bmR7YmFja2dyb3VuZDojZThmMmZmfS5Db2RlTWlycm9ye3Bvc2l0aW9uOnJlbGF0aXZlO292ZXJmbG93OmhpZGRlbjtiYWNrZ3JvdW5kOiNmZmZ9LkNvZGVNaXJyb3Itc2Nyb2xse292ZXJmbG93OnNjcm9sbCFpbXBvcnRhbnQ7bWFyZ2luLWJvdHRvbTotNTBweDttYXJnaW4tcmlnaHQ6LTUwcHg7cGFkZGluZy1ib3R0b206NTBweDtoZWlnaHQ6MTAwJTtvdXRsaW5lOjA7cG9zaXRpb246cmVsYXRpdmU7ei1pbmRleDowfS5Db2RlTWlycm9yLXNpemVye3Bvc2l0aW9uOnJlbGF0aXZlO2JvcmRlci1yaWdodDo1MHB4IHNvbGlkIHRyYW5zcGFyZW50fS5Db2RlTWlycm9yLWd1dHRlci1maWxsZXIsLkNvZGVNaXJyb3ItaHNjcm9sbGJhciwuQ29kZU1pcnJvci1zY3JvbGxiYXItZmlsbGVyLC5Db2RlTWlycm9yLXZzY3JvbGxiYXJ7cG9zaXRpb246YWJzb2x1dGU7ei1pbmRleDo2O2Rpc3BsYXk6bm9uZTtvdXRsaW5lOjB9LkNvZGVNaXJyb3ItdnNjcm9sbGJhcntyaWdodDowO3RvcDowO292ZXJmbG93LXg6aGlkZGVuO292ZXJmbG93LXk6c2Nyb2xsfS5Db2RlTWlycm9yLWhzY3JvbGxiYXJ7Ym90dG9tOjA7bGVmdDowO292ZXJmbG93LXk6aGlkZGVuO292ZXJmbG93LXg6c2Nyb2xsfS5Db2RlTWlycm9yLXNjcm9sbGJhci1maWxsZXJ7cmlnaHQ6MDtib3R0b206MH0uQ29kZU1pcnJvci1ndXR0ZXItZmlsbGVye2xlZnQ6MDtib3R0b206MH0uQ29kZU1pcnJvci1ndXR0ZXJze3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6MDt0b3A6MDttaW4taGVpZ2h0OjEwMCU7ei1pbmRleDozfS5Db2RlTWlycm9yLWd1dHRlcnt3aGl0ZS1zcGFjZTpub3JtYWw7aGVpZ2h0OjEwMCU7ZGlzcGxheTppbmxpbmUtYmxvY2s7dmVydGljYWwtYWxpZ246dG9wO21hcmdpbi1ib3R0b206LTUwcHh9LkNvZGVNaXJyb3ItZ3V0dGVyLXdyYXBwZXJ7cG9zaXRpb246YWJzb2x1dGU7ei1pbmRleDo0O2JhY2tncm91bmQ6MCAwIWltcG9ydGFudDtib3JkZXI6bm9uZSFpbXBvcnRhbnR9LkNvZGVNaXJyb3ItZ3V0dGVyLWJhY2tncm91bmR7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7Ym90dG9tOjA7ei1pbmRleDo0fS5Db2RlTWlycm9yLWd1dHRlci1lbHR7cG9zaXRpb246YWJzb2x1dGU7Y3Vyc29yOmRlZmF1bHQ7ei1pbmRleDo0fS5Db2RlTWlycm9yLWd1dHRlci13cmFwcGVyIDo6c2VsZWN0aW9ue2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnR9LkNvZGVNaXJyb3ItZ3V0dGVyLXdyYXBwZXIgOjotbW96LXNlbGVjdGlvbntiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50fS5Db2RlTWlycm9yLWxpbmVze2N1cnNvcjp0ZXh0O21pbi1oZWlnaHQ6MXB4fS5Db2RlTWlycm9yIHByZS5Db2RlTWlycm9yLWxpbmUsLkNvZGVNaXJyb3IgcHJlLkNvZGVNaXJyb3ItbGluZS1saWtley1tb3otYm9yZGVyLXJhZGl1czowOy13ZWJraXQtYm9yZGVyLXJhZGl1czowO2JvcmRlci1yYWRpdXM6MDtib3JkZXItd2lkdGg6MDtiYWNrZ3JvdW5kOjAgMDtmb250LWZhbWlseTppbmhlcml0O2ZvbnQtc2l6ZTppbmhlcml0O21hcmdpbjowO3doaXRlLXNwYWNlOnByZTt3b3JkLXdyYXA6bm9ybWFsO2xpbmUtaGVpZ2h0OmluaGVyaXQ7Y29sb3I6aW5oZXJpdDt6LWluZGV4OjI7cG9zaXRpb246cmVsYXRpdmU7b3ZlcmZsb3c6dmlzaWJsZTstd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6dHJhbnNwYXJlbnQ7LXdlYmtpdC1mb250LXZhcmlhbnQtbGlnYXR1cmVzOmNvbnRleHR1YWw7Zm9udC12YXJpYW50LWxpZ2F0dXJlczpjb250ZXh0dWFsfS5Db2RlTWlycm9yLXdyYXAgcHJlLkNvZGVNaXJyb3ItbGluZSwuQ29kZU1pcnJvci13cmFwIHByZS5Db2RlTWlycm9yLWxpbmUtbGlrZXt3b3JkLXdyYXA6YnJlYWstd29yZDt3aGl0ZS1zcGFjZTpwcmUtd3JhcDt3b3JkLWJyZWFrOm5vcm1hbH0uQ29kZU1pcnJvci1saW5lYmFja2dyb3VuZHtwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0OjA7cmlnaHQ6MDt0b3A6MDtib3R0b206MDt6LWluZGV4OjB9LkNvZGVNaXJyb3ItbGluZXdpZGdldHtwb3NpdGlvbjpyZWxhdGl2ZTt6LWluZGV4OjI7cGFkZGluZzouMXB4fS5Db2RlTWlycm9yLXJ0bCBwcmV7ZGlyZWN0aW9uOnJ0bH0uQ29kZU1pcnJvci1jb2Rle291dGxpbmU6MH0uQ29kZU1pcnJvci1ndXR0ZXIsLkNvZGVNaXJyb3ItZ3V0dGVycywuQ29kZU1pcnJvci1saW5lbnVtYmVyLC5Db2RlTWlycm9yLXNjcm9sbCwuQ29kZU1pcnJvci1zaXplcnstbW96LWJveC1zaXppbmc6Y29udGVudC1ib3g7Ym94LXNpemluZzpjb250ZW50LWJveH0uQ29kZU1pcnJvci1tZWFzdXJle3Bvc2l0aW9uOmFic29sdXRlO3dpZHRoOjEwMCU7aGVpZ2h0OjA7b3ZlcmZsb3c6aGlkZGVuO3Zpc2liaWxpdHk6aGlkZGVufS5Db2RlTWlycm9yLWN1cnNvcntwb3NpdGlvbjphYnNvbHV0ZTtwb2ludGVyLWV2ZW50czpub25lfS5Db2RlTWlycm9yLW1lYXN1cmUgcHJle3Bvc2l0aW9uOnN0YXRpY31kaXYuQ29kZU1pcnJvci1jdXJzb3Jze3Zpc2liaWxpdHk6aGlkZGVuO3Bvc2l0aW9uOnJlbGF0aXZlO3otaW5kZXg6M31kaXYuQ29kZU1pcnJvci1kcmFnY3Vyc29yc3t2aXNpYmlsaXR5OnZpc2libGV9LkNvZGVNaXJyb3ItZm9jdXNlZCBkaXYuQ29kZU1pcnJvci1jdXJzb3Jze3Zpc2liaWxpdHk6dmlzaWJsZX0uQ29kZU1pcnJvci1zZWxlY3RlZHtiYWNrZ3JvdW5kOiNkOWQ5ZDl9LkNvZGVNaXJyb3ItZm9jdXNlZCAuQ29kZU1pcnJvci1zZWxlY3RlZHtiYWNrZ3JvdW5kOiNkN2Q0ZjB9LkNvZGVNaXJyb3ItY3Jvc3NoYWlye2N1cnNvcjpjcm9zc2hhaXJ9LkNvZGVNaXJyb3ItbGluZTo6c2VsZWN0aW9uLC5Db2RlTWlycm9yLWxpbmU+c3Bhbjo6c2VsZWN0aW9uLC5Db2RlTWlycm9yLWxpbmU+c3Bhbj5zcGFuOjpzZWxlY3Rpb257YmFja2dyb3VuZDojZDdkNGYwfS5Db2RlTWlycm9yLWxpbmU6Oi1tb3otc2VsZWN0aW9uLC5Db2RlTWlycm9yLWxpbmU+c3Bhbjo6LW1vei1zZWxlY3Rpb24sLkNvZGVNaXJyb3ItbGluZT5zcGFuPnNwYW46Oi1tb3otc2VsZWN0aW9ue2JhY2tncm91bmQ6I2Q3ZDRmMH0uY20tc2VhcmNoaW5ne2JhY2tncm91bmQtY29sb3I6I2ZmYTtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMjU1LDI1NSwwLC40KX0uY20tZm9yY2UtYm9yZGVye3BhZGRpbmctcmlnaHQ6LjFweH1AbWVkaWEgcHJpbnR7LkNvZGVNaXJyb3IgZGl2LkNvZGVNaXJyb3ItY3Vyc29yc3t2aXNpYmlsaXR5OmhpZGRlbn19LmNtLXRhYi13cmFwLWhhY2s6YWZ0ZXJ7Y29udGVudDonJ31zcGFuLkNvZGVNaXJyb3Itc2VsZWN0ZWR0ZXh0e2JhY2tncm91bmQ6MCAwfS5FYXN5TURFQ29udGFpbmVye2Rpc3BsYXk6YmxvY2t9LkNvZGVNaXJyb3ItcnRsIHByZXtkaXJlY3Rpb246cnRsfS5FYXN5TURFQ29udGFpbmVyLnNpZGVkLS1uby1mdWxsc2NyZWVue2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpyb3c7ZmxleC13cmFwOndyYXB9LkVhc3lNREVDb250YWluZXIgLkNvZGVNaXJyb3J7Ym94LXNpemluZzpib3JkZXItYm94O2hlaWdodDphdXRvO2JvcmRlcjoxcHggc29saWQgI2NlZDRkYTtib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOjRweDtib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czo0cHg7cGFkZGluZzoxMHB4O2ZvbnQ6aW5oZXJpdDt6LWluZGV4OjA7d29yZC13cmFwOmJyZWFrLXdvcmR9LkVhc3lNREVDb250YWluZXIgLkNvZGVNaXJyb3Itc2Nyb2xse2N1cnNvcjp0ZXh0fS5FYXN5TURFQ29udGFpbmVyIC5Db2RlTWlycm9yLWZ1bGxzY3JlZW57YmFja2dyb3VuZDojZmZmO3Bvc2l0aW9uOmZpeGVkIWltcG9ydGFudDt0b3A6NTBweDtsZWZ0OjA7cmlnaHQ6MDtib3R0b206MDtoZWlnaHQ6YXV0bzt6LWluZGV4Ojg7Ym9yZGVyLXJpZ2h0Om5vbmUhaW1wb3J0YW50O2JvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOjAhaW1wb3J0YW50fS5FYXN5TURFQ29udGFpbmVyIC5Db2RlTWlycm9yLXNpZGVke3dpZHRoOjUwJSFpbXBvcnRhbnR9LkVhc3lNREVDb250YWluZXIuc2lkZWQtLW5vLWZ1bGxzY3JlZW4gLkNvZGVNaXJyb3Itc2lkZWR7Ym9yZGVyLXJpZ2h0Om5vbmUhaW1wb3J0YW50O2JvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOjA7cG9zaXRpb246cmVsYXRpdmU7ZmxleDoxIDEgYXV0b30uRWFzeU1ERUNvbnRhaW5lciAuQ29kZU1pcnJvci1wbGFjZWhvbGRlcntvcGFjaXR5Oi41fS5FYXN5TURFQ29udGFpbmVyIC5Db2RlTWlycm9yLWZvY3VzZWQgLkNvZGVNaXJyb3Itc2VsZWN0ZWR7YmFja2dyb3VuZDojZDlkOWQ5fS5lZGl0b3ItdG9vbGJhcntwb3NpdGlvbjpyZWxhdGl2ZTstd2Via2l0LXVzZXItc2VsZWN0Om5vbmU7LW1vei11c2VyLXNlbGVjdDpub25lOy1tcy11c2VyLXNlbGVjdDpub25lOy1vLXVzZXItc2VsZWN0Om5vbmU7dXNlci1zZWxlY3Q6bm9uZTtwYWRkaW5nOjlweCAxMHB4O2JvcmRlci10b3A6MXB4IHNvbGlkICNjZWQ0ZGE7Ym9yZGVyLWxlZnQ6MXB4IHNvbGlkICNjZWQ0ZGE7Ym9yZGVyLXJpZ2h0OjFweCBzb2xpZCAjY2VkNGRhO2JvcmRlci10b3AtbGVmdC1yYWRpdXM6NHB4O2JvcmRlci10b3AtcmlnaHQtcmFkaXVzOjRweH0uZWRpdG9yLXRvb2xiYXIuZnVsbHNjcmVlbnt3aWR0aDoxMDAlO2hlaWdodDo1MHB4O3BhZGRpbmctdG9wOjEwcHg7cGFkZGluZy1ib3R0b206MTBweDtib3gtc2l6aW5nOmJvcmRlci1ib3g7YmFja2dyb3VuZDojZmZmO2JvcmRlcjowO3Bvc2l0aW9uOmZpeGVkO3RvcDowO2xlZnQ6MDtvcGFjaXR5OjE7ei1pbmRleDo5fS5lZGl0b3ItdG9vbGJhci5mdWxsc2NyZWVuOjpiZWZvcmV7d2lkdGg6MjBweDtoZWlnaHQ6NTBweDtiYWNrZ3JvdW5kOi1tb3otbGluZWFyLWdyYWRpZW50KGxlZnQsI2ZmZiAwLHJnYmEoMjU1LDI1NSwyNTUsMCkgMTAwJSk7YmFja2dyb3VuZDotd2Via2l0LWdyYWRpZW50KGxpbmVhcixsZWZ0IHRvcCxyaWdodCB0b3AsY29sb3Itc3RvcCgwLCNmZmYpLGNvbG9yLXN0b3AoMTAwJSxyZ2JhKDI1NSwyNTUsMjU1LDApKSk7YmFja2dyb3VuZDotd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWZ0LCNmZmYgMCxyZ2JhKDI1NSwyNTUsMjU1LDApIDEwMCUpO2JhY2tncm91bmQ6LW8tbGluZWFyLWdyYWRpZW50KGxlZnQsI2ZmZiAwLHJnYmEoMjU1LDI1NSwyNTUsMCkgMTAwJSk7YmFja2dyb3VuZDotbXMtbGluZWFyLWdyYWRpZW50KGxlZnQsI2ZmZiAwLHJnYmEoMjU1LDI1NSwyNTUsMCkgMTAwJSk7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsI2ZmZiAwLHJnYmEoMjU1LDI1NSwyNTUsMCkgMTAwJSk7cG9zaXRpb246Zml4ZWQ7dG9wOjA7bGVmdDowO21hcmdpbjowO3BhZGRpbmc6MH0uZWRpdG9yLXRvb2xiYXIuZnVsbHNjcmVlbjo6YWZ0ZXJ7d2lkdGg6MjBweDtoZWlnaHQ6NTBweDtiYWNrZ3JvdW5kOi1tb3otbGluZWFyLWdyYWRpZW50KGxlZnQscmdiYSgyNTUsMjU1LDI1NSwwKSAwLCNmZmYgMTAwJSk7YmFja2dyb3VuZDotd2Via2l0LWdyYWRpZW50KGxpbmVhcixsZWZ0IHRvcCxyaWdodCB0b3AsY29sb3Itc3RvcCgwLHJnYmEoMjU1LDI1NSwyNTUsMCkpLGNvbG9yLXN0b3AoMTAwJSwjZmZmKSk7YmFja2dyb3VuZDotd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWZ0LHJnYmEoMjU1LDI1NSwyNTUsMCkgMCwjZmZmIDEwMCUpO2JhY2tncm91bmQ6LW8tbGluZWFyLWdyYWRpZW50KGxlZnQscmdiYSgyNTUsMjU1LDI1NSwwKSAwLCNmZmYgMTAwJSk7YmFja2dyb3VuZDotbXMtbGluZWFyLWdyYWRpZW50KGxlZnQscmdiYSgyNTUsMjU1LDI1NSwwKSAwLCNmZmYgMTAwJSk7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQscmdiYSgyNTUsMjU1LDI1NSwwKSAwLCNmZmYgMTAwJSk7cG9zaXRpb246Zml4ZWQ7dG9wOjA7cmlnaHQ6MDttYXJnaW46MDtwYWRkaW5nOjB9LkVhc3lNREVDb250YWluZXIuc2lkZWQtLW5vLWZ1bGxzY3JlZW4gLmVkaXRvci10b29sYmFye3dpZHRoOjEwMCV9LmVkaXRvci10b29sYmFyIC5lYXN5bWRlLWRyb3Bkb3duLC5lZGl0b3ItdG9vbGJhciBidXR0b257YmFja2dyb3VuZDowIDA7ZGlzcGxheTppbmxpbmUtYmxvY2s7dGV4dC1hbGlnbjpjZW50ZXI7dGV4dC1kZWNvcmF0aW9uOm5vbmUhaW1wb3J0YW50O2hlaWdodDozMHB4O21hcmdpbjowO3BhZGRpbmc6MDtib3JkZXI6MXB4IHNvbGlkIHRyYW5zcGFyZW50O2JvcmRlci1yYWRpdXM6M3B4O2N1cnNvcjpwb2ludGVyfS5lZGl0b3ItdG9vbGJhciBidXR0b257Zm9udC13ZWlnaHQ6NzAwO21pbi13aWR0aDozMHB4O3BhZGRpbmc6MCA2cHg7d2hpdGUtc3BhY2U6bm93cmFwfS5lZGl0b3ItdG9vbGJhciBidXR0b24uYWN0aXZlLC5lZGl0b3ItdG9vbGJhciBidXR0b246aG92ZXJ7YmFja2dyb3VuZDojZmNmY2ZjO2JvcmRlci1jb2xvcjojOTVhNWE2fS5lZGl0b3ItdG9vbGJhciBpLnNlcGFyYXRvcntkaXNwbGF5OmlubGluZS1ibG9jazt3aWR0aDowO2JvcmRlci1sZWZ0OjFweCBzb2xpZCAjZDlkOWQ5O2JvcmRlci1yaWdodDoxcHggc29saWQgI2ZmZjtjb2xvcjp0cmFuc3BhcmVudDt0ZXh0LWluZGVudDotMTBweDttYXJnaW46MCA2cHh9LmVkaXRvci10b29sYmFyIGJ1dHRvbjphZnRlcntmb250LWZhbWlseTpBcmlhbCxcIkhlbHZldGljYSBOZXVlXCIsSGVsdmV0aWNhLHNhbnMtc2VyaWY7Zm9udC1zaXplOjY1JTt2ZXJ0aWNhbC1hbGlnbjp0ZXh0LWJvdHRvbTtwb3NpdGlvbjpyZWxhdGl2ZTt0b3A6MnB4fS5lZGl0b3ItdG9vbGJhciBidXR0b24uaGVhZGluZy0xOmFmdGVye2NvbnRlbnQ6XCIxXCJ9LmVkaXRvci10b29sYmFyIGJ1dHRvbi5oZWFkaW5nLTI6YWZ0ZXJ7Y29udGVudDpcIjJcIn0uZWRpdG9yLXRvb2xiYXIgYnV0dG9uLmhlYWRpbmctMzphZnRlcntjb250ZW50OlwiM1wifS5lZGl0b3ItdG9vbGJhciBidXR0b24uaGVhZGluZy1iaWdnZXI6YWZ0ZXJ7Y29udGVudDpcIuKWslwifS5lZGl0b3ItdG9vbGJhciBidXR0b24uaGVhZGluZy1zbWFsbGVyOmFmdGVye2NvbnRlbnQ6XCLilrxcIn0uZWRpdG9yLXRvb2xiYXIuZGlzYWJsZWQtZm9yLXByZXZpZXcgYnV0dG9uOm5vdCgubm8tZGlzYWJsZSl7b3BhY2l0eTouNjtwb2ludGVyLWV2ZW50czpub25lfUBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDo3MDBweCl7LmVkaXRvci10b29sYmFyIGkubm8tbW9iaWxle2Rpc3BsYXk6bm9uZX19LmVkaXRvci1zdGF0dXNiYXJ7cGFkZGluZzo4cHggMTBweDtmb250LXNpemU6MTJweDtjb2xvcjojOTU5Njk0O3RleHQtYWxpZ246cmlnaHR9LkVhc3lNREVDb250YWluZXIuc2lkZWQtLW5vLWZ1bGxzY3JlZW4gLmVkaXRvci1zdGF0dXNiYXJ7d2lkdGg6MTAwJX0uZWRpdG9yLXN0YXR1c2JhciBzcGFue2Rpc3BsYXk6aW5saW5lLWJsb2NrO21pbi13aWR0aDo0ZW07bWFyZ2luLWxlZnQ6MWVtfS5lZGl0b3Itc3RhdHVzYmFyIC5saW5lczpiZWZvcmV7Y29udGVudDonbGluZXM6ICd9LmVkaXRvci1zdGF0dXNiYXIgLndvcmRzOmJlZm9yZXtjb250ZW50Oid3b3JkczogJ30uZWRpdG9yLXN0YXR1c2JhciAuY2hhcmFjdGVyczpiZWZvcmV7Y29udGVudDonY2hhcmFjdGVyczogJ30uZWRpdG9yLXByZXZpZXctZnVsbHtwb3NpdGlvbjphYnNvbHV0ZTt3aWR0aDoxMDAlO2hlaWdodDoxMDAlO3RvcDowO2xlZnQ6MDt6LWluZGV4Ojc7b3ZlcmZsb3c6YXV0bztkaXNwbGF5Om5vbmU7Ym94LXNpemluZzpib3JkZXItYm94fS5lZGl0b3ItcHJldmlldy1zaWRle3Bvc2l0aW9uOmZpeGVkO2JvdHRvbTowO3dpZHRoOjUwJTt0b3A6NTBweDtyaWdodDowO3otaW5kZXg6OTtvdmVyZmxvdzphdXRvO2Rpc3BsYXk6bm9uZTtib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym9yZGVyOjFweCBzb2xpZCAjZGRkO3dvcmQtd3JhcDpicmVhay13b3JkfS5lZGl0b3ItcHJldmlldy1hY3RpdmUtc2lkZXtkaXNwbGF5OmJsb2NrfS5FYXN5TURFQ29udGFpbmVyLnNpZGVkLS1uby1mdWxsc2NyZWVuIC5lZGl0b3ItcHJldmlldy1hY3RpdmUtc2lkZXtmbGV4OjEgMSBhdXRvO2hlaWdodDphdXRvO3Bvc2l0aW9uOnN0YXRpY30uZWRpdG9yLXByZXZpZXctYWN0aXZle2Rpc3BsYXk6YmxvY2t9LmVkaXRvci1wcmV2aWV3e3BhZGRpbmc6MTBweDtiYWNrZ3JvdW5kOiNmYWZhZmF9LmVkaXRvci1wcmV2aWV3PnB7bWFyZ2luLXRvcDowfS5lZGl0b3ItcHJldmlldyBwcmV7YmFja2dyb3VuZDojZWVlO21hcmdpbi1ib3R0b206MTBweH0uZWRpdG9yLXByZXZpZXcgdGFibGUgdGQsLmVkaXRvci1wcmV2aWV3IHRhYmxlIHRoe2JvcmRlcjoxcHggc29saWQgI2RkZDtwYWRkaW5nOjVweH0uY20tcy1lYXN5bWRlIC5jbS10YWd7Y29sb3I6IzYzYTM1Y30uY20tcy1lYXN5bWRlIC5jbS1hdHRyaWJ1dGV7Y29sb3I6Izc5NWRhM30uY20tcy1lYXN5bWRlIC5jbS1zdHJpbmd7Y29sb3I6IzE4MzY5MX0uY20tcy1lYXN5bWRlIC5jbS1oZWFkZXItMXtmb250LXNpemU6Y2FsYygxLjM3NXJlbSArIDEuNXZ3KX0uY20tcy1lYXN5bWRlIC5jbS1oZWFkZXItMntmb250LXNpemU6Y2FsYygxLjMyNXJlbSArIC45dncpfS5jbS1zLWVhc3ltZGUgLmNtLWhlYWRlci0ze2ZvbnQtc2l6ZTpjYWxjKDEuM3JlbSArIC42dncpfS5jbS1zLWVhc3ltZGUgLmNtLWhlYWRlci00e2ZvbnQtc2l6ZTpjYWxjKDEuMjc1cmVtICsgLjN2dyl9LmNtLXMtZWFzeW1kZSAuY20taGVhZGVyLTV7Zm9udC1zaXplOjEuMjVyZW19LmNtLXMtZWFzeW1kZSAuY20taGVhZGVyLTZ7Zm9udC1zaXplOjFyZW19LmNtLXMtZWFzeW1kZSAuY20taGVhZGVyLTEsLmNtLXMtZWFzeW1kZSAuY20taGVhZGVyLTIsLmNtLXMtZWFzeW1kZSAuY20taGVhZGVyLTMsLmNtLXMtZWFzeW1kZSAuY20taGVhZGVyLTQsLmNtLXMtZWFzeW1kZSAuY20taGVhZGVyLTUsLmNtLXMtZWFzeW1kZSAuY20taGVhZGVyLTZ7bWFyZ2luLWJvdHRvbTouNXJlbTtsaW5lLWhlaWdodDoxLjJ9LmNtLXMtZWFzeW1kZSAuY20tY29tbWVudHtiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsLjA1KTtib3JkZXItcmFkaXVzOjJweH0uY20tcy1lYXN5bWRlIC5jbS1saW5re2NvbG9yOiM3ZjhjOGR9LmNtLXMtZWFzeW1kZSAuY20tdXJse2NvbG9yOiNhYWIyYjN9LmNtLXMtZWFzeW1kZSAuY20tcXVvdGV7Y29sb3I6IzdmOGM4ZDtmb250LXN0eWxlOml0YWxpY30uZWRpdG9yLXRvb2xiYXIgLmVhc3ltZGUtZHJvcGRvd257cG9zaXRpb246cmVsYXRpdmU7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tIHJpZ2h0LCNmZmYgMCwjZmZmIDg0JSwjMzMzIDUwJSwjMzMzIDEwMCUpO2JvcmRlci1yYWRpdXM6MDtib3JkZXI6MXB4IHNvbGlkICNmZmZ9LmVkaXRvci10b29sYmFyIC5lYXN5bWRlLWRyb3Bkb3duOmhvdmVye2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSByaWdodCwjZmZmIDAsI2ZmZiA4NCUsIzMzMyA1MCUsIzMzMyAxMDAlKX0uZWFzeW1kZS1kcm9wZG93bi1jb250ZW50e2Rpc3BsYXk6YmxvY2s7dmlzaWJpbGl0eTpoaWRkZW47cG9zaXRpb246YWJzb2x1dGU7YmFja2dyb3VuZC1jb2xvcjojZjlmOWY5O2JveC1zaGFkb3c6MCA4cHggMTZweCAwIHJnYmEoMCwwLDAsLjIpO3BhZGRpbmc6OHB4O3otaW5kZXg6Mjt0b3A6MzBweH0uZWFzeW1kZS1kcm9wZG93bjphY3RpdmUgLmVhc3ltZGUtZHJvcGRvd24tY29udGVudCwuZWFzeW1kZS1kcm9wZG93bjpmb2N1cyAuZWFzeW1kZS1kcm9wZG93bi1jb250ZW50LC5lYXN5bWRlLWRyb3Bkb3duOmZvY3VzLXdpdGhpbiAuZWFzeW1kZS1kcm9wZG93bi1jb250ZW50e3Zpc2liaWxpdHk6dmlzaWJsZX0uZWFzeW1kZS1kcm9wZG93bi1jb250ZW50IGJ1dHRvbntkaXNwbGF5OmJsb2NrfXNwYW5bZGF0YS1pbWctc3JjXTo6YWZ0ZXJ7Y29udGVudDonJztiYWNrZ3JvdW5kLWltYWdlOnZhcigtLWJnLWltYWdlKTtkaXNwbGF5OmJsb2NrO21heC1oZWlnaHQ6MTAwJTttYXgtd2lkdGg6MTAwJTtiYWNrZ3JvdW5kLXNpemU6Y29udGFpbjtoZWlnaHQ6MDtwYWRkaW5nLXRvcDp2YXIoLS1oZWlnaHQpO3dpZHRoOnZhcigtLXdpZHRoKTtiYWNrZ3JvdW5kLXJlcGVhdDpuby1yZXBlYXR9LkNvZGVNaXJyb3IgLmNtLXNwZWxsLWVycm9yOm5vdCguY20tdXJsKTpub3QoLmNtLWNvbW1lbnQpOm5vdCguY20tdGFnKTpub3QoLmNtLXdvcmQpe2JhY2tncm91bmQ6cmdiYSgyNTUsMCwwLC4xNSl9IiwiLypcbiAqIFRhYmxlIHN0eWxlc1xuICovXG50YWJsZS5kYXRhVGFibGUge1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIGNsZWFyOiBib3RoO1xuICBib3JkZXItY29sbGFwc2U6IHNlcGFyYXRlO1xuICBib3JkZXItc3BhY2luZzogMDtcbiAgLypcbiAgICogSGVhZGVyIGFuZCBmb290ZXIgc3R5bGVzXG4gICAqL1xuICAvKlxuICAgKiBCb2R5IHN0eWxlc1xuICAgKi9cbn1cbnRhYmxlLmRhdGFUYWJsZSB0aGVhZCB0aCxcbnRhYmxlLmRhdGFUYWJsZSB0Zm9vdCB0aCB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxudGFibGUuZGF0YVRhYmxlIHRoZWFkIHRoLFxudGFibGUuZGF0YVRhYmxlIHRoZWFkIHRkIHtcbiAgcGFkZGluZzogMTBweCAxOHB4O1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzExMTtcbn1cbnRhYmxlLmRhdGFUYWJsZSB0aGVhZCB0aDphY3RpdmUsXG50YWJsZS5kYXRhVGFibGUgdGhlYWQgdGQ6YWN0aXZlIHtcbiAgb3V0bGluZTogbm9uZTtcbn1cbnRhYmxlLmRhdGFUYWJsZSB0Zm9vdCB0aCxcbnRhYmxlLmRhdGFUYWJsZSB0Zm9vdCB0ZCB7XG4gIHBhZGRpbmc6IDEwcHggMThweCA2cHggMThweDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICMxMTE7XG59XG50YWJsZS5kYXRhVGFibGUgdGhlYWQgLnNvcnRpbmcsXG50YWJsZS5kYXRhVGFibGUgdGhlYWQgLnNvcnRpbmdfYXNjLFxudGFibGUuZGF0YVRhYmxlIHRoZWFkIC5zb3J0aW5nX2Rlc2MsXG50YWJsZS5kYXRhVGFibGUgdGhlYWQgLnNvcnRpbmdfYXNjX2Rpc2FibGVkLFxudGFibGUuZGF0YVRhYmxlIHRoZWFkIC5zb3J0aW5nX2Rlc2NfZGlzYWJsZWQge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gICpjdXJzb3I6IGhhbmQ7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciByaWdodDtcbn1cbnRhYmxlLmRhdGFUYWJsZSB0aGVhZCAuc29ydGluZyB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy9zb3J0X2JvdGgucG5nXCIpO1xufVxudGFibGUuZGF0YVRhYmxlIHRoZWFkIC5zb3J0aW5nX2FzYyB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy9zb3J0X2FzYy5wbmdcIik7XG59XG50YWJsZS5kYXRhVGFibGUgdGhlYWQgLnNvcnRpbmdfZGVzYyB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy9zb3J0X2Rlc2MucG5nXCIpO1xufVxudGFibGUuZGF0YVRhYmxlIHRoZWFkIC5zb3J0aW5nX2FzY19kaXNhYmxlZCB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy9zb3J0X2FzY19kaXNhYmxlZC5wbmdcIik7XG59XG50YWJsZS5kYXRhVGFibGUgdGhlYWQgLnNvcnRpbmdfZGVzY19kaXNhYmxlZCB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy9zb3J0X2Rlc2NfZGlzYWJsZWQucG5nXCIpO1xufVxudGFibGUuZGF0YVRhYmxlIHRib2R5IHRyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbn1cbnRhYmxlLmRhdGFUYWJsZSB0Ym9keSB0ci5zZWxlY3RlZCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNCMEJFRDk7XG59XG50YWJsZS5kYXRhVGFibGUgdGJvZHkgdGgsXG50YWJsZS5kYXRhVGFibGUgdGJvZHkgdGQge1xuICBwYWRkaW5nOiA4cHggMTBweDtcbn1cbnRhYmxlLmRhdGFUYWJsZS5yb3ctYm9yZGVyIHRib2R5IHRoLCB0YWJsZS5kYXRhVGFibGUucm93LWJvcmRlciB0Ym9keSB0ZCwgdGFibGUuZGF0YVRhYmxlLmRpc3BsYXkgdGJvZHkgdGgsIHRhYmxlLmRhdGFUYWJsZS5kaXNwbGF5IHRib2R5IHRkIHtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNkZGQ7XG59XG50YWJsZS5kYXRhVGFibGUucm93LWJvcmRlciB0Ym9keSB0cjpmaXJzdC1jaGlsZCB0aCxcbnRhYmxlLmRhdGFUYWJsZS5yb3ctYm9yZGVyIHRib2R5IHRyOmZpcnN0LWNoaWxkIHRkLCB0YWJsZS5kYXRhVGFibGUuZGlzcGxheSB0Ym9keSB0cjpmaXJzdC1jaGlsZCB0aCxcbnRhYmxlLmRhdGFUYWJsZS5kaXNwbGF5IHRib2R5IHRyOmZpcnN0LWNoaWxkIHRkIHtcbiAgYm9yZGVyLXRvcDogbm9uZTtcbn1cbnRhYmxlLmRhdGFUYWJsZS5jZWxsLWJvcmRlciB0Ym9keSB0aCwgdGFibGUuZGF0YVRhYmxlLmNlbGwtYm9yZGVyIHRib2R5IHRkIHtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNkZGQ7XG4gIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNkZGQ7XG59XG50YWJsZS5kYXRhVGFibGUuY2VsbC1ib3JkZXIgdGJvZHkgdHIgdGg6Zmlyc3QtY2hpbGQsXG50YWJsZS5kYXRhVGFibGUuY2VsbC1ib3JkZXIgdGJvZHkgdHIgdGQ6Zmlyc3QtY2hpbGQge1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNkZGQ7XG59XG50YWJsZS5kYXRhVGFibGUuY2VsbC1ib3JkZXIgdGJvZHkgdHI6Zmlyc3QtY2hpbGQgdGgsXG50YWJsZS5kYXRhVGFibGUuY2VsbC1ib3JkZXIgdGJvZHkgdHI6Zmlyc3QtY2hpbGQgdGQge1xuICBib3JkZXItdG9wOiBub25lO1xufVxudGFibGUuZGF0YVRhYmxlLnN0cmlwZSB0Ym9keSB0ci5vZGQsIHRhYmxlLmRhdGFUYWJsZS5kaXNwbGF5IHRib2R5IHRyLm9kZCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOWY5Zjk7XG59XG50YWJsZS5kYXRhVGFibGUuc3RyaXBlIHRib2R5IHRyLm9kZC5zZWxlY3RlZCwgdGFibGUuZGF0YVRhYmxlLmRpc3BsYXkgdGJvZHkgdHIub2RkLnNlbGVjdGVkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2FjYmFkNDtcbn1cbnRhYmxlLmRhdGFUYWJsZS5ob3ZlciB0Ym9keSB0cjpob3ZlciwgdGFibGUuZGF0YVRhYmxlLmRpc3BsYXkgdGJvZHkgdHI6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjZmNmY2O1xufVxudGFibGUuZGF0YVRhYmxlLmhvdmVyIHRib2R5IHRyOmhvdmVyLnNlbGVjdGVkLCB0YWJsZS5kYXRhVGFibGUuZGlzcGxheSB0Ym9keSB0cjpob3Zlci5zZWxlY3RlZCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNhYWI3ZDE7XG59XG50YWJsZS5kYXRhVGFibGUub3JkZXItY29sdW1uIHRib2R5IHRyID4gLnNvcnRpbmdfMSxcbnRhYmxlLmRhdGFUYWJsZS5vcmRlci1jb2x1bW4gdGJvZHkgdHIgPiAuc29ydGluZ18yLFxudGFibGUuZGF0YVRhYmxlLm9yZGVyLWNvbHVtbiB0Ym9keSB0ciA+IC5zb3J0aW5nXzMsIHRhYmxlLmRhdGFUYWJsZS5kaXNwbGF5IHRib2R5IHRyID4gLnNvcnRpbmdfMSxcbnRhYmxlLmRhdGFUYWJsZS5kaXNwbGF5IHRib2R5IHRyID4gLnNvcnRpbmdfMixcbnRhYmxlLmRhdGFUYWJsZS5kaXNwbGF5IHRib2R5IHRyID4gLnNvcnRpbmdfMyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmYWZhZmE7XG59XG50YWJsZS5kYXRhVGFibGUub3JkZXItY29sdW1uIHRib2R5IHRyLnNlbGVjdGVkID4gLnNvcnRpbmdfMSxcbnRhYmxlLmRhdGFUYWJsZS5vcmRlci1jb2x1bW4gdGJvZHkgdHIuc2VsZWN0ZWQgPiAuc29ydGluZ18yLFxudGFibGUuZGF0YVRhYmxlLm9yZGVyLWNvbHVtbiB0Ym9keSB0ci5zZWxlY3RlZCA+IC5zb3J0aW5nXzMsIHRhYmxlLmRhdGFUYWJsZS5kaXNwbGF5IHRib2R5IHRyLnNlbGVjdGVkID4gLnNvcnRpbmdfMSxcbnRhYmxlLmRhdGFUYWJsZS5kaXNwbGF5IHRib2R5IHRyLnNlbGVjdGVkID4gLnNvcnRpbmdfMixcbnRhYmxlLmRhdGFUYWJsZS5kaXNwbGF5IHRib2R5IHRyLnNlbGVjdGVkID4gLnNvcnRpbmdfMyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNhY2JhZDU7XG59XG50YWJsZS5kYXRhVGFibGUuZGlzcGxheSB0Ym9keSB0ci5vZGQgPiAuc29ydGluZ18xLCB0YWJsZS5kYXRhVGFibGUub3JkZXItY29sdW1uLnN0cmlwZSB0Ym9keSB0ci5vZGQgPiAuc29ydGluZ18xIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YxZjFmMTtcbn1cbnRhYmxlLmRhdGFUYWJsZS5kaXNwbGF5IHRib2R5IHRyLm9kZCA+IC5zb3J0aW5nXzIsIHRhYmxlLmRhdGFUYWJsZS5vcmRlci1jb2x1bW4uc3RyaXBlIHRib2R5IHRyLm9kZCA+IC5zb3J0aW5nXzIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjNmM2YzO1xufVxudGFibGUuZGF0YVRhYmxlLmRpc3BsYXkgdGJvZHkgdHIub2RkID4gLnNvcnRpbmdfMywgdGFibGUuZGF0YVRhYmxlLm9yZGVyLWNvbHVtbi5zdHJpcGUgdGJvZHkgdHIub2RkID4gLnNvcnRpbmdfMyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlc21va2U7XG59XG50YWJsZS5kYXRhVGFibGUuZGlzcGxheSB0Ym9keSB0ci5vZGQuc2VsZWN0ZWQgPiAuc29ydGluZ18xLCB0YWJsZS5kYXRhVGFibGUub3JkZXItY29sdW1uLnN0cmlwZSB0Ym9keSB0ci5vZGQuc2VsZWN0ZWQgPiAuc29ydGluZ18xIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2E2YjRjZDtcbn1cbnRhYmxlLmRhdGFUYWJsZS5kaXNwbGF5IHRib2R5IHRyLm9kZC5zZWxlY3RlZCA+IC5zb3J0aW5nXzIsIHRhYmxlLmRhdGFUYWJsZS5vcmRlci1jb2x1bW4uc3RyaXBlIHRib2R5IHRyLm9kZC5zZWxlY3RlZCA+IC5zb3J0aW5nXzIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYThiNWNmO1xufVxudGFibGUuZGF0YVRhYmxlLmRpc3BsYXkgdGJvZHkgdHIub2RkLnNlbGVjdGVkID4gLnNvcnRpbmdfMywgdGFibGUuZGF0YVRhYmxlLm9yZGVyLWNvbHVtbi5zdHJpcGUgdGJvZHkgdHIub2RkLnNlbGVjdGVkID4gLnNvcnRpbmdfMyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNhOWI3ZDE7XG59XG50YWJsZS5kYXRhVGFibGUuZGlzcGxheSB0Ym9keSB0ci5ldmVuID4gLnNvcnRpbmdfMSwgdGFibGUuZGF0YVRhYmxlLm9yZGVyLWNvbHVtbi5zdHJpcGUgdGJvZHkgdHIuZXZlbiA+IC5zb3J0aW5nXzEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmFmYWZhO1xufVxudGFibGUuZGF0YVRhYmxlLmRpc3BsYXkgdGJvZHkgdHIuZXZlbiA+IC5zb3J0aW5nXzIsIHRhYmxlLmRhdGFUYWJsZS5vcmRlci1jb2x1bW4uc3RyaXBlIHRib2R5IHRyLmV2ZW4gPiAuc29ydGluZ18yIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZjZmNmYztcbn1cbnRhYmxlLmRhdGFUYWJsZS5kaXNwbGF5IHRib2R5IHRyLmV2ZW4gPiAuc29ydGluZ18zLCB0YWJsZS5kYXRhVGFibGUub3JkZXItY29sdW1uLnN0cmlwZSB0Ym9keSB0ci5ldmVuID4gLnNvcnRpbmdfMyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZWZlZmU7XG59XG50YWJsZS5kYXRhVGFibGUuZGlzcGxheSB0Ym9keSB0ci5ldmVuLnNlbGVjdGVkID4gLnNvcnRpbmdfMSwgdGFibGUuZGF0YVRhYmxlLm9yZGVyLWNvbHVtbi5zdHJpcGUgdGJvZHkgdHIuZXZlbi5zZWxlY3RlZCA+IC5zb3J0aW5nXzEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYWNiYWQ1O1xufVxudGFibGUuZGF0YVRhYmxlLmRpc3BsYXkgdGJvZHkgdHIuZXZlbi5zZWxlY3RlZCA+IC5zb3J0aW5nXzIsIHRhYmxlLmRhdGFUYWJsZS5vcmRlci1jb2x1bW4uc3RyaXBlIHRib2R5IHRyLmV2ZW4uc2VsZWN0ZWQgPiAuc29ydGluZ18yIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2FlYmNkNjtcbn1cbnRhYmxlLmRhdGFUYWJsZS5kaXNwbGF5IHRib2R5IHRyLmV2ZW4uc2VsZWN0ZWQgPiAuc29ydGluZ18zLCB0YWJsZS5kYXRhVGFibGUub3JkZXItY29sdW1uLnN0cmlwZSB0Ym9keSB0ci5ldmVuLnNlbGVjdGVkID4gLnNvcnRpbmdfMyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNhZmJkZDg7XG59XG50YWJsZS5kYXRhVGFibGUuZGlzcGxheSB0Ym9keSB0cjpob3ZlciA+IC5zb3J0aW5nXzEsIHRhYmxlLmRhdGFUYWJsZS5vcmRlci1jb2x1bW4uaG92ZXIgdGJvZHkgdHI6aG92ZXIgPiAuc29ydGluZ18xIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VhZWFlYTtcbn1cbnRhYmxlLmRhdGFUYWJsZS5kaXNwbGF5IHRib2R5IHRyOmhvdmVyID4gLnNvcnRpbmdfMiwgdGFibGUuZGF0YVRhYmxlLm9yZGVyLWNvbHVtbi5ob3ZlciB0Ym9keSB0cjpob3ZlciA+IC5zb3J0aW5nXzIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWNlY2VjO1xufVxudGFibGUuZGF0YVRhYmxlLmRpc3BsYXkgdGJvZHkgdHI6aG92ZXIgPiAuc29ydGluZ18zLCB0YWJsZS5kYXRhVGFibGUub3JkZXItY29sdW1uLmhvdmVyIHRib2R5IHRyOmhvdmVyID4gLnNvcnRpbmdfMyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlZmVmZWY7XG59XG50YWJsZS5kYXRhVGFibGUuZGlzcGxheSB0Ym9keSB0cjpob3Zlci5zZWxlY3RlZCA+IC5zb3J0aW5nXzEsIHRhYmxlLmRhdGFUYWJsZS5vcmRlci1jb2x1bW4uaG92ZXIgdGJvZHkgdHI6aG92ZXIuc2VsZWN0ZWQgPiAuc29ydGluZ18xIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2EyYWVjNztcbn1cbnRhYmxlLmRhdGFUYWJsZS5kaXNwbGF5IHRib2R5IHRyOmhvdmVyLnNlbGVjdGVkID4gLnNvcnRpbmdfMiwgdGFibGUuZGF0YVRhYmxlLm9yZGVyLWNvbHVtbi5ob3ZlciB0Ym9keSB0cjpob3Zlci5zZWxlY3RlZCA+IC5zb3J0aW5nXzIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYTNiMGM5O1xufVxudGFibGUuZGF0YVRhYmxlLmRpc3BsYXkgdGJvZHkgdHI6aG92ZXIuc2VsZWN0ZWQgPiAuc29ydGluZ18zLCB0YWJsZS5kYXRhVGFibGUub3JkZXItY29sdW1uLmhvdmVyIHRib2R5IHRyOmhvdmVyLnNlbGVjdGVkID4gLnNvcnRpbmdfMyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNhNWIyY2I7XG59XG50YWJsZS5kYXRhVGFibGUubm8tZm9vdGVyIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICMxMTE7XG59XG50YWJsZS5kYXRhVGFibGUubm93cmFwIHRoLCB0YWJsZS5kYXRhVGFibGUubm93cmFwIHRkIHtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cbnRhYmxlLmRhdGFUYWJsZS5jb21wYWN0IHRoZWFkIHRoLFxudGFibGUuZGF0YVRhYmxlLmNvbXBhY3QgdGhlYWQgdGQge1xuICBwYWRkaW5nOiA0cHggMTdweCA0cHggNHB4O1xufVxudGFibGUuZGF0YVRhYmxlLmNvbXBhY3QgdGZvb3QgdGgsXG50YWJsZS5kYXRhVGFibGUuY29tcGFjdCB0Zm9vdCB0ZCB7XG4gIHBhZGRpbmc6IDRweDtcbn1cbnRhYmxlLmRhdGFUYWJsZS5jb21wYWN0IHRib2R5IHRoLFxudGFibGUuZGF0YVRhYmxlLmNvbXBhY3QgdGJvZHkgdGQge1xuICBwYWRkaW5nOiA0cHg7XG59XG50YWJsZS5kYXRhVGFibGUgdGguZHQtbGVmdCxcbnRhYmxlLmRhdGFUYWJsZSB0ZC5kdC1sZWZ0IHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cbnRhYmxlLmRhdGFUYWJsZSB0aC5kdC1jZW50ZXIsXG50YWJsZS5kYXRhVGFibGUgdGQuZHQtY2VudGVyLFxudGFibGUuZGF0YVRhYmxlIHRkLmRhdGFUYWJsZXNfZW1wdHkge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG50YWJsZS5kYXRhVGFibGUgdGguZHQtcmlnaHQsXG50YWJsZS5kYXRhVGFibGUgdGQuZHQtcmlnaHQge1xuICB0ZXh0LWFsaWduOiByaWdodDtcbn1cbnRhYmxlLmRhdGFUYWJsZSB0aC5kdC1qdXN0aWZ5LFxudGFibGUuZGF0YVRhYmxlIHRkLmR0LWp1c3RpZnkge1xuICB0ZXh0LWFsaWduOiBqdXN0aWZ5O1xufVxudGFibGUuZGF0YVRhYmxlIHRoLmR0LW5vd3JhcCxcbnRhYmxlLmRhdGFUYWJsZSB0ZC5kdC1ub3dyYXAge1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxudGFibGUuZGF0YVRhYmxlIHRoZWFkIHRoLmR0LWhlYWQtbGVmdCxcbnRhYmxlLmRhdGFUYWJsZSB0aGVhZCB0ZC5kdC1oZWFkLWxlZnQsXG50YWJsZS5kYXRhVGFibGUgdGZvb3QgdGguZHQtaGVhZC1sZWZ0LFxudGFibGUuZGF0YVRhYmxlIHRmb290IHRkLmR0LWhlYWQtbGVmdCB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG50YWJsZS5kYXRhVGFibGUgdGhlYWQgdGguZHQtaGVhZC1jZW50ZXIsXG50YWJsZS5kYXRhVGFibGUgdGhlYWQgdGQuZHQtaGVhZC1jZW50ZXIsXG50YWJsZS5kYXRhVGFibGUgdGZvb3QgdGguZHQtaGVhZC1jZW50ZXIsXG50YWJsZS5kYXRhVGFibGUgdGZvb3QgdGQuZHQtaGVhZC1jZW50ZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG50YWJsZS5kYXRhVGFibGUgdGhlYWQgdGguZHQtaGVhZC1yaWdodCxcbnRhYmxlLmRhdGFUYWJsZSB0aGVhZCB0ZC5kdC1oZWFkLXJpZ2h0LFxudGFibGUuZGF0YVRhYmxlIHRmb290IHRoLmR0LWhlYWQtcmlnaHQsXG50YWJsZS5kYXRhVGFibGUgdGZvb3QgdGQuZHQtaGVhZC1yaWdodCB7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxudGFibGUuZGF0YVRhYmxlIHRoZWFkIHRoLmR0LWhlYWQtanVzdGlmeSxcbnRhYmxlLmRhdGFUYWJsZSB0aGVhZCB0ZC5kdC1oZWFkLWp1c3RpZnksXG50YWJsZS5kYXRhVGFibGUgdGZvb3QgdGguZHQtaGVhZC1qdXN0aWZ5LFxudGFibGUuZGF0YVRhYmxlIHRmb290IHRkLmR0LWhlYWQtanVzdGlmeSB7XG4gIHRleHQtYWxpZ246IGp1c3RpZnk7XG59XG50YWJsZS5kYXRhVGFibGUgdGhlYWQgdGguZHQtaGVhZC1ub3dyYXAsXG50YWJsZS5kYXRhVGFibGUgdGhlYWQgdGQuZHQtaGVhZC1ub3dyYXAsXG50YWJsZS5kYXRhVGFibGUgdGZvb3QgdGguZHQtaGVhZC1ub3dyYXAsXG50YWJsZS5kYXRhVGFibGUgdGZvb3QgdGQuZHQtaGVhZC1ub3dyYXAge1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxudGFibGUuZGF0YVRhYmxlIHRib2R5IHRoLmR0LWJvZHktbGVmdCxcbnRhYmxlLmRhdGFUYWJsZSB0Ym9keSB0ZC5kdC1ib2R5LWxlZnQge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxudGFibGUuZGF0YVRhYmxlIHRib2R5IHRoLmR0LWJvZHktY2VudGVyLFxudGFibGUuZGF0YVRhYmxlIHRib2R5IHRkLmR0LWJvZHktY2VudGVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxudGFibGUuZGF0YVRhYmxlIHRib2R5IHRoLmR0LWJvZHktcmlnaHQsXG50YWJsZS5kYXRhVGFibGUgdGJvZHkgdGQuZHQtYm9keS1yaWdodCB7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxudGFibGUuZGF0YVRhYmxlIHRib2R5IHRoLmR0LWJvZHktanVzdGlmeSxcbnRhYmxlLmRhdGFUYWJsZSB0Ym9keSB0ZC5kdC1ib2R5LWp1c3RpZnkge1xuICB0ZXh0LWFsaWduOiBqdXN0aWZ5O1xufVxudGFibGUuZGF0YVRhYmxlIHRib2R5IHRoLmR0LWJvZHktbm93cmFwLFxudGFibGUuZGF0YVRhYmxlIHRib2R5IHRkLmR0LWJvZHktbm93cmFwIHtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxudGFibGUuZGF0YVRhYmxlLFxudGFibGUuZGF0YVRhYmxlIHRoLFxudGFibGUuZGF0YVRhYmxlIHRkIHtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG59XG5cbi8qXG4gKiBDb250cm9sIGZlYXR1cmUgbGF5b3V0XG4gKi9cbi5kYXRhVGFibGVzX3dyYXBwZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGNsZWFyOiBib3RoO1xuICAqem9vbTogMTtcbiAgem9vbTogMTtcbn1cbi5kYXRhVGFibGVzX3dyYXBwZXIgLmRhdGFUYWJsZXNfbGVuZ3RoIHtcbiAgZmxvYXQ6IGxlZnQ7XG59XG4uZGF0YVRhYmxlc193cmFwcGVyIC5kYXRhVGFibGVzX2ZpbHRlciB7XG4gIGZsb2F0OiByaWdodDtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG4uZGF0YVRhYmxlc193cmFwcGVyIC5kYXRhVGFibGVzX2ZpbHRlciBpbnB1dCB7XG4gIG1hcmdpbi1sZWZ0OiAwLjVlbTtcbn1cbi5kYXRhVGFibGVzX3dyYXBwZXIgLmRhdGFUYWJsZXNfaW5mbyB7XG4gIGNsZWFyOiBib3RoO1xuICBmbG9hdDogbGVmdDtcbiAgcGFkZGluZy10b3A6IDAuNzU1ZW07XG59XG4uZGF0YVRhYmxlc193cmFwcGVyIC5kYXRhVGFibGVzX3BhZ2luYXRlIHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICB0ZXh0LWFsaWduOiByaWdodDtcbiAgcGFkZGluZy10b3A6IDAuMjVlbTtcbn1cbi5kYXRhVGFibGVzX3dyYXBwZXIgLmRhdGFUYWJsZXNfcGFnaW5hdGUgLnBhZ2luYXRlX2J1dHRvbiB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWluLXdpZHRoOiAxLjVlbTtcbiAgcGFkZGluZzogMC41ZW0gMWVtO1xuICBtYXJnaW4tbGVmdDogMnB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gICpjdXJzb3I6IGhhbmQ7XG4gIGNvbG9yOiAjMzMzICFpbXBvcnRhbnQ7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmFkaXVzOiAycHg7XG59XG4uZGF0YVRhYmxlc193cmFwcGVyIC5kYXRhVGFibGVzX3BhZ2luYXRlIC5wYWdpbmF0ZV9idXR0b24uY3VycmVudCwgLmRhdGFUYWJsZXNfd3JhcHBlciAuZGF0YVRhYmxlc19wYWdpbmF0ZSAucGFnaW5hdGVfYnV0dG9uLmN1cnJlbnQ6aG92ZXIge1xuICBjb2xvcjogIzMzMyAhaW1wb3J0YW50O1xuICBib3JkZXI6IDFweCBzb2xpZCAjOTc5Nzk3O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgYmFja2dyb3VuZDogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIGxlZnQgdG9wLCBsZWZ0IGJvdHRvbSwgY29sb3Itc3RvcCgwJSwgd2hpdGUpLCBjb2xvci1zdG9wKDEwMCUsICNkY2RjZGMpKTtcbiAgLyogQ2hyb21lLFNhZmFyaTQrICovXG4gIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgd2hpdGUgMCUsICNkY2RjZGMgMTAwJSk7XG4gIC8qIENocm9tZTEwKyxTYWZhcmk1LjErICovXG4gIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgd2hpdGUgMCUsICNkY2RjZGMgMTAwJSk7XG4gIC8qIEZGMy42KyAqL1xuICBiYWNrZ3JvdW5kOiAtbXMtbGluZWFyLWdyYWRpZW50KHRvcCwgd2hpdGUgMCUsICNkY2RjZGMgMTAwJSk7XG4gIC8qIElFMTArICovXG4gIGJhY2tncm91bmQ6IC1vLWxpbmVhci1ncmFkaWVudCh0b3AsIHdoaXRlIDAlLCAjZGNkY2RjIDEwMCUpO1xuICAvKiBPcGVyYSAxMS4xMCsgKi9cbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgd2hpdGUgMCUsICNkY2RjZGMgMTAwJSk7XG4gIC8qIFczQyAqL1xufVxuLmRhdGFUYWJsZXNfd3JhcHBlciAuZGF0YVRhYmxlc19wYWdpbmF0ZSAucGFnaW5hdGVfYnV0dG9uLmRpc2FibGVkLCAuZGF0YVRhYmxlc193cmFwcGVyIC5kYXRhVGFibGVzX3BhZ2luYXRlIC5wYWdpbmF0ZV9idXR0b24uZGlzYWJsZWQ6aG92ZXIsIC5kYXRhVGFibGVzX3dyYXBwZXIgLmRhdGFUYWJsZXNfcGFnaW5hdGUgLnBhZ2luYXRlX2J1dHRvbi5kaXNhYmxlZDphY3RpdmUge1xuICBjdXJzb3I6IGRlZmF1bHQ7XG4gIGNvbG9yOiAjNjY2ICFpbXBvcnRhbnQ7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cbi5kYXRhVGFibGVzX3dyYXBwZXIgLmRhdGFUYWJsZXNfcGFnaW5hdGUgLnBhZ2luYXRlX2J1dHRvbjpob3ZlciB7XG4gIGNvbG9yOiB3aGl0ZSAhaW1wb3J0YW50O1xuICBib3JkZXI6IDFweCBzb2xpZCAjMTExO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTg1ODU4O1xuICBiYWNrZ3JvdW5kOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgbGVmdCB0b3AsIGxlZnQgYm90dG9tLCBjb2xvci1zdG9wKDAlLCAjNTg1ODU4KSwgY29sb3Itc3RvcCgxMDAlLCAjMTExKSk7XG4gIC8qIENocm9tZSxTYWZhcmk0KyAqL1xuICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsICM1ODU4NTggMCUsICMxMTEgMTAwJSk7XG4gIC8qIENocm9tZTEwKyxTYWZhcmk1LjErICovXG4gIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgIzU4NTg1OCAwJSwgIzExMSAxMDAlKTtcbiAgLyogRkYzLjYrICovXG4gIGJhY2tncm91bmQ6IC1tcy1saW5lYXItZ3JhZGllbnQodG9wLCAjNTg1ODU4IDAlLCAjMTExIDEwMCUpO1xuICAvKiBJRTEwKyAqL1xuICBiYWNrZ3JvdW5kOiAtby1saW5lYXItZ3JhZGllbnQodG9wLCAjNTg1ODU4IDAlLCAjMTExIDEwMCUpO1xuICAvKiBPcGVyYSAxMS4xMCsgKi9cbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgIzU4NTg1OCAwJSwgIzExMSAxMDAlKTtcbiAgLyogVzNDICovXG59XG4uZGF0YVRhYmxlc193cmFwcGVyIC5kYXRhVGFibGVzX3BhZ2luYXRlIC5wYWdpbmF0ZV9idXR0b246YWN0aXZlIHtcbiAgb3V0bGluZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzJiMmIyYjtcbiAgYmFja2dyb3VuZDogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIGxlZnQgdG9wLCBsZWZ0IGJvdHRvbSwgY29sb3Itc3RvcCgwJSwgIzJiMmIyYiksIGNvbG9yLXN0b3AoMTAwJSwgIzBjMGMwYykpO1xuICAvKiBDaHJvbWUsU2FmYXJpNCsgKi9cbiAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCAjMmIyYjJiIDAlLCAjMGMwYzBjIDEwMCUpO1xuICAvKiBDaHJvbWUxMCssU2FmYXJpNS4xKyAqL1xuICBiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudCh0b3AsICMyYjJiMmIgMCUsICMwYzBjMGMgMTAwJSk7XG4gIC8qIEZGMy42KyAqL1xuICBiYWNrZ3JvdW5kOiAtbXMtbGluZWFyLWdyYWRpZW50KHRvcCwgIzJiMmIyYiAwJSwgIzBjMGMwYyAxMDAlKTtcbiAgLyogSUUxMCsgKi9cbiAgYmFja2dyb3VuZDogLW8tbGluZWFyLWdyYWRpZW50KHRvcCwgIzJiMmIyYiAwJSwgIzBjMGMwYyAxMDAlKTtcbiAgLyogT3BlcmEgMTEuMTArICovXG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICMyYjJiMmIgMCUsICMwYzBjMGMgMTAwJSk7XG4gIC8qIFczQyAqL1xuICBib3gtc2hhZG93OiBpbnNldCAwIDAgM3B4ICMxMTE7XG59XG4uZGF0YVRhYmxlc193cmFwcGVyIC5kYXRhVGFibGVzX3BhZ2luYXRlIC5lbGxpcHNpcyB7XG4gIHBhZGRpbmc6IDAgMWVtO1xufVxuLmRhdGFUYWJsZXNfd3JhcHBlciAuZGF0YVRhYmxlc19wcm9jZXNzaW5nIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiA0MHB4O1xuICBtYXJnaW4tbGVmdDogLTUwJTtcbiAgbWFyZ2luLXRvcDogLTI1cHg7XG4gIHBhZGRpbmctdG9wOiAyMHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtc2l6ZTogMS4yZW07XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICBiYWNrZ3JvdW5kOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgbGVmdCB0b3AsIHJpZ2h0IHRvcCwgY29sb3Itc3RvcCgwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSksIGNvbG9yLXN0b3AoMjUlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSkpLCBjb2xvci1zdG9wKDc1JSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpKSwgY29sb3Itc3RvcCgxMDAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApKSk7XG4gIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KGxlZnQsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgMCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45KSAyNSUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45KSA3NSUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgMTAwJSk7XG4gIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KGxlZnQsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgMCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45KSAyNSUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45KSA3NSUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgMTAwJSk7XG4gIGJhY2tncm91bmQ6IC1tcy1saW5lYXItZ3JhZGllbnQobGVmdCwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSAwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpIDI1JSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpIDc1JSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSAxMDAlKTtcbiAgYmFja2dyb3VuZDogLW8tbGluZWFyLWdyYWRpZW50KGxlZnQsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgMCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45KSAyNSUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45KSA3NSUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgMTAwJSk7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSAwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpIDI1JSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpIDc1JSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSAxMDAlKTtcbn1cbi5kYXRhVGFibGVzX3dyYXBwZXIgLmRhdGFUYWJsZXNfbGVuZ3RoLFxuLmRhdGFUYWJsZXNfd3JhcHBlciAuZGF0YVRhYmxlc19maWx0ZXIsXG4uZGF0YVRhYmxlc193cmFwcGVyIC5kYXRhVGFibGVzX2luZm8sXG4uZGF0YVRhYmxlc193cmFwcGVyIC5kYXRhVGFibGVzX3Byb2Nlc3NpbmcsXG4uZGF0YVRhYmxlc193cmFwcGVyIC5kYXRhVGFibGVzX3BhZ2luYXRlIHtcbiAgY29sb3I6ICMzMzM7XG59XG4uZGF0YVRhYmxlc193cmFwcGVyIC5kYXRhVGFibGVzX3Njcm9sbCB7XG4gIGNsZWFyOiBib3RoO1xufVxuLmRhdGFUYWJsZXNfd3JhcHBlciAuZGF0YVRhYmxlc19zY3JvbGwgZGl2LmRhdGFUYWJsZXNfc2Nyb2xsQm9keSB7XG4gICptYXJnaW4tdG9wOiAtMXB4O1xuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG59XG4uZGF0YVRhYmxlc193cmFwcGVyIC5kYXRhVGFibGVzX3Njcm9sbCBkaXYuZGF0YVRhYmxlc19zY3JvbGxCb2R5ID4gdGFibGUgPiB0aGVhZCA+IHRyID4gdGgsIC5kYXRhVGFibGVzX3dyYXBwZXIgLmRhdGFUYWJsZXNfc2Nyb2xsIGRpdi5kYXRhVGFibGVzX3Njcm9sbEJvZHkgPiB0YWJsZSA+IHRoZWFkID4gdHIgPiB0ZCwgLmRhdGFUYWJsZXNfd3JhcHBlciAuZGF0YVRhYmxlc19zY3JvbGwgZGl2LmRhdGFUYWJsZXNfc2Nyb2xsQm9keSA+IHRhYmxlID4gdGJvZHkgPiB0ciA+IHRoLCAuZGF0YVRhYmxlc193cmFwcGVyIC5kYXRhVGFibGVzX3Njcm9sbCBkaXYuZGF0YVRhYmxlc19zY3JvbGxCb2R5ID4gdGFibGUgPiB0Ym9keSA+IHRyID4gdGQge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuLmRhdGFUYWJsZXNfd3JhcHBlciAuZGF0YVRhYmxlc19zY3JvbGwgZGl2LmRhdGFUYWJsZXNfc2Nyb2xsQm9keSA+IHRhYmxlID4gdGhlYWQgPiB0ciA+IHRoID4gZGl2LmRhdGFUYWJsZXNfc2l6aW5nLFxuLmRhdGFUYWJsZXNfd3JhcHBlciAuZGF0YVRhYmxlc19zY3JvbGwgZGl2LmRhdGFUYWJsZXNfc2Nyb2xsQm9keSA+IHRhYmxlID4gdGhlYWQgPiB0ciA+IHRkID4gZGl2LmRhdGFUYWJsZXNfc2l6aW5nLCAuZGF0YVRhYmxlc193cmFwcGVyIC5kYXRhVGFibGVzX3Njcm9sbCBkaXYuZGF0YVRhYmxlc19zY3JvbGxCb2R5ID4gdGFibGUgPiB0Ym9keSA+IHRyID4gdGggPiBkaXYuZGF0YVRhYmxlc19zaXppbmcsXG4uZGF0YVRhYmxlc193cmFwcGVyIC5kYXRhVGFibGVzX3Njcm9sbCBkaXYuZGF0YVRhYmxlc19zY3JvbGxCb2R5ID4gdGFibGUgPiB0Ym9keSA+IHRyID4gdGQgPiBkaXYuZGF0YVRhYmxlc19zaXppbmcge1xuICBoZWlnaHQ6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG59XG4uZGF0YVRhYmxlc193cmFwcGVyLm5vLWZvb3RlciAuZGF0YVRhYmxlc19zY3JvbGxCb2R5IHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICMxMTE7XG59XG4uZGF0YVRhYmxlc193cmFwcGVyLm5vLWZvb3RlciBkaXYuZGF0YVRhYmxlc19zY3JvbGxIZWFkIHRhYmxlLmRhdGFUYWJsZSxcbi5kYXRhVGFibGVzX3dyYXBwZXIubm8tZm9vdGVyIGRpdi5kYXRhVGFibGVzX3Njcm9sbEJvZHkgPiB0YWJsZSB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG59XG4uZGF0YVRhYmxlc193cmFwcGVyOmFmdGVyIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBkaXNwbGF5OiBibG9jaztcbiAgY29udGVudDogXCJcIjtcbiAgY2xlYXI6IGJvdGg7XG4gIGhlaWdodDogMDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmRhdGFUYWJsZXNfd3JhcHBlciAuZGF0YVRhYmxlc19pbmZvLFxuICAuZGF0YVRhYmxlc193cmFwcGVyIC5kYXRhVGFibGVzX3BhZ2luYXRlIHtcbiAgICBmbG9hdDogbm9uZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbiAgLmRhdGFUYWJsZXNfd3JhcHBlciAuZGF0YVRhYmxlc19wYWdpbmF0ZSB7XG4gICAgbWFyZ2luLXRvcDogMC41ZW07XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY0MHB4KSB7XG4gIC5kYXRhVGFibGVzX3dyYXBwZXIgLmRhdGFUYWJsZXNfbGVuZ3RoLFxuICAuZGF0YVRhYmxlc193cmFwcGVyIC5kYXRhVGFibGVzX2ZpbHRlciB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG4gIC5kYXRhVGFibGVzX3dyYXBwZXIgLmRhdGFUYWJsZXNfZmlsdGVyIHtcbiAgICBtYXJnaW4tdG9wOiAwLjVlbTtcbiAgfVxufVxuIiwiQGltcG9ydCB1cmwoJ2h0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzMj9mYW1pbHk9Tm90bytTYW5zOndnaHRANDAwOzcwMCZkaXNwbGF5PXN3YXAnKTtcbiRmb250LWhhbDogJ05vdG8gU2FucycsIHNhbnMtc2VyaWY7XG4kZm9udC1hcmlhbDogJ0FyaWFsJztcblxuLyoqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgQ09MT1JTXG4qKioqKioqKioqKioqKioqKioqKioqL1xuJHByaW1hcnktYmx1ZSA6ICMwMDAwNWM7XG4kcHJpbWFyeS1ibHVlLWhvdmVyIDogIzJDMUM5NztcbiRwcmltYXJ5LWJsdWUtZGlzYWJsZWQgOiAjQUNBOEM0O1xuJHByaW1hcnktYmx1ZS1saWdodCA6ICNlZGVjZjE7XG5cbiRwcmltYXJ5LWJsdWUxIDojMzM3QUI3O1xuJHByaW1hcnktYmx1ZTEtaG92ZXIgOiMwOTU3OUE7XG4kcHJpbWFyeS1ibHVlMS1kaXNhYmxlZCA6Izc1OUZDQztcblxuJHByaW1hcnktYmx1ZTIgOiNCOERDRkE7XG5cbiRwcmltYXJ5LWJsdWUzIDojOTBBNEI2O1xuJHByaW1hcnktYmx1ZTMtaG92ZXIgOiM2NDc1ODU7XG5cbiRwcmltYXJ5LW9yYW5nZTogI2ZmNDYwMDtcbiRwcmltYXJ5LW9yYW5nZS1ob3ZlcjogI0UyMzcwMDtcbiRwcmltYXJ5LW9yYW5nZS1kaXNhYmxlZDogI0ZFODE1ODtcbiRsaWdodC1vcmFuZ2U6ICNmZmVkZTY7XG4keGxpZ2h0LW9yYW5nZTogI2ZmZmRmZDtcblxuJHByaW1hcnktYnJvd246ICM4MjZCNkI7XG5cbiRzZWNvbmRhcnktZXJyb3IgOiAjQjk0QTQ4O1xuJHNlY29uZGFyeS1lcnJvci1ob3ZlciA6ICNCMzJFMkM7XG4kc2Vjb25kYXJ5LWVycm9yLWxpZ2h0IDogI0YxRDFENDtcbiRzZWNvbmRhcnktZXJyb3ItZXh0cmEtbGlnaHQgOiAjZjJkZWRlO1xuJHNlY29uZGFyeS1lcnJvci1iZyA6ICNmN2ViZWE7XG5cbiRzZWNvbmRhcnktc3VjY2VzcyA6ICM0Njg4NDc7XG4kc2Vjb25kYXJ5LXN1Y2Nlc3MtbGlnaHQgOiAjRDdFQkNFO1xuJHNlY29uZGFyeS1zdWNjZXNzLWV4dHJhLWxpZ2h0IDogI2RmZjBkODtcblxuJHNlY29uZGFyeS1pbmZvOiAjNDU3QUE1O1xuJHNlY29uZGFyeS1pbmZvLWxpZ2h0OiAjQ0NFOEY0O1xuXG4kc2Vjb25kYXJ5LXdhcm5pbmc6ICNBQThGNTI7XG4kc2Vjb25kYXJ5LXdhcm5pbmctbGlnaHQgOiNGOUYyQ0M7XG4kc2Vjb25kYXJ5LXdhcm5pbmctZXh0cmEtbGlnaHQgOiNmY2Y4ZTM7XG5cbiRwdXJwbGUtZGFya2VyOiAjNUU1QjcyO1xuJHB1cnBsZS1kYXJrIDogIzc1NzA5NDtcbiRwdXJwbGU6ICM4NjgzOUQ7XG4kcHVycGxlLWxpZ2h0IDogIzc5NzY3NjtcbiRwdXJwbGUtZXh0cmEtbGlnaHQ6ICNFRkVFRjM7XG5cbiRkYXJrYmx1ZTogIzBjMDUzYTtcblxuJHByaXZpbGVnZS1idXR0b246ICM0OTU1NzI7XG4kdG9vbHMtc29ydDogIzEyNEI4OTtcbiRib3gtc2hhZG93OiAjMDAwMDAwMjk7XG4kc2hlYWRlcjogI0U5RURGMDtcbiRob3ZlcjogI0VFRjJGNjtcblxuLyogZWNoZWxsZSBkZSBncmlzICovXG5cbiRibGFjazogIzAwMDAwMDtcbiRncmF5LTM3OiAjMzczNzM3O1xuJGdyYXktNjQ6ICM2NDY0NjQ7XG4kZ3JheS03MDogIzcwNzA3MDtcbiRncmF5LTk3OiAjOTc5Nzk3O1xuJGdyYXktYTI6ICNhMmEyYTI7XG4kZ3JheS1iNTogI2I1YjViNTtcbiRncmF5LWI5OiAjYjliOWI5O1xuJGdyYXktYzI6ICNjMmMyYzI7XG4kZ3JheS1jNjogI2M2YzZjNjtcbiRncmF5LWM4OiAjYzhjOGM4O1xuJGdyYXktY2E6ICNjYWNhY2E7XG4kZ3JheS1jZTogI2NlY2VjZTtcbiRncmF5LWRlOiAjZGVkZWRlO1xuJGdyYXktZTg6ICNlOGU4ZTg7XG4kZ3JheS1lNjogI2U2ZTZlNjtcbiRncmF5LWVjOiAjZWNlY2VjO1xuJGdyYXktZWU6ICNlZWVlZWU7XG4kZ3JheS1lZjogI2VmZWZlZjtcbiRncmF5LWYyOiAjZjJmMmYyO1xuJGdyYXktZjQ6ICNmNGY0ZjQ7XG4kZ3JheS1mNTogI2Y1ZjVmNTtcbiRncmF5LWY2OiAjZjZmNmY2O1xuJGdyYXktZmE6ICNmYWZhZmE7XG4kd2hpdGU6ICNmZmZmZmY7XG5cbi8qIFNoZXJwYSAqL1xuJGdyZWVuLXNoZXJwYSA6ICMyMUE2NkY7XG4kZ3JlZW4tc2hlcnBhLWJnIDogI2Y4ZmNmYjtcblxuJHVua25vd24tc2hlcnBhIDogIzZiNzE2ZjtcblxuLyogT1JDSUQgKi9cbiRncmVlbi1vcmNpZCA6ICNhNmNlMzk7XG5cbi8qIGFyWGl2ICovXG4kcmVkLWFyeGl2OiAjYjMxYjFiO1xuXG4kcmVkLWNvbnRhY3Q6ICNkMjM1MmM7XG4kYmx1ZS1mYWNlYm9vazogIzJDNDA4RDtcbiRibHVlLXR3aXR0ZXI6ICM0Mjk5RUQ7XG4kYmx1ZS1saW5rZWRpbjogIzBlNzBhMTtcblxuXG5cbi8qKioqKioqKioqKioqKioqKioqKioqXG4gICBUQUlMTEUgREVTIEZPTlRTXG4qKioqKioqKioqKioqKioqKioqKioqL1xuJHNpemUtbWludXM6IDAuNjg3NXJlbSA7XG4kc2l6ZS14c21hbGw6IDAuN3JlbSA7XG4kc2l6ZS1zbWFsbDogMC44NXJlbTtcbiRzaXplLXJlZ3VsYXI6IDAuOXJlbSA7XG4kc2l6ZS1sYXJnZTogMS4xNXJlbSA7XG4kc2l6ZS14bDogMS41cmVtIDtcbiRzaXplLXh4bDogMi4xMjVyZW0gO1xuJHNpemUteHh4bDogMi41cmVtIDtcbiRzaXplLWJpZzogM3JlbTtcbiRzaXplLWV4dHJhOiAzLjVyZW07IiwiLyoqKioqKioqKioqKioqKioqKioqKipcbiAgIEZPTlQgQ09MT1IgQU5EIFdFSUdIVFxuKioqKioqKioqKioqKioqKioqKioqKi9cbi5jb2xvci1tYWpvci1jb2xvciwgLmNvbG9yLW1ham9yLWNvbG9yIGEge1xuICBjb2xvcjogJHByaW1hcnktYmx1ZSAhaW1wb3J0YW50O1xufVxuLmNvbG9yLXNoZWFkZXIge1xuICBjb2xvcjogJHNoZWFkZXI7XG59XG4uY29sb3Itd2hpdGV7XG4gIGNvbG9yOiAkd2hpdGU7XG59XG4uY29sb3ItYmxhY2t7XG4gIGNvbG9yOiAkYmxhY2s7XG59XG4uaGFsLWljb24uZGlzYWJsZWQsIC5oYWwtaWNvbi5kaXNhYmxlZDpiZWZvcmV7XG4gIGNvbG9yOiAkZ3JheS1jYTtcbn1cbi5yZWQsIC5yZWQ6YmVmb3Jle1xuICBjb2xvcjogJHNlY29uZGFyeS1lcnJvciAhaW1wb3J0YW50O1xufVxuLmdyZWVuLCAuZ3JlZW46YmVmb3Jle1xuICBjb2xvcjogJHNlY29uZGFyeS1zdWNjZXNzICFpbXBvcnRhbnQ7XG59XG4uY29sb3Itb3JjaWR7XG4gIGNvbG9yOiAkZ3JlZW4tb3JjaWQ7XG59XG5cbi5kZXBvc2l0LXR5cGUge1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cbi8qIHR5cGUgZGVwb3NpdCAqL1xuLmRlcG9zaXQtc3RhdHVzIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG4uZGVwb3NpdC1zdGF0dXMuc3RhdHVzLTExe1xuICBjb2xvcjogJHNlY29uZGFyeS1zdWNjZXNzO1xufVxuLmRlcG9zaXQtc3RhdHVzLnN0YXR1cy0wLCAuZGVwb3NpdC1zdGF0dXMuc3RhdHVzLTksLmRlcG9zaXQtc3RhdHVzLnN0YXR1cy0xMCx7XG4gIGNvbG9yOiAkcHJpbWFyeS1vcmFuZ2U7XG59XG4uZGVwb3NpdC1zdGF0dXMuc3RhdHVzLTF7XG4gIGNvbG9yOiAkcHJpbWFyeS1ibHVlMTtcbn1cbi5kZXBvc2l0LXN0YXR1cy5zdGF0dXMtMntcbiAgY29sb3I6ICRwcmltYXJ5LW9yYW5nZTtcbn1cblxuLnRvb2xzLWNvbG9ye1xuICBjb2xvcjogJHRvb2xzLXNvcnQ7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBmb250LXNpemU6ICRzaXplLXNtYWxsO1xufVxuLnNlY29uZC1jb2xvcntcbiAgY29sb3I6ICRwcmltYXJ5LWJsdWUxICFpbXBvcnRhbnQ7XG59XG4uaWNvbi1sYXJnZSwgLnRleHQtbGFyZ2Uge1xuICBmb250LXNpemU6ICRzaXplLWxhcmdlO1xufVxuLnNpemUtcmVndWxhciB7XG4gIGZvbnQtc2l6ZTogJHNpemUtcmVndWxhciAhaW1wb3J0YW50O1xufVxuLnRleHQtYmlnIHtcbiAgZm9udC1zaXplOiAkc2l6ZS1iaWc7XG59XG4udGV4dC14bHtcbiAgZm9udC1zaXplOiAkc2l6ZS14bDtcbn1cbi50ZXh0LXh4bHtcbiAgZm9udC1zaXplOiAkc2l6ZS14eGw7XG59XG4udGV4dC14eHhsIHtcbiAgZm9udC1zaXplOiAkc2l6ZS14eHhsO1xufVxuLnRleHQtc21hbGx7XG4gIGZvbnQtc2l6ZTogJHNpemUtc21hbGw7XG59XG4udGV4dC14c21hbGx7XG4gIGZvbnQtc2l6ZTogJHNpemUteHNtYWxsO1xufVxuLnRleHQtb25le1xuICBmb250LXNpemU6IDFyZW07XG59XG4uc3Ryb25ne1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cbi5sZWZ0LXRleHR7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG4uY2VudGVyLXRleHR7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi5nby1iYWNre1xuICBjb2xvcjogJHByaW1hcnktYmx1ZTE7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuLmljb24ge1xuICB3aWR0aDogMjBweDtcbn1cbi5yb3VuZC1pY29ue1xuICBmb250LXNpemU6IDJyZW07XG4gIGNvbG9yOiAkd2hpdGU7XG4gIGJvcmRlci1yYWRpdXM6IDE4MHB4O1xuICBwYWRkaW5nOiAzMHB4O1xuICBtYXJnaW46IGF1dG87XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqXG4gICAgQk9SREVSIEFORCBMSVNUXG4qKioqKioqKioqKioqKioqKioqKioqL1xuLmJvcmRlci1kYXJrIHtcbiAgYm9yZGVyLWNvbG9yOiAkZ3JheS03MCAhaW1wb3J0YW50O1xufVxuLmJvcmRlci0ze1xuICBib3JkZXI6IDNweCBzb2xpZCAkZ3JheS1lODtcbn1cbi5ib3JkZXItYnRte1xuICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRncmF5LWU4O1xufVxuLm5vLXN0eWxlLWxpc3R7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqXG4gICBCQUNLR1JPVU5ELUNPTE9SXG4qKioqKioqKioqKioqKioqKioqKioqL1xuLnZhbGlkLWJnLCAuc3VjY2Vzcy1iZ3tcbiAgYmFja2dyb3VuZC1jb2xvcjogJHNlY29uZGFyeS1zdWNjZXNzO1xufVxuLndhcm5pbmctYmcsIC5kYW5nZXItYmd7XG4gIGJhY2tncm91bmQtY29sb3I6ICRzZWNvbmRhcnktZXJyb3I7XG59XG4uYmdjb2xvci1zZWNvbmQsIGluZm8tYmd7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWJsdWUxICFpbXBvcnRhbnQ7XG59XG4udWktbWVudSBhLnVpLW1lbnUtaXRlbS13cmFwcGVye1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi51aS1hdXRvY29tcGxldGUudWktZnJvbnQuY29sb3JMaXN0e1xuICAudmFsaWQsIC5vbGQsIC5pbmNvbWluZyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogMCAwIDVweCAwO1xuICAgIGRse1xuICAgICAgbWFyZ2luOiAwO1xuICAgIH1cbiAgfVxuXG4gIC52YWxpZCwgLnZhbGlkIGRse1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRzZWNvbmRhcnktc3VjY2Vzcy1leHRyYS1saWdodDtcbiAgfVxuICAub2xkLCAub2xkIGRse1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRzZWNvbmRhcnktd2FybmluZy1leHRyYS1saWdodDtcbiAgfVxuICAuaW5jb21pbmcsIC5pbmNvbWluZyBkbHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2Vjb25kYXJ5LWVycm9yLWV4dHJhLWxpZ2h0O1xuXG4gIH1cbiAgLnVpLW1lbnUtaXRlbXtcbiAgICBwYWRkaW5nOiAwIDAgNHB4IDA7XG4gIH1cblxufVxuLnVpLWF1dG9jb21wbGV0ZS51aS1mcm9udC5jb2xvckxpc3QgbGkudWktbWVudS1pdGVte1xuICAmOmhvdmVye1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuXG4vKioqKioqKioqKioqKioqKioqKioqKlxuICAgUEFERElORyBFVCBNQVJHSU5cbioqKioqKioqKioqKioqKioqKioqKiovXG4ucGctNTB7XG4gIHBhZGRpbmc6IDMwcHggNTBweCA2MHB4IDUwcHg7XG59XG4ucGctMjB7XG4gIHBhZGRpbmc6IDIwcHggMzBweDtcbn1cbi5jZW50ZXIge1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxuLm10LTYwe1xuICBtYXJnaW4tdG9wOiA2MHB4O1xuICBtYXJnaW4tYm90dG9tOiAxNXB4O1xufVxuLmJsb2Nre1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi5tLWRlcG9zaXR7XG4gIG1hcmdpbjogNzVweCA4NXB4IDEwcHggODVweDtcbn1cbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihsZyl7XG4gIC5tLWRlcG9zaXR7XG4gICAgbWFyZ2luOiA1MHB4IDIwcHggMTBweCAyMHB4O1xuICB9XG59XG5cblxuLmljb24tZHJhZyB7XG4gIGN1cnNvcjogbW92ZTtcbn0iLCIuYnRuLWhhbCB7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJvcmRlcjogbm9uZTtcbiAgdHJhbnNpdGlvbjogMC4zcztcbn1cblxuLmJ0bi1saW5rIHtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgYm9yZGVyOiBub25lO1xuICBvdXRsaW5lOiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5idG4tcHJpbWFyeS1vcmFuZ2Uge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1vcmFuZ2U7XG4gIGNvbG9yOiAkd2hpdGU7XG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LW9yYW5nZS1ob3ZlcjtcbiAgfVxuICAmOmRpc2FibGVkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1vcmFuZ2UtZGlzYWJsZWQ7XG4gIH1cbn1cblxuLmJ0bi1wcmltYXJ5LWJsdWUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1ibHVlMTtcbiAgY29sb3I6ICR3aGl0ZTtcbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktYmx1ZTEtaG92ZXI7XG4gICAgY29sb3I6JHdoaXRlO1xuICB9XG4gICY6ZGlzYWJsZWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWJsdWUxLWRpc2FibGVkIDtcbiAgICBjb2xvcjokd2hpdGU7XG4gIH1cbn1cblxuLmJ0bi1wcmltYXJ5LWRhcmtibHVlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktYmx1ZTtcbiAgY29sb3I6ICR3aGl0ZTtcbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktYmx1ZS1ob3ZlcjtcbiAgICBjb2xvcjogJHdoaXRlXG4gIH1cbiAgJjpkaXNhYmxlZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktYmx1ZS1kaXNhYmxlZDtcbiAgICBjb2xvcjogJHdoaXRlXG4gIH1cbn1cblxuLmJ0bi1wcmltYXJ5LXB1cnBsZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwdXJwbGUtZGFya2VyO1xuICBjb2xvcjogJHdoaXRlO1xuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHVycGxlLWRhcms7XG4gICAgY29sb3I6ICR3aGl0ZVxuICB9XG59XG5cbi5idG4tcHJpbWFyeS1saWdodGJsdWUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1ibHVlMztcbiAgY29sb3I6ICR3aGl0ZTtcbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktYmx1ZTMtaG92ZXI7XG4gICAgY29sb3I6JHdoaXRlO1xuICB9XG59XG5cbi5idG4tc2Vjb25kYXJ5LWJsdWUge1xuICBjb2xvcjogJHByaW1hcnktYmx1ZTE7XG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiAkcHJpbWFyeS1ibHVlMztcbiAgfVxufVxuXG4uYnRuLXNlY29uZGFyeS1ncmV5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGdyYXktZTg7XG4gIGNvbG9yOiAkYmxhY2s7XG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRncmF5LWI5O1xuICB9XG59XG5cbi5idG4taWNvbiB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogbm9uZTtcbiAgb3V0bGluZTogbm9uZSAhaW1wb3J0YW50O1xuICBwYWRkaW5nOjZweCA5cHggNHB4O1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRncmF5LWU4O1xuICB9XG59XG5cbi5idG4tc2hlcnBhIHtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgYm9yZGVyOiAxcHggc29saWQgJGdyZWVuLXNoZXJwYTtcbiAgY29sb3I6ICRncmVlbi1zaGVycGE7XG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRncmVlbi1zaGVycGEtYmdcbiAgfVxuXG59XG5cbi5zaGVycGEtdW5rbm93bntcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgYm9yZGVyOiAxcHggc29saWQgJHVua25vd24tc2hlcnBhO1xuICBjb2xvcjogJHVua25vd24tc2hlcnBhO1xufVxuXG4uYnRuLW9yY2lkIHtcbiAgYm9yZGVyOiBzb2xpZCAxcHggJGdyYXktZTggO1xuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xuICBwYWRkaW5nOiA1cHg7XG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRncmF5LWU4O1xuICB9XG59XG5cbi5idG4tZGVmYXVsdCB7XG4gIGNvbG9yOiAjMzMzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBib3JkZXItY29sb3I6ICNjY2M7XG59XG4uYnRuLW1vcmUge1xuICBwYWRkaW5nLWxlZnQ6IDVweDtcbiAgcGFkZGluZy1yaWdodDogNXB4O1xufVxuXG4uYnRuLWFjdGlvbiB7XG4gIHBhZGRpbmc6IDJweCAwO1xufVxuXG4uYnRuLW5vcmVuZGVyIHtcbiAgYm9yZGVyOiBub25lO1xuICBjb2xvcjogJHByaW1hcnktYmx1ZTE7XG59XG5cbi5idG4tY3YtZXhwb3J0IHtcbiAgcGFkZGluZzogMHB4IDEycHg7XG59IiwiQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnaWNvbW9vbic7XG4gIHNyYzogIHVybCgnL2Fzc2V0cy9mb250cy9pY29tb29uLmVvdD9raXpsaGonKTtcbiAgc3JjOiAgdXJsKCcvYXNzZXRzL2ZvbnRzL2ljb21vb24uZW90P2tpemxoaiNpZWZpeCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSxcbiAgdXJsKCcvYXNzZXRzL2ZvbnRzL2ljb21vb24udHRmP2tpemxoaicpIGZvcm1hdCgndHJ1ZXR5cGUnKSxcbiAgdXJsKCcvYXNzZXRzL2ZvbnRzL2ljb21vb24ud29mZj9raXpsaGonKSBmb3JtYXQoJ3dvZmYnKSxcbiAgdXJsKCcvYXNzZXRzL2ZvbnRzL2ljb21vb24uc3ZnP2tpemxoaiNpY29tb29uJykgZm9ybWF0KCdzdmcnKTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LWRpc3BsYXk6IGJsb2NrO1xufVxuW2NsYXNzXj1cImljb24tXCJdLCBbY2xhc3MqPVwiIGljb24tXCJdLCBbY2xhc3NePVwidWktaWNvbi1cIl0sIFtjbGFzcyo9XCIgdWktaWNvbi1cIl0sIC8qW2NsYXNzXj1cImZhLVwiXSwgW2NsYXNzKj1cIiBmYS1cIl0qLyB7XG4gIC8qIHVzZSAhaW1wb3J0YW50IHRvIHByZXZlbnQgaXNzdWVzIHdpdGggYnJvd3NlciBleHRlbnNpb25zIHRoYXQgY2hhbmdlIGZvbnRzICovXG4gIGZvbnQtZmFtaWx5OiAnaWNvbW9vbicgIWltcG9ydGFudDtcbiAgc3BlYWs6IG5ldmVyO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtdmFyaWFudDogbm9ybWFsO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgbGluZS1oZWlnaHQ6IDE7XG5cbiAgLyogQmV0dGVyIEZvbnQgUmVuZGVyaW5nID09PT09PT09PT09ICovXG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xufVxuXG4uaWNvbi1saW5rZWRpbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk5MFwiO1xufVxuLmljb24tdHdpdHRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk5MVwiO1xufVxuLmljb24tcmVzZWFyY2hnYXRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTk4XCI7XG59XG5cbi5pY29uLXRleHQtY29sb3I6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5OTJcIjtcbn1cbi5pY29uLXVzZXJzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTkzXCI7XG59XG4uaWNvbi10cmFuc2xhdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5OTRcIjtcbn1cbi5pY29uLWJpZW5fY29tbXVuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTk1XCI7XG59XG4uaWNvbi1hcmNoaXZlc19zZXJ2aWNlczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk5NlwiO1xufVxuLmljb24tcmF5b25uZW1lbnRfaW50ZXJuYXRpb25hbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk5N1wiO1xufVxuLmljb24tY29tbXVuYXV0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk5OFwiO1xufVxuLmljb24taWRoYWwgLnBhdGgxOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTk5XCI7XG4gIGNvbG9yOiByZ2IoMCwgMCwgMCk7XG59XG4uaWNvbi1pZGhhbCAucGF0aDI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5OWFcIjtcbiAgbWFyZ2luLWxlZnQ6IC0xZW07XG4gIGNvbG9yOiByZ2IoMjU1LCAyNTUsIDI1NSk7XG59XG4uaWNvbi1pZGhhbCAucGF0aDM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5OWJcIjtcbiAgbWFyZ2luLWxlZnQ6IC0xZW07XG4gIGNvbG9yOiByZ2IoMjU1LCAyNTUsIDI1NSk7XG59XG4uaWNvbi1lbnZlbG9wZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk5Y1wiO1xufVxuLmljb24tbm90aWNlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOThiXCI7XG59XG4uaWNvbi1vcGVuLWFjY2VzczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwZlwiO1xufVxuLmljb24taGFsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTg3XCI7XG59XG4uaWNvbi1waWUtY2hhcnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5ODhcIjtcbn1cbi5pY29uLXJ1YmJlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk4OVwiO1xufVxuLmljb24tdXNlcnMxOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTZhXCI7XG59XG4uaWNvbi11cGxvYWRfMTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk2YlwiO1xufVxuLmljb24tdHJhbnNmZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NmNcIjtcbn1cbi5pY29uLXdlYnNpdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NmRcIjtcbn1cbi5pY29uLXNhdmUxOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTZlXCI7XG59XG4uaWNvbi1pbml0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTZmXCI7XG59XG4uaWNvbi1wbHVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTcwXCI7XG59XG4uaWNvbi1wbHVzX3NxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk3MVwiO1xufVxuLmljb24tcGFyYW1zOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTcyXCI7XG59XG4uaWNvbi1vcGVuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTczXCI7XG59XG4uaWNvbi1vcGVuX2ZpbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NzRcIjtcbn1cbi5pY29uLXRvb2xzMTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk3NVwiO1xufVxuLmljb24tbm90aWNlMTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk3NlwiO1xufVxuLmljb24tcG9ydGFsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTc3XCI7XG59XG4uaWNvbi1tZXNzYWdlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTc4XCI7XG59XG4uaWNvbi1zdHJ1Y3R1cmVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTc5XCI7XG59XG4uaWNvbi10ZW1wbGF0ZXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5N2FcIjtcbn1cbi5pY29uLWNvbGxlY3Rpb25zOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTdiXCI7XG59XG4uaWNvbi1tZW51X2Nsb3NlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTdjXCI7XG59XG4uaWNvbi1tZW51X29wZW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5N2RcIjtcbn1cbi5pY29uLW1vZGVyYXRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTdlXCI7XG59XG4uaWNvbi1saWduZV9hY3Rpb25zOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTdmXCI7XG59XG4uaWNvbi1pbmZvMTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk4MFwiO1xufVxuLmljb24taGlzdG9yeTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk4MVwiO1xufVxuLmljb24taGllcmFyY2hpY2FsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTgyXCI7XG59XG4uaWNvbi1tZXJnZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk4M1wiO1xufVxuLmljb24tY2xvc2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5ODRcIjtcbn1cbi5pY29uLWRpcmVjdG9yeTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk4NVwiO1xufVxuLmljb24tZmlsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk2NVwiO1xufVxuLmljb24tZGVwb3NpdHM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NjZcIjtcbn1cbi5pY29uLWNvcHk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NjdcIjtcbn1cbi5pY29uLXdhcm5pbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NjhcIjtcbn1cbi5pY29uLWFwcGx5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTY5XCI7XG59XG4uaWNvbi1vcmNpZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk2NFwiO1xufVxuLmljb24tYWN0aW9uczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk2M1wiO1xufVxuLmljb24tbGVmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk2MVwiO1xufVxuLmljb24tdG9wOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOThkXCI7XG59XG4uaWNvbi1ib3R0b206YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5OGVcIjtcbn1cbi5pY29uLXJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTYyXCI7XG59XG4uaWNvbi12aXNpYmlsaXRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTAwXCI7XG59XG4uaWNvbi11cGxvYWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MDFcIjtcbn1cbi5pY29uLWRyb3BfZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwMlwiO1xufVxuLmljb24tRE9JOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTAzXCI7XG59XG4uaWNvbi1hcnJvd190b3A6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MDRcIjtcbn1cbi5pY29uLWFycm93X2Rvd246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5OGNcIjtcbn1cbi5pY29uLWFycm93X2xlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MDVcIjtcbn1cbi5pY29uLWFyY2hpdmFnZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwNlwiO1xufVxuLmljb24tYWRkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTA3XCI7XG59XG4uaWNvbi1hY3Rpdml0ZV9taXNlYWpvdXRfZGVwb3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MDhcIjtcbn1cbi5pY29uLUFjdGl2aXRlX2Fqb3V0X2JpYmxpbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwOVwiO1xufVxuLmljb24tdHlwZG9jX3ZpZGVvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTBhXCI7XG59XG4uaWNvbi10eXBkb2Nfc29mdHdhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MGJcIjtcbn1cbi5pY29uLW1vcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MGNcIjtcbn1cbi5pY29uLXR5cGRvY19tZW06YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MGRcIjtcbn1cbi5pY29uLXR5cGRvY19zb246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MGVcIjtcbn1cbi5pY29uLXR5cGRvY19wcmVzY29uZjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkxMFwiO1xufVxuLmljb24tYm9va21hcmtfZmlsbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkxMVwiO1xufVxuLmljb24tYm9va21hcmtfZmlsbDI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5ODZcIjtcbn1cbi5pY29uLXJldG91cl9tb2RlcmF0aW9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTEyXCI7XG59XG4uaWNvbi1kZWxldGVfZnJvbV9jb2xsZWN0aW9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTEzXCI7XG59XG4uaWNvbi1kb2N1bWVudGF0aW9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTE0XCI7XG59XG4uaWNvbi1kcmFnOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTE1XCI7XG59XG4uaWNvbi1wZXJzb25fYWRkZWRfbm90aWZpY2F0aW9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTE2XCI7XG59XG4uaWNvbi1zYXZlZF9zZWFyY2g6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MTdcIjtcbn1cbi5pY29uLWNhbGVuZGFyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTE4XCI7XG59XG4uaWNvbi1jaGFuZ2VfcGFzc3dvcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MTlcIjtcbn1cbi5pY29uLWNocm9ubzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkxYVwiO1xufVxuLmljb24tY29uc3VsdGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTFiXCI7XG59XG4uaWNvbi1kZWxldGVfaGlzdG9yeTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkxY1wiO1xufVxuLmljb24tZGVtYW5kZXJfcHJvcHJpZXRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTFkXCI7XG59XG4uaWNvbi1lbl9tb2RlcmF0aW9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTFlXCI7XG59XG4uaWNvbi1wcmV2aXN1YWxpc2VyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTFmXCI7XG59XG4uaWNvbi1zYXZlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTIwXCI7XG59XG4uaWNvbi1zY3JvbGw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MjFcIjtcbn1cbi5pY29uLXR5cGRvY19oZHI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MjJcIjtcbn1cbi5pY29uLXR5cGRvY19hcnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MjNcIjtcbn1cbi5pY29uLXR5cGRvY19jb21tOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTI0XCI7XG59XG4uaWNvbi10eXBkb2NfY291djpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkyNVwiO1xufVxuLmljb24tdHlwZG9jX2RhdGE6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MjZcIjtcbn1cbi5pY29uLXR5cGRvY19kb3V2OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTI3XCI7XG59XG4uaWNvbi10eXBkb2NfaW1nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTI4XCI7XG59XG4uaWNvbi10eXBkb2NfbGVjdHVyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkyOVwiO1xufVxuLmljb24tdHlwZG9jX21hcDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkyYVwiO1xufVxuLmljb24tdHlwZG9jX290aGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTJiXCI7XG59XG4uaWNvbi10eXBkb2Nfb3V2OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTJjXCI7XG59XG4uaWNvbi10eXBkb2NfcGF0ZW50OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTJkXCI7XG59XG4uaWNvbi10eXBkb2NfcG9zdGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTJlXCI7XG59XG4uaWNvbi10eXBkb2NfcmVwb3J0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTJmXCI7XG59XG4uaWNvbi10eXBkb2NfdGhlc2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MzBcIjtcbn1cbi5pY29uLXR5cGRvY191bmRlZmluZWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MzFcIjtcbn1cbi5pY29uLXN1YmRvbWFpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MzJcIjtcbn1cbi5pY29uLWZvbnRfc21hbGw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MzNcIjtcbn1cbi5pY29uLWV4aXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MzRcIjtcbn1cbi5pY29uLWZvbnRfYmlnOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTM1XCI7XG59XG4uaWNvbi1yZWZyZXNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTM2XCI7XG59XG4uaWNvbi1zb3J0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTM3XCI7XG59XG4uaWNvbi10b29sczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkzOFwiO1xufVxuLmljb24tdmlzdWFsaXplOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTM5XCI7XG59XG4uaWNvbi1kb3dubG9hZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkzYVwiO1xufVxuLmljb24tZmFjZWJvb2s6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5M2JcIjtcbn1cbi5pY29uLWluZm86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5M2NcIjtcbn1cbi5pY29uLWNoZWNrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTNkXCI7XG59XG4uaWNvbi1pbnN0aXR1dGlvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkzZVwiO1xufVxuLmljb24tbm90X3ZhbGlkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTNmXCI7XG59XG4uaWNvbi1yc3M6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NDBcIjtcbn1cbi5pY29uLXZhbGlkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTQxXCI7XG59XG4uaWNvbi1hZGRfZmlsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk0MlwiO1xufVxuLmljb24tZGVsZXRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTQzXCI7XG59XG4uaWNvbi1kb2N1bWVudDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk0NFwiO1xufVxuLmljb24tZXhwb3J0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTQ1XCI7XG59XG4uaWNvbi1sb2k6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NDZcIjtcbn1cbi5pY29uLW5vdGljZV9zbWFsbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk0N1wiO1xufVxuLmljb24tbm90aWZpY2F0aW9uczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk0OFwiO1xufVxuLmljb24tb3Blbl9wYWdlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTQ5XCI7XG59XG4uaWNvbi1zaGFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk0YVwiO1xufVxuLmljb24tYWRkX2NvbGxlY3Rpb246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NGJcIjtcbn1cbi5pY29uLWVkaXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NGNcIjtcbn1cbi5pY29uLWZpbHRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk0ZFwiO1xufVxuLmljb24taGlkZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk0ZVwiO1xufVxuLmljb24tc3Rhcl9maWxsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTRmXCI7XG59XG4uaWNvbi1zdGFyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTUwXCI7XG59XG4uaWNvbi1hZGRfdXNlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk1MVwiO1xufVxuLmljb24tYm9va21hcms6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NTJcIjtcbn1cbi5pY29uLWVtYmFyZ286YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NTNcIjtcbn1cbi5pY29uLWxpbms6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NTRcIjtcbn1cbi5pY29uLWxvZ291dDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk1NVwiO1xufVxuLmljb24tbm90aWNlMjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk1NlwiO1xufVxuLmljb24tcGx1cmlkaXNjaXBsaW5hcml0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk1N1wiO1xufVxuLmljb24tc2VhcmNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTU4XCI7XG59XG4uaWNvbi11c2VfbW9kZWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NTlcIjtcbn1cbi5pY29uLWFkbWluaXN0cmF0aW9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTVhXCI7XG59XG4uaWNvbi1kYXNoYm9hcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NWJcIjtcbn1cbi5pY29uLWRlcG90czpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk1Y1wiO1xufVxuLmljb24tbGlicmFyeTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk1ZFwiO1xufVxuLmljb24tcHJvZmlsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTVlXCI7XG59XG4uaWNvbi1yZXN1bWU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NWZcIjtcbn1cbi5pY29uLXZhbG9yaXNhdGlvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk2MFwiO1xufSIsIlxuLmljb24tZGFzaGJvYXJkLWluZGV4OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTViXCI7XG59XG5cbi5pY29uLXVzZXItaW5kZXg6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NWVcIjtcbn1cblxuLmljb24tdXNlci1pZGhhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk4N1wiO1xufVxuXG4uaWNvbi11c2VyLWN2OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTVmXCI7XG59XG5cbi5pY29uLXVzZXItc3VibWlzc2lvbnM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NWNcIjtcbn1cblxuLmljb24tdXNlci1saWJyYXJ5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTVkXCI7XG59XG5cbi5pY29uLXVzZXItZG9jb3duZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NGFcIjtcbn1cblxuLmljb24tdXNlci1vd25lcnNoaXAtcmVxdWVzdHM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MWRcIjtcbn1cblxuLmljb24tZXh0ZXJuYWwtZG9jOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTY0XCI7XG4gIGZvbnQtc2l6ZTogMTZweDtcbn1cblxuLmljb24tYWN0aW9ucyB7XG4gIGZvbnQtc2l6ZTogJHNpemUtbGFyZ2U7XG4gICYueHhsIHtcbiAgICBmb250LXNpemU6ICRzaXplLXh4bDtcbiAgfVxufVxuXG5cbi5pY29uLXVzZXItY29sbGVjdGlvbnM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5N2JcIjtcbn1cblxuLmljb24tY29sbGVjdGlvbi1saXN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTcyXCI7XG59XG4uaWNvbi13ZWJzaXRlLWluZGV4OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTZkXCI7XG59XG4uaWNvbi1zdGF0LWRhc2hib2FyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk4OFwiO1xufVxuLmljb24tcGF0cm9sLWluZGV4OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTdlXCI7XG59XG4uaWNvbi1tb2RlcmF0ZS1pbmRleDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk3ZVwiO1xufVxuLmljb24tdmFsaWRhdGUtaW5kZXg6YmVmb3JlIHtcbiAgIGNvbnRlbnQ6IFwiXFxlOTdlXCI7XG4gfVxuLmljb24tYWRtaW5pc3RyYXRlLWluZGV4OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTc1XCI7XG59XG5cbi51aS1pY29uLWNpcmNsZS10cmlhbmdsZS13OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTYxXCI7XG59XG4udWktaWNvbi1jaXJjbGUtdHJpYW5nbGUtZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk2MlwiO1xufVxuXG4uaWNvbi1tdXNpYyB7XG4gIGNvbnRlbnQ6IFwiXFxlOTBlXCI7XG59XG4uaWNvbi1maWxtIHtcbiAgY29udGVudDogXCJcXGU5MGFcIjtcbn1cbi5pY29uLXBpY3R1cmUge1xuICBjb250ZW50OiBcIlxcZTkyOFwiO1xufVxuLmZhLWNoZWNrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTNkXCI7XG59XG4uZmEtdGltZXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MzRcIjtcbn1cblxuLmljb24tdHlwZG9jX3Byb2NlZWRpbmdzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTI3XCI7XG59XG5cbi5pY29uLXR5cGRvY19ub3RpY2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NDdcIjtcbn1cblxuLmljb24tdHlwZG9jX2Jsb2c6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NmRcIjtcbn1cblxuLmljb24tdHlwZG9jX2lzc3VlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTEwXCI7XG59XG5cbi5pY29uLXR5cGRvY190cmFkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTk0XCI7XG59XG4iLCIvKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgIFNUWUxFXG4qKioqKioqKioqKioqKioqKioqKioqKioqL1xuLnR5cGRvYywgLmRvYy1pZGVudGlmaWVyLCAuZG9jLWFyeGl2LCAuYnJvd3NlLWZpbHRlciwgLmRvYy1vcmNpZHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHB1cnBsZTtcbiAgcGFkZGluZzogNXB4IDhweDtcbiAgY29sb3I6ICR3aGl0ZTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGZvbnQtc2l6ZTogJHNpemUtc21hbGw7XG4gIGxpbmUtaGVpZ2h0OiAyLjU7XG4gIGEsIGE6aG92ZXIsIGE6YWN0aXZlIHtcbiAgICBjb2xvcjogJHdoaXRlO1xuICB9XG59XG4uZG9jLWlkZW50aWZpZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHVycGxlLWRhcmtlcjtcbn1cbi5kb2MtYXJ4aXYge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcmVkLWFyeGl2O1xufVxuLmRvYy1vcmNpZCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRncmVlbi1vcmNpZDtcbiAgY29sb3I6ICRncmVlbi1vcmNpZDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xufVxuXG4uc2VjdGlvbi1zaGFkb3d7XG4gIGJveC1zaGFkb3c6IDBweCAzcHggNnB4ICRib3gtc2hhZG93O1xuICBtYXJnaW4tYm90dG9tOiAxOHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgUFJJTUFSWSBCVVRUT05TXG4qKioqKioqKioqKioqKioqKioqKioqKioqL1xuJWRlZmF1bHQtYnV0dG9ue1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGNvbG9yOiAkd2hpdGU7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBmb250LXNpemU6ICRzaXplLWxhcmdlO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYXtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogJHdoaXRlO1xuICB9XG59XG5cbi5oYWwtc3VibWl0LWJ1dHRvbntcbiAgQGV4dGVuZCAlZGVmYXVsdC1idXR0b247XG4gIHBhZGRpbmc6IDE5cHggMThweCAxNnB4IDE4cHg7XG4gIG1hcmdpbi1yaWdodDogLTFweDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICBzcGFuLmhhbC1pY29ue1xuICAgIG1hcmdpbi1yaWdodDogMjBweDtcbiAgfVxufVxuXG4uaGFsLW9wdGlvbi1idXR0b257XG4gIEBleHRlbmQgJWRlZmF1bHQtYnV0dG9uO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1ibHVlMTtcbiAgcGFkZGluZzogMTJweCA0MHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgc3Bhbi5oYWwtaWNvbntcbiAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gIH1cbiAgJjpob3ZlcntcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1ibHVlMS1ob3ZlcjtcbiAgfVxuXG4gICY6ZGlzYWJsZWR7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktYmx1ZTEtZGlzYWJsZWQ7XG4gICAgY3Vyc29yOiB1bnNldDtcbiAgfVxufVxuXG4uaGFsLW9wdGlvbi1idXR0b24tZGlzYWJsZWR7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWJsdWUxLWRpc2FibGVkO1xufVxuXG4uaGFsLXZpc3VhbGl6ZS1idXR0b257XG4gIEBleHRlbmQgJWRlZmF1bHQtYnV0dG9uO1xuICBmb250LXNpemU6ICRzaXplLXJlZ3VsYXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWJsdWU7XG4gIHBhZGRpbmc6IDE0cHggNDBweDtcblxuICBzcGFuLmhhbC1pY29ue1xuICAgIG1hcmdpbi1yaWdodDogMjBweDtcbiAgfVxuICAmOmhvdmVye1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWJsdWUtaG92ZXI7XG4gIH1cbiAgJjpkaXNhYmxlZHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1ibHVlLWRpc2FibGVkO1xuICAgIGN1cnNvcjogdW5zZXQ7XG4gIH1cbn1cblxuLmhhbC1zYXZlLWJ1dHRvbntcbiAgQGV4dGVuZCAlZGVmYXVsdC1idXR0b247XG4gIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWJsdWUxO1xuICBmb250LXNpemU6ICRzaXplLXNtYWxsO1xuXG4gICY6aG92ZXJ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktYmx1ZTEtaG92ZXI7XG4gIH1cbiAgJjpkaXNhYmxlZHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1ibHVlMS1kaXNhYmxlZDtcbiAgICBjdXJzb3I6IHVuc2V0O1xuICB9XG5cbn1cblxuLmhhbC1wcml2aWxlZ2UtYnV0dG9ue1xuICBAZXh0ZW5kICVkZWZhdWx0LWJ1dHRvbjtcbiAgZm9udC1zaXplOiAkc2l6ZS1yZWd1bGFyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpdmlsZWdlLWJ1dHRvbjtcbiAgcGFkZGluZzogMTRweCA0MHB4O1xuXG4gIHNwYW4uaGFsLWljb257XG4gICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICB9XG4gICY6aG92ZXJ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktYmx1ZTM7XG4gIH1cbiAgJjpkaXNhYmxlZHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1ibHVlMztcbiAgICBjdXJzb3I6IHVuc2V0O1xuICB9XG59XG5cbi5oYWwtd2FybmluZy1idXR0b257XG4gIEBleHRlbmQgJWRlZmF1bHQtYnV0dG9uO1xuICBmb250LXNpemU6ICRzaXplLXJlZ3VsYXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICRzZWNvbmRhcnktZXJyb3I7XG4gIHBhZGRpbmc6IDE0cHggNDBweDtcblxuICBzcGFuLmhhbC1pY29ue1xuICAgIG1hcmdpbi1yaWdodDogMjBweDtcbiAgICAmOjpiZWZvcmV7XG4gICAgICBjb2xvcjogJHdoaXRlO1xuICAgIH1cbiAgfVxuICAmOmhvdmVye1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRzZWNvbmRhcnktZXJyb3ItaG92ZXI7XG4gIH1cbiAgJjpkaXNhYmxlZHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2Vjb25kYXJ5LWVycm9yLWxpZ2h0O1xuICAgIGN1cnNvcjogdW5zZXQ7XG4gIH1cbn1cbi8qKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgU0VDT05EQVJZIEJVVFRPTlNcbioqKioqKioqKioqKioqKioqKioqKioqKiovXG4uaGFsLWxvZ2luLWJ1dHRvbntcbiAgQGV4dGVuZCAlZGVmYXVsdC1idXR0b247XG4gIGNvbG9yOiAkd2hpdGU7XG4gIGZvbnQtc2l6ZTogJHNpemUtcmVndWxhcjtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuXG4gICY6aG92ZXJ7XG4gICAgY29sb3I6ICRwcmltYXJ5LW9yYW5nZTtcbiAgfVxufVxuXG4uaGFsLXNlY29uZGFyeS1idXR0b24sIGEuaGFsLXNlY29uZGFyeS1idXR0b257XG4gIEBleHRlbmQgJWRlZmF1bHQtYnV0dG9uO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6ICRwcmltYXJ5LWJsdWUxO1xuICBmb250LXNpemU6ICRzaXplLXJlZ3VsYXI7XG4gIHNwYW57XG4gICAgY29sb3I6ICRwcmltYXJ5LWJsdWUxO1xuICB9XG4gIHNwYW4uaGFsLWljb257XG4gICAgbWFyZ2luLXJpZ2h0OiAxMnB4O1xuICB9XG4gICY6aG92ZXIsICY6aG92ZXIgc3BhbntcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgY29sb3I6ICRwcmltYXJ5LWJsdWUzO1xuICB9XG59XG5cbi5oYWwtYmd0ZXh0LCBhLmhhbC1iZ3RleHR7XG4gIEBleHRlbmQgJWRlZmF1bHQtYnV0dG9uO1xuICAgYmFja2dyb3VuZC1jb2xvcjogJGdyYXktZTg7XG4gICBwYWRkaW5nOiAxMHB4O1xuICAgY29sb3I6ICRibGFjaztcbiAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7XG4gICBsaW5lLWhlaWdodDogJHNpemUtZXh0cmE7XG5cbiAgJjpob3ZlcntcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGdyYXktYjk7XG4gIH1cbn1cblxuLy9Cb3V0b24gZCdleHBvcnQgYXZhbmPDqVxuLmhhbC1hZHZleHBvcnR7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWJsdWUxO1xuICBwYWRkaW5nOiAxMHB4O1xuICBjb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XG5cbiAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcbiAgbGluZS1oZWlnaHQ6ICRzaXplLWV4dHJhO1xuICAmOmhvdmVye1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1ibHVlMS1ob3ZlcjtcbiAgICBjb2xvcjogJHdoaXRlO1xuICB9XG59XG5cbi5oYWwtYmd1c2Vye1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1ibHVlMztcbiAgY29sb3I6ICR3aGl0ZTtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIHBhZGRpbmc6IDVweDtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgU0VBUkNIIEJBUlxuKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi5oYWwtc2Vjb25kLXNlYXJjaC1pbnB1dHtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItYm90dG9tOiBzb2xpZCAycHggJHByaW1hcnktYmx1ZTE7XG4gIHBhZGRpbmctcmlnaHQ6IDUwcHg7XG4gIHBhZGRpbmctYm90dG9tOiA1cHg7XG4gIHBhZGRpbmctdG9wOiAxMHB4O1xuICBjb2xvcjogJHByaW1hcnktYmx1ZTtcblxuICAmOjpwbGFjZWhvbGRlcntcbiAgICBjb2xvcjogJGdyYXktY2E7XG4gIH1cbn1cblxuXG4uaGFsLW1haW4tc2VhcmNoLWlucHV0e1xuICBib3JkZXI6IG5vbmU7XG4gIGhlaWdodDogNDhweDtcbiAgY29sb3I6ICRwcmltYXJ5LWJsdWU7XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgwZGVnLCAkcHJpbWFyeS1vcmFuZ2UgNTAlLCAjMDAwMCA1MCUpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IDBweDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IDIwcHg7XG4gIHRyYW5zaXRpb246IC4zcyBjdWJpYy1iZXppZXIoLjI1LC44LC41LDEpO1xuXG5cbiAgJjo6cGxhY2Vob2xkZXJ7XG4gICAgY29sb3I6ICRncmF5LWNhO1xuICB9XG59XG4jbGl0dGxlU2VhcmNoQmFyIHtcbiAgcGFkZGluZy1sZWZ0OiA1MHB4O1xuICAmOmZvY3VzLXZpc2libGUgeyAvKiBDaGFuZ2VtZW50IGRlIGxhIGNvdWxldXIgZGUgbGEgQm9yZHVyZSBkZSBsYSBiYXJyZSBkZSByZWNoZXJjaGUgKi9cbiAgICBvdXRsaW5lOiAwcHg7XG4gICAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xuICB9XG4gICY6aG92ZXIgeyAvKiA9PT0gT21icmUgYXUgc3V2b2xlIGRlIGxhIGJhcnJlIGRlIHJlY2hlcmNoZSA9PT0gKi9cbiAgICBib3gtc2hhZG93OiAwIDNweCA4cHggMCAjMDAwMDAwNGY7XG4gIH1cbn1cblxuLmhhbC1tYWluLXNlYXJjaC1idXR0b257XG4gIGJvcmRlcjogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiAkcHJpbWFyeS1ibHVlMTtcbiAgZm9udC1zaXplOiAkc2l6ZS1sYXJnZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDE1cHg7XG59XG5cbi5oYWwtbWFpbi1hZHZzZWFyY2gtYnV0dG9ue1xuICBmb250LXNpemU6ICRzaXplLW1pbnVzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiBub25lO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogLTM0cHg7XG4gIGxlZnQ6IDk1JTtcbiAgei1pbmRleDoxO1xuICBjb2xvcjogJGdyYXktOTc7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgUEFORUxcbioqKioqKioqKioqKioqKioqKioqKioqKiovXG4ucGFuZWwtZG9je1xuICAmID4gYnV0dG9uOmZpcnN0LWNoaWxke1xuICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JheS1mNDtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGdyYXktZTg7XG4gICAgbWFyZ2luLXRvcDogNDBweDtcbiAgICBwYWRkaW5nOiA2cHggMTJweDtcbiAgICBzcGFue1xuICAgICAgZm9udC1zaXplOiAuNXJlbTtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuICB9XG4gIC5wYW5lbC1kb2MtZGV0YWlsZWR7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGdyYXktZjQ7XG4gICAgaDV7XG4gICAgICBmb250LXNpemU6IGNhbGMoI3skc2l6ZS1yZWd1bGFyfSArIC4xcmVtKTtcbiAgICB9XG4gIH1cbn1cbnVsLm5hdi1waWxscy5saWdodC1ib3JkZXJ7XG4gIGF7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBjb2xvcjogJHByaW1hcnktYmx1ZTE7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJHByaW1hcnktYmx1ZTE7XG4gICAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgICAmLmFjdGl2ZXtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWJsdWUxO1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgJjpob3ZlcntcbiAgICAgICAgY3Vyc29yOiBpbml0aWFsO1xuICAgICAgfVxuICAgIH1cbiAgICAmOm5vdCguYWN0aXZlKTpob3ZlcntcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWJsdWUzO1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgJHByaW1hcnktYmx1ZTM7XG4gICAgfVxuICB9XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgIFRPT0xTXG4qKioqKioqKioqKioqKioqKioqKioqL1xuLnVpLXRvb2x0aXAudWktd2lkZ2V0LWNvbnRlbnQge1xuICBib3gtc2hhZG93OiBub25lO1xuICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGdyYXktMzc7XG4gIGNvbG9yOiAkd2hpdGU7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGZvbnQtc2l6ZTogJHNpemUteHNtYWxsO1xuICBwYWRkaW5nOiA0cHg7XG4gIG1hcmdpbi10b3A6IC0xMHB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGUhaW1wb3J0YW50O1xufVxuXG5idXR0b25bZGF0YS10b2dnbGUtc2Vjb25kPSd0b29sdGlwJ10ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiBub25lO1xuICBjb2xvcjogJGdyYXktY2E7XG59XG5idXR0b24ubm8tYXJyb3c6OmFmdGVye1xuICBjb250ZW50OiBub25lO1xufVxuYnV0dG9uW2RhdGEtdG9nZ2xlLXNlY29uZD1cInRvb2x0aXBcIl06aG92ZXIsYnV0dG9uW2RhdGEtdG9nZ2xlLXNlY29uZD1cInRvb2x0aXBcIl06Zm9jdXMsXG4uc2hvdyA+IGJ1dHRvbltkYXRhLXRvZ2dsZS1zZWNvbmQ9XCJ0b29sdGlwXCJdLmJ0bi1zZWNvbmRhcnkuZHJvcGRvd24tdG9nZ2xlLCAuZm9jdXMtcm91bmQ6Zm9jdXMsIC5mb2N1cy1yb3VuZDpob3ZlciB7XG4gIGNvbG9yOiAkcHJpbWFyeS1ibHVlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDIwNCwgMjE2LCAyMjksIDAuMzQpO1xuICBib3JkZXItcmFkaXVzOiAxODBweDtcbn1cblxuLmhpZGV7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5mb3JtLWVycm9ye1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgIENIRUNLQk9YXG4qKioqKioqKioqKioqKioqKioqKioqL1xuW3R5cGU9XCJjaGVja2JveFwiXTpub3QoOmNoZWNrZWQpLFxuW3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkIHtcbiAgLyogQ2FjaGUgbGEgY2hlY2tib3ggc2Fuc1xuICAgICBsYSBkw6lzYWN0aXZlciBwb3VyIGxlc1xuICAgICBsZWN0ZXVycyBkJ8OpY3JhbiAqL1xuICAvL3Bvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6MXB4O1xuICBsZWZ0OiAwO1xuICBvcGFjaXR5OiAwLjAxO1xuXG4gICY6Zm9jdXMgKyBsYWJlbDpiZWZvcmUge1xuICAgIGJvcmRlci1jb2xvcjogIzgwYmRmZjtcbiAgICBvdXRsaW5lOiAwO1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDAsIDEyMywgMjU1LCAwLjI1KTtcbiAgfVxufVxuLyogb24gcHLDqXBhcmUgbGUgbGFiZWwgKi9cblt0eXBlPVwiY2hlY2tib3hcIl06bm90KDpjaGVja2VkKSArIGxhYmVsLFxuW3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkICsgbGFiZWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IC8qIHBlcm1ldCBkZSBwb3NpdGlvbm5lciBsZXMgcHNldWRvLcOpbMOpbWVudHMgKi9cbiAgcGFkZGluZy1sZWZ0OiAyLjNlbTsgLyogZmFpdCB1biBwZXUgZCdlc3BhY2UgcG91ciBub3RyZSBjYXNlIMOgIHZlbmlyICovXG4gIGZvbnQtc2l6ZTogY2FsYygjeyRzaXplLXJlZ3VsYXJ9ICsgLjFyZW0pOyAvKiBMYWJlbCB1biBwZXUgcGx1cyBncm9zICovXG4gIGxpbmUtaGVpZ2h0OiAxLjE1O1xuICBjdXJzb3I6IHBvaW50ZXI7ICAgIC8qIGFmZmljaGUgdW4gY3Vyc2V1ciBhZGFwdMOpICovXG59XG4vKiBBc3BlY3QgZGUgbGEgY2FzZSAqL1xuW3R5cGU9XCJjaGVja2JveFwiXTpub3QoOmNoZWNrZWQpICsgbGFiZWw6YmVmb3JlLFxuW3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkICsgbGFiZWw6YmVmb3JlIHtcbiAgY29udGVudDogJyc7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICB3aWR0aDogMS40ZW07XG4gIGhlaWdodDogMS40ZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICRncmF5LWI5O1xuICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gIC8vYm94LXNoYWRvdzogaW5zZXQgMCAxcHggM3B4IHJnYmEoMCwwLDAsIC4xKSwgMCAwIDAgcmdiYSgyMDMsIDM0LCAyMzcsIC4yKTtcbiAgdHJhbnNpdGlvbjogYWxsIC4yNzVzO1xufVxuW3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkICsgbGFiZWw6YmVmb3JlIHtcbiAgYmFja2dyb3VuZDogJHByaXZpbGVnZS1idXR0b247XG59XG4gIC8qIEFzcGVjdCBkZSBsYSBjb2NoZSAqL1xuW3R5cGU9XCJjaGVja2JveFwiXTpub3QoOmNoZWNrZWQpICsgbGFiZWw6YWZ0ZXIsXG5bdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQgKyBsYWJlbDphZnRlciB7XG4gIGNvbnRlbnQ6ICdcXDI3MTMnO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMC41NWVtO1xuICBsZWZ0OiAwLjJlbTtcbiAgZm9udC1zaXplOiAxLjNlbTtcbiAgY29sb3I6ICR3aGl0ZTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIHRyYW5zaXRpb246IGFsbCAuMnM7IC8qIFBldGl0ZSB0cmFuc2l0aW9uICovXG59XG5bdHlwZT1cImNoZWNrYm94XCJdOm5vdCg6Y2hlY2tlZCkgKyBsYWJlbC50aWNrOmFmdGVyLFxuW3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkICsgbGFiZWwudGljazphZnRlciB7XG4gIGNvbnRlbnQ6ICdcXDI3MTMnO1xuICBjb2xvcjogJHdoaXRlO1xufVxuW3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkICsgbGFiZWwudGljazo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZDogJHByaXZpbGVnZS1idXR0b247XG59XG4vKiBBc3BlY3Qgbm9uIGNvY2jDqWUgKi9cblt0eXBlPVwiY2hlY2tib3hcIl06bm90KDpjaGVja2VkKSArIGxhYmVsOmFmdGVyIHtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwKSByb3RhdGUoNDVkZWcpO1xufVxuLyogQXNwZWN0IGNvY2jDqWUgKi9cblt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCArIGxhYmVsOmFmdGVyIHtcbiAgb3BhY2l0eTogMTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxKSByb3RhdGUoMCk7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqXG4gICBXSElURSBUQUJMRVxuKioqKioqKioqKioqKioqKioqKioqKi9cbi50YWJsZS13aGl0ZXtcbiAgd2lkdGg6IDEwMCU7XG4gIEBleHRlbmQgJXRhYmxlLXdoaXRlLWRlZmF1bHQ7XG5cbiAgLmF1dGhvcnMtcmVzdWx0c3tcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBjb2xvcjogJHByaW1hcnktYmx1ZTE7XG4gICAgZm9udC1zaXplOiAkc2l6ZS1zbWFsbDtcbiAgfVxufVxuXG4ubWVkaWF7XG4gIGhlaWdodDogOTRweDtcbiAgd2lkdGg6IDc0cHg7XG5cbiAgaW1nIHtcbiAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm9yZGVyOjFweCBzb2xpZCAkZ3JheS1lODtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cbiAgc3Bhbi5pY29uLWNocm9ub3tcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAzMHB4O1xuICAgIGxlZnQ6IC0zNXB4O1xuICAgIGZvbnQtc2l6ZTogJHNpemUtbGFyZ2U7XG4gICAgY29sb3I6ICRwdXJwbGU7XG4gIH1cblxuICAmLm5vdC1maWxlLWltZ3tcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgYm9yZGVyLWxlZnQ6IDJweCBzb2xpZCAkcHVycGxlO1xuICAgIGJvcmRlci1yaWdodDogMnB4IHNvbGlkICRwdXJwbGU7XG4gICAgJjo6YmVmb3JlLCAmOjphZnRlcntcbiAgICAgIGJvcmRlci10b3A6IDJweCBzb2xpZCAkcHVycGxlO1xuICAgICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICRwdXJwbGU7XG4gICAgICB3aWR0aDogMTVweDtcbiAgICAgIGhlaWdodDogOTRweDtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgfVxuICAgICY6OmFmdGVye1xuICAgICAgbWFyZ2luLWxlZnQ6IDU2cHghaW1wb3J0YW50O1xuICAgIH1cbiAgICAuaWNvbi1vcGVuLWFjY2VzcyB7XG4gICAgICBsZWZ0OiAxNnB4O1xuICAgIH1cbiAgICAuaWNvbiB7XG4gICAgICBmb250LXNpemU6IDQwcHg7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDI0cHg7XG4gICAgICBjb2xvcjogJHB1cnBsZTtcbiAgICB9XG4gICAgLmljb24tY2hyb25vLCAuaWNvbi1ub3RpY2Uge1xuICAgICAgbGVmdDogMjBweDtcbiAgICB9XG4gIH1cbn1cbi8qKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgIFRPQVNUXG4qKioqKioqKioqKioqKioqKioqKioqL1xuLnRvYXN0e1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHotaW5kZXg6IDIwMDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgbWFyZ2luLWxlZnQ6IDAuNzVyZW07XG4gIGNvbG9yOiAkd2hpdGU7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBmb250LXNpemU6ICRzaXplLXJlZ3VsYXI7XG4gIG1heC13aWR0aDogbm9uZTtcblxuICAmLnRvYXN0LXdhcm5pbmcge1xuICAgIGJveC1zaGFkb3c6IDBweCA3cHggN3B4IHJnYmEoNjYsIDY1LCA2NSwgMC41OCk7XG4gIH1cblxuICAudG9hc3QtYm9keXtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICB9XG4gIC5tZXNzYWdle1xuICAgIHBhZGRpbmctcmlnaHQ6IDMwcHg7XG4gICAgcGFkZGluZy1sZWZ0OiAyNXB4O1xuICAgIG1hcmdpbjogYXV0bztcbiAgICBzcGFuOmZpcnN0LWNoaWxke1xuICAgICAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgICAgIGZvbnQtc2l6ZTogJHNpemUtbGFyZ2U7XG4gICAgfVxuICAgIC5mbGFzaC1tZXNzYWdlcyB7XG4gICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIH1cbiAgfVxuICAubWwtMi5tYi0xLmNsb3Nle1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgJHdoaXRlO1xuICAgIHBhZGRpbmctbGVmdDogMjVweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gIH1cblxuICAuc3Bpbm5lci1ib3JkZXIge1xuICAgIHdpZHRoOiAxcmVtO1xuICAgIGhlaWdodDogMXJlbTtcbiAgfVxuXG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqXG4gIElOUFVUIFdJVEggUklHSFQgQlVUVE9OXG4qKioqKioqKioqKioqKioqKioqKioqL1xuLmlucHV0LWJ1dHRvbntcbiAgbWFyZ2luLXRvcDogMTBweDtcbiAgZGlzcGxheTogZmxleDtcbiAgaW5wdXR7XG4gICAgZmxleDogYXV0byAhaW1wb3J0YW50O1xuICB9XG4gIGJ1dHRvbntcbiAgICBtYXJnaW4tbGVmdDogMTZweDtcbiAgICBwYWRkaW5nOiAxMnB4IDIwcHg7XG4gIH1cbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKipcbiAgU0VMRUNUIDIgOiBIQUwgdGhlbWVcbioqKioqKioqKioqKioqKioqKioqKiovXG4uc2VsZWN0Mi1jb250YWluZXItLWhhbCB7XG4gIC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGV7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2FhYTtcbiAgICBjdXJzb3I6IHRleHQ7XG4gICAgLnNlbGVjdDItc2VsZWN0aW9uX19yZW5kZXJlZHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgIG1hcmdpbjogMCAwIDVweDtcbiAgICAgIGxpe1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgIG1hcmdpbi10b3A6IDVweDtcbiAgICAgICAgcGFkZGluZzogMCA1cHg7XG4gICAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICB9XG4gICAgfVxuICAgIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2hvaWNlX19yZW1vdmV7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICAgIG1hcmdpbi1yaWdodDo1cHg7XG4gICAgfVxuICB9XG4gIC5zZWxlY3QyLXJlc3VsdHMgPiAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb25ze1xuICAgIG1heC1oZWlnaHQ6IDIwMHB4O1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgLml0ZW0tbGFiZWwge1xuICAgICAgZm9udC1zaXplOiAxMHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgfVxuICB9XG4gIC5zZWxlY3QyLXNlbGVjdGlvbiB7XG4gICAgYm9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1jb2xvcjogIzkwQTRCNjtcbiAgfVxuICAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Nob2ljZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzkwQTRCNiAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgIGJvcmRlci1jb2xvcjogIzkwQTRCNiAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1yYWRpdXM6IDAgIWltcG9ydGFudDtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIG1pbi13aWR0aDogYXV0bztcbiAgfVxufVxuXG4uc2VsZWN0Mi1jb250YWluZXItLWhhbC5zZWxlY3QyLWNvbnRhaW5lci0tZm9jdXMgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSwgLnNlbGVjdDItc2VsZWN0aW9uOmFjdGl2ZSwgLnNlbGVjdDItc2VsZWN0aW9uOmZvY3VzICB7XG4gIGJvcmRlci1jb2xvcjogIzEyNEI4OSAhaW1wb3J0YW50O1xufVxuXG4jbGlicmFyeV9Nb2RhbHtcbiAgLm1vZGFsLWRpYWxvZ3tcbiAgICB3aWR0aDogMzAwcHg7XG4gIH1cbiAgLm1vZGFsLWZvb3RlcntcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgIC5jYW5jZWx7XG4gICAgICBwYWRkaW5nOiAwLjM3NXJlbSAwLjc1cmVtO1xuICAgICAgZm9udC1zaXplOiAwLjg1cmVtO1xuICAgIH1cbiAgfVxufVxuXG4jbGlicmFyeS1saXN0e1xuICAuc2VsZWN0Mi1jb250YWluZXItLWhhbCB7XG4gICAgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZXtcbiAgICAgIC5zZWxlY3QyLXNlbGVjdGlvbl9fcmVuZGVyZWR7XG4gICAgICAgIC5zZWxlY3QyLXNlYXJjaC0taW5saW5le1xuICAgICAgICAgIGJvcmRlcjogdW5zZXQ7XG4gICAgICAgICAgbWFyZ2luOiB1bnNldDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbntcbiAgICAgIGNvbG9yOiAkcHJpbWFyeS1ibHVlMTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgICAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb25bYXJpYS1zZWxlY3RlZD1cInRydWVcIl17XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGRkO1xuICAgIH1cbiAgICAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb25ze1xuICAgICAgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uLS1oaWdobGlnaHRlZHtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktYmx1ZTEtaG92ZXI7XG4gICAgICB9XG4gICAgfVxuICAgIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2hvaWNle1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktYmx1ZTEgIWltcG9ydGFudDtcbiAgICAgIGJvcmRlci1jb2xvcjogJHByaW1hcnktYmx1ZTEgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbiAgLnNoZWxmX3ZhbHVle1xuICAgIGZvbnQtc2l6ZTogJHNpemUtcmVndWxhcjtcbiAgfVxufSIsIi5oZWFkZXItc2l0ZSB7XG4gIG1hcmdpbjogMCA5LjUlO1xufVxuXG4ud2Vic2l0ZS1uYXZpZ2F0aW9uIHtcbiAgbWluLWhlaWdodDogNjBweDtcbiAgcGFkZGluZy10b3A6IDEwcHg7XG4gIHBhZGRpbmctYm90dG9tOiAxMHB4O1xuICBiYWNrZ3JvdW5kOiAkcHJpbWFyeS1ibHVlO1xuXG4gIGEge1xuICAgIGxpbmUtaGVpZ2h0OiA0MHB4O1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgZm9udC1zaXplOiAkc2l6ZS1sYXJnZTtcbiAgICBwYWRkaW5nOiAwIDFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5kcm9wZG93bi1tZW51IHtcbiAgICBhIHtcbiAgICAgIGNvbG9yOiAkcHJpbWFyeS1ibHVlO1xuICAgIH1cbiAgICBsaS5uYXYtaXRlbTpob3ZlciB7XG4gICAgICBhe1xuICAgICAgICBjb2xvcjogJHByaW1hcnktYmx1ZSAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cblxuICAgIC5kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgJj4uZHJvcGRvd24tbWVudSB7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMTAwJTtcbiAgICAgICAgbWFyZ2luLXRvcDogLTZweDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0xcHg7XG4gICAgICB9XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBjb2xvcjogJHByaW1hcnktYmx1ZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogaW5oZXJpdDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgJiA+IC5kcm9wZG93bi1pdGVtIHtcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgfVxuXG4gICAgICAgICYgPiAuZHJvcGRvd24tbWVudSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgfVxufVxuXG4uY3VzdG9tLXBhZ2Uge1xuICAud2lkZ2V0IHtcbiAgICAud2lkZ2V0LWhlYWRlciB7XG4gICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBwYWRkaW5nOiAxMHB4O1xuICAgIH1cblxuICAgIC53aWRnZXQtY29udGVudCB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgICAgIHBhZGRpbmctdG9wOiAxcmVtO1xuICAgICAgdWwge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgfVxuICAgIH1cblxuICAgIC53aWRnZXQtZmVlZHMuYWNjb3JkaW9uIHtcbiAgICAgIG1hcmdpbi10b3A6IC0xcmVtO1xuICAgIH1cblxuICB9XG4gIC5mb3JtLWFjdGlvbnMge1xuICAgIG1hcmdpbjogMnJlbSAwIDAgMDtcbiAgfVxufVxuXG4uYmxvY2txdW90ZS1uZXdzIHtcbiAgZm9udC1zaXplOiAkc2l6ZS1zbWFsbDtcbiAgYm9yZGVyLWxlZnQ6IDRweCBzb2xpZCAkcHJpbWFyeS1ibHVlMTtcbiAgYmFja2dyb3VuZDogJHNoZWFkZXI7XG4gIHBhZGRpbmc6IDIwcHg7XG59XG5cbi5uZXdzLXRpdGxlIHtcbiAgY29sb3I6ICRwcmltYXJ5LWJsdWU7XG59XG5cbi53aWRnZXQtY29udGVudCAudWkuZ3JpZCB7XG4gIG1hcmdpbjogMXJlbTtcbn1cblxuI2hvbWVwYWdlLXNlYXJjaCB7XG4gIGlucHV0IHtcbiAgICBtYXJnaW4tYm90dG9tOiAtMjBweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xuICAgIG1hcmdpbi10b3A6IC0xcmVtO1xuICB9XG4gIGJ1dHRvbiB7XG4gICAgcmlnaHQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIHotaW5kZXg6IDM7XG4gIH1cbn1cbiIsIiNwb3J0YWxzLWxpc3Qge1xuICBtYXJnaW46IDUwcHggNDBweDtcblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pe1xuICAgIG1hcmdpbjogNTBweCAwcHg7XG4gIH1cblxuICAudGl0bGUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRncmF5LWYyO1xuICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuXG4gICAgaDEge1xuICAgICAgZm9udC1zaXplOiAkc2l6ZS1sYXJnZTtcbiAgICAgIHBhZGRpbmctbGVmdDogMzBweDtcbiAgICB9XG5cbiAgICBoMSwgLmNvbC1zZWFyY2gge1xuICAgICAgbGluZS1oZWlnaHQ6IDgwcHg7XG4gICAgfVxuICB9XG5cbiAgdWwubGlzdCB7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICAubGlzdC1ncm91cC1pdGVtIHtcbiAgICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgICAgYm9yZGVyLXRvcDogMCAhaW1wb3J0YW50O1xuICAgICAgcGFkZGluZzogMjBweCAwO1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRncmF5LWU4ICFpbXBvcnRhbnQ7XG4gICAgICBtYXJnaW4tYm90dG9tOjA7XG5cbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICBwYWRkaW5nLXRvcDogMCA7XG4gICAgICB9XG5cbiAgICAgIGltZyB7XG4gICAgICAgIHdpZHRoOiAxNDBweDtcbiAgICAgIH1cblxuICAgICAgaDQge1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgZm9udC1zaXplOiAkc2l6ZS14bDtcbiAgICAgIH1cbiAgICAgIHAge1xuICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgIH1cbiAgICAgIHNtYWxsIHtcbiAgICAgICAgY29sb3I6ICRncmF5LTk3O1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgZm9udC1zaXplOiAkc2l6ZS14c21hbGw7XG4gICAgICB9XG4gICAgICBhIHtcbiAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICB9XG4gICAgICAuYmxvYy1jb3VudGVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdyYXktZTg7XG4gICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgIHBhZGRpbmc6N3B4IDRweDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OjEwcHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICBmb250LXNpemU6ICRzaXplLXhzbWFsbDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxudWwucGFnaW5hdGlvbiB7XG4gIGxpIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcblxuICAgIC5wYWdlIHtcbiAgICAgIGNvbG9yOiAkdG9vbHMtc29ydDtcbiAgICB9XG4gIH1cbn1cblxuLnNlY29uZGFyeS1zZWFyY2gge1xuICBmb250LXNpemU6ICRzaXplLWxhcmdlO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHByaW1hcnktYmx1ZTE7XG4gIG1hcmdpbi1yaWdodDogMzBweDtcblxuICBpbnB1dCB7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgJjpmb2N1cyB7XG4gICAgICBvdXRsaW5lOjA7XG4gICAgfVxuICAgICY6OnBsYWNlaG9sZGVyIHtcbiAgICAgIGNvbG9yOiAkZ3JheS1jYTtcbiAgICAgIGZvbnQtc2l6ZTogJHNpemUtc21hbGw7XG4gICAgfVxuICB9XG5cbiAgLmljb24tbGFyZ2U6OmJlZm9yZSB7XG4gICAgZm9udC1zaXplOiAkc2l6ZS1sYXJnZTtcbiAgfVxufVxuXG5cbi8vKioqKioqKioqKioqXG4vLyBUYWJsZVxuLy8qKioqKioqKioqKipcblxuQG1peGluIGJyb3dzZS10YWJsZSB7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czowO1xuICB0aCB7XG4gICAgd2lkdGg6IDE1JTtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgfVxuXG4gIHRkLnRkLXZhbHVlcyB7XG4gICAgd2lkdGg6IDE1JTtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgfVxuXG4gIC5idG4ge1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgZm9udC1zaXplOiAwLjlyZW07XG4gIH1cblxuICAuYnRuLWRlZmF1bHQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICBib3JkZXItY29sb3I6ICRncmF5LWNhO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JheS1lNjtcbiAgICB9XG4gIH1cbn1cbi5icm93c2UtZG9jdHlwZSB7XG4gIGgyIHtcbiAgICBtYXJnaW4tdG9wOiA0MHB4O1xuICB9XG5cbiAgLnNlY3Rpb24tc2hhZG93IHtcbiAgICAudHlwZG9jLWxhYmVsIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIH1cblxuICAgIC5jb2wtMyB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuICAgIH1cblxuICAgIC5jb3VudGVyIHtcbiAgICAgIHBhZGRpbmc6IDIwcHggMCAxMHB4O1xuICAgICAgJi50b3RhbCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWJsdWUtZGlzYWJsZWQ7XG4gICAgICB9XG4gICAgICAmLm5iIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktYmx1ZS1saWdodDtcbiAgICAgIH1cbiAgICB9XG5cblxuICAgIC5uYiB7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgIGZvbnQtc2l6ZTogJHNpemUteGw7XG4gICAgICBjb2xvcjogJGJsYWNrO1xuICAgIH1cbiAgICBwIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICBmb250LXNpemU6ICRzaXplLXNtYWxsO1xuICAgIH1cbiAgfVxuXG59XG5cblxuLnBlcmlvZC10YWJsZSB7XG4gIEBpbmNsdWRlIGJyb3dzZS10YWJsZTtcblxuICB0aGVhZCB7XG4gICAgdHIge1xuICAgICAgYm94LXNoYWRvdzogMXB4IDJweCAzcHggIzAwMDAwMDI5O1xuXG4gICAgICB0aCB7XG4gICAgICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgdGJvZHkge1xuICAgICY6YmVmb3JlIHtcbiAgICAgIGxpbmUtaGVpZ2h0OjEuNWVtOyBjb250ZW50OlwiXFwyMDBDXCI7IGRpc3BsYXk6YmxvY2s7XG4gICAgfVxuICAgIHRyIHtcbiAgICAgIGJveC1zaGFkb3c6IDFweCAwcHggM3B4ICMwMDAwMDAyOTtcbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIGJveC1zaGFkb3c6IDFweCAycHggM3B4ICMwMDAwMDAyOTtcbiAgICAgIH1cbiAgICAgICY6aG92ZXIsICYuYWN0aXZlIHtcblxuICAgICAgICBiYWNrZ3JvdW5kOiAkaG92ZXI7XG4gICAgICB9XG5cbiAgICAgIHRkIHtcbiAgICAgICAgYm9yZGVyLXRvcDogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmJyb3dzZS1hbHBoYWJldCB7XG4gIG1hcmdpbjogMjBweCAwICFpbXBvcnRhbnQ7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgbGkge1xuICAgIG1hcmdpbjogdW5zZXQgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiB1bnNldCAhaW1wb3J0YW50O1xuXG4gICAgYSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHBhZGRpbmc6IDZweCAxMnB4O1xuICAgICAgbWFyZ2luLWxlZnQ6IC0xcHg7XG4gICAgICBsaW5lLWhlaWdodDogMS40Mjg1NzE0Mjk7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAkZ3JheS1kZTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDAgIWltcG9ydGFudDtcbiAgICAgIGNvbG9yOiAkcHJpbWFyeS1ibHVlMTtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRob3ZlcjtcbiAgICAgIH1cbiAgICB9XG4gICAgJi5hY3RpdmUge1xuICAgICAgYSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRwdXJwbGUtZGFya2VyO1xuICAgICAgICBjb2xvcjokd2hpdGU7XG4gICAgICB9XG4gICAgICBib3JkZXItYm90dG9tOiB1bnNldCAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuLmJyb3dzZS1saXN0IHtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgbGkge1xuICAgIGEge1xuICAgICAgY29sb3I6ICRwcmltYXJ5LWJsdWUxO1xuICAgIH1cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICRob3ZlcjtcbiAgICB9XG4gIH1cblxufVxuXG5cbi8vKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICBCcm93c2UgZG9tYWluIHBvcnRhbFxuLy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuI2RvbWFpbi1lbGVtZW50IHtcbiAgLmhlYWQtbGlzdDpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IHVuc2V0O1xuICB9XG4gIC50cmVlIGxpIHtcbiAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuICBbdHlwZT1cImNoZWNrYm94XCJdOm5vdCg6Y2hlY2tlZCkgKyBsYWJlbDphZnRlciB7XG4gICAgY29udGVudDogdW5zZXQ7XG4gIH1cblxuICBbY2xhc3NePVwiaWNvbi1cIl0sIFtjbGFzcyo9XCIgaWNvbi1cIl0ge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxufVxuXG4vKiBMaXN0IEV4cG9ydCAqL1xuLmV4cG9ydC1saXN0e1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG5cbiAgbGl7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHNoZWFkZXI7XG4gICAgcGFkZGluZzogOHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDZweDtcblxuICAgIHNwYW57XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xuICAgICAgY29sb3I6ICRncmF5LTk3O1xuICAgIH1cblxuICAgIGxhYmVse1xuICAgICAgcGFkZGluZy1sZWZ0OiA2MHB4ICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59IiwiXG4uY29ubmVjdGVkLW5hdmlnYXRpb24ge1xuXG4gIC5saXN0LWdyb3VwIHtcbiAgICBib3JkZXI6IDA7XG4gICAgLmxpc3QtZ3JvdXAtaXRlbSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gICAgICBib3JkZXI6MDtcbiAgICAgIGJvcmRlci1sZWZ0OiA1cHggc29saWQgJHdoaXRlO1xuICAgICAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICBib3JkZXItcmFkaXVzOjA7XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDExcHg7XG4gICAgICAgIG1hcmdpbi10b3A6IDZweDtcbiAgICAgIH1cblxuICAgICAgJi5hY3RpdmUsICYuYWN0aXZlOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICRwcmltYXJ5LWJsdWU7XG4gICAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkcHJpbWFyeS1ibHVlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHVycGxlLWV4dHJhLWxpZ2h0O1xuICAgICAgfVxuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICRwcmltYXJ5LWJsdWU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwdXJwbGUtZXh0cmEtbGlnaHQ7XG4gICAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkcHVycGxlLWV4dHJhLWxpZ2h0O1xuICAgICAgfVxuXG4gICAgICBzcGFuIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB3aWR0aDogMzBweDtcbiAgICAgIH1cblxuICAgICAgJi5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uIHtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgIH1cbiAgICB9XG4gICAgLmRyb3Bkb3duLW1lbnUgLmxpc3QtZ3JvdXAtaXRlbSB7XG4gICAgICBzcGFuIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4jaWRleHQge1xuICAuZmllbGQge1xuICAgIGNvbG9yOiAkcHVycGxlLWxpZ2h0O1xuICAgIGZvbnQtc2l6ZTogJHNpemUtc21hbGw7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgd2lkdGg6IDEzMHB4O1xuICB9XG4gIC52YWx1ZSB7XG4gICAgY29sb3I6ICRibGFjaztcbiAgICBmb250LXNpemU6ICRzaXplLXNtYWxsO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB9XG59XG5cbiV1c2VyLWluZGV4IHtcbiAgLmZpZWxkIHtcbiAgICBjb2xvcjogJHB1cnBsZS1saWdodDtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgfVxuICAudmFsdWUge1xuICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIH1cbn1cblxuLmFjY291bnQsIC5wcmVmZXJlbmNlcywgLnVzZXItaWRoYWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgdHI6Zmlyc3QtY2hpbGQgdGQge1xuICAgIGJvcmRlci10b3A6IG5vbmU7XG4gIH1cblxuICAuYnRuLWVkaXQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6MDtcbiAgICByaWdodDogMDtcbiAgICBoZWlnaHQ6IDQwcHg7XG4gICAgd2lkdGg6IDQwcHg7XG4gICAgLmljb24ge1xuICAgICAgZm9udC1zaXplOiAkc2l6ZS1sYXJnZTtcbiAgICB9XG4gIH1cbiAgLmJ0bi1zZWNvbmRhcnktYmx1ZSwgLmJ0bi1zZWNvbmRhcnktYmx1ZSAuaWNvbiB7XG4gICAgZm9udC1zaXplOiAkc2l6ZS1yZWd1bGFyO1xuICB9XG59XG5cbi5hY2NvdW50LCAudXNlci1pZGhhbCB7XG4gIEBleHRlbmQgJXVzZXItaW5kZXg7XG4gIC5maWVsZCwgdmFsdWUge1xuICAgIGZvbnQtc2l6ZTogJHNpemUtc21hbGw7XG4gIH1cbiAgLmZpZWxkIHtcbiAgICB3aWR0aDogMTMwcHg7XG4gIH1cbn1cblxuLnByZWZlcmVuY2VzIHtcbiAgQGV4dGVuZCAldXNlci1pbmRleDtcbiAgLmZpZWxkLCAudmFsdWUge1xuICAgIGZvbnQtc2l6ZTogJHNpemUtcmVndWxhcjtcbiAgICB3aWR0aDogaW5oZXJpdDtcbiAgfVxuXG4gIGRpdi5maWVsZCwgZGl2LnZhbHVlIHtcbiAgICBwYWRkaW5nOiAwLjc1cmVtO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgfVxuXG4gIC52YWx1ZSB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQgIWltcG9ydGFudDtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xuICAgIC5zZWxlY3QyLWNvbnRhaW5lciB7XG4gICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIC50aXRsZS1wcmVwZW5kIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm9yZGVyLWJvdHRvbToycHggc29saWQgJGJsYWNrO1xuICAgIHdpZHRoOjIzcHg7XG4gICAgaGVpZ2h0OjEwcHg7XG4gICAgbGVmdDotMTZweDtcbiAgICB0b3A6MnB4O1xuICB9XG4gIC5oYWwtc2VsZWN0IHtcbiAgICB3aWR0aDogMTUwcHg7XG4gICAgaGVpZ2h0OiAzNXB4O1xuICAgIGJhY2tncm91bmQ6ICRncmF5LWY0O1xuICAgIGJvcmRlci1yYWRpdXM6IDAgIWltcG9ydGFudDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG5cbiAgICAmOmFjdGl2ZSwgJjpmb2N1cyB7XG4gICAgICBvdXRsaW5lOiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG5cbiV0YWJsZS13aGl0ZS1kZWZhdWx0IHtcbiAgdHIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZ3JheS1jYTtcblxuICAgICY6aG92ZXIsICY6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGhvdmVyO1xuICAgICAgYm94LXNoYWRvdzogMHB4IDNweCA2cHggJGJveC1zaGFkb3c7XG5cbiAgICAgIC5pY29uLWRyYWcge1xuICAgICAgICBjb2xvcjogJHByaW1hcnktYmx1ZTE7XG4gICAgICB9XG4gICAgfVxuXG4gICAgdGQ6Zmlyc3QtY2hpbGQge1xuICAgICAgcGFkZGluZy1sZWZ0OiAxNHB4O1xuICAgIH1cblxuICAgIHRkIHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgcGFkZGluZy10b3A6IDIwcHg7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgICB9XG4gIH1cbn1cblxuI3BhcnRhZ2VfdGFibGUge1xuICBAZXh0ZW5kICV0YWJsZS1teXNwYWNlO1xuICB3aWR0aDogMTAwJTtcbiAgdGJvZHkge1xuICAgIEBleHRlbmQgJXRhYmxlLXdoaXRlLWRlZmF1bHQ7XG4gIH1cbn1cblxuI3BhcnRhZ2UtZGVwb3NpdCAjc2hhcmUtZG9jIHtcbiAgLmZvcm0tZ3JvdXAge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGJhc2VsaW5lO1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bih4cykge1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgfVxuICB9XG4gICN1c2VyIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHhzKSB7XG4gICAgICB3aWR0aDo0MDBweDtcbiAgICB9XG4gIH1cbn1cblxuI215ZGVwb3NpdCB7XG4gIHdpZHRoOiAxMDAlO1xuICB0Ym9keSB7XG4gICAgI293bnN1YntcbiAgICAgIEBleHRlbmQgJXRhYmxlLXdoaXRlLWRlZmF1bHQ7XG4gICAgfVxuICB9XG59XG5cbiNjYXJvdXNlbERlcG90cyB7XG4gIGhlaWdodDogMTAwJTtcbiAgLmNhcm91c2VsLWlubmVyIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cbiAgLmNhcm91c2VsLWNvbnRyb2wtcHJldiB7XG4gICAganVzdGlmeS1jb250ZW50OiB1bnNldDtcbiAgICBib3R0b206IHVuc2V0O1xuICAgIGNvbG9yOiAkcHJpbWFyeS1ibHVlMTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG4gIC5jYXJvdXNlbC1jb250cm9sLXByZXY6aG92ZXIsIC5jYXJvdXNlbC1jb250cm9sLXByZXY6Zm9jdXMge1xuICAgIGNvbG9yOiAkcHJpbWFyeS1ibHVlMTtcbiAgfVxufVxuXG4uaGFsLW1vZGFsIHtcbiAgJi5mYWRlLnNob3cge1xuICAgIC8vYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAmLm1vZGFsLWxhcmdlIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHhzKSB7XG4gICAgICAubW9kYWwtZGlhbG9nIHtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAwcHggIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKipcbiAgICBNT04gQ09NUFRFXG4gICArKysrKysrKysrKysrKysrKysrKysrKi9cblxuICAuYnRuLWNoYW5nZXBob3RvLCAuYnRuLWRlbGV0ZXBob3RvLCAuYnRuLXN1Ym1pdGVkaXRhY2NvdW50IHtcbiAgICB3aWR0aDogMjAwcHg7XG4gICAgZm9udC1zaXplOiAkc2l6ZS1zbWFsbDtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgfVxuXG4gIC5idG4tZGVsZXRlcGhvdG8ge1xuICAgIGNvbG9yOiAkc2Vjb25kYXJ5LWVycm9yO1xuICB9XG59XG5cbi5wcm9ncmVzcyB7XG4gIGhlaWdodDogMTBweDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgLnByb2dyZXNzLWJhciB7XG4gICAgd2lkdGg6MCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktYmx1ZTtcbiAgfVxufVxuXG4uYmctZ3JheSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRncmF5LWY0O1xufVxuXG4lbm8tZGF0YSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRzaGVhZGVyO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICA+IGRpdntcbiAgICB3aWR0aDogMzIwcHg7XG4gICAgbWFyZ2luOiBhdXRvO1xuICAgIGZvbnQtc2l6ZTogJHNpemUtbGFyZ2U7XG4gIH1cbiAgLmhhbC1zdWJtaXQtYnV0dG9uIHtcbiAgICBwYWRkaW5nOiAxMHB4IDIwcHg7XG4gIH1cbn1cblxuLmluZm8tbm8tZG9jdW1lbnQge1xuICBjb2xvcjogJHNlY29uZGFyeS1lcnJvcjtcbiAgbWFyZ2luOiAyMHB4O1xufVxuXG4uc3F1YXJlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBoZWlnaHQ6IDIwcHg7XG4gIHdpZHRoOiAyMHB4O1xuICAmLnNxdWFyZS1hZGRlZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHNlY29uZGFyeS1zdWNjZXNzLWV4dHJhLWxpZ2h0O1xuICB9XG4gICYuc3F1YXJlLWRlbGV0ZWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRzZWNvbmRhcnktZXJyb3ItZXh0cmEtbGlnaHQ7XG4gIH1cbn1cbi5hZGRlZC1lbG0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2Vjb25kYXJ5LXN1Y2Nlc3MtZXh0cmEtbGlnaHQ7XG59XG4uZGVsZXRlZC1lbG0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2Vjb25kYXJ5LWVycm9yLWV4dHJhLWxpZ2h0O1xufSIsIi8qKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgR0VORVJBTCBUQUJMRVxuKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLnNvcnR7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBjb2xvcjogJHByaW1hcnktYmx1ZTE7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYm9yZGVyOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblxuICAmOm5vdCg6bGFzdC1jaGlsZCl7XG4gICAgcGFkZGluZy1yaWdodDogMTVweDtcbiAgfVxuICBzcGFue1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gICAgZm9udC1zaXplOiAuM3JlbTtcbiAgfVxuXG4gICYuYXNjIHNwYW57XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gIH1cbiAgJi5kZXNjIHNwYW57XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgfVxufVxuXG4udGFibGUtdXNlci10b29scyB7XG4gIC5jaGVja2JveCB7XG4gICAgd2lkdGg6IDYwcHg7XG4gICAgcGFkZGluZy1sZWZ0OiAxNHB4O1xuICAgIHBhZGRpbmctdG9wOiAyMHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDBweDtcbiAgfVxuICAuc29ydC1saWJyYXJ5IHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbiAgLmljb25zLWxpYnJhcnkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICB9XG4gIC5pY29ucy1zZWFyY2hlcyB7XG4gICAgLnBvcC1vdmVyIHtcbiAgICAgIHJpZ2h0OiB1bnNldDtcbiAgICB9XG4gIH1cbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICBNRVMgRkFWT1JJU1xuKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8vIEZvciB0YWJzLCBwaWxsc1xuLnNlY3Rpb24tY29udGVudCAubmF2LXBpbGxze1xuICAubmF2LWl0ZW0gLm5hdi1saW5re1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGZvbnQtc2l6ZTogY2FsYygjeyRzaXplLWxhcmdlfSAtIC4xcmVtKTtcbiAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG5cbiAgICAmOjpiZWZvcmV7XG4gICAgICBsZWZ0OiAuN3JlbTtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIHdpZHRoOiA5MCU7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGJsYWNrO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICB9XG4gICAgJi5hY3RpdmV7XG4gICAgICBjb2xvcjogJHByaW1hcnktYmx1ZTE7XG4gICAgICAmOjpiZWZvcmV7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDdweCBzb2xpZCAkcHJpbWFyeS1ibHVlMTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLnVzZXItc2VjdGlvbi1tZW51e1xuICBwYWRkaW5nOiAzMHB4IDI2cHggMCAyNnB4ICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICRncmF5LWYyO1xuICBtYXJnaW4tYm90dG9tOiAzNHB4O1xufVxuXG4uc2VhcmNoZXMtdGFibGV7XG4gIFt0eXBlPVwiY2hlY2tib3hcIl06bm90KDpjaGVja2VkKSArIGxhYmVsIHtcbiAgICB0b3A6IC04cHg7XG4gIH1cbiAgLnJvdyB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBkaXY6bm90KC5zZWFyY2gtZGF0ZSkge1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgfVxuICAgIC5pY29uLXNhdmVkX3NlYXJjaHtcbiAgICAgIGZvbnQtc2l6ZTogJHNpemUteHhsO1xuICAgIH1cbiAgfVxuICB0ZDpmaXJzdC1jaGlsZCB7XG4gICAgd2lkdGg6IDYwcHg7XG4gIH1cbn1cblxuLnNlYXJjaC1mcmVxLWxpc3R7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgcGFkZGluZzogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICBjb2xvcjogJGJsYWNrO1xuICBmb250LXdlaWdodDogYm9sZDtcblxuICBsaTpob3ZlcntcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWJsdWUxO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxuICBsaS5kaXNhYmxlZDpob3ZlcntcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICB9XG59XG5cbi5zZWFyY2gtZnJlcS1kaXZ7XG4gIG1heC13aWR0aDogMjUwcHg7XG4gIHBhZGRpbmc6IDAgMjBweCAxMHB4IDIwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICRncmF5LWYyO1xuICBzcGFue1xuICAgIGZvbnQtc2l6ZTogJHNpemUtc21hbGw7XG4gICAgY29sb3I6ICRncmF5LTY0O1xuICB9XG59XG5cbi5kcm9wZG93bi1zZWFyY2gsIC5kcm9wZG93bi1saWJyYXJ5e1xuICA+IGxpIGJ1dHRvbiA+IHNwYW46Zmlyc3QtY2hpbGQsID4gbGkgYSA+IHNwYW46Zmlyc3QtY2hpbGR7XG4gICAgbWFyZ2luLWxlZnQ6IC0xMHB4O1xuICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAmOmJlZm9yZXtcbiAgICAgIGNvbG9yOiB1bnNldDtcbiAgICB9XG4gIH1cbiAgLmhhbC1vcHRpb24tYnV0dG9uID4gc3BhbntcbiAgICBtYXJnaW46IHVuc2V0ICFpbXBvcnRhbnQ7XG4gIH1cbiAgbGkgLmJ0bi1zZWNvbmRhcnk6Zm9jdXMsIGxpIC5idG4tc2Vjb25kYXJ5OmhvdmVye1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWJsdWUxO1xuICB9XG59XG4uZHJvcGRvd24tbGlicmFyeXtcbiAgbWF4LXdpZHRoOiAzMDBweDtcbn1cblxubGFiZWxbZm9yPVwic2VsZWN0LWFsbC1oZWFkLXNlYXJjaFwiXSwgbGFiZWxbZm9yPVwic2VsZWN0LWFsbC1oZWFkLWxpYnJhcnlcIl17XG4gIHRvcDogLThweDtcbn1cblxuXG4ldGFibGUtbXlzcGFjZSB7XG4gIC5zZWNvbmRhcnktc2VhcmNoIHtcbiAgICBmb250LXNpemU6ICRzaXplLXNtYWxsO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgaW5wdXQge1xuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxuICAucm93IHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIG1hcmdpbi1yaWdodDogdW5zZXQ7XG4gICAgbWFyZ2luLWxlZnQ6IHVuc2V0O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB9XG4gIHRhYmxlIHtcbiAgICB0ZDpsYXN0LWNoaWxkIHtcbiAgICAgIHdpZHRoOiAxMCU7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XG4gICAgLnNlY29uZGFyeS1zZWFyY2gge1xuICAgICAgaW5wdXQge1xuICAgICAgICB3aWR0aDogODAlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5zZWFyY2gtZGF0ZXtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XG4gICAgLnR5cGRvYyB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4jZmF2b3JpdGUtdXNlci1zZWFyY2hlcyB7XG4gIEBleHRlbmQgJXRhYmxlLW15c3BhY2U7XG4gIGRpdi5zZWN0aW9uLXNoYWRvdy5zZWN0aW9uLWNvbnRlbnQge1xuICAgIGJ1dHRvbiBzcGFue1xuICAgICAgY29sb3I6ICRncmF5LWNhO1xuXG4gICAgICAmOmJlZm9yZXtcbiAgICAgICAgY29sb3I6ICRncmF5LWNhO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4jZmF2b3JpdGUtdXNlcntcbiAgQGV4dGVuZCAldGFibGUtbXlzcGFjZTtcbiAgZGl2LnNlY3Rpb24tc2hhZG93LnNlY3Rpb24tY29udGVudCB7XG4gICAgLnNlY29uZGFyeS1zZWFyY2gge1xuICAgICAgZm9udC1zaXplOiAkc2l6ZS1zbWFsbDtcbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgfVxuICB9XG4gIC5zb3J0LWdyb3Vwe1xuICAgIG1pbi13aWR0aDogNDAlO1xuICB9XG59XG5cbi5uby1saWJyYXJ5LCAubm8tc3VnZ2VzdCB7XG4gIEBleHRlbmQgJW5vLWRhdGE7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuLm5vLXN1Z2dlc3Qge1xuICBtaW4taGVpZ2h0OiA0MDBweDtcbn1cblxuLm5vLWZhdm9yaXRlIHtcbiAgQGV4dGVuZCAlbm8tZGF0YTtcbiAgaGVpZ2h0OiAzMDBweDtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICBNRVMgREVQT1RTXG4qKioqKioqKioqKioqKioqKioqKioqKioqL1xuLnNlY3Rpb24tdG9vbHN7XG4gIGJ1dHRvbntcbiAgICAvL21hcmdpbi1yaWdodDogMzBweDtcbiAgfVxuICBwYWRkaW5nLXJpZ2h0OiAwcHggIWltcG9ydGFudDtcbiAgcGFkZGluZy1sZWZ0OiAwcHggIWltcG9ydGFudDtcbn1cblxuI01lc2RlcG90cyB7XG4gIEBleHRlbmQgJXRhYmxlLW15c3BhY2U7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xuICAgIC5zZWNvbmRhcnktc2VhcmNoIHtcbiAgICAgIG1hcmdpbi1yaWdodDogdW5zZXQ7XG4gICAgfVxuICAgIHRkOmxhc3QtY2hpbGQge1xuICAgICAgd2lkdGg6IDAgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cblxuI2Zhdm9yaXRlLXVzZXIge1xuICAuc2Vjb25kYXJ5LXNlYXJjaCB7XG4gICAgbWFyZ2luLWxlZnQ6IHVuc2V0ICFpbXBvcnRhbnQ7XG4gICAgaW5wdXQge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG5cbn1cblxuI2xpYnJhcnktdGFibGV7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgICAubGliLXRpdGxlIHtcbiAgICAgIHdpZHRoOiA1MSU7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiA0MHB4O1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIH1cbiAgfVxuICAubGlzdCB7XG4gICAgdHIge1xuICAgICAgdGQ6Zmlyc3QtY2hpbGQge1xuICAgICAgICB3aWR0aDogNjBweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHhzKSB7XG4gICAgLnR5cGRvYyB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuXG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgRFJPUERPV04tTUVOVVxuKioqKioqKioqKioqKioqKioqKioqKioqKi9cbiNmYXZvcml0ZS11c2VyLCAjZmF2b3JpdGUtdXNlci1zZWFyY2hlcywgI2Nhcm91c2VsRGVwb3Rze1xuICAuZHJvcGRvd24tbWVudXtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JheS1mYTtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYm9yZGVyLXJhZGl1czogMHB4O1xuICAgIHBhZGRpbmc6IDE2cHggMTZweCA2cHggMTZweDtcbiAgfVxuICAuc2VjdGlvbi10b29scyAuZHJvcGRvd24tbWVudXtcbiAgICB3aWR0aDogbWF4LWNvbnRlbnQ7XG4gICAgbGl7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgIH1cbiAgfVxufVxuLy8gRGlzcGxheSBhdCB0aGUgbGVmdCB0aGUgc3VibWVudVxuLmRyb3Bkb3duLXN1Ym1lbnUgLmRyb3Bkb3duLW1lbnUge1xuICB0b3A6IDA7XG4gIGxlZnQ6IC0xMTQlO1xuICBtYXJnaW4tbGVmdDogLjFyZW07XG4gIG1hcmdpbi1yaWdodDogLjFyZW07XG59XG5cbi5kcm9wZG93bi1hY3Rpb25zIHtcbiAgYm94LXNoYWRvdzogMHB4IDNweCA2cHggIzAwMDAwMDI5O1xuICBib3JkZXI6IDAhaW1wb3J0YW50O1xuICBsZWZ0OiAtNTBweCFpbXBvcnRhbnQ7XG4gIGxpIHtcbiAgICAmLmRpdmlkZXIge1xuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRncmF5LWNhO1xuICAgICAgbWFyZ2luOiA1cHggMjBweDtcbiAgICB9XG4gICAgYSwgYnV0dG9uIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWwhaW1wb3J0YW50O1xuXG4gICAgICBpIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8qKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgIExPR09cbioqKioqKioqKioqKioqKioqKioqKiovXG4uaG9tZS1zdWJtaXR7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgvYXNzZXRzL2ltZy9oYWwtaW5kZXgtYmcucG5nKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogdG9wIC01MHB4IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdCA7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAkd2hpdGU7XG4gIHBhZGRpbmctdG9wOiA2MHB4O1xuXG4gIC5ob21lLXRpdGxlIHtcbiAgICBoZWlnaHQ6IDQ2MHB4O1xuICB9XG4gIC5sb2dvLWhhbC1ob21lIHtcbiAgICB3aWR0aDogNTAwcHg7XG4gIH1cbiAgLmhvbWUtcHJvbWlzZSB7XG4gICAgZm9udC1zaXplOiAkc2l6ZS14eGw7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBtYXJnaW4tdG9wOiAxMjVweDtcblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAwcHgpIGFuZCAobWF4LXdpZHRoOiA1NzZweCkge1xuICAgICAgbWFyZ2luLXRvcDogMHB4IWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgfVxuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAxOTIwcHgpIHtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJSA2MDBweDtcbiAgfVxufVxuXG4jZGVwb3NpdC1pbmRleC1saW5re1xuICBtYXJnaW46IC0xMjBweCBhdXRvIDUwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYSB7XG4gICAgZm9udC1zaXplOiAkc2l6ZS14eGw7XG4gICAgcGFkZGluZzoxMHB4IDI1cHg7XG4gICAgJjpob3ZlcntcbiAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgfVxuICB9XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqXG4gICAgIFBSRVNFTlRBVElPTlxuKioqKioqKioqKioqKioqKioqKioqKi9cbiNoYWwtcHJlc2VudGF0aW9uIHtcbiAgbWFyZ2luLXRvcDogNSU7XG4gIGRpdntcbiAgICBtYXgtd2lkdGg6IDQwMHB4O1xuICB9XG4gIGkge1xuICAgIGNvbG9yOiAkcHJpbWFyeS1ibHVlO1xuICB9XG4gIGgye1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGZvbnQtc2l6ZTogJHNpemUteGw7XG4gICAgY29sb3I6ICRwcmltYXJ5LWJsdWU7XG4gIH1cbiAgdGFibGUgdHJ7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgJjpmaXJzdC1jaGlsZHtcbiAgICAgIGZvbnQtc2l6ZTogJHNpemUteHh4bDtcbiAgICB9XG4gICAgJjpudGgtY2hpbGQoMikgdGR7XG4gICAgICBoZWlnaHQ6IDEwMHB4O1xuICAgIH1cbiAgICAmOmxhc3QtY2hpbGR7XG4gICAgICBmb250LXNpemU6ICRzaXplLWxhcmdlO1xuICAgIH1cbiAgfVxuICBwIHtcbiAgICBjb2xvcjogJGdyYXktMzc7XG4gIH1cbn1cbiNzY3JvbGxUbyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MHB4O1xuXG4gIC5pY29uLXNjcm9sbDo6YmVmb3JlIHtcbiAgICBjb2xvcjogJHByaW1hcnktYmx1ZTtcbiAgICBmb250LXNpemU6ICRzaXplLXh4eGw7XG4gIH1cbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKipcbiAgICAgUkVDSEVSQ0hFXG4qKioqKioqKioqKioqKioqKioqKioqL1xuc2VjdGlvbi5ob21lLXNlYXJjaHtcbiAgYmFja2dyb3VuZDogJHByaW1hcnktYmx1ZTtcbiAgcGFkZGluZzogNTBweCA1MHB4IDEwMHB4O1xuXG4gICNzZWFyY2hOR3tcbiAgICAuaW5wdXQtZ3JvdXAge1xuICAgICAgaW5wdXQge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gICAgICB9XG4gICAgICBidXR0b24ge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xuICAgICAgfVxuICAgIH1cblxuICAgIGlucHV0OmZvY3Vze1xuICAgICAgY29sb3I6IGJsYWNrICFpbXBvcnRhbnQ7XG4gICAgICBib3JkZXItY29sb3I6ICRwcmltYXJ5LWJsdWUxICFpbXBvcnRhbnQ7XG5cbiAgICAgICY6OnBsYWNlaG9sZGVye1xuICAgICAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICB9XG4gICAgfVxuXG5cbiAgICAuaW5wdXQtZ3JvdXAge1xuICAgICAgcGFkZGluZzogNTBweCAyMCUgO1xuXG4gICAgICAuZm9ybS1jb250cm9se1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICRwcmltYXJ5LWJsdWUzICFpbXBvcnRhbnQ7XG4gICAgICAgIGJvcmRlci1yaWdodDogMCFpbXBvcnRhbnQ7XG4gICAgICAgIGhlaWdodDogNzVweDtcbiAgICAgICAgZm9udC1zaXplOiAkc2l6ZS1sYXJnZTtcbiAgICAgICAgJjpwbGFjZWhvbGRlci1zaG93bntcbiAgICAgICAgICBjb2xvcjogJGdyYXktY2E7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIGJ1dHRvbntcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICRwcmltYXJ5LWJsdWUzICFpbXBvcnRhbnQ7XG4gICAgICAgIGJvcmRlci1sZWZ0OiAwIWltcG9ydGFudDtcbiAgICAgICAgLmljb24tc2VhcmNoIHtcbiAgICAgICAgICBmb250LXNpemU6IDQwcHg7XG4gICAgICAgICAgY29sb3I6ICRwcmltYXJ5LWJsdWUxO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5zZWFyY2gtc3Bpbm5lciB7XG4gICAgICAgIHRvcDogNzdweDtcbiAgICAgICAgcmlnaHQ6IGluaGVyaXQ7XG4gICAgICAgIHotaW5kZXg6IDEwO1xuICAgICAgICBtYXJnaW4tbGVmdDogN3B4O1xuICAgICAgfVxuXG4gICAgfVxuICB9XG5cbiAgLndoaXRlX2JvbGR7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBmb250LXNpemU6ICRzaXplLXh4bDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgJi5icm93c2UtZG9tYWluIHtcbiAgICAgIGZvbnQtc2l6ZTogJHNpemUteGw7XG4gICAgfVxuICAgIHNwYW57XG4gICAgICBjb2xvcjogJHByaW1hcnktb3JhbmdlO1xuICAgICAgZm9udC1zaXplOiBsYXJnZXI7XG4gICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIH1cbiAgfVxuXG4gICN3cmFwcGVyRG9tYWlue1xuICAgIG1hcmdpbjogMzBweCAyMCU7XG4gICAgbGluZS1oZWlnaHQ6IDQwcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgYSB7XG4gICAgICBmb250LXNpemU6ICRzaXplLXhsO1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIG1hcmdpbi1yaWdodDogOHB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogOHB4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktYmx1ZTE7XG4gICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICBwYWRkaW5nOiA1cHggMTBweDtcbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgfVxuICAgICY6aG92ZXIgPiBhIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWJsdWUtaG92ZXI7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbn1cblxuc2VjdGlvbntcbiAgbWFyZ2luLWJvdHRvbTogMTA0cHg7XG59XG5cbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xuICAuaG9tZS1wcm9taXNlIHtcbiAgICBsaW5lLWhlaWdodDogbm9ybWFsIWltcG9ydGFudDtcbiAgfVxuICAuaG9tZS1zdWJtaXQgLmhvbWUtdGl0bGUge1xuICAgIGhlaWdodDogMjAwcHg7XG4gIH1cbiAgLmhvbWUtc3VibWl0ID4gYXJ0aWNsZXtcbiAgICBtYXJnaW4tdG9wOiAyMDBweDtcbiAgfVxuICAjZGVwb3NpdC1pbmRleC1saW5rIHtcbiAgICAgbWFyZ2luLXRvcDowO1xuICAgfVxuICBzZWN0aW9uLmhvbWUtc2VhcmNoIHtcbiAgICBwYWRkaW5nLWxlZnQ6MDtcbiAgICBwYWRkaW5nLXJpZ2h0OjA7XG5cbiAgICAjc2VhcmNoTkcgLmlucHV0LWdyb3VwIHtcblxuICAgICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICAgICAgcGFkZGluZy1yaWdodDogMTBweDtcblxuICAgICAgYnV0dG9uIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gICAgI3dyYXBwZXJEb21haW4ge1xuICAgICAgbWFyZ2luOiAwO1xuICAgIH1cbiAgfVxuXG59XG5cbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSl7XG4gIC8qI2RlcG9zaXQtaW5kZXgtbGlua3tcbiAgICBwYWRkaW5nOiA1cHg7XG4gIH0qL1xuICAjc2Nyb2xsVG97XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XG4gICN0c3BhcnRpY2xlcywgI3RzcGFydGljbGVzMntcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgV0lER0VUXG4qKioqKioqKioqKioqKioqKioqKioqL1xuXG4uc2VjdGlvbi13aWRnZXRcbiAge1xuICBtYXJnaW46IDAgOS41JTtcbiAgLndpZGdldCB7XG4gICAgYm94LXNoYWRvdzogMHB4IDNweCAxNXB4ICMwMDAwMDAyOTtcbiAgICAud2lkZ2V0LWhlYWRlcntcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWJsdWU7XG4gICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgcGFkZGluZy10b3A6IDEwcHg7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICAgIGgzLnRpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICB9XG4gIH1cbn1cblxuLyogQ2xvdWQgKi9cbi53aWRnZXQtY2xvdWQge1xuICAua2V5d29yZCB7XG4gICAgdGV4dC1hbGlnbjoganVzdGlmeTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxJTtcbiAgICBwYWRkaW5nLWxlZnQ6IDElO1xuICB9XG4gIC5rZXl3b3JkLTEgeyBmb250LXNpemU6IDhweDt9XG4gIC5rZXl3b3JkLTIgeyBmb250LXNpemU6IDlweDt9XG4gIC5rZXl3b3JkLTMgeyBmb250LXNpemU6IDEwcHg7fVxuICAua2V5d29yZC00IHsgZm9udC1zaXplOiAxMnB4O31cbiAgLmtleXdvcmQtNSB7IGZvbnQtc2l6ZTogMTRweDt9XG4gIC5rZXl3b3JkLTYgeyBmb250LXNpemU6IDE2cHg7fVxuICAua2V5d29yZC03IHsgZm9udC1zaXplOiAxOHB4O31cbiAgLmtleXdvcmQtOCB7IGZvbnQtc2l6ZTogMjBweDt9XG4gIC5rZXl3b3JkLTkgeyBmb250LXNpemU6IDIycHg7fVxuICAua2V5d29yZC0xMCB7IGZvbnQtc2l6ZTogMjRweDt9XG59XG5cbi8qIEZlZWQgKi9cbi53aWRnZXQtZmVlZHN7XG4gIHdpZHRoOiAxMDAlO1xuXG4gIGJ1dHRvbi5pY29uLWRyb3BfZG93biB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgfVxuXG4gIC5kYXRlRmVlZCB7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIH1cblxuICAudGl0bGVGZWVkIHtcbiAgICBjb2xvcjogJHByaW1hcnktYmx1ZTM7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgbWFyZ2luLWxlZnQ6IDQ1cHg7XG4gIH1cblxuICAuZmVlZC5pdGVte1xuICAgIHNwYW5bY2xhc3NePSdpY29uLSdde1xuICAgICAgZm9udC1zaXplOiAuNTVyZW07XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBjb2xvcjogJHByaW1hcnktYmx1ZTE7XG4gICAgfVxuICAgIC5jYXJkLWhlYWRlciBidXR0b24ge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgdGV4dC1hbGlnbjogdW5zZXQ7XG4gICAgfVxuICAgIGJ1dHRvbi5kaXNwbGF5e1xuICAgICAgYm9yZGVyOm5vbmU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB9XG4gIH1cblxuICAubGluayB7XG4gICAgc3BhbiB7XG4gICAgICBjb2xvcjogJHRvb2xzLXNvcnQ7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICB9XG4gICAgLmJ0bi1saW5rIHNwYW5bY2xhc3NePVwiaWNvbi1cIl17XG4gICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICAgIGZvbnQtc2l6ZTogJHNpemUtcmVndWxhcjtcbiAgICAgIGNvbG9yOiAkdG9vbHMtc29ydDtcbiAgICB9XG4gICAgYTpob3ZlciwgYTpob3ZlciBzcGFuLCBhOmhvdmVyIHBhdGgsIGE6aG92ZXIgc3BhbltjbGFzc149XCJpY29uLVwiXSAge1xuICAgICAgY29sb3I6ICRwcmltYXJ5LWJsdWUzO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cbiAgICAmLnJpZ2h0IHtcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgIG1hcmdpbi1yaWdodDogMTVweDtcbiAgICB9XG4gIH1cbn1cblxuLnNlY3Rpb24td2lkZ2V0IC5jb2wtc20tMTIgLndpZGdldC1jb250ZW50e1xuICBtYXgtaGVpZ2h0OiA3MzlweDtcbn1cbi5zZWN0aW9uLXdpZGdldCAuY29sLXNtLTEyOmZpcnN0LW9mLXR5cGUgPiBkaXZbaWRePVwid2lkZ2V0LVwiXXtcbiAgLndpZGdldC1jb250ZW50e1xuICAgIG1hcmdpbi10b3A6IDFyZW07XG4gIH1cbn1cblxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKXtcbiAgLmNvbC1zbS0xMntcbiAgICAud2lkZ2V0LndpZGdldHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgfVxuICB9XG59XG5cbi5sYWJlbC5sYWJlbC1jb250cmFzdHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBjb2xvcjogJHByaW1hcnktb3JhbmdlO1xufVxuLndpZGdldC1oZWFkZXIuYmxvY2sucGItMiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBjb2xvcjogJGJsYWNrO1xufVxuLmxpc3QtZGVwb3NpdHtcbiAgcGFkZGluZzogMTBweCA1MHB4O1xuICAubWVkaWF7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZ3JheS1jYTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbiAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICY6aG92ZXJ7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaG92ZXI7XG4gICAgfVxuICAgIC5tZWRpYS1ib2R5IGF7XG4gICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgJjpob3ZlcntcbiAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi5zZWFyY2gtd2lkZ2V0e1xuICBtYXJnaW4tYm90dG9tOiA1MHB4O1xuICBwYWRkaW5nOiAxNjBweDtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgbGluZWFyLWdyYWRpZW50KDE4MGRlZywgIzI5MjA2M0VCIDAlLCAjMzM3QUI3RTYgMTAwJSkgMCUgMCUgbm8tcmVwZWF0IHBhZGRpbmctYm94O1xuICBtYXJnaW4tdG9wOiA1MHB4O1xufVxuLnNlYXJjaC1jb250YWluZXJ7XG4gIG1hcmdpbi1ib3R0b206IDU1MHB4O1xuICAud2lkZ2V0LndpZGdldHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgfVxufVxuI3NoZXJwYXtcbiAgbWFyZ2luOiAzMHB4O1xufVxuXG4jYnktcHVibGlzaGVyLCAjYnktam91cm5hbHtcblxuICBpbnB1dHtcbiAgICBmbGV4OiAxIDEgMCUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5idG4tc3VjY2Vzc3tcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IDQwcHg7XG4gICAgc3Bhbi5pY29uLXNlYXJjaDo6YmVmb3Jle1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICB9XG4gIH1cbn1cblxuLnN3aXRjaCArIC5wbC0zIHtcbiAgZm9udC1zaXplOiAkc2l6ZS14c21hbGw7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4ua2V5X251bWJlcnN7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7cG9zaXRpb246IHJlbGF0aXZlO2hlaWdodDogNzBweDtwYWRkaW5nLXRvcDogOHB4O1xufVxuLmtleV9udW1iZXJzID4gZGl2IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZsb2F0OiBsZWZ0O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4ua2V5X251bWJlcnMgPiBkaXYgPiBzcGFuIHtcbiAgZm9udC1zaXplOiAxNXB4O2ZvbnQtd2VpZ2h0OiBib2xkO1xufVxuLmtleV9udW1iZXJzID4gZGl2ID4gc3Ryb25nIHtcbiAgZm9udC1zaXplOiAxMHB4O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZy10b3A6IDE1cHg7XG59IiwiLyoqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICBHRU5FUkFMIEhFQURFUlxuKioqKioqKioqKioqKioqKioqKioqKi9cblxuLm5hdnMge1xuICB6LWluZGV4OiAxMDAwMDtcbiAgd2lkdGg6IDEwMCU7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB0cmFuc2l0aW9uOiBhbGwgMzAwbXMgZWFzZTtcblxuICAmLnNjcm9sbC11cHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIH1cbiAgJi5zY3JvbGwtZG93bntcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xuICB9XG59XG5cblxuXG5uYXYubmF2YmFye1xuICAmLmhlYWRlciB7XG4gICAgaGVpZ2h0OiA0MHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IHRvcCBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kOiAkcHJpbWFyeS1ibHVlO1xuICB9XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICAvKmJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWJsdWU7Ki9cbiAgY29sb3I6ICR3aGl0ZTtcbiAgbWluLWhlaWdodDogNjBweDtcblxuICAubmF2YmFyLWJyYW5kLmxvZ28tSEFMe1xuICAgIG1hcmdpbi1sZWZ0OiAzMHB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cblxuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL2Fzc2V0cy9pbWcvaGFsLWxvZ28taGVhZGVyLmdpZik7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDQwcHggNDBweDtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xcHggNHB4O1xuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblxuICAgICAgaW1nOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgIH1cbiAgICB9XG5cblxuICB9XG4gIC8qIEFuaW1hdGlvbiBwb3VyIGxlIGxvZ28sIGZpbiBkZSBmZXVpbGxlICovXG4gIC8qLm5hdmJhci1icmFuZC5sb2dvLUhBTDpob3ZlcntcbiAgICAtd2Via2l0LWFuaW1hdGlvbjogc3dpbmcgMXMgZWFzZTtcbiAgICBhbmltYXRpb246IHN3aW5nIDFzIGVhc2U7XG4gICAgLXdlYmtpdC1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAxO1xuICAgIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IDE7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgfSovXG4gIGJ1dHRvbi5idG4tc2Vjb25kYXJ5e1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gIH1cbn1cbiNuYXYtc2VydmljZXMge1xuICAuYWRtaW5pc3RyYXRpb24ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxufVxuXG5cblxuLm5hdi5uYXZiYXItbmF2Lm1sLWF1dG8gbGl7XG4gIG1hcmdpbi1yaWdodDogNzBweDtcbiAgbGluZS1oZWlnaHQ6IDEwMCU7XG4gIHBhZGRpbmc6IDA7XG5cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gIH1cbiAgYXtcbiAgICBjb2xvcjogJHdoaXRlO1xuICB9XG4gIGJ1dHRvbjpub3QoLmxpc3QtZ3JvdXAtaXRlbSl7XG4gICAgcGFkZGluZzogMHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogbm9uZTtcbiAgfVxuXG4gIC5idG4tYWRtaW4ge1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgaGVpZ2h0OiBpbmhlcml0O1xuICAgIHBhZGRpbmctcmlnaHQ6IDE1cHghaW1wb3J0YW50O1xuICAgIHBhZGRpbmctbGVmdDogMTVweCFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcblxuICAgICYuYnRuLWFjdGl2ZSwgJjpob3ZlciB7XG4gICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHNoZWFkZXI7XG4gICAgfVxuXG4gICAgLmJ0bi1pY29uIHtcbiAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgIH1cblxuICAgIC5idG4tbmFtZSB7XG4gICAgICBmb250LXNpemU6IDAuOXJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIH1cbiAgfVxuXG4gIC5idG4tYWRtaW5bYXJpYS1leHBhbmRlZD1cInRydWVcIl17XG4gICAgY29sb3I6ICRibGFjaztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHVycGxlLWV4dHJhLWxpZ2h0O1xuICB9XG59XG4uc2tpcC1saW5rLXRvcDpmb2N1c3tcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWJsdWU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGNhbGMoI3skc2l6ZS14eGx9ICsgMS4zNXJlbSk7XG4gIHotaW5kZXg6IDEwNDA7XG4gIGZvbnQtc2l6ZTogJHNpemUteHhsO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY29sb3I6ICR3aGl0ZTtcbiAgY2xpcC1wYXRoOiBub25lO1xufVxuXG4uc3ViLWhlYWRlciB7XG4gIGJveC1zaGFkb3c6IDBweCAzcHggNnB4ICMwMDAwMDAyOTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHNoZWFkZXIgIWltcG9ydGFudDtcbiAgLnNpdGUtZW52IHtcbiAgICBtYXJnaW4tbGVmdDogMzBweDtcbiAgICBsaW5lLWhlaWdodDogNTBweDtcbiAgfVxufVxuLmRlcG9zaXQtaGVhZGVye1xuICBoZWlnaHQ6IDcwcHg7XG4gIHdpZHRoOiAxMDAlO1xuICB6LWluZGV4OiAyO1xufVxuLmRlcG9zaXQtaGVhZGVyLmZpeGVke1xuICB0b3A6IDA7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKipcbiAgIENIT0lYIERFUyBMQU5HVUVTXG4gICAgRVQgRElTQ0lQTElORVNcbioqKioqKioqKioqKioqKioqKioqKiovXG4jZm9ybUxhbmd7XG4gIG1pbi13aWR0aDogNzBweDtcbiAgd2lkdGg6IDcwcHg7XG5cbiAgLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246aG92ZXJ7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG59XG4jZGlzY2lwbGluZUxpc3QgdWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2hlYWRlcjtcbiAgb3BhY2l0eTogMC45NDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYm9yZGVyOiBub25lO1xuICBib3gtc2hhZG93OiAwcHggM3B4IDZweCAkYm94LXNoYWRvdztcbiAgdG9wOiAzNXB4O1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgVVRJTElTQVRFVVJcbioqKioqKioqKioqKioqKioqKioqKiovXG5cbi5oZWFkZXIgLm1lbnUtbGFuZywgLm1lbnUtY29ubmVjdCwgLm1lbnUtb3JjaWQtZXh0e1xuICBib3JkZXItcmFkaXVzOjA7XG4gIHRvcDo0NXB4O1xuICBib3gtc2hhZG93OiAwcHggM3B4IDZweCAkYm94LXNoYWRvdztcblxuICAubGlzdC1ncm91cC1pdGVte1xuICAgIGJvcmRlcjogMDtcbiAgICBjb2xvcjogJGJsYWNrIWltcG9ydGFudDtcbiAgICBmb250LWZhbWlseTogJGZvbnQtYXJpYWw7XG5cbiAgICAmOmhvdmVye1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHB1cnBsZS1leHRyYS1saWdodDtcblxuICAgICAgW2NsYXNzXj0naWNvbi0nXXtcbiAgICAgICAgY29sb3I6ICRwcmltYXJ5LWJsdWU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjpmaXJzdC1jaGlsZDphZnRlciB7XG4gICAgICBAaW5jbHVkZSBhcnJvdy10b3AoJzVweCcpO1xuICAgIH1cbiAgfVxuICAvKiBUcmlhbmdsZSBhdSBkZXNzdXMgZGUgbGEgbGlzdGUgdXRpbGlzYXRldXIgKi9cbiAgaHJ7XG4gICAgbWFyZ2luOiAxMHB4O1xuICAgIGJvcmRlci10b3AtY29sb3I6ICRncmF5LTcwO1xuICB9XG5cbiAgLyogTm90aWZpY2F0aW9ucyAqL1xuICAmLm5vdGlme1xuICAgIHdpZHRoOiA1ODlweDtcbiAgfVxuXG59XG5cbkBtaXhpbiBkcm9wZG93bi1jb25uZWN0ZWQtbWVudSgpe1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6MDtcbiAgdG9wOjQ1cHg7XG4gIGJveC1zaGFkb3c6IDBweCAzcHggNnB4ICRib3gtc2hhZG93O1xuXG4gIC5saXN0LWdyb3VwLWl0ZW17XG4gICAgYm9yZGVyOiAwO1xuICAgIGNvbG9yOiAkYmxhY2shaW1wb3J0YW50O1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1hcmlhbDtcblxuICAgIHNwYW4ge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgd2lkdGg6IDMwcHg7XG4gICAgfVxuXG4gICAgJjpob3ZlcntcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwdXJwbGUtZXh0cmEtbGlnaHQ7XG5cbiAgICAgIFtjbGFzc149J2ljb24tJ117XG4gICAgICAgIGNvbG9yOiAkcHJpbWFyeS1ibHVlO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uaGVhZGVyIC5jb25uZWN0ZWQtbWVudSB7XG4gIEBpbmNsdWRlIGRyb3Bkb3duLWNvbm5lY3RlZC1tZW51O1xuICB3aWR0aDogMjIwcHg7XG5cbiAgLmxpc3QtZ3JvdXAtaXRlbXtcbiAgICAmI2xvZy1vdXR7XG4gICAgICBjb2xvcjogJHNlY29uZGFyeS1lcnJvciFpbXBvcnRhbnQ7XG4gICAgICAmOmhvdmVyW2NsYXNzXj0naWNvbi0nXXtcbiAgICAgICAgY29sb3I6ICRzZWNvbmRhcnktZXJyb3IhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cblxuICAgICY6Zmlyc3QtY2hpbGQ6YWZ0ZXIge1xuICAgICAgQGluY2x1ZGUgYXJyb3ctdG9wKCcyM3B4Jyk7XG4gICAgfVxuICB9XG5cbiAgLyogVHJpYW5nbGUgYXUgZGVzc3VzIGRlIGxhIGxpc3RlIHV0aWxpc2F0ZXVyICovXG4gIGhye1xuICAgIG1hcmdpbjogMTBweDtcbiAgICBib3JkZXItdG9wLWNvbG9yOiAkZ3JheS03MDtcbiAgfVxuXG4gIC8qIE5vdGlmaWNhdGlvbnMgKi9cbiAgJi5ub3RpZntcbiAgICB3aWR0aDogNTg5cHg7XG4gIH1cbn1cblxuI25vdGlmcyAuZHJvcGRvd24tdG9nZ2xlOjphZnRlcntcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLm5hdi5uYXZiYXItbmF2Lm1sLWF1dG8gLmljb24tbm90aWZpY2F0aW9uc3tcbiAgY29sb3I6ICR3aGl0ZTtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKipcbiAgICAgIEFETUlOSVNUUkFUSU9OXG4qKioqKioqKioqKioqKioqKioqKioqL1xuXG4uaGVhZGVyIC5hZG1pbmlzdHJhdGlvbi1tZW51IHtcbiAgQGluY2x1ZGUgZHJvcGRvd24tY29ubmVjdGVkLW1lbnU7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLXRvcDogMDtcbiAgcmlnaHQ6IGF1dG87XG4gIGxlZnQ6IGF1dG87XG5cbiAgLnJvbGVzIHtcbiAgICBwYWRkaW5nOiA1JTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgICBwYWRkaW5nLXRvcDogMjBweDtcbiAgICBtYXJnaW46IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRwdXJwbGUtZXh0cmEtbGlnaHQ7XG4gICAgZm9udC1zaXplOiAkc2l6ZS1zbWFsbDtcblxuICAgIHNwYW4ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHB1cnBsZTtcbiAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICBwYWRkaW5nOiA1cHg7XG4gICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luOiAyJTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG4gIH1cblxuICAuZHJvcGRvd24tbWVudSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiAzMDBweDtcbiAgfVxuXG4gIC8qbGlzdC1ncm91cC1pdGVtIHtcbiAgICAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB9XG4gIH0qL1xuXG4gIC5kcm9wZG93bi10b2dnbGU6aG92ZXIgLmRyb3Bkb3duLW1lbnUge1xuICAgIGRpc3BsYXk6YmxvY2s7XG4gIH1cblxuICAubGlzdC1ncm91cC1pdGVtLWFycm93ZWR7XG4gICAgJjpmaXJzdC1jaGlsZDphZnRlciB7XG4gICAgICBAaW5jbHVkZSBhcnJvdy1sZWZ0KCcxMDBweCcpO1xuICAgIH1cbiAgfVxufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgU09VUy1IRUFERVJcbioqKioqKioqKioqKioqKioqKioqKiovXG4jc2Vjb25kLW5hdmJhcntcbiAgd2lkdGg6IDEwMCU7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG4jZGlzY2lwbGluZUxpc3R7XG4gIHRvcDogMTBweDtcbiAgYnV0dG9ue1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBjb2xvcjogJHByaW1hcnktYmx1ZTtcblxuICAgIHNwYW57XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIGNvbG9yOiAkcHJpbWFyeS1ibHVlO1xuICAgIH1cbiAgfVxuICAuZHJvcGRvd24tdG9nZ2xlOjphZnRlcntcbiAgICBib3JkZXItdG9wOiAuNWVtIHNvbGlkO1xuICAgIGJvcmRlci1yaWdodDogLjVlbSBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItbGVmdDogLjVlbSBzb2xpZCB0cmFuc3BhcmVudDtcbiAgfVxuICB1bCBsaXtcbiAgICBtYXJnaW4tYm90dG9tOiAyNnB4O1xuICAgIG1hcmdpbi1sZWZ0OiAzMHB4O1xuXG4gICAgYXtcbiAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICB9XG4gIH1cbiAgdWx7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHNoZWFkZXI7XG4gICAgb3BhY2l0eTogMC45NDtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICB9XG59XG4vKiBCb3V0b24gZMOpcG9zZXIgKi9cbiNzc2hlYWRlci1zdWJtaXR7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgcGFkZGluZzogMjBweCAxOHB4IDE4cHggMThweDtcblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcbiAgICBtYXJnaW4tbGVmdDogdW5zZXQ7XG4gICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cblxuXG4gIC8qIFBvdXIgZmlyZWZveCAqL1xuICAvL2Rpc3BsYXk6IHJ1Ynk7XG4gIGEge1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbn1cbi8qIEJhcnJlIGRlIHJlY2hlcmNoZSAqL1xuI3NlYXJjaEhlYWRlckxpc3R7XG4gIG1heC1oZWlnaHQ6IDQ1cHg7XG4gIG1hcmdpbjogMCAwIDAgY2FsYyg0NSUgLSA0MDBweCk7XG4gIGZsb2F0OiByaWdodDtcbiAgd2lkdGg6IDUwJTtcbiAgbWluLXdpZHRoOiA3MDBweDtcblxuICAjY29sbGFwc2VTZWFyY2h7XG4gICAgdG9wOiA2NXB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB6LWluZGV4OiAxMDtcbiAgfVxuICAjYWR2U2VhcmNoSGVhZGVyLCAjc29sclNlYXJjaEhlYWRlcntcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgYm94LXNoYWRvdzogMHB4IDVweCA2cHggJGJveC1zaGFkb3c7XG4gICAgcGFkZGluZzogMjBweCA2MHB4IDEwMHB4IDYwcHg7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XG4gICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgLmJ0bi1oaWRlLXNob3cge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAgICAgICAgIGJvdHRvbTogNDBweCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xuICAgICAgLmJ0bi1oaWRlLXNob3cge1xuICAgICAgICBib3R0b206IDAgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG4gICAgLnJvd3tcbiAgICAgIG1hcmdpbjogMDtcbiAgICB9XG4gICAgaDN7XG4gICAgICBjb2xvcjogJGdyYXktY2E7XG4gICAgICBmb250LXNpemU6ICRzaXplLWxhcmdlO1xuICAgIH1cbiAgICAubXQtMyBidXR0b257XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJvdHRvbTogNjVweDtcbiAgICAgICY6aG92ZXJ7XG4gICAgICAgIGNvbG9yOiAkcHJpbWFyeS1ibHVlMS1kaXNhYmxlZDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiNzb2xyU2VhcmNoSGVhZGVye1xuICB0ZXh0YXJlYXtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgbWluLWhlaWdodDogMjk1cHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJHByaW1hcnktYmx1ZTM7XG4gICAgY29sb3I6ICRibGFjaztcbiAgfVxuICBmb3Jte1xuICAgIGRpdntcbiAgICAgIG1pbi13aWR0aDogbWF4LWNvbnRlbnQ7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICByaWdodDogNjBweDtcbiAgICAgIGJvdHRvbTogNTBweDtcbiAgICAgIGJ1dHRvbntcbiAgICAgICAgcG9zaXRpb246IGluaXRpYWw7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgc3Bhbi5pY29uLXNlYXJjaHtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgICY6OmJlZm9yZXtcbiAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG59XG4jc3VibWl0LWJ1dHRvbntcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLWxlZnQ6IDUwcHg7XG4gIGJvcmRlcjogbm9uZTtcbn1cblxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAuYm9yZGVyLXItbGcge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICRibGFjaztcbiAgfVxufVxuXG5cbi8qKioqKioqKioqKioqKioqKioqKioqXG4gICAgIFBPUlRBSUwgTUVOVVxuKioqKioqKioqKioqKioqKioqKioqKi9cbmhlYWRlcntcbiAgaW1ne1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG4gICAgaGVpZ2h0OiAyNTlweDtcbiAgfVxuXG4gICNwb3J0YWlsTWVudSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzM2Mzg0MjtcbiAgICBoZWlnaHQ6IDYwcHg7XG4gICAgbGkge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAzNHB4O1xuICAgICAgbWFyZ2luLWxlZnQ6IDM0cHg7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgICAgcGFkZGluZzogMTBweCAxNXB4O1xuXG4gICAgICAmOmhvdmVye1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICB9XG4gICAgfVxuICAgIGxpLmFjdGl2ZXtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNCN0I3Qjc7XG4gICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgfVxuICB9XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqXG4gICAgICBSRVNQT05TSVZFXG4qKioqKioqKioqKioqKioqKioqKioqL1xuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKXtcbiAgLyogU3R5bGUgcG91ciBsZSBoYW1idXJnZXJcbiAgICBNYW51ZWwsIHBhcyBkJ3V0aWxpc2F0aW9uIGR1IFNWRyBkZSBib290c3RyYXBcbiAgICBwb3VyIGZhaXJlIGwnYW5pbWF0aW9uXG4gICAgU3R5bGUgZHUgZMOpcGFydCBhdmVjIGxlIHRpbWUgZGUgbCdhbmltYXRpb24qL1xuICAuaGFtYnVyZ2Vye1xuICAgIHdpZHRoOiAzMHB4O1xuICAgIGhlaWdodDogMjBweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgIHRyYW5zaXRpb246IC41cyBlYXNlLWluLW91dDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICAgc3BhbntcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgaGVpZ2h0OiAxLjVweDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICAgIHRyYW5zaXRpb246IC40cyBlYXNlLWluLW91dDtcbiAgICAgICY6Zmlyc3QtY2hpbGR7XG4gICAgICAgIHRvcDogMDtcbiAgICAgIH1cbiAgICAgICY6bnRoLWNoaWxkKDIpe1xuICAgICAgICB0b3A6IDEwcHg7XG4gICAgICB9XG4gICAgICAmOmxhc3QtY2hpbGR7XG4gICAgICAgIHRvcDogMjBweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLyogRGlzcG9zaXRpb24gZHUgaGFtYnVyZ2VyIGxvcnNxdWUgY2VsdWktY2kgZXN0IG91dmVydFxuICAgICBTdHlsZSBlbiBmb3JtZSBkZSBjcm9peCBhdmVjIGRpc3Bhcml0aW9uIGR1IHNwYW4gZHUgbWlsaWV1ICovXG4gIC5oYW1idXJnZXIub3BlbntcbiAgICBzcGFue1xuICAgICAgJjpmaXJzdC1jaGlsZHtcbiAgICAgICAgdG9wOiAxMXB4O1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxMzVkZWcpO1xuICAgICAgfVxuICAgICAgJjpudGgtY2hpbGQoMil7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIGxlZnQ6IC02MHB4O1xuICAgICAgfVxuICAgICAgJjpsYXN0LWNoaWxke1xuICAgICAgICB0b3A6IDExcHg7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC0xMzVkZWcpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAvKiBUb2dnbGUtbWVudSBhdmVjIHVuZSBib3JkdXJlIGF1LWRlc3N1cyBldCB1biBiYWNrZ3JvdW5kKi9cbiAgI25hdi1zZXJ2aWNlc3tcbiAgICB6LWluZGV4OiA0O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWJsdWU7XG4gICAgcGFkZGluZy1sZWZ0OiAzNXB4O1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkc2hlYWRlcjtcbiAgICBtYXJnaW4tdG9wOiAtNXB4O1xuXG4gICAgLmFkbWluaXN0cmF0aW9uIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgICNmb3JtTGFuZyB7XG4gICAgICB3aWR0aDogdW5zZXQ7XG4gICAgfVxuXG4gICAgbGkubmF2LWl0ZW0ge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuXG4gICAgLmFkbWluaXN0cmF0aW9uLW1lbnUsIC5tZW51LWxhbmcsIC5jb25uZWN0ZWQtbWVudSwgLm1lbnUtb3JjaWQtZXh0IHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHVuc2V0O1xuXG4gICAgICAuZHJvcGRvd24tbWVudSB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBib3JkZXItdG9wOiBzb2xpZCAxcHggJGdyYXktNzA7XG4gICAgICAgIGJvcmRlci1ib3R0b206IHNvbGlkIDFweCAkZ3JheS03MDtcbiAgICAgICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICAgIH1cblxuICAgICAgZGl2LCBidXR0b24sIGEge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnNldDtcbiAgICAgICAgY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmRyb3Bkb3duLW1lbnV7XG4gICAgICBtYXJnaW4tbGVmdDogLTIlO1xuICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgIC5yb2xlcyB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBzcGFuIHtcbiAgICAgICAgICBtYXJnaW46IDElO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLm5hdi5uYXZiYXItbmF2Lm1sLWF1dG8gLmRyb3Bkb3duLW1lbnUgLmxpc3QtZ3JvdXAtaXRlbTpmaXJzdC1jaGlsZDo6YWZ0ZXJ7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAubmF2Lm5hdmJhci1uYXYubWwtYXV0byB7XG4gICAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4gICAgbGl7XG4gICAgICBwYWRkaW5nOiAxMHB4IDA7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgfVxuICAgIC5idG4tYWRtaW4ge1xuICAgICAgcGFkZGluZy10b3A6IDIlO1xuICAgICAgYm9yZGVyLXJhZGl1czogMC4yNXJlbSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gICN1c2VyTGlzdCB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICB9XG59XG5cblxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHhzKXtcbiAgLmhhbC1tYWluLWFkdnNlYXJjaC1idXR0b257XG4gICAgbGVmdDogOTAlO1xuICB9XG5cbiAgLm5hdi5uYXZiYXItbmF2Lm1sLWF1dG97XG4gICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpe1xuICAjc2VhcmNoSGVhZGVyTGlzdCB7XG4gICAgd2lkdGg6IDkwJSAhaW1wb3J0YW50O1xuICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgIG1pbi13aWR0aDogdW5zZXQ7XG4gIH1cbn1cblxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1vbmx5KGxnKXtcbiAgI2Rpc2NpcGxpbmVMaXN0e1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgI3NlYXJjaEhlYWRlckxpc3Qge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgd2lkdGg6IDcwJTtcbiAgICBtaW4td2lkdGg6IHVuc2V0O1xuICB9XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqXG4gICAgQU5JTUFUSU9OIFBPVVJcbiAgICAgIExFIExPR09cbioqKioqKioqKioqKioqKioqKioqKiovXG5ALXdlYmtpdC1rZXlmcmFtZXMgc3dpbmdcbntcbiAgMTUlXG4gIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCg1cHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg1cHgpO1xuICB9XG4gIDMwJVxuICB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTVweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01cHgpO1xuICB9XG4gIDUwJVxuICB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoM3B4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoM3B4KTtcbiAgfVxuICA2NSVcbiAge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0zcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtM3B4KTtcbiAgfVxuICA4MCVcbiAge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDJweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDJweCk7XG4gIH1cbiAgMTAwJVxuICB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB9XG59XG5Aa2V5ZnJhbWVzIHN3aW5nXG57XG4gIDE1JVxuICB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNXB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNXB4KTtcbiAgfVxuICAzMCVcbiAge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01cHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNXB4KTtcbiAgfVxuICA1MCVcbiAge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDNweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDNweCk7XG4gIH1cbiAgNjUlXG4gIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtM3B4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTNweCk7XG4gIH1cbiAgODAlXG4gIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgycHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgycHgpO1xuICB9XG4gIDEwMCVcbiAge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgfVxufVxuXG4udXNlci1jaXJjbGUge1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGJvcmRlcjoycHggc29saWQgJGdyYXktY2E7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwdXJwbGUtZGFyaztcbiAgaGVpZ2h0OiA0MHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdpZHRoOiA0MHB4O1xuICBkaXNwbGF5OiBibG9jaztcblxuICAuaW5pdGlhbHMge1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IDhweDtcbiAgfVxuXG4gICYucGhvdG8ge1xuICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgYm9yZGVyLWNvbG9yOiAkcHVycGxlLWRhcms7XG4gIH1cblxuICAmLmxhcmdlIHtcbiAgICBoZWlnaHQ6IDYwcHg7XG4gICAgd2lkdGg6IDYwcHg7XG4gICAgLmluaXRpYWxzIHtcbiAgICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICAgIHRvcDogMTRweDtcbiAgICB9XG4gIH1cbiAgJi54bGFyZ2Uge1xuICAgIGhlaWdodDogODBweDtcbiAgICB3aWR0aDogODBweDtcbiAgICAuaW5pdGlhbHMge1xuICAgICAgZm9udC1zaXplOiA0MHB4O1xuICAgICAgdG9wOiAxOHB4O1xuICAgIH1cbiAgfVxuICAmLnh4bGFyZ2Uge1xuICAgIGhlaWdodDogMTIwcHg7XG4gICAgd2lkdGg6IDEyMHB4O1xuICAgIC5pbml0aWFscyB7XG4gICAgICBmb250LXNpemU6IDYwcHg7XG4gICAgICB0b3A6IDMwcHg7XG4gICAgfVxuICB9XG4gICYueHh4bGFyZ2Uge1xuICAgIGhlaWdodDogMTYwcHg7XG4gICAgd2lkdGg6IDE2MHB4O1xuICAgIC5pbml0aWFscyB7XG4gICAgICBmb250LXNpemU6IDgwcHg7XG4gICAgICB0b3A6IDM1cHg7XG4gICAgfVxuICB9XG59IiwiQG1peGluIGFycm93LXRvcCgkcmlnaHQpIHtcbiAgY29udGVudDogJyc7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6ICRyaWdodDtcbiAgdG9wOiAtMTVweDtcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyLWxlZnQ6IDE1cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogMTVweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWJvdHRvbTogMTVweCBzb2xpZCAkd2hpdGU7XG59XG5cbkBtaXhpbiBhcnJvdy1sZWZ0KCR0b3ApIHtcbiAgY29udGVudDogJyc7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogLTEwcHg7XG4gIHRvcDogJHRvcDtcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyLXJpZ2h0OiAxMHB4IHNvbGlkICR3aGl0ZTtcbiAgYm9yZGVyLXRvcDogMTBweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWJvdHRvbTogMTBweCBzb2xpZCB0cmFuc3BhcmVudDtcbn1cblxuQG1peGluIGZvbnQtYm9sZCgpIHtcbiAgLy9mb250LWZhbWlseTogJGZvbnQtaGFsLWJvbGQ7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufSIsIi8qKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgRVJST1IgRk9STVxuKioqKioqKioqKioqKioqKioqKioqKi9cbi5oYXMtZXJyb3IgLmZvcm0tY29udHJvbCwgLmhhcy1lcnJvciAuc2VsZWN0MntcbiAgYm9yZGVyLWNvbG9yOiAkc2Vjb25kYXJ5LWVycm9yICFpbXBvcnRhbnQ7XG59XG4uaGFzLWVycm9yIC5oZWxwLWJsb2NrLmVycm9yLCAuaGFzLWVycm9yIC5jb250cm9sLWxhYmVsLFxuLmhhcy1lcnJvciAucmFkaW8sIC5oYXMtZXJyb3IgLmNoZWNrYm94LCAuaGFzLWVycm9yIC5yYWRpby1pbmxpbmUsXG4uaGFzLWVycm9yIC5jaGVja2JveC1pbmxpbmV7XG4gIGNvbG9yOiAkc2Vjb25kYXJ5LWVycm9yO1xufVxuXG4uZm9ybS1jb250cm9sIHtcbiAgYm9yZGVyLXJhZGl1czogMCFpbXBvcnRhbnQ7XG4gIGJvcmRlci1jb2xvcjogJGdyYXktYzg7XG59XG4vKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgIEVMRU1FTlRTXG4gICAgIE1VTFRJTEFOR1VFU1xuKioqKioqKioqKioqKioqKioqKioqKi9cbmRpdi5mb3JtLWdyb3VwLnJvdyB7XG4gIGxhYmVse1xuICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBkaXNwbGF5OiBjb250ZW50cztcbiAgICAmLnJlcXVpcmVkOmFmdGVye1xuICAgICAgY29udGVudDogXCIqXCI7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDVweDtcbiAgICAgIGNvbG9yOiAkcHJpbWFyeS1ibHVlMTtcbiAgICB9XG4gIH1cbiAgaW5wdXQuaW5wdXQtZmxleHtcbiAgICBtYXJnaW46IDA7XG4gICAgYm9yZGVyOiBzb2xpZCAxcHggJHByaW1hcnktYmx1ZTM7XG4gICAgaGVpZ2h0OiAzNHB4O1xuICAgIHBhZGRpbmc6IDA7XG4gICAgZmxleDogMSAxIDAlICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDBweDtcbiAgfVxuICAuY29sLW1kLTl7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogMDtcbiAgICBmbGV4OiBub25lO1xuICAgIG1heC13aWR0aDogbm9uZTtcbiAgfVxuICAuYnRuLXByaW1hcnkuYnRuLXNte1xuICAgIG1hcmdpbi1sZWZ0OiA4cHg7XG4gIH1cbiAgLyogIWltcG9ydGFudCBjYXIgc3R5bGUgaW5saW5lIGRhbnMgTGFuZy5waHAgKi9cbiAgLmJ0bi5idG4tZGVmYXVsdC5idG4tc20uZHJvcGRvd24tdG9nZ2xle1xuICAgIC8vYm9yZGVyOiBzb2xpZCAxcHggIzkwQTRCNiAhaW1wb3J0YW50O1xuICAgIC8vYm9yZGVyLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgICAvL3BhZGRpbmctbGVmdDogMTVweDtcbiAgfVxuICAuaW5wdXQtZ3JvdXAtYnRuIGJ1dHRvbntcbiAgICBoZWlnaHQ6IDM0cHggIWltcG9ydGFudDtcbiAgfVxuICBzcGFuLmlucHV0LWdyb3VwLWJ0bntcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1ibHVlMTtcbiAgICAvL3dpZHRoOiAzOXB4O1xuICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgICY6aG92ZXJ7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1ibHVlMS1ob3ZlcjtcbiAgICB9XG4gIH1cbiAgLmlucHV0LWdyb3Vwe1xuICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gIH1cbiAgYnV0dG9uLmRyb3Bkb3duLXRvZ2dsZSwgYnV0dG9uLmJ0bi1wcmltYXJ5e1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgYm9yZGVyOiBub25lO1xuICB9XG4gICNzdWJtaXQtYnV0dG9ue1xuICAgIHBvc2l0aW9uOiBpbml0aWFsO1xuICAgIGZsb2F0OiByaWdodDtcbiAgICAmOmhvdmVye1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICB9XG4gIH1cbn1cbmlucHV0LmlucHV0LWZsZXh7XG4gIG1hcmdpbjogMDtcbiAgYm9yZGVyOiBzb2xpZCAxcHggJHByaW1hcnktYmx1ZTM7XG4gIGhlaWdodDogMzdweDtcbiAgcGFkZGluZzogMDtcbiAgZmxleDogMSAxIDAlICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmctbGVmdDogMTBweDtcbn1cbi8qIEZsw6hjaGVzIGRhbnMgbGUgY2hvaXggZGUgbGEgbGFuZ3VlICovXG4ubmF2ICNhZHZTZWFyY2hIZWFkZXIgLmlucHV0LWdyb3VwIC5jYXJldHtcbiAgYm9yZGVyLXRvcDogNnB4IHNvbGlkICRibGFjaztcbiAgbWFyZ2luLWxlZnQ6IDE1cHg7XG59XG5cbiNzdWJtaXQtZWxlbWVudHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogNjBweDtcbiAgYm90dG9tOiA0NXB4O1xufVxudWwuZHJvcGRvd24tbWVudSB7XG4gIC5kcm9wZG93bi1pdGVte1xuICAgIHBhZGRpbmctbGVmdDogNXB4O1xuICB9XG4gIGF7XG4gICAgY29sb3I6ICRibGFjaztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICBsaS5kaXNhYmxlZCBhe1xuICAgIGNvbG9yOiAjNmM3NTdkO1xuICB9XG5cbiAgbGk6bm90KC5ub3Qtd2hpdGUpOmhvdmVye1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWJsdWUxO1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgYXtcbiAgICAgIGNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cbi8qKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgIERBVEVTXG4qKioqKioqKioqKioqKioqKioqKioqL1xuLyogIWltcG9ydGFudCBjYXIgc3R5bGUgaW5saW5lICovXG4jdWktZGF0ZXBpY2tlci1kaXZ7XG4gIHotaW5kZXg6IDEwICFpbXBvcnRhbnQ7XG59XG4vKiN3cml0aW5nRGF0ZS1pZC1lbGVtZW50e1xuICAuaW5wdXQtZ3JvdXB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJHByaW1hcnktYmx1ZTM7XG4gIH1cbiAgLmlucHV0LWdyb3VwLWFkZG9uLmNhbGVuZGFyLXRyaWdnZXJ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjBweCk7XG4gIH1cbiAgI3dyaXRpbmdEYXRlLWlke1xuICAgIHdpZHRoOiAxMDBweDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICBtYXJnaW46IDNweCAwIDAgMDtcbiAgfVxufSovXG5cblxuLyoqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICBHRU5FUkFMXG4qKioqKioqKioqKioqKioqKioqKioqL1xuZm9ybXtcbiAgbGFiZWx7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIH1cbiAgaW5wdXQuZm9ybS1jb250cm9se1xuICAgIGJvcmRlci1yYWRpdXM6IDAgIWltcG9ydGFudDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkZ3JheS1jYSAhaW1wb3J0YW50O1xuICB9XG59XG4vKioqKioqKioqKioqKioqKioqKioqKlxuICAgIEFDQ09VTlQgQ1JFQVRFXG4qKioqKioqKioqKioqKioqKioqKioqL1xuI2RpdkNyZWF0ZSBmb3JtIC5yb3d7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuI2FjY291bnRjcmVhdGV7XG4gIHBhZGRpbmc6IDMwcHggNzhweDtcblxuICAuaW5wdXQtZ3JvdXAgLmZvcm0tY29udHJvbCB7XG4gICAgd2lkdGg6IGluaGVyaXQ7XG4gIH1cbn1cbi5oaWRlLXNob3ctcHN3e1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi10b3A6IDhweDtcbiAgbWFyZ2luLWxlZnQ6IC00NXB4O1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIHotaW5kZXg6IDM7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYmFja2dyb3VuZDogbm9uZTtcbn1cbi5pbmZvLWNyZWF0ZS11c2Vye1xuICB6LWluZGV4OiA0O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG1hcmdpbi1sZWZ0OiAxMDIlO1xuICBmb250LXNpemU6IDEuNXJlbTtcbiAgbWFyZ2luLXRvcDogN3B4O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG59XG4jQ0FQVENIQS1lbGVtZW50IHByZXtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uY2NzZF9mb3JtX3JlcXVpcmVkIHtcbiAgZm9udC1zaXplOiBzbWFsbDtcbiAgY29sb3I6ICRwcmltYXJ5LWJsdWUxO1xufVxuXG4vKlZvaXIgc2kgb24gY29uc2VydmUgKi9cbi5uZXctZm9ybSB7XG4gIC5jY3NkX2Zvcm1fcmVxdWlyZWQsIC5oZWxwLWJsb2NrIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5oZWxwLWJsb2NrLmVycm9yIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjb2xvcjogJHNlY29uZGFyeS1lcnJvcjtcbiAgICBmb250LXNpemU6ICRzaXplLXNtYWxsO1xuICAgIHBhZGRpbmctdG9wOiA1cHg7XG4gIH1cblxuICAuZm9ybS1jb250cm9sIHtcbiAgICBib3JkZXItY29sb3I6ICRwcmltYXJ5LWJsdWUzO1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgJjphY3RpdmUsICY6Zm9jdXN7XG4gICAgICBib3JkZXItY29sb3I6ICR0b29scy1zb3J0O1xuICAgICAgb3V0bGluZTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuICAuZm9ybS1jb250cm9sOmRpc2FibGVkLCAuZm9ybS1jb250cm9sW3JlYWRvbmx5XSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGdyYXktZjY7XG4gICAgY29sb3I6ICRncmF5LTk3O1xuICB9XG5cbiAgLmhhcy1lcnJvciAuZm9ybS1jb250cm9sIHtcbiAgICBib3JkZXItY29sb3I6ICRzZWNvbmRhcnktZXJyb3I7XG4gIH1cblxuICBsYWJlbCwgLmNvbC1tZC0zLCAuY29sLW1kLTkge1xuICAgIGZsZXg6IGluaGVyaXQgIWltcG9ydGFudDtcbiAgICBtYXgtd2lkdGg6IGluaGVyaXQgIWltcG9ydGFudDtcbiAgfVxuICBsYWJlbCB7XG4gICAgY29sb3I6ICRncmF5LTk3O1xuICAgIGZvbnQtc2l6ZTogJHNpemUtc21hbGw7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICB9XG4gICNjc3JmX3Rva2VuLWVsZW1lbnQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLnN3aXRjaCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogNDBweDtcbiAgaGVpZ2h0OiAxMnB4O1xuICBtYXJnaW4tYm90dG9tOiAwIWltcG9ydGFudDtcblxuICBpbnB1dCB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gIH1cblxuICAuc2xpZGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JheS1lODtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IC40cztcbiAgICB0cmFuc2l0aW9uOiAuNHM7XG4gICAgYm9yZGVyLXJhZGl1czogMzRweDtcblxuICAgICY6YmVmb3JlIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICB3aWR0aDogMjBweDtcbiAgICAgIGxlZnQ6IDBweDtcbiAgICAgIGJvdHRvbTogLTRweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWJsdWUxO1xuICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiAuNHM7XG4gICAgICB0cmFuc2l0aW9uOiAuNHM7XG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgfVxuICB9XG5cbiAgaW5wdXQ6Y2hlY2tlZCArIC5zbGlkZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR0b29scy1zb3J0O1xuICB9XG5cbiAgaW5wdXQ6Zm9jdXMgKyAuc2xpZGVyIHtcbiAgICBib3gtc2hhZG93OiAwIDAgMXB4ICR0b29scy1zb3J0O1xuICB9XG5cbiAgaW5wdXQ6Y2hlY2tlZCArIC5zbGlkZXI6YmVmb3JlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgyMHB4KTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDIwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgyMHB4KTtcbiAgfVxufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKlxuICAgIEFEVkFOQ0VEIEVYUE9SVFxuKioqKioqKioqKioqKioqKioqKioqKi9cbiNicmluZ0RhdGF7XG4gIHdpZHRoOiAxMDAlO1xuICAucm93e1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgbGl7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogNXB4O1xuICAgIH1cbiAgICAuaWNvbi1kcmFne1xuICAgICAgcGFkZGluZy1yaWdodDogMTVweDtcbiAgICB9XG4gIH1cbiAgI2F2YWlsYWJsZXtcbiAgICBsaXtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICY6aG92ZXJ7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwdXJwbGUtZXh0cmEtbGlnaHQ7XG4gICAgICB9XG4gICAgfVxuICB9XG4gICNmbCAucGxhY2Vob2xkZXIge1xuICAgIG1hcmdpbjogNXB4IDA7XG4gICAgaGVpZ2h0OiA0MHB4O1xuICAgIHdpZHRoOjEwMCU7XG4gICAgYm9yZGVyOiAycHggZGFzaGVkICRwdXJwbGU7XG4gIH1cbn1cbiNleHBvcnRhYmxlRmllbGRzIHtcbiAgLmNhcmR7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgLmNhcmQtaGVhZGVye1xuICAgICAgcGFkZGluZzogMzBweCAxNXB4O1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgfVxuICAgIC5jYXJkLWJvZHl7XG4gICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgaGVpZ2h0OiA0MDBweDtcbiAgICAgIG92ZXJmbG93OiBhdXRvO1xuICAgIH1cbiAgfVxufVxuI21lc3NhZ2VBYm91dEV4cG9ydHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBkaXZ7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHBhZGRpbmc6IDE1cHg7XG4gIH1cbn1cblxuXG4vKioqKioqKioqKioqKioqKioqKioqKlxuICAgIExPU1QgUEFTU1dPUkQgJlxuICAgIExPU1QgTE9HSU5cbioqKioqKioqKioqKioqKioqKioqKiovXG4jYWNjb3VudGxvc3RwYXNzd29yZCwgI2FjY291bnRsb3N0bG9naW57XG4gIHdpZHRoOiAxMDAlO1xuICAjVVNFUk5BTUUtZWxlbWVudCwgI0VNQUlMLWVsZW1lbnR7XG4gICAgcGFkZGluZzogMjBweCAxMCUgMjBweCAyMHB4O1xuICAgIC5jb2wtbWQtM3tcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIH1cbiAgfVxuXG4gIC5mb3JtLWFjdGlvbnN7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxufVxuI0RlbWFuZGVydW5ub3V2ZWF1bW90ZGVwYXNzZSwgI1JlY2V2b2lybW9ubG9naW57XG4gIG1hcmdpbi1ib3R0b206IDUwcHg7XG59XG5cblxuLyoqKioqKioqKioqKioqKioqKioqKipcbiAgICBDb25maWd1cmF0aW9uXG4gICAgICAgIElkSGFsXG4qKioqKioqKioqKioqKioqKioqKioqKi9cblxuI2lkaGFsX01vZGFsLCAjZm9ybXNfTW9kYWwsICNtb2RhbC1zZWFyY2gtZG9jdW1lbnRzLCAjbW9kYWwtdXBkYXRlLWlkaGFsLXB1YmxpY2F0aW9ucy1yZWNhcCB7XG4gIC5tb2RhbC1kaWFsb2cge1xuICAgIG1heC13aWR0aDogODAlO1xuICB9XG4gIC5mb3JtLXJvdyB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgfVxuICAjcSB7XG4gICAgZmxleDogMC40IDEgYXV0bztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JheS1mNjtcbiAgfVxuICB0aCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGdyYXktZjY7XG4gIH1cbiAgLndhcm5pbmcge1xuICAgIGNvbG9yOiAkc2Vjb25kYXJ5LWVycm9yO1xuICB9XG59XG5cbmlucHV0LmNoZWNrYm94W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gIHdpZHRoOiBpbmhlcml0O1xuICBvcGFjaXR5OiBpbmhlcml0O1xufSIsIi8qKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgIEdFTkVSQUxcbioqKioqKioqKioqKioqKioqKioqKiovXG5cbi5oYWwtYmd0ZXh0LCAuYmctYmVpZ2V7XG4gIGJhY2tncm91bmQtY29sb3I6ICRncmF5LWY0O1xuICAmLnZlcnNpb25ze1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuXG4gICAgc3BhbjpmaXJzdC1jaGlsZHtcbiAgICAgIGNvbG9yOiAkZ3JheS02NDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAxNXB4O1xuICAgIH1cbiAgICBzcGFuOm50aC1jaGlsZCgyKXtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgYXtcbiAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgIH07XG4gICAgfVxuICAgIHNwYW46bnRoLWNoaWxkKDMpe1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgIH1cbiAgfVxufVxuXG4uYnRuLWdyb3VwLWxhbmcge1xuICBtYXJnaW4tbGVmdDogNXB4O1xuICBidXR0b24uYnRue1xuICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgZm9udC1zaXplOiAkc2l6ZS1zbWFsbDtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBjb2xvcjogJHByaW1hcnktYmx1ZTE7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJHByaW1hcnktYmx1ZTE7XG4gICAgJi5hY3RpdmV7XG4gICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktYmx1ZTE7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbiNmbGFzaC1tZXNzYWdlcyAuYWxlcnR7XG4gIHotaW5kZXg6IDU7XG4gIHRvcDogMTMwcHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbn1cbi8vIFBvdXIgaWNvbiBwYXJ0YWdlclxuLmEyYV9kZWZhdWx0X3N0eWxlIC5hMmFfY291bnQsIC5hMmFfZGVmYXVsdF9zdHlsZSAuYTJhX3N2Zyxcbi5hMmFfZmxvYXRpbmdfc3R5bGUgLmEyYV9zdmcsIC5hMmFfbWVudSAuYTJhX3N2ZywuYTJhX3ZlcnRpY2FsX3N0eWxlIC5hMmFfY291bnQsXG4uYTJhX3ZlcnRpY2FsX3N0eWxlIC5hMmFfc3Zne1xuICBib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG59XG4vKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICBXSURHRVRcbioqKioqKioqKioqKioqKioqKioqKiovXG5cbiNtZXRyaWNze1xuICBib3gtc2hhZG93OiBub25lO1xuICBib3JkZXI6IDFweCBzb2xpZCAkcHJpbWFyeS1ibHVlMztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAubWV0cmljcy12aWV3c3tcbiAgICAmOm50aC1jaGlsZCgyKXtcbiAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgJGdyYXktY2E7XG4gICAgfVxuXG4gICAgZGlzcGxheTogaW5saW5lLWdyaWQ7XG4gICAgc3BhbjpmaXJzdC1jaGlsZHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgZm9udC1zaXplOiAkc2l6ZS1sYXJnZTtcbiAgICB9XG4gIH1cblxufVxuXG4uaWRlbnRpZmllci1saXN0e1xuICB1bHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgY29sb3I6ICRncmF5LTY0O1xuXG4gICAgbGl7XG4gICAgICB3b3JkLWJyZWFrOiBicmVhay1hbGw7XG4gICAgfVxuICB9XG4gIHNwYW46bnRoLWNoaWxkKDIpe1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIG1hcmdpbi1sZWZ0OiAxMnB4O1xuICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgYXtcbiAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgfVxuICB9XG59XG5cbi5zZWN0aW9uLWNvbnRlbnQud2lkZ2V0LWZpbGVze1xuICBkaXYuZmlsZXtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGZpbGw6ICR3aGl0ZTtcbiAgICBmb250LXNpemU6IGNhbGMoI3skc2l6ZS1yZWd1bGFyfSArIC4xcmVtKTtcbiAgICBsaW5lLWhlaWdodDogMjtcblxuICAgIHNwYW46Zmlyc3QtY2hpbGR7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDMwcHg7XG4gICAgfVxuICAgICYubm90e1xuICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgIGZpbGw6ICRibGFjaztcbiAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICB9XG4gICAgLmVtYmFyZ28tbXNne1xuICAgICAgY29sb3I6ICRzZWNvbmRhcnktZXJyb3I7XG4gICAgICBmb250LXNpemU6ICRzaXplLXNtYWxsO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICBidXR0b257XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGNvbG9yOiAkc2Vjb25kYXJ5LWVycm9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cbiVidG4tcG9wb3ZlciB7XG4gIC5idG4tcG9wb3ZlciB7XG4gICAgY29sb3I6ICRibGFjaztcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGZvbnQ6IGluaGVyaXQ7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIG91dGxpbmU6IGluaGVyaXQ7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAkcHJpbWFyeS1ibHVlMTtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIH1cbiAgfVxufVxuLyoqKioqKioqKioqKioqKioqKioqKipcbiAgICBXSURHRVQtQVVUSE9SU1xuICAgICAgICBhdXRldXJzXG4qKioqKioqKioqKioqKioqKioqKioqL1xuLnBvcG92ZXItYXV0aG9yc3tcbiAgZGlzcGxheTogaW5saW5lLWdyaWQ7XG5cbiAgLnBvcG92ZXItYXV0aG9yLWhlYWRlcntcbiAgICAgIHBhZGRpbmc6IDE1cHggMTBweCAwIDI1cHg7XG5cbiAgICBoNHtcbiAgICAgIGNvbG9yOiAkcHJpbWFyeS1ibHVlMTtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgIH1cbiAgICB1bHtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgfVxuICB9XG4gIGEucG9wb3Zlci1hZmZpbHtcbiAgICBwYWRkaW5nOiAwIDEwcHggMTVweCAyNXB4O1xuICAgIGNvbG9yOiAkYmxhY2s7XG4gIH1cbiAgLnBvcG92ZXItcmVzdW1le1xuICAgIGZvbnQtc2l6ZTogJHNpemUtcmVndWxhcjtcbiAgfVxuICAuaGFsLXByaXZpbGVnZS1idXR0b24ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRwdXJwbGU7XG4gICAgcGFkZGluZzogMTJweDtcbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwdXJwbGUtZGFyaztcbiAgICB9XG4gIH1cbn1cblxuLnBvcG92ZXIuZmFkZXtcbiAgbWF4LXdpZHRoOiA1NTVweDtcblxuICAucG9wb3Zlci1ib2R5e1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWF4LXdpZHRoOiA0NTBweDtcblxuICAgICYucG9wb3Zlci1qb3VybmFsLWJvZHl7XG4gICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICBwYWRkaW5nOiA1cHggMjBweDtcbiAgICAgIGZvbnQtc2l6ZTogJHNpemUtbWludXM7XG4gICAgfVxuICB9XG4gIC5hcnJvd3tcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5hdXRob3Jze1xuICArIGJ1dHRvbntcbiAgICBjb2xvcjogJHByaW1hcnktYmx1ZTE7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJHByaW1hcnktYmx1ZTE7XG4gICAgYm9yZGVyLXJhZGl1czogdW5zZXQ7XG4gICAgb3BhY2l0eTogMC42NDtcbiAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgIGZvbnQtc2l6ZTogJHNpemUtcmVndWxhcjtcbiAgICBsaW5lLWhlaWdodDogMTtcblxuICAgICY6aG92ZXJ7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1ibHVlMztcbiAgICB9XG4gIH1cbn1cblxuI2F1dGhvcnMtZGV0YWlsZWR7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGJ1dHRvbi5idG4taGlkZS1zaG93e1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWJsdWUxO1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBmb250LXNpemU6ICRzaXplLXJlZ3VsYXI7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gIH1cbn1cblxuLnBvcG92ZXItc3RydWN0dXJlIHtcbiAgcGFkZGluZzogMTVweCAxMHB4IDE1cHggMjVweDtcbiAgJiA+IGF7XG4gICAgY29sb3I6ICRwcmltYXJ5LWJsdWUxO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6ICRwcmltYXJ5LWJsdWUxLWhvdmVyO1xuICAgIH1cbiAgfVxuICB1bHtcbiAgICBhe1xuICAgICAgY29sb3I6ICRwcmltYXJ5LWJsdWUxO1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICRwcmltYXJ5LWJsdWUxLWhvdmVyO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAubGFiZWwubGFiZWwtcHJpbWFyeSB7XG4gICAgZm9udC1zaXplOiAuNzVyZW07XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktYmx1ZTE7XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIHBhZGRpbmctbGVmdDogM3B4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDNweDtcbiAgfVxufVxuXG4jYXV0aG9ycy1kZXRhaWxlZCAuY29sLWxnLTQge1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW4tdG9wOiAyMHB4O1xufVxuXG5cbi5jb2wtbGctNCAuYmctYmVpZ2Uge1xuICBwYWRkaW5nOiAxMHB4O1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gIG1heC13aWR0aDogMzM3cHg7XG4gIGhlaWdodDogMTAwJTtcblxuICBhe1xuICAgIGNvbG9yOiAkYmxhY2s7XG4gIH1cbiAgPiBhIHtcbiAgICBjb2xvcjogJHRvb2xzLXNvcnQ7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIH1cbiAgdWx7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbiAgLmRldGFpbGVkLXJlc3VtZXtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkcHJpbWFyeS1ibHVlMTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAxMHB4O1xuICAgIGZsb2F0OiByaWdodDtcbiAgICByaWdodDogNDVweDtcbiAgICBwYWRkaW5nOiA1cHg7XG5cbiAgICBhe1xuICAgICAgY29sb3I6ICRwcmltYXJ5LWJsdWUxO1xuICAgIH1cbiAgfVxuICAuaGFsLWljb257XG4gICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICB9XG4gIC5kZXRhaWxlZC1hZmZpbHtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgfVxufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKlxuICAgIFdJREdFVC1BVVRIT1JTXG4gICAgICBzdHJ1Y3R1cmVzXG4qKioqKioqKioqKioqKioqKioqKioqL1xuLnN0cnVjdHVyZXN7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBwYWRkaW5nOiAyMHB4IDE1cHggNXB4O1xuICBtYXJnaW4tdG9wOiAyMHB4O1xuICBkaXNwbGF5OiBmbGV4O1xuXG4gIGRpdjpmaXJzdC1jaGlsZHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gICAgY29sb3I6ICRwcml2aWxlZ2UtYnV0dG9uO1xuICAgIGZvbnQtc2l6ZTogJHNpemUteGw7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogLTEwcHg7XG4gIH1cbiAgZGl2Om50aC1jaGlsZCgyKXtcbiAgICBzcGFue1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdyYXktZTg7XG4gICAgICBwYWRkaW5nOiAwIDhweDtcbiAgICB9XG4gICAgYXtcbiAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgfVxuICB9XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqXG4gICAgV0lER0VULUFCU1RSQUNUXG4gICAgLUtFWVdPUkRTLURPTUFJTlNcbioqKioqKioqKioqKioqKioqKioqKiovXG4uYWJzdHJhY3QsIC5rZXl3b3Jkc3tcbiAgZGl2OmZpcnN0LWNoaWxke1xuICAgIG1hcmdpbi10b3A6IDQ4cHg7XG4gIH1cbiAgLy8gUsOpc3Vtw6lcbiAgaDR7XG4gICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICBkaXNwbGF5OiBpbmxpbmU7XG4gIH1cbiAgLmJ0bi1ncm91cHtcblxuXG4gICAgYnV0dG9uLmJ0bntcbiAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgZm9udC1zaXplOiAkc2l6ZS1zbWFsbDtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgY29sb3I6ICRwcmltYXJ5LWJsdWUxO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAkcHJpbWFyeS1ibHVlMTtcbiAgICAgICYuYWN0aXZle1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1ibHVlMTtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5hYnN0cmFjdC1jb250ZW50e1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgJi5hY3RpdmV7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRncmF5LWNhO1xuICAgICAgbWF4LXdpZHRoOiA2NzRweDtcbiAgICAgIHBhZGRpbmc6IDVweCAxNXB4O1xuICAgICAgbWFyZ2luLXRvcDogNXB4O1xuICAgIH1cbiAgfVxufVxuXG4uYnRuLWdyb3VwID4gLmJ0bi5hY3RpdmV7XG4gIHotaW5kZXg6IDA7XG59XG5cbi5rZXl3b3JkcywgLmRvbWFpbnN7XG4gIGg0e1xuICAgIG1hcmdpbi10b3A6IDQ4cHg7XG4gIH1cbiAgYS5oYWwtYmd0ZXh0e1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoeHMpIHtcbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgfVxuICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWJsdWUzO1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgZm9udC1zaXplOiAkc2l6ZS1zbWFsbDtcbiAgICAmOmhvdmVye1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktYmx1ZTMtaG92ZXI7XG4gICAgfVxuICB9XG5cbiAgLmtleXMtbGFuZ3tcbiAgICBkaXNwbGF5OiBub25lO1xuICAgICYuYWN0aXZle1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG59XG5cbi5zZWN0aW9uLWV4cG9ydCwgLmtleXdvcmRzLCAuZG9tYWlucywgLnNlY3Rpb24tY29sbGVjdGlvbiB7XG4gIGEuaGFsLWJndGV4dHtcbiAgICAvLyBMZSBwcm9ibMOobWUgYXZlYyBjZSBjcml0w6hyZSBlc3QgcXVlIHNpIGxhIGNvbG9ubmUgbidlc3QgcGFzIGFzc2V6IGdyYW5kZSwgbGVzIGF1dHJlcyDDqWzDqW1lbnRzXG4gICAgLy8gbmUgcmV0b3VybmVudCBwYXMgw6AgbGEgbGlnbmUuLi4uXG4gICAgLy93aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIGxpbmUtaGVpZ2h0OiAzcmVtO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIH1cbn1cblxuLm1ldGFkYXRhLXNvZnR3YXJlLWxpc3Qge1xuICAubWV0YS12YWx1ZSB7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG5cbiAgICAmOm5vdCg6bGFzdC1jaGlsZCk6YWZ0ZXIge1xuICAgICAgY29udGVudDogJywgJztcbiAgICB9XG4gIH1cbn1cblxuXG4vKioqKioqKioqKioqKioqKioqKioqKlxuICAgIFdJREdFVC1NRVRBREFUQVxuKioqKioqKioqKioqKioqKioqKioqKi9cbiNtZXRhZGF0YXNfTW9kYWwge1xuICAubW9kYWwtZGlhbG9nIHtcbiAgICBtYXgtd2lkdGg6IDcwJTtcbiAgfVxuICAudHlwZXN1Ym1pc3Npb24ge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYig1MSwgMTIyLCAxODMpO1xuICAgIHBhZGRpbmc6IDJweCAxMHB4O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB9XG4gIHRhYmxlIHtcbiAgICB0YWJsZS1sYXlvdXQ6IGZpeGVkO1xuICB9XG4gIHRoIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDJyZW07XG4gICAgd2lkdGg6IDI1JTtcbiAgfVxuICBjYXB0aW9uIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDJyZW07XG4gIH1cbiAgLnRpdGxlLXRhYmxlIHtcbiAgICBjb2xvcjogJHByaW1hcnktYmx1ZTE7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgZm9udC1zaXplOiAxLjE1cmVtO1xuICB9XG4gIC5iYWRnZSB7XG4gICAgZm9udC1zaXplOiAxMDAlO1xuICB9XG4gIC5wcmVjIHtcbiAgICBmb250LXNpemU6IHNtYWxsO1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgfVxuICAuc3RydWN0IHtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICB9XG4gIC5ncmV5LWJhZGdlIHtcbiAgICBib3JkZXItcmFkaXVzOiB1bnNldDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JheS1lODtcbiAgfVxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwcHg7XG4gICAgLm1vZGFsLWRpYWxvZyB7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICBtYXJnaW46IDAuNXJlbTtcbiAgICB9XG4gIH1cbn1cbi8vIFBvdXIgbGEgcmV2dWVcbmJsb2NrcXVvdGUgLnJlZmVyZW50aWVsIHNtYWxse1xuICBkaXNwbGF5OiBibG9jaztcbiAgbGluZS1oZWlnaHQ6IDEuNDtcblxuICAmOmJlZm9yZXtcbiAgICBjb250ZW50OiAnXFwyMDE0IFxcMDBBMCc7XG4gIH1cbn1cbi8qIFNIRVJQQS9ST01FTyAqL1xuLnBvcG92ZXIgdGFibGUgdGQudGV4dC1sZWZ0IHNwYW57XG4gIGJvcmRlci1yYWRpdXM6IDAgIWltcG9ydGFudDtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKipcbiAgICBXSURHRVQtTUVUQURBVEFcbioqKioqKioqKioqKioqKioqKioqKiovXG4jYm9va21hcmstYnV0dG9uLCAjYm9va21hcmstZmlsbC1idXR0b24sXG4uYm9va21hcmstYnV0dG9uLCAuYm9va21hcmstZmlsbC1idXR0b257XG4gIGJvcmRlcjogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGZsb2F0OiByaWdodDtcbiAgZm9udC1zaXplOiAkc2l6ZS14bDtcbiAgY29sb3I6ICRwcmltYXJ5LWJsdWUxO1xuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICB9XG59XG4jbGlicmFyeS1saXN0e1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG5cbiAgJisgZGl2e1xuICAgIG1hcmdpbi1sZWZ0OiAxMnB4O1xuICB9XG59XG5cbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihsZykge1xuICBzZWN0aW9uLmNvbC0zLCBzZWN0aW9uLmNvbC04e1xuICAgIGRpc3BsYXk6IGNvbnRlbnRzO1xuXG4gICAgLnNlY3Rpb24tY29udGVudHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKlxuICAgIFdJREdFVC1WSUVXRVJcbioqKioqKioqKioqKioqKioqKioqKiovXG4udmlld2VyIGJ1dHRvbjpmaXJzdC1jaGlsZCBzcGFuLmhhbC1pY29ue1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbn1cblxuI3ZpZXdlci1kZXRhaWxlZCB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoeHMpIHtcbiAgICBoZWlnaHQ6IDU3MHB4O1xuICB9XG4gID4gZGl2Om50aC1jaGlsZCgxKSB7XG4gICAgbWFyZ2luOiAwIDMwcHggMCA0N3B4O1xuICAgIHBhZGRpbmctdG9wOiAzOHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAzOHB4O1xuICAgIGhlaWdodDogMTAwJTtcblxuICAgIC5jb2wtbWQtMiB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4cykge1xuICAgICAgICBtYXJnaW4tbGVmdDogLTMwcHg7XG4gICAgICB9XG4gICAgICBtYXJnaW4tcmlnaHQ6IDMwcHg7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBvdmVyZmxvdzogYXV0bztcblxuICAgICAgYXtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIH1cblxuICAgICAgLmZpbGUtbWFqb3Ige1xuICAgICAgICB0b3A6IDIwcHg7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICB9XG5cbiAgICAgIC50aHVtYm5haWwtdmlld2VyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdyYXktZTg7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICAgfVxuXG4gICAgICAgIC5kZWZhdWx0LXRodW1ibmFpbCB7XG4gICAgICAgICAgcGFkZGluZzogMTBweDtcbiAgICAgICAgICBpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogNjBweDtcbiAgICAgICAgICAgIGNvbG9yOiAkZ3JheS02NDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBzcGFuIHtcbiAgICAgICAgICBsaW5lLWhlaWdodDogNS41O1xuICAgICAgICAgIGNvbG9yOiAkZ3JheS02NDtcbiAgICAgICAgICBmb250LXNpemU6ICRzaXplLXhsO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgIGJvcmRlcjogNnB4IHNvbGlkICRwcmltYXJ5LWJsdWU7XG4gICAgICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnZpZXdlci1jb250ZW50e1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICYuYWN0aXZle1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgfVxuICAgIH1cbiAgICAuY29sLW1kLTkge1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgIC1tcy1mbGV4OiAwIDAgODMlO1xuICAgICAgZmxleDogMCAwIDgzJTtcbiAgICAgIG1heC13aWR0aDogODMlO1xuXG4gICAgICBpZnJhbWV7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDk1JTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgICAuZW1iYXJnbyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRncmF5LWU4O1xuICAgICAgICBjb2xvcjogJGdyYXktNjQ7XG4gICAgICAgIGZvbnQtc2l6ZTogJHNpemUtbGFyZ2U7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIGhlaWdodDogMTAwJTtcblxuICAgICAgICBkaXY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICB0b3A6IDM1JTtcblxuICAgICAgICAgIGRpdjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHRhYmxlIHtcbiAgICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgICAgdGQge1xuICAgICAgICAgICAgcGFkZGluZzogNHB4IDE1cHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgdGFibGUgKyBzcGFuIHtcbiAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICAgIGZvbnQtc2l6ZTogJHNpemUtcmVndWxhcjtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgfVxuICB9XG59XG4gIC5oYWwtb3B0aW9uLWJ1dHRvbntcbiAgICAvL2Rpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtc2l6ZTogJHNpemUtcmVndWxhcjtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIHBhZGRpbmc6IDEycHg7XG4gIH1cblxuXG4uZW1iYXJnby1sYWJlbCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRncmF5LWNhO1xuICBjb2xvcjogJGJsYWNrO1xuICBmb250LXNpemU6ICRzaXplLXhzbWFsbDtcbiAgcGFkZGluZzogMTJweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBmb250LXdlaWdodDogYm9sZDtcblxuICBzcGFuOmZpcnN0LWNoaWxke1xuICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgfVxufVxuXG4jbGlzdC10aHVtYm5haWwtdmlld2VyLCAudmlld2VyLWNvbnRlbnR7XG4gIHNwYW57XG4gICAgY29sb3I6ICRncmF5LTM3O1xuICAgIGZvbnQtc2l6ZTogJHNpemUteHNtYWxsO1xuICB9XG4gIGF7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICB9XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqXG4gICAgU1VCTUlUVEVEIERBVEVcbioqKioqKioqKioqKioqKioqKioqKiovXG4uc3VibWl0dGVkLWRhdGV7XG4gIGNvbG9yOiAkZ3JheS1jYTtcbiAgZm9udC1zaXplOiAkc2l6ZS1zbWFsbDtcbiAgbGluZS1oZWlnaHQ6IC45O1xuICBtYXJnaW4tdG9wOiAyMHB4O1xufVxuLyoqKioqKioqKioqKioqKioqKioqKipcbiAgICBBVVRPQ09NUExFVEVcbioqKioqKioqKioqKioqKioqKioqKiovXG4udWktYXV0b2NvbXBsZXRlLnVpLWZyb250IHtcbiAgei1pbmRleDogMTA2MCAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gIG1heC1oZWlnaHQ6IDMwMHB4O1xuICBvdmVyZmxvdzogYXV0bztcbiAgcGFkZGluZzogMTBweDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgYm94LXNoYWRvdzogMHB4IDNweCA2cHggJGJveC1zaGFkb3c7XG4gIC51aS1tZW51LWl0ZW17XG4gICAgcGFkZGluZzogM3B4O1xuICAgICY6aG92ZXJ7XG4gICAgICAvL2ZvbnQtd2VpZ2h0OiBib2xkICFpbXBvcnRhbnQ7IHRlc3QgY29ycmVjdGlvbiBzY2ludGlsbGVtZW50IGTDqXDDtHRcbiAgICAgIGNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG4gIH1cbn1cblxuXG4ucHJldmlldy1ub3QtYXZhaWxhYmxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGdyYXktZTg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICBoMSB7XG4gICAgY29sb3I6ICRncmF5LTY0O1xuICAgIGZvbnQtc2l6ZTogJHNpemUtbGFyZ2U7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIH1cbiAgZGl2OmZpcnN0LWNoaWxkIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luLXRvcDogMTYwcHg7XG4gIH1cbn1cblxuLmxhYmVsIHtcbiAgJi5sYWJlbC1WQUxJRCB7XG4gICAgYmFja2dyb3VuZDogJHNlY29uZGFyeS1zdWNjZXNzIWltcG9ydGFudDtcbiAgfVxuICAmLmxhYmVsLU9MRCB7XG4gICAgYmFja2dyb3VuZDogJHNlY29uZGFyeS13YXJuaW5nIWltcG9ydGFudDtcbiAgfVxuICAmLmxhYmVsLUlOQ09NSU5HIHtcbiAgICBiYWNrZ3JvdW5kOiAkc2Vjb25kYXJ5LWVycm9yIWltcG9ydGFudDtcbiAgfVxufVxuXG4jaGlzdG9yeS1kZXRhaWxlZCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlOGU4ZTg7XG59XG5cbi5hbGVydC1oaXN0b3J5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGdyYXktZjY7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIC5iYWRnZSB7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAmLmJhZGdlLXN1Y2Nlc3Mge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHNlY29uZGFyeS1zdWNjZXNzO1xuICAgIH1cbiAgICAmLmJhZGdlLWluZm8ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktYmx1ZTE7XG4gICAgfVxuICAgICYuYmFkZ2Utd2FybmluZyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2Vjb25kYXJ5LXdhcm5pbmc7XG4gICAgfVxuICAgICYuYmFkZ2UtZGFuZ2VyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRzZWNvbmRhcnktZXJyb3I7XG4gICAgfVxuICAgICYuYmFkZ2Utb3JhbmdlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LW9yYW5nZTtcbiAgICB9XG4gICAgJi5iYWRnZS12aW9sZXQge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktYmx1ZS1kaXNhYmxlZDtcbiAgICB9XG5cbiAgfVxufVxuXG4vKiBSZWZlcmVuY2VzICovXG5cbiNyZWYtZGV0YWlsZWQge1xuICBiYWNrZ3JvdW5kOiAkZ3JheS1mYTtcbn1cbi5yZWZlcmVuY2VzLWZpbHRyZSB7XG4gIC5idG4ge1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gIH1cbiAgLmRyb3Bkb3duLWl0ZW0uYWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1ibHVlMztcbiAgfVxufVxuXG4ucmVmZXJlbmNlLWJ1dHRvbnMge1xuICBmbG9hdDogcmlnaHQ7XG59XG5cbi5yZWZlcmVuY2VzLXNlY3Rpb24ge1xuICBvdmVyZmxvdyAgICAgOiBhdXRvO1xuICBtYXgtaGVpZ2h0ICAgOiAzMDBweDtcbiAgbWFyZ2luOiAuNWVtIDAgLjVlbSAwO1xuICB0YWJsZXtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAucmVmZXJlbmNlLXJvdyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGdyYXktZjY7XG4gICAgYm9yZGVyLWJvdHRvbTogdGhpY2sgc29saWQgJHdoaXRlO1xuICAgIC5yZWZlcmVuY2UtdGV4dCB7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgcGFkZGluZyAgICAgICA6IC41ZW0gMCAuNWVtIDA7XG4gICAgICAuaW5zaWRlLXJlZmVyZW5jZS10ZXh0e1xuICAgICAgICBtYXJnaW4tbGVmdCA6IC41ZW07XG4gICAgICAgIHBhZGRpbmc6IDAgMCAuNWVtIC41ZW07XG4gICAgICAgIGJvcmRlci1sZWZ0IDogMXB4IGdyb292ZSAkd2hpdGU7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICB9XG4gICAgICAudGl0bGUtcmVmZXJlbmNlIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICB9XG4gICAgICAudGl0bGVFdmVudC1yZWZlcmVuY2UtdmFsdWUge1xuICAgICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgICB9XG4gICAgICBwe1xuICAgICAgICBtYXJnaW4gOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgfVxuICAgICAgLnJlZmVyZW5jZXMtaWRlbnRpZmllcnMge1xuICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgbWFyZ2luOiAzcHg7XG4gICAgICB9XG4gICAgICAucmVmZXJlbmNlcy1pZGVudGlmaWVye1xuICAgICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBsaWdodGVyO1xuICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgIG1pbi13aWR0aDogNDBweDtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiA1cHg7XG4gICAgICB9XG4gICAgICAucmVmZXJlbmNlcy1pZGVudGlmaWVyLXZhbHVle1xuICAgICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JheS1hMjtcbiAgICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGxpZ2h0ZXI7XG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiA1cHg7XG4gICAgICB9XG4gICAgICBhOmZvY3Vze1xuICAgICAgICBjb2xvcjogIzQwNDA0MDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcbiAgICAgIH1cbiAgICB9XG4gICAgLnZhbGlkYXRpb24tYnV0dG9uIHtcbiAgICAgIGNvbG9yOiAkc2Vjb25kYXJ5LXN1Y2Nlc3M7XG4gICAgfVxuICAgIC5yZW1vdmUtYnV0dG9uIHtcbiAgICAgIGNvbG9yOiRzZWNvbmRhcnktZXJyb3I7XG4gICAgfVxuXG4gIH1cbiAgLmxpbmstZnJlZS1mdWxsLXRleHQtdXJsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHVycGxlO1xuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6JHdoaXRlO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHB1cnBsZS1kYXJrO1xuICAgIH1cbiAgfVxuICAubGluay1kb2kge1xuICAgIGJhY2tncm91bmQtY29sb3I6JHByaW1hcnktYmx1ZTtcbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiR3aGl0ZTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWJsdWUtaG92ZXI7XG4gICAgfVxuICB9XG4gIC8qIG90aGVyIHNlYXJjaCBlbmdpbmVzICovXG4gIC5saW5rLXNlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiRwcmltYXJ5LWJsdWUzO1xuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6JHdoaXRlO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktYmx1ZTMtaG92ZXI7XG4gICAgfVxuICB9XG59IiwiI3RvZ2dsZS1hY3Rpb25ze1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMTY3cHg7XG4gIHJpZ2h0OiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1ibHVlO1xuICB3aWR0aDogNzVweDtcbiAgaGVpZ2h0OiA2N3B4O1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBzcGFue1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gIH1cbn1cbiNhY2NvcmRpb24tYWN0aW9uc3tcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDIwMHB4O1xuICByaWdodDogMDtcbiAgei1pbmRleDogMTtcblxuICAucG9wLW92ZXIsIC5wb3Atb3Zlci1jb250ZW50ID4gZGl2e1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gIH1cblxuICB1bHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIG1heC1oZWlnaHQ6IGNhbGMoMTAwdmggLSAyMzBweCk7XG4gICAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICAgIG92ZXJmbG93LXk6IHNjcm9sbDtcbiAgICBsaSB7XG4gICAgICBkaXYuYnRuLWFjY29yZGlvbntcbiAgICAgICAgd2lkdGg6IDYwcHg7XG4gICAgICAgIHRyYW5zaXRpb246IHdpZHRoIC42cyBlYXNlLWluLW91dDtcbiAgICAgIH1cblxuICAgICAgYSwgYnV0dG9uOm5vdCguYnRuLXRhbXBvbil7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogMjgwcHg7XG4gICAgICAgIGhlaWdodDogNjBweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgfVxuICAgICAgYSBzcGFuOmZpcnN0LWNoaWxkLCBidXR0b246bm90KC5idG4tdGFtcG9uKSBzcGFuOmZpcnN0LWNoaWxkLFxuICAgICAgYSBpLCBidXR0b246bm90KC5idG4tdGFtcG9uKSBpe1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDQwcHg7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xuICAgICAgfVxuICAgICAgYSBzcGFuOm50aC1jaGlsZCgyKSwgYnV0dG9uOm5vdCguYnRuLXRhbXBvbikgc3BhbjpudGgtY2hpbGQoMiksXG4gICAgICBhIHNwYW4sIGJ1dHRvbjpub3QoLmJ0bi10YW1wb24pIHNwYW57XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIH1cbiAgICAgIGRpdi5idG4tYWNjb3JkaW9uID4gYnV0dG9uID4gc3BhbiwgZGl2LmJ0bi1hY2NvcmRpb24gPiBidXR0b24gPiBpLFxuICAgICAgZGl2LmJ0bi1hY2NvcmRpb24gPiBhID4gc3BhbiwgZGl2LmJ0bi1hY2NvcmRpb24gPiBhID4gaXtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBmb250LXNpemU6ICRzaXplLXJlZ3VsYXI7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiA2MHB4O1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgIH1cbiAgICAgIGRpdi5idG4tYWNjb3JkaW9uID4gYnV0dG9uID4gaSxkaXYuYnRuLWFjY29yZGlvbiA+IGEgPiBpe1xuICAgICAgICBmb250LXNpemU6ICRzaXplLXhsO1xuICAgICAgfVxuICAgIH1cbiAgICAmOmhvdmVyLCAmOmZvY3Vze1xuICAgICAgbGkge1xuICAgICAgICAuYnRuLWFjY29yZGlvbntcbiAgICAgICAgICB3aWR0aDogMjgwcHg7XG4gICAgICAgIH1cbiAgICAgICAgYXtcbiAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIHVsLmtlZXBvcGVuIHtcbiAgICBsaSB7XG4gICAgICBkaXYuYnRuLWFjY29yZGlvbiB7XG4gICAgICAgIHdpZHRoOiAyODBweCFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgTU9EQUxcbioqKioqKioqKioqKioqKioqKioqKiovXG4ubW9kYWwuZmFkZS5zaG93e1xuICBiYWNrZ3JvdW5kOiByZ2JhKDY3LCA2NywgNjcsIDAuNzQpIG5vbmUgcmVwZWF0IHNjcm9sbCAwJSAwJTtcbn1cbi5tb2RhbC1iYWNrZHJvcC5mYWRlLnNob3d7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4ubW9kYWwtY29udGVudHtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgLm1vZGFsLWhlYWRlcntcbiAgICBib3JkZXItYm90dG9tOiBub25lO1xuXG4gICAgLmNsb3Nle1xuICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG4gIH1cbiAgLm1vZGFsLWZvb3RlcntcbiAgICBib3JkZXItdG9wOiBub25lO1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgfVxufVxuXG4uYnRuLmhhbC12aXN1YWxpemUtYnV0dG9uLmNhbmNlbHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktYmx1ZTM7XG5cbiAgJjpob3ZlcntcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1ibHVlMy1ob3ZlcjtcbiAgfVxufVxuLyoqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICBUQU1QT05ORVJcbioqKioqKioqKioqKioqKioqKioqKiovXG5cbmRpdiAuYnRuLXRhbXBvbiB7XG4gIHBhZGRpbmc6IDVweDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gIG1hcmdpbi1ib3R0b206IDVweDtcbn1cblxuLypcbi5tb2RhbC1ib2R5Om5vdCgjbWV0YWRhdGEtYm9keSwgKSBsaXtcbiAgYm9yZGVyOiAxcHggc29saWQgJHByaW1hcnktYmx1ZTE7XG4gIHBhZGRpbmc6IDEwcHggMTBweCA1cHggMTBweDtcbiAgY29sb3I6ICRwcmltYXJ5LWJsdWUxO1xuICBib3JkZXItYm90dG9tOiAycHggc29saWQgJHByaW1hcnktYmx1ZTE7XG4gIG1pbi13aWR0aDogMjAwcHg7XG4gIHdpZHRoOiBtaW4tY29udGVudDtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cbiAqL1xuXG4vKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgIFNVUFBSSU1FUlxuKioqKioqKioqKioqKioqKioqKioqKi9cbiNkZWxldGVfTW9kYWwsICNleGl0X01vZGFsLCAjY2xlYXJfTW9kYWx7XG4gIC5tb2RhbC1ib2R5e1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuICAubW9kYWwtZm9vdGVye1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB9XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgUEFSVEFHRVxuKioqKioqKioqKioqKioqKioqKioqKi9cbltpZF49dHJhbnNmZXJ0X01vZGFsXXtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG5cbiAgLm1vZGFsLWRpYWxvZ3tcbiAgICBtYXgtd2lkdGg6IDgwMHB4O1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gIH1cblxuICBkaXY6Zmlyc3QtY2hpbGR7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgfVxuICBkaXYgcDpmaXJzdC1jaGlsZHtcbiAgICBjb2xvcjogJHB1cnBsZS1saWdodDtcbiAgfVxufVxuXG4uaGFsLWJndXNlci5yZW1vdmVVc2Vye1xuICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gIGJ1dHRvbiwgYSB7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIG1hcmdpbi1sZWZ0OiAxNXB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG59XG5cbi51c2VyLXNoYXJle1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICB3aWR0aDogMTAwJTtcbiAgYm9yZGVyOiAxcHggc29saWQgJGdyYXktZTg7XG4gIGhlaWdodDogNTBweDtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICBISVNUT1JJUVVFXG4qKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKiBhbGVydCB2aW9sZXQgKi9cbi5hbGVydC12aW9sZXQge1xuICBjb2xvcjogIzg2NzA4QTs7XG4gIGJhY2tncm91bmQtY29sb3I6ICNFM0Q5RTU7XG4gIGJvcmRlci1jb2xvcjogI0M5QkZDQjtcbiAgaDQge1xuICAgIGZvbnQtc2l6ZTogdW5zZXQ7XG4gICAgZm9udC13ZWlnaHQ6IHVuc2V0O1xuICAgIGNvbG9yOiAjY2U1YzAwO1xuICB9XG59XG5cbi5hbGVydHtcbiAgbWFyZ2luOiA1cHggYXV0bztcbiAgcGFkZGluZzogNXB4O1xuXG4gIHNtYWxse1xuICAgIGNvbG9yOiAjOTk5O1xuICAgIGZvbnQtc2l6ZTogNzUlO1xuICAgIG1hcmdpbi1sZWZ0OiA1cHg7XG4gIH1cbn1cblxuI2hpc3RvcnktZGV0YWlsZWR7XG4gIHBhZGRpbmctdG9wOiA1cHg7XG4gIHBhZGRpbmctYm90dG9tOiA1cHg7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgUkVMQVRFRFxuKioqKioqKioqKioqKioqKioqKioqKi9cbiNyZWxhdGVkX01vZGFsIHtcbiAgZm9ybSB7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICBvdmVyZmxvdy14OiBoaWRkZW47XG4gICAgbWF4LWhlaWdodDogNTB2aDtcbiAgfVxuICAubW9kYWwtZGlhbG9nIHtcbiAgICBtYXgtd2lkdGg6IDkwMHB4XG4gIH1cbiAgLmhhbC1vcHRpb24tYnV0dG9uIHtcbiAgICBwYWRkaW5nOiAwLjM3NXJlbSAwLjc1cmVtO1xuICB9XG5cbiAgLmZvcm0tcmVsYXRlZC5waWxsYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRncmF5LWNhO1xuICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgbGFiZWwge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrIWltcG9ydGFudDtcbiAgICAgIGZsZXg6IDAgMCAwIDA7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgfVxuICAgIGZvcm0ge1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIHBhZGRpbmc6IDAgMjBweCAyMHB4O1xuICAgIH1cbiAgfVxufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgIFN0YW1wL3Vuc3RhbXBcbioqKioqKioqKioqKioqKioqKioqKiovXG4jdGFtcG9ubmVyX01vZGFsLCAjZGV0YW1wb25uZXJfTW9kYWwgIHtcbiAgLm1vZGFsLWRpYWxvZyB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIHdpZHRoOjgwJVxuICB9XG59IiwiLnNlY3Rpb24tZXJyb3J7XG4gIHBhZGRpbmc6IDUwcHggMjAwcHg7XG4gIHdpZHRoOiBtYXgtY29udGVudDtcbiAgbWFyZ2luOiA2MHB4IGF1dG8gYXV0byBhdXRvO1xufVxuXG4uZXJyb3ItdGl0bGV7XG4gIGNvbG9yOiAkcHJpbWFyeS1vcmFuZ2U7XG4gIGZvbnQtc2l6ZTogJHNpemUtYmlnO1xufVxuXG4uZXJyb3ItY29udGVudHtcbiAgZm9udC1zaXplOiAkc2l6ZS1sYXJnZTtcbn0iLCIvKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICBGQUNFVFNcbioqKioqKioqKioqKioqKioqKioqKiovXG4uc2VjdGlvbi1mYWNldHN7XG4gIG1hcmdpbi10b3A6IDE5NXB4O1xufVxuLnRpdGxlLWZhY2V0e1xuICBib3JkZXItcmFkaXVzOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgY29sb3I6ICRwcmltYXJ5LWJsdWUxO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgZm9udC1zaXplOiAkc2l6ZS1sYXJnZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGdyYXktZjY7XG5cbiAgc3Bhbi5oYWwtaWNvbntcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgZm9udC1zaXplOiAkc2l6ZS1taW51cztcbiAgICBtYXJnaW4tdG9wOiAyJTtcbiAgfVxufVxuXG4uY29udGVudC1mYWNldHtcbiAgbWFyZ2luLXRvcDogMTVweDtcbiAgbWFyZ2luLWxlZnQ6IDIycHg7XG4gIHBhZGRpbmctYm90dG9tOiAxNXB4O1xuICB1bCB7XG4gICAgbWF4LWhlaWdodDogMzUwcHg7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuICBbdHlwZT1cImNoZWNrYm94XCJdOm5vdCg6Y2hlY2tlZCkgKyBsYWJlbCwgW3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkICsgbGFiZWx7XG4gICAgd2lkdGg6IDcwJTtcbiAgICBmb250LXNpemU6ICRzaXplLXJlZ3VsYXI7XG4gIH1cbiAgYXtcbiAgICBjb2xvcjogJGJsYWNrO1xuICB9XG5cbiAgLnRleHQtbXV0ZWR7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIG1hcmdpbi1yaWdodDogMzBweDtcbiAgfVxufVxuXG4uZmlsdGVyLWhlYWRlcntcbiAgZm9udC1zaXplOiAkc2l6ZS1sYXJnZTtcbiAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbiNhZGRGaWx0ZXItYnV0dG9uIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAxcHggc29saWQgJGdyYXktZTg7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuXG4gICY6aG92ZXJ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGdyYXktYjk7XG4gIH1cbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgVE9PTFMgQkFSXG4qKioqKioqKioqKioqKioqKioqKioqL1xuLmxlZnQtdG9we1xuICBsZWZ0OiAyNTBweDtcbiAgdG9wOiAwO1xufVxuLnJlc3VsdHMtdG9vbHN7XG4gIGhlaWdodDogODFweDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgd2lkdGg6IDEwMCU7XG5cbiAgPiBsYWJlbHtcbiAgICB0b3A6IC0xMHB4O1xuICAgIG1hcmdpbi1sZWZ0OiAxNHB4O1xuICB9XG4gIC50YWJsZS1yZXN1bHRzLXRvb2xze1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHRkOmZpcnN0LWNoaWxkLCB0ZDpudGgtY2hpbGQoMil7XG4gICAgICB3aWR0aDogMTAlO1xuICAgIH1cbiAgICB0ZDpmaXJzdC1jaGlsZHtcbiAgICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICAgIH1cbiAgICB0ZDpsYXN0LWNoaWxke1xuICAgICAgd2lkdGg6IDIwJTtcbiAgICB9XG4gICAgdGQ6bnRoLWNoaWxkKDMpe1xuICAgICAgd2lkdGg6IDYwJTtcbiAgICB9XG4gIH1cbn1cbnVsLmRyb3Bkb3duLW1lbnUucGFnaW5hdGlvbntcbiAgbWluLXdpZHRoOiBhdXRvO1xufVxuLmRyb3Bkb3duLXNvcnR7XG4gIGJ1dHRvbntcbiAgICBjb2xvcjogJHByaW1hcnktYmx1ZTE7XG4gIH1cbn1cbnNwYW4uc3VidGV4dHtcbiAgY29sb3I6ICRncmF5LTY0O1xufVxuXG4ucGFnaW5hdGlvbntcbiAgbWFyZ2luOiBhdXRvO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICBsaXtcbiAgICBtYXJnaW4tbGVmdDogMTJweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDEycHg7XG4gICAgcGFkZGluZzogNnB4O1xuXG4gICAgYXtcbiAgICAgIGNvbG9yOiAkcHJpbWFyeS1ibHVlO1xuICAgIH1cbiAgICAmLmFjdGl2ZXtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkcHJpbWFyeS1ibHVlO1xuICAgIH1cbiAgfVxufVxuXG4uZGV0YW1wb25uZXIsIC50YW1wb25uZXIge1xuICAudGFtcG9uLWxpc3Qge1xuICAgIG1heC13aWR0aDogNTB2dztcbiAgfVxuICBidXR0b24ge1xuICAgIHBhZGRpbmc6IDVweDtcbiAgICBtYXJnaW46IDJweDtcbiAgICAuaGFsLWljb24ge1xuICAgICAgbWFyZ2luLXJpZ2h0OiB1bnNldDtcbiAgICB9XG4gIH1cbn1cblxuXG4vKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICBSRVNVTFRTXG4qKioqKioqKioqKioqKioqKioqKioqL1xuLnJlc3VsdHMtaGVhZGVye1xuICA+IGRpdjpmaXJzdC1jaGlsZCA+IHNwYW4sID4gZGl2OmZpcnN0LWNoaWxkID4gYnV0dG9uIHtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBmb250LXNpemU6ICRzaXplLXhsO1xuICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gIH1cbiAgPiBkaXY6Zmlyc3QtY2hpbGQgPiBidXR0b257XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGZvbnQtc2l6ZTogJHNpemUteGw7XG4gICAgbWFyZ2luLWxlZnQ6IDIwcHg7XG4gIH1cblxuICA+IGRpdjpudGgtY2hpbGQoMil7XG4gICAgbWFyZ2luLWJvdHRvbTogNTBweDtcbiAgICAuaGFsLWJndXNlcntcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWJsdWUxO1xuICAgICAgZm9udC1zaXplOiAkc2l6ZS1yZWd1bGFyO1xuICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICB9XG4gIH07XG59XG5cblxuLnJlc3VsdHMtdGFibGV7XG4gIHRye1xuICAgIHRkOmZpcnN0LWNoaWxke1xuICAgICAgd2lkdGg6IDYxcHg7XG4gICAgfVxuICAgIHRkOm50aC1jaGlsZCgyKXtcbiAgICAgIHdpZHRoOiAxMDBweDtcbiAgICB9XG4gICAgLnJlc3VsdC1hY3Rpb25ze1xuICAgICAgd2lkdGg6IDEwMHB4O1xuICAgIH1cbiAgfVxuICB0ZHtcbiAgICBhe1xuICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgIH1cbiAgICAuaXN0ZXgge1xuICAgICAgZm9udC1zaXplOiAkc2l6ZS1zbWFsbDtcbiAgICAgIHBhZGRpbmc6IDVweCA4cHg7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRncmF5LWU4O1xuICAgICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdyYXktYjk7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIGgze1xuICAgIGZvbnQtc2l6ZTogJHNpemUtbGFyZ2U7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuICAuYXV0aG9ycy1yZXN1bHRzIGF7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgY29sb3I6ICRwcmltYXJ5LWJsdWUxO1xuICAgIGZvbnQtc2l6ZTogJHNpemUtc21hbGw7XG4gIH1cbiAgLmNpdGF0aW9uLXJlc3VsdHMsIC5jaXRhdGlvbi1yZXN1bHRzIGF7XG4gICAgZm9udC1zaXplOiAkc2l6ZS1zbWFsbDtcbiAgICBjb2xvcjogJHByaW1hcnktYnJvd247XG4gIH1cbiAgLmhhbElkLXJlc3VsdHN7XG4gICAgZm9udC1zaXplOiAkc2l6ZS1zbWFsbDtcbiAgfVxufVxuXG4uZHJvcGRvd24tdG9vbHMge1xuICBib3JkZXI6IDFweCBzb2xpZCAkZ3JheS1jYTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgd2lkdGg6IG1heC1jb250ZW50O1xuXG4gIGxpID4gYnV0dG9uLCBsaSA+IGEsIGxpLm5iLWRvYy1jaGVja2Vke1xuICAgIHBhZGRpbmc6IDEwcHggMjFweCAxMHB4IDM0cHg7XG4gIH1cbiAgbGkgPiBhe1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG4gIGxpID4gYnV0dG9uLCBsaSA+IGF7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgZGlzcGxheTogZmxleDtcblxuICAgIC5oYWwtaWNvbiwgLmhhbC1pY29uOjpiZWZvcmV7XG4gICAgICBjb2xvcjogJHRvb2xzLXNvcnQ7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDE3cHg7XG4gICAgfVxuICB9XG4gIGxpOm5vdCgubmItZG9jLWNoZWNrZWQpOmhvdmVyLCBsaTpub3QoLm5iLWRvYy1jaGVja2VkKTpmb2N1cywgbGkuYWN0aXZle1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWJsdWUxO1xuICAgID4gYnV0dG9uLCA+IGEsIC5oYWwtaWNvbiwgLmhhbC1pY29uOjpiZWZvcmV7XG4gICAgICBjb2xvcjogJHdoaXRlO1xuICAgIH1cbiAgfVxufVxuXG4ubmItZG9jLWNoZWNrZWQge1xuICBjb2xvcjogJGdyYXktOTc7XG4gIHBhZGRpbmctbGVmdDogMTBweDtcbiAgJjo6YWZ0ZXJ7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRncmF5LTk3O1xuICAgIHdpZHRoOiAxMDBweDtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDQ1cHg7XG4gICAgbGVmdDogMzRweDtcbiAgfVxufVxuXG4ucG9wLW92ZXJ7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDExMCU7XG4gIGJvdHRvbTogMCU7XG4gIHdpZHRoOiBtYXgtY29udGVudDtcbiAgcGFkZGluZzogMTVweCAyNXB4O1xuICBvdmVyZmxvdy15OiBzY3JvbGw7XG5cbiAgJi5sZWZ0e1xuICAgIHJpZ2h0OiAwO1xuICAgIHotaW5kZXg6IDI7XG4gIH1cbiAgJi5zaG93e1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgaDR7XG4gICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gICAgZm9udC1zaXplOiAkc2l6ZS1sYXJnZTtcbiAgfVxufVxuXG4ucG9wLW92ZXItY29udGVudCwgLnBvcC1vdmVyLWZvb3RlcntcbiAgcGFkZGluZy1sZWZ0OiAxMHB4O1xufVxuXG4ucG9wLW92ZXItZm9vdGVye1xuICBhe1xuICAgIGNvbG9yOiAkcHJpbWFyeS1ibHVlMTtcbiAgfVxufVxuXG4ucG9wdXBTYXZlU2VhcmNoIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHhzKSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHJpZ2h0OiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxNzVweDtcbiAgfVxufVxuXG4jZm9ybVNhdmVTZWFyY2h7XG4gIC5pbnB1dC1ncm91cHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcblxuICAgIHNwYW4sIGlucHV0e1xuICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICB9XG4gICAgaW5wdXR7XG4gICAgICBtYXJnaW4tbGVmdDogMjBweDtcbiAgICAgIHdpZHRoOiA5MCVcbiAgICB9XG4gIH1cbiAgLmZsb2F0LXJpZ2h0e1xuICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgYnV0dG9ue1xuICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgcGFkZGluZzogMTBweCAzMHB4O1xuICAgIH1cbiAgfVxufVxuXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obGcpIHtcbiAgLmNvbC0zLnNlY3Rpb24tZmFjZXRzID4gKntcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuXG4vKioqKioqKlxuICBBRFZBTkNFRFxuKioqKioqKi9cbi5pbnB1dC1ncm91cCB7XG5cbiAgLmZvcm0tYnRuLWxhbmcge1xuICAgIGJhY2tncm91bmQ6ICRncmF5LWY0IWltcG9ydGFudDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjYzhjOGM4IWltcG9ydGFudDtcbiAgICBib3JkZXItcmlnaHQ6MDtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWwhaW1wb3J0YW50O1xuICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgIGZvbnQtc2l6ZTogJHNpemUtc21hbGw7XG4gIH1cblxuICBpbnB1dCB7XG4gICAgd2lkdGg6IDgwJTtcbiAgfVxuXG4gIHNwYW4uaW5wdXQtZ3JvdXAtYnRuIHtcbiAgICB3aWR0aDogMTAwcHg7XG4gICAgaGVpZ2h0OiAzNXB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6aW5oZXJpdDtcbiAgICAmOmhvdmVye1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjppbmhlcml0O1xuICAgIH1cblxuICAgIGJ1dHRvbiB7XG4gICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgIGNvbG9yOiAkd2hpdGUhaW1wb3J0YW50O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktYmx1ZTE7XG4gICAgICBwYWRkaW5nOiAwIDEwcHg7XG4gICAgICAmOmhvdmVye1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1ibHVlMS1ob3ZlcjtcbiAgICAgIH1cblxuICAgICAgJi5mb3JtLWJ0bi1kZWwge1xuICAgICAgICBjb2xvcjogJHNlY29uZGFyeS1lcnJvcjtcbiAgICAgICAgZm9udC1zaXplOiAkc2l6ZS1taW51cztcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogaW5oZXJpdCFpbXBvcnRhbnQ7XG4gICAgICAgICY6aG92ZXJ7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogaW5oZXJpdCFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuI21vZGlmQWR2YW5jZWRTZWFyY2h7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC1zaXplOiAkc2l6ZS1yZWd1bGFyO1xuICBjb2xvcjogJHdoaXRlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1ibHVlMTtcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xuICBwYWRkaW5nOiA1cHggMTBweDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgYm9yZGVyOiB0cmFuc3BhcmVudDtcbiAgd2lkdGg6IDEwMCU7XG5cbiAgJjpob3ZlciB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWJsdWUtaG92ZXI7XG4gIH1cbn1cblxuI2FkdlNlYXJjaCB7XG4gIC5kcm9wZG93bi10b2dnbGUge1xuICAgIHdoaXRlLXNwYWNlOiB1bnNldDtcbiAgfVxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcbiAgICAuaW5wdXQtZ3JvdXAtYnRuIHtcbiAgICAgIHdpZHRoOiB1bnNldDtcbiAgICAgIC5idG4ge1xuICAgICAgICBtYXJnaW4tbGVmdDogdW5zZXQ7XG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgI3N1Ym1pdC1lbGVtZW50IHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgfVxuICB9XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xuICAgIC5kcm9wZG93bi10b2dnbGUge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICAgIC5pbnB1dC1ncm91cC1idG4ge1xuICAgICAgbWFyZ2luLWxlZnQ6IHVuc2V0O1xuICAgIH1cbiAgICAjc3VibWl0LWVsZW1lbnQge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAjc3VibWl0LWJ1dHRvbiB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcbiAgI3NlYXJjaEhlYWRlclNvbHIge1xuICAgIGRpdiB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHBvc2l0aW9uOiB1bnNldCAhaW1wb3J0YW50O1xuICAgICAgYnV0dG9uIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGZsb2F0OiB1bnNldCAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uc2VhcmNoLXNwaW5uZXIge1xuICBjb2xvcjokcHJpbWFyeS1ibHVlMS1kaXNhYmxlZDtcbiAgdG9wOjE0cHg7XG4gIHJpZ2h0OjU1cHg7XG4gIHdpZHRoOiAxLjVyZW07XG4gIGhlaWdodDogMS41cmVtO1xuICBib3JkZXItd2lkdGg6IDAuMTVyZW07XG59IiwiLyoqKioqKioqKioqKioqKlxuRkxBU0ggTUVTU0dBRVxuICoqKioqKioqKioqKioqKi9cbi5mbGFzaC1tZXNzYWdle1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2hlYWRlcjtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgbWFyZ2luLWJvdHRvbTogNDdweDtcbiAgLmNsb3Nle1xuICAgIHotaW5kZXg6IDE7XG4gIH1cbiAgLmNvbC1sZy0xe1xuICAgIG1heC13aWR0aDogMSU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktYmx1ZTE7XG4gICAgd2lkdGg6IDQwcHg7XG4gICAgLy8gY2F1c2Ugb2YgYWxlcnQgd2hpY2ggaGFzIHBhZGRpbmdcbiAgICBtYXJnaW46IC01cHggMCAtNXB4IDA7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuICAuY29sLWxnLTh7XG4gICAgbWFyZ2luOiBhdXRvO1xuICAgIC8vZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIH1cbiAgLmNvbC1sZy0ze1xuICAgIG1hcmdpbjogYXV0bztcbiAgfVxufVxuXG4vKioqKioqKioqKioqKioqXG5TVEFUSVNUSVFVRVNcbiAqKioqKioqKioqKioqKiovXG5cbi5uby1zdGF0IHtcbiAgQGV4dGVuZCAlbm8tZGF0YTtcbiAgaGVpZ2h0OiAzMDBweDtcbiAgbWFyZ2luLWJvdHRvbTogNTBweDtcbn1cblxuXG4vKioqKioqKioqKioqKioqXG5NRVMgREVQT1RTICYgTU9OIEFDVElWSVRFXG4gKioqKioqKioqKioqKioqL1xuLmRhc2hib2FyZC13aWRnZXQtc2VjdGlvbntcbiAgbWFyZ2luLWJvdHRvbTogNTVweDtcbiAgLm1hcmdpbi1yaWdodHtcbiAgICBtYXJnaW4tcmlnaHQ6IDEuNSU7XG4gIH1cbiAgaDR7XG4gICAgZm9udC1zaXplOiAkc2l6ZS1sYXJnZTtcbiAgfVxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XG4gICAgLmNvbC1sZy02e1xuICAgICAgZmxleDogMCAwIGNhbGMoNi8xMioxMDAlIC0gI3sxLjUlfSk7XG4gICAgICBtYXgtd2lkdGg6IGNhbGMoNi8xMioxMDAlIC0gI3sxLjUlfSk7XG4gICAgfVxuICB9XG59XG5cbi5pdGVtLWRhc2hib2FyZHtcbiAgcGFkZGluZzogNTJweCA0N3B4IDM3cHggNDdweDtcbiAgbWF4LWhlaWdodDogNTc2cHg7XG4gIG92ZXJmbG93OiBhdXRvO1xuICAuaXRlbTpsYXN0LWNoaWxke1xuICAgIHBhZGRpbmctdG9wOiAyNHB4O1xuICB9XG4gIC5lZGl0LWRlcG9zaXQsIC5yZXBseS1idXR0b257XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIHBhZGRpbmc6IDdweDtcbiAgICBtYXJnaW46IDJweDtcbiAgICAuaWNvbntcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDVweDtcbiAgICB9XG4gIH1cbiAgdGFibGUge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHRyIHtcbiAgICAgIHRkOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAzMHB4O1xuICAgICAgfVxuICAgICAgdGQ6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8qKioqKioqKioqKioqKipcbk1FUyBERVBPVFNcbiAqKioqKioqKioqKioqKiovXG5cbi5uby1kZXBvc2l0IHtcbiAgQGV4dGVuZCAlbm8tZGF0YTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG5cblxuLyoqKioqKioqKioqKioqKlxuTU9OIEFDVElWSVRFXG4gKioqKioqKioqKioqKioqL1xuLmljb24tYWN0aXZpdHl7XG4gIGJhY2tncm91bmQtY29sb3I6ICRncmF5LWU4O1xuICBib3JkZXItcmFkaXVzOiA5MHB4O1xuICB3aWR0aDogNTFweDtcbiAgaGVpZ2h0OiA1MXB4O1xuICBtYXJnaW4tcmlnaHQ6IDMwcHg7XG5cbiAgc3BhbntcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nLWxlZnQ6IDM1JTtcbiAgICBwYWRkaW5nLXRvcDogMzUlO1xuICAgIGNvbG9yOiAkcHJpdmlsZWdlLWJ1dHRvbjtcbiAgfVxufVxuXG4uZGF0ZS1hY3Rpdml0eXtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBjb2xvcjogJHByaXZpbGVnZS1idXR0b247XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuXG5cbi5uby1hY3Rpdml0eSB7XG4gIEBleHRlbmQgJW5vLWRhdGE7XG4gIGhlaWdodDogNDAwcHg7XG4gIG1hcmdpbi1ib3R0b206IDUwcHg7XG59XG5cbi8qKioqKioqKioqKioqKipcbk9SQ0lEXG4gKioqKioqKioqKioqKioqL1xuXG4uZ3JheS1zZXBhcmF0b3Ige1xuICBwYWRkaW5nOiAxcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICRncmF5LWU4O1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xufVxuIiwiLyoqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICBOTyBSRVNVTUVcbioqKioqKioqKioqKioqKioqKioqKiovXG4ubm8tY3Z7XG4gIEBleHRlbmQgJW5vLWRhdGE7XG4gIGhlaWdodDogMTAwJTtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZzogNTBweCAwcHg7XG4gICAuaGFsLW9wdGlvbi1idXR0b24ge1xuICAgIHdpZHRoOiB1bnNldDtcbiAgICBwYWRkaW5nOiA1cHggMTBweDtcbiAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gIH1cbiAgLmNjc2RfZm9ybV9yZXF1aXJlZCB7XG4gICAgZmxleDogdW5zZXQ7XG4gIH1cbiAgLyouaWNvbntcbiAgICBmb250LXNpemU6IDI4cmVtO1xuICAgIG9wYWNpdHk6IC4xO1xuICAgIG1hcmdpbjogYXV0bztcbiAgICB3aWR0aDogdW5zZXQ7XG4gIH0qL1xufVxuXG4jZm9ybS1jcmVhdGUtY3Yge1xuICB3aWR0aDogODAlO1xuICB0ZXh0YXJlYSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2M4YzhjOCFpbXBvcnRhbnQ7XG4gIH1cblxuICAudGV4dGFyZWEtZ3JvdXAge1xuICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgJj5idXR0b24uZHJvcGRvd24tdG9nZ2xlIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbCFpbXBvcnRhbnQ7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICBiYWNrZ3JvdW5kOiRncmF5LWY0IWltcG9ydGFudDtcbiAgICAgIGJvcmRlci1sZWZ0OiAxcHghaW1wb3J0YW50O1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgJGdyYXktY2EhaW1wb3J0YW50O1xuICAgICAgYm9yZGVyLWJvdHRvbTogMCFpbXBvcnRhbnQ7XG4gICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgaGVpZ2h0OiA0MHB4IWltcG9ydGFudDtcbiAgICAgIGZvbnQtc2l6ZTogJHNpemUtc21hbGw7XG4gICAgfVxuXG4gICAgLnB1bGwtcmlnaHQge1xuICAgICAgYnV0dG9uIHtcbiAgICAgICAgbWFyZ2luLXRvcDogNXB4O1xuICAgICAgICBmb250LXNpemU6ICRzaXplLXNtYWxsO1xuICAgICAgICBjb2xvcjogJHByaW1hcnktYmx1ZTE7XG5cbiAgICAgICAgJi5mb3JtLWJ0bi1kZWwge1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgY29sb3I6ICRzZWNvbmRhcnktZXJyb3IhaW1wb3J0YW50O1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKipcbiBHRU5FUkFMIFJFU1VNRVxuKioqKioqKioqKioqKioqKioqKioqKi9cbi8qXG4gIEhFQUQgV0lUSCBDT05TVUxUIC4uLiBCVVRUT05cbiAqL1xuLnJlc3VtZS1oZWFke1xuICBoMXtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBmb250LXdlaWdodDogdW5zZXQ7XG4gIH1cbiAgYXtcbiAgICBmb250LXNpemU6ICRzaXplLXJlZ3VsYXI7XG4gICAgbWFyZ2luLXRvcDogNDBweDtcbiAgfVxufVxuLypcbiAgRVhQTElDQVRJRiBURVhUIEZPUiBFQUNIIFRBQlxuICovXG4uZXhwbGljYXRpZi10ZXh0IHtcbiAgY29sb3I6ICRwdXJwbGUtbGlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAyO1xuICBtYXJnaW4tYm90dG9tOiAzNnB4O1xuXG4gICsgYnV0dG9uLmhhbC12aXN1YWxpemUtYnV0dG9ue1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAtODBweDtcbiAgfVxufVxuLyoqKioqKioqKioqKioqKioqKioqKipcbiAgICAgIE1ZIFdJREdFVFNcbioqKioqKioqKioqKioqKioqKioqKiovXG4vLyBMYSAgdHJhbnNwYXJlbmNlIGRlIGwnw6lsw6ltZW50IHPDqWxlY3Rpb25uw6lcbi5ndS10cmFuc2l0e1xuICBvcGFjaXR5OiAwLjI7XG59XG4vLyBMJ8OpbMOpbWVudCBzw6lsZWN0aW9ubsOpIHF1aSBzZXJhIHByaXMgYXZlYyBsYSBzb3VyaXNcbi5ndS1taXJyb3Ige1xuICBwYWRkaW5nOiA1cHg7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHBvc2l0aW9uOiBmaXhlZCAhaW1wb3J0YW50O1xuICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgei1pbmRleDogOTk5OSAhaW1wb3J0YW50O1xuICBvcGFjaXR5OiAwLjg7XG4gIGZpbHRlcjogYWxwaGEob3BhY2l0eT04MCk7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRzaGVhZGVyO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbGFiZWx7XG4gICAgcGFkZGluZy1sZWZ0OiA2MHB4ICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi5ndS1oaWRlIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4uZ3UtdW5zZWxlY3RhYmxlIHtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZSAhaW1wb3J0YW50O1xuICAtbW96LXVzZXItc2VsZWN0OiBub25lICFpbXBvcnRhbnQ7XG4gIC1tcy11c2VyLXNlbGVjdDogbm9uZSAhaW1wb3J0YW50O1xuICB1c2VyLXNlbGVjdDogbm9uZSAhaW1wb3J0YW50O1xufVxuLyoqKioqKioqKioqKioqKioqKioqKipcbiAgICAgQklPR1JBUEhZIERBVEFcbioqKioqKioqKioqKioqKioqKioqKiovXG4uc2VjdGlvbi1zaGFkb3cucGctMjB7XG4gIGgze1xuICAgIGZvbnQtc2l6ZTogJHNpemUtbGFyZ2U7XG4gIH1cbiAgJi5jb2wtbGctNXtcbiAgICBtYXgtaGVpZ2h0OiA1NjNweDtcbiAgICBvdmVyZmxvdzogYXV0bztcbiAgICB0ZXh0YXJlYXtcbiAgICAgIGhlaWdodDogMTMwcHg7XG4gICAgfVxuICB9XG4gIHRleHRhcmVhe1xuICAgIHJlc2l6ZTogbm9uZTtcbiAgICBoZWlnaHQ6IDIzMHB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIC5saXR0bGV7XG4gICAgbWF4LWhlaWdodDogMjUwcHg7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gIH1cbiAgLnVzZXItcGhvdG97XG4gICAgbWFyZ2luOiA1MHB4IDA7XG4gIH1cbiAgbGl7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgfVxuICAuZGlzcGxheWVke1xuICAgIC5zZWxlY3QyLWNvbnRhaW5lcntcbiAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5zZWxlY3QyLXNlbGVjdGlvbntcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICB9XG4gICAgaW5wdXR7XG4gICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgJHByaW1hcnktYmx1ZTM7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGhlaWdodDogNDJweDtcbiAgICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgICB9XG4gICAgLnNlbGVjdDItc2VhcmNoe1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgfVxuICAgIC5pY29uLWFkZF93aGl0ZTpiZWZvcmV7XG4gICAgICBjb2xvcjogJHByaW1hcnktYmx1ZTE7XG4gICAgfVxuICAgIGJ1dHRvbi5nby1iYWNrOmhvdmVye1xuICAgICAgLmljb24tYWRkX3doaXRlOmJlZm9yZXtcbiAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuI2NvbnRlbnQtcmVzdW1lIC50YWItY29udGVudCBsaSB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgI2Jpb2dyYXBoeS1kYXRhIHtcbiAgICAucGctMjA6bm90KDpmaXJzdC1vZi10eXBlKSB7XG4gICAgICBtYXJnaW4tbGVmdDogMyU7XG4gICAgfVxuICB9XG59XG4uc2VjdGlvbi1zaGFkb3cucGctMjAgLmRpc3BsYXllZCAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Nob2ljZSwgLnRpY2tldHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktYmx1ZTM7XG4gIGJvcmRlcjogbm9uZTtcbiAgcGFkZGluZzogNXB4IDE1cHg7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgc3BhbntcbiAgICBjb2xvcjogd2hpdGU7XG4gICAgcGFkZGluZy1yaWdodDogMTBweCA7XG4gIH1cbn1cbi50aWNrZXR7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICB3aWR0aDogbWF4LWNvbnRlbnQ7XG59XG4jc2tpbGxze1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGRpdntcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gIH1cbn1cbi5zZWxlY3QyLWNvbnRhaW5lci0tb3Blbi5zMi10by10cmVle1xuICBtYXJnaW4tdG9wOiAtMzBweCAhaW1wb3J0YW50O1xufVxuLndyYXBwZXItc3dpdGNoe1xuICBkaXNwbGF5OiBmbGV4O1xuICBoM3tcbiAgICBmbGV4LWdyb3c6IDEyO1xuICAgIGZvbnQtd2VpZ2h0OiB1bnNldDsgLy9cbiAgICBidXR0b24gc3BhbntcbiAgICAgIGNvbG9yOiAkcHJpbWFyeS1ibHVlMTtcbiAgICB9XG4gIH1cbn1cblxuLnNvY2lhbC1uYW1le1xuICBjb2xvcjogJGdyYXktNzA7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBtaW4td2lkdGg6IDQ1JTtcbn1cbi5uby1pbi1yZXN1bWV7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGNvbG9yOiAkcHVycGxlLWxpZ2h0O1xuICBmb250LXNpemU6ICRzaXplLWxhcmdlO1xuICBwYWRkaW5nOiA3MnB4IDA7XG59XG5cbiNkb21haW5zLXJlc3VtZSB7XG4gIC5zZWxlY3QyLXNlYXJjaCB7XG4gICAgbWFyZ2luLWJvdHRvbTogdW5zZXQ7XG4gIH1cbiAgLnNlbGVjdDItc2VhcmNoX19maWVsZCB7XG4gICAgbWFyZ2luLXRvcDogMTIwcHg7XG4gIH1cbiAgLnNlbGVjdDItY29udGFpbmVyIHtcbiAgICBib3JkZXI6IHVuc2V0O1xuICB9XG4gIC5kaXNwbGF5ZWQge1xuICAgICY6bm90KC5oaWRlKSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgIH1cbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGhlaWdodDogOTUlO1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gIH1cbn1cblxuI3NraWxscy1yZXN1bWUge1xuICAuZGlzcGxheWVkIHtcbiAgICAmOm5vdCguaGlkZSkge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICB9XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAgICAgaGVpZ2h0OiA5NSU7XG4gICAgfVxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xuICAgICAgaGVpZ2h0OiAxNTBweDtcbiAgICB9XG4gIH1cbn1cblxuI3VzZXItcHVibGljYXRpb25zLCAjdXNlci1mYWNldHRlcyB7XG4gIC5yb3cge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIC5jb2wteGwtNCB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJGdyYXktZGU7XG4gICAgcGFkZGluZzogMTBweDtcbiAgICBoZWlnaHQ6IGZpdC1jb250ZW50O1xuICB9XG4gICNkcmFnb24tcHVibGksICNkcmFnb24td2lkZ2V0IHtcbiAgICBsaSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIHBhZGRpbmc6IDVweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRzaGVhZGVyO1xuICAgICAgbWFyZ2luOiA1cHg7XG4gICAgICAmLnNlbGVjdGVkIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktYmx1ZTM7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgfVxuICAgICAgbGFiZWwge1xuICAgICAgICBmb250LXdlaWdodDogdW5zZXQ7XG4gICAgICB9XG4gICAgfVxuICB9XG4gICNsaXN0LXB1YmxpLXJlc3VtZSB7XG4gICAgcGFkZGluZy1sZWZ0OiAyJTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgdGFibGUge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgJHNoZWFkZXI7XG4gICAgICB0aGVhZCB7XG4gICAgICAgIHRyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2hlYWRlcjtcbiAgICAgICAgfVxuICAgICAgICB0ZCB7XG4gICAgICAgICAgcGFkZGluZy10b3A6IDdweDtcbiAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogN3B4O1xuICAgICAgICAgIC50aWNrIHtcbiAgICAgICAgICAgIHRvcDogLTE3cHhcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuI3VzZXItY3YtY3VzdG9taXphdGlvbiB7XG4gICNjc3MtZm9ybSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICN0aGVtZS1lbGVtZW50IHtcbiAgICAgIHdpZHRoOiA0MCU7XG4gICAgfVxuICAgICNjc3MtZWxlbWVudCB7XG4gICAgICB3aWR0aDogOTAlO1xuICAgIH1cbiAgfVxufVxuXG4uZWRpdG9yLXRvb2xiYXIgLnRhYmxlIHtcbiAgd2lkdGg6IHVuc2V0O1xufVxuXG4uaWNvbi1jdiB7XG4gIGJhY2tncm91bmQ6ICRyZWQtY29udGFjdDtcbiAgcGFkZGluZzogNXB4O1xuICBjb2xvcjogJHdoaXRlO1xufVxuXG4ueHh4bGFyZ2Uge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obGcpIHtcbiAgICBoZWlnaHQ6IDgwcHghaW1wb3J0YW50O1xuICAgIHdpZHRoOiA4MHB4IWltcG9ydGFudDtcbiAgICAuaW5pdGlhbHMge1xuICAgICAgZm9udC1zaXplOiA0MHB4IWltcG9ydGFudDtcbiAgICAgIHRvcDogMThweCFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG5cbiNzb2NpYWwge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMDtcbiAgcmlnaHQ6IDA7XG4gIGEge1xuICAgIG1hcmdpbi1sZWZ0OiA0cHg7XG4gIH1cbiAgLmljb24tY3Yge1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgfVxuICAuaWNvbi10d2l0dGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmx1ZS10d2l0dGVyO1xuICB9XG4gIC5pY29uLWZhY2Vib29rIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmx1ZS1mYWNlYm9vaztcbiAgfVxuICAuaWNvbi1saW5rZWRpbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJsdWUtbGlua2VkaW47XG4gIH1cbn1cbiIsIiNyZXN1bWUtdmlzdXtcbiAgLnA1MHtcbiAgICBwYWRkaW5nOiA0NXB4IDUwcHggMjVweCA1MHB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gICYubmF2YmFyLWNvbGxhcHNlIHtcbiAgICBhbGlnbi1pdGVtczogaW5pdGlhbDtcbiAgfVxufVxuLnJlYWQtbW9yZXtcbiAgbWF4LWhlaWdodDogMzU1cHg7XG4gIHdvcmQtd3JhcDogYW55d2hlcmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4jZG9tYWluLXJlc3VtZS12aXN1YWxpemF0aW9ue1xuICBtYXgtaGVpZ2h0OiAzMTBweDtcbiAgLmhhbC1iZ3RleHR7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktYmx1ZTM7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBmb250LXNpemU6ICRzaXplLXJlZ3VsYXI7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIH1cbn1cbiNyZXN1bWUtY29udGVudC1kb2N1bWVudHtcbiAgLnNlY3Rpb24tc2hhZG93LnBnLTIwe1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZm9ybXtcbiAgICAgIG1hcmdpbjogMDsgZmxleC1ncm93OiAzXG4gICAgfVxuICAgIGlucHV0e1xuICAgICAgd2lkdGg6IDMwJTtcbiAgICB9XG4gIH1cblxuICAuc2VhcmNoOmZvY3VzLXZpc2libGUge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gIH1cblxuICAucmVzdWx0cy10YWJsZSAubWVkaWEge1xuICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgfVxuXG4gIC50aXRsZS1mYWNldCB7XG4gICAgcGFkZGluZzogMC43NXJlbTtcbiAgICBzcGFuLmhhbC1pY29uIHtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICBwYWRkaW5nLXRvcDogOHB4O1xuICAgIH1cbiAgfVxuXG4gIC50YWJsZS13aGl0ZSB0cjpsYXN0LWNoaWxkIHtcbiAgICBib3JkZXItYm90dG9tOiBub25lO1xuICB9XG5cbn1cbi5yZWFkLW1vcmUgLnRhYi1jb250ZW50IC5oaWRle1xuICAvLyB0byBjb252ZXJ0IG1hcmtkb3duIGludG8gSFRNTFxuICB3aGl0ZS1zcGFjZTogYnJlYWstc3BhY2VzO1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTAwNnB4KXtcbiAgI3Jlc3VtZS1jb250ZW50LWRvY3VtZW50e1xuICAgIC5zZWN0aW9uLXNoYWRvdy5wZy0yMHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgaW5wdXR7XG4gICAgICAgIHdpZHRoOiA4MCU7XG4gICAgICB9XG4gICAgfVxuICAgIC5zZWN0aW9uLXNoYWRvdy5saXN0e1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG59XG5cbiNyZXN1bWUtcHJlc2VudGF0aW9uLXZpc3Uge1xuICBAbWVkaWEgKG1heC13aWR0aDogMTQwNnB4KXtcbiAgICAuY29sLTh7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICB9XG4gICAgLmNvbC0ye1xuICAgICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICAgIHRvcDogMCAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcbiAgICAjY29vcmQge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAuY29sLTMge1xuICAgICAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICB0cntcbiAgICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5waG90by1jb2wtM3tcbiAgICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG4gICAgLnJvdzpmaXJzdC1vZi10eXBlIC5jb2wtOXtcbiAgICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgLmNvbC0ye1xuICAgICAgICBmbGV4OiAwIDAgNTAlO1xuICAgICAgICBtYXgtd2lkdGg6IDUwJTtcbiAgICAgIH1cbiAgICB9XG4gICAgLm5hdmJhci10b2dnbGVyIHNwYW4gc3BhbntcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWJsdWUxO1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtb25seShsZykge1xuICAgIC5yb3c6Zmlyc3Qtb2YtdHlwZSAuY29sLTkge1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAucm93IHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIlxuLm0tZGVwb3NpdCB7XG4gIC5mb3JtLW1ldGEge1xuICAgICAgLmhhcy1lcnJvciB7XG4gICAgICAgIC5lcnJvciB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICAgICAgaW5wdXQsIHRleHRhcmVhIHtcbiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkc2Vjb25kYXJ5LWVycm9yIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgfVxuICB9XG59XG5cbi5tb2RhbCAuaWNvbi1yZXF1aXJlZCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4jZXhpdF9Nb2RhbCB7XG4gIHotaW5kZXg6IDEwMDA7XG59XG4jbW9kYWwtdHlwZG9jIHtcbiAgei1pbmRleDogOTk5O1xufVxuXG4jbGlzdC1pdGVtLWRlcG9zaXQge1xuICBmb250LXNpemU6ICRzaXplLWxhcmdlO1xuICBwb3NpdGlvbjogZml4ZWQ7XG5cbiAgbGkge1xuICAgIHBhZGRpbmc6IDVweDtcblxuICAgIGEge1xuICAgICAgY29sb3I6ICRibGFjaztcbiAgICB9XG5cbiAgICAmLm1haW4taXRlbSB7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcblxuICAgICAgJjpub3QoZmlyc3QtY2hpbGQpIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmNoaWxkLWl0ZW0ge1xuICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgZm9udC1zaXplOiAkc2l6ZS1yZWd1bGFyO1xuICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICB9XG5cbiAgICAmLmFjdGl2ZSB7XG4gICAgICBhIHtcbiAgICAgICAgY29sb3I6ICRwcmltYXJ5LWJsdWUxO1xuICAgICAgfVxuXG4gICAgICAmLmNoaWxkLWl0ZW0ge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JheS1lODtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBsaTpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGdyYXktZTg7XG5cbiAgICBhIHtcbiAgICAgIGNvbG9yOiAkcHJpbWFyeS1ibHVlMTtcbiAgICB9XG4gIH1cblxufVxuXG4uc3VibWlzc2lvbi1mb3JtIHtcbiAgbWFyZ2luLWJvdHRvbTogMjNweDtcblxuICBoMiBzbWFsbCB7XG4gICAgZm9udC1zaXplOiAkc2l6ZS1sYXJnZTtcbiAgICBjb2xvcjogJGdyYXktNjQ7XG4gIH1cblxuICAuc3VibWl0LXN0ZXAge1xuICAgIC5zdGVwLXRpdGxlIHtcbiAgICAgIHBhZGRpbmc6IDE1cHggMzZweDtcbiAgICAgIGZvbnQtc2l6ZTogJHNpemUtbGFyZ2U7XG4gICAgICBjb2xvcjogJHByaW1hcnktYmx1ZTE7XG4gICAgICBiYWNrZ3JvdW5kOiAkZ3JheS1mNjtcbiAgICAgIHNtYWxsIHtcbiAgICAgICAgZm9udC1zaXplOiAkc2l6ZS1zbWFsbDtcbiAgICAgICAgZm9udC1zdHlsZTppdGFsaWM7XG4gICAgICAgIHBhZGRpbmctbGVmdDoxMHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4udXBsb2FkLWFyZWEge1xuICBib3JkZXI6IDFweCBkYXNoZWQgJHByaW1hcnktYmx1ZTtcbiAgYm9yZGVyLXJhZGl1czogNnB4O1xuICBvcGFjaXR5OiAxO1xuICBoZWlnaHQ6IDI0MnB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICYuaXMtYWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2hlYWRlcjtcbiAgfVxuXG5cbiAgLmljb24tdXBsb2FkIHtcbiAgICBjb2xvcjogJHByaW1hcnktYmx1ZTtcbiAgICBmb250LXNpemU6IDEwMHB4O1xuICB9XG5cbiAgLnVwbG9hZC10ZXh0LCAudXBsb2FkLXRleHQtc2VwIHtcbiAgICBjb2xvcjogJGdyYXktYjU7XG4gICAgcGFkZGluZy10b3A6IDEwcHg7XG4gICAgZm9udC1zaXplOiAkc2l6ZS14bDtcbiAgfVxuXG4gIC51cGxvYWQtdGV4dC1zZXAge1xuICAgIGZvbnQtc2l6ZTogJHNpemUtcmVndWxhcjtcbiAgfVxuXG4gICNmaWxldXBsb2FkIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDA7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBvcGFjaXR5OiAwO1xuICAgICY6Zm9jdXMge1xuICAgICAgb3V0bGluZTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JheS1mNTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDJzIGVhc2Utb3V0O1xuICAgIC1tb3otdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAycyBlYXNlLW91dDtcbiAgICAtby10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDJzIGVhc2Utb3V0O1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMnMgZWFzZS1vdXQ7XG4gIH1cbn1cblxuI2Rpdi1maWxlcyB7XG4gIC50ZC1vcmlnaW4ge1xuXG4gIH1cbn1cblxuLnRhYmxlLWZpbGVzLWhlYWQge1xuICB3aWR0aDogY2FsYygxMDAlIC0gNDBweCk7XG5cbiAgdGgge1xuICAgIHBhZGRpbmctdG9wOiAxMHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAxMHB4O1xuICB9XG59XG5cbi5yb3ctZmlsZSB7XG4gIC5jaGVja2JveC1tYWluZmlsZSB7XG4gICAgcGFkZGluZy1sZWZ0OiAzMHB4IWltcG9ydGFudDtcbiAgICBmb250LXNpemU6ICRzaXplLXNtYWxsIWltcG9ydGFudDtcbiAgICB0b3A6IC0xNnB4O1xuICAgIGxlZnQ6IDZweDtcbiAgfVxuXG5cbiAgLmRpdi1maWxlLW9yaWdpbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC5kaXYtZmlsZS1zZXQtbWFpbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAmLmZpbGUtbWFpbiB7XG4gICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgIGJvcmRlci1ib3R0b206IDEwcHggc29saWQgJGdyYXktZjU7XG5cbiAgICAuZGl2LWZpbGUtb3JpZ2luIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgIC5kaXYtZmlsZS1zZXQtbWFpbiB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICAuZGV0YWlscyB7XG4gICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgfVxuICB9XG5cbiAgJi5maWxlLW1haW4gKyAucm93LWZpbGUtZGV0YWlscyAuZGVmYXVsdC1hbm5leCxcbiAgJi5maWxlLW1haW4gKyAucm93LWZpbGUtZGV0YWlscyAuZm9ybWF0LWFubmV4IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgJjpub3QoLmZpbGUtbWFpbik6bm90KDpsYXN0LWNoaWxkKSB0ZDpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGdyYXktYzY7XG4gIH1cblxuICB0ZCB7XG4gICAgcGFkZGluZy10b3A6IDEwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDEwcHg7XG5cbiAgICAmLmRldGFpbHMge1xuICAgICAgYmFja2dyb3VuZDogJGdyYXktZTY7XG4gICAgfVxuXG4gICAgJi5kZWxldGUge1xuICAgICAgYmFja2dyb3VuZDogJGdyYXktZjU7XG4gICAgfVxuICB9XG5cbiAgYmFja2dyb3VuZDogJGdyYXktZWU7XG5cbiAgLmZpbGUtbmFtZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY29sb3I6ICRibGFjaztcbiAgICBmb250LXNpemU6ICRzaXplLXJlZ3VsYXI7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIH1cblxuICAuZmlsZS1zaXplIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjb2xvcjogJGdyYXktNjQ7XG4gICAgZm9udC1zaXplOiAkc2l6ZS14c21hbGw7XG4gIH1cblxuICBzZWxlY3Qge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZvbnQtc2l6ZTogMTFweDtcbiAgICBoZWlnaHQ6IDI3cHg7XG4gICAgYmFja2dyb3VuZDogaW5oZXJpdDtcbiAgfVxuXG4gIC5maWxlLW1vcmUge1xuICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgZm9udC1zaXplOiA2cHg7XG5cbiAgfVxuICAuYnRuLWxpbms6aG92ZXIsIC5idG4tbGluazphY3RpdmUge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gIC5saWNlbmNlLWRhdGUge1xuICAgIGJvcmRlci1yYWRpdXM6IDAgIWltcG9ydGFudDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkZ3JheS1jODtcbiAgICBoZWlnaHQ6IDI3cHg7XG5cbiAgICBpbnB1dCB7XG4gICAgICBib3JkZXI6IG5vbmUhaW1wb3J0YW50O1xuICAgIH1cbiAgICAuY2FsZW5kYXItdHJpZ2dlciB7XG4gICAgICBsZWZ0OiAwcHg7XG4gICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICB9XG4gIH1cbn1cblxuXG4vKiB0eXBkb2Mgc3RlcCAqL1xuI21vZGFsLXR5cGRvYyB7XG4gIC5tb2RhbC1kaWFsb2cge1xuICAgIG1heC13aWR0aDogMTMwMHB4O1xuXG4gICAgLm1vZGFsLWhlYWRlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAkZ3JheS1mNTtcblxuICAgICAgLm1vZGFsLXRpdGxlIHtcbiAgICAgICAgY29sb3I6ICR0b29scy1zb3J0O1xuICAgICAgICBmb250LXNpemU6ICRzaXplLWxhcmdlO1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAubW9kYWwtYm9keSB7XG4gICAgICBwYWRkaW5nOiAycmVtIDRyZW0gMXJlbTtcbiAgICB9XG5cbiAgICAudHlwZG9jLWJ0bi1ncm91cCB7XG4gICAgICBiYWNrZ3JvdW5kOiAkZ3JheS1lZjtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWFyZ2luOiAxMHB4O1xuICAgICAgaGVpZ2h0OiA1MHB4O1xuXG4gICAgICAmLnNlbGVjdGVkIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktYmx1ZTtcbiAgICAgICAgJi5zZWxlY3RlZCAuYnRuIHtcbiAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5idG4ge1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICAmOmRpc2FibGVkIHtcbiAgICAgICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuYnRuLXR5cGRvYyB7XG4gICAgICAgIHdpZHRoOiA4NSU7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIC50eXBkb2MtaWNvbiB7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIHdpZHRoOiAyNXB4O1xuXG4gICAgICAgICAgaSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnR5cGRvYy1sYWJlbCB7XG4gICAgICAgICAgZm9udC1zaXplOiAwLjlyZW07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5idG4tdHlwZG9jLW1vcmUge1xuICAgICAgICB3aWR0aDogMTAlO1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICB9XG5cbiAgICAgICY6bm90KC5zZWxlY3RlZCk6aG92ZXIsICY6bm90KC5zZWxlY3RlZCkuYnRuOmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZDogJGdyYXktY2E7XG4gICAgICB9XG5cbiAgICAgIC5kcm9wZG93bi1tZW51IHtcbiAgICAgICAgYmFja2dyb3VuZDogJGdyYXktZWY7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgIGJveC1zaGFkb3c6IDBweCAzcHggNnB4ICRib3gtc2hhZG93O1xuICAgICAgICBwYWRkaW5nOiAyMHB4IDMwcHg7XG5cbiAgICAgICAgLmRyb3Bkb3duLWl0ZW0ge1xuICAgICAgICAgIHBhZGRpbmc6IDEwcHggMDtcbiAgICAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRncmF5LWNhO1xuICAgICAgICAgIH1cbiAgICAgICAgICAmLnNlbGVjdGVkIHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgIH1cbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IGluaGVyaXQ7XG4gICAgICAgICAgICBjb2xvcjokcHJpbWFyeS1ibHVlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vKlxuU1RFUCBFWFRSQUNUXG4qL1xuI2lkZW50aWZpZXJ0eXBlIHtcbiAgei1pbmRleDogMTtcbiAgYmFja2dyb3VuZDogJGdyYXktZjQ7XG5cbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogJHByaW1hcnktYmx1ZTMtaG92ZXI7XG4gIH1cbn1cbi5zaG93PiNpZGVudGlmaWVydHlwZSB7XG4gIGJhY2tncm91bmQ6ICRwcmltYXJ5LWJsdWUzLWhvdmVyO1xufVxuXG5cbi5leHRyYWN0LWluZm8sIC5hdXRob3ItaW5mbywgLm1haW5tZXRhLWluZm8sIC5yZWxhdGVkLWluZm8ge1xuICBiYWNrZ3JvdW5kOiAkZ3JheS1lZjtcbiAgbWFyZ2luLXRvcDotMTVweDtcbiAgJj5kaXYge1xuICAgIHBhZGRpbmc6MzVweDtcbiAgICB3b3JkLWJyZWFrOiBicmVhay13b3JkO1xuICB9XG4gICY+ZGl2LmVycm9ycyB7XG4gICAgY29sb3I6ICRzZWNvbmRhcnktZXJyb3I7XG4gIH1cbiAgLmV4dHJhY3QtbWV0YSB7XG4gICAgZm9udC1zaXplOiBzbWFsbDtcbiAgICBjb2xvcjokZ3JheS02NDtcbiAgICBmb250LXN0eWxlOml0YWxpYztcbiAgfVxuICAuY2xvc2UtZXh0cmFjdC1pbmZvLCAuY2xvc2UtZXJyb3ItaW5mbyB7XG4gICAgY29sb3I6ICRzZWNvbmRhcnktZXJyb3I7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgfVxufVxuXG5cbi8qKlxuU1RFUCBhdXRob3JcbiAqL1xuXG4jYXV0X25ldyB7XG4gICNzZWFyY2hBdXRob3Ige1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgaGVpZ2h0OiA1MHB4O1xuICB9XG4gICNzZWFyY2hBdXRob3ItbGFiZWwge1xuICAgIGZvbnQtc2l6ZTogJHNpemUtbGFyZ2U7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIH1cbn1cblxuLnVpLWF1dG9jb21wbGV0ZS51aS1mcm9udCB7XG4gIC51aS1zdGF0ZS1hY3RpdmUge1xuICAgIGJhY2tncm91bmQ6ICRncmF5LWY0O1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWwhaW1wb3J0YW50O1xuICB9XG5cbiAgLnVpLW1lbnUtaXRlbSB7XG4gICAgcGFkZGluZzowO1xuICAgIGxpbmUtaGVpZ2h0OiAyNXB4O1xuXG4gICAgJi5oaWdobGlnaHQge1xuICAgICAgYmFja2dyb3VuZDogJHByaW1hcnktYmx1ZTE7XG4gICAgICBhIHtcbiAgICAgICAgY29sb3I6JHdoaXRlIWltcG9ydGFudDtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZDogJHByaW1hcnktYmx1ZTEtaG92ZXI7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkcHJpbWFyeS1ibHVlMS1ob3ZlcjtcbiAgICAgIH1cbiAgICAgIC51aS1zdGF0ZS1hY3RpdmUge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkcHJpbWFyeS1ibHVlMS1ob3ZlciFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuXG4gIH1cbn1cblxuLnVpLWF1dG9jb21wbGV0ZS51aS1mcm9udCAudWktbWVudS1pdGVtLCAjc3RydWN0LWluZm8ge1xuICAudmFsaWQsIC5wcmVmZXJyZWQge1xuICAgIGNvbG9yOiRzZWNvbmRhcnktc3VjY2VzcztcbiAgICBmb250LXdlaWdodDogYm9sZCFpbXBvcnRhbnQ7XG4gIH1cbiAgLm9sZCB7XG4gICAgY29sb3I6JHNlY29uZGFyeS13YXJuaW5nO1xuICB9XG4gIC5pbmNvbWluZyB7XG4gICAgY29sb3I6JHNlY29uZGFyeS1lcnJvcjtcbiAgfVxuXG4gIHNwYW4+c3Bhbjpub3QoLmFjcm9ueW0pLCBzcGFuPmRsIHtcbiAgICBjb2xvcjogJHB1cnBsZS1saWdodDtcbiAgICBmb250LXNpemU6IHNtYWxsZXI7XG4gIH1cbiAgLmFkZHJlc3MsIC5pZGhhbCwgLmFjcm9ueW0ge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB9XG5cbiAgLmFjcm9ueW06YmVmb3JlIHtcbiAgICBjb250ZW50OiAnIC0gJztcbiAgfVxuXG4gIHNwYW4+ZGw+ZHQge1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgZGlzcGxheTogaW5saW5lO1xuICAgIC5hY3JvbnltOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICB9XG4gICAgLmFjcm9ueW06YWZ0ZXIge1xuICAgICAgY29udGVudDogJyAtICc7XG4gICAgfVxuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyA7ICc7XG4gICAgfVxuICAgIC5jb2RlOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnIDogJztcbiAgICB9XG4gIH1cbn1cblxuXG4udmlldy1hdXRob3ItZGV0YWlsZWQge1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgY29sb3I6ICRwcmltYXJ5LWJsdWUxO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JheS1mMjtcbiAgZm9udC1zaXplOiBpbmhlcml0O1xuICB3aWR0aDogMTAwJTtcbiAgYm9yZGVyLXJhZGl1czogMCFpbXBvcnRhbnQ7XG5cbiAgJjpob3ZlciB7XG4gICAgY29sb3I6ICRwcmltYXJ5LWJsdWUxLWhvdmVyO1xuICB9XG59XG5cbmRpdi5hdXRob3JzIHtcbiAgYmFja2dyb3VuZDogJGdyYXktZjU7XG5cbiAgdGFibGUuYXV0aG9yIHtcbiAgICBtaW4taGVpZ2h0OiAxMjBweDtcbiAgfVxuXG4gIC5hdXRob3Itc3RhdGUtaGlnaGxpZ2h0IHtcbiAgICBoZWlnaHQ6IDYwcHg7XG4gICAgYm9yZGVyOiAycHggZGFzaGVkICRncmF5LWU2O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMC41cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYXV0aG9yLWljb24tZHJhZywgLmF1dGhvci1pbmZvLCAuYXV0aG9yLWljb24tZWRpdCB7XG4gICAgYmFja2dyb3VuZDogJGdyYXktZTY7XG4gICAgcGFkZGluZy10b3A6IDEwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4gIH1cbiAgLmF1dGhvci1pY29uLWRyYWcge1xuICAgIHdpZHRoOiA1MHB4O1xuICAgIHBhZGRpbmctbGVmdDoyMHB4IWltcG9ydGFudDtcbiAgICBjb2xvcjogJHB1cnBsZS1saWdodDtcbiAgfVxuICAuYXV0aG9yLWljb24tbXYtdG9wLCAuYXV0aG9yLWljb24tbXYtYm90dG9tIHtcbiAgICBjb2xvcjogJGdyYXktYzI7XG4gICAgcGFkZGluZzowO1xuICAgIGhlaWdodDogMTBweDtcbiAgfVxuICAuYXV0aG9yLWljb24tbXYtYm90dG9tIHtcbiAgICBtYXJnaW4tdG9wOiAtMTBweDtcbiAgfVxuICAuYXV0aG9yLWluZm8ge1xuICAgIHdpZHRoOiAyNTBweDtcbiAgICBoNSB7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICB9XG4gICAgLmlkLWhhbC1hdXRob3Ige1xuICAgICAgY29sb3I6ICRwdXJwbGUtbGlnaHQ7XG4gICAgfVxuICB9XG4gIC5hdXRob3ItaWNvbi1lZGl0IHtcbiAgICB3aWR0aDogNTBweDtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICBwYWRkaW5nLXJpZ2h0OjIwcHghaW1wb3J0YW50O1xuICAgIGNvbG9yOiAkcHVycGxlLWxpZ2h0O1xuXG4gICAgYnV0dG9uIHtcbiAgICAgIG1hcmdpbi1yaWdodDogLTE1cHg7XG4gICAgICBtYXJnaW4tdG9wOiAtMjVweDtcblxuICAgICAgaSB7XG4gICAgICAgIGNvbG9yOiAkcHVycGxlLWxpZ2h0O1xuICAgICAgfVxuXG4gICAgICAmOmRpc2FibGVkIHtcbiAgICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuZGl2LWF1dGhvci1yb2xlIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGNvbG9yOiAkZ3JheS0zNztcblxuICAgIHNlbGVjdCB7XG4gICAgICBiYWNrZ3JvdW5kOiBpbmhlcml0O1xuICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgIGZvbnQtc2l6ZTogJHNpemUteHNtYWxsO1xuICAgICAgYm9yZGVyLWNvbG9yOiAkZ3JheS1hMjtcbiAgICB9XG4gIH1cblxuICAuYXV0aG9yLWFmZmlsaWF0aW9ucyB7XG4gICAgYmFja2dyb3VuZDogJGdyYXktZWM7XG5cbiAgICAuc2VhcmNoU3RydWN0dXJlIHtcbiAgICAgIHdpZHRoOiA3MCU7XG4gICAgICBtYXJnaW4tbGVmdDogNDBweDtcbiAgICAgIGJhY2tncm91bmQ6IGluaGVyaXQ7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAkZ3JheS1hMjtcbiAgICB9XG5cbiAgICAuc3RydWN0dXJlLW1lbnUge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgcmlnaHQ6IDEwcHg7XG4gICAgICBjb2xvcjogJHB1cnBsZS1saWdodDtcblxuICAgICAgLmRyb3Bkb3duLWl0ZW0ge1xuICAgICAgICBmb250LXNpemU6ICRzaXplLXNtYWxsO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5hdXRob3ItcmVtb3ZlIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDVweDtcbiAgICB3aWR0aDogNjBweDtcbiAgICAgLmJ0biB7XG4gICAgICAgZm9udC1zaXplOiAkc2l6ZS1zbWFsbDtcbiAgICAgfVxuICB9XG59XG5cbi5zdGVwLWF1dGhvci1hY3Rpb25zIHtcbiAgYmFja2dyb3VuZDokZ3JheS1lZiA7XG4gIHBhZGRpbmc6IDEwcHg7XG59XG5cbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgLmNvbGxhcHNlLmRvbnQtY29sbGFwc2Utc20ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cbn1cblxuXG4jbW9kYWwtYXV0aG9yLCAjbW9kYWwtcmVmIHtcbiAgJi5zaG93IHtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNSk7XG4gIH1cbiAgLm1vZGFsLWRpYWxvZyB7XG4gICAgbWF4LXdpZHRoOiA5MDBweDtcbiAgICB3aWR0aDogNjAlO1xuXG4gICAgLm1vZGFsLWNvbnRlbnQge1xuICAgICAgY29sb3I6ICMwMDAwNWY7XG5cbiAgICAgIC5sYWJlbCB7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgICAgIHBhZGRpbmc6IDFweCAycHg7XG4gICAgICAgIG1hcmdpbjogMnB4O1xuICAgICAgICBmb250LXNpemU6IDcwJTtcbiAgICAgIH1cblxuICAgICAgLmxhYmVsLWRlZmF1bHQge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjODA4MDgwO1xuICAgICAgICBwb3NpdGlvbjogaW5oZXJpdDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICB9XG5cbiAgICAgIGg2IHtcbiAgICAgICAgcGFkZGluZzogLjlyZW0gMCAwIC4xcmVtO1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcblxuICAgICAgICAubGFiZWwtbGFibywgLmxhYmVsLXJlc2VhcmNodGVhbSB7XG4gICAgICAgICAgYmFja2dyb3VuZDogI2ZmNDYwMDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5sYWJlbC1pbnN0aXR1dGlvbiB7XG4gICAgICAgICAgYmFja2dyb3VuZDogIzdkMmQ0NjtcbiAgICAgICAgfVxuXG4gICAgICAgIC5sYWJlbC1yZ3BsYWJvLCAubGFiZWwtZGVwYXJ0bWVudHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAjY2QzYzFiO1xuICAgICAgICB9XG5cbiAgICAgICAgLmxhYmVsLXJncGluc3Qge1xuICAgICAgICAgIGJhY2tncm91bmQ6ICM2NDFlNmU7XG4gICAgICAgIH1cblxuICAgICAgICAuYmFkZ2Uge1xuICAgICAgICAgIGJhY2tncm91bmQ6ICM4MDgwODA7XG4gICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICAgIG1hcmdpbjogMXB4O1xuICAgICAgICAgIHBhZGRpbmc6IDJweDtcbiAgICAgICAgICBmb250LXNpemU6IDcwJTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuc3RydWN0LWluZm9zIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAuNXJlbTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IC4yZW07XG4gICAgICAgIGZvbnQtc2l6ZTogLjhyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuXG4gICAgICAgIHAge1xuICAgICAgICAgIG1hcmdpbjogNHB4IDAgMCAwO1xuICAgICAgICB9XG5cbiAgICAgICAgLnN0cnVjdC1zaWdsZSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMnB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLnN0cnVjdC1sb2NrIHtcbiAgICAgICAgICBjb2xvcjogIzgwODA4MDtcbiAgICAgICAgICBtYXJnaW4tdG9wOiA4cHg7XG4gICAgICAgIH1cblxuICAgICAgICAuc3RydWN0LWNvdW50cnkge1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICB9XG5cbiAgICAgICAgbGkge1xuICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgbWFyZ2luOiAycHggMCAwIDA7XG4gICAgICAgIH1cblxuICAgICAgICBsaSB1bDo6YmVmb3JlIHtcbiAgICAgICAgICBjb250ZW50OiAnXFwwMDIwMTMnO1xuICAgICAgICAgIG1hcmdpbjogLjJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIHVsIHtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgIG1hcmdpbjogMnB4IDAgMCAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLm1vZGFsLWhlYWRlciB7XG4gICAgICBwYWRkaW5nLXRvcDogMnJlbTtcbiAgICB9XG4gICAgLm1vZGFsLXRpdGxlIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgbWFyZ2luOiBhdXRvO1xuICAgIH1cblxuICAgIC5tb2RhbC1ib2R5IHtcbiAgICAgIHBhZGRpbmc6IDEwcHggMTAwcHg7XG4gICAgfVxuXG4gICAgLmNsb3NlIHtcbiAgICAgIG1hcmdpbi10b3A6IC0ycmVtO1xuICAgIH1cbiAgfVxuICAjQWpvdXRlci1lbGVtZW50IHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgfVxuXG4gIC51aS1tZW51LWl0ZW0ge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJvcmRlcjpub25lO1xuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgYmFja2dyb3VuZDogaW5oZXJpdDtcbiAgICAgIGEge1xuICAgICAgICBjb2xvcjogaW5oZXJpdCFpbXBvcnRhbnQ7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZDogJGdyYXktZjQhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkZ3JheS1mNCFpbXBvcnRhbnQ7O1xuICAgICAgfVxuXG4gICAgICAudWktc3RhdGUtYWN0aXZlIHtcbiAgICAgICAgYmFja2dyb3VuZDogJGdyYXktZjQhaW1wb3J0YW50OztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAjc3RydWN0LWluZm8ge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRncmF5LWEyO1xuICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgfVxuXG4gIC5sYWJlbC1zdHJ1Y3QtdHlwZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktYmx1ZS1kaXNhYmxlZDtcbiAgICBwYWRkaW5nOiAycHggMTBweDtcbiAgICBjb2xvcjogJHdoaXRlO1xuICB9XG5cbiAgLm5ldy1zdHJ1Y3QtZm9ybT4ubGlzdC1ncm91cD4ubmV3LXN0cnVjdD4ubmV3LXN0cnVjdC1pdGVtPi5uZXctc3RydWN0LWxhYmVsIGlucHV0W3R5cGU9dGV4dF0ge1xuICAgIGRpc3BsYXk6bm9uZTtcbiAgfVxuICAubGlzdC1ncm91cCB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgfVxuICAuc3RydWN0dXJlLWljb25zIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gIH1cbn1cblxuLmF1dGhvcnMtZnJvbS1zdHJ1Y3R1cmUge1xuICBtaW4taGVpZ2h0OiAzMDBweDtcbn1cbiNhdXRob3JzZnJvbXN0cnVjdHNlYXJjaCB7XG4gIHdpZHRoOiA3MCU7XG59XG5cbiNteS1hdXRob3JzLCAjYXV0aG9ycy1mcm9tLXN0cnVjdCB7XG4gIG1heC1oZWlnaHQ6IDIwMHB4O1xuICBvdmVyZmxvdy15OiBzY3JvbGw7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRncmF5LWEyO1xuICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG5cbiAgW3R5cGU9XCJjaGVja2JveFwiXTpub3QoOmNoZWNrZWQpLCBbdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQge1xuICAgIHBvc2l0aW9uOiBpbmhlcml0O1xuICAgIG9wYWNpdHk6IGluaGVyaXQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgIHdpZHRoOiBpbmhlcml0O1xuICB9XG59XG5cbiNtb2RhbC1zaGVycGEge1xuICAubW9kYWwtY29udGVudHtcbiAgICBwYWRkaW5nOiAxMHB4O1xuICB9XG4gIGNhcHRpb24ge1xuICAgIGNhcHRpb24tc2lkZSA6IHRvcDtcbiAgfVxuICAudGV4dC1sZWZ0PnNwYW4ge1xuICAgIGJvcmRlci1yYWRpdXM6IDAhaW1wb3J0YW50O1xuICB9XG4gIHRyPnRkOmZpcnN0LWNoaWxkIHtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgfVxufVxuXG4uc3RydWN0dXJlLW5hbWUsIC5yZWZlcmVudGlhbCB7XG4gIGkge1xuICAgIGNvbG9yOiAkYmxhY2s7XG4gIH1cblxuICAmLnZhbGlkIHtcbiAgICBjb2xvcjokc2Vjb25kYXJ5LXN1Y2Nlc3M7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQhaW1wb3J0YW50O1xuICB9XG4gICYub2xkIHtcbiAgICBjb2xvcjokc2Vjb25kYXJ5LXdhcm5pbmc7XG4gIH1cbiAgJi5pbmNvbWluZyB7XG4gICAgY29sb3I6JHNlY29uZGFyeS1lcnJvcjtcbiAgfVxufVxuXG4uYXV0aG9ycyAuc3RydWN0dXJlLW5hbWUge1xuICBjdXJzb3I6IGdyYWI7XG59XG5cbiNuZXctc3RydWN0LWZvcm0ge1xuICBsaSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm9yZGVyOiBub25lO1xuICB9XG59XG5cbi5uZXctc3RydWN0LWxhYmVsIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuI21vZGFsLWF1dGhvciB7XG4gIC5nbHlwaGljb24ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLnN0cnVjdHVyZS1hcmJvcmVzY2VuY2UgaDUrZGl2e1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuI2Zvcm1fbWFpbm1ldGEgI3R5cGUtZWxlbWVudCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cblxuXG5cbi5mb3JtLW1ldGEge1xuXG4gIC5yb3cge1xuICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgIG1hcmdpbi1yaWdodDogMTBweDtcblxuICAgICYjbWFpbkRvbWFpbi1lbGVtZW50IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IC0xMHB4O1xuICAgIH1cblxuICAgIC5zZWxlY3Rpb24ge1xuICAgICAgd2lkdGg6IGluaGVyaXQ7XG4gICAgICBkaXNwbGF5OiBpbmhlcml0O1xuICAgICAgcGFkZGluZy1yaWdodDogMTAlO1xuICAgIH1cblxuICAgICNzZWxlY3QyLW1haW5Eb21haW4tY29udGFpbmVyOmVtcHR5IHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgICNzZWxlY3QyLW1haW5Eb21haW4tY29udGFpbmVyIHtcbiAgICAgIHdpZHRoOiBmaXQtY29udGVudDtcbiAgICB9XG5cbiAgICAuc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUge1xuICAgICAgd2lkdGg6IGluaGVyaXQ7XG4gICAgfVxuXG4gICAgLnRleHRhcmVhLWdyb3VwIHtcbiAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICY6bm90KDpmaXJzdC1vZi10eXBlKSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDQ1cHg7XG4gICAgICB9XG5cbiAgICAgICY+YnV0dG9uLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsIWltcG9ydGFudDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIGJhY2tncm91bmQ6JGdyYXktZjQhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXItbGVmdDogMXB4IWltcG9ydGFudDtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGdyYXktY2EhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXItYm90dG9tOiAwIWltcG9ydGFudDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgaGVpZ2h0OiA0MHB4IWltcG9ydGFudDtcbiAgICAgICAgZm9udC1zaXplOiAkc2l6ZS1zbWFsbDtcbiAgICAgIH1cblxuICAgICAgLnB1bGwtcmlnaHQge1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogNXB4O1xuICAgICAgICAgIGZvbnQtc2l6ZTogJHNpemUtc21hbGw7XG4gICAgICAgICAgY29sb3I6ICRwcmltYXJ5LWJsdWUxO1xuXG4gICAgICAgICAgJi5mb3JtLWJ0bi1kZWwge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICAgIGNvbG9yOiAkc2Vjb25kYXJ5LWVycm9yIWltcG9ydGFudDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIHRleHRhcmVhIHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNjOGM4YzghaW1wb3J0YW50O1xuICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICB9XG5cbiAgICBzZWxlY3Qge1xuICAgICAgd2lkdGg6IDMwMHB4O1xuICAgICAgYmFja2dyb3VuZDogJGdyYXktZjQ7XG4gICAgICBib3JkZXItcmFkaXVzOiAwcHg7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjQzhDOEM4O1xuICAgIH1cblxuICAgIC5pbnB1dC1ncm91cCB7XG5cbiAgICAgIC5mb3JtLWJ0bi1sYW5nIHtcbiAgICAgICAgYmFja2dyb3VuZDogJGdyYXktZjQ7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNjOGM4Yzg7XG4gICAgICAgIGJvcmRlci1yaWdodDowIWltcG9ydGFudDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICAgIGZvbnQtc2l6ZTogJHNpemUtc21hbGw7XG4gICAgICB9XG5cbiAgICAgIGlucHV0IHtcbiAgICAgICAgd2lkdGg6IDgwJTtcbiAgICAgIH1cblxuICAgICAgc3Bhbi5pbnB1dC1ncm91cC1idG4ge1xuICAgICAgICB3aWR0aDogMTAwcHg7XG4gICAgICAgIGhlaWdodDogMzVweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjppbmhlcml0O1xuICAgICAgICAmOmhvdmVye1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6aW5oZXJpdDtcbiAgICAgICAgfVxuXG4gICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktYmx1ZTE7XG4gICAgICAgICAgcGFkZGluZzogMCAxMHB4O1xuICAgICAgICAgICY6aG92ZXJ7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1ibHVlMS1ob3ZlcjtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmLmZvcm0tYnRuLWRlbCB7XG4gICAgICAgICAgICBjb2xvcjogJHNlY29uZGFyeS1lcnJvciFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBmb250LXNpemU6ICRzaXplLW1pbnVzO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogaW5oZXJpdCFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAmOmhvdmVye1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBpbmhlcml0IWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBpbnB1dFt0eXBlPSdjaGVja2JveCddIHtcbiAgICAgIHBvc2l0aW9uOiBpbmhlcml0O1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIHdpZHRoOiAxNHB4O1xuICAgIH1cblxuICAgIC5kYXRlcGlja2VyIHtcbiAgICAgIHdpZHRoOiAyMDBweCFpbXBvcnRhbnQ7XG4gICAgICBmbGV4OiBub25lO1xuICAgIH1cbiAgfVxufVxuXG5ibG9ja3F1b3RlIC5yZWZlcmVudGllbCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNDOEM4Qzg7XG4gIHBhZGRpbmc6IDEwcHg7XG5cblxuICAuYnRuLWRlbC1yZWYge1xuICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgIGNvbG9yOiAkc2Vjb25kYXJ5LWVycm9yO1xuICB9XG59XG5cbi5oYWwtZHVwbGljYXRlLWVudHJ5IHtcbiAgaDUge1xuICAgIGZvbnQtc2l6ZTogJHNpemUtcmVndWxhcjtcbiAgICBjb2xvcjogJHNlY29uZGFyeS1lcnJvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2Vjb25kYXJ5LWVycm9yLWJnO1xuICAgIHBhZGRpbmc6IDEwcHg7XG4gIH1cbiAgcG9zaXRpb246IGZpeGVkO1xuICBmb250LXNpemU6ICRzaXplLXNtYWxsO1xuICB0b3A6IDE1MHB4O1xuICBtYXJnaW4tcmlnaHQ6IDYwcHg7XG5cbn1cblxuLmhhbC12YWxpZC1zdWJtaXQtYnRue1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGJvdHRvbTogNTBweDtcbiAgQGV4dGVuZCAlZGVmYXVsdC1idXR0b247XG4gIGJhY2tncm91bmQ6IGluaGVyaXQ7XG4gIGJvcmRlcjoxcHggc29saWQgJHByaW1hcnktb3JhbmdlO1xuICBjb2xvcjogJHByaW1hcnktb3JhbmdlO1xuICBwYWRkaW5nOiAxOXB4IDE4cHggMTZweCAxOHB4O1xuICBtYXJnaW4tcmlnaHQ6IC0xcHg7XG4gIHRyYW5zaXRpb246IDAuNXM7XG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6ICR4bGlnaHQtb3JhbmdlO1xuICAgIGNvbG9yOiAkcHJpbWFyeS1vcmFuZ2U7XG4gIH1cblxuICAmOmRpc2FibGVkIHtcbiAgICBib3JkZXI6MXB4IHNvbGlkICRncmF5LWNlO1xuICAgIGNvbG9yOiAkZ3JheS1kZTtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gIH1cbiAgJjpkaXNhYmxlZDpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogaW5oZXJpdDtcbiAgICBjb2xvcjogJGdyYXktZGU7XG4gIH1cblxuXG59XG5cbi5idG4tcHJpbWFyeS1vcmFuZ2V7XG4gIEBleHRlbmQgJWRlZmF1bHQtYnV0dG9uO1xuICBiYWNrZ3JvdW5kOiAkcHJpbWFyeS1vcmFuZ2U7XG4gIGJvcmRlcjoxcHggc29saWQgJHByaW1hcnktb3JhbmdlO1xuICBjb2xvcjogJHdoaXRlO1xuICBwYWRkaW5nOiAxOXB4IDE4cHggMTZweCAxOHB4O1xuICBtYXJnaW4tcmlnaHQ6IC0xcHg7XG4gIHRyYW5zaXRpb246IDAuNXM7XG59XG5cbi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJSFpbXBvcnRhbnQ7XG4gIGJvcmRlcjoxcHggc29saWQgJGdyYXktY2E7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIC5zZWxlY3QyLXNlYXJjaF9fZmllbGQge1xuICAgIGxpbmUtaGVpZ2h0OiAycmVtIWltcG9ydGFudDtcbiAgfVxuXG4gIGxpLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uLm5vbi1sZWFmIHtcbiAgICAuZXhwYW5kLWNvbGxhcHNlOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlxcZTk2MlwiICFpbXBvcnRhbnQ7XG4gICAgICBjb2xvcjogJHByaW1hcnktYmx1ZTMtaG92ZXIhaW1wb3J0YW50O1xuICAgICAgZm9udC1mYW1pbHk6ICdpY29tb29uJyAhaW1wb3J0YW50O1xuICAgICAgZm9udC1zaXplOiAxMHB4IWltcG9ydGFudDtcbiAgICAgIHRvcDogNnB4IWltcG9ydGFudDtcbiAgICAgIGxlZnQ6IC00cHggIWltcG9ydGFudDtcbiAgICB9XG5cbiAgfVxuICBsaS5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbi5ub24tbGVhZi5vcGVuZWQgLmV4cGFuZC1jb2xsYXBzZTpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFxlOThlXCIgIWltcG9ydGFudDtcbiAgfVxuXG4gICYuc2VsZWN0Mi1jb250YWluZXItLW9wZW4uczItdG8tdHJlZSB7XG4gICAgbWFyZ2luLXRvcDogMCFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyOiAwIWltcG9ydGFudDtcbiAgfVxuICAmLnNlbGVjdDItY29udGFpbmVyLS1vcGVuIC5zZWxlY3QyLWRyb3Bkb3duLS1iZWxvdyB7XG4gICAgYm9yZGVyLWNvbG9yOiAkZ3JheS1jYTtcbiAgICBiYWNrZ3JvdW5kOiAkZ3JheS1mNDtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICB9XG4gICYuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24tLWhpZ2hsaWdodGVkW2FyaWEtc2VsZWN0ZWRdID4gc3Bhbi5pdGVtLWxhYmVsIHtcbiAgICBiYWNrZ3JvdW5kOiByZWQhaW1wb3J0YW50O1xuICB9XG5cbiAgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSB7XG4gICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG5cbiAgICAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Nob2ljZV9fcmVtb3ZlIHtcbiAgICAgIGNvbG9yOiAkd2hpdGUhaW1wb3J0YW50O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4IWltcG9ydGFudDtcbiAgICAgIGZvbnQtc2l6ZTogMTRweCFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2hvaWNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWJsdWUzIWltcG9ydGFudDtcbiAgICAgIGNvbG9yOiAkd2hpdGUhaW1wb3J0YW50O1xuICAgICAgYm9yZGVyOiAwIWltcG9ydGFudDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDAhaW1wb3J0YW50O1xuICAgICAgcGFkZGluZzogNXB4IDEwcHghaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIHtcbiAgICBtYXJnaW4tdG9wOiA1cHg7XG4gICAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2shaW1wb3J0YW50O1xuICAgIGJvcmRlcjogbm9uZSFpbXBvcnRhbnQ7XG5cbiAgICAuc2VsZWN0Mi1zZWxlY3Rpb25fX3JlbmRlcmVkIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWJsdWUzLWhvdmVyIWltcG9ydGFudDtcbiAgICAgIGNvbG9yOiAkd2hpdGUhaW1wb3J0YW50O1xuICAgICAgYm9yZGVyOiAwIWltcG9ydGFudDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDAhaW1wb3J0YW50O1xuICAgICAgcGFkZGluZzogMnB4IDEwcHghaW1wb3J0YW50O1xuICAgIH1cbiAgICAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Fycm93IHtcbiAgICAgIHRvcDogOHB4IWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICBsaS5zZWxlY3QyLXJlc3VsdHNfX29wdGlvblthcmlhLXNlbGVjdGVkPVwidHJ1ZVwiXSB7XG4gICAgJj4gc3Bhbi5pdGVtLWxhYmVsIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQgIWltcG9ydGFudDtcbiAgICAgIGNvbG9yOiAkcHJpbWFyeS1ibHVlMy1ob3ZlcjtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIH1cbiAgICAmOmhvdmVyPiBzcGFuLml0ZW0tbGFiZWwge1xuICAgICAgY29sb3I6ICRwcmltYXJ5LWJsdWUzLWhvdmVyO1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgfVxuICB9XG5cbiAgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uLS1oaWdobGlnaHRlZFthcmlhLXNlbGVjdGVkXSB7XG4gICAgJj4gc3Bhbi5pdGVtLWxhYmVsLCAmOmhvdmVyPiBzcGFuLml0ZW0tbGFiZWwge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdyYXktZWYgIWltcG9ydGFudDtcbiAgICAgIGNvbG9yOiAkcHJpbWFyeS1ibHVlMyFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG5cbi5kYXRlcGlja2VyIHtcbiAgYmFja2dyb3VuZDogaW5oZXJpdCAhaW1wb3J0YW50O1xufVxuLmRhdGVwaWNrZXIgKyAudWktZGF0ZXBpY2tlci10cmlnZ2VyIHtcbiAgZGlzcGxheTpub25lO1xufVxuXG4uY2FsZW5kYXItdHJpZ2dlciB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogbm9uZTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAtMzJweDtcblxuICAuaWNvbi1jYWxlbmRhcjpiZWZvcmUge1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICBjb2xvcjogJGdyYXktYzg7XG4gIH1cbn1cblxuLnVpLWRhdGVwaWNrZXIge1xuICBiYWNrZ3JvdW5kOiAkZ3JheS1mNDtcbiAgYm9yZGVyOiAxcHggc29saWQgJGdyYXktYzg7XG5cbiAgc2VsZWN0IHtcbiAgICBib3JkZXItcmFkaXVzOiAwcHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJGdyYXktYzg7XG4gICAgJi51aS1kYXRlcGlja2VyLW1vbnRoIHtcbiAgICAgIGJvcmRlci1yaWdodDogMDtcbiAgICB9XG4gICAgJi51aS1kYXRlcGlja2VyLXllYXIge1xuICAgICAgYm9yZGVyLWxlZnQ6IDA7XG4gICAgfVxuICB9XG5cbiAgLnVpLXN0YXRlLWRlZmF1bHQsIC51aS1zdGF0ZS1hY3RpdmUge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuICAudWktc3RhdGUtZGVmYXVsdCB7XG4gICAgY29sb3I6ICRwcmltYXJ5LWJsdWUxO1xuICB9XG4gIC51aS1zdGF0ZS1hY3RpdmUge1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgYmFja2dyb3VuZDogJHByaW1hcnktYmx1ZTE7XG4gIH1cbn1cbi51aS1kYXRlcGlja2VyLXByZXYge1xuICAudWktaWNvbi1jaXJjbGUtdHJpYW5nbGUtdyB7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHRleHQtaW5kZW50OmluaGVyaXQ7XG4gICAgbWFyZ2luLXRvcDogLTRweCFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWxlZnQ6IDAhaW1wb3J0YW50O1xuICAgICY6YmVmb3JlIHtcbiAgICAgIGNvbG9yOiAkcHJpbWFyeS1ibHVlMTtcbiAgICB9XG4gIH1cbn1cbi51aS1kYXRlcGlja2VyLW5leHQge1xuICAudWktaWNvbi1jaXJjbGUtdHJpYW5nbGUtZSB7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHRleHQtaW5kZW50OmluaGVyaXQ7XG4gICAgbWFyZ2luLXRvcDogLTRweCFpbXBvcnRhbnQ7XG4gICAgJjpiZWZvcmUge1xuICAgICAgY29sb3I6ICRwcmltYXJ5LWJsdWUxO1xuICAgIH1cbiAgfVxufVxuXG4ubG9hZC1ieS1pZC5pbnB1dC1ncm91cCB7XG4gIGJ1dHRvbiwgaW5wdXQge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRwcmltYXJ5LWJsdWUzO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgaGVpZ2h0OiBpbmhlcml0O1xuICB9XG4gIGJ1dHRvbiB7XG4gICAgZm9udC1zaXplOiBzbWFsbDtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgfVxufVxuXG4vKipcblNURVAgVFJBTlNGRVJUXG4gKi9cblxuI3BhbmVsLXRyYW5zZmVyIC5zZWN0aW9uLXNoYWRvdyB7XG4gIHBhZGRpbmc6IDMwcHggMTAwcHg7XG5cbiAgLmFsZXJ0LXRleHQge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRncmF5LWM4O1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gIH1cblxuICAuY29uZGl0aW9uLWZpbGxlZCB7XG4gICAgY29sb3I6ICRzZWNvbmRhcnktc3VjY2VzcztcbiAgfVxuICAuY29uZGl0aW9uLW5vdGZpbGxlZCB7XG4gICAgY29sb3I6ICRzZWNvbmRhcnktZXJyb3I7XG4gIH1cblxufVxuXG5cbi8qXG5TVEVQIFJFQ0FQXG4qL1xuXG4uc3RlcC1yZWNhcCB7XG4gIHBhZGRpbmc6IDMwcHggMTAwcHg7XG4gIGg1IHtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgfVxuICAucmVjYXAtY2l0YXRpb24ucmVjYXAtZG91YmxvbiwgLmludmFsaWQtc3RlcHMge1xuICAgIGJhY2tncm91bmQ6ICRzZWNvbmRhcnktZXJyb3ItYmc7XG4gIH1cbiAgLmludmFsaWQtc3RlcHMge1xuICAgIHBhZGRpbmc6IDIwcHg7XG5cbiAgICBsaSBhIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xuICAgIH1cbiAgfVxuICAucmVjYXAtY2l0YXRpb24ge1xuICAgIGJhY2tncm91bmQ6ICRncmF5LWVjO1xuICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIH1cbiAgLnJlY2FwLXR5cGRvYyB7XG4gICAgcGFkZGluZzogMTBweDtcbiAgICBsaW5lLWhlaWdodDogNTBweDtcbiAgICBiYWNrZ3JvdW5kOiAkcHVycGxlO1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gIH1cbiAgLnJlY2FwLWNndSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJGdyYXktYzg7XG4gIH1cbiAgbGFiZWwge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkIWltcG9ydGFudDtcbiAgfVxufVxuXG4iLCJcbi5jb250ZW50LW5hdiB7XG4gIC5uYXYtaXRlbSB7XG4gICAgLm5hdi1saW5rIHtcbiAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICAgIGNvbG9yOiAkcHJpbWFyeS1ibHVlMTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDAhaW1wb3J0YW50O1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgJHByaW1hcnktYmx1ZTE7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG5cbiAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgYmFja2dyb3VuZDogJHByaW1hcnktYmx1ZTE7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJcbi5zdGF0LWdyYXBoLCAuc3RhdC1zcGlubmVyIHtcbiAgbWFyZ2luLXJpZ2h0OiAtMTVweDtcbiAgbWFyZ2luLWxlZnQ6IC0xNXB4O1xuICBwYWRkaW5nOjIwcHg7XG5cbiAgJj4ucm93IHtcbiAgICBoZWlnaHQ6IDQwcHg7XG4gIH1cblxuICBoNCB7XG4gICAgY29sb3I6ICRncmF5LTk3O1xuICAgIGZvbnQtc2l6ZTogJHNpemUtbGFyZ2U7XG4gICAgbWFyZ2luLXRvcDogLTVweDtcbiAgfVxuICAuc2VsZWN0LXJhbmdlLWRlcG90LCAuc2VsZWN0LXJhbmdlIHtcbiAgICBib3JkZXI6IDJweCBzb2xpZCAkcHJpbWFyeS1ibHVlMTtcbiAgICBtYXJnaW4tdG9wOiAtMTBweDtcblxuICAgIC5idG4ge1xuICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkIWltcG9ydGFudDtcbiAgICAgIHBhZGRpbmc6IDVweCAyMHB4O1xuICAgICAgJi5hY3RpdmUge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkcHJpbWFyeS1ibHVlMTtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5zdGF0LXNwaW5uZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIC5zcGlubmVyLWJvcmRlciB7XG4gICAgY29sb3I6ICRwcmltYXJ5LWJsdWUxO1xuICB9XG59XG5cbi5zdGF0LWNvdW50ZXIge1xuICBwYWRkaW5nOiAxMHB4O1xuXG4gIGNvbG9yOiAkZ3JheS05NztcbiAgZm9udC1zaXplOiAkc2l6ZS1sYXJnZTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG5cbiAgLmNvdW50ZXItbGFyZ2Uge1xuICAgIGNvbG9yOiAkcHJpbWFyeS1ibHVlMTtcbiAgICBmb250LXNpemU6ICRzaXplLXh4eGw7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAmPmRpdjpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAkZ3JheS1lNjtcbiAgfVxufVxuIiwiLnNpdGUtaGVhZGVyIHtcbiAgaGVpZ2h0OiAzMDBweDtcbiAgbWluLWhlaWdodDogMjAwcHg7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxOTIwcHgpIHtcbiAgLnNpdGUtaGVhZGVyIHtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgMzAwcHg7XG4gIH1cbn1cbi5zaXRlLWhlYWRlciAudGl0bGUge1xuICBmb250LXNpemU6ICRzaXplLWV4dHJhO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgZm9udC1mYW1pbHk6ICRmb250LWhhbDtcbn1cblxuLndlYnNpdGUtbmF2aWdhdGlvbiAubmF2LXBpbGxzIC5uYXYtbGluayB7XG4gIHRyYW5zaXRpb246IDAuNXM7XG59XG4iLCJcbmJvZHkuZGFyayB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyMDIxMjQ7XG4gIGNvbG9yOiAkd2hpdGU7XG5cbiAgbmF2Lm5hdmJhci5oZWFkZXIsIGZvb3RlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzBkMGQwZTtcbiAgfVxuXG4gIC5zdWItaGVhZGVyLCAudGl0bGUtZmFjZXQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMxMzE0MTYhaW1wb3J0YW50O1xuICB9XG5cbiAgLnNlY3Rpb24tc2hhZG93LCAuYXV0aG9ycywgLmhhbC1iZ3RleHQsIC5iZy1iZWlnZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzM2MzczYTtcbiAgfVxuICAudGFibGUtd2hpdGUgdHI6aG92ZXIsICNwYXJ0YWdlX3RhYmxlIHRib2R5IHRyOmhvdmVyLCAjbXlkZXBvc2l0IHRib2R5ICNvd25zdWIgdHI6aG92ZXIsIC50YWJsZS13aGl0ZSB0cjpmb2N1cywgI3BhcnRhZ2VfdGFibGUgdGJvZHkgdHI6Zm9jdXMsICNteWRlcG9zaXQgdGJvZHkgI293bnN1YiB0cjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzkwOTA5MjtcbiAgfVxuXG4gIC50YWJsZS13aGl0ZSB0ciwgI3BhcnRhZ2VfdGFibGUgdGJvZHkgdHIsICNteWRlcG9zaXQgdGJvZHkgI293bnN1YiB0ciB7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogIzBkMGQwZTtcbiAgfVxuXG4gIC5jb250ZW50LWZhY2V0IGEsIC5yZXN1bHRzLXRhYmxlIHRkIGEge1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gIH1cbn0iLCIvLyBjb2RlIGNvcGllZCBmcm9tLCBpdCBzIGFib3V0IGEganMgY2xhc3MgdGhhdCByZWxpZXMgb24gYm9vdHN0cmFwIHBvcG92ZXJzIHRvIG1ha2UgZmllbGQgZWRpdGFibGUgKGZvciBtb2RlcmF0aW9uLCBkdXBsaWNhdGVzKVxuLy8gY2hlY2sgOiBodHRwczovL2dpdGh1Yi5jb20vVGFsdi94LWVkaXRhYmxlL2Jsb2IvZGV2ZWxvcC9kaXN0L2Jvb3RzdHJhcDQtZWRpdGFibGUvY3NzL2Jvb3RzdHJhcC1lZGl0YWJsZS5jc3Ncbi8vIHdlIHVwZGF0ZWQgdGhlIGljb25zIHRvIHVzZSBIQUwgaWNvbnMgZmEtdGltZT0+IGljb24tZXhpdCBhbmQgZmEtc3VibWl0PT4gaWNvbi1jaGVja1xuLy8gdGhlIG9yaWdpbmFsIHJlcG8gaXMgbm90IG1haW50YWluZSBhbnltb3JlICEgOiBodHRwczovL2dpdGh1Yi5jb20vdml0YWxldHMveC1lZGl0YWJsZS9pc3N1ZXMvNjEwIC8gaHR0cHM6Ly9naXRodWIuY29tL3ZpdGFsZXRzL3gtZWRpdGFibGUvaXNzdWVzLzExNzlcblxuLyohIFgtZWRpdGFibGUgLSB2MS41LjNcbiogSW4tcGxhY2UgZWRpdGluZyB3aXRoIFR3aXR0ZXIgQm9vdHN0cmFwLCBqUXVlcnkgVUkgb3IgcHVyZSBqUXVlcnlcbiogaHR0cDovL2dpdGh1Yi5jb20vdml0YWxldHMveC1lZGl0YWJsZVxuKiBDb3B5cmlnaHQgKGMpIDIwMTggVml0YWxpeSBQb3RhcG92OyBMaWNlbnNlZCBNSVQgKi9cbi5lZGl0YWJsZWZvcm0ge1xuICBtYXJnaW4tYm90dG9tOiAwOyAvKiBvdmVyd3JpdGVzIGJvb3RzdHJhcCBtYXJnaW4gKi9cbn1cblxuLmVkaXRhYmxlZm9ybSAuY29udHJvbC1ncm91cCB7XG4gIG1hcmdpbi1ib3R0b206IDA7IC8qIG92ZXJ3cml0ZXMgYm9vdHN0cmFwIG1hcmdpbiAqL1xuICB3aGl0ZS1zcGFjZTogbm93cmFwOyAvKiBwcmV2ZW50IHdyYXBwaW5nIGJ1dHRvbnMgb24gbmV3IGxpbmUgKi9cbiAgbGluZS1oZWlnaHQ6IDIwcHg7IC8qIG92ZXJ3cml0aW5nIGJvb3RzdHJhcCBsaW5lLWhlaWdodC4gU2VlICMxMzMgKi9cbn1cblxuLypcbiAgICBCUzMgZml4OiBzdG9wIGNzcyBmcm9tIGJyZWFraW5nIHdoZW4gdGhlIGZvcm0gaXMgaW5zaWRlIGEgcG9wdXAgYW5kIGluc2lkZSBhIGZvcm0gd2l0aCB0aGUgY2xhc3MgLmZvcm0taG9yaXpvbnRhbFxuICAgIFNlZTogaHR0cHM6Ly9naXRodWIuY29tL3ZpdGFsZXRzL3gtZWRpdGFibGUvaXNzdWVzLzY4MlxuKi9cbi5mb3JtLWhvcml6b250YWwgLmVkaXRhYmxlLXBvcHVwIC5lZGl0YWJsZWZvcm0gLmZvcm0tZ3JvdXAge1xuICBtYXJnaW4tbGVmdDowO1xuICBtYXJnaW4tcmlnaHQ6MDtcbn1cblxuXG4vKlxuICBCUzMgd2lkdGg6MTAwNSBmb3IgaW5wdXRzIGJyZWFrcyBlZGl0YWJsZSBmb3JtIGluIHBvcHVwXG4gIFNlZTogaHR0cHM6Ly9naXRodWIuY29tL3ZpdGFsZXRzL3gtZWRpdGFibGUvaXNzdWVzLzM5M1xuKi9cbi5lZGl0YWJsZWZvcm0gLmZvcm0tY29udHJvbCB7XG4gIHdpZHRoOiBhdXRvO1xufVxuXG4uZWRpdGFibGUtYnV0dG9ucyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jazsgLyogc2hvdWxkIGJlIGlubGluZSB0byB0YWtlIGVmZmVjdCBvZiBwYXJlbnQncyB3aGl0ZS1zcGFjZTogbm93cmFwICovXG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIG1hcmdpbi1sZWZ0OiA3cHg7XG4gIC8qIGlubGluZS1ibG9jayBlbXVsYXRpb24gZm9yIElFNyovXG4gIHpvb206IDE7XG4gICpkaXNwbGF5OiBpbmxpbmU7XG59XG5cbi5lZGl0YWJsZS1idXR0b25zLmVkaXRhYmxlLWJ1dHRvbnMtYm90dG9tIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi10b3A6IDdweDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG5cbi5lZGl0YWJsZS1pbnB1dCB7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jazsgLyogc2hvdWxkIGJlIGlubGluZSB0byB0YWtlIGVmZmVjdCBvZiBwYXJlbnQncyB3aGl0ZS1zcGFjZTogbm93cmFwICovXG4gIHdpZHRoOiBhdXRvOyAvKiBib290c3RyYXAtcmVzcG9uc2l2ZSBoYXMgd2lkdGg6IDEwMCUgdGhhdCBicmVha2VzIGxheW91dCAqL1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsOyAvKiByZXNldCB3aGl0ZS1zcGFjZSBkZWNhbHJlZCBpbiBwYXJlbnQqL1xuICAvKiBkaXNwbGF5LWlubGluZSBlbXVsYXRpb24gZm9yIElFNyovXG4gIHpvb206IDE7XG4gICpkaXNwbGF5OiBpbmxpbmU7XG59XG5cbi5lZGl0YWJsZS1idXR0b25zIC5lZGl0YWJsZS1jYW5jZWwge1xuICBtYXJnaW4tbGVmdDogN3B4O1xufVxuXG4vKmZvciBqcXVlcnktdWkgYnV0dG9ucyBuZWVkIHNldCBoZWlnaHQgdG8gbG9vayBtb3JlIHByZXR0eSovXG4uZWRpdGFibGUtYnV0dG9ucyBidXR0b24udWktYnV0dG9uLWljb24tb25seSB7XG4gIGhlaWdodDogMjRweDtcbiAgd2lkdGg6IDMwcHg7XG59XG5cbi5lZGl0YWJsZWZvcm0tbG9hZGluZyB7XG4gIGJhY2tncm91bmQ6IHVybCgnLi4vaW1nL2xvYWRpbmcuZ2lmJykgY2VudGVyIGNlbnRlciBuby1yZXBlYXQ7XG4gIGhlaWdodDogMjVweDtcbiAgd2lkdGg6IGF1dG87XG4gIG1pbi13aWR0aDogMjVweDtcbn1cblxuLmVkaXRhYmxlLWlubGluZSAuZWRpdGFibGVmb3JtLWxvYWRpbmcge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0IDVweDtcbn1cblxuLmVkaXRhYmxlLWVycm9yLWJsb2NrIHtcbiAgbWF4LXdpZHRoOiAzMDBweDtcbiAgbWFyZ2luOiA1cHggMCAwIDA7XG4gIHdpZHRoOiBhdXRvO1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xufVxuXG4vKmFkZCBwYWRkaW5nIGZvciBqcXVlcnkgdWkqL1xuLmVkaXRhYmxlLWVycm9yLWJsb2NrLnVpLXN0YXRlLWVycm9yIHtcbiAgcGFkZGluZzogM3B4O1xufVxuXG4uZWRpdGFibGUtZXJyb3Ige1xuICBjb2xvcjogcmVkO1xufVxuXG4vKiAtLS0tIEZvciBzcGVjaWZpYyB0eXBlcyAtLS0tICovXG5cbi5lZGl0YWJsZWZvcm0gLmVkaXRhYmxlLWRhdGUge1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGZsb2F0OiBsZWZ0O1xufVxuXG4vKiBtb3ZlIGRhdGVwaWNrZXIgaWNvbiB0byBjZW50ZXIgb2YgYWRkLW9uIGJ1dHRvbi4gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS92aXRhbGV0cy94LWVkaXRhYmxlL2lzc3Vlcy8xODMgKi9cbi5lZGl0YWJsZS1pbmxpbmUgLmFkZC1vbiAuaWNvbi10aCB7XG4gIG1hcmdpbi10b3A6IDNweDtcbiAgbWFyZ2luLWxlZnQ6IDFweDtcbn1cblxuXG4vKiBjaGVja2xpc3QgdmVydGljYWwgYWxpZ25tZW50ICovXG4uZWRpdGFibGUtY2hlY2tsaXN0IGxhYmVsIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSxcbi5lZGl0YWJsZS1jaGVja2xpc3QgbGFiZWwgc3BhbiB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIG1hcmdpbjogMDtcbn1cblxuLmVkaXRhYmxlLWNoZWNrbGlzdCBsYWJlbCB7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi8qIHNldCBleGFjdCB3aWR0aCBvZiB0ZXh0YXJlYSB0byBmaXQgYnV0dG9ucyB0b29sYmFyICovXG4uZWRpdGFibGUtd3lzaWh0bWw1IHtcbiAgd2lkdGg6IDU2NnB4O1xuICBoZWlnaHQ6IDI1MHB4O1xufVxuXG4vKiBjbGVhciBidXR0b24gc2hvd24gYXMgbGluayBpbiBkYXRlIGlucHV0cyAqL1xuLmVkaXRhYmxlLWNsZWFyIHtcbiAgY2xlYXI6IGJvdGg7XG4gIGZvbnQtc2l6ZTogMC45ZW07XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG5cbi8qIElPUy1zdHlsZSBjbGVhciBidXR0b24gZm9yIHRleHQgaW5wdXRzICovXG4uZWRpdGFibGUtY2xlYXIteCB7XG4gIGJhY2tncm91bmQ6IHVybCgnLi4vaW1nL2NsZWFyLnBuZycpIGNlbnRlciBjZW50ZXIgbm8tcmVwZWF0O1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEzcHg7XG4gIGhlaWdodDogMTNweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBvcGFjaXR5OiAwLjY7XG4gIHotaW5kZXg6IDEwMDtcblxuICB0b3A6IDUwJTtcbiAgcmlnaHQ6IDZweDtcbiAgbWFyZ2luLXRvcDogLTZweDtcblxufVxuXG4uZWRpdGFibGUtY2xlYXIteDpob3ZlciB7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5lZGl0YWJsZS1wcmUtd3JhcHBlZCB7XG4gIHdoaXRlLXNwYWNlOiBwcmUtd3JhcDtcbn1cblxuLmVkaXRhYmxlLWNvbnRhaW5lci5lZGl0YWJsZS1wb3B1cCB7XG4gIG1heC13aWR0aDogbm9uZSAhaW1wb3J0YW50OyAvKiB3aXRob3V0IHRoaXMgcnVsZSBwb3NoeXRpcC90b29sdGlwIGRvZXMgbm90IHN0cmV0Y2ggKi9cbn1cblxuLmVkaXRhYmxlLWNvbnRhaW5lci5wb3BvdmVyIHtcbiAgd2lkdGg6IGF1dG87IC8qIHdpdGhvdXQgdGhpcyBydWxlIHBvcG92ZXIgZG9lcyBub3Qgc3RyZXRjaCAqL1xufVxuXG4uZWRpdGFibGUtY29udGFpbmVyLmVkaXRhYmxlLWlubGluZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgd2lkdGg6IGF1dG87XG4gIC8qIGlubGluZS1ibG9jayBlbXVsYXRpb24gZm9yIElFNyovXG4gIHpvb206IDE7XG4gICpkaXNwbGF5OiBpbmxpbmU7XG59XG5cbi5lZGl0YWJsZS1jb250YWluZXIudWktd2lkZ2V0IHtcbiAgZm9udC1zaXplOiBpbmhlcml0OyAgLyoganF1ZXJ5dWkgd2lkZ2V0IGZvbnQgMS4xZW0gdG9vIGJpZywgb3ZlcndyaXRlIGl0ICovXG4gIHotaW5kZXg6IDk5OTA7IC8qIHNob3VsZCBiZSBsZXNzIHRoYW4gc2VsZWN0MiBkcm9wZG93biB6LWluZGV4IHRvIGNsb3NlIGRyb3Bkb3duIGZpcnN0IHdoZW4gY2xpY2sgKi9cbn1cbi5lZGl0YWJsZS1jbGljayxcbmEuZWRpdGFibGUtY2xpY2ssXG5hLmVkaXRhYmxlLWNsaWNrOmhvdmVyIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBib3JkZXItYm90dG9tOiBkYXNoZWQgMXB4ICMwMDg4Y2M7XG59XG5cbi5lZGl0YWJsZS1jbGljay5lZGl0YWJsZS1kaXNhYmxlZCxcbmEuZWRpdGFibGUtY2xpY2suZWRpdGFibGUtZGlzYWJsZWQsXG5hLmVkaXRhYmxlLWNsaWNrLmVkaXRhYmxlLWRpc2FibGVkOmhvdmVyIHtcbiAgY29sb3I6ICM1ODU4NTg7XG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbn1cblxuLmVkaXRhYmxlLWVtcHR5LCAuZWRpdGFibGUtZW1wdHk6aG92ZXIsIC5lZGl0YWJsZS1lbXB0eTpmb2N1c3tcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBjb2xvcjogI0REMTE0NDtcbiAgLyogYm9yZGVyLWJvdHRvbTogbm9uZTsgKi9cbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4uZWRpdGFibGUtdW5zYXZlZCB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4uZWRpdGFibGUtdW5zYXZlZDphZnRlciB7XG4gIC8qICAgIGNvbnRlbnQ6ICcqJyovXG59XG5cbi5lZGl0YWJsZS1iZy10cmFuc2l0aW9uIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDE0MDBtcyBlYXNlLW91dDtcbiAgLW1vei10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDE0MDBtcyBlYXNlLW91dDtcbiAgLW8tdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAxNDAwbXMgZWFzZS1vdXQ7XG4gIC1tcy10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDE0MDBtcyBlYXNlLW91dDtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAxNDAwbXMgZWFzZS1vdXQ7XG59XG5cbi8qc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS92aXRhbGV0cy94LWVkaXRhYmxlL2lzc3Vlcy8xMzkgKi9cbi5mb3JtLWhvcml6b250YWwgLmVkaXRhYmxlXG57XG4gIHBhZGRpbmctdG9wOiA1cHg7XG4gIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xufVxuXG5cbi8qIVxuICogRGF0ZXBpY2tlciBmb3IgQm9vdHN0cmFwXG4gKlxuICogQ29weXJpZ2h0IDIwMTIgU3RlZmFuIFBldHJlXG4gKiBJbXByb3ZlbWVudHMgYnkgQW5kcmV3IFJvd2xzXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UgdjIuMFxuICogaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICovXG4uZGF0ZXBpY2tlciB7XG4gIHBhZGRpbmc6IDRweDtcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiA0cHg7XG4gIC1tb3otYm9yZGVyLXJhZGl1czogNHB4O1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIGRpcmVjdGlvbjogbHRyO1xuICAvKi5kb3cge1xuXHRcdGJvcmRlci10b3A6IDFweCBzb2xpZCAjZGRkICFpbXBvcnRhbnQ7XG5cdH0qL1xuXG59XG4uZGF0ZXBpY2tlci1pbmxpbmUge1xuICB3aWR0aDogMjIwcHg7XG59XG4uZGF0ZXBpY2tlci5kYXRlcGlja2VyLXJ0bCB7XG4gIGRpcmVjdGlvbjogcnRsO1xufVxuLmRhdGVwaWNrZXIuZGF0ZXBpY2tlci1ydGwgdGFibGUgdHIgdGQgc3BhbiB7XG4gIGZsb2F0OiByaWdodDtcbn1cbi5kYXRlcGlja2VyLWRyb3Bkb3duIHtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xufVxuLmRhdGVwaWNrZXItZHJvcGRvd246YmVmb3JlIHtcbiAgY29udGVudDogJyc7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYm9yZGVyLWxlZnQ6IDdweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0OiA3cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1ib3R0b206IDdweCBzb2xpZCAjY2NjO1xuICBib3JkZXItYm90dG9tLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMik7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAtN3B4O1xuICBsZWZ0OiA2cHg7XG59XG4uZGF0ZXBpY2tlci1kcm9wZG93bjphZnRlciB7XG4gIGNvbnRlbnQ6ICcnO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGJvcmRlci1sZWZ0OiA2cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogNnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItYm90dG9tOiA2cHggc29saWQgI2ZmZmZmZjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IC02cHg7XG4gIGxlZnQ6IDdweDtcbn1cbi5kYXRlcGlja2VyID4gZGl2IHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5kYXRlcGlja2VyLmRheXMgZGl2LmRhdGVwaWNrZXItZGF5cyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLmRhdGVwaWNrZXIubW9udGhzIGRpdi5kYXRlcGlja2VyLW1vbnRocyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLmRhdGVwaWNrZXIueWVhcnMgZGl2LmRhdGVwaWNrZXIteWVhcnMge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi5kYXRlcGlja2VyIHRhYmxlIHtcbiAgbWFyZ2luOiAwO1xufVxuLmRhdGVwaWNrZXIgdGQsXG4uZGF0ZXBpY2tlciB0aCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2lkdGg6IDIwcHg7XG4gIGhlaWdodDogMjBweDtcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiA0cHg7XG4gIC1tb3otYm9yZGVyLXJhZGl1czogNHB4O1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIGJvcmRlcjogbm9uZTtcbn1cbi50YWJsZS1zdHJpcGVkIC5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLFxuLnRhYmxlLXN0cmlwZWQgLmRhdGVwaWNrZXIgdGFibGUgdHIgdGgge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmRheTpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICNlZWVlZWU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLm9sZCxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLm5ldyB7XG4gIGNvbG9yOiAjOTk5OTk5O1xufVxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuZGlzYWJsZWQsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5kaXNhYmxlZDpob3ZlciB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGNvbG9yOiAjOTk5OTk5O1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC50b2RheSxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnRvZGF5OmhvdmVyLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQudG9kYXkuZGlzYWJsZWQsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC50b2RheS5kaXNhYmxlZDpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZGUxOWE7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgI2ZkZDQ5YSwgI2ZkZjU5YSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1tcy1saW5lYXItZ3JhZGllbnQodG9wLCAjZmRkNDlhLCAjZmRmNTlhKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIDAgMCwgMCAxMDAlLCBmcm9tKCNmZGQ0OWEpLCB0bygjZmRmNTlhKSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgI2ZkZDQ5YSwgI2ZkZjU5YSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCh0b3AsICNmZGQ0OWEsICNmZGY1OWEpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG9wLCAjZmRkNDlhLCAjZmRmNTlhKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPScjZmRkNDlhJywgZW5kQ29sb3JzdHI9JyNmZGY1OWEnLCBHcmFkaWVudFR5cGU9MCk7XG4gIGJvcmRlci1jb2xvcjogI2ZkZjU5YSAjZmRmNTlhICNmYmVkNTA7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEpIHJnYmEoMCwgMCwgMCwgMC4xKSByZ2JhKDAsIDAsIDAsIDAuMjUpO1xuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChlbmFibGVkPWZhbHNlKTtcbiAgY29sb3I6ICMwMDA7XG59XG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC50b2RheTpob3Zlcixcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnRvZGF5OmhvdmVyOmhvdmVyLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQudG9kYXkuZGlzYWJsZWQ6aG92ZXIsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC50b2RheS5kaXNhYmxlZDpob3Zlcjpob3Zlcixcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnRvZGF5OmFjdGl2ZSxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnRvZGF5OmhvdmVyOmFjdGl2ZSxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnRvZGF5LmRpc2FibGVkOmFjdGl2ZSxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnRvZGF5LmRpc2FibGVkOmhvdmVyOmFjdGl2ZSxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnRvZGF5LmFjdGl2ZSxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnRvZGF5OmhvdmVyLmFjdGl2ZSxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnRvZGF5LmRpc2FibGVkLmFjdGl2ZSxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnRvZGF5LmRpc2FibGVkOmhvdmVyLmFjdGl2ZSxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnRvZGF5LmRpc2FibGVkLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQudG9kYXk6aG92ZXIuZGlzYWJsZWQsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC50b2RheS5kaXNhYmxlZC5kaXNhYmxlZCxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnRvZGF5LmRpc2FibGVkOmhvdmVyLmRpc2FibGVkLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQudG9kYXlbZGlzYWJsZWRdLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQudG9kYXk6aG92ZXJbZGlzYWJsZWRdLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQudG9kYXkuZGlzYWJsZWRbZGlzYWJsZWRdLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQudG9kYXkuZGlzYWJsZWQ6aG92ZXJbZGlzYWJsZWRdIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZkZjU5YTtcbn1cbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnRvZGF5OmFjdGl2ZSxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnRvZGF5OmhvdmVyOmFjdGl2ZSxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnRvZGF5LmRpc2FibGVkOmFjdGl2ZSxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnRvZGF5LmRpc2FibGVkOmhvdmVyOmFjdGl2ZSxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnRvZGF5LmFjdGl2ZSxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnRvZGF5OmhvdmVyLmFjdGl2ZSxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnRvZGF5LmRpc2FibGVkLmFjdGl2ZSxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnRvZGF5LmRpc2FibGVkOmhvdmVyLmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmYmYwNjkgXFw5O1xufVxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQudG9kYXk6aG92ZXI6aG92ZXIge1xuICBjb2xvcjogIzAwMDtcbn1cbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnRvZGF5LmFjdGl2ZTpob3ZlciB7XG4gIGNvbG9yOiAjZmZmO1xufVxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2UsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5yYW5nZTpob3Zlcixcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnJhbmdlLmRpc2FibGVkLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2UuZGlzYWJsZWQ6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjZWVlZWVlO1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDA7XG4gIC1tb3otYm9yZGVyLXJhZGl1czogMDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnJhbmdlLnRvZGF5LFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2UudG9kYXk6aG92ZXIsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5yYW5nZS50b2RheS5kaXNhYmxlZCxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnJhbmdlLnRvZGF5LmRpc2FibGVkOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YzZDE3YTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW1vei1saW5lYXItZ3JhZGllbnQodG9wLCAjZjNjMTdhLCAjZjNlOTdhKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW1zLWxpbmVhci1ncmFkaWVudCh0b3AsICNmM2MxN2EsICNmM2U5N2EpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgMCAwLCAwIDEwMCUsIGZyb20oI2YzYzE3YSksIHRvKCNmM2U5N2EpKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCAjZjNjMTdhLCAjZjNlOTdhKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KHRvcCwgI2YzYzE3YSwgI2YzZTk3YSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0b3AsICNmM2MxN2EsICNmM2U5N2EpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG4gIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9JyNmM2MxN2EnLCBlbmRDb2xvcnN0cj0nI2YzZTk3YScsIEdyYWRpZW50VHlwZT0wKTtcbiAgYm9yZGVyLWNvbG9yOiAjZjNlOTdhICNmM2U5N2EgI2VkZGUzNDtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMSkgcmdiYSgwLCAwLCAwLCAwLjEpIHJnYmEoMCwgMCwgMCwgMC4yNSk7XG4gIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KGVuYWJsZWQ9ZmFsc2UpO1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDA7XG4gIC1tb3otYm9yZGVyLXJhZGl1czogMDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnJhbmdlLnRvZGF5OmhvdmVyLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2UudG9kYXk6aG92ZXI6aG92ZXIsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5yYW5nZS50b2RheS5kaXNhYmxlZDpob3Zlcixcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnJhbmdlLnRvZGF5LmRpc2FibGVkOmhvdmVyOmhvdmVyLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2UudG9kYXk6YWN0aXZlLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2UudG9kYXk6aG92ZXI6YWN0aXZlLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2UudG9kYXkuZGlzYWJsZWQ6YWN0aXZlLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2UudG9kYXkuZGlzYWJsZWQ6aG92ZXI6YWN0aXZlLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2UudG9kYXkuYWN0aXZlLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2UudG9kYXk6aG92ZXIuYWN0aXZlLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2UudG9kYXkuZGlzYWJsZWQuYWN0aXZlLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2UudG9kYXkuZGlzYWJsZWQ6aG92ZXIuYWN0aXZlLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2UudG9kYXkuZGlzYWJsZWQsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5yYW5nZS50b2RheTpob3Zlci5kaXNhYmxlZCxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnJhbmdlLnRvZGF5LmRpc2FibGVkLmRpc2FibGVkLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2UudG9kYXkuZGlzYWJsZWQ6aG92ZXIuZGlzYWJsZWQsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5yYW5nZS50b2RheVtkaXNhYmxlZF0sXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5yYW5nZS50b2RheTpob3ZlcltkaXNhYmxlZF0sXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5yYW5nZS50b2RheS5kaXNhYmxlZFtkaXNhYmxlZF0sXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5yYW5nZS50b2RheS5kaXNhYmxlZDpob3ZlcltkaXNhYmxlZF0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjNlOTdhO1xufVxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2UudG9kYXk6YWN0aXZlLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2UudG9kYXk6aG92ZXI6YWN0aXZlLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2UudG9kYXkuZGlzYWJsZWQ6YWN0aXZlLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2UudG9kYXkuZGlzYWJsZWQ6aG92ZXI6YWN0aXZlLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2UudG9kYXkuYWN0aXZlLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2UudG9kYXk6aG92ZXIuYWN0aXZlLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2UudG9kYXkuZGlzYWJsZWQuYWN0aXZlLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2UudG9kYXkuZGlzYWJsZWQ6aG92ZXIuYWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VmZTI0YiBcXDk7XG59XG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5zZWxlY3RlZCxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnNlbGVjdGVkOmhvdmVyLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuc2VsZWN0ZWQuZGlzYWJsZWQsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5zZWxlY3RlZC5kaXNhYmxlZDpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM5ZTllOWU7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgI2IzYjNiMywgIzgwODA4MCk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1tcy1saW5lYXItZ3JhZGllbnQodG9wLCAjYjNiM2IzLCAjODA4MDgwKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIDAgMCwgMCAxMDAlLCBmcm9tKCNiM2IzYjMpLCB0bygjODA4MDgwKSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgI2IzYjNiMywgIzgwODA4MCk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCh0b3AsICNiM2IzYjMsICM4MDgwODApO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG9wLCAjYjNiM2IzLCAjODA4MDgwKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPScjYjNiM2IzJywgZW5kQ29sb3JzdHI9JyM4MDgwODAnLCBHcmFkaWVudFR5cGU9MCk7XG4gIGJvcmRlci1jb2xvcjogIzgwODA4MCAjODA4MDgwICM1OTU5NTk7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEpIHJnYmEoMCwgMCwgMCwgMC4xKSByZ2JhKDAsIDAsIDAsIDAuMjUpO1xuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChlbmFibGVkPWZhbHNlKTtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtc2hhZG93OiAwIC0xcHggMCByZ2JhKDAsIDAsIDAsIDAuMjUpO1xufVxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuc2VsZWN0ZWQ6aG92ZXIsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5zZWxlY3RlZDpob3Zlcjpob3Zlcixcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnNlbGVjdGVkLmRpc2FibGVkOmhvdmVyLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuc2VsZWN0ZWQuZGlzYWJsZWQ6aG92ZXI6aG92ZXIsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5zZWxlY3RlZDphY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5zZWxlY3RlZDpob3ZlcjphY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5zZWxlY3RlZC5kaXNhYmxlZDphY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5zZWxlY3RlZC5kaXNhYmxlZDpob3ZlcjphY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5zZWxlY3RlZC5hY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5zZWxlY3RlZDpob3Zlci5hY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5zZWxlY3RlZC5kaXNhYmxlZC5hY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5zZWxlY3RlZC5kaXNhYmxlZDpob3Zlci5hY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5zZWxlY3RlZC5kaXNhYmxlZCxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnNlbGVjdGVkOmhvdmVyLmRpc2FibGVkLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuc2VsZWN0ZWQuZGlzYWJsZWQuZGlzYWJsZWQsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5zZWxlY3RlZC5kaXNhYmxlZDpob3Zlci5kaXNhYmxlZCxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnNlbGVjdGVkW2Rpc2FibGVkXSxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnNlbGVjdGVkOmhvdmVyW2Rpc2FibGVkXSxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnNlbGVjdGVkLmRpc2FibGVkW2Rpc2FibGVkXSxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnNlbGVjdGVkLmRpc2FibGVkOmhvdmVyW2Rpc2FibGVkXSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM4MDgwODA7XG59XG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5zZWxlY3RlZDphY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5zZWxlY3RlZDpob3ZlcjphY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5zZWxlY3RlZC5kaXNhYmxlZDphY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5zZWxlY3RlZC5kaXNhYmxlZDpob3ZlcjphY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5zZWxlY3RlZC5hY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5zZWxlY3RlZDpob3Zlci5hY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5zZWxlY3RlZC5kaXNhYmxlZC5hY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5zZWxlY3RlZC5kaXNhYmxlZDpob3Zlci5hY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjY2NjY2IFxcOTtcbn1cbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmFjdGl2ZSxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmFjdGl2ZTpob3Zlcixcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmFjdGl2ZS5kaXNhYmxlZCxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmFjdGl2ZS5kaXNhYmxlZDpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDZkY2M7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgIzAwODhjYywgIzAwNDRjYyk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1tcy1saW5lYXItZ3JhZGllbnQodG9wLCAjMDA4OGNjLCAjMDA0NGNjKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIDAgMCwgMCAxMDAlLCBmcm9tKCMwMDg4Y2MpLCB0bygjMDA0NGNjKSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgIzAwODhjYywgIzAwNDRjYyk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCh0b3AsICMwMDg4Y2MsICMwMDQ0Y2MpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG9wLCAjMDA4OGNjLCAjMDA0NGNjKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPScjMDA4OGNjJywgZW5kQ29sb3JzdHI9JyMwMDQ0Y2MnLCBHcmFkaWVudFR5cGU9MCk7XG4gIGJvcmRlci1jb2xvcjogIzAwNDRjYyAjMDA0NGNjICMwMDJhODA7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEpIHJnYmEoMCwgMCwgMCwgMC4xKSByZ2JhKDAsIDAsIDAsIDAuMjUpO1xuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChlbmFibGVkPWZhbHNlKTtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtc2hhZG93OiAwIC0xcHggMCByZ2JhKDAsIDAsIDAsIDAuMjUpO1xufVxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlOmhvdmVyLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlOmhvdmVyOmhvdmVyLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlLmRpc2FibGVkOmhvdmVyLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlLmRpc2FibGVkOmhvdmVyOmhvdmVyLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlOmFjdGl2ZSxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmFjdGl2ZTpob3ZlcjphY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5hY3RpdmUuZGlzYWJsZWQ6YWN0aXZlLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlLmRpc2FibGVkOmhvdmVyOmFjdGl2ZSxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmFjdGl2ZS5hY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5hY3RpdmU6aG92ZXIuYWN0aXZlLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlLmRpc2FibGVkLmFjdGl2ZSxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmFjdGl2ZS5kaXNhYmxlZDpob3Zlci5hY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5hY3RpdmUuZGlzYWJsZWQsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5hY3RpdmU6aG92ZXIuZGlzYWJsZWQsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5hY3RpdmUuZGlzYWJsZWQuZGlzYWJsZWQsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5hY3RpdmUuZGlzYWJsZWQ6aG92ZXIuZGlzYWJsZWQsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5hY3RpdmVbZGlzYWJsZWRdLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlOmhvdmVyW2Rpc2FibGVkXSxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmFjdGl2ZS5kaXNhYmxlZFtkaXNhYmxlZF0sXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5hY3RpdmUuZGlzYWJsZWQ6aG92ZXJbZGlzYWJsZWRdIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwNDRjYztcbn1cbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmFjdGl2ZTphY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5hY3RpdmU6aG92ZXI6YWN0aXZlLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlLmRpc2FibGVkOmFjdGl2ZSxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmFjdGl2ZS5kaXNhYmxlZDpob3ZlcjphY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5hY3RpdmUuYWN0aXZlLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlOmhvdmVyLmFjdGl2ZSxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmFjdGl2ZS5kaXNhYmxlZC5hY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5hY3RpdmUuZGlzYWJsZWQ6aG92ZXIuYWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMzM5OSBcXDk7XG59XG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAyMyU7XG4gIGhlaWdodDogNTRweDtcbiAgbGluZS1oZWlnaHQ6IDU0cHg7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW46IDElO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogNHB4O1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDRweDtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xufVxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbjpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICNlZWVlZWU7XG59XG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmRpc2FibGVkLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5kaXNhYmxlZDpob3ZlciB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGNvbG9yOiAjOTk5OTk5O1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZSxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4uYWN0aXZlOmhvdmVyLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmUuZGlzYWJsZWQsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZS5kaXNhYmxlZDpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDZkY2M7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgIzAwODhjYywgIzAwNDRjYyk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1tcy1saW5lYXItZ3JhZGllbnQodG9wLCAjMDA4OGNjLCAjMDA0NGNjKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIDAgMCwgMCAxMDAlLCBmcm9tKCMwMDg4Y2MpLCB0bygjMDA0NGNjKSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgIzAwODhjYywgIzAwNDRjYyk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCh0b3AsICMwMDg4Y2MsICMwMDQ0Y2MpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG9wLCAjMDA4OGNjLCAjMDA0NGNjKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPScjMDA4OGNjJywgZW5kQ29sb3JzdHI9JyMwMDQ0Y2MnLCBHcmFkaWVudFR5cGU9MCk7XG4gIGJvcmRlci1jb2xvcjogIzAwNDRjYyAjMDA0NGNjICMwMDJhODA7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEpIHJnYmEoMCwgMCwgMCwgMC4xKSByZ2JhKDAsIDAsIDAsIDAuMjUpO1xuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChlbmFibGVkPWZhbHNlKTtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtc2hhZG93OiAwIC0xcHggMCByZ2JhKDAsIDAsIDAsIDAuMjUpO1xufVxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmU6aG92ZXIsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZTpob3Zlcjpob3Zlcixcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4uYWN0aXZlLmRpc2FibGVkOmhvdmVyLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmUuZGlzYWJsZWQ6aG92ZXI6aG92ZXIsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZTphY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZTpob3ZlcjphY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZS5kaXNhYmxlZDphY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZS5kaXNhYmxlZDpob3ZlcjphY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZS5hY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZTpob3Zlci5hY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZS5kaXNhYmxlZC5hY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZS5kaXNhYmxlZDpob3Zlci5hY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZS5kaXNhYmxlZCxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4uYWN0aXZlOmhvdmVyLmRpc2FibGVkLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmUuZGlzYWJsZWQuZGlzYWJsZWQsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZS5kaXNhYmxlZDpob3Zlci5kaXNhYmxlZCxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4uYWN0aXZlW2Rpc2FibGVkXSxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4uYWN0aXZlOmhvdmVyW2Rpc2FibGVkXSxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4uYWN0aXZlLmRpc2FibGVkW2Rpc2FibGVkXSxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4uYWN0aXZlLmRpc2FibGVkOmhvdmVyW2Rpc2FibGVkXSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDQ0Y2M7XG59XG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZTphY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZTpob3ZlcjphY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZS5kaXNhYmxlZDphY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZS5kaXNhYmxlZDpob3ZlcjphY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZS5hY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZTpob3Zlci5hY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZS5kaXNhYmxlZC5hY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZS5kaXNhYmxlZDpob3Zlci5hY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAzMzk5IFxcOTtcbn1cbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4ub2xkLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5uZXcge1xuICBjb2xvcjogIzk5OTk5OTtcbn1cbi5kYXRlcGlja2VyIHRoLmRhdGVwaWNrZXItc3dpdGNoIHtcbiAgd2lkdGg6IDE0NXB4O1xufVxuLmRhdGVwaWNrZXIgdGhlYWQgdHI6Zmlyc3QtY2hpbGQgdGgsXG4uZGF0ZXBpY2tlciB0Zm9vdCB0ciB0aCB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbi5kYXRlcGlja2VyIHRoZWFkIHRyOmZpcnN0LWNoaWxkIHRoOmhvdmVyLFxuLmRhdGVwaWNrZXIgdGZvb3QgdHIgdGg6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjZWVlZWVlO1xufVxuLmRhdGVwaWNrZXIgLmN3IHtcbiAgZm9udC1zaXplOiAxMHB4O1xuICB3aWR0aDogMTJweDtcbiAgcGFkZGluZzogMCAycHggMCA1cHg7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG4uZGF0ZXBpY2tlciB0aGVhZCB0cjpmaXJzdC1jaGlsZCB0aC5jdyB7XG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4uaW5wdXQtYXBwZW5kLmRhdGUgLmFkZC1vbiBpLFxuLmlucHV0LXByZXBlbmQuZGF0ZSAuYWRkLW9uIGkge1xuICBkaXNwbGF5OiBibG9jaztcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB3aWR0aDogMTZweDtcbiAgaGVpZ2h0OiAxNnB4O1xufVxuLmlucHV0LWRhdGVyYW5nZSBpbnB1dCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi5pbnB1dC1kYXRlcmFuZ2UgaW5wdXQ6Zmlyc3QtY2hpbGQge1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDNweCAwIDAgM3B4O1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDNweCAwIDAgM3B4O1xuICBib3JkZXItcmFkaXVzOiAzcHggMCAwIDNweDtcbn1cbi5pbnB1dC1kYXRlcmFuZ2UgaW5wdXQ6bGFzdC1jaGlsZCB7XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMCAzcHggM3B4IDA7XG4gIC1tb3otYm9yZGVyLXJhZGl1czogMCAzcHggM3B4IDA7XG4gIGJvcmRlci1yYWRpdXM6IDAgM3B4IDNweCAwO1xufVxuLmlucHV0LWRhdGVyYW5nZSAuYWRkLW9uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogYXV0bztcbiAgbWluLXdpZHRoOiAxNnB4O1xuICBoZWlnaHQ6IDE4cHg7XG4gIHBhZGRpbmc6IDRweCA1cHg7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtc2hhZG93OiAwIDFweCAwICNmZmZmZmY7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlZWVlZWU7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjY2M7XG4gIG1hcmdpbi1sZWZ0OiAtNXB4O1xuICBtYXJnaW4tcmlnaHQ6IC01cHg7XG59XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=*/