/*!*****************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[1]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[4].oneOf[1].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[3]!./assets/theme/scss/theme-default.scss ***!
  \*****************************************************************************************************************************************************************************************************************************************************************************************/
@charset "UTF-8";
/*
* Pages Mixins
*/
.layout-navbar-fixed .layout-wrapper:not(.layout-horizontal) .layout-page:before {
  content: "";
  width: 100%;
  height: 4.5rem;
  position: fixed;
  top: 0px;
  z-index: 10;
}

.bg-menu-theme .menu-sub > .menu-item > .menu-link:before {
  content: "\ea6b";
  font-family: "tabler-icons";
  position: absolute;
  font-size: 0.75rem;
  font-weight: bold;
}
.bg-menu-theme.menu-vertical .menu-sub > .menu-item > .menu-link:before {
  left: 1.1rem;
}
.bg-menu-theme.menu-vertical .menu-sub > .menu-item .menu-link .menu-icon {
  display: none;
}
.bg-menu-theme.menu-horizontal .menu-inner > .menu-item > .menu-sub > .menu-item > .menu-link {
  padding-left: 1rem;
}
.bg-menu-theme.menu-horizontal .menu-inner > .menu-item > .menu-sub > .menu-item > .menu-link:before {
  content: "";
}
.layout-horizontal .bg-menu-theme .menu-sub > .menu-item > .menu-link:before {
  left: 1.1rem;
}
.layout-wrapper:not(.layout-horizontal) .bg-menu-theme .menu-inner .menu-item .menu-link {
  border-radius: 0.375rem;
}
.layout-horizontal .bg-menu-theme .menu-inner > .menu-item > .menu-link {
  border-radius: 0.375rem;
}
@media (min-width: 1200px) {
  .layout-horizontal .bg-menu-theme .menu-inner > .menu-item {
    margin: 0.5rem 0;
  }
  .layout-horizontal .bg-menu-theme .menu-inner > .menu-item:not(:first-child) {
    margin-inline-start: 0.1875rem;
  }
  .layout-horizontal .bg-menu-theme .menu-inner > .menu-item:not(:last-child) {
    margin-inline-end: 0.1875rem;
  }
}
.layout-wrapper:not(.layout-horizontal) .bg-menu-theme .menu-inner > .menu-item.active:before {
  content: "";
  position: absolute;
  right: 0;
  width: 0.25rem;
  height: 2.6845rem;
  border-radius: 0.375rem 0 0 0.375rem;
}

body {
  background: #f8f7fa;
}

.bg-body {
  background: #f8f7fa !important;
}

.text-primary {
  color: #7367f0 !important;
}

.text-body[href]:hover,
.text-heading[href]:hover {
  color: rgb(103.5, 92.7, 216) !important;
}

.bg-primary {
  background-color: #7367f0 !important;
}

a.bg-primary:hover, a.bg-primary:focus {
  background-color: rgb(109.25, 97.85, 228) !important;
}

.dropdown-notifications-item:not(.mark-as-read) .dropdown-notifications-read span {
  background-color: #7367f0;
}

.bg-label-primary {
  background-color: rgb(232.6, 230.68, 252.6) !important;
  color: #7367f0 !important;
}

.bg-label-hover-primary {
  background-color: rgb(232.6, 230.68, 252.6) !important;
  color: #7367f0 !important;
}
.bg-label-hover-primary:hover {
  background-color: #7367f0 !important;
  color: #fff !important;
}

.bg-gradient-primary {
  background-image: linear-gradient(45deg, #7367f0, rgb(185, 179, 247.5)) !important;
}

.bg-primary.bg-glow {
  box-shadow: 0px 2px 3px 0px rgba(115, 103, 240, 0.3);
}

.page-item .page-link:hover, .page-item .page-link:focus,
.pagination li > a:not(.page-link):hover,
.pagination li > a:not(.page-link):focus {
  background-color: rgb(232.6, 230.68, 252.6);
  color: #7367f0;
}

.page-item.active .page-link,
.pagination li.active > a:not(.page-link) {
  box-shadow: 0 0.125rem 0.375rem 0 rgba(115, 103, 240, 0.3);
}
.page-item.active .page-link, .page-item.active .page-link:hover, .page-item.active .page-link:focus,
.pagination li.active > a:not(.page-link),
.pagination li.active > a:not(.page-link):hover,
.pagination li.active > a:not(.page-link):focus {
  border-color: #7367f0;
  background-color: #7367f0;
  color: #fff;
}

.page-item .page-link.waves-effect .waves-ripple,
.pagination li > a:not(.page-link).waves-effect .waves-ripple {
  background: radial-gradient(rgba(115, 103, 240, 0.2) 0, rgba(115, 103, 240, 0.3) 40%, rgba(115, 103, 240, 0.4) 50%, rgba(115, 103, 240, 0.5) 60%, rgba(47, 43, 61, 0) 70%);
}

.pagination-outline-primary .page-item.active .page-link, .pagination-outline-primary .page-item.active .page-link:hover, .pagination-outline-primary .page-item.active .page-link:focus,
.pagination-outline-primary.pagination li.active > a:not(.page-link),
.pagination-outline-primary.pagination li.active > a:not(.page-link):hover,
.pagination-outline-primary.pagination li.active > a:not(.page-link):focus {
  border-color: #7367f0 !important;
  color: #7367f0 !important;
  background-color: rgb(232.6, 230.68, 252.6) !important;
}
.pagination-outline-primary .page-item.active .page-link.waves-effect .waves-ripple,
.pagination-outline-primary.pagination li.active > a:not(.page-link).waves-effect .waves-ripple {
  background: radial-gradient(rgba(115, 103, 240, 0.2) 0, rgba(115, 103, 240, 0.3) 40%, rgba(115, 103, 240, 0.4) 50%, rgba(115, 103, 240, 0.5) 60%, rgba(47, 43, 61, 0) 70%);
}

.progress-bar {
  background-color: #7367f0;
  color: #fff;
}

.progress-bar {
  box-shadow: 0 0.125rem 0.375rem 0 rgba(115, 103, 240, 0.3);
}

.modal-onboarding .carousel-indicators [data-bs-target] {
  background-color: #7367f0;
}

.carousel-control-prev,
.carousel-control-next {
  color: #7367f0;
}
.carousel-control-prev:hover, .carousel-control-prev:focus,
.carousel-control-next:hover,
.carousel-control-next:focus {
  color: #7367f0;
}

.list-group-item-primary {
  border-color: #7367f0;
  background-color: rgb(232.6, 230.68, 252.6);
  color: #7367f0 !important;
}

a.list-group-item-primary,
button.list-group-item-primary {
  color: #7367f0;
}
a.list-group-item-primary:hover, a.list-group-item-primary:focus,
button.list-group-item-primary:hover,
button.list-group-item-primary:focus {
  border-color: #7367f0;
  background-color: rgb(218.644, 216.8392, 237.444);
  color: #7367f0;
}
a.list-group-item-primary.active,
button.list-group-item-primary.active {
  border-color: #7367f0 !important;
  background-color: #7367f0 !important;
  color: #fff !important;
}

.list-group-item.active {
  background-color: rgb(232.6, 230.68, 252.6);
  color: #7367f0;
}
.list-group-item.active.waves-effect .waves-ripple {
  background: radial-gradient(rgba(115, 103, 240, 0.2) 0, rgba(115, 103, 240, 0.3) 40%, rgba(115, 103, 240, 0.4) 50%, rgba(115, 103, 240, 0.5) 60%, rgba(47, 43, 61, 0) 70%);
}

.list-group.list-group-timeline .list-group-timeline-primary:before {
  border-color: #7367f0;
  background-color: #7367f0;
}

.alert-primary {
  background-color: rgb(232.6, 230.68, 252.6);
  border-color: rgb(232.6, 230.68, 252.6);
  color: #7367f0;
}
.alert-primary .btn-close {
  background-image: url("data:image/svg+xml,%3Csvg width=%2719%27 height=%2718%27 viewBox=%270 0 19 18%27 fill=%27none%27 xmlns=%27http://www.w3.org/2000/svg%27%3E%3Cpath d=%27M14 4.5L5 13.5%27 stroke=%27%237367f0%27 stroke-width=%271.75%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27/%3E%3Cpath d=%27M14 4.5L5 13.5%27 stroke=%27white%27 stroke-opacity=%270.2%27 stroke-width=%271.75%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27/%3E%3Cpath d=%27M5 4.5L14 13.5%27 stroke=%27%237367f0%27 stroke-width=%271.75%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27/%3E%3Cpath d=%27M5 4.5L14 13.5%27 stroke=%27white%27 stroke-opacity=%270.2%27 stroke-width=%271.75%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27/%3E%3C/svg%3E%0A");
}
.alert-primary .alert-link {
  color: #7367f0;
}

.alert-primary hr {
  color: #7367f0 !important;
}
.alert-primary .alert-icon {
  background-color: #7367f0;
}

.alert-outline-primary {
  border-color: #7367f0;
  color: #7367f0;
}
.alert-outline-primary .btn-close {
  background-image: url("data:image/svg+xml,%3Csvg width=%2719%27 height=%2718%27 viewBox=%270 0 19 18%27 fill=%27none%27 xmlns=%27http://www.w3.org/2000/svg%27%3E%3Cpath d=%27M14 4.5L5 13.5%27 stroke=%27%237367f0%27 stroke-width=%271.75%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27/%3E%3Cpath d=%27M14 4.5L5 13.5%27 stroke=%27white%27 stroke-opacity=%270.2%27 stroke-width=%271.75%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27/%3E%3Cpath d=%27M5 4.5L14 13.5%27 stroke=%27%237367f0%27 stroke-width=%271.75%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27/%3E%3Cpath d=%27M5 4.5L14 13.5%27 stroke=%27white%27 stroke-opacity=%270.2%27 stroke-width=%271.75%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27/%3E%3C/svg%3E%0A");
}
.alert-outline-primary .alert-link {
  color: #7367f0;
}

.alert-outline-primary hr {
  color: #7367f0 !important;
}
.alert-outline-primary .alert-icon {
  color: #7367f0 !important;
  background-color: rgb(232.6, 230.68, 252.6) !important;
}

.alert-solid-primary {
  background-color: #7367f0;
  color: #fff;
}
.alert-solid-primary .btn-close {
  background-image: url("data:image/svg+xml,%3Csvg width=%2719%27 height=%2718%27 viewBox=%270 0 19 18%27 fill=%27none%27 xmlns=%27http://www.w3.org/2000/svg%27%3E%3Cpath d=%27M14 4.5L5 13.5%27 stroke=%27%23fff%27 stroke-width=%271.75%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27/%3E%3Cpath d=%27M14 4.5L5 13.5%27 stroke=%27white%27 stroke-opacity=%270.2%27 stroke-width=%271.75%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27/%3E%3Cpath d=%27M5 4.5L14 13.5%27 stroke=%27%23fff%27 stroke-width=%271.75%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27/%3E%3Cpath d=%27M5 4.5L14 13.5%27 stroke=%27white%27 stroke-opacity=%270.2%27 stroke-width=%271.75%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27/%3E%3C/svg%3E%0A");
}
.alert-solid-primary .alert-link {
  color: #fff;
}

.alert-solid-primary hr {
  color: #fff !important;
}
.alert-solid-primary .alert-icon {
  color: #7367f0 !important;
}

.tooltip-primary .tooltip-inner, .tooltip-primary > .tooltip .tooltip-inner, .ngb-tooltip-primary + ngb-tooltip-window .tooltip-inner {
  background: #7367f0;
  color: #fff;
}
.tooltip-primary.bs-tooltip-auto[data-popper-placement=top] .tooltip-arrow::before, .tooltip-primary > .tooltip.bs-tooltip-auto[data-popper-placement=top] .tooltip-arrow::before, .ngb-tooltip-primary + ngb-tooltip-window.bs-tooltip-auto[data-popper-placement=top] .tooltip-arrow::before {
  border-top-color: #7367f0;
}
.tooltip-primary.bs-tooltip-auto[data-popper-placement=left] .tooltip-arrow::before, .tooltip-primary > .tooltip.bs-tooltip-auto[data-popper-placement=left] .tooltip-arrow::before, .ngb-tooltip-primary + ngb-tooltip-window.bs-tooltip-auto[data-popper-placement=left] .tooltip-arrow::before {
  border-left-color: #7367f0;
}
.tooltip-primary.bs-tooltip-auto[data-popper-placement=bottom] .tooltip-arrow::before, .tooltip-primary > .tooltip.bs-tooltip-auto[data-popper-placement=bottom] .tooltip-arrow::before, .ngb-tooltip-primary + ngb-tooltip-window.bs-tooltip-auto[data-popper-placement=bottom] .tooltip-arrow::before {
  border-bottom-color: #7367f0;
}
.tooltip-primary.bs-tooltip-auto[data-popper-placement=right] .tooltip-arrow::before, .tooltip-primary > .tooltip.bs-tooltip-auto[data-popper-placement=right] .tooltip-arrow::before, .ngb-tooltip-primary + ngb-tooltip-window.bs-tooltip-auto[data-popper-placement=right] .tooltip-arrow::before {
  border-right-color: #7367f0;
}

.popover-primary, .popover-primary > .popover, .ngb-popover-primary + ngb-popover-window {
  border-color: transparent;
  background: #7367f0;
}
.popover-primary .popover-header, .popover-primary > .popover .popover-header, .ngb-popover-primary + ngb-popover-window .popover-header {
  border-color: #7367f0;
  background: transparent;
  color: #fff;
}
.popover-primary .popover-body, .popover-primary > .popover .popover-body, .ngb-popover-primary + ngb-popover-window .popover-body {
  background: transparent;
  color: rgba(255, 255, 255, 0.8);
}
.popover-primary > .popover-arrow::before, .popover-primary > .popover > .popover-arrow::before, .ngb-popover-primary + ngb-popover-window > .popover-arrow::before {
  border-color: transparent;
}
.popover-primary.bs-popover-auto[data-popper-placement=top] > .popover-arrow::after, .popover-primary > .popover.bs-popover-auto[data-popper-placement=top] > .popover-arrow::after, .ngb-popover-primary + ngb-popover-window.bs-popover-auto[data-popper-placement=top] > .popover-arrow::after {
  border-top-color: #7367f0 !important;
}
.popover-primary.bs-popover-auto[data-popper-placement=right] > .popover-arrow::after, .popover-primary > .popover.bs-popover-auto[data-popper-placement=right] > .popover-arrow::after, .ngb-popover-primary + ngb-popover-window.bs-popover-auto[data-popper-placement=right] > .popover-arrow::after {
  border-right-color: #7367f0 !important;
}
.popover-primary.bs-popover-auto[data-popper-placement=bottom] > .popover-arrow::after, .popover-primary > .popover.bs-popover-auto[data-popper-placement=bottom] > .popover-arrow::after, .ngb-popover-primary + ngb-popover-window.bs-popover-auto[data-popper-placement=bottom] > .popover-arrow::after {
  border-bottom-color: #7367f0 !important;
}
.popover-primary.bs-popover-auto[data-popper-placement=left] > .popover-arrow::after, .popover-primary > .popover.bs-popover-auto[data-popper-placement=left] > .popover-arrow::after, .ngb-popover-primary + ngb-popover-window.bs-popover-auto[data-popper-placement=left] > .popover-arrow::after {
  border-left-color: #7367f0 !important;
}
.popover-primary.bs-popover-auto[data-popper-placement=bottom] .popover-header::before, .popover-primary > .popover.bs-popover-auto[data-popper-placement=bottom] .popover-header::before, .ngb-popover-primary + ngb-popover-window.bs-popover-auto[data-popper-placement=bottom] .popover-header::before {
  border-bottom: 1px solid transparent !important;
}

.table-primary {
  --bs-table-bg: rgb(232.6, 230.68, 252.6);
  --bs-table-striped-bg: rgb(221.464, 219.4192, 241.104);
  --bs-table-striped-color: #2f2b3d;
  --bs-table-active-bg: rgb(217.752, 215.6656, 237.272);
  --bs-table-active-color: #2f2b3d;
  --bs-table-hover-bg: rgb(221.464, 219.4192, 241.104);
  --bs-table-hover-color: #2f2b3d;
  color: #2f2b3d;
  border-color: rgb(210.328, 208.1584, 229.608);
}
.table-primary .btn-icon,
.table-primary .btn {
  color: #2f2b3d;
}

.btn-primary {
  color: #fff;
  background-color: #7367f0;
  border-color: #7367f0;
}
.btn-primary.btn[class*=btn-]:not([class*=btn-label-]):not([class*=btn-outline-]):not([class*=btn-text-]):not(.btn-icon):not(:disabled):not(.disabled) {
  box-shadow: 0 0.125rem 0.375rem 0 rgba(115, 103, 240, 0.3);
}
.btn-primary:hover {
  color: #fff !important;
  background-color: rgb(103.5, 92.7, 216) !important;
  border-color: rgb(103.5, 92.7, 216) !important;
}
.btn-check:focus + .btn-primary, .btn-primary:focus, .btn-primary.focus {
  color: #fff;
  background-color: rgb(103.5, 92.7, 216);
  border-color: rgb(103.5, 92.7, 216);
}
.btn-check:checked + .btn-primary, .btn-check:active + .btn-primary, .btn-primary:active, .btn-primary.active, .btn-primary.show.dropdown-toggle, .show > .btn-primary.dropdown-toggle {
  color: #fff !important;
  background-color: rgb(103.5, 92.7, 216) !important;
  border-color: rgb(103.5, 92.7, 216) !important;
}
.btn-primary.disabled, .btn-primary:disabled {
  color: #fff !important;
  background-color: #7367f0 !important;
  border-color: #7367f0 !important;
}

.btn-group .btn-primary,
.input-group .btn-primary {
  border-right: var(--bs-border-width) solid rgb(103.5, 92.7, 216);
  border-left: var(--bs-border-width) solid rgb(103.5, 92.7, 216);
}

.btn-group-vertical .btn-primary {
  border-top-color: rgb(103.5, 92.7, 216);
  border-bottom-color: rgb(103.5, 92.7, 216);
}

.btn-label-primary {
  color: #7367f0 !important;
  border-color: transparent !important;
  background: rgb(232.6, 230.68, 252.6) !important;
}
.btn-label-primary.waves-effect .waves-ripple {
  background: radial-gradient(rgba(115, 103, 240, 0.2) 0, rgba(115, 103, 240, 0.3) 40%, rgba(115, 103, 240, 0.4) 50%, rgba(115, 103, 240, 0.5) 60%, rgba(255, 255, 255, 0) 70%);
}
.btn-label-primary:hover {
  border-color: transparent !important;
  background: rgb(221.4, 218.52, 251.4) !important;
  color: #7367f0 !important;
}
.btn-label-primary:focus, .btn-label-primary.focus {
  color: #7367f0;
  background: rgb(221.4, 218.52, 251.4);
}
.btn-label-primary:active, .btn-label-primary.active, .btn-label-primary.show.dropdown-toggle, .show > .btn-label-primary.dropdown-toggle {
  color: #7367f0 !important;
  background-color: rgb(221.4, 218.52, 251.4) !important;
  border-color: transparent !important;
}
.btn-label-primary.disabled, .btn-label-primary:disabled {
  color: #7367f0 !important;
  border-color: transparent !important;
  background: rgb(232.6, 230.68, 252.6) !important;
}

.btn-group .btn-label-primary,
.input-group .btn-label-primary {
  border-right: var(--bs-border-width) solid rgb(210.2, 206.36, 250.2) !important;
  border-left: var(--bs-border-width) solid rgb(210.2, 206.36, 250.2) !important;
}

.btn-group-vertical .btn-label-primary {
  border-top: var(--bs-border-width) solid rgb(210.2, 206.36, 250.2) !important;
  border-bottom: var(--bs-border-width) solid rgb(210.2, 206.36, 250.2) !important;
}

.btn-text-primary {
  color: #7367f0;
}
.btn-text-primary.waves-effect .waves-ripple {
  background: radial-gradient(rgba(115, 103, 240, 0.2) 0, rgba(115, 103, 240, 0.3) 40%, rgba(115, 103, 240, 0.4) 50%, rgba(115, 103, 240, 0.5) 60%, rgba(255, 255, 255, 0) 70%);
}
.btn-text-primary:hover {
  border-color: transparent;
  background: rgb(243.8, 242.84, 253.8);
  color: #7367f0;
}
.btn-text-primary:focus, .btn-text-primary.focus {
  color: #7367f0;
  background: rgb(243.8, 242.84, 253.8);
}
.btn-text-primary:active, .btn-text-primary.active, .btn-text-primary.show.dropdown-toggle, .show > .btn-text-primary.dropdown-toggle {
  color: #7367f0 !important;
  background: rgb(243.8, 242.84, 253.8) !important;
  border-color: transparent !important;
}
.btn-text-primary:disabled, .btn-text-primary.disabled {
  color: #7367f0;
}

.btn-group .btn-text-primary,
.input-group .btn-text-primary {
  border-right: var(--bs-border-width) solid #7367f0 !important;
  border-left: var(--bs-border-width) solid #7367f0 !important;
}

.btn-group-vertical .btn-text-primary {
  border-top: var(--bs-border-width) solid #7367f0 !important;
  border-bottom: var(--bs-border-width) solid #7367f0 !important;
}

.btn-outline-primary {
  color: #7367f0;
  border-color: #7367f0;
  background: transparent;
}
.btn-outline-primary.waves-effect .waves-ripple {
  background: radial-gradient(rgba(115, 103, 240, 0.2) 0, rgba(115, 103, 240, 0.3) 40%, rgba(115, 103, 240, 0.4) 50%, rgba(115, 103, 240, 0.5) 60%, rgba(255, 255, 255, 0) 70%);
}
.btn-outline-primary:hover {
  color: #7367f0 !important;
  background-color: rgb(243.8, 242.84, 253.8) !important;
  border-color: #7367f0 !important;
}
.btn-check:focus + .btn-outline-primary, .btn-outline-primary:focus {
  color: #7367f0;
  background-color: rgb(243.8, 242.84, 253.8);
  border-color: #7367f0;
}
.btn-check:checked + .btn-outline-primary, .btn-check:active + .btn-outline-primary, .btn-outline-primary:active, .btn-outline-primary.active, .btn-outline-primary.dropdown-toggle.show {
  color: #7367f0 !important;
  background-color: rgb(243.8, 242.84, 253.8) !important;
  border-color: #7367f0 !important;
}
.btn-outline-primary.disabled, .btn-outline-primary:disabled {
  color: #7367f0 !important;
}

.btn-outline-primary .badge {
  background: #7367f0;
  border-color: #7367f0;
  color: #fff;
}

.btn-outline-primary:hover .badge,
.btn-outline-primary:focus:hover .badge,
.btn-outline-primary:active .badge,
.btn-outline-primary.active .badge,
.show > .btn-outline-primary.dropdown-toggle .badge {
  background: #7367f0;
  border-color: #7367f0;
}

.dropdown-item.waves-effect .waves-ripple {
  background: radial-gradient(rgba(115, 103, 240, 0.2) 0, rgba(115, 103, 240, 0.3) 40%, rgba(115, 103, 240, 0.4) 50%, rgba(115, 103, 240, 0.5) 60%, rgba(255, 255, 255, 0) 70%);
}
.dropdown-item:not(.disabled).active, .dropdown-item:not(.disabled):active {
  background-color: rgb(232.6, 230.68, 252.6);
  color: #7367f0 !important;
}

.dropdown-menu > li:not(.disabled) > a:not(.dropdown-item):active,
.dropdown-menu > li.active:not(.disabled) > a:not(.dropdown-item) {
  background-color: rgb(232.6, 230.68, 252.6);
  color: #7367f0 !important;
}

.nav-pills .nav-link.active {
  box-shadow: 0 0.125rem 0.375rem 0 rgba(115, 103, 240, 0.3);
}
.nav-pills .nav-link.active, .nav-pills .nav-link.active:hover, .nav-pills .nav-link.active:focus {
  background-color: #7367f0;
  color: #fff;
}

.nav-tabs .nav-link.waves-effect .waves-ripple {
  background: radial-gradient(rgba(115, 103, 240, 0.2) 0, rgba(115, 103, 240, 0.3) 40%, rgba(115, 103, 240, 0.4) 50%, rgba(115, 103, 240, 0.5) 60%, rgba(255, 255, 255, 0) 70%);
}

.nav-tabs .nav-link.active, .nav-tabs .nav-link.active:hover, .nav-tabs .nav-link.active:focus,
.nav-tabs .nav-link.active,
.nav-tabs .nav-link.active:hover,
.nav-tabs .nav-link.active:focus {
  box-shadow: 0 -2px 0 #7367f0 inset;
}

.nav-align-bottom .nav-tabs .nav-link.active, .nav-align-bottom .nav-tabs .nav-link.active:hover, .nav-align-bottom .nav-tabs .nav-link.active:focus,
.nav-align-bottom .nav-tabs .nav-link.active,
.nav-align-bottom .nav-tabs .nav-link.active:hover,
.nav-align-bottom .nav-tabs .nav-link.active:focus {
  box-shadow: 0 2px 0 #7367f0 inset;
}

.nav-align-left .nav-tabs .nav-link.active, .nav-align-left .nav-tabs .nav-link.active:hover, .nav-align-left .nav-tabs .nav-link.active:focus,
.nav-align-left .nav-tabs .nav-link.active,
.nav-align-left .nav-tabs .nav-link.active:hover,
.nav-align-left .nav-tabs .nav-link.active:focus {
  box-shadow: -2px 0px 0 #7367f0 inset;
}

.nav-align-right .nav-tabs .nav-link.active, .nav-align-right .nav-tabs .nav-link.active:hover, .nav-align-right .nav-tabs .nav-link.active:focus,
.nav-align-right .nav-tabs .nav-link.active,
.nav-align-right .nav-tabs .nav-link.active:hover,
.nav-align-right .nav-tabs .nav-link.active:focus {
  box-shadow: 2px 0px 0 #7367f0 inset;
}

.form-control:focus,
.form-select:focus {
  border-color: #7367f0 !important;
}

.input-group:focus-within .form-control,
.input-group:focus-within .input-group-text {
  border-color: #7367f0 !important;
}

.form-check-input:checked {
  background-color: #7367f0;
  border-color: #7367f0;
  box-shadow: 0 2px 6px 0 rgba(115, 103, 240, 0.3);
}
.form-check-input[type=checkbox]:indeterminate {
  background-color: #7367f0;
  border-color: #7367f0;
  box-shadow: 0 2px 6px 0 rgba(115, 103, 240, 0.3);
}

.custom-option.checked {
  border: 2px solid #7367f0 !important;
  margin: 0;
}
.custom-option.checked .custom-option-body i,
.custom-option.checked .custom-option-header i {
  color: #7367f0;
}
.custom-option.custom-option-label.checked {
  background-color: rgba(115, 103, 240, 0.12);
  color: #7367f0;
}
.custom-option.custom-option-label.checked .custom-option-header span,
.custom-option.custom-option-label.checked .custom-option-title {
  color: #7367f0;
}

.form-switch .form-check-input:focus {
  background-image: url("data:image/svg+xml,%3csvg width=%2722%27 height=%2722%27 viewBox=%270 0 22 22%27 fill=%27none%27 xmlns=%27http://www.w3.org/2000/svg%27%3e%3cg filter=%27url%28%23a%29%27%3e%3ccircle cx=%2712%27 cy=%2711%27 r=%278.5%27 fill=%27%23fff%27/%3e%3c/g%3e%3cdefs%3e%3cfilter id=%27a%27 x=%270%27 y=%270%27 width=%2722%27 height=%2722%27 filterUnits=%27userSpaceOnUse%27 color-interpolation-filters=%27sRGB%27%3e%3cfeFlood flood-opacity=%270%27 result=%27BackgroundImageFix%27/%3e%3cfeColorMatrix in=%27SourceAlpha%27 values=%270 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0%27 result=%27hardAlpha%27/%3e%3cfeOffset dy=%272%27/%3e%3cfeGaussianBlur stdDeviation=%272%27/%3e%3cfeColorMatrix values=%270 0 0 0 0.180392 0 0 0 0 0.14902 0 0 0 0 0.239216 0 0 0 0.16 0%27/%3e%3cfeBlend in2=%27BackgroundImageFix%27 result=%27effect1_dropShadow_6488_3264%27/%3e%3cfeBlend in=%27SourceGraphic%27 in2=%27effect1_dropShadow_6488_3264%27 result=%27shape%27/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e");
}
.form-switch .form-check-input:checked {
  background-image: url("data:image/svg+xml,%3csvg width=%2722%27 height=%2722%27 viewBox=%270 0 22 22%27 fill=%27none%27 xmlns=%27http://www.w3.org/2000/svg%27%3e%3cg filter=%27url%28%23a%29%27%3e%3ccircle cx=%2712%27 cy=%2711%27 r=%278.5%27 fill=%27%23fff%27/%3e%3c/g%3e%3cdefs%3e%3cfilter id=%27a%27 x=%270%27 y=%270%27 width=%2722%27 height=%2722%27 filterUnits=%27userSpaceOnUse%27 color-interpolation-filters=%27sRGB%27%3e%3cfeFlood flood-opacity=%270%27 result=%27BackgroundImageFix%27/%3e%3cfeColorMatrix in=%27SourceAlpha%27 values=%270 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0%27 result=%27hardAlpha%27/%3e%3cfeOffset dy=%272%27/%3e%3cfeGaussianBlur stdDeviation=%272%27/%3e%3cfeColorMatrix values=%270 0 0 0 0.180392 0 0 0 0 0.14902 0 0 0 0 0.239216 0 0 0 0.16 0%27/%3e%3cfeBlend in2=%27BackgroundImageFix%27 result=%27effect1_dropShadow_6488_3264%27/%3e%3cfeBlend in=%27SourceGraphic%27 in2=%27effect1_dropShadow_6488_3264%27 result=%27shape%27/%3e%3c/filter%3e%3c/defs%3e%3c/svg%3e");
}

.form-control:focus ~ .form-label {
  border-color: #7367f0;
}
.form-control:focus ~ .form-label::after {
  border-color: inherit;
}

.switch-input:checked ~ .switch-toggle-slider {
  background: #7367f0;
  color: #fff;
  box-shadow: 0 2px 6px 0 rgba(115, 103, 240, 0.3);
}

.switch-primary.switch .switch-input:checked ~ .switch-toggle-slider {
  background: #7367f0;
  color: #fff;
  box-shadow: 0 2px 6px 0 rgba(115, 103, 240, 0.3);
}

.timeline .timeline-point-primary {
  background-color: #7367f0 !important;
  outline: 3px solid rgba(115, 103, 240, 0.12);
}
.timeline.timeline-outline .timeline-point-primary {
  border: 2px solid #7367f0 !important;
}

.timeline .timeline-indicator-primary {
  background-color: rgb(232.6, 230.68, 252.6);
}
.timeline .timeline-indicator-primary i {
  color: #7367f0 !important;
}

.divider.divider-primary.divider-vertical:before, .divider.divider-primary.divider-vertical:after,
.divider.divider-primary .divider-text:before,
.divider.divider-primary .divider-text:after {
  border-color: #7367f0;
}

.navbar.bg-primary {
  background-color: rgba(115, 103, 240, 0.88) !important;
  color: rgb(225.8373960792, 223.3377443146, 251.8754352942);
}
.navbar.bg-primary .navbar-brand,
.navbar.bg-primary .navbar-brand a {
  color: #fff;
}
.navbar.bg-primary .navbar-brand:hover, .navbar.bg-primary .navbar-brand:focus,
.navbar.bg-primary .navbar-brand a:hover,
.navbar.bg-primary .navbar-brand a:focus {
  color: #fff;
}
.navbar.bg-primary .navbar-search-wrapper .navbar-search-icon,
.navbar.bg-primary .navbar-search-wrapper .search-input {
  color: rgb(225.8373960792, 223.3377443146, 251.8754352942);
}
.navbar.bg-primary .search-input-wrapper .search-input,
.navbar.bg-primary .search-input-wrapper .search-toggler {
  background-color: #7367f0 !important;
  color: rgb(225.8373960792, 223.3377443146, 251.8754352942);
}
.navbar.bg-primary .navbar-nav > .nav-link,
.navbar.bg-primary .navbar-nav > .nav-item > .nav-link,
.navbar.bg-primary .navbar-nav > .nav > .nav-item > .nav-link {
  color: rgb(225.8373960792, 223.3377443146, 251.8754352942);
}
.navbar.bg-primary .navbar-nav > .nav-link:hover, .navbar.bg-primary .navbar-nav > .nav-link:focus,
.navbar.bg-primary .navbar-nav > .nav-item > .nav-link:hover,
.navbar.bg-primary .navbar-nav > .nav-item > .nav-link:focus,
.navbar.bg-primary .navbar-nav > .nav > .nav-item > .nav-link:hover,
.navbar.bg-primary .navbar-nav > .nav > .nav-item > .nav-link:focus {
  color: #fff;
}
.navbar.bg-primary .navbar-nav > .nav-link.disabled,
.navbar.bg-primary .navbar-nav > .nav-item > .nav-link.disabled,
.navbar.bg-primary .navbar-nav > .nav > .nav-item > .nav-link.disabled {
  color: rgb(181.5024376475, 175.2026465887, 247.1252611765) !important;
}
.navbar.bg-primary .navbar-nav .show > .nav-link,
.navbar.bg-primary .navbar-nav .active > .nav-link,
.navbar.bg-primary .navbar-nav .nav-link.show,
.navbar.bg-primary .navbar-nav .nav-link.active {
  color: #fff;
}
.navbar.bg-primary .navbar-toggler {
  color: rgb(225.8373960792, 223.3377443146, 251.8754352942);
  border-color: rgba(255, 255, 255, 0.15);
}
.navbar.bg-primary .navbar-toggler-icon {
  background-image: url("data:image/svg+xml,%3Csvg width=%2714px%27 height=%2711px%27 viewBox=%270 0 14 11%27 version=%271.1%27 xmlns=%27http://www.w3.org/2000/svg%27 xmlns:xlink=%27http://www.w3.org/1999/xlink%27%3E%3Cdefs%3E%3Cpath d=%27M0,0 L14,0 L14,1.75 L0,1.75 L0,0 Z M0,4.375 L14,4.375 L14,6.125 L0,6.125 L0,4.375 Z M0,8.75 L14,8.75 L14,10.5 L0,10.5 L0,8.75 Z%27 id=%27path-1%27%3E%3C/path%3E%3C/defs%3E%3Cg id=%27%F0%9F%92%8E-UI-Elements%27 stroke=%27none%27 stroke-width=%271%27 fill=%27none%27 fill-rule=%27evenodd%27%3E%3Cg id=%2712%29-Navbar%27 transform=%27translate%28-1174.000000, -1290.000000%29%27%3E%3Cg id=%27Group%27 transform=%27translate%281174.000000, 1288.000000%29%27%3E%3Cg id=%27Icon-Color%27 transform=%27translate%280.000000, 2.000000%29%27%3E%3Cuse fill=%27rgba%28255, 255, 255, 0.8%29%27 xlink:href=%27%23path-1%27%3E%3C/use%3E%3Cuse fill-opacity=%270.1%27 fill=%27rgba%28255, 255, 255, 0.8%29%27 xlink:href=%27%23path-1%27%3E%3C/use%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
}
.navbar.bg-primary .navbar-text {
  color: rgb(225.8373960792, 223.3377443146, 251.8754352942);
}
.navbar.bg-primary .navbar-text a {
  color: #fff;
}
.navbar.bg-primary .navbar-text a:hover, .navbar.bg-primary .navbar-text a:focus {
  color: #fff;
}
.navbar.bg-primary hr {
  border-color: rgba(255, 255, 255, 0.15);
}

.menu.bg-primary {
  background-color: #7367f0 !important;
  color: rgb(225.8373960792, 223.3377443146, 251.8754352942);
}
.menu.bg-primary.menu-horizontal {
  background-color: rgba(115, 103, 240, 0.95) !important;
}
.menu.bg-primary .menu-link,
.menu.bg-primary .menu-horizontal-prev,
.menu.bg-primary .menu-horizontal-next {
  color: rgb(225.8373960792, 223.3377443146, 251.8754352942);
}
.menu.bg-primary .menu-link:hover, .menu.bg-primary .menu-link:focus,
.menu.bg-primary .menu-horizontal-prev:hover,
.menu.bg-primary .menu-horizontal-prev:focus,
.menu.bg-primary .menu-horizontal-next:hover,
.menu.bg-primary .menu-horizontal-next:focus {
  color: #fff;
}
.menu.bg-primary .menu-link.active,
.menu.bg-primary .menu-horizontal-prev.active,
.menu.bg-primary .menu-horizontal-next.active {
  color: #fff;
}
.menu.bg-primary .menu-toggle::after {
  color: rgb(225.8373960792, 223.3377443146, 251.8754352942);
}
.menu.bg-primary .menu-item.disabled .menu-link,
.menu.bg-primary .menu-horizontal-prev.disabled,
.menu.bg-primary .menu-horizontal-next.disabled {
  color: rgb(181.5024376475, 175.2026465887, 247.1252611765) !important;
}
.menu.bg-primary .menu-item.open:not(.menu-item-closing) > .menu-toggle,
.menu.bg-primary .menu-item.active > .menu-link {
  color: #fff;
}
.menu.bg-primary.menu-vertical .menu-item.active > .menu-link:not(.menu-toggle) {
  background: linear-gradient(270deg, rgba(118.5, 106.8, 240.375, 0.7) 0%, rgb(118.5, 106.8, 240.375) 100%);
  box-shadow: 0px 2px 6px 0px rgba(118.5, 106.8, 240.375, 0.3);
  color: #fff !important;
}
.menu.bg-primary.menu-vertical .menu-item.active > .menu-link:not(.menu-toggle).menu-toggle::after {
  color: #fff !important;
}
.menu.bg-primary.menu-horizontal .menu-inner > .menu-item.active > .menu-link.menu-toggle {
  background: linear-gradient(270deg, rgba(118.5, 106.8, 240.375, 0.7) 0%, rgb(118.5, 106.8, 240.375) 100%);
  color: #fff !important;
  box-shadow: 0px 2px 6px 0px rgba(118.5, 106.8, 240.375, 0.3);
}
.menu.bg-primary.menu-horizontal .menu-inner > .menu-item.active > .menu-link.menu-toggle.menu-toggle::after {
  color: #fff !important;
}
.menu.bg-primary.menu-horizontal .menu-inner .menu-item:not(.menu-item-closing) > .menu-sub,
.menu.bg-primary.menu-horizontal .menu-inner .menu-item.open > .menu-toggle {
  background: #7367f0;
}
.menu.bg-primary.menu-horizontal .menu-item.active > .menu-link:not(.menu-toggle) {
  background: rgb(115.56, 103.608, 240.06);
  color: rgb(118.5, 106.8, 240.375) !important;
}
.menu.bg-primary .menu-inner > .menu-item.menu-item-closing .menu-item.open .menu-sub,
.menu.bg-primary .menu-inner > .menu-item.menu-item-closing .menu-item.open .menu-toggle {
  background: transparent;
  color: #fff;
}
.menu.bg-primary .menu-inner-shadow {
  background: linear-gradient(#7367f0 41%, rgba(115, 103, 240, 0.11) 95%, rgba(115, 103, 240, 0));
}
.menu.bg-primary .menu-text {
  color: #fff;
}
.menu.bg-primary .menu-header {
  color: rgb(159.3349584317, 151.1350977258, 244.7501741177);
}
.menu.bg-primary hr,
.menu.bg-primary .menu-divider,
.menu.bg-primary .menu-inner > .menu-item.open > .menu-sub::before {
  border-color: rgba(255, 255, 255, 0.15) !important;
}
.menu.bg-primary .menu-block::before {
  background-color: rgb(159.3349584317, 151.1350977258, 244.7501741177);
}
.menu.bg-primary .ps__thumb-y,
.menu.bg-primary .ps__rail-y.ps--clicking > .ps__thumb-y {
  background: rgba(255, 255, 255, 0.5916956863) !important;
}

.footer.bg-primary {
  color: rgb(225.8373960792, 223.3377443146, 251.8754352942);
}
.layout-footer-fixed .layout-horizontal .footer.bg-primary {
  background-color: #7367f0 !important;
}
.layout-footer-fixed .layout-wrapper:not(.layout-horizontal) .footer.bg-primary .footer-container {
  background-color: #7367f0 !important;
}
.footer.bg-primary .footer-link {
  color: rgb(225.8373960792, 223.3377443146, 251.8754352942);
}
.footer.bg-primary .footer-link:hover, .footer.bg-primary .footer-link:focus {
  color: #fff;
}
.footer.bg-primary .footer-link.disabled {
  color: rgb(181.5024376475, 175.2026465887, 247.1252611765) !important;
}
.footer.bg-primary .footer-text {
  color: #fff;
}
.footer.bg-primary .show > .footer-link,
.footer.bg-primary .active > .footer-link,
.footer.bg-primary .footer-link.show,
.footer.bg-primary .footer-link.active {
  color: #fff;
}
.footer.bg-primary hr {
  border-color: rgba(255, 255, 255, 0.15);
}

.form-floating > .form-control:focus ~ label,
.form-floating > .form-control:focus:not(:placeholder-shown) ~ label,
.form-floating > .form-select:focus ~ label,
.form-floating > .form-select:focus:not(:placeholder-shown) ~ label {
  color: #7367f0;
}

.svg-illustration svg {
  fill: #7367f0;
}

.jstree-default .jstree-wholerow-hovered,
.jstree-default .jstree-hovered {
  background: rgba(115, 103, 240, 0.16);
  color: #7367f0;
}
.jstree-default .jstree-wholerow-clicked,
.jstree-default .jstree-clicked {
  background: #7367f0;
  color: #fff;
}

.jstree-default-dark .jstree-wholerow-hovered,
.jstree-default-dark .jstree-hovered {
  background: rgba(115, 103, 240, 0.16);
  color: #7367f0;
}
.jstree-default-dark .jstree-wholerow-clicked,
.jstree-default-dark .jstree-clicked {
  background: #7367f0;
  color: #fff;
}

.card.card-border-shadow-primary::after {
  border-bottom-color: rgb(200.4, 195.72, 249.15);
}
.card.card-border-shadow-primary:hover::after {
  border-bottom-color: #7367f0;
}

.card.card-hover-border-primary:hover,
.card .card-hover-border-primary:hover {
  border-color: rgb(201.8, 197.24, 249.3);
}

html:not([dir=rtl]) .border-primary,
html[dir=rtl] .border-primary {
  border-color: #7367f0 !important;
}

a {
  color: #7367f0;
}
a:hover {
  color: rgb(129, 118.2, 241.5);
}

.fill-primary {
  fill: #7367f0;
}

.noUi-target:not([disabled]) {
  background: rgba(115, 103, 240, 0.16);
}
.noUi-target:not([disabled]) .noUi-connect {
  background: #7367f0;
}
.noUi-target:not([disabled]) .noUi-handle {
  border-color: #7367f0;
}
.noUi-target:not([disabled]) .noUi-handle:hover {
  box-shadow: 0 0 0 8px rgba(115, 103, 240, 0.16);
}
.noUi-target:not([disabled]) .noUi-handle:active, .noUi-target:not([disabled]) .noUi-handle:focus {
  box-shadow: 0 0 0 13px rgba(115, 103, 240, 0.16);
}

.select2-container--default .select2-results__option--highlighted[aria-selected] {
  background-color: #7367f0 !important;
  color: #fff !important;
}
.select2-container--default.select2-container--focus .select2-selection, .select2-container--default.select2-container--open .select2-selection {
  border-width: 2px;
  border-color: #7367f0 !important;
}

.select2-primary .select2-container--default .select2-selection--multiple .select2-selection__choice {
  background: rgba(115, 103, 240, 0.16) !important;
  color: #7367f0 !important;
}

.tagify--focus {
  border-color: #7367f0 !important;
}

.tagify__dropdown__item--active {
  background: #7367f0 !important;
}

table.dataTable.dtr-column > tbody > tr > td.control:before,
table.dataTable.dtr-column > tbody > tr > th.control:before {
  background-color: #7367f0;
  border: 2px solid #fff;
  box-shadow: 0 0 3px rgba(47, 43, 61, 0.8);
}

.bootstrap-select .dropdown-menu.inner a[aria-selected=true] {
  background: #7367f0 !important;
  color: #fff !important;
}
.bootstrap-select .dropdown-toggle.show {
  border-color: #7367f0;
}

.datepicker table tr td.active, .datepicker table tr td.active.highlighted,
.datepicker table tr td .focused,
.datepicker table tr td span.active,
.datepicker table tr td span.active.disabled, .datepicker table tr td.range-start, .datepicker table tr td.range-end {
  background: #7367f0 !important;
  color: #fff !important;
  box-shadow: 0 0.125rem 0.375rem 0 rgba(115, 103, 240, 0.3);
}
.datepicker table tr td.range, .datepicker table tr td.range.highlighted, .datepicker table tr td.range.today {
  color: #7367f0 !important;
  background: rgb(232.6, 230.68, 252.6) !important;
}
.datepicker table tr td.range.focused, .datepicker table tr td.range.highlighted.focused, .datepicker table tr td.range.today.focused {
  background: rgb(221.4, 218.52, 251.4) !important;
}
.datepicker table tr td.range.disabled, .datepicker table tr td.range.highlighted.disabled, .datepicker table tr td.range.today.disabled {
  background: rgba(232.6, 230.68, 252.6, 0.5) !important;
  color: rgba(115, 103, 240, 0.5) !important;
}
.datepicker table tr td.today:not(.active), .datepicker table tr td.today:not(.active):hover {
  color: #7367f0;
  background-color: rgb(232.6, 230.68, 252.6);
}

.flatpickr-day.today, .flatpickr-day.today:hover {
  color: #7367f0 !important;
  border-color: rgb(232.6, 230.68, 252.6);
  background-color: rgb(232.6, 230.68, 252.6) !important;
}
.flatpickr-day.inRange, .flatpickr-day.nextMonthDay.inRange, .flatpickr-day.prevMonthDay.inRange, .flatpickr-day.today.inRange, .flatpickr-day.prevMonthDay.today.inRange, .flatpickr-day.nextMonthDay.today.inRange {
  color: #7367f0 !important;
  background: rgb(232.6, 230.68, 252.6) !important;
  border-color: rgb(232.6, 230.68, 252.6) !important;
}
.flatpickr-day.selected, .flatpickr-day.selected.inRange, .flatpickr-day.selected:focus, .flatpickr-day.selected:hover, .flatpickr-day.selected.nextMonthDay, .flatpickr-day.selected.prevMonthDay, .flatpickr-day.startRange, .flatpickr-day.startRange.inRange, .flatpickr-day.startRange:focus, .flatpickr-day.startRange:hover, .flatpickr-day.startRange.nextMonthDay, .flatpickr-day.startRange.prevMonthDay, .flatpickr-day.endRange, .flatpickr-day.endRange.inRange, .flatpickr-day.endRange:focus, .flatpickr-day.endRange:hover, .flatpickr-day.endRange.nextMonthDay, .flatpickr-day.endRange.prevMonthDay, .flatpickr-day.week.selected {
  color: #fff !important;
  background: #7367f0 !important;
  border-color: #7367f0 !important;
  box-shadow: 0 0.125rem 0.375rem 0 rgba(115, 103, 240, 0.3);
}

.daterangepicker td.active:not(.off) {
  background: #7367f0 !important;
  color: #fff;
  box-shadow: 0 0.125rem 0.375rem 0 rgba(115, 103, 240, 0.3);
}

.daterangepicker .start-date:not(.end-date):not(.off),
.daterangepicker .end-date:not(.start-date):not(.off) {
  background-color: #7367f0;
  color: #fff;
  border: 0 !important;
}
.daterangepicker .start-date:not(.end-date):not(.off):hover,
.daterangepicker .end-date:not(.start-date):not(.off):hover {
  background-color: #7367f0 !important;
}

.daterangepicker .input-mini.active {
  border-color: #7367f0 !important;
}

.daterangepicker td.in-range:not(.start-date):not(.end-date):not(.off) {
  color: #7367f0 !important;
  background-color: rgb(232.6, 230.68, 252.6) !important;
}

.ranges li.active {
  color: #7367f0 !important;
  background-color: rgb(232.6, 230.68, 252.6) !important;
}

li.ui-timepicker-selected,
.ui-timepicker-list .ui-timepicker-selected:hover {
  color: #fff !important;
  background: #7367f0 !important;
}

.ql-snow.ql-toolbar button:hover,
.ql-snow.ql-toolbar button:focus,
.ql-snow.ql-toolbar button.ql-active,
.ql-snow.ql-toolbar .ql-picker-label:hover,
.ql-snow.ql-toolbar .ql-picker-label.ql-active,
.ql-snow.ql-toolbar .ql-picker-item:hover,
.ql-snow.ql-toolbar .ql-picker-item.ql-selected,
.ql-snow .ql-toolbar button:hover,
.ql-snow .ql-toolbar button:focus,
.ql-snow .ql-toolbar button.ql-active,
.ql-snow .ql-toolbar .ql-picker-label:hover,
.ql-snow .ql-toolbar .ql-picker-label.ql-active,
.ql-snow .ql-toolbar .ql-picker-item:hover,
.ql-snow .ql-toolbar .ql-picker-item.ql-selected {
  color: #7367f0 !important;
}
.ql-snow.ql-toolbar button:hover .ql-fill,
.ql-snow.ql-toolbar button:focus .ql-fill,
.ql-snow.ql-toolbar button.ql-active .ql-fill,
.ql-snow.ql-toolbar .ql-picker-label:hover .ql-fill,
.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-fill,
.ql-snow.ql-toolbar .ql-picker-item:hover .ql-fill,
.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-fill,
.ql-snow.ql-toolbar button:hover .ql-stroke.ql-fill,
.ql-snow.ql-toolbar button:focus .ql-stroke.ql-fill,
.ql-snow.ql-toolbar button.ql-active .ql-stroke.ql-fill,
.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke.ql-fill,
.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke.ql-fill,
.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke.ql-fill,
.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke.ql-fill,
.ql-snow .ql-toolbar button:hover .ql-fill,
.ql-snow .ql-toolbar button:focus .ql-fill,
.ql-snow .ql-toolbar button.ql-active .ql-fill,
.ql-snow .ql-toolbar .ql-picker-label:hover .ql-fill,
.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-fill,
.ql-snow .ql-toolbar .ql-picker-item:hover .ql-fill,
.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-fill,
.ql-snow .ql-toolbar button:hover .ql-stroke.ql-fill,
.ql-snow .ql-toolbar button:focus .ql-stroke.ql-fill,
.ql-snow .ql-toolbar button.ql-active .ql-stroke.ql-fill,
.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke.ql-fill,
.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke.ql-fill,
.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke.ql-fill,
.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke.ql-fill {
  fill: #7367f0 !important;
}
.ql-snow.ql-toolbar button:hover .ql-stroke,
.ql-snow.ql-toolbar button:focus .ql-stroke,
.ql-snow.ql-toolbar button.ql-active .ql-stroke,
.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke,
.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke,
.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke,
.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke,
.ql-snow.ql-toolbar button:hover .ql-stroke-miter,
.ql-snow.ql-toolbar button:focus .ql-stroke-miter,
.ql-snow.ql-toolbar button.ql-active .ql-stroke-miter,
.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke-miter,
.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke-miter,
.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke-miter,
.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke-miter,
.ql-snow .ql-toolbar button:hover .ql-stroke,
.ql-snow .ql-toolbar button:focus .ql-stroke,
.ql-snow .ql-toolbar button.ql-active .ql-stroke,
.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke,
.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke,
.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke,
.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke,
.ql-snow .ql-toolbar button:hover .ql-stroke-miter,
.ql-snow .ql-toolbar button:focus .ql-stroke-miter,
.ql-snow .ql-toolbar button.ql-active .ql-stroke-miter,
.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke-miter,
.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke-miter,
.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke-miter,
.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke-miter {
  stroke: #7367f0 !important;
}

.tt-suggestion:active,
.tt-cursor {
  background: #7367f0 !important;
  color: #fff !important;
}

.dropzone.dz-drag-hover {
  border-color: #7367f0 !important;
}

.swiper-pagination-bullet.swiper-pagination-bullet-active,
.swiper-pagination.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  background: #7367f0 !important;
}

.sk-primary.sk-plane,
.sk-primary .sk-chase-dot:before,
.sk-primary .sk-bounce-dot,
.sk-primary .sk-wave-rect,
.sk-primary.sk-pulse,
.sk-primary .sk-swing-dot,
.sk-primary .sk-circle-dot:before,
.sk-primary .sk-circle-fade-dot:before,
.sk-primary .sk-grid-cube,
.sk-primary .sk-fold-cube:before {
  background-color: #7367f0;
}

.plyr input[type=range]::-ms-fill-lower {
  background: #7367f0 !important;
}

.plyr input[type=range]:active::-webkit-slider-thumb {
  background: #7367f0 !important;
}
.plyr input[type=range]:active::-moz-range-thumb {
  background: #7367f0 !important;
}
.plyr input[type=range]:active::-ms-thumb {
  background: #7367f0 !important;
}

.plyr--video .plyr__control.plyr__control--overlaid,
.plyr--video .plyr__controls button.tab-focus:focus,
.plyr--video .plyr__control[aria-expanded=true],
.plyr--video .plyr__controls button:hover {
  background: #7367f0 !important;
  color: #fff !important;
}

.plyr--audio .plyr__controls button.tab-focus:focus,
.plyr--audio .plyr__control[aria-expanded=true],
.plyr--audio .plyr__controls button:hover {
  background: #7367f0 !important;
  color: #fff !important;
}

.plyr__play-large {
  background: #7367f0 !important;
  color: #fff !important;
}

.plyr__progress--played,
.plyr__volume--display {
  color: #7367f0 !important;
}

.plyr--full-ui input[type=range] {
  color: #7367f0 !important;
}

.plyr__menu__container .plyr__control[role=menuitemradio][aria-checked=true]::before {
  background: #7367f0 !important;
}

.fc .fc-event-primary:not(.fc-list-event) {
  background-color: rgb(232.6, 230.68, 252.6) !important;
  color: #7367f0 !important;
}
.fc .fc-event-primary.fc-list-event .fc-list-event-dot {
  border-color: #7367f0 !important;
}
.fc .fc-button-primary:not(.fc-prev-button):not(.fc-next-button) {
  background-color: rgba(115, 103, 240, 0.16) !important;
  border: 0;
  color: #7367f0;
}
.fc .fc-button-primary:not(.fc-prev-button):not(.fc-next-button).fc-button-active, .fc .fc-button-primary:not(.fc-prev-button):not(.fc-next-button):hover {
  background-color: rgba(115, 103, 240, 0.24) !important;
  color: #7367f0;
}

.swal2-progress-steps[class] .swal2-progress-step.swal2-active-progress-step,
.swal2-progress-steps[class] .swal2-progress-step-line,
.swal2-progress-steps[class] .swal2-active-progress-step,
.swal2-progress-steps[class] .swal2-progress-step {
  background: #7367f0;
  color: #fff;
}

.swal2-progress-steps[class] .swal2-progress-step.swal2-active-progress-step ~ .swal2-progress-step,
.swal2-progress-steps[class] .swal2-progress-step.swal2-active-progress-step ~ .swal2-progress-step-line {
  background: rgb(234, 232.2, 252.75);
}

.pcr-app .pcr-type.active,
.pcr-app .pcr-save {
  background: #7367f0 !important;
}

.icon-card.active {
  outline: 1px solid #7367f0;
}
.icon-card.active i,
.icon-card.active svg {
  color: #7367f0;
}

.shepherd-element .shepherd-button:not(:disabled).btn-primary {
  color: #fff;
  background-color: #7367f0;
  border-color: #7367f0;
}
.shepherd-element .shepherd-button:not(:disabled).btn-primary.btn[class*=btn-]:not([class*=btn-label-]):not([class*=btn-outline-]):not([class*=btn-text-]):not(.btn-icon):not(:disabled):not(.disabled) {
  box-shadow: 0 0.125rem 0.375rem 0 rgba(115, 103, 240, 0.3);
}
.shepherd-element .shepherd-button:not(:disabled).btn-primary:hover {
  color: #fff !important;
  background-color: rgb(103.5, 92.7, 216) !important;
  border-color: rgb(103.5, 92.7, 216) !important;
}
.btn-check:focus + .shepherd-element .shepherd-button:not(:disabled).btn-primary, .shepherd-element .shepherd-button:not(:disabled).btn-primary:focus, .shepherd-element .shepherd-button:not(:disabled).btn-primary.focus {
  color: #fff;
  background-color: rgb(103.5, 92.7, 216);
  border-color: rgb(103.5, 92.7, 216);
}
.btn-check:checked + .shepherd-element .shepherd-button:not(:disabled).btn-primary, .btn-check:active + .shepherd-element .shepherd-button:not(:disabled).btn-primary, .shepherd-element .shepherd-button:not(:disabled).btn-primary:active, .shepherd-element .shepherd-button:not(:disabled).btn-primary.active, .shepherd-element .shepherd-button:not(:disabled).btn-primary.show.dropdown-toggle, .show > .shepherd-element .shepherd-button:not(:disabled).btn-primary.dropdown-toggle {
  color: #fff !important;
  background-color: rgb(103.5, 92.7, 216) !important;
  border-color: rgb(103.5, 92.7, 216) !important;
}
.shepherd-element .shepherd-button:not(:disabled).btn-primary.disabled, .shepherd-element .shepherd-button:not(:disabled).btn-primary:disabled {
  color: #fff !important;
  background-color: #7367f0 !important;
  border-color: #7367f0 !important;
}
.shepherd-element .btn-group .shepherd-button:not(:disabled).btn-primary,
.shepherd-element .input-group .shepherd-button:not(:disabled).btn-primary {
  border-right: var(--bs-border-width) solid rgb(103.5, 92.7, 216);
  border-left: var(--bs-border-width) solid rgb(103.5, 92.7, 216);
}
.shepherd-element .btn-group-vertical .shepherd-button:not(:disabled).btn-primary {
  border-top-color: rgb(103.5, 92.7, 216);
  border-bottom-color: rgb(103.5, 92.7, 216);
}
.shepherd-element .shepherd-button:not(:disabled).btn-label-secondary {
  color: #808390 !important;
  border-color: transparent !important;
  background: rgb(234.68, 235.16, 237.24) !important;
}
.shepherd-element .shepherd-button:not(:disabled).btn-label-secondary.waves-effect .waves-ripple {
  background: radial-gradient(rgba(128, 131, 144, 0.2) 0, rgba(128, 131, 144, 0.3) 40%, rgba(128, 131, 144, 0.4) 50%, rgba(128, 131, 144, 0.5) 60%, rgba(255, 255, 255, 0) 70%);
}
.shepherd-element .shepherd-button:not(:disabled).btn-label-secondary:hover {
  border-color: transparent !important;
  background: rgb(224.52, 225.24, 228.36) !important;
  color: #808390 !important;
}
.shepherd-element .shepherd-button:not(:disabled).btn-label-secondary:focus, .shepherd-element .shepherd-button:not(:disabled).btn-label-secondary.focus {
  color: #808390;
  background: rgb(224.52, 225.24, 228.36);
}
.shepherd-element .shepherd-button:not(:disabled).btn-label-secondary:active, .shepherd-element .shepherd-button:not(:disabled).btn-label-secondary.active, .shepherd-element .shepherd-button:not(:disabled).btn-label-secondary.show.dropdown-toggle, .show > .shepherd-element .shepherd-button:not(:disabled).btn-label-secondary.dropdown-toggle {
  color: #808390 !important;
  background-color: rgb(224.52, 225.24, 228.36) !important;
  border-color: transparent !important;
}
.shepherd-element .shepherd-button:not(:disabled).btn-label-secondary.disabled, .shepherd-element .shepherd-button:not(:disabled).btn-label-secondary:disabled {
  color: #808390 !important;
  border-color: transparent !important;
  background: rgb(234.68, 235.16, 237.24) !important;
}
.shepherd-element .btn-group .shepherd-button:not(:disabled).btn-label-secondary,
.shepherd-element .input-group .shepherd-button:not(:disabled).btn-label-secondary {
  border-right: var(--bs-border-width) solid rgb(214.36, 215.32, 219.48) !important;
  border-left: var(--bs-border-width) solid rgb(214.36, 215.32, 219.48) !important;
}
.shepherd-element .btn-group-vertical .shepherd-button:not(:disabled).btn-label-secondary {
  border-top: var(--bs-border-width) solid rgb(214.36, 215.32, 219.48) !important;
  border-bottom: var(--bs-border-width) solid rgb(214.36, 215.32, 219.48) !important;
}

.bs-stepper .step.active .bs-stepper-circle {
  background-color: #7367f0;
  color: #fff;
  box-shadow: 0 0.125rem 0.375rem 0 rgba(115, 103, 240, 0.3);
}
.bs-stepper .step.active .bs-stepper-icon svg {
  fill: #7367f0 !important;
}
.bs-stepper .step.active .bs-stepper-icon i,
.bs-stepper .step.active .bs-stepper-label {
  color: #7367f0 !important;
}
.bs-stepper .step.crossed .step-trigger .bs-stepper-circle {
  background-color: rgb(232.6, 230.68, 252.6) !important;
  color: #7367f0 !important;
}
.bs-stepper .step.crossed .step-trigger .bs-stepper-icon svg {
  fill: #7367f0 !important;
}
.bs-stepper .step.crossed .step-trigger .bs-stepper-icon i {
  color: #7367f0 !important;
}
.bs-stepper.wizard-icons .step.crossed .bs-stepper-label {
  color: #7367f0 !important;
}
.bs-stepper.wizard-icons .step.crossed + .line i {
  color: #7367f0;
}

.app-chat .sidebar-body .chat-contact-list li.active {
  background: #7367f0;
}
.app-chat .app-chat-history .chat-history .chat-message.chat-message-right .chat-message-text {
  background-color: #7367f0 !important;
}

.navbar.landing-navbar .navbar-nav .show > .nav-link,
.navbar.landing-navbar .navbar-nav .active > .nav-link,
.navbar.landing-navbar .navbar-nav .nav-link.show,
.navbar.landing-navbar .navbar-nav .nav-link.active,
.navbar.landing-navbar .navbar-nav .nav-link:hover {
  color: #7367f0 !important;
}
.navbar.landing-navbar .navbar-nav .show > .nav-link i,
.navbar.landing-navbar .navbar-nav .active > .nav-link i,
.navbar.landing-navbar .navbar-nav .nav-link.show i,
.navbar.landing-navbar .navbar-nav .nav-link.active i,
.navbar.landing-navbar .navbar-nav .nav-link:hover i {
  color: #7367f0 !important;
}

.landing-features .features-icon-wrapper .features-icon-box .features-icon {
  border: 2px solid rgba(115, 103, 240, 0.2);
}
.landing-features .features-icon-wrapper .features-icon-box:hover .features-icon {
  background-color: rgba(115, 103, 240, 0.05);
}

.bg-navbar-theme {
  background-color: rgba(255, 255, 255, 0.88) !important;
  color: rgb(67.8, 64.2, 80.4);
}
.bg-navbar-theme .navbar-brand,
.bg-navbar-theme .navbar-brand a {
  color: rgb(67.8, 64.2, 80.4);
}
.bg-navbar-theme .navbar-brand:hover, .bg-navbar-theme .navbar-brand:focus,
.bg-navbar-theme .navbar-brand a:hover,
.bg-navbar-theme .navbar-brand a:focus {
  color: rgb(67.8, 64.2, 80.4);
}
.bg-navbar-theme .navbar-search-wrapper .navbar-search-icon,
.bg-navbar-theme .navbar-search-wrapper .search-input {
  color: rgb(67.8, 64.2, 80.4);
}
.bg-navbar-theme .search-input-wrapper .search-input,
.bg-navbar-theme .search-input-wrapper .search-toggler {
  background-color: #fff !important;
  color: rgb(67.8, 64.2, 80.4);
}
.bg-navbar-theme .navbar-nav > .nav-link,
.bg-navbar-theme .navbar-nav > .nav-item > .nav-link,
.bg-navbar-theme .navbar-nav > .nav > .nav-item > .nav-link {
  color: rgb(67.8, 64.2, 80.4);
}
.bg-navbar-theme .navbar-nav > .nav-link:hover, .bg-navbar-theme .navbar-nav > .nav-link:focus,
.bg-navbar-theme .navbar-nav > .nav-item > .nav-link:hover,
.bg-navbar-theme .navbar-nav > .nav-item > .nav-link:focus,
.bg-navbar-theme .navbar-nav > .nav > .nav-item > .nav-link:hover,
.bg-navbar-theme .navbar-nav > .nav > .nav-item > .nav-link:focus {
  color: rgb(67.8, 64.2, 80.4);
}
.bg-navbar-theme .navbar-nav > .nav-link.disabled,
.bg-navbar-theme .navbar-nav > .nav-item > .nav-link.disabled,
.bg-navbar-theme .navbar-nav > .nav > .nav-item > .nav-link.disabled {
  color: rgb(142.68, 140.52, 150.24) !important;
}
.bg-navbar-theme .navbar-nav .show > .nav-link,
.bg-navbar-theme .navbar-nav .active > .nav-link,
.bg-navbar-theme .navbar-nav .nav-link.show,
.bg-navbar-theme .navbar-nav .nav-link.active {
  color: rgb(67.8, 64.2, 80.4);
}
.bg-navbar-theme .navbar-toggler {
  color: rgb(67.8, 64.2, 80.4);
  border-color: rgba(67.8, 64.2, 80.4, 0.075);
}
.bg-navbar-theme .navbar-toggler-icon {
  background-image: url("data:image/svg+xml,%3Csvg width=%2714px%27 height=%2711px%27 viewBox=%270 0 14 11%27 version=%271.1%27 xmlns=%27http://www.w3.org/2000/svg%27 xmlns:xlink=%27http://www.w3.org/1999/xlink%27%3E%3Cdefs%3E%3Cpath d=%27M0,0 L14,0 L14,1.75 L0,1.75 L0,0 Z M0,4.375 L14,4.375 L14,6.125 L0,6.125 L0,4.375 Z M0,8.75 L14,8.75 L14,10.5 L0,10.5 L0,8.75 Z%27 id=%27path-1%27%3E%3C/path%3E%3C/defs%3E%3Cg id=%27%F0%9F%92%8E-UI-Elements%27 stroke=%27none%27 stroke-width=%271%27 fill=%27none%27 fill-rule=%27evenodd%27%3E%3Cg id=%2712%29-Navbar%27 transform=%27translate%28-1174.000000, -1290.000000%29%27%3E%3Cg id=%27Group%27 transform=%27translate%281174.000000, 1288.000000%29%27%3E%3Cg id=%27Icon-Color%27 transform=%27translate%280.000000, 2.000000%29%27%3E%3Cuse fill=%27rgba%2847, 43, 61, 0.5%29%27 xlink:href=%27%23path-1%27%3E%3C/use%3E%3Cuse fill-opacity=%270.1%27 fill=%27rgba%2847, 43, 61, 0.5%29%27 xlink:href=%27%23path-1%27%3E%3C/use%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
}
.bg-navbar-theme .navbar-text {
  color: rgb(67.8, 64.2, 80.4);
}
.bg-navbar-theme .navbar-text a {
  color: rgb(67.8, 64.2, 80.4);
}
.bg-navbar-theme .navbar-text a:hover, .bg-navbar-theme .navbar-text a:focus {
  color: rgb(67.8, 64.2, 80.4);
}
.bg-navbar-theme hr {
  border-color: rgba(67.8, 64.2, 80.4, 0.075);
}

.layout-navbar {
  box-shadow: 0 0 10px rgb(230.04, 229.56, 231.72);
  backdrop-filter: saturate(200%) blur(6px);
}

.menu-horizontal {
  backdrop-filter: saturate(200%) blur(6px);
}

.layout-horizontal .layout-navbar {
  box-shadow: 0 1px 0 rgb(230.04, 229.56, 231.72);
}

.navbar-detached {
  box-shadow: 0 0.125rem 0.5rem 0 rgba(47, 43, 61, 0.12);
}

.layout-navbar-fixed .layout-page:before {
  backdrop-filter: saturate(200%) blur(10px);
  background: linear-gradient(180deg, rgba(248, 247, 250, 0.7) 44%, rgba(248, 247, 250, 0.43) 73%, rgba(248, 247, 250, 0));
  -webkit-mask: linear-gradient(#f8f7fa, #f8f7fa 18%, transparent 100%);
  mask: linear-gradient(#f8f7fa, #f8f7fa 18%, transparent 100%);
}

.bg-menu-theme {
  background-color: #fff !important;
  color: rgb(67.8, 64.2, 80.4);
}
.bg-menu-theme.menu-horizontal {
  background-color: rgba(255, 255, 255, 0.95) !important;
}
.bg-menu-theme .menu-link,
.bg-menu-theme .menu-horizontal-prev,
.bg-menu-theme .menu-horizontal-next {
  color: rgb(67.8, 64.2, 80.4);
}
.bg-menu-theme .menu-link:hover, .bg-menu-theme .menu-link:focus,
.bg-menu-theme .menu-horizontal-prev:hover,
.bg-menu-theme .menu-horizontal-prev:focus,
.bg-menu-theme .menu-horizontal-next:hover,
.bg-menu-theme .menu-horizontal-next:focus {
  color: rgb(67.8, 64.2, 80.4);
}
.bg-menu-theme .menu-link.active,
.bg-menu-theme .menu-horizontal-prev.active,
.bg-menu-theme .menu-horizontal-next.active {
  color: rgb(67.8, 64.2, 80.4);
}
.bg-menu-theme .menu-toggle::after {
  color: rgb(67.8, 64.2, 80.4);
}
.bg-menu-theme .menu-item.disabled .menu-link,
.bg-menu-theme .menu-horizontal-prev.disabled,
.bg-menu-theme .menu-horizontal-next.disabled {
  color: rgb(142.68, 140.52, 150.24) !important;
}
.bg-menu-theme .menu-item.open:not(.menu-item-closing) > .menu-toggle,
.bg-menu-theme .menu-item.active > .menu-link {
  color: rgb(67.8, 64.2, 80.4);
}
.bg-menu-theme.menu-vertical .menu-item.active > .menu-link:not(.menu-toggle) {
  background: linear-gradient(270deg, rgba(115, 103, 240, 0.7) 0%, #7367f0 100%);
  box-shadow: 0px 2px 6px 0px rgba(115, 103, 240, 0.3);
  color: #fff !important;
}
.bg-menu-theme.menu-vertical .menu-item.active > .menu-link:not(.menu-toggle).menu-toggle::after {
  color: #fff !important;
}
.bg-menu-theme.menu-horizontal .menu-inner > .menu-item.active > .menu-link.menu-toggle {
  background: linear-gradient(270deg, rgba(115, 103, 240, 0.7) 0%, #7367f0 100%);
  color: #fff !important;
  box-shadow: 0px 2px 6px 0px rgba(115, 103, 240, 0.3);
}
.bg-menu-theme.menu-horizontal .menu-inner > .menu-item.active > .menu-link.menu-toggle.menu-toggle::after {
  color: #fff !important;
}
.bg-menu-theme.menu-horizontal .menu-inner .menu-item:not(.menu-item-closing) > .menu-sub,
.bg-menu-theme.menu-horizontal .menu-inner .menu-item.open > .menu-toggle {
  background: #fff;
}
.bg-menu-theme.menu-horizontal .menu-item.active > .menu-link:not(.menu-toggle) {
  background: rgb(232.6, 230.68, 252.6);
  color: #7367f0 !important;
}
.bg-menu-theme .menu-inner > .menu-item.menu-item-closing .menu-item.open .menu-sub,
.bg-menu-theme .menu-inner > .menu-item.menu-item-closing .menu-item.open .menu-toggle {
  background: transparent;
  color: #fff;
}
.bg-menu-theme .menu-inner-shadow {
  background: linear-gradient(#fff 41%, rgba(255, 255, 255, 0.11) 95%, rgba(255, 255, 255, 0));
}
.bg-menu-theme .menu-text {
  color: rgb(67.8, 64.2, 80.4);
}
.bg-menu-theme .menu-header {
  color: rgb(180.12, 178.68, 185.16);
}
.bg-menu-theme hr,
.bg-menu-theme .menu-divider,
.bg-menu-theme .menu-inner > .menu-item.open > .menu-sub::before {
  border-color: transparent !important;
}
.bg-menu-theme .menu-block::before {
  background-color: rgb(180.12, 178.68, 185.16);
}
.bg-menu-theme .ps__thumb-y,
.bg-menu-theme .ps__rail-y.ps--clicking > .ps__thumb-y {
  background: rgba(67.8, 64.2, 80.4, 0.2) !important;
}

@media (min-width: 1200px) {
  .bg-menu-theme {
    box-shadow: 0 0.125rem 0.5rem 0 rgba(47, 43, 61, 0.12);
  }
}
.bg-menu-theme .menu-inner .menu-item.open > .menu-link.menu-toggle, .layout-menu-hover.layout-menu-collapsed .bg-menu-theme .menu-inner .menu-item.open > .menu-link.menu-toggle, .bg-menu-theme .menu-inner .menu-item.active > .menu-link.menu-toggle, .layout-menu-hover.layout-menu-collapsed .bg-menu-theme .menu-inner .menu-item.active > .menu-link.menu-toggle {
  background: rgba(47, 43, 61, 0.08);
}
html:not(.layout-menu-collapsed) .bg-menu-theme .menu-inner .menu-item:not(.active) > .menu-link:hover, .layout-menu-hover.layout-menu-collapsed .bg-menu-theme .menu-inner .menu-item:not(.active) > .menu-link:hover {
  background: rgba(47, 43, 61, 0.06);
}
.bg-menu-theme .menu-inner .menu-sub .menu-item:not(.active) > .menu-link::before {
  color: rgb(109.4, 106.6, 119.2) !important;
}

.bg-footer-theme {
  color: #7367f0;
}
.layout-footer-fixed .layout-horizontal .bg-footer-theme {
  background-color: #fff !important;
}
.layout-footer-fixed .layout-wrapper:not(.layout-horizontal) .bg-footer-theme .footer-container {
  background-color: #fff !important;
}
.bg-footer-theme .footer-link {
  color: #7367f0;
}
.bg-footer-theme .footer-link:hover, .bg-footer-theme .footer-link:focus {
  color: #7367f0;
}
.bg-footer-theme .footer-link.disabled {
  color: rgb(171, 163.8, 246) !important;
}
.bg-footer-theme .footer-text {
  color: #7367f0;
}
.bg-footer-theme .show > .footer-link,
.bg-footer-theme .active > .footer-link,
.bg-footer-theme .footer-link.show,
.bg-footer-theme .footer-link.active {
  color: #7367f0;
}
.bg-footer-theme hr {
  border-color: rgba(115, 103, 240, 0.075);
}

.layout-footer-fixed .layout-wrapper:not(.layout-horizontal) .content-footer .footer-container,
.layout-footer-fixed .layout-wrapper.layout-horizontal .content-footer {
  box-shadow: 0 0.1875rem 0.75rem 0 rgba(47, 43, 61, 0.14);
}

/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGhlbWUtZGVmYXVsdC5jc3MiLCJtYXBwaW5ncyI6Ijs7O0FBQUEsZ0JBQWdCO0FDQWhCOztDQUFBO0FDS0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUZBRjs7QUVLRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUZGSjtBRUtJO0VBQ0U7QUZITjtBRVNJO0VBQ0U7QUZQTjtBRVdJO0VBRUksa0JDS3lCO0FIZmpDO0FFZU07RUFDRTtBRmJSO0FFb0JJO0VBQ0U7QUZsQk47QUUyQkk7RUFDRSx1QkUwSFU7QUpuSmhCO0FFNkJJO0VBQ0UsdUJFcUhVO0FKaEpoQjtBS3VCSTtFSFlJO0lBQ0U7RUZoQ1I7RUVpQ1E7SUFDRTtFRi9CVjtFRWlDUTtJQUNFO0VGL0JWO0FBQ0Y7QUVvQ007RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUZsQ1I7O0FBbERBO0VBQ0UsbUJBSFE7QUF3RFY7O0FBbERBO0VBQ0U7QUFxREY7O0FNZ0ZFO0VBQ0U7QU43RUo7O0FNa0ZJOztFQUNFO0FOOUVOOztBTUlFO0VBQ0U7QU5ESjs7QU1LSTtFQUVFO0FOSE47O0FNU0k7RUFDRSx5Qk54RlU7QUFrRmhCOztBTTZCRTtFQUNFO0VBQ0E7QU4xQko7O0FNcUNFO0VBQ0U7RUFDQTtBTmxDSjtBTW1DSTtFQUNFO0VBQ0E7QU5qQ047O0FNdUNFO0VBQ0U7QU5wQ0o7O0FNRkk7RUFDRTtBTktOOztBT2xHSTs7O0VBRUUsMkNBVGU7RUFVZixjUFRVO0FBK0doQjs7QU9uR1k7O0VBRVI7QVBzR0o7QU9yR0k7Ozs7RUFHRSxxQlBsQlU7RU9tQlYseUJQbkJVO0VPb0JWO0FQd0dOOztBT2xHTTs7RUFDRTtBUHNHUjs7QU90Rkk7Ozs7RUFHRTtFQUNBO0VBQ0E7QVAwRk47QU92Rk07O0VBQ0U7QVAwRlI7O0FRaEpFO0VBQ0UseUJSQ1k7RVFBWjtBUm1KSjs7QVEvSUU7RUFDRTtBUmtKSjs7QVN2Sk07RUFDRSx5QlREUTtBQTJKaEI7O0FTdEpFOztFQUVFLGNUUFk7QUFnS2hCO0FTeEpJOzs7RUFFRSxjVFZVO0FBcUtoQjs7QVU5SUU7RUFDRSxxQkFaYTtFQWFiLDJDQWxCaUI7RUFtQmpCO0FWaUpKOztBVTlJRTs7RUFFRSxjQVZNO0FWMkpWO0FVaEpJOzs7RUFFRSxxQkF0Qlc7RUF1QlgsaURBYmU7RUFjZixjQWZJO0FWa0tWO0FVaEpJOztFQUNFO0VBQ0E7RUFFQTtBVmtKTjs7QVUxSUU7RUFDRTtFQUNBLGNWckRZO0FBa01oQjtBVTNJTTtFQUNFO0FWNklSOztBVTdIUTtFQUNFLHFCVnpFTTtFVTBFTix5QlYxRU07QUEwTWhCOztBVzVMRTtFQ2hCQSwyQ0RVYTtFQVFYLHVDQWRPO0VBZVAsY1hqQlk7QUFnTmhCO0FXOUxJO0VBQ0U7QVhnTU47QVc3TEk7RUFDRSxjWHZCVTtBQXNOaEI7O0FXMUxJO0VBQ0U7QVg2TE47QVczTEk7RUFDRSx5QlhoQ1U7QUE2TmhCOztBV3BKRTtFQUNFLHFCWDFFWTtFVzJFWixjWDNFWTtBQWtPaEI7QVd0Skk7RUFDRTtBWHdKTjtBV3JKSTtFQUNFLGNYakZVO0FBd09oQjs7QVdsSkk7RUFDRTtBWHFKTjtBV25KSTtFQUNFO0VBQ0E7QVhxSk47O0FXdk1FO0VDM0NBLHlCWkVjO0VXMkNaLFdBSk07QVg4TVY7QVd4TUk7RUFDRTtBWDBNTjtBV3ZNSTtFQUNFLFdBWEk7QVhvTlY7O0FXcE1JO0VBQ0U7QVh1TU47QVdyTUk7RUFDRTtBWHVNTjs7QWFuUUk7RUFDRTtFQUNBO0Fic1FOO0FhbFFNO0VBQ0UseUJiTlE7QUEwUWhCO0FhalFNO0VBQ0UsMEJiVlE7QUE2UWhCO0FhN1BNO0VBQ0UsNEJiakJRO0FBZ1JoQjtBYTVQTTtFQUNFLDJCYnJCUTtBQW1SaEI7O0FjblJFO0VBQ0U7RUFDQSxtQmRGWTtBQXdSaEI7QWNwUkk7RUFDRSxxQmRMVTtFY01WO0VBQ0EsV0FUSTtBZCtSVjtBY25SSTtFQUNFO0VBQ0E7QWRxUk47QWNsUkk7RUFDRTtBZG9STjtBY2pSTTtFQUNFO0FkbVJSO0FjaFJNO0VBQ0U7QWRrUlI7QWM1UU07RUFDRTtBZDhRUjtBYzNRTTtFQUNFO0FkNlFSO0FjdlFNO0VBQ0U7QWR5UVI7O0FlclRFO0VBTUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQSxjQWJRO0VBY1I7QWZrVEo7QWVqVEk7O0VBRUUsY0FqQk07QWZvVVo7O0FnQmhTRTtFQUNFLFdBMUJNO0VKWlIseUJaRWM7RWdCc0NaLHFCaEJ0Q1k7QUF5VWhCO0FnQmxTSTtFQUdFO0FoQmtTTjtBZ0JoU0k7RUFDRTtFSi9DSixrRElnRHlCO0VBQ3JCO0FoQmtTTjtBZ0IvUkk7RUFHRSxXQWhDVTtFSnZCZCx1Q0lhbUI7RUE0Q2YsbUNBdkNXO0FoQnNVakI7QWdCNVJJO0VBTUU7RUFDQTtFQUdBO0FoQnVSTjtBZ0JwUkk7RUFFRTtFQUNBO0VBR0E7QWhCbVJOOztBZ0I5UUU7O0VBRUU7RUFDQTtBaEJpUko7O0FnQi9RRTtFQUNFLHVDQWpFa0I7RUFrRWxCLDBDQWxFa0I7QWhCb1Z0Qjs7QWdCeEpFO0VBQ0U7RUFDQTtFQUNBO0FoQjJKSjtBZ0J4Sk07RUFDRTtBaEIwSlI7QWdCaEpJO0VBQ0U7RUFDQTtFQUNBO0FoQmtKTjtBZ0IvSUk7RUFFRSxjaEI1T1U7RWdCNk9WLHFDQS9DZTtBaEIrTHJCO0FnQjdJSTtFQUlFO0VBQ0E7RUFHQTtBaEIwSU47QWdCdklJO0VBRUU7RUFDQTtFQUNBO0FoQndJTjs7QWdCbklFOztFQUVFO0VBQ0E7QWhCc0lKOztBZ0JwSUU7RUFDRTtFQUNBO0FoQnVJSjs7QWdCN1JFO0VBQ0UsY0F2Qlk7QWhCdVRoQjtBZ0I5Uk07RUFDRTtBaEJnU1I7QWdCdFJJO0VBQ0UseUJBdENLO0VBdUNMLHFDQW5DZTtFQW9DZixjaEJ0SVU7QUE4WmhCO0FnQnJSSTtFQUVFLGNoQjNJVTtFZ0I0SVYscUNBcENlO0FoQjBUckI7QWdCblJJO0VBSUU7RUFDQTtFQUdBO0FoQmdSTjtBZ0I5UUk7RUFFRSxjQTVEVTtBaEIyVWhCOztBZ0IxUUU7O0VBRUU7RUFDQTtBaEI2UUo7O0FnQjNRRTtFQUNFO0VBQ0E7QWhCOFFKOztBZ0IvSUU7RUFDRSxjaEJ2U1k7RWdCd1NaLHFCaEJ4U1k7RWdCeVNaO0FoQmtKSjtBZ0JoSk07RUFDRTtBaEJrSlI7QWdCeElJO0VBQ0U7RUFDQTtFQUNBO0FoQjBJTjtBZ0J2SUk7RUFFRSxjaEI5VFU7RWdCK1RWLDJDQXhDZTtFQXlDZixxQmhCaFVVO0FBd2NoQjtBZ0JySUk7RUFLRTtFQUNBO0VBQ0E7QWhCbUlOO0FnQmhJSTtFQUVFO0FoQmlJTjs7QWdCN0hFO0VBQ0UsbUJoQnBWWTtFZ0JxVloscUJoQnJWWTtFZ0JzVlo7QWhCZ0lKOztBZ0I3SEU7Ozs7O0VBS0UsbUJoQjlWWTtFZ0IrVloscUJoQi9WWTtBQStkaEI7O0FpQi9kTTtFQUNFO0FqQmtlUjtBaUJ6ZEk7RUFFRSwyQ0NvQjZCO0VEbkI3QjtBakIwZE47O0FpQnRkWTs7RUFFUiwyQ0NhK0I7RURaL0I7QWpCeWRKOztBbUJwZUU7RUFDRTtBbkJ1ZUo7QW1CdGVJO0VBR0UseUJuQmRVO0VtQmVWO0FuQnNlTjs7QW1CL2RRO0VBQ0U7QW5Ca2VWOztBbUJwZEk7Ozs7RUFHRTtBbkJ3ZE47O0FtQmxkSTs7OztFQUdFO0FuQnNkTjs7QW1CaGRJOzs7O0VBR0U7QW5Cb2ROOztBbUI5Y0k7Ozs7RUFHRTtBbkJrZE47O0FvQnRoQkU7O0VBRUU7QXBCeWhCSjs7QW9CbmhCTTs7RUFFRTtBcEJzaEJSOztBb0JuZEk7RUFDRSx5QnBCN0VVO0VvQjhFVixxQnBCOUVVO0VvQitFVjtBcEJzZE47QW9CbmRJO0VBQ0UseUJwQm5GVTtFb0JvRlYscUJwQnBGVTtFb0JxRlY7QXBCcWROOztBb0IvY0k7RUFDRTtFQUNBO0FwQmtkTjtBb0IvY1E7O0VBQ0UsY3BCakdNO0FBbWpCaEI7QW9CN2NNO0VBQ0U7RUFDQSxjcEJ4R1E7QUF1akJoQjtBb0I5Y1E7O0VBRUUsY3BCM0dNO0FBMmpCaEI7O0FvQmhoQk07RUFDRTtBcEJtaEJSO0FvQmhoQk07RUFJSTtBcEIrZ0JWOztBb0J0Z0JFO0VBQ0UscUJwQjdEWTtBQXNrQmhCO0FvQnZnQkk7RUFDRTtBcEJ5Z0JOOztBcUJyY2M7RUFDVixtQnJCcklZO0VxQnNJWixXQUpNO0VBS047QXJCd2NKOztBcUIzY0U7RUFDRSxtQnJCcklZO0VxQnNJWixXQUpNO0VBS047QXJCOGNKOztBc0JybEJJO0VBQ0U7RUFDQTtBdEJ3bEJOO0FzQm5sQk07RUFDRTtBdEJxbEJSOztBc0Ixa0JJO0VBQ0UsMkNBSlM7QXRCaWxCZjtBc0I1a0JNO0VBQ0U7QXRCOGtCUjs7QXVCam1CUTs7O0VBRUUscUJ2QkxNO0FBMG1CaEI7O0F3QjFtQkU7RUFDRTtFQUNBO0F4QjZtQko7QXdCM21CSTs7RUFFRTtBeEI2bUJOO0F3QjNtQk07OztFQUVFO0F4QjhtQlI7QXdCeG1CTTs7RUFFRTtBeEIwbUJSO0F3QnRtQk07O0VBRUU7RUFDQTtBeEJ3bUJSO0F3Qm5tQk07OztFQUdFO0F4QnFtQlI7QXdCbm1CUTs7Ozs7RUFFRTtBeEJ3bUJWO0F3QnJtQlE7OztFQUNFO0F4QnltQlY7QXdCcm1CTTs7OztFQUlFO0F4QnVtQlI7QXdCbm1CSTtFQUNFO0VBQ0E7QXhCcW1CTjtBd0JsbUJJO0VBQ0U7QXhCb21CTjtBd0I3bEJJO0VBQ0U7QXhCK2xCTjtBd0I3bEJNO0VBQ0U7QXhCK2xCUjtBd0I3bEJRO0VBRUU7QXhCOGxCVjtBd0J6bEJJO0VBQ0U7QXhCMmxCTjs7QXlCL3BCRTtFQUNFO0VBSUE7QXpCK3BCSjtBeUJscUJJO0VBQ0U7QXpCb3FCTjtBeUJocUJJOzs7RUFHRTtBekJrcUJOO0F5QmpxQk07Ozs7O0VBRUU7QXpCc3FCUjtBeUJucUJNOzs7RUFDRTtBekJ1cUJSO0F5QnBxQkk7RUFDRTtBekJzcUJOO0F5Qm5xQkk7OztFQUdFO0F6QnFxQk47QXlCbHFCSTs7RUFFRTtBekJvcUJOO0F5QmhxQkk7RUFDRSx5R0F6Q2E7RUEwQ2I7RUFDQTtBekJrcUJOO0F5QmpxQk07RUFDRTtBekJtcUJSO0F5QnhwQk07RUFDRSx5R0F6RFc7RUEwRFg7RUFDQTtBekIwcEJSO0F5QnpwQlE7RUFDRTtBekIycEJWO0F5QmhwQk07O0VBRUUsbUJ6QmxGUTtBQW91QmhCO0F5Qi9vQk07RUFDRSx3Q0E1RWlCO0VBNkVqQjtBekJpcEJSO0F5QjlvQkk7O0VBRUU7RUFDQTtBekJncEJOO0F5QjdvQkk7RUFDRTtBekIrb0JOO0F5QjVvQkk7RUFDRTtBekI4b0JOO0F5QjNvQkk7RUFDRTtBekI2b0JOO0F5QjFvQkk7OztFQUdFO0F6QjRvQk47QXlCem9CSTtFQUNFO0F6QjJvQk47QXlCeG9CSTs7RUFFRTtBekIwb0JOOztBMEJsd0JFO0VBQ0U7QTFCcXdCSjtBMEJwd0JJO0VBQ0U7QTFCc3dCTjtBMEJsd0JNO0VBQ0U7QTFCb3dCUjtBMEJod0JJO0VBQ0U7QTFCa3dCTjtBMEJod0JNO0VBRUU7QTFCaXdCUjtBMEI5dkJNO0VBQ0U7QTFCZ3dCUjtBMEI1dkJJO0VBQ0U7QTFCOHZCTjtBMEIzdkJJOzs7O0VBSUU7QTFCNnZCTjtBMEIxdkJJO0VBQ0U7QTFCNHZCTjs7QW9CM3dCTTs7OztFQUNFLGNwQnZCUTtBQXd5QmhCOztBMkI1eUJFO0VBQ0UsYTNCR1k7QUE0eUJoQjs7QTRCNXlCSTs7RUFFRSxxQ3hCb01lO0V3Qm5NZixjeEI0Qkc7QUpteEJUO0E0Qjd5Qkk7O0VBRUUsbUJ4QndCRztFd0J2QkgsV3hCSEU7QUprekJSOztBNEIzeUJJOztFQUVFLHFDeEJ3TGU7RXdCdkxmLGN4QmdCRztBSjh4QlQ7QTRCNXlCSTs7RUFFRSxtQnhCWUc7RXdCWEgsV3hCZkU7QUo2ekJSOztBNkJoMEJNO0VBQ0UsK0NBSlM7QTdCdTBCakI7QTZCaDBCUTtFQUNFLDRCN0JQTTtBQXkwQmhCOztBNkJyekJNOztFQUNFLHVDQUxTO0E3Qjh6QmpCOztBa0J2eEJFOztFQUVFO0FsQjB4Qko7O0FrQnh4QkU7RUFDRSxjbEI1RFk7QUF1MUJoQjtBa0IxeEJJO0VBQ0U7QWxCNHhCTjs7QWtCenhCRTtFQUNFLGFsQmxFWTtBQTgxQmhCOztBOEJqMkJJO0VBQ0U7QTlCbzJCTjtBOEJuMkJNO0VBQ0U7QTlCcTJCUjtBOEJsMkJNO0VBQ0UscUI5QkpRO0FBdzJCaEI7QThCbjJCUTtFQUNFO0E5QnEyQlY7QThCbjJCUTtFQUVFO0E5Qm8yQlY7O0ErQjkxQkk7RUFDRTtFQUNBO0EvQmkyQk47QStCOTFCSTtFQUVFLGlCM0J3Z0JxQjtFMkJ2Z0JyQjtBL0IrMUJOOztBK0J6M0JFO0VBQ0U7RUFDQTtBL0I0M0JKOztBZ0NqNEJFO0VBQ0U7QWhDbzRCSjs7QWdDbDRCRTtFQUNFO0FoQ3E0Qko7O0FpQ3g0QkU7O0VBRUUseUJqQ0VZO0VpQ0RaO0VBQ0E7QWpDMjRCSjs7QWtDMzRCSTtFQUNFO0VBQ0E7QWxDODRCTjtBa0MzNEJJO0VBQ0UscUJsQ05VO0FBbTVCaEI7O0FtQy80QlE7Ozs7RUFPRTtFQUNBO0VBQ0E7QW5DKzRCVjtBbUM1NEJRO0VBR0U7RUFDQTtBbkM0NEJWO0FtQzE0QlU7RUFDRTtBbkM0NEJaO0FtQ3o0QlU7RUFDRTtFQUNBO0FuQzI0Qlo7QW1DdjRCUTtFQUVFLGNuQ2xDTTtFbUNtQ047QW5DdzRCVjs7QW9DejZCSTtFQUVFO0VBQ0E7RUFDQTtBcEMyNkJOO0FvQ3g2Qkk7RUFNRTtFQUNBO0VBQ0E7QXBDcTZCTjtBb0NsNkJJO0VBbUJFO0VBQ0E7RUFDQTtFQUNBO0FwQ2s1Qk47O0FxQzE3QkU7RUFDRTtFQUNBLFdqQ0NJO0VpQ0FKO0FyQzY3Qko7O0FxQ3o3Qkk7O0VBRUUseUJyQ1hVO0VxQ1lWLFdqQ1BFO0VpQ1FGO0FyQzQ3Qk47QXFDMTdCTTs7RUFDRTtBckM2N0JSOztBcUN4N0JFO0VBQ0U7QXJDMjdCSjs7QXFDeDdCRTtFQUNFO0VBQ0E7QXJDMjdCSjs7QXFDeDdCRTtFQUNFO0VBQ0E7QXJDMjdCSjs7QXNDNTlCRTs7RUFFRTtFQUNBO0F0Qys5Qko7O0F1Q2o2Qkk7Ozs7Ozs7Ozs7Ozs7O0VBT0U7QXZDMjZCTjtBdUN4NkJJOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBY0U7QXZDdzdCTjtBdUNyN0JJOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBY0U7QXZDcThCTjs7QXdDL2lDRTs7RUFFRTtFQUNBO0F4Q2tqQ0o7O0F5Q3pqQ0U7RUFDRTtBekM0akNKOztBMEM3akNFOztFQUVFO0ExQ2drQ0o7O0EyQ2xrQ0U7Ozs7Ozs7Ozs7RUFVRSx5QjNDTFk7QUEwa0NoQjs7QTRDMWtDRTtFQUNFO0E1QzZrQ0o7O0E0Q3prQ0k7RUFDRTtBNUM0a0NOO0E0QzFrQ0k7RUFDRTtBNUM0a0NOO0E0QzFrQ0k7RUFDRTtBNUM0a0NOOztBNEN6a0NFOzs7O0VBSUU7RUFDQTtBNUM0a0NKOztBNEN6a0NFOzs7RUFHRTtFQUNBO0E1QzRrQ0o7O0E0Q3prQ0U7RUFDRTtFQUNBO0E1QzRrQ0o7O0E0Q3prQ0U7O0VBRUU7QTVDNGtDSjs7QTRDMWtDRTtFQUNFO0E1QzZrQ0o7O0E0QzNrQ0U7RUFDRTtBNUM4a0NKOztBTTFnQ0U7RUFDRTtFQUNBO0FONmdDSjtBNkM5bkNNO0VBQ0U7QTdDZ29DUjtBNkM1bkNJO0VBQ0U7RUFDQTtFQUNBLGM3Q1JVO0FBc29DaEI7QTZDN25DTTtFQUVFO0VBQ0EsYzdDWlE7QUEwb0NoQjs7QThDM29DRTs7OztFQUlFLG1COUNIWTtFOENJWixXQVBNO0E5Q3FwQ1Y7O0E4QzNvQ0U7O0VBRUU7QTlDOG9DSjs7QStDeHBDSTs7RUFFRTtBL0MycENOOztBQzVwQ0U7RUFDRTtBRCtwQ0o7QUM5cENJOztFQUVFLGNESlU7QUFvcUNoQjs7QWdCam9DRTtFQUNFLFdBMUJNO0VKWlIseUJaRWM7RWdCc0NaLHFCaEJ0Q1k7QUEwcUNoQjtBZ0Jub0NJO0VBR0U7QWhCbW9DTjtBZ0Jqb0NJO0VBQ0U7RUovQ0osa0RJZ0R5QjtFQUNyQjtBaEJtb0NOO0FnQmhvQ0k7RUFHRSxXQWhDVTtFSnZCZCx1Q0lhbUI7RUE0Q2YsbUNBdkNXO0FoQnVxQ2pCO0FnQjduQ0k7RUFNRTtFQUNBO0VBR0E7QWhCd25DTjtBZ0JybkNJO0VBRUU7RUFDQTtFQUdBO0FoQm9uQ047QWdCL21DRTs7RUFFRTtFQUNBO0FoQmluQ0o7QWdCL21DRTtFQUNFLHVDQWpFa0I7RUFrRWxCLDBDQWxFa0I7QWhCbXJDdEI7QWdCdi9CRTtFQUNFO0VBQ0E7RUFDQTtBaEJ5L0JKO0FnQnQvQk07RUFDRTtBaEJ3L0JSO0FnQjkrQkk7RUFDRTtFQUNBO0VBQ0E7QWhCZy9CTjtBZ0I3K0JJO0VBRUUsY1pqTU07RVlrTU4sdUNBL0NlO0FoQjZoQ3JCO0FnQjMrQkk7RUFJRTtFQUNBO0VBR0E7QWhCdytCTjtBZ0JyK0JJO0VBRUU7RUFDQTtFQUNBO0FoQnMrQk47QWdCaitCRTs7RUFFRTtFQUNBO0FoQm0rQko7QWdCaitCRTtFQUNFO0VBQ0E7QWhCbStCSjs7QWdEN3VDUTtFQUNFLHlCaERGTTtFZ0RHTixXQU5BO0VBT0E7QWhEZ3ZDVjtBZ0Q5dUNRO0VBQ0U7QWhEZ3ZDVjtBZ0Q5dUNROztFQUVFO0FoRGd2Q1Y7QWdEM3VDVTtFQUNFO0VBQ0E7QWhENnVDWjtBZ0QzdUNVO0VBQ0U7QWhENnVDWjtBZ0QzdUNVO0VBQ0U7QWhENnVDWjtBZ0R0dUNRO0VBQ0U7QWhEd3VDVjtBZ0RwdUNZO0VBQ0UsY2hEckNFO0FBMndDaEI7O0FDM3ZDVTtFQUNFLG1CRGpCSTtBQSt3Q2hCO0FDcnZDWTtFQUNFO0FEdXZDZDs7QUN6dUNROzs7OztFQUtFO0FENHVDVjtBQzN1Q1U7Ozs7O0VBQ0U7QURpdkNaOztBQ3J1Q1E7RUFDRTtBRHd1Q1Y7QUNydUNVO0VBQ0U7QUR1dUNaOztBd0J4eUNFO0VBQ0U7RUFDQTtBeEIyeUNKO0F3Qnp5Q0k7O0VBRUU7QXhCMnlDTjtBd0J6eUNNOzs7RUFFRTtBeEI0eUNSO0F3QnR5Q007O0VBRUU7QXhCd3lDUjtBd0JweUNNOztFQUVFO0VBQ0E7QXhCc3lDUjtBd0JqeUNNOzs7RUFHRTtBeEJteUNSO0F3Qmp5Q1E7Ozs7O0VBRUU7QXhCc3lDVjtBd0JueUNROzs7RUFDRTtBeEJ1eUNWO0F3Qm55Q007Ozs7RUFJRTtBeEJxeUNSO0F3Qmp5Q0k7RUFDRTtFQUNBO0F4Qm15Q047QXdCaHlDSTtFQUNFO0F4Qmt5Q047QXdCM3hDSTtFQUNFO0F4QjZ4Q047QXdCM3hDTTtFQUNFO0F4QjZ4Q1I7QXdCM3hDUTtFQUVFO0F4QjR4Q1Y7QXdCdnhDSTtFQUNFO0F4Qnl4Q047O0FBdDFDQTtFQUNFO0VBQ0E7QUF5MUNGOztBQXYxQ0E7RUFDRTtBQTAxQ0Y7O0FBeDFDQTtFQUNFO0FBMjFDRjs7QUF6MUNBO0VBQ0Usc0RJK0pjO0FKNnJDaEI7O0FBMTFDQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FBNjFDRjs7QXlCcjNDRTtFQUNFO0VBSUE7QXpCcTNDSjtBeUJ4M0NJO0VBQ0U7QXpCMDNDTjtBeUJ0M0NJOzs7RUFHRTtBekJ3M0NOO0F5QnYzQ007Ozs7O0VBRUU7QXpCNDNDUjtBeUJ6M0NNOzs7RUFDRTtBekI2M0NSO0F5QjEzQ0k7RUFDRTtBekI0M0NOO0F5QnozQ0k7OztFQUdFO0F6QjIzQ047QXlCeDNDSTs7RUFFRTtBekIwM0NOO0F5QnQzQ0k7RUFDRSw4RUF6Q2E7RUEwQ2I7RUFDQTtBekJ3M0NOO0F5QnYzQ007RUFDRTtBekJ5M0NSO0F5QjkyQ007RUFDRSw4RUF6RFc7RUEwRFg7RUFDQTtBekJnM0NSO0F5Qi8yQ1E7RUFDRTtBekJpM0NWO0F5QnQyQ007O0VBRUUsZ0JyQjdFQTtBSnE3Q1I7QXlCcjJDTTtFQUNFLHFDQTVFaUI7RUE2RWpCO0F6QnUyQ1I7QXlCcDJDSTs7RUFFRTtFQUNBO0F6QnMyQ047QXlCbjJDSTtFQUNFO0F6QnEyQ047QXlCbDJDSTtFQUNFO0F6Qm8yQ047QXlCajJDSTtFQUNFO0F6Qm0yQ047QXlCaDJDSTs7O0VBR0U7QXpCazJDTjtBeUIvMUNJO0VBQ0U7QXpCaTJDTjtBeUI5MUNJOztFQUVFO0F6QmcyQ047O0FLLzVDSTtFTFBGO0lBQ0Usc0RJMElZO0VKZ3lDZDtBQUNGO0FBbDZDVTtFQUVFLGtDSXJERjtBSnc5Q1Y7QUE5NUNRO0VBRUUsa0NJN0RBO0FKNDlDVjtBQTE1Q0U7RUFDRTtBQTQ1Q0o7O0EwQnYrQ0U7RUFDRTtBMUIwK0NKO0EwQnorQ0k7RUFDRTtBMUIyK0NOO0EwQnYrQ007RUFDRTtBMUJ5K0NSO0EwQnIrQ0k7RUFDRTtBMUJ1K0NOO0EwQnIrQ007RUFFRTtBMUJzK0NSO0EwQm4rQ007RUFDRTtBMUJxK0NSO0EwQmorQ0k7RUFDRTtBMUJtK0NOO0EwQmgrQ0k7Ozs7RUFJRTtBMUJrK0NOO0EwQi85Q0k7RUFDRTtBMUJpK0NOOztBQW43Q0E7O0VBRUUsd0RJc0dXO0FKZzFDYixDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vY2h1Ly4vYXNzZXRzL3RoZW1lL3Njc3MvdGhlbWUtZGVmYXVsdC5zY3NzIiwid2VicGFjazovL2NodS8uL2Fzc2V0cy90aGVtZS9zY3NzL3BhZ2VzL19taXhpbnMuc2NzcyIsIndlYnBhY2s6Ly9jaHUvLi9hc3NldHMvdGhlbWUvc2Nzcy9fdGhlbWUvX3RoZW1lLnNjc3MiLCJ3ZWJwYWNrOi8vY2h1Ly4vYXNzZXRzL3RoZW1lL3Njc3MvX2NvbXBvbmVudHMvX3ZhcmlhYmxlcy5zY3NzIiwid2VicGFjazovL2NodS8uL2Fzc2V0cy90aGVtZS9zY3NzL19ib290c3RyYXAtZXh0ZW5kZWQvX3ZhcmlhYmxlcy5zY3NzIiwid2VicGFjazovL2NodS8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2JyZWFrcG9pbnRzLnNjc3MiLCJ3ZWJwYWNrOi8vY2h1Ly4vYXNzZXRzL3RoZW1lL3Njc3MvX2Jvb3RzdHJhcC1leHRlbmRlZC9taXhpbnMvX21pc2Muc2NzcyIsIndlYnBhY2s6Ly9jaHUvLi9hc3NldHMvdGhlbWUvc2Nzcy9fYm9vdHN0cmFwLWV4dGVuZGVkL21peGlucy9fcGFnaW5hdGlvbi5zY3NzIiwid2VicGFjazovL2NodS8uL2Fzc2V0cy90aGVtZS9zY3NzL19ib290c3RyYXAtZXh0ZW5kZWQvbWl4aW5zL19wcm9ncmVzcy5zY3NzIiwid2VicGFjazovL2NodS8uL2Fzc2V0cy90aGVtZS9zY3NzL19ib290c3RyYXAtZXh0ZW5kZWQvbWl4aW5zL19tb2RhbC5zY3NzIiwid2VicGFjazovL2NodS8uL2Fzc2V0cy90aGVtZS9zY3NzL19ib290c3RyYXAtZXh0ZW5kZWQvbWl4aW5zL19saXN0LWdyb3VwLnNjc3MiLCJ3ZWJwYWNrOi8vY2h1Ly4vYXNzZXRzL3RoZW1lL3Njc3MvX2Jvb3RzdHJhcC1leHRlbmRlZC9taXhpbnMvX2FsZXJ0LnNjc3MiLCJ3ZWJwYWNrOi8vY2h1Ly4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fZ3JhZGllbnRzLnNjc3MiLCJ3ZWJwYWNrOi8vY2h1Ly4vYXNzZXRzL3RoZW1lL3Njc3MvX2Jvb3RzdHJhcC1leHRlbmRlZC9taXhpbnMvX3Rvb2x0aXAuc2NzcyIsIndlYnBhY2s6Ly9jaHUvLi9hc3NldHMvdGhlbWUvc2Nzcy9fYm9vdHN0cmFwLWV4dGVuZGVkL21peGlucy9fcG9wb3Zlci5zY3NzIiwid2VicGFjazovL2NodS8uL2Fzc2V0cy90aGVtZS9zY3NzL19ib290c3RyYXAtZXh0ZW5kZWQvbWl4aW5zL190YWJsZS12YXJpYW50cy5zY3NzIiwid2VicGFjazovL2NodS8uL2Fzc2V0cy90aGVtZS9zY3NzL19ib290c3RyYXAtZXh0ZW5kZWQvbWl4aW5zL19idXR0b25zLnNjc3MiLCJ3ZWJwYWNrOi8vY2h1Ly4vYXNzZXRzL3RoZW1lL3Njc3MvX2Jvb3RzdHJhcC1leHRlbmRlZC9taXhpbnMvX2Ryb3Bkb3duLnNjc3MiLCJ3ZWJwYWNrOi8vY2h1Ly4vYXNzZXRzL3RoZW1lL3Njc3MvX3RoZW1lL19jb21tb24uc2NzcyIsIndlYnBhY2s6Ly9jaHUvLi9hc3NldHMvdGhlbWUvc2Nzcy9fYm9vdHN0cmFwLWV4dGVuZGVkL21peGlucy9fbmF2cy5zY3NzIiwid2VicGFjazovL2NodS8uL2Fzc2V0cy90aGVtZS9zY3NzL19ib290c3RyYXAtZXh0ZW5kZWQvbWl4aW5zL19mb3Jtcy5zY3NzIiwid2VicGFjazovL2NodS8uL2Fzc2V0cy90aGVtZS9zY3NzL19jb21wb25lbnRzL21peGlucy9fc3dpdGNoLnNjc3MiLCJ3ZWJwYWNrOi8vY2h1Ly4vYXNzZXRzL3RoZW1lL3Njc3MvX2NvbXBvbmVudHMvbWl4aW5zL190aW1lbGluZS5zY3NzIiwid2VicGFjazovL2NodS8uL2Fzc2V0cy90aGVtZS9zY3NzL19jb21wb25lbnRzL21peGlucy9fdGV4dC1kaXZpZGVyLnNjc3MiLCJ3ZWJwYWNrOi8vY2h1Ly4vYXNzZXRzL3RoZW1lL3Njc3MvX2NvbXBvbmVudHMvbWl4aW5zL19uYXZiYXIuc2NzcyIsIndlYnBhY2s6Ly9jaHUvLi9hc3NldHMvdGhlbWUvc2Nzcy9fY29tcG9uZW50cy9taXhpbnMvX21lbnUuc2NzcyIsIndlYnBhY2s6Ly9jaHUvLi9hc3NldHMvdGhlbWUvc2Nzcy9fY29tcG9uZW50cy9taXhpbnMvX2Zvb3Rlci5zY3NzIiwid2VicGFjazovL2NodS8uL2Fzc2V0cy90aGVtZS9zY3NzL19jb21wb25lbnRzL21peGlucy9fbWlzYy5zY3NzIiwid2VicGFjazovL2NodS8uL2Fzc2V0cy90aGVtZS9zY3NzL19jb21wb25lbnRzL21peGlucy9fdHJlZXZpZXcuc2NzcyIsIndlYnBhY2s6Ly9jaHUvLi9hc3NldHMvdGhlbWUvc2Nzcy9fYm9vdHN0cmFwLWV4dGVuZGVkL21peGlucy9fY2FyZC5zY3NzIiwid2VicGFjazovL2NodS8uL2Fzc2V0cy90aGVtZS9saWJzL25vdWlzbGlkZXIvX21peGlucy5zY3NzIiwid2VicGFjazovL2NodS8uL2Fzc2V0cy90aGVtZS9saWJzL3NlbGVjdDIvX21peGlucy5zY3NzIiwid2VicGFjazovL2NodS8uL2Fzc2V0cy90aGVtZS9saWJzL3RhZ2lmeS9fbWl4aW5zLnNjc3MiLCJ3ZWJwYWNrOi8vY2h1Ly4vYXNzZXRzL3RoZW1lL2xpYnMvZGF0YXRhYmxlcy1yZXNwb25zaXZlLWJzNS9fbWl4aW5zLnNjc3MiLCJ3ZWJwYWNrOi8vY2h1Ly4vYXNzZXRzL3RoZW1lL2xpYnMvYm9vdHN0cmFwLXNlbGVjdC9fbWl4aW5zLnNjc3MiLCJ3ZWJwYWNrOi8vY2h1Ly4vYXNzZXRzL3RoZW1lL2xpYnMvYm9vdHN0cmFwLWRhdGVwaWNrZXIvX21peGlucy5zY3NzIiwid2VicGFjazovL2NodS8uL2Fzc2V0cy90aGVtZS9saWJzL2ZsYXRwaWNrci9fbWl4aW5zLnNjc3MiLCJ3ZWJwYWNrOi8vY2h1Ly4vYXNzZXRzL3RoZW1lL2xpYnMvYm9vdHN0cmFwLWRhdGVyYW5nZXBpY2tlci9fbWl4aW5zLnNjc3MiLCJ3ZWJwYWNrOi8vY2h1Ly4vYXNzZXRzL3RoZW1lL2xpYnMvanF1ZXJ5LXRpbWVwaWNrZXIvX21peGlucy5zY3NzIiwid2VicGFjazovL2NodS8uL2Fzc2V0cy90aGVtZS9saWJzL3F1aWxsL19taXhpbnMuc2NzcyIsIndlYnBhY2s6Ly9jaHUvLi9hc3NldHMvdGhlbWUvbGlicy90eXBlYWhlYWQtanMvX21peGlucy5zY3NzIiwid2VicGFjazovL2NodS8uL2Fzc2V0cy90aGVtZS9saWJzL2Ryb3B6b25lL19taXhpbnMuc2NzcyIsIndlYnBhY2s6Ly9jaHUvLi9hc3NldHMvdGhlbWUvbGlicy9zd2lwZXIvX21peGlucy5zY3NzIiwid2VicGFjazovL2NodS8uL2Fzc2V0cy90aGVtZS9saWJzL3NwaW5raXQvX21peGlucy5zY3NzIiwid2VicGFjazovL2NodS8uL2Fzc2V0cy90aGVtZS9saWJzL3BseXIvX21peGlucy5zY3NzIiwid2VicGFjazovL2NodS8uL2Fzc2V0cy90aGVtZS9saWJzL2Z1bGxjYWxlbmRhci9fbWl4aW5zLnNjc3MiLCJ3ZWJwYWNrOi8vY2h1Ly4vYXNzZXRzL3RoZW1lL2xpYnMvc3dlZXRhbGVydDIvX21peGlucy5zY3NzIiwid2VicGFjazovL2NodS8uL2Fzc2V0cy90aGVtZS9saWJzL3BpY2tyL19taXhpbnMuc2NzcyIsIndlYnBhY2s6Ly9jaHUvLi9hc3NldHMvdGhlbWUvbGlicy9icy1zdGVwcGVyL19taXhpbnMuc2NzcyJdLCJzb3VyY2VzQ29udGVudCI6WyJAaW1wb3J0ICcuL19jb21wb25lbnRzL2luY2x1ZGUnO1xuQGltcG9ydCAnLi9fdGhlbWUvY29tbW9uJztcbkBpbXBvcnQgJy4vX3RoZW1lL2xpYnMnO1xuQGltcG9ydCAnLi9fdGhlbWUvcGFnZXMnO1xuQGltcG9ydCAnLi9fdGhlbWUvX3RoZW1lJztcblxuJHByaW1hcnktY29sb3I6ICM3MzY3ZjA7XG4kYm9keS1iZzogI2Y4ZjdmYTtcblxuYm9keSB7XG4gIGJhY2tncm91bmQ6ICRib2R5LWJnO1xufVxuXG4uYmctYm9keSB7XG4gIGJhY2tncm91bmQ6ICRib2R5LWJnICFpbXBvcnRhbnQ7XG59XG5cbkBpbmNsdWRlIHRlbXBsYXRlLWNvbW1vbi10aGVtZSgkcHJpbWFyeS1jb2xvcik7XG5AaW5jbHVkZSB0ZW1wbGF0ZS1saWJzLXRoZW1lKCRwcmltYXJ5LWNvbG9yKTtcbkBpbmNsdWRlIHRlbXBsYXRlLXBhZ2VzLXRoZW1lKCRwcmltYXJ5LWNvbG9yKTtcblxuLy8gTmF2YmFyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbkBpbmNsdWRlIHRlbXBsYXRlLW5hdmJhci1zdHlsZSgnLmJnLW5hdmJhci10aGVtZScsICRjYXJkLWJnLCAkY29sb3I6ICRoZWFkaW5ncy1jb2xvciwgJGFjdGl2ZS1jb2xvcjogJGhlYWRpbmdzLWNvbG9yKTtcblxuLmxheW91dC1uYXZiYXIge1xuICBib3gtc2hhZG93OiAwIDAgMTBweCAkYm9yZGVyLWNvbG9yO1xuICBiYWNrZHJvcC1maWx0ZXI6IHNhdHVyYXRlKDIwMCUpIGJsdXIoNnB4KTtcbn1cbi5tZW51LWhvcml6b250YWwge1xuICBiYWNrZHJvcC1maWx0ZXI6IHNhdHVyYXRlKDIwMCUpIGJsdXIoNnB4KTtcbn1cbi5sYXlvdXQtaG9yaXpvbnRhbCAubGF5b3V0LW5hdmJhciB7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDAgJGJvcmRlci1jb2xvcjtcbn1cbi5uYXZiYXItZGV0YWNoZWQge1xuICBib3gtc2hhZG93OiAkYm94LXNoYWRvdy1zbTtcbn1cbi5sYXlvdXQtbmF2YmFyLWZpeGVkIC5sYXlvdXQtcGFnZTpiZWZvcmUge1xuICBiYWNrZHJvcC1maWx0ZXI6IHNhdHVyYXRlKDIwMCUpIGJsdXIoMTBweCk7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYmEoJGJvZHktYmcsIDcwJSkgNDQlLCByZ2JhKCRib2R5LWJnLCA0MyUpIDczJSwgcmdiYSgkYm9keS1iZywgMCUpKTtcbiAgLXdlYmtpdC1tYXNrOiBsaW5lYXItZ3JhZGllbnQoJGJvZHktYmcsICRib2R5LWJnIDE4JSwgdHJhbnNwYXJlbnQgMTAwJSk7XG4gIG1hc2s6IGxpbmVhci1ncmFkaWVudCgkYm9keS1iZywgJGJvZHktYmcgMTglLCB0cmFuc3BhcmVudCAxMDAlKTtcbn1cblxuLy8gTWVudVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5AaW5jbHVkZSB0ZW1wbGF0ZS1tZW51LXN0eWxlKFxuICAnLmJnLW1lbnUtdGhlbWUnLFxuICAkY2FyZC1iZyxcbiAgJGNvbG9yOiAkaGVhZGluZ3MtY29sb3IsXG4gICRhY3RpdmUtY29sb3I6ICRoZWFkaW5ncy1jb2xvcixcbiAgJGJvcmRlcjogdHJhbnNwYXJlbnQsXG4gICRhY3RpdmUtYmc6ICRwcmltYXJ5LWNvbG9yXG4pO1xuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkbWVudS1jb2xsYXBzZWQtbGF5b3V0LWJyZWFrcG9pbnQpIHtcbiAgLmJnLW1lbnUtdGhlbWUge1xuICAgIGJveC1zaGFkb3c6ICRib3gtc2hhZG93LXNtO1xuICB9XG59XG4uYmctbWVudS10aGVtZSB7XG4gIC5tZW51LWlubmVyIHtcbiAgICAubWVudS1pdGVtIHtcbiAgICAgICYub3BlbixcbiAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgPiAubWVudS1saW5rLm1lbnUtdG9nZ2xlIHtcbiAgICAgICAgICAmLFxuICAgICAgICAgIC5sYXlvdXQtbWVudS1ob3Zlci5sYXlvdXQtbWVudS1jb2xsYXBzZWQgJiB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkZ3JheS03NTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICY6bm90KC5hY3RpdmUpID4gLm1lbnUtbGluazpob3ZlciB7XG4gICAgICAgIGh0bWw6bm90KC5sYXlvdXQtbWVudS1jb2xsYXBzZWQpICYsXG4gICAgICAgIC5sYXlvdXQtbWVudS1ob3Zlci5sYXlvdXQtbWVudS1jb2xsYXBzZWQgJiB7XG4gICAgICAgICAgYmFja2dyb3VuZDogJGdyYXktNTA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLm1lbnUtaW5uZXIgLm1lbnUtc3ViIC5tZW51LWl0ZW06bm90KC5hY3RpdmUpID4gLm1lbnUtbGluazo6YmVmb3JlIHtcbiAgICBjb2xvcjogJGJvZHktY29sb3IgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vLyBGb290ZXJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuQGluY2x1ZGUgdGVtcGxhdGUtZm9vdGVyLXN0eWxlKCcuYmctZm9vdGVyLXRoZW1lJywgJGNhcmQtYmcsICRjb2xvcjogJHByaW1hcnktY29sb3IsICRhY3RpdmUtY29sb3I6ICRwcmltYXJ5LWNvbG9yKTtcblxuLmxheW91dC1mb290ZXItZml4ZWQgLmxheW91dC13cmFwcGVyOm5vdCgubGF5b3V0LWhvcml6b250YWwpIC5jb250ZW50LWZvb3RlciAuZm9vdGVyLWNvbnRhaW5lcixcbi5sYXlvdXQtZm9vdGVyLWZpeGVkIC5sYXlvdXQtd3JhcHBlci5sYXlvdXQtaG9yaXpvbnRhbCAuY29udGVudC1mb290ZXIge1xuICBib3gtc2hhZG93OiAkYm94LXNoYWRvdztcbn1cbiIsIi8qXG4qIFBhZ2VzIE1peGluc1xuKi9cbkBpbXBvcnQgJy4uLy4uL3Njc3MvX2Jvb3RzdHJhcC1leHRlbmRlZC9mdW5jdGlvbnMnO1xuXG5AbWl4aW4gaWNvbi10aGVtZSgkY29sb3IpIHtcbiAgLmljb24tY2FyZC5hY3RpdmUge1xuICAgIG91dGxpbmU6IDFweCBzb2xpZCAkY29sb3I7XG4gICAgaSxcbiAgICBzdmcge1xuICAgICAgY29sb3I6ICRjb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLy8gQXBwIENoYXRcbkBtaXhpbiBhcHAtY2hhdC10aGVtZSgkY29sb3IpIHtcbiAgJGNoYXQtaXRlbS1hY3RpdmUtYmc6ICRjb2xvcjtcbiAgLmFwcC1jaGF0IHtcbiAgICAuc2lkZWJhci1ib2R5IHtcbiAgICAgIC5jaGF0LWNvbnRhY3QtbGlzdCB7XG4gICAgICAgIGxpIHtcbiAgICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkY2hhdC1pdGVtLWFjdGl2ZS1iZztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLmFwcC1jaGF0LWhpc3Rvcnkge1xuICAgICAgLmNoYXQtaGlzdG9yeSB7XG4gICAgICAgIC5jaGF0LW1lc3NhZ2Uge1xuICAgICAgICAgICYuY2hhdC1tZXNzYWdlLXJpZ2h0IHtcbiAgICAgICAgICAgIC5jaGF0LW1lc3NhZ2UtdGV4dCB7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvciAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gZnJvbnQtdGhlbWUoJGNvbG9yKSB7XG4gIC8vIE5hdmJhciAtLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLm5hdmJhciB7XG4gICAgJi5sYW5kaW5nLW5hdmJhciB7XG4gICAgICAubmF2YmFyLW5hdiB7XG4gICAgICAgIC5zaG93ID4gLm5hdi1saW5rLFxuICAgICAgICAuYWN0aXZlID4gLm5hdi1saW5rLFxuICAgICAgICAubmF2LWxpbmsuc2hvdyxcbiAgICAgICAgLm5hdi1saW5rLmFjdGl2ZSxcbiAgICAgICAgLm5hdi1saW5rOmhvdmVyIHtcbiAgICAgICAgICBjb2xvcjogJGNvbG9yICFpbXBvcnRhbnQ7XG4gICAgICAgICAgaSB7XG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yICFpbXBvcnRhbnQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gTGFuZGluZyBwYWdlIC0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAvLyBVc2VmdWwgZmVhdHVyZXNcbiAgLmxhbmRpbmctZmVhdHVyZXMge1xuICAgIC5mZWF0dXJlcy1pY29uLXdyYXBwZXIge1xuICAgICAgLmZlYXR1cmVzLWljb24tYm94IHtcbiAgICAgICAgLmZlYXR1cmVzLWljb24ge1xuICAgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkIHJnYmEoJGNvbG9yLCAwLjIpO1xuICAgICAgICB9XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIC5mZWF0dXJlcy1pY29uIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLCAwLjA1KTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vID8gVGhlbWUgcmVsYXRlZCBzdHlsZXMgY29tbW9uIHN0eWxlc1xuXG5AaW1wb3J0ICcuLi9fY29tcG9uZW50cy9pbmNsdWRlJztcblxuLy8gU3BhY2UgYWJvdmUgZGV0YWNoZWQgbmF2YmFyICh2ZXJ0aWNhbCBsYXlvdXQgb25seSlcbi5sYXlvdXQtbmF2YmFyLWZpeGVkIC5sYXlvdXQtd3JhcHBlcjpub3QoLmxheW91dC1ob3Jpem9udGFsKSAubGF5b3V0LXBhZ2U6YmVmb3JlIHtcbiAgY29udGVudDogJyc7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGNhbGMoJHNwYWNlciArICRuYXZiYXItaGVpZ2h0KTtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDBweDtcbiAgei1pbmRleDogMTA7XG59XG5cbi5iZy1tZW51LXRoZW1lIHtcbiAgLy8gU3ViIG1lbnUgaXRlbSBsaW5rIGJ1bGxldFxuICAubWVudS1zdWIgPiAubWVudS1pdGVtID4gLm1lbnUtbGluazpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICdcXGVhNmInO1xuICAgIGZvbnQtZmFtaWx5OiAndGFibGVyLWljb25zJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgZm9udC1zaXplOiAwLjc1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB9XG4gICYubWVudS12ZXJ0aWNhbCB7XG4gICAgLm1lbnUtc3ViID4gLm1lbnUtaXRlbSA+IC5tZW51LWxpbms6YmVmb3JlIHtcbiAgICAgIGxlZnQ6IDEuMXJlbTtcbiAgICAgIEBpbmNsdWRlIHJ0bC1zdHlsZSB7XG4gICAgICAgIHJpZ2h0OiAxLjFyZW07XG4gICAgICAgIGxlZnQ6IGluaGVyaXQ7XG4gICAgICB9XG4gICAgfVxuICAgIC5tZW51LXN1YiA+IC5tZW51LWl0ZW0gLm1lbnUtbGluayAubWVudS1pY29uIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG4gICYubWVudS1ob3Jpem9udGFsIHtcbiAgICAubWVudS1pbm5lciA+IC5tZW51LWl0ZW0gPiAubWVudS1zdWIgPiAubWVudS1pdGVtID4gLm1lbnUtbGluayB7XG4gICAgICBAaW5jbHVkZSBsdHItc3R5bGUge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6ICRtZW51LWhvcml6b250YWwtbGluay1wYWRkaW5nLXg7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBydGwtc3R5bGUge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkbWVudS1ob3Jpem9udGFsLWxpbmstcGFkZGluZy14O1xuICAgICAgfVxuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLy8gU3ViIG1lbnUgaXRlbSBsaW5rIGJ1bGxldFxuICAubWVudS1zdWIgPiAubWVudS1pdGVtID4gLm1lbnUtbGluazpiZWZvcmUge1xuICAgIC8vIEZvciBob3Jpem9udGFsIGxheW91dFxuICAgIC5sYXlvdXQtaG9yaXpvbnRhbCAmIHtcbiAgICAgIGxlZnQ6IDEuMXJlbTtcbiAgICAgIEBpbmNsdWRlIHJ0bC1zdHlsZSB7XG4gICAgICAgIHJpZ2h0OiAxLjFyZW07XG4gICAgICAgIGxlZnQ6IGluaGVyaXQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLm1lbnUtaW5uZXIgLm1lbnUtaXRlbSAubWVudS1saW5rIHtcbiAgICAubGF5b3V0LXdyYXBwZXI6bm90KC5sYXlvdXQtaG9yaXpvbnRhbCkgJiB7XG4gICAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgICB9XG4gIH1cbiAgLm1lbnUtaW5uZXIgPiAubWVudS1pdGVtID4gLm1lbnUtbGluayB7XG4gICAgLmxheW91dC1ob3Jpem9udGFsICYge1xuICAgICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gICAgfVxuICB9XG5cbiAgLm1lbnUtaW5uZXIgPiB7XG4gICAgLy8gU3BhY2luZyBhbmQgQm94LXNoYWRvdyBvbmx5IGZvciBob3Jpem9udGFsIG1lbnUgYWJvdmUgbGcgc2NyZWVuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkbWVudS1jb2xsYXBzZWQtbGF5b3V0LWJyZWFrcG9pbnQpIHtcbiAgICAgIC5tZW51LWl0ZW0ge1xuICAgICAgICAubGF5b3V0LWhvcml6b250YWwgJiB7XG4gICAgICAgICAgbWFyZ2luOiAkbWVudS12ZXJ0aWNhbC1oZWFkZXItbWFyZ2luLXkgMDtcbiAgICAgICAgICAmOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IGNhbGMoJG1lbnUtaXRlbS1zcGFjZXIgLyAyKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgICAgIG1hcmdpbi1pbmxpbmUtZW5kOiBjYWxjKCRtZW51LWl0ZW0tc3BhY2VyIC8gMik7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5tZW51LWl0ZW0uYWN0aXZlOmJlZm9yZSB7XG4gICAgICAubGF5b3V0LXdyYXBwZXI6bm90KC5sYXlvdXQtaG9yaXpvbnRhbCkgJiB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB3aWR0aDogMC4yNXJlbTtcbiAgICAgICAgaGVpZ2h0OiAyLjY4NDVyZW07XG4gICAgICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzIDAgMCAkYm9yZGVyLXJhZGl1cztcbiAgICAgICAgQGluY2x1ZGUgcnRsLXN0eWxlIHtcbiAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgIHJpZ2h0OiBpbmhlcml0O1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDAgJGJvcmRlci1yYWRpdXMgJGJvcmRlci1yYWRpdXMgMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gQ29tbW9uXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5cbiR1aS1zdGFyLXNpemU6IDEuMWVtICFkZWZhdWx0O1xuJHVpLXN0YXJzLXNwYWNlcjogLTAuMWVtICFkZWZhdWx0O1xuJHVpLXN0YXItZmlsbGVkLWNvbG9yOiAkeWVsbG93ICFkZWZhdWx0O1xuXG4vLyBOYXZiYXIgKGN1c3RvbSBuYXZiYXIpXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4kbmF2YmFyLWhlaWdodDogMy41cmVtICFkZWZhdWx0O1xuJG5hdmJhci1zdWdnZXN0aW9uLXdpZHRoOiAxMDAlICFkZWZhdWx0O1xuJG5hdmJhci1zdWdnZXN0aW9uLWhlaWdodDogMjhyZW0gIWRlZmF1bHQ7XG4kbmF2YmFyLXN1Z2dlc3Rpb24tYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kbmF2YmFyLWRyb3Bkb3duLXdpZHRoOiAyMnJlbSAhZGVmYXVsdDtcbiRuYXZiYXItZHJvcGRvd24tY29udGVudC1oZWlnaHQ6IDI0LjA4cmVtICFkZWZhdWx0O1xuJG5hdmJhci1ub3RpZmljYXRpb25zLWRyb3Bkb3duLWl0ZW0tcGFkZGluZy15OiAwLjc1cmVtICFkZWZhdWx0O1xuJG5hdmJhci1ub3RpZmljYXRpb25zLWRyb3Bkb3duLWl0ZW0tcGFkZGluZy14OiAxcmVtICFkZWZhdWx0O1xuXG4vLyBNZW51XG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5cbiRtZW51LXdpZHRoOiAxNi4yNXJlbSAhZGVmYXVsdDtcbiRtZW51LWNvbGxhcHNlZC13aWR0aDogNC4zNzVyZW0gIWRlZmF1bHQ7XG4kbWVudS1jb2xsYXBzZWQtbGF5b3V0LWJyZWFrcG9pbnQ6IHhsICFkZWZhdWx0O1xuXG4kbWVudS1mb250LXNpemU6ICRmb250LXNpemUtYmFzZSAhZGVmYXVsdDtcblxuJG1lbnUtaXRlbS1zcGFjZXI6IDAuMzc1cmVtICFkZWZhdWx0O1xuXG4kbWVudS12ZXJ0aWNhbC1saW5rLW1hcmdpbi14OiAwLjc1cmVtICFkZWZhdWx0O1xuJG1lbnUtbGluay1zcGFjZXIteDogMC41cmVtICFkZWZhdWx0O1xuXG4kbWVudS12ZXJ0aWNhbC1saW5rLXBhZGRpbmcteTogMC41cmVtICFkZWZhdWx0O1xuJG1lbnUtdmVydGljYWwtbGluay1wYWRkaW5nLXg6IDAuNzVyZW0gIWRlZmF1bHQ7XG4kbWVudS12ZXJ0aWNhbC1tZW51LWxpbmstcGFkZGluZy15OiAwLjVyZW0gIWRlZmF1bHQ7XG4kbWVudS12ZXJ0aWNhbC1tZW51LWxldmVsLXNwYWNlcjogMC41cmVtICFkZWZhdWx0O1xuXG4kbWVudS12ZXJ0aWNhbC1oZWFkZXItbWFyZ2luLXk6IDAuNXJlbSAhZGVmYXVsdDtcbiRtZW51LXZlcnRpY2FsLWhlYWRlci1tYXJnaW4teDogMS4yNXJlbSAhZGVmYXVsdDtcblxuJG1lbnUtaG9yaXpvbnRhbC1zcGFjZXIteDogMC4zNzVyZW0gIWRlZmF1bHQ7XG4kbWVudS1ob3Jpem9udGFsLWl0ZW0tc3BhY2VyOiAwLjI1cmVtICFkZWZhdWx0O1xuJG1lbnUtaG9yaXpvbnRhbC1saW5rLXBhZGRpbmcteTogMC41cmVtICFkZWZhdWx0O1xuJG1lbnUtaG9yaXpvbnRhbC1saW5rLXBhZGRpbmcteDogMXJlbSAhZGVmYXVsdDtcbiRtZW51LWhvcml6b250YWwtbWVudS1saW5rLXBhZGRpbmcteTogMC41cmVtICFkZWZhdWx0O1xuJG1lbnUtaG9yaXpvbnRhbC1tZW51LWxldmVsLXNwYWNlcjogMi43NXJlbSAhZGVmYXVsdDtcbiRtZW51LWhvcml6b250YWwtYm94LXNoYWRvdzogMHB4IDFweCA0cHggMHB4IHJnYmEoJGJsYWNrLCAwLjEpICFkZWZhdWx0O1xuXG4kbWVudS1zdWItd2lkdGg6ICRtZW51LXdpZHRoICFkZWZhdWx0O1xuJG1lbnUtY29udHJvbC13aWR0aDogMi4yNXJlbSAhZGVmYXVsdDtcbiRtZW51LWNvbnRyb2wtYXJyb3ctc2l6ZTogMC41cmVtICFkZWZhdWx0O1xuXG4kbWVudS1pY29uLWV4cGFuZGVkLXdpZHRoOiAxLjM3NXJlbSAhZGVmYXVsdDtcbiRtZW51LWljb24tZXhwYW5kZWQtbGVmdC1zcGFjZXI6IDIuMjVyZW0gIWRlZmF1bHQ7XG4kbWVudS1pY29uLWV4cGFuZGVkLWZvbnQtc2l6ZTogMS4zNzVyZW0gIWRlZmF1bHQ7XG4kbWVudS1pY29uLWV4cGFuZGVkLXNwYWNlcjogMC41cmVtICFkZWZhdWx0O1xuXG4kbWVudS1hbmltYXRpb24tZHVyYXRpb246IDAuM3MgIWRlZmF1bHQ7XG4kbWVudS1tYXgtbGV2ZWxzOiA1ICFkZWZhdWx0O1xuXG4kbWVudS1kYXJrLWJvcmRlci1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpICFkZWZhdWx0O1xuJG1lbnUtZGFyay1tZW51LWJnOiByZ2JhKDAsIDAsIDAsIDAuMDYpICFkZWZhdWx0O1xuJG1lbnUtbGlnaHQtYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMDYpICFkZWZhdWx0O1xuJG1lbnUtbGlnaHQtbWVudS1iZzogcmdiYSgwLCAwLCAwLCAwLjA1KSAhZGVmYXVsdDtcblxuLy8gQ3VzdG9tIE9wdGlvbnNcbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcblxuJGN1c3RvbS1vcHRpb24tcGFkZGluZzogMS4wNjdlbSAhZGVmYXVsdDtcbiRjdXN0b20tb3B0aW9uLWN1cnNvcjogcG9pbnRlciAhZGVmYXVsdDtcbiRjdXN0b20tb3B0aW9uLWJvcmRlci1jb2xvcjogJGJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tb3B0aW9uLWJvcmRlci13aWR0aDogMXB4ICFkZWZhdWx0O1xuJGN1c3RvbS1vcHRpb24taW1hZ2UtYm9yZGVyLXdpZHRoOiAycHggIWRlZmF1bHQ7XG4kY3VzdG9tLW9wdGlvbi1ib3JkZXItaG92ZXItY29sb3I6ICRpbnB1dC1ib3JkZXItaG92ZXItY29sb3IgIWRlZmF1bHQ7XG5cbi8vIFN3aXRjaGVzXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5cbiRzd2l0Y2gtZm9udC1zaXplOiAwLjYyNXJlbSAhZGVmYXVsdDtcbiRzd2l0Y2gtYm9yZGVyLXJhZGl1czogMzByZW0gIWRlZmF1bHQ7XG5cbiRzd2l0Y2gtd2lkdGg6IDIuNXJlbSAhZGVmYXVsdDtcbiRzd2l0Y2gtd2lkdGgtc206IDEuODc1cmVtICFkZWZhdWx0O1xuJHN3aXRjaC13aWR0aC1sZzogMy4yNXJlbSAhZGVmYXVsdDtcblxuJHN3aXRjaC1oZWlnaHQ6IDEuMzVyZW0gIWRlZmF1bHQ7XG4kc3dpdGNoLWhlaWdodC1zbTogMS4xMjVyZW0gIWRlZmF1bHQ7XG4kc3dpdGNoLWhlaWdodC1sZzogMS43NXJlbSAhZGVmYXVsdDtcblxuJHN3aXRjaC1sYWJlbC1mb250LXNpemU6ICRmb250LXNpemUtYmFzZSAhZGVmYXVsdDtcbiRzd2l0Y2gtbGFiZWwtZm9udC1zaXplLXNtOiAkZm9udC1zaXplLXhzICFkZWZhdWx0O1xuJHN3aXRjaC1sYWJlbC1mb250LXNpemUtbGc6ICRmb250LXNpemUtbGcgIWRlZmF1bHQ7XG5cbiRzd2l0Y2gtbGFiZWwtbGluZS1oZWlnaHQ6IDEuNCAhZGVmYXVsdDtcbiRzd2l0Y2gtbGFiZWwtbGluZS1oZWlnaHQtc206IDEuNiAhZGVmYXVsdDtcbiRzd2l0Y2gtbGFiZWwtbGluZS1oZWlnaHQtbGc6IDEuNDcgIWRlZmF1bHQ7XG5cbiRzd2l0Y2gtc3BhY2VyLXg6IDAuNzVyZW0gIWRlZmF1bHQ7XG4kc3dpdGNoLXNwYWNlci15OiAwLjc1cmVtICFkZWZhdWx0O1xuJHN3aXRjaC1ndXR0ZXI6IDAuNXJlbSAhZGVmYXVsdDtcbiRzd2l0Y2gtaW5uZXItc3BhY2VyOiAwLjI1cmVtICFkZWZhdWx0O1xuJHN3aXRjaC1pbm5lci1zcGFjZXItc206IDAuMTdyZW0gIWRlZmF1bHQ7XG5cbiRzd2l0Y2gtc3F1YXJlLWJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuXG4kc3dpdGNoLWxhYmVsLWNvbG9yOiAkaGVhZGluZ3MtY29sb3IgIWRlZmF1bHQ7XG4kc3dpdGNoLWxhYmVsLWRpc2FibGVkLWNvbG9yOiAkdGV4dC1tdXRlZCAhZGVmYXVsdDtcbiRzd2l0Y2gtZGlzYWJsZWQtb3BhY2l0eTogMC40NSAhZGVmYXVsdDtcblxuJHN3aXRjaC1vZmYtY29sb3I6ICRncmF5LTQwMCAhZGVmYXVsdDtcbiRzd2l0Y2gtb2ZmLWJnOiByZ2JhLXRvLWhleCgkZ3JheS0xMDAsICRyZ2JhLXRvLWhleC1iZykgIWRlZmF1bHQ7XG4kc3dpdGNoLW9mZi1ib3JkZXI6IHJnYmEtdG8taGV4KCRncmF5LTEwMCwgJHJnYmEtdG8taGV4LWJnKSAhZGVmYXVsdDtcbiRzd2l0Y2gtaG9sZGVyLWJnOiAkd2hpdGUgIWRlZmF1bHQ7XG4kc3dpdGNoLWhvbGRlci1zaGFkb3c6ICRib3gtc2hhZG93LXhzICFkZWZhdWx0O1xuJHN3aXRjaC1mb2N1cy1ib3gtc2hhZG93OiAkaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG5cbi8vIEF2YXRhcnNcbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcblxuJGF2YXRhci1zaXplLXhsOiA0cmVtICFkZWZhdWx0O1xuJGF2YXRhci1zaXplLWxnOiAzLjVyZW0gIWRlZmF1bHQ7XG4kYXZhdGFyLXNpemUtbWQ6IDNyZW0gIWRlZmF1bHQ7XG4kYXZhdGFyLXNpemU6IDIuNXJlbSAhZGVmYXVsdDsgLy8gRGVmYXVsdFxuJGF2YXRhci1zaXplLXNtOiAycmVtICFkZWZhdWx0O1xuJGF2YXRhci1zaXplLXhzOiAxLjVyZW0gIWRlZmF1bHQ7XG5cbiRhdmF0YXItaW5pdGlhbC14bDogMS44NzVyZW0gIWRlZmF1bHQ7XG4kYXZhdGFyLWluaXRpYWwtbGc6IDEuNXJlbSAhZGVmYXVsdDtcbiRhdmF0YXItaW5pdGlhbC1tZDogMS4xMjVyZW0gIWRlZmF1bHQ7XG4kYXZhdGFyLWluaXRpYWw6ICRmb250LXNpemUtYmFzZSAhZGVmYXVsdDtcbiRhdmF0YXItaW5pdGlhbC1zbTogMC44MTI1cmVtICFkZWZhdWx0O1xuJGF2YXRhci1pbml0aWFsLXhzOiAwLjYyNXJlbSAhZGVmYXVsdDtcblxuJGF2YXRhci1ncm91cC1ib3JkZXI6ICRjYXJkLWJnICFkZWZhdWx0O1xuJGF2YXRhci1iZzogI2VlZWRmMCAhZGVmYXVsdDsgLy8gKEMpXG5cbi8vIFRpbWVsaW5lXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5cbiR0aW1lbGluZS1ib3JkZXItY29sb3I6ICRib3JkZXItY29sb3IgIWRlZmF1bHQ7XG5cbiR0aW1lbGluZS1pbmRpY2F0b3Itc2l6ZTogMnJlbSAhZGVmYXVsdDtcbiR0aW1lbGluZS1wb2ludC1zaXplOiAwLjc1cmVtICFkZWZhdWx0O1xuJHRpbWVsaW5lLXBvaW50LWNvbG9yOiAkcHJpbWFyeSAhZGVmYXVsdDtcbiR0aW1lbGluZS1wb2ludC1pbmRpY2F0b3ItY29sb3I6ICRwcmltYXJ5ICFkZWZhdWx0O1xuJHRpbWVsaW5lLWVuZC1pbmRpY2F0b3ItZm9udC1zaXplOiAxLjVyZW0gIWRlZmF1bHQ7XG4kdGltZWxpbmUtaXRlbS1taW4taGVpZ2h0OiA0cmVtICFkZWZhdWx0O1xuJHRpbWVsaW5lLWl0ZW0tcGFkZGluZy14OiAwICFkZWZhdWx0O1xuJHRpbWVsaW5lLWl0ZW0tcGFkZGluZy15OiAwLjVyZW0gIWRlZmF1bHQ7XG4kdGltZWxpbmUtaXRlbS1iZy1jb2xvcjogJGNhcmQtYmcgIWRlZmF1bHQ7XG4kdGltZWxpbmUtaXRlbS1ib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcblxuJHRpbWVsaW5lLWV2ZW50LXRpbWUtc2l6ZTogMC44NXJlbSAhZGVmYXVsdDtcbiR0aW1lbGluZS1ldmVudC10aW1lLWNvbG9yOiAkdGV4dC1tdXRlZCAhZGVmYXVsdDtcblxuLy8gVGV4dCBEaXZpZGVyXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4kZGl2aWRlci1jb2xvcjogJGdyYXktMjAwICFkZWZhdWx0O1xuXG4kZGl2aWRlci1tYXJnaW4teTogMXJlbSAhZGVmYXVsdDtcbiRkaXZpZGVyLW1hcmdpbi14OiAwICFkZWZhdWx0O1xuXG4kZGl2aWRlci10ZXh0LXBhZGRpbmcteTogMHJlbSAhZGVmYXVsdDtcbiRkaXZpZGVyLXRleHQtcGFkZGluZy14OiAxcmVtICFkZWZhdWx0O1xuXG4kZGl2aWRlci1mb250LXNpemU6ICRmb250LXNpemUtYmFzZSAhZGVmYXVsdDtcbiRkaXZpZGVyLXRleHQtY29sb3I6ICRoZWFkaW5ncy1jb2xvciAhZGVmYXVsdDtcbiRkaXZpZGVyLWljb24tc2l6ZTogMS4yNXJlbSAhZGVmYXVsdDtcbiIsIi8vIFZhcmlhYmxlc1xuLy9cbi8vIFZhcmlhYmxlcyBzaG91bGQgZm9sbG93IHRoZSBgJGNvbXBvbmVudC1zdGF0ZS1wcm9wZXJ0eS1zaXplYCBmb3JtdWxhIGZvclxuLy8gY29uc2lzdGVudCBuYW1pbmcuIEV4OiAkbmF2LWxpbmstZGlzYWJsZWQtY29sb3IgYW5kICRtb2RhbC1jb250ZW50LWJveC1zaGFkb3cteHMuXG4vL1xuLy8gKEMpIEN1c3RvbSB2YXJpYWJsZXMgZm9yIGV4dGVuZGVkIGNvbXBvbmVudHMgb2YgYm9vdHN0cmFwIG9ubHlcblxuLy8gKiBDb2xvciBzeXN0ZW1cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGdyYXktY29sb3ItdmFyaWFibGVzXG4kd2hpdGU6ICNmZmYgIWRlZmF1bHQ7XG4kYmxhY2s6ICMyZjJiM2QgIWRlZmF1bHQ7XG4kZ3JheS0yNTogcmdiYSgkYmxhY2ssIDAuMDE1KSAhZGVmYXVsdDsgLy8gKEMpXG4kZ3JheS01MDogcmdiYSgkYmxhY2ssIDAuMDYpICFkZWZhdWx0OyAvLyAoQylcbiRncmF5LTc1OiByZ2JhKCRibGFjaywgMC4wOCkgIWRlZmF1bHQ7IC8vIChDKVxuJGdyYXktMTAwOiByZ2JhKCRibGFjaywgMC4xKSAhZGVmYXVsdDtcbiRncmF5LTIwMDogcmdiYSgkYmxhY2ssIDAuMTIpICFkZWZhdWx0O1xuJGdyYXktMzAwOiByZ2JhKCRibGFjaywgMC4zKSAhZGVmYXVsdDtcbiRncmF5LTQwMDogcmdiYSgkYmxhY2ssIDAuNCkgIWRlZmF1bHQ7XG4kZ3JheS01MDA6IHJnYmEoJGJsYWNrLCAwLjUpICFkZWZhdWx0O1xuJGdyYXktNjAwOiByZ2JhKCRibGFjaywgMC42KSAhZGVmYXVsdDtcbiRncmF5LTcwMDogcmdiYSgkYmxhY2ssIDAuNykgIWRlZmF1bHQ7XG4kZ3JheS04MDA6IHJnYmEoJGJsYWNrLCAwLjgpICFkZWZhdWx0O1xuJGdyYXktOTAwOiByZ2JhKCRibGFjaywgMC45KSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZ3JheS1jb2xvci12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGdyYXktY29sb3JzLW1hcFxuJGdyYXlzOiAoXG4gICcyNSc6ICRncmF5LTI1LFxuICAnNTAnOiAkZ3JheS01MFxuKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZ3JheS1jb2xvcnMtbWFwXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBjb2xvci12YXJpYWJsZXNcbiRibHVlOiAjMDA3YmZmICFkZWZhdWx0O1xuJGluZGlnbzogIzY2MTBmMiAhZGVmYXVsdDtcbiRwdXJwbGU6ICM3MzY3ZjAgIWRlZmF1bHQ7XG4kcGluazogI2U4M2U4YyAhZGVmYXVsdDtcbiRyZWQ6ICNmZjRjNTEgIWRlZmF1bHQ7XG4kb3JhbmdlOiAjZmQ3ZTE0ICFkZWZhdWx0O1xuJHllbGxvdzogI2ZmOWY0MyAhZGVmYXVsdDtcbiRncmVlbjogIzI4Yzc2ZiAhZGVmYXVsdDtcbiR0ZWFsOiAjMjBjOTk3ICFkZWZhdWx0O1xuJGN5YW46ICMwMGJhZDEgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGNvbG9yLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdGhlbWUtY29sb3ItdmFyaWFibGVzXG4kcHJpbWFyeTogJHB1cnBsZSAhZGVmYXVsdDtcbiRzZWNvbmRhcnk6ICM4MDgzOTAgIWRlZmF1bHQ7XG4kc3VjY2VzczogJGdyZWVuICFkZWZhdWx0O1xuJGluZm86ICRjeWFuICFkZWZhdWx0O1xuJHdhcm5pbmc6ICR5ZWxsb3cgIWRlZmF1bHQ7XG4kZGFuZ2VyOiAkcmVkICFkZWZhdWx0O1xuJGxpZ2h0OiAjZGZkZmUzICFkZWZhdWx0O1xuJGRhcms6ICM0YjRiNGIgIWRlZmF1bHQ7XG4kZ3JheTogJGdyYXktNTAwICFkZWZhdWx0OyAvLyAoQylcbi8vIHNjc3MtZG9jcy1lbmQgdGhlbWUtY29sb3ItdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCB0aGVtZS1jb2xvcnMtbWFwXG4kdGhlbWUtY29sb3JzOiAoXG4gICdwcmltYXJ5JzogJHByaW1hcnksXG4gICdzZWNvbmRhcnknOiAkc2Vjb25kYXJ5LFxuICAnc3VjY2Vzcyc6ICRzdWNjZXNzLFxuICAnaW5mbyc6ICRpbmZvLFxuICAnd2FybmluZyc6ICR3YXJuaW5nLFxuICAnZGFuZ2VyJzogJGRhbmdlcixcbiAgJ2xpZ2h0JzogJGxpZ2h0LFxuICAnZGFyayc6ICRkYXJrLFxuICAnZ3JheSc6ICRncmF5XG4pICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB0aGVtZS1jb2xvcnMtbWFwXG5cbiRjb2xvci1zY2hlbWU6ICdsaWdodCcgIWRlZmF1bHQ7IC8vIChDKVxuLy8gVGhlIGNvbnRyYXN0IHJhdGlvIHRvIHJlYWNoIGFnYWluc3Qgd2hpdGUsIHRvIGRldGVybWluZSBpZiBjb2xvciBjaGFuZ2VzIGZyb20gXCJsaWdodFwiIHRvIFwiZGFya1wiLiBBY2NlcHRhYmxlIHZhbHVlcyBmb3IgV0NBRyAyLjAgYXJlIDMsIDQuNSBhbmQgNy5cbi8vIFNlZSBodHRwczovL3d3dy53My5vcmcvVFIvV0NBRzIwLyN2aXN1YWwtYXVkaW8tY29udHJhc3QtY29udHJhc3RcbiRtaW4tY29udHJhc3QtcmF0aW86IDEuNyAhZGVmYXVsdDtcblxuLy8gQ2hhcmFjdGVycyB3aGljaCBhcmUgZXNjYXBlZCBieSB0aGUgZXNjYXBlLXN2ZyBmdW5jdGlvblxuJGVzY2FwZWQtY2hhcmFjdGVyczogKCgnPCcsICclM2MnKSwgKCc+JywgJyUzZScpLCAoJyMnLCAnJTIzJyksICgnKCcsICclMjgnKSwgKCcpJywgJyUyOScpKSAhZGVmYXVsdDtcblxuLy8gKiBPcHRpb25zXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5cbiRlbmFibGUtbmVnYXRpdmUtbWFyZ2luczogdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtdmFsaWRhdGlvbi1pY29uczogZmFsc2UgIWRlZmF1bHQ7XG4kZW5hYmxlLWRhcmstbW9kZTogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vIFByZWZpeCBmb3IgOnJvb3QgQ1NTIHZhcmlhYmxlc1xuJHZhcmlhYmxlLXByZWZpeDogYnMtICFkZWZhdWx0O1xuJHByZWZpeDogJHZhcmlhYmxlLXByZWZpeCAhZGVmYXVsdDtcblxuLy8gKiBTcGFjaW5nXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5cbiRzcGFjZXI6IDFyZW0gIWRlZmF1bHQ7XG4kc3BhY2VyczogKFxuICAwOiAwLFxuICA1MDogJHNwYWNlciAqIDAuMTI1LFxuICAxOiAkc3BhY2VyICogMC4yNSxcbiAgMV81OiAkc3BhY2VyICogMC4zNzUsXG4gIDI6ICRzcGFjZXIgKiAwLjUsXG4gIDM6ICRzcGFjZXIgKiAwLjc1LFxuICA0OiAkc3BhY2VyLFxuICA1OiAkc3BhY2VyICogMS4yNSxcbiAgNjogJHNwYWNlciAqIDEuNSxcbiAgNzogJHNwYWNlciAqIDEuNzUsXG4gIDg6ICRzcGFjZXIgKiAyLFxuICA5OiAkc3BhY2VyICogMi4yNSxcbiAgMTA6ICRzcGFjZXIgKiAyLjUsXG4gIDExOiAkc3BhY2VyICogMi43NSxcbiAgMTI6ICRzcGFjZXIgKiAzXG4pICFkZWZhdWx0O1xuXG4kc2l6ZXMtcHg6IChcbiAgcHgtMTQ6IDE0cHgsXG4gIHB4LTE4OiAxOHB4LFxuICBweC0yMDogMjBweCxcbiAgcHgtMzA6IDMwcHgsXG4gIHB4LTQwOiA0MHB4LFxuICBweC01MDogNTBweCxcbiAgcHgtNTI6IDUycHgsXG4gIHB4LTc1OiA3NXB4LFxuICBweC0xMDA6IDEwMHB4LFxuICBweC0xMjA6IDEyMHB4LFxuICBweC0xNTA6IDE1MHB4LFxuICBweC0yMDA6IDIwMHB4LFxuICBweC0yNTA6IDI1MHB4LFxuICBweC0zMDA6IDMwMHB4LFxuICBweC0zNTA6IDM1MHB4LFxuICBweC00MDA6IDQwMHB4LFxuICBweC01MDA6IDUwMHB4LFxuICBweC02MDA6IDYwMHB4LFxuICBweC03MDA6IDcwMHB4LFxuICBweC04MDA6IDgwMHB4LFxuICBhdXRvOiBhdXRvXG4pICFkZWZhdWx0OyAvLyAoQylcblxuLy8gKiBCb2R5XG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5cbiRib2R5LWJnOiAjZjhmN2ZhICFkZWZhdWx0O1xuJHJnYmEtdG8taGV4LWJnOiAjZmZmICFkZWZhdWx0OyAvLyAoQylcbiRib2R5LWNvbG9yOiByZ2JhLXRvLWhleCgkZ3JheS03MDAsICRyZ2JhLXRvLWhleC1iZykgIWRlZmF1bHQ7XG4kcmdiYS10by1oZXgtYmctaW52ZXJ0ZWQ6ICMwMDAgIWRlZmF1bHQ7IC8vIChDKVxuXG4vLyAqIExpbmtzXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5cbiRsaW5rLWNvbG9yOiAkcHJpbWFyeSAhZGVmYXVsdDtcbiRsaW5rLWRlY29yYXRpb246IG5vbmUgIWRlZmF1bHQ7XG4kbGluay1zaGFkZS1wZXJjZW50YWdlOiAxMCUgIWRlZmF1bHQ7XG4kbGluay1ob3Zlci1jb2xvcjogc2hpZnQtY29sb3IoJGxpbmstY29sb3IsICRsaW5rLXNoYWRlLXBlcmNlbnRhZ2UpICFkZWZhdWx0O1xuJGxpbmstaG92ZXItZGVjb3JhdGlvbjogbnVsbCAhZGVmYXVsdDtcblxuLy8gKiBHcmlkXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5cbi8vIEdyaWQgY29udGFpbmVyc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgY29udGFpbmVyLW1heC13aWR0aHNcbiRjb250YWluZXItbWF4LXdpZHRoczogKFxuICBzbTogNTQwcHgsXG4gIG1kOiA3MjBweCxcbiAgbGc6IDk2MHB4LFxuICB4bDogMTE0MHB4LFxuICB4eGw6IDE0NDBweCAvLyBDdXN0b20geHhsIHNpemVcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGNvbnRhaW5lci1tYXgtd2lkdGhzXG5cbiRncmlkLWd1dHRlci13aWR0aDogMS41cmVtICFkZWZhdWx0O1xuJGNvbnRhaW5lci1wYWRkaW5nLXg6IDEuNXJlbSAhZGVmYXVsdDsgLy8gKEMpXG4kY29udGFpbmVyLXBhZGRpbmcteC1zbTogMXJlbSAhZGVmYXVsdDsgLy8gKEMpXG4kY29udGFpbmVyLXBhZGRpbmcteTogMS41cmVtICFkZWZhdWx0OyAvLyAoQylcblxuLy8gKiBDb21wb25lbnRzXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBib3JkZXItdmFyaWFibGVzXG4kYm9yZGVyLXdpZHRoOiAxcHggIWRlZmF1bHQ7XG4kYm9yZGVyLWNvbG9yOiByZ2JhLXRvLWhleCgkZ3JheS0yMDAsICRyZ2JhLXRvLWhleC1iZykgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGJvcmRlci12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGJvcmRlci1yYWRpdXMtdmFyaWFibGVzXG4kYm9yZGVyLXJhZGl1czogMC4zNzVyZW0gIWRlZmF1bHQ7XG4kYm9yZGVyLXJhZGl1cy14bDogMC42MjVyZW0gIWRlZmF1bHQ7IC8vIChDKVxuJGJvcmRlci1yYWRpdXMtbGc6IDAuNXJlbSAhZGVmYXVsdDtcbiRib3JkZXItcmFkaXVzLXNtOiAwLjI1cmVtICFkZWZhdWx0O1xuJGJvcmRlci1yYWRpdXMteHM6IDAuMTI1cmVtICFkZWZhdWx0OyAvLyAoQylcbiRib3JkZXItcmFkaXVzLXBpbGw6IDUwcmVtICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBib3JkZXItcmFkaXVzLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYm94LXNoYWRvdy12YXJpYWJsZXNcbiRib3gtc2hhZG93OiAwIDAuMTg3NXJlbSAwLjc1cmVtIDAgcmdiYSgkYmxhY2ssIDAuMTQpICFkZWZhdWx0O1xuJGJveC1zaGFkb3cteHM6IDAgMC4wNjI1cmVtIDAuMzc1cmVtIDAgcmdiYSgkYmxhY2ssIDAuMSkgIWRlZmF1bHQ7XG4kYm94LXNoYWRvdy1zbTogMCAwLjEyNXJlbSAwLjVyZW0gMCByZ2JhKCRibGFjaywgMC4xMikgIWRlZmF1bHQ7XG4kYm94LXNoYWRvdy1sZzogMCAwLjI1cmVtIDEuMTI1cmVtIDAgcmdiYSgkYmxhY2ssIDAuMTYpICFkZWZhdWx0O1xuJGJveC1zaGFkb3cteGw6IDAgMC4zMTI1cmVtIDEuODc1cmVtIDAgcmdiYSgkYmxhY2ssIDAuMTgpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBib3gtc2hhZG93LXZhcmlhYmxlc1xuXG4kY29tcG9uZW50LWFjdGl2ZS1jb2xvcjogJHdoaXRlICFkZWZhdWx0O1xuJGNvbXBvbmVudC1hY3RpdmUtYmc6ICRwcmltYXJ5ICFkZWZhdWx0O1xuXG4kY29tcG9uZW50LWhvdmVyLWNvbG9yOiAkcHJpbWFyeSAhZGVmYXVsdDsgLy8gKEMpXG4kY29tcG9uZW50LWhvdmVyLWJnOiByZ2JhKCRwcmltYXJ5LCAwLjE2KSAhZGVmYXVsdDsgLy8gKEMpXG5cbiRjb21wb25lbnQtbGluZS1oZWlnaHQ6IDEuNTQgIWRlZmF1bHQ7IC8vIChDKVxuJGNvbXBvbmVudC1mb2N1cy1zaGFkb3ctd2lkdGg6IDJweCAhZGVmYXVsdDsgLy8gKEMpXG5cbiRmbG9hdGluZy1jb21wb25lbnQtYm9yZGVyLWNvbG9yOiByZ2JhKCRibGFjaywgMC4wNSkgIWRlZmF1bHQ7IC8vIChDKVxuJGZsb2F0aW5nLWNvbXBvbmVudC1zaGFkb3c6IDAgMC4zMXJlbSAxLjI1cmVtIDAgJGdyYXktNDAwICFkZWZhdWx0OyAvLyAoQykgdXNlZCBmb3IgbW9kYWwgYW5kIHJhbmdlXG5cbiRoci1jb2xvcjogJGJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRoci1vcGFjaXR5OiAxICFkZWZhdWx0O1xuJGJvcmRlcmVkLXJvdy1ib3JkZXItY29sb3I6ICRoci1jb2xvciAhZGVmYXVsdDsgLy8gKEMpXG5cbiRmb2N1cy1yaW5nLXdpZHRoOiAwLjE1cmVtICFkZWZhdWx0O1xuJGZvY3VzLXJpbmctb3BhY2l0eTogMC43NSAhZGVmYXVsdDtcbiRmb2N1cy1yaW5nLWNvbG9yOiByZ2JhKCRncmF5LTcwMCwgJGZvY3VzLXJpbmctb3BhY2l0eSkgIWRlZmF1bHQ7XG5cbi8vIHNjc3MtZG9jcy1zdGFydCBjYXJldC12YXJpYWJsZXNcbiRjYXJldC13aWR0aDogMC41NWVtICFkZWZhdWx0O1xuJGNhcmV0LXZlcnRpY2FsLWFsaWduOiBtaWRkbGUgIWRlZmF1bHQ7XG4kY2FyZXQtc3BhY2luZzogMC41ZW0gIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGNhcmV0LXZhcmlhYmxlc1xuXG4vLyAqIFR5cG9ncmFwaHlcbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZvbnQtdmFyaWFibGVzXG4kZm9udC1mYW1pbHktc2Fucy1zZXJpZjpcbiAgJ1B1YmxpYyBTYW5zJyxcbiAgLWFwcGxlLXN5c3RlbSxcbiAgQmxpbmtNYWNTeXN0ZW1Gb250LFxuICAnU2Vnb2UgVUknLFxuICAnT3h5Z2VuJyxcbiAgJ1VidW50dScsXG4gICdDYW50YXJlbGwnLFxuICAnRmlyYSBTYW5zJyxcbiAgJ0Ryb2lkIFNhbnMnLFxuICAnSGVsdmV0aWNhIE5ldWUnLFxuICBzYW5zLXNlcmlmICFkZWZhdWx0O1xuJGZvbnQtZmFtaWx5LXNlcmlmOiBHZW9yZ2lhLCAnVGltZXMgTmV3IFJvbWFuJywgc2VyaWYgIWRlZmF1bHQ7IC8vIChDKVxuJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTogJ1NGTW9uby1SZWd1bGFyJywgTWVubG8sIE1vbmFjbywgQ29uc29sYXMsICdMaWJlcmF0aW9uIE1vbm8nLCAnQ291cmllciBOZXcnLCBtb25vc3BhY2UgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZW5hYmxlIHZhbHVlLWtleXdvcmQtY2FzZVxuJGZvbnQtZmFtaWx5LWJhc2U6IHZhcigtLSN7JHZhcmlhYmxlLXByZWZpeH1mb250LXNhbnMtc2VyaWYpICFkZWZhdWx0O1xuJGZvbnQtZmFtaWx5LWNvZGU6IHZhcigtLSN7JHZhcmlhYmxlLXByZWZpeH1mb250LW1vbm9zcGFjZSkgIWRlZmF1bHQ7XG5cbi8vICRmb250LXNpemUtcm9vdCBlZmZlY3RzIHRoZSB2YWx1ZSBvZiBgcmVtYCwgd2hpY2ggaXMgdXNlZCBmb3IgYXMgd2VsbCBmb250IHNpemVzLCBwYWRkaW5ncyBhbmQgbWFyZ2luc1xuLy8gJGZvbnQtc2l6ZS1iYXNlIGVmZmVjdHMgdGhlIGZvbnQgc2l6ZSBvZiB0aGUgYm9keSB0ZXh0XG4kZm9udC1zaXplLXJvb3Q6IDE2cHggIWRlZmF1bHQ7XG4kZm9udC1zaXplLWJhc2U6IDAuOTM3NXJlbSAhZGVmYXVsdDsgLy8gQXNzdW1lcyB0aGUgYnJvd3NlciBkZWZhdWx0LCB0eXBpY2FsbHkgYDE2cHhgXG4kZm9udC1zaXplLXhsOiAxLjE4NzVyZW0gIWRlZmF1bHQ7IC8vIChDKVxuJGZvbnQtc2l6ZS1sZzogMXJlbSAhZGVmYXVsdDtcbiRmb250LXNpemUtc206IDAuODEyNXJlbSAhZGVmYXVsdDtcbiRmb250LXNpemUteHM6IDAuNjg3NXJlbSAhZGVmYXVsdDsgLy8gKEMpXG5cbiRmb250LXdlaWdodC1saWdodGVyOiBsaWdodGVyICFkZWZhdWx0O1xuJGZvbnQtd2VpZ2h0LWxpZ2h0OiAzMDAgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtbm9ybWFsOiA0MDAgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtbWVkaXVtOiA1MDAgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtc2VtaWJvbGQ6IDYwMCAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1ib2xkOiA3MDAgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtZXh0cmFib2xkOiA4MDAgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtYm9sZGVyOiBib2xkZXIgIWRlZmF1bHQ7XG5cbiRsaW5lLWhlaWdodC1iYXNlOiAxLjM3NSAhZGVmYXVsdDtcbiRsaW5lLWhlaWdodC14bDogMS43NSAhZGVmYXVsdDsgLy8gKEMpXG4kbGluZS1oZWlnaHQtbGc6IDEuNjI1ICFkZWZhdWx0O1xuJGxpbmUtaGVpZ2h0LXNtOiAxLjEyNSAhZGVmYXVsdDtcbiRsaW5lLWhlaWdodC14czogMSAhZGVmYXVsdDsgLy8gKEMpXG5cbiRoMS1mb250LXNpemU6IDIuODc1cmVtICFkZWZhdWx0O1xuJGgyLWZvbnQtc2l6ZTogMi4zNzVyZW0gIWRlZmF1bHQ7XG4kaDMtZm9udC1zaXplOiAxLjc1cmVtICFkZWZhdWx0O1xuJGg0LWZvbnQtc2l6ZTogMS41cmVtICFkZWZhdWx0O1xuJGg1LWZvbnQtc2l6ZTogMS4xMjVyZW0gIWRlZmF1bHQ7XG4kaDYtZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG5cbiRoMS1saW5lLWhlaWdodDogNC4yNXJlbSAhZGVmYXVsdDtcbiRoMi1saW5lLWhlaWdodDogMy41cmVtICFkZWZhdWx0O1xuJGgzLWxpbmUtaGVpZ2h0OiAyLjYyNXJlbSAhZGVmYXVsdDtcbiRoNC1saW5lLWhlaWdodDogMi4zNzVyZW0gIWRlZmF1bHQ7XG4kaDUtbGluZS1oZWlnaHQ6IDEuNzVyZW0gIWRlZmF1bHQ7XG4kaDYtbGluZS1oZWlnaHQ6IDEuMzc1cmVtICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb250LXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgaGVhZGluZ3MtdmFyaWFibGVzXG4kaGVhZGluZ3MtbWFyZ2luLWJvdHRvbTogJHNwYWNlciAhZGVmYXVsdDtcbiRoZWFkaW5ncy1mb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW1lZGl1bSAhZGVmYXVsdDtcbiRoZWFkaW5ncy1saW5lLWhlaWdodDogMS4zNyAhZGVmYXVsdDtcbiRoZWFkaW5ncy1jb2xvcjogcmdiYS10by1oZXgoJGdyYXktOTAwLCAkcmdiYS10by1oZXgtYmcpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBoZWFkaW5ncy12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGRpc3BsYXktaGVhZGluZ3NcbiRkaXNwbGF5LWZvbnQtc2l6ZXM6IChcbiAgMTogNC43NXJlbSxcbiAgMjogNC4zNzVyZW0sXG4gIDM6IDMuODc1cmVtLFxuICA0OiAzLjM3NXJlbSxcbiAgNTogM3JlbSxcbiAgNjogMi42MjVyZW1cbikgIWRlZmF1bHQ7XG5cbiRkaXNwbGF5LWZvbnQtd2VpZ2h0OiA1MDAgIWRlZmF1bHQ7XG5cbi8vIHNjc3MtZG9jcy1lbmQgZGlzcGxheS1oZWFkaW5nc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdHlwZS12YXJpYWJsZXNcblxuJGxlYWQtZm9udC1zaXplOiAkc3BhY2VyICogMS4xMjUgIWRlZmF1bHQ7XG5cbiR0aW55LWZvbnQtc2l6ZTogNzAlICFkZWZhdWx0OyAvLyAoQylcbiRzbWFsbC1mb250LXNpemU6IDAuODEyNXJlbSAhZGVmYXVsdDtcbiRiaWctZm9udC1zaXplOiAxMTIlICFkZWZhdWx0OyAvLyAoQylcbiRsYXJnZS1mb250LXNpemU6IDE1MCUgIWRlZmF1bHQ7IC8vIChDKVxuJHhsYXJnZS1mb250LXNpemU6IDE3MCUgIWRlZmF1bHQ7IC8vIChDKVxuXG4kdGV4dC1tdXRlZDogcmdiYS10by1oZXgoJGdyYXktNDAwLCAkcmdiYS10by1oZXgtYmcpICFkZWZhdWx0O1xuJHRleHQtbXV0ZWQtaG92ZXI6IHJnYmEtdG8taGV4KCRncmF5LTYwMCwgJHJnYmEtdG8taGV4LWJnKSAhZGVmYXVsdDsgLy8gKEMpXG5cbiRibG9ja3F1b3RlLWZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlICFkZWZhdWx0O1xuXG4kdGV4dC1saWdodDogcmdiYS10by1oZXgoJGdyYXktNDAwLCAkcmdiYS10by1oZXgtYmcpICFkZWZhdWx0OyAvLyAoQylcbiR0ZXh0LWxpZ2h0ZXI6IHJnYmEtdG8taGV4KCRncmF5LTMwMCwgJHJnYmEtdG8taGV4LWJnKSAhZGVmYXVsdDsgLy8gKEMpXG4kdGV4dC1saWdodGVzdDogcmdiYS10by1oZXgoJGdyYXktMjAwLCAkcmdiYS10by1oZXgtYmcpICFkZWZhdWx0OyAvLyAoQylcblxuJGR0LWZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbWVkaXVtICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB0eXBlLXZhcmlhYmxlc1xuXG4vLyAqIFotaW5kZXggbWFzdGVyIGxpc3Rcbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcblxuJHppbmRleC1tZW51LWZpeGVkOiAxMDgwICFkZWZhdWx0O1xuJHppbmRleC1tb2RhbDogMTA5MCAhZGVmYXVsdDtcbiR6aW5kZXgtbW9kYWwtYmFja2Ryb3A6ICR6aW5kZXgtbW9kYWwgLSAxICFkZWZhdWx0O1xuLy8gJHppbmRleC1tb2RhbC10b3A6IDEwOTAgIWRlZmF1bHQ7IC8vIChDKVxuJHppbmRleC1vZmZjYW52YXM6IDEwOTAgIWRlZmF1bHQ7XG4kemluZGV4LW9mZmNhbnZhcy1iYWNrZHJvcDogJHppbmRleC1vZmZjYW52YXMgLSAxICFkZWZhdWx0O1xuJHppbmRleC1sYXlvdXQtbW9iaWxlOiAxMTAwICFkZWZhdWx0OyAvLyAoQylcbiR6aW5kZXgtcG9wb3ZlcjogMTA5MSAhZGVmYXVsdDtcbiR6aW5kZXgtdG9hc3Q6IDEwOTUgIWRlZmF1bHQ7IC8vIChDKVxuJHppbmRleC10b29sdGlwOiAxMDk5ICFkZWZhdWx0O1xuJHppbmRleC1ub3RpZmljYXRpb246IDk5OTk5OSAhZGVmYXVsdDsgLy8gKEMpXG5cbi8vIHNjc3MtZG9jcy1zdGFydCB6aW5kZXgtbGV2ZWxzLW1hcFxuJHppbmRleC1sZXZlbHM6IChcbiAgbjE6IC0xLFxuICAwOiAwLFxuICAxOiAxLFxuICAyOiAyLFxuICAzOiAzLFxuICA0OiA0LFxuICA1OiA1XG4pICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB6aW5kZXgtbGV2ZWxzLW1hcFxuXG4vLyAqIFRhYmxlc1xuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdGFibGUtdmFyaWFibGVzXG4kdGFibGUtaGVhZC1wYWRkaW5nLXk6IDEuMTYxcmVtICFkZWZhdWx0OyAvLyAoQylcbiR0YWJsZS1oZWFkLXBhZGRpbmcteS1zbTogMS4xMTRyZW0gIWRlZmF1bHQ7IC8vIChDKVxuJHRhYmxlLWNlbGwtcGFkZGluZy15OiAwLjc4MnJlbSAhZGVmYXVsdDtcbiR0YWJsZS1jZWxsLXBhZGRpbmcteDogMS4yNXJlbSAhZGVmYXVsdDtcbiR0YWJsZS1jZWxsLXBhZGRpbmcteS1zbTogMC41OTRyZW0gIWRlZmF1bHQ7XG4kdGFibGUtY2VsbC1wYWRkaW5nLXgtc206ICR0YWJsZS1jZWxsLXBhZGRpbmcteCAhZGVmYXVsdDtcblxuJHRhYmxlLWNlbGwtdmVydGljYWwtYWxpZ246IG1pZGRsZSAhZGVmYXVsdDtcblxuJHRhYmxlLXRoLWNvbG9yOiAkaGVhZGluZ3MtY29sb3IgIWRlZmF1bHQ7IC8vIChDKVxuJHRhYmxlLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9Ym9keS1jb2xvcikgIWRlZmF1bHQ7XG4kdGFibGUtYmc6IHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuXG4kdGFibGUtdGgtZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1tZWRpdW0gIWRlZmF1bHQ7XG5cbiR0YWJsZS1zdHJpcGVkLWJnLWZhY3RvcjogMC4wNiAhZGVmYXVsdDtcbiR0YWJsZS1zdHJpcGVkLWJnOiByZ2JhLXRvLWhleChyZ2JhKCRibGFjaywgJHRhYmxlLXN0cmlwZWQtYmctZmFjdG9yKSwgJHJnYmEtdG8taGV4LWJnKSAhZGVmYXVsdDtcblxuJHRhYmxlLWFjdGl2ZS1jb2xvcjogJGJvZHktY29sb3IgIWRlZmF1bHQ7XG4kdGFibGUtYWN0aXZlLWJnLWZhY3RvcjogMC4wOCAhZGVmYXVsdDtcbiR0YWJsZS1hY3RpdmUtYmc6IHJnYmEoJHByaW1hcnksICR0YWJsZS1hY3RpdmUtYmctZmFjdG9yKSAhZGVmYXVsdDtcblxuJHRhYmxlLWhvdmVyLWJnLWZhY3RvcjogMC4wNiAhZGVmYXVsdDtcbiR0YWJsZS1ob3Zlci1iZzogcmdiYSgkYmxhY2ssICR0YWJsZS1ob3Zlci1iZy1mYWN0b3IpICFkZWZhdWx0O1xuXG4kdGFibGUtYm9yZGVyLWZhY3RvcjogMC4xMiAhZGVmYXVsdDtcbiR0YWJsZS1ib3JkZXItY29sb3I6IHJnYmEtdG8taGV4KHJnYmEoJGJsYWNrLCAkdGFibGUtYm9yZGVyLWZhY3RvciksICRyZ2JhLXRvLWhleC1iZykgIWRlZmF1bHQ7XG5cbiR0YWJsZS1zdHJpcGVkLW9yZGVyOiBldmVuICFkZWZhdWx0O1xuXG4kdGFibGUtZ3JvdXAtc2VwYXJhdG9yLWNvbG9yOiAkdGFibGUtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuXG4kdGFibGUtY2FwdGlvbi1jb2xvcjogJHRleHQtbXV0ZWQgIWRlZmF1bHQ7XG5cbiR0YWJsZS1iZy1zY2FsZTogLTg0JSAhZGVmYXVsdDtcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRhYmxlLWxvb3BcbiR0YWJsZS12YXJpYW50czogKFxuICAncHJpbWFyeSc6IHNoaWZ0LWNvbG9yKCRwcmltYXJ5LCAkdGFibGUtYmctc2NhbGUpLFxuICAnc2Vjb25kYXJ5Jzogc2hpZnQtY29sb3IoJHNlY29uZGFyeSwgJHRhYmxlLWJnLXNjYWxlKSxcbiAgJ3N1Y2Nlc3MnOiBzaGlmdC1jb2xvcigkc3VjY2VzcywgJHRhYmxlLWJnLXNjYWxlKSxcbiAgJ2luZm8nOiBzaGlmdC1jb2xvcigkaW5mbywgJHRhYmxlLWJnLXNjYWxlKSxcbiAgJ3dhcm5pbmcnOiBzaGlmdC1jb2xvcigkd2FybmluZywgJHRhYmxlLWJnLXNjYWxlKSxcbiAgJ2Rhbmdlcic6IHNoaWZ0LWNvbG9yKCRkYW5nZXIsICR0YWJsZS1iZy1zY2FsZSksXG4gICdsaWdodCc6IHJnYmEtdG8taGV4KCRncmF5LTEwMCwgJHJnYmEtdG8taGV4LWJnKSxcbiAgJ2RhcmsnOiAkZGFya1xuKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgdGFibGUtbG9vcFxuLy8gKiBCdXR0b25zICsgRm9ybXNcbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcblxuJGlucHV0LWJ0bi1wYWRkaW5nLXk6IDAuNnJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tcGFkZGluZy14OiAxLjI1cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb250LXNpemU6ICRmb250LXNpemUtYmFzZSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xuXG4kaW5wdXQtYnRuLWZvY3VzLXdpZHRoOiAwLjA1cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb2N1cy1jb2xvci1vcGFjaXR5OiAwLjEgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvY3VzLWNvbG9yOiByZ2JhKCRjb21wb25lbnQtYWN0aXZlLWJnLCAkaW5wdXQtYnRuLWZvY3VzLWNvbG9yLW9wYWNpdHkpICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb2N1cy1ibHVyOiAwLjI1cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb2N1cy1ib3gtc2hhZG93OiAwIDAgJGlucHV0LWJ0bi1mb2N1cy1ibHVyICRpbnB1dC1idG4tZm9jdXMtd2lkdGggJGlucHV0LWJ0bi1mb2N1cy1jb2xvciAhZGVmYXVsdDtcblxuJGlucHV0LWJ0bi1wYWRkaW5nLXkteHM6IDAuMTc1cmVtICFkZWZhdWx0OyAvLyAoQylcbiRpbnB1dC1idG4tcGFkZGluZy14LXhzOiAwLjc1cmVtICFkZWZhdWx0OyAvLyAoQylcbiRpbnB1dC1idG4tZm9udC1zaXplLXhzOiAkZm9udC1zaXplLXhzICFkZWZhdWx0OyAvLyAoQylcbiRpbnB1dC1idG4tbGluZS1oZWlnaHQteHM6ICRsaW5lLWhlaWdodC14cyAhZGVmYXVsdDsgLy8gKEMpXG5cbiRpbnB1dC1idG4tcGFkZGluZy15LXNtOiAwLjQxcmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1wYWRkaW5nLXgtc206IDAuODc1cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb250LXNpemUtc206IDAuODEyNXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tbGluZS1oZWlnaHQtc206ICRsaW5lLWhlaWdodC1zbSAhZGVmYXVsdDtcblxuJGlucHV0LWJ0bi1wYWRkaW5nLXktbGc6IDAuODRyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLXBhZGRpbmcteC1sZzogMS42MjVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvbnQtc2l6ZS1sZzogMS4wNjI1cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1saW5lLWhlaWdodC1sZzogJGxpbmUtaGVpZ2h0LWxnICFkZWZhdWx0O1xuXG4kaW5wdXQtYnRuLXBhZGRpbmcteS14bDogMC44NzVyZW0gIWRlZmF1bHQ7IC8vIChDKVxuJGlucHV0LWJ0bi1wYWRkaW5nLXgteGw6IDEuNzVyZW0gIWRlZmF1bHQ7IC8vIChDKVxuJGlucHV0LWJ0bi1mb250LXNpemUteGw6ICRmb250LXNpemUteGwgIWRlZmF1bHQ7IC8vIChDKVxuJGlucHV0LWJ0bi1saW5lLWhlaWdodC14bDogJGxpbmUtaGVpZ2h0LWxnICFkZWZhdWx0OyAvLyAoQylcblxuLy8gKiBCdXR0b25zXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5cbiRidG4tcGFkZGluZy15OiAwLjQ4MTJyZW0gIWRlZmF1bHQ7XG4kYnRuLXBhZGRpbmcteDogMS4yNXJlbSAhZGVmYXVsdDtcblxuJGJ0bi1wYWRkaW5nLXktc206IDAuMzE3cmVtICFkZWZhdWx0O1xuJGJ0bi1wYWRkaW5nLXgtc206IDAuODc1cmVtICFkZWZhdWx0O1xuXG4kYnRuLXBhZGRpbmcteS1sZzogMC43MDhyZW0gIWRlZmF1bHQ7XG4kYnRuLXBhZGRpbmcteC1sZzogMS42MjVyZW0gIWRlZmF1bHQ7XG5cbiRidG4tcGFkZGluZy15LXhzOiAwLjE1M3JlbSAhZGVmYXVsdDsgLy8gKEMpXG4kYnRuLXBhZGRpbmcteC14czogJGlucHV0LWJ0bi1wYWRkaW5nLXgteHMgIWRlZmF1bHQ7IC8vIChDKVxuJGJ0bi1mb250LXNpemUteHM6ICRmb250LXNpemUteHMgIWRlZmF1bHQ7IC8vIChDKVxuXG4kYnRuLXBhZGRpbmcteS14bDogMC44MDlyZW0gIWRlZmF1bHQ7IC8vIChDKVxuJGJ0bi1wYWRkaW5nLXgteGw6IDEuNzVyZW0gIWRlZmF1bHQ7IC8vIChDKVxuJGJ0bi1mb250LXNpemUteGw6ICRmb250LXNpemUteGwgIWRlZmF1bHQ7IC8vIChDKVxuXG4kYnRuLWxpbmUtaGVpZ2h0LXhzOiAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDsgLy8gKEMpXG4kYnRuLWxpbmUtaGVpZ2h0LXNtOiAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDsgLy8gKEMpXG4kYnRuLWxpbmUtaGVpZ2h0LWxnOiAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDsgLy8gKEMpXG4kYnRuLWxpbmUtaGVpZ2h0LXhsOiAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDsgLy8gKEMpXG5cbiRidG4tZm9udC13ZWlnaHQ6IDUwMCAhZGVmYXVsdDtcbiRidG4tYm94LXNoYWRvdzogbm9uZSAhZGVmYXVsdDtcbiRidG4tZm9jdXMtYm94LXNoYWRvdzogbm9uZSAhZGVmYXVsdDtcbiRidG4tZGlzYWJsZWQtb3BhY2l0eTogMC40NSAhZGVmYXVsdDtcbiRidG4tYWN0aXZlLWJveC1zaGFkb3c6IG5vbmUgIWRlZmF1bHQ7XG5cbiRidG4tYm9yZGVyLXJhZGl1cy14czogJGJvcmRlci1yYWRpdXMteHMgIWRlZmF1bHQ7IC8vIChDKVxuJGJ0bi1ib3JkZXItcmFkaXVzLXhsOiAkYm9yZGVyLXJhZGl1cy14bCAhZGVmYXVsdDsgLy8gKEMpXG5cbiRidG4tdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG5cbiRidG4tbGFiZWwtYmctc2hhZGUtYW1vdW50OiA4NCUgIWRlZmF1bHQ7IC8vIChDKVxuJGJ0bi1sYWJlbC1iZy10aW50LWFtb3VudDogODQlICFkZWZhdWx0OyAvLyAoQylcbiRidG4tbGFiZWwtaG92ZXItc2hhZGUtYW1vdW50OiA3NiUgIWRlZmF1bHQ7IC8vIChDKVxuJGJ0bi1sYWJlbC1ob3Zlci10aW50LWFtb3VudDogNzYlICFkZWZhdWx0OyAvLyAoQylcbiRidG4tbGFiZWwtZGlzYWJsZWQtYmctc2hhZGUtYW1vdW50OiA4NCUgIWRlZmF1bHQ7IC8vIChDKVxuJGJ0bi1sYWJlbC1kaXNhYmxlZC1iZy10aW50LWFtb3VudDogODUlICFkZWZhdWx0OyAvLyAoQylcbiRidG4tbGFiZWwtYm9yZGVyLXRpbnQtYW1vdW50OiA2OCUgIWRlZmF1bHQ7IC8vIChDKVxuJGJ0bi1sYWJlbC1ib3JkZXItc2hhZGUtYW1vdW50OiA2OCUgIWRlZmF1bHQ7IC8vIChDKVxuXG4kYnRuLWhvdmVyLWJnLXNoYWRlLWFtb3VudDogMTAlICFkZWZhdWx0O1xuJGJ0bi1ob3Zlci1iZy10aW50LWFtb3VudDogMjUlICFkZWZhdWx0O1xuJGJ0bi1ob3Zlci1ib3JkZXItc2hhZGUtYW1vdW50OiAxMCUgIWRlZmF1bHQ7XG4kYnRuLWhvdmVyLWJvcmRlci10aW50LWFtb3VudDogMTAlICFkZWZhdWx0O1xuJGJ0bi1hY3RpdmUtYmctc2hhZGUtYW1vdW50OiAxMCUgIWRlZmF1bHQ7XG4kYnRuLWFjdGl2ZS1iZy10aW50LWFtb3VudDogMjAlICFkZWZhdWx0O1xuJGJ0bi1hY3RpdmUtYm9yZGVyLXNoYWRlLWFtb3VudDogMTAlICFkZWZhdWx0O1xuJGJ0bi1hY3RpdmUtYm9yZGVyLXRpbnQtYW1vdW50OiAxMCUgIWRlZmF1bHQ7XG5cbi8vIE91dGxpbmUgYnV0dG9uc1xuJGJ0bi1vdXRsaW5lLWhvdmVyLWJnLXNoYWRlLWFtb3VudDogOCUgIWRlZmF1bHQ7IC8vIChDKVxuJGJ0bi1vdXRsaW5lLWhvdmVyLWJnLXRpbnQtYW1vdW50OiA5MiUgIWRlZmF1bHQ7IC8vIChDKVxuJGJ0bi1vdXRsaW5lLWFjdGl2ZS1iZy1zaGFkZS1hbW91bnQ6IDglICFkZWZhdWx0OyAvLyAoQylcbiRidG4tb3V0bGluZS1hY3RpdmUtYmctdGludC1hbW91bnQ6IDkyJSAhZGVmYXVsdDsgLy8gKEMpXG5cbi8vIHRleHQgYnV0dG9uc1xuJGJ0bi10ZXh0LWhvdmVyLXNoYWRlLWFtb3VudDogOCUgIWRlZmF1bHQ7IC8vIChDKVxuJGJ0bi10ZXh0LWhvdmVyLXRpbnQtYW1vdW50OiA5MiUgIWRlZmF1bHQ7IC8vIChDKVxuJGJ0bi10ZXh0LWZvY3VzLXNoYWRlLWFtb3VudDogOCUgIWRlZmF1bHQ7IC8vIChDKVxuJGJ0bi10ZXh0LWZvY3VzLXRpbnQtYW1vdW50OiA5MiUgIWRlZmF1bHQ7IC8vIChDKVxuJGJ0bi10ZXh0LWFjdGl2ZS1zaGFkZS1hbW91bnQ6IDglICFkZWZhdWx0OyAvLyAoQylcbiRidG4tdGV4dC1hY3RpdmUtdGludC1hbW91bnQ6IDkyJSAhZGVmYXVsdDsgLy8gKEMpXG5cbi8vICogRm9ybXNcbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZvcm0tdGV4dC12YXJpYWJsZXNcbiRmb3JtLXRleHQtZm9udC1zaXplOiAkaW5wdXQtYnRuLWZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiRmb3JtLXRleHQtY29sb3I6ICRib2R5LWNvbG9yICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLXRleHQtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLWxhYmVsLXZhcmlhYmxlc1xuJGZvcm0tbGFiZWwtbWFyZ2luLWJvdHRvbTogMC4yNXJlbSAhZGVmYXVsdDtcbiRmb3JtLWxhYmVsLWZvbnQtc2l6ZTogJGlucHV0LWJ0bi1mb250LXNpemUtc20gIWRlZmF1bHQ7XG4kZm9ybS1sYWJlbC1jb2xvcjogJGhlYWRpbmdzLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tbGFiZWwtbGV0dGVyLXNwYWNpbmc6IGluaGVyaXQgIWRlZmF1bHQ7IC8vKEMpXG4kZm9ybS1sYWJlbC10ZXh0LXRyYW5zZm9ybTogaW5oZXJpdCAhZGVmYXVsdDsgLy8oQylcbi8vIHNjc3MtZG9jcy1lbmQgZm9ybS1sYWJlbC12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZvcm0taW5wdXQtdmFyaWFibGVzXG4kaW5wdXQtcGFkZGluZy15OiAwLjQyNnJlbSAhZGVmYXVsdDtcbiRpbnB1dC1wYWRkaW5nLXg6IDAuOTM3NXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1saW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWxnICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtc2l6ZTogJGlucHV0LWJ0bi1mb250LXNpemUgIWRlZmF1bHQ7XG5cbiRpbnB1dC1wYWRkaW5nLXktc206IDAuMjE1cmVtICFkZWZhdWx0O1xuJGlucHV0LXBhZGRpbmcteC1zbTogMC43NXJlbSAhZGVmYXVsdDtcblxuJGlucHV0LXBhZGRpbmcteS1sZzogMC41NzVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtcGFkZGluZy14LWxnOiAkc3BhY2VyICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtc2l6ZS1sZzogMS4wNjI1cmVtICFkZWZhdWx0O1xuXG4kaW5wdXQtYmc6IHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuJGlucHV0LWRpc2FibGVkLWNvbG9yOiAkdGV4dC1tdXRlZCAhZGVmYXVsdDtcbiRpbnB1dC1kaXNhYmxlZC1iZzogcmdiYS10by1oZXgoJGdyYXktNTAsICRyZ2JhLXRvLWhleC1iZykgIWRlZmF1bHQ7XG4kaW5wdXQtZGlzYWJsZWQtYm9yZGVyLWNvbG9yOiByZ2JhLXRvLWhleChyZ2JhKCRibGFjaywgMC4yNCksICRyZ2JhLXRvLWhleC1iZykgIWRlZmF1bHQ7XG5cbiRpbnB1dC1jb2xvcjogJGhlYWRpbmdzLWNvbG9yICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci1jb2xvcjogcmdiYS10by1oZXgocmdiYSgkYmxhY2ssIDAuMjIpLCAkcmdiYS10by1oZXgtYmcpICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci1ob3Zlci1jb2xvcjogcmdiYS10by1oZXgoJGdyYXktNjAwLCAkcmdiYS10by1oZXgtYmcpICFkZWZhdWx0OyAvLyAoQylcblxuJGlucHV0LWZvY3VzLWJvcmRlci13aWR0aDogMnB4ICFkZWZhdWx0OyAvLyhDKVxuJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvcjogJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kaW5wdXQtZm9jdXMtYm94LXNoYWRvdzogMCAycHggNnB4IDAgcmdiYSgkY29tcG9uZW50LWFjdGl2ZS1iZywgMC4zKSAhZGVmYXVsdDtcblxuJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yOiAkdGV4dC1tdXRlZCAhZGVmYXVsdDtcbiRpbnB1dC1wbGFpbnRleHQtY29sb3I6ICRoZWFkaW5ncy1jb2xvciAhZGVmYXVsdDtcblxuJGlucHV0LWhlaWdodC1pbm5lcjogcHgtdG8tcmVtKFxuICBmbG9vcihyZW0tdG8tcHgoKCRpbnB1dC1idG4tZm9udC1zaXplICogJGlucHV0LWJ0bi1saW5lLWhlaWdodCkgKyAoJGlucHV0LWJ0bi1wYWRkaW5nLXkgKiAyKSkpXG4pICFkZWZhdWx0O1xuJGlucHV0LWhlaWdodC1pbm5lci1zbTogcHgtdG8tcmVtKFxuICBmbG9vcihyZW0tdG8tcHgoKCRpbnB1dC1idG4tZm9udC1zaXplLXNtICogJGlucHV0LWJ0bi1saW5lLWhlaWdodC1zbSkgKyAoJGlucHV0LWJ0bi1wYWRkaW5nLXktc20gKiAyKSkpXG4pICFkZWZhdWx0OyAvLyAoQylcbiRpbnB1dC1oZWlnaHQtaW5uZXItbGc6IHB4LXRvLXJlbShcbiAgZmxvb3IocmVtLXRvLXB4KCgkZm9udC1zaXplLWxnICogJGxpbmUtaGVpZ2h0LWxnKSArICgkaW5wdXQtYnRuLXBhZGRpbmcteS1sZyAqIDIpKSlcbikgIWRlZmF1bHQ7IC8vIChDKVxuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLWlucHV0LXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9ybS1jaGVjay12YXJpYWJsZXNcbiRmb3JtLWNoZWNrLWlucHV0LXdpZHRoOiAxLjJlbSAhZGVmYXVsdDtcbiRmb3JtLWRhdGF0YWJsZXMtY2hlY2staW5wdXQtc2l6ZTogMThweCAhZGVmYXVsdDsgLy8gKEMpIEZvciBkYXRhdGFibGVzIHdpdGggY2hlY2tib3gtIHVwZGF0ZSBhY2NvcmRpbmcgdG8gJGZvcm0tY2hlY2staW5wdXQtd2lkdGhcbiRmb3JtLWNoZWNrLW1pbi1oZWlnaHQ6ICRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlICogMS4wNjcgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1wYWRkaW5nLXN0YXJ0OiAkZm9ybS1jaGVjay1pbnB1dC13aWR0aCArIDAuNmVtICFkZWZhdWx0O1xuJGZvcm0tY2hlY2stbWFyZ2luLWJvdHRvbTogMC41cmVtICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtYm9yZGVyOiAkaW5wdXQtZm9jdXMtYm9yZGVyLXdpZHRoIHNvbGlkICR0ZXh0LW11dGVkICFkZWZhdWx0O1xuJGZvcm0tY2hlY2stbGFiZWwtY29sb3I6ICRoZWFkaW5ncy1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LWZvY3VzLWJveC1zaGFkb3c6IG5vbmUgIWRlZmF1bHQ7XG5cbiRmb3JtLWNoZWNrLWxhYmVsLWN1cnNvcjogcG9pbnRlciAhZGVmYXVsdDtcblxuJGZvcm0tY2hlY2staW5wdXQtYm9yZGVyLXJhZGl1czogMC4yNjdlbSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LWZvY3VzLWJvcmRlcjogJGJvZHktY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbnB1dC1jaGVja2VkLWNvbG9yOiAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LWNoZWNrZWQtYmctaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nMTUnIGhlaWdodD0nMTcnIHZpZXdCb3g9JzAgMCAxNSAxNCcgZmlsbD0nbm9uZSclM0UlM0NwYXRoIGQ9J00zLjQxNjY3IDdMNi4zMzMzMyA5LjkxNjY3TDEyLjE2NjcgNC4wODMzMycgc3Ryb2tlPScjeyRmb3JtLWNoZWNrLWlucHV0LWNoZWNrZWQtY29sb3J9JyBzdHJva2Utd2lkdGg9JzInIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCcvJTNFJTNDL3N2ZyUzRVwiKSAhZGVmYXVsdDtcblxuJGZvcm0tY2hlY2stcmFkaW8tY2hlY2tlZC1iZy1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9Jy00IC00IDggOCclM2UlM2NjaXJjbGUgcj0nMS42JyBmaWxsPScjeyRmb3JtLWNoZWNrLWlucHV0LWNoZWNrZWQtY29sb3J9JyAgLyUzZSUzYy9zdmclM2VcIikgIWRlZmF1bHQ7XG5cbiRmb3JtLWNoZWNrLWlucHV0LWluZGV0ZXJtaW5hdGUtY29sb3I6ICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtaW5kZXRlcm1pbmF0ZS1iZy1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nMTInIGhlaWdodD0nMTInIHZpZXdCb3g9JzAgMCAxMiAxMicgZmlsbD0nbm9uZSc+PHBhdGggZD0nTTIuNSA2SDkuNScgc3Ryb2tlPScjeyRmb3JtLWNoZWNrLWlucHV0LWluZGV0ZXJtaW5hdGUtY29sb3J9JyBzdHJva2Utd2lkdGg9JzEuNScgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbGluZWpvaW49J3JvdW5kJy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuXG4kZm9ybS1jaGVjay1pbnB1dC1kaXNhYmxlZC1vcGFjaXR5OiAwLjQ1ICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtZGlzYWJsZWQtYmc6IHJnYmEtdG8taGV4KCRncmF5LTMwMCwgJHJnYmEtdG8taGV4LWJnKSAhZGVmYXVsdDsgLy8gKEMpXG4kZm9ybS1jaGVjay1sYWJlbC1kaXNhYmxlZC1jb2xvcjogJHRleHQtbXV0ZWQgIWRlZmF1bHQ7IC8vIChDKVxuXG4vLyBzY3NzLWRvY3MtZW5kIGZvcm0tY2hlY2stdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLXN3aXRjaC12YXJpYWJsZXNcbiRmb3JtLXN3aXRjaC1jb2xvcjogJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1zd2l0Y2gtd2lkdGg6IDJlbSAhZGVmYXVsdDtcbiRmb3JtLXN3aXRjaC1wYWRkaW5nLXN0YXJ0OiAkZm9ybS1zd2l0Y2gtd2lkdGggKyAwLjY2N2VtICFkZWZhdWx0O1xuJGZvcm0tc3dpdGNoLWZvY3VzLWNvbG9yOiAkY29tcG9uZW50LWFjdGl2ZS1jb2xvcjtcbiRmb3JtLXN3aXRjaC1iZy1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB3aWR0aD0nMjInIGhlaWdodD0nMjInIHZpZXdCb3g9JzAgMCAyMiAyMicgZmlsbD0nbm9uZScgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyUzZSUzY2cgZmlsdGVyPSd1cmwoJTIzYSknJTNlJTNjY2lyY2xlIGN4PScxMicgY3k9JzExJyByPSc4LjUnIGZpbGw9JyN7JGZvcm0tc3dpdGNoLWNvbG9yfScvJTNlJTNjL2clM2UlM2NkZWZzJTNlJTNjZmlsdGVyIGlkPSdhJyB4PScwJyB5PScwJyB3aWR0aD0nMjInIGhlaWdodD0nMjInIGZpbHRlclVuaXRzPSd1c2VyU3BhY2VPblVzZScgY29sb3ItaW50ZXJwb2xhdGlvbi1maWx0ZXJzPSdzUkdCJyUzZSUzY2ZlRmxvb2QgZmxvb2Qtb3BhY2l0eT0nMCcgcmVzdWx0PSdCYWNrZ3JvdW5kSW1hZ2VGaXgnLyUzZSUzY2ZlQ29sb3JNYXRyaXggaW49J1NvdXJjZUFscGhhJyB2YWx1ZXM9JzAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDEyNyAwJyByZXN1bHQ9J2hhcmRBbHBoYScvJTNlJTNjZmVPZmZzZXQgZHk9JzInLyUzZSUzY2ZlR2F1c3NpYW5CbHVyIHN0ZERldmlhdGlvbj0nMicvJTNlJTNjZmVDb2xvck1hdHJpeCB2YWx1ZXM9JzAgMCAwIDAgMC4xODAzOTIgMCAwIDAgMCAwLjE0OTAyIDAgMCAwIDAgMC4yMzkyMTYgMCAwIDAgMC4xNiAwJy8lM2UlM2NmZUJsZW5kIGluMj0nQmFja2dyb3VuZEltYWdlRml4JyByZXN1bHQ9J2VmZmVjdDFfZHJvcFNoYWRvd182NDg4XzMyNjQnLyUzZSUzY2ZlQmxlbmQgaW49J1NvdXJjZUdyYXBoaWMnIGluMj0nZWZmZWN0MV9kcm9wU2hhZG93XzY0ODhfMzI2NCcgcmVzdWx0PSdzaGFwZScvJTNlJTNjL2ZpbHRlciUzZSUzYy9kZWZzJTNlJTNjL3N2ZyUzZVwiKSAhZGVmYXVsdDtcblxuJGZvcm0tc3dpdGNoLWZvY3VzLWJnLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHdpZHRoPScyMicgaGVpZ2h0PScyMicgdmlld0JveD0nMCAwIDIyIDIyJyBmaWxsPSdub25lJyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnJTNlJTNjZyBmaWx0ZXI9J3VybCglMjNhKSclM2UlM2NjaXJjbGUgY3g9JzEyJyBjeT0nMTEnIHI9JzguNScgZmlsbD0nI3skZm9ybS1zd2l0Y2gtY29sb3J9Jy8lM2UlM2MvZyUzZSUzY2RlZnMlM2UlM2NmaWx0ZXIgaWQ9J2EnIHg9JzAnIHk9JzAnIHdpZHRoPScyMicgaGVpZ2h0PScyMicgZmlsdGVyVW5pdHM9J3VzZXJTcGFjZU9uVXNlJyBjb2xvci1pbnRlcnBvbGF0aW9uLWZpbHRlcnM9J3NSR0InJTNlJTNjZmVGbG9vZCBmbG9vZC1vcGFjaXR5PScwJyByZXN1bHQ9J0JhY2tncm91bmRJbWFnZUZpeCcvJTNlJTNjZmVDb2xvck1hdHJpeCBpbj0nU291cmNlQWxwaGEnIHZhbHVlcz0nMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMTI3IDAnIHJlc3VsdD0naGFyZEFscGhhJy8lM2UlM2NmZU9mZnNldCBkeT0nMicvJTNlJTNjZmVHYXVzc2lhbkJsdXIgc3RkRGV2aWF0aW9uPScyJy8lM2UlM2NmZUNvbG9yTWF0cml4IHZhbHVlcz0nMCAwIDAgMCAwLjE4MDM5MiAwIDAgMCAwIDAuMTQ5MDIgMCAwIDAgMCAwLjIzOTIxNiAwIDAgMCAwLjE2IDAnLyUzZSUzY2ZlQmxlbmQgaW4yPSdCYWNrZ3JvdW5kSW1hZ2VGaXgnIHJlc3VsdD0nZWZmZWN0MV9kcm9wU2hhZG93XzY0ODhfMzI2NCcvJTNlJTNjZmVCbGVuZCBpbj0nU291cmNlR3JhcGhpYycgaW4yPSdlZmZlY3QxX2Ryb3BTaGFkb3dfNjQ4OF8zMjY0JyByZXN1bHQ9J3NoYXBlJy8lM2UlM2MvZmlsdGVyJTNlJTNjL2RlZnMlM2UlM2Mvc3ZnJTNlXCIpICFkZWZhdWx0O1xuJGZvcm0tc3dpdGNoLWNoZWNrZWQtYmctaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2Nzdmcgd2lkdGg9JzIyJyBoZWlnaHQ9JzIyJyB2aWV3Qm94PScwIDAgMjIgMjInIGZpbGw9J25vbmUnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyclM2UlM2NnIGZpbHRlcj0ndXJsKCUyM2EpJyUzZSUzY2NpcmNsZSBjeD0nMTInIGN5PScxMScgcj0nOC41JyBmaWxsPScjeyRmb3JtLXN3aXRjaC1jb2xvcn0nLyUzZSUzYy9nJTNlJTNjZGVmcyUzZSUzY2ZpbHRlciBpZD0nYScgeD0nMCcgeT0nMCcgd2lkdGg9JzIyJyBoZWlnaHQ9JzIyJyBmaWx0ZXJVbml0cz0ndXNlclNwYWNlT25Vc2UnIGNvbG9yLWludGVycG9sYXRpb24tZmlsdGVycz0nc1JHQiclM2UlM2NmZUZsb29kIGZsb29kLW9wYWNpdHk9JzAnIHJlc3VsdD0nQmFja2dyb3VuZEltYWdlRml4Jy8lM2UlM2NmZUNvbG9yTWF0cml4IGluPSdTb3VyY2VBbHBoYScgdmFsdWVzPScwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAxMjcgMCcgcmVzdWx0PSdoYXJkQWxwaGEnLyUzZSUzY2ZlT2Zmc2V0IGR5PScyJy8lM2UlM2NmZUdhdXNzaWFuQmx1ciBzdGREZXZpYXRpb249JzInLyUzZSUzY2ZlQ29sb3JNYXRyaXggdmFsdWVzPScwIDAgMCAwIDAuMTgwMzkyIDAgMCAwIDAgMC4xNDkwMiAwIDAgMCAwIDAuMjM5MjE2IDAgMCAwIDAuMTYgMCcvJTNlJTNjZmVCbGVuZCBpbjI9J0JhY2tncm91bmRJbWFnZUZpeCcgcmVzdWx0PSdlZmZlY3QxX2Ryb3BTaGFkb3dfNjQ4OF8zMjY0Jy8lM2UlM2NmZUJsZW5kIGluPSdTb3VyY2VHcmFwaGljJyBpbjI9J2VmZmVjdDFfZHJvcFNoYWRvd182NDg4XzMyNjQnIHJlc3VsdD0nc2hhcGUnLyUzZSUzYy9maWx0ZXIlM2UlM2MvZGVmcyUzZSUzYy9zdmclM2VcIikgIWRlZmF1bHQ7XG4kZm9ybS1zd2l0Y2gtY2hlY2tlZC1iZy1wb3NpdGlvbjogOTUlIGNlbnRlciAhZGVmYXVsdDtcbiRmb3JtLXN3aXRjaC1jaGVja2VkLWJnLXBvc2l0aW9uLXJ0bDogNCUgY2VudGVyICFkZWZhdWx0OyAvLyAoQylcbiRmb3JtLXN3aXRjaC1iZzogcmdiYS10by1oZXgoJGdyYXktMTAwLCAkcmdiYS10by1oZXgtYmcpICFkZWZhdWx0OyAvLyAoQylcbiRmb3JtLXN3aXRjaC1ib3gtc2hhZG93OiAwIDAgMC4yNXJlbSAwIHJnYmEoMCwgMCwgMCwgMC4xNikgaW5zZXQgIWRlZmF1bHQ7IC8vIChDKVxuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLXN3aXRjaC12YXJpYWJsZXNcblxuLy9pbnB1dC1ncm91cC12YXJpYWJsZXNcbiRpbnB1dC1ncm91cC1hZGRvbi1jb2xvcjogJGhlYWRpbmdzLWNvbG9yICFkZWZhdWx0O1xuJGlucHV0LWdyb3VwLWFkZG9uLWJnOiAkaW5wdXQtYmcgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGlucHV0LWdyb3VwLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9ybS1zZWxlY3QtdmFyaWFibGVzXG4kZm9ybS1zZWxlY3QtcGFkZGluZy15OiAkaW5wdXQtcGFkZGluZy15ICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LXBhZGRpbmcteDogJGlucHV0LXBhZGRpbmcteCAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZzogJGZvcm0tc2VsZWN0LXBhZGRpbmcteCAqIDIuOCAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1kaXNhYmxlZC1jb2xvcjogJHRleHQtbXV0ZWQgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtZGlzYWJsZWQtYmc6ICRpbnB1dC1kaXNhYmxlZC1iZyAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1iZy1zaXplOiAyMnB4IDI0cHggIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtaW5kaWNhdG9yOiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDIwIDIyXCIgZmlsbD1cIm5vbmVcIj48cGF0aCBkPVwiTTEwLjk5OTkgMTIuMDc0M0wxNS41Mzc0IDcuNTM2NzZMMTYuODMzNiA4LjgzMjkyTDEwLjk5OTkgMTQuNjY2Nkw1LjE2NjI2IDguODMyOTJMNi40NjI0MyA3LjUzNjc2TDEwLjk5OTkgMTIuMDc0M1pcIiBmaWxsPVwiI3skYmxhY2t9XCIgZmlsbC1vcGFjaXR5PVwiMC45XCIvPjwvc3ZnPicpICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWRpc2FibGVkLWluZGljYXRvcjogdXJsKCdkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAyMCAyMlwiIGZpbGw9XCJub25lXCI+PHBhdGggZD1cIk0xMC45OTk5IDEyLjA3NDNMMTUuNTM3NCA3LjUzNjc2TDE2LjgzMzYgOC44MzI5MkwxMC45OTk5IDE0LjY2NjZMNS4xNjYyNiA4LjgzMjkyTDYuNDYyNDMgNy41MzY3NkwxMC45OTk5IDEyLjA3NDNaXCIgZmlsbD1cIiN7JHRleHQtbXV0ZWR9XCIgZmlsbC1vcGFjaXR5PVwiMC45XCIvPjwvc3ZnPicpICFkZWZhdWx0OyAvLyAoQylcbiRmb3JtLXNlbGVjdC1pbmRpY2F0b3ItcnRsOiBlc2NhcGUtc3ZnKCRmb3JtLXNlbGVjdC1pbmRpY2F0b3IpICFkZWZhdWx0OyAvLyAoQylcblxuJGZvcm0tc2VsZWN0LWZvY3VzLWJveC1zaGFkb3c6ICRpbnB1dC1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuXG4kZm9ybS1zZWxlY3QtcGFkZGluZy15LXNtOiAkaW5wdXQtcGFkZGluZy15LXNtICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LXBhZGRpbmcteC1zbTogJGlucHV0LXBhZGRpbmcteC1zbSAhZGVmYXVsdDtcblxuJGZvcm0tc2VsZWN0LXBhZGRpbmcteS1sZzogJGlucHV0LXBhZGRpbmcteS1sZyAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1wYWRkaW5nLXgtbGc6ICRpbnB1dC1wYWRkaW5nLXgtbGcgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvcm0tc2VsZWN0LXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9ybS1yYW5nZS12YXJpYWJsZXNcbiRmb3JtLXJhbmdlLXRyYWNrLWhlaWdodDogMC4zNzVyZW0gIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10cmFjay1ib3gtc2hhZG93OiBub25lICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdHJhY2stZGlzYWJsZWQtYmc6IHJnYmEtdG8taGV4KCRncmF5LTQwMCwgJHJnYmEtdG8taGV4LWJnKSAhZGVmYXVsdDsgLy8gKEMpXG4kZm9ybS1yYW5nZS10aHVtYi13aWR0aDogMS4zNzVyZW0gIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10aHVtYi1oZWlnaHQ6ICRmb3JtLXJhbmdlLXRodW1iLXdpZHRoICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdGh1bWItYm94LXNoYWRvdzogJGJveC1zaGFkb3ctc20gIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10aHVtYi1iZzogJHByaW1hcnkgIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10aHVtYi1hY3RpdmUtYmc6ICRwcmltYXJ5ICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdGh1bWItZGlzYWJsZWQtYmc6IHJnYmEtdG8taGV4KCRncmF5LTQwMCwgJHJnYmEtdG8taGV4LWJnKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZm9ybS1yYW5nZS12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZvcm0tZmlsZS12YXJpYWJsZXNcbiRmb3JtLWZpbGUtYnV0dG9uLWJnOiAkaW5wdXQtZ3JvdXAtYWRkb24tYmcgIWRlZmF1bHQ7XG4kZm9ybS1maWxlLWJ1dHRvbi1ob3Zlci1iZzogc2hhZGUtY29sb3IoJGZvcm0tZmlsZS1idXR0b24tYmcsIDUlKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZm9ybS1maWxlLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9ybS1mbG9hdGluZy12YXJpYWJsZXNcbiRmb3JtLWZsb2F0aW5nLWxhYmVsLW9wYWNpdHk6IDAuNzUgIWRlZmF1bHQ7XG4kZm9ybS1mbG9hdGluZy10cmFuc2l0aW9uOlxuICBvcGFjaXR5IDAuMnMgZWFzZS1pbi1vdXQsXG4gIHRyYW5zZm9ybSAwLjJzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuJGZvcm0tZmxvYXRpbmctbGFiZWwtdHJhbnNmb3JtLXJ0bDogc2NhbGUoMC44NSkgdHJhbnNsYXRlWSgtMC41cmVtKSB0cmFuc2xhdGVYKC0wLjE1cmVtKSAhZGVmYXVsdDsgLy8gKEMpXG4vLyBzY3NzLWRvY3MtZW5kIGZvcm0tZmxvYXRpbmctdmFyaWFibGVzXG5cbi8vIEZvcm0gdmFsaWRhdGlvblxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9ybS1mZWVkYmFjay12YXJpYWJsZXNcbiRmb3JtLWZlZWRiYWNrLXZhbGlkLWNvbG9yOiAkc3VjY2VzcyAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWludmFsaWQtY29sb3I6ICRkYW5nZXIgIWRlZmF1bHQ7XG5cbiRmb3JtLXNlbGVjdC1mZWVkYmFjay1pY29uLXBhZGRpbmc6ICRmb3JtLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZyArICRpbnB1dC1oZWlnaHQtaW5uZXIgIWRlZmF1bHQ7IC8vIChDKVxuJGZvcm0tc2VsZWN0LWZlZWRiYWNrLWljb24tcGFkZGluZy1zbTogJGZvcm0tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nICsgJGlucHV0LWhlaWdodC1pbm5lci1zbSAhZGVmYXVsdDsgLy8gKEMpXG4kZm9ybS1zZWxlY3QtZmVlZGJhY2staWNvbi1wYWRkaW5nLWxnOiAkZm9ybS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmcgKyAkaW5wdXQtaGVpZ2h0LWlubmVyLWxnICFkZWZhdWx0OyAvLyAoQylcbi8vIHNjc3MtZG9jcy1lbmQgZm9ybS1mZWVkYmFjay12YXJpYWJsZXNcblxuLy8gKiBOYXZzXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5cbiRuYXYtc3BhY2VyOiAwLjI1cmVtICFkZWZhdWx0OyAvLyAoQylcblxuJG5hdi1saW5rLXBhZGRpbmcteTogMC41NDM1cmVtICFkZWZhdWx0O1xuJG5hdi1saW5rLXBhZGRpbmcteDogMS4zNzVyZW0gIWRlZmF1bHQ7XG4kbmF2LWxpbmstZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG4kbmF2LWxpbmstZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1tZWRpdW0gIWRlZmF1bHQ7XG4kbmF2LWxpbmstY29sb3I6ICRoZWFkaW5ncy1jb2xvciAhZGVmYXVsdDtcbiRuYXYtbGluay1kaXNhYmxlZC1jb2xvcjogJHRleHQtbGlnaHRlciAhZGVmYXVsdDtcbiRuYXYtbGluay1saW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2UgIWRlZmF1bHQ7IC8vIChDKVxuXG4kbmF2LWxpbmstcGFkZGluZy15LWxnOiAwLjZyZW0gIWRlZmF1bHQ7IC8vIChDKVxuJG5hdi1saW5rLXBhZGRpbmcteC1sZzogMS41cmVtICFkZWZhdWx0OyAvLyAoQylcbiRuYXYtbGluay1saW5lLWhlaWdodC1sZzogJGxpbmUtaGVpZ2h0LWxnICFkZWZhdWx0OyAvLyAoQylcblxuJG5hdi1saW5rLXBhZGRpbmcteS1zbTogMC4zNzZyZW0gIWRlZmF1bHQ7IC8vIChDKVxuJG5hdi1saW5rLXBhZGRpbmcteC1zbTogMXJlbSAhZGVmYXVsdDsgLy8gKEMpXG4kbmF2LWxpbmstbGluZS1oZWlnaHQtc206ICRsaW5lLWhlaWdodC1zbSAhZGVmYXVsdDsgLy8gKEMpXG5cbiRuYXYtdGFicy1ib3JkZXItY29sb3I6ICRib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtYm9yZGVyLXdpZHRoOiAwICFkZWZhdWx0O1xuLy8gJG5hdi10YWJzLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yOiBudWxsICFkZWZhdWx0O1xuJG5hdi10YWJzLWxpbmstYWN0aXZlLWNvbG9yOiAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWFjdGl2ZS1iZzogJHdoaXRlICFkZWZhdWx0O1xuJG5hdi10YWJzLWxpbmstYWN0aXZlLWJvcmRlci1jb2xvcjogJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRuYXYtcGlsbHMtcGFkZGluZy15OiAkbmF2LWxpbmstcGFkZGluZy15ICFkZWZhdWx0OyAvLyAoQylcbiRuYXYtcGlsbHMtcGFkZGluZy14OiAkbmF2LWxpbmstcGFkZGluZy14ICFkZWZhdWx0OyAvLyAoQylcblxuJG5hdi1waWxscy1saW5rLWhvdmVyLWJnOiByZ2JhLXRvLWhleChyZ2JhKCRwcmltYXJ5LCAwLjE2KSwgJHJnYmEtdG8taGV4LWJnKSAhZGVmYXVsdDsgLy8gKEMpXG5cbiRuYXYtcGlsbHMtbGluay1hY3RpdmUtY29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcbiRuYXYtcGlsbHMtbGluay1hY3RpdmUtYmc6IHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuXG4vLyAqIE5hdmJhclxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuXG4kbmF2YmFyLXRvZ2dsZXItcGFkZGluZy15OiAwLjVyZW0gIWRlZmF1bHQ7XG4kbmF2YmFyLXRvZ2dsZXItcGFkZGluZy14OiAwLjdyZW0gIWRlZmF1bHQ7XG4kbmF2YmFyLXRvZ2dsZXItZm9udC1zaXplOiAwLjYyNXJlbSAhZGVmYXVsdDtcblxuJG5hdmJhci1kYXJrLWNvbG9yOiByZ2JhKCR3aGl0ZSwgMC44KSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1ob3Zlci1jb2xvcjogJHdoaXRlICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvcjogJHdoaXRlICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWRpc2FibGVkLWNvbG9yOiByZ2JhKCR3aGl0ZSwgMC40KSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay10b2dnbGVyLWljb24tYmc6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0Nzdmcgd2lkdGg9JzE0cHgnIGhlaWdodD0nMTFweCcgdmlld0JveD0nMCAwIDE0IDExJyB2ZXJzaW9uPScxLjEnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgeG1sbnM6eGxpbms9J2h0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsnJTNFJTNDZGVmcyUzRSUzQ3BhdGggZD0nTTAsMCBMMTQsMCBMMTQsMS43NSBMMCwxLjc1IEwwLDAgWiBNMCw0LjM3NSBMMTQsNC4zNzUgTDE0LDYuMTI1IEwwLDYuMTI1IEwwLDQuMzc1IFogTTAsOC43NSBMMTQsOC43NSBMMTQsMTAuNSBMMCwxMC41IEwwLDguNzUgWicgaWQ9J3BhdGgtMSclM0UlM0MvcGF0aCUzRSUzQy9kZWZzJTNFJTNDZyBpZD0n8J+Sji1VSS1FbGVtZW50cycgc3Ryb2tlPSdub25lJyBzdHJva2Utd2lkdGg9JzEnIGZpbGw9J25vbmUnIGZpbGwtcnVsZT0nZXZlbm9kZCclM0UlM0NnIGlkPScxMiktTmF2YmFyJyB0cmFuc2Zvcm09J3RyYW5zbGF0ZSgtMTE3NC4wMDAwMDAsIC0xMjkwLjAwMDAwMCknJTNFJTNDZyBpZD0nR3JvdXAnIHRyYW5zZm9ybT0ndHJhbnNsYXRlKDExNzQuMDAwMDAwLCAxMjg4LjAwMDAwMCknJTNFJTNDZyBpZD0nSWNvbi1Db2xvcicgdHJhbnNmb3JtPSd0cmFuc2xhdGUoMC4wMDAwMDAsIDIuMDAwMDAwKSclM0UlM0N1c2UgZmlsbD0nI3skbmF2YmFyLWRhcmstY29sb3J9JyB4bGluazpocmVmPSclMjNwYXRoLTEnJTNFJTNDL3VzZSUzRSUzQ3VzZSBmaWxsLW9wYWNpdHk9JzAuMScgZmlsbD0nI3skbmF2YmFyLWRhcmstY29sb3J9JyB4bGluazpocmVmPSclMjNwYXRoLTEnJTNFJTNDL3VzZSUzRSUzQy9nJTNFJTNDL2clM0UlM0MvZyUzRSUzQy9nJTNFJTNDL3N2ZyUzRVwiKSAhZGVmYXVsdDtcblxuJG5hdmJhci1saWdodC1jb2xvcjogJGdyYXktNTAwICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1ob3Zlci1jb2xvcjogJGJvZHktY29sb3IgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvcjogJGJvZHktY29sb3IgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWRpc2FibGVkLWNvbG9yOiAkZ3JheS0zMDAgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LXRvZ2dsZXItaWNvbi1iZzogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyB3aWR0aD0nMTRweCcgaGVpZ2h0PScxMXB4JyB2aWV3Qm94PScwIDAgMTQgMTEnIHZlcnNpb249JzEuMScgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB4bWxuczp4bGluaz0naHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayclM0UlM0NkZWZzJTNFJTNDcGF0aCBkPSdNMCwwIEwxNCwwIEwxNCwxLjc1IEwwLDEuNzUgTDAsMCBaIE0wLDQuMzc1IEwxNCw0LjM3NSBMMTQsNi4xMjUgTDAsNi4xMjUgTDAsNC4zNzUgWiBNMCw4Ljc1IEwxNCw4Ljc1IEwxNCwxMC41IEwwLDEwLjUgTDAsOC43NSBaJyBpZD0ncGF0aC0xJyUzRSUzQy9wYXRoJTNFJTNDL2RlZnMlM0UlM0NnIGlkPSfwn5KOLVVJLUVsZW1lbnRzJyBzdHJva2U9J25vbmUnIHN0cm9rZS13aWR0aD0nMScgZmlsbD0nbm9uZScgZmlsbC1ydWxlPSdldmVub2RkJyUzRSUzQ2cgaWQ9JzEyKS1OYXZiYXInIHRyYW5zZm9ybT0ndHJhbnNsYXRlKC0xMTc0LjAwMDAwMCwgLTEyOTAuMDAwMDAwKSclM0UlM0NnIGlkPSdHcm91cCcgdHJhbnNmb3JtPSd0cmFuc2xhdGUoMTE3NC4wMDAwMDAsIDEyODguMDAwMDAwKSclM0UlM0NnIGlkPSdJY29uLUNvbG9yJyB0cmFuc2Zvcm09J3RyYW5zbGF0ZSgwLjAwMDAwMCwgMi4wMDAwMDApJyUzRSUzQ3VzZSBmaWxsPScjeyRuYXZiYXItbGlnaHQtY29sb3J9JyB4bGluazpocmVmPSclMjNwYXRoLTEnJTNFJTNDL3VzZSUzRSUzQ3VzZSBmaWxsLW9wYWNpdHk9JzAuMScgZmlsbD0nI3skbmF2YmFyLWxpZ2h0LWNvbG9yfScgeGxpbms6aHJlZj0nJTIzcGF0aC0xJyUzRSUzQy91c2UlM0UlM0MvZyUzRSUzQy9nJTNFJTNDL2clM0UlM0MvZyUzRSUzQy9zdmclM0VcIikgIWRlZmF1bHQ7XG5cbiRuYXZiYXItbGlnaHQtdG9nZ2xlci1ib3JkZXItY29sb3I6IHJnYmEoJGJsYWNrLCAwLjA2KSAhZGVmYXVsdDtcbiRuYXZiYXItZHJvcGRvd24taG92ZXItYmc6IHJnYmEtdG8taGV4KHJnYmEoJGJsYWNrLCAwLjA2KSwgJHJnYmEtdG8taGV4LWJnKSAhZGVmYXVsdDsgLy8gKEMpXG4kbmF2YmFyLWRyb3Bkb3duLWljb24tYmc6IHJnYmEtdG8taGV4KHJnYmEoJGJsYWNrLCAwLjA4KSwgJHJnYmEtdG8taGV4LWJnKSAhZGVmYXVsdDsgLy8gKEMpXG5cbi8vICogRHJvcGRvd25zXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5cbiRkcm9wZG93bi1wYWRkaW5nLXg6IDAuNXJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1iZzogJHdoaXRlICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJvcmRlci1jb2xvcjogJGJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRkcm9wZG93bi1ib3JkZXItd2lkdGg6IDAgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYm94LXNoYWRvdzogJGJveC1zaGFkb3ctbGcgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1pbm5lci1ib3JkZXItcmFkaXVzOiAwcHggIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1saW5rLWNvbG9yOiAkaGVhZGluZ3MtY29sb3IgIWRlZmF1bHQ7XG4kZHJvcGRvd24tbGluay1ob3Zlci1iZzogcmdiYS10by1oZXgoJGdyYXktNTAsICRyZ2JhLXRvLWhleC1iZykgIWRlZmF1bHQ7XG4kZHJvcGRvd24tbGluay1saW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2UgIWRlZmF1bHQ7IC8vIChDKVxuXG4kZHJvcGRvd24tbGluay1hY3RpdmUtY29sb3I6ICRwcmltYXJ5ICFkZWZhdWx0O1xuJGRyb3Bkb3duLWxpbmstYWN0aXZlLWJnOiByZ2JhLXRvLWhleChyZ2JhKCRwcmltYXJ5LCAwLjE2KSwgJHJnYmEtdG8taGV4LWJnKSAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy15OiAwLjU0M3JlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1pdGVtLXBhZGRpbmcteDogMXJlbSAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWxpbmstZGlzYWJsZWQtY29sb3I6ICR0ZXh0LW11dGVkICFkZWZhdWx0O1xuJGRyb3Bkb3duLWhlYWRlci1jb2xvcjogJHRleHQtbXV0ZWQgIWRlZmF1bHQ7XG5cbi8vICogUGFnaW5hdGlvblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuXG4kcGFnaW5hdGlvbi1wYWRkaW5nLXk6IDAuNDgwOXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteDogMC41cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy15LXNtOiAwLjMxNjVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXgtc206IDAuMjY5cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy15LWxnOiAwLjY4MXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteC1sZzogMC45ODI2cmVtICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1mb250LXNpemU6ICRmb250LXNpemUtYmFzZSAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0OyAvLyAoYylcblxuJHBhZ2luYXRpb24tY29sb3I6ICRoZWFkaW5ncy1jb2xvciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJnOiAkZ3JheS03NSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJvcmRlci1yYWRpdXM6IDUwJSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJvcmRlci13aWR0aDogJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLW1hcmdpbi1zdGFydDogMC4zNzVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ib3JkZXItY29sb3I6IHJnYmEtdG8taGV4KHJnYmEoJGJsYWNrLCAwLjIyKSwgJHJnYmEtdG8taGV4LWJnKSAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tZm9jdXMtY29sb3I6ICRwYWdpbmF0aW9uLWNvbG9yICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZm9jdXMtYmc6IHJnYmEtdG8taGV4KCRncmF5LTUwLCAkcmdiYS10by1oZXgtYmcpICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZm9jdXMtYm94LXNoYWRvdzogbm9uZSAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24taG92ZXItY29sb3I6ICRwYWdpbmF0aW9uLWNvbG9yICFkZWZhdWx0O1xuJHBhZ2luYXRpb24taG92ZXItYmc6ICRwYWdpbmF0aW9uLWZvY3VzLWJnICFkZWZhdWx0O1xuJHBhZ2luYXRpb24taG92ZXItYm9yZGVyLWNvbG9yOiAkcGFnaW5hdGlvbi1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ob3Zlci1iZy1zY2FsZTogODQlICFkZWZhdWx0OyAvLyAoYylcblxuJHBhZ2luYXRpb24tYWN0aXZlLWNvbG9yOiAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWFjdGl2ZS1iZzogJHByaW1hcnkgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1hY3RpdmUtYm9yZGVyLWNvbG9yOiAkcGFnaW5hdGlvbi1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWRpc2FibGVkLWNvbG9yOiAkdGV4dC1tdXRlZCAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWRpc2FibGVkLWJnOiAkcGFnaW5hdGlvbi1iZyAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWRpc2FibGVkLWJvcmRlci1jb2xvcjogJHBhZ2luYXRpb24tYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZGlzYWJsZWQtb3BhY2l0eTogJGJ0bi1kaXNhYmxlZC1vcGFjaXR5ICFkZWZhdWx0OyAvLyAoYylcblxuJHBhZ2luYXRpb24tYm9yZGVyLXJhZGl1cy1zbTogJHBhZ2luYXRpb24tYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJvcmRlci1yYWRpdXMtbGc6ICRwYWdpbmF0aW9uLWJvcmRlci1yYWRpdXMtc20gIWRlZmF1bHQ7XG5cbi8vICogQ2FyZHNcbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcblxuJGNhcmQtdGl0bGUtY29sb3I6ICRoZWFkaW5ncy1jb2xvciAhZGVmYXVsdDtcbiRjYXJkLXNwYWNlci15OiAkc3BhY2VyICogMS41ICFkZWZhdWx0O1xuJGNhcmQtc3BhY2VyLXg6ICRzcGFjZXIgKiAxLjUgIWRlZmF1bHQ7XG4kY2FyZC10aXRsZS1zcGFjZXIteTogJHNwYWNlciAqIDAuNSAhZGVmYXVsdDtcbiRjYXJkLXN1YnRpdGxlLWNvbG9yOiByZ2JhLXRvLWhleChyZ2JhKCRibGFjaywgMC41NSksICRyZ2JhLXRvLWhleC1iZykgIWRlZmF1bHQ7XG4kY2FyZC1zcGFjZXIteC1zbTogMXJlbSAhZGVmYXVsdDsgLy8gKEMpXG4kY2FyZC1ib3JkZXItd2lkdGg6IDAgIWRlZmF1bHQ7XG4kY2FyZC1ib3JkZXItY29sb3I6ICRib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kY2FyZC1ib3JkZXItcmFkaXVzOiAwLjM3NXJlbSAhZGVmYXVsdDtcbiRjYXJkLWlubmVyLWJvcmRlci1jb2xvcjogJGJvcmRlci1jb2xvciAhZGVmYXVsdDsgLy8gKEMpXG4kY2FyZC1jYXAtcGFkZGluZy15OiAkY2FyZC1zcGFjZXIteSAhZGVmYXVsdDtcbiRjYXJkLWJnOiAkd2hpdGUgIWRlZmF1bHQ7XG4kY2FyZC1jYXAtYmc6IHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuJGNhcmQtY2FwLWNvbG9yOiAkaGVhZGluZ3MtY29sb3IgIWRlZmF1bHQ7XG4kY2FyZC1pbWctb3ZlcmxheS1wYWRkaW5nOiAxLjVyZW0gIWRlZmF1bHQ7XG4kY2FyZC1ib3gtc2hhZG93OiAkYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRjYXJkLWdyb3VwLW1hcmdpbjogJGdyaWQtZ3V0dGVyLXdpZHRoICFkZWZhdWx0O1xuJGNhcmQtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7IC8vIChDKVxuJGNhcmQtYm9yZGVyLWNvbG9yLXNjYWxlOiA2MSUgIWRlZmF1bHQ7IC8vIChDKVxuJGNhcmQtaG92ZXItYm9yZGVyLXNjYWxlOiA2MiUgIWRlZmF1bHQ7IC8vIChDKVxuJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vICogQWNjb3JkaW9uXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5cbiRhY2NvcmRpb24tcGFkZGluZy15OiAwLjc5M3JlbSAhZGVmYXVsdDtcbiRhY2NvcmRpb24tcGFkZGluZy14OiAxLjI1cmVtICFkZWZhdWx0O1xuJGFjY29yZGlvbi1jb2xvcjogJGJvZHktY29sb3IgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWJnOiAkY2FyZC1iZyAhZGVmYXVsdDtcbiRhY2NvcmRpb24tYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWJvcmRlci1jb2xvcjogJGJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRhY2NvcmRpb24taW5uZXItYm9yZGVyLXJhZGl1czogJGFjY29yZGlvbi1ib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGFjY29yZGlvbi1idXR0b24tY29sb3I6ICRoZWFkaW5ncy1jb2xvciAhZGVmYXVsdDtcblxuJGFjY29yZGlvbi1ib3JkZXItY29sb3I6ICRjYXJkLWJnICFkZWZhdWx0O1xuJGFjY29yZGlvbi1idXR0b24tYWN0aXZlLWJnOiAkYWNjb3JkaW9uLWJnICFkZWZhdWx0O1xuJGFjY29yZGlvbi1idXR0b24tYWN0aXZlLWNvbG9yOiAkYWNjb3JkaW9uLWJ1dHRvbi1jb2xvciAhZGVmYXVsdDtcblxuJGFjY29yZGlvbi1pY29uLXdpZHRoOiAxLjI1cmVtICFkZWZhdWx0O1xuJGFjY29yZGlvbi1pY29uLWNvbG9yOiAkYWNjb3JkaW9uLWJ1dHRvbi1jb2xvciAhZGVmYXVsdDtcbiRhY2NvcmRpb24taWNvbi1hY3RpdmUtY29sb3I6ICRhY2NvcmRpb24tYnV0dG9uLWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcblxuJGFjY29yZGlvbi1pY29uLXRyYW5zZm9ybTogcm90YXRlKDBkZWcpICFkZWZhdWx0O1xuXG4kYWNjb3JkaW9uLWJ1dHRvbi1pY29uOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHdpZHRoPScyMCcgaGVpZ2h0PScyMCcgdmlld0JveD0nMCAwIDIwIDIwJyBmaWxsPSdub25lJyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnJTNlJTNjcGF0aCBkPSdNNSA3LjVMMTAgMTIuNUwxNSA3LjUnIHN0cm9rZT0nI3skYWNjb3JkaW9uLWljb24tYWN0aXZlLWNvbG9yfScgc3Ryb2tlLW9wYWNpdHk9JzAuOScgc3Ryb2tlLXdpZHRoPScxLjUnIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCcvJTNlJTNjL3N2ZyUzZVwiKSAhZGVmYXVsdDtcbiRhY2NvcmRpb24tYnV0dG9uLWFjdGl2ZS1pY29uOiAkYWNjb3JkaW9uLWJ1dHRvbi1pY29uICFkZWZhdWx0O1xuXG4kYWNjb3JkaW9uLWN1c3RvbS1idXR0b24taWNvbjogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIGZpbGw9JyN7JGFjY29yZGlvbi1pY29uLWFjdGl2ZS1jb2xvcn0nIHZpZXdCb3g9JzAgMCAyNCAyNCclM0UlM0NwYXRoIGQ9J00xOSAxMWgtNlY1aC0ydjZINXYyaDZ2Nmgydi02aDZ6JyUzRSUzQy9wYXRoJTNFJTNDL3N2ZyUzRVwiKSAhZGVmYXVsdDtcbiRhY2NvcmRpb24tY3VzdG9tLWJ1dHRvbi1hY3RpdmUtaWNvbjogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIGZpbGw9JyN7JGFjY29yZGlvbi1pY29uLWFjdGl2ZS1jb2xvcn0nIHZpZXdCb3g9JzAgMCAyNCAyNCclM0UlM0NwYXRoIGQ9J001IDExaDE0djJINXonJTNFJTNDL3BhdGglM0UlM0Mvc3ZnJTNFXCIpICFkZWZhdWx0O1xuXG4vLyAqIFRvb2x0aXBzXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4kdG9vbHRpcC1mb250LXNpemU6ICRmb250LXNpemUtc20gIWRlZmF1bHQ7XG4kdG9vbHRpcC1iZzogIzJmMmIzZCAhZGVmYXVsdDtcbiR0b29sdGlwLWNvbG9yOiAkd2hpdGUgIWRlZmF1bHQ7XG4kdG9vbHRpcC1ib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1zbSAhZGVmYXVsdDtcbiR0b29sdGlwLW9wYWNpdHk6IDEgIWRlZmF1bHQ7XG4kdG9vbHRpcC1wYWRkaW5nLXk6ICRzcGFjZXIgKiAwLjI3OCAhZGVmYXVsdDtcbiR0b29sdGlwLXBhZGRpbmcteDogJHNwYWNlciAqIDAuNzUgIWRlZmF1bHQ7XG5cbiR0b29sdGlwLWFycm93LWhlaWdodDogMC4zNzVyZW0gIWRlZmF1bHQ7XG4kdG9vbHRpcC1hcnJvdy13aWR0aDogMC43NXJlbSAhZGVmYXVsdDtcblxuJHRvb2x0aXAtYm94LXNoYWRvdzogbm9uZSAhZGVmYXVsdDsgLy8gKEMpXG5cbi8vICogUG9wb3ZlcnNcbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiRwb3BvdmVyLWZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlICFkZWZhdWx0O1xuJHBvcG92ZXItYmc6ICRjYXJkLWJnICFkZWZhdWx0O1xuJHBvcG92ZXItYm9yZGVyLXdpZHRoOiAwcHggIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRwb3BvdmVyLWJveC1zaGFkb3c6ICRib3gtc2hhZG93LWxnICFkZWZhdWx0O1xuXG4kcG9wb3Zlci1oZWFkZXItYmc6ICRjYXJkLWJnICFkZWZhdWx0O1xuJHBvcG92ZXItaGVhZGVyLWNvbG9yOiAkaGVhZGluZ3MtY29sb3IgIWRlZmF1bHQ7XG4kcG9wb3Zlci1oZWFkZXItcGFkZGluZy15OiAkc3BhY2VyICFkZWZhdWx0O1xuJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteDogMS4xMjVyZW0gIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWJvZHktY29sb3I6ICRib2R5LWNvbG9yICFkZWZhdWx0O1xuJHBvcG92ZXItYm9keS1wYWRkaW5nLXk6IDEuMTI1cmVtICFkZWZhdWx0O1xuJHBvcG92ZXItYm9keS1wYWRkaW5nLXg6IDEuMTI1cmVtICFkZWZhdWx0O1xuXG4vLyAqIFRvYXN0c1xuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuJHRvYXN0LWJhY2tncm91bmQtY29sb3I6IHJnYmEoJHdoaXRlLCAwLjg1KSAhZGVmYXVsdDtcbiR0b2FzdC1wYWRkaW5nLXk6IDAuNDA2cmVtICFkZWZhdWx0O1xuJHRvYXN0LWZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlICFkZWZhdWx0O1xuJHRvYXN0LWNvbG9yOiAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiR0b2FzdC1iYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjYXJkLWJnLCAwLjg1KTtcbiR0b2FzdC1ib3JkZXItd2lkdGg6IDBweCAhZGVmYXVsdDtcbiR0b2FzdC1ib3gtc2hhZG93OiAkYm94LXNoYWRvdy1sZyAhZGVmYXVsdDtcbiR0b2FzdC1oZWFkZXItYm9yZGVyLWNvbG9yOiByZ2JhKCRib3JkZXItY29sb3IsIDAuMykgIWRlZmF1bHQ7XG4kdG9hc3Qtc3BhY2luZzogMXJlbSAhZGVmYXVsdDtcblxuJHRvYXN0LWhlYWRlci1jb2xvcjogJGhlYWRpbmdzLWNvbG9yICFkZWZhdWx0O1xuJHRvYXN0LWhlYWRlci1iYWNrZ3JvdW5kLWNvbG9yOiAkY2FyZC1iZyAhZGVmYXVsdDtcblxuLy8gKiBCYWRnZXNcbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcblxuJGJhZGdlLWZvbnQtc2l6ZTogMC44NjY3ZW0gIWRlZmF1bHQ7XG4kYmFkZ2UtZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1tZWRpdW0gIWRlZmF1bHQ7XG4kYmFkZ2UtcGFkZGluZy15OiAwLjQyMzVlbSAhZGVmYXVsdDtcbiRiYWRnZS1wYWRkaW5nLXg6IDAuNzdlbSAhZGVmYXVsdDtcbiRiYWRnZS1ib3JkZXItcmFkaXVzOiAwLjI1cmVtICFkZWZhdWx0O1xuXG4kYmFkZ2UtcGlsbC1wYWRkaW5nLXg6IDAuNTgzZW0gIWRlZmF1bHQ7XG4kYmFkZ2UtcGlsbC1ib3JkZXItcmFkaXVzOiAxMHJlbSAhZGVmYXVsdDtcblxuJGJhZGdlLWhlaWdodDogMS41cmVtICFkZWZhdWx0OyAvLyAoQylcbiRiYWRnZS13aWR0aDogMS41cmVtICFkZWZhdWx0OyAvLyAoQylcbiRiYWRnZS1jZW50ZXItZm9udC1zaXplOiAwLjgxMnJlbSAhZGVmYXVsdDsgLy8gKEMpXG5cbi8vICogTW9kYWxzXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5cbiRtb2RhbC1pbm5lci1wYWRkaW5nOiAxLjVyZW0gIWRlZmF1bHQ7XG5cbiRtb2RhbC1mb290ZXItbWFyZ2luLWJldHdlZW46IDFyZW0gIWRlZmF1bHQ7XG5cbiRtb2RhbC1kaWFsb2ctbWFyZ2luOiAkbW9kYWwtaW5uZXItcGFkZGluZyAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWNvbG9yOiBudWxsICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYmc6ICR3aGl0ZSAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJvcmRlci1jb2xvcjogJGJvcmRlci1jb2xvcjtcbiRtb2RhbC1jb250ZW50LWJvcmRlci13aWR0aDogMHB4ICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtbGcgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXhzOiAkYm94LXNoYWRvdy1sZyAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJveC1zaGFkb3ctc20tdXA6ICRib3gtc2hhZG93LWxnICFkZWZhdWx0O1xuJG1vZGFsLWJhY2tkcm9wLWJnOiAjOTc5NTllICFkZWZhdWx0O1xuJG1vZGFsLWJhY2tkcm9wLW9wYWNpdHk6IDAuNSAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItYm9yZGVyLXdpZHRoOiAwcHggIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLXBhZGRpbmcteTogMS41cmVtICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1wYWRkaW5nLXg6IDByZW0gIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLXBhZGRpbmc6ICRtb2RhbC1oZWFkZXItcGFkZGluZy15ICRtb2RhbC1pbm5lci1wYWRkaW5nICRtb2RhbC1oZWFkZXItcGFkZGluZy14ICFkZWZhdWx0O1xuJG1vZGFsLWZvb3Rlci1wYWRkaW5nOiAkbW9kYWwtaGVhZGVyLXBhZGRpbmcteCAkbW9kYWwtaW5uZXItcGFkZGluZyAkbW9kYWwtaGVhZGVyLXBhZGRpbmcteSAhZGVmYXVsdDsgLy8gKEMpXG5cbiRtb2RhbC1sZzogNTByZW0gIWRlZmF1bHQ7XG4kbW9kYWwtbWQ6IDM1cmVtICFkZWZhdWx0O1xuJG1vZGFsLXNtOiAyMi41cmVtICFkZWZhdWx0O1xuXG4kbW9kYWwtZmFkZS10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMHB4KSBzY2FsZSgwLjgpICFkZWZhdWx0O1xuJG1vZGFsLXNob3ctdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApIHNjYWxlKDEpICFkZWZhdWx0O1xuXG4kbW9kYWwtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4xNXMgIWRlZmF1bHQ7IC8vIChDKVxuJG1vZGFsLXRyYW5zaXRpb246IHRyYW5zZm9ybSAkbW9kYWwtdHJhbnNpdGlvbi1kdXJhdGlvbiBlYXNlLW91dCAhZGVmYXVsdDtcblxuJG1vZGFsLXNpbXBsZS1wYWRkaW5nOiAzcmVtICFkZWZhdWx0OyAvLyAoQylcbiRtb2RhbC1zaW1wbGUtY2xvc2UtcG9zaXRpb246IDFyZW0gIWRlZmF1bHQ7IC8vIChDKVxuXG4vLyAqIEFsZXJ0c1xuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuXG4kYWxlcnQtcGFkZGluZy15OiAwLjY4NzVyZW0gIWRlZmF1bHQ7XG4kYWxlcnQtcGFkZGluZy14OiAwLjkzNzVyZW0gIWRlZmF1bHQ7XG4kYWxlcnQtYmctc2NhbGU6IDg0JSAhZGVmYXVsdDtcbiRhbGVydC1iZy10aW50LXNjYWxlOiA4NCUgIWRlZmF1bHQ7IC8vIChjKVxuJGFsZXJ0LWJvcmRlci1zY2FsZTogLTg0JSAhZGVmYXVsdDtcbiRhbGVydC1jb2xvci1zY2FsZTogNDAlICFkZWZhdWx0O1xuJGFsZXJ0LWljb24tc2l6ZTogMS44NzVyZW0gIWRlZmF1bHQ7IC8vIChjKVxuXG4vLyAqIFByb2dyZXNzIGJhcnNcbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcblxuJHByb2dyZXNzLWhlaWdodDogMC4zNzVyZW0gIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtZm9udC1zaXplOiAkZm9udC1zaXplLXNtICFkZWZhdWx0O1xuJHByb2dyZXNzLWJnOiAkZ3JheS03NSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1ib3JkZXItcmFkaXVzOiAzLjEyNXJlbSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iYXItY29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8gTGlzdCBncm91cFxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgbGlzdC1ncm91cC12YXJpYWJsZXNcbiRsaXN0LWdyb3VwLWNvbG9yOiAkaGVhZGluZ3MtY29sb3IgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1iZzogdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1ib3JkZXItY29sb3I6ICRib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1ib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXk6IDAuNXJlbSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWl0ZW0tcGFkZGluZy14OiAxLjI1cmVtICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1pdGVtLWJnLXNjYWxlOiAtODQlICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtaXRlbS1ib3JkZXItc2NhbGU6IC04NCUgIWRlZmF1bHQ7IC8vIChDKVxuJGxpc3QtZ3JvdXAtaXRlbS1jb2xvci1zY2FsZTogMCUgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1pdGVtLWJnLWhvdmVyLXNjYWxlOiA2JSAhZGVmYXVsdDsgLy8gIChjKVxuXG4kbGlzdC1ncm91cC1ob3Zlci1iZzogcmdiYS10by1oZXgoJGdyYXktNTAsICRyZ2JhLXRvLWhleC1iZykgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3RpdmUtY29sb3I6ICRoZWFkaW5ncy1jb2xvciAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGl2ZS1iZzogcmdiYS10by1oZXgocmdiYSgkcHJpbWFyeSwgMC4xNiksICRyZ2JhLXRvLWhleC1iZykgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3RpdmUtYm9yZGVyLWNvbG9yOiAkbGlzdC1ncm91cC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWRpc2FibGVkLWNvbG9yOiAkdGV4dC1tdXRlZCAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWRpc2FibGVkLWJnOiAkbGlzdC1ncm91cC1iZyAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtYWN0aW9uLWNvbG9yOiAkbGlzdC1ncm91cC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3Rpb24taG92ZXItY29sb3I6ICRsaXN0LWdyb3VwLWFjdGlvbi1jb2xvciAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1jb2xvcjogJGxpc3QtZ3JvdXAtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1iZzogJGxpc3QtZ3JvdXAtaG92ZXItYmcgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGxpc3QtZ3JvdXAtdmFyaWFibGVzXG5cbi8vICogSW1hZ2UgdGh1bWJuYWlsc1xuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuXG4kdGh1bWJuYWlsLXBhZGRpbmc6IDAgIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJnOiB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYm9yZGVyLXdpZHRoOiAwcHggIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJvcmRlci1yYWRpdXM6IDBweCAhZGVmYXVsdDtcblxuLy8gKiBGaWd1cmVzXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5cbiRmaWd1cmUtY2FwdGlvbi1jb2xvcjogJHRleHQtbXV0ZWQgIWRlZmF1bHQ7XG5cbi8vICogQnJlYWRjcnVtYnNcbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcblxuJGJyZWFkY3J1bWItcGFkZGluZy15OiAwICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItcGFkZGluZy14OiAwICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItaXRlbS1wYWRkaW5nLXg6IDAuNXJlbSAhZGVmYXVsdDtcbiRicmVhZGNydW1iLW1hcmdpbi1ib3R0b206IDFyZW0gIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1iZzogdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1kaXZpZGVyLWNvbG9yOiAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWFjdGl2ZS1jb2xvcjogJGhlYWRpbmdzLWNvbG9yICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItZGl2aWRlcjogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIGNsYXNzPSdpY29uIGljb24tdGFibGVyIGljb24tdGFibGVyLWNoZXZyb24tcmlnaHQnIHdpZHRoPScxNicgaGVpZ2h0PScyNCcgdmlld0JveD0nMCAwIDI0IDI0JyBzdHJva2Utd2lkdGg9JzEuNzUnIHN0cm9rZT0nI3skYnJlYWRjcnVtYi1kaXZpZGVyLWNvbG9yfScgZmlsbD0nbm9uZScgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbGluZWpvaW49J3JvdW5kJyUzRSUzQ3BhdGggc3Ryb2tlPSdub25lJyBkPSdNMCAwaDI0djI0SDB6JyBmaWxsPSdub25lJyUzRSUzQy9wYXRoJTNFJTNDcG9seWxpbmUgcG9pbnRzPSc5IDYgMTUgMTIgOSAxOCclM0UlM0MvcG9seWxpbmUlM0UlM0Mvc3ZnJTNFXCIpICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItZGl2aWRlci1mbGlwcGVkOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgY2xhc3M9J2ljb24gaWNvbi10YWJsZXIgaWNvbi10YWJsZXItY2hldnJvbi1sZWZ0JyB3aWR0aD0nMTYnIGhlaWdodD0nMjQnIHZpZXdCb3g9JzAgMCAyNCAyNCcgc3Ryb2tlLXdpZHRoPScxLjc1JyBzdHJva2U9JyN7JGJyZWFkY3J1bWItZGl2aWRlci1jb2xvcn0nIGZpbGw9J25vbmUnIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCclM0UlM0NwYXRoIHN0cm9rZT0nbm9uZScgZD0nTTAgMGgyNHYyNEgweicgZmlsbD0nbm9uZSclM0UlM0MvcGF0aCUzRSUzQ3BvbHlsaW5lIHBvaW50cz0nMTUgNiA5IDEyIDE1IDE4JyUzRSUzQy9wb2x5bGluZSUzRSUzQy9zdmclM0VcIikgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1jb2xvcjogJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7IC8vIChDKVxuXG4kYnJlYWRjcnVtYi1kaXZpZGVyLWNoZWNrOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgY2xhc3M9J2ljb24gaWNvbi10YWJsZXIgaWNvbi10YWJsZXItY2hlY2snIHdpZHRoPScxNicgaGVpZ2h0PScyNCcgdmlld0JveD0nMCAwIDI0IDI0JyBzdHJva2Utd2lkdGg9JzEuNzUnIHN0cm9rZT0nI3skYnJlYWRjcnVtYi1kaXZpZGVyLWNvbG9yfScgZmlsbD0nbm9uZScgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbGluZWpvaW49J3JvdW5kJyUzRSUzQ3BhdGggc3Ryb2tlPSdub25lJyBkPSdNMCAwaDI0djI0SDB6JyBmaWxsPSdub25lJyUzRSUzQy9wYXRoJTNFJTNDcGF0aCBkPSdNNSAxMmw1IDVsMTAgLTEwJyUzRSUzQy9wYXRoJTNFJTNDL3N2ZyUzRVwiKTtcblxuJGJyZWFkY3J1bWItaWNvbi1jaGVjay1zdmc6IHN0ci1yZXBsYWNlKFxuICBzdHItcmVwbGFjZSgkYnJlYWRjcnVtYi1kaXZpZGVyLWNoZWNrLCAnI3skYnJlYWRjcnVtYi1kaXZpZGVyLWNvbG9yfScsICRicmVhZGNydW1iLWRpdmlkZXItY29sb3IpLFxuICAnIycsXG4gICclMjMnXG4pOyAvLyAoQylcblxuLy8gKiBDYXJvdXNlbFxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuXG4kY2Fyb3VzZWwtY29udHJvbC1jb2xvcjogJHdoaXRlICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtaW5kaWNhdG9yLXdpZHRoOiAzNHB4ICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1oZWlnaHQ6IDVweCAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItaGl0LWFyZWEtaGVpZ2h0OiAwICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1zcGFjZXI6IDVweCAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3Itb3BhY2l0eTogMC40ICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtY2FwdGlvbi1zcGFjZXI6IDEuNDM3cmVtICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtY29udHJvbC1pY29uLXdpZHRoOiAyLjVyZW0gIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24tYmc6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0Nzdmcgd2lkdGg9JzE4JyBoZWlnaHQ9JzE4JyB2aWV3Qm94PScwIDAgMTggMTgnIGZpbGw9J25vbmUnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyclM0UlM0NwYXRoIGQ9J00xMS4yNSA0LjVMNi43NSA5TDExLjI1IDEzLjUnIHN0cm9rZT0nI3skY2Fyb3VzZWwtY29udHJvbC1jb2xvcn0nIHN0cm9rZS13aWR0aD0nMS43NScgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbGluZWpvaW49J3JvdW5kJy8lM0UlM0NwYXRoIGQ9J00xMS4yNSA0LjVMNi43NSA5TDExLjI1IDEzLjUnIHN0cm9rZT0nd2hpdGUnIHN0cm9rZS1vcGFjaXR5PScwLjInIHN0cm9rZS13aWR0aD0nMS43NScgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbGluZWpvaW49J3JvdW5kJy8lM0UlM0Mvc3ZnJTNFJTBBXCIpICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24tYmc6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0Nzdmcgd2lkdGg9JzE5JyBoZWlnaHQ9JzE4JyB2aWV3Qm94PScwIDAgMTkgMTgnIGZpbGw9J25vbmUnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyclM0UlM0NwYXRoIGQ9J003LjI1IDQuNUwxMS43NSA5TDcuMjUgMTMuNScgc3Ryb2tlPScjeyRjYXJvdXNlbC1jb250cm9sLWNvbG9yfScgc3Ryb2tlLXdpZHRoPScxLjc1JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1saW5lam9pbj0ncm91bmQnLyUzRSUzQ3BhdGggZD0nTTcuMjUgNC41TDExLjc1IDlMNy4yNSAxMy41JyBzdHJva2U9J3doaXRlJyBzdHJva2Utb3BhY2l0eT0nMC4yJyBzdHJva2Utd2lkdGg9JzEuNzUnIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCcvJTNFJTNDL3N2ZyUzRVwiKSAhZGVmYXVsdDtcblxuLy8gU3Bpbm5lcnNcbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcblxuJHNwaW5uZXItd2lkdGgtbGc6IDNyZW0gIWRlZmF1bHQ7IC8vIChDKVxuJHNwaW5uZXItaGVpZ2h0LWxnOiAkc3Bpbm5lci13aWR0aC1sZyAhZGVmYXVsdDsgLy8gKEMpXG4kc3Bpbm5lci1ib3JkZXItd2lkdGgtbGc6IDAuM2VtICFkZWZhdWx0OyAvLyAoQylcblxuLy8gKiBDbG9zZVxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuXG4kYnRuLWNsb3NlLXdpZHRoOiAxLjEyNXJlbSAhZGVmYXVsdDtcbiRidG4tY2xvc2UtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcbiRidG4tY2xvc2UtYmc6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0Nzdmcgd2lkdGg9JzE5JyBoZWlnaHQ9JzE4JyB2aWV3Qm94PScwIDAgMTkgMTgnIGZpbGw9J25vbmUnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyclM0UlM0NwYXRoIGQ9J00xNCA0LjVMNSAxMy41JyBzdHJva2U9JyN7JGJ0bi1jbG9zZS1jb2xvcn0nIHN0cm9rZS13aWR0aD0nMS43NScgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbGluZWpvaW49J3JvdW5kJy8lM0UlM0NwYXRoIGQ9J00xNCA0LjVMNSAxMy41JyBzdHJva2U9J3doaXRlJyBzdHJva2Utb3BhY2l0eT0nMC4yJyBzdHJva2Utd2lkdGg9JzEuNzUnIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCcvJTNFJTNDcGF0aCBkPSdNNSA0LjVMMTQgMTMuNScgc3Ryb2tlPScjeyRidG4tY2xvc2UtY29sb3J9JyBzdHJva2Utd2lkdGg9JzEuNzUnIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCcvJTNFJTNDcGF0aCBkPSdNNSA0LjVMMTQgMTMuNScgc3Ryb2tlPSd3aGl0ZScgc3Ryb2tlLW9wYWNpdHk9JzAuMicgc3Ryb2tlLXdpZHRoPScxLjc1JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1saW5lam9pbj0ncm91bmQnLyUzRSUzQy9zdmclM0UlMEFcIikgIWRlZmF1bHQ7XG4kYnRuLWNsb3NlLWZvY3VzLXNoYWRvdzogbm9uZSAhZGVmYXVsdDtcbiRidG4tY2xvc2UtZm9jdXMtb3BhY2l0eTogMC43NSAhZGVmYXVsdDtcblxuJGNsb3NlLWZvbnQtd2VpZ2h0OiAzMDAgIWRlZmF1bHQ7IC8vIChDKVxuXG4vLyAqIE9mZmNhbnZhc1xuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgb2ZmY2FudmFzLXZhcmlhYmxlc1xuJG9mZmNhbnZhcy10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjI1cyAhZGVmYXVsdDtcbiRvZmZjYW52YXMtYmctY29sb3I6ICRtb2RhbC1jb250ZW50LWJnICFkZWZhdWx0O1xuJG9mZmNhbnZhcy1jb2xvcjogJG1vZGFsLWNvbnRlbnQtY29sb3IgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWJ0bi1jbG9zZS1jb2xvcjogJGJvZHktY29sb3IgIWRlZmF1bHQ7IC8vIChDKVxuLy8gc2Nzcy1kb2NzLWVuZCBvZmZjYW52YXMtdmFyaWFibGVzXG5cbi8vIFV0aWxpdGllc1xuJG92ZXJmbG93czogYXV0bywgaGlkZGVuLCBzY3JvbGwsIHZpc2libGUgIWRlZmF1bHQ7XG5cbi8vIENvbmZpZ1xuJHJ0bC1zdXBwb3J0OiBmYWxzZSAhZGVmYXVsdDtcbiRkYXJrLXN0eWxlOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8gVXNlZnVsIEljb25zXG4kdXBsb2FkLWljb246IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2Nzdmcgd2lkdGg9JzI0JyBoZWlnaHQ9JzI0JyB2aWV3Qm94PScwIDAgMjQgMjQnIGZpbGw9J25vbmUnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyclM2UlM2NwYXRoIGQ9J000IDE3VjE5QzQgMjAuMTA0NiA0Ljg5NTQzIDIxIDYgMjFIMThDMTkuMTA0NiAyMSAyMCAyMC4xMDQ2IDIwIDE5VjE3JyBzdHJva2U9JyUyMzgwODM5MCcgc3Ryb2tlLXdpZHRoPScxLjUnIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCcvJTNlJTNjcGF0aCBkPSdNNyA5TDEyIDRMMTcgOScgc3Ryb2tlPSclMjM4MDgzOTAnIHN0cm9rZS13aWR0aD0nMS41JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1saW5lam9pbj0ncm91bmQnLyUzZSUzY3BhdGggZD0nTTEyIDRWMTYnIHN0cm9rZT0nJTIzODA4MzkwJyBzdHJva2Utd2lkdGg9JzEuNScgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbGluZWpvaW49J3JvdW5kJy8lM2UlM2Mvc3ZnJTNlXCIpO1xuIiwiLy8gQnJlYWtwb2ludCB2aWV3cG9ydCBzaXplcyBhbmQgbWVkaWEgcXVlcmllcy5cbi8vXG4vLyBCcmVha3BvaW50cyBhcmUgZGVmaW5lZCBhcyBhIG1hcCBvZiAobmFtZTogbWluaW11bSB3aWR0aCksIG9yZGVyIGZyb20gc21hbGwgdG8gbGFyZ2U6XG4vL1xuLy8gICAgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4LCB4eGw6IDE0MDBweClcbi8vXG4vLyBUaGUgbWFwIGRlZmluZWQgaW4gdGhlIGAkZ3JpZC1icmVha3BvaW50c2AgZ2xvYmFsIHZhcmlhYmxlIGlzIHVzZWQgYXMgdGhlIGAkYnJlYWtwb2ludHNgIGFyZ3VtZW50IGJ5IGRlZmF1bHQuXG5cbi8vIE5hbWUgb2YgdGhlIG5leHQgYnJlYWtwb2ludCwgb3IgbnVsbCBmb3IgdGhlIGxhc3QgYnJlYWtwb2ludC5cbi8vXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20pXG4vLyAgICBtZFxuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgsIHh4bDogMTQwMHB4KSlcbi8vICAgIG1kXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20sICRicmVha3BvaW50LW5hbWVzOiAoeHMgc20gbWQgbGcgeGwgeHhsKSlcbi8vICAgIG1kXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1uZXh0KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzLCAkYnJlYWtwb2ludC1uYW1lczogbWFwLWtleXMoJGJyZWFrcG9pbnRzKSkge1xuICAkbjogaW5kZXgoJGJyZWFrcG9pbnQtbmFtZXMsICRuYW1lKTtcbiAgQGlmIG5vdCAkbiB7XG4gICAgQGVycm9yIFwiYnJlYWtwb2ludCBgI3skbmFtZX1gIG5vdCBmb3VuZCBpbiBgI3skYnJlYWtwb2ludHN9YFwiO1xuICB9XG4gIEByZXR1cm4gaWYoJG4gPCBsZW5ndGgoJGJyZWFrcG9pbnQtbmFtZXMpLCBudGgoJGJyZWFrcG9pbnQtbmFtZXMsICRuICsgMSksIG51bGwpO1xufVxuXG4vLyBNaW5pbXVtIGJyZWFrcG9pbnQgd2lkdGguIE51bGwgZm9yIHRoZSBzbWFsbGVzdCAoZmlyc3QpIGJyZWFrcG9pbnQuXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1taW4oc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCwgeHhsOiAxNDAwcHgpKVxuLy8gICAgNTc2cHhcbkBmdW5jdGlvbiBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJG5hbWUpO1xuICBAcmV0dXJuIGlmKCRtaW4gIT0gMCwgJG1pbiwgbnVsbCk7XG59XG5cbi8vIE1heGltdW0gYnJlYWtwb2ludCB3aWR0aC5cbi8vIFRoZSBtYXhpbXVtIHZhbHVlIGlzIHJlZHVjZWQgYnkgMC4wMnB4IHRvIHdvcmsgYXJvdW5kIHRoZSBsaW1pdGF0aW9ucyBvZlxuLy8gYG1pbi1gIGFuZCBgbWF4LWAgcHJlZml4ZXMgYW5kIHZpZXdwb3J0cyB3aXRoIGZyYWN0aW9uYWwgd2lkdGhzLlxuLy8gU2VlIGh0dHBzOi8vd3d3LnczLm9yZy9UUi9tZWRpYXF1ZXJpZXMtNC8jbXEtbWluLW1heFxuLy8gVXNlcyAwLjAycHggcmF0aGVyIHRoYW4gMC4wMXB4IHRvIHdvcmsgYXJvdW5kIGEgY3VycmVudCByb3VuZGluZyBidWcgaW4gU2FmYXJpLlxuLy8gU2VlIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzgyNjFcbi8vXG4vLyAgICA+PiBicmVha3BvaW50LW1heChtZCwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4LCB4eGw6IDE0MDBweCkpXG4vLyAgICA3NjcuOThweFxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbWF4KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtYXg6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkbmFtZSk7XG4gIEByZXR1cm4gaWYoJG1heCBhbmQgJG1heCA+IDAsICRtYXggLSAuMDIsIG51bGwpO1xufVxuXG4vLyBSZXR1cm5zIGEgYmxhbmsgc3RyaW5nIGlmIHNtYWxsZXN0IGJyZWFrcG9pbnQsIG90aGVyd2lzZSByZXR1cm5zIHRoZSBuYW1lIHdpdGggYSBkYXNoIGluIGZyb250LlxuLy8gVXNlZnVsIGZvciBtYWtpbmcgcmVzcG9uc2l2ZSB1dGlsaXRpZXMuXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1pbmZpeCh4cywgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4LCB4eGw6IDE0MDBweCkpXG4vLyAgICBcIlwiICAoUmV0dXJucyBhIGJsYW5rIHN0cmluZylcbi8vICAgID4+IGJyZWFrcG9pbnQtaW5maXgoc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCwgeHhsOiAxNDAwcHgpKVxuLy8gICAgXCItc21cIlxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtaW5maXgoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQHJldHVybiBpZihicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzKSA9PSBudWxsLCBcIlwiLCBcIi0jeyRuYW1lfVwiKTtcbn1cblxuLy8gTWVkaWEgb2YgYXQgbGVhc3QgdGhlIG1pbmltdW0gYnJlYWtwb2ludCB3aWR0aC4gTm8gcXVlcnkgZm9yIHRoZSBzbWFsbGVzdCBicmVha3BvaW50LlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50IGFuZCB3aWRlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LXVwKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICBAaWYgJG1pbiB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8gTWVkaWEgb2YgYXQgbW9zdCB0aGUgbWF4aW11bSBicmVha3BvaW50IHdpZHRoLiBObyBxdWVyeSBmb3IgdGhlIGxhcmdlc3QgYnJlYWtwb2ludC5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSB0byB0aGUgZ2l2ZW4gYnJlYWtwb2ludCBhbmQgbmFycm93ZXIuXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1kb3duKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtYXg6IGJyZWFrcG9pbnQtbWF4KCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICBAaWYgJG1heCB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtYXgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8gTWVkaWEgdGhhdCBzcGFucyBtdWx0aXBsZSBicmVha3BvaW50IHdpZHRocy5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSBiZXR3ZWVuIHRoZSBtaW4gYW5kIG1heCBicmVha3BvaW50c1xuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtYmV0d2VlbigkbG93ZXIsICR1cHBlciwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBicmVha3BvaW50LW1pbigkbG93ZXIsICRicmVha3BvaW50cyk7XG4gICRtYXg6IGJyZWFrcG9pbnQtbWF4KCR1cHBlciwgJGJyZWFrcG9pbnRzKTtcblxuICBAaWYgJG1pbiAhPSBudWxsIGFuZCAkbWF4ICE9IG51bGwge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbWluKSBhbmQgKG1heC13aWR0aDogJG1heCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRtYXggPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkbG93ZXIsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRtaW4gPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCR1cHBlciwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8gTWVkaWEgYmV0d2VlbiB0aGUgYnJlYWtwb2ludCdzIG1pbmltdW0gYW5kIG1heGltdW0gd2lkdGhzLlxuLy8gTm8gbWluaW11bSBmb3IgdGhlIHNtYWxsZXN0IGJyZWFrcG9pbnQsIGFuZCBubyBtYXhpbXVtIGZvciB0aGUgbGFyZ2VzdCBvbmUuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgb25seSB0byB0aGUgZ2l2ZW4gYnJlYWtwb2ludCwgbm90IHZpZXdwb3J0cyBhbnkgd2lkZXIgb3IgbmFycm93ZXIuXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1vbmx5KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46ICBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgJG5leHQ6IGJyZWFrcG9pbnQtbmV4dCgkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgJG1heDogIGJyZWFrcG9pbnQtbWF4KCRuZXh0LCAkYnJlYWtwb2ludHMpO1xuXG4gIEBpZiAkbWluICE9IG51bGwgYW5kICRtYXggIT0gbnVsbCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIGFuZCAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1heCA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRuYW1lLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWluID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkbmV4dCwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vICogTGlnaHQvRGFyayBsYXlvdXRcbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbkBtaXhpbiBsaWdodC1sYXlvdXQtb25seSgpIHtcbiAgQGlmICRkYXJrLXN0eWxlIHtcbiAgICBodG1sOm5vdCguZGFyay1zdHlsZSkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG5AbWl4aW4gZGFyay1sYXlvdXQtb25seSgpIHtcbiAgQGlmICRkYXJrLXN0eWxlIHtcbiAgICAuZGFyay1zdHlsZSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8gKiBSVEwvTFRSXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5cbkBtaXhpbiBsdHItb25seSgpIHtcbiAgQGlmICRydGwtc3VwcG9ydCB7XG4gICAgaHRtbDpub3QoW2Rpcj0ncnRsJ10pIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuQG1peGluIHJ0bC1vbmx5KCkge1xuICBAaWYgJHJ0bC1zdXBwb3J0IHtcbiAgICBbZGlyPSdydGwnXSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGx0ci1zdHlsZSgpIHtcbiAgQGlmICRydGwtc3VwcG9ydCB7XG4gICAgaHRtbDpub3QoW2Rpcj0ncnRsJ10pICYge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG5AbWl4aW4gcnRsLXN0eWxlKCkge1xuICBAaWYgJHJ0bC1zdXBwb3J0IHtcbiAgICBbZGlyPSdydGwnXSAmIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLyAqIEtleWZyYW1lc1xuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuXG5AbWl4aW4ga2V5ZnJhbWVzKCRuYW1lKSB7XG4gIEAtd2Via2l0LWtleWZyYW1lcyAjeyRuYW1lfSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cblxuICBALW1vei1rZXlmcmFtZXMgI3skbmFtZX0ge1xuICAgIEBjb250ZW50O1xuICB9XG5cbiAgQGtleWZyYW1lcyAjeyRuYW1lfSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8gKiBDb2xvcnNcbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcblxuQG1peGluIGJnLWNvbG9yLXZhcmlhbnQoJHBhcmVudCwgJGNvbG9yLCAkcnRoLWNvbG9yOiAjMDAwKSB7XG4gICN7JHBhcmVudH0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvciAhaW1wb3J0YW50O1xuICB9XG5cbiAgYSN7JHBhcmVudH0ge1xuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhLXRvLWhleChyZ2JhKCRjb2xvciwgMC45NSksICRiYWNrZ3JvdW5kOiAkcnRoLWNvbG9yKSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIC8vISBGaXg6IERyb3Bkb3duIG5vdGlmaWNhdGlvbiByZWFkIGJhZGdlIGJnIGNvbG9yXG4gIC5kcm9wZG93bi1ub3RpZmljYXRpb25zLWl0ZW06bm90KC5tYXJrLWFzLXJlYWQpIHtcbiAgICAuZHJvcGRvd24tbm90aWZpY2F0aW9ucy1yZWFkIHNwYW4ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gYmctdmFyaWFudCgkcGFyZW50LCAkY29sb3IsICRydGgtY29sb3I6ICMwMDApIHtcbiAgQGluY2x1ZGUgYmctY29sb3ItdmFyaWFudCgkcGFyZW50LCAkY29sb3IpO1xufVxuQG1peGluIGJnLWdsb3ctdmFyaWFudCgkcGFyZW50LCAkY29sb3IpIHtcbiAgI3skcGFyZW50fSB7XG4gICAgJi5iZy1nbG93IHtcbiAgICAgIGJveC1zaGFkb3c6IDBweCAycHggM3B4IDBweCByZ2JhKCRjb2xvciwgMC4zKTtcbiAgICB9XG4gIH1cbn1cblxuLy8gQkcgTGFiZWxcbkBtaXhpbiBiZy1sYWJlbC12YXJpYW50KCRwYXJlbnQsICRiYWNrZ3JvdW5kLCAkY29sb3I6ICRiYWNrZ3JvdW5kKSB7XG4gICRsYWJlbC1iYWNrZ3JvdW5kOiBpZihcbiAgICAkZGFyay1zdHlsZSxcbiAgICBzaGFkZS1jb2xvcigkYmFja2dyb3VuZCwgJGJ0bi1sYWJlbC1iZy1zaGFkZS1hbW91bnQsICRjYXJkLWJnKSxcbiAgICB0aW50LWNvbG9yKCRiYWNrZ3JvdW5kLCAkYnRuLWxhYmVsLWJnLXRpbnQtYW1vdW50LCAkY2FyZC1iZylcbiAgKTtcbiAgI3skcGFyZW50fSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxhYmVsLWJhY2tncm91bmQgIWltcG9ydGFudDtcbiAgICBjb2xvcjogaWYoJGNvbG9yLCAkY29sb3IsIGNvbG9yLWNvbnRyYXN0KCRiZykpICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLy8gQkcgaG92ZXI6IGxhYmVsIHRvIHNvbGlkXG5AbWl4aW4gYmctbGFiZWwtaG92ZXItdmFyaWFudCgkcGFyZW50LCAkYmFja2dyb3VuZCwgJGNvbG9yOiAkYmFja2dyb3VuZCkge1xuICAkbGFiZWwtYmFja2dyb3VuZDogaWYoXG4gICAgJGRhcmstc3R5bGUsXG4gICAgc2hhZGUtY29sb3IoJGJhY2tncm91bmQsICRidG4tbGFiZWwtYmctc2hhZGUtYW1vdW50LCAkY2FyZC1iZyksXG4gICAgdGludC1jb2xvcigkYmFja2dyb3VuZCwgJGJ0bi1sYWJlbC1iZy10aW50LWFtb3VudCwgJGNhcmQtYmcpXG4gICk7XG4gICN7JHBhcmVudH0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsYWJlbC1iYWNrZ3JvdW5kICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6IGlmKCRjb2xvciwgJGNvbG9yLCBjb2xvci1jb250cmFzdCgkYmcpKSAhaW1wb3J0YW50O1xuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQgIWltcG9ydGFudDtcbiAgICAgIGNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGJnLWdyYWRpZW50LXZhcmlhbnQoJHBhcmVudCwgJGJhY2tncm91bmQsICRkZWc6IDQ1ZGVnKSB7XG4gICN7JHBhcmVudH0ge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkZGVnLCAkYmFja2dyb3VuZCwgcmdiYS10by1oZXgocmdiYSgkYmFja2dyb3VuZCwgMC41KSkpICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1peGluIHRleHQtdmFyaWFudCgkcGFyZW50LCAkY29sb3IpIHtcbiAgI3skcGFyZW50fSB7XG4gICAgY29sb3I6ICRjb2xvciAhaW1wb3J0YW50O1xuICB9XG4gIC8vISBGaXg6IHRleHQtYm9keSBob3ZlciBjb2xvclxuICAudGV4dC1ib2R5LFxuICAudGV4dC1oZWFkaW5nIHtcbiAgICAmW2hyZWZdOmhvdmVyIHtcbiAgICAgIGNvbG9yOiBzaGlmdC1jb2xvcigkY29sb3IsICRsaW5rLXNoYWRlLXBlcmNlbnRhZ2UpICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG4iLCIvLyBQYWdpbmF0aW9uXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5cbi8vIEJhc2ljIFBhZ2luYXRpb25cbkBtaXhpbiB0ZW1wbGF0ZS1wYWdpbmF0aW9uLXZhcmlhbnQoJHBhcmVudCwgJGJhY2tncm91bmQsICRjb2xvcjogbnVsbCkge1xuICAkaG92ZXItYmFja2dyb3VuZDogaWYoXG4gICAgJGRhcmstc3R5bGUsXG4gICAgc2hhZGUtY29sb3IoJGJhY2tncm91bmQsICRwYWdpbmF0aW9uLWhvdmVyLWJnLXNjYWxlLCAkcmdiYS10by1oZXgtYmcpLFxuICAgIHRpbnQtY29sb3IoJGJhY2tncm91bmQsICRwYWdpbmF0aW9uLWhvdmVyLWJnLXNjYWxlLCAkcmdiYS10by1oZXgtYmcpXG4gICk7XG4gICN7JHBhcmVudH0gLnBhZ2UtaXRlbSAucGFnZS1saW5rLFxuICAjeyRwYXJlbnR9LnBhZ2luYXRpb24gbGkgPiBhOm5vdCgucGFnZS1saW5rKSB7XG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRob3Zlci1iYWNrZ3JvdW5kO1xuICAgICAgY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIH1cbiAgfVxuICAjeyRwYXJlbnR9IC5wYWdlLWl0ZW0uYWN0aXZlIC5wYWdlLWxpbmssXG4gICN7JHBhcmVudH0ucGFnaW5hdGlvbiBsaS5hY3RpdmUgPiBhOm5vdCgucGFnZS1saW5rKSB7XG4gICAgYm94LXNoYWRvdzogMCAwLjEyNXJlbSAwLjM3NXJlbSAwIHJnYmEoJGJhY2tncm91bmQsIDAuMyk7XG4gICAgJixcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgICAgY29sb3I6IGlmKCRjb2xvciwgJGNvbG9yLCBjb2xvci1jb250cmFzdCgkYmFja2dyb3VuZCkpO1xuICAgIH1cbiAgfVxuICAjeyRwYXJlbnR9IC5wYWdlLWl0ZW0gLnBhZ2UtbGluayxcbiAgI3skcGFyZW50fS5wYWdpbmF0aW9uIGxpID4gYTpub3QoLnBhZ2UtbGluaykge1xuICAgICYud2F2ZXMtZWZmZWN0IHtcbiAgICAgIC53YXZlcy1yaXBwbGUge1xuICAgICAgICBiYWNrZ3JvdW5kOiByYWRpYWwtZ3JhZGllbnQoXG4gICAgICAgICAgcmdiYSgkYmFja2dyb3VuZCwgMC4yKSAwLFxuICAgICAgICAgIHJnYmEoJGJhY2tncm91bmQsIDAuMykgNDAlLFxuICAgICAgICAgIHJnYmEoJGJhY2tncm91bmQsIDAuNCkgNTAlLFxuICAgICAgICAgIHJnYmEoJGJhY2tncm91bmQsIDAuNSkgNjAlLFxuICAgICAgICAgIHJnYmEoJGJsYWNrLCAwKSA3MCVcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gUGFnaW5hdGlvbiBPdXRsaW5lIFZhcmlhbnRcbkBtaXhpbiB0ZW1wbGF0ZS1wYWdpbmF0aW9uLW91dGxpbmUtdmFyaWFudCgkcGFyZW50LCAkYmFja2dyb3VuZCwgJGNvbG9yOiBudWxsKSB7XG4gICN7JHBhcmVudH0gLnBhZ2UtaXRlbS5hY3RpdmUgLnBhZ2UtbGluayxcbiAgI3skcGFyZW50fS5wYWdpbmF0aW9uIGxpLmFjdGl2ZSA+IGE6bm90KC5wYWdlLWxpbmspIHtcbiAgICAmLFxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBib3JkZXItY29sb3I6ICRiYWNrZ3JvdW5kICFpbXBvcnRhbnQ7XG4gICAgICBjb2xvcjogJGJhY2tncm91bmQgIWltcG9ydGFudDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEtdG8taGV4KHJnYmEoJGJhY2tncm91bmQsIDAuMTYpLCAkY2FyZC1iZykgIWltcG9ydGFudDtcbiAgICB9XG4gICAgJi53YXZlcy1lZmZlY3Qge1xuICAgICAgLndhdmVzLXJpcHBsZSB7XG4gICAgICAgIGJhY2tncm91bmQ6IHJhZGlhbC1ncmFkaWVudChcbiAgICAgICAgICByZ2JhKCRiYWNrZ3JvdW5kLCAwLjIpIDAsXG4gICAgICAgICAgcmdiYSgkYmFja2dyb3VuZCwgMC4zKSA0MCUsXG4gICAgICAgICAgcmdiYSgkYmFja2dyb3VuZCwgMC40KSA1MCUsXG4gICAgICAgICAgcmdiYSgkYmFja2dyb3VuZCwgMC41KSA2MCUsXG4gICAgICAgICAgcmdiYSgkYmxhY2ssIDApIDcwJVxuICAgICAgICApO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gdGVtcGxhdGUtcGFnaW5hdGlvbi10aGVtZSgkYmFja2dyb3VuZCwgJGNvbG9yOiBudWxsKSB7XG4gIEBpbmNsdWRlIHRlbXBsYXRlLXBhZ2luYXRpb24tdmFyaWFudCgnJywgJGJhY2tncm91bmQsICRjb2xvcik7XG59XG4iLCIvLyBQcm9ncmVzcyBiYXJzXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5cbkBtaXhpbiB0ZW1wbGF0ZS1wcm9ncmVzcy1iYXItdGhlbWUoJGJhY2tncm91bmQsICRjb2xvcjogbnVsbCkge1xuICAucHJvZ3Jlc3MtYmFyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICBjb2xvcjogaWYoJGNvbG9yLCAkY29sb3IsIGNvbG9yLWNvbnRyYXN0KCRiYWNrZ3JvdW5kKSk7XG4gIH1cbn1cbkBtaXhpbiB0ZW1wbGF0ZS1wcm9ncmVzcy1zaGFkb3ctdGhlbWUoJHBhcmVudCwgJGJhY2tncm91bmQpIHtcbiAgI3skcGFyZW50fSB7XG4gICAgYm94LXNoYWRvdzogMCAwLjEyNXJlbSAwLjM3NXJlbSAwIHJnYmEoJGJhY2tncm91bmQsIDAuMyk7XG4gIH1cbn1cbiIsIi8vIE1vZGFsXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5cbkBtaXhpbiB0ZW1wbGF0ZS1tb2RhbC1vbmJvYXJkaW5nLXRoZW1lKCRiYWNrZ3JvdW5kLCAkY29sb3IpIHtcbiAgLm1vZGFsLW9uYm9hcmRpbmcge1xuICAgIC5jYXJvdXNlbC1pbmRpY2F0b3JzIHtcbiAgICAgIFtkYXRhLWJzLXRhcmdldF0ge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmNhcm91c2VsLWNvbnRyb2wtcHJldixcbiAgLmNhcm91c2VsLWNvbnRyb2wtbmV4dCB7XG4gICAgY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBjb2xvcjogJGJhY2tncm91bmQ7XG4gICAgfVxuICB9XG59XG4iLCIvLyBMaXN0IGdyb3Vwc1xuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuXG5AbWl4aW4gbGlzdC1ncm91cC1pdGVtLXZhcmlhbnQoJHN0YXRlOiBudWxsLCAkYmFja2dyb3VuZDogbnVsbCwgJGNvbG9yOiBudWxsKSB7XG59XG5cbi8vIEJhc2ljIExpc3QgZ3JvdXBzXG5AbWl4aW4gdGVtcGxhdGUtbGlzdC1ncm91cC1pdGVtLXZhcmlhbnQoJHBhcmVudCwgJGJhY2tncm91bmQsICRjb2xvcjogbnVsbCkge1xuICAkYm9yZGVyLWNvbG9yOiBpZihcbiAgICAkZGFyay1zdHlsZSxcbiAgICBzaGlmdC1jb2xvcigkYmFja2dyb3VuZCwgLSRsaXN0LWdyb3VwLWl0ZW0tYm9yZGVyLXNjYWxlLCAkY2FyZC1iZyksXG4gICAgc2hpZnQtY29sb3IoJGJhY2tncm91bmQsICRsaXN0LWdyb3VwLWl0ZW0tYm9yZGVyLXNjYWxlLCAkY2FyZC1iZylcbiAgKTtcbiAgJGJhY2tncm91bmQtY29sb3I6IGlmKFxuICAgICRkYXJrLXN0eWxlLFxuICAgIHNoaWZ0LWNvbG9yKCRiYWNrZ3JvdW5kLCAtJGxpc3QtZ3JvdXAtaXRlbS1iZy1zY2FsZSwgJGNhcmQtYmcpLFxuICAgIHNoaWZ0LWNvbG9yKCRiYWNrZ3JvdW5kLCAkbGlzdC1ncm91cC1pdGVtLWJnLXNjYWxlLCAkY2FyZC1iZylcbiAgKTtcbiAgJGJvcmRlci1jb2xvcjogaWYoXG4gICAgJGRhcmstc3R5bGUsXG4gICAgaWYoXG4gICAgICAkcGFyZW50ID09ICcubGlzdC1ncm91cC1pdGVtLWRhcmsnLFxuICAgICAgY29sb3ItY29udHJhc3QoJGJhY2tncm91bmQpLFxuICAgICAgc2hpZnQtY29sb3IoJGJhY2tncm91bmQsIC0kbGlzdC1ncm91cC1pdGVtLWNvbG9yLXNjYWxlLCAkY2FyZC1iZylcbiAgICApLFxuICAgIHNoaWZ0LWNvbG9yKCRiYWNrZ3JvdW5kLCAkbGlzdC1ncm91cC1pdGVtLWNvbG9yLXNjYWxlLCAkY2FyZC1iZylcbiAgKTtcbiAgJGNvbG9yOiBzaGlmdC1jb2xvcigkYmFja2dyb3VuZCwgJGxpc3QtZ3JvdXAtaXRlbS1jb2xvci1zY2FsZSk7XG4gICRob3Zlci1iYWNrZ3JvdW5kOiBzaGFkZS1jb2xvcigkYmFja2dyb3VuZC1jb2xvciwgJGxpc3QtZ3JvdXAtaXRlbS1iZy1ob3Zlci1zY2FsZSk7XG4gICN7JHBhcmVudH0ge1xuICAgIGJvcmRlci1jb2xvcjogJGJvcmRlci1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZC1jb2xvcjtcbiAgICBjb2xvcjogJGNvbG9yICFpbXBvcnRhbnQ7XG4gIH1cblxuICBhI3skcGFyZW50fSxcbiAgYnV0dG9uI3skcGFyZW50fSB7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyLWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGhvdmVyLWJhY2tncm91bmQ7XG4gICAgICBjb2xvcjogJGNvbG9yO1xuICAgIH1cblxuICAgICYuYWN0aXZlIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGJvcmRlci1jb2xvciAhaW1wb3J0YW50O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQgIWltcG9ydGFudDtcbiAgICAgIC8vIGNvbG9yOiBpZigkY29sb3IsICRjb2xvciwgY29sb3ItY29udHJhc3QoJGJhY2tncm91bmQpKTtcbiAgICAgIGNvbG9yOiBjb2xvci1jb250cmFzdCgkYmFja2dyb3VuZCkgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHRlbXBsYXRlLWxpc3QtZ3JvdXAtdGhlbWUoJGJhY2tncm91bmQsICRjb2xvcjogbnVsbCkge1xuICBAaW5jbHVkZSB0ZW1wbGF0ZS1saXN0LWdyb3VwLWl0ZW0tdmFyaWFudCgnLmxpc3QtZ3JvdXAtaXRlbS1wcmltYXJ5JywgJGJhY2tncm91bmQpO1xuXG4gIC5saXN0LWdyb3VwLWl0ZW0uYWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhLXRvLWhleChyZ2JhKCRiYWNrZ3JvdW5kLCAwLjE2KSwgJGNhcmQtYmcpO1xuICAgIGNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICAmLndhdmVzLWVmZmVjdCB7XG4gICAgICAud2F2ZXMtcmlwcGxlIHtcbiAgICAgICAgYmFja2dyb3VuZDogcmFkaWFsLWdyYWRpZW50KFxuICAgICAgICAgIHJnYmEoJGJhY2tncm91bmQsIDAuMikgMCxcbiAgICAgICAgICByZ2JhKCRiYWNrZ3JvdW5kLCAwLjMpIDQwJSxcbiAgICAgICAgICByZ2JhKCRiYWNrZ3JvdW5kLCAwLjQpIDUwJSxcbiAgICAgICAgICByZ2JhKCRiYWNrZ3JvdW5kLCAwLjUpIDYwJSxcbiAgICAgICAgICByZ2JhKCRibGFjaywgMCkgNzAlXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiB0ZW1wbGF0ZS1saXN0LWdyb3VwLXRpbWVsaW5lLXZhcmlhbnQoJHBhcmVudCwgJGJhY2tncm91bmQpIHtcbiAgLmxpc3QtZ3JvdXAge1xuICAgICYubGlzdC1ncm91cC10aW1lbGluZSB7XG4gICAgICAjeyRwYXJlbnR9IHtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEFsZXJ0c1xuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuXG5AbWl4aW4gYWxlcnQtdmFyaWFudCgkYmFja2dyb3VuZDogbnVsbCwgJGJvcmRlcjogbnVsbCwgJGNvbG9yOiBudWxsKSB7XG59XG5cbi8vIEJhc2ljIEFsZXJ0c1xuQG1peGluIHRlbXBsYXRlLWFsZXJ0LXZhcmlhbnQoJHBhcmVudCwgJGJhY2tncm91bmQpIHtcbiAgJGJvcmRlcjogaWYoXG4gICAgJGRhcmstc3R5bGUsXG4gICAgc2hpZnQtY29sb3IoJGJhY2tncm91bmQsIC0kYWxlcnQtYm9yZGVyLXNjYWxlLCAkY2FyZC1iZyksXG4gICAgc2hpZnQtY29sb3IoJGJhY2tncm91bmQsICRhbGVydC1ib3JkZXItc2NhbGUsICRjYXJkLWJnKVxuICApO1xuICAkY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAkYmFja2dyb3VuZDogaWYoXG4gICAgJGRhcmstc3R5bGUsXG4gICAgc2hhZGUtY29sb3IoJGJhY2tncm91bmQsICRhbGVydC1iZy1zY2FsZSwgJGNhcmQtYmcpLFxuICAgIHRpbnQtY29sb3IoJGJhY2tncm91bmQsICRhbGVydC1iZy10aW50LXNjYWxlLCAkY2FyZC1iZylcbiAgKTtcblxuICAjeyRwYXJlbnR9IHtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkYmFja2dyb3VuZCk7XG4gICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xuICAgIGNvbG9yOiAkY29sb3I7XG4gICAgLmJ0bi1jbG9zZSB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBzdHItcmVwbGFjZShzdHItcmVwbGFjZSgkYnRuLWNsb3NlLWJnLCAnI3skYnRuLWNsb3NlLWNvbG9yfScsICRjb2xvciksICcjJywgJyUyMycpO1xuICAgIH1cblxuICAgIC5hbGVydC1saW5rIHtcbiAgICAgIGNvbG9yOiAkY29sb3I7XG4gICAgfVxuICB9XG5cbiAgI3skcGFyZW50fSB7XG4gICAgaHIge1xuICAgICAgY29sb3I6ICRjb2xvciAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAuYWxlcnQtaWNvbiB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi8vIFNvbGlkIEFsZXJ0c1xuQG1peGluIHRlbXBsYXRlLWFsZXJ0LXNvbGlkLXZhcmlhbnQoJHBhcmVudCwgJGJhY2tncm91bmQsICRjb2xvcjogbnVsbCkge1xuICAkY29sb3I6IGlmKCRjb2xvciwgJGNvbG9yLCBjb2xvci1jb250cmFzdCgkYmFja2dyb3VuZCkpO1xuXG4gICN7JHBhcmVudH0ge1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRiYWNrZ3JvdW5kKTtcbiAgICBjb2xvcjogJGNvbG9yO1xuXG4gICAgLmJ0bi1jbG9zZSB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBzdHItcmVwbGFjZShzdHItcmVwbGFjZSgkYnRuLWNsb3NlLWJnLCAnI3skYnRuLWNsb3NlLWNvbG9yfScsICRjb2xvciksICcjJywgJyUyMycpO1xuICAgIH1cblxuICAgIC5hbGVydC1saW5rIHtcbiAgICAgIGNvbG9yOiAkY29sb3I7XG4gICAgfVxuICB9XG5cbiAgI3skcGFyZW50fSB7XG4gICAgaHIge1xuICAgICAgY29sb3I6ICRjb2xvciAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAuYWxlcnQtaWNvbiB7XG4gICAgICBjb2xvcjogJGJhY2tncm91bmQgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cblxuLy8gT3V0bGluZSBBbGVydHNcbkBtaXhpbiB0ZW1wbGF0ZS1hbGVydC1vdXRsaW5lLXZhcmlhbnQoJHBhcmVudCwgJGJhY2tncm91bmQsICRjb2xvcjogbnVsbCkge1xuICAkY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAkaWNvbi1iZzogaWYoXG4gICAgJGRhcmstc3R5bGUsXG4gICAgc2hhZGUtY29sb3IoJGJhY2tncm91bmQsICRhbGVydC1iZy1zY2FsZSwgJGNhcmQtYmcpLFxuICAgIHRpbnQtY29sb3IoJGJhY2tncm91bmQsICRhbGVydC1iZy10aW50LXNjYWxlLCAkY2FyZC1iZylcbiAgKTtcblxuICAjeyRwYXJlbnR9IHtcbiAgICBib3JkZXItY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkY29sb3I7XG4gICAgLmJ0bi1jbG9zZSB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBzdHItcmVwbGFjZShzdHItcmVwbGFjZSgkYnRuLWNsb3NlLWJnLCAnI3skYnRuLWNsb3NlLWNvbG9yfScsICRiYWNrZ3JvdW5kKSwgJyMnLCAnJTIzJyk7XG4gICAgfVxuXG4gICAgLmFsZXJ0LWxpbmsge1xuICAgICAgY29sb3I6ICRjb2xvcjtcbiAgICB9XG4gIH1cblxuICAjeyRwYXJlbnR9IHtcbiAgICBociB7XG4gICAgICBjb2xvcjogJGNvbG9yICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5hbGVydC1pY29uIHtcbiAgICAgIGNvbG9yOiAkY29sb3IgIWltcG9ydGFudDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRpY29uLWJnICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG4iLCIvLyBHcmFkaWVudHNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGdyYWRpZW50LWJnLW1peGluXG5AbWl4aW4gZ3JhZGllbnQtYmcoJGNvbG9yOiBudWxsKSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcblxuICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHZhcigtLSN7JHByZWZpeH1ncmFkaWVudCk7XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgZ3JhZGllbnQtYmctbWl4aW5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGdyYWRpZW50LW1peGluc1xuLy8gSG9yaXpvbnRhbCBncmFkaWVudCwgZnJvbSBsZWZ0IHRvIHJpZ2h0XG4vL1xuLy8gQ3JlYXRlcyB0d28gY29sb3Igc3RvcHMsIHN0YXJ0IGFuZCBlbmQsIGJ5IHNwZWNpZnlpbmcgYSBjb2xvciBhbmQgcG9zaXRpb24gZm9yIGVhY2ggY29sb3Igc3RvcC5cbkBtaXhpbiBncmFkaWVudC14KCRzdGFydC1jb2xvcjogJGdyYXktNzAwLCAkZW5kLWNvbG9yOiAkZ3JheS04MDAsICRzdGFydC1wZXJjZW50OiAwJSwgJGVuZC1wZXJjZW50OiAxMDAlKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgJHN0YXJ0LWNvbG9yICRzdGFydC1wZXJjZW50LCAkZW5kLWNvbG9yICRlbmQtcGVyY2VudCk7XG59XG5cbi8vIFZlcnRpY2FsIGdyYWRpZW50LCBmcm9tIHRvcCB0byBib3R0b21cbi8vXG4vLyBDcmVhdGVzIHR3byBjb2xvciBzdG9wcywgc3RhcnQgYW5kIGVuZCwgYnkgc3BlY2lmeWluZyBhIGNvbG9yIGFuZCBwb3NpdGlvbiBmb3IgZWFjaCBjb2xvciBzdG9wLlxuQG1peGluIGdyYWRpZW50LXkoJHN0YXJ0LWNvbG9yOiAkZ3JheS03MDAsICRlbmQtY29sb3I6ICRncmF5LTgwMCwgJHN0YXJ0LXBlcmNlbnQ6IG51bGwsICRlbmQtcGVyY2VudDogbnVsbCkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTtcbn1cblxuQG1peGluIGdyYWRpZW50LWRpcmVjdGlvbmFsKCRzdGFydC1jb2xvcjogJGdyYXktNzAwLCAkZW5kLWNvbG9yOiAkZ3JheS04MDAsICRkZWc6IDQ1ZGVnKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkZGVnLCAkc3RhcnQtY29sb3IsICRlbmQtY29sb3IpO1xufVxuXG5AbWl4aW4gZ3JhZGllbnQteC10aHJlZS1jb2xvcnMoJHN0YXJ0LWNvbG9yOiAkYmx1ZSwgJG1pZC1jb2xvcjogJHB1cnBsZSwgJGNvbG9yLXN0b3A6IDUwJSwgJGVuZC1jb2xvcjogJHJlZCkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICRzdGFydC1jb2xvciwgJG1pZC1jb2xvciAkY29sb3Itc3RvcCwgJGVuZC1jb2xvcik7XG59XG5cbkBtaXhpbiBncmFkaWVudC15LXRocmVlLWNvbG9ycygkc3RhcnQtY29sb3I6ICRibHVlLCAkbWlkLWNvbG9yOiAkcHVycGxlLCAkY29sb3Itc3RvcDogNTAlLCAkZW5kLWNvbG9yOiAkcmVkKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xufVxuXG5AbWl4aW4gZ3JhZGllbnQtcmFkaWFsKCRpbm5lci1jb2xvcjogJGdyYXktNzAwLCAkb3V0ZXItY29sb3I6ICRncmF5LTgwMCkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiByYWRpYWwtZ3JhZGllbnQoY2lyY2xlLCAkaW5uZXItY29sb3IsICRvdXRlci1jb2xvcik7XG59XG5cbkBtaXhpbiBncmFkaWVudC1zdHJpcGVkKCRjb2xvcjogcmdiYSgkd2hpdGUsIC4xNSksICRhbmdsZTogNDVkZWcpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCRhbmdsZSwgJGNvbG9yIDI1JSwgdHJhbnNwYXJlbnQgMjUlLCB0cmFuc3BhcmVudCA1MCUsICRjb2xvciA1MCUsICRjb2xvciA3NSUsIHRyYW5zcGFyZW50IDc1JSwgdHJhbnNwYXJlbnQpO1xufVxuLy8gc2Nzcy1kb2NzLWVuZCBncmFkaWVudC1taXhpbnNcbiIsIi8vIFRvb2x0aXBzXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5cbkBtaXhpbiB0ZW1wbGF0ZS10b29sdGlwLXZhcmlhbnQoJHBhcmVudCwgJGJhY2tncm91bmQsICRjb2xvcjogbnVsbCkge1xuICAjeyRwYXJlbnR9IHtcbiAgICAudG9vbHRpcC1pbm5lciB7XG4gICAgICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZDtcbiAgICAgIGNvbG9yOiBpZigkY29sb3IsICRjb2xvciwgY29sb3ItY29udHJhc3QoJGJhY2tncm91bmQpKTtcbiAgICB9XG5cbiAgICAmLmJzLXRvb2x0aXAtYXV0byB7XG4gICAgICAmW2RhdGEtcG9wcGVyLXBsYWNlbWVudD0ndG9wJ10gLnRvb2x0aXAtYXJyb3c6OmJlZm9yZSB7XG4gICAgICAgIGJvcmRlci10b3AtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgICAgfVxuXG4gICAgICAmW2RhdGEtcG9wcGVyLXBsYWNlbWVudD0nbGVmdCddIC50b29sdGlwLWFycm93OjpiZWZvcmUge1xuICAgICAgICBib3JkZXItbGVmdC1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgICAgIEBpbmNsdWRlIHJ0bC1zdHlsZSB7XG4gICAgICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmW2RhdGEtcG9wcGVyLXBsYWNlbWVudD0nYm90dG9tJ10gLnRvb2x0aXAtYXJyb3c6OmJlZm9yZSB7XG4gICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgICAgfVxuXG4gICAgICAmW2RhdGEtcG9wcGVyLXBsYWNlbWVudD0ncmlnaHQnXSAudG9vbHRpcC1hcnJvdzo6YmVmb3JlIHtcbiAgICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICAgICAgQGluY2x1ZGUgcnRsLXN0eWxlIHtcbiAgICAgICAgICBib3JkZXItbGVmdC1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIFBvcG92ZXJzXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5cbkBtaXhpbiB0ZW1wbGF0ZS1wb3BvdmVyLXZhcmlhbnQoJHBhcmVudCwgJGJhY2tncm91bmQsICRjb2xvcjogbnVsbCkge1xuICAkY29sb3I6IGlmKCRjb2xvciwgJGNvbG9yLCBjb2xvci1jb250cmFzdCgkYmFja2dyb3VuZCkpO1xuXG4gICN7JHBhcmVudH0ge1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYmFja2dyb3VuZDogJGJhY2tncm91bmQ7XG5cbiAgICAucG9wb3Zlci1oZWFkZXIge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgY29sb3I6ICRjb2xvcjtcbiAgICB9XG5cbiAgICAucG9wb3Zlci1ib2R5IHtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgY29sb3I6IHJnYmEoJGNvbG9yLCAwLjgpO1xuICAgIH1cblxuICAgID4gLnBvcG92ZXItYXJyb3c6OmJlZm9yZSB7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIH1cbiAgICAmLmJzLXBvcG92ZXItYXV0byB7XG4gICAgICAmW2RhdGEtcG9wcGVyLXBsYWNlbWVudD0ndG9wJ10gPiAucG9wb3Zlci1hcnJvdzo6YWZ0ZXIge1xuICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAkYmFja2dyb3VuZCAhaW1wb3J0YW50O1xuICAgICAgfVxuXG4gICAgICAmW2RhdGEtcG9wcGVyLXBsYWNlbWVudD0ncmlnaHQnXSA+IC5wb3BvdmVyLWFycm93OjphZnRlciB7XG4gICAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogJGJhY2tncm91bmQgIWltcG9ydGFudDtcbiAgICAgICAgQGluY2x1ZGUgcnRsLXN0eWxlIHtcbiAgICAgICAgICBib3JkZXItbGVmdC1jb2xvcjogJGJhY2tncm91bmQgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmW2RhdGEtcG9wcGVyLXBsYWNlbWVudD0nYm90dG9tJ10gPiAucG9wb3Zlci1hcnJvdzo6YWZ0ZXIge1xuICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkYmFja2dyb3VuZCAhaW1wb3J0YW50O1xuICAgICAgfVxuXG4gICAgICAmW2RhdGEtcG9wcGVyLXBsYWNlbWVudD0nbGVmdCddID4gLnBvcG92ZXItYXJyb3c6OmFmdGVyIHtcbiAgICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICRiYWNrZ3JvdW5kICFpbXBvcnRhbnQ7XG4gICAgICAgIEBpbmNsdWRlIHJ0bC1zdHlsZSB7XG4gICAgICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAkYmFja2dyb3VuZCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICZbZGF0YS1wb3BwZXItcGxhY2VtZW50PSdib3R0b20nXSAucG9wb3Zlci1oZWFkZXI6OmJlZm9yZSB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gVGFibGVzXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5cbkBtaXhpbiB0ZW1wbGF0ZS10YWJsZS12YXJpYW50KCRwYXJlbnQsICRiYWNrZ3JvdW5kLCAkbGF5b3V0LWNvbG9yOiAkd2hpdGUpIHtcbiAgLnRhYmxlLSN7JHBhcmVudH0ge1xuICAgICRjb2xvcjogY29sb3ItY29udHJhc3Qob3BhcXVlKCRib2R5LWJnLCAkYmFja2dyb3VuZCkpO1xuICAgICRob3Zlci1iZzogbWl4KCRjb2xvciwgJGJhY2tncm91bmQsIHBlcmNlbnRhZ2UoJHRhYmxlLWhvdmVyLWJnLWZhY3RvcikpO1xuICAgICRzdHJpcGVkLWJnOiBtaXgoJGNvbG9yLCAkYmFja2dyb3VuZCwgcGVyY2VudGFnZSgkdGFibGUtc3RyaXBlZC1iZy1mYWN0b3IpKTtcbiAgICAkYWN0aXZlLWJnOiBtaXgoJGNvbG9yLCAkYmFja2dyb3VuZCwgcGVyY2VudGFnZSgkdGFibGUtYWN0aXZlLWJnLWZhY3RvcikpO1xuXG4gICAgLS0jeyR2YXJpYWJsZS1wcmVmaXh9dGFibGUtYmc6ICN7JGJhY2tncm91bmR9O1xuICAgIC0tI3skdmFyaWFibGUtcHJlZml4fXRhYmxlLXN0cmlwZWQtYmc6ICN7JHN0cmlwZWQtYmd9O1xuICAgIC0tI3skdmFyaWFibGUtcHJlZml4fXRhYmxlLXN0cmlwZWQtY29sb3I6ICN7Y29sb3ItY29udHJhc3QoJHN0cmlwZWQtYmcpfTtcbiAgICAtLSN7JHZhcmlhYmxlLXByZWZpeH10YWJsZS1hY3RpdmUtYmc6ICN7JGFjdGl2ZS1iZ307XG4gICAgLS0jeyR2YXJpYWJsZS1wcmVmaXh9dGFibGUtYWN0aXZlLWNvbG9yOiAje2NvbG9yLWNvbnRyYXN0KCRhY3RpdmUtYmcpfTtcbiAgICAtLSN7JHZhcmlhYmxlLXByZWZpeH10YWJsZS1ob3Zlci1iZzogI3skaG92ZXItYmd9O1xuICAgIC0tI3skdmFyaWFibGUtcHJlZml4fXRhYmxlLWhvdmVyLWNvbG9yOiAje2NvbG9yLWNvbnRyYXN0KCRob3Zlci1iZyl9O1xuXG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBib3JkZXItY29sb3I6IG1peCgkY29sb3IsICRiYWNrZ3JvdW5kLCBwZXJjZW50YWdlKCR0YWJsZS1ib3JkZXItZmFjdG9yKSk7XG4gICAgLmJ0bi1pY29uLFxuICAgIC5idG4ge1xuICAgICAgY29sb3I6ICRjb2xvcjtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEJ1dHRvbnNcbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcblxuLy8gQmFzaWNcbkBtaXhpbiBidXR0b24tdmFyaWFudChcbiAgJGJhY2tncm91bmQ6IG51bGwsXG4gICRib3JkZXI6IG51bGwsXG4gICRob3Zlci1iYWNrZ3JvdW5kOiBudWxsLFxuICAkaG92ZXItYm9yZGVyOiBudWxsLFxuICAkYWN0aXZlLWJhY2tncm91bmQ6IG51bGwsXG4gICRhY3RpdmUtYm9yZGVyOiBudWxsXG4pIHtcbn1cbkBtaXhpbiB0ZW1wbGF0ZS1idXR0b24tdmFyaWFudCgkcGFyZW50LCAkYmFja2dyb3VuZCwgJGNvbG9yOiBudWxsLCAkYm9yZGVyOiBudWxsKSB7XG4gICRiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZDtcbiAgJGJvcmRlcjogJGJhY2tncm91bmQ7XG4gICRjb2xvcjogaWYoJGNvbG9yLCAkY29sb3IsIGNvbG9yLWNvbnRyYXN0KCRiYWNrZ3JvdW5kKSk7XG4gICRob3Zlci1iYWNrZ3JvdW5kOiBpZihcbiAgICAkY29sb3IgPT0gJGNvbG9yLWNvbnRyYXN0LWxpZ2h0LFxuICAgIHNoYWRlLWNvbG9yKCRiYWNrZ3JvdW5kLCAkYnRuLWhvdmVyLWJnLXNoYWRlLWFtb3VudCksXG4gICAgdGludC1jb2xvcigkYmFja2dyb3VuZCwgJGJ0bi1ob3Zlci1iZy10aW50LWFtb3VudClcbiAgKTtcbiAgJGhvdmVyLWJvcmRlcjogaWYoXG4gICAgJGNvbG9yID09ICRjb2xvci1jb250cmFzdC1saWdodCxcbiAgICBzaGFkZS1jb2xvcigkYm9yZGVyLCAkYnRuLWhvdmVyLWJvcmRlci1zaGFkZS1hbW91bnQpLFxuICAgIHRpbnQtY29sb3IoJGJvcmRlciwgJGJ0bi1ob3Zlci1ib3JkZXItdGludC1hbW91bnQpXG4gICk7XG4gICRob3Zlci1jb2xvcjogY29sb3ItY29udHJhc3QoJGhvdmVyLWJhY2tncm91bmQpO1xuXG4gICRhY3RpdmUtYmFja2dyb3VuZDogaWYoXG4gICAgJGNvbG9yID09ICRjb2xvci1jb250cmFzdC1saWdodCxcbiAgICBzaGFkZS1jb2xvcigkYmFja2dyb3VuZCwgJGJ0bi1hY3RpdmUtYmctc2hhZGUtYW1vdW50KSxcbiAgICB0aW50LWNvbG9yKCRiYWNrZ3JvdW5kLCAkYnRuLWFjdGl2ZS1iZy10aW50LWFtb3VudClcbiAgKTtcbiAgJGFjdGl2ZS1ib3JkZXI6IGlmKFxuICAgICRjb2xvciA9PSAkY29sb3ItY29udHJhc3QtbGlnaHQsXG4gICAgc2hhZGUtY29sb3IoJGJvcmRlciwgJGJ0bi1hY3RpdmUtYm9yZGVyLXNoYWRlLWFtb3VudCksXG4gICAgdGludC1jb2xvcigkYm9yZGVyLCAkYnRuLWFjdGl2ZS1ib3JkZXItdGludC1hbW91bnQpXG4gICk7XG4gICRhY3RpdmUtY29sb3I6IGNvbG9yLWNvbnRyYXN0KCRhY3RpdmUtYmFja2dyb3VuZCk7XG5cbiAgI3skcGFyZW50fSB7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkYmFja2dyb3VuZCk7XG4gICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xuICAgICYuYnRuW2NsYXNzKj0nYnRuLSddOm5vdChbY2xhc3MqPSdidG4tbGFiZWwtJ10pOm5vdChbY2xhc3MqPSdidG4tb3V0bGluZS0nXSk6bm90KFtjbGFzcyo9J2J0bi10ZXh0LSddKTpub3QoXG4gICAgICAgIC5idG4taWNvblxuICAgICAgKTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKSB7XG4gICAgICBib3gtc2hhZG93OiAwIDAuMTI1cmVtIDAuMzc1cmVtIDAgcmdiYSgkYmFja2dyb3VuZCwgMC4zKTtcbiAgICB9XG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogJGhvdmVyLWNvbG9yICFpbXBvcnRhbnQ7XG4gICAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkaG92ZXItYmFja2dyb3VuZCAhaW1wb3J0YW50KTtcbiAgICAgIGJvcmRlci1jb2xvcjogJGhvdmVyLWJvcmRlciAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5idG4tY2hlY2s6Zm9jdXMgKyAmLFxuICAgICY6Zm9jdXMsXG4gICAgJi5mb2N1cyB7XG4gICAgICBjb2xvcjogJGhvdmVyLWNvbG9yO1xuICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGhvdmVyLWJhY2tncm91bmQpO1xuICAgICAgYm9yZGVyLWNvbG9yOiAkaG92ZXItYm9yZGVyO1xuICAgIH1cblxuICAgIC5idG4tY2hlY2s6Y2hlY2tlZCArICYsXG4gICAgLmJ0bi1jaGVjazphY3RpdmUgKyAmLFxuICAgICY6YWN0aXZlLFxuICAgICYuYWN0aXZlLFxuICAgICYuc2hvdy5kcm9wZG93bi10b2dnbGUsXG4gICAgLnNob3cgPiAmLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgICBjb2xvcjogJGFjdGl2ZS1jb2xvciAhaW1wb3J0YW50O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGFjdGl2ZS1iYWNrZ3JvdW5kICFpbXBvcnRhbnQ7XG4gICAgICAvLyBSZW1vdmUgQ1NTIGdyYWRpZW50cyBpZiB0aGV5J3JlIGVuYWJsZWRcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGlmKCRlbmFibGUtZ3JhZGllbnRzLCBub25lICFpbXBvcnRhbnQsIG51bGwpO1xuICAgICAgYm9yZGVyLWNvbG9yOiAkYWN0aXZlLWJvcmRlciAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgICYuZGlzYWJsZWQsXG4gICAgJjpkaXNhYmxlZCB7XG4gICAgICBjb2xvcjogJGNvbG9yICFpbXBvcnRhbnQ7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZCAhaW1wb3J0YW50O1xuICAgICAgLy8gUmVtb3ZlIENTUyBncmFkaWVudHMgaWYgdGhleSdyZSBlbmFibGVkXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBpZigkZW5hYmxlLWdyYWRpZW50cywgbm9uZSAhaW1wb3J0YW50LCBudWxsKTtcbiAgICAgIGJvcmRlci1jb2xvcjogJGJvcmRlciAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIC8vIEJ1dHRvbiBncm91cHNcbiAgLmJ0bi1ncm91cCAjeyRwYXJlbnR9LFxuICAuaW5wdXQtZ3JvdXAgI3skcGFyZW50fSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAkaW5wdXQtYnRuLWJvcmRlci13aWR0aCBzb2xpZCAkYWN0aXZlLWJhY2tncm91bmQ7XG4gICAgYm9yZGVyLWxlZnQ6ICRpbnB1dC1idG4tYm9yZGVyLXdpZHRoIHNvbGlkICRhY3RpdmUtYmFja2dyb3VuZDtcbiAgfVxuICAuYnRuLWdyb3VwLXZlcnRpY2FsICN7JHBhcmVudH0ge1xuICAgIGJvcmRlci10b3AtY29sb3I6ICRhY3RpdmUtYmFja2dyb3VuZDtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkYWN0aXZlLWJhY2tncm91bmQ7XG4gIH1cbn1cblxuQG1peGluIHRlbXBsYXRlLWJ1dHRvbi10ZXh0LXZhcmlhbnQoJHBhcmVudCwgJGJhY2tncm91bmQsICRjb2xvcjogbnVsbCwgJGJvcmRlcjogbnVsbCkge1xuICAkYm9yZGVyOiB0cmFuc3BhcmVudDtcbiAgJGxhYmVsLWNvbG9yOiBpZigkY29sb3IsICRjb2xvciwgJGJhY2tncm91bmQpO1xuICAkaG92ZXItY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAkaG92ZXItYmFja2dyb3VuZDogJGJhY2tncm91bmQ7XG4gICRob3Zlci1iYWNrZ3JvdW5kOiBpZihcbiAgICAkaG92ZXItY29sb3IgPT0gJGNvbG9yLWNvbnRyYXN0LWxpZ2h0LFxuICAgIHNoYWRlLWNvbG9yKCRiYWNrZ3JvdW5kLCAkYnRuLXRleHQtaG92ZXItc2hhZGUtYW1vdW50LCAkY2FyZC1iZyksXG4gICAgdGludC1jb2xvcigkYmFja2dyb3VuZCwgJGJ0bi10ZXh0LWhvdmVyLXRpbnQtYW1vdW50LCAkY2FyZC1iZylcbiAgKTtcblxuICAkZm9jdXMtYmFja2dyb3VuZDogaWYoXG4gICAgJGhvdmVyLWNvbG9yID09ICRjb2xvci1jb250cmFzdC1saWdodCxcbiAgICBzaGFkZS1jb2xvcigkYmFja2dyb3VuZCwgJGJ0bi10ZXh0LWZvY3VzLXNoYWRlLWFtb3VudCwgJGNhcmQtYmcpLFxuICAgIHRpbnQtY29sb3IoJGJhY2tncm91bmQsICRidG4tdGV4dC1mb2N1cy10aW50LWFtb3VudCwgJGNhcmQtYmcpXG4gICk7XG5cbiAgJGFjdGl2ZS1jb2xvcjogJGhvdmVyLWNvbG9yO1xuICAkYWN0aXZlLWJhY2tncm91bmQ6IGlmKFxuICAgICRhY3RpdmUtY29sb3IgPT0gJGNvbG9yLWNvbnRyYXN0LWxpZ2h0LFxuICAgIHNoYWRlLWNvbG9yKCRiYWNrZ3JvdW5kLCAkYnRuLXRleHQtYWN0aXZlLXNoYWRlLWFtb3VudCwgJGNhcmQtYmcpLFxuICAgIHRpbnQtY29sb3IoJGJhY2tncm91bmQsICRidG4tdGV4dC1hY3RpdmUtdGludC1hbW91bnQsICRjYXJkLWJnKVxuICApO1xuXG4gICN7JHBhcmVudH0ge1xuICAgIGNvbG9yOiAkbGFiZWwtY29sb3I7XG4gICAgJi53YXZlcy1lZmZlY3Qge1xuICAgICAgLndhdmVzLXJpcHBsZSB7XG4gICAgICAgIGJhY2tncm91bmQ6IHJhZGlhbC1ncmFkaWVudChcbiAgICAgICAgICByZ2JhKCRiYWNrZ3JvdW5kLCAwLjIpIDAsXG4gICAgICAgICAgcmdiYSgkYmFja2dyb3VuZCwgMC4zKSA0MCUsXG4gICAgICAgICAgcmdiYSgkYmFja2dyb3VuZCwgMC40KSA1MCUsXG4gICAgICAgICAgcmdiYSgkYmFja2dyb3VuZCwgMC41KSA2MCUsXG4gICAgICAgICAgcmdiYSgkd2hpdGUsIDApIDcwJVxuICAgICAgICApO1xuICAgICAgfVxuICAgIH1cblxuICAgICY6aG92ZXIge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xuICAgICAgYmFja2dyb3VuZDogJGhvdmVyLWJhY2tncm91bmQ7XG4gICAgICBjb2xvcjogJGhvdmVyLWNvbG9yO1xuICAgIH1cblxuICAgICY6Zm9jdXMsXG4gICAgJi5mb2N1cyB7XG4gICAgICBjb2xvcjogJGhvdmVyLWNvbG9yO1xuICAgICAgYmFja2dyb3VuZDogJGZvY3VzLWJhY2tncm91bmQ7XG4gICAgfVxuXG4gICAgJjphY3RpdmUsXG4gICAgJi5hY3RpdmUsXG4gICAgJi5zaG93LmRyb3Bkb3duLXRvZ2dsZSxcbiAgICAuc2hvdyA+ICYuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICAgIGNvbG9yOiAkYWN0aXZlLWNvbG9yICFpbXBvcnRhbnQ7XG4gICAgICBiYWNrZ3JvdW5kOiAkYWN0aXZlLWJhY2tncm91bmQgIWltcG9ydGFudDtcbiAgICAgIC8vIFJlbW92ZSBDU1MgZ3JhZGllbnRzIGlmIHRoZXkncmUgZW5hYmxlZFxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogaWYoJGVuYWJsZS1ncmFkaWVudHMsIG5vbmUgIWltcG9ydGFudCwgbnVsbCk7XG4gICAgICBib3JkZXItY29sb3I6ICRib3JkZXIgIWltcG9ydGFudDtcbiAgICB9XG4gICAgJjpkaXNhYmxlZCxcbiAgICAmLmRpc2FibGVkIHtcbiAgICAgIGNvbG9yOiAkbGFiZWwtY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLy8gQnV0dG9uIGdyb3Vwc1xuICAuYnRuLWdyb3VwICN7JHBhcmVudH0sXG4gIC5pbnB1dC1ncm91cCAjeyRwYXJlbnR9IHtcbiAgICBib3JkZXItcmlnaHQ6ICRpbnB1dC1idG4tYm9yZGVyLXdpZHRoIHNvbGlkICRiYWNrZ3JvdW5kICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLWxlZnQ6ICRpbnB1dC1idG4tYm9yZGVyLXdpZHRoIHNvbGlkICRiYWNrZ3JvdW5kICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmJ0bi1ncm91cC12ZXJ0aWNhbCAjeyRwYXJlbnR9IHtcbiAgICBib3JkZXItdG9wOiAkaW5wdXQtYnRuLWJvcmRlci13aWR0aCBzb2xpZCAkYmFja2dyb3VuZCAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1ib3R0b206ICRpbnB1dC1idG4tYm9yZGVyLXdpZHRoIHNvbGlkICRiYWNrZ3JvdW5kICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLy8gTGFiZWxcbkBtaXhpbiBidXR0b24tbGFiZWwtdmFyaWFudCgkYmFja2dyb3VuZDogbnVsbCwgJGJvcmRlcjogbnVsbCwgJGFjdGl2ZS1iYWNrZ3JvdW5kOiBudWxsLCAkYWN0aXZlLWJvcmRlcjogbnVsbCkge1xufVxuXG5AbWl4aW4gdGVtcGxhdGUtYnV0dG9uLWxhYmVsLXZhcmlhbnQoJHBhcmVudCwgJGJhY2tncm91bmQsICRjb2xvcjogbnVsbCwgJGJvcmRlcjogbnVsbCkge1xuICAvLyBVc2luZyB0aGUgJGRhcmstc3R5bGUgdmFyaWFibGUgZm9yIGNvbmRpdGlvbiBhcyBpbiBsYWJlbCBzdHlsZSB0ZXh0IGNvbG9yIGNhbid0IGNvbXBhcmUgd2l0aCAkY29sb3ItY29udHJhc3QtbGlnaHQvZGFya1xuICAkYm9yZGVyOiB0cmFuc3BhcmVudDtcblxuICAkbGFiZWwtY29sb3I6IGlmKCRjb2xvciwgJGNvbG9yLCAkYmFja2dyb3VuZCk7XG4gICRob3Zlci1jb2xvcjogaWYoJGNvbG9yLCAkY29sb3IsIGNvbG9yLWNvbnRyYXN0KCRiYWNrZ3JvdW5kKSk7XG5cbiAgJGxhYmVsLWJhY2tncm91bmQ6IGlmKFxuICAgICRob3Zlci1jb2xvciA9PSAkY29sb3ItY29udHJhc3QtbGlnaHQsXG4gICAgc2hhZGUtY29sb3IoJGJhY2tncm91bmQsICRidG4tbGFiZWwtYmctc2hhZGUtYW1vdW50LCAkY2FyZC1iZyksXG4gICAgdGludC1jb2xvcigkYmFja2dyb3VuZCwgJGJ0bi1sYWJlbC1iZy10aW50LWFtb3VudCwgJGNhcmQtYmcpXG4gICk7XG5cbiAgJGhvdmVyLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgJGhvdmVyLWJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kO1xuICAkaG92ZXItYmFja2dyb3VuZDogaWYoXG4gICAgJGhvdmVyLWNvbG9yID09ICRjb2xvci1jb250cmFzdC1saWdodCxcbiAgICBzaGFkZS1jb2xvcigkYmFja2dyb3VuZCwgJGJ0bi1sYWJlbC1ob3Zlci1zaGFkZS1hbW91bnQsICRjYXJkLWJnKSxcbiAgICB0aW50LWNvbG9yKCRiYWNrZ3JvdW5kLCAkYnRuLWxhYmVsLWhvdmVyLXRpbnQtYW1vdW50LCAkY2FyZC1iZylcbiAgKTtcblxuICAkYWN0aXZlLWNvbG9yOiAkaG92ZXItY29sb3I7XG4gICRhY3RpdmUtYmFja2dyb3VuZDogJGhvdmVyLWJhY2tncm91bmQ7XG5cbiAgJGRpc2FibGVkLWJhY2tncm91bmQ6IGlmKFxuICAgICRob3Zlci1jb2xvciA9PSAkY29sb3ItY29udHJhc3QtbGlnaHQsXG4gICAgc2hhZGUtY29sb3IoJGJhY2tncm91bmQsICRidG4tbGFiZWwtZGlzYWJsZWQtYmctc2hhZGUtYW1vdW50LCAkY2FyZC1iZyksXG4gICAgdGludC1jb2xvcigkYmFja2dyb3VuZCwgJGJ0bi1sYWJlbC1kaXNhYmxlZC1iZy10aW50LWFtb3VudCwgJGNhcmQtYmcpXG4gICk7XG5cbiAgJGJvcmRlci1jb2xvcjogaWYoXG4gICAgJGRhcmstc3R5bGUsXG4gICAgc2hhZGUtY29sb3IoJGJhY2tncm91bmQsICRidG4tbGFiZWwtYm9yZGVyLXNoYWRlLWFtb3VudCwgJGNhcmQtYmcpLFxuICAgIHRpbnQtY29sb3IoJGJhY2tncm91bmQsICRidG4tbGFiZWwtYm9yZGVyLXRpbnQtYW1vdW50LCAkY2FyZC1iZylcbiAgKTtcblxuICAjeyRwYXJlbnR9IHtcbiAgICBjb2xvcjogJGxhYmVsLWNvbG9yICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyICFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZDogJGxhYmVsLWJhY2tncm91bmQgIWltcG9ydGFudDtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRidG4tYm94LXNoYWRvdyk7XG4gICAgJi53YXZlcy1lZmZlY3Qge1xuICAgICAgLndhdmVzLXJpcHBsZSB7XG4gICAgICAgIGJhY2tncm91bmQ6IHJhZGlhbC1ncmFkaWVudChcbiAgICAgICAgICByZ2JhKCRiYWNrZ3JvdW5kLCAwLjIpIDAsXG4gICAgICAgICAgcmdiYSgkYmFja2dyb3VuZCwgMC4zKSA0MCUsXG4gICAgICAgICAgcmdiYSgkYmFja2dyb3VuZCwgMC40KSA1MCUsXG4gICAgICAgICAgcmdiYSgkYmFja2dyb3VuZCwgMC41KSA2MCUsXG4gICAgICAgICAgcmdiYSgkd2hpdGUsIDApIDcwJVxuICAgICAgICApO1xuICAgICAgfVxuICAgIH1cblxuICAgICY6aG92ZXIge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyICFpbXBvcnRhbnQ7XG4gICAgICBiYWNrZ3JvdW5kOiAkaG92ZXItYmFja2dyb3VuZCAhaW1wb3J0YW50O1xuICAgICAgY29sb3I6ICRob3Zlci1jb2xvciAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgICY6Zm9jdXMsXG4gICAgJi5mb2N1cyB7XG4gICAgICBjb2xvcjogJGhvdmVyLWNvbG9yO1xuICAgICAgYmFja2dyb3VuZDogJGhvdmVyLWJhY2tncm91bmQ7XG4gICAgfVxuXG4gICAgJjphY3RpdmUsXG4gICAgJi5hY3RpdmUsXG4gICAgJi5zaG93LmRyb3Bkb3duLXRvZ2dsZSxcbiAgICAuc2hvdyA+ICYuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICAgIGNvbG9yOiAkYWN0aXZlLWNvbG9yICFpbXBvcnRhbnQ7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWN0aXZlLWJhY2tncm91bmQgIWltcG9ydGFudDtcbiAgICAgIC8vIFJlbW92ZSBDU1MgZ3JhZGllbnRzIGlmIHRoZXkncmUgZW5hYmxlZFxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogaWYoJGVuYWJsZS1ncmFkaWVudHMsIG5vbmUgIWltcG9ydGFudCwgbnVsbCk7XG4gICAgICBib3JkZXItY29sb3I6ICRib3JkZXIgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAmLmRpc2FibGVkLFxuICAgICY6ZGlzYWJsZWQge1xuICAgICAgY29sb3I6ICRsYWJlbC1jb2xvciAhaW1wb3J0YW50O1xuICAgICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyICFpbXBvcnRhbnQ7XG4gICAgICBiYWNrZ3JvdW5kOiAkbGFiZWwtYmFja2dyb3VuZCAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIC8vIEJ1dHRvbiBncm91cHNcbiAgLmJ0bi1ncm91cCAjeyRwYXJlbnR9LFxuICAuaW5wdXQtZ3JvdXAgI3skcGFyZW50fSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAkaW5wdXQtYnRuLWJvcmRlci13aWR0aCBzb2xpZCAkYm9yZGVyLWNvbG9yICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLWxlZnQ6ICRpbnB1dC1idG4tYm9yZGVyLXdpZHRoIHNvbGlkICRib3JkZXItY29sb3IgIWltcG9ydGFudDtcbiAgfVxuICAuYnRuLWdyb3VwLXZlcnRpY2FsICN7JHBhcmVudH0ge1xuICAgIGJvcmRlci10b3A6ICRpbnB1dC1idG4tYm9yZGVyLXdpZHRoIHNvbGlkICRib3JkZXItY29sb3IgIWltcG9ydGFudDtcbiAgICBib3JkZXItYm90dG9tOiAkaW5wdXQtYnRuLWJvcmRlci13aWR0aCBzb2xpZCAkYm9yZGVyLWNvbG9yICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLy8gT3V0bGluZVxuQG1peGluIGJ1dHRvbi1vdXRsaW5lLXZhcmlhbnQoJGNvbG9yOiBudWxsLCAkY29sb3ItaG92ZXI6IG51bGwsICRob3Zlci1jb2xvcjogbnVsbCkge1xufVxuXG5AbWl4aW4gdGVtcGxhdGUtYnV0dG9uLW91dGxpbmUtdmFyaWFudCgkcGFyZW50LCAkY29sb3IsICRob3Zlci1jb2xvcjogbnVsbCkge1xuICAkY29sb3I6ICRjb2xvcjtcbiAgJGNvbG9yLWhvdmVyOiAkY29sb3I7XG5cbiAgJGhvdmVyLWJhY2tncm91bmQ6IGlmKFxuICAgICRjb2xvci1ob3ZlciA9PSAkY29sb3ItY29udHJhc3QtbGlnaHQsXG4gICAgc2hhZGUtY29sb3IoJGNvbG9yLCAkYnRuLW91dGxpbmUtaG92ZXItYmctc2hhZGUtYW1vdW50LCAkY2FyZC1iZyksXG4gICAgdGludC1jb2xvcigkY29sb3IsICRidG4tb3V0bGluZS1ob3Zlci1iZy10aW50LWFtb3VudCwgJGNhcmQtYmcpXG4gICk7XG5cbiAgJGZvY3VzLWJhY2tncm91bmQ6ICRjb2xvcjtcbiAgJGFjdGl2ZS1iYWNrZ3JvdW5kOiBpZihcbiAgICAkY29sb3IgPT0gJGNvbG9yLWNvbnRyYXN0LWxpZ2h0LFxuICAgIHNoYWRlLWNvbG9yKCRjb2xvciwgJGJ0bi1vdXRsaW5lLWFjdGl2ZS1iZy1zaGFkZS1hbW91bnQsICRjYXJkLWJnKSxcbiAgICB0aW50LWNvbG9yKCRjb2xvciwgJGJ0bi1vdXRsaW5lLWFjdGl2ZS1iZy10aW50LWFtb3VudCwgJGNhcmQtYmcpXG4gICk7XG4gICRhY3RpdmUtYm9yZGVyOiAkY29sb3I7XG4gICRhY3RpdmUtY29sb3I6ICRjb2xvcjtcblxuICAjeyRwYXJlbnR9IHtcbiAgICBjb2xvcjogJGNvbG9yO1xuICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICYud2F2ZXMtZWZmZWN0IHtcbiAgICAgIC53YXZlcy1yaXBwbGUge1xuICAgICAgICBiYWNrZ3JvdW5kOiByYWRpYWwtZ3JhZGllbnQoXG4gICAgICAgICAgcmdiYSgkY29sb3IsIDAuMikgMCxcbiAgICAgICAgICByZ2JhKCRjb2xvciwgMC4zKSA0MCUsXG4gICAgICAgICAgcmdiYSgkY29sb3IsIDAuNCkgNTAlLFxuICAgICAgICAgIHJnYmEoJGNvbG9yLCAwLjUpIDYwJSxcbiAgICAgICAgICByZ2JhKCR3aGl0ZSwgMCkgNzAlXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogJGNvbG9yLWhvdmVyICFpbXBvcnRhbnQ7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaG92ZXItYmFja2dyb3VuZCAhaW1wb3J0YW50O1xuICAgICAgYm9yZGVyLWNvbG9yOiAkYWN0aXZlLWJvcmRlciAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5idG4tY2hlY2s6Zm9jdXMgKyAmLFxuICAgICY6Zm9jdXMge1xuICAgICAgY29sb3I6ICRjb2xvci1ob3ZlcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRob3Zlci1iYWNrZ3JvdW5kO1xuICAgICAgYm9yZGVyLWNvbG9yOiAkYWN0aXZlLWJvcmRlcjtcbiAgICB9XG5cbiAgICAuYnRuLWNoZWNrOmNoZWNrZWQgKyAmLFxuICAgIC5idG4tY2hlY2s6YWN0aXZlICsgJixcbiAgICAmOmFjdGl2ZSxcbiAgICAmLmFjdGl2ZSxcbiAgICAmLmRyb3Bkb3duLXRvZ2dsZS5zaG93IHtcbiAgICAgIGNvbG9yOiAkYWN0aXZlLWNvbG9yICFpbXBvcnRhbnQ7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWN0aXZlLWJhY2tncm91bmQgIWltcG9ydGFudDtcbiAgICAgIGJvcmRlci1jb2xvcjogJGFjdGl2ZS1ib3JkZXIgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAmLmRpc2FibGVkLFxuICAgICY6ZGlzYWJsZWQge1xuICAgICAgY29sb3I6ICRjb2xvciAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gICN7JHBhcmVudH0gLmJhZGdlIHtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3I7XG4gICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgY29sb3I6IGNvbG9yLWNvbnRyYXN0KCRjb2xvcik7XG4gIH1cblxuICAjeyRwYXJlbnR9OmhvdmVyIC5iYWRnZSxcbiAgI3skcGFyZW50fTpmb2N1czpob3ZlciAuYmFkZ2UsXG4gICN7JHBhcmVudH06YWN0aXZlIC5iYWRnZSxcbiAgI3skcGFyZW50fS5hY3RpdmUgLmJhZGdlLFxuICAuc2hvdyA+ICN7JHBhcmVudH0uZHJvcGRvd24tdG9nZ2xlIC5iYWRnZSB7XG4gICAgYmFja2dyb3VuZDogJGNvbG9yLWhvdmVyO1xuICAgIGJvcmRlci1jb2xvcjogJGNvbG9yLWhvdmVyO1xuICB9XG59XG4iLCIvLyAqIERyb3Bkb3duc1xuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuXG5AbWl4aW4gdGVtcGxhdGUtZHJvcGRvd24tdmFyaWFudCgkcGFyZW50LCAkYmFja2dyb3VuZCwgJGNvbG9yOiBudWxsKSB7XG4gICN7JHBhcmVudH0gLmRyb3Bkb3duLWl0ZW0ge1xuICAgICYud2F2ZXMtZWZmZWN0IHtcbiAgICAgIC53YXZlcy1yaXBwbGUge1xuICAgICAgICBiYWNrZ3JvdW5kOiByYWRpYWwtZ3JhZGllbnQoXG4gICAgICAgICAgcmdiYSgkY29sb3IsIDAuMikgMCxcbiAgICAgICAgICByZ2JhKCRjb2xvciwgMC4zKSA0MCUsXG4gICAgICAgICAgcmdiYSgkY29sb3IsIDAuNCkgNTAlLFxuICAgICAgICAgIHJnYmEoJGNvbG9yLCAwLjUpIDYwJSxcbiAgICAgICAgICByZ2JhKCR3aGl0ZSwgMCkgNzAlXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgfVxuICAgICY6bm90KC5kaXNhYmxlZCkuYWN0aXZlLFxuICAgICY6bm90KC5kaXNhYmxlZCk6YWN0aXZlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgICAgY29sb3I6IGlmKCRjb2xvciwgJGNvbG9yLCBjb2xvci1jb250cmFzdCgkYmFja2dyb3VuZCkpICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgI3skcGFyZW50fS5kcm9wZG93bi1tZW51ID4gbGk6bm90KC5kaXNhYmxlZCkgPiBhOm5vdCguZHJvcGRvd24taXRlbSk6YWN0aXZlLFxuICAjeyRwYXJlbnR9LmRyb3Bkb3duLW1lbnUgPiBsaS5hY3RpdmU6bm90KC5kaXNhYmxlZCkgPiBhOm5vdCguZHJvcGRvd24taXRlbSkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiBpZigkY29sb3IsICRjb2xvciwgY29sb3ItY29udHJhc3QoJGJhY2tncm91bmQpKSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtaXhpbiB0ZW1wbGF0ZS1kcm9wZG93bi10aGVtZSgkYmFja2dyb3VuZCwgJGNvbG9yOiBudWxsKSB7XG4gIEBpbmNsdWRlIHRlbXBsYXRlLWRyb3Bkb3duLXZhcmlhbnQoJycsICRiYWNrZ3JvdW5kLCAkY29sb3IpO1xufVxuIiwiLy8gVGhlbWUgbWl4aW5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcblxuQG1peGluIHRlbXBsYXRlLWNvbW1vbi10aGVtZSgkYmFja2dyb3VuZCwgJGNvbG9yOiBudWxsKSB7XG4gIEBpbmNsdWRlIHRleHQtdmFyaWFudCgnLnRleHQtcHJpbWFyeScsICRiYWNrZ3JvdW5kKTtcbiAgQGluY2x1ZGUgYmctdmFyaWFudCgnLmJnLXByaW1hcnknLCAkYmFja2dyb3VuZCk7XG4gIEBpbmNsdWRlIGJnLWxhYmVsLXZhcmlhbnQoJy5iZy1sYWJlbC1wcmltYXJ5JywgJGJhY2tncm91bmQpO1xuICBAaW5jbHVkZSBiZy1sYWJlbC1ob3Zlci12YXJpYW50KCcuYmctbGFiZWwtaG92ZXItcHJpbWFyeScsICRiYWNrZ3JvdW5kKTtcbiAgQGluY2x1ZGUgYmctZ3JhZGllbnQtdmFyaWFudCgnLmJnLWdyYWRpZW50LXByaW1hcnknLCAkYmFja2dyb3VuZCk7XG4gIEBpbmNsdWRlIGJnLWdsb3ctdmFyaWFudCgnLmJnLXByaW1hcnknLCAkYmFja2dyb3VuZCk7XG4gIEBpbmNsdWRlIHRlbXBsYXRlLXBhZ2luYXRpb24tdGhlbWUoJGJhY2tncm91bmQsICRjb2xvcik7XG4gIEBpbmNsdWRlIHRlbXBsYXRlLXBhZ2luYXRpb24tb3V0bGluZS12YXJpYW50KCcucGFnaW5hdGlvbi1vdXRsaW5lLXByaW1hcnknLCAkYmFja2dyb3VuZCk7XG4gIEBpbmNsdWRlIHRlbXBsYXRlLXByb2dyZXNzLWJhci10aGVtZSgkYmFja2dyb3VuZCwgJGNvbG9yKTtcbiAgQGluY2x1ZGUgdGVtcGxhdGUtcHJvZ3Jlc3Mtc2hhZG93LXRoZW1lKCcucHJvZ3Jlc3MtYmFyJywgJGJhY2tncm91bmQpO1xuICBAaW5jbHVkZSB0ZW1wbGF0ZS1tb2RhbC1vbmJvYXJkaW5nLXRoZW1lKCRiYWNrZ3JvdW5kLCAkY29sb3IpO1xuICBAaW5jbHVkZSB0ZW1wbGF0ZS1saXN0LWdyb3VwLXRoZW1lKCRiYWNrZ3JvdW5kLCAkY29sb3IpO1xuICBAaW5jbHVkZSB0ZW1wbGF0ZS1saXN0LWdyb3VwLXRpbWVsaW5lLXZhcmlhbnQoJy5saXN0LWdyb3VwLXRpbWVsaW5lLXByaW1hcnknLCAkYmFja2dyb3VuZCk7XG4gIEBpbmNsdWRlIHRlbXBsYXRlLWFsZXJ0LXZhcmlhbnQoJy5hbGVydC1wcmltYXJ5JywgJGJhY2tncm91bmQpO1xuICBAaW5jbHVkZSB0ZW1wbGF0ZS1hbGVydC1vdXRsaW5lLXZhcmlhbnQoJy5hbGVydC1vdXRsaW5lLXByaW1hcnknLCAkYmFja2dyb3VuZCk7XG4gIEBpbmNsdWRlIHRlbXBsYXRlLWFsZXJ0LXNvbGlkLXZhcmlhbnQoJy5hbGVydC1zb2xpZC1wcmltYXJ5JywgJGJhY2tncm91bmQpO1xuICBAaW5jbHVkZSB0ZW1wbGF0ZS10b29sdGlwLXZhcmlhbnQoXG4gICAgJy50b29sdGlwLXByaW1hcnksIC50b29sdGlwLXByaW1hcnkgPiAudG9vbHRpcCwgLm5nYi10b29sdGlwLXByaW1hcnkgKyBuZ2ItdG9vbHRpcC13aW5kb3cnLFxuICAgICRiYWNrZ3JvdW5kLFxuICAgICRjb2xvclxuICApO1xuICBAaW5jbHVkZSB0ZW1wbGF0ZS1wb3BvdmVyLXZhcmlhbnQoXG4gICAgJy5wb3BvdmVyLXByaW1hcnksIC5wb3BvdmVyLXByaW1hcnkgPiAucG9wb3ZlciwgLm5nYi1wb3BvdmVyLXByaW1hcnkgKyBuZ2ItcG9wb3Zlci13aW5kb3cnLFxuICAgICRiYWNrZ3JvdW5kLFxuICAgICRjb2xvclxuICApO1xuXG4gIC8vIE5lZWQgdG8gYWRkIHNoaWZ0LWNvbG9yIGFzIEJTNSB1cGRhdGVkIHdpdGggdGFibGUgdmFyaWFudCBjb2xvcnMgbGlrZSB0aGlzXG5cbiAgQGluY2x1ZGUgdGVtcGxhdGUtdGFibGUtdmFyaWFudCgncHJpbWFyeScsIHNoaWZ0LWNvbG9yKCRiYWNrZ3JvdW5kLCAkdGFibGUtYmctc2NhbGUpKTtcbiAgQGluY2x1ZGUgdGVtcGxhdGUtYnV0dG9uLXZhcmlhbnQoJy5idG4tcHJpbWFyeScsICRiYWNrZ3JvdW5kLCAkY29sb3IpO1xuICBAaW5jbHVkZSB0ZW1wbGF0ZS1idXR0b24tbGFiZWwtdmFyaWFudCgnLmJ0bi1sYWJlbC1wcmltYXJ5JywgJGJhY2tncm91bmQsICRjb2xvcik7XG4gIEBpbmNsdWRlIHRlbXBsYXRlLWJ1dHRvbi10ZXh0LXZhcmlhbnQoJy5idG4tdGV4dC1wcmltYXJ5JywgJGJhY2tncm91bmQsICRjb2xvcik7XG4gIEBpbmNsdWRlIHRlbXBsYXRlLWJ1dHRvbi1vdXRsaW5lLXZhcmlhbnQoJy5idG4tb3V0bGluZS1wcmltYXJ5JywgJGJhY2tncm91bmQsICRjb2xvcik7XG4gIEBpbmNsdWRlIHRlbXBsYXRlLWRyb3Bkb3duLXRoZW1lKHJnYmEtdG8taGV4KHJnYmEoJGJhY2tncm91bmQsIDAuMTYpLCAkY2FyZC1iZyksICRiYWNrZ3JvdW5kKTtcbiAgQGluY2x1ZGUgdGVtcGxhdGUtbmF2LXRoZW1lKCRiYWNrZ3JvdW5kLCAkY29sb3IpO1xuICBAaW5jbHVkZSB0ZW1wbGF0ZS1mb3JtLWNvbnRyb2wtdGhlbWUoJGJhY2tncm91bmQpO1xuICBAaW5jbHVkZSB0ZW1wbGF0ZS1mb3JtLWNoZWNrLXRoZW1lKCRiYWNrZ3JvdW5kLCAkY29sb3IpO1xuICBAaW5jbHVkZSB0ZW1wbGF0ZS1mb3JtLXN3aXRjaC10aGVtZSgkYmFja2dyb3VuZCk7XG4gIEBpbmNsdWRlIHRlbXBsYXRlLWZpbGUtaW5wdXQtdGhlbWUoJGJhY2tncm91bmQpO1xuXG4gIEBpbmNsdWRlIHRlbXBsYXRlLXN3aXRjaC12YXJpYW50KCcnLCAkYmFja2dyb3VuZCwgJGNvbG9yKTsgLy8gRm9yIGRlZmF1bHQgc3dpdGNoXG4gIEBpbmNsdWRlIHRlbXBsYXRlLXN3aXRjaC12YXJpYW50KCcuc3dpdGNoLXByaW1hcnknLCAkYmFja2dyb3VuZCwgJGNvbG9yKTtcblxuICBAaW5jbHVkZSB0ZW1wbGF0ZS10aW1lbGluZS1wb2ludC12YXJpYW50KCcudGltZWxpbmUtcG9pbnQtcHJpbWFyeScsICRiYWNrZ3JvdW5kKTtcbiAgQGluY2x1ZGUgdGVtcGxhdGUtdGltZWxpbmUtaW5kaWNhdG9yLXZhcmlhbnQoJy50aW1lbGluZS1pbmRpY2F0b3ItcHJpbWFyeScsICRiYWNrZ3JvdW5kKTtcbiAgQGluY2x1ZGUgdGVtcGxhdGUtdGV4dC1kaXZpZGVyLXZhcmlhbnQoJy5kaXZpZGVyLXByaW1hcnknLCAkYmFja2dyb3VuZCk7XG5cbiAgQGluY2x1ZGUgdGVtcGxhdGUtbmF2YmFyLXN0eWxlKCcubmF2YmFyLmJnLXByaW1hcnknLCAkYmFja2dyb3VuZCk7XG4gIEBpbmNsdWRlIHRlbXBsYXRlLW1lbnUtc3R5bGUoJy5tZW51LmJnLXByaW1hcnknLCAkYmFja2dyb3VuZCk7XG4gIEBpbmNsdWRlIHRlbXBsYXRlLWZvb3Rlci1zdHlsZSgnLmZvb3Rlci5iZy1wcmltYXJ5JywgJGJhY2tncm91bmQpO1xuICBAaW5jbHVkZSB0ZW1wbGF0ZS1mbG9hdC1sYWJlbC10aGVtZSgkYmFja2dyb3VuZCk7XG4gIEBpbmNsdWRlIHRlbXBsYXRlLXN2Zy1jb2xvcigkYmFja2dyb3VuZCk7XG4gIEBpbmNsdWRlIHRlbXBsYXRlLXRyZWV2aWV3LWNsaWNrZWQtYmcoJGJhY2tncm91bmQpO1xuICBAaW5jbHVkZSB0ZW1wbGF0ZS1jYXJkLWJvcmRlci1zaGFkb3ctdmFyaWFudCgnLmNhcmQtYm9yZGVyLXNoYWRvdy1wcmltYXJ5JywgJGJhY2tncm91bmQpO1xuICBAaW5jbHVkZSB0ZW1wbGF0ZS1jYXJkLWhvdmVyLWJvcmRlci12YXJpYW50KCcuY2FyZC1ob3Zlci1ib3JkZXItcHJpbWFyeScsICRiYWNrZ3JvdW5kKTtcblxuICBodG1sOm5vdChbZGlyPSdydGwnXSkgLmJvcmRlci1wcmltYXJ5LFxuICBodG1sW2Rpcj0ncnRsJ10gLmJvcmRlci1wcmltYXJ5IHtcbiAgICBib3JkZXItY29sb3I6ICRiYWNrZ3JvdW5kICFpbXBvcnRhbnQ7XG4gIH1cbiAgYSB7XG4gICAgY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6IHRpbnQtY29sb3IoJGJhY2tncm91bmQsIDEwJSk7XG4gICAgfVxuICB9XG4gIC5maWxsLXByaW1hcnkge1xuICAgIGZpbGw6ICRiYWNrZ3JvdW5kO1xuICB9XG59XG4iLCIvLyBOYXZzXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5cbkBtaXhpbiB0ZW1wbGF0ZS1uYXYtc2l6ZSgkcGFkZGluZy15LCAkcGFkZGluZy14LCAkZm9udC1zaXplLCAkbGluZS1oZWlnaHQpIHtcbiAgPiAubmF2IC5uYXYtbGluayxcbiAgJi5uYXYgLm5hdi1saW5rIHtcbiAgICBwYWRkaW5nOiAkcGFkZGluZy15ICRwYWRkaW5nLXg7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQ7XG4gIH1cbn1cblxuQG1peGluIHRlbXBsYXRlLW5hdi12YXJpYW50KCRwYXJlbnQsICRiYWNrZ3JvdW5kLCAkY29sb3I6IG51bGwpIHtcbiAgJHBpbGxzLXNlbGVjdG9yOiBpZigkcGFyZW50PT0gJycsICcubmF2LXBpbGxzJywgJyN7JHBhcmVudH0ubmF2LXBpbGxzLCAjeyRwYXJlbnR9ID4gLm5hdi1waWxscycpO1xuXG4gICN7JHBpbGxzLXNlbGVjdG9yfSAubmF2LWxpbmsuYWN0aXZlIHtcbiAgICBib3gtc2hhZG93OiAwIDAuMTI1cmVtIDAuMzc1cmVtIDAgcmdiYSgkYmFja2dyb3VuZCwgMC4zKTtcbiAgICAmLFxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICAgIGNvbG9yOiBpZigkY29sb3IsICRjb2xvciwgY29sb3ItY29udHJhc3QoJGJhY2tncm91bmQpKTtcbiAgICB9XG4gIH1cblxuICAjeyRwYXJlbnR9Lm5hdi10YWJzIHtcbiAgICAubmF2LWxpbmsge1xuICAgICAgJi53YXZlcy1lZmZlY3Qge1xuICAgICAgICAud2F2ZXMtcmlwcGxlIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiByYWRpYWwtZ3JhZGllbnQoXG4gICAgICAgICAgICByZ2JhKCRiYWNrZ3JvdW5kLCAwLjIpIDAsXG4gICAgICAgICAgICByZ2JhKCRiYWNrZ3JvdW5kLCAwLjMpIDQwJSxcbiAgICAgICAgICAgIHJnYmEoJGJhY2tncm91bmQsIDAuNCkgNTAlLFxuICAgICAgICAgICAgcmdiYSgkYmFja2dyb3VuZCwgMC41KSA2MCUsXG4gICAgICAgICAgICByZ2JhKCR3aGl0ZSwgMCkgNzAlXG4gICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICN7JHBhcmVudH0ubmF2LXRhYnMgLm5hdi1saW5rLmFjdGl2ZSxcbiAgI3skcGFyZW50fS5uYXYtdGFicyAubmF2LWxpbmsuYWN0aXZlIHtcbiAgICAmLFxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBib3gtc2hhZG93OiAwIC0ycHggMCAkYmFja2dyb3VuZCBpbnNldDtcbiAgICB9XG4gIH1cblxuICAubmF2LWFsaWduLWJvdHRvbSAubmF2LXRhYnMgLm5hdi1saW5rLmFjdGl2ZSxcbiAgLm5hdi1hbGlnbi1ib3R0b20gLm5hdi10YWJzIC5uYXYtbGluay5hY3RpdmUge1xuICAgICYsXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGJveC1zaGFkb3c6IDAgMnB4IDAgJGJhY2tncm91bmQgaW5zZXQ7XG4gICAgfVxuICB9XG5cbiAgLm5hdi1hbGlnbi1sZWZ0IC5uYXYtdGFicyAubmF2LWxpbmsuYWN0aXZlLFxuICAubmF2LWFsaWduLWxlZnQgLm5hdi10YWJzIC5uYXYtbGluay5hY3RpdmUge1xuICAgICYsXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGJveC1zaGFkb3c6IC0ycHggMHB4IDAgJGJhY2tncm91bmQgaW5zZXQ7XG4gICAgfVxuICB9XG5cbiAgLm5hdi1hbGlnbi1yaWdodCAubmF2LXRhYnMgLm5hdi1saW5rLmFjdGl2ZSxcbiAgLm5hdi1hbGlnbi1yaWdodCAubmF2LXRhYnMgLm5hdi1saW5rLmFjdGl2ZSB7XG4gICAgJixcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgYm94LXNoYWRvdzogMnB4IDBweCAwICRiYWNrZ3JvdW5kIGluc2V0O1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIHJ0bC1vbmx5IHtcbiAgICAubmF2LWFsaWduLWxlZnQgLm5hdi10YWJzIC5uYXYtbGluay5hY3RpdmUsXG4gICAgLm5hdi1hbGlnbi1sZWZ0IC5uYXYtdGFicyAubmF2LWxpbmsuYWN0aXZlIHtcbiAgICAgICYsXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGJveC1zaGFkb3c6IDJweCAwcHggMCAkYmFja2dyb3VuZCBpbnNldDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAubmF2LWFsaWduLXJpZ2h0IC5uYXYtdGFicyAubmF2LWxpbmsuYWN0aXZlLFxuICAgIC5uYXYtYWxpZ24tcmlnaHQgLm5hdi10YWJzIC5uYXYtbGluay5hY3RpdmUge1xuICAgICAgJixcbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgYm94LXNoYWRvdzogLTJweCAwcHggMCAkYmFja2dyb3VuZCBpbnNldDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHRlbXBsYXRlLW5hdi10aGVtZSgkYmFja2dyb3VuZCwgJGNvbG9yOiBudWxsKSB7XG4gIEBpbmNsdWRlIHRlbXBsYXRlLW5hdi12YXJpYW50KCcnLCAkYmFja2dyb3VuZCwgJGNvbG9yKTtcbn1cbiIsIi8vICogRm9ybSBjb250cm9sc1xuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuXG4vLyBGb3JtIGNvbnRyb2xcbkBtaXhpbiB0ZW1wbGF0ZS1mb3JtLWNvbnRyb2wtdGhlbWUoJGNvbG9yKSB7XG4gIC5mb3JtLWNvbnRyb2w6Zm9jdXMsXG4gIC5mb3JtLXNlbGVjdDpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiAkY29sb3IgIWltcG9ydGFudDtcbiAgfVxuXG4gIC8vIFVzaW5nIDpmb2N1cy13aXRoaW4gdG8gYXBwbHkgZm9jdXMgYm9yZGVyIGNvbG9yIHRvIGRlZmF1bHQgYW5kIG1lcmdlZCBpbnB1dC1ncm91cFxuICAuaW5wdXQtZ3JvdXAge1xuICAgICY6Zm9jdXMtd2l0aGluIHtcbiAgICAgIC5mb3JtLWNvbnRyb2wsXG4gICAgICAuaW5wdXQtZ3JvdXAtdGV4dCB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIEZsb2F0IGxhYmVsc1xuQG1peGluIHRlbXBsYXRlLWZsb2F0LWxhYmVsLXRoZW1lKCRjb2xvcikge1xuICAuZm9ybS1mbG9hdGluZyB7XG4gICAgPiAuZm9ybS1jb250cm9sOmZvY3VzLFxuICAgID4gLmZvcm0tY29udHJvbDpmb2N1czpub3QoOnBsYWNlaG9sZGVyLXNob3duKSxcbiAgICA+IC5mb3JtLXNlbGVjdDpmb2N1cyxcbiAgICA+IC5mb3JtLXNlbGVjdDpmb2N1czpub3QoOnBsYWNlaG9sZGVyLXNob3duKSB7XG4gICAgICB+IGxhYmVsIHtcbiAgICAgICAgY29sb3I6ICRjb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gRm9ybSBTd2l0Y2hcbkBtaXhpbiB0ZW1wbGF0ZS1mb3JtLXN3aXRjaC10aGVtZSgkYmFja2dyb3VuZCkge1xuICAkZm9jdXMtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAkZm9jdXMtYmctaW1hZ2U6IHN0ci1yZXBsYWNlKHN0ci1yZXBsYWNlKCRmb3JtLXN3aXRjaC1mb2N1cy1iZy1pbWFnZSwgJyN7JGZvcm0tc3dpdGNoLWNvbG9yfScsICR3aGl0ZSksICcjJywgJyUyMycpO1xuXG4gICRjaGVja2VkLWNvbG9yOiAkY29tcG9uZW50LWFjdGl2ZS1jb2xvcjtcbiAgJGNoZWNrZWQtYmctaW1hZ2U6IHN0ci1yZXBsYWNlKFxuICAgIHN0ci1yZXBsYWNlKCRmb3JtLXN3aXRjaC1jaGVja2VkLWJnLWltYWdlLCAnI3skZm9ybS1zd2l0Y2gtY2hlY2tlZC1jb2xvcn0nLCAkY2hlY2tlZC1jb2xvciksXG4gICAgJyMnLFxuICAgICclMjMnXG4gICk7XG5cbiAgLmZvcm0tc3dpdGNoIHtcbiAgICAuZm9ybS1jaGVjay1pbnB1dCB7XG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkZm9jdXMtYmctaW1hZ2UpO1xuICAgICAgfVxuXG4gICAgICAmOmNoZWNrZWQge1xuICAgICAgICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGNoZWNrZWQtYmctaW1hZ2UpLCB2YXIoLS0jeyR2YXJpYWJsZS1wcmVmaXh9Z3JhZGllbnQpO1xuICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRjaGVja2VkLWJnLWltYWdlKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBGaWxlIElucHV0XG5AbWl4aW4gdGVtcGxhdGUtZmlsZS1pbnB1dC10aGVtZSgkY29sb3IpIHtcbiAgLmZvcm0tY29udHJvbDpmb2N1cyB+IC5mb3JtLWxhYmVsIHtcbiAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcblxuICAgICY6OmFmdGVyIHtcbiAgICAgIGJvcmRlci1jb2xvcjogaW5oZXJpdDtcbiAgICB9XG4gIH1cbn1cblxuLy8gRm9ybSBDaGVja1xuQG1peGluIHRlbXBsYXRlLWZvcm0tY2hlY2stdmFyaWFudCgkcGFyZW50LCAkYmFja2dyb3VuZCwgJGNvbG9yOiBudWxsKSB7XG4gICRjb2xvcjogaWYoJGNvbG9yLCAkY29sb3IsIGNvbG9yLWNvbnRyYXN0KCRiYWNrZ3JvdW5kKSk7XG4gICRmb2N1cy1ib3JkZXI6ICRiYWNrZ3JvdW5kO1xuICAkZm9jdXMtY29sb3I6IDAgMCAkaW5wdXQtYnRuLWZvY3VzLWJsdXIgJGlucHV0LWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAkaW5wdXQtYnRuLWZvY3VzLWNvbG9yLW9wYWNpdHkpO1xuXG4gICN7JHBhcmVudH0gLmZvcm0tY2hlY2staW5wdXQge1xuICAgICY6Y2hlY2tlZCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICAgIGJvcmRlci1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgICBib3gtc2hhZG93OiAwIDJweCA2cHggMCByZ2JhKCRiYWNrZ3JvdW5kLCAwLjMpO1xuICAgIH1cblxuICAgICZbdHlwZT0nY2hlY2tib3gnXTppbmRldGVybWluYXRlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgICAgYm9yZGVyLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICAgIGJveC1zaGFkb3c6IDAgMnB4IDZweCAwIHJnYmEoJGJhY2tncm91bmQsIDAuMyk7XG4gICAgfVxuICB9XG5cbiAgLy8gQ3VzdG9tIG9wdGlvbnNcbiAgI3skcGFyZW50fS5jdXN0b20tb3B0aW9uIHtcbiAgICAmLmNoZWNrZWQge1xuICAgICAgYm9yZGVyOiAkaW5wdXQtZm9jdXMtYm9yZGVyLXdpZHRoIHNvbGlkICRiYWNrZ3JvdW5kICFpbXBvcnRhbnQ7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICAuY3VzdG9tLW9wdGlvbi1ib2R5LFxuICAgICAgLmN1c3RvbS1vcHRpb24taGVhZGVyIHtcbiAgICAgICAgaSB7XG4gICAgICAgICAgY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgICYuY3VzdG9tLW9wdGlvbi1sYWJlbCB7XG4gICAgICAmLmNoZWNrZWQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRiYWNrZ3JvdW5kLCAwLjEyKTtcbiAgICAgICAgY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgICAgICAuY3VzdG9tLW9wdGlvbi1oZWFkZXIgc3BhbixcbiAgICAgICAgLmN1c3RvbS1vcHRpb24tdGl0bGUge1xuICAgICAgICAgIGNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gdGVtcGxhdGUtZm9ybS1jaGVjay10aGVtZSgkYmFja2dyb3VuZCwgJGNvbG9yOiBudWxsKSB7XG4gIEBpbmNsdWRlIHRlbXBsYXRlLWZvcm0tY2hlY2stdmFyaWFudCgnJywgJGJhY2tncm91bmQsICRjb2xvcik7XG59XG5cbi8vIEZvcm0gVmFsaWRhdGlvblxuXG5AbWl4aW4gZm9ybS12YWxpZGF0aW9uLXN0YXRlKFxuICAkc3RhdGU6IG51bGwsXG4gICRjb2xvcjogbnVsbCxcbiAgJGljb246IG51bGwsXG4gICR0b29sdGlwLWNvbG9yOiBudWxsLFxuICAkdG9vbHRpcC1iZy1jb2xvcjogbnVsbCxcbiAgJGZvY3VzLWJveC1zaGFkb3c6IG51bGwsXG4gICRib3JkZXItY29sb3I6IG51bGxcbikge1xufVxuXG5AbWl4aW4gdGVtcGxhdGUtZm9ybS12YWxpZGF0aW9uLXN0YXRlKFxuICAkc3RhdGUsXG4gICRjb2xvcixcbiAgJGljb24sXG4gICR0b29sdGlwLWNvbG9yOiBjb2xvci1jb250cmFzdCgkY29sb3IpLFxuICAkdG9vbHRpcC1iZy1jb2xvcjogcmdiYSgkY29sb3IsICRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtb3BhY2l0eSksXG4gICRmb2N1cy1ib3gtc2hhZG93OiBub25lLFxuICAkYm9yZGVyLWNvbG9yOiAkY29sb3Jcbikge1xuICAuI3skc3RhdGV9LWZlZWRiYWNrIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi10b3A6ICRmb3JtLWZlZWRiYWNrLW1hcmdpbi10b3A7XG4gICAgQGluY2x1ZGUgZm9udC1zaXplKCRmb3JtLWZlZWRiYWNrLWZvbnQtc2l6ZSk7XG4gICAgZm9udC1zdHlsZTogJGZvcm0tZmVlZGJhY2stZm9udC1zdHlsZTtcbiAgICBjb2xvcjogJGNvbG9yO1xuICB9XG5cbiAgLiN7JHN0YXRlfS10b29sdGlwIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAxMDAlO1xuICAgIHotaW5kZXg6IDU7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7IC8vIENvbnRhaW4gdG8gcGFyZW50IHdoZW4gcG9zc2libGVcbiAgICBwYWRkaW5nOiAkZm9ybS1mZWVkYmFjay10b29sdGlwLXBhZGRpbmcteSAkZm9ybS1mZWVkYmFjay10b29sdGlwLXBhZGRpbmcteDtcbiAgICBtYXJnaW4tdG9wOiAwLjFyZW07XG4gICAgQGluY2x1ZGUgZm9udC1zaXplKCRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtZm9udC1zaXplKTtcbiAgICBsaW5lLWhlaWdodDogJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1saW5lLWhlaWdodDtcbiAgICBjb2xvcjogJHRvb2x0aXAtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHRvb2x0aXAtYmctY29sb3I7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZm9ybS1mZWVkYmFjay10b29sdGlwLWJvcmRlci1yYWRpdXMpO1xuICB9XG5cbiAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICAgIH4gLiN7JHN0YXRlfS1mZWVkYmFjayxcbiAgICB+IC4jeyRzdGF0ZX0tdG9vbHRpcCB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gIH1cblxuICAuZm9ybS1jb250cm9sIHtcbiAgICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gICAgICBib3JkZXItY29sb3I6ICRjb2xvciAhaW1wb3J0YW50O1xuICAgICAgYm9yZGVyLXdpZHRoOiAkaW5wdXQtZm9jdXMtYm9yZGVyLXdpZHRoO1xuICAgICAgfiAuaW5wdXQtZ3JvdXAtdGV4dCB7XG4gICAgICAgIGJvcmRlci13aWR0aDogJGlucHV0LWZvY3VzLWJvcmRlci13aWR0aDtcbiAgICAgIH1cblxuICAgICAgLmRhcmstc3R5bGUgJiB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yICFpbXBvcnRhbnQ7XG4gICAgICB9XG5cbiAgICAgIEBpZiAkZW5hYmxlLXZhbGlkYXRpb24taWNvbnMge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRpY29uKTtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAkaW5wdXQtaGVpZ2h0LWlubmVyLWhhbGYgJGlucHV0LWhlaWdodC1pbm5lci1oYWxmO1xuXG4gICAgICAgIEBpbmNsdWRlIGx0ci1zdHlsZSB7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogJGlucHV0LWhlaWdodC1pbm5lcjtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCAkaW5wdXQtaGVpZ2h0LWlubmVyLXF1YXJ0ZXIgY2VudGVyO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIHJ0bC1zdHlsZSB7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAkaW5wdXQtaGVpZ2h0LWlubmVyO1xuICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGxlZnQgJGlucHV0LWhlaWdodC1pbm5lci1xdWFydGVyIGNlbnRlcjtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3IgIWltcG9ydGFudDtcbiAgICAgICAgYm94LXNoYWRvdzogJGZvY3VzLWJveC1zaGFkb3c7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gU3R5bGVMaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuICB0ZXh0YXJlYS5mb3JtLWNvbnRyb2wge1xuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICAgIEBpZiAkZW5hYmxlLXZhbGlkYXRpb24taWNvbnMge1xuICAgICAgICBAaW5jbHVkZSBsdHItc3R5bGUge1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6ICRpbnB1dC1oZWlnaHQtaW5uZXI7XG4gICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogdG9wICRpbnB1dC1oZWlnaHQtaW5uZXItcXVhcnRlciByaWdodCAkaW5wdXQtaGVpZ2h0LWlubmVyLXF1YXJ0ZXI7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgcnRsLXN0eWxlIHtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6ICRpbnB1dC1oZWlnaHQtaW5uZXI7XG4gICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogdG9wICRpbnB1dC1oZWlnaHQtaW5uZXItcXVhcnRlciBsZWZ0ICRpbnB1dC1oZWlnaHQtaW5uZXItcXVhcnRlcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5mb3JtLXNlbGVjdCB7XG4gICAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3IgIWltcG9ydGFudDtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGZvcm0tc2VsZWN0LWluZGljYXRvciksIGVzY2FwZS1zdmcoJGljb24pO1xuICAgICAgYm9yZGVyLXdpZHRoOiAkaW5wdXQtZm9jdXMtYm9yZGVyLXdpZHRoO1xuICAgICAgfiAuaW5wdXQtZ3JvdXAtdGV4dCB7XG4gICAgICAgIGJvcmRlci13aWR0aDogJGlucHV0LWZvY3VzLWJvcmRlci13aWR0aDtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIGx0ci1zdHlsZSB7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246ICRmb3JtLXNlbGVjdC1iZy1wb3NpdGlvbiwgJGZvcm0tc2VsZWN0LWZlZWRiYWNrLWljb24tcG9zaXRpb247XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBydGwtc3R5bGUge1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOlxuICAgICAgICAgIGxlZnQgJGZvcm0tc2VsZWN0LXBhZGRpbmcteCBjZW50ZXIsXG4gICAgICAgICAgY2VudGVyIGxlZnQgJGZvcm0tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nOyAvLyBSVExcbiAgICAgIH1cblxuICAgICAgQGlmICRlbmFibGUtdmFsaWRhdGlvbi1pY29ucyB7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogJGZvcm0tc2VsZWN0LWJnLXNpemUsICRmb3JtLXNlbGVjdC1mZWVkYmFjay1pY29uLXNpemU7XG4gICAgICAgIEBpbmNsdWRlIGx0ci1zdHlsZSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkZm9ybS1zZWxlY3QtaW5kaWNhdG9yKSwgZXNjYXBlLXN2ZygkaWNvbik7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogJGZvcm0tc2VsZWN0LWZlZWRiYWNrLWljb24tcGFkZGluZy1lbmQ7XG4gICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogJGZvcm0tc2VsZWN0LWJnLXBvc2l0aW9uLCAkZm9ybS1zZWxlY3QtZmVlZGJhY2staWNvbi1wb3NpdGlvbjtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBydGwtc3R5bGUge1xuICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGZvcm0tc2VsZWN0LWluZGljYXRvciksIGVzY2FwZS1zdmcoJGljb24pO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogJGZvcm0tc2VsZWN0LWZlZWRiYWNrLWljb24tcGFkZGluZy1lbmQ7XG4gICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjpcbiAgICAgICAgICAgIGxlZnQgJGZvcm0tc2VsZWN0LXBhZGRpbmcteCBjZW50ZXIsXG4gICAgICAgICAgICBjZW50ZXIgbGVmdCAkZm9ybS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmc7IC8vIFJUTFxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICAgICAgYm94LXNoYWRvdzogJGZvY3VzLWJveC1zaGFkb3c7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5mb3JtLXN3aXRjaCAuZm9ybS1jaGVjay1pbnB1dCB7XG4gICAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuICAgIH1cbiAgfVxuICAuZm9ybS1jaGVjay1pbnB1dCB7XG4gICAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG5cbiAgICAgICY6Y2hlY2tlZCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgICB9XG5cbiAgICAgICY6YWN0aXZlIHtcbiAgICAgICAgYm94LXNoYWRvdzogJGZvY3VzLWJveC1zaGFkb3c7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgICAgfVxuXG4gICAgICB+IC5mb3JtLWNoZWNrLWxhYmVsIHtcbiAgICAgICAgY29sb3I6ICRjb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmZvcm0tY2hlY2staW5saW5lIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgICB+IC4jeyRzdGF0ZX0tZmVlZGJhY2sge1xuICAgICAgQGluY2x1ZGUgbHRyLXN0eWxlIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDAuNWVtO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgcnRsLXN0eWxlIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwLjVlbTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLy8gT24gdmFsaWRhdGlvbiAuaW5wdXQtZ3JvdXAgJiAuaW5wdXQtZ3JvdXAtbWVyZ2VkLCBzZXR1cCBwcm9wZXIgYm9yZGVyIGNvbG9yICYgYm94LXNoYWRvd1xuICAuaW5wdXQtZ3JvdXAge1xuICAgIC5mb3JtLWNvbnRyb2wge1xuICAgICAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICAgICAgICB+IC5pbnB1dC1ncm91cC10ZXh0IHtcbiAgICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvciAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yICFpbXBvcnRhbnQ7XG4gICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgICAvLyA/IC5pbnB1dC1ncm91cCBoYXMgLmlucHV0LWdyb3VwLXRleHQgbGFzdC9zaWJsaW5nXG4gICAgICAgICAgfiAuaW5wdXQtZ3JvdXAtdGV4dCB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvciAhaW1wb3J0YW50O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5mb3JtLWNvbnRyb2wge1xuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICAuaW5wdXQtZ3JvdXAgJiB7XG4gICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5pbnB1dC1ncm91cCAuZm9ybS1jb250cm9sLFxuICAuaW5wdXQtZ3JvdXAgLmZvcm0tc2VsZWN0IHtcbiAgICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gICAgICB6LWluZGV4OiAzO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAoJHN0YXRlID09ICdpbnZhbGlkJykge1xuICAgIC53YXMtdmFsaWRhdGVkIC5pbnB1dC1ncm91cDpoYXMoLmlucHV0LWdyb3VwLXRleHQpOmhhcyguZm9ybS1jb250cm9sOmludmFsaWQpIC5pbnB1dC1ncm91cC10ZXh0LFxuICAgIC5pbnB1dC1ncm91cDpoYXMoLmlucHV0LWdyb3VwLXRleHQpOmhhcyguZm9ybS1jb250cm9sLmlzLWludmFsaWQpIC5pbnB1dC1ncm91cC10ZXh0IHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgIH1cbiAgICAud2FzLXZhbGlkYXRlZCAuaW5wdXQtZ3JvdXA6aGFzKGlucHV0OmludmFsaWQpIHtcbiAgICAgIC4jeyRzdGF0ZX0tZmVlZGJhY2ssXG4gICAgICAuI3skc3RhdGV9LXRvb2x0aXAge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGlmICgkc3RhdGUgPT0gJ3ZhbGlkJykge1xuICAgIC53YXMtdmFsaWRhdGVkIC5pbnB1dC1ncm91cDpoYXMoLmlucHV0LWdyb3VwLXRleHQpOmhhcyguZm9ybS1jb250cm9sOnZhbGlkKSAuaW5wdXQtZ3JvdXAtdGV4dCxcbiAgICAuaW5wdXQtZ3JvdXA6aGFzKC5pbnB1dC1ncm91cC10ZXh0KTpoYXMoLmZvcm0tY29udHJvbC5pcy12YWxpZCkgLmlucHV0LWdyb3VwLXRleHQge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgfVxuICAgIC53YXMtdmFsaWRhdGVkIC5pbnB1dC1ncm91cDpoYXMoaW5wdXQ6dmFsaWQpIHtcbiAgICAgIC4jeyRzdGF0ZX0tZmVlZGJhY2ssXG4gICAgICAuI3skc3RhdGV9LXRvb2x0aXAge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vICogU3dpdGNoZXNcbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcblxuQG1peGluIHRlbXBsYXRlLXN3aXRjaC1zaXplLWJhc2UoXG4gICRzaXplLFxuICAkd2lkdGgsXG4gICRoZWlnaHQsXG4gICRmb250LXNpemUsXG4gICRmb3JtLWxhYmVsLWZvbnQtc2l6ZSxcbiAgJGxhYmVsLWxpbmUtaGVpZ2h0LFxuICAkaW5uZXItc3BhY2VyXG4pIHtcbiAgbWluLWhlaWdodDogJGhlaWdodDtcblxuICBmb250LXNpemU6ICRmb3JtLWxhYmVsLWZvbnQtc2l6ZTtcbiAgbGluZS1oZWlnaHQ6ICRsYWJlbC1saW5lLWhlaWdodDtcblxuICAkZGVsdGE6IDA7XG4gICRsaW5lLWhlaWdodC1jb21wdXRlZDogJGZvcm0tbGFiZWwtZm9udC1zaXplICogJGxhYmVsLWxpbmUtaGVpZ2h0O1xuICAuc3dpdGNoLWxhYmVsOmZpcnN0LWNoaWxkIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkc3dpdGNoLWd1dHRlcjtcbiAgfVxuICAuc3dpdGNoLWlucHV0IH4gLnN3aXRjaC1sYWJlbCB7XG4gICAgcGFkZGluZy1sZWZ0OiAkd2lkdGggKyAkc3dpdGNoLWd1dHRlcjtcbiAgfVxuXG4gIC5zd2l0Y2gtdG9nZ2xlLXNsaWRlciB7XG4gICAgd2lkdGg6ICR3aWR0aDtcbiAgICBoZWlnaHQ6ICRoZWlnaHQgLSAoJGRlbHRhICogMik7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiAkaGVpZ2h0O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuXG4gICAgaSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBmb250LXNpemU6ICRmb3JtLWxhYmVsLWZvbnQtc2l6ZTtcbiAgICAgIEBpZiAoJHNpemU9PSAnbGcnKSB7XG4gICAgICAgIHRvcDogLTJweDtcbiAgICAgIH0gQGVsc2UgaWYgKCRzaXplPT0gJ3NtJykge1xuICAgICAgICB0b3A6IC0ycHg7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgdG9wOiAtMS4zNXB4O1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkPiRoZWlnaHQpIHtcbiAgICAgIHRvcDogKCgkbGluZS1oZWlnaHQtY29tcHV0ZWQgLSAkaGVpZ2h0KSAqIDAuNSkgKyAkZGVsdGE7XG4gICAgfSBAZWxzZSB7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICB9XG4gIH1cblxuICAuc3dpdGNoLWxhYmVsIHtcbiAgICBAaWYgKCRsaW5lLWhlaWdodC1jb21wdXRlZCA8ICRoZWlnaHQpIHtcbiAgICAgIHRvcDogKCRoZWlnaHQgLSAkbGluZS1oZWlnaHQtY29tcHV0ZWQpICogMC41O1xuICAgIH0gQGVsc2Uge1xuICAgICAgdG9wOiAwO1xuICAgIH1cbiAgfVxuXG4gIC5zd2l0Y2gtaW5wdXQ6Y2hlY2tlZCB+IC5zd2l0Y2gtdG9nZ2xlLXNsaWRlcjo6YWZ0ZXIge1xuICAgIGxlZnQ6ICR3aWR0aCAtICRoZWlnaHQgLSAwLjE7XG4gIH1cblxuICAuc3dpdGNoLXRvZ2dsZS1zbGlkZXI6OmFmdGVyIHtcbiAgICBtYXJnaW4tbGVmdDogJGlubmVyLXNwYWNlcjtcbiAgICB3aWR0aDogY2VpbChyZW0tdG8tcHgoJGhlaWdodCAtICRpbm5lci1zcGFjZXIgKiAyKSk7XG4gICAgaGVpZ2h0OiBjZWlsKHJlbS10by1weCgkaGVpZ2h0IC0gJGlubmVyLXNwYWNlciAqIDIpKTtcbiAgfVxuXG4gIC5zd2l0Y2gtb24ge1xuICAgIHBhZGRpbmctbGVmdDogJGlubmVyLXNwYWNlcjtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkaGVpZ2h0IC0gJGlubmVyLXNwYWNlcjtcbiAgfVxuXG4gIC5zd2l0Y2gtb2ZmIHtcbiAgICBwYWRkaW5nLWxlZnQ6ICRoZWlnaHQgLSAkaW5uZXItc3BhY2VyO1xuICAgIHBhZGRpbmctcmlnaHQ6ICRpbm5lci1zcGFjZXI7XG4gIH1cblxuICBAaWYgJHJ0bC1zdXBwb3J0IHtcbiAgICBbZGlyPSdydGwnXSAmIC5zd2l0Y2gtbGFiZWwge1xuICAgICAgcGFkZGluZy1yaWdodDogJHdpZHRoICsgJHN3aXRjaC1ndXR0ZXI7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgfVxuICAgIFtkaXI9J3J0bCddICYgLnN3aXRjaC1pbnB1dDpjaGVja2VkIH4gLnN3aXRjaC10b2dnbGUtc2xpZGVyOjphZnRlciB7XG4gICAgICBsZWZ0OiBhdXRvO1xuICAgICAgcmlnaHQ6ICR3aWR0aCAtICRoZWlnaHQgLSAwLjE1O1xuICAgIH1cblxuICAgIFtkaXI9J3J0bCddICYgLnN3aXRjaC10b2dnbGUtc2xpZGVyIHtcbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIG1hcmdpbi1yaWdodDogJGlubmVyLXNwYWNlcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBbZGlyPSdydGwnXSAmIC5zd2l0Y2gtb24ge1xuICAgICAgcGFkZGluZy1sZWZ0OiAkaGVpZ2h0IC0gJGlubmVyLXNwYWNlcjtcbiAgICAgIHBhZGRpbmctcmlnaHQ6ICRpbm5lci1zcGFjZXI7XG4gICAgfVxuXG4gICAgW2Rpcj0ncnRsJ10gJiAuc3dpdGNoLW9mZiB7XG4gICAgICBwYWRkaW5nLWxlZnQ6ICRpbm5lci1zcGFjZXI7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAkaGVpZ2h0IC0gJGlubmVyLXNwYWNlcjtcbiAgICB9XG4gIH1cbn1cblxuLy8gU3dpdGNoIHNpemVcbkBtaXhpbiB0ZW1wbGF0ZS1zd2l0Y2gtc2l6ZShcbiAgJHNpemUsXG4gICR3aWR0aCxcbiAgJGhlaWdodCxcbiAgJGZvbnQtc2l6ZSxcbiAgJGZvcm0tbGFiZWwtZm9udC1zaXplLFxuICAkbGFiZWwtbGluZS1oZWlnaHQsXG4gICRpbm5lci1zcGFjZXI6ICRzd2l0Y2gtaW5uZXItc3BhY2VyXG4pIHtcbiAgLnN3aXRjaC0jeyRzaXplfSB7XG4gICAgQGluY2x1ZGUgdGVtcGxhdGUtc3dpdGNoLXNpemUtYmFzZShcbiAgICAgICRzaXplLFxuICAgICAgJHdpZHRoLFxuICAgICAgJGhlaWdodCxcbiAgICAgICRmb250LXNpemUsXG4gICAgICAkZm9ybS1sYWJlbC1mb250LXNpemUsXG4gICAgICAkbGFiZWwtbGluZS1oZWlnaHQsXG4gICAgICAkaW5uZXItc3BhY2VyXG4gICAgKTtcbiAgfVxufVxuXG4vLyBTd2l0Y2ggdmFyaWFudFxuQG1peGluIHRlbXBsYXRlLXN3aXRjaC12YXJpYW50KCRwYXJlbnQsICRiYWNrZ3JvdW5kLCAkY29sb3I6IG51bGwpIHtcbiAgJHNlbGVjdG9yOiBpZigkcGFyZW50PT0gJycsICcnLCAnI3skcGFyZW50fS5zd2l0Y2gnKTtcbiAgJGNvbG9yOiBpZigkY29sb3IsICRjb2xvciwgY29sb3ItY29udHJhc3QoJGJhY2tncm91bmQpKTtcblxuICAjeyRzZWxlY3Rvcn0gLnN3aXRjaC1pbnB1dDpjaGVja2VkIH4gLnN3aXRjaC10b2dnbGUtc2xpZGVyIHtcbiAgICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJGNvbG9yO1xuICAgIGJveC1zaGFkb3c6IDAgMnB4IDZweCAwIHJnYmEoJGJhY2tncm91bmQsIDAuMyk7XG4gIH1cbn1cblxuLy8gU3dpdGNoIHRoZW1lXG5AbWl4aW4gdGVtcGxhdGUtc3dpdGNoLXRoZW1lKCRwYXJlbnQsICRiYWNrZ3JvdW5kLCAkY29sb3I6IG51bGwpIHtcbiAgQGluY2x1ZGUgdGVtcGxhdGUtc3dpdGNoLXZhcmlhbnQoJHBhcmVudCwgJGJhY2tncm91bmQsICRjb2xvcik7XG59XG5cbi8vIFN3aXRjaCB2YWxpZGF0aW9uXG5AbWl4aW4gdGVtcGxhdGUtc3dpdGNoLXZhbGlkYXRpb24tc3RhdGUoJHN0YXRlLCAkY29sb3IpIHtcbiAgLnN3aXRjaC1pbnB1dCB7XG4gICAgLy9CUyAmIGpRdWVyeSB2YWxpZGF0aW9uXG4gICAgLndhcy12YWxpZGF0ZWQgJjojeyRzdGF0ZX0sXG4gICAgJi5pbnZhbGlkLFxuICAgIC8vanFcbiAgICAmLmlzLSN7JHN0YXRlfSB7XG4gICAgICB+IC5zd2l0Y2gtbGFiZWwge1xuICAgICAgICBjb2xvcjogJGNvbG9yO1xuICAgICAgfVxuXG4gICAgICB+IC4jeyRzdGF0ZX0tZmVlZGJhY2ssXG4gICAgICB+IC4jeyRzdGF0ZX0tdG9vbHRpcCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuXG4gICAgICB+IC5zd2l0Y2gtdG9nZ2xlLXNsaWRlciB7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvciAhaW1wb3J0YW50O1xuICAgICAgfVxuXG4gICAgICAmOmNoZWNrZWQgfiAuc3dpdGNoLXRvZ2dsZS1zbGlkZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3I7XG4gICAgICAgIGNvbG9yOiBjb2xvci1jb250cmFzdCgkY29sb3IpO1xuICAgICAgICBib3gtc2hhZG93OiAwIDJweCA2cHggMCByZ2JhKCRjb2xvciwgMC4zKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIFRpbWVsaW5lXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5cbi8vIFRpbWVsaW5lIHBvaW50XG5AbWl4aW4gdGVtcGxhdGUtdGltZWxpbmUtcG9pbnQtdmFyaWFudCgkcG9pbnQtY29sb3IsICRiYWNrZ3JvdW5kKSB7XG4gIC50aW1lbGluZSB7XG4gICAgI3skcG9pbnQtY29sb3J9IHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kICFpbXBvcnRhbnQ7XG4gICAgICBvdXRsaW5lOiAzcHggc29saWQgcmdiYSgkYmFja2dyb3VuZCwgMC4xMik7XG4gICAgfVxuXG4gICAgLy8gVGltZWxpbmUtb3V0bGluZSBzdHlsZXNcbiAgICAmLnRpbWVsaW5lLW91dGxpbmUge1xuICAgICAgI3skcG9pbnQtY29sb3J9IHtcbiAgICAgICAgYm9yZGVyOiAycHggc29saWQgJGJhY2tncm91bmQgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHRlbXBsYXRlLXRpbWVsaW5lLWluZGljYXRvci12YXJpYW50KCRpbmRpY2F0b3ItY29sb3IsICRiYWNrZ3JvdW5kKSB7XG4gICRjb2xvcjogJGJhY2tncm91bmQ7XG4gICRiYWNrZ3JvdW5kOiByZ2JhLXRvLWhleChyZ2JhKCRiYWNrZ3JvdW5kLCAwLjE2KSwgJHJnYmEtdG8taGV4LWJnKTtcblxuICAudGltZWxpbmUge1xuICAgICN7JGluZGljYXRvci1jb2xvcn0ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgICBpIHtcbiAgICAgICAgY29sb3I6ICRjb2xvciAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gVGV4dCBEaXZpZGVyXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5cbkBtaXhpbiB0ZW1wbGF0ZS10ZXh0LWRpdmlkZXItdmFyaWFudCgkZGl2aWRlci1jb2xvciwgJGJhY2tncm91bmQpIHtcbiAgJGRpdmlkZXItc2VsZWN0b3I6IGlmKCRkaXZpZGVyLWNvbG9yPT0gJycsICcnLCAnI3skZGl2aWRlci1jb2xvcn0nKTtcbiAgLmRpdmlkZXIge1xuICAgICYjeyRkaXZpZGVyLXNlbGVjdG9yfSB7XG4gICAgICAmLmRpdmlkZXItdmVydGljYWwsXG4gICAgICAuZGl2aWRlci10ZXh0IHtcbiAgICAgICAgJjpiZWZvcmUsXG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIE5hdmJhclxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuXG5AbWl4aW4gdGVtcGxhdGUtbmF2YmFyLXN0eWxlKCRwYXJlbnQsICRiZywgJGNvbG9yOiBudWxsLCAkYWN0aXZlLWNvbG9yOiBudWxsLCAkYm9yZGVyOiBudWxsKSB7XG4gICRjb2xvcnM6IGdldC1uYXZiYXItcHJvcCgkYmcsICRhY3RpdmUtY29sb3IsICRjb2xvciwgJGJvcmRlcik7XG5cbiAgI3skcGFyZW50fSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYShtYXAtZ2V0KCRjb2xvcnMsIGJnKSwgMC44OCkgIWltcG9ydGFudDtcbiAgICBjb2xvcjogbWFwLWdldCgkY29sb3JzLCBjb2xvcik7XG5cbiAgICAubmF2YmFyLWJyYW5kLFxuICAgIC5uYXZiYXItYnJhbmQgYSB7XG4gICAgICBjb2xvcjogbWFwLWdldCgkY29sb3JzLCBhY3RpdmUtY29sb3IpO1xuXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiBtYXAtZ2V0KCRjb2xvcnMsIGFjdGl2ZS1jb2xvcik7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gTmF2YmFyIHNlYXJjaCBjb2xvclxuICAgIC5uYXZiYXItc2VhcmNoLXdyYXBwZXIge1xuICAgICAgLm5hdmJhci1zZWFyY2gtaWNvbixcbiAgICAgIC5zZWFyY2gtaW5wdXQge1xuICAgICAgICBjb2xvcjogbWFwLWdldCgkY29sb3JzLCBjb2xvcik7XG4gICAgICB9XG4gICAgfVxuICAgIC5zZWFyY2gtaW5wdXQtd3JhcHBlciB7XG4gICAgICAuc2VhcmNoLWlucHV0LFxuICAgICAgLnNlYXJjaC10b2dnbGVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJnICFpbXBvcnRhbnQ7XG4gICAgICAgIGNvbG9yOiBtYXAtZ2V0KCRjb2xvcnMsIGNvbG9yKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAubmF2YmFyLW5hdiB7XG4gICAgICA+IC5uYXYtbGluayxcbiAgICAgID4gLm5hdi1pdGVtID4gLm5hdi1saW5rLFxuICAgICAgPiAubmF2ID4gLm5hdi1pdGVtID4gLm5hdi1saW5rIHtcbiAgICAgICAgY29sb3I6IG1hcC1nZXQoJGNvbG9ycywgY29sb3IpO1xuXG4gICAgICAgICY6aG92ZXIsXG4gICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgIGNvbG9yOiBtYXAtZ2V0KCRjb2xvcnMsIGFjdGl2ZS1jb2xvcik7XG4gICAgICAgIH1cblxuICAgICAgICAmLmRpc2FibGVkIHtcbiAgICAgICAgICBjb2xvcjogbWFwLWdldCgkY29sb3JzLCBkaXNhYmxlZC1jb2xvcikgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuc2hvdyA+IC5uYXYtbGluayxcbiAgICAgIC5hY3RpdmUgPiAubmF2LWxpbmssXG4gICAgICAubmF2LWxpbmsuc2hvdyxcbiAgICAgIC5uYXYtbGluay5hY3RpdmUge1xuICAgICAgICBjb2xvcjogbWFwLWdldCgkY29sb3JzLCBhY3RpdmUtY29sb3IpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5uYXZiYXItdG9nZ2xlciB7XG4gICAgICBjb2xvcjogbWFwLWdldCgkY29sb3JzLCBjb2xvcik7XG4gICAgICBib3JkZXItY29sb3I6IG1hcC1nZXQoJGNvbG9ycywgYm9yZGVyKTtcbiAgICB9XG5cbiAgICAubmF2YmFyLXRvZ2dsZXItaWNvbiB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBpZihcbiAgICAgICAgbWFwLWdldCgkY29sb3JzLCBjb250cmFzdC1wZXJjZW50KSA+IDAuNzUsXG4gICAgICAgICRuYXZiYXItbGlnaHQtdG9nZ2xlci1pY29uLWJnLFxuICAgICAgICAkbmF2YmFyLWRhcmstdG9nZ2xlci1pY29uLWJnXG4gICAgICApO1xuICAgIH1cblxuICAgIC5uYXZiYXItdGV4dCB7XG4gICAgICBjb2xvcjogbWFwLWdldCgkY29sb3JzLCBjb2xvcik7XG5cbiAgICAgIGEge1xuICAgICAgICBjb2xvcjogbWFwLWdldCgkY29sb3JzLCBhY3RpdmUtY29sb3IpO1xuXG4gICAgICAgICY6aG92ZXIsXG4gICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgIGNvbG9yOiBtYXAtZ2V0KCRjb2xvcnMsIGFjdGl2ZS1jb2xvcik7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBociB7XG4gICAgICBib3JkZXItY29sb3I6IG1hcC1nZXQoJGNvbG9ycywgYm9yZGVyKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIE1lbnVcbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcblxuQG1peGluIHRlbXBsYXRlLW1lbnUtc3R5bGUoJHBhcmVudCwgJGJnLCAkY29sb3I6IG51bGwsICRhY3RpdmUtY29sb3I6IG51bGwsICRib3JkZXI6IG51bGwsICRhY3RpdmUtYmc6IG51bGwpIHtcbiAgJGNvbG9yczogZ2V0LW5hdmJhci1wcm9wKCRiZywgJGFjdGl2ZS1jb2xvciwgJGNvbG9yLCAkYm9yZGVyKTtcbiAgJGNvbnRyYXN0LXBlcmNlbnQ6IG1hcC1nZXQoJGNvbG9ycywgY29udHJhc3QtcGVyY2VudCk7XG5cbiAgQGlmIG5vdCAkYWN0aXZlLWJnIHtcbiAgICAkYWN0aXZlLWJnOiByZ2JhLXRvLWhleChcbiAgICAgIHJnYmEobWFwLWdldCgkY29sb3JzLCBiZyksIDEgLSBpZigkY29udHJhc3QtcGVyY2VudCA8IDAuNzUsIDAuMDI1LCAwLjA1KSksXG4gICAgICBpZigkY29udHJhc3QtcGVyY2VudCA+IDAuMjUsICNmZmYsICMwMDApXG4gICAgKTtcbiAgfVxuXG4gICRtZW51LWFjdGl2ZS1iZzogbGluZWFyLWdyYWRpZW50KDI3MGRlZywgcmdiYSgkYWN0aXZlLWJnLCAwLjcpIDAlLCAkYWN0aXZlLWJnIDEwMCUpO1xuICAkbWVudS1hY3RpdmUtYmctcnRsOiBsaW5lYXItZ3JhZGllbnQoLTI3MGRlZywgcmdiYSgkYWN0aXZlLWJnLCAwLjcpIDAlLCAkYWN0aXZlLWJnIDEwMCUpO1xuICAkaG9yaXpvbnRhbC1hY3RpdmUtYmc6IHJnYmEtdG8taGV4KHJnYmEoJGFjdGl2ZS1iZywgMC4xNiksICRiZyk7XG5cbiAgI3skcGFyZW50fSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogbWFwLWdldCgkY29sb3JzLCBiZykgIWltcG9ydGFudDtcbiAgICAmLm1lbnUtaG9yaXpvbnRhbCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKG1hcC1nZXQoJGNvbG9ycywgYmcpLCAwLjk1KSAhaW1wb3J0YW50O1xuICAgIH1cbiAgICBjb2xvcjogbWFwLWdldCgkY29sb3JzLCBjb2xvcik7XG5cbiAgICAubWVudS1saW5rLFxuICAgIC5tZW51LWhvcml6b250YWwtcHJldixcbiAgICAubWVudS1ob3Jpem9udGFsLW5leHQge1xuICAgICAgY29sb3I6IG1hcC1nZXQoJGNvbG9ycywgY29sb3IpO1xuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBjb2xvcjogbWFwLWdldCgkY29sb3JzLCBhY3RpdmUtY29sb3IpO1xuICAgICAgfVxuXG4gICAgICAmLmFjdGl2ZSB7XG4gICAgICAgIGNvbG9yOiBtYXAtZ2V0KCRjb2xvcnMsIGFjdGl2ZS1jb2xvcik7XG4gICAgICB9XG4gICAgfVxuICAgIC5tZW51LXRvZ2dsZTo6YWZ0ZXIge1xuICAgICAgY29sb3I6IG1hcC1nZXQoJGNvbG9ycywgY29sb3IpO1xuICAgIH1cblxuICAgIC5tZW51LWl0ZW0uZGlzYWJsZWQgLm1lbnUtbGluayxcbiAgICAubWVudS1ob3Jpem9udGFsLXByZXYuZGlzYWJsZWQsXG4gICAgLm1lbnUtaG9yaXpvbnRhbC1uZXh0LmRpc2FibGVkIHtcbiAgICAgIGNvbG9yOiBtYXAtZ2V0KCRjb2xvcnMsIGRpc2FibGVkLWNvbG9yKSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5tZW51LWl0ZW0ub3Blbjpub3QoLm1lbnUtaXRlbS1jbG9zaW5nKSA+IC5tZW51LXRvZ2dsZSxcbiAgICAubWVudS1pdGVtLmFjdGl2ZSA+IC5tZW51LWxpbmsge1xuICAgICAgY29sb3I6IG1hcC1nZXQoJGNvbG9ycywgYWN0aXZlLWNvbG9yKTtcbiAgICB9XG5cbiAgICAvL3ZlcnRpY2FsIG1lbnUgYWN0aXZlIGl0ZW0gYmcgY29sb3JcbiAgICAmLm1lbnUtdmVydGljYWwgLm1lbnUtaXRlbS5hY3RpdmUgPiAubWVudS1saW5rOm5vdCgubWVudS10b2dnbGUpIHtcbiAgICAgIGJhY2tncm91bmQ6ICRtZW51LWFjdGl2ZS1iZztcbiAgICAgIGJveC1zaGFkb3c6IDBweCAycHggNnB4IDBweCByZ2JhKCRhY3RpdmUtYmcsIDAuMyk7XG4gICAgICBjb2xvcjogY29sb3ItY29udHJhc3QoJGFjdGl2ZS1iZykgIWltcG9ydGFudDtcbiAgICAgICYubWVudS10b2dnbGU6OmFmdGVyIHtcbiAgICAgICAgY29sb3I6IGNvbG9yLWNvbnRyYXN0KCRhY3RpdmUtYmcpICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgICBAaWYgJHJ0bC1zdXBwb3J0IHtcbiAgICAgICAgW2Rpcj0ncnRsJ10gJiB7XG4gICAgICAgICAgYmFja2dyb3VuZDogJG1lbnUtYWN0aXZlLWJnLXJ0bCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8tXG4gICAgJi5tZW51LWhvcml6b250YWwge1xuICAgICAgLm1lbnUtaW5uZXIgPiAubWVudS1pdGVtLmFjdGl2ZSA+IC5tZW51LWxpbmsubWVudS10b2dnbGUge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkbWVudS1hY3RpdmUtYmc7XG4gICAgICAgIGNvbG9yOiBjb2xvci1jb250cmFzdCgkYWN0aXZlLWJnKSAhaW1wb3J0YW50O1xuICAgICAgICBib3gtc2hhZG93OiAwcHggMnB4IDZweCAwcHggcmdiYSgkYWN0aXZlLWJnLCAwLjMpO1xuICAgICAgICAmLm1lbnUtdG9nZ2xlOjphZnRlciB7XG4gICAgICAgICAgY29sb3I6IGNvbG9yLWNvbnRyYXN0KCRhY3RpdmUtYmcpICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgQGlmICRydGwtc3VwcG9ydCB7XG4gICAgICAgICAgW2Rpcj0ncnRsJ10gJiB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkbWVudS1hY3RpdmUtYmctcnRsO1xuICAgICAgICAgICAgYm94LXNoYWRvdzogMHB4IDJweCA2cHggMHB4IHJnYmEoJGFjdGl2ZS1iZywgMC4zKTtcbiAgICAgICAgICAgIGNvbG9yOiBjb2xvci1jb250cmFzdCgkYWN0aXZlLWJnKSAhaW1wb3J0YW50O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAubWVudS1pbm5lciAubWVudS1pdGVtOm5vdCgubWVudS1pdGVtLWNsb3NpbmcpID4gLm1lbnUtc3ViLFxuICAgICAgLm1lbnUtaW5uZXIgLm1lbnUtaXRlbS5vcGVuID4gLm1lbnUtdG9nZ2xlIHtcbiAgICAgICAgYmFja2dyb3VuZDogJGJnO1xuICAgICAgfVxuXG4gICAgICAubWVudS1pdGVtLmFjdGl2ZSA+IC5tZW51LWxpbms6bm90KC5tZW51LXRvZ2dsZSkge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkaG9yaXpvbnRhbC1hY3RpdmUtYmc7XG4gICAgICAgIGNvbG9yOiAkYWN0aXZlLWJnICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuICAgIC5tZW51LWlubmVyID4gLm1lbnUtaXRlbS5tZW51LWl0ZW0tY2xvc2luZyAubWVudS1pdGVtLm9wZW4gLm1lbnUtc3ViLFxuICAgIC5tZW51LWlubmVyID4gLm1lbnUtaXRlbS5tZW51LWl0ZW0tY2xvc2luZyAubWVudS1pdGVtLm9wZW4gLm1lbnUtdG9nZ2xlIHtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgY29sb3I6IGNvbG9yLWNvbnRyYXN0KCRhY3RpdmUtYmcpO1xuICAgIH1cblxuICAgIC5tZW51LWlubmVyLXNoYWRvdyB7XG4gICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoJGJnIDQxJSwgcmdiYSgkYmcsIDAuMTEpIDk1JSwgcmdiYSgkYmcsIDApKTtcbiAgICB9XG5cbiAgICAubWVudS10ZXh0IHtcbiAgICAgIGNvbG9yOiBtYXAtZ2V0KCRjb2xvcnMsIGFjdGl2ZS1jb2xvcik7XG4gICAgfVxuXG4gICAgLm1lbnUtaGVhZGVyIHtcbiAgICAgIGNvbG9yOiBtYXAtZ2V0KCRjb2xvcnMsIG11dGVkLWNvbG9yKTtcbiAgICB9XG5cbiAgICBocixcbiAgICAubWVudS1kaXZpZGVyLFxuICAgIC5tZW51LWlubmVyID4gLm1lbnUtaXRlbS5vcGVuID4gLm1lbnUtc3ViOjpiZWZvcmUge1xuICAgICAgYm9yZGVyLWNvbG9yOiBtYXAtZ2V0KCRjb2xvcnMsIGJvcmRlcikgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAubWVudS1ibG9jazo6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IG1hcC1nZXQoJGNvbG9ycywgbXV0ZWQtY29sb3IpO1xuICAgIH1cblxuICAgIC5wc19fdGh1bWIteSxcbiAgICAucHNfX3JhaWwteS5wcy0tY2xpY2tpbmcgPiAucHNfX3RodW1iLXkge1xuICAgICAgYmFja2dyb3VuZDogcmdiYShcbiAgICAgICAgbWFwLWdldCgkY29sb3JzLCBhY3RpdmUtY29sb3IpLFxuICAgICAgICBpZigkY29udHJhc3QtcGVyY2VudCA+IDAuNzUsIG1hcC1nZXQoJGNvbG9ycywgb3BhY2l0eSkgLSAwLjQsIG1hcC1nZXQoJGNvbG9ycywgb3BhY2l0eSkgLSAwLjIpXG4gICAgICApICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb290ZXJcbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcblxuQG1peGluIHRlbXBsYXRlLWZvb3Rlci1zdHlsZSgkcGFyZW50LCAkYmcsICRjb2xvcjogbnVsbCwgJGFjdGl2ZS1jb2xvcjogbnVsbCwgJGJvcmRlcjogbnVsbCkge1xuICAkY29sb3JzOiBnZXQtbmF2YmFyLXByb3AoJGJnLCAkYWN0aXZlLWNvbG9yLCAkY29sb3IsICRib3JkZXIpO1xuXG4gICN7JHBhcmVudH0ge1xuICAgIGNvbG9yOiBtYXAtZ2V0KCRjb2xvcnMsIGNvbG9yKTtcbiAgICAubGF5b3V0LWZvb3Rlci1maXhlZCAubGF5b3V0LWhvcml6b250YWwgJiB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtYXAtZ2V0KCRjb2xvcnMsIGJnKSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5sYXlvdXQtZm9vdGVyLWZpeGVkIC5sYXlvdXQtd3JhcHBlcjpub3QoLmxheW91dC1ob3Jpem9udGFsKSAmIHtcbiAgICAgIC5mb290ZXItY29udGFpbmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbWFwLWdldCgkY29sb3JzLCBiZykgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuZm9vdGVyLWxpbmsge1xuICAgICAgY29sb3I6IG1hcC1nZXQoJGNvbG9ycywgY29sb3IpO1xuXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiBtYXAtZ2V0KCRjb2xvcnMsIGFjdGl2ZS1jb2xvcik7XG4gICAgICB9XG5cbiAgICAgICYuZGlzYWJsZWQge1xuICAgICAgICBjb2xvcjogbWFwLWdldCgkY29sb3JzLCBkaXNhYmxlZC1jb2xvcikgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuZm9vdGVyLXRleHQge1xuICAgICAgY29sb3I6IG1hcC1nZXQoJGNvbG9ycywgYWN0aXZlLWNvbG9yKTtcbiAgICB9XG5cbiAgICAuc2hvdyA+IC5mb290ZXItbGluayxcbiAgICAuYWN0aXZlID4gLmZvb3Rlci1saW5rLFxuICAgIC5mb290ZXItbGluay5zaG93LFxuICAgIC5mb290ZXItbGluay5hY3RpdmUge1xuICAgICAgY29sb3I6IG1hcC1nZXQoJGNvbG9ycywgYWN0aXZlLWNvbG9yKTtcbiAgICB9XG5cbiAgICBociB7XG4gICAgICBib3JkZXItY29sb3I6IG1hcC1nZXQoJGNvbG9ycywgYm9yZGVyKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIFNWRyBDb2xvclxuQG1peGluIHRlbXBsYXRlLXN2Zy1jb2xvcigkYmFja2dyb3VuZCkge1xuICAuc3ZnLWlsbHVzdHJhdGlvbiBzdmcge1xuICAgIGZpbGw6ICRiYWNrZ3JvdW5kO1xuICB9XG59XG4iLCIvLyBUcmVldmlld1xuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuXG4vLyBUcmVldmlldyBjbGlja1xuQG1peGluIHRlbXBsYXRlLXRyZWV2aWV3LWNsaWNrZWQtYmcoJGJhY2tncm91bmQpIHtcbiAgLmpzdHJlZS1kZWZhdWx0IHtcbiAgICAuanN0cmVlLXdob2xlcm93LWhvdmVyZWQsXG4gICAgLmpzdHJlZS1ob3ZlcmVkIHtcbiAgICAgIGJhY2tncm91bmQ6ICRjb21wb25lbnQtaG92ZXItYmc7XG4gICAgICBjb2xvcjogJGNvbXBvbmVudC1ob3Zlci1jb2xvcjtcbiAgICB9XG4gICAgLmpzdHJlZS13aG9sZXJvdy1jbGlja2VkLFxuICAgIC5qc3RyZWUtY2xpY2tlZCB7XG4gICAgICBiYWNrZ3JvdW5kOiAkY29tcG9uZW50LWhvdmVyLWNvbG9yO1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICB9XG4gIH1cbiAgLmpzdHJlZS1kZWZhdWx0LWRhcmsge1xuICAgIC5qc3RyZWUtd2hvbGVyb3ctaG92ZXJlZCxcbiAgICAuanN0cmVlLWhvdmVyZWQge1xuICAgICAgYmFja2dyb3VuZDogJGNvbXBvbmVudC1ob3Zlci1iZztcbiAgICAgIGNvbG9yOiAkY29tcG9uZW50LWhvdmVyLWNvbG9yO1xuICAgIH1cbiAgICAuanN0cmVlLXdob2xlcm93LWNsaWNrZWQsXG4gICAgLmpzdHJlZS1jbGlja2VkIHtcbiAgICAgIGJhY2tncm91bmQ6ICRjb21wb25lbnQtaG92ZXItY29sb3I7XG4gICAgICBjb2xvcjogJHdoaXRlO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gQ2FyZHNcbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcblxuLy8gY29sb3IgYm9yZGVyIGJvdHRvbSBhbmQgc2hhZG93IGluIGNhcmRcbkBtaXhpbiB0ZW1wbGF0ZS1jYXJkLWJvcmRlci1zaGFkb3ctdmFyaWFudCgkcGFyZW50LCAkYmFja2dyb3VuZCkge1xuICAkYm9yZGVyLWNvbG9yOiBzaGFkZS1jb2xvcigkYmFja2dyb3VuZCwgJGNhcmQtYm9yZGVyLWNvbG9yLXNjYWxlLCAkY2FyZC1iZyk7XG4gIC5jYXJkIHtcbiAgICAmI3skcGFyZW50fSB7XG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRib3JkZXItY29sb3I7XG4gICAgICB9XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIGNhcmQgaG92ZXIgYm9yZGVyIGNvbG9yXG5AbWl4aW4gdGVtcGxhdGUtY2FyZC1ob3Zlci1ib3JkZXItdmFyaWFudCgkcGFyZW50LCAkYmFja2dyb3VuZCkge1xuICAkYm9yZGVyLWNvbG9yOiBzaGFkZS1jb2xvcigkYmFja2dyb3VuZCwgJGNhcmQtaG92ZXItYm9yZGVyLXNjYWxlLCAkY2FyZC1iZyk7XG4gIC5jYXJkIHtcbiAgICAmI3skcGFyZW50fSxcbiAgICAjeyRwYXJlbnR9IHtcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBib3JkZXItY29sb3I6ICRib3JkZXItY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJAbWl4aW4gbm91aXNsaWRlci12YXJpYW50KCRwYXJlbnQsICRiYWNrZ3JvdW5kKSB7XG4gICN7JHBhcmVudH0ubm9VaS10YXJnZXQge1xuICAgIC8vIElmIHNsaWRlciBpcyBub3QgZGlzYWJsZWRcbiAgICAmOm5vdChbZGlzYWJsZWRdKSB7XG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKCRiYWNrZ3JvdW5kLCAwLjE2KTtcbiAgICAgIC5ub1VpLWNvbm5lY3Qge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZDtcbiAgICAgIH1cblxuICAgICAgLm5vVWktaGFuZGxlIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgOHB4IHJnYmEoJGJhY2tncm91bmQsIDAuMTYpO1xuICAgICAgICB9XG4gICAgICAgICY6YWN0aXZlLFxuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAxM3B4IHJnYmEoJGJhY2tncm91bmQsIDAuMTYpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBub3Vpc2xpZGVyLXRoZW1lKCRiYWNrZ3JvdW5kKSB7XG4gIEBpbmNsdWRlIG5vdWlzbGlkZXItdmFyaWFudCgnJywgJGJhY2tncm91bmQpO1xufVxuIiwiQGltcG9ydCAnLi4vLi4vc2Nzcy9fYm9vdHN0cmFwLWV4dGVuZGVkL2luY2x1ZGUnO1xuQG1peGluIHNlbGVjdDItdmFyaWFudCgkYmFja2dyb3VuZCwgJGNvbG9yOiBudWxsKSB7XG4gICRjb2xvcjogaWYoJGNvbG9yLCAkY29sb3IsIGNvbG9yLWNvbnRyYXN0KCRiYWNrZ3JvdW5kKSk7XG5cbiAgLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUgLnNlbGVjdDItc2VsZWN0aW9uX19jaG9pY2Uge1xuICAgIGJhY2tncm91bmQ6IHJnYmEoJGJhY2tncm91bmQsIDAuMTYpICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6ICRiYWNrZ3JvdW5kICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1peGluIHNlbGVjdDItdmFsaWRhdGlvbi1zdGF0ZSgkc3RhdGUsICRib3JkZXIpIHtcbiAgLmlzLSN7JHN0YXRlfSAuc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VsZWN0aW9uLFxuICAuaXMtI3skc3RhdGV9LnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXNlbGVjdGlvbiB7XG4gICAgYm9yZGVyLXdpZHRoOiAkaW5wdXQtZm9jdXMtYm9yZGVyLXdpZHRoO1xuICAgIGJvcmRlci1jb2xvcjogJGJvcmRlciAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtaXhpbiBzZWxlY3QyLXRoZW1lKCRiYWNrZ3JvdW5kLCAkY29sb3I6IG51bGwpIHtcbiAgJGNvbG9yOiBpZigkY29sb3IsICRjb2xvciwgY29sb3ItY29udHJhc3QoJGJhY2tncm91bmQpKTtcblxuICAuc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQge1xuICAgIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbi0taGlnaGxpZ2h0ZWRbYXJpYS1zZWxlY3RlZF0ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQgIWltcG9ydGFudDtcbiAgICAgIGNvbG9yOiAkY29sb3IgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAmLnNlbGVjdDItY29udGFpbmVyLS1mb2N1cyAuc2VsZWN0Mi1zZWxlY3Rpb24sXG4gICAgJi5zZWxlY3QyLWNvbnRhaW5lci0tb3BlbiAuc2VsZWN0Mi1zZWxlY3Rpb24ge1xuICAgICAgYm9yZGVyLXdpZHRoOiAkaW5wdXQtZm9jdXMtYm9yZGVyLXdpZHRoO1xuICAgICAgYm9yZGVyLWNvbG9yOiAkYmFja2dyb3VuZCAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIC5zZWxlY3QyLXByaW1hcnkge1xuICAgIEBpbmNsdWRlIHNlbGVjdDItdmFyaWFudCgkYmFja2dyb3VuZCwgJGNvbG9yKTtcbiAgfVxufVxuIiwiQG1peGluIHRhZ2lmeS10aGVtZSgkY29sb3IpIHtcbiAgLnRhZ2lmeS0tZm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogJGNvbG9yICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnRhZ2lmeV9fZHJvcGRvd25fX2l0ZW0tLWFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZDogJGNvbG9yICFpbXBvcnRhbnQ7XG4gIH1cbn1cbiIsIkBtaXhpbiBicy1kYXRhdGFibGVzLXRoZW1lKCRiYWNrZ3JvdW5kKSB7XG4gIC8vIFN0eWxlIGZvciByZXNwb25zaXZlIGljb25cbiAgdGFibGUuZGF0YVRhYmxlLmR0ci1jb2x1bW4gPiB0Ym9keSA+IHRyID4gdGQuY29udHJvbDpiZWZvcmUsXG4gIHRhYmxlLmRhdGFUYWJsZS5kdHItY29sdW1uID4gdGJvZHkgPiB0ciA+IHRoLmNvbnRyb2w6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICBib3JkZXI6IDJweCBzb2xpZCAkcmdiYS10by1oZXgtYmc7XG4gICAgYm94LXNoYWRvdzogMCAwIDNweCAkZ3JheS04MDA7XG4gIH1cbn1cbiIsIkBpbXBvcnQgJy4uLy4uL3Njc3MvX2Jvb3RzdHJhcC1leHRlbmRlZC9mdW5jdGlvbnMnO1xuXG5AbWl4aW4gYnMtc2VsZWN0LXRoZW1lKCRiYWNrZ3JvdW5kLCAkY29sb3I6IG51bGwpIHtcbiAgJGNvbG9yOiBpZigkY29sb3IsICRjb2xvciwgY29sb3ItY29udHJhc3QoJGJhY2tncm91bmQpKTtcblxuICAuYm9vdHN0cmFwLXNlbGVjdCB7XG4gICAgLmRyb3Bkb3duLW1lbnUuaW5uZXIgYVthcmlhLXNlbGVjdGVkPSd0cnVlJ10ge1xuICAgICAgYmFja2dyb3VuZDogJGJhY2tncm91bmQgIWltcG9ydGFudDtcbiAgICAgIGNvbG9yOiAkY29sb3IgIWltcG9ydGFudDtcbiAgICB9XG4gICAgLy8gRml4OiBUbyBhZGQgZm9jdXMgYm9yZGVyLCAuYm9vdHN0cmFwLXNlbGVjdCBhZGRpbmcgYm9yZGVyIGJ1dCBub3QgYWJsZSB0byB1cGRhdGUgYXMgd2UgY2FuIG5vdCBoYXZlIHRoZSBmb2N1cyBvbiBkaXZcbiAgICAuZHJvcGRvd24tdG9nZ2xlLnNob3cge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICB9XG4gIH1cbn1cbiIsIkBpbXBvcnQgJy4uLy4uL3Njc3MvX2Jvb3RzdHJhcC1leHRlbmRlZC9mdW5jdGlvbnMnO1xuXG5AbWl4aW4gYnMtZGF0ZXBpY2tlci10aGVtZSgkYmFja2dyb3VuZCwgJGNvbG9yOiBudWxsKSB7XG4gICRjb2xvcjogaWYoJGNvbG9yLCAkY29sb3IsIGNvbG9yLWNvbnRyYXN0KCRiYWNrZ3JvdW5kKSk7XG4gICRyYW5nZS1iZzogcmdiYS10by1oZXgocmdiYSgkYmFja2dyb3VuZCwgMC4xNiksICRjYXJkLWJnKTtcbiAgJHJhbmdlLWNvbG9yOiAkYmFja2dyb3VuZDtcblxuICAuZGF0ZXBpY2tlciB7XG4gICAgdGFibGUge1xuICAgICAgdHIgdGQge1xuICAgICAgICAmLmFjdGl2ZSxcbiAgICAgICAgJi5hY3RpdmUuaGlnaGxpZ2h0ZWQsXG4gICAgICAgIC5mb2N1c2VkLFxuICAgICAgICBzcGFuLmFjdGl2ZSxcbiAgICAgICAgc3Bhbi5hY3RpdmUuZGlzYWJsZWQsXG4gICAgICAgICYucmFuZ2Utc3RhcnQsXG4gICAgICAgICYucmFuZ2UtZW5kIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZCAhaW1wb3J0YW50O1xuICAgICAgICAgIGNvbG9yOiAkY29sb3IgIWltcG9ydGFudDtcbiAgICAgICAgICBib3gtc2hhZG93OiAwIDAuMTI1cmVtIDAuMzc1cmVtIDAgcmdiYSgkYmFja2dyb3VuZCwgMC4zKTtcbiAgICAgICAgfVxuXG4gICAgICAgICYucmFuZ2UsXG4gICAgICAgICYucmFuZ2UuaGlnaGxpZ2h0ZWQsXG4gICAgICAgICYucmFuZ2UudG9kYXkge1xuICAgICAgICAgIGNvbG9yOiAkcmFuZ2UtY29sb3IgIWltcG9ydGFudDtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAkcmFuZ2UtYmcgIWltcG9ydGFudDtcblxuICAgICAgICAgICYuZm9jdXNlZCB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhLXRvLWhleChyZ2JhKCRiYWNrZ3JvdW5kLCAwLjI0KSwgJGNhcmQtYmcpICFpbXBvcnRhbnQ7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJi5kaXNhYmxlZCB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudGl6ZSgkcmFuZ2UtYmcsIDAuNSkgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGNvbG9yOiB0cmFuc3BhcmVudGl6ZSgkcmFuZ2UtY29sb3IsIDAuNSkgIWltcG9ydGFudDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLnRvZGF5Om5vdCguYWN0aXZlKSxcbiAgICAgICAgJi50b2RheTpub3QoLmFjdGl2ZSk6aG92ZXIge1xuICAgICAgICAgIGNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhLXRvLWhleChyZ2JhKCRiYWNrZ3JvdW5kLCAwLjE2KSwgJGNhcmQtYmcpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBicy1kYXRlcGlja2VyLWRhcmstdGhlbWUoJGJhY2tncm91bmQsICRjb2xvcjogbnVsbCkge1xuICAkY29sb3I6IGlmKCRjb2xvciwgJGNvbG9yLCBjb2xvci1jb250cmFzdCgkYmFja2dyb3VuZCkpO1xuICAkcmFuZ2UtYmc6IHJnYmEtdG8taGV4KHJnYmEoJGJhY2tncm91bmQsIDAuMjQpLCAkY2FyZC1iZyk7XG4gICRyYW5nZS1jb2xvcjogJGJhY2tncm91bmQ7XG5cbiAgLmRhdGVwaWNrZXIge1xuICAgIHRhYmxlIHtcbiAgICAgIHRyIHRkIHtcbiAgICAgICAgJi5hY3RpdmUsXG4gICAgICAgICYuYWN0aXZlLmhpZ2hsaWdodGVkLFxuICAgICAgICAuZm9jdXNlZCxcbiAgICAgICAgc3Bhbi5hY3RpdmUsXG4gICAgICAgIHNwYW4uYWN0aXZlLmRpc2FibGVkLFxuICAgICAgICAmLnJhbmdlLXN0YXJ0LFxuICAgICAgICAmLnJhbmdlLWVuZCB7XG4gICAgICAgICAgY29sb3I6ICRjb2xvciAhaW1wb3J0YW50O1xuICAgICAgICAgIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kICFpbXBvcnRhbnQ7XG4gICAgICAgICAgYm94LXNoYWRvdzogMCAwLjEyNXJlbSAwLjM3NXJlbSAwIHJnYmEoJGJhY2tncm91bmQsIDAuMyk7XG4gICAgICAgIH1cblxuICAgICAgICAmLnJhbmdlLFxuICAgICAgICAmLnJhbmdlLmhpZ2hsaWdodGVkLFxuICAgICAgICAmLnJhbmdlLnRvZGF5IHtcbiAgICAgICAgICBjb2xvcjogJHJhbmdlLWNvbG9yICFpbXBvcnRhbnQ7XG4gICAgICAgICAgYmFja2dyb3VuZDogJHJhbmdlLWJnICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAmLmRpc2FibGVkIHtcbiAgICAgICAgICAgIGNvbG9yOiB0cmFuc3BhcmVudGl6ZSgkcmFuZ2UtY29sb3IsIDAuNSkgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50aXplKCRyYW5nZS1iZywgMC41KSAhaW1wb3J0YW50O1xuICAgICAgICAgIH1cblxuICAgICAgICAgICYuZm9jdXNlZCB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhLXRvLWhleChyZ2JhKCRiYWNrZ3JvdW5kLCAwLjI0KSwgJGNhcmQtYmcpICFpbXBvcnRhbnQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi50b2RheTpub3QoLmFjdGl2ZSksXG4gICAgICAgICYudG9kYXk6bm90KC5hY3RpdmUpOmhvdmVyIHtcbiAgICAgICAgICBjb2xvcjogJGJhY2tncm91bmQ7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYS10by1oZXgocmdiYSgkYmFja2dyb3VuZCwgMC4xNiksICRjYXJkLWJnKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiQGltcG9ydCAnLi4vLi4vc2Nzcy9fYm9vdHN0cmFwLWV4dGVuZGVkL2Z1bmN0aW9ucyc7XG5cbkBtaXhpbiBmbGF0cGlja3ItdGhlbWUoJGJhY2tncm91bmQsICRjb2xvcjogbnVsbCkge1xuICAkaW4tcmFuZ2UtYmc6IHJnYmEtdG8taGV4KHJnYmEoJGJhY2tncm91bmQsIDAuMTYpLCAkY2FyZC1iZyk7XG4gICRjb2xvcjogaWYoJGNvbG9yLCAkY29sb3IsIGNvbG9yLWNvbnRyYXN0KCRiYWNrZ3JvdW5kKSk7XG4gICRpbi1yYW5nZS1jb2xvcjogJGJhY2tncm91bmQ7XG5cbiAgLmZsYXRwaWNrci1kYXkge1xuICAgICYudG9kYXksXG4gICAgJi50b2RheTpob3ZlciB7XG4gICAgICBjb2xvcjogJGJhY2tncm91bmQgIWltcG9ydGFudDtcbiAgICAgIGJvcmRlci1jb2xvcjogcmdiYS10by1oZXgocmdiYSgkYmFja2dyb3VuZCwgMC4xNiksICRjYXJkLWJnKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEtdG8taGV4KHJnYmEoJGJhY2tncm91bmQsIDAuMTYpLCAkY2FyZC1iZykgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAmLmluUmFuZ2UsXG4gICAgJi5uZXh0TW9udGhEYXkuaW5SYW5nZSxcbiAgICAmLnByZXZNb250aERheS5pblJhbmdlLFxuICAgICYudG9kYXkuaW5SYW5nZSxcbiAgICAmLnByZXZNb250aERheS50b2RheS5pblJhbmdlLFxuICAgICYubmV4dE1vbnRoRGF5LnRvZGF5LmluUmFuZ2Uge1xuICAgICAgY29sb3I6ICRiYWNrZ3JvdW5kICFpbXBvcnRhbnQ7XG4gICAgICBiYWNrZ3JvdW5kOiAkaW4tcmFuZ2UtYmcgIWltcG9ydGFudDtcbiAgICAgIGJvcmRlci1jb2xvcjogJGluLXJhbmdlLWJnICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgJi5zZWxlY3RlZCxcbiAgICAmLnNlbGVjdGVkLmluUmFuZ2UsXG4gICAgJi5zZWxlY3RlZDpmb2N1cyxcbiAgICAmLnNlbGVjdGVkOmhvdmVyLFxuICAgICYuc2VsZWN0ZWQubmV4dE1vbnRoRGF5LFxuICAgICYuc2VsZWN0ZWQucHJldk1vbnRoRGF5LFxuICAgICYuc3RhcnRSYW5nZSxcbiAgICAmLnN0YXJ0UmFuZ2UuaW5SYW5nZSxcbiAgICAmLnN0YXJ0UmFuZ2U6Zm9jdXMsXG4gICAgJi5zdGFydFJhbmdlOmhvdmVyLFxuICAgICYuc3RhcnRSYW5nZS5uZXh0TW9udGhEYXksXG4gICAgJi5zdGFydFJhbmdlLnByZXZNb250aERheSxcbiAgICAmLmVuZFJhbmdlLFxuICAgICYuZW5kUmFuZ2UuaW5SYW5nZSxcbiAgICAmLmVuZFJhbmdlOmZvY3VzLFxuICAgICYuZW5kUmFuZ2U6aG92ZXIsXG4gICAgJi5lbmRSYW5nZS5uZXh0TW9udGhEYXksXG4gICAgJi5lbmRSYW5nZS5wcmV2TW9udGhEYXksXG4gICAgJi53ZWVrLnNlbGVjdGVkIHtcbiAgICAgIGNvbG9yOiAkY29sb3IgIWltcG9ydGFudDtcbiAgICAgIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kICFpbXBvcnRhbnQ7XG4gICAgICBib3JkZXItY29sb3I6ICRiYWNrZ3JvdW5kICFpbXBvcnRhbnQ7XG4gICAgICBib3gtc2hhZG93OiAwIDAuMTI1cmVtIDAuMzc1cmVtIDAgcmdiYSgkYmFja2dyb3VuZCwgMC4zKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGZsYXRwaWNrci1kYXJrLXRoZW1lKCRiYWNrZ3JvdW5kLCAkY29sb3I6IG51bGwpIHtcbiAgJGNvbG9yOiBpZigkY29sb3IsICRjb2xvciwgY29sb3ItY29udHJhc3QoJGJhY2tncm91bmQpKTtcbiAgJGluLXJhbmdlLWJnOiByZ2JhLXRvLWhleChyZ2JhKCRiYWNrZ3JvdW5kLCAwLjE2KSwgJGNhcmQtYmcpO1xuICAkaW4tcmFuZ2UtY29sb3I6ICRiYWNrZ3JvdW5kO1xuXG4gIC5mbGF0cGlja3ItY2FsZW5kYXIgLm51bUlucHV0V3JhcHBlciBzcGFuIHtcbiAgICAmLmFycm93VXA6YWZ0ZXIge1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGNvbG9yO1xuICAgIH1cblxuICAgICYuYXJyb3dEb3duOmFmdGVyIHtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6ICRjb2xvcjtcbiAgICB9XG4gIH1cblxuICAuZmxhdHBpY2tyLWRheSB7XG4gICAgJi50b2RheSxcbiAgICAmLnRvZGF5OmhvdmVyLFxuICAgICYuaW5SYW5nZSB7XG4gICAgICBjb2xvcjogJGJhY2tncm91bmQgIWltcG9ydGFudDtcbiAgICAgIGJvcmRlci1jb2xvcjogcmdiYS10by1oZXgocmdiYSgkYmFja2dyb3VuZCwgMC4xNiksICRjYXJkLWJnKSAhaW1wb3J0YW50O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYS10by1oZXgocmdiYSgkYmFja2dyb3VuZCwgMC4xNiksICRjYXJkLWJnKSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgICYuaW5SYW5nZSxcbiAgICAmLm5leHRNb250aERheS5pblJhbmdlLFxuICAgICYucHJldk1vbnRoRGF5LmluUmFuZ2UsXG4gICAgJi50b2RheS5pblJhbmdlLFxuICAgICYubmV4dE1vbnRoRGF5LnRvZGF5LmluUmFuZ2UsXG4gICAgJi5wcmV2TW9udGhEYXkudG9kYXkuaW5SYW5nZSB7XG4gICAgICBib3JkZXItY29sb3I6ICRpbi1yYW5nZS1iZyAhaW1wb3J0YW50O1xuICAgICAgYmFja2dyb3VuZDogJGluLXJhbmdlLWJnICFpbXBvcnRhbnQ7XG4gICAgICBjb2xvcjogJGJhY2tncm91bmQgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAmLnNlbGVjdGVkLFxuICAgICYuc2VsZWN0ZWQuaW5SYW5nZSxcbiAgICAmLnNlbGVjdGVkOmZvY3VzLFxuICAgICYuc2VsZWN0ZWQ6aG92ZXIsXG4gICAgJi5zZWxlY3RlZC5wcmV2TW9udGhEYXksXG4gICAgJi5zZWxlY3RlZC5uZXh0TW9udGhEYXksXG4gICAgJi5zdGFydFJhbmdlLFxuICAgICYuc3RhcnRSYW5nZS5pblJhbmdlLFxuICAgICYuc3RhcnRSYW5nZTpmb2N1cyxcbiAgICAmLnN0YXJ0UmFuZ2U6aG92ZXIsXG4gICAgJi5zdGFydFJhbmdlLnByZXZNb250aERheSxcbiAgICAmLnN0YXJ0UmFuZ2UubmV4dE1vbnRoRGF5LFxuICAgICYuZW5kUmFuZ2UsXG4gICAgJi5lbmRSYW5nZS5pblJhbmdlLFxuICAgICYuZW5kUmFuZ2U6Zm9jdXMsXG4gICAgJi5lbmRSYW5nZTpob3ZlcixcbiAgICAmLmVuZFJhbmdlLm5leHRNb250aERheSxcbiAgICAmLmVuZFJhbmdlLnByZXZNb250aERheSxcbiAgICAmLndlZWsuc2VsZWN0ZWQge1xuICAgICAgYmFja2dyb3VuZDogJGJhY2tncm91bmQgIWltcG9ydGFudDtcbiAgICAgIGJvcmRlci1jb2xvcjogJGJhY2tncm91bmQgIWltcG9ydGFudDtcbiAgICAgIGNvbG9yOiAkY29sb3IgIWltcG9ydGFudDtcbiAgICAgIGJveC1zaGFkb3c6IDAgMC4xMjVyZW0gMC4zNzVyZW0gMCByZ2JhKCRiYWNrZ3JvdW5kLCAwLjMpO1xuICAgIH1cbiAgfVxufVxuIiwiQGltcG9ydCAnLi4vLi4vc2Nzcy9fYm9vdHN0cmFwLWV4dGVuZGVkL2Z1bmN0aW9ucyc7XG5cbkBtaXhpbiBicy1kYXRlcmFuZ2VwaWNrZXItdGhlbWUoJGJhY2tncm91bmQsICRjb2xvcjogbnVsbCkge1xuICAkY29sb3I6IGlmKCRjb2xvciwgJGNvbG9yLCBjb2xvci1jb250cmFzdCgkYmFja2dyb3VuZCkpO1xuXG4gICRoaWdobGlnaHRlZC1iZzogcmdiYS10by1oZXgocmdiYSgkYmFja2dyb3VuZCwgMC4xNiksICRjYXJkLWJnKTtcbiAgJGhpZ2hsaWdodGVkLWNvbG9yOiAkYmFja2dyb3VuZDtcblxuICAuZGF0ZXJhbmdlcGlja2VyIHRkLmFjdGl2ZTpub3QoLm9mZikge1xuICAgIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBib3gtc2hhZG93OiAwIDAuMTI1cmVtIDAuMzc1cmVtIDAgcmdiYSgkYmFja2dyb3VuZCwgMC4zKTtcbiAgfVxuXG4gIC5kYXRlcmFuZ2VwaWNrZXIge1xuICAgIC5zdGFydC1kYXRlOm5vdCguZW5kLWRhdGUpOm5vdCgub2ZmKSxcbiAgICAuZW5kLWRhdGU6bm90KC5zdGFydC1kYXRlKTpub3QoLm9mZikge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZCAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5kYXRlcmFuZ2VwaWNrZXIgLmlucHV0LW1pbmkuYWN0aXZlIHtcbiAgICBib3JkZXItY29sb3I6ICRiYWNrZ3JvdW5kICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZGF0ZXJhbmdlcGlja2VyIHRkLmluLXJhbmdlOm5vdCguc3RhcnQtZGF0ZSk6bm90KC5lbmQtZGF0ZSk6bm90KC5vZmYpIHtcbiAgICBjb2xvcjogJGhpZ2hsaWdodGVkLWNvbG9yICFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGhpZ2hsaWdodGVkLWJnICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucmFuZ2VzIGxpLmFjdGl2ZSB7XG4gICAgY29sb3I6ICRoaWdobGlnaHRlZC1jb2xvciAhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRoaWdobGlnaHRlZC1iZyAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtaXhpbiBicy1kYXRlcmFuZ2VwaWNrZXItZGFyay10aGVtZSgkYmFja2dyb3VuZCwgJGNvbG9yOiBudWxsKSB7XG4gICRjb2xvcjogaWYoJGNvbG9yLCAkY29sb3IsIGNvbG9yLWNvbnRyYXN0KCRiYWNrZ3JvdW5kKSk7XG5cbiAgJGhpZ2hsaWdodGVkLWJnOiByZ2JhLXRvLWhleChyZ2JhKCRiYWNrZ3JvdW5kLCAwLjE2KSwgJGNhcmQtYmcpO1xuICAkaGlnaGxpZ2h0ZWQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuXG4gIC5kYXRlcmFuZ2VwaWNrZXIgdGQuYWN0aXZlOm5vdCgub2ZmKSB7XG4gICAgYmFja2dyb3VuZDogJGJhY2tncm91bmQgIWltcG9ydGFudDtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIGJveC1zaGFkb3c6IDAgMC4xMjVyZW0gMC4zNzVyZW0gMCByZ2JhKCRiYWNrZ3JvdW5kLCAwLjMpO1xuICB9XG5cbiAgLmRhdGVyYW5nZXBpY2tlciB7XG4gICAgLnN0YXJ0LWRhdGU6bm90KC5lbmQtZGF0ZSk6bm90KC5vZmYpLFxuICAgIC5lbmQtZGF0ZTpub3QoLnN0YXJ0LWRhdGUpOm5vdCgub2ZmKSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICBib3JkZXI6IDAgIWltcG9ydGFudDtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmRhdGVyYW5nZXBpY2tlciAuaW5wdXQtbWluaS5hY3RpdmUge1xuICAgIGJvcmRlci1jb2xvcjogJGJhY2tncm91bmQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5kYXRlcmFuZ2VwaWNrZXIgdGQuaW4tcmFuZ2U6bm90KC5zdGFydC1kYXRlKTpub3QoLmVuZC1kYXRlKTpub3QoLm9mZikge1xuICAgIGNvbG9yOiAkaGlnaGxpZ2h0ZWQtY29sb3IgIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaGlnaGxpZ2h0ZWQtYmcgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5yYW5nZXMgbGkuYWN0aXZlIHtcbiAgICBjb2xvcjogJGhpZ2hsaWdodGVkLWNvbG9yICFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGhpZ2hsaWdodGVkLWJnICFpbXBvcnRhbnQ7XG4gIH1cbn1cbiIsIkBpbXBvcnQgJy4uLy4uL3Njc3MvX2Jvb3RzdHJhcC1leHRlbmRlZC9fZnVuY3Rpb25zJztcblxuQG1peGluIHRpbWVwaWNrZXItdGhlbWUoJGJhY2tncm91bmQsICRjb2xvcjogbnVsbCkge1xuICAkY29sb3I6IGlmKCRjb2xvciwgJGNvbG9yLCBjb2xvci1jb250cmFzdCgkYmFja2dyb3VuZCkpO1xuXG4gIGxpLnVpLXRpbWVwaWNrZXItc2VsZWN0ZWQsXG4gIC51aS10aW1lcGlja2VyLWxpc3QgLnVpLXRpbWVwaWNrZXItc2VsZWN0ZWQ6aG92ZXIge1xuICAgIGNvbG9yOiAkY29sb3IgIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZCAhaW1wb3J0YW50O1xuICB9XG59XG4iLCJAbWl4aW4gcXVpbGwtZ2VuZXJhdGUtbGlzdHMoJGluZGVudCkge1xuICAkcXVpbGwtbGlzdC10eXBlczogKFxuICAgIDE6IGxvd2VyLWFscGhhLFxuICAgIDI6IGxvd2VyLXJvbWFuLFxuICAgIDM6IGRlY2ltYWwsXG4gICAgNDogbG93ZXItYWxwaGEsXG4gICAgNTogbG93ZXItcm9tYW4sXG4gICAgNjogZGVjaW1hbCxcbiAgICA3OiBsb3dlci1hbHBoYSxcbiAgICA4OiBsb3dlci1yb21hbixcbiAgICA5OiBkZWNpbWFsXG4gICk7XG5cbiAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCA5IHtcbiAgICBvbCBsaS5xbC1pbmRlbnQtI3skaX0ge1xuICAgICAgY291bnRlci1pbmNyZW1lbnQ6IGxpc3QtI3skaX07XG5cbiAgICAgIEBpZiAkaSA8IDkge1xuICAgICAgICAkbGlzdHM6ICcnO1xuXG4gICAgICAgIEBmb3IgJGwgZnJvbSAkaSArIDEgdGhyb3VnaCA5IHtcbiAgICAgICAgICAkbGlzdHM6ICcjeyRsaXN0c30gbGlzdC0jeyRsfSc7XG4gICAgICAgIH1cblxuICAgICAgICBjb3VudGVyLXJlc2V0OiAjeyRsaXN0c307XG4gICAgICB9XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IGNvdW50ZXIobGlzdC0jeyRpfSwgbWFwLWdldCgkcXVpbGwtbGlzdC10eXBlcywgJGkpKSAnLiAnO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5xbC1pbmRlbnQtI3skaX06bm90KC5xbC1kaXJlY3Rpb24tcnRsKSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6ICRpbmRlbnQgKiAkaTtcblxuICAgICAgW2Rpcj0ncnRsJ10gJiB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6ICRpbmRlbnQgKiAkaTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgfVxuICAgIH1cbiAgICBsaS5xbC1pbmRlbnQtI3skaX06bm90KC5xbC1kaXJlY3Rpb24tcnRsKSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6ICRpbmRlbnQgKiAoJGkgKyAxKTtcblxuICAgICAgW2Rpcj0ncnRsJ10gJiB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6ICRpbmRlbnQgKiAoJGkgKyAxKTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgfVxuICAgIH1cbiAgICAucWwtaW5kZW50LSN7JGl9LnFsLWRpcmVjdGlvbi1ydGwucWwtYWxpZ24tcmlnaHQge1xuICAgICAgcGFkZGluZy1yaWdodDogJGluZGVudCAqICRpO1xuXG4gICAgICBbZGlyPSdydGwnXSAmIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAkaW5kZW50ICogJGk7XG4gICAgICB9XG4gICAgfVxuICAgIGxpLnFsLWluZGVudC0jeyRpfS5xbC1kaXJlY3Rpb24tcnRsLnFsLWFsaWduLXJpZ2h0IHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6ICRpbmRlbnQgKiAoJGkgKyAxKTtcblxuICAgICAgW2Rpcj0ncnRsJ10gJiB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgIHBhZGRpbmctbGVmdDogJGluZGVudCAqICgkaSArIDEpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gcXVpbGwtdGhlbWUoJGNvbG9yKSB7XG4gIC5xbC1zbm93LnFsLXRvb2xiYXIsXG4gIC5xbC1zbm93IC5xbC10b29sYmFyIHtcbiAgICBidXR0b246aG92ZXIsXG4gICAgYnV0dG9uOmZvY3VzLFxuICAgIGJ1dHRvbi5xbC1hY3RpdmUsXG4gICAgLnFsLXBpY2tlci1sYWJlbDpob3ZlcixcbiAgICAucWwtcGlja2VyLWxhYmVsLnFsLWFjdGl2ZSxcbiAgICAucWwtcGlja2VyLWl0ZW06aG92ZXIsXG4gICAgLnFsLXBpY2tlci1pdGVtLnFsLXNlbGVjdGVkIHtcbiAgICAgIGNvbG9yOiAkY29sb3IgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBidXR0b246aG92ZXIgLnFsLWZpbGwsXG4gICAgYnV0dG9uOmZvY3VzIC5xbC1maWxsLFxuICAgIGJ1dHRvbi5xbC1hY3RpdmUgLnFsLWZpbGwsXG4gICAgLnFsLXBpY2tlci1sYWJlbDpob3ZlciAucWwtZmlsbCxcbiAgICAucWwtcGlja2VyLWxhYmVsLnFsLWFjdGl2ZSAucWwtZmlsbCxcbiAgICAucWwtcGlja2VyLWl0ZW06aG92ZXIgLnFsLWZpbGwsXG4gICAgLnFsLXBpY2tlci1pdGVtLnFsLXNlbGVjdGVkIC5xbC1maWxsLFxuICAgIGJ1dHRvbjpob3ZlciAucWwtc3Ryb2tlLnFsLWZpbGwsXG4gICAgYnV0dG9uOmZvY3VzIC5xbC1zdHJva2UucWwtZmlsbCxcbiAgICBidXR0b24ucWwtYWN0aXZlIC5xbC1zdHJva2UucWwtZmlsbCxcbiAgICAucWwtcGlja2VyLWxhYmVsOmhvdmVyIC5xbC1zdHJva2UucWwtZmlsbCxcbiAgICAucWwtcGlja2VyLWxhYmVsLnFsLWFjdGl2ZSAucWwtc3Ryb2tlLnFsLWZpbGwsXG4gICAgLnFsLXBpY2tlci1pdGVtOmhvdmVyIC5xbC1zdHJva2UucWwtZmlsbCxcbiAgICAucWwtcGlja2VyLWl0ZW0ucWwtc2VsZWN0ZWQgLnFsLXN0cm9rZS5xbC1maWxsIHtcbiAgICAgIGZpbGw6ICRjb2xvciAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIGJ1dHRvbjpob3ZlciAucWwtc3Ryb2tlLFxuICAgIGJ1dHRvbjpmb2N1cyAucWwtc3Ryb2tlLFxuICAgIGJ1dHRvbi5xbC1hY3RpdmUgLnFsLXN0cm9rZSxcbiAgICAucWwtcGlja2VyLWxhYmVsOmhvdmVyIC5xbC1zdHJva2UsXG4gICAgLnFsLXBpY2tlci1sYWJlbC5xbC1hY3RpdmUgLnFsLXN0cm9rZSxcbiAgICAucWwtcGlja2VyLWl0ZW06aG92ZXIgLnFsLXN0cm9rZSxcbiAgICAucWwtcGlja2VyLWl0ZW0ucWwtc2VsZWN0ZWQgLnFsLXN0cm9rZSxcbiAgICBidXR0b246aG92ZXIgLnFsLXN0cm9rZS1taXRlcixcbiAgICBidXR0b246Zm9jdXMgLnFsLXN0cm9rZS1taXRlcixcbiAgICBidXR0b24ucWwtYWN0aXZlIC5xbC1zdHJva2UtbWl0ZXIsXG4gICAgLnFsLXBpY2tlci1sYWJlbDpob3ZlciAucWwtc3Ryb2tlLW1pdGVyLFxuICAgIC5xbC1waWNrZXItbGFiZWwucWwtYWN0aXZlIC5xbC1zdHJva2UtbWl0ZXIsXG4gICAgLnFsLXBpY2tlci1pdGVtOmhvdmVyIC5xbC1zdHJva2UtbWl0ZXIsXG4gICAgLnFsLXBpY2tlci1pdGVtLnFsLXNlbGVjdGVkIC5xbC1zdHJva2UtbWl0ZXIge1xuICAgICAgc3Ryb2tlOiAkY29sb3IgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cbiIsIkBpbXBvcnQgJy4uLy4uL3Njc3MvX2Jvb3RzdHJhcC1leHRlbmRlZC9mdW5jdGlvbnMnO1xuXG5AbWl4aW4gdHlwZWFoZWFkLXRoZW1lKCRiYWNrZ3JvdW5kLCAkY29sb3I6IG51bGwpIHtcbiAgJGNvbG9yOiBpZigkY29sb3IsICRjb2xvciwgY29sb3ItY29udHJhc3QoJGJhY2tncm91bmQpKTtcblxuICAudHQtc3VnZ2VzdGlvbjphY3RpdmUsXG4gIC50dC1jdXJzb3Ige1xuICAgIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6ICRjb2xvciAhaW1wb3J0YW50O1xuICB9XG59XG4iLCJAbWl4aW4gZHJvcHpvbmUtdGhlbWUoJGJvcmRlcikge1xuICAuZHJvcHpvbmUuZHotZHJhZy1ob3ZlciB7XG4gICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyICFpbXBvcnRhbnQ7XG4gIH1cbn1cbiIsIkBtaXhpbiBzd2lwZXItdGhlbWUoJGJhY2tncm91bmQpIHtcbiAgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlLFxuICAuc3dpcGVyLXBhZ2luYXRpb24uc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIgLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLWZpbGwge1xuICAgIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kICFpbXBvcnRhbnQ7XG4gIH1cbn1cbiIsIkBtaXhpbiBzcGlua2l0LXRoZW1lKCRiYWNrZ3JvdW5kKSB7XG4gIC5zay1wcmltYXJ5LnNrLXBsYW5lLFxuICAuc2stcHJpbWFyeSAuc2stY2hhc2UtZG90OmJlZm9yZSxcbiAgLnNrLXByaW1hcnkgLnNrLWJvdW5jZS1kb3QsXG4gIC5zay1wcmltYXJ5IC5zay13YXZlLXJlY3QsXG4gIC5zay1wcmltYXJ5LnNrLXB1bHNlLFxuICAuc2stcHJpbWFyeSAuc2stc3dpbmctZG90LFxuICAuc2stcHJpbWFyeSAuc2stY2lyY2xlLWRvdDpiZWZvcmUsXG4gIC5zay1wcmltYXJ5IC5zay1jaXJjbGUtZmFkZS1kb3Q6YmVmb3JlLFxuICAuc2stcHJpbWFyeSAuc2stZ3JpZC1jdWJlLFxuICAuc2stcHJpbWFyeSAuc2stZm9sZC1jdWJlOmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gIH1cbn1cbiIsIkBpbXBvcnQgJy4uLy4uL3Njc3MvX2Jvb3RzdHJhcC1leHRlbmRlZC9mdW5jdGlvbnMnO1xuXG4vLyBMaWdodCBzdHlsZVxuQG1peGluIHBseXItdGhlbWUoJGJhY2tncm91bmQsICRjb2xvcjogbnVsbCkge1xuICAkY29sb3I6IGlmKCRjb2xvciwgJGNvbG9yLCBjb2xvci1jb250cmFzdCgkYmFja2dyb3VuZCkpO1xuXG4gIC5wbHlyIGlucHV0W3R5cGU9J3JhbmdlJ106Oi1tcy1maWxsLWxvd2VyIHtcbiAgICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnBseXIgaW5wdXRbdHlwZT0ncmFuZ2UnXTphY3RpdmUge1xuICAgICY6Oi13ZWJraXQtc2xpZGVyLXRodW1iIHtcbiAgICAgIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgICY6Oi1tb3otcmFuZ2UtdGh1bWIge1xuICAgICAgYmFja2dyb3VuZDogJGJhY2tncm91bmQgIWltcG9ydGFudDtcbiAgICB9XG4gICAgJjo6LW1zLXRodW1iIHtcbiAgICAgIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG4gIC5wbHlyLS12aWRlbyAucGx5cl9fY29udHJvbC5wbHlyX19jb250cm9sLS1vdmVybGFpZCxcbiAgLnBseXItLXZpZGVvIC5wbHlyX19jb250cm9scyBidXR0b24udGFiLWZvY3VzOmZvY3VzLFxuICAucGx5ci0tdmlkZW8gLnBseXJfX2NvbnRyb2xbYXJpYS1leHBhbmRlZD0ndHJ1ZSddLFxuICAucGx5ci0tdmlkZW8gLnBseXJfX2NvbnRyb2xzIGJ1dHRvbjpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogJGJhY2tncm91bmQgIWltcG9ydGFudDtcbiAgICBjb2xvcjogJGNvbG9yICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucGx5ci0tYXVkaW8gLnBseXJfX2NvbnRyb2xzIGJ1dHRvbi50YWItZm9jdXM6Zm9jdXMsXG4gIC5wbHlyLS1hdWRpbyAucGx5cl9fY29udHJvbFthcmlhLWV4cGFuZGVkPSd0cnVlJ10sXG4gIC5wbHlyLS1hdWRpbyAucGx5cl9fY29udHJvbHMgYnV0dG9uOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZCAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAkY29sb3IgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wbHlyX19wbGF5LWxhcmdlIHtcbiAgICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZCAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAkY29sb3IgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wbHlyX19wcm9ncmVzcy0tcGxheWVkLFxuICAucGx5cl9fdm9sdW1lLS1kaXNwbGF5IHtcbiAgICBjb2xvcjogJGJhY2tncm91bmQgIWltcG9ydGFudDtcbiAgfVxuICAucGx5ci0tZnVsbC11aSBpbnB1dFt0eXBlPSdyYW5nZSddIHtcbiAgICBjb2xvcjogJGJhY2tncm91bmQgIWltcG9ydGFudDtcbiAgfVxuICAucGx5cl9fbWVudV9fY29udGFpbmVyIC5wbHlyX19jb250cm9sW3JvbGU9J21lbnVpdGVtcmFkaW8nXVthcmlhLWNoZWNrZWQ9J3RydWUnXTo6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZCAhaW1wb3J0YW50O1xuICB9XG59XG4iLCJAbWl4aW4gZnVsbGNhbGVuZGFyLXRoZW1lKCRiYWNrZ3JvdW5kLCAkY29sb3IpIHtcbiAgLmZjIHtcbiAgICAvLyBGQyBldmVudFxuICAgIEBpbmNsdWRlIGJnLWxhYmVsLXZhcmlhbnQoJy5mYy1ldmVudC1wcmltYXJ5Om5vdCguZmMtbGlzdC1ldmVudCknLCAkYmFja2dyb3VuZCk7XG4gICAgLy8gRkMgbGlzdCBldmVudFxuICAgIC5mYy1ldmVudC1wcmltYXJ5LmZjLWxpc3QtZXZlbnQge1xuICAgICAgLmZjLWxpc3QtZXZlbnQtZG90IHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkYmFja2dyb3VuZCAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cblxuICAgIC5mYy1idXR0b24tcHJpbWFyeTpub3QoLmZjLXByZXYtYnV0dG9uKTpub3QoLmZjLW5leHQtYnV0dG9uKSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRiYWNrZ3JvdW5kLCAwLjE2KSAhaW1wb3J0YW50O1xuICAgICAgYm9yZGVyOiAwO1xuICAgICAgY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgICAgJi5mYy1idXR0b24tYWN0aXZlLFxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGJhY2tncm91bmQsIDAuMjQpICFpbXBvcnRhbnQ7XG4gICAgICAgIGNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkBpbXBvcnQgJy4uLy4uL3Njc3MvX2Jvb3RzdHJhcC1leHRlbmRlZC9mdW5jdGlvbnMnO1xuXG5AbWl4aW4gc3dlZXRhbGVydDItdGhlbWUoJGJhY2tncm91bmQsICRjb2xvcjogbnVsbCkge1xuICAkY29sb3I6IGlmKCRjb2xvciwgJGNvbG9yLCBjb2xvci1jb250cmFzdCgkYmFja2dyb3VuZCkpO1xuXG4gIC5zd2FsMi1wcm9ncmVzcy1zdGVwc1tjbGFzc10gLnN3YWwyLXByb2dyZXNzLXN0ZXAuc3dhbDItYWN0aXZlLXByb2dyZXNzLXN0ZXAsXG4gIC5zd2FsMi1wcm9ncmVzcy1zdGVwc1tjbGFzc10gLnN3YWwyLXByb2dyZXNzLXN0ZXAtbGluZSxcbiAgLnN3YWwyLXByb2dyZXNzLXN0ZXBzW2NsYXNzXSAuc3dhbDItYWN0aXZlLXByb2dyZXNzLXN0ZXAsXG4gIC5zd2FsMi1wcm9ncmVzcy1zdGVwc1tjbGFzc10gLnN3YWwyLXByb2dyZXNzLXN0ZXAge1xuICAgIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkY29sb3I7XG4gIH1cblxuICAuc3dhbDItcHJvZ3Jlc3Mtc3RlcHNbY2xhc3NdIC5zd2FsMi1wcm9ncmVzcy1zdGVwLnN3YWwyLWFjdGl2ZS1wcm9ncmVzcy1zdGVwIH4gLnN3YWwyLXByb2dyZXNzLXN0ZXAsXG4gIC5zd2FsMi1wcm9ncmVzcy1zdGVwc1tjbGFzc10gLnN3YWwyLXByb2dyZXNzLXN0ZXAuc3dhbDItYWN0aXZlLXByb2dyZXNzLXN0ZXAgfiAuc3dhbDItcHJvZ3Jlc3Mtc3RlcC1saW5lIHtcbiAgICBiYWNrZ3JvdW5kOiBtaXgoJHdoaXRlLCAkYmFja2dyb3VuZCwgODUlKTtcbiAgfVxufVxuXG5AbWl4aW4gc3dlZXRhbGVydDItZGFyay10aGVtZSgkYmFja2dyb3VuZCwgJGNvbG9yOiBudWxsKSB7XG4gICRjb2xvcjogaWYoJGNvbG9yLCAkY29sb3IsIGNvbG9yLWNvbnRyYXN0KCRiYWNrZ3JvdW5kKSk7XG5cbiAgLnN3YWwyLXByb2dyZXNzLXN0ZXBzW2NsYXNzXSAuc3dhbDItcHJvZ3Jlc3Mtc3RlcC5zd2FsMi1hY3RpdmUtcHJvZ3Jlc3Mtc3RlcCxcbiAgLnN3YWwyLXByb2dyZXNzLXN0ZXBzW2NsYXNzXSAuc3dhbDItcHJvZ3Jlc3Mtc3RlcC1saW5lLFxuICAuc3dhbDItcHJvZ3Jlc3Mtc3RlcHNbY2xhc3NdIC5zd2FsMi1hY3RpdmUtcHJvZ3Jlc3Mtc3RlcCxcbiAgLnN3YWwyLXByb2dyZXNzLXN0ZXBzW2NsYXNzXSAuc3dhbDItcHJvZ3Jlc3Mtc3RlcCB7XG4gICAgYmFja2dyb3VuZDogJGJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgfVxuXG4gIC5zd2FsMi1wcm9ncmVzcy1zdGVwc1tjbGFzc10gLnN3YWwyLXByb2dyZXNzLXN0ZXAuc3dhbDItYWN0aXZlLXByb2dyZXNzLXN0ZXAgfiAuc3dhbDItcHJvZ3Jlc3Mtc3RlcCxcbiAgLnN3YWwyLXByb2dyZXNzLXN0ZXBzW2NsYXNzXSAuc3dhbDItcHJvZ3Jlc3Mtc3RlcC5zd2FsMi1hY3RpdmUtcHJvZ3Jlc3Mtc3RlcCB+IC5zd2FsMi1wcm9ncmVzcy1zdGVwLWxpbmUge1xuICAgIGJhY2tncm91bmQ6IG1peCgkZGFyaywgJGJhY2tncm91bmQsIDU1JSk7XG4gIH1cbn1cbiIsIkBpbXBvcnQgJy4uLy4uL3Njc3MvX2N1c3RvbS12YXJpYWJsZXMvbGlicyc7XG5cbi8vIEJhY2tncm91bmQgJiBQcmltYXJ5IGNvbG9yIGZvciBwaWNrZXJcbkBtaXhpbiBjb2xvclBpY2tlci10aGVtZSgkYmFja2dyb3VuZCkge1xuICAucGNyLWFwcCB7XG4gICAgLnBjci10eXBlLmFjdGl2ZSxcbiAgICAucGNyLXNhdmUge1xuICAgICAgYmFja2dyb3VuZDogJGJhY2tncm91bmQgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIFN0ZXBwZXIgTWl4aW5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbkBtaXhpbiBicy1zdGVwcGVyLXRoZW1lKCRiYWNrZ3JvdW5kKSB7XG4gICRjb2xvcjogY29sb3ItY29udHJhc3QoJGJhY2tncm91bmQpO1xuICAuYnMtc3RlcHBlciB7XG4gICAgLnN0ZXAge1xuICAgICAgJi5hY3RpdmUge1xuICAgICAgICAuYnMtc3RlcHBlci1jaXJjbGUge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgICAgICAgIGNvbG9yOiAkY29sb3I7XG4gICAgICAgICAgYm94LXNoYWRvdzogMCAwLjEyNXJlbSAwLjM3NXJlbSAwIHJnYmEoJGJhY2tncm91bmQsIDAuMyk7XG4gICAgICAgIH1cbiAgICAgICAgLmJzLXN0ZXBwZXItaWNvbiBzdmcge1xuICAgICAgICAgIGZpbGw6ICRiYWNrZ3JvdW5kICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLmJzLXN0ZXBwZXItaWNvbiBpLFxuICAgICAgICAuYnMtc3RlcHBlci1sYWJlbCB7XG4gICAgICAgICAgY29sb3I6ICRiYWNrZ3JvdW5kICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICYuY3Jvc3NlZCB7XG4gICAgICAgIC5zdGVwLXRyaWdnZXIge1xuICAgICAgICAgIC5icy1zdGVwcGVyLWNpcmNsZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhLXRvLWhleChyZ2JhKCRiYWNrZ3JvdW5kLCAwLjE2KSwgJGNhcmQtYmcpICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBjb2xvcjogJGJhY2tncm91bmQgIWltcG9ydGFudDtcbiAgICAgICAgICB9XG4gICAgICAgICAgLmJzLXN0ZXBwZXItaWNvbiBzdmcge1xuICAgICAgICAgICAgZmlsbDogJGJhY2tncm91bmQgIWltcG9ydGFudDtcbiAgICAgICAgICB9XG4gICAgICAgICAgLmJzLXN0ZXBwZXItaWNvbiBpIHtcbiAgICAgICAgICAgIGNvbG9yOiAkYmFja2dyb3VuZCAhaW1wb3J0YW50O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAmLndpemFyZC1pY29ucyB7XG4gICAgICAuc3RlcC5jcm9zc2VkIHtcbiAgICAgICAgLmJzLXN0ZXBwZXItbGFiZWwge1xuICAgICAgICAgIGNvbG9yOiAkYmFja2dyb3VuZCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgICYgKyB7XG4gICAgICAgICAgLmxpbmUge1xuICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgIGNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==*/