/*!*************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??clonedRuleSet-4.use[1]!./assets/styles/app.css ***!
  \*************************************************************************************************/
body {
    background-color: lightgray;
}

/*!**************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??clonedRuleSet-13.use[1]!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/resolve-url-loader/index.js??clonedRuleSet-13.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-13.use[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./assets/vue/src/@core/components/ScrollToTop.vue?vue&type=style&index=0&id=7ee7a146&lang=scss ***!
  \**************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
.scroll-to-top {
  position: fixed !important;
  z-index: 999;
  inset-block-end: 5%;
  inset-inline-end: 25px;
}
/*!*******************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??clonedRuleSet-4.use[1]!./node_modules/vuetify/lib/components/VIcon/VIcon.css ***!
  \*******************************************************************************************************************************/
.v-icon {
  --v-icon-size-multiplier: 1;
  align-items: center;
  display: inline-flex;
  font-feature-settings: "liga";
  height: 1em;
  justify-content: center;
  letter-spacing: normal;
  line-height: 1;
  position: relative;
  text-indent: 0;
  text-align: center;
  user-select: none;
  vertical-align: middle;
  width: 1em;
  min-width: 1em;
}
.v-icon--clickable {
  cursor: pointer;
}
.v-icon--disabled {
  pointer-events: none;
  opacity: 0.38;
}
.v-icon--size-x-small {
  font-size: calc(var(--v-icon-size-multiplier) * 1em);
}
.v-icon--size-small {
  font-size: calc(var(--v-icon-size-multiplier) * 1.25em);
}
.v-icon--size-default {
  font-size: calc(var(--v-icon-size-multiplier) * 1.5em);
}
.v-icon--size-large {
  font-size: calc(var(--v-icon-size-multiplier) * 1.75em);
}
.v-icon--size-x-large {
  font-size: calc(var(--v-icon-size-multiplier) * 2em);
}

.v-icon__svg {
  fill: currentColor;
  width: 100%;
  height: 100%;
}

.v-icon--start {
  margin-inline-end: 8px;
}

.v-icon--end {
  margin-inline-start: 8px;
}
/*!**************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??clonedRuleSet-13.use[1]!./node_modules/resolve-url-loader/index.js??clonedRuleSet-13.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-13.use[3]!./assets/vue/src/@core/scss/template/index.scss ***!
  \**************************************************************************************************************************************************************************************************************************************************************/
@charset "UTF-8";
/*
  TODO: Add docs on when to use placeholder vs when to use SASS variable

  Placeholder
    - When we want to keep customization to our self between templates use it

  Variables
    - When we want to allow customization from both user and our side
    - You can also use variable for consistency (e.g. mx 1 rem should be applied to both vertical nav items and vertical nav header)
*/
/*
    ❗ Heads up
    ==================
    Here we assume we will always use shorthand property which will apply same padding on four side
    This is because this have been used as value of top property by `.popper-content`
*/
/* Custom shadow opacity */
/* Custom shadow params */
.v-dialog .v-card, .layout-horizontal-nav .nav-group .popper-content > div {
  /* width */
  /* Track */
  /* Handle */
}
.v-dialog .v-card::-webkit-scrollbar, .layout-horizontal-nav .nav-group .popper-content > div::-webkit-scrollbar {
  background: rgb(var(--v-theme-surface));
  block-size: 8px;
  border-end-end-radius: 14px;
  border-start-end-radius: 14px;
  inline-size: 4px;
}
.v-dialog .v-card::-webkit-scrollbar-track, .layout-horizontal-nav .nav-group .popper-content > div::-webkit-scrollbar-track {
  background: transparent;
}
.v-dialog .v-card::-webkit-scrollbar-thumb, .layout-horizontal-nav .nav-group .popper-content > div::-webkit-scrollbar-thumb {
  border-radius: 0.5rem;
  background: rgb(var(--v-theme-perfect-scrollbar-thumb));
}
.v-dialog .v-card::-webkit-scrollbar-corner, .layout-horizontal-nav .nav-group .popper-content > div::-webkit-scrollbar-corner {
  display: none;
}

/* 👉 Typography custom variables */
/* 👉 Shadow opacities */
/* 👉 Card transition properties */
.layout-horizontal-nav .nav-link a, .layout-horizontal-nav .nav-group .popper-triggerer .nav-group-label {
  padding-block: 0.6rem;
  padding-inline: 1rem;
}

.layout-horizontal-nav .nav-link:not(.sub-item) a, .layout-horizontal-nav .nav-group:not(.sub-item) > .popper-triggerer > .nav-group-label {
  border-radius: 0.4rem;
}

.layout-horizontal-nav .nav-link.disabled,
.layout-horizontal-nav .nav-group.disabled {
  opacity: var(--v-disabled-opacity);
  pointer-events: none;
}

.layout-horizontal-nav .nav-link.sub-item a.router-link-active {
  background: rgba(var(--v-theme-primary), 0.1);
  color: rgb(var(--v-theme-primary));
}

/*
  ℹ️ This style is required when you don't provide any transition to horizontal nav items via themeConfig `themeConfig.horizontalNav.transition`
  Also, you have to disable it if you are using transition
*/
/*
  ℹ️ This style is required when you don't provide any transition to horizontal nav items via themeConfig `themeConfig.horizontalNav.transition`
  Also, you have to disable it if you are using transition
*/
.layout-horizontal-nav .nav-item-icon {
  font-size: 1.5rem;
  margin-inline-end: 0.5rem;
}

.layout-horizontal-nav .nav-link.sub-item,
.layout-horizontal-nav .nav-group.sub-item {
  min-inline-size: 12rem;
}
.layout-horizontal-nav .nav-link.sub-item .nav-item-title,
.layout-horizontal-nav .nav-group.sub-item .nav-item-title {
  margin-inline-end: 1rem;
}

.layout-horizontal-nav .nav-group.sub-item .sub-item .nav-item-icon {
  font-size: 0.75rem;
  margin-inline: 0.375rem 0.75rem;
  /*
    ℹ️ `margin-inline` will be (normal icon font-size - small icon font-size) / 2
    (1.5rem - 0.9rem) / 2 => 0.6rem / 2 => 0.3rem
  */
}

.layout-horizontal-nav .nav-group .nav-item-title {
  margin-inline-end: 0.3rem;
  white-space: nowrap;
}

.layout-horizontal-nav .nav-group .popper-content {
  box-shadow: 0 2px 8px rgba(var(--v-shadow-key-umbra-color), var(--v-shadow-sm-opacity)), 0 0 transparent, 0 0 transparent;
  border-radius: 6px;
  padding-block: 0.3rem;
}
.layout-nav-type-vertical .layout-vertical-nav .nav-header .header-action {
  font-size: 1.25rem;
}

.layout-nav-type-vertical .layout-vertical-nav .nav-section-title, .layout-nav-type-vertical .layout-vertical-nav .nav-link > :first-child,
.layout-nav-type-vertical .layout-vertical-nav .nav-group > :first-child {
  margin-block: 0;
  margin-inline: 0.75rem;
  padding-block: 0;
  padding-inline: 0.75rem;
  white-space: nowrap;
}

.layout-nav-type-vertical .layout-vertical-nav .nav-link > :first-child,
.layout-nav-type-vertical .layout-vertical-nav .nav-group > :first-child {
  border-radius: 0.4rem;
  block-size: 2.75rem;
  /*
    ℹ️ We will use `margin-block-end` instead of `margin-block` to give more space for shadow to appear.
    With `margin-block`, due to small space (space gets divided between top & bottom) shadow cuts
  */
  margin-block-end: 0.375rem;
}

.layout-nav-type-vertical .layout-vertical-nav .nav-link .nav-item-icon,
.layout-nav-type-vertical .layout-vertical-nav .nav-group .nav-item-icon {
  flex-shrink: 0;
  font-size: 1.375rem;
  margin-inline-end: 0.5rem;
}

.layout-nav-type-vertical .layout-vertical-nav .nav-group .nav-group .nav-item-icon,
.layout-nav-type-vertical .layout-vertical-nav .nav-group .nav-link .nav-item-icon {
  /*
    ℹ️ `margin-inline` will be (normal icon font-size - small icon font-size) / 2
    (1.5rem - 0.9rem) / 2 => 0.6rem / 2 => 0.3rem
  */
  font-size: 0.75rem;
  margin-inline: 0.3125rem 0.8125rem;
}

.layout-nav-type-vertical .layout-vertical-nav .nav-group .nav-group .nav-link .nav-item-icon,
.layout-nav-type-vertical .layout-vertical-nav .nav-group .nav-group .nav-group .nav-item-icon {
  visibility: hidden;
}

.layout-nav-type-vertical .layout-vertical-nav .nav-group.active > :first-child::before, .layout-nav-type-vertical .layout-vertical-nav .nav-group.open > :first-child::before {
  opacity: calc(var(--v-selected-opacity) * var(--v-theme-overlay-multiplier));
}
.layout-nav-type-vertical .layout-vertical-nav .nav-group.active > :hover:first-child .nav-group.active > :first-child::before, .layout-nav-type-vertical .layout-vertical-nav .nav-group.open > :hover:first-child .nav-group.active > :first-child::before, .layout-nav-type-vertical .layout-vertical-nav .nav-group.active > :hover:first-child .nav-group.open > :first-child::before, .layout-nav-type-vertical .layout-vertical-nav .nav-group.open > :hover:first-child .nav-group.open > :first-child::before {
  opacity: calc(var(--v-selected-opacity) + var(--v-hover-opacity) * var(--v-theme-overlay-multiplier));
}
.layout-nav-type-vertical .layout-vertical-nav .nav-group.active > :focus-visible:first-child .nav-group.active > :first-child::before, .layout-nav-type-vertical .layout-vertical-nav .nav-group.open > :focus-visible:first-child .nav-group.active > :first-child::before, .layout-nav-type-vertical .layout-vertical-nav .nav-group.active > :focus-visible:first-child .nav-group.open > :first-child::before, .layout-nav-type-vertical .layout-vertical-nav .nav-group.open > :focus-visible:first-child .nav-group.open > :first-child::before {
  opacity: calc(var(--v-selected-opacity) + var(--v-focus-opacity) * var(--v-theme-overlay-multiplier));
}
@supports not selector(:focus-visible) {
  .layout-nav-type-vertical .layout-vertical-nav .nav-group.active > :focus:first-child::before, .layout-nav-type-vertical .layout-vertical-nav .nav-group.open > :focus:first-child::before {
    opacity: calc(var(--v-selected-opacity) + var(--v-focus-opacity) * var(--v-theme-overlay-multiplier));
  }
}

.layout-nav-type-vertical .layout-vertical-nav .nav-section-title {
  block-size: 1.5rem;
  color: rgba(var(--v-theme-on-surface), var(--v-disabled-opacity));
  font-size: 0.75rem;
  text-transform: uppercase;
}

.layout-nav-type-vertical .layout-vertical-nav .nav-item-badge {
  display: inline-block;
  border-radius: 1.5rem;
  font-size: 0.8em;
  font-weight: 500;
  line-height: 1;
  padding-block: 0.25em;
  padding-inline: 0.55em;
  text-align: center;
  vertical-align: baseline;
  white-space: nowrap;
}

.layout-horizontal-nav, .layout-nav-type-vertical .layout-vertical-nav {
  color: rgba(var(--v-theme-on-surface), var(--v-high-emphasis-opacity));
}
.layout-horizontal-nav .nav-item-title, .layout-nav-type-vertical .layout-vertical-nav .nav-item-title {
  letter-spacing: 0.15px;
}
.layout-horizontal-nav .nav-section-title, .layout-nav-type-vertical .layout-vertical-nav .nav-section-title {
  letter-spacing: 0.4px;
}

/*
    Active nav link styles for horizontal & vertical nav

    For horizontal nav it will be only applied to top level nav items
    For vertical nav it will be only applied to nav links (not nav groups)
*/
.layout-horizontal-nav .nav-link:not(.sub-item) a.router-link-active, .layout-horizontal-nav .nav-group:not(.sub-item).active > .popper-triggerer > .nav-group-label, .layout-nav-type-vertical .layout-vertical-nav .nav-link > .router-link-exact-active {
  background-color: rgb(var(--v-global-theme-primary));
  color: rgb(var(--v-theme-on-primary));
  box-shadow: 0 3px 8px rgba(var(--v-shadow-key-umbra-color), 0.14), 0 0 transparent, 0 0 transparent;
}

.layout-horizontal-nav .nav-link a, .layout-nav-type-vertical .layout-vertical-nav .nav-link a {
  color: inherit;
}

.layout-navbar {
  color: rgba(var(--v-theme-on-surface), var(--v-high-emphasis-opacity));
}

.layout-wrapper.layout-nav-type-vertical .navbar-blur.layout-navbar .navbar-content-container, .layout-wrapper.layout-nav-type-horizontal .header-blur.layout-navbar-and-nav-container {
  /* stylelint-disable property-no-vendor-prefix */
  -webkit-backdrop-filter: blur(6px);
  backdrop-filter: blur(6px);
  /* stylelint-enable */
  background-color: rgb(var(--v-theme-surface), 0.9);
}

.layout-wrapper.layout-nav-type-vertical .layout-navbar .navbar-content-container {
  box-shadow: 0 2px 8px rgba(var(--v-shadow-key-umbra-color), var(--v-shadow-sm-opacity)), 0 0 transparent, 0 0 transparent;
  padding-inline: 1.2rem;
}

.layout-wrapper.layout-nav-type-vertical .layout-navbar.navbar-blur {
  isolation: isolate;
}
.layout-wrapper.layout-nav-type-vertical .layout-navbar.navbar-blur::after {
  position: absolute;
  z-index: -1;
  /* stylelint-disable property-no-vendor-prefix */
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
  /* stylelint-enable */
  background: linear-gradient(180deg, rgba(var(--v-theme-background), 70%) 44%, rgba(var(--v-theme-background), 43%) 73%, rgba(var(--v-theme-background), 0%));
  background-repeat: repeat;
  block-size: calc(54px + 1rem + 0.5rem);
  content: "";
  inset-block-start: -1rem;
  inset-inline: 0 0;
  /* stylelint-disable property-no-vendor-prefix */
  -webkit-mask: linear-gradient(black, black 18%, transparent 100%);
  mask: linear-gradient(black, black 18%, transparent 100%);
  /* stylelint-enable */
}

.layout-wrapper.layout-nav-type-horizontal .layout-navbar-and-nav-container {
  box-shadow: 0 3px 8px rgba(var(--v-shadow-key-umbra-color), 0.14), 0 0 transparent, 0 0 transparent;
  z-index: 1001;
  background-color: rgb(var(--v-theme-surface));
}
.layout-wrapper.layout-nav-type-horizontal .layout-navbar {
  border-block-end: 1px solid rgba(var(--v-border-color), var(--v-border-opacity));
}

.layout-wrapper.layout-nav-type-horizontal .layout-horizontal-nav {
  padding-block: 0.5rem;
}

.layout-wrapper.layout-nav-type-horizontal .layout-horizontal-nav .nav-items {
  gap: 6px;
}

.layout-horizontal-nav, .layout-nav-type-vertical .layout-vertical-nav {
  color: rgba(var(--v-theme-on-surface), var(--v-medium-emphasis-opacity));
}
.layout-horizontal-nav .nav-item-title, .layout-nav-type-vertical .layout-vertical-nav .nav-item-title {
  letter-spacing: normal;
}

/*
    Active nav link styles for horizontal & vertical nav

    For horizontal nav it will be only applied to top level nav items
    For vertical nav it will be only applied to nav links (not nav groups)
*/
.layout-horizontal-nav .nav-link:not(.sub-item) a.router-link-active, .layout-horizontal-nav .nav-group:not(.sub-item).active > .popper-triggerer > .nav-group-label, .layout-nav-type-vertical .layout-vertical-nav .nav-link > .router-link-exact-active {
  background: linear-gradient(270deg, rgba(var(--v-global-theme-primary), 0.7) 0%, rgb(var(--v-global-theme-primary)) 100%) !important;
  box-shadow: 0 2px 6px rgba(var(--v-global-theme-primary), 0.3);
}
.layout-horizontal-nav .nav-link:not(.sub-item) a.router-link-active i, .layout-horizontal-nav .nav-group:not(.sub-item).active > .popper-triggerer > .nav-group-label i, .layout-nav-type-vertical .layout-vertical-nav .nav-link > .router-link-exact-active i {
  color: rgb(var(--v-theme-on-primary)) !important;
}
html[dir=rtl] .layout-horizontal-nav .nav-link:not(.sub-item) a.router-link-exact-active.router-link-active, .layout-horizontal-nav .nav-link:not(.sub-item) html[dir=rtl] a.router-link-exact-active.router-link-active, html[dir=rtl] .layout-horizontal-nav .nav-group:not(.sub-item).active > .popper-triggerer > .router-link-exact-active.nav-group-label, .layout-horizontal-nav html[dir=rtl] .nav-group:not(.sub-item).active > .popper-triggerer > .router-link-exact-active.nav-group-label, html[dir=rtl] .layout-nav-type-vertical .layout-vertical-nav .nav-link > .router-link-exact-active, .layout-nav-type-vertical .layout-vertical-nav html[dir=rtl] .nav-link > .router-link-exact-active {
  background: linear-gradient(-270deg, rgba(var(--v-global-theme-primary), 0.7) 0%, rgb(var(--v-global-theme-primary)) 100%) !important;
}

.layout-nav-type-vertical .layout-vertical-nav .nav-header .header-action {
  font-size: 0;
}

.layout-nav-type-vertical .layout-vertical-nav .nav-item-badge {
  z-index: 1;
  font-size: 0.8125rem;
  line-height: 1.25rem;
  margin-inline-end: 0.5rem;
  padding-block: 0.125rem;
  padding-inline: 0.625rem;
}

.layout-nav-type-vertical .layout-vertical-nav .nav-link > :first-child,
.layout-nav-type-vertical .layout-vertical-nav .nav-group > :first-child {
  border-radius: 0.375rem;
  block-size: 2.375rem;
  margin-block-end: 0.375rem;
}

.layout-nav-type-vertical .layout-vertical-nav .nav-group .nav-group .nav-link .nav-item-icon,
.layout-nav-type-vertical .layout-vertical-nav .nav-group .nav-group .nav-group .nav-item-icon {
  margin-inline: 15px 0.8125rem;
  visibility: visible;
}

.layout-nav-type-vertical .layout-vertical-nav .nav-section-title {
  block-size: 1.25rem;
  font-size: 0.8125rem;
  line-height: 1.125rem;
  text-transform: uppercase;
}

.layout-nav-type-vertical .layout-vertical-nav .nav-group .nav-group .nav-item-icon,
.layout-nav-type-vertical .layout-vertical-nav .nav-group .nav-link .nav-item-icon {
  color: rgba(var(--v-theme-on-surface), var(--v-medium-emphasis-opacity));
}

.layout-horizontal-nav .nav-item-icon {
  font-size: 1.375rem;
}

.layout-horizontal-nav .nav-link a, .layout-horizontal-nav .nav-group .popper-triggerer .nav-group-label {
  padding-block: 0.5rem;
  padding-inline: 1rem;
}

.layout-horizontal-nav .nav-group .popper-content .nav-link.sub-item a,
.layout-horizontal-nav .nav-group .popper-content .nav-group-label,
.layout-horizontal-nav .nav-link .popper-content .nav-link.sub-item a,
.layout-horizontal-nav .nav-link .popper-content .nav-group-label {
  border-radius: 0.375rem;
  margin-block: 0.125rem;
  margin-inline: 0.5rem;
}

.layout-horizontal-nav .nav-link.sub-item a.router-link-active {
  background: rgba(var(--v-theme-primary), 0.08);
}
.layout-horizontal-nav .nav-link.sub-item a.router-link-active::before {
  content: none;
}

.layout-horizontal-nav .nav-group .popper-content {
  box-shadow: 0 4px 18px rgba(var(--v-shadow-key-umbra-color), var(--v-shadow-lg-opacity)), 0 0 transparent, 0 0 transparent;
}

.layout-horizontal-nav .nav-link:not(.sub-item) a, .layout-horizontal-nav .nav-group:not(.sub-item) > .popper-triggerer > .nav-group-label {
  border-radius: 0.375rem;
}

.layout-horizontal-nav .nav-group .nav-item-title {
  line-height: 1.375rem;
}

.layout-horizontal-nav .nav-group.sub-item .sub-item .nav-item-icon {
  margin-inline: 0 0.5rem;
}

.layout-wrapper.layout-nav-type-vertical .layout-navbar .navbar-content-container {
  padding-inline: 1.5rem;
}

.layout-wrapper.layout-nav-type-horizontal .layout-navbar-and-nav-container {
  box-shadow: 0 1px 4px 0 rgba(var(--v-shadow-key-umbra-color), 0.1);
}
.layout-wrapper.layout-nav-type-horizontal .header-blur.layout-navbar-and-nav-container {
  background-color: rgb(var(--v-theme-surface), 0.96);
}

.layout-wrapper.layout-nav-type-vertical .navbar-blur.layout-navbar .navbar-content-container {
  background-color: rgb(var(--v-theme-surface), 0.88);
}

.layout-nav-type-vertical .layout-vertical-nav {
  background-color: rgb(var(--v-theme-surface));
}
.layout-vertical-nav-collapsed.layout-nav-type-vertical .layout-vertical-nav.hovered {
  box-shadow: 0 3px 12px rgba(var(--v-shadow-key-umbra-color), var(--v-shadow-md-opacity)), 0 0 transparent, 0 0 transparent;
}

.layout-nav-type-vertical .layout-vertical-nav .nav-header {
  overflow: hidden;
  padding: 1.25rem 0.5rem;
  margin-inline: 0.75rem;
  min-block-size: 54px;
}
.layout-nav-type-vertical .layout-vertical-nav .nav-header .app-logo {
  flex-shrink: 0;
  transition: transform 0.25s ease-in-out;
}
.layout-vertical-nav-collapsed.layout-nav-type-vertical .layout-vertical-nav:not(.hovered) .nav-header .app-logo {
  transform: translateX(-1px);
}
[dir=rtl] .layout-vertical-nav-collapsed.layout-nav-type-vertical .layout-vertical-nav:not(.hovered) .nav-header .app-logo {
  transform: translateX(1px);
}

.layout-nav-type-vertical .layout-vertical-nav .vertical-nav-items-shadow {
  position: absolute;
  z-index: 1;
  background: linear-gradient(rgb(var(--v-theme-surface)) 5%, rgba(var(--v-theme-surface), 75%) 45%, rgba(var(--v-theme-surface), 20%) 80%, transparent);
  block-size: 55px;
  inline-size: 100%;
  inset-block-start: calc(54px - 2px);
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.15s ease-in-out;
  will-change: opacity;
}
[dir=rtl] .layout-nav-type-vertical .layout-vertical-nav .vertical-nav-items-shadow {
  transform: translateX(8px);
}
.layout-nav-type-vertical .layout-vertical-nav.scrolled .vertical-nav-items-shadow {
  opacity: 1;
}
.layout-nav-type-vertical .layout-vertical-nav .ps__rail-y {
  z-index: 1;
}
.layout-nav-type-vertical .layout-vertical-nav .nav-section-title {
  margin-block-end: 0.375rem;
}
.layout-nav-type-vertical .layout-vertical-nav .nav-section-title:not(:first-child) {
  margin-block-start: 1rem;
}
.layout-nav-type-vertical .layout-vertical-nav .nav-section-title .placeholder-icon {
  margin-inline: auto;
}
.layout-nav-type-vertical .layout-vertical-nav .nav-link,
.layout-nav-type-vertical .layout-vertical-nav .nav-group {
  overflow: hidden;
}
.layout-nav-type-vertical .layout-vertical-nav .nav-link.disabled,
.layout-nav-type-vertical .layout-vertical-nav .nav-group.disabled {
  opacity: var(--v-disabled-opacity);
  pointer-events: none;
}
.layout-nav-type-vertical .layout-vertical-nav .nav-link a,
.layout-nav-type-vertical .layout-vertical-nav .nav-group a {
  outline: none;
}
.layout-nav-type-vertical .layout-vertical-nav .nav-link > a {
  position: relative;
}
.layout-nav-type-vertical .layout-vertical-nav .nav-link > a::before {
  position: absolute;
  border-radius: inherit;
  background: currentcolor;
  block-size: 100%;
  content: "";
  inline-size: 100%;
  inset: 0;
  opacity: 0;
  pointer-events: none;
}
.layout-nav-type-vertical .layout-vertical-nav .nav-link > a:not(.router-link-active, .router-link-exact-active):hover::before {
  opacity: calc(var(--v-hover-opacity) * var(--v-theme-overlay-multiplier));
}
.layout-nav-type-vertical .layout-vertical-nav .nav-link > a:not(.router-link-active, .router-link-exact-active):focus-visible::before {
  opacity: calc(var(--v-focus-opacity) * var(--v-theme-overlay-multiplier));
}
@supports not selector(:focus-visible) {
  .layout-nav-type-vertical .layout-vertical-nav .nav-link > a:not(.router-link-active, .router-link-exact-active):focus::before {
    opacity: calc(var(--v-focus-opacity) * var(--v-theme-overlay-multiplier));
  }
}
.layout-nav-type-vertical .layout-vertical-nav .nav-group .nav-group-arrow {
  flex-shrink: 0;
  transform-origin: center;
  transition: transform 0.15s ease-in-out;
  will-change: transform;
}
.layout-nav-type-vertical .layout-vertical-nav .nav-group.open > .nav-group-label .nav-group-arrow {
  transform: rotateZ(90deg);
}
.layout-nav-type-vertical .layout-vertical-nav .nav-group > :first-child {
  position: relative;
}
.layout-nav-type-vertical .layout-vertical-nav .nav-group > :first-child::before {
  position: absolute;
  border-radius: inherit;
  background: currentcolor;
  block-size: 100%;
  content: "";
  inline-size: 100%;
  inset: 0;
  opacity: 0;
  pointer-events: none;
}
.layout-nav-type-vertical .layout-vertical-nav .nav-group:not(.active, .open) > :first-child:hover::before {
  opacity: calc(var(--v-hover-opacity) * var(--v-theme-overlay-multiplier));
}
.layout-nav-type-vertical .layout-vertical-nav .nav-group:not(.active, .open) > :first-child:focus-visible::before {
  opacity: calc(var(--v-focus-opacity) * var(--v-theme-overlay-multiplier));
}
@supports not selector(:focus-visible) {
  .layout-nav-type-vertical .layout-vertical-nav .nav-group:not(.active, .open) > :first-child:focus::before {
    opacity: calc(var(--v-focus-opacity) * var(--v-theme-overlay-multiplier));
  }
}
.vertical-nav-section-title-enter-active,
.vertical-nav-section-title-leave-active {
  transition: opacity 0.1s ease-in-out, transform 0.1s ease-in-out;
}

.vertical-nav-section-title-enter-from,
.vertical-nav-section-title-leave-to {
  opacity: 0;
  transform: translateX(15px);
}
[dir=rtl] .vertical-nav-section-title-enter-from,
[dir=rtl] .vertical-nav-section-title-leave-to {
  transform: translateX(-15px);
}

.transition-slide-x-enter-active,
.transition-slide-x-leave-active {
  transition: opacity 0.1s ease-in-out, transform 0.12s ease-in-out;
}

.transition-slide-x-enter-from,
.transition-slide-x-leave-to {
  opacity: 0;
  transform: translateX(-15px);
}
[dir=rtl] .transition-slide-x-enter-from,
[dir=rtl] .transition-slide-x-leave-to {
  transform: translateX(15px);
}

.vertical-nav-app-title-enter-active,
.vertical-nav-app-title-leave-active {
  transition: opacity 0.1s ease-in-out, transform 0.12s ease-in-out;
}

.vertical-nav-app-title-enter-from,
.vertical-nav-app-title-leave-to {
  opacity: 0;
  transform: translateX(-15px);
}
[dir=rtl] .vertical-nav-app-title-enter-from,
[dir=rtl] .vertical-nav-app-title-leave-to {
  transform: translateX(15px);
}

.layout-horizontal-nav .nav-link a {
  position: relative;
}
.layout-horizontal-nav .nav-link a::before {
  position: absolute;
  border-radius: inherit;
  background: currentcolor;
  block-size: 100%;
  content: "";
  inline-size: 100%;
  inset: 0;
  opacity: 0;
  pointer-events: none;
}
.layout-horizontal-nav .nav-link a:hover::before {
  opacity: calc(var(--v-hover-opacity) * var(--v-theme-overlay-multiplier));
}
.layout-horizontal-nav .nav-link a:focus-visible::before {
  opacity: calc(var(--v-focus-opacity) * var(--v-theme-overlay-multiplier));
}
@supports not selector(:focus-visible) {
  .layout-horizontal-nav .nav-link a:focus::before {
    opacity: calc(var(--v-focus-opacity) * var(--v-theme-overlay-multiplier));
  }
}
.layout-horizontal-nav .nav-group > .popper-triggerer > .nav-group-label {
  position: relative;
}
.layout-horizontal-nav .nav-group > .popper-triggerer > .nav-group-label::before {
  position: absolute;
  border-radius: inherit;
  background: currentcolor;
  block-size: 100%;
  content: "";
  inline-size: 100%;
  inset: 0;
  opacity: 0;
  pointer-events: none;
}
.layout-horizontal-nav .nav-group > .popper-triggerer > .nav-group-label:hover::before {
  opacity: calc(var(--v-hover-opacity) * var(--v-theme-overlay-multiplier));
}
.layout-horizontal-nav .nav-group > .popper-triggerer > .nav-group-label:focus-visible::before {
  opacity: calc(var(--v-focus-opacity) * var(--v-theme-overlay-multiplier));
}
@supports not selector(:focus-visible) {
  .layout-horizontal-nav .nav-group > .popper-triggerer > .nav-group-label:focus::before {
    opacity: calc(var(--v-focus-opacity) * var(--v-theme-overlay-multiplier));
  }
}
.layout-horizontal-nav .nav-group .popper-content {
  background-color: rgb(var(--v-theme-surface));
}
.layout-horizontal-nav .nav-group .popper-content > div {
  max-block-size: calc(100dvh - 120px - 4rem);
}
.layout-horizontal-nav .nav-group:not(.sub-item) > .popper-triggerer {
  position: relative;
  /*
    ℹ️ The Bridge
    This after pseudo will work as bridge when we have space between popper triggerer and popper content
    Initially it will have pointer events none for normal behavior and once the content is shown it will
      work as bridge by setting pointer events to `auto`
  */
}
.layout-horizontal-nav .nav-group:not(.sub-item) > .popper-triggerer::after {
  position: absolute;
  block-size: 0.375rem;
  content: "";
  inline-size: 100%;
  inset-block-start: 100%;
  inset-inline-start: 0;
  pointer-events: none;
}
.layout-horizontal-nav .nav-group:not(.sub-item).show-content > .popper-triggerer::after {
  /*
    ℹ️ We have added `z-index: 2` because when there is horizontal nav item below the popper trigger (group)
      without this style nav item below popper trigger (group) gets focus hence closes the popper content
  */
  z-index: 2;
  pointer-events: auto;
}
.layout-horizontal-nav .nav-group:not(.sub-item) > .popper-content {
  margin-block-start: 0.375rem !important;
}
.layout-horizontal-nav .nav-group.sub-item.active > .popper-triggerer > .nav-group-label::before {
  opacity: calc(var(--v-selected-opacity) * var(--v-theme-overlay-multiplier));
}
.layout-horizontal-nav .nav-group.sub-item.active:hover > .popper-triggerer > .nav-group-label::before {
  opacity: calc(var(--v-selected-opacity) + var(--v-hover-opacity) * var(--v-theme-overlay-multiplier));
}
.layout-horizontal-nav .nav-group.sub-item.active:focus-visible > .popper-triggerer > .nav-group-label::before {
  opacity: calc(var(--v-selected-opacity) + var(--v-focus-opacity) * var(--v-theme-overlay-multiplier));
}
@supports not selector(:focus-visible) {
  .layout-horizontal-nav .nav-group.sub-item.active:focus > .popper-triggerer > .nav-group-label::before {
    opacity: calc(var(--v-selected-opacity) + var(--v-focus-opacity) * var(--v-theme-overlay-multiplier));
  }
}
.layout-horizontal-nav .nav-group .nav-group-arrow {
  font-size: 1.25rem;
  /*
    ℹ️ ml-auto won't matter in top level group (because we haven't specified fixed width for top level groups)
    but we wrote generally because we don't want to become so specific
  */
  margin-inline-start: auto;
}
.layout-horizontal-nav .nav-group.popper-inline-end .nav-group-arrow {
  transform: rotateZ(270deg);
}
[dir=rtl] .layout-horizontal-nav .nav-group.popper-inline-end .nav-group-arrow {
  transform: rotateZ(90deg);
}
.layout-horizontal-nav .nav-group.show-content:not(.active) > .popper-triggerer > .nav-group-label::before {
  opacity: calc(var(--v-selected-opacity) * var(--v-theme-overlay-multiplier));
}
.layout-horizontal-nav .nav-group.show-content:not(.active):hover > .popper-triggerer > .nav-group-label::before {
  opacity: calc(var(--v-selected-opacity) + var(--v-hover-opacity) * var(--v-theme-overlay-multiplier));
}
.layout-horizontal-nav .nav-group.show-content:not(.active):focus-visible > .popper-triggerer > .nav-group-label::before {
  opacity: calc(var(--v-selected-opacity) + var(--v-focus-opacity) * var(--v-theme-overlay-multiplier));
}
@supports not selector(:focus-visible) {
  .layout-horizontal-nav .nav-group.show-content:not(.active):focus > .popper-triggerer > .nav-group-label::before {
    opacity: calc(var(--v-selected-opacity) + var(--v-focus-opacity) * var(--v-theme-overlay-multiplier));
  }
}

.layout-vertical-nav ol,
.layout-vertical-nav ul,
.layout-horizontal-nav ol,
.layout-horizontal-nav ul {
  list-style: none;
}

.scrollable-content.v-navigation-drawer .v-navigation-drawer__content {
  display: flex;
  overflow: hidden;
  flex-direction: column;
}

code {
  border-radius: 3px;
  color: rgb(var(--v-code-color));
  font-size: 90%;
  font-weight: 400;
  padding-block: 0.2em;
  padding-inline: 0.4em;
}

.layout-wrapper.layout-nav-type-vertical:not(.layout-navbar-sticky) .layout-navbar .navbar-content-container {
  margin-block-start: 1rem;
}
.layout-wrapper.layout-nav-type-vertical .layout-navbar .navbar-content-container {
  border-radius: 6px;
  background-color: rgb(var(--v-theme-surface));
}
.layout-wrapper.layout-nav-type-vertical .layout-footer .footer-content-container {
  border-radius: 6px 6px 0 0;
}
.layout-footer-sticky.layout-wrapper.layout-nav-type-vertical .layout-footer .footer-content-container {
  background-color: rgb(var(--v-theme-surface));
  padding-block: 0;
  padding-inline: 1.2rem;
  box-shadow: 0 3px 8px rgba(var(--v-shadow-key-umbra-color), 0.14), 0 0 transparent, 0 0 transparent;
}

.layout-wrapper.layout-nav-type-horizontal .navbar-content-container {
  display: flex;
  align-items: center;
  block-size: 100%;
}
.layout-footer-sticky.layout-wrapper.layout-nav-type-horizontal .layout-footer {
  background-color: rgb(var(--v-theme-surface));
  box-shadow: 0 3px 8px rgba(var(--v-shadow-key-umbra-color), 0.14), 0 0 transparent, 0 0 transparent;
}

.layout-wrapper.layout-nav-type-horizontal .layout-page-content {
  padding-block: 1.5rem;
}

/* ℹ️ This styles extends the existing layout package's styles for handling cases that aren't related to layouts package */
/*
  ℹ️ When we use v-layout as immediate first child of `.page-content-container`, it adds display:flex and page doesn't get contained height
*/
.layout-wrapper.layout-nav-type-vertical.layout-content-height-fixed .page-content-container > .v-layout:first-child {
  overflow: hidden;
  min-block-size: 100%;
}
.layout-wrapper.layout-nav-type-vertical.layout-content-height-fixed .page-content-container > .v-layout:first-child > .v-main .v-main__wrap > :first-child {
  block-size: 100%;
  overflow-y: auto;
}

.layout-wrapper.layout-nav-type-horizontal.layout-content-height-fixed > .layout-page-content {
  display: flex;
}

body .layout-wrapper.layout-nav-type-vertical.layout-navbar-sticky {
  /*
    ℹ️ If it's floating navbar
    Add `vertical-nav-floating-navbar-top` as margin top to .layout-page-content
  */
}
body .layout-wrapper.layout-nav-type-vertical.layout-navbar-sticky .layout-navbar {
  inset-block-start: 1rem;
}
body .layout-wrapper.layout-nav-type-vertical.layout-navbar-sticky .layout-page-content {
  margin-block-start: 1rem;
}

.text-xs {
  font-size: 0.6875rem;
  line-height: 0.9375rem;
}

.text-sm {
  font-size: 0.8125rem;
  line-height: 1.25rem;
}

.text-base {
  font-size: 0.9375rem;
  line-height: 1.375rem;
}

.text-lg {
  font-size: 1.125rem;
  line-height: 1.75rem;
}

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

.text-2xl {
  font-size: 1.75rem;
  line-height: 2.625rem;
}

.text-3xl {
  font-size: 2rem;
  line-height: 2.75rem;
}

.text-4xl {
  font-size: 2.375rem;
  line-height: 3.25rem;
}

.text-5xl {
  font-size: 3rem;
  line-height: 1;
}

.text-6xl {
  font-size: 3.5rem;
  line-height: 1;
}

.text-7xl {
  font-size: 4rem;
  line-height: 1;
}

.text-8xl {
  font-size: 4.5rem;
  line-height: 1;
}

.text-9xl {
  font-size: 5.25rem;
  line-height: 1;
}

.truncate {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.gap-0 {
  gap: 0;
}

.gap-x-0 {
  column-gap: 0;
}

.gap-y-0 {
  row-gap: 0;
}

.gap-1 {
  gap: 0.25rem;
}

.gap-x-1 {
  column-gap: 0.25rem;
}

.gap-y-1 {
  row-gap: 0.25rem;
}

.gap-2 {
  gap: 0.5rem;
}

.gap-x-2 {
  column-gap: 0.5rem;
}

.gap-y-2 {
  row-gap: 0.5rem;
}

.gap-3 {
  gap: 0.75rem;
}

.gap-x-3 {
  column-gap: 0.75rem;
}

.gap-y-3 {
  row-gap: 0.75rem;
}

.gap-4 {
  gap: 1rem;
}

.gap-x-4 {
  column-gap: 1rem;
}

.gap-y-4 {
  row-gap: 1rem;
}

.gap-5 {
  gap: 1.25rem;
}

.gap-x-5 {
  column-gap: 1.25rem;
}

.gap-y-5 {
  row-gap: 1.25rem;
}

.gap-6 {
  gap: 1.5rem;
}

.gap-x-6 {
  column-gap: 1.5rem;
}

.gap-y-6 {
  row-gap: 1.5rem;
}

.gap-7 {
  gap: 1.75rem;
}

.gap-x-7 {
  column-gap: 1.75rem;
}

.gap-y-7 {
  row-gap: 1.75rem;
}

.gap-8 {
  gap: 2rem;
}

.gap-x-8 {
  column-gap: 2rem;
}

.gap-y-8 {
  row-gap: 2rem;
}

.gap-9 {
  gap: 2.25rem;
}

.gap-x-9 {
  column-gap: 2.25rem;
}

.gap-y-9 {
  row-gap: 2.25rem;
}

.gap-10 {
  gap: 2.5rem;
}

.gap-x-10 {
  column-gap: 2.5rem;
}

.gap-y-10 {
  row-gap: 2.5rem;
}

.gap-11 {
  gap: 2.75rem;
}

.gap-x-11 {
  column-gap: 2.75rem;
}

.gap-y-11 {
  row-gap: 2.75rem;
}

.gap-12 {
  gap: 3rem;
}

.gap-x-12 {
  column-gap: 3rem;
}

.gap-y-12 {
  row-gap: 3rem;
}

.gap-14 {
  gap: 3.5rem;
}

.gap-x-14 {
  column-gap: 3.5rem;
}

.gap-y-14 {
  row-gap: 3.5rem;
}

.gap-16 {
  gap: 4rem;
}

.gap-x-16 {
  column-gap: 4rem;
}

.gap-y-16 {
  row-gap: 4rem;
}

.gap-20 {
  gap: 5rem;
}

.gap-x-20 {
  column-gap: 5rem;
}

.gap-y-20 {
  row-gap: 5rem;
}

.gap-24 {
  gap: 6rem;
}

.gap-x-24 {
  column-gap: 6rem;
}

.gap-y-24 {
  row-gap: 6rem;
}

.gap-28 {
  gap: 7rem;
}

.gap-x-28 {
  column-gap: 7rem;
}

.gap-y-28 {
  row-gap: 7rem;
}

.gap-32 {
  gap: 8rem;
}

.gap-x-32 {
  column-gap: 8rem;
}

.gap-y-32 {
  row-gap: 8rem;
}

.gap-36 {
  gap: 9rem;
}

.gap-x-36 {
  column-gap: 9rem;
}

.gap-y-36 {
  row-gap: 9rem;
}

.gap-40 {
  gap: 10rem;
}

.gap-x-40 {
  column-gap: 10rem;
}

.gap-y-40 {
  row-gap: 10rem;
}

.gap-44 {
  gap: 11rem;
}

.gap-x-44 {
  column-gap: 11rem;
}

.gap-y-44 {
  row-gap: 11rem;
}

.gap-48 {
  gap: 12rem;
}

.gap-x-48 {
  column-gap: 12rem;
}

.gap-y-48 {
  row-gap: 12rem;
}

.gap-52 {
  gap: 13rem;
}

.gap-x-52 {
  column-gap: 13rem;
}

.gap-y-52 {
  row-gap: 13rem;
}

.gap-56 {
  gap: 14rem;
}

.gap-x-56 {
  column-gap: 14rem;
}

.gap-y-56 {
  row-gap: 14rem;
}

.gap-60 {
  gap: 15rem;
}

.gap-x-60 {
  column-gap: 15rem;
}

.gap-y-60 {
  row-gap: 15rem;
}

.gap-64 {
  gap: 16rem;
}

.gap-x-64 {
  column-gap: 16rem;
}

.gap-y-64 {
  row-gap: 16rem;
}

.gap-72 {
  gap: 18rem;
}

.gap-x-72 {
  column-gap: 18rem;
}

.gap-y-72 {
  row-gap: 18rem;
}

.gap-80 {
  gap: 20rem;
}

.gap-x-80 {
  column-gap: 20rem;
}

.gap-y-80 {
  row-gap: 20rem;
}

.gap-96 {
  gap: 24rem;
}

.gap-x-96 {
  column-gap: 24rem;
}

.gap-y-96 {
  row-gap: 24rem;
}

.list-none {
  list-style-type: none;
}

.skin--bordered .v-card:not(.v-card--flat) {
  box-shadow: none !important;
  border: 1px solid rgba(var(--v-border-color), var(--v-border-opacity));
}
.skin--bordered .v-menu .v-overlay__content > .v-card, .skin--bordered .v-menu .v-overlay__content > .v-sheet, .skin--bordered .v-menu .v-overlay__content > .v-list {
  box-shadow: none !important;
  border: 1px solid rgba(var(--v-border-color), var(--v-border-opacity));
}
.skin--bordered .popper-content {
  box-shadow: none !important;
  border: 1px solid rgba(var(--v-border-color), var(--v-border-opacity));
}
.skin--bordered .layout-navbar-and-nav-container {
  box-shadow: none !important;
  border-bottom: 1px solid rgba(var(--v-border-color), var(--v-border-opacity));
}
.skin--bordered .layout-nav-type-vertical.window-scrolled.layout-navbar-sticky .layout-navbar .navbar-content-container {
  box-shadow: none !important;
  border: 1px solid rgba(var(--v-border-color), var(--v-border-opacity));
}
.skin--bordered .layout-nav-type-vertical.window-scrolled .layout-navbar .navbar-content-container {
  border-block-start: none !important;
}
.skin--bordered .layout-nav-type-vertical.layout-footer-sticky .layout-footer .footer-content-container {
  box-shadow: none !important;
  border: 1px solid rgba(var(--v-border-color), var(--v-border-opacity));
}
.skin--bordered .layout-nav-type-vertical.layout-footer-sticky .layout-footer .footer-content-container {
  border-block-end: none;
}
.skin--bordered .layout-nav-type-horizontal.layout-footer-sticky .layout-footer {
  box-shadow: none !important;
  border: 1px solid rgba(var(--v-border-color), var(--v-border-opacity));
}
.skin--bordered .layout-nav-type-horizontal.layout-footer-sticky .layout-footer {
  border-block-end: none;
}
.skin--bordered .layout-vertical-nav {
  border-inline-end: thin solid rgba(var(--v-border-color), var(--v-border-opacity));
}
.skin--bordered .v-expansion-panels:not(.customized-panels) .v-expansion-panel__shadow {
  box-shadow: none !important;
}
.skin--bordered .v-expansion-panels:not(.customized-panels) .v-expansion-panel {
  border: 1px solid rgba(var(--v-border-color), var(--v-border-opacity));
}
.skin--bordered .v-expansion-panels:not(.customized-panels) .v-expansion-panel:not(:last-child) {
  margin-block-end: -1px;
}
.skin--bordered .v-expansion-panels:not(.customized-panels) .v-expansion-panel::after {
  content: none;
}

.v-avatar-group {
  display: flex;
  align-items: center;
}
.v-avatar-group > * {
  transition: transform 0.25s ease, box-shadow 0.15s ease;
}
.v-avatar-group > *:not(:first-child) {
  margin-inline-start: -0.8rem;
}
.v-avatar-group > *:hover {
  z-index: 2;
  transform: translateY(-5px) scale(1.05);
  box-shadow: 0 3px 8px rgba(var(--v-shadow-key-umbra-color), 0.14), 0 0 transparent, 0 0 transparent;
}
.v-avatar-group > .v-avatar {
  border: 2px solid rgb(var(--v-theme-surface));
  transition: transform 0.15s ease;
}

.v-alert--variant-outlined:not([class*=text-]),
.v-avatar--variant-outlined:not([class*=text-]),
.v-btn.v-btn--variant-outlined:not([class*=text-]),
.v-card--variant-outlined:not([class*=text-]),
.v-chip--variant-outlined:not([class*=text-]),
.v-list-item--variant-outlined:not([class*=text-]) {
  border-color: rgba(var(--v-border-color), var(--v-border-opacity));
}
.v-alert--variant-outlined.text-default,
.v-avatar--variant-outlined.text-default,
.v-btn.v-btn--variant-outlined.text-default,
.v-card--variant-outlined.text-default,
.v-chip--variant-outlined.text-default,
.v-list-item--variant-outlined.text-default {
  border-color: rgba(var(--v-border-color), var(--v-border-opacity));
}

.v-label.custom-input {
  padding: 1rem;
  border: 1px solid rgba(var(--v-border-color), var(--v-border-opacity));
  opacity: 1;
  white-space: normal;
}
.v-label.custom-input + .v-label {
  letter-spacing: normal;
}
.v-label.custom-input:hover {
  border-color: rgba(var(--v-border-color), 0.25);
}
.v-label.custom-input.active {
  border-color: rgb(var(--v-theme-primary));
}
.v-label.custom-input.active .v-icon {
  color: rgb(var(--v-theme-primary)) !important;
}
.v-label.custom-input.custom-checkbox .v-input__control, .v-label.custom-input.custom-radio .v-input__control {
  grid-area: none;
}

[dir=rtl] .v-data-table-footer__pagination .v-btn .v-icon {
  transform: rotate(180deg);
}

.v-dialog .v-dialog-close-btn {
  position: absolute;
  z-index: 1;
  color: rgba(var(--v-theme-on-surface), var(--v-disabled-opacity)) !important;
  inset-block-start: 0.5rem;
  inset-inline-end: 0.5rem;
}
.v-dialog .v-dialog-close-btn .v-btn__overlay {
  display: none;
}
@media (min-width: 600px) {
  .v-dialog.v-dialog-sm .v-overlay__content, .v-dialog.v-dialog-lg .v-overlay__content, .v-dialog.v-dialog-xl .v-overlay__content {
    inline-size: 565px !important;
  }
}
@media (min-width: 960px) {
  .v-dialog.v-dialog-lg .v-overlay__content, .v-dialog.v-dialog-xl .v-overlay__content {
    inline-size: 865px !important;
  }
}
@media (min-width: 1264px) {
  .v-dialog.v-dialog-xl .v-overlay__content {
    inline-size: 1165px !important;
  }
}
.v-expansion-panels.customized-panels {
  border: 1px solid rgba(var(--v-border-color), var(--v-border-opacity));
  border-radius: 6px;
}
.v-expansion-panels.customized-panels .v-expansion-panel-title {
  background-color: rgb(var(--v-theme-expansion-panel-text-custom-bg));
  border-block-end: 1px solid rgba(var(--v-border-color), var(--v-border-opacity));
  margin-block-end: -1px;
}
.v-expansion-panels.customized-panels .v-expansion-panel-text__wrapper {
  padding: 20px;
}

.v-tabs.v-tabs-pill .v-tab.v-btn {
  border-radius: 6px !important;
  transition: none;
}
.v-tabs.v-tabs-pill .v-tab.v-btn .v-tab__slider {
  visibility: hidden;
}

body .v-tabs.v-tabs-pill .v-slide-group__content {
  gap: 0.25rem;
}
body .v-tabs.v-tabs-pill .v-tab--selected.text-primary {
  background-color: rgb(var(--v-theme-primary));
  color: rgb(var(--v-theme-on-primary)) !important;
}

body .v-tabs.v-tabs-pill .v-slide-group__content {
  gap: 0.25rem;
}
body .v-tabs.v-tabs-pill .v-tab--selected.text-secondary {
  background-color: rgb(var(--v-theme-secondary));
  color: rgb(var(--v-theme-on-secondary)) !important;
}

body .v-tabs.v-tabs-pill .v-slide-group__content {
  gap: 0.25rem;
}
body .v-tabs.v-tabs-pill .v-tab--selected.text-error {
  background-color: rgb(var(--v-theme-error));
  color: rgb(var(--v-theme-on-error)) !important;
}

body .v-tabs.v-tabs-pill .v-slide-group__content {
  gap: 0.25rem;
}
body .v-tabs.v-tabs-pill .v-tab--selected.text-info {
  background-color: rgb(var(--v-theme-info));
  color: rgb(var(--v-theme-on-info)) !important;
}

body .v-tabs.v-tabs-pill .v-slide-group__content {
  gap: 0.25rem;
}
body .v-tabs.v-tabs-pill .v-tab--selected.text-success {
  background-color: rgb(var(--v-theme-success));
  color: rgb(var(--v-theme-on-success)) !important;
}

body .v-tabs.v-tabs-pill .v-slide-group__content {
  gap: 0.25rem;
}
body .v-tabs.v-tabs-pill .v-tab--selected.text-warning {
  background-color: rgb(var(--v-theme-warning));
  color: rgb(var(--v-theme-on-warning)) !important;
}

.v-timeline--vertical.v-timeline .v-timeline-item .v-timeline-item__body {
  justify-self: stretch !important;
}

.v-switch .v-selection-control:not(.v-selection-control--dirty) .v-switch__thumb {
  color: #fff !important;
}

/* 👉 Demo spacers */
/* TODO: Use vuetify SCSS variable here; */
.demo-space-x {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  margin-block-start: -16px;
}
.demo-space-x > * {
  margin-block-start: 16px;
  margin-inline-end: 16px;
}

.demo-space-y > * {
  margin-block-end: 16px;
}
.demo-space-y > *:last-child {
  margin-block-end: 0;
}

.match-height.v-row .v-card {
  block-size: 100%;
}

.whitespace-no-wrap {
  white-space: nowrap;
}

/*
  ℹ️ Vuetify is applying `.text-white` class to badge icon but don't provide its styles
  Moreover, we also use this class in some places

  ℹ️ In vuetify 2 with `$color-pack: false` SCSS var config this class was getting generated but this is not the case in v3

  ℹ️ We also need !important to get correct color in badge icon
*/
.text-white {
  color: #fff !important;
}

.text-white-variant {
  color: rgb(211, 212, 220);
}

.text-link:not(:hover) {
  color: rgba(var(--v-theme-on-surface), var(--v-high-emphasis-opacity));
}

.text-link:not(:hover) {
  color: rgba(var(--v-theme-on-surface), var(--v-high-emphasis-opacity));
}

.bg-var-theme-background {
  background-color: rgba(var(--v-theme-on-background), var(--v-hover-opacity)) !important;
}

.bg-global-primary {
  background-color: rgb(var(--v-global-theme-primary)) !important;
  color: rgb(var(--v-theme-on-primary)) !important;
}

.bg-light-primary {
  background-color: rgba(var(--v-theme-primary), var(--v-activated-opacity)) !important;
}

.bg-light-secondary {
  background-color: rgba(var(--v-theme-secondary), var(--v-activated-opacity)) !important;
}

.bg-light-error {
  background-color: rgba(var(--v-theme-error), var(--v-activated-opacity)) !important;
}

.bg-light-info {
  background-color: rgba(var(--v-theme-info), var(--v-activated-opacity)) !important;
}

.bg-light-success {
  background-color: rgba(var(--v-theme-success), var(--v-activated-opacity)) !important;
}

.bg-light-warning {
  background-color: rgba(var(--v-theme-warning), var(--v-activated-opacity)) !important;
}

.clamp-text {
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  text-overflow: ellipsis;
}

.custom-badge .v-badge__badge {
  border-radius: 6px !important;
  block-size: 12px !important;
  inline-size: 12px !important;
}

.leading-normal {
  line-height: normal !important;
}

[dir=rtl] .flip-in-rtl {
  transform: scaleX(-1);
}

.carousel-delimiter-top-end .v-carousel__controls {
  justify-content: end;
  block-size: 40px;
  inset-block-start: 0;
  padding-inline: 1rem;
}
.carousel-delimiter-top-end .v-carousel__controls .v-btn--icon.v-btn--density-default {
  block-size: calc(var(--v-btn-height) - 10px);
  inline-size: calc(var(--v-btn-height) - 8px);
}
.carousel-delimiter-top-end .v-carousel__controls .v-btn--icon.v-btn--density-default.v-btn--active {
  color: #fff;
}
.carousel-delimiter-top-end .v-carousel__controls .v-btn--icon.v-btn--density-default .v-btn__overlay {
  opacity: 0;
}
.carousel-delimiter-top-end .v-carousel__controls .v-btn--icon.v-btn--density-default .v-ripple__container {
  display: none;
}
.carousel-delimiter-top-end .v-carousel__controls .v-btn--icon.v-btn--density-default .v-btn__content .v-icon {
  block-size: 8px !important;
  font-size: 8px !important;
  inline-size: 8px !important;
}
.carousel-delimiter-top-end.dots-active-primary .v-carousel__controls .v-btn--active {
  color: rgb(var(--v-theme-primary)) !important;
}
.carousel-delimiter-top-end.dots-active-secondary .v-carousel__controls .v-btn--active {
  color: rgb(var(--v-theme-secondary)) !important;
}
.carousel-delimiter-top-end.dots-active-error .v-carousel__controls .v-btn--active {
  color: rgb(var(--v-theme-error)) !important;
}
.carousel-delimiter-top-end.dots-active-info .v-carousel__controls .v-btn--active {
  color: rgb(var(--v-theme-info)) !important;
}
.carousel-delimiter-top-end.dots-active-success .v-carousel__controls .v-btn--active {
  color: rgb(var(--v-theme-success)) !important;
}
.carousel-delimiter-top-end.dots-active-warning .v-carousel__controls .v-btn--active {
  color: rgb(var(--v-theme-warning)) !important;
}

.v-timeline-item .app-timeline-title {
  color: rgba(var(--v-theme-on-surface), var(--v-high-emphasis-opacity));
  font-size: 16px;
  font-weight: 500;
  line-height: 1.3125rem;
}
.v-timeline-item .app-timeline-meta {
  color: rgba(var(--v-theme-on-surface), var(--v-disabled-opacity));
  font-size: 12px;
  line-height: 0.875rem;
}
.v-timeline-item .app-timeline-text {
  color: rgba(var(--v-theme-on-surface), var(--v-medium-emphasis-opacity));
  font-size: 14px;
  line-height: 1.25rem;
}
.v-timeline-item .timeline-chip {
  border-radius: 6px;
  background: rgba(var(--v-theme-on-surface), var(--v-hover-opacity));
  padding-block: 5px;
  padding-inline: 10px;
}

.app-transition-zoom-fade-enter-active,
.app-transition-zoom-fade-leave-active {
  transition: transform 0.35s, opacity 0.28s ease-in-out;
}

.app-transition-zoom-fade-enter-from {
  opacity: 0;
  transform: scale(0.98);
}

.app-transition-zoom-fade-leave-to {
  opacity: 0;
  transform: scale(1.02);
}

.app-transition-fade-enter-active,
.app-transition-fade-leave-active {
  transition: opacity 0.25s ease-in-out;
}

.app-transition-fade-enter-from,
.app-transition-fade-leave-to {
  opacity: 0;
}

.app-transition-fade-bottom-enter-active,
.app-transition-fade-bottom-leave-active {
  transition: opacity 0.3s, transform 0.35s;
}

.app-transition-fade-bottom-enter-from {
  opacity: 0;
  transform: translateY(-0.6rem);
}

.app-transition-fade-bottom-leave-to {
  opacity: 0;
  transform: translateY(0.6rem);
}

.app-transition-slide-fade-enter-active,
.app-transition-slide-fade-leave-active {
  transition: opacity 0.3s, transform 0.35s;
}

.app-transition-slide-fade-enter-from {
  opacity: 0;
  transform: translateX(-0.6rem);
}

.app-transition-slide-fade-leave-to {
  opacity: 0;
  transform: translateX(0.6rem);
}

.app-transition-zoom-out-enter-active,
.app-transition-zoom-out-leave-active {
  transition: opacity 0.26s ease-in-out, transform 0.3s ease-out;
}

.app-transition-zoom-out-enter-from,
.app-transition-zoom-out-leave-to {
  opacity: 0;
  transform: scale(0.98);
}

body.v-theme--dark .ps__rail-y,
body.v-theme--dark .ps__rail-x {
  background-color: transparent !important;
}
body.v-theme--dark .ps__thumb-y {
  background-color: rgba(var(--v-theme-surface-variant), 0.35);
}

.ps__thumb-y {
  inline-size: 0.25rem !important;
  inset-inline-end: 0.0625rem;
}

.ps__thumb-y,
.ps__thumb-x {
  background-color: rgb(var(--v-theme-perfect-scrollbar-thumb)) !important;
}

.ps__thumb-x {
  block-size: 0.25rem !important;
}

.ps__rail-x {
  background: transparent !important;
  block-size: 0.5rem;
}

.ps__rail-y {
  background: transparent !important;
  inline-size: 0.5rem !important;
  inset-inline-end: 0.125rem !important;
  inset-inline-start: unset !important;
}

.ps__rail-y.ps--clicking .ps__thumb-y,
.ps__rail-y:focus > .ps__thumb-y,
.ps__rail-y:hover > .ps__thumb-y {
  inline-size: 0.375rem !important;
}

a {
  color: rgb(var(--v-theme-primary));
  text-decoration: none;
}

p {
  margin-block-end: 1rem;
}

svg.iconify {
  block-size: 1em;
  inline-size: 1em;
}

.layout-nav-type-vertical .layout-vertical-nav {
  color: rgba(var(--v-theme-on-background), var(--v-high-emphasis-opacity));
  box-shadow: 0 2px 8px rgba(var(--v-shadow-key-umbra-color), var(--v-shadow-sm-opacity)), 0 0 transparent, 0 0 transparent;
}
.layout-nav-type-vertical .layout-vertical-nav .nav-header {
  padding-inline-end: 0.125rem;
}
.layout-nav-type-vertical .layout-vertical-nav .nav-header .app-logo .app-title {
  font-size: 22px;
}
.layout-nav-type-vertical .layout-vertical-nav .nav-items {
  padding-block: 0.25rem;
}
.layout-nav-type-vertical .layout-vertical-nav .nav-link,
.layout-nav-type-vertical .layout-vertical-nav .nav-group {
  /* shadow cut issue fix */
  margin-block-end: -0.5rem;
  padding-block-end: 0.5rem;
}
.layout-nav-type-vertical .layout-vertical-nav .nav-link a,
.layout-nav-type-vertical .layout-vertical-nav .nav-group a {
  outline: none;
}
.layout-nav-type-vertical .layout-vertical-nav .nav-section-title .placeholder-icon {
  margin-inline-start: 0.0625rem;
  transform: scaleX(1.6);
}
[dir=rtl] .layout-nav-type-vertical .layout-vertical-nav .nav-section-title .placeholder-icon {
  margin-inline-start: 0.125rem;
}
.layout-nav-type-vertical.layout-vertical-nav-collapsed .layout-vertical-nav:not(.hovered) .nav-header .header-action {
  opacity: 0;
}

.layout-horizontal-nav {
  color: rgba(var(--v-theme-on-background), var(--v-high-emphasis-opacity));
}
.layout-horizontal-nav .nav-group .popper-content .nav-group.active > .popper-triggerer .nav-group-label,
.layout-horizontal-nav .nav-link .popper-content .nav-group.active > .popper-triggerer .nav-group-label {
  font-weight: 500;
}
.layout-horizontal-nav .nav-group .popper-content .nav-group.sub-item .sub-item .nav-group-label .nav-item-icon,
.layout-horizontal-nav .nav-link .popper-content .nav-group.sub-item .sub-item .nav-group-label .nav-item-icon {
  color: rgba(var(--v-theme-on-surface), var(--v-medium-emphasis-opacity));
}
.layout-horizontal-nav .nav-group .popper-content .nav-group.sub-item .sub-item a:not(.router-link-exact-active) .nav-item-icon,
.layout-horizontal-nav .nav-link .popper-content .nav-group.sub-item .sub-item a:not(.router-link-exact-active) .nav-item-icon {
  color: rgba(var(--v-theme-on-surface), var(--v-medium-emphasis-opacity));
}
.layout-horizontal-nav .nav-group .popper-content .nav-link.sub-item .router-link-active.router-link-exact-active,
.layout-horizontal-nav .nav-link .popper-content .nav-link.sub-item .router-link-active.router-link-exact-active {
  font-weight: 500;
}

.layout-footer-sticky.layout-wrapper.layout-nav-type-vertical .layout-footer .footer-content-container {
  box-shadow: 0 3px 12px rgba(var(--v-shadow-key-umbra-color), var(--v-shadow-md-opacity)), 0 0 transparent, 0 0 transparent;
}

.layout-wrapper.layout-nav-type-horizontal .layout-navbar-and-nav-container .app-logo .app-title {
  font-size: 22px;
}

.skin--bordered .v-expansion-panels:not(.expansion-panels-width-border) .v-expansion-panel, .skin--bordered .v-expansion-panel__shadow {
  box-shadow: none !important;
  border: 1px solid rgba(var(--v-border-color), var(--v-border-opacity));
}
.skin--bordered .layout-nav-type-vertical .layout-navbar .navbar-content-container {
  box-shadow: none !important;
  border: 1px solid rgba(var(--v-border-color), var(--v-border-opacity));
}
.skin--bordered .layout-nav-type-vertical.window-scrolled .layout-navbar .navbar-content-container {
  border-block-start: 1px solid rgba(var(--v-border-color), var(--v-border-opacity)) !important;
}
.skin--bordered .v-dialog-close-btn {
  box-shadow: none !important;
  border: 1px solid rgba(var(--v-border-color), var(--v-border-opacity));
}
.skin--bordered .layout-vertical-nav {
  box-shadow: none;
}
.skin--bordered .v-expansion-panels.expansion-panels-width-border .v-expansion-panel__shadow {
  box-shadow: none !important;
}
.skin--bordered .v-expansion-panels.expansion-panels-width-border .v-expansion-panel {
  border: none !important;
}
.skin--bordered .v-expansion-panels.expansion-panels-width-border .v-expansion-panel:not(:last-child) {
  margin-block-end: -1px;
}
.skin--bordered .v-expansion-panels.expansion-panels-width-border .v-expansion-panel::after {
  content: "";
}
.skin--bordered .v-select__content,
.skin--bordered .v-combobox__content,
.skin--bordered .v-autocomplete__content {
  box-shadow: none;
}
.skin--bordered .flatpickr-calendar {
  border: 1px solid rgba(var(--v-border-color), var(--v-border-opacity));
  box-shadow: none !important;
}
.skin--bordered .fc .fc-popover {
  box-shadow: none;
}
.skin--bordered .v-navigation-drawer:not(.app-customizer) {
  box-shadow: none;
}
.skin--bordered .shepherd-element {
  box-shadow: none;
}

.v-timeline-item .app-timeline-title {
  color: rgba(var(--v-theme-on-surface), var(--v-high-emphasis-opacity));
  font-size: 15px;
  font-weight: 500;
  line-height: 1.3125rem;
}
.v-timeline-item .app-timeline-meta {
  color: rgba(var(--v-theme-on-surface), var(--v-disabled-opacity));
  font-size: 11px;
  line-height: 0.875rem;
}
.v-timeline-item .app-timeline-text {
  color: rgba(var(--v-theme-on-surface), var(--v-medium-emphasis-opacity));
  font-size: 13px;
  line-height: 1.25rem;
}

.v-spacer {
  flex-grow: 1;
}

.app-logo {
  display: flex;
  align-items: center;
  column-gap: 0.75rem;
}
.app-logo .app-logo-title {
  font-size: 1.375rem;
  font-weight: 700;
  letter-spacing: 0.25px;
  line-height: 1.5rem;
  text-transform: capitalize;
}

.text-white-variant {
  color: rgba(255, 255, 255, 0.78) !important;
}

.bg-custom-background {
  background-color: rgb(var(--v-table-header-color));
}
/*!*********************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??clonedRuleSet-13.use[1]!./node_modules/resolve-url-loader/index.js??clonedRuleSet-13.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-13.use[3]!./assets/vue/src/assets/styles/styles.scss ***!
  \*********************************************************************************************************************************************************************************************************************************************************/


/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLmNzcyIsIm1hcHBpbmdzIjoiOzs7QUFBQTtJQUNJLDJCQUEyQjtBQUMvQjs7Ozs7QUNEQTtFQUNFO0VBR0E7RUFDQTtFQUNBO0FBRkYsQzs7OztBQ0xBO0VBQ0UsMkJBQTJCO0VBQzNCLG1CQUFtQjtFQUNuQixvQkFBb0I7RUFDcEIsNkJBQTZCO0VBQzdCLFdBQVc7RUFDWCx1QkFBdUI7RUFDdkIsc0JBQXNCO0VBQ3RCLGNBQWM7RUFDZCxrQkFBa0I7RUFDbEIsY0FBYztFQUNkLGtCQUFrQjtFQUNsQixpQkFBaUI7RUFDakIsc0JBQXNCO0VBQ3RCLFVBQVU7RUFDVixjQUFjO0FBQ2hCO0FBQ0E7RUFDRSxlQUFlO0FBQ2pCO0FBQ0E7RUFDRSxvQkFBb0I7RUFDcEIsYUFBYTtBQUNmO0FBQ0E7RUFDRSxvREFBb0Q7QUFDdEQ7QUFDQTtFQUNFLHVEQUF1RDtBQUN6RDtBQUNBO0VBQ0Usc0RBQXNEO0FBQ3hEO0FBQ0E7RUFDRSx1REFBdUQ7QUFDekQ7QUFDQTtFQUNFLG9EQUFvRDtBQUN0RDs7QUFFQTtFQUNFLGtCQUFrQjtFQUNsQixXQUFXO0VBQ1gsWUFBWTtBQUNkOztBQUVBO0VBQ0Usc0JBQXNCO0FBQ3hCOztBQUVBO0VBQ0Usd0JBQXdCO0FBQzFCLEM7Ozs7QUNwREEsZ0JBQWdCO0FDRWhCOzs7Ozs7Ozs7Q0FBQTtBQW1GQTs7Ozs7Q0FBQTtBQ0lBO0FBT0E7QUNyRUE7RUFDRTtFQVVBO0VBS0E7QUhwQkY7QUdPRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUhMSjtBR1NFO0VBQ0U7QUhQSjtBR1dFO0VBQ0U7RUFDQTtBSFRKO0FHWUU7RUFDRTtBSFZKOztBSW5DQTtBQ0hBO0FBS0E7QUNEQTtFQUNFO0VBQ0E7QU53Q0Y7O0FNcENBO0VBQ0U7QU51Q0Y7O0FNcENBOztFQUNFO0VBQ0E7QU53Q0Y7O0FNcENBO0VBQ0U7RUFDQTtBTnVDRjs7QU1wQ0E7OztDQUFBO0FBY0E7OztDQUFBO0FBZUE7RUFDRSxpQkx3QytCO0VLdkMvQix5Qkp0QjhDO0FGd0NoRDs7QU1kQTs7RUFDRTtBTmtCRjtBTWhCRTs7RUFDRTtBTm1CSjs7QU1kQTtFQUNFLGtCSi9CdUM7RUlnQ3ZDO0VBRUE7OztHQUFBO0FObUJGOztBTVpBO0VBQ0U7RUFDQTtBTmVGOztBTVhBO0VDcEZFO0VEdUZBO0VBQ0E7QU5hRjtBUXJHQTtFQUNFO0FSdUdGOztBUW5HQTs7RUFDRTtFQUNBLHNCTkZrQztFTUdsQztFQUNBLHVCTkNrQztFTUFsQztBUnVHRjs7QVFuR0E7O0VBQ0U7RUFDQTtFQUVBOzs7R0FBQTtFQUlBO0FSc0dGOztBUWpHQTs7RUFDRTtFQUNBLG1CTk4rQjtFTU8vQix5QlB5QzBDO0FENEQ1Qzs7QVFqR0E7O0VBQ0U7OztHQUFBO0VBTUEsa0JOakJzQztFTWtCdEM7QVJtR0Y7O0FRaEdBOztFQUNFO0FSb0dGOztBTy9HRTtFQUNFO0FQa0hKO0FPL0dFO0VBRUU7QVBnSEo7QU83R0U7RUFFRTtBUDhHSjtBTzNHRTtFQUVJO0lBQ0U7RVA0R047QUFDRjs7QVF6R0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBUjRHRjs7QVF4R0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBUjJHRjs7QVN0TEE7RUFDRTtBVHlMRjtBU3ZMRTtFQUNFO0FUeUxKO0FTdExFO0VBQ0U7QVR3TEo7O0FTcExBOzs7OztDQUFBO0FBTUE7RUFDRTtFQUNBO0VGbkJBO0FQMk1GOztBU2xMRTtFQUNFO0FUcUxKOztBVW5OQTtFQUNFO0FWc05GOztBV3ZOQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QVgwTkY7O0FZdk5BO0VMSkU7RUtTRTtBWnVOSjs7QVluTkE7RUFDRTtBWnNORjtBWXBORTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLDRKQUNFO0VBTUY7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FaZ05KOztBYXRQQTtFTkFFO0VNSUE7RUFDQTtBYnVQRjtBYWhQQTtFQUNFO0Fia1BGOztBYS9PQTtFQUNFLHFCWDJCeUI7QUZ1TjNCOztBYS9PQTtFQUNFLFFYU3FDO0FGeU92Qzs7QWMxUUE7RUFDRTtBZDZRRjtBYzNRRTtFQUNFO0FkNlFKOztBY3pRQTs7Ozs7Q0FBQTtBQU1BO0VBQ0U7RUFDQTtBZDRRRjtBYzFRRTtFQUNFO0FkNFFKO0FjelFFO0VBQ0U7QWQyUUo7O0FlalNBO0VBQ0U7QWZvU0Y7O0FlalNBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0Fmb1NGOztBZWhTQTs7RUFDRTtFQUNBO0VBQ0E7QWZvU0Y7O0FlalNBOztFQUNFO0VBQ0E7QWZxU0Y7O0FlaFNBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QWZtU0Y7O0FlL1JBOztFQUNFO0FmbVNGOztBZ0J0VUE7RUFDRTtBaEJ5VUY7O0FnQnJVQTtFQUNFO0VBQ0E7QWhCd1VGOztBZ0JyVUE7Ozs7RUFDRTtFQUNBO0VBQ0E7QWhCMlVGOztBZ0J2VUE7RUFDRTtBaEIwVUY7QWdCdlVFO0VBQ0U7QWhCeVVKOztBZ0JwVUE7RVQxQkU7QVBrV0Y7O0FnQm5VQTtFQUNFO0FoQnNVRjs7QWdCbFVBO0VBQ0U7QWhCcVVGOztBZ0JsVUE7RUFDRTtBaEJxVUY7O0FpQmhYQTtFQUdJO0FqQmlYSjs7QWtCdFhBO0VBQ0U7QWxCeVhGO0FrQnZYRTtFQUNFO0FsQnlYSjs7QW1CN1hBO0VBQ0U7QW5CZ1lGOztBb0J4WEU7RUFZRSw2Q25Cc0I0QjtBRDBWaEM7QW9CclhNO0ViWko7QVBvWUY7O0FvQmhYSTtFQUNFO0VBQ0EsdUJsQkYwQjtFa0JHMUIsc0JsQmxCOEI7RWtCbUI5QixvQmxCdUJnQztBRjRWdEM7QW9CaFhNO0VBQ0U7RUFDQTtBcEJrWFI7QW9COVdVO0VBQ0U7QXBCZ1haO0FxQmpaSTtFRG9DVTtBcEJnWGQ7O0FvQnBXSTtFQUNFO0VBQ0E7RUFDQSxzSkFDRTtFQU1GO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FwQmlXTjtBcUJqYUk7RURtRUk7QXBCaVdSO0FvQjVWTTtFQUNFO0FwQjhWUjtBb0J6Vkk7RUFDRTtBcEIyVk47QW9CdlZJO0VBSUUsMEJsQnZFNEI7QUY2WmxDO0FvQnBWTTtFQUNFLHdCbEJuRjBCO0FGeWFsQztBb0JuVk07RUFDRTtBcEJxVlI7QW9CM1VJOztFQUVFO0FwQjZVTjtBb0JsVU07O0VBQ0U7RUFDQTtBcEJxVVI7QW9CbFVNOztFQUNFO0FwQnFVUjtBb0J6VE07RWJsSUo7QVA4YkY7QU81YkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QVA4Yko7QXNCMWNJO0VBQ0U7QXRCNGNOO0FzQnpjSTtFQUNFO0F0QjJjTjtBc0J6Y0U7RUFFSTtJQUNFO0V0QjBjTjtBQUNGO0FvQmxUTTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FwQm9UUjtBb0IvU1E7RUFDRTtBcEJpVFY7QW9CNVNNO0ViakxKO0FQZ2VGO0FPOWRFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FQZ2VKO0FzQjVlSTtFQUNFO0F0QjhlTjtBc0IzZUk7RUFDRTtBdEI2ZU47QXNCM2VFO0VBRUk7SUFDRTtFdEI0ZU47QUFDRjtBb0IvU0E7O0VBRUU7QXBCaVRGOztBb0I5U0E7O0VBRUU7RUFDQTtBcEJpVEY7QXFCcmdCSTs7RUR1TkE7QXBCa1RKOztBb0I5U0E7O0VBRUU7QXBCaVRGOztBb0I5U0E7O0VBRUU7RUFDQTtBcEJpVEY7QXFCcGhCSTs7RURzT0E7QXBCa1RKOztBb0I5U0E7O0VBRUU7QXBCaVRGOztBb0I5U0E7O0VBRUU7RUFDQTtBcEJpVEY7QXFCbmlCSTs7RURxUEE7QXBCa1RKOztBdUIzZ0JJO0VoQnZCRjtBUHNpQkY7QU9waUJFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FQc2lCSjtBc0JsakJJO0VBQ0U7QXRCb2pCTjtBc0JqakJJO0VBQ0U7QXRCbWpCTjtBc0JqakJFO0VBRUk7SUFDRTtFdEJrakJOO0FBQ0Y7QXVCM2ZJO0VoQmpFRjtBUCtqQkY7QU83akJFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FQK2pCSjtBc0Iza0JJO0VBQ0U7QXRCNmtCTjtBc0Ixa0JJO0VBQ0U7QXRCNGtCTjtBc0Ixa0JFO0VBRUk7SUFDRTtFdEIya0JOO0FBQ0Y7QXVCNWdCSTtFQUlFO0F2QjJnQk47QXVCeGdCTTtFQUNFLDJDdEJhbUM7QUQ2ZjNDO0F1QnBnQk07RUFDRTtFQUVBOzs7OztHQUFBO0F2QjBnQlI7QXVCcGdCUTtFQUNFO0VBQ0Esb0JyQnRFNEI7RXFCdUU1QjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F2QnNnQlY7QXVCamdCTTtFQUNFOzs7R0FBQTtFQUlBO0VBQ0E7QXZCbWdCUjtBdUJyZk07RUFDRTtBdkJ1ZlI7QU8zbEJFO0VBQ0U7QVA2bEJKO0FPMWxCRTtFQUVFO0FQMmxCSjtBT3hsQkU7RUFFRTtBUHlsQko7QU90bEJFO0VBRUk7SUFDRTtFUHVsQk47QUFDRjtBdUJuZkk7RUFDRSxrQnJCdEhtQztFcUJ3SG5DOzs7R0FBQTtFQUlBO0F2Qm9mTjtBdUJoZk07RUFDRTtBdkJrZlI7QXFCdHBCSTtFRXVLTTtBdkJrZlY7QU92bkJFO0VBQ0U7QVB5bkJKO0FPdG5CRTtFQUVFO0FQdW5CSjtBT3BuQkU7RUFFRTtBUHFuQko7QU9sbkJFO0VBRUk7SUFDRTtFUG1uQk47QUFDRjs7QXdCdnFCRTs7OztFQUVFO0F4QjRxQko7O0F5QmhyQkk7RUFDRTtFQUNBO0VBQ0E7QXpCbXJCTjs7QXlCN3FCQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBekJnckJGOztBMEJ4b0JNO0VBQ0Usd0J6QkwyQjtBRGdwQm5DO0EwQnZvQkk7RUFFSSxrQnhCaEVxRDtFd0JtRXZEO0ExQnNvQk47QTBCdG5CSTtFQUNFO0ExQnduQk47QTBCbG5CVTtFQUNFO0VBQ0E7RUFDQTtFbkIxRlY7QVArc0JGOztBMkJwc0JFO0VBQ0U7RUFDQTtFQUNBO0EzQnVzQko7QTJCenJCTTtFQUNFO0VwQjdCTjtBUHl0QkY7O0EyQnByQkU7RUFDRTtBM0J1ckJKOztBNEIvdEJBO0FBRUE7O0NBQUE7QUFnQk07RUFDRTtFQUNBO0E1Qm90QlI7QTRCL3NCVTtFQUNFO0VBQ0E7QTVCaXRCWjs7QTRCdHNCSTtFQUNFO0E1QnlzQk47O0E0QmpzQkU7RUFLRTs7O0dBQUE7QTVCbXNCSjtBNEJ2c0JJO0VBQ0UsdUIzQkc2QjtBRHNzQm5DO0E0QmxzQkk7RUFDRSx3QjNCTDZCO0FEeXNCbkM7O0E2QnBzQkU7RUFDRSxvQjVCNkRTO0U0QjVEVDtBN0J1c0JKOztBNkJ6c0JFO0VBQ0Usb0I1QjZEUztFNEI1RFQ7QTdCNHNCSjs7QTZCOXNCRTtFQUNFLG9CNUI2RFM7RTRCNURUO0E3Qml0Qko7O0E2Qm50QkU7RUFDRSxtQjVCNkRTO0U0QjVEVDtBN0JzdEJKOztBNkJ4dEJFO0VBQ0UsaUI1QjZEUztFNEI1RFQ7QTdCMnRCSjs7QTZCN3RCRTtFQUNFLGtCNUI2RFM7RTRCNURUO0E3Qmd1Qko7O0E2Qmx1QkU7RUFDRSxlNUI2RFM7RTRCNURUO0E3QnF1Qko7O0E2QnZ1QkU7RUFDRSxtQjVCNkRTO0U0QjVEVDtBN0IwdUJKOztBNkI1dUJFO0VBQ0UsZTVCNkRTO0U0QjVEVDtBN0IrdUJKOztBNkJqdkJFO0VBQ0UsaUI1QjZEUztFNEI1RFQ7QTdCb3ZCSjs7QTZCdHZCRTtFQUNFLGU1QjZEUztFNEI1RFQ7QTdCeXZCSjs7QTZCM3ZCRTtFQUNFLGlCNUI2RFM7RTRCNURUO0E3Qjh2Qko7O0E2Qmh3QkU7RUFDRSxrQjVCNkRTO0U0QjVEVDtBN0Jtd0JKOztBNkI5dkJBO0VBQ0U7RUFDQTtFQUNBO0E3Qml3QkY7O0E2QjV2QkU7RUFDRSxNNUJ3RkU7QUR1cUJOOztBNkI1dkJFO0VBQ0UsYTVCb0ZFO0FEMnFCTjs7QTZCNXZCRTtFQUNFLFU1QmdGRTtBRCtxQk47O0E2Qnh3QkU7RUFDRSxZNUJ3RkU7QURtckJOOztBNkJ4d0JFO0VBQ0UsbUI1Qm9GRTtBRHVyQk47O0E2Qnh3QkU7RUFDRSxnQjVCZ0ZFO0FEMnJCTjs7QTZCcHhCRTtFQUNFLFc1QndGRTtBRCtyQk47O0E2QnB4QkU7RUFDRSxrQjVCb0ZFO0FEbXNCTjs7QTZCcHhCRTtFQUNFLGU1QmdGRTtBRHVzQk47O0E2Qmh5QkU7RUFDRSxZNUJ3RkU7QUQyc0JOOztBNkJoeUJFO0VBQ0UsbUI1Qm9GRTtBRCtzQk47O0E2Qmh5QkU7RUFDRSxnQjVCZ0ZFO0FEbXRCTjs7QTZCNXlCRTtFQUNFLFM1QndGRTtBRHV0Qk47O0E2QjV5QkU7RUFDRSxnQjVCb0ZFO0FEMnRCTjs7QTZCNXlCRTtFQUNFLGE1QmdGRTtBRCt0Qk47O0E2Qnh6QkU7RUFDRSxZNUJ3RkU7QURtdUJOOztBNkJ4ekJFO0VBQ0UsbUI1Qm9GRTtBRHV1Qk47O0E2Qnh6QkU7RUFDRSxnQjVCZ0ZFO0FEMnVCTjs7QTZCcDBCRTtFQUNFLFc1QndGRTtBRCt1Qk47O0E2QnAwQkU7RUFDRSxrQjVCb0ZFO0FEbXZCTjs7QTZCcDBCRTtFQUNFLGU1QmdGRTtBRHV2Qk47O0E2QmgxQkU7RUFDRSxZNUJ3RkU7QUQydkJOOztBNkJoMUJFO0VBQ0UsbUI1Qm9GRTtBRCt2Qk47O0E2QmgxQkU7RUFDRSxnQjVCZ0ZFO0FEbXdCTjs7QTZCNTFCRTtFQUNFLFM1QndGRTtBRHV3Qk47O0E2QjUxQkU7RUFDRSxnQjVCb0ZFO0FEMndCTjs7QTZCNTFCRTtFQUNFLGE1QmdGRTtBRCt3Qk47O0E2QngyQkU7RUFDRSxZNUJ3RkU7QURteEJOOztBNkJ4MkJFO0VBQ0UsbUI1Qm9GRTtBRHV4Qk47O0E2QngyQkU7RUFDRSxnQjVCZ0ZFO0FEMnhCTjs7QTZCcDNCRTtFQUNFLFc1QndGRTtBRCt4Qk47O0E2QnAzQkU7RUFDRSxrQjVCb0ZFO0FEbXlCTjs7QTZCcDNCRTtFQUNFLGU1QmdGRTtBRHV5Qk47O0E2Qmg0QkU7RUFDRSxZNUJ3RkU7QUQyeUJOOztBNkJoNEJFO0VBQ0UsbUI1Qm9GRTtBRCt5Qk47O0E2Qmg0QkU7RUFDRSxnQjVCZ0ZFO0FEbXpCTjs7QTZCNTRCRTtFQUNFLFM1QndGRTtBRHV6Qk47O0E2QjU0QkU7RUFDRSxnQjVCb0ZFO0FEMnpCTjs7QTZCNTRCRTtFQUNFLGE1QmdGRTtBRCt6Qk47O0E2Qng1QkU7RUFDRSxXNUJ3RkU7QURtMEJOOztBNkJ4NUJFO0VBQ0Usa0I1Qm9GRTtBRHUwQk47O0E2Qng1QkU7RUFDRSxlNUJnRkU7QUQyMEJOOztBNkJwNkJFO0VBQ0UsUzVCd0ZFO0FEKzBCTjs7QTZCcDZCRTtFQUNFLGdCNUJvRkU7QURtMUJOOztBNkJwNkJFO0VBQ0UsYTVCZ0ZFO0FEdTFCTjs7QTZCaDdCRTtFQUNFLFM1QndGRTtBRDIxQk47O0E2Qmg3QkU7RUFDRSxnQjVCb0ZFO0FEKzFCTjs7QTZCaDdCRTtFQUNFLGE1QmdGRTtBRG0yQk47O0E2QjU3QkU7RUFDRSxTNUJ3RkU7QUR1MkJOOztBNkI1N0JFO0VBQ0UsZ0I1Qm9GRTtBRDIyQk47O0E2QjU3QkU7RUFDRSxhNUJnRkU7QUQrMkJOOztBNkJ4OEJFO0VBQ0UsUzVCd0ZFO0FEbTNCTjs7QTZCeDhCRTtFQUNFLGdCNUJvRkU7QUR1M0JOOztBNkJ4OEJFO0VBQ0UsYTVCZ0ZFO0FEMjNCTjs7QTZCcDlCRTtFQUNFLFM1QndGRTtBRCszQk47O0E2QnA5QkU7RUFDRSxnQjVCb0ZFO0FEbTRCTjs7QTZCcDlCRTtFQUNFLGE1QmdGRTtBRHU0Qk47O0E2QmgrQkU7RUFDRSxTNUJ3RkU7QUQyNEJOOztBNkJoK0JFO0VBQ0UsZ0I1Qm9GRTtBRCs0Qk47O0E2QmgrQkU7RUFDRSxhNUJnRkU7QURtNUJOOztBNkI1K0JFO0VBQ0UsVTVCd0ZFO0FEdTVCTjs7QTZCNStCRTtFQUNFLGlCNUJvRkU7QUQyNUJOOztBNkI1K0JFO0VBQ0UsYzVCZ0ZFO0FEKzVCTjs7QTZCeC9CRTtFQUNFLFU1QndGRTtBRG02Qk47O0E2QngvQkU7RUFDRSxpQjVCb0ZFO0FEdTZCTjs7QTZCeC9CRTtFQUNFLGM1QmdGRTtBRDI2Qk47O0E2QnBnQ0U7RUFDRSxVNUJ3RkU7QUQrNkJOOztBNkJwZ0NFO0VBQ0UsaUI1Qm9GRTtBRG03Qk47O0E2QnBnQ0U7RUFDRSxjNUJnRkU7QUR1N0JOOztBNkJoaENFO0VBQ0UsVTVCd0ZFO0FEMjdCTjs7QTZCaGhDRTtFQUNFLGlCNUJvRkU7QUQrN0JOOztBNkJoaENFO0VBQ0UsYzVCZ0ZFO0FEbThCTjs7QTZCNWhDRTtFQUNFLFU1QndGRTtBRHU4Qk47O0E2QjVoQ0U7RUFDRSxpQjVCb0ZFO0FEMjhCTjs7QTZCNWhDRTtFQUNFLGM1QmdGRTtBRCs4Qk47O0E2QnhpQ0U7RUFDRSxVNUJ3RkU7QURtOUJOOztBNkJ4aUNFO0VBQ0UsaUI1Qm9GRTtBRHU5Qk47O0E2QnhpQ0U7RUFDRSxjNUJnRkU7QUQyOUJOOztBNkJwakNFO0VBQ0UsVTVCd0ZFO0FEKzlCTjs7QTZCcGpDRTtFQUNFLGlCNUJvRkU7QURtK0JOOztBNkJwakNFO0VBQ0UsYzVCZ0ZFO0FEdStCTjs7QTZCaGtDRTtFQUNFLFU1QndGRTtBRDIrQk47O0E2QmhrQ0U7RUFDRSxpQjVCb0ZFO0FEKytCTjs7QTZCaGtDRTtFQUNFLGM1QmdGRTtBRG0vQk47O0E2QjVrQ0U7RUFDRSxVNUJ3RkU7QUR1L0JOOztBNkI1a0NFO0VBQ0UsaUI1Qm9GRTtBRDIvQk47O0E2QjVrQ0U7RUFDRSxjNUJnRkU7QUQrL0JOOztBNkJ4bENFO0VBQ0UsVTVCd0ZFO0FEbWdDTjs7QTZCeGxDRTtFQUNFLGlCNUJvRkU7QUR1Z0NOOztBNkJ4bENFO0VBQ0UsYzVCZ0ZFO0FEMmdDTjs7QTZCdmxDQTtFQUNFO0E3QjBsQ0Y7O0FPdHBDRTtFQUNFO0VBRUE7QVB3cENKO0FPM3BDRTtFQUNFO0VBRUE7QVA0cENKO0FPL3BDRTtFQUNFO0VBRUE7QVBncUNKO0FPbnFDRTtFQUNFO0VBRUE7QVBvcUNKO0FPdnFDRTtFQUNFO0VBRUE7QVB3cUNKO0E4Qi9xQ0k7RUFDRTtBOUJpckNOO0FPOXFDRTtFQUNFO0VBRUE7QVArcUNKO0E4QnpxQ0U7RUFDRTtBOUIycUNKO0FPcnJDRTtFQUNFO0VBRUE7QVBzckNKO0E4QnpxQ0U7RUFDRTtBOUIycUNKO0E4QnZxQ0U7RUFDRTtBOUJ5cUNKO0E4QnBxQ0k7RUFDRTtBOUJzcUNOO0E4Qm5xQ0k7RUFDRTtBOUJxcUNOO0E4Qm5xQ007RUFDRTtBOUJxcUNSO0E4QmxxQ007RUFDRTtBOUJvcUNSOztBK0JodUNBO0VBQ0U7RUFDQTtBL0JtdUNGO0ErQmp1Q0U7RUFLRTtBL0IrdENKO0ErQm51Q0k7RUFDRTtBL0JxdUNOO0ErQmh1Q0k7RUFDRTtFQUNBO0V4QmhCSjtBUG12Q0Y7QStCN3RDRTtFQUNFO0VBQ0E7QS9CK3RDSjs7QStCcHRDRTs7Ozs7O0VBQ0U7QS9CNHRDSjtBK0J6dENFOzs7Ozs7RUFDRTtBL0JndUNKOztBK0IzdENBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QS9COHRDRjtBK0I1dENFO0VBQ0U7QS9COHRDSjtBK0IzdENFO0VBQ0U7QS9CNnRDSjtBK0IxdENFO0VBQ0U7QS9CNHRDSjtBK0IxdENJO0VBQ0U7QS9CNHRDTjtBK0J0dENJO0VBQ0U7QS9Cd3RDTjs7QStCL3NDTTtFQUNFO0EvQmt0Q1I7O0ErQnpzQ0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EvQjRzQ0o7QStCMXNDSTtFQUNFO0EvQjRzQ047QStCbnNDQTtFQUtNO0lBQ0U7RS9CaXNDTjtBQUNGO0ErQjVyQ0E7RUFJTTtJQUNFO0UvQjJyQ047QUFDRjtBK0J0ckNBO0VBRUk7SUFDRTtFL0J1ckNKO0FBQ0Y7QStCbHJDQTtFQUNFO0VBQ0Esa0IzQnBJcUI7QUp3ekN2QjtBK0JsckNFO0VBQ0U7RUFDQTtFQUNBO0EvQm9yQ0o7QStCanJDRTtFQUNFO0EvQm1yQ0o7O0ErQjdxQ0U7RUFDRTtFQUNBO0EvQmdyQ0o7QStCOXFDSTtFQUNFO0EvQmdyQ047O0ErQnhxQ0k7RUFDRTtBL0IycUNOO0ErQnpxQ0k7RUFDRTtFQUNBO0EvQjJxQ047O0ErQmhyQ0k7RUFDRTtBL0JtckNOO0ErQmpyQ0k7RUFDRTtFQUNBO0EvQm1yQ047O0ErQnhyQ0k7RUFDRTtBL0IyckNOO0ErQnpyQ0k7RUFDRTtFQUNBO0EvQjJyQ047O0ErQmhzQ0k7RUFDRTtBL0Jtc0NOO0ErQmpzQ0k7RUFDRTtFQUNBO0EvQm1zQ047O0ErQnhzQ0k7RUFDRTtBL0Iyc0NOO0ErQnpzQ0k7RUFDRTtFQUNBO0EvQjJzQ047O0ErQmh0Q0k7RUFDRTtBL0JtdENOO0ErQmp0Q0k7RUFDRTtFQUNBO0EvQm10Q047O0ErQjNzQ0k7RUFDRTtBL0I4c0NOOztBK0J4c0NBO0VBQ0U7QS9CMnNDRjs7QWdDejRDQTtBQUVBO0FBR0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBaEN5NENGO0FnQ3Y0Q0U7RUFDRSx3QkFUa0I7RUFVbEIsdUJBVmtCO0FoQ201Q3RCOztBZ0NwNENFO0VBQ0Usc0JBaEJrQjtBaEN1NUN0QjtBZ0NyNENJO0VBQ0U7QWhDdTRDTjs7QWdDaDRDRTtFQUNFO0FoQ200Q0o7O0FnQzkzQ0E7RUFDRTtBaENpNENGOztBZ0M1M0NBOzs7Ozs7O0NBQUE7QUFRQTtFQUNFO0FoQyszQ0Y7O0FnQzUzQ0E7RUFDRTtBaEMrM0NGOztBZ0MzM0NFO0VBQ0U7QWhDODNDSjs7QWdDejNDRTtFQUNFO0FoQzQzQ0o7O0FnQ3gzQ0E7RUFDRTtBaEMyM0NGOztBZ0N4M0NBO0VBQ0U7RUFDQTtBaEMyM0NGOztBZ0N0M0NFO0VBQ0U7QWhDeTNDSjs7QWdDMTNDRTtFQUNFO0FoQzYzQ0o7O0FnQzkzQ0U7RUFDRTtBaENpNENKOztBZ0NsNENFO0VBQ0U7QWhDcTRDSjs7QWdDdDRDRTtFQUNFO0FoQ3k0Q0o7O0FnQzE0Q0U7RUFDRTtBaEM2NENKOztBZ0N4NENBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBaEMyNENGOztBZ0N2NENFO0VBQ0U7RUFDQTtFQUNBO0FoQzA0Q0o7O0FnQ3Q0Q0E7RUFDRTtBaEN5NENGOztBcUI5K0NJO0VXMkdBO0FoQ3U0Q0o7O0FnQ2o0Q0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBaENvNENKO0FnQ2w0Q0k7RUFDRTtFQUNBO0FoQ280Q047QWdDbDRDTTtFQUNFO0FoQ280Q1I7QWdDajRDTTtFQUNFO0FoQ200Q1I7QWdDaDRDTTtFQUNFO0FoQ2s0Q1I7QWdDOTNDUTtFQUNFO0VBQ0E7RUFDQTtBaENnNENWO0FnQ3QzQ1E7RUFDRTtBaEN3M0NWO0FnQ3ozQ1E7RUFDRTtBaEMyM0NWO0FnQzUzQ1E7RUFDRTtBaEM4M0NWO0FnQy8zQ1E7RUFDRTtBaENpNENWO0FnQ2w0Q1E7RUFDRTtBaENvNENWO0FnQ3I0Q1E7RUFDRTtBaEN1NENWOztBZ0MvM0NFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QWhDazRDSjtBZ0MvM0NFO0VBQ0U7RUFDQTtFQUNBO0FoQ2k0Q0o7QWdDOTNDRTtFQUNFO0VBQ0E7RUFDQTtBaENnNENKO0FnQzczQ0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBaEMrM0NKOztBaUN4akRBOztFQUVFO0FqQzJqREY7O0FpQ3hqREE7RUFDRTtFQUNBO0FqQzJqREY7O0FpQ3hqREE7RUFDRTtFQUNBO0FqQzJqREY7O0FpQ3ZqREE7O0VBRUU7QWpDMGpERjs7QWlDdmpEQTs7RUFFRTtBakMwakRGOztBaUN0akRBOztFQUVFO0FqQ3lqREY7O0FpQ3RqREE7RUFDRTtFQUNBO0FqQ3lqREY7O0FpQ3RqREE7RUFDRTtFQUNBO0FqQ3lqREY7O0FpQ3JqREE7O0VBRUU7QWpDd2pERjs7QWlDcmpEQTtFQUNFO0VBQ0E7QWpDd2pERjs7QWlDcmpEQTtFQUNFO0VBQ0E7QWpDd2pERjs7QWlDcGpEQTs7RUFFRTtBakN1akRGOztBaUNwakRBOztFQUVFO0VBQ0E7QWpDdWpERjs7QWtDcG5ERTs7RUFFRTtBbEN1bkRKO0FrQ3BuREU7RUFDRSw0RGpDa0dxQjtBRG9oRHpCOztBbUMvbkRBO0VBQ0U7RUFDQTtBbkNrb0RGOztBbUMvbkRBOztFQUVFO0FuQ2tvREY7O0FtQy9uREE7RUFDRTtBbkNrb0RGOztBbUMvbkRBO0VBQ0U7RUFDQSxrQkFsQmM7QW5Db3BEaEI7O0FtQy9uREE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBbkNrb0RGOztBbUMvbkRBOzs7RUFHRTtBbkNrb0RGOztBb0Nsb0RBO0VBQ0U7RUFDQTtBcENxb0RGOztBb0Nqb0RBO0VBQ0U7QXBDb29ERjs7QW9DaG9EQTtFQUNFO0VBQ0E7QXBDbW9ERjs7QXFDM3FERTtFQUNFO0U5QkhGO0FQa3JERjtBcUMzcURJO0VBQ0U7QXJDNnFETjtBcUMxcURRO0VBQ0U7QXJDNHFEVjtBcUN2cURJO0VBQ0U7QXJDeXFETjtBcUNycURJOztFQUVFO0VBQ0E7RUFDQTtBckN1cUROO0FxQ3JxRE07O0VBQ0U7QXJDd3FEUjtBcUNwcURJO0VBQ0U7RUFDQTtBckNzcUROO0FxQnhzREk7RWdCcUNJO0FyQ3NxRFI7QXFDOXBEUTtFQUNFO0FyQ2dxRFY7O0FzQ2p0REE7RUFDRTtBdENvdERGO0FzQ3hzRFE7O0VBQ0U7QXRDMnNEVjtBc0N0c0RROztFQUNFO0F0Q3lzRFY7QXNDdHNEUTs7RUFDRTtBdEN5c0RWO0FzQ3BzRFE7O0VBQ0U7QXRDdXNEVjs7QXVDM3REVTtFaENSUjtBUHV1REY7O0F3Q3h1RE07RUFDRTtBeEMydURSOztBT250REU7RUFDRTtFQUVBO0FQcXRESjtBT3h0REU7RUFDRTtFQUVBO0FQeXRESjtBeUNudURJO0VBQ0U7QXpDcXVETjtBTy90REU7RUFDRTtFQUVBO0FQZ3VESjtBeUM3dERFO0VBQ0U7QXpDK3RESjtBeUMzdERJO0VBQ0U7QXpDNnRETjtBeUMxdERJO0VBQ0U7QXpDNHRETjtBeUMxdERNO0VBQ0U7QXpDNHREUjtBeUN6dERNO0VBQ0U7QXpDMnREUjtBeUNydERFOzs7RUFHRTtBekN1dERKO0F5Q3B0REU7RUFDRTtFQUNBO0F6Q3N0REo7QXlDbHRERTtFQUNFO0F6Q290REo7QXlDaHRERTtFQUNFO0F6Q2t0REo7QXlDL3NERTtFQUNFO0F6Q2l0REo7O0EwQy94REU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBMUNreURKO0EwQy94REU7RUFDRTtFQUNBO0VBQ0E7QTFDaXlESjtBMEM5eERFO0VBQ0U7RUFDQTtFQUNBO0ExQ2d5REo7O0EwQzF4REE7RUFDRTtBMUM2eERGOztBMEN6eERBO0VBQ0U7RUFDQTtFQUNBO0ExQzR4REY7QTBDMXhERTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTFDNHhESjs7QTBDeHhEQTtFQUNFO0ExQzJ4REY7O0EwQ3h4REE7RUFDRTtBMUMyeERGLEMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9hc3NldHMvc3R5bGVzL2FwcC5jc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL3Z1ZS9zcmMvQGNvcmUvY29tcG9uZW50cy9TY3JvbGxUb1RvcC52dWUiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL3Z1ZXRpZnkvbGliL2NvbXBvbmVudHMvVkljb24vVkljb24uY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy92dWUvc3JjL0Bjb3JlL3Njc3MvdGVtcGxhdGUvaW5kZXguc2NzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvdnVlL3NyYy9AY29yZS9zY3NzL2Jhc2UvX3ZhcmlhYmxlcy5zY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy92dWUvc3JjL0Bjb3JlL3Njc3MvdGVtcGxhdGUvX3ZhcmlhYmxlcy5zY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy92dWUvc3JjL0BsYXlvdXRzL3N0eWxlcy9fcGxhY2Vob2xkZXJzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL3Z1ZS9zcmMvQGNvcmUvc2Nzcy90ZW1wbGF0ZS9saWJzL3Z1ZXRpZnkvX3ZhcmlhYmxlcy5zY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy92dWUvc3JjL0Bjb3JlL3Njc3MvYmFzZS9saWJzL3Z1ZXRpZnkvX3ZhcmlhYmxlcy5zY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy92dWUvc3JjL0Bjb3JlL3Njc3MvYmFzZS9wbGFjZWhvbGRlcnMvX2hvcml6b250YWwtbmF2LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL3Z1ZS9zcmMvQGNvcmUvc2Nzcy9iYXNlL19taXhpbnMuc2NzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvdnVlL3NyYy9AY29yZS9zY3NzL2Jhc2UvcGxhY2Vob2xkZXJzL192ZXJ0aWNhbC1uYXYuc2NzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvdnVlL3NyYy9AY29yZS9zY3NzL2Jhc2UvcGxhY2Vob2xkZXJzL19uYXYuc2NzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvdnVlL3NyYy9AY29yZS9zY3NzL2Jhc2UvcGxhY2Vob2xkZXJzL19kZWZhdWx0LWxheW91dC5zY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy92dWUvc3JjL0Bjb3JlL3Njc3MvYmFzZS9wbGFjZWhvbGRlcnMvX21pc2Muc2NzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvdnVlL3NyYy9AY29yZS9zY3NzL2Jhc2UvcGxhY2Vob2xkZXJzL19kZWZhdWx0LWxheW91dC12ZXJ0aWNhbC1uYXYuc2NzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvdnVlL3NyYy9AY29yZS9zY3NzL2Jhc2UvcGxhY2Vob2xkZXJzL19kZWZhdWx0LWxheW91dC1ob3Jpem9udGFsLW5hdi5zY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy92dWUvc3JjL0Bjb3JlL3Njc3MvdGVtcGxhdGUvcGxhY2Vob2xkZXJzL19uYXYuc2NzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvdnVlL3NyYy9AY29yZS9zY3NzL3RlbXBsYXRlL3BsYWNlaG9sZGVycy9fdmVydGljYWwtbmF2LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL3Z1ZS9zcmMvQGNvcmUvc2Nzcy90ZW1wbGF0ZS9wbGFjZWhvbGRlcnMvX2hvcml6b250YWwtbmF2LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL3Z1ZS9zcmMvQGNvcmUvc2Nzcy90ZW1wbGF0ZS9wbGFjZWhvbGRlcnMvX2RlZmF1bHQtbGF5b3V0LXZlcnRpY2FsLW5hdi5zY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy92dWUvc3JjL0Bjb3JlL3Njc3MvdGVtcGxhdGUvcGxhY2Vob2xkZXJzL19kZWZhdWx0LWxheW91dC1ob3Jpem9udGFsLW5hdi5zY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy92dWUvc3JjL0Bjb3JlL3Njc3MvdGVtcGxhdGUvcGxhY2Vob2xkZXJzL19taXNjLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL3Z1ZS9zcmMvQGNvcmUvc2Nzcy9iYXNlL192ZXJ0aWNhbC1uYXYuc2NzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvdnVlL3NyYy9AbGF5b3V0cy9zdHlsZXMvX21peGlucy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy92dWV0aWZ5L2xpYi9zdHlsZXMvdG9vbHMvX3N0YXRlcy5zYXNzIiwid2VicGFjazovLy8uL2Fzc2V0cy92dWUvc3JjL0Bjb3JlL3Njc3MvYmFzZS9faG9yaXpvbnRhbC1uYXYuc2NzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvdnVlL3NyYy9AY29yZS9zY3NzL2Jhc2UvX2RlZmF1bHQtbGF5b3V0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL3Z1ZS9zcmMvQGNvcmUvc2Nzcy9iYXNlL19taXNjLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL3Z1ZS9zcmMvQGNvcmUvc2Nzcy9iYXNlL19kZWZhdWx0LWxheW91dC13LXZlcnRpY2FsLW5hdi5zY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy92dWUvc3JjL0Bjb3JlL3Njc3MvYmFzZS9fZGVmYXVsdC1sYXlvdXQtdy1ob3Jpem9udGFsLW5hdi5zY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy92dWUvc3JjL0Bjb3JlL3Njc3MvYmFzZS9fbGF5b3V0cy5zY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy92dWUvc3JjL0Bjb3JlL3Njc3MvYmFzZS9fdXRpbHMuc2NzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvdnVlL3NyYy9AY29yZS9zY3NzL2Jhc2Uvc2tpbnMvX2JvcmRlcmVkLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL3Z1ZS9zcmMvQGNvcmUvc2Nzcy9iYXNlL19jb21wb25lbnRzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL3Z1ZS9zcmMvQGNvcmUvc2Nzcy9iYXNlL191dGlsaXRpZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvdnVlL3NyYy9AY29yZS9zY3NzL2Jhc2UvX3JvdXRlLXRyYW5zaXRpb25zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL3Z1ZS9zcmMvQGNvcmUvc2Nzcy9iYXNlL19kYXJrLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL3Z1ZS9zcmMvQGNvcmUvc2Nzcy9iYXNlL2xpYnMvX3BlcmZlY3Qtc2Nyb2xsYmFyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL3Z1ZS9zcmMvQGNvcmUvc2Nzcy9iYXNlL19pbmRleC5zY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy92dWUvc3JjL0Bjb3JlL3Njc3MvdGVtcGxhdGUvX3ZlcnRpY2FsLW5hdi5zY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy92dWUvc3JjL0Bjb3JlL3Njc3MvdGVtcGxhdGUvX2hvcml6b250YWwtbmF2LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL3Z1ZS9zcmMvQGNvcmUvc2Nzcy90ZW1wbGF0ZS9fZGVmYXVsdC1sYXlvdXQtdy12ZXJ0aWNhbC1uYXYuc2NzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvdnVlL3NyYy9AY29yZS9zY3NzL3RlbXBsYXRlL19kZWZhdWx0LWxheW91dC13LWhvcml6b250YWwtbmF2LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL3Z1ZS9zcmMvQGNvcmUvc2Nzcy90ZW1wbGF0ZS9za2lucy9fYm9yZGVyZWQuc2NzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvdnVlL3NyYy9AY29yZS9zY3NzL3RlbXBsYXRlL191dGlsaXRpZXMuc2NzcyJdLCJzb3VyY2VzQ29udGVudCI6WyJib2R5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGdyYXk7XG59XG4iLCJcbi5zY3JvbGwtdG8tdG9wIHtcbiAgcG9zaXRpb246IGZpeGVkICFpbXBvcnRhbnQ7XG5cbiAgLy8gVG8ga2VlcCBidXR0b24gb24gdG9wIG9mIHYtbGF5b3V0LiBFLmcuIEVtYWlsIGFwcFxuICB6LWluZGV4OiA5OTk7XG4gIGluc2V0LWJsb2NrLWVuZDogNSU7XG4gIGluc2V0LWlubGluZS1lbmQ6IDI1cHg7XG59XG4iLCIudi1pY29uIHtcbiAgLS12LWljb24tc2l6ZS1tdWx0aXBsaWVyOiAxO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgZm9udC1mZWF0dXJlLXNldHRpbmdzOiBcImxpZ2FcIjtcbiAgaGVpZ2h0OiAxZW07XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogMTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0ZXh0LWluZGVudDogMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgd2lkdGg6IDFlbTtcbiAgbWluLXdpZHRoOiAxZW07XG59XG4udi1pY29uLS1jbGlja2FibGUge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG4udi1pY29uLS1kaXNhYmxlZCB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBvcGFjaXR5OiAwLjM4O1xufVxuLnYtaWNvbi0tc2l6ZS14LXNtYWxsIHtcbiAgZm9udC1zaXplOiBjYWxjKHZhcigtLXYtaWNvbi1zaXplLW11bHRpcGxpZXIpICogMWVtKTtcbn1cbi52LWljb24tLXNpemUtc21hbGwge1xuICBmb250LXNpemU6IGNhbGModmFyKC0tdi1pY29uLXNpemUtbXVsdGlwbGllcikgKiAxLjI1ZW0pO1xufVxuLnYtaWNvbi0tc2l6ZS1kZWZhdWx0IHtcbiAgZm9udC1zaXplOiBjYWxjKHZhcigtLXYtaWNvbi1zaXplLW11bHRpcGxpZXIpICogMS41ZW0pO1xufVxuLnYtaWNvbi0tc2l6ZS1sYXJnZSB7XG4gIGZvbnQtc2l6ZTogY2FsYyh2YXIoLS12LWljb24tc2l6ZS1tdWx0aXBsaWVyKSAqIDEuNzVlbSk7XG59XG4udi1pY29uLS1zaXplLXgtbGFyZ2Uge1xuICBmb250LXNpemU6IGNhbGModmFyKC0tdi1pY29uLXNpemUtbXVsdGlwbGllcikgKiAyZW0pO1xufVxuXG4udi1pY29uX19zdmcge1xuICBmaWxsOiBjdXJyZW50Q29sb3I7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbi52LWljb24tLXN0YXJ0IHtcbiAgbWFyZ2luLWlubGluZS1lbmQ6IDhweDtcbn1cblxuLnYtaWNvbi0tZW5kIHtcbiAgbWFyZ2luLWlubGluZS1zdGFydDogOHB4O1xufSIsIkBjaGFyc2V0IFwiVVRGLThcIjtcbi8qXG4gIFRPRE86IEFkZCBkb2NzIG9uIHdoZW4gdG8gdXNlIHBsYWNlaG9sZGVyIHZzIHdoZW4gdG8gdXNlIFNBU1MgdmFyaWFibGVcblxuICBQbGFjZWhvbGRlclxuICAgIC0gV2hlbiB3ZSB3YW50IHRvIGtlZXAgY3VzdG9taXphdGlvbiB0byBvdXIgc2VsZiBiZXR3ZWVuIHRlbXBsYXRlcyB1c2UgaXRcblxuICBWYXJpYWJsZXNcbiAgICAtIFdoZW4gd2Ugd2FudCB0byBhbGxvdyBjdXN0b21pemF0aW9uIGZyb20gYm90aCB1c2VyIGFuZCBvdXIgc2lkZVxuICAgIC0gWW91IGNhbiBhbHNvIHVzZSB2YXJpYWJsZSBmb3IgY29uc2lzdGVuY3kgKGUuZy4gbXggMSByZW0gc2hvdWxkIGJlIGFwcGxpZWQgdG8gYm90aCB2ZXJ0aWNhbCBuYXYgaXRlbXMgYW5kIHZlcnRpY2FsIG5hdiBoZWFkZXIpXG4qL1xuLypcbiAgICDinZcgSGVhZHMgdXBcbiAgICA9PT09PT09PT09PT09PT09PT1cbiAgICBIZXJlIHdlIGFzc3VtZSB3ZSB3aWxsIGFsd2F5cyB1c2Ugc2hvcnRoYW5kIHByb3BlcnR5IHdoaWNoIHdpbGwgYXBwbHkgc2FtZSBwYWRkaW5nIG9uIGZvdXIgc2lkZVxuICAgIFRoaXMgaXMgYmVjYXVzZSB0aGlzIGhhdmUgYmVlbiB1c2VkIGFzIHZhbHVlIG9mIHRvcCBwcm9wZXJ0eSBieSBgLnBvcHBlci1jb250ZW50YFxuKi9cbi8qIEN1c3RvbSBzaGFkb3cgb3BhY2l0eSAqL1xuLyogQ3VzdG9tIHNoYWRvdyBwYXJhbXMgKi9cbi52LWRpYWxvZyAudi1jYXJkLCAubGF5b3V0LWhvcml6b250YWwtbmF2IC5uYXYtZ3JvdXAgLnBvcHBlci1jb250ZW50ID4gZGl2IHtcbiAgLyogd2lkdGggKi9cbiAgLyogVHJhY2sgKi9cbiAgLyogSGFuZGxlICovXG59XG4udi1kaWFsb2cgLnYtY2FyZDo6LXdlYmtpdC1zY3JvbGxiYXIsIC5sYXlvdXQtaG9yaXpvbnRhbC1uYXYgLm5hdi1ncm91cCAucG9wcGVyLWNvbnRlbnQgPiBkaXY6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgYmFja2dyb3VuZDogcmdiKHZhcigtLXYtdGhlbWUtc3VyZmFjZSkpO1xuICBibG9jay1zaXplOiA4cHg7XG4gIGJvcmRlci1lbmQtZW5kLXJhZGl1czogMTRweDtcbiAgYm9yZGVyLXN0YXJ0LWVuZC1yYWRpdXM6IDE0cHg7XG4gIGlubGluZS1zaXplOiA0cHg7XG59XG4udi1kaWFsb2cgLnYtY2FyZDo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2ssIC5sYXlvdXQtaG9yaXpvbnRhbC1uYXYgLm5hdi1ncm91cCAucG9wcGVyLWNvbnRlbnQgPiBkaXY6Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNrIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG59XG4udi1kaWFsb2cgLnYtY2FyZDo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWIsIC5sYXlvdXQtaG9yaXpvbnRhbC1uYXYgLm5hdi1ncm91cCAucG9wcGVyLWNvbnRlbnQgPiBkaXY6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iIHtcbiAgYm9yZGVyLXJhZGl1czogMC41cmVtO1xuICBiYWNrZ3JvdW5kOiByZ2IodmFyKC0tdi10aGVtZS1wZXJmZWN0LXNjcm9sbGJhci10aHVtYikpO1xufVxuLnYtZGlhbG9nIC52LWNhcmQ6Oi13ZWJraXQtc2Nyb2xsYmFyLWNvcm5lciwgLmxheW91dC1ob3Jpem9udGFsLW5hdiAubmF2LWdyb3VwIC5wb3BwZXItY29udGVudCA+IGRpdjo6LXdlYmtpdC1zY3JvbGxiYXItY29ybmVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyog8J+RiSBUeXBvZ3JhcGh5IGN1c3RvbSB2YXJpYWJsZXMgKi9cbi8qIPCfkYkgU2hhZG93IG9wYWNpdGllcyAqL1xuLyog8J+RiSBDYXJkIHRyYW5zaXRpb24gcHJvcGVydGllcyAqL1xuLmxheW91dC1ob3Jpem9udGFsLW5hdiAubmF2LWxpbmsgYSwgLmxheW91dC1ob3Jpem9udGFsLW5hdiAubmF2LWdyb3VwIC5wb3BwZXItdHJpZ2dlcmVyIC5uYXYtZ3JvdXAtbGFiZWwge1xuICBwYWRkaW5nLWJsb2NrOiAwLjZyZW07XG4gIHBhZGRpbmctaW5saW5lOiAxcmVtO1xufVxuXG4ubGF5b3V0LWhvcml6b250YWwtbmF2IC5uYXYtbGluazpub3QoLnN1Yi1pdGVtKSBhLCAubGF5b3V0LWhvcml6b250YWwtbmF2IC5uYXYtZ3JvdXA6bm90KC5zdWItaXRlbSkgPiAucG9wcGVyLXRyaWdnZXJlciA+IC5uYXYtZ3JvdXAtbGFiZWwge1xuICBib3JkZXItcmFkaXVzOiAwLjRyZW07XG59XG5cbi5sYXlvdXQtaG9yaXpvbnRhbC1uYXYgLm5hdi1saW5rLmRpc2FibGVkLFxuLmxheW91dC1ob3Jpem9udGFsLW5hdiAubmF2LWdyb3VwLmRpc2FibGVkIHtcbiAgb3BhY2l0eTogdmFyKC0tdi1kaXNhYmxlZC1vcGFjaXR5KTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbi5sYXlvdXQtaG9yaXpvbnRhbC1uYXYgLm5hdi1saW5rLnN1Yi1pdGVtIGEucm91dGVyLWxpbmstYWN0aXZlIHtcbiAgYmFja2dyb3VuZDogcmdiYSh2YXIoLS12LXRoZW1lLXByaW1hcnkpLCAwLjEpO1xuICBjb2xvcjogcmdiKHZhcigtLXYtdGhlbWUtcHJpbWFyeSkpO1xufVxuXG4vKlxuICDihLnvuI8gVGhpcyBzdHlsZSBpcyByZXF1aXJlZCB3aGVuIHlvdSBkb24ndCBwcm92aWRlIGFueSB0cmFuc2l0aW9uIHRvIGhvcml6b250YWwgbmF2IGl0ZW1zIHZpYSB0aGVtZUNvbmZpZyBgdGhlbWVDb25maWcuaG9yaXpvbnRhbE5hdi50cmFuc2l0aW9uYFxuICBBbHNvLCB5b3UgaGF2ZSB0byBkaXNhYmxlIGl0IGlmIHlvdSBhcmUgdXNpbmcgdHJhbnNpdGlvblxuKi9cbi8qXG4gIOKEue+4jyBUaGlzIHN0eWxlIGlzIHJlcXVpcmVkIHdoZW4geW91IGRvbid0IHByb3ZpZGUgYW55IHRyYW5zaXRpb24gdG8gaG9yaXpvbnRhbCBuYXYgaXRlbXMgdmlhIHRoZW1lQ29uZmlnIGB0aGVtZUNvbmZpZy5ob3Jpem9udGFsTmF2LnRyYW5zaXRpb25gXG4gIEFsc28sIHlvdSBoYXZlIHRvIGRpc2FibGUgaXQgaWYgeW91IGFyZSB1c2luZyB0cmFuc2l0aW9uXG4qL1xuLmxheW91dC1ob3Jpem9udGFsLW5hdiAubmF2LWl0ZW0taWNvbiB7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBtYXJnaW4taW5saW5lLWVuZDogMC41cmVtO1xufVxuXG4ubGF5b3V0LWhvcml6b250YWwtbmF2IC5uYXYtbGluay5zdWItaXRlbSxcbi5sYXlvdXQtaG9yaXpvbnRhbC1uYXYgLm5hdi1ncm91cC5zdWItaXRlbSB7XG4gIG1pbi1pbmxpbmUtc2l6ZTogMTJyZW07XG59XG4ubGF5b3V0LWhvcml6b250YWwtbmF2IC5uYXYtbGluay5zdWItaXRlbSAubmF2LWl0ZW0tdGl0bGUsXG4ubGF5b3V0LWhvcml6b250YWwtbmF2IC5uYXYtZ3JvdXAuc3ViLWl0ZW0gLm5hdi1pdGVtLXRpdGxlIHtcbiAgbWFyZ2luLWlubGluZS1lbmQ6IDFyZW07XG59XG5cbi5sYXlvdXQtaG9yaXpvbnRhbC1uYXYgLm5hdi1ncm91cC5zdWItaXRlbSAuc3ViLWl0ZW0gLm5hdi1pdGVtLWljb24ge1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIG1hcmdpbi1pbmxpbmU6IDAuMzc1cmVtIDAuNzVyZW07XG4gIC8qXG4gICAg4oS577iPIGBtYXJnaW4taW5saW5lYCB3aWxsIGJlIChub3JtYWwgaWNvbiBmb250LXNpemUgLSBzbWFsbCBpY29uIGZvbnQtc2l6ZSkgLyAyXG4gICAgKDEuNXJlbSAtIDAuOXJlbSkgLyAyID0+IDAuNnJlbSAvIDIgPT4gMC4zcmVtXG4gICovXG59XG5cbi5sYXlvdXQtaG9yaXpvbnRhbC1uYXYgLm5hdi1ncm91cCAubmF2LWl0ZW0tdGl0bGUge1xuICBtYXJnaW4taW5saW5lLWVuZDogMC4zcmVtO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4ubGF5b3V0LWhvcml6b250YWwtbmF2IC5uYXYtZ3JvdXAgLnBvcHBlci1jb250ZW50IHtcbiAgYm94LXNoYWRvdzogMCAycHggOHB4IHJnYmEodmFyKC0tdi1zaGFkb3cta2V5LXVtYnJhLWNvbG9yKSwgdmFyKC0tdi1zaGFkb3ctc20tb3BhY2l0eSkpLCAwIDAgdHJhbnNwYXJlbnQsIDAgMCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJhZGl1czogNnB4O1xuICBwYWRkaW5nLWJsb2NrOiAwLjNyZW07XG59XG4ubGF5b3V0LW5hdi10eXBlLXZlcnRpY2FsIC5sYXlvdXQtdmVydGljYWwtbmF2IC5uYXYtaGVhZGVyIC5oZWFkZXItYWN0aW9uIHtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xufVxuXG4ubGF5b3V0LW5hdi10eXBlLXZlcnRpY2FsIC5sYXlvdXQtdmVydGljYWwtbmF2IC5uYXYtc2VjdGlvbi10aXRsZSwgLmxheW91dC1uYXYtdHlwZS12ZXJ0aWNhbCAubGF5b3V0LXZlcnRpY2FsLW5hdiAubmF2LWxpbmsgPiA6Zmlyc3QtY2hpbGQsXG4ubGF5b3V0LW5hdi10eXBlLXZlcnRpY2FsIC5sYXlvdXQtdmVydGljYWwtbmF2IC5uYXYtZ3JvdXAgPiA6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tYmxvY2s6IDA7XG4gIG1hcmdpbi1pbmxpbmU6IDAuNzVyZW07XG4gIHBhZGRpbmctYmxvY2s6IDA7XG4gIHBhZGRpbmctaW5saW5lOiAwLjc1cmVtO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4ubGF5b3V0LW5hdi10eXBlLXZlcnRpY2FsIC5sYXlvdXQtdmVydGljYWwtbmF2IC5uYXYtbGluayA+IDpmaXJzdC1jaGlsZCxcbi5sYXlvdXQtbmF2LXR5cGUtdmVydGljYWwgLmxheW91dC12ZXJ0aWNhbC1uYXYgLm5hdi1ncm91cCA+IDpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci1yYWRpdXM6IDAuNHJlbTtcbiAgYmxvY2stc2l6ZTogMi43NXJlbTtcbiAgLypcbiAgICDihLnvuI8gV2Ugd2lsbCB1c2UgYG1hcmdpbi1ibG9jay1lbmRgIGluc3RlYWQgb2YgYG1hcmdpbi1ibG9ja2AgdG8gZ2l2ZSBtb3JlIHNwYWNlIGZvciBzaGFkb3cgdG8gYXBwZWFyLlxuICAgIFdpdGggYG1hcmdpbi1ibG9ja2AsIGR1ZSB0byBzbWFsbCBzcGFjZSAoc3BhY2UgZ2V0cyBkaXZpZGVkIGJldHdlZW4gdG9wICYgYm90dG9tKSBzaGFkb3cgY3V0c1xuICAqL1xuICBtYXJnaW4tYmxvY2stZW5kOiAwLjM3NXJlbTtcbn1cblxuLmxheW91dC1uYXYtdHlwZS12ZXJ0aWNhbCAubGF5b3V0LXZlcnRpY2FsLW5hdiAubmF2LWxpbmsgLm5hdi1pdGVtLWljb24sXG4ubGF5b3V0LW5hdi10eXBlLXZlcnRpY2FsIC5sYXlvdXQtdmVydGljYWwtbmF2IC5uYXYtZ3JvdXAgLm5hdi1pdGVtLWljb24ge1xuICBmbGV4LXNocmluazogMDtcbiAgZm9udC1zaXplOiAxLjM3NXJlbTtcbiAgbWFyZ2luLWlubGluZS1lbmQ6IDAuNXJlbTtcbn1cblxuLmxheW91dC1uYXYtdHlwZS12ZXJ0aWNhbCAubGF5b3V0LXZlcnRpY2FsLW5hdiAubmF2LWdyb3VwIC5uYXYtZ3JvdXAgLm5hdi1pdGVtLWljb24sXG4ubGF5b3V0LW5hdi10eXBlLXZlcnRpY2FsIC5sYXlvdXQtdmVydGljYWwtbmF2IC5uYXYtZ3JvdXAgLm5hdi1saW5rIC5uYXYtaXRlbS1pY29uIHtcbiAgLypcbiAgICDihLnvuI8gYG1hcmdpbi1pbmxpbmVgIHdpbGwgYmUgKG5vcm1hbCBpY29uIGZvbnQtc2l6ZSAtIHNtYWxsIGljb24gZm9udC1zaXplKSAvIDJcbiAgICAoMS41cmVtIC0gMC45cmVtKSAvIDIgPT4gMC42cmVtIC8gMiA9PiAwLjNyZW1cbiAgKi9cbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBtYXJnaW4taW5saW5lOiAwLjMxMjVyZW0gMC44MTI1cmVtO1xufVxuXG4ubGF5b3V0LW5hdi10eXBlLXZlcnRpY2FsIC5sYXlvdXQtdmVydGljYWwtbmF2IC5uYXYtZ3JvdXAgLm5hdi1ncm91cCAubmF2LWxpbmsgLm5hdi1pdGVtLWljb24sXG4ubGF5b3V0LW5hdi10eXBlLXZlcnRpY2FsIC5sYXlvdXQtdmVydGljYWwtbmF2IC5uYXYtZ3JvdXAgLm5hdi1ncm91cCAubmF2LWdyb3VwIC5uYXYtaXRlbS1pY29uIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4ubGF5b3V0LW5hdi10eXBlLXZlcnRpY2FsIC5sYXlvdXQtdmVydGljYWwtbmF2IC5uYXYtZ3JvdXAuYWN0aXZlID4gOmZpcnN0LWNoaWxkOjpiZWZvcmUsIC5sYXlvdXQtbmF2LXR5cGUtdmVydGljYWwgLmxheW91dC12ZXJ0aWNhbC1uYXYgLm5hdi1ncm91cC5vcGVuID4gOmZpcnN0LWNoaWxkOjpiZWZvcmUge1xuICBvcGFjaXR5OiBjYWxjKHZhcigtLXYtc2VsZWN0ZWQtb3BhY2l0eSkgKiB2YXIoLS12LXRoZW1lLW92ZXJsYXktbXVsdGlwbGllcikpO1xufVxuLmxheW91dC1uYXYtdHlwZS12ZXJ0aWNhbCAubGF5b3V0LXZlcnRpY2FsLW5hdiAubmF2LWdyb3VwLmFjdGl2ZSA+IDpob3ZlcjpmaXJzdC1jaGlsZCAubmF2LWdyb3VwLmFjdGl2ZSA+IDpmaXJzdC1jaGlsZDo6YmVmb3JlLCAubGF5b3V0LW5hdi10eXBlLXZlcnRpY2FsIC5sYXlvdXQtdmVydGljYWwtbmF2IC5uYXYtZ3JvdXAub3BlbiA+IDpob3ZlcjpmaXJzdC1jaGlsZCAubmF2LWdyb3VwLmFjdGl2ZSA+IDpmaXJzdC1jaGlsZDo6YmVmb3JlLCAubGF5b3V0LW5hdi10eXBlLXZlcnRpY2FsIC5sYXlvdXQtdmVydGljYWwtbmF2IC5uYXYtZ3JvdXAuYWN0aXZlID4gOmhvdmVyOmZpcnN0LWNoaWxkIC5uYXYtZ3JvdXAub3BlbiA+IDpmaXJzdC1jaGlsZDo6YmVmb3JlLCAubGF5b3V0LW5hdi10eXBlLXZlcnRpY2FsIC5sYXlvdXQtdmVydGljYWwtbmF2IC5uYXYtZ3JvdXAub3BlbiA+IDpob3ZlcjpmaXJzdC1jaGlsZCAubmF2LWdyb3VwLm9wZW4gPiA6Zmlyc3QtY2hpbGQ6OmJlZm9yZSB7XG4gIG9wYWNpdHk6IGNhbGModmFyKC0tdi1zZWxlY3RlZC1vcGFjaXR5KSArIHZhcigtLXYtaG92ZXItb3BhY2l0eSkgKiB2YXIoLS12LXRoZW1lLW92ZXJsYXktbXVsdGlwbGllcikpO1xufVxuLmxheW91dC1uYXYtdHlwZS12ZXJ0aWNhbCAubGF5b3V0LXZlcnRpY2FsLW5hdiAubmF2LWdyb3VwLmFjdGl2ZSA+IDpmb2N1cy12aXNpYmxlOmZpcnN0LWNoaWxkIC5uYXYtZ3JvdXAuYWN0aXZlID4gOmZpcnN0LWNoaWxkOjpiZWZvcmUsIC5sYXlvdXQtbmF2LXR5cGUtdmVydGljYWwgLmxheW91dC12ZXJ0aWNhbC1uYXYgLm5hdi1ncm91cC5vcGVuID4gOmZvY3VzLXZpc2libGU6Zmlyc3QtY2hpbGQgLm5hdi1ncm91cC5hY3RpdmUgPiA6Zmlyc3QtY2hpbGQ6OmJlZm9yZSwgLmxheW91dC1uYXYtdHlwZS12ZXJ0aWNhbCAubGF5b3V0LXZlcnRpY2FsLW5hdiAubmF2LWdyb3VwLmFjdGl2ZSA+IDpmb2N1cy12aXNpYmxlOmZpcnN0LWNoaWxkIC5uYXYtZ3JvdXAub3BlbiA+IDpmaXJzdC1jaGlsZDo6YmVmb3JlLCAubGF5b3V0LW5hdi10eXBlLXZlcnRpY2FsIC5sYXlvdXQtdmVydGljYWwtbmF2IC5uYXYtZ3JvdXAub3BlbiA+IDpmb2N1cy12aXNpYmxlOmZpcnN0LWNoaWxkIC5uYXYtZ3JvdXAub3BlbiA+IDpmaXJzdC1jaGlsZDo6YmVmb3JlIHtcbiAgb3BhY2l0eTogY2FsYyh2YXIoLS12LXNlbGVjdGVkLW9wYWNpdHkpICsgdmFyKC0tdi1mb2N1cy1vcGFjaXR5KSAqIHZhcigtLXYtdGhlbWUtb3ZlcmxheS1tdWx0aXBsaWVyKSk7XG59XG5Ac3VwcG9ydHMgbm90IHNlbGVjdG9yKDpmb2N1cy12aXNpYmxlKSB7XG4gIC5sYXlvdXQtbmF2LXR5cGUtdmVydGljYWwgLmxheW91dC12ZXJ0aWNhbC1uYXYgLm5hdi1ncm91cC5hY3RpdmUgPiA6Zm9jdXM6Zmlyc3QtY2hpbGQ6OmJlZm9yZSwgLmxheW91dC1uYXYtdHlwZS12ZXJ0aWNhbCAubGF5b3V0LXZlcnRpY2FsLW5hdiAubmF2LWdyb3VwLm9wZW4gPiA6Zm9jdXM6Zmlyc3QtY2hpbGQ6OmJlZm9yZSB7XG4gICAgb3BhY2l0eTogY2FsYyh2YXIoLS12LXNlbGVjdGVkLW9wYWNpdHkpICsgdmFyKC0tdi1mb2N1cy1vcGFjaXR5KSAqIHZhcigtLXYtdGhlbWUtb3ZlcmxheS1tdWx0aXBsaWVyKSk7XG4gIH1cbn1cblxuLmxheW91dC1uYXYtdHlwZS12ZXJ0aWNhbCAubGF5b3V0LXZlcnRpY2FsLW5hdiAubmF2LXNlY3Rpb24tdGl0bGUge1xuICBibG9jay1zaXplOiAxLjVyZW07XG4gIGNvbG9yOiByZ2JhKHZhcigtLXYtdGhlbWUtb24tc3VyZmFjZSksIHZhcigtLXYtZGlzYWJsZWQtb3BhY2l0eSkpO1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi5sYXlvdXQtbmF2LXR5cGUtdmVydGljYWwgLmxheW91dC12ZXJ0aWNhbC1uYXYgLm5hdi1pdGVtLWJhZGdlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBib3JkZXItcmFkaXVzOiAxLjVyZW07XG4gIGZvbnQtc2l6ZTogMC44ZW07XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBwYWRkaW5nLWJsb2NrOiAwLjI1ZW07XG4gIHBhZGRpbmctaW5saW5lOiAwLjU1ZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4ubGF5b3V0LWhvcml6b250YWwtbmF2LCAubGF5b3V0LW5hdi10eXBlLXZlcnRpY2FsIC5sYXlvdXQtdmVydGljYWwtbmF2IHtcbiAgY29sb3I6IHJnYmEodmFyKC0tdi10aGVtZS1vbi1zdXJmYWNlKSwgdmFyKC0tdi1oaWdoLWVtcGhhc2lzLW9wYWNpdHkpKTtcbn1cbi5sYXlvdXQtaG9yaXpvbnRhbC1uYXYgLm5hdi1pdGVtLXRpdGxlLCAubGF5b3V0LW5hdi10eXBlLXZlcnRpY2FsIC5sYXlvdXQtdmVydGljYWwtbmF2IC5uYXYtaXRlbS10aXRsZSB7XG4gIGxldHRlci1zcGFjaW5nOiAwLjE1cHg7XG59XG4ubGF5b3V0LWhvcml6b250YWwtbmF2IC5uYXYtc2VjdGlvbi10aXRsZSwgLmxheW91dC1uYXYtdHlwZS12ZXJ0aWNhbCAubGF5b3V0LXZlcnRpY2FsLW5hdiAubmF2LXNlY3Rpb24tdGl0bGUge1xuICBsZXR0ZXItc3BhY2luZzogMC40cHg7XG59XG5cbi8qXG4gICAgQWN0aXZlIG5hdiBsaW5rIHN0eWxlcyBmb3IgaG9yaXpvbnRhbCAmIHZlcnRpY2FsIG5hdlxuXG4gICAgRm9yIGhvcml6b250YWwgbmF2IGl0IHdpbGwgYmUgb25seSBhcHBsaWVkIHRvIHRvcCBsZXZlbCBuYXYgaXRlbXNcbiAgICBGb3IgdmVydGljYWwgbmF2IGl0IHdpbGwgYmUgb25seSBhcHBsaWVkIHRvIG5hdiBsaW5rcyAobm90IG5hdiBncm91cHMpXG4qL1xuLmxheW91dC1ob3Jpem9udGFsLW5hdiAubmF2LWxpbms6bm90KC5zdWItaXRlbSkgYS5yb3V0ZXItbGluay1hY3RpdmUsIC5sYXlvdXQtaG9yaXpvbnRhbC1uYXYgLm5hdi1ncm91cDpub3QoLnN1Yi1pdGVtKS5hY3RpdmUgPiAucG9wcGVyLXRyaWdnZXJlciA+IC5uYXYtZ3JvdXAtbGFiZWwsIC5sYXlvdXQtbmF2LXR5cGUtdmVydGljYWwgLmxheW91dC12ZXJ0aWNhbC1uYXYgLm5hdi1saW5rID4gLnJvdXRlci1saW5rLWV4YWN0LWFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYih2YXIoLS12LWdsb2JhbC10aGVtZS1wcmltYXJ5KSk7XG4gIGNvbG9yOiByZ2IodmFyKC0tdi10aGVtZS1vbi1wcmltYXJ5KSk7XG4gIGJveC1zaGFkb3c6IDAgM3B4IDhweCByZ2JhKHZhcigtLXYtc2hhZG93LWtleS11bWJyYS1jb2xvciksIDAuMTQpLCAwIDAgdHJhbnNwYXJlbnQsIDAgMCB0cmFuc3BhcmVudDtcbn1cblxuLmxheW91dC1ob3Jpem9udGFsLW5hdiAubmF2LWxpbmsgYSwgLmxheW91dC1uYXYtdHlwZS12ZXJ0aWNhbCAubGF5b3V0LXZlcnRpY2FsLW5hdiAubmF2LWxpbmsgYSB7XG4gIGNvbG9yOiBpbmhlcml0O1xufVxuXG4ubGF5b3V0LW5hdmJhciB7XG4gIGNvbG9yOiByZ2JhKHZhcigtLXYtdGhlbWUtb24tc3VyZmFjZSksIHZhcigtLXYtaGlnaC1lbXBoYXNpcy1vcGFjaXR5KSk7XG59XG5cbi5sYXlvdXQtd3JhcHBlci5sYXlvdXQtbmF2LXR5cGUtdmVydGljYWwgLm5hdmJhci1ibHVyLmxheW91dC1uYXZiYXIgLm5hdmJhci1jb250ZW50LWNvbnRhaW5lciwgLmxheW91dC13cmFwcGVyLmxheW91dC1uYXYtdHlwZS1ob3Jpem9udGFsIC5oZWFkZXItYmx1ci5sYXlvdXQtbmF2YmFyLWFuZC1uYXYtY29udGFpbmVyIHtcbiAgLyogc3R5bGVsaW50LWRpc2FibGUgcHJvcGVydHktbm8tdmVuZG9yLXByZWZpeCAqL1xuICAtd2Via2l0LWJhY2tkcm9wLWZpbHRlcjogYmx1cig2cHgpO1xuICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoNnB4KTtcbiAgLyogc3R5bGVsaW50LWVuYWJsZSAqL1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IodmFyKC0tdi10aGVtZS1zdXJmYWNlKSwgMC45KTtcbn1cblxuLmxheW91dC13cmFwcGVyLmxheW91dC1uYXYtdHlwZS12ZXJ0aWNhbCAubGF5b3V0LW5hdmJhciAubmF2YmFyLWNvbnRlbnQtY29udGFpbmVyIHtcbiAgYm94LXNoYWRvdzogMCAycHggOHB4IHJnYmEodmFyKC0tdi1zaGFkb3cta2V5LXVtYnJhLWNvbG9yKSwgdmFyKC0tdi1zaGFkb3ctc20tb3BhY2l0eSkpLCAwIDAgdHJhbnNwYXJlbnQsIDAgMCB0cmFuc3BhcmVudDtcbiAgcGFkZGluZy1pbmxpbmU6IDEuMnJlbTtcbn1cblxuLmxheW91dC13cmFwcGVyLmxheW91dC1uYXYtdHlwZS12ZXJ0aWNhbCAubGF5b3V0LW5hdmJhci5uYXZiYXItYmx1ciB7XG4gIGlzb2xhdGlvbjogaXNvbGF0ZTtcbn1cbi5sYXlvdXQtd3JhcHBlci5sYXlvdXQtbmF2LXR5cGUtdmVydGljYWwgLmxheW91dC1uYXZiYXIubmF2YmFyLWJsdXI6OmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAtMTtcbiAgLyogc3R5bGVsaW50LWRpc2FibGUgcHJvcGVydHktbm8tdmVuZG9yLXByZWZpeCAqL1xuICAtd2Via2l0LWJhY2tkcm9wLWZpbHRlcjogYmx1cigxMHB4KTtcbiAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDEwcHgpO1xuICAvKiBzdHlsZWxpbnQtZW5hYmxlICovXG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYmEodmFyKC0tdi10aGVtZS1iYWNrZ3JvdW5kKSwgNzAlKSA0NCUsIHJnYmEodmFyKC0tdi10aGVtZS1iYWNrZ3JvdW5kKSwgNDMlKSA3MyUsIHJnYmEodmFyKC0tdi10aGVtZS1iYWNrZ3JvdW5kKSwgMCUpKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdDtcbiAgYmxvY2stc2l6ZTogY2FsYyg1NHB4ICsgMXJlbSArIDAuNXJlbSk7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGluc2V0LWJsb2NrLXN0YXJ0OiAtMXJlbTtcbiAgaW5zZXQtaW5saW5lOiAwIDA7XG4gIC8qIHN0eWxlbGludC1kaXNhYmxlIHByb3BlcnR5LW5vLXZlbmRvci1wcmVmaXggKi9cbiAgLXdlYmtpdC1tYXNrOiBsaW5lYXItZ3JhZGllbnQoYmxhY2ssIGJsYWNrIDE4JSwgdHJhbnNwYXJlbnQgMTAwJSk7XG4gIG1hc2s6IGxpbmVhci1ncmFkaWVudChibGFjaywgYmxhY2sgMTglLCB0cmFuc3BhcmVudCAxMDAlKTtcbiAgLyogc3R5bGVsaW50LWVuYWJsZSAqL1xufVxuXG4ubGF5b3V0LXdyYXBwZXIubGF5b3V0LW5hdi10eXBlLWhvcml6b250YWwgLmxheW91dC1uYXZiYXItYW5kLW5hdi1jb250YWluZXIge1xuICBib3gtc2hhZG93OiAwIDNweCA4cHggcmdiYSh2YXIoLS12LXNoYWRvdy1rZXktdW1icmEtY29sb3IpLCAwLjE0KSwgMCAwIHRyYW5zcGFyZW50LCAwIDAgdHJhbnNwYXJlbnQ7XG4gIHotaW5kZXg6IDEwMDE7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYih2YXIoLS12LXRoZW1lLXN1cmZhY2UpKTtcbn1cbi5sYXlvdXQtd3JhcHBlci5sYXlvdXQtbmF2LXR5cGUtaG9yaXpvbnRhbCAubGF5b3V0LW5hdmJhciB7XG4gIGJvcmRlci1ibG9jay1lbmQ6IDFweCBzb2xpZCByZ2JhKHZhcigtLXYtYm9yZGVyLWNvbG9yKSwgdmFyKC0tdi1ib3JkZXItb3BhY2l0eSkpO1xufVxuXG4ubGF5b3V0LXdyYXBwZXIubGF5b3V0LW5hdi10eXBlLWhvcml6b250YWwgLmxheW91dC1ob3Jpem9udGFsLW5hdiB7XG4gIHBhZGRpbmctYmxvY2s6IDAuNXJlbTtcbn1cblxuLmxheW91dC13cmFwcGVyLmxheW91dC1uYXYtdHlwZS1ob3Jpem9udGFsIC5sYXlvdXQtaG9yaXpvbnRhbC1uYXYgLm5hdi1pdGVtcyB7XG4gIGdhcDogNnB4O1xufVxuXG4ubGF5b3V0LWhvcml6b250YWwtbmF2LCAubGF5b3V0LW5hdi10eXBlLXZlcnRpY2FsIC5sYXlvdXQtdmVydGljYWwtbmF2IHtcbiAgY29sb3I6IHJnYmEodmFyKC0tdi10aGVtZS1vbi1zdXJmYWNlKSwgdmFyKC0tdi1tZWRpdW0tZW1waGFzaXMtb3BhY2l0eSkpO1xufVxuLmxheW91dC1ob3Jpem9udGFsLW5hdiAubmF2LWl0ZW0tdGl0bGUsIC5sYXlvdXQtbmF2LXR5cGUtdmVydGljYWwgLmxheW91dC12ZXJ0aWNhbC1uYXYgLm5hdi1pdGVtLXRpdGxlIHtcbiAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcbn1cblxuLypcbiAgICBBY3RpdmUgbmF2IGxpbmsgc3R5bGVzIGZvciBob3Jpem9udGFsICYgdmVydGljYWwgbmF2XG5cbiAgICBGb3IgaG9yaXpvbnRhbCBuYXYgaXQgd2lsbCBiZSBvbmx5IGFwcGxpZWQgdG8gdG9wIGxldmVsIG5hdiBpdGVtc1xuICAgIEZvciB2ZXJ0aWNhbCBuYXYgaXQgd2lsbCBiZSBvbmx5IGFwcGxpZWQgdG8gbmF2IGxpbmtzIChub3QgbmF2IGdyb3VwcylcbiovXG4ubGF5b3V0LWhvcml6b250YWwtbmF2IC5uYXYtbGluazpub3QoLnN1Yi1pdGVtKSBhLnJvdXRlci1saW5rLWFjdGl2ZSwgLmxheW91dC1ob3Jpem9udGFsLW5hdiAubmF2LWdyb3VwOm5vdCguc3ViLWl0ZW0pLmFjdGl2ZSA+IC5wb3BwZXItdHJpZ2dlcmVyID4gLm5hdi1ncm91cC1sYWJlbCwgLmxheW91dC1uYXYtdHlwZS12ZXJ0aWNhbCAubGF5b3V0LXZlcnRpY2FsLW5hdiAubmF2LWxpbmsgPiAucm91dGVyLWxpbmstZXhhY3QtYWN0aXZlIHtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDI3MGRlZywgcmdiYSh2YXIoLS12LWdsb2JhbC10aGVtZS1wcmltYXJ5KSwgMC43KSAwJSwgcmdiKHZhcigtLXYtZ2xvYmFsLXRoZW1lLXByaW1hcnkpKSAxMDAlKSAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiAwIDJweCA2cHggcmdiYSh2YXIoLS12LWdsb2JhbC10aGVtZS1wcmltYXJ5KSwgMC4zKTtcbn1cbi5sYXlvdXQtaG9yaXpvbnRhbC1uYXYgLm5hdi1saW5rOm5vdCguc3ViLWl0ZW0pIGEucm91dGVyLWxpbmstYWN0aXZlIGksIC5sYXlvdXQtaG9yaXpvbnRhbC1uYXYgLm5hdi1ncm91cDpub3QoLnN1Yi1pdGVtKS5hY3RpdmUgPiAucG9wcGVyLXRyaWdnZXJlciA+IC5uYXYtZ3JvdXAtbGFiZWwgaSwgLmxheW91dC1uYXYtdHlwZS12ZXJ0aWNhbCAubGF5b3V0LXZlcnRpY2FsLW5hdiAubmF2LWxpbmsgPiAucm91dGVyLWxpbmstZXhhY3QtYWN0aXZlIGkge1xuICBjb2xvcjogcmdiKHZhcigtLXYtdGhlbWUtb24tcHJpbWFyeSkpICFpbXBvcnRhbnQ7XG59XG5odG1sW2Rpcj1ydGxdIC5sYXlvdXQtaG9yaXpvbnRhbC1uYXYgLm5hdi1saW5rOm5vdCguc3ViLWl0ZW0pIGEucm91dGVyLWxpbmstZXhhY3QtYWN0aXZlLnJvdXRlci1saW5rLWFjdGl2ZSwgLmxheW91dC1ob3Jpem9udGFsLW5hdiAubmF2LWxpbms6bm90KC5zdWItaXRlbSkgaHRtbFtkaXI9cnRsXSBhLnJvdXRlci1saW5rLWV4YWN0LWFjdGl2ZS5yb3V0ZXItbGluay1hY3RpdmUsIGh0bWxbZGlyPXJ0bF0gLmxheW91dC1ob3Jpem9udGFsLW5hdiAubmF2LWdyb3VwOm5vdCguc3ViLWl0ZW0pLmFjdGl2ZSA+IC5wb3BwZXItdHJpZ2dlcmVyID4gLnJvdXRlci1saW5rLWV4YWN0LWFjdGl2ZS5uYXYtZ3JvdXAtbGFiZWwsIC5sYXlvdXQtaG9yaXpvbnRhbC1uYXYgaHRtbFtkaXI9cnRsXSAubmF2LWdyb3VwOm5vdCguc3ViLWl0ZW0pLmFjdGl2ZSA+IC5wb3BwZXItdHJpZ2dlcmVyID4gLnJvdXRlci1saW5rLWV4YWN0LWFjdGl2ZS5uYXYtZ3JvdXAtbGFiZWwsIGh0bWxbZGlyPXJ0bF0gLmxheW91dC1uYXYtdHlwZS12ZXJ0aWNhbCAubGF5b3V0LXZlcnRpY2FsLW5hdiAubmF2LWxpbmsgPiAucm91dGVyLWxpbmstZXhhY3QtYWN0aXZlLCAubGF5b3V0LW5hdi10eXBlLXZlcnRpY2FsIC5sYXlvdXQtdmVydGljYWwtbmF2IGh0bWxbZGlyPXJ0bF0gLm5hdi1saW5rID4gLnJvdXRlci1saW5rLWV4YWN0LWFjdGl2ZSB7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgtMjcwZGVnLCByZ2JhKHZhcigtLXYtZ2xvYmFsLXRoZW1lLXByaW1hcnkpLCAwLjcpIDAlLCByZ2IodmFyKC0tdi1nbG9iYWwtdGhlbWUtcHJpbWFyeSkpIDEwMCUpICFpbXBvcnRhbnQ7XG59XG5cbi5sYXlvdXQtbmF2LXR5cGUtdmVydGljYWwgLmxheW91dC12ZXJ0aWNhbC1uYXYgLm5hdi1oZWFkZXIgLmhlYWRlci1hY3Rpb24ge1xuICBmb250LXNpemU6IDA7XG59XG5cbi5sYXlvdXQtbmF2LXR5cGUtdmVydGljYWwgLmxheW91dC12ZXJ0aWNhbC1uYXYgLm5hdi1pdGVtLWJhZGdlIHtcbiAgei1pbmRleDogMTtcbiAgZm9udC1zaXplOiAwLjgxMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjI1cmVtO1xuICBtYXJnaW4taW5saW5lLWVuZDogMC41cmVtO1xuICBwYWRkaW5nLWJsb2NrOiAwLjEyNXJlbTtcbiAgcGFkZGluZy1pbmxpbmU6IDAuNjI1cmVtO1xufVxuXG4ubGF5b3V0LW5hdi10eXBlLXZlcnRpY2FsIC5sYXlvdXQtdmVydGljYWwtbmF2IC5uYXYtbGluayA+IDpmaXJzdC1jaGlsZCxcbi5sYXlvdXQtbmF2LXR5cGUtdmVydGljYWwgLmxheW91dC12ZXJ0aWNhbC1uYXYgLm5hdi1ncm91cCA+IDpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci1yYWRpdXM6IDAuMzc1cmVtO1xuICBibG9jay1zaXplOiAyLjM3NXJlbTtcbiAgbWFyZ2luLWJsb2NrLWVuZDogMC4zNzVyZW07XG59XG5cbi5sYXlvdXQtbmF2LXR5cGUtdmVydGljYWwgLmxheW91dC12ZXJ0aWNhbC1uYXYgLm5hdi1ncm91cCAubmF2LWdyb3VwIC5uYXYtbGluayAubmF2LWl0ZW0taWNvbixcbi5sYXlvdXQtbmF2LXR5cGUtdmVydGljYWwgLmxheW91dC12ZXJ0aWNhbC1uYXYgLm5hdi1ncm91cCAubmF2LWdyb3VwIC5uYXYtZ3JvdXAgLm5hdi1pdGVtLWljb24ge1xuICBtYXJnaW4taW5saW5lOiAxNXB4IDAuODEyNXJlbTtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbn1cblxuLmxheW91dC1uYXYtdHlwZS12ZXJ0aWNhbCAubGF5b3V0LXZlcnRpY2FsLW5hdiAubmF2LXNlY3Rpb24tdGl0bGUge1xuICBibG9jay1zaXplOiAxLjI1cmVtO1xuICBmb250LXNpemU6IDAuODEyNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMTI1cmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4ubGF5b3V0LW5hdi10eXBlLXZlcnRpY2FsIC5sYXlvdXQtdmVydGljYWwtbmF2IC5uYXYtZ3JvdXAgLm5hdi1ncm91cCAubmF2LWl0ZW0taWNvbixcbi5sYXlvdXQtbmF2LXR5cGUtdmVydGljYWwgLmxheW91dC12ZXJ0aWNhbC1uYXYgLm5hdi1ncm91cCAubmF2LWxpbmsgLm5hdi1pdGVtLWljb24ge1xuICBjb2xvcjogcmdiYSh2YXIoLS12LXRoZW1lLW9uLXN1cmZhY2UpLCB2YXIoLS12LW1lZGl1bS1lbXBoYXNpcy1vcGFjaXR5KSk7XG59XG5cbi5sYXlvdXQtaG9yaXpvbnRhbC1uYXYgLm5hdi1pdGVtLWljb24ge1xuICBmb250LXNpemU6IDEuMzc1cmVtO1xufVxuXG4ubGF5b3V0LWhvcml6b250YWwtbmF2IC5uYXYtbGluayBhLCAubGF5b3V0LWhvcml6b250YWwtbmF2IC5uYXYtZ3JvdXAgLnBvcHBlci10cmlnZ2VyZXIgLm5hdi1ncm91cC1sYWJlbCB7XG4gIHBhZGRpbmctYmxvY2s6IDAuNXJlbTtcbiAgcGFkZGluZy1pbmxpbmU6IDFyZW07XG59XG5cbi5sYXlvdXQtaG9yaXpvbnRhbC1uYXYgLm5hdi1ncm91cCAucG9wcGVyLWNvbnRlbnQgLm5hdi1saW5rLnN1Yi1pdGVtIGEsXG4ubGF5b3V0LWhvcml6b250YWwtbmF2IC5uYXYtZ3JvdXAgLnBvcHBlci1jb250ZW50IC5uYXYtZ3JvdXAtbGFiZWwsXG4ubGF5b3V0LWhvcml6b250YWwtbmF2IC5uYXYtbGluayAucG9wcGVyLWNvbnRlbnQgLm5hdi1saW5rLnN1Yi1pdGVtIGEsXG4ubGF5b3V0LWhvcml6b250YWwtbmF2IC5uYXYtbGluayAucG9wcGVyLWNvbnRlbnQgLm5hdi1ncm91cC1sYWJlbCB7XG4gIGJvcmRlci1yYWRpdXM6IDAuMzc1cmVtO1xuICBtYXJnaW4tYmxvY2s6IDAuMTI1cmVtO1xuICBtYXJnaW4taW5saW5lOiAwLjVyZW07XG59XG5cbi5sYXlvdXQtaG9yaXpvbnRhbC1uYXYgLm5hdi1saW5rLnN1Yi1pdGVtIGEucm91dGVyLWxpbmstYWN0aXZlIHtcbiAgYmFja2dyb3VuZDogcmdiYSh2YXIoLS12LXRoZW1lLXByaW1hcnkpLCAwLjA4KTtcbn1cbi5sYXlvdXQtaG9yaXpvbnRhbC1uYXYgLm5hdi1saW5rLnN1Yi1pdGVtIGEucm91dGVyLWxpbmstYWN0aXZlOjpiZWZvcmUge1xuICBjb250ZW50OiBub25lO1xufVxuXG4ubGF5b3V0LWhvcml6b250YWwtbmF2IC5uYXYtZ3JvdXAgLnBvcHBlci1jb250ZW50IHtcbiAgYm94LXNoYWRvdzogMCA0cHggMThweCByZ2JhKHZhcigtLXYtc2hhZG93LWtleS11bWJyYS1jb2xvciksIHZhcigtLXYtc2hhZG93LWxnLW9wYWNpdHkpKSwgMCAwIHRyYW5zcGFyZW50LCAwIDAgdHJhbnNwYXJlbnQ7XG59XG5cbi5sYXlvdXQtaG9yaXpvbnRhbC1uYXYgLm5hdi1saW5rOm5vdCguc3ViLWl0ZW0pIGEsIC5sYXlvdXQtaG9yaXpvbnRhbC1uYXYgLm5hdi1ncm91cDpub3QoLnN1Yi1pdGVtKSA+IC5wb3BwZXItdHJpZ2dlcmVyID4gLm5hdi1ncm91cC1sYWJlbCB7XG4gIGJvcmRlci1yYWRpdXM6IDAuMzc1cmVtO1xufVxuXG4ubGF5b3V0LWhvcml6b250YWwtbmF2IC5uYXYtZ3JvdXAgLm5hdi1pdGVtLXRpdGxlIHtcbiAgbGluZS1oZWlnaHQ6IDEuMzc1cmVtO1xufVxuXG4ubGF5b3V0LWhvcml6b250YWwtbmF2IC5uYXYtZ3JvdXAuc3ViLWl0ZW0gLnN1Yi1pdGVtIC5uYXYtaXRlbS1pY29uIHtcbiAgbWFyZ2luLWlubGluZTogMCAwLjVyZW07XG59XG5cbi5sYXlvdXQtd3JhcHBlci5sYXlvdXQtbmF2LXR5cGUtdmVydGljYWwgLmxheW91dC1uYXZiYXIgLm5hdmJhci1jb250ZW50LWNvbnRhaW5lciB7XG4gIHBhZGRpbmctaW5saW5lOiAxLjVyZW07XG59XG5cbi5sYXlvdXQtd3JhcHBlci5sYXlvdXQtbmF2LXR5cGUtaG9yaXpvbnRhbCAubGF5b3V0LW5hdmJhci1hbmQtbmF2LWNvbnRhaW5lciB7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDRweCAwIHJnYmEodmFyKC0tdi1zaGFkb3cta2V5LXVtYnJhLWNvbG9yKSwgMC4xKTtcbn1cbi5sYXlvdXQtd3JhcHBlci5sYXlvdXQtbmF2LXR5cGUtaG9yaXpvbnRhbCAuaGVhZGVyLWJsdXIubGF5b3V0LW5hdmJhci1hbmQtbmF2LWNvbnRhaW5lciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYih2YXIoLS12LXRoZW1lLXN1cmZhY2UpLCAwLjk2KTtcbn1cblxuLmxheW91dC13cmFwcGVyLmxheW91dC1uYXYtdHlwZS12ZXJ0aWNhbCAubmF2YmFyLWJsdXIubGF5b3V0LW5hdmJhciAubmF2YmFyLWNvbnRlbnQtY29udGFpbmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKHZhcigtLXYtdGhlbWUtc3VyZmFjZSksIDAuODgpO1xufVxuXG4ubGF5b3V0LW5hdi10eXBlLXZlcnRpY2FsIC5sYXlvdXQtdmVydGljYWwtbmF2IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKHZhcigtLXYtdGhlbWUtc3VyZmFjZSkpO1xufVxuLmxheW91dC12ZXJ0aWNhbC1uYXYtY29sbGFwc2VkLmxheW91dC1uYXYtdHlwZS12ZXJ0aWNhbCAubGF5b3V0LXZlcnRpY2FsLW5hdi5ob3ZlcmVkIHtcbiAgYm94LXNoYWRvdzogMCAzcHggMTJweCByZ2JhKHZhcigtLXYtc2hhZG93LWtleS11bWJyYS1jb2xvciksIHZhcigtLXYtc2hhZG93LW1kLW9wYWNpdHkpKSwgMCAwIHRyYW5zcGFyZW50LCAwIDAgdHJhbnNwYXJlbnQ7XG59XG5cbi5sYXlvdXQtbmF2LXR5cGUtdmVydGljYWwgLmxheW91dC12ZXJ0aWNhbC1uYXYgLm5hdi1oZWFkZXIge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nOiAxLjI1cmVtIDAuNXJlbTtcbiAgbWFyZ2luLWlubGluZTogMC43NXJlbTtcbiAgbWluLWJsb2NrLXNpemU6IDU0cHg7XG59XG4ubGF5b3V0LW5hdi10eXBlLXZlcnRpY2FsIC5sYXlvdXQtdmVydGljYWwtbmF2IC5uYXYtaGVhZGVyIC5hcHAtbG9nbyB7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4yNXMgZWFzZS1pbi1vdXQ7XG59XG4ubGF5b3V0LXZlcnRpY2FsLW5hdi1jb2xsYXBzZWQubGF5b3V0LW5hdi10eXBlLXZlcnRpY2FsIC5sYXlvdXQtdmVydGljYWwtbmF2Om5vdCguaG92ZXJlZCkgLm5hdi1oZWFkZXIgLmFwcC1sb2dvIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xcHgpO1xufVxuW2Rpcj1ydGxdIC5sYXlvdXQtdmVydGljYWwtbmF2LWNvbGxhcHNlZC5sYXlvdXQtbmF2LXR5cGUtdmVydGljYWwgLmxheW91dC12ZXJ0aWNhbC1uYXY6bm90KC5ob3ZlcmVkKSAubmF2LWhlYWRlciAuYXBwLWxvZ28ge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMXB4KTtcbn1cblxuLmxheW91dC1uYXYtdHlwZS12ZXJ0aWNhbCAubGF5b3V0LXZlcnRpY2FsLW5hdiAudmVydGljYWwtbmF2LWl0ZW1zLXNoYWRvdyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHJnYih2YXIoLS12LXRoZW1lLXN1cmZhY2UpKSA1JSwgcmdiYSh2YXIoLS12LXRoZW1lLXN1cmZhY2UpLCA3NSUpIDQ1JSwgcmdiYSh2YXIoLS12LXRoZW1lLXN1cmZhY2UpLCAyMCUpIDgwJSwgdHJhbnNwYXJlbnQpO1xuICBibG9jay1zaXplOiA1NXB4O1xuICBpbmxpbmUtc2l6ZTogMTAwJTtcbiAgaW5zZXQtYmxvY2stc3RhcnQ6IGNhbGMoNTRweCAtIDJweCk7XG4gIG9wYWNpdHk6IDA7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMTVzIGVhc2UtaW4tb3V0O1xuICB3aWxsLWNoYW5nZTogb3BhY2l0eTtcbn1cbltkaXI9cnRsXSAubGF5b3V0LW5hdi10eXBlLXZlcnRpY2FsIC5sYXlvdXQtdmVydGljYWwtbmF2IC52ZXJ0aWNhbC1uYXYtaXRlbXMtc2hhZG93IHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDhweCk7XG59XG4ubGF5b3V0LW5hdi10eXBlLXZlcnRpY2FsIC5sYXlvdXQtdmVydGljYWwtbmF2LnNjcm9sbGVkIC52ZXJ0aWNhbC1uYXYtaXRlbXMtc2hhZG93IHtcbiAgb3BhY2l0eTogMTtcbn1cbi5sYXlvdXQtbmF2LXR5cGUtdmVydGljYWwgLmxheW91dC12ZXJ0aWNhbC1uYXYgLnBzX19yYWlsLXkge1xuICB6LWluZGV4OiAxO1xufVxuLmxheW91dC1uYXYtdHlwZS12ZXJ0aWNhbCAubGF5b3V0LXZlcnRpY2FsLW5hdiAubmF2LXNlY3Rpb24tdGl0bGUge1xuICBtYXJnaW4tYmxvY2stZW5kOiAwLjM3NXJlbTtcbn1cbi5sYXlvdXQtbmF2LXR5cGUtdmVydGljYWwgLmxheW91dC12ZXJ0aWNhbC1uYXYgLm5hdi1zZWN0aW9uLXRpdGxlOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgbWFyZ2luLWJsb2NrLXN0YXJ0OiAxcmVtO1xufVxuLmxheW91dC1uYXYtdHlwZS12ZXJ0aWNhbCAubGF5b3V0LXZlcnRpY2FsLW5hdiAubmF2LXNlY3Rpb24tdGl0bGUgLnBsYWNlaG9sZGVyLWljb24ge1xuICBtYXJnaW4taW5saW5lOiBhdXRvO1xufVxuLmxheW91dC1uYXYtdHlwZS12ZXJ0aWNhbCAubGF5b3V0LXZlcnRpY2FsLW5hdiAubmF2LWxpbmssXG4ubGF5b3V0LW5hdi10eXBlLXZlcnRpY2FsIC5sYXlvdXQtdmVydGljYWwtbmF2IC5uYXYtZ3JvdXAge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuLmxheW91dC1uYXYtdHlwZS12ZXJ0aWNhbCAubGF5b3V0LXZlcnRpY2FsLW5hdiAubmF2LWxpbmsuZGlzYWJsZWQsXG4ubGF5b3V0LW5hdi10eXBlLXZlcnRpY2FsIC5sYXlvdXQtdmVydGljYWwtbmF2IC5uYXYtZ3JvdXAuZGlzYWJsZWQge1xuICBvcGFjaXR5OiB2YXIoLS12LWRpc2FibGVkLW9wYWNpdHkpO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cbi5sYXlvdXQtbmF2LXR5cGUtdmVydGljYWwgLmxheW91dC12ZXJ0aWNhbC1uYXYgLm5hdi1saW5rIGEsXG4ubGF5b3V0LW5hdi10eXBlLXZlcnRpY2FsIC5sYXlvdXQtdmVydGljYWwtbmF2IC5uYXYtZ3JvdXAgYSB7XG4gIG91dGxpbmU6IG5vbmU7XG59XG4ubGF5b3V0LW5hdi10eXBlLXZlcnRpY2FsIC5sYXlvdXQtdmVydGljYWwtbmF2IC5uYXYtbGluayA+IGEge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4ubGF5b3V0LW5hdi10eXBlLXZlcnRpY2FsIC5sYXlvdXQtdmVydGljYWwtbmF2IC5uYXYtbGluayA+IGE6OmJlZm9yZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm9yZGVyLXJhZGl1czogaW5oZXJpdDtcbiAgYmFja2dyb3VuZDogY3VycmVudGNvbG9yO1xuICBibG9jay1zaXplOiAxMDAlO1xuICBjb250ZW50OiBcIlwiO1xuICBpbmxpbmUtc2l6ZTogMTAwJTtcbiAgaW5zZXQ6IDA7XG4gIG9wYWNpdHk6IDA7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuLmxheW91dC1uYXYtdHlwZS12ZXJ0aWNhbCAubGF5b3V0LXZlcnRpY2FsLW5hdiAubmF2LWxpbmsgPiBhOm5vdCgucm91dGVyLWxpbmstYWN0aXZlLCAucm91dGVyLWxpbmstZXhhY3QtYWN0aXZlKTpob3Zlcjo6YmVmb3JlIHtcbiAgb3BhY2l0eTogY2FsYyh2YXIoLS12LWhvdmVyLW9wYWNpdHkpICogdmFyKC0tdi10aGVtZS1vdmVybGF5LW11bHRpcGxpZXIpKTtcbn1cbi5sYXlvdXQtbmF2LXR5cGUtdmVydGljYWwgLmxheW91dC12ZXJ0aWNhbC1uYXYgLm5hdi1saW5rID4gYTpub3QoLnJvdXRlci1saW5rLWFjdGl2ZSwgLnJvdXRlci1saW5rLWV4YWN0LWFjdGl2ZSk6Zm9jdXMtdmlzaWJsZTo6YmVmb3JlIHtcbiAgb3BhY2l0eTogY2FsYyh2YXIoLS12LWZvY3VzLW9wYWNpdHkpICogdmFyKC0tdi10aGVtZS1vdmVybGF5LW11bHRpcGxpZXIpKTtcbn1cbkBzdXBwb3J0cyBub3Qgc2VsZWN0b3IoOmZvY3VzLXZpc2libGUpIHtcbiAgLmxheW91dC1uYXYtdHlwZS12ZXJ0aWNhbCAubGF5b3V0LXZlcnRpY2FsLW5hdiAubmF2LWxpbmsgPiBhOm5vdCgucm91dGVyLWxpbmstYWN0aXZlLCAucm91dGVyLWxpbmstZXhhY3QtYWN0aXZlKTpmb2N1czo6YmVmb3JlIHtcbiAgICBvcGFjaXR5OiBjYWxjKHZhcigtLXYtZm9jdXMtb3BhY2l0eSkgKiB2YXIoLS12LXRoZW1lLW92ZXJsYXktbXVsdGlwbGllcikpO1xuICB9XG59XG4ubGF5b3V0LW5hdi10eXBlLXZlcnRpY2FsIC5sYXlvdXQtdmVydGljYWwtbmF2IC5uYXYtZ3JvdXAgLm5hdi1ncm91cC1hcnJvdyB7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjE1cyBlYXNlLWluLW91dDtcbiAgd2lsbC1jaGFuZ2U6IHRyYW5zZm9ybTtcbn1cbi5sYXlvdXQtbmF2LXR5cGUtdmVydGljYWwgLmxheW91dC12ZXJ0aWNhbC1uYXYgLm5hdi1ncm91cC5vcGVuID4gLm5hdi1ncm91cC1sYWJlbCAubmF2LWdyb3VwLWFycm93IHtcbiAgdHJhbnNmb3JtOiByb3RhdGVaKDkwZGVnKTtcbn1cbi5sYXlvdXQtbmF2LXR5cGUtdmVydGljYWwgLmxheW91dC12ZXJ0aWNhbC1uYXYgLm5hdi1ncm91cCA+IDpmaXJzdC1jaGlsZCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5sYXlvdXQtbmF2LXR5cGUtdmVydGljYWwgLmxheW91dC12ZXJ0aWNhbC1uYXYgLm5hdi1ncm91cCA+IDpmaXJzdC1jaGlsZDo6YmVmb3JlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3JkZXItcmFkaXVzOiBpbmhlcml0O1xuICBiYWNrZ3JvdW5kOiBjdXJyZW50Y29sb3I7XG4gIGJsb2NrLXNpemU6IDEwMCU7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGlubGluZS1zaXplOiAxMDAlO1xuICBpbnNldDogMDtcbiAgb3BhY2l0eTogMDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG4ubGF5b3V0LW5hdi10eXBlLXZlcnRpY2FsIC5sYXlvdXQtdmVydGljYWwtbmF2IC5uYXYtZ3JvdXA6bm90KC5hY3RpdmUsIC5vcGVuKSA+IDpmaXJzdC1jaGlsZDpob3Zlcjo6YmVmb3JlIHtcbiAgb3BhY2l0eTogY2FsYyh2YXIoLS12LWhvdmVyLW9wYWNpdHkpICogdmFyKC0tdi10aGVtZS1vdmVybGF5LW11bHRpcGxpZXIpKTtcbn1cbi5sYXlvdXQtbmF2LXR5cGUtdmVydGljYWwgLmxheW91dC12ZXJ0aWNhbC1uYXYgLm5hdi1ncm91cDpub3QoLmFjdGl2ZSwgLm9wZW4pID4gOmZpcnN0LWNoaWxkOmZvY3VzLXZpc2libGU6OmJlZm9yZSB7XG4gIG9wYWNpdHk6IGNhbGModmFyKC0tdi1mb2N1cy1vcGFjaXR5KSAqIHZhcigtLXYtdGhlbWUtb3ZlcmxheS1tdWx0aXBsaWVyKSk7XG59XG5Ac3VwcG9ydHMgbm90IHNlbGVjdG9yKDpmb2N1cy12aXNpYmxlKSB7XG4gIC5sYXlvdXQtbmF2LXR5cGUtdmVydGljYWwgLmxheW91dC12ZXJ0aWNhbC1uYXYgLm5hdi1ncm91cDpub3QoLmFjdGl2ZSwgLm9wZW4pID4gOmZpcnN0LWNoaWxkOmZvY3VzOjpiZWZvcmUge1xuICAgIG9wYWNpdHk6IGNhbGModmFyKC0tdi1mb2N1cy1vcGFjaXR5KSAqIHZhcigtLXYtdGhlbWUtb3ZlcmxheS1tdWx0aXBsaWVyKSk7XG4gIH1cbn1cbi52ZXJ0aWNhbC1uYXYtc2VjdGlvbi10aXRsZS1lbnRlci1hY3RpdmUsXG4udmVydGljYWwtbmF2LXNlY3Rpb24tdGl0bGUtbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjFzIGVhc2UtaW4tb3V0LCB0cmFuc2Zvcm0gMC4xcyBlYXNlLWluLW91dDtcbn1cblxuLnZlcnRpY2FsLW5hdi1zZWN0aW9uLXRpdGxlLWVudGVyLWZyb20sXG4udmVydGljYWwtbmF2LXNlY3Rpb24tdGl0bGUtbGVhdmUtdG8ge1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTVweCk7XG59XG5bZGlyPXJ0bF0gLnZlcnRpY2FsLW5hdi1zZWN0aW9uLXRpdGxlLWVudGVyLWZyb20sXG5bZGlyPXJ0bF0gLnZlcnRpY2FsLW5hdi1zZWN0aW9uLXRpdGxlLWxlYXZlLXRvIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xNXB4KTtcbn1cblxuLnRyYW5zaXRpb24tc2xpZGUteC1lbnRlci1hY3RpdmUsXG4udHJhbnNpdGlvbi1zbGlkZS14LWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4xcyBlYXNlLWluLW91dCwgdHJhbnNmb3JtIDAuMTJzIGVhc2UtaW4tb3V0O1xufVxuXG4udHJhbnNpdGlvbi1zbGlkZS14LWVudGVyLWZyb20sXG4udHJhbnNpdGlvbi1zbGlkZS14LWxlYXZlLXRvIHtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xNXB4KTtcbn1cbltkaXI9cnRsXSAudHJhbnNpdGlvbi1zbGlkZS14LWVudGVyLWZyb20sXG5bZGlyPXJ0bF0gLnRyYW5zaXRpb24tc2xpZGUteC1sZWF2ZS10byB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxNXB4KTtcbn1cblxuLnZlcnRpY2FsLW5hdi1hcHAtdGl0bGUtZW50ZXItYWN0aXZlLFxuLnZlcnRpY2FsLW5hdi1hcHAtdGl0bGUtbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjFzIGVhc2UtaW4tb3V0LCB0cmFuc2Zvcm0gMC4xMnMgZWFzZS1pbi1vdXQ7XG59XG5cbi52ZXJ0aWNhbC1uYXYtYXBwLXRpdGxlLWVudGVyLWZyb20sXG4udmVydGljYWwtbmF2LWFwcC10aXRsZS1sZWF2ZS10byB7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTVweCk7XG59XG5bZGlyPXJ0bF0gLnZlcnRpY2FsLW5hdi1hcHAtdGl0bGUtZW50ZXItZnJvbSxcbltkaXI9cnRsXSAudmVydGljYWwtbmF2LWFwcC10aXRsZS1sZWF2ZS10byB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxNXB4KTtcbn1cblxuLmxheW91dC1ob3Jpem9udGFsLW5hdiAubmF2LWxpbmsgYSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5sYXlvdXQtaG9yaXpvbnRhbC1uYXYgLm5hdi1saW5rIGE6OmJlZm9yZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm9yZGVyLXJhZGl1czogaW5oZXJpdDtcbiAgYmFja2dyb3VuZDogY3VycmVudGNvbG9yO1xuICBibG9jay1zaXplOiAxMDAlO1xuICBjb250ZW50OiBcIlwiO1xuICBpbmxpbmUtc2l6ZTogMTAwJTtcbiAgaW5zZXQ6IDA7XG4gIG9wYWNpdHk6IDA7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuLmxheW91dC1ob3Jpem9udGFsLW5hdiAubmF2LWxpbmsgYTpob3Zlcjo6YmVmb3JlIHtcbiAgb3BhY2l0eTogY2FsYyh2YXIoLS12LWhvdmVyLW9wYWNpdHkpICogdmFyKC0tdi10aGVtZS1vdmVybGF5LW11bHRpcGxpZXIpKTtcbn1cbi5sYXlvdXQtaG9yaXpvbnRhbC1uYXYgLm5hdi1saW5rIGE6Zm9jdXMtdmlzaWJsZTo6YmVmb3JlIHtcbiAgb3BhY2l0eTogY2FsYyh2YXIoLS12LWZvY3VzLW9wYWNpdHkpICogdmFyKC0tdi10aGVtZS1vdmVybGF5LW11bHRpcGxpZXIpKTtcbn1cbkBzdXBwb3J0cyBub3Qgc2VsZWN0b3IoOmZvY3VzLXZpc2libGUpIHtcbiAgLmxheW91dC1ob3Jpem9udGFsLW5hdiAubmF2LWxpbmsgYTpmb2N1czo6YmVmb3JlIHtcbiAgICBvcGFjaXR5OiBjYWxjKHZhcigtLXYtZm9jdXMtb3BhY2l0eSkgKiB2YXIoLS12LXRoZW1lLW92ZXJsYXktbXVsdGlwbGllcikpO1xuICB9XG59XG4ubGF5b3V0LWhvcml6b250YWwtbmF2IC5uYXYtZ3JvdXAgPiAucG9wcGVyLXRyaWdnZXJlciA+IC5uYXYtZ3JvdXAtbGFiZWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4ubGF5b3V0LWhvcml6b250YWwtbmF2IC5uYXYtZ3JvdXAgPiAucG9wcGVyLXRyaWdnZXJlciA+IC5uYXYtZ3JvdXAtbGFiZWw6OmJlZm9yZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm9yZGVyLXJhZGl1czogaW5oZXJpdDtcbiAgYmFja2dyb3VuZDogY3VycmVudGNvbG9yO1xuICBibG9jay1zaXplOiAxMDAlO1xuICBjb250ZW50OiBcIlwiO1xuICBpbmxpbmUtc2l6ZTogMTAwJTtcbiAgaW5zZXQ6IDA7XG4gIG9wYWNpdHk6IDA7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuLmxheW91dC1ob3Jpem9udGFsLW5hdiAubmF2LWdyb3VwID4gLnBvcHBlci10cmlnZ2VyZXIgPiAubmF2LWdyb3VwLWxhYmVsOmhvdmVyOjpiZWZvcmUge1xuICBvcGFjaXR5OiBjYWxjKHZhcigtLXYtaG92ZXItb3BhY2l0eSkgKiB2YXIoLS12LXRoZW1lLW92ZXJsYXktbXVsdGlwbGllcikpO1xufVxuLmxheW91dC1ob3Jpem9udGFsLW5hdiAubmF2LWdyb3VwID4gLnBvcHBlci10cmlnZ2VyZXIgPiAubmF2LWdyb3VwLWxhYmVsOmZvY3VzLXZpc2libGU6OmJlZm9yZSB7XG4gIG9wYWNpdHk6IGNhbGModmFyKC0tdi1mb2N1cy1vcGFjaXR5KSAqIHZhcigtLXYtdGhlbWUtb3ZlcmxheS1tdWx0aXBsaWVyKSk7XG59XG5Ac3VwcG9ydHMgbm90IHNlbGVjdG9yKDpmb2N1cy12aXNpYmxlKSB7XG4gIC5sYXlvdXQtaG9yaXpvbnRhbC1uYXYgLm5hdi1ncm91cCA+IC5wb3BwZXItdHJpZ2dlcmVyID4gLm5hdi1ncm91cC1sYWJlbDpmb2N1czo6YmVmb3JlIHtcbiAgICBvcGFjaXR5OiBjYWxjKHZhcigtLXYtZm9jdXMtb3BhY2l0eSkgKiB2YXIoLS12LXRoZW1lLW92ZXJsYXktbXVsdGlwbGllcikpO1xuICB9XG59XG4ubGF5b3V0LWhvcml6b250YWwtbmF2IC5uYXYtZ3JvdXAgLnBvcHBlci1jb250ZW50IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKHZhcigtLXYtdGhlbWUtc3VyZmFjZSkpO1xufVxuLmxheW91dC1ob3Jpem9udGFsLW5hdiAubmF2LWdyb3VwIC5wb3BwZXItY29udGVudCA+IGRpdiB7XG4gIG1heC1ibG9jay1zaXplOiBjYWxjKDEwMGR2aCAtIDEyMHB4IC0gNHJlbSk7XG59XG4ubGF5b3V0LWhvcml6b250YWwtbmF2IC5uYXYtZ3JvdXA6bm90KC5zdWItaXRlbSkgPiAucG9wcGVyLXRyaWdnZXJlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLypcbiAgICDihLnvuI8gVGhlIEJyaWRnZVxuICAgIFRoaXMgYWZ0ZXIgcHNldWRvIHdpbGwgd29yayBhcyBicmlkZ2Ugd2hlbiB3ZSBoYXZlIHNwYWNlIGJldHdlZW4gcG9wcGVyIHRyaWdnZXJlciBhbmQgcG9wcGVyIGNvbnRlbnRcbiAgICBJbml0aWFsbHkgaXQgd2lsbCBoYXZlIHBvaW50ZXIgZXZlbnRzIG5vbmUgZm9yIG5vcm1hbCBiZWhhdmlvciBhbmQgb25jZSB0aGUgY29udGVudCBpcyBzaG93biBpdCB3aWxsXG4gICAgICB3b3JrIGFzIGJyaWRnZSBieSBzZXR0aW5nIHBvaW50ZXIgZXZlbnRzIHRvIGBhdXRvYFxuICAqL1xufVxuLmxheW91dC1ob3Jpem9udGFsLW5hdiAubmF2LWdyb3VwOm5vdCguc3ViLWl0ZW0pID4gLnBvcHBlci10cmlnZ2VyZXI6OmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBibG9jay1zaXplOiAwLjM3NXJlbTtcbiAgY29udGVudDogXCJcIjtcbiAgaW5saW5lLXNpemU6IDEwMCU7XG4gIGluc2V0LWJsb2NrLXN0YXJ0OiAxMDAlO1xuICBpbnNldC1pbmxpbmUtc3RhcnQ6IDA7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuLmxheW91dC1ob3Jpem9udGFsLW5hdiAubmF2LWdyb3VwOm5vdCguc3ViLWl0ZW0pLnNob3ctY29udGVudCA+IC5wb3BwZXItdHJpZ2dlcmVyOjphZnRlciB7XG4gIC8qXG4gICAg4oS577iPIFdlIGhhdmUgYWRkZWQgYHotaW5kZXg6IDJgIGJlY2F1c2Ugd2hlbiB0aGVyZSBpcyBob3Jpem9udGFsIG5hdiBpdGVtIGJlbG93IHRoZSBwb3BwZXIgdHJpZ2dlciAoZ3JvdXApXG4gICAgICB3aXRob3V0IHRoaXMgc3R5bGUgbmF2IGl0ZW0gYmVsb3cgcG9wcGVyIHRyaWdnZXIgKGdyb3VwKSBnZXRzIGZvY3VzIGhlbmNlIGNsb3NlcyB0aGUgcG9wcGVyIGNvbnRlbnRcbiAgKi9cbiAgei1pbmRleDogMjtcbiAgcG9pbnRlci1ldmVudHM6IGF1dG87XG59XG4ubGF5b3V0LWhvcml6b250YWwtbmF2IC5uYXYtZ3JvdXA6bm90KC5zdWItaXRlbSkgPiAucG9wcGVyLWNvbnRlbnQge1xuICBtYXJnaW4tYmxvY2stc3RhcnQ6IDAuMzc1cmVtICFpbXBvcnRhbnQ7XG59XG4ubGF5b3V0LWhvcml6b250YWwtbmF2IC5uYXYtZ3JvdXAuc3ViLWl0ZW0uYWN0aXZlID4gLnBvcHBlci10cmlnZ2VyZXIgPiAubmF2LWdyb3VwLWxhYmVsOjpiZWZvcmUge1xuICBvcGFjaXR5OiBjYWxjKHZhcigtLXYtc2VsZWN0ZWQtb3BhY2l0eSkgKiB2YXIoLS12LXRoZW1lLW92ZXJsYXktbXVsdGlwbGllcikpO1xufVxuLmxheW91dC1ob3Jpem9udGFsLW5hdiAubmF2LWdyb3VwLnN1Yi1pdGVtLmFjdGl2ZTpob3ZlciA+IC5wb3BwZXItdHJpZ2dlcmVyID4gLm5hdi1ncm91cC1sYWJlbDo6YmVmb3JlIHtcbiAgb3BhY2l0eTogY2FsYyh2YXIoLS12LXNlbGVjdGVkLW9wYWNpdHkpICsgdmFyKC0tdi1ob3Zlci1vcGFjaXR5KSAqIHZhcigtLXYtdGhlbWUtb3ZlcmxheS1tdWx0aXBsaWVyKSk7XG59XG4ubGF5b3V0LWhvcml6b250YWwtbmF2IC5uYXYtZ3JvdXAuc3ViLWl0ZW0uYWN0aXZlOmZvY3VzLXZpc2libGUgPiAucG9wcGVyLXRyaWdnZXJlciA+IC5uYXYtZ3JvdXAtbGFiZWw6OmJlZm9yZSB7XG4gIG9wYWNpdHk6IGNhbGModmFyKC0tdi1zZWxlY3RlZC1vcGFjaXR5KSArIHZhcigtLXYtZm9jdXMtb3BhY2l0eSkgKiB2YXIoLS12LXRoZW1lLW92ZXJsYXktbXVsdGlwbGllcikpO1xufVxuQHN1cHBvcnRzIG5vdCBzZWxlY3Rvcig6Zm9jdXMtdmlzaWJsZSkge1xuICAubGF5b3V0LWhvcml6b250YWwtbmF2IC5uYXYtZ3JvdXAuc3ViLWl0ZW0uYWN0aXZlOmZvY3VzID4gLnBvcHBlci10cmlnZ2VyZXIgPiAubmF2LWdyb3VwLWxhYmVsOjpiZWZvcmUge1xuICAgIG9wYWNpdHk6IGNhbGModmFyKC0tdi1zZWxlY3RlZC1vcGFjaXR5KSArIHZhcigtLXYtZm9jdXMtb3BhY2l0eSkgKiB2YXIoLS12LXRoZW1lLW92ZXJsYXktbXVsdGlwbGllcikpO1xuICB9XG59XG4ubGF5b3V0LWhvcml6b250YWwtbmF2IC5uYXYtZ3JvdXAgLm5hdi1ncm91cC1hcnJvdyB7XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgLypcbiAgICDihLnvuI8gbWwtYXV0byB3b24ndCBtYXR0ZXIgaW4gdG9wIGxldmVsIGdyb3VwIChiZWNhdXNlIHdlIGhhdmVuJ3Qgc3BlY2lmaWVkIGZpeGVkIHdpZHRoIGZvciB0b3AgbGV2ZWwgZ3JvdXBzKVxuICAgIGJ1dCB3ZSB3cm90ZSBnZW5lcmFsbHkgYmVjYXVzZSB3ZSBkb24ndCB3YW50IHRvIGJlY29tZSBzbyBzcGVjaWZpY1xuICAqL1xuICBtYXJnaW4taW5saW5lLXN0YXJ0OiBhdXRvO1xufVxuLmxheW91dC1ob3Jpem9udGFsLW5hdiAubmF2LWdyb3VwLnBvcHBlci1pbmxpbmUtZW5kIC5uYXYtZ3JvdXAtYXJyb3cge1xuICB0cmFuc2Zvcm06IHJvdGF0ZVooMjcwZGVnKTtcbn1cbltkaXI9cnRsXSAubGF5b3V0LWhvcml6b250YWwtbmF2IC5uYXYtZ3JvdXAucG9wcGVyLWlubGluZS1lbmQgLm5hdi1ncm91cC1hcnJvdyB7XG4gIHRyYW5zZm9ybTogcm90YXRlWig5MGRlZyk7XG59XG4ubGF5b3V0LWhvcml6b250YWwtbmF2IC5uYXYtZ3JvdXAuc2hvdy1jb250ZW50Om5vdCguYWN0aXZlKSA+IC5wb3BwZXItdHJpZ2dlcmVyID4gLm5hdi1ncm91cC1sYWJlbDo6YmVmb3JlIHtcbiAgb3BhY2l0eTogY2FsYyh2YXIoLS12LXNlbGVjdGVkLW9wYWNpdHkpICogdmFyKC0tdi10aGVtZS1vdmVybGF5LW11bHRpcGxpZXIpKTtcbn1cbi5sYXlvdXQtaG9yaXpvbnRhbC1uYXYgLm5hdi1ncm91cC5zaG93LWNvbnRlbnQ6bm90KC5hY3RpdmUpOmhvdmVyID4gLnBvcHBlci10cmlnZ2VyZXIgPiAubmF2LWdyb3VwLWxhYmVsOjpiZWZvcmUge1xuICBvcGFjaXR5OiBjYWxjKHZhcigtLXYtc2VsZWN0ZWQtb3BhY2l0eSkgKyB2YXIoLS12LWhvdmVyLW9wYWNpdHkpICogdmFyKC0tdi10aGVtZS1vdmVybGF5LW11bHRpcGxpZXIpKTtcbn1cbi5sYXlvdXQtaG9yaXpvbnRhbC1uYXYgLm5hdi1ncm91cC5zaG93LWNvbnRlbnQ6bm90KC5hY3RpdmUpOmZvY3VzLXZpc2libGUgPiAucG9wcGVyLXRyaWdnZXJlciA+IC5uYXYtZ3JvdXAtbGFiZWw6OmJlZm9yZSB7XG4gIG9wYWNpdHk6IGNhbGModmFyKC0tdi1zZWxlY3RlZC1vcGFjaXR5KSArIHZhcigtLXYtZm9jdXMtb3BhY2l0eSkgKiB2YXIoLS12LXRoZW1lLW92ZXJsYXktbXVsdGlwbGllcikpO1xufVxuQHN1cHBvcnRzIG5vdCBzZWxlY3Rvcig6Zm9jdXMtdmlzaWJsZSkge1xuICAubGF5b3V0LWhvcml6b250YWwtbmF2IC5uYXYtZ3JvdXAuc2hvdy1jb250ZW50Om5vdCguYWN0aXZlKTpmb2N1cyA+IC5wb3BwZXItdHJpZ2dlcmVyID4gLm5hdi1ncm91cC1sYWJlbDo6YmVmb3JlIHtcbiAgICBvcGFjaXR5OiBjYWxjKHZhcigtLXYtc2VsZWN0ZWQtb3BhY2l0eSkgKyB2YXIoLS12LWZvY3VzLW9wYWNpdHkpICogdmFyKC0tdi10aGVtZS1vdmVybGF5LW11bHRpcGxpZXIpKTtcbiAgfVxufVxuXG4ubGF5b3V0LXZlcnRpY2FsLW5hdiBvbCxcbi5sYXlvdXQtdmVydGljYWwtbmF2IHVsLFxuLmxheW91dC1ob3Jpem9udGFsLW5hdiBvbCxcbi5sYXlvdXQtaG9yaXpvbnRhbC1uYXYgdWwge1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4uc2Nyb2xsYWJsZS1jb250ZW50LnYtbmF2aWdhdGlvbi1kcmF3ZXIgLnYtbmF2aWdhdGlvbi1kcmF3ZXJfX2NvbnRlbnQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xufVxuXG5jb2RlIHtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICBjb2xvcjogcmdiKHZhcigtLXYtY29kZS1jb2xvcikpO1xuICBmb250LXNpemU6IDkwJTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgcGFkZGluZy1ibG9jazogMC4yZW07XG4gIHBhZGRpbmctaW5saW5lOiAwLjRlbTtcbn1cblxuLmxheW91dC13cmFwcGVyLmxheW91dC1uYXYtdHlwZS12ZXJ0aWNhbDpub3QoLmxheW91dC1uYXZiYXItc3RpY2t5KSAubGF5b3V0LW5hdmJhciAubmF2YmFyLWNvbnRlbnQtY29udGFpbmVyIHtcbiAgbWFyZ2luLWJsb2NrLXN0YXJ0OiAxcmVtO1xufVxuLmxheW91dC13cmFwcGVyLmxheW91dC1uYXYtdHlwZS12ZXJ0aWNhbCAubGF5b3V0LW5hdmJhciAubmF2YmFyLWNvbnRlbnQtY29udGFpbmVyIHtcbiAgYm9yZGVyLXJhZGl1czogNnB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IodmFyKC0tdi10aGVtZS1zdXJmYWNlKSk7XG59XG4ubGF5b3V0LXdyYXBwZXIubGF5b3V0LW5hdi10eXBlLXZlcnRpY2FsIC5sYXlvdXQtZm9vdGVyIC5mb290ZXItY29udGVudC1jb250YWluZXIge1xuICBib3JkZXItcmFkaXVzOiA2cHggNnB4IDAgMDtcbn1cbi5sYXlvdXQtZm9vdGVyLXN0aWNreS5sYXlvdXQtd3JhcHBlci5sYXlvdXQtbmF2LXR5cGUtdmVydGljYWwgLmxheW91dC1mb290ZXIgLmZvb3Rlci1jb250ZW50LWNvbnRhaW5lciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYih2YXIoLS12LXRoZW1lLXN1cmZhY2UpKTtcbiAgcGFkZGluZy1ibG9jazogMDtcbiAgcGFkZGluZy1pbmxpbmU6IDEuMnJlbTtcbiAgYm94LXNoYWRvdzogMCAzcHggOHB4IHJnYmEodmFyKC0tdi1zaGFkb3cta2V5LXVtYnJhLWNvbG9yKSwgMC4xNCksIDAgMCB0cmFuc3BhcmVudCwgMCAwIHRyYW5zcGFyZW50O1xufVxuXG4ubGF5b3V0LXdyYXBwZXIubGF5b3V0LW5hdi10eXBlLWhvcml6b250YWwgLm5hdmJhci1jb250ZW50LWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGJsb2NrLXNpemU6IDEwMCU7XG59XG4ubGF5b3V0LWZvb3Rlci1zdGlja3kubGF5b3V0LXdyYXBwZXIubGF5b3V0LW5hdi10eXBlLWhvcml6b250YWwgLmxheW91dC1mb290ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IodmFyKC0tdi10aGVtZS1zdXJmYWNlKSk7XG4gIGJveC1zaGFkb3c6IDAgM3B4IDhweCByZ2JhKHZhcigtLXYtc2hhZG93LWtleS11bWJyYS1jb2xvciksIDAuMTQpLCAwIDAgdHJhbnNwYXJlbnQsIDAgMCB0cmFuc3BhcmVudDtcbn1cblxuLmxheW91dC13cmFwcGVyLmxheW91dC1uYXYtdHlwZS1ob3Jpem9udGFsIC5sYXlvdXQtcGFnZS1jb250ZW50IHtcbiAgcGFkZGluZy1ibG9jazogMS41cmVtO1xufVxuXG4vKiDihLnvuI8gVGhpcyBzdHlsZXMgZXh0ZW5kcyB0aGUgZXhpc3RpbmcgbGF5b3V0IHBhY2thZ2UncyBzdHlsZXMgZm9yIGhhbmRsaW5nIGNhc2VzIHRoYXQgYXJlbid0IHJlbGF0ZWQgdG8gbGF5b3V0cyBwYWNrYWdlICovXG4vKlxuICDihLnvuI8gV2hlbiB3ZSB1c2Ugdi1sYXlvdXQgYXMgaW1tZWRpYXRlIGZpcnN0IGNoaWxkIG9mIGAucGFnZS1jb250ZW50LWNvbnRhaW5lcmAsIGl0IGFkZHMgZGlzcGxheTpmbGV4IGFuZCBwYWdlIGRvZXNuJ3QgZ2V0IGNvbnRhaW5lZCBoZWlnaHRcbiovXG4ubGF5b3V0LXdyYXBwZXIubGF5b3V0LW5hdi10eXBlLXZlcnRpY2FsLmxheW91dC1jb250ZW50LWhlaWdodC1maXhlZCAucGFnZS1jb250ZW50LWNvbnRhaW5lciA+IC52LWxheW91dDpmaXJzdC1jaGlsZCB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG1pbi1ibG9jay1zaXplOiAxMDAlO1xufVxuLmxheW91dC13cmFwcGVyLmxheW91dC1uYXYtdHlwZS12ZXJ0aWNhbC5sYXlvdXQtY29udGVudC1oZWlnaHQtZml4ZWQgLnBhZ2UtY29udGVudC1jb250YWluZXIgPiAudi1sYXlvdXQ6Zmlyc3QtY2hpbGQgPiAudi1tYWluIC52LW1haW5fX3dyYXAgPiA6Zmlyc3QtY2hpbGQge1xuICBibG9jay1zaXplOiAxMDAlO1xuICBvdmVyZmxvdy15OiBhdXRvO1xufVxuXG4ubGF5b3V0LXdyYXBwZXIubGF5b3V0LW5hdi10eXBlLWhvcml6b250YWwubGF5b3V0LWNvbnRlbnQtaGVpZ2h0LWZpeGVkID4gLmxheW91dC1wYWdlLWNvbnRlbnQge1xuICBkaXNwbGF5OiBmbGV4O1xufVxuXG5ib2R5IC5sYXlvdXQtd3JhcHBlci5sYXlvdXQtbmF2LXR5cGUtdmVydGljYWwubGF5b3V0LW5hdmJhci1zdGlja3kge1xuICAvKlxuICAgIOKEue+4jyBJZiBpdCdzIGZsb2F0aW5nIG5hdmJhclxuICAgIEFkZCBgdmVydGljYWwtbmF2LWZsb2F0aW5nLW5hdmJhci10b3BgIGFzIG1hcmdpbiB0b3AgdG8gLmxheW91dC1wYWdlLWNvbnRlbnRcbiAgKi9cbn1cbmJvZHkgLmxheW91dC13cmFwcGVyLmxheW91dC1uYXYtdHlwZS12ZXJ0aWNhbC5sYXlvdXQtbmF2YmFyLXN0aWNreSAubGF5b3V0LW5hdmJhciB7XG4gIGluc2V0LWJsb2NrLXN0YXJ0OiAxcmVtO1xufVxuYm9keSAubGF5b3V0LXdyYXBwZXIubGF5b3V0LW5hdi10eXBlLXZlcnRpY2FsLmxheW91dC1uYXZiYXItc3RpY2t5IC5sYXlvdXQtcGFnZS1jb250ZW50IHtcbiAgbWFyZ2luLWJsb2NrLXN0YXJ0OiAxcmVtO1xufVxuXG4udGV4dC14cyB7XG4gIGZvbnQtc2l6ZTogMC42ODc1cmVtO1xuICBsaW5lLWhlaWdodDogMC45Mzc1cmVtO1xufVxuXG4udGV4dC1zbSB7XG4gIGZvbnQtc2l6ZTogMC44MTI1cmVtO1xuICBsaW5lLWhlaWdodDogMS4yNXJlbTtcbn1cblxuLnRleHQtYmFzZSB7XG4gIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICBsaW5lLWhlaWdodDogMS4zNzVyZW07XG59XG5cbi50ZXh0LWxnIHtcbiAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNzVyZW07XG59XG5cbi50ZXh0LXhsIHtcbiAgZm9udC1zaXplOiAxLjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAyLjM3NXJlbTtcbn1cblxuLnRleHQtMnhsIHtcbiAgZm9udC1zaXplOiAxLjc1cmVtO1xuICBsaW5lLWhlaWdodDogMi42MjVyZW07XG59XG5cbi50ZXh0LTN4bCB7XG4gIGZvbnQtc2l6ZTogMnJlbTtcbiAgbGluZS1oZWlnaHQ6IDIuNzVyZW07XG59XG5cbi50ZXh0LTR4bCB7XG4gIGZvbnQtc2l6ZTogMi4zNzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAzLjI1cmVtO1xufVxuXG4udGV4dC01eGwge1xuICBmb250LXNpemU6IDNyZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG4udGV4dC02eGwge1xuICBmb250LXNpemU6IDMuNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbi50ZXh0LTd4bCB7XG4gIGZvbnQtc2l6ZTogNHJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbi50ZXh0LTh4bCB7XG4gIGZvbnQtc2l6ZTogNC41cmVtO1xuICBsaW5lLWhlaWdodDogMTtcbn1cblxuLnRleHQtOXhsIHtcbiAgZm9udC1zaXplOiA1LjI1cmVtO1xuICBsaW5lLWhlaWdodDogMTtcbn1cblxuLnRydW5jYXRlIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi5nYXAtMCB7XG4gIGdhcDogMDtcbn1cblxuLmdhcC14LTAge1xuICBjb2x1bW4tZ2FwOiAwO1xufVxuXG4uZ2FwLXktMCB7XG4gIHJvdy1nYXA6IDA7XG59XG5cbi5nYXAtMSB7XG4gIGdhcDogMC4yNXJlbTtcbn1cblxuLmdhcC14LTEge1xuICBjb2x1bW4tZ2FwOiAwLjI1cmVtO1xufVxuXG4uZ2FwLXktMSB7XG4gIHJvdy1nYXA6IDAuMjVyZW07XG59XG5cbi5nYXAtMiB7XG4gIGdhcDogMC41cmVtO1xufVxuXG4uZ2FwLXgtMiB7XG4gIGNvbHVtbi1nYXA6IDAuNXJlbTtcbn1cblxuLmdhcC15LTIge1xuICByb3ctZ2FwOiAwLjVyZW07XG59XG5cbi5nYXAtMyB7XG4gIGdhcDogMC43NXJlbTtcbn1cblxuLmdhcC14LTMge1xuICBjb2x1bW4tZ2FwOiAwLjc1cmVtO1xufVxuXG4uZ2FwLXktMyB7XG4gIHJvdy1nYXA6IDAuNzVyZW07XG59XG5cbi5nYXAtNCB7XG4gIGdhcDogMXJlbTtcbn1cblxuLmdhcC14LTQge1xuICBjb2x1bW4tZ2FwOiAxcmVtO1xufVxuXG4uZ2FwLXktNCB7XG4gIHJvdy1nYXA6IDFyZW07XG59XG5cbi5nYXAtNSB7XG4gIGdhcDogMS4yNXJlbTtcbn1cblxuLmdhcC14LTUge1xuICBjb2x1bW4tZ2FwOiAxLjI1cmVtO1xufVxuXG4uZ2FwLXktNSB7XG4gIHJvdy1nYXA6IDEuMjVyZW07XG59XG5cbi5nYXAtNiB7XG4gIGdhcDogMS41cmVtO1xufVxuXG4uZ2FwLXgtNiB7XG4gIGNvbHVtbi1nYXA6IDEuNXJlbTtcbn1cblxuLmdhcC15LTYge1xuICByb3ctZ2FwOiAxLjVyZW07XG59XG5cbi5nYXAtNyB7XG4gIGdhcDogMS43NXJlbTtcbn1cblxuLmdhcC14LTcge1xuICBjb2x1bW4tZ2FwOiAxLjc1cmVtO1xufVxuXG4uZ2FwLXktNyB7XG4gIHJvdy1nYXA6IDEuNzVyZW07XG59XG5cbi5nYXAtOCB7XG4gIGdhcDogMnJlbTtcbn1cblxuLmdhcC14LTgge1xuICBjb2x1bW4tZ2FwOiAycmVtO1xufVxuXG4uZ2FwLXktOCB7XG4gIHJvdy1nYXA6IDJyZW07XG59XG5cbi5nYXAtOSB7XG4gIGdhcDogMi4yNXJlbTtcbn1cblxuLmdhcC14LTkge1xuICBjb2x1bW4tZ2FwOiAyLjI1cmVtO1xufVxuXG4uZ2FwLXktOSB7XG4gIHJvdy1nYXA6IDIuMjVyZW07XG59XG5cbi5nYXAtMTAge1xuICBnYXA6IDIuNXJlbTtcbn1cblxuLmdhcC14LTEwIHtcbiAgY29sdW1uLWdhcDogMi41cmVtO1xufVxuXG4uZ2FwLXktMTAge1xuICByb3ctZ2FwOiAyLjVyZW07XG59XG5cbi5nYXAtMTEge1xuICBnYXA6IDIuNzVyZW07XG59XG5cbi5nYXAteC0xMSB7XG4gIGNvbHVtbi1nYXA6IDIuNzVyZW07XG59XG5cbi5nYXAteS0xMSB7XG4gIHJvdy1nYXA6IDIuNzVyZW07XG59XG5cbi5nYXAtMTIge1xuICBnYXA6IDNyZW07XG59XG5cbi5nYXAteC0xMiB7XG4gIGNvbHVtbi1nYXA6IDNyZW07XG59XG5cbi5nYXAteS0xMiB7XG4gIHJvdy1nYXA6IDNyZW07XG59XG5cbi5nYXAtMTQge1xuICBnYXA6IDMuNXJlbTtcbn1cblxuLmdhcC14LTE0IHtcbiAgY29sdW1uLWdhcDogMy41cmVtO1xufVxuXG4uZ2FwLXktMTQge1xuICByb3ctZ2FwOiAzLjVyZW07XG59XG5cbi5nYXAtMTYge1xuICBnYXA6IDRyZW07XG59XG5cbi5nYXAteC0xNiB7XG4gIGNvbHVtbi1nYXA6IDRyZW07XG59XG5cbi5nYXAteS0xNiB7XG4gIHJvdy1nYXA6IDRyZW07XG59XG5cbi5nYXAtMjAge1xuICBnYXA6IDVyZW07XG59XG5cbi5nYXAteC0yMCB7XG4gIGNvbHVtbi1nYXA6IDVyZW07XG59XG5cbi5nYXAteS0yMCB7XG4gIHJvdy1nYXA6IDVyZW07XG59XG5cbi5nYXAtMjQge1xuICBnYXA6IDZyZW07XG59XG5cbi5nYXAteC0yNCB7XG4gIGNvbHVtbi1nYXA6IDZyZW07XG59XG5cbi5nYXAteS0yNCB7XG4gIHJvdy1nYXA6IDZyZW07XG59XG5cbi5nYXAtMjgge1xuICBnYXA6IDdyZW07XG59XG5cbi5nYXAteC0yOCB7XG4gIGNvbHVtbi1nYXA6IDdyZW07XG59XG5cbi5nYXAteS0yOCB7XG4gIHJvdy1nYXA6IDdyZW07XG59XG5cbi5nYXAtMzIge1xuICBnYXA6IDhyZW07XG59XG5cbi5nYXAteC0zMiB7XG4gIGNvbHVtbi1nYXA6IDhyZW07XG59XG5cbi5nYXAteS0zMiB7XG4gIHJvdy1nYXA6IDhyZW07XG59XG5cbi5nYXAtMzYge1xuICBnYXA6IDlyZW07XG59XG5cbi5nYXAteC0zNiB7XG4gIGNvbHVtbi1nYXA6IDlyZW07XG59XG5cbi5nYXAteS0zNiB7XG4gIHJvdy1nYXA6IDlyZW07XG59XG5cbi5nYXAtNDAge1xuICBnYXA6IDEwcmVtO1xufVxuXG4uZ2FwLXgtNDAge1xuICBjb2x1bW4tZ2FwOiAxMHJlbTtcbn1cblxuLmdhcC15LTQwIHtcbiAgcm93LWdhcDogMTByZW07XG59XG5cbi5nYXAtNDQge1xuICBnYXA6IDExcmVtO1xufVxuXG4uZ2FwLXgtNDQge1xuICBjb2x1bW4tZ2FwOiAxMXJlbTtcbn1cblxuLmdhcC15LTQ0IHtcbiAgcm93LWdhcDogMTFyZW07XG59XG5cbi5nYXAtNDgge1xuICBnYXA6IDEycmVtO1xufVxuXG4uZ2FwLXgtNDgge1xuICBjb2x1bW4tZ2FwOiAxMnJlbTtcbn1cblxuLmdhcC15LTQ4IHtcbiAgcm93LWdhcDogMTJyZW07XG59XG5cbi5nYXAtNTIge1xuICBnYXA6IDEzcmVtO1xufVxuXG4uZ2FwLXgtNTIge1xuICBjb2x1bW4tZ2FwOiAxM3JlbTtcbn1cblxuLmdhcC15LTUyIHtcbiAgcm93LWdhcDogMTNyZW07XG59XG5cbi5nYXAtNTYge1xuICBnYXA6IDE0cmVtO1xufVxuXG4uZ2FwLXgtNTYge1xuICBjb2x1bW4tZ2FwOiAxNHJlbTtcbn1cblxuLmdhcC15LTU2IHtcbiAgcm93LWdhcDogMTRyZW07XG59XG5cbi5nYXAtNjAge1xuICBnYXA6IDE1cmVtO1xufVxuXG4uZ2FwLXgtNjAge1xuICBjb2x1bW4tZ2FwOiAxNXJlbTtcbn1cblxuLmdhcC15LTYwIHtcbiAgcm93LWdhcDogMTVyZW07XG59XG5cbi5nYXAtNjQge1xuICBnYXA6IDE2cmVtO1xufVxuXG4uZ2FwLXgtNjQge1xuICBjb2x1bW4tZ2FwOiAxNnJlbTtcbn1cblxuLmdhcC15LTY0IHtcbiAgcm93LWdhcDogMTZyZW07XG59XG5cbi5nYXAtNzIge1xuICBnYXA6IDE4cmVtO1xufVxuXG4uZ2FwLXgtNzIge1xuICBjb2x1bW4tZ2FwOiAxOHJlbTtcbn1cblxuLmdhcC15LTcyIHtcbiAgcm93LWdhcDogMThyZW07XG59XG5cbi5nYXAtODAge1xuICBnYXA6IDIwcmVtO1xufVxuXG4uZ2FwLXgtODAge1xuICBjb2x1bW4tZ2FwOiAyMHJlbTtcbn1cblxuLmdhcC15LTgwIHtcbiAgcm93LWdhcDogMjByZW07XG59XG5cbi5nYXAtOTYge1xuICBnYXA6IDI0cmVtO1xufVxuXG4uZ2FwLXgtOTYge1xuICBjb2x1bW4tZ2FwOiAyNHJlbTtcbn1cblxuLmdhcC15LTk2IHtcbiAgcm93LWdhcDogMjRyZW07XG59XG5cbi5saXN0LW5vbmUge1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG59XG5cbi5za2luLS1ib3JkZXJlZCAudi1jYXJkOm5vdCgudi1jYXJkLS1mbGF0KSB7XG4gIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSh2YXIoLS12LWJvcmRlci1jb2xvciksIHZhcigtLXYtYm9yZGVyLW9wYWNpdHkpKTtcbn1cbi5za2luLS1ib3JkZXJlZCAudi1tZW51IC52LW92ZXJsYXlfX2NvbnRlbnQgPiAudi1jYXJkLCAuc2tpbi0tYm9yZGVyZWQgLnYtbWVudSAudi1vdmVybGF5X19jb250ZW50ID4gLnYtc2hlZXQsIC5za2luLS1ib3JkZXJlZCAudi1tZW51IC52LW92ZXJsYXlfX2NvbnRlbnQgPiAudi1saXN0IHtcbiAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKHZhcigtLXYtYm9yZGVyLWNvbG9yKSwgdmFyKC0tdi1ib3JkZXItb3BhY2l0eSkpO1xufVxuLnNraW4tLWJvcmRlcmVkIC5wb3BwZXItY29udGVudCB7XG4gIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSh2YXIoLS12LWJvcmRlci1jb2xvciksIHZhcigtLXYtYm9yZGVyLW9wYWNpdHkpKTtcbn1cbi5za2luLS1ib3JkZXJlZCAubGF5b3V0LW5hdmJhci1hbmQtbmF2LWNvbnRhaW5lciB7XG4gIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEodmFyKC0tdi1ib3JkZXItY29sb3IpLCB2YXIoLS12LWJvcmRlci1vcGFjaXR5KSk7XG59XG4uc2tpbi0tYm9yZGVyZWQgLmxheW91dC1uYXYtdHlwZS12ZXJ0aWNhbC53aW5kb3ctc2Nyb2xsZWQubGF5b3V0LW5hdmJhci1zdGlja3kgLmxheW91dC1uYXZiYXIgLm5hdmJhci1jb250ZW50LWNvbnRhaW5lciB7XG4gIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSh2YXIoLS12LWJvcmRlci1jb2xvciksIHZhcigtLXYtYm9yZGVyLW9wYWNpdHkpKTtcbn1cbi5za2luLS1ib3JkZXJlZCAubGF5b3V0LW5hdi10eXBlLXZlcnRpY2FsLndpbmRvdy1zY3JvbGxlZCAubGF5b3V0LW5hdmJhciAubmF2YmFyLWNvbnRlbnQtY29udGFpbmVyIHtcbiAgYm9yZGVyLWJsb2NrLXN0YXJ0OiBub25lICFpbXBvcnRhbnQ7XG59XG4uc2tpbi0tYm9yZGVyZWQgLmxheW91dC1uYXYtdHlwZS12ZXJ0aWNhbC5sYXlvdXQtZm9vdGVyLXN0aWNreSAubGF5b3V0LWZvb3RlciAuZm9vdGVyLWNvbnRlbnQtY29udGFpbmVyIHtcbiAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKHZhcigtLXYtYm9yZGVyLWNvbG9yKSwgdmFyKC0tdi1ib3JkZXItb3BhY2l0eSkpO1xufVxuLnNraW4tLWJvcmRlcmVkIC5sYXlvdXQtbmF2LXR5cGUtdmVydGljYWwubGF5b3V0LWZvb3Rlci1zdGlja3kgLmxheW91dC1mb290ZXIgLmZvb3Rlci1jb250ZW50LWNvbnRhaW5lciB7XG4gIGJvcmRlci1ibG9jay1lbmQ6IG5vbmU7XG59XG4uc2tpbi0tYm9yZGVyZWQgLmxheW91dC1uYXYtdHlwZS1ob3Jpem9udGFsLmxheW91dC1mb290ZXItc3RpY2t5IC5sYXlvdXQtZm9vdGVyIHtcbiAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKHZhcigtLXYtYm9yZGVyLWNvbG9yKSwgdmFyKC0tdi1ib3JkZXItb3BhY2l0eSkpO1xufVxuLnNraW4tLWJvcmRlcmVkIC5sYXlvdXQtbmF2LXR5cGUtaG9yaXpvbnRhbC5sYXlvdXQtZm9vdGVyLXN0aWNreSAubGF5b3V0LWZvb3RlciB7XG4gIGJvcmRlci1ibG9jay1lbmQ6IG5vbmU7XG59XG4uc2tpbi0tYm9yZGVyZWQgLmxheW91dC12ZXJ0aWNhbC1uYXYge1xuICBib3JkZXItaW5saW5lLWVuZDogdGhpbiBzb2xpZCByZ2JhKHZhcigtLXYtYm9yZGVyLWNvbG9yKSwgdmFyKC0tdi1ib3JkZXItb3BhY2l0eSkpO1xufVxuLnNraW4tLWJvcmRlcmVkIC52LWV4cGFuc2lvbi1wYW5lbHM6bm90KC5jdXN0b21pemVkLXBhbmVscykgLnYtZXhwYW5zaW9uLXBhbmVsX19zaGFkb3cge1xuICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG59XG4uc2tpbi0tYm9yZGVyZWQgLnYtZXhwYW5zaW9uLXBhbmVsczpub3QoLmN1c3RvbWl6ZWQtcGFuZWxzKSAudi1leHBhbnNpb24tcGFuZWwge1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKHZhcigtLXYtYm9yZGVyLWNvbG9yKSwgdmFyKC0tdi1ib3JkZXItb3BhY2l0eSkpO1xufVxuLnNraW4tLWJvcmRlcmVkIC52LWV4cGFuc2lvbi1wYW5lbHM6bm90KC5jdXN0b21pemVkLXBhbmVscykgLnYtZXhwYW5zaW9uLXBhbmVsOm5vdCg6bGFzdC1jaGlsZCkge1xuICBtYXJnaW4tYmxvY2stZW5kOiAtMXB4O1xufVxuLnNraW4tLWJvcmRlcmVkIC52LWV4cGFuc2lvbi1wYW5lbHM6bm90KC5jdXN0b21pemVkLXBhbmVscykgLnYtZXhwYW5zaW9uLXBhbmVsOjphZnRlciB7XG4gIGNvbnRlbnQ6IG5vbmU7XG59XG5cbi52LWF2YXRhci1ncm91cCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG4udi1hdmF0YXItZ3JvdXAgPiAqIHtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMjVzIGVhc2UsIGJveC1zaGFkb3cgMC4xNXMgZWFzZTtcbn1cbi52LWF2YXRhci1ncm91cCA+ICo6bm90KDpmaXJzdC1jaGlsZCkge1xuICBtYXJnaW4taW5saW5lLXN0YXJ0OiAtMC44cmVtO1xufVxuLnYtYXZhdGFyLWdyb3VwID4gKjpob3ZlciB7XG4gIHotaW5kZXg6IDI7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNXB4KSBzY2FsZSgxLjA1KTtcbiAgYm94LXNoYWRvdzogMCAzcHggOHB4IHJnYmEodmFyKC0tdi1zaGFkb3cta2V5LXVtYnJhLWNvbG9yKSwgMC4xNCksIDAgMCB0cmFuc3BhcmVudCwgMCAwIHRyYW5zcGFyZW50O1xufVxuLnYtYXZhdGFyLWdyb3VwID4gLnYtYXZhdGFyIHtcbiAgYm9yZGVyOiAycHggc29saWQgcmdiKHZhcigtLXYtdGhlbWUtc3VyZmFjZSkpO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xNXMgZWFzZTtcbn1cblxuLnYtYWxlcnQtLXZhcmlhbnQtb3V0bGluZWQ6bm90KFtjbGFzcyo9dGV4dC1dKSxcbi52LWF2YXRhci0tdmFyaWFudC1vdXRsaW5lZDpub3QoW2NsYXNzKj10ZXh0LV0pLFxuLnYtYnRuLnYtYnRuLS12YXJpYW50LW91dGxpbmVkOm5vdChbY2xhc3MqPXRleHQtXSksXG4udi1jYXJkLS12YXJpYW50LW91dGxpbmVkOm5vdChbY2xhc3MqPXRleHQtXSksXG4udi1jaGlwLS12YXJpYW50LW91dGxpbmVkOm5vdChbY2xhc3MqPXRleHQtXSksXG4udi1saXN0LWl0ZW0tLXZhcmlhbnQtb3V0bGluZWQ6bm90KFtjbGFzcyo9dGV4dC1dKSB7XG4gIGJvcmRlci1jb2xvcjogcmdiYSh2YXIoLS12LWJvcmRlci1jb2xvciksIHZhcigtLXYtYm9yZGVyLW9wYWNpdHkpKTtcbn1cbi52LWFsZXJ0LS12YXJpYW50LW91dGxpbmVkLnRleHQtZGVmYXVsdCxcbi52LWF2YXRhci0tdmFyaWFudC1vdXRsaW5lZC50ZXh0LWRlZmF1bHQsXG4udi1idG4udi1idG4tLXZhcmlhbnQtb3V0bGluZWQudGV4dC1kZWZhdWx0LFxuLnYtY2FyZC0tdmFyaWFudC1vdXRsaW5lZC50ZXh0LWRlZmF1bHQsXG4udi1jaGlwLS12YXJpYW50LW91dGxpbmVkLnRleHQtZGVmYXVsdCxcbi52LWxpc3QtaXRlbS0tdmFyaWFudC1vdXRsaW5lZC50ZXh0LWRlZmF1bHQge1xuICBib3JkZXItY29sb3I6IHJnYmEodmFyKC0tdi1ib3JkZXItY29sb3IpLCB2YXIoLS12LWJvcmRlci1vcGFjaXR5KSk7XG59XG5cbi52LWxhYmVsLmN1c3RvbS1pbnB1dCB7XG4gIHBhZGRpbmc6IDFyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEodmFyKC0tdi1ib3JkZXItY29sb3IpLCB2YXIoLS12LWJvcmRlci1vcGFjaXR5KSk7XG4gIG9wYWNpdHk6IDE7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG59XG4udi1sYWJlbC5jdXN0b20taW5wdXQgKyAudi1sYWJlbCB7XG4gIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XG59XG4udi1sYWJlbC5jdXN0b20taW5wdXQ6aG92ZXIge1xuICBib3JkZXItY29sb3I6IHJnYmEodmFyKC0tdi1ib3JkZXItY29sb3IpLCAwLjI1KTtcbn1cbi52LWxhYmVsLmN1c3RvbS1pbnB1dC5hY3RpdmUge1xuICBib3JkZXItY29sb3I6IHJnYih2YXIoLS12LXRoZW1lLXByaW1hcnkpKTtcbn1cbi52LWxhYmVsLmN1c3RvbS1pbnB1dC5hY3RpdmUgLnYtaWNvbiB7XG4gIGNvbG9yOiByZ2IodmFyKC0tdi10aGVtZS1wcmltYXJ5KSkgIWltcG9ydGFudDtcbn1cbi52LWxhYmVsLmN1c3RvbS1pbnB1dC5jdXN0b20tY2hlY2tib3ggLnYtaW5wdXRfX2NvbnRyb2wsIC52LWxhYmVsLmN1c3RvbS1pbnB1dC5jdXN0b20tcmFkaW8gLnYtaW5wdXRfX2NvbnRyb2wge1xuICBncmlkLWFyZWE6IG5vbmU7XG59XG5cbltkaXI9cnRsXSAudi1kYXRhLXRhYmxlLWZvb3Rlcl9fcGFnaW5hdGlvbiAudi1idG4gLnYtaWNvbiB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG59XG5cbi52LWRpYWxvZyAudi1kaWFsb2ctY2xvc2UtYnRuIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxO1xuICBjb2xvcjogcmdiYSh2YXIoLS12LXRoZW1lLW9uLXN1cmZhY2UpLCB2YXIoLS12LWRpc2FibGVkLW9wYWNpdHkpKSAhaW1wb3J0YW50O1xuICBpbnNldC1ibG9jay1zdGFydDogMC41cmVtO1xuICBpbnNldC1pbmxpbmUtZW5kOiAwLjVyZW07XG59XG4udi1kaWFsb2cgLnYtZGlhbG9nLWNsb3NlLWJ0biAudi1idG5fX292ZXJsYXkge1xuICBkaXNwbGF5OiBub25lO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDYwMHB4KSB7XG4gIC52LWRpYWxvZy52LWRpYWxvZy1zbSAudi1vdmVybGF5X19jb250ZW50LCAudi1kaWFsb2cudi1kaWFsb2ctbGcgLnYtb3ZlcmxheV9fY29udGVudCwgLnYtZGlhbG9nLnYtZGlhbG9nLXhsIC52LW92ZXJsYXlfX2NvbnRlbnQge1xuICAgIGlubGluZS1zaXplOiA1NjVweCAhaW1wb3J0YW50O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTYwcHgpIHtcbiAgLnYtZGlhbG9nLnYtZGlhbG9nLWxnIC52LW92ZXJsYXlfX2NvbnRlbnQsIC52LWRpYWxvZy52LWRpYWxvZy14bCAudi1vdmVybGF5X19jb250ZW50IHtcbiAgICBpbmxpbmUtc2l6ZTogODY1cHggIWltcG9ydGFudDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyNjRweCkge1xuICAudi1kaWFsb2cudi1kaWFsb2cteGwgLnYtb3ZlcmxheV9fY29udGVudCB7XG4gICAgaW5saW5lLXNpemU6IDExNjVweCAhaW1wb3J0YW50O1xuICB9XG59XG4udi1leHBhbnNpb24tcGFuZWxzLmN1c3RvbWl6ZWQtcGFuZWxzIHtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSh2YXIoLS12LWJvcmRlci1jb2xvciksIHZhcigtLXYtYm9yZGVyLW9wYWNpdHkpKTtcbiAgYm9yZGVyLXJhZGl1czogNnB4O1xufVxuLnYtZXhwYW5zaW9uLXBhbmVscy5jdXN0b21pemVkLXBhbmVscyAudi1leHBhbnNpb24tcGFuZWwtdGl0bGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IodmFyKC0tdi10aGVtZS1leHBhbnNpb24tcGFuZWwtdGV4dC1jdXN0b20tYmcpKTtcbiAgYm9yZGVyLWJsb2NrLWVuZDogMXB4IHNvbGlkIHJnYmEodmFyKC0tdi1ib3JkZXItY29sb3IpLCB2YXIoLS12LWJvcmRlci1vcGFjaXR5KSk7XG4gIG1hcmdpbi1ibG9jay1lbmQ6IC0xcHg7XG59XG4udi1leHBhbnNpb24tcGFuZWxzLmN1c3RvbWl6ZWQtcGFuZWxzIC52LWV4cGFuc2lvbi1wYW5lbC10ZXh0X193cmFwcGVyIHtcbiAgcGFkZGluZzogMjBweDtcbn1cblxuLnYtdGFicy52LXRhYnMtcGlsbCAudi10YWIudi1idG4ge1xuICBib3JkZXItcmFkaXVzOiA2cHggIWltcG9ydGFudDtcbiAgdHJhbnNpdGlvbjogbm9uZTtcbn1cbi52LXRhYnMudi10YWJzLXBpbGwgLnYtdGFiLnYtYnRuIC52LXRhYl9fc2xpZGVyIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG5ib2R5IC52LXRhYnMudi10YWJzLXBpbGwgLnYtc2xpZGUtZ3JvdXBfX2NvbnRlbnQge1xuICBnYXA6IDAuMjVyZW07XG59XG5ib2R5IC52LXRhYnMudi10YWJzLXBpbGwgLnYtdGFiLS1zZWxlY3RlZC50ZXh0LXByaW1hcnkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IodmFyKC0tdi10aGVtZS1wcmltYXJ5KSk7XG4gIGNvbG9yOiByZ2IodmFyKC0tdi10aGVtZS1vbi1wcmltYXJ5KSkgIWltcG9ydGFudDtcbn1cblxuYm9keSAudi10YWJzLnYtdGFicy1waWxsIC52LXNsaWRlLWdyb3VwX19jb250ZW50IHtcbiAgZ2FwOiAwLjI1cmVtO1xufVxuYm9keSAudi10YWJzLnYtdGFicy1waWxsIC52LXRhYi0tc2VsZWN0ZWQudGV4dC1zZWNvbmRhcnkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IodmFyKC0tdi10aGVtZS1zZWNvbmRhcnkpKTtcbiAgY29sb3I6IHJnYih2YXIoLS12LXRoZW1lLW9uLXNlY29uZGFyeSkpICFpbXBvcnRhbnQ7XG59XG5cbmJvZHkgLnYtdGFicy52LXRhYnMtcGlsbCAudi1zbGlkZS1ncm91cF9fY29udGVudCB7XG4gIGdhcDogMC4yNXJlbTtcbn1cbmJvZHkgLnYtdGFicy52LXRhYnMtcGlsbCAudi10YWItLXNlbGVjdGVkLnRleHQtZXJyb3Ige1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IodmFyKC0tdi10aGVtZS1lcnJvcikpO1xuICBjb2xvcjogcmdiKHZhcigtLXYtdGhlbWUtb24tZXJyb3IpKSAhaW1wb3J0YW50O1xufVxuXG5ib2R5IC52LXRhYnMudi10YWJzLXBpbGwgLnYtc2xpZGUtZ3JvdXBfX2NvbnRlbnQge1xuICBnYXA6IDAuMjVyZW07XG59XG5ib2R5IC52LXRhYnMudi10YWJzLXBpbGwgLnYtdGFiLS1zZWxlY3RlZC50ZXh0LWluZm8ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IodmFyKC0tdi10aGVtZS1pbmZvKSk7XG4gIGNvbG9yOiByZ2IodmFyKC0tdi10aGVtZS1vbi1pbmZvKSkgIWltcG9ydGFudDtcbn1cblxuYm9keSAudi10YWJzLnYtdGFicy1waWxsIC52LXNsaWRlLWdyb3VwX19jb250ZW50IHtcbiAgZ2FwOiAwLjI1cmVtO1xufVxuYm9keSAudi10YWJzLnYtdGFicy1waWxsIC52LXRhYi0tc2VsZWN0ZWQudGV4dC1zdWNjZXNzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKHZhcigtLXYtdGhlbWUtc3VjY2VzcykpO1xuICBjb2xvcjogcmdiKHZhcigtLXYtdGhlbWUtb24tc3VjY2VzcykpICFpbXBvcnRhbnQ7XG59XG5cbmJvZHkgLnYtdGFicy52LXRhYnMtcGlsbCAudi1zbGlkZS1ncm91cF9fY29udGVudCB7XG4gIGdhcDogMC4yNXJlbTtcbn1cbmJvZHkgLnYtdGFicy52LXRhYnMtcGlsbCAudi10YWItLXNlbGVjdGVkLnRleHQtd2FybmluZyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYih2YXIoLS12LXRoZW1lLXdhcm5pbmcpKTtcbiAgY29sb3I6IHJnYih2YXIoLS12LXRoZW1lLW9uLXdhcm5pbmcpKSAhaW1wb3J0YW50O1xufVxuXG4udi10aW1lbGluZS0tdmVydGljYWwudi10aW1lbGluZSAudi10aW1lbGluZS1pdGVtIC52LXRpbWVsaW5lLWl0ZW1fX2JvZHkge1xuICBqdXN0aWZ5LXNlbGY6IHN0cmV0Y2ggIWltcG9ydGFudDtcbn1cblxuLnYtc3dpdGNoIC52LXNlbGVjdGlvbi1jb250cm9sOm5vdCgudi1zZWxlY3Rpb24tY29udHJvbC0tZGlydHkpIC52LXN3aXRjaF9fdGh1bWIge1xuICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xufVxuXG4vKiDwn5GJIERlbW8gc3BhY2VycyAqL1xuLyogVE9ETzogVXNlIHZ1ZXRpZnkgU0NTUyB2YXJpYWJsZSBoZXJlOyAqL1xuLmRlbW8tc3BhY2UteCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWFyZ2luLWJsb2NrLXN0YXJ0OiAtMTZweDtcbn1cbi5kZW1vLXNwYWNlLXggPiAqIHtcbiAgbWFyZ2luLWJsb2NrLXN0YXJ0OiAxNnB4O1xuICBtYXJnaW4taW5saW5lLWVuZDogMTZweDtcbn1cblxuLmRlbW8tc3BhY2UteSA+ICoge1xuICBtYXJnaW4tYmxvY2stZW5kOiAxNnB4O1xufVxuLmRlbW8tc3BhY2UteSA+ICo6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ibG9jay1lbmQ6IDA7XG59XG5cbi5tYXRjaC1oZWlnaHQudi1yb3cgLnYtY2FyZCB7XG4gIGJsb2NrLXNpemU6IDEwMCU7XG59XG5cbi53aGl0ZXNwYWNlLW5vLXdyYXAge1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4vKlxuICDihLnvuI8gVnVldGlmeSBpcyBhcHBseWluZyBgLnRleHQtd2hpdGVgIGNsYXNzIHRvIGJhZGdlIGljb24gYnV0IGRvbid0IHByb3ZpZGUgaXRzIHN0eWxlc1xuICBNb3Jlb3Zlciwgd2UgYWxzbyB1c2UgdGhpcyBjbGFzcyBpbiBzb21lIHBsYWNlc1xuXG4gIOKEue+4jyBJbiB2dWV0aWZ5IDIgd2l0aCBgJGNvbG9yLXBhY2s6IGZhbHNlYCBTQ1NTIHZhciBjb25maWcgdGhpcyBjbGFzcyB3YXMgZ2V0dGluZyBnZW5lcmF0ZWQgYnV0IHRoaXMgaXMgbm90IHRoZSBjYXNlIGluIHYzXG5cbiAg4oS577iPIFdlIGFsc28gbmVlZCAhaW1wb3J0YW50IHRvIGdldCBjb3JyZWN0IGNvbG9yIGluIGJhZGdlIGljb25cbiovXG4udGV4dC13aGl0ZSB7XG4gIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG59XG5cbi50ZXh0LXdoaXRlLXZhcmlhbnQge1xuICBjb2xvcjogcmdiKDIxMSwgMjEyLCAyMjApO1xufVxuXG4udGV4dC1saW5rOm5vdCg6aG92ZXIpIHtcbiAgY29sb3I6IHJnYmEodmFyKC0tdi10aGVtZS1vbi1zdXJmYWNlKSwgdmFyKC0tdi1oaWdoLWVtcGhhc2lzLW9wYWNpdHkpKTtcbn1cblxuLnRleHQtbGluazpub3QoOmhvdmVyKSB7XG4gIGNvbG9yOiByZ2JhKHZhcigtLXYtdGhlbWUtb24tc3VyZmFjZSksIHZhcigtLXYtaGlnaC1lbXBoYXNpcy1vcGFjaXR5KSk7XG59XG5cbi5iZy12YXItdGhlbWUtYmFja2dyb3VuZCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEodmFyKC0tdi10aGVtZS1vbi1iYWNrZ3JvdW5kKSwgdmFyKC0tdi1ob3Zlci1vcGFjaXR5KSkgIWltcG9ydGFudDtcbn1cblxuLmJnLWdsb2JhbC1wcmltYXJ5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKHZhcigtLXYtZ2xvYmFsLXRoZW1lLXByaW1hcnkpKSAhaW1wb3J0YW50O1xuICBjb2xvcjogcmdiKHZhcigtLXYtdGhlbWUtb24tcHJpbWFyeSkpICFpbXBvcnRhbnQ7XG59XG5cbi5iZy1saWdodC1wcmltYXJ5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSh2YXIoLS12LXRoZW1lLXByaW1hcnkpLCB2YXIoLS12LWFjdGl2YXRlZC1vcGFjaXR5KSkgIWltcG9ydGFudDtcbn1cblxuLmJnLWxpZ2h0LXNlY29uZGFyeSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEodmFyKC0tdi10aGVtZS1zZWNvbmRhcnkpLCB2YXIoLS12LWFjdGl2YXRlZC1vcGFjaXR5KSkgIWltcG9ydGFudDtcbn1cblxuLmJnLWxpZ2h0LWVycm9yIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSh2YXIoLS12LXRoZW1lLWVycm9yKSwgdmFyKC0tdi1hY3RpdmF0ZWQtb3BhY2l0eSkpICFpbXBvcnRhbnQ7XG59XG5cbi5iZy1saWdodC1pbmZvIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSh2YXIoLS12LXRoZW1lLWluZm8pLCB2YXIoLS12LWFjdGl2YXRlZC1vcGFjaXR5KSkgIWltcG9ydGFudDtcbn1cblxuLmJnLWxpZ2h0LXN1Y2Nlc3Mge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKHZhcigtLXYtdGhlbWUtc3VjY2VzcyksIHZhcigtLXYtYWN0aXZhdGVkLW9wYWNpdHkpKSAhaW1wb3J0YW50O1xufVxuXG4uYmctbGlnaHQtd2FybmluZyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEodmFyKC0tdi10aGVtZS13YXJuaW5nKSwgdmFyKC0tdi1hY3RpdmF0ZWQtb3BhY2l0eSkpICFpbXBvcnRhbnQ7XG59XG5cbi5jbGFtcC10ZXh0IHtcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XG4gIC13ZWJraXQtbGluZS1jbGFtcDogMjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG59XG5cbi5jdXN0b20tYmFkZ2UgLnYtYmFkZ2VfX2JhZGdlIHtcbiAgYm9yZGVyLXJhZGl1czogNnB4ICFpbXBvcnRhbnQ7XG4gIGJsb2NrLXNpemU6IDEycHggIWltcG9ydGFudDtcbiAgaW5saW5lLXNpemU6IDEycHggIWltcG9ydGFudDtcbn1cblxuLmxlYWRpbmctbm9ybWFsIHtcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbCAhaW1wb3J0YW50O1xufVxuXG5bZGlyPXJ0bF0gLmZsaXAtaW4tcnRsIHtcbiAgdHJhbnNmb3JtOiBzY2FsZVgoLTEpO1xufVxuXG4uY2Fyb3VzZWwtZGVsaW1pdGVyLXRvcC1lbmQgLnYtY2Fyb3VzZWxfX2NvbnRyb2xzIHtcbiAganVzdGlmeS1jb250ZW50OiBlbmQ7XG4gIGJsb2NrLXNpemU6IDQwcHg7XG4gIGluc2V0LWJsb2NrLXN0YXJ0OiAwO1xuICBwYWRkaW5nLWlubGluZTogMXJlbTtcbn1cbi5jYXJvdXNlbC1kZWxpbWl0ZXItdG9wLWVuZCAudi1jYXJvdXNlbF9fY29udHJvbHMgLnYtYnRuLS1pY29uLnYtYnRuLS1kZW5zaXR5LWRlZmF1bHQge1xuICBibG9jay1zaXplOiBjYWxjKHZhcigtLXYtYnRuLWhlaWdodCkgLSAxMHB4KTtcbiAgaW5saW5lLXNpemU6IGNhbGModmFyKC0tdi1idG4taGVpZ2h0KSAtIDhweCk7XG59XG4uY2Fyb3VzZWwtZGVsaW1pdGVyLXRvcC1lbmQgLnYtY2Fyb3VzZWxfX2NvbnRyb2xzIC52LWJ0bi0taWNvbi52LWJ0bi0tZGVuc2l0eS1kZWZhdWx0LnYtYnRuLS1hY3RpdmUge1xuICBjb2xvcjogI2ZmZjtcbn1cbi5jYXJvdXNlbC1kZWxpbWl0ZXItdG9wLWVuZCAudi1jYXJvdXNlbF9fY29udHJvbHMgLnYtYnRuLS1pY29uLnYtYnRuLS1kZW5zaXR5LWRlZmF1bHQgLnYtYnRuX19vdmVybGF5IHtcbiAgb3BhY2l0eTogMDtcbn1cbi5jYXJvdXNlbC1kZWxpbWl0ZXItdG9wLWVuZCAudi1jYXJvdXNlbF9fY29udHJvbHMgLnYtYnRuLS1pY29uLnYtYnRuLS1kZW5zaXR5LWRlZmF1bHQgLnYtcmlwcGxlX19jb250YWluZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuLmNhcm91c2VsLWRlbGltaXRlci10b3AtZW5kIC52LWNhcm91c2VsX19jb250cm9scyAudi1idG4tLWljb24udi1idG4tLWRlbnNpdHktZGVmYXVsdCAudi1idG5fX2NvbnRlbnQgLnYtaWNvbiB7XG4gIGJsb2NrLXNpemU6IDhweCAhaW1wb3J0YW50O1xuICBmb250LXNpemU6IDhweCAhaW1wb3J0YW50O1xuICBpbmxpbmUtc2l6ZTogOHB4ICFpbXBvcnRhbnQ7XG59XG4uY2Fyb3VzZWwtZGVsaW1pdGVyLXRvcC1lbmQuZG90cy1hY3RpdmUtcHJpbWFyeSAudi1jYXJvdXNlbF9fY29udHJvbHMgLnYtYnRuLS1hY3RpdmUge1xuICBjb2xvcjogcmdiKHZhcigtLXYtdGhlbWUtcHJpbWFyeSkpICFpbXBvcnRhbnQ7XG59XG4uY2Fyb3VzZWwtZGVsaW1pdGVyLXRvcC1lbmQuZG90cy1hY3RpdmUtc2Vjb25kYXJ5IC52LWNhcm91c2VsX19jb250cm9scyAudi1idG4tLWFjdGl2ZSB7XG4gIGNvbG9yOiByZ2IodmFyKC0tdi10aGVtZS1zZWNvbmRhcnkpKSAhaW1wb3J0YW50O1xufVxuLmNhcm91c2VsLWRlbGltaXRlci10b3AtZW5kLmRvdHMtYWN0aXZlLWVycm9yIC52LWNhcm91c2VsX19jb250cm9scyAudi1idG4tLWFjdGl2ZSB7XG4gIGNvbG9yOiByZ2IodmFyKC0tdi10aGVtZS1lcnJvcikpICFpbXBvcnRhbnQ7XG59XG4uY2Fyb3VzZWwtZGVsaW1pdGVyLXRvcC1lbmQuZG90cy1hY3RpdmUtaW5mbyAudi1jYXJvdXNlbF9fY29udHJvbHMgLnYtYnRuLS1hY3RpdmUge1xuICBjb2xvcjogcmdiKHZhcigtLXYtdGhlbWUtaW5mbykpICFpbXBvcnRhbnQ7XG59XG4uY2Fyb3VzZWwtZGVsaW1pdGVyLXRvcC1lbmQuZG90cy1hY3RpdmUtc3VjY2VzcyAudi1jYXJvdXNlbF9fY29udHJvbHMgLnYtYnRuLS1hY3RpdmUge1xuICBjb2xvcjogcmdiKHZhcigtLXYtdGhlbWUtc3VjY2VzcykpICFpbXBvcnRhbnQ7XG59XG4uY2Fyb3VzZWwtZGVsaW1pdGVyLXRvcC1lbmQuZG90cy1hY3RpdmUtd2FybmluZyAudi1jYXJvdXNlbF9fY29udHJvbHMgLnYtYnRuLS1hY3RpdmUge1xuICBjb2xvcjogcmdiKHZhcigtLXYtdGhlbWUtd2FybmluZykpICFpbXBvcnRhbnQ7XG59XG5cbi52LXRpbWVsaW5lLWl0ZW0gLmFwcC10aW1lbGluZS10aXRsZSB7XG4gIGNvbG9yOiByZ2JhKHZhcigtLXYtdGhlbWUtb24tc3VyZmFjZSksIHZhcigtLXYtaGlnaC1lbXBoYXNpcy1vcGFjaXR5KSk7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgbGluZS1oZWlnaHQ6IDEuMzEyNXJlbTtcbn1cbi52LXRpbWVsaW5lLWl0ZW0gLmFwcC10aW1lbGluZS1tZXRhIHtcbiAgY29sb3I6IHJnYmEodmFyKC0tdi10aGVtZS1vbi1zdXJmYWNlKSwgdmFyKC0tdi1kaXNhYmxlZC1vcGFjaXR5KSk7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgbGluZS1oZWlnaHQ6IDAuODc1cmVtO1xufVxuLnYtdGltZWxpbmUtaXRlbSAuYXBwLXRpbWVsaW5lLXRleHQge1xuICBjb2xvcjogcmdiYSh2YXIoLS12LXRoZW1lLW9uLXN1cmZhY2UpLCB2YXIoLS12LW1lZGl1bS1lbXBoYXNpcy1vcGFjaXR5KSk7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgbGluZS1oZWlnaHQ6IDEuMjVyZW07XG59XG4udi10aW1lbGluZS1pdGVtIC50aW1lbGluZS1jaGlwIHtcbiAgYm9yZGVyLXJhZGl1czogNnB4O1xuICBiYWNrZ3JvdW5kOiByZ2JhKHZhcigtLXYtdGhlbWUtb24tc3VyZmFjZSksIHZhcigtLXYtaG92ZXItb3BhY2l0eSkpO1xuICBwYWRkaW5nLWJsb2NrOiA1cHg7XG4gIHBhZGRpbmctaW5saW5lOiAxMHB4O1xufVxuXG4uYXBwLXRyYW5zaXRpb24tem9vbS1mYWRlLWVudGVyLWFjdGl2ZSxcbi5hcHAtdHJhbnNpdGlvbi16b29tLWZhZGUtbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMzVzLCBvcGFjaXR5IDAuMjhzIGVhc2UtaW4tb3V0O1xufVxuXG4uYXBwLXRyYW5zaXRpb24tem9vbS1mYWRlLWVudGVyLWZyb20ge1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuOTgpO1xufVxuXG4uYXBwLXRyYW5zaXRpb24tem9vbS1mYWRlLWxlYXZlLXRvIHtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjAyKTtcbn1cblxuLmFwcC10cmFuc2l0aW9uLWZhZGUtZW50ZXItYWN0aXZlLFxuLmFwcC10cmFuc2l0aW9uLWZhZGUtbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjI1cyBlYXNlLWluLW91dDtcbn1cblxuLmFwcC10cmFuc2l0aW9uLWZhZGUtZW50ZXItZnJvbSxcbi5hcHAtdHJhbnNpdGlvbi1mYWRlLWxlYXZlLXRvIHtcbiAgb3BhY2l0eTogMDtcbn1cblxuLmFwcC10cmFuc2l0aW9uLWZhZGUtYm90dG9tLWVudGVyLWFjdGl2ZSxcbi5hcHAtdHJhbnNpdGlvbi1mYWRlLWJvdHRvbS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MsIHRyYW5zZm9ybSAwLjM1cztcbn1cblxuLmFwcC10cmFuc2l0aW9uLWZhZGUtYm90dG9tLWVudGVyLWZyb20ge1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTAuNnJlbSk7XG59XG5cbi5hcHAtdHJhbnNpdGlvbi1mYWRlLWJvdHRvbS1sZWF2ZS10byB7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwLjZyZW0pO1xufVxuXG4uYXBwLXRyYW5zaXRpb24tc2xpZGUtZmFkZS1lbnRlci1hY3RpdmUsXG4uYXBwLXRyYW5zaXRpb24tc2xpZGUtZmFkZS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MsIHRyYW5zZm9ybSAwLjM1cztcbn1cblxuLmFwcC10cmFuc2l0aW9uLXNsaWRlLWZhZGUtZW50ZXItZnJvbSB7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMC42cmVtKTtcbn1cblxuLmFwcC10cmFuc2l0aW9uLXNsaWRlLWZhZGUtbGVhdmUtdG8ge1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMC42cmVtKTtcbn1cblxuLmFwcC10cmFuc2l0aW9uLXpvb20tb3V0LWVudGVyLWFjdGl2ZSxcbi5hcHAtdHJhbnNpdGlvbi16b29tLW91dC1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMjZzIGVhc2UtaW4tb3V0LCB0cmFuc2Zvcm0gMC4zcyBlYXNlLW91dDtcbn1cblxuLmFwcC10cmFuc2l0aW9uLXpvb20tb3V0LWVudGVyLWZyb20sXG4uYXBwLXRyYW5zaXRpb24tem9vbS1vdXQtbGVhdmUtdG8ge1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuOTgpO1xufVxuXG5ib2R5LnYtdGhlbWUtLWRhcmsgLnBzX19yYWlsLXksXG5ib2R5LnYtdGhlbWUtLWRhcmsgLnBzX19yYWlsLXgge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xufVxuYm9keS52LXRoZW1lLS1kYXJrIC5wc19fdGh1bWIteSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEodmFyKC0tdi10aGVtZS1zdXJmYWNlLXZhcmlhbnQpLCAwLjM1KTtcbn1cblxuLnBzX190aHVtYi15IHtcbiAgaW5saW5lLXNpemU6IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgaW5zZXQtaW5saW5lLWVuZDogMC4wNjI1cmVtO1xufVxuXG4ucHNfX3RodW1iLXksXG4ucHNfX3RodW1iLXgge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IodmFyKC0tdi10aGVtZS1wZXJmZWN0LXNjcm9sbGJhci10aHVtYikpICFpbXBvcnRhbnQ7XG59XG5cbi5wc19fdGh1bWIteCB7XG4gIGJsb2NrLXNpemU6IDAuMjVyZW0gIWltcG9ydGFudDtcbn1cblxuLnBzX19yYWlsLXgge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICBibG9jay1zaXplOiAwLjVyZW07XG59XG5cbi5wc19fcmFpbC15IHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgaW5saW5lLXNpemU6IDAuNXJlbSAhaW1wb3J0YW50O1xuICBpbnNldC1pbmxpbmUtZW5kOiAwLjEyNXJlbSAhaW1wb3J0YW50O1xuICBpbnNldC1pbmxpbmUtc3RhcnQ6IHVuc2V0ICFpbXBvcnRhbnQ7XG59XG5cbi5wc19fcmFpbC15LnBzLS1jbGlja2luZyAucHNfX3RodW1iLXksXG4ucHNfX3JhaWwteTpmb2N1cyA+IC5wc19fdGh1bWIteSxcbi5wc19fcmFpbC15OmhvdmVyID4gLnBzX190aHVtYi15IHtcbiAgaW5saW5lLXNpemU6IDAuMzc1cmVtICFpbXBvcnRhbnQ7XG59XG5cbmEge1xuICBjb2xvcjogcmdiKHZhcigtLXYtdGhlbWUtcHJpbWFyeSkpO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbnAge1xuICBtYXJnaW4tYmxvY2stZW5kOiAxcmVtO1xufVxuXG5zdmcuaWNvbmlmeSB7XG4gIGJsb2NrLXNpemU6IDFlbTtcbiAgaW5saW5lLXNpemU6IDFlbTtcbn1cblxuLmxheW91dC1uYXYtdHlwZS12ZXJ0aWNhbCAubGF5b3V0LXZlcnRpY2FsLW5hdiB7XG4gIGNvbG9yOiByZ2JhKHZhcigtLXYtdGhlbWUtb24tYmFja2dyb3VuZCksIHZhcigtLXYtaGlnaC1lbXBoYXNpcy1vcGFjaXR5KSk7XG4gIGJveC1zaGFkb3c6IDAgMnB4IDhweCByZ2JhKHZhcigtLXYtc2hhZG93LWtleS11bWJyYS1jb2xvciksIHZhcigtLXYtc2hhZG93LXNtLW9wYWNpdHkpKSwgMCAwIHRyYW5zcGFyZW50LCAwIDAgdHJhbnNwYXJlbnQ7XG59XG4ubGF5b3V0LW5hdi10eXBlLXZlcnRpY2FsIC5sYXlvdXQtdmVydGljYWwtbmF2IC5uYXYtaGVhZGVyIHtcbiAgcGFkZGluZy1pbmxpbmUtZW5kOiAwLjEyNXJlbTtcbn1cbi5sYXlvdXQtbmF2LXR5cGUtdmVydGljYWwgLmxheW91dC12ZXJ0aWNhbC1uYXYgLm5hdi1oZWFkZXIgLmFwcC1sb2dvIC5hcHAtdGl0bGUge1xuICBmb250LXNpemU6IDIycHg7XG59XG4ubGF5b3V0LW5hdi10eXBlLXZlcnRpY2FsIC5sYXlvdXQtdmVydGljYWwtbmF2IC5uYXYtaXRlbXMge1xuICBwYWRkaW5nLWJsb2NrOiAwLjI1cmVtO1xufVxuLmxheW91dC1uYXYtdHlwZS12ZXJ0aWNhbCAubGF5b3V0LXZlcnRpY2FsLW5hdiAubmF2LWxpbmssXG4ubGF5b3V0LW5hdi10eXBlLXZlcnRpY2FsIC5sYXlvdXQtdmVydGljYWwtbmF2IC5uYXYtZ3JvdXAge1xuICAvKiBzaGFkb3cgY3V0IGlzc3VlIGZpeCAqL1xuICBtYXJnaW4tYmxvY2stZW5kOiAtMC41cmVtO1xuICBwYWRkaW5nLWJsb2NrLWVuZDogMC41cmVtO1xufVxuLmxheW91dC1uYXYtdHlwZS12ZXJ0aWNhbCAubGF5b3V0LXZlcnRpY2FsLW5hdiAubmF2LWxpbmsgYSxcbi5sYXlvdXQtbmF2LXR5cGUtdmVydGljYWwgLmxheW91dC12ZXJ0aWNhbC1uYXYgLm5hdi1ncm91cCBhIHtcbiAgb3V0bGluZTogbm9uZTtcbn1cbi5sYXlvdXQtbmF2LXR5cGUtdmVydGljYWwgLmxheW91dC12ZXJ0aWNhbC1uYXYgLm5hdi1zZWN0aW9uLXRpdGxlIC5wbGFjZWhvbGRlci1pY29uIHtcbiAgbWFyZ2luLWlubGluZS1zdGFydDogMC4wNjI1cmVtO1xuICB0cmFuc2Zvcm06IHNjYWxlWCgxLjYpO1xufVxuW2Rpcj1ydGxdIC5sYXlvdXQtbmF2LXR5cGUtdmVydGljYWwgLmxheW91dC12ZXJ0aWNhbC1uYXYgLm5hdi1zZWN0aW9uLXRpdGxlIC5wbGFjZWhvbGRlci1pY29uIHtcbiAgbWFyZ2luLWlubGluZS1zdGFydDogMC4xMjVyZW07XG59XG4ubGF5b3V0LW5hdi10eXBlLXZlcnRpY2FsLmxheW91dC12ZXJ0aWNhbC1uYXYtY29sbGFwc2VkIC5sYXlvdXQtdmVydGljYWwtbmF2Om5vdCguaG92ZXJlZCkgLm5hdi1oZWFkZXIgLmhlYWRlci1hY3Rpb24ge1xuICBvcGFjaXR5OiAwO1xufVxuXG4ubGF5b3V0LWhvcml6b250YWwtbmF2IHtcbiAgY29sb3I6IHJnYmEodmFyKC0tdi10aGVtZS1vbi1iYWNrZ3JvdW5kKSwgdmFyKC0tdi1oaWdoLWVtcGhhc2lzLW9wYWNpdHkpKTtcbn1cbi5sYXlvdXQtaG9yaXpvbnRhbC1uYXYgLm5hdi1ncm91cCAucG9wcGVyLWNvbnRlbnQgLm5hdi1ncm91cC5hY3RpdmUgPiAucG9wcGVyLXRyaWdnZXJlciAubmF2LWdyb3VwLWxhYmVsLFxuLmxheW91dC1ob3Jpem9udGFsLW5hdiAubmF2LWxpbmsgLnBvcHBlci1jb250ZW50IC5uYXYtZ3JvdXAuYWN0aXZlID4gLnBvcHBlci10cmlnZ2VyZXIgLm5hdi1ncm91cC1sYWJlbCB7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG59XG4ubGF5b3V0LWhvcml6b250YWwtbmF2IC5uYXYtZ3JvdXAgLnBvcHBlci1jb250ZW50IC5uYXYtZ3JvdXAuc3ViLWl0ZW0gLnN1Yi1pdGVtIC5uYXYtZ3JvdXAtbGFiZWwgLm5hdi1pdGVtLWljb24sXG4ubGF5b3V0LWhvcml6b250YWwtbmF2IC5uYXYtbGluayAucG9wcGVyLWNvbnRlbnQgLm5hdi1ncm91cC5zdWItaXRlbSAuc3ViLWl0ZW0gLm5hdi1ncm91cC1sYWJlbCAubmF2LWl0ZW0taWNvbiB7XG4gIGNvbG9yOiByZ2JhKHZhcigtLXYtdGhlbWUtb24tc3VyZmFjZSksIHZhcigtLXYtbWVkaXVtLWVtcGhhc2lzLW9wYWNpdHkpKTtcbn1cbi5sYXlvdXQtaG9yaXpvbnRhbC1uYXYgLm5hdi1ncm91cCAucG9wcGVyLWNvbnRlbnQgLm5hdi1ncm91cC5zdWItaXRlbSAuc3ViLWl0ZW0gYTpub3QoLnJvdXRlci1saW5rLWV4YWN0LWFjdGl2ZSkgLm5hdi1pdGVtLWljb24sXG4ubGF5b3V0LWhvcml6b250YWwtbmF2IC5uYXYtbGluayAucG9wcGVyLWNvbnRlbnQgLm5hdi1ncm91cC5zdWItaXRlbSAuc3ViLWl0ZW0gYTpub3QoLnJvdXRlci1saW5rLWV4YWN0LWFjdGl2ZSkgLm5hdi1pdGVtLWljb24ge1xuICBjb2xvcjogcmdiYSh2YXIoLS12LXRoZW1lLW9uLXN1cmZhY2UpLCB2YXIoLS12LW1lZGl1bS1lbXBoYXNpcy1vcGFjaXR5KSk7XG59XG4ubGF5b3V0LWhvcml6b250YWwtbmF2IC5uYXYtZ3JvdXAgLnBvcHBlci1jb250ZW50IC5uYXYtbGluay5zdWItaXRlbSAucm91dGVyLWxpbmstYWN0aXZlLnJvdXRlci1saW5rLWV4YWN0LWFjdGl2ZSxcbi5sYXlvdXQtaG9yaXpvbnRhbC1uYXYgLm5hdi1saW5rIC5wb3BwZXItY29udGVudCAubmF2LWxpbmsuc3ViLWl0ZW0gLnJvdXRlci1saW5rLWFjdGl2ZS5yb3V0ZXItbGluay1leGFjdC1hY3RpdmUge1xuICBmb250LXdlaWdodDogNTAwO1xufVxuXG4ubGF5b3V0LWZvb3Rlci1zdGlja3kubGF5b3V0LXdyYXBwZXIubGF5b3V0LW5hdi10eXBlLXZlcnRpY2FsIC5sYXlvdXQtZm9vdGVyIC5mb290ZXItY29udGVudC1jb250YWluZXIge1xuICBib3gtc2hhZG93OiAwIDNweCAxMnB4IHJnYmEodmFyKC0tdi1zaGFkb3cta2V5LXVtYnJhLWNvbG9yKSwgdmFyKC0tdi1zaGFkb3ctbWQtb3BhY2l0eSkpLCAwIDAgdHJhbnNwYXJlbnQsIDAgMCB0cmFuc3BhcmVudDtcbn1cblxuLmxheW91dC13cmFwcGVyLmxheW91dC1uYXYtdHlwZS1ob3Jpem9udGFsIC5sYXlvdXQtbmF2YmFyLWFuZC1uYXYtY29udGFpbmVyIC5hcHAtbG9nbyAuYXBwLXRpdGxlIHtcbiAgZm9udC1zaXplOiAyMnB4O1xufVxuXG4uc2tpbi0tYm9yZGVyZWQgLnYtZXhwYW5zaW9uLXBhbmVsczpub3QoLmV4cGFuc2lvbi1wYW5lbHMtd2lkdGgtYm9yZGVyKSAudi1leHBhbnNpb24tcGFuZWwsIC5za2luLS1ib3JkZXJlZCAudi1leHBhbnNpb24tcGFuZWxfX3NoYWRvdyB7XG4gIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSh2YXIoLS12LWJvcmRlci1jb2xvciksIHZhcigtLXYtYm9yZGVyLW9wYWNpdHkpKTtcbn1cbi5za2luLS1ib3JkZXJlZCAubGF5b3V0LW5hdi10eXBlLXZlcnRpY2FsIC5sYXlvdXQtbmF2YmFyIC5uYXZiYXItY29udGVudC1jb250YWluZXIge1xuICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEodmFyKC0tdi1ib3JkZXItY29sb3IpLCB2YXIoLS12LWJvcmRlci1vcGFjaXR5KSk7XG59XG4uc2tpbi0tYm9yZGVyZWQgLmxheW91dC1uYXYtdHlwZS12ZXJ0aWNhbC53aW5kb3ctc2Nyb2xsZWQgLmxheW91dC1uYXZiYXIgLm5hdmJhci1jb250ZW50LWNvbnRhaW5lciB7XG4gIGJvcmRlci1ibG9jay1zdGFydDogMXB4IHNvbGlkIHJnYmEodmFyKC0tdi1ib3JkZXItY29sb3IpLCB2YXIoLS12LWJvcmRlci1vcGFjaXR5KSkgIWltcG9ydGFudDtcbn1cbi5za2luLS1ib3JkZXJlZCAudi1kaWFsb2ctY2xvc2UtYnRuIHtcbiAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKHZhcigtLXYtYm9yZGVyLWNvbG9yKSwgdmFyKC0tdi1ib3JkZXItb3BhY2l0eSkpO1xufVxuLnNraW4tLWJvcmRlcmVkIC5sYXlvdXQtdmVydGljYWwtbmF2IHtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cbi5za2luLS1ib3JkZXJlZCAudi1leHBhbnNpb24tcGFuZWxzLmV4cGFuc2lvbi1wYW5lbHMtd2lkdGgtYm9yZGVyIC52LWV4cGFuc2lvbi1wYW5lbF9fc2hhZG93IHtcbiAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xufVxuLnNraW4tLWJvcmRlcmVkIC52LWV4cGFuc2lvbi1wYW5lbHMuZXhwYW5zaW9uLXBhbmVscy13aWR0aC1ib3JkZXIgLnYtZXhwYW5zaW9uLXBhbmVsIHtcbiAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG59XG4uc2tpbi0tYm9yZGVyZWQgLnYtZXhwYW5zaW9uLXBhbmVscy5leHBhbnNpb24tcGFuZWxzLXdpZHRoLWJvcmRlciAudi1leHBhbnNpb24tcGFuZWw6bm90KDpsYXN0LWNoaWxkKSB7XG4gIG1hcmdpbi1ibG9jay1lbmQ6IC0xcHg7XG59XG4uc2tpbi0tYm9yZGVyZWQgLnYtZXhwYW5zaW9uLXBhbmVscy5leHBhbnNpb24tcGFuZWxzLXdpZHRoLWJvcmRlciAudi1leHBhbnNpb24tcGFuZWw6OmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbn1cbi5za2luLS1ib3JkZXJlZCAudi1zZWxlY3RfX2NvbnRlbnQsXG4uc2tpbi0tYm9yZGVyZWQgLnYtY29tYm9ib3hfX2NvbnRlbnQsXG4uc2tpbi0tYm9yZGVyZWQgLnYtYXV0b2NvbXBsZXRlX19jb250ZW50IHtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cbi5za2luLS1ib3JkZXJlZCAuZmxhdHBpY2tyLWNhbGVuZGFyIHtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSh2YXIoLS12LWJvcmRlci1jb2xvciksIHZhcigtLXYtYm9yZGVyLW9wYWNpdHkpKTtcbiAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xufVxuLnNraW4tLWJvcmRlcmVkIC5mYyAuZmMtcG9wb3ZlciB7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG4uc2tpbi0tYm9yZGVyZWQgLnYtbmF2aWdhdGlvbi1kcmF3ZXI6bm90KC5hcHAtY3VzdG9taXplcikge1xuICBib3gtc2hhZG93OiBub25lO1xufVxuLnNraW4tLWJvcmRlcmVkIC5zaGVwaGVyZC1lbGVtZW50IHtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cblxuLnYtdGltZWxpbmUtaXRlbSAuYXBwLXRpbWVsaW5lLXRpdGxlIHtcbiAgY29sb3I6IHJnYmEodmFyKC0tdi10aGVtZS1vbi1zdXJmYWNlKSwgdmFyKC0tdi1oaWdoLWVtcGhhc2lzLW9wYWNpdHkpKTtcbiAgZm9udC1zaXplOiAxNXB4O1xuICBmb250LXdlaWdodDogNTAwO1xuICBsaW5lLWhlaWdodDogMS4zMTI1cmVtO1xufVxuLnYtdGltZWxpbmUtaXRlbSAuYXBwLXRpbWVsaW5lLW1ldGEge1xuICBjb2xvcjogcmdiYSh2YXIoLS12LXRoZW1lLW9uLXN1cmZhY2UpLCB2YXIoLS12LWRpc2FibGVkLW9wYWNpdHkpKTtcbiAgZm9udC1zaXplOiAxMXB4O1xuICBsaW5lLWhlaWdodDogMC44NzVyZW07XG59XG4udi10aW1lbGluZS1pdGVtIC5hcHAtdGltZWxpbmUtdGV4dCB7XG4gIGNvbG9yOiByZ2JhKHZhcigtLXYtdGhlbWUtb24tc3VyZmFjZSksIHZhcigtLXYtbWVkaXVtLWVtcGhhc2lzLW9wYWNpdHkpKTtcbiAgZm9udC1zaXplOiAxM3B4O1xuICBsaW5lLWhlaWdodDogMS4yNXJlbTtcbn1cblxuLnYtc3BhY2VyIHtcbiAgZmxleC1ncm93OiAxO1xufVxuXG4uYXBwLWxvZ28ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBjb2x1bW4tZ2FwOiAwLjc1cmVtO1xufVxuLmFwcC1sb2dvIC5hcHAtbG9nby10aXRsZSB7XG4gIGZvbnQtc2l6ZTogMS4zNzVyZW07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGxldHRlci1zcGFjaW5nOiAwLjI1cHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjVyZW07XG4gIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xufVxuXG4udGV4dC13aGl0ZS12YXJpYW50IHtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43OCkgIWltcG9ydGFudDtcbn1cblxuLmJnLWN1c3RvbS1iYWNrZ3JvdW5kIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKHZhcigtLXYtdGFibGUtaGVhZGVyLWNvbG9yKSk7XG59IiwiQHVzZSBcInZ1ZXRpZnkvbGliL3N0eWxlcy90b29scy9mdW5jdGlvbnNcIiBhcyAqO1xuXG4vKlxuICBUT0RPOiBBZGQgZG9jcyBvbiB3aGVuIHRvIHVzZSBwbGFjZWhvbGRlciB2cyB3aGVuIHRvIHVzZSBTQVNTIHZhcmlhYmxlXG5cbiAgUGxhY2Vob2xkZXJcbiAgICAtIFdoZW4gd2Ugd2FudCB0byBrZWVwIGN1c3RvbWl6YXRpb24gdG8gb3VyIHNlbGYgYmV0d2VlbiB0ZW1wbGF0ZXMgdXNlIGl0XG5cbiAgVmFyaWFibGVzXG4gICAgLSBXaGVuIHdlIHdhbnQgdG8gYWxsb3cgY3VzdG9taXphdGlvbiBmcm9tIGJvdGggdXNlciBhbmQgb3VyIHNpZGVcbiAgICAtIFlvdSBjYW4gYWxzbyB1c2UgdmFyaWFibGUgZm9yIGNvbnNpc3RlbmN5IChlLmcuIG14IDEgcmVtIHNob3VsZCBiZSBhcHBsaWVkIHRvIGJvdGggdmVydGljYWwgbmF2IGl0ZW1zIGFuZCB2ZXJ0aWNhbCBuYXYgaGVhZGVyKVxuKi9cblxuQGZvcndhcmQgXCJAbGF5b3V0cy9zdHlsZXMvdmFyaWFibGVzXCIgd2l0aCAoXG4gIC8vIEFkanVzdCB6LWluZGV4IHNvIHZlcnRpY2FsIG5hdiAmIG92ZXJsYXkgc3RheXMgb24gdG9wIG9mIHYtbGF5b3V0IGluIHYtbWFpbi4gRS5nLiBFbWFpbCBhcHBcbiAgJGxheW91dC12ZXJ0aWNhbC1uYXYtei1pbmRleDogMTAwMyxcbiAgJGxheW91dC1vdmVybGF5LXotaW5kZXg6IDEwMDIsXG4pO1xuQHVzZSBcIkBsYXlvdXRzL3N0eWxlcy92YXJpYWJsZXNcIiBhcyAqO1xuXG4vLyDwn5GJIERlZmF1bHQgbGF5b3V0XG5cbiRuYXZiYXItaGlnaC1lbXBoYXNpcy10ZXh0OiB0cnVlICFkZWZhdWx0O1xuXG4vLyBAZm9yd2FyZCBcIkBsYXlvdXRzL3N0eWxlcy92YXJpYWJsZXNcIiB3aXRoIChcbi8vICAgJGxheW91dC12ZXJ0aWNhbC1uYXYtd2lkdGg6IDM1MHB4ICFkZWZhdWx0LFxuLy8gKTtcblxuJHRoZW1lLWNvbG9ycy1uYW1lOiAoXG4gIFwicHJpbWFyeVwiLFxuICBcInNlY29uZGFyeVwiLFxuICBcImVycm9yXCIsXG4gIFwiaW5mb1wiLFxuICBcInN1Y2Nlc3NcIixcbiAgXCJ3YXJuaW5nXCJcbikgIWRlZmF1bHQ7XG5cbi8vIPCfkYkgRGVmYXVsdCBsYXlvdXQgd2l0aCB2ZXJ0aWNhbCBuYXZcblxuJGRlZmF1bHQtbGF5b3V0LXdpdGgtdmVydGljYWwtbmF2LW5hdmJhci1mb290ZXItcm91bmRuZXNzOiAxMHB4ICFkZWZhdWx0O1xuXG4vLyDwn5GJIFZlcnRpY2FsIG5hdlxuJHZlcnRpY2FsLW5hdi1iYWNrZ3JvdW5kLWNvbG9yLXJnYjogdmFyKC0tdi10aGVtZS1iYWNrZ3JvdW5kKSAhZGVmYXVsdDtcbiR2ZXJ0aWNhbC1uYXYtYmFja2dyb3VuZC1jb2xvcjogcmdiKCN7JHZlcnRpY2FsLW5hdi1iYWNrZ3JvdW5kLWNvbG9yLXJnYn0pICFkZWZhdWx0O1xuXG4vLyDihLnvuI8gVGhpcyBpcyB1c2VkIHRvIGtlZXAgY29uc2lzdGVuY3kgYmV0d2VlbiBuYXYgaXRlbXMgYW5kIG5hdiBoZWFkZXIgbGVmdCAmIHJpZ2h0IG1hcmdpblxuLy8gVGhpcyBpcyB1c2VkIGJ5IG5hdiBpdGVtcyAmIG5hdiBoZWFkZXJcbiR2ZXJ0aWNhbC1uYXYtaG9yaXpvbnRhbC1zcGFjaW5nOiAxcmVtICFkZWZhdWx0O1xuJHZlcnRpY2FsLW5hdi1ob3Jpem9udGFsLXBhZGRpbmc6IDAuNzVyZW0gIWRlZmF1bHQ7XG5cbi8vIFZlcnRpY2FsIG5hdiBoZWFkZXIgaGVpZ2h0LiBNb3N0bHkgd2Ugd2lsbCBhbGlnbiBpdCB3aXRoIG5hdmJhciBoZWlnaHQ7XG4kdmVydGljYWwtbmF2LWhlYWRlci1oZWlnaHQ6ICRsYXlvdXQtdmVydGljYWwtbmF2LW5hdmJhci1oZWlnaHQgIWRlZmF1bHQ7XG4kdmVydGljYWwtbmF2LW5hdmJhci1lbGV2YXRpb246IDMgIWRlZmF1bHQ7XG4kdmVydGljYWwtbmF2LW5hdmJhci1zdHlsZTogXCJlbGV2YXRlZFwiICFkZWZhdWx0OyAvLyBvcHRpb25zOiBlbGV2YXRlZCwgZmxvYXRpbmdcbiR2ZXJ0aWNhbC1uYXYtZmxvYXRpbmctbmF2YmFyLXRvcDogMXJlbSAhZGVmYXVsdDtcblxuLy8gVmVydGljYWwgbmF2IGhlYWRlciBwYWRkaW5nXG4kdmVydGljYWwtbmF2LWhlYWRlci1wYWRkaW5nOiAxcmVtICR2ZXJ0aWNhbC1uYXYtaG9yaXpvbnRhbC1wYWRkaW5nICFkZWZhdWx0O1xuJHZlcnRpY2FsLW5hdi1oZWFkZXItaW5saW5lLXNwYWNpbmc6ICR2ZXJ0aWNhbC1uYXYtaG9yaXpvbnRhbC1zcGFjaW5nICFkZWZhdWx0O1xuXG4vLyBNb3ZlIGxvZ28gd2hlbiB2ZXJ0aWNhbCBuYXYgaXMgbWluaSAoY29sbGFwc2VkIGJ1dCBub3QgaG92ZXJlZClcbiR2ZXJ0aWNhbC1uYXYtaGVhZGVyLWxvZ28tdHJhbnNsYXRlLXgtd2hlbi12ZXJ0aWNhbC1uYXYtbWluaTogLTRweCAhZGVmYXVsdDtcblxuLy8gU3BhY2UgYmV0d2VlbiBsb2dvIGFuZCB0aXRsZVxuJHZlcnRpY2FsLW5hdi1oZWFkZXItbG9nby10aXRsZS1zcGFjaW5nOiAwLjlyZW0gIWRlZmF1bHQ7XG5cbi8vIFNlY3Rpb24gdGl0bGUgbWFyZ2luIHRvcCAod2hlbiBpdHMgbm90IGZpcnN0IGNoaWxkKVxuJHZlcnRpY2FsLW5hdi1zZWN0aW9uLXRpdGxlLW10OiAxLjVyZW0gIWRlZmF1bHQ7XG5cbi8vIFNlY3Rpb24gdGl0bGUgbWFyZ2luIGJvdHRvbVxuJHZlcnRpY2FsLW5hdi1zZWN0aW9uLXRpdGxlLW1iOiAwLjVyZW0gIWRlZmF1bHQ7XG5cbi8vIFZlcnRpY2FsIG5hdiBpY29uc1xuJHZlcnRpY2FsLW5hdi1pdGVtcy1pY29uLXNpemU6IDEuNXJlbSAhZGVmYXVsdDtcbiR2ZXJ0aWNhbC1uYXYtaXRlbXMtbmVzdGVkLWljb24tc2l6ZTogMC45cmVtICFkZWZhdWx0O1xuJHZlcnRpY2FsLW5hdi1pdGVtcy1pY29uLW1hcmdpbi1pbmxpbmUtZW5kOiAwLjVyZW0gIWRlZmF1bHQ7XG5cbi8vIFRyYW5zaXRpb24gZHVyYXRpb24gZm9yIG5hdiBncm91cCBhcnJvd1xuJHZlcnRpY2FsLW5hdi1uYXYtZ3JvdXAtYXJyb3ctdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4xNXMgIWRlZmF1bHQ7XG5cbi8vIFRpbWluZyBmdW5jdGlvbiBmb3IgbmF2IGdyb3VwIGFycm93XG4kdmVydGljYWwtbmF2LW5hdi1ncm91cC1hcnJvdy10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG5cbi8vIPCfkYkgSG9yaXpvbnRhbCBuYXZcblxuLypcbiAgICDinZcgSGVhZHMgdXBcbiAgICA9PT09PT09PT09PT09PT09PT1cbiAgICBIZXJlIHdlIGFzc3VtZSB3ZSB3aWxsIGFsd2F5cyB1c2Ugc2hvcnRoYW5kIHByb3BlcnR5IHdoaWNoIHdpbGwgYXBwbHkgc2FtZSBwYWRkaW5nIG9uIGZvdXIgc2lkZVxuICAgIFRoaXMgaXMgYmVjYXVzZSB0aGlzIGhhdmUgYmVlbiB1c2VkIGFzIHZhbHVlIG9mIHRvcCBwcm9wZXJ0eSBieSBgLnBvcHBlci1jb250ZW50YFxuKi9cbiRob3Jpem9udGFsLW5hdi1wYWRkaW5nOiAwLjY4NzVyZW0gIWRlZmF1bHQ7XG5cbi8vIEdhcCBiZXR3ZWVuIHRvcCBsZXZlbCBob3Jpem9udGFsIG5hdiBpdGVtc1xuJGhvcml6b250YWwtbmF2LXRvcC1sZXZlbC1pdGVtcy1nYXA6IDRweCAhZGVmYXVsdDtcblxuLy8gSG9yaXpvbnRhbCBuYXYgaWNvbnNcbiRob3Jpem9udGFsLW5hdi1pdGVtcy1pY29uLXNpemU6IDEuNXJlbSAhZGVmYXVsdDtcbiRob3Jpem9udGFsLW5hdi10aGlyZC1sZXZlbC1pY29uLXNpemU6IDAuOXJlbSAhZGVmYXVsdDtcbiRob3Jpem9udGFsLW5hdi1pdGVtcy1pY29uLW1hcmdpbi1pbmxpbmUtZW5kOiAwLjYyNXJlbSAhZGVmYXVsdDtcbiRob3Jpem9udGFsLW5hdi1ncm91cC1hcnJvdy1pY29uLXNpemU6IDEuMzc1cmVtICFkZWZhdWx0O1xuXG4vLyDihLnvuI8gV2UgdXNlZCBTQ1NTIHZhcmlhYmxlIGJlY2F1c2Ugd2Ugd2FudCB0byBhbGxvdyB1c2VycyB0byB1cGRhdGUgbWF4IGhlaWdodCBvZiBwb3BwZXIgY29udGVudFxuLy8gMTIwcHggaXMgY29tYmluZWQgaGVpZ2h0IG9mIG5hdmJhciAmIGhvcml6b250YWwgbmF2XG4kaG9yaXpvbnRhbC1uYXYtcG9wcGVyLWNvbnRlbnQtbWF4LWhlaWdodDogY2FsYygxMDBkdmggLSAxMjBweCAtIDRyZW0pICFkZWZhdWx0O1xuXG4vLyDihLnvuI8gVGhpcyB2YXJpYWJsZSBpcyB1c2VkIGZvciBob3Jpem9udGFsIG5hdiBwb3BwZXIgY29udGVudCdzIGBtYXJnaW4tdG9wYCBhbmQgXCJUaGUgYnJpZGdlXCIncyBoZWlnaHQuIFdlIG5lZWQgdG8gc3luYyBib3RoIHZhbHVlcy5cbiRob3Jpem9udGFsLW5hdi1wb3BwZXItY29udGVudC10b3A6IGNhbGMoJGhvcml6b250YWwtbmF2LXBhZGRpbmcgKyAwLjM3NXJlbSkgIWRlZmF1bHQ7XG5cbi8vIPCfkYkgUGx1Z2luc1xuXG4kcGx1Z2luLXBzLXRodW1iLXktZGFyazogcmdiYSh2YXIoLS12LXRoZW1lLXN1cmZhY2UtdmFyaWFudCksIDAuMzUpICFkZWZhdWx0O1xuXG4vLyDwn5GJIFZ1ZXRpZnlcblxuLy8gVXNlZCBpbiBzcmMvQGNvcmUvc2Nzcy9iYXNlL2xpYnMvdnVldGlmeS9fb3ZlcnJpZGVzLnNjc3NcbiR2dWV0aWZ5LXJlZHVjZS1kZWZhdWx0LWNvbXBhY3QtYnV0dG9uLWljb24tc2l6ZTogdHJ1ZSAhZGVmYXVsdDtcblxuLy8g8J+RiSBDdXN0b20gdmFyaWFibGVzXG4vLyBmb3IgdXRpbGl0eSBjbGFzc2VzXG4kZm9udC1zaXplczogKCkgIWRlZmF1bHQ7XG4kZm9udC1zaXplczogbWFwLWRlZXAtbWVyZ2UoXG4gIChcbiAgICBcInhzXCI6IDAuNzVyZW0sXG4gICAgXCJzbVwiOiAwLjg3NXJlbSxcbiAgICBcImJhc2VcIjogMXJlbSxcbiAgICBcImxnXCI6IDEuMTI1cmVtLFxuICAgIFwieGxcIjogMS4yNXJlbSxcbiAgICBcIjJ4bFwiOiAxLjVyZW0sXG4gICAgXCIzeGxcIjogMS44NzVyZW0sXG4gICAgXCI0eGxcIjogMi4yNXJlbSxcbiAgICBcIjV4bFwiOiAzcmVtLFxuICAgIFwiNnhsXCI6IDMuNzVyZW0sXG4gICAgXCI3eGxcIjogNC41cmVtLFxuICAgIFwiOHhsXCI6IDZyZW0sXG4gICAgXCI5eGxcIjogOHJlbVxuICApLFxuICAkZm9udC1zaXplc1xuKTtcblxuLy8gbGluZSBoZWlnaHRcbiRmb250LWxpbmUtaGVpZ2h0OiAoKSAhZGVmYXVsdDtcbiRmb250LWxpbmUtaGVpZ2h0OiBtYXAtZGVlcC1tZXJnZShcbiAgKFxuICAgIFwieHNcIjogMXJlbSxcbiAgICBcInNtXCI6IDEuMjVyZW0sXG4gICAgXCJiYXNlXCI6IDEuNXJlbSxcbiAgICBcImxnXCI6IDEuNzVyZW0sXG4gICAgXCJ4bFwiOiAxLjc1cmVtLFxuICAgIFwiMnhsXCI6IDJyZW0sXG4gICAgXCIzeGxcIjogMi4yNXJlbSxcbiAgICBcIjR4bFwiOiAyLjVyZW0sXG4gICAgXCI1eGxcIjogMSxcbiAgICBcIjZ4bFwiOiAxLFxuICAgIFwiN3hsXCI6IDEsXG4gICAgXCI4eGxcIjogMSxcbiAgICBcIjl4bFwiOiAxXG4gICksXG4gICRmb250LWxpbmUtaGVpZ2h0XG4pO1xuXG4vLyBnYXAgdXRpbGl0eSBjbGFzc1xuJGdhcDogKCkgIWRlZmF1bHQ7XG4kZ2FwOiBtYXAtZGVlcC1tZXJnZShcbiAgKFxuICAgIFwiMFwiOiAwLFxuICAgIFwiMVwiOiAwLjI1cmVtLFxuICAgIFwiMlwiOiAwLjVyZW0sXG4gICAgXCIzXCI6IDAuNzVyZW0sXG4gICAgXCI0XCI6IDFyZW0sXG4gICAgXCI1XCI6IDEuMjVyZW0sXG4gICAgXCI2XCI6MS41cmVtLFxuICAgIFwiN1wiOiAxLjc1cmVtLFxuICAgIFwiOFwiOiAycmVtLFxuICAgIFwiOVwiOiAyLjI1cmVtLFxuICAgIFwiMTBcIjogMi41cmVtLFxuICAgIFwiMTFcIjogMi43NXJlbSxcbiAgICBcIjEyXCI6IDNyZW0sXG4gICAgXCIxNFwiOiAzLjVyZW0sXG4gICAgXCIxNlwiOiA0cmVtLFxuICAgIFwiMjBcIjogNXJlbSxcbiAgICBcIjI0XCI6IDZyZW0sXG4gICAgXCIyOFwiOiA3cmVtLFxuICAgIFwiMzJcIjogOHJlbSxcbiAgICBcIjM2XCI6IDlyZW0sXG4gICAgXCI0MFwiOiAxMHJlbSxcbiAgICBcIjQ0XCI6IDExcmVtLFxuICAgIFwiNDhcIjogMTJyZW0sXG4gICAgXCI1MlwiOiAxM3JlbSxcbiAgICBcIjU2XCI6IDE0cmVtLFxuICAgIFwiNjBcIjogMTVyZW0sXG4gICAgXCI2NFwiOiAxNnJlbSxcbiAgICBcIjcyXCI6IDE4cmVtLFxuICAgIFwiODBcIjogMjByZW0sXG4gICAgXCI5NlwiOiAyNHJlbVxuICApLFxuICAkZ2FwXG4pO1xuIiwiQGZvcndhcmQgXCJAY29yZS9zY3NzL2Jhc2UvdmFyaWFibGVzXCIgd2l0aCAoXG4gICRkZWZhdWx0LWxheW91dC13aXRoLXZlcnRpY2FsLW5hdi1uYXZiYXItZm9vdGVyLXJvdW5kbmVzczogNnB4ICFkZWZhdWx0LFxuXG4gICR2ZXJ0aWNhbC1uYXYtbmF2YmFyLXN0eWxlOiBcImZsb2F0aW5nXCIgIWRlZmF1bHQsIC8vIG9wdGlvbnM6IGVsZXZhdGVkLCBmbG9hdGluZ1xuXG4gIC8vIPCfkYkgVmVydGljYWwgbmF2XG4gICR2ZXJ0aWNhbC1uYXYtYmFja2dyb3VuZC1jb2xvci1yZ2I6IHZhcigtLXYtdGhlbWUtc3VyZmFjZSkgIWRlZmF1bHQsXG4gIC8vIOKEue+4jyBUaGlzIGlzIHVzZWQgdG8ga2VlcCBjb25zaXN0ZW5jeSBiZXR3ZWVuIG5hdiBpdGVtcyBhbmQgbmF2IGhlYWRlciBsZWZ0ICYgcmlnaHQgbWFyZ2luXG4gIC8vIFRoaXMgaXMgdXNlZCBieSBuYXYgaXRlbXMgJiBuYXYgaGVhZGVyXG4gICR2ZXJ0aWNhbC1uYXYtaG9yaXpvbnRhbC1zcGFjaW5nOiAwLjc1cmVtICFkZWZhdWx0LFxuXG4gIC8vIFNlY3Rpb24gdGl0bGUgbWFyZ2luIHRvcCAod2hlbiBpdHMgbm90IGZpcnN0IGNoaWxkKVxuICAkdmVydGljYWwtbmF2LXNlY3Rpb24tdGl0bGUtbXQ6IDFyZW0gIWRlZmF1bHQsXG4gICR2ZXJ0aWNhbC1uYXYtbmF2YmFyLWVsZXZhdGlvbjogNCAhZGVmYXVsdCxcbiAgJHZlcnRpY2FsLW5hdi1ob3Jpem9udGFsLXBhZGRpbmc6IDAuNzVyZW0gIWRlZmF1bHQsXG4gICRsYXlvdXQtdmVydGljYWwtbmF2LWNvbGxhcHNlZC13aWR0aDogNzBweCAhZGVmYXVsdCxcblxuICAvLyBNb3ZlIGxvZ28gd2hlbiB2ZXJ0aWNhbCBuYXYgaXMgbWluaSAoY29sbGFwc2VkIGJ1dCBub3QgaG92ZXJlZClcbiAgJHZlcnRpY2FsLW5hdi1oZWFkZXItbG9nby10cmFuc2xhdGUteC13aGVuLXZlcnRpY2FsLW5hdi1taW5pOiAtMXB4ICFkZWZhdWx0LFxuXG4gIC8vIFNlY3Rpb24gdGl0bGUgbWFyZ2luIGJvdHRvbVxuICAkdmVydGljYWwtbmF2LXNlY3Rpb24tdGl0bGUtbWI6IDAuMzc1cmVtICFkZWZhdWx0LFxuXG4gIC8vIFZlcnRpY2FsIG5hdiBoZWFkZXIgcGFkZGluZ1xuICAkdmVydGljYWwtbmF2LWhlYWRlci1wYWRkaW5nOiAxLjI1cmVtIDAuNXJlbSAhZGVmYXVsdCxcblxuICAvLyBWZXJ0aWNhbCBuYXYgaWNvbnNcbiAgJHZlcnRpY2FsLW5hdi1pdGVtcy1pY29uLXNpemU6IDEuMzc1cmVtICFkZWZhdWx0LFxuICAkdmVydGljYWwtbmF2LWl0ZW1zLW5lc3RlZC1pY29uLXNpemU6IDAuNzVyZW0gIWRlZmF1bHQsXG5cbiAgLy8gIPCfkYlGb290ZXJcbiAgJGxheW91dC12ZXJ0aWNhbC1uYXYtZm9vdGVyLWhlaWdodDogNTRweCAhZGVmYXVsdCxcblxuICAvLyBHYXAgYmV0d2VlbiB0b3AgbGV2ZWwgaG9yaXpvbnRhbCBuYXYgaXRlbXNcbiAgJGhvcml6b250YWwtbmF2LXRvcC1sZXZlbC1pdGVtcy1nYXA6IDZweCAhZGVmYXVsdCxcblxuICAkaG9yaXpvbnRhbC1uYXYtaXRlbXMtaWNvbi1tYXJnaW4taW5saW5lLWVuZDogMC41cmVtICFkZWZhdWx0LFxuXG4gICRob3Jpem9udGFsLW5hdi1wb3BwZXItY29udGVudC10b3A6IDAuMzc1cmVtICFkZWZhdWx0LFxuXG4gICRob3Jpem9udGFsLW5hdi1ncm91cC1hcnJvdy1pY29uLXNpemU6IDEuMjVyZW0gIWRlZmF1bHQsXG4gICRob3Jpem9udGFsLW5hdi10aGlyZC1sZXZlbC1pY29uLXNpemU6IDAuNzVyZW0gIWRlZmF1bHQsXG4gIC8qXG4gICAg4p2XIEhlYWRzIHVwXG4gICAgPT09PT09PT09PT09PT09PT09XG4gICAgSGVyZSB3ZSBhc3N1bWUgd2Ugd2lsbCBhbHdheXMgdXNlIHNob3J0aGFuZCBwcm9wZXJ0eSB3aGljaCB3aWxsIGFwcGx5IHNhbWUgcGFkZGluZyBvbiBmb3VyIHNpZGVcbiAgICBUaGlzIGlzIGJlY2F1c2UgdGhpcyBoYXZlIGJlZW4gdXNlZCBhcyB2YWx1ZSBvZiB0b3AgcHJvcGVydHkgYnkgYC5wb3BwZXItY29udGVudGBcbiAgKi9cbiAgJGhvcml6b250YWwtbmF2LXBhZGRpbmc6IDAuNXJlbSAhZGVmYXVsdCxcblxuICAvLyDwn5GJIE5hdmJhclxuICAkbGF5b3V0LXZlcnRpY2FsLW5hdi1uYXZiYXItaGVpZ2h0OiA1NHB4ICFkZWZhdWx0LFxuICAkbGF5b3V0LWhvcml6b250YWwtbmF2LW5hdmJhci1oZWlnaHQ6IDU0cHggIWRlZmF1bHQsXG5cbiAgLy8gRm9udCBzaXplc1xuICAkZm9udC1zaXplczogKFxuICAgIFwieHNcIjogMC42ODc1cmVtLFxuICAgIFwic21cIjogMC44MTI1cmVtLFxuICAgIFwiYmFzZVwiOiAwLjkzNzVyZW0sXG4gICAgXCJsZ1wiOiAxLjEyNXJlbSxcbiAgICBcInhsXCI6IDEuNXJlbSxcbiAgICBcIjJ4bFwiOiAxLjc1cmVtLFxuICAgIFwiM3hsXCI6IDJyZW0sXG4gICAgXCI0eGxcIjogMi4zNzVyZW0sXG4gICAgXCI1eGxcIjogM3JlbSxcbiAgICBcIjZ4bFwiOiAzLjVyZW0sXG4gICAgXCI3eGxcIjogNHJlbSxcbiAgICBcIjh4bFwiOiA0LjVyZW0sXG4gICAgXCI5eGxcIjogNS4yNXJlbSxcbiAgKSAhZGVmYXVsdCxcblxuICAvLyBMaW5lIGhlaWdodHNcbiAgJGZvbnQtbGluZS1oZWlnaHQ6IChcbiAgICBcInhzXCI6IDAuOTM3NXJlbSxcbiAgICBcInNtXCI6IDEuMjVyZW0sXG4gICAgXCJiYXNlXCI6IDEuMzc1cmVtLFxuICAgIFwibGdcIjogMS43NXJlbSxcbiAgICBcInhsXCI6IDIuMzc1cmVtLFxuICAgIFwiMnhsXCI6IDIuNjI1cmVtLFxuICAgIFwiM3hsXCI6IDIuNzVyZW0sXG4gICAgXCI0eGxcIjogMy4yNXJlbSxcbiAgICBcIjV4bFwiOiAxLFxuICAgIFwiNnhsXCI6IDEsXG4gICAgXCI3eGxcIjogMSxcbiAgICBcIjh4bFwiOiAxLFxuICAgIFwiOXhsXCI6IDFcbiAgKSAhZGVmYXVsdCxcbik7XG5cbi8qIEN1c3RvbSBzaGFkb3cgb3BhY2l0eSAqL1xuJHNoYWRvdy1vcGFjaXR5OiAoXG4gIFwic21cIjogMC4zLFxuICBcIm1kXCI6IDAuNCxcbiAgXCJsZ1wiOiAwLjUsXG4pICFkZWZhdWx0O1xuXG4vKiBDdXN0b20gc2hhZG93IHBhcmFtcyAqL1xuJHNoYWRvdy1wYXJhbXM6IChcbiAgXCJzbVwiOiAwIDJweCA2cHggMCxcbiAgXCJtZFwiOiAwIDRweCAxNnB4IDAsXG4gIFwibGdcIjogMCA2cHggMjBweCAwLFxuKSAhZGVmYXVsdDtcbiIsIi8vIHBsYWNlaG9sZGVyc1xuQHVzZSBcIkBjb25maWd1cmVkLXZhcmlhYmxlc1wiIGFzIHZhcmlhYmxlcztcblxuJWJveGVkLWNvbnRlbnQge1xuICBAYXQtcm9vdCAjeyZ9LXNwYWNpbmcge1xuICAgIC8vIFRPRE86IFVzZSBncmlkIGd1dHRlciB2YXJpYWJsZSBoZXJlXG4gICAgcGFkZGluZy1pbmxpbmU6IDEuNXJlbTtcbiAgfVxuXG4gIGlubGluZS1zaXplOiAxMDAlO1xuICBtYXJnaW4taW5saW5lOiBhdXRvO1xuICBtYXgtaW5saW5lLXNpemU6IHZhcmlhYmxlcy4kbGF5b3V0LWJveGVkLWNvbnRlbnQtd2lkdGg7XG59XG5cbiVsYXlvdXQtbmF2YmFyLWhpZGRlbiB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8vIOKEue+4jyBXZSBjcmVhdGVkIHRoaXMgcGxhY2Vob2xkZXIgZXZlbiBpdCBpcyBiZWluZyB1c2VkIGluIGp1c3QgbGF5b3V0IHcvIHZlcnRpY2FsIG5hdiBiZWNhdXNlIGluIGZ1dHVyZSB3ZSBtaWdodCBhcHBseSBzdHlsZSB0byBib3RoIG5hdmJhciAmIGhvcml6b250YWwgbmF2IHNlcGFyYXRlbHlcbiVsYXlvdXQtbmF2YmFyLXN0aWNreSB7XG4gIHBvc2l0aW9uOiBzdGlja3k7XG4gIGluc2V0LWJsb2NrLXN0YXJ0OiAwO1xuXG4gIC8vIHdpbGwtY2hhbmdlOiB0cmFuc2Zvcm07XG4gIC8vIGlubGluZS1zaXplOiAxMDAlO1xufVxuXG4lc3R5bGUtc2Nyb2xsLWJhciB7XG4gIC8qIHdpZHRoICovXG5cbiAgJjo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICAgIGJhY2tncm91bmQ6IHJnYih2YXIoLS12LXRoZW1lLXN1cmZhY2UpKTtcbiAgICBibG9jay1zaXplOiA4cHg7XG4gICAgYm9yZGVyLWVuZC1lbmQtcmFkaXVzOiAxNHB4O1xuICAgIGJvcmRlci1zdGFydC1lbmQtcmFkaXVzOiAxNHB4O1xuICAgIGlubGluZS1zaXplOiA0cHg7XG4gIH1cblxuICAvKiBUcmFjayAqL1xuICAmOjotd2Via2l0LXNjcm9sbGJhci10cmFjayB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIH1cblxuICAvKiBIYW5kbGUgKi9cbiAgJjo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWIge1xuICAgIGJvcmRlci1yYWRpdXM6IDAuNXJlbTtcbiAgICBiYWNrZ3JvdW5kOiByZ2IodmFyKC0tdi10aGVtZS1wZXJmZWN0LXNjcm9sbGJhci10aHVtYikpO1xuICB9XG5cbiAgJjo6LXdlYmtpdC1zY3JvbGxiYXItY29ybmVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG4iLCJAdXNlIFwic2FzczptYXRoXCI7XG5cbiRmb250LWZhbWlseS1jdXN0b206IFwiUHVibGljIFNhbnNcIixzYW5zLXNlcmlmLC1hcHBsZS1zeXN0ZW0sYmxpbmttYWNzeXN0ZW1mb250LFxuICBcIlNlZ29lIFVJXCIscm9ib3RvLFwiSGVsdmV0aWNhIE5ldWVcIixhcmlhbCxzYW5zLXNlcmlmLFwiQXBwbGUgQ29sb3IgRW1vamlcIixcIlNlZ29lIFVJIEVtb2ppXCIsXCJTZWdvZSBVSSBTeW1ib2xcIjtcblxuLyog8J+RiSBUeXBvZ3JhcGh5IGN1c3RvbSB2YXJpYWJsZXMgKi9cbiR0eXBvZ3JhcGh5LWg1LWZvbnQtc2l6ZTogMS4xMjVyZW07XG4kdHlwb2dyYXBoeS1ib2R5LTEtZm9udC1zaXplOiAwLjkzNzVyZW07XG4kdHlwb2dyYXBoeS1ib2R5LTEtbGluZS1oZWlnaHQ6IDEuMzc1cmVtO1xuXG5AZm9yd2FyZCBcIi4uLy4uLy4uL2Jhc2UvbGlicy92dWV0aWZ5L3ZhcmlhYmxlc1wiICB3aXRoIChcbiAgJGJvZHktZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1jdXN0b20gIWRlZmF1bHQsXG4gICRib3JkZXItcmFkaXVzLXJvb3Q6IDZweCAhZGVmYXVsdCxcblxuICAvLyDwn5GJIFJvdW5kZWRcbiAgJHJvdW5kZWQ6IChcbiAgICBcInNtXCI6IDRweCxcbiAgICBcImxnXCI6IDhweCxcbiAgICBcInNoYXBlZFwiOiAzMHB4IDAsXG4gICkgIWRlZmF1bHQsXG5cbiAgLy8g8J+RiSBTaGFkb3dzXG4gICRzaGFkb3cta2V5LXVtYnJhOiAoXG4gICAgMDogKDAgMCAwIDAgcmdiYSh2YXIoLS12LXNoYWRvdy1rZXktdW1icmEtY29sb3IpLCAxKSksXG4gICAgMTogKDAgMnB4IDRweCByZ2JhKHZhcigtLXYtc2hhZG93LWtleS11bWJyYS1jb2xvciksIDAuMTIpKSxcbiAgICAyOiAoMCAxcHggNnB4IHJnYmEodmFyKC0tdi1zaGFkb3cta2V5LXVtYnJhLWNvbG9yKSwgdmFyKC0tdi1zaGFkb3cteHMtb3BhY2l0eSkpKSxcbiAgICAzOiAoMCAzcHggOHB4IHJnYmEodmFyKC0tdi1zaGFkb3cta2V5LXVtYnJhLWNvbG9yKSwgMC4xNCkpLFxuICAgIDQ6ICgwIDJweCA4cHggcmdiYSh2YXIoLS12LXNoYWRvdy1rZXktdW1icmEtY29sb3IpLCB2YXIoLS12LXNoYWRvdy1zbS1vcGFjaXR5KSkpLFxuICAgIDU6ICgwIDRweCAxMHB4IHJnYmEodmFyKC0tdi1zaGFkb3cta2V5LXVtYnJhLWNvbG9yKSwgMC4xNSkpLFxuICAgIDY6ICgwIDNweCAxMnB4IHJnYmEodmFyKC0tdi1zaGFkb3cta2V5LXVtYnJhLWNvbG9yKSwgdmFyKC0tdi1zaGFkb3ctbWQtb3BhY2l0eSkpKSxcbiAgICA3OiAoMCA0cHggMThweCByZ2JhKHZhcigtLXYtc2hhZG93LWtleS11bWJyYS1jb2xvciksIDAuMSkpLFxuICAgIDg6ICgwIDRweCAxOHB4IHJnYmEodmFyKC0tdi1zaGFkb3cta2V5LXVtYnJhLWNvbG9yKSwgdmFyKC0tdi1zaGFkb3ctbGctb3BhY2l0eSkpKSxcbiAgICA5OiAoMCA1cHggMTRweCByZ2JhKHZhcigtLXYtc2hhZG93LWtleS11bWJyYS1jb2xvciksIDAuMTgpKSxcbiAgICAxMDogKDAgNXB4IDMwcHggcmdiYSh2YXIoLS12LXNoYWRvdy1rZXktdW1icmEtY29sb3IpLCB2YXIoLS12LXNoYWRvdy14bC1vcGFjaXR5KSkpLFxuICAgIDExOiAoMCA1cHggMTZweCByZ2JhKHZhcigtLXYtc2hhZG93LWtleS11bWJyYS1jb2xvciksIDAuMikpLFxuICAgIDEyOiAoMCA2cHggMTdweCByZ2JhKHZhcigtLXYtc2hhZG93LWtleS11bWJyYS1jb2xvciksIDAuMjIpKSxcbiAgICAxMzogKDAgNnB4IDE4cHggcmdiYSh2YXIoLS12LXNoYWRvdy1rZXktdW1icmEtY29sb3IpLCAwLjIyKSksXG4gICAgMTQ6ICgwIDZweCAxOXB4IHJnYmEodmFyKC0tdi1zaGFkb3cta2V5LXVtYnJhLWNvbG9yKSwgMC4yNCkpLFxuICAgIDE1OiAoMCA3cHggMjBweCByZ2JhKHZhcigtLXYtc2hhZG93LWtleS11bWJyYS1jb2xvciksIDAuMjQpKSxcbiAgICAxNjogKDAgN3B4IDIxcHggcmdiYSh2YXIoLS12LXNoYWRvdy1rZXktdW1icmEtY29sb3IpLCAwLjI2KSksXG4gICAgMTc6ICgwIDdweCAyMnB4IHJnYmEodmFyKC0tdi1zaGFkb3cta2V5LXVtYnJhLWNvbG9yKSwgMC4yNikpLFxuICAgIDE4OiAoMCA4cHggMjNweCByZ2JhKHZhcigtLXYtc2hhZG93LWtleS11bWJyYS1jb2xvciksIDAuMjgpKSxcbiAgICAxOTogKDAgOHB4IDI0cHggNnB4IHJnYmEodmFyKC0tdi1zaGFkb3cta2V5LXVtYnJhLWNvbG9yKSwgMC4yOCkpLFxuICAgIDIwOiAoMCA5cHggMjVweCByZ2JhKHZhcigtLXYtc2hhZG93LWtleS11bWJyYS1jb2xvciksIDAuMykpLFxuICAgIDIxOiAoMCA5cHggMjZweCByZ2JhKHZhcigtLXYtc2hhZG93LWtleS11bWJyYS1jb2xvciksIDAuMzIpKSxcbiAgICAyMjogKDAgOXB4IDI3cHggcmdiYSh2YXIoLS12LXNoYWRvdy1rZXktdW1icmEtY29sb3IpLCAwLjMyKSksXG4gICAgMjM6ICgwIDEwcHggMjhweCByZ2JhKHZhcigtLXYtc2hhZG93LWtleS11bWJyYS1jb2xvciksIDAuMzQpKSxcbiAgICAyNDogKDAgMTBweCAzMHB4IHJnYmEodmFyKC0tdi1zaGFkb3cta2V5LXVtYnJhLWNvbG9yKSwgMC4zNCkpXG4gICkgIWRlZmF1bHQsXG5cbiAgJHNoYWRvdy1rZXktcGVudW1icmE6IChcbiAgICAwOiAoMCAwIHRyYW5zcGFyZW50KSxcbiAgICAxOiAoMCAwIHRyYW5zcGFyZW50KSxcbiAgICAyOiAoMCAwIHRyYW5zcGFyZW50KSxcbiAgICAzOiAoMCAwIHRyYW5zcGFyZW50KSxcbiAgICA0OiAoMCAwIHRyYW5zcGFyZW50KSxcbiAgICA1OiAoMCAwIHRyYW5zcGFyZW50KSxcbiAgICA2OiAoMCAwIHRyYW5zcGFyZW50KSxcbiAgICA3OiAoMCAwIHRyYW5zcGFyZW50KSxcbiAgICA4OiAoMCAwIHRyYW5zcGFyZW50KSxcbiAgICA5OiAoMCAwIHRyYW5zcGFyZW50KSxcbiAgICAxMDogKDAgMCB0cmFuc3BhcmVudCksXG4gICAgMTE6ICgwIDAgdHJhbnNwYXJlbnQpLFxuICAgIDEyOiAoMCAwIHRyYW5zcGFyZW50KSxcbiAgICAxMzogKDAgMCB0cmFuc3BhcmVudCksXG4gICAgMTQ6ICgwIDAgdHJhbnNwYXJlbnQpLFxuICAgIDE1OiAoMCAwIHRyYW5zcGFyZW50KSxcbiAgICAxNjogKDAgMCB0cmFuc3BhcmVudCksXG4gICAgMTc6ICgwIDAgdHJhbnNwYXJlbnQpLFxuICAgIDE4OiAoMCAwIHRyYW5zcGFyZW50KSxcbiAgICAxOTogKDAgMCB0cmFuc3BhcmVudCksXG4gICAgMjA6ICgwIDAgdHJhbnNwYXJlbnQpLFxuICAgIDIxOiAoMCAwIHRyYW5zcGFyZW50KSxcbiAgICAyMjogKDAgMCB0cmFuc3BhcmVudCksXG4gICAgMjM6ICgwIDAgdHJhbnNwYXJlbnQpLFxuICAgIDI0OiAoMCAwIHRyYW5zcGFyZW50KSxcbiAgKSAhZGVmYXVsdCxcblxuICAkc2hhZG93LWtleS1hbWJpZW50OiAoXG4gICAgMDogKDAgMCB0cmFuc3BhcmVudCksXG4gICAgMTogKDAgMCB0cmFuc3BhcmVudCksXG4gICAgMjogKDAgMCB0cmFuc3BhcmVudCksXG4gICAgMzogKDAgMCB0cmFuc3BhcmVudCksXG4gICAgNDogKDAgMCB0cmFuc3BhcmVudCksXG4gICAgNTogKDAgMCB0cmFuc3BhcmVudCksXG4gICAgNjogKDAgMCB0cmFuc3BhcmVudCksXG4gICAgNzogKDAgMCB0cmFuc3BhcmVudCksXG4gICAgODogKDAgMCB0cmFuc3BhcmVudCksXG4gICAgOTogKDAgMCB0cmFuc3BhcmVudCksXG4gICAgMTA6ICgwIDAgdHJhbnNwYXJlbnQpLFxuICAgIDExOiAoMCAwIHRyYW5zcGFyZW50KSxcbiAgICAxMjogKDAgMCB0cmFuc3BhcmVudCksXG4gICAgMTM6ICgwIDAgdHJhbnNwYXJlbnQpLFxuICAgIDE0OiAoMCAwIHRyYW5zcGFyZW50KSxcbiAgICAxNTogKDAgMCB0cmFuc3BhcmVudCksXG4gICAgMTY6ICgwIDAgdHJhbnNwYXJlbnQpLFxuICAgIDE3OiAoMCAwIHRyYW5zcGFyZW50KSxcbiAgICAxODogKDAgMCB0cmFuc3BhcmVudCksXG4gICAgMTk6ICgwIDAgdHJhbnNwYXJlbnQpLFxuICAgIDIwOiAoMCAwIHRyYW5zcGFyZW50KSxcbiAgICAyMTogKDAgMCB0cmFuc3BhcmVudCksXG4gICAgMjI6ICgwIDAgdHJhbnNwYXJlbnQpLFxuICAgIDIzOiAoMCAwIHRyYW5zcGFyZW50KSxcbiAgICAyNDogKDAgMCB0cmFuc3BhcmVudCksXG4gICkgIWRlZmF1bHQsXG5cbiAgLy8g8J+RiSBUeXBvZ3JhcGh5XG4gICR0eXBvZ3JhcGh5OiAoXG4gICAgXCJoMVwiOiAoXG4gICAgICBcInNpemVcIjogMi44NzVyZW0sXG4gICAgICBcIndlaWdodFwiOiA1MDAsXG4gICAgICBcImxpbmUtaGVpZ2h0XCI6IDQuMjVyZW0sXG4gICAgICBcImxldHRlci1zcGFjaW5nXCI6IG5vcm1hbFxuICAgICksXG4gICAgXCJoMlwiOiAoXG4gICAgICBcInNpemVcIjogMi4zNzVyZW0sXG4gICAgICBcIndlaWdodFwiOiA1MDAsXG4gICAgICBcImxpbmUtaGVpZ2h0XCI6IDMuNXJlbSxcbiAgICAgIFwibGV0dGVyLXNwYWNpbmdcIjogbm9ybWFsXG4gICAgKSxcbiAgICBcImgzXCI6IChcbiAgICAgIFwic2l6ZVwiOiAxLjc1cmVtLFxuICAgICAgXCJ3ZWlnaHRcIjogNTAwLFxuICAgICAgXCJsaW5lLWhlaWdodFwiOiAyLjYyNXJlbVxuICAgICksXG4gICAgXCJoNFwiOiAoXG4gICAgICBcInNpemVcIjogMS41cmVtLFxuICAgICAgXCJ3ZWlnaHRcIjogNTAwLFxuICAgICAgXCJsaW5lLWhlaWdodFwiOiAyLjM3NXJlbSxcbiAgICAgIFwibGV0dGVyLXNwYWNpbmdcIjogbm9ybWFsXG4gICAgKSxcbiAgICBcImg1XCI6IChcbiAgICAgIFwic2l6ZVwiOiAkdHlwb2dyYXBoeS1oNS1mb250LXNpemUsXG4gICAgICBcIndlaWdodFwiOiA1MDAsXG4gICAgICBcImxpbmUtaGVpZ2h0XCI6IDEuNzVyZW1cbiAgICApLFxuICAgIFwiaDZcIjooXG4gICAgICBcInNpemVcIjogMC45Mzc1cmVtLFxuICAgICAgXCJsaW5lLWhlaWdodFwiOiAxLjM3NXJlbSxcbiAgICAgIFwibGV0dGVyLXNwYWNpbmdcIjogbm9ybWFsXG4gICAgKSxcbiAgICBcImJvZHktMVwiOihcbiAgICAgIFwic2l6ZVwiOiAkdHlwb2dyYXBoeS1ib2R5LTEtZm9udC1zaXplLFxuICAgICAgXCJsaW5lLWhlaWdodFwiOiAkdHlwb2dyYXBoeS1ib2R5LTEtbGluZS1oZWlnaHQsXG4gICAgICBcImxldHRlci1zcGFjaW5nXCI6IG5vcm1hbFxuICAgICksXG4gICAgXCJib2R5LTJcIjogKFxuICAgICAgXCJzaXplXCI6IDAuODEyNXJlbSxcbiAgICAgIFwibGluZS1oZWlnaHRcIjogMS4yNXJlbSxcbiAgICAgIFwibGV0dGVyLXNwYWNpbmdcIjogbm9ybWFsXG4gICAgKSxcbiAgICBcInN1YnRpdGxlLTFcIjooXG4gICAgICBcInNpemVcIjogMC45Mzc1cmVtLFxuICAgICAgXCJ3ZWlnaHRcIjogNDAwLFxuICAgICAgXCJsaW5lLWhlaWdodFwiOiAxLjM3NXJlbVxuICAgICksXG4gICAgXCJzdWJ0aXRsZS0yXCI6IChcbiAgICAgIFwic2l6ZVwiOiAwLjgxMjVyZW0sXG4gICAgICBcIndlaWdodFwiOiA0MDAsXG4gICAgICBcImxpbmUtaGVpZ2h0XCI6IDEuMjVyZW0sXG4gICAgICBcImxldHRlci1zcGFjaW5nXCI6IG5vcm1hbFxuICAgICksXG4gICAgXCJidXR0b25cIjogKFxuICAgICAgXCJzaXplXCI6IDAuOTM3NXJlbSxcbiAgICAgIFwid2VpZ2h0XCI6IDUwMCxcbiAgICAgIFwibGluZS1oZWlnaHRcIjogMS4xMjVyZW0sXG4gICAgICBcImxldHRlci1zcGFjaW5nXCI6IDAuMDI2OXJlbSxcbiAgICAgIFwidGV4dC10cmFuc2Zvcm1cIjogY2FwaXRhbGl6ZVxuICAgICksXG4gICAgXCJjYXB0aW9uXCI6KFxuICAgICAgXCJzaXplXCI6IDAuODEyNXJlbSxcbiAgICAgIFwibGluZS1oZWlnaHRcIjogMS4xMjVyZW0sXG4gICAgICBcImxldHRlci1zcGFjaW5nXCI6IDAuMDI1cmVtXG4gICAgKSxcbiAgICBcIm92ZXJsaW5lXCI6IChcbiAgICAgIFwic2l6ZVwiOiAwLjc1cmVtLFxuICAgICAgXCJ3ZWlnaHRcIjogNDAwLFxuICAgICAgXCJsaW5lLWhlaWdodFwiOiAwLjg3NXJlbSxcbiAgICAgIFwibGV0dGVyLXNwYWNpbmdcIjogMC4wNXJlbSxcbiAgICApLFxuICApICFkZWZhdWx0LFxuXG4gIC8vIPCfkYkgQWxlcnRcbiAgJGFsZXJ0LXRpdGxlLWZvbnQtc2l6ZTogMS4xMjVyZW0gIWRlZmF1bHQsXG4gICRhbGVydC10aXRsZS1saW5lLWhlaWdodDogMS41cmVtICFkZWZhdWx0LFxuICAkYWxlcnQtYm9yZGVyLW9wYWNpdHk6IDAuMzggIWRlZmF1bHQsXG5cbiAgLy8g8J+RiSBCYWRnZVxuICAkYmFkZ2UtZG90LWhlaWdodDogOHB4ICFkZWZhdWx0LFxuICAkYmFkZ2UtZG90LXdpZHRoOiA4cHggIWRlZmF1bHQsXG4gICRiYWRnZS1taW4td2lkdGg6IDI0cHggIWRlZmF1bHQsXG4gICRiYWRnZS1oZWlnaHQ6IDEuNXJlbSAhZGVmYXVsdCxcbiAgJGJhZGdlLWZvbnQtc2l6ZTogMC44MTI1cmVtICFkZWZhdWx0LFxuICAkYmFkZ2UtYm9yZGVyLXJhZGl1czogMTJweCAhZGVmYXVsdCxcbiAgJGJhZGdlLWJvcmRlci1jb2xvcjogcmdiKHZhcigtLXYtdGhlbWUtc3VyZmFjZSkpICFkZWZhdWx0LFxuICAkYmFkZ2UtYm9yZGVyLXRyYW5zZm9ybTogc2NhbGUoMS41KSAhZGVmYXVsdCxcbiAgJGJhZGdlLWRvdC1ib3JkZXItd2lkdGg6IDJweCAhZGVmYXVsdCxcblxuICAvLyDwn5GJIENoaXBcbiAgJGNoaXAtZm9udC1zaXplOiAxM3B4ICFkZWZhdWx0LFxuICAkY2hpcC1mb250LXdlaWdodDogNTAwICFkZWZhdWx0LFxuICAkY2hpcC1sYWJlbC1ib3JkZXItcmFkaXVzOiAwLjM3NXJlbSAhZGVmYXVsdCxcbiAgJGNoaXAtaGVpZ2h0OiAzMnB4ICFkZWZhdWx0LFxuICAkY2hpcC1jbG9zZS1zaXplOiAxLjI1cmVtICFkZWZhdWx0LFxuICAkY2hpcC1lbGV2YXRpb246IDAgIWRlZmF1bHQsXG5cbiAgLy8g8J+RiSBCdXR0b25cbiAgJGJ1dHRvbi1oZWlnaHQ6IDM4cHggIWRlZmF1bHQsXG4gICRidXR0b24tcGFkZGluZy1yYXRpbzogMS45ICFkZWZhdWx0LFxuICAkYnV0dG9uLWxpbmUtaGVpZ2h0OiAxLjM3NXJlbSAhZGVmYXVsdCxcbiAgJGJ1dHRvbi1kaXNhYmxlZC1vcGFjaXR5OiAwLjQ1ICFkZWZhdWx0LFxuICAkYnV0dG9uLWRpc2FibGVkLW92ZXJsYXk6IDAuMjAyNSAhZGVmYXVsdCxcbiAgJGJ1dHRvbi1pY29uLWZvbnQtc2l6ZTogMC45Mzc1cmVtICFkZWZhdWx0LFxuXG4gIC8vIPCfkYkgQnV0dG9uIEdyb3VwXG4gICRidG4tZ3JvdXAtYm9yZGVyLXJhZGl1czogOHB4ICFkZWZhdWx0LFxuXG4gIC8vIPCfkYkgRGlhbG9nXG4gICRkaWFsb2ctY2FyZC1oZWFkZXItcGFkZGluZzogMjRweCAyNHB4IDAgIWRlZmF1bHQsXG4gICRkaWFsb2ctY2FyZC1oZWFkZXItdGV4dC1wYWRkaW5nLXRvcDogMjRweCAhZGVmYXVsdCxcbiAgJGRpYWxvZy1jYXJkLXRleHQtcGFkZGluZzogMjRweCAhZGVmYXVsdCxcbiAgJGRpYWxvZy1lbGV2YXRpb246IDggIWRlZmF1bHQsXG5cbiAgLy8g8J+RiSBDYXJkXG4gICRjYXJkLXRpdGxlLWZvbnQtc2l6ZTogJHR5cG9ncmFwaHktaDUtZm9udC1zaXplICFkZWZhdWx0LFxuICAkY2FyZC10ZXh0LWZvbnQtc2l6ZTogJHR5cG9ncmFwaHktYm9keS0xLWZvbnQtc2l6ZSAhZGVmYXVsdCxcbiAgJGNhcmQtc3VidGl0bGUtZm9udC1zaXplOiAwLjkzNzVyZW0gIWRlZmF1bHQsXG4gICRjYXJkLXN1YnRpdGxlLWhlYWRlci1wYWRkaW5nOiAwICFkZWZhdWx0LFxuICAkY2FyZC1zdWJ0aXRsZS1saW5lLWhlaWdodDogMS4zNzVyZW0gIWRlZmF1bHQsXG4gICRjYXJkLXRpdGxlLWxpbmUtaGVpZ2h0OiAxLjc1cmVtICFkZWZhdWx0LFxuICAkY2FyZC10ZXh0LXBhZGRpbmc6IDI0cHggIWRlZmF1bHQsXG4gICRjYXJkLXRleHQtbGluZS1oZWlnaHQ6IDEuMzc1cmVtICFkZWZhdWx0LFxuICAkY2FyZC1pdGVtLXBhZGRpbmc6IDI0cHggIWRlZmF1bHQsXG4gICRjYXJkLWVsZXZhdGlvbjogNiAhZGVmYXVsdCxcblxuICAvLyDwn5GJIENhcm91c2VsXG4gICRjYXJvdXNlbC1kb3QtbWFyZ2luOiAwICFkZWZhdWx0LFxuICAkY2Fyb3VzZWwtZG90LWluYWN0aXZlLW9wYWNpdHk6IDAuNCAhZGVmYXVsdCxcblxuICAvLyDwn5GJIEV4cGFuc2lvbiBQYW5lbFxuICAkZXhwYW5zaW9uLXBhbmVsLXRpdGxlLXBhZGRpbmc6IDEycHggMjBweCAxMnB4IDI0cHggIWRlZmF1bHQsXG4gICRleHBhbnNpb24tcGFuZWwtY29sb3I6IHJnYmEodmFyKC0tdi10aGVtZS1vbi1zdXJmYWNlKSwgdmFyKC0tdi1tZWRpdW0tZW1waGFzaXMtb3BhY2l0eSkpICFkZWZhdWx0LFxuICAkZXhwYW5zaW9uLXBhbmVsLWFjdGl2ZS10aXRsZS1taW4taGVpZ2h0OiA0NnB4ICFkZWZhdWx0LFxuICAkZXhwYW5zaW9uLXBhbmVsLXRpdGxlLW1pbi1oZWlnaHQ6IDQ2cHggIWRlZmF1bHQsXG4gICRleHBhbnNpb24tcGFuZWwtdGV4dC1wYWRkaW5nOiAwIDIwcHggMjBweCAyNHB4ICFkZWZhdWx0LFxuXG4gIC8vIPCfkYkgRmllbGRcbiAgJGZpZWxkLWZvbnQtc2l6ZTogMC45Mzc1cmVtICFkZWZhdWx0LFxuICAkaW5wdXQtZGVuc2l0eTogKFwiZGVmYXVsdFwiOiAtMiwgXCJjb21mb3J0YWJsZVwiOiAtNC41LCBcImNvbXBhY3RcIjogLTYuNSkgIWRlZmF1bHQsXG4gICRmaWVsZC1vdXRsaW5lLW9wYWNpdHk6IDAuMjIgIWRlZmF1bHQsXG4gICRmaWVsZC1ib3JkZXItd2lkdGg6IDFweCAhZGVmYXVsdCxcbiAgJGZpZWxkLWZvY3VzZWQtYm9yZGVyLXdpZHRoOiAycHggIWRlZmF1bHQsXG4gICRmaWVsZC1jb250cm9sLWFmZml4ZWQtcGFkZGluZzogMTRweCAhZGVmYXVsdCxcblxuICAvLyDwn5GJIElucHV0XG4gICRpbnB1dC1kZXRhaWxzLXBhZGRpbmctYWJvdmU6IDRweCAhZGVmYXVsdCxcbiAgJGlucHV0LWRldGFpbHMtZm9udC1zaXplOiAwLjgxMjVyZW0gIWRlZmF1bHQsXG5cbiAgLy8g8J+RiSBMaXN0XG4gICRsaXN0LWRlbnNpdHk6IChcImRlZmF1bHRcIjogMCwgXCJjb21mb3J0YWJsZVwiOiAtMS41LCBcImNvbXBhY3RcIjogLTIuNSkgIWRlZmF1bHQsXG4gICRsaXN0LWJvcmRlci1yYWRpdXM6IDZweCAhZGVmYXVsdCxcbiAgJGxpc3QtaXRlbS1wYWRkaW5nOiA4cHggMjBweCAhZGVmYXVsdCxcbiAgJGxpc3QtaXRlbS1pY29uLW1hcmdpbi1lbmQ6IDEwcHggIWRlZmF1bHQsXG4gICRsaXN0LWl0ZW0taWNvbi1tYXJnaW4tc3RhcnQgOiAxMnB4ICFkZWZhdWx0LFxuICAkbGlzdC1pdGVtLXN1YnRpdGxlLWxpbmUtaGVpZ2h0OiAyMHB4ICFkZWZhdWx0LFxuICAkbGlzdC1zdWJoZWFkZXItZm9udC1zaXplOiAxM3B4ICFkZWZhdWx0LFxuICAkbGlzdC1zdWJoZWFkZXItbGluZS1oZWlnaHQ6IDEuMjVyZW0gIWRlZmF1bHQsXG4gICRsaXN0LXN1YmhlYWRlci1wYWRkaW5nLWVuZDogMjBweCAhZGVmYXVsdCxcbiAgJGxpc3Qtc3ViaGVhZGVyLW1pbi1oZWlnaHQ6IDQwcHggIWRlZmF1bHQsXG4gICRsaXN0LWl0ZW0tYXZhdGFyLW1hcmdpbi1zdGFydDogMTJweCAhZGVmYXVsdCxcbiAgJGxpc3QtaXRlbS1hdmF0YXItbWFyZ2luLWVuZDogMTJweCAhZGVmYXVsdCxcbiAgJGxpc3QtZGlzYWJsZWQtb3BhY2l0eTogMC40LFxuXG4gIC8vIPCfkYkgbGFiZWxcbiAgJGxhYmVsLWZvbnQtc2l6ZTogMC45Mzc1cmVtICFkZWZhdWx0LFxuXG4gIC8vIPCfkYkgbWVzc2FnZVxuICAkbWVzc2FnZXMtZm9udC1zaXplOiAxM3B4ICFkZWZhdWx0LFxuXG4gIC8vIPCfkYkgbWVudVxuICAkbWVudS1lbGV2YXRpb246IDggIWRlZmF1bHQsXG5cbiAgLy8g8J+RiSBuYXZpZ2F0aW9uIGRyYXdlclxuICAkbmF2aWdhdGlvbi1kcmF3ZXItdGVtcG9yYXJ5LWVsZXZhdGlvbjogOCAhZGVmYXVsdCxcblxuICAvLyDwn5GJIHBhZ2luYXRpb25cbiAgJHBhZ2luYXRpb24taXRlbS1tYXJnaW46IDAuMTg3NXJlbSAhZGVmYXVsdCxcblxuICAvLyDwn5GJIFByb2dyZXNzIExpbmVhclxuICAkcHJvZ3Jlc3MtbGluZWFyLWJhY2tncm91bmQtb3BhY2l0eTogMSAhZGVmYXVsdCxcblxuICAvLyDwn5GJIFJhZGlvXG4gICRyYWRpby1ncm91cC1sYWJlbC1zZWxlY3Rpb24tZ3JvdXAtcGFkZGluZy1pbmxpbmU6IDAgIWRlZmF1bHQsXG5cbiAgLy8g8J+RiSBzbGlkZXJcbiAgJHNsaWRlci10aHVtYi1ob3Zlci1vcGFjaXR5OiB2YXIoLS12LWFjdGl2YXRlZC1vcGFjaXR5KSAhZGVmYXVsdCxcbiAgJHNsaWRlci10aHVtYi1sYWJlbC1wYWRkaW5nOiAycHggMTBweCAhZGVmYXVsdCxcbiAgJHNsaWRlci10aHVtYi1sYWJlbC1mb250LXNpemU6IDAuODEyNXJlbSAhZGVmYXVsdCxcbiAgJHNsaWRlci10cmFjay1hY3RpdmUtc2l6ZTogNnB4ICFkZWZhdWx0LFxuXG4gIC8vIPCfkYkgc2VsZWN0XG4gICRzZWxlY3QtY2hpcHMtbWFyZ2luLWJvdHRvbTogKFwiZGVmYXVsdFwiOiAxLCBcImNvbWZvcnRhYmxlXCI6IDEsIFwiY29tcGFjdFwiOiAxKSAhZGVmYXVsdCxcblxuICAvLyDwn5GJIHNuYWNrYmFyXG4gICRzbmFja2Jhci1iYWNrZ3JvdW5kOiByZ2IodmFyKC0tdi10b29sdGlwLWJhY2tncm91bmQpKSAhZGVmYXVsdCxcbiAgJHNuYWNrYmFyLWNvbG9yOiByZ2IodmFyKC0tdi10aGVtZS1zdXJmYWNlKSkgIWRlZmF1bHQsXG4gICRzbmFja2Jhci1jb250ZW50LXBhZGRpbmc6IDEycHggMTZweCAhZGVmYXVsdCxcbiAgJHNuYWNrYmFyLWZvbnQtc2l6ZTogMC44MTI1cmVtICFkZWZhdWx0LFxuICAkc25hY2tiYXItZWxldmF0aW9uOiAyICFkZWZhdWx0LFxuICAkc25hY2tiYXItd3JhcHBlci1taW4taGVpZ2h0OjQ0cHggIWRlZmF1bHQsXG4gICRzbmFja2Jhci1idG4tcGFkZGluZzogMCA5cHggIWRlZmF1bHQsXG4gICRzbmFja2Jhci1hY3Rpb24tbWFyZ2luOiAxNnB4ICFkZWZhdWx0LFxuXG4gIC8vIPCfkYkgc3dpdGNoXG4gICRzd2l0Y2gtaW5zZXQtdHJhY2std2lkdGg6IDEuODc1cmVtICFkZWZhdWx0LFxuICAkc3dpdGNoLWluc2V0LXRyYWNrLWhlaWdodDogMS4xMjVyZW0gIWRlZmF1bHQsXG4gICRzd2l0Y2gtaW5zZXQtdGh1bWItaGVpZ2h0OiAwLjg3NXJlbSAhZGVmYXVsdCxcbiAgJHN3aXRjaC1pbnNldC10aHVtYi13aWR0aDogMC44NzVyZW0gIWRlZmF1bHQsXG4gICRzd2l0Y2gtaW5zZXQtdGh1bWItb2ZmLWhlaWdodDogMC44NzVyZW0gIWRlZmF1bHQsXG4gICRzd2l0Y2gtaW5zZXQtdGh1bWItb2ZmLXdpZHRoOiAwLjg3NXJlbSAhZGVmYXVsdCxcbiAgJHN3aXRjaC10aHVtYi1lbGV2YXRpb246IDIgIWRlZmF1bHQsXG4gICRzd2l0Y2gtdHJhY2stb3BhY2l0eTogMSAhZGVmYXVsdCxcbiAgJHN3aXRjaC10cmFjay1iYWNrZ3JvdW5kOiByZ2JhKHZhcigtLXYtdGhlbWUtb24tc3VyZmFjZSksIHZhcigtLXYtZm9jdXMtb3BhY2l0eSkpICFkZWZhdWx0LFxuICAkc3dpdGNoLXRodW1iLWJhY2tncm91bmQ6IHJnYih2YXIoLS12LXRoZW1lLW9uLXByaW1hcnkpKSxcblxuICAvLyDwn5GJIHRhYmxlXG4gICR0YWJsZS1yb3ctaGVpZ2h0OiA1MHB4ICFkZWZhdWx0LFxuICAkdGFibGUtY29sb3I6IHJnYmEodmFyKC0tdi10aGVtZS1vbi1zdXJmYWNlKSwgdmFyKC0tdi1tZWRpdW0tZW1waGFzaXMtb3BhY2l0eSkpICFkZWZhdWx0LFxuICAkdGFibGUtZm9udC1zaXplOiAwLjkzNzVyZW0gIWRlZmF1bHQsXG5cbiAgLy8g8J+RiSB0YWJzXG4gICR0YWJzLWhlaWdodDogNDJweCAhZGVmYXVsdCxcbiAgJHRhYi1taW4td2lkdGg6IDUwcHggIWRlZmF1bHQsXG5cbiAgLy8g8J+RiSB0b29sdGlwXG4gICR0b29sdGlwLWJhY2tncm91bmQtY29sb3I6IHJnYih2YXIoLS12LXRvb2x0aXAtYmFja2dyb3VuZCkpICFkZWZhdWx0LFxuICAkdG9vbHRpcC10ZXh0LWNvbG9yOiByZ2IodmFyKC0tdi10aGVtZS1zdXJmYWNlKSkgIWRlZmF1bHQsXG4gICR0b29sdGlwLWZvbnQtc2l6ZTogMC44MTI1cmVtICFkZWZhdWx0LFxuICAkdG9vbHRpcC1ib3JkZXItcmFkaXVzOiAwLjI1cmVtICFkZWZhdWx0LFxuICAkdG9vbHRpcC1wYWRkaW5nOiA1cHggMTJweCAhZGVmYXVsdCxcblxuICAvLyDwn5GJIHRpbWVsaW5lXG4gICR0aW1lbGluZS1kb3Qtc2l6ZTogMzRweCAhZGVmYXVsdCxcbiAgJHRpbWVsaW5lLWRvdC1kaXZpZGVyLWJhY2tncm91bmQ6IHJnYmEodmFyKC0tdi1ib3JkZXItY29sb3IpLDAuMDgpICFkZWZhdWx0LFxuICAkdGltZWxpbmUtZGl2aWRlci1saW5lLWJhY2tncm91bmQ6IHJnYmEodmFyKC0tdi1ib3JkZXItY29sb3IpLCB2YXIoLS12LWJvcmRlci1vcGFjaXR5KSkgIWRlZmF1bHQsXG4gICR0aW1lbGluZS1kaXZpZGVyLWxpbmUtdGhpY2tuZXNzOiAxLjVweCAhZGVmYXVsdCxcbiAgJHRpbWVsaW5lLWl0ZW0tcGFkZGluZzogMTZweCAhZGVmYXVsdCxcbik7XG4iLCJAdXNlIFwic2FzczptYXBcIjtcblxuLyog8J+RiSBTaGFkb3cgb3BhY2l0aWVzICovXG4kc2hhZG93LWtleS11bWJyYS1vcGFjaXR5LWN1c3RvbTogdmFyKC0tdi1zaGFkb3cta2V5LXVtYnJhLW9wYWNpdHkpO1xuJHNoYWRvdy1rZXktcGVudW1icmEtb3BhY2l0eS1jdXN0b206IHZhcigtLXYtc2hhZG93LWtleS1wZW51bWJyYS1vcGFjaXR5KTtcbiRzaGFkb3cta2V5LWFtYmllbnQtb3BhY2l0eS1jdXN0b206IHZhcigtLXYtc2hhZG93LWtleS1hbWJpZW50LW9wYWNpdHkpO1xuXG4vKiDwn5GJIENhcmQgdHJhbnNpdGlvbiBwcm9wZXJ0aWVzICovXG4kY2FyZC10cmFuc2l0aW9uLXByb3BlcnR5LWN1c3RvbTogYm94LXNoYWRvdywgb3BhY2l0eTtcblxuQGZvcndhcmQgXCJ2dWV0aWZ5L3NldHRpbmdzXCIgd2l0aCAoXG4gIC8vIPCfkYkgR2VuZXJhbCBzZXR0aW5nc1xuICAkY29sb3ItcGFjazogZmFsc2UgIWRlZmF1bHQsXG5cbiAgLy8g8J+RiSBTaGFkb3cgb3BhY2l0eVxuICAkc2hhZG93LWtleS11bWJyYS1vcGFjaXR5OiAkc2hhZG93LWtleS11bWJyYS1vcGFjaXR5LWN1c3RvbSAhZGVmYXVsdCxcbiAgJHNoYWRvdy1rZXktcGVudW1icmEtb3BhY2l0eTogJHNoYWRvdy1rZXktcGVudW1icmEtb3BhY2l0eS1jdXN0b20gIWRlZmF1bHQsXG4gICRzaGFkb3cta2V5LWFtYmllbnQtb3BhY2l0eTogJHNoYWRvdy1rZXktYW1iaWVudC1vcGFjaXR5LWN1c3RvbSAhZGVmYXVsdCxcblxuICAgIC8vIPCfkYkgQ2FyZFxuICAkY2FyZC1jb2xvcjogcmdiYSh2YXIoLS12LXRoZW1lLW9uLXN1cmZhY2UpLCB2YXIoLS12LW1lZGl1bS1lbXBoYXNpcy1vcGFjaXR5KSkgIWRlZmF1bHQsXG4gICRjYXJkLWVsZXZhdGlvbjogNiAhZGVmYXVsdCxcbiAgJGNhcmQtdGl0bGUtbGluZS1oZWlnaHQ6IDEuNiAhZGVmYXVsdCxcbiAgJGNhcmQtYWN0aW9ucy1taW4taGVpZ2h0OiB1bnNldCAhZGVmYXVsdCxcbiAgJGNhcmQtdGV4dC1wYWRkaW5nOiAxLjI1cmVtICFkZWZhdWx0LFxuICAkY2FyZC1pdGVtLXBhZGRpbmc6IDEuMjVyZW0gIWRlZmF1bHQsXG4gICRjYXJkLWFjdGlvbnMtcGFkZGluZzogMCAxMnB4IDEycHggIWRlZmF1bHQsXG4gICRjYXJkLXRyYW5zaXRpb24tcHJvcGVydHk6ICRjYXJkLXRyYW5zaXRpb24tcHJvcGVydHktY3VzdG9tICFkZWZhdWx0LFxuICAkY2FyZC1zdWJ0aXRsZS1vcGFjaXR5OiAxICFkZWZhdWx0LFxuXG4gIC8vIPCfkYkgRXhwYW5zaW9uIFBhbmVsXG4gICRleHBhbnNpb24tcGFuZWwtYWN0aXZlLXRpdGxlLW1pbi1oZWlnaHQ6IDQ4cHggIWRlZmF1bHQsXG5cbiAgLy8g8J+RiSBMaXN0XG4gICRsaXN0LWl0ZW0taWNvbi1tYXJnaW4tZW5kOiAxNnB4ICFkZWZhdWx0LFxuICAkbGlzdC1pdGVtLWljb24tbWFyZ2luLXN0YXJ0OiAxNnB4ICFkZWZhdWx0LFxuICAkbGlzdC1pdGVtLXN1YnRpdGxlLW9wYWNpdHk6IDEgIWRlZmF1bHQsXG5cbiAgLy8g8J+RiSBOYXZpZ2F0aW9uIERyYXdlclxuICAkbmF2aWdhdGlvbi1kcmF3ZXItY29udGVudC1vdmVyZmxvdy15OiBoaWRkZW4gIWRlZmF1bHQsXG5cbiAgLy8g8J+RiSBUb29sdGlwXG4gICR0b29sdGlwLWJhY2tncm91bmQtY29sb3I6IHJnYmEoNTksIDU1LCA2OCwgMC45KSAhZGVmYXVsdCxcbiAgJHRvb2x0aXAtdGV4dC1jb2xvcjogcmdiKHZhcigtLXYtdGhlbWUtb24tcHJpbWFyeSkpICFkZWZhdWx0LFxuICAkdG9vbHRpcC1mb250LXNpemU6IDAuNzVyZW0gIWRlZmF1bHQsXG5cbiAgIC8vIPCfkYkgVlRpbWVsaW5lXG4gICR0aW1lbGluZS1kb3Qtc2l6ZTogMzRweCAhZGVmYXVsdCxcblxuICAvLyDwn5GJIHRhYmxlXG4gICR0YWJsZS10cmFuc2l0aW9uLXByb3BlcnR5OiAgaGVpZ2h0ICFkZWZhdWx0LFxuXG4gIC8vIPCfkYkgVk92ZXJsYXlcbiAgJG92ZXJsYXktb3BhY2l0eTogMSAhZGVmYXVsdCxcblxuICAvLyDwn5GJIFZDb250YWluZXJcbiAgJGNvbnRhaW5lci1tYXgtd2lkdGhzOiAoXG4gICAgXCJ4bFwiOiAxNDQwcHgsXG4gICAgXCJ4eGxcIjogMTQ0MHB4XG4gICkgIWRlZmF1bHQsXG5cbik7XG4iLCJAdXNlIFwiQGxheW91dHMvc3R5bGVzL21peGluc1wiIGFzIGxheW91dHNNaXhpbnM7XG5AdXNlIFwiQGNvcmUvc2Nzcy9iYXNlL3ZhcmlhYmxlc1wiO1xuQHVzZSBcIkBsYXlvdXRzL3N0eWxlcy9wbGFjZWhvbGRlcnNcIjtcbkB1c2UgXCJAY29yZS9zY3NzL2Jhc2UvbWl4aW5zXCI7XG5cbi8vIEhvcml6b250YWwgbmF2IGl0ZW0gc3R5bGVzIChpbmNsdWRpbmcgbmVzdGVkKVxuJWhvcml6b250YWwtbmF2LWl0ZW0ge1xuICBwYWRkaW5nLWJsb2NrOiAwLjZyZW07XG4gIHBhZGRpbmctaW5saW5lOiAxcmVtO1xufVxuXG4vLyBUb3AgbGV2ZWwgaG9yaXpvbnRhbCBuYXYgaXRlbSBzdHlsZXMgKGBhYCB0YWcgJiBncm91cCBsYWJlbClcbiVob3Jpem9udGFsLW5hdi10b3AtbGV2ZWwtaXRlbSB7XG4gIGJvcmRlci1yYWRpdXM6IDAuNHJlbTtcbn1cblxuJWhvcml6b250YWwtbmF2LWRpc2FibGVkIHtcbiAgb3BhY2l0eTogdmFyKC0tdi1kaXNhYmxlZC1vcGFjaXR5KTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbi8vIEFjdGl2ZSBzdHlsZXMgZm9yIHN1YiBuYXYgbGlua1xuJWhvcml6b250YWwtbmF2LXN1Yi1uYXYtbGluay1hY3RpdmUge1xuICBiYWNrZ3JvdW5kOiByZ2JhKHZhcigtLXYtdGhlbWUtcHJpbWFyeSksIDAuMSk7XG4gIGNvbG9yOiByZ2IodmFyKC0tdi10aGVtZS1wcmltYXJ5KSk7XG59XG5cbi8qXG4gIOKEue+4jyBUaGlzIHN0eWxlIGlzIHJlcXVpcmVkIHdoZW4geW91IGRvbid0IHByb3ZpZGUgYW55IHRyYW5zaXRpb24gdG8gaG9yaXpvbnRhbCBuYXYgaXRlbXMgdmlhIHRoZW1lQ29uZmlnIGB0aGVtZUNvbmZpZy5ob3Jpem9udGFsTmF2LnRyYW5zaXRpb25gXG4gIEFsc28sIHlvdSBoYXZlIHRvIGRpc2FibGUgaXQgaWYgeW91IGFyZSB1c2luZyB0cmFuc2l0aW9uXG4qL1xuLy8gUG9wcGVyIGNvbnRlbnQgc3R5bGVzIHdoZW4gaXQncyBoaWRkZW5cbiVob3Jpem9udGFsLW5hdi1wb3BwZXItY29udGVudC1oaWRkZW4ge1xuICAvLyBkaXNwbGF5OiBub25lO1xuXG4gIC8vIG9wYWNpdHk6IDA7XG4gIC8vIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAvLyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoN3B4KTtcbiAgLy8gdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMjVzIGVhc2UtaW4tb3V0LCBvcGFjaXR5IDAuMTVzIGVhc2UtaW4tb3V0O1xufVxuXG4vKlxuICDihLnvuI8gVGhpcyBzdHlsZSBpcyByZXF1aXJlZCB3aGVuIHlvdSBkb24ndCBwcm92aWRlIGFueSB0cmFuc2l0aW9uIHRvIGhvcml6b250YWwgbmF2IGl0ZW1zIHZpYSB0aGVtZUNvbmZpZyBgdGhlbWVDb25maWcuaG9yaXpvbnRhbE5hdi50cmFuc2l0aW9uYFxuICBBbHNvLCB5b3UgaGF2ZSB0byBkaXNhYmxlIGl0IGlmIHlvdSBhcmUgdXNpbmcgdHJhbnNpdGlvblxuKi9cbi8vIFBvcHBlciBjb250ZW50IHN0eWxlcyB3aGVuIGl0J3Mgc2hvd25cbiVob3Jpem9udGFsLW5hdi1wb3BwZXItY29udGVudC12aXNpYmxlIHtcbiAgLy8gZGlzcGxheTogYmxvY2s7XG5cbiAgLy8gb3BhY2l0eTogMTtcbiAgLy8gcG9pbnRlci1ldmVudHM6IGF1dG87XG4gIC8vIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICAvLyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG59XG5cbi8vIEhvcml6b250YWwgbmF2IGl0ZW0gaWNvbiAoSW5jbHVkaW5nIHN1YiBuYXYgaXRlbXMpXG4laG9yaXpvbnRhbC1uYXYtaXRlbS1pY29uIHtcbiAgZm9udC1zaXplOiB2YXJpYWJsZXMuJGhvcml6b250YWwtbmF2LWl0ZW1zLWljb24tc2l6ZTtcbiAgbWFyZ2luLWlubGluZS1lbmQ6IHZhcmlhYmxlcy4kaG9yaXpvbnRhbC1uYXYtaXRlbXMtaWNvbi1tYXJnaW4taW5saW5lLWVuZDtcbn1cblxuLy8gSG9yaXpvbnRhbCBuYXYgc3ViaXRlbVxuJWhvcml6b250YWwtbmF2LXN1Yml0ZW0ge1xuICBtaW4taW5saW5lLXNpemU6IDEycmVtO1xuXG4gIC5uYXYtaXRlbS10aXRsZSB7XG4gICAgbWFyZ2luLWlubGluZS1lbmQ6IDFyZW07XG4gIH1cbn1cblxuLy8gU3R5bGVzIGZvciB0aGlyZCBsZXZlbCBpdGVtIGljb24vIChlLmcuIFJlZHVjZSB0aGUgaWNvbidzIHNpemUgb2YgbmVzdGVkIGdyb3VwJ3MgbmF2IGxpbmtzIChUb3AgbGV2ZWwgZ3JvdXAgPiBTdWIgZ3JvdXAgPiBbTmF2IGxpbmtzXSkpXG4ldGhpcmQtbGV2ZWwtbmF2LWl0ZW0taWNvbiB7XG4gIGZvbnQtc2l6ZTogdmFyaWFibGVzLiRob3Jpem9udGFsLW5hdi10aGlyZC1sZXZlbC1pY29uLXNpemU7XG4gIG1hcmdpbi1pbmxpbmU6IGNhbGMoKHZhcmlhYmxlcy4kaG9yaXpvbnRhbC1uYXYtaXRlbXMtaWNvbi1zaXplIC0gdmFyaWFibGVzLiRob3Jpem9udGFsLW5hdi10aGlyZC1sZXZlbC1pY29uLXNpemUpIC8gMikgMC43NXJlbTtcblxuICAvKlxuICAgIOKEue+4jyBgbWFyZ2luLWlubGluZWAgd2lsbCBiZSAobm9ybWFsIGljb24gZm9udC1zaXplIC0gc21hbGwgaWNvbiBmb250LXNpemUpIC8gMlxuICAgICgxLjVyZW0gLSAwLjlyZW0pIC8gMiA9PiAwLjZyZW0gLyAyID0+IDAuM3JlbVxuICAqL1xufVxuXG4vLyBIb3Jpem9udGFsIG5hdiBpdGVtIHRpdGxlXG4laG9yaXpvbnRhbC1uYXYtaXRlbS10aXRsZSB7XG4gIG1hcmdpbi1pbmxpbmUtZW5kOiAwLjNyZW07XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi8vIFBvcHBlciBjb250ZW50IHN0eWxlc1xuJWhvcml6b250YWwtbmF2LXBvcHBlci1jb250ZW50IHtcbiAgQGluY2x1ZGUgbWl4aW5zLmVsZXZhdGlvbig0KTtcblxuICBib3JkZXItcmFkaXVzOiA2cHg7XG4gIHBhZGRpbmctYmxvY2s6IDAuM3JlbTtcblxuICA+IGRpdiB7XG4gICAgQGV4dGVuZCAlc3R5bGUtc2Nyb2xsLWJhcjtcbiAgfVxufVxuIiwiQHVzZSBcInNhc3M6bWFwXCI7XG5AdXNlIFwiQHN0eWxlcy92YXJpYWJsZXMvdnVldGlmeS5zY3NzXCI7XG5cbkBtaXhpbiBlbGV2YXRpb24oJHosICRpbXBvcnRhbnQ6IGZhbHNlKSB7XG4gIGJveC1zaGFkb3c6IG1hcC5nZXQodnVldGlmeS4kc2hhZG93LWtleS11bWJyYSwgJHopLCBtYXAuZ2V0KHZ1ZXRpZnkuJHNoYWRvdy1rZXktcGVudW1icmEsICR6KSwgbWFwLmdldCh2dWV0aWZ5LiRzaGFkb3cta2V5LWFtYmllbnQsICR6KSBpZigkaW1wb3J0YW50LCAhaW1wb3J0YW50LCBudWxsKTtcbn1cblxuLy8gI3JlZ2lvbiBiZWZvcmUtcHNldWRvXG4vLyDihLnvuI8gVGhpcyBtaXhpbiBpcyBpbnNwaXJlZCBmcm9tIHZ1ZXRpZnkgZm9yIGFkZGluZyBob3ZlciBzdHlsZXMgdmlhIGJlZm9yZSBwc2V1ZG8gZWxlbWVudFxuQG1peGluIGJlZm9yZS1wc2V1ZG8oKSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAmOjpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3JkZXItcmFkaXVzOiBpbmhlcml0O1xuICAgIGJhY2tncm91bmQ6IGN1cnJlbnRjb2xvcjtcbiAgICBibG9jay1zaXplOiAxMDAlO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgaW5saW5lLXNpemU6IDEwMCU7XG4gICAgaW5zZXQ6IDA7XG4gICAgb3BhY2l0eTogMDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgfVxufVxuXG4vLyAjZW5kcmVnaW9uIGJlZm9yZS1wc2V1ZG9cblxuQG1peGluIGJvcmRlcmVkLXNraW4oJGNvbXBvbmVudCwgJGJvcmRlci1wcm9wZXJ0eTogXCJib3JkZXJcIiwgJGltcG9ydGFudDogZmFsc2UpIHtcbiAgI3skY29tcG9uZW50fSB7XG4gICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBhbm5vdGF0aW9uLW5vLXVua25vd25cbiAgICAjeyRib3JkZXItcHJvcGVydHl9OiAxcHggc29saWQgcmdiYSh2YXIoLS12LWJvcmRlci1jb2xvciksIHZhcigtLXYtYm9yZGVyLW9wYWNpdHkpKSBpZigkaW1wb3J0YW50LCAhaW1wb3J0YW50LCBudWxsKTtcbiAgfVxufVxuXG4vLyAjcmVnaW9uIHNlbGVjdGVkLXN0YXRlc1xuLy8g4oS577iPIEluc3BpcmVkIGZyb20gdnVldGlmeSdzIGFjdGl2ZS1zdGF0ZXMgbWl4aW5cbi8vIGZvY3VzID0+IDAuMTIgJiBzZWxlY3RlZCA9PiAwLjA4XG5AbWl4aW4gc2VsZWN0ZWQtc3RhdGVzKCRzZWxlY3Rvcikge1xuICAjeyRzZWxlY3Rvcn0ge1xuICAgIG9wYWNpdHk6IGNhbGModmFyKC0tdi1zZWxlY3RlZC1vcGFjaXR5KSAqIHZhcigtLXYtdGhlbWUtb3ZlcmxheS1tdWx0aXBsaWVyKSk7XG4gIH1cblxuICAmOmhvdmVyXG4gICN7JHNlbGVjdG9yfSB7XG4gICAgb3BhY2l0eTogY2FsYyh2YXIoLS12LXNlbGVjdGVkLW9wYWNpdHkpICsgdmFyKC0tdi1ob3Zlci1vcGFjaXR5KSAqIHZhcigtLXYtdGhlbWUtb3ZlcmxheS1tdWx0aXBsaWVyKSk7XG4gIH1cblxuICAmOmZvY3VzLXZpc2libGVcbiAgI3skc2VsZWN0b3J9IHtcbiAgICBvcGFjaXR5OiBjYWxjKHZhcigtLXYtc2VsZWN0ZWQtb3BhY2l0eSkgKyB2YXIoLS12LWZvY3VzLW9wYWNpdHkpICogdmFyKC0tdi10aGVtZS1vdmVybGF5LW11bHRpcGxpZXIpKTtcbiAgfVxuXG4gIEBzdXBwb3J0cyBub3Qgc2VsZWN0b3IoOmZvY3VzLXZpc2libGUpIHtcbiAgICAmOmZvY3VzIHtcbiAgICAgICN7JHNlbGVjdG9yfSB7XG4gICAgICAgIG9wYWNpdHk6IGNhbGModmFyKC0tdi1zZWxlY3RlZC1vcGFjaXR5KSArIHZhcigtLXYtZm9jdXMtb3BhY2l0eSkgKiB2YXIoLS12LXRoZW1lLW92ZXJsYXktbXVsdGlwbGllcikpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyAjZW5kcmVnaW9uIHNlbGVjdGVkLXN0YXRlc1xuIiwiQHVzZSBcIkBjb3JlL3Njc3MvYmFzZS9taXhpbnNcIjtcbkB1c2UgXCJAY29uZmlndXJlZC12YXJpYWJsZXNcIiBhcyB2YXJpYWJsZXM7XG5AdXNlIFwidnVldGlmeS9saWIvc3R5bGVzL3Rvb2xzL3N0YXRlc1wiIGFzIHZ1ZXRpZnlTdGF0ZXM7XG5cbiVuYXYtaGVhZGVyLWFjdGlvbiB7XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbn1cblxuLy8gTmF2IGl0ZW1zIHN0eWxlcyAoaW5jbHVkaW5nIHNlY3Rpb24gdGl0bGUpXG4ldmVydGljYWwtbmF2LWl0ZW0ge1xuICBtYXJnaW4tYmxvY2s6IDA7XG4gIG1hcmdpbi1pbmxpbmU6IHZhcmlhYmxlcy4kdmVydGljYWwtbmF2LWhvcml6b250YWwtc3BhY2luZztcbiAgcGFkZGluZy1ibG9jazogMDtcbiAgcGFkZGluZy1pbmxpbmU6IHZhcmlhYmxlcy4kdmVydGljYWwtbmF2LWhvcml6b250YWwtcGFkZGluZztcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLy8gVGhpcyBpcyBzYW1lIGFzIGAldmVydGljYWwtbmF2LWl0ZW1gIGV4Y2VwdCBzZWN0aW9uIHRpdGxlIGlzIGV4Y2x1ZGVkXG4ldmVydGljYWwtbmF2LWl0ZW0taW50ZXJhY3RpdmUge1xuICBib3JkZXItcmFkaXVzOiAwLjRyZW07XG4gIGJsb2NrLXNpemU6IDIuNzVyZW07XG5cbiAgLypcbiAgICDihLnvuI8gV2Ugd2lsbCB1c2UgYG1hcmdpbi1ibG9jay1lbmRgIGluc3RlYWQgb2YgYG1hcmdpbi1ibG9ja2AgdG8gZ2l2ZSBtb3JlIHNwYWNlIGZvciBzaGFkb3cgdG8gYXBwZWFyLlxuICAgIFdpdGggYG1hcmdpbi1ibG9ja2AsIGR1ZSB0byBzbWFsbCBzcGFjZSAoc3BhY2UgZ2V0cyBkaXZpZGVkIGJldHdlZW4gdG9wICYgYm90dG9tKSBzaGFkb3cgY3V0c1xuICAqL1xuICBtYXJnaW4tYmxvY2stZW5kOiAwLjM3NXJlbTtcbn1cblxuLy8gQ29tbW9uIHN0eWxlcyBmb3IgbmF2IGl0ZW0gaWNvbiBzdHlsZXNcbi8vIOKEue+4jyBOYXYgZ3JvdXAncyBjaGlsZHJlbiBpY29uIHN0eWxlcyBhcmUgbm90IGhlcmUgKEFkanVzdHMgaGVpZ2h0LCB3aWR0aCAmIG1hcmdpbilcbiV2ZXJ0aWNhbC1uYXYtaXRlbXMtaWNvbiB7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICBmb250LXNpemU6IHZhcmlhYmxlcy4kdmVydGljYWwtbmF2LWl0ZW1zLWljb24tc2l6ZTtcbiAgbWFyZ2luLWlubGluZS1lbmQ6IHZhcmlhYmxlcy4kdmVydGljYWwtbmF2LWl0ZW1zLWljb24tbWFyZ2luLWlubGluZS1lbmQ7XG59XG5cbi8vIOKEue+4jyBJY29uIHN0eWxpbmcgZm9yIGljb24gbmVzdGVkIGluc2lkZSBhbm90aGVyIG5hdiBpdGVtICgybmQgbGV2ZWwpXG4ldmVydGljYWwtbmF2LWl0ZW1zLW5lc3RlZC1pY29uIHtcbiAgLypcbiAgICDihLnvuI8gYG1hcmdpbi1pbmxpbmVgIHdpbGwgYmUgKG5vcm1hbCBpY29uIGZvbnQtc2l6ZSAtIHNtYWxsIGljb24gZm9udC1zaXplKSAvIDJcbiAgICAoMS41cmVtIC0gMC45cmVtKSAvIDIgPT4gMC42cmVtIC8gMiA9PiAwLjNyZW1cbiAgKi9cbiAgJHZlcnRpY2FsLW5hdi1pdGVtcy1uZXN0ZWQtaWNvbi1tYXJnaW4taW5saW5lOiBjYWxjKCh2YXJpYWJsZXMuJHZlcnRpY2FsLW5hdi1pdGVtcy1pY29uLXNpemUgLSB2YXJpYWJsZXMuJHZlcnRpY2FsLW5hdi1pdGVtcy1uZXN0ZWQtaWNvbi1zaXplKSAvIDIpO1xuXG4gIGZvbnQtc2l6ZTogdmFyaWFibGVzLiR2ZXJ0aWNhbC1uYXYtaXRlbXMtbmVzdGVkLWljb24tc2l6ZTtcbiAgbWFyZ2luLWlubGluZTogJHZlcnRpY2FsLW5hdi1pdGVtcy1uZXN0ZWQtaWNvbi1tYXJnaW4taW5saW5lICR2ZXJ0aWNhbC1uYXYtaXRlbXMtbmVzdGVkLWljb24tbWFyZ2luLWlubGluZSArIHZhcmlhYmxlcy4kdmVydGljYWwtbmF2LWl0ZW1zLWljb24tbWFyZ2luLWlubGluZS1lbmQ7XG59XG5cbiV2ZXJ0aWNhbC1uYXYtaXRlbXMtaWNvbi1hZnRlci0ybmQtbGV2ZWwge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi8vIE9wZW4gJiBBY3RpdmUgbmF2IGdyb3VwIHN0eWxlc1xuJXZlcnRpY2FsLW5hdi1ncm91cC1vcGVuLWFjdGl2ZSB7XG4gIEBpbmNsdWRlIG1peGlucy5zZWxlY3RlZC1zdGF0ZXMoXCImOjpiZWZvcmVcIik7XG59XG5cbi8vIFNlY3Rpb24gdGl0bGVcbi8vIOKEue+4jyBTZXR0aW5nIGhlaWdodCB3aWxsIHByZXZlbnQgamVya2luZyB3aGVuIHRleHQgJiBpY29uIGlzIHRvZ2dsZWRcbiV2ZXJ0aWNhbC1uYXYtc2VjdGlvbi10aXRsZSB7XG4gIGJsb2NrLXNpemU6IDEuNXJlbTtcbiAgY29sb3I6IHJnYmEodmFyKC0tdi10aGVtZS1vbi1zdXJmYWNlKSwgdmFyKC0tdi1kaXNhYmxlZC1vcGFjaXR5KSk7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLy8gVmVydGljYWwgbmF2IGl0ZW0gYmFkZ2Ugc3R5bGVzXG4ldmVydGljYWwtbmF2LWl0ZW0tYmFkZ2Uge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGJvcmRlci1yYWRpdXM6IDEuNXJlbTtcbiAgZm9udC1zaXplOiAwLjhlbTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHBhZGRpbmctYmxvY2s6IDAuMjVlbTtcbiAgcGFkZGluZy1pbmxpbmU6IDAuNTVlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG4iLCJAdXNlIFwiQGNvcmUvc2Nzcy9iYXNlL21peGluc1wiO1xuXG4vLyDihLnvuI8gVGhpcyBpcyBjb21tb24gc3R5bGUgdGhhdCBuZWVkcyB0byBiZSBhcHBsaWVkIHRvIGJvdGggbmF2c1xuJW5hdiB7XG4gIGNvbG9yOiByZ2JhKHZhcigtLXYtdGhlbWUtb24tc3VyZmFjZSksIHZhcigtLXYtaGlnaC1lbXBoYXNpcy1vcGFjaXR5KSk7XG5cbiAgLm5hdi1pdGVtLXRpdGxlIHtcbiAgICBsZXR0ZXItc3BhY2luZzogMC4xNXB4O1xuICB9XG5cbiAgLm5hdi1zZWN0aW9uLXRpdGxlIHtcbiAgICBsZXR0ZXItc3BhY2luZzogMC40cHg7XG4gIH1cbn1cblxuLypcbiAgICBBY3RpdmUgbmF2IGxpbmsgc3R5bGVzIGZvciBob3Jpem9udGFsICYgdmVydGljYWwgbmF2XG5cbiAgICBGb3IgaG9yaXpvbnRhbCBuYXYgaXQgd2lsbCBiZSBvbmx5IGFwcGxpZWQgdG8gdG9wIGxldmVsIG5hdiBpdGVtc1xuICAgIEZvciB2ZXJ0aWNhbCBuYXYgaXQgd2lsbCBiZSBvbmx5IGFwcGxpZWQgdG8gbmF2IGxpbmtzIChub3QgbmF2IGdyb3VwcylcbiovXG4lbmF2LWxpbmstYWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKHZhcigtLXYtZ2xvYmFsLXRoZW1lLXByaW1hcnkpKTtcbiAgY29sb3I6IHJnYih2YXIoLS12LXRoZW1lLW9uLXByaW1hcnkpKTtcblxuICBAaW5jbHVkZSBtaXhpbnMuZWxldmF0aW9uKDMpO1xufVxuXG4lbmF2LWxpbmsge1xuICBhIHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgfVxufVxuIiwiJWxheW91dC1uYXZiYXIge1xuICBjb2xvcjogcmdiYSh2YXIoLS12LXRoZW1lLW9uLXN1cmZhY2UpLCB2YXIoLS12LWhpZ2gtZW1waGFzaXMtb3BhY2l0eSkpO1xufVxuIiwiJWJsdXJyeS1iZyB7XG4gIC8qIHN0eWxlbGludC1kaXNhYmxlIHByb3BlcnR5LW5vLXZlbmRvci1wcmVmaXggKi9cbiAgLXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6IGJsdXIoNnB4KTtcbiAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDZweCk7XG4gIC8qIHN0eWxlbGludC1lbmFibGUgKi9cbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKHZhcigtLXYtdGhlbWUtc3VyZmFjZSksIDAuOSk7XG59XG4iLCJAdXNlIFwiQGNvbmZpZ3VyZWQtdmFyaWFibGVzXCIgYXMgdmFyaWFibGVzO1xuQHVzZSBcIm1pc2NcIjtcbkB1c2UgXCJAY29yZS9zY3NzL2Jhc2UvbWl4aW5zXCI7XG5cbiVkZWZhdWx0LWxheW91dC12ZXJ0aWNhbC1uYXYtc2Nyb2xsZWQtc3RpY2t5LWVsZXZhdGVkLW5hdiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYih2YXIoLS12LXRoZW1lLXN1cmZhY2UpKTtcbn1cblxuJWRlZmF1bHQtbGF5b3V0LXZlcnRpY2FsLW5hdi1mbG9hdGluZy1uYXZiYXItYW5kLXN0aWNreS1lbGV2YXRlZC1uYXZiYXItc2Nyb2xsZWQge1xuICBAaW5jbHVkZSBtaXhpbnMuZWxldmF0aW9uKHZhcmlhYmxlcy4kdmVydGljYWwtbmF2LW5hdmJhci1lbGV2YXRpb24pO1xuXG4gIC8vIElmIG5hdmJhciBpcyBjb250YWluZWQgPT4gU3F1ZWV6ZSBuYXZiYXIgY29udGVudCBvbiBzY3JvbGxcbiAgQGlmIHZhcmlhYmxlcy4kbGF5b3V0LXZlcnRpY2FsLW5hdi1uYXZiYXItaXMtY29udGFpbmVkIHtcbiAgICBwYWRkaW5nLWlubGluZTogMS4ycmVtO1xuICB9XG59XG5cbiVkZWZhdWx0LWxheW91dC12ZXJ0aWNhbC1uYXYtZmxvYXRpbmctbmF2YmFyLW92ZXJsYXkge1xuICBpc29sYXRpb246IGlzb2xhdGU7XG5cbiAgJjo6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiAtMTtcbiAgICAvKiBzdHlsZWxpbnQtZGlzYWJsZSBwcm9wZXJ0eS1uby12ZW5kb3ItcHJlZml4ICovXG4gICAgLXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6IGJsdXIoMTBweCk7XG4gICAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDEwcHgpO1xuICAgIC8qIHN0eWxlbGludC1lbmFibGUgKi9cbiAgICBiYWNrZ3JvdW5kOlxuICAgICAgbGluZWFyLWdyYWRpZW50KFxuICAgICAgICAxODBkZWcsXG4gICAgICAgIHJnYmEodmFyKC0tdi10aGVtZS1iYWNrZ3JvdW5kKSwgNzAlKSA0NCUsXG4gICAgICAgIHJnYmEodmFyKC0tdi10aGVtZS1iYWNrZ3JvdW5kKSwgNDMlKSA3MyUsXG4gICAgICAgIHJnYmEodmFyKC0tdi10aGVtZS1iYWNrZ3JvdW5kKSwgMCUpXG4gICAgICApO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQ7XG4gICAgYmxvY2stc2l6ZTogY2FsYyh2YXJpYWJsZXMuJGxheW91dC12ZXJ0aWNhbC1uYXYtbmF2YmFyLWhlaWdodCArIHZhcmlhYmxlcy4kdmVydGljYWwtbmF2LWZsb2F0aW5nLW5hdmJhci10b3AgKyAwLjVyZW0pO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgaW5zZXQtYmxvY2stc3RhcnQ6IC0odmFyaWFibGVzLiR2ZXJ0aWNhbC1uYXYtZmxvYXRpbmctbmF2YmFyLXRvcCk7XG4gICAgaW5zZXQtaW5saW5lOiAwIDA7XG4gICAgLyogc3R5bGVsaW50LWRpc2FibGUgcHJvcGVydHktbm8tdmVuZG9yLXByZWZpeCAqL1xuICAgIC13ZWJraXQtbWFzazogbGluZWFyLWdyYWRpZW50KGJsYWNrLCBibGFjayAxOCUsIHRyYW5zcGFyZW50IDEwMCUpO1xuICAgIG1hc2s6IGxpbmVhci1ncmFkaWVudChibGFjaywgYmxhY2sgMTglLCB0cmFuc3BhcmVudCAxMDAlKTtcbiAgICAvKiBzdHlsZWxpbnQtZW5hYmxlICovXG4gIH1cbn1cbiIsIkB1c2UgXCJAY29uZmlndXJlZC12YXJpYWJsZXNcIiBhcyB2YXJpYWJsZXM7XG5AdXNlIFwibWlzY1wiO1xuQHVzZSBcIkBjb3JlL3Njc3MvYmFzZS9taXhpbnNcIjtcblxuJWRlZmF1bHQtbGF5b3V0LWhvcml6b250YWwtbmF2LW5hdmJhci1hbmQtbmF2LWNvbnRhaW5lciB7XG4gIEBpbmNsdWRlIG1peGlucy5lbGV2YXRpb24oMyk7XG5cbiAgLy8g4oS577iPIDEwMDAgaXMgdi13aW5kb3cgei1pbmRleFxuICB6LWluZGV4OiAxMDAxO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IodmFyKC0tdi10aGVtZS1zdXJmYWNlKSk7XG5cbiAgJi5oZWFkZXItYmx1ciB7XG4gICAgQGV4dGVuZCAlYmx1cnJ5LWJnO1xuICB9XG59XG5cbiVkZWZhdWx0LWxheW91dC1ob3Jpem9udGFsLW5hdi1uYXZiYXIge1xuICBib3JkZXItYmxvY2stZW5kOiAxcHggc29saWQgcmdiYSh2YXIoLS12LWJvcmRlci1jb2xvciksIHZhcigtLXYtYm9yZGVyLW9wYWNpdHkpKTtcbn1cblxuJWRlZmF1bHQtbGF5b3V0LWhvcml6b250YWwtbmF2LW5hdiB7XG4gIHBhZGRpbmctYmxvY2s6IHZhcmlhYmxlcy4kaG9yaXpvbnRhbC1uYXYtcGFkZGluZztcbn1cblxuJWRlZmF1bHQtbGF5b3V0LWhvcml6b250YWwtbmF2LW5hdi1pdGVtcy1saXN0IHtcbiAgZ2FwOiB2YXJpYWJsZXMuJGhvcml6b250YWwtbmF2LXRvcC1sZXZlbC1pdGVtcy1nYXA7XG59XG4iLCIvLyDihLnvuI8gVGhpcyBpcyBjb21tb24gc3R5bGUgdGhhdCBuZWVkcyB0byBiZSBhcHBsaWVkIHRvIGJvdGggbmF2c1xuJW5hdiB7XG4gIGNvbG9yOiByZ2JhKHZhcigtLXYtdGhlbWUtb24tc3VyZmFjZSksIHZhcigtLXYtbWVkaXVtLWVtcGhhc2lzLW9wYWNpdHkpKTtcblxuICAubmF2LWl0ZW0tdGl0bGUge1xuICAgIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XG4gIH1cbn1cblxuLypcbiAgICBBY3RpdmUgbmF2IGxpbmsgc3R5bGVzIGZvciBob3Jpem9udGFsICYgdmVydGljYWwgbmF2XG5cbiAgICBGb3IgaG9yaXpvbnRhbCBuYXYgaXQgd2lsbCBiZSBvbmx5IGFwcGxpZWQgdG8gdG9wIGxldmVsIG5hdiBpdGVtc1xuICAgIEZvciB2ZXJ0aWNhbCBuYXYgaXQgd2lsbCBiZSBvbmx5IGFwcGxpZWQgdG8gbmF2IGxpbmtzIChub3QgbmF2IGdyb3VwcylcbiovXG4lbmF2LWxpbmstYWN0aXZlIHtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDI3MGRlZywgcmdiYSh2YXIoLS12LWdsb2JhbC10aGVtZS1wcmltYXJ5KSwgMC43KSAwJSwgcmdiKHZhcigtLXYtZ2xvYmFsLXRoZW1lLXByaW1hcnkpKSAxMDAlKSAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiAwIDJweCA2cHggcmdiYSh2YXIoLS12LWdsb2JhbC10aGVtZS1wcmltYXJ5KSwgMC4zKTtcblxuICBpIHtcbiAgICBjb2xvcjogcmdiKHZhcigtLXYtdGhlbWUtb24tcHJpbWFyeSkpICFpbXBvcnRhbnQ7XG4gIH1cblxuICBodG1sW2Rpcj1cInJ0bFwiXSAmLnJvdXRlci1saW5rLWV4YWN0LWFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KC0yNzBkZWcsIHJnYmEodmFyKC0tdi1nbG9iYWwtdGhlbWUtcHJpbWFyeSksIDAuNykgMCUsIHJnYih2YXIoLS12LWdsb2JhbC10aGVtZS1wcmltYXJ5KSkgMTAwJSkgIWltcG9ydGFudDtcbiAgfVxufVxuIiwiLy8gVmVydGljYWwgbmF2IGl0ZW0gYmFkZ2Ugc3R5bGVzXG5cbiVuYXYtaGVhZGVyLWFjdGlvbiB7XG4gIGZvbnQtc2l6ZTogMDtcbn1cblxuJXZlcnRpY2FsLW5hdi1pdGVtLWJhZGdlIHtcbiAgei1pbmRleDogMTtcbiAgZm9udC1zaXplOiAwLjgxMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjI1cmVtO1xuICBtYXJnaW4taW5saW5lLWVuZDogMC41cmVtO1xuICBwYWRkaW5nLWJsb2NrOiAwLjEyNXJlbTtcbiAgcGFkZGluZy1pbmxpbmU6IDAuNjI1cmVtO1xufVxuXG4vLyBUaGlzIGlzIHNhbWUgYXMgYCV2ZXJ0aWNhbC1uYXYtaXRlbWAgZXhjZXB0IHNlY3Rpb24gdGl0bGUgaXMgZXhjbHVkZWRcbiV2ZXJ0aWNhbC1uYXYtaXRlbS1pbnRlcmFjdGl2ZSB7XG4gIGJvcmRlci1yYWRpdXM6IDAuMzc1cmVtO1xuICBibG9jay1zaXplOiAyLjM3NXJlbTtcbiAgbWFyZ2luLWJsb2NrLWVuZDogMC4zNzVyZW07XG59XG5cbiV2ZXJ0aWNhbC1uYXYtaXRlbXMtaWNvbi1hZnRlci0ybmQtbGV2ZWwge1xuICBtYXJnaW4taW5saW5lOiAxNXB4IDAuODEyNXJlbTtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbn1cblxuLy8gU2VjdGlvbiB0aXRsZVxuLy8g4oS577iPIFNldHRpbmcgaGVpZ2h0IHdpbGwgcHJldmVudCBqZXJraW5nIHdoZW4gdGV4dCAmIGljb24gaXMgdG9nZ2xlZFxuJXZlcnRpY2FsLW5hdi1zZWN0aW9uLXRpdGxlIHtcbiAgYmxvY2stc2l6ZTogMS4yNXJlbTtcbiAgZm9udC1zaXplOiAwLjgxMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjEyNXJlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLy8g4oS577iPIEljb24gc3R5bGluZyBmb3IgaWNvbiBuZXN0ZWQgaW5zaWRlIGFub3RoZXIgbmF2IGl0ZW0gKDJuZCBsZXZlbClcbiV2ZXJ0aWNhbC1uYXYtaXRlbXMtbmVzdGVkLWljb24ge1xuICBjb2xvcjogcmdiYSh2YXIoLS12LXRoZW1lLW9uLXN1cmZhY2UpLCB2YXIoLS12LW1lZGl1bS1lbXBoYXNpcy1vcGFjaXR5KSk7XG59XG4iLCJAdXNlIFwiQGNvcmUvc2Nzcy9iYXNlL21peGluc1wiO1xuXG4vLyBIb3Jpem9udGFsIG5hdiBpdGVtIGljb24gKEluY2x1ZGluZyBzdWIgbmF2IGl0ZW1zKVxuJWhvcml6b250YWwtbmF2LWl0ZW0taWNvbiB7XG4gIGZvbnQtc2l6ZTogMS4zNzVyZW07XG59XG5cbi8vIEhvcml6b250YWwgbmF2IGl0ZW0gc3R5bGVzIChpbmNsdWRpbmcgbmVzdGVkKVxuJWhvcml6b250YWwtbmF2LWl0ZW0ge1xuICBwYWRkaW5nLWJsb2NrOiAwLjVyZW07XG4gIHBhZGRpbmctaW5saW5lOiAxcmVtO1xufVxuXG4lbmF2LWdyb3VwLWxhYmVsLWFuZC1uYXYtbGluay1zdHlsZSB7XG4gIGJvcmRlci1yYWRpdXM6IDAuMzc1cmVtO1xuICBtYXJnaW4tYmxvY2s6IDAuMTI1cmVtO1xuICBtYXJnaW4taW5saW5lOiAwLjVyZW07XG59XG5cbi8vIEFjdGl2ZSBzdHlsZXMgZm9yIHN1YiBuYXYgbGlua1xuJWhvcml6b250YWwtbmF2LXN1Yi1uYXYtbGluay1hY3RpdmUge1xuICBiYWNrZ3JvdW5kOiByZ2JhKHZhcigtLXYtdGhlbWUtcHJpbWFyeSksIDAuMDgpO1xuXG4gIC8vIFJlbW92ZSBiZWZvcmUgcHNldWRvIGVsZW1lbnQgZnJvbSBzdWIgbmF2IGxpbmsgdG8gYXZvaWQgb3ZlcmxhcHBpbmcgd2l0aCBhY3RpdmUgc3RhdGVcbiAgJjo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBub25lO1xuICB9XG59XG5cbi8vIFBvcHBlciBjb250ZW50IHN0eWxlc1xuJWhvcml6b250YWwtbmF2LXBvcHBlci1jb250ZW50IHtcbiAgQGluY2x1ZGUgbWl4aW5zLmVsZXZhdGlvbig4KTtcbn1cblxuLy8gVG9wIGxldmVsIGhvcml6b250YWwgbmF2IGl0ZW0gc3R5bGVzIChgYWAgdGFnICYgZ3JvdXAgbGFiZWwpXG4laG9yaXpvbnRhbC1uYXYtdG9wLWxldmVsLWl0ZW0ge1xuICBib3JkZXItcmFkaXVzOiAwLjM3NXJlbTtcbn1cblxuLy8gSG9yaXpvbnRhbCBuYXYgaXRlbSB0aXRsZVxuJWhvcml6b250YWwtbmF2LWl0ZW0tdGl0bGUge1xuICBsaW5lLWhlaWdodDogMS4zNzVyZW07XG59XG5cbiV0aGlyZC1sZXZlbC1uYXYtaXRlbS1pY29uIHtcbiAgbWFyZ2luLWlubGluZTogMCAwLjVyZW07XG59XG4iLCJAdXNlIFwiQGNvbmZpZ3VyZWQtdmFyaWFibGVzXCIgYXMgdmFyaWFibGVzO1xuXG4lZGVmYXVsdC1sYXlvdXQtdmVydGljYWwtbmF2LWZsb2F0aW5nLW5hdmJhci1hbmQtc3RpY2t5LWVsZXZhdGVkLW5hdmJhci1zY3JvbGxlZCB7XG4gIC8vIElmIG5hdmJhciBpcyBjb250YWluZWQgPT4gU3F1ZWV6ZSBuYXZiYXIgY29udGVudCBvbiBzY3JvbGxcbiAgQGlmIHZhcmlhYmxlcy4kbGF5b3V0LXZlcnRpY2FsLW5hdi1uYXZiYXItaXMtY29udGFpbmVkIHtcbiAgICBwYWRkaW5nLWlubGluZTogMS41cmVtO1xuICB9XG59XG4iLCIlZGVmYXVsdC1sYXlvdXQtaG9yaXpvbnRhbC1uYXYtbmF2YmFyLWFuZC1uYXYtY29udGFpbmVyIHtcbiAgYm94LXNoYWRvdzogMCAxcHggNHB4IDAgcmdiYSh2YXIoLS12LXNoYWRvdy1rZXktdW1icmEtY29sb3IpLCAwLjEpO1xuXG4gICYuaGVhZGVyLWJsdXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYih2YXIoLS12LXRoZW1lLXN1cmZhY2UpLCAwLjk2KTtcbiAgfVxufVxuIiwiJWJsdXJyeS1iZyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYih2YXIoLS12LXRoZW1lLXN1cmZhY2UpLCAwLjg4KTtcbn1cbiIsIkB1c2UgXCJAY29yZS9zY3NzL2Jhc2UvcGxhY2Vob2xkZXJzXCIgYXMgKjtcbkB1c2UgXCJAY29yZS9zY3NzL3RlbXBsYXRlL3BsYWNlaG9sZGVyc1wiIGFzICo7XG5AdXNlIFwiQGxheW91dHMvc3R5bGVzL21peGluc1wiIGFzIGxheW91dHNNaXhpbnM7XG5AdXNlIFwiQGNvbmZpZ3VyZWQtdmFyaWFibGVzXCIgYXMgdmFyaWFibGVzO1xuQHVzZSBcIkBjb3JlL3Njc3MvYmFzZS9taXhpbnNcIiBhcyBtaXhpbnM7XG5AdXNlIFwidnVldGlmeS9saWIvc3R5bGVzL3Rvb2xzL3N0YXRlc1wiIGFzIHZ1ZXRpZnlTdGF0ZXM7XG5cbi5sYXlvdXQtbmF2LXR5cGUtdmVydGljYWwge1xuICAvLyDwn5GJIExheW91dCBWZXJ0aWNhbCBuYXZcbiAgLmxheW91dC12ZXJ0aWNhbC1uYXYge1xuICAgICRzbC1sYXlvdXQtbmF2LXR5cGUtdmVydGljYWw6ICY7XG5cbiAgICBAZXh0ZW5kICVuYXY7XG5cbiAgICBAYXQtcm9vdCB7XG4gICAgICAvLyDihLnvuI8gQWRkIHN0eWxlcyBmb3IgY29sbGFwc2VkIHZlcnRpY2FsIG5hdlxuICAgICAgLmxheW91dC12ZXJ0aWNhbC1uYXYtY29sbGFwc2VkI3skc2wtbGF5b3V0LW5hdi10eXBlLXZlcnRpY2FsfS5ob3ZlcmVkIHtcbiAgICAgICAgQGluY2x1ZGUgbWl4aW5zLmVsZXZhdGlvbig2KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXJpYWJsZXMuJHZlcnRpY2FsLW5hdi1iYWNrZ3JvdW5kLWNvbG9yO1xuXG4gICAgLy8g8J+RiSBOYXYgaGVhZGVyXG4gICAgLm5hdi1oZWFkZXIge1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIHBhZGRpbmc6IHZhcmlhYmxlcy4kdmVydGljYWwtbmF2LWhlYWRlci1wYWRkaW5nO1xuICAgICAgbWFyZ2luLWlubGluZTogdmFyaWFibGVzLiR2ZXJ0aWNhbC1uYXYtaGVhZGVyLWlubGluZS1zcGFjaW5nO1xuICAgICAgbWluLWJsb2NrLXNpemU6IHZhcmlhYmxlcy4kdmVydGljYWwtbmF2LWhlYWRlci1oZWlnaHQ7XG5cbiAgICAgIC8vIFRFTVBMQVRFOiBDaGVjayBpZiB3ZSBuZWVkIHRvIG1vdmUgdGhpcyB0byBtYXN0ZXJcbiAgICAgIC5hcHAtbG9nbyB7XG4gICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4yNXMgZWFzZS1pbi1vdXQ7XG5cbiAgICAgICAgQGF0LXJvb3Qge1xuICAgICAgICAgIC8vIE1vdmUgbG9nbyBhIGJpdCB0byBhbGlnbiBjZW50ZXIgd2l0aCB0aGUgaWNvbnMgaW4gdmVydGljYWwgbmF2IG1pbmkgdmFyaWFudFxuICAgICAgICAgIC5sYXlvdXQtdmVydGljYWwtbmF2LWNvbGxhcHNlZCN7JHNsLWxheW91dC1uYXYtdHlwZS12ZXJ0aWNhbH06bm90KC5ob3ZlcmVkKSAubmF2LWhlYWRlciAuYXBwLWxvZ28ge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKHZhcmlhYmxlcy4kdmVydGljYWwtbmF2LWhlYWRlci1sb2dvLXRyYW5zbGF0ZS14LXdoZW4tdmVydGljYWwtbmF2LW1pbmkpO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBsYXlvdXRzTWl4aW5zLnJ0bCB7XG4gICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtKHZhcmlhYmxlcy4kdmVydGljYWwtbmF2LWhlYWRlci1sb2dvLXRyYW5zbGF0ZS14LXdoZW4tdmVydGljYWwtbmF2LW1pbmkpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLmhlYWRlci1hY3Rpb24ge1xuICAgICAgICBAZXh0ZW5kICVuYXYtaGVhZGVyLWFjdGlvbjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyDwn5GJIE5hdiBpdGVtcyBzaGFkb3dcbiAgICAudmVydGljYWwtbmF2LWl0ZW1zLXNoYWRvdyB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB6LWluZGV4OiAxO1xuICAgICAgYmFja2dyb3VuZDpcbiAgICAgICAgbGluZWFyLWdyYWRpZW50KFxuICAgICAgICAgIHJnYigje3ZhcmlhYmxlcy4kdmVydGljYWwtbmF2LWJhY2tncm91bmQtY29sb3ItcmdifSkgNSUsXG4gICAgICAgICAgcmdiYSgje3ZhcmlhYmxlcy4kdmVydGljYWwtbmF2LWJhY2tncm91bmQtY29sb3ItcmdifSwgNzUlKSA0NSUsXG4gICAgICAgICAgcmdiYSgje3ZhcmlhYmxlcy4kdmVydGljYWwtbmF2LWJhY2tncm91bmQtY29sb3ItcmdifSwgMjAlKSA4MCUsXG4gICAgICAgICAgdHJhbnNwYXJlbnRcbiAgICAgICAgKTtcbiAgICAgIGJsb2NrLXNpemU6IDU1cHg7XG4gICAgICBpbmxpbmUtc2l6ZTogMTAwJTtcbiAgICAgIGluc2V0LWJsb2NrLXN0YXJ0OiBjYWxjKCN7dmFyaWFibGVzLiR2ZXJ0aWNhbC1uYXYtaGVhZGVyLWhlaWdodH0gLSAycHgpO1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjE1cyBlYXNlLWluLW91dDtcbiAgICAgIHdpbGwtY2hhbmdlOiBvcGFjaXR5O1xuXG4gICAgICBAaW5jbHVkZSBsYXlvdXRzTWl4aW5zLnJ0bCB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg4cHgpO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuc2Nyb2xsZWQge1xuICAgICAgLnZlcnRpY2FsLW5hdi1pdGVtcy1zaGFkb3cge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIOKEue+4jyBTZXR0aW5nIHotaW5kZXggMSB3aWxsIG1ha2UgcGVyZmVjdCBzY3JvbGxiYXIgdGh1bWIgYXBwZWFyIG9uIHRvcCBvZiB2ZXJ0aWNhbCBuYXYgaXRlbXMgc2hhZG93O1xuICAgIC5wc19fcmFpbC15IHtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgfVxuXG4gICAgLy8g8J+RiSBOYXYgc2VjdGlvbiB0aXRsZVxuICAgIC5uYXYtc2VjdGlvbi10aXRsZSB7XG4gICAgICBAZXh0ZW5kICV2ZXJ0aWNhbC1uYXYtaXRlbTtcbiAgICAgIEBleHRlbmQgJXZlcnRpY2FsLW5hdi1zZWN0aW9uLXRpdGxlO1xuXG4gICAgICBtYXJnaW4tYmxvY2stZW5kOiB2YXJpYWJsZXMuJHZlcnRpY2FsLW5hdi1zZWN0aW9uLXRpdGxlLW1iO1xuXG4gICAgICAmOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgbWFyZ2luLWJsb2NrLXN0YXJ0OiB2YXJpYWJsZXMuJHZlcnRpY2FsLW5hdi1zZWN0aW9uLXRpdGxlLW10O1xuICAgICAgfVxuXG4gICAgICAucGxhY2Vob2xkZXItaWNvbiB7XG4gICAgICAgIG1hcmdpbi1pbmxpbmU6IGF1dG87XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gTmF2IGl0ZW0gYmFkZ2VcbiAgICAubmF2LWl0ZW0tYmFkZ2Uge1xuICAgICAgQGV4dGVuZCAldmVydGljYWwtbmF2LWl0ZW0tYmFkZ2U7XG4gICAgfVxuXG4gICAgLy8g8J+RiSBOYXYgZ3JvdXAgJiBMaW5rXG4gICAgLm5hdi1saW5rLFxuICAgIC5uYXYtZ3JvdXAge1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgPiA6Zmlyc3QtY2hpbGQge1xuICAgICAgICBAZXh0ZW5kICV2ZXJ0aWNhbC1uYXYtaXRlbTtcbiAgICAgICAgQGV4dGVuZCAldmVydGljYWwtbmF2LWl0ZW0taW50ZXJhY3RpdmU7XG4gICAgICB9XG5cbiAgICAgIC5uYXYtaXRlbS1pY29uIHtcbiAgICAgICAgQGV4dGVuZCAldmVydGljYWwtbmF2LWl0ZW1zLWljb247XG4gICAgICB9XG5cbiAgICAgICYuZGlzYWJsZWQge1xuICAgICAgICBvcGFjaXR5OiB2YXIoLS12LWRpc2FibGVkLW9wYWNpdHkpO1xuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgIH1cblxuICAgICAgYSB7XG4gICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8g8J+RiSBWZXJ0aWNhbCBuYXYgbGlua1xuICAgIC5uYXYtbGluayB7XG4gICAgICBAZXh0ZW5kICVuYXYtbGluaztcblxuICAgICAgPiAucm91dGVyLWxpbmstZXhhY3QtYWN0aXZlIHtcbiAgICAgICAgQGV4dGVuZCAlbmF2LWxpbmstYWN0aXZlO1xuICAgICAgfVxuXG4gICAgICA+IGEge1xuICAgICAgICAvLyBBZGRzIGJlZm9yZSBwc3VkbyBlbGVtZW50IHRvIHN0eWxlIGhvdmVyIHN0YXRlXG4gICAgICAgIEBpbmNsdWRlIG1peGlucy5iZWZvcmUtcHNldWRvO1xuXG4gICAgICAgIC8vIEFkZHMgdnVldGlmeSBzdGF0ZXNcblxuICAgICAgICAmOm5vdCgucm91dGVyLWxpbmstYWN0aXZlLCAucm91dGVyLWxpbmstZXhhY3QtYWN0aXZlKSB7XG4gICAgICAgICAgQGluY2x1ZGUgdnVldGlmeVN0YXRlcy5zdGF0ZXMoJGFjdGl2ZTogZmFsc2UpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8g8J+RiSBWZXJ0aWNhbCBuYXYgZ3JvdXBcbiAgICAubmF2LWdyb3VwIHtcbiAgICAgIC8vIFJlZHVjZSB0aGUgc2l6ZSBvZiBpY29uIGlmIGxpbmsvZ3JvdXAgaXMgaW5zaWRlIGdyb3VwXG4gICAgICAubmF2LWdyb3VwLFxuICAgICAgLm5hdi1saW5rIHtcbiAgICAgICAgLm5hdi1pdGVtLWljb24ge1xuICAgICAgICAgIEBleHRlbmQgJXZlcnRpY2FsLW5hdi1pdGVtcy1uZXN0ZWQtaWNvbjtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyBIaWRlIGljb25zIGFmdGVyIDJuZCBsZXZlbFxuICAgICAgJiAubmF2LWdyb3VwIHtcbiAgICAgICAgLm5hdi1saW5rLFxuICAgICAgICAubmF2LWdyb3VwIHtcbiAgICAgICAgICAubmF2LWl0ZW0taWNvbiB7XG4gICAgICAgICAgICBAZXh0ZW5kICV2ZXJ0aWNhbC1uYXYtaXRlbXMtaWNvbi1hZnRlci0ybmQtbGV2ZWw7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5uYXYtZ3JvdXAtYXJyb3cge1xuICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyaWFibGVzLiR2ZXJ0aWNhbC1uYXYtbmF2LWdyb3VwLWFycm93LXRyYW5zaXRpb24tZHVyYXRpb24gdmFyaWFibGVzLiR2ZXJ0aWNhbC1uYXYtbmF2LWdyb3VwLWFycm93LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uO1xuICAgICAgICB3aWxsLWNoYW5nZTogdHJhbnNmb3JtO1xuICAgICAgfVxuXG4gICAgICAvLyBSb3RhdGUgYXJyb3cgaWNvbiBpZiBncm91cCBpcyBvcGVuZWRcbiAgICAgICYub3BlbiB7XG4gICAgICAgID4gLm5hdi1ncm91cC1sYWJlbCAubmF2LWdyb3VwLWFycm93IHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZVooOTBkZWcpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIE5hdiBncm91cCBsYWJlbFxuICAgICAgPiA6Zmlyc3QtY2hpbGQge1xuICAgICAgICAvLyBBZGRzIGJlZm9yZSBwc3VkbyBlbGVtZW50IHRvIHN0eWxlIGhvdmVyIHN0YXRlXG4gICAgICAgIEBpbmNsdWRlIG1peGlucy5iZWZvcmUtcHNldWRvO1xuICAgICAgfVxuXG4gICAgICAmOm5vdCguYWN0aXZlLC5vcGVuKSA+IDpmaXJzdC1jaGlsZCB7XG4gICAgICAgIC8vIEFkZHMgdnVldGlmeSBzdGF0ZXNcbiAgICAgICAgQGluY2x1ZGUgdnVldGlmeVN0YXRlcy5zdGF0ZXMoJGFjdGl2ZTogZmFsc2UpO1xuICAgICAgfVxuXG4gICAgICAvLyBBY3RpdmUgJiBvcGVuIHN0YXRlcyBmb3IgbmF2IGdyb3VwIGxhYmVsXG4gICAgICAmLmFjdGl2ZSxcbiAgICAgICYub3BlbiB7XG4gICAgICAgID4gOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICBAZXh0ZW5kICV2ZXJ0aWNhbC1uYXYtZ3JvdXAtb3Blbi1hY3RpdmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gU0VDVElPTjogVHJhbnNpdGlvbnNcbi52ZXJ0aWNhbC1uYXYtc2VjdGlvbi10aXRsZS1lbnRlci1hY3RpdmUsXG4udmVydGljYWwtbmF2LXNlY3Rpb24tdGl0bGUtbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjFzIGVhc2UtaW4tb3V0LCB0cmFuc2Zvcm0gMC4xcyBlYXNlLWluLW91dDtcbn1cblxuLnZlcnRpY2FsLW5hdi1zZWN0aW9uLXRpdGxlLWVudGVyLWZyb20sXG4udmVydGljYWwtbmF2LXNlY3Rpb24tdGl0bGUtbGVhdmUtdG8ge1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTVweCk7XG5cbiAgQGluY2x1ZGUgbGF5b3V0c01peGlucy5ydGwge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTVweCk7XG4gIH1cbn1cblxuLnRyYW5zaXRpb24tc2xpZGUteC1lbnRlci1hY3RpdmUsXG4udHJhbnNpdGlvbi1zbGlkZS14LWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4xcyBlYXNlLWluLW91dCwgdHJhbnNmb3JtIDAuMTJzIGVhc2UtaW4tb3V0O1xufVxuXG4udHJhbnNpdGlvbi1zbGlkZS14LWVudGVyLWZyb20sXG4udHJhbnNpdGlvbi1zbGlkZS14LWxlYXZlLXRvIHtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xNXB4KTtcblxuICBAaW5jbHVkZSBsYXlvdXRzTWl4aW5zLnJ0bCB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDE1cHgpO1xuICB9XG59XG5cbi52ZXJ0aWNhbC1uYXYtYXBwLXRpdGxlLWVudGVyLWFjdGl2ZSxcbi52ZXJ0aWNhbC1uYXYtYXBwLXRpdGxlLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4xcyBlYXNlLWluLW91dCwgdHJhbnNmb3JtIDAuMTJzIGVhc2UtaW4tb3V0O1xufVxuXG4udmVydGljYWwtbmF2LWFwcC10aXRsZS1lbnRlci1mcm9tLFxuLnZlcnRpY2FsLW5hdi1hcHAtdGl0bGUtbGVhdmUtdG8ge1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTE1cHgpO1xuXG4gIEBpbmNsdWRlIGxheW91dHNNaXhpbnMucnRsIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTVweCk7XG4gIH1cbn1cblxuLy8gIVNFQ1RJT05cbiIsIkB1c2UgXCJwbGFjZWhvbGRlcnNcIjtcbkB1c2UgXCJAY29uZmlndXJlZC12YXJpYWJsZXNcIiBhcyB2YXJpYWJsZXM7XG5cbkBtaXhpbiBydGwge1xuICBAaWYgdmFyaWFibGVzLiRlbmFibGUtcnRsLXN0eWxlcyB7XG4gICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gYm94ZWQtY29udGVudCgkbmVzdC1zZWxlY3RvcjogZmFsc2UpIHtcbiAgJiB7XG4gICAgQGV4dGVuZCAlYm94ZWQtY29udGVudC1zcGFjaW5nO1xuXG4gICAgQGF0LXJvb3Qge1xuICAgICAgQGlmICRuZXN0LXNlbGVjdG9yID09IGZhbHNlIHtcbiAgICAgICAgLmxheW91dC1jb250ZW50LXdpZHRoLWJveGVkI3smfSB7XG4gICAgICAgICAgQGV4dGVuZCAlYm94ZWQtY29udGVudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIEBzdHlsaXN0aWMvaW5kZW50YXRpb25cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgLmxheW91dC1jb250ZW50LXdpZHRoLWJveGVkICYge1xuICAgICAgICAgIEBleHRlbmQgJWJveGVkLWNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkB1c2UgJ3Nhc3M6bWFwJ1xuQHVzZSAnc2FzczpzdHJpbmcnXG5AdXNlICcuLi9zZXR0aW5ncydcblxuQG1peGluIHN0YXRlcyAoJHNlbGVjdG9yOiAnJjo6YmVmb3JlJywgJGFjdGl2ZTogdHJ1ZSlcbiAgQGlmIHN0cmluZy5zbGljZShzdHJpbmcudW5xdW90ZSgkc2VsZWN0b3IpLCAxLCAxKSAhPSAnJidcbiAgICAkc2VsZWN0b3I6ICN7Jz4nfSAjeyRzZWxlY3Rvcn1cblxuICAmOmhvdmVyXG4gICAgI3skc2VsZWN0b3J9XG4gICAgICBvcGFjaXR5OiBjYWxjKCN7bWFwLmdldChzZXR0aW5ncy4kc3RhdGVzLCAnaG92ZXInKX0gKiB2YXIoLS12LXRoZW1lLW92ZXJsYXktbXVsdGlwbGllcikpXG5cbiAgJjpmb2N1cy12aXNpYmxlXG4gICAgI3skc2VsZWN0b3J9XG4gICAgICBvcGFjaXR5OiBjYWxjKCN7bWFwLmdldChzZXR0aW5ncy4kc3RhdGVzLCAnZm9jdXMnKX0gKiB2YXIoLS12LXRoZW1lLW92ZXJsYXktbXVsdGlwbGllcikpXG5cbiAgQHN1cHBvcnRzIG5vdCBzZWxlY3Rvcig6Zm9jdXMtdmlzaWJsZSlcbiAgICAmOmZvY3VzXG4gICAgICAjeyRzZWxlY3Rvcn1cbiAgICAgICAgb3BhY2l0eTogY2FsYygje21hcC5nZXQoc2V0dGluZ3MuJHN0YXRlcywgJ2ZvY3VzJyl9ICogdmFyKC0tdi10aGVtZS1vdmVybGF5LW11bHRpcGxpZXIpKVxuXG4gIEBpZiAoJGFjdGl2ZSlcbiAgICAmLS1hY3RpdmUsXG4gICAgJlthcmlhLWhhc3BvcHVwPVwibWVudVwiXVthcmlhLWV4cGFuZGVkPVwidHJ1ZVwiXVxuICAgICAgQGluY2x1ZGUgYWN0aXZlLXN0YXRlcygkc2VsZWN0b3IpXG5cbkBtaXhpbiBhY3RpdmUtc3RhdGVzICgkc2VsZWN0b3IsICRiYXNlOiBtYXAuZ2V0KHNldHRpbmdzLiRzdGF0ZXMsICdhY3RpdmF0ZWQnKSlcbiAgI3skc2VsZWN0b3J9XG4gICAgb3BhY2l0eTogY2FsYygjeyRiYXNlfSAqIHZhcigtLXYtdGhlbWUtb3ZlcmxheS1tdWx0aXBsaWVyKSlcblxuICAmOmhvdmVyXG4gICAgI3skc2VsZWN0b3J9XG4gICAgICBvcGFjaXR5OiBjYWxjKCgjeyRiYXNlfSArICN7bWFwLmdldChzZXR0aW5ncy4kc3RhdGVzLCAnaG92ZXInKX0pICogdmFyKC0tdi10aGVtZS1vdmVybGF5LW11bHRpcGxpZXIpKVxuXG4gICY6Zm9jdXMtdmlzaWJsZVxuICAgICN7JHNlbGVjdG9yfVxuICAgICAgb3BhY2l0eTogY2FsYygoI3skYmFzZX0gKyAje21hcC5nZXQoc2V0dGluZ3MuJHN0YXRlcywgJ2ZvY3VzJyl9KSAqIHZhcigtLXYtdGhlbWUtb3ZlcmxheS1tdWx0aXBsaWVyKSlcblxuICBAc3VwcG9ydHMgbm90IHNlbGVjdG9yKDpmb2N1cy12aXNpYmxlKVxuICAgICY6Zm9jdXNcbiAgICAgICN7JHNlbGVjdG9yfVxuICAgICAgICBvcGFjaXR5OiBjYWxjKCgjeyRiYXNlfSArICN7bWFwLmdldChzZXR0aW5ncy4kc3RhdGVzLCAnZm9jdXMnKX0pICogdmFyKC0tdi10aGVtZS1vdmVybGF5LW11bHRpcGxpZXIpKVxuIiwiQHVzZSBcIkBjb3JlL3Njc3MvYmFzZS9wbGFjZWhvbGRlcnNcIiBhcyAqO1xuQHVzZSBcIkBjb3JlL3Njc3MvdGVtcGxhdGUvcGxhY2Vob2xkZXJzXCIgYXMgKjtcbkB1c2UgXCJAY29uZmlndXJlZC12YXJpYWJsZXNcIiBhcyB2YXJpYWJsZXM7XG5AdXNlIFwiQGxheW91dHMvc3R5bGVzL21peGluc1wiIGFzIGxheW91dHNNaXhpbnM7XG5AdXNlIFwiQGNvcmUvc2Nzcy9iYXNlL21peGluc1wiO1xuQHVzZSBcInZ1ZXRpZnkvbGliL3N0eWxlcy90b29scy9zdGF0ZXNcIiBhcyB2dWV0aWZ5U3RhdGVzO1xuXG4ubGF5b3V0LWhvcml6b250YWwtbmF2IHtcbiAgQGV4dGVuZCAlbmF2O1xuXG4gIC8vIPCfkYkgSWNvbiBzdHlsZXNcbiAgLm5hdi1pdGVtLWljb24ge1xuICAgIEBleHRlbmQgJWhvcml6b250YWwtbmF2LWl0ZW0taWNvbjtcbiAgfVxuXG4gIC8vIPCfkYkgQ29tbW9uIHN0eWxlcyBmb3IgbmF2IGdyb3VwICYgbmF2IGxpbmtcbiAgLm5hdi1saW5rLFxuICAubmF2LWdyb3VwIHtcbiAgICAvLyDwn5GJIERpc2FibGVkIG5hdiBpdGVtc1xuICAgICYuZGlzYWJsZWQge1xuICAgICAgQGV4dGVuZCAlaG9yaXpvbnRhbC1uYXYtZGlzYWJsZWQ7XG4gICAgfVxuXG4gICAgLy8gU2V0IHdpZHRoIG9mIGlubmVyIG5hdiBncm91cCBhbmQgbGlua1xuICAgICYuc3ViLWl0ZW0ge1xuICAgICAgQGV4dGVuZCAlaG9yaXpvbnRhbC1uYXYtc3ViaXRlbTtcbiAgICB9XG4gIH1cblxuICAvLyBTRUNUSU9OIE5hdiBMaW5rXG4gIC5uYXYtbGluayB7XG4gICAgQGV4dGVuZCAlbmF2LWxpbms7XG5cbiAgICBhIHtcbiAgICAgIEBleHRlbmQgJWhvcml6b250YWwtbmF2LWl0ZW07XG5cbiAgICAgIC8vIEFkZHMgYmVmb3JlIHBzdWRvIGVsZW1lbnQgdG8gc3R5bGUgaG92ZXIgc3RhdGVcbiAgICAgIEBpbmNsdWRlIG1peGlucy5iZWZvcmUtcHNldWRvO1xuXG4gICAgICAvLyBBZGRzIHZ1ZXRpZnkgc3RhdGVzXG4gICAgICBAaW5jbHVkZSB2dWV0aWZ5U3RhdGVzLnN0YXRlcygkYWN0aXZlOiBmYWxzZSk7XG4gICAgfVxuXG4gICAgLy8g8J+RiSBUb3AgbGV2ZWwgbmF2IGxpbmtcbiAgICAmOm5vdCguc3ViLWl0ZW0pIHtcbiAgICAgIGEge1xuICAgICAgICBAZXh0ZW5kICVob3Jpem9udGFsLW5hdi10b3AtbGV2ZWwtaXRlbTtcblxuICAgICAgICAmLnJvdXRlci1saW5rLWFjdGl2ZSB7XG4gICAgICAgICAgQGV4dGVuZCAlbmF2LWxpbmstYWN0aXZlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8g8J+RiSBTdWIgbGlua1xuICAgICYuc3ViLWl0ZW0ge1xuICAgICAgYSB7XG4gICAgICAgICYucm91dGVyLWxpbmstYWN0aXZlIHtcbiAgICAgICAgICAvLyDihLnvuI8gV2Ugd2lsbCBub3QgdXNlIGFjdGl2ZSBzdHlsZXMgZnJvbSBtYXRlcmlhbCBoZXJlIGJlY2F1c2Ugd2Ugd2FudCB0byB1c2UgcHJpbWFyeSBjb2xvciBmb3IgYWN0aXZlIGxpbmtcbiAgICAgICAgICBAZXh0ZW5kICVob3Jpem9udGFsLW5hdi1zdWItbmF2LWxpbmstYWN0aXZlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gIVNFQ1RJT05cblxuICAvLyBTRUNUSU9OIE5hdiBHcm91cFxuICAubmF2LWdyb3VwIHtcbiAgICAucG9wcGVyLXRyaWdnZXJlciB7XG4gICAgICAubmF2LWdyb3VwLWxhYmVsIHtcbiAgICAgICAgQGV4dGVuZCAlaG9yaXpvbnRhbC1uYXYtaXRlbTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICA+IC5wb3BwZXItdHJpZ2dlcmVyID4gLm5hdi1ncm91cC1sYWJlbCB7XG4gICAgICAvLyBBZGRzIGJlZm9yZSBwc3VkbyBlbGVtZW50IHRvIHN0eWxlIGhvdmVyIHN0YXRlXG4gICAgICBAaW5jbHVkZSBtaXhpbnMuYmVmb3JlLXBzZXVkbztcblxuICAgICAgLy8gQWRkcyB2dWV0aWZ5IHN0YXRlc1xuICAgICAgQGluY2x1ZGUgdnVldGlmeVN0YXRlcy5zdGF0ZXMoJGFjdGl2ZTogZmFsc2UpO1xuICAgIH1cblxuICAgIC5wb3BwZXItY29udGVudCB7XG4gICAgICBAZXh0ZW5kICVob3Jpem9udGFsLW5hdi1wb3BwZXItY29udGVudC1oaWRkZW47XG4gICAgICBAZXh0ZW5kICVob3Jpem9udGFsLW5hdi1wb3BwZXItY29udGVudDtcblxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKHZhcigtLXYtdGhlbWUtc3VyZmFjZSkpO1xuXG4gICAgICAvLyBTZXQgbWF4LWhlaWdodCBmb3IgdGhlIHBvcHBlciBjb250ZW50XG4gICAgICA+IGRpdiB7XG4gICAgICAgIG1heC1ibG9jay1zaXplOiB2YXJpYWJsZXMuJGhvcml6b250YWwtbmF2LXBvcHBlci1jb250ZW50LW1heC1oZWlnaHQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8g8J+RiSBUb3AgbGV2ZWwgZ3JvdXBcbiAgICAmOm5vdCguc3ViLWl0ZW0pIHtcbiAgICAgID4gLnBvcHBlci10cmlnZ2VyZXIge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgLypcbiAgICAgICAgICDihLnvuI8gVGhlIEJyaWRnZVxuICAgICAgICAgIFRoaXMgYWZ0ZXIgcHNldWRvIHdpbGwgd29yayBhcyBicmlkZ2Ugd2hlbiB3ZSBoYXZlIHNwYWNlIGJldHdlZW4gcG9wcGVyIHRyaWdnZXJlciBhbmQgcG9wcGVyIGNvbnRlbnRcbiAgICAgICAgICBJbml0aWFsbHkgaXQgd2lsbCBoYXZlIHBvaW50ZXIgZXZlbnRzIG5vbmUgZm9yIG5vcm1hbCBiZWhhdmlvciBhbmQgb25jZSB0aGUgY29udGVudCBpcyBzaG93biBpdCB3aWxsXG4gICAgICAgICAgICB3b3JrIGFzIGJyaWRnZSBieSBzZXR0aW5nIHBvaW50ZXIgZXZlbnRzIHRvIGBhdXRvYFxuICAgICAgICAqL1xuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIGJsb2NrLXNpemU6IHZhcmlhYmxlcy4kaG9yaXpvbnRhbC1uYXYtcG9wcGVyLWNvbnRlbnQtdG9wO1xuICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgaW5saW5lLXNpemU6IDEwMCU7XG4gICAgICAgICAgaW5zZXQtYmxvY2stc3RhcnQ6IDEwMCU7XG4gICAgICAgICAgaW5zZXQtaW5saW5lLXN0YXJ0OiAwO1xuICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIEVuYWJsZSB0aGUgcHNldWRvIGJyaWRnZSB3aGVuIGNvbnRlbnQgaXMgc2hvd24gYnkgc2V0dGluZyBwb2ludGVyIGV2ZW50cyB0byBgYXV0b2BcbiAgICAgICYuc2hvdy1jb250ZW50ID4gLnBvcHBlci10cmlnZ2VyZXI6OmFmdGVyIHtcbiAgICAgICAgLypcbiAgICAgICAgICDihLnvuI8gV2UgaGF2ZSBhZGRlZCBgei1pbmRleDogMmAgYmVjYXVzZSB3aGVuIHRoZXJlIGlzIGhvcml6b250YWwgbmF2IGl0ZW0gYmVsb3cgdGhlIHBvcHBlciB0cmlnZ2VyIChncm91cClcbiAgICAgICAgICAgIHdpdGhvdXQgdGhpcyBzdHlsZSBuYXYgaXRlbSBiZWxvdyBwb3BwZXIgdHJpZ2dlciAoZ3JvdXApIGdldHMgZm9jdXMgaGVuY2UgY2xvc2VzIHRoZSBwb3BwZXIgY29udGVudFxuICAgICAgICAqL1xuICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgICAgIH1cblxuICAgICAgPiAucG9wcGVyLXRyaWdnZXJlciA+IC5uYXYtZ3JvdXAtbGFiZWwge1xuICAgICAgICBAZXh0ZW5kICVob3Jpem9udGFsLW5hdi10b3AtbGV2ZWwtaXRlbTtcbiAgICAgIH1cblxuICAgICAgJi5hY3RpdmUge1xuICAgICAgICA+IC5wb3BwZXItdHJpZ2dlcmVyID4gLm5hdi1ncm91cC1sYWJlbCB7XG4gICAgICAgICAgQGV4dGVuZCAlbmF2LWxpbmstYWN0aXZlO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIOKEue+4jyBBZGQgc3BhY2UgYmV0d2VlbiBwb3BwZXIgd3JhcHBlciAmIGNvbnRlbnRcbiAgICAgID4gLnBvcHBlci1jb250ZW50IHtcbiAgICAgICAgbWFyZ2luLWJsb2NrLXN0YXJ0OiB2YXJpYWJsZXMuJGhvcml6b250YWwtbmF2LXBvcHBlci1jb250ZW50LXRvcCAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIPCfkYkgU3ViIGdyb3VwXG4gICAgJi5zdWItaXRlbSB7XG4gICAgICAmLmFjdGl2ZSB7XG4gICAgICAgIEBpbmNsdWRlIG1peGlucy5zZWxlY3RlZC1zdGF0ZXMoXCI+IC5wb3BwZXItdHJpZ2dlcmVyID4gLm5hdi1ncm91cC1sYWJlbDo6YmVmb3JlXCIpO1xuICAgICAgfVxuXG4gICAgICAvLyBSZWR1Y2UgdGhlIGljb24ncyBzaXplIG9mIG5lc3RlZCBncm91cCdzIG5hdiBsaW5rcyAoVG9wIGxldmVsIGdyb3VwID4gU3ViIGdyb3VwID4gW05hdiBsaW5rc10pXG4gICAgICAuc3ViLWl0ZW0ge1xuICAgICAgICAubmF2LWl0ZW0taWNvbiB7XG4gICAgICAgICAgQGV4dGVuZCAldGhpcmQtbGV2ZWwtbmF2LWl0ZW0taWNvbjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5uYXYtZ3JvdXAtYXJyb3cge1xuICAgICAgZm9udC1zaXplOiB2YXJpYWJsZXMuJGhvcml6b250YWwtbmF2LWdyb3VwLWFycm93LWljb24tc2l6ZTtcblxuICAgICAgLypcbiAgICAgICAg4oS577iPIG1sLWF1dG8gd29uJ3QgbWF0dGVyIGluIHRvcCBsZXZlbCBncm91cCAoYmVjYXVzZSB3ZSBoYXZlbid0IHNwZWNpZmllZCBmaXhlZCB3aWR0aCBmb3IgdG9wIGxldmVsIGdyb3VwcylcbiAgICAgICAgYnV0IHdlIHdyb3RlIGdlbmVyYWxseSBiZWNhdXNlIHdlIGRvbid0IHdhbnQgdG8gYmVjb21lIHNvIHNwZWNpZmljXG4gICAgICAqL1xuICAgICAgbWFyZ2luLWlubGluZS1zdGFydDogYXV0bztcbiAgICB9XG5cbiAgICAmLnBvcHBlci1pbmxpbmUtZW5kIHtcbiAgICAgIC5uYXYtZ3JvdXAtYXJyb3cge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZVooMjcwZGVnKTtcblxuICAgICAgICBAaW5jbHVkZSBsYXlvdXRzTWl4aW5zLnJ0bCB7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGVaKDkwZGVnKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5uYXYtaXRlbS10aXRsZSB7XG4gICAgICBAZXh0ZW5kICVob3Jpem9udGFsLW5hdi1pdGVtLXRpdGxlO1xuICAgIH1cblxuICAgICYuc2hvdy1jb250ZW50IHtcbiAgICAgID4gLnBvcHBlci1jb250ZW50IHtcbiAgICAgICAgQGV4dGVuZCAlaG9yaXpvbnRhbC1uYXYtcG9wcGVyLWNvbnRlbnQtdmlzaWJsZTtcbiAgICAgIH1cblxuICAgICAgJjpub3QoLmFjdGl2ZSkge1xuICAgICAgICBAaW5jbHVkZSBtaXhpbnMuc2VsZWN0ZWQtc3RhdGVzKFwiPiAucG9wcGVyLXRyaWdnZXJlciA+IC5uYXYtZ3JvdXAtbGFiZWw6OmJlZm9yZVwiKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyAhU0VDVElPTlxufVxuIiwiQHVzZSBcIkBjb3JlL3Njc3MvYmFzZS9wbGFjZWhvbGRlcnNcIjtcbkB1c2UgXCJAY29yZS9zY3NzL2Jhc2UvdmFyaWFibGVzXCI7XG5cbi5sYXlvdXQtdmVydGljYWwtbmF2LFxuLmxheW91dC1ob3Jpem9udGFsLW5hdiB7XG4gIG9sLFxuICB1bCB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgfVxufVxuXG4ubGF5b3V0LW5hdmJhciB7XG4gIEBpZiB2YXJpYWJsZXMuJG5hdmJhci1oaWdoLWVtcGhhc2lzLXRleHQge1xuICAgIEBleHRlbmQgJWxheW91dC1uYXZiYXI7XG4gIH1cbn1cbiIsIi8vIOKEue+4jyBzY3JvbGxhYmxlLWNvbnRlbnQgYWxsb3dzIGNyZWF0aW5nIGZpeGVkIGhlYWRlciBhbmQgc2Nyb2xsYWJsZSBjb250ZW50IGZvciBWTmF2aWdhdGlvbkRyYXdlciAoVXNlZCB3aGVuIHBlcmZlY3Qgc2Nyb2xsYmFyIGlzIHVzZWQpXG4uc2Nyb2xsYWJsZS1jb250ZW50IHtcbiAgJi52LW5hdmlnYXRpb24tZHJhd2VyIHtcbiAgICAudi1uYXZpZ2F0aW9uLWRyYXdlcl9fY29udGVudCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgfVxuICB9XG59XG5cbi8vIOKEue+4jyBhZGRpbmcgc3R5bGluZyBmb3IgY29kZSB0YWdcbmNvZGUge1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG4gIGNvbG9yOiByZ2IodmFyKC0tdi1jb2RlLWNvbG9yKSk7XG4gIGZvbnQtc2l6ZTogOTAlO1xuICBmb250LXdlaWdodDogNDAwO1xuICBwYWRkaW5nLWJsb2NrOiAwLjJlbTtcbiAgcGFkZGluZy1pbmxpbmU6IDAuNGVtO1xufVxuIiwiQHVzZSBcIkBjb25maWd1cmVkLXZhcmlhYmxlc1wiIGFzIHZhcmlhYmxlcztcbkB1c2UgXCJAY29yZS9zY3NzL2Jhc2UvcGxhY2Vob2xkZXJzXCIgYXMgKjtcbkB1c2UgXCJAY29yZS9zY3NzL3RlbXBsYXRlL3BsYWNlaG9sZGVyc1wiIGFzICo7XG5AdXNlIFwibWlzY1wiO1xuQHVzZSBcIkBjb3JlL3Njc3MvYmFzZS9taXhpbnNcIjtcblxuJGhlYWRlcjogXCIubGF5b3V0LW5hdmJhclwiO1xuXG5AaWYgdmFyaWFibGVzLiRsYXlvdXQtdmVydGljYWwtbmF2LW5hdmJhci1pcy1jb250YWluZWQge1xuICAkaGVhZGVyOiBcIi5sYXlvdXQtbmF2YmFyIC5uYXZiYXItY29udGVudC1jb250YWluZXJcIjtcbn1cblxuLmxheW91dC13cmFwcGVyLmxheW91dC1uYXYtdHlwZS12ZXJ0aWNhbCB7XG4gIC8vIFNFQ1RJT04gIExheW91dCBOYXZiYXJcbiAgLy8g8J+RiSBFbGV2YXRlZCBuYXZiYXJcbiAgQGlmIHZhcmlhYmxlcy4kdmVydGljYWwtbmF2LW5hdmJhci1zdHlsZSA9PSBcImVsZXZhdGVkXCIge1xuICAgIC8vIEFkZCB0cmFuc2l0aW9uXG4gICAgI3skaGVhZGVyfSB7XG4gICAgICB0cmFuc2l0aW9uOiBwYWRkaW5nIDAuMnMgZWFzZSwgYmFja2dyb3VuZC1jb2xvciAwLjE4cyBlYXNlO1xuICAgIH1cblxuICAgIC8vIElmIG5hdmJhciBpcyBjb250YWluZWQgPT4gQWRkIGJvcmRlciByYWRpdXMgdG8gaGVhZGVyXG4gICAgQGlmIHZhcmlhYmxlcy4kbGF5b3V0LXZlcnRpY2FsLW5hdi1uYXZiYXItaXMtY29udGFpbmVkIHtcbiAgICAgICN7JGhlYWRlcn0ge1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwIDAgdmFyaWFibGVzLiRkZWZhdWx0LWxheW91dC13aXRoLXZlcnRpY2FsLW5hdi1uYXZiYXItZm9vdGVyLXJvdW5kbmVzcyB2YXJpYWJsZXMuJGRlZmF1bHQtbGF5b3V0LXdpdGgtdmVydGljYWwtbmF2LW5hdmJhci1mb290ZXItcm91bmRuZXNzO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFNjcm9sbGVkIHN0eWxlcyBmb3Igc3RpY2t5IG5hdmJhclxuICAgIEBhdC1yb290IHtcbiAgICAgIC8qIOKEue+4jyBUaGlzIGh0bWwgc2VsZWN0b3Igd2l0aCBub3Qgc2VsZWN0b3IgaXMgcmVxdWlyZWQgd2hlbjpcbiAgICAgICAgZGlhbG9nIGlzIG9wZW5lZCBhbmQgd2luZG93IGRvbid0IGhhdmUgYW55IHNjcm9sbC4gVGhpcyByZW1vdmVzIHdpbmRvdy1zY3JvbGxlZCBjbGFzcyBmcm9tIGxheW91dCBhbmQgb3VyIHN0eWxlIGJyb2tlXG4gICAgKi9cbiAgICAgIGh0bWwudi1vdmVybGF5LXNjcm9sbC1ibG9ja2VkOm5vdChbc3R5bGUqPVwiLS12LWJvZHktc2Nyb2xsLXk6IDBweDtcIl0pIC5sYXlvdXQtbmF2YmFyLXN0aWNreSxcbiAgICAgICYud2luZG93LXNjcm9sbGVkLmxheW91dC1uYXZiYXItc3RpY2t5IHtcblxuICAgICAgICAjeyRoZWFkZXJ9IHtcbiAgICAgICAgICBAZXh0ZW5kICVkZWZhdWx0LWxheW91dC12ZXJ0aWNhbC1uYXYtc2Nyb2xsZWQtc3RpY2t5LWVsZXZhdGVkLW5hdjtcbiAgICAgICAgICBAZXh0ZW5kICVkZWZhdWx0LWxheW91dC12ZXJ0aWNhbC1uYXYtZmxvYXRpbmctbmF2YmFyLWFuZC1zdGlja3ktZWxldmF0ZWQtbmF2YmFyLXNjcm9sbGVkO1xuICAgICAgICB9XG5cbiAgICAgICAgLm5hdmJhci1ibHVyI3skaGVhZGVyfSB7XG4gICAgICAgICAgQGV4dGVuZCAlYmx1cnJ5LWJnO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8g8J+RiSBGbG9hdGluZyBuYXZiYXJcbiAgQGVsc2UgaWYgIHZhcmlhYmxlcy4kdmVydGljYWwtbmF2LW5hdmJhci1zdHlsZSA9PSBcImZsb2F0aW5nXCIge1xuICAgIC8vIOKEue+4jyBSZWdhcmRsZXNzIG9mIG5hdmJhciBpcyBjb250YWluZWQgb3Igbm90ID0+IEFwcGx5IG92ZXJsYXkgdG8gLmxheW91dC1uYXZiYXJcbiAgICAubGF5b3V0LW5hdmJhciB7XG4gICAgICAmLm5hdmJhci1ibHVyIHtcbiAgICAgICAgQGV4dGVuZCAlZGVmYXVsdC1sYXlvdXQtdmVydGljYWwtbmF2LWZsb2F0aW5nLW5hdmJhci1vdmVybGF5O1xuICAgICAgfVxuICAgIH1cblxuICAgICY6bm90KC5sYXlvdXQtbmF2YmFyLXN0aWNreSkge1xuICAgICAgI3skaGVhZGVyfSB7XG4gICAgICAgIG1hcmdpbi1ibG9jay1zdGFydDogdmFyaWFibGVzLiR2ZXJ0aWNhbC1uYXYtZmxvYXRpbmctbmF2YmFyLXRvcDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAjeyRoZWFkZXJ9IHtcbiAgICAgIEBpZiB2YXJpYWJsZXMuJGxheW91dC12ZXJ0aWNhbC1uYXYtbmF2YmFyLWlzLWNvbnRhaW5lZCB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcmlhYmxlcy4kZGVmYXVsdC1sYXlvdXQtd2l0aC12ZXJ0aWNhbC1uYXYtbmF2YmFyLWZvb3Rlci1yb3VuZG5lc3M7XG4gICAgICB9XG5cbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYih2YXIoLS12LXRoZW1lLXN1cmZhY2UpKTtcblxuICAgICAgQGV4dGVuZCAlZGVmYXVsdC1sYXlvdXQtdmVydGljYWwtbmF2LWZsb2F0aW5nLW5hdmJhci1hbmQtc3RpY2t5LWVsZXZhdGVkLW5hdmJhci1zY3JvbGxlZDtcbiAgICB9XG5cbiAgICAubmF2YmFyLWJsdXIjeyRoZWFkZXJ9IHtcbiAgICAgIEBleHRlbmQgJWJsdXJyeS1iZztcbiAgICB9XG4gIH1cblxuICAvLyAhU0VDVElPTlxuXG4gIC8vIPCfkYkgTGF5b3V0IGZvb3RlclxuICAubGF5b3V0LWZvb3RlciB7XG4gICAgJGVsZS1sYXlvdXQtZm9vdGVyOiAmO1xuXG4gICAgLmZvb3Rlci1jb250ZW50LWNvbnRhaW5lciB7XG4gICAgICBib3JkZXItcmFkaXVzOiB2YXJpYWJsZXMuJGRlZmF1bHQtbGF5b3V0LXdpdGgtdmVydGljYWwtbmF2LW5hdmJhci1mb290ZXItcm91bmRuZXNzIHZhcmlhYmxlcy4kZGVmYXVsdC1sYXlvdXQtd2l0aC12ZXJ0aWNhbC1uYXYtbmF2YmFyLWZvb3Rlci1yb3VuZG5lc3MgMCAwO1xuXG4gICAgICAvLyBTdGlja3kgZm9vdGVyXG4gICAgICBAYXQtcm9vdCB7XG4gICAgICAgIC8vIOKEue+4jyAubGF5b3V0LWZvb3Rlci1zdGlja3kjeyRlbGUtbGF5b3V0LWZvb3Rlcn0gPT4gLmxheW91dC1mb290ZXItc3RpY2t5LmxheW91dC13cmFwcGVyLmxheW91dC1uYXYtdHlwZS12ZXJ0aWNhbCAubGF5b3V0LWZvb3RlclxuICAgICAgICAubGF5b3V0LWZvb3Rlci1zdGlja3kjeyRlbGUtbGF5b3V0LWZvb3Rlcn0ge1xuICAgICAgICAgIC5mb290ZXItY29udGVudC1jb250YWluZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKHZhcigtLXYtdGhlbWUtc3VyZmFjZSkpO1xuICAgICAgICAgICAgcGFkZGluZy1ibG9jazogMDtcbiAgICAgICAgICAgIHBhZGRpbmctaW5saW5lOiAxLjJyZW07XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1peGlucy5lbGV2YXRpb24oMyk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJAdXNlIFwiQGNvcmUvc2Nzcy9iYXNlL3BsYWNlaG9sZGVyc1wiIGFzICo7XG5AdXNlIFwiQGNvcmUvc2Nzcy90ZW1wbGF0ZS9wbGFjZWhvbGRlcnNcIiBhcyAqO1xuQHVzZSBcIkBjb3JlL3Njc3MvYmFzZS9taXhpbnNcIjtcblxuLmxheW91dC13cmFwcGVyLmxheW91dC1uYXYtdHlwZS1ob3Jpem9udGFsIHtcbiAgLmxheW91dC1uYXZiYXItYW5kLW5hdi1jb250YWluZXIge1xuICAgIEBleHRlbmQgJWRlZmF1bHQtbGF5b3V0LWhvcml6b250YWwtbmF2LW5hdmJhci1hbmQtbmF2LWNvbnRhaW5lcjtcbiAgfVxuXG4gIC8vIPCfkYkgTmF2YmFyXG4gIC5sYXlvdXQtbmF2YmFyIHtcbiAgICBAZXh0ZW5kICVkZWZhdWx0LWxheW91dC1ob3Jpem9udGFsLW5hdi1uYXZiYXI7XG4gIH1cblxuICAvLyDwn5GJIExheW91dCBjb250ZW50IGNvbnRhaW5lclxuICAubmF2YmFyLWNvbnRlbnQtY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgYmxvY2stc2l6ZTogMTAwJTtcbiAgfVxuXG4gIC5sYXlvdXQtaG9yaXpvbnRhbC1uYXYge1xuICAgIEBleHRlbmQgJWRlZmF1bHQtbGF5b3V0LWhvcml6b250YWwtbmF2LW5hdjtcblxuICAgIC5uYXYtaXRlbXMge1xuICAgICAgQGV4dGVuZCAlZGVmYXVsdC1sYXlvdXQtaG9yaXpvbnRhbC1uYXYtbmF2LWl0ZW1zLWxpc3Q7XG4gICAgfVxuICB9XG5cbiAgLy8g8J+RiSBBcHAgZm9vdGVyXG4gIC5sYXlvdXQtZm9vdGVyIHtcbiAgICBAYXQtcm9vdCB7XG4gICAgICAubGF5b3V0LWZvb3Rlci1zdGlja3kjeyZ9IHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKHZhcigtLXYtdGhlbWUtc3VyZmFjZSkpO1xuXG4gICAgICAgIEBpbmNsdWRlIG1peGlucy5lbGV2YXRpb24oMyk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gVE9ETzogVXNlIFZ1ZXRpZnkgZ3JpZCBzYXNzIHZhcmlhYmxlIGhlcmVcbiAgLmxheW91dC1wYWdlLWNvbnRlbnQge1xuICAgIHBhZGRpbmctYmxvY2s6IDEuNXJlbTtcbiAgfVxufVxuIiwiQHVzZSBcIkBjb25maWd1cmVkLXZhcmlhYmxlc1wiIGFzIHZhcmlhYmxlcztcblxuLyog4oS577iPIFRoaXMgc3R5bGVzIGV4dGVuZHMgdGhlIGV4aXN0aW5nIGxheW91dCBwYWNrYWdlJ3Mgc3R5bGVzIGZvciBoYW5kbGluZyBjYXNlcyB0aGF0IGFyZW4ndCByZWxhdGVkIHRvIGxheW91dHMgcGFja2FnZSAqL1xuXG4vKlxuICDihLnvuI8gV2hlbiB3ZSB1c2Ugdi1sYXlvdXQgYXMgaW1tZWRpYXRlIGZpcnN0IGNoaWxkIG9mIGAucGFnZS1jb250ZW50LWNvbnRhaW5lcmAsIGl0IGFkZHMgZGlzcGxheTpmbGV4IGFuZCBwYWdlIGRvZXNuJ3QgZ2V0IGNvbnRhaW5lZCBoZWlnaHRcbiovXG4vLyAubGF5b3V0LXdyYXBwZXIubGF5b3V0LW5hdi10eXBlLXZlcnRpY2FsIHtcbi8vICAgJi5sYXlvdXQtY29udGVudC1oZWlnaHQtZml4ZWQge1xuLy8gICAgIC5wYWdlLWNvbnRlbnQtY29udGFpbmVyIHtcbi8vICAgICAgID4gLnYtbGF5b3V0OmZpcnN0LWNoaWxkID4gOm5vdCgudi1uYXZpZ2F0aW9uLWRyYXdlcik6Zmlyc3QtY2hpbGQge1xuLy8gICAgICAgICBmbGV4LWdyb3c6IDE7XG4vLyAgICAgICAgIGJsb2NrLXNpemU6IDEwMCU7XG4vLyAgICAgICB9XG4vLyAgICAgfVxuLy8gICB9XG4vLyB9XG4ubGF5b3V0LXdyYXBwZXIubGF5b3V0LW5hdi10eXBlLXZlcnRpY2FsIHtcbiAgJi5sYXlvdXQtY29udGVudC1oZWlnaHQtZml4ZWQge1xuICAgIC5wYWdlLWNvbnRlbnQtY29udGFpbmVyIHtcbiAgICAgID4gLnYtbGF5b3V0OmZpcnN0LWNoaWxkIHtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgbWluLWJsb2NrLXNpemU6IDEwMCU7XG5cbiAgICAgICAgPiAudi1tYWluIHtcbiAgICAgICAgICAvLyBvdmVyZmxvdy15OiBhdXRvO1xuXG4gICAgICAgICAgLnYtbWFpbl9fd3JhcCA+IDpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICBibG9jay1zaXplOiAxMDAlO1xuICAgICAgICAgICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8g4oS577iPIExldCBkaXYvdi1sYXlvdXQgdGFrZSBmdWxsIGhlaWdodC4gRS5nLiBFbWFpbCBBcHBcbi5sYXlvdXQtd3JhcHBlci5sYXlvdXQtbmF2LXR5cGUtaG9yaXpvbnRhbCB7XG4gICYubGF5b3V0LWNvbnRlbnQtaGVpZ2h0LWZpeGVkIHtcbiAgICA+IC5sYXlvdXQtcGFnZS1jb250ZW50IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgfVxuICB9XG59XG5cbi8vIPCfkYkgRmxvYXRpbmcgbmF2YmFyIHN0eWxlc1xuQGlmIHZhcmlhYmxlcy4kdmVydGljYWwtbmF2LW5hdmJhci1zdHlsZSA9PSBcImZsb2F0aW5nXCIge1xuICAvLyDihLnvuI8gQWRkIHNwYWNpbmcgYWJvdmUgbmF2YmFyIGlmIG5hdmJhciBpcyBmbG9hdGluZyAod2FzIGluICVsYXlvdXQtbmF2YmFyLXN0aWNreSBwbGFjZWhvbGRlcilcbiAgYm9keSAubGF5b3V0LXdyYXBwZXIubGF5b3V0LW5hdi10eXBlLXZlcnRpY2FsLmxheW91dC1uYXZiYXItc3RpY2t5IHtcbiAgICAubGF5b3V0LW5hdmJhciB7XG4gICAgICBpbnNldC1ibG9jay1zdGFydDogdmFyaWFibGVzLiR2ZXJ0aWNhbC1uYXYtZmxvYXRpbmctbmF2YmFyLXRvcDtcbiAgICB9XG5cbiAgICAvKlxuICAgICAg4oS577iPIElmIGl0J3MgZmxvYXRpbmcgbmF2YmFyXG4gICAgICBBZGQgYHZlcnRpY2FsLW5hdi1mbG9hdGluZy1uYXZiYXItdG9wYCBhcyBtYXJnaW4gdG9wIHRvIC5sYXlvdXQtcGFnZS1jb250ZW50XG4gICAgKi9cbiAgICAubGF5b3V0LXBhZ2UtY29udGVudCB7XG4gICAgICBtYXJnaW4tYmxvY2stc3RhcnQ6IHZhcmlhYmxlcy4kdmVydGljYWwtbmF2LWZsb2F0aW5nLW5hdmJhci10b3A7XG4gICAgfVxuICB9XG59XG4iLCJAdXNlIFwic2FzczptYXBcIjtcbkB1c2UgXCJzYXNzOmxpc3RcIjtcbkB1c2UgXCJAY29uZmlndXJlZC12YXJpYWJsZXNcIiBhcyB2YXJpYWJsZXM7XG5cbi8vIFRoYW5rczogaHR0cHM6Ly9jc3MtdHJpY2tzLmNvbS9zbmlwcGV0cy9zYXNzL2RlZXAtZ2V0c2V0LW1hcHMvXG5AZnVuY3Rpb24gbWFwLWRlZXAtZ2V0KCRtYXAsICRrZXlzLi4uKSB7XG4gIEBlYWNoICRrZXkgaW4gJGtleXMge1xuICAgICRtYXA6IG1hcC5nZXQoJG1hcCwgJGtleSk7XG4gIH1cblxuICBAcmV0dXJuICRtYXA7XG59XG5cbkBmdW5jdGlvbiBtYXAtZGVlcC1zZXQoJG1hcCwgJGtleXMsICR2YWx1ZSkge1xuICAkbWFwczogKCRtYXAsKTtcbiAgJHJlc3VsdDogbnVsbDtcblxuICAvLyBJZiB0aGUgbGFzdCBrZXkgaXMgYSBtYXAgYWxyZWFkeVxuICAvLyBXYXJuIHRoZSB1c2VyIHdlIHdpbGwgYmUgb3ZlcnJpZGluZyBpdCB3aXRoICR2YWx1ZVxuICBAaWYgdHlwZS1vZihudGgoJGtleXMsIC0xKSkgPT0gXCJtYXBcIiB7XG4gICAgQHdhcm4gXCJUaGUgbGFzdCBrZXkgeW91IHNwZWNpZmllZCBpcyBhIG1hcDsgaXQgd2lsbCBiZSBvdmVycmlkZWQgd2l0aCBgI3skdmFsdWV9YC5cIjtcbiAgfVxuXG4gIC8vIElmICRrZXlzIGlzIGEgc2luZ2xlIGtleVxuICAvLyBKdXN0IG1lcmdlIGFuZCByZXR1cm5cbiAgQGlmIGxlbmd0aCgka2V5cykgPT0gMSB7XG4gICAgQHJldHVybiBtYXAtbWVyZ2UoJG1hcCwgKCRrZXlzOiAkdmFsdWUpKTtcbiAgfVxuXG4gIC8vIExvb3AgZnJvbSB0aGUgZmlyc3QgdG8gdGhlIHNlY29uZCB0byBsYXN0IGtleSBmcm9tICRrZXlzXG4gIC8vIFN0b3JlIHRoZSBhc3NvY2lhdGVkIG1hcCB0byB0aGlzIGtleSBpbiB0aGUgJG1hcHMgbGlzdFxuICAvLyBJZiB0aGUga2V5IGRvZXNuJ3QgZXhpc3QsIHRocm93IGFuIGVycm9yXG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggbGVuZ3RoKCRrZXlzKSAtIDEge1xuICAgICRjdXJyZW50LWtleTogbGlzdC5udGgoJGtleXMsICRpKTtcbiAgICAkY3VycmVudC1tYXA6IGxpc3QubnRoKCRtYXBzLCAtMSk7XG4gICAgJGN1cnJlbnQtZ2V0OiBtYXAuZ2V0KCRjdXJyZW50LW1hcCwgJGN1cnJlbnQta2V5KTtcblxuICAgIEBpZiBub3QgJGN1cnJlbnQtZ2V0IHtcbiAgICAgIEBlcnJvciBcIktleSBgI3ska2V5fWAgZG9lc24ndCBleGlzdCBhdCBjdXJyZW50IGxldmVsIGluIG1hcC5cIjtcbiAgICB9XG5cbiAgICAkbWFwczogbGlzdC5hcHBlbmQoJG1hcHMsICRjdXJyZW50LWdldCk7XG4gIH1cblxuICAvLyBMb29wIGZyb20gdGhlIGxhc3QgbWFwIHRvIHRoZSBmaXJzdCBvbmVcbiAgLy8gTWVyZ2UgaXQgd2l0aCB0aGUgcHJldmlvdXMgb25lXG4gIEBmb3IgJGkgZnJvbSBsZW5ndGgoJG1hcHMpIHRocm91Z2ggMSB7XG4gICAgJGN1cnJlbnQtbWFwOiBsaXN0Lm50aCgkbWFwcywgJGkpO1xuICAgICRjdXJyZW50LWtleTogbGlzdC5udGgoJGtleXMsICRpKTtcbiAgICAkY3VycmVudC12YWw6IGlmKCRpID09IGxpc3QubGVuZ3RoKCRtYXBzKSwgJHZhbHVlLCAkcmVzdWx0KTtcbiAgICAkcmVzdWx0OiBtYXAubWFwLW1lcmdlKCRjdXJyZW50LW1hcCwgKCRjdXJyZW50LWtleTogJGN1cnJlbnQtdmFsKSk7XG4gIH1cblxuICAvLyBSZXR1cm4gcmVzdWx0XG4gIEByZXR1cm4gJHJlc3VsdDtcbn1cblxuLy8gZm9udCBzaXplIHV0aWxpdHkgY2xhc3Nlc1xuQGVhY2ggJG5hbWUsICRzaXplIGluIHZhcmlhYmxlcy4kZm9udC1zaXplcyB7XG4gIC50ZXh0LSN7JG5hbWV9IHtcbiAgICBmb250LXNpemU6ICRzaXplO1xuICAgIGxpbmUtaGVpZ2h0OiBtYXAuZ2V0KHZhcmlhYmxlcy4kZm9udC1saW5lLWhlaWdodCwgJG5hbWUpO1xuICB9XG59XG5cbi8vIHRydW5jYXRlIHV0aWxpdHkgY2xhc3Ncbi50cnVuY2F0ZSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4vLyBnYXAgdXRpbGl0eSBjbGFzc1xuQGVhY2ggJG5hbWUsICRzaXplIGluIHZhcmlhYmxlcy4kZ2FwIHtcbiAgLmdhcC0jeyRuYW1lfSB7XG4gICAgZ2FwOiAkc2l6ZTtcbiAgfVxuXG4gIC5nYXAteC0jeyRuYW1lfSB7XG4gICAgY29sdW1uLWdhcDogJHNpemU7XG4gIH1cblxuICAuZ2FwLXktI3skbmFtZX0ge1xuICAgIHJvdy1nYXA6ICRzaXplO1xuICB9XG59XG5cbi5saXN0LW5vbmUge1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG59XG4iLCJAdXNlIFwic2FzczptYXBcIjtcbkB1c2UgXCJAY29yZS9zY3NzL2Jhc2UvbWl4aW5zXCI7XG5AdXNlIFwiQGNvbmZpZ3VyZWQtdmFyaWFibGVzXCIgYXMgdmFyaWFibGVzO1xuQHVzZSBcIi4uL3V0aWxzXCI7XG5cbiRoZWFkZXI6IFwiLmxheW91dC1uYXZiYXJcIjtcblxuQGlmIHZhcmlhYmxlcy4kbGF5b3V0LXZlcnRpY2FsLW5hdi1uYXZiYXItaXMtY29udGFpbmVkIHtcbiAgJGhlYWRlcjogXCIubGF5b3V0LW5hdmJhciAubmF2YmFyLWNvbnRlbnQtY29udGFpbmVyXCI7XG59XG5cbi5za2luLS1ib3JkZXJlZCB7XG4gIEBpbmNsdWRlIG1peGlucy5ib3JkZXJlZC1za2luKFwiLnYtY2FyZDpub3QoLnYtY2FyZC0tZmxhdClcIik7XG4gIEBpbmNsdWRlIG1peGlucy5ib3JkZXJlZC1za2luKFwiLnYtbWVudSAudi1vdmVybGF5X19jb250ZW50ID4gLnYtY2FyZCwgLnYtbWVudSAudi1vdmVybGF5X19jb250ZW50ID4gLnYtc2hlZXQsIC52LW1lbnUgLnYtb3ZlcmxheV9fY29udGVudCA+IC52LWxpc3RcIik7XG4gIEBpbmNsdWRlIG1peGlucy5ib3JkZXJlZC1za2luKFwiLnBvcHBlci1jb250ZW50XCIpO1xuXG4gIC8vIE5hdmJhclxuICAvLyAtLSBIb3Jpem9udGFsXG4gIEBpbmNsdWRlIG1peGlucy5ib3JkZXJlZC1za2luKFwiLmxheW91dC1uYXZiYXItYW5kLW5hdi1jb250YWluZXJcIiwgXCJib3JkZXItYm90dG9tXCIpO1xuXG4gIC8vIC0tIFZlcnRpY2FsXG4gIC8vIOKEue+4jyBXZSBoYXZlIGFkZGVkIGAubGF5b3V0LW5hdmJhci1zdGlja3lgIGFzIHdlbGwgaW4gc2VsZWN0b3IgYmVjYXVzZSB3ZSBkb24ndCB3YW50IHRvIGFkZCBib3JkZXJzIGlmIG5hdmJhciBpcyBzdGF0aWNcbiAgQGlmIHZhcmlhYmxlcy4kbGF5b3V0LXZlcnRpY2FsLW5hdi1uYXZiYXItaXMtY29udGFpbmVkIHtcbiAgICBAaW5jbHVkZSBtaXhpbnMuYm9yZGVyZWQtc2tpbihcIi5sYXlvdXQtbmF2LXR5cGUtdmVydGljYWwud2luZG93LXNjcm9sbGVkLmxheW91dC1uYXZiYXItc3RpY2t5ICN7JGhlYWRlcn1cIik7XG4gICAgLmxheW91dC1uYXYtdHlwZS12ZXJ0aWNhbC53aW5kb3ctc2Nyb2xsZWQgI3skaGVhZGVyfSB7XG4gICAgICBib3JkZXItYmxvY2stc3RhcnQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIEBzdHlsaXN0aWMvaW5kZW50YXRpb25cbiBAZWxzZSB7XG4gICAgQGluY2x1ZGUgbWl4aW5zLmJvcmRlcmVkLXNraW4oXCIubGF5b3V0LW5hdi10eXBlLXZlcnRpY2FsLndpbmRvdy1zY3JvbGxlZC5sYXlvdXQtbmF2YmFyLXN0aWNreSAjeyRoZWFkZXJ9XCIsIFwiYm9yZGVyLWJvdHRvbVwiKTtcbiAgfVxuXG4gIC8vIEZvb3RlclxuICAvLyAtLSBWZXJ0aWNhbFxuICBAaW5jbHVkZSBtaXhpbnMuYm9yZGVyZWQtc2tpbihcIi5sYXlvdXQtbmF2LXR5cGUtdmVydGljYWwubGF5b3V0LWZvb3Rlci1zdGlja3kgLmxheW91dC1mb290ZXIgLmZvb3Rlci1jb250ZW50LWNvbnRhaW5lclwiKTtcblxuICAubGF5b3V0LW5hdi10eXBlLXZlcnRpY2FsLmxheW91dC1mb290ZXItc3RpY2t5IC5sYXlvdXQtZm9vdGVyIC5mb290ZXItY29udGVudC1jb250YWluZXIge1xuICAgIGJvcmRlci1ibG9jay1lbmQ6IG5vbmU7XG4gIH1cblxuICAvLyAtLSBIb3Jpem9udGFsXG4gIEBpbmNsdWRlIG1peGlucy5ib3JkZXJlZC1za2luKFwiLmxheW91dC1uYXYtdHlwZS1ob3Jpem9udGFsLmxheW91dC1mb290ZXItc3RpY2t5IC5sYXlvdXQtZm9vdGVyXCIpO1xuXG4gIC5sYXlvdXQtbmF2LXR5cGUtaG9yaXpvbnRhbC5sYXlvdXQtZm9vdGVyLXN0aWNreSAubGF5b3V0LWZvb3RlciB7XG4gICAgYm9yZGVyLWJsb2NrLWVuZDogbm9uZTtcbiAgfVxuXG4gIC8vIFZlcnRpY2FsIE5hdlxuICAubGF5b3V0LXZlcnRpY2FsLW5hdiB7XG4gICAgYm9yZGVyLWlubGluZS1lbmQ6IHRoaW4gc29saWQgcmdiYSh2YXIoLS12LWJvcmRlci1jb2xvciksIHZhcigtLXYtYm9yZGVyLW9wYWNpdHkpKTtcbiAgfVxuXG4gIC8vIEV4cGFuc2lvbiBQYW5lbHNcbiAgLnYtZXhwYW5zaW9uLXBhbmVsczpub3QoLmN1c3RvbWl6ZWQtcGFuZWxzKSB7XG4gICAgLnYtZXhwYW5zaW9uLXBhbmVsX19zaGFkb3cge1xuICAgICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC52LWV4cGFuc2lvbi1wYW5lbCB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKHZhcigtLXYtYm9yZGVyLWNvbG9yKSwgdmFyKC0tdi1ib3JkZXItb3BhY2l0eSkpO1xuXG4gICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICBtYXJnaW4tYmxvY2stZW5kOiAtMXB4O1xuICAgICAgfVxuXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJAdXNlIFwiQGNvcmUvc2Nzcy9iYXNlL21peGluc1wiO1xuQHVzZSBcIkBsYXlvdXRzL3N0eWxlcy9wbGFjZWhvbGRlcnNcIjtcbkB1c2UgXCJAbGF5b3V0cy9zdHlsZXMvbWl4aW5zXCIgYXMgbGF5b3V0TWl4aW5zO1xuQHVzZSBcIkBjb25maWd1cmVkLXZhcmlhYmxlc1wiIGFzIHZhcmlhYmxlcztcbkB1c2UgXCJAc3R5bGVzL3ZhcmlhYmxlcy9fdnVldGlmeS5zY3NzXCIgYXMgdnVldGlmeTtcblxuLy8g8J+RiSBBdmF0YXIgZ3JvdXBcbi52LWF2YXRhci1ncm91cCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgPiAqIHtcbiAgICAmOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IC0wLjhyZW07XG4gICAgfVxuXG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMjVzIGVhc2UsIGJveC1zaGFkb3cgMC4xNXMgZWFzZTtcblxuICAgICY6aG92ZXIge1xuICAgICAgei1pbmRleDogMjtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNXB4KSBzY2FsZSgxLjA1KTtcblxuICAgICAgQGluY2x1ZGUgbWl4aW5zLmVsZXZhdGlvbigzKTtcbiAgICB9XG4gIH1cblxuICA+IC52LWF2YXRhciB7XG4gICAgYm9yZGVyOiAycHggc29saWQgcmdiKHZhcigtLXYtdGhlbWUtc3VyZmFjZSkpO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjE1cyBlYXNlO1xuICB9XG59XG5cbi8vIPCfkYkgQnV0dG9uIG91dGxpbmUgd2l0aCBkZWZhdWx0IGNvbG9yIGJvcmRlciBjb2xvclxuLnYtYWxlcnQtLXZhcmlhbnQtb3V0bGluZWQsXG4udi1hdmF0YXItLXZhcmlhbnQtb3V0bGluZWQsXG4udi1idG4udi1idG4tLXZhcmlhbnQtb3V0bGluZWQsXG4udi1jYXJkLS12YXJpYW50LW91dGxpbmVkLFxuLnYtY2hpcC0tdmFyaWFudC1vdXRsaW5lZCxcbi52LWxpc3QtaXRlbS0tdmFyaWFudC1vdXRsaW5lZCB7XG4gICY6bm90KFtjbGFzcyo9XCJ0ZXh0LVwiXSkge1xuICAgIGJvcmRlci1jb2xvcjogcmdiYSh2YXIoLS12LWJvcmRlci1jb2xvciksIHZhcigtLXYtYm9yZGVyLW9wYWNpdHkpKTtcbiAgfVxuXG4gICYudGV4dC1kZWZhdWx0IHtcbiAgICBib3JkZXItY29sb3I6IHJnYmEodmFyKC0tdi1ib3JkZXItY29sb3IpLCB2YXIoLS12LWJvcmRlci1vcGFjaXR5KSk7XG4gIH1cbn1cblxuLy8g8J+RiSBDdXN0b20gSW5wdXRcbi52LWxhYmVsLmN1c3RvbS1pbnB1dCB7XG4gIHBhZGRpbmc6IDFyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEodmFyKC0tdi1ib3JkZXItY29sb3IpLCB2YXIoLS12LWJvcmRlci1vcGFjaXR5KSk7XG4gIG9wYWNpdHk6IDE7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG5cbiAgKy52LWxhYmVsIHtcbiAgICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuICB9XG5cbiAgJjpob3ZlciB7XG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKHZhcigtLXYtYm9yZGVyLWNvbG9yKSwgMC4yNSk7XG4gIH1cblxuICAmLmFjdGl2ZSB7XG4gICAgYm9yZGVyLWNvbG9yOiByZ2IodmFyKC0tdi10aGVtZS1wcmltYXJ5KSk7XG5cbiAgICAudi1pY29uIHtcbiAgICAgIGNvbG9yOiByZ2IodmFyKC0tdi10aGVtZS1wcmltYXJ5KSkgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAmLmN1c3RvbS1jaGVja2JveCxcbiAgJi5jdXN0b20tcmFkaW8ge1xuICAgIC52LWlucHV0X19jb250cm9sIHtcbiAgICAgIGdyaWQtYXJlYTogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuLy8g8J+RiSBEYXRhdGFibGVcbi52LWRhdGEtdGFibGUtZm9vdGVyX19wYWdpbmF0aW9uIHtcbiAgQGluY2x1ZGUgbGF5b3V0TWl4aW5zLnJ0bCB7XG4gICAgLnYtYnRuIHtcbiAgICAgIC52LWljb24ge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBEaWFsb2cgcmVzcG9uc2l2ZSB3aWR0aFxuLnYtZGlhbG9nIHtcbiAgLy8gZGlhbG9nIGN1c3RvbSBjbG9zZSBidG5cbiAgLnYtZGlhbG9nLWNsb3NlLWJ0biB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IDE7XG4gICAgY29sb3I6IHJnYmEodmFyKC0tdi10aGVtZS1vbi1zdXJmYWNlKSwgdmFyKC0tdi1kaXNhYmxlZC1vcGFjaXR5KSkgIWltcG9ydGFudDtcbiAgICBpbnNldC1ibG9jay1zdGFydDogMC41cmVtO1xuICAgIGluc2V0LWlubGluZS1lbmQ6IDAuNXJlbTtcblxuICAgIC52LWJ0bl9fb3ZlcmxheSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuXG4gIC52LWNhcmQge1xuICAgIEBleHRlbmQgJXN0eWxlLXNjcm9sbC1iYXI7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDYwMHB4KSB7XG4gIC52LWRpYWxvZyB7XG4gICAgJi52LWRpYWxvZy1zbSxcbiAgICAmLnYtZGlhbG9nLWxnLFxuICAgICYudi1kaWFsb2cteGwge1xuICAgICAgLnYtb3ZlcmxheV9fY29udGVudCB7XG4gICAgICAgIGlubGluZS1zaXplOiA1NjVweCAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogOTYwcHgpIHtcbiAgLnYtZGlhbG9nIHtcbiAgICAmLnYtZGlhbG9nLWxnLFxuICAgICYudi1kaWFsb2cteGwge1xuICAgICAgLnYtb3ZlcmxheV9fY29udGVudCB7XG4gICAgICAgIGlubGluZS1zaXplOiA4NjVweCAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTI2NHB4KSB7XG4gIC52LWRpYWxvZy52LWRpYWxvZy14bCB7XG4gICAgLnYtb3ZlcmxheV9fY29udGVudCB7XG4gICAgICBpbmxpbmUtc2l6ZTogMTE2NXB4ICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vIPCfkYkgRXhwYW5zaW9uIHBhbmVsXG4udi1leHBhbnNpb24tcGFuZWxzLmN1c3RvbWl6ZWQtcGFuZWxzIHtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSh2YXIoLS12LWJvcmRlci1jb2xvciksIHZhcigtLXYtYm9yZGVyLW9wYWNpdHkpKTtcbiAgYm9yZGVyLXJhZGl1czogdnVldGlmeS4kYm9yZGVyLXJhZGl1cy1yb290O1xuXG4gIC52LWV4cGFuc2lvbi1wYW5lbC10aXRsZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKHZhcigtLXYtdGhlbWUtZXhwYW5zaW9uLXBhbmVsLXRleHQtY3VzdG9tLWJnKSk7XG4gICAgYm9yZGVyLWJsb2NrLWVuZDogMXB4IHNvbGlkIHJnYmEodmFyKC0tdi1ib3JkZXItY29sb3IpLCB2YXIoLS12LWJvcmRlci1vcGFjaXR5KSk7XG4gICAgbWFyZ2luLWJsb2NrLWVuZDogLTFweDtcbiAgfVxuXG4gIC52LWV4cGFuc2lvbi1wYW5lbC10ZXh0X193cmFwcGVyIHtcbiAgICBwYWRkaW5nOiAyMHB4O1xuICB9XG59XG5cbi8vIHYtdGFiIHdpdGggcGlsbCBzdXBwb3J0XG4udi10YWJzLnYtdGFicy1waWxsIHtcbiAgLnYtdGFiLnYtYnRuIHtcbiAgICBib3JkZXItcmFkaXVzOiA2cHggIWltcG9ydGFudDtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuXG4gICAgLnYtdGFiX19zbGlkZXIge1xuICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIH1cbiAgfVxufVxuXG4vLyBsb29wIGZvciBhbGwgY29sb3JzIGJnXG5AZWFjaCAkY29sb3ItbmFtZSBpbiB2YXJpYWJsZXMuJHRoZW1lLWNvbG9ycy1uYW1lIHtcbiAgYm9keSAudi10YWJzLnYtdGFicy1waWxsIHtcbiAgICAudi1zbGlkZS1ncm91cF9fY29udGVudCB7XG4gICAgICBnYXA6IDAuMjVyZW07XG4gICAgfVxuICAgIC52LXRhYi0tc2VsZWN0ZWQudGV4dC0jeyRjb2xvci1uYW1lfSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IodmFyKC0tdi10aGVtZS0jeyRjb2xvci1uYW1lfSkpO1xuICAgICAgY29sb3I6IHJnYih2YXIoLS12LXRoZW1lLW9uLSN7JGNvbG9yLW5hbWV9KSkgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cblxuLy8g4oS577iPIFdlIGFyZSBtYWtlIGV2ZW4gd2lkdGggb2YgYWxsIHYtdGltZWxpbmUgYm9keVxuLnYtdGltZWxpbmUtLXZlcnRpY2FsLnYtdGltZWxpbmUge1xuICAudi10aW1lbGluZS1pdGVtIHtcbiAgICAudi10aW1lbGluZS1pdGVtX19ib2R5IHtcbiAgICAgIGp1c3RpZnktc2VsZjogc3RyZXRjaCAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuXG4vLyDwn5GJIFN3aXRjaFxuLnYtc3dpdGNoIC52LXNlbGVjdGlvbi1jb250cm9sOm5vdCgudi1zZWxlY3Rpb24tY29udHJvbC0tZGlydHkpIC52LXN3aXRjaF9fdGh1bWIge1xuICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xufVxuIiwiQHVzZSBcIkBjb25maWd1cmVkLXZhcmlhYmxlc1wiIGFzIHZhcmlhYmxlcztcbkB1c2UgXCJAbGF5b3V0cy9zdHlsZXMvbWl4aW5zXCIgYXMgbGF5b3V0c01peGlucztcblxuLyog8J+RiSBEZW1vIHNwYWNlcnMgKi9cblxuLyogVE9ETzogVXNlIHZ1ZXRpZnkgU0NTUyB2YXJpYWJsZSBoZXJlOyAqL1xuJGNhcmQtc3BhY2VyLWNvbnRlbnQ6IDE2cHg7XG5cbi5kZW1vLXNwYWNlLXgge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG1hcmdpbi1ibG9jay1zdGFydDogLSRjYXJkLXNwYWNlci1jb250ZW50O1xuXG4gICYgPiAqIHtcbiAgICBtYXJnaW4tYmxvY2stc3RhcnQ6ICRjYXJkLXNwYWNlci1jb250ZW50O1xuICAgIG1hcmdpbi1pbmxpbmUtZW5kOiAkY2FyZC1zcGFjZXItY29udGVudDtcbiAgfVxufVxuXG4uZGVtby1zcGFjZS15IHtcbiAgJiA+ICoge1xuICAgIG1hcmdpbi1ibG9jay1lbmQ6ICRjYXJkLXNwYWNlci1jb250ZW50O1xuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1ibG9jay1lbmQ6IDA7XG4gICAgfVxuICB9XG59XG5cbi8vIPCfkYkgQ2FyZCBtYXRjaCBoZWlnaHRcbi5tYXRjaC1oZWlnaHQudi1yb3cge1xuICAudi1jYXJkIHtcbiAgICBibG9jay1zaXplOiAxMDAlO1xuICB9XG59XG5cbi8vIPCfkYkgV2hpdGVzcGFjZVxuLndoaXRlc3BhY2Utbm8td3JhcCB7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi8vIPCfkYkgQ29sb3JzXG5cbi8qXG4gIOKEue+4jyBWdWV0aWZ5IGlzIGFwcGx5aW5nIGAudGV4dC13aGl0ZWAgY2xhc3MgdG8gYmFkZ2UgaWNvbiBidXQgZG9uJ3QgcHJvdmlkZSBpdHMgc3R5bGVzXG4gIE1vcmVvdmVyLCB3ZSBhbHNvIHVzZSB0aGlzIGNsYXNzIGluIHNvbWUgcGxhY2VzXG5cbiAg4oS577iPIEluIHZ1ZXRpZnkgMiB3aXRoIGAkY29sb3ItcGFjazogZmFsc2VgIFNDU1MgdmFyIGNvbmZpZyB0aGlzIGNsYXNzIHdhcyBnZXR0aW5nIGdlbmVyYXRlZCBidXQgdGhpcyBpcyBub3QgdGhlIGNhc2UgaW4gdjNcblxuICDihLnvuI8gV2UgYWxzbyBuZWVkICFpbXBvcnRhbnQgdG8gZ2V0IGNvcnJlY3QgY29sb3IgaW4gYmFkZ2UgaWNvblxuKi9cbi50ZXh0LXdoaXRlIHtcbiAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbn1cblxuLnRleHQtd2hpdGUtdmFyaWFudCB7XG4gIGNvbG9yOiByZ2JhKDIxMSwgMjEyLCAyMjApO1xufVxuXG4udGV4dC1saW5rIHtcbiAgJjpub3QoOmhvdmVyKSB7XG4gICAgY29sb3I6IHJnYmEodmFyKC0tdi10aGVtZS1vbi1zdXJmYWNlKSwgdmFyKC0tdi1oaWdoLWVtcGhhc2lzLW9wYWNpdHkpKTtcbiAgfVxufVxuXG4udGV4dC1saW5rIHtcbiAgJjpub3QoOmhvdmVyKSB7XG4gICAgY29sb3I6IHJnYmEodmFyKC0tdi10aGVtZS1vbi1zdXJmYWNlKSwgdmFyKC0tdi1oaWdoLWVtcGhhc2lzLW9wYWNpdHkpKTtcbiAgfVxufVxuXG4uYmctdmFyLXRoZW1lLWJhY2tncm91bmQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKHZhcigtLXYtdGhlbWUtb24tYmFja2dyb3VuZCksIHZhcigtLXYtaG92ZXItb3BhY2l0eSkpICFpbXBvcnRhbnQ7XG59XG5cbi5iZy1nbG9iYWwtcHJpbWFyeSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYih2YXIoLS12LWdsb2JhbC10aGVtZS1wcmltYXJ5KSkgIWltcG9ydGFudDtcbiAgY29sb3I6IHJnYih2YXIoLS12LXRoZW1lLW9uLXByaW1hcnkpKSAhaW1wb3J0YW50O1xufVxuXG4vLyBbL15iZy1saWdodC0oXFx3KykkLywgKFssIHddKSA9PiAoeyBiYWNrZ3JvdW5kQ29sb3I6IGByZ2JhKHZhcigtLXYtdGhlbWUtJHt3fSksIHZhcigtLXYtYWN0aXZhdGVkLW9wYWNpdHkpKWAgfSldLFxuQGVhY2ggJGNvbG9yLW5hbWUgaW4gdmFyaWFibGVzLiR0aGVtZS1jb2xvcnMtbmFtZSB7XG4gIC5iZy1saWdodC0jeyRjb2xvci1uYW1lfSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSh2YXIoLS12LXRoZW1lLSN7JGNvbG9yLW5hbWV9KSwgdmFyKC0tdi1hY3RpdmF0ZWQtb3BhY2l0eSkpICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLy8g8J+RiSBjbGFtcCB0ZXh0XG4uY2xhbXAtdGV4dCB7XG4gIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xuICAtd2Via2l0LWxpbmUtY2xhbXA6IDI7XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xufVxuXG4uY3VzdG9tLWJhZGdlIHtcbiAgLnYtYmFkZ2VfX2JhZGdlIHtcbiAgICBib3JkZXItcmFkaXVzOiA2cHggIWltcG9ydGFudDtcbiAgICBibG9jay1zaXplOiAxMnB4ICFpbXBvcnRhbnQ7XG4gICAgaW5saW5lLXNpemU6IDEycHggIWltcG9ydGFudDtcbiAgfVxufVxuXG4ubGVhZGluZy1ub3JtYWwge1xuICBsaW5lLWhlaWdodDogbm9ybWFsICFpbXBvcnRhbnQ7XG59XG5cbi8vIPCfkYkgZm9yIHJ0bCBvbmx5XG4uZmxpcC1pbi1ydGwge1xuICBAaW5jbHVkZSBsYXlvdXRzTWl4aW5zLnJ0bCB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZVgoLTEpO1xuICB9XG59XG5cbi8vIPCfkYkgQ2Fyb3VzZWxcbi5jYXJvdXNlbC1kZWxpbWl0ZXItdG9wLWVuZCB7XG4gIC52LWNhcm91c2VsX19jb250cm9scyB7XG4gICAganVzdGlmeS1jb250ZW50OiBlbmQ7XG4gICAgYmxvY2stc2l6ZTogNDBweDtcbiAgICBpbnNldC1ibG9jay1zdGFydDogMDtcbiAgICBwYWRkaW5nLWlubGluZTogMXJlbTtcblxuICAgIC52LWJ0bi0taWNvbi52LWJ0bi0tZGVuc2l0eS1kZWZhdWx0IHtcbiAgICAgIGJsb2NrLXNpemU6IGNhbGModmFyKC0tdi1idG4taGVpZ2h0KSArIC0xMHB4KTtcbiAgICAgIGlubGluZS1zaXplOiBjYWxjKHZhcigtLXYtYnRuLWhlaWdodCkgKyAtOHB4KTtcblxuICAgICAgJi52LWJ0bi0tYWN0aXZlIHtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICB9XG5cbiAgICAgIC52LWJ0bl9fb3ZlcmxheSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICB9XG5cbiAgICAgIC52LXJpcHBsZV9fY29udGFpbmVyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cblxuICAgICAgLnYtYnRuX19jb250ZW50IHtcbiAgICAgICAgLnYtaWNvbiB7XG4gICAgICAgICAgYmxvY2stc2l6ZTogOHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgZm9udC1zaXplOiA4cHggIWltcG9ydGFudDtcbiAgICAgICAgICBpbmxpbmUtc2l6ZTogOHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAZWFjaCAkY29sb3ItbmFtZSBpbiB2YXJpYWJsZXMuJHRoZW1lLWNvbG9ycy1uYW1lIHtcblxuICAgICYuZG90cy1hY3RpdmUtI3skY29sb3ItbmFtZX0ge1xuICAgICAgLnYtY2Fyb3VzZWxfX2NvbnRyb2xzIHtcbiAgICAgICAgLnYtYnRuLS1hY3RpdmUge1xuICAgICAgICAgIGNvbG9yOiByZ2IodmFyKC0tdi10aGVtZS0jeyRjb2xvci1uYW1lfSkpICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLnYtdGltZWxpbmUtaXRlbSB7XG4gIC5hcHAtdGltZWxpbmUtdGl0bGUge1xuICAgIGNvbG9yOiByZ2JhKHZhcigtLXYtdGhlbWUtb24tc3VyZmFjZSksIHZhcigtLXYtaGlnaC1lbXBoYXNpcy1vcGFjaXR5KSk7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgbGluZS1oZWlnaHQ6IDEuMzEyNXJlbTtcbiAgfVxuXG4gIC5hcHAtdGltZWxpbmUtbWV0YSB7XG4gICAgY29sb3I6IHJnYmEodmFyKC0tdi10aGVtZS1vbi1zdXJmYWNlKSwgdmFyKC0tdi1kaXNhYmxlZC1vcGFjaXR5KSk7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICAgIGxpbmUtaGVpZ2h0OiAwLjg3NXJlbTtcbiAgfVxuXG4gIC5hcHAtdGltZWxpbmUtdGV4dCB7XG4gICAgY29sb3I6IHJnYmEodmFyKC0tdi10aGVtZS1vbi1zdXJmYWNlKSwgdmFyKC0tdi1tZWRpdW0tZW1waGFzaXMtb3BhY2l0eSkpO1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBsaW5lLWhlaWdodDogMS4yNXJlbTtcbiAgfVxuXG4gIC50aW1lbGluZS1jaGlwIHtcbiAgICBib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgYmFja2dyb3VuZDogcmdiYSh2YXIoLS12LXRoZW1lLW9uLXN1cmZhY2UpLCB2YXIoLS12LWhvdmVyLW9wYWNpdHkpKTtcbiAgICBwYWRkaW5nLWJsb2NrOiA1cHg7XG4gICAgcGFkZGluZy1pbmxpbmU6IDEwcHg7XG4gIH1cbn1cbiIsIi8vIPCfkYkgWm9vbSBmYWRlXG4uYXBwLXRyYW5zaXRpb24tem9vbS1mYWRlLWVudGVyLWFjdGl2ZSxcbi5hcHAtdHJhbnNpdGlvbi16b29tLWZhZGUtbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMzVzLCBvcGFjaXR5IDAuMjhzIGVhc2UtaW4tb3V0O1xufVxuXG4uYXBwLXRyYW5zaXRpb24tem9vbS1mYWRlLWVudGVyLWZyb20ge1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuOTgpO1xufVxuXG4uYXBwLXRyYW5zaXRpb24tem9vbS1mYWRlLWxlYXZlLXRvIHtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjAyKTtcbn1cblxuLy8g8J+RiSBGYWRlXG4uYXBwLXRyYW5zaXRpb24tZmFkZS1lbnRlci1hY3RpdmUsXG4uYXBwLXRyYW5zaXRpb24tZmFkZS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMjVzIGVhc2UtaW4tb3V0O1xufVxuXG4uYXBwLXRyYW5zaXRpb24tZmFkZS1lbnRlci1mcm9tLFxuLmFwcC10cmFuc2l0aW9uLWZhZGUtbGVhdmUtdG8ge1xuICBvcGFjaXR5OiAwO1xufVxuXG4vLyDwn5GJIEZhZGUgYm90dG9tXG4uYXBwLXRyYW5zaXRpb24tZmFkZS1ib3R0b20tZW50ZXItYWN0aXZlLFxuLmFwcC10cmFuc2l0aW9uLWZhZGUtYm90dG9tLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcywgdHJhbnNmb3JtIDAuMzVzO1xufVxuXG4uYXBwLXRyYW5zaXRpb24tZmFkZS1ib3R0b20tZW50ZXItZnJvbSB7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMC42cmVtKTtcbn1cblxuLmFwcC10cmFuc2l0aW9uLWZhZGUtYm90dG9tLWxlYXZlLXRvIHtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAuNnJlbSk7XG59XG5cbi8vIPCfkYkgU2xpZGUgZmFkZVxuLmFwcC10cmFuc2l0aW9uLXNsaWRlLWZhZGUtZW50ZXItYWN0aXZlLFxuLmFwcC10cmFuc2l0aW9uLXNsaWRlLWZhZGUtbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzLCB0cmFuc2Zvcm0gMC4zNXM7XG59XG5cbi5hcHAtdHJhbnNpdGlvbi1zbGlkZS1mYWRlLWVudGVyLWZyb20ge1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTAuNnJlbSk7XG59XG5cbi5hcHAtdHJhbnNpdGlvbi1zbGlkZS1mYWRlLWxlYXZlLXRvIHtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAuNnJlbSk7XG59XG5cbi8vIPCfkYkgWm9vbSBvdXRcbi5hcHAtdHJhbnNpdGlvbi16b29tLW91dC1lbnRlci1hY3RpdmUsXG4uYXBwLXRyYW5zaXRpb24tem9vbS1vdXQtbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjI2cyBlYXNlLWluLW91dCwgdHJhbnNmb3JtIDAuM3MgZWFzZS1vdXQ7XG59XG5cbi5hcHAtdHJhbnNpdGlvbi16b29tLW91dC1lbnRlci1mcm9tLFxuLmFwcC10cmFuc2l0aW9uLXpvb20tb3V0LWxlYXZlLXRvIHtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjk4KTtcbn1cbiIsIkB1c2UgXCJAY29uZmlndXJlZC12YXJpYWJsZXNcIiBhcyB2YXJpYWJsZXM7XG5cbi8vIOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlFxuLy8gKiDigJTigJTigJQgUGVyZmVjdCBTY3JvbGxiYXJcbi8vIOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlFxuXG5ib2R5LnYtdGhlbWUtLWRhcmsge1xuICAucHNfX3JhaWwteSxcbiAgLnBzX19yYWlsLXgge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHNfX3RodW1iLXkge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcmlhYmxlcy4kcGx1Z2luLXBzLXRodW1iLXktZGFyaztcbiAgfVxufVxuIiwiJHBzLXNpemU6IDAuMjVyZW07XG4kcHMtaG92ZXItc2l6ZTogMC4zNzVyZW07XG4kcHMtdHJhY2stc2l6ZTogMC41cmVtO1xuXG4ucHNfX3RodW1iLXkge1xuICBpbmxpbmUtc2l6ZTogJHBzLXNpemUgIWltcG9ydGFudDtcbiAgaW5zZXQtaW5saW5lLWVuZDogMC4wNjI1cmVtO1xufVxuXG4ucHNfX3RodW1iLXksXG4ucHNfX3RodW1iLXgge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IodmFyKC0tdi10aGVtZS1wZXJmZWN0LXNjcm9sbGJhci10aHVtYikpICFpbXBvcnRhbnQ7XG59XG5cbi5wc19fdGh1bWIteCB7XG4gIGJsb2NrLXNpemU6ICRwcy1zaXplICFpbXBvcnRhbnQ7XG59XG5cbi5wc19fcmFpbC14IHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgYmxvY2stc2l6ZTogJHBzLXRyYWNrLXNpemU7XG59XG5cbi5wc19fcmFpbC15IHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgaW5saW5lLXNpemU6ICRwcy10cmFjay1zaXplICFpbXBvcnRhbnQ7XG4gIGluc2V0LWlubGluZS1lbmQ6IDAuMTI1cmVtICFpbXBvcnRhbnQ7XG4gIGluc2V0LWlubGluZS1zdGFydDogdW5zZXQgIWltcG9ydGFudDtcbn1cblxuLnBzX19yYWlsLXkucHMtLWNsaWNraW5nIC5wc19fdGh1bWIteSxcbi5wc19fcmFpbC15OmZvY3VzID4gLnBzX190aHVtYi15LFxuLnBzX19yYWlsLXk6aG92ZXIgPiAucHNfX3RodW1iLXkge1xuICBpbmxpbmUtc2l6ZTogJHBzLWhvdmVyLXNpemUgIWltcG9ydGFudDtcbn1cbiIsIkB1c2UgXCJzYXNzOm1hcFwiO1xuXG4vLyBMYXlvdXRcbkB1c2UgXCJ2ZXJ0aWNhbC1uYXZcIjtcbkB1c2UgXCJob3Jpem9udGFsLW5hdlwiO1xuQHVzZSBcImRlZmF1bHQtbGF5b3V0XCI7XG5AdXNlIFwiZGVmYXVsdC1sYXlvdXQtdy12ZXJ0aWNhbC1uYXZcIjtcbkB1c2UgXCJkZWZhdWx0LWxheW91dC13LWhvcml6b250YWwtbmF2XCI7XG5cbi8vIExheW91dHMgcGFja2FnZVxuQHVzZSBcImxheW91dHNcIjtcblxuLy8gU2tpbnNcbkB1c2UgXCJza2luc1wiO1xuXG4vLyBDb21wb25lbnRzXG5AdXNlIFwiY29tcG9uZW50c1wiO1xuXG4vLyBVdGlsaXRpZXNcbkB1c2UgXCJ1dGlsaXRpZXNcIjtcblxuLy8gUm91dGUgVHJhbnNpdGlvbnNcbkB1c2UgXCJyb3V0ZS10cmFuc2l0aW9uc1wiO1xuXG4vLyBNaXNjXG5AdXNlIFwibWlzY1wiO1xuXG4vLyBEYXJrXG5AdXNlIFwiZGFya1wiO1xuXG4vLyBsaWJzXG5AdXNlIFwibGlicy9wZXJmZWN0LXNjcm9sbGJhclwiO1xuXG5hIHtcbiAgY29sb3I6IHJnYih2YXIoLS12LXRoZW1lLXByaW1hcnkpKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4vLyBWdWV0aWZ5IDMgZG9uJ3QgcHJvdmlkZSBtYXJnaW4gYm90dG9tIHN0eWxlIGxpa2UgdnVldGlmeSAyXG5wIHtcbiAgbWFyZ2luLWJsb2NrLWVuZDogMXJlbTtcbn1cblxuLy8gSWNvbmlmeSBpY29uIHNpemVcbnN2Zy5pY29uaWZ5IHtcbiAgYmxvY2stc2l6ZTogMWVtO1xuICBpbmxpbmUtc2l6ZTogMWVtO1xufVxuIiwiQHVzZSBcIkBjb25maWd1cmVkLXZhcmlhYmxlc1wiIGFzIHZhcmlhYmxlcztcbkB1c2UgXCJAY29yZS9zY3NzL2Jhc2UvbWl4aW5zXCI7XG5AdXNlIFwiQGxheW91dHMvc3R5bGVzL21peGluc1wiIGFzIGxheW91dHNNaXhpbnM7XG5cbi5sYXlvdXQtbmF2LXR5cGUtdmVydGljYWwge1xuICAvLyDwn5GJIExheW91dCBWZXJ0aWNhbCBuYXZcbiAgLmxheW91dC12ZXJ0aWNhbC1uYXYge1xuICAgIGNvbG9yOiByZ2JhKHZhcigtLXYtdGhlbWUtb24tYmFja2dyb3VuZCksIHZhcigtLXYtaGlnaC1lbXBoYXNpcy1vcGFjaXR5KSk7XG5cbiAgICBAaW5jbHVkZSBtaXhpbnMuZWxldmF0aW9uKDQpO1xuXG4gICAgLm5hdi1oZWFkZXIge1xuICAgICAgcGFkZGluZy1pbmxpbmUtZW5kOiAwLjEyNXJlbTtcblxuICAgICAgLmFwcC1sb2dvIHtcbiAgICAgICAgLmFwcC10aXRsZSB7XG4gICAgICAgICAgZm9udC1zaXplOiAyMnB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLm5hdi1pdGVtcyB7XG4gICAgICBwYWRkaW5nLWJsb2NrOiAwLjI1cmVtO1xuICAgIH1cblxuICAgIC8vIPCfkYkgTmF2IGdyb3VwICYgTGlua1xuICAgIC5uYXYtbGluayxcbiAgICAubmF2LWdyb3VwIHtcbiAgICAgIC8qIHNoYWRvdyBjdXQgaXNzdWUgZml4ICovXG4gICAgICBtYXJnaW4tYmxvY2stZW5kOiAtMC41cmVtO1xuICAgICAgcGFkZGluZy1ibG9jay1lbmQ6IDAuNXJlbTtcblxuICAgICAgYSB7XG4gICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLm5hdi1zZWN0aW9uLXRpdGxlIC5wbGFjZWhvbGRlci1pY29uIHtcbiAgICAgIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IDAuMDYyNXJlbTtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGVYKDEuNik7XG5cbiAgICAgIEBpbmNsdWRlIGxheW91dHNNaXhpbnMucnRsIHtcbiAgICAgICAgbWFyZ2luLWlubGluZS1zdGFydDogMC4xMjVyZW07XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi5sYXlvdXQtdmVydGljYWwtbmF2LWNvbGxhcHNlZCB7XG4gICAgLmxheW91dC12ZXJ0aWNhbC1uYXY6bm90KC5ob3ZlcmVkKSB7XG4gICAgICAubmF2LWhlYWRlciB7XG4gICAgICAgIC5oZWFkZXItYWN0aW9uIHtcbiAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJAdXNlIFwiQGNvcmUvc2Nzcy90ZW1wbGF0ZS9wbGFjZWhvbGRlcnNcIiBhcyAqO1xuXG4ubGF5b3V0LWhvcml6b250YWwtbmF2IHtcbiAgY29sb3I6IHJnYmEodmFyKC0tdi10aGVtZS1vbi1iYWNrZ3JvdW5kKSwgdmFyKC0tdi1oaWdoLWVtcGhhc2lzLW9wYWNpdHkpKTtcblxuICAvLyBTRUNUSU9OIE5hdiBHcm91cFxuICAubmF2LWdyb3VwLFxuICAubmF2LWxpbmsge1xuICAgIC5wb3BwZXItY29udGVudCB7XG4gICAgICAubmF2LWxpbmsuc3ViLWl0ZW0gYSxcbiAgICAgIC5uYXYtZ3JvdXAtbGFiZWwge1xuICAgICAgICBAZXh0ZW5kICVuYXYtZ3JvdXAtbGFiZWwtYW5kLW5hdi1saW5rLXN0eWxlO1xuICAgICAgfVxuXG4gICAgICAubmF2LWdyb3VwLmFjdGl2ZSB7XG4gICAgICAgID4gLnBvcHBlci10cmlnZ2VyZXIgLm5hdi1ncm91cC1sYWJlbCB7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAubmF2LWdyb3VwLnN1Yi1pdGVtIC5zdWItaXRlbSB7XG4gICAgICAgIC5uYXYtZ3JvdXAtbGFiZWwgLm5hdi1pdGVtLWljb24ge1xuICAgICAgICAgIGNvbG9yOiByZ2JhKHZhcigtLXYtdGhlbWUtb24tc3VyZmFjZSksIHZhcigtLXYtbWVkaXVtLWVtcGhhc2lzLW9wYWNpdHkpKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGE6bm90KC5yb3V0ZXItbGluay1leGFjdC1hY3RpdmUpIC5uYXYtaXRlbS1pY29uIHtcbiAgICAgICAgICBjb2xvcjogcmdiYSh2YXIoLS12LXRoZW1lLW9uLXN1cmZhY2UpLCB2YXIoLS12LW1lZGl1bS1lbXBoYXNpcy1vcGFjaXR5KSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLm5hdi1saW5rLnN1Yi1pdGVtIHtcbiAgICAgICAgLnJvdXRlci1saW5rLWFjdGl2ZS5yb3V0ZXItbGluay1leGFjdC1hY3RpdmUge1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyAhU0VDVElPTlxufVxuIiwiQHVzZSBcIkBjb3JlL3Njc3MvYmFzZS9taXhpbnNcIjtcblxuLmxheW91dC13cmFwcGVyLmxheW91dC1uYXYtdHlwZS12ZXJ0aWNhbCB7XG4gIC8vIPCfkYkgTGF5b3V0IGZvb3RlclxuICAubGF5b3V0LWZvb3RlciB7XG4gICAgJGVsZS1sYXlvdXQtZm9vdGVyOiAmO1xuXG4gICAgLmZvb3Rlci1jb250ZW50LWNvbnRhaW5lciB7XG4gICAgICAvLyBTdGlja3kgZm9vdGVyXG4gICAgICBAYXQtcm9vdCB7XG4gICAgICAgIC8vIOKEue+4jyAubGF5b3V0LWZvb3Rlci1zdGlja3kjeyRlbGUtbGF5b3V0LWZvb3Rlcn0gPT4gLmxheW91dC1mb290ZXItc3RpY2t5LmxheW91dC13cmFwcGVyLmxheW91dC1uYXYtdHlwZS12ZXJ0aWNhbCAubGF5b3V0LWZvb3RlclxuICAgICAgICAubGF5b3V0LWZvb3Rlci1zdGlja3kjeyRlbGUtbGF5b3V0LWZvb3Rlcn0ge1xuICAgICAgICAgIC5mb290ZXItY29udGVudC1jb250YWluZXIge1xuICAgICAgICAgICAgQGluY2x1ZGUgbWl4aW5zLmVsZXZhdGlvbig2KTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi5sYXlvdXQtd3JhcHBlci5sYXlvdXQtbmF2LXR5cGUtaG9yaXpvbnRhbCB7XG4gIC5sYXlvdXQtbmF2YmFyLWFuZC1uYXYtY29udGFpbmVyIHtcbiAgICAuYXBwLWxvZ28ge1xuICAgICAgLmFwcC10aXRsZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkB1c2UgXCJzYXNzOm1hcFwiO1xuQHVzZSBcIkBjb3JlL3Njc3MvYmFzZS9taXhpbnNcIjtcbkB1c2UgXCJAY29uZmlndXJlZC12YXJpYWJsZXNcIiBhcyB2YXJpYWJsZXM7XG5cbiRoZWFkZXI6IFwiLmxheW91dC1uYXZiYXJcIjtcblxuQGlmIHZhcmlhYmxlcy4kbGF5b3V0LXZlcnRpY2FsLW5hdi1uYXZiYXItaXMtY29udGFpbmVkIHtcbiAgJGhlYWRlcjogXCIubGF5b3V0LW5hdmJhciAubmF2YmFyLWNvbnRlbnQtY29udGFpbmVyXCI7XG59XG5cbi5za2luLS1ib3JkZXJlZCB7XG4gIC8vIEV4cGFuc2lvbiBQYW5lbHNcbiAgQGluY2x1ZGUgbWl4aW5zLmJvcmRlcmVkLXNraW4oXG4gICAgXCIudi1leHBhbnNpb24tcGFuZWxzOm5vdCguZXhwYW5zaW9uLXBhbmVscy13aWR0aC1ib3JkZXIpIC52LWV4cGFuc2lvbi1wYW5lbCwgLnYtZXhwYW5zaW9uLXBhbmVsX19zaGFkb3dcIlxuICApO1xuXG4gIC8vIE5hdmJhclxuXG4gIC8vIC0tIFZlcnRpY2FsXG4gIEBpZiB2YXJpYWJsZXMuJGxheW91dC12ZXJ0aWNhbC1uYXYtbmF2YmFyLWlzLWNvbnRhaW5lZCB7XG4gICAgQGluY2x1ZGUgbWl4aW5zLmJvcmRlcmVkLXNraW4oXCIubGF5b3V0LW5hdi10eXBlLXZlcnRpY2FsICN7JGhlYWRlcn1cIik7XG4gICAgLmxheW91dC1uYXYtdHlwZS12ZXJ0aWNhbC53aW5kb3ctc2Nyb2xsZWQgI3skaGVhZGVyfSB7XG4gICAgICBib3JkZXItYmxvY2stc3RhcnQ6IDFweCBzb2xpZCByZ2JhKHZhcigtLXYtYm9yZGVyLWNvbG9yKSwgdmFyKC0tdi1ib3JkZXItb3BhY2l0eSkpICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG4gIC8qIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBAc3R5bGlzdGljL2luZGVudGF0aW9uICovXG4gQGVsc2Uge1xuICAgIEBpbmNsdWRlIG1peGlucy5ib3JkZXJlZC1za2luKFwiLmxheW91dC1uYXYtdHlwZS12ZXJ0aWNhbCAjeyRoZWFkZXJ9XCIsIFwiYm9yZGVyLWJvdHRvbVwiKTtcbiAgfVxuXG4gIC8vIERpYWxvZyBjbG9zZSBidXR0b25cbiAgQGluY2x1ZGUgbWl4aW5zLmJvcmRlcmVkLXNraW4oXCIudi1kaWFsb2ctY2xvc2UtYnRuXCIpO1xuXG4gIC8vIFZlcnRpY2FsIE5hdlxuICAubGF5b3V0LXZlcnRpY2FsLW5hdiB7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgfVxuXG4gIC52LWV4cGFuc2lvbi1wYW5lbHMuZXhwYW5zaW9uLXBhbmVscy13aWR0aC1ib3JkZXIge1xuICAgIC52LWV4cGFuc2lvbi1wYW5lbF9fc2hhZG93IHtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAudi1leHBhbnNpb24tcGFuZWwge1xuICAgICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG5cbiAgICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgIG1hcmdpbi1ibG9jay1lbmQ6IC0xcHg7XG4gICAgICB9XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBzZWxlY3QgcmVtb3ZlIGJveCBzaGFkb3dcbiAgLnYtc2VsZWN0X19jb250ZW50LFxuICAudi1jb21ib2JveF9fY29udGVudCxcbiAgLnYtYXV0b2NvbXBsZXRlX19jb250ZW50IHtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICB9XG5cbiAgLmZsYXRwaWNrci1jYWxlbmRhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSh2YXIoLS12LWJvcmRlci1jb2xvciksIHZhcigtLXYtYm9yZGVyLW9wYWNpdHkpKTtcbiAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cblxuICAvLyBjYWxlbmRhclxuICAuZmMgLmZjLXBvcG92ZXIge1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gIH1cblxuICAvLyBuYXZpZ2F0aW9uIGRyYXdlclxuICAudi1uYXZpZ2F0aW9uLWRyYXdlcjpub3QoLmFwcC1jdXN0b21pemVyKSB7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgfVxuXG4gIC5zaGVwaGVyZC1lbGVtZW50IHtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICB9XG59XG4iLCIudi10aW1lbGluZS1pdGVtIHtcbiAgLmFwcC10aW1lbGluZS10aXRsZSB7XG4gICAgY29sb3I6IHJnYmEodmFyKC0tdi10aGVtZS1vbi1zdXJmYWNlKSwgdmFyKC0tdi1oaWdoLWVtcGhhc2lzLW9wYWNpdHkpKTtcbiAgICBmb250LXNpemU6IDE1cHg7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBsaW5lLWhlaWdodDogMS4zMTI1cmVtO1xuICB9XG5cbiAgLmFwcC10aW1lbGluZS1tZXRhIHtcbiAgICBjb2xvcjogcmdiYSh2YXIoLS12LXRoZW1lLW9uLXN1cmZhY2UpLCB2YXIoLS12LWRpc2FibGVkLW9wYWNpdHkpKTtcbiAgICBmb250LXNpemU6IDExcHg7XG4gICAgbGluZS1oZWlnaHQ6IDAuODc1cmVtO1xuICB9XG5cbiAgLmFwcC10aW1lbGluZS10ZXh0IHtcbiAgICBjb2xvcjogcmdiYSh2YXIoLS12LXRoZW1lLW9uLXN1cmZhY2UpLCB2YXIoLS12LW1lZGl1bS1lbXBoYXNpcy1vcGFjaXR5KSk7XG4gICAgZm9udC1zaXplOiAxM3B4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI1cmVtO1xuICB9XG59XG5cbi8vIOKEue+4jyBUZW1wb3Jhcnkgc29sdXRpb24gYXMgdi1zcGFjZXIgc3R5bGUgaXMgbm90IGdldHRpbmcgYXBwbGllZCBpbiBidWlsZCB2ZXJzaW9uLiB3aWxsIHJlbW92ZSB0aGlzIGFmdGVyIHJlbGVhc2UuXG4vLyBWU3BhY2VyXG4udi1zcGFjZXIge1xuICBmbGV4LWdyb3c6IDE7XG59XG5cbi8vIGFwcC1sb2dvICYgYXBwLWxvZ28tdGl0bGVcbi5hcHAtbG9nbyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGNvbHVtbi1nYXA6IDAuNzVyZW07XG5cbiAgLmFwcC1sb2dvLXRpdGxlIHtcbiAgICBmb250LXNpemU6IDEuMzc1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMjVweDtcbiAgICBsaW5lLWhlaWdodDogMS41cmVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICB9XG59XG5cbi50ZXh0LXdoaXRlLXZhcmlhbnQge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCA3OCUpICFpbXBvcnRhbnQ7XG59XG5cbi5iZy1jdXN0b20tYmFja2dyb3VuZCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYih2YXIoLS12LXRhYmxlLWhlYWRlci1jb2xvcikpO1xufVxuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9*/