/*!****************************************************************************************************************************************************************************************!*\
  !*** 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.18.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-academia:before {
  content: "\e98f";
}

.icon-x:before {
  content: "\e98a";
}

.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-suggest-index:before {
  content: "\e942";
}

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

.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: 400px;
}

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 {
  transform: rotate(0);
  padding: 20px 18px 18px 18px;
  margin-right: 0;
  /* 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 */
#ssheader-info {
  line-height: initial;
  word-wrap: break-word;
  width: 15%;
}

#searchHeaderList {
  max-height: 45px;
  margin-right: auto;
  margin-left: auto;
  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) {
  #ssheader-info {
    line-height: 50px;
    width: initial;
  }
  #searchHeaderList {
    width: 90% !important;
    margin: 0 !important;
    min-width: unset;
  }
}

@media (min-width: 992px) and (max-width: 1199.98px) {
  #disciplineList {
    display: none;
  }
  #ssheader-info {
    width: 10%;
  }
  #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.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 ul {
  margin-top: 15px;
  margin-left: 22px;
  padding-bottom: 15px;
  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;
}

.hal-domains-and-skills .hal-bgtext {
  cursor: default;
}

.hal-domains-and-skills .hal-bgtext:hover {
  cursor: default;
}

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

#aut-struct .overlay-container {
  position: relative;
}

#aut-struct .overlay {
  position: absolute;
  top: 50%;
  left: 50%;
  opacity: 0.5;
  transform: translate(-50%, -50%);
  width: 100%;
  height: 100%;
  z-index: 999;
  background-color: #f6f6f6;
  display: none;
}

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

#files thead th {
  border-bottom: 0;
}

#files tbody:before {
  height: 1em;
  display: table-row;
  content: '';
}

#files .details:hover {
  cursor: pointer;
}

.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, .file-info {
  background: #efefef;
  margin-top: -15px;
}

.extract-info > div, .author-info > div, .mainmeta-info > div, .related-info > div, .file-info > div {
  padding: 35px;
  word-break: break-word;
}

.extract-info > div.errors, .author-info > div.errors, .mainmeta-info > div.errors, .related-info > div.errors, .file-info > div.errors {
  color: #B94A48;
}

.extract-info .extract-meta, .author-info .extract-meta, .mainmeta-info .extract-meta, .related-info .extract-meta, .file-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, .file-info .close-extract-info, .file-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;
  max-height: 20vh;
  overflow-y: auto;
  overflow-x: clip;
}

div.authors td {
  vertical-align: middle;
}

div.authors .table {
  margin-bottom: 0;
  border-collapse: separate;
  border-spacing: 0 5px;
}

div.authors.author_select {
  max-height: 85vh;
  overflow-x: auto;
}

div.authors tr.author {
  min-height: 120px;
}

div.authors .author-state-highlight td {
  height: 60px;
  border: 2px dashed #e6e6e6;
}

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 {
  padding-left: 20px !important;
  color: #797676;
  width: 50px;
}

div.authors .author-icon-drag .sortable-accessibility {
  /* Chrome, Safari, Edge, Opera */
  /* Firefox */
}

div.authors .author-icon-drag .sortable-accessibility input {
  font-size: 0.7rem;
  width: 40px;
}

div.authors .author-icon-drag .sortable-accessibility input::-webkit-outer-spin-button,
div.authors .author-icon-drag .sortable-accessibility input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

div.authors .author-icon-drag .sortable-accessibility input[type=number] {
  -moz-appearance: textfield;
}

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 h5 {
  font-weight: bold;
}

div.authors .author-info .id-hal-author {
  color: #797676;
}

div.authors .author-icon-edit {
  text-align: right;
  padding-right: 20px !important;
  color: #797676;
  width: 50px;
}

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;
  min-width: 300px;
}

div.authors .author-affiliations .form-group {
  margin-left: 40px;
}

div.authors .author-affiliations .searchStructure {
  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: 50px;
}

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, .hal-duplicate-entry h6 {
  padding: 10px;
}

.hal-duplicate-entry h5 {
  font-size: 0.9rem;
  color: #B94A48;
  background-color: #f7ebea;
}

.hal-duplicate-entry h6 {
  font-size: 0.6875rem;
  color: #AA8F52;
  background-color: #fcf8e3;
}

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

body.env-development .navbar-brand.logo-HAL::after, body.env-testing .navbar-brand.logo-HAL::after, body.env-preprod .navbar-brand.logo-HAL::after {
  color: white;
  content: "development";
  background: red;
  padding: 0 5px;
  font-size: 10px;
}

body.env-testing .navbar-brand.logo-HAL::after {
  content: "testing";
}

body.env-preprod .navbar-brand.logo-HAL::after {
  color: #00005c;
  content: "preprod";
  background: yellow;
}

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

/* Moderation */
.deleted {
  text-decoration: line-through;
  background-color: #f5c6cb !important;
}

/**********************
       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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QUErQjtFQUUvQixrQkFBa0I7RUFDbEIsOENBQThDO0F4RDZvTWhEOztBd0Qxb01BO0VBQ0UsV3BEZ2tDNEI7RW9EL2pDNUIsWXBEK2pDNEI7RW9EOWpDNUIsbUJwRGdrQzRCO0FKNmtLOUI7O0F3RHRvTUE7RUFDRTtJQUNFLG1CQUFtQjtFeER5b01yQjtFd0R2b01BO0lBQ0UsVUFBVTtJQUNWLGVBQWU7RXhEeW9NakI7QUFDRjs7QXdEdG9NQTtFQUNFLHFCQUFxQjtFQUNyQixXcERzaUM0QjtFb0RyaUM1QixZcERxaUM0QjtFb0RwaUM1Qix3QnBEc2lDK0I7RW9EcmlDL0IsOEJBQThCO0VBRTlCLGtCQUFrQjtFQUNsQixVQUFVO0VBQ1YsNENBQTRDO0F4RHdvTTlDOztBd0Ryb01BO0VBQ0UsV3BEZ2lDNEI7RW9EL2hDNUIsWXBEK2hDNEI7QUp5bUs5Qjs7QXdEcG9NRTtFQUNFOztJQUVFLHdCQUF3QjtFeER1b001QjtBQUNGOztBeURuc01BO0VBQXFCLG1DQUFtQztBekR1c014RDs7QXlEdHNNQTtFQUFxQiw4QkFBOEI7QXpEMHNNbkQ7O0F5RHpzTUE7RUFBcUIsaUNBQWlDO0F6RDZzTXREOztBeUQ1c01BO0VBQXFCLGlDQUFpQztBekRndE10RDs7QXlEL3NNQTtFQUFxQixzQ0FBc0M7QXpEbXRNM0Q7O0F5RGx0TUE7RUFBcUIsbUNBQW1DO0F6RHN0TXhEOztBMER4dE1FO0VBQ0Usb0NBQW1DO0ExRDJ0TXZDOztBTWp0TUU7OztFb0RMSSxvQ0FBZ0Q7QTFENHRNdEQ7O0EwRGx1TUU7RUFDRSxvQ0FBbUM7QTFEcXVNdkM7O0FNM3RNRTs7O0VvRExJLG9DQUFnRDtBMURzdU10RDs7QTBENXVNRTtFQUNFLG9DQUFtQztBMUQrdU12Qzs7QU1ydU1FOzs7RW9ETEksb0NBQWdEO0ExRGd2TXREOztBMER0dk1FO0VBQ0Usb0NBQW1DO0ExRHl2TXZDOztBTS91TUU7OztFb0RMSSxvQ0FBZ0Q7QTFEMHZNdEQ7O0EwRGh3TUU7RUFDRSxvQ0FBbUM7QTFEbXdNdkM7O0FNenZNRTs7O0VvRExJLG9DQUFnRDtBMURvd010RDs7QTBEMXdNRTtFQUNFLG9DQUFtQztBMUQ2d012Qzs7QU1ud01FOzs7RW9ETEksb0NBQWdEO0ExRDh3TXREOztBMERweE1FO0VBQ0Usb0NBQW1DO0ExRHV4TXZDOztBTTd3TUU7OztFb0RMSSxvQ0FBZ0Q7QTFEd3hNdEQ7O0EwRDl4TUU7RUFDRSxvQ0FBbUM7QTFEaXlNdkM7O0FNdnhNRTs7O0VvRExJLG9DQUFnRDtBMURreU10RDs7QTJEanlNQTtFQUNFLGlDQUFtQztBM0RveU1yQzs7QTJEanlNQTtFQUNFLHdDQUF3QztBM0RveU0xQzs7QTREL3lNQTtFQUFrQixvQ0FBb0Q7QTVEbXpNdEU7O0E0RGx6TUE7RUFBa0Isd0NBQXdEO0E1RHN6TTFFOztBNERyek1BO0VBQWtCLDBDQUEwRDtBNUR5ek01RTs7QTREeHpNQTtFQUFrQiwyQ0FBMkQ7QTVENHpNN0U7O0E0RDN6TUE7RUFBa0IseUNBQXlEO0E1RCt6TTNFOztBNEQ3ek1BO0VBQW1CLG9CQUFvQjtBNURpME12Qzs7QTREaDBNQTtFQUFtQix3QkFBd0I7QTVEbzBNM0M7O0E0RG4wTUE7RUFBbUIsMEJBQTBCO0E1RHUwTTdDOztBNER0ME1BO0VBQW1CLDJCQUEyQjtBNUQwME05Qzs7QTREejBNQTtFQUFtQix5QkFBeUI7QTVENjBNNUM7O0E0RDEwTUU7RUFDRSxnQ0FBK0I7QTVENjBNbkM7O0E0RDkwTUU7RUFDRSxnQ0FBK0I7QTVEaTFNbkM7O0E0RGwxTUU7RUFDRSxnQ0FBK0I7QTVEcTFNbkM7O0E0RHQxTUU7RUFDRSxnQ0FBK0I7QTVEeTFNbkM7O0E0RDExTUU7RUFDRSxnQ0FBK0I7QTVENjFNbkM7O0E0RDkxTUU7RUFDRSxnQ0FBK0I7QTVEaTJNbkM7O0E0RGwyTUU7RUFDRSxnQ0FBK0I7QTVEcTJNbkM7O0E0RHQyTUU7RUFDRSxnQ0FBK0I7QTVEeTJNbkM7O0E0RHIyTUE7RUFDRSw2QkFBK0I7QTVEdzJNakM7O0E0RGoyTUE7RUFDRSxnQ0FBMkM7QTVEbzJNN0M7O0E0RGoyTUE7RUFDRSxpQ0FBd0M7QTVEbzJNMUM7O0E0RGoyTUE7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QkFBeUI7QS9Ea3JOM0Q7O0ErRGhyTkk7RUFBb0Msc0NBQXNDO0EvRG9yTjlFOztBK0Ruck5JO0VBQW9DLG9DQUFvQztBL0R1ck41RTs7QStEdHJOSTtFQUFvQyxrQ0FBa0M7QS9EMHJOMUU7O0ErRHpyTkk7RUFBb0MseUNBQXlDO0EvRDZyTmpGOztBK0Q1ck5JO0VBQW9DLHdDQUF3QztBL0Rnc05oRjs7QStEOXJOSTtFQUFpQyxrQ0FBa0M7QS9Ea3NOdkU7O0ErRGpzTkk7RUFBaUMsZ0NBQWdDO0EvRHFzTnJFOztBK0Rwc05JO0VBQWlDLDhCQUE4QjtBL0R3c05uRTs7QStEdnNOSTtFQUFpQyxnQ0FBZ0M7QS9EMnNOckU7O0ErRDFzTkk7RUFBaUMsK0JBQStCO0EvRDhzTnBFOztBK0Q1c05JO0VBQWtDLG9DQUFvQztBL0RndE4xRTs7QStEL3NOSTtFQUFrQyxrQ0FBa0M7QS9EbXROeEU7O0ErRGx0Tkk7RUFBa0MsZ0NBQWdDO0EvRHN0TnRFOztBK0RydE5JO0VBQWtDLHVDQUF1QztBL0R5dE43RTs7QStEeHROSTtFQUFrQyxzQ0FBc0M7QS9ENHRONUU7O0ErRDN0Tkk7RUFBa0MsaUNBQWlDO0EvRCt0TnZFOztBK0Q3dE5JO0VBQWdDLDJCQUEyQjtBL0RpdU4vRDs7QStEaHVOSTtFQUFnQyxpQ0FBaUM7QS9Eb3VOckU7O0ErRG51Tkk7RUFBZ0MsK0JBQStCO0EvRHV1Tm5FOztBK0R0dU5JO0VBQWdDLDZCQUE2QjtBL0QwdU5qRTs7QStEenVOSTtFQUFnQywrQkFBK0I7QS9ENnVObkU7O0ErRDV1Tkk7RUFBZ0MsOEJBQThCO0EvRGd2TmxFOztBZXB1Tkk7RWdEbERBO0lBQWdDLDhCQUE4QjtFL0QyeE5oRTtFK0QxeE5FO0lBQWdDLGlDQUFpQztFL0Q2eE5uRTtFK0Q1eE5FO0lBQWdDLHNDQUFzQztFL0QreE54RTtFK0Q5eE5FO0lBQWdDLHlDQUF5QztFL0RpeU4zRTtFK0QveE5FO0lBQThCLDBCQUEwQjtFL0RreU4xRDtFK0RqeU5FO0lBQThCLDRCQUE0QjtFL0RveU41RDtFK0RueU5FO0lBQThCLGtDQUFrQztFL0RzeU5sRTtFK0RyeU5FO0lBQThCLHlCQUF5QjtFL0R3eU56RDtFK0R2eU5FO0lBQThCLHVCQUF1QjtFL0QweU52RDtFK0R6eU5FO0lBQThCLHVCQUF1QjtFL0Q0eU52RDtFK0QzeU5FO0lBQThCLHlCQUF5QjtFL0Q4eU56RDtFK0Q3eU5FO0lBQThCLHlCQUF5QjtFL0Rnek56RDtFK0Q5eU5FO0lBQW9DLHNDQUFzQztFL0Rpek41RTtFK0Roek5FO0lBQW9DLG9DQUFvQztFL0Rtek4xRTtFK0Rsek5FO0lBQW9DLGtDQUFrQztFL0Rxek54RTtFK0Rwek5FO0lBQW9DLHlDQUF5QztFL0R1ek4vRTtFK0R0ek5FO0lBQW9DLHdDQUF3QztFL0R5ek45RTtFK0R2ek5FO0lBQWlDLGtDQUFrQztFL0Qwek5yRTtFK0R6ek5FO0lBQWlDLGdDQUFnQztFL0Q0ek5uRTtFK0Qzek5FO0lBQWlDLDhCQUE4QjtFL0Q4ek5qRTtFK0Q3ek5FO0lBQWlDLGdDQUFnQztFL0RnME5uRTtFK0Qvek5FO0lBQWlDLCtCQUErQjtFL0RrME5sRTtFK0RoME5FO0lBQWtDLG9DQUFvQztFL0RtME54RTtFK0RsME5FO0lBQWtDLGtDQUFrQztFL0RxME50RTtFK0RwME5FO0lBQWtDLGdDQUFnQztFL0R1ME5wRTtFK0R0ME5FO0lBQWtDLHVDQUF1QztFL0R5ME4zRTtFK0R4ME5FO0lBQWtDLHNDQUFzQztFL0QyME4xRTtFK0QxME5FO0lBQWtDLGlDQUFpQztFL0Q2ME5yRTtFK0QzME5FO0lBQWdDLDJCQUEyQjtFL0Q4ME43RDtFK0Q3ME5FO0lBQWdDLGlDQUFpQztFL0RnMU5uRTtFK0QvME5FO0lBQWdDLCtCQUErQjtFL0RrMU5qRTtFK0RqMU5FO0lBQWdDLDZCQUE2QjtFL0RvMU4vRDtFK0RuMU5FO0lBQWdDLCtCQUErQjtFL0RzMU5qRTtFK0RyMU5FO0lBQWdDLDhCQUE4QjtFL0R3MU5oRTtBQUNGOztBZTcwTkk7RWdEbERBO0lBQWdDLDhCQUE4QjtFL0RvNE5oRTtFK0RuNE5FO0lBQWdDLGlDQUFpQztFL0RzNE5uRTtFK0RyNE5FO0lBQWdDLHNDQUFzQztFL0R3NE54RTtFK0R2NE5FO0lBQWdDLHlDQUF5QztFL0QwNE4zRTtFK0R4NE5FO0lBQThCLDBCQUEwQjtFL0QyNE4xRDtFK0QxNE5FO0lBQThCLDRCQUE0QjtFL0Q2NE41RDtFK0Q1NE5FO0lBQThCLGtDQUFrQztFL0QrNE5sRTtFK0Q5NE5FO0lBQThCLHlCQUF5QjtFL0RpNU56RDtFK0RoNU5FO0lBQThCLHVCQUF1QjtFL0RtNU52RDtFK0RsNU5FO0lBQThCLHVCQUF1QjtFL0RxNU52RDtFK0RwNU5FO0lBQThCLHlCQUF5QjtFL0R1NU56RDtFK0R0NU5FO0lBQThCLHlCQUF5QjtFL0R5NU56RDtFK0R2NU5FO0lBQW9DLHNDQUFzQztFL0QwNU41RTtFK0R6NU5FO0lBQW9DLG9DQUFvQztFL0Q0NU4xRTtFK0QzNU5FO0lBQW9DLGtDQUFrQztFL0Q4NU54RTtFK0Q3NU5FO0lBQW9DLHlDQUF5QztFL0RnNk4vRTtFK0QvNU5FO0lBQW9DLHdDQUF3QztFL0RrNk45RTtFK0RoNk5FO0lBQWlDLGtDQUFrQztFL0RtNk5yRTtFK0RsNk5FO0lBQWlDLGdDQUFnQztFL0RxNk5uRTtFK0RwNk5FO0lBQWlDLDhCQUE4QjtFL0R1Nk5qRTtFK0R0Nk5FO0lBQWlDLGdDQUFnQztFL0R5Nk5uRTtFK0R4Nk5FO0lBQWlDLCtCQUErQjtFL0QyNk5sRTtFK0R6Nk5FO0lBQWtDLG9DQUFvQztFL0Q0Nk54RTtFK0QzNk5FO0lBQWtDLGtDQUFrQztFL0Q4Nk50RTtFK0Q3Nk5FO0lBQWtDLGdDQUFnQztFL0RnN05wRTtFK0QvNk5FO0lBQWtDLHVDQUF1QztFL0RrN04zRTtFK0RqN05FO0lBQWtDLHNDQUFzQztFL0RvN04xRTtFK0RuN05FO0lBQWtDLGlDQUFpQztFL0RzN05yRTtFK0RwN05FO0lBQWdDLDJCQUEyQjtFL0R1N043RDtFK0R0N05FO0lBQWdDLGlDQUFpQztFL0R5N05uRTtFK0R4N05FO0lBQWdDLCtCQUErQjtFL0QyN05qRTtFK0QxN05FO0lBQWdDLDZCQUE2QjtFL0Q2N04vRDtFK0Q1N05FO0lBQWdDLCtCQUErQjtFL0QrN05qRTtFK0Q5N05FO0lBQWdDLDhCQUE4QjtFL0RpOE5oRTtBQUNGOztBZXQ3Tkk7RWdEbERBO0lBQWdDLDhCQUE4QjtFL0Q2K05oRTtFK0Q1K05FO0lBQWdDLGlDQUFpQztFL0QrK05uRTtFK0Q5K05FO0lBQWdDLHNDQUFzQztFL0RpL054RTtFK0RoL05FO0lBQWdDLHlDQUF5QztFL0RtL04zRTtFK0RqL05FO0lBQThCLDBCQUEwQjtFL0RvL04xRDtFK0RuL05FO0lBQThCLDRCQUE0QjtFL0RzL041RDtFK0RyL05FO0lBQThCLGtDQUFrQztFL0R3L05sRTtFK0R2L05FO0lBQThCLHlCQUF5QjtFL0QwL056RDtFK0R6L05FO0lBQThCLHVCQUF1QjtFL0Q0L052RDtFK0QzL05FO0lBQThCLHVCQUF1QjtFL0Q4L052RDtFK0Q3L05FO0lBQThCLHlCQUF5QjtFL0RnZ096RDtFK0QvL05FO0lBQThCLHlCQUF5QjtFL0RrZ096RDtFK0RoZ09FO0lBQW9DLHNDQUFzQztFL0RtZ081RTtFK0RsZ09FO0lBQW9DLG9DQUFvQztFL0RxZ08xRTtFK0RwZ09FO0lBQW9DLGtDQUFrQztFL0R1Z094RTtFK0R0Z09FO0lBQW9DLHlDQUF5QztFL0R5Z08vRTtFK0R4Z09FO0lBQW9DLHdDQUF3QztFL0QyZ085RTtFK0R6Z09FO0lBQWlDLGtDQUFrQztFL0Q0Z09yRTtFK0QzZ09FO0lBQWlDLGdDQUFnQztFL0Q4Z09uRTtFK0Q3Z09FO0lBQWlDLDhCQUE4QjtFL0RnaE9qRTtFK0QvZ09FO0lBQWlDLGdDQUFnQztFL0RraE9uRTtFK0RqaE9FO0lBQWlDLCtCQUErQjtFL0RvaE9sRTtFK0RsaE9FO0lBQWtDLG9DQUFvQztFL0RxaE94RTtFK0RwaE9FO0lBQWtDLGtDQUFrQztFL0R1aE90RTtFK0R0aE9FO0lBQWtDLGdDQUFnQztFL0R5aE9wRTtFK0R4aE9FO0lBQWtDLHVDQUF1QztFL0QyaE8zRTtFK0QxaE9FO0lBQWtDLHNDQUFzQztFL0Q2aE8xRTtFK0Q1aE9FO0lBQWtDLGlDQUFpQztFL0QraE9yRTtFK0Q3aE9FO0lBQWdDLDJCQUEyQjtFL0RnaU83RDtFK0QvaE9FO0lBQWdDLGlDQUFpQztFL0RraU9uRTtFK0RqaU9FO0lBQWdDLCtCQUErQjtFL0RvaU9qRTtFK0RuaU9FO0lBQWdDLDZCQUE2QjtFL0RzaU8vRDtFK0RyaU9FO0lBQWdDLCtCQUErQjtFL0R3aU9qRTtFK0R2aU9FO0lBQWdDLDhCQUE4QjtFL0QwaU9oRTtBQUNGOztBZS9oT0k7RWdEbERBO0lBQWdDLDhCQUE4QjtFL0RzbE9oRTtFK0RybE9FO0lBQWdDLGlDQUFpQztFL0R3bE9uRTtFK0R2bE9FO0lBQWdDLHNDQUFzQztFL0QwbE94RTtFK0R6bE9FO0lBQWdDLHlDQUF5QztFL0Q0bE8zRTtFK0QxbE9FO0lBQThCLDBCQUEwQjtFL0Q2bE8xRDtFK0Q1bE9FO0lBQThCLDRCQUE0QjtFL0QrbE81RDtFK0Q5bE9FO0lBQThCLGtDQUFrQztFL0RpbU9sRTtFK0RobU9FO0lBQThCLHlCQUF5QjtFL0RtbU96RDtFK0RsbU9FO0lBQThCLHVCQUF1QjtFL0RxbU92RDtFK0RwbU9FO0lBQThCLHVCQUF1QjtFL0R1bU92RDtFK0R0bU9FO0lBQThCLHlCQUF5QjtFL0R5bU96RDtFK0R4bU9FO0lBQThCLHlCQUF5QjtFL0QybU96RDtFK0R6bU9FO0lBQW9DLHNDQUFzQztFL0Q0bU81RTtFK0QzbU9FO0lBQW9DLG9DQUFvQztFL0Q4bU8xRTtFK0Q3bU9FO0lBQW9DLGtDQUFrQztFL0Rnbk94RTtFK0QvbU9FO0lBQW9DLHlDQUF5QztFL0Rrbk8vRTtFK0Rqbk9FO0lBQW9DLHdDQUF3QztFL0Rvbk85RTtFK0Rsbk9FO0lBQWlDLGtDQUFrQztFL0Rxbk9yRTtFK0Rwbk9FO0lBQWlDLGdDQUFnQztFL0R1bk9uRTtFK0R0bk9FO0lBQWlDLDhCQUE4QjtFL0R5bk9qRTtFK0R4bk9FO0lBQWlDLGdDQUFnQztFL0Qybk9uRTtFK0Qxbk9FO0lBQWlDLCtCQUErQjtFL0Q2bk9sRTtFK0Qzbk9FO0lBQWtDLG9DQUFvQztFL0Q4bk94RTtFK0Q3bk9FO0lBQWtDLGtDQUFrQztFL0Rnb090RTtFK0Qvbk9FO0lBQWtDLGdDQUFnQztFL0Rrb09wRTtFK0Rqb09FO0lBQWtDLHVDQUF1QztFL0Rvb08zRTtFK0Rub09FO0lBQWtDLHNDQUFzQztFL0Rzb08xRTtFK0Ryb09FO0lBQWtDLGlDQUFpQztFL0R3b09yRTtFK0R0b09FO0lBQWdDLDJCQUEyQjtFL0R5b083RDtFK0R4b09FO0lBQWdDLGlDQUFpQztFL0Qyb09uRTtFK0Qxb09FO0lBQWdDLCtCQUErQjtFL0Q2b09qRTtFK0Q1b09FO0lBQWdDLDZCQUE2QjtFL0Qrb08vRDtFK0Q5b09FO0lBQWdDLCtCQUErQjtFL0RpcE9qRTtFK0RocE9FO0lBQWdDLDhCQUE4QjtFL0RtcE9oRTtBQUNGOztBZ0U5ck9JO0VBQXdCLHNCQUFzQjtBaEVrc09sRDs7QWdFanNPSTtFQUF3Qix1QkFBdUI7QWhFcXNPbkQ7O0FnRXBzT0k7RUFBd0Isc0JBQXNCO0FoRXdzT2xEOztBZXBwT0k7RWlEdERBO0lBQXdCLHNCQUFzQjtFaEUrc09oRDtFZ0U5c09FO0lBQXdCLHVCQUF1QjtFaEVpdE9qRDtFZ0VodE9FO0lBQXdCLHNCQUFzQjtFaEVtdE9oRDtBQUNGOztBZWhxT0k7RWlEdERBO0lBQXdCLHNCQUFzQjtFaEUydE9oRDtFZ0UxdE9FO0lBQXdCLHVCQUF1QjtFaEU2dE9qRDtFZ0U1dE9FO0lBQXdCLHNCQUFzQjtFaEUrdE9oRDtBQUNGOztBZTVxT0k7RWlEdERBO0lBQXdCLHNCQUFzQjtFaEV1dU9oRDtFZ0V0dU9FO0lBQXdCLHVCQUF1QjtFaEV5dU9qRDtFZ0V4dU9FO0lBQXdCLHNCQUFzQjtFaEUydU9oRDtBQUNGOztBZXhyT0k7RWlEdERBO0lBQXdCLHNCQUFzQjtFaEVtdk9oRDtFZ0Vsdk9FO0lBQXdCLHVCQUF1QjtFaEVxdk9qRDtFZ0Vwdk9FO0lBQXdCLHNCQUFzQjtFaEV1dk9oRDtBQUNGOztBaUU3dk9FO0VBQXlCLDJCQUE4QjtBakVpd096RDs7QWlFandPRTtFQUF5Qiw0QkFBOEI7QWpFcXdPekQ7O0FpRXJ3T0U7RUFBeUIsNEJBQThCO0FqRXl3T3pEOztBa0V6d09FO0VBQXNCLHlCQUEyQjtBbEU2d09uRDs7QWtFN3dPRTtFQUFzQiwyQkFBMkI7QWxFaXhPbkQ7O0FtRWh4T0U7RUFBeUIsMkJBQThCO0FuRW94T3pEOztBbUVweE9FO0VBQXlCLDZCQUE4QjtBbkV3eE96RDs7QW1FeHhPRTtFQUF5Qiw2QkFBOEI7QW5FNHhPekQ7O0FtRTV4T0U7RUFBeUIsMEJBQThCO0FuRWd5T3pEOztBbUVoeU9FO0VBQXlCLDJCQUE4QjtBbkVveU96RDs7QW1FL3hPQTtFQUNFLGVBQWU7RUFDZixNQUFNO0VBQ04sUUFBUTtFQUNSLE9BQU87RUFDUCxhL0RpcUJzQztBSmlvTnhDOztBbUUveE9BO0VBQ0UsZUFBZTtFQUNmLFFBQVE7RUFDUixTQUFTO0VBQ1QsT0FBTztFQUNQLGEvRHlwQnNDO0FKeW9OeEM7O0FtRTl4TzhCO0VBRDlCO0lBRUksZ0JBQWdCO0lBQ2hCLE1BQU07SUFDTixhL0RpcEJvQztFSmlwTnRDO0FBQ0Y7O0FvRTV6T0E7RUNFRSxrQkFBa0I7RUFDbEIsVUFBVTtFQUNWLFdBQVc7RUFDWCxVQUFVO0VBQ1YsWUFBWTtFQUNaLGdCQUFnQjtFQUNoQixzQkFBc0I7RUFDdEIsbUJBQW1CO0VBQ25CLFNBQVM7QXJFOHpPWDs7QXFFcHpPRTtFQUVFLGdCQUFnQjtFQUNoQixXQUFXO0VBQ1gsWUFBWTtFQUNaLGlCQUFpQjtFQUNqQixVQUFVO0VBQ1YsbUJBQW1CO0FyRXN6T3ZCOztBc0VuMU9BO0VBQWEsOERBQXFDO0F0RXUxT2xEOztBc0V0MU9BO0VBQVUsd0RBQWtDO0F0RTAxTzVDOztBc0V6MU9BO0VBQWEsdURBQXFDO0F0RTYxT2xEOztBc0U1MU9BO0VBQWUsMkJBQTJCO0F0RWcyTzFDOztBdUUvMU9JO0VBQXVCLHFCQUE0QjtBdkVtMk92RDs7QXVFbjJPSTtFQUF1QixxQkFBNEI7QXZFdTJPdkQ7O0F1RXYyT0k7RUFBdUIscUJBQTRCO0F2RTIyT3ZEOztBdUUzMk9JO0VBQXVCLHNCQUE0QjtBdkUrMk92RDs7QXVFLzJPSTtFQUF1QixzQkFBNEI7QXZFbTNPdkQ7O0F1RW4zT0k7RUFBdUIsc0JBQTRCO0F2RXUzT3ZEOztBdUV2M09JO0VBQXVCLHNCQUE0QjtBdkUyM092RDs7QXVFMzNPSTtFQUF1QixzQkFBNEI7QXZFKzNPdkQ7O0F1RS8zT0k7RUFBdUIsdUJBQTRCO0F2RW00T3ZEOztBdUVuNE9JO0VBQXVCLHVCQUE0QjtBdkV1NE92RDs7QXVFbjRPQTtFQUFVLDBCQUEwQjtBdkV1NE9wQzs7QXVFdDRPQTtFQUFVLDJCQUEyQjtBdkUwNE9yQzs7QXVFdDRPQTtFQUFjLDJCQUEyQjtBdkUwNE96Qzs7QXVFejRPQTtFQUFjLDRCQUE0QjtBdkU2NE8xQzs7QXVFMzRPQTtFQUFVLHVCQUF1QjtBdkUrNE9qQzs7QXVFOTRPQTtFQUFVLHdCQUF3QjtBdkVrNU9sQzs7QXdFMzVPUTtFQUFnQyxvQkFBNEI7QXhFKzVPcEU7O0F3RTk1T1E7O0VBRUUsd0JBQW9DO0F4RWk2TzlDOztBd0UvNU9ROztFQUVFLDBCQUF3QztBeEVrNk9sRDs7QXdFaDZPUTs7RUFFRSwyQkFBMEM7QXhFbTZPcEQ7O0F3RWo2T1E7O0VBRUUseUJBQXNDO0F4RW82T2hEOztBd0VuN09RO0VBQWdDLDBCQUE0QjtBeEV1N09wRTs7QXdFdDdPUTs7RUFFRSw4QkFBb0M7QXhFeTdPOUM7O0F3RXY3T1E7O0VBRUUsZ0NBQXdDO0F4RTA3T2xEOztBd0V4N09ROztFQUVFLGlDQUEwQztBeEUyN09wRDs7QXdFejdPUTs7RUFFRSwrQkFBc0M7QXhFNDdPaEQ7O0F3RTM4T1E7RUFBZ0MseUJBQTRCO0F4RSs4T3BFOztBd0U5OE9ROztFQUVFLDZCQUFvQztBeEVpOU85Qzs7QXdFLzhPUTs7RUFFRSwrQkFBd0M7QXhFazlPbEQ7O0F3RWg5T1E7O0VBRUUsZ0NBQTBDO0F4RW05T3BEOztBd0VqOU9ROztFQUVFLDhCQUFzQztBeEVvOU9oRDs7QXdFbitPUTtFQUFnQyx1QkFBNEI7QXhFdStPcEU7O0F3RXQrT1E7O0VBRUUsMkJBQW9DO0F4RXkrTzlDOztBd0V2K09ROztFQUVFLDZCQUF3QztBeEUwK09sRDs7QXdFeCtPUTs7RUFFRSw4QkFBMEM7QXhFMitPcEQ7O0F3RXorT1E7O0VBRUUsNEJBQXNDO0F4RTQrT2hEOztBd0UzL09RO0VBQWdDLHlCQUE0QjtBeEUrL09wRTs7QXdFOS9PUTs7RUFFRSw2QkFBb0M7QXhFaWdQOUM7O0F3RS8vT1E7O0VBRUUsK0JBQXdDO0F4RWtnUGxEOztBd0VoZ1BROztFQUVFLGdDQUEwQztBeEVtZ1BwRDs7QXdFamdQUTs7RUFFRSw4QkFBc0M7QXhFb2dQaEQ7O0F3RW5oUFE7RUFBZ0MsdUJBQTRCO0F4RXVoUHBFOztBd0V0aFBROztFQUVFLDJCQUFvQztBeEV5aFA5Qzs7QXdFdmhQUTs7RUFFRSw2QkFBd0M7QXhFMGhQbEQ7O0F3RXhoUFE7O0VBRUUsOEJBQTBDO0F4RTJoUHBEOztBd0V6aFBROztFQUVFLDRCQUFzQztBeEU0aFBoRDs7QXdFM2lQUTtFQUFnQyxxQkFBNEI7QXhFK2lQcEU7O0F3RTlpUFE7O0VBRUUseUJBQW9DO0F4RWlqUDlDOztBd0UvaVBROztFQUVFLDJCQUF3QztBeEVralBsRDs7QXdFaGpQUTs7RUFFRSw0QkFBMEM7QXhFbWpQcEQ7O0F3RWpqUFE7O0VBRUUsMEJBQXNDO0F4RW9qUGhEOztBd0Vua1BRO0VBQWdDLDJCQUE0QjtBeEV1a1BwRTs7QXdFdGtQUTs7RUFFRSwrQkFBb0M7QXhFeWtQOUM7O0F3RXZrUFE7O0VBRUUsaUNBQXdDO0F4RTBrUGxEOztBd0V4a1BROztFQUVFLGtDQUEwQztBeEUya1BwRDs7QXdFemtQUTs7RUFFRSxnQ0FBc0M7QXhFNGtQaEQ7O0F3RTNsUFE7RUFBZ0MsMEJBQTRCO0F4RStsUHBFOztBd0U5bFBROztFQUVFLDhCQUFvQztBeEVpbVA5Qzs7QXdFL2xQUTs7RUFFRSxnQ0FBd0M7QXhFa21QbEQ7O0F3RWhtUFE7O0VBRUUsaUNBQTBDO0F4RW1tUHBEOztBd0VqbVBROztFQUVFLCtCQUFzQztBeEVvbVBoRDs7QXdFbm5QUTtFQUFnQyx3QkFBNEI7QXhFdW5QcEU7O0F3RXRuUFE7O0VBRUUsNEJBQW9DO0F4RXluUDlDOztBd0V2blBROztFQUVFLDhCQUF3QztBeEUwblBsRDs7QXdFeG5QUTs7RUFFRSwrQkFBMEM7QXhFMm5QcEQ7O0F3RXpuUFE7O0VBRUUsNkJBQXNDO0F4RTRuUGhEOztBd0Uzb1BRO0VBQWdDLDBCQUE0QjtBeEUrb1BwRTs7QXdFOW9QUTs7RUFFRSw4QkFBb0M7QXhFaXBQOUM7O0F3RS9vUFE7O0VBRUUsZ0NBQXdDO0F4RWtwUGxEOztBd0VocFBROztFQUVFLGlDQUEwQztBeEVtcFBwRDs7QXdFanBQUTs7RUFFRSwrQkFBc0M7QXhFb3BQaEQ7O0F3RW5xUFE7RUFBZ0Msd0JBQTRCO0F4RXVxUHBFOztBd0V0cVBROztFQUVFLDRCQUFvQztBeEV5cVA5Qzs7QXdFdnFQUTs7RUFFRSw4QkFBd0M7QXhFMHFQbEQ7O0F3RXhxUFE7O0VBRUUsK0JBQTBDO0F4RTJxUHBEOztBd0V6cVBROztFQUVFLDZCQUFzQztBeEU0cVBoRDs7QXdFcHFQUTtFQUF3QiwyQkFBMkI7QXhFd3FQM0Q7O0F3RXZxUFE7O0VBRUUsK0JBQStCO0F4RTBxUHpDOztBd0V4cVBROztFQUVFLGlDQUFpQztBeEUycVAzQzs7QXdFenFQUTs7RUFFRSxrQ0FBa0M7QXhFNHFQNUM7O0F3RTFxUFE7O0VBRUUsZ0NBQWdDO0F4RTZxUDFDOztBd0U1clBRO0VBQXdCLDBCQUEyQjtBeEVnc1AzRDs7QXdFL3JQUTs7RUFFRSw4QkFBK0I7QXhFa3NQekM7O0F3RWhzUFE7O0VBRUUsZ0NBQWlDO0F4RW1zUDNDOztBd0Vqc1BROztFQUVFLGlDQUFrQztBeEVvc1A1Qzs7QXdFbHNQUTs7RUFFRSwrQkFBZ0M7QXhFcXNQMUM7O0F3RXB0UFE7RUFBd0Isd0JBQTJCO0F4RXd0UDNEOztBd0V2dFBROztFQUVFLDRCQUErQjtBeEUwdFB6Qzs7QXdFeHRQUTs7RUFFRSw4QkFBaUM7QXhFMnRQM0M7O0F3RXp0UFE7O0VBRUUsK0JBQWtDO0F4RTR0UDVDOztBd0UxdFBROztFQUVFLDZCQUFnQztBeEU2dFAxQzs7QXdFNXVQUTtFQUF3QiwwQkFBMkI7QXhFZ3ZQM0Q7O0F3RS91UFE7O0VBRUUsOEJBQStCO0F4RWt2UHpDOztBd0VodlBROztFQUVFLGdDQUFpQztBeEVtdlAzQzs7QXdFanZQUTs7RUFFRSxpQ0FBa0M7QXhFb3ZQNUM7O0F3RWx2UFE7O0VBRUUsK0JBQWdDO0F4RXF2UDFDOztBd0Vwd1BRO0VBQXdCLHdCQUEyQjtBeEV3d1AzRDs7QXdFdndQUTs7RUFFRSw0QkFBK0I7QXhFMHdQekM7O0F3RXh3UFE7O0VBRUUsOEJBQWlDO0F4RTJ3UDNDOztBd0V6d1BROztFQUVFLCtCQUFrQztBeEU0d1A1Qzs7QXdFMXdQUTs7RUFFRSw2QkFBZ0M7QXhFNndQMUM7O0F3RXZ3UEk7RUFBbUIsdUJBQXVCO0F4RTJ3UDlDOztBd0Uxd1BJOztFQUVFLDJCQUEyQjtBeEU2d1BqQzs7QXdFM3dQSTs7RUFFRSw2QkFBNkI7QXhFOHdQbkM7O0F3RTV3UEk7O0VBRUUsOEJBQThCO0F4RSt3UHBDOztBd0U3d1BJOztFQUVFLDRCQUE0QjtBeEVneFBsQzs7QWV6eFBJO0V5RGxESTtJQUFnQyxvQkFBNEI7RXhFZzFQbEU7RXdFLzBQTTs7SUFFRSx3QkFBb0M7RXhFaTFQNUM7RXdFLzBQTTs7SUFFRSwwQkFBd0M7RXhFaTFQaEQ7RXdFLzBQTTs7SUFFRSwyQkFBMEM7RXhFaTFQbEQ7RXdFLzBQTTs7SUFFRSx5QkFBc0M7RXhFaTFQOUM7RXdFaDJQTTtJQUFnQywwQkFBNEI7RXhFbTJQbEU7RXdFbDJQTTs7SUFFRSw4QkFBb0M7RXhFbzJQNUM7RXdFbDJQTTs7SUFFRSxnQ0FBd0M7RXhFbzJQaEQ7RXdFbDJQTTs7SUFFRSxpQ0FBMEM7RXhFbzJQbEQ7RXdFbDJQTTs7SUFFRSwrQkFBc0M7RXhFbzJQOUM7RXdFbjNQTTtJQUFnQyx5QkFBNEI7RXhFczNQbEU7RXdFcjNQTTs7SUFFRSw2QkFBb0M7RXhFdTNQNUM7RXdFcjNQTTs7SUFFRSwrQkFBd0M7RXhFdTNQaEQ7RXdFcjNQTTs7SUFFRSxnQ0FBMEM7RXhFdTNQbEQ7RXdFcjNQTTs7SUFFRSw4QkFBc0M7RXhFdTNQOUM7RXdFdDRQTTtJQUFnQyx1QkFBNEI7RXhFeTRQbEU7RXdFeDRQTTs7SUFFRSwyQkFBb0M7RXhFMDRQNUM7RXdFeDRQTTs7SUFFRSw2QkFBd0M7RXhFMDRQaEQ7RXdFeDRQTTs7SUFFRSw4QkFBMEM7RXhFMDRQbEQ7RXdFeDRQTTs7SUFFRSw0QkFBc0M7RXhFMDRQOUM7RXdFejVQTTtJQUFnQyx5QkFBNEI7RXhFNDVQbEU7RXdFMzVQTTs7SUFFRSw2QkFBb0M7RXhFNjVQNUM7RXdFMzVQTTs7SUFFRSwrQkFBd0M7RXhFNjVQaEQ7RXdFMzVQTTs7SUFFRSxnQ0FBMEM7RXhFNjVQbEQ7RXdFMzVQTTs7SUFFRSw4QkFBc0M7RXhFNjVQOUM7RXdFNTZQTTtJQUFnQyx1QkFBNEI7RXhFKzZQbEU7RXdFOTZQTTs7SUFFRSwyQkFBb0M7RXhFZzdQNUM7RXdFOTZQTTs7SUFFRSw2QkFBd0M7RXhFZzdQaEQ7RXdFOTZQTTs7SUFFRSw4QkFBMEM7RXhFZzdQbEQ7RXdFOTZQTTs7SUFFRSw0QkFBc0M7RXhFZzdQOUM7RXdFLzdQTTtJQUFnQyxxQkFBNEI7RXhFazhQbEU7RXdFajhQTTs7SUFFRSx5QkFBb0M7RXhFbThQNUM7RXdFajhQTTs7SUFFRSwyQkFBd0M7RXhFbThQaEQ7RXdFajhQTTs7SUFFRSw0QkFBMEM7RXhFbThQbEQ7RXdFajhQTTs7SUFFRSwwQkFBc0M7RXhFbThQOUM7RXdFbDlQTTtJQUFnQywyQkFBNEI7RXhFcTlQbEU7RXdFcDlQTTs7SUFFRSwrQkFBb0M7RXhFczlQNUM7RXdFcDlQTTs7SUFFRSxpQ0FBd0M7RXhFczlQaEQ7RXdFcDlQTTs7SUFFRSxrQ0FBMEM7RXhFczlQbEQ7RXdFcDlQTTs7SUFFRSxnQ0FBc0M7RXhFczlQOUM7RXdFcitQTTtJQUFnQywwQkFBNEI7RXhFdytQbEU7RXdFditQTTs7SUFFRSw4QkFBb0M7RXhFeStQNUM7RXdFditQTTs7SUFFRSxnQ0FBd0M7RXhFeStQaEQ7RXdFditQTTs7SUFFRSxpQ0FBMEM7RXhFeStQbEQ7RXdFditQTTs7SUFFRSwrQkFBc0M7RXhFeStQOUM7RXdFeC9QTTtJQUFnQyx3QkFBNEI7RXhFMi9QbEU7RXdFMS9QTTs7SUFFRSw0QkFBb0M7RXhFNC9QNUM7RXdFMS9QTTs7SUFFRSw4QkFBd0M7RXhFNC9QaEQ7RXdFMS9QTTs7SUFFRSwrQkFBMEM7RXhFNC9QbEQ7RXdFMS9QTTs7SUFFRSw2QkFBc0M7RXhFNC9QOUM7RXdFM2dRTTtJQUFnQywwQkFBNEI7RXhFOGdRbEU7RXdFN2dRTTs7SUFFRSw4QkFBb0M7RXhFK2dRNUM7RXdFN2dRTTs7SUFFRSxnQ0FBd0M7RXhFK2dRaEQ7RXdFN2dRTTs7SUFFRSxpQ0FBMEM7RXhFK2dRbEQ7RXdFN2dRTTs7SUFFRSwrQkFBc0M7RXhFK2dROUM7RXdFOWhRTTtJQUFnQyx3QkFBNEI7RXhFaWlRbEU7RXdFaGlRTTs7SUFFRSw0QkFBb0M7RXhFa2lRNUM7RXdFaGlRTTs7SUFFRSw4QkFBd0M7RXhFa2lRaEQ7RXdFaGlRTTs7SUFFRSwrQkFBMEM7RXhFa2lRbEQ7RXdFaGlRTTs7SUFFRSw2QkFBc0M7RXhFa2lROUM7RXdFMWhRTTtJQUF3QiwyQkFBMkI7RXhFNmhRekQ7RXdFNWhRTTs7SUFFRSwrQkFBK0I7RXhFOGhRdkM7RXdFNWhRTTs7SUFFRSxpQ0FBaUM7RXhFOGhRekM7RXdFNWhRTTs7SUFFRSxrQ0FBa0M7RXhFOGhRMUM7RXdFNWhRTTs7SUFFRSxnQ0FBZ0M7RXhFOGhReEM7RXdFN2lRTTtJQUF3QiwwQkFBMkI7RXhFZ2pRekQ7RXdFL2lRTTs7SUFFRSw4QkFBK0I7RXhFaWpRdkM7RXdFL2lRTTs7SUFFRSxnQ0FBaUM7RXhFaWpRekM7RXdFL2lRTTs7SUFFRSxpQ0FBa0M7RXhFaWpRMUM7RXdFL2lRTTs7SUFFRSwrQkFBZ0M7RXhFaWpReEM7RXdFaGtRTTtJQUF3Qix3QkFBMkI7RXhFbWtRekQ7RXdFbGtRTTs7SUFFRSw0QkFBK0I7RXhFb2tRdkM7RXdFbGtRTTs7SUFFRSw4QkFBaUM7RXhFb2tRekM7RXdFbGtRTTs7SUFFRSwrQkFBa0M7RXhFb2tRMUM7RXdFbGtRTTs7SUFFRSw2QkFBZ0M7RXhFb2tReEM7RXdFbmxRTTtJQUF3QiwwQkFBMkI7RXhFc2xRekQ7RXdFcmxRTTs7SUFFRSw4QkFBK0I7RXhFdWxRdkM7RXdFcmxRTTs7SUFFRSxnQ0FBaUM7RXhFdWxRekM7RXdFcmxRTTs7SUFFRSxpQ0FBa0M7RXhFdWxRMUM7RXdFcmxRTTs7SUFFRSwrQkFBZ0M7RXhFdWxReEM7RXdFdG1RTTtJQUF3Qix3QkFBMkI7RXhFeW1RekQ7RXdFeG1RTTs7SUFFRSw0QkFBK0I7RXhFMG1RdkM7RXdFeG1RTTs7SUFFRSw4QkFBaUM7RXhFMG1RekM7RXdFeG1RTTs7SUFFRSwrQkFBa0M7RXhFMG1RMUM7RXdFeG1RTTs7SUFFRSw2QkFBZ0M7RXhFMG1ReEM7RXdFcG1RRTtJQUFtQix1QkFBdUI7RXhFdW1RNUM7RXdFdG1RRTs7SUFFRSwyQkFBMkI7RXhFd21RL0I7RXdFdG1RRTs7SUFFRSw2QkFBNkI7RXhFd21RakM7RXdFdG1RRTs7SUFFRSw4QkFBOEI7RXhFd21RbEM7RXdFdG1RRTs7SUFFRSw0QkFBNEI7RXhFd21RaEM7QUFDRjs7QWVsblFJO0V5RGxESTtJQUFnQyxvQkFBNEI7RXhFeXFRbEU7RXdFeHFRTTs7SUFFRSx3QkFBb0M7RXhFMHFRNUM7RXdFeHFRTTs7SUFFRSwwQkFBd0M7RXhFMHFRaEQ7RXdFeHFRTTs7SUFFRSwyQkFBMEM7RXhFMHFRbEQ7RXdFeHFRTTs7SUFFRSx5QkFBc0M7RXhFMHFROUM7RXdFenJRTTtJQUFnQywwQkFBNEI7RXhFNHJRbEU7RXdFM3JRTTs7SUFFRSw4QkFBb0M7RXhFNnJRNUM7RXdFM3JRTTs7SUFFRSxnQ0FBd0M7RXhFNnJRaEQ7RXdFM3JRTTs7SUFFRSxpQ0FBMEM7RXhFNnJRbEQ7RXdFM3JRTTs7SUFFRSwrQkFBc0M7RXhFNnJROUM7RXdFNXNRTTtJQUFnQyx5QkFBNEI7RXhFK3NRbEU7RXdFOXNRTTs7SUFFRSw2QkFBb0M7RXhFZ3RRNUM7RXdFOXNRTTs7SUFFRSwrQkFBd0M7RXhFZ3RRaEQ7RXdFOXNRTTs7SUFFRSxnQ0FBMEM7RXhFZ3RRbEQ7RXdFOXNRTTs7SUFFRSw4QkFBc0M7RXhFZ3RROUM7RXdFL3RRTTtJQUFnQyx1QkFBNEI7RXhFa3VRbEU7RXdFanVRTTs7SUFFRSwyQkFBb0M7RXhFbXVRNUM7RXdFanVRTTs7SUFFRSw2QkFBd0M7RXhFbXVRaEQ7RXdFanVRTTs7SUFFRSw4QkFBMEM7RXhFbXVRbEQ7RXdFanVRTTs7SUFFRSw0QkFBc0M7RXhFbXVROUM7RXdFbHZRTTtJQUFnQyx5QkFBNEI7RXhFcXZRbEU7RXdFcHZRTTs7SUFFRSw2QkFBb0M7RXhFc3ZRNUM7RXdFcHZRTTs7SUFFRSwrQkFBd0M7RXhFc3ZRaEQ7RXdFcHZRTTs7SUFFRSxnQ0FBMEM7RXhFc3ZRbEQ7RXdFcHZRTTs7SUFFRSw4QkFBc0M7RXhFc3ZROUM7RXdFcndRTTtJQUFnQyx1QkFBNEI7RXhFd3dRbEU7RXdFdndRTTs7SUFFRSwyQkFBb0M7RXhFeXdRNUM7RXdFdndRTTs7SUFFRSw2QkFBd0M7RXhFeXdRaEQ7RXdFdndRTTs7SUFFRSw4QkFBMEM7RXhFeXdRbEQ7RXdFdndRTTs7SUFFRSw0QkFBc0M7RXhFeXdROUM7RXdFeHhRTTtJQUFnQyxxQkFBNEI7RXhFMnhRbEU7RXdFMXhRTTs7SUFFRSx5QkFBb0M7RXhFNHhRNUM7RXdFMXhRTTs7SUFFRSwyQkFBd0M7RXhFNHhRaEQ7RXdFMXhRTTs7SUFFRSw0QkFBMEM7RXhFNHhRbEQ7RXdFMXhRTTs7SUFFRSwwQkFBc0M7RXhFNHhROUM7RXdFM3lRTTtJQUFnQywyQkFBNEI7RXhFOHlRbEU7RXdFN3lRTTs7SUFFRSwrQkFBb0M7RXhFK3lRNUM7RXdFN3lRTTs7SUFFRSxpQ0FBd0M7RXhFK3lRaEQ7RXdFN3lRTTs7SUFFRSxrQ0FBMEM7RXhFK3lRbEQ7RXdFN3lRTTs7SUFFRSxnQ0FBc0M7RXhFK3lROUM7RXdFOXpRTTtJQUFnQywwQkFBNEI7RXhFaTBRbEU7RXdFaDBRTTs7SUFFRSw4QkFBb0M7RXhFazBRNUM7RXdFaDBRTTs7SUFFRSxnQ0FBd0M7RXhFazBRaEQ7RXdFaDBRTTs7SUFFRSxpQ0FBMEM7RXhFazBRbEQ7RXdFaDBRTTs7SUFFRSwrQkFBc0M7RXhFazBROUM7RXdFajFRTTtJQUFnQyx3QkFBNEI7RXhFbzFRbEU7RXdFbjFRTTs7SUFFRSw0QkFBb0M7RXhFcTFRNUM7RXdFbjFRTTs7SUFFRSw4QkFBd0M7RXhFcTFRaEQ7RXdFbjFRTTs7SUFFRSwrQkFBMEM7RXhFcTFRbEQ7RXdFbjFRTTs7SUFFRSw2QkFBc0M7RXhFcTFROUM7RXdFcDJRTTtJQUFnQywwQkFBNEI7RXhFdTJRbEU7RXdFdDJRTTs7SUFFRSw4QkFBb0M7RXhFdzJRNUM7RXdFdDJRTTs7SUFFRSxnQ0FBd0M7RXhFdzJRaEQ7RXdFdDJRTTs7SUFFRSxpQ0FBMEM7RXhFdzJRbEQ7RXdFdDJRTTs7SUFFRSwrQkFBc0M7RXhFdzJROUM7RXdFdjNRTTtJQUFnQyx3QkFBNEI7RXhFMDNRbEU7RXdFejNRTTs7SUFFRSw0QkFBb0M7RXhFMjNRNUM7RXdFejNRTTs7SUFFRSw4QkFBd0M7RXhFMjNRaEQ7RXdFejNRTTs7SUFFRSwrQkFBMEM7RXhFMjNRbEQ7RXdFejNRTTs7SUFFRSw2QkFBc0M7RXhFMjNROUM7RXdFbjNRTTtJQUF3QiwyQkFBMkI7RXhFczNRekQ7RXdFcjNRTTs7SUFFRSwrQkFBK0I7RXhFdTNRdkM7RXdFcjNRTTs7SUFFRSxpQ0FBaUM7RXhFdTNRekM7RXdFcjNRTTs7SUFFRSxrQ0FBa0M7RXhFdTNRMUM7RXdFcjNRTTs7SUFFRSxnQ0FBZ0M7RXhFdTNReEM7RXdFdDRRTTtJQUF3QiwwQkFBMkI7RXhFeTRRekQ7RXdFeDRRTTs7SUFFRSw4QkFBK0I7RXhFMDRRdkM7RXdFeDRRTTs7SUFFRSxnQ0FBaUM7RXhFMDRRekM7RXdFeDRRTTs7SUFFRSxpQ0FBa0M7RXhFMDRRMUM7RXdFeDRRTTs7SUFFRSwrQkFBZ0M7RXhFMDRReEM7RXdFejVRTTtJQUF3Qix3QkFBMkI7RXhFNDVRekQ7RXdFMzVRTTs7SUFFRSw0QkFBK0I7RXhFNjVRdkM7RXdFMzVRTTs7SUFFRSw4QkFBaUM7RXhFNjVRekM7RXdFMzVRTTs7SUFFRSwrQkFBa0M7RXhFNjVRMUM7RXdFMzVRTTs7SUFFRSw2QkFBZ0M7RXhFNjVReEM7RXdFNTZRTTtJQUF3QiwwQkFBMkI7RXhFKzZRekQ7RXdFOTZRTTs7SUFFRSw4QkFBK0I7RXhFZzdRdkM7RXdFOTZRTTs7SUFFRSxnQ0FBaUM7RXhFZzdRekM7RXdFOTZRTTs7SUFFRSxpQ0FBa0M7RXhFZzdRMUM7RXdFOTZRTTs7SUFFRSwrQkFBZ0M7RXhFZzdReEM7RXdFLzdRTTtJQUF3Qix3QkFBMkI7RXhFazhRekQ7RXdFajhRTTs7SUFFRSw0QkFBK0I7RXhFbThRdkM7RXdFajhRTTs7SUFFRSw4QkFBaUM7RXhFbThRekM7RXdFajhRTTs7SUFFRSwrQkFBa0M7RXhFbThRMUM7RXdFajhRTTs7SUFFRSw2QkFBZ0M7RXhFbThReEM7RXdFNzdRRTtJQUFtQix1QkFBdUI7RXhFZzhRNUM7RXdFLzdRRTs7SUFFRSwyQkFBMkI7RXhFaThRL0I7RXdFLzdRRTs7SUFFRSw2QkFBNkI7RXhFaThRakM7RXdFLzdRRTs7SUFFRSw4QkFBOEI7RXhFaThRbEM7RXdFLzdRRTs7SUFFRSw0QkFBNEI7RXhFaThRaEM7QUFDRjs7QWUzOFFJO0V5RGxESTtJQUFnQyxvQkFBNEI7RXhFa2dSbEU7RXdFamdSTTs7SUFFRSx3QkFBb0M7RXhFbWdSNUM7RXdFamdSTTs7SUFFRSwwQkFBd0M7RXhFbWdSaEQ7RXdFamdSTTs7SUFFRSwyQkFBMEM7RXhFbWdSbEQ7RXdFamdSTTs7SUFFRSx5QkFBc0M7RXhFbWdSOUM7RXdFbGhSTTtJQUFnQywwQkFBNEI7RXhFcWhSbEU7RXdFcGhSTTs7SUFFRSw4QkFBb0M7RXhFc2hSNUM7RXdFcGhSTTs7SUFFRSxnQ0FBd0M7RXhFc2hSaEQ7RXdFcGhSTTs7SUFFRSxpQ0FBMEM7RXhFc2hSbEQ7RXdFcGhSTTs7SUFFRSwrQkFBc0M7RXhFc2hSOUM7RXdFcmlSTTtJQUFnQyx5QkFBNEI7RXhFd2lSbEU7RXdFdmlSTTs7SUFFRSw2QkFBb0M7RXhFeWlSNUM7RXdFdmlSTTs7SUFFRSwrQkFBd0M7RXhFeWlSaEQ7RXdFdmlSTTs7SUFFRSxnQ0FBMEM7RXhFeWlSbEQ7RXdFdmlSTTs7SUFFRSw4QkFBc0M7RXhFeWlSOUM7RXdFeGpSTTtJQUFnQyx1QkFBNEI7RXhFMmpSbEU7RXdFMWpSTTs7SUFFRSwyQkFBb0M7RXhFNGpSNUM7RXdFMWpSTTs7SUFFRSw2QkFBd0M7RXhFNGpSaEQ7RXdFMWpSTTs7SUFFRSw4QkFBMEM7RXhFNGpSbEQ7RXdFMWpSTTs7SUFFRSw0QkFBc0M7RXhFNGpSOUM7RXdFM2tSTTtJQUFnQyx5QkFBNEI7RXhFOGtSbEU7RXdFN2tSTTs7SUFFRSw2QkFBb0M7RXhFK2tSNUM7RXdFN2tSTTs7SUFFRSwrQkFBd0M7RXhFK2tSaEQ7RXdFN2tSTTs7SUFFRSxnQ0FBMEM7RXhFK2tSbEQ7RXdFN2tSTTs7SUFFRSw4QkFBc0M7RXhFK2tSOUM7RXdFOWxSTTtJQUFnQyx1QkFBNEI7RXhFaW1SbEU7RXdFaG1STTs7SUFFRSwyQkFBb0M7RXhFa21SNUM7RXdFaG1STTs7SUFFRSw2QkFBd0M7RXhFa21SaEQ7RXdFaG1STTs7SUFFRSw4QkFBMEM7RXhFa21SbEQ7RXdFaG1STTs7SUFFRSw0QkFBc0M7RXhFa21SOUM7RXdFam5STTtJQUFnQyxxQkFBNEI7RXhFb25SbEU7RXdFbm5STTs7SUFFRSx5QkFBb0M7RXhFcW5SNUM7RXdFbm5STTs7SUFFRSwyQkFBd0M7RXhFcW5SaEQ7RXdFbm5STTs7SUFFRSw0QkFBMEM7RXhFcW5SbEQ7RXdFbm5STTs7SUFFRSwwQkFBc0M7RXhFcW5SOUM7RXdFcG9STTtJQUFnQywyQkFBNEI7RXhFdW9SbEU7RXdFdG9STTs7SUFFRSwrQkFBb0M7RXhFd29SNUM7RXdFdG9STTs7SUFFRSxpQ0FBd0M7RXhFd29SaEQ7RXdFdG9STTs7SUFFRSxrQ0FBMEM7RXhFd29SbEQ7RXdFdG9STTs7SUFFRSxnQ0FBc0M7RXhFd29SOUM7RXdFdnBSTTtJQUFnQywwQkFBNEI7RXhFMHBSbEU7RXdFenBSTTs7SUFFRSw4QkFBb0M7RXhFMnBSNUM7RXdFenBSTTs7SUFFRSxnQ0FBd0M7RXhFMnBSaEQ7RXdFenBSTTs7SUFFRSxpQ0FBMEM7RXhFMnBSbEQ7RXdFenBSTTs7SUFFRSwrQkFBc0M7RXhFMnBSOUM7RXdFMXFSTTtJQUFnQyx3QkFBNEI7RXhFNnFSbEU7RXdFNXFSTTs7SUFFRSw0QkFBb0M7RXhFOHFSNUM7RXdFNXFSTTs7SUFFRSw4QkFBd0M7RXhFOHFSaEQ7RXdFNXFSTTs7SUFFRSwrQkFBMEM7RXhFOHFSbEQ7RXdFNXFSTTs7SUFFRSw2QkFBc0M7RXhFOHFSOUM7RXdFN3JSTTtJQUFnQywwQkFBNEI7RXhFZ3NSbEU7RXdFL3JSTTs7SUFFRSw4QkFBb0M7RXhFaXNSNUM7RXdFL3JSTTs7SUFFRSxnQ0FBd0M7RXhFaXNSaEQ7RXdFL3JSTTs7SUFFRSxpQ0FBMEM7RXhFaXNSbEQ7RXdFL3JSTTs7SUFFRSwrQkFBc0M7RXhFaXNSOUM7RXdFaHRSTTtJQUFnQyx3QkFBNEI7RXhFbXRSbEU7RXdFbHRSTTs7SUFFRSw0QkFBb0M7RXhFb3RSNUM7RXdFbHRSTTs7SUFFRSw4QkFBd0M7RXhFb3RSaEQ7RXdFbHRSTTs7SUFFRSwrQkFBMEM7RXhFb3RSbEQ7RXdFbHRSTTs7SUFFRSw2QkFBc0M7RXhFb3RSOUM7RXdFNXNSTTtJQUF3QiwyQkFBMkI7RXhFK3NSekQ7RXdFOXNSTTs7SUFFRSwrQkFBK0I7RXhFZ3RSdkM7RXdFOXNSTTs7SUFFRSxpQ0FBaUM7RXhFZ3RSekM7RXdFOXNSTTs7SUFFRSxrQ0FBa0M7RXhFZ3RSMUM7RXdFOXNSTTs7SUFFRSxnQ0FBZ0M7RXhFZ3RSeEM7RXdFL3RSTTtJQUF3QiwwQkFBMkI7RXhFa3VSekQ7RXdFanVSTTs7SUFFRSw4QkFBK0I7RXhFbXVSdkM7RXdFanVSTTs7SUFFRSxnQ0FBaUM7RXhFbXVSekM7RXdFanVSTTs7SUFFRSxpQ0FBa0M7RXhFbXVSMUM7RXdFanVSTTs7SUFFRSwrQkFBZ0M7RXhFbXVSeEM7RXdFbHZSTTtJQUF3Qix3QkFBMkI7RXhFcXZSekQ7RXdFcHZSTTs7SUFFRSw0QkFBK0I7RXhFc3ZSdkM7RXdFcHZSTTs7SUFFRSw4QkFBaUM7RXhFc3ZSekM7RXdFcHZSTTs7SUFFRSwrQkFBa0M7RXhFc3ZSMUM7RXdFcHZSTTs7SUFFRSw2QkFBZ0M7RXhFc3ZSeEM7RXdFcndSTTtJQUF3QiwwQkFBMkI7RXhFd3dSekQ7RXdFdndSTTs7SUFFRSw4QkFBK0I7RXhFeXdSdkM7RXdFdndSTTs7SUFFRSxnQ0FBaUM7RXhFeXdSekM7RXdFdndSTTs7SUFFRSxpQ0FBa0M7RXhFeXdSMUM7RXdFdndSTTs7SUFFRSwrQkFBZ0M7RXhFeXdSeEM7RXdFeHhSTTtJQUF3Qix3QkFBMkI7RXhFMnhSekQ7RXdFMXhSTTs7SUFFRSw0QkFBK0I7RXhFNHhSdkM7RXdFMXhSTTs7SUFFRSw4QkFBaUM7RXhFNHhSekM7RXdFMXhSTTs7SUFFRSwrQkFBa0M7RXhFNHhSMUM7RXdFMXhSTTs7SUFFRSw2QkFBZ0M7RXhFNHhSeEM7RXdFdHhSRTtJQUFtQix1QkFBdUI7RXhFeXhSNUM7RXdFeHhSRTs7SUFFRSwyQkFBMkI7RXhFMHhSL0I7RXdFeHhSRTs7SUFFRSw2QkFBNkI7RXhFMHhSakM7RXdFeHhSRTs7SUFFRSw4QkFBOEI7RXhFMHhSbEM7RXdFeHhSRTs7SUFFRSw0QkFBNEI7RXhFMHhSaEM7QUFDRjs7QWVweVJJO0V5RGxESTtJQUFnQyxvQkFBNEI7RXhFMjFSbEU7RXdFMTFSTTs7SUFFRSx3QkFBb0M7RXhFNDFSNUM7RXdFMTFSTTs7SUFFRSwwQkFBd0M7RXhFNDFSaEQ7RXdFMTFSTTs7SUFFRSwyQkFBMEM7RXhFNDFSbEQ7RXdFMTFSTTs7SUFFRSx5QkFBc0M7RXhFNDFSOUM7RXdFMzJSTTtJQUFnQywwQkFBNEI7RXhFODJSbEU7RXdFNzJSTTs7SUFFRSw4QkFBb0M7RXhFKzJSNUM7RXdFNzJSTTs7SUFFRSxnQ0FBd0M7RXhFKzJSaEQ7RXdFNzJSTTs7SUFFRSxpQ0FBMEM7RXhFKzJSbEQ7RXdFNzJSTTs7SUFFRSwrQkFBc0M7RXhFKzJSOUM7RXdFOTNSTTtJQUFnQyx5QkFBNEI7RXhFaTRSbEU7RXdFaDRSTTs7SUFFRSw2QkFBb0M7RXhFazRSNUM7RXdFaDRSTTs7SUFFRSwrQkFBd0M7RXhFazRSaEQ7RXdFaDRSTTs7SUFFRSxnQ0FBMEM7RXhFazRSbEQ7RXdFaDRSTTs7SUFFRSw4QkFBc0M7RXhFazRSOUM7RXdFajVSTTtJQUFnQyx1QkFBNEI7RXhFbzVSbEU7RXdFbjVSTTs7SUFFRSwyQkFBb0M7RXhFcTVSNUM7RXdFbjVSTTs7SUFFRSw2QkFBd0M7RXhFcTVSaEQ7RXdFbjVSTTs7SUFFRSw4QkFBMEM7RXhFcTVSbEQ7RXdFbjVSTTs7SUFFRSw0QkFBc0M7RXhFcTVSOUM7RXdFcDZSTTtJQUFnQyx5QkFBNEI7RXhFdTZSbEU7RXdFdDZSTTs7SUFFRSw2QkFBb0M7RXhFdzZSNUM7RXdFdDZSTTs7SUFFRSwrQkFBd0M7RXhFdzZSaEQ7RXdFdDZSTTs7SUFFRSxnQ0FBMEM7RXhFdzZSbEQ7RXdFdDZSTTs7SUFFRSw4QkFBc0M7RXhFdzZSOUM7RXdFdjdSTTtJQUFnQyx1QkFBNEI7RXhFMDdSbEU7RXdFejdSTTs7SUFFRSwyQkFBb0M7RXhFMjdSNUM7RXdFejdSTTs7SUFFRSw2QkFBd0M7RXhFMjdSaEQ7RXdFejdSTTs7SUFFRSw4QkFBMEM7RXhFMjdSbEQ7RXdFejdSTTs7SUFFRSw0QkFBc0M7RXhFMjdSOUM7RXdFMThSTTtJQUFnQyxxQkFBNEI7RXhFNjhSbEU7RXdFNThSTTs7SUFFRSx5QkFBb0M7RXhFODhSNUM7RXdFNThSTTs7SUFFRSwyQkFBd0M7RXhFODhSaEQ7RXdFNThSTTs7SUFFRSw0QkFBMEM7RXhFODhSbEQ7RXdFNThSTTs7SUFFRSwwQkFBc0M7RXhFODhSOUM7RXdFNzlSTTtJQUFnQywyQkFBNEI7RXhFZytSbEU7RXdFLzlSTTs7SUFFRSwrQkFBb0M7RXhFaStSNUM7RXdFLzlSTTs7SUFFRSxpQ0FBd0M7RXhFaStSaEQ7RXdFLzlSTTs7SUFFRSxrQ0FBMEM7RXhFaStSbEQ7RXdFLzlSTTs7SUFFRSxnQ0FBc0M7RXhFaStSOUM7RXdFaC9STTtJQUFnQywwQkFBNEI7RXhFbS9SbEU7RXdFbC9STTs7SUFFRSw4QkFBb0M7RXhFby9SNUM7RXdFbC9STTs7SUFFRSxnQ0FBd0M7RXhFby9SaEQ7RXdFbC9STTs7SUFFRSxpQ0FBMEM7RXhFby9SbEQ7RXdFbC9STTs7SUFFRSwrQkFBc0M7RXhFby9SOUM7RXdFbmdTTTtJQUFnQyx3QkFBNEI7RXhFc2dTbEU7RXdFcmdTTTs7SUFFRSw0QkFBb0M7RXhFdWdTNUM7RXdFcmdTTTs7SUFFRSw4QkFBd0M7RXhFdWdTaEQ7RXdFcmdTTTs7SUFFRSwrQkFBMEM7RXhFdWdTbEQ7RXdFcmdTTTs7SUFFRSw2QkFBc0M7RXhFdWdTOUM7RXdFdGhTTTtJQUFnQywwQkFBNEI7RXhFeWhTbEU7RXdFeGhTTTs7SUFFRSw4QkFBb0M7RXhFMGhTNUM7RXdFeGhTTTs7SUFFRSxnQ0FBd0M7RXhFMGhTaEQ7RXdFeGhTTTs7SUFFRSxpQ0FBMEM7RXhFMGhTbEQ7RXdFeGhTTTs7SUFFRSwrQkFBc0M7RXhFMGhTOUM7RXdFemlTTTtJQUFnQyx3QkFBNEI7RXhFNGlTbEU7RXdFM2lTTTs7SUFFRSw0QkFBb0M7RXhFNmlTNUM7RXdFM2lTTTs7SUFFRSw4QkFBd0M7RXhFNmlTaEQ7RXdFM2lTTTs7SUFFRSwrQkFBMEM7RXhFNmlTbEQ7RXdFM2lTTTs7SUFFRSw2QkFBc0M7RXhFNmlTOUM7RXdFcmlTTTtJQUF3QiwyQkFBMkI7RXhFd2lTekQ7RXdFdmlTTTs7SUFFRSwrQkFBK0I7RXhFeWlTdkM7RXdFdmlTTTs7SUFFRSxpQ0FBaUM7RXhFeWlTekM7RXdFdmlTTTs7SUFFRSxrQ0FBa0M7RXhFeWlTMUM7RXdFdmlTTTs7SUFFRSxnQ0FBZ0M7RXhFeWlTeEM7RXdFeGpTTTtJQUF3QiwwQkFBMkI7RXhFMmpTekQ7RXdFMWpTTTs7SUFFRSw4QkFBK0I7RXhFNGpTdkM7RXdFMWpTTTs7SUFFRSxnQ0FBaUM7RXhFNGpTekM7RXdFMWpTTTs7SUFFRSxpQ0FBa0M7RXhFNGpTMUM7RXdFMWpTTTs7SUFFRSwrQkFBZ0M7RXhFNGpTeEM7RXdFM2tTTTtJQUF3Qix3QkFBMkI7RXhFOGtTekQ7RXdFN2tTTTs7SUFFRSw0QkFBK0I7RXhFK2tTdkM7RXdFN2tTTTs7SUFFRSw4QkFBaUM7RXhFK2tTekM7RXdFN2tTTTs7SUFFRSwrQkFBa0M7RXhFK2tTMUM7RXdFN2tTTTs7SUFFRSw2QkFBZ0M7RXhFK2tTeEM7RXdFOWxTTTtJQUF3QiwwQkFBMkI7RXhFaW1TekQ7RXdFaG1TTTs7SUFFRSw4QkFBK0I7RXhFa21TdkM7RXdFaG1TTTs7SUFFRSxnQ0FBaUM7RXhFa21TekM7RXdFaG1TTTs7SUFFRSxpQ0FBa0M7RXhFa21TMUM7RXdFaG1TTTs7SUFFRSwrQkFBZ0M7RXhFa21TeEM7RXdFam5TTTtJQUF3Qix3QkFBMkI7RXhFb25TekQ7RXdFbm5TTTs7SUFFRSw0QkFBK0I7RXhFcW5TdkM7RXdFbm5TTTs7SUFFRSw4QkFBaUM7RXhFcW5TekM7RXdFbm5TTTs7SUFFRSwrQkFBa0M7RXhFcW5TMUM7RXdFbm5TTTs7SUFFRSw2QkFBZ0M7RXhFcW5TeEM7RXdFL21TRTtJQUFtQix1QkFBdUI7RXhFa25TNUM7RXdFam5TRTs7SUFFRSwyQkFBMkI7RXhFbW5TL0I7RXdFam5TRTs7SUFFRSw2QkFBNkI7RXhFbW5TakM7RXdFam5TRTs7SUFFRSw4QkFBOEI7RXhFbW5TbEM7RXdFam5TRTs7SUFFRSw0QkFBNEI7RXhFbW5TaEM7QUFDRjs7QXlFcnJTQTtFQUVJLGtCQUFrQjtFQUNsQixNQUFNO0VBQ04sUUFBUTtFQUNSLFNBQVM7RUFDVCxPQUFPO0VBQ1AsVUFBVTtFQUVWLG9CQUFvQjtFQUNwQixXQUFXO0VBRVgsa0NBQWtDO0F6RXFyU3RDOztBMEUvclNBO0VBQWtCLDRHQUE4QztBMUVtc1NoRTs7QTBFL3JTQTtFQUFpQiw4QkFBOEI7QTFFbXNTL0M7O0EwRWxzU0E7RUFBaUIsOEJBQThCO0ExRXNzUy9DOztBMEVyc1NBO0VBQWlCLDhCQUE4QjtBMUV5c1MvQzs7QTBFeHNTQTtFQ1RFLGdCQUFnQjtFQUNoQix1QkFBdUI7RUFDdkIsbUJBQW1CO0EzRXF0U3JCOztBMEV0c1NJO0VBQXdCLDJCQUEyQjtBMUUwc1N2RDs7QTBFenNTSTtFQUF3Qiw0QkFBNEI7QTFFNnNTeEQ7O0EwRTVzU0k7RUFBd0IsNkJBQTZCO0ExRWd0U3pEOztBZTNxU0k7RTJEdkNBO0lBQXdCLDJCQUEyQjtFMUV1dFNyRDtFMEV0dFNFO0lBQXdCLDRCQUE0QjtFMUV5dFN0RDtFMEV4dFNFO0lBQXdCLDZCQUE2QjtFMUUydFN2RDtBQUNGOztBZXZyU0k7RTJEdkNBO0lBQXdCLDJCQUEyQjtFMUVtdVNyRDtFMEVsdVNFO0lBQXdCLDRCQUE0QjtFMUVxdVN0RDtFMEVwdVNFO0lBQXdCLDZCQUE2QjtFMUV1dVN2RDtBQUNGOztBZW5zU0k7RTJEdkNBO0lBQXdCLDJCQUEyQjtFMUUrdVNyRDtFMEU5dVNFO0lBQXdCLDRCQUE0QjtFMUVpdlN0RDtFMEVodlNFO0lBQXdCLDZCQUE2QjtFMUVtdlN2RDtBQUNGOztBZS9zU0k7RTJEdkNBO0lBQXdCLDJCQUEyQjtFMUUydlNyRDtFMEUxdlNFO0lBQXdCLDRCQUE0QjtFMUU2dlN0RDtFMEU1dlNFO0lBQXdCLDZCQUE2QjtFMUUrdlN2RDtBQUNGOztBMEUxdlNBO0VBQW1CLG9DQUFvQztBMUU4dlN2RDs7QTBFN3ZTQTtFQUFtQixvQ0FBb0M7QTFFaXdTdkQ7O0EwRWh3U0E7RUFBbUIscUNBQXFDO0ExRW93U3hEOztBMEVod1NBO0VBQXVCLDJCQUEwQztBMUVvd1NqRTs7QTBFbndTQTtFQUF1QiwrQkFBNEM7QTFFdXdTbkU7O0EwRXR3U0E7RUFBdUIsMkJBQTJDO0ExRTB3U2xFOztBMEV6d1NBO0VBQXVCLDJCQUF5QztBMUU2d1NoRTs7QTBFNXdTQTtFQUF1Qiw4QkFBMkM7QTFFZ3hTbEU7O0EwRS93U0E7RUFBdUIsNkJBQTZCO0ExRW14U3BEOztBMEUvd1NBO0VBQWMsc0JBQXdCO0ExRW14U3RDOztBNEUxelNFO0VBQ0UseUJBQXdCO0E1RTZ6UzVCOztBTW56U0U7RXNFTE0seUJBQTBFO0E1RTR6U2xGOztBNEVsMFNFO0VBQ0UseUJBQXdCO0E1RXEwUzVCOztBTTN6U0U7RXNFTE0seUJBQTBFO0E1RW8wU2xGOztBNEUxMFNFO0VBQ0UseUJBQXdCO0E1RTYwUzVCOztBTW4wU0U7RXNFTE0seUJBQTBFO0E1RTQwU2xGOztBNEVsMVNFO0VBQ0UseUJBQXdCO0E1RXExUzVCOztBTTMwU0U7RXNFTE0seUJBQTBFO0E1RW8xU2xGOztBNEUxMVNFO0VBQ0UseUJBQXdCO0E1RTYxUzVCOztBTW4xU0U7RXNFTE0seUJBQTBFO0E1RTQxU2xGOztBNEVsMlNFO0VBQ0UseUJBQXdCO0E1RXEyUzVCOztBTTMxU0U7RXNFTE0seUJBQTBFO0E1RW8yU2xGOztBNEUxMlNFO0VBQ0UseUJBQXdCO0E1RTYyUzVCOztBTW4yU0U7RXNFTE0seUJBQTBFO0E1RTQyU2xGOztBNEVsM1NFO0VBQ0UseUJBQXdCO0E1RXEzUzVCOztBTTMyU0U7RXNFTE0seUJBQTBFO0E1RW8zU2xGOztBMEU3MFNBO0VBQWEseUJBQTZCO0ExRWkxUzFDOztBMEVoMVNBO0VBQWMseUJBQTZCO0ExRW8xUzNDOztBMEVsMVNBO0VBQWlCLG9DQUFrQztBMUVzMVNuRDs7QTBFcjFTQTtFQUFpQiwwQ0FBa0M7QTFFeTFTbkQ7O0EwRXIxU0E7RUd2REUsV0FBVztFQUNYLGtCQUFrQjtFQUNsQixpQkFBaUI7RUFDakIsNkJBQTZCO0VBQzdCLFNBQVM7QTdFZzVTWDs7QTBFejFTQTtFQUF3QixnQ0FBZ0M7QTFFNjFTeEQ7O0EwRTMxU0E7RUFDRSxpQ0FBaUM7RUFDakMsZ0NBQWdDO0ExRTgxU2xDOztBMEV6MVNBO0VBQWMseUJBQXlCO0ExRTYxU3ZDOztBOEU5NVNBO0VBQ0UsOEJBQThCO0E5RWk2U2hDOztBOEU5NVNBO0VBQ0UsNkJBQTZCO0E5RWk2Uy9COztBK0VqNlNFO0U1RU9GOzs7STRFRE0sNEJBQTRCO0lBRTVCLDJCQUEyQjtFL0VpNlMvQjtFK0U5NVNFO0lBRUksMEJBQTBCO0UvRSs1U2hDO0UrRXQ1U0U7SUFDRSw2QkFBNkI7RS9FdzVTakM7RUcxdFNGO0k0RS9LTSxnQ0FBZ0M7RS9FNDRTcEM7RStFMTRTRTs7SUFFRSx5QjNFekNZO0kyRTBDWix3QkFBd0I7RS9FNDRTNUI7RStFejRTRTs7SUFFRSx3QkFBd0I7RS9FMjRTNUI7RStFeDRTRTs7O0lBR0UsVUFBVTtJQUNWLFNBQVM7RS9FMDRTYjtF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aUY1bFZBO0VBQ0UseUJBQXlCO0FqRitsVjNCOztBaUY3bFZBO0VBQ0UseUJBQXlCO0FqRmdtVjNCOztBaUY5bFZBO0VBQ0UseUJBQXlCO0FqRmltVjNCOztBaUYvbFZBO0VBQ0UseUJBQXlCO0FqRmttVjNCOztBaUZobVZBO0VBQ0UseUJBQXlCO0FqRm1tVjNCOztBaUZqbVZBO0VBQ0UseUJBQXlCO0FqRm9tVjNCOztBaUZsbVZBO0VBQ0UseUJBQXlCO0FqRnFtVjNCOztBaUZubVZBO0VBQ0UseUJBQXlCO0FqRnNtVjNCOztBaUZwbVZBO0VBQ0UseUJBQXlCO0FqRnVtVjNCOztBaUZybVZBO0VBQ0UseUJBQXlCO0FqRndtVjNCOztBaUZ0bVZBO0VBQ0UseUJBQXlCO0FqRnltVjNCOztBaUZ2bVZBO0VBQ0UseUJBQXlCO0FqRjBtVjNCOztBaUZ4bVZBO0VBQ0UsNkJBQTZCO0FqRjJtVi9COztBaUZ6bVZBO0VBQ0UsbUJBQW1CO0FqRjRtVnJCOztBaUYxbVZBOztFQUVFLHlCQUF5QjtBakY2bVYzQjs7QWlGM21WQTs7RUFFRSxZQUFZO0FqRjhtVmQ7O0FpRjVtVkE7O0VBRUUsWUFBWTtBakYrbVZkOztBaUY3bVZBOztFQUVFLGdCQUFnQjtBakZnblZsQjs7QWlGOW1WQTs7O0VBR0Usa0JBQWtCO0FqRmluVnBCOztBaUYvbVZBOztFQUVFLGlCQUFpQjtBakZrblZuQjs7QWlGaG5WQTs7RUFFRSxtQkFBbUI7QWpGbW5WckI7O0FpRmpuVkE7O0VBRUUsbUJBQW1CO0FqRm9uVnJCOztBaUZsblZBOzs7O0VBSUUsZ0JBQWdCO0FqRnFuVmxCOztBaUZublZBOzs7O0VBSUUsa0JBQWtCO0FqRnNuVnBCOztBaUZwblZBOzs7O0VBSUUsaUJBQWlCO0FqRnVuVm5COztBaUZyblZBOzs7O0VBSUUsbUJBQW1CO0FqRnduVnJCOztBaUZ0blZBOzs7O0VBSUUsbUJBQW1CO0FqRnluVnJCOztBaUZ2blZBOztFQUVFLGdCQUFnQjtBakYwblZsQjs7QWlGeG5WQTs7RUFFRSxrQkFBa0I7QWpGMm5WcEI7O0FpRnpuVkE7O0VB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QUNFOztJQUVFLFdBQVc7SUFDWCxrQkFBa0I7RWpGbXBWcEI7RWlGeHpWRjtJQXdLSSxpQkFBaUI7RWpGbXBWbkI7QUFDRjs7QWtGN2tXQTs7c0JsRmlsV3NCO0FrRnpoV3RCO0FBNEJBO0FBTUE7QUFHQTtBQVVBOztzQmxGaS9Wc0I7QW1GNWxXdEI7O3NCbkYrbFdzQjtBbUY1bFd0QjtFQUNFLHlCQUErQjtBbkY4bFdqQzs7QW1GNWxXQTtFQUNFLGNEa0RlO0FsRjZpV2pCOztBbUY3bFdBO0VBQ0UsY0Q0RWE7QWxGb2hXZjs7QW1GOWxXQTtFQUNFLGNEaURhO0FsRmdqV2Y7O0FtRi9sV0E7RUFDRSxjRHlEZTtBbEZ5aVdqQjs7QW1GaG1XQTtFQUNFLHlCQUFrQztBbkZtbVdwQzs7QW1Gam1XQTtFQUNFLHlCQUFvQztBbkZvbVd0Qzs7QW1GbG1XQTtFQUNFLGNEc0VvQjtBbEYraFd0Qjs7QW1GbG1XQTtFQUNFLGlCQUFpQjtBbkZxbVduQjs7QW1Gbm1XQTtBQUNBO0VBQ0UsaUJBQWlCO0FuRnNtV25COztBbUZwbVdBO0VBQ0UsY0REMEI7QWxGd21XNUI7O0FtRnJtV0E7RUFDRSxjRGxCc0I7QWxGMG5XeEI7O0FtRnRtV0E7RUFDRSxjRDlCcUI7QWxGdW9XdkI7O0FtRnZtV0E7RUFDRSxjRHhCc0I7QWxGa29XeEI7O0FtRnZtV0E7RUFDRSxjRE1rQjtFQ0xsQixpQkFBaUI7RUFDakIsa0JENkRrQjtBbEY2aVdwQjs7QW1GeG1XQTtFQUNFLHlCQUFnQztBbkYybVdsQzs7QW1Gem1XQTtFQUNFLGtCRHlEa0I7QWxGbWpXcEI7O0FtRjFtV0E7RUFDRSw0QkFBbUM7QW5GNm1XckM7O0FtRjNtV0E7RUFDRSxlRHVEYTtBbEZ1aldmOztBbUY1bVdBO0VBQ0UsaUJEaURjO0FsRjhqV2hCOztBbUY3bVdBO0VBQ0UsbUJEK0NpQjtBbEZpa1duQjs7QW1GOW1XQTtFQUNFLGlCRDZDZ0I7QWxGb2tXbEI7O0FtRi9tV0E7RUFDRSxrQkRxQ2tCO0FsRjZrV3BCOztBbUZobldBO0VBQ0UsaUJEaUNrQjtBbEZrbFdwQjs7QW1Gam5XQTtFQUNFLGVBQWU7QW5Gb25XakI7O0FtRmxuV0E7RUFDRSxpQkFBaUI7QW5GcW5XbkI7O0FtRm5uV0E7RUFDRSxnQkFBZ0I7QW5Gc25XbEI7O0FtRnBuV0E7RUFDRSxrQkFBa0I7QW5GdW5XcEI7O0FtRnJuV0E7RUFDRSxjRGpGcUI7RUNrRnJCLGlCQUFpQjtBbkZ3blduQjs7QW1GdG5XQTtFQUNFLFdBQVc7QW5GeW5XYjs7QW1Gdm5XQTtFQUNFLGVBQWU7RUFDZixjRGZhO0VDZ0JiLG9CQUFvQjtFQUNwQixhQUFhO0VBQ2IsWUFBWTtFQUNaLG1CQUFtQjtBbkYwbldyQjs7QW1Gdm5XQTs7c0JuRjJuV3NCO0E0RHB0V3BCO0V1QjZGQSxnQ0FBaUM7QW5GMG5XbkM7O0FtRnhuV0E7RUFDRSx5QkR2Q2U7QWxGa3FXakI7O0FtRnpuV0E7RUFDRSxvQkFBb0I7RUFDcEIsZ0NEM0NlO0FsRnVxV2pCOztBbUYxbldBO0VBQ0UsZ0JBQWdCO0VBQ2hCLFVBQVU7QW5GNm5XWjs7QW1GMW5XQTs7c0JuRjhuV3NCO0FtRjNuV3RCO0VBQ0UseUJEL0YwQjtBbEY0dFc1Qjs7QW1GM25XQTtFQUNFLHlCRHhHd0I7QWxGc3VXMUI7O0FtRjVuV0E7RUFDRSxvQ0FBMkM7QW5GK25XN0M7O0FtRjduV0E7RUFDRSxjQUFjO0FuRmdvV2hCOztBbUY5bldBO0VBRUksY0FBYztFQUNkLFdBQVc7RUFDWCxrQkFBa0I7QW5GZ29XdEI7O0FtRnBvV0E7RUFNTSxTQUFTO0FuRmtvV2Y7O0FtRnhvV0E7RUFXSSx5QkRuSG9DO0FsRm92V3hDOztBbUY1b1dBO0VBY0kseUJEL0dtQztBbEZpdld2Qzs7QW1GaHBXQTtFQWlCSSx5QkQ5SGtDO0FsRml3V3RDOztBbUZwcFdBO0VBcUJJLGtCQUFrQjtBbkZtb1d0Qjs7QW1GL25XQTtFQUVJLHdDQUF3QztBbkZpb1c1Qzs7QW1GNW5XQTs7c0JuRmdvV3NCO0FtRjduV3RCO0VBQ0UsNEJBQTRCO0FuRituVzlCOztBbUY3bldBO0VBQ0Usa0JBQWtCO0FuRmdvV3BCOztBbUY5bldBO0VBQ0UsaUJBQWlCO0VBQ2pCLGtCQUFrQjtBbkZpb1dwQjs7QW1GL25XQTtFQUNFLGdCQUFnQjtFQUNoQixtQkFBbUI7QW5Ga29XckI7O0FtRmhvV0E7RUFDRSxjQUFjO0FuRm1vV2hCOztBbUZqb1dBO0VBQ0UsMkJBQTJCO0FuRm9vVzdCOztBZTd2V0k7RW9Fd0hKO0lBS0ksMkJBQTJCO0VuRnFvVzdCO0FBQ0Y7O0FtRmpvV0E7RUFDRSxZQUFZO0FuRm9vV2Q7O0FvRmgxV0E7RUFDRSxnQkFBZ0I7RUFDaEIsWUFBWTtFQUNaLGdCQUFnQjtBcEZtMVdsQjs7QXdCcHdXQTtFNEQzRUUsZ0JBQWdCO0VBQ2hCLFlBQVk7RUFDWix3QkFBd0I7QXBGbTFXMUI7O0FvRmgxV0E7RUFDRSx5QkZRc0I7RUVQdEIsY0Z3RWE7QWxGMndXZjs7QW9GcjFXQTtFQUlJLHlCRk0wQjtBbEYrMFc5Qjs7QW9GejFXQTtFQU9JLHlCRkk2QjtBbEZrMVdqQzs7QW9GbDFXQTtFQUNFLHlCRlpxQjtFRWFyQixjRjZEYTtBbEZ3eFdmOztBb0Z2MVdBO0VBSUkseUJGZHlCO0VFZXpCLGNGMERXO0FsRjZ4V2Y7O0FvRjUxV0E7RUFRSSx5QkZqQjRCO0VFa0I1QixjRnNEVztBbEZreVdmOztBb0ZwMVdBO0VBQ0UseUJGOUJxQjtFRStCckIsY0ZnRGE7QWxGdXlXZjs7QW9GejFXQTtFQUlJLHlCRmhDeUI7RUVpQ3pCLGNGNkNXO0FsRjR5V2Y7O0FvRjkxV0E7RUFRSSx5QkZuQzRCO0VFb0M1QixjRnlDVztBbEZpeldmOztBb0Z0MVdBO0VBQ0UseUJGSnFCO0VFS3JCLGNGbUNhO0FsRnN6V2Y7O0FvRjMxV0E7RUFJSSx5QkZOa0I7RUVPbEIsY0ZnQ1c7QWxGMnpXZjs7QW9GdjFXQTtFQUNFLHlCRnpDcUI7RUUwQ3JCLGNGMEJhO0FsRmcwV2Y7O0FvRjUxV0E7RUFJSSx5QkYzQ3lCO0VFNEN6QixjRnVCVztBbEZxMFdmOztBb0Z4MVdBO0VBQ0UsY0Z4RHFCO0FsRm01V3ZCOztBb0Y1MVdBO0VBR0ksY0ZwRG1CO0FsRmk1V3ZCOztBb0Z6MVdBO0VBQ0UseUJGQ2U7RUVBZixjRmRhO0FsRjAyV2Y7O0FvRjkxV0E7RUFJSSx5QkZUYTtBbEZ1MldqQjs7QW9GMTFXQTtFQUNFLGdCQUFnQjtFQUNoQixZQUFZO0VBQ1osd0JBQXdCO0VBQ3hCLG9CQUFtQjtFQUNuQixrQkFBa0I7QXBGNjFXcEI7O0FvRmwyV0E7RUFPSSx5QkZiYTtBbEY0MldqQjs7QW9GMzFXQTtFQUNFLGdCQUFnQjtFQUNoQix5QkZOcUI7RUVPckIsY0ZQcUI7QWxGcTJXdkI7O0FvRmoyV0E7RUFLSSx5QkZSc0I7QWxGdzJXMUI7O0FvRjMxV0E7RUFDRSxnQkFBZ0I7RUFDaEIseUJGYnVCO0VFY3ZCLGNGZHVCO0FsRjQyV3pCOztBb0YzMVdBO0VBQ0UseUJGbENlO0VFbUNmLHNCQUFzQjtFQUN0QixZQUFZO0FwRjgxV2Q7O0FvRmoyV0E7RUFLSSx5QkZ0Q2E7QWxGczRXakI7O0FvRjUxV0E7RUFDRSxXQUFXO0VBQ1gsc0JBQXNCO0VBQ3RCLGtCQUFrQjtBcEYrMVdwQjs7QW9GNzFXQTtFQUNFLGlCQUFpQjtFQUNqQixrQkFBa0I7QXBGZzJXcEI7O0FvRjcxV0E7RUFDRSxjQUFjO0FwRmcyV2hCOztBb0Y3MVdBO0VBQ0UsWUFBWTtFQUNaLGNGMUhxQjtBbEYwOVd2Qjs7QW9GNzFXQTtFQUNFLGlCQUFpQjtBcEZnMlduQjs7QXFGMStXQTtFQUNFLHNCQUFzQjtFQUN0Qiw0Q0FBNkM7RUFDN0Msa1FBRzZEO0VBQzdELG1CQUFtQjtFQUNuQixrQkFBa0I7RUFDbEIsbUJBQW1CO0FyRjArV3JCOztBQUVBO0VxRnorV0U7RUFDQSxpQ0FBaUM7RUFDakMsWUFBWTtFQUNaLGtCQUFrQjtFQUNsQixtQkFBbUI7RUFDbkIsb0JBQW9CO0VBQ3BCLG9CQUFvQjtFQUNwQixjQUFjO0VBRWQ7RUFDQSxtQ0FBbUM7RUFDbkMsa0NBQWtDO0FyRjArV3BDOztBcUZ2K1dBO0VBQ0UsZ0JBQWdCO0FyRjArV2xCOztBcUZ4K1dBO0VBQ0UsZ0JBQWdCO0FyRjIrV2xCOztBcUZ6K1dBO0VBQ0UsZ0JBQWdCO0FyRjQrV2xCOztBcUYxK1dBO0VBQ0UsZ0JBQWdCO0FyRjYrV2xCOztBcUYzK1dBO0VBQ0UsZ0JBQWdCO0FyRjgrV2xCOztBcUYzK1dBO0VBQ0UsZ0JBQWdCO0FyRjgrV2xCOztBcUY1K1dBO0VBQ0UsZ0JBQWdCO0FyRisrV2xCOztBcUY3K1dBO0VBQ0UsZ0JBQWdCO0FyRmcvV2xCOztBcUY5K1dBO0VBQ0UsZ0JBQWdCO0FyRmkvV2xCOztBcUYvK1dBO0VBQ0UsZ0JBQWdCO0FyRmsvV2xCOztBcUZoL1dBO0VBQ0UsZ0JBQWdCO0FyRm0vV2xCOztBcUZqL1dBO0VBQ0UsZ0JBQWdCO0FyRm8vV2xCOztBcUZsL1dBO0VBQ0UsZ0JBQWdCO0VBQ2hCLFlBQW1CO0FyRnEvV3JCOztBcUZuL1dBO0VBQ0UsZ0JBQWdCO0VBQ2hCLGlCQUFpQjtFQUNqQixZQUF5QjtBckZzL1czQjs7QXFGcC9XQTtFQUNFLGdCQUFnQjtFQUNoQixpQkFBaUI7RUFDakIsWUFBeUI7QXJGdS9XM0I7O0FxRnIvV0E7RUFDRSxnQkFBZ0I7QXJGdy9XbEI7O0FxRnQvV0E7RUFDRSxnQkFBZ0I7QXJGeS9XbEI7O0FxRnYvV0E7RUFDRSxnQkFBZ0I7QXJGMC9XbEI7O0FxRngvV0E7RUFDRSxnQkFBZ0I7QXJGMi9XbEI7O0FxRnovV0E7RUFDRSxnQkFBZ0I7QXJGNC9XbEI7O0FxRjEvV0E7RUFDRSxnQkFBZ0I7QXJGNi9XbEI7O0FxRjMvV0E7RUFDRSxnQkFBZ0I7QXJGOC9XbEI7O0FxRjUvV0E7RUFDRSxnQkFBZ0I7QXJGKy9XbEI7O0FxRjcvV0E7RUFDRSxnQkFBZ0I7QXJGZ2dYbEI7O0FxRjkvV0E7RUFDRSxnQkFBZ0I7QXJGaWdYbEI7O0FxRi8vV0E7RUFDRSxnQkFBZ0I7QXJGa2dYbEI7O0FxRmhnWEE7RUFDRSxnQkFBZ0I7QXJGbWdYbEI7O0FxRmpnWEE7RUFDRSxnQkFBZ0I7QXJGb2dYbEI7O0FxRmxnWEE7RUFDRSxnQkFBZ0I7QXJGcWdYbEI7O0FxRm5nWEE7RUFDRSxnQkFBZ0I7QXJGc2dYbEI7O0FxRnBnWEE7RUFDRSxnQkFBZ0I7QXJGdWdYbEI7O0FxRnJnWEE7RUFDRSxnQkFBZ0I7QXJGd2dYbEI7O0FxRnRnWEE7RUFDRSxnQkFBZ0I7QXJGeWdYbEI7O0FxRnZnWEE7RUFDRSxnQkFBZ0I7QXJGMGdYbEI7O0FxRnhnWEE7RUFDRSxnQkFBZ0I7QXJGMmdYbEI7O0FxRnpnWEE7RUFDRSxnQkFBZ0I7QXJGNGdYbEI7O0FxRjFnWEE7RUFDRSxnQkFBZ0I7QXJGNmdYbEI7O0FxRjNnWEE7RUFDRSxnQkFBZ0I7QXJGOGdYbEI7O0FxRjVnWEE7RUFDRSxnQkFBZ0I7QXJGK2dYbEI7O0FxRjdnWEE7RUFDRSxnQkFBZ0I7QXJGZ2hYbEI7O0FxRjlnWEE7RUFDRSxnQkFBZ0I7QXJGaWhYbEI7O0FxRi9nWEE7RUFDRSxnQkFBZ0I7QXJGa2hYbEI7O0FxRmhoWEE7RUFDRSxnQkFBZ0I7QXJGbWhYbEI7O0FxRmpoWEE7RUFDRSxnQkFBZ0I7QXJGb2hYbEI7O0FxRmxoWEE7RUFDRSxnQkFBZ0I7QXJGcWhYbEI7O0FxRm5oWEE7RUFDRSxnQkFBZ0I7QXJGc2hYbEI7O0FxRnBoWEE7RUFDRSxnQkFBZ0I7QXJGdWhYbEI7O0FxRnJoWEE7RUFDRSxnQkFBZ0I7QXJGd2hYbEI7O0FxRnRoWEE7RUFDRSxnQkFBZ0I7QXJGeWhYbEI7O0FxRnZoWEE7RUFDRSxnQkFBZ0I7QXJGMGhYbEI7O0FxRnhoWEE7RUFDRSxnQkFBZ0I7QXJGMmhYbEI7O0FxRnpoWEE7RUFDRSxnQkFBZ0I7QXJGNGhYbEI7O0FxRjFoWEE7RUFDRSxnQkFBZ0I7QXJGNmhYbEI7O0FxRjNoWEE7RUFDRSxnQkFBZ0I7QXJGOGhYbEI7O0FxRjVoWEE7RUFDRSxnQkFBZ0I7QXJGK2hYbEI7O0FxRjdoWEE7RUFDRSxnQkFBZ0I7QXJGZ2lYbEI7O0FxRjloWEE7RUFDRSxnQkFBZ0I7QXJGaWlYbEI7O0FxRi9oWEE7RUFDRSxnQkFBZ0I7QXJGa2lYbEI7O0FxRmhpWEE7RUFDRSxnQkFBZ0I7QXJGbWlYbEI7O0FxRmppWEE7RUFDRSxnQkFBZ0I7QXJGb2lYbEI7O0FxRmxpWEE7RUFDRSxnQkFBZ0I7QXJGcWlYbEI7O0FxRm5pWEE7RUFDRSxnQkFBZ0I7QXJGc2lYbEI7O0FxRnBpWEE7RUFDRSxnQkFBZ0I7QXJGdWlYbEI7O0FxRnJpWEE7RUFDRSxnQkFBZ0I7QXJGd2lYbEI7O0FxRnRpWEE7RUFDRSxnQkFBZ0I7QXJGeWlYbEI7O0FxRnZpWEE7RUFDRSxnQkFBZ0I7QXJGMGlYbEI7O0FxRnhpWEE7RUFDRSxnQkFBZ0I7QXJGMmlYbEI7O0FxRnppWEE7RUFDRSxnQkFBZ0I7QXJGNGlYbEI7O0FxRjFpWEE7RUFDRSxnQkFBZ0I7QXJGNmlYbEI7O0FxRjNpWEE7RUFDRSxnQkFBZ0I7QXJGOGlYbEI7O0FxRjVpWEE7RUFDRSxnQkFBZ0I7QXJGK2lYbEI7O0FxRjdpWEE7RUFDRSxnQkFBZ0I7QXJGZ2pYbEI7O0FxRjlpWEE7RUFDRSxnQkFBZ0I7QXJGaWpYbEI7O0FxRi9pWEE7RUFDRSxnQkFBZ0I7QXJGa2pYbEI7O0FxRmhqWEE7RUFDRSxnQkFBZ0I7QXJGbWpYbEI7O0FxRmpqWEE7RUFDRSxnQkFBZ0I7QXJGb2pYbEI7O0FxRmxqWEE7RUFDRSxnQkFBZ0I7QXJGcWpYbEI7O0FxRm5qWEE7RUFDRSxnQkFBZ0I7QXJGc2pYbEI7O0FxRnBqWEE7RUFDRSxnQkFBZ0I7QXJGdWpYbEI7O0FxRnJqWEE7RUFDRSxnQkFBZ0I7QXJGd2pYbEI7O0FxRnRqWEE7RUFDRSxnQkFBZ0I7QXJGeWpYbEI7O0FxRnZqWEE7RUFDRSxnQkFBZ0I7QXJGMGpYbEI7O0FxRnhqWEE7RUFDRSxnQkFBZ0I7QXJGMmpYbEI7O0FxRnpqWEE7RUFDRSxnQkFBZ0I7QXJGNGpYbEI7O0FxRjFqWEE7RUFDRSxnQkFBZ0I7QXJGNmpYbEI7O0FxRjNqWEE7RUFDRSxnQkFBZ0I7QXJGOGpYbEI7O0FxRjVqWEE7RUFDRSxnQkFBZ0I7QXJGK2pYbEI7O0FxRjdqWEE7RUFDRSxnQkFBZ0I7QXJGZ2tYbEI7O0FxRjlqWEE7RUFDRSxnQkFBZ0I7QXJGaWtYbEI7O0FxRi9qWEE7RUFDRSxnQkFBZ0I7QXJGa2tYbEI7O0FxRmhrWEE7RUFDRSxnQkFBZ0I7QXJGbWtYbEI7O0FxRmprWEE7RUFDRSxnQkFBZ0I7QXJGb2tYbEI7O0FxRmxrWEE7RUFDRSxnQkFBZ0I7QXJGcWtYbEI7O0FxRm5rWEE7RUFDRSxnQkFBZ0I7QXJGc2tYbEI7O0FxRnBrWEE7RUFDRSxnQkFBZ0I7QXJGdWtYbEI7O0FxRnJrWEE7RUFDRSxnQkFBZ0I7QXJGd2tYbEI7O0FxRnRrWEE7RUFDRSxnQkFBZ0I7QXJGeWtYbEI7O0FxRnZrWEE7RUFDRSxnQkFBZ0I7QXJGMGtYbEI7O0FxRnhrWEE7RUFDRSxnQkFBZ0I7QXJGMmtYbEI7O0FxRnprWEE7RUFDRSxnQkFBZ0I7QXJGNGtYbEI7O0FxRjFrWEE7RUFDRSxnQkFBZ0I7QXJGNmtYbEI7O0FxRjNrWEE7RUFDRSxnQkFBZ0I7QXJGOGtYbEI7O0FxRjVrWEE7RUFDRSxnQkFBZ0I7QXJGK2tYbEI7O0FxRjdrWEE7RUFDRSxnQkFBZ0I7QXJGZ2xYbEI7O0FxRjlrWEE7RUFDRSxnQkFBZ0I7QXJGaWxYbEI7O0FxRi9rWEE7RUFDRSxnQkFBZ0I7QXJGa2xYbEI7O0FxRmhsWEE7RUFDRSxnQkFBZ0I7QXJGbWxYbEI7O0FxRmpsWEE7RUFDRSxnQkFBZ0I7QXJGb2xYbEI7O0FxRmxsWEE7RUFDRSxnQkFBZ0I7QXJGcWxYbEI7O0FxRm5sWEE7RUFDRSxnQkFBZ0I7QXJGc2xYbEI7O0FxRnBsWEE7RUFDRSxnQkFBZ0I7QXJGdWxYbEI7O0FxRnJsWEE7RUFDRSxnQkFBZ0I7QXJGd2xYbEI7O0FxRnRsWEE7RUFDRSxnQkFBZ0I7QXJGeWxYbEI7O0FxRnZsWEE7RUFDRSxnQkFBZ0I7QXJGMGxYbEI7O0FxRnhsWEE7RUFDRSxnQkFBZ0I7QXJGMmxYbEI7O0FxRnpsWEE7RUFDRSxnQkFBZ0I7QXJGNGxYbEI7O0FxRjFsWEE7RUFDRSxnQkFBZ0I7QXJGNmxYbEI7O0FxRjNsWEE7RUFDRSxnQkFBZ0I7QXJGOGxYbEI7O0FxRjVsWEE7RUFDRSxnQkFBZ0I7QXJGK2xYbEI7O0FxRjdsWEE7RUFDRSxnQkFBZ0I7QXJGZ21YbEI7O0FxRjlsWEE7RUFDRSxnQkFBZ0I7QXJGaW1YbEI7O0FxRi9sWEE7RUFDRSxnQkFBZ0I7QXJGa21YbEI7O0FxRmhtWEE7RUFDRSxnQkFBZ0I7QXJGbW1YbEI7O0FxRmptWEE7RUFDRSxnQkFBZ0I7QXJGb21YbEI7O0FxRmxtWEE7RUFDRSxnQkFBZ0I7QXJGcW1YbEI7O0FxRm5tWEE7RUFDRSxnQkFBZ0I7QXJGc21YbEI7O0FxRnBtWEE7RUFDRSxnQkFBZ0I7QXJGdW1YbEI7O0FxRnJtWEE7RUFDRSxnQkFBZ0I7QXJGd21YbEI7O0FxRnRtWEE7RUFDRSxnQkFBZ0I7QXJGeW1YbEI7O0FxRnZtWEE7RUFDRSxnQkFBZ0I7QXJGMG1YbEI7O0FxRnhtWEE7RUFDRSxnQkFBZ0I7QXJGMm1YbEI7O0FxRnptWEE7RUFDRSxnQkFBZ0I7QXJGNG1YbEI7O0FxRjFtWEE7RUFDRSxnQkFBZ0I7QXJGNm1YbEI7O0FxRjNtWEE7RUFDRSxnQkFBZ0I7QXJGOG1YbEI7O0FxRjVtWEE7RUFDRSxnQkFBZ0I7QXJGK21YbEI7O0FxRjdtWEE7RUFDRSxnQkFBZ0I7QXJGZ25YbEI7O0FxRjltWEE7RUFDRSxnQkFBZ0I7QXJGaW5YbEI7O0FxRi9tWEE7RUFDRSxnQkFBZ0I7QXJGa25YbEI7O0FxRmhuWEE7RUFDRSxnQkFBZ0I7QXJGbW5YbEI7O0FxRmpuWEE7RUFDRSxnQkFBZ0I7QXJGb25YbEI7O0FxRmxuWEE7RUFDRSxnQkFBZ0I7QXJGcW5YbEI7O0FxRm5uWEE7RUFDRSxnQkFBZ0I7QXJGc25YbEI7O0FxRnBuWEE7RUFDRSxnQkFBZ0I7QXJGdW5YbEI7O0FxRnJuWEE7RUFDRSxnQkFBZ0I7QXJGd25YbEI7O0FxRnRuWEE7RUFDRSxnQkFBZ0I7QXJGeW5YbEI7O0FxRnZuWEE7RUFDRSxnQkFBZ0I7QXJGMG5YbEI7O0FxRnhuWEE7RUFDRSxnQkFBZ0I7QXJGMm5YbEI7O0FxRnpuWEE7RUFDRSxnQkFBZ0I7QXJGNG5YbEI7O0FxRjFuWEE7RUFDRSxnQkFBZ0I7QXJGNm5YbEI7O0FxRjNuWEE7RUFDRSxnQkFBZ0I7QXJGOG5YbEI7O0FxRjVuWEE7RUFDRSxnQkFBZ0I7QXJGK25YbEI7O0FxRjduWEE7RUFDRSxnQkFBZ0I7QXJGZ29YbEI7O0FxRjluWEE7RUFDRSxnQkFBZ0I7QXJGaW9YbEI7O0FxRi9uWEE7RUFDRSxnQkFBZ0I7QXJGa29YbEI7O0FxRmhvWEE7RUFDRSxnQkFBZ0I7QXJGbW9YbEI7O0FxRmpvWEE7RUFDRSxnQkFBZ0I7QXJGb29YbEI7O0FxRmxvWEE7RUFDRSxnQkFBZ0I7QXJGcW9YbEI7O0FxRm5vWEE7RUFDRSxnQkFBZ0I7QXJGc29YbEI7O0FzRjduWUE7RUFDRSxnQkFBZ0I7QXRGZ29ZbEI7O0FzRjduWUE7RUFDRSxnQkFBZ0I7QXRGZ29ZbEI7O0FzRjduWUE7RUFDRSxnQkFBZ0I7QXRGZ29ZbEI7O0FzRjduWUE7RUFDRSxnQkFBZ0I7QXRGZ29ZbEI7O0FzRjduWUE7RUFDRSxnQkFBZ0I7QXRGZ29ZbEI7O0FzRjduWUE7RUFDRSxnQkFBZ0I7QXRGZ29ZbEI7O0FzRjduWUE7RUFDRSxnQkFBZ0I7QXRGZ29ZbEI7O0FzRjduWUE7RUFDRSxnQkFBZ0I7QXRGZ29ZbEI7O0FzRjduWUE7RUFDRSxnQkFBZ0I7QXRGZ29ZbEI7O0FzRjduWUE7RUFDRSxnQkFBZ0I7RUFDaEIsZUFBZTtBdEZnb1lqQjs7QXNGN25ZQTtFQUNFLGtCSnVFa0I7QWxGeWpZcEI7O0FzRmpvWUE7RUFHSSxtQkp1RWU7QWxGMmpZbkI7O0FzRjduWUE7RUFDRSxnQkFBZ0I7QXRGZ29ZbEI7O0FzRjduWUE7RUFDRSxnQkFBZ0I7QXRGZ29ZbEI7O0FzRjluWUE7RUFDRSxnQkFBZ0I7QXRGaW9ZbEI7O0FzRi9uWUE7RUFDRSxnQkFBZ0I7QXRGa29ZbEI7O0FzRmhvWUE7RUFDRSxnQkFBZ0I7QXRGbW9ZbEI7O0FzRmpvWUE7RUFDRSxnQkFBZ0I7QXRGb29ZbEI7O0FzRmxvWUE7RUFDRyxnQkFBZ0I7QXRGcW9ZbkI7O0FzRm5vWUE7RUFDRSxnQkFBZ0I7QXRGc29ZbEI7O0FzRm5vWUE7RUFDRSxnQkFBZ0I7QXRGc29ZbEI7O0FzRnBvWUE7RUFDRSxnQkFBZ0I7QXRGdW9ZbEI7O0FzRnBvWUE7RUFDRSxnQkFBZ0I7QXRGdW9ZbEI7O0FzRnJvWUE7RUFDRSxnQkFBZ0I7QXRGd29ZbEI7O0FzRnRvWUE7RUFDRSxnQkFBZ0I7QXRGeW9ZbEI7O0FzRnZvWUE7RUFDRSxnQkFBZ0I7QXRGMG9ZbEI7O0FzRnhvWUE7RUFDRSxnQkFBZ0I7QXRGMm9ZbEI7O0FzRnhvWUE7RUFDRSxnQkFBZ0I7QXRGMm9ZbEI7O0FzRnhvWUE7RUFDRSxnQkFBZ0I7QXRGMm9ZbEI7O0FzRnhvWUE7RUFDRSxnQkFBZ0I7QXRGMm9ZbEI7O0FzRnhvWUE7RUFDRSxnQkFBZ0I7QXRGMm9ZbEI7O0FzRnhvWUE7RUFDRSxnQkFBZ0I7QXRGMm9ZbEI7O0F1Ri92WUE7O3lCdkZtd1l5QjtBdUZod1l6QjtFQUNFLHlCTDRDYztFSzNDZCxnQkFBZ0I7RUFDaEIsY0xnRmE7RUsvRWIsaUJBQWlCO0VBQ2pCLGtCTHdHa0I7RUt2R2xCLGdCQUFnQjtBdkZrd1lsQjs7QXVGeHdZQTtFQVFJLGNMMkVXO0FsRnlyWWY7O0F1Rmp3WUE7RUFDRSx5QkwrQnFCO0FsRnF1WXZCOztBdUZsd1lBO0VBQ0UseUJMZ0ZpQjtBbEZxclluQjs7QXVGbndZQTtFQUNFLHlCTDBFb0I7RUt6RXBCLGNMeUVvQjtFS3hFcEIsbUJBQW1CO0VBQ25CLHlCTDhEYTtBbEZ3c1lmOztBdUZud1lBO0VBQ0UsaUNMNEJvQjtFSzNCcEIsbUJBQW1CO0VBQ25CLHlCTHdEYTtBbEY4c1lmOztBdUZud1lBOzt5QnZGdXdZeUI7QXVGcHdZekI7RUFDRSxZQUFZO0VBQ1osZ0JBQWdCO0VBQ2hCLGNMK0NhO0VLOUNiLGlCQUFpQjtFQUNqQixrQkx5RWtCO0VLeEVsQixlQUFlO0VBQ2Ysa0JBQWtCO0F2RnN3WXBCOztBdUZyd1lFO0VBQ0UsY0x5Q1c7RUt4Q1gsa0JBQWtCO0F2Rnd3WXRCOztBdUZ0d1lFO0VBQ0UsY0xxQ1c7QWxGb3VZZjs7QXVGcndZQTtFQUVFLDRCQUE0QjtFQUM1QixrQkFBa0I7RUFDbEIsbUJBQW1CO0F2RnV3WXJCOztBdUYzd1lBO0VBT0ksa0JBQWtCO0F2Rnd3WXRCOztBdUZwd1lBO0VBRUUseUJMdERxQjtFS3VEckIsa0JBQWtCO0VBQ2xCLGtCQUFrQjtBdkZzd1lwQjs7QXVGMXdZQTtFQU9JLGtCQUFrQjtBdkZ1d1l0Qjs7QXVGOXdZQTtFQVVJLHlCTDdEeUI7QWxGcTBZN0I7O0F1Rmx4WUE7RUFjSSx5QkxoRTRCO0VLaUU1QixhQUFhO0F2Rnd3WWpCOztBdUZwd1lBO0VBQ0UseUJMdEU4QjtBbEY2MFloQzs7QXVGcHdZQTtFQUVFLGlCTHdCbUI7RUt2Qm5CLHlCTG5GcUI7RUtvRnJCLGtCQUFrQjtBdkZzd1lwQjs7QXVGMXdZQTtFQU9JLGtCQUFrQjtBdkZ1d1l0Qjs7QXVGOXdZQTtFQVVJLHlCTHpGeUI7QWxGaTJZN0I7O0F1Rmx4WUE7RUFhSSx5QkwzRjRCO0VLNEY1QixhQUFhO0F2Rnl3WWpCOztBdUZyd1lBO0VBRUUseUJML0ZxQjtFS2dHckIsa0JMSWtCO0FsRm13WXBCOztBdUYxd1lBO0VBTUkseUJMbEd5QjtBbEYwMlk3Qjs7QXVGOXdZQTtFQVNJLHlCTHBHNEI7RUtxRzVCLGFBQWE7QXZGeXdZakI7O0F1RnB3WUE7RUFFRSxpQkxUbUI7RUtVbkIseUJMckV3QjtFS3NFeEIsa0JBQWtCO0F2RnN3WXBCOztBdUYxd1lBO0VBT0ksa0JBQWtCO0F2RnV3WXRCOztBdUY5d1lBO0VBVUkseUJMaEhtQjtBbEZ3M1l2Qjs7QXVGbHhZQTtFQWFJLHlCTG5IbUI7RUtvSG5CLGFBQWE7QXZGeXdZakI7O0F1RnJ3WUE7RUFFRSxpQkwzQm1CO0VLNEJuQix5QkxoSHdCO0VLaUh4QixrQkFBa0I7QXZGdXdZcEI7O0F1RjN3WUE7RUFPSSxrQkFBa0I7QXZGd3dZdEI7O0F1Ri93WUE7RUFTTSxjTDdEUztBbEZ1MFlmOztBdUZueFlBO0VBYUkseUJMekg0QjtBbEZtNFloQzs7QXVGdnhZQTtFQWdCSSx5QkwzSDRCO0VLNEg1QixhQUFhO0F2RjJ3WWpCOztBdUZ4d1lBOzt5QnZGNHdZeUI7QXVGendZekI7RUFFRSxjTDdFYTtFSzhFYixpQkxuRG1CO0VLb0RuQixtQkFB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cVoxQjs7QXVGenhZQTtBdkY0eFlBO0V1RjF4WUUsVUFBVTtFQUNWLGlDQUFpQztBdkY0eFluQzs7QXVGMXhZQTtBdkY2eFlBO0V1RjN4WUUsVUFBVTtFQUNWLDZCQUE2QjtBdkY2eFkvQjs7QXVGMXhZQTs7c0J2Rjh4WXNCO0F1RjN4WXRCO0VBQ0UsV0FBVztBdkY2eFliOztBdUY5eFlBO0VBS0ksaUJBQWlCO0VBQ2pCLGNMNWNtQjtFSzZjbkIsa0JMeldnQjtBbEZzb1pwQjs7QTZDdHZaQTtFMEM4ZEUsWUFBWTtFQUNaLFdBQVc7QXZGNHhZYjs7QXVGOXhZQTtFQUtJLG1CTDVZVztFSzZZWCxXQUFXO0VBQ1gseUJMeFphO0FsRnFyWmpCOztBdUZweVlBO0VBVUksa0JBQWtCO0VBQ2xCLFNBQVM7RUFDVCxXQUFXO0VBQ1gsa0JMeFhnQjtFS3lYaEIsY0wzYlk7QWxGeXRaaEI7O0F1RjV5WUE7RUFrQkksa0JBQWtCO0VBQ2xCLDhCTGhjWTtFS2ljWiwrQkxqY1k7QWxGK3RaaEI7O0F1Rmx6WUE7RUFzQk0sNkJMbmNVO0VLb2NWLGdDTHBjVTtFS3FjVixXQUFXO0VBQ1gsWUFBWTtFQUNaLFdBQVc7RUFDWCxrQkFBa0I7QXZGZ3lZeEI7O0F1RjN6WUE7RUE4Qk0sNEJBQTJCO0F2Rml5WWpDOztBdUYvellBO0VBaUNNLFVBQVU7QXZGa3lZaEI7O0F1Rm4wWUE7RUFvQ00sZUFBZTtFQUNmLGtCQUFrQjtFQUNsQixTQUFTO0VBQ1QsY0xwZFU7QWxGdXZaaEI7O0F1RjEwWUE7RUEwQ00sVUFBVTtBdkZveVloQjs7QXVGaHlZQTs7c0J2Rm95WXNCO0FpRC95WnRCO0VzQytnQkUsZUFBZTtFQUNmLGFBQWE7RUFDYixTQUFTO0VBQ1QsT0FBTztFQUNQLG9CQUFvQjtFQUNwQixjTDliYTtFSytiYixpQkFBaUI7RUFDakIsaUJMcmFtQjtFS3NhbkIsZUFBZTtBdkZteVlqQjs7QXVGNXlZQTtFQVlJLDhDQUE4QztBdkZveVlsRDs7QXVGaHpZQTtFQWdCSSxhQUFhO0F2Rm95WWpCOztBdUZwellBO0VBbUJJLG1CQUFt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LGlCQUFpQjtBekY4amFyQjs7QXlGaGthQTtFQUtNLGNQcEJjO0FsRm1sYXBCOztBeUYxamFBO0VBQ0Usa0JQaUNrQjtFT2hDbEIsZ0NQdEVxQjtFT3VFckIsa0JBQWtCO0F6RjZqYXBCOztBeUZoa2FBO0VBTUksZ0JBQWdCO0VBQ2hCLFlBQVk7QXpGOGphaEI7O0F5RnJrYUE7RUFTTSxVQUFTO0F6RmdrYWY7O0F5RnprYUE7RUFZTSxjUG5CVztFT29CWCxrQlBtQmM7QWxGOGlhcEI7O0F5RjlrYUE7RUFrQkksa0JQZ0JnQjtBbEZnamFwQjs7QXlGNWhhQTtFQUVJLGdCQUFnQjtBekY4aGFwQjs7QXlGaGlhQTtFQU9NLGFBQWE7RUFDYixtQkFBbUI7QXpGNmhhekI7O0F5RnJpYUE7RUFZTSxrQkFBa0I7RUFDbEIsbUJBQW1CO0F6RjZoYXpCOztBeUYxaWFBO0VBaUJNLG9CQUFvQjtBekY2aGExQjs7QXlGOWlhQTtFQW1CUSx5QlBoSndCO0FsRitxYWhDOztBeUZsamFBO0VBc0JRLHlCUGxKcUI7QWxGa3JhN0I7O0F5RnRqYUE7RUE0Qk0saUJBQWlCO0VBQ2pCLGlCUGhEVTtFT2lEVixjUHRHUztBbEZvb2FmOztBeUY1amFBO0VBaUNNLG1CQUFtQjtFQUNuQixrQlB4RGM7QWxGdWxhcEI7O0F5RnhoYUE7RUFuRUUsU0FBUztFQUNULGdCQUFlO0F6RitsYWpCOztBeUY5bGFFO0VBQ0UsVUFBVTtFQUNWLGlCQUFpQjtBekZpbWFyQjs7QXlGOWxhRTtFQUNFLFVBQVU7RUFDVixpQkFBaUI7QXpGaW1hckI7O0F5RjlsYUU7RUFDRSxnQkFBZ0I7RUFDaEIsaUJBQWlCO0F6RmltYXJCOztBeUY5bGFFO0VBQ0UseUJQeENXO0VPeUNYLHFCUHREYTtBbEZ1cGFqQjs7QXlGL2xhSTtFQUNFLHlCUHJEVztBbEZ1cGFqQjs7QXlGcmphQTtFQUtNLGlDQUFpQztBekZvamF2Qzs7QXlGemphQTtFQVFRLGFBQWE7RUFDYixtQkFBbUI7RUFDbkIsZ0JBQWdCO0F6RnFqYXhCOztBeUYvamFBO0VBaUJNLGtCQUFpQjtFQUFFLGdCQUFlO0VBQUUsY0FBYTtBekZvamF2RDs7QXlGcmthQTtFQW9CTSxpQ0FBaUM7QXpGcWphdkM7O0F5RnprYUE7RUFzQlEsaUNBQWlDO0F6RnVqYXpDOztBeUY3a2FBO0VBMEJRLG1CUC9JTztBbEZzc2FmOztBeUZqbGFBO0VBOEJRLGFBQWE7QXpGdWphckI7O0F5RmpqYUE7RUFDRSx5QkFBeUI7RUFDekIsZUFBZTtBekZvamFqQjs7QXlGdGphQTtFQUlJLHdCQUF3QjtFQUN4Qix5QkFBeUI7QXpGc2phN0I7O0F5RjNqYUE7RUFRTSxrQkFBa0I7RUFDbEIsV0FBVztFQUNYLGlCQUFpQjtFQUNqQixpQkFBaUI7RUFDakIsd0JBQXdCO0VBQ3hCLHFCQUFxQjtFQUNyQix5QlAzSVM7RU80SVQseUJQdkpXO0VPd0pYLDJCQUEyQjtFQUMzQixjUHhOaUI7QWxGK3dhdkI7O0F5RnhrYUE7RUFvQlEsbUJQN0tPO0FsRnF1YWY7O0F5RjVrYUE7RUE0Qk0sK0JBQStCO0F6Rm9qYXJDOztBeUZobGFBO0VBeUJRLG1CUDlMZTtFTytMZixjUHZKTztBbEZrdGFmOztBeUZyamFBO0VBQ0UsZ0JBQWdCO0F6RndqYWxCOztBeUZ6amFBO0VBSU0sY1AzT2lCO0FsRm95YXZCOztBeUY3amFBO0VBT00sbUJQaE1TO0FsRjB2YWY7O0F5RmhqYUE7RUFFSSxjQUFjO0F6RmtqYWxCOztBeUZwamFBO0VBS0ksZ0NBQWdDO0F6Rm1qYXBDOztBeUZ4amFBO0VBUUksY0FBYztBekZvamFsQjs7QXlGNWphQTtFQVlJLGVBQWU7QXpGb2phbkI7O0F5RmhqYUE7QUFDQTtFQUNFLGdCQUFnQjtFQUNoQixlQUFlO0F6Rm1qYWpCOztBeUZyamFBO0VBS0kseUJQak9hO0VPa09iLFlBQVk7RUFDWixrQkFBa0I7QXpGb2phdEI7O0F5RjNqYUE7RUFVTSxtQkFBbUI7RUFDbkIsY1A5Tlc7QWxGbXhhakI7O0F5RmhrYUE7RUFlTSw2QkFBNkI7QXpGcWphbkM7O0EwRngxYUE7RUFHSSxTQUFTO0ExRnkxYWI7O0EwRjUxYUE7RUFLTSxrQkFBa0I7RUFDbEIsU0FBUTtFQUNSLDhCUjhFUztFUTdFVCxtQkFBbUI7RUFDbkIsY1JvRFM7RVFuRFQsZ0JBQWU7QTFGMjFhckI7O0EwRnIyYUE7RUFhUSxZQUFZO0VBQ1osa0JBQWtCO0VBQ2xCLGVBQWU7QTFGNDFhdkI7O0EwRjMyYUE7RUFtQlEsY1JiZTtFUWNmLDBCUmRlO0VRZWYseUJSNEJvQjtBbEZnMGE1Qjs7QTBGajNhQTtFQXlCUSxjUm5CZTtFUW9CZix5QlJ1Qm9CO0VRdEJwQiwwQlJzQm9CO0FsRnMwYTVCOztBMEZ2M2FBO0VBK0JRLHFCQUFxQjtFQUNyQixXQUFXO0ExRjQxYW5COztBMEY1M2FBO0VBb0NRLGdCQUFnQjtBMUY0MWF4Qjs7QTBGaDRhQTtFQXlDUSxhQUFhO0ExRjIxYXJCOztBMEZwMWFBO0VBRUksY1JGbUI7RVFHbkIsa0JSNERnQjtFUTNEaEIsaUJBQWlCO0VBQ2pCLFlBQVk7QTFGczFhaEI7O0EwRjMxYUE7RUFRSSxjUktXO0VRSlgsa0JSc0RnQjtFUXJEaEIsaUJBQWlCO0ExRnUxYXJCOztBMEZsMWFFO0VBQ0UsY1JoQm1CO0VRaUJuQixpQkFBaUI7QTFGcTFhckI7O0EwRm4xYUU7RUFDRSxjUlBXO0VRUVgsaUJBQWlCO0ExRnMxYXJCOztBMEZsMWFBO0VBQ0Usa0JBQWtCO0ExRnExYXBCOztBMEZ0MWFBO0VBSUksZ0JBQWdCO0ExRnMxYXBCOztBMEYxMWFBO0VBUUksa0JBQWtCO0VBQ2xCLE1BQUs7RUFDTCxRQUFRO0VBQ1IsWUFBWTtFQUNaLFdBQVc7QTFGczFhZjs7QTBGbDJhQTtFQWNNLGtCUjBCYztBbEY4emFwQjs7QTBGdDJhQTtFQWtCSSxpQlJxQmlCO0FsRm0wYXJCOztBMEZwMWFBO0VBR0ksa0JSYWdCO0FsRncwYXBCOztBMEZ4MWFBO0VBTUksWUFBWTtBMUZzMWFoQjs7QTBGbDFhQTtFQUdJLGlCUklpQjtFUUhqQixjQUFjO0ExRm0xYWxCOztBMEZ2MWFBO0VBUUksZ0JBQWdCO0VBQ2hCLG1CQUFtQjtFQUNuQixnQkFBZ0I7QTFGbTFhcEI7O0EwRjcxYUE7RUFj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d0JBQXdCO0EzRmlvYjVCOztBMkYxb2JBO0VBWUkseUJUdEltQjtBbEZ3d2J2Qjs7QTJGL25iQTtFQUNFLGdCQUFnQjtBM0Zrb2JsQjs7QTJGL25iQTtFQUNFLFNBQVM7QTNGa29iWDs7QTBGM21iQTtFQ2pCSSxrQlRoRGdCO0VTaURoQixtQkFBbUI7QTNGZ29idkI7O0EwRmhuYkE7RUNkTSxlQUFlO0EzRmtvYnJCOztBMEZwbmJBO0VDVkksbUJBQW1CO0VBQ25CLG1CQUFtQjtFQUNuQixrQkFBa0I7RUFDbEIsdUJBQXVCO0EzRmtvYjNCOztBMEYzbmJBO0VDSE0sVUFBVTtBM0Zrb2JoQjs7QWV2dWJJO0UyRXdHSjtJQ0lRLFVBQVU7RTNGZ29iaEI7QUFDRjs7QTBGcm9iQTtFQ1VJLGtCQUFrQjtBM0YrbmJ0Qjs7QWVqdmJJO0UyRXdHSjtJQ2NNLGFBQWE7RTNGZ29iakI7QUFDRjs7QTJGNW5iQTtFQUlNLGNUL0hXO0FsRjJ2YmpCOztBMkZob2JBO0VBT1EsY1RsSVM7QWxGK3ZiakI7O0EyRnZuYkE7RUFJTSxrQlRyR2M7RVNzR2QsbUJBQW1CO0EzRnVuYnpCOztBMkY1bmJBO0VBU0ksY0FBYztBM0Z1bmJsQjs7QTJGbm5iQTtFQUVFLFlBQVk7QTNGcW5iZDs7QTJGbG5iQTtFQUNFLGlCQUFpQjtBM0ZxbmJuQjs7QTJGbG5iQTtFQUVFLGFBQWE7QTNGb25iZjs7QTJGam5iQTs7eUIzRnFuYnlCO0EyRmxuYnpCO0VBSUUsNkJBQTZCO0VBQzdCLDRCQUE0QjtBM0ZpbmI5Qjs7QWU1eGJJO0U0RThLSjtJQUlNLG1CQUFtQjtFM0YrbWJ2QjtFMkZubmJGO0lBT00sbUJBQW1CO0UzRittYnZCO0FBQ0Y7O0EyRjNtYkE7RUFFSSw2QkFBNkI7QTNGNm1iakM7O0EyRi9tYkE7RUFJTSxXQUFXO0EzRittYmpCOztBZTF6Ykk7RTRFaU5KO0lBR00sVUFBVTtJQUNWLG1CQUFtQjtJQUNuQixlQUFlO0UzRjJtYm5CO0FBQ0Y7O0EyRmpuYkE7RUFXUSxXQUFXO0EzRjBtYm5COztBZXp6Ykk7RTRFb01KO0lBaUJNLGFBQWE7RTNGeW1iakI7QUFDRjs7QTJGcG1iQTs7eUIzRndtYnlCO0EyRnJtYnpCO0VBRUkseUJUcE5hO0VTcU5iLFlBQVk7RUFDWixrQkFBa0I7RUFDbEIsMkJBQTJCO0EzRnNtYi9COztBMkYzbWJBO0VBUUksa0JBQWtCO0EzRnVtYnRCOztBMkYvbWJBO0VBVU0sbUJBQW1CO0EzRnltYnpCOztBMkZwbWJBO0VBQ0UsTUFBTTtFQUNOLFdBQVc7RUFDWCxrQkFBa0I7RUFDbEIsbUJBQW1CO0EzRnVtYnJCOztBMkZwbWJBO0VBQ0UsaUNBQWlDO0VBQ2pDLG9CQUFtQjtFQUNuQixzQkFBcUI7QTNGdW1idkI7O0EyRjFtYkE7RUFNTSw2QlQxUFc7RVMyUFgsZ0JBQWdCO0EzRndtYnRCOztBMkYvbWJBO0VBVU0sOEJBQTZCO0EzRnltYm5DOztBMkZubmJBO0VBYVEsbUJBQW1CO0EzRjBtYjNCOztBNEZwN2JBOztzQjVGdzdic0I7QTRGcjdidEI7RUFDRSxtREFBbUQ7RUFDbkQscUNBQXFDO0VBQ3JDLDRCQUE2QjtFQUM3Qiw2QlYrRWE7RVU5RWIsaUJBQWlCO0E1RnU3Ym5COztBNEY1N2JBO0VBUUksYUFBYTtBNUZ3N2JqQjs7QTRGaDhiQTtFQVdJLFlBQVk7QTVGeTdiaEI7O0E0RnA4YkE7RUFjSSxtQlZtR2U7RVVsR2YsY1ZvRVc7RVVuRVgsaUJBQWlCO0VBQ2pCLGlCQUFpQjtBNUYwN2JyQjs7QTRGeDdiSTtFQW5CSjtJQW9CTSwwQkFBeUI7RTVGNDdiN0I7QUFDRjs7QWUzNGJJO0U2RXRFSjtJQXlCTSxZQUFZO0U1RjY3YmhCO0FBQ0Y7O0E0RjM3YkU7RUE1QkY7SUE2Qk0sMkJBQTJCO0U1Ris3Yi9CO0FBQ0Y7O0E0RjU3YkE7RUFDRSx3QkFBd0I7RUFDeEIsa0JBQWtCO0E1Ris3YnBCOztBNEZqOGJBO0VBSUksbUJWNEVlO0VVM0VmLGtCQUFpQjtBNUZpOGJyQjs7QTRGdDhiQTtFQU9NLGNWMkNTO0FsRnc1YmY7O0E0Rjk3YkE7O3NCNUZrOGJzQjtBNEYvN2J0QjtFQUNFLGNBQWM7QTVGaThiaEI7O0E0Rmw4YkE7RUFHSSxnQkFBZ0I7QTVGbThicEI7O0E0RnQ4YkE7RUFNSSxjVmxEbUI7QWxGcy9idkI7O0E0RjE4YkE7RUFTSSxpQkFBaUI7RUFDakIsaUJWc0RZO0VVckRaLGNWdkRtQjtBbEY0L2J2Qjs7QTRGaDliQTtFQWNJLGtCQUFrQjtBNUZzOGJ0Qjs7QTRGcDliQTtFQWlCTSxpQlZpRFk7QWxGczVibEI7O0E0Rng5YkE7RUFvQk0sYUFBYTtBNUZ3OGJuQjs7QTRGNTliQTtFQXVCTSxrQlZ3Q2M7QWxGaTZicEI7O0E0RmgrYkE7RUEyQkksY1ZmYTtBbEZ3OWJqQjs7QTRGdDhiQTtFQUNFLGtCQUFrQjtFQUNsQixTQUFTO0E1Rnk4Ylg7O0E0RjM4YkE7RUFLSSxjVi9FbUI7RVVnRm5CLGlCVjhCYztBbEY0NmJsQjs7QTRGdDhiQTs7c0I1RjA4YnNCO0E0RnY4YnRCO0VBQ0UsbUJWeEZxQjtFVXlGckIsd0JBQXdCO0E1Rnk4YjFCOztBNEYzOGJBO0VBT1Esa0JBQWtCO0E1Rnc4YjFCOztBNEYvOGJBO0VBVVEsbUJBQW1CO0E1Rnk4YjNCOztBNEZuOWJBO0VBZU0sdUJBQXVCO0VBQ3ZCLGdDQUF1QztBNUZ3OGI3Qzs7QTRGeDliQTtFQW1CUSxrQkFBa0I7QTVGeThiMUI7O0E0RjU5YkE7RUF5Qk0saUJBQWtCO0E1RnU4YnhCOztBNEZoK2JBO0VBNEJRLHlCVnBDTztFVXFDUCxvQ0FBMkM7RUFDM0MsMEJBQXlCO0VBQ3pCLFlBQVk7RUFDWixrQlZaWTtBbEZvOWJwQjs7QTRGeCtiQTtFQWtDVSxjVnZETztBbEZpZ2NqQjs7QTRGNStiQTtFQXNDUSx1QkFBdUI7RUFDdkIsb0NBQTJDO0VBQzNDLHlCQUF3QjtBNUYwOGJoQzs7QTRGbC9iQTtFQTBDVSxlQUFlO0VBQ2YsY1Y3SGE7QWxGeWtjdkI7O0E0RnYvYkE7RUFnRFEsU0FBUztFQUNULGNBQWM7RUFDZCxXQUFXO0VBQ1gsZ0JBQWdCO0E1RjI4YnhCOztBNEY5L2JBO0VBMERJLGlCQUFpQjtFQUNqQixjVm5FVztFVW9FWCxtQlZ0Q2U7RVV1Q2Ysa0JB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YTtBbEZrbGZqQjs7QStGbHllQTtFQVlJLHlCYjVUYTtBbEZzbGZqQjs7QStGdHllQTtFQWVJLGNidFhzQjtBbEZpcGYxQjs7QStGdnhlQTtFQUNFLGNBQWM7RUFDZCxnQkFBZ0I7QS9GMHhlbEI7O0FnR25yZkE7O3NCaEd1cmZzQjtBZ0ducmZ0QjtFQUNFLHlCZDZFZTtBbEZ3bWZqQjs7QWdHdHJmQTtFQUdJLHFCQUFxQjtFQUNyQixtQkFBbUI7QWhHdXJmdkI7O0FnRzNyZkE7RUFPTSxjZHFEVztFY3BEWCxpQkFBaUI7QWhHd3JmdkI7O0FnR2hzZkE7RUFXTSxpQkFBaUI7QWhHeXJmdkI7O0FnR3BzZkE7RUFhUSxjZDZDTztBbEY4b2ZmOztBZ0d4c2ZBO0VBaUJNLGtCQUFrQjtBaEcycmZ4Qjs7QWdHdHJmQTtFQUNFLGdCQUFnQjtBaEd5cmZsQjs7QWdHMXJmQTtFQUdJLGlCQUFpQjtFQUNqQixjQUFjO0VBQ2QsZ0JBQWdCO0VBQ2hCLGtCZGdGZ0I7RWMvRWhCLGlCQUFpQjtFQUNqQixjZHRCbUI7RWN1Qm5CLDZCQUE2QjtFQUM3Qix5QmR4Qm1CO0FsRm10ZnZCOztBZ0dyc2ZBO0VBWU0sY2RnRFM7RWMvQ1QseUJkM0JpQjtFYzRCakIsWUFBWTtBaEc2cmZsQjs7QWdHeHJmQTtFQUNFLFVBQVU7RUFDVixVQUFVO0VBQ1Ysa0JBQWtCO0FoRzJyZnBCOztBZ0d4cmZBOzs7RUFHRSwyQkFBMkI7QWhHMnJmN0I7O0FnR3pyZkE7O3NCaEc2cmZzQjtBZ0d6cmZ0QjtFQUNFLGdCQUFnQjtFQUNoQix5QmQ1Q3FCO0VjNkNyQixrQkFBa0I7QWhHMnJmcEI7O0FnRzlyZkE7RUFTSSxvQkFBb0I7QWhHeXJmeEI7O0FnR2xzZkE7RUFNTSw4QmRPVztBbEZ5cmZqQjs7QWdHdHNmQTtFQVdNLGtCQUFrQjtFQUNsQixpQkFBaUI7RUFDakIsa0JkeUNjO0FsRnNwZnBCOztBZ0d6cmZBO0VBRUksZ0JBQWdCO0VBQ2hCLFVBQVU7RUFDVixjZG5CYTtBbEY4c2ZqQjs7QWdHL3JmQTtFQU9NLHFCQUFxQjtBaEc0cmYzQjs7QWdHbnNmQTtFQVdJLGlCQUFpQjtFQUNqQixpQkFBaUI7RUFDakIsY2Q5Qlc7QWxGMHRmZjs7QWdHenNmQTtFQWVNLGNkaENTO0FsRjh0ZmY7O0FnR3pyZkE7RUFFSSxjZGZXO0VjZ0JYLGlCQUFpQjtFQUNqQixhZGpCVztFY2tCWCwrQkFBeUM7RUFDekMsY0FBYztBaEcycmZsQjs7QWdHanNmQTtFQVNNLGNkOUNTO0VjK0NULGFkL0NTO0VjZ0RULGVBQWU7QWhHNHJmckI7O0FnR3ZzZkE7RUFjTSxjZHBGb0I7RWNxRnBCLGtCZEZjO0VjR2Qsa0JBQWtCO0FoRzZyZnhCOztBZ0c3c2ZBO0VBbUJRLFlBQVk7RUFDWiw2QkFBNkI7RUFDN0IsY2QzRmtCO0FsRnl4ZjFCOztBQXhwZkE7RWdHN0JJLGNkbkVXO0Vjb0VYLGdCQUFnQjtFQUNoQixZQUFZO0VBQ1osVUFBVTtFQUNWLGFBQWE7RUFDYixlQUFlO0VBQ2YsZ0JBQWdCO0FoR3lyZnBCOztBQWxxZkE7RWdHcEJNLGNkOUhpQjtFYytIakIsaUJBQWlCO0FoRzByZnZCOztBZ0d0cmZBOzs7c0JoRzJyZnNCO0FnR3ZyZnRCO0VBQ0Usb0JBQW9CO0FoR3lyZnRCOztBZ0cxcmZBO0VBSU0seUJBQXlCO0FoRzByZi9COztBZ0c5cmZBO0VBT00sY2Q5SWlCO0VjK0lqQixXQUFXO0FoRzJyZmpCOztBZ0duc2ZBO0VBV00sZ0JBQWdCO0VBQ2hCLFlBQVk7QWhHNHJmbEI7O0FnR3hzZkE7RUFnQkkseUJBQXlCO0VBQ3pCLGNkdEdXO0FsRmt5ZmY7O0FnRzdzZkE7RUFvQkksaUJkdERpQjtBbEZtdmZyQjs7QWdHanRmQTtFQXVCSSx5QmQxSFk7RWMySFosYUFBYTtBaEc4cmZqQjs7QWdHdHRmQTtFQTBCTSx5QmQ5SGdCO0FsRjh6ZnRCOztBZ0czcmZBO0VBQ0UsZ0JBQWdCO0FoRzhyZmxCOztBZ0cvcmZBO0VBSUksVUFBVTtFQUNWLGdCQUFnQjtBaEcrcmZwQjs7QWdHcHNmQTtFQVFNLGVBQWU7RUFDZixpQkFBaUI7RUFDakIsb0JkOUVnQjtBbEY4d2Z0Qjs7QWdHMXNmQTtFQWNJLGFBQWE7QWhHZ3NmakI7O0FnRzVyZkE7RUFFSSxjZDFMbUI7RWMyTG5CLDZCQUE2QjtFQUM3Qix5QmQ1TG1CO0VjNkxuQixvQkFBb0I7RUFDcEIsYUFBYTtFQUNiLGdCQUFnQjtFQUNoQixpQmQzRmlCO0VjNEZqQixjQUFjO0FoRzhyZmxCOztBZ0d2c2ZBO0VBWU0seUJkOUxpQjtBbEY2M2Z2Qjs7QWdHMXJmQTtFQUNFLGFBQWE7QWhHNnJmZjs7QWdHOXJmQTtFQUdJLHlCZDVNbUI7RWM2TW5CLGNkbklXO0Vjb0lYLGdCQUFnQjtFQUNoQixpQmQxR2lCO0VjMkdqQixjQUFjO0FoRytyZmxCOztBZ0czcmZBO0VBQ0UsNEJBQTRCO0FoRzhyZjlCOztBZ0cvcmZBO0VBR0ksY2R2Tm1CO0Vjd05uQixpQkFBaUI7QWhHZ3NmckI7O0FnR3BzZkE7RUFNTSxjZHpOdUI7QWxGMjVmN0I7O0FnR3hzZkE7RUFXTSxjZC9OaUI7RWNnT2pCLGlCQUFpQjtBaEdpc2Z2Qjs7QWdHN3NmQTtFQWNRLGNkak9xQjtBbEZvNmY3Qjs7QWdHanRmQTtFQW1CSSxpQkFBaUI7RUFDakIseUJkeE9tQjtFY3lPbkIsWUFBWTtFQUNaLGlCQUFpQjtFQUNqQixpQkFBaUI7RUFDakIsa0JBQWtCO0FoR2tzZnRCOztBZ0c5cmZBO0VBQ0UsVUFBVTtFQUNWLGdCQUFnQjtBaEdpc2ZsQjs7QWdHN3JmQTtFQUNFLGFBQWE7RUFDYixtQkFBbUI7RUFDbkIsa0JBQWtCO0VBQ2xCLGdCQUFnQjtFQUNoQixZQUFZO0FoR2dzZmQ7O0FnR3JzZkE7RUFRSSxjZDVNVztBbEY2NGZmOztBZ0d6c2ZBO0VBV0ksY2R0TmdCO0VjdU5oQixpQkFBaUI7QWhHa3NmckI7O0FnRzlzZkE7RUFlSSxnQkFBZ0I7RUFDaEIsZ0JBQWdCO0VBQ2hCLFVBQVU7QWhHbXNmZDs7QWdHcHRmQTtFQW9CSSx5QmQxUW1CO0VjMlFuQixrQkFBa0I7RUFDbEIsU0FBUztFQUNULFlBQVk7RUFDWixXQUFXO0VBQ1gsWUFBWTtBaEdvc2ZoQjs7QWdHN3RmQTtFQTRCTSxjZGxSaUI7QWxGdTlmdkI7O0FnR2p1ZkE7RUFnQ0ksa0JBQWtCO0FoR3FzZnRCOztBZ0dydWZBO0VBbUNJLGlCQUFpQjtBaEdzc2ZyQjs7QWdHbHNmQTs7O3NCaEd1c2ZzQjtBZ0duc2Z0QjtFQUNFLGlCQUFpQjtFQUNqQixzQkFBc0I7RUFDdEIsZ0JBQWdCO0VBQ2hCLGFBQWE7QWhHcXNmZjs7QWdHenNmQTtFQU9JLFdBQVc7RUFDWCxrQkFBa0I7RUFDbEIsY2RoUXNCO0VjaVF0QixpQmRwTVk7RWNxTVosa0JBQWtCO0VBQ2xCLFVBQVU7QWhHc3NmZDs7QWdHbHRmQTtFQWdCTSx5QmRqUFc7RWNrUFgsY0FBYztBaEdzc2ZwQjs7QWdHdnRmQTtFQW9CTSxjZG5RUztBbEYwOGZmOztBZ0dsc2ZBOzs7c0JoR3VzZnNCO0FnR25zZnRCO0VBRUksZ0JBQWdCO0FoR29zZnBCOztBZ0d0c2ZBO0VBTUksaUJBQWlCO0VBQ2pCLGdCQUFnQjtFQUNoQixlQUFlO0FoR29zZm5COztBZ0c1c2ZBO0VBY00saUJBQWlCO0VBQ2pCLGNBQWM7RUFDZCxnQkFBZ0I7RUFDaEIsa0JkM09jO0VjNE9kLGlCQUFpQjtFQUNqQixjZGpWaUI7RWNrVmpCLDZCQUE2QjtFQUM3Qix5QmRuVmlCO0FsRnFoZ0J2Qjs7QWdHdnRmQTtFQXVCUSxjZDNRTztFYzRRUCx5QmR0VmU7RWN1VmYsWUFBWTtBaEdvc2ZwQjs7QWdHN3RmQTtFQStCSSxhQUFhO0FoR2tzZmpCOztBZ0dqdWZBO0VBaUNNLGNBQWM7RUFDZCx5QmRuU1c7RWNvU1gsZ0JBQWdCO0VBQ2hCLGlCQUFpQjtFQUNqQixlQUFlO0FoR29zZnJCOztBZ0cvcmZBO0VBQ0UsVUFBVTtBaEdrc2ZaOztBZ0cvcmZBO0VBRUksZ0JBQWdCO0FoR2lzZnBCOztBZ0duc2ZBO0VBTU0sbUJBQW1CO0VBRXJCLHlCZDlXbUI7RWMrV25CLGNkM1NXO0VjNFNYLGtCZGxSZ0I7QWxGazlmcEI7O0FnRzFzZkE7RUFZTSx5QmRqWHVCO0FsRm1qZ0I3Qjs7QWdHOXNmQTtFQWlCSSxhQUFhO0FoR2lz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O0VBZ0ZRLHlCZGxoQlM7RWNtaEJULGNkL2hCUztFY2dpQlQsa0JkOWVZO0VjK2VaLGtCQUFrQjtFQUNsQixpQkFBaUI7RUFDakIsWUFBWTtBaEcwc2ZwQjs7QWdHL3hmQTtFQXdGVSxrQkFBa0I7RUFDbEIsUUFBUTtBaEcyc2ZsQjs7QWdHcHlmQTtFQTRGWSxtQkFBbUI7QWhHNHNmL0I7O0FnR3h5ZkE7RUFpR1UsWUFBWTtFQUNaLGtCQUFrQjtBaEcyc2Y1Qjs7QWdHN3lmQTtFQXFHWSxpQkFBaUI7QWhHNHNmN0I7O0FnR2p6ZkE7RUEwR1UsbUJBQW1CO0VBQ25CLGlCZHhnQlc7QWxGbXRnQnJCOztBdUZwd2dCQTtFU2trQkksaUJkamhCaUI7RWNraEJqQixjZDdpQlc7RWM4aUJYLGFBQWE7QWhHc3NmakI7O0FnR2xzZkE7RUFDRSx5QmRoa0JlO0VjaWtCZixjZDVrQmE7RWM2a0JiLGlCZDVoQmtCO0VjNmhCbEIsYUFBYTtFQUNiLGtCQUFrQjtFQUNsQixpQkFBaUI7QWhHcXNmbkI7O0FnRzNzZkE7RUFTSSxrQkFBa0I7QWhHc3NmdEI7O0FnR2xzZkE7RUFFSSxjZHhsQmE7RWN5bEJiLGlCZHppQmdCO0FsRjZ1Z0JwQjs7QWdHdnNmQTtFQU1JLFlBQVk7QWhHcXNmaEI7O0FnR2pzZkE7O3NCaEdxc2ZzQjtBZ0dsc2Z0QjtFQUNFLGNkMWxCZTtFYzJsQmYsa0JkcGpCa0I7RWNxakJsQixlQUFlO0VBQ2YsZ0JBQWdCO0FoR29zZmxCOztBZ0dsc2ZBOztzQmhHc3Nmc0I7QWdHbnNmdEI7RUFDRSx3QkFBd0I7RUFDeEIseUJkdmxCYTtFY3dsQmIsaUJBQWlCO0VBQ2pCLGNBQWM7RUFDZCxhQUFhO0VBQ2IsZ0JBQWdCO0VBQ2hCLGlDZDFuQm9CO0FsRit6Z0J0Qjs7QWdHNXNmQTtFQVNJLFlBQVk7QWhHdXNmaEI7O0FnR2h0ZkE7RUFZTSx5QkFBd0I7RUFDeEIsZUFBZTtBaEd3c2ZyQjs7QWdHbHNmQTtFQUNFLHlCZG5uQmU7RWNvbkJmLGtCQUFrQjtBaEdxc2ZwQjs7QWdHdnNmQTtFQUtJLGNkbm9CYTtFY29vQmIsa0JkbGxCZ0I7RWNtbEJoQixpQkFBaUI7QWhHc3NmckI7O0FnRzdzZkE7RUFVSSxrQkFBa0I7RUFDbEIsaUJBQWlCO0FoR3VzZnJCOztBZ0duc2ZBO0VBRUksOEJBQXdDO0FoR3FzZjVDOztBZ0d2c2ZBO0VBS0ksOEJBQXdDO0FoR3NzZjVDOztBZ0czc2ZBO0VBUUksOEJBQXNDO0FoR3VzZjFDOztBZ0duc2ZBO0VBQ0UseUJBQXlCO0FoR3NzZjNCOztBZ0duc2ZBO0VBQ0UseUJkMW9CZTtFYzJvQmYsZ0JBQWdCO0FoR3NzZmxCOztBZ0d4c2ZBO0VBSUksZ0JBQWdCO0FoR3dzZnBCOztBZ0c1c2ZBO0VBTU0seUJkaHNCc0I7QWxGMDRnQjVCOztBZ0dodGZBO0VBU00seUJkMXRCaUI7QWxGcTZnQnZCOztBZ0dwdGZBO0VBWU0seUJkL3JCcUI7QWxGMjRnQjNCOztBZ0d4dGZBO0VBZU0seUJkL3NCb0I7QWxGNDVnQjFCOztBZ0c1dGZBO0VBa0JNLHlCZDF0QmtCO0FsRnc2Z0J4Qjs7QWdHaHVmQTtFQXFCTSx5QmR6dUIwQjtBbEZ3N2dCaEM7O0FnR3pzZkE7QUFFQTtFQUNFLG1CZHRxQmU7QWxGaTNnQmpCOztBZ0d6c2ZBO0VBRUksZ0JBQWdCO0FoRzJzZnBCOztBZ0c3c2ZBO0VBS0kseUJkaHZCbUI7QWxGNDdnQnZCOztBZ0d4c2ZBO0VBQ0UsWUFBWTtBaEcyc2ZkOztBZ0d4c2ZBO0VBQ0UsY0FBbUI7RUFDbkIsaUJBQW9CO0VBQ3BCLHFCQUFxQjtFQStFckI7QWhHNm5mRjs7QWdHL3NmQTtFQUtJLFdBQVc7QWhHOHNmZjs7QWdHbnRmQTtFQVFJLHlCZDlyQmE7RWMrckJiLGtDZDdyQlc7QWxGNDRnQmY7O0FnR3h0ZkE7RUFXTSxzQkFBc0I7RUFDdEIsc0JBQTZCO0FoR2l0Zm5DOztBZ0c3dGZBO0VBY1EsaUJBQWtCO0VBQ2xCLHNCQUFzQjtFQUN0QiwrQmRwc0JPO0VjcXNCUCxzQkFBc0I7QWhHbXRmOUI7O0FnR3B1ZkE7RUFvQlEsaUJBQWlCO0FoR290ZnpCOztBZ0d4dWZBO0VBdUJRLGtC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NzJoQkE7RUFnQk0seUJqQnRKaUI7RWlCdUpqQixpQmpCbERlO0VpQm1EZixtQkFBbUI7QW5HaTJoQnpCOztBbUczMWhCQTtFQUdNLFdBQVc7QW5HNDFoQmpCOztBbUcvMWhCQTtFQU1NLFlBQVk7QW5HNjFoQmxCOztBbUduMmhCQTtFQVNNLFlBQVk7QW5HODFoQmxCOztBbUd2MmhCQTtFQWNNLGNqQjFIUztFaUIySFQsV0FBVztFQUNYLFlBQVk7QW5HNjFoQmxCOztBbUc3MmhCQTtFQW1CTSxrQmpCN0VjO0VpQjhFZCxnQkFBZ0I7RUFDaEIsaUJBQWlCO0VBQ2pCLGtCQUFrQjtFQUNsQix5QmpCckhXO0VpQnNIWCwwQkFBMEI7QW5HODFoQmhDOztBbUd0M2hCQTtFQTBCUSx5QmpCL0hTO0FsRis5aEJqQjs7QW1HMTNoQkE7RUErQkksa0JqQnZGZ0I7RWlCd0ZoQixnQkFBZ0I7QW5HKzFoQnBCOztBbUcvM2hCQTtFQW1DSSxpQkFBaUI7RUFDakIsY2pCbE1tQjtFaUJtTW5CLGtCakIvRmdCO0FsRis3aEJwQjs7QW1HcjRoQkE7RUF3Q0ksa0JqQmxHZ0I7RWlCbUdoQixjakJ4TG1CO0FsRnloaUJ2Qjs7QW1HMTRoQkE7RUE0Q0ksa0JqQnRHZ0I7QWxGdzhoQnBCOztBbUc5MWhCQTtFQUNFLHlCakJsSmU7RWlCbUpmLGdCQUFnQjtFQUNoQixrQkFBa0I7QW5HaTJoQnBCOztBbUdwMmhCQTtFQU1JLDRCQUE0QjtBbkdrMmhCaEM7O0FtR3gyaEJBO0VBU0ksY0FBYztBbkdtMmhCbEI7O0FtRzUyaEJBO0VBWUksNkJBQTZCO0VBQzdCLFlBQVk7RUFDWixjakIxS1c7RWlCMktYLGlCQUFpQjtFQUNqQixhQUFhO0FuR28yaEJqQjs7QW1HcDNoQkE7RUFtQk0sY2pCdExjO0VpQnVMZCxrQkFBa0I7QW5HcTJoQnhCOztBbUd6M2hCQTtFQXdCSSx5QmpCdE9tQjtBbEYya2lCdkI7O0FtRzczaEJBO0VBMEJNLGNqQjlKUztBbEZxZ2lCZjs7QW1HMTJoQkk7RUFTRixjakJ4TGU7RWlCeUxmLGtCQUFrQjtBbkdxMmhC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R28rakJoQjs7QXVHeitqQkE7RUFRTSxjckI4QlM7QWxGdThqQmY7O0F1RzcrakJBO0VBWU0saUJBQWlCO0F2R3ErakJ2Qjs7QXVHai9qQkE7RUFlUSxnQkFBZ0I7QXZHcytqQnhCOztBdUdyL2pCQTtFQW9CTSxrQkFBa0I7RUFDbEIsaUJyQm9FZTtFcUJuRWYsZ0JBQWdCO0F2R3ErakJ0Qjs7QXVHMy9qQkE7RUEyQlEsY3JCdkNlO0FsRjJna0J2Qjs7QXVHLy9qQkE7RUErQlEseUJyQnFCUztBbEYrOGpCakI7O0F1R25na0JBO0VBcUNJLHlCckJlYTtBbEZtOWpCakI7O0F1R3Zna0JBO0VBd0NNLGNyQnBEaUI7QWxGdWhrQnZCOztBdUc3OWpCQTtFQUNFLG1CQUFtQjtBdkdnK2pCckI7O0F1R2orakJBO0VBSUksa0JyQndDZ0I7RXFCdkNoQixjckJYYTtBbEY0K2pCakI7O0F1R3QrakJBO0VBVU0sa0JBQWtCO0VBQ2xCLGtCckJpQ2M7RXFCaENkLGNyQnRFaUI7RXFCdUVqQixtQnJCQ1c7QWxGKzlqQmpCOztBdUc3K2pCQTtFQWVRLGtCckIyQlk7RXFCMUJaLGtCQUFpQjtFQUNqQixrQkFBaUI7QXZHaytqQnpCOztBdUc1OWpCQTtFQUVJLGtCQUFrQjtBdkc4OWpCdEI7O0F1R2grakJBO0VBS0ksa0JBQWtCO0VBQ2xCLFFBQVE7RUFDUixTQUFTO0VBQ1QsWUFBWTtFQUNaLGdDQUFnQztFQUNoQyxXQUFXO0VBQ1gsWUFBWTtFQUNaLFlBQVk7RUFDWix5QnJCdEJhO0VxQnVCYixhQUFhO0F2Rys5akJqQjs7QXVHMzlqQkE7RUFDRSwwQnJCekdxQjtFcUIwR3JCLGtCQUFrQjtFQUNsQixVQUFVO0VBQ1YsYUFBYTtFQUNiLGtCQUFrQjtBdkc4OWpCcEI7O0F1R24rakJBO0VBT0kseUJyQjdEYTtBbEY2aGtCakI7O0F1R3YrakJBO0VBWUksY3JCcEhtQjtFcUJxSG5CLGdCQUFnQjtBdkcrOWpCcEI7O0F1RzUrakJBO0VBaUJJLGNyQjVEYTtFcUI2RGIsaUJBQWlCO0VBQ2pCLGlCckJmWTtBbEY4K2pCaEI7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ZytqQnJCOztBdUczZ2tCQTtFQThDWSxlQUFlO0F2R2krakIzQjs7QXVHL2drQkE7RUFtRFUsaUJBQWlCO0F2R2crakIzQjs7QXVHbmhrQkE7RUF1RFEsVUFBVTtFQUNWLFlBQVk7QXZHZytqQnBCOztBdUd4aGtCQTtFQTREUSxtQnJCdlJTO0FsRnV2a0JqQjs7QXVHNWhrQkE7RUFnRVEsbUJyQnBSUztFcUJxUlQsZ0JBQWdCO0VBQ2hCLGlDckI5U2M7RXFCK1NkLGtCQUFrQjtBdkdnK2pCMUI7O0F1R25pa0JBO0VBc0VVLGVBQWU7QXZHaStqQnpCOztBdUd2aWtCQTtFQXdFWSxnQ3JCblNLO0FsRnN3a0JqQjs7QXVHM2lrQkE7RUEyRVksaUJBQWlCO0F2R28rakI3Qjs7QXVHL2lrQkE7RUE4RVksbUJBQW1CO0VBQ25CLGNyQjVXVztBbEZpMWtCdkI7O0F1Rzc5akJBOztDdkdpK2pCQztBdUc5OWpCRDtFQUNFLFVBQVU7RUFDVixtQnJCOVNlO0FsRjh3a0JqQjs7QXVHbCtqQkE7RUFLSSxtQnJCaFh5QjtBbEZpMWtCN0I7O0F1Rzk5akJBO0VBQ0UsbUJyQnBYMkI7QWxGcTFrQjdCOztBdUc3OWpCQTtFQUNFLG1CckI1VGU7RXFCNlRmLGlCQUFnQjtBdkdnK2pCbEI7O0F1R2wrakJBO0VBSUksYUFBWTtFQUNaLHNCQUFzQjtBdkdrK2pCMUI7O0F1R3YrakJBO0VBUUksY3JCdFhzQjtBbEZ5MWtCMUI7O0F1RzMrakJBO0VBV0ksZ0JBQWdCO0VBQ2hCLGNyQnZWYTtFcUJ3VmIsa0JBQWlCO0F2R28rakJyQjs7QXVHai9qQkE7RUFnQkksY3JCOVhzQjtFcUIrWHRCLG1CQUFtQjtBdkdxK2pCdkI7O0F1R2grakJBOztFdkdvK2pCRTtBdUdoK2pCRjtFQUVJLGdCQUFnQjtFQUNoQixZQUFZO0F2R2krakJoQjs7QXVHcCtqQkE7RUFNSSxrQnJCelRnQjtFcUIwVGhCLGlCQUFpQjtBdkdrK2pCckI7O0F1Rzk5akJBO0VBRUksbUJyQmhXYTtFcUJpV2IsOEJBQTZCO0F2R2crakJqQzs7QWdHeHVqQkE7RU9wUEksVUFBUztFQUNULGlCQUFpQjtBdkdnK2pCckI7O0F1R3grakJBO0VBV00sbUJyQi9haUI7QWxGZzVrQnZCOztBdUc1K2pCQTtFQWFRLHlCQUFzQjtBdkdtK2pCOUI7O0F1R2gvakJBO0VBZVUsbUJyQmxibUI7QWxGdTVrQjdCOztBdUdwL2pCQTtFQW1CUSxtQnJCdGJxQjtBbEYyNWtCN0I7O0F1R3gvakJBO0VBc0JRLDhCQUEwQztBdkdzK2pCbEQ7O0F1Ry85akJBO0VBRUksY3JCNWF3QjtFcUI2YXhCLDRCQUEyQjtBdkdpK2pCL0I7O0F1R3ArakJBO0VBTUksY3JCemF1QjtBbEYyNGtCM0I7O0F1R3grakJBO0VBU0ksY3JCemJzQjtBbEY0NWtCMUI7O0F1RzUrakJBO0VBYUksY3JCemFtQjtFcUIwYW5CLGtCQUFrQjtBdkdtK2pCdEI7O0F1R2ovakJBO0VBaUJJLGlCQUFpQjtBdkdvK2pCckI7O0F1R3IvakJBO0VBcUJJLGNBQWM7QXZHbytqQmxCOztBdUd6L2pCQTtFQXlCSSxtQkFBbUI7RUFDbkIsZUFBZTtBdkdvK2pCbkI7O0F1RzkvakJBO0VBNEJNLFdBQVc7QXZHcytqQmpCOztBdUdsZ2tCQTtFQStCTSxjQUFjO0F2R3UrakJwQjs7QXVHdGdrQkE7RUFrQ00sY0FBYztBdkd3K2pCcEI7O0F1RzFna0JBO0VBcUNNLGNBQWM7QXZHeStqQnBCOztBdUduK2pCQTtFQUNFLGlCQUFpQjtFQUNqQixjckI5ZXFCO0VxQitlckIseUJyQjFhZTtFcUIyYWYsa0JBQWtCO0VBQ2xCLFdBQVc7RUFDWCwyQkFBMEI7QXZHcytqQjVCOztBdUc1K2pCQTtFQVNJLGNyQnBmeUI7QWxGMjlrQjdCOztBdUduK2pCQTtFQUNFLG1CckJuYmU7RXFCcWJmLGdCQUFnQjtFQUNoQixnQkFBZ0I7RUFDaEIsZ0JBQWdCO0F2R3ErakJsQjs7QXVHMStqQkE7RUFRSSxzQkFBc0I7QXZHcytqQjFCOztBdUc5K2pCQTtFQVlJLGdCQUFnQjtFQUNoQix5QkFBeUI7RUFDekIscUJBQXFCO0F2R3MrakJ6Qjs7QXVHcC9qQkE7RUFrQkks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RzVsa0JBO0VBaUhZLHlCQUFpQztFQUNqQyxvQnJCejVCVTtFcUIwNUJWLG9DQUFtQztBdkcrK2pCL0M7O0F1R2xta0JBO0VBcUhjLG9DQUFtQztBdkdpL2pCakQ7O0F1R3Rta0JBO0VBNkhNLGlCQUFpQjtFQUNqQixVQUFVO0VBQ1YsV0FBVztBdkc2K2pCakI7O0F1RzVta0JBO0VBbUlNLHVCQUFzQjtFQUN0QixVQUFVO0F2RzYrakJoQjs7QXVHeCtqQkE7RUFDRSx5QkFBeUI7RUFDekIsYUFBYTtBdkcyK2pCZjs7QXVHNytqQkE7RUFNSSxpQkFBaUI7RUFDakIsY3JCeGdDc0I7QWxGbS9sQjFCOztBdUd2K2pCQTtFQWNFLGVBQWU7RUFDZixrQnJCeDhCa0I7RXFCeThCbEIsVUFBVTtFQUNWLGtCQUFrQjtBdkc2OWpCcEI7O0F1RzkrakJBO0VBRUksYUFBYTtBdkdnL2pCakI7O0F1R2wvakJBO0VBS0ksaUJyQjc3QmlCO0VxQjg3QmpCLGNyQmxoQ3NCO0VxQm1oQ3RCLHlCckIvZ0N5QjtBbEZnZ21CN0I7O0F1R3gvakJBO0VBVUksb0JyQnI4QmtCO0VxQnM4QmxCLGNyQjFnQ3VCO0VxQjJnQ3ZCLHlCckJ6Z0NtQztBbEYyL2xCdkM7O0F1R3orakJBO0VBQ0UsZUFBZTtFQUNmLFlBQVk7RUFFWixtQkFBbUI7RUFDbkIseUJyQjlpQ3NCO0VxQitpQ3RCLGNyQi9pQ3NCO0VxQmdqQ3RCLDRCQUE0QjtFQUM1QixrQkFBa0I7RUFDbEIsZ0JBQWdCO0F2RzIrakJsQjs7QXVHcC9qQkE7RUFXSSxtQnJCaGpDbUI7RXFCaWpDbkIsY3JCcmpDb0I7QWxGa2ltQnhCOztBdUd6L2pCQTtFQWdCSSx5QnJCcGdDYTtFcUJxZ0NiLGNyQnBnQ2E7RXFCcWdDYixlQUFlO0F2RzYrakJuQjs7QXVHLy9qQkE7RUFxQkksbUJBQW1CO0VBQ25CLGNyQnpnQ2E7QWxGdS9sQmpCOztBb0Z0am1CQTtFbUJnbENFLG1CckJ2a0NzQjtFcUJ3a0N0Qix5QnJCeGtDc0I7RXFCeWtDdEIsY3JCeGdDYTtFcUJ5Z0NiLDRCQUE0QjtFQUM1QixrQkFBa0I7RUFDbEIsZ0JBQWdCO0F2RzArakJsQjs7QXVHditqQkE7RUFDRSxjQUFjO0VBQ2Qsc0JBQXFCO0VBQ3JCLHlCckI5aENlO0VxQitoQ2YsZ0JBQWdCO0F2RzArakJsQjs7QXVHOStqQkE7RUFNSSw0QkFBMkI7QXZHNCtqQi9COztBdUdsL2pCQTtFQVdNLDJCQUEyQjtFQUMzQix5QkFBcUM7RUFDckMsaUNBQWlDO0VBQ2pDLDBCQUF5QjtFQUN6QixtQkFBa0I7RUFDbEIscUJBQXFCO0F2RzIrakIzQjs7QXVHMy9qQkE7RUFxQkksMkJBQTJCO0F2RzArakIvQjs7QXVHLy9qQkE7RUF5Qkksd0JBQXVCO0VBQ3ZCLG9CQUFtQjtBdkcwK2pCdkI7O0F1R3Bna0JBO0VBNkJJLHFCckJ4akNhO0VxQnlqQ2IsbUJyQmhqQ2E7RXFCaWpDYixnQkFBZ0I7QXZHMitqQnBCOztBdUcxZ2tCQTtFQWtDSSwwQkFBeUI7QXZHNCtqQjdCOztBdUc5Z2tCQTtFQXNDSSx1QkFBdUI7QXZHNCtqQjNCOztBdUdsaGtCQTtFQXlDTSx5QkFBdUI7RUFDdkIsNkJBQTRCO0VBQzVCLDBCQUF5QjtBdkc2K2pCL0I7O0F1R3hoa0JBO0VBOENNLG9DQUEwQztFQUMxQyx5QkFBdUI7RUFDdkIsb0JBQW1CO0VBQ25CLDJCQUEwQjtFQUMxQiw0QkFBMkI7QXZHOCtqQmpDOztBdUdoaWtCQTtFQXVESSxlQUFlO0VBQ2YsZ0JBQWdCO0VBQ2hCLGdDQUErQjtFQUMvQix1QkFBc0I7QXZHNitqQjFCOztBdUd2aWtCQTtFQTZETSxvQ0FBZ0Q7RUFDaEQseUJBQXVCO0VBQ3ZCLG9CQUFtQjtFQUNuQiwyQkFBMEI7RUFDMUIsNEJBQTJCO0F2RzgrakJqQzs7QXVHL2lrQkE7RUFvRU0sbUJBQWtCO0F2RysrakJ4Qjs7QXVHbmprQkE7RUEwRU0sb0NBQW9DO0VBQ3BDLGNyQjVwQ3VCO0VxQjZwQ3ZCLGlCQUFpQjtBdkc2K2pCdkI7O0F1R3pqa0JBO0VBK0VNLGNyQmhxQ3VCO0VxQmlxQ3ZCLGlCQUFpQjtBdkc4K2pCdkI7O0F1Rzlqa0JBO0VBc0ZNLG9DQUFxQztFQUNyQyx5QkFBK0I7QXZHNCtqQnJDOztBdUd2K2pCQTtFQUNFLDhCQUE4QjtBdkcwK2pCaEM7O0F1R3grakJBO0VBQ0UsYUFBWTtBdkcyK2pCZDs7QXVHeCtqQkE7RUFDRSxnQkFBZ0I7RUFDaEIsWUFBWTtFQUNaLGtCQUFrQjtFQUNsQixXQUFXO0F2RzIrakJiOztBdUcvK2pCQTtFQU9JLGVBQWU7RUFDZixjckJ2b0NhO0FsRm1ubUJqQjs7QVRqcm1CQTtFZ0gwc0NFLG1CckJsb0NlO0VxQm1vQ2YseUJyQjdvQ2U7QWxGd25tQmpCOztBdUc3K2pCQTtFQUtJLGtCQUFrQjtFQUNsQix5QnJCanBDYTtBbEY2bm1CakI7O0F1R2wvakJBO0VBUU0sZUFBZTtBdkc4K2pCckI7O0F1R3QvakJBO0VBV00sY0FBYztBdkcrK2pCcEI7O0F1RzEvakJBO0VBZ0JJLGtCQUFrQjtBdkc4K2pCdEI7O0F1RzkvakJBO0VBbUJJLGNyQjF0Q21CO0FsRnlzbUJ2Qjs7QXVHbGdrQkE7RUFzQkksY3JCbnBDVztFcUJvcENYLG1CckI5dENtQjtBbEY4c21CdkI7O0F1RzcrakJBO0VBRUksa0JBQWtCO0VBQ2xCLG9CQUFtQjtFQUNuQiwyQkFBMEI7RUFDMUIseUJBQXdCO0F2RysrakI1Qjs7QXVHcC9qQkE7RUFPTSxjckJ4dUNpQjtBbEZ5dG1CdkI7O0F1RzcrakJBO0VBRUksa0JBQWtCO0VBQ2xCLG9CQUFtQjtFQUNuQiwyQkFBMEI7QXZHKytqQjlCOztBdUduL2pCQTtFQU1NLGNyQmx2Q2lCO0FsRm11bUJ2Qjs7QXVHNStqQkE7RUFFSSx5QnJCbnZDbUI7RXFCb3ZDbkIsZ0JBQWdCO0VBQ2hCLGVBQWU7QXZHOCtqQm5COztBdUdsL2pCQTtFQU9JLGdCQUFnQjtFQUNoQixpQkFBaUI7QXZHKytqQnJCOztBdUczK2pCQTs7RXZHKytqQkU7QXVHMytqQkY7RUFDRSxtQkFBbUI7QXZHNitqQnJCOztBdUc5K2pCQTtFQUlJLHlCckIvc0NhO0VxQmd0Q2IsZ0JBQWdCO0F2RzgrakJwQjs7QXVHbi9qQkE7RUFTSSxjckJ6dkN3QjtBbEZ1dW1CNUI7O0F1R3YvakJBO0VBWUksY3JCbHdDc0I7QWxGaXZtQjFCOztBdUd6K2pCQTs7Q3ZHNitqQkM7QXVHeitqQkQ7RUFDRSxtQkFBbUI7QXZHMitqQnJCOztBdUc1K2pCQTtFQUdJLGlCQUFpQjtBdkc2K2pCckI7O0F1R2gvakJBO0VBTUksbUJyQjl3Q3lCO0FsRjR2bUI3Qjs7QXVHcC9qQkE7RUFTSSxhQUFhO0F2RysrakJqQjs7QXVHeC9qQkE7RUFZTSxpQkFBaUI7QXZHZy9qQnZCOztBdUc1L2pCQTtFQWdCSSxtQnJCM3VDYTtFcUI0dUNiLGFBQWE7RUFDYixpQkFBaUI7QXZHZy9qQnJCOztBdUdsZ2tCQTtFQXFCSSxhQUFhO0VBQ2IsaUJBQWlCO0VBQ2pCLG1CckJoeENZO0VxQml4Q1osY3JCM3VDVztBbEY0dG1CZjs7QXVHemdrQkE7RUEyQkkseUJyQjV2Q2E7QWxGOHVtQmpCOztBdUc3Z2tCQTtFQThCSSw0QkFBMkI7QXZHbS9qQi9COztBd0d6em1CQTtFQUdNLG1CdEJrRlM7RXNCakZULGN0Qk9pQjtFc0JOakIsMkJBQTBCO0VBQzFCLHlCdEJLaUI7RXNCSmpCLGtCQUFrQjtBeEcwem1CeEI7O0F3R2owbUJBO0VBVVEsbUJ0QkNlO0VzQkFmLGN0QjBFTztBbEZpdm1CZjs7QXlHdDBtQkE7RUFDRSxtQkFBbUI7RUFDbkIsa0JBQWtCO0VBQ2xCLGFBQVk7QXpHeTBtQmQ7O0F5RzUwbUJBO0VBTUksWUFBWTtBekcwMG1CaEI7O0F5R2gxbUJBO0VBVUksY3ZCdURhO0V1QnREYixrQnZCc0dnQjtFdUJyR2hCLGdCQUFnQjtBekcwMG1CcEI7O0F5R3QxbUJBO0VBZUkseUJ2QkptQjtFdUJLbkIsaUJBQWlCO0F6RzIwbUJyQjs7QXlHMzFtQkE7RUFtQk0sZ0JBQWdCO0VBQ2hCLDRCQUEyQjtFQUMzQixpQkFBaUI7QXpHNDBtQnZCOztBeUdqMm1CQTtFQXVCUSxtQnZCWmU7RXVCYWYsV0FBVztBekc4MG1CbkI7O0F5R3gwbUJBO0VBQ0Usa0JBQWtCO0F6RzIwbUJwQjs7QXlHNTBtQkE7RUFHSSxjdkJ0Qm1CO0FsRm0ybUJ2Qjs7QXlHejBtQkE7RUFDRSxhQUFhO0VBRWIsY3ZCeUJlO0V1QnhCZixrQnZCd0VrQjtFdUJ2RWxCLGlCQUFpQjtBekcyMG1CbkI7O0F5R2gxbUJBO0VBUUksY3ZCbENtQjtFdUJtQ25CLGlCdkJzRWM7RXVCckVkLGlCQUFpQjtFQUNqQixjQUFjO0F6RzQwbUJsQjs7QXlHdjFtQkE7RUFlSSw4QnZCd0JhO0FsRm96bUJqQjs7QTBHajRtQkE7RUFDRSxhQUFhO0VBQ2IsaUJBQWlCO0ExR280bUJuQjs7QTBHbDRtQkE7RUFKQTtJQU1JLDJCQUEyQjtFMUdxNG1CN0I7QUFDRjs7QTBHbjRtQkE7RUFDRSxpQnhCNkdpQjtFd0I1R2pCLGlCQUFpQjtFQUNqQixvQ3hCWGdDO0FsRmk1bUJsQzs7QTBHbjRtQkE7RUFDRSxnQkFBZ0I7QTFHczRtQmxCOztBMkdyNW1CQTtFQUNFLHlCQUF5QjtFQUN6QixjekJtRmE7QWxGcTBtQmY7O0EyRzE1bUJBO0VBS0kseUJBQXlCO0EzR3k1bUI3Qjs7QTJHOTVtQkE7RUFTSSxvQ0FBbUM7QTNHeTVtQnZDOztBMkdsNm1CQTtFQWFJLHlCQUF5QjtBM0d5NW1CN0I7O0EyR3Q2bUJBO0VBZ0JJLHlCQUF5QjtBM0cwNW1CN0I7O0EyRzE2bUJBO0VBb0JJLDRCQUE0QjtBM0cwNW1CaEM7O0EyRzk2bUJBO0VBd0JJLGN6QjZEVztBbEY2MW1CZjs7QTRHOTZtQkE7OztvRDVHbTdtQm9EO0E0Ry82bUJwRDtFQUNFLGdCQUFnQjtFQUFFO0E1R2s3bUJwQjs7QTRHLzZtQkE7RUFDRSxnQkFBZ0I7RUFBRTtFQUNsQixtQkFBbUI7RUFBRTtFQUNyQixpQkFBaUI7RUFBRTtBNUdxN21CckI7O0E0R2w3bUJBOzs7QzVHdTdtQkM7QTRHbjdtQkQ7RUFDRSxjQUFhO0VBQ2IsZUFBYztBNUdxN21CaEI7O0E0R2o3bUJBOzs7QzVHczdtQkM7QTRHbDdtQkQ7RUFDRSxXQUFXO0E1R283bUJiOztBNEdqN21CQTtFQUNFLHFCQUFxQjtFQUFF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LFVBQVM7QUFzbW9CYjs7QUE3bW9CQTtFQVVJLGlCQUFpQjtFQUNqQixrQkFBa0I7RUFDbEIsa0JrRjlGZ0I7QWxGcXNvQnBCOztBQW5ub0JBO0VBZUksZUFBZTtBQXdtb0JuQjs7QUF2bm9CQTtFQWtCSSxxQkFBcUI7RUFDckIsa0JBQWtCO0VBQ2xCLGNBQWM7QUF5bW9CbEI7O0FBN25vQkE7RUF1Qk0sbUJBQW1CO0FBMG1vQnpCOztBQWpvb0JBO0VBMEJNLGNrRnhJUztBbEZtdm9CZjs7QUFyb29CQTtFQTZCTSxja0YzSVM7RWxGNElULHFCQUFxQjtFQUNyQixpQkFBaUI7QUE0bW9CdkI7O0FBdm1vQkE7RUFDRSx5QkFBeUI7RUFDekIsWUFBWTtFQUNaLGtCQUFpQjtFQUNqQixlQUFlO0VBQ2YsYUFBYTtFQUNiLGVBQWU7RUFDZixNQUFNO0VBQ04sU0FBUztFQUNULFVBQVM7QUEwbW9CWCIsInNvdXJjZXMiOlsid2VicGFjazovL2Fzc2V0cy8uL25vZGVfbW9kdWxlcy9qcXVlcnktdWkvdGhlbWVzL2Jhc2UvY29yZS5jc3MiLCJ3ZWJwYWNrOi8vYXNzZXRzLy4vbm9kZV9tb2R1bGVzL2pxdWVyeS11aS90aGVtZXMvYmFzZS9kcmFnZ2FibGUuY3NzIiwid2VicGFjazovL2Fzc2V0cy8uL25vZGVfbW9kdWxlcy9qcXVlcnktdWkvdGhlbWVzL2Jhc2UvcmVzaXphYmxlLmNzcyIsIndlYnBhY2s6Ly9hc3NldHMvLi9ub2RlX21vZHVsZXMvanF1ZXJ5LXVpL3RoZW1lcy9iYXNlL3NlbGVjdGFibGUuY3NzIiwid2VicGFjazovL2Fzc2V0cy8uL25vZGVfbW9kdWxlcy9qcXVlcnktdWkvdGhlbWVzL2Jhc2Uvc29ydGFibGUuY3NzIiwid2VicGFjazovL2Fzc2V0cy8uL25vZGVfbW9kdWxlcy9qcXVlcnktdWkvdGhlbWVzL2Jhc2UvYWNjb3JkaW9uLmNzcyIsIndlYnBhY2s6Ly9hc3NldHMvLi9ub2RlX21vZHVsZXMvanF1ZXJ5LXVpL3RoZW1lcy9iYXNlL2F1dG9jb21wbGV0ZS5jc3MiLCJ3ZWJwYWNrOi8vYXNzZXRzLy4vbm9kZV9tb2R1bGVzL2pxdWVyeS11aS90aGVtZXMvYmFzZS9idXR0b24uY3NzIiwid2VicGFjazovL2Fzc2V0cy8uL25vZGVfbW9kdWxlcy9qcXVlcnktdWkvdGhlbWVzL2Jhc2UvY2hlY2tib3hyYWRpby5jc3MiLCJ3ZWJwYWNrOi8vYXNzZXRzLy4vbm9kZV9tb2R1bGVzL2pxdWVyeS11aS90aGVtZXMvYmFzZS9jb250cm9sZ3JvdXAuY3NzIiwid2VicGFjazovL2Fzc2V0cy8uL25vZGVfbW9kdWxlcy9qcXVlcnktdWkvdGhlbWVzL2Jhc2UvZGF0ZXBpY2tlci5jc3MiLCJ3ZWJwYWNrOi8vYXNzZXRzLy4vbm9kZV9tb2R1bGVzL2pxdWVyeS11aS90aGVtZXMvYmFzZS9kaWFsb2cuY3NzIiwid2VicGFjazovL2Fzc2V0cy8uL25vZGVfbW9kdWxlcy9qcXVlcnktdWkvdGhlbWVzL2Jhc2UvbWVudS5jc3MiLCJ3ZWJwYWNrOi8vYXNzZXRzLy4vbm9kZV9tb2R1bGVzL2pxdWVyeS11aS90aGVtZXMvYmFzZS9wcm9ncmVzc2Jhci5jc3MiLCJ3ZWJwYWNrOi8vYXNzZXRzLy4vbm9kZV9tb2R1bGVzL2pxdWVyeS11aS90aGVtZXMvYmFzZS9zZWxlY3RtZW51LmNzcyIsIndlYnBhY2s6Ly9hc3NldHMvLi9ub2RlX21vZHVsZXMvanF1ZXJ5LXVpL3RoZW1lcy9iYXNlL3NsaWRlci5jc3MiLCJ3ZWJwYWNrOi8vYXNzZXRzLy4vbm9kZV9tb2R1bGVzL2pxdWVyeS11aS90aGVtZXMvYmFzZS9zcGlubmVyLmNzcyIsIndlYnBhY2s6Ly9hc3NldHMvLi9ub2RlX21vZHVsZXMvanF1ZXJ5LXVpL3RoZW1lcy9iYXNlL3RhYnMuY3NzIiwid2VicGFjazovL2Fzc2V0cy8uL25vZGVfbW9kdWxlcy9qcXVlcnktdWkvdGhlbWVzL2Jhc2UvdG9vbHRpcC5jc3MiLCJ3ZWJwYWNrOi8vYXNzZXRzLy4vYXNzZXRzL2Nzcy9oYWwuc2NzcyIsIndlYnBhY2s6Ly9hc3NldHMvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvYm9vdHN0cmFwLnNjc3MiLCJ3ZWJwYWNrOi8vYXNzZXRzLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19yb290LnNjc3MiLCJ3ZWJwYWNrOi8vYXNzZXRzLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19yZWJvb3Quc2NzcyIsIndlYnBhY2s6Ly9hc3NldHMvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3ZhcmlhYmxlcy5zY3NzIiwid2VicGFjazovL2Fzc2V0cy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy92ZW5kb3IvX3Jmcy5zY3NzIiwid2VicGFjazovL2Fzc2V0cy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2hvdmVyLnNjc3MiLCJ3ZWJwYWNrOi8vYXNzZXRzLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL190eXBlLnNjc3MiLCJ3ZWJwYWNrOi8vYXNzZXRzLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fbGlzdHMuc2NzcyIsIndlYnBhY2s6Ly9hc3NldHMvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2ltYWdlcy5zY3NzIiwid2VicGFjazovL2Fzc2V0cy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2ltYWdlLnNjc3MiLCJ3ZWJwYWNrOi8vYXNzZXRzLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYm9yZGVyLXJhZGl1cy5zY3NzIiwid2VicGFjazovL2Fzc2V0cy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fY29kZS5zY3NzIiwid2VicGFjazovL2Fzc2V0cy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fZ3JpZC5zY3NzIiwid2VicGFjazovL2Fzc2V0cy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2dyaWQuc2NzcyIsIndlYnBhY2s6Ly9hc3NldHMvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19icmVha3BvaW50cy5zY3NzIiwid2VicGFjazovL2Fzc2V0cy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2dyaWQtZnJhbWV3b3JrLnNjc3MiLCJ3ZWJwYWNrOi8vYXNzZXRzLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL190YWJsZXMuc2NzcyIsIndlYnBhY2s6Ly9hc3NldHMvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL190YWJsZS1yb3cuc2NzcyIsIndlYnBhY2s6Ly9hc3NldHMvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2Z1bmN0aW9ucy5zY3NzIiwid2VicGFjazovL2Fzc2V0cy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fZm9ybXMuc2NzcyIsIndlYnBhY2s6Ly9hc3NldHMvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL190cmFuc2l0aW9uLnNjc3MiLCJ3ZWJwYWNrOi8vYXNzZXRzLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fZm9ybXMuc2NzcyIsIndlYnBhY2s6Ly9hc3NldHMvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19ncmFkaWVudHMuc2NzcyIsIndlYnBhY2s6Ly9hc3NldHMvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2J1dHRvbnMuc2NzcyIsIndlYnBhY2s6Ly9hc3NldHMvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19idXR0b25zLnNjc3MiLCJ3ZWJwYWNrOi8vYXNzZXRzLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL190cmFuc2l0aW9ucy5zY3NzIiwid2VicGFjazovL2Fzc2V0cy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fZHJvcGRvd24uc2NzcyIsIndlYnBhY2s6Ly9hc3NldHMvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19jYXJldC5zY3NzIiwid2VicGFjazovL2Fzc2V0cy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX25hdi1kaXZpZGVyLnNjc3MiLCJ3ZWJwYWNrOi8vYXNzZXRzLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19idXR0b24tZ3JvdXAuc2NzcyIsIndlYnBhY2s6Ly9hc3NldHMvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2lucHV0LWdyb3VwLnNjc3MiLCJ3ZWJwYWNrOi8vYXNzZXRzLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19jdXN0b20tZm9ybXMuc2NzcyIsIndlYnBhY2s6Ly9hc3NldHMvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX25hdi5zY3NzIiwid2VicGFjazovL2Fzc2V0cy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fbmF2YmFyLnNjc3MiLCJ3ZWJwYWNrOi8vYXNzZXRzLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19jYXJkLnNjc3MiLCJ3ZWJwYWNrOi8vYXNzZXRzLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19icmVhZGNydW1iLnNjc3MiLCJ3ZWJwYWNrOi8vYXNzZXRzLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19wYWdpbmF0aW9uLnNjc3MiLCJ3ZWJwYWNrOi8vYXNzZXRzLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fcGFnaW5hdGlvbi5zY3NzIiwid2VicGFjazovL2Fzc2V0cy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fYmFkZ2Uuc2NzcyIsIndlYnBhY2s6Ly9hc3NldHMvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19iYWRnZS5zY3NzIiwid2VicGFjazovL2Fzc2V0cy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fanVtYm90cm9uLnNjc3MiLCJ3ZWJwYWNrOi8vYXNzZXRzLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19hbGVydC5zY3NzIiwid2VicGFjazovL2Fzc2V0cy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2FsZXJ0LnNjc3MiLCJ3ZWJwYWNrOi8vYXNzZXRzLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19wcm9ncmVzcy5zY3NzIiwid2VicGFjazovL2Fzc2V0cy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fbWVkaWEuc2NzcyIsIndlYnBhY2s6Ly9hc3NldHMvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2xpc3QtZ3JvdXAuc2NzcyIsIndlYnBhY2s6Ly9hc3NldHMvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19saXN0LWdyb3VwLnNjc3MiLCJ3ZWJwYWNrOi8vYXNzZXRzLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19jbG9zZS5zY3NzIiwid2VicGFjazovL2Fzc2V0cy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fdG9hc3RzLnNjc3MiLCJ3ZWJwYWNrOi8vYXNzZXRzLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19tb2RhbC5zY3NzIiwid2VicGFjazovL2Fzc2V0cy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fdG9vbHRpcC5zY3NzIiwid2VicGFjazovL2Fzc2V0cy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3Jlc2V0LXRleHQuc2NzcyIsIndlYnBhY2s6Ly9hc3NldHMvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3BvcG92ZXIuc2NzcyIsIndlYnBhY2s6Ly9hc3NldHMvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2Nhcm91c2VsLnNjc3MiLCJ3ZWJwYWNrOi8vYXNzZXRzLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fY2xlYXJmaXguc2NzcyIsIndlYnBhY2s6Ly9hc3NldHMvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3NwaW5uZXJzLnNjc3MiLCJ3ZWJwYWNrOi8vYXNzZXRzLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fYWxpZ24uc2NzcyIsIndlYnBhY2s6Ly9hc3NldHMvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19iYWNrZ3JvdW5kLXZhcmlhbnQuc2NzcyIsIndlYnBhY2s6Ly9hc3NldHMvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19iYWNrZ3JvdW5kLnNjc3MiLCJ3ZWJwYWNrOi8vYXNzZXRzLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fYm9yZGVycy5zY3NzIiwid2VicGFjazovL2Fzc2V0cy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX2Rpc3BsYXkuc2NzcyIsIndlYnBhY2s6Ly9hc3NldHMvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19lbWJlZC5zY3NzIiwid2VicGFjazovL2Fzc2V0cy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX2ZsZXguc2NzcyIsIndlYnBhY2s6Ly9hc3NldHMvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19mbG9hdC5zY3NzIiwid2VicGFjazovL2Fzc2V0cy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX2ludGVyYWN0aW9ucy5zY3NzIiwid2VicGFjazovL2Fzc2V0cy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX292ZXJmbG93LnNjc3MiLCJ3ZWJwYWNrOi8vYXNzZXRzLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fcG9zaXRpb24uc2NzcyIsIndlYnBhY2s6Ly9hc3NldHMvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19zY3JlZW5yZWFkZXJzLnNjc3MiLCJ3ZWJwYWNrOi8vYXNzZXRzLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fc2NyZWVuLXJlYWRlci5zY3NzIiwid2VicGFjazovL2Fzc2V0cy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX3NoYWRvd3Muc2NzcyIsIndlYnBhY2s6Ly9hc3NldHMvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19zaXppbmcuc2NzcyIsIndlYnBhY2s6Ly9hc3NldHMvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19zcGFjaW5nLnNjc3MiLCJ3ZWJwYWNrOi8vYXNzZXRzLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fc3RyZXRjaGVkLWxpbmsuc2NzcyIsIndlYnBhY2s6Ly9hc3NldHMvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL190ZXh0LnNjc3MiLCJ3ZWJwYWNrOi8vYXNzZXRzLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fdGV4dC10cnVuY2F0ZS5zY3NzIiwid2VicGFjazovL2Fzc2V0cy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3RleHQtZW1waGFzaXMuc2NzcyIsIndlYnBhY2s6Ly9hc3NldHMvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL190ZXh0LWhpZGUuc2NzcyIsIndlYnBhY2s6Ly9hc3NldHMvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL192aXNpYmlsaXR5LnNjc3MiLCJ3ZWJwYWNrOi8vYXNzZXRzLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19wcmludC5zY3NzIiwid2VicGFjazovL2Fzc2V0cy8uL25vZGVfbW9kdWxlcy9lYXN5bWRlL2Rpc3QvZWFzeW1kZS5taW4uY3NzIiwid2VicGFjazovL2Fzc2V0cy8uL25vZGVfbW9kdWxlcy9kYXRhdGFibGVzL21lZGlhL2Nzcy9qcXVlcnkuZGF0YVRhYmxlcy5jc3MiLCJ3ZWJwYWNrOi8vYXNzZXRzLy4vYXNzZXRzL2Nzcy9fdmFyaWFibGVzLnNjc3MiLCJ3ZWJwYWNrOi8vYXNzZXRzLy4vYXNzZXRzL2Nzcy9fZ2VuZXJhbC5zY3NzIiwid2VicGFjazovL2Fzc2V0cy8uL2Fzc2V0cy9jc3MvX2J1dHRvbnMuc2NzcyIsIndlYnBhY2s6Ly9hc3NldHMvLi9hc3NldHMvY3NzL19pY29ucy5zY3NzIiwid2VicGFjazovL2Fzc2V0cy8uL2Fzc2V0cy9jc3MvX2ljb25zLW15c3BhY2Uuc2NzcyIsIndlYnBhY2s6Ly9hc3NldHMvLi9hc3NldHMvY3NzL19saWJyYXJ5LnNjc3MiLCJ3ZWJwYWNrOi8vYXNzZXRzLy4vYXNzZXRzL2Nzcy9fcG9ydGFsLnNjc3MiLCJ3ZWJwYWNrOi8vYXNzZXRzLy4vYXNzZXRzL2Nzcy9fYnJvd3NlLnNjc3MiLCJ3ZWJwYWNrOi8vYXNzZXRzLy4vYXNzZXRzL2Nzcy9fY29ubmVjdGVkLXNwYWNlLnNjc3MiLCJ3ZWJwYWNrOi8vYXNzZXRzLy4vYXNzZXRzL2Nzcy9fbXlMaWJyYXJ5LnNjc3MiLCJ3ZWJwYWNrOi8vYXNzZXRzLy4vYXNzZXRzL2Nzcy9pbmRleC5zY3NzIiwid2VicGFjazovL2Fzc2V0cy8uL2Fzc2V0cy9jc3MvbmF2YmFyLnNjc3MiLCJ3ZWJwYWNrOi8vYXNzZXRzLy4vYXNzZXRzL2Nzcy9fZnVuY3Rpb25zLnNjc3MiLCJ3ZWJwYWNrOi8vYXNzZXRzLy4vYXNzZXRzL2Nzcy9jY3NkX2Zvcm0uc2NzcyIsIndlYnBhY2s6Ly9hc3NldHMvLi9hc3NldHMvY3NzL2RvY3VtZW50LnNjc3MiLCJ3ZWJwYWNrOi8vYXNzZXRzLy4vYXNzZXRzL2Nzcy9hY3Rpb25zLnNjc3MiLCJ3ZWJwYWNrOi8vYXNzZXRzLy4vYXNzZXRzL2Nzcy9fZXJyb3Iuc2NzcyIsIndlYnBhY2s6Ly9hc3NldHMvLi9hc3NldHMvY3NzL3NlYXJjaC5zY3NzIiwid2VicGFjazovL2Fzc2V0cy8uL2Fzc2V0cy9jc3MvX2Rhc2hib2FyZC5zY3NzIiwid2VicGFjazovL2Fzc2V0cy8uL2Fzc2V0cy9jc3MvX3Jlc3VtZS5zY3NzIiwid2VicGFjazovL2Fzc2V0cy8uL2Fzc2V0cy9jc3MvX3Jlc3VtZS12aXN1YWxpemF0aW9uLnNjc3MiLCJ3ZWJwYWNrOi8vYXNzZXRzLy4vYXNzZXRzL2Nzcy9fc3VibWl0LnNjc3MiLCJ3ZWJwYWNrOi8vYXNzZXRzLy4vYXNzZXRzL2Nzcy9fcGFnZS5zY3NzIiwid2VicGFjazovL2Fzc2V0cy8uL2Fzc2V0cy9jc3MvX3N0YXRzLnNjc3MiLCJ3ZWJwYWNrOi8vYXNzZXRzLy4vYXNzZXRzL2Nzcy9fc2l0ZS5zY3NzIiwid2VicGFjazovL2Fzc2V0cy8uL2Fzc2V0cy9jc3MvX2Rhcmsuc2NzcyIsIndlYnBhY2s6Ly9hc3NldHMvLi9hc3NldHMvY3NzL2Jvb3RzdHJhcC1lZGl0YWJsZS5zY3NzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogalF1ZXJ5IFVJIENTUyBGcmFtZXdvcmsgMS4xMy4yXG4gKiBodHRwOi8vanF1ZXJ5dWkuY29tXG4gKlxuICogQ29weXJpZ2h0IGpRdWVyeSBGb3VuZGF0aW9uIGFuZCBvdGhlciBjb250cmlidXRvcnNcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZS5cbiAqIGh0dHA6Ly9qcXVlcnkub3JnL2xpY2Vuc2VcbiAqXG4gKiBodHRwOi8vYXBpLmpxdWVyeXVpLmNvbS9jYXRlZ29yeS90aGVtaW5nL1xuICovXG5cbi8qIExheW91dCBoZWxwZXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi51aS1oZWxwZXItaGlkZGVuIHtcblx0ZGlzcGxheTogbm9uZTtcbn1cbi51aS1oZWxwZXItaGlkZGVuLWFjY2Vzc2libGUge1xuXHRib3JkZXI6IDA7XG5cdGNsaXA6IHJlY3QoMCAwIDAgMCk7XG5cdGhlaWdodDogMXB4O1xuXHRtYXJnaW46IC0xcHg7XG5cdG92ZXJmbG93OiBoaWRkZW47XG5cdHBhZGRpbmc6IDA7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0d2lkdGg6IDFweDtcbn1cbi51aS1oZWxwZXItcmVzZXQge1xuXHRtYXJnaW46IDA7XG5cdHBhZGRpbmc6IDA7XG5cdGJvcmRlcjogMDtcblx0b3V0bGluZTogMDtcblx0bGluZS1oZWlnaHQ6IDEuMztcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRmb250LXNpemU6IDEwMCU7XG5cdGxpc3Qtc3R5bGU6IG5vbmU7XG59XG4udWktaGVscGVyLWNsZWFyZml4OmJlZm9yZSxcbi51aS1oZWxwZXItY2xlYXJmaXg6YWZ0ZXIge1xuXHRjb250ZW50OiBcIlwiO1xuXHRkaXNwbGF5OiB0YWJsZTtcblx0Ym9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbn1cbi51aS1oZWxwZXItY2xlYXJmaXg6YWZ0ZXIge1xuXHRjbGVhcjogYm90aDtcbn1cbi51aS1oZWxwZXItemZpeCB7XG5cdHdpZHRoOiAxMDAlO1xuXHRoZWlnaHQ6IDEwMCU7XG5cdHRvcDogMDtcblx0bGVmdDogMDtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHRvcGFjaXR5OiAwO1xuXHQtbXMtZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9MClcIjsgLyogc3VwcG9ydDogSUU4ICovXG59XG5cbi51aS1mcm9udCB7XG5cdHotaW5kZXg6IDEwMDtcbn1cblxuXG4vKiBJbnRlcmFjdGlvbiBDdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi51aS1zdGF0ZS1kaXNhYmxlZCB7XG5cdGN1cnNvcjogZGVmYXVsdCAhaW1wb3J0YW50O1xuXHRwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuXG4vKiBJY29uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4udWktaWNvbiB7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcblx0bWFyZ2luLXRvcDogLS4yNWVtO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHRleHQtaW5kZW50OiAtOTk5OTlweDtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cblxuLnVpLXdpZGdldC1pY29uLWJsb2NrIHtcblx0bGVmdDogNTAlO1xuXHRtYXJnaW4tbGVmdDogLThweDtcblx0ZGlzcGxheTogYmxvY2s7XG59XG5cbi8qIE1pc2MgdmlzdWFsc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi8qIE92ZXJsYXlzICovXG4udWktd2lkZ2V0LW92ZXJsYXkge1xuXHRwb3NpdGlvbjogZml4ZWQ7XG5cdHRvcDogMDtcblx0bGVmdDogMDtcblx0d2lkdGg6IDEwMCU7XG5cdGhlaWdodDogMTAwJTtcbn1cbiIsIi8qIVxuICogalF1ZXJ5IFVJIERyYWdnYWJsZSAxLjEzLjJcbiAqIGh0dHA6Ly9qcXVlcnl1aS5jb21cbiAqXG4gKiBDb3B5cmlnaHQgalF1ZXJ5IEZvdW5kYXRpb24gYW5kIG90aGVyIGNvbnRyaWJ1dG9yc1xuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlLlxuICogaHR0cDovL2pxdWVyeS5vcmcvbGljZW5zZVxuICovXG4udWktZHJhZ2dhYmxlLWhhbmRsZSB7XG5cdC1tcy10b3VjaC1hY3Rpb246IG5vbmU7XG5cdHRvdWNoLWFjdGlvbjogbm9uZTtcbn1cbiIsIi8qIVxuICogalF1ZXJ5IFVJIFJlc2l6YWJsZSAxLjEzLjJcbiAqIGh0dHA6Ly9qcXVlcnl1aS5jb21cbiAqXG4gKiBDb3B5cmlnaHQgalF1ZXJ5IEZvdW5kYXRpb24gYW5kIG90aGVyIGNvbnRyaWJ1dG9yc1xuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlLlxuICogaHR0cDovL2pxdWVyeS5vcmcvbGljZW5zZVxuICovXG4udWktcmVzaXphYmxlIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xufVxuLnVpLXJlc2l6YWJsZS1oYW5kbGUge1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdGZvbnQtc2l6ZTogMC4xcHg7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHQtbXMtdG91Y2gtYWN0aW9uOiBub25lO1xuXHR0b3VjaC1hY3Rpb246IG5vbmU7XG59XG4udWktcmVzaXphYmxlLWRpc2FibGVkIC51aS1yZXNpemFibGUtaGFuZGxlLFxuLnVpLXJlc2l6YWJsZS1hdXRvaGlkZSAudWktcmVzaXphYmxlLWhhbmRsZSB7XG5cdGRpc3BsYXk6IG5vbmU7XG59XG4udWktcmVzaXphYmxlLW4ge1xuXHRjdXJzb3I6IG4tcmVzaXplO1xuXHRoZWlnaHQ6IDdweDtcblx0d2lkdGg6IDEwMCU7XG5cdHRvcDogLTVweDtcblx0bGVmdDogMDtcbn1cbi51aS1yZXNpemFibGUtcyB7XG5cdGN1cnNvcjogcy1yZXNpemU7XG5cdGhlaWdodDogN3B4O1xuXHR3aWR0aDogMTAwJTtcblx0Ym90dG9tOiAtNXB4O1xuXHRsZWZ0OiAwO1xufVxuLnVpLXJlc2l6YWJsZS1lIHtcblx0Y3Vyc29yOiBlLXJlc2l6ZTtcblx0d2lkdGg6IDdweDtcblx0cmlnaHQ6IC01cHg7XG5cdHRvcDogMDtcblx0aGVpZ2h0OiAxMDAlO1xufVxuLnVpLXJlc2l6YWJsZS13IHtcblx0Y3Vyc29yOiB3LXJlc2l6ZTtcblx0d2lkdGg6IDdweDtcblx0bGVmdDogLTVweDtcblx0dG9wOiAwO1xuXHRoZWlnaHQ6IDEwMCU7XG59XG4udWktcmVzaXphYmxlLXNlIHtcblx0Y3Vyc29yOiBzZS1yZXNpemU7XG5cdHdpZHRoOiAxMnB4O1xuXHRoZWlnaHQ6IDEycHg7XG5cdHJpZ2h0OiAxcHg7XG5cdGJvdHRvbTogMXB4O1xufVxuLnVpLXJlc2l6YWJsZS1zdyB7XG5cdGN1cnNvcjogc3ctcmVzaXplO1xuXHR3aWR0aDogOXB4O1xuXHRoZWlnaHQ6IDlweDtcblx0bGVmdDogLTVweDtcblx0Ym90dG9tOiAtNXB4O1xufVxuLnVpLXJlc2l6YWJsZS1udyB7XG5cdGN1cnNvcjogbnctcmVzaXplO1xuXHR3aWR0aDogOXB4O1xuXHRoZWlnaHQ6IDlweDtcblx0bGVmdDogLTVweDtcblx0dG9wOiAtNXB4O1xufVxuLnVpLXJlc2l6YWJsZS1uZSB7XG5cdGN1cnNvcjogbmUtcmVzaXplO1xuXHR3aWR0aDogOXB4O1xuXHRoZWlnaHQ6IDlweDtcblx0cmlnaHQ6IC01cHg7XG5cdHRvcDogLTVweDtcbn1cbiIsIi8qIVxuICogalF1ZXJ5IFVJIFNlbGVjdGFibGUgMS4xMy4yXG4gKiBodHRwOi8vanF1ZXJ5dWkuY29tXG4gKlxuICogQ29weXJpZ2h0IGpRdWVyeSBGb3VuZGF0aW9uIGFuZCBvdGhlciBjb250cmlidXRvcnNcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZS5cbiAqIGh0dHA6Ly9qcXVlcnkub3JnL2xpY2Vuc2VcbiAqL1xuLnVpLXNlbGVjdGFibGUge1xuXHQtbXMtdG91Y2gtYWN0aW9uOiBub25lO1xuXHR0b3VjaC1hY3Rpb246IG5vbmU7XG59XG4udWktc2VsZWN0YWJsZS1oZWxwZXIge1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHotaW5kZXg6IDEwMDtcblx0Ym9yZGVyOiAxcHggZG90dGVkIGJsYWNrO1xufVxuIiwiLyohXG4gKiBqUXVlcnkgVUkgU29ydGFibGUgMS4xMy4yXG4gKiBodHRwOi8vanF1ZXJ5dWkuY29tXG4gKlxuICogQ29weXJpZ2h0IGpRdWVyeSBGb3VuZGF0aW9uIGFuZCBvdGhlciBjb250cmlidXRvcnNcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZS5cbiAqIGh0dHA6Ly9qcXVlcnkub3JnL2xpY2Vuc2VcbiAqL1xuLnVpLXNvcnRhYmxlLWhhbmRsZSB7XG5cdC1tcy10b3VjaC1hY3Rpb246IG5vbmU7XG5cdHRvdWNoLWFjdGlvbjogbm9uZTtcbn1cbiIsIi8qIVxuICogalF1ZXJ5IFVJIEFjY29yZGlvbiAxLjEzLjJcbiAqIGh0dHA6Ly9qcXVlcnl1aS5jb21cbiAqXG4gKiBDb3B5cmlnaHQgalF1ZXJ5IEZvdW5kYXRpb24gYW5kIG90aGVyIGNvbnRyaWJ1dG9yc1xuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlLlxuICogaHR0cDovL2pxdWVyeS5vcmcvbGljZW5zZVxuICpcbiAqIGh0dHA6Ly9hcGkuanF1ZXJ5dWkuY29tL2FjY29yZGlvbi8jdGhlbWluZ1xuICovXG4udWktYWNjb3JkaW9uIC51aS1hY2NvcmRpb24taGVhZGVyIHtcblx0ZGlzcGxheTogYmxvY2s7XG5cdGN1cnNvcjogcG9pbnRlcjtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRtYXJnaW46IDJweCAwIDAgMDtcblx0cGFkZGluZzogLjVlbSAuNWVtIC41ZW0gLjdlbTtcblx0Zm9udC1zaXplOiAxMDAlO1xufVxuLnVpLWFjY29yZGlvbiAudWktYWNjb3JkaW9uLWNvbnRlbnQge1xuXHRwYWRkaW5nOiAxZW0gMi4yZW07XG5cdGJvcmRlci10b3A6IDA7XG5cdG92ZXJmbG93OiBhdXRvO1xufVxuIiwiLyohXG4gKiBqUXVlcnkgVUkgQXV0b2NvbXBsZXRlIDEuMTMuMlxuICogaHR0cDovL2pxdWVyeXVpLmNvbVxuICpcbiAqIENvcHlyaWdodCBqUXVlcnkgRm91bmRhdGlvbiBhbmQgb3RoZXIgY29udHJpYnV0b3JzXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UuXG4gKiBodHRwOi8vanF1ZXJ5Lm9yZy9saWNlbnNlXG4gKlxuICogaHR0cDovL2FwaS5qcXVlcnl1aS5jb20vYXV0b2NvbXBsZXRlLyN0aGVtaW5nXG4gKi9cbi51aS1hdXRvY29tcGxldGUge1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHRvcDogMDtcblx0bGVmdDogMDtcblx0Y3Vyc29yOiBkZWZhdWx0O1xufVxuIiwiLyohXG4gKiBqUXVlcnkgVUkgQnV0dG9uIDEuMTMuMlxuICogaHR0cDovL2pxdWVyeXVpLmNvbVxuICpcbiAqIENvcHlyaWdodCBqUXVlcnkgRm91bmRhdGlvbiBhbmQgb3RoZXIgY29udHJpYnV0b3JzXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UuXG4gKiBodHRwOi8vanF1ZXJ5Lm9yZy9saWNlbnNlXG4gKlxuICogaHR0cDovL2FwaS5qcXVlcnl1aS5jb20vYnV0dG9uLyN0aGVtaW5nXG4gKi9cbi51aS1idXR0b24ge1xuXHRwYWRkaW5nOiAuNGVtIDFlbTtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdGxpbmUtaGVpZ2h0OiBub3JtYWw7XG5cdG1hcmdpbi1yaWdodDogLjFlbTtcblx0Y3Vyc29yOiBwb2ludGVyO1xuXHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG5cdC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG5cdC1tcy11c2VyLXNlbGVjdDogbm9uZTtcblx0dXNlci1zZWxlY3Q6IG5vbmU7XG5cblx0LyogU3VwcG9ydDogSUUgPD0gMTEgKi9cblx0b3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbi51aS1idXR0b24sXG4udWktYnV0dG9uOmxpbmssXG4udWktYnV0dG9uOnZpc2l0ZWQsXG4udWktYnV0dG9uOmhvdmVyLFxuLnVpLWJ1dHRvbjphY3RpdmUge1xuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi8qIHRvIG1ha2Ugcm9vbSBmb3IgdGhlIGljb24sIGEgd2lkdGggbmVlZHMgdG8gYmUgc2V0IGhlcmUgKi9cbi51aS1idXR0b24taWNvbi1vbmx5IHtcblx0d2lkdGg6IDJlbTtcblx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcblx0dGV4dC1pbmRlbnQ6IC05OTk5cHg7XG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi8qIG5vIGljb24gc3VwcG9ydCBmb3IgaW5wdXQgZWxlbWVudHMgKi9cbmlucHV0LnVpLWJ1dHRvbi51aS1idXR0b24taWNvbi1vbmx5IHtcblx0dGV4dC1pbmRlbnQ6IDA7XG59XG5cbi8qIGJ1dHRvbiBpY29uIGVsZW1lbnQocykgKi9cbi51aS1idXR0b24taWNvbi1vbmx5IC51aS1pY29uIHtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR0b3A6IDUwJTtcblx0bGVmdDogNTAlO1xuXHRtYXJnaW4tdG9wOiAtOHB4O1xuXHRtYXJnaW4tbGVmdDogLThweDtcbn1cblxuLnVpLWJ1dHRvbi51aS1pY29uLW5vdGV4dCAudWktaWNvbiB7XG5cdHBhZGRpbmc6IDA7XG5cdHdpZHRoOiAyLjFlbTtcblx0aGVpZ2h0OiAyLjFlbTtcblx0dGV4dC1pbmRlbnQ6IC05OTk5cHg7XG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbn1cblxuaW5wdXQudWktYnV0dG9uLnVpLWljb24tbm90ZXh0IC51aS1pY29uIHtcblx0d2lkdGg6IGF1dG87XG5cdGhlaWdodDogYXV0bztcblx0dGV4dC1pbmRlbnQ6IDA7XG5cdHdoaXRlLXNwYWNlOiBub3JtYWw7XG5cdHBhZGRpbmc6IC40ZW0gMWVtO1xufVxuXG4vKiB3b3JrYXJvdW5kcyAqL1xuLyogU3VwcG9ydDogRmlyZWZveCA1IC0gNDAgKi9cbmlucHV0LnVpLWJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcbmJ1dHRvbi51aS1idXR0b246Oi1tb3otZm9jdXMtaW5uZXIge1xuXHRib3JkZXI6IDA7XG5cdHBhZGRpbmc6IDA7XG59XG4iLCIvKiFcbiAqIGpRdWVyeSBVSSBDaGVja2JveHJhZGlvIDEuMTMuMlxuICogaHR0cDovL2pxdWVyeXVpLmNvbVxuICpcbiAqIENvcHlyaWdodCBqUXVlcnkgRm91bmRhdGlvbiBhbmQgb3RoZXIgY29udHJpYnV0b3JzXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UuXG4gKiBodHRwOi8vanF1ZXJ5Lm9yZy9saWNlbnNlXG4gKlxuICogaHR0cDovL2FwaS5qcXVlcnl1aS5jb20vY2hlY2tib3hyYWRpby8jdGhlbWluZ1xuICovXG5cbi51aS1jaGVja2JveHJhZGlvLWxhYmVsIC51aS1pY29uLWJhY2tncm91bmQge1xuXHRib3gtc2hhZG93OiBpbnNldCAxcHggMXB4IDFweCAjY2NjO1xuXHRib3JkZXItcmFkaXVzOiAuMTJlbTtcblx0Ym9yZGVyOiBub25lO1xufVxuLnVpLWNoZWNrYm94cmFkaW8tcmFkaW8tbGFiZWwgLnVpLWljb24tYmFja2dyb3VuZCB7XG5cdHdpZHRoOiAxNnB4O1xuXHRoZWlnaHQ6IDE2cHg7XG5cdGJvcmRlci1yYWRpdXM6IDFlbTtcblx0b3ZlcmZsb3c6IHZpc2libGU7XG5cdGJvcmRlcjogbm9uZTtcbn1cbi51aS1jaGVja2JveHJhZGlvLXJhZGlvLWxhYmVsLnVpLWNoZWNrYm94cmFkaW8tY2hlY2tlZCAudWktaWNvbixcbi51aS1jaGVja2JveHJhZGlvLXJhZGlvLWxhYmVsLnVpLWNoZWNrYm94cmFkaW8tY2hlY2tlZDpob3ZlciAudWktaWNvbiB7XG5cdGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG5cdHdpZHRoOiA4cHg7XG5cdGhlaWdodDogOHB4O1xuXHRib3JkZXItd2lkdGg6IDRweDtcblx0Ym9yZGVyLXN0eWxlOiBzb2xpZDtcbn1cbi51aS1jaGVja2JveHJhZGlvLWRpc2FibGVkIHtcblx0cG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG4iLCIvKiFcbiAqIGpRdWVyeSBVSSBDb250cm9sZ3JvdXAgMS4xMy4yXG4gKiBodHRwOi8vanF1ZXJ5dWkuY29tXG4gKlxuICogQ29weXJpZ2h0IGpRdWVyeSBGb3VuZGF0aW9uIGFuZCBvdGhlciBjb250cmlidXRvcnNcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZS5cbiAqIGh0dHA6Ly9qcXVlcnkub3JnL2xpY2Vuc2VcbiAqXG4gKiBodHRwOi8vYXBpLmpxdWVyeXVpLmNvbS9jb250cm9sZ3JvdXAvI3RoZW1pbmdcbiAqL1xuXG4udWktY29udHJvbGdyb3VwIHtcblx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuLnVpLWNvbnRyb2xncm91cCA+IC51aS1jb250cm9sZ3JvdXAtaXRlbSB7XG5cdGZsb2F0OiBsZWZ0O1xuXHRtYXJnaW4tbGVmdDogMDtcblx0bWFyZ2luLXJpZ2h0OiAwO1xufVxuLnVpLWNvbnRyb2xncm91cCA+IC51aS1jb250cm9sZ3JvdXAtaXRlbTpmb2N1cyxcbi51aS1jb250cm9sZ3JvdXAgPiAudWktY29udHJvbGdyb3VwLWl0ZW0udWktdmlzdWFsLWZvY3VzIHtcblx0ei1pbmRleDogOTk5OTtcbn1cbi51aS1jb250cm9sZ3JvdXAtdmVydGljYWwgPiAudWktY29udHJvbGdyb3VwLWl0ZW0ge1xuXHRkaXNwbGF5OiBibG9jaztcblx0ZmxvYXQ6IG5vbmU7XG5cdHdpZHRoOiAxMDAlO1xuXHRtYXJnaW4tdG9wOiAwO1xuXHRtYXJnaW4tYm90dG9tOiAwO1xuXHR0ZXh0LWFsaWduOiBsZWZ0O1xufVxuLnVpLWNvbnRyb2xncm91cC12ZXJ0aWNhbCAudWktY29udHJvbGdyb3VwLWl0ZW0ge1xuXHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuLnVpLWNvbnRyb2xncm91cCAudWktY29udHJvbGdyb3VwLWxhYmVsIHtcblx0cGFkZGluZzogLjRlbSAxZW07XG59XG4udWktY29udHJvbGdyb3VwIC51aS1jb250cm9sZ3JvdXAtbGFiZWwgc3BhbiB7XG5cdGZvbnQtc2l6ZTogODAlO1xufVxuLnVpLWNvbnRyb2xncm91cC1ob3Jpem9udGFsIC51aS1jb250cm9sZ3JvdXAtbGFiZWwgKyAudWktY29udHJvbGdyb3VwLWl0ZW0ge1xuXHRib3JkZXItbGVmdDogbm9uZTtcbn1cbi51aS1jb250cm9sZ3JvdXAtdmVydGljYWwgLnVpLWNvbnRyb2xncm91cC1sYWJlbCArIC51aS1jb250cm9sZ3JvdXAtaXRlbSB7XG5cdGJvcmRlci10b3A6IG5vbmU7XG59XG4udWktY29udHJvbGdyb3VwLWhvcml6b250YWwgLnVpLWNvbnRyb2xncm91cC1sYWJlbC51aS13aWRnZXQtY29udGVudCB7XG5cdGJvcmRlci1yaWdodDogbm9uZTtcbn1cbi51aS1jb250cm9sZ3JvdXAtdmVydGljYWwgLnVpLWNvbnRyb2xncm91cC1sYWJlbC51aS13aWRnZXQtY29udGVudCB7XG5cdGJvcmRlci1ib3R0b206IG5vbmU7XG59XG5cbi8qIFNwaW5uZXIgc3BlY2lmaWMgc3R5bGUgZml4ZXMgKi9cbi51aS1jb250cm9sZ3JvdXAtdmVydGljYWwgLnVpLXNwaW5uZXItaW5wdXQge1xuXG5cdC8qIFN1cHBvcnQ6IElFOCBvbmx5LCBBbmRyb2lkIDwgNC40IG9ubHkgKi9cblx0d2lkdGg6IDc1JTtcblx0d2lkdGg6IGNhbGMoIDEwMCUgLSAyLjRlbSApO1xufVxuLnVpLWNvbnRyb2xncm91cC12ZXJ0aWNhbCAudWktc3Bpbm5lciAudWktc3Bpbm5lci11cCB7XG5cdGJvcmRlci10b3Atc3R5bGU6IHNvbGlkO1xufVxuXG4iLCIvKiFcbiAqIGpRdWVyeSBVSSBEYXRlcGlja2VyIDEuMTMuMlxuICogaHR0cDovL2pxdWVyeXVpLmNvbVxuICpcbiAqIENvcHlyaWdodCBqUXVlcnkgRm91bmRhdGlvbiBhbmQgb3RoZXIgY29udHJpYnV0b3JzXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UuXG4gKiBodHRwOi8vanF1ZXJ5Lm9yZy9saWNlbnNlXG4gKlxuICogaHR0cDovL2FwaS5qcXVlcnl1aS5jb20vZGF0ZXBpY2tlci8jdGhlbWluZ1xuICovXG4udWktZGF0ZXBpY2tlciB7XG5cdHdpZHRoOiAxN2VtO1xuXHRwYWRkaW5nOiAuMmVtIC4yZW0gMDtcblx0ZGlzcGxheTogbm9uZTtcbn1cbi51aS1kYXRlcGlja2VyIC51aS1kYXRlcGlja2VyLWhlYWRlciB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0cGFkZGluZzogLjJlbSAwO1xufVxuLnVpLWRhdGVwaWNrZXIgLnVpLWRhdGVwaWNrZXItcHJldixcbi51aS1kYXRlcGlja2VyIC51aS1kYXRlcGlja2VyLW5leHQge1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHRvcDogMnB4O1xuXHR3aWR0aDogMS44ZW07XG5cdGhlaWdodDogMS44ZW07XG59XG4udWktZGF0ZXBpY2tlciAudWktZGF0ZXBpY2tlci1wcmV2LWhvdmVyLFxuLnVpLWRhdGVwaWNrZXIgLnVpLWRhdGVwaWNrZXItbmV4dC1ob3ZlciB7XG5cdHRvcDogMXB4O1xufVxuLnVpLWRhdGVwaWNrZXIgLnVpLWRhdGVwaWNrZXItcHJldiB7XG5cdGxlZnQ6IDJweDtcbn1cbi51aS1kYXRlcGlja2VyIC51aS1kYXRlcGlja2VyLW5leHQge1xuXHRyaWdodDogMnB4O1xufVxuLnVpLWRhdGVwaWNrZXIgLnVpLWRhdGVwaWNrZXItcHJldi1ob3ZlciB7XG5cdGxlZnQ6IDFweDtcbn1cbi51aS1kYXRlcGlja2VyIC51aS1kYXRlcGlja2VyLW5leHQtaG92ZXIge1xuXHRyaWdodDogMXB4O1xufVxuLnVpLWRhdGVwaWNrZXIgLnVpLWRhdGVwaWNrZXItcHJldiBzcGFuLFxuLnVpLWRhdGVwaWNrZXIgLnVpLWRhdGVwaWNrZXItbmV4dCBzcGFuIHtcblx0ZGlzcGxheTogYmxvY2s7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0bGVmdDogNTAlO1xuXHRtYXJnaW4tbGVmdDogLThweDtcblx0dG9wOiA1MCU7XG5cdG1hcmdpbi10b3A6IC04cHg7XG59XG4udWktZGF0ZXBpY2tlciAudWktZGF0ZXBpY2tlci10aXRsZSB7XG5cdG1hcmdpbjogMCAyLjNlbTtcblx0bGluZS1oZWlnaHQ6IDEuOGVtO1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4udWktZGF0ZXBpY2tlciAudWktZGF0ZXBpY2tlci10aXRsZSBzZWxlY3Qge1xuXHRmb250LXNpemU6IDFlbTtcblx0bWFyZ2luOiAxcHggMDtcbn1cbi51aS1kYXRlcGlja2VyIHNlbGVjdC51aS1kYXRlcGlja2VyLW1vbnRoLFxuLnVpLWRhdGVwaWNrZXIgc2VsZWN0LnVpLWRhdGVwaWNrZXIteWVhciB7XG5cdHdpZHRoOiA0NSU7XG59XG4udWktZGF0ZXBpY2tlciB0YWJsZSB7XG5cdHdpZHRoOiAxMDAlO1xuXHRmb250LXNpemU6IC45ZW07XG5cdGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG5cdG1hcmdpbjogMCAwIC40ZW07XG59XG4udWktZGF0ZXBpY2tlciB0aCB7XG5cdHBhZGRpbmc6IC43ZW0gLjNlbTtcblx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRmb250LXdlaWdodDogYm9sZDtcblx0Ym9yZGVyOiAwO1xufVxuLnVpLWRhdGVwaWNrZXIgdGQge1xuXHRib3JkZXI6IDA7XG5cdHBhZGRpbmc6IDFweDtcbn1cbi51aS1kYXRlcGlja2VyIHRkIHNwYW4sXG4udWktZGF0ZXBpY2tlciB0ZCBhIHtcblx0ZGlzcGxheTogYmxvY2s7XG5cdHBhZGRpbmc6IC4yZW07XG5cdHRleHQtYWxpZ246IHJpZ2h0O1xuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG4udWktZGF0ZXBpY2tlciAudWktZGF0ZXBpY2tlci1idXR0b25wYW5lIHtcblx0YmFja2dyb3VuZC1pbWFnZTogbm9uZTtcblx0bWFyZ2luOiAuN2VtIDAgMCAwO1xuXHRwYWRkaW5nOiAwIC4yZW07XG5cdGJvcmRlci1sZWZ0OiAwO1xuXHRib3JkZXItcmlnaHQ6IDA7XG5cdGJvcmRlci1ib3R0b206IDA7XG59XG4udWktZGF0ZXBpY2tlciAudWktZGF0ZXBpY2tlci1idXR0b25wYW5lIGJ1dHRvbiB7XG5cdGZsb2F0OiByaWdodDtcblx0bWFyZ2luOiAuNWVtIC4yZW0gLjRlbTtcblx0Y3Vyc29yOiBwb2ludGVyO1xuXHRwYWRkaW5nOiAuMmVtIC42ZW0gLjNlbSAuNmVtO1xuXHR3aWR0aDogYXV0bztcblx0b3ZlcmZsb3c6IHZpc2libGU7XG59XG4udWktZGF0ZXBpY2tlciAudWktZGF0ZXBpY2tlci1idXR0b25wYW5lIGJ1dHRvbi51aS1kYXRlcGlja2VyLWN1cnJlbnQge1xuXHRmbG9hdDogbGVmdDtcbn1cblxuLyogd2l0aCBtdWx0aXBsZSBjYWxlbmRhcnMgKi9cbi51aS1kYXRlcGlja2VyLnVpLWRhdGVwaWNrZXItbXVsdGkge1xuXHR3aWR0aDogYXV0bztcbn1cbi51aS1kYXRlcGlja2VyLW11bHRpIC51aS1kYXRlcGlja2VyLWdyb3VwIHtcblx0ZmxvYXQ6IGxlZnQ7XG59XG4udWktZGF0ZXBpY2tlci1tdWx0aSAudWktZGF0ZXBpY2tlci1ncm91cCB0YWJsZSB7XG5cdHdpZHRoOiA5NSU7XG5cdG1hcmdpbjogMCBhdXRvIC40ZW07XG59XG4udWktZGF0ZXBpY2tlci1tdWx0aS0yIC51aS1kYXRlcGlja2VyLWdyb3VwIHtcblx0d2lkdGg6IDUwJTtcbn1cbi51aS1kYXRlcGlja2VyLW11bHRpLTMgLnVpLWRhdGVwaWNrZXItZ3JvdXAge1xuXHR3aWR0aDogMzMuMyU7XG59XG4udWktZGF0ZXBpY2tlci1tdWx0aS00IC51aS1kYXRlcGlja2VyLWdyb3VwIHtcblx0d2lkdGg6IDI1JTtcbn1cbi51aS1kYXRlcGlja2VyLW11bHRpIC51aS1kYXRlcGlja2VyLWdyb3VwLWxhc3QgLnVpLWRhdGVwaWNrZXItaGVhZGVyLFxuLnVpLWRhdGVwaWNrZXItbXVsdGkgLnVpLWRhdGVwaWNrZXItZ3JvdXAtbWlkZGxlIC51aS1kYXRlcGlja2VyLWhlYWRlciB7XG5cdGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xufVxuLnVpLWRhdGVwaWNrZXItbXVsdGkgLnVpLWRhdGVwaWNrZXItYnV0dG9ucGFuZSB7XG5cdGNsZWFyOiBsZWZ0O1xufVxuLnVpLWRhdGVwaWNrZXItcm93LWJyZWFrIHtcblx0Y2xlYXI6IGJvdGg7XG5cdHdpZHRoOiAxMDAlO1xuXHRmb250LXNpemU6IDA7XG59XG5cbi8qIFJUTCBzdXBwb3J0ICovXG4udWktZGF0ZXBpY2tlci1ydGwge1xuXHRkaXJlY3Rpb246IHJ0bDtcbn1cbi51aS1kYXRlcGlja2VyLXJ0bCAudWktZGF0ZXBpY2tlci1wcmV2IHtcblx0cmlnaHQ6IDJweDtcblx0bGVmdDogYXV0bztcbn1cbi51aS1kYXRlcGlja2VyLXJ0bCAudWktZGF0ZXBpY2tlci1uZXh0IHtcblx0bGVmdDogMnB4O1xuXHRyaWdodDogYXV0bztcbn1cbi51aS1kYXRlcGlja2VyLXJ0bCAudWktZGF0ZXBpY2tlci1wcmV2OmhvdmVyIHtcblx0cmlnaHQ6IDFweDtcblx0bGVmdDogYXV0bztcbn1cbi51aS1kYXRlcGlja2VyLXJ0bCAudWktZGF0ZXBpY2tlci1uZXh0OmhvdmVyIHtcblx0bGVmdDogMXB4O1xuXHRyaWdodDogYXV0bztcbn1cbi51aS1kYXRlcGlja2VyLXJ0bCAudWktZGF0ZXBpY2tlci1idXR0b25wYW5lIHtcblx0Y2xlYXI6IHJpZ2h0O1xufVxuLnVpLWRhdGVwaWNrZXItcnRsIC51aS1kYXRlcGlja2VyLWJ1dHRvbnBhbmUgYnV0dG9uIHtcblx0ZmxvYXQ6IGxlZnQ7XG59XG4udWktZGF0ZXBpY2tlci1ydGwgLnVpLWRhdGVwaWNrZXItYnV0dG9ucGFuZSBidXR0b24udWktZGF0ZXBpY2tlci1jdXJyZW50LFxuLnVpLWRhdGVwaWNrZXItcnRsIC51aS1kYXRlcGlja2VyLWdyb3VwIHtcblx0ZmxvYXQ6IHJpZ2h0O1xufVxuLnVpLWRhdGVwaWNrZXItcnRsIC51aS1kYXRlcGlja2VyLWdyb3VwLWxhc3QgLnVpLWRhdGVwaWNrZXItaGVhZGVyLFxuLnVpLWRhdGVwaWNrZXItcnRsIC51aS1kYXRlcGlja2VyLWdyb3VwLW1pZGRsZSAudWktZGF0ZXBpY2tlci1oZWFkZXIge1xuXHRib3JkZXItcmlnaHQtd2lkdGg6IDA7XG5cdGJvcmRlci1sZWZ0LXdpZHRoOiAxcHg7XG59XG5cbi8qIEljb25zICovXG4udWktZGF0ZXBpY2tlciAudWktaWNvbiB7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHR0ZXh0LWluZGVudDogLTk5OTk5cHg7XG5cdG92ZXJmbG93OiBoaWRkZW47XG5cdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdGxlZnQ6IC41ZW07XG5cdHRvcDogLjNlbTtcbn1cbiIsIi8qIVxuICogalF1ZXJ5IFVJIERpYWxvZyAxLjEzLjJcbiAqIGh0dHA6Ly9qcXVlcnl1aS5jb21cbiAqXG4gKiBDb3B5cmlnaHQgalF1ZXJ5IEZvdW5kYXRpb24gYW5kIG90aGVyIGNvbnRyaWJ1dG9yc1xuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlLlxuICogaHR0cDovL2pxdWVyeS5vcmcvbGljZW5zZVxuICpcbiAqIGh0dHA6Ly9hcGkuanF1ZXJ5dWkuY29tL2RpYWxvZy8jdGhlbWluZ1xuICovXG4udWktZGlhbG9nIHtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR0b3A6IDA7XG5cdGxlZnQ6IDA7XG5cdHBhZGRpbmc6IC4yZW07XG5cdG91dGxpbmU6IDA7XG59XG4udWktZGlhbG9nIC51aS1kaWFsb2ctdGl0bGViYXIge1xuXHRwYWRkaW5nOiAuNGVtIDFlbTtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xufVxuLnVpLWRpYWxvZyAudWktZGlhbG9nLXRpdGxlIHtcblx0ZmxvYXQ6IGxlZnQ7XG5cdG1hcmdpbjogLjFlbSAwO1xuXHR3aGl0ZS1zcGFjZTogbm93cmFwO1xuXHR3aWR0aDogOTAlO1xuXHRvdmVyZmxvdzogaGlkZGVuO1xuXHR0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbn1cbi51aS1kaWFsb2cgLnVpLWRpYWxvZy10aXRsZWJhci1jbG9zZSB7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0cmlnaHQ6IC4zZW07XG5cdHRvcDogNTAlO1xuXHR3aWR0aDogMjBweDtcblx0bWFyZ2luOiAtMTBweCAwIDAgMDtcblx0cGFkZGluZzogMXB4O1xuXHRoZWlnaHQ6IDIwcHg7XG59XG4udWktZGlhbG9nIC51aS1kaWFsb2ctY29udGVudCB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0Ym9yZGVyOiAwO1xuXHRwYWRkaW5nOiAuNWVtIDFlbTtcblx0YmFja2dyb3VuZDogbm9uZTtcblx0b3ZlcmZsb3c6IGF1dG87XG59XG4udWktZGlhbG9nIC51aS1kaWFsb2ctYnV0dG9ucGFuZSB7XG5cdHRleHQtYWxpZ246IGxlZnQ7XG5cdGJvcmRlci13aWR0aDogMXB4IDAgMCAwO1xuXHRiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuXHRtYXJnaW4tdG9wOiAuNWVtO1xuXHRwYWRkaW5nOiAuM2VtIDFlbSAuNWVtIC40ZW07XG59XG4udWktZGlhbG9nIC51aS1kaWFsb2ctYnV0dG9ucGFuZSAudWktZGlhbG9nLWJ1dHRvbnNldCB7XG5cdGZsb2F0OiByaWdodDtcbn1cbi51aS1kaWFsb2cgLnVpLWRpYWxvZy1idXR0b25wYW5lIGJ1dHRvbiB7XG5cdG1hcmdpbjogLjVlbSAuNGVtIC41ZW0gMDtcblx0Y3Vyc29yOiBwb2ludGVyO1xufVxuLnVpLWRpYWxvZyAudWktcmVzaXphYmxlLW4ge1xuXHRoZWlnaHQ6IDJweDtcblx0dG9wOiAwO1xufVxuLnVpLWRpYWxvZyAudWktcmVzaXphYmxlLWUge1xuXHR3aWR0aDogMnB4O1xuXHRyaWdodDogMDtcbn1cbi51aS1kaWFsb2cgLnVpLXJlc2l6YWJsZS1zIHtcblx0aGVpZ2h0OiAycHg7XG5cdGJvdHRvbTogMDtcbn1cbi51aS1kaWFsb2cgLnVpLXJlc2l6YWJsZS13IHtcblx0d2lkdGg6IDJweDtcblx0bGVmdDogMDtcbn1cbi51aS1kaWFsb2cgLnVpLXJlc2l6YWJsZS1zZSxcbi51aS1kaWFsb2cgLnVpLXJlc2l6YWJsZS1zdyxcbi51aS1kaWFsb2cgLnVpLXJlc2l6YWJsZS1uZSxcbi51aS1kaWFsb2cgLnVpLXJlc2l6YWJsZS1udyB7XG5cdHdpZHRoOiA3cHg7XG5cdGhlaWdodDogN3B4O1xufVxuLnVpLWRpYWxvZyAudWktcmVzaXphYmxlLXNlIHtcblx0cmlnaHQ6IDA7XG5cdGJvdHRvbTogMDtcbn1cbi51aS1kaWFsb2cgLnVpLXJlc2l6YWJsZS1zdyB7XG5cdGxlZnQ6IDA7XG5cdGJvdHRvbTogMDtcbn1cbi51aS1kaWFsb2cgLnVpLXJlc2l6YWJsZS1uZSB7XG5cdHJpZ2h0OiAwO1xuXHR0b3A6IDA7XG59XG4udWktZGlhbG9nIC51aS1yZXNpemFibGUtbncge1xuXHRsZWZ0OiAwO1xuXHR0b3A6IDA7XG59XG4udWktZHJhZ2dhYmxlIC51aS1kaWFsb2ctdGl0bGViYXIge1xuXHRjdXJzb3I6IG1vdmU7XG59XG4iLCIvKiFcbiAqIGpRdWVyeSBVSSBNZW51IDEuMTMuMlxuICogaHR0cDovL2pxdWVyeXVpLmNvbVxuICpcbiAqIENvcHlyaWdodCBqUXVlcnkgRm91bmRhdGlvbiBhbmQgb3RoZXIgY29udHJpYnV0b3JzXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UuXG4gKiBodHRwOi8vanF1ZXJ5Lm9yZy9saWNlbnNlXG4gKlxuICogaHR0cDovL2FwaS5qcXVlcnl1aS5jb20vbWVudS8jdGhlbWluZ1xuICovXG4udWktbWVudSB7XG5cdGxpc3Qtc3R5bGU6IG5vbmU7XG5cdHBhZGRpbmc6IDA7XG5cdG1hcmdpbjogMDtcblx0ZGlzcGxheTogYmxvY2s7XG5cdG91dGxpbmU6IDA7XG59XG4udWktbWVudSAudWktbWVudSB7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcbn1cbi51aS1tZW51IC51aS1tZW51LWl0ZW0ge1xuXHRtYXJnaW46IDA7XG5cdGN1cnNvcjogcG9pbnRlcjtcblx0Lyogc3VwcG9ydDogSUUxMCwgc2VlICM4ODQ0ICovXG5cdGxpc3Qtc3R5bGUtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2UvZ2lmO2Jhc2U2NCxSMGxHT0RsaEFRQUJBSUFBQUFBQUFQLy8veUg1QkFFQUFBQUFMQUFBQUFBQkFBRUFBQUlCUkFBN1wiKTtcbn1cbi51aS1tZW51IC51aS1tZW51LWl0ZW0td3JhcHBlciB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0cGFkZGluZzogM3B4IDFlbSAzcHggLjRlbTtcbn1cbi51aS1tZW51IC51aS1tZW51LWRpdmlkZXIge1xuXHRtYXJnaW46IDVweCAwO1xuXHRoZWlnaHQ6IDA7XG5cdGZvbnQtc2l6ZTogMDtcblx0bGluZS1oZWlnaHQ6IDA7XG5cdGJvcmRlci13aWR0aDogMXB4IDAgMCAwO1xufVxuLnVpLW1lbnUgLnVpLXN0YXRlLWZvY3VzLFxuLnVpLW1lbnUgLnVpLXN0YXRlLWFjdGl2ZSB7XG5cdG1hcmdpbjogLTFweDtcbn1cblxuLyogaWNvbiBzdXBwb3J0ICovXG4udWktbWVudS1pY29ucyB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi51aS1tZW51LWljb25zIC51aS1tZW51LWl0ZW0td3JhcHBlciB7XG5cdHBhZGRpbmctbGVmdDogMmVtO1xufVxuXG4vKiBsZWZ0LWFsaWduZWQgKi9cbi51aS1tZW51IC51aS1pY29uIHtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR0b3A6IDA7XG5cdGJvdHRvbTogMDtcblx0bGVmdDogLjJlbTtcblx0bWFyZ2luOiBhdXRvIDA7XG59XG5cbi8qIHJpZ2h0LWFsaWduZWQgKi9cbi51aS1tZW51IC51aS1tZW51LWljb24ge1xuXHRsZWZ0OiBhdXRvO1xuXHRyaWdodDogMDtcbn1cbiIsIi8qIVxuICogalF1ZXJ5IFVJIFByb2dyZXNzYmFyIDEuMTMuMlxuICogaHR0cDovL2pxdWVyeXVpLmNvbVxuICpcbiAqIENvcHlyaWdodCBqUXVlcnkgRm91bmRhdGlvbiBhbmQgb3RoZXIgY29udHJpYnV0b3JzXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UuXG4gKiBodHRwOi8vanF1ZXJ5Lm9yZy9saWNlbnNlXG4gKlxuICogaHR0cDovL2FwaS5qcXVlcnl1aS5jb20vcHJvZ3Jlc3NiYXIvI3RoZW1pbmdcbiAqL1xuLnVpLXByb2dyZXNzYmFyIHtcblx0aGVpZ2h0OiAyZW07XG5cdHRleHQtYWxpZ246IGxlZnQ7XG5cdG92ZXJmbG93OiBoaWRkZW47XG59XG4udWktcHJvZ3Jlc3NiYXIgLnVpLXByb2dyZXNzYmFyLXZhbHVlIHtcblx0bWFyZ2luOiAtMXB4O1xuXHRoZWlnaHQ6IDEwMCU7XG59XG4udWktcHJvZ3Jlc3NiYXIgLnVpLXByb2dyZXNzYmFyLW92ZXJsYXkge1xuXHRiYWNrZ3JvdW5kOiB1cmwoXCJkYXRhOmltYWdlL2dpZjtiYXNlNjQsUjBsR09EbGhLQUFvQUlBQkFBQUFBUC8vL3lIL0MwNUZWRk5EUVZCRk1pNHdBd0VBQUFBaCtRUUpBUUFCQUN3QUFBQUFLQUFvQUFBQ2tZd05xWHJkQzUyRFMwNmE3TUZaSSs0RkhCQ0tvRGVXS1hxeW1QcUdxeHZKclhaYk14N1R0Yyt3OVhnVTJGQjNsT3lRUldFVDJJRkdpVTltMWZyRFZweFpaYzZiZkh3djRjMVlYUDZrMVZkeTI5MkZiNlVrdXZGdFhwdldTekErSHljWEpIVVhpR1lJaU1nMlI2VzQ1OWduV0dmSE5kaklxRFdWcWVtSDJla3BPYmtwT2xwcFdVcVppcXI2ZWRxcVdRQUFJZmtFQ1FFQUFRQXNBQUFBQUNnQUtBQUFBcFNNZ1puR2ZhcWNnMUUydXV6RG1tSFVCUjhRaWw5NWhpUEtxV24zYXF0THNTMTh5N0cxU3pOZW93V0JFTnRRZCtUMUprdFAwNW56UFRkSlpsUjZ2VXhOV1dqVit2VVdoV05rV0Z3eGw5VnBaUmVkWWNmbElPTGFmYWEyOFhkc0gveW5sY2MxdVBWRFp4UUlSMEsyNStjSUNDbW9xQ2U1bUdoWk9mZVlTVWg1eUpjSnlya1pXV3BhUjhkb0oybzROWXE2MmxBQUFDSDVCQWtCQUFFQUxBQUFBQUFvQUNnQUFBS1ZESTRZeTIyWm5JTlJOcW9zdzBCdjdpMWd5SFVrRmo3b1NhV2x1M292QzhHeE5zbzVmbHV6M3FMVmhCVmVUL0x6N1pUSHl4TDVkRGFsUVdQVk9zUVd0Um51d1hhRlRqOWpWVmg4cG1hOUpqWjR6WVNqNVpPeW1hN3V1b2xmZmgrSVI1YVc5N2NIdUJVWEtHS1hsS2puK0RpSFdNY1lKYWg0TjBsWUNNbEpPWGlwR1JyNXFkZ29TVHJxV1NxNldGbDJ5cG9hVUFBQUlma0VDUUVBQVFBc0FBQUFBQ2dBS0FBQUFwYUViNkhMZ2QvaU83Rk5XdGNGV2UrdWZPREdqUmZvaUoyYWtTaGJ1ZWIwd3RJNTB6bTAycGJ2d2ZXRU1XQlExektHbExJaHNraUVQbTlSNnZSWHhWNFp6V1QyeUhPR3BXTXlvcmJsS2xOcDhIbUhFYi9sQ1hqY1c3Ym10WFA4WHQyMjlPVldSMWZvZDJlV3FOZkh1TWpYQ1BrSUdOaWxlT2lJbVZtQ09FbW9TZm4zeVhsSldtb0hHaHFwNmlsWXVXWXBtVHFLVWdBQUlma0VDUUVBQVFBc0FBQUFBQ2dBS0FBQUFwaUVINmtiNThiaVEzRk5XdE1GV1czZU5WY29qdUZHZnFuWnFTZWJ1UzA2dzVWODAvWDAycEtlOHpGd1A2RUZXT1QxbERGazhyR0VSaDFUVE5Pb2NRNjFIbTRYbTJWZXhVSHB6anltVmlIckZiaUVMc2VmVnJuNlhLZm50MlE5Ry8rWGRpZTQ5OVhIZDJnNGg3aW9PR2hYR0pib0dBblhTQm5vQndLWXlmaW91YlpKMkhuMFJ1UlphZmxaT2lsNTZacDZpaW9LU1hwVUFBQWgrUVFKQVFBQkFDd0FBQUFBS0FBb0FBQUNrb1FScVJ2bnh1STdrVTFhMVVVNWJkNXRuU2VPWlhobW41bFdLM3FOVFd2UmRReFA4cXZhQysveWFZUXpYTzdCTXZhVUVtSlJkM1RzaU1BZ3N3bU5ZclNnWmRZclRYNnRTSEdaTzczZXp1QXcydXh1UStCYmVaZk14c2V4WTM1Ky9RZTRKMWluVjBnNHgzV0h1TWhJbDJqWE9LVDJRK1ZVNWZnb1NVSTUyVmZaeWZrSkdraGE2am1ZK2FhWWRpcnErbFFBQUNINUJBa0JBQUVBTEFBQUFBQW9BQ2dBQUFLV0JJS3BZZTBMM1lOS1RvcXN3VWx2em5pZ2Q0d2lSNEtoWnJLdDlVcHFpcDYxaTlFM3ZNdnhSZEhsYkVGaUVYZms5WUFSWXhPWlpENlZRMnBVdW5CbXRSWG8xTGY4aE1WVmNObDhKYWZWMzhhTTIvRnU1VjE2Qm42M3I2eHQ5N2owOStNWFNGaTRCbmlHRmFlM2h6Ykg5K2hZQnprcHVVaDVhWm1IdWFuWk9aZ0l1dmJHaU5lb21DbmF4eGFwMnVwYUNac3ErMWtBQUNINUJBa0JBQUVBTEFBQUFBQW9BQ2dBQUFLWGpJOEJ5NXpmNGtPeFRWclhOVmx2MVgwZDhJR1pHS0xuTnBZdG04THI5Y3FWZXVPU3ZmT1c3OUQ5YURIaXpOaERKaWRGWmhOeWRFYWhPYURINm5vbXRKanAxdHV0S29OV2t2QTZKcWZSVkxIVS9RVWZhdTlsMng3RzU0ZDFmbDk5NXhjSUdBZFhxTWZCTmFkb1lyaEgrTWcyS0JscFZwYmx1Q2lYbU1uWjJTaDRHQnFKK2NrSU9xcUo2TG1LU2xsWm1zb3E2d3BRQUFBaCtRUUpBUUFCQUN3QUFBQUFLQUFvQUFBQ2xZeC9vTHZveHVKRGtVMWExWVVaYko1OW5TZDJaWGhXcWJSYTIvZ0Y4R3UyRFkzaXFzN3lycSt4QllFa1l2RlNNOGFTU09iRStaZ1JsMUJIRlpOcjdwUkNhdlo1QlcyMTQyaFkzQU4veld0c21mMTJwOVh4eEZsMmxwTG4xcnNlenRmWFpqZElXSWYyczVkSXR3allLQmdvOXlnNXBIZ3pKWFRFZUdsWnVlbnB5UG1wR1FvS09Xa1ltU3BhU25xS2lsZUkyRkFBQUNINUJBa0JBQUVBTEFBQUFBQW9BQ2dBQUFLVmpCK2d1K2pHNGtPUlRWclZoUmxzbm4yZEozWmxlRmFwdEZyYitDWG1POU9vemVMNVZmUDk5SHZBV2hwaVVkY3drcEJIMzgyNUF3WWRVOHhUcWxMR2h0Q29zQXJLTXB2ZmExbU1SYWU5VnZXWmZlQjJYZlBrZUxtbTE4bFVjQmorcDVkbk44alhaM1lJR0VoWXVPVW40NWFvQ0RrcDE2aGw1SWpZSnZqV0tjbm9HUXBxeVBscE9ocjNhRWxhcXJxNTZCcTdWQUFBT3c9PVwiKTtcblx0aGVpZ2h0OiAxMDAlO1xuXHQtbXMtZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9MjUpXCI7IC8qIHN1cHBvcnQ6IElFOCAqL1xuXHRvcGFjaXR5OiAwLjI1O1xufVxuLnVpLXByb2dyZXNzYmFyLWluZGV0ZXJtaW5hdGUgLnVpLXByb2dyZXNzYmFyLXZhbHVlIHtcblx0YmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbn1cbiIsIi8qIVxuICogalF1ZXJ5IFVJIFNlbGVjdG1lbnUgMS4xMy4yXG4gKiBodHRwOi8vanF1ZXJ5dWkuY29tXG4gKlxuICogQ29weXJpZ2h0IGpRdWVyeSBGb3VuZGF0aW9uIGFuZCBvdGhlciBjb250cmlidXRvcnNcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZS5cbiAqIGh0dHA6Ly9qcXVlcnkub3JnL2xpY2Vuc2VcbiAqXG4gKiBodHRwOi8vYXBpLmpxdWVyeXVpLmNvbS9zZWxlY3RtZW51LyN0aGVtaW5nXG4gKi9cbi51aS1zZWxlY3RtZW51LW1lbnUge1xuXHRwYWRkaW5nOiAwO1xuXHRtYXJnaW46IDA7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0dG9wOiAwO1xuXHRsZWZ0OiAwO1xuXHRkaXNwbGF5OiBub25lO1xufVxuLnVpLXNlbGVjdG1lbnUtbWVudSAudWktbWVudSB7XG5cdG92ZXJmbG93OiBhdXRvO1xuXHRvdmVyZmxvdy14OiBoaWRkZW47XG5cdHBhZGRpbmctYm90dG9tOiAxcHg7XG59XG4udWktc2VsZWN0bWVudS1tZW51IC51aS1tZW51IC51aS1zZWxlY3RtZW51LW9wdGdyb3VwIHtcblx0Zm9udC1zaXplOiAxZW07XG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xuXHRsaW5lLWhlaWdodDogMS41O1xuXHRwYWRkaW5nOiAycHggMC40ZW07XG5cdG1hcmdpbjogMC41ZW0gMCAwIDA7XG5cdGhlaWdodDogYXV0bztcblx0Ym9yZGVyOiAwO1xufVxuLnVpLXNlbGVjdG1lbnUtb3BlbiB7XG5cdGRpc3BsYXk6IGJsb2NrO1xufVxuLnVpLXNlbGVjdG1lbnUtdGV4dCB7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRtYXJnaW4tcmlnaHQ6IDIwcHg7XG5cdG92ZXJmbG93OiBoaWRkZW47XG5cdHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xufVxuLnVpLXNlbGVjdG1lbnUtYnV0dG9uLnVpLWJ1dHRvbiB7XG5cdHRleHQtYWxpZ246IGxlZnQ7XG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cdHdpZHRoOiAxNGVtO1xufVxuLnVpLXNlbGVjdG1lbnUtaWNvbi51aS1pY29uIHtcblx0ZmxvYXQ6IHJpZ2h0O1xuXHRtYXJnaW4tdG9wOiAwO1xufVxuIiwiLyohXG4gKiBqUXVlcnkgVUkgU2xpZGVyIDEuMTMuMlxuICogaHR0cDovL2pxdWVyeXVpLmNvbVxuICpcbiAqIENvcHlyaWdodCBqUXVlcnkgRm91bmRhdGlvbiBhbmQgb3RoZXIgY29udHJpYnV0b3JzXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UuXG4gKiBodHRwOi8vanF1ZXJ5Lm9yZy9saWNlbnNlXG4gKlxuICogaHR0cDovL2FwaS5qcXVlcnl1aS5jb20vc2xpZGVyLyN0aGVtaW5nXG4gKi9cbi51aS1zbGlkZXIge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHRleHQtYWxpZ246IGxlZnQ7XG59XG4udWktc2xpZGVyIC51aS1zbGlkZXItaGFuZGxlIHtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR6LWluZGV4OiAyO1xuXHR3aWR0aDogMS4yZW07XG5cdGhlaWdodDogMS4yZW07XG5cdGN1cnNvcjogcG9pbnRlcjtcblx0LW1zLXRvdWNoLWFjdGlvbjogbm9uZTtcblx0dG91Y2gtYWN0aW9uOiBub25lO1xufVxuLnVpLXNsaWRlciAudWktc2xpZGVyLXJhbmdlIHtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR6LWluZGV4OiAxO1xuXHRmb250LXNpemU6IC43ZW07XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRib3JkZXI6IDA7XG5cdGJhY2tncm91bmQtcG9zaXRpb246IDAgMDtcbn1cblxuLyogc3VwcG9ydDogSUU4IC0gU2VlICM2NzI3ICovXG4udWktc2xpZGVyLnVpLXN0YXRlLWRpc2FibGVkIC51aS1zbGlkZXItaGFuZGxlLFxuLnVpLXNsaWRlci51aS1zdGF0ZS1kaXNhYmxlZCAudWktc2xpZGVyLXJhbmdlIHtcblx0ZmlsdGVyOiBpbmhlcml0O1xufVxuXG4udWktc2xpZGVyLWhvcml6b250YWwge1xuXHRoZWlnaHQ6IC44ZW07XG59XG4udWktc2xpZGVyLWhvcml6b250YWwgLnVpLXNsaWRlci1oYW5kbGUge1xuXHR0b3A6IC0uM2VtO1xuXHRtYXJnaW4tbGVmdDogLS42ZW07XG59XG4udWktc2xpZGVyLWhvcml6b250YWwgLnVpLXNsaWRlci1yYW5nZSB7XG5cdHRvcDogMDtcblx0aGVpZ2h0OiAxMDAlO1xufVxuLnVpLXNsaWRlci1ob3Jpem9udGFsIC51aS1zbGlkZXItcmFuZ2UtbWluIHtcblx0bGVmdDogMDtcbn1cbi51aS1zbGlkZXItaG9yaXpvbnRhbCAudWktc2xpZGVyLXJhbmdlLW1heCB7XG5cdHJpZ2h0OiAwO1xufVxuXG4udWktc2xpZGVyLXZlcnRpY2FsIHtcblx0d2lkdGg6IC44ZW07XG5cdGhlaWdodDogMTAwcHg7XG59XG4udWktc2xpZGVyLXZlcnRpY2FsIC51aS1zbGlkZXItaGFuZGxlIHtcblx0bGVmdDogLS4zZW07XG5cdG1hcmdpbi1sZWZ0OiAwO1xuXHRtYXJnaW4tYm90dG9tOiAtLjZlbTtcbn1cbi51aS1zbGlkZXItdmVydGljYWwgLnVpLXNsaWRlci1yYW5nZSB7XG5cdGxlZnQ6IDA7XG5cdHdpZHRoOiAxMDAlO1xufVxuLnVpLXNsaWRlci12ZXJ0aWNhbCAudWktc2xpZGVyLXJhbmdlLW1pbiB7XG5cdGJvdHRvbTogMDtcbn1cbi51aS1zbGlkZXItdmVydGljYWwgLnVpLXNsaWRlci1yYW5nZS1tYXgge1xuXHR0b3A6IDA7XG59XG4iLCIvKiFcbiAqIGpRdWVyeSBVSSBTcGlubmVyIDEuMTMuMlxuICogaHR0cDovL2pxdWVyeXVpLmNvbVxuICpcbiAqIENvcHlyaWdodCBqUXVlcnkgRm91bmRhdGlvbiBhbmQgb3RoZXIgY29udHJpYnV0b3JzXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UuXG4gKiBodHRwOi8vanF1ZXJ5Lm9yZy9saWNlbnNlXG4gKlxuICogaHR0cDovL2FwaS5qcXVlcnl1aS5jb20vc3Bpbm5lci8jdGhlbWluZ1xuICovXG4udWktc3Bpbm5lciB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRvdmVyZmxvdzogaGlkZGVuO1xuXHRwYWRkaW5nOiAwO1xuXHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuLnVpLXNwaW5uZXItaW5wdXQge1xuXHRib3JkZXI6IG5vbmU7XG5cdGJhY2tncm91bmQ6IG5vbmU7XG5cdGNvbG9yOiBpbmhlcml0O1xuXHRwYWRkaW5nOiAuMjIyZW0gMDtcblx0bWFyZ2luOiAuMmVtIDA7XG5cdHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cdG1hcmdpbi1sZWZ0OiAuNGVtO1xuXHRtYXJnaW4tcmlnaHQ6IDJlbTtcbn1cbi51aS1zcGlubmVyLWJ1dHRvbiB7XG5cdHdpZHRoOiAxLjZlbTtcblx0aGVpZ2h0OiA1MCU7XG5cdGZvbnQtc2l6ZTogLjVlbTtcblx0cGFkZGluZzogMDtcblx0bWFyZ2luOiAwO1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0Y3Vyc29yOiBkZWZhdWx0O1xuXHRkaXNwbGF5OiBibG9jaztcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0cmlnaHQ6IDA7XG59XG4vKiBtb3JlIHNwZWNpZmljaXR5IHJlcXVpcmVkIGhlcmUgdG8gb3ZlcnJpZGUgZGVmYXVsdCBib3JkZXJzICovXG4udWktc3Bpbm5lciBhLnVpLXNwaW5uZXItYnV0dG9uIHtcblx0Ym9yZGVyLXRvcC1zdHlsZTogbm9uZTtcblx0Ym9yZGVyLWJvdHRvbS1zdHlsZTogbm9uZTtcblx0Ym9yZGVyLXJpZ2h0LXN0eWxlOiBub25lO1xufVxuLnVpLXNwaW5uZXItdXAge1xuXHR0b3A6IDA7XG59XG4udWktc3Bpbm5lci1kb3duIHtcblx0Ym90dG9tOiAwO1xufVxuIiwiLyohXG4gKiBqUXVlcnkgVUkgVGFicyAxLjEzLjJcbiAqIGh0dHA6Ly9qcXVlcnl1aS5jb21cbiAqXG4gKiBDb3B5cmlnaHQgalF1ZXJ5IEZvdW5kYXRpb24gYW5kIG90aGVyIGNvbnRyaWJ1dG9yc1xuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlLlxuICogaHR0cDovL2pxdWVyeS5vcmcvbGljZW5zZVxuICpcbiAqIGh0dHA6Ly9hcGkuanF1ZXJ5dWkuY29tL3RhYnMvI3RoZW1pbmdcbiAqL1xuLnVpLXRhYnMge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7LyogcG9zaXRpb246IHJlbGF0aXZlIHByZXZlbnRzIElFIHNjcm9sbCBidWcgKGVsZW1lbnQgd2l0aCBwb3NpdGlvbjogcmVsYXRpdmUgaW5zaWRlIGNvbnRhaW5lciB3aXRoIG92ZXJmbG93OiBhdXRvIGFwcGVhciBhcyBcImZpeGVkXCIpICovXG5cdHBhZGRpbmc6IC4yZW07XG59XG4udWktdGFicyAudWktdGFicy1uYXYge1xuXHRtYXJnaW46IDA7XG5cdHBhZGRpbmc6IC4yZW0gLjJlbSAwO1xufVxuLnVpLXRhYnMgLnVpLXRhYnMtbmF2IGxpIHtcblx0bGlzdC1zdHlsZTogbm9uZTtcblx0ZmxvYXQ6IGxlZnQ7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0dG9wOiAwO1xuXHRtYXJnaW46IDFweCAuMmVtIDAgMDtcblx0Ym9yZGVyLWJvdHRvbS13aWR0aDogMDtcblx0cGFkZGluZzogMDtcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cbi51aS10YWJzIC51aS10YWJzLW5hdiAudWktdGFicy1hbmNob3Ige1xuXHRmbG9hdDogbGVmdDtcblx0cGFkZGluZzogLjVlbSAxZW07XG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbi51aS10YWJzIC51aS10YWJzLW5hdiBsaS51aS10YWJzLWFjdGl2ZSB7XG5cdG1hcmdpbi1ib3R0b206IC0xcHg7XG5cdHBhZGRpbmctYm90dG9tOiAxcHg7XG59XG4udWktdGFicyAudWktdGFicy1uYXYgbGkudWktdGFicy1hY3RpdmUgLnVpLXRhYnMtYW5jaG9yLFxuLnVpLXRhYnMgLnVpLXRhYnMtbmF2IGxpLnVpLXN0YXRlLWRpc2FibGVkIC51aS10YWJzLWFuY2hvcixcbi51aS10YWJzIC51aS10YWJzLW5hdiBsaS51aS10YWJzLWxvYWRpbmcgLnVpLXRhYnMtYW5jaG9yIHtcblx0Y3Vyc29yOiB0ZXh0O1xufVxuLnVpLXRhYnMtY29sbGFwc2libGUgLnVpLXRhYnMtbmF2IGxpLnVpLXRhYnMtYWN0aXZlIC51aS10YWJzLWFuY2hvciB7XG5cdGN1cnNvcjogcG9pbnRlcjtcbn1cbi51aS10YWJzIC51aS10YWJzLXBhbmVsIHtcblx0ZGlzcGxheTogYmxvY2s7XG5cdGJvcmRlci13aWR0aDogMDtcblx0cGFkZGluZzogMWVtIDEuNGVtO1xuXHRiYWNrZ3JvdW5kOiBub25lO1xufVxuIiwiLyohXG4gKiBqUXVlcnkgVUkgVG9vbHRpcCAxLjEzLjJcbiAqIGh0dHA6Ly9qcXVlcnl1aS5jb21cbiAqXG4gKiBDb3B5cmlnaHQgalF1ZXJ5IEZvdW5kYXRpb24gYW5kIG90aGVyIGNvbnRyaWJ1dG9yc1xuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlLlxuICogaHR0cDovL2pxdWVyeS5vcmcvbGljZW5zZVxuICpcbiAqIGh0dHA6Ly9hcGkuanF1ZXJ5dWkuY29tL3Rvb2x0aXAvI3RoZW1pbmdcbiAqL1xuLnVpLXRvb2x0aXAge1xuXHRwYWRkaW5nOiA4cHg7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0ei1pbmRleDogOTk5OTtcblx0bWF4LXdpZHRoOiAzMDBweDtcbn1cbmJvZHkgLnVpLXRvb2x0aXAge1xuXHRib3JkZXItd2lkdGg6IDJweDtcbn1cbiIsIkBpbXBvcnQgXCJub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvYm9vdHN0cmFwXCI7XG5AaW1wb3J0IFwibm9kZV9tb2R1bGVzL2pxdWVyeS11aS90aGVtZXMvYmFzZS9kYXRlcGlja2VyXCI7XG5AaW1wb3J0IFwibm9kZV9tb2R1bGVzL2Vhc3ltZGUvZGlzdC9lYXN5bWRlLm1pblwiO1xuQGltcG9ydCBcIm5vZGVfbW9kdWxlcy9kYXRhdGFibGVzL21lZGlhL2Nzcy9qcXVlcnkuZGF0YVRhYmxlc1wiO1xuXG5AaW1wb3J0IFwiX3ZhcmlhYmxlc1wiO1xuQGltcG9ydCBcIl9nZW5lcmFsXCI7XG5AaW1wb3J0IFwiX2J1dHRvbnNcIjtcbkBpbXBvcnQgXCJfZnVuY3Rpb25zXCI7XG5AaW1wb3J0IFwiX2ljb25zXCI7XG5AaW1wb3J0IFwiX2ljb25zLW15c3BhY2Uuc2Nzc1wiO1xuQGltcG9ydCBcIl9saWJyYXJ5LnNjc3NcIjtcbkBpbXBvcnQgXCJfcG9ydGFsLnNjc3NcIjtcbkBpbXBvcnQgXCJfYnJvd3NlLnNjc3NcIjtcbkBpbXBvcnQgXCJfY29ubmVjdGVkLXNwYWNlLnNjc3NcIjtcbkBpbXBvcnQgXCJfbXlMaWJyYXJ5LnNjc3NcIjtcbkBpbXBvcnQgXCJpbmRleFwiO1xuQGltcG9ydCBcIm5hdmJhclwiO1xuQGltcG9ydCBcImNjc2RfZm9ybVwiO1xuQGltcG9ydCBcImRvY3VtZW50XCI7XG5AaW1wb3J0IFwiYWN0aW9uc1wiO1xuQGltcG9ydCBcIl9lcnJvclwiO1xuQGltcG9ydCBcInNlYXJjaFwiO1xuQGltcG9ydCBcIl9kYXNoYm9hcmRcIjtcbkBpbXBvcnQgXCJfcmVzdW1lXCI7XG5AaW1wb3J0IFwiX3Jlc3VtZS12aXN1YWxpemF0aW9uXCI7XG5AaW1wb3J0IFwiX3N1Ym1pdFwiO1xuQGltcG9ydCBcIl9wYWdlXCI7XG5AaW1wb3J0IFwiX3N0YXRzXCI7XG5AaW1wb3J0IFwiX3NpdGVcIjtcbkBpbXBvcnQgXCJfZGFya1wiO1xuXG4vLyBjb2RlIGNvcGllZCBmcm9tLCBpdCBzIGFib3V0IGEganMgY2xhc3MgdGhhdCByZWxpZXMgb24gYm9vdHN0cmFwIHBvcG92ZXJzIHRvIG1ha2UgZmllbGQgZWRpdGFibGUgKGZvciBtb2RlcmF0aW9uLCBkdXBsaWNhdGVzKVxuLy8gY2hlY2sgOiBodHRwczovL2dpdGh1Yi5jb20vVGFsdi94LWVkaXRhYmxlL2Jsb2IvZGV2ZWxvcC9kaXN0L2Jvb3RzdHJhcDQtZWRpdGFibGUvY3NzL2Jvb3RzdHJhcC1lZGl0YWJsZS5jc3Ncbi8vIHdlIHVwZGF0ZWQgdGhlIGljb25zIHRvIHVzZSBIQUwgaWNvbnMgZmEtdGltZT0+IGljb24tZXhpdCBhbmQgZmEtc3VibWl0PT4gaWNvbi1jaGVja1xuLy8gdGhlIG9yaWdpbmFsIHJlcG8gaXMgbm90IG1haW50YWluZSBhbnltb3JlICEgOiBodHRwczovL2dpdGh1Yi5jb20vdml0YWxldHMveC1lZGl0YWJsZS9pc3N1ZXMvNjEwIC8gaHR0cHM6Ly9naXRodWIuY29tL3ZpdGFsZXRzL3gtZWRpdGFibGUvaXNzdWVzLzExNzlcbkBpbXBvcnQgXCJib290c3RyYXAtZWRpdGFibGVcIjtcblxuLyoqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICBCT0RZXG4qKioqKioqKioqKioqKioqKioqKioqL1xuaHRtbCwgYm9keXtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbiAgbWluLWhlaWdodDogMTAwJTtcbiAgZm9udC1zaXplOiAkc2l6ZS1yZWd1bGFyO1xuICBmb250LWZhbWlseTogJGZvbnQtaGFsO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JheS1mYTtcbn1cblxuYm9keS5lbnYtZGV2ZWxvcG1lbnQsIGJvZHkuZW52LXRlc3RpbmcsIGJvZHkuZW52LXByZXByb2Qge1xuICAubmF2YmFyLWJyYW5kLmxvZ28tSEFMOjphZnRlciB7XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIGNvbnRlbnQ6IFwiZGV2ZWxvcG1lbnRcIjtcbiAgICBiYWNrZ3JvdW5kOiByZWQ7XG4gICAgcGFkZGluZzogMCA1cHg7XG4gICAgZm9udC1zaXplOiAxMHB4O1xuICB9XG59XG5ib2R5LmVudi10ZXN0aW5nIC5uYXZiYXItYnJhbmQubG9nby1IQUw6OmFmdGVyIHtcbiAgY29udGVudDogXCJ0ZXN0aW5nXCI7XG59XG5ib2R5LmVudi1wcmVwcm9kIC5uYXZiYXItYnJhbmQubG9nby1IQUw6OmFmdGVyIHtcbiAgY29sb3I6ICRwcmltYXJ5LWJsdWU7XG4gIGNvbnRlbnQ6IFwicHJlcHJvZFwiO1xuICBiYWNrZ3JvdW5kOiB5ZWxsb3c7XG59XG5cbm1haW57XG4gIG1pbi1oZWlnaHQ6IDYxJTtcbn1cblxuYSB7XG4gIGNvbG9yOiAkcHJpbWFyeS1ibHVlMTtcbn1cblxuYTpob3ZlcntcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuYnV0dG9uOmhvdmVye1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbm1haW4gLnNlY3Rpb24tY29ycHMge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcbiAgICBtYXJnaW46IDYwcHggNCUgMCA0JTtcbiAgfVxufVxuXG4uc2VjdGlvbi1jb3JwcyB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcbiAgICBtYXJnaW46IDAgOS41JTtcbiAgfVxuXG4gIC5zZWN0aW9uLWNvbnRlbnQge1xuICAgIHBhZGRpbmc6IDE2cHggMjZweDtcblxuICAgIGgzIHtcbiAgICAgIGZvbnQtc2l6ZTogJHNpemUtbGFyZ2U7XG4gICAgfVxuICB9XG5cbiAgLndpZGdldC1maWxlcyB7XG4gICAgbWluLWhlaWdodDogNThweDtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuXG4gIC53aWRnZXQge1xuICAgIGJveC1zaGFkb3c6IDBweCAzcHggMTVweCAjMDAwMDAwMjk7XG5cbiAgICAud2lkZ2V0LWhlYWRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1ibHVlO1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIHBhZGRpbmctdG9wOiAxMHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgfVxuXG5cbiAgJi51c2VyLXNwYWNlLCAmLmFkbWluLXNwYWNlLCAuaW5mby1wYWdlIHtcbiAgICBtYXJnaW4tdG9wOiAyMHB4O1xuXG4gICAgaDEsIC5oYWwtdGl0bGUge1xuICAgICAgZm9udC1zaXplOiAkc2l6ZS14bDtcbiAgICAgIG1hcmdpbi10b3A6IDQwcHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIH1cbiAgfVxuXG4gICYucm93IHtcbiAgICBtYXJnaW4tdG9wOiA2MHB4O1xuXG4gICAgLmhlYWRlci1zZWN0aW9uIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIzcHg7XG5cbiAgICAgIGRpdi5jb2wtMSB7XG4gICAgICAgIC1tcy1mbGV4OiAwIDAgMSU7XG4gICAgICAgIGZsZXg6IDAgMCAxJTtcbiAgICAgICAgbWF4LXdpZHRoOiAxJTtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgIH1cblxuICAgICAgc2VjdGlvbi5mbGV4LTc0IHtcbiAgICAgICAgLW1zLWZsZXg6IDAgMCA3NCU7XG4gICAgICAgIGZsZXg6IDAgMCA3NCU7XG4gICAgICAgIG1heC13aWR0aDogNzQlO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uaGVhZGVyLXNlY3Rpb24gLmpvdXJuYWwsIC5oZWFkZXItc2VjdGlvbiAueWVhciB7XG4gIG1hcmdpbi1sZWZ0OiA1cHg7XG59XG5zZWN0aW9uLmZsZXgtNzQsICNwcmV2aWV3LWRvYyB7XG4gIGgye1xuICAgIGxpbmUtaGVpZ2h0OiAxLjY7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICYudGl0bGUtbGFuZyB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICAmOm5vdCgudGl0bGUtbGFuZyksICYuYWN0aXZlIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB9XG4gIH1cbiAgLmF1dGhvcnMsIC5zdHJ1Y3R1cmVze1xuICAgIEBleHRlbmQgJWJ0bi1wb3BvdmVyO1xuICB9XG59XG5cbmgxLCBoMiwgaDMsIGg0IHtcbiAgQGluY2x1ZGUgZm9udC1ib2xkKCk7XG59XG5cbmgyIHtcbiAgZm9udC1zaXplOiAkc2l6ZS14bDtcbn1cblxuaDQge1xuICBmb250LXNpemU6ICRzaXplLXJlZ3VsYXI7XG59XG5cbi8qIE1vZGVyYXRpb24gKi9cblxuLmRlbGV0ZWQge1xuICB0ZXh0LWRlY29yYXRpb246IGxpbmUtdGhyb3VnaDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y1YzZjYiAhaW1wb3J0YW50O1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgIEZPT1RFUlxuKioqKioqKioqKioqKioqKioqKioqKi9cbmZvb3RlcntcbiAgYmFja2dyb3VuZC1jb2xvcjogJGRhcmtibHVlO1xuICBjb2xvcjogJHdoaXRlO1xuICBwYWRkaW5nLXRvcDogNTBweDtcbiAgbWFyZ2luLXRvcDogMTAwcHg7XG5cbiAgLmNvbC1zbS00LCAuY29sLW1kLTJ7XG4gICAgcGFkZGluZzowO1xuICB9XG4gIHB7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGZvbnQtc2l6ZTogJHNpemUtbGFyZ2U7XG4gIH1cbiAgdWx7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG4gIGxpe1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbGluZS1oZWlnaHQ6IDI7XG5cbiAgICAmOmxhc3QtY2hpbGR7XG4gICAgICBtYXJnaW4tYm90dG9tOiA1MHB4O1xuICAgIH1cbiAgICBhe1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICB9XG4gICAgYTpob3ZlciwgYTpmb2N1c3tcbiAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICB9XG4gIH1cbn1cblxuLm1haW50ZW5hbmNlLWFsZXJ0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y0NDMzNjtcbiAgY29sb3I6IGJsYWNrO1xuICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgZm9udC1zaXplOiAxNTAlO1xuICB6LWluZGV4OiAxMjAwO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMjAlO1xuICByaWdodDoyMCU7XG59XG4iLCIvKiFcbiAqIEJvb3RzdHJhcCB2NC42LjIgKGh0dHBzOi8vZ2V0Ym9vdHN0cmFwLmNvbS8pXG4gKiBDb3B5cmlnaHQgMjAxMS0yMDIyIFRoZSBCb290c3RyYXAgQXV0aG9yc1xuICogQ29weXJpZ2h0IDIwMTEtMjAyMiBUd2l0dGVyLCBJbmMuXG4gKiBMaWNlbnNlZCB1bmRlciBNSVQgKGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9ibG9iL21haW4vTElDRU5TRSlcbiAqL1xuXG5AaW1wb3J0IFwiZnVuY3Rpb25zXCI7XG5AaW1wb3J0IFwidmFyaWFibGVzXCI7XG5AaW1wb3J0IFwibWl4aW5zXCI7XG5AaW1wb3J0IFwicm9vdFwiO1xuQGltcG9ydCBcInJlYm9vdFwiO1xuQGltcG9ydCBcInR5cGVcIjtcbkBpbXBvcnQgXCJpbWFnZXNcIjtcbkBpbXBvcnQgXCJjb2RlXCI7XG5AaW1wb3J0IFwiZ3JpZFwiO1xuQGltcG9ydCBcInRhYmxlc1wiO1xuQGltcG9ydCBcImZvcm1zXCI7XG5AaW1wb3J0IFwiYnV0dG9uc1wiO1xuQGltcG9ydCBcInRyYW5zaXRpb25zXCI7XG5AaW1wb3J0IFwiZHJvcGRvd25cIjtcbkBpbXBvcnQgXCJidXR0b24tZ3JvdXBcIjtcbkBpbXBvcnQgXCJpbnB1dC1ncm91cFwiO1xuQGltcG9ydCBcImN1c3RvbS1mb3Jtc1wiO1xuQGltcG9ydCBcIm5hdlwiO1xuQGltcG9ydCBcIm5hdmJhclwiO1xuQGltcG9ydCBcImNhcmRcIjtcbkBpbXBvcnQgXCJicmVhZGNydW1iXCI7XG5AaW1wb3J0IFwicGFnaW5hdGlvblwiO1xuQGltcG9ydCBcImJhZGdlXCI7XG5AaW1wb3J0IFwianVtYm90cm9uXCI7XG5AaW1wb3J0IFwiYWxlcnRcIjtcbkBpbXBvcnQgXCJwcm9ncmVzc1wiO1xuQGltcG9ydCBcIm1lZGlhXCI7XG5AaW1wb3J0IFwibGlzdC1ncm91cFwiO1xuQGltcG9ydCBcImNsb3NlXCI7XG5AaW1wb3J0IFwidG9hc3RzXCI7XG5AaW1wb3J0IFwibW9kYWxcIjtcbkBpbXBvcnQgXCJ0b29sdGlwXCI7XG5AaW1wb3J0IFwicG9wb3ZlclwiO1xuQGltcG9ydCBcImNhcm91c2VsXCI7XG5AaW1wb3J0IFwic3Bpbm5lcnNcIjtcbkBpbXBvcnQgXCJ1dGlsaXRpZXNcIjtcbkBpbXBvcnQgXCJwcmludFwiO1xuIiwiOnJvb3Qge1xuICAvLyBDdXN0b20gdmFyaWFibGUgdmFsdWVzIG9ubHkgc3VwcG9ydCBTYXNzU2NyaXB0IGluc2lkZSBgI3t9YC5cbiAgQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJGNvbG9ycyB7XG4gICAgLS0jeyRjb2xvcn06ICN7JHZhbHVlfTtcbiAgfVxuXG4gIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAgIC0tI3skY29sb3J9OiAjeyR2YWx1ZX07XG4gIH1cblxuICBAZWFjaCAkYnAsICR2YWx1ZSBpbiAkZ3JpZC1icmVha3BvaW50cyB7XG4gICAgLS1icmVha3BvaW50LSN7JGJwfTogI3skdmFsdWV9O1xuICB9XG5cbiAgLy8gVXNlIGBpbnNwZWN0YCBmb3IgbGlzdHMgc28gdGhhdCBxdW90ZWQgaXRlbXMga2VlcCB0aGUgcXVvdGVzLlxuICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3Nhc3Mvc2Fzcy9pc3N1ZXMvMjM4MyNpc3N1ZWNvbW1lbnQtMzM2MzQ5MTcyXG4gIC0tZm9udC1mYW1pbHktc2Fucy1zZXJpZjogI3tpbnNwZWN0KCRmb250LWZhbWlseS1zYW5zLXNlcmlmKX07XG4gIC0tZm9udC1mYW1pbHktbW9ub3NwYWNlOiAje2luc3BlY3QoJGZvbnQtZmFtaWx5LW1vbm9zcGFjZSl9O1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50LCBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGUsIHByb3BlcnR5LW5vLXZlbmRvci1wcmVmaXhcblxuLy8gUmVib290XG4vL1xuLy8gTm9ybWFsaXphdGlvbiBvZiBIVE1MIGVsZW1lbnRzLCBtYW51YWxseSBmb3JrZWQgZnJvbSBOb3JtYWxpemUuY3NzIHRvIHJlbW92ZVxuLy8gc3R5bGVzIHRhcmdldGluZyBpcnJlbGV2YW50IGJyb3dzZXJzIHdoaWxlIGFwcGx5aW5nIG5ldyBzdHlsZXMuXG4vL1xuLy8gTm9ybWFsaXplIGlzIGxpY2Vuc2VkIE1JVC4gaHR0cHM6Ly9naXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzc1xuXG5cbi8vIERvY3VtZW50XG4vL1xuLy8gMS4gQ2hhbmdlIGZyb20gYGJveC1zaXppbmc6IGNvbnRlbnQtYm94YCBzbyB0aGF0IGB3aWR0aGAgaXMgbm90IGFmZmVjdGVkIGJ5IGBwYWRkaW5nYCBvciBgYm9yZGVyYC5cbi8vIDIuIENoYW5nZSB0aGUgZGVmYXVsdCBmb250IGZhbWlseSBpbiBhbGwgYnJvd3NlcnMuXG4vLyAzLiBDb3JyZWN0IHRoZSBsaW5lIGhlaWdodCBpbiBhbGwgYnJvd3NlcnMuXG4vLyA0LiBQcmV2ZW50IGFkanVzdG1lbnRzIG9mIGZvbnQgc2l6ZSBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2VzIGluIElFIG9uIFdpbmRvd3MgUGhvbmUgYW5kIGluIGlPUy5cbi8vIDUuIENoYW5nZSB0aGUgZGVmYXVsdCB0YXAgaGlnaGxpZ2h0IHRvIGJlIGNvbXBsZXRlbHkgdHJhbnNwYXJlbnQgaW4gaU9TLlxuXG4qLFxuKjo6YmVmb3JlLFxuKjo6YWZ0ZXIge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvLyAxXG59XG5cbmh0bWwge1xuICBmb250LWZhbWlseTogc2Fucy1zZXJpZjsgLy8gMlxuICBsaW5lLWhlaWdodDogMS4xNTsgLy8gM1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8vIDRcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKCRibGFjaywgMCk7IC8vIDVcbn1cblxuLy8gU2hpbSBmb3IgXCJuZXdcIiBIVE1MNSBzdHJ1Y3R1cmFsIGVsZW1lbnRzIHRvIGRpc3BsYXkgY29ycmVjdGx5IChJRTEwLCBvbGRlciBicm93c2Vycylcbi8vIFRPRE86IHJlbW92ZSBpbiB2NVxuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLWxpc3QtY29tbWEtbmV3bGluZS1hZnRlclxuYXJ0aWNsZSwgYXNpZGUsIGZpZ2NhcHRpb24sIGZpZ3VyZSwgZm9vdGVyLCBoZWFkZXIsIGhncm91cCwgbWFpbiwgbmF2LCBzZWN0aW9uIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8vIEJvZHlcbi8vXG4vLyAxLiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBhbGwgYnJvd3NlcnMuXG4vLyAyLiBBcyBhIGJlc3QgcHJhY3RpY2UsIGFwcGx5IGEgZGVmYXVsdCBgYmFja2dyb3VuZC1jb2xvcmAuXG4vLyAzLiBTZXQgYW4gZXhwbGljaXQgaW5pdGlhbCB0ZXh0LWFsaWduIHZhbHVlIHNvIHRoYXQgd2UgY2FuIGxhdGVyIHVzZVxuLy8gICAgdGhlIGBpbmhlcml0YCB2YWx1ZSBvbiB0aGluZ3MgbGlrZSBgPHRoPmAgZWxlbWVudHMuXG5cbmJvZHkge1xuICBtYXJnaW46IDA7IC8vIDFcbiAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1iYXNlO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGZvbnQtc2l6ZS1iYXNlKTtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1iYXNlO1xuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gIGNvbG9yOiAkYm9keS1jb2xvcjtcbiAgdGV4dC1hbGlnbjogbGVmdDsgLy8gM1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYm9keS1iZzsgLy8gMlxufVxuXG4vLyBGdXR1cmUtcHJvb2YgcnVsZTogaW4gYnJvd3NlcnMgdGhhdCBzdXBwb3J0IDpmb2N1cy12aXNpYmxlLCBzdXBwcmVzcyB0aGUgZm9jdXMgb3V0bGluZVxuLy8gb24gZWxlbWVudHMgdGhhdCBwcm9ncmFtbWF0aWNhbGx5IHJlY2VpdmUgZm9jdXMgYnV0IHdvdWxkbid0IG5vcm1hbGx5IHNob3cgYSB2aXNpYmxlXG4vLyBmb2N1cyBvdXRsaW5lLiBJbiBnZW5lcmFsLCB0aGlzIHdvdWxkIG1lYW4gdGhhdCB0aGUgb3V0bGluZSBpcyBvbmx5IGFwcGxpZWQgaWYgdGhlXG4vLyBpbnRlcmFjdGlvbiB0aGF0IGxlZCB0byB0aGUgZWxlbWVudCByZWNlaXZpbmcgcHJvZ3JhbW1hdGljIGZvY3VzIHdhcyBhIGtleWJvYXJkIGludGVyYWN0aW9uLFxuLy8gb3IgdGhlIGJyb3dzZXIgaGFzIHNvbWVob3cgZGV0ZXJtaW5lZCB0aGF0IHRoZSB1c2VyIGlzIHByaW1hcmlseSBhIGtleWJvYXJkIHVzZXIgYW5kL29yXG4vLyB3YW50cyBmb2N1cyBvdXRsaW5lcyB0byBhbHdheXMgYmUgcHJlc2VudGVkLlxuLy9cbi8vIFNlZSBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9DU1MvOmZvY3VzLXZpc2libGVcbi8vIGFuZCBodHRwczovL2RldmVsb3Blci5wYWNpZWxsb2dyb3VwLmNvbS9ibG9nLzIwMTgvMDMvZm9jdXMtdmlzaWJsZS1hbmQtYmFja3dhcmRzLWNvbXBhdGliaWxpdHkvXG5bdGFiaW5kZXg9XCItMVwiXTpmb2N1czpub3QoOmZvY3VzLXZpc2libGUpIHtcbiAgb3V0bGluZTogMCAhaW1wb3J0YW50O1xufVxuXG5cbi8vIENvbnRlbnQgZ3JvdXBpbmdcbi8vXG4vLyAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBGaXJlZm94LlxuLy8gMi4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZSBhbmQgSUUuXG5cbmhyIHtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7IC8vIDFcbiAgaGVpZ2h0OiAwOyAvLyAxXG4gIG92ZXJmbG93OiB2aXNpYmxlOyAvLyAyXG59XG5cblxuLy9cbi8vIFR5cG9ncmFwaHlcbi8vXG5cbi8vIFJlbW92ZSB0b3AgbWFyZ2lucyBmcm9tIGhlYWRpbmdzXG4vL1xuLy8gQnkgZGVmYXVsdCwgYDxoMT5gLWA8aDY+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+IC5hcnJvdyB7XG4gICAgbGVmdDogc3VidHJhY3QoLSRwb3BvdmVyLWFycm93LWhlaWdodCwgJHBvcG92ZXItYm9yZGVyLXdpZHRoKTtcbiAgICB3aWR0aDogJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuICAgIGhlaWdodDogJHBvcG92ZXItYXJyb3ctd2lkdGg7XG4gICAgbWFyZ2luOiAkcG9wb3Zlci1ib3JkZXItcmFkaXVzIDA7IC8vIG1ha2Ugc3VyZSB0aGUgYXJyb3cgZG9lcyBub3QgdG91Y2ggdGhlIHBvcG92ZXIncyByb3VuZGVkIGNvcm5lcnNcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgYm9yZGVyLXdpZHRoOiAoJHBvcG92ZXItYXJyb3ctd2lkdGggKiAuNSkgJHBvcG92ZXItYXJyb3ctaGVpZ2h0ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAqIC41KSAwO1xuICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjtcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBsZWZ0OiAkcG9wb3Zlci1ib3JkZXItd2lkdGg7XG4gICAgICBib3JkZXItd2lkdGg6ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAqIC41KSAkcG9wb3Zlci1hcnJvdy1oZWlnaHQgKCRwb3BvdmVyLWFycm93LXdpZHRoICogLjUpIDA7XG4gICAgICBib3JkZXItcmlnaHQtY29sb3I6ICRwb3BvdmVyLWFycm93LWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtcG9wb3Zlci1ib3R0b20ge1xuICBtYXJnaW4tdG9wOiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQ7XG5cbiAgPiAuYXJyb3cge1xuICAgIHRvcDogc3VidHJhY3QoLSRwb3BvdmVyLWFycm93LWhlaWdodCwgJHBvcG92ZXItYm9yZGVyLXdpZHRoKTtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICB0b3A6IDA7XG4gICAgICBib3JkZXItd2lkdGg6IDAgKCRwb3BvdmVyLWFycm93LXdpZHRoICogLjUpICRwb3BvdmVyLWFycm93LWhlaWdodCAoJHBvcG92ZXItYXJyb3ctd2lkdGggKiAuNSk7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjtcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICB0b3A6ICRwb3BvdmVyLWJvcmRlci13aWR0aDtcbiAgICAgIGJvcmRlci13aWR0aDogMCAoJHBvcG92ZXItYXJyb3ctd2lkdGggKiAuNSkgJHBvcG92ZXItYXJyb3ctaGVpZ2h0ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAqIC41KTtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRwb3BvdmVyLWFycm93LWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC8vIFRoaXMgd2lsbCByZW1vdmUgdGhlIHBvcG92ZXItaGVhZGVyJ3MgYm9yZGVyIGp1c3QgYmVsb3cgdGhlIGFycm93XG4gIC5wb3BvdmVyLWhlYWRlcjo6YmVmb3JlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDUwJTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogJHBvcG92ZXItYXJyb3ctd2lkdGg7XG4gICAgbWFyZ2luLWxlZnQ6IC0kcG9wb3Zlci1hcnJvdy13aWR0aCAqIC41O1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgYm9yZGVyLWJvdHRvbTogJHBvcG92ZXItYm9yZGVyLXdpZHRoIHNvbGlkICRwb3BvdmVyLWhlYWRlci1iZztcbiAgfVxufVxuXG4uYnMtcG9wb3Zlci1sZWZ0IHtcbiAgbWFyZ2luLXJpZ2h0OiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQ7XG5cbiAgPiAuYXJyb3cge1xuICAgIHJpZ2h0OiBzdWJ0cmFjdCgtJHBvcG92ZXItYXJyb3ctaGVpZ2h0LCAkcG9wb3Zlci1ib3JkZXItd2lkdGgpO1xuICAgIHdpZHRoOiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQ7XG4gICAgaGVpZ2h0OiAkcG9wb3Zlci1hcnJvdy13aWR0aDtcbiAgICBtYXJnaW46ICRwb3BvdmVyLWJvcmRlci1yYWRpdXMgMDsgLy8gbWFrZSBzdXJlIHRoZSBhcnJvdyBkb2VzIG5vdCB0b3VjaCB0aGUgcG9wb3ZlcidzIHJvdW5kZWQgY29ybmVyc1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgYm9yZGVyLXdpZHRoOiAoJHBvcG92ZXItYXJyb3ctd2lkdGggKiAuNSkgMCAoJHBvcG92ZXItYXJyb3ctd2lkdGggKiAuNSkgJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yO1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIHJpZ2h0OiAkcG9wb3Zlci1ib3JkZXItd2lkdGg7XG4gICAgICBib3JkZXItd2lkdGg6ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAqIC41KSAwICgkcG9wb3Zlci1hcnJvdy13aWR0aCAqIC41KSAkcG9wb3Zlci1hcnJvdy1oZWlnaHQ7XG4gICAgICBib3JkZXItbGVmdC1jb2xvcjogJHBvcG92ZXItYXJyb3ctY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi5icy1wb3BvdmVyLWF1dG8ge1xuICAmW3gtcGxhY2VtZW50Xj1cInRvcFwiXSB7XG4gICAgQGV4dGVuZCAuYnMtcG9wb3Zlci10b3A7XG4gIH1cbiAgJlt4LXBsYWNlbWVudF49XCJyaWdodFwiXSB7XG4gICAgQGV4dGVuZCAuYnMtcG9wb3Zlci1yaWdodDtcbiAgfVxuICAmW3gtcGxhY2VtZW50Xj1cImJvdHRvbVwiXSB7XG4gICAgQGV4dGVuZCAuYnMtcG9wb3Zlci1ib3R0b207XG4gIH1cbiAgJlt4LXBsYWNlbWVudF49XCJsZWZ0XCJdIHtcbiAgICBAZXh0ZW5kIC5icy1wb3BvdmVyLWxlZnQ7XG4gIH1cbn1cblxuXG4vLyBPZmZzZXQgdGhlIHBvcG92ZXIgdG8gYWNjb3VudCBmb3IgdGhlIHBvcG92ZXIgYXJyb3dcbi5wb3BvdmVyLWhlYWRlciB7XG4gIHBhZGRpbmc6ICRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXkgJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteDtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gUmVzZXQgdGhlIGRlZmF1bHQgZnJvbSBSZWJvb3RcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmb250LXNpemUtYmFzZSk7XG4gIGNvbG9yOiAkcG9wb3Zlci1oZWFkZXItY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwb3BvdmVyLWhlYWRlci1iZztcbiAgYm9yZGVyLWJvdHRvbTogJHBvcG92ZXItYm9yZGVyLXdpZHRoIHNvbGlkIGRhcmtlbigkcG9wb3Zlci1oZWFkZXItYmcsIDUlKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJHBvcG92ZXItaW5uZXItYm9yZGVyLXJhZGl1cyk7XG5cbiAgJjplbXB0eSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4ucG9wb3Zlci1ib2R5IHtcbiAgcGFkZGluZzogJHBvcG92ZXItYm9keS1wYWRkaW5nLXkgJHBvcG92ZXItYm9keS1wYWRkaW5nLXg7XG4gIGNvbG9yOiAkcG9wb3Zlci1ib2R5LWNvbG9yO1xufVxuIiwiLy8gTm90ZXMgb24gdGhlIGNsYXNzZXM6XG4vL1xuLy8gMS4gLmNhcm91c2VsLnBvaW50ZXItZXZlbnQgc2hvdWxkIGlkZWFsbHkgYmUgcGFuLXkgKHRvIGFsbG93IGZvciB1c2VycyB0byBzY3JvbGwgdmVydGljYWxseSlcbi8vICAgIGV2ZW4gd2hlbiB0aGVpciBzY3JvbGwgYWN0aW9uIHN0YXJ0ZWQgb24gYSBjYXJvdXNlbCwgYnV0IGZvciBjb21wYXRpYmlsaXR5ICh3aXRoIEZpcmVmb3gpXG4vLyAgICB3ZSdyZSBwcmV2ZW50aW5nIGFsbCBhY3Rpb25zIGluc3RlYWRcbi8vIDIuIFRoZSAuY2Fyb3VzZWwtaXRlbS1sZWZ0IGFuZCAuY2Fyb3VzZWwtaXRlbS1yaWdodCBpcyB1c2VkIHRvIGluZGljYXRlIHdoZXJlXG4vLyAgICB0aGUgYWN0aXZlIHNsaWRlIGlzIGhlYWRpbmcuXG4vLyAzLiAuYWN0aXZlLmNhcm91c2VsLWl0ZW0gaXMgdGhlIGN1cnJlbnQgc2xpZGUuXG4vLyA0LiAuYWN0aXZlLmNhcm91c2VsLWl0ZW0tbGVmdCBhbmQgLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLXJpZ2h0IGlzIHRoZSBjdXJyZW50XG4vLyAgICBzbGlkZSBpbiBpdHMgaW4tdHJhbnNpdGlvbiBzdGF0ZS4gT25seSBvbmUgb2YgdGhlc2Ugb2NjdXJzIGF0IGEgdGltZS5cbi8vIDUuIC5jYXJvdXNlbC1pdGVtLW5leHQuY2Fyb3VzZWwtaXRlbS1sZWZ0IGFuZCAuY2Fyb3VzZWwtaXRlbS1wcmV2LmNhcm91c2VsLWl0ZW0tcmlnaHRcbi8vICAgIGlzIHRoZSB1cGNvbWluZyBzbGlkZSBpbiB0cmFuc2l0aW9uLlxuXG4uY2Fyb3VzZWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5jYXJvdXNlbC5wb2ludGVyLWV2ZW50IHtcbiAgdG91Y2gtYWN0aW9uOiBwYW4teTtcbn1cblxuLmNhcm91c2VsLWlubmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgQGluY2x1ZGUgY2xlYXJmaXgoKTtcbn1cblxuLmNhcm91c2VsLWl0ZW0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLXJpZ2h0OiAtMTAwJTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRjYXJvdXNlbC10cmFuc2l0aW9uKTtcbn1cblxuLmNhcm91c2VsLWl0ZW0uYWN0aXZlLFxuLmNhcm91c2VsLWl0ZW0tbmV4dCxcbi5jYXJvdXNlbC1pdGVtLXByZXYge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmNhcm91c2VsLWl0ZW0tbmV4dDpub3QoLmNhcm91c2VsLWl0ZW0tbGVmdCksXG4uYWN0aXZlLmNhcm91c2VsLWl0ZW0tcmlnaHQge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XG59XG5cbi5jYXJvdXNlbC1pdGVtLXByZXY6bm90KC5jYXJvdXNlbC1pdGVtLXJpZ2h0KSxcbi5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1sZWZ0IHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcbn1cblxuXG4vL1xuLy8gQWx0ZXJuYXRlIHRyYW5zaXRpb25zXG4vL1xuXG4uY2Fyb3VzZWwtZmFkZSB7XG4gIC5jYXJvdXNlbC1pdGVtIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHk7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG5cbiAgLmNhcm91c2VsLWl0ZW0uYWN0aXZlLFxuICAuY2Fyb3VzZWwtaXRlbS1uZXh0LmNhcm91c2VsLWl0ZW0tbGVmdCxcbiAgLmNhcm91c2VsLWl0ZW0tcHJldi5jYXJvdXNlbC1pdGVtLXJpZ2h0IHtcbiAgICB6LWluZGV4OiAxO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAuYWN0aXZlLmNhcm91c2VsLWl0ZW0tbGVmdCxcbiAgLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLXJpZ2h0IHtcbiAgICB6LWluZGV4OiAwO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbihvcGFjaXR5IDBzICRjYXJvdXNlbC10cmFuc2l0aW9uLWR1cmF0aW9uKTtcbiAgfVxufVxuXG5cbi8vXG4vLyBMZWZ0L3JpZ2h0IGNvbnRyb2xzIGZvciBuYXZcbi8vXG5cbi5jYXJvdXNlbC1jb250cm9sLXByZXYsXG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgei1pbmRleDogMTtcbiAgLy8gVXNlIGZsZXggZm9yIGFsaWdubWVudCAoMS0zKVxuICBkaXNwbGF5OiBmbGV4OyAvLyAxLiBhbGxvdyBmbGV4IHN0eWxlc1xuICBhbGlnbi1pdGVtczogY2VudGVyOyAvLyAyLiB2ZXJ0aWNhbGx5IGNlbnRlciBjb250ZW50c1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgLy8gMy4gaG9yaXpvbnRhbGx5IGNlbnRlciBjb250ZW50c1xuICB3aWR0aDogJGNhcm91c2VsLWNvbnRyb2wtd2lkdGg7XG4gIHBhZGRpbmc6IDA7XG4gIGNvbG9yOiAkY2Fyb3VzZWwtY29udHJvbC1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBib3JkZXI6IDA7XG4gIG9wYWNpdHk6ICRjYXJvdXNlbC1jb250cm9sLW9wYWNpdHk7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGNhcm91c2VsLWNvbnRyb2wtdHJhbnNpdGlvbik7XG5cbiAgLy8gSG92ZXIvZm9jdXMgc3RhdGVcbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgY29sb3I6ICRjYXJvdXNlbC1jb250cm9sLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBvdXRsaW5lOiAwO1xuICAgIG9wYWNpdHk6ICRjYXJvdXNlbC1jb250cm9sLWhvdmVyLW9wYWNpdHk7XG4gIH1cbn1cbi5jYXJvdXNlbC1jb250cm9sLXByZXYge1xuICBsZWZ0OiAwO1xuICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgcmdiYSgkYmxhY2ssIC4yNSksIHJnYmEoJGJsYWNrLCAuMDAxKSk7XG4gIH1cbn1cbi5jYXJvdXNlbC1jb250cm9sLW5leHQge1xuICByaWdodDogMDtcbiAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoMjcwZGVnLCByZ2JhKCRibGFjaywgLjI1KSwgcmdiYSgkYmxhY2ssIC4wMDEpKTtcbiAgfVxufVxuXG4vLyBJY29ucyBmb3Igd2l0aGluXG4uY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24sXG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAkY2Fyb3VzZWwtY29udHJvbC1pY29uLXdpZHRoO1xuICBoZWlnaHQ6ICRjYXJvdXNlbC1jb250cm9sLWljb24td2lkdGg7XG4gIGJhY2tncm91bmQ6IDUwJSAvIDEwMCUgMTAwJSBuby1yZXBlYXQ7XG59XG4uY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRjYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbi1iZyk7XG59XG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRjYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbi1iZyk7XG59XG5cblxuLy8gT3B0aW9uYWwgaW5kaWNhdG9yIHBpcHNcbi8vXG4vLyBBZGQgYW4gb3JkZXJlZCBsaXN0IHdpdGggdGhlIGZvbGxvd2luZyBjbGFzcyBhbmQgYWRkIGEgbGlzdCBpdGVtIGZvciBlYWNoXG4vLyBzbGlkZSB5b3VyIGNhcm91c2VsIGhvbGRzLlxuXG4uY2Fyb3VzZWwtaW5kaWNhdG9ycyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMTU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBwYWRkaW5nLWxlZnQ6IDA7IC8vIG92ZXJyaWRlIDxvbD4gZGVmYXVsdFxuICAvLyBVc2UgdGhlIC5jYXJvdXNlbC1jb250cm9sJ3Mgd2lkdGggYXMgbWFyZ2luIHNvIHdlIGRvbid0IG92ZXJsYXkgdGhvc2VcbiAgbWFyZ2luLXJpZ2h0OiAkY2Fyb3VzZWwtY29udHJvbC13aWR0aDtcbiAgbWFyZ2luLWxlZnQ6ICRjYXJvdXNlbC1jb250cm9sLXdpZHRoO1xuICBsaXN0LXN0eWxlOiBub25lO1xuXG4gIGxpIHtcbiAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgICBmbGV4OiAwIDEgYXV0bztcbiAgICB3aWR0aDogJGNhcm91c2VsLWluZGljYXRvci13aWR0aDtcbiAgICBoZWlnaHQ6ICRjYXJvdXNlbC1pbmRpY2F0b3ItaGVpZ2h0O1xuICAgIG1hcmdpbi1yaWdodDogJGNhcm91c2VsLWluZGljYXRvci1zcGFjZXI7XG4gICAgbWFyZ2luLWxlZnQ6ICRjYXJvdXNlbC1pbmRpY2F0b3Itc3BhY2VyO1xuICAgIHRleHQtaW5kZW50OiAtOTk5cHg7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjYXJvdXNlbC1pbmRpY2F0b3ItYWN0aXZlLWJnO1xuICAgIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gICAgLy8gVXNlIHRyYW5zcGFyZW50IGJvcmRlcnMgdG8gaW5jcmVhc2UgdGhlIGhpdCBhcmVhIGJ5IDEwcHggb24gdG9wIGFuZCBib3R0b20uXG4gICAgYm9yZGVyLXRvcDogJGNhcm91c2VsLWluZGljYXRvci1oaXQtYXJlYS1oZWlnaHQgc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWJvdHRvbTogJGNhcm91c2VsLWluZGljYXRvci1oaXQtYXJlYS1oZWlnaHQgc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgb3BhY2l0eTogLjU7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkY2Fyb3VzZWwtaW5kaWNhdG9yLXRyYW5zaXRpb24pO1xuICB9XG5cbiAgLmFjdGl2ZSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG5cbi8vIE9wdGlvbmFsIGNhcHRpb25zXG4vL1xuLy9cblxuLmNhcm91c2VsLWNhcHRpb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAoMTAwJSAtICRjYXJvdXNlbC1jYXB0aW9uLXdpZHRoKSAqIC41O1xuICBib3R0b206IDIwcHg7XG4gIGxlZnQ6ICgxMDAlIC0gJGNhcm91c2VsLWNhcHRpb24td2lkdGgpICogLjU7XG4gIHotaW5kZXg6IDEwO1xuICBwYWRkaW5nLXRvcDogMjBweDtcbiAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gIGNvbG9yOiAkY2Fyb3VzZWwtY2FwdGlvbi1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuIiwiQG1peGluIGNsZWFyZml4KCkge1xuICAmOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgY29udGVudDogXCJcIjtcbiAgfVxufVxuIiwiLy9cbi8vIFJvdGF0aW5nIGJvcmRlclxuLy9cblxuQGtleWZyYW1lcyBzcGlubmVyLWJvcmRlciB7XG4gIHRvIHsgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTsgfVxufVxuXG4uc3Bpbm5lci1ib3JkZXIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAkc3Bpbm5lci13aWR0aDtcbiAgaGVpZ2h0OiAkc3Bpbm5lci1oZWlnaHQ7XG4gIHZlcnRpY2FsLWFsaWduOiAkc3Bpbm5lci12ZXJ0aWNhbC1hbGlnbjtcbiAgYm9yZGVyOiAkc3Bpbm5lci1ib3JkZXItd2lkdGggc29saWQgY3VycmVudGNvbG9yO1xuICBib3JkZXItcmlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgYW5pbWF0aW9uOiAuNzVzIGxpbmVhciBpbmZpbml0ZSBzcGlubmVyLWJvcmRlcjtcbn1cblxuLnNwaW5uZXItYm9yZGVyLXNtIHtcbiAgd2lkdGg6ICRzcGlubmVyLXdpZHRoLXNtO1xuICBoZWlnaHQ6ICRzcGlubmVyLWhlaWdodC1zbTtcbiAgYm9yZGVyLXdpZHRoOiAkc3Bpbm5lci1ib3JkZXItd2lkdGgtc207XG59XG5cbi8vXG4vLyBHcm93aW5nIGNpcmNsZVxuLy9cblxuQGtleWZyYW1lcyBzcGlubmVyLWdyb3cge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgfVxuICA1MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG59XG5cbi5zcGlubmVyLWdyb3cge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAkc3Bpbm5lci13aWR0aDtcbiAgaGVpZ2h0OiAkc3Bpbm5lci1oZWlnaHQ7XG4gIHZlcnRpY2FsLWFsaWduOiAkc3Bpbm5lci12ZXJ0aWNhbC1hbGlnbjtcbiAgYmFja2dyb3VuZC1jb2xvcjogY3VycmVudGNvbG9yO1xuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgb3BhY2l0eTogMDtcbiAgYW5pbWF0aW9uOiAuNzVzIGxpbmVhciBpbmZpbml0ZSBzcGlubmVyLWdyb3c7XG59XG5cbi5zcGlubmVyLWdyb3ctc20ge1xuICB3aWR0aDogJHNwaW5uZXItd2lkdGgtc207XG4gIGhlaWdodDogJHNwaW5uZXItaGVpZ2h0LXNtO1xufVxuXG5AaWYgJGVuYWJsZS1wcmVmZXJzLXJlZHVjZWQtbW90aW9uLW1lZGlhLXF1ZXJ5IHtcbiAgQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgICAuc3Bpbm5lci1ib3JkZXIsXG4gICAgLnNwaW5uZXItZ3JvdyB7XG4gICAgICBhbmltYXRpb24tZHVyYXRpb246IDEuNXM7XG4gICAgfVxuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLmFsaWduLWJhc2VsaW5lICAgIHsgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lICFpbXBvcnRhbnQ7IH0gLy8gQnJvd3NlciBkZWZhdWx0XG4uYWxpZ24tdG9wICAgICAgICAgeyB2ZXJ0aWNhbC1hbGlnbjogdG9wICFpbXBvcnRhbnQ7IH1cbi5hbGlnbi1taWRkbGUgICAgICB7IHZlcnRpY2FsLWFsaWduOiBtaWRkbGUgIWltcG9ydGFudDsgfVxuLmFsaWduLWJvdHRvbSAgICAgIHsgdmVydGljYWwtYWxpZ246IGJvdHRvbSAhaW1wb3J0YW50OyB9XG4uYWxpZ24tdGV4dC1ib3R0b20geyB2ZXJ0aWNhbC1hbGlnbjogdGV4dC1ib3R0b20gIWltcG9ydGFudDsgfVxuLmFsaWduLXRleHQtdG9wICAgIHsgdmVydGljYWwtYWxpZ246IHRleHQtdG9wICFpbXBvcnRhbnQ7IH1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vLyBDb250ZXh0dWFsIGJhY2tncm91bmRzXG5cbkBtaXhpbiBiZy12YXJpYW50KCRwYXJlbnQsICRjb2xvciwgJGlnbm9yZS13YXJuaW5nOiBmYWxzZSkge1xuICAjeyRwYXJlbnR9IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3IgIWltcG9ydGFudDtcbiAgfVxuICBhI3skcGFyZW50fSxcbiAgYnV0dG9uI3skcGFyZW50fSB7XG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGNvbG9yLCAxMCUpICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG4gIEBpbmNsdWRlIGRlcHJlY2F0ZShcIlRoZSBgYmctdmFyaWFudGAgbWl4aW5cIiwgXCJ2NC40LjBcIiwgXCJ2NVwiLCAkaWdub3JlLXdhcm5pbmcpO1xufVxuXG5AbWl4aW4gYmctZ3JhZGllbnQtdmFyaWFudCgkcGFyZW50LCAkY29sb3IsICRpZ25vcmUtd2FybmluZzogZmFsc2UpIHtcbiAgI3skcGFyZW50fSB7XG4gICAgYmFja2dyb3VuZDogJGNvbG9yIGxpbmVhci1ncmFkaWVudCgxODBkZWcsIG1peCgkYm9keS1iZywgJGNvbG9yLCAxNSUpLCAkY29sb3IpIHJlcGVhdC14ICFpbXBvcnRhbnQ7XG4gIH1cbiAgQGluY2x1ZGUgZGVwcmVjYXRlKFwiVGhlIGBiZy1ncmFkaWVudC12YXJpYW50YCBtaXhpblwiLCBcInY0LjUuMFwiLCBcInY1XCIsICRpZ25vcmUtd2FybmluZyk7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIEBpbmNsdWRlIGJnLXZhcmlhbnQoXCIuYmctI3skY29sb3J9XCIsICR2YWx1ZSwgdHJ1ZSk7XG59XG5cbkBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAgIEBpbmNsdWRlIGJnLWdyYWRpZW50LXZhcmlhbnQoXCIuYmctZ3JhZGllbnQtI3skY29sb3J9XCIsICR2YWx1ZSwgdHJ1ZSk7XG4gIH1cbn1cblxuLmJnLXdoaXRlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XG59XG5cbi5iZy10cmFuc3BhcmVudCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3QsIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vL1xuLy8gQm9yZGVyXG4vL1xuXG4uYm9yZGVyICAgICAgICAgeyBib3JkZXI6ICRib3JkZXItd2lkdGggc29saWQgJGJvcmRlci1jb2xvciAhaW1wb3J0YW50OyB9XG4uYm9yZGVyLXRvcCAgICAgeyBib3JkZXItdG9wOiAkYm9yZGVyLXdpZHRoIHNvbGlkICRib3JkZXItY29sb3IgIWltcG9ydGFudDsgfVxuLmJvcmRlci1yaWdodCAgIHsgYm9yZGVyLXJpZ2h0OiAkYm9yZGVyLXdpZHRoIHNvbGlkICRib3JkZXItY29sb3IgIWltcG9ydGFudDsgfVxuLmJvcmRlci1ib3R0b20gIHsgYm9yZGVyLWJvdHRvbTogJGJvcmRlci13aWR0aCBzb2xpZCAkYm9yZGVyLWNvbG9yICFpbXBvcnRhbnQ7IH1cbi5ib3JkZXItbGVmdCAgICB7IGJvcmRlci1sZWZ0OiAkYm9yZGVyLXdpZHRoIHNvbGlkICRib3JkZXItY29sb3IgIWltcG9ydGFudDsgfVxuXG4uYm9yZGVyLTAgICAgICAgIHsgYm9yZGVyOiAwICFpbXBvcnRhbnQ7IH1cbi5ib3JkZXItdG9wLTAgICAgeyBib3JkZXItdG9wOiAwICFpbXBvcnRhbnQ7IH1cbi5ib3JkZXItcmlnaHQtMCAgeyBib3JkZXItcmlnaHQ6IDAgIWltcG9ydGFudDsgfVxuLmJvcmRlci1ib3R0b20tMCB7IGJvcmRlci1ib3R0b206IDAgIWltcG9ydGFudDsgfVxuLmJvcmRlci1sZWZ0LTAgICB7IGJvcmRlci1sZWZ0OiAwICFpbXBvcnRhbnQ7IH1cblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIC5ib3JkZXItI3skY29sb3J9IHtcbiAgICBib3JkZXItY29sb3I6ICR2YWx1ZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5ib3JkZXItd2hpdGUge1xuICBib3JkZXItY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xufVxuXG4vL1xuLy8gQm9yZGVyLXJhZGl1c1xuLy9cblxuLnJvdW5kZWQtc20ge1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1zbSAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZCB7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLXRvcCB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC1yaWdodCB7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtYm90dG9tIHtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLWxlZnQge1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC1sZyB7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWxnICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLWNpcmNsZSB7XG4gIGJvcmRlci1yYWRpdXM6IDUwJSAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC1waWxsIHtcbiAgYm9yZGVyLXJhZGl1czogJHJvdW5kZWQtcGlsbCAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC0wIHtcbiAgYm9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50O1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vXG4vLyBVdGlsaXRpZXMgZm9yIGNvbW1vbiBgZGlzcGxheWAgdmFsdWVzXG4vL1xuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICBAZWFjaCAkdmFsdWUgaW4gJGRpc3BsYXlzIHtcbiAgICAgIC5kI3skaW5maXh9LSN7JHZhbHVlfSB7IGRpc3BsYXk6ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG4gICAgfVxuICB9XG59XG5cblxuLy9cbi8vIFV0aWxpdGllcyBmb3IgdG9nZ2xpbmcgYGRpc3BsYXlgIGluIHByaW50XG4vL1xuXG5AbWVkaWEgcHJpbnQge1xuICBAZWFjaCAkdmFsdWUgaW4gJGRpc3BsYXlzIHtcbiAgICAuZC1wcmludC0jeyR2YWx1ZX0geyBkaXNwbGF5OiAkdmFsdWUgIWltcG9ydGFudDsgfVxuICB9XG59XG4iLCIvLyBDcmVkaXQ6IE5pY29sYXMgR2FsbGFnaGVyIGFuZCBTVUlUIENTUy5cblxuLmVtYmVkLXJlc3BvbnNpdmUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAmOjpiZWZvcmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gIH1cblxuICAuZW1iZWQtcmVzcG9uc2l2ZS1pdGVtLFxuICBpZnJhbWUsXG4gIGVtYmVkLFxuICBvYmplY3QsXG4gIHZpZGVvIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBib3JkZXI6IDA7XG4gIH1cbn1cblxuQGVhY2ggJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvIGluICRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpb3Mge1xuICAkZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW8teDogbnRoKCRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpbywgMSk7XG4gICRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpby15OiBudGgoJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvLCAyKTtcblxuICAuZW1iZWQtcmVzcG9uc2l2ZS0jeyRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpby14fWJ5I3skZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW8teX0ge1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBwYWRkaW5nLXRvcDogcGVyY2VudGFnZShkaXZpZGUoJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvLXksICRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpby14KSk7XG4gICAgfVxuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy8gRmxleCB2YXJpYXRpb25cbi8vXG4vLyBDdXN0b20gc3R5bGVzIGZvciBhZGRpdGlvbmFsIGZsZXggYWxpZ25tZW50IG9wdGlvbnMuXG5cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIC5mbGV4I3skaW5maXh9LXJvdyAgICAgICAgICAgIHsgZmxleC1kaXJlY3Rpb246IHJvdyAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tY29sdW1uICAgICAgICAgeyBmbGV4LWRpcmVjdGlvbjogY29sdW1uICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1yb3ctcmV2ZXJzZSAgICB7IGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZSAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tY29sdW1uLXJldmVyc2UgeyBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2UgIWltcG9ydGFudDsgfVxuXG4gICAgLmZsZXgjeyRpbmZpeH0td3JhcCAgICAgICAgIHsgZmxleC13cmFwOiB3cmFwICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1ub3dyYXAgICAgICAgeyBmbGV4LXdyYXA6IG5vd3JhcCAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0td3JhcC1yZXZlcnNlIHsgZmxleC13cmFwOiB3cmFwLXJldmVyc2UgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LWZpbGwgICAgICAgICB7IGZsZXg6IDEgMSBhdXRvICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1ncm93LTAgICAgICAgeyBmbGV4LWdyb3c6IDAgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LWdyb3ctMSAgICAgICB7IGZsZXgtZ3JvdzogMSAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tc2hyaW5rLTAgICAgIHsgZmxleC1zaHJpbms6IDAgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LXNocmluay0xICAgICB7IGZsZXgtc2hyaW5rOiAxICFpbXBvcnRhbnQ7IH1cblxuICAgIC5qdXN0aWZ5LWNvbnRlbnQjeyRpbmZpeH0tc3RhcnQgICB7IGp1c3RpZnktY29udGVudDogZmxleC1zdGFydCAhaW1wb3J0YW50OyB9XG4gICAgLmp1c3RpZnktY29udGVudCN7JGluZml4fS1lbmQgICAgIHsganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZCAhaW1wb3J0YW50OyB9XG4gICAgLmp1c3RpZnktY29udGVudCN7JGluZml4fS1jZW50ZXIgIHsganVzdGlmeS1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDsgfVxuICAgIC5qdXN0aWZ5LWNvbnRlbnQjeyRpbmZpeH0tYmV0d2VlbiB7IGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbiAhaW1wb3J0YW50OyB9XG4gICAgLmp1c3RpZnktY29udGVudCN7JGluZml4fS1hcm91bmQgIHsganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQgIWltcG9ydGFudDsgfVxuXG4gICAgLmFsaWduLWl0ZW1zI3skaW5maXh9LXN0YXJ0ICAgIHsgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1pdGVtcyN7JGluZml4fS1lbmQgICAgICB7IGFsaWduLWl0ZW1zOiBmbGV4LWVuZCAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWl0ZW1zI3skaW5maXh9LWNlbnRlciAgIHsgYWxpZ24taXRlbXM6IGNlbnRlciAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWl0ZW1zI3skaW5maXh9LWJhc2VsaW5lIHsgYWxpZ24taXRlbXM6IGJhc2VsaW5lICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24taXRlbXMjeyRpbmZpeH0tc3RyZXRjaCAgeyBhbGlnbi1pdGVtczogc3RyZXRjaCAhaW1wb3J0YW50OyB9XG5cbiAgICAuYWxpZ24tY29udGVudCN7JGluZml4fS1zdGFydCAgIHsgYWxpZ24tY29udGVudDogZmxleC1zdGFydCAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWNvbnRlbnQjeyRpbmZpeH0tZW5kICAgICB7IGFsaWduLWNvbnRlbnQ6IGZsZXgtZW5kICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tY29udGVudCN7JGluZml4fS1jZW50ZXIgIHsgYWxpZ24tY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tY29udGVudCN7JGluZml4fS1iZXR3ZWVuIHsgYWxpZ24tY29udGVudDogc3BhY2UtYmV0d2VlbiAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWNvbnRlbnQjeyRpbmZpeH0tYXJvdW5kICB7IGFsaWduLWNvbnRlbnQ6IHNwYWNlLWFyb3VuZCAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWNvbnRlbnQjeyRpbmZpeH0tc3RyZXRjaCB7IGFsaWduLWNvbnRlbnQ6IHN0cmV0Y2ggIWltcG9ydGFudDsgfVxuXG4gICAgLmFsaWduLXNlbGYjeyRpbmZpeH0tYXV0byAgICAgeyBhbGlnbi1zZWxmOiBhdXRvICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tc2VsZiN7JGluZml4fS1zdGFydCAgICB7IGFsaWduLXNlbGY6IGZsZXgtc3RhcnQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1zZWxmI3skaW5maXh9LWVuZCAgICAgIHsgYWxpZ24tc2VsZjogZmxleC1lbmQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1zZWxmI3skaW5maXh9LWNlbnRlciAgIHsgYWxpZ24tc2VsZjogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tc2VsZiN7JGluZml4fS1iYXNlbGluZSB7IGFsaWduLXNlbGY6IGJhc2VsaW5lICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tc2VsZiN7JGluZml4fS1zdHJldGNoICB7IGFsaWduLXNlbGY6IHN0cmV0Y2ggIWltcG9ydGFudDsgfVxuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgLmZsb2F0I3skaW5maXh9LWxlZnQgIHsgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDsgfVxuICAgIC5mbG9hdCN7JGluZml4fS1yaWdodCB7IGZsb2F0OiByaWdodCAhaW1wb3J0YW50OyB9XG4gICAgLmZsb2F0I3skaW5maXh9LW5vbmUgIHsgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDsgfVxuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuQGVhY2ggJHZhbHVlIGluICR1c2VyLXNlbGVjdHMge1xuICAudXNlci1zZWxlY3QtI3skdmFsdWV9IHsgdXNlci1zZWxlY3Q6ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuQGVhY2ggJHZhbHVlIGluICRvdmVyZmxvd3Mge1xuICAub3ZlcmZsb3ctI3skdmFsdWV9IHsgb3ZlcmZsb3c6ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy8gQ29tbW9uIHZhbHVlc1xuQGVhY2ggJHBvc2l0aW9uIGluICRwb3NpdGlvbnMge1xuICAucG9zaXRpb24tI3skcG9zaXRpb259IHsgcG9zaXRpb246ICRwb3NpdGlvbiAhaW1wb3J0YW50OyB9XG59XG5cbi8vIFNob3J0aGFuZFxuXG4uZml4ZWQtdG9wIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4LWZpeGVkO1xufVxuXG4uZml4ZWQtYm90dG9tIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4LWZpeGVkO1xufVxuXG4uc3RpY2t5LXRvcCB7XG4gIEBzdXBwb3J0cyAocG9zaXRpb246IHN0aWNreSkge1xuICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgdG9wOiAwO1xuICAgIHotaW5kZXg6ICR6aW5kZXgtc3RpY2t5O1xuICB9XG59XG4iLCIvL1xuLy8gU2NyZWVucmVhZGVyc1xuLy9cblxuLnNyLW9ubHkge1xuICBAaW5jbHVkZSBzci1vbmx5KCk7XG59XG5cbi5zci1vbmx5LWZvY3VzYWJsZSB7XG4gIEBpbmNsdWRlIHNyLW9ubHktZm9jdXNhYmxlKCk7XG59XG4iLCIvLyBPbmx5IGRpc3BsYXkgY29udGVudCB0byBzY3JlZW4gcmVhZGVyc1xuLy9cbi8vIFNlZTogaHR0cHM6Ly93d3cuYTExeXByb2plY3QuY29tL3Bvc3RzLzIwMTMtMDEtMTEtaG93LXRvLWhpZGUtY29udGVudC9cbi8vIFNlZTogaHR0cHM6Ly9raXR0eWdpcmF1ZGVsLmNvbS8yMDE2LzEwLzEzL2Nzcy1oaWRlLWFuZC1zZWVrL1xuXG5AbWl4aW4gc3Itb25seSgpIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAtMXB4OyAvLyBGaXggZm9yIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjU2ODZcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYm9yZGVyOiAwO1xufVxuXG4vLyBVc2UgaW4gY29uanVuY3Rpb24gd2l0aCAuc3Itb25seSB0byBvbmx5IGRpc3BsYXkgY29udGVudCB3aGVuIGl0J3MgZm9jdXNlZC5cbi8vXG4vLyBVc2VmdWwgZm9yIFwiU2tpcCB0byBtYWluIGNvbnRlbnRcIiBsaW5rczsgc2VlIGh0dHBzOi8vd3d3LnczLm9yZy9UUi8yMDEzL05PVEUtV0NBRzIwLVRFQ0hTLTIwMTMwOTA1L0cxXG4vL1xuLy8gQ3JlZGl0OiBIVE1MNSBCb2lsZXJwbGF0ZVxuXG5AbWl4aW4gc3Itb25seS1mb2N1c2FibGUoKSB7XG4gICY6YWN0aXZlLFxuICAmOmZvY3VzIHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICBjbGlwOiBhdXRvO1xuICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4uc2hhZG93LXNtIHsgYm94LXNoYWRvdzogJGJveC1zaGFkb3ctc20gIWltcG9ydGFudDsgfVxuLnNoYWRvdyB7IGJveC1zaGFkb3c6ICRib3gtc2hhZG93ICFpbXBvcnRhbnQ7IH1cbi5zaGFkb3ctbGcgeyBib3gtc2hhZG93OiAkYm94LXNoYWRvdy1sZyAhaW1wb3J0YW50OyB9XG4uc2hhZG93LW5vbmUgeyBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7IH1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vLyBXaWR0aCBhbmQgaGVpZ2h0XG5cbkBlYWNoICRwcm9wLCAkYWJicmV2IGluICh3aWR0aDogdywgaGVpZ2h0OiBoKSB7XG4gIEBlYWNoICRzaXplLCAkbGVuZ3RoIGluICRzaXplcyB7XG4gICAgLiN7JGFiYnJldn0tI3skc2l6ZX0geyAjeyRwcm9wfTogJGxlbmd0aCAhaW1wb3J0YW50OyB9XG4gIH1cbn1cblxuLm13LTEwMCB7IG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50OyB9XG4ubWgtMTAwIHsgbWF4LWhlaWdodDogMTAwJSAhaW1wb3J0YW50OyB9XG5cbi8vIFZpZXdwb3J0IGFkZGl0aW9uYWwgaGVscGVyc1xuXG4ubWluLXZ3LTEwMCB7IG1pbi13aWR0aDogMTAwdncgIWltcG9ydGFudDsgfVxuLm1pbi12aC0xMDAgeyBtaW4taGVpZ2h0OiAxMDB2aCAhaW1wb3J0YW50OyB9XG5cbi52dy0xMDAgeyB3aWR0aDogMTAwdncgIWltcG9ydGFudDsgfVxuLnZoLTEwMCB7IGhlaWdodDogMTAwdmggIWltcG9ydGFudDsgfVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIE1hcmdpbiBhbmQgUGFkZGluZ1xuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICBAZWFjaCAkcHJvcCwgJGFiYnJldiBpbiAobWFyZ2luOiBtLCBwYWRkaW5nOiBwKSB7XG4gICAgICBAZWFjaCAkc2l6ZSwgJGxlbmd0aCBpbiAkc3BhY2VycyB7XG4gICAgICAgIC4jeyRhYmJyZXZ9I3skaW5maXh9LSN7JHNpemV9IHsgI3skcHJvcH06ICRsZW5ndGggIWltcG9ydGFudDsgfVxuICAgICAgICAuI3skYWJicmV2fXQjeyRpbmZpeH0tI3skc2l6ZX0sXG4gICAgICAgIC4jeyRhYmJyZXZ9eSN7JGluZml4fS0jeyRzaXplfSB7XG4gICAgICAgICAgI3skcHJvcH0tdG9wOiAkbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLiN7JGFiYnJldn1yI3skaW5maXh9LSN7JHNpemV9LFxuICAgICAgICAuI3skYWJicmV2fXgjeyRpbmZpeH0tI3skc2l6ZX0ge1xuICAgICAgICAgICN7JHByb3B9LXJpZ2h0OiAkbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLiN7JGFiYnJldn1iI3skaW5maXh9LSN7JHNpemV9LFxuICAgICAgICAuI3skYWJicmV2fXkjeyRpbmZpeH0tI3skc2l6ZX0ge1xuICAgICAgICAgICN7JHByb3B9LWJvdHRvbTogJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIC4jeyRhYmJyZXZ9bCN7JGluZml4fS0jeyRzaXplfSxcbiAgICAgICAgLiN7JGFiYnJldn14I3skaW5maXh9LSN7JHNpemV9IHtcbiAgICAgICAgICAjeyRwcm9wfS1sZWZ0OiAkbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBOZWdhdGl2ZSBtYXJnaW5zIChlLmcuLCB3aGVyZSBgLm1iLW4xYCBpcyBuZWdhdGl2ZSB2ZXJzaW9uIG9mIGAubWItMWApXG4gICAgQGVhY2ggJHNpemUsICRsZW5ndGggaW4gJHNwYWNlcnMge1xuICAgICAgQGlmIFwiI3skc2l6ZX1cIiAhPSBcIjBcIiB7XG4gICAgICAgIC5tI3skaW5maXh9LW4jeyRzaXplfSB7IG1hcmdpbjogLSRsZW5ndGggIWltcG9ydGFudDsgfVxuICAgICAgICAubXQjeyRpbmZpeH0tbiN7JHNpemV9LFxuICAgICAgICAubXkjeyRpbmZpeH0tbiN7JHNpemV9IHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAtJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIC5tciN7JGluZml4fS1uI3skc2l6ZX0sXG4gICAgICAgIC5teCN7JGluZml4fS1uI3skc2l6ZX0ge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogLSRsZW5ndGggIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICAubWIjeyRpbmZpeH0tbiN7JHNpemV9LFxuICAgICAgICAubXkjeyRpbmZpeH0tbiN7JHNpemV9IHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAtJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIC5tbCN7JGluZml4fS1uI3skc2l6ZX0sXG4gICAgICAgIC5teCN7JGluZml4fS1uI3skc2l6ZX0ge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gU29tZSBzcGVjaWFsIG1hcmdpbiB1dGlsc1xuICAgIC5tI3skaW5maXh9LWF1dG8geyBtYXJnaW46IGF1dG8gIWltcG9ydGFudDsgfVxuICAgIC5tdCN7JGluZml4fS1hdXRvLFxuICAgIC5teSN7JGluZml4fS1hdXRvIHtcbiAgICAgIG1hcmdpbi10b3A6IGF1dG8gIWltcG9ydGFudDtcbiAgICB9XG4gICAgLm1yI3skaW5maXh9LWF1dG8sXG4gICAgLm14I3skaW5maXh9LWF1dG8ge1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5tYiN7JGluZml4fS1hdXRvLFxuICAgIC5teSN7JGluZml4fS1hdXRvIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IGF1dG8gIWltcG9ydGFudDtcbiAgICB9XG4gICAgLm1sI3skaW5maXh9LWF1dG8sXG4gICAgLm14I3skaW5maXh9LWF1dG8ge1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vXG4vLyBTdHJldGNoZWQgbGlua1xuLy9cblxuLnN0cmV0Y2hlZC1saW5rIHtcbiAgJjo6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogMTtcbiAgICAvLyBKdXN0IGluIGNhc2UgYHBvaW50ZXItZXZlbnRzOiBub25lYCBpcyBzZXQgb24gYSBwYXJlbnRcbiAgICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIC8vIElFMTAgYnVnZml4LCBzZWUgaHR0cHM6Ly9zdGFja292ZXJmbG93LmNvbS9xdWVzdGlvbnMvMTY5NDc5NjcvaWUxMC1ob3Zlci1wc2V1ZG8tY2xhc3MtZG9lc250LXdvcmstd2l0aG91dC1iYWNrZ3JvdW5kLWNvbG9yXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwKTtcbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vXG4vLyBUZXh0XG4vL1xuXG4udGV4dC1tb25vc3BhY2UgeyBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZSAhaW1wb3J0YW50OyB9XG5cbi8vIEFsaWdubWVudFxuXG4udGV4dC1qdXN0aWZ5ICB7IHRleHQtYWxpZ246IGp1c3RpZnkgIWltcG9ydGFudDsgfVxuLnRleHQtd3JhcCAgICAgeyB3aGl0ZS1zcGFjZTogbm9ybWFsICFpbXBvcnRhbnQ7IH1cbi50ZXh0LW5vd3JhcCAgIHsgd2hpdGUtc3BhY2U6IG5vd3JhcCAhaW1wb3J0YW50OyB9XG4udGV4dC10cnVuY2F0ZSB7IEBpbmNsdWRlIHRleHQtdHJ1bmNhdGUoKTsgfVxuXG4vLyBSZXNwb25zaXZlIGFsaWdubWVudFxuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAudGV4dCN7JGluZml4fS1sZWZ0ICAgeyB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7IH1cbiAgICAudGV4dCN7JGluZml4fS1yaWdodCAgeyB0ZXh0LWFsaWduOiByaWdodCAhaW1wb3J0YW50OyB9XG4gICAgLnRleHQjeyRpbmZpeH0tY2VudGVyIHsgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgfVxufVxuXG4vLyBUcmFuc2Zvcm1hdGlvblxuXG4udGV4dC1sb3dlcmNhc2UgIHsgdGV4dC10cmFuc2Zvcm06IGxvd2VyY2FzZSAhaW1wb3J0YW50OyB9XG4udGV4dC11cHBlcmNhc2UgIHsgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZSAhaW1wb3J0YW50OyB9XG4udGV4dC1jYXBpdGFsaXplIHsgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemUgIWltcG9ydGFudDsgfVxuXG4vLyBXZWlnaHQgYW5kIGl0YWxpY3NcblxuLmZvbnQtd2VpZ2h0LWxpZ2h0ICAgeyBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWxpZ2h0ICFpbXBvcnRhbnQ7IH1cbi5mb250LXdlaWdodC1saWdodGVyIHsgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1saWdodGVyICFpbXBvcnRhbnQ7IH1cbi5mb250LXdlaWdodC1ub3JtYWwgIHsgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWwgIWltcG9ydGFudDsgfVxuLmZvbnQtd2VpZ2h0LWJvbGQgICAgeyBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQgIWltcG9ydGFudDsgfVxuLmZvbnQtd2VpZ2h0LWJvbGRlciAgeyBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGRlciAhaW1wb3J0YW50OyB9XG4uZm9udC1pdGFsaWMgICAgICAgICB7IGZvbnQtc3R5bGU6IGl0YWxpYyAhaW1wb3J0YW50OyB9XG5cbi8vIENvbnRleHR1YWwgY29sb3JzXG5cbi50ZXh0LXdoaXRlIHsgY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50OyB9XG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICBAaW5jbHVkZSB0ZXh0LWVtcGhhc2lzLXZhcmlhbnQoXCIudGV4dC0jeyRjb2xvcn1cIiwgJHZhbHVlLCB0cnVlKTtcbn1cblxuLnRleHQtYm9keSB7IGNvbG9yOiAkYm9keS1jb2xvciAhaW1wb3J0YW50OyB9XG4udGV4dC1tdXRlZCB7IGNvbG9yOiAkdGV4dC1tdXRlZCAhaW1wb3J0YW50OyB9XG5cbi50ZXh0LWJsYWNrLTUwIHsgY29sb3I6IHJnYmEoJGJsYWNrLCAuNSkgIWltcG9ydGFudDsgfVxuLnRleHQtd2hpdGUtNTAgeyBjb2xvcjogcmdiYSgkd2hpdGUsIC41KSAhaW1wb3J0YW50OyB9XG5cbi8vIE1pc2NcblxuLnRleHQtaGlkZSB7XG4gIEBpbmNsdWRlIHRleHQtaGlkZSgkaWdub3JlLXdhcm5pbmc6IHRydWUpO1xufVxuXG4udGV4dC1kZWNvcmF0aW9uLW5vbmUgeyB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDsgfVxuXG4udGV4dC1icmVhayB7XG4gIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQgIWltcG9ydGFudDsgLy8gRGVwcmVjYXRlZCwgYnV0IGF2b2lkcyBpc3N1ZXMgd2l0aCBmbGV4IGNvbnRhaW5lcnNcbiAgd29yZC13cmFwOiBicmVhay13b3JkICFpbXBvcnRhbnQ7IC8vIFVzZWQgaW5zdGVhZCBvZiBgb3ZlcmZsb3ctd3JhcGAgZm9yIElFICYgRWRnZSBMZWdhY3lcbn1cblxuLy8gUmVzZXRcblxuLnRleHQtcmVzZXQgeyBjb2xvcjogaW5oZXJpdCAhaW1wb3J0YW50OyB9XG4iLCIvLyBUZXh0IHRydW5jYXRlXG4vLyBSZXF1aXJlcyBpbmxpbmUtYmxvY2sgb3IgYmxvY2sgZm9yIHByb3BlciBzdHlsaW5nXG5cbkBtaXhpbiB0ZXh0LXRydW5jYXRlKCkge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vLyBUeXBvZ3JhcGh5XG5cbkBtaXhpbiB0ZXh0LWVtcGhhc2lzLXZhcmlhbnQoJHBhcmVudCwgJGNvbG9yLCAkaWdub3JlLXdhcm5pbmc6IGZhbHNlKSB7XG4gICN7JHBhcmVudH0ge1xuICAgIGNvbG9yOiAkY29sb3IgIWltcG9ydGFudDtcbiAgfVxuICBAaWYgJGVtcGhhc2l6ZWQtbGluay1ob3Zlci1kYXJrZW4tcGVyY2VudGFnZSAhPSAwIHtcbiAgICBhI3skcGFyZW50fSB7XG4gICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICAgICAgY29sb3I6IGRhcmtlbigkY29sb3IsICRlbXBoYXNpemVkLWxpbmstaG92ZXItZGFya2VuLXBlcmNlbnRhZ2UpICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBpbmNsdWRlIGRlcHJlY2F0ZShcImB0ZXh0LWVtcGhhc2lzLXZhcmlhbnQoKWBcIiwgXCJ2NC40LjBcIiwgXCJ2NVwiLCAkaWdub3JlLXdhcm5pbmcpO1xufVxuIiwiLy8gQ1NTIGltYWdlIHJlcGxhY2VtZW50XG5AbWl4aW4gdGV4dC1oaWRlKCRpZ25vcmUtd2FybmluZzogZmFsc2UpIHtcbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIGZvbnQtZmFtaWx5LW5vLW1pc3NpbmctZ2VuZXJpYy1mYW1pbHkta2V5d29yZFxuICBmb250OiAwLzAgYTtcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcblxuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJgdGV4dC1oaWRlKClgXCIsIFwidjQuMS4wXCIsIFwidjVcIiwgJGlnbm9yZS13YXJuaW5nKTtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vL1xuLy8gVmlzaWJpbGl0eSB1dGlsaXRpZXNcbi8vXG5cbi52aXNpYmxlIHtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50O1xufVxuXG4uaW52aXNpYmxlIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuICFpbXBvcnRhbnQ7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnQsIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuXG4vLyBTb3VyY2U6IGh0dHBzOi8vZ2l0aHViLmNvbS9oNWJwL21haW4uY3NzL2Jsb2IvbWFzdGVyL3NyYy9fcHJpbnQuY3NzXG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBQcmludCBzdHlsZXMuXG4vLyBJbmxpbmVkIHRvIGF2b2lkIHRoZSBhZGRpdGlvbmFsIEhUVFAgcmVxdWVzdDpcbi8vIGh0dHBzOi8vd3d3LnBocGllZC5jb20vZGVsYXktbG9hZGluZy15b3VyLXByaW50LWNzcy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkBpZiAkZW5hYmxlLXByaW50LXN0eWxlcyB7XG4gIEBtZWRpYSBwcmludCB7XG4gICAgKixcbiAgICAqOjpiZWZvcmUsXG4gICAgKjo6YWZ0ZXIge1xuICAgICAgLy8gQm9vdHN0cmFwIHNwZWNpZmljOyBjb21tZW50IG91dCBgY29sb3JgIGFuZCBgYmFja2dyb3VuZGBcbiAgICAgIC8vY29sb3I6ICRibGFjayAhaW1wb3J0YW50OyAvLyBCbGFjayBwcmludHMgZmFzdGVyXG4gICAgICB0ZXh0LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgLy9iYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIGEge1xuICAgICAgJjpub3QoLmJ0bikge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBCb290c3RyYXAgc3BlY2lmaWM7IGNvbW1lbnQgdGhlIGZvbGxvd2luZyBzZWxlY3RvciBvdXRcbiAgICAvL2FbaHJlZl06OmFmdGVyIHtcbiAgICAvLyAgY29udGVudDogXCIgKFwiIGF0dHIoaHJlZikgXCIpXCI7XG4gICAgLy99XG5cbiAgICBhYmJyW3RpdGxlXTo6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCIgKFwiIGF0dHIodGl0bGUpIFwiKVwiO1xuICAgIH1cblxuICAgIC8vIEJvb3RzdHJhcCBzcGVjaWZpYzsgY29tbWVudCB0aGUgZm9sbG93aW5nIHNlbGVjdG9yIG91dFxuICAgIC8vXG4gICAgLy8gRG9uJ3Qgc2hvdyBsaW5rcyB0aGF0IGFyZSBmcmFnbWVudCBpZGVudGlmaWVycyxcbiAgICAvLyBvciB1c2UgdGhlIGBqYXZhc2NyaXB0OmAgcHNldWRvIHByb3RvY29sXG4gICAgLy9cblxuICAgIC8vYVtocmVmXj1cIiNcIl06OmFmdGVyLFxuICAgIC8vYVtocmVmXj1cImphdmFzY3JpcHQ6XCJdOjphZnRlciB7XG4gICAgLy8gY29udGVudDogXCJcIjtcbiAgICAvL31cblxuICAgIHByZSB7XG4gICAgICB3aGl0ZS1zcGFjZTogcHJlLXdyYXAgIWltcG9ydGFudDtcbiAgICB9XG4gICAgcHJlLFxuICAgIGJsb2NrcXVvdGUge1xuICAgICAgYm9yZGVyOiAkYm9yZGVyLXdpZHRoIHNvbGlkICRncmF5LTUwMDsgLy8gQm9vdHN0cmFwIGN1c3RvbSBjb2RlOyB1c2luZyBgJGJvcmRlci13aWR0aGAgaW5zdGVhZCBvZiAxcHhcbiAgICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgICB9XG5cbiAgICB0cixcbiAgICBpbWcge1xuICAgICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xuICAgIH1cblxuICAgIHAsXG4gICAgaDIsXG4gICAgaDMge1xuICAgICAgb3JwaGFuczogMztcbiAgICAgIHdpZG93czogMztcbiAgICB9XG5cbiAgICBoMixcbiAgICBoMyB7XG4gICAgICBwYWdlLWJyZWFrLWFmdGVyOiBhdm9pZDtcbiAgICB9XG5cbiAgICAvLyBCb290c3RyYXAgc3BlY2lmaWMgY2hhbmdlcyBzdGFydFxuXG4gICAgLy8gU3BlY2lmeSBhIHNpemUgYW5kIG1pbi13aWR0aCB0byBtYWtlIHByaW50aW5nIGNsb3NlciBhY3Jvc3MgYnJvd3NlcnMuXG4gICAgLy8gV2UgZG9uJ3Qgc2V0IG1hcmdpbiBoZXJlIGJlY2F1c2UgaXQgYnJlYWtzIGBzaXplYCBpbiBDaHJvbWUuIFdlIGFsc29cbiAgICAvLyBkb24ndCB1c2UgYCFpbXBvcnRhbnRgIG9uIGBzaXplYCBhcyBpdCBicmVha3MgaW4gQ2hyb21lLlxuICAgIEBwYWdlIHtcbiAgICAgIHNpemU6ICRwcmludC1wYWdlLXNpemU7XG4gICAgfVxuICAgIGJvZHkge1xuICAgICAgbWluLXdpZHRoOiAkcHJpbnQtYm9keS1taW4td2lkdGggIWltcG9ydGFudDtcbiAgICB9XG4gICAgLmNvbnRhaW5lciB7XG4gICAgICBtaW4td2lkdGg6ICRwcmludC1ib2R5LW1pbi13aWR0aCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC8vIEJvb3RzdHJhcCBjb21wb25lbnRzXG4gICAgLm5hdmJhciB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICAuYmFkZ2Uge1xuICAgICAgYm9yZGVyOiAkYm9yZGVyLXdpZHRoIHNvbGlkICRibGFjaztcbiAgICB9XG5cbiAgICAudGFibGUge1xuICAgICAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZSAhaW1wb3J0YW50O1xuXG4gICAgICB0ZCxcbiAgICAgIHRoIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnRhYmxlLWJvcmRlcmVkIHtcbiAgICAgIHRoLFxuICAgICAgdGQge1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkZ3JheS0zMDAgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAudGFibGUtZGFyayB7XG4gICAgICBjb2xvcjogaW5oZXJpdDtcblxuICAgICAgdGgsXG4gICAgICB0ZCxcbiAgICAgIHRoZWFkIHRoLFxuICAgICAgdGJvZHkgKyB0Ym9keSB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAudGFibGUgLnRoZWFkLWRhcmsgdGgge1xuICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICBib3JkZXItY29sb3I6ICR0YWJsZS1ib3JkZXItY29sb3I7XG4gICAgfVxuXG4gICAgLy8gQm9vdHN0cmFwIHNwZWNpZmljIGNoYW5nZXMgZW5kXG4gIH1cbn1cbiIsIi8qKlxuICogZWFzeW1kZSB2Mi4xOC4wXG4gKiBDb3B5cmlnaHQgSmVyb2VuIEFra2VybWFuXG4gKiBAbGluayBodHRwczovL2dpdGh1Yi5jb20vaW9uYXJ1L2Vhc3ktbWFya2Rvd24tZWRpdG9yXG4gKiBAbGljZW5zZSBNSVRcbiAqL1xuLkNvZGVNaXJyb3J7Zm9udC1mYW1pbHk6bW9ub3NwYWNlO2hlaWdodDozMDBweDtjb2xvcjojMDAwO2RpcmVjdGlvbjpsdHJ9LkNvZGVNaXJyb3ItbGluZXN7cGFkZGluZzo0cHggMH0uQ29kZU1pcnJvciBwcmUuQ29kZU1pcnJvci1saW5lLC5Db2RlTWlycm9yIHByZS5Db2RlTWlycm9yLWxpbmUtbGlrZXtwYWRkaW5nOjAgNHB4fS5Db2RlTWlycm9yLWd1dHRlci1maWxsZXIsLkNvZGVNaXJyb3Itc2Nyb2xsYmFyLWZpbGxlcntiYWNrZ3JvdW5kLWNvbG9yOiNmZmZ9LkNvZGVNaXJyb3ItZ3V0dGVyc3tib3JkZXItcmlnaHQ6MXB4IHNvbGlkICNkZGQ7YmFja2dyb3VuZC1jb2xvcjojZjdmN2Y3O3doaXRlLXNwYWNlOm5vd3JhcH0uQ29kZU1pcnJvci1saW5lbnVtYmVye3BhZGRpbmc6MCAzcHggMCA1cHg7bWluLXdpZHRoOjIwcHg7dGV4dC1hbGlnbjpyaWdodDtjb2xvcjojOTk5O3doaXRlLXNwYWNlOm5vd3JhcH0uQ29kZU1pcnJvci1ndXR0ZXJtYXJrZXJ7Y29sb3I6IzAwMH0uQ29kZU1pcnJvci1ndXR0ZXJtYXJrZXItc3VidGxle2NvbG9yOiM5OTl9LkNvZGVNaXJyb3ItY3Vyc29ye2JvcmRlci1sZWZ0OjFweCBzb2xpZCAjMDAwO2JvcmRlci1yaWdodDpub25lO3dpZHRoOjB9LkNvZGVNaXJyb3IgZGl2LkNvZGVNaXJyb3Itc2Vjb25kYXJ5Y3Vyc29ye2JvcmRlci1sZWZ0OjFweCBzb2xpZCBzaWx2ZXJ9LmNtLWZhdC1jdXJzb3IgLkNvZGVNaXJyb3ItY3Vyc29ye3dpZHRoOmF1dG87Ym9yZGVyOjAhaW1wb3J0YW50O2JhY2tncm91bmQ6IzdlN30uY20tZmF0LWN1cnNvciBkaXYuQ29kZU1pcnJvci1jdXJzb3Jze3otaW5kZXg6MX0uY20tZmF0LWN1cnNvciAuQ29kZU1pcnJvci1saW5lOjpzZWxlY3Rpb24sLmNtLWZhdC1jdXJzb3IgLkNvZGVNaXJyb3ItbGluZT5zcGFuOjpzZWxlY3Rpb24sLmNtLWZhdC1jdXJzb3IgLkNvZGVNaXJyb3ItbGluZT5zcGFuPnNwYW46OnNlbGVjdGlvbntiYWNrZ3JvdW5kOjAgMH0uY20tZmF0LWN1cnNvciAuQ29kZU1pcnJvci1saW5lOjotbW96LXNlbGVjdGlvbiwuY20tZmF0LWN1cnNvciAuQ29kZU1pcnJvci1saW5lPnNwYW46Oi1tb3otc2VsZWN0aW9uLC5jbS1mYXQtY3Vyc29yIC5Db2RlTWlycm9yLWxpbmU+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+IHRyID4gdGQgPiBkaXYuZGF0YVRhYmxlc19zaXppbmcge1xuICBoZWlnaHQ6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG59XG4uZGF0YVRhYmxlc193cmFwcGVyLm5vLWZvb3RlciAuZGF0YVRhYmxlc19zY3JvbGxCb2R5IHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICMxMTE7XG59XG4uZGF0YVRhYmxlc193cmFwcGVyLm5vLWZvb3RlciBkaXYuZGF0YVRhYmxlc19zY3JvbGxIZWFkIHRhYmxlLmRhdGFUYWJsZSxcbi5kYXRhVGFibGVzX3dyYXBwZXIubm8tZm9vdGVyIGRpdi5kYXRhVGFibGVzX3Njcm9sbEJvZHkgPiB0YWJsZSB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG59XG4uZGF0YVRhYmxlc193cmFwcGVyOmFmdGVyIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBkaXNwbGF5OiBibG9jaztcbiAgY29udGVudDogXCJcIjtcbiAgY2xlYXI6IGJvdGg7XG4gIGhlaWdodDogMDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmRhdGFUYWJsZXNfd3JhcHBlciAuZGF0YVRhYmxlc19pbmZvLFxuICAuZGF0YVRhYmxlc193cmFwcGVyIC5kYXRhVGFibGVzX3BhZ2luYXRlIHtcbiAgICBmbG9hdDogbm9uZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbiAgLmRhdGFUYWJsZXNfd3JhcHBlciAuZGF0YVRhYmxlc19wYWdpbmF0ZSB7XG4gICAgbWFyZ2luLXRvcDogMC41ZW07XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY0MHB4KSB7XG4gIC5kYXRhVGFibGVzX3dyYXBwZXIgLmRhdGFUYWJsZXNfbGVuZ3RoLFxuICAuZGF0YVRhYmxlc193cmFwcGVyIC5kYXRhVGFibGVzX2ZpbHRlciB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG4gIC5kYXRhVGFibGVzX3dyYXBwZXIgLmRhdGFUYWJsZXNfZmlsdGVyIHtcbiAgICBtYXJnaW4tdG9wOiAwLjVlbTtcbiAgfVxufVxuIiwiQGltcG9ydCB1cmwoJ2h0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzMj9mYW1pbHk9Tm90bytTYW5zOndnaHRANDAwOzcwMCZkaXNwbGF5PXN3YXAnKTtcbiRmb250LWhhbDogJ05vdG8gU2FucycsIHNhbnMtc2VyaWY7XG4kZm9udC1hcmlhbDogJ0FyaWFsJztcblxuLyoqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgQ09MT1JTXG4qKioqKioqKioqKioqKioqKioqKioqL1xuJHByaW1hcnktYmx1ZSA6ICMwMDAwNWM7XG4kcHJpbWFyeS1ibHVlLWhvdmVyIDogIzJDMUM5NztcbiRwcmltYXJ5LWJsdWUtZGlzYWJsZWQgOiAjQUNBOEM0O1xuJHByaW1hcnktYmx1ZS1saWdodCA6ICNlZGVjZjE7XG5cbiRwcmltYXJ5LWJsdWUxIDojMzM3QUI3O1xuJHByaW1hcnktYmx1ZTEtaG92ZXIgOiMwOTU3OUE7XG4kcHJpbWFyeS1ibHVlMS1kaXNhYmxlZCA6Izc1OUZDQztcblxuJHByaW1hcnktYmx1ZTIgOiNCOERDRkE7XG5cbiRwcmltYXJ5LWJsdWUzIDojOTBBNEI2O1xuJHByaW1hcnktYmx1ZTMtaG92ZXIgOiM2NDc1ODU7XG5cbiRwcmltYXJ5LW9yYW5nZTogI2ZmNDYwMDtcbiRwcmltYXJ5LW9yYW5nZS1ob3ZlcjogI0UyMzcwMDtcbiRwcmltYXJ5LW9yYW5nZS1kaXNhYmxlZDogI0ZFODE1ODtcbiRsaWdodC1vcmFuZ2U6ICNmZmVkZTY7XG4keGxpZ2h0LW9yYW5nZTogI2ZmZmRmZDtcblxuJHByaW1hcnktYnJvd246ICM4MjZCNkI7XG5cbiRzZWNvbmRhcnktZXJyb3IgOiAjQjk0QTQ4O1xuJHNlY29uZGFyeS1lcnJvci1ob3ZlciA6ICNCMzJFMkM7XG4kc2Vjb25kYXJ5LWVycm9yLWxpZ2h0IDogI0YxRDFENDtcbiRzZWNvbmRhcnktZXJyb3ItZXh0cmEtbGlnaHQgOiAjZjJkZWRlO1xuJHNlY29uZGFyeS1lcnJvci1iZyA6ICNmN2ViZWE7XG5cbiRzZWNvbmRhcnktc3VjY2VzcyA6ICM0Njg4NDc7XG4kc2Vjb25kYXJ5LXN1Y2Nlc3MtbGlnaHQgOiAjRDdFQkNFO1xuJHNlY29uZGFyeS1zdWNjZXNzLWV4dHJhLWxpZ2h0IDogI2RmZjBkODtcblxuJHNlY29uZGFyeS1pbmZvOiAjNDU3QUE1O1xuJHNlY29uZGFyeS1pbmZvLWxpZ2h0OiAjQ0NFOEY0O1xuXG4kc2Vjb25kYXJ5LXdhcm5pbmc6ICNBQThGNTI7XG4kc2Vjb25kYXJ5LXdhcm5pbmctbGlnaHQgOiNGOUYyQ0M7XG4kc2Vjb25kYXJ5LXdhcm5pbmctZXh0cmEtbGlnaHQgOiNmY2Y4ZTM7XG5cbiRwdXJwbGUtZGFya2VyOiAjNUU1QjcyO1xuJHB1cnBsZS1kYXJrIDogIzc1NzA5NDtcbiRwdXJwbGU6ICM4NjgzOUQ7XG4kcHVycGxlLWxpZ2h0IDogIzc5NzY3NjtcbiRwdXJwbGUtZXh0cmEtbGlnaHQ6ICNFRkVFRjM7XG5cbiRkYXJrYmx1ZTogIzBjMDUzYTtcblxuJHByaXZpbGVnZS1idXR0b246ICM0OTU1NzI7XG4kdG9vbHMtc29ydDogIzEyNEI4OTtcbiRib3gtc2hhZG93OiAjMDAwMDAwMjk7XG4kc2hlYWRlcjogI0U5RURGMDtcbiRob3ZlcjogI0VFRjJGNjtcblxuLyogZWNoZWxsZSBkZSBncmlzICovXG5cbiRibGFjazogIzAwMDAwMDtcbiRncmF5LTM3OiAjMzczNzM3O1xuJGdyYXktNjQ6ICM2NDY0NjQ7XG4kZ3JheS03MDogIzcwNzA3MDtcbiRncmF5LTk3OiAjOTc5Nzk3O1xuJGdyYXktYTI6ICNhMmEyYTI7XG4kZ3JheS1iNTogI2I1YjViNTtcbiRncmF5LWI5OiAjYjliOWI5O1xuJGdyYXktYzI6ICNjMmMyYzI7XG4kZ3JheS1jNjogI2M2YzZjNjtcbiRncmF5LWM4OiAjYzhjOGM4O1xuJGdyYXktY2E6ICNjYWNhY2E7XG4kZ3JheS1jZTogI2NlY2VjZTtcbiRncmF5LWRlOiAjZGVkZWRlO1xuJGdyYXktZTg6ICNlOGU4ZTg7XG4kZ3JheS1lNjogI2U2ZTZlNjtcbiRncmF5LWVjOiAjZWNlY2VjO1xuJGdyYXktZWU6ICNlZWVlZWU7XG4kZ3JheS1lZjogI2VmZWZlZjtcbiRncmF5LWYyOiAjZjJmMmYyO1xuJGdyYXktZjQ6ICNmNGY0ZjQ7XG4kZ3JheS1mNTogI2Y1ZjVmNTtcbiRncmF5LWY2OiAjZjZmNmY2O1xuJGdyYXktZmE6ICNmYWZhZmE7XG4kd2hpdGU6ICNmZmZmZmY7XG5cbi8qIFNoZXJwYSAqL1xuJGdyZWVuLXNoZXJwYSA6ICMyMUE2NkY7XG4kZ3JlZW4tc2hlcnBhLWJnIDogI2Y4ZmNmYjtcblxuJHVua25vd24tc2hlcnBhIDogIzZiNzE2ZjtcblxuLyogT1JDSUQgKi9cbiRncmVlbi1vcmNpZCA6ICNhNmNlMzk7XG5cbi8qIGFyWGl2ICovXG4kcmVkLWFyeGl2OiAjYjMxYjFiO1xuXG4kcmVkLWNvbnRhY3Q6ICNkMjM1MmM7XG4kYmx1ZS1mYWNlYm9vazogIzJDNDA4RDtcbiRibHVlLXR3aXR0ZXI6ICM0Mjk5RUQ7XG4kYmx1ZS1saW5rZWRpbjogIzBlNzBhMTtcblxuXG5cbi8qKioqKioqKioqKioqKioqKioqKioqXG4gICBUQUlMTEUgREVTIEZPTlRTXG4qKioqKioqKioqKioqKioqKioqKioqL1xuJHNpemUtbWludXM6IDAuNjg3NXJlbSA7XG4kc2l6ZS14c21hbGw6IDAuN3JlbSA7XG4kc2l6ZS1zbWFsbDogMC44NXJlbTtcbiRzaXplLXJlZ3VsYXI6IDAuOXJlbSA7XG4kc2l6ZS1sYXJnZTogMS4xNXJlbSA7XG4kc2l6ZS14bDogMS41cmVtIDtcbiRzaXplLXh4bDogMi4xMjVyZW0gO1xuJHNpemUteHh4bDogMi41cmVtIDtcbiRzaXplLWJpZzogM3JlbTtcbiRzaXplLWV4dHJhOiAzLjVyZW07IiwiLyoqKioqKioqKioqKioqKioqKioqKipcbiAgIEZPTlQgQ09MT1IgQU5EIFdFSUdIVFxuKioqKioqKioqKioqKioqKioqKioqKi9cbi5jb2xvci1tYWpvci1jb2xvciwgLmNvbG9yLW1ham9yLWNvbG9yIGEge1xuICBjb2xvcjogJHByaW1hcnktYmx1ZSAhaW1wb3J0YW50O1xufVxuLmNvbG9yLXNoZWFkZXIge1xuICBjb2xvcjogJHNoZWFkZXI7XG59XG4uY29sb3Itd2hpdGV7XG4gIGNvbG9yOiAkd2hpdGU7XG59XG4uY29sb3ItYmxhY2t7XG4gIGNvbG9yOiAkYmxhY2s7XG59XG4uaGFsLWljb24uZGlzYWJsZWQsIC5oYWwtaWNvbi5kaXNhYmxlZDpiZWZvcmV7XG4gIGNvbG9yOiAkZ3JheS1jYTtcbn1cbi5yZWQsIC5yZWQ6YmVmb3Jle1xuICBjb2xvcjogJHNlY29uZGFyeS1lcnJvciAhaW1wb3J0YW50O1xufVxuLmdyZWVuLCAuZ3JlZW46YmVmb3Jle1xuICBjb2xvcjogJHNlY29uZGFyeS1zdWNjZXNzICFpbXBvcnRhbnQ7XG59XG4uY29sb3Itb3JjaWR7XG4gIGNvbG9yOiAkZ3JlZW4tb3JjaWQ7XG59XG5cbi5kZXBvc2l0LXR5cGUge1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cbi8qIHR5cGUgZGVwb3NpdCAqL1xuLmRlcG9zaXQtc3RhdHVzIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG4uZGVwb3NpdC1zdGF0dXMuc3RhdHVzLTExe1xuICBjb2xvcjogJHNlY29uZGFyeS1zdWNjZXNzO1xufVxuLmRlcG9zaXQtc3RhdHVzLnN0YXR1cy0wLCAuZGVwb3NpdC1zdGF0dXMuc3RhdHVzLTksLmRlcG9zaXQtc3RhdHVzLnN0YXR1cy0xMCx7XG4gIGNvbG9yOiAkcHJpbWFyeS1vcmFuZ2U7XG59XG4uZGVwb3NpdC1zdGF0dXMuc3RhdHVzLTF7XG4gIGNvbG9yOiAkcHJpbWFyeS1ibHVlMTtcbn1cbi5kZXBvc2l0LXN0YXR1cy5zdGF0dXMtMntcbiAgY29sb3I6ICRwcmltYXJ5LW9yYW5nZTtcbn1cblxuLnRvb2xzLWNvbG9ye1xuICBjb2xvcjogJHRvb2xzLXNvcnQ7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBmb250LXNpemU6ICRzaXplLXNtYWxsO1xufVxuLnNlY29uZC1jb2xvcntcbiAgY29sb3I6ICRwcmltYXJ5LWJsdWUxICFpbXBvcnRhbnQ7XG59XG4uaWNvbi1sYXJnZSwgLnRleHQtbGFyZ2Uge1xuICBmb250LXNpemU6ICRzaXplLWxhcmdlO1xufVxuLnNpemUtcmVndWxhciB7XG4gIGZvbnQtc2l6ZTogJHNpemUtcmVndWxhciAhaW1wb3J0YW50O1xufVxuLnRleHQtYmlnIHtcbiAgZm9udC1zaXplOiAkc2l6ZS1iaWc7XG59XG4udGV4dC14bHtcbiAgZm9udC1zaXplOiAkc2l6ZS14bDtcbn1cbi50ZXh0LXh4bHtcbiAgZm9udC1zaXplOiAkc2l6ZS14eGw7XG59XG4udGV4dC14eHhsIHtcbiAgZm9udC1zaXplOiAkc2l6ZS14eHhsO1xufVxuLnRleHQtc21hbGx7XG4gIGZvbnQtc2l6ZTogJHNpemUtc21hbGw7XG59XG4udGV4dC14c21hbGx7XG4gIGZvbnQtc2l6ZTogJHNpemUteHNtYWxsO1xufVxuLnRleHQtb25le1xuICBmb250LXNpemU6IDFyZW07XG59XG4uc3Ryb25ne1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cbi5sZWZ0LXRleHR7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG4uY2VudGVyLXRleHR7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi5nby1iYWNre1xuICBjb2xvcjogJHByaW1hcnktYmx1ZTE7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuLmljb24ge1xuICB3aWR0aDogMjBweDtcbn1cbi5yb3VuZC1pY29ue1xuICBmb250LXNpemU6IDJyZW07XG4gIGNvbG9yOiAkd2hpdGU7XG4gIGJvcmRlci1yYWRpdXM6IDE4MHB4O1xuICBwYWRkaW5nOiAzMHB4O1xuICBtYXJnaW46IGF1dG87XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqXG4gICAgQk9SREVSIEFORCBMSVNUXG4qKioqKioqKioqKioqKioqKioqKioqL1xuLmJvcmRlci1kYXJrIHtcbiAgYm9yZGVyLWNvbG9yOiAkZ3JheS03MCAhaW1wb3J0YW50O1xufVxuLmJvcmRlci0ze1xuICBib3JkZXI6IDNweCBzb2xpZCAkZ3JheS1lODtcbn1cbi5ib3JkZXItYnRte1xuICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRncmF5LWU4O1xufVxuLm5vLXN0eWxlLWxpc3R7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqXG4gICBCQUNLR1JPVU5ELUNPTE9SXG4qKioqKioqKioqKioqKioqKioqKioqL1xuLnZhbGlkLWJnLCAuc3VjY2Vzcy1iZ3tcbiAgYmFja2dyb3VuZC1jb2xvcjogJHNlY29uZGFyeS1zdWNjZXNzO1xufVxuLndhcm5pbmctYmcsIC5kYW5nZXItYmd7XG4gIGJhY2tncm91bmQtY29sb3I6ICRzZWNvbmRhcnktZXJyb3I7XG59XG4uYmdjb2xvci1zZWNvbmQsIGluZm8tYmd7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWJsdWUxICFpbXBvcnRhbnQ7XG59XG4udWktbWVudSBhLnVpLW1lbnUtaXRlbS13cmFwcGVye1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi51aS1hdXRvY29tcGxldGUudWktZnJvbnQuY29sb3JMaXN0e1xuICAudmFsaWQsIC5vbGQsIC5pbmNvbWluZyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogMCAwIDVweCAwO1xuICAgIGRse1xuICAgICAgbWFyZ2luOiAwO1xuICAgIH1cbiAgfVxuXG4gIC52YWxpZCwgLnZhbGlkIGRse1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRzZWNvbmRhcnktc3VjY2Vzcy1leHRyYS1saWdodDtcbiAgfVxuICAub2xkLCAub2xkIGRse1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRzZWNvbmRhcnktd2FybmluZy1leHRyYS1saWdodDtcbiAgfVxuICAuaW5jb21pbmcsIC5pbmNvbWluZyBkbHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2Vjb25kYXJ5LWVycm9yLWV4dHJhLWxpZ2h0O1xuXG4gIH1cbiAgLnVpLW1lbnUtaXRlbXtcbiAgICBwYWRkaW5nOiAwIDAgNHB4IDA7XG4gIH1cblxufVxuLnVpLWF1dG9jb21wbGV0ZS51aS1mcm9udC5jb2xvckxpc3QgbGkudWktbWVudS1pdGVte1xuICAmOmhvdmVye1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuXG4vKioqKioqKioqKioqKioqKioqKioqKlxuICAgUEFERElORyBFVCBNQVJHSU5cbioqKioqKioqKioqKioqKioqKioqKiovXG4ucGctNTB7XG4gIHBhZGRpbmc6IDMwcHggNTBweCA2MHB4IDUwcHg7XG59XG4ucGctMjB7XG4gIHBhZGRpbmc6IDIwcHggMzBweDtcbn1cbi5jZW50ZXIge1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxuLm10LTYwe1xuICBtYXJnaW4tdG9wOiA2MHB4O1xuICBtYXJnaW4tYm90dG9tOiAxNXB4O1xufVxuLmJsb2Nre1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi5tLWRlcG9zaXR7XG4gIG1hcmdpbjogNzVweCA4NXB4IDEwcHggODVweDtcbn1cbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihsZyl7XG4gIC5tLWRlcG9zaXR7XG4gICAgbWFyZ2luOiA1MHB4IDIwcHggMTBweCAyMHB4O1xuICB9XG59XG5cblxuLmljb24tZHJhZyB7XG4gIGN1cnNvcjogbW92ZTtcbn0iLCIuYnRuLWhhbCB7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJvcmRlcjogbm9uZTtcbiAgdHJhbnNpdGlvbjogMC4zcztcbn1cblxuLmJ0bi1saW5rIHtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgYm9yZGVyOiBub25lO1xuICBvdXRsaW5lOiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5idG4tcHJpbWFyeS1vcmFuZ2Uge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1vcmFuZ2U7XG4gIGNvbG9yOiAkd2hpdGU7XG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LW9yYW5nZS1ob3ZlcjtcbiAgfVxuICAmOmRpc2FibGVkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1vcmFuZ2UtZGlzYWJsZWQ7XG4gIH1cbn1cblxuLmJ0bi1wcmltYXJ5LWJsdWUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1ibHVlMTtcbiAgY29sb3I6ICR3aGl0ZTtcbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktYmx1ZTEtaG92ZXI7XG4gICAgY29sb3I6JHdoaXRlO1xuICB9XG4gICY6ZGlzYWJsZWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWJsdWUxLWRpc2FibGVkIDtcbiAgICBjb2xvcjokd2hpdGU7XG4gIH1cbn1cblxuLmJ0bi1wcmltYXJ5LWRhcmtibHVlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktYmx1ZTtcbiAgY29sb3I6ICR3aGl0ZTtcbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktYmx1ZS1ob3ZlcjtcbiAgICBjb2xvcjogJHdoaXRlXG4gIH1cbiAgJjpkaXNhYmxlZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktYmx1ZS1kaXNhYmxlZDtcbiAgICBjb2xvcjogJHdoaXRlXG4gIH1cbn1cblxuLmJ0bi1wcmltYXJ5LXB1cnBsZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwdXJwbGUtZGFya2VyO1xuICBjb2xvcjogJHdoaXRlO1xuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHVycGxlLWRhcms7XG4gICAgY29sb3I6ICR3aGl0ZVxuICB9XG59XG5cbi5idG4tcHJpbWFyeS1saWdodGJsdWUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1ibHVlMztcbiAgY29sb3I6ICR3aGl0ZTtcbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktYmx1ZTMtaG92ZXI7XG4gICAgY29sb3I6JHdoaXRlO1xuICB9XG59XG5cbi5idG4tc2Vjb25kYXJ5LWJsdWUge1xuICBjb2xvcjogJHByaW1hcnktYmx1ZTE7XG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiAkcHJpbWFyeS1ibHVlMztcbiAgfVxufVxuXG4uYnRuLXNlY29uZGFyeS1ncmV5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGdyYXktZTg7XG4gIGNvbG9yOiAkYmxhY2s7XG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRncmF5LWI5O1xuICB9XG59XG5cbi5idG4taWNvbiB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogbm9uZTtcbiAgb3V0bGluZTogbm9uZSAhaW1wb3J0YW50O1xuICBwYWRkaW5nOjZweCA5cHggNHB4O1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRncmF5LWU4O1xuICB9XG59XG5cbi5idG4tc2hlcnBhIHtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgYm9yZGVyOiAxcHggc29saWQgJGdyZWVuLXNoZXJwYTtcbiAgY29sb3I6ICRncmVlbi1zaGVycGE7XG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRncmVlbi1zaGVycGEtYmdcbiAgfVxuXG59XG5cbi5zaGVycGEtdW5rbm93bntcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgYm9yZGVyOiAxcHggc29saWQgJHVua25vd24tc2hlcnBhO1xuICBjb2xvcjogJHVua25vd24tc2hlcnBhO1xufVxuXG4uYnRuLW9yY2lkIHtcbiAgYm9yZGVyOiBzb2xpZCAxcHggJGdyYXktZTggO1xuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xuICBwYWRkaW5nOiA1cHg7XG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRncmF5LWU4O1xuICB9XG59XG5cbi5idG4tZGVmYXVsdCB7XG4gIGNvbG9yOiAjMzMzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBib3JkZXItY29sb3I6ICNjY2M7XG59XG4uYnRuLW1vcmUge1xuICBwYWRkaW5nLWxlZnQ6IDVweDtcbiAgcGFkZGluZy1yaWdodDogNXB4O1xufVxuXG4uYnRuLWFjdGlvbiB7XG4gIHBhZGRpbmc6IDJweCAwO1xufVxuXG4uYnRuLW5vcmVuZGVyIHtcbiAgYm9yZGVyOiBub25lO1xuICBjb2xvcjogJHByaW1hcnktYmx1ZTE7XG59XG5cbi5idG4tY3YtZXhwb3J0IHtcbiAgcGFkZGluZzogMHB4IDEycHg7XG59IiwiQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnaWNvbW9vbic7XG4gIHNyYzogIHVybCgnL2Fzc2V0cy9mb250cy9pY29tb29uLmVvdD9raXpsaGonKTtcbiAgc3JjOiAgdXJsKCcvYXNzZXRzL2ZvbnRzL2ljb21vb24uZW90P2tpemxoaiNpZWZpeCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSxcbiAgdXJsKCcvYXNzZXRzL2ZvbnRzL2ljb21vb24udHRmP2tpemxoaicpIGZvcm1hdCgndHJ1ZXR5cGUnKSxcbiAgdXJsKCcvYXNzZXRzL2ZvbnRzL2ljb21vb24ud29mZj9raXpsaGonKSBmb3JtYXQoJ3dvZmYnKSxcbiAgdXJsKCcvYXNzZXRzL2ZvbnRzL2ljb21vb24uc3ZnP2tpemxoaiNpY29tb29uJykgZm9ybWF0KCdzdmcnKTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LWRpc3BsYXk6IGJsb2NrO1xufVxuW2NsYXNzXj1cImljb24tXCJdLCBbY2xhc3MqPVwiIGljb24tXCJdLCBbY2xhc3NePVwidWktaWNvbi1cIl0sIFtjbGFzcyo9XCIgdWktaWNvbi1cIl0sIC8qW2NsYXNzXj1cImZhLVwiXSwgW2NsYXNzKj1cIiBmYS1cIl0qLyB7XG4gIC8qIHVzZSAhaW1wb3J0YW50IHRvIHByZXZlbnQgaXNzdWVzIHdpdGggYnJvd3NlciBleHRlbnNpb25zIHRoYXQgY2hhbmdlIGZvbnRzICovXG4gIGZvbnQtZmFtaWx5OiAnaWNvbW9vbicgIWltcG9ydGFudDtcbiAgc3BlYWs6IG5ldmVyO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtdmFyaWFudDogbm9ybWFsO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgbGluZS1oZWlnaHQ6IDE7XG5cbiAgLyogQmV0dGVyIEZvbnQgUmVuZGVyaW5nID09PT09PT09PT09ICovXG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xufVxuXG4uaWNvbi1hY2FkZW1pYTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk4ZlwiO1xufVxuLmljb24teDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk4YVwiO1xufVxuLmljb24tbGlua2VkaW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5OTBcIjtcbn1cbi5pY29uLXR3aXR0ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5OTFcIjtcbn1cbi5pY29uLXJlc2VhcmNoZ2F0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk5OFwiO1xufVxuXG4uaWNvbi10ZXh0LWNvbG9yOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTkyXCI7XG59XG4uaWNvbi11c2VyczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk5M1wiO1xufVxuLmljb24tdHJhbnNsYXRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTk0XCI7XG59XG4uaWNvbi1iaWVuX2NvbW11bjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk5NVwiO1xufVxuLmljb24tYXJjaGl2ZXNfc2VydmljZXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5OTZcIjtcbn1cbi5pY29uLXJheW9ubmVtZW50X2ludGVybmF0aW9uYWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5OTdcIjtcbn1cbi5pY29uLWNvbW11bmF1dGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5OThcIjtcbn1cbi5pY29uLWlkaGFsIC5wYXRoMTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk5OVwiO1xuICBjb2xvcjogcmdiKDAsIDAsIDApO1xufVxuLmljb24taWRoYWwgLnBhdGgyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTlhXCI7XG4gIG1hcmdpbi1sZWZ0OiAtMWVtO1xuICBjb2xvcjogcmdiKDI1NSwgMjU1LCAyNTUpO1xufVxuLmljb24taWRoYWwgLnBhdGgzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTliXCI7XG4gIG1hcmdpbi1sZWZ0OiAtMWVtO1xuICBjb2xvcjogcmdiKDI1NSwgMjU1LCAyNTUpO1xufVxuLmljb24tZW52ZWxvcGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5OWNcIjtcbn1cbi5pY29uLW5vdGljZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk4YlwiO1xufVxuLmljb24tb3Blbi1hY2Nlc3M6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MGZcIjtcbn1cbi5pY29uLWhhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk4N1wiO1xufVxuLmljb24tcGllLWNoYXJ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTg4XCI7XG59XG4uaWNvbi1ydWJiZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5ODlcIjtcbn1cbi5pY29uLXVzZXJzMTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk2YVwiO1xufVxuLmljb24tdXBsb2FkXzE6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NmJcIjtcbn1cbi5pY29uLXRyYW5zZmVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTZjXCI7XG59XG4uaWNvbi13ZWJzaXRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTZkXCI7XG59XG4uaWNvbi1zYXZlMTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk2ZVwiO1xufVxuLmljb24taW5pdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk2ZlwiO1xufVxuLmljb24tcGx1czpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk3MFwiO1xufVxuLmljb24tcGx1c19zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NzFcIjtcbn1cbi5pY29uLXBhcmFtczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk3MlwiO1xufVxuLmljb24tb3BlbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk3M1wiO1xufVxuLmljb24tb3Blbl9maWxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTc0XCI7XG59XG4uaWNvbi10b29sczE6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NzVcIjtcbn1cbi5pY29uLW5vdGljZTE6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NzZcIjtcbn1cbi5pY29uLXBvcnRhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk3N1wiO1xufVxuLmljb24tbWVzc2FnZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk3OFwiO1xufVxuLmljb24tc3RydWN0dXJlczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk3OVwiO1xufVxuLmljb24tdGVtcGxhdGVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTdhXCI7XG59XG4uaWNvbi1jb2xsZWN0aW9uczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk3YlwiO1xufVxuLmljb24tbWVudV9jbG9zZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk3Y1wiO1xufVxuLmljb24tbWVudV9vcGVuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTdkXCI7XG59XG4uaWNvbi1tb2RlcmF0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk3ZVwiO1xufVxuLmljb24tbGlnbmVfYWN0aW9uczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk3ZlwiO1xufVxuLmljb24taW5mbzE6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5ODBcIjtcbn1cbi5pY29uLWhpc3Rvcnk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5ODFcIjtcbn1cbi5pY29uLWhpZXJhcmNoaWNhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk4MlwiO1xufVxuLmljb24tbWVyZ2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5ODNcIjtcbn1cbi5pY29uLWNsb3NlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTg0XCI7XG59XG4uaWNvbi1kaXJlY3Rvcnk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5ODVcIjtcbn1cbi5pY29uLWZpbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NjVcIjtcbn1cbi5pY29uLWRlcG9zaXRzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTY2XCI7XG59XG4uaWNvbi1jb3B5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTY3XCI7XG59XG4uaWNvbi13YXJuaW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTY4XCI7XG59XG4uaWNvbi1hcHBseTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk2OVwiO1xufVxuLmljb24tb3JjaWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NjRcIjtcbn1cbi5pY29uLWFjdGlvbnM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NjNcIjtcbn1cbi5pY29uLWxlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NjFcIjtcbn1cbi5pY29uLXRvcDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk4ZFwiO1xufVxuLmljb24tYm90dG9tOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOThlXCI7XG59XG4uaWNvbi1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk2MlwiO1xufVxuLmljb24tdmlzaWJpbGl0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwMFwiO1xufVxuLmljb24tdXBsb2FkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTAxXCI7XG59XG4uaWNvbi1kcm9wX2Rvd246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MDJcIjtcbn1cbi5pY29uLURPSTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwM1wiO1xufVxuLmljb24tYXJyb3dfdG9wOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTA0XCI7XG59XG4uaWNvbi1hcnJvd19kb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOThjXCI7XG59XG4uaWNvbi1hcnJvd19sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTA1XCI7XG59XG4uaWNvbi1hcmNoaXZhZ2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MDZcIjtcbn1cbi5pY29uLWFkZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwN1wiO1xufVxuLmljb24tYWN0aXZpdGVfbWlzZWFqb3V0X2RlcG90OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTA4XCI7XG59XG4uaWNvbi1BY3Rpdml0ZV9ham91dF9iaWJsaW86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MDlcIjtcbn1cbi5pY29uLXR5cGRvY192aWRlbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwYVwiO1xufVxuLmljb24tdHlwZG9jX3NvZnR3YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTBiXCI7XG59XG4uaWNvbi1tb3JlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTBjXCI7XG59XG4uaWNvbi10eXBkb2NfbWVtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTBkXCI7XG59XG4uaWNvbi10eXBkb2Nfc29uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTBlXCI7XG59XG4uaWNvbi10eXBkb2NfcHJlc2NvbmY6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MTBcIjtcbn1cbi5pY29uLWJvb2ttYXJrX2ZpbGw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MTFcIjtcbn1cbi5pY29uLWJvb2ttYXJrX2ZpbGwyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTg2XCI7XG59XG4uaWNvbi1yZXRvdXJfbW9kZXJhdGlvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkxMlwiO1xufVxuLmljb24tZGVsZXRlX2Zyb21fY29sbGVjdGlvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkxM1wiO1xufVxuLmljb24tZG9jdW1lbnRhdGlvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkxNFwiO1xufVxuLmljb24tZHJhZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkxNVwiO1xufVxuLmljb24tcGVyc29uX2FkZGVkX25vdGlmaWNhdGlvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkxNlwiO1xufVxuLmljb24tc2F2ZWRfc2VhcmNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTE3XCI7XG59XG4uaWNvbi1jYWxlbmRhcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkxOFwiO1xufVxuLmljb24tY2hhbmdlX3Bhc3N3b3JkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTE5XCI7XG59XG4uaWNvbi1jaHJvbm86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MWFcIjtcbn1cbi5pY29uLWNvbnN1bHRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkxYlwiO1xufVxuLmljb24tZGVsZXRlX2hpc3Rvcnk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MWNcIjtcbn1cbi5pY29uLWRlbWFuZGVyX3Byb3ByaWV0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkxZFwiO1xufVxuLmljb24tZW5fbW9kZXJhdGlvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkxZVwiO1xufVxuLmljb24tcHJldmlzdWFsaXNlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkxZlwiO1xufVxuLmljb24tc2F2ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkyMFwiO1xufVxuLmljb24tc2Nyb2xsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTIxXCI7XG59XG4uaWNvbi10eXBkb2NfaGRyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTIyXCI7XG59XG4uaWNvbi10eXBkb2NfYXJ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTIzXCI7XG59XG4uaWNvbi10eXBkb2NfY29tbTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkyNFwiO1xufVxuLmljb24tdHlwZG9jX2NvdXY6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MjVcIjtcbn1cbi5pY29uLXR5cGRvY19kYXRhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTI2XCI7XG59XG4uaWNvbi10eXBkb2NfZG91djpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkyN1wiO1xufVxuLmljb24tdHlwZG9jX2ltZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkyOFwiO1xufVxuLmljb24tdHlwZG9jX2xlY3R1cmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MjlcIjtcbn1cbi5pY29uLXR5cGRvY19tYXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MmFcIjtcbn1cbi5pY29uLXR5cGRvY19vdGhlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkyYlwiO1xufVxuLmljb24tdHlwZG9jX291djpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkyY1wiO1xufVxuLmljb24tdHlwZG9jX3BhdGVudDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkyZFwiO1xufVxuLmljb24tdHlwZG9jX3Bvc3RlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkyZVwiO1xufVxuLmljb24tdHlwZG9jX3JlcG9ydDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkyZlwiO1xufVxuLmljb24tdHlwZG9jX3RoZXNlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTMwXCI7XG59XG4uaWNvbi10eXBkb2NfdW5kZWZpbmVkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTMxXCI7XG59XG4uaWNvbi1zdWJkb21haW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTMyXCI7XG59XG4uaWNvbi1mb250X3NtYWxsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTMzXCI7XG59XG4uaWNvbi1leGl0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTM0XCI7XG59XG4uaWNvbi1mb250X2JpZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkzNVwiO1xufVxuLmljb24tcmVmcmVzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkzNlwiO1xufVxuLmljb24tc29ydDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkzN1wiO1xufVxuLmljb24tdG9vbHM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MzhcIjtcbn1cbi5pY29uLXZpc3VhbGl6ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkzOVwiO1xufVxuLmljb24tZG93bmxvYWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5M2FcIjtcbn1cbi5pY29uLWZhY2Vib29rOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTNiXCI7XG59XG4uaWNvbi1pbmZvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTNjXCI7XG59XG4uaWNvbi1jaGVjazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkzZFwiO1xufVxuLmljb24taW5zdGl0dXRpb246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5M2VcIjtcbn1cbi5pY29uLW5vdF92YWxpZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkzZlwiO1xufVxuLmljb24tcnNzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTQwXCI7XG59XG4uaWNvbi12YWxpZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk0MVwiO1xufVxuLmljb24tYWRkX2ZpbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NDJcIjtcbn1cbi5pY29uLWRlbGV0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk0M1wiO1xufVxuLmljb24tZG9jdW1lbnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NDRcIjtcbn1cbi5pY29uLWV4cG9ydDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk0NVwiO1xufVxuLmljb24tbG9pOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTQ2XCI7XG59XG4uaWNvbi1ub3RpY2Vfc21hbGw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NDdcIjtcbn1cbi5pY29uLW5vdGlmaWNhdGlvbnM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NDhcIjtcbn1cbi5pY29uLW9wZW5fcGFnZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk0OVwiO1xufVxuLmljb24tc2hhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NGFcIjtcbn1cbi5pY29uLWFkZF9jb2xsZWN0aW9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTRiXCI7XG59XG4uaWNvbi1lZGl0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTRjXCI7XG59XG4uaWNvbi1maWx0ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NGRcIjtcbn1cbi5pY29uLWhpZGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NGVcIjtcbn1cbi5pY29uLXN0YXJfZmlsbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk0ZlwiO1xufVxuLmljb24tc3RhcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk1MFwiO1xufVxuLmljb24tYWRkX3VzZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NTFcIjtcbn1cbi5pY29uLWJvb2ttYXJrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTUyXCI7XG59XG4uaWNvbi1lbWJhcmdvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTUzXCI7XG59XG4uaWNvbi1saW5rOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTU0XCI7XG59XG4uaWNvbi1sb2dvdXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NTVcIjtcbn1cbi5pY29uLW5vdGljZTI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NTZcIjtcbn1cbi5pY29uLXBsdXJpZGlzY2lwbGluYXJpdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NTdcIjtcbn1cbi5pY29uLXNlYXJjaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk1OFwiO1xufVxuLmljb24tdXNlX21vZGVsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTU5XCI7XG59XG4uaWNvbi1hZG1pbmlzdHJhdGlvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk1YVwiO1xufVxuLmljb24tZGFzaGJvYXJkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTViXCI7XG59XG4uaWNvbi1kZXBvdHM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NWNcIjtcbn1cbi5pY29uLWxpYnJhcnk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NWRcIjtcbn1cbi5pY29uLXByb2ZpbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk1ZVwiO1xufVxuLmljb24tcmVzdW1lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTVmXCI7XG59XG4uaWNvbi12YWxvcmlzYXRpb246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NjBcIjtcbn0iLCJcbi5pY29uLWRhc2hib2FyZC1pbmRleDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk1YlwiO1xufVxuXG4uaWNvbi11c2VyLWluZGV4OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTVlXCI7XG59XG5cbi5pY29uLXN1Z2dlc3QtaW5kZXg6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NDJcIjtcbn1cblxuLmljb24tdXNlci1pZGhhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk4N1wiO1xufVxuXG4uaWNvbi11c2VyLWN2OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTVmXCI7XG59XG5cbi5pY29uLXVzZXItc3VibWlzc2lvbnM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NWNcIjtcbn1cblxuLmljb24tdXNlci1saWJyYXJ5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTVkXCI7XG59XG5cbi5pY29uLXVzZXItZG9jb3duZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NGFcIjtcbn1cblxuLmljb24tdXNlci1vd25lcnNoaXAtcmVxdWVzdHM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MWRcIjtcbn1cblxuLmljb24tZXh0ZXJuYWwtZG9jOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTY0XCI7XG4gIGZvbnQtc2l6ZTogMTZweDtcbn1cblxuLmljb24tYWN0aW9ucyB7XG4gIGZvbnQtc2l6ZTogJHNpemUtbGFyZ2U7XG4gICYueHhsIHtcbiAgICBmb250LXNpemU6ICRzaXplLXh4bDtcbiAgfVxufVxuXG5cbi5pY29uLXVzZXItY29sbGVjdGlvbnM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5N2JcIjtcbn1cblxuLmljb24tY29sbGVjdGlvbi1saXN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTcyXCI7XG59XG4uaWNvbi13ZWJzaXRlLWluZGV4OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTZkXCI7XG59XG4uaWNvbi1zdGF0LWRhc2hib2FyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk4OFwiO1xufVxuLmljb24tcGF0cm9sLWluZGV4OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTdlXCI7XG59XG4uaWNvbi1tb2RlcmF0ZS1pbmRleDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk3ZVwiO1xufVxuLmljb24tdmFsaWRhdGUtaW5kZXg6YmVmb3JlIHtcbiAgIGNvbnRlbnQ6IFwiXFxlOTdlXCI7XG4gfVxuLmljb24tYWRtaW5pc3RyYXRlLWluZGV4OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTc1XCI7XG59XG5cbi51aS1pY29uLWNpcmNsZS10cmlhbmdsZS13OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTYxXCI7XG59XG4udWktaWNvbi1jaXJjbGUtdHJpYW5nbGUtZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk2MlwiO1xufVxuXG4uaWNvbi1tdXNpYyB7XG4gIGNvbnRlbnQ6IFwiXFxlOTBlXCI7XG59XG4uaWNvbi1maWxtIHtcbiAgY29udGVudDogXCJcXGU5MGFcIjtcbn1cbi5pY29uLXBpY3R1cmUge1xuICBjb250ZW50OiBcIlxcZTkyOFwiO1xufVxuLmZhLWNoZWNrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTNkXCI7XG59XG4uZmEtdGltZXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MzRcIjtcbn1cblxuLmljb24tdHlwZG9jX3Byb2NlZWRpbmdzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTI3XCI7XG59XG5cbi5pY29uLXR5cGRvY19ub3RpY2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NDdcIjtcbn1cblxuLmljb24tdHlwZG9jX2Jsb2c6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NmRcIjtcbn1cblxuLmljb24tdHlwZG9jX2lzc3VlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTEwXCI7XG59XG5cbi5pY29uLXR5cGRvY190cmFkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTk0XCI7XG59XG4iLCIvKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICAgIFNUWUxFXG4qKioqKioqKioqKioqKioqKioqKioqKioqL1xuLnR5cGRvYywgLmRvYy1pZGVudGlmaWVyLCAuZG9jLWFyeGl2LCAuYnJvd3NlLWZpbHRlciwgLmRvYy1vcmNpZHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHB1cnBsZTtcbiAgcGFkZGluZzogNXB4IDhweDtcbiAgY29sb3I6ICR3aGl0ZTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGZvbnQtc2l6ZTogJHNpemUtc21hbGw7XG4gIGxpbmUtaGVpZ2h0OiAyLjU7XG4gIGEsIGE6aG92ZXIsIGE6YWN0aXZlIHtcbiAgICBjb2xvcjogJHdoaXRlO1xuICB9XG59XG4uZG9jLWlkZW50aWZpZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHVycGxlLWRhcmtlcjtcbn1cbi5kb2MtYXJ4aXYge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcmVkLWFyeGl2O1xufVxuLmRvYy1vcmNpZCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRncmVlbi1vcmNpZDtcbiAgY29sb3I6ICRncmVlbi1vcmNpZDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xufVxuXG4uc2VjdGlvbi1zaGFkb3d7XG4gIGJveC1zaGFkb3c6IDBweCAzcHggNnB4ICRib3gtc2hhZG93O1xuICBtYXJnaW4tYm90dG9tOiAxOHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgUFJJTUFSWSBCVVRUT05TXG4qKioqKioqKioqKioqKioqKioqKioqKioqL1xuJWRlZmF1bHQtYnV0dG9ue1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGNvbG9yOiAkd2hpdGU7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBmb250LXNpemU6ICRzaXplLWxhcmdlO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYXtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogJHdoaXRlO1xuICB9XG59XG5cbi5oYWwtc3VibWl0LWJ1dHRvbntcbiAgQGV4dGVuZCAlZGVmYXVsdC1idXR0b247XG4gIHBhZGRpbmc6IDE5cHggMThweCAxNnB4IDE4cHg7XG4gIG1hcmdpbi1yaWdodDogLTFweDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICBzcGFuLmhhbC1pY29ue1xuICAgIG1hcmdpbi1yaWdodDogMjBweDtcbiAgfVxufVxuXG4uaGFsLW9wdGlvbi1idXR0b257XG4gIEBleHRlbmQgJWRlZmF1bHQtYnV0dG9uO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1ibHVlMTtcbiAgcGFkZGluZzogMTJweCA0MHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgc3Bhbi5oYWwtaWNvbntcbiAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gIH1cbiAgJjpob3ZlcntcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1ibHVlMS1ob3ZlcjtcbiAgfVxuXG4gICY6ZGlzYWJsZWR7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktYmx1ZTEtZGlzYWJsZWQ7XG4gICAgY3Vyc29yOiB1bnNldDtcbiAgfVxufVxuXG4uaGFsLW9wdGlvbi1idXR0b24tZGlzYWJsZWR7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWJsdWUxLWRpc2FibGVkO1xufVxuXG4uaGFsLXZpc3VhbGl6ZS1idXR0b257XG4gIEBleHRlbmQgJWRlZmF1bHQtYnV0dG9uO1xuICBmb250LXNpemU6ICRzaXplLXJlZ3VsYXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWJsdWU7XG4gIHBhZGRpbmc6IDE0cHggNDBweDtcblxuICBzcGFuLmhhbC1pY29ue1xuICAgIG1hcmdpbi1yaWdodDogMjBweDtcbiAgfVxuICAmOmhvdmVye1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWJsdWUtaG92ZXI7XG4gIH1cbiAgJjpkaXNhYmxlZHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1ibHVlLWRpc2FibGVkO1xuICAgIGN1cnNvcjogdW5zZXQ7XG4gIH1cbn1cblxuLmhhbC1zYXZlLWJ1dHRvbntcbiAgQGV4dGVuZCAlZGVmYXVsdC1idXR0b247XG4gIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWJsdWUxO1xuICBmb250LXNpemU6ICRzaXplLXNtYWxsO1xuXG4gICY6aG92ZXJ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktYmx1ZTEtaG92ZXI7XG4gIH1cbiAgJjpkaXNhYmxlZHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1ibHVlMS1kaXNhYmxlZDtcbiAgICBjdXJzb3I6IHVuc2V0O1xuICB9XG5cbn1cblxuLmhhbC1wcml2aWxlZ2UtYnV0dG9ue1xuICBAZXh0ZW5kICVkZWZhdWx0LWJ1dHRvbjtcbiAgZm9udC1zaXplOiAkc2l6ZS1yZWd1bGFyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpdmlsZWdlLWJ1dHRvbjtcbiAgcGFkZGluZzogMTRweCA0MHB4O1xuXG4gIHNwYW4uaGFsLWljb257XG4gICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICB9XG4gICY6aG92ZXJ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktYmx1ZTM7XG4gIH1cbiAgJjpkaXNhYmxlZHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1ibHVlMztcbiAgICBjdXJzb3I6IHVuc2V0O1xuICB9XG59XG5cbi5oYWwtd2FybmluZy1idXR0b257XG4gIEBleHRlbmQgJWRlZmF1bHQtYnV0dG9uO1xuICBmb250LXNpemU6ICRzaXplLXJlZ3VsYXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICRzZWNvbmRhcnktZXJyb3I7XG4gIHBhZGRpbmc6IDE0cHggNDBweDtcblxuICBzcGFuLmhhbC1pY29ue1xuICAgIG1hcmdpbi1yaWdodDogMjBweDtcbiAgICAmOjpiZWZvcmV7XG4gICAgICBjb2xvcjogJHdoaXRlO1xuICAgIH1cbiAgfVxuICAmOmhvdmVye1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRzZWNvbmRhcnktZXJyb3ItaG92ZXI7XG4gIH1cbiAgJjpkaXNhYmxlZHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2Vjb25kYXJ5LWVycm9yLWxpZ2h0O1xuICAgIGN1cnNvcjogdW5zZXQ7XG4gIH1cbn1cbi8qKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgU0VDT05EQVJZIEJVVFRPTlNcbioqKioqKioqKioqKioqKioqKioqKioqKiovXG4uaGFsLWxvZ2luLWJ1dHRvbntcbiAgQGV4dGVuZCAlZGVmYXVsdC1idXR0b247XG4gIGNvbG9yOiAkd2hpdGU7XG4gIGZvbnQtc2l6ZTogJHNpemUtcmVndWxhcjtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuXG4gICY6aG92ZXJ7XG4gICAgY29sb3I6ICRwcmltYXJ5LW9yYW5nZTtcbiAgfVxufVxuXG4uaGFsLXNlY29uZGFyeS1idXR0b24sIGEuaGFsLXNlY29uZGFyeS1idXR0b257XG4gIEBleHRlbmQgJWRlZmF1bHQtYnV0dG9uO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6ICRwcmltYXJ5LWJsdWUxO1xuICBmb250LXNpemU6ICRzaXplLXJlZ3VsYXI7XG4gIHNwYW57XG4gICAgY29sb3I6ICRwcmltYXJ5LWJsdWUxO1xuICB9XG4gIHNwYW4uaGFsLWljb257XG4gICAgbWFyZ2luLXJpZ2h0OiAxMnB4O1xuICB9XG4gICY6aG92ZXIsICY6aG92ZXIgc3BhbntcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgY29sb3I6ICRwcmltYXJ5LWJsdWUzO1xuICB9XG59XG5cbi5oYWwtYmd0ZXh0LCBhLmhhbC1iZ3RleHR7XG4gIEBleHRlbmQgJWRlZmF1bHQtYnV0dG9uO1xuICAgYmFja2dyb3VuZC1jb2xvcjogJGdyYXktZTg7XG4gICBwYWRkaW5nOiAxMHB4O1xuICAgY29sb3I6ICRibGFjaztcbiAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7XG4gICBsaW5lLWhlaWdodDogJHNpemUtZXh0cmE7XG5cbiAgJjpob3ZlcntcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGdyYXktYjk7XG4gIH1cbn1cblxuLy9Cb3V0b24gZCdleHBvcnQgYXZhbmPDqVxuLmhhbC1hZHZleHBvcnR7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWJsdWUxO1xuICBwYWRkaW5nOiAxMHB4O1xuICBjb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XG5cbiAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcbiAgbGluZS1oZWlnaHQ6ICRzaXplLWV4dHJhO1xuICAmOmhvdmVye1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1ibHVlMS1ob3ZlcjtcbiAgICBjb2xvcjogJHdoaXRlO1xuICB9XG59XG5cbi5oYWwtYmd1c2Vye1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1ibHVlMztcbiAgY29sb3I6ICR3aGl0ZTtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIHBhZGRpbmc6IDVweDtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgU0VBUkNIIEJBUlxuKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi5oYWwtc2Vjb25kLXNlYXJjaC1pbnB1dHtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItYm90dG9tOiBzb2xpZCAycHggJHByaW1hcnktYmx1ZTE7XG4gIHBhZGRpbmctcmlnaHQ6IDUwcHg7XG4gIHBhZGRpbmctYm90dG9tOiA1cHg7XG4gIHBhZGRpbmctdG9wOiAxMHB4O1xuICBjb2xvcjogJHByaW1hcnktYmx1ZTtcblxuICAmOjpwbGFjZWhvbGRlcntcbiAgICBjb2xvcjogJGdyYXktY2E7XG4gIH1cbn1cblxuXG4uaGFsLW1haW4tc2VhcmNoLWlucHV0e1xuICBib3JkZXI6IG5vbmU7XG4gIGhlaWdodDogNDhweDtcbiAgY29sb3I6ICRwcmltYXJ5LWJsdWU7XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgwZGVnLCAkcHJpbWFyeS1vcmFuZ2UgNTAlLCAjMDAwMCA1MCUpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IDBweDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IDIwcHg7XG4gIHRyYW5zaXRpb246IC4zcyBjdWJpYy1iZXppZXIoLjI1LC44LC41LDEpO1xuXG5cbiAgJjo6cGxhY2Vob2xkZXJ7XG4gICAgY29sb3I6ICRncmF5LWNhO1xuICB9XG59XG4jbGl0dGxlU2VhcmNoQmFyIHtcbiAgcGFkZGluZy1sZWZ0OiA1MHB4O1xuICAmOmZvY3VzLXZpc2libGUgeyAvKiBDaGFuZ2VtZW50IGRlIGxhIGNvdWxldXIgZGUgbGEgQm9yZHVyZSBkZSBsYSBiYXJyZSBkZSByZWNoZXJjaGUgKi9cbiAgICBvdXRsaW5lOiAwcHg7XG4gICAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xuICB9XG4gICY6aG92ZXIgeyAvKiA9PT0gT21icmUgYXUgc3V2b2xlIGRlIGxhIGJhcnJlIGRlIHJlY2hlcmNoZSA9PT0gKi9cbiAgICBib3gtc2hhZG93OiAwIDNweCA4cHggMCAjMDAwMDAwNGY7XG4gIH1cbn1cblxuLmhhbC1tYWluLXNlYXJjaC1idXR0b257XG4gIGJvcmRlcjogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiAkcHJpbWFyeS1ibHVlMTtcbiAgZm9udC1zaXplOiAkc2l6ZS1sYXJnZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDE1cHg7XG59XG5cbi5oYWwtbWFpbi1hZHZzZWFyY2gtYnV0dG9ue1xuICBmb250LXNpemU6ICRzaXplLW1pbnVzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiBub25lO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogLTM0cHg7XG4gIGxlZnQ6IDk1JTtcbiAgei1pbmRleDoxO1xuICBjb2xvcjogJGdyYXktOTc7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgICAgUEFORUxcbioqKioqKioqKioqKioqKioqKioqKioqKiovXG4ucGFuZWwtZG9je1xuICAmID4gYnV0dG9uOmZpcnN0LWNoaWxke1xuICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JheS1mNDtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGdyYXktZTg7XG4gICAgbWFyZ2luLXRvcDogNDBweDtcbiAgICBwYWRkaW5nOiA2cHggMTJweDtcbiAgICBzcGFue1xuICAgICAgZm9udC1zaXplOiAuNXJlbTtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuICB9XG4gIC5wYW5lbC1kb2MtZGV0YWlsZWR7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGdyYXktZjQ7XG4gICAgaDV7XG4gICAgICBmb250LXNpemU6IGNhbGMoI3skc2l6ZS1yZWd1bGFyfSArIC4xcmVtKTtcbiAgICB9XG4gIH1cbn1cbnVsLm5hdi1waWxscy5saWdodC1ib3JkZXJ7XG4gIGF7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBjb2xvcjogJHByaW1hcnktYmx1ZTE7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJHByaW1hcnktYmx1ZTE7XG4gICAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgICAmLmFjdGl2ZXtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWJsdWUxO1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgJjpob3ZlcntcbiAgICAgICAgY3Vyc29yOiBpbml0aWFsO1xuICAgICAgfVxuICAgIH1cbiAgICAmOm5vdCguYWN0aXZlKTpob3ZlcntcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWJsdWUzO1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgJHByaW1hcnktYmx1ZTM7XG4gICAgfVxuICB9XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgIFRPT0xTXG4qKioqKioqKioqKioqKioqKioqKioqL1xuLnVpLXRvb2x0aXAudWktd2lkZ2V0LWNvbnRlbnQge1xuICBib3gtc2hhZG93OiBub25lO1xuICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGdyYXktMzc7XG4gIGNvbG9yOiAkd2hpdGU7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGZvbnQtc2l6ZTogJHNpemUteHNtYWxsO1xuICBwYWRkaW5nOiA0cHg7XG4gIG1hcmdpbi10b3A6IC0xMHB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGUhaW1wb3J0YW50O1xufVxuXG5idXR0b25bZGF0YS10b2dnbGUtc2Vjb25kPSd0b29sdGlwJ10ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiBub25lO1xuICBjb2xvcjogJGdyYXktY2E7XG59XG5idXR0b24ubm8tYXJyb3c6OmFmdGVye1xuICBjb250ZW50OiBub25lO1xufVxuYnV0dG9uW2RhdGEtdG9nZ2xlLXNlY29uZD1cInRvb2x0aXBcIl06aG92ZXIsYnV0dG9uW2RhdGEtdG9nZ2xlLXNlY29uZD1cInRvb2x0aXBcIl06Zm9jdXMsXG4uc2hvdyA+IGJ1dHRvbltkYXRhLXRvZ2dsZS1zZWNvbmQ9XCJ0b29sdGlwXCJdLmJ0bi1zZWNvbmRhcnkuZHJvcGRvd24tdG9nZ2xlLCAuZm9jdXMtcm91bmQ6Zm9jdXMsIC5mb2N1cy1yb3VuZDpob3ZlciB7XG4gIGNvbG9yOiAkcHJpbWFyeS1ibHVlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDIwNCwgMjE2LCAyMjksIDAuMzQpO1xuICBib3JkZXItcmFkaXVzOiAxODBweDtcbn1cblxuLmhpZGV7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5mb3JtLWVycm9ye1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgIENIRUNLQk9YXG4qKioqKioqKioqKioqKioqKioqKioqL1xuW3R5cGU9XCJjaGVja2JveFwiXTpub3QoOmNoZWNrZWQpLFxuW3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkIHtcbiAgLyogQ2FjaGUgbGEgY2hlY2tib3ggc2Fuc1xuICAgICBsYSBkw6lzYWN0aXZlciBwb3VyIGxlc1xuICAgICBsZWN0ZXVycyBkJ8OpY3JhbiAqL1xuICAvL3Bvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6MXB4O1xuICBsZWZ0OiAwO1xuICBvcGFjaXR5OiAwLjAxO1xuXG4gICY6Zm9jdXMgKyBsYWJlbDpiZWZvcmUge1xuICAgIGJvcmRlci1jb2xvcjogIzgwYmRmZjtcbiAgICBvdXRsaW5lOiAwO1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDAsIDEyMywgMjU1LCAwLjI1KTtcbiAgfVxufVxuLyogb24gcHLDqXBhcmUgbGUgbGFiZWwgKi9cblt0eXBlPVwiY2hlY2tib3hcIl06bm90KDpjaGVja2VkKSArIGxhYmVsLFxuW3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkICsgbGFiZWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IC8qIHBlcm1ldCBkZSBwb3NpdGlvbm5lciBsZXMgcHNldWRvLcOpbMOpbWVudHMgKi9cbiAgcGFkZGluZy1sZWZ0OiAyLjNlbTsgLyogZmFpdCB1biBwZXUgZCdlc3BhY2UgcG91ciBub3RyZSBjYXNlIMOgIHZlbmlyICovXG4gIGZvbnQtc2l6ZTogY2FsYygjeyRzaXplLXJlZ3VsYXJ9ICsgLjFyZW0pOyAvKiBMYWJlbCB1biBwZXUgcGx1cyBncm9zICovXG4gIGxpbmUtaGVpZ2h0OiAxLjE1O1xuICBjdXJzb3I6IHBvaW50ZXI7ICAgIC8qIGFmZmljaGUgdW4gY3Vyc2V1ciBhZGFwdMOpICovXG59XG4vKiBBc3BlY3QgZGUgbGEgY2FzZSAqL1xuW3R5cGU9XCJjaGVja2JveFwiXTpub3QoOmNoZWNrZWQpICsgbGFiZWw6YmVmb3JlLFxuW3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkICsgbGFiZWw6YmVmb3JlIHtcbiAgY29udGVudDogJyc7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICB3aWR0aDogMS40ZW07XG4gIGhlaWdodDogMS40ZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICRncmF5LWI5O1xuICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gIC8vYm94LXNoYWRvdzogaW5zZXQgMCAxcHggM3B4IHJnYmEoMCwwLDAsIC4xKSwgMCAwIDAgcmdiYSgyMDMsIDM0LCAyMzcsIC4yKTtcbiAgdHJhbnNpdGlvbjogYWxsIC4yNzVzO1xufVxuW3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkICsgbGFiZWw6YmVmb3JlIHtcbiAgYmFja2dyb3VuZDogJHByaXZpbGVnZS1idXR0b247XG59XG4gIC8qIEFzcGVjdCBkZSBsYSBjb2NoZSAqL1xuW3R5cGU9XCJjaGVja2JveFwiXTpub3QoOmNoZWNrZWQpICsgbGFiZWw6YWZ0ZXIsXG5bdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQgKyBsYWJlbDphZnRlciB7XG4gIGNvbnRlbnQ6ICdcXDI3MTMnO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMC41NWVtO1xuICBsZWZ0OiAwLjJlbTtcbiAgZm9udC1zaXplOiAxLjNlbTtcbiAgY29sb3I6ICR3aGl0ZTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIHRyYW5zaXRpb246IGFsbCAuMnM7IC8qIFBldGl0ZSB0cmFuc2l0aW9uICovXG59XG5bdHlwZT1cImNoZWNrYm94XCJdOm5vdCg6Y2hlY2tlZCkgKyBsYWJlbC50aWNrOmFmdGVyLFxuW3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkICsgbGFiZWwudGljazphZnRlciB7XG4gIGNvbnRlbnQ6ICdcXDI3MTMnO1xuICBjb2xvcjogJHdoaXRlO1xufVxuW3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkICsgbGFiZWwudGljazo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZDogJHByaXZpbGVnZS1idXR0b247XG59XG4vKiBBc3BlY3Qgbm9uIGNvY2jDqWUgKi9cblt0eXBlPVwiY2hlY2tib3hcIl06bm90KDpjaGVja2VkKSArIGxhYmVsOmFmdGVyIHtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwKSByb3RhdGUoNDVkZWcpO1xufVxuLyogQXNwZWN0IGNvY2jDqWUgKi9cblt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCArIGxhYmVsOmFmdGVyIHtcbiAgb3BhY2l0eTogMTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxKSByb3RhdGUoMCk7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqXG4gICBXSElURSBUQUJMRVxuKioqKioqKioqKioqKioqKioqKioqKi9cbi50YWJsZS13aGl0ZXtcbiAgd2lkdGg6IDEwMCU7XG4gIEBleHRlbmQgJXRhYmxlLXdoaXRlLWRlZmF1bHQ7XG5cbiAgLmF1dGhvcnMtcmVzdWx0c3tcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBjb2xvcjogJHByaW1hcnktYmx1ZTE7XG4gICAgZm9udC1zaXplOiAkc2l6ZS1zbWFsbDtcbiAgfVxufVxuXG4ubWVkaWF7XG4gIGhlaWdodDogOTRweDtcbiAgd2lkdGg6IDc0cHg7XG5cbiAgaW1nIHtcbiAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm9yZGVyOjFweCBzb2xpZCAkZ3JheS1lODtcbiAgfVxuICBzcGFuLmljb24tY2hyb25ve1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IDMwcHg7XG4gICAgbGVmdDogLTM1cHg7XG4gICAgZm9udC1zaXplOiAkc2l6ZS1sYXJnZTtcbiAgICBjb2xvcjogJHB1cnBsZTtcbiAgfVxuXG4gICYubm90LWZpbGUtaW1ne1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBib3JkZXItbGVmdDogMnB4IHNvbGlkICRwdXJwbGU7XG4gICAgYm9yZGVyLXJpZ2h0OiAycHggc29saWQgJHB1cnBsZTtcbiAgICAmOjpiZWZvcmUsICY6OmFmdGVye1xuICAgICAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICRwdXJwbGU7XG4gICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgJHB1cnBsZTtcbiAgICAgIHdpZHRoOiAxNXB4O1xuICAgICAgaGVpZ2h0OiA5NHB4O1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB9XG4gICAgJjo6YWZ0ZXJ7XG4gICAgICBtYXJnaW4tbGVmdDogNTZweCFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5pY29uLW9wZW4tYWNjZXNzIHtcbiAgICAgIGxlZnQ6IDE2cHg7XG4gICAgfVxuICAgIC5pY29uIHtcbiAgICAgIGZvbnQtc2l6ZTogNDBweDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMjRweDtcbiAgICAgIGNvbG9yOiAkcHVycGxlO1xuICAgIH1cbiAgICAuaWNvbi1jaHJvbm8sIC5pY29uLW5vdGljZSB7XG4gICAgICBsZWZ0OiAyMHB4O1xuICAgIH1cbiAgfVxufVxuLyoqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgVE9BU1RcbioqKioqKioqKioqKioqKioqKioqKiovXG4udG9hc3R7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgei1pbmRleDogMjAwMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICBtYXJnaW4tbGVmdDogMC43NXJlbTtcbiAgY29sb3I6ICR3aGl0ZTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGZvbnQtc2l6ZTogJHNpemUtcmVndWxhcjtcbiAgbWF4LXdpZHRoOiBub25lO1xuXG4gICYudG9hc3Qtd2FybmluZyB7XG4gICAgYm94LXNoYWRvdzogMHB4IDdweCA3cHggcmdiYSg2NiwgNjUsIDY1LCAwLjU4KTtcbiAgfVxuXG4gIC50b2FzdC1ib2R5e1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gIH1cbiAgLm1lc3NhZ2V7XG4gICAgcGFkZGluZy1yaWdodDogMzBweDtcbiAgICBwYWRkaW5nLWxlZnQ6IDI1cHg7XG4gICAgbWFyZ2luOiBhdXRvO1xuICAgIHNwYW46Zmlyc3QtY2hpbGR7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgICAgZm9udC1zaXplOiAkc2l6ZS1sYXJnZTtcbiAgICB9XG4gICAgLmZsYXNoLW1lc3NhZ2VzIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgfVxuICB9XG4gIC5tbC0yLm1iLTEuY2xvc2V7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAkd2hpdGU7XG4gICAgcGFkZGluZy1sZWZ0OiAyNXB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgfVxuXG4gIC5zcGlubmVyLWJvcmRlciB7XG4gICAgd2lkdGg6IDFyZW07XG4gICAgaGVpZ2h0OiAxcmVtO1xuICB9XG5cbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKipcbiAgSU5QVVQgV0lUSCBSSUdIVCBCVVRUT05cbioqKioqKioqKioqKioqKioqKioqKiovXG4uaW5wdXQtYnV0dG9ue1xuICBtYXJnaW4tdG9wOiAxMHB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBpbnB1dHtcbiAgICBmbGV4OiBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cbiAgYnV0dG9ue1xuICAgIG1hcmdpbi1sZWZ0OiAxNnB4O1xuICAgIHBhZGRpbmc6IDEycHggMjBweDtcbiAgfVxufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKlxuICBTRUxFQ1QgMiA6IEhBTCB0aGVtZVxuKioqKioqKioqKioqKioqKioqKioqKi9cbi5zZWxlY3QyLWNvbnRhaW5lci0taGFsIHtcbiAgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZXtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjYWFhO1xuICAgIGN1cnNvcjogdGV4dDtcbiAgICAuc2VsZWN0Mi1zZWxlY3Rpb25fX3JlbmRlcmVke1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgbWFyZ2luOiAwIDAgNXB4O1xuICAgICAgbGl7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgICAgbWFyZ2luLXRvcDogNXB4O1xuICAgICAgICBwYWRkaW5nOiAwIDVweDtcbiAgICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgIH1cbiAgICB9XG4gICAgLnNlbGVjdDItc2VsZWN0aW9uX19jaG9pY2VfX3JlbW92ZXtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgbWFyZ2luLXJpZ2h0OjVweDtcbiAgICB9XG4gIH1cbiAgLnNlbGVjdDItcmVzdWx0cyA+IC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbnN7XG4gICAgbWF4LWhlaWdodDogMjAwcHg7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICAuaXRlbS1sYWJlbCB7XG4gICAgICBmb250LXNpemU6IDEwcHg7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICB9XG4gIH1cbiAgLnNlbGVjdDItc2VsZWN0aW9uIHtcbiAgICBib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLWNvbG9yOiAjOTBBNEI2O1xuICB9XG4gIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2hvaWNlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjOTBBNEI2ICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgYm9yZGVyLWNvbG9yOiAjOTBBNEI2ICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50O1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgbWluLXdpZHRoOiBhdXRvO1xuICB9XG59XG5cbi5zZWxlY3QyLWNvbnRhaW5lci0taGFsLnNlbGVjdDItY29udGFpbmVyLS1mb2N1cyAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlLCAuc2VsZWN0Mi1zZWxlY3Rpb246YWN0aXZlLCAuc2VsZWN0Mi1zZWxlY3Rpb246Zm9jdXMgIHtcbiAgYm9yZGVyLWNvbG9yOiAjMTI0Qjg5ICFpbXBvcnRhbnQ7XG59XG5cbiNsaWJyYXJ5X01vZGFse1xuICAubW9kYWwtZGlhbG9ne1xuICAgIHdpZHRoOiAzMDBweDtcbiAgfVxuICAubW9kYWwtZm9vdGVye1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgLmNhbmNlbHtcbiAgICAgIHBhZGRpbmc6IDAuMzc1cmVtIDAuNzVyZW07XG4gICAgICBmb250LXNpemU6IDAuODVyZW07XG4gICAgfVxuICB9XG59XG5cbiNsaWJyYXJ5LWxpc3R7XG4gIC5zZWxlY3QyLWNvbnRhaW5lci0taGFsIHtcbiAgICAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxle1xuICAgICAgLnNlbGVjdDItc2VsZWN0aW9uX19yZW5kZXJlZHtcbiAgICAgICAgLnNlbGVjdDItc2VhcmNoLS1pbmxpbmV7XG4gICAgICAgICAgYm9yZGVyOiB1bnNldDtcbiAgICAgICAgICBtYXJnaW46IHVuc2V0O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9ue1xuICAgICAgY29sb3I6ICRwcmltYXJ5LWJsdWUxO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICAgIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvblthcmlhLXNlbGVjdGVkPVwidHJ1ZVwiXXtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNkZGQ7XG4gICAgfVxuICAgIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbnN7XG4gICAgICAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24tLWhpZ2hsaWdodGVke1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1ibHVlMS1ob3ZlcjtcbiAgICAgIH1cbiAgICB9XG4gICAgLnNlbGVjdDItc2VsZWN0aW9uX19jaG9pY2V7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1ibHVlMSAhaW1wb3J0YW50O1xuICAgICAgYm9yZGVyLWNvbG9yOiAkcHJpbWFyeS1ibHVlMSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuICAuc2hlbGZfdmFsdWV7XG4gICAgZm9udC1zaXplOiAkc2l6ZS1yZWd1bGFyO1xuICB9XG59IiwiLmhlYWRlci1zaXRlIHtcbiAgbWFyZ2luOiAwIDkuNSU7XG59XG5cbi53ZWJzaXRlLW5hdmlnYXRpb24ge1xuICBtaW4taGVpZ2h0OiA2MHB4O1xuICBwYWRkaW5nLXRvcDogMTBweDtcbiAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4gIGJhY2tncm91bmQ6ICRwcmltYXJ5LWJsdWU7XG5cbiAgYSB7XG4gICAgbGluZS1oZWlnaHQ6IDQwcHg7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBmb250LXNpemU6ICRzaXplLWxhcmdlO1xuICAgIHBhZGRpbmc6IDAgMXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmRyb3Bkb3duLW1lbnUge1xuICAgIGEge1xuICAgICAgY29sb3I6ICRwcmltYXJ5LWJsdWU7XG4gICAgfVxuICAgIGxpLm5hdi1pdGVtOmhvdmVyIHtcbiAgICAgIGF7XG4gICAgICAgIGNvbG9yOiAkcHJpbWFyeS1ibHVlICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAmPi5kcm9wZG93bi1tZW51IHtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAxMDAlO1xuICAgICAgICBtYXJnaW4tdG9wOiAtNnB4O1xuICAgICAgICBtYXJnaW4tbGVmdDogLTFweDtcbiAgICAgIH1cblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAkcHJpbWFyeS1ibHVlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBpbmhlcml0O1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICAmID4gLmRyb3Bkb3duLWl0ZW0ge1xuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICB9XG5cbiAgICAgICAgJiA+IC5kcm9wZG93bi1tZW51IHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICB9XG59XG5cbi5jdXN0b20tcGFnZSB7XG4gIC53aWRnZXQge1xuICAgIC53aWRnZXQtaGVhZGVyIHtcbiAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgfVxuXG4gICAgLndpZGdldC1jb250ZW50IHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICAgICAgcGFkZGluZy10b3A6IDFyZW07XG4gICAgICB1bCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLndpZGdldC1mZWVkcy5hY2NvcmRpb24ge1xuICAgICAgbWFyZ2luLXRvcDogLTFyZW07XG4gICAgfVxuXG4gIH1cbiAgLmZvcm0tYWN0aW9ucyB7XG4gICAgbWFyZ2luOiAycmVtIDAgMCAwO1xuICB9XG59XG5cbi5ibG9ja3F1b3RlLW5ld3Mge1xuICBmb250LXNpemU6ICRzaXplLXNtYWxsO1xuICBib3JkZXItbGVmdDogNHB4IHNvbGlkICRwcmltYXJ5LWJsdWUxO1xuICBiYWNrZ3JvdW5kOiAkc2hlYWRlcjtcbiAgcGFkZGluZzogMjBweDtcbn1cblxuLm5ld3MtdGl0bGUge1xuICBjb2xvcjogJHByaW1hcnktYmx1ZTtcbn1cblxuLndpZGdldC1jb250ZW50IC51aS5ncmlkIHtcbiAgbWFyZ2luOiAxcmVtO1xufVxuXG4jaG9tZXBhZ2Utc2VhcmNoIHtcbiAgaW5wdXQge1xuICAgIG1hcmdpbi1ib3R0b206IC0yMHB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDMwcHg7XG4gICAgbWFyZ2luLXRvcDogLTFyZW07XG4gIH1cbiAgYnV0dG9uIHtcbiAgICByaWdodDogMDtcbiAgICB0b3A6IDA7XG4gICAgei1pbmRleDogMztcbiAgfVxufVxuIiwiI3BvcnRhbHMtbGlzdCB7XG4gIG1hcmdpbjogNTBweCA0MHB4O1xuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSl7XG4gICAgbWFyZ2luOiA1MHB4IDBweDtcbiAgfVxuXG4gIC50aXRsZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGdyYXktZjI7XG4gICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG5cbiAgICBoMSB7XG4gICAgICBmb250LXNpemU6ICRzaXplLWxhcmdlO1xuICAgICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICAgIH1cblxuICAgIGgxLCAuY29sLXNlYXJjaCB7XG4gICAgICBsaW5lLWhlaWdodDogODBweDtcbiAgICB9XG4gIH1cblxuICB1bC5saXN0IHtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgcGFkZGluZzogMDtcblxuICAgIC5saXN0LWdyb3VwLWl0ZW0ge1xuICAgICAgYm9yZGVyLWxlZnQ6IDA7XG4gICAgICBib3JkZXItcmlnaHQ6IDA7XG4gICAgICBib3JkZXItdG9wOiAwICFpbXBvcnRhbnQ7XG4gICAgICBwYWRkaW5nOiAyMHB4IDA7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGdyYXktZTggIWltcG9ydGFudDtcbiAgICAgIG1hcmdpbi1ib3R0b206MDtcblxuICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAwIDtcbiAgICAgIH1cblxuICAgICAgaW1nIHtcbiAgICAgICAgd2lkdGg6IDE0MHB4O1xuICAgICAgfVxuXG4gICAgICBoNCB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICBmb250LXNpemU6ICRzaXplLXhsO1xuICAgICAgfVxuICAgICAgcCB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgfVxuICAgICAgc21hbGwge1xuICAgICAgICBjb2xvcjogJGdyYXktOTc7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICBmb250LXNpemU6ICRzaXplLXhzbWFsbDtcbiAgICAgIH1cbiAgICAgIGEge1xuICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgIH1cbiAgICAgIC5ibG9jLWNvdW50ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JheS1lODtcbiAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgcGFkZGluZzo3cHggNHB4O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6MTBweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIGZvbnQtc2l6ZTogJHNpemUteHNtYWxsO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG51bC5wYWdpbmF0aW9uIHtcbiAgbGkge1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuXG4gICAgLnBhZ2Uge1xuICAgICAgY29sb3I6ICR0b29scy1zb3J0O1xuICAgIH1cbiAgfVxufVxuXG4uc2Vjb25kYXJ5LXNlYXJjaCB7XG4gIGZvbnQtc2l6ZTogJHNpemUtbGFyZ2U7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkcHJpbWFyeS1ibHVlMTtcbiAgbWFyZ2luLXJpZ2h0OiAzMHB4O1xuXG4gIGlucHV0IHtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICAmOmZvY3VzIHtcbiAgICAgIG91dGxpbmU6MDtcbiAgICB9XG4gICAgJjo6cGxhY2Vob2xkZXIge1xuICAgICAgY29sb3I6ICRncmF5LWNhO1xuICAgICAgZm9udC1zaXplOiAkc2l6ZS1zbWFsbDtcbiAgICB9XG4gIH1cblxuICAuaWNvbi1sYXJnZTo6YmVmb3JlIHtcbiAgICBmb250LXNpemU6ICRzaXplLWxhcmdlO1xuICB9XG59XG5cblxuLy8qKioqKioqKioqKipcbi8vIFRhYmxlXG4vLyoqKioqKioqKioqKlxuXG5AbWl4aW4gYnJvd3NlLXRhYmxlIHtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOjA7XG4gIHRoIHtcbiAgICB3aWR0aDogMTUlO1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICB9XG5cbiAgdGQudGQtdmFsdWVzIHtcbiAgICB3aWR0aDogMTUlO1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICB9XG5cbiAgLmJ0biB7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBmb250LXNpemU6IDAuOXJlbTtcbiAgfVxuXG4gIC5idG4tZGVmYXVsdCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgIGJvcmRlci1jb2xvcjogJGdyYXktY2E7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRncmF5LWU2O1xuICAgIH1cbiAgfVxufVxuLmJyb3dzZS1kb2N0eXBlIHtcbiAgaDIge1xuICAgIG1hcmdpbi10b3A6IDQwcHg7XG4gIH1cblxuICAuc2VjdGlvbi1zaGFkb3cge1xuICAgIC50eXBkb2MtbGFiZWwge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgfVxuXG4gICAgLmNvbC0zIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gICAgfVxuXG4gICAgLmNvdW50ZXIge1xuICAgICAgcGFkZGluZzogMjBweCAwIDEwcHg7XG4gICAgICAmLnRvdGFsIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktYmx1ZS1kaXNhYmxlZDtcbiAgICAgIH1cbiAgICAgICYubmIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1ibHVlLWxpZ2h0O1xuICAgICAgfVxuICAgIH1cblxuXG4gICAgLm5iIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgZm9udC1zaXplOiAkc2l6ZS14bDtcbiAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgfVxuICAgIHAge1xuICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgIGZvbnQtc2l6ZTogJHNpemUtc21hbGw7XG4gICAgfVxuICB9XG5cbn1cblxuXG4ucGVyaW9kLXRhYmxlIHtcbiAgQGluY2x1ZGUgYnJvd3NlLXRhYmxlO1xuXG4gIHRoZWFkIHtcbiAgICB0ciB7XG4gICAgICBib3gtc2hhZG93OiAxcHggMnB4IDNweCAjMDAwMDAwMjk7XG5cbiAgICAgIHRoIHtcbiAgICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICB0Ym9keSB7XG4gICAgJjpiZWZvcmUge1xuICAgICAgbGluZS1oZWlnaHQ6MS41ZW07IGNvbnRlbnQ6XCJcXDIwMENcIjsgZGlzcGxheTpibG9jaztcbiAgICB9XG4gICAgdHIge1xuICAgICAgYm94LXNoYWRvdzogMXB4IDBweCAzcHggIzAwMDAwMDI5O1xuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgYm94LXNoYWRvdzogMXB4IDJweCAzcHggIzAwMDAwMDI5O1xuICAgICAgfVxuICAgICAgJjpob3ZlciwgJi5hY3RpdmUge1xuXG4gICAgICAgIGJhY2tncm91bmQ6ICRob3ZlcjtcbiAgICAgIH1cblxuICAgICAgdGQge1xuICAgICAgICBib3JkZXItdG9wOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uYnJvd3NlLWFscGhhYmV0IHtcbiAgbWFyZ2luOiAyMHB4IDAgIWltcG9ydGFudDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBsaSB7XG4gICAgbWFyZ2luOiB1bnNldCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IHVuc2V0ICFpbXBvcnRhbnQ7XG5cbiAgICBhIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgcGFkZGluZzogNnB4IDEycHg7XG4gICAgICBtYXJnaW4tbGVmdDogLTFweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjQyODU3MTQyOTtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRncmF5LWRlO1xuICAgICAgYm9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50O1xuICAgICAgY29sb3I6ICRwcmltYXJ5LWJsdWUxO1xuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogJGhvdmVyO1xuICAgICAgfVxuICAgIH1cbiAgICAmLmFjdGl2ZSB7XG4gICAgICBhIHtcbiAgICAgICAgYmFja2dyb3VuZDogJHB1cnBsZS1kYXJrZXI7XG4gICAgICAgIGNvbG9yOiR3aGl0ZTtcbiAgICAgIH1cbiAgICAgIGJvcmRlci1ib3R0b206IHVuc2V0ICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG4uYnJvd3NlLWxpc3Qge1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBsaSB7XG4gICAgYSB7XG4gICAgICBjb2xvcjogJHByaW1hcnktYmx1ZTE7XG4gICAgfVxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogJGhvdmVyO1xuICAgIH1cbiAgfVxuXG59XG5cblxuLy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gIEJyb3dzZSBkb21haW4gcG9ydGFsXG4vLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4jZG9tYWluLWVsZW1lbnQge1xuICAuaGVhZC1saXN0OmJlZm9yZSB7XG4gICAgY29udGVudDogdW5zZXQ7XG4gIH1cbiAgLnRyZWUgbGkge1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG4gIFt0eXBlPVwiY2hlY2tib3hcIl06bm90KDpjaGVja2VkKSArIGxhYmVsOmFmdGVyIHtcbiAgICBjb250ZW50OiB1bnNldDtcbiAgfVxuXG4gIFtjbGFzc149XCJpY29uLVwiXSwgW2NsYXNzKj1cIiBpY29uLVwiXSB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG59XG5cbi8qIExpc3QgRXhwb3J0ICovXG4uZXhwb3J0LWxpc3R7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmctbGVmdDogMDtcblxuICBsaXtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2hlYWRlcjtcbiAgICBwYWRkaW5nOiA4cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogNnB4O1xuXG4gICAgc3BhbntcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gICAgICBjb2xvcjogJGdyYXktOTc7XG4gICAgfVxuXG4gICAgbGFiZWx7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDYwcHggIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn0iLCJcbi5jb25uZWN0ZWQtbmF2aWdhdGlvbiB7XG5cbiAgLmxpc3QtZ3JvdXAge1xuICAgIGJvcmRlcjogMDtcbiAgICAubGlzdC1ncm91cC1pdGVtIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMTVweDtcbiAgICAgIGJvcmRlcjowO1xuICAgICAgYm9yZGVyLWxlZnQ6IDVweCBzb2xpZCAkd2hpdGU7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgIGJvcmRlci1yYWRpdXM6MDtcblxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMTFweDtcbiAgICAgICAgbWFyZ2luLXRvcDogNnB4O1xuICAgICAgfVxuXG4gICAgICAmLmFjdGl2ZSwgJi5hY3RpdmU6aG92ZXIge1xuICAgICAgICBjb2xvcjogJHByaW1hcnktYmx1ZTtcbiAgICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICRwcmltYXJ5LWJsdWU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwdXJwbGUtZXh0cmEtbGlnaHQ7XG4gICAgICB9XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBjb2xvcjogJHByaW1hcnktYmx1ZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHB1cnBsZS1leHRyYS1saWdodDtcbiAgICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICRwdXJwbGUtZXh0cmEtbGlnaHQ7XG4gICAgICB9XG5cbiAgICAgIHNwYW4ge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgfVxuXG4gICAgICAmLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb24ge1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgfVxuICAgIH1cbiAgICAuZHJvcGRvd24tbWVudSAubGlzdC1ncm91cC1pdGVtIHtcbiAgICAgIHNwYW4ge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cbiNpZGV4dCB7XG4gIC5maWVsZCB7XG4gICAgY29sb3I6ICRwdXJwbGUtbGlnaHQ7XG4gICAgZm9udC1zaXplOiAkc2l6ZS1zbWFsbDtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICB3aWR0aDogMTMwcHg7XG4gIH1cbiAgLnZhbHVlIHtcbiAgICBjb2xvcjogJGJsYWNrO1xuICAgIGZvbnQtc2l6ZTogJHNpemUtc21hbGw7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIH1cbn1cblxuJXVzZXItaW5kZXgge1xuICAuZmllbGQge1xuICAgIGNvbG9yOiAkcHVycGxlLWxpZ2h0O1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB9XG4gIC52YWx1ZSB7XG4gICAgY29sb3I6ICRibGFjaztcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgfVxufVxuXG4uYWNjb3VudCwgLnByZWZlcmVuY2VzLCAudXNlci1pZGhhbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICB0cjpmaXJzdC1jaGlsZCB0ZCB7XG4gICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgfVxuXG4gIC5idG4tZWRpdCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDowO1xuICAgIHJpZ2h0OiAwO1xuICAgIGhlaWdodDogNDBweDtcbiAgICB3aWR0aDogNDBweDtcbiAgICAuaWNvbiB7XG4gICAgICBmb250LXNpemU6ICRzaXplLWxhcmdlO1xuICAgIH1cbiAgfVxuICAuYnRuLXNlY29uZGFyeS1ibHVlLCAuYnRuLXNlY29uZGFyeS1ibHVlIC5pY29uIHtcbiAgICBmb250LXNpemU6ICRzaXplLXJlZ3VsYXI7XG4gIH1cbn1cblxuLmFjY291bnQsIC51c2VyLWlkaGFsIHtcbiAgQGV4dGVuZCAldXNlci1pbmRleDtcbiAgLmZpZWxkLCB2YWx1ZSB7XG4gICAgZm9udC1zaXplOiAkc2l6ZS1zbWFsbDtcbiAgfVxuICAuZmllbGQge1xuICAgIHdpZHRoOiAxMzBweDtcbiAgfVxufVxuXG4ucHJlZmVyZW5jZXMge1xuICBAZXh0ZW5kICV1c2VyLWluZGV4O1xuICAuZmllbGQsIC52YWx1ZSB7XG4gICAgZm9udC1zaXplOiAkc2l6ZS1yZWd1bGFyO1xuICAgIHdpZHRoOiBpbmhlcml0O1xuICB9XG5cbiAgZGl2LmZpZWxkLCBkaXYudmFsdWUge1xuICAgIHBhZGRpbmc6IDAuNzVyZW07XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICBib3JkZXItdG9wOiBub25lO1xuICB9XG5cbiAgLnZhbHVlIHtcbiAgICB0ZXh0LWFsaWduOiByaWdodCAhaW1wb3J0YW50O1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XG4gICAgLnNlbGVjdDItY29udGFpbmVyIHtcbiAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgLnRpdGxlLXByZXBlbmQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3JkZXItYm90dG9tOjJweCBzb2xpZCAkYmxhY2s7XG4gICAgd2lkdGg6MjNweDtcbiAgICBoZWlnaHQ6MTBweDtcbiAgICBsZWZ0Oi0xNnB4O1xuICAgIHRvcDoycHg7XG4gIH1cbiAgLmhhbC1zZWxlY3Qge1xuICAgIHdpZHRoOiAxNTBweDtcbiAgICBoZWlnaHQ6IDM1cHg7XG4gICAgYmFja2dyb3VuZDogJGdyYXktZjQ7XG4gICAgYm9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50O1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcblxuICAgICY6YWN0aXZlLCAmOmZvY3VzIHtcbiAgICAgIG91dGxpbmU6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cblxuJXRhYmxlLXdoaXRlLWRlZmF1bHQge1xuICB0ciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRncmF5LWNhO1xuXG4gICAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaG92ZXI7XG4gICAgICBib3gtc2hhZG93OiAwcHggM3B4IDZweCAkYm94LXNoYWRvdztcblxuICAgICAgLmljb24tZHJhZyB7XG4gICAgICAgIGNvbG9yOiAkcHJpbWFyeS1ibHVlMTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICB0ZDpmaXJzdC1jaGlsZCB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDE0cHg7XG4gICAgfVxuXG4gICAgdGQge1xuICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICBwYWRkaW5nLXRvcDogMjBweDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICAgIH1cbiAgfVxufVxuXG4jcGFydGFnZV90YWJsZSB7XG4gIEBleHRlbmQgJXRhYmxlLW15c3BhY2U7XG4gIHdpZHRoOiAxMDAlO1xuICB0Ym9keSB7XG4gICAgQGV4dGVuZCAldGFibGUtd2hpdGUtZGVmYXVsdDtcbiAgfVxufVxuXG4jcGFydGFnZS1kZXBvc2l0ICNzaGFyZS1kb2Mge1xuICAuZm9ybS1ncm91cCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogYmFzZWxpbmU7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHhzKSB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB9XG4gIH1cbiAgI3VzZXIge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoeHMpIHtcbiAgICAgIHdpZHRoOjQwMHB4O1xuICAgIH1cbiAgfVxufVxuXG4jbXlkZXBvc2l0IHtcbiAgd2lkdGg6IDEwMCU7XG4gIHRib2R5IHtcbiAgICAjb3duc3Vie1xuICAgICAgQGV4dGVuZCAldGFibGUtd2hpdGUtZGVmYXVsdDtcbiAgICB9XG4gIH1cbn1cblxuI2Nhcm91c2VsRGVwb3RzIHtcbiAgaGVpZ2h0OiAxMDAlO1xuICAuY2Fyb3VzZWwtaW5uZXIge1xuICAgIGhlaWdodDogMTAwJTtcbiAgfVxuICAuY2Fyb3VzZWwtY29udHJvbC1wcmV2IHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHVuc2V0O1xuICAgIGJvdHRvbTogdW5zZXQ7XG4gICAgY29sb3I6ICRwcmltYXJ5LWJsdWUxO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbiAgLmNhcm91c2VsLWNvbnRyb2wtcHJldjpob3ZlciwgLmNhcm91c2VsLWNvbnRyb2wtcHJldjpmb2N1cyB7XG4gICAgY29sb3I6ICRwcmltYXJ5LWJsdWUxO1xuICB9XG59XG5cbi5oYWwtbW9kYWwge1xuICAmLmZhZGUuc2hvdyB7XG4gICAgLy9iYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSkgIWltcG9ydGFudDtcbiAgfVxuXG4gICYubW9kYWwtbGFyZ2Uge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoeHMpIHtcbiAgICAgIC5tb2RhbC1kaWFsb2cge1xuICAgICAgICBtYXgtd2lkdGg6IDEwMDBweCAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKlxuICAgIE1PTiBDT01QVEVcbiAgICsrKysrKysrKysrKysrKysrKysrKysqL1xuXG4gIC5idG4tY2hhbmdlcGhvdG8sIC5idG4tZGVsZXRlcGhvdG8sIC5idG4tc3VibWl0ZWRpdGFjY291bnQge1xuICAgIHdpZHRoOiAyMDBweDtcbiAgICBmb250LXNpemU6ICRzaXplLXNtYWxsO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB9XG5cbiAgLmJ0bi1kZWxldGVwaG90byB7XG4gICAgY29sb3I6ICRzZWNvbmRhcnktZXJyb3I7XG4gIH1cbn1cblxuLnByb2dyZXNzIHtcbiAgaGVpZ2h0OiAxMHB4O1xuICBib3JkZXItcmFkaXVzOiAwO1xuICAucHJvZ3Jlc3MtYmFyIHtcbiAgICB3aWR0aDowJTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1ibHVlO1xuICB9XG59XG5cbi5iZy1ncmF5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGdyYXktZjQ7XG59XG5cbiVuby1kYXRhIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHNoZWFkZXI7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gID4gZGl2e1xuICAgIHdpZHRoOiAzMjBweDtcbiAgICBtYXJnaW46IGF1dG87XG4gICAgZm9udC1zaXplOiAkc2l6ZS1sYXJnZTtcbiAgfVxuICAuaGFsLXN1Ym1pdC1idXR0b24ge1xuICAgIHBhZGRpbmc6IDEwcHggMjBweDtcbiAgfVxufVxuXG4uaW5mby1uby1kb2N1bWVudCB7XG4gIGNvbG9yOiAkc2Vjb25kYXJ5LWVycm9yO1xuICBtYXJnaW46IDIwcHg7XG59XG5cbi5zcXVhcmUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGhlaWdodDogMjBweDtcbiAgd2lkdGg6IDIwcHg7XG4gICYuc3F1YXJlLWFkZGVkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2Vjb25kYXJ5LXN1Y2Nlc3MtZXh0cmEtbGlnaHQ7XG4gIH1cbiAgJi5zcXVhcmUtZGVsZXRlZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHNlY29uZGFyeS1lcnJvci1leHRyYS1saWdodDtcbiAgfVxufVxuLmFkZGVkLWVsbSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRzZWNvbmRhcnktc3VjY2Vzcy1leHRyYS1saWdodDtcbn1cbi5kZWxldGVkLWVsbSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRzZWNvbmRhcnktZXJyb3ItZXh0cmEtbGlnaHQ7XG59IiwiLyoqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICBHRU5FUkFMIFRBQkxFXG4qKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4uc29ydHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGNvbG9yOiAkcHJpbWFyeS1ibHVlMTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBib3JkZXI6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXG4gICY6bm90KDpsYXN0LWNoaWxkKXtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xuICB9XG4gIHNwYW57XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgICBmb250LXNpemU6IC4zcmVtO1xuICB9XG5cbiAgJi5hc2Mgc3BhbntcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgfVxuICAmLmRlc2Mgc3BhbntcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICB9XG59XG5cbi50YWJsZS11c2VyLXRvb2xzIHtcbiAgLmNoZWNrYm94IHtcbiAgICB3aWR0aDogNjBweDtcbiAgICBwYWRkaW5nLWxlZnQ6IDE0cHg7XG4gICAgcGFkZGluZy10b3A6IDIwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gICAgcGFkZGluZy1yaWdodDogMHB4O1xuICB9XG4gIC5zb3J0LWxpYnJhcnkge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuICAuaWNvbnMtbGlicmFyeSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gIH1cbiAgLmljb25zLXNlYXJjaGVzIHtcbiAgICAucG9wLW92ZXIge1xuICAgICAgcmlnaHQ6IHVuc2V0O1xuICAgIH1cbiAgfVxufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgIE1FUyBGQVZPUklTXG4qKioqKioqKioqKioqKioqKioqKioqKioqL1xuLy8gRm9yIHRhYnMsIHBpbGxzXG4uc2VjdGlvbi1jb250ZW50IC5uYXYtcGlsbHN7XG4gIC5uYXYtaXRlbSAubmF2LWxpbmt7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgY29sb3I6ICRibGFjaztcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgZm9udC1zaXplOiBjYWxjKCN7JHNpemUtbGFyZ2V9IC0gLjFyZW0pO1xuICAgIG1hcmdpbi1yaWdodDogMjBweDtcblxuICAgICY6OmJlZm9yZXtcbiAgICAgIGxlZnQ6IC43cmVtO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgd2lkdGg6IDkwJTtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkYmxhY2s7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgIH1cbiAgICAmLmFjdGl2ZXtcbiAgICAgIGNvbG9yOiAkcHJpbWFyeS1ibHVlMTtcbiAgICAgICY6OmJlZm9yZXtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogN3B4IHNvbGlkICRwcmltYXJ5LWJsdWUxO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4udXNlci1zZWN0aW9uLW1lbnV7XG4gIHBhZGRpbmc6IDMwcHggMjZweCAwIDI2cHggIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGdyYXktZjI7XG4gIG1hcmdpbi1ib3R0b206IDM0cHg7XG59XG5cbi5zZWFyY2hlcy10YWJsZXtcbiAgW3R5cGU9XCJjaGVja2JveFwiXTpub3QoOmNoZWNrZWQpICsgbGFiZWwge1xuICAgIHRvcDogLThweDtcbiAgfVxuICAucm93IHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGRpdjpub3QoLnNlYXJjaC1kYXRlKSB7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICB9XG4gICAgLmljb24tc2F2ZWRfc2VhcmNoe1xuICAgICAgZm9udC1zaXplOiAkc2l6ZS14eGw7XG4gICAgfVxuICB9XG4gIHRkOmZpcnN0LWNoaWxkIHtcbiAgICB3aWR0aDogNjBweDtcbiAgfVxufVxuXG4uc2VhcmNoLWZyZXEtbGlzdHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBwYWRkaW5nOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gIGNvbG9yOiAkYmxhY2s7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuXG4gIGxpOmhvdmVye1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktYmx1ZTE7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG4gIGxpLmRpc2FibGVkOmhvdmVye1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gIH1cbn1cblxuLnNlYXJjaC1mcmVxLWRpdntcbiAgbWF4LXdpZHRoOiAyNTBweDtcbiAgcGFkZGluZzogMCAyMHB4IDEwcHggMjBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGdyYXktZjI7XG4gIHNwYW57XG4gICAgZm9udC1zaXplOiAkc2l6ZS1zbWFsbDtcbiAgICBjb2xvcjogJGdyYXktNjQ7XG4gIH1cbn1cblxuLmRyb3Bkb3duLXNlYXJjaCwgLmRyb3Bkb3duLWxpYnJhcnl7XG4gID4gbGkgYnV0dG9uID4gc3BhbjpmaXJzdC1jaGlsZCwgPiBsaSBhID4gc3BhbjpmaXJzdC1jaGlsZHtcbiAgICBtYXJnaW4tbGVmdDogLTEwcHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICY6YmVmb3Jle1xuICAgICAgY29sb3I6IHVuc2V0O1xuICAgIH1cbiAgfVxuICAuaGFsLW9wdGlvbi1idXR0b24gPiBzcGFue1xuICAgIG1hcmdpbjogdW5zZXQgIWltcG9ydGFudDtcbiAgfVxuICBsaSAuYnRuLXNlY29uZGFyeTpmb2N1cywgbGkgLmJ0bi1zZWNvbmRhcnk6aG92ZXJ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktYmx1ZTE7XG4gIH1cbn1cbi5kcm9wZG93bi1saWJyYXJ5e1xuICBtYXgtd2lkdGg6IDQwMHB4O1xufVxuXG5sYWJlbFtmb3I9XCJzZWxlY3QtYWxsLWhlYWQtc2VhcmNoXCJdLCBsYWJlbFtmb3I9XCJzZWxlY3QtYWxsLWhlYWQtbGlicmFyeVwiXXtcbiAgdG9wOiAtOHB4O1xufVxuXG5cbiV0YWJsZS1teXNwYWNlIHtcbiAgLnNlY29uZGFyeS1zZWFyY2gge1xuICAgIGZvbnQtc2l6ZTogJHNpemUtc21hbGw7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICBpbnB1dCB7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG4gIC5yb3cge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgbWFyZ2luLXJpZ2h0OiB1bnNldDtcbiAgICBtYXJnaW4tbGVmdDogdW5zZXQ7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIH1cbiAgdGFibGUge1xuICAgIHRkOmxhc3QtY2hpbGQge1xuICAgICAgd2lkdGg6IDEwJTtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcbiAgICAuc2Vjb25kYXJ5LXNlYXJjaCB7XG4gICAgICBpbnB1dCB7XG4gICAgICAgIHdpZHRoOiA4MCU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnNlYXJjaC1kYXRle1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcbiAgICAudHlwZG9jIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbiNmYXZvcml0ZS11c2VyLXNlYXJjaGVzIHtcbiAgQGV4dGVuZCAldGFibGUtbXlzcGFjZTtcbiAgZGl2LnNlY3Rpb24tc2hhZG93LnNlY3Rpb24tY29udGVudCB7XG4gICAgYnV0dG9uIHNwYW57XG4gICAgICBjb2xvcjogJGdyYXktY2E7XG5cbiAgICAgICY6YmVmb3Jle1xuICAgICAgICBjb2xvcjogJGdyYXktY2E7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbiNmYXZvcml0ZS11c2Vye1xuICBAZXh0ZW5kICV0YWJsZS1teXNwYWNlO1xuICBkaXYuc2VjdGlvbi1zaGFkb3cuc2VjdGlvbi1jb250ZW50IHtcbiAgICAuc2Vjb25kYXJ5LXNlYXJjaCB7XG4gICAgICBmb250LXNpemU6ICRzaXplLXNtYWxsO1xuICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB9XG4gIH1cbiAgLnNvcnQtZ3JvdXB7XG4gICAgbWluLXdpZHRoOiA0MCU7XG4gIH1cbn1cblxuLm5vLWxpYnJhcnksIC5uby1zdWdnZXN0IHtcbiAgQGV4dGVuZCAlbm8tZGF0YTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4ubm8tc3VnZ2VzdCB7XG4gIG1pbi1oZWlnaHQ6IDQwMHB4O1xufVxuXG4ubm8tZmF2b3JpdGUge1xuICBAZXh0ZW5kICVuby1kYXRhO1xuICBoZWlnaHQ6IDMwMHB4O1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgIE1FUyBERVBPVFNcbioqKioqKioqKioqKioqKioqKioqKioqKiovXG4uc2VjdGlvbi10b29sc3tcbiAgYnV0dG9ue1xuICAgIC8vbWFyZ2luLXJpZ2h0OiAzMHB4O1xuICB9XG4gIHBhZGRpbmctcmlnaHQ6IDBweCAhaW1wb3J0YW50O1xuICBwYWRkaW5nLWxlZnQ6IDBweCAhaW1wb3J0YW50O1xufVxuXG4jTWVzZGVwb3RzIHtcbiAgQGV4dGVuZCAldGFibGUtbXlzcGFjZTtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XG4gICAgLnNlY29uZGFyeS1zZWFyY2gge1xuICAgICAgbWFyZ2luLXJpZ2h0OiB1bnNldDtcbiAgICB9XG4gICAgdGQ6bGFzdC1jaGlsZCB7XG4gICAgICB3aWR0aDogMCAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuXG4jZmF2b3JpdGUtdXNlciB7XG4gIC5zZWNvbmRhcnktc2VhcmNoIHtcbiAgICBtYXJnaW4tbGVmdDogdW5zZXQgIWltcG9ydGFudDtcbiAgICBpbnB1dCB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cblxufVxuXG4jbGlicmFyeS10YWJsZXtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAgIC5saWItdGl0bGUge1xuICAgICAgd2lkdGg6IDUxJTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDQwcHg7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgfVxuICB9XG4gIC5saXN0IHtcbiAgICB0ciB7XG4gICAgICB0ZDpmaXJzdC1jaGlsZCB7XG4gICAgICAgIHdpZHRoOiA2MHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oeHMpIHtcbiAgICAudHlwZG9jIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG5cbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICBEUk9QRE9XTi1NRU5VXG4qKioqKioqKioqKioqKioqKioqKioqKioqL1xuI2Zhdm9yaXRlLXVzZXIsICNmYXZvcml0ZS11c2VyLXNlYXJjaGVzLCAjY2Fyb3VzZWxEZXBvdHN7XG4gIC5kcm9wZG93bi1tZW51e1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRncmF5LWZhO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiAwcHg7XG4gICAgcGFkZGluZzogMTZweCAxNnB4IDZweCAxNnB4O1xuICB9XG4gIC5zZWN0aW9uLXRvb2xzIC5kcm9wZG93bi1tZW51e1xuICAgIHdpZHRoOiBtYXgtY29udGVudDtcbiAgICBsaXtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgfVxuICB9XG59XG4vLyBEaXNwbGF5IGF0IHRoZSBsZWZ0IHRoZSBzdWJtZW51XG4uZHJvcGRvd24tc3VibWVudSAuZHJvcGRvd24tbWVudSB7XG4gIHRvcDogMDtcbiAgbGVmdDogLTExNCU7XG4gIG1hcmdpbi1sZWZ0OiAuMXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiAuMXJlbTtcbn1cblxuLmRyb3Bkb3duLWFjdGlvbnMge1xuICBib3gtc2hhZG93OiAwcHggM3B4IDZweCAjMDAwMDAwMjk7XG4gIGJvcmRlcjogMCFpbXBvcnRhbnQ7XG4gIGxlZnQ6IC01MHB4IWltcG9ydGFudDtcbiAgbGkge1xuICAgICYuZGl2aWRlciB7XG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGdyYXktY2E7XG4gICAgICBtYXJnaW46IDVweCAyMHB4O1xuICAgIH1cbiAgICBhLCBidXR0b24ge1xuICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbCFpbXBvcnRhbnQ7XG5cbiAgICAgIGkge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLyoqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgTE9HT1xuKioqKioqKioqKioqKioqKioqKioqKi9cbi5ob21lLXN1Ym1pdHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC9hc3NldHMvaW1nL2hhbC1pbmRleC1iZy5wbmcpO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgLTUwcHggY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0IDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICR3aGl0ZTtcbiAgcGFkZGluZy10b3A6IDYwcHg7XG5cbiAgLmhvbWUtdGl0bGUge1xuICAgIGhlaWdodDogNDYwcHg7XG4gIH1cbiAgLmxvZ28taGFsLWhvbWUge1xuICAgIHdpZHRoOiA1MDBweDtcbiAgfVxuICAuaG9tZS1wcm9taXNlIHtcbiAgICBmb250LXNpemU6ICRzaXplLXh4bDtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIG1hcmdpbi10b3A6IDEyNXB4O1xuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDBweCkgYW5kIChtYXgtd2lkdGg6IDU3NnB4KSB7XG4gICAgICBtYXJnaW4tdG9wOiAwcHghaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICB9XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6IDE5MjBweCkge1xuICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDYwMHB4O1xuICB9XG59XG5cbiNkZXBvc2l0LWluZGV4LWxpbmt7XG4gIG1hcmdpbjogLTEyMHB4IGF1dG8gNTBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBhIHtcbiAgICBmb250LXNpemU6ICRzaXplLXh4bDtcbiAgICBwYWRkaW5nOjEwcHggMjVweDtcbiAgICAmOmhvdmVye1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICB9XG4gIH1cbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKipcbiAgICAgUFJFU0VOVEFUSU9OXG4qKioqKioqKioqKioqKioqKioqKioqL1xuI2hhbC1wcmVzZW50YXRpb24ge1xuICBtYXJnaW4tdG9wOiA1JTtcbiAgZGl2e1xuICAgIG1heC13aWR0aDogNDAwcHg7XG4gIH1cbiAgaSB7XG4gICAgY29sb3I6ICRwcmltYXJ5LWJsdWU7XG4gIH1cbiAgaDJ7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgZm9udC1zaXplOiAkc2l6ZS14bDtcbiAgICBjb2xvcjogJHByaW1hcnktYmx1ZTtcbiAgfVxuICB0YWJsZSB0cntcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAmOmZpcnN0LWNoaWxke1xuICAgICAgZm9udC1zaXplOiAkc2l6ZS14eHhsO1xuICAgIH1cbiAgICAmOm50aC1jaGlsZCgyKSB0ZHtcbiAgICAgIGhlaWdodDogMTAwcHg7XG4gICAgfVxuICAgICY6bGFzdC1jaGlsZHtcbiAgICAgIGZvbnQtc2l6ZTogJHNpemUtbGFyZ2U7XG4gICAgfVxuICB9XG4gIHAge1xuICAgIGNvbG9yOiAkZ3JheS0zNztcbiAgfVxufVxuI3Njcm9sbFRvIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwcHg7XG5cbiAgLmljb24tc2Nyb2xsOjpiZWZvcmUge1xuICAgIGNvbG9yOiAkcHJpbWFyeS1ibHVlO1xuICAgIGZvbnQtc2l6ZTogJHNpemUteHh4bDtcbiAgfVxufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKlxuICAgICBSRUNIRVJDSEVcbioqKioqKioqKioqKioqKioqKioqKiovXG5zZWN0aW9uLmhvbWUtc2VhcmNoe1xuICBiYWNrZ3JvdW5kOiAkcHJpbWFyeS1ibHVlO1xuICBwYWRkaW5nOiA1MHB4IDUwcHggMTAwcHg7XG5cbiAgI3NlYXJjaE5He1xuICAgIC5pbnB1dC1ncm91cCB7XG4gICAgICBpbnB1dCB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMzBweDtcbiAgICAgIH1cbiAgICAgIGJ1dHRvbiB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDMwcHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaW5wdXQ6Zm9jdXN7XG4gICAgICBjb2xvcjogYmxhY2sgIWltcG9ydGFudDtcbiAgICAgIGJvcmRlci1jb2xvcjogJHByaW1hcnktYmx1ZTEgIWltcG9ydGFudDtcblxuICAgICAgJjo6cGxhY2Vob2xkZXJ7XG4gICAgICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIH1cbiAgICB9XG5cblxuICAgIC5pbnB1dC1ncm91cCB7XG4gICAgICBwYWRkaW5nOiA1MHB4IDIwJSA7XG5cbiAgICAgIC5mb3JtLWNvbnRyb2x7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgYm9yZGVyOiAycHggc29saWQgJHByaW1hcnktYmx1ZTMgIWltcG9ydGFudDtcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiAwIWltcG9ydGFudDtcbiAgICAgICAgaGVpZ2h0OiA3NXB4O1xuICAgICAgICBmb250LXNpemU6ICRzaXplLWxhcmdlO1xuICAgICAgICAmOnBsYWNlaG9sZGVyLXNob3due1xuICAgICAgICAgIGNvbG9yOiAkZ3JheS1jYTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgYnV0dG9ue1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICAgICAgYm9yZGVyOiAycHggc29saWQgJHByaW1hcnktYmx1ZTMgIWltcG9ydGFudDtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDAhaW1wb3J0YW50O1xuICAgICAgICAuaWNvbi1zZWFyY2gge1xuICAgICAgICAgIGZvbnQtc2l6ZTogNDBweDtcbiAgICAgICAgICBjb2xvcjogJHByaW1hcnktYmx1ZTE7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLnNlYXJjaC1zcGlubmVyIHtcbiAgICAgICAgdG9wOiA3N3B4O1xuICAgICAgICByaWdodDogaW5oZXJpdDtcbiAgICAgICAgei1pbmRleDogMTA7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiA3cHg7XG4gICAgICB9XG5cbiAgICB9XG4gIH1cblxuICAud2hpdGVfYm9sZHtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIGZvbnQtc2l6ZTogJHNpemUteHhsO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAmLmJyb3dzZS1kb21haW4ge1xuICAgICAgZm9udC1zaXplOiAkc2l6ZS14bDtcbiAgICB9XG4gICAgc3BhbntcbiAgICAgIGNvbG9yOiAkcHJpbWFyeS1vcmFuZ2U7XG4gICAgICBmb250LXNpemU6IGxhcmdlcjtcbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgfVxuICB9XG5cbiAgI3dyYXBwZXJEb21haW57XG4gICAgbWFyZ2luOiAzMHB4IDIwJTtcbiAgICBsaW5lLWhlaWdodDogNDBweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICBhIHtcbiAgICAgIGZvbnQtc2l6ZTogJHNpemUteGw7XG4gICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgbWFyZ2luLXJpZ2h0OiA4cHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiA4cHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1ibHVlMTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgIHBhZGRpbmc6IDVweCAxMHB4O1xuICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB9XG4gICAgJjpob3ZlciA+IGEge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktYmx1ZS1ob3ZlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxufVxuXG5zZWN0aW9ue1xuICBtYXJnaW4tYm90dG9tOiAxMDRweDtcbn1cblxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XG4gIC5ob21lLXByb21pc2Uge1xuICAgIGxpbmUtaGVpZ2h0OiBub3JtYWwhaW1wb3J0YW50O1xuICB9XG4gIC5ob21lLXN1Ym1pdCAuaG9tZS10aXRsZSB7XG4gICAgaGVpZ2h0OiAyMDBweDtcbiAgfVxuICAuaG9tZS1zdWJtaXQgPiBhcnRpY2xle1xuICAgIG1hcmdpbi10b3A6IDIwMHB4O1xuICB9XG4gICNkZXBvc2l0LWluZGV4LWxpbmsge1xuICAgICBtYXJnaW4tdG9wOjA7XG4gICB9XG4gIHNlY3Rpb24uaG9tZS1zZWFyY2gge1xuICAgIHBhZGRpbmctbGVmdDowO1xuICAgIHBhZGRpbmctcmlnaHQ6MDtcblxuICAgICNzZWFyY2hORyAuaW5wdXQtZ3JvdXAge1xuXG4gICAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuXG4gICAgICBidXR0b24ge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgICAjd3JhcHBlckRvbWFpbiB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgfVxuICB9XG5cbn1cblxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKXtcbiAgLyojZGVwb3NpdC1pbmRleC1saW5re1xuICAgIHBhZGRpbmc6IDVweDtcbiAgfSovXG4gICNzY3JvbGxUb3tcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcbiAgI3RzcGFydGljbGVzLCAjdHNwYXJ0aWNsZXMye1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICBXSURHRVRcbioqKioqKioqKioqKioqKioqKioqKiovXG5cbi5zZWN0aW9uLXdpZGdldFxuICB7XG4gIG1hcmdpbjogMCA5LjUlO1xuICAud2lkZ2V0IHtcbiAgICBib3gtc2hhZG93OiAwcHggM3B4IDE1cHggIzAwMDAwMDI5O1xuICAgIC53aWRnZXQtaGVhZGVye1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktYmx1ZTtcbiAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICBwYWRkaW5nLXRvcDogMTBweDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAxMHB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gICAgaDMudGl0bGUge1xuICAgICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgIH1cbiAgfVxufVxuXG4vKiBDbG91ZCAqL1xuLndpZGdldC1jbG91ZCB7XG4gIC5rZXl3b3JkIHtcbiAgICB0ZXh0LWFsaWduOiBqdXN0aWZ5O1xuICAgIHBhZGRpbmctcmlnaHQ6IDElO1xuICAgIHBhZGRpbmctbGVmdDogMSU7XG4gIH1cbiAgLmtleXdvcmQtMSB7IGZvbnQtc2l6ZTogOHB4O31cbiAgLmtleXdvcmQtMiB7IGZvbnQtc2l6ZTogOXB4O31cbiAgLmtleXdvcmQtMyB7IGZvbnQtc2l6ZTogMTBweDt9XG4gIC5rZXl3b3JkLTQgeyBmb250LXNpemU6IDEycHg7fVxuICAua2V5d29yZC01IHsgZm9udC1zaXplOiAxNHB4O31cbiAgLmtleXdvcmQtNiB7IGZvbnQtc2l6ZTogMTZweDt9XG4gIC5rZXl3b3JkLTcgeyBmb250LXNpemU6IDE4cHg7fVxuICAua2V5d29yZC04IHsgZm9udC1zaXplOiAyMHB4O31cbiAgLmtleXdvcmQtOSB7IGZvbnQtc2l6ZTogMjJweDt9XG4gIC5rZXl3b3JkLTEwIHsgZm9udC1zaXplOiAyNHB4O31cbn1cblxuLyogRmVlZCAqL1xuLndpZGdldC1mZWVkc3tcbiAgd2lkdGg6IDEwMCU7XG5cbiAgYnV0dG9uLmljb24tZHJvcF9kb3duIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICB9XG5cbiAgLmRhdGVGZWVkIHtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgfVxuXG4gIC50aXRsZUZlZWQge1xuICAgIGNvbG9yOiAkcHJpbWFyeS1ibHVlMztcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBtYXJnaW4tbGVmdDogNDVweDtcbiAgfVxuXG4gIC5mZWVkLml0ZW17XG4gICAgc3BhbltjbGFzc149J2ljb24tJ117XG4gICAgICBmb250LXNpemU6IC41NXJlbTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGNvbG9yOiAkcHJpbWFyeS1ibHVlMTtcbiAgICB9XG4gICAgLmNhcmQtaGVhZGVyIGJ1dHRvbiB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB0ZXh0LWFsaWduOiB1bnNldDtcbiAgICB9XG4gICAgYnV0dG9uLmRpc3BsYXl7XG4gICAgICBib3JkZXI6bm9uZTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIH1cbiAgfVxuXG4gIC5saW5rIHtcbiAgICBzcGFuIHtcbiAgICAgIGNvbG9yOiAkdG9vbHMtc29ydDtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIH1cbiAgICAuYnRuLWxpbmsgc3BhbltjbGFzc149XCJpY29uLVwiXXtcbiAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgICAgZm9udC1zaXplOiAkc2l6ZS1yZWd1bGFyO1xuICAgICAgY29sb3I6ICR0b29scy1zb3J0O1xuICAgIH1cbiAgICBhOmhvdmVyLCBhOmhvdmVyIHNwYW4sIGE6aG92ZXIgcGF0aCwgYTpob3ZlciBzcGFuW2NsYXNzXj1cImljb24tXCJdICB7XG4gICAgICBjb2xvcjogJHByaW1hcnktYmx1ZTM7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgfVxuICAgICYucmlnaHQge1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xuICAgIH1cbiAgfVxufVxuXG4uc2VjdGlvbi13aWRnZXQgLmNvbC1zbS0xMiAud2lkZ2V0LWNvbnRlbnR7XG4gIG1heC1oZWlnaHQ6IDczOXB4O1xufVxuLnNlY3Rpb24td2lkZ2V0IC5jb2wtc20tMTI6Zmlyc3Qtb2YtdHlwZSA+IGRpdltpZF49XCJ3aWRnZXQtXCJde1xuICAud2lkZ2V0LWNvbnRlbnR7XG4gICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgfVxufVxuXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pe1xuICAuY29sLXNtLTEye1xuICAgIC53aWRnZXQud2lkZ2V0e1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICB9XG4gIH1cbn1cblxuLmxhYmVsLmxhYmVsLWNvbnRyYXN0e1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGNvbG9yOiAkcHJpbWFyeS1vcmFuZ2U7XG59XG4ud2lkZ2V0LWhlYWRlci5ibG9jay5wYi0yIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGNvbG9yOiAkYmxhY2s7XG59XG4ubGlzdC1kZXBvc2l0e1xuICBwYWRkaW5nOiAxMHB4IDUwcHg7XG4gIC5tZWRpYXtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRncmF5LWNhO1xuICAgIHBhZGRpbmctYm90dG9tOiAxMHB4O1xuICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgJjpob3ZlcntcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRob3ZlcjtcbiAgICB9XG4gICAgLm1lZGlhLWJvZHkgYXtcbiAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAmOmhvdmVye1xuICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLnNlYXJjaC13aWRnZXR7XG4gIG1hcmdpbi1ib3R0b206IDUwcHg7XG4gIHBhZGRpbmc6IDE2MHB4O1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCAjMjkyMDYzRUIgMCUsICMzMzdBQjdFNiAxMDAlKSAwJSAwJSBuby1yZXBlYXQgcGFkZGluZy1ib3g7XG4gIG1hcmdpbi10b3A6IDUwcHg7XG59XG4uc2VhcmNoLWNvbnRhaW5lcntcbiAgbWFyZ2luLWJvdHRvbTogNTUwcHg7XG4gIC53aWRnZXQud2lkZ2V0e1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICB9XG59XG4jc2hlcnBhe1xuICBtYXJnaW46IDMwcHg7XG59XG5cbiNieS1wdWJsaXNoZXIsICNieS1qb3VybmFse1xuXG4gIGlucHV0e1xuICAgIGZsZXg6IDEgMSAwJSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmJ0bi1zdWNjZXNze1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB3aWR0aDogNDBweDtcbiAgICBzcGFuLmljb24tc2VhcmNoOjpiZWZvcmV7XG4gICAgICBjb2xvcjogJHdoaXRlO1xuICAgIH1cbiAgfVxufVxuXG4uc3dpdGNoICsgLnBsLTMge1xuICBmb250LXNpemU6ICRzaXplLXhzbWFsbDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi5rZXlfbnVtYmVyc3tcbiAgbGlzdC1zdHlsZTogbm9uZTtwb3NpdGlvbjogcmVsYXRpdmU7aGVpZ2h0OiA3MHB4O3BhZGRpbmctdG9wOiA4cHg7XG59XG4ua2V5X251bWJlcnMgPiBkaXYge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxvYXQ6IGxlZnQ7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi5rZXlfbnVtYmVycyA+IGRpdiA+IHNwYW4ge1xuICBmb250LXNpemU6IDE1cHg7Zm9udC13ZWlnaHQ6IGJvbGQ7XG59XG4ua2V5X251bWJlcnMgPiBkaXYgPiBzdHJvbmcge1xuICBmb250LXNpemU6IDEwcHg7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nLXRvcDogMTVweDtcbn0iLCIvKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgIEdFTkVSQUwgSEVBREVSXG4qKioqKioqKioqKioqKioqKioqKioqL1xuXG4ubmF2cyB7XG4gIHotaW5kZXg6IDEwMDAwO1xuICB3aWR0aDogMTAwJTtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHRyYW5zaXRpb246IGFsbCAzMDBtcyBlYXNlO1xuXG4gICYuc2Nyb2xsLXVwe1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxuICAmLnNjcm9sbC1kb3due1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7XG4gIH1cbn1cblxuXG5cbm5hdi5uYXZiYXJ7XG4gICYuaGVhZGVyIHtcbiAgICBoZWlnaHQ6IDQwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogdG9wIGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQ6ICRwcmltYXJ5LWJsdWU7XG4gIH1cbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIC8qYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktYmx1ZTsqL1xuICBjb2xvcjogJHdoaXRlO1xuICBtaW4taGVpZ2h0OiA2MHB4O1xuXG4gIC5uYXZiYXItYnJhbmQubG9nby1IQUx7XG4gICAgbWFyZ2luLWxlZnQ6IDMwcHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuXG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgvYXNzZXRzL2ltZy9oYWwtbG9nby1oZWFkZXIuZ2lmKTtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogNDBweCA0MHB4O1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTFweCA0cHg7XG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXG4gICAgICBpbWc6Zmlyc3QtY2hpbGQge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgfVxuICAgIH1cblxuXG4gIH1cbiAgLyogQW5pbWF0aW9uIHBvdXIgbGUgbG9nbywgZmluIGRlIGZldWlsbGUgKi9cbiAgLyoubmF2YmFyLWJyYW5kLmxvZ28tSEFMOmhvdmVye1xuICAgIC13ZWJraXQtYW5pbWF0aW9uOiBzd2luZyAxcyBlYXNlO1xuICAgIGFuaW1hdGlvbjogc3dpbmcgMXMgZWFzZTtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IDE7XG4gICAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogMTtcbiAgICBjb2xvcjogJHdoaXRlO1xuICB9Ki9cbiAgYnV0dG9uLmJ0bi1zZWNvbmRhcnl7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgfVxufVxuI25hdi1zZXJ2aWNlcyB7XG4gIC5hZG1pbmlzdHJhdGlvbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG59XG5cblxuXG4ubmF2Lm5hdmJhci1uYXYubWwtYXV0byBsaXtcbiAgbWFyZ2luLXJpZ2h0OiA3MHB4O1xuICBsaW5lLWhlaWdodDogMTAwJTtcbiAgcGFkZGluZzogMDtcblxuICAmOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgfVxuICBhe1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gIH1cbiAgYnV0dG9uOm5vdCgubGlzdC1ncm91cC1pdGVtKXtcbiAgICBwYWRkaW5nOiAwcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyOiBub25lO1xuICB9XG5cbiAgLmJ0bi1hZG1pbiB7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBoZWlnaHQ6IGluaGVyaXQ7XG4gICAgcGFkZGluZy1yaWdodDogMTVweCFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1sZWZ0OiAxNXB4IWltcG9ydGFudDtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuXG4gICAgJi5idG4tYWN0aXZlLCAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2hlYWRlcjtcbiAgICB9XG5cbiAgICAuYnRuLWljb24ge1xuICAgICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgfVxuXG4gICAgLmJ0bi1uYW1lIHtcbiAgICAgIGZvbnQtc2l6ZTogMC45cmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgfVxuICB9XG5cbiAgLmJ0bi1hZG1pblthcmlhLWV4cGFuZGVkPVwidHJ1ZVwiXXtcbiAgICBjb2xvcjogJGJsYWNrO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRwdXJwbGUtZXh0cmEtbGlnaHQ7XG4gIH1cbn1cbi5za2lwLWxpbmstdG9wOmZvY3Vze1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktYmx1ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogY2FsYygjeyRzaXplLXh4bH0gKyAxLjM1cmVtKTtcbiAgei1pbmRleDogMTA0MDtcbiAgZm9udC1zaXplOiAkc2l6ZS14eGw7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjb2xvcjogJHdoaXRlO1xuICBjbGlwLXBhdGg6IG5vbmU7XG59XG5cbi5zdWItaGVhZGVyIHtcbiAgYm94LXNoYWRvdzogMHB4IDNweCA2cHggIzAwMDAwMDI5O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2hlYWRlciAhaW1wb3J0YW50O1xuICAuc2l0ZS1lbnYge1xuICAgIG1hcmdpbi1sZWZ0OiAzMHB4O1xuICAgIGxpbmUtaGVpZ2h0OiA1MHB4O1xuICB9XG59XG4uZGVwb3NpdC1oZWFkZXJ7XG4gIGhlaWdodDogNzBweDtcbiAgd2lkdGg6IDEwMCU7XG4gIHotaW5kZXg6IDI7XG59XG4uZGVwb3NpdC1oZWFkZXIuZml4ZWR7XG4gIHRvcDogMDtcbiAgcG9zaXRpb246IGZpeGVkO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKlxuICAgQ0hPSVggREVTIExBTkdVRVNcbiAgICBFVCBESVNDSVBMSU5FU1xuKioqKioqKioqKioqKioqKioqKioqKi9cbiNmb3JtTGFuZ3tcbiAgbWluLXdpZHRoOiA3MHB4O1xuICB3aWR0aDogNzBweDtcblxuICAubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpob3ZlcntcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cbn1cbiNkaXNjaXBsaW5lTGlzdCB1bCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRzaGVhZGVyO1xuICBvcGFjaXR5OiAwLjk0O1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBib3JkZXI6IG5vbmU7XG4gIGJveC1zaGFkb3c6IDBweCAzcHggNnB4ICRib3gtc2hhZG93O1xuICB0b3A6IDM1cHg7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqXG4gICAgICBVVElMSVNBVEVVUlxuKioqKioqKioqKioqKioqKioqKioqKi9cblxuLmhlYWRlciAubWVudS1sYW5nLCAubWVudS1jb25uZWN0LCAubWVudS1vcmNpZC1leHR7XG4gIGJvcmRlci1yYWRpdXM6MDtcbiAgdG9wOjQ1cHg7XG4gIGJveC1zaGFkb3c6IDBweCAzcHggNnB4ICRib3gtc2hhZG93O1xuXG4gIC5saXN0LWdyb3VwLWl0ZW17XG4gICAgYm9yZGVyOiAwO1xuICAgIGNvbG9yOiAkYmxhY2shaW1wb3J0YW50O1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1hcmlhbDtcblxuICAgICY6aG92ZXJ7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHVycGxlLWV4dHJhLWxpZ2h0O1xuXG4gICAgICBbY2xhc3NePSdpY29uLSdde1xuICAgICAgICBjb2xvcjogJHByaW1hcnktYmx1ZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOmZpcnN0LWNoaWxkOmFmdGVyIHtcbiAgICAgIEBpbmNsdWRlIGFycm93LXRvcCgnNXB4Jyk7XG4gICAgfVxuICB9XG4gIC8qIFRyaWFuZ2xlIGF1IGRlc3N1cyBkZSBsYSBsaXN0ZSB1dGlsaXNhdGV1ciAqL1xuICBocntcbiAgICBtYXJnaW46IDEwcHg7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogJGdyYXktNzA7XG4gIH1cblxuICAvKiBOb3RpZmljYXRpb25zICovXG4gICYubm90aWZ7XG4gICAgd2lkdGg6IDU4OXB4O1xuICB9XG5cbn1cblxuQG1peGluIGRyb3Bkb3duLWNvbm5lY3RlZC1tZW51KCl7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czowO1xuICB0b3A6NDVweDtcbiAgYm94LXNoYWRvdzogMHB4IDNweCA2cHggJGJveC1zaGFkb3c7XG5cbiAgLmxpc3QtZ3JvdXAtaXRlbXtcbiAgICBib3JkZXI6IDA7XG4gICAgY29sb3I6ICRibGFjayFpbXBvcnRhbnQ7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LWFyaWFsO1xuXG4gICAgc3BhbiB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB3aWR0aDogMzBweDtcbiAgICB9XG5cbiAgICAmOmhvdmVye1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHB1cnBsZS1leHRyYS1saWdodDtcblxuICAgICAgW2NsYXNzXj0naWNvbi0nXXtcbiAgICAgICAgY29sb3I6ICRwcmltYXJ5LWJsdWU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5oZWFkZXIgLmNvbm5lY3RlZC1tZW51IHtcbiAgQGluY2x1ZGUgZHJvcGRvd24tY29ubmVjdGVkLW1lbnU7XG4gIHdpZHRoOiAyMjBweDtcblxuICAubGlzdC1ncm91cC1pdGVte1xuICAgICYjbG9nLW91dHtcbiAgICAgIGNvbG9yOiAkc2Vjb25kYXJ5LWVycm9yIWltcG9ydGFudDtcbiAgICAgICY6aG92ZXJbY2xhc3NePSdpY29uLSdde1xuICAgICAgICBjb2xvcjogJHNlY29uZGFyeS1lcnJvciFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjpmaXJzdC1jaGlsZDphZnRlciB7XG4gICAgICBAaW5jbHVkZSBhcnJvdy10b3AoJzIzcHgnKTtcbiAgICB9XG4gIH1cblxuICAvKiBUcmlhbmdsZSBhdSBkZXNzdXMgZGUgbGEgbGlzdGUgdXRpbGlzYXRldXIgKi9cbiAgaHJ7XG4gICAgbWFyZ2luOiAxMHB4O1xuICAgIGJvcmRlci10b3AtY29sb3I6ICRncmF5LTcwO1xuICB9XG5cbiAgLyogTm90aWZpY2F0aW9ucyAqL1xuICAmLm5vdGlme1xuICAgIHdpZHRoOiA1ODlweDtcbiAgfVxufVxuXG4jbm90aWZzIC5kcm9wZG93bi10b2dnbGU6OmFmdGVye1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ubmF2Lm5hdmJhci1uYXYubWwtYXV0byAuaWNvbi1ub3RpZmljYXRpb25ze1xuICBjb2xvcjogJHdoaXRlO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgQURNSU5JU1RSQVRJT05cbioqKioqKioqKioqKioqKioqKioqKiovXG5cbi5oZWFkZXIgLmFkbWluaXN0cmF0aW9uLW1lbnUge1xuICBAaW5jbHVkZSBkcm9wZG93bi1jb25uZWN0ZWQtbWVudTtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctdG9wOiAwO1xuICByaWdodDogYXV0bztcbiAgbGVmdDogYXV0bztcblxuICAucm9sZXMge1xuICAgIHBhZGRpbmc6IDUlO1xuICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICAgIHBhZGRpbmctdG9wOiAyMHB4O1xuICAgIG1hcmdpbjogMDtcbiAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHB1cnBsZS1leHRyYS1saWdodDtcbiAgICBmb250LXNpemU6ICRzaXplLXNtYWxsO1xuXG4gICAgc3BhbiB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHVycGxlO1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIHBhZGRpbmc6IDVweDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXJnaW46IDIlO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cbiAgfVxuXG4gIC5kcm9wZG93bi1tZW51IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXgtd2lkdGg6IDMwMHB4O1xuICB9XG5cbiAgLypsaXN0LWdyb3VwLWl0ZW0ge1xuICAgIC5kcm9wZG93bi10b2dnbGUge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIH1cbiAgfSovXG5cbiAgLmRyb3Bkb3duLXRvZ2dsZTpob3ZlciAuZHJvcGRvd24tbWVudSB7XG4gICAgZGlzcGxheTpibG9jaztcbiAgfVxuXG4gIC5saXN0LWdyb3VwLWl0ZW0tYXJyb3dlZHtcbiAgICAmOmZpcnN0LWNoaWxkOmFmdGVyIHtcbiAgICAgIEBpbmNsdWRlIGFycm93LWxlZnQoJzEwMHB4Jyk7XG4gICAgfVxuICB9XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqXG4gICAgICBTT1VTLUhFQURFUlxuKioqKioqKioqKioqKioqKioqKioqKi9cbiNzZWNvbmQtbmF2YmFye1xuICB3aWR0aDogMTAwJTtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cbiNkaXNjaXBsaW5lTGlzdHtcbiAgdG9wOiAxMHB4O1xuICBidXR0b257XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGNvbG9yOiAkcHJpbWFyeS1ibHVlO1xuXG4gICAgc3BhbntcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgY29sb3I6ICRwcmltYXJ5LWJsdWU7XG4gICAgfVxuICB9XG4gIC5kcm9wZG93bi10b2dnbGU6OmFmdGVye1xuICAgIGJvcmRlci10b3A6IC41ZW0gc29saWQ7XG4gICAgYm9yZGVyLXJpZ2h0OiAuNWVtIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1sZWZ0OiAuNWVtIHNvbGlkIHRyYW5zcGFyZW50O1xuICB9XG4gIHVsIGxpe1xuICAgIG1hcmdpbi1ib3R0b206IDI2cHg7XG4gICAgbWFyZ2luLWxlZnQ6IDMwcHg7XG5cbiAgICBhe1xuICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIH1cbiAgfVxuICB1bHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2hlYWRlcjtcbiAgICBvcGFjaXR5OiAwLjk0O1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gIH1cbn1cbi8qIEJvdXRvbiBkw6lwb3NlciAqL1xuI3NzaGVhZGVyLXN1Ym1pdHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gIHBhZGRpbmc6IDIwcHggMThweCAxOHB4IDE4cHg7XG4gIG1hcmdpbi1yaWdodDogMDtcblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcbiAgICBtYXJnaW4tbGVmdDogdW5zZXQ7XG4gICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cblxuXG4gIC8qIFBvdXIgZmlyZWZveCAqL1xuICAvL2Rpc3BsYXk6IHJ1Ynk7XG4gIGEge1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbn1cbi8qIEJhcnJlIGRlIHJlY2hlcmNoZSAqL1xuI3NzaGVhZGVyLWluZm8ge1xuICBsaW5lLWhlaWdodDogaW5pdGlhbDtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICB3aWR0aDogMTUlO1xufVxuI3NlYXJjaEhlYWRlckxpc3R7XG4gIG1heC1oZWlnaHQ6IDQ1cHg7XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIGZsb2F0OiByaWdodDtcbiAgd2lkdGg6IDUwJTtcbiAgbWluLXdpZHRoOiA3MDBweDtcblxuICAjY29sbGFwc2VTZWFyY2h7XG4gICAgdG9wOiA2NXB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB6LWluZGV4OiAxMDtcbiAgfVxuICAjYWR2U2VhcmNoSGVhZGVyLCAjc29sclNlYXJjaEhlYWRlcntcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgYm94LXNoYWRvdzogMHB4IDVweCA2cHggJGJveC1zaGFkb3c7XG4gICAgcGFkZGluZzogMjBweCA2MHB4IDEwMHB4IDYwcHg7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XG4gICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgLmJ0bi1oaWRlLXNob3cge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAgICAgICAgIGJvdHRvbTogNDBweCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xuICAgICAgLmJ0bi1oaWRlLXNob3cge1xuICAgICAgICBib3R0b206IDAgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG4gICAgLnJvd3tcbiAgICAgIG1hcmdpbjogMDtcbiAgICB9XG4gICAgaDN7XG4gICAgICBjb2xvcjogJGdyYXktY2E7XG4gICAgICBmb250LXNpemU6ICRzaXplLWxhcmdlO1xuICAgIH1cbiAgICAubXQtMyBidXR0b257XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJvdHRvbTogNjVweDtcbiAgICAgICY6aG92ZXJ7XG4gICAgICAgIGNvbG9yOiAkcHJpbWFyeS1ibHVlMS1kaXNhYmxlZDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiNzb2xyU2VhcmNoSGVhZGVye1xuICB0ZXh0YXJlYXtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgbWluLWhlaWdodDogMjk1cHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJHByaW1hcnktYmx1ZTM7XG4gICAgY29sb3I6ICRibGFjaztcbiAgfVxuICBmb3Jte1xuICAgIGRpdntcbiAgICAgIG1pbi13aWR0aDogbWF4LWNvbnRlbnQ7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICByaWdodDogNjBweDtcbiAgICAgIGJvdHRvbTogNTBweDtcbiAgICAgIGJ1dHRvbntcbiAgICAgICAgcG9zaXRpb246IGluaXRpYWw7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgc3Bhbi5pY29uLXNlYXJjaHtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgICY6OmJlZm9yZXtcbiAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG59XG4jc3VibWl0LWJ1dHRvbntcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLWxlZnQ6IDUwcHg7XG4gIGJvcmRlcjogbm9uZTtcbn1cblxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAuYm9yZGVyLXItbGcge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICRibGFjaztcbiAgfVxufVxuXG5cbi8qKioqKioqKioqKioqKioqKioqKioqXG4gICAgIFBPUlRBSUwgTUVOVVxuKioqKioqKioqKioqKioqKioqKioqKi9cbmhlYWRlcntcbiAgaW1ne1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG4gICAgaGVpZ2h0OiAyNTlweDtcbiAgfVxuXG4gICNwb3J0YWlsTWVudSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzM2Mzg0MjtcbiAgICBoZWlnaHQ6IDYwcHg7XG4gICAgbGkge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAzNHB4O1xuICAgICAgbWFyZ2luLWxlZnQ6IDM0cHg7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgICAgcGFkZGluZzogMTBweCAxNXB4O1xuXG4gICAgICAmOmhvdmVye1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICB9XG4gICAgfVxuICAgIGxpLmFjdGl2ZXtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNCN0I3Qjc7XG4gICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgfVxuICB9XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqXG4gICAgICBSRVNQT05TSVZFXG4qKioqKioqKioqKioqKioqKioqKioqL1xuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKXtcbiAgLyogU3R5bGUgcG91ciBsZSBoYW1idXJnZXJcbiAgICBNYW51ZWwsIHBhcyBkJ3V0aWxpc2F0aW9uIGR1IFNWRyBkZSBib290c3RyYXBcbiAgICBwb3VyIGZhaXJlIGwnYW5pbWF0aW9uXG4gICAgU3R5bGUgZHUgZMOpcGFydCBhdmVjIGxlIHRpbWUgZGUgbCdhbmltYXRpb24qL1xuICAuaGFtYnVyZ2Vye1xuICAgIHdpZHRoOiAzMHB4O1xuICAgIGhlaWdodDogMjBweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgIHRyYW5zaXRpb246IC41cyBlYXNlLWluLW91dDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICAgc3BhbntcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgaGVpZ2h0OiAxLjVweDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICAgIHRyYW5zaXRpb246IC40cyBlYXNlLWluLW91dDtcbiAgICAgICY6Zmlyc3QtY2hpbGR7XG4gICAgICAgIHRvcDogMDtcbiAgICAgIH1cbiAgICAgICY6bnRoLWNoaWxkKDIpe1xuICAgICAgICB0b3A6IDEwcHg7XG4gICAgICB9XG4gICAgICAmOmxhc3QtY2hpbGR7XG4gICAgICAgIHRvcDogMjBweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLyogRGlzcG9zaXRpb24gZHUgaGFtYnVyZ2VyIGxvcnNxdWUgY2VsdWktY2kgZXN0IG91dmVydFxuICAgICBTdHlsZSBlbiBmb3JtZSBkZSBjcm9peCBhdmVjIGRpc3Bhcml0aW9uIGR1IHNwYW4gZHUgbWlsaWV1ICovXG4gIC5oYW1idXJnZXIub3BlbntcbiAgICBzcGFue1xuICAgICAgJjpmaXJzdC1jaGlsZHtcbiAgICAgICAgdG9wOiAxMXB4O1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxMzVkZWcpO1xuICAgICAgfVxuICAgICAgJjpudGgtY2hpbGQoMil7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIGxlZnQ6IC02MHB4O1xuICAgICAgfVxuICAgICAgJjpsYXN0LWNoaWxke1xuICAgICAgICB0b3A6IDExcHg7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC0xMzVkZWcpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAvKiBUb2dnbGUtbWVudSBhdmVjIHVuZSBib3JkdXJlIGF1LWRlc3N1cyBldCB1biBiYWNrZ3JvdW5kKi9cbiAgI25hdi1zZXJ2aWNlc3tcbiAgICB6LWluZGV4OiA0O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWJsdWU7XG4gICAgcGFkZGluZy1sZWZ0OiAzNXB4O1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkc2hlYWRlcjtcbiAgICBtYXJnaW4tdG9wOiAtNXB4O1xuXG4gICAgLmFkbWluaXN0cmF0aW9uIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgICNmb3JtTGFuZyB7XG4gICAgICB3aWR0aDogdW5zZXQ7XG4gICAgfVxuXG4gICAgbGkubmF2LWl0ZW0ge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuXG4gICAgLmFkbWluaXN0cmF0aW9uLW1lbnUsIC5tZW51LWxhbmcsIC5jb25uZWN0ZWQtbWVudSwgLm1lbnUtb3JjaWQtZXh0IHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHVuc2V0O1xuXG4gICAgICAuZHJvcGRvd24tbWVudSB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBib3JkZXItdG9wOiBzb2xpZCAxcHggJGdyYXktNzA7XG4gICAgICAgIGJvcmRlci1ib3R0b206IHNvbGlkIDFweCAkZ3JheS03MDtcbiAgICAgICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICAgIH1cblxuICAgICAgZGl2LCBidXR0b24sIGEge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnNldDtcbiAgICAgICAgY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmRyb3Bkb3duLW1lbnV7XG4gICAgICBtYXJnaW4tbGVmdDogLTIlO1xuICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgIC5yb2xlcyB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBzcGFuIHtcbiAgICAgICAgICBtYXJnaW46IDElO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLm5hdi5uYXZiYXItbmF2Lm1sLWF1dG8gLmRyb3Bkb3duLW1lbnUgLmxpc3QtZ3JvdXAtaXRlbTpmaXJzdC1jaGlsZDo6YWZ0ZXJ7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAubmF2Lm5hdmJhci1uYXYubWwtYXV0byB7XG4gICAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4gICAgbGl7XG4gICAgICBwYWRkaW5nOiAxMHB4IDA7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgfVxuICAgIC5idG4tYWRtaW4ge1xuICAgICAgcGFkZGluZy10b3A6IDIlO1xuICAgICAgYm9yZGVyLXJhZGl1czogMC4yNXJlbSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gICN1c2VyTGlzdCB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICB9XG59XG5cblxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHhzKXtcbiAgLmhhbC1tYWluLWFkdnNlYXJjaC1idXR0b257XG4gICAgbGVmdDogOTAlO1xuICB9XG5cbiAgLm5hdi5uYXZiYXItbmF2Lm1sLWF1dG97XG4gICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpe1xuICAjc3NoZWFkZXItaW5mbyB7XG4gICAgbGluZS1oZWlnaHQ6IDUwcHg7XG4gICAgd2lkdGg6IGluaXRpYWw7XG4gIH1cbiAgI3NlYXJjaEhlYWRlckxpc3Qge1xuICAgIHdpZHRoOiA5MCUgIWltcG9ydGFudDtcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICBtaW4td2lkdGg6IHVuc2V0O1xuICB9XG59XG5cbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtb25seShsZyl7XG4gICNkaXNjaXBsaW5lTGlzdHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gICNzc2hlYWRlci1pbmZvIHtcbiAgICB3aWR0aDogMTAlO1xuICB9XG4gICNzZWFyY2hIZWFkZXJMaXN0IHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIHdpZHRoOiA3MCU7XG4gICAgbWluLXdpZHRoOiB1bnNldDtcbiAgfVxufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKlxuICAgIEFOSU1BVElPTiBQT1VSXG4gICAgICBMRSBMT0dPXG4qKioqKioqKioqKioqKioqKioqKioqL1xuQC13ZWJraXQta2V5ZnJhbWVzIHN3aW5nXG57XG4gIDE1JVxuICB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNXB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNXB4KTtcbiAgfVxuICAzMCVcbiAge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01cHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNXB4KTtcbiAgfVxuICA1MCVcbiAge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDNweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDNweCk7XG4gIH1cbiAgNjUlXG4gIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtM3B4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTNweCk7XG4gIH1cbiAgODAlXG4gIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgycHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgycHgpO1xuICB9XG4gIDEwMCVcbiAge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgfVxufVxuQGtleWZyYW1lcyBzd2luZ1xue1xuICAxNSVcbiAge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDVweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDVweCk7XG4gIH1cbiAgMzAlXG4gIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNXB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTVweCk7XG4gIH1cbiAgNTAlXG4gIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgzcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgzcHgpO1xuICB9XG4gIDY1JVxuICB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTNweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0zcHgpO1xuICB9XG4gIDgwJVxuICB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMnB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMnB4KTtcbiAgfVxuICAxMDAlXG4gIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIH1cbn1cblxuLnVzZXItY2lyY2xlIHtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBib3JkZXI6MnB4IHNvbGlkICRncmF5LWNhO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHVycGxlLWRhcms7XG4gIGhlaWdodDogNDBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aWR0aDogNDBweDtcbiAgZGlzcGxheTogYmxvY2s7XG5cbiAgLmluaXRpYWxzIHtcbiAgICBmb250LXNpemU6IDIwcHg7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiA4cHg7XG4gIH1cblxuICAmLnBob3RvIHtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgIGJvcmRlci1jb2xvcjogJHB1cnBsZS1kYXJrO1xuICB9XG5cbiAgJi5sYXJnZSB7XG4gICAgaGVpZ2h0OiA2MHB4O1xuICAgIHdpZHRoOiA2MHB4O1xuICAgIC5pbml0aWFscyB7XG4gICAgICBmb250LXNpemU6IDMwcHg7XG4gICAgICB0b3A6IDE0cHg7XG4gICAgfVxuICB9XG4gICYueGxhcmdlIHtcbiAgICBoZWlnaHQ6IDgwcHg7XG4gICAgd2lkdGg6IDgwcHg7XG4gICAgLmluaXRpYWxzIHtcbiAgICAgIGZvbnQtc2l6ZTogNDBweDtcbiAgICAgIHRvcDogMThweDtcbiAgICB9XG4gIH1cbiAgJi54eGxhcmdlIHtcbiAgICBoZWlnaHQ6IDEyMHB4O1xuICAgIHdpZHRoOiAxMjBweDtcbiAgICAuaW5pdGlhbHMge1xuICAgICAgZm9udC1zaXplOiA2MHB4O1xuICAgICAgdG9wOiAzMHB4O1xuICAgIH1cbiAgfVxuICAmLnh4eGxhcmdlIHtcbiAgICBoZWlnaHQ6IDE2MHB4O1xuICAgIHdpZHRoOiAxNjBweDtcbiAgICAuaW5pdGlhbHMge1xuICAgICAgZm9udC1zaXplOiA4MHB4O1xuICAgICAgdG9wOiAzNXB4O1xuICAgIH1cbiAgfVxufSIsIkBtaXhpbiBhcnJvdy10b3AoJHJpZ2h0KSB7XG4gIGNvbnRlbnQ6ICcnO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAkcmlnaHQ7XG4gIHRvcDogLTE1cHg7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlci1sZWZ0OiAxNXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6IDE1cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1ib3R0b206IDE1cHggc29saWQgJHdoaXRlO1xufVxuXG5AbWl4aW4gYXJyb3ctbGVmdCgkdG9wKSB7XG4gIGNvbnRlbnQ6ICcnO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IC0xMHB4O1xuICB0b3A6ICR0b3A7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlci1yaWdodDogMTBweCBzb2xpZCAkd2hpdGU7XG4gIGJvcmRlci10b3A6IDEwcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1ib3R0b206IDEwcHggc29saWQgdHJhbnNwYXJlbnQ7XG59XG5cbkBtaXhpbiBmb250LWJvbGQoKSB7XG4gIC8vZm9udC1mYW1pbHk6ICRmb250LWhhbC1ib2xkO1xuICBmb250LXdlaWdodDogYm9sZDtcbn0iLCIvKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgIEVSUk9SIEZPUk1cbioqKioqKioqKioqKioqKioqKioqKiovXG4uaGFzLWVycm9yIC5mb3JtLWNvbnRyb2wsIC5oYXMtZXJyb3IgLnNlbGVjdDJ7XG4gIGJvcmRlci1jb2xvcjogJHNlY29uZGFyeS1lcnJvciAhaW1wb3J0YW50O1xufVxuLmhhcy1lcnJvciAuaGVscC1ibG9jay5lcnJvciwgLmhhcy1lcnJvciAuY29udHJvbC1sYWJlbCxcbi5oYXMtZXJyb3IgLnJhZGlvLCAuaGFzLWVycm9yIC5jaGVja2JveCwgLmhhcy1lcnJvciAucmFkaW8taW5saW5lLFxuLmhhcy1lcnJvciAuY2hlY2tib3gtaW5saW5le1xuICBjb2xvcjogJHNlY29uZGFyeS1lcnJvcjtcbn1cblxuLmZvcm0tY29udHJvbCB7XG4gIGJvcmRlci1yYWRpdXM6IDAhaW1wb3J0YW50O1xuICBib3JkZXItY29sb3I6ICRncmF5LWM4O1xufVxuLyoqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICBFTEVNRU5UU1xuICAgICBNVUxUSUxBTkdVRVNcbioqKioqKioqKioqKioqKioqKioqKiovXG5kaXYuZm9ybS1ncm91cC5yb3cge1xuICBsYWJlbHtcbiAgICBjb2xvcjogJGJsYWNrO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZGlzcGxheTogY29udGVudHM7XG4gICAgJi5yZXF1aXJlZDphZnRlcntcbiAgICAgIGNvbnRlbnQ6IFwiKlwiO1xuICAgICAgcGFkZGluZy1sZWZ0OiA1cHg7XG4gICAgICBjb2xvcjogJHByaW1hcnktYmx1ZTE7XG4gICAgfVxuICB9XG4gIGlucHV0LmlucHV0LWZsZXh7XG4gICAgbWFyZ2luOiAwO1xuICAgIGJvcmRlcjogc29saWQgMXB4ICRwcmltYXJ5LWJsdWUzO1xuICAgIGhlaWdodDogMzRweDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGZsZXg6IDEgMSAwJSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgICBib3JkZXItcmFkaXVzOiAwcHg7XG4gIH1cbiAgLmNvbC1tZC05e1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgZmxleDogbm9uZTtcbiAgICBtYXgtd2lkdGg6IG5vbmU7XG4gIH1cbiAgLmJ0bi1wcmltYXJ5LmJ0bi1zbXtcbiAgICBtYXJnaW4tbGVmdDogOHB4O1xuICB9XG4gIC8qICFpbXBvcnRhbnQgY2FyIHN0eWxlIGlubGluZSBkYW5zIExhbmcucGhwICovXG4gIC5idG4uYnRuLWRlZmF1bHQuYnRuLXNtLmRyb3Bkb3duLXRvZ2dsZXtcbiAgICAvL2JvcmRlcjogc29saWQgMXB4ICM5MEE0QjYgIWltcG9ydGFudDtcbiAgICAvL2JvcmRlci1sZWZ0OiAwICFpbXBvcnRhbnQ7XG4gICAgLy9wYWRkaW5nLWxlZnQ6IDE1cHg7XG4gIH1cbiAgLmlucHV0LWdyb3VwLWJ0biBidXR0b257XG4gICAgaGVpZ2h0OiAzNHB4ICFpbXBvcnRhbnQ7XG4gIH1cbiAgc3Bhbi5pbnB1dC1ncm91cC1idG57XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktYmx1ZTE7XG4gICAgLy93aWR0aDogMzlweDtcbiAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICAmOmhvdmVye1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktYmx1ZTEtaG92ZXI7XG4gICAgfVxuICB9XG4gIC5pbnB1dC1ncm91cHtcbiAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICB9XG4gIGJ1dHRvbi5kcm9wZG93bi10b2dnbGUsIGJ1dHRvbi5idG4tcHJpbWFyeXtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBjb2xvcjogJGJsYWNrO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgfVxuICAjc3VibWl0LWJ1dHRvbntcbiAgICBwb3NpdGlvbjogaW5pdGlhbDtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgJjpob3ZlcntcbiAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgfVxuICB9XG59XG5pbnB1dC5pbnB1dC1mbGV4e1xuICBtYXJnaW46IDA7XG4gIGJvcmRlcjogc29saWQgMXB4ICRwcmltYXJ5LWJsdWUzO1xuICBoZWlnaHQ6IDM3cHg7XG4gIHBhZGRpbmc6IDA7XG4gIGZsZXg6IDEgMSAwJSAhaW1wb3J0YW50O1xuICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG59XG4vKiBGbMOoY2hlcyBkYW5zIGxlIGNob2l4IGRlIGxhIGxhbmd1ZSAqL1xuLm5hdiAjYWR2U2VhcmNoSGVhZGVyIC5pbnB1dC1ncm91cCAuY2FyZXR7XG4gIGJvcmRlci10b3A6IDZweCBzb2xpZCAkYmxhY2s7XG4gIG1hcmdpbi1sZWZ0OiAxNXB4O1xufVxuXG4jc3VibWl0LWVsZW1lbnR7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDYwcHg7XG4gIGJvdHRvbTogNDVweDtcbn1cbnVsLmRyb3Bkb3duLW1lbnUge1xuICAuZHJvcGRvd24taXRlbXtcbiAgICBwYWRkaW5nLWxlZnQ6IDVweDtcbiAgfVxuICBhe1xuICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgbGkuZGlzYWJsZWQgYXtcbiAgICBjb2xvcjogIzZjNzU3ZDtcbiAgfVxuXG4gIGxpOm5vdCgubm90LXdoaXRlKTpob3ZlcntcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1ibHVlMTtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGF7XG4gICAgICBjb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG4vKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICBEQVRFU1xuKioqKioqKioqKioqKioqKioqKioqKi9cbi8qICFpbXBvcnRhbnQgY2FyIHN0eWxlIGlubGluZSAqL1xuI3VpLWRhdGVwaWNrZXItZGl2e1xuICB6LWluZGV4OiAxMCAhaW1wb3J0YW50O1xufVxuLyojd3JpdGluZ0RhdGUtaWQtZWxlbWVudHtcbiAgLmlucHV0LWdyb3Vwe1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRwcmltYXJ5LWJsdWUzO1xuICB9XG4gIC5pbnB1dC1ncm91cC1hZGRvbi5jYWxlbmRhci10cmlnZ2Vye1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGZsb2F0OiByaWdodDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTIwcHgpO1xuICB9XG4gICN3cml0aW5nRGF0ZS1pZHtcbiAgICB3aWR0aDogMTAwcHg7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgbWFyZ2luOiAzcHggMCAwIDA7XG4gIH1cbn0qL1xuXG5cbi8qKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgR0VORVJBTFxuKioqKioqKioqKioqKioqKioqKioqKi9cbmZvcm17XG4gIGxhYmVse1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB9XG4gIGlucHV0LmZvcm0tY29udHJvbHtcbiAgICBib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJGdyYXktY2EgIWltcG9ydGFudDtcbiAgfVxufVxuLyoqKioqKioqKioqKioqKioqKioqKipcbiAgICBBQ0NPVU5UIENSRUFURVxuKioqKioqKioqKioqKioqKioqKioqKi9cbiNkaXZDcmVhdGUgZm9ybSAucm93e1xuICBkaXNwbGF5OiBibG9jaztcbn1cbiNhY2NvdW50Y3JlYXRle1xuICBwYWRkaW5nOiAzMHB4IDc4cHg7XG5cbiAgLmlucHV0LWdyb3VwIC5mb3JtLWNvbnRyb2wge1xuICAgIHdpZHRoOiBpbmhlcml0O1xuICB9XG59XG4uaGlkZS1zaG93LXBzd3tcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tdG9wOiA4cHg7XG4gIG1hcmdpbi1sZWZ0OiAtNDVweDtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xuICB6LWluZGV4OiAzO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG59XG4uaW5mby1jcmVhdGUtdXNlcntcbiAgei1pbmRleDogNDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBtYXJnaW4tbGVmdDogMTAyJTtcbiAgZm9udC1zaXplOiAxLjVyZW07XG4gIG1hcmdpbi10b3A6IDdweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBiYWNrZ3JvdW5kOiBub25lO1xufVxuI0NBUFRDSEEtZWxlbWVudCBwcmV7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLmNjc2RfZm9ybV9yZXF1aXJlZCB7XG4gIGZvbnQtc2l6ZTogc21hbGw7XG4gIGNvbG9yOiAkcHJpbWFyeS1ibHVlMTtcbn1cblxuLypWb2lyIHNpIG9uIGNvbnNlcnZlICovXG4ubmV3LWZvcm0ge1xuICAuY2NzZF9mb3JtX3JlcXVpcmVkLCAuaGVscC1ibG9jayB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAuaGVscC1ibG9jay5lcnJvciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY29sb3I6ICRzZWNvbmRhcnktZXJyb3I7XG4gICAgZm9udC1zaXplOiAkc2l6ZS1zbWFsbDtcbiAgICBwYWRkaW5nLXRvcDogNXB4O1xuICB9XG5cbiAgLmZvcm0tY29udHJvbCB7XG4gICAgYm9yZGVyLWNvbG9yOiAkcHJpbWFyeS1ibHVlMztcbiAgICB3aWR0aDogMTAwJTtcblxuICAgICY6YWN0aXZlLCAmOmZvY3Vze1xuICAgICAgYm9yZGVyLWNvbG9yOiAkdG9vbHMtc29ydDtcbiAgICAgIG91dGxpbmU6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbiAgLmZvcm0tY29udHJvbDpkaXNhYmxlZCwgLmZvcm0tY29udHJvbFtyZWFkb25seV0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRncmF5LWY2O1xuICAgIGNvbG9yOiAkZ3JheS05NztcbiAgfVxuXG4gIC5oYXMtZXJyb3IgLmZvcm0tY29udHJvbCB7XG4gICAgYm9yZGVyLWNvbG9yOiAkc2Vjb25kYXJ5LWVycm9yO1xuICB9XG5cbiAgbGFiZWwsIC5jb2wtbWQtMywgLmNvbC1tZC05IHtcbiAgICBmbGV4OiBpbmhlcml0ICFpbXBvcnRhbnQ7XG4gICAgbWF4LXdpZHRoOiBpbmhlcml0ICFpbXBvcnRhbnQ7XG4gIH1cbiAgbGFiZWwge1xuICAgIGNvbG9yOiAkZ3JheS05NztcbiAgICBmb250LXNpemU6ICRzaXplLXNtYWxsO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgfVxuICAjY3NyZl90b2tlbi1lbGVtZW50IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5zd2l0Y2gge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDQwcHg7XG4gIGhlaWdodDogMTJweDtcbiAgbWFyZ2luLWJvdHRvbTogMCFpbXBvcnRhbnQ7XG5cbiAgaW5wdXQge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICB9XG5cbiAgLnNsaWRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGdyYXktZTg7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiAuNHM7XG4gICAgdHJhbnNpdGlvbjogLjRzO1xuICAgIGJvcmRlci1yYWRpdXM6IDM0cHg7XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICBsZWZ0OiAwcHg7XG4gICAgICBib3R0b206IC00cHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1ibHVlMTtcbiAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogLjRzO1xuICAgICAgdHJhbnNpdGlvbjogLjRzO1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIH1cbiAgfVxuXG4gIGlucHV0OmNoZWNrZWQgKyAuc2xpZGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdG9vbHMtc29ydDtcbiAgfVxuXG4gIGlucHV0OmZvY3VzICsgLnNsaWRlciB7XG4gICAgYm94LXNoYWRvdzogMCAwIDFweCAkdG9vbHMtc29ydDtcbiAgfVxuXG4gIGlucHV0OmNoZWNrZWQgKyAuc2xpZGVyOmJlZm9yZSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjBweCk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgyMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjBweCk7XG4gIH1cbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKipcbiAgICBBRFZBTkNFRCBFWFBPUlRcbioqKioqKioqKioqKioqKioqKioqKiovXG4jYnJpbmdEYXRhe1xuICB3aWR0aDogMTAwJTtcbiAgLnJvd3tcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIGxpe1xuICAgICAgcGFkZGluZy1ib3R0b206IDVweDtcbiAgICB9XG4gICAgLmljb24tZHJhZ3tcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gICAgfVxuICB9XG4gICNhdmFpbGFibGV7XG4gICAgbGl7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAmOmhvdmVye1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHVycGxlLWV4dHJhLWxpZ2h0O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAjZmwgLnBsYWNlaG9sZGVyIHtcbiAgICBtYXJnaW46IDVweCAwO1xuICAgIGhlaWdodDogNDBweDtcbiAgICB3aWR0aDoxMDAlO1xuICAgIGJvcmRlcjogMnB4IGRhc2hlZCAkcHVycGxlO1xuICB9XG59XG4jZXhwb3J0YWJsZUZpZWxkcyB7XG4gIC5jYXJke1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIC5jYXJkLWhlYWRlcntcbiAgICAgIHBhZGRpbmc6IDMwcHggMTVweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIH1cbiAgICAuY2FyZC1ib2R5e1xuICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgIGhlaWdodDogNDAwcHg7XG4gICAgICBvdmVyZmxvdzogYXV0bztcbiAgICB9XG4gIH1cbn1cbiNtZXNzYWdlQWJvdXRFeHBvcnR7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZGl2e1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBwYWRkaW5nOiAxNXB4O1xuICB9XG59XG5cblxuLyoqKioqKioqKioqKioqKioqKioqKipcbiAgICBMT1NUIFBBU1NXT1JEICZcbiAgICBMT1NUIExPR0lOXG4qKioqKioqKioqKioqKioqKioqKioqL1xuI2FjY291bnRsb3N0cGFzc3dvcmQsICNhY2NvdW50bG9zdGxvZ2lue1xuICB3aWR0aDogMTAwJTtcbiAgI1VTRVJOQU1FLWVsZW1lbnQsICNFTUFJTC1lbGVtZW50e1xuICAgIHBhZGRpbmc6IDIwcHggMTAlIDIwcHggMjBweDtcbiAgICAuY29sLW1kLTN7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICB9XG4gIH1cblxuICAuZm9ybS1hY3Rpb25ze1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbn1cbiNEZW1hbmRlcnVubm91dmVhdW1vdGRlcGFzc2UsICNSZWNldm9pcm1vbmxvZ2lue1xuICBtYXJnaW4tYm90dG9tOiA1MHB4O1xufVxuXG5cbi8qKioqKioqKioqKioqKioqKioqKioqXG4gICAgQ29uZmlndXJhdGlvblxuICAgICAgICBJZEhhbFxuKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiNpZGhhbF9Nb2RhbCwgI2Zvcm1zX01vZGFsLCAjbW9kYWwtc2VhcmNoLWRvY3VtZW50cywgI21vZGFsLXVwZGF0ZS1pZGhhbC1wdWJsaWNhdGlvbnMtcmVjYXAge1xuICAubW9kYWwtZGlhbG9nIHtcbiAgICBtYXgtd2lkdGg6IDgwJTtcbiAgfVxuICAuZm9ybS1yb3cge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cbiAgI3Ege1xuICAgIGZsZXg6IDAuNCAxIGF1dG87XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGdyYXktZjY7XG4gIH1cbiAgdGgge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRncmF5LWY2O1xuICB9XG4gIC53YXJuaW5nIHtcbiAgICBjb2xvcjogJHNlY29uZGFyeS1lcnJvcjtcbiAgfVxufVxuXG5pbnB1dC5jaGVja2JveFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICB3aWR0aDogaW5oZXJpdDtcbiAgb3BhY2l0eTogaW5oZXJpdDtcbn0iLCIvKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgICBHRU5FUkFMXG4qKioqKioqKioqKioqKioqKioqKioqL1xuXG4uaGFsLWJndGV4dCwgLmJnLWJlaWdle1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JheS1mNDtcbiAgJi52ZXJzaW9uc3tcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcblxuICAgIHNwYW46Zmlyc3QtY2hpbGR7XG4gICAgICBjb2xvcjogJGdyYXktNjQ7XG4gICAgICBtYXJnaW4tbGVmdDogMTVweDtcbiAgICB9XG4gICAgc3BhbjpudGgtY2hpbGQoMil7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgIGF7XG4gICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICB9O1xuICAgIH1cbiAgICBzcGFuOm50aC1jaGlsZCgzKXtcbiAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICB9XG4gIH1cbn1cblxuLmJ0bi1ncm91cC1sYW5nIHtcbiAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgYnV0dG9uLmJ0bntcbiAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGZvbnQtc2l6ZTogJHNpemUtc21hbGw7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgY29sb3I6ICRwcmltYXJ5LWJsdWUxO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRwcmltYXJ5LWJsdWUxO1xuICAgICYuYWN0aXZle1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWJsdWUxO1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4jZmxhc2gtbWVzc2FnZXMgLmFsZXJ0e1xuICB6LWluZGV4OiA1O1xuICB0b3A6IDEzMHB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG59XG4vLyBQb3VyIGljb24gcGFydGFnZXJcbi5hMmFfZGVmYXVsdF9zdHlsZSAuYTJhX2NvdW50LCAuYTJhX2RlZmF1bHRfc3R5bGUgLmEyYV9zdmcsXG4uYTJhX2Zsb2F0aW5nX3N0eWxlIC5hMmFfc3ZnLCAuYTJhX21lbnUgLmEyYV9zdmcsLmEyYV92ZXJ0aWNhbF9zdHlsZSAuYTJhX2NvdW50LFxuLmEyYV92ZXJ0aWNhbF9zdHlsZSAuYTJhX3N2Z3tcbiAgYm9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50O1xufVxuLyoqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgV0lER0VUXG4qKioqKioqKioqKioqKioqKioqKioqL1xuXG4jbWV0cmljc3tcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgYm9yZGVyOiAxcHggc29saWQgJHByaW1hcnktYmx1ZTM7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgLm1ldHJpY3Mtdmlld3N7XG4gICAgJjpudGgtY2hpbGQoMil7XG4gICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICRncmF5LWNhO1xuICAgIH1cblxuICAgIGRpc3BsYXk6IGlubGluZS1ncmlkO1xuICAgIHNwYW46Zmlyc3QtY2hpbGR7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgIGZvbnQtc2l6ZTogJHNpemUtbGFyZ2U7XG4gICAgfVxuICB9XG5cbn1cblxuLmlkZW50aWZpZXItbGlzdHtcbiAgdWx7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGNvbG9yOiAkZ3JheS02NDtcblxuICAgIGxpe1xuICAgICAgd29yZC1icmVhazogYnJlYWstYWxsO1xuICAgIH1cbiAgfVxuICBzcGFuOm50aC1jaGlsZCgyKXtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBtYXJnaW4tbGVmdDogMTJweDtcbiAgICBjb2xvcjogJGJsYWNrO1xuICAgIGF7XG4gICAgICBjb2xvcjogJGJsYWNrO1xuICAgIH1cbiAgfVxufVxuXG4uc2VjdGlvbi1jb250ZW50LndpZGdldC1maWxlc3tcbiAgZGl2LmZpbGV7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBmaWxsOiAkd2hpdGU7XG4gICAgZm9udC1zaXplOiBjYWxjKCN7JHNpemUtcmVndWxhcn0gKyAuMXJlbSk7XG4gICAgbGluZS1oZWlnaHQ6IDI7XG5cbiAgICAmLm5vdHtcbiAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICBmaWxsOiAkYmxhY2s7XG4gICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgfVxuICAgIC5lbWJhcmdvLW1zZ3tcbiAgICAgIGNvbG9yOiAkc2Vjb25kYXJ5LWVycm9yO1xuICAgICAgZm9udC1zaXplOiAkc2l6ZS1zbWFsbDtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgYnV0dG9ue1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBjb2xvcjogJHNlY29uZGFyeS1lcnJvcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4lYnRuLXBvcG92ZXIge1xuICAuYnRuLXBvcG92ZXIge1xuICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgcGFkZGluZzogMDtcbiAgICBmb250OiBpbmhlcml0O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBvdXRsaW5lOiBpbmhlcml0O1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogJHByaW1hcnktYmx1ZTE7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICB9XG4gIH1cbn1cbi8qKioqKioqKioqKioqKioqKioqKioqXG4gICAgV0lER0VULUFVVEhPUlNcbiAgICAgICAgYXV0ZXVyc1xuKioqKioqKioqKioqKioqKioqKioqKi9cbi5wb3BvdmVyLWF1dGhvcnN7XG4gIGRpc3BsYXk6IGlubGluZS1ncmlkO1xuXG4gIC5wb3BvdmVyLWF1dGhvci1oZWFkZXJ7XG4gICAgICBwYWRkaW5nOiAxNXB4IDEwcHggMCAyNXB4O1xuXG4gICAgaDR7XG4gICAgICBjb2xvcjogJHByaW1hcnktYmx1ZTE7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICB9XG4gICAgdWx7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgIH1cbiAgfVxuICBhLnBvcG92ZXItYWZmaWx7XG4gICAgcGFkZGluZzogMCAxMHB4IDE1cHggMjVweDtcbiAgICBjb2xvcjogJGJsYWNrO1xuICB9XG4gIC5wb3BvdmVyLXJlc3VtZXtcbiAgICBmb250LXNpemU6ICRzaXplLXJlZ3VsYXI7XG4gIH1cbiAgLmhhbC1wcml2aWxlZ2UtYnV0dG9uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHVycGxlO1xuICAgIHBhZGRpbmc6IDEycHg7XG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHVycGxlLWRhcms7XG4gICAgfVxuICB9XG59XG5cbi5wb3BvdmVyLmZhZGV7XG4gIG1heC13aWR0aDogNTU1cHg7XG5cbiAgLnBvcG92ZXItYm9keXtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1heC13aWR0aDogNDUwcHg7XG5cbiAgICAmLnBvcG92ZXItam91cm5hbC1ib2R5e1xuICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgcGFkZGluZzogNXB4IDIwcHg7XG4gICAgICBmb250LXNpemU6ICRzaXplLW1pbnVzO1xuICAgIH1cbiAgfVxuICAuYXJyb3d7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4uYXV0aG9yc3tcbiAgKyBidXR0b257XG4gICAgY29sb3I6ICRwcmltYXJ5LWJsdWUxO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRwcmltYXJ5LWJsdWUxO1xuICAgIGJvcmRlci1yYWRpdXM6IHVuc2V0O1xuICAgIG9wYWNpdHk6IDAuNjQ7XG4gICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICBmb250LXNpemU6ICRzaXplLXJlZ3VsYXI7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG5cbiAgICAmOmhvdmVye1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktYmx1ZTM7XG4gICAgfVxuICB9XG59XG5cbiNhdXRob3JzLWRldGFpbGVke1xuICBkaXNwbGF5OiBub25lO1xuICBidXR0b24uYnRuLWhpZGUtc2hvd3tcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1ibHVlMTtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgZm9udC1zaXplOiAkc2l6ZS1yZWd1bGFyO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICB9XG59XG5cbi5wb3BvdmVyLXN0cnVjdHVyZSB7XG4gIHBhZGRpbmc6IDE1cHggMTBweCAxNXB4IDI1cHg7XG4gICYgPiBhe1xuICAgIGNvbG9yOiAkcHJpbWFyeS1ibHVlMTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAkcHJpbWFyeS1ibHVlMS1ob3ZlcjtcbiAgICB9XG4gIH1cbiAgdWx7XG4gICAgYXtcbiAgICAgIGNvbG9yOiAkcHJpbWFyeS1ibHVlMTtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAkcHJpbWFyeS1ibHVlMS1ob3ZlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmxhYmVsLmxhYmVsLXByaW1hcnkge1xuICAgIGZvbnQtc2l6ZTogLjc1cmVtO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWJsdWUxO1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBwYWRkaW5nLWxlZnQ6IDNweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzcHg7XG4gIH1cbn1cblxuI2F1dGhvcnMtZGV0YWlsZWQgLmNvbC1sZy00IHtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luLXRvcDogMjBweDtcbn1cblxuXG4uY29sLWxnLTQgLmJnLWJlaWdlIHtcbiAgcGFkZGluZzogMTBweDtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICBtYXgtd2lkdGg6IDMzN3B4O1xuICBoZWlnaHQ6IDEwMCU7XG5cbiAgYXtcbiAgICBjb2xvcjogJGJsYWNrO1xuICB9XG4gID4gYSB7XG4gICAgY29sb3I6ICR0b29scy1zb3J0O1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB9XG4gIHVse1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG4gIC5kZXRhaWxlZC1yZXN1bWV7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJHByaW1hcnktYmx1ZTE7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMTBweDtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgcmlnaHQ6IDQ1cHg7XG4gICAgcGFkZGluZzogNXB4O1xuXG4gICAgYXtcbiAgICAgIGNvbG9yOiAkcHJpbWFyeS1ibHVlMTtcbiAgICB9XG4gIH1cbiAgLmhhbC1pY29ue1xuICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgfVxuICAuZGV0YWlsZWQtYWZmaWx7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIH1cbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKipcbiAgICBXSURHRVQtQVVUSE9SU1xuICAgICAgc3RydWN0dXJlc1xuKioqKioqKioqKioqKioqKioqKioqKi9cbi5zdHJ1Y3R1cmVze1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgcGFkZGluZzogMjBweCAxNXB4IDVweDtcbiAgbWFyZ2luLXRvcDogMjBweDtcbiAgZGlzcGxheTogZmxleDtcblxuICBkaXY6Zmlyc3QtY2hpbGR7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICAgIGNvbG9yOiAkcHJpdmlsZWdlLWJ1dHRvbjtcbiAgICBmb250LXNpemU6ICRzaXplLXhsO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IC0xMHB4O1xuICB9XG4gIGRpdjpudGgtY2hpbGQoMil7XG4gICAgc3BhbntcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRncmF5LWU4O1xuICAgICAgcGFkZGluZzogMCA4cHg7XG4gICAgfVxuICAgIGF7XG4gICAgICBjb2xvcjogJGJsYWNrO1xuICAgIH1cbiAgfVxufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKlxuICAgIFdJREdFVC1BQlNUUkFDVFxuICAgIC1LRVlXT1JEUy1ET01BSU5TXG4qKioqKioqKioqKioqKioqKioqKioqL1xuLmFic3RyYWN0LCAua2V5d29yZHN7XG4gIGRpdjpmaXJzdC1jaGlsZHtcbiAgICBtYXJnaW4tdG9wOiA0OHB4O1xuICB9XG4gIC8vIFLDqXN1bcOpXG4gIGg0e1xuICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgZGlzcGxheTogaW5saW5lO1xuICB9XG4gIC5idG4tZ3JvdXB7XG5cblxuICAgIGJ1dHRvbi5idG57XG4gICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgIGZvbnQtc2l6ZTogJHNpemUtc21hbGw7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgIGNvbG9yOiAkcHJpbWFyeS1ibHVlMTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgJHByaW1hcnktYmx1ZTE7XG4gICAgICAmLmFjdGl2ZXtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktYmx1ZTE7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuYWJzdHJhY3QtY29udGVudHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgICYuYWN0aXZle1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAkZ3JheS1jYTtcbiAgICAgIG1heC13aWR0aDogNjc0cHg7XG4gICAgICBwYWRkaW5nOiA1cHggMTVweDtcbiAgICAgIG1hcmdpbi10b3A6IDVweDtcbiAgICB9XG4gIH1cbn1cblxuLmJ0bi1ncm91cCA+IC5idG4uYWN0aXZle1xuICB6LWluZGV4OiAwO1xufVxuXG4ua2V5d29yZHMsIC5kb21haW5ze1xuICBoNHtcbiAgICBtYXJnaW4tdG9wOiA0OHB4O1xuICB9XG4gIGEuaGFsLWJndGV4dHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHhzKSB7XG4gICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIH1cbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1ibHVlMztcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIGZvbnQtc2l6ZTogJHNpemUtc21hbGw7XG4gICAgJjpob3ZlcntcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWJsdWUzLWhvdmVyO1xuICAgIH1cbiAgfVxuXG4gIC5rZXlzLWxhbmd7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICAmLmFjdGl2ZXtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxufVxuXG4uc2VjdGlvbi1leHBvcnQsIC5rZXl3b3JkcywgLmRvbWFpbnMsIC5zZWN0aW9uLWNvbGxlY3Rpb24ge1xuICBhLmhhbC1iZ3RleHR7XG4gICAgLy8gTGUgcHJvYmzDqG1lIGF2ZWMgY2UgY3JpdMOocmUgZXN0IHF1ZSBzaSBsYSBjb2xvbm5lIG4nZXN0IHBhcyBhc3NleiBncmFuZGUsIGxlcyBhdXRyZXMgw6lsw6ltZW50c1xuICAgIC8vIG5lIHJldG91cm5lbnQgcGFzIMOgIGxhIGxpZ25lLi4uLlxuICAgIC8vd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICBsaW5lLWhlaWdodDogM3JlbTtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB9XG59XG5cbi5tZXRhZGF0YS1zb2Z0d2FyZS1saXN0IHtcbiAgLm1ldGEtdmFsdWUge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuXG4gICAgJjpub3QoOmxhc3QtY2hpbGQpOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcsICc7XG4gICAgfVxuICB9XG59XG5cblxuLyoqKioqKioqKioqKioqKioqKioqKipcbiAgICBXSURHRVQtTUVUQURBVEFcbioqKioqKioqKioqKioqKioqKioqKiovXG4jbWV0YWRhdGFzX01vZGFsIHtcbiAgLm1vZGFsLWRpYWxvZyB7XG4gICAgbWF4LXdpZHRoOiA3MCU7XG4gIH1cbiAgLnR5cGVzdWJtaXNzaW9uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoNTEsIDEyMiwgMTgzKTtcbiAgICBwYWRkaW5nOiAycHggMTBweDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgfVxuICB0YWJsZSB7XG4gICAgdGFibGUtbGF5b3V0OiBmaXhlZDtcbiAgfVxuICB0aCB7XG4gICAgcGFkZGluZy1sZWZ0OiAycmVtO1xuICAgIHdpZHRoOiAyNSU7XG4gIH1cbiAgY2FwdGlvbiB7XG4gICAgcGFkZGluZy1sZWZ0OiAycmVtO1xuICB9XG4gIC50aXRsZS10YWJsZSB7XG4gICAgY29sb3I6ICRwcmltYXJ5LWJsdWUxO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGZvbnQtc2l6ZTogMS4xNXJlbTtcbiAgfVxuICAuYmFkZ2Uge1xuICAgIGZvbnQtc2l6ZTogMTAwJTtcbiAgfVxuICAucHJlYyB7XG4gICAgZm9udC1zaXplOiBzbWFsbDtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIH1cbiAgLnN0cnVjdCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgfVxuICAuZ3JleS1iYWRnZSB7XG4gICAgYm9yZGVyLXJhZGl1czogdW5zZXQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGdyYXktZTg7XG4gIH1cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XG4gICAgcGFkZGluZy1yaWdodDogMHB4O1xuICAgIC5tb2RhbC1kaWFsb2cge1xuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgbWFyZ2luOiAwLjVyZW07XG4gICAgfVxuICB9XG59XG4vLyBQb3VyIGxhIHJldnVlXG5ibG9ja3F1b3RlIC5yZWZlcmVudGllbCBzbWFsbHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG5cbiAgJjpiZWZvcmV7XG4gICAgY29udGVudDogJ1xcMjAxNCBcXDAwQTAnO1xuICB9XG59XG4vKiBTSEVSUEEvUk9NRU8gKi9cbi5wb3BvdmVyIHRhYmxlIHRkLnRleHQtbGVmdCBzcGFue1xuICBib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqXG4gICAgV0lER0VULU1FVEFEQVRBXG4qKioqKioqKioqKioqKioqKioqKioqL1xuI2Jvb2ttYXJrLWJ1dHRvbiwgI2Jvb2ttYXJrLWZpbGwtYnV0dG9uLFxuLmJvb2ttYXJrLWJ1dHRvbiwgLmJvb2ttYXJrLWZpbGwtYnV0dG9ue1xuICBib3JkZXI6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBmbG9hdDogcmlnaHQ7XG4gIGZvbnQtc2l6ZTogJHNpemUteGw7XG4gIGNvbG9yOiAkcHJpbWFyeS1ibHVlMTtcbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgfVxufVxuI2xpYnJhcnktbGlzdHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuXG4gICYrIGRpdntcbiAgICBtYXJnaW4tbGVmdDogMTJweDtcbiAgfVxufVxuXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obGcpIHtcbiAgc2VjdGlvbi5jb2wtMywgc2VjdGlvbi5jb2wtOHtcbiAgICBkaXNwbGF5OiBjb250ZW50cztcblxuICAgIC5zZWN0aW9uLWNvbnRlbnR7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKipcbiAgICBXSURHRVQtVklFV0VSXG4qKioqKioqKioqKioqKioqKioqKioqL1xuLnZpZXdlciBidXR0b246Zmlyc3QtY2hpbGQgc3Bhbi5oYWwtaWNvbntcbiAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG59XG5cbiN2aWV3ZXItZGV0YWlsZWQge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHhzKSB7XG4gICAgaGVpZ2h0OiA1NzBweDtcbiAgfVxuICA+IGRpdjpudGgtY2hpbGQoMSkge1xuICAgIG1hcmdpbjogMCAzMHB4IDAgNDdweDtcbiAgICBwYWRkaW5nLXRvcDogMzhweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMzhweDtcbiAgICBoZWlnaHQ6IDEwMCU7XG5cbiAgICAuY29sLW1kLTIge1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoeHMpIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0zMHB4O1xuICAgICAgfVxuICAgICAgbWFyZ2luLXJpZ2h0OiAzMHB4O1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgb3ZlcmZsb3c6IGF1dG87XG5cbiAgICAgIGF7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICB9XG5cbiAgICAgIC5maWxlLW1ham9yIHtcbiAgICAgICAgdG9wOiAyMHB4O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgfVxuXG4gICAgICAudGh1bWJuYWlsLXZpZXdlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRncmF5LWU4O1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICAgICBpbWcge1xuICAgICAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgICAgIH1cblxuICAgICAgICAuZGVmYXVsdC10aHVtYm5haWwge1xuICAgICAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgICAgICAgaSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDYwcHg7XG4gICAgICAgICAgICBjb2xvcjogJGdyYXktNjQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDUuNTtcbiAgICAgICAgICBjb2xvcjogJGdyYXktNjQ7XG4gICAgICAgICAgZm9udC1zaXplOiAkc2l6ZS14bDtcbiAgICAgICAgfVxuXG4gICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICBib3JkZXI6IDZweCBzb2xpZCAkcHJpbWFyeS1ibHVlO1xuICAgICAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC52aWV3ZXItY29udGVudHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAmLmFjdGl2ZXtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIH1cbiAgICB9XG4gICAgLmNvbC1tZC05IHtcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAtbXMtZmxleDogMCAwIDgzJTtcbiAgICAgIGZsZXg6IDAgMCA4MyU7XG4gICAgICBtYXgtd2lkdGg6IDgzJTtcblxuICAgICAgaWZyYW1le1xuICAgICAgICBtaW4taGVpZ2h0OiA5NSU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgfVxuICAgICAgLmVtYmFyZ28ge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JheS1lODtcbiAgICAgICAgY29sb3I6ICRncmF5LTY0O1xuICAgICAgICBmb250LXNpemU6ICRzaXplLWxhcmdlO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG5cbiAgICAgICAgZGl2OmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgdG9wOiAzNSU7XG5cbiAgICAgICAgICBkaXY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICB0YWJsZSB7XG4gICAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICAgIHRkIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDRweCAxNXB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHRhYmxlICsgc3BhbiB7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICBmb250LXNpemU6ICRzaXplLXJlZ3VsYXI7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgIH1cbiAgfVxufVxuICAuaGFsLW9wdGlvbi1idXR0b257XG4gICAgLy9kaXNwbGF5OiBibG9jaztcbiAgICBmb250LXNpemU6ICRzaXplLXJlZ3VsYXI7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBwYWRkaW5nOiAxMnB4O1xuICB9XG5cblxuLmVtYmFyZ28tbGFiZWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JheS1jYTtcbiAgY29sb3I6ICRibGFjaztcbiAgZm9udC1zaXplOiAkc2l6ZS14c21hbGw7XG4gIHBhZGRpbmc6IDEycHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG5cbiAgc3BhbjpmaXJzdC1jaGlsZHtcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gIH1cbn1cblxuI2xpc3QtdGh1bWJuYWlsLXZpZXdlciwgLnZpZXdlci1jb250ZW50e1xuICBzcGFue1xuICAgIGNvbG9yOiAkZ3JheS0zNztcbiAgICBmb250LXNpemU6ICRzaXplLXhzbWFsbDtcbiAgfVxuICBhe1xuICAgIGZsb2F0OiByaWdodDtcbiAgfVxufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKlxuICAgIFNVQk1JVFRFRCBEQVRFXG4qKioqKioqKioqKioqKioqKioqKioqL1xuLnN1Ym1pdHRlZC1kYXRle1xuICBjb2xvcjogJGdyYXktY2E7XG4gIGZvbnQtc2l6ZTogJHNpemUtc21hbGw7XG4gIGxpbmUtaGVpZ2h0OiAuOTtcbiAgbWFyZ2luLXRvcDogMjBweDtcbn1cbi8qKioqKioqKioqKioqKioqKioqKioqXG4gICAgQVVUT0NPTVBMRVRFXG4qKioqKioqKioqKioqKioqKioqKioqL1xuLnVpLWF1dG9jb21wbGV0ZS51aS1mcm9udCB7XG4gIHotaW5kZXg6IDEwNjAgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICBtYXgtaGVpZ2h0OiAzMDBweDtcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIHBhZGRpbmc6IDEwcHg7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGJveC1zaGFkb3c6IDBweCAzcHggNnB4ICRib3gtc2hhZG93O1xuICAudWktbWVudS1pdGVte1xuICAgIHBhZGRpbmc6IDNweDtcbiAgICAmOmhvdmVye1xuICAgICAgLy9mb250LXdlaWdodDogYm9sZCAhaW1wb3J0YW50OyB0ZXN0IGNvcnJlY3Rpb24gc2NpbnRpbGxlbWVudCBkw6lww7R0XG4gICAgICBjb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxuICB9XG59XG5cblxuLnByZXZpZXctbm90LWF2YWlsYWJsZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRncmF5LWU4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgaDEge1xuICAgIGNvbG9yOiAkZ3JheS02NDtcbiAgICBmb250LXNpemU6ICRzaXplLWxhcmdlO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB9XG4gIGRpdjpmaXJzdC1jaGlsZCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbi10b3A6IDE2MHB4O1xuICB9XG59XG5cbi5sYWJlbCB7XG4gICYubGFiZWwtVkFMSUQge1xuICAgIGJhY2tncm91bmQ6ICRzZWNvbmRhcnktc3VjY2VzcyFpbXBvcnRhbnQ7XG4gIH1cbiAgJi5sYWJlbC1PTEQge1xuICAgIGJhY2tncm91bmQ6ICRzZWNvbmRhcnktd2FybmluZyFpbXBvcnRhbnQ7XG4gIH1cbiAgJi5sYWJlbC1JTkNPTUlORyB7XG4gICAgYmFja2dyb3VuZDogJHNlY29uZGFyeS1lcnJvciFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuI2hpc3RvcnktZGV0YWlsZWQge1xuICBib3JkZXI6IDFweCBzb2xpZCAjZThlOGU4O1xufVxuXG4uYWxlcnQtaGlzdG9yeSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRncmF5LWY2O1xuICBib3JkZXItcmFkaXVzOiAwO1xuICAuYmFkZ2Uge1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgJi5iYWRnZS1zdWNjZXNzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRzZWNvbmRhcnktc3VjY2VzcztcbiAgICB9XG4gICAgJi5iYWRnZS1pbmZvIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWJsdWUxO1xuICAgIH1cbiAgICAmLmJhZGdlLXdhcm5pbmcge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHNlY29uZGFyeS13YXJuaW5nO1xuICAgIH1cbiAgICAmLmJhZGdlLWRhbmdlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2Vjb25kYXJ5LWVycm9yO1xuICAgIH1cbiAgICAmLmJhZGdlLW9yYW5nZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1vcmFuZ2U7XG4gICAgfVxuICAgICYuYmFkZ2UtdmlvbGV0IHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWJsdWUtZGlzYWJsZWQ7XG4gICAgfVxuXG4gIH1cbn1cblxuLyogUmVmZXJlbmNlcyAqL1xuXG4jcmVmLWRldGFpbGVkIHtcbiAgYmFja2dyb3VuZDogJGdyYXktZmE7XG59XG4ucmVmZXJlbmNlcy1maWx0cmUge1xuICAuYnRuIHtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICB9XG4gIC5kcm9wZG93bi1pdGVtLmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktYmx1ZTM7XG4gIH1cbn1cblxuLnJlZmVyZW5jZS1idXR0b25zIHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG4ucmVmZXJlbmNlcy1zZWN0aW9uIHtcbiAgb3ZlcmZsb3cgICAgIDogYXV0bztcbiAgbWF4LWhlaWdodCAgIDogMzAwcHg7XG4gIG1hcmdpbjogLjVlbSAwIC41ZW0gMDtcbiAgdGFibGV7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgLnJlZmVyZW5jZS1yb3cge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRncmF5LWY2O1xuICAgIGJvcmRlci1ib3R0b206IHRoaWNrIHNvbGlkICR3aGl0ZTtcbiAgICAucmVmZXJlbmNlLXRleHQge1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgIHBhZGRpbmcgICAgICAgOiAuNWVtIDAgLjVlbSAwO1xuICAgICAgLmluc2lkZS1yZWZlcmVuY2UtdGV4dHtcbiAgICAgICAgbWFyZ2luLWxlZnQgOiAuNWVtO1xuICAgICAgICBwYWRkaW5nOiAwIDAgLjVlbSAuNWVtO1xuICAgICAgICBib3JkZXItbGVmdCA6IDFweCBncm9vdmUgJHdoaXRlO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgfVxuICAgICAgLnRpdGxlLXJlZmVyZW5jZSB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgfVxuICAgICAgLnRpdGxlRXZlbnQtcmVmZXJlbmNlLXZhbHVlIHtcbiAgICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgICAgfVxuICAgICAgcHtcbiAgICAgICAgbWFyZ2luIDogMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgIH1cbiAgICAgIC5yZWZlcmVuY2VzLWlkZW50aWZpZXJzIHtcbiAgICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICAgIG1hcmdpbjogM3B4O1xuICAgICAgfVxuICAgICAgLnJlZmVyZW5jZXMtaWRlbnRpZmllcntcbiAgICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG4gICAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICBmb250LXdlaWdodDogbGlnaHRlcjtcbiAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICBtaW4td2lkdGg6IDQwcHg7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogNXB4O1xuICAgICAgfVxuICAgICAgLnJlZmVyZW5jZXMtaWRlbnRpZmllci12YWx1ZXtcbiAgICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdyYXktYTI7XG4gICAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBsaWdodGVyO1xuICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogNXB4O1xuICAgICAgfVxuICAgICAgYTpmb2N1c3tcbiAgICAgICAgY29sb3I6ICM0MDQwNDA7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG4gICAgICB9XG4gICAgfVxuICAgIC52YWxpZGF0aW9uLWJ1dHRvbiB7XG4gICAgICBjb2xvcjogJHNlY29uZGFyeS1zdWNjZXNzO1xuICAgIH1cbiAgICAucmVtb3ZlLWJ1dHRvbiB7XG4gICAgICBjb2xvcjokc2Vjb25kYXJ5LWVycm9yO1xuICAgIH1cblxuICB9XG4gIC5saW5rLWZyZWUtZnVsbC10ZXh0LXVybCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHB1cnBsZTtcbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiR3aGl0ZTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwdXJwbGUtZGFyaztcbiAgICB9XG4gIH1cbiAgLmxpbmstZG9pIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiRwcmltYXJ5LWJsdWU7XG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjokd2hpdGU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1ibHVlLWhvdmVyO1xuICAgIH1cbiAgfVxuICAvKiBvdGhlciBzZWFyY2ggZW5naW5lcyAqL1xuICAubGluay1zZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjokcHJpbWFyeS1ibHVlMztcbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiR3aGl0ZTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWJsdWUzLWhvdmVyO1xuICAgIH1cbiAgfVxufSIsIiN0b2dnbGUtYWN0aW9uc3tcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDE2N3B4O1xuICByaWdodDogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktYmx1ZTtcbiAgd2lkdGg6IDc1cHg7XG4gIGhlaWdodDogNjdweDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgc3BhbntcbiAgICBjb2xvcjogJHdoaXRlO1xuICB9XG59XG4jYWNjb3JkaW9uLWFjdGlvbnN7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAyMDBweDtcbiAgcmlnaHQ6IDA7XG4gIHotaW5kZXg6IDE7XG5cbiAgLnBvcC1vdmVyLCAucG9wLW92ZXItY29udGVudCA+IGRpdntcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICB9XG5cbiAgdWx7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBtYXgtaGVpZ2h0OiBjYWxjKDEwMHZoIC0gMjMwcHgpO1xuICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgICBvdmVyZmxvdy15OiBzY3JvbGw7XG4gICAgbGkge1xuICAgICAgZGl2LmJ0bi1hY2NvcmRpb257XG4gICAgICAgIHdpZHRoOiA2MHB4O1xuICAgICAgICB0cmFuc2l0aW9uOiB3aWR0aCAuNnMgZWFzZS1pbi1vdXQ7XG4gICAgICB9XG5cbiAgICAgIGEsIGJ1dHRvbjpub3QoLmJ0bi10YW1wb24pe1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDI4MHB4O1xuICAgICAgICBoZWlnaHQ6IDYwcHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgIH1cbiAgICAgIGEgc3BhbjpmaXJzdC1jaGlsZCwgYnV0dG9uOm5vdCguYnRuLXRhbXBvbikgc3BhbjpmaXJzdC1jaGlsZCxcbiAgICAgIGEgaSwgYnV0dG9uOm5vdCguYnRuLXRhbXBvbikgaXtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiA0MHB4O1xuICAgICAgICBtYXJnaW4tbGVmdDogMjBweDtcbiAgICAgIH1cbiAgICAgIGEgc3BhbjpudGgtY2hpbGQoMiksIGJ1dHRvbjpub3QoLmJ0bi10YW1wb24pIHNwYW46bnRoLWNoaWxkKDIpLFxuICAgICAgYSBzcGFuLCBidXR0b246bm90KC5idG4tdGFtcG9uKSBzcGFue1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB9XG4gICAgICBkaXYuYnRuLWFjY29yZGlvbiA+IGJ1dHRvbiA+IHNwYW4sIGRpdi5idG4tYWNjb3JkaW9uID4gYnV0dG9uID4gaSxcbiAgICAgIGRpdi5idG4tYWNjb3JkaW9uID4gYSA+IHNwYW4sIGRpdi5idG4tYWNjb3JkaW9uID4gYSA+IGl7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgZm9udC1zaXplOiAkc2l6ZS1yZWd1bGFyO1xuICAgICAgICBsaW5lLWhlaWdodDogNjBweDtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICB9XG4gICAgICBkaXYuYnRuLWFjY29yZGlvbiA+IGJ1dHRvbiA+IGksZGl2LmJ0bi1hY2NvcmRpb24gPiBhID4gaXtcbiAgICAgICAgZm9udC1zaXplOiAkc2l6ZS14bDtcbiAgICAgIH1cbiAgICB9XG4gICAgJjpob3ZlciwgJjpmb2N1c3tcbiAgICAgIGxpIHtcbiAgICAgICAgLmJ0bi1hY2NvcmRpb257XG4gICAgICAgICAgd2lkdGg6IDI4MHB4O1xuICAgICAgICB9XG4gICAgICAgIGF7XG4gICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICB1bC5rZWVwb3BlbiB7XG4gICAgbGkge1xuICAgICAgZGl2LmJ0bi1hY2NvcmRpb24ge1xuICAgICAgICB3aWR0aDogMjgwcHghaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgIE1PREFMXG4qKioqKioqKioqKioqKioqKioqKioqL1xuLm1vZGFsLmZhZGUuc2hvd3tcbiAgYmFja2dyb3VuZDogcmdiYSg2NywgNjcsIDY3LCAwLjc0KSBub25lIHJlcGVhdCBzY3JvbGwgMCUgMCU7XG59XG4ubW9kYWwtYmFja2Ryb3AuZmFkZS5zaG93e1xuICBkaXNwbGF5OiBub25lO1xufVxuLm1vZGFsLWNvbnRlbnR7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIC5tb2RhbC1oZWFkZXJ7XG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcblxuICAgIC5jbG9zZXtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuICB9XG4gIC5tb2RhbC1mb290ZXJ7XG4gICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIH1cbn1cblxuLmJ0bi5oYWwtdmlzdWFsaXplLWJ1dHRvbi5jYW5jZWx7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWJsdWUzO1xuXG4gICY6aG92ZXJ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktYmx1ZTMtaG92ZXI7XG4gIH1cbn1cbi8qKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgVEFNUE9OTkVSXG4qKioqKioqKioqKioqKioqKioqKioqL1xuXG5kaXYgLmJ0bi10YW1wb24ge1xuICBwYWRkaW5nOiA1cHg7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIG1hcmdpbi1yaWdodDogNXB4O1xuICBtYXJnaW4tYm90dG9tOiA1cHg7XG59XG5cbi8qXG4ubW9kYWwtYm9keTpub3QoI21ldGFkYXRhLWJvZHksICkgbGl7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRwcmltYXJ5LWJsdWUxO1xuICBwYWRkaW5nOiAxMHB4IDEwcHggNXB4IDEwcHg7XG4gIGNvbG9yOiAkcHJpbWFyeS1ibHVlMTtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICRwcmltYXJ5LWJsdWUxO1xuICBtaW4td2lkdGg6IDIwMHB4O1xuICB3aWR0aDogbWluLWNvbnRlbnQ7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG4gKi9cblxuLyoqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICBTVVBQUklNRVJcbioqKioqKioqKioqKioqKioqKioqKiovXG4jZGVsZXRlX01vZGFsLCAjZXhpdF9Nb2RhbCwgI2NsZWFyX01vZGFse1xuICAubW9kYWwtYm9keXtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbiAgLm1vZGFsLWZvb3RlcntcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgfVxufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgIFBBUlRBR0VcbioqKioqKioqKioqKioqKioqKioqKiovXG5baWRePXRyYW5zZmVydF9Nb2RhbF17XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuXG4gIC5tb2RhbC1kaWFsb2d7XG4gICAgbWF4LXdpZHRoOiA4MDBweDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG5cbiAgZGl2OmZpcnN0LWNoaWxke1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gIH1cbiAgZGl2IHA6Zmlyc3QtY2hpbGR7XG4gICAgY29sb3I6ICRwdXJwbGUtbGlnaHQ7XG4gIH1cbn1cblxuLmhhbC1iZ3VzZXIucmVtb3ZlVXNlcntcbiAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICBidXR0b24sIGEge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBtYXJnaW4tbGVmdDogMTVweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxufVxuXG4udXNlci1zaGFyZXtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRncmF5LWU4O1xuICBoZWlnaHQ6IDUwcHg7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgSElTVE9SSVFVRVxuKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyogYWxlcnQgdmlvbGV0ICovXG4uYWxlcnQtdmlvbGV0IHtcbiAgY29sb3I6ICM4NjcwOEE7O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRTNEOUU1O1xuICBib3JkZXItY29sb3I6ICNDOUJGQ0I7XG4gIGg0IHtcbiAgICBmb250LXNpemU6IHVuc2V0O1xuICAgIGZvbnQtd2VpZ2h0OiB1bnNldDtcbiAgICBjb2xvcjogI2NlNWMwMDtcbiAgfVxufVxuXG4uYWxlcnR7XG4gIG1hcmdpbjogNXB4IGF1dG87XG4gIHBhZGRpbmc6IDVweDtcblxuICBzbWFsbHtcbiAgICBjb2xvcjogIzk5OTtcbiAgICBmb250LXNpemU6IDc1JTtcbiAgICBtYXJnaW4tbGVmdDogNXB4O1xuICB9XG59XG5cbiNoaXN0b3J5LWRldGFpbGVke1xuICBwYWRkaW5nLXRvcDogNXB4O1xuICBwYWRkaW5nLWJvdHRvbTogNXB4O1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAgIFJFTEFURURcbioqKioqKioqKioqKioqKioqKioqKiovXG4jcmVsYXRlZF9Nb2RhbCB7XG4gIGZvcm0ge1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICAgIG1heC1oZWlnaHQ6IDUwdmg7XG4gIH1cbiAgLm1vZGFsLWRpYWxvZyB7XG4gICAgbWF4LXdpZHRoOiA5MDBweFxuICB9XG4gIC5oYWwtb3B0aW9uLWJ1dHRvbiB7XG4gICAgcGFkZGluZzogMC4zNzVyZW0gMC43NXJlbTtcbiAgfVxuXG4gIC5mb3JtLXJlbGF0ZWQucGlsbGFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkZ3JheS1jYTtcbiAgICBwYWRkaW5nOiAyMHB4O1xuICAgIGxhYmVsIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayFpbXBvcnRhbnQ7XG4gICAgICBmbGV4OiAwIDAgMCAwO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIH1cbiAgICBmb3JtIHtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICBwYWRkaW5nOiAwIDIwcHggMjBweDtcbiAgICB9XG4gIH1cbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICBTdGFtcC91bnN0YW1wXG4qKioqKioqKioqKioqKioqKioqKioqL1xuI3RhbXBvbm5lcl9Nb2RhbCwgI2RldGFtcG9ubmVyX01vZGFsICB7XG4gIC5tb2RhbC1kaWFsb2cge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICB3aWR0aDo4MCVcbiAgfVxufSIsIi5zZWN0aW9uLWVycm9ye1xuICBwYWRkaW5nOiA1MHB4IDIwMHB4O1xuICB3aWR0aDogbWF4LWNvbnRlbnQ7XG4gIG1hcmdpbjogNjBweCBhdXRvIGF1dG8gYXV0bztcbn1cblxuLmVycm9yLXRpdGxle1xuICBjb2xvcjogJHByaW1hcnktb3JhbmdlO1xuICBmb250LXNpemU6ICRzaXplLWJpZztcbn1cblxuLmVycm9yLWNvbnRlbnR7XG4gIGZvbnQtc2l6ZTogJHNpemUtbGFyZ2U7XG59IiwiLyoqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgRkFDRVRTXG4qKioqKioqKioqKioqKioqKioqKioqL1xuLnNlY3Rpb24tZmFjZXRze1xuICBtYXJnaW4tdG9wOiAxOTVweDtcbn1cbi50aXRsZS1mYWNldHtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGNvbG9yOiAkcHJpbWFyeS1ibHVlMTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGZvbnQtc2l6ZTogJHNpemUtbGFyZ2U7XG4gIGJhY2tncm91bmQtY29sb3I6ICRncmF5LWY2O1xuXG4gIHNwYW4uaGFsLWljb257XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIGZvbnQtc2l6ZTogJHNpemUtbWludXM7XG4gICAgbWFyZ2luLXRvcDogMiU7XG4gIH1cbn1cblxuLmNvbnRlbnQtZmFjZXR7XG4gIHVsIHtcbiAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgIG1hcmdpbi1sZWZ0OiAyMnB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAxNXB4O1xuICAgIG1heC1oZWlnaHQ6IDM1MHB4O1xuICAgIG92ZXJmbG93OiBhdXRvO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbiAgW3R5cGU9XCJjaGVja2JveFwiXTpub3QoOmNoZWNrZWQpICsgbGFiZWwsIFt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCArIGxhYmVse1xuICAgIHdpZHRoOiA3MCU7XG4gICAgZm9udC1zaXplOiAkc2l6ZS1yZWd1bGFyO1xuICB9XG4gIGF7XG4gICAgY29sb3I6ICRibGFjaztcbiAgfVxuXG4gIC50ZXh0LW11dGVke1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBtYXJnaW4tcmlnaHQ6IDMwcHg7XG4gIH1cbn1cblxuLmZpbHRlci1oZWFkZXJ7XG4gIGZvbnQtc2l6ZTogJHNpemUtbGFyZ2U7XG4gIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4jYWRkRmlsdGVyLWJ1dHRvbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDAgYXV0bztcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRncmF5LWU4O1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbWFyZ2luLWJvdHRvbTogMTVweDtcblxuICAmOmhvdmVye1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRncmF5LWI5O1xuICB9XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgIFRPT0xTIEJBUlxuKioqKioqKioqKioqKioqKioqKioqKi9cbi5sZWZ0LXRvcHtcbiAgbGVmdDogMjUwcHg7XG4gIHRvcDogMDtcbn1cbi5yZXN1bHRzLXRvb2xze1xuICBoZWlnaHQ6IDgxcHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHdpZHRoOiAxMDAlO1xuXG4gID4gbGFiZWx7XG4gICAgdG9wOiAtMTBweDtcbiAgICBtYXJnaW4tbGVmdDogMTRweDtcbiAgfVxuICAudGFibGUtcmVzdWx0cy10b29sc3tcbiAgICB3aWR0aDogMTAwJTtcbiAgICB0ZDpmaXJzdC1jaGlsZCwgdGQ6bnRoLWNoaWxkKDIpe1xuICAgICAgd2lkdGg6IDEwJTtcbiAgICB9XG4gICAgdGQ6Zmlyc3QtY2hpbGR7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgICB9XG4gICAgdGQ6bGFzdC1jaGlsZHtcbiAgICAgIHdpZHRoOiAyMCU7XG4gICAgfVxuICAgIHRkOm50aC1jaGlsZCgzKXtcbiAgICAgIHdpZHRoOiA2MCU7XG4gICAgfVxuICB9XG59XG51bC5kcm9wZG93bi1tZW51LnBhZ2luYXRpb257XG4gIG1pbi13aWR0aDogYXV0bztcbn1cbi5kcm9wZG93bi1zb3J0e1xuICBidXR0b257XG4gICAgY29sb3I6ICRwcmltYXJ5LWJsdWUxO1xuICB9XG59XG5zcGFuLnN1YnRleHR7XG4gIGNvbG9yOiAkZ3JheS02NDtcbn1cblxuLnBhZ2luYXRpb257XG4gIG1hcmdpbjogYXV0bztcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgbGl7XG4gICAgbWFyZ2luLWxlZnQ6IDEycHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAxMnB4O1xuICAgIHBhZGRpbmc6IDZweDtcblxuICAgIGF7XG4gICAgICBjb2xvcjogJHByaW1hcnktYmx1ZTtcbiAgICB9XG4gICAgJi5hY3RpdmV7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHByaW1hcnktYmx1ZTtcbiAgICB9XG4gIH1cbn1cblxuLmRldGFtcG9ubmVyLCAudGFtcG9ubmVyIHtcbiAgLnRhbXBvbi1saXN0IHtcbiAgICBtYXgtd2lkdGg6IDUwdnc7XG4gIH1cbiAgYnV0dG9uIHtcbiAgICBwYWRkaW5nOiA1cHg7XG4gICAgbWFyZ2luOiAycHg7XG4gICAgLmhhbC1pY29uIHtcbiAgICAgIG1hcmdpbi1yaWdodDogdW5zZXQ7XG4gICAgfVxuICB9XG59XG5cblxuLyoqKioqKioqKioqKioqKioqKioqKipcbiAgICAgICAgUkVTVUxUU1xuKioqKioqKioqKioqKioqKioqKioqKi9cbi5yZXN1bHRzLWhlYWRlcntcbiAgPiBkaXY6Zmlyc3QtY2hpbGQgPiBzcGFuLCA+IGRpdjpmaXJzdC1jaGlsZCA+IGJ1dHRvbiB7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgZm9udC1zaXplOiAkc2l6ZS14bDtcbiAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICB9XG4gID4gZGl2OmZpcnN0LWNoaWxkID4gYnV0dG9ue1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBmb250LXNpemU6ICRzaXplLXhsO1xuICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xuICB9XG5cbiAgPiBkaXY6bnRoLWNoaWxkKDIpe1xuICAgIG1hcmdpbi1ib3R0b206IDUwcHg7XG4gICAgLmhhbC1iZ3VzZXJ7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1ibHVlMTtcbiAgICAgIGZvbnQtc2l6ZTogJHNpemUtcmVndWxhcjtcbiAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgfVxuICB9O1xufVxuXG5cbi5yZXN1bHRzLXRhYmxle1xuICB0cntcbiAgICB0ZDpmaXJzdC1jaGlsZHtcbiAgICAgIHdpZHRoOiA2MXB4O1xuICAgIH1cbiAgICB0ZDpudGgtY2hpbGQoMil7XG4gICAgICB3aWR0aDogMTAwcHg7XG4gICAgfVxuICAgIC5yZXN1bHQtYWN0aW9uc3tcbiAgICAgIHdpZHRoOiAxMDBweDtcbiAgICB9XG4gIH1cbiAgdGR7XG4gICAgYXtcbiAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICB9XG4gICAgLmlzdGV4IHtcbiAgICAgIGZvbnQtc2l6ZTogJHNpemUtc21hbGw7XG4gICAgICBwYWRkaW5nOiA1cHggOHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JheS1lODtcbiAgICAgIGRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50O1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRncmF5LWI5O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBoM3tcbiAgICBmb250LXNpemU6ICRzaXplLWxhcmdlO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbiAgLmF1dGhvcnMtcmVzdWx0cyBhe1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGNvbG9yOiAkcHJpbWFyeS1ibHVlMTtcbiAgICBmb250LXNpemU6ICRzaXplLXNtYWxsO1xuICB9XG4gIC5jaXRhdGlvbi1yZXN1bHRzLCAuY2l0YXRpb24tcmVzdWx0cyBhe1xuICAgIGZvbnQtc2l6ZTogJHNpemUtc21hbGw7XG4gICAgY29sb3I6ICRwcmltYXJ5LWJyb3duO1xuICB9XG4gIC5oYWxJZC1yZXN1bHRze1xuICAgIGZvbnQtc2l6ZTogJHNpemUtc21hbGw7XG4gIH1cbn1cblxuLmRyb3Bkb3duLXRvb2xzIHtcbiAgYm9yZGVyOiAxcHggc29saWQgJGdyYXktY2E7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIHdpZHRoOiBtYXgtY29udGVudDtcblxuICBsaSA+IGJ1dHRvbiwgbGkgPiBhLCBsaS5uYi1kb2MtY2hlY2tlZHtcbiAgICBwYWRkaW5nOiAxMHB4IDIxcHggMTBweCAzNHB4O1xuICB9XG4gIGxpID4gYXtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICBsaSA+IGJ1dHRvbiwgbGkgPiBhe1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBjb2xvcjogJGJsYWNrO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGRpc3BsYXk6IGZsZXg7XG5cbiAgICAuaGFsLWljb24sIC5oYWwtaWNvbjo6YmVmb3Jle1xuICAgICAgY29sb3I6ICR0b29scy1zb3J0O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxN3B4O1xuICAgIH1cbiAgfVxuICBsaTpub3QoLm5iLWRvYy1jaGVja2VkKTpob3ZlciwgbGk6bm90KC5uYi1kb2MtY2hlY2tlZCk6Zm9jdXMsIGxpLmFjdGl2ZXtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1ibHVlMTtcbiAgICA+IGJ1dHRvbiwgPiBhLCAuaGFsLWljb24sIC5oYWwtaWNvbjo6YmVmb3Jle1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICB9XG4gIH1cbn1cblxuLm5iLWRvYy1jaGVja2VkIHtcbiAgY29sb3I6ICRncmF5LTk3O1xuICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gICY6OmFmdGVye1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZ3JheS05NztcbiAgICB3aWR0aDogMTAwcHg7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA0NXB4O1xuICAgIGxlZnQ6IDM0cHg7XG4gIH1cbn1cblxuLnBvcC1vdmVye1xuICBkaXNwbGF5OiBub25lO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAxMTAlO1xuICBib3R0b206IDAlO1xuICB3aWR0aDogbWF4LWNvbnRlbnQ7XG4gIHBhZGRpbmc6IDE1cHggMjVweDtcbiAgb3ZlcmZsb3cteTogc2Nyb2xsO1xuXG4gICYubGVmdHtcbiAgICByaWdodDogMDtcbiAgICB6LWluZGV4OiAyO1xuICB9XG4gICYuc2hvd3tcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIGg0e1xuICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICAgIGZvbnQtc2l6ZTogJHNpemUtbGFyZ2U7XG4gIH1cbn1cblxuLnBvcC1vdmVyLWNvbnRlbnQsIC5wb3Atb3Zlci1mb290ZXJ7XG4gIHBhZGRpbmctbGVmdDogMTBweDtcbn1cblxuLnBvcC1vdmVyLWZvb3RlcntcbiAgYXtcbiAgICBjb2xvcjogJHByaW1hcnktYmx1ZTE7XG4gIH1cbn1cblxuLnBvcHVwU2F2ZVNlYXJjaCB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bih4cykge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICByaWdodDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTc1cHg7XG4gIH1cbn1cblxuI2Zvcm1TYXZlU2VhcmNoe1xuICAuaW5wdXQtZ3JvdXB7XG4gICAgZGlzcGxheTogdGFibGU7XG5cbiAgICBzcGFuLCBpbnB1dHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICBmb250LXNpemU6IDFyZW07XG4gICAgfVxuICAgIGlucHV0e1xuICAgICAgbWFyZ2luLWxlZnQ6IDIwcHg7XG4gICAgICB3aWR0aDogOTAlXG4gICAgfVxuICB9XG4gIC5mbG9hdC1yaWdodHtcbiAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgIGJ1dHRvbntcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgIHBhZGRpbmc6IDEwcHggMzBweDtcbiAgICB9XG4gIH1cbn1cblxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKGxnKSB7XG4gIC5jb2wtMy5zZWN0aW9uLWZhY2V0cyA+ICp7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cblxuLyoqKioqKipcbiAgQURWQU5DRURcbioqKioqKiovXG4uaW5wdXQtZ3JvdXAge1xuXG4gIC5mb3JtLWJ0bi1sYW5nIHtcbiAgICBiYWNrZ3JvdW5kOiAkZ3JheS1mNCFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2M4YzhjOCFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLXJpZ2h0OjA7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBmb250LXdlaWdodDogbm9ybWFsIWltcG9ydGFudDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICBmb250LXNpemU6ICRzaXplLXNtYWxsO1xuICB9XG5cbiAgaW5wdXQge1xuICAgIHdpZHRoOiA4MCU7XG4gIH1cblxuICBzcGFuLmlucHV0LWdyb3VwLWJ0biB7XG4gICAgd2lkdGg6IDEwMHB4O1xuICAgIGhlaWdodDogMzVweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOmluaGVyaXQ7XG4gICAgJjpob3ZlcntcbiAgICAgIGJhY2tncm91bmQtY29sb3I6aW5oZXJpdDtcbiAgICB9XG5cbiAgICBidXR0b24ge1xuICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICBjb2xvcjogJHdoaXRlIWltcG9ydGFudDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWJsdWUxO1xuICAgICAgcGFkZGluZzogMCAxMHB4O1xuICAgICAgJjpob3ZlcntcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktYmx1ZTEtaG92ZXI7XG4gICAgICB9XG5cbiAgICAgICYuZm9ybS1idG4tZGVsIHtcbiAgICAgICAgY29sb3I6ICRzZWNvbmRhcnktZXJyb3I7XG4gICAgICAgIGZvbnQtc2l6ZTogJHNpemUtbWludXM7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQhaW1wb3J0YW50O1xuICAgICAgICAmOmhvdmVye1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbiNtb2RpZkFkdmFuY2VkU2VhcmNoe1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtc2l6ZTogJHNpemUtcmVndWxhcjtcbiAgY29sb3I6ICR3aGl0ZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktYmx1ZTE7XG4gIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgcGFkZGluZzogNXB4IDEwcHg7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gIGJvcmRlcjogdHJhbnNwYXJlbnQ7XG4gIHdpZHRoOiAxMDAlO1xuXG4gICY6aG92ZXIge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1ibHVlLWhvdmVyO1xuICB9XG59XG5cbiNhZHZTZWFyY2gge1xuICAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICB3aGl0ZS1zcGFjZTogdW5zZXQ7XG4gIH1cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XG4gICAgLmlucHV0LWdyb3VwLWJ0biB7XG4gICAgICB3aWR0aDogdW5zZXQ7XG4gICAgICAuYnRuIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IHVuc2V0O1xuICAgICAgICBzcGFuIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgICNzdWJtaXQtZWxlbWVudCB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICByaWdodDogMDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIH1cbiAgfVxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcbiAgICAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgICAuaW5wdXQtZ3JvdXAtYnRuIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiB1bnNldDtcbiAgICB9XG4gICAgI3N1Ym1pdC1lbGVtZW50IHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgI3N1Ym1pdC1idXR0b24ge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XG4gICNzZWFyY2hIZWFkZXJTb2xyIHtcbiAgICBkaXYge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBwb3NpdGlvbjogdW5zZXQgIWltcG9ydGFudDtcbiAgICAgIGJ1dHRvbiB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBmbG9hdDogdW5zZXQgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLnNlYXJjaC1zcGlubmVyIHtcbiAgY29sb3I6JHByaW1hcnktYmx1ZTEtZGlzYWJsZWQ7XG4gIHRvcDoxNHB4O1xuICByaWdodDo1NXB4O1xuICB3aWR0aDogMS41cmVtO1xuICBoZWlnaHQ6IDEuNXJlbTtcbiAgYm9yZGVyLXdpZHRoOiAwLjE1cmVtO1xufSIsIi8qKioqKioqKioqKioqKipcbkZMQVNIIE1FU1NHQUVcbiAqKioqKioqKioqKioqKiovXG4uZmxhc2gtbWVzc2FnZXtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHNoZWFkZXI7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIG1hcmdpbi1ib3R0b206IDQ3cHg7XG4gIC5jbG9zZXtcbiAgICB6LWluZGV4OiAxO1xuICB9XG4gIC5jb2wtbGctMXtcbiAgICBtYXgtd2lkdGg6IDElO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWJsdWUxO1xuICAgIHdpZHRoOiA0MHB4O1xuICAgIC8vIGNhdXNlIG9mIGFsZXJ0IHdoaWNoIGhhcyBwYWRkaW5nXG4gICAgbWFyZ2luOiAtNXB4IDAgLTVweCAwO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbiAgLmNvbC1sZy04e1xuICAgIG1hcmdpbjogYXV0bztcbiAgICAvL2ZvbnQtd2VpZ2h0OiBib2xkO1xuICB9XG4gIC5jb2wtbGctM3tcbiAgICBtYXJnaW46IGF1dG87XG4gIH1cbn1cblxuLyoqKioqKioqKioqKioqKlxuU1RBVElTVElRVUVTXG4gKioqKioqKioqKioqKioqL1xuXG4ubm8tc3RhdCB7XG4gIEBleHRlbmQgJW5vLWRhdGE7XG4gIGhlaWdodDogMzAwcHg7XG4gIG1hcmdpbi1ib3R0b206IDUwcHg7XG59XG5cblxuLyoqKioqKioqKioqKioqKlxuTUVTIERFUE9UUyAmIE1PTiBBQ1RJVklURVxuICoqKioqKioqKioqKioqKi9cbi5kYXNoYm9hcmQtd2lkZ2V0LXNlY3Rpb257XG4gIG1hcmdpbi1ib3R0b206IDU1cHg7XG4gIC5tYXJnaW4tcmlnaHR7XG4gICAgbWFyZ2luLXJpZ2h0OiAxLjUlO1xuICB9XG4gIGg0e1xuICAgIGZvbnQtc2l6ZTogJHNpemUtbGFyZ2U7XG4gIH1cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuICAgIC5jb2wtbGctNntcbiAgICAgIGZsZXg6IDAgMCBjYWxjKDYvMTIqMTAwJSAtICN7MS41JX0pO1xuICAgICAgbWF4LXdpZHRoOiBjYWxjKDYvMTIqMTAwJSAtICN7MS41JX0pO1xuICAgIH1cbiAgfVxufVxuXG4uaXRlbS1kYXNoYm9hcmR7XG4gIHBhZGRpbmc6IDUycHggNDdweCAzN3B4IDQ3cHg7XG4gIG1heC1oZWlnaHQ6IDU3NnB4O1xuICBvdmVyZmxvdzogYXV0bztcbiAgLml0ZW06bGFzdC1jaGlsZHtcbiAgICBwYWRkaW5nLXRvcDogMjRweDtcbiAgfVxuICAuZWRpdC1kZXBvc2l0LCAucmVwbHktYnV0dG9ue1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBwYWRkaW5nOiA3cHg7XG4gICAgbWFyZ2luOiAycHg7XG4gICAgLmljb257XG4gICAgICBwYWRkaW5nLXJpZ2h0OiA1cHg7XG4gICAgfVxuICB9XG4gIHRhYmxlIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB0ciB7XG4gICAgICB0ZDpmaXJzdC1jaGlsZCB7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMzBweDtcbiAgICAgIH1cbiAgICAgIHRkOm50aC1jaGlsZCgyKSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vKioqKioqKioqKioqKioqXG5NRVMgREVQT1RTXG4gKioqKioqKioqKioqKioqL1xuXG4ubm8tZGVwb3NpdCB7XG4gIEBleHRlbmQgJW5vLWRhdGE7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuXG5cbi8qKioqKioqKioqKioqKipcbk1PTiBBQ1RJVklURVxuICoqKioqKioqKioqKioqKi9cbi5pY29uLWFjdGl2aXR5e1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JheS1lODtcbiAgYm9yZGVyLXJhZGl1czogOTBweDtcbiAgd2lkdGg6IDUxcHg7XG4gIGhlaWdodDogNTFweDtcbiAgbWFyZ2luLXJpZ2h0OiAzMHB4O1xuXG4gIHNwYW57XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZy1sZWZ0OiAzNSU7XG4gICAgcGFkZGluZy10b3A6IDM1JTtcbiAgICBjb2xvcjogJHByaXZpbGVnZS1idXR0b247XG4gIH1cbn1cblxuLmRhdGUtYWN0aXZpdHl7XG4gIGZsb2F0OiByaWdodDtcbiAgY29sb3I6ICRwcml2aWxlZ2UtYnV0dG9uO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cblxuXG4ubm8tYWN0aXZpdHkge1xuICBAZXh0ZW5kICVuby1kYXRhO1xuICBoZWlnaHQ6IDQwMHB4O1xuICBtYXJnaW4tYm90dG9tOiA1MHB4O1xufVxuXG4vKioqKioqKioqKioqKioqXG5PUkNJRFxuICoqKioqKioqKioqKioqKi9cblxuLmdyYXktc2VwYXJhdG9yIHtcbiAgcGFkZGluZzogMXB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JheS1lODtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcbn1cbiIsIi8qKioqKioqKioqKioqKioqKioqKioqXG4gICAgICAgTk8gUkVTVU1FXG4qKioqKioqKioqKioqKioqKioqKioqL1xuLm5vLWN2e1xuICBAZXh0ZW5kICVuby1kYXRhO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDUwcHggMHB4O1xuICAgLmhhbC1vcHRpb24tYnV0dG9uIHtcbiAgICB3aWR0aDogdW5zZXQ7XG4gICAgcGFkZGluZzogNXB4IDEwcHg7XG4gICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICB9XG4gIC5jY3NkX2Zvcm1fcmVxdWlyZWQge1xuICAgIGZsZXg6IHVuc2V0O1xuICB9XG4gIC8qLmljb257XG4gICAgZm9udC1zaXplOiAyOHJlbTtcbiAgICBvcGFjaXR5OiAuMTtcbiAgICBtYXJnaW46IGF1dG87XG4gICAgd2lkdGg6IHVuc2V0O1xuICB9Ki9cbn1cblxuI2Zvcm0tY3JlYXRlLWN2IHtcbiAgd2lkdGg6IDgwJTtcbiAgdGV4dGFyZWEge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNjOGM4YzghaW1wb3J0YW50O1xuICB9XG5cbiAgLnRleHRhcmVhLWdyb3VwIHtcbiAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICY+YnV0dG9uLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWwhaW1wb3J0YW50O1xuICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgYmFja2dyb3VuZDokZ3JheS1mNCFpbXBvcnRhbnQ7XG4gICAgICBib3JkZXItbGVmdDogMXB4IWltcG9ydGFudDtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRncmF5LWNhIWltcG9ydGFudDtcbiAgICAgIGJvcmRlci1ib3R0b206IDAhaW1wb3J0YW50O1xuICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgIGhlaWdodDogNDBweCFpbXBvcnRhbnQ7XG4gICAgICBmb250LXNpemU6ICRzaXplLXNtYWxsO1xuICAgIH1cblxuICAgIC5wdWxsLXJpZ2h0IHtcbiAgICAgIGJ1dHRvbiB7XG4gICAgICAgIG1hcmdpbi10b3A6IDVweDtcbiAgICAgICAgZm9udC1zaXplOiAkc2l6ZS1zbWFsbDtcbiAgICAgICAgY29sb3I6ICRwcmltYXJ5LWJsdWUxO1xuXG4gICAgICAgICYuZm9ybS1idG4tZGVsIHtcbiAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICAgIGNvbG9yOiAkc2Vjb25kYXJ5LWVycm9yIWltcG9ydGFudDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqXG4gR0VORVJBTCBSRVNVTUVcbioqKioqKioqKioqKioqKioqKioqKiovXG4vKlxuICBIRUFEIFdJVEggQ09OU1VMVCAuLi4gQlVUVE9OXG4gKi9cbi5yZXN1bWUtaGVhZHtcbiAgaDF7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgZm9udC13ZWlnaHQ6IHVuc2V0O1xuICB9XG4gIGF7XG4gICAgZm9udC1zaXplOiAkc2l6ZS1yZWd1bGFyO1xuICAgIG1hcmdpbi10b3A6IDQwcHg7XG4gIH1cbn1cbi8qXG4gIEVYUExJQ0FUSUYgVEVYVCBGT1IgRUFDSCBUQUJcbiAqL1xuLmV4cGxpY2F0aWYtdGV4dCB7XG4gIGNvbG9yOiAkcHVycGxlLWxpZ2h0O1xuICBsaW5lLWhlaWdodDogMjtcbiAgbWFyZ2luLWJvdHRvbTogMzZweDtcblxuICArIGJ1dHRvbi5oYWwtdmlzdWFsaXplLWJ1dHRvbntcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogLTgwcHg7XG4gIH1cbn1cbi8qKioqKioqKioqKioqKioqKioqKioqXG4gICAgICBNWSBXSURHRVRTXG4qKioqKioqKioqKioqKioqKioqKioqL1xuLy8gTGEgIHRyYW5zcGFyZW5jZSBkZSBsJ8OpbMOpbWVudCBzw6lsZWN0aW9ubsOpXG4uZ3UtdHJhbnNpdHtcbiAgb3BhY2l0eTogMC4yO1xufVxuLy8gTCfDqWzDqW1lbnQgc8OpbGVjdGlvbm7DqSBxdWkgc2VyYSBwcmlzIGF2ZWMgbGEgc291cmlzXG4uZ3UtbWlycm9yIHtcbiAgcGFkZGluZzogNXB4O1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBwb3NpdGlvbjogZml4ZWQgIWltcG9ydGFudDtcbiAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gIHotaW5kZXg6IDk5OTkgIWltcG9ydGFudDtcbiAgb3BhY2l0eTogMC44O1xuICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9ODApO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2hlYWRlcjtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGxhYmVse1xuICAgIHBhZGRpbmctbGVmdDogNjBweCAhaW1wb3J0YW50O1xuICB9XG59XG4uZ3UtaGlkZSB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLmd1LXVuc2VsZWN0YWJsZSB7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmUgIWltcG9ydGFudDtcbiAgLW1vei11c2VyLXNlbGVjdDogbm9uZSAhaW1wb3J0YW50O1xuICAtbXMtdXNlci1zZWxlY3Q6IG5vbmUgIWltcG9ydGFudDtcbiAgdXNlci1zZWxlY3Q6IG5vbmUgIWltcG9ydGFudDtcbn1cbi8qKioqKioqKioqKioqKioqKioqKioqXG4gICAgIEJJT0dSQVBIWSBEQVRBXG4qKioqKioqKioqKioqKioqKioqKioqL1xuLnNlY3Rpb24tc2hhZG93LnBnLTIwe1xuICBoM3tcbiAgICBmb250LXNpemU6ICRzaXplLWxhcmdlO1xuICB9XG4gICYuY29sLWxnLTV7XG4gICAgbWF4LWhlaWdodDogNTYzcHg7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgdGV4dGFyZWF7XG4gICAgICBoZWlnaHQ6IDEzMHB4O1xuICAgIH1cbiAgfVxuICB0ZXh0YXJlYXtcbiAgICByZXNpemU6IG5vbmU7XG4gICAgaGVpZ2h0OiAyMzBweDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAubGl0dGxle1xuICAgIG1heC1oZWlnaHQ6IDI1MHB4O1xuICAgIG92ZXJmbG93OiBhdXRvO1xuICB9XG4gIC51c2VyLXBob3Rve1xuICAgIG1hcmdpbjogNTBweCAwO1xuICB9XG4gIGxpe1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gIH1cbiAgLmRpc3BsYXllZHtcbiAgICAuc2VsZWN0Mi1jb250YWluZXJ7XG4gICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAuc2VsZWN0Mi1zZWxlY3Rpb257XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgfVxuICAgIGlucHV0e1xuICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRwcmltYXJ5LWJsdWUzO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBoZWlnaHQ6IDQycHg7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gICAgfVxuICAgIC5zZWxlY3QyLXNlYXJjaHtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgIH1cbiAgICAuaWNvbi1hZGRfd2hpdGU6YmVmb3Jle1xuICAgICAgY29sb3I6ICRwcmltYXJ5LWJsdWUxO1xuICAgIH1cbiAgICBidXR0b24uZ28tYmFjazpob3ZlcntcbiAgICAgIC5pY29uLWFkZF93aGl0ZTpiZWZvcmV7XG4gICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbiNjb250ZW50LXJlc3VtZSAudGFiLWNvbnRlbnQgbGkge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XG4gICNiaW9ncmFwaHktZGF0YSB7XG4gICAgLnBnLTIwOm5vdCg6Zmlyc3Qtb2YtdHlwZSkge1xuICAgICAgbWFyZ2luLWxlZnQ6IDMlO1xuICAgIH1cbiAgfVxufVxuLnNlY3Rpb24tc2hhZG93LnBnLTIwIC5kaXNwbGF5ZWQgLnNlbGVjdDItc2VsZWN0aW9uX19jaG9pY2UsIC50aWNrZXR7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWJsdWUzO1xuICBib3JkZXI6IG5vbmU7XG4gIHBhZGRpbmc6IDVweCAxNXB4O1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBjb2xvcjogd2hpdGU7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gIHNwYW57XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIHBhZGRpbmctcmlnaHQ6IDEwcHggO1xuICB9XG59XG4udGlja2V0e1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgd2lkdGg6IG1heC1jb250ZW50O1xufVxuI3NraWxsc3tcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBkaXZ7XG4gICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICB9XG59XG4uc2VsZWN0Mi1jb250YWluZXItLW9wZW4uczItdG8tdHJlZXtcbiAgbWFyZ2luLXRvcDogLTMwcHggIWltcG9ydGFudDtcbn1cbi53cmFwcGVyLXN3aXRjaHtcbiAgZGlzcGxheTogZmxleDtcbiAgaDN7XG4gICAgZmxleC1ncm93OiAxMjtcbiAgICBmb250LXdlaWdodDogdW5zZXQ7IC8vXG4gICAgYnV0dG9uIHNwYW57XG4gICAgICBjb2xvcjogJHByaW1hcnktYmx1ZTE7XG4gICAgfVxuICB9XG59XG5cbi5zb2NpYWwtbmFtZXtcbiAgY29sb3I6ICRncmF5LTcwO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbWluLXdpZHRoOiA0NSU7XG59XG4ubm8taW4tcmVzdW1le1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjb2xvcjogJHB1cnBsZS1saWdodDtcbiAgZm9udC1zaXplOiAkc2l6ZS1sYXJnZTtcbiAgcGFkZGluZzogNzJweCAwO1xufVxuXG4jZG9tYWlucy1yZXN1bWUge1xuICAuc2VsZWN0Mi1zZWFyY2gge1xuICAgIG1hcmdpbi1ib3R0b206IHVuc2V0O1xuICB9XG4gIC5zZWxlY3QyLXNlYXJjaF9fZmllbGQge1xuICAgIG1hcmdpbi10b3A6IDEyMHB4O1xuICB9XG4gIC5zZWxlY3QyLWNvbnRhaW5lciB7XG4gICAgYm9yZGVyOiB1bnNldDtcbiAgfVxuICAuZGlzcGxheWVkIHtcbiAgICAmOm5vdCguaGlkZSkge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICB9XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBoZWlnaHQ6IDk1JTtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICB9XG59XG5cbiNza2lsbHMtcmVzdW1lIHtcbiAgLmRpc3BsYXllZCB7XG4gICAgJjpub3QoLmhpZGUpIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgfVxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgICAgIGhlaWdodDogOTUlO1xuICAgIH1cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcbiAgICAgIGhlaWdodDogMTUwcHg7XG4gICAgfVxuICB9XG59XG5cbiN1c2VyLXB1YmxpY2F0aW9ucywgI3VzZXItZmFjZXR0ZXMge1xuICAucm93IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAuY29sLXhsLTQge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRncmF5LWRlO1xuICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgaGVpZ2h0OiBmaXQtY29udGVudDtcbiAgfVxuICAjZHJhZ29uLXB1YmxpLCAjZHJhZ29uLXdpZGdldCB7XG4gICAgbGkge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBwYWRkaW5nOiA1cHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2hlYWRlcjtcbiAgICAgIG1hcmdpbjogNXB4O1xuICAgICAgJi5zZWxlY3RlZCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWJsdWUzO1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgIH1cbiAgICAgIGxhYmVsIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IHVuc2V0O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAjbGlzdC1wdWJsaS1yZXN1bWUge1xuICAgIHBhZGRpbmctbGVmdDogMiU7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgIHRhYmxlIHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRzaGVhZGVyO1xuICAgICAgdGhlYWQge1xuICAgICAgICB0ciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHNoZWFkZXI7XG4gICAgICAgIH1cbiAgICAgICAgdGQge1xuICAgICAgICAgIHBhZGRpbmctdG9wOiA3cHg7XG4gICAgICAgICAgcGFkZGluZy1ib3R0b206IDdweDtcbiAgICAgICAgICAudGljayB7XG4gICAgICAgICAgICB0b3A6IC0xN3B4XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbiN1c2VyLWN2LWN1c3RvbWl6YXRpb24ge1xuICAjY3NzLWZvcm0ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAjdGhlbWUtZWxlbWVudCB7XG4gICAgICB3aWR0aDogNDAlO1xuICAgIH1cbiAgICAjY3NzLWVsZW1lbnQge1xuICAgICAgd2lkdGg6IDkwJTtcbiAgICB9XG4gIH1cbn1cblxuLmVkaXRvci10b29sYmFyIC50YWJsZSB7XG4gIHdpZHRoOiB1bnNldDtcbn1cblxuLmljb24tY3Yge1xuICBiYWNrZ3JvdW5kOiAkcmVkLWNvbnRhY3Q7XG4gIHBhZGRpbmc6IDVweDtcbiAgY29sb3I6ICR3aGl0ZTtcbn1cblxuLnh4eGxhcmdlIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKGxnKSB7XG4gICAgaGVpZ2h0OiA4MHB4IWltcG9ydGFudDtcbiAgICB3aWR0aDogODBweCFpbXBvcnRhbnQ7XG4gICAgLmluaXRpYWxzIHtcbiAgICAgIGZvbnQtc2l6ZTogNDBweCFpbXBvcnRhbnQ7XG4gICAgICB0b3A6IDE4cHghaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuXG4jc29jaWFsIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDA7XG4gIHJpZ2h0OiAwO1xuICBhIHtcbiAgICBtYXJnaW4tbGVmdDogNHB4O1xuICB9XG4gIC5pY29uLWN2IHtcbiAgICBmb250LXNpemU6IDIwcHg7XG4gIH1cbiAgLmljb24tdHdpdHRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJsdWUtdHdpdHRlcjtcbiAgfVxuICAuaWNvbi1mYWNlYm9vayB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJsdWUtZmFjZWJvb2s7XG4gIH1cbiAgLmljb24tbGlua2VkaW4ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRibHVlLWxpbmtlZGluO1xuICB9XG59XG5cbi5oYWwtZG9tYWlucy1hbmQtc2tpbGxzIHtcbiAgLmhhbC1iZ3RleHQge1xuICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICAmOmhvdmVyIHtcbiAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICB9XG4gIH1cbn1cbiIsIiNyZXN1bWUtdmlzdXtcbiAgLnA1MHtcbiAgICBwYWRkaW5nOiA0NXB4IDUwcHggMjVweCA1MHB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gICYubmF2YmFyLWNvbGxhcHNlIHtcbiAgICBhbGlnbi1pdGVtczogaW5pdGlhbDtcbiAgfVxufVxuLnJlYWQtbW9yZXtcbiAgbWF4LWhlaWdodDogMzU1cHg7XG4gIHdvcmQtd3JhcDogYW55d2hlcmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4jZG9tYWluLXJlc3VtZS12aXN1YWxpemF0aW9ue1xuICBtYXgtaGVpZ2h0OiAzMTBweDtcbiAgLmhhbC1iZ3RleHR7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktYmx1ZTM7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBmb250LXNpemU6ICRzaXplLXJlZ3VsYXI7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIH1cbn1cbiNyZXN1bWUtY29udGVudC1kb2N1bWVudHtcbiAgLnNlY3Rpb24tc2hhZG93LnBnLTIwe1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZm9ybXtcbiAgICAgIG1hcmdpbjogMDsgZmxleC1ncm93OiAzXG4gICAgfVxuICAgIGlucHV0e1xuICAgICAgd2lkdGg6IDMwJTtcbiAgICB9XG4gIH1cblxuICAuc2VhcmNoOmZvY3VzLXZpc2libGUge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gIH1cblxuICAucmVzdWx0cy10YWJsZSAubWVkaWEge1xuICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgfVxuXG4gIC50aXRsZS1mYWNldCB7XG4gICAgcGFkZGluZzogMC43NXJlbTtcbiAgICBzcGFuLmhhbC1pY29uIHtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICBwYWRkaW5nLXRvcDogOHB4O1xuICAgIH1cbiAgfVxuXG4gIC50YWJsZS13aGl0ZSB0cjpsYXN0LWNoaWxkIHtcbiAgICBib3JkZXItYm90dG9tOiBub25lO1xuICB9XG5cbn1cbi5yZWFkLW1vcmUgLnRhYi1jb250ZW50IC5oaWRle1xuICAvLyB0byBjb252ZXJ0IG1hcmtkb3duIGludG8gSFRNTFxuICB3aGl0ZS1zcGFjZTogYnJlYWstc3BhY2VzO1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTAwNnB4KXtcbiAgI3Jlc3VtZS1jb250ZW50LWRvY3VtZW50e1xuICAgIC5zZWN0aW9uLXNoYWRvdy5wZy0yMHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgaW5wdXR7XG4gICAgICAgIHdpZHRoOiA4MCU7XG4gICAgICB9XG4gICAgfVxuICAgIC5zZWN0aW9uLXNoYWRvdy5saXN0e1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG59XG5cbiNyZXN1bWUtcHJlc2VudGF0aW9uLXZpc3Uge1xuICBAbWVkaWEgKG1heC13aWR0aDogMTQwNnB4KXtcbiAgICAuY29sLTh7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICB9XG4gICAgLmNvbC0ye1xuICAgICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICAgIHRvcDogMCAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcbiAgICAjY29vcmQge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAuY29sLTMge1xuICAgICAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICB0cntcbiAgICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5waG90by1jb2wtM3tcbiAgICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG4gICAgLnJvdzpmaXJzdC1vZi10eXBlIC5jb2wtOXtcbiAgICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgLmNvbC0ye1xuICAgICAgICBmbGV4OiAwIDAgNTAlO1xuICAgICAgICBtYXgtd2lkdGg6IDUwJTtcbiAgICAgIH1cbiAgICB9XG4gICAgLm5hdmJhci10b2dnbGVyIHNwYW4gc3BhbntcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWJsdWUxO1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtb25seShsZykge1xuICAgIC5yb3c6Zmlyc3Qtb2YtdHlwZSAuY29sLTkge1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAucm93IHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIlxuLm0tZGVwb3NpdCB7XG4gIC5mb3JtLW1ldGEge1xuICAgICAgLmhhcy1lcnJvciB7XG4gICAgICAgIC5lcnJvciB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICAgICAgaW5wdXQsIHRleHRhcmVhIHtcbiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkc2Vjb25kYXJ5LWVycm9yIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgfVxuICB9XG59XG5cbi5tb2RhbCAuaWNvbi1yZXF1aXJlZCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4jZXhpdF9Nb2RhbCB7XG4gIHotaW5kZXg6IDEwMDA7XG59XG4jbW9kYWwtdHlwZG9jIHtcbiAgei1pbmRleDogOTk5O1xufVxuXG4jbGlzdC1pdGVtLWRlcG9zaXQge1xuICBmb250LXNpemU6ICRzaXplLWxhcmdlO1xuICBwb3NpdGlvbjogZml4ZWQ7XG5cbiAgbGkge1xuICAgIHBhZGRpbmc6IDVweDtcblxuICAgIGEge1xuICAgICAgY29sb3I6ICRibGFjaztcbiAgICB9XG5cbiAgICAmLm1haW4taXRlbSB7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcblxuICAgICAgJjpub3QoZmlyc3QtY2hpbGQpIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmNoaWxkLWl0ZW0ge1xuICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgZm9udC1zaXplOiAkc2l6ZS1yZWd1bGFyO1xuICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICB9XG5cbiAgICAmLmFjdGl2ZSB7XG4gICAgICBhIHtcbiAgICAgICAgY29sb3I6ICRwcmltYXJ5LWJsdWUxO1xuICAgICAgfVxuXG4gICAgICAmLmNoaWxkLWl0ZW0ge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JheS1lODtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBsaTpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGdyYXktZTg7XG5cbiAgICBhIHtcbiAgICAgIGNvbG9yOiAkcHJpbWFyeS1ibHVlMTtcbiAgICB9XG4gIH1cblxufVxuXG4uc3VibWlzc2lvbi1mb3JtIHtcbiAgbWFyZ2luLWJvdHRvbTogMjNweDtcblxuICBoMiBzbWFsbCB7XG4gICAgZm9udC1zaXplOiAkc2l6ZS1sYXJnZTtcbiAgICBjb2xvcjogJGdyYXktNjQ7XG4gIH1cblxuICAuc3VibWl0LXN0ZXAge1xuICAgIC5zdGVwLXRpdGxlIHtcbiAgICAgIHBhZGRpbmc6IDE1cHggMzZweDtcbiAgICAgIGZvbnQtc2l6ZTogJHNpemUtbGFyZ2U7XG4gICAgICBjb2xvcjogJHByaW1hcnktYmx1ZTE7XG4gICAgICBiYWNrZ3JvdW5kOiAkZ3JheS1mNjtcbiAgICAgIHNtYWxsIHtcbiAgICAgICAgZm9udC1zaXplOiAkc2l6ZS1zbWFsbDtcbiAgICAgICAgZm9udC1zdHlsZTppdGFsaWM7XG4gICAgICAgIHBhZGRpbmctbGVmdDoxMHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4jYXV0LXN0cnVjdCB7XG4gIC5vdmVybGF5LWNvbnRhaW5lciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG4gIC5vdmVybGF5IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgbGVmdDogNTAlO1xuICAgIG9wYWNpdHk6IDAuNTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgei1pbmRleDogOTk5O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRncmF5LWY2O1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLnVwbG9hZC1hcmVhIHtcbiAgYm9yZGVyOiAxcHggZGFzaGVkICRwcmltYXJ5LWJsdWU7XG4gIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgb3BhY2l0eTogMTtcbiAgaGVpZ2h0OiAyNDJweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAmLmlzLWFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHNoZWFkZXI7XG4gIH1cblxuXG4gIC5pY29uLXVwbG9hZCB7XG4gICAgY29sb3I6ICRwcmltYXJ5LWJsdWU7XG4gICAgZm9udC1zaXplOiAxMDBweDtcbiAgfVxuXG4gIC51cGxvYWQtdGV4dCwgLnVwbG9hZC10ZXh0LXNlcCB7XG4gICAgY29sb3I6ICRncmF5LWI1O1xuICAgIHBhZGRpbmctdG9wOiAxMHB4O1xuICAgIGZvbnQtc2l6ZTogJHNpemUteGw7XG4gIH1cblxuICAudXBsb2FkLXRleHQtc2VwIHtcbiAgICBmb250LXNpemU6ICRzaXplLXJlZ3VsYXI7XG4gIH1cblxuICAjZmlsZXVwbG9hZCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgb3BhY2l0eTogMDtcbiAgICAmOmZvY3VzIHtcbiAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGdyYXktZjU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAycyBlYXNlLW91dDtcbiAgICAtbW96LXRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMnMgZWFzZS1vdXQ7XG4gICAgLW8tdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAycyBlYXNlLW91dDtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDJzIGVhc2Utb3V0O1xuICB9XG59XG5cbiNkaXYtZmlsZXMge1xuICAudGQtb3JpZ2luIHtcblxuICB9XG59XG5cbiNmaWxlcyB7XG4gIHRoZWFkIHRoIHtcbiAgICBib3JkZXItYm90dG9tOiAwO1xuICB9XG4gIHRib2R5OmJlZm9yZSB7XG4gICAgaGVpZ2h0OiAxZW07XG4gICAgZGlzcGxheTogdGFibGUtcm93O1xuICAgIGNvbnRlbnQ6ICcnO1xuICB9XG4gIC5kZXRhaWxzOmhvdmVyIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cbn1cblxuLnRhYmxlLWZpbGVzLWhlYWQge1xuICB3aWR0aDogY2FsYygxMDAlIC0gNDBweCk7XG5cbiAgdGgge1xuICAgIHBhZGRpbmctdG9wOiAxMHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAxMHB4O1xuICB9XG59XG5cbi5yb3ctZmlsZSB7XG4gIC5jaGVja2JveC1tYWluZmlsZSB7XG4gICAgcGFkZGluZy1sZWZ0OiAzMHB4IWltcG9ydGFudDtcbiAgICBmb250LXNpemU6ICRzaXplLXNtYWxsIWltcG9ydGFudDtcbiAgICB0b3A6IC0xNnB4O1xuICAgIGxlZnQ6IDZweDtcbiAgfVxuXG5cbiAgLmRpdi1maWxlLW9yaWdpbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC5kaXYtZmlsZS1zZXQtbWFpbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAmLmZpbGUtbWFpbiB7XG4gICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgIGJvcmRlci1ib3R0b206IDEwcHggc29saWQgJGdyYXktZjU7XG5cbiAgICAuZGl2LWZpbGUtb3JpZ2luIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgIC5kaXYtZmlsZS1zZXQtbWFpbiB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICAuZGV0YWlscyB7XG4gICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgfVxuICB9XG5cbiAgJi5maWxlLW1haW4gKyAucm93LWZpbGUtZGV0YWlscyAuZGVmYXVsdC1hbm5leCxcbiAgJi5maWxlLW1haW4gKyAucm93LWZpbGUtZGV0YWlscyAuZm9ybWF0LWFubmV4IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgJjpub3QoLmZpbGUtbWFpbik6bm90KDpsYXN0LWNoaWxkKSB0ZDpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGdyYXktYzY7XG4gIH1cblxuICB0ZCB7XG4gICAgcGFkZGluZy10b3A6IDEwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDEwcHg7XG5cbiAgICAmLmRldGFpbHMge1xuICAgICAgYmFja2dyb3VuZDogJGdyYXktZTY7XG4gICAgfVxuXG4gICAgJi5kZWxldGUge1xuICAgICAgYmFja2dyb3VuZDogJGdyYXktZjU7XG4gICAgfVxuICB9XG5cbiAgYmFja2dyb3VuZDogJGdyYXktZWU7XG5cbiAgLmZpbGUtbmFtZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY29sb3I6ICRibGFjaztcbiAgICBmb250LXNpemU6ICRzaXplLXJlZ3VsYXI7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIH1cblxuICAuZmlsZS1zaXplIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjb2xvcjogJGdyYXktNjQ7XG4gICAgZm9udC1zaXplOiAkc2l6ZS14c21hbGw7XG4gIH1cblxuICBzZWxlY3Qge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZvbnQtc2l6ZTogMTFweDtcbiAgICBoZWlnaHQ6IDI3cHg7XG4gICAgYmFja2dyb3VuZDogaW5oZXJpdDtcbiAgfVxuXG4gIC5maWxlLW1vcmUge1xuICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgZm9udC1zaXplOiA2cHg7XG5cbiAgfVxuICAuYnRuLWxpbms6aG92ZXIsIC5idG4tbGluazphY3RpdmUge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gIC5saWNlbmNlLWRhdGUge1xuICAgIGJvcmRlci1yYWRpdXM6IDAgIWltcG9ydGFudDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkZ3JheS1jODtcbiAgICBoZWlnaHQ6IDI3cHg7XG5cbiAgICBpbnB1dCB7XG4gICAgICBib3JkZXI6IG5vbmUhaW1wb3J0YW50O1xuICAgIH1cbiAgICAuY2FsZW5kYXItdHJpZ2dlciB7XG4gICAgICBsZWZ0OiAwcHg7XG4gICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICB9XG4gIH1cbn1cblxuXG4vKiB0eXBkb2Mgc3RlcCAqL1xuI21vZGFsLXR5cGRvYyB7XG4gIC5tb2RhbC1kaWFsb2cge1xuICAgIG1heC13aWR0aDogMTMwMHB4O1xuXG4gICAgLm1vZGFsLWhlYWRlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAkZ3JheS1mNTtcblxuICAgICAgLm1vZGFsLXRpdGxlIHtcbiAgICAgICAgY29sb3I6ICR0b29scy1zb3J0O1xuICAgICAgICBmb250LXNpemU6ICRzaXplLWxhcmdlO1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAubW9kYWwtYm9keSB7XG4gICAgICBwYWRkaW5nOiAycmVtIDRyZW0gMXJlbTtcbiAgICB9XG5cbiAgICAudHlwZG9jLWJ0bi1ncm91cCB7XG4gICAgICBiYWNrZ3JvdW5kOiAkZ3JheS1lZjtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWFyZ2luOiAxMHB4O1xuICAgICAgaGVpZ2h0OiA1MHB4O1xuXG4gICAgICAmLnNlbGVjdGVkIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktYmx1ZTtcbiAgICAgICAgJi5zZWxlY3RlZCAuYnRuIHtcbiAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5idG4ge1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICAmOmRpc2FibGVkIHtcbiAgICAgICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuYnRuLXR5cGRvYyB7XG4gICAgICAgIHdpZHRoOiA4NSU7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIC50eXBkb2MtaWNvbiB7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIHdpZHRoOiAyNXB4O1xuXG4gICAgICAgICAgaSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnR5cGRvYy1sYWJlbCB7XG4gICAgICAgICAgZm9udC1zaXplOiAwLjlyZW07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5idG4tdHlwZG9jLW1vcmUge1xuICAgICAgICB3aWR0aDogMTAlO1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICB9XG5cbiAgICAgICY6bm90KC5zZWxlY3RlZCk6aG92ZXIsICY6bm90KC5zZWxlY3RlZCkuYnRuOmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZDogJGdyYXktY2E7XG4gICAgICB9XG5cbiAgICAgIC5kcm9wZG93bi1tZW51IHtcbiAgICAgICAgYmFja2dyb3VuZDogJGdyYXktZWY7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgIGJveC1zaGFkb3c6IDBweCAzcHggNnB4ICRib3gtc2hhZG93O1xuICAgICAgICBwYWRkaW5nOiAyMHB4IDMwcHg7XG5cbiAgICAgICAgLmRyb3Bkb3duLWl0ZW0ge1xuICAgICAgICAgIHBhZGRpbmc6IDEwcHggMDtcbiAgICAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRncmF5LWNhO1xuICAgICAgICAgIH1cbiAgICAgICAgICAmLnNlbGVjdGVkIHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgIH1cbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IGluaGVyaXQ7XG4gICAgICAgICAgICBjb2xvcjokcHJpbWFyeS1ibHVlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vKlxuU1RFUCBFWFRSQUNUXG4qL1xuI2lkZW50aWZpZXJ0eXBlIHtcbiAgei1pbmRleDogMTtcbiAgYmFja2dyb3VuZDogJGdyYXktZjQ7XG5cbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogJHByaW1hcnktYmx1ZTMtaG92ZXI7XG4gIH1cbn1cbi5zaG93PiNpZGVudGlmaWVydHlwZSB7XG4gIGJhY2tncm91bmQ6ICRwcmltYXJ5LWJsdWUzLWhvdmVyO1xufVxuXG5cbi5leHRyYWN0LWluZm8sIC5hdXRob3ItaW5mbywgLm1haW5tZXRhLWluZm8sIC5yZWxhdGVkLWluZm8sIC5maWxlLWluZm8ge1xuICBiYWNrZ3JvdW5kOiAkZ3JheS1lZjtcbiAgbWFyZ2luLXRvcDotMTVweDtcbiAgJj5kaXYge1xuICAgIHBhZGRpbmc6MzVweDtcbiAgICB3b3JkLWJyZWFrOiBicmVhay13b3JkO1xuICB9XG4gICY+ZGl2LmVycm9ycyB7XG4gICAgY29sb3I6ICRzZWNvbmRhcnktZXJyb3I7XG4gIH1cbiAgLmV4dHJhY3QtbWV0YSB7XG4gICAgZm9udC1zaXplOiBzbWFsbDtcbiAgICBjb2xvcjokZ3JheS02NDtcbiAgICBmb250LXN0eWxlOml0YWxpYztcbiAgfVxuICAuY2xvc2UtZXh0cmFjdC1pbmZvLCAuY2xvc2UtZXJyb3ItaW5mbyB7XG4gICAgY29sb3I6ICRzZWNvbmRhcnktZXJyb3I7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgfVxufVxuXG5cbi8qKlxuU1RFUCBhdXRob3JcbiAqL1xuXG4jYXV0X25ldyB7XG4gICNzZWFyY2hBdXRob3Ige1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgaGVpZ2h0OiA1MHB4O1xuICB9XG4gICNzZWFyY2hBdXRob3ItbGFiZWwge1xuICAgIGZvbnQtc2l6ZTogJHNpemUtbGFyZ2U7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIH1cbn1cblxuLnVpLWF1dG9jb21wbGV0ZS51aS1mcm9udCB7XG4gIC51aS1zdGF0ZS1hY3RpdmUge1xuICAgIGJhY2tncm91bmQ6ICRncmF5LWY0O1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWwhaW1wb3J0YW50O1xuICB9XG5cbiAgLnVpLW1lbnUtaXRlbSB7XG4gICAgcGFkZGluZzowO1xuICAgIGxpbmUtaGVpZ2h0OiAyNXB4O1xuXG4gICAgJi5oaWdobGlnaHQge1xuICAgICAgYmFja2dyb3VuZDogJHByaW1hcnktYmx1ZTE7XG4gICAgICBhIHtcbiAgICAgICAgY29sb3I6JHdoaXRlIWltcG9ydGFudDtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZDogJHByaW1hcnktYmx1ZTEtaG92ZXI7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkcHJpbWFyeS1ibHVlMS1ob3ZlcjtcbiAgICAgIH1cbiAgICAgIC51aS1zdGF0ZS1hY3RpdmUge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkcHJpbWFyeS1ibHVlMS1ob3ZlciFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuXG4gIH1cbn1cblxuLnVpLWF1dG9jb21wbGV0ZS51aS1mcm9udCAudWktbWVudS1pdGVtLCAjc3RydWN0LWluZm8ge1xuICAudmFsaWQsIC5wcmVmZXJyZWQge1xuICAgIGNvbG9yOiRzZWNvbmRhcnktc3VjY2VzcztcbiAgICBmb250LXdlaWdodDogYm9sZCFpbXBvcnRhbnQ7XG4gIH1cbiAgLm9sZCB7XG4gICAgY29sb3I6JHNlY29uZGFyeS13YXJuaW5nO1xuICB9XG4gIC5pbmNvbWluZyB7XG4gICAgY29sb3I6JHNlY29uZGFyeS1lcnJvcjtcbiAgfVxuXG4gIHNwYW4+c3Bhbjpub3QoLmFjcm9ueW0pLCBzcGFuPmRsIHtcbiAgICBjb2xvcjogJHB1cnBsZS1saWdodDtcbiAgICBmb250LXNpemU6IHNtYWxsZXI7XG4gIH1cbiAgLmFkZHJlc3MsIC5pZGhhbCwgLmFjcm9ueW0ge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB9XG5cbiAgLmFjcm9ueW06YmVmb3JlIHtcbiAgICBjb250ZW50OiAnIC0gJztcbiAgfVxuXG4gIHNwYW4+ZGw+ZHQge1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgZGlzcGxheTogaW5saW5lO1xuICAgIC5hY3JvbnltOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICB9XG4gICAgLmFjcm9ueW06YWZ0ZXIge1xuICAgICAgY29udGVudDogJyAtICc7XG4gICAgfVxuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyA7ICc7XG4gICAgfVxuICAgIC5jb2RlOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnIDogJztcbiAgICB9XG4gIH1cbn1cblxuXG4udmlldy1hdXRob3ItZGV0YWlsZWQge1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgY29sb3I6ICRwcmltYXJ5LWJsdWUxO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JheS1mMjtcbiAgZm9udC1zaXplOiBpbmhlcml0O1xuICB3aWR0aDogMTAwJTtcbiAgYm9yZGVyLXJhZGl1czogMCFpbXBvcnRhbnQ7XG5cbiAgJjpob3ZlciB7XG4gICAgY29sb3I6ICRwcmltYXJ5LWJsdWUxLWhvdmVyO1xuICB9XG59XG5cbmRpdi5hdXRob3JzIHtcbiAgYmFja2dyb3VuZDogJGdyYXktZjU7XG5cbiAgbWF4LWhlaWdodDogMjB2aDtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgb3ZlcmZsb3cteDogY2xpcDtcblxuICB0ZCB7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgfVxuXG4gIC50YWJsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBib3JkZXItY29sbGFwc2U6IHNlcGFyYXRlO1xuICAgIGJvcmRlci1zcGFjaW5nOiAwIDVweDtcbiAgfVxuXG4gICYuYXV0aG9yX3NlbGVjdCB7XG4gICAgbWF4LWhlaWdodDogODV2aDtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuICB9XG5cbiAgdHIuYXV0aG9yIHtcbiAgICBtaW4taGVpZ2h0OiAxMjBweDtcbiAgfVxuXG4gIC5hdXRob3Itc3RhdGUtaGlnaGxpZ2h0IHRkIHtcbiAgICBoZWlnaHQ6IDYwcHg7XG4gICAgYm9yZGVyOiAycHggZGFzaGVkICRncmF5LWU2O1xuICB9XG5cbiAgLmF1dGhvci1pY29uLWRyYWcsIC5hdXRob3ItaW5mbywgLmF1dGhvci1pY29uLWVkaXQge1xuICAgIGJhY2tncm91bmQ6ICRncmF5LWU2O1xuICAgIHBhZGRpbmctdG9wOiAxMHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAxMHB4O1xuICB9XG4gIC5hdXRob3ItaWNvbi1kcmFnIHtcbiAgICBwYWRkaW5nLWxlZnQ6MjBweCFpbXBvcnRhbnQ7XG4gICAgY29sb3I6ICRwdXJwbGUtbGlnaHQ7XG4gICAgd2lkdGg6IDUwcHg7XG5cbiAgICAuc29ydGFibGUtYWNjZXNzaWJpbGl0eSB7XG4gICAgICBpbnB1dCB7XG4gICAgICAgIGZvbnQtc2l6ZTogJHNpemUteHNtYWxsO1xuICAgICAgICB3aWR0aDogNDBweDtcbiAgICAgIH1cbiAgICAgIC8qIENocm9tZSwgU2FmYXJpLCBFZGdlLCBPcGVyYSAqL1xuICAgICAgaW5wdXQ6Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24sXG4gICAgICBpbnB1dDo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbiB7XG4gICAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgfVxuXG4gICAgICAvKiBGaXJlZm94ICovXG4gICAgICBpbnB1dFt0eXBlPW51bWJlcl0ge1xuICAgICAgICAtbW96LWFwcGVhcmFuY2U6IHRleHRmaWVsZDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmF1dGhvci1pY29uLW12LXRvcCwgLmF1dGhvci1pY29uLW12LWJvdHRvbSB7XG4gICAgY29sb3I6ICRncmF5LWMyO1xuICAgIHBhZGRpbmc6MDtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gIH1cbiAgLmF1dGhvci1pY29uLW12LWJvdHRvbSB7XG4gICAgbWFyZ2luLXRvcDogLTEwcHg7XG4gIH1cbiAgLmF1dGhvci1pbmZvIHtcbiAgICBoNSB7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICB9XG4gICAgLmlkLWhhbC1hdXRob3Ige1xuICAgICAgY29sb3I6ICRwdXJwbGUtbGlnaHQ7XG4gICAgfVxuICB9XG4gIC5hdXRob3ItaWNvbi1lZGl0IHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICBwYWRkaW5nLXJpZ2h0OjIwcHghaW1wb3J0YW50O1xuICAgIGNvbG9yOiAkcHVycGxlLWxpZ2h0O1xuICAgIHdpZHRoOiA1MHB4O1xuXG4gICAgYnV0dG9uIHtcbiAgICAgIG1hcmdpbi1yaWdodDogLTE1cHg7XG4gICAgICBtYXJnaW4tdG9wOiAtMjVweDtcblxuICAgICAgaSB7XG4gICAgICAgIGNvbG9yOiAkcHVycGxlLWxpZ2h0O1xuICAgICAgfVxuXG4gICAgICAmOmRpc2FibGVkIHtcbiAgICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuZGl2LWF1dGhvci1yb2xlIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGNvbG9yOiAkZ3JheS0zNztcblxuICAgIHNlbGVjdCB7XG4gICAgICBiYWNrZ3JvdW5kOiBpbmhlcml0O1xuICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgIGZvbnQtc2l6ZTogJHNpemUteHNtYWxsO1xuICAgICAgYm9yZGVyLWNvbG9yOiAkZ3JheS1hMjtcbiAgICB9XG4gIH1cblxuICAuYXV0aG9yLWFmZmlsaWF0aW9ucyB7XG4gICAgYmFja2dyb3VuZDogJGdyYXktZWM7XG4gICAgbWluLXdpZHRoOiAzMDBweDtcblxuICAgIC5mb3JtLWdyb3VwIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiA0MHB4O1xuICAgIH1cblxuICAgIC5zZWFyY2hTdHJ1Y3R1cmUge1xuICAgICAgYmFja2dyb3VuZDogaW5oZXJpdDtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRncmF5LWEyO1xuICAgIH1cblxuICAgIC5zdHJ1Y3R1cmUtbWVudSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICByaWdodDogMTBweDtcbiAgICAgIGNvbG9yOiAkcHVycGxlLWxpZ2h0O1xuXG4gICAgICAuZHJvcGRvd24taXRlbSB7XG4gICAgICAgIGZvbnQtc2l6ZTogJHNpemUtc21hbGw7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmF1dGhvci1yZW1vdmUge1xuICAgIHBhZGRpbmctbGVmdDogNXB4O1xuICAgIHdpZHRoOiA1MHB4O1xuICAgICAuYnRuIHtcbiAgICAgICBmb250LXNpemU6ICRzaXplLXNtYWxsO1xuICAgICB9XG4gIH1cbn1cblxuLnN0ZXAtYXV0aG9yLWFjdGlvbnMge1xuICBiYWNrZ3JvdW5kOiRncmF5LWVmIDtcbiAgcGFkZGluZzogMTBweDtcbn1cblxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAuY29sbGFwc2UuZG9udC1jb2xsYXBzZS1zbSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxufVxuXG5cbiNtb2RhbC1hdXRob3IsICNtb2RhbC1yZWYge1xuICAmLnNob3cge1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC41KTtcbiAgfVxuICAubW9kYWwtZGlhbG9nIHtcbiAgICBtYXgtd2lkdGg6IDkwMHB4O1xuICAgIHdpZHRoOiA2MCU7XG5cbiAgICAubW9kYWwtY29udGVudCB7XG4gICAgICBjb2xvcjogIzAwMDA1ZjtcblxuICAgICAgLmxhYmVsIHtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICAgICAgcGFkZGluZzogMXB4IDJweDtcbiAgICAgICAgbWFyZ2luOiAycHg7XG4gICAgICAgIGZvbnQtc2l6ZTogNzAlO1xuICAgICAgfVxuXG4gICAgICAubGFiZWwtZGVmYXVsdCB7XG4gICAgICAgIGJhY2tncm91bmQ6ICM4MDgwODA7XG4gICAgICAgIHBvc2l0aW9uOiBpbmhlcml0O1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgIH1cblxuICAgICAgaDYge1xuICAgICAgICBwYWRkaW5nOiAuOXJlbSAwIDAgLjFyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuXG4gICAgICAgIC5sYWJlbC1sYWJvLCAubGFiZWwtcmVzZWFyY2h0ZWFtIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAjZmY0NjAwO1xuICAgICAgICB9XG5cbiAgICAgICAgLmxhYmVsLWluc3RpdHV0aW9uIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAjN2QyZDQ2O1xuICAgICAgICB9XG5cbiAgICAgICAgLmxhYmVsLXJncGxhYm8sIC5sYWJlbC1kZXBhcnRtZW50e1xuICAgICAgICAgIGJhY2tncm91bmQ6ICNjZDNjMWI7XG4gICAgICAgIH1cblxuICAgICAgICAubGFiZWwtcmdwaW5zdCB7XG4gICAgICAgICAgYmFja2dyb3VuZDogIzY0MWU2ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5iYWRnZSB7XG4gICAgICAgICAgYmFja2dyb3VuZDogIzgwODA4MDtcbiAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgICAgbWFyZ2luOiAxcHg7XG4gICAgICAgICAgcGFkZGluZzogMnB4O1xuICAgICAgICAgIGZvbnQtc2l6ZTogNzAlO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5zdHJ1Y3QtaW5mb3Mge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IC41cmVtO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogLjJlbTtcbiAgICAgICAgZm9udC1zaXplOiAuOHJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgbWFyZ2luOiA0cHggMCAwIDA7XG4gICAgICAgIH1cblxuICAgICAgICAuc3RydWN0LXNpZ2xlIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAycHg7XG4gICAgICAgIH1cblxuICAgICAgICAuc3RydWN0LWxvY2sge1xuICAgICAgICAgIGNvbG9yOiAjODA4MDgwO1xuICAgICAgICAgIG1hcmdpbi10b3A6IDhweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5zdHJ1Y3QtY291bnRyeSB7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIH1cblxuICAgICAgICBsaSB7XG4gICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICBtYXJnaW46IDJweCAwIDAgMDtcbiAgICAgICAgfVxuXG4gICAgICAgIGxpIHVsOjpiZWZvcmUge1xuICAgICAgICAgIGNvbnRlbnQ6ICdcXDAwMjAxMyc7XG4gICAgICAgICAgbWFyZ2luOiAuMmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgdWwge1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgbWFyZ2luOiAycHggMCAwIDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAubW9kYWwtaGVhZGVyIHtcbiAgICAgIHBhZGRpbmctdG9wOiAycmVtO1xuICAgIH1cbiAgICAubW9kYWwtdGl0bGUge1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICBtYXJnaW46IGF1dG87XG4gICAgfVxuXG4gICAgLm1vZGFsLWJvZHkge1xuICAgICAgcGFkZGluZzogMTBweCAxMDBweDtcbiAgICB9XG5cbiAgICAuY2xvc2Uge1xuICAgICAgbWFyZ2luLXRvcDogLTJyZW07XG4gICAgfVxuICB9XG4gICNBam91dGVyLWVsZW1lbnQge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICB9XG5cbiAgLnVpLW1lbnUtaXRlbSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm9yZGVyOm5vbmU7XG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICBiYWNrZ3JvdW5kOiBpbmhlcml0O1xuICAgICAgYSB7XG4gICAgICAgIGNvbG9yOiBpbmhlcml0IWltcG9ydGFudDtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAkZ3JheS1mNCFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRncmF5LWY0IWltcG9ydGFudDs7XG4gICAgICB9XG5cbiAgICAgIC51aS1zdGF0ZS1hY3RpdmUge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkZ3JheS1mNCFpbXBvcnRhbnQ7O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICNzdHJ1Y3QtaW5mbyB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJGdyYXktYTI7XG4gICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICB9XG5cbiAgLmxhYmVsLXN0cnVjdC10eXBlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1ibHVlLWRpc2FibGVkO1xuICAgIHBhZGRpbmc6IDJweCAxMHB4O1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gIH1cblxuICAubmV3LXN0cnVjdC1mb3JtPi5saXN0LWdyb3VwPi5uZXctc3RydWN0Pi5uZXctc3RydWN0LWl0ZW0+Lm5ldy1zdHJ1Y3QtbGFiZWwgaW5wdXRbdHlwZT10ZXh0XSB7XG4gICAgZGlzcGxheTpub25lO1xuICB9XG4gIC5saXN0LWdyb3VwIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICB9XG4gIC5zdHJ1Y3R1cmUtaWNvbnMge1xuICAgIGZsb2F0OiByaWdodDtcbiAgfVxufVxuXG4uYXV0aG9ycy1mcm9tLXN0cnVjdHVyZSB7XG4gIG1pbi1oZWlnaHQ6IDMwMHB4O1xufVxuI2F1dGhvcnNmcm9tc3RydWN0c2VhcmNoIHtcbiAgd2lkdGg6IDcwJTtcbn1cblxuI215LWF1dGhvcnMsICNhdXRob3JzLWZyb20tc3RydWN0IHtcbiAgbWF4LWhlaWdodDogMjAwcHg7XG4gIG92ZXJmbG93LXk6IHNjcm9sbDtcbiAgYm9yZGVyOiAxcHggc29saWQgJGdyYXktYTI7XG4gIHBhZGRpbmctbGVmdDogMjBweDtcblxuICBbdHlwZT1cImNoZWNrYm94XCJdOm5vdCg6Y2hlY2tlZCksIFt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCB7XG4gICAgcG9zaXRpb246IGluaGVyaXQ7XG4gICAgb3BhY2l0eTogaW5oZXJpdDtcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgd2lkdGg6IGluaGVyaXQ7XG4gIH1cbn1cblxuI21vZGFsLXNoZXJwYSB7XG4gIC5tb2RhbC1jb250ZW50e1xuICAgIHBhZGRpbmc6IDEwcHg7XG4gIH1cbiAgY2FwdGlvbiB7XG4gICAgY2FwdGlvbi1zaWRlIDogdG9wO1xuICB9XG4gIC50ZXh0LWxlZnQ+c3BhbiB7XG4gICAgYm9yZGVyLXJhZGl1czogMCFpbXBvcnRhbnQ7XG4gIH1cbiAgdHI+dGQ6Zmlyc3QtY2hpbGQge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB9XG59XG5cbi5zdHJ1Y3R1cmUtbmFtZSwgLnJlZmVyZW50aWFsIHtcbiAgaSB7XG4gICAgY29sb3I6ICRibGFjaztcbiAgfVxuXG4gICYudmFsaWQge1xuICAgIGNvbG9yOiRzZWNvbmRhcnktc3VjY2VzcztcbiAgICBmb250LXdlaWdodDogYm9sZCFpbXBvcnRhbnQ7XG4gIH1cbiAgJi5vbGQge1xuICAgIGNvbG9yOiRzZWNvbmRhcnktd2FybmluZztcbiAgfVxuICAmLmluY29taW5nIHtcbiAgICBjb2xvcjokc2Vjb25kYXJ5LWVycm9yO1xuICB9XG59XG5cbi5hdXRob3JzIC5zdHJ1Y3R1cmUtbmFtZSB7XG4gIGN1cnNvcjogZ3JhYjtcbn1cblxuI25ldy1zdHJ1Y3QtZm9ybSB7XG4gIGxpIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBib3JkZXI6IG5vbmU7XG4gIH1cbn1cblxuLm5ldy1zdHJ1Y3QtbGFiZWwge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4jbW9kYWwtYXV0aG9yIHtcbiAgLmdseXBoaWNvbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAuc3RydWN0dXJlLWFyYm9yZXNjZW5jZSBoNStkaXZ7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4jZm9ybV9tYWlubWV0YSAjdHlwZS1lbGVtZW50IHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuXG5cblxuLmZvcm0tbWV0YSB7XG5cbiAgLnJvdyB7XG4gICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuXG4gICAgJiNtYWluRG9tYWluLWVsZW1lbnQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogLTEwcHg7XG4gICAgfVxuXG4gICAgLnNlbGVjdGlvbiB7XG4gICAgICB3aWR0aDogaW5oZXJpdDtcbiAgICAgIGRpc3BsYXk6IGluaGVyaXQ7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxMCU7XG4gICAgfVxuXG4gICAgI3NlbGVjdDItbWFpbkRvbWFpbi1jb250YWluZXI6ZW1wdHkge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgI3NlbGVjdDItbWFpbkRvbWFpbi1jb250YWluZXIge1xuICAgICAgd2lkdGg6IGZpdC1jb250ZW50O1xuICAgIH1cblxuICAgIC5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSB7XG4gICAgICB3aWR0aDogaW5oZXJpdDtcbiAgICB9XG5cbiAgICAudGV4dGFyZWEtZ3JvdXAge1xuICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgJjpub3QoOmZpcnN0LW9mLXR5cGUpIHtcbiAgICAgICAgbWFyZ2luLXRvcDogNDVweDtcbiAgICAgIH1cblxuICAgICAgJj5idXR0b24uZHJvcGRvd24tdG9nZ2xlIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWwhaW1wb3J0YW50O1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgYmFja2dyb3VuZDokZ3JheS1mNCFpbXBvcnRhbnQ7XG4gICAgICAgIGJvcmRlci1sZWZ0OiAxcHghaW1wb3J0YW50O1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkZ3JheS1jYSFpbXBvcnRhbnQ7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDAhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICBoZWlnaHQ6IDQwcHghaW1wb3J0YW50O1xuICAgICAgICBmb250LXNpemU6ICRzaXplLXNtYWxsO1xuICAgICAgfVxuXG4gICAgICAucHVsbC1yaWdodCB7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiA1cHg7XG4gICAgICAgICAgZm9udC1zaXplOiAkc2l6ZS1zbWFsbDtcbiAgICAgICAgICBjb2xvcjogJHByaW1hcnktYmx1ZTE7XG5cbiAgICAgICAgICAmLmZvcm0tYnRuLWRlbCB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgY29sb3I6ICRzZWNvbmRhcnktZXJyb3IhaW1wb3J0YW50O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgdGV4dGFyZWEge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgI2M4YzhjOCFpbXBvcnRhbnQ7XG4gICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIH1cblxuICAgIHNlbGVjdCB7XG4gICAgICB3aWR0aDogMzAwcHg7XG4gICAgICBiYWNrZ3JvdW5kOiAkZ3JheS1mNDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDBweDtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNDOEM4Qzg7XG4gICAgfVxuXG4gICAgLmlucHV0LWdyb3VwIHtcblxuICAgICAgLmZvcm0tYnRuLWxhbmcge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkZ3JheS1mNDtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2M4YzhjODtcbiAgICAgICAgYm9yZGVyLXJpZ2h0OjAhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgICAgZm9udC1zaXplOiAkc2l6ZS1zbWFsbDtcbiAgICAgIH1cblxuICAgICAgaW5wdXQge1xuICAgICAgICB3aWR0aDogODAlO1xuICAgICAgfVxuXG4gICAgICBzcGFuLmlucHV0LWdyb3VwLWJ0biB7XG4gICAgICAgIHdpZHRoOiAxMDBweDtcbiAgICAgICAgaGVpZ2h0OiAzNXB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOmluaGVyaXQ7XG4gICAgICAgICY6aG92ZXJ7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjppbmhlcml0O1xuICAgICAgICB9XG5cbiAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1ibHVlMTtcbiAgICAgICAgICBwYWRkaW5nOiAwIDEwcHg7XG4gICAgICAgICAgJjpob3ZlcntcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWJsdWUxLWhvdmVyO1xuICAgICAgICAgIH1cblxuICAgICAgICAgICYuZm9ybS1idG4tZGVsIHtcbiAgICAgICAgICAgIGNvbG9yOiAkc2Vjb25kYXJ5LWVycm9yIWltcG9ydGFudDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJHNpemUtbWludXM7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBpbmhlcml0IWltcG9ydGFudDtcbiAgICAgICAgICAgICY6aG92ZXJ7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIGlucHV0W3R5cGU9J2NoZWNrYm94J10ge1xuICAgICAgcG9zaXRpb246IGluaGVyaXQ7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgd2lkdGg6IDE0cHg7XG4gICAgfVxuXG4gICAgLmRhdGVwaWNrZXIge1xuICAgICAgd2lkdGg6IDIwMHB4IWltcG9ydGFudDtcbiAgICAgIGZsZXg6IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbmJsb2NrcXVvdGUgLnJlZmVyZW50aWVsIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI0M4QzhDODtcbiAgcGFkZGluZzogMTBweDtcblxuXG4gIC5idG4tZGVsLXJlZiB7XG4gICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgY29sb3I6ICRzZWNvbmRhcnktZXJyb3I7XG4gIH1cbn1cblxuLmhhbC1kdXBsaWNhdGUtZW50cnkge1xuICBoNSwgaDYge1xuICAgIHBhZGRpbmc6IDEwcHg7XG4gIH1cbiAgaDUge1xuICAgIGZvbnQtc2l6ZTogJHNpemUtcmVndWxhcjtcbiAgICBjb2xvcjogJHNlY29uZGFyeS1lcnJvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2Vjb25kYXJ5LWVycm9yLWJnO1xuICB9XG4gIGg2IHtcbiAgICBmb250LXNpemU6ICRzaXplLW1pbnVzO1xuICAgIGNvbG9yOiAkc2Vjb25kYXJ5LXdhcm5pbmc7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHNlY29uZGFyeS13YXJuaW5nLWV4dHJhLWxpZ2h0O1xuICB9XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgZm9udC1zaXplOiAkc2l6ZS1zbWFsbDtcbiAgdG9wOiAxNTBweDtcbiAgbWFyZ2luLXJpZ2h0OiA2MHB4O1xuXG59XG5cbi5oYWwtdmFsaWQtc3VibWl0LWJ0bntcbiAgcG9zaXRpb246IGZpeGVkO1xuICBib3R0b206IDUwcHg7XG4gIEBleHRlbmQgJWRlZmF1bHQtYnV0dG9uO1xuICBiYWNrZ3JvdW5kOiBpbmhlcml0O1xuICBib3JkZXI6MXB4IHNvbGlkICRwcmltYXJ5LW9yYW5nZTtcbiAgY29sb3I6ICRwcmltYXJ5LW9yYW5nZTtcbiAgcGFkZGluZzogMTlweCAxOHB4IDE2cHggMThweDtcbiAgbWFyZ2luLXJpZ2h0OiAtMXB4O1xuICB0cmFuc2l0aW9uOiAwLjVzO1xuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiAkeGxpZ2h0LW9yYW5nZTtcbiAgICBjb2xvcjogJHByaW1hcnktb3JhbmdlO1xuICB9XG5cbiAgJjpkaXNhYmxlZCB7XG4gICAgYm9yZGVyOjFweCBzb2xpZCAkZ3JheS1jZTtcbiAgICBjb2xvcjogJGdyYXktZGU7XG4gICAgY3Vyc29yOiBkZWZhdWx0O1xuICB9XG4gICY6ZGlzYWJsZWQ6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6IGluaGVyaXQ7XG4gICAgY29sb3I6ICRncmF5LWRlO1xuICB9XG5cblxufVxuXG4uYnRuLXByaW1hcnktb3Jhbmdle1xuICBAZXh0ZW5kICVkZWZhdWx0LWJ1dHRvbjtcbiAgYmFja2dyb3VuZDogJHByaW1hcnktb3JhbmdlO1xuICBib3JkZXI6MXB4IHNvbGlkICRwcmltYXJ5LW9yYW5nZTtcbiAgY29sb3I6ICR3aGl0ZTtcbiAgcGFkZGluZzogMTlweCAxOHB4IDE2cHggMThweDtcbiAgbWFyZ2luLXJpZ2h0OiAtMXB4O1xuICB0cmFuc2l0aW9uOiAwLjVzO1xufVxuXG4uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCUhaW1wb3J0YW50O1xuICBib3JkZXI6MXB4IHNvbGlkICRncmF5LWNhO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICAuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkIHtcbiAgICBsaW5lLWhlaWdodDogMnJlbSFpbXBvcnRhbnQ7XG4gIH1cblxuICBsaS5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbi5ub24tbGVhZiB7XG4gICAgLmV4cGFuZC1jb2xsYXBzZTpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcXGU5NjJcIiAhaW1wb3J0YW50O1xuICAgICAgY29sb3I6ICRwcmltYXJ5LWJsdWUzLWhvdmVyIWltcG9ydGFudDtcbiAgICAgIGZvbnQtZmFtaWx5OiAnaWNvbW9vbicgIWltcG9ydGFudDtcbiAgICAgIGZvbnQtc2l6ZTogMTBweCFpbXBvcnRhbnQ7XG4gICAgICB0b3A6IDZweCFpbXBvcnRhbnQ7XG4gICAgICBsZWZ0OiAtNHB4ICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gIH1cbiAgbGkuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24ubm9uLWxlYWYub3BlbmVkIC5leHBhbmQtY29sbGFwc2U6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcZTk4ZVwiICFpbXBvcnRhbnQ7XG4gIH1cblxuICAmLnNlbGVjdDItY29udGFpbmVyLS1vcGVuLnMyLXRvLXRyZWUge1xuICAgIG1hcmdpbi10b3A6IDAhaW1wb3J0YW50O1xuICAgIGJvcmRlcjogMCFpbXBvcnRhbnQ7XG4gIH1cbiAgJi5zZWxlY3QyLWNvbnRhaW5lci0tb3BlbiAuc2VsZWN0Mi1kcm9wZG93bi0tYmVsb3cge1xuICAgIGJvcmRlci1jb2xvcjogJGdyYXktY2E7XG4gICAgYmFja2dyb3VuZDogJGdyYXktZjQ7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgfVxuICAmLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uLS1oaWdobGlnaHRlZFthcmlhLXNlbGVjdGVkXSA+IHNwYW4uaXRlbS1sYWJlbCB7XG4gICAgYmFja2dyb3VuZDogcmVkIWltcG9ydGFudDtcbiAgfVxuXG4gIC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUge1xuICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuXG4gICAgLnNlbGVjdDItc2VsZWN0aW9uX19jaG9pY2VfX3JlbW92ZSB7XG4gICAgICBjb2xvcjogJHdoaXRlIWltcG9ydGFudDtcbiAgICAgIG1hcmdpbi1yaWdodDogMTBweCFpbXBvcnRhbnQ7XG4gICAgICBmb250LXNpemU6IDE0cHghaW1wb3J0YW50O1xuICAgIH1cbiAgICAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Nob2ljZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1ibHVlMyFpbXBvcnRhbnQ7XG4gICAgICBjb2xvcjogJHdoaXRlIWltcG9ydGFudDtcbiAgICAgIGJvcmRlcjogMCFpbXBvcnRhbnQ7XG4gICAgICBib3JkZXItcmFkaXVzOiAwIWltcG9ydGFudDtcbiAgICAgIHBhZGRpbmc6IDVweCAxMHB4IWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSB7XG4gICAgbWFyZ2luLXRvcDogNXB4O1xuICAgIG1hcmdpbi1sZWZ0OiA1cHg7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrIWltcG9ydGFudDtcbiAgICBib3JkZXI6IG5vbmUhaW1wb3J0YW50O1xuXG4gICAgLnNlbGVjdDItc2VsZWN0aW9uX19yZW5kZXJlZCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1ibHVlMy1ob3ZlciFpbXBvcnRhbnQ7XG4gICAgICBjb2xvcjogJHdoaXRlIWltcG9ydGFudDtcbiAgICAgIGJvcmRlcjogMCFpbXBvcnRhbnQ7XG4gICAgICBib3JkZXItcmFkaXVzOiAwIWltcG9ydGFudDtcbiAgICAgIHBhZGRpbmc6IDJweCAxMHB4IWltcG9ydGFudDtcbiAgICB9XG4gICAgLnNlbGVjdDItc2VsZWN0aW9uX19hcnJvdyB7XG4gICAgICB0b3A6IDhweCFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgbGkuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb25bYXJpYS1zZWxlY3RlZD1cInRydWVcIl0ge1xuICAgICY+IHNwYW4uaXRlbS1sYWJlbCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBpbmhlcml0ICFpbXBvcnRhbnQ7XG4gICAgICBjb2xvcjogJHByaW1hcnktYmx1ZTMtaG92ZXI7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICB9XG4gICAgJjpob3Zlcj4gc3Bhbi5pdGVtLWxhYmVsIHtcbiAgICAgIGNvbG9yOiAkcHJpbWFyeS1ibHVlMy1ob3ZlcjtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIH1cbiAgfVxuXG4gIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbi0taGlnaGxpZ2h0ZWRbYXJpYS1zZWxlY3RlZF0ge1xuICAgICY+IHNwYW4uaXRlbS1sYWJlbCwgJjpob3Zlcj4gc3Bhbi5pdGVtLWxhYmVsIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRncmF5LWVmICFpbXBvcnRhbnQ7XG4gICAgICBjb2xvcjogJHByaW1hcnktYmx1ZTMhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuXG4uZGF0ZXBpY2tlciB7XG4gIGJhY2tncm91bmQ6IGluaGVyaXQgIWltcG9ydGFudDtcbn1cbi5kYXRlcGlja2VyICsgLnVpLWRhdGVwaWNrZXItdHJpZ2dlciB7XG4gIGRpc3BsYXk6bm9uZTtcbn1cblxuLmNhbGVuZGFyLXRyaWdnZXIge1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBib3JkZXI6IG5vbmU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogLTMycHg7XG5cbiAgLmljb24tY2FsZW5kYXI6YmVmb3JlIHtcbiAgICBmb250LXNpemU6IDIwcHg7XG4gICAgY29sb3I6ICRncmF5LWM4O1xuICB9XG59XG5cbi51aS1kYXRlcGlja2VyIHtcbiAgYmFja2dyb3VuZDogJGdyYXktZjQ7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRncmF5LWM4O1xuXG4gIHNlbGVjdCB7XG4gICAgYm9yZGVyLXJhZGl1czogMHB4O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRncmF5LWM4O1xuICAgICYudWktZGF0ZXBpY2tlci1tb250aCB7XG4gICAgICBib3JkZXItcmlnaHQ6IDA7XG4gICAgfVxuICAgICYudWktZGF0ZXBpY2tlci15ZWFyIHtcbiAgICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgIH1cbiAgfVxuXG4gIC51aS1zdGF0ZS1kZWZhdWx0LCAudWktc3RhdGUtYWN0aXZlIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbiAgLnVpLXN0YXRlLWRlZmF1bHQge1xuICAgIGNvbG9yOiAkcHJpbWFyeS1ibHVlMTtcbiAgfVxuICAudWktc3RhdGUtYWN0aXZlIHtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIGJhY2tncm91bmQ6ICRwcmltYXJ5LWJsdWUxO1xuICB9XG59XG4udWktZGF0ZXBpY2tlci1wcmV2IHtcbiAgLnVpLWljb24tY2lyY2xlLXRyaWFuZ2xlLXcge1xuICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB0ZXh0LWluZGVudDppbmhlcml0O1xuICAgIG1hcmdpbi10b3A6IC00cHghaW1wb3J0YW50O1xuICAgIG1hcmdpbi1sZWZ0OiAwIWltcG9ydGFudDtcbiAgICAmOmJlZm9yZSB7XG4gICAgICBjb2xvcjogJHByaW1hcnktYmx1ZTE7XG4gICAgfVxuICB9XG59XG4udWktZGF0ZXBpY2tlci1uZXh0IHtcbiAgLnVpLWljb24tY2lyY2xlLXRyaWFuZ2xlLWUge1xuICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB0ZXh0LWluZGVudDppbmhlcml0O1xuICAgIG1hcmdpbi10b3A6IC00cHghaW1wb3J0YW50O1xuICAgICY6YmVmb3JlIHtcbiAgICAgIGNvbG9yOiAkcHJpbWFyeS1ibHVlMTtcbiAgICB9XG4gIH1cbn1cblxuLmxvYWQtYnktaWQuaW5wdXQtZ3JvdXAge1xuICBidXR0b24sIGlucHV0IHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkcHJpbWFyeS1ibHVlMztcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGhlaWdodDogaW5oZXJpdDtcbiAgfVxuICBidXR0b24ge1xuICAgIGZvbnQtc2l6ZTogc21hbGw7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIH1cbn1cblxuLyoqXG5TVEVQIFRSQU5TRkVSVFxuICovXG5cbiNwYW5lbC10cmFuc2ZlciAuc2VjdGlvbi1zaGFkb3cge1xuICBwYWRkaW5nOiAzMHB4IDEwMHB4O1xuXG4gIC5hbGVydC10ZXh0IHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkZ3JheS1jODtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICB9XG5cbiAgLmNvbmRpdGlvbi1maWxsZWQge1xuICAgIGNvbG9yOiAkc2Vjb25kYXJ5LXN1Y2Nlc3M7XG4gIH1cbiAgLmNvbmRpdGlvbi1ub3RmaWxsZWQge1xuICAgIGNvbG9yOiAkc2Vjb25kYXJ5LWVycm9yO1xuICB9XG5cbn1cblxuXG4vKlxuU1RFUCBSRUNBUFxuKi9cblxuLnN0ZXAtcmVjYXAge1xuICBwYWRkaW5nOiAzMHB4IDEwMHB4O1xuICBoNSB7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIH1cbiAgLnJlY2FwLWNpdGF0aW9uLnJlY2FwLWRvdWJsb24sIC5pbnZhbGlkLXN0ZXBzIHtcbiAgICBiYWNrZ3JvdW5kOiAkc2Vjb25kYXJ5LWVycm9yLWJnO1xuICB9XG4gIC5pbnZhbGlkLXN0ZXBzIHtcbiAgICBwYWRkaW5nOiAyMHB4O1xuXG4gICAgbGkgYSB7XG4gICAgICBtYXJnaW4tbGVmdDogMjBweDtcbiAgICB9XG4gIH1cbiAgLnJlY2FwLWNpdGF0aW9uIHtcbiAgICBiYWNrZ3JvdW5kOiAkZ3JheS1lYztcbiAgICBwYWRkaW5nOiAyMHB4O1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB9XG4gIC5yZWNhcC10eXBkb2Mge1xuICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDUwcHg7XG4gICAgYmFja2dyb3VuZDogJHB1cnBsZTtcbiAgICBjb2xvcjogJHdoaXRlO1xuICB9XG4gIC5yZWNhcC1jZ3Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRncmF5LWM4O1xuICB9XG4gIGxhYmVsIHtcbiAgICBmb250LXdlaWdodDogYm9sZCFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuIiwiXG4uY29udGVudC1uYXYge1xuICAubmF2LWl0ZW0ge1xuICAgIC5uYXYtbGluayB7XG4gICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgICBjb2xvcjogJHByaW1hcnktYmx1ZTE7XG4gICAgICBib3JkZXItcmFkaXVzOiAwIWltcG9ydGFudDtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRwcmltYXJ5LWJsdWUxO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuXG4gICAgICAmLmFjdGl2ZSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRwcmltYXJ5LWJsdWUxO1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiXG4uc3RhdC1ncmFwaCwgLnN0YXQtc3Bpbm5lciB7XG4gIG1hcmdpbi1yaWdodDogLTE1cHg7XG4gIG1hcmdpbi1sZWZ0OiAtMTVweDtcbiAgcGFkZGluZzoyMHB4O1xuXG4gICY+LnJvdyB7XG4gICAgaGVpZ2h0OiA0MHB4O1xuICB9XG5cbiAgaDQge1xuICAgIGNvbG9yOiAkZ3JheS05NztcbiAgICBmb250LXNpemU6ICRzaXplLWxhcmdlO1xuICAgIG1hcmdpbi10b3A6IC01cHg7XG4gIH1cbiAgLnNlbGVjdC1yYW5nZS1kZXBvdCwgLnNlbGVjdC1yYW5nZSB7XG4gICAgYm9yZGVyOiAycHggc29saWQgJHByaW1hcnktYmx1ZTE7XG4gICAgbWFyZ2luLXRvcDogLTEwcHg7XG5cbiAgICAuYnRuIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICBmb250LXdlaWdodDogYm9sZCFpbXBvcnRhbnQ7XG4gICAgICBwYWRkaW5nOiA1cHggMjBweDtcbiAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgYmFja2dyb3VuZDogJHByaW1hcnktYmx1ZTE7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uc3RhdC1zcGlubmVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAuc3Bpbm5lci1ib3JkZXIge1xuICAgIGNvbG9yOiAkcHJpbWFyeS1ibHVlMTtcbiAgfVxufVxuXG4uc3RhdC1jb3VudGVyIHtcbiAgcGFkZGluZzogMTBweDtcblxuICBjb2xvcjogJGdyYXktOTc7XG4gIGZvbnQtc2l6ZTogJHNpemUtbGFyZ2U7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuXG4gIC5jb3VudGVyLWxhcmdlIHtcbiAgICBjb2xvcjogJHByaW1hcnktYmx1ZTE7XG4gICAgZm9udC1zaXplOiAkc2l6ZS14eHhsO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgJj5kaXY6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgJGdyYXktZTY7XG4gIH1cbn1cbiIsIi5zaXRlLWhlYWRlciB7XG4gIGhlaWdodDogMzAwcHg7XG4gIG1pbi1oZWlnaHQ6IDIwMHB4O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTkyMHB4KSB7XG4gIC5zaXRlLWhlYWRlciB7XG4gICAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDMwMHB4O1xuICB9XG59XG4uc2l0ZS1oZWFkZXIgLnRpdGxlIHtcbiAgZm9udC1zaXplOiAkc2l6ZS1leHRyYTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1oYWw7XG59XG5cbi53ZWJzaXRlLW5hdmlnYXRpb24gLm5hdi1waWxscyAubmF2LWxpbmsge1xuICB0cmFuc2l0aW9uOiAwLjVzO1xufVxuIiwiXG5ib2R5LmRhcmsge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjAyMTI0O1xuICBjb2xvcjogJHdoaXRlO1xuXG4gIG5hdi5uYXZiYXIuaGVhZGVyLCBmb290ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwZDBkMGU7XG4gIH1cblxuICAuc3ViLWhlYWRlciwgLnRpdGxlLWZhY2V0IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTMxNDE2IWltcG9ydGFudDtcbiAgfVxuXG4gIC5zZWN0aW9uLXNoYWRvdywgLmF1dGhvcnMsIC5oYWwtYmd0ZXh0LCAuYmctYmVpZ2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMzNjM3M2E7XG4gIH1cbiAgLnRhYmxlLXdoaXRlIHRyOmhvdmVyLCAjcGFydGFnZV90YWJsZSB0Ym9keSB0cjpob3ZlciwgI215ZGVwb3NpdCB0Ym9keSAjb3duc3ViIHRyOmhvdmVyLCAudGFibGUtd2hpdGUgdHI6Zm9jdXMsICNwYXJ0YWdlX3RhYmxlIHRib2R5IHRyOmZvY3VzLCAjbXlkZXBvc2l0IHRib2R5ICNvd25zdWIgdHI6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM5MDkwOTI7XG4gIH1cblxuICAudGFibGUtd2hpdGUgdHIsICNwYXJ0YWdlX3RhYmxlIHRib2R5IHRyLCAjbXlkZXBvc2l0IHRib2R5ICNvd25zdWIgdHIge1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICMwZDBkMGU7XG4gIH1cblxuICAuY29udGVudC1mYWNldCBhLCAucmVzdWx0cy10YWJsZSB0ZCBhIHtcbiAgICBjb2xvcjogJHdoaXRlO1xuICB9XG59IiwiLy8gY29kZSBjb3BpZWQgZnJvbSwgaXQgcyBhYm91dCBhIGpzIGNsYXNzIHRoYXQgcmVsaWVzIG9uIGJvb3RzdHJhcCBwb3BvdmVycyB0byBtYWtlIGZpZWxkIGVkaXRhYmxlIChmb3IgbW9kZXJhdGlvbiwgZHVwbGljYXRlcylcbi8vIGNoZWNrIDogaHR0cHM6Ly9naXRodWIuY29tL1RhbHYveC1lZGl0YWJsZS9ibG9iL2RldmVsb3AvZGlzdC9ib290c3RyYXA0LWVkaXRhYmxlL2Nzcy9ib290c3RyYXAtZWRpdGFibGUuY3NzXG4vLyB3ZSB1cGRhdGVkIHRoZSBpY29ucyB0byB1c2UgSEFMIGljb25zIGZhLXRpbWU9PiBpY29uLWV4aXQgYW5kIGZhLXN1Ym1pdD0+IGljb24tY2hlY2tcbi8vIHRoZSBvcmlnaW5hbCByZXBvIGlzIG5vdCBtYWludGFpbmUgYW55bW9yZSAhIDogaHR0cHM6Ly9naXRodWIuY29tL3ZpdGFsZXRzL3gtZWRpdGFibGUvaXNzdWVzLzYxMCAvIGh0dHBzOi8vZ2l0aHViLmNvbS92aXRhbGV0cy94LWVkaXRhYmxlL2lzc3Vlcy8xMTc5XG5cbi8qISBYLWVkaXRhYmxlIC0gdjEuNS4zXG4qIEluLXBsYWNlIGVkaXRpbmcgd2l0aCBUd2l0dGVyIEJvb3RzdHJhcCwgalF1ZXJ5IFVJIG9yIHB1cmUgalF1ZXJ5XG4qIGh0dHA6Ly9naXRodWIuY29tL3ZpdGFsZXRzL3gtZWRpdGFibGVcbiogQ29weXJpZ2h0IChjKSAyMDE4IFZpdGFsaXkgUG90YXBvdjsgTGljZW5zZWQgTUlUICovXG4uZWRpdGFibGVmb3JtIHtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLyogb3ZlcndyaXRlcyBib290c3RyYXAgbWFyZ2luICovXG59XG5cbi5lZGl0YWJsZWZvcm0gLmNvbnRyb2wtZ3JvdXAge1xuICBtYXJnaW4tYm90dG9tOiAwOyAvKiBvdmVyd3JpdGVzIGJvb3RzdHJhcCBtYXJnaW4gKi9cbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgLyogcHJldmVudCB3cmFwcGluZyBidXR0b25zIG9uIG5ldyBsaW5lICovXG4gIGxpbmUtaGVpZ2h0OiAyMHB4OyAvKiBvdmVyd3JpdGluZyBib290c3RyYXAgbGluZS1oZWlnaHQuIFNlZSAjMTMzICovXG59XG5cbi8qXG4gICAgQlMzIGZpeDogc3RvcCBjc3MgZnJvbSBicmVha2luZyB3aGVuIHRoZSBmb3JtIGlzIGluc2lkZSBhIHBvcHVwIGFuZCBpbnNpZGUgYSBmb3JtIHdpdGggdGhlIGNsYXNzIC5mb3JtLWhvcml6b250YWxcbiAgICBTZWU6IGh0dHBzOi8vZ2l0aHViLmNvbS92aXRhbGV0cy94LWVkaXRhYmxlL2lzc3Vlcy82ODJcbiovXG4uZm9ybS1ob3Jpem9udGFsIC5lZGl0YWJsZS1wb3B1cCAuZWRpdGFibGVmb3JtIC5mb3JtLWdyb3VwIHtcbiAgbWFyZ2luLWxlZnQ6MDtcbiAgbWFyZ2luLXJpZ2h0OjA7XG59XG5cblxuLypcbiAgQlMzIHdpZHRoOjEwMDUgZm9yIGlucHV0cyBicmVha3MgZWRpdGFibGUgZm9ybSBpbiBwb3B1cFxuICBTZWU6IGh0dHBzOi8vZ2l0aHViLmNvbS92aXRhbGV0cy94LWVkaXRhYmxlL2lzc3Vlcy8zOTNcbiovXG4uZWRpdGFibGVmb3JtIC5mb3JtLWNvbnRyb2wge1xuICB3aWR0aDogYXV0bztcbn1cblxuLmVkaXRhYmxlLWJ1dHRvbnMge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IC8qIHNob3VsZCBiZSBpbmxpbmUgdG8gdGFrZSBlZmZlY3Qgb2YgcGFyZW50J3Mgd2hpdGUtc3BhY2U6IG5vd3JhcCAqL1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICBtYXJnaW4tbGVmdDogN3B4O1xuICAvKiBpbmxpbmUtYmxvY2sgZW11bGF0aW9uIGZvciBJRTcqL1xuICB6b29tOiAxO1xuICAqZGlzcGxheTogaW5saW5lO1xufVxuXG4uZWRpdGFibGUtYnV0dG9ucy5lZGl0YWJsZS1idXR0b25zLWJvdHRvbSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tdG9wOiA3cHg7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuXG4uZWRpdGFibGUtaW5wdXQge1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IC8qIHNob3VsZCBiZSBpbmxpbmUgdG8gdGFrZSBlZmZlY3Qgb2YgcGFyZW50J3Mgd2hpdGUtc3BhY2U6IG5vd3JhcCAqL1xuICB3aWR0aDogYXV0bzsgLyogYm9vdHN0cmFwLXJlc3BvbnNpdmUgaGFzIHdpZHRoOiAxMDAlIHRoYXQgYnJlYWtlcyBsYXlvdXQgKi9cbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDsgLyogcmVzZXQgd2hpdGUtc3BhY2UgZGVjYWxyZWQgaW4gcGFyZW50Ki9cbiAgLyogZGlzcGxheS1pbmxpbmUgZW11bGF0aW9uIGZvciBJRTcqL1xuICB6b29tOiAxO1xuICAqZGlzcGxheTogaW5saW5lO1xufVxuXG4uZWRpdGFibGUtYnV0dG9ucyAuZWRpdGFibGUtY2FuY2VsIHtcbiAgbWFyZ2luLWxlZnQ6IDdweDtcbn1cblxuLypmb3IganF1ZXJ5LXVpIGJ1dHRvbnMgbmVlZCBzZXQgaGVpZ2h0IHRvIGxvb2sgbW9yZSBwcmV0dHkqL1xuLmVkaXRhYmxlLWJ1dHRvbnMgYnV0dG9uLnVpLWJ1dHRvbi1pY29uLW9ubHkge1xuICBoZWlnaHQ6IDI0cHg7XG4gIHdpZHRoOiAzMHB4O1xufVxuXG4uZWRpdGFibGVmb3JtLWxvYWRpbmcge1xuICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltZy9sb2FkaW5nLmdpZicpIGNlbnRlciBjZW50ZXIgbm8tcmVwZWF0O1xuICBoZWlnaHQ6IDI1cHg7XG4gIHdpZHRoOiBhdXRvO1xuICBtaW4td2lkdGg6IDI1cHg7XG59XG5cbi5lZGl0YWJsZS1pbmxpbmUgLmVkaXRhYmxlZm9ybS1sb2FkaW5nIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogbGVmdCA1cHg7XG59XG5cbi5lZGl0YWJsZS1lcnJvci1ibG9jayB7XG4gIG1heC13aWR0aDogMzAwcHg7XG4gIG1hcmdpbjogNXB4IDAgMCAwO1xuICB3aWR0aDogYXV0bztcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbn1cblxuLyphZGQgcGFkZGluZyBmb3IganF1ZXJ5IHVpKi9cbi5lZGl0YWJsZS1lcnJvci1ibG9jay51aS1zdGF0ZS1lcnJvciB7XG4gIHBhZGRpbmc6IDNweDtcbn1cblxuLmVkaXRhYmxlLWVycm9yIHtcbiAgY29sb3I6IHJlZDtcbn1cblxuLyogLS0tLSBGb3Igc3BlY2lmaWMgdHlwZXMgLS0tLSAqL1xuXG4uZWRpdGFibGVmb3JtIC5lZGl0YWJsZS1kYXRlIHtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xuICBmbG9hdDogbGVmdDtcbn1cblxuLyogbW92ZSBkYXRlcGlja2VyIGljb24gdG8gY2VudGVyIG9mIGFkZC1vbiBidXR0b24uIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdml0YWxldHMveC1lZGl0YWJsZS9pc3N1ZXMvMTgzICovXG4uZWRpdGFibGUtaW5saW5lIC5hZGQtb24gLmljb24tdGgge1xuICBtYXJnaW4tdG9wOiAzcHg7XG4gIG1hcmdpbi1sZWZ0OiAxcHg7XG59XG5cblxuLyogY2hlY2tsaXN0IHZlcnRpY2FsIGFsaWdubWVudCAqL1xuLmVkaXRhYmxlLWNoZWNrbGlzdCBsYWJlbCBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0sXG4uZWRpdGFibGUtY2hlY2tsaXN0IGxhYmVsIHNwYW4ge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBtYXJnaW46IDA7XG59XG5cbi5lZGl0YWJsZS1jaGVja2xpc3QgbGFiZWwge1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4vKiBzZXQgZXhhY3Qgd2lkdGggb2YgdGV4dGFyZWEgdG8gZml0IGJ1dHRvbnMgdG9vbGJhciAqL1xuLmVkaXRhYmxlLXd5c2lodG1sNSB7XG4gIHdpZHRoOiA1NjZweDtcbiAgaGVpZ2h0OiAyNTBweDtcbn1cblxuLyogY2xlYXIgYnV0dG9uIHNob3duIGFzIGxpbmsgaW4gZGF0ZSBpbnB1dHMgKi9cbi5lZGl0YWJsZS1jbGVhciB7XG4gIGNsZWFyOiBib3RoO1xuICBmb250LXNpemU6IDAuOWVtO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuXG4vKiBJT1Mtc3R5bGUgY2xlYXIgYnV0dG9uIGZvciB0ZXh0IGlucHV0cyAqL1xuLmVkaXRhYmxlLWNsZWFyLXgge1xuICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltZy9jbGVhci5wbmcnKSBjZW50ZXIgY2VudGVyIG5vLXJlcGVhdDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxM3B4O1xuICBoZWlnaHQ6IDEzcHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgb3BhY2l0eTogMC42O1xuICB6LWluZGV4OiAxMDA7XG5cbiAgdG9wOiA1MCU7XG4gIHJpZ2h0OiA2cHg7XG4gIG1hcmdpbi10b3A6IC02cHg7XG5cbn1cblxuLmVkaXRhYmxlLWNsZWFyLXg6aG92ZXIge1xuICBvcGFjaXR5OiAxO1xufVxuXG4uZWRpdGFibGUtcHJlLXdyYXBwZWQge1xuICB3aGl0ZS1zcGFjZTogcHJlLXdyYXA7XG59XG5cbi5lZGl0YWJsZS1jb250YWluZXIuZWRpdGFibGUtcG9wdXAge1xuICBtYXgtd2lkdGg6IG5vbmUgIWltcG9ydGFudDsgLyogd2l0aG91dCB0aGlzIHJ1bGUgcG9zaHl0aXAvdG9vbHRpcCBkb2VzIG5vdCBzdHJldGNoICovXG59XG5cbi5lZGl0YWJsZS1jb250YWluZXIucG9wb3ZlciB7XG4gIHdpZHRoOiBhdXRvOyAvKiB3aXRob3V0IHRoaXMgcnVsZSBwb3BvdmVyIGRvZXMgbm90IHN0cmV0Y2ggKi9cbn1cblxuLmVkaXRhYmxlLWNvbnRhaW5lci5lZGl0YWJsZS1pbmxpbmUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHdpZHRoOiBhdXRvO1xuICAvKiBpbmxpbmUtYmxvY2sgZW11bGF0aW9uIGZvciBJRTcqL1xuICB6b29tOiAxO1xuICAqZGlzcGxheTogaW5saW5lO1xufVxuXG4uZWRpdGFibGUtY29udGFpbmVyLnVpLXdpZGdldCB7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDsgIC8qIGpxdWVyeXVpIHdpZGdldCBmb250IDEuMWVtIHRvbyBiaWcsIG92ZXJ3cml0ZSBpdCAqL1xuICB6LWluZGV4OiA5OTkwOyAvKiBzaG91bGQgYmUgbGVzcyB0aGFuIHNlbGVjdDIgZHJvcGRvd24gei1pbmRleCB0byBjbG9zZSBkcm9wZG93biBmaXJzdCB3aGVuIGNsaWNrICovXG59XG4uZWRpdGFibGUtY2xpY2ssXG5hLmVkaXRhYmxlLWNsaWNrLFxuYS5lZGl0YWJsZS1jbGljazpob3ZlciB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgYm9yZGVyLWJvdHRvbTogZGFzaGVkIDFweCAjMDA4OGNjO1xufVxuXG4uZWRpdGFibGUtY2xpY2suZWRpdGFibGUtZGlzYWJsZWQsXG5hLmVkaXRhYmxlLWNsaWNrLmVkaXRhYmxlLWRpc2FibGVkLFxuYS5lZGl0YWJsZS1jbGljay5lZGl0YWJsZS1kaXNhYmxlZDpob3ZlciB7XG4gIGNvbG9yOiAjNTg1ODU4O1xuICBjdXJzb3I6IGRlZmF1bHQ7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG59XG5cbi5lZGl0YWJsZS1lbXB0eSwgLmVkaXRhYmxlLWVtcHR5OmhvdmVyLCAuZWRpdGFibGUtZW1wdHk6Zm9jdXN7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgY29sb3I6ICNERDExNDQ7XG4gIC8qIGJvcmRlci1ib3R0b206IG5vbmU7ICovXG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLmVkaXRhYmxlLXVuc2F2ZWQge1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLmVkaXRhYmxlLXVuc2F2ZWQ6YWZ0ZXIge1xuICAvKiAgICBjb250ZW50OiAnKicqL1xufVxuXG4uZWRpdGFibGUtYmctdHJhbnNpdGlvbiB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAxNDAwbXMgZWFzZS1vdXQ7XG4gIC1tb3otdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAxNDAwbXMgZWFzZS1vdXQ7XG4gIC1vLXRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMTQwMG1zIGVhc2Utb3V0O1xuICAtbXMtdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAxNDAwbXMgZWFzZS1vdXQ7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMTQwMG1zIGVhc2Utb3V0O1xufVxuXG4vKnNlZSBodHRwczovL2dpdGh1Yi5jb20vdml0YWxldHMveC1lZGl0YWJsZS9pc3N1ZXMvMTM5ICovXG4uZm9ybS1ob3Jpem9udGFsIC5lZGl0YWJsZVxue1xuICBwYWRkaW5nLXRvcDogNXB4O1xuICBkaXNwbGF5OmlubGluZS1ibG9jaztcbn1cblxuXG4vKiFcbiAqIERhdGVwaWNrZXIgZm9yIEJvb3RzdHJhcFxuICpcbiAqIENvcHlyaWdodCAyMDEyIFN0ZWZhbiBQZXRyZVxuICogSW1wcm92ZW1lbnRzIGJ5IEFuZHJldyBSb3dsc1xuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlIHYyLjBcbiAqIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqL1xuLmRhdGVwaWNrZXIge1xuICBwYWRkaW5nOiA0cHg7XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogNHB4O1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDRweDtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBkaXJlY3Rpb246IGx0cjtcbiAgLyouZG93IHtcblx0XHRib3JkZXItdG9wOiAxcHggc29saWQgI2RkZCAhaW1wb3J0YW50O1xuXHR9Ki9cblxufVxuLmRhdGVwaWNrZXItaW5saW5lIHtcbiAgd2lkdGg6IDIyMHB4O1xufVxuLmRhdGVwaWNrZXIuZGF0ZXBpY2tlci1ydGwge1xuICBkaXJlY3Rpb246IHJ0bDtcbn1cbi5kYXRlcGlja2VyLmRhdGVwaWNrZXItcnRsIHRhYmxlIHRyIHRkIHNwYW4ge1xuICBmbG9hdDogcmlnaHQ7XG59XG4uZGF0ZXBpY2tlci1kcm9wZG93biB7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbn1cbi5kYXRlcGlja2VyLWRyb3Bkb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICcnO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGJvcmRlci1sZWZ0OiA3cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogN3B4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItYm90dG9tOiA3cHggc29saWQgI2NjYztcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjIpO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogLTdweDtcbiAgbGVmdDogNnB4O1xufVxuLmRhdGVwaWNrZXItZHJvcGRvd246YWZ0ZXIge1xuICBjb250ZW50OiAnJztcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBib3JkZXItbGVmdDogNnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6IDZweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWJvdHRvbTogNnB4IHNvbGlkICNmZmZmZmY7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAtNnB4O1xuICBsZWZ0OiA3cHg7XG59XG4uZGF0ZXBpY2tlciA+IGRpdiB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4uZGF0ZXBpY2tlci5kYXlzIGRpdi5kYXRlcGlja2VyLWRheXMge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi5kYXRlcGlja2VyLm1vbnRocyBkaXYuZGF0ZXBpY2tlci1tb250aHMge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi5kYXRlcGlja2VyLnllYXJzIGRpdi5kYXRlcGlja2VyLXllYXJzIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4uZGF0ZXBpY2tlciB0YWJsZSB7XG4gIG1hcmdpbjogMDtcbn1cbi5kYXRlcGlja2VyIHRkLFxuLmRhdGVwaWNrZXIgdGgge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdpZHRoOiAyMHB4O1xuICBoZWlnaHQ6IDIwcHg7XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogNHB4O1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDRweDtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBib3JkZXI6IG5vbmU7XG59XG4udGFibGUtc3RyaXBlZCAuZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCxcbi50YWJsZS1zdHJpcGVkIC5kYXRlcGlja2VyIHRhYmxlIHRyIHRoIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5kYXk6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjZWVlZWVlO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5vbGQsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5uZXcge1xuICBjb2xvcjogIzk5OTk5OTtcbn1cbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmRpc2FibGVkLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuZGlzYWJsZWQ6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBjb2xvcjogIzk5OTk5OTtcbiAgY3Vyc29yOiBkZWZhdWx0O1xufVxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQudG9kYXksXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC50b2RheTpob3Zlcixcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnRvZGF5LmRpc2FibGVkLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQudG9kYXkuZGlzYWJsZWQ6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmRlMTlhO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtbW96LWxpbmVhci1ncmFkaWVudCh0b3AsICNmZGQ0OWEsICNmZGY1OWEpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtbXMtbGluZWFyLWdyYWRpZW50KHRvcCwgI2ZkZDQ5YSwgI2ZkZjU5YSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCAwIDAsIDAgMTAwJSwgZnJvbSgjZmRkNDlhKSwgdG8oI2ZkZjU5YSkpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsICNmZGQ0OWEsICNmZGY1OWEpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQodG9wLCAjZmRkNDlhLCAjZmRmNTlhKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvcCwgI2ZkZDQ5YSwgI2ZkZjU5YSk7XG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nI2ZkZDQ5YScsIGVuZENvbG9yc3RyPScjZmRmNTlhJywgR3JhZGllbnRUeXBlPTApO1xuICBib3JkZXItY29sb3I6ICNmZGY1OWEgI2ZkZjU5YSAjZmJlZDUwO1xuICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xKSByZ2JhKDAsIDAsIDAsIDAuMSkgcmdiYSgwLCAwLCAwLCAwLjI1KTtcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoZW5hYmxlZD1mYWxzZSk7XG4gIGNvbG9yOiAjMDAwO1xufVxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQudG9kYXk6aG92ZXIsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC50b2RheTpob3Zlcjpob3Zlcixcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnRvZGF5LmRpc2FibGVkOmhvdmVyLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQudG9kYXkuZGlzYWJsZWQ6aG92ZXI6aG92ZXIsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC50b2RheTphY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC50b2RheTpob3ZlcjphY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC50b2RheS5kaXNhYmxlZDphY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC50b2RheS5kaXNhYmxlZDpob3ZlcjphY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC50b2RheS5hY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC50b2RheTpob3Zlci5hY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC50b2RheS5kaXNhYmxlZC5hY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC50b2RheS5kaXNhYmxlZDpob3Zlci5hY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC50b2RheS5kaXNhYmxlZCxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnRvZGF5OmhvdmVyLmRpc2FibGVkLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQudG9kYXkuZGlzYWJsZWQuZGlzYWJsZWQsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC50b2RheS5kaXNhYmxlZDpob3Zlci5kaXNhYmxlZCxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnRvZGF5W2Rpc2FibGVkXSxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnRvZGF5OmhvdmVyW2Rpc2FibGVkXSxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnRvZGF5LmRpc2FibGVkW2Rpc2FibGVkXSxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnRvZGF5LmRpc2FibGVkOmhvdmVyW2Rpc2FibGVkXSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZGY1OWE7XG59XG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC50b2RheTphY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC50b2RheTpob3ZlcjphY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC50b2RheS5kaXNhYmxlZDphY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC50b2RheS5kaXNhYmxlZDpob3ZlcjphY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC50b2RheS5hY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC50b2RheTpob3Zlci5hY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC50b2RheS5kaXNhYmxlZC5hY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC50b2RheS5kaXNhYmxlZDpob3Zlci5hY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmJmMDY5IFxcOTtcbn1cbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnRvZGF5OmhvdmVyOmhvdmVyIHtcbiAgY29sb3I6ICMwMDA7XG59XG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC50b2RheS5hY3RpdmU6aG92ZXIge1xuICBjb2xvcjogI2ZmZjtcbn1cbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnJhbmdlLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2U6aG92ZXIsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5yYW5nZS5kaXNhYmxlZCxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnJhbmdlLmRpc2FibGVkOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogI2VlZWVlZTtcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAwO1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5yYW5nZS50b2RheSxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnJhbmdlLnRvZGF5OmhvdmVyLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2UudG9kYXkuZGlzYWJsZWQsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5yYW5nZS50b2RheS5kaXNhYmxlZDpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmM2QxN2E7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgI2YzYzE3YSwgI2YzZTk3YSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1tcy1saW5lYXItZ3JhZGllbnQodG9wLCAjZjNjMTdhLCAjZjNlOTdhKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIDAgMCwgMCAxMDAlLCBmcm9tKCNmM2MxN2EpLCB0bygjZjNlOTdhKSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgI2YzYzE3YSwgI2YzZTk3YSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCh0b3AsICNmM2MxN2EsICNmM2U5N2EpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG9wLCAjZjNjMTdhLCAjZjNlOTdhKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPScjZjNjMTdhJywgZW5kQ29sb3JzdHI9JyNmM2U5N2EnLCBHcmFkaWVudFR5cGU9MCk7XG4gIGJvcmRlci1jb2xvcjogI2YzZTk3YSAjZjNlOTdhICNlZGRlMzQ7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEpIHJnYmEoMCwgMCwgMCwgMC4xKSByZ2JhKDAsIDAsIDAsIDAuMjUpO1xuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChlbmFibGVkPWZhbHNlKTtcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAwO1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5yYW5nZS50b2RheTpob3Zlcixcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnJhbmdlLnRvZGF5OmhvdmVyOmhvdmVyLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2UudG9kYXkuZGlzYWJsZWQ6aG92ZXIsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5yYW5nZS50b2RheS5kaXNhYmxlZDpob3Zlcjpob3Zlcixcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnJhbmdlLnRvZGF5OmFjdGl2ZSxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnJhbmdlLnRvZGF5OmhvdmVyOmFjdGl2ZSxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnJhbmdlLnRvZGF5LmRpc2FibGVkOmFjdGl2ZSxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnJhbmdlLnRvZGF5LmRpc2FibGVkOmhvdmVyOmFjdGl2ZSxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnJhbmdlLnRvZGF5LmFjdGl2ZSxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnJhbmdlLnRvZGF5OmhvdmVyLmFjdGl2ZSxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnJhbmdlLnRvZGF5LmRpc2FibGVkLmFjdGl2ZSxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnJhbmdlLnRvZGF5LmRpc2FibGVkOmhvdmVyLmFjdGl2ZSxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnJhbmdlLnRvZGF5LmRpc2FibGVkLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2UudG9kYXk6aG92ZXIuZGlzYWJsZWQsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5yYW5nZS50b2RheS5kaXNhYmxlZC5kaXNhYmxlZCxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnJhbmdlLnRvZGF5LmRpc2FibGVkOmhvdmVyLmRpc2FibGVkLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2UudG9kYXlbZGlzYWJsZWRdLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2UudG9kYXk6aG92ZXJbZGlzYWJsZWRdLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2UudG9kYXkuZGlzYWJsZWRbZGlzYWJsZWRdLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQucmFuZ2UudG9kYXkuZGlzYWJsZWQ6aG92ZXJbZGlzYWJsZWRdIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YzZTk3YTtcbn1cbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnJhbmdlLnRvZGF5OmFjdGl2ZSxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnJhbmdlLnRvZGF5OmhvdmVyOmFjdGl2ZSxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnJhbmdlLnRvZGF5LmRpc2FibGVkOmFjdGl2ZSxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnJhbmdlLnRvZGF5LmRpc2FibGVkOmhvdmVyOmFjdGl2ZSxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnJhbmdlLnRvZGF5LmFjdGl2ZSxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnJhbmdlLnRvZGF5OmhvdmVyLmFjdGl2ZSxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnJhbmdlLnRvZGF5LmRpc2FibGVkLmFjdGl2ZSxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnJhbmdlLnRvZGF5LmRpc2FibGVkOmhvdmVyLmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlZmUyNGIgXFw5O1xufVxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuc2VsZWN0ZWQsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5zZWxlY3RlZDpob3Zlcixcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnNlbGVjdGVkLmRpc2FibGVkLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuc2VsZWN0ZWQuZGlzYWJsZWQ6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjOWU5ZTllO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtbW96LWxpbmVhci1ncmFkaWVudCh0b3AsICNiM2IzYjMsICM4MDgwODApO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtbXMtbGluZWFyLWdyYWRpZW50KHRvcCwgI2IzYjNiMywgIzgwODA4MCk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCAwIDAsIDAgMTAwJSwgZnJvbSgjYjNiM2IzKSwgdG8oIzgwODA4MCkpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsICNiM2IzYjMsICM4MDgwODApO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQodG9wLCAjYjNiM2IzLCAjODA4MDgwKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvcCwgI2IzYjNiMywgIzgwODA4MCk7XG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nI2IzYjNiMycsIGVuZENvbG9yc3RyPScjODA4MDgwJywgR3JhZGllbnRUeXBlPTApO1xuICBib3JkZXItY29sb3I6ICM4MDgwODAgIzgwODA4MCAjNTk1OTU5O1xuICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xKSByZ2JhKDAsIDAsIDAsIDAuMSkgcmdiYSgwLCAwLCAwLCAwLjI1KTtcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoZW5hYmxlZD1mYWxzZSk7XG4gIGNvbG9yOiAjZmZmO1xuICB0ZXh0LXNoYWRvdzogMCAtMXB4IDAgcmdiYSgwLCAwLCAwLCAwLjI1KTtcbn1cbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnNlbGVjdGVkOmhvdmVyLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuc2VsZWN0ZWQ6aG92ZXI6aG92ZXIsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5zZWxlY3RlZC5kaXNhYmxlZDpob3Zlcixcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnNlbGVjdGVkLmRpc2FibGVkOmhvdmVyOmhvdmVyLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuc2VsZWN0ZWQ6YWN0aXZlLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuc2VsZWN0ZWQ6aG92ZXI6YWN0aXZlLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuc2VsZWN0ZWQuZGlzYWJsZWQ6YWN0aXZlLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuc2VsZWN0ZWQuZGlzYWJsZWQ6aG92ZXI6YWN0aXZlLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuc2VsZWN0ZWQuYWN0aXZlLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuc2VsZWN0ZWQ6aG92ZXIuYWN0aXZlLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuc2VsZWN0ZWQuZGlzYWJsZWQuYWN0aXZlLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuc2VsZWN0ZWQuZGlzYWJsZWQ6aG92ZXIuYWN0aXZlLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuc2VsZWN0ZWQuZGlzYWJsZWQsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5zZWxlY3RlZDpob3Zlci5kaXNhYmxlZCxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLnNlbGVjdGVkLmRpc2FibGVkLmRpc2FibGVkLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuc2VsZWN0ZWQuZGlzYWJsZWQ6aG92ZXIuZGlzYWJsZWQsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5zZWxlY3RlZFtkaXNhYmxlZF0sXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5zZWxlY3RlZDpob3ZlcltkaXNhYmxlZF0sXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5zZWxlY3RlZC5kaXNhYmxlZFtkaXNhYmxlZF0sXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5zZWxlY3RlZC5kaXNhYmxlZDpob3ZlcltkaXNhYmxlZF0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjODA4MDgwO1xufVxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuc2VsZWN0ZWQ6YWN0aXZlLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuc2VsZWN0ZWQ6aG92ZXI6YWN0aXZlLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuc2VsZWN0ZWQuZGlzYWJsZWQ6YWN0aXZlLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuc2VsZWN0ZWQuZGlzYWJsZWQ6aG92ZXI6YWN0aXZlLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuc2VsZWN0ZWQuYWN0aXZlLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuc2VsZWN0ZWQ6aG92ZXIuYWN0aXZlLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuc2VsZWN0ZWQuZGlzYWJsZWQuYWN0aXZlLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuc2VsZWN0ZWQuZGlzYWJsZWQ6aG92ZXIuYWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzY2NjY2NiBcXDk7XG59XG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5hY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5hY3RpdmU6aG92ZXIsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5hY3RpdmUuZGlzYWJsZWQsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5hY3RpdmUuZGlzYWJsZWQ6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA2ZGNjO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtbW96LWxpbmVhci1ncmFkaWVudCh0b3AsICMwMDg4Y2MsICMwMDQ0Y2MpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtbXMtbGluZWFyLWdyYWRpZW50KHRvcCwgIzAwODhjYywgIzAwNDRjYyk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCAwIDAsIDAgMTAwJSwgZnJvbSgjMDA4OGNjKSwgdG8oIzAwNDRjYykpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsICMwMDg4Y2MsICMwMDQ0Y2MpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQodG9wLCAjMDA4OGNjLCAjMDA0NGNjKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvcCwgIzAwODhjYywgIzAwNDRjYyk7XG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nIzAwODhjYycsIGVuZENvbG9yc3RyPScjMDA0NGNjJywgR3JhZGllbnRUeXBlPTApO1xuICBib3JkZXItY29sb3I6ICMwMDQ0Y2MgIzAwNDRjYyAjMDAyYTgwO1xuICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xKSByZ2JhKDAsIDAsIDAsIDAuMSkgcmdiYSgwLCAwLCAwLCAwLjI1KTtcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoZW5hYmxlZD1mYWxzZSk7XG4gIGNvbG9yOiAjZmZmO1xuICB0ZXh0LXNoYWRvdzogMCAtMXB4IDAgcmdiYSgwLCAwLCAwLCAwLjI1KTtcbn1cbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmFjdGl2ZTpob3Zlcixcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmFjdGl2ZTpob3Zlcjpob3Zlcixcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmFjdGl2ZS5kaXNhYmxlZDpob3Zlcixcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmFjdGl2ZS5kaXNhYmxlZDpob3Zlcjpob3Zlcixcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmFjdGl2ZTphY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5hY3RpdmU6aG92ZXI6YWN0aXZlLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlLmRpc2FibGVkOmFjdGl2ZSxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmFjdGl2ZS5kaXNhYmxlZDpob3ZlcjphY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5hY3RpdmUuYWN0aXZlLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlOmhvdmVyLmFjdGl2ZSxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmFjdGl2ZS5kaXNhYmxlZC5hY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5hY3RpdmUuZGlzYWJsZWQ6aG92ZXIuYWN0aXZlLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlLmRpc2FibGVkLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlOmhvdmVyLmRpc2FibGVkLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlLmRpc2FibGVkLmRpc2FibGVkLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlLmRpc2FibGVkOmhvdmVyLmRpc2FibGVkLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlW2Rpc2FibGVkXSxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmFjdGl2ZTpob3ZlcltkaXNhYmxlZF0sXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5hY3RpdmUuZGlzYWJsZWRbZGlzYWJsZWRdLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlLmRpc2FibGVkOmhvdmVyW2Rpc2FibGVkXSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDQ0Y2M7XG59XG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5hY3RpdmU6YWN0aXZlLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlOmhvdmVyOmFjdGl2ZSxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmFjdGl2ZS5kaXNhYmxlZDphY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5hY3RpdmUuZGlzYWJsZWQ6aG92ZXI6YWN0aXZlLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlLmFjdGl2ZSxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkLmFjdGl2ZTpob3Zlci5hY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZC5hY3RpdmUuZGlzYWJsZWQuYWN0aXZlLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQuYWN0aXZlLmRpc2FibGVkOmhvdmVyLmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDMzOTkgXFw5O1xufVxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3BhbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMjMlO1xuICBoZWlnaHQ6IDU0cHg7XG4gIGxpbmUtaGVpZ2h0OiA1NHB4O1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luOiAxJTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDRweDtcbiAgLW1vei1ib3JkZXItcmFkaXVzOiA0cHg7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbn1cbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW46aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjZWVlZWVlO1xufVxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5kaXNhYmxlZCxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4uZGlzYWJsZWQ6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBjb2xvcjogIzk5OTk5OTtcbiAgY3Vyc29yOiBkZWZhdWx0O1xufVxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmUsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZTpob3Zlcixcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4uYWN0aXZlLmRpc2FibGVkLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmUuZGlzYWJsZWQ6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA2ZGNjO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtbW96LWxpbmVhci1ncmFkaWVudCh0b3AsICMwMDg4Y2MsICMwMDQ0Y2MpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtbXMtbGluZWFyLWdyYWRpZW50KHRvcCwgIzAwODhjYywgIzAwNDRjYyk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCAwIDAsIDAgMTAwJSwgZnJvbSgjMDA4OGNjKSwgdG8oIzAwNDRjYykpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsICMwMDg4Y2MsICMwMDQ0Y2MpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQodG9wLCAjMDA4OGNjLCAjMDA0NGNjKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvcCwgIzAwODhjYywgIzAwNDRjYyk7XG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nIzAwODhjYycsIGVuZENvbG9yc3RyPScjMDA0NGNjJywgR3JhZGllbnRUeXBlPTApO1xuICBib3JkZXItY29sb3I6ICMwMDQ0Y2MgIzAwNDRjYyAjMDAyYTgwO1xuICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xKSByZ2JhKDAsIDAsIDAsIDAuMSkgcmdiYSgwLCAwLCAwLCAwLjI1KTtcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoZW5hYmxlZD1mYWxzZSk7XG4gIGNvbG9yOiAjZmZmO1xuICB0ZXh0LXNoYWRvdzogMCAtMXB4IDAgcmdiYSgwLCAwLCAwLCAwLjI1KTtcbn1cbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4uYWN0aXZlOmhvdmVyLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmU6aG92ZXI6aG92ZXIsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZS5kaXNhYmxlZDpob3Zlcixcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4uYWN0aXZlLmRpc2FibGVkOmhvdmVyOmhvdmVyLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmU6YWN0aXZlLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmU6aG92ZXI6YWN0aXZlLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmUuZGlzYWJsZWQ6YWN0aXZlLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmUuZGlzYWJsZWQ6aG92ZXI6YWN0aXZlLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmUuYWN0aXZlLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmU6aG92ZXIuYWN0aXZlLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmUuZGlzYWJsZWQuYWN0aXZlLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmUuZGlzYWJsZWQ6aG92ZXIuYWN0aXZlLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmUuZGlzYWJsZWQsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZTpob3Zlci5kaXNhYmxlZCxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4uYWN0aXZlLmRpc2FibGVkLmRpc2FibGVkLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmUuZGlzYWJsZWQ6aG92ZXIuZGlzYWJsZWQsXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZVtkaXNhYmxlZF0sXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZTpob3ZlcltkaXNhYmxlZF0sXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZS5kaXNhYmxlZFtkaXNhYmxlZF0sXG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLmFjdGl2ZS5kaXNhYmxlZDpob3ZlcltkaXNhYmxlZF0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA0NGNjO1xufVxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmU6YWN0aXZlLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmU6aG92ZXI6YWN0aXZlLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmUuZGlzYWJsZWQ6YWN0aXZlLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmUuZGlzYWJsZWQ6aG92ZXI6YWN0aXZlLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmUuYWN0aXZlLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmU6aG92ZXIuYWN0aXZlLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmUuZGlzYWJsZWQuYWN0aXZlLFxuLmRhdGVwaWNrZXIgdGFibGUgdHIgdGQgc3Bhbi5hY3RpdmUuZGlzYWJsZWQ6aG92ZXIuYWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMzM5OSBcXDk7XG59XG4uZGF0ZXBpY2tlciB0YWJsZSB0ciB0ZCBzcGFuLm9sZCxcbi5kYXRlcGlja2VyIHRhYmxlIHRyIHRkIHNwYW4ubmV3IHtcbiAgY29sb3I6ICM5OTk5OTk7XG59XG4uZGF0ZXBpY2tlciB0aC5kYXRlcGlja2VyLXN3aXRjaCB7XG4gIHdpZHRoOiAxNDVweDtcbn1cbi5kYXRlcGlja2VyIHRoZWFkIHRyOmZpcnN0LWNoaWxkIHRoLFxuLmRhdGVwaWNrZXIgdGZvb3QgdHIgdGgge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG4uZGF0ZXBpY2tlciB0aGVhZCB0cjpmaXJzdC1jaGlsZCB0aDpob3Zlcixcbi5kYXRlcGlja2VyIHRmb290IHRyIHRoOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogI2VlZWVlZTtcbn1cbi5kYXRlcGlja2VyIC5jdyB7XG4gIGZvbnQtc2l6ZTogMTBweDtcbiAgd2lkdGg6IDEycHg7XG4gIHBhZGRpbmc6IDAgMnB4IDAgNXB4O1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuLmRhdGVwaWNrZXIgdGhlYWQgdHI6Zmlyc3QtY2hpbGQgdGguY3cge1xuICBjdXJzb3I6IGRlZmF1bHQ7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLmlucHV0LWFwcGVuZC5kYXRlIC5hZGQtb24gaSxcbi5pbnB1dC1wcmVwZW5kLmRhdGUgLmFkZC1vbiBpIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgd2lkdGg6IDE2cHg7XG4gIGhlaWdodDogMTZweDtcbn1cbi5pbnB1dC1kYXRlcmFuZ2UgaW5wdXQge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4uaW5wdXQtZGF0ZXJhbmdlIGlucHV0OmZpcnN0LWNoaWxkIHtcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAzcHggMCAwIDNweDtcbiAgLW1vei1ib3JkZXItcmFkaXVzOiAzcHggMCAwIDNweDtcbiAgYm9yZGVyLXJhZGl1czogM3B4IDAgMCAzcHg7XG59XG4uaW5wdXQtZGF0ZXJhbmdlIGlucHV0Omxhc3QtY2hpbGQge1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDAgM3B4IDNweCAwO1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDAgM3B4IDNweCAwO1xuICBib3JkZXItcmFkaXVzOiAwIDNweCAzcHggMDtcbn1cbi5pbnB1dC1kYXRlcmFuZ2UgLmFkZC1vbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IGF1dG87XG4gIG1pbi13aWR0aDogMTZweDtcbiAgaGVpZ2h0OiAxOHB4O1xuICBwYWRkaW5nOiA0cHggNXB4O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogMThweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LXNoYWRvdzogMCAxcHggMCAjZmZmZmZmO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVlZWVlO1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2NjO1xuICBtYXJnaW4tbGVmdDogLTVweDtcbiAgbWFyZ2luLXJpZ2h0OiAtNXB4O1xufVxuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9*/