@charset "UTF-8";
/* Component styles. */
.woocommerce .woocommerce-pagination {
  margin-top: var(--it-spacing-section-half);
}
.woocommerce .woocommerce-pagination .page-numbers {
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 0.5rem;
}
.woocommerce .woocommerce-pagination .page-numbers li {
  margin: 0;
  list-style-type: none;
  font-size: var(--it-size-small);
}
.woocommerce .woocommerce-pagination .page-numbers li:has(.prev) {
  margin-right: 0.5rem;
}
.woocommerce .woocommerce-pagination .page-numbers li:has(.next) {
  margin-left: 0.5rem;
}
.woocommerce .woocommerce-pagination .page-numbers li > * {
  width: 2rem;
  height: 2rem;
  border-radius: var(--it-border-radius-small);
  border: 1px solid var(--it-color-border);
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.woocommerce .woocommerce-pagination .page-numbers li span.current {
  color: var(--it-color-white);
  background: var(--it-color-brand);
  border-color: var(--it-color-brand);
}
.woocommerce .woocommerce-pagination .page-numbers li a {
  transition: color var(--it-transition), background var(--it-transition), border-color var(--it-transition);
}
.woocommerce .woocommerce-pagination .page-numbers li a:hover {
  color: var(--it-color-white);
  border-color: var(--it-color-brand);
  background: var(--it-color-brand);
}

.woocommerce .woocommerce-pagination .page-numbers {
  border: 0;
}
.woocommerce .woocommerce-pagination .page-numbers li {
  border-right: 0;
}

/**
 * Do not @use files with actual scss code in this file, as it will compile css code twice.
 * As this file going to be an standalone css file.
 */
/*
 * CONVERT TO CLAMP
 *
 * @link https://websemantics.uk/tools/responsive-font-calculator/
 *
 * Call with 2, or 4 parameters. Only first 2 parameters are required. Viewport widths also can be with 'px' units (for supporting breakpoint values).
 *
 * Examples:
 *
 * 1) font-size: clamp-rem(32, 48);
 * 2) font-size: clamp-rem(32, 48, 640, 1440);
 */
/**
 * Mixins for Media Queries
 * Example Usage: @include min($lg) || @include min(1440)
 */
div.quantity-input {
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  border: 1px solid var(--it-color-border);
  border-radius: var(--it-border-radius-small);
  overflow: hidden;
}
div.quantity-input .qty-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 1.5rem;
  height: 100%;
  border: 0;
  flex-shrink: 0;
  background: var(--it-color-background);
  color: var(--it-color-brand);
  cursor: pointer;
  transition: all var(--it-transition);
}
div.quantity-input .qty-btn:hover, div.quantity-input .qty-btn:focus-visible {
  background: var(--it-color-brand);
  color: var(--it-color-white);
}
div.quantity-input .qty-btn::before {
  content: "";
  display: block;
  width: 0.5625rem;
  height: 0.5625rem;
  background-color: currentcolor;
}
div.quantity-input .qty-btn.qty-minus::before {
  -webkit-mask: url("../img/woo-chevron.svg") no-repeat center/contain;
          mask: url("../img/woo-chevron.svg") no-repeat center/contain;
}
div.quantity-input .qty-btn.qty-plus::before {
  transform: rotate(-180deg);
  -webkit-mask: url("../img/woo-chevron.svg") no-repeat center/contain;
          mask: url("../img/woo-chevron.svg") no-repeat center/contain;
}
div.quantity-input input[type=number] {
  width: 2.1875rem !important;
  height: 2.1875rem;
  border: none;
  padding: 0;
  font-size: var(--it-size-small);
  -webkit-appearance: none;
          appearance: none;
  -moz-appearance: textfield;
}
div.quantity-input input[type=number]::-webkit-outer-spin-button, div.quantity-input input[type=number]::-webkit-inner-spin-button {
  margin: 0;
  -webkit-appearance: none;
}

/**
 * Do not @use files with actual scss code in this file, as it will compile css code twice.
 * As this file going to be an standalone css file.
 */
/**
 * Do not @use files with actual scss code in this file, as it will compile css code twice.
 * As this file going to be an standalone css file.
 */
/**
 * Do not @use files with actual scss code in this file, as it will compile css code twice.
 * As this file going to be an standalone css file.
 */
.button,
.wc-block-components-button, .woocommerce-account .woocommerce-Address-title .edit, .woocommerce.single-product #content div.product.product-type-variable div.summary .cart .variations .reset_variations, .woocommerce-cart .woocommerce form.woocommerce-cart-form tr:last-child .button, .woocommerce .woocommerce-message .button,
.woocommerce .woocommerce-message [role=button],
.woocommerce .woocommerce-info .button,
.woocommerce .woocommerce-info [role=button], .woocommerce ul.products li.product .button, .woocommerce .woocommerce-error .button, .woocommerce-cart .woocommerce .cart-collaterals .cart_totals .wc-proceed-to-checkout .checkout-button, .woocommerce-cart .woocommerce .return-to-shop .button, .woocommerce.single-product #content div.product div.summary .cart .button, .woocommerce-account .woocommerce button[type=submit],
.woocommerce-account .woocommerce input[type=submit],
.woocommerce-account .woocommerce .button,
.woocommerce-checkout .woocommerce button[type=submit],
.woocommerce-checkout .woocommerce input[type=submit],
.woocommerce-checkout .woocommerce .button, .woocommerce-account .woocommerce section .button,
.woocommerce-checkout .woocommerce section .button {
  position: relative;
  font-family: inherit;
  border-width: 1px;
  border-style: solid;
  font-size: var(--it-size-small);
  font-weight: 500;
  line-height: 1;
  padding: 1.25rem 1.875rem;
  text-decoration: none;
  text-transform: capitalize;
  transition: color var(--it-transition), border var(--it-transition), background var(--it-transition);
  text-align: center;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  gap: 0.5rem;
  cursor: pointer;
  backdrop-filter: blur(15px);
}
.button > svg,
.wc-block-components-button > svg, .woocommerce-account .woocommerce-Address-title .edit > svg, .woocommerce.single-product #content div.product.product-type-variable div.summary .cart .variations .reset_variations > svg, .woocommerce-cart .woocommerce form.woocommerce-cart-form tr:last-child .button > svg, .woocommerce .woocommerce-message .button > svg,
.woocommerce .woocommerce-message [role=button] > svg,
.woocommerce .woocommerce-info .button > svg,
.woocommerce .woocommerce-info [role=button] > svg, .woocommerce ul.products li.product .button > svg, .woocommerce .woocommerce-error .button > svg, .woocommerce-cart .woocommerce .cart-collaterals .cart_totals .wc-proceed-to-checkout .checkout-button > svg, .woocommerce-cart .woocommerce .return-to-shop .button > svg, .woocommerce.single-product #content div.product div.summary .cart .button > svg, .woocommerce-account .woocommerce button[type=submit] > svg,
.woocommerce-account .woocommerce input[type=submit] > svg,
.woocommerce-account .woocommerce .button > svg,
.woocommerce-checkout .woocommerce button[type=submit] > svg,
.woocommerce-checkout .woocommerce input[type=submit] > svg,
.woocommerce-checkout .woocommerce .button > svg, .woocommerce-account .woocommerce section .button > svg,
.woocommerce-checkout .woocommerce section .button > svg {
  color: currentcolor;
}
.is-loading.button:after,
.is-loading.wc-block-components-button:after, .woocommerce-account .woocommerce-Address-title .is-loading.edit:after, .woocommerce.single-product #content div.product.product-type-variable div.summary .cart .variations .is-loading.reset_variations:after, .woocommerce-cart .woocommerce form.woocommerce-cart-form tr:last-child .is-loading.button:after, .woocommerce .woocommerce-message .is-loading.button:after,
.woocommerce .woocommerce-message .is-loading[role=button]:after,
.woocommerce .woocommerce-info .is-loading.button:after,
.woocommerce .woocommerce-info .is-loading[role=button]:after, .woocommerce ul.products li.product .is-loading.button:after, .woocommerce .woocommerce-error .is-loading.button:after, .woocommerce-cart .woocommerce .cart-collaterals .cart_totals .wc-proceed-to-checkout .is-loading.checkout-button:after, .woocommerce-cart .woocommerce .return-to-shop .is-loading.button:after, .woocommerce.single-product #content div.product div.summary .cart .is-loading.button:after, .woocommerce-account .woocommerce button.is-loading[type=submit]:after,
.woocommerce-account .woocommerce input.is-loading[type=submit]:after,
.woocommerce-account .woocommerce .is-loading.button:after,
.woocommerce-checkout .woocommerce button.is-loading[type=submit]:after,
.woocommerce-checkout .woocommerce input.is-loading[type=submit]:after,
.woocommerce-checkout .woocommerce .is-loading.button:after {
  content: "";
  width: 1.25rem;
  aspect-ratio: 1;
  border-radius: 50%;
  display: inline-block;
  background: radial-gradient(farthest-side, currentcolor 94%, transparent) top/3px 3px no-repeat, conic-gradient(transparent 30%, currentcolor);
  -webkit-mask: radial-gradient(farthest-side, transparent calc(100% - 3px), #000 0);
  animation: spinLoader 1s infinite linear;
  z-index: 1;
}
@keyframes spinLoader {
  100% {
    transform: rotate(1turn);
  }
}
.button,
.wc-block-components-button, .woocommerce-account .woocommerce-Address-title .edit, .woocommerce.single-product #content div.product.product-type-variable div.summary .cart .variations .reset_variations, .woocommerce-cart .woocommerce form.woocommerce-cart-form tr:last-child .button, .woocommerce .woocommerce-message .button,
.woocommerce .woocommerce-message [role=button],
.woocommerce .woocommerce-info .button,
.woocommerce .woocommerce-info [role=button], .woocommerce ul.products li.product .button, .woocommerce .woocommerce-error .button, .woocommerce-cart .woocommerce .cart-collaterals .cart_totals .wc-proceed-to-checkout .checkout-button, .woocommerce-cart .woocommerce .return-to-shop .button, .woocommerce.single-product #content div.product div.summary .cart .button, .woocommerce-account .woocommerce button[type=submit],
.woocommerce-account .woocommerce input[type=submit],
.woocommerce-account .woocommerce .button,
.woocommerce-checkout .woocommerce button[type=submit],
.woocommerce-checkout .woocommerce input[type=submit],
.woocommerce-checkout .woocommerce .button, .woocommerce-account .woocommerce section .button,
.woocommerce-checkout .woocommerce section .button {
  /* -- Button types -- */
}
.woocommerce-cart .woocommerce .cart-collaterals .cart_totals .wc-proceed-to-checkout .checkout-button, .woocommerce-cart .woocommerce .return-to-shop .button, .woocommerce.single-product #content div.product div.summary .cart .button, .woocommerce-account .woocommerce button[type=submit],
.woocommerce-account .woocommerce input[type=submit],
.woocommerce-account .woocommerce .button,
.woocommerce-checkout .woocommerce button[type=submit],
.woocommerce-checkout .woocommerce input[type=submit],
.woocommerce-checkout .woocommerce .button, .woocommerce-account .woocommerce section .button,
.woocommerce-checkout .woocommerce section .button {
  min-width: 231px;
  border-color: var(--it-color-white);
  color: var(--it-color-white);
}
@media (hover: hover) {
  .woocommerce-cart .woocommerce .cart-collaterals .cart_totals .wc-proceed-to-checkout .checkout-button:hover, .woocommerce-cart .woocommerce .return-to-shop .button:hover, .woocommerce.single-product #content div.product div.summary .cart .button:hover, .woocommerce-account .woocommerce button[type=submit]:hover,
  .woocommerce-account .woocommerce input[type=submit]:hover,
  .woocommerce-account .woocommerce .button:hover,
  .woocommerce-checkout .woocommerce button[type=submit]:hover,
  .woocommerce-checkout .woocommerce input[type=submit]:hover,
  .woocommerce-checkout .woocommerce .button:hover {
    background-color: var(--it-color-text);
    color: var(--it-color-white);
  }
}
@media (hover: none) {
  .woocommerce-cart .woocommerce .cart-collaterals .cart_totals .wc-proceed-to-checkout .checkout-button:active, .woocommerce-cart .woocommerce .return-to-shop .button:active, .woocommerce.single-product #content div.product div.summary .cart .button:active, .woocommerce-account .woocommerce button[type=submit]:active,
  .woocommerce-account .woocommerce input[type=submit]:active,
  .woocommerce-account .woocommerce .button:active,
  .woocommerce-checkout .woocommerce button[type=submit]:active,
  .woocommerce-checkout .woocommerce input[type=submit]:active,
  .woocommerce-checkout .woocommerce .button:active {
    background-color: var(--it-color-white);
    color: var(--it-color-brand);
  }
}
.woocommerce-cart .woocommerce .cart-collaterals .cart_totals .wc-proceed-to-checkout .checkout-button:focus-visible, .woocommerce-cart .woocommerce .return-to-shop .button:focus-visible, .woocommerce.single-product #content div.product div.summary .cart .button:focus-visible, .woocommerce-account .woocommerce button[type=submit]:focus-visible,
.woocommerce-account .woocommerce input[type=submit]:focus-visible,
.woocommerce-account .woocommerce .button:focus-visible,
.woocommerce-checkout .woocommerce button[type=submit]:focus-visible,
.woocommerce-checkout .woocommerce input[type=submit]:focus-visible,
.woocommerce-checkout .woocommerce .button:focus-visible {
  outline-color: var(--it-color-brand);
}
.woocommerce-cart .woocommerce .cart-collaterals .cart_totals .wc-proceed-to-checkout .is-disabled.checkout-button, .woocommerce-cart .woocommerce .return-to-shop .is-disabled.button, .woocommerce.single-product #content div.product div.summary .cart .is-disabled.button, .woocommerce-account .woocommerce button.is-disabled[type=submit],
.woocommerce-account .woocommerce input.is-disabled[type=submit],
.woocommerce-account .woocommerce .is-disabled.button,
.woocommerce-checkout .woocommerce button.is-disabled[type=submit],
.woocommerce-checkout .woocommerce input.is-disabled[type=submit],
.woocommerce-checkout .woocommerce .is-disabled.button, .woocommerce-cart .woocommerce .cart-collaterals .cart_totals .wc-proceed-to-checkout .is-loading.checkout-button, .woocommerce-cart .woocommerce .return-to-shop .is-loading.button, .woocommerce.single-product #content div.product div.summary .cart .is-loading.button, .woocommerce-account .woocommerce button.is-loading[type=submit],
.woocommerce-account .woocommerce input.is-loading[type=submit],
.woocommerce-account .woocommerce .is-loading.button,
.woocommerce-checkout .woocommerce button.is-loading[type=submit],
.woocommerce-checkout .woocommerce input.is-loading[type=submit],
.woocommerce-checkout .woocommerce .is-loading.button, .woocommerce-cart .woocommerce .cart-collaterals .cart_totals .wc-proceed-to-checkout .checkout-button:disabled[disabled], .woocommerce-cart .woocommerce .return-to-shop .button:disabled[disabled], .woocommerce.single-product #content div.product div.summary .cart .button:disabled[disabled], .woocommerce-account .woocommerce button[type=submit]:disabled[disabled],
.woocommerce-account .woocommerce input[type=submit]:disabled[disabled],
.woocommerce-account .woocommerce .button:disabled[disabled],
.woocommerce-checkout .woocommerce button[type=submit]:disabled[disabled],
.woocommerce-checkout .woocommerce input[type=submit]:disabled[disabled],
.woocommerce-checkout .woocommerce .button:disabled[disabled] {
  pointer-events: none;
  padding: 0.6875rem 2.5rem;
  background-color: var(--it-color-brand-greyed);
  border-color: var(--it-color-brand-greyed);
  color: var(--it-color-white);
}
.woocommerce-cart .woocommerce .cart-collaterals .cart_totals .wc-proceed-to-checkout .is-disabled.checkout-button:focus-visible, .woocommerce-cart .woocommerce .return-to-shop .is-disabled.button:focus-visible, .woocommerce.single-product #content div.product div.summary .cart .is-disabled.button:focus-visible, .woocommerce-account .woocommerce button.is-disabled[type=submit]:focus-visible,
.woocommerce-account .woocommerce input.is-disabled[type=submit]:focus-visible,
.woocommerce-account .woocommerce .is-disabled.button:focus-visible,
.woocommerce-checkout .woocommerce button.is-disabled[type=submit]:focus-visible,
.woocommerce-checkout .woocommerce input.is-disabled[type=submit]:focus-visible,
.woocommerce-checkout .woocommerce .is-disabled.button:focus-visible, .woocommerce-cart .woocommerce .cart-collaterals .cart_totals .wc-proceed-to-checkout .is-loading.checkout-button:focus-visible, .woocommerce-cart .woocommerce .return-to-shop .is-loading.button:focus-visible, .woocommerce.single-product #content div.product div.summary .cart .is-loading.button:focus-visible, .woocommerce-account .woocommerce button.is-loading[type=submit]:focus-visible,
.woocommerce-account .woocommerce input.is-loading[type=submit]:focus-visible,
.woocommerce-account .woocommerce .is-loading.button:focus-visible,
.woocommerce-checkout .woocommerce button.is-loading[type=submit]:focus-visible,
.woocommerce-checkout .woocommerce input.is-loading[type=submit]:focus-visible,
.woocommerce-checkout .woocommerce .is-loading.button:focus-visible, .woocommerce-cart .woocommerce .cart-collaterals .cart_totals .wc-proceed-to-checkout .checkout-button:disabled[disabled]:focus-visible, .woocommerce-cart .woocommerce .return-to-shop .button:disabled[disabled]:focus-visible, .woocommerce.single-product #content div.product div.summary .cart .button:disabled[disabled]:focus-visible, .woocommerce-account .woocommerce button[type=submit]:disabled[disabled]:focus-visible,
.woocommerce-account .woocommerce input[type=submit]:disabled[disabled]:focus-visible,
.woocommerce-account .woocommerce .button:disabled[disabled]:focus-visible,
.woocommerce-checkout .woocommerce button[type=submit]:disabled[disabled]:focus-visible,
.woocommerce-checkout .woocommerce input[type=submit]:disabled[disabled]:focus-visible,
.woocommerce-checkout .woocommerce .button:disabled[disabled]:focus-visible {
  outline-color: var(--it-color-brand-greyed);
}
.it-intro--fullwidth .woocommerce-cart .woocommerce .cart-collaterals .cart_totals .wc-proceed-to-checkout .checkout-button, .woocommerce-cart .woocommerce .cart-collaterals .cart_totals .wc-proceed-to-checkout .it-intro--fullwidth .checkout-button, .it-intro--fullwidth .woocommerce-cart .woocommerce .return-to-shop .button, .woocommerce-cart .woocommerce .return-to-shop .it-intro--fullwidth .button, .it-intro--fullwidth .woocommerce.single-product #content div.product div.summary .cart .button, .woocommerce.single-product #content div.product div.summary .cart .it-intro--fullwidth .button, .it-intro--fullwidth .woocommerce-account .woocommerce button[type=submit], .woocommerce-account .woocommerce .it-intro--fullwidth button[type=submit],
.it-intro--fullwidth .woocommerce-account .woocommerce input[type=submit],
.woocommerce-account .woocommerce .it-intro--fullwidth input[type=submit],
.it-intro--fullwidth .woocommerce-account .woocommerce .button,
.woocommerce-account .woocommerce .it-intro--fullwidth .button,
.it-intro--fullwidth .woocommerce-checkout .woocommerce button[type=submit],
.woocommerce-checkout .woocommerce .it-intro--fullwidth button[type=submit],
.it-intro--fullwidth .woocommerce-checkout .woocommerce input[type=submit],
.woocommerce-checkout .woocommerce .it-intro--fullwidth input[type=submit],
.it-intro--fullwidth .woocommerce-checkout .woocommerce .button,
.woocommerce-checkout .woocommerce .it-intro--fullwidth .button, .has-bg-dark .woocommerce-cart .woocommerce .cart-collaterals .cart_totals .wc-proceed-to-checkout .checkout-button, .woocommerce-cart .woocommerce .cart-collaterals .cart_totals .wc-proceed-to-checkout .has-bg-dark .checkout-button, .has-bg-dark .woocommerce-cart .woocommerce .return-to-shop .button, .woocommerce-cart .woocommerce .return-to-shop .has-bg-dark .button, .has-bg-dark .woocommerce.single-product #content div.product div.summary .cart .button, .woocommerce.single-product #content div.product div.summary .cart .has-bg-dark .button, .has-bg-dark .woocommerce-account .woocommerce button[type=submit], .woocommerce-account .woocommerce .has-bg-dark button[type=submit],
.has-bg-dark .woocommerce-account .woocommerce input[type=submit],
.woocommerce-account .woocommerce .has-bg-dark input[type=submit],
.has-bg-dark .woocommerce-account .woocommerce .button,
.woocommerce-account .woocommerce .has-bg-dark .button,
.has-bg-dark .woocommerce-checkout .woocommerce button[type=submit],
.woocommerce-checkout .woocommerce .has-bg-dark button[type=submit],
.has-bg-dark .woocommerce-checkout .woocommerce input[type=submit],
.woocommerce-checkout .woocommerce .has-bg-dark input[type=submit],
.has-bg-dark .woocommerce-checkout .woocommerce .button,
.woocommerce-checkout .woocommerce .has-bg-dark .button {
  border-color: var(--it-color-white);
  color: var(--it-color-white);
}
@media (hover: hover) {
  .it-intro--fullwidth .woocommerce-cart .woocommerce .cart-collaterals .cart_totals .wc-proceed-to-checkout .checkout-button:hover, .woocommerce-cart .woocommerce .cart-collaterals .cart_totals .wc-proceed-to-checkout .it-intro--fullwidth .checkout-button:hover, .it-intro--fullwidth .woocommerce-cart .woocommerce .return-to-shop .button:hover, .woocommerce-cart .woocommerce .return-to-shop .it-intro--fullwidth .button:hover, .it-intro--fullwidth .woocommerce.single-product #content div.product div.summary .cart .button:hover, .woocommerce.single-product #content div.product div.summary .cart .it-intro--fullwidth .button:hover, .it-intro--fullwidth .woocommerce-account .woocommerce button[type=submit]:hover, .woocommerce-account .woocommerce .it-intro--fullwidth button[type=submit]:hover,
  .it-intro--fullwidth .woocommerce-account .woocommerce input[type=submit]:hover,
  .woocommerce-account .woocommerce .it-intro--fullwidth input[type=submit]:hover,
  .it-intro--fullwidth .woocommerce-account .woocommerce .button:hover,
  .woocommerce-account .woocommerce .it-intro--fullwidth .button:hover,
  .it-intro--fullwidth .woocommerce-checkout .woocommerce button[type=submit]:hover,
  .woocommerce-checkout .woocommerce .it-intro--fullwidth button[type=submit]:hover,
  .it-intro--fullwidth .woocommerce-checkout .woocommerce input[type=submit]:hover,
  .woocommerce-checkout .woocommerce .it-intro--fullwidth input[type=submit]:hover,
  .it-intro--fullwidth .woocommerce-checkout .woocommerce .button:hover,
  .woocommerce-checkout .woocommerce .it-intro--fullwidth .button:hover, .has-bg-dark .woocommerce-cart .woocommerce .cart-collaterals .cart_totals .wc-proceed-to-checkout .checkout-button:hover, .woocommerce-cart .woocommerce .cart-collaterals .cart_totals .wc-proceed-to-checkout .has-bg-dark .checkout-button:hover, .has-bg-dark .woocommerce-cart .woocommerce .return-to-shop .button:hover, .woocommerce-cart .woocommerce .return-to-shop .has-bg-dark .button:hover, .has-bg-dark .woocommerce.single-product #content div.product div.summary .cart .button:hover, .woocommerce.single-product #content div.product div.summary .cart .has-bg-dark .button:hover, .has-bg-dark .woocommerce-account .woocommerce button[type=submit]:hover, .woocommerce-account .woocommerce .has-bg-dark button[type=submit]:hover,
  .has-bg-dark .woocommerce-account .woocommerce input[type=submit]:hover,
  .woocommerce-account .woocommerce .has-bg-dark input[type=submit]:hover,
  .has-bg-dark .woocommerce-account .woocommerce .button:hover,
  .woocommerce-account .woocommerce .has-bg-dark .button:hover,
  .has-bg-dark .woocommerce-checkout .woocommerce button[type=submit]:hover,
  .woocommerce-checkout .woocommerce .has-bg-dark button[type=submit]:hover,
  .has-bg-dark .woocommerce-checkout .woocommerce input[type=submit]:hover,
  .woocommerce-checkout .woocommerce .has-bg-dark input[type=submit]:hover,
  .has-bg-dark .woocommerce-checkout .woocommerce .button:hover,
  .woocommerce-checkout .woocommerce .has-bg-dark .button:hover {
    background-color: var(--it-color-brand);
    color: var(--it-color-white);
  }
}
@media (hover: none) {
  .it-intro--fullwidth .woocommerce-cart .woocommerce .cart-collaterals .cart_totals .wc-proceed-to-checkout .checkout-button:active, .woocommerce-cart .woocommerce .cart-collaterals .cart_totals .wc-proceed-to-checkout .it-intro--fullwidth .checkout-button:active, .it-intro--fullwidth .woocommerce-cart .woocommerce .return-to-shop .button:active, .woocommerce-cart .woocommerce .return-to-shop .it-intro--fullwidth .button:active, .it-intro--fullwidth .woocommerce.single-product #content div.product div.summary .cart .button:active, .woocommerce.single-product #content div.product div.summary .cart .it-intro--fullwidth .button:active, .it-intro--fullwidth .woocommerce-account .woocommerce button[type=submit]:active, .woocommerce-account .woocommerce .it-intro--fullwidth button[type=submit]:active,
  .it-intro--fullwidth .woocommerce-account .woocommerce input[type=submit]:active,
  .woocommerce-account .woocommerce .it-intro--fullwidth input[type=submit]:active,
  .it-intro--fullwidth .woocommerce-account .woocommerce .button:active,
  .woocommerce-account .woocommerce .it-intro--fullwidth .button:active,
  .it-intro--fullwidth .woocommerce-checkout .woocommerce button[type=submit]:active,
  .woocommerce-checkout .woocommerce .it-intro--fullwidth button[type=submit]:active,
  .it-intro--fullwidth .woocommerce-checkout .woocommerce input[type=submit]:active,
  .woocommerce-checkout .woocommerce .it-intro--fullwidth input[type=submit]:active,
  .it-intro--fullwidth .woocommerce-checkout .woocommerce .button:active,
  .woocommerce-checkout .woocommerce .it-intro--fullwidth .button:active, .has-bg-dark .woocommerce-cart .woocommerce .cart-collaterals .cart_totals .wc-proceed-to-checkout .checkout-button:active, .woocommerce-cart .woocommerce .cart-collaterals .cart_totals .wc-proceed-to-checkout .has-bg-dark .checkout-button:active, .has-bg-dark .woocommerce-cart .woocommerce .return-to-shop .button:active, .woocommerce-cart .woocommerce .return-to-shop .has-bg-dark .button:active, .has-bg-dark .woocommerce.single-product #content div.product div.summary .cart .button:active, .woocommerce.single-product #content div.product div.summary .cart .has-bg-dark .button:active, .has-bg-dark .woocommerce-account .woocommerce button[type=submit]:active, .woocommerce-account .woocommerce .has-bg-dark button[type=submit]:active,
  .has-bg-dark .woocommerce-account .woocommerce input[type=submit]:active,
  .woocommerce-account .woocommerce .has-bg-dark input[type=submit]:active,
  .has-bg-dark .woocommerce-account .woocommerce .button:active,
  .woocommerce-account .woocommerce .has-bg-dark .button:active,
  .has-bg-dark .woocommerce-checkout .woocommerce button[type=submit]:active,
  .woocommerce-checkout .woocommerce .has-bg-dark button[type=submit]:active,
  .has-bg-dark .woocommerce-checkout .woocommerce input[type=submit]:active,
  .woocommerce-checkout .woocommerce .has-bg-dark input[type=submit]:active,
  .has-bg-dark .woocommerce-checkout .woocommerce .button:active,
  .woocommerce-checkout .woocommerce .has-bg-dark .button:active {
    background-color: var(--it-color-brand);
    color: var(--it-color-white);
  }
}
.it-intro--fullwidth .woocommerce-cart .woocommerce .cart-collaterals .cart_totals .wc-proceed-to-checkout .checkout-button:focus-visible, .woocommerce-cart .woocommerce .cart-collaterals .cart_totals .wc-proceed-to-checkout .it-intro--fullwidth .checkout-button:focus-visible, .it-intro--fullwidth .woocommerce-cart .woocommerce .return-to-shop .button:focus-visible, .woocommerce-cart .woocommerce .return-to-shop .it-intro--fullwidth .button:focus-visible, .it-intro--fullwidth .woocommerce.single-product #content div.product div.summary .cart .button:focus-visible, .woocommerce.single-product #content div.product div.summary .cart .it-intro--fullwidth .button:focus-visible, .it-intro--fullwidth .woocommerce-account .woocommerce button[type=submit]:focus-visible, .woocommerce-account .woocommerce .it-intro--fullwidth button[type=submit]:focus-visible,
.it-intro--fullwidth .woocommerce-account .woocommerce input[type=submit]:focus-visible,
.woocommerce-account .woocommerce .it-intro--fullwidth input[type=submit]:focus-visible,
.it-intro--fullwidth .woocommerce-account .woocommerce .button:focus-visible,
.woocommerce-account .woocommerce .it-intro--fullwidth .button:focus-visible,
.it-intro--fullwidth .woocommerce-checkout .woocommerce button[type=submit]:focus-visible,
.woocommerce-checkout .woocommerce .it-intro--fullwidth button[type=submit]:focus-visible,
.it-intro--fullwidth .woocommerce-checkout .woocommerce input[type=submit]:focus-visible,
.woocommerce-checkout .woocommerce .it-intro--fullwidth input[type=submit]:focus-visible,
.it-intro--fullwidth .woocommerce-checkout .woocommerce .button:focus-visible,
.woocommerce-checkout .woocommerce .it-intro--fullwidth .button:focus-visible, .has-bg-dark .woocommerce-cart .woocommerce .cart-collaterals .cart_totals .wc-proceed-to-checkout .checkout-button:focus-visible, .woocommerce-cart .woocommerce .cart-collaterals .cart_totals .wc-proceed-to-checkout .has-bg-dark .checkout-button:focus-visible, .has-bg-dark .woocommerce-cart .woocommerce .return-to-shop .button:focus-visible, .woocommerce-cart .woocommerce .return-to-shop .has-bg-dark .button:focus-visible, .has-bg-dark .woocommerce.single-product #content div.product div.summary .cart .button:focus-visible, .woocommerce.single-product #content div.product div.summary .cart .has-bg-dark .button:focus-visible, .has-bg-dark .woocommerce-account .woocommerce button[type=submit]:focus-visible, .woocommerce-account .woocommerce .has-bg-dark button[type=submit]:focus-visible,
.has-bg-dark .woocommerce-account .woocommerce input[type=submit]:focus-visible,
.woocommerce-account .woocommerce .has-bg-dark input[type=submit]:focus-visible,
.has-bg-dark .woocommerce-account .woocommerce .button:focus-visible,
.woocommerce-account .woocommerce .has-bg-dark .button:focus-visible,
.has-bg-dark .woocommerce-checkout .woocommerce button[type=submit]:focus-visible,
.woocommerce-checkout .woocommerce .has-bg-dark button[type=submit]:focus-visible,
.has-bg-dark .woocommerce-checkout .woocommerce input[type=submit]:focus-visible,
.woocommerce-checkout .woocommerce .has-bg-dark input[type=submit]:focus-visible,
.has-bg-dark .woocommerce-checkout .woocommerce .button:focus-visible,
.woocommerce-checkout .woocommerce .has-bg-dark .button:focus-visible {
  outline-color: var(--it-color-white);
}
.it-intro--fullwidth .woocommerce-cart .woocommerce .cart-collaterals .cart_totals .wc-proceed-to-checkout .is-disabled.checkout-button, .woocommerce-cart .woocommerce .cart-collaterals .cart_totals .wc-proceed-to-checkout .it-intro--fullwidth .is-disabled.checkout-button, .it-intro--fullwidth .woocommerce-cart .woocommerce .return-to-shop .is-disabled.button, .woocommerce-cart .woocommerce .return-to-shop .it-intro--fullwidth .is-disabled.button, .it-intro--fullwidth .woocommerce.single-product #content div.product div.summary .cart .is-disabled.button, .woocommerce.single-product #content div.product div.summary .cart .it-intro--fullwidth .is-disabled.button, .it-intro--fullwidth .woocommerce-account .woocommerce button.is-disabled[type=submit], .woocommerce-account .woocommerce .it-intro--fullwidth button.is-disabled[type=submit],
.it-intro--fullwidth .woocommerce-account .woocommerce input.is-disabled[type=submit],
.woocommerce-account .woocommerce .it-intro--fullwidth input.is-disabled[type=submit],
.it-intro--fullwidth .woocommerce-account .woocommerce .is-disabled.button,
.woocommerce-account .woocommerce .it-intro--fullwidth .is-disabled.button,
.it-intro--fullwidth .woocommerce-checkout .woocommerce button.is-disabled[type=submit],
.woocommerce-checkout .woocommerce .it-intro--fullwidth button.is-disabled[type=submit],
.it-intro--fullwidth .woocommerce-checkout .woocommerce input.is-disabled[type=submit],
.woocommerce-checkout .woocommerce .it-intro--fullwidth input.is-disabled[type=submit],
.it-intro--fullwidth .woocommerce-checkout .woocommerce .is-disabled.button,
.woocommerce-checkout .woocommerce .it-intro--fullwidth .is-disabled.button, .it-intro--fullwidth .woocommerce-cart .woocommerce .cart-collaterals .cart_totals .wc-proceed-to-checkout .is-loading.checkout-button, .woocommerce-cart .woocommerce .cart-collaterals .cart_totals .wc-proceed-to-checkout .it-intro--fullwidth .is-loading.checkout-button, .it-intro--fullwidth .woocommerce-cart .woocommerce .return-to-shop .is-loading.button, .woocommerce-cart .woocommerce .return-to-shop .it-intro--fullwidth .is-loading.button, .it-intro--fullwidth .woocommerce.single-product #content div.product div.summary .cart .is-loading.button, .woocommerce.single-product #content div.product div.summary .cart .it-intro--fullwidth .is-loading.button, .it-intro--fullwidth .woocommerce-account .woocommerce button.is-loading[type=submit], .woocommerce-account .woocommerce .it-intro--fullwidth button.is-loading[type=submit],
.it-intro--fullwidth .woocommerce-account .woocommerce input.is-loading[type=submit],
.woocommerce-account .woocommerce .it-intro--fullwidth input.is-loading[type=submit],
.it-intro--fullwidth .woocommerce-account .woocommerce .is-loading.button,
.woocommerce-account .woocommerce .it-intro--fullwidth .is-loading.button,
.it-intro--fullwidth .woocommerce-checkout .woocommerce button.is-loading[type=submit],
.woocommerce-checkout .woocommerce .it-intro--fullwidth button.is-loading[type=submit],
.it-intro--fullwidth .woocommerce-checkout .woocommerce input.is-loading[type=submit],
.woocommerce-checkout .woocommerce .it-intro--fullwidth input.is-loading[type=submit],
.it-intro--fullwidth .woocommerce-checkout .woocommerce .is-loading.button,
.woocommerce-checkout .woocommerce .it-intro--fullwidth .is-loading.button, .has-bg-dark .woocommerce-cart .woocommerce .cart-collaterals .cart_totals .wc-proceed-to-checkout .is-disabled.checkout-button, .woocommerce-cart .woocommerce .cart-collaterals .cart_totals .wc-proceed-to-checkout .has-bg-dark .is-disabled.checkout-button, .has-bg-dark .woocommerce-cart .woocommerce .return-to-shop .is-disabled.button, .woocommerce-cart .woocommerce .return-to-shop .has-bg-dark .is-disabled.button, .has-bg-dark .woocommerce.single-product #content div.product div.summary .cart .is-disabled.button, .woocommerce.single-product #content div.product div.summary .cart .has-bg-dark .is-disabled.button, .has-bg-dark .woocommerce-account .woocommerce button.is-disabled[type=submit], .woocommerce-account .woocommerce .has-bg-dark button.is-disabled[type=submit],
.has-bg-dark .woocommerce-account .woocommerce input.is-disabled[type=submit],
.woocommerce-account .woocommerce .has-bg-dark input.is-disabled[type=submit],
.has-bg-dark .woocommerce-account .woocommerce .is-disabled.button,
.woocommerce-account .woocommerce .has-bg-dark .is-disabled.button,
.has-bg-dark .woocommerce-checkout .woocommerce button.is-disabled[type=submit],
.woocommerce-checkout .woocommerce .has-bg-dark button.is-disabled[type=submit],
.has-bg-dark .woocommerce-checkout .woocommerce input.is-disabled[type=submit],
.woocommerce-checkout .woocommerce .has-bg-dark input.is-disabled[type=submit],
.has-bg-dark .woocommerce-checkout .woocommerce .is-disabled.button,
.woocommerce-checkout .woocommerce .has-bg-dark .is-disabled.button, .has-bg-dark .woocommerce-cart .woocommerce .cart-collaterals .cart_totals .wc-proceed-to-checkout .is-loading.checkout-button, .woocommerce-cart .woocommerce .cart-collaterals .cart_totals .wc-proceed-to-checkout .has-bg-dark .is-loading.checkout-button, .has-bg-dark .woocommerce-cart .woocommerce .return-to-shop .is-loading.button, .woocommerce-cart .woocommerce .return-to-shop .has-bg-dark .is-loading.button, .has-bg-dark .woocommerce.single-product #content div.product div.summary .cart .is-loading.button, .woocommerce.single-product #content div.product div.summary .cart .has-bg-dark .is-loading.button, .has-bg-dark .woocommerce-account .woocommerce button.is-loading[type=submit], .woocommerce-account .woocommerce .has-bg-dark button.is-loading[type=submit],
.has-bg-dark .woocommerce-account .woocommerce input.is-loading[type=submit],
.woocommerce-account .woocommerce .has-bg-dark input.is-loading[type=submit],
.has-bg-dark .woocommerce-account .woocommerce .is-loading.button,
.woocommerce-account .woocommerce .has-bg-dark .is-loading.button,
.has-bg-dark .woocommerce-checkout .woocommerce button.is-loading[type=submit],
.woocommerce-checkout .woocommerce .has-bg-dark button.is-loading[type=submit],
.has-bg-dark .woocommerce-checkout .woocommerce input.is-loading[type=submit],
.woocommerce-checkout .woocommerce .has-bg-dark input.is-loading[type=submit],
.has-bg-dark .woocommerce-checkout .woocommerce .is-loading.button,
.woocommerce-checkout .woocommerce .has-bg-dark .is-loading.button {
  background-color: var(--it-color-border);
  border-color: var(--it-color-border);
}
.it-intro--fullwidth .woocommerce-cart .woocommerce .cart-collaterals .cart_totals .wc-proceed-to-checkout .is-disabled.checkout-button:focus-visible, .woocommerce-cart .woocommerce .cart-collaterals .cart_totals .wc-proceed-to-checkout .it-intro--fullwidth .is-disabled.checkout-button:focus-visible, .it-intro--fullwidth .woocommerce-cart .woocommerce .return-to-shop .is-disabled.button:focus-visible, .woocommerce-cart .woocommerce .return-to-shop .it-intro--fullwidth .is-disabled.button:focus-visible, .it-intro--fullwidth .woocommerce.single-product #content div.product div.summary .cart .is-disabled.button:focus-visible, .woocommerce.single-product #content div.product div.summary .cart .it-intro--fullwidth .is-disabled.button:focus-visible, .it-intro--fullwidth .woocommerce-account .woocommerce button.is-disabled[type=submit]:focus-visible, .woocommerce-account .woocommerce .it-intro--fullwidth button.is-disabled[type=submit]:focus-visible,
.it-intro--fullwidth .woocommerce-account .woocommerce input.is-disabled[type=submit]:focus-visible,
.woocommerce-account .woocommerce .it-intro--fullwidth input.is-disabled[type=submit]:focus-visible,
.it-intro--fullwidth .woocommerce-account .woocommerce .is-disabled.button:focus-visible,
.woocommerce-account .woocommerce .it-intro--fullwidth .is-disabled.button:focus-visible,
.it-intro--fullwidth .woocommerce-checkout .woocommerce button.is-disabled[type=submit]:focus-visible,
.woocommerce-checkout .woocommerce .it-intro--fullwidth button.is-disabled[type=submit]:focus-visible,
.it-intro--fullwidth .woocommerce-checkout .woocommerce input.is-disabled[type=submit]:focus-visible,
.woocommerce-checkout .woocommerce .it-intro--fullwidth input.is-disabled[type=submit]:focus-visible,
.it-intro--fullwidth .woocommerce-checkout .woocommerce .is-disabled.button:focus-visible,
.woocommerce-checkout .woocommerce .it-intro--fullwidth .is-disabled.button:focus-visible, .it-intro--fullwidth .woocommerce-cart .woocommerce .cart-collaterals .cart_totals .wc-proceed-to-checkout .is-loading.checkout-button:focus-visible, .woocommerce-cart .woocommerce .cart-collaterals .cart_totals .wc-proceed-to-checkout .it-intro--fullwidth .is-loading.checkout-button:focus-visible, .it-intro--fullwidth .woocommerce-cart .woocommerce .return-to-shop .is-loading.button:focus-visible, .woocommerce-cart .woocommerce .return-to-shop .it-intro--fullwidth .is-loading.button:focus-visible, .it-intro--fullwidth .woocommerce.single-product #content div.product div.summary .cart .is-loading.button:focus-visible, .woocommerce.single-product #content div.product div.summary .cart .it-intro--fullwidth .is-loading.button:focus-visible, .it-intro--fullwidth .woocommerce-account .woocommerce button.is-loading[type=submit]:focus-visible, .woocommerce-account .woocommerce .it-intro--fullwidth button.is-loading[type=submit]:focus-visible,
.it-intro--fullwidth .woocommerce-account .woocommerce input.is-loading[type=submit]:focus-visible,
.woocommerce-account .woocommerce .it-intro--fullwidth input.is-loading[type=submit]:focus-visible,
.it-intro--fullwidth .woocommerce-account .woocommerce .is-loading.button:focus-visible,
.woocommerce-account .woocommerce .it-intro--fullwidth .is-loading.button:focus-visible,
.it-intro--fullwidth .woocommerce-checkout .woocommerce button.is-loading[type=submit]:focus-visible,
.woocommerce-checkout .woocommerce .it-intro--fullwidth button.is-loading[type=submit]:focus-visible,
.it-intro--fullwidth .woocommerce-checkout .woocommerce input.is-loading[type=submit]:focus-visible,
.woocommerce-checkout .woocommerce .it-intro--fullwidth input.is-loading[type=submit]:focus-visible,
.it-intro--fullwidth .woocommerce-checkout .woocommerce .is-loading.button:focus-visible,
.woocommerce-checkout .woocommerce .it-intro--fullwidth .is-loading.button:focus-visible, .has-bg-dark .woocommerce-cart .woocommerce .cart-collaterals .cart_totals .wc-proceed-to-checkout .is-disabled.checkout-button:focus-visible, .woocommerce-cart .woocommerce .cart-collaterals .cart_totals .wc-proceed-to-checkout .has-bg-dark .is-disabled.checkout-button:focus-visible, .has-bg-dark .woocommerce-cart .woocommerce .return-to-shop .is-disabled.button:focus-visible, .woocommerce-cart .woocommerce .return-to-shop .has-bg-dark .is-disabled.button:focus-visible, .has-bg-dark .woocommerce.single-product #content div.product div.summary .cart .is-disabled.button:focus-visible, .woocommerce.single-product #content div.product div.summary .cart .has-bg-dark .is-disabled.button:focus-visible, .has-bg-dark .woocommerce-account .woocommerce button.is-disabled[type=submit]:focus-visible, .woocommerce-account .woocommerce .has-bg-dark button.is-disabled[type=submit]:focus-visible,
.has-bg-dark .woocommerce-account .woocommerce input.is-disabled[type=submit]:focus-visible,
.woocommerce-account .woocommerce .has-bg-dark input.is-disabled[type=submit]:focus-visible,
.has-bg-dark .woocommerce-account .woocommerce .is-disabled.button:focus-visible,
.woocommerce-account .woocommerce .has-bg-dark .is-disabled.button:focus-visible,
.has-bg-dark .woocommerce-checkout .woocommerce button.is-disabled[type=submit]:focus-visible,
.woocommerce-checkout .woocommerce .has-bg-dark button.is-disabled[type=submit]:focus-visible,
.has-bg-dark .woocommerce-checkout .woocommerce input.is-disabled[type=submit]:focus-visible,
.woocommerce-checkout .woocommerce .has-bg-dark input.is-disabled[type=submit]:focus-visible,
.has-bg-dark .woocommerce-checkout .woocommerce .is-disabled.button:focus-visible,
.woocommerce-checkout .woocommerce .has-bg-dark .is-disabled.button:focus-visible, .has-bg-dark .woocommerce-cart .woocommerce .cart-collaterals .cart_totals .wc-proceed-to-checkout .is-loading.checkout-button:focus-visible, .woocommerce-cart .woocommerce .cart-collaterals .cart_totals .wc-proceed-to-checkout .has-bg-dark .is-loading.checkout-button:focus-visible, .has-bg-dark .woocommerce-cart .woocommerce .return-to-shop .is-loading.button:focus-visible, .woocommerce-cart .woocommerce .return-to-shop .has-bg-dark .is-loading.button:focus-visible, .has-bg-dark .woocommerce.single-product #content div.product div.summary .cart .is-loading.button:focus-visible, .woocommerce.single-product #content div.product div.summary .cart .has-bg-dark .is-loading.button:focus-visible, .has-bg-dark .woocommerce-account .woocommerce button.is-loading[type=submit]:focus-visible, .woocommerce-account .woocommerce .has-bg-dark button.is-loading[type=submit]:focus-visible,
.has-bg-dark .woocommerce-account .woocommerce input.is-loading[type=submit]:focus-visible,
.woocommerce-account .woocommerce .has-bg-dark input.is-loading[type=submit]:focus-visible,
.has-bg-dark .woocommerce-account .woocommerce .is-loading.button:focus-visible,
.woocommerce-account .woocommerce .has-bg-dark .is-loading.button:focus-visible,
.has-bg-dark .woocommerce-checkout .woocommerce button.is-loading[type=submit]:focus-visible,
.woocommerce-checkout .woocommerce .has-bg-dark button.is-loading[type=submit]:focus-visible,
.has-bg-dark .woocommerce-checkout .woocommerce input.is-loading[type=submit]:focus-visible,
.woocommerce-checkout .woocommerce .has-bg-dark input.is-loading[type=submit]:focus-visible,
.has-bg-dark .woocommerce-checkout .woocommerce .is-loading.button:focus-visible,
.woocommerce-checkout .woocommerce .has-bg-dark .is-loading.button:focus-visible {
  outline-color: var(--it-color-border);
}
.woocommerce .woocommerce-error .button {
  border-color: var(--it-color-text);
  color: var(--it-color-text);
}
@media (hover: hover) {
  .woocommerce .woocommerce-error .button:hover {
    background-color: var(--it-color-white);
  }
}
@media (hover: none) {
  .woocommerce .woocommerce-error .button:active {
    background-color: var(--it-color-white);
  }
}
.woocommerce .woocommerce-error .is-disabled.button, .woocommerce .woocommerce-error .is-loading.button {
  pointer-events: none;
  background-color: var(--it-color-accent-greyed);
  border-color: var(--it-color-accent-greyed);
}
.woocommerce .woocommerce-error .is-disabled.button:focus-visible, .woocommerce .woocommerce-error .is-loading.button:focus-visible {
  outline-color: var(--it-color-accent-greyed);
}
@media (hover: hover) {
  .it-intro--fullwidth .woocommerce .woocommerce-error .button:hover, .woocommerce .woocommerce-error .it-intro--fullwidth .button:hover, .has-bg-dark .woocommerce .woocommerce-error .button:hover, .woocommerce .woocommerce-error .has-bg-dark .button:hover {
    color: var(--it-color-white);
    background-color: var(--it-color-brand);
    border-color: var(--it-color-white);
  }
}
@media (hover: none) {
  .it-intro--fullwidth .woocommerce .woocommerce-error .button:active, .woocommerce .woocommerce-error .it-intro--fullwidth .button:active, .has-bg-dark .woocommerce .woocommerce-error .button:active, .woocommerce .woocommerce-error .has-bg-dark .button:active {
    color: var(--it-color-white);
    background-color: var(--it-color-brand);
    border-color: var(--it-color-white);
  }
}
.woocommerce-cart .woocommerce form.woocommerce-cart-form tr:last-child .button, .woocommerce .woocommerce-message .button,
.woocommerce .woocommerce-message [role=button],
.woocommerce .woocommerce-info .button,
.woocommerce .woocommerce-info [role=button], .woocommerce ul.products li.product .button {
  background: transparent;
  border-color: var(--it-color-brand);
  color: var(--it-color-brand);
}
@media (hover: hover) {
  .woocommerce-cart .woocommerce form.woocommerce-cart-form tr:last-child .button:hover, .woocommerce .woocommerce-message .button:hover,
  .woocommerce .woocommerce-message [role=button]:hover,
  .woocommerce .woocommerce-info .button:hover,
  .woocommerce .woocommerce-info [role=button]:hover, .woocommerce ul.products li.product .button:hover {
    color: var(--it-color-white);
    background-color: var(--it-color-brand);
  }
}
@media (hover: none) {
  .woocommerce-cart .woocommerce form.woocommerce-cart-form tr:last-child .button:active, .woocommerce .woocommerce-message .button:active,
  .woocommerce .woocommerce-message [role=button]:active,
  .woocommerce .woocommerce-info .button:active,
  .woocommerce .woocommerce-info [role=button]:active, .woocommerce ul.products li.product .button:active {
    color: var(--it-color-white);
    background-color: var(--it-color-brand);
  }
}
.woocommerce-cart .woocommerce form.woocommerce-cart-form tr:last-child .button:focus-visible, .woocommerce .woocommerce-message .button:focus-visible,
.woocommerce .woocommerce-message [role=button]:focus-visible,
.woocommerce .woocommerce-info .button:focus-visible,
.woocommerce .woocommerce-info [role=button]:focus-visible, .woocommerce ul.products li.product .button:focus-visible {
  outline-color: var(--it-color-brand);
}
.woocommerce-cart .woocommerce form.woocommerce-cart-form tr:last-child .is-disabled.button, .woocommerce .woocommerce-message .is-disabled.button,
.woocommerce .woocommerce-message .is-disabled[role=button],
.woocommerce .woocommerce-info .is-disabled.button,
.woocommerce .woocommerce-info .is-disabled[role=button], .woocommerce ul.products li.product .is-disabled.button, .woocommerce-cart .woocommerce form.woocommerce-cart-form tr:last-child .is-loading.button, .woocommerce .woocommerce-message .is-loading.button,
.woocommerce .woocommerce-message .is-loading[role=button],
.woocommerce .woocommerce-info .is-loading.button,
.woocommerce .woocommerce-info .is-loading[role=button], .woocommerce ul.products li.product .is-loading.button {
  pointer-events: none;
  color: var(--it-color-brand-greyed);
  border-color: var(--it-color-brand-greyed);
  background-color: var(--it-color-background);
}
.woocommerce-cart .woocommerce form.woocommerce-cart-form tr:last-child .is-disabled.button:focus-visible, .woocommerce .woocommerce-message .is-disabled.button:focus-visible,
.woocommerce .woocommerce-message .is-disabled[role=button]:focus-visible,
.woocommerce .woocommerce-info .is-disabled.button:focus-visible,
.woocommerce .woocommerce-info .is-disabled[role=button]:focus-visible, .woocommerce ul.products li.product .is-disabled.button:focus-visible, .woocommerce-cart .woocommerce form.woocommerce-cart-form tr:last-child .is-loading.button:focus-visible, .woocommerce .woocommerce-message .is-loading.button:focus-visible,
.woocommerce .woocommerce-message .is-loading[role=button]:focus-visible,
.woocommerce .woocommerce-info .is-loading.button:focus-visible,
.woocommerce .woocommerce-info .is-loading[role=button]:focus-visible, .woocommerce ul.products li.product .is-loading.button:focus-visible {
  outline-color: var(--it-color-brand-greyed);
}
.it-intro--fullwidth .woocommerce-cart .woocommerce form.woocommerce-cart-form tr:last-child .button, .woocommerce-cart .woocommerce form.woocommerce-cart-form tr:last-child .it-intro--fullwidth .button, .it-intro--fullwidth .woocommerce .woocommerce-message .button, .woocommerce .woocommerce-message .it-intro--fullwidth .button,
.it-intro--fullwidth .woocommerce .woocommerce-message [role=button],
.woocommerce .woocommerce-message .it-intro--fullwidth [role=button],
.it-intro--fullwidth .woocommerce .woocommerce-info .button,
.woocommerce .woocommerce-info .it-intro--fullwidth .button,
.it-intro--fullwidth .woocommerce .woocommerce-info [role=button],
.woocommerce .woocommerce-info .it-intro--fullwidth [role=button], .it-intro--fullwidth .woocommerce ul.products li.product .button, .woocommerce ul.products li.product .it-intro--fullwidth .button, .has-bg-dark .woocommerce-cart .woocommerce form.woocommerce-cart-form tr:last-child .button, .woocommerce-cart .woocommerce form.woocommerce-cart-form tr:last-child .has-bg-dark .button, .has-bg-dark .woocommerce .woocommerce-message .button, .woocommerce .woocommerce-message .has-bg-dark .button,
.has-bg-dark .woocommerce .woocommerce-message [role=button],
.woocommerce .woocommerce-message .has-bg-dark [role=button],
.has-bg-dark .woocommerce .woocommerce-info .button,
.woocommerce .woocommerce-info .has-bg-dark .button,
.has-bg-dark .woocommerce .woocommerce-info [role=button],
.woocommerce .woocommerce-info .has-bg-dark [role=button], .has-bg-dark .woocommerce ul.products li.product .button, .woocommerce ul.products li.product .has-bg-dark .button {
  border-color: var(--it-color-white);
  color: var(--it-color-white);
}
@media (hover: hover) {
  .it-intro--fullwidth .woocommerce-cart .woocommerce form.woocommerce-cart-form tr:last-child .button:hover, .woocommerce-cart .woocommerce form.woocommerce-cart-form tr:last-child .it-intro--fullwidth .button:hover, .it-intro--fullwidth .woocommerce .woocommerce-message .button:hover, .woocommerce .woocommerce-message .it-intro--fullwidth .button:hover,
  .it-intro--fullwidth .woocommerce .woocommerce-message [role=button]:hover,
  .woocommerce .woocommerce-message .it-intro--fullwidth [role=button]:hover,
  .it-intro--fullwidth .woocommerce .woocommerce-info .button:hover,
  .woocommerce .woocommerce-info .it-intro--fullwidth .button:hover,
  .it-intro--fullwidth .woocommerce .woocommerce-info [role=button]:hover,
  .woocommerce .woocommerce-info .it-intro--fullwidth [role=button]:hover, .it-intro--fullwidth .woocommerce ul.products li.product .button:hover, .woocommerce ul.products li.product .it-intro--fullwidth .button:hover, .has-bg-dark .woocommerce-cart .woocommerce form.woocommerce-cart-form tr:last-child .button:hover, .woocommerce-cart .woocommerce form.woocommerce-cart-form tr:last-child .has-bg-dark .button:hover, .has-bg-dark .woocommerce .woocommerce-message .button:hover, .woocommerce .woocommerce-message .has-bg-dark .button:hover,
  .has-bg-dark .woocommerce .woocommerce-message [role=button]:hover,
  .woocommerce .woocommerce-message .has-bg-dark [role=button]:hover,
  .has-bg-dark .woocommerce .woocommerce-info .button:hover,
  .woocommerce .woocommerce-info .has-bg-dark .button:hover,
  .has-bg-dark .woocommerce .woocommerce-info [role=button]:hover,
  .woocommerce .woocommerce-info .has-bg-dark [role=button]:hover, .has-bg-dark .woocommerce ul.products li.product .button:hover, .woocommerce ul.products li.product .has-bg-dark .button:hover {
    color: var(--it-color-brand);
    background-color: var(--it-color-white);
  }
}
@media (hover: none) {
  .it-intro--fullwidth .woocommerce-cart .woocommerce form.woocommerce-cart-form tr:last-child .button:active, .woocommerce-cart .woocommerce form.woocommerce-cart-form tr:last-child .it-intro--fullwidth .button:active, .it-intro--fullwidth .woocommerce .woocommerce-message .button:active, .woocommerce .woocommerce-message .it-intro--fullwidth .button:active,
  .it-intro--fullwidth .woocommerce .woocommerce-message [role=button]:active,
  .woocommerce .woocommerce-message .it-intro--fullwidth [role=button]:active,
  .it-intro--fullwidth .woocommerce .woocommerce-info .button:active,
  .woocommerce .woocommerce-info .it-intro--fullwidth .button:active,
  .it-intro--fullwidth .woocommerce .woocommerce-info [role=button]:active,
  .woocommerce .woocommerce-info .it-intro--fullwidth [role=button]:active, .it-intro--fullwidth .woocommerce ul.products li.product .button:active, .woocommerce ul.products li.product .it-intro--fullwidth .button:active, .has-bg-dark .woocommerce-cart .woocommerce form.woocommerce-cart-form tr:last-child .button:active, .woocommerce-cart .woocommerce form.woocommerce-cart-form tr:last-child .has-bg-dark .button:active, .has-bg-dark .woocommerce .woocommerce-message .button:active, .woocommerce .woocommerce-message .has-bg-dark .button:active,
  .has-bg-dark .woocommerce .woocommerce-message [role=button]:active,
  .woocommerce .woocommerce-message .has-bg-dark [role=button]:active,
  .has-bg-dark .woocommerce .woocommerce-info .button:active,
  .woocommerce .woocommerce-info .has-bg-dark .button:active,
  .has-bg-dark .woocommerce .woocommerce-info [role=button]:active,
  .woocommerce .woocommerce-info .has-bg-dark [role=button]:active, .has-bg-dark .woocommerce ul.products li.product .button:active, .woocommerce ul.products li.product .has-bg-dark .button:active {
    color: var(--it-color-brand);
    background-color: var(--it-color-white);
  }
}
.it-intro--fullwidth .woocommerce-cart .woocommerce form.woocommerce-cart-form tr:last-child .button:focus-visible, .woocommerce-cart .woocommerce form.woocommerce-cart-form tr:last-child .it-intro--fullwidth .button:focus-visible, .it-intro--fullwidth .woocommerce .woocommerce-message .button:focus-visible, .woocommerce .woocommerce-message .it-intro--fullwidth .button:focus-visible,
.it-intro--fullwidth .woocommerce .woocommerce-message [role=button]:focus-visible,
.woocommerce .woocommerce-message .it-intro--fullwidth [role=button]:focus-visible,
.it-intro--fullwidth .woocommerce .woocommerce-info .button:focus-visible,
.woocommerce .woocommerce-info .it-intro--fullwidth .button:focus-visible,
.it-intro--fullwidth .woocommerce .woocommerce-info [role=button]:focus-visible,
.woocommerce .woocommerce-info .it-intro--fullwidth [role=button]:focus-visible, .it-intro--fullwidth .woocommerce ul.products li.product .button:focus-visible, .woocommerce ul.products li.product .it-intro--fullwidth .button:focus-visible, .has-bg-dark .woocommerce-cart .woocommerce form.woocommerce-cart-form tr:last-child .button:focus-visible, .woocommerce-cart .woocommerce form.woocommerce-cart-form tr:last-child .has-bg-dark .button:focus-visible, .has-bg-dark .woocommerce .woocommerce-message .button:focus-visible, .woocommerce .woocommerce-message .has-bg-dark .button:focus-visible,
.has-bg-dark .woocommerce .woocommerce-message [role=button]:focus-visible,
.woocommerce .woocommerce-message .has-bg-dark [role=button]:focus-visible,
.has-bg-dark .woocommerce .woocommerce-info .button:focus-visible,
.woocommerce .woocommerce-info .has-bg-dark .button:focus-visible,
.has-bg-dark .woocommerce .woocommerce-info [role=button]:focus-visible,
.woocommerce .woocommerce-info .has-bg-dark [role=button]:focus-visible, .has-bg-dark .woocommerce ul.products li.product .button:focus-visible, .woocommerce ul.products li.product .has-bg-dark .button:focus-visible {
  outline-color: var(--it-color-white);
}
.it-intro--fullwidth .woocommerce-cart .woocommerce form.woocommerce-cart-form tr:last-child .is-disabled.button, .woocommerce-cart .woocommerce form.woocommerce-cart-form tr:last-child .it-intro--fullwidth .is-disabled.button, .it-intro--fullwidth .woocommerce .woocommerce-message .is-disabled.button, .woocommerce .woocommerce-message .it-intro--fullwidth .is-disabled.button,
.it-intro--fullwidth .woocommerce .woocommerce-message .is-disabled[role=button],
.woocommerce .woocommerce-message .it-intro--fullwidth .is-disabled[role=button],
.it-intro--fullwidth .woocommerce .woocommerce-info .is-disabled.button,
.woocommerce .woocommerce-info .it-intro--fullwidth .is-disabled.button,
.it-intro--fullwidth .woocommerce .woocommerce-info .is-disabled[role=button],
.woocommerce .woocommerce-info .it-intro--fullwidth .is-disabled[role=button], .it-intro--fullwidth .woocommerce ul.products li.product .is-disabled.button, .woocommerce ul.products li.product .it-intro--fullwidth .is-disabled.button, .it-intro--fullwidth .woocommerce-cart .woocommerce form.woocommerce-cart-form tr:last-child .is-loading.button, .woocommerce-cart .woocommerce form.woocommerce-cart-form tr:last-child .it-intro--fullwidth .is-loading.button, .it-intro--fullwidth .woocommerce .woocommerce-message .is-loading.button, .woocommerce .woocommerce-message .it-intro--fullwidth .is-loading.button,
.it-intro--fullwidth .woocommerce .woocommerce-message .is-loading[role=button],
.woocommerce .woocommerce-message .it-intro--fullwidth .is-loading[role=button],
.it-intro--fullwidth .woocommerce .woocommerce-info .is-loading.button,
.woocommerce .woocommerce-info .it-intro--fullwidth .is-loading.button,
.it-intro--fullwidth .woocommerce .woocommerce-info .is-loading[role=button],
.woocommerce .woocommerce-info .it-intro--fullwidth .is-loading[role=button], .it-intro--fullwidth .woocommerce ul.products li.product .is-loading.button, .woocommerce ul.products li.product .it-intro--fullwidth .is-loading.button, .has-bg-dark .woocommerce-cart .woocommerce form.woocommerce-cart-form tr:last-child .is-disabled.button, .woocommerce-cart .woocommerce form.woocommerce-cart-form tr:last-child .has-bg-dark .is-disabled.button, .has-bg-dark .woocommerce .woocommerce-message .is-disabled.button, .woocommerce .woocommerce-message .has-bg-dark .is-disabled.button,
.has-bg-dark .woocommerce .woocommerce-message .is-disabled[role=button],
.woocommerce .woocommerce-message .has-bg-dark .is-disabled[role=button],
.has-bg-dark .woocommerce .woocommerce-info .is-disabled.button,
.woocommerce .woocommerce-info .has-bg-dark .is-disabled.button,
.has-bg-dark .woocommerce .woocommerce-info .is-disabled[role=button],
.woocommerce .woocommerce-info .has-bg-dark .is-disabled[role=button], .has-bg-dark .woocommerce ul.products li.product .is-disabled.button, .woocommerce ul.products li.product .has-bg-dark .is-disabled.button, .has-bg-dark .woocommerce-cart .woocommerce form.woocommerce-cart-form tr:last-child .is-loading.button, .woocommerce-cart .woocommerce form.woocommerce-cart-form tr:last-child .has-bg-dark .is-loading.button, .has-bg-dark .woocommerce .woocommerce-message .is-loading.button, .woocommerce .woocommerce-message .has-bg-dark .is-loading.button,
.has-bg-dark .woocommerce .woocommerce-message .is-loading[role=button],
.woocommerce .woocommerce-message .has-bg-dark .is-loading[role=button],
.has-bg-dark .woocommerce .woocommerce-info .is-loading.button,
.woocommerce .woocommerce-info .has-bg-dark .is-loading.button,
.has-bg-dark .woocommerce .woocommerce-info .is-loading[role=button],
.woocommerce .woocommerce-info .has-bg-dark .is-loading[role=button], .has-bg-dark .woocommerce ul.products li.product .is-loading.button, .woocommerce ul.products li.product .has-bg-dark .is-loading.button {
  color: var(--it-color-brand-greyed);
  border-color: var(--it-color-brand-greyed);
  background-color: var(--it-color-background);
}
.it-intro--fullwidth .woocommerce-cart .woocommerce form.woocommerce-cart-form tr:last-child .is-disabled.button:focus-visible, .woocommerce-cart .woocommerce form.woocommerce-cart-form tr:last-child .it-intro--fullwidth .is-disabled.button:focus-visible, .it-intro--fullwidth .woocommerce .woocommerce-message .is-disabled.button:focus-visible, .woocommerce .woocommerce-message .it-intro--fullwidth .is-disabled.button:focus-visible,
.it-intro--fullwidth .woocommerce .woocommerce-message .is-disabled[role=button]:focus-visible,
.woocommerce .woocommerce-message .it-intro--fullwidth .is-disabled[role=button]:focus-visible,
.it-intro--fullwidth .woocommerce .woocommerce-info .is-disabled.button:focus-visible,
.woocommerce .woocommerce-info .it-intro--fullwidth .is-disabled.button:focus-visible,
.it-intro--fullwidth .woocommerce .woocommerce-info .is-disabled[role=button]:focus-visible,
.woocommerce .woocommerce-info .it-intro--fullwidth .is-disabled[role=button]:focus-visible, .it-intro--fullwidth .woocommerce ul.products li.product .is-disabled.button:focus-visible, .woocommerce ul.products li.product .it-intro--fullwidth .is-disabled.button:focus-visible, .it-intro--fullwidth .woocommerce-cart .woocommerce form.woocommerce-cart-form tr:last-child .is-loading.button:focus-visible, .woocommerce-cart .woocommerce form.woocommerce-cart-form tr:last-child .it-intro--fullwidth .is-loading.button:focus-visible, .it-intro--fullwidth .woocommerce .woocommerce-message .is-loading.button:focus-visible, .woocommerce .woocommerce-message .it-intro--fullwidth .is-loading.button:focus-visible,
.it-intro--fullwidth .woocommerce .woocommerce-message .is-loading[role=button]:focus-visible,
.woocommerce .woocommerce-message .it-intro--fullwidth .is-loading[role=button]:focus-visible,
.it-intro--fullwidth .woocommerce .woocommerce-info .is-loading.button:focus-visible,
.woocommerce .woocommerce-info .it-intro--fullwidth .is-loading.button:focus-visible,
.it-intro--fullwidth .woocommerce .woocommerce-info .is-loading[role=button]:focus-visible,
.woocommerce .woocommerce-info .it-intro--fullwidth .is-loading[role=button]:focus-visible, .it-intro--fullwidth .woocommerce ul.products li.product .is-loading.button:focus-visible, .woocommerce ul.products li.product .it-intro--fullwidth .is-loading.button:focus-visible, .has-bg-dark .woocommerce-cart .woocommerce form.woocommerce-cart-form tr:last-child .is-disabled.button:focus-visible, .woocommerce-cart .woocommerce form.woocommerce-cart-form tr:last-child .has-bg-dark .is-disabled.button:focus-visible, .has-bg-dark .woocommerce .woocommerce-message .is-disabled.button:focus-visible, .woocommerce .woocommerce-message .has-bg-dark .is-disabled.button:focus-visible,
.has-bg-dark .woocommerce .woocommerce-message .is-disabled[role=button]:focus-visible,
.woocommerce .woocommerce-message .has-bg-dark .is-disabled[role=button]:focus-visible,
.has-bg-dark .woocommerce .woocommerce-info .is-disabled.button:focus-visible,
.woocommerce .woocommerce-info .has-bg-dark .is-disabled.button:focus-visible,
.has-bg-dark .woocommerce .woocommerce-info .is-disabled[role=button]:focus-visible,
.woocommerce .woocommerce-info .has-bg-dark .is-disabled[role=button]:focus-visible, .has-bg-dark .woocommerce ul.products li.product .is-disabled.button:focus-visible, .woocommerce ul.products li.product .has-bg-dark .is-disabled.button:focus-visible, .has-bg-dark .woocommerce-cart .woocommerce form.woocommerce-cart-form tr:last-child .is-loading.button:focus-visible, .woocommerce-cart .woocommerce form.woocommerce-cart-form tr:last-child .has-bg-dark .is-loading.button:focus-visible, .has-bg-dark .woocommerce .woocommerce-message .is-loading.button:focus-visible, .woocommerce .woocommerce-message .has-bg-dark .is-loading.button:focus-visible,
.has-bg-dark .woocommerce .woocommerce-message .is-loading[role=button]:focus-visible,
.woocommerce .woocommerce-message .has-bg-dark .is-loading[role=button]:focus-visible,
.has-bg-dark .woocommerce .woocommerce-info .is-loading.button:focus-visible,
.woocommerce .woocommerce-info .has-bg-dark .is-loading.button:focus-visible,
.has-bg-dark .woocommerce .woocommerce-info .is-loading[role=button]:focus-visible,
.woocommerce .woocommerce-info .has-bg-dark .is-loading[role=button]:focus-visible, .has-bg-dark .woocommerce ul.products li.product .is-loading.button:focus-visible, .woocommerce ul.products li.product .has-bg-dark .is-loading.button:focus-visible {
  outline-color: var(--it-color-brand-greyed);
}
.woocommerce-account .woocommerce-Address-title .edit, .woocommerce.single-product #content div.product.product-type-variable div.summary .cart .variations .reset_variations {
  padding: 0;
  border: none;
  background: transparent;
  align-items: center;
  color: var(--it-color-brand);
  display: inline-flex;
  border-radius: 0;
  transition: color var(--it-transition);
}
.woocommerce-account .woocommerce-Address-title .edit:not(.is-loading):after, .woocommerce.single-product #content div.product.product-type-variable div.summary .cart .variations .reset_variations:not(.is-loading):after {
  content: "";
  line-height: 0;
  width: 1.125rem;
  height: 1.125rem;
  transition: transform var(--it-transition);
  -webkit-mask: url("data:image/svg+xml,%3Csvg width='18' height='18' viewBox='0 0 18 18' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M8.84475 4.34475C8.77504 4.41434 8.71974 4.497 8.682 4.58798C8.64427 4.67897 8.62485 4.7765 8.62485 4.875C8.62485 4.9735 8.64427 5.07104 8.682 5.16202C8.71974 5.25301 8.77504 5.33566 8.84475 5.40525L11.6895 8.25H4.5C4.30109 8.25 4.11032 8.32902 3.96967 8.46967C3.82902 8.61032 3.75 8.80109 3.75 9C3.75 9.19891 3.82902 9.38968 3.96967 9.53033C4.11032 9.67098 4.30109 9.75 4.5 9.75H11.6895L8.84475 12.5948C8.77504 12.6643 8.71974 12.747 8.682 12.838C8.64427 12.929 8.62485 13.0265 8.62485 13.125C8.62485 13.2235 8.64427 13.321 8.682 13.412C8.71974 13.503 8.77504 13.5857 8.84475 13.6553C9.13725 13.9478 9.61275 13.9478 9.906 13.6553L14.0302 9.53025C14.1661 9.39495 14.2447 9.21265 14.25 9.021V8.97825C14.2446 8.78685 14.166 8.60482 14.0302 8.46975L9.906 4.34475C9.83634 4.27502 9.75363 4.2197 9.66258 4.18196C9.57153 4.14421 9.47394 4.12479 9.37537 4.12479C9.27681 4.12479 9.17922 4.14421 9.08817 4.18196C8.99712 4.2197 8.9144 4.27502 8.84475 4.34475Z' fill='%2325445A'/%3E%3C/svg%3E%0A") no-repeat center;
          mask: url("data:image/svg+xml,%3Csvg width='18' height='18' viewBox='0 0 18 18' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M8.84475 4.34475C8.77504 4.41434 8.71974 4.497 8.682 4.58798C8.64427 4.67897 8.62485 4.7765 8.62485 4.875C8.62485 4.9735 8.64427 5.07104 8.682 5.16202C8.71974 5.25301 8.77504 5.33566 8.84475 5.40525L11.6895 8.25H4.5C4.30109 8.25 4.11032 8.32902 3.96967 8.46967C3.82902 8.61032 3.75 8.80109 3.75 9C3.75 9.19891 3.82902 9.38968 3.96967 9.53033C4.11032 9.67098 4.30109 9.75 4.5 9.75H11.6895L8.84475 12.5948C8.77504 12.6643 8.71974 12.747 8.682 12.838C8.64427 12.929 8.62485 13.0265 8.62485 13.125C8.62485 13.2235 8.64427 13.321 8.682 13.412C8.71974 13.503 8.77504 13.5857 8.84475 13.6553C9.13725 13.9478 9.61275 13.9478 9.906 13.6553L14.0302 9.53025C14.1661 9.39495 14.2447 9.21265 14.25 9.021V8.97825C14.2446 8.78685 14.166 8.60482 14.0302 8.46975L9.906 4.34475C9.83634 4.27502 9.75363 4.2197 9.66258 4.18196C9.57153 4.14421 9.47394 4.12479 9.37537 4.12479C9.27681 4.12479 9.17922 4.14421 9.08817 4.18196C8.99712 4.2197 8.9144 4.27502 8.84475 4.34475Z' fill='%2325445A'/%3E%3C/svg%3E%0A") no-repeat center;
  -webkit-mask-size: contain;
          mask-size: contain;
  background-color: currentcolor;
}
.woocommerce-account .woocommerce-Address-title .edit:not(.is-loading):hover:after, .woocommerce.single-product #content div.product.product-type-variable div.summary .cart .variations .reset_variations:not(.is-loading):hover:after {
  transform: translateX(0.375rem);
}
.woocommerce-account .woocommerce-Address-title .edit:focus-visible, .woocommerce.single-product #content div.product.product-type-variable div.summary .cart .variations .reset_variations:focus-visible {
  outline: none;
}
.woocommerce-account .woocommerce-Address-title .edit:focus-visible:before, .woocommerce.single-product #content div.product.product-type-variable div.summary .cart .variations .reset_variations:focus-visible:before {
  content: "";
  width: calc(100% - 1.625rem);
  height: 2px;
  background: var(--it-color-brand);
  position: absolute;
  left: 0;
  bottom: 0;
}
.woocommerce-account .woocommerce-Address-title .is-disabled.edit, .woocommerce.single-product #content div.product.product-type-variable div.summary .cart .variations .is-disabled.reset_variations, .woocommerce-account .woocommerce-Address-title .is-loading.edit, .woocommerce.single-product #content div.product.product-type-variable div.summary .cart .variations .is-loading.reset_variations {
  pointer-events: none;
}
.woocommerce-account .woocommerce-Address-title .is-disabled.edit:not(.is-loading), .woocommerce.single-product #content div.product.product-type-variable div.summary .cart .variations .is-disabled.reset_variations:not(.is-loading), .woocommerce-account .woocommerce-Address-title .is-loading.edit:not(.is-loading), .woocommerce.single-product #content div.product.product-type-variable div.summary .cart .variations .is-loading.reset_variations:not(.is-loading) {
  color: var(--it-color-border);
}
.woocommerce-account .woocommerce-Address-title .is-disabled.edit:not(.is-loading):focus-visible:before, .woocommerce.single-product #content div.product.product-type-variable div.summary .cart .variations .is-disabled.reset_variations:not(.is-loading):focus-visible:before, .woocommerce-account .woocommerce-Address-title .is-loading.edit:not(.is-loading):focus-visible:before, .woocommerce.single-product #content div.product.product-type-variable div.summary .cart .variations .is-loading.reset_variations:not(.is-loading):focus-visible:before {
  background-color: var(--it-color-border);
}
.it-intro--fullwidth .woocommerce-account .woocommerce-Address-title .edit, .woocommerce-account .woocommerce-Address-title .it-intro--fullwidth .edit, .it-intro--fullwidth .woocommerce.single-product #content div.product.product-type-variable div.summary .cart .variations .reset_variations, .woocommerce.single-product #content div.product.product-type-variable div.summary .cart .variations .it-intro--fullwidth .reset_variations, .has-bg-dark .woocommerce-account .woocommerce-Address-title .edit, .woocommerce-account .woocommerce-Address-title .has-bg-dark .edit, .has-bg-dark .woocommerce.single-product #content div.product.product-type-variable div.summary .cart .variations .reset_variations, .woocommerce.single-product #content div.product.product-type-variable div.summary .cart .variations .has-bg-dark .reset_variations {
  color: var(--it-color-white);
}
.it-intro--fullwidth .woocommerce-account .woocommerce-Address-title .edit:focus-visible:before, .woocommerce-account .woocommerce-Address-title .it-intro--fullwidth .edit:focus-visible:before, .it-intro--fullwidth .woocommerce.single-product #content div.product.product-type-variable div.summary .cart .variations .reset_variations:focus-visible:before, .woocommerce.single-product #content div.product.product-type-variable div.summary .cart .variations .it-intro--fullwidth .reset_variations:focus-visible:before, .has-bg-dark .woocommerce-account .woocommerce-Address-title .edit:focus-visible:before, .woocommerce-account .woocommerce-Address-title .has-bg-dark .edit:focus-visible:before, .has-bg-dark .woocommerce.single-product #content div.product.product-type-variable div.summary .cart .variations .reset_variations:focus-visible:before, .woocommerce.single-product #content div.product.product-type-variable div.summary .cart .variations .has-bg-dark .reset_variations:focus-visible:before {
  background: var(--it-color-white);
}
.button,
.wc-block-components-button, .woocommerce-account .woocommerce-Address-title .edit, .woocommerce.single-product #content div.product.product-type-variable div.summary .cart .variations .reset_variations, .woocommerce-cart .woocommerce form.woocommerce-cart-form tr:last-child .button, .woocommerce .woocommerce-message .button,
.woocommerce .woocommerce-message [role=button],
.woocommerce .woocommerce-info .button,
.woocommerce .woocommerce-info [role=button], .woocommerce ul.products li.product .button, .woocommerce .woocommerce-error .button, .woocommerce-cart .woocommerce .cart-collaterals .cart_totals .wc-proceed-to-checkout .checkout-button, .woocommerce-cart .woocommerce .return-to-shop .button, .woocommerce.single-product #content div.product div.summary .cart .button, .woocommerce-account .woocommerce button[type=submit],
.woocommerce-account .woocommerce input[type=submit],
.woocommerce-account .woocommerce .button,
.woocommerce-checkout .woocommerce button[type=submit],
.woocommerce-checkout .woocommerce input[type=submit],
.woocommerce-checkout .woocommerce .button, .woocommerce-account .woocommerce section .button,
.woocommerce-checkout .woocommerce section .button {
  /* -- Button sizes -- */
}
.woocommerce.single-product #content div.product.product-type-variable div.summary .cart .variations .reset_variations, .woocommerce.single-product #content div.product div.summary .cart .button, .buy-now, .woocommerce-account .woocommerce table .button,
.woocommerce-checkout .woocommerce table .button, .woocommerce .woocommerce-error .button, .woocommerce .woocommerce-message .button,
.woocommerce .woocommerce-message [role=button],
.woocommerce .woocommerce-info .button,
.woocommerce .woocommerce-info [role=button], .woosw-list table.woosw-items tr.woosw-item .woosw-item--actions .button {
  text-transform: none;
  font-size: var(--it-size-x-small);
  letter-spacing: 0.1em;
}
.woocommerce.single-product #content div.product.product-type-variable div.summary .cart .variations .reset_variations:not(.it-button--tertiary), .woocommerce.single-product #content div.product div.summary .cart .button:not(.it-button--tertiary), .buy-now:not(.it-button--tertiary), .woocommerce-account .woocommerce table .button:not(.it-button--tertiary),
.woocommerce-checkout .woocommerce table .button:not(.it-button--tertiary), .woocommerce .woocommerce-error .button:not(.it-button--tertiary), .woocommerce .woocommerce-message .button:not(.it-button--tertiary),
.woocommerce .woocommerce-message [role=button]:not(.it-button--tertiary),
.woocommerce .woocommerce-info .button:not(.it-button--tertiary),
.woocommerce .woocommerce-info [role=button]:not(.it-button--tertiary), .woosw-list table.woosw-items tr.woosw-item .woosw-item--actions .button:not(.it-button--tertiary) {
  padding: 0.5rem 1.75rem;
}
.woocommerce.single-product #content div.product.product-type-variable div.summary .cart .variations .is-loading.reset_variations:after, .woocommerce.single-product #content div.product div.summary .cart .is-loading.button:after, .is-loading.buy-now:after, .woocommerce-account .woocommerce table .is-loading.button:after,
.woocommerce-checkout .woocommerce table .is-loading.button:after, .woocommerce .woocommerce-error .is-loading.button:after, .woocommerce .woocommerce-message .is-loading.button:after,
.woocommerce .woocommerce-message .is-loading[role=button]:after,
.woocommerce .woocommerce-info .is-loading.button:after,
.woocommerce .woocommerce-info .is-loading[role=button]:after, .woosw-list table.woosw-items tr.woosw-item .woosw-item--actions .is-loading.button:after {
  width: 1rem;
  background: radial-gradient(farthest-side, currentColor 94%, rgba(0, 0, 0, 0)) top/2px 2px no-repeat, conic-gradient(rgba(0, 0, 0, 0) 30%, currentColor);
  -webkit-mask: radial-gradient(farthest-side, transparent calc(100% - 2px), #000 0);
}
.button,
.wc-block-components-button, .woocommerce-account .woocommerce-Address-title .edit, .woocommerce.single-product #content div.product.product-type-variable div.summary .cart .variations .reset_variations, .woocommerce-cart .woocommerce form.woocommerce-cart-form tr:last-child .button, .woocommerce .woocommerce-message .button,
.woocommerce .woocommerce-message [role=button],
.woocommerce .woocommerce-info .button,
.woocommerce .woocommerce-info [role=button], .woocommerce ul.products li.product .button, .woocommerce .woocommerce-error .button, .woocommerce-cart .woocommerce .cart-collaterals .cart_totals .wc-proceed-to-checkout .checkout-button, .woocommerce-cart .woocommerce .return-to-shop .button, .woocommerce.single-product #content div.product div.summary .cart .button, .woocommerce-account .woocommerce button[type=submit],
.woocommerce-account .woocommerce input[type=submit],
.woocommerce-account .woocommerce .button,
.woocommerce-checkout .woocommerce button[type=submit],
.woocommerce-checkout .woocommerce input[type=submit],
.woocommerce-checkout .woocommerce .button, .woocommerce-account .woocommerce section .button,
.woocommerce-checkout .woocommerce section .button {
  /* -- Full width on mobile -- */
}
.button:not(.it-button--tertiary):not(.has-icon),
.wc-block-components-button:not(.it-button--tertiary):not(.has-icon), .woocommerce-cart .woocommerce .cart-collaterals .cart_totals .wc-proceed-to-checkout .checkout-button:not(.it-button--tertiary):not(.has-icon), .woocommerce-cart .woocommerce .return-to-shop .button:not(.it-button--tertiary):not(.has-icon), .woocommerce.single-product #content div.product div.summary .cart .button:not(.it-button--tertiary):not(.has-icon), .woocommerce-account .woocommerce button[type=submit]:not(.it-button--tertiary):not(.has-icon),
.woocommerce-account .woocommerce input[type=submit]:not(.it-button--tertiary):not(.has-icon),
.woocommerce-account .woocommerce .button:not(.it-button--tertiary):not(.has-icon),
.woocommerce-checkout .woocommerce button[type=submit]:not(.it-button--tertiary):not(.has-icon),
.woocommerce-checkout .woocommerce input[type=submit]:not(.it-button--tertiary):not(.has-icon),
.woocommerce-checkout .woocommerce .button:not(.it-button--tertiary):not(.has-icon), .woocommerce-cart .woocommerce form.woocommerce-cart-form tr:last-child .button:not(.it-button--tertiary):not(.has-icon),
.woocommerce .woocommerce-message [role=button]:not(.it-button--tertiary):not(.has-icon),
.woocommerce .woocommerce-info [role=button]:not(.it-button--tertiary):not(.has-icon), .woocommerce ul.products li.product .button:not(.it-button--tertiary):not(.has-icon), .woocommerce-account .woocommerce-Address-title .edit:not(.it-button--tertiary):not(.has-icon), .woocommerce.single-product #content div.product.product-type-variable div.summary .cart .variations .reset_variations:not(.it-button--tertiary):not(.has-icon) {
  width: 100%;
}
@media (min-width: 480px) {
  .button:not(.it-button--tertiary):not(.has-icon),
  .wc-block-components-button:not(.it-button--tertiary):not(.has-icon), .woocommerce-cart .woocommerce .cart-collaterals .cart_totals .wc-proceed-to-checkout .checkout-button:not(.it-button--tertiary):not(.has-icon), .woocommerce-cart .woocommerce .return-to-shop .button:not(.it-button--tertiary):not(.has-icon), .woocommerce.single-product #content div.product div.summary .cart .button:not(.it-button--tertiary):not(.has-icon), .woocommerce-account .woocommerce button[type=submit]:not(.it-button--tertiary):not(.has-icon),
  .woocommerce-account .woocommerce input[type=submit]:not(.it-button--tertiary):not(.has-icon),
  .woocommerce-account .woocommerce .button:not(.it-button--tertiary):not(.has-icon),
  .woocommerce-checkout .woocommerce button[type=submit]:not(.it-button--tertiary):not(.has-icon),
  .woocommerce-checkout .woocommerce input[type=submit]:not(.it-button--tertiary):not(.has-icon),
  .woocommerce-checkout .woocommerce .button:not(.it-button--tertiary):not(.has-icon), .woocommerce-cart .woocommerce form.woocommerce-cart-form tr:last-child .button:not(.it-button--tertiary):not(.has-icon),
  .woocommerce .woocommerce-message [role=button]:not(.it-button--tertiary):not(.has-icon),
  .woocommerce .woocommerce-info [role=button]:not(.it-button--tertiary):not(.has-icon), .woocommerce ul.products li.product .button:not(.it-button--tertiary):not(.has-icon), .woocommerce-account .woocommerce-Address-title .edit:not(.it-button--tertiary):not(.has-icon), .woocommerce.single-product #content div.product.product-type-variable div.summary .cart .variations .reset_variations:not(.it-button--tertiary):not(.has-icon) {
    width: auto;
  }
}

.button,
.wc-block-components-button {
  position: relative;
  border-radius: 0 !important;
  font-family: inherit;
  border: 1px solid !important;
  font-size: var(--it-size-small);
  font-weight: 500;
  line-height: 1;
  padding: 1.25rem 1.875rem;
  text-decoration: none;
  text-transform: capitalize;
  transition: color var(--it-transition), border var(--it-transition), background var(--it-transition);
  text-align: center;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  gap: 0.5rem;
  cursor: pointer;
  backdrop-filter: blur(48px);
  color: var(--it-color-text) !important;
  background: transparent !important;
  border-color: currentcolor;
  box-shadow: 0 4px 4px 0 rgba(34, 34, 34, 0.1490196078) inset !important;
}
.button > svg,
.wc-block-components-button > svg {
  color: currentcolor;
}
.button:hover,
.wc-block-components-button:hover {
  color: var(--it-color-white) !important;
  background: var(--it-color-text) !important;
}

/**
 * Do not @use files with actual scss code in this file, as it will compile css code twice.
 * As this file going to be an standalone css file.
 */
/**
 * Do not @use files with actual scss code in this file, as it will compile css code twice.
 * As this file going to be an standalone css file.
 */
/**
 * Do not @use files with actual scss code in this file, as it will compile css code twice.
 * As this file going to be an standalone css file.
 */
@keyframes cartLink {
  0%, 90% {
    pointer-events: auto;
    display: inline-block;
  }
  100% {
    pointer-events: none;
    display: none;
  }
}
@keyframes addedState {
  0%, 90% {
    background-color: var(--it-color-brand);
    border-color: var(--it-color-brand);
    color: var(--it-color-white);
  }
  100% {
    background-color: var(--it-color-white);
    border-color: var(--it-color-brand);
    color: var(--it-color-brand);
  }
}
@keyframes iconChange {
  0% {
    -webkit-mask: url("../img/woo-check.svg") no-repeat center/contain;
            mask: url("../img/woo-check.svg") no-repeat center/contain;
    transform: scale(0);
  }
  5% {
    -webkit-mask: url("../img/woo-check.svg") no-repeat center/contain;
            mask: url("../img/woo-check.svg") no-repeat center/contain;
    transform: scale(1.2);
  }
  10%, 90% {
    -webkit-mask: url("../img/woo-check.svg") no-repeat center/contain;
            mask: url("../img/woo-check.svg") no-repeat center/contain;
    transform: scale(1);
  }
  100% {
    -webkit-mask: url("../img/woo-cart.svg") no-repeat center/contain;
            mask: url("../img/woo-cart.svg") no-repeat center/contain;
    transform: scale(1);
  }
}
.woocommerce ul.products li.product .add_to_cart_button.button, .woosw-list table.woosw-items tr.woosw-item .woosw-item--actions .add_to_cart_button.button, .woocommerce ul.products li.product .product_type_external.button, .woosw-list table.woosw-items tr.woosw-item .woosw-item--actions .product_type_external.button, .woocommerce ul.products li.product .product_type_grouped.button, .woosw-list table.woosw-items tr.woosw-item .woosw-item--actions .product_type_grouped.button, .woocommerce ul.products li.product .product_out_of_stock.button, .woosw-list table.woosw-items tr.woosw-item .woosw-item--actions .product_out_of_stock.button {
  margin-top: 0 !important;
}
.woocommerce ul.products li.product .add_to_cart_button.button::after, .woosw-list table.woosw-items tr.woosw-item .woosw-item--actions .add_to_cart_button.button::after, .woocommerce ul.products li.product .product_type_external.button::after, .woosw-list table.woosw-items tr.woosw-item .woosw-item--actions .product_type_external.button::after, .woocommerce ul.products li.product .product_type_grouped.button::after, .woosw-list table.woosw-items tr.woosw-item .woosw-item--actions .product_type_grouped.button::after, .woocommerce ul.products li.product .product_out_of_stock.button::after, .woosw-list table.woosw-items tr.woosw-item .woosw-item--actions .product_out_of_stock.button::after {
  content: "";
  position: static !important;
  display: block;
  width: 1.25rem;
  height: 1.25rem;
  margin: 0;
  background: currentcolor;
  -webkit-mask: url("../img/woo-cart.svg") no-repeat center/contain;
          mask: url("../img/woo-cart.svg") no-repeat center/contain;
}
.woocommerce ul.products li.product .add_to_cart_button.loading.button, .woosw-list table.woosw-items tr.woosw-item .woosw-item--actions .add_to_cart_button.loading.button, .woocommerce ul.products li.product .loading.product_type_external.button, .woosw-list table.woosw-items tr.woosw-item .woosw-item--actions .loading.product_type_external.button, .woocommerce ul.products li.product .loading.product_type_grouped.button, .woosw-list table.woosw-items tr.woosw-item .woosw-item--actions .loading.product_type_grouped.button, .woocommerce ul.products li.product .loading.product_out_of_stock.button, .woosw-list table.woosw-items tr.woosw-item .woosw-item--actions .loading.product_out_of_stock.button {
  background-color: var(--it-color-brand);
  border-color: var(--it-color-brand);
  color: var(--it-color-white);
  opacity: 1;
}
.woocommerce ul.products li.product .add_to_cart_button.loading.button::after, .woosw-list table.woosw-items tr.woosw-item .woosw-item--actions .add_to_cart_button.loading.button::after, .woocommerce ul.products li.product .loading.product_type_external.button::after, .woosw-list table.woosw-items tr.woosw-item .woosw-item--actions .loading.product_type_external.button::after, .woocommerce ul.products li.product .loading.product_type_grouped.button::after, .woosw-list table.woosw-items tr.woosw-item .woosw-item--actions .loading.product_type_grouped.button::after, .woocommerce ul.products li.product .loading.product_out_of_stock.button::after, .woosw-list table.woosw-items tr.woosw-item .woosw-item--actions .loading.product_out_of_stock.button::after {
  -webkit-mask: url("../img/woo-loading.svg") no-repeat center/contain;
          mask: url("../img/woo-loading.svg") no-repeat center/contain;
}
.woocommerce ul.products li.product .add_to_cart_button.added.button, .woosw-list table.woosw-items tr.woosw-item .woosw-item--actions .add_to_cart_button.added.button, .woocommerce ul.products li.product .added.product_type_external.button, .woosw-list table.woosw-items tr.woosw-item .woosw-item--actions .added.product_type_external.button, .woocommerce ul.products li.product .added.product_type_grouped.button, .woosw-list table.woosw-items tr.woosw-item .woosw-item--actions .added.product_type_grouped.button, .woocommerce ul.products li.product .added.product_out_of_stock.button, .woosw-list table.woosw-items tr.woosw-item .woosw-item--actions .added.product_out_of_stock.button {
  animation: addedState 3s;
}
.woocommerce ul.products li.product .add_to_cart_button.added.button::after, .woosw-list table.woosw-items tr.woosw-item .woosw-item--actions .add_to_cart_button.added.button::after, .woocommerce ul.products li.product .added.product_type_external.button::after, .woosw-list table.woosw-items tr.woosw-item .woosw-item--actions .added.product_type_external.button::after, .woocommerce ul.products li.product .added.product_type_grouped.button::after, .woosw-list table.woosw-items tr.woosw-item .woosw-item--actions .added.product_type_grouped.button::after, .woocommerce ul.products li.product .added.product_out_of_stock.button::after, .woosw-list table.woosw-items tr.woosw-item .woosw-item--actions .added.product_out_of_stock.button::after {
  animation: iconChange 3s;
}
.woocommerce ul.products li.product .product_type_external.button:after, .woosw-list table.woosw-items tr.woosw-item .woosw-item--actions .product_type_external.button:after, .woocommerce ul.products li.product .product_type_grouped.button:after, .woosw-list table.woosw-items tr.woosw-item .woosw-item--actions .product_type_grouped.button:after, .woocommerce ul.products li.product .product_out_of_stock.button:after, .woosw-list table.woosw-items tr.woosw-item .woosw-item--actions .product_out_of_stock.button:after {
  display: none;
}

@media (min-width: 783px) {
  .woocommerce ul.products li.product .button {
    gap: 0;
  }
  .woocommerce ul.products li.product .add_to_cart_button.button, .woocommerce ul.products li.product .product_type_external.button, .woocommerce ul.products li.product .product_type_grouped.button, .woocommerce ul.products li.product .product_out_of_stock.button {
    padding: 1.125rem;
    font-size: 0;
  }
  .woocommerce ul.products li.product .add_to_cart_button.button:after, .woocommerce ul.products li.product .product_type_external.button:after, .woocommerce ul.products li.product .product_type_grouped.button:after, .woocommerce ul.products li.product .product_out_of_stock.button:after {
    width: 1.75rem;
    height: 1.75rem;
  }
  .woocommerce ul.products li.product .add_to_cart_button.product_type_variable.button::after, .woocommerce ul.products li.product .product_type_variable.product_type_external.button::after, .woocommerce ul.products li.product .product_type_variable.product_type_grouped.button::after, .woocommerce ul.products li.product .product_type_variable.product_out_of_stock.button::after {
    -webkit-mask: url("../img/woo-arrow.svg") no-repeat center/contain;
            mask: url("../img/woo-arrow.svg") no-repeat center/contain;
  }
  .woocommerce ul.products li.product .product_type_external.button::after, .woocommerce ul.products li.product .product_type_grouped.button::after, .woocommerce ul.products li.product .product_out_of_stock.button::after {
    display: inline-block;
    -webkit-mask: url("../img/woo-arrow.svg") no-repeat center/contain;
            mask: url("../img/woo-arrow.svg") no-repeat center/contain;
  }
}

.woosw-btn {
  min-width: 2.3125rem;
  min-height: 2.3125rem;
  margin-right: 0.875rem;
  padding: 0;
  align-items: center;
  justify-content: center;
  border-radius: var(--it-border-radius-small);
  background-color: var(--it-color-white);
  border-width: 1px;
  border-color: var(--it-color-brand);
  color: var(--it-color-brand);
  box-shadow: none;
  flex-shrink: 0;
}

.woosw-list table.woosw-items {
  width: 100%;
  table-layout: fixed;
}
.woosw-list table.woosw-items tr.woosw-item .woosw-item--remove {
  width: 2.65rem;
}
.woosw-list table.woosw-items tr.woosw-item .woosw-item--remove span::before {
  content: "";
  width: 1.5rem;
  height: 1.5rem;
  -webkit-mask: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M11.9877 10.5983L6.69471 5.30529C6.50611 5.12313 6.25351 5.02234 5.99131 5.02461C5.72911 5.02689 5.4783 5.13206 5.29289 5.31747C5.10749 5.50288 5.00232 5.75369 5.00004 6.01589C4.99776 6.27808 5.09855 6.53069 5.28071 6.71929L10.5737 12.0123L5.28071 17.3053C5.09855 17.4939 4.99776 17.7465 5.00004 18.0087C5.00232 18.2709 5.10749 18.5217 5.29289 18.7071C5.4783 18.8925 5.72911 18.9977 5.99131 19C6.25351 19.0022 6.50611 18.9014 6.69471 18.7193L11.9877 13.4263L17.2807 18.7193C17.4693 18.9014 17.7219 19.0022 17.9841 19C18.2463 18.9977 18.4971 18.8925 18.6825 18.7071C18.8679 18.5217 18.9731 18.2709 18.9754 18.0087C18.9777 17.7465 18.8769 17.4939 18.6947 17.3053L13.4017 12.0123L18.6947 6.71929C18.7902 6.62704 18.8664 6.5167 18.9188 6.39469C18.9712 6.27269 18.9988 6.14147 19 6.00869C19.0011 5.87591 18.9758 5.74423 18.9255 5.62133C18.8753 5.49844 18.801 5.38679 18.7071 5.29289C18.6132 5.199 18.5016 5.12475 18.3787 5.07447C18.2558 5.02419 18.1241 4.99888 17.9913 5.00004C17.8585 5.00119 17.7273 5.02878 17.6053 5.08119C17.4833 5.1336 17.373 5.20978 17.2807 5.30529L11.9877 10.5983Z' fill='%2325445A'/%3E%3C/svg%3E%0A");
          mask: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M11.9877 10.5983L6.69471 5.30529C6.50611 5.12313 6.25351 5.02234 5.99131 5.02461C5.72911 5.02689 5.4783 5.13206 5.29289 5.31747C5.10749 5.50288 5.00232 5.75369 5.00004 6.01589C4.99776 6.27808 5.09855 6.53069 5.28071 6.71929L10.5737 12.0123L5.28071 17.3053C5.09855 17.4939 4.99776 17.7465 5.00004 18.0087C5.00232 18.2709 5.10749 18.5217 5.29289 18.7071C5.4783 18.8925 5.72911 18.9977 5.99131 19C6.25351 19.0022 6.50611 18.9014 6.69471 18.7193L11.9877 13.4263L17.2807 18.7193C17.4693 18.9014 17.7219 19.0022 17.9841 19C18.2463 18.9977 18.4971 18.8925 18.6825 18.7071C18.8679 18.5217 18.9731 18.2709 18.9754 18.0087C18.9777 17.7465 18.8769 17.4939 18.6947 17.3053L13.4017 12.0123L18.6947 6.71929C18.7902 6.62704 18.8664 6.5167 18.9188 6.39469C18.9712 6.27269 18.9988 6.14147 19 6.00869C19.0011 5.87591 18.9758 5.74423 18.9255 5.62133C18.8753 5.49844 18.801 5.38679 18.7071 5.29289C18.6132 5.199 18.5016 5.12475 18.3787 5.07447C18.2558 5.02419 18.1241 4.99888 17.9913 5.00004C17.8585 5.00119 17.7273 5.02878 17.6053 5.08119C17.4833 5.1336 17.373 5.20978 17.2807 5.30529L11.9877 10.5983Z' fill='%2325445A'/%3E%3C/svg%3E%0A");
  -webkit-mask-size: contain;
          mask-size: contain;
  transition: color var(--it-transition-time) ease;
  color: var(--it-color-brand);
  background-color: currentcolor;
  animation-iteration-count: 1;
}
.woosw-list table.woosw-items tr.woosw-item .woosw-item--remove span:hover:before {
  color: var(--it-color-error);
}
.woosw-list table.woosw-items tr.woosw-item .woosw-item--image {
  display: none;
}
.woosw-list table.woosw-items tr.woosw-item .woosw-item--image img {
  border-radius: var(--it-border-radius-small);
}
.woosw-list table.woosw-items tr.woosw-item .woosw-item--info {
  width: auto;
  font-weight: 400;
}
.woosw-list table.woosw-items tr.woosw-item .woosw-item--info > * {
  margin-bottom: 0.25rem;
}
.woosw-list table.woosw-items tr.woosw-item .woosw-item--info > *:last-child {
  margin-bottom: 0;
}
.woosw-list table.woosw-items tr.woosw-item .woosw-item--name {
  font-size: var(--it-size-small);
}
.woosw-list table.woosw-items tr.woosw-item .woosw-item--name a {
  font-weight: 400;
}
.woosw-list table.woosw-items tr.woosw-item .woosw-item--price,
.woosw-list table.woosw-items tr.woosw-item .woosw-item--time {
  font-size: var(--it-size-x-small);
}
.woosw-list table.woosw-items tr.woosw-item .woosw-item--actions {
  text-align: right;
  width: 25%;
}
.woosw-list table.woosw-items tr.woosw-item .woosw-item--actions .button {
  flex-direction: row-reverse;
}
.woosw-list table.woosw-items tr.woosw-item .woosw-item--actions .woosw-item--stock {
  display: none;
}
.woosw-list table.woosw-items tr.woosw-item .added_to_cart {
  inset: 0;
  font-size: 0;
  position: absolute;
  pointer-events: none;
}
@media screen and (max-width: 1365px) and (min-width: 0px) {
  .woosw-list table.woosw-items tr.woosw-item .woosw-item--actions .button {
    background: var(--it-color-brand);
    color: var(--it-color-white);
    padding: 1rem;
    font-size: 0;
    gap: 0;
  }
  .woosw-list table.woosw-items tr.woosw-item .woosw-item--actions .button.product_out_of_stock::after, .woosw-list table.woosw-items tr.woosw-item .woosw-item--actions .button.product_type_variable::after {
    display: inline-block;
    -webkit-mask: url("../img/woo-arrow.svg") no-repeat center/contain;
            mask: url("../img/woo-arrow.svg") no-repeat center/contain;
  }
  .woosw-list table.woosw-items tr.woosw-item .woosw-item--stock {
    display: none;
  }
}
@media (min-width: 1024px) {
  .woosw-list table.woosw-items tr.woosw-item .woosw-item--image {
    display: table-cell;
  }
  .woosw-list table.woosw-items tr.woosw-item .woosw-item--actions {
    width: 30%;
  }
}
.woosw-list .woosw-actions:empty {
  display: none;
}

/**
 * Do not @use files with actual scss code in this file, as it will compile css code twice.
 * As this file going to be an standalone css file.
 */
/**
 * Do not @use files with actual scss code in this file, as it will compile css code twice.
 * As this file going to be an standalone css file.
 */
/**
 * Do not @use files with actual scss code in this file, as it will compile css code twice.
 * As this file going to be an standalone css file.
 */
.woocommerce .woocommerce-message {
  border-color: var(--it-color-success);
}
.woocommerce .woocommerce-message:before {
  content: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M22 12C22 17.5228 17.5228 22 12 22C6.47715 22 2 17.5228 2 12C2 6.47715 6.47715 2 12 2C17.5228 2 22 6.47715 22 12ZM9.3824 11.0689C9.50441 11.1213 9.61475 11.1975 9.707 11.293L11 12.586L14.293 9.29302C14.3852 9.19751 14.4956 9.12133 14.6176 9.06892C14.7396 9.01651 14.8708 8.98892 15.0036 8.98777C15.1364 8.98662 15.2681 9.01192 15.391 9.0622C15.5138 9.11248 15.6255 9.18673 15.7194 9.28063C15.8133 9.37452 15.8875 9.48617 15.9378 9.60907C15.9881 9.73196 16.0134 9.86364 16.0122 9.99642C16.0111 10.1292 15.9835 10.2604 15.9311 10.3824C15.8787 10.5044 15.8025 10.6148 15.707 10.707L11.707 14.707C11.5195 14.8945 11.2652 14.9998 11 14.9998C10.7348 14.9998 10.4805 14.8945 10.293 14.707L8.293 12.707C8.19749 12.6148 8.1213 12.5044 8.0689 12.3824C8.01649 12.2604 7.9889 12.1292 7.98775 11.9964C7.98659 11.8636 8.0119 11.732 8.06218 11.6091C8.11246 11.4862 8.18671 11.3745 8.2806 11.2806C8.3745 11.1867 8.48615 11.1125 8.60904 11.0622C8.73194 11.0119 8.86362 10.9866 8.9964 10.9878C9.12918 10.9889 9.2604 11.0165 9.3824 11.0689Z' fill='%23008000'/%3E%3C/svg%3E%0A");
}
.woocommerce .woocommerce-error {
  border-color: var(--it-color-error);
}
.woocommerce .woocommerce-error:before {
  content: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M12 22C17.5228 22 22 17.5228 22 12C22 6.47715 17.5228 2 12 2C6.47715 2 2 6.47715 2 12C2 17.5228 6.47715 22 12 22ZM10.5918 12.0154L9.117 13.499C9.02179 13.5915 8.94595 13.7021 8.89392 13.8242C8.84188 13.9464 8.81469 14.0776 8.81393 14.2104C8.81317 14.3432 8.83885 14.4747 8.88948 14.5975C8.9401 14.7202 9.01466 14.8316 9.10881 14.9252C9.20295 15.0189 9.31479 15.0928 9.43781 15.1427C9.56083 15.1927 9.69256 15.2176 9.82531 15.2161C9.95807 15.2146 10.0892 15.1866 10.211 15.1339C10.3329 15.0812 10.443 15.0047 10.535 14.909L12.0027 13.4325L13.442 14.878C13.6291 15.0661 13.8833 15.1721 14.1485 15.1727C14.4138 15.1734 14.6685 15.0686 14.8565 14.8815C15.0445 14.6944 15.1505 14.4403 15.1512 14.175C15.1519 13.9097 15.0471 13.6551 14.86 13.467L13.4127 12.0141L14.895 10.523C15.0767 10.3339 15.1768 10.081 15.1738 9.81874C15.1709 9.55651 15.065 9.30595 14.879 9.12104C14.6931 8.93612 14.4419 8.83166 14.1797 8.83016C13.9174 8.82865 13.6651 8.93022 13.477 9.11298L12.0015 10.5973L10.5 9.09002C10.3118 8.90742 10.0594 8.80606 9.79717 8.80776C9.53495 8.80947 9.28389 8.9141 9.09807 9.09913C8.91225 9.28416 8.80655 9.53478 8.80373 9.79699C8.80091 10.0592 8.90121 10.312 9.083 10.501L10.5918 12.0154Z' fill='%23E84901'/%3E%3C/svg%3E%0A");
}
.woocommerce .woocommerce-error .button {
  width: auto !important;
}
.woocommerce .woocommerce-info {
  border-color: var(--it-color-info);
}
.woocommerce .woocommerce-info:before {
  content: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M12 22C6.477 22 2 17.523 2 12C2 6.477 6.477 2 12 2C17.523 2 22 6.477 22 12C22 17.523 17.523 22 12 22ZM13 8C13 8.55228 12.5523 9 12 9C11.4477 9 11 8.55228 11 8C11 7.44772 11.4477 7 12 7C12.5523 7 13 7.44772 13 8ZM12 10C12.5523 10 13 10.4477 13 11V16C13 16.5523 12.5523 17 12 17C11.4477 17 11 16.5523 11 16V11C11 10.4477 11.4477 10 12 10Z' fill='%230086D4'/%3E%3C/svg%3E%0A");
}
.woocommerce .woocommerce-message .button,
.woocommerce .woocommerce-message [role=button],
.woocommerce .woocommerce-info .button,
.woocommerce .woocommerce-info [role=button] {
  border-color: var(--it-color-black);
  color: var(--it-color-black);
  width: auto !important;
}
.woocommerce .woocommerce-message .button:hover,
.woocommerce .woocommerce-message [role=button]:hover,
.woocommerce .woocommerce-info .button:hover,
.woocommerce .woocommerce-info [role=button]:hover {
  background: var(--it-color-black);
  color: var(--it-color-white);
}
.woocommerce .woocommerce-message,
.woocommerce .woocommerce-error,
.woocommerce .woocommerce-info {
  color: var(--it-color-text);
  border-width: 1px;
  border-style: solid;
  border-radius: var(--it-border-radius);
  background-color: var(--it-color-background);
  padding: var(--it-spacing-default-half) var(--it-spacing-default-half) var(--it-spacing-default-half) 3.25rem;
  display: grid;
  justify-items: start;
  align-items: start;
  margin-bottom: var(--it-spacing-content);
}
.woocommerce-account .woocommerce .woocommerce-message,
.woocommerce-account .woocommerce .woocommerce-error,
.woocommerce-account .woocommerce .woocommerce-info {
  margin-bottom: 0;
}
.woocommerce .woocommerce-message li:has(.button),
.woocommerce .woocommerce-error li:has(.button),
.woocommerce .woocommerce-info li:has(.button) {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  padding-top: 0.375rem;
  -moz-column-gap: var(--it-spacing-default);
       column-gap: var(--it-spacing-default);
}
.woocommerce .woocommerce-message li:has(.button) .button,
.woocommerce .woocommerce-error li:has(.button) .button,
.woocommerce .woocommerce-info li:has(.button) .button {
  margin-top: -0.375rem;
  flex-shrink: 0;
}
.woocommerce .woocommerce-message li:not(:has(.button)),
.woocommerce .woocommerce-error li:not(:has(.button)),
.woocommerce .woocommerce-info li:not(:has(.button)) {
  grid-column: span 2;
}
.woocommerce .woocommerce-message:before,
.woocommerce .woocommerce-error:before,
.woocommerce .woocommerce-info:before {
  top: calc(var(--it-spacing-default-half));
  left: calc(var(--it-spacing-default-half));
  width: 1.5rem;
  height: 1.5rem;
}
.woocommerce .woocommerce-message:after,
.woocommerce .woocommerce-error:after,
.woocommerce .woocommerce-info:after {
  display: none;
}
.woocommerce .woocommerce-message .button,
.woocommerce .woocommerce-message [role=button],
.woocommerce .woocommerce-error .button,
.woocommerce .woocommerce-error [role=button],
.woocommerce .woocommerce-info .button,
.woocommerce .woocommerce-info [role=button] {
  margin-top: 0.5rem;
}
.woocommerce .woocommerce-message .button,
.woocommerce .woocommerce-error .button,
.woocommerce .woocommerce-info .button {
  float: none;
}
.woocommerce .woocommerce-notices-wrapper:empty {
  display: none;
}
@media (min-width: 783px) {
  .woocommerce .woocommerce-message,
  .woocommerce .woocommerce-error,
  .woocommerce .woocommerce-info {
    align-items: center;
    grid-template-columns: 1fr auto;
  }
  .woocommerce .woocommerce-message:has(.button):before, .woocommerce .woocommerce-message:has([role=button]):before, .woocommerce .woocommerce-message:has(li):has(.button):before,
  .woocommerce .woocommerce-error:has(.button):before,
  .woocommerce .woocommerce-error:has([role=button]):before,
  .woocommerce .woocommerce-error:has(li):has(.button):before,
  .woocommerce .woocommerce-info:has(.button):before,
  .woocommerce .woocommerce-info:has([role=button]):before,
  .woocommerce .woocommerce-info:has(li):has(.button):before {
    top: calc(var(--it-spacing-default-half) + 0.175rem);
  }
  .woocommerce .woocommerce-message .button,
  .woocommerce .woocommerce-message [role=button],
  .woocommerce .woocommerce-error .button,
  .woocommerce .woocommerce-error [role=button],
  .woocommerce .woocommerce-info .button,
  .woocommerce .woocommerce-info [role=button] {
    margin: 0;
  }
}

/**
 * Do not @use files with actual scss code in this file, as it will compile css code twice.
 * As this file going to be an standalone css file.
 */
/**
 * Do not @use files with actual scss code in this file, as it will compile css code twice.
 * As this file going to be an standalone css file.
 */
.woocommerce .col2-set {
  display: grid;
  align-items: start;
  gap: var(--it-spacing-default);
}
@media (min-width: 783px) {
  .woocommerce .col2-set {
    grid-template-columns: repeat(2, 1fr);
  }
}
.woocommerce .col2-set .col-1,
.woocommerce .col2-set .col-2 {
  width: 100%;
  float: none;
  display: grid;
  gap: var(--it-spacing-default);
}
.woocommerce .col2-set::before, .woocommerce .col2-set::after {
  content: none;
}

/**
 * Do not @use files with actual scss code in this file, as it will compile css code twice.
 * As this file going to be an standalone css file.
 */
/**
 * Do not @use files with actual scss code in this file, as it will compile css code twice.
 * As this file going to be an standalone css file.
 */
.woocommerce-cart .woocommerce form.woocommerce-cart-form tr:last-child .coupon .input-text, .woocommerce-account .woocommerce form input[type=text],
.woocommerce-account .woocommerce form input[type=email],
.woocommerce-account .woocommerce form input[type=url],
.woocommerce-account .woocommerce form input[type=password],
.woocommerce-account .woocommerce form input[type=search],
.woocommerce-account .woocommerce form input[type=number],
.woocommerce-account .woocommerce form input[type=tel],
.woocommerce-account .woocommerce form input[type=range],
.woocommerce-account .woocommerce form input[type=date],
.woocommerce-account .woocommerce form input[type=month],
.woocommerce-account .woocommerce form input[type=week],
.woocommerce-account .woocommerce form input[type=time],
.woocommerce-account .woocommerce form input[type=datetime],
.woocommerce-account .woocommerce form input[type=datetime-local],
.woocommerce-account .woocommerce form input[type=color],
.woocommerce-account .woocommerce form textarea,
.woocommerce-account .woocommerce form .input-text,
.woocommerce-account .woocommerce form .select2 .select2-selection,
.woocommerce-checkout .woocommerce form input[type=text],
.woocommerce-checkout .woocommerce form input[type=email],
.woocommerce-checkout .woocommerce form input[type=url],
.woocommerce-checkout .woocommerce form input[type=password],
.woocommerce-checkout .woocommerce form input[type=search],
.woocommerce-checkout .woocommerce form input[type=number],
.woocommerce-checkout .woocommerce form input[type=tel],
.woocommerce-checkout .woocommerce form input[type=range],
.woocommerce-checkout .woocommerce form input[type=date],
.woocommerce-checkout .woocommerce form input[type=month],
.woocommerce-checkout .woocommerce form input[type=week],
.woocommerce-checkout .woocommerce form input[type=time],
.woocommerce-checkout .woocommerce form input[type=datetime],
.woocommerce-checkout .woocommerce form input[type=datetime-local],
.woocommerce-checkout .woocommerce form input[type=color],
.woocommerce-checkout .woocommerce form textarea,
.woocommerce-checkout .woocommerce form .input-text,
.woocommerce-checkout .woocommerce form .select2 .select2-selection, .woocommerce-account .woocommerce form select,
.woocommerce-checkout .woocommerce form select {
  width: 100%;
  line-height: 1.6;
  padding: 0.6875rem 1rem;
  font-size: var(--it-size-small);
  border: 1px solid var(--it-color-border);
  border-radius: var(--it-border-radius);
  background-color: var(--it-color-white);
  font-family: var(--it-font-family);
  color: var(--it-color-black);
}
.woocommerce-cart .woocommerce form.woocommerce-cart-form tr:last-child .coupon .input-text:-webkit-autofill, .woocommerce-account .woocommerce form input[type=text]:-webkit-autofill,
.woocommerce-account .woocommerce form input[type=email]:-webkit-autofill,
.woocommerce-account .woocommerce form input[type=url]:-webkit-autofill,
.woocommerce-account .woocommerce form input[type=password]:-webkit-autofill,
.woocommerce-account .woocommerce form input[type=search]:-webkit-autofill,
.woocommerce-account .woocommerce form input[type=number]:-webkit-autofill,
.woocommerce-account .woocommerce form input[type=tel]:-webkit-autofill,
.woocommerce-account .woocommerce form input[type=range]:-webkit-autofill,
.woocommerce-account .woocommerce form input[type=date]:-webkit-autofill,
.woocommerce-account .woocommerce form input[type=month]:-webkit-autofill,
.woocommerce-account .woocommerce form input[type=week]:-webkit-autofill,
.woocommerce-account .woocommerce form input[type=time]:-webkit-autofill,
.woocommerce-account .woocommerce form input[type=datetime]:-webkit-autofill,
.woocommerce-account .woocommerce form input[type=datetime-local]:-webkit-autofill,
.woocommerce-account .woocommerce form input[type=color]:-webkit-autofill,
.woocommerce-account .woocommerce form textarea:-webkit-autofill,
.woocommerce-account .woocommerce form .input-text:-webkit-autofill,
.woocommerce-account .woocommerce form .select2 .select2-selection:-webkit-autofill,
.woocommerce-checkout .woocommerce form input[type=text]:-webkit-autofill,
.woocommerce-checkout .woocommerce form input[type=email]:-webkit-autofill,
.woocommerce-checkout .woocommerce form input[type=url]:-webkit-autofill,
.woocommerce-checkout .woocommerce form input[type=password]:-webkit-autofill,
.woocommerce-checkout .woocommerce form input[type=search]:-webkit-autofill,
.woocommerce-checkout .woocommerce form input[type=number]:-webkit-autofill,
.woocommerce-checkout .woocommerce form input[type=tel]:-webkit-autofill,
.woocommerce-checkout .woocommerce form input[type=range]:-webkit-autofill,
.woocommerce-checkout .woocommerce form input[type=date]:-webkit-autofill,
.woocommerce-checkout .woocommerce form input[type=month]:-webkit-autofill,
.woocommerce-checkout .woocommerce form input[type=week]:-webkit-autofill,
.woocommerce-checkout .woocommerce form input[type=time]:-webkit-autofill,
.woocommerce-checkout .woocommerce form input[type=datetime]:-webkit-autofill,
.woocommerce-checkout .woocommerce form input[type=datetime-local]:-webkit-autofill,
.woocommerce-checkout .woocommerce form input[type=color]:-webkit-autofill,
.woocommerce-checkout .woocommerce form textarea:-webkit-autofill,
.woocommerce-checkout .woocommerce form .input-text:-webkit-autofill,
.woocommerce-checkout .woocommerce form .select2 .select2-selection:-webkit-autofill, .woocommerce-account .woocommerce form select:-webkit-autofill,
.woocommerce-checkout .woocommerce form select:-webkit-autofill, .woocommerce-cart .woocommerce form.woocommerce-cart-form tr:last-child .coupon .input-text:-webkit-autofill:hover, .woocommerce-account .woocommerce form input[type=text]:-webkit-autofill:hover,
.woocommerce-account .woocommerce form input[type=email]:-webkit-autofill:hover,
.woocommerce-account .woocommerce form input[type=url]:-webkit-autofill:hover,
.woocommerce-account .woocommerce form input[type=password]:-webkit-autofill:hover,
.woocommerce-account .woocommerce form input[type=search]:-webkit-autofill:hover,
.woocommerce-account .woocommerce form input[type=number]:-webkit-autofill:hover,
.woocommerce-account .woocommerce form input[type=tel]:-webkit-autofill:hover,
.woocommerce-account .woocommerce form input[type=range]:-webkit-autofill:hover,
.woocommerce-account .woocommerce form input[type=date]:-webkit-autofill:hover,
.woocommerce-account .woocommerce form input[type=month]:-webkit-autofill:hover,
.woocommerce-account .woocommerce form input[type=week]:-webkit-autofill:hover,
.woocommerce-account .woocommerce form input[type=time]:-webkit-autofill:hover,
.woocommerce-account .woocommerce form input[type=datetime]:-webkit-autofill:hover,
.woocommerce-account .woocommerce form input[type=datetime-local]:-webkit-autofill:hover,
.woocommerce-account .woocommerce form input[type=color]:-webkit-autofill:hover,
.woocommerce-account .woocommerce form textarea:-webkit-autofill:hover,
.woocommerce-account .woocommerce form .input-text:-webkit-autofill:hover,
.woocommerce-account .woocommerce form .select2 .select2-selection:-webkit-autofill:hover,
.woocommerce-checkout .woocommerce form input[type=text]:-webkit-autofill:hover,
.woocommerce-checkout .woocommerce form input[type=email]:-webkit-autofill:hover,
.woocommerce-checkout .woocommerce form input[type=url]:-webkit-autofill:hover,
.woocommerce-checkout .woocommerce form input[type=password]:-webkit-autofill:hover,
.woocommerce-checkout .woocommerce form input[type=search]:-webkit-autofill:hover,
.woocommerce-checkout .woocommerce form input[type=number]:-webkit-autofill:hover,
.woocommerce-checkout .woocommerce form input[type=tel]:-webkit-autofill:hover,
.woocommerce-checkout .woocommerce form input[type=range]:-webkit-autofill:hover,
.woocommerce-checkout .woocommerce form input[type=date]:-webkit-autofill:hover,
.woocommerce-checkout .woocommerce form input[type=month]:-webkit-autofill:hover,
.woocommerce-checkout .woocommerce form input[type=week]:-webkit-autofill:hover,
.woocommerce-checkout .woocommerce form input[type=time]:-webkit-autofill:hover,
.woocommerce-checkout .woocommerce form input[type=datetime]:-webkit-autofill:hover,
.woocommerce-checkout .woocommerce form input[type=datetime-local]:-webkit-autofill:hover,
.woocommerce-checkout .woocommerce form input[type=color]:-webkit-autofill:hover,
.woocommerce-checkout .woocommerce form textarea:-webkit-autofill:hover,
.woocommerce-checkout .woocommerce form .input-text:-webkit-autofill:hover,
.woocommerce-checkout .woocommerce form .select2 .select2-selection:-webkit-autofill:hover, .woocommerce-account .woocommerce form select:-webkit-autofill:hover,
.woocommerce-checkout .woocommerce form select:-webkit-autofill:hover, .woocommerce-cart .woocommerce form.woocommerce-cart-form tr:last-child .coupon .input-text:-webkit-autofill:focus, .woocommerce-account .woocommerce form input[type=text]:-webkit-autofill:focus,
.woocommerce-account .woocommerce form input[type=email]:-webkit-autofill:focus,
.woocommerce-account .woocommerce form input[type=url]:-webkit-autofill:focus,
.woocommerce-account .woocommerce form input[type=password]:-webkit-autofill:focus,
.woocommerce-account .woocommerce form input[type=search]:-webkit-autofill:focus,
.woocommerce-account .woocommerce form input[type=number]:-webkit-autofill:focus,
.woocommerce-account .woocommerce form input[type=tel]:-webkit-autofill:focus,
.woocommerce-account .woocommerce form input[type=range]:-webkit-autofill:focus,
.woocommerce-account .woocommerce form input[type=date]:-webkit-autofill:focus,
.woocommerce-account .woocommerce form input[type=month]:-webkit-autofill:focus,
.woocommerce-account .woocommerce form input[type=week]:-webkit-autofill:focus,
.woocommerce-account .woocommerce form input[type=time]:-webkit-autofill:focus,
.woocommerce-account .woocommerce form input[type=datetime]:-webkit-autofill:focus,
.woocommerce-account .woocommerce form input[type=datetime-local]:-webkit-autofill:focus,
.woocommerce-account .woocommerce form input[type=color]:-webkit-autofill:focus,
.woocommerce-account .woocommerce form textarea:-webkit-autofill:focus,
.woocommerce-account .woocommerce form .input-text:-webkit-autofill:focus,
.woocommerce-account .woocommerce form .select2 .select2-selection:-webkit-autofill:focus,
.woocommerce-checkout .woocommerce form input[type=text]:-webkit-autofill:focus,
.woocommerce-checkout .woocommerce form input[type=email]:-webkit-autofill:focus,
.woocommerce-checkout .woocommerce form input[type=url]:-webkit-autofill:focus,
.woocommerce-checkout .woocommerce form input[type=password]:-webkit-autofill:focus,
.woocommerce-checkout .woocommerce form input[type=search]:-webkit-autofill:focus,
.woocommerce-checkout .woocommerce form input[type=number]:-webkit-autofill:focus,
.woocommerce-checkout .woocommerce form input[type=tel]:-webkit-autofill:focus,
.woocommerce-checkout .woocommerce form input[type=range]:-webkit-autofill:focus,
.woocommerce-checkout .woocommerce form input[type=date]:-webkit-autofill:focus,
.woocommerce-checkout .woocommerce form input[type=month]:-webkit-autofill:focus,
.woocommerce-checkout .woocommerce form input[type=week]:-webkit-autofill:focus,
.woocommerce-checkout .woocommerce form input[type=time]:-webkit-autofill:focus,
.woocommerce-checkout .woocommerce form input[type=datetime]:-webkit-autofill:focus,
.woocommerce-checkout .woocommerce form input[type=datetime-local]:-webkit-autofill:focus,
.woocommerce-checkout .woocommerce form input[type=color]:-webkit-autofill:focus,
.woocommerce-checkout .woocommerce form textarea:-webkit-autofill:focus,
.woocommerce-checkout .woocommerce form .input-text:-webkit-autofill:focus,
.woocommerce-checkout .woocommerce form .select2 .select2-selection:-webkit-autofill:focus, .woocommerce-account .woocommerce form select:-webkit-autofill:focus,
.woocommerce-checkout .woocommerce form select:-webkit-autofill:focus, .woocommerce-cart .woocommerce form.woocommerce-cart-form tr:last-child .coupon .input-text:-webkit-autofill:active, .woocommerce-account .woocommerce form input[type=text]:-webkit-autofill:active,
.woocommerce-account .woocommerce form input[type=email]:-webkit-autofill:active,
.woocommerce-account .woocommerce form input[type=url]:-webkit-autofill:active,
.woocommerce-account .woocommerce form input[type=password]:-webkit-autofill:active,
.woocommerce-account .woocommerce form input[type=search]:-webkit-autofill:active,
.woocommerce-account .woocommerce form input[type=number]:-webkit-autofill:active,
.woocommerce-account .woocommerce form input[type=tel]:-webkit-autofill:active,
.woocommerce-account .woocommerce form input[type=range]:-webkit-autofill:active,
.woocommerce-account .woocommerce form input[type=date]:-webkit-autofill:active,
.woocommerce-account .woocommerce form input[type=month]:-webkit-autofill:active,
.woocommerce-account .woocommerce form input[type=week]:-webkit-autofill:active,
.woocommerce-account .woocommerce form input[type=time]:-webkit-autofill:active,
.woocommerce-account .woocommerce form input[type=datetime]:-webkit-autofill:active,
.woocommerce-account .woocommerce form input[type=datetime-local]:-webkit-autofill:active,
.woocommerce-account .woocommerce form input[type=color]:-webkit-autofill:active,
.woocommerce-account .woocommerce form textarea:-webkit-autofill:active,
.woocommerce-account .woocommerce form .input-text:-webkit-autofill:active,
.woocommerce-account .woocommerce form .select2 .select2-selection:-webkit-autofill:active,
.woocommerce-checkout .woocommerce form input[type=text]:-webkit-autofill:active,
.woocommerce-checkout .woocommerce form input[type=email]:-webkit-autofill:active,
.woocommerce-checkout .woocommerce form input[type=url]:-webkit-autofill:active,
.woocommerce-checkout .woocommerce form input[type=password]:-webkit-autofill:active,
.woocommerce-checkout .woocommerce form input[type=search]:-webkit-autofill:active,
.woocommerce-checkout .woocommerce form input[type=number]:-webkit-autofill:active,
.woocommerce-checkout .woocommerce form input[type=tel]:-webkit-autofill:active,
.woocommerce-checkout .woocommerce form input[type=range]:-webkit-autofill:active,
.woocommerce-checkout .woocommerce form input[type=date]:-webkit-autofill:active,
.woocommerce-checkout .woocommerce form input[type=month]:-webkit-autofill:active,
.woocommerce-checkout .woocommerce form input[type=week]:-webkit-autofill:active,
.woocommerce-checkout .woocommerce form input[type=time]:-webkit-autofill:active,
.woocommerce-checkout .woocommerce form input[type=datetime]:-webkit-autofill:active,
.woocommerce-checkout .woocommerce form input[type=datetime-local]:-webkit-autofill:active,
.woocommerce-checkout .woocommerce form input[type=color]:-webkit-autofill:active,
.woocommerce-checkout .woocommerce form textarea:-webkit-autofill:active,
.woocommerce-checkout .woocommerce form .input-text:-webkit-autofill:active,
.woocommerce-checkout .woocommerce form .select2 .select2-selection:-webkit-autofill:active, .woocommerce-account .woocommerce form select:-webkit-autofill:active,
.woocommerce-checkout .woocommerce form select:-webkit-autofill:active {
  background-color: var(--it-color-white);
  -webkit-transition: background-color 0s 9999s;
  transition: background-color 0s 9999s;
  color: var(--it-color-black);
}
.woocommerce-cart .woocommerce form.woocommerce-cart-form tr:last-child .coupon .input-text:focus, .woocommerce-account .woocommerce form input[type=text]:focus,
.woocommerce-account .woocommerce form input[type=email]:focus,
.woocommerce-account .woocommerce form input[type=url]:focus,
.woocommerce-account .woocommerce form input[type=password]:focus,
.woocommerce-account .woocommerce form input[type=search]:focus,
.woocommerce-account .woocommerce form input[type=number]:focus,
.woocommerce-account .woocommerce form input[type=tel]:focus,
.woocommerce-account .woocommerce form input[type=range]:focus,
.woocommerce-account .woocommerce form input[type=date]:focus,
.woocommerce-account .woocommerce form input[type=month]:focus,
.woocommerce-account .woocommerce form input[type=week]:focus,
.woocommerce-account .woocommerce form input[type=time]:focus,
.woocommerce-account .woocommerce form input[type=datetime]:focus,
.woocommerce-account .woocommerce form input[type=datetime-local]:focus,
.woocommerce-account .woocommerce form input[type=color]:focus,
.woocommerce-account .woocommerce form textarea:focus,
.woocommerce-account .woocommerce form .input-text:focus,
.woocommerce-account .woocommerce form .select2 .select2-selection:focus,
.woocommerce-checkout .woocommerce form input[type=text]:focus,
.woocommerce-checkout .woocommerce form input[type=email]:focus,
.woocommerce-checkout .woocommerce form input[type=url]:focus,
.woocommerce-checkout .woocommerce form input[type=password]:focus,
.woocommerce-checkout .woocommerce form input[type=search]:focus,
.woocommerce-checkout .woocommerce form input[type=number]:focus,
.woocommerce-checkout .woocommerce form input[type=tel]:focus,
.woocommerce-checkout .woocommerce form input[type=range]:focus,
.woocommerce-checkout .woocommerce form input[type=date]:focus,
.woocommerce-checkout .woocommerce form input[type=month]:focus,
.woocommerce-checkout .woocommerce form input[type=week]:focus,
.woocommerce-checkout .woocommerce form input[type=time]:focus,
.woocommerce-checkout .woocommerce form input[type=datetime]:focus,
.woocommerce-checkout .woocommerce form input[type=datetime-local]:focus,
.woocommerce-checkout .woocommerce form input[type=color]:focus,
.woocommerce-checkout .woocommerce form textarea:focus,
.woocommerce-checkout .woocommerce form .input-text:focus,
.woocommerce-checkout .woocommerce form .select2 .select2-selection:focus, .woocommerce-account .woocommerce form select:focus,
.woocommerce-checkout .woocommerce form select:focus {
  border-color: var(--it-color-brand);
}
.woocommerce-cart .woocommerce form.woocommerce-cart-form tr:last-child .coupon [readonly].input-text, .woocommerce-account .woocommerce form input[readonly][type=text],
.woocommerce-account .woocommerce form input[readonly][type=email],
.woocommerce-account .woocommerce form input[readonly][type=url],
.woocommerce-account .woocommerce form input[readonly][type=password],
.woocommerce-account .woocommerce form input[readonly][type=search],
.woocommerce-account .woocommerce form input[readonly][type=number],
.woocommerce-account .woocommerce form input[readonly][type=tel],
.woocommerce-account .woocommerce form input[readonly][type=range],
.woocommerce-account .woocommerce form input[readonly][type=date],
.woocommerce-account .woocommerce form input[readonly][type=month],
.woocommerce-account .woocommerce form input[readonly][type=week],
.woocommerce-account .woocommerce form input[readonly][type=time],
.woocommerce-account .woocommerce form input[readonly][type=datetime],
.woocommerce-account .woocommerce form input[readonly][type=datetime-local],
.woocommerce-account .woocommerce form input[readonly][type=color],
.woocommerce-account .woocommerce form textarea[readonly],
.woocommerce-account .woocommerce form [readonly].input-text,
.woocommerce-account .woocommerce form .select2 [readonly].select2-selection,
.woocommerce-checkout .woocommerce form input[readonly][type=text],
.woocommerce-checkout .woocommerce form input[readonly][type=email],
.woocommerce-checkout .woocommerce form input[readonly][type=url],
.woocommerce-checkout .woocommerce form input[readonly][type=password],
.woocommerce-checkout .woocommerce form input[readonly][type=search],
.woocommerce-checkout .woocommerce form input[readonly][type=number],
.woocommerce-checkout .woocommerce form input[readonly][type=tel],
.woocommerce-checkout .woocommerce form input[readonly][type=range],
.woocommerce-checkout .woocommerce form input[readonly][type=date],
.woocommerce-checkout .woocommerce form input[readonly][type=month],
.woocommerce-checkout .woocommerce form input[readonly][type=week],
.woocommerce-checkout .woocommerce form input[readonly][type=time],
.woocommerce-checkout .woocommerce form input[readonly][type=datetime],
.woocommerce-checkout .woocommerce form input[readonly][type=datetime-local],
.woocommerce-checkout .woocommerce form input[readonly][type=color],
.woocommerce-checkout .woocommerce form textarea[readonly],
.woocommerce-checkout .woocommerce form [readonly].input-text,
.woocommerce-checkout .woocommerce form .select2 [readonly].select2-selection, .woocommerce-account .woocommerce form select[readonly],
.woocommerce-checkout .woocommerce form select[readonly] {
  background: var(--it-color-light-gray);
}

.woocommerce-account .woocommerce form input[type=checkbox],
.woocommerce-checkout .woocommerce form input[type=checkbox] {
  width: 1.125rem;
  height: 1.125rem;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: 1px solid var(--it-color-black);
  border-radius: 0.25rem;
  transform: translateY(1px);
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.it-intro--fullwidth .woocommerce-account .woocommerce form input[type=checkbox], .woocommerce-account .woocommerce form .it-intro--fullwidth input[type=checkbox],
.it-intro--fullwidth .woocommerce-checkout .woocommerce form input[type=checkbox],
.woocommerce-checkout .woocommerce form .it-intro--fullwidth input[type=checkbox], .has-bg-dark .woocommerce-account .woocommerce form input[type=checkbox], .woocommerce-account .woocommerce form .has-bg-dark input[type=checkbox],
.has-bg-dark .woocommerce-checkout .woocommerce form input[type=checkbox],
.woocommerce-checkout .woocommerce form .has-bg-dark input[type=checkbox] {
  border-color: var(--it-color-white);
}
.it-intro--fullwidth .woocommerce-account .woocommerce form input[type=checkbox]:checked:before, .woocommerce-account .woocommerce form .it-intro--fullwidth input[type=checkbox]:checked:before,
.it-intro--fullwidth .woocommerce-checkout .woocommerce form input[type=checkbox]:checked:before,
.woocommerce-checkout .woocommerce form .it-intro--fullwidth input[type=checkbox]:checked:before, .has-bg-dark .woocommerce-account .woocommerce form input[type=checkbox]:checked:before, .woocommerce-account .woocommerce form .has-bg-dark input[type=checkbox]:checked:before,
.has-bg-dark .woocommerce-checkout .woocommerce form input[type=checkbox]:checked:before,
.woocommerce-checkout .woocommerce form .has-bg-dark input[type=checkbox]:checked:before {
  content: url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M2.05128 3.2415C1.91587 3.09749 1.72909 3.01276 1.53154 3.00573C1.33399 2.99871 1.14166 3.06995 0.99636 3.20398C0.851064 3.33801 0.764555 3.52398 0.755646 3.72145C0.746736 3.91892 0.816146 4.11193 0.948782 4.2585L3.65778 7.19775C4.06053 7.59225 4.66053 7.59225 5.03328 7.22025L5.30628 6.951C6.29218 5.98141 7.27693 5.01066 8.26053 4.03875L8.29053 4.00875C9.2098 3.1028 10.1243 2.19203 11.034 1.2765C11.17 1.13415 11.2445 0.944047 11.2416 0.747219C11.2386 0.550391 11.1584 0.362615 11.0182 0.224409C10.8781 0.0862024 10.6892 0.00864693 10.4923 0.00847654C10.2955 0.00830615 10.1064 0.0855347 9.96603 0.223498C9.06053 1.13425 8.15052 2.04051 7.23603 2.94225L7.20603 2.97225C6.26349 3.90397 5.31974 4.83447 4.37478 5.76375L2.05128 3.2415V3.2415Z' fill='%23FFFFFF'/%3E%3C/svg%3E%0A");
}
.woocommerce-account .woocommerce form input[type=checkbox]:checked:before,
.woocommerce-checkout .woocommerce form input[type=checkbox]:checked:before {
  content: url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M2.05128 3.2415C1.91587 3.09749 1.72909 3.01276 1.53154 3.00573C1.33399 2.99871 1.14166 3.06995 0.99636 3.20398C0.851064 3.33801 0.764555 3.52398 0.755646 3.72145C0.746736 3.91892 0.816146 4.11193 0.948782 4.2585L3.65778 7.19775C4.06053 7.59225 4.66053 7.59225 5.03328 7.22025L5.30628 6.951C6.29218 5.98141 7.27693 5.01066 8.26053 4.03875L8.29053 4.00875C9.2098 3.1028 10.1243 2.19203 11.034 1.2765C11.17 1.13415 11.2445 0.944047 11.2416 0.747219C11.2386 0.550391 11.1584 0.362615 11.0182 0.224409C10.8781 0.0862024 10.6892 0.00864693 10.4923 0.00847654C10.2955 0.00830615 10.1064 0.0855347 9.96603 0.223498C9.06053 1.13425 8.15052 2.04051 7.23603 2.94225L7.20603 2.97225C6.26349 3.90397 5.31974 4.83447 4.37478 5.76375L2.05128 3.2415V3.2415Z' fill='%23121210'/%3E%3C/svg%3E%0A");
  position: absolute;
}
.woocommerce-account .woocommerce form input[type=checkbox]:focus-visible,
.woocommerce-checkout .woocommerce form input[type=checkbox]:focus-visible {
  outline-offset: 0.125rem;
  outline: 2px solid var(--it-color-accent);
  box-shadow: none;
}

.woocommerce-account .woocommerce form label:has(input[type=checkbox]),
.woocommerce-checkout .woocommerce form label:has(input[type=checkbox]) {
  display: flex;
  align-items: flex-start;
  gap: 0.5rem;
  margin-bottom: 0;
  cursor: pointer;
}

/**
 * Do not @use files with actual scss code in this file, as it will compile css code twice.
 * As this file going to be an standalone css file.
 */
.woocommerce-account .woocommerce form select,
.woocommerce-checkout .woocommerce form select {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  padding-right: 3.5rem;
  background-image: url("../img/arrow-down.svg");
  background-repeat: no-repeat;
  background-position: calc(100% - 1rem) center;
}

/**
 * Do not @use files with actual scss code in this file, as it will compile css code twice.
 * As this file going to be an standalone css file.
 */
.woocommerce-account .woocommerce form .checkout-inline-error-message,
.woocommerce-checkout .woocommerce form .checkout-inline-error-message {
  margin-top: 0.5rem;
}
.woocommerce-account .woocommerce form label,
.woocommerce-checkout .woocommerce form label {
  margin-bottom: 0.5rem;
  display: block;
  font-size: var(--it-size-small);
  line-height: 1.6;
}
.woocommerce-account .woocommerce form .select2 .select2-selection__rendered,
.woocommerce-checkout .woocommerce form .select2 .select2-selection__rendered {
  padding: 0;
  line-height: 1.6;
  font-size: var(--it-size-small);
}
.woocommerce-account .woocommerce form .select2.select2-container--open.select2-container--below .select2-selection,
.woocommerce-checkout .woocommerce form .select2.select2-container--open.select2-container--below .select2-selection {
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}
.woocommerce-account .woocommerce form .select2.select2-container--open.select2-container--above .select2-selection,
.woocommerce-checkout .woocommerce form .select2.select2-container--open.select2-container--above .select2-selection {
  border-top-right-radius: 0;
  border-top-left-radius: 0;
}
.woocommerce-account .woocommerce form fieldset,
.woocommerce-checkout .woocommerce form fieldset {
  border: 0;
  padding: 0;
  margin: 0;
  display: grid;
  row-gap: var(--it-spacing-default);
}
.woocommerce-account .woocommerce form fieldset legend,
.woocommerce-checkout .woocommerce form fieldset legend {
  display: flex;
  margin-bottom: var(--it-spacing-default);
}
.woocommerce-account .woocommerce form .show-password-input::before,
.woocommerce-checkout .woocommerce form .show-password-input::before {
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 19 17' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0.5 0.5L16.5 16.5M8.648 4.623C9.16773 4.46893 9.71949 4.45856 10.2446 4.59299C10.7698 4.72743 11.2487 5.00164 11.6305 5.38649C12.0122 5.77134 12.2826 6.25244 12.4128 6.77865C12.543 7.30486 12.5282 7.85652 12.37 8.375M5.91 2.378C10.174 0.262 14.767 1.97 18.5 7.5C17.473 9.021 16.381 10.253 15.249 11.196M12.74 12.786C8.576 14.642 4.131 12.88 0.5 7.5C1.51 6.004 2.583 4.787 3.696 3.85' stroke='%23121210' stroke-opacity='0.7' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E%0A");
  background-size: contain;
  width: 1.25rem;
  height: 1.125rem;
}
.woocommerce-account .woocommerce form .show-password-input.display-password::before,
.woocommerce-checkout .woocommerce form .show-password-input.display-password::before {
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 20 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0.833008 10C0.833008 10 4.16634 3.33333 9.99967 3.33333C15.833 3.33333 19.1663 10 19.1663 10' stroke='%2325445A' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M0.833008 10C0.833008 10 4.16634 16.6667 9.99967 16.6667C15.833 16.6667 19.1663 10 19.1663 10' stroke='%2325445A' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M10 12.5C11.3807 12.5 12.5 11.3807 12.5 10C12.5 8.61929 11.3807 7.5 10 7.5C8.61929 7.5 7.5 8.61929 7.5 10C7.5 11.3807 8.61929 12.5 10 12.5Z' stroke='%2325445A' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E%0A");
}
.woocommerce-account .woocommerce form .woocommerce-password-strength,
.woocommerce-checkout .woocommerce form .woocommerce-password-strength {
  border-radius: var(--it-border-radius-small);
  font-size: var(--it-size-x-small);
  font-weight: 400;
  padding: 0.25rem 0.5rem;
  margin-top: 0.5rem;
}
.woocommerce-account .woocommerce form small,
.woocommerce-checkout .woocommerce form small {
  font-size: var(--it-size-x-small);
}
.woocommerce-account .woocommerce form div:has(> .form-row):first-of-type,
.woocommerce-checkout .woocommerce form div:has(> .form-row):first-of-type {
  display: grid;
  gap: var(--it-spacing-default);
  align-items: start;
}
.woocommerce-account .woocommerce section,
.woocommerce-checkout .woocommerce section {
  display: grid;
  gap: var(--it-spacing-default);
  margin-bottom: 0;
}
.woocommerce-account .woocommerce section h2,
.woocommerce-checkout .woocommerce section h2 {
  font-size: var(--it-h5-font-size);
  line-height: var(--it-h5-line-height);
  font-weight: 400;
}
.woocommerce-account ins,
.woocommerce-checkout ins {
  text-decoration: none;
}
.woocommerce-account .addresses h2,
.woocommerce-checkout .addresses h2 {
  font-size: var(--it-h5-font-size);
  line-height: var(--it-h5-line-height);
  font-weight: 400;
}
.woocommerce-account .addresses address,
.woocommerce-checkout .addresses address {
  padding: 0.875rem;
  font-style: normal;
  font-size: var(--it-size-small);
  border: 1px solid var(--it-color-border);
  border-radius: var(--it-border-radius-small);
}
@media (min-width: 783px) {
  .woocommerce-account .woocommerce form div:has(> .form-row):first-of-type,
  .woocommerce-checkout .woocommerce form div:has(> .form-row):first-of-type {
    grid-template-columns: repeat(2, 1fr);
  }
  .woocommerce-account .woocommerce form div:has(> .form-row):first-of-type > *:last-child:nth-child(odd),
  .woocommerce-checkout .woocommerce form div:has(> .form-row):first-of-type > *:last-child:nth-child(odd) {
    grid-column: 1/-1;
  }
}

.select2-container .select2-dropdown {
  border-color: var(--it-color-border);
  border-radius: var(--it-border-radius);
  overflow: hidden;
}
.select2-container .select2-dropdown .select2-search {
  padding: var(--it-spacing-default-half);
}
.select2-container .select2-dropdown .select2-search__field {
  border-radius: var(--it-border-radius-small);
  padding: 0.5rem;
}
.select2-container .select2-dropdown .select2-results__option {
  padding: 0.5rem var(--it-spacing-default-half);
  font-size: var(--it-size-small);
}
.select2-container .select2-dropdown .select2-results__option[data-selected=true] {
  background: var(--it-color-background);
  color: var(--it-color-text);
}
.select2-container .select2-dropdown .select2-results__option--highlighted {
  background: var(--it-color-brand);
}

/**
 * Do not @use files with actual scss code in this file, as it will compile css code twice.
 * As this file going to be an standalone css file.
 */
/**
 * Do not @use files with actual scss code in this file, as it will compile css code twice.
 * As this file going to be an standalone css file.
 */
.woocommerce form .form-row {
  width: 100%;
  margin: 0;
  padding: 0;
}
.woocommerce form .form-row::before, .woocommerce form .form-row::after {
  content: none;
}
.woocommerce form .form-row em {
  font-style: normal;
  font-size: var(--it-size-small);
  display: inline-block;
  margin-top: 0.5rem;
  color: var(--it-color-placeholder);
}
.woocommerce form .form-row .required {
  color: var(--it-color-error);
}
.woocommerce form .clear {
  display: none;
}
.woocommerce form h2 {
  margin-bottom: var(--it-spacing-default);
  font-size: var(--it-h5-font-size);
  line-height: var(--it-h5-line-height);
  font-weight: 400;
}
@media (min-width: 783px) {
  .woocommerce form .form-row:has(+ [style*="display: none"]) {
    grid-column: span 2;
  }
  .woocommerce form .form-row-first {
    grid-column: 1;
  }
  .woocommerce form .form-row-last {
    grid-column: 2;
  }
}

/**
 * Do not @use files with actual scss code in this file, as it will compile css code twice.
 * As this file going to be an standalone css file.
 */
/**
 * Do not @use files with actual scss code in this file, as it will compile css code twice.
 * As this file going to be an standalone css file.
 */
/**
 * Do not @use files with actual scss code in this file, as it will compile css code twice.
 * As this file going to be an standalone css file.
 */
.woocommerce-account .woocommerce table,
.woocommerce-checkout .woocommerce table {
  border: 0;
  background-color: transparent;
  border-collapse: collapse;
  margin: 0;
}
.woocommerce-account .woocommerce table tr:nth-child(2n) td, .woocommerce-account .woocommerce table tr:hover td,
.woocommerce-checkout .woocommerce table tr:nth-child(2n) td,
.woocommerce-checkout .woocommerce table tr:hover td {
  background-color: transparent;
}
.woocommerce-account .woocommerce table tr td, .woocommerce-account .woocommerce table tr th,
.woocommerce-checkout .woocommerce table tr td,
.woocommerce-checkout .woocommerce table tr th {
  padding-block: 0.625rem;
  background-color: transparent;
}
.woocommerce-account .woocommerce table tr td:first-child, .woocommerce-account .woocommerce table tr th:first-child,
.woocommerce-checkout .woocommerce table tr td:first-child,
.woocommerce-checkout .woocommerce table tr th:first-child {
  padding-left: 0;
}
.woocommerce-account .woocommerce table tr td:last-child, .woocommerce-account .woocommerce table tr th:last-child,
.woocommerce-checkout .woocommerce table tr td:last-child,
.woocommerce-checkout .woocommerce table tr th:last-child {
  padding-right: 0;
}
.woocommerce-account .woocommerce table.woocommerce-orders-table td, .woocommerce-account .woocommerce table.woocommerce-orders-table th, .woocommerce-account .woocommerce table.woocommerce-table td, .woocommerce-account .woocommerce table.woocommerce-table th,
.woocommerce-checkout .woocommerce table.woocommerce-orders-table td,
.woocommerce-checkout .woocommerce table.woocommerce-orders-table th,
.woocommerce-checkout .woocommerce table.woocommerce-table td,
.woocommerce-checkout .woocommerce table.woocommerce-table th {
  padding-block: 1rem;
}
@media (min-width: 783px) {
  .woocommerce-account .woocommerce table.woocommerce-orders-table td, .woocommerce-account .woocommerce table.woocommerce-orders-table th, .woocommerce-account .woocommerce table.woocommerce-table td, .woocommerce-account .woocommerce table.woocommerce-table th,
  .woocommerce-checkout .woocommerce table.woocommerce-orders-table td,
  .woocommerce-checkout .woocommerce table.woocommerce-orders-table th,
  .woocommerce-checkout .woocommerce table.woocommerce-table td,
  .woocommerce-checkout .woocommerce table.woocommerce-table th {
    padding-inline: var(--it-spacing-default-half);
  }
}
@media (max-width: 479px) {
  .woocommerce-account .woocommerce table.woocommerce-orders-table td .button, .woocommerce-account .woocommerce table.woocommerce-orders-table th .button, .woocommerce-account .woocommerce table.woocommerce-table td .button, .woocommerce-account .woocommerce table.woocommerce-table th .button,
  .woocommerce-checkout .woocommerce table.woocommerce-orders-table td .button,
  .woocommerce-checkout .woocommerce table.woocommerce-orders-table th .button,
  .woocommerce-checkout .woocommerce table.woocommerce-table td .button,
  .woocommerce-checkout .woocommerce table.woocommerce-table th .button {
    margin-top: var(--it-spacing-form);
  }
}
@media screen and (max-width: 782px) and (min-width: 0px) {
  .woocommerce-account .woocommerce table.shop_table_responsive td, .woocommerce-account .woocommerce table.shop_table_responsive th,
  .woocommerce-checkout .woocommerce table.shop_table_responsive td,
  .woocommerce-checkout .woocommerce table.shop_table_responsive th {
    padding-inline: 0;
  }
}

/* Page styles. */
/**
 * Do not @use files with actual scss code in this file, as it will compile css code twice.
 * As this file going to be an standalone css file.
 */
/**
 * Do not @use files with actual scss code in this file, as it will compile css code twice.
 * As this file going to be an standalone css file.
 */
.woocommerce.single-product #content div.product .product-gallery-wrapper .onsale, .woocommerce ul.products li.product .woocommerce-loop-product__thumbnail .onsale {
  border-radius: var(--it-border-radius-small);
  background-color: var(--it-color-brand);
  padding: 0.5rem 1rem;
  min-height: auto;
  min-width: auto;
  line-height: initial;
  font-size: var(--it-size-small);
  margin: 0;
  top: var(--it-spacing-default-half);
  right: var(--it-spacing-default-half);
  font-weight: 400;
  z-index: 1;
}

.woocommerce .woocommerce-archive-count-and-order {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  justify-content: space-between;
  -moz-column-gap: var(--it-spacing-default);
       column-gap: var(--it-spacing-default);
  row-gap: var(--it-spacing-default-half);
  margin-bottom: var(--it-spacing-default);
}
.woocommerce .woocommerce-archive-count-and-order .woocommerce-result-count,
.woocommerce .woocommerce-archive-count-and-order .woocommerce-ordering {
  margin: 0;
}
.woocommerce ul.products {
  margin: 0;
  display: grid;
  -moz-column-gap: var(--it-spacing-columns);
       column-gap: var(--it-spacing-columns);
  row-gap: var(--it-spacing-content);
  grid-template-columns: repeat(auto-fill, minmax(18.75rem, 1fr));
}
.woocommerce ul.products::before, .woocommerce ul.products::after {
  content: none;
}
.woocommerce ul.products li.product {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  min-width: 100%;
  height: 100%;
  margin: 0 !important;
}
.woocommerce ul.products li.product .woocommerce-loop-product__main {
  display: flex;
  flex-direction: column;
  row-gap: var(--it-spacing-default-half);
}
.woocommerce ul.products li.product .woocommerce-loop-product__thumbnail {
  position: relative;
  margin-bottom: var(--it-spacing-default-half);
}
.woocommerce ul.products li.product .woocommerce-loop-product__thumbnail img {
  border-radius: var(--it-border-radius);
  margin: 0;
}
.woocommerce ul.products li.product .woocommerce-loop-product__title {
  padding: 0;
  font-size: var(--it-h4-font-size);
  line-height: var(--it-h4-line-height);
}
.woocommerce ul.products li.product .woocommerce-loop-product__title > a {
  color: inherit;
}
.woocommerce ul.products li.product .woocommerce-loop-product__sku {
  font-weight: 500;
  color: rgba(var(--it-color-black), 0.7);
  font-size: var(--it-size-x-small);
}
.woocommerce ul.products li.product .woocommerce-loop-product__bottom {
  margin-top: var(--it-spacing-default-half);
  display: flex;
  flex-direction: column;
  gap: var(--it-spacing-default);
}
.woocommerce ul.products li.product .woocommerce-loop-product__add-to-cart {
  position: relative;
}
.woocommerce ul.products li.product .woocommerce-loop-product__add-to-cart:has(.added) .added_to_cart {
  animation: cartLink 2.8s forwards;
}
.woocommerce ul.products li.product .woocommerce-loop-product__price-and-info {
  display: flex;
  flex-direction: column;
}
.woocommerce ul.products li.product .woocommerce-loop-product__price-and-info > * {
  margin: 0.25rem 0 0;
}
.woocommerce ul.products li.product .woocommerce-loop-product__price {
  font-size: var(--it-h4-font-size);
  line-height: var(--it-h4-line-height);
  color: var(--it-color-brand);
}
.woocommerce ul.products li.product .woocommerce-loop-product__price + * {
  margin-top: 0;
}
.woocommerce ul.products li.product .woocommerce-loop-product__price .price {
  margin: 0;
  color: var(--it-color-brand);
  font-weight: 700;
}
.woocommerce ul.products li.product .woocommerce-loop-product__price .price del {
  font-size: var(--it-h6-font-size);
  padding-right: 0.25rem;
}
.woocommerce ul.products li.product .woocommerce-loop-product__price .price ins {
  text-decoration: none;
}
.woocommerce ul.products li.product .button {
  background: transparent;
}
.woocommerce ul.products li.product .added_to_cart {
  inset: 0;
  font-size: 0;
  position: absolute;
  pointer-events: none;
}
@media (min-width: 783px) {
  .woocommerce ul.products li.product .woocommerce-loop-product__categories {
    font-size: var(--it-size-large);
  }
  .woocommerce ul.products li.product .woocommerce-loop-product__bottom {
    flex-direction: row;
    justify-content: space-between;
    align-items: flex-end;
  }
}

/**
 * Do not @use files with actual scss code in this file, as it will compile css code twice.
 * As this file going to be an standalone css file.
 */
/**
 * Do not @use files with actual scss code in this file, as it will compile css code twice.
 * As this file going to be an standalone css file.
 */
/**
 * Do not @use files with actual scss code in this file, as it will compile css code twice.
 * As this file going to be an standalone css file.
 */
/**
 * Do not @use files with actual scss code in this file, as it will compile css code twice.
 * As this file going to be an standalone css file.
 */
.woocommerce.single-product #content {
  overflow: hidden;
}
.woocommerce.single-product #content div.product {
  margin-top: var(--it-spacing-content);
  display: grid;
  gap: var(--it-spacing-default-half);
  grid-template-columns: 100%;
}
.woocommerce.single-product #content div.product.product-type-variable div.summary .product_title {
  font-size: var(--it-product-font-size);
  line-height: var(--it-product-line-height);
}
.woocommerce.single-product #content div.product.product-type-variable div.summary > .price {
  display: none;
}
.woocommerce.single-product #content div.product.product-type-variable div.summary .cart {
  flex-direction: column;
  gap: var(--it-spacing-default);
}
.woocommerce.single-product #content div.product.product-type-variable div.summary .cart .variations {
  margin: 0;
  display: block;
}
.woocommerce.single-product #content div.product.product-type-variable div.summary .cart .variations tbody {
  display: flex;
  -moz-column-gap: var(--it-spacing-form);
       column-gap: var(--it-spacing-form);
  grid-template-columns: repeat(2, 1fr);
  position: relative;
}
.woocommerce.single-product #content div.product.product-type-variable div.summary .cart .variations tbody:has(.reset_variations[style*="visibility: visible;"]) {
  padding-bottom: 2rem;
}
.woocommerce.single-product #content div.product.product-type-variable div.summary .cart .variations tr {
  width: 100%;
  display: flex;
  text-align: left;
  flex-direction: column;
}
.woocommerce.single-product #content div.product.product-type-variable div.summary .cart .variations tr label {
  font-weight: 400;
}
.woocommerce.single-product #content div.product.product-type-variable div.summary .cart .variations tr > * {
  width: 100%;
}
.woocommerce.single-product #content div.product.product-type-variable div.summary .cart .variations .reset_variations {
  width: auto !important;
  padding: 0 !important;
  position: absolute;
  left: 0;
  bottom: 0;
}
.woocommerce.single-product #content div.product.product-type-variable div.summary .cart .single_variation_wrap {
  display: flex;
  flex-direction: column;
  gap: var(--it-spacing-default-half);
  margin-top: var(--it-spacing-default);
}
.woocommerce.single-product #content div.product.product-type-variable div.summary .cart .single_variation_wrap .single_variation .woocommerce-variation-description {
  font-size: var(--it-size-small);
}
.woocommerce.single-product #content div.product.product-type-variable div.summary .cart .single_variation_wrap .single_variation:empty {
  display: none;
}
.woocommerce.single-product #content div.product.product-type-variable div.summary .cart .variations_button {
  display: flex;
  align-items: stretch;
  gap: var(--it-spacing-default-half);
}
@media (max-width: 1023px) {
  .woocommerce.single-product #content div.product.product-type-variable div.summary .cart .variations_button {
    flex-wrap: wrap;
  }
}
.woocommerce.single-product #content div.product.product-type-grouped div.summary .cart {
  flex-direction: column;
  gap: var(--it-spacing-default);
}
.woocommerce.single-product #content div.product.product-type-grouped div.summary .cart .woocommerce-grouped-product-list-item {
  display: grid;
  grid-template-rows: 1fr auto;
  grid-template-columns: 1fr 1fr;
  gap: var(--it-spacing-default-half);
  align-items: center;
  margin-bottom: var(--it-spacing-default-half);
  padding-bottom: var(--it-spacing-default-half);
  border-bottom: 1px solid var(--it-color-border);
}
.woocommerce.single-product #content div.product.product-type-grouped div.summary .cart .woocommerce-grouped-product-list-item:last-child {
  border-bottom: 0;
  padding-bottom: 0;
}
.woocommerce.single-product #content div.product.product-type-grouped div.summary .cart .woocommerce-grouped-product-list-item__quantity {
  width: auto;
  display: flex;
  padding: 0;
}
.woocommerce.single-product #content div.product.product-type-grouped div.summary .cart .woocommerce-grouped-product-list-item__quantity .quantity-input {
  margin-right: 0;
}
.woocommerce.single-product #content div.product.product-type-grouped div.summary .cart .woocommerce-grouped-product-list-item__quantity .woosw-btn {
  display: none;
}
.woocommerce.single-product #content div.product.product-type-grouped div.summary .cart .woocommerce-grouped-product-list-item__label {
  padding: 0;
  grid-column: 1/3;
  grid-row: 1/3;
}
.woocommerce.single-product #content div.product.product-type-grouped div.summary .cart .woocommerce-grouped-product-list-item__label a {
  display: inline-block;
  position: relative;
  text-decoration: none;
}
.woocommerce.single-product #content div.product.product-type-grouped div.summary .cart .woocommerce-grouped-product-list-item__label a:before {
  content: "";
  position: absolute;
  bottom: 1px;
  left: 0;
  width: 0;
  opacity: 0;
  height: 1px;
  background: currentColor;
  transition: width var(--it-transition), opacity 0.1s linear 0.2s;
}
.woocommerce.single-product #content div.product.product-type-grouped div.summary .cart .woocommerce-grouped-product-list-item__label a:hover {
  text-decoration: none !important;
}
.woocommerce.single-product #content div.product.product-type-grouped div.summary .cart .woocommerce-grouped-product-list-item__label a:hover:before {
  width: 100%;
  opacity: 1;
  transition: width var(--it-transition), opacity 0.1s linear;
}
.woocommerce.single-product #content div.product.product-type-grouped div.summary .cart .woocommerce-grouped-product-list-item__price {
  padding: 0;
  text-align: right;
}
.woocommerce.single-product #content div.product.product-type-grouped div.summary .cart .woocommerce-grouped-product-list-item__price .stock,
.woocommerce.single-product #content div.product.product-type-grouped div.summary .cart .woocommerce-grouped-product-list-item__price .legal-price-info {
  display: none;
}
.woocommerce.single-product #content div.product.product-type-grouped div.summary .cart .woocommerce-grouped-product-list-item__price ins {
  text-decoration: none;
}
.woocommerce.single-product #content div.product .product-gallery-wrapper {
  overflow: hidden;
  min-width: 0;
}
@media (max-width: 782px) {
  .woocommerce.single-product #content div.product .product-gallery-wrapper {
    max-width: 375px;
    margin: 0 auto;
  }
}
.woocommerce.single-product #content div.product .product-gallery-wrapper .onsale {
  display: none !important;
  right: auto;
  z-index: 2;
  left: var(--it-spacing-default-half);
}
.woocommerce.single-product #content div.product .product-gallery-wrapper .woocommerce-product-gallery {
  width: 100%;
  max-height: 100%;
  float: none;
  margin: 0;
  position: static;
  display: grid;
  grid-row-gap: var(--it-spacing-default-half);
  overflow: hidden;
  min-width: 0;
}
.woocommerce.single-product #content div.product .product-gallery-wrapper .woocommerce-product-gallery .swiper--images {
  overflow: visible;
  min-width: 0;
  width: 100%;
}
.woocommerce.single-product #content div.product .product-gallery-wrapper .woocommerce-product-gallery .swiper--images .swiper-slide {
  aspect-ratio: 3/4;
  transition: opacity 0.4s ease;
  cursor: pointer;
  position: relative;
}
.woocommerce.single-product #content div.product .product-gallery-wrapper .woocommerce-product-gallery .swiper--images .swiper-slide .product-image {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
  -o-object-position: center;
     object-position: center;
  display: block;
  position: relative;
  z-index: 0;
  max-height: 500px;
}
.woocommerce.single-product #content div.product .product-gallery-wrapper .woocommerce-product-gallery .swiper--images .swiper-slide::after {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.05);
  transition: opacity 0.4s ease;
  pointer-events: none;
  z-index: 1;
}
.woocommerce.single-product #content div.product .product-gallery-wrapper .woocommerce-product-gallery .swiper--images .swiper-slide.swiper-slide-active {
  cursor: default;
}
.woocommerce.single-product #content div.product .product-gallery-wrapper .woocommerce-product-gallery .swiper--images .swiper-slide.swiper-slide-active::after {
  opacity: 0;
}
.woocommerce.single-product #content div.product .product-gallery-wrapper .woocommerce-product-gallery .swiper--images:not(.swiper-initialized) .swiper-wrapper {
  display: block;
}
.woocommerce.single-product #content div.product .product-gallery-wrapper .woocommerce-product-gallery .swiper--images:not(.swiper-initialized) .swiper-slide {
  width: 100%;
  aspect-ratio: auto;
  opacity: 1;
  cursor: default;
}
.woocommerce.single-product #content div.product .product-gallery-wrapper .woocommerce-product-gallery .swiper-buttons {
  display: flex;
  justify-content: center;
  gap: var(--it-spacing-default);
  margin-top: var(--it-spacing-default-half);
}
.woocommerce.single-product #content div.product .product-gallery-wrapper .woocommerce-product-gallery .swiper-buttons .swiper-button-prev,
.woocommerce.single-product #content div.product .product-gallery-wrapper .woocommerce-product-gallery .swiper-buttons .swiper-button-next {
  position: static;
  transform: none;
  cursor: pointer;
}
.woocommerce.single-product #content div.product div.summary {
  float: none;
  width: 100%;
  min-width: 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: var(--it-spacing-default-half);
  grid-template-rows: auto;
  grid-auto-rows: min-content;
  align-items: start;
  grid-auto-flow: row dense;
}
.woocommerce.single-product #content div.product div.summary:has(.woocommerce-product-details__short-description) .stock {
  grid-row: 5/6;
}
.woocommerce.single-product #content div.product div.summary .product-volume {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: -moz-max-content;
  width: max-content;
  min-width: 3rem;
  padding: 0.81rem 0.37rem;
  font-size: 16px;
  text-align: center;
  color: #000;
  background-color: var(--it-color-white);
  border-radius: 2px;
  box-shadow: 0 0 0 2px var(--it-color-black);
}
.woocommerce.single-product #content div.product div.summary .product-categories {
  font-size: var(--it-h5-font-size);
  line-height: 1.1;
  font-weight: 400;
  background-color: var(--it-color-brand);
  padding: 0 10px 2px;
  width: -moz-fit-content;
  width: fit-content;
  height: auto;
}
.woocommerce.single-product #content div.product div.summary .product-categories a {
  color: var(--it-color-black);
  font-size: var(--it-size-small);
  display: inline-block;
  position: relative;
  text-decoration: none;
}
.woocommerce.single-product #content div.product div.summary .product-categories a:before {
  content: "";
  position: absolute;
  bottom: 3px;
  left: 0;
  width: 0;
  opacity: 0;
  height: 2px;
  background: currentColor;
  transition: width var(--it-transition), opacity 0.1s linear 0.2s;
}
.woocommerce.single-product #content div.product div.summary .product-categories a:hover {
  text-decoration: none !important;
}
.woocommerce.single-product #content div.product div.summary .product-categories a:hover:before {
  width: 100%;
  opacity: 1;
  transition: width var(--it-transition), opacity 0.1s linear;
}
.woocommerce.single-product #content div.product div.summary .product-categories a {
  text-decoration: none;
  padding: 0;
}
.woocommerce.single-product #content div.product div.summary .product-categories a:hover {
  color: var(--it-color-white);
}
.woocommerce.single-product #content div.product div.summary .product-categories a:before {
  display: none;
}
.woocommerce.single-product #content div.product div.summary .product-categories + .product_title {
  margin-top: calc(var(--it-spacing-default-half) * -1);
}
@media (max-width: 1023px) {
  .woocommerce.single-product #content div.product div.summary .product-categories + .product_title {
    margin-top: var(--it-spacing-default-half);
  }
}
.woocommerce.single-product #content div.product div.summary .product_title {
  font-size: var(--it-product-font-size);
  line-height: var(--it-product-line-height);
}
.woocommerce.single-product #content div.product div.summary .stock {
  grid-row: 4/5;
  display: flex;
  gap: 0.5rem;
  font-size: var(--it-size-x-small);
  color: var(--it-color-text);
}
.woocommerce.single-product #content div.product div.summary .stock::before {
  content: "";
  width: 1rem;
  height: 1rem;
  flex-shrink: 0;
  background-position: center;
  background-size: contain;
  transform: translateY(1px);
}
.woocommerce.single-product #content div.product div.summary .stock.in-stock::before {
  background-image: url("../img/woo-check-circle.svg");
}
.woocommerce.single-product #content div.product div.summary .stock.available-on-backorder::before {
  background-image: url("../img/woo-check-circle-yellow.svg");
}
.woocommerce.single-product #content div.product div.summary .stock.out-of-stock::before {
  background-image: url("../img/woo-cross-circle.svg");
}
.woocommerce.single-product #content div.product div.summary .woocommerce-product-details__short-description {
  font-size: var(--it-size-small);
  color: var(--it-color-text);
  padding-top: var(--it-spacing-default-half);
  border-top: 1px solid var(--it-color-border);
  font-style: italic;
}
.woocommerce.single-product #content div.product div.summary .woocommerce-product-details__short-description > *:last-child {
  margin-bottom: 0;
}
.woocommerce.single-product #content div.product div.summary .price {
  font-size: var(--it-h5-font-size);
  line-height: var(--it-h5-line-height);
  color: var(--it-color-black);
}
.woocommerce.single-product #content div.product div.summary .price bdi,
.woocommerce.single-product #content div.product div.summary .price ins,
.woocommerce.single-product #content div.product div.summary .price del, .woocommerce.single-product #content div.product div.summary .price > span {
  font-size: inherit;
  line-height: inherit;
  color: var(--it-color-black);
}
.woocommerce.single-product #content div.product div.summary .price del {
  font-size: var(--it-h5-font-size);
  line-height: var(--it-h5-line-height);
  padding-right: 0.25rem;
}
.woocommerce.single-product #content div.product div.summary .price del bdi {
  opacity: 0.5;
  font-size: inherit;
}
.woocommerce.single-product #content div.product div.summary .price ins {
  text-decoration: none;
}
.woocommerce.single-product #content div.product div.summary .price > .amount > bdi {
  font-weight: 500;
}
.woocommerce.single-product #content div.product div.summary .legal-price-info {
  margin-top: calc(var(--it-spacing-default-half) * -1);
  display: flex;
  flex-direction: column;
  gap: var(--it-spacing-default-half);
}
.woocommerce.single-product #content div.product div.summary .legal-price-info > * {
  margin-bottom: 0;
}
.woocommerce.single-product #content div.product div.summary .cart {
  width: 100%;
  display: flex;
  align-items: stretch;
  gap: var(--it-spacing-default-half);
  margin-bottom: 0;
}
@media (max-width: 1279px) {
  .woocommerce.single-product #content div.product div.summary .cart {
    flex-wrap: wrap;
  }
}
.woocommerce.single-product #content div.product div.summary .cart:before, .woocommerce.single-product #content div.product div.summary .cart:after {
  display: none;
}
.woocommerce.single-product #content div.product div.summary .cart .quantity-input {
  order: 1;
  flex-shrink: 0;
  margin-right: var(--it-spacing-default-half);
  border-radius: 0;
  height: var(--it-height-cart);
}
.woocommerce.single-product #content div.product div.summary .cart .quantity-input .qty-btn {
  background-color: var(--it-color-brand);
  border-color: var(--it-color-brand);
  color: #000;
  transition: background-color 0.3s ease, border-color 0.3s ease, color 0.3s ease;
}
.woocommerce.single-product #content div.product div.summary .cart .quantity-input .qty-btn:hover {
  background-color: #000;
  border-color: #000;
  color: #fff;
}
.woocommerce.single-product #content div.product div.summary .cart .quantity-input input.qty {
  border-color: #000;
  color: #000;
  border-radius: 0;
}
.woocommerce.single-product #content div.product div.summary .cart .woosw-btn {
  order: 2;
  flex-shrink: 0;
  margin-right: 0;
  cursor: pointer;
}
.woocommerce.single-product #content div.product div.summary .cart .button {
  width: 100% !important;
  order: 3;
  background-color: var(--it-color-brand) !important;
  border-color: var(--it-color-brand) !important;
  color: #000 !important;
  border-radius: 0;
  text-transform: uppercase;
  transition: background-color 0.3s ease, border-color 0.3s ease, color 0.3s ease;
}
.woocommerce.single-product #content div.product div.summary .cart .button:hover {
  background-color: #000 !important;
  border-color: #000 !important;
  color: #fff !important;
}
.woocommerce.single-product #content div.product div.summary .product-icons {
  background: var(--it-color-background);
  border-radius: var(--it-border-radius);
  display: grid;
  grid-template-rows: repeat(3, auto);
  align-items: stretch;
  padding: 0.375rem 0;
}
.woocommerce.single-product #content div.product div.summary .product-icons__item {
  text-align: center;
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  position: relative;
  padding: 0.375rem 0.75rem;
  font-size: var(--it-size-x-small);
}
.woocommerce.single-product #content div.product div.summary .product-icons__item img,
.woocommerce.single-product #content div.product div.summary .product-icons__item svg {
  max-width: 1.5rem;
  max-height: 1.5rem;
}
.woocommerce.single-product #content div.product div.summary .product-icons__item img {
  -o-object-fit: contain;
     object-fit: contain;
  -o-object-position: center;
     object-position: center;
}
.woocommerce.single-product #content div.product .woocommerce-tabs ul.tabs {
  padding: 0;
  overflow: auto;
  display: flex;
  gap: var(--it-spacing-default-half);
  margin-bottom: var(--it-spacing-content);
}
.woocommerce.single-product #content div.product .woocommerce-tabs ul.tabs:before, .woocommerce.single-product #content div.product .woocommerce-tabs ul.tabs:after {
  display: none;
}
.woocommerce.single-product #content div.product .woocommerce-tabs ul.tabs li {
  margin: 0;
  padding: 0;
  background: none;
  border: 1px solid var(--it-color-black);
  border-radius: 0;
  transition: background-color 0.25s ease, color 0.25s ease;
}
.woocommerce.single-product #content div.product .woocommerce-tabs ul.tabs li a {
  display: block;
  font-weight: 400;
  padding: var(--it-spacing-default-half) var(--it-spacing-default);
  white-space: nowrap;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  font-size: var(--it-size-x-small);
  color: var(--it-color-black);
}
.woocommerce.single-product #content div.product .woocommerce-tabs ul.tabs li:before, .woocommerce.single-product #content div.product .woocommerce-tabs ul.tabs li:after {
  display: none;
}
.woocommerce.single-product #content div.product .woocommerce-tabs ul.tabs li:hover {
  background: var(--it-color-background);
}
.woocommerce.single-product #content div.product .woocommerce-tabs ul.tabs li.active {
  background: var(--it-color-black);
}
.woocommerce.single-product #content div.product .woocommerce-tabs ul.tabs li.active a {
  color: var(--it-color-white);
}
.woocommerce.single-product #content div.product .woocommerce-tabs .woocommerce-Tabs-panel {
  margin: 0;
}
.woocommerce.single-product #content div.product .woocommerce-tabs .woocommerce-Tabs-panel h2 {
  font-size: var(--it-h3-font-size);
  line-height: var(--it-h3-line-height);
  margin-bottom: var(--it-spacing-default);
}
.woocommerce.single-product #content div.product .woocommerce-tabs .woocommerce-Tabs-panel .product-notes {
  margin-bottom: var(--it-spacing-content);
}
.woocommerce.single-product #content div.product .woocommerce-tabs .woocommerce-Tabs-panel .product-notes__list {
  margin: 0;
  width: 100%;
  max-width: 35rem;
  display: grid;
  grid-template-columns: 35% 1fr;
}
.woocommerce.single-product #content div.product .woocommerce-tabs .woocommerce-Tabs-panel .product-notes__label, .woocommerce.single-product #content div.product .woocommerce-tabs .woocommerce-Tabs-panel .product-notes__value {
  margin: 0;
  padding: var(--it-spacing-default-half) 0;
  border-bottom: 1px solid var(--it-color-border);
  line-height: 1.4;
}
.woocommerce.single-product #content div.product .woocommerce-tabs .woocommerce-Tabs-panel .product-notes__label {
  font-weight: 400;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  font-size: var(--it-size-x-small);
  color: var(--it-color-text);
}
.woocommerce.single-product #content div.product .woocommerce-tabs .woocommerce-Tabs-panel .product-notes__value {
  font-size: var(--it-size-small);
  color: var(--it-color-black);
  font-style: italic;
}
.woocommerce.single-product #content div.product .woocommerce-tabs .woocommerce-Tabs-panel .product-notes__label:nth-last-child(2), .woocommerce.single-product #content div.product .woocommerce-tabs .woocommerce-Tabs-panel .product-notes__value:last-child {
  border-bottom: 0;
}
.woocommerce.single-product #content div.product .woocommerce-tabs .woocommerce-Tabs-panel table.shop_attributes {
  margin: 0;
  border: 0;
  width: 100%;
  max-width: 35rem;
}
.woocommerce.single-product #content div.product .woocommerce-tabs .woocommerce-Tabs-panel table.shop_attributes tr {
  border: 0;
}
.woocommerce.single-product #content div.product .woocommerce-tabs .woocommerce-Tabs-panel table.shop_attributes th,
.woocommerce.single-product #content div.product .woocommerce-tabs .woocommerce-Tabs-panel table.shop_attributes td {
  padding: var(--it-spacing-default-half) 0;
  border: 0;
  border-bottom: 1px solid var(--it-color-border);
  text-align: left;
  vertical-align: top;
  line-height: 1.4;
  background: none !important;
}
.woocommerce.single-product #content div.product .woocommerce-tabs .woocommerce-Tabs-panel table.shop_attributes th {
  width: 35%;
  font-weight: 400;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  font-size: var(--it-size-x-small);
  color: var(--it-color-text);
}
.woocommerce.single-product #content div.product .woocommerce-tabs .woocommerce-Tabs-panel table.shop_attributes td {
  font-size: var(--it-size-small);
  color: var(--it-color-black);
}
.woocommerce.single-product #content div.product .woocommerce-tabs .woocommerce-Tabs-panel table.shop_attributes td p {
  margin: 0;
}
.woocommerce.single-product #content div.product .woocommerce-tabs .woocommerce-Tabs-panel table.shop_attributes tr:last-child th,
.woocommerce.single-product #content div.product .woocommerce-tabs .woocommerce-Tabs-panel table.shop_attributes tr:last-child td {
  border-bottom: 0;
}
.woocommerce.single-product #content div.product .additional-products__header {
  position: relative;
}
.woocommerce.single-product #content div.product .additional-products__header h2 {
  padding-right: 6.25rem;
}
.woocommerce.single-product #content div.product .additional-products__header .swiper-buttons {
  position: absolute;
  display: inline-flex;
  gap: var(--it-spacing-default);
  right: 0;
  top: 50%;
  transform: translateY(-50%);
}
.woocommerce.single-product #content div.product .additional-products__header .swiper-buttons:has(.swiper-button-prev.swiper-button-disabled):has(.swiper-button-next.swiper-button-disabled) {
  display: none;
}
.woocommerce.single-product #content div.product .additional-products .swiper-products {
  margin-top: var(--it-spacing-content);
}
.woocommerce.single-product #content div.product .additional-products .swiper-slide {
  padding-right: 1px;
}
.woocommerce.single-product #content div.product .additional-products .swiper-slide ul.products {
  display: block;
}
@media screen and (max-width: 675px) and (min-width: 0px) {
  .woocommerce.single-product #content div.product .additional-products__header h2 {
    padding-right: 0;
  }
  .woocommerce.single-product #content div.product .additional-products__header .swiper-buttons {
    display: none;
  }
  .woocommerce.single-product #content div.product .additional-products .swiper-slide {
    width: max(17.5rem, 80vw);
  }
}
@media screen and (max-width: 675px) and (min-width: 0px) {
  .woocommerce.single-product #content div.product.product-type-variable div.summary .cart .variations_button,
  .woocommerce.single-product #content div.product.product-type-variable div.summary .cart .cart {
    display: flex;
    flex-direction: column;
    -moz-column-gap: var(--it-spacing-default-half);
         column-gap: var(--it-spacing-default-half);
    row-gap: var(--it-spacing-default-half);
    align-items: stretch;
  }
  .woocommerce.single-product #content div.product.product-type-variable div.summary .cart .variations_button .quantity,
  .woocommerce.single-product #content div.product.product-type-variable div.summary .cart .variations_button .quantity-input,
  .woocommerce.single-product #content div.product.product-type-variable div.summary .cart .cart .quantity,
  .woocommerce.single-product #content div.product.product-type-variable div.summary .cart .cart .quantity-input {
    margin-right: 0;
  }
  .woocommerce.single-product #content div.product.product-type-variable div.summary .cart .variations_button .quantity input,
  .woocommerce.single-product #content div.product.product-type-variable div.summary .cart .variations_button .quantity-input input,
  .woocommerce.single-product #content div.product.product-type-variable div.summary .cart .cart .quantity input,
  .woocommerce.single-product #content div.product.product-type-variable div.summary .cart .cart .quantity-input input {
    width: 100% !important;
    text-align: center;
  }
  .woocommerce.single-product #content div.product div.summary .cart .quantity,
  .woocommerce.single-product #content div.product div.summary .cart .quantity-input {
    margin-right: 0;
    width: 100% !important;
  }
  .woocommerce.single-product #content div.product div.summary .cart .quantity input,
  .woocommerce.single-product #content div.product div.summary .cart .quantity-input input {
    width: 100% !important;
    text-align: center;
  }
  .woocommerce.single-product #content div.product .woocommerce-tabs ul.tabs {
    display: none;
  }
  .woocommerce.single-product #content div.product .woocommerce-tabs .woocommerce-Tabs-panel {
    display: block !important;
    margin: 0;
    border-bottom: 1px solid var(--it-color-border);
  }
  .woocommerce.single-product #content div.product .woocommerce-tabs .tab-accordion__header {
    margin: 0 !important;
    padding: var(--it-spacing-default) 0;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-size: var(--it-h3-font-size);
  }
  .woocommerce.single-product #content div.product .woocommerce-tabs .tab-accordion__header:after {
    content: "+";
    font-size: 1.5em;
    line-height: 1;
    transition: transform 0.25s ease;
  }
  .woocommerce.single-product #content div.product .woocommerce-tabs .tab-accordion__body {
    overflow: hidden;
    max-height: 0;
    transition: max-height 0.3s ease;
  }
  .woocommerce.single-product #content div.product .woocommerce-tabs .tab-accordion.is-open .tab-accordion__header:after {
    content: "−";
  }
  .woocommerce.single-product #content div.product .woocommerce-tabs .tab-accordion.is-open .tab-accordion__body {
    max-height: 200vh;
    padding-bottom: var(--it-spacing-default);
  }
}
@media (min-width: 783px) {
  .woocommerce.single-product #content div.product {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    align-items: start;
  }
  .woocommerce.single-product #content div.product .product-gallery-wrapper {
    grid-column: 1/2;
    width: auto;
  }
  .woocommerce.single-product #content div.product div.summary {
    max-width: 31.25rem;
    min-width: 0;
  }
  .woocommerce.single-product #content div.product div.summary .product-icons {
    padding: 1rem 0;
    grid-template-rows: auto;
    grid-template-columns: repeat(3, 1fr);
  }
  .woocommerce.single-product #content div.product div.summary .product-icons__item {
    padding: 0 0.75rem;
    flex-direction: column;
  }
  .woocommerce.single-product #content div.product div.summary .product-icons__item:after {
    content: "";
    position: absolute;
    right: 0;
    width: 1px;
    height: 75%;
    top: 50%;
    transform: translateY(-50%);
    background: var(--it-color-border);
  }
  .woocommerce.single-product #content div.product div.summary .product-icons__item:last-child:after {
    display: none;
  }
  .woocommerce.single-product #content div.product .woocommerce-tabs {
    grid-column: 1/3;
  }
  .woocommerce.single-product #content div.product .woocommerce-tabs .product-notes__tier--top {
    width: 45%;
  }
  .woocommerce.single-product #content div.product .woocommerce-tabs .product-notes__tier--heart {
    width: 68%;
  }
  .woocommerce.single-product #content div.product .additional-products {
    grid-column: 1/3;
  }
}
@media (min-width: 1024px) {
  .woocommerce.single-product #content div.product {
    gap: var(--it-spacing-section);
  }
  .woocommerce.single-product #content div.product .product-gallery-wrapper {
    max-width: 480px;
    margin: 0 auto;
    max-height: 500px;
    overflow: hidden;
  }
  .woocommerce.single-product #content div.product.product-type-grouped div.summary .cart .woocommerce-grouped-product-list-item {
    grid-template-rows: auto;
    grid-template-columns: 5.3125rem 1fr 10rem;
    padding-bottom: 0;
    border-bottom: 0;
  }
  .woocommerce.single-product #content div.product.product-type-grouped div.summary .cart .woocommerce-grouped-product-list-item.outofstock {
    display: none;
  }
  .woocommerce.single-product #content div.product.product-type-grouped div.summary .cart .woocommerce-grouped-product-list-item__label {
    grid-column: auto;
    grid-row: auto;
  }
  .woocommerce.single-product #content div.product.product-type-grouped div.summary .cart .woocommerce-grouped-product-list-item__price {
    text-align: left;
  }
}

.woocommerce div.product form.cart .variations select {
  border-radius: 3px;
}

.variations-form--swatches .variation-buttons {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 16px;
}
.variations-form--swatches .variation-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 72px;
  padding: 10px 16px;
  border: 1px solid #d9d9d9;
  border-radius: 8px;
  background: #fff;
  font-size: 14px;
  line-height: 1;
  cursor: pointer;
  transition: border-color 0.15s, box-shadow 0.15s;
}
.variations-form--swatches .variation-btn:hover:not(.is-disabled) {
  border-color: #000;
}
.variations-form--swatches .variation-btn.is-selected {
  border-color: #000;
  border-width: 2px;
  box-shadow: none;
}
.variations-form--swatches .variation-btn.is-disabled {
  opacity: 0.35;
  cursor: not-allowed;
  pointer-events: none;
  position: relative;
}
.variations-form--swatches .variation-btn.is-disabled::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(to top right, transparent calc(50% - 0.5px), #ccc calc(50% - 0.5px), #ccc calc(50% + 0.5px), transparent calc(50% + 0.5px));
  border-radius: inherit;
}
.variations-form--swatches .reset_variations {
  display: inline-block;
  margin-top: 4px;
  font-size: 12px;
  color: #767676;
  text-decoration: underline;
}
.variations-form--swatches .reset_variations:hover {
  color: #000;
}

.buy-now {
  order: 4;
  width: 100% !important;
  border-radius: 3px;
  background: var(--it-color-black) !important;
  border-color: var(--it-color-black) !important;
  color: var(--it-color-white) !important;
  transition: opacity 0.25s ease, background-color 0.25s ease;
}
.buy-now:hover {
  background: var(--it-color-brand) !important;
  border-color: var(--it-color-brand) !important;
  color: var(--it-color-black) !important;
}
.buy-now.disabled, .buy-now:disabled {
  opacity: 0.4;
  pointer-events: none;
}
.buy-now.is-loading {
  opacity: 0.6;
  pointer-events: none;
}

/**
 * Do not @use files with actual scss code in this file, as it will compile css code twice.
 * As this file going to be an standalone css file.
 */
/**
 * Do not @use files with actual scss code in this file, as it will compile css code twice.
 * As this file going to be an standalone css file.
 */
/**
 * Do not @use files with actual scss code in this file, as it will compile css code twice.
 * As this file going to be an standalone css file.
 */
/**
 * Do not @use files with actual scss code in this file, as it will compile css code twice.
 * As this file going to be an standalone css file.
 */
/**
 * Do not @use files with actual scss code in this file, as it will compile css code twice.
 * As this file going to be an standalone css file.
 */
.woocommerce-checkout .woocommerce .checkout .woocommerce-order .shop_table, .woocommerce-cart .woocommerce .cart-collaterals .cart_totals .shop_table {
  background-color: transparent;
  margin: 0;
  border: 0;
}
.woocommerce-checkout .woocommerce .checkout .woocommerce-order .shop_table thead, .woocommerce-cart .woocommerce .cart-collaterals .cart_totals .shop_table thead {
  display: none;
}
.woocommerce-checkout .woocommerce .checkout .woocommerce-order .shop_table img, .woocommerce-cart .woocommerce .cart-collaterals .cart_totals .shop_table img {
  border-radius: var(--it-border-radius-small);
}
.woocommerce-checkout .woocommerce .checkout .woocommerce-order .shop_table tr:first-child td, .woocommerce-cart .woocommerce .cart-collaterals .cart_totals .shop_table tr:first-child td {
  border-top: 0;
}
.woocommerce-checkout .woocommerce .checkout .woocommerce-order .shop_table tr.order-total-small-business-notice:last-child th, .woocommerce-cart .woocommerce .cart-collaterals .cart_totals .shop_table tr.order-total-small-business-notice:last-child th,
.woocommerce-checkout .woocommerce .checkout .woocommerce-order .shop_table tr.order-total-small-business-notice:last-child td,
.woocommerce-cart .woocommerce .cart-collaterals .cart_totals .shop_table tr.order-total-small-business-notice:last-child td {
  padding-bottom: 0;
}
.woocommerce-checkout .woocommerce .checkout .woocommerce-order .shop_table tr.order-total-small-business-notice th, .woocommerce-cart .woocommerce .cart-collaterals .cart_totals .shop_table tr.order-total-small-business-notice th,
.woocommerce-checkout .woocommerce .checkout .woocommerce-order .shop_table tr.order-total-small-business-notice td,
.woocommerce-cart .woocommerce .cart-collaterals .cart_totals .shop_table tr.order-total-small-business-notice td {
  border-bottom: 0;
}
.woocommerce-checkout .woocommerce .checkout .woocommerce-order .shop_table tr.order-total, .woocommerce-cart .woocommerce .cart-collaterals .cart_totals .shop_table tr.order-total {
  font-size: var(--it-size-large);
}
.woocommerce-checkout .woocommerce .checkout .woocommerce-order .shop_table tr.order-total th, .woocommerce-cart .woocommerce .cart-collaterals .cart_totals .shop_table tr.order-total th,
.woocommerce-checkout .woocommerce .checkout .woocommerce-order .shop_table tr.order-total td,
.woocommerce-cart .woocommerce .cart-collaterals .cart_totals .shop_table tr.order-total td {
  font-weight: 700;
}
.woocommerce-checkout .woocommerce .checkout .woocommerce-order .shop_table th, .woocommerce-cart .woocommerce .cart-collaterals .cart_totals .shop_table th {
  width: 100%;
}
.woocommerce-checkout .woocommerce .checkout .woocommerce-order .shop_table th, .woocommerce-cart .woocommerce .cart-collaterals .cart_totals .shop_table th,
.woocommerce-checkout .woocommerce .checkout .woocommerce-order .shop_table td,
.woocommerce-cart .woocommerce .cart-collaterals .cart_totals .shop_table td {
  padding: var(--it-spacing-form) var(--it-spacing-default-half);
  border-top: 0;
  border-bottom: 1px solid var(--it-color-border);
  background: none;
}
.woocommerce-checkout .woocommerce .checkout .woocommerce-order .shop_table th:first-child, .woocommerce-cart .woocommerce .cart-collaterals .cart_totals .shop_table th:first-child,
.woocommerce-checkout .woocommerce .checkout .woocommerce-order .shop_table td:first-child,
.woocommerce-cart .woocommerce .cart-collaterals .cart_totals .shop_table td:first-child {
  padding-left: 0;
}
.woocommerce-checkout .woocommerce .checkout .woocommerce-order .shop_table th:last-child, .woocommerce-cart .woocommerce .cart-collaterals .cart_totals .shop_table th:last-child,
.woocommerce-checkout .woocommerce .checkout .woocommerce-order .shop_table td:last-child,
.woocommerce-cart .woocommerce .cart-collaterals .cart_totals .shop_table td:last-child {
  padding-right: 0;
  font-weight: 700;
  text-align: right;
  white-space: nowrap;
}
.woocommerce-checkout .woocommerce .checkout .woocommerce-order .shop_table th, .woocommerce-cart .woocommerce .cart-collaterals .cart_totals .shop_table th {
  font-weight: 400;
}
.woocommerce-checkout .woocommerce .checkout .woocommerce-order .shop_table .wc-gzd-additional-info, .woocommerce-cart .woocommerce .cart-collaterals .cart_totals .shop_table .wc-gzd-additional-info {
  font-size: var(--it-size-small);
}
.woocommerce-checkout .woocommerce .checkout .woocommerce-order .shop_table .woocommerce-shipping-methods, .woocommerce-cart .woocommerce .cart-collaterals .cart_totals .shop_table .woocommerce-shipping-methods {
  margin: 0;
  list-style-type: none;
}
.woocommerce-checkout .woocommerce .checkout .woocommerce-order .shop_table .woocommerce-shipping-methods label, .woocommerce-cart .woocommerce .cart-collaterals .cart_totals .shop_table .woocommerce-shipping-methods label {
  margin-bottom: 0;
  font-size: var(--it-size-medium);
}
.woocommerce-checkout .woocommerce .checkout .woocommerce-order .shop_table .woocommerce-shipping-methods label:has(*), .woocommerce-cart .woocommerce .cart-collaterals .cart_totals .shop_table .woocommerce-shipping-methods label:has(*) {
  font-size: 0;
  line-height: 0;
}
.woocommerce-checkout .woocommerce .checkout .woocommerce-order .shop_table .woocommerce-shipping-methods label:has(*) > *, .woocommerce-cart .woocommerce .cart-collaterals .cart_totals .shop_table .woocommerce-shipping-methods label:has(*) > * {
  font-size: var(--it-size-medium);
  line-height: 1.6;
}
@media screen and (max-width: 782px) and (min-width: 0px) {
  .woocommerce-checkout .woocommerce .checkout .woocommerce-order .shop_table_responsive.shop_table td, .woocommerce-cart .woocommerce .cart-collaterals .cart_totals .shop_table_responsive.shop_table td, .woocommerce-checkout .woocommerce .checkout .woocommerce-order .shop_table_responsive.shop_table th, .woocommerce-cart .woocommerce .cart-collaterals .cart_totals .shop_table_responsive.shop_table th {
    padding-inline: 0;
  }
}
@media (min-width: 1024px) {
  .woocommerce-checkout .woocommerce .checkout .woocommerce-order .shop_table, .woocommerce-cart .woocommerce .cart-collaterals .cart_totals .shop_table {
    display: block;
    overflow: auto;
    max-height: 100%;
  }
}
@media (min-width: 1366px) {
  .woocommerce-checkout .woocommerce .checkout .woocommerce-order .shop_table .wc-gzd-additional-info, .woocommerce-cart .woocommerce .cart-collaterals .cart_totals .shop_table .wc-gzd-additional-info {
    font-size: var(--it-size-medium);
  }
}

.woocommerce-cart .woocommerce {
  display: grid;
  grid-template-columns: 1fr;
}
.woocommerce-cart .woocommerce .woocommerce-notices-wrapper {
  grid-column: 1/-1;
}
.woocommerce-cart .woocommerce form.woocommerce-cart-form {
  display: flex;
  grid-column: 1/3;
  flex-direction: column;
  gap: var(--it-spacing-default);
}
.woocommerce-cart .woocommerce form.woocommerce-cart-form table.woocommerce-cart-form__contents {
  border: 0;
}
.woocommerce-cart .woocommerce form.woocommerce-cart-form table.woocommerce-cart-form__contents thead {
  display: none;
}
.woocommerce-cart .woocommerce form.woocommerce-cart-form table.woocommerce-cart-form__contents tbody {
  display: grid;
}
.woocommerce-cart .woocommerce form.woocommerce-cart-form .woocommerce-cart-form__cart-item {
  display: grid;
  align-items: start;
  grid-template-columns: 5rem 1fr auto;
  grid-row-gap: var(--it-spacing-form);
  grid-column-gap: 1.5rem;
  padding: var(--it-spacing-default) 0;
  border-bottom: 1px solid var(--it-color-border);
}
.woocommerce-cart .woocommerce form.woocommerce-cart-form .woocommerce-cart-form__cart-item:first-child {
  border-top: 1px solid var(--it-color-border);
}
.woocommerce-cart .woocommerce form.woocommerce-cart-form .woocommerce-cart-form__cart-item td {
  padding: 0;
  border: 0;
  background: none;
}
.woocommerce-cart .woocommerce form.woocommerce-cart-form .woocommerce-cart-form__cart-item td:before {
  display: none;
}
.woocommerce-cart .woocommerce form.woocommerce-cart-form .woocommerce-cart-form__cart-item .product-thumbnail {
  grid-row: 1/3;
  grid-column: 1/2;
  display: block !important;
}
.woocommerce-cart .woocommerce form.woocommerce-cart-form .woocommerce-cart-form__cart-item .product-thumbnail a img {
  width: 100%;
  max-width: 5rem;
  border-radius: var(--it-border-radius-small);
}
.woocommerce-cart .woocommerce form.woocommerce-cart-form .woocommerce-cart-form__cart-item .product-name {
  grid-column: 2/3;
  text-align: left !important;
}
.woocommerce-cart .woocommerce form.woocommerce-cart-form .woocommerce-cart-form__cart-item .product-name .label_with_price {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.woocommerce-cart .woocommerce form.woocommerce-cart-form .woocommerce-cart-form__cart-item .product-name .label_with_price .label {
  font-size: var(--it-h6-font-size);
  line-height: var(--it-h6-line-height);
  font-weight: 500;
}
.woocommerce-cart .woocommerce form.woocommerce-cart-form .woocommerce-cart-form__cart-item .product-name .label_with_price .label a {
  text-decoration: none;
}
.woocommerce-cart .woocommerce form.woocommerce-cart-form .woocommerce-cart-form__cart-item .product-name .label_with_price .price del {
  opacity: 0.5;
  font-size: var(--it-size-small);
}
.woocommerce-cart .woocommerce form.woocommerce-cart-form .woocommerce-cart-form__cart-item .product-name .label_with_price .price ins {
  text-decoration: none;
}
.woocommerce-cart .woocommerce form.woocommerce-cart-form .woocommerce-cart-form__cart-item .product-quantity {
  text-align: center;
  grid-column: 2/3;
  width: -moz-max-content;
  width: max-content;
}
.woocommerce-cart .woocommerce form.woocommerce-cart-form .woocommerce-cart-form__cart-item .product-price {
  display: none;
}
.woocommerce-cart .woocommerce form.woocommerce-cart-form .woocommerce-cart-form__cart-item .product-subtotal {
  grid-column: 3/4;
  grid-row: 1/2;
  text-align: center;
  font-weight: 700;
  color: var(--it-color-brand);
}
.woocommerce-cart .woocommerce form.woocommerce-cart-form .woocommerce-cart-form__cart-item .product-remove {
  grid-column: 2/3;
  grid-row: 3/4;
}
.woocommerce-cart .woocommerce form.woocommerce-cart-form .woocommerce-cart-form__cart-item .product-remove a {
  width: auto;
  text-decoration: underline;
  font-size: var(--it-size-small);
  color: var(--it-color-text) !important;
  text-align: left;
  font-weight: 400;
  display: inline-block;
  border-radius: 0;
}
.woocommerce-cart .woocommerce form.woocommerce-cart-form .woocommerce-cart-form__cart-item .product-remove a:hover {
  background: transparent;
}
.woocommerce-cart .woocommerce form.woocommerce-cart-form tr:last-child {
  width: 100%;
  display: block;
  margin-top: var(--it-spacing-default);
}
.woocommerce-cart .woocommerce form.woocommerce-cart-form tr:last-child td {
  padding: 0;
  border: 0;
  display: flex;
}
.woocommerce-cart .woocommerce form.woocommerce-cart-form tr:last-child .coupon {
  width: 100%;
  display: grid;
  float: none !important;
  grid-template-rows: 1fr 1fr;
  gap: var(--it-spacing-form);
  padding-bottom: 0 !important;
}
.woocommerce-cart .woocommerce form.woocommerce-cart-form tr:last-child .coupon:before, .woocommerce-cart .woocommerce form.woocommerce-cart-form tr:last-child .coupon:after {
  display: none !important;
}
.woocommerce-cart .woocommerce form.woocommerce-cart-form tr:last-child .coupon .input-text {
  width: auto !important;
  margin: 0;
}
.woocommerce-cart .woocommerce form.woocommerce-cart-form tr:last-child .coupon .coupon-error-notice {
  grid-column: 1/-1;
}
.woocommerce-cart .woocommerce form.woocommerce-cart-form tr:last-child .button {
  width: auto !important;
  float: none !important;
}
.woocommerce-cart .woocommerce form.woocommerce-cart-form tr:last-child .button[name=update_cart] {
  display: none !important;
}
.woocommerce-cart .woocommerce .cart-collaterals {
  margin-top: var(--it-spacing-section-half);
}
.woocommerce-cart .woocommerce .cart-collaterals:before, .woocommerce-cart .woocommerce .cart-collaterals:after {
  display: none;
}
.woocommerce-cart .woocommerce .cart-collaterals .cart_totals {
  width: 100%;
  float: none;
  display: grid;
  gap: var(--it-spacing-default);
  grid-template-rows: auto 1fr;
}
.woocommerce-cart .woocommerce .cart-collaterals .cart_totals h2 {
  font-size: var(--it-h5-font-size);
  line-height: var(--it-h5-line-height);
}
.woocommerce-cart .woocommerce .cart-collaterals .cart_totals .shop_table tr:first-child th,
.woocommerce-cart .woocommerce .cart-collaterals .cart_totals .shop_table tr:first-child td {
  border-top: 1px solid var(--it-color-border);
}
.woocommerce-cart .woocommerce .cart-collaterals .cart_totals .wc-proceed-to-checkout {
  padding: 0;
}
.woocommerce-cart .woocommerce .cart-collaterals .cart_totals .wc-proceed-to-checkout:before, .woocommerce-cart .woocommerce .cart-collaterals .cart_totals .wc-proceed-to-checkout:after {
  display: none;
}
.woocommerce-cart .woocommerce .cart-collaterals .cart_totals .wc-proceed-to-checkout .checkout-button {
  width: 100% !important;
}
.woocommerce-cart .woocommerce .cross-sells {
  grid-column: 1/-1;
  margin-top: var(--it-spacing-section-half);
}
.woocommerce-cart .woocommerce .cross-sells h2 {
  font-size: var(--it-h5-font-size);
  line-height: var(--it-h5-line-height);
}
.woocommerce-cart .woocommerce .cross-sells .products {
  margin-top: var(--it-spacing-content);
}
@media (min-width: 1366px) {
  .woocommerce-cart .woocommerce form.woocommerce-cart-form .woocommerce-cart-form__cart-item {
    grid-template-columns: 5rem 1fr auto 10rem auto;
    align-items: center;
  }
  .woocommerce-cart .woocommerce form.woocommerce-cart-form .woocommerce-cart-form__cart-item .product-thumbnail {
    grid-column: 1/2;
    grid-row: 1/2;
  }
  .woocommerce-cart .woocommerce form.woocommerce-cart-form .woocommerce-cart-form__cart-item .product-name {
    grid-column: 2/3;
    grid-row: 1/2;
  }
  .woocommerce-cart .woocommerce form.woocommerce-cart-form .woocommerce-cart-form__cart-item .product-subtotal {
    grid-column: 4/5;
    grid-row: 1/2;
  }
  .woocommerce-cart .woocommerce form.woocommerce-cart-form .woocommerce-cart-form__cart-item .product-quantity {
    grid-column: 3/4;
    grid-row: 1/2;
    text-align: center;
  }
  .woocommerce-cart .woocommerce form.woocommerce-cart-form .woocommerce-cart-form__cart-item .product-remove {
    grid-column: 5/6;
    grid-row: 1/2;
    text-align: center;
    display: flex;
  }
  .woocommerce-cart .woocommerce form.woocommerce-cart-form .woocommerce-cart-form__cart-item .product-remove a {
    display: inline-flex;
    width: 1.5rem;
    height: 1.5rem;
    align-items: center;
    justify-content: center;
  }
  .woocommerce-cart .woocommerce form.woocommerce-cart-form .woocommerce-cart-form__cart-item .product-remove a:before {
    content: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M11.9877 10.5983L6.69471 5.30529C6.50611 5.12313 6.25351 5.02234 5.99131 5.02461C5.72911 5.02689 5.4783 5.13206 5.29289 5.31747C5.10749 5.50288 5.00232 5.75369 5.00004 6.01589C4.99776 6.27808 5.09855 6.53069 5.28071 6.71929L10.5737 12.0123L5.28071 17.3053C5.09855 17.4939 4.99776 17.7465 5.00004 18.0087C5.00232 18.2709 5.10749 18.5217 5.29289 18.7071C5.4783 18.8925 5.72911 18.9977 5.99131 19C6.25351 19.0022 6.50611 18.9014 6.69471 18.7193L11.9877 13.4263L17.2807 18.7193C17.4693 18.9014 17.7219 19.0022 17.9841 19C18.2463 18.9977 18.4971 18.8925 18.6825 18.7071C18.8679 18.5217 18.9731 18.2709 18.9754 18.0087C18.9777 17.7465 18.8769 17.4939 18.6947 17.3053L13.4017 12.0123L18.6947 6.71929C18.7902 6.62704 18.8664 6.5167 18.9188 6.39469C18.9712 6.27269 18.9988 6.14147 19 6.00869C19.0011 5.87591 18.9758 5.74423 18.9255 5.62133C18.8753 5.49844 18.801 5.38679 18.7071 5.29289C18.6132 5.199 18.5016 5.12475 18.3787 5.07447C18.2558 5.02419 18.1241 4.99888 17.9913 5.00004C17.8585 5.00119 17.7273 5.02878 17.6053 5.08119C17.4833 5.1336 17.373 5.20978 17.2807 5.30529L11.9877 10.5983Z' fill='%2325445A'/%3E%3C/svg%3E%0A");
    display: inline-block;
  }
  .woocommerce-cart .woocommerce form.woocommerce-cart-form .woocommerce-cart-form__cart-item .product-remove a span {
    display: none;
  }
  .woocommerce-cart .woocommerce form.woocommerce-cart-form .woocommerce-cart-form__cart-item .product-remove a:hover {
    background: transparent;
  }
  .woocommerce-cart .woocommerce form.woocommerce-cart-form tr:last-child {
    width: 100%;
    display: block;
    margin-top: var(--it-spacing-default);
  }
  .woocommerce-cart .woocommerce form.woocommerce-cart-form tr:last-child td {
    padding: 0;
    border: 0;
    display: flex;
    flex-wrap: wrap;
    gap: var(--it-spacing-form);
    justify-content: space-between;
  }
  .woocommerce-cart .woocommerce form.woocommerce-cart-form tr:last-child .coupon {
    display: grid;
    grid-template-columns: 1fr auto;
    grid-column-gap: var(--it-spacing-form);
  }
  .woocommerce-cart .woocommerce form.woocommerce-cart-form tr:last-child .coupon .input-text {
    width: auto !important;
    margin: 0;
  }
  .woocommerce-cart .woocommerce form.woocommerce-cart-form tr:last-child .coupon .coupon-error-notice {
    grid-column: 1/-1;
  }
}
@media (min-width: 1024px) {
  .woocommerce-cart .woocommerce {
    grid-template-columns: repeat(3, 1fr);
    grid-column-gap: var(--it-spacing-section);
  }
  .woocommerce-cart .woocommerce:has(.wc-empty-cart-message) {
    grid-template-columns: 1fr;
  }
  .woocommerce-cart .woocommerce .cart-collaterals {
    margin-top: 0;
  }
  .woocommerce-cart .woocommerce .cross-sells {
    margin-top: var(--it-spacing-section);
  }
}
@media (min-width: 783px) {
  .woocommerce-cart .woocommerce form.woocommerce-cart-form tr:last-child .coupon {
    width: auto;
    grid-template-columns: 1fr auto;
    grid-template-rows: 1fr;
  }
  .woocommerce-cart .woocommerce .cart-collaterals .cart_totals {
    min-width: 22.5rem;
    top: 10dvh;
    position: sticky;
    max-height: 80dvh;
  }
}

/**
 * Do not @use files with actual scss code in this file, as it will compile css code twice.
 * As this file going to be an standalone css file.
 */
/**
 * Do not @use files with actual scss code in this file, as it will compile css code twice.
 * As this file going to be an standalone css file.
 */
/**
 * Do not @use files with actual scss code in this file, as it will compile css code twice.
 * As this file going to be an standalone css file.
 */
/**
 * Do not @use files with actual scss code in this file, as it will compile css code twice.
 * As this file going to be an standalone css file.
 */
.woocommerce-checkout .entry-content--woocommerce {
  margin-top: var(--it-spacing-section-half);
}
.woocommerce-checkout .woocommerce .checkout_coupon {
  display: grid;
  padding: var(--it-spacing-form);
  gap: var(--it-spacing-form);
  border-color: var(--it-color-border);
  border-radius: var(--it-border-radius);
  margin-bottom: var(--it-spacing-content);
}
.woocommerce-checkout .woocommerce .checkout_coupon * {
  float: none;
}
.woocommerce-checkout .woocommerce .checkout {
  width: 100%;
  display: grid;
  align-items: start;
  -moz-column-gap: var(--it-spacing-section);
       column-gap: var(--it-spacing-section);
  row-gap: var(--it-spacing-content);
}
.woocommerce-checkout .woocommerce .checkout h3 {
  font-size: var(--it-h5-font-size);
  line-height: var(--it-h5-line-height);
}
.woocommerce-checkout .woocommerce .checkout .woocommerce-NoticeGroup-checkout .woocommerce-error {
  margin: 0;
}
.woocommerce-checkout .woocommerce .checkout #customer_details {
  gap: var(--it-spacing-form);
  grid-template-columns: 1fr;
}
.woocommerce-checkout .woocommerce .checkout #customer_details > .col-1 {
  gap: var(--it-spacing-content);
}
.woocommerce-checkout .woocommerce .checkout #customer_details > .col-2 {
  gap: var(--it-spacing-form);
}
.woocommerce-checkout .woocommerce .checkout #customer_details .woocommerce-email-field__description {
  margin-top: 0.5rem;
}
.woocommerce-checkout .woocommerce .checkout #customer_details .woocommerce-email-field__field-wrapper {
  margin-top: var(--it-spacing-form);
}
.woocommerce-checkout .woocommerce .checkout #customer_details .woocommerce-email-field__field-wrapper .description {
  all: unset;
  display: block !important;
  height: 100% !important;
  margin-top: 0.5rem !important;
  font-size: var(--it-size-x-small);
  color: var(--it-color-placeholder);
}
.woocommerce-checkout .woocommerce .checkout #customer_details wc-order-attribution-inputs {
  display: none;
}
.woocommerce-checkout .woocommerce .checkout #customer_details .woocommerce-billing-fields__description {
  margin-top: 0.5rem;
}
.woocommerce-checkout .woocommerce .checkout #customer_details .woocommerce-billing-fields__field-wrapper {
  margin-top: var(--it-spacing-form);
}
.woocommerce-checkout .woocommerce .checkout #customer_details .woocommerce-shipping-fields #ship-to-different-address {
  float: none;
  clear: both;
  font-weight: 400;
}
.woocommerce-checkout .woocommerce .checkout #customer_details .woocommerce-shipping-fields #ship-to-different-address input {
  transform: translateY(2px);
}
.woocommerce-checkout .woocommerce .checkout #customer_details .woocommerce-shipping-fields__title {
  margin-top: var(--it-spacing-content) !important;
}
.woocommerce-checkout .woocommerce .checkout #customer_details .woocommerce-shipping-fields__description {
  margin-top: 0.5rem;
}
.woocommerce-checkout .woocommerce .checkout #customer_details .woocommerce-shipping-fields__field-wrapper {
  margin-top: var(--it-spacing-form);
}
.woocommerce-checkout .woocommerce .checkout #customer_details .woocommerce-additional-fields h3 {
  display: none;
}
.woocommerce-checkout .woocommerce .checkout #customer_details .woocommerce-additional-fields__toggle-label input {
  margin-right: 0;
  transform: translateY(4px);
}
.woocommerce-checkout .woocommerce .checkout #customer_details .woocommerce-additional-fields__toggle-label .optional {
  display: none;
}
.woocommerce-checkout .woocommerce .checkout #customer_details .woocommerce-additional-fields #order_comments_field {
  margin-top: var(--it-spacing-form);
  display: none;
}
.woocommerce-checkout .woocommerce .checkout #customer_details .woocommerce-shipping-options {
  margin-top: var(--it-spacing-default);
}
.woocommerce-checkout .woocommerce .checkout #customer_details .woocommerce-shipping-options .woocommerce-shipping-methods {
  margin-top: var(--it-spacing-form);
  border: 1px solid var(--it-color-border);
  border-radius: var(--it-border-radius);
  overflow: hidden;
}
.woocommerce-checkout .woocommerce .checkout #customer_details .woocommerce-shipping-options .woocommerce-shipping-methods li {
  position: relative;
  margin: 0;
  display: flex;
  gap: 0.5rem;
  align-items: flex-start;
  justify-content: flex-start;
  padding: var(--it-spacing-form);
  background: var(--it-color-white);
  border-bottom: 1px solid var(--it-color-border);
}
.woocommerce-checkout .woocommerce .checkout #customer_details .woocommerce-shipping-options .woocommerce-shipping-methods li:last-child {
  border-bottom: 0;
}
.woocommerce-checkout .woocommerce .checkout #customer_details .woocommerce-shipping-options .woocommerce-shipping-methods li:has(input:checked) {
  background: var(--it-color-background);
}
.woocommerce-checkout .woocommerce .checkout #customer_details .woocommerce-shipping-options .woocommerce-shipping-methods li input {
  margin: 0;
  flex-shrink: 0;
  transform: translateY(0.375rem);
}
.woocommerce-checkout .woocommerce .checkout #customer_details .woocommerce-shipping-options .woocommerce-shipping-methods li label {
  margin: 0;
  width: 100%;
  display: flex;
  align-self: center;
  justify-content: space-between;
  font-size: var(--it-size-regular);
}
.woocommerce-checkout .woocommerce .checkout #customer_details .woocommerce-shipping-options .woocommerce-shipping-methods li label:before {
  content: "";
  position: absolute;
  inset: 0;
  cursor: pointer;
}
.woocommerce-checkout .woocommerce .checkout > #order_review_heading {
  display: none;
}
.woocommerce-checkout .woocommerce .checkout .woocommerce-order {
  display: grid;
}
.woocommerce-checkout .woocommerce .checkout .woocommerce-order .shop_table tr.wc-gzd-cart-item-has-thumbnail {
  position: relative;
}
.woocommerce-checkout .woocommerce .checkout .woocommerce-order .shop_table tr.wc-gzd-cart-item-has-thumbnail .product-quantity {
  width: 1.25rem;
  height: 1.25rem;
  border-radius: 50%;
  background: var(--it-color-white);
  border: 1px solid var(--it-color-border);
  position: absolute;
  left: 3.125rem;
  top: -0.625rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: var(--it-size-xx-small);
}
.woocommerce-checkout .woocommerce .checkout .woocommerce-order .shop_table .wc-gzd-cart-item-name-wrapper {
  display: flex;
  align-items: center;
  position: relative;
}
.woocommerce-checkout .woocommerce .checkout .woocommerce-order .shop_table .wc-gzd-cart-item-thumbnail {
  margin: 0 1.5rem 0 0;
}
.woocommerce-checkout .woocommerce .checkout .woocommerce-order .shop_table .label_with_price {
  display: inline-flex;
  flex-direction: column;
}
.woocommerce-checkout .woocommerce .checkout .woocommerce-order .shop_table .label_with_price .price {
  font-size: var(--it-size-small);
}
.woocommerce-checkout .woocommerce .checkout .woocommerce-order .shop_table .label_with_price .price del {
  opacity: 0.5;
  font-size: var(--it-size-x-small);
}
.woocommerce-checkout .woocommerce .checkout .woocommerce-order .shop_table .label_with_price .price ins {
  text-decoration: none;
}
.woocommerce-checkout .woocommerce .checkout .woocommerce-checkout-review-order .woocommerce-checkout-payment#payment {
  display: block;
  margin-top: var(--it-spacing-form);
  border: 0;
  border-radius: 0;
  background: none;
  padding: 0;
}
.woocommerce-checkout .woocommerce .checkout .woocommerce-checkout-review-order .woocommerce-checkout-payment#payment .payment_methods {
  padding: 0;
  border: 1px solid var(--it-color-border);
  border-radius: var(--it-border-radius);
  overflow: hidden;
}
.woocommerce-checkout .woocommerce .checkout .woocommerce-checkout-review-order .woocommerce-checkout-payment#payment .payment_methods:before, .woocommerce-checkout .woocommerce .checkout .woocommerce-checkout-review-order .woocommerce-checkout-payment#payment .payment_methods:after {
  display: none;
}
.woocommerce-checkout .woocommerce .checkout .woocommerce-checkout-review-order .woocommerce-checkout-payment#payment .payment_methods li {
  display: grid;
  position: relative;
  -moz-column-gap: 0.5rem;
       column-gap: 0.5rem;
  row-gap: var(--it-spacing-default-half);
  grid-template-columns: auto 1fr;
  padding: var(--it-spacing-form);
  background: var(--it-color-white);
  border-bottom: 1px solid var(--it-color-border);
}
.woocommerce-checkout .woocommerce .checkout .woocommerce-checkout-review-order .woocommerce-checkout-payment#payment .payment_methods li:before, .woocommerce-checkout .woocommerce .checkout .woocommerce-checkout-review-order .woocommerce-checkout-payment#payment .payment_methods li:after {
  display: none !important;
}
.woocommerce-checkout .woocommerce .checkout .woocommerce-checkout-review-order .woocommerce-checkout-payment#payment .payment_methods li:last-child {
  border-bottom: 0;
}
.woocommerce-checkout .woocommerce .checkout .woocommerce-checkout-review-order .woocommerce-checkout-payment#payment .payment_methods li:has(input:checked) {
  background: var(--it-color-background);
}
.woocommerce-checkout .woocommerce .checkout .woocommerce-checkout-review-order .woocommerce-checkout-payment#payment .payment_methods li input {
  margin: 0;
}
.woocommerce-checkout .woocommerce .checkout .woocommerce-checkout-review-order .woocommerce-checkout-payment#payment .payment_methods li label {
  font-size: var(--it-size-regular);
  margin: 0;
}
.woocommerce-checkout .woocommerce .checkout .woocommerce-checkout-review-order .woocommerce-checkout-payment#payment .payment_methods li label:before {
  content: "";
  position: absolute;
  inset: 0;
  cursor: pointer;
}
.woocommerce-checkout .woocommerce .checkout .woocommerce-checkout-review-order .woocommerce-checkout-payment#payment .payment_methods li .payment_box {
  grid-column: 1/3;
  background: none;
  margin: 0;
  padding: 0;
  line-height: inherit;
  color: var(--it-color-text);
  font-size: var(--it-size-small);
}
.woocommerce-checkout .woocommerce .checkout .woocommerce-checkout-review-order .woocommerce-checkout-payment#payment .payment_methods li .payment_box:before {
  display: none;
}
.woocommerce-checkout .woocommerce .checkout .woocommerce-checkout-review-order .woocommerce-checkout-payment#payment .place-order {
  margin-top: var(--it-spacing-form);
  padding: 0;
}
.woocommerce-checkout .woocommerce .checkout .woocommerce-checkout-review-order .wc-gzd-checkbox-placeholder {
  margin-top: var(--it-spacing-form);
}
.woocommerce-checkout .woocommerce .checkout .woocommerce-checkout-review-order .wc-gzd-checkbox-placeholder *:has(> input[type=checkbox]) {
  display: flex !important;
  align-items: flex-start;
}
.woocommerce-checkout .woocommerce .checkout .woocommerce-checkout-review-order .wc-gzd-checkbox-placeholder *:has(> input[type=checkbox]) input {
  margin: 0;
  flex-shrink: 0;
  transform: translateY(2px);
}
.woocommerce-checkout .woocommerce .checkout .woocommerce-checkout-review-order .wc-gzd-checkbox-placeholder .checkout-inline-error-message {
  margin-top: 0.5rem;
}
.woocommerce-checkout .woocommerce .checkout .woocommerce-checkout-review-order .woocommerce-checkout-main-buttons {
  margin-top: var(--it-spacing-form);
  display: flex;
  gap: var(--it-spacing-default);
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
}
.woocommerce-checkout .woocommerce .checkout .woocommerce-checkout-review-order .woocommerce-checkout-main-buttons .back-to-cart:hover:after {
  transform: rotate(180deg) translateX(0.375rem);
}
.woocommerce-checkout .woocommerce .checkout .woocommerce-checkout-review-order .woocommerce-checkout-main-buttons .back-to-cart:after {
  order: -1;
  transform: rotate(180deg);
}
.woocommerce-checkout .woocommerce .checkout .woocommerce-checkout-review-order button#place_order {
  float: none;
}
@media (min-width: 783px) {
  .woocommerce-checkout .woocommerce .checkout_coupon {
    grid-template-columns: 1fr auto;
    padding: var(--it-spacing-default);
  }
}
@media screen and (max-width: 1023px) and (min-width: 557px) {
  .woocommerce-checkout .woocommerce .checkout .woocommerce-order .shop_table tr.wc-gzd-cart-item-has-thumbnail .product-quantity {
    left: calc(15% - 0.625rem);
  }
}
@media screen and (max-width: 1365px) and (min-width: 1024px) {
  .woocommerce-checkout .woocommerce form .form-row:has(+ [style*="display: none"]) {
    grid-column: span 1;
  }
  .woocommerce-checkout .woocommerce form .form-row-first, .woocommerce-checkout .woocommerce form .form-row-last {
    grid-column: 1;
  }
  .woocommerce-checkout .woocommerce form div:has(> .form-row):first-of-type {
    grid-template-columns: 1fr;
  }
}
@media (min-width: 1024px) {
  .woocommerce-checkout .woocommerce .checkout {
    grid-template-columns: repeat(3, 1fr);
  }
  .woocommerce-checkout .woocommerce .checkout > * {
    grid-column: 1/3;
  }
  .woocommerce-checkout .woocommerce .checkout .woocommerce-NoticeGroup-checkout {
    grid-column: 1/4;
  }
  .woocommerce-checkout .woocommerce .checkout .woocommerce-order {
    top: 10dvh;
    position: sticky;
    grid-column: 3/4;
    max-height: 80dvh;
    min-width: 22.5rem;
    gap: var(--it-spacing-default);
    grid-template-rows: auto 1fr;
  }
  .woocommerce-checkout .woocommerce .checkout .woocommerce-order .shop_table .label_with_price {
    gap: 0.25rem;
    font-size: var(--it-size-small);
  }
}
@media (min-width: 1366px) {
  .woocommerce-checkout .woocommerce .checkout .woocommerce-order {
    min-width: 25rem;
  }
  .woocommerce-checkout .woocommerce .checkout .woocommerce-order .shop_table .label_with_price {
    gap: 0.5rem;
    font-size: var(--it-size-medium);
  }
}

/**
 * Do not @use files with actual scss code in this file, as it will compile css code twice.
 * As this file going to be an standalone css file.
 */
/**
 * Do not @use files with actual scss code in this file, as it will compile css code twice.
 * As this file going to be an standalone css file.
 */
/**
 * Do not @use files with actual scss code in this file, as it will compile css code twice.
 * As this file going to be an standalone css file.
 */
.woocommerce-account.woocommerce-lost-password .entry-title {
  text-transform: capitalize;
}
.woocommerce-account.woocommerce-lost-password form {
  display: grid;
  gap: var(--it-spacing-default);
}
.woocommerce-account.woocommerce-lost-password form:has(#user_login) {
  grid-template-columns: 1fr;
}
.woocommerce-account div.woocommerce {
  display: grid;
  -moz-column-gap: var(--it-spacing-section);
       column-gap: var(--it-spacing-section);
  row-gap: var(--it-spacing-section-half);
}
.woocommerce-account div.woocommerce::before, .woocommerce-account div.woocommerce::after {
  content: none;
}
.woocommerce-account div.woocommerce .woocommerce-MyAccount-navigation-trigger {
  display: none;
}
.woocommerce-account div.woocommerce .woocommerce-MyAccount-navigation {
  width: 100%;
}
.woocommerce-account div.woocommerce .woocommerce-MyAccount-navigation ul {
  margin: 0;
}
.woocommerce-account div.woocommerce .woocommerce-MyAccount-navigation li {
  margin: 0;
  border-bottom: 1px solid var(--it-color-border);
  transition: background-color var(--it-transition);
  position: relative;
}
.woocommerce-account div.woocommerce .woocommerce-MyAccount-navigation li:first-child {
  border-top: 1px solid var(--it-color-border);
}
.woocommerce-account div.woocommerce .woocommerce-MyAccount-navigation li.is-active {
  background-color: var(--it-color-background);
}
@media (hover: hover) {
  .woocommerce-account div.woocommerce .woocommerce-MyAccount-navigation li:hover {
    background-color: var(--it-color-background);
  }
}
.woocommerce-account div.woocommerce .woocommerce-MyAccount-navigation li::after {
  content: "";
  position: absolute;
  width: 1.5rem;
  height: 1.5rem;
  top: 50%;
  right: 0.875rem;
  transform: translateY(-50%);
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Crect x='8.59961' y='6.89551' width='1.26664' height='8.35103' rx='0.633319' transform='rotate(-45 8.59961 6.89551)' fill='%2325445A'/%3E%3Crect width='1.26664' height='8.35103' rx='0.633319' transform='matrix(-0.707107 -0.707107 -0.707107 0.707107 15.4004 12.0947)' fill='%2325445A'/%3E%3C/svg%3E%0A");
}
.woocommerce-account div.woocommerce .woocommerce-MyAccount-navigation li:last-child::after {
  content: none;
}
.woocommerce-account div.woocommerce .woocommerce-MyAccount-navigation a {
  text-decoration: none;
  color: var(--it-color-text);
  padding: 0.875rem;
  display: block;
}
.woocommerce-account div.woocommerce .woocommerce-MyAccount-content {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: var(--it-spacing-default);
}
.woocommerce-account div.woocommerce .woocommerce-MyAccount-content section {
  margin-bottom: 0;
}
.woocommerce-account div.woocommerce .woocommerce-MyAccount-content h2 {
  font-size: var(--it-h5-font-size);
  line-height: var(--it-h5-line-height);
  font-weight: 400;
}
.woocommerce-account div.woocommerce .woocommerce-MyAccount-content .my_account_orders {
  font-size: var(--it-size-small);
}
.woocommerce-account div.woocommerce .woocommerce-pagination {
  margin-top: 0;
}
.woocommerce-account div.woocommerce > .u-columns {
  display: grid;
}
.woocommerce-account .it-container--narrow div.woocommerce {
  grid-template-columns: 1fr;
  gap: var(--it-spacing-default);
}
.woocommerce-account .it-container--narrow div.woocommerce .entry-title + .entry-content--woocommerce {
  margin-top: var(--it-spacing-default);
}
.woocommerce-account .woocommerce-Address-title {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.woocommerce-account .woocommerce-Address-title .edit {
  justify-content: flex-start;
  font-size: var(--it-size-x-small);
  text-transform: unset;
  letter-spacing: 0.01em;
  margin-top: 0.25rem;
  float: none;
}
.woocommerce-account .edit-account {
  display: grid;
  gap: var(--it-spacing-default);
}
.woocommerce-account .edit-account > * {
  grid-column: span 2;
}
.woocommerce-account .woocommerce-address-fields p:has(button[type=submit]) {
  margin-top: var(--it-spacing-default);
}
@media (min-width: 1024px) {
  .woocommerce-account div.woocommerce {
    grid-template-columns: 1fr;
  }
  .woocommerce-account.woocommerce-lost-password {
    grid-template-columns: repeat(2, 1fr);
  }
  .woocommerce-account .it-container--wide div.woocommerce {
    grid-template-columns: repeat(3, 1fr);
  }
  .woocommerce-account .it-container--wide div.woocommerce .woocommerce-MyAccount-content {
    grid-column: span 2;
  }
  .woocommerce-account .it-container--wide div.woocommerce > .woocommerce-notices-wrapper {
    grid-column: span 3;
  }
  .woocommerce-account .it-container--wide div.woocommerce > .u-columns {
    grid-column: span 3;
  }
  .woocommerce-account .edit-account {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media screen and (max-width: 1023px) and (min-width: 0px) {
  .woocommerce-account div.woocommerce .woocommerce-MyAccount-navigation-trigger {
    all: unset;
    position: fixed;
    left: 0;
    z-index: 9;
    top: calc(var(--it-header-height) + 7.5rem);
    padding: 0.5rem;
    border-top-right-radius: var(--it-border-radius);
    border-bottom-right-radius: var(--it-border-radius);
    border-width: 1px 1px 1px 0;
    border-style: solid;
    border-color: var(--it-color-border);
    background: var(--it-color-white);
    transition: left var(--it-transition);
  }
  .woocommerce-account div.woocommerce .woocommerce-MyAccount-navigation-trigger.is-active {
    left: calc(87vw - 1px);
  }
  .woocommerce-account div.woocommerce .woocommerce-MyAccount-navigation-trigger.is-active .open {
    display: none;
  }
  .woocommerce-account div.woocommerce .woocommerce-MyAccount-navigation-trigger.is-active .close {
    display: block;
  }
  .woocommerce-account div.woocommerce .woocommerce-MyAccount-navigation-trigger svg {
    width: 1.25rem;
  }
  .woocommerce-account div.woocommerce .woocommerce-MyAccount-navigation-trigger .close {
    display: none;
  }
  .woocommerce-account div.woocommerce .woocommerce-MyAccount-navigation {
    position: fixed;
    left: -87vw;
    width: 87vw;
    top: calc(var(--it-header-height) + var(--wp-admin--admin-bar--height, 0) + 2rem);
    background: var(--it-color-white);
    z-index: 8;
    transition: left var(--it-transition);
    border-bottom-right-radius: var(--it-border-radius);
    border-top-right-radius: var(--it-border-radius);
    border: 1px solid var(--it-color-border);
    max-height: calc(90dvh - var(--it-header-height) - var(--wp-admin--admin-bar--height, 0) - 2rem);
    overflow-y: auto;
    overflow-x: hidden;
  }
  .woocommerce-account div.woocommerce .woocommerce-MyAccount-navigation.is-active {
    left: 0;
  }
  .woocommerce-account div.woocommerce .woocommerce-MyAccount-navigation li:first-child {
    border-top: 0;
  }
  .woocommerce-account div.woocommerce .woocommerce-MyAccount-navigation li:last-child {
    border-bottom: 0;
  }
}

/**
 * Do not @use files with actual scss code in this file, as it will compile css code twice.
 * As this file going to be an standalone css file.
 */
/**
 * Do not @use files with actual scss code in this file, as it will compile css code twice.
 * As this file going to be an standalone css file.
 */
.woocommerce #customer_login {
  -moz-column-gap: var(--it-spacing-section);
       column-gap: var(--it-spacing-section);
  row-gap: var(--it-spacing-section-half);
}
.woocommerce form.login, .woocommerce form.register {
  padding: 0;
  margin: 0;
  border: 0;
}
.woocommerce form.login .form-row,
.woocommerce form.login p, .woocommerce form.register .form-row,
.woocommerce form.register p {
  margin-bottom: var(--it-spacing-form);
}
.woocommerce form.login .form-row:has(button[type=submit]),
.woocommerce form.login p:has(button[type=submit]), .woocommerce form.register .form-row:has(button[type=submit]),
.woocommerce form.register p:has(button[type=submit]) {
  display: flex;
  flex-direction: column-reverse;
  gap: var(--it-spacing-columns);
}
@media (min-width: 783px) {
  .woocommerce form.login .form-row:has(button[type=submit]),
  .woocommerce form.login p:has(button[type=submit]), .woocommerce form.register .form-row:has(button[type=submit]),
  .woocommerce form.register p:has(button[type=submit]) {
    flex-direction: row-reverse;
    align-items: center;
    justify-content: flex-end;
  }
}
.woocommerce form.login .form-row:last-child,
.woocommerce form.login p:last-child, .woocommerce form.register .form-row:last-child,
.woocommerce form.register p:last-child {
  margin-bottom: 0;
}
.woocommerce form.login .lost_password a, .woocommerce form.register .lost_password a {
  display: inline-block;
  position: relative;
  text-decoration: none;
}
.woocommerce form.login .lost_password a:before, .woocommerce form.register .lost_password a:before {
  content: "";
  position: absolute;
  bottom: 1px;
  left: 0;
  width: 0;
  opacity: 0;
  height: 1px;
  background: currentColor;
  transition: width var(--it-transition), opacity 0.1s linear 0.2s;
}
.woocommerce form.login .lost_password a:hover, .woocommerce form.register .lost_password a:hover {
  text-decoration: none !important;
}
.woocommerce form.login .lost_password a:hover:before, .woocommerce form.register .lost_password a:hover:before {
  width: 100%;
  opacity: 1;
  transition: width var(--it-transition), opacity 0.1s linear;
}

/**
 * Do not @use files with actual scss code in this file, as it will compile css code twice.
 * As this file going to be an standalone css file.
 */
/**
 * Do not @use files with actual scss code in this file, as it will compile css code twice.
 * As this file going to be an standalone css file.
 */
.woocommerce-order-received .woocommerce .woocommerce-order > section {
  margin-top: var(--it-spacing-content);
}
.woocommerce-order-received .woocommerce .woocommerce-order .woocommerce-thankyou-order-received {
  margin: 0.5rem 0 0;
}
.woocommerce-order-received .woocommerce .woocommerce-order .woocommerce-order-overview {
  margin: var(--it-spacing-content) 0 0;
}
.woocommerce-order-received .woocommerce .woocommerce-order .woocommerce-bacs-bank-details h2 {
  font-size: var(--it-size-large);
}
.woocommerce-order-received .woocommerce .woocommerce-order .woocommerce-bacs-bank-details h3 {
  font-size: var(--it-size-large);
}
.woocommerce-order-received .woocommerce .woocommerce-order .woocommerce-bacs-bank-details .wc-bacs-bank-details {
  margin: 0;
}
.woocommerce-order-received .woocommerce .woocommerce-order .woocommerce-order-overview,
.woocommerce-order-received .woocommerce .woocommerce-order .woocommerce-bacs-bank-details .wc-bacs-bank-details {
  display: flex;
  flex-direction: column;
}
.woocommerce-order-received .woocommerce .woocommerce-order .woocommerce-order-overview:before, .woocommerce-order-received .woocommerce .woocommerce-order .woocommerce-order-overview:after,
.woocommerce-order-received .woocommerce .woocommerce-order .woocommerce-bacs-bank-details .wc-bacs-bank-details:before,
.woocommerce-order-received .woocommerce .woocommerce-order .woocommerce-bacs-bank-details .wc-bacs-bank-details:after {
  display: none;
}
.woocommerce-order-received .woocommerce .woocommerce-order .woocommerce-order-overview li,
.woocommerce-order-received .woocommerce .woocommerce-order .woocommerce-bacs-bank-details .wc-bacs-bank-details li {
  float: none;
  margin: 0;
  display: inline-flex;
  align-items: baseline;
  font-size: var(--it-size-medium);
  text-transform: none;
  gap: 0.25rem;
  border: 0;
}
.woocommerce-order-received .woocommerce .woocommerce-order .woocommerce-order-overview li strong,
.woocommerce-order-received .woocommerce .woocommerce-order .woocommerce-bacs-bank-details .wc-bacs-bank-details li strong {
  font-size: 1em;
}
@media screen and (max-width: 782px) and (min-width: 0px) {
  .woocommerce-order-received .woocommerce .woocommerce-order .woocommerce-order-details .woocommerce-table td:last-child, .woocommerce-order-received .woocommerce .woocommerce-order .woocommerce-order-details .woocommerce-table th:last-child {
    text-align: right;
  }
}
@media (min-width: 783px) {
  .woocommerce-order-received .woocommerce .woocommerce-order .woocommerce-order-details .woocommerce-table tr:has(> :last-child:nth-child(2)) > td,
  .woocommerce-order-received .woocommerce .woocommerce-order .woocommerce-order-details .woocommerce-table tr:has(> :last-child:nth-child(2)) > th {
    width: 50%;
  }
}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndvb2NvbW1lcmNlLmNzcyIsIndvb2NvbW1lcmNlLnNjc3MiLCJVc2Vycy9hbGV4YW5kZXJzb3Z5ay9Mb2NhbCUyMFNpdGVzL2xhZmxlci9hcHAvcHVibGljL3dwLWNvbnRlbnQvdGhlbWVzL2xhZmxlci9hc3NldHMvc2Nzcy9nbG9iYWwvMS1nZW5lcmljLzEtMS1iYXNlL19wYWdpbmF0aW9uLWJhc2Uuc2NzcyIsIlVzZXJzL2FsZXhhbmRlcnNvdnlrL0xvY2FsJTIwU2l0ZXMvbGFmbGVyL2FwcC9wdWJsaWMvd3AtY29udGVudC90aGVtZXMvbGFmbGVyL3dvb2NvbW1lcmNlL2Fzc2V0cy9zY3NzL2NvbXBvbmVudHMvX3BhZ2luYXRpb24uc2NzcyIsIlVzZXJzL2FsZXhhbmRlcnNvdnlrL0xvY2FsJTIwU2l0ZXMvbGFmbGVyL2FwcC9wdWJsaWMvd3AtY29udGVudC90aGVtZXMvbGFmbGVyL3dvb2NvbW1lcmNlL2Fzc2V0cy9zY3NzL2NvbXBvbmVudHMvX3F1YW50aXR5LWlucHV0LnNjc3MiLCJVc2Vycy9hbGV4YW5kZXJzb3Z5ay9Mb2NhbCUyMFNpdGVzL2xhZmxlci9hcHAvcHVibGljL3dwLWNvbnRlbnQvdGhlbWVzL2xhZmxlci9hc3NldHMvc2Nzcy9nbG9iYWwvMC1zZXR0aW5ncy9fcmVtLWNhbGMuc2NzcyIsIlVzZXJzL2FsZXhhbmRlcnNvdnlrL0xvY2FsJTIwU2l0ZXMvbGFmbGVyL2FwcC9wdWJsaWMvd3AtY29udGVudC90aGVtZXMvbGFmbGVyL2Fzc2V0cy9zY3NzL2dsb2JhbC8wLXNldHRpbmdzL19taXhpbnMtbWVkaWEtcXVlcnkuc2NzcyIsIlVzZXJzL2FsZXhhbmRlcnNvdnlrL0xvY2FsJTIwU2l0ZXMvbGFmbGVyL2FwcC9wdWJsaWMvd3AtY29udGVudC90aGVtZXMvbGFmbGVyL3dvb2NvbW1lcmNlL2Fzc2V0cy9zY3NzL2NvbXBvbmVudHMvX3dpc2hsaXN0LnNjc3MiLCJVc2Vycy9hbGV4YW5kZXJzb3Z5ay9Mb2NhbCUyMFNpdGVzL2xhZmxlci9hcHAvcHVibGljL3dwLWNvbnRlbnQvdGhlbWVzL2xhZmxlci9hc3NldHMvc2Nzcy9nbG9iYWwvMS1nZW5lcmljLzEtMS1iYXNlL19idXR0b25zLWJhc2Uuc2NzcyIsIlVzZXJzL2FsZXhhbmRlcnNvdnlrL0xvY2FsJTIwU2l0ZXMvbGFmbGVyL2FwcC9wdWJsaWMvd3AtY29udGVudC90aGVtZXMvbGFmbGVyL3dvb2NvbW1lcmNlL2Fzc2V0cy9zY3NzL2NvbXBvbmVudHMvX2FkZC10by1jYXJ0LnNjc3MiLCJVc2Vycy9hbGV4YW5kZXJzb3Z5ay9Mb2NhbCUyMFNpdGVzL2xhZmxlci9hcHAvcHVibGljL3dwLWNvbnRlbnQvdGhlbWVzL2xhZmxlci93b29jb21tZXJjZS9hc3NldHMvc2Nzcy9jb21wb25lbnRzL19hbmltYXRpb25zLnNjc3MiLCJVc2Vycy9hbGV4YW5kZXJzb3Z5ay9Mb2NhbCUyMFNpdGVzL2xhZmxlci9hcHAvcHVibGljL3dwLWNvbnRlbnQvdGhlbWVzL2xhZmxlci93b29jb21tZXJjZS9hc3NldHMvc2Nzcy9jb21wb25lbnRzL19ub3RpZmljYXRpb25zLnNjc3MiLCJVc2Vycy9hbGV4YW5kZXJzb3Z5ay9Mb2NhbCUyMFNpdGVzL2xhZmxlci9hcHAvcHVibGljL3dwLWNvbnRlbnQvdGhlbWVzL2xhZmxlci93b29jb21tZXJjZS9hc3NldHMvc2Nzcy9jb21wb25lbnRzL19jb2x1bW5zLnNjc3MiLCJVc2Vycy9hbGV4YW5kZXJzb3Z5ay9Mb2NhbCUyMFNpdGVzL2xhZmxlci9hcHAvcHVibGljL3dwLWNvbnRlbnQvdGhlbWVzL2xhZmxlci93b29jb21tZXJjZS9hc3NldHMvc2Nzcy9jb21wb25lbnRzL19maWVsZHMuc2NzcyIsIlVzZXJzL2FsZXhhbmRlcnNvdnlrL0xvY2FsJTIwU2l0ZXMvbGFmbGVyL2FwcC9wdWJsaWMvd3AtY29udGVudC90aGVtZXMvbGFmbGVyL2Fzc2V0cy9zY3NzL2dsb2JhbC8xLWdlbmVyaWMvMS0zLWZvcm1zL19maWVsZC1pbnB1dC5zY3NzIiwiVXNlcnMvYWxleGFuZGVyc292eWsvTG9jYWwlMjBTaXRlcy9sYWZsZXIvYXBwL3B1YmxpYy93cC1jb250ZW50L3RoZW1lcy9sYWZsZXIvYXNzZXRzL3Njc3MvZ2xvYmFsLzEtZ2VuZXJpYy8xLTMtZm9ybXMvX2ZpZWxkLWNoZWNrYm94LnNjc3MiLCJVc2Vycy9hbGV4YW5kZXJzb3Z5ay9Mb2NhbCUyMFNpdGVzL2xhZmxlci9hcHAvcHVibGljL3dwLWNvbnRlbnQvdGhlbWVzL2xhZmxlci9hc3NldHMvc2Nzcy9nbG9iYWwvMS1nZW5lcmljLzEtMy1mb3Jtcy9fc2VsZWN0LnNjc3MiLCJVc2Vycy9hbGV4YW5kZXJzb3Z5ay9Mb2NhbCUyMFNpdGVzL2xhZmxlci9hcHAvcHVibGljL3dwLWNvbnRlbnQvdGhlbWVzL2xhZmxlci93b29jb21tZXJjZS9hc3NldHMvc2Nzcy9jb21wb25lbnRzL19mb3JtLnNjc3MiLCJVc2Vycy9hbGV4YW5kZXJzb3Z5ay9Mb2NhbCUyMFNpdGVzL2xhZmxlci9hcHAvcHVibGljL3dwLWNvbnRlbnQvdGhlbWVzL2xhZmxlci93b29jb21tZXJjZS9hc3NldHMvc2Nzcy9jb21wb25lbnRzL190YWJsZS5zY3NzIiwiVXNlcnMvYWxleGFuZGVyc292eWsvTG9jYWwlMjBTaXRlcy9sYWZsZXIvYXBwL3B1YmxpYy93cC1jb250ZW50L3RoZW1lcy9sYWZsZXIvd29vY29tbWVyY2UvYXNzZXRzL3Njc3MvcGFnZXMvX2FyY2hpdmUtcHJvZHVjdC5zY3NzIiwiVXNlcnMvYWxleGFuZGVyc292eWsvTG9jYWwlMjBTaXRlcy9sYWZsZXIvYXBwL3B1YmxpYy93cC1jb250ZW50L3RoZW1lcy9sYWZsZXIvd29vY29tbWVyY2UvYXNzZXRzL3Njc3MvY29tcG9uZW50cy9fYmFkZ2Uuc2NzcyIsIlVzZXJzL2FsZXhhbmRlcnNvdnlrL0xvY2FsJTIwU2l0ZXMvbGFmbGVyL2FwcC9wdWJsaWMvd3AtY29udGVudC90aGVtZXMvbGFmbGVyL3dvb2NvbW1lcmNlL2Fzc2V0cy9zY3NzL3BhZ2VzL19zaW5nbGUtcHJvZHVjdC5zY3NzIiwiVXNlcnMvYWxleGFuZGVyc292eWsvTG9jYWwlMjBTaXRlcy9sYWZsZXIvYXBwL3B1YmxpYy93cC1jb250ZW50L3RoZW1lcy9sYWZsZXIvYXNzZXRzL3Njc3MvZ2xvYmFsLzAtc2V0dGluZ3MvX21peGlucy1nZW5lcmFsLnNjc3MiLCJVc2Vycy9hbGV4YW5kZXJzb3Z5ay9Mb2NhbCUyMFNpdGVzL2xhZmxlci9hcHAvcHVibGljL3dwLWNvbnRlbnQvdGhlbWVzL2xhZmxlci93b29jb21tZXJjZS9hc3NldHMvc2Nzcy9wYWdlcy9fY2FydC5zY3NzIiwiVXNlcnMvYWxleGFuZGVyc292eWsvTG9jYWwlMjBTaXRlcy9sYWZsZXIvYXBwL3B1YmxpYy93cC1jb250ZW50L3RoZW1lcy9sYWZsZXIvd29vY29tbWVyY2UvYXNzZXRzL3Njc3MvY29tcG9uZW50cy9fc2hvcC10YWJsZS5zY3NzIiwiVXNlcnMvYWxleGFuZGVyc292eWsvTG9jYWwlMjBTaXRlcy9sYWZsZXIvYXBwL3B1YmxpYy93cC1jb250ZW50L3RoZW1lcy9sYWZsZXIvd29vY29tbWVyY2UvYXNzZXRzL3Njc3MvcGFnZXMvX2NoZWNrb3V0LnNjc3MiLCJVc2Vycy9hbGV4YW5kZXJzb3Z5ay9Mb2NhbCUyMFNpdGVzL2xhZmxlci9hcHAvcHVibGljL3dwLWNvbnRlbnQvdGhlbWVzL2xhZmxlci93b29jb21tZXJjZS9hc3NldHMvc2Nzcy9wYWdlcy9fYWNjb3VudC5zY3NzIiwiVXNlcnMvYWxleGFuZGVyc292eWsvTG9jYWwlMjBTaXRlcy9sYWZsZXIvYXBwL3B1YmxpYy93cC1jb250ZW50L3RoZW1lcy9sYWZsZXIvd29vY29tbWVyY2UvYXNzZXRzL3Njc3MvcGFnZXMvX2xvZ2luLnNjc3MiLCJVc2Vycy9hbGV4YW5kZXJzb3Z5ay9Mb2NhbCUyMFNpdGVzL2xhZmxlci9hcHAvcHVibGljL3dwLWNvbnRlbnQvdGhlbWVzL2xhZmxlci93b29jb21tZXJjZS9hc3NldHMvc2Nzcy9wYWdlcy9fdGhhbmsteW91LXBhZ2Uuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxnQkFBZ0I7QUNBaEIsc0JBQUE7QUNBQTtFQUNDLDBDQUFBO0FGR0Q7QUVEQztFQUNDLFNBQUE7RUFDQSxVQUFBO0VBQ0EsYUFBQTtFQUNBLGVBQUE7RUFDQSx1QkFBQTtFQUNBLG1CQUFBO0VBQ0EsV0FBQTtBRkdGO0FFREU7RUFDQyxTQUFBO0VBQ0EscUJBQUE7RUFDQSwrQkFBQTtBRkdIO0FFREc7RUFDQyxvQkFBQTtBRkdKO0FFQUc7RUFDQyxtQkFBQTtBRkVKO0FFQ0c7RUFDQyxXQUFBO0VBQ0EsWUFBQTtFQUNBLDRDQUFBO0VBQ0Esd0NBQUE7RUFDQSxvQkFBQTtFQUNBLG1CQUFBO0VBQ0EsdUJBQUE7QUZDSjtBRUlJO0VBQ0MsNEJBQUE7RUFDQSxpQ0FBQTtFQUNBLG1DQUFBO0FGRkw7QUVNRztFQUNDLDBHQUFBO0FGSko7QUVNSTtFQUNDLDRCQUFBO0VBQ0EsbUNBQUE7RUFDQSxpQ0FBQTtBRkpMOztBR3RDRTtFQUNDLFNBQUE7QUh5Q0g7QUd2Q0c7RUFDQyxlQUFBO0FIeUNKOztBSXJEQTs7O0VBQUE7QUNvRUE7Ozs7Ozs7Ozs7O0VBQUE7QUNwRUE7OztFQUFBO0FGTUE7RUFDQyxhQUFBO0VBQ0Esb0NBQUE7RUFDQSxtQkFBQTtFQUNBLHdDQUFBO0VBQ0EsNENBQUE7RUFDQSxnQkFBQTtBSnNFRDtBSXBFQztFQUNDLGFBQUE7RUFDQSxtQkFBQTtFQUNBLHVCQUFBO0VBQ0EsYUFBQTtFQUNBLFlBQUE7RUFDQSxTQUFBO0VBQ0EsY0FBQTtFQUNBLHNDQUFBO0VBQ0EsNEJBQUE7RUFDQSxlQUFBO0VBQ0Esb0NBQUE7QUpzRUY7QUlwRUU7RUFFQyxpQ0FBQTtFQUNBLDRCQUFBO0FKcUVIO0FJbEVFO0VBQ0MsV0FBQTtFQUNBLGNBQUE7RUFDQSxnQkFBQTtFQUNBLGlCQUFBO0VBQ0EsOEJBQUE7QUpvRUg7QUkvREc7RUFDQyxvRUFBQTtVQUFBLDREQUFBO0FKaUVKO0FJM0RHO0VBQ0MsMEJBQUE7RUFDQSxvRUFBQTtVQUFBLDREQUFBO0FKNkRKO0FJeERDO0VBQ0MsMkJBQUE7RUFDQSxpQkFBQTtFQUNBLFlBQUE7RUFDQSxVQUFBO0VBQ0EsK0JBQUE7RUFDQSx3QkFBQTtVQUFBLGdCQUFBO0VBQ0EsMEJBQUE7QUowREY7QUl4REU7RUFFQyxTQUFBO0VBQ0Esd0JBQUE7QUp5REg7O0FJOUhBOzs7RUFBQTtBR0FBOzs7RUFBQTtBSEFBOzs7RUFBQTtBSUNBOzs7Ozs7Ozs7OztFQUNDLGtCQUFBO0VBRUEsb0JBQUE7RUFDQSxpQkFBQTtFQUNBLG1CQUFBO0VBQ0EsK0JBQUE7RUFDQSxnQkFBQTtFQUVBLGNBQUE7RUFDQSx5QkFBQTtFQUNBLHFCQUFBO0VBQ0EsMEJBQUE7RUFDQSxvR0FBQTtFQUNBLGtCQUFBO0VBQ0Esb0JBQUE7RUFDQSx1QkFBQTtFQUNBLG1CQUFBO0VBQ0EsV0FBQTtFQUNBLGVBQUE7RUFDQSwyQkFBQTtBUm9KRDtBUWxKQzs7Ozs7Ozs7Ozs7RUFDQyxtQkFBQTtBUjhKRjtBUXZKRTs7Ozs7Ozs7OztFQUNDLFdBQUE7RUFDQSxjQUFBO0VBQ0EsZUFBQTtFQUNBLGtCQUFBO0VBQ0EscUJBQUE7RUFDQSw4SUFBQTtFQUNBLGtGQUFBO0VBQ0Esd0NBQUE7RUFDQSxVQUFBO0FSa0tIO0FRL0pFO0VBRUM7SUFDQyx3QkFBQTtFUmdLRjtBQUNGO0FROU1BOzs7Ozs7Ozs7OztFQWtEQyx1QkFBQTtBUnlLRDtBUXhLQzs7Ozs7OztFQUNDLGdCQUFBO0VBR0EsbUNBQUE7RUFDQSw0QkFBQTtBUjhLRjtBUTVLRTtFQUVDOzs7Ozs7SUFDQyxzQ0FBQTtJQUNBLDRCQUFBO0VSa0xGO0FBQ0Y7QVEvS0U7RUFFQzs7Ozs7O0lBQ0MsdUNBQUE7SUFDQSw0QkFBQTtFUnFMRjtBQUNGO0FRbExFOzs7Ozs7RUFDQyxvQ0FBQTtBUnlMSDtBUXRMRTs7Ozs7Ozs7Ozs7Ozs7OztFQUVDLG9CQUFBO0VBQ0EseUJBQUE7RUFDQSw4Q0FBQTtFQUNBLDBDQUFBO0VBQ0EsNEJBQUE7QVJzTUg7QVFwTUc7Ozs7Ozs7Ozs7Ozs7Ozs7RUFDQywyQ0FBQTtBUnFOSjtBUWpORTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBR0MsbUNBQUE7RUFDQSw0QkFBQTtBUnFPSDtBUW5PRztFQUVDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7SUFDQyx1Q0FBQTtJQUNBLDRCQUFBO0VSd1BIO0FBQ0Y7QVFyUEc7RUFFQzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0lBQ0MsdUNBQUE7SUFDQSw0QkFBQTtFUjBRSDtBQUNGO0FRdlFHOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7RUFDQyxvQ0FBQTtBUjZSSjtBUTFSRzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7RUFDQyx3Q0FBQTtFQUNBLG9DQUFBO0FSb1VKO0FRbFVJOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztFQUNDLHFDQUFBO0FSNFdMO0FRdFdDO0VBSUMsa0NBQUE7RUFDQSwyQkFBQTtBUnFXRjtBUW5XRTtFQUVDO0lBQ0MsdUNBQUE7RVJvV0Y7QUFDRjtBUWpXRTtFQUVDO0lBQ0MsdUNBQUE7RVJrV0Y7QUFDRjtBUS9WRTtFQUNDLG9CQUFBO0VBQ0EsK0NBQUE7RUFDQSwyQ0FBQTtBUmlXSDtBUS9WRztFQUNDLDRDQUFBO0FSaVdKO0FRMVZHO0VBRUM7SUFDQyw0QkFBQTtJQUNBLHVDQUFBO0lBQ0EsbUNBQUE7RVIyVkg7QUFDRjtBUXhWRztFQUVDO0lBQ0MsNEJBQUE7SUFDQSx1Q0FBQTtJQUNBLG1DQUFBO0VSeVZIO0FBQ0Y7QVFwVkM7Ozs7RUFHQyx1QkFBQTtFQUNBLG1DQUFBO0VBQ0EsNEJBQUE7QVJ1VkY7QVFyVkU7RUFFQzs7OztJQUNDLDRCQUFBO0lBQ0EsdUNBQUE7RVJ5VkY7QUFDRjtBUXRWRTtFQUVDOzs7O0lBQ0MsNEJBQUE7SUFDQSx1Q0FBQTtFUjBWRjtBQUNGO0FRdlZFOzs7O0VBQ0Msb0NBQUE7QVI0Vkg7QVF6VkU7Ozs7Ozs7RUFDQyxvQkFBQTtFQUNBLG1DQUFBO0VBQ0EsMENBQUE7RUFDQSw0Q0FBQTtBUmlXSDtBUS9WRzs7Ozs7OztFQUNDLDJDQUFBO0FSdVdKO0FRbldFOzs7Ozs7Ozs7Ozs7O0VBRUMsbUNBQUE7RUFDQSw0QkFBQTtBUmdYSDtBUTlXRztFQUVDOzs7Ozs7Ozs7Ozs7O0lBQ0MsNEJBQUE7SUFDQSx1Q0FBQTtFUjJYSDtBQUNGO0FReFhHO0VBRUM7Ozs7Ozs7Ozs7Ozs7SUFDQyw0QkFBQTtJQUNBLHVDQUFBO0VScVlIO0FBQ0Y7QVFsWUc7Ozs7Ozs7Ozs7Ozs7RUFDQyxvQ0FBQTtBUmdaSjtBUTdZRzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztFQUNDLG1DQUFBO0VBQ0EsMENBQUE7RUFDQSw0Q0FBQTtBUnVhSjtBUXJhSTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztFQUNDLDJDQUFBO0FSK2JMO0FRemJDO0VBR0MsVUFBQTtFQUNBLFlBQUE7RUFDQSx1QkFBQTtFQUNBLG1CQUFBO0VBQ0EsNEJBQUE7RUFDQSxvQkFBQTtFQUNBLGdCQUFBO0VBQ0Esc0NBQUE7QVJ5YkY7QVFyYkc7RUFDQyxXQUFBO0VBQ0EsY0FBQTtFQUNBLGVBQUE7RUFDQSxnQkFBQTtFQUNBLDBDQUFBO0VBQ0EsdXFDQUFBO1VBQUEsK3BDQUFBO0VBQ0EsMEJBQUE7VUFBQSxrQkFBQTtFQUNBLDhCQUFBO0FSdWJKO0FRbGJJO0VBQ0MsK0JBQUE7QVJvYkw7QVEvYUU7RUFDQyxhQUFBO0FSaWJIO0FRL2FHO0VBQ0MsV0FBQTtFQUNBLDRCQUFBO0VBQ0EsV0FBQTtFQUNBLGlDQUFBO0VBQ0Esa0JBQUE7RUFDQSxPQUFBO0VBQ0EsU0FBQTtBUmliSjtBUTdhRTtFQUNDLG9CQUFBO0FSK2FIO0FRN2FHO0VBQ0MsNkJBQUE7QVIrYUo7QVEzYUs7RUFDQyx3Q0FBQTtBUjZhTjtBUXZhRTtFQUVDLDRCQUFBO0FSd2FIO0FRcGFJO0VBQ0MsaUNBQUE7QVJzYUw7QVE1dUJBOzs7Ozs7Ozs7OztFQTRVQyx1QkFBQTtBUjZhRDtBUTVhQzs7Ozs7RUFFQyxvQkFBQTtFQUNBLGlDQUFBO0VBQ0EscUJBQUE7QVJpYkY7QVEvYUU7Ozs7O0VBQ0MsdUJBQUE7QVJxYkg7QVFoYkc7Ozs7O0VBQ0MsV0FBQTtFQUNBLHdKQUFBO0VBQ0Esa0ZBQUE7QVJzYko7QVFseEJBOzs7Ozs7Ozs7OztFQWlXQywrQkFBQTtBUjhiRDtBUTdiQzs7Ozs7Ozs7O0VBQ0MsV0FBQTtBUnVjRjtBTW55QkM7RUVpV0M7Ozs7Ozs7OztJQUNDLFdBQUE7RVI2Y0Q7QUFDRjs7QVE5YkE7O0VBR0Msa0JBQUE7RUFDQSwyQkFBQTtFQUNBLG9CQUFBO0VBQ0EsNEJBQUE7RUFDQSwrQkFBQTtFQUNBLGdCQUFBO0VBRUEsY0FBQTtFQUNBLHlCQUFBO0VBQ0EscUJBQUE7RUFDQSwwQkFBQTtFQUNBLG9HQUFBO0VBQ0Esa0JBQUE7RUFDQSxvQkFBQTtFQUNBLHVCQUFBO0VBQ0EsbUJBQUE7RUFDQSxXQUFBO0VBQ0EsZUFBQTtFQUNBLDJCQUFBO0VBQ0Esc0NBQUE7RUFDQSxrQ0FBQTtFQUNBLDBCQUFBO0VBQ0EsdUVBQUE7QVIrYkQ7QVE3YkM7O0VBQ0MsbUJBQUE7QVJnY0Y7QVE3YkM7O0VBQ0MsdUNBQUE7RUFDQSwyQ0FBQTtBUmdjRjs7QUkzMUJBOzs7RUFBQTtBR0FBOzs7RUFBQTtBRUFBOzs7RUFBQTtBQ0dBO0VBRUM7SUFDQyxvQkFBQTtJQUNBLHFCQUFBO0VWczJCQTtFVW4yQkQ7SUFDQyxvQkFBQTtJQUNBLGFBQUE7RVZxMkJBO0FBQ0Y7QVVsMkJBO0VBRUM7SUFDQyx1Q0FBQTtJQUNBLG1DQUFBO0lBQ0EsNEJBQUE7RVZtMkJBO0VVaDJCRDtJQUNDLHVDQUFBO0lBQ0EsbUNBQUE7SUFDQSw0QkFBQTtFVmsyQkE7QUFDRjtBVS8xQkE7RUFFQztJQUNDLGtFQUFBO1lBQUEsMERBQUE7SUFDQSxtQkFBQTtFVmcyQkE7RVU3MUJEO0lBQ0Msa0VBQUE7WUFBQSwwREFBQTtJQUNBLHFCQUFBO0VWKzFCQTtFVTUxQkQ7SUFDQyxrRUFBQTtZQUFBLDBEQUFBO0lBQ0EsbUJBQUE7RVY4MUJBO0VVMzFCRDtJQUNDLGlFQUFBO1lBQUEseURBQUE7SUFDQSxtQkFBQTtFVjYxQkE7QUFDRjtBU3Q0QkM7RUFDQyx3QkFBQTtBVHc0QkY7QVN0NEJFO0VBQ0MsV0FBQTtFQUNBLDJCQUFBO0VBQ0EsY0FBQTtFQUNBLGNBQUE7RUFDQSxlQUFBO0VBQ0EsU0FBQTtFQUNBLHdCQUFBO0VBQ0EsaUVBQUE7VUFBQSx5REFBQTtBVHc0Qkg7QVNyNEJFO0VBQ0MsdUNBQUE7RUFDQSxtQ0FBQTtFQUNBLDRCQUFBO0VBQ0EsVUFBQTtBVHU0Qkg7QVNyNEJHO0VBQ0Msb0VBQUE7VUFBQSw0REFBQTtBVHU0Qko7QVNuNEJFO0VBQ0Msd0JBQUE7QVRxNEJIO0FTbjRCRztFQUNDLHdCQUFBO0FUcTRCSjtBUzEzQkU7RUFDQyxhQUFBO0FUNDNCSDs7QU12NkJDO0VHZ0REO0lBR0UsTUFBQTtFVHkzQkE7RVN2M0JBO0lBQ0MsaUJBQUE7SUFDQSxZQUFBO0VUeTNCRDtFU3YzQkM7SUFDQyxjQUFBO0lBQ0EsZUFBQTtFVHkzQkY7RVNwM0JFO0lBQ0Msa0VBQUE7WUFBQSwwREFBQTtFVHMzQkg7RVM5MkJFO0lBQ0MscUJBQUE7SUFDQSxrRUFBQTtZQUFBLDBEQUFBO0VUZzNCSDtBQUNGOztBTzU3QkE7RUFDRSxvQkFBQTtFQUNBLHFCQUFBO0VBQ0Esc0JBQUE7RUFDQSxVQUFBO0VBQ0EsbUJBQUE7RUFDQSx1QkFBQTtFQUNBLDRDQUFBO0VBQ0EsdUNBQUE7RUFDQSxpQkFBQTtFQUNBLG1DQUFBO0VBQ0EsNEJBQUE7RUFDQSxnQkFBQTtFQUNBLGNBQUE7QVArN0JGOztBTzE3QkU7RUFDRSxXQUFBO0VBQ0EsbUJBQUE7QVA2N0JKO0FPejdCTTtFQUNFLGNBQUE7QVAyN0JSO0FPdjdCVTtFQUNFLFdBQUE7RUFDQSxhQUFBO0VBQ0EsY0FBQTtFQUNBLDR0Q0FBQTtVQUFBLG90Q0FBQTtFQUNBLDBCQUFBO1VBQUEsa0JBQUE7RUFDQSxnREFBQTtFQUNBLDRCQUFBO0VBQ0EsOEJBQUE7RUFDQSw0QkFBQTtBUHk3Qlo7QU9wN0JZO0VBQ0UsNEJBQUE7QVBzN0JkO0FPaDdCTTtFQUNFLGFBQUE7QVBrN0JSO0FPaDdCUTtFQUNFLDRDQUFBO0FQazdCVjtBTzk2Qk07RUFDRSxXQUFBO0VBQ0EsZ0JBQUE7QVBnN0JSO0FPOTZCUTtFQUNFLHNCQUFBO0FQZzdCVjtBTzk2QlU7RUFDRSxnQkFBQTtBUGc3Qlo7QU8zNkJNO0VBQ0UsK0JBQUE7QVA2NkJSO0FPMzZCUTtFQUNFLGdCQUFBO0FQNjZCVjtBT3o2Qk07O0VBRUUsaUNBQUE7QVAyNkJSO0FPeDZCTTtFQUNFLGlCQUFBO0VBQ0EsVUFBQTtBUDA2QlI7QU94NkJRO0VBSUUsMkJBQUE7QVB1NkJWO0FPcDZCUTtFQUNFLGFBQUE7QVBzNkJWO0FPbDZCTTtFQUNFLFFBQUE7RUFDQSxZQUFBO0VBQ0Esa0JBQUE7RUFDQSxvQkFBQTtBUG82QlI7QU01K0JDO0VDK0VTO0lBRUUsaUNBQUE7SUFDQSw0QkFBQTtJQUNBLGFBQUE7SUFDQSxZQUFBO0lBQ0EsTUFBQTtFUCs1QlY7RU8xNUJZO0lBQ0UscUJBQUE7SUFDQSxrRUFBQTtZQUFBLDBEQUFBO0VQNDVCZDtFT3Q1Qk07SUFDRSxhQUFBO0VQdzVCUjtBQUNGO0FNNWhDQztFQ3lJTztJQUNFLG1CQUFBO0VQczVCUjtFT241Qk07SUFDRSxVQUFBO0VQcTVCUjtBQUNGO0FPOTRCSTtFQUNFLGFBQUE7QVBnNUJOOztBSS9pQ0E7OztFQUFBO0FHQUE7OztFQUFBO0FJQUE7OztFQUFBO0FBU0M7RUFDQyxxQ0FBQTtBWHFqQ0Y7QVduakNFO0VBQ0MseXRDQUFBO0FYcWpDSDtBV2pqQ0M7RUFDQyxtQ0FBQTtBWG1qQ0Y7QVdqakNFO0VBQ0MsazRDQUFBO0FYbWpDSDtBV2hqQ0U7RUFJQyxzQkFBQTtBWCtpQ0g7QVczaUNDO0VBQ0Msa0NBQUE7QVg2aUNGO0FXM2lDRTtFQUNDLDRpQkFBQTtBWDZpQ0g7QVd0aUNFOzs7O0VBS0MsbUNBQUE7RUFDQSw0QkFBQTtFQUNBLHNCQUFBO0FYdWlDSDtBV3JpQ0c7Ozs7RUFDQyxpQ0FBQTtFQUNBLDRCQUFBO0FYMGlDSjtBV3JpQ0M7OztFQUdDLDJCQUFBO0VBQ0EsaUJBQUE7RUFDQSxtQkFBQTtFQUNBLHNDQUFBO0VBQ0EsNENBQUE7RUFDQSw2R0FBQTtFQUNBLGFBQUE7RUFDQSxvQkFBQTtFQUNBLGtCQUFBO0VBQ0Esd0NBQUE7QVh1aUNGO0FXcmlDRTs7O0VBQ0MsZ0JBQUE7QVh5aUNIO0FXdGlDRTs7O0VBQ0MsYUFBQTtFQUNBLHVCQUFBO0VBQ0EsOEJBQUE7RUFDQSxxQkFBQTtFQUNBLDBDQUFBO09BQUEscUNBQUE7QVgwaUNIO0FXeGlDRzs7O0VBQ0MscUJBQUE7RUFDQSxjQUFBO0FYNGlDSjtBV3hpQ0U7OztFQUNDLG1CQUFBO0FYNGlDSDtBV3ppQ0U7OztFQUNDLHlDQUFBO0VBQ0EsMENBQUE7RUFDQSxhQUFBO0VBQ0EsY0FBQTtBWDZpQ0g7QVcxaUNFOzs7RUFDQyxhQUFBO0FYOGlDSDtBVzNpQ0U7Ozs7OztFQUVDLGtCQUFBO0FYaWpDSDtBVzlpQ0U7OztFQUNDLFdBQUE7QVhrakNIO0FXNWlDRTtFQUNDLGFBQUE7QVg4aUNIO0FNNXBDQztFS29IQzs7O0lBR0MsbUJBQUE7SUFDQSwrQkFBQTtFWDJpQ0Q7RVdyaUNFOzs7Ozs7O0lBQ0Msb0RBQUE7RVg2aUNIO0VXemlDQzs7Ozs7O0lBRUMsU0FBQTtFWCtpQ0Y7QUFDRjs7QUk3ckNBOzs7RUFBQTtBUUFBOzs7RUFBQTtBQVFDO0VBQ0MsYUFBQTtFQUNBLGtCQUFBO0VBQ0EsOEJBQUE7QVpnc0NGO0FNbnNDQztFTUFBO0lBTUUscUNBQUE7RVppc0NEO0FBQ0Y7QVkvckNFOztFQUVDLFdBQUE7RUFDQSxXQUFBO0VBQ0EsYUFBQTtFQUNBLDhCQUFBO0FaaXNDSDtBWTlyQ0U7RUFFQyxhQUFBO0FaK3JDSDs7QUkxdENBOzs7RUFBQTtBU0FBOzs7RUFBQTtBQ0FBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBQ0MsV0FBQTtFQUNBLGdCQUFBO0VBQ0EsdUJBQUE7RUFDQSwrQkFBQTtFQUNBLHdDQUFBO0VBQ0Esc0NBQUE7RUFDQSx1Q0FBQTtFQUNBLGtDQUFBO0VBQ0EsNEJBQUE7QWR5d0NEO0FjbndDQzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztFQUlDLHVDQUFBO0VBQ0EsNkNBQUE7RUFBQSxxQ0FBQTtFQUNBLDRCQUFBO0FkazVDRjtBYy80Q0M7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7RUFDQyxtQ0FBQTtBZHE3Q0Y7QWNsN0NDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBQ0Msc0NBQUE7QWR3OUNGOztBZXIvQ0E7O0VBQ0MsZUFBQTtFQUNBLGdCQUFBO0VBQ0Esd0JBQUE7S0FBQSxxQkFBQTtVQUFBLGdCQUFBO0VBQ0EsdUNBQUE7RUFDQSxzQkFBQTtFQUNBLDBCQUFBO0VBQ0Esb0JBQUE7RUFDQSxtQkFBQTtFQUNBLHVCQUFBO0FmeS9DRDtBZXYvQ0M7Ozs7O0VBRUMsbUNBQUE7QWY0L0NGO0FleC9DRzs7Ozs7RUFDQyx3NUJBQUE7QWY4L0NKO0Fldi9DRTs7RUFDQyx3NUJBQUE7RUFDQSxrQkFBQTtBZjAvQ0g7QWV0L0NDOztFQUNDLHdCQUFBO0VBQ0EseUNBQUE7RUFDQSxnQkFBQTtBZnkvQ0Y7O0Flci9DQTs7RUFDQyxhQUFBO0VBQ0EsdUJBQUE7RUFDQSxXQUFBO0VBQ0EsZ0JBQUE7RUFDQSxlQUFBO0FmeS9DRDs7QWFwaURBOzs7RUFBQTtBR0VBOztFQUdDLHdCQUFBO0tBQUEscUJBQUE7VUFBQSxnQkFBQTtFQUNBLHFCQUFBO0VBQ0EsOENBQUE7RUFDQSw0QkFBQTtFQUNBLDZDQUFBO0FoQndpREQ7O0FPampEQTs7O0VBQUE7QU11Q0c7O0VBQ0Msa0JBQUE7QWJraERKO0FhMWdERzs7RUFDQyxxQkFBQTtFQUNBLGNBQUE7RUFDQSwrQkFBQTtFQUNBLGdCQUFBO0FiNmdESjtBYTkvQ0k7O0VBQ0MsVUFBQTtFQUNBLGdCQUFBO0VBQ0EsK0JBQUE7QWJpZ0RMO0FhMS9DTTs7RUFDQyw2QkFBQTtFQUNBLDRCQUFBO0FiNi9DUDtBYXYvQ007O0VBQ0MsMEJBQUE7RUFDQSx5QkFBQTtBYjAvQ1A7QWFwL0NHOztFQUNDLFNBQUE7RUFDQSxVQUFBO0VBQ0EsU0FBQTtFQUNBLGFBQUE7RUFDQSxrQ0FBQTtBYnUvQ0o7QWFyL0NJOztFQUNDLGFBQUE7RUFDQSx3Q0FBQTtBYncvQ0w7QWFsL0NJOztFQUNDLDJtQkFBQTtFQUNBLHdCQUFBO0VBQ0EsY0FBQTtFQUNBLGdCQUFBO0FicS9DTDtBYWgvQ0s7O0VBQ0MsZ3NCQUFBO0FibS9DTjtBYTkrQ0c7O0VBQ0MsNENBQUE7RUFDQSxpQ0FBQTtFQUNBLGdCQUFBO0VBQ0EsdUJBQUE7RUFDQSxrQkFBQTtBYmkvQ0o7QWE5K0NHOztFQUNDLGlDQUFBO0FiaS9DSjtBYTkrQ0c7O0VBQ0MsYUFBQTtFQUNBLDhCQUFBO0VBQ0Esa0JBQUE7QWJpL0NKO0FhdCtDRTs7RUFDQyxhQUFBO0VBQ0EsOEJBQUE7RUFDQSxnQkFBQTtBYnkrQ0g7QWF2K0NHOztFQUNDLGlDQUFBO0VBQ0EscUNBQUE7RUFDQSxnQkFBQTtBYjArQ0o7QWFoK0NDOztFQUNDLHFCQUFBO0FibStDRjtBYTk5Q0U7O0VBQ0MsaUNBQUE7RUFDQSxxQ0FBQTtFQUNBLGdCQUFBO0FiaStDSDtBYTk5Q0U7O0VBQ0MsaUJBQUE7RUFDQSxrQkFBQTtFQUNBLCtCQUFBO0VBQ0Esd0NBQUE7RUFDQSw0Q0FBQTtBYmkrQ0g7QU1qcERDO0VPMExHOztJQUNDLHFDQUFBO0ViMjlDSDtFYXo5Q0c7O0lBQ0MsaUJBQUE7RWI0OUNKO0FBQ0Y7O0FhbjlDQztFQUNDLG9DQUFBO0VBQ0Esc0NBQUE7RUFDQSxnQkFBQTtBYnM5Q0Y7QWFwOUNFO0VBQ0MsdUNBQUE7QWJzOUNIO0FhcDlDRztFQUNDLDRDQUFBO0VBQ0EsZUFBQTtBYnM5Q0o7QWFoOUNHO0VBQ0MsOENBQUE7RUFDQSwrQkFBQTtBYms5Q0o7QWFoOUNJO0VBQ0Msc0NBQUE7RUFDQSwyQkFBQTtBYms5Q0w7QWEvOENJO0VBQ0MsaUNBQUE7QWJpOUNMOztBSTNyREE7OztFQUFBO0FhQUE7OztFQUFBO0FBVUU7RUFDQyxXQUFBO0VBQ0EsU0FBQTtFQUNBLFVBQUE7QWpCNHJESDtBaUIxckRHO0VBRUMsYUFBQTtBakIyckRKO0FpQnhyREc7RUFDQyxrQkFBQTtFQUNBLCtCQUFBO0VBQ0EscUJBQUE7RUFDQSxrQkFBQTtFQUNBLGtDQUFBO0FqQjByREo7QWlCdnJERztFQUNDLDRCQUFBO0FqQnlyREo7QWlCcnJERTtFQUNDLGFBQUE7QWpCdXJESDtBaUJwckRFO0VBQ0Msd0NBQUE7RUFDQSxpQ0FBQTtFQUNBLHFDQUFBO0VBQ0EsZ0JBQUE7QWpCc3JESDtBTXZ0REM7RVcyQ0c7SUFDQyxtQkFBQTtFakIrcURIO0VpQjVxREU7SUFDQyxjQUFBO0VqQjhxREg7RWlCM3FERTtJQUNDLGNBQUE7RWpCNnFESDtBQUNGOztBSTF1REE7OztFQUFBO0FHQUE7OztFQUFBO0FXQUE7OztFQUFBO0FBWUk7O0VBQ0UsU0FBQTtFQUNBLDZCQUFBO0VBQ0EseUJBQUE7RUFDQSxTQUFBO0FsQjh1RE47QWtCdnVEVTs7O0VBQ0UsNkJBQUE7QWxCMnVEWjtBa0J2dURROzs7RUFDRSx1QkFBQTtFQUNBLDZCQUFBO0FsQjJ1RFY7QWtCenVEVTs7O0VBQ0UsZUFBQTtBbEI2dURaO0FrQjF1RFU7OztFQUNFLGdCQUFBO0FsQjh1RFo7QWtCdHVEUTs7Ozs7RUFDRSxtQkFBQTtBbEI0dURWO0FNbHhEQztFWW9EUzs7Ozs7SUFDRSw4Q0FBQTtFbEJxdURWO0FBQ0Y7QU0zd0RDO0VZaURXOzs7OztJQUNFLGtDQUFBO0VsQml1RFo7QUFDRjtBTXB3REM7RVk0Q1M7OztJQUNFLGlCQUFBO0VsQjZ0RFY7QUFDRjs7QUN6eURBLGlCQUFBO0FHVkE7OztFQUFBO0FlQUE7OztFQUFBO0FDQUE7RUFDQyw0Q0FBQTtFQUNBLHVDQUFBO0VBQ0Esb0JBQUE7RUFDQSxnQkFBQTtFQUNBLGVBQUE7RUFDQSxvQkFBQTtFQUNBLCtCQUFBO0VBQ0EsU0FBQTtFQUNBLG1DQUFBO0VBQ0EscUNBQUE7RUFDQSxnQkFBQTtFQUNBLFVBQUE7QXBCK3pERDs7QW1CajBEQztFQUNDLGFBQUE7RUFDQSxtQkFBQTtFQUNBLGVBQUE7RUFDQSw4QkFBQTtFQUNBLDBDQUFBO09BQUEscUNBQUE7RUFDQSx1Q0FBQTtFQUNBLHdDQUFBO0FuQm8wREY7QW1CbDBERTs7RUFFQyxTQUFBO0FuQm8wREg7QW1CaDBEQztFQUNDLFNBQUE7RUFDQSxhQUFBO0VBQ0EsMENBQUE7T0FBQSxxQ0FBQTtFQUNBLGtDQUFBO0VBQ0EsK0RBQUE7QW5CazBERjtBbUJoMERFO0VBRUMsYUFBQTtBbkJpMERIO0FtQjl6REU7RUFDQyxhQUFBO0VBQ0Esc0JBQUE7RUFDQSw4QkFBQTtFQUNBLGVBQUE7RUFDQSxZQUFBO0VBQ0Esb0JBQUE7QW5CZzBESDtBbUI1ekRJO0VBQ0MsYUFBQTtFQUNBLHNCQUFBO0VBQ0EsdUNBQUE7QW5COHpETDtBbUIzekRJO0VBQ0Msa0JBQUE7RUFDQSw2Q0FBQTtBbkI2ekRMO0FtQjN6REs7RUFDQyxzQ0FBQTtFQUNBLFNBQUE7QW5CNnpETjtBbUJwekRJO0VBQ0MsVUFBQTtFQUNBLGlDQUFBO0VBQ0EscUNBQUE7QW5Cc3pETDtBbUJwekRLO0VBQ0MsY0FBQTtBbkJzekROO0FtQmx6REk7RUFDQyxnQkFBQTtFQUNBLHVDQUFBO0VBQ0EsaUNBQUE7QW5Cb3pETDtBbUJqekRJO0VBQ0MsMENBQUE7RUFDQSxhQUFBO0VBQ0Esc0JBQUE7RUFDQSw4QkFBQTtBbkJtekRMO0FtQmh6REk7RUFDQyxrQkFBQTtBbkJrekRMO0FtQjl5RE07RUFDQyxpQ0FBQTtBbkJnekRQO0FtQjN5REk7RUFDQyxhQUFBO0VBQ0Esc0JBQUE7QW5CNnlETDtBbUIzeURLO0VBQ0MsbUJBQUE7QW5CNnlETjtBbUJ6eURJO0VBQ0MsaUNBQUE7RUFDQSxxQ0FBQTtFQUNBLDRCQUFBO0FuQjJ5REw7QW1CenlESztFQUNDLGFBQUE7QW5CMnlETjtBbUJ4eURLO0VBQ0MsU0FBQTtFQUNBLDRCQUFBO0VBQ0EsZ0JBQUE7QW5CMHlETjtBbUJ4eURNO0VBQ0MsaUNBQUE7RUFDQSxzQkFBQTtBbkIweURQO0FtQnZ5RE07RUFDQyxxQkFBQTtBbkJ5eURQO0FtQm55REc7RUFLQyx1QkFBQTtBbkJpeURKO0FtQjl4REc7RUFDQyxRQUFBO0VBQ0EsWUFBQTtFQUNBLGtCQUFBO0VBQ0Esb0JBQUE7QW5CZ3lESjtBTTc2REM7RWEwSkk7SUFDQywrQkFBQTtFbkJzeERKO0VtQm54REc7SUFDQyxtQkFBQTtJQUNBLDhCQUFBO0lBQ0EscUJBQUE7RW5CcXhESjtBQUNGOztBSS83REE7OztFQUFBO0FHQUE7OztFQUFBO0FZQUE7OztFQUFBO0FFQUE7OztFQUFBO0FBVUM7RUFDQyxnQkFBQTtBckJ3OERGO0FxQnQ4REU7RUFDQyxxQ0FBQTtFQUNBLGFBQUE7RUFDQSxtQ0FBQTtFQUNBLDJCQUFBO0FyQnc4REg7QXFCajhESztFQUNDLHNDQUFBO0VBQ0EsMENBQUE7QXJCbThETjtBcUJoOERLO0VBQ0MsYUFBQTtBckJrOEROO0FxQi83REs7RUFDQyxzQkFBQTtFQUNBLDhCQUFBO0FyQmk4RE47QXFCLzdETTtFQUNDLFNBQUE7RUFDQSxjQUFBO0FyQmk4RFA7QXFCLzdETztFQUNDLGFBQUE7RUFDQSx1Q0FBQTtPQUFBLGtDQUFBO0VBQ0EscUNBQUE7RUFDQSxrQkFBQTtBckJpOERSO0FxQi83RFE7RUFDQyxvQkFBQTtBckJpOERUO0FxQjc3RE87RUFDQyxXQUFBO0VBQ0EsYUFBQTtFQUNBLGdCQUFBO0VBQ0Esc0JBQUE7QXJCKzdEUjtBcUI3N0RRO0VBQ0MsZ0JBQUE7QXJCKzdEVDtBcUI1N0RRO0VBQ0MsV0FBQTtBckI4N0RUO0FxQjE3RE87RUFJQyxzQkFBQTtFQUNBLHFCQUFBO0VBQ0Esa0JBQUE7RUFDQSxPQUFBO0VBQ0EsU0FBQTtBckJ5N0RSO0FxQnI3RE07RUFDQyxhQUFBO0VBQ0Esc0JBQUE7RUFDQSxtQ0FBQTtFQUNBLHFDQUFBO0FyQnU3RFA7QXFCbjdEUTtFQUNDLCtCQUFBO0FyQnE3RFQ7QXFCbDdEUTtFQUNDLGFBQUE7QXJCbzdEVDtBcUIvNkRNO0VBQ0MsYUFBQTtFQUNBLG9CQUFBO0VBQ0EsbUNBQUE7QXJCaTdEUDtBTTcvREM7RWV5RUs7SUFNRSxlQUFBO0VyQms3RE47QUFDRjtBcUJ4NkRLO0VBQ0Msc0JBQUE7RUFDQSw4QkFBQTtBckIwNkROO0FxQng2RE07RUFDQyxhQUFBO0VBQ0EsNEJBQUE7RUFDQSw4QkFBQTtFQUNBLG1DQUFBO0VBQ0EsbUJBQUE7RUFDQSw2Q0FBQTtFQUNBLDhDQUFBO0VBQ0EsK0NBQUE7QXJCMDZEUDtBcUJ4NkRPO0VBQ0MsZ0JBQUE7RUFDQSxpQkFBQTtBckIwNkRSO0FxQnY2RE87RUFDQyxXQUFBO0VBQ0EsYUFBQTtFQUNBLFVBQUE7QXJCeTZEUjtBcUJ2NkRRO0VBQ0MsZUFBQTtBckJ5NkRUO0FxQnQ2RFE7RUFDQyxhQUFBO0FyQnc2RFQ7QXFCcDZETztFQUNDLFVBQUE7RUFDQSxnQkFBQTtFQUNBLGFBQUE7QXJCczZEUjtBcUJwNkRRO0VDUVAscUJBRGlFO0VBRWpFLGtCQUFBO0VBQ0EscUJBQUE7QXRCKzVERDtBc0I3NURDO0VBQ0MsV0FBQTtFQUNBLGtCQUFBO0VBQ0EsV0FSaUQ7RUFTakQsT0FBQTtFQUNBLFFBQUE7RUFDQSxVQUFBO0VBQ0EsV0RqQnFDO0VDa0JyQyx3QkFib0c7RUFjcEcsZ0VBQUE7QXRCKzVERjtBc0I1NURDO0VBQ0MsZ0NBQUE7QXRCODVERjtBc0I1NURFO0VBQ0MsV0FyQnFGO0VBc0JyRixVQUFBO0VBQ0EsMkRBQUE7QXRCODVESDtBcUJ0N0RPO0VBQ0MsVUFBQTtFQUNBLGlCQUFBO0FyQnc3RFI7QXFCdDdEUTs7RUFFQyxhQUFBO0FyQnc3RFQ7QXFCcjdEUTtFQUNDLHFCQUFBO0FyQnU3RFQ7QXFCLzZERztFQUNDLGdCQUFBO0VBQ0EsWUFBQTtBckJpN0RKO0FNM2tFQztFZXdKRTtJQUtFLGdCQUFBO0lBQ0EsY0FBQTtFckJrN0RIO0FBQ0Y7QXFCaDdESTtFQUNDLHdCQUFBO0VBR0EsV0FBQTtFQUNBLFVBQUE7RUFDQSxvQ0FBQTtBckJnN0RMO0FxQjc2REk7RUFDQyxXQUFBO0VBQ0EsZ0JBQUE7RUFDQSxXQUFBO0VBQ0EsU0FBQTtFQUNBLGdCQUFBO0VBQ0EsYUFBQTtFQUNBLDRDQUFBO0VBQ0EsZ0JBQUE7RUFDQSxZQUFBO0FyQis2REw7QXFCNzZESztFQUNDLGlCQUFBO0VBQ0EsWUFBQTtFQUNBLFdBQUE7QXJCKzZETjtBcUI3NkRNO0VBQ0MsaUJBQUE7RUFDQSw2QkFBQTtFQUNBLGVBQUE7RUFDQSxrQkFBQTtBckIrNkRQO0FxQjc2RE87RUFDQyxXQUFBO0VBQ0EsWUFBQTtFQUNBLHNCQUFBO0tBQUEsbUJBQUE7RUFDQSwwQkFBQTtLQUFBLHVCQUFBO0VBQ0EsY0FBQTtFQUNBLGtCQUFBO0VBQ0EsVUFBQTtFQUNBLGlCQUFBO0FyQis2RFI7QXFCNTZETztFQUNDLFdBQUE7RUFDQSxrQkFBQTtFQUNBLFFBQUE7RUFDQSwrQkFBQTtFQUNBLDZCQUFBO0VBQ0Esb0JBQUE7RUFDQSxVQUFBO0FyQjg2RFI7QXFCMzZETztFQUNDLGVBQUE7QXJCNjZEUjtBcUIzNkRRO0VBQ0MsVUFBQTtBckI2NkRUO0FxQnI2RE87RUFDQyxjQUFBO0FyQnU2RFI7QXFCcDZETztFQUNDLFdBQUE7RUFDQSxrQkFBQTtFQUNBLFVBQUE7RUFDQSxlQUFBO0FyQnM2RFI7QXFCajZESztFQUNDLGFBQUE7RUFDQSx1QkFBQTtFQUNBLDhCQUFBO0VBQ0EsMENBQUE7QXJCbTZETjtBcUJqNkRNOztFQUVDLGdCQUFBO0VBQ0EsZUFBQTtFQUNBLGVBQUE7QXJCbTZEUDtBcUI3NURHO0VBQ0MsV0FBQTtFQUNBLFdBQUE7RUFDQSxZQUFBO0VBQ0EsYUFBQTtFQUNBLHFDQUFBO0VBQ0EsbUNBQUE7RUFDQSx3QkFBQTtFQUNBLDJCQUFBO0VBQ0Esa0JBQUE7RUFDQSx5QkFBQTtBckIrNURKO0FxQjM1REs7RUFDQyxhQUFBO0FyQjY1RE47QXFCejVESTtFQUNDLG9CQUFBO0VBQ0EsbUJBQUE7RUFDQSx1QkFBQTtFQUNBLHVCQUFBO0VBQUEsa0JBQUE7RUFDQSxlQUFBO0VBQ0Esd0JBQUE7RUFDQSxlQUFBO0VBQ0Esa0JBQUE7RUFDQSxXQUFBO0VBQ0EsdUNBQUE7RUFDQSxrQkFBQTtFQUNBLDJDQUFBO0FyQjI1REw7QXFCdjVESTtFQUNDLGlDQUFBO0VBQ0EsZ0JBQUE7RUFDQSxnQkFBQTtFQUVBLHVDQUFBO0VBQ0EsbUJBQUE7RUFDQSx1QkFBQTtFQUFBLGtCQUFBO0VBQ0EsWUFBQTtBckJ3NURMO0FxQnQ1REs7RUFDQyw0QkFBQTtFQUNBLCtCQUFBO0VDcktMLHFCQURpRTtFQUVqRSxrQkFBQTtFQUNBLHFCQUFBO0F0QjhqRUQ7QXNCNWpFQztFQUNDLFdBQUE7RUFDQSxrQkFBQTtFQUNBLFdEK0p1QztFQzlKdkMsT0FBQTtFQUNBLFFBQUE7RUFDQSxVQUFBO0VBQ0EsV0QySmtDO0VDMUpsQyx3QkFib0c7RUFjcEcsZ0VBQUE7QXRCOGpFRjtBc0IzakVDO0VBQ0MsZ0NBQUE7QXRCNmpFRjtBc0IzakVFO0VBQ0MsV0FyQnFGO0VBc0JyRixVQUFBO0VBQ0EsMkRBQUE7QXRCNmpFSDtBcUJoN0RLO0VBSUMscUJBQUE7RUFDQSxVQUFBO0FyQis2RE47QXFCNzZETTtFQUNDLDRCQUFBO0FyQis2RFA7QXFCNTZETTtFQUNDLGFBQUE7QXJCODZEUDtBcUIxNkRLO0VBQ0MscURBQUE7QXJCNDZETjtBTXh1RUM7RWUyVEk7SUFJRSwwQ0FBQTtFckI2NkRMO0FBQ0Y7QXFCejZESTtFQUNDLHNDQUFBO0VBQ0EsMENBQUE7QXJCMjZETDtBcUJ2NkRJO0VBQ0MsYUFBQTtFQUNBLGFBQUE7RUFDQSxXQUFBO0VBQ0EsaUNBQUE7RUFDQSwyQkFBQTtBckJ5NkRMO0FxQnY2REs7RUFDQyxXQUFBO0VBQ0EsV0FBQTtFQUNBLFlBQUE7RUFDQSxjQUFBO0VBQ0EsMkJBQUE7RUFDQSx3QkFBQTtFQUNBLDBCQUFBO0FyQnk2RE47QXFCcDZETTtFQUNDLG9EQUFBO0FyQnM2RFA7QXFCaDZETTtFQUNDLDJEQUFBO0FyQms2RFA7QXFCNTVETTtFQUNDLG9EQUFBO0FyQjg1RFA7QXFCejVESTtFQUNDLCtCQUFBO0VBQ0EsMkJBQUE7RUFDQSwyQ0FBQTtFQUNBLDRDQUFBO0VBQ0Esa0JBQUE7QXJCMjVETDtBcUJ6NURLO0VBQ0MsZ0JBQUE7QXJCMjVETjtBcUJ0NURJO0VBQ0MsaUNBQUE7RUFDQSxxQ0FBQTtFQUNBLDRCQUFBO0FyQnc1REw7QXFCdDVESzs7O0VBSUMsa0JBQUE7RUFDQSxvQkFBQTtFQUNBLDRCQUFBO0FyQnU1RE47QXFCcDVESztFQUNDLGlDQUFBO0VBQ0EscUNBQUE7RUFDQSxzQkFBQTtBckJzNUROO0FxQnA1RE07RUFDQyxZQUFBO0VBQ0Esa0JBQUE7QXJCczVEUDtBcUJsNURLO0VBQ0MscUJBQUE7QXJCbzVETjtBcUIvNERNO0VBQ0MsZ0JBQUE7QXJCaTVEUDtBcUI1NERJO0VBQ0MscURBQUE7RUFDQSxhQUFBO0VBQ0Esc0JBQUE7RUFDQSxtQ0FBQTtBckI4NERMO0FxQjU0REs7RUFDQyxnQkFBQTtBckI4NEROO0FxQjE0REk7RUFDQyxXQUFBO0VBQ0EsYUFBQTtFQUNBLG9CQUFBO0VBQ0EsbUNBQUE7RUFDQSxnQkFBQTtBckI0NERMO0FNL3pFQztFZThhRztJQU9FLGVBQUE7RXJCODRESjtBQUNGO0FxQjU0REs7RUFFQyxhQUFBO0FyQjY0RE47QXFCMTRESztFQUNDLFFBQUE7RUFDQSxjQUFBO0VBQ0EsNENBQUE7RUFDQSxnQkFBQTtFQUNBLDZCQUFBO0FyQjQ0RE47QXFCMTRETTtFQUNDLHVDQUFBO0VBQ0EsbUNBQUE7RUFDQSxXQUFBO0VBQ0EsK0VBQUE7QXJCNDREUDtBcUIxNERPO0VBQ0Msc0JBQUE7RUFDQSxrQkFBQTtFQUNBLFdBQUE7QXJCNDREUjtBcUJ4NERNO0VBQ0Msa0JBQUE7RUFDQSxXQUFBO0VBQ0EsZ0JBQUE7QXJCMDREUDtBcUJ0NERLO0VBQ0MsUUFBQTtFQUNBLGNBQUE7RUFDQSxlQUFBO0VBQ0EsZUFBQTtBckJ3NEROO0FxQnI0REs7RUFHQyxzQkFBQTtFQUNBLFFBQUE7RUFDQSxrREFBQTtFQUNBLDhDQUFBO0VBQ0Esc0JBQUE7RUFDQSxnQkFBQTtFQUNBLHlCQUFBO0VBQ0EsK0VBQUE7QXJCcTRETjtBcUJuNERNO0VBQ0MsaUNBQUE7RUFDQSw2QkFBQTtFQUNBLHNCQUFBO0FyQnE0RFA7QXFCaDRESTtFQUNDLHNDQUFBO0VBQ0Esc0NBQUE7RUFDQSxhQUFBO0VBQ0EsbUNBQUE7RUFDQSxvQkFBQTtFQUNBLG1CQUFBO0FyQms0REw7QXFCaDRESztFQUNDLGtCQUFBO0VBQ0Esb0JBQUE7RUFDQSxtQkFBQTtFQUNBLFdBQUE7RUFDQSxrQkFBQTtFQUNBLHlCQUFBO0VBQ0EsaUNBQUE7QXJCazRETjtBcUJoNERNOztFQUVDLGlCQUFBO0VBQ0Esa0JBQUE7QXJCazREUDtBcUIvM0RNO0VBQ0Msc0JBQUE7S0FBQSxtQkFBQTtFQUNBLDBCQUFBO0tBQUEsdUJBQUE7QXJCaTREUDtBcUJ6M0RJO0VBQ0MsVUFBQTtFQUNBLGNBQUE7RUFDQSxhQUFBO0VBQ0EsbUNBQUE7RUFDQSx3Q0FBQTtBckIyM0RMO0FxQnozREs7RUFFQyxhQUFBO0FyQjAzRE47QXFCdjNESztFQUNDLFNBQUE7RUFDQSxVQUFBO0VBQ0EsZ0JBQUE7RUFDQSx1Q0FBQTtFQUNBLGdCQUFBO0VBQ0EseURBQUE7QXJCeTNETjtBcUJ2M0RNO0VBQ0MsY0FBQTtFQUNBLGdCQUFBO0VBQ0EsaUVBQUE7RUFDQSxtQkFBQTtFQUNBLHNCQUFBO0VBQ0EseUJBQUE7RUFDQSxpQ0FBQTtFQUNBLDRCQUFBO0FyQnkzRFA7QXFCdDNETTtFQUVDLGFBQUE7QXJCdTNEUDtBcUJwM0RNO0VBQ0Msc0NBQUE7QXJCczNEUDtBcUJuM0RNO0VBQ0MsaUNBQUE7QXJCcTNEUDtBcUJuM0RPO0VBQ0MsNEJBQUE7QXJCcTNEUjtBcUIvMkRJO0VBQ0MsU0FBQTtBckJpM0RMO0FxQi8yREs7RUFDQyxpQ0FBQTtFQUNBLHFDQUFBO0VBQ0Esd0NBQUE7QXJCaTNETjtBcUI5MkRLO0VBQ0Msd0NBQUE7QXJCZzNETjtBcUI5MkRNO0VBQ0MsU0FBQTtFQUNBLFdBQUE7RUFDQSxnQkFBQTtFQUNBLGFBQUE7RUFDQSw4QkFBQTtBckJnM0RQO0FxQjcyRE07RUFFQyxTQUFBO0VBQ0EseUNBQUE7RUFDQSwrQ0FBQTtFQUNBLGdCQUFBO0FyQjgyRFA7QXFCMzJETTtFQUNDLGdCQUFBO0VBQ0Esc0JBQUE7RUFDQSx5QkFBQTtFQUNBLGlDQUFBO0VBQ0EsMkJBQUE7QXJCNjJEUDtBcUIxMkRNO0VBQ0MsK0JBQUE7RUFDQSw0QkFBQTtFQUNBLGtCQUFBO0FyQjQyRFA7QXFCeDJETTtFQUVDLGdCQUFBO0FyQnkyRFA7QXFCcjJESztFQUNDLFNBQUE7RUFDQSxTQUFBO0VBQ0EsV0FBQTtFQUNBLGdCQUFBO0FyQnUyRE47QXFCcjJETTtFQUNDLFNBQUE7QXJCdTJEUDtBcUJwMkRNOztFQUVDLHlDQUFBO0VBQ0EsU0FBQTtFQUNBLCtDQUFBO0VBQ0EsZ0JBQUE7RUFDQSxtQkFBQTtFQUNBLGdCQUFBO0VBQ0EsMkJBQUE7QXJCczJEUDtBcUJuMkRNO0VBQ0MsVUFBQTtFQUNBLGdCQUFBO0VBQ0Esc0JBQUE7RUFDQSx5QkFBQTtFQUNBLGlDQUFBO0VBQ0EsMkJBQUE7QXJCcTJEUDtBcUJsMkRNO0VBQ0MsK0JBQUE7RUFDQSw0QkFBQTtBckJvMkRQO0FxQmwyRE87RUFDQyxTQUFBO0FyQm8yRFI7QXFCOTFETzs7RUFFQyxnQkFBQTtBckJnMkRSO0FxQnYxREk7RUFDQyxrQkFBQTtBckJ5MURMO0FxQnYxREs7RUFDQyxzQkFBQTtBckJ5MUROO0FxQnQxREs7RUFDQyxrQkFBQTtFQUNBLG9CQUFBO0VBQ0EsOEJBQUE7RUFDQSxRQUFBO0VBQ0EsUUFBQTtFQUNBLDJCQUFBO0FyQncxRE47QXFCcjFETTtFQUNDLGFBQUE7QXJCdTFEUDtBcUJsMURJO0VBQ0MscUNBQUE7QXJCbzFETDtBcUJqMURJO0VBQ0Msa0JBQUE7QXJCbTFETDtBcUJqMURLO0VBQ0MsY0FBQTtBckJtMUROO0FNNWdGQztFZTJzQks7SUFDQyxnQkFBQTtFckJvMERMO0VxQmowREk7SUFDQyxhQUFBO0VyQm0wREw7RXFCL3pERztJQUNDLHlCQUFBO0VyQmkwREo7QUFDRjtBTXZoRkM7RWUrdEJHOztJQUVDLGFBQUE7SUFDQSxzQkFBQTtJQUNBLCtDQUFBO1NBQUEsMENBQUE7SUFDQSx1Q0FBQTtJQUNBLG9CQUFBO0VyQjJ6REg7RXFCenpERzs7OztJQUVDLGVBQUE7RXJCNnpESjtFcUIzekRJOzs7O0lBQ0Msc0JBQUE7SUFDQSxrQkFBQTtFckJnMERMO0VxQnp6REU7O0lBRUMsZUFBQTtJQUNBLHNCQUFBO0VyQjJ6REg7RXFCenpERzs7SUFDQyxzQkFBQTtJQUNBLGtCQUFBO0VyQjR6REo7RXFCcHpERTtJQUNDLGFBQUE7RXJCc3pESDtFcUJsekRFO0lBQ0MseUJBQUE7SUFDQSxTQUFBO0lBQ0EsK0NBQUE7RXJCb3pESDtFcUIveURHO0lBQ0Msb0JBQUE7SUFDQSxvQ0FBQTtJQUNBLGVBQUE7SUFDQSxhQUFBO0lBQ0EsbUJBQUE7SUFDQSw4QkFBQTtJQUNBLGlDQUFBO0VyQml6REo7RXFCL3lESTtJQUNDLFlBQUE7SUFDQSxnQkFBQTtJQUNBLGNBQUE7SUFDQSxnQ0FBQTtFckJpekRMO0VxQjd5REc7SUFDQyxnQkFBQTtJQUNBLGFBQUE7SUFDQSxnQ0FBQTtFckIreURKO0VxQjF5REk7SUFDQyxZQUFBO0VyQjR5REw7RXFCenlESTtJQUNDLGlCQUFBO0lBQ0EseUNBQUE7RXJCMnlETDtBQUNGO0FNM25GQztFZTIxQkU7SUFDQyxvREFBQTtJQUNBLGtCQUFBO0VyQm15REY7RXFCanlERTtJQUNDLGdCQUFBO0lBQ0EsV0FBQTtFckJteURIO0VxQi94REU7SUFDQyxtQkFBQTtJQUNBLFlBQUE7RXJCaXlESDtFcUIveERHO0lBQ0MsZUFBQTtJQUNBLHdCQUFBO0lBQ0EscUNBQUE7RXJCaXlESjtFcUIveERJO0lBQ0Msa0JBQUE7SUFDQSxzQkFBQTtFckJpeURMO0VxQi94REs7SUFDQyxXQUFBO0lBQ0Esa0JBQUE7SUFDQSxRQUFBO0lBQ0EsVUFBQTtJQUNBLFdBQUE7SUFDQSxRQUFBO0lBQ0EsMkJBQUE7SUFDQSxrQ0FBQTtFckJpeUROO0VxQjV4RE07SUFDQyxhQUFBO0VyQjh4RFA7RXFCdnhERTtJQUNDLGdCQUFBO0VyQnl4REg7RXFCcnhESTtJQUNDLFVBQUE7RXJCdXhETDtFcUJweERJO0lBQ0MsVUFBQTtFckJzeERMO0VxQmp4REU7SUFDQyxnQkFBQTtFckJteERIO0FBQ0Y7QU0zcUZDO0VlaTZCRTtJQUNDLDhCQUFBO0VyQjZ3REY7RXFCM3dERTtJQUNDLGdCQUFBO0lBQ0EsY0FBQTtJQUNBLGlCQUFBO0lBQ0EsZ0JBQUE7RXJCNndESDtFcUJwd0RLO0lBQ0Msd0JBQUE7SUFDQSwwQ0FBQTtJQUNBLGlCQUFBO0lBQ0EsZ0JBQUE7RXJCc3dETjtFcUJwd0RNO0lBQ0MsYUFBQTtFckJzd0RQO0VxQm53RE07SUFDQyxpQkFBQTtJQUNBLGNBQUE7RXJCcXdEUDtFcUJsd0RNO0lBQ0MsZ0JBQUE7RXJCb3dEUDtBQUNGOztBcUJ6dkRBO0VBQ0Msa0JBQUE7QXJCNHZERDs7QXFCeHZEQztFQUNDLGFBQUE7RUFDQSxlQUFBO0VBQ0EsUUFBQTtFQUNBLG1CQUFBO0FyQjJ2REY7QXFCeHZEQztFQUNDLG9CQUFBO0VBQ0EsbUJBQUE7RUFDQSx1QkFBQTtFQUNBLGVBQUE7RUFDQSxrQkFBQTtFQUNBLHlCQUFBO0VBQ0Esa0JBQUE7RUFDQSxnQkFBQTtFQUNBLGVBQUE7RUFDQSxjQUFBO0VBQ0EsZUFBQTtFQUNBLGdEQUFBO0FyQjB2REY7QXFCeHZERTtFQUNDLGtCQUFBO0FyQjB2REg7QXFCdnZERTtFQUNDLGtCQUFBO0VBQ0EsaUJBQUE7RUFDQSxnQkFBQTtBckJ5dkRIO0FxQnR2REU7RUFDQyxhQUFBO0VBQ0EsbUJBQUE7RUFDQSxvQkFBQTtFQUNBLGtCQUFBO0FyQnd2REg7QXFCcnZERztFQUNDLFdBQUE7RUFDQSxrQkFBQTtFQUNBLFFBQUE7RUFDQSx1SkFBQTtFQU9BLHNCQUFBO0FyQml2REo7QXFCNXVEQztFQUNDLHFCQUFBO0VBQ0EsZUFBQTtFQUNBLGVBQUE7RUFDQSxjQUFBO0VBQ0EsMEJBQUE7QXJCOHVERjtBcUI1dURFO0VBQ0MsV0FBQTtBckI4dURIOztBcUJ6dURBO0VBR0MsUUFBQTtFQUNBLHNCQUFBO0VBQ0Esa0JBQUE7RUFDQSw0Q0FBQTtFQUNBLDhDQUFBO0VBQ0EsdUNBQUE7RUFDQSwyREFBQTtBckIwdUREO0FxQnh1REM7RUFDQyw0Q0FBQTtFQUNBLDhDQUFBO0VBQ0EsdUNBQUE7QXJCMHVERjtBcUJ2dURDO0VBRUMsWUFBQTtFQUNBLG9CQUFBO0FyQnd1REY7QXFCcnVEQztFQUNDLFlBQUE7RUFDQSxvQkFBQTtBckJ1dURGOztBSTd4RkE7OztFQUFBO0FHQUE7OztFQUFBO0FNQUE7OztFQUFBO0FVQUE7OztFQUFBO0FuQkFBOzs7RUFBQTtBb0JFQTtFQUNDLDZCQUFBO0VBQ0EsU0FBQTtFQUNBLFNBQUE7QXhCa3pGRDtBd0JoekZDO0VBQ0MsYUFBQTtBeEJrekZGO0F3Qi95RkM7RUFDQyw0Q0FBQTtBeEJpekZGO0F3QjF5Rkc7RUFDQyxhQUFBO0F4QjR5Rko7QXdCcHlGSTs7O0VBRUMsaUJBQUE7QXhCdXlGTDtBd0JueUZHOzs7RUFFQyxnQkFBQTtBeEJzeUZKO0F3Qmx5RkU7RUFDQywrQkFBQTtBeEJveUZIO0F3Qmx5Rkc7OztFQUVDLGdCQUFBO0F4QnF5Rko7QXdCaHlGQztFQUNDLFdBQUE7QXhCa3lGRjtBd0IveEZDOzs7RUFFQyw4REFBQTtFQUNBLGFBQUE7RUFDQSwrQ0FBQTtFQUNBLGdCQUFBO0F4Qmt5RkY7QXdCaHlGRTs7O0VBQ0MsZUFBQTtBeEJveUZIO0F3Qmp5RkU7OztFQUNDLGdCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxpQkFBQTtFQUNBLG1CQUFBO0F4QnF5Rkg7QXdCanlGQztFQUNDLGdCQUFBO0F4Qm15RkY7QXdCaHlGQztFQUNDLCtCQUFBO0F4Qmt5RkY7QXdCL3hGQztFQUNDLFNBQUE7RUFDQSxxQkFBQTtBeEJpeUZGO0F3Qi94RkU7RUFDQyxnQkFBQTtFQUNBLGdDQUFBO0F4Qml5Rkg7QXdCL3hGRztFQUNDLFlBQUE7RUFDQSxjQUFBO0F4Qml5Rko7QXdCL3hGSTtFQUNDLGdDQUFBO0VBQ0EsZ0JBQUE7QXhCaXlGTDtBTXgxRkM7RWtCK0RDO0lBR0UsaUJBQUE7RXhCMHhGRjtBQUNGO0FNNzNGQztFa0JORDtJQThHRSxjQUFBO0lBQ0EsY0FBQTtJQUNBLGdCQUFBO0V4Qnl4RkE7QUFDRjtBTXA0RkM7RWtCK0dDO0lBQ0MsZ0NBQUE7RXhCd3hGRDtBQUNGOztBdUJ0NEZDO0VBQ0MsYUFBQTtFQUNBLDBCQUFBO0F2Qnk0RkY7QXVCdjRGRTtFQUNDLGlCQUFBO0F2Qnk0Rkg7QXVCdDRGRTtFQUNDLGFBQUE7RUFDQSxnQkFBQTtFQUNBLHNCQUFBO0VBQ0EsOEJBQUE7QXZCdzRGSDtBdUJ0NEZHO0VBQ0MsU0FBQTtBdkJ3NEZKO0F1QnQ0Rkk7RUFDQyxhQUFBO0F2Qnc0Rkw7QXVCcjRGSTtFQUNDLGFBQUE7QXZCdTRGTDtBdUJuNEZHO0VBQ0MsYUFBQTtFQUNBLGtCQUFBO0VBQ0Esb0NBQUE7RUFDQSxvQ0FBQTtFQUNBLHVCQUFBO0VBQ0Esb0NBQUE7RUFDQSwrQ0FBQTtBdkJxNEZKO0F1Qm40Rkk7RUFDQyw0Q0FBQTtBdkJxNEZMO0F1Qmw0Rkk7RUFDQyxVQUFBO0VBQ0EsU0FBQTtFQUNBLGdCQUFBO0F2Qm80Rkw7QXVCbDRGSztFQUNDLGFBQUE7QXZCbzRGTjtBdUJoNEZJO0VBQ0MsYUFBQTtFQUNBLGdCQUFBO0VBQ0EseUJBQUE7QXZCazRGTDtBdUI5M0ZNO0VBQ0MsV0FBQTtFQUNBLGVBQUE7RUFDQSw0Q0FBQTtBdkJnNEZQO0F1QjMzRkk7RUFDQyxnQkFBQTtFQUNBLDJCQUFBO0F2QjYzRkw7QXVCMzNGSztFQUNDLGFBQUE7RUFDQSxzQkFBQTtFQUNBLFdBQUE7QXZCNjNGTjtBdUIzM0ZNO0VBQ0MsaUNBQUE7RUFDQSxxQ0FBQTtFQUNBLGdCQUFBO0F2QjYzRlA7QXVCMzNGTztFQUNDLHFCQUFBO0F2QjYzRlI7QXVCdjNGTztFQUNDLFlBQUE7RUFDQSwrQkFBQTtBdkJ5M0ZSO0F1QnQzRk87RUFDQyxxQkFBQTtBdkJ3M0ZSO0F1QmwzRkk7RUFDQyxrQkFBQTtFQUNBLGdCQUFBO0VBQ0EsdUJBQUE7RUFBQSxrQkFBQTtBdkJvM0ZMO0F1QmozRkk7RUFDQyxhQUFBO0F2Qm0zRkw7QXVCaDNGSTtFQUNDLGdCQUFBO0VBQ0EsYUFBQTtFQUNBLGtCQUFBO0VBQ0EsZ0JBQUE7RUFDQSw0QkFBQTtBdkJrM0ZMO0F1Qi8yRkk7RUFDQyxnQkFBQTtFQUNBLGFBQUE7QXZCaTNGTDtBdUIvMkZLO0VBQ0MsV0FBQTtFQUNBLDBCQUFBO0VBQ0EsK0JBQUE7RUFDQSxzQ0FBQTtFQUNBLGdCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxxQkFBQTtFQUNBLGdCQUFBO0F2QmkzRk47QXVCLzJGTTtFQUNDLHVCQUFBO0F2QmkzRlA7QXVCMzJGRztFQUNDLFdBQUE7RUFDQSxjQUFBO0VBQ0EscUNBQUE7QXZCNjJGSjtBdUIzMkZJO0VBQ0MsVUFBQTtFQUNBLFNBQUE7RUFDQSxhQUFBO0F2QjYyRkw7QXVCMTJGSTtFQUNDLFdBQUE7RUFDQSxhQUFBO0VBQ0Esc0JBQUE7RUFDQSwyQkFBQTtFQUNBLDJCQUFBO0VBQ0EsNEJBQUE7QXZCNDJGTDtBdUIxMkZLO0VBRUMsd0JBQUE7QXZCMjJGTjtBdUJ4MkZLO0VBR0Msc0JBQUE7RUFDQSxTQUFBO0F2QncyRk47QXVCcjJGSztFQUNDLGlCQUFBO0F2QnUyRk47QXVCbjJGSTtFQUdDLHNCQUFBO0VBQ0Esc0JBQUE7QXZCbTJGTDtBdUJqMkZLO0VBQ0Msd0JBQUE7QXZCbTJGTjtBdUI3MUZFO0VBQ0MsMENBQUE7QXZCKzFGSDtBdUI3MUZHO0VBRUMsYUFBQTtBdkI4MUZKO0F1QjMxRkc7RUFDQyxXQUFBO0VBQ0EsV0FBQTtFQUNBLGFBQUE7RUFDQSw4QkFBQTtFQUNBLDRCQUFBO0F2QjYxRko7QXVCMzFGSTtFQUNDLGlDQUFBO0VBQ0EscUNBQUE7QXZCNjFGTDtBdUJsMUZPOztFQUVDLDRDQUFBO0F2Qm8xRlI7QXVCOTBGSTtFQUNDLFVBQUE7QXZCZzFGTDtBdUI5MEZLO0VBRUMsYUFBQTtBdkIrMEZOO0F1QjUwRks7RUFHQyxzQkFBQTtBdkI0MEZOO0F1QnQwRkU7RUFDQyxpQkFBQTtFQUNBLDBDQUFBO0F2QncwRkg7QXVCdDBGRztFQUNDLGlDQUFBO0VBQ0EscUNBQUE7QXZCdzBGSjtBdUJyMEZHO0VBQ0MscUNBQUE7QXZCdTBGSjtBTWxrR0M7RWlCOFFHO0lBQ0MsK0NBQUE7SUFDQSxtQkFBQTtFdkJ1ekZIO0V1QnJ6Rkc7SUFDQyxnQkFBQTtJQUNBLGFBQUE7RXZCdXpGSjtFdUJwekZHO0lBQ0MsZ0JBQUE7SUFDQSxhQUFBO0V2QnN6Rko7RXVCbnpGRztJQUNDLGdCQUFBO0lBQ0EsYUFBQTtFdkJxekZKO0V1Qmx6Rkc7SUFDQyxnQkFBQTtJQUNBLGFBQUE7SUFDQSxrQkFBQTtFdkJvekZKO0V1Qmp6Rkc7SUFDQyxnQkFBQTtJQUNBLGFBQUE7SUFDQSxrQkFBQTtJQUNBLGFBQUE7RXZCbXpGSjtFdUJqekZJO0lBQ0Msb0JBQUE7SUFDQSxhQUFBO0lBQ0EsY0FBQTtJQUNBLG1CQUFBO0lBQ0EsdUJBQUE7RXZCbXpGTDtFdUJqekZLO0lBQ0MsOHVDQUFBO0lBQ0EscUJBQUE7RXZCbXpGTjtFdUJoekZLO0lBQ0MsYUFBQTtFdkJrekZOO0V1Qi95Rks7SUFDQyx1QkFBQTtFdkJpekZOO0V1QjN5RkU7SUFDQyxXQUFBO0lBQ0EsY0FBQTtJQUNBLHFDQUFBO0V2QjZ5Rkg7RXVCM3lGRztJQUNDLFVBQUE7SUFDQSxTQUFBO0lBQ0EsYUFBQTtJQUNBLGVBQUE7SUFDQSwyQkFBQTtJQUNBLDhCQUFBO0V2QjZ5Rko7RXVCMXlGRztJQUNDLGFBQUE7SUFDQSwrQkFBQTtJQUNBLHVDQUFBO0V2QjR5Rko7RXVCMXlGSTtJQUVDLHNCQUFBO0lBQ0EsU0FBQTtFdkIyeUZMO0V1Qnh5Rkk7SUFDQyxpQkFBQTtFdkIweUZMO0FBQ0Y7QU16b0dDO0VpQndXQztJQUNDLHFDQUFBO0lBQ0EsMENBQUE7RXZCb3lGRDtFdUJseUZDO0lBQ0MsMEJBQUE7RXZCb3lGRjtFdUJqeUZDO0lBQ0MsYUFBQTtFdkJteUZGO0V1Qmh5RkM7SUFDQyxxQ0FBQTtFdkJreUZGO0FBQ0Y7QU14cEdDO0VpQmtZSTtJQUNDLFdBQUE7SUFDQSwrQkFBQTtJQUNBLHVCQUFBO0V2Qnl4Rko7RXVCbHhGRTtJQUNDLGtCQUFBO0lBQ0EsVUFBQTtJQUNBLGdCQUFBO0lBQ0EsaUJBQUE7RXZCb3hGSDtBQUNGOztBSTdxR0E7OztFQUFBO0FHQUE7OztFQUFBO0FnQkFBOzs7RUFBQTtBRUFBOzs7RUFBQTtBQVVDO0VBQ0MsMENBQUE7QXpCc3JHRjtBeUJqckdFO0VBQ0MsYUFBQTtFQUNBLCtCQUFBO0VBQ0EsMkJBQUE7RUFDQSxvQ0FBQTtFQUNBLHNDQUFBO0VBQ0Esd0NBQUE7QXpCbXJHSDtBeUJqckdHO0VBQ0MsV0FBQTtBekJtckdKO0F5Qi9xR0U7RUFDQyxXQUFBO0VBQ0EsYUFBQTtFQUNBLGtCQUFBO0VBQ0EsMENBQUE7T0FBQSxxQ0FBQTtFQUNBLGtDQUFBO0F6QmlyR0g7QXlCL3FHRztFQUNDLGlDQUFBO0VBQ0EscUNBQUE7QXpCaXJHSjtBeUI1cUdJO0VBQ0MsU0FBQTtBekI4cUdMO0F5QjFxR0c7RUFDQywyQkFBQTtFQUNBLDBCQUFBO0F6QjRxR0o7QXlCMXFHSTtFQUNDLDhCQUFBO0F6QjRxR0w7QXlCenFHSTtFQUNDLDJCQUFBO0F6QjJxR0w7QXlCdHFHSztFQUNDLGtCQUFBO0F6QndxR047QXlCcnFHSztFQUNDLGtDQUFBO0F6QnVxR047QXlCcnFHTTtFQUNDLFVBQUE7RUFDQSx5QkFBQTtFQUNBLHVCQUFBO0VBQ0EsNkJBQUE7RUFDQSxpQ0FBQTtFQUNBLGtDQUFBO0F6QnVxR1A7QXlCbHFHSTtFQUNDLGFBQUE7QXpCb3FHTDtBeUIvcEdLO0VBQ0Msa0JBQUE7QXpCaXFHTjtBeUI5cEdLO0VBQ0Msa0NBQUE7QXpCZ3FHTjtBeUIxcEdLO0VBQ0MsV0FBQTtFQUNBLFdBQUE7RUFDQSxnQkFBQTtBekI0cEdOO0F5QjFwR007RUFDQywwQkFBQTtBekI0cEdQO0F5QnhwR0s7RUFDQyxnREFBQTtBekIwcEdOO0F5QnZwR0s7RUFDQyxrQkFBQTtBekJ5cEdOO0F5QnRwR0s7RUFDQyxrQ0FBQTtBekJ3cEdOO0F5QmxwR0s7RUFDQyxhQUFBO0F6Qm9wR047QXlCL29HTTtFQUNDLGVBQUE7RUFDQSwwQkFBQTtBekJpcEdQO0F5QjlvR007RUFDQyxhQUFBO0F6QmdwR1A7QXlCNW9HSztFQUNDLGtDQUFBO0VBQ0EsYUFBQTtBekI4b0dOO0F5QjFvR0k7RUFDQyxxQ0FBQTtBekI0b0dMO0F5QjFvR0s7RUFDQyxrQ0FBQTtFQUNBLHdDQUFBO0VBQ0Esc0NBQUE7RUFDQSxnQkFBQTtBekI0b0dOO0F5QjFvR007RUFDQyxrQkFBQTtFQUNBLFNBQUE7RUFDQSxhQUFBO0VBQ0EsV0FBQTtFQUNBLHVCQUFBO0VBQ0EsMkJBQUE7RUFDQSwrQkFBQTtFQUNBLGlDQUFBO0VBQ0EsK0NBQUE7QXpCNG9HUDtBeUIxb0dPO0VBQ0MsZ0JBQUE7QXpCNG9HUjtBeUJ6b0dPO0VBQ0Msc0NBQUE7QXpCMm9HUjtBeUJ4b0dPO0VBQ0MsU0FBQTtFQUNBLGNBQUE7RUFDQSwrQkFBQTtBekIwb0dSO0F5QnZvR087RUFDQyxTQUFBO0VBQ0EsV0FBQTtFQUNBLGFBQUE7RUFDQSxrQkFBQTtFQUNBLDhCQUFBO0VBQ0EsaUNBQUE7QXpCeW9HUjtBeUJ2b0dRO0VBQ0MsV0FBQTtFQUNBLGtCQUFBO0VBQ0EsUUFBQTtFQUNBLGVBQUE7QXpCeW9HVDtBeUJqb0dHO0VBQ0MsYUFBQTtBekJtb0dKO0F5QmhvR0c7RUFDQyxhQUFBO0F6QmtvR0o7QXlCMW5HTTtFQUNDLGtCQUFBO0F6QjRuR1A7QXlCMW5HTztFQUNDLGNBQUE7RUFDQSxlQUFBO0VBQ0Esa0JBQUE7RUFDQSxpQ0FBQTtFQUNBLHdDQUFBO0VBQ0Esa0JBQUE7RUFDQSxjQUFBO0VBQ0EsY0FBQTtFQUNBLG9CQUFBO0VBQ0EsbUJBQUE7RUFDQSx1QkFBQTtFQUNBLGtDQUFBO0F6QjRuR1I7QXlCdm5HSztFQUNDLGFBQUE7RUFDQSxtQkFBQTtFQUNBLGtCQUFBO0F6QnluR047QXlCdG5HSztFQUNDLG9CQUFBO0F6QnduR047QXlCcm5HSztFQUNDLG9CQUFBO0VBQ0Esc0JBQUE7QXpCdW5HTjtBeUJybkdNO0VBQ0MsK0JBQUE7QXpCdW5HUDtBeUJybkdPO0VBQ0MsWUFBQTtFQUNBLGlDQUFBO0F6QnVuR1I7QXlCcG5HTztFQUNDLHFCQUFBO0F6QnNuR1I7QXlCN21HSTtFQUNDLGNBQUE7RUFDQSxrQ0FBQTtFQUNBLFNBQUE7RUFDQSxnQkFBQTtFQUNBLGdCQUFBO0VBQ0EsVUFBQTtBekIrbUdMO0F5QjdtR0s7RUFDQyxVQUFBO0VBQ0Esd0NBQUE7RUFDQSxzQ0FBQTtFQUNBLGdCQUFBO0F6QittR047QXlCN21HTTtFQUVDLGFBQUE7QXpCOG1HUDtBeUIzbUdNO0VBQ0MsYUFBQTtFQUNBLGtCQUFBO0VBQ0EsdUJBQUE7T0FBQSxrQkFBQTtFQUNBLHVDQUFBO0VBQ0EsK0JBQUE7RUFDQSwrQkFBQTtFQUNBLGlDQUFBO0VBQ0EsK0NBQUE7QXpCNm1HUDtBeUIzbUdPO0VBRUMsd0JBQUE7QXpCNG1HUjtBeUJ6bUdPO0VBQ0MsZ0JBQUE7QXpCMm1HUjtBeUJ4bUdPO0VBQ0Msc0NBQUE7QXpCMG1HUjtBeUJ2bUdPO0VBQ0MsU0FBQTtBekJ5bUdSO0F5QnRtR087RUFDQyxpQ0FBQTtFQUNBLFNBQUE7QXpCd21HUjtBeUJ0bUdRO0VBQ0MsV0FBQTtFQUNBLGtCQUFBO0VBQ0EsUUFBQTtFQUNBLGVBQUE7QXpCd21HVDtBeUJwbUdPO0VBQ0MsZ0JBQUE7RUFDQSxnQkFBQTtFQUNBLFNBQUE7RUFDQSxVQUFBO0VBQ0Esb0JBQUE7RUFDQSwyQkFBQTtFQUNBLCtCQUFBO0F6QnNtR1I7QXlCcG1HUTtFQUNDLGFBQUE7QXpCc21HVDtBeUJobUdLO0VBQ0Msa0NBQUE7RUFDQSxVQUFBO0F6QmttR047QXlCOWxHSTtFQUNDLGtDQUFBO0F6QmdtR0w7QXlCOWxHSztFQUNDLHdCQUFBO0VBQ0EsdUJBQUE7QXpCZ21HTjtBeUI5bEdNO0VBQ0MsU0FBQTtFQUNBLGNBQUE7RUFDQSwwQkFBQTtBekJnbUdQO0F5QjVsR0s7RUFDQyxrQkFBQTtBekI4bEdOO0F5QjFsR0k7RUFDQyxrQ0FBQTtFQUNBLGFBQUE7RUFDQSw4QkFBQTtFQUNBLGVBQUE7RUFDQSw4QkFBQTtFQUNBLG1CQUFBO0F6QjRsR0w7QXlCdGxHTztFQUNDLDhDQUFBO0F6QndsR1I7QXlCcGxHTTtFQUNDLFNBQUE7RUFDQSx5QkFBQTtBekJzbEdQO0F5QmpsR0k7RUFDQyxXQUFBO0F6Qm1sR0w7QU05OEdDO0VtQnFZRTtJQUNDLCtCQUFBO0lBQ0Esa0NBQUE7RXpCNGtHRjtBQUNGO0FNcDdHQztFbUIwWE87SUFDQywwQkFBQTtFekI2akdQO0FBQ0Y7QU16N0dDO0VtQjZZSTtJQUNDLG1CQUFBO0V6QitpR0o7RXlCNWlHRztJQUVDLGNBQUE7RXpCNmlHSjtFeUJ6aUdFO0lBQ0MsMEJBQUE7RXpCMmlHSDtBQUNGO0FNcCtHQztFbUJrY0U7SUFDQyxxQ0FBQTtFekJxaUdGO0V5Qm5pR0U7SUFDQyxnQkFBQTtFekJxaUdIO0V5QmxpR0U7SUFDQyxnQkFBQTtFekJvaUdIO0V5QmppR0U7SUFDQyxVQUFBO0lBQ0EsZ0JBQUE7SUFDQSxnQkFBQTtJQUNBLGlCQUFBO0lBQ0Esa0JBQUE7SUFDQSw4QkFBQTtJQUNBLDRCQUFBO0V6Qm1pR0g7RXlCL2hHSTtJQUNDLFlBQUE7SUFDQSwrQkFBQTtFekJpaUdMO0FBQ0Y7QU01L0dDO0VtQndlRztJQUNDLGdCQUFBO0V6QnVoR0g7RXlCbmhHSTtJQUNDLFdBQUE7SUFDQSxnQ0FBQTtFekJxaEdMO0FBQ0Y7O0FJN2dIQTs7O0VBQUE7QUdBQTs7O0VBQUE7QW1CQUE7OztFQUFBO0FBWUk7RUFDRSwwQkFBQTtBMUJnaEhOO0EwQjdnSEk7RUFDRSxhQUFBO0VBQ0EsOEJBQUE7QTFCK2dITjtBMEI3Z0hNO0VBQ0UsMEJBQUE7QTFCK2dIUjtBMEIxZ0hFO0VBQ0UsYUFBQTtFQUNBLDBDQUFBO09BQUEscUNBQUE7RUFDQSx1Q0FBQTtBMUI0Z0hKO0EwQjFnSEk7RUFFRSxhQUFBO0ExQjJnSE47QTBCeGdISTtFQUNFLGFBQUE7QTFCMGdITjtBMEJ2Z0hJO0VBQ0UsV0FBQTtBMUJ5Z0hOO0EwQnZnSE07RUFDRSxTQUFBO0ExQnlnSFI7QTBCdGdITTtFQUNFLFNBQUE7RUFDQSwrQ0FBQTtFQUNBLGlEQUFBO0VBQ0Esa0JBQUE7QTFCd2dIUjtBMEJ0Z0hRO0VBQ0UsNENBQUE7QTFCd2dIVjtBMEJyZ0hRO0VBQ0UsNENBQUE7QTFCdWdIVjtBMEJwZ0hRO0VBRUU7SUFDRSw0Q0FBQTtFMUJxZ0hWO0FBQ0Y7QTBCbGdIUTtFQUNFLFdBQUE7RUFDQSxrQkFBQTtFQUNBLGFBQUE7RUFDQSxjQUFBO0VBQ0EsUUFBQTtFQUNBLGVBQUE7RUFDQSwyQkFBQTtFQUNBLHNhQUFBO0ExQm9nSFY7QTBCLy9HVTtFQUNFLGFBQUE7QTFCaWdIWjtBMEI1L0dNO0VBQ0UscUJBQUE7RUFDQSwyQkFBQTtFQUNBLGlCQUFBO0VBQ0EsY0FBQTtBMUI4L0dSO0EwQjEvR0k7RUFDRSxXQUFBO0VBQ0EsYUFBQTtFQUNBLHNCQUFBO0VBQ0EsOEJBQUE7QTFCNC9HTjtBMEIxL0dNO0VBQ0UsZ0JBQUE7QTFCNC9HUjtBMEJ6L0dNO0VBQ0UsaUNBQUE7RUFDQSxxQ0FBQTtFQUNBLGdCQUFBO0ExQjIvR1I7QTBCeC9HTTtFQUNFLCtCQUFBO0ExQjAvR1I7QTBCdC9HSTtFQUNFLGFBQUE7QTFCdy9HTjtBMEJyL0dJO0VBQ0UsYUFBQTtBMUJ1L0dOO0EwQmovR0k7RUFDRSwwQkFBQTtFQUNBLDhCQUFBO0ExQm0vR047QTBCai9HTTtFQUNFLHFDQUFBO0ExQm0vR1I7QTBCOStHRTtFQUNFLGFBQUE7RUFDQSxzQkFBQTtFQUNBLHVCQUFBO0ExQmcvR0o7QTBCOStHSTtFQUdFLDJCQUFBO0VBQ0EsaUNBQUE7RUFDQSxxQkFBQTtFQUNBLHNCQUFBO0VBQ0EsbUJBQUE7RUFDQSxXQUFBO0ExQjgrR047QTBCMStHRTtFQUNFLGFBQUE7RUFDQSw4QkFBQTtBMUI0K0dKO0EwQjErR0k7RUFDRSxtQkFBQTtBMUI0K0dOO0EwQnQrR0k7RUFDRSxxQ0FBQTtBMUJ3K0dOO0FNdG9IQztFb0JvS0c7SUFDRSwwQkFBQTtFMUJxK0dKO0UwQmwrR0U7SUFDRSxxQ0FBQTtFMUJvK0dKO0UwQi85R0k7SUFDRSxxQ0FBQTtFMUJpK0dOO0UwQi85R007SUFDRSxtQkFBQTtFMUJpK0dSO0UwQjk5R007SUFDRSxtQkFBQTtFMUJnK0dSO0UwQjc5R007SUFDRSxtQkFBQTtFMUIrOUdSO0UwQjE5R0U7SUFDRSxxQ0FBQTtFMUI0OUdKO0FBQ0Y7QU03bkhDO0VvQndLSztJQUNFLFVBQUE7SUFDQSxlQUFBO0lBQ0EsT0FBQTtJQUNBLFVBQUE7SUFDQSwyQ0FBQTtJQUNBLGVBQUE7SUFDQSxnREFBQTtJQUNBLG1EQUFBO0lBQ0EsMkJBQUE7SUFDQSxtQkFBQTtJQUNBLG9DQUFBO0lBQ0EsaUNBQUE7SUFDQSxxQ0FBQTtFMUJ3OUdOO0UwQnQ5R007SUFDRSxzQkFBQTtFMUJ3OUdSO0UwQnQ5R1E7SUFDRSxhQUFBO0UxQnc5R1Y7RTBCcjlHUTtJQUNFLGNBQUE7RTFCdTlHVjtFMEJuOUdNO0lBQ0UsY0FBQTtFMUJxOUdSO0UwQmw5R007SUFDRSxhQUFBO0UxQm85R1I7RTBCaDlHSTtJQUNFLGVBQUE7SUFDQSxXQUFBO0lBQ0EsV0FBQTtJQUNBLGlGQUFBO0lBQ0EsaUNBQUE7SUFDQSxVQUFBO0lBQ0EscUNBQUE7SUFDQSxtREFBQTtJQUNBLGdEQUFBO0lBQ0Esd0NBQUE7SUFDQSxnR0FBQTtJQUNBLGdCQUFBO0lBQ0Esa0JBQUE7RTFCazlHTjtFMEJoOUdNO0lBQ0UsT0FBQTtFMUJrOUdSO0UwQjc4R1E7SUFDRSxhQUFBO0UxQis4R1Y7RTBCNThHUTtJQUNFLGdCQUFBO0UxQjg4R1Y7QUFDRjs7QUk3dEhBOzs7RUFBQTtBdUJBQTs7O0VBQUE7QUFRQztFQUNDLDBDQUFBO09BQUEscUNBQUE7RUFDQSx1Q0FBQTtBM0JndUhGO0EyQjN0SEU7RUFFQyxVQUFBO0VBQ0EsU0FBQTtFQUNBLFNBQUE7QTNCNHRISDtBMkIxdEhHOzs7RUFFQyxxQ0FBQTtBM0I2dEhKO0EyQjN0SEk7OztFQUNDLGFBQUE7RUFDQSw4QkFBQTtFQUNBLDhCQUFBO0EzQit0SEw7QU1udkhDO0VxQmlCRzs7O0lBTUUsMkJBQUE7SUFDQSxtQkFBQTtJQUNBLHlCQUFBO0UzQmt1SEo7QUFDRjtBMkIvdEhJOzs7RUFDQyxnQkFBQTtBM0JtdUhMO0EyQjd0SEk7RUxvSEgscUJBRGlFO0VBRWpFLGtCQUFBO0VBQ0EscUJBQUE7QXRCNG1IRDtBc0IxbUhDO0VBQ0MsV0FBQTtFQUNBLGtCQUFBO0VBQ0EsV0FSaUQ7RUFTakQsT0FBQTtFQUNBLFFBQUE7RUFDQSxVQUFBO0VBQ0EsV0FaaUM7RUFhakMsd0JBYm9HO0VBY3BHLGdFQUFBO0F0QjRtSEY7QXNCem1IQztFQUNDLGdDQUFBO0F0QjJtSEY7QXNCem1IRTtFQUNDLFdBckJxRjtFQXNCckYsVUFBQTtFQUNBLDJEQUFBO0F0QjJtSEg7O0FJanlIQTs7O0VBQUE7QXdCQUE7OztFQUFBO0FBWUc7RUFDQyxxQ0FBQTtBNUJneUhKO0E0Qjd4SEc7RUFDQyxrQkFBQTtBNUIreEhKO0E0QjV4SEc7RUFDQyxxQ0FBQTtBNUI4eEhKO0E0Qnp4SEk7RUFDQywrQkFBQTtBNUIyeEhMO0E0Qnh4SEk7RUFDQywrQkFBQTtBNUIweEhMO0E0QnZ4SEk7RUFDQyxTQUFBO0E1Qnl4SEw7QTRCcnhIRzs7RUFFQyxhQUFBO0VBQ0Esc0JBQUE7QTVCdXhISjtBNEJyeEhJOzs7RUFFQyxhQUFBO0E1Qnd4SEw7QTRCcnhISTs7RUFDQyxXQUFBO0VBQ0EsU0FBQTtFQUNBLG9CQUFBO0VBQ0EscUJBQUE7RUFDQSxnQ0FBQTtFQUNBLG9CQUFBO0VBQ0EsWUFBQTtFQUNBLFNBQUE7QTVCd3hITDtBNEJ0eEhLOztFQUNDLGNBQUE7QTVCeXhITjtBTTd5SEM7RXNCdUNNO0lBQ0MsaUJBQUE7RTVCeXdITjtBQUNGO0FNbDFIQztFc0I2Rk07O0lBRUMsVUFBQTtFNUJ3dkhOO0FBQ0YiLCJmaWxlIjoid29vY29tbWVyY2UuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiQGNoYXJzZXQgXCJVVEYtOFwiO1xuLyogQ29tcG9uZW50IHN0eWxlcy4gKi9cbi53b29jb21tZXJjZSAud29vY29tbWVyY2UtcGFnaW5hdGlvbiB7XG4gIG1hcmdpbi10b3A6IHZhcigtLWl0LXNwYWNpbmctc2VjdGlvbi1oYWxmKTtcbn1cbi53b29jb21tZXJjZSAud29vY29tbWVyY2UtcGFnaW5hdGlvbiAucGFnZS1udW1iZXJzIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IDAuNXJlbTtcbn1cbi53b29jb21tZXJjZSAud29vY29tbWVyY2UtcGFnaW5hdGlvbiAucGFnZS1udW1iZXJzIGxpIHtcbiAgbWFyZ2luOiAwO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gIGZvbnQtc2l6ZTogdmFyKC0taXQtc2l6ZS1zbWFsbCk7XG59XG4ud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLXBhZ2luYXRpb24gLnBhZ2UtbnVtYmVycyBsaTpoYXMoLnByZXYpIHtcbiAgbWFyZ2luLXJpZ2h0OiAwLjVyZW07XG59XG4ud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLXBhZ2luYXRpb24gLnBhZ2UtbnVtYmVycyBsaTpoYXMoLm5leHQpIHtcbiAgbWFyZ2luLWxlZnQ6IDAuNXJlbTtcbn1cbi53b29jb21tZXJjZSAud29vY29tbWVyY2UtcGFnaW5hdGlvbiAucGFnZS1udW1iZXJzIGxpID4gKiB7XG4gIHdpZHRoOiAycmVtO1xuICBoZWlnaHQ6IDJyZW07XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWl0LWJvcmRlci1yYWRpdXMtc21hbGwpO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1pdC1jb2xvci1ib3JkZXIpO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG4ud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLXBhZ2luYXRpb24gLnBhZ2UtbnVtYmVycyBsaSBzcGFuLmN1cnJlbnQge1xuICBjb2xvcjogdmFyKC0taXQtY29sb3Itd2hpdGUpO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1pdC1jb2xvci1icmFuZCk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0taXQtY29sb3ItYnJhbmQpO1xufVxuLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1wYWdpbmF0aW9uIC5wYWdlLW51bWJlcnMgbGkgYSB7XG4gIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLWl0LXRyYW5zaXRpb24pLCBiYWNrZ3JvdW5kIHZhcigtLWl0LXRyYW5zaXRpb24pLCBib3JkZXItY29sb3IgdmFyKC0taXQtdHJhbnNpdGlvbik7XG59XG4ud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLXBhZ2luYXRpb24gLnBhZ2UtbnVtYmVycyBsaSBhOmhvdmVyIHtcbiAgY29sb3I6IHZhcigtLWl0LWNvbG9yLXdoaXRlKTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1pdC1jb2xvci1icmFuZCk7XG4gIGJhY2tncm91bmQ6IHZhcigtLWl0LWNvbG9yLWJyYW5kKTtcbn1cblxuLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1wYWdpbmF0aW9uIC5wYWdlLW51bWJlcnMge1xuICBib3JkZXI6IDA7XG59XG4ud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLXBhZ2luYXRpb24gLnBhZ2UtbnVtYmVycyBsaSB7XG4gIGJvcmRlci1yaWdodDogMDtcbn1cblxuLyoqXG4gKiBEbyBub3QgQHVzZSBmaWxlcyB3aXRoIGFjdHVhbCBzY3NzIGNvZGUgaW4gdGhpcyBmaWxlLCBhcyBpdCB3aWxsIGNvbXBpbGUgY3NzIGNvZGUgdHdpY2UuXG4gKiBBcyB0aGlzIGZpbGUgZ29pbmcgdG8gYmUgYW4gc3RhbmRhbG9uZSBjc3MgZmlsZS5cbiAqL1xuLypcbiAqIENPTlZFUlQgVE8gQ0xBTVBcbiAqXG4gKiBAbGluayBodHRwczovL3dlYnNlbWFudGljcy51ay90b29scy9yZXNwb25zaXZlLWZvbnQtY2FsY3VsYXRvci9cbiAqXG4gKiBDYWxsIHdpdGggMiwgb3IgNCBwYXJhbWV0ZXJzLiBPbmx5IGZpcnN0IDIgcGFyYW1ldGVycyBhcmUgcmVxdWlyZWQuIFZpZXdwb3J0IHdpZHRocyBhbHNvIGNhbiBiZSB3aXRoICdweCcgdW5pdHMgKGZvciBzdXBwb3J0aW5nIGJyZWFrcG9pbnQgdmFsdWVzKS5cbiAqXG4gKiBFeGFtcGxlczpcbiAqXG4gKiAxKSBmb250LXNpemU6IGNsYW1wLXJlbSgzMiwgNDgpO1xuICogMikgZm9udC1zaXplOiBjbGFtcC1yZW0oMzIsIDQ4LCA2NDAsIDE0NDApO1xuICovXG4vKipcbiAqIE1peGlucyBmb3IgTWVkaWEgUXVlcmllc1xuICogRXhhbXBsZSBVc2FnZTogQGluY2x1ZGUgbWluKCRsZykgfHwgQGluY2x1ZGUgbWluKDE0NDApXG4gKi9cbmRpdi5xdWFudGl0eS1pbnB1dCB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogYXV0byAxZnIgYXV0bztcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0taXQtY29sb3ItYm9yZGVyKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0taXQtYm9yZGVyLXJhZGl1cy1zbWFsbCk7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5kaXYucXVhbnRpdHktaW5wdXQgLnF0eS1idG4ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgd2lkdGg6IDEuNXJlbTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBib3JkZXI6IDA7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1pdC1jb2xvci1iYWNrZ3JvdW5kKTtcbiAgY29sb3I6IHZhcigtLWl0LWNvbG9yLWJyYW5kKTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB0cmFuc2l0aW9uOiBhbGwgdmFyKC0taXQtdHJhbnNpdGlvbik7XG59XG5kaXYucXVhbnRpdHktaW5wdXQgLnF0eS1idG46aG92ZXIsIGRpdi5xdWFudGl0eS1pbnB1dCAucXR5LWJ0bjpmb2N1cy12aXNpYmxlIHtcbiAgYmFja2dyb3VuZDogdmFyKC0taXQtY29sb3ItYnJhbmQpO1xuICBjb2xvcjogdmFyKC0taXQtY29sb3Itd2hpdGUpO1xufVxuZGl2LnF1YW50aXR5LWlucHV0IC5xdHktYnRuOjpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDAuNTYyNXJlbTtcbiAgaGVpZ2h0OiAwLjU2MjVyZW07XG4gIGJhY2tncm91bmQtY29sb3I6IGN1cnJlbnRjb2xvcjtcbn1cbmRpdi5xdWFudGl0eS1pbnB1dCAucXR5LWJ0bi5xdHktbWludXM6OmJlZm9yZSB7XG4gIG1hc2s6IHVybChcIi4uL2ltZy93b28tY2hldnJvbi5zdmdcIikgbm8tcmVwZWF0IGNlbnRlci9jb250YWluO1xufVxuZGl2LnF1YW50aXR5LWlucHV0IC5xdHktYnRuLnF0eS1wbHVzOjpiZWZvcmUge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtMTgwZGVnKTtcbiAgbWFzazogdXJsKFwiLi4vaW1nL3dvby1jaGV2cm9uLnN2Z1wiKSBuby1yZXBlYXQgY2VudGVyL2NvbnRhaW47XG59XG5kaXYucXVhbnRpdHktaW5wdXQgaW5wdXRbdHlwZT1udW1iZXJdIHtcbiAgd2lkdGg6IDIuMTg3NXJlbSAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IDIuMTg3NXJlbTtcbiAgYm9yZGVyOiBub25lO1xuICBwYWRkaW5nOiAwO1xuICBmb250LXNpemU6IHZhcigtLWl0LXNpemUtc21hbGwpO1xuICBhcHBlYXJhbmNlOiBub25lO1xuICAtbW96LWFwcGVhcmFuY2U6IHRleHRmaWVsZDtcbn1cbmRpdi5xdWFudGl0eS1pbnB1dCBpbnB1dFt0eXBlPW51bWJlcl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24sIGRpdi5xdWFudGl0eS1pbnB1dCBpbnB1dFt0eXBlPW51bWJlcl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24ge1xuICBtYXJnaW46IDA7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLyoqXG4gKiBEbyBub3QgQHVzZSBmaWxlcyB3aXRoIGFjdHVhbCBzY3NzIGNvZGUgaW4gdGhpcyBmaWxlLCBhcyBpdCB3aWxsIGNvbXBpbGUgY3NzIGNvZGUgdHdpY2UuXG4gKiBBcyB0aGlzIGZpbGUgZ29pbmcgdG8gYmUgYW4gc3RhbmRhbG9uZSBjc3MgZmlsZS5cbiAqL1xuLyoqXG4gKiBEbyBub3QgQHVzZSBmaWxlcyB3aXRoIGFjdHVhbCBzY3NzIGNvZGUgaW4gdGhpcyBmaWxlLCBhcyBpdCB3aWxsIGNvbXBpbGUgY3NzIGNvZGUgdHdpY2UuXG4gKiBBcyB0aGlzIGZpbGUgZ29pbmcgdG8gYmUgYW4gc3RhbmRhbG9uZSBjc3MgZmlsZS5cbiAqL1xuLyoqXG4gKiBEbyBub3QgQHVzZSBmaWxlcyB3aXRoIGFjdHVhbCBzY3NzIGNvZGUgaW4gdGhpcyBmaWxlLCBhcyBpdCB3aWxsIGNvbXBpbGUgY3NzIGNvZGUgdHdpY2UuXG4gKiBBcyB0aGlzIGZpbGUgZ29pbmcgdG8gYmUgYW4gc3RhbmRhbG9uZSBjc3MgZmlsZS5cbiAqL1xuLmJ1dHRvbixcbi53Yy1ibG9jay1jb21wb25lbnRzLWJ1dHRvbiwgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlLUFkZHJlc3MtdGl0bGUgLmVkaXQsIC53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCAjY29udGVudCBkaXYucHJvZHVjdC5wcm9kdWN0LXR5cGUtdmFyaWFibGUgZGl2LnN1bW1hcnkgLmNhcnQgLnZhcmlhdGlvbnMgLnJlc2V0X3ZhcmlhdGlvbnMsIC53b29jb21tZXJjZS1jYXJ0IC53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNhcnQtZm9ybSB0cjpsYXN0LWNoaWxkIC5idXR0b24sIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtbWVzc2FnZSAuYnV0dG9uLFxuLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1tZXNzYWdlIFtyb2xlPWJ1dHRvbl0sXG4ud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWluZm8gLmJ1dHRvbixcbi53b29jb21tZXJjZSAud29vY29tbWVyY2UtaW5mbyBbcm9sZT1idXR0b25dLCAud29vY29tbWVyY2UgdWwucHJvZHVjdHMgbGkucHJvZHVjdCAuYnV0dG9uLCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWVycm9yIC5idXR0b24sIC53b29jb21tZXJjZS1jYXJ0IC53b29jb21tZXJjZSAuY2FydC1jb2xsYXRlcmFscyAuY2FydF90b3RhbHMgLndjLXByb2NlZWQtdG8tY2hlY2tvdXQgLmNoZWNrb3V0LWJ1dHRvbiwgLndvb2NvbW1lcmNlLWNhcnQgLndvb2NvbW1lcmNlIC5yZXR1cm4tdG8tc2hvcCAuYnV0dG9uLCAud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgI2NvbnRlbnQgZGl2LnByb2R1Y3QgZGl2LnN1bW1hcnkgLmNhcnQgLmJ1dHRvbiwgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIGJ1dHRvblt0eXBlPXN1Ym1pdF0sXG4ud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgaW5wdXRbdHlwZT1zdWJtaXRdLFxuLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIC5idXR0b24sXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIGJ1dHRvblt0eXBlPXN1Ym1pdF0sXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIGlucHV0W3R5cGU9c3VibWl0XSxcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgLmJ1dHRvbiwgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIHNlY3Rpb24gLmJ1dHRvbixcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2Ugc2VjdGlvbiAuYnV0dG9uIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgYm9yZGVyLXdpZHRoOiAxcHg7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGZvbnQtc2l6ZTogdmFyKC0taXQtc2l6ZS1zbWFsbCk7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBwYWRkaW5nOiAxLjI1cmVtIDEuODc1cmVtO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS1pdC10cmFuc2l0aW9uKSwgYm9yZGVyIHZhcigtLWl0LXRyYW5zaXRpb24pLCBiYWNrZ3JvdW5kIHZhcigtLWl0LXRyYW5zaXRpb24pO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiAwLjVyZW07XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDE1cHgpO1xufVxuLmJ1dHRvbiA+IHN2Zyxcbi53Yy1ibG9jay1jb21wb25lbnRzLWJ1dHRvbiA+IHN2ZywgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlLUFkZHJlc3MtdGl0bGUgLmVkaXQgPiBzdmcsIC53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCAjY29udGVudCBkaXYucHJvZHVjdC5wcm9kdWN0LXR5cGUtdmFyaWFibGUgZGl2LnN1bW1hcnkgLmNhcnQgLnZhcmlhdGlvbnMgLnJlc2V0X3ZhcmlhdGlvbnMgPiBzdmcsIC53b29jb21tZXJjZS1jYXJ0IC53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNhcnQtZm9ybSB0cjpsYXN0LWNoaWxkIC5idXR0b24gPiBzdmcsIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtbWVzc2FnZSAuYnV0dG9uID4gc3ZnLFxuLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1tZXNzYWdlIFtyb2xlPWJ1dHRvbl0gPiBzdmcsXG4ud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWluZm8gLmJ1dHRvbiA+IHN2Zyxcbi53b29jb21tZXJjZSAud29vY29tbWVyY2UtaW5mbyBbcm9sZT1idXR0b25dID4gc3ZnLCAud29vY29tbWVyY2UgdWwucHJvZHVjdHMgbGkucHJvZHVjdCAuYnV0dG9uID4gc3ZnLCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWVycm9yIC5idXR0b24gPiBzdmcsIC53b29jb21tZXJjZS1jYXJ0IC53b29jb21tZXJjZSAuY2FydC1jb2xsYXRlcmFscyAuY2FydF90b3RhbHMgLndjLXByb2NlZWQtdG8tY2hlY2tvdXQgLmNoZWNrb3V0LWJ1dHRvbiA+IHN2ZywgLndvb2NvbW1lcmNlLWNhcnQgLndvb2NvbW1lcmNlIC5yZXR1cm4tdG8tc2hvcCAuYnV0dG9uID4gc3ZnLCAud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgI2NvbnRlbnQgZGl2LnByb2R1Y3QgZGl2LnN1bW1hcnkgLmNhcnQgLmJ1dHRvbiA+IHN2ZywgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIGJ1dHRvblt0eXBlPXN1Ym1pdF0gPiBzdmcsXG4ud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgaW5wdXRbdHlwZT1zdWJtaXRdID4gc3ZnLFxuLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIC5idXR0b24gPiBzdmcsXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIGJ1dHRvblt0eXBlPXN1Ym1pdF0gPiBzdmcsXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIGlucHV0W3R5cGU9c3VibWl0XSA+IHN2Zyxcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgLmJ1dHRvbiA+IHN2ZywgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIHNlY3Rpb24gLmJ1dHRvbiA+IHN2Zyxcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2Ugc2VjdGlvbiAuYnV0dG9uID4gc3ZnIHtcbiAgY29sb3I6IGN1cnJlbnRjb2xvcjtcbn1cbi5pcy1sb2FkaW5nLmJ1dHRvbjphZnRlcixcbi5pcy1sb2FkaW5nLndjLWJsb2NrLWNvbXBvbmVudHMtYnV0dG9uOmFmdGVyLCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UtQWRkcmVzcy10aXRsZSAuaXMtbG9hZGluZy5lZGl0OmFmdGVyLCAud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgI2NvbnRlbnQgZGl2LnByb2R1Y3QucHJvZHVjdC10eXBlLXZhcmlhYmxlIGRpdi5zdW1tYXJ5IC5jYXJ0IC52YXJpYXRpb25zIC5pcy1sb2FkaW5nLnJlc2V0X3ZhcmlhdGlvbnM6YWZ0ZXIsIC53b29jb21tZXJjZS1jYXJ0IC53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNhcnQtZm9ybSB0cjpsYXN0LWNoaWxkIC5pcy1sb2FkaW5nLmJ1dHRvbjphZnRlciwgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1tZXNzYWdlIC5pcy1sb2FkaW5nLmJ1dHRvbjphZnRlcixcbi53b29jb21tZXJjZSAud29vY29tbWVyY2UtbWVzc2FnZSAuaXMtbG9hZGluZ1tyb2xlPWJ1dHRvbl06YWZ0ZXIsXG4ud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWluZm8gLmlzLWxvYWRpbmcuYnV0dG9uOmFmdGVyLFxuLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1pbmZvIC5pcy1sb2FkaW5nW3JvbGU9YnV0dG9uXTphZnRlciwgLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzIGxpLnByb2R1Y3QgLmlzLWxvYWRpbmcuYnV0dG9uOmFmdGVyLCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWVycm9yIC5pcy1sb2FkaW5nLmJ1dHRvbjphZnRlciwgLndvb2NvbW1lcmNlLWNhcnQgLndvb2NvbW1lcmNlIC5jYXJ0LWNvbGxhdGVyYWxzIC5jYXJ0X3RvdGFscyAud2MtcHJvY2VlZC10by1jaGVja291dCAuaXMtbG9hZGluZy5jaGVja291dC1idXR0b246YWZ0ZXIsIC53b29jb21tZXJjZS1jYXJ0IC53b29jb21tZXJjZSAucmV0dXJuLXRvLXNob3AgLmlzLWxvYWRpbmcuYnV0dG9uOmFmdGVyLCAud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgI2NvbnRlbnQgZGl2LnByb2R1Y3QgZGl2LnN1bW1hcnkgLmNhcnQgLmlzLWxvYWRpbmcuYnV0dG9uOmFmdGVyLCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgYnV0dG9uLmlzLWxvYWRpbmdbdHlwZT1zdWJtaXRdOmFmdGVyLFxuLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIGlucHV0LmlzLWxvYWRpbmdbdHlwZT1zdWJtaXRdOmFmdGVyLFxuLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIC5pcy1sb2FkaW5nLmJ1dHRvbjphZnRlcixcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgYnV0dG9uLmlzLWxvYWRpbmdbdHlwZT1zdWJtaXRdOmFmdGVyLFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSBpbnB1dC5pcy1sb2FkaW5nW3R5cGU9c3VibWl0XTphZnRlcixcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgLmlzLWxvYWRpbmcuYnV0dG9uOmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgd2lkdGg6IDEuMjVyZW07XG4gIGFzcGVjdC1yYXRpbzogMTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGJhY2tncm91bmQ6IHJhZGlhbC1ncmFkaWVudChmYXJ0aGVzdC1zaWRlLCBjdXJyZW50Y29sb3IgOTQlLCB0cmFuc3BhcmVudCkgdG9wLzNweCAzcHggbm8tcmVwZWF0LCBjb25pYy1ncmFkaWVudCh0cmFuc3BhcmVudCAzMCUsIGN1cnJlbnRjb2xvcik7XG4gIC13ZWJraXQtbWFzazogcmFkaWFsLWdyYWRpZW50KGZhcnRoZXN0LXNpZGUsIHRyYW5zcGFyZW50IGNhbGMoMTAwJSAtIDNweCksICMwMDAgMCk7XG4gIGFuaW1hdGlvbjogc3BpbkxvYWRlciAxcyBpbmZpbml0ZSBsaW5lYXI7XG4gIHotaW5kZXg6IDE7XG59XG5Aa2V5ZnJhbWVzIHNwaW5Mb2FkZXIge1xuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxdHVybik7XG4gIH1cbn1cbi5idXR0b24sXG4ud2MtYmxvY2stY29tcG9uZW50cy1idXR0b24sIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZS1BZGRyZXNzLXRpdGxlIC5lZGl0LCAud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgI2NvbnRlbnQgZGl2LnByb2R1Y3QucHJvZHVjdC10eXBlLXZhcmlhYmxlIGRpdi5zdW1tYXJ5IC5jYXJ0IC52YXJpYXRpb25zIC5yZXNldF92YXJpYXRpb25zLCAud29vY29tbWVyY2UtY2FydCAud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jYXJ0LWZvcm0gdHI6bGFzdC1jaGlsZCAuYnV0dG9uLCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW1lc3NhZ2UgLmJ1dHRvbixcbi53b29jb21tZXJjZSAud29vY29tbWVyY2UtbWVzc2FnZSBbcm9sZT1idXR0b25dLFxuLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1pbmZvIC5idXR0b24sXG4ud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWluZm8gW3JvbGU9YnV0dG9uXSwgLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzIGxpLnByb2R1Y3QgLmJ1dHRvbiwgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1lcnJvciAuYnV0dG9uLCAud29vY29tbWVyY2UtY2FydCAud29vY29tbWVyY2UgLmNhcnQtY29sbGF0ZXJhbHMgLmNhcnRfdG90YWxzIC53Yy1wcm9jZWVkLXRvLWNoZWNrb3V0IC5jaGVja291dC1idXR0b24sIC53b29jb21tZXJjZS1jYXJ0IC53b29jb21tZXJjZSAucmV0dXJuLXRvLXNob3AgLmJ1dHRvbiwgLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0ICNjb250ZW50IGRpdi5wcm9kdWN0IGRpdi5zdW1tYXJ5IC5jYXJ0IC5idXR0b24sIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSBidXR0b25bdHlwZT1zdWJtaXRdLFxuLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIGlucHV0W3R5cGU9c3VibWl0XSxcbi53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSAuYnV0dG9uLFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSBidXR0b25bdHlwZT1zdWJtaXRdLFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSBpbnB1dFt0eXBlPXN1Ym1pdF0sXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIC5idXR0b24sIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSBzZWN0aW9uIC5idXR0b24sXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIHNlY3Rpb24gLmJ1dHRvbiB7XG4gIC8qIC0tIEJ1dHRvbiB0eXBlcyAtLSAqL1xufVxuLndvb2NvbW1lcmNlLWNhcnQgLndvb2NvbW1lcmNlIC5jYXJ0LWNvbGxhdGVyYWxzIC5jYXJ0X3RvdGFscyAud2MtcHJvY2VlZC10by1jaGVja291dCAuY2hlY2tvdXQtYnV0dG9uLCAud29vY29tbWVyY2UtY2FydCAud29vY29tbWVyY2UgLnJldHVybi10by1zaG9wIC5idXR0b24sIC53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCAjY29udGVudCBkaXYucHJvZHVjdCBkaXYuc3VtbWFyeSAuY2FydCAuYnV0dG9uLCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgYnV0dG9uW3R5cGU9c3VibWl0XSxcbi53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSBpbnB1dFt0eXBlPXN1Ym1pdF0sXG4ud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgLmJ1dHRvbixcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgYnV0dG9uW3R5cGU9c3VibWl0XSxcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgaW5wdXRbdHlwZT1zdWJtaXRdLFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSAuYnV0dG9uLCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2Ugc2VjdGlvbiAuYnV0dG9uLFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSBzZWN0aW9uIC5idXR0b24ge1xuICBtaW4td2lkdGg6IDIzMXB4O1xuICBib3JkZXItY29sb3I6IHZhcigtLWl0LWNvbG9yLXdoaXRlKTtcbiAgY29sb3I6IHZhcigtLWl0LWNvbG9yLXdoaXRlKTtcbn1cbkBtZWRpYSAoaG92ZXI6IGhvdmVyKSB7XG4gIC53b29jb21tZXJjZS1jYXJ0IC53b29jb21tZXJjZSAuY2FydC1jb2xsYXRlcmFscyAuY2FydF90b3RhbHMgLndjLXByb2NlZWQtdG8tY2hlY2tvdXQgLmNoZWNrb3V0LWJ1dHRvbjpob3ZlciwgLndvb2NvbW1lcmNlLWNhcnQgLndvb2NvbW1lcmNlIC5yZXR1cm4tdG8tc2hvcCAuYnV0dG9uOmhvdmVyLCAud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgI2NvbnRlbnQgZGl2LnByb2R1Y3QgZGl2LnN1bW1hcnkgLmNhcnQgLmJ1dHRvbjpob3ZlciwgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIGJ1dHRvblt0eXBlPXN1Ym1pdF06aG92ZXIsXG4gIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSBpbnB1dFt0eXBlPXN1Ym1pdF06aG92ZXIsXG4gIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSAuYnV0dG9uOmhvdmVyLFxuICAud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIGJ1dHRvblt0eXBlPXN1Ym1pdF06aG92ZXIsXG4gIC53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgaW5wdXRbdHlwZT1zdWJtaXRdOmhvdmVyLFxuICAud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIC5idXR0b246aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWl0LWNvbG9yLXRleHQpO1xuICAgIGNvbG9yOiB2YXIoLS1pdC1jb2xvci13aGl0ZSk7XG4gIH1cbn1cbkBtZWRpYSAoaG92ZXI6IG5vbmUpIHtcbiAgLndvb2NvbW1lcmNlLWNhcnQgLndvb2NvbW1lcmNlIC5jYXJ0LWNvbGxhdGVyYWxzIC5jYXJ0X3RvdGFscyAud2MtcHJvY2VlZC10by1jaGVja291dCAuY2hlY2tvdXQtYnV0dG9uOmFjdGl2ZSwgLndvb2NvbW1lcmNlLWNhcnQgLndvb2NvbW1lcmNlIC5yZXR1cm4tdG8tc2hvcCAuYnV0dG9uOmFjdGl2ZSwgLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0ICNjb250ZW50IGRpdi5wcm9kdWN0IGRpdi5zdW1tYXJ5IC5jYXJ0IC5idXR0b246YWN0aXZlLCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgYnV0dG9uW3R5cGU9c3VibWl0XTphY3RpdmUsXG4gIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSBpbnB1dFt0eXBlPXN1Ym1pdF06YWN0aXZlLFxuICAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgLmJ1dHRvbjphY3RpdmUsXG4gIC53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgYnV0dG9uW3R5cGU9c3VibWl0XTphY3RpdmUsXG4gIC53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgaW5wdXRbdHlwZT1zdWJtaXRdOmFjdGl2ZSxcbiAgLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSAuYnV0dG9uOmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taXQtY29sb3Itd2hpdGUpO1xuICAgIGNvbG9yOiB2YXIoLS1pdC1jb2xvci1icmFuZCk7XG4gIH1cbn1cbi53b29jb21tZXJjZS1jYXJ0IC53b29jb21tZXJjZSAuY2FydC1jb2xsYXRlcmFscyAuY2FydF90b3RhbHMgLndjLXByb2NlZWQtdG8tY2hlY2tvdXQgLmNoZWNrb3V0LWJ1dHRvbjpmb2N1cy12aXNpYmxlLCAud29vY29tbWVyY2UtY2FydCAud29vY29tbWVyY2UgLnJldHVybi10by1zaG9wIC5idXR0b246Zm9jdXMtdmlzaWJsZSwgLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0ICNjb250ZW50IGRpdi5wcm9kdWN0IGRpdi5zdW1tYXJ5IC5jYXJ0IC5idXR0b246Zm9jdXMtdmlzaWJsZSwgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIGJ1dHRvblt0eXBlPXN1Ym1pdF06Zm9jdXMtdmlzaWJsZSxcbi53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSBpbnB1dFt0eXBlPXN1Ym1pdF06Zm9jdXMtdmlzaWJsZSxcbi53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSAuYnV0dG9uOmZvY3VzLXZpc2libGUsXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIGJ1dHRvblt0eXBlPXN1Ym1pdF06Zm9jdXMtdmlzaWJsZSxcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgaW5wdXRbdHlwZT1zdWJtaXRdOmZvY3VzLXZpc2libGUsXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIC5idXR0b246Zm9jdXMtdmlzaWJsZSB7XG4gIG91dGxpbmUtY29sb3I6IHZhcigtLWl0LWNvbG9yLWJyYW5kKTtcbn1cbi53b29jb21tZXJjZS1jYXJ0IC53b29jb21tZXJjZSAuY2FydC1jb2xsYXRlcmFscyAuY2FydF90b3RhbHMgLndjLXByb2NlZWQtdG8tY2hlY2tvdXQgLmlzLWRpc2FibGVkLmNoZWNrb3V0LWJ1dHRvbiwgLndvb2NvbW1lcmNlLWNhcnQgLndvb2NvbW1lcmNlIC5yZXR1cm4tdG8tc2hvcCAuaXMtZGlzYWJsZWQuYnV0dG9uLCAud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgI2NvbnRlbnQgZGl2LnByb2R1Y3QgZGl2LnN1bW1hcnkgLmNhcnQgLmlzLWRpc2FibGVkLmJ1dHRvbiwgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIGJ1dHRvbi5pcy1kaXNhYmxlZFt0eXBlPXN1Ym1pdF0sXG4ud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgaW5wdXQuaXMtZGlzYWJsZWRbdHlwZT1zdWJtaXRdLFxuLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIC5pcy1kaXNhYmxlZC5idXR0b24sXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIGJ1dHRvbi5pcy1kaXNhYmxlZFt0eXBlPXN1Ym1pdF0sXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIGlucHV0LmlzLWRpc2FibGVkW3R5cGU9c3VibWl0XSxcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgLmlzLWRpc2FibGVkLmJ1dHRvbiwgLndvb2NvbW1lcmNlLWNhcnQgLndvb2NvbW1lcmNlIC5jYXJ0LWNvbGxhdGVyYWxzIC5jYXJ0X3RvdGFscyAud2MtcHJvY2VlZC10by1jaGVja291dCAuaXMtbG9hZGluZy5jaGVja291dC1idXR0b24sIC53b29jb21tZXJjZS1jYXJ0IC53b29jb21tZXJjZSAucmV0dXJuLXRvLXNob3AgLmlzLWxvYWRpbmcuYnV0dG9uLCAud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgI2NvbnRlbnQgZGl2LnByb2R1Y3QgZGl2LnN1bW1hcnkgLmNhcnQgLmlzLWxvYWRpbmcuYnV0dG9uLCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgYnV0dG9uLmlzLWxvYWRpbmdbdHlwZT1zdWJtaXRdLFxuLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIGlucHV0LmlzLWxvYWRpbmdbdHlwZT1zdWJtaXRdLFxuLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIC5pcy1sb2FkaW5nLmJ1dHRvbixcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgYnV0dG9uLmlzLWxvYWRpbmdbdHlwZT1zdWJtaXRdLFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSBpbnB1dC5pcy1sb2FkaW5nW3R5cGU9c3VibWl0XSxcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgLmlzLWxvYWRpbmcuYnV0dG9uLCAud29vY29tbWVyY2UtY2FydCAud29vY29tbWVyY2UgLmNhcnQtY29sbGF0ZXJhbHMgLmNhcnRfdG90YWxzIC53Yy1wcm9jZWVkLXRvLWNoZWNrb3V0IC5jaGVja291dC1idXR0b246ZGlzYWJsZWRbZGlzYWJsZWRdLCAud29vY29tbWVyY2UtY2FydCAud29vY29tbWVyY2UgLnJldHVybi10by1zaG9wIC5idXR0b246ZGlzYWJsZWRbZGlzYWJsZWRdLCAud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgI2NvbnRlbnQgZGl2LnByb2R1Y3QgZGl2LnN1bW1hcnkgLmNhcnQgLmJ1dHRvbjpkaXNhYmxlZFtkaXNhYmxlZF0sIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSBidXR0b25bdHlwZT1zdWJtaXRdOmRpc2FibGVkW2Rpc2FibGVkXSxcbi53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSBpbnB1dFt0eXBlPXN1Ym1pdF06ZGlzYWJsZWRbZGlzYWJsZWRdLFxuLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIC5idXR0b246ZGlzYWJsZWRbZGlzYWJsZWRdLFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSBidXR0b25bdHlwZT1zdWJtaXRdOmRpc2FibGVkW2Rpc2FibGVkXSxcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgaW5wdXRbdHlwZT1zdWJtaXRdOmRpc2FibGVkW2Rpc2FibGVkXSxcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgLmJ1dHRvbjpkaXNhYmxlZFtkaXNhYmxlZF0ge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgcGFkZGluZzogMC42ODc1cmVtIDIuNXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taXQtY29sb3ItYnJhbmQtZ3JleWVkKTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1pdC1jb2xvci1icmFuZC1ncmV5ZWQpO1xuICBjb2xvcjogdmFyKC0taXQtY29sb3Itd2hpdGUpO1xufVxuLndvb2NvbW1lcmNlLWNhcnQgLndvb2NvbW1lcmNlIC5jYXJ0LWNvbGxhdGVyYWxzIC5jYXJ0X3RvdGFscyAud2MtcHJvY2VlZC10by1jaGVja291dCAuaXMtZGlzYWJsZWQuY2hlY2tvdXQtYnV0dG9uOmZvY3VzLXZpc2libGUsIC53b29jb21tZXJjZS1jYXJ0IC53b29jb21tZXJjZSAucmV0dXJuLXRvLXNob3AgLmlzLWRpc2FibGVkLmJ1dHRvbjpmb2N1cy12aXNpYmxlLCAud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgI2NvbnRlbnQgZGl2LnByb2R1Y3QgZGl2LnN1bW1hcnkgLmNhcnQgLmlzLWRpc2FibGVkLmJ1dHRvbjpmb2N1cy12aXNpYmxlLCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgYnV0dG9uLmlzLWRpc2FibGVkW3R5cGU9c3VibWl0XTpmb2N1cy12aXNpYmxlLFxuLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIGlucHV0LmlzLWRpc2FibGVkW3R5cGU9c3VibWl0XTpmb2N1cy12aXNpYmxlLFxuLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIC5pcy1kaXNhYmxlZC5idXR0b246Zm9jdXMtdmlzaWJsZSxcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgYnV0dG9uLmlzLWRpc2FibGVkW3R5cGU9c3VibWl0XTpmb2N1cy12aXNpYmxlLFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSBpbnB1dC5pcy1kaXNhYmxlZFt0eXBlPXN1Ym1pdF06Zm9jdXMtdmlzaWJsZSxcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgLmlzLWRpc2FibGVkLmJ1dHRvbjpmb2N1cy12aXNpYmxlLCAud29vY29tbWVyY2UtY2FydCAud29vY29tbWVyY2UgLmNhcnQtY29sbGF0ZXJhbHMgLmNhcnRfdG90YWxzIC53Yy1wcm9jZWVkLXRvLWNoZWNrb3V0IC5pcy1sb2FkaW5nLmNoZWNrb3V0LWJ1dHRvbjpmb2N1cy12aXNpYmxlLCAud29vY29tbWVyY2UtY2FydCAud29vY29tbWVyY2UgLnJldHVybi10by1zaG9wIC5pcy1sb2FkaW5nLmJ1dHRvbjpmb2N1cy12aXNpYmxlLCAud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgI2NvbnRlbnQgZGl2LnByb2R1Y3QgZGl2LnN1bW1hcnkgLmNhcnQgLmlzLWxvYWRpbmcuYnV0dG9uOmZvY3VzLXZpc2libGUsIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSBidXR0b24uaXMtbG9hZGluZ1t0eXBlPXN1Ym1pdF06Zm9jdXMtdmlzaWJsZSxcbi53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSBpbnB1dC5pcy1sb2FkaW5nW3R5cGU9c3VibWl0XTpmb2N1cy12aXNpYmxlLFxuLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIC5pcy1sb2FkaW5nLmJ1dHRvbjpmb2N1cy12aXNpYmxlLFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSBidXR0b24uaXMtbG9hZGluZ1t0eXBlPXN1Ym1pdF06Zm9jdXMtdmlzaWJsZSxcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgaW5wdXQuaXMtbG9hZGluZ1t0eXBlPXN1Ym1pdF06Zm9jdXMtdmlzaWJsZSxcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgLmlzLWxvYWRpbmcuYnV0dG9uOmZvY3VzLXZpc2libGUsIC53b29jb21tZXJjZS1jYXJ0IC53b29jb21tZXJjZSAuY2FydC1jb2xsYXRlcmFscyAuY2FydF90b3RhbHMgLndjLXByb2NlZWQtdG8tY2hlY2tvdXQgLmNoZWNrb3V0LWJ1dHRvbjpkaXNhYmxlZFtkaXNhYmxlZF06Zm9jdXMtdmlzaWJsZSwgLndvb2NvbW1lcmNlLWNhcnQgLndvb2NvbW1lcmNlIC5yZXR1cm4tdG8tc2hvcCAuYnV0dG9uOmRpc2FibGVkW2Rpc2FibGVkXTpmb2N1cy12aXNpYmxlLCAud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgI2NvbnRlbnQgZGl2LnByb2R1Y3QgZGl2LnN1bW1hcnkgLmNhcnQgLmJ1dHRvbjpkaXNhYmxlZFtkaXNhYmxlZF06Zm9jdXMtdmlzaWJsZSwgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIGJ1dHRvblt0eXBlPXN1Ym1pdF06ZGlzYWJsZWRbZGlzYWJsZWRdOmZvY3VzLXZpc2libGUsXG4ud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgaW5wdXRbdHlwZT1zdWJtaXRdOmRpc2FibGVkW2Rpc2FibGVkXTpmb2N1cy12aXNpYmxlLFxuLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIC5idXR0b246ZGlzYWJsZWRbZGlzYWJsZWRdOmZvY3VzLXZpc2libGUsXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIGJ1dHRvblt0eXBlPXN1Ym1pdF06ZGlzYWJsZWRbZGlzYWJsZWRdOmZvY3VzLXZpc2libGUsXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIGlucHV0W3R5cGU9c3VibWl0XTpkaXNhYmxlZFtkaXNhYmxlZF06Zm9jdXMtdmlzaWJsZSxcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgLmJ1dHRvbjpkaXNhYmxlZFtkaXNhYmxlZF06Zm9jdXMtdmlzaWJsZSB7XG4gIG91dGxpbmUtY29sb3I6IHZhcigtLWl0LWNvbG9yLWJyYW5kLWdyZXllZCk7XG59XG4uaXQtaW50cm8tLWZ1bGx3aWR0aCAud29vY29tbWVyY2UtY2FydCAud29vY29tbWVyY2UgLmNhcnQtY29sbGF0ZXJhbHMgLmNhcnRfdG90YWxzIC53Yy1wcm9jZWVkLXRvLWNoZWNrb3V0IC5jaGVja291dC1idXR0b24sIC53b29jb21tZXJjZS1jYXJ0IC53b29jb21tZXJjZSAuY2FydC1jb2xsYXRlcmFscyAuY2FydF90b3RhbHMgLndjLXByb2NlZWQtdG8tY2hlY2tvdXQgLml0LWludHJvLS1mdWxsd2lkdGggLmNoZWNrb3V0LWJ1dHRvbiwgLml0LWludHJvLS1mdWxsd2lkdGggLndvb2NvbW1lcmNlLWNhcnQgLndvb2NvbW1lcmNlIC5yZXR1cm4tdG8tc2hvcCAuYnV0dG9uLCAud29vY29tbWVyY2UtY2FydCAud29vY29tbWVyY2UgLnJldHVybi10by1zaG9wIC5pdC1pbnRyby0tZnVsbHdpZHRoIC5idXR0b24sIC5pdC1pbnRyby0tZnVsbHdpZHRoIC53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCAjY29udGVudCBkaXYucHJvZHVjdCBkaXYuc3VtbWFyeSAuY2FydCAuYnV0dG9uLCAud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgI2NvbnRlbnQgZGl2LnByb2R1Y3QgZGl2LnN1bW1hcnkgLmNhcnQgLml0LWludHJvLS1mdWxsd2lkdGggLmJ1dHRvbiwgLml0LWludHJvLS1mdWxsd2lkdGggLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIGJ1dHRvblt0eXBlPXN1Ym1pdF0sIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSAuaXQtaW50cm8tLWZ1bGx3aWR0aCBidXR0b25bdHlwZT1zdWJtaXRdLFxuLml0LWludHJvLS1mdWxsd2lkdGggLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIGlucHV0W3R5cGU9c3VibWl0XSxcbi53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSAuaXQtaW50cm8tLWZ1bGx3aWR0aCBpbnB1dFt0eXBlPXN1Ym1pdF0sXG4uaXQtaW50cm8tLWZ1bGx3aWR0aCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgLmJ1dHRvbixcbi53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSAuaXQtaW50cm8tLWZ1bGx3aWR0aCAuYnV0dG9uLFxuLml0LWludHJvLS1mdWxsd2lkdGggLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSBidXR0b25bdHlwZT1zdWJtaXRdLFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSAuaXQtaW50cm8tLWZ1bGx3aWR0aCBidXR0b25bdHlwZT1zdWJtaXRdLFxuLml0LWludHJvLS1mdWxsd2lkdGggLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSBpbnB1dFt0eXBlPXN1Ym1pdF0sXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIC5pdC1pbnRyby0tZnVsbHdpZHRoIGlucHV0W3R5cGU9c3VibWl0XSxcbi5pdC1pbnRyby0tZnVsbHdpZHRoIC53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgLmJ1dHRvbixcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgLml0LWludHJvLS1mdWxsd2lkdGggLmJ1dHRvbiwgLmhhcy1iZy1kYXJrIC53b29jb21tZXJjZS1jYXJ0IC53b29jb21tZXJjZSAuY2FydC1jb2xsYXRlcmFscyAuY2FydF90b3RhbHMgLndjLXByb2NlZWQtdG8tY2hlY2tvdXQgLmNoZWNrb3V0LWJ1dHRvbiwgLndvb2NvbW1lcmNlLWNhcnQgLndvb2NvbW1lcmNlIC5jYXJ0LWNvbGxhdGVyYWxzIC5jYXJ0X3RvdGFscyAud2MtcHJvY2VlZC10by1jaGVja291dCAuaGFzLWJnLWRhcmsgLmNoZWNrb3V0LWJ1dHRvbiwgLmhhcy1iZy1kYXJrIC53b29jb21tZXJjZS1jYXJ0IC53b29jb21tZXJjZSAucmV0dXJuLXRvLXNob3AgLmJ1dHRvbiwgLndvb2NvbW1lcmNlLWNhcnQgLndvb2NvbW1lcmNlIC5yZXR1cm4tdG8tc2hvcCAuaGFzLWJnLWRhcmsgLmJ1dHRvbiwgLmhhcy1iZy1kYXJrIC53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCAjY29udGVudCBkaXYucHJvZHVjdCBkaXYuc3VtbWFyeSAuY2FydCAuYnV0dG9uLCAud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgI2NvbnRlbnQgZGl2LnByb2R1Y3QgZGl2LnN1bW1hcnkgLmNhcnQgLmhhcy1iZy1kYXJrIC5idXR0b24sIC5oYXMtYmctZGFyayAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgYnV0dG9uW3R5cGU9c3VibWl0XSwgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIC5oYXMtYmctZGFyayBidXR0b25bdHlwZT1zdWJtaXRdLFxuLmhhcy1iZy1kYXJrIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSBpbnB1dFt0eXBlPXN1Ym1pdF0sXG4ud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgLmhhcy1iZy1kYXJrIGlucHV0W3R5cGU9c3VibWl0XSxcbi5oYXMtYmctZGFyayAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgLmJ1dHRvbixcbi53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSAuaGFzLWJnLWRhcmsgLmJ1dHRvbixcbi5oYXMtYmctZGFyayAud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIGJ1dHRvblt0eXBlPXN1Ym1pdF0sXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIC5oYXMtYmctZGFyayBidXR0b25bdHlwZT1zdWJtaXRdLFxuLmhhcy1iZy1kYXJrIC53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgaW5wdXRbdHlwZT1zdWJtaXRdLFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSAuaGFzLWJnLWRhcmsgaW5wdXRbdHlwZT1zdWJtaXRdLFxuLmhhcy1iZy1kYXJrIC53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgLmJ1dHRvbixcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgLmhhcy1iZy1kYXJrIC5idXR0b24ge1xuICBib3JkZXItY29sb3I6IHZhcigtLWl0LWNvbG9yLXdoaXRlKTtcbiAgY29sb3I6IHZhcigtLWl0LWNvbG9yLXdoaXRlKTtcbn1cbkBtZWRpYSAoaG92ZXI6IGhvdmVyKSB7XG4gIC5pdC1pbnRyby0tZnVsbHdpZHRoIC53b29jb21tZXJjZS1jYXJ0IC53b29jb21tZXJjZSAuY2FydC1jb2xsYXRlcmFscyAuY2FydF90b3RhbHMgLndjLXByb2NlZWQtdG8tY2hlY2tvdXQgLmNoZWNrb3V0LWJ1dHRvbjpob3ZlciwgLndvb2NvbW1lcmNlLWNhcnQgLndvb2NvbW1lcmNlIC5jYXJ0LWNvbGxhdGVyYWxzIC5jYXJ0X3RvdGFscyAud2MtcHJvY2VlZC10by1jaGVja291dCAuaXQtaW50cm8tLWZ1bGx3aWR0aCAuY2hlY2tvdXQtYnV0dG9uOmhvdmVyLCAuaXQtaW50cm8tLWZ1bGx3aWR0aCAud29vY29tbWVyY2UtY2FydCAud29vY29tbWVyY2UgLnJldHVybi10by1zaG9wIC5idXR0b246aG92ZXIsIC53b29jb21tZXJjZS1jYXJ0IC53b29jb21tZXJjZSAucmV0dXJuLXRvLXNob3AgLml0LWludHJvLS1mdWxsd2lkdGggLmJ1dHRvbjpob3ZlciwgLml0LWludHJvLS1mdWxsd2lkdGggLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0ICNjb250ZW50IGRpdi5wcm9kdWN0IGRpdi5zdW1tYXJ5IC5jYXJ0IC5idXR0b246aG92ZXIsIC53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCAjY29udGVudCBkaXYucHJvZHVjdCBkaXYuc3VtbWFyeSAuY2FydCAuaXQtaW50cm8tLWZ1bGx3aWR0aCAuYnV0dG9uOmhvdmVyLCAuaXQtaW50cm8tLWZ1bGx3aWR0aCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgYnV0dG9uW3R5cGU9c3VibWl0XTpob3ZlciwgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIC5pdC1pbnRyby0tZnVsbHdpZHRoIGJ1dHRvblt0eXBlPXN1Ym1pdF06aG92ZXIsXG4gIC5pdC1pbnRyby0tZnVsbHdpZHRoIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSBpbnB1dFt0eXBlPXN1Ym1pdF06aG92ZXIsXG4gIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSAuaXQtaW50cm8tLWZ1bGx3aWR0aCBpbnB1dFt0eXBlPXN1Ym1pdF06aG92ZXIsXG4gIC5pdC1pbnRyby0tZnVsbHdpZHRoIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSAuYnV0dG9uOmhvdmVyLFxuICAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgLml0LWludHJvLS1mdWxsd2lkdGggLmJ1dHRvbjpob3ZlcixcbiAgLml0LWludHJvLS1mdWxsd2lkdGggLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSBidXR0b25bdHlwZT1zdWJtaXRdOmhvdmVyLFxuICAud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIC5pdC1pbnRyby0tZnVsbHdpZHRoIGJ1dHRvblt0eXBlPXN1Ym1pdF06aG92ZXIsXG4gIC5pdC1pbnRyby0tZnVsbHdpZHRoIC53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgaW5wdXRbdHlwZT1zdWJtaXRdOmhvdmVyLFxuICAud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIC5pdC1pbnRyby0tZnVsbHdpZHRoIGlucHV0W3R5cGU9c3VibWl0XTpob3ZlcixcbiAgLml0LWludHJvLS1mdWxsd2lkdGggLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSAuYnV0dG9uOmhvdmVyLFxuICAud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIC5pdC1pbnRyby0tZnVsbHdpZHRoIC5idXR0b246aG92ZXIsIC5oYXMtYmctZGFyayAud29vY29tbWVyY2UtY2FydCAud29vY29tbWVyY2UgLmNhcnQtY29sbGF0ZXJhbHMgLmNhcnRfdG90YWxzIC53Yy1wcm9jZWVkLXRvLWNoZWNrb3V0IC5jaGVja291dC1idXR0b246aG92ZXIsIC53b29jb21tZXJjZS1jYXJ0IC53b29jb21tZXJjZSAuY2FydC1jb2xsYXRlcmFscyAuY2FydF90b3RhbHMgLndjLXByb2NlZWQtdG8tY2hlY2tvdXQgLmhhcy1iZy1kYXJrIC5jaGVja291dC1idXR0b246aG92ZXIsIC5oYXMtYmctZGFyayAud29vY29tbWVyY2UtY2FydCAud29vY29tbWVyY2UgLnJldHVybi10by1zaG9wIC5idXR0b246aG92ZXIsIC53b29jb21tZXJjZS1jYXJ0IC53b29jb21tZXJjZSAucmV0dXJuLXRvLXNob3AgLmhhcy1iZy1kYXJrIC5idXR0b246aG92ZXIsIC5oYXMtYmctZGFyayAud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgI2NvbnRlbnQgZGl2LnByb2R1Y3QgZGl2LnN1bW1hcnkgLmNhcnQgLmJ1dHRvbjpob3ZlciwgLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0ICNjb250ZW50IGRpdi5wcm9kdWN0IGRpdi5zdW1tYXJ5IC5jYXJ0IC5oYXMtYmctZGFyayAuYnV0dG9uOmhvdmVyLCAuaGFzLWJnLWRhcmsgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIGJ1dHRvblt0eXBlPXN1Ym1pdF06aG92ZXIsIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSAuaGFzLWJnLWRhcmsgYnV0dG9uW3R5cGU9c3VibWl0XTpob3ZlcixcbiAgLmhhcy1iZy1kYXJrIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSBpbnB1dFt0eXBlPXN1Ym1pdF06aG92ZXIsXG4gIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSAuaGFzLWJnLWRhcmsgaW5wdXRbdHlwZT1zdWJtaXRdOmhvdmVyLFxuICAuaGFzLWJnLWRhcmsgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIC5idXR0b246aG92ZXIsXG4gIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSAuaGFzLWJnLWRhcmsgLmJ1dHRvbjpob3ZlcixcbiAgLmhhcy1iZy1kYXJrIC53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgYnV0dG9uW3R5cGU9c3VibWl0XTpob3ZlcixcbiAgLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSAuaGFzLWJnLWRhcmsgYnV0dG9uW3R5cGU9c3VibWl0XTpob3ZlcixcbiAgLmhhcy1iZy1kYXJrIC53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgaW5wdXRbdHlwZT1zdWJtaXRdOmhvdmVyLFxuICAud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIC5oYXMtYmctZGFyayBpbnB1dFt0eXBlPXN1Ym1pdF06aG92ZXIsXG4gIC5oYXMtYmctZGFyayAud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIC5idXR0b246aG92ZXIsXG4gIC53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgLmhhcy1iZy1kYXJrIC5idXR0b246aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWl0LWNvbG9yLWJyYW5kKTtcbiAgICBjb2xvcjogdmFyKC0taXQtY29sb3Itd2hpdGUpO1xuICB9XG59XG5AbWVkaWEgKGhvdmVyOiBub25lKSB7XG4gIC5pdC1pbnRyby0tZnVsbHdpZHRoIC53b29jb21tZXJjZS1jYXJ0IC53b29jb21tZXJjZSAuY2FydC1jb2xsYXRlcmFscyAuY2FydF90b3RhbHMgLndjLXByb2NlZWQtdG8tY2hlY2tvdXQgLmNoZWNrb3V0LWJ1dHRvbjphY3RpdmUsIC53b29jb21tZXJjZS1jYXJ0IC53b29jb21tZXJjZSAuY2FydC1jb2xsYXRlcmFscyAuY2FydF90b3RhbHMgLndjLXByb2NlZWQtdG8tY2hlY2tvdXQgLml0LWludHJvLS1mdWxsd2lkdGggLmNoZWNrb3V0LWJ1dHRvbjphY3RpdmUsIC5pdC1pbnRyby0tZnVsbHdpZHRoIC53b29jb21tZXJjZS1jYXJ0IC53b29jb21tZXJjZSAucmV0dXJuLXRvLXNob3AgLmJ1dHRvbjphY3RpdmUsIC53b29jb21tZXJjZS1jYXJ0IC53b29jb21tZXJjZSAucmV0dXJuLXRvLXNob3AgLml0LWludHJvLS1mdWxsd2lkdGggLmJ1dHRvbjphY3RpdmUsIC5pdC1pbnRyby0tZnVsbHdpZHRoIC53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCAjY29udGVudCBkaXYucHJvZHVjdCBkaXYuc3VtbWFyeSAuY2FydCAuYnV0dG9uOmFjdGl2ZSwgLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0ICNjb250ZW50IGRpdi5wcm9kdWN0IGRpdi5zdW1tYXJ5IC5jYXJ0IC5pdC1pbnRyby0tZnVsbHdpZHRoIC5idXR0b246YWN0aXZlLCAuaXQtaW50cm8tLWZ1bGx3aWR0aCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgYnV0dG9uW3R5cGU9c3VibWl0XTphY3RpdmUsIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSAuaXQtaW50cm8tLWZ1bGx3aWR0aCBidXR0b25bdHlwZT1zdWJtaXRdOmFjdGl2ZSxcbiAgLml0LWludHJvLS1mdWxsd2lkdGggLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIGlucHV0W3R5cGU9c3VibWl0XTphY3RpdmUsXG4gIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSAuaXQtaW50cm8tLWZ1bGx3aWR0aCBpbnB1dFt0eXBlPXN1Ym1pdF06YWN0aXZlLFxuICAuaXQtaW50cm8tLWZ1bGx3aWR0aCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgLmJ1dHRvbjphY3RpdmUsXG4gIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSAuaXQtaW50cm8tLWZ1bGx3aWR0aCAuYnV0dG9uOmFjdGl2ZSxcbiAgLml0LWludHJvLS1mdWxsd2lkdGggLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSBidXR0b25bdHlwZT1zdWJtaXRdOmFjdGl2ZSxcbiAgLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSAuaXQtaW50cm8tLWZ1bGx3aWR0aCBidXR0b25bdHlwZT1zdWJtaXRdOmFjdGl2ZSxcbiAgLml0LWludHJvLS1mdWxsd2lkdGggLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSBpbnB1dFt0eXBlPXN1Ym1pdF06YWN0aXZlLFxuICAud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIC5pdC1pbnRyby0tZnVsbHdpZHRoIGlucHV0W3R5cGU9c3VibWl0XTphY3RpdmUsXG4gIC5pdC1pbnRyby0tZnVsbHdpZHRoIC53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgLmJ1dHRvbjphY3RpdmUsXG4gIC53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgLml0LWludHJvLS1mdWxsd2lkdGggLmJ1dHRvbjphY3RpdmUsIC5oYXMtYmctZGFyayAud29vY29tbWVyY2UtY2FydCAud29vY29tbWVyY2UgLmNhcnQtY29sbGF0ZXJhbHMgLmNhcnRfdG90YWxzIC53Yy1wcm9jZWVkLXRvLWNoZWNrb3V0IC5jaGVja291dC1idXR0b246YWN0aXZlLCAud29vY29tbWVyY2UtY2FydCAud29vY29tbWVyY2UgLmNhcnQtY29sbGF0ZXJhbHMgLmNhcnRfdG90YWxzIC53Yy1wcm9jZWVkLXRvLWNoZWNrb3V0IC5oYXMtYmctZGFyayAuY2hlY2tvdXQtYnV0dG9uOmFjdGl2ZSwgLmhhcy1iZy1kYXJrIC53b29jb21tZXJjZS1jYXJ0IC53b29jb21tZXJjZSAucmV0dXJuLXRvLXNob3AgLmJ1dHRvbjphY3RpdmUsIC53b29jb21tZXJjZS1jYXJ0IC53b29jb21tZXJjZSAucmV0dXJuLXRvLXNob3AgLmhhcy1iZy1kYXJrIC5idXR0b246YWN0aXZlLCAuaGFzLWJnLWRhcmsgLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0ICNjb250ZW50IGRpdi5wcm9kdWN0IGRpdi5zdW1tYXJ5IC5jYXJ0IC5idXR0b246YWN0aXZlLCAud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgI2NvbnRlbnQgZGl2LnByb2R1Y3QgZGl2LnN1bW1hcnkgLmNhcnQgLmhhcy1iZy1kYXJrIC5idXR0b246YWN0aXZlLCAuaGFzLWJnLWRhcmsgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIGJ1dHRvblt0eXBlPXN1Ym1pdF06YWN0aXZlLCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgLmhhcy1iZy1kYXJrIGJ1dHRvblt0eXBlPXN1Ym1pdF06YWN0aXZlLFxuICAuaGFzLWJnLWRhcmsgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIGlucHV0W3R5cGU9c3VibWl0XTphY3RpdmUsXG4gIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSAuaGFzLWJnLWRhcmsgaW5wdXRbdHlwZT1zdWJtaXRdOmFjdGl2ZSxcbiAgLmhhcy1iZy1kYXJrIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSAuYnV0dG9uOmFjdGl2ZSxcbiAgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIC5oYXMtYmctZGFyayAuYnV0dG9uOmFjdGl2ZSxcbiAgLmhhcy1iZy1kYXJrIC53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgYnV0dG9uW3R5cGU9c3VibWl0XTphY3RpdmUsXG4gIC53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgLmhhcy1iZy1kYXJrIGJ1dHRvblt0eXBlPXN1Ym1pdF06YWN0aXZlLFxuICAuaGFzLWJnLWRhcmsgLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSBpbnB1dFt0eXBlPXN1Ym1pdF06YWN0aXZlLFxuICAud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIC5oYXMtYmctZGFyayBpbnB1dFt0eXBlPXN1Ym1pdF06YWN0aXZlLFxuICAuaGFzLWJnLWRhcmsgLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSAuYnV0dG9uOmFjdGl2ZSxcbiAgLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSAuaGFzLWJnLWRhcmsgLmJ1dHRvbjphY3RpdmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWl0LWNvbG9yLWJyYW5kKTtcbiAgICBjb2xvcjogdmFyKC0taXQtY29sb3Itd2hpdGUpO1xuICB9XG59XG4uaXQtaW50cm8tLWZ1bGx3aWR0aCAud29vY29tbWVyY2UtY2FydCAud29vY29tbWVyY2UgLmNhcnQtY29sbGF0ZXJhbHMgLmNhcnRfdG90YWxzIC53Yy1wcm9jZWVkLXRvLWNoZWNrb3V0IC5jaGVja291dC1idXR0b246Zm9jdXMtdmlzaWJsZSwgLndvb2NvbW1lcmNlLWNhcnQgLndvb2NvbW1lcmNlIC5jYXJ0LWNvbGxhdGVyYWxzIC5jYXJ0X3RvdGFscyAud2MtcHJvY2VlZC10by1jaGVja291dCAuaXQtaW50cm8tLWZ1bGx3aWR0aCAuY2hlY2tvdXQtYnV0dG9uOmZvY3VzLXZpc2libGUsIC5pdC1pbnRyby0tZnVsbHdpZHRoIC53b29jb21tZXJjZS1jYXJ0IC53b29jb21tZXJjZSAucmV0dXJuLXRvLXNob3AgLmJ1dHRvbjpmb2N1cy12aXNpYmxlLCAud29vY29tbWVyY2UtY2FydCAud29vY29tbWVyY2UgLnJldHVybi10by1zaG9wIC5pdC1pbnRyby0tZnVsbHdpZHRoIC5idXR0b246Zm9jdXMtdmlzaWJsZSwgLml0LWludHJvLS1mdWxsd2lkdGggLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0ICNjb250ZW50IGRpdi5wcm9kdWN0IGRpdi5zdW1tYXJ5IC5jYXJ0IC5idXR0b246Zm9jdXMtdmlzaWJsZSwgLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0ICNjb250ZW50IGRpdi5wcm9kdWN0IGRpdi5zdW1tYXJ5IC5jYXJ0IC5pdC1pbnRyby0tZnVsbHdpZHRoIC5idXR0b246Zm9jdXMtdmlzaWJsZSwgLml0LWludHJvLS1mdWxsd2lkdGggLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIGJ1dHRvblt0eXBlPXN1Ym1pdF06Zm9jdXMtdmlzaWJsZSwgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIC5pdC1pbnRyby0tZnVsbHdpZHRoIGJ1dHRvblt0eXBlPXN1Ym1pdF06Zm9jdXMtdmlzaWJsZSxcbi5pdC1pbnRyby0tZnVsbHdpZHRoIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSBpbnB1dFt0eXBlPXN1Ym1pdF06Zm9jdXMtdmlzaWJsZSxcbi53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSAuaXQtaW50cm8tLWZ1bGx3aWR0aCBpbnB1dFt0eXBlPXN1Ym1pdF06Zm9jdXMtdmlzaWJsZSxcbi5pdC1pbnRyby0tZnVsbHdpZHRoIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSAuYnV0dG9uOmZvY3VzLXZpc2libGUsXG4ud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgLml0LWludHJvLS1mdWxsd2lkdGggLmJ1dHRvbjpmb2N1cy12aXNpYmxlLFxuLml0LWludHJvLS1mdWxsd2lkdGggLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSBidXR0b25bdHlwZT1zdWJtaXRdOmZvY3VzLXZpc2libGUsXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIC5pdC1pbnRyby0tZnVsbHdpZHRoIGJ1dHRvblt0eXBlPXN1Ym1pdF06Zm9jdXMtdmlzaWJsZSxcbi5pdC1pbnRyby0tZnVsbHdpZHRoIC53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgaW5wdXRbdHlwZT1zdWJtaXRdOmZvY3VzLXZpc2libGUsXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIC5pdC1pbnRyby0tZnVsbHdpZHRoIGlucHV0W3R5cGU9c3VibWl0XTpmb2N1cy12aXNpYmxlLFxuLml0LWludHJvLS1mdWxsd2lkdGggLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSAuYnV0dG9uOmZvY3VzLXZpc2libGUsXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIC5pdC1pbnRyby0tZnVsbHdpZHRoIC5idXR0b246Zm9jdXMtdmlzaWJsZSwgLmhhcy1iZy1kYXJrIC53b29jb21tZXJjZS1jYXJ0IC53b29jb21tZXJjZSAuY2FydC1jb2xsYXRlcmFscyAuY2FydF90b3RhbHMgLndjLXByb2NlZWQtdG8tY2hlY2tvdXQgLmNoZWNrb3V0LWJ1dHRvbjpmb2N1cy12aXNpYmxlLCAud29vY29tbWVyY2UtY2FydCAud29vY29tbWVyY2UgLmNhcnQtY29sbGF0ZXJhbHMgLmNhcnRfdG90YWxzIC53Yy1wcm9jZWVkLXRvLWNoZWNrb3V0IC5oYXMtYmctZGFyayAuY2hlY2tvdXQtYnV0dG9uOmZvY3VzLXZpc2libGUsIC5oYXMtYmctZGFyayAud29vY29tbWVyY2UtY2FydCAud29vY29tbWVyY2UgLnJldHVybi10by1zaG9wIC5idXR0b246Zm9jdXMtdmlzaWJsZSwgLndvb2NvbW1lcmNlLWNhcnQgLndvb2NvbW1lcmNlIC5yZXR1cm4tdG8tc2hvcCAuaGFzLWJnLWRhcmsgLmJ1dHRvbjpmb2N1cy12aXNpYmxlLCAuaGFzLWJnLWRhcmsgLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0ICNjb250ZW50IGRpdi5wcm9kdWN0IGRpdi5zdW1tYXJ5IC5jYXJ0IC5idXR0b246Zm9jdXMtdmlzaWJsZSwgLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0ICNjb250ZW50IGRpdi5wcm9kdWN0IGRpdi5zdW1tYXJ5IC5jYXJ0IC5oYXMtYmctZGFyayAuYnV0dG9uOmZvY3VzLXZpc2libGUsIC5oYXMtYmctZGFyayAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgYnV0dG9uW3R5cGU9c3VibWl0XTpmb2N1cy12aXNpYmxlLCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgLmhhcy1iZy1kYXJrIGJ1dHRvblt0eXBlPXN1Ym1pdF06Zm9jdXMtdmlzaWJsZSxcbi5oYXMtYmctZGFyayAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgaW5wdXRbdHlwZT1zdWJtaXRdOmZvY3VzLXZpc2libGUsXG4ud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgLmhhcy1iZy1kYXJrIGlucHV0W3R5cGU9c3VibWl0XTpmb2N1cy12aXNpYmxlLFxuLmhhcy1iZy1kYXJrIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSAuYnV0dG9uOmZvY3VzLXZpc2libGUsXG4ud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgLmhhcy1iZy1kYXJrIC5idXR0b246Zm9jdXMtdmlzaWJsZSxcbi5oYXMtYmctZGFyayAud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIGJ1dHRvblt0eXBlPXN1Ym1pdF06Zm9jdXMtdmlzaWJsZSxcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgLmhhcy1iZy1kYXJrIGJ1dHRvblt0eXBlPXN1Ym1pdF06Zm9jdXMtdmlzaWJsZSxcbi5oYXMtYmctZGFyayAud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIGlucHV0W3R5cGU9c3VibWl0XTpmb2N1cy12aXNpYmxlLFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSAuaGFzLWJnLWRhcmsgaW5wdXRbdHlwZT1zdWJtaXRdOmZvY3VzLXZpc2libGUsXG4uaGFzLWJnLWRhcmsgLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSAuYnV0dG9uOmZvY3VzLXZpc2libGUsXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIC5oYXMtYmctZGFyayAuYnV0dG9uOmZvY3VzLXZpc2libGUge1xuICBvdXRsaW5lLWNvbG9yOiB2YXIoLS1pdC1jb2xvci13aGl0ZSk7XG59XG4uaXQtaW50cm8tLWZ1bGx3aWR0aCAud29vY29tbWVyY2UtY2FydCAud29vY29tbWVyY2UgLmNhcnQtY29sbGF0ZXJhbHMgLmNhcnRfdG90YWxzIC53Yy1wcm9jZWVkLXRvLWNoZWNrb3V0IC5pcy1kaXNhYmxlZC5jaGVja291dC1idXR0b24sIC53b29jb21tZXJjZS1jYXJ0IC53b29jb21tZXJjZSAuY2FydC1jb2xsYXRlcmFscyAuY2FydF90b3RhbHMgLndjLXByb2NlZWQtdG8tY2hlY2tvdXQgLml0LWludHJvLS1mdWxsd2lkdGggLmlzLWRpc2FibGVkLmNoZWNrb3V0LWJ1dHRvbiwgLml0LWludHJvLS1mdWxsd2lkdGggLndvb2NvbW1lcmNlLWNhcnQgLndvb2NvbW1lcmNlIC5yZXR1cm4tdG8tc2hvcCAuaXMtZGlzYWJsZWQuYnV0dG9uLCAud29vY29tbWVyY2UtY2FydCAud29vY29tbWVyY2UgLnJldHVybi10by1zaG9wIC5pdC1pbnRyby0tZnVsbHdpZHRoIC5pcy1kaXNhYmxlZC5idXR0b24sIC5pdC1pbnRyby0tZnVsbHdpZHRoIC53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCAjY29udGVudCBkaXYucHJvZHVjdCBkaXYuc3VtbWFyeSAuY2FydCAuaXMtZGlzYWJsZWQuYnV0dG9uLCAud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgI2NvbnRlbnQgZGl2LnByb2R1Y3QgZGl2LnN1bW1hcnkgLmNhcnQgLml0LWludHJvLS1mdWxsd2lkdGggLmlzLWRpc2FibGVkLmJ1dHRvbiwgLml0LWludHJvLS1mdWxsd2lkdGggLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIGJ1dHRvbi5pcy1kaXNhYmxlZFt0eXBlPXN1Ym1pdF0sIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSAuaXQtaW50cm8tLWZ1bGx3aWR0aCBidXR0b24uaXMtZGlzYWJsZWRbdHlwZT1zdWJtaXRdLFxuLml0LWludHJvLS1mdWxsd2lkdGggLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIGlucHV0LmlzLWRpc2FibGVkW3R5cGU9c3VibWl0XSxcbi53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSAuaXQtaW50cm8tLWZ1bGx3aWR0aCBpbnB1dC5pcy1kaXNhYmxlZFt0eXBlPXN1Ym1pdF0sXG4uaXQtaW50cm8tLWZ1bGx3aWR0aCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgLmlzLWRpc2FibGVkLmJ1dHRvbixcbi53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSAuaXQtaW50cm8tLWZ1bGx3aWR0aCAuaXMtZGlzYWJsZWQuYnV0dG9uLFxuLml0LWludHJvLS1mdWxsd2lkdGggLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSBidXR0b24uaXMtZGlzYWJsZWRbdHlwZT1zdWJtaXRdLFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSAuaXQtaW50cm8tLWZ1bGx3aWR0aCBidXR0b24uaXMtZGlzYWJsZWRbdHlwZT1zdWJtaXRdLFxuLml0LWludHJvLS1mdWxsd2lkdGggLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSBpbnB1dC5pcy1kaXNhYmxlZFt0eXBlPXN1Ym1pdF0sXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIC5pdC1pbnRyby0tZnVsbHdpZHRoIGlucHV0LmlzLWRpc2FibGVkW3R5cGU9c3VibWl0XSxcbi5pdC1pbnRyby0tZnVsbHdpZHRoIC53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgLmlzLWRpc2FibGVkLmJ1dHRvbixcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgLml0LWludHJvLS1mdWxsd2lkdGggLmlzLWRpc2FibGVkLmJ1dHRvbiwgLml0LWludHJvLS1mdWxsd2lkdGggLndvb2NvbW1lcmNlLWNhcnQgLndvb2NvbW1lcmNlIC5jYXJ0LWNvbGxhdGVyYWxzIC5jYXJ0X3RvdGFscyAud2MtcHJvY2VlZC10by1jaGVja291dCAuaXMtbG9hZGluZy5jaGVja291dC1idXR0b24sIC53b29jb21tZXJjZS1jYXJ0IC53b29jb21tZXJjZSAuY2FydC1jb2xsYXRlcmFscyAuY2FydF90b3RhbHMgLndjLXByb2NlZWQtdG8tY2hlY2tvdXQgLml0LWludHJvLS1mdWxsd2lkdGggLmlzLWxvYWRpbmcuY2hlY2tvdXQtYnV0dG9uLCAuaXQtaW50cm8tLWZ1bGx3aWR0aCAud29vY29tbWVyY2UtY2FydCAud29vY29tbWVyY2UgLnJldHVybi10by1zaG9wIC5pcy1sb2FkaW5nLmJ1dHRvbiwgLndvb2NvbW1lcmNlLWNhcnQgLndvb2NvbW1lcmNlIC5yZXR1cm4tdG8tc2hvcCAuaXQtaW50cm8tLWZ1bGx3aWR0aCAuaXMtbG9hZGluZy5idXR0b24sIC5pdC1pbnRyby0tZnVsbHdpZHRoIC53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCAjY29udGVudCBkaXYucHJvZHVjdCBkaXYuc3VtbWFyeSAuY2FydCAuaXMtbG9hZGluZy5idXR0b24sIC53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCAjY29udGVudCBkaXYucHJvZHVjdCBkaXYuc3VtbWFyeSAuY2FydCAuaXQtaW50cm8tLWZ1bGx3aWR0aCAuaXMtbG9hZGluZy5idXR0b24sIC5pdC1pbnRyby0tZnVsbHdpZHRoIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSBidXR0b24uaXMtbG9hZGluZ1t0eXBlPXN1Ym1pdF0sIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSAuaXQtaW50cm8tLWZ1bGx3aWR0aCBidXR0b24uaXMtbG9hZGluZ1t0eXBlPXN1Ym1pdF0sXG4uaXQtaW50cm8tLWZ1bGx3aWR0aCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgaW5wdXQuaXMtbG9hZGluZ1t0eXBlPXN1Ym1pdF0sXG4ud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgLml0LWludHJvLS1mdWxsd2lkdGggaW5wdXQuaXMtbG9hZGluZ1t0eXBlPXN1Ym1pdF0sXG4uaXQtaW50cm8tLWZ1bGx3aWR0aCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgLmlzLWxvYWRpbmcuYnV0dG9uLFxuLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIC5pdC1pbnRyby0tZnVsbHdpZHRoIC5pcy1sb2FkaW5nLmJ1dHRvbixcbi5pdC1pbnRyby0tZnVsbHdpZHRoIC53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgYnV0dG9uLmlzLWxvYWRpbmdbdHlwZT1zdWJtaXRdLFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSAuaXQtaW50cm8tLWZ1bGx3aWR0aCBidXR0b24uaXMtbG9hZGluZ1t0eXBlPXN1Ym1pdF0sXG4uaXQtaW50cm8tLWZ1bGx3aWR0aCAud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIGlucHV0LmlzLWxvYWRpbmdbdHlwZT1zdWJtaXRdLFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSAuaXQtaW50cm8tLWZ1bGx3aWR0aCBpbnB1dC5pcy1sb2FkaW5nW3R5cGU9c3VibWl0XSxcbi5pdC1pbnRyby0tZnVsbHdpZHRoIC53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgLmlzLWxvYWRpbmcuYnV0dG9uLFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSAuaXQtaW50cm8tLWZ1bGx3aWR0aCAuaXMtbG9hZGluZy5idXR0b24sIC5oYXMtYmctZGFyayAud29vY29tbWVyY2UtY2FydCAud29vY29tbWVyY2UgLmNhcnQtY29sbGF0ZXJhbHMgLmNhcnRfdG90YWxzIC53Yy1wcm9jZWVkLXRvLWNoZWNrb3V0IC5pcy1kaXNhYmxlZC5jaGVja291dC1idXR0b24sIC53b29jb21tZXJjZS1jYXJ0IC53b29jb21tZXJjZSAuY2FydC1jb2xsYXRlcmFscyAuY2FydF90b3RhbHMgLndjLXByb2NlZWQtdG8tY2hlY2tvdXQgLmhhcy1iZy1kYXJrIC5pcy1kaXNhYmxlZC5jaGVja291dC1idXR0b24sIC5oYXMtYmctZGFyayAud29vY29tbWVyY2UtY2FydCAud29vY29tbWVyY2UgLnJldHVybi10by1zaG9wIC5pcy1kaXNhYmxlZC5idXR0b24sIC53b29jb21tZXJjZS1jYXJ0IC53b29jb21tZXJjZSAucmV0dXJuLXRvLXNob3AgLmhhcy1iZy1kYXJrIC5pcy1kaXNhYmxlZC5idXR0b24sIC5oYXMtYmctZGFyayAud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgI2NvbnRlbnQgZGl2LnByb2R1Y3QgZGl2LnN1bW1hcnkgLmNhcnQgLmlzLWRpc2FibGVkLmJ1dHRvbiwgLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0ICNjb250ZW50IGRpdi5wcm9kdWN0IGRpdi5zdW1tYXJ5IC5jYXJ0IC5oYXMtYmctZGFyayAuaXMtZGlzYWJsZWQuYnV0dG9uLCAuaGFzLWJnLWRhcmsgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIGJ1dHRvbi5pcy1kaXNhYmxlZFt0eXBlPXN1Ym1pdF0sIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSAuaGFzLWJnLWRhcmsgYnV0dG9uLmlzLWRpc2FibGVkW3R5cGU9c3VibWl0XSxcbi5oYXMtYmctZGFyayAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgaW5wdXQuaXMtZGlzYWJsZWRbdHlwZT1zdWJtaXRdLFxuLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIC5oYXMtYmctZGFyayBpbnB1dC5pcy1kaXNhYmxlZFt0eXBlPXN1Ym1pdF0sXG4uaGFzLWJnLWRhcmsgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIC5pcy1kaXNhYmxlZC5idXR0b24sXG4ud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgLmhhcy1iZy1kYXJrIC5pcy1kaXNhYmxlZC5idXR0b24sXG4uaGFzLWJnLWRhcmsgLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSBidXR0b24uaXMtZGlzYWJsZWRbdHlwZT1zdWJtaXRdLFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSAuaGFzLWJnLWRhcmsgYnV0dG9uLmlzLWRpc2FibGVkW3R5cGU9c3VibWl0XSxcbi5oYXMtYmctZGFyayAud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIGlucHV0LmlzLWRpc2FibGVkW3R5cGU9c3VibWl0XSxcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgLmhhcy1iZy1kYXJrIGlucHV0LmlzLWRpc2FibGVkW3R5cGU9c3VibWl0XSxcbi5oYXMtYmctZGFyayAud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIC5pcy1kaXNhYmxlZC5idXR0b24sXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIC5oYXMtYmctZGFyayAuaXMtZGlzYWJsZWQuYnV0dG9uLCAuaGFzLWJnLWRhcmsgLndvb2NvbW1lcmNlLWNhcnQgLndvb2NvbW1lcmNlIC5jYXJ0LWNvbGxhdGVyYWxzIC5jYXJ0X3RvdGFscyAud2MtcHJvY2VlZC10by1jaGVja291dCAuaXMtbG9hZGluZy5jaGVja291dC1idXR0b24sIC53b29jb21tZXJjZS1jYXJ0IC53b29jb21tZXJjZSAuY2FydC1jb2xsYXRlcmFscyAuY2FydF90b3RhbHMgLndjLXByb2NlZWQtdG8tY2hlY2tvdXQgLmhhcy1iZy1kYXJrIC5pcy1sb2FkaW5nLmNoZWNrb3V0LWJ1dHRvbiwgLmhhcy1iZy1kYXJrIC53b29jb21tZXJjZS1jYXJ0IC53b29jb21tZXJjZSAucmV0dXJuLXRvLXNob3AgLmlzLWxvYWRpbmcuYnV0dG9uLCAud29vY29tbWVyY2UtY2FydCAud29vY29tbWVyY2UgLnJldHVybi10by1zaG9wIC5oYXMtYmctZGFyayAuaXMtbG9hZGluZy5idXR0b24sIC5oYXMtYmctZGFyayAud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgI2NvbnRlbnQgZGl2LnByb2R1Y3QgZGl2LnN1bW1hcnkgLmNhcnQgLmlzLWxvYWRpbmcuYnV0dG9uLCAud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgI2NvbnRlbnQgZGl2LnByb2R1Y3QgZGl2LnN1bW1hcnkgLmNhcnQgLmhhcy1iZy1kYXJrIC5pcy1sb2FkaW5nLmJ1dHRvbiwgLmhhcy1iZy1kYXJrIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSBidXR0b24uaXMtbG9hZGluZ1t0eXBlPXN1Ym1pdF0sIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSAuaGFzLWJnLWRhcmsgYnV0dG9uLmlzLWxvYWRpbmdbdHlwZT1zdWJtaXRdLFxuLmhhcy1iZy1kYXJrIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSBpbnB1dC5pcy1sb2FkaW5nW3R5cGU9c3VibWl0XSxcbi53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSAuaGFzLWJnLWRhcmsgaW5wdXQuaXMtbG9hZGluZ1t0eXBlPXN1Ym1pdF0sXG4uaGFzLWJnLWRhcmsgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIC5pcy1sb2FkaW5nLmJ1dHRvbixcbi53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSAuaGFzLWJnLWRhcmsgLmlzLWxvYWRpbmcuYnV0dG9uLFxuLmhhcy1iZy1kYXJrIC53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgYnV0dG9uLmlzLWxvYWRpbmdbdHlwZT1zdWJtaXRdLFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSAuaGFzLWJnLWRhcmsgYnV0dG9uLmlzLWxvYWRpbmdbdHlwZT1zdWJtaXRdLFxuLmhhcy1iZy1kYXJrIC53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgaW5wdXQuaXMtbG9hZGluZ1t0eXBlPXN1Ym1pdF0sXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIC5oYXMtYmctZGFyayBpbnB1dC5pcy1sb2FkaW5nW3R5cGU9c3VibWl0XSxcbi5oYXMtYmctZGFyayAud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIC5pcy1sb2FkaW5nLmJ1dHRvbixcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgLmhhcy1iZy1kYXJrIC5pcy1sb2FkaW5nLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWl0LWNvbG9yLWJvcmRlcik7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0taXQtY29sb3ItYm9yZGVyKTtcbn1cbi5pdC1pbnRyby0tZnVsbHdpZHRoIC53b29jb21tZXJjZS1jYXJ0IC53b29jb21tZXJjZSAuY2FydC1jb2xsYXRlcmFscyAuY2FydF90b3RhbHMgLndjLXByb2NlZWQtdG8tY2hlY2tvdXQgLmlzLWRpc2FibGVkLmNoZWNrb3V0LWJ1dHRvbjpmb2N1cy12aXNpYmxlLCAud29vY29tbWVyY2UtY2FydCAud29vY29tbWVyY2UgLmNhcnQtY29sbGF0ZXJhbHMgLmNhcnRfdG90YWxzIC53Yy1wcm9jZWVkLXRvLWNoZWNrb3V0IC5pdC1pbnRyby0tZnVsbHdpZHRoIC5pcy1kaXNhYmxlZC5jaGVja291dC1idXR0b246Zm9jdXMtdmlzaWJsZSwgLml0LWludHJvLS1mdWxsd2lkdGggLndvb2NvbW1lcmNlLWNhcnQgLndvb2NvbW1lcmNlIC5yZXR1cm4tdG8tc2hvcCAuaXMtZGlzYWJsZWQuYnV0dG9uOmZvY3VzLXZpc2libGUsIC53b29jb21tZXJjZS1jYXJ0IC53b29jb21tZXJjZSAucmV0dXJuLXRvLXNob3AgLml0LWludHJvLS1mdWxsd2lkdGggLmlzLWRpc2FibGVkLmJ1dHRvbjpmb2N1cy12aXNpYmxlLCAuaXQtaW50cm8tLWZ1bGx3aWR0aCAud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgI2NvbnRlbnQgZGl2LnByb2R1Y3QgZGl2LnN1bW1hcnkgLmNhcnQgLmlzLWRpc2FibGVkLmJ1dHRvbjpmb2N1cy12aXNpYmxlLCAud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgI2NvbnRlbnQgZGl2LnByb2R1Y3QgZGl2LnN1bW1hcnkgLmNhcnQgLml0LWludHJvLS1mdWxsd2lkdGggLmlzLWRpc2FibGVkLmJ1dHRvbjpmb2N1cy12aXNpYmxlLCAuaXQtaW50cm8tLWZ1bGx3aWR0aCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgYnV0dG9uLmlzLWRpc2FibGVkW3R5cGU9c3VibWl0XTpmb2N1cy12aXNpYmxlLCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgLml0LWludHJvLS1mdWxsd2lkdGggYnV0dG9uLmlzLWRpc2FibGVkW3R5cGU9c3VibWl0XTpmb2N1cy12aXNpYmxlLFxuLml0LWludHJvLS1mdWxsd2lkdGggLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIGlucHV0LmlzLWRpc2FibGVkW3R5cGU9c3VibWl0XTpmb2N1cy12aXNpYmxlLFxuLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIC5pdC1pbnRyby0tZnVsbHdpZHRoIGlucHV0LmlzLWRpc2FibGVkW3R5cGU9c3VibWl0XTpmb2N1cy12aXNpYmxlLFxuLml0LWludHJvLS1mdWxsd2lkdGggLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIC5pcy1kaXNhYmxlZC5idXR0b246Zm9jdXMtdmlzaWJsZSxcbi53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSAuaXQtaW50cm8tLWZ1bGx3aWR0aCAuaXMtZGlzYWJsZWQuYnV0dG9uOmZvY3VzLXZpc2libGUsXG4uaXQtaW50cm8tLWZ1bGx3aWR0aCAud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIGJ1dHRvbi5pcy1kaXNhYmxlZFt0eXBlPXN1Ym1pdF06Zm9jdXMtdmlzaWJsZSxcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgLml0LWludHJvLS1mdWxsd2lkdGggYnV0dG9uLmlzLWRpc2FibGVkW3R5cGU9c3VibWl0XTpmb2N1cy12aXNpYmxlLFxuLml0LWludHJvLS1mdWxsd2lkdGggLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSBpbnB1dC5pcy1kaXNhYmxlZFt0eXBlPXN1Ym1pdF06Zm9jdXMtdmlzaWJsZSxcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgLml0LWludHJvLS1mdWxsd2lkdGggaW5wdXQuaXMtZGlzYWJsZWRbdHlwZT1zdWJtaXRdOmZvY3VzLXZpc2libGUsXG4uaXQtaW50cm8tLWZ1bGx3aWR0aCAud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIC5pcy1kaXNhYmxlZC5idXR0b246Zm9jdXMtdmlzaWJsZSxcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgLml0LWludHJvLS1mdWxsd2lkdGggLmlzLWRpc2FibGVkLmJ1dHRvbjpmb2N1cy12aXNpYmxlLCAuaXQtaW50cm8tLWZ1bGx3aWR0aCAud29vY29tbWVyY2UtY2FydCAud29vY29tbWVyY2UgLmNhcnQtY29sbGF0ZXJhbHMgLmNhcnRfdG90YWxzIC53Yy1wcm9jZWVkLXRvLWNoZWNrb3V0IC5pcy1sb2FkaW5nLmNoZWNrb3V0LWJ1dHRvbjpmb2N1cy12aXNpYmxlLCAud29vY29tbWVyY2UtY2FydCAud29vY29tbWVyY2UgLmNhcnQtY29sbGF0ZXJhbHMgLmNhcnRfdG90YWxzIC53Yy1wcm9jZWVkLXRvLWNoZWNrb3V0IC5pdC1pbnRyby0tZnVsbHdpZHRoIC5pcy1sb2FkaW5nLmNoZWNrb3V0LWJ1dHRvbjpmb2N1cy12aXNpYmxlLCAuaXQtaW50cm8tLWZ1bGx3aWR0aCAud29vY29tbWVyY2UtY2FydCAud29vY29tbWVyY2UgLnJldHVybi10by1zaG9wIC5pcy1sb2FkaW5nLmJ1dHRvbjpmb2N1cy12aXNpYmxlLCAud29vY29tbWVyY2UtY2FydCAud29vY29tbWVyY2UgLnJldHVybi10by1zaG9wIC5pdC1pbnRyby0tZnVsbHdpZHRoIC5pcy1sb2FkaW5nLmJ1dHRvbjpmb2N1cy12aXNpYmxlLCAuaXQtaW50cm8tLWZ1bGx3aWR0aCAud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgI2NvbnRlbnQgZGl2LnByb2R1Y3QgZGl2LnN1bW1hcnkgLmNhcnQgLmlzLWxvYWRpbmcuYnV0dG9uOmZvY3VzLXZpc2libGUsIC53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCAjY29udGVudCBkaXYucHJvZHVjdCBkaXYuc3VtbWFyeSAuY2FydCAuaXQtaW50cm8tLWZ1bGx3aWR0aCAuaXMtbG9hZGluZy5idXR0b246Zm9jdXMtdmlzaWJsZSwgLml0LWludHJvLS1mdWxsd2lkdGggLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIGJ1dHRvbi5pcy1sb2FkaW5nW3R5cGU9c3VibWl0XTpmb2N1cy12aXNpYmxlLCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgLml0LWludHJvLS1mdWxsd2lkdGggYnV0dG9uLmlzLWxvYWRpbmdbdHlwZT1zdWJtaXRdOmZvY3VzLXZpc2libGUsXG4uaXQtaW50cm8tLWZ1bGx3aWR0aCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgaW5wdXQuaXMtbG9hZGluZ1t0eXBlPXN1Ym1pdF06Zm9jdXMtdmlzaWJsZSxcbi53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSAuaXQtaW50cm8tLWZ1bGx3aWR0aCBpbnB1dC5pcy1sb2FkaW5nW3R5cGU9c3VibWl0XTpmb2N1cy12aXNpYmxlLFxuLml0LWludHJvLS1mdWxsd2lkdGggLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIC5pcy1sb2FkaW5nLmJ1dHRvbjpmb2N1cy12aXNpYmxlLFxuLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIC5pdC1pbnRyby0tZnVsbHdpZHRoIC5pcy1sb2FkaW5nLmJ1dHRvbjpmb2N1cy12aXNpYmxlLFxuLml0LWludHJvLS1mdWxsd2lkdGggLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSBidXR0b24uaXMtbG9hZGluZ1t0eXBlPXN1Ym1pdF06Zm9jdXMtdmlzaWJsZSxcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgLml0LWludHJvLS1mdWxsd2lkdGggYnV0dG9uLmlzLWxvYWRpbmdbdHlwZT1zdWJtaXRdOmZvY3VzLXZpc2libGUsXG4uaXQtaW50cm8tLWZ1bGx3aWR0aCAud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIGlucHV0LmlzLWxvYWRpbmdbdHlwZT1zdWJtaXRdOmZvY3VzLXZpc2libGUsXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIC5pdC1pbnRyby0tZnVsbHdpZHRoIGlucHV0LmlzLWxvYWRpbmdbdHlwZT1zdWJtaXRdOmZvY3VzLXZpc2libGUsXG4uaXQtaW50cm8tLWZ1bGx3aWR0aCAud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIC5pcy1sb2FkaW5nLmJ1dHRvbjpmb2N1cy12aXNpYmxlLFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSAuaXQtaW50cm8tLWZ1bGx3aWR0aCAuaXMtbG9hZGluZy5idXR0b246Zm9jdXMtdmlzaWJsZSwgLmhhcy1iZy1kYXJrIC53b29jb21tZXJjZS1jYXJ0IC53b29jb21tZXJjZSAuY2FydC1jb2xsYXRlcmFscyAuY2FydF90b3RhbHMgLndjLXByb2NlZWQtdG8tY2hlY2tvdXQgLmlzLWRpc2FibGVkLmNoZWNrb3V0LWJ1dHRvbjpmb2N1cy12aXNpYmxlLCAud29vY29tbWVyY2UtY2FydCAud29vY29tbWVyY2UgLmNhcnQtY29sbGF0ZXJhbHMgLmNhcnRfdG90YWxzIC53Yy1wcm9jZWVkLXRvLWNoZWNrb3V0IC5oYXMtYmctZGFyayAuaXMtZGlzYWJsZWQuY2hlY2tvdXQtYnV0dG9uOmZvY3VzLXZpc2libGUsIC5oYXMtYmctZGFyayAud29vY29tbWVyY2UtY2FydCAud29vY29tbWVyY2UgLnJldHVybi10by1zaG9wIC5pcy1kaXNhYmxlZC5idXR0b246Zm9jdXMtdmlzaWJsZSwgLndvb2NvbW1lcmNlLWNhcnQgLndvb2NvbW1lcmNlIC5yZXR1cm4tdG8tc2hvcCAuaGFzLWJnLWRhcmsgLmlzLWRpc2FibGVkLmJ1dHRvbjpmb2N1cy12aXNpYmxlLCAuaGFzLWJnLWRhcmsgLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0ICNjb250ZW50IGRpdi5wcm9kdWN0IGRpdi5zdW1tYXJ5IC5jYXJ0IC5pcy1kaXNhYmxlZC5idXR0b246Zm9jdXMtdmlzaWJsZSwgLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0ICNjb250ZW50IGRpdi5wcm9kdWN0IGRpdi5zdW1tYXJ5IC5jYXJ0IC5oYXMtYmctZGFyayAuaXMtZGlzYWJsZWQuYnV0dG9uOmZvY3VzLXZpc2libGUsIC5oYXMtYmctZGFyayAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgYnV0dG9uLmlzLWRpc2FibGVkW3R5cGU9c3VibWl0XTpmb2N1cy12aXNpYmxlLCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgLmhhcy1iZy1kYXJrIGJ1dHRvbi5pcy1kaXNhYmxlZFt0eXBlPXN1Ym1pdF06Zm9jdXMtdmlzaWJsZSxcbi5oYXMtYmctZGFyayAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgaW5wdXQuaXMtZGlzYWJsZWRbdHlwZT1zdWJtaXRdOmZvY3VzLXZpc2libGUsXG4ud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgLmhhcy1iZy1kYXJrIGlucHV0LmlzLWRpc2FibGVkW3R5cGU9c3VibWl0XTpmb2N1cy12aXNpYmxlLFxuLmhhcy1iZy1kYXJrIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSAuaXMtZGlzYWJsZWQuYnV0dG9uOmZvY3VzLXZpc2libGUsXG4ud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgLmhhcy1iZy1kYXJrIC5pcy1kaXNhYmxlZC5idXR0b246Zm9jdXMtdmlzaWJsZSxcbi5oYXMtYmctZGFyayAud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIGJ1dHRvbi5pcy1kaXNhYmxlZFt0eXBlPXN1Ym1pdF06Zm9jdXMtdmlzaWJsZSxcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgLmhhcy1iZy1kYXJrIGJ1dHRvbi5pcy1kaXNhYmxlZFt0eXBlPXN1Ym1pdF06Zm9jdXMtdmlzaWJsZSxcbi5oYXMtYmctZGFyayAud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIGlucHV0LmlzLWRpc2FibGVkW3R5cGU9c3VibWl0XTpmb2N1cy12aXNpYmxlLFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSAuaGFzLWJnLWRhcmsgaW5wdXQuaXMtZGlzYWJsZWRbdHlwZT1zdWJtaXRdOmZvY3VzLXZpc2libGUsXG4uaGFzLWJnLWRhcmsgLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSAuaXMtZGlzYWJsZWQuYnV0dG9uOmZvY3VzLXZpc2libGUsXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIC5oYXMtYmctZGFyayAuaXMtZGlzYWJsZWQuYnV0dG9uOmZvY3VzLXZpc2libGUsIC5oYXMtYmctZGFyayAud29vY29tbWVyY2UtY2FydCAud29vY29tbWVyY2UgLmNhcnQtY29sbGF0ZXJhbHMgLmNhcnRfdG90YWxzIC53Yy1wcm9jZWVkLXRvLWNoZWNrb3V0IC5pcy1sb2FkaW5nLmNoZWNrb3V0LWJ1dHRvbjpmb2N1cy12aXNpYmxlLCAud29vY29tbWVyY2UtY2FydCAud29vY29tbWVyY2UgLmNhcnQtY29sbGF0ZXJhbHMgLmNhcnRfdG90YWxzIC53Yy1wcm9jZWVkLXRvLWNoZWNrb3V0IC5oYXMtYmctZGFyayAuaXMtbG9hZGluZy5jaGVja291dC1idXR0b246Zm9jdXMtdmlzaWJsZSwgLmhhcy1iZy1kYXJrIC53b29jb21tZXJjZS1jYXJ0IC53b29jb21tZXJjZSAucmV0dXJuLXRvLXNob3AgLmlzLWxvYWRpbmcuYnV0dG9uOmZvY3VzLXZpc2libGUsIC53b29jb21tZXJjZS1jYXJ0IC53b29jb21tZXJjZSAucmV0dXJuLXRvLXNob3AgLmhhcy1iZy1kYXJrIC5pcy1sb2FkaW5nLmJ1dHRvbjpmb2N1cy12aXNpYmxlLCAuaGFzLWJnLWRhcmsgLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0ICNjb250ZW50IGRpdi5wcm9kdWN0IGRpdi5zdW1tYXJ5IC5jYXJ0IC5pcy1sb2FkaW5nLmJ1dHRvbjpmb2N1cy12aXNpYmxlLCAud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgI2NvbnRlbnQgZGl2LnByb2R1Y3QgZGl2LnN1bW1hcnkgLmNhcnQgLmhhcy1iZy1kYXJrIC5pcy1sb2FkaW5nLmJ1dHRvbjpmb2N1cy12aXNpYmxlLCAuaGFzLWJnLWRhcmsgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIGJ1dHRvbi5pcy1sb2FkaW5nW3R5cGU9c3VibWl0XTpmb2N1cy12aXNpYmxlLCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgLmhhcy1iZy1kYXJrIGJ1dHRvbi5pcy1sb2FkaW5nW3R5cGU9c3VibWl0XTpmb2N1cy12aXNpYmxlLFxuLmhhcy1iZy1kYXJrIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSBpbnB1dC5pcy1sb2FkaW5nW3R5cGU9c3VibWl0XTpmb2N1cy12aXNpYmxlLFxuLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIC5oYXMtYmctZGFyayBpbnB1dC5pcy1sb2FkaW5nW3R5cGU9c3VibWl0XTpmb2N1cy12aXNpYmxlLFxuLmhhcy1iZy1kYXJrIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSAuaXMtbG9hZGluZy5idXR0b246Zm9jdXMtdmlzaWJsZSxcbi53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSAuaGFzLWJnLWRhcmsgLmlzLWxvYWRpbmcuYnV0dG9uOmZvY3VzLXZpc2libGUsXG4uaGFzLWJnLWRhcmsgLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSBidXR0b24uaXMtbG9hZGluZ1t0eXBlPXN1Ym1pdF06Zm9jdXMtdmlzaWJsZSxcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgLmhhcy1iZy1kYXJrIGJ1dHRvbi5pcy1sb2FkaW5nW3R5cGU9c3VibWl0XTpmb2N1cy12aXNpYmxlLFxuLmhhcy1iZy1kYXJrIC53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgaW5wdXQuaXMtbG9hZGluZ1t0eXBlPXN1Ym1pdF06Zm9jdXMtdmlzaWJsZSxcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgLmhhcy1iZy1kYXJrIGlucHV0LmlzLWxvYWRpbmdbdHlwZT1zdWJtaXRdOmZvY3VzLXZpc2libGUsXG4uaGFzLWJnLWRhcmsgLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSAuaXMtbG9hZGluZy5idXR0b246Zm9jdXMtdmlzaWJsZSxcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgLmhhcy1iZy1kYXJrIC5pcy1sb2FkaW5nLmJ1dHRvbjpmb2N1cy12aXNpYmxlIHtcbiAgb3V0bGluZS1jb2xvcjogdmFyKC0taXQtY29sb3ItYm9yZGVyKTtcbn1cbi53b29jb21tZXJjZSAud29vY29tbWVyY2UtZXJyb3IgLmJ1dHRvbiB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0taXQtY29sb3ItdGV4dCk7XG4gIGNvbG9yOiB2YXIoLS1pdC1jb2xvci10ZXh0KTtcbn1cbkBtZWRpYSAoaG92ZXI6IGhvdmVyKSB7XG4gIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtZXJyb3IgLmJ1dHRvbjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taXQtY29sb3Itd2hpdGUpO1xuICB9XG59XG5AbWVkaWEgKGhvdmVyOiBub25lKSB7XG4gIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtZXJyb3IgLmJ1dHRvbjphY3RpdmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWl0LWNvbG9yLXdoaXRlKTtcbiAgfVxufVxuLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1lcnJvciAuaXMtZGlzYWJsZWQuYnV0dG9uLCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWVycm9yIC5pcy1sb2FkaW5nLmJ1dHRvbiB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pdC1jb2xvci1hY2NlbnQtZ3JleWVkKTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1pdC1jb2xvci1hY2NlbnQtZ3JleWVkKTtcbn1cbi53b29jb21tZXJjZSAud29vY29tbWVyY2UtZXJyb3IgLmlzLWRpc2FibGVkLmJ1dHRvbjpmb2N1cy12aXNpYmxlLCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWVycm9yIC5pcy1sb2FkaW5nLmJ1dHRvbjpmb2N1cy12aXNpYmxlIHtcbiAgb3V0bGluZS1jb2xvcjogdmFyKC0taXQtY29sb3ItYWNjZW50LWdyZXllZCk7XG59XG5AbWVkaWEgKGhvdmVyOiBob3Zlcikge1xuICAuaXQtaW50cm8tLWZ1bGx3aWR0aCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWVycm9yIC5idXR0b246aG92ZXIsIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtZXJyb3IgLml0LWludHJvLS1mdWxsd2lkdGggLmJ1dHRvbjpob3ZlciwgLmhhcy1iZy1kYXJrIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtZXJyb3IgLmJ1dHRvbjpob3ZlciwgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1lcnJvciAuaGFzLWJnLWRhcmsgLmJ1dHRvbjpob3ZlciB7XG4gICAgY29sb3I6IHZhcigtLWl0LWNvbG9yLXdoaXRlKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pdC1jb2xvci1icmFuZCk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1pdC1jb2xvci13aGl0ZSk7XG4gIH1cbn1cbkBtZWRpYSAoaG92ZXI6IG5vbmUpIHtcbiAgLml0LWludHJvLS1mdWxsd2lkdGggLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1lcnJvciAuYnV0dG9uOmFjdGl2ZSwgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1lcnJvciAuaXQtaW50cm8tLWZ1bGx3aWR0aCAuYnV0dG9uOmFjdGl2ZSwgLmhhcy1iZy1kYXJrIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtZXJyb3IgLmJ1dHRvbjphY3RpdmUsIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtZXJyb3IgLmhhcy1iZy1kYXJrIC5idXR0b246YWN0aXZlIHtcbiAgICBjb2xvcjogdmFyKC0taXQtY29sb3Itd2hpdGUpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWl0LWNvbG9yLWJyYW5kKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWl0LWNvbG9yLXdoaXRlKTtcbiAgfVxufVxuLndvb2NvbW1lcmNlLWNhcnQgLndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2FydC1mb3JtIHRyOmxhc3QtY2hpbGQgLmJ1dHRvbiwgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1tZXNzYWdlIC5idXR0b24sXG4ud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW1lc3NhZ2UgW3JvbGU9YnV0dG9uXSxcbi53b29jb21tZXJjZSAud29vY29tbWVyY2UtaW5mbyAuYnV0dG9uLFxuLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1pbmZvIFtyb2xlPWJ1dHRvbl0sIC53b29jb21tZXJjZSB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0IC5idXR0b24ge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1pdC1jb2xvci1icmFuZCk7XG4gIGNvbG9yOiB2YXIoLS1pdC1jb2xvci1icmFuZCk7XG59XG5AbWVkaWEgKGhvdmVyOiBob3Zlcikge1xuICAud29vY29tbWVyY2UtY2FydCAud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jYXJ0LWZvcm0gdHI6bGFzdC1jaGlsZCAuYnV0dG9uOmhvdmVyLCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW1lc3NhZ2UgLmJ1dHRvbjpob3ZlcixcbiAgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1tZXNzYWdlIFtyb2xlPWJ1dHRvbl06aG92ZXIsXG4gIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtaW5mbyAuYnV0dG9uOmhvdmVyLFxuICAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWluZm8gW3JvbGU9YnV0dG9uXTpob3ZlciwgLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzIGxpLnByb2R1Y3QgLmJ1dHRvbjpob3ZlciB7XG4gICAgY29sb3I6IHZhcigtLWl0LWNvbG9yLXdoaXRlKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pdC1jb2xvci1icmFuZCk7XG4gIH1cbn1cbkBtZWRpYSAoaG92ZXI6IG5vbmUpIHtcbiAgLndvb2NvbW1lcmNlLWNhcnQgLndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2FydC1mb3JtIHRyOmxhc3QtY2hpbGQgLmJ1dHRvbjphY3RpdmUsIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtbWVzc2FnZSAuYnV0dG9uOmFjdGl2ZSxcbiAgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1tZXNzYWdlIFtyb2xlPWJ1dHRvbl06YWN0aXZlLFxuICAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWluZm8gLmJ1dHRvbjphY3RpdmUsXG4gIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtaW5mbyBbcm9sZT1idXR0b25dOmFjdGl2ZSwgLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzIGxpLnByb2R1Y3QgLmJ1dHRvbjphY3RpdmUge1xuICAgIGNvbG9yOiB2YXIoLS1pdC1jb2xvci13aGl0ZSk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taXQtY29sb3ItYnJhbmQpO1xuICB9XG59XG4ud29vY29tbWVyY2UtY2FydCAud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jYXJ0LWZvcm0gdHI6bGFzdC1jaGlsZCAuYnV0dG9uOmZvY3VzLXZpc2libGUsIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtbWVzc2FnZSAuYnV0dG9uOmZvY3VzLXZpc2libGUsXG4ud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW1lc3NhZ2UgW3JvbGU9YnV0dG9uXTpmb2N1cy12aXNpYmxlLFxuLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1pbmZvIC5idXR0b246Zm9jdXMtdmlzaWJsZSxcbi53b29jb21tZXJjZSAud29vY29tbWVyY2UtaW5mbyBbcm9sZT1idXR0b25dOmZvY3VzLXZpc2libGUsIC53b29jb21tZXJjZSB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0IC5idXR0b246Zm9jdXMtdmlzaWJsZSB7XG4gIG91dGxpbmUtY29sb3I6IHZhcigtLWl0LWNvbG9yLWJyYW5kKTtcbn1cbi53b29jb21tZXJjZS1jYXJ0IC53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNhcnQtZm9ybSB0cjpsYXN0LWNoaWxkIC5pcy1kaXNhYmxlZC5idXR0b24sIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtbWVzc2FnZSAuaXMtZGlzYWJsZWQuYnV0dG9uLFxuLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1tZXNzYWdlIC5pcy1kaXNhYmxlZFtyb2xlPWJ1dHRvbl0sXG4ud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWluZm8gLmlzLWRpc2FibGVkLmJ1dHRvbixcbi53b29jb21tZXJjZSAud29vY29tbWVyY2UtaW5mbyAuaXMtZGlzYWJsZWRbcm9sZT1idXR0b25dLCAud29vY29tbWVyY2UgdWwucHJvZHVjdHMgbGkucHJvZHVjdCAuaXMtZGlzYWJsZWQuYnV0dG9uLCAud29vY29tbWVyY2UtY2FydCAud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jYXJ0LWZvcm0gdHI6bGFzdC1jaGlsZCAuaXMtbG9hZGluZy5idXR0b24sIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtbWVzc2FnZSAuaXMtbG9hZGluZy5idXR0b24sXG4ud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW1lc3NhZ2UgLmlzLWxvYWRpbmdbcm9sZT1idXR0b25dLFxuLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1pbmZvIC5pcy1sb2FkaW5nLmJ1dHRvbixcbi53b29jb21tZXJjZSAud29vY29tbWVyY2UtaW5mbyAuaXMtbG9hZGluZ1tyb2xlPWJ1dHRvbl0sIC53b29jb21tZXJjZSB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0IC5pcy1sb2FkaW5nLmJ1dHRvbiB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBjb2xvcjogdmFyKC0taXQtY29sb3ItYnJhbmQtZ3JleWVkKTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1pdC1jb2xvci1icmFuZC1ncmV5ZWQpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pdC1jb2xvci1iYWNrZ3JvdW5kKTtcbn1cbi53b29jb21tZXJjZS1jYXJ0IC53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNhcnQtZm9ybSB0cjpsYXN0LWNoaWxkIC5pcy1kaXNhYmxlZC5idXR0b246Zm9jdXMtdmlzaWJsZSwgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1tZXNzYWdlIC5pcy1kaXNhYmxlZC5idXR0b246Zm9jdXMtdmlzaWJsZSxcbi53b29jb21tZXJjZSAud29vY29tbWVyY2UtbWVzc2FnZSAuaXMtZGlzYWJsZWRbcm9sZT1idXR0b25dOmZvY3VzLXZpc2libGUsXG4ud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWluZm8gLmlzLWRpc2FibGVkLmJ1dHRvbjpmb2N1cy12aXNpYmxlLFxuLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1pbmZvIC5pcy1kaXNhYmxlZFtyb2xlPWJ1dHRvbl06Zm9jdXMtdmlzaWJsZSwgLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzIGxpLnByb2R1Y3QgLmlzLWRpc2FibGVkLmJ1dHRvbjpmb2N1cy12aXNpYmxlLCAud29vY29tbWVyY2UtY2FydCAud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jYXJ0LWZvcm0gdHI6bGFzdC1jaGlsZCAuaXMtbG9hZGluZy5idXR0b246Zm9jdXMtdmlzaWJsZSwgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1tZXNzYWdlIC5pcy1sb2FkaW5nLmJ1dHRvbjpmb2N1cy12aXNpYmxlLFxuLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1tZXNzYWdlIC5pcy1sb2FkaW5nW3JvbGU9YnV0dG9uXTpmb2N1cy12aXNpYmxlLFxuLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1pbmZvIC5pcy1sb2FkaW5nLmJ1dHRvbjpmb2N1cy12aXNpYmxlLFxuLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1pbmZvIC5pcy1sb2FkaW5nW3JvbGU9YnV0dG9uXTpmb2N1cy12aXNpYmxlLCAud29vY29tbWVyY2UgdWwucHJvZHVjdHMgbGkucHJvZHVjdCAuaXMtbG9hZGluZy5idXR0b246Zm9jdXMtdmlzaWJsZSB7XG4gIG91dGxpbmUtY29sb3I6IHZhcigtLWl0LWNvbG9yLWJyYW5kLWdyZXllZCk7XG59XG4uaXQtaW50cm8tLWZ1bGx3aWR0aCAud29vY29tbWVyY2UtY2FydCAud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jYXJ0LWZvcm0gdHI6bGFzdC1jaGlsZCAuYnV0dG9uLCAud29vY29tbWVyY2UtY2FydCAud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jYXJ0LWZvcm0gdHI6bGFzdC1jaGlsZCAuaXQtaW50cm8tLWZ1bGx3aWR0aCAuYnV0dG9uLCAuaXQtaW50cm8tLWZ1bGx3aWR0aCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW1lc3NhZ2UgLmJ1dHRvbiwgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1tZXNzYWdlIC5pdC1pbnRyby0tZnVsbHdpZHRoIC5idXR0b24sXG4uaXQtaW50cm8tLWZ1bGx3aWR0aCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW1lc3NhZ2UgW3JvbGU9YnV0dG9uXSxcbi53b29jb21tZXJjZSAud29vY29tbWVyY2UtbWVzc2FnZSAuaXQtaW50cm8tLWZ1bGx3aWR0aCBbcm9sZT1idXR0b25dLFxuLml0LWludHJvLS1mdWxsd2lkdGggLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1pbmZvIC5idXR0b24sXG4ud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWluZm8gLml0LWludHJvLS1mdWxsd2lkdGggLmJ1dHRvbixcbi5pdC1pbnRyby0tZnVsbHdpZHRoIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtaW5mbyBbcm9sZT1idXR0b25dLFxuLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1pbmZvIC5pdC1pbnRyby0tZnVsbHdpZHRoIFtyb2xlPWJ1dHRvbl0sIC5pdC1pbnRyby0tZnVsbHdpZHRoIC53b29jb21tZXJjZSB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0IC5idXR0b24sIC53b29jb21tZXJjZSB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0IC5pdC1pbnRyby0tZnVsbHdpZHRoIC5idXR0b24sIC5oYXMtYmctZGFyayAud29vY29tbWVyY2UtY2FydCAud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jYXJ0LWZvcm0gdHI6bGFzdC1jaGlsZCAuYnV0dG9uLCAud29vY29tbWVyY2UtY2FydCAud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jYXJ0LWZvcm0gdHI6bGFzdC1jaGlsZCAuaGFzLWJnLWRhcmsgLmJ1dHRvbiwgLmhhcy1iZy1kYXJrIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtbWVzc2FnZSAuYnV0dG9uLCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW1lc3NhZ2UgLmhhcy1iZy1kYXJrIC5idXR0b24sXG4uaGFzLWJnLWRhcmsgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1tZXNzYWdlIFtyb2xlPWJ1dHRvbl0sXG4ud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW1lc3NhZ2UgLmhhcy1iZy1kYXJrIFtyb2xlPWJ1dHRvbl0sXG4uaGFzLWJnLWRhcmsgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1pbmZvIC5idXR0b24sXG4ud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWluZm8gLmhhcy1iZy1kYXJrIC5idXR0b24sXG4uaGFzLWJnLWRhcmsgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1pbmZvIFtyb2xlPWJ1dHRvbl0sXG4ud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWluZm8gLmhhcy1iZy1kYXJrIFtyb2xlPWJ1dHRvbl0sIC5oYXMtYmctZGFyayAud29vY29tbWVyY2UgdWwucHJvZHVjdHMgbGkucHJvZHVjdCAuYnV0dG9uLCAud29vY29tbWVyY2UgdWwucHJvZHVjdHMgbGkucHJvZHVjdCAuaGFzLWJnLWRhcmsgLmJ1dHRvbiB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0taXQtY29sb3Itd2hpdGUpO1xuICBjb2xvcjogdmFyKC0taXQtY29sb3Itd2hpdGUpO1xufVxuQG1lZGlhIChob3ZlcjogaG92ZXIpIHtcbiAgLml0LWludHJvLS1mdWxsd2lkdGggLndvb2NvbW1lcmNlLWNhcnQgLndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2FydC1mb3JtIHRyOmxhc3QtY2hpbGQgLmJ1dHRvbjpob3ZlciwgLndvb2NvbW1lcmNlLWNhcnQgLndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2FydC1mb3JtIHRyOmxhc3QtY2hpbGQgLml0LWludHJvLS1mdWxsd2lkdGggLmJ1dHRvbjpob3ZlciwgLml0LWludHJvLS1mdWxsd2lkdGggLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1tZXNzYWdlIC5idXR0b246aG92ZXIsIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtbWVzc2FnZSAuaXQtaW50cm8tLWZ1bGx3aWR0aCAuYnV0dG9uOmhvdmVyLFxuICAuaXQtaW50cm8tLWZ1bGx3aWR0aCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW1lc3NhZ2UgW3JvbGU9YnV0dG9uXTpob3ZlcixcbiAgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1tZXNzYWdlIC5pdC1pbnRyby0tZnVsbHdpZHRoIFtyb2xlPWJ1dHRvbl06aG92ZXIsXG4gIC5pdC1pbnRyby0tZnVsbHdpZHRoIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtaW5mbyAuYnV0dG9uOmhvdmVyLFxuICAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWluZm8gLml0LWludHJvLS1mdWxsd2lkdGggLmJ1dHRvbjpob3ZlcixcbiAgLml0LWludHJvLS1mdWxsd2lkdGggLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1pbmZvIFtyb2xlPWJ1dHRvbl06aG92ZXIsXG4gIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtaW5mbyAuaXQtaW50cm8tLWZ1bGx3aWR0aCBbcm9sZT1idXR0b25dOmhvdmVyLCAuaXQtaW50cm8tLWZ1bGx3aWR0aCAud29vY29tbWVyY2UgdWwucHJvZHVjdHMgbGkucHJvZHVjdCAuYnV0dG9uOmhvdmVyLCAud29vY29tbWVyY2UgdWwucHJvZHVjdHMgbGkucHJvZHVjdCAuaXQtaW50cm8tLWZ1bGx3aWR0aCAuYnV0dG9uOmhvdmVyLCAuaGFzLWJnLWRhcmsgLndvb2NvbW1lcmNlLWNhcnQgLndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2FydC1mb3JtIHRyOmxhc3QtY2hpbGQgLmJ1dHRvbjpob3ZlciwgLndvb2NvbW1lcmNlLWNhcnQgLndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2FydC1mb3JtIHRyOmxhc3QtY2hpbGQgLmhhcy1iZy1kYXJrIC5idXR0b246aG92ZXIsIC5oYXMtYmctZGFyayAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW1lc3NhZ2UgLmJ1dHRvbjpob3ZlciwgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1tZXNzYWdlIC5oYXMtYmctZGFyayAuYnV0dG9uOmhvdmVyLFxuICAuaGFzLWJnLWRhcmsgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1tZXNzYWdlIFtyb2xlPWJ1dHRvbl06aG92ZXIsXG4gIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtbWVzc2FnZSAuaGFzLWJnLWRhcmsgW3JvbGU9YnV0dG9uXTpob3ZlcixcbiAgLmhhcy1iZy1kYXJrIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtaW5mbyAuYnV0dG9uOmhvdmVyLFxuICAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWluZm8gLmhhcy1iZy1kYXJrIC5idXR0b246aG92ZXIsXG4gIC5oYXMtYmctZGFyayAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWluZm8gW3JvbGU9YnV0dG9uXTpob3ZlcixcbiAgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1pbmZvIC5oYXMtYmctZGFyayBbcm9sZT1idXR0b25dOmhvdmVyLCAuaGFzLWJnLWRhcmsgLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzIGxpLnByb2R1Y3QgLmJ1dHRvbjpob3ZlciwgLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzIGxpLnByb2R1Y3QgLmhhcy1iZy1kYXJrIC5idXR0b246aG92ZXIge1xuICAgIGNvbG9yOiB2YXIoLS1pdC1jb2xvci1icmFuZCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taXQtY29sb3Itd2hpdGUpO1xuICB9XG59XG5AbWVkaWEgKGhvdmVyOiBub25lKSB7XG4gIC5pdC1pbnRyby0tZnVsbHdpZHRoIC53b29jb21tZXJjZS1jYXJ0IC53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNhcnQtZm9ybSB0cjpsYXN0LWNoaWxkIC5idXR0b246YWN0aXZlLCAud29vY29tbWVyY2UtY2FydCAud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jYXJ0LWZvcm0gdHI6bGFzdC1jaGlsZCAuaXQtaW50cm8tLWZ1bGx3aWR0aCAuYnV0dG9uOmFjdGl2ZSwgLml0LWludHJvLS1mdWxsd2lkdGggLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1tZXNzYWdlIC5idXR0b246YWN0aXZlLCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW1lc3NhZ2UgLml0LWludHJvLS1mdWxsd2lkdGggLmJ1dHRvbjphY3RpdmUsXG4gIC5pdC1pbnRyby0tZnVsbHdpZHRoIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtbWVzc2FnZSBbcm9sZT1idXR0b25dOmFjdGl2ZSxcbiAgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1tZXNzYWdlIC5pdC1pbnRyby0tZnVsbHdpZHRoIFtyb2xlPWJ1dHRvbl06YWN0aXZlLFxuICAuaXQtaW50cm8tLWZ1bGx3aWR0aCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWluZm8gLmJ1dHRvbjphY3RpdmUsXG4gIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtaW5mbyAuaXQtaW50cm8tLWZ1bGx3aWR0aCAuYnV0dG9uOmFjdGl2ZSxcbiAgLml0LWludHJvLS1mdWxsd2lkdGggLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1pbmZvIFtyb2xlPWJ1dHRvbl06YWN0aXZlLFxuICAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWluZm8gLml0LWludHJvLS1mdWxsd2lkdGggW3JvbGU9YnV0dG9uXTphY3RpdmUsIC5pdC1pbnRyby0tZnVsbHdpZHRoIC53b29jb21tZXJjZSB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0IC5idXR0b246YWN0aXZlLCAud29vY29tbWVyY2UgdWwucHJvZHVjdHMgbGkucHJvZHVjdCAuaXQtaW50cm8tLWZ1bGx3aWR0aCAuYnV0dG9uOmFjdGl2ZSwgLmhhcy1iZy1kYXJrIC53b29jb21tZXJjZS1jYXJ0IC53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNhcnQtZm9ybSB0cjpsYXN0LWNoaWxkIC5idXR0b246YWN0aXZlLCAud29vY29tbWVyY2UtY2FydCAud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jYXJ0LWZvcm0gdHI6bGFzdC1jaGlsZCAuaGFzLWJnLWRhcmsgLmJ1dHRvbjphY3RpdmUsIC5oYXMtYmctZGFyayAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW1lc3NhZ2UgLmJ1dHRvbjphY3RpdmUsIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtbWVzc2FnZSAuaGFzLWJnLWRhcmsgLmJ1dHRvbjphY3RpdmUsXG4gIC5oYXMtYmctZGFyayAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW1lc3NhZ2UgW3JvbGU9YnV0dG9uXTphY3RpdmUsXG4gIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtbWVzc2FnZSAuaGFzLWJnLWRhcmsgW3JvbGU9YnV0dG9uXTphY3RpdmUsXG4gIC5oYXMtYmctZGFyayAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWluZm8gLmJ1dHRvbjphY3RpdmUsXG4gIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtaW5mbyAuaGFzLWJnLWRhcmsgLmJ1dHRvbjphY3RpdmUsXG4gIC5oYXMtYmctZGFyayAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWluZm8gW3JvbGU9YnV0dG9uXTphY3RpdmUsXG4gIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtaW5mbyAuaGFzLWJnLWRhcmsgW3JvbGU9YnV0dG9uXTphY3RpdmUsIC5oYXMtYmctZGFyayAud29vY29tbWVyY2UgdWwucHJvZHVjdHMgbGkucHJvZHVjdCAuYnV0dG9uOmFjdGl2ZSwgLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzIGxpLnByb2R1Y3QgLmhhcy1iZy1kYXJrIC5idXR0b246YWN0aXZlIHtcbiAgICBjb2xvcjogdmFyKC0taXQtY29sb3ItYnJhbmQpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWl0LWNvbG9yLXdoaXRlKTtcbiAgfVxufVxuLml0LWludHJvLS1mdWxsd2lkdGggLndvb2NvbW1lcmNlLWNhcnQgLndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2FydC1mb3JtIHRyOmxhc3QtY2hpbGQgLmJ1dHRvbjpmb2N1cy12aXNpYmxlLCAud29vY29tbWVyY2UtY2FydCAud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jYXJ0LWZvcm0gdHI6bGFzdC1jaGlsZCAuaXQtaW50cm8tLWZ1bGx3aWR0aCAuYnV0dG9uOmZvY3VzLXZpc2libGUsIC5pdC1pbnRyby0tZnVsbHdpZHRoIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtbWVzc2FnZSAuYnV0dG9uOmZvY3VzLXZpc2libGUsIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtbWVzc2FnZSAuaXQtaW50cm8tLWZ1bGx3aWR0aCAuYnV0dG9uOmZvY3VzLXZpc2libGUsXG4uaXQtaW50cm8tLWZ1bGx3aWR0aCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW1lc3NhZ2UgW3JvbGU9YnV0dG9uXTpmb2N1cy12aXNpYmxlLFxuLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1tZXNzYWdlIC5pdC1pbnRyby0tZnVsbHdpZHRoIFtyb2xlPWJ1dHRvbl06Zm9jdXMtdmlzaWJsZSxcbi5pdC1pbnRyby0tZnVsbHdpZHRoIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtaW5mbyAuYnV0dG9uOmZvY3VzLXZpc2libGUsXG4ud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWluZm8gLml0LWludHJvLS1mdWxsd2lkdGggLmJ1dHRvbjpmb2N1cy12aXNpYmxlLFxuLml0LWludHJvLS1mdWxsd2lkdGggLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1pbmZvIFtyb2xlPWJ1dHRvbl06Zm9jdXMtdmlzaWJsZSxcbi53b29jb21tZXJjZSAud29vY29tbWVyY2UtaW5mbyAuaXQtaW50cm8tLWZ1bGx3aWR0aCBbcm9sZT1idXR0b25dOmZvY3VzLXZpc2libGUsIC5pdC1pbnRyby0tZnVsbHdpZHRoIC53b29jb21tZXJjZSB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0IC5idXR0b246Zm9jdXMtdmlzaWJsZSwgLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzIGxpLnByb2R1Y3QgLml0LWludHJvLS1mdWxsd2lkdGggLmJ1dHRvbjpmb2N1cy12aXNpYmxlLCAuaGFzLWJnLWRhcmsgLndvb2NvbW1lcmNlLWNhcnQgLndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2FydC1mb3JtIHRyOmxhc3QtY2hpbGQgLmJ1dHRvbjpmb2N1cy12aXNpYmxlLCAud29vY29tbWVyY2UtY2FydCAud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jYXJ0LWZvcm0gdHI6bGFzdC1jaGlsZCAuaGFzLWJnLWRhcmsgLmJ1dHRvbjpmb2N1cy12aXNpYmxlLCAuaGFzLWJnLWRhcmsgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1tZXNzYWdlIC5idXR0b246Zm9jdXMtdmlzaWJsZSwgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1tZXNzYWdlIC5oYXMtYmctZGFyayAuYnV0dG9uOmZvY3VzLXZpc2libGUsXG4uaGFzLWJnLWRhcmsgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1tZXNzYWdlIFtyb2xlPWJ1dHRvbl06Zm9jdXMtdmlzaWJsZSxcbi53b29jb21tZXJjZSAud29vY29tbWVyY2UtbWVzc2FnZSAuaGFzLWJnLWRhcmsgW3JvbGU9YnV0dG9uXTpmb2N1cy12aXNpYmxlLFxuLmhhcy1iZy1kYXJrIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtaW5mbyAuYnV0dG9uOmZvY3VzLXZpc2libGUsXG4ud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWluZm8gLmhhcy1iZy1kYXJrIC5idXR0b246Zm9jdXMtdmlzaWJsZSxcbi5oYXMtYmctZGFyayAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWluZm8gW3JvbGU9YnV0dG9uXTpmb2N1cy12aXNpYmxlLFxuLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1pbmZvIC5oYXMtYmctZGFyayBbcm9sZT1idXR0b25dOmZvY3VzLXZpc2libGUsIC5oYXMtYmctZGFyayAud29vY29tbWVyY2UgdWwucHJvZHVjdHMgbGkucHJvZHVjdCAuYnV0dG9uOmZvY3VzLXZpc2libGUsIC53b29jb21tZXJjZSB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0IC5oYXMtYmctZGFyayAuYnV0dG9uOmZvY3VzLXZpc2libGUge1xuICBvdXRsaW5lLWNvbG9yOiB2YXIoLS1pdC1jb2xvci13aGl0ZSk7XG59XG4uaXQtaW50cm8tLWZ1bGx3aWR0aCAud29vY29tbWVyY2UtY2FydCAud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jYXJ0LWZvcm0gdHI6bGFzdC1jaGlsZCAuaXMtZGlzYWJsZWQuYnV0dG9uLCAud29vY29tbWVyY2UtY2FydCAud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jYXJ0LWZvcm0gdHI6bGFzdC1jaGlsZCAuaXQtaW50cm8tLWZ1bGx3aWR0aCAuaXMtZGlzYWJsZWQuYnV0dG9uLCAuaXQtaW50cm8tLWZ1bGx3aWR0aCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW1lc3NhZ2UgLmlzLWRpc2FibGVkLmJ1dHRvbiwgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1tZXNzYWdlIC5pdC1pbnRyby0tZnVsbHdpZHRoIC5pcy1kaXNhYmxlZC5idXR0b24sXG4uaXQtaW50cm8tLWZ1bGx3aWR0aCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW1lc3NhZ2UgLmlzLWRpc2FibGVkW3JvbGU9YnV0dG9uXSxcbi53b29jb21tZXJjZSAud29vY29tbWVyY2UtbWVzc2FnZSAuaXQtaW50cm8tLWZ1bGx3aWR0aCAuaXMtZGlzYWJsZWRbcm9sZT1idXR0b25dLFxuLml0LWludHJvLS1mdWxsd2lkdGggLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1pbmZvIC5pcy1kaXNhYmxlZC5idXR0b24sXG4ud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWluZm8gLml0LWludHJvLS1mdWxsd2lkdGggLmlzLWRpc2FibGVkLmJ1dHRvbixcbi5pdC1pbnRyby0tZnVsbHdpZHRoIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtaW5mbyAuaXMtZGlzYWJsZWRbcm9sZT1idXR0b25dLFxuLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1pbmZvIC5pdC1pbnRyby0tZnVsbHdpZHRoIC5pcy1kaXNhYmxlZFtyb2xlPWJ1dHRvbl0sIC5pdC1pbnRyby0tZnVsbHdpZHRoIC53b29jb21tZXJjZSB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0IC5pcy1kaXNhYmxlZC5idXR0b24sIC53b29jb21tZXJjZSB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0IC5pdC1pbnRyby0tZnVsbHdpZHRoIC5pcy1kaXNhYmxlZC5idXR0b24sIC5pdC1pbnRyby0tZnVsbHdpZHRoIC53b29jb21tZXJjZS1jYXJ0IC53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNhcnQtZm9ybSB0cjpsYXN0LWNoaWxkIC5pcy1sb2FkaW5nLmJ1dHRvbiwgLndvb2NvbW1lcmNlLWNhcnQgLndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2FydC1mb3JtIHRyOmxhc3QtY2hpbGQgLml0LWludHJvLS1mdWxsd2lkdGggLmlzLWxvYWRpbmcuYnV0dG9uLCAuaXQtaW50cm8tLWZ1bGx3aWR0aCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW1lc3NhZ2UgLmlzLWxvYWRpbmcuYnV0dG9uLCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW1lc3NhZ2UgLml0LWludHJvLS1mdWxsd2lkdGggLmlzLWxvYWRpbmcuYnV0dG9uLFxuLml0LWludHJvLS1mdWxsd2lkdGggLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1tZXNzYWdlIC5pcy1sb2FkaW5nW3JvbGU9YnV0dG9uXSxcbi53b29jb21tZXJjZSAud29vY29tbWVyY2UtbWVzc2FnZSAuaXQtaW50cm8tLWZ1bGx3aWR0aCAuaXMtbG9hZGluZ1tyb2xlPWJ1dHRvbl0sXG4uaXQtaW50cm8tLWZ1bGx3aWR0aCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWluZm8gLmlzLWxvYWRpbmcuYnV0dG9uLFxuLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1pbmZvIC5pdC1pbnRyby0tZnVsbHdpZHRoIC5pcy1sb2FkaW5nLmJ1dHRvbixcbi5pdC1pbnRyby0tZnVsbHdpZHRoIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtaW5mbyAuaXMtbG9hZGluZ1tyb2xlPWJ1dHRvbl0sXG4ud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWluZm8gLml0LWludHJvLS1mdWxsd2lkdGggLmlzLWxvYWRpbmdbcm9sZT1idXR0b25dLCAuaXQtaW50cm8tLWZ1bGx3aWR0aCAud29vY29tbWVyY2UgdWwucHJvZHVjdHMgbGkucHJvZHVjdCAuaXMtbG9hZGluZy5idXR0b24sIC53b29jb21tZXJjZSB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0IC5pdC1pbnRyby0tZnVsbHdpZHRoIC5pcy1sb2FkaW5nLmJ1dHRvbiwgLmhhcy1iZy1kYXJrIC53b29jb21tZXJjZS1jYXJ0IC53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNhcnQtZm9ybSB0cjpsYXN0LWNoaWxkIC5pcy1kaXNhYmxlZC5idXR0b24sIC53b29jb21tZXJjZS1jYXJ0IC53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNhcnQtZm9ybSB0cjpsYXN0LWNoaWxkIC5oYXMtYmctZGFyayAuaXMtZGlzYWJsZWQuYnV0dG9uLCAuaGFzLWJnLWRhcmsgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1tZXNzYWdlIC5pcy1kaXNhYmxlZC5idXR0b24sIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtbWVzc2FnZSAuaGFzLWJnLWRhcmsgLmlzLWRpc2FibGVkLmJ1dHRvbixcbi5oYXMtYmctZGFyayAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW1lc3NhZ2UgLmlzLWRpc2FibGVkW3JvbGU9YnV0dG9uXSxcbi53b29jb21tZXJjZSAud29vY29tbWVyY2UtbWVzc2FnZSAuaGFzLWJnLWRhcmsgLmlzLWRpc2FibGVkW3JvbGU9YnV0dG9uXSxcbi5oYXMtYmctZGFyayAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWluZm8gLmlzLWRpc2FibGVkLmJ1dHRvbixcbi53b29jb21tZXJjZSAud29vY29tbWVyY2UtaW5mbyAuaGFzLWJnLWRhcmsgLmlzLWRpc2FibGVkLmJ1dHRvbixcbi5oYXMtYmctZGFyayAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWluZm8gLmlzLWRpc2FibGVkW3JvbGU9YnV0dG9uXSxcbi53b29jb21tZXJjZSAud29vY29tbWVyY2UtaW5mbyAuaGFzLWJnLWRhcmsgLmlzLWRpc2FibGVkW3JvbGU9YnV0dG9uXSwgLmhhcy1iZy1kYXJrIC53b29jb21tZXJjZSB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0IC5pcy1kaXNhYmxlZC5idXR0b24sIC53b29jb21tZXJjZSB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0IC5oYXMtYmctZGFyayAuaXMtZGlzYWJsZWQuYnV0dG9uLCAuaGFzLWJnLWRhcmsgLndvb2NvbW1lcmNlLWNhcnQgLndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2FydC1mb3JtIHRyOmxhc3QtY2hpbGQgLmlzLWxvYWRpbmcuYnV0dG9uLCAud29vY29tbWVyY2UtY2FydCAud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jYXJ0LWZvcm0gdHI6bGFzdC1jaGlsZCAuaGFzLWJnLWRhcmsgLmlzLWxvYWRpbmcuYnV0dG9uLCAuaGFzLWJnLWRhcmsgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1tZXNzYWdlIC5pcy1sb2FkaW5nLmJ1dHRvbiwgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1tZXNzYWdlIC5oYXMtYmctZGFyayAuaXMtbG9hZGluZy5idXR0b24sXG4uaGFzLWJnLWRhcmsgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1tZXNzYWdlIC5pcy1sb2FkaW5nW3JvbGU9YnV0dG9uXSxcbi53b29jb21tZXJjZSAud29vY29tbWVyY2UtbWVzc2FnZSAuaGFzLWJnLWRhcmsgLmlzLWxvYWRpbmdbcm9sZT1idXR0b25dLFxuLmhhcy1iZy1kYXJrIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtaW5mbyAuaXMtbG9hZGluZy5idXR0b24sXG4ud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWluZm8gLmhhcy1iZy1kYXJrIC5pcy1sb2FkaW5nLmJ1dHRvbixcbi5oYXMtYmctZGFyayAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWluZm8gLmlzLWxvYWRpbmdbcm9sZT1idXR0b25dLFxuLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1pbmZvIC5oYXMtYmctZGFyayAuaXMtbG9hZGluZ1tyb2xlPWJ1dHRvbl0sIC5oYXMtYmctZGFyayAud29vY29tbWVyY2UgdWwucHJvZHVjdHMgbGkucHJvZHVjdCAuaXMtbG9hZGluZy5idXR0b24sIC53b29jb21tZXJjZSB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0IC5oYXMtYmctZGFyayAuaXMtbG9hZGluZy5idXR0b24ge1xuICBjb2xvcjogdmFyKC0taXQtY29sb3ItYnJhbmQtZ3JleWVkKTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1pdC1jb2xvci1icmFuZC1ncmV5ZWQpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pdC1jb2xvci1iYWNrZ3JvdW5kKTtcbn1cbi5pdC1pbnRyby0tZnVsbHdpZHRoIC53b29jb21tZXJjZS1jYXJ0IC53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNhcnQtZm9ybSB0cjpsYXN0LWNoaWxkIC5pcy1kaXNhYmxlZC5idXR0b246Zm9jdXMtdmlzaWJsZSwgLndvb2NvbW1lcmNlLWNhcnQgLndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2FydC1mb3JtIHRyOmxhc3QtY2hpbGQgLml0LWludHJvLS1mdWxsd2lkdGggLmlzLWRpc2FibGVkLmJ1dHRvbjpmb2N1cy12aXNpYmxlLCAuaXQtaW50cm8tLWZ1bGx3aWR0aCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW1lc3NhZ2UgLmlzLWRpc2FibGVkLmJ1dHRvbjpmb2N1cy12aXNpYmxlLCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW1lc3NhZ2UgLml0LWludHJvLS1mdWxsd2lkdGggLmlzLWRpc2FibGVkLmJ1dHRvbjpmb2N1cy12aXNpYmxlLFxuLml0LWludHJvLS1mdWxsd2lkdGggLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1tZXNzYWdlIC5pcy1kaXNhYmxlZFtyb2xlPWJ1dHRvbl06Zm9jdXMtdmlzaWJsZSxcbi53b29jb21tZXJjZSAud29vY29tbWVyY2UtbWVzc2FnZSAuaXQtaW50cm8tLWZ1bGx3aWR0aCAuaXMtZGlzYWJsZWRbcm9sZT1idXR0b25dOmZvY3VzLXZpc2libGUsXG4uaXQtaW50cm8tLWZ1bGx3aWR0aCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWluZm8gLmlzLWRpc2FibGVkLmJ1dHRvbjpmb2N1cy12aXNpYmxlLFxuLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1pbmZvIC5pdC1pbnRyby0tZnVsbHdpZHRoIC5pcy1kaXNhYmxlZC5idXR0b246Zm9jdXMtdmlzaWJsZSxcbi5pdC1pbnRyby0tZnVsbHdpZHRoIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtaW5mbyAuaXMtZGlzYWJsZWRbcm9sZT1idXR0b25dOmZvY3VzLXZpc2libGUsXG4ud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWluZm8gLml0LWludHJvLS1mdWxsd2lkdGggLmlzLWRpc2FibGVkW3JvbGU9YnV0dG9uXTpmb2N1cy12aXNpYmxlLCAuaXQtaW50cm8tLWZ1bGx3aWR0aCAud29vY29tbWVyY2UgdWwucHJvZHVjdHMgbGkucHJvZHVjdCAuaXMtZGlzYWJsZWQuYnV0dG9uOmZvY3VzLXZpc2libGUsIC53b29jb21tZXJjZSB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0IC5pdC1pbnRyby0tZnVsbHdpZHRoIC5pcy1kaXNhYmxlZC5idXR0b246Zm9jdXMtdmlzaWJsZSwgLml0LWludHJvLS1mdWxsd2lkdGggLndvb2NvbW1lcmNlLWNhcnQgLndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2FydC1mb3JtIHRyOmxhc3QtY2hpbGQgLmlzLWxvYWRpbmcuYnV0dG9uOmZvY3VzLXZpc2libGUsIC53b29jb21tZXJjZS1jYXJ0IC53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNhcnQtZm9ybSB0cjpsYXN0LWNoaWxkIC5pdC1pbnRyby0tZnVsbHdpZHRoIC5pcy1sb2FkaW5nLmJ1dHRvbjpmb2N1cy12aXNpYmxlLCAuaXQtaW50cm8tLWZ1bGx3aWR0aCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW1lc3NhZ2UgLmlzLWxvYWRpbmcuYnV0dG9uOmZvY3VzLXZpc2libGUsIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtbWVzc2FnZSAuaXQtaW50cm8tLWZ1bGx3aWR0aCAuaXMtbG9hZGluZy5idXR0b246Zm9jdXMtdmlzaWJsZSxcbi5pdC1pbnRyby0tZnVsbHdpZHRoIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtbWVzc2FnZSAuaXMtbG9hZGluZ1tyb2xlPWJ1dHRvbl06Zm9jdXMtdmlzaWJsZSxcbi53b29jb21tZXJjZSAud29vY29tbWVyY2UtbWVzc2FnZSAuaXQtaW50cm8tLWZ1bGx3aWR0aCAuaXMtbG9hZGluZ1tyb2xlPWJ1dHRvbl06Zm9jdXMtdmlzaWJsZSxcbi5pdC1pbnRyby0tZnVsbHdpZHRoIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtaW5mbyAuaXMtbG9hZGluZy5idXR0b246Zm9jdXMtdmlzaWJsZSxcbi53b29jb21tZXJjZSAud29vY29tbWVyY2UtaW5mbyAuaXQtaW50cm8tLWZ1bGx3aWR0aCAuaXMtbG9hZGluZy5idXR0b246Zm9jdXMtdmlzaWJsZSxcbi5pdC1pbnRyby0tZnVsbHdpZHRoIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtaW5mbyAuaXMtbG9hZGluZ1tyb2xlPWJ1dHRvbl06Zm9jdXMtdmlzaWJsZSxcbi53b29jb21tZXJjZSAud29vY29tbWVyY2UtaW5mbyAuaXQtaW50cm8tLWZ1bGx3aWR0aCAuaXMtbG9hZGluZ1tyb2xlPWJ1dHRvbl06Zm9jdXMtdmlzaWJsZSwgLml0LWludHJvLS1mdWxsd2lkdGggLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzIGxpLnByb2R1Y3QgLmlzLWxvYWRpbmcuYnV0dG9uOmZvY3VzLXZpc2libGUsIC53b29jb21tZXJjZSB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0IC5pdC1pbnRyby0tZnVsbHdpZHRoIC5pcy1sb2FkaW5nLmJ1dHRvbjpmb2N1cy12aXNpYmxlLCAuaGFzLWJnLWRhcmsgLndvb2NvbW1lcmNlLWNhcnQgLndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2FydC1mb3JtIHRyOmxhc3QtY2hpbGQgLmlzLWRpc2FibGVkLmJ1dHRvbjpmb2N1cy12aXNpYmxlLCAud29vY29tbWVyY2UtY2FydCAud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jYXJ0LWZvcm0gdHI6bGFzdC1jaGlsZCAuaGFzLWJnLWRhcmsgLmlzLWRpc2FibGVkLmJ1dHRvbjpmb2N1cy12aXNpYmxlLCAuaGFzLWJnLWRhcmsgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1tZXNzYWdlIC5pcy1kaXNhYmxlZC5idXR0b246Zm9jdXMtdmlzaWJsZSwgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1tZXNzYWdlIC5oYXMtYmctZGFyayAuaXMtZGlzYWJsZWQuYnV0dG9uOmZvY3VzLXZpc2libGUsXG4uaGFzLWJnLWRhcmsgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1tZXNzYWdlIC5pcy1kaXNhYmxlZFtyb2xlPWJ1dHRvbl06Zm9jdXMtdmlzaWJsZSxcbi53b29jb21tZXJjZSAud29vY29tbWVyY2UtbWVzc2FnZSAuaGFzLWJnLWRhcmsgLmlzLWRpc2FibGVkW3JvbGU9YnV0dG9uXTpmb2N1cy12aXNpYmxlLFxuLmhhcy1iZy1kYXJrIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtaW5mbyAuaXMtZGlzYWJsZWQuYnV0dG9uOmZvY3VzLXZpc2libGUsXG4ud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWluZm8gLmhhcy1iZy1kYXJrIC5pcy1kaXNhYmxlZC5idXR0b246Zm9jdXMtdmlzaWJsZSxcbi5oYXMtYmctZGFyayAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWluZm8gLmlzLWRpc2FibGVkW3JvbGU9YnV0dG9uXTpmb2N1cy12aXNpYmxlLFxuLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1pbmZvIC5oYXMtYmctZGFyayAuaXMtZGlzYWJsZWRbcm9sZT1idXR0b25dOmZvY3VzLXZpc2libGUsIC5oYXMtYmctZGFyayAud29vY29tbWVyY2UgdWwucHJvZHVjdHMgbGkucHJvZHVjdCAuaXMtZGlzYWJsZWQuYnV0dG9uOmZvY3VzLXZpc2libGUsIC53b29jb21tZXJjZSB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0IC5oYXMtYmctZGFyayAuaXMtZGlzYWJsZWQuYnV0dG9uOmZvY3VzLXZpc2libGUsIC5oYXMtYmctZGFyayAud29vY29tbWVyY2UtY2FydCAud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jYXJ0LWZvcm0gdHI6bGFzdC1jaGlsZCAuaXMtbG9hZGluZy5idXR0b246Zm9jdXMtdmlzaWJsZSwgLndvb2NvbW1lcmNlLWNhcnQgLndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2FydC1mb3JtIHRyOmxhc3QtY2hpbGQgLmhhcy1iZy1kYXJrIC5pcy1sb2FkaW5nLmJ1dHRvbjpmb2N1cy12aXNpYmxlLCAuaGFzLWJnLWRhcmsgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1tZXNzYWdlIC5pcy1sb2FkaW5nLmJ1dHRvbjpmb2N1cy12aXNpYmxlLCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW1lc3NhZ2UgLmhhcy1iZy1kYXJrIC5pcy1sb2FkaW5nLmJ1dHRvbjpmb2N1cy12aXNpYmxlLFxuLmhhcy1iZy1kYXJrIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtbWVzc2FnZSAuaXMtbG9hZGluZ1tyb2xlPWJ1dHRvbl06Zm9jdXMtdmlzaWJsZSxcbi53b29jb21tZXJjZSAud29vY29tbWVyY2UtbWVzc2FnZSAuaGFzLWJnLWRhcmsgLmlzLWxvYWRpbmdbcm9sZT1idXR0b25dOmZvY3VzLXZpc2libGUsXG4uaGFzLWJnLWRhcmsgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1pbmZvIC5pcy1sb2FkaW5nLmJ1dHRvbjpmb2N1cy12aXNpYmxlLFxuLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1pbmZvIC5oYXMtYmctZGFyayAuaXMtbG9hZGluZy5idXR0b246Zm9jdXMtdmlzaWJsZSxcbi5oYXMtYmctZGFyayAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWluZm8gLmlzLWxvYWRpbmdbcm9sZT1idXR0b25dOmZvY3VzLXZpc2libGUsXG4ud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWluZm8gLmhhcy1iZy1kYXJrIC5pcy1sb2FkaW5nW3JvbGU9YnV0dG9uXTpmb2N1cy12aXNpYmxlLCAuaGFzLWJnLWRhcmsgLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzIGxpLnByb2R1Y3QgLmlzLWxvYWRpbmcuYnV0dG9uOmZvY3VzLXZpc2libGUsIC53b29jb21tZXJjZSB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0IC5oYXMtYmctZGFyayAuaXMtbG9hZGluZy5idXR0b246Zm9jdXMtdmlzaWJsZSB7XG4gIG91dGxpbmUtY29sb3I6IHZhcigtLWl0LWNvbG9yLWJyYW5kLWdyZXllZCk7XG59XG4ud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UtQWRkcmVzcy10aXRsZSAuZWRpdCwgLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0ICNjb250ZW50IGRpdi5wcm9kdWN0LnByb2R1Y3QtdHlwZS12YXJpYWJsZSBkaXYuc3VtbWFyeSAuY2FydCAudmFyaWF0aW9ucyAucmVzZXRfdmFyaWF0aW9ucyB7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogbm9uZTtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGNvbG9yOiB2YXIoLS1pdC1jb2xvci1icmFuZCk7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBib3JkZXItcmFkaXVzOiAwO1xuICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS1pdC10cmFuc2l0aW9uKTtcbn1cbi53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZS1BZGRyZXNzLXRpdGxlIC5lZGl0Om5vdCguaXMtbG9hZGluZyk6YWZ0ZXIsIC53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCAjY29udGVudCBkaXYucHJvZHVjdC5wcm9kdWN0LXR5cGUtdmFyaWFibGUgZGl2LnN1bW1hcnkgLmNhcnQgLnZhcmlhdGlvbnMgLnJlc2V0X3ZhcmlhdGlvbnM6bm90KC5pcy1sb2FkaW5nKTphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICB3aWR0aDogMS4xMjVyZW07XG4gIGhlaWdodDogMS4xMjVyZW07XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS1pdC10cmFuc2l0aW9uKTtcbiAgbWFzazogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyB3aWR0aD0nMTgnIGhlaWdodD0nMTgnIHZpZXdCb3g9JzAgMCAxOCAxOCcgZmlsbD0nbm9uZScgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyUzRSUzQ3BhdGggZmlsbC1ydWxlPSdldmVub2RkJyBjbGlwLXJ1bGU9J2V2ZW5vZGQnIGQ9J004Ljg0NDc1IDQuMzQ0NzVDOC43NzUwNCA0LjQxNDM0IDguNzE5NzQgNC40OTcgOC42ODIgNC41ODc5OEM4LjY0NDI3IDQuNjc4OTcgOC42MjQ4NSA0Ljc3NjUgOC42MjQ4NSA0Ljg3NUM4LjYyNDg1IDQuOTczNSA4LjY0NDI3IDUuMDcxMDQgOC42ODIgNS4xNjIwMkM4LjcxOTc0IDUuMjUzMDEgOC43NzUwNCA1LjMzNTY2IDguODQ0NzUgNS40MDUyNUwxMS42ODk1IDguMjVINC41QzQuMzAxMDkgOC4yNSA0LjExMDMyIDguMzI5MDIgMy45Njk2NyA4LjQ2OTY3QzMuODI5MDIgOC42MTAzMiAzLjc1IDguODAxMDkgMy43NSA5QzMuNzUgOS4xOTg5MSAzLjgyOTAyIDkuMzg5NjggMy45Njk2NyA5LjUzMDMzQzQuMTEwMzIgOS42NzA5OCA0LjMwMTA5IDkuNzUgNC41IDkuNzVIMTEuNjg5NUw4Ljg0NDc1IDEyLjU5NDhDOC43NzUwNCAxMi42NjQzIDguNzE5NzQgMTIuNzQ3IDguNjgyIDEyLjgzOEM4LjY0NDI3IDEyLjkyOSA4LjYyNDg1IDEzLjAyNjUgOC42MjQ4NSAxMy4xMjVDOC42MjQ4NSAxMy4yMjM1IDguNjQ0MjcgMTMuMzIxIDguNjgyIDEzLjQxMkM4LjcxOTc0IDEzLjUwMyA4Ljc3NTA0IDEzLjU4NTcgOC44NDQ3NSAxMy42NTUzQzkuMTM3MjUgMTMuOTQ3OCA5LjYxMjc1IDEzLjk0NzggOS45MDYgMTMuNjU1M0wxNC4wMzAyIDkuNTMwMjVDMTQuMTY2MSA5LjM5NDk1IDE0LjI0NDcgOS4yMTI2NSAxNC4yNSA5LjAyMVY4Ljk3ODI1QzE0LjI0NDYgOC43ODY4NSAxNC4xNjYgOC42MDQ4MiAxNC4wMzAyIDguNDY5NzVMOS45MDYgNC4zNDQ3NUM5LjgzNjM0IDQuMjc1MDIgOS43NTM2MyA0LjIxOTcgOS42NjI1OCA0LjE4MTk2QzkuNTcxNTMgNC4xNDQyMSA5LjQ3Mzk0IDQuMTI0NzkgOS4zNzUzNyA0LjEyNDc5QzkuMjc2ODEgNC4xMjQ3OSA5LjE3OTIyIDQuMTQ0MjEgOS4wODgxNyA0LjE4MTk2QzguOTk3MTIgNC4yMTk3IDguOTE0NCA0LjI3NTAyIDguODQ0NzUgNC4zNDQ3NVonIGZpbGw9JyUyMzI1NDQ1QScvJTNFJTNDL3N2ZyUzRSUwQVwiKSBuby1yZXBlYXQgY2VudGVyO1xuICBtYXNrLXNpemU6IGNvbnRhaW47XG4gIGJhY2tncm91bmQtY29sb3I6IGN1cnJlbnRjb2xvcjtcbn1cbi53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZS1BZGRyZXNzLXRpdGxlIC5lZGl0Om5vdCguaXMtbG9hZGluZyk6aG92ZXI6YWZ0ZXIsIC53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCAjY29udGVudCBkaXYucHJvZHVjdC5wcm9kdWN0LXR5cGUtdmFyaWFibGUgZGl2LnN1bW1hcnkgLmNhcnQgLnZhcmlhdGlvbnMgLnJlc2V0X3ZhcmlhdGlvbnM6bm90KC5pcy1sb2FkaW5nKTpob3ZlcjphZnRlciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwLjM3NXJlbSk7XG59XG4ud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UtQWRkcmVzcy10aXRsZSAuZWRpdDpmb2N1cy12aXNpYmxlLCAud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgI2NvbnRlbnQgZGl2LnByb2R1Y3QucHJvZHVjdC10eXBlLXZhcmlhYmxlIGRpdi5zdW1tYXJ5IC5jYXJ0IC52YXJpYXRpb25zIC5yZXNldF92YXJpYXRpb25zOmZvY3VzLXZpc2libGUge1xuICBvdXRsaW5lOiBub25lO1xufVxuLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlLUFkZHJlc3MtdGl0bGUgLmVkaXQ6Zm9jdXMtdmlzaWJsZTpiZWZvcmUsIC53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCAjY29udGVudCBkaXYucHJvZHVjdC5wcm9kdWN0LXR5cGUtdmFyaWFibGUgZGl2LnN1bW1hcnkgLmNhcnQgLnZhcmlhdGlvbnMgLnJlc2V0X3ZhcmlhdGlvbnM6Zm9jdXMtdmlzaWJsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICB3aWR0aDogY2FsYygxMDAlIC0gMS42MjVyZW0pO1xuICBoZWlnaHQ6IDJweDtcbiAgYmFja2dyb3VuZDogdmFyKC0taXQtY29sb3ItYnJhbmQpO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIGJvdHRvbTogMDtcbn1cbi53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZS1BZGRyZXNzLXRpdGxlIC5pcy1kaXNhYmxlZC5lZGl0LCAud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgI2NvbnRlbnQgZGl2LnByb2R1Y3QucHJvZHVjdC10eXBlLXZhcmlhYmxlIGRpdi5zdW1tYXJ5IC5jYXJ0IC52YXJpYXRpb25zIC5pcy1kaXNhYmxlZC5yZXNldF92YXJpYXRpb25zLCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UtQWRkcmVzcy10aXRsZSAuaXMtbG9hZGluZy5lZGl0LCAud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgI2NvbnRlbnQgZGl2LnByb2R1Y3QucHJvZHVjdC10eXBlLXZhcmlhYmxlIGRpdi5zdW1tYXJ5IC5jYXJ0IC52YXJpYXRpb25zIC5pcy1sb2FkaW5nLnJlc2V0X3ZhcmlhdGlvbnMge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cbi53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZS1BZGRyZXNzLXRpdGxlIC5pcy1kaXNhYmxlZC5lZGl0Om5vdCguaXMtbG9hZGluZyksIC53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCAjY29udGVudCBkaXYucHJvZHVjdC5wcm9kdWN0LXR5cGUtdmFyaWFibGUgZGl2LnN1bW1hcnkgLmNhcnQgLnZhcmlhdGlvbnMgLmlzLWRpc2FibGVkLnJlc2V0X3ZhcmlhdGlvbnM6bm90KC5pcy1sb2FkaW5nKSwgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlLUFkZHJlc3MtdGl0bGUgLmlzLWxvYWRpbmcuZWRpdDpub3QoLmlzLWxvYWRpbmcpLCAud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgI2NvbnRlbnQgZGl2LnByb2R1Y3QucHJvZHVjdC10eXBlLXZhcmlhYmxlIGRpdi5zdW1tYXJ5IC5jYXJ0IC52YXJpYXRpb25zIC5pcy1sb2FkaW5nLnJlc2V0X3ZhcmlhdGlvbnM6bm90KC5pcy1sb2FkaW5nKSB7XG4gIGNvbG9yOiB2YXIoLS1pdC1jb2xvci1ib3JkZXIpO1xufVxuLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlLUFkZHJlc3MtdGl0bGUgLmlzLWRpc2FibGVkLmVkaXQ6bm90KC5pcy1sb2FkaW5nKTpmb2N1cy12aXNpYmxlOmJlZm9yZSwgLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0ICNjb250ZW50IGRpdi5wcm9kdWN0LnByb2R1Y3QtdHlwZS12YXJpYWJsZSBkaXYuc3VtbWFyeSAuY2FydCAudmFyaWF0aW9ucyAuaXMtZGlzYWJsZWQucmVzZXRfdmFyaWF0aW9uczpub3QoLmlzLWxvYWRpbmcpOmZvY3VzLXZpc2libGU6YmVmb3JlLCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UtQWRkcmVzcy10aXRsZSAuaXMtbG9hZGluZy5lZGl0Om5vdCguaXMtbG9hZGluZyk6Zm9jdXMtdmlzaWJsZTpiZWZvcmUsIC53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCAjY29udGVudCBkaXYucHJvZHVjdC5wcm9kdWN0LXR5cGUtdmFyaWFibGUgZGl2LnN1bW1hcnkgLmNhcnQgLnZhcmlhdGlvbnMgLmlzLWxvYWRpbmcucmVzZXRfdmFyaWF0aW9uczpub3QoLmlzLWxvYWRpbmcpOmZvY3VzLXZpc2libGU6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taXQtY29sb3ItYm9yZGVyKTtcbn1cbi5pdC1pbnRyby0tZnVsbHdpZHRoIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZS1BZGRyZXNzLXRpdGxlIC5lZGl0LCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UtQWRkcmVzcy10aXRsZSAuaXQtaW50cm8tLWZ1bGx3aWR0aCAuZWRpdCwgLml0LWludHJvLS1mdWxsd2lkdGggLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0ICNjb250ZW50IGRpdi5wcm9kdWN0LnByb2R1Y3QtdHlwZS12YXJpYWJsZSBkaXYuc3VtbWFyeSAuY2FydCAudmFyaWF0aW9ucyAucmVzZXRfdmFyaWF0aW9ucywgLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0ICNjb250ZW50IGRpdi5wcm9kdWN0LnByb2R1Y3QtdHlwZS12YXJpYWJsZSBkaXYuc3VtbWFyeSAuY2FydCAudmFyaWF0aW9ucyAuaXQtaW50cm8tLWZ1bGx3aWR0aCAucmVzZXRfdmFyaWF0aW9ucywgLmhhcy1iZy1kYXJrIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZS1BZGRyZXNzLXRpdGxlIC5lZGl0LCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UtQWRkcmVzcy10aXRsZSAuaGFzLWJnLWRhcmsgLmVkaXQsIC5oYXMtYmctZGFyayAud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgI2NvbnRlbnQgZGl2LnByb2R1Y3QucHJvZHVjdC10eXBlLXZhcmlhYmxlIGRpdi5zdW1tYXJ5IC5jYXJ0IC52YXJpYXRpb25zIC5yZXNldF92YXJpYXRpb25zLCAud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgI2NvbnRlbnQgZGl2LnByb2R1Y3QucHJvZHVjdC10eXBlLXZhcmlhYmxlIGRpdi5zdW1tYXJ5IC5jYXJ0IC52YXJpYXRpb25zIC5oYXMtYmctZGFyayAucmVzZXRfdmFyaWF0aW9ucyB7XG4gIGNvbG9yOiB2YXIoLS1pdC1jb2xvci13aGl0ZSk7XG59XG4uaXQtaW50cm8tLWZ1bGx3aWR0aCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UtQWRkcmVzcy10aXRsZSAuZWRpdDpmb2N1cy12aXNpYmxlOmJlZm9yZSwgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlLUFkZHJlc3MtdGl0bGUgLml0LWludHJvLS1mdWxsd2lkdGggLmVkaXQ6Zm9jdXMtdmlzaWJsZTpiZWZvcmUsIC5pdC1pbnRyby0tZnVsbHdpZHRoIC53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCAjY29udGVudCBkaXYucHJvZHVjdC5wcm9kdWN0LXR5cGUtdmFyaWFibGUgZGl2LnN1bW1hcnkgLmNhcnQgLnZhcmlhdGlvbnMgLnJlc2V0X3ZhcmlhdGlvbnM6Zm9jdXMtdmlzaWJsZTpiZWZvcmUsIC53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCAjY29udGVudCBkaXYucHJvZHVjdC5wcm9kdWN0LXR5cGUtdmFyaWFibGUgZGl2LnN1bW1hcnkgLmNhcnQgLnZhcmlhdGlvbnMgLml0LWludHJvLS1mdWxsd2lkdGggLnJlc2V0X3ZhcmlhdGlvbnM6Zm9jdXMtdmlzaWJsZTpiZWZvcmUsIC5oYXMtYmctZGFyayAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UtQWRkcmVzcy10aXRsZSAuZWRpdDpmb2N1cy12aXNpYmxlOmJlZm9yZSwgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlLUFkZHJlc3MtdGl0bGUgLmhhcy1iZy1kYXJrIC5lZGl0OmZvY3VzLXZpc2libGU6YmVmb3JlLCAuaGFzLWJnLWRhcmsgLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0ICNjb250ZW50IGRpdi5wcm9kdWN0LnByb2R1Y3QtdHlwZS12YXJpYWJsZSBkaXYuc3VtbWFyeSAuY2FydCAudmFyaWF0aW9ucyAucmVzZXRfdmFyaWF0aW9uczpmb2N1cy12aXNpYmxlOmJlZm9yZSwgLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0ICNjb250ZW50IGRpdi5wcm9kdWN0LnByb2R1Y3QtdHlwZS12YXJpYWJsZSBkaXYuc3VtbWFyeSAuY2FydCAudmFyaWF0aW9ucyAuaGFzLWJnLWRhcmsgLnJlc2V0X3ZhcmlhdGlvbnM6Zm9jdXMtdmlzaWJsZTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1pdC1jb2xvci13aGl0ZSk7XG59XG4uYnV0dG9uLFxuLndjLWJsb2NrLWNvbXBvbmVudHMtYnV0dG9uLCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UtQWRkcmVzcy10aXRsZSAuZWRpdCwgLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0ICNjb250ZW50IGRpdi5wcm9kdWN0LnByb2R1Y3QtdHlwZS12YXJpYWJsZSBkaXYuc3VtbWFyeSAuY2FydCAudmFyaWF0aW9ucyAucmVzZXRfdmFyaWF0aW9ucywgLndvb2NvbW1lcmNlLWNhcnQgLndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2FydC1mb3JtIHRyOmxhc3QtY2hpbGQgLmJ1dHRvbiwgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1tZXNzYWdlIC5idXR0b24sXG4ud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW1lc3NhZ2UgW3JvbGU9YnV0dG9uXSxcbi53b29jb21tZXJjZSAud29vY29tbWVyY2UtaW5mbyAuYnV0dG9uLFxuLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1pbmZvIFtyb2xlPWJ1dHRvbl0sIC53b29jb21tZXJjZSB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0IC5idXR0b24sIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtZXJyb3IgLmJ1dHRvbiwgLndvb2NvbW1lcmNlLWNhcnQgLndvb2NvbW1lcmNlIC5jYXJ0LWNvbGxhdGVyYWxzIC5jYXJ0X3RvdGFscyAud2MtcHJvY2VlZC10by1jaGVja291dCAuY2hlY2tvdXQtYnV0dG9uLCAud29vY29tbWVyY2UtY2FydCAud29vY29tbWVyY2UgLnJldHVybi10by1zaG9wIC5idXR0b24sIC53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCAjY29udGVudCBkaXYucHJvZHVjdCBkaXYuc3VtbWFyeSAuY2FydCAuYnV0dG9uLCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgYnV0dG9uW3R5cGU9c3VibWl0XSxcbi53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSBpbnB1dFt0eXBlPXN1Ym1pdF0sXG4ud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgLmJ1dHRvbixcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgYnV0dG9uW3R5cGU9c3VibWl0XSxcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgaW5wdXRbdHlwZT1zdWJtaXRdLFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSAuYnV0dG9uLCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2Ugc2VjdGlvbiAuYnV0dG9uLFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSBzZWN0aW9uIC5idXR0b24ge1xuICAvKiAtLSBCdXR0b24gc2l6ZXMgLS0gKi9cbn1cbi53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCAjY29udGVudCBkaXYucHJvZHVjdC5wcm9kdWN0LXR5cGUtdmFyaWFibGUgZGl2LnN1bW1hcnkgLmNhcnQgLnZhcmlhdGlvbnMgLnJlc2V0X3ZhcmlhdGlvbnMsIC53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCAjY29udGVudCBkaXYucHJvZHVjdCBkaXYuc3VtbWFyeSAuY2FydCAuYnV0dG9uLCAuYnV5LW5vdywgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIHRhYmxlIC5idXR0b24sXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIHRhYmxlIC5idXR0b24sIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtZXJyb3IgLmJ1dHRvbiwgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1tZXNzYWdlIC5idXR0b24sXG4ud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW1lc3NhZ2UgW3JvbGU9YnV0dG9uXSxcbi53b29jb21tZXJjZSAud29vY29tbWVyY2UtaW5mbyAuYnV0dG9uLFxuLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1pbmZvIFtyb2xlPWJ1dHRvbl0sIC53b29zdy1saXN0IHRhYmxlLndvb3N3LWl0ZW1zIHRyLndvb3N3LWl0ZW0gLndvb3N3LWl0ZW0tLWFjdGlvbnMgLmJ1dHRvbiB7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBmb250LXNpemU6IHZhcigtLWl0LXNpemUteC1zbWFsbCk7XG4gIGxldHRlci1zcGFjaW5nOiAwLjFlbTtcbn1cbi53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCAjY29udGVudCBkaXYucHJvZHVjdC5wcm9kdWN0LXR5cGUtdmFyaWFibGUgZGl2LnN1bW1hcnkgLmNhcnQgLnZhcmlhdGlvbnMgLnJlc2V0X3ZhcmlhdGlvbnM6bm90KC5pdC1idXR0b24tLXRlcnRpYXJ5KSwgLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0ICNjb250ZW50IGRpdi5wcm9kdWN0IGRpdi5zdW1tYXJ5IC5jYXJ0IC5idXR0b246bm90KC5pdC1idXR0b24tLXRlcnRpYXJ5KSwgLmJ1eS1ub3c6bm90KC5pdC1idXR0b24tLXRlcnRpYXJ5KSwgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIHRhYmxlIC5idXR0b246bm90KC5pdC1idXR0b24tLXRlcnRpYXJ5KSxcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgdGFibGUgLmJ1dHRvbjpub3QoLml0LWJ1dHRvbi0tdGVydGlhcnkpLCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWVycm9yIC5idXR0b246bm90KC5pdC1idXR0b24tLXRlcnRpYXJ5KSwgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1tZXNzYWdlIC5idXR0b246bm90KC5pdC1idXR0b24tLXRlcnRpYXJ5KSxcbi53b29jb21tZXJjZSAud29vY29tbWVyY2UtbWVzc2FnZSBbcm9sZT1idXR0b25dOm5vdCguaXQtYnV0dG9uLS10ZXJ0aWFyeSksXG4ud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWluZm8gLmJ1dHRvbjpub3QoLml0LWJ1dHRvbi0tdGVydGlhcnkpLFxuLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1pbmZvIFtyb2xlPWJ1dHRvbl06bm90KC5pdC1idXR0b24tLXRlcnRpYXJ5KSwgLndvb3N3LWxpc3QgdGFibGUud29vc3ctaXRlbXMgdHIud29vc3ctaXRlbSAud29vc3ctaXRlbS0tYWN0aW9ucyAuYnV0dG9uOm5vdCguaXQtYnV0dG9uLS10ZXJ0aWFyeSkge1xuICBwYWRkaW5nOiAwLjVyZW0gMS43NXJlbTtcbn1cbi53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCAjY29udGVudCBkaXYucHJvZHVjdC5wcm9kdWN0LXR5cGUtdmFyaWFibGUgZGl2LnN1bW1hcnkgLmNhcnQgLnZhcmlhdGlvbnMgLmlzLWxvYWRpbmcucmVzZXRfdmFyaWF0aW9uczphZnRlciwgLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0ICNjb250ZW50IGRpdi5wcm9kdWN0IGRpdi5zdW1tYXJ5IC5jYXJ0IC5pcy1sb2FkaW5nLmJ1dHRvbjphZnRlciwgLmlzLWxvYWRpbmcuYnV5LW5vdzphZnRlciwgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIHRhYmxlIC5pcy1sb2FkaW5nLmJ1dHRvbjphZnRlcixcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgdGFibGUgLmlzLWxvYWRpbmcuYnV0dG9uOmFmdGVyLCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWVycm9yIC5pcy1sb2FkaW5nLmJ1dHRvbjphZnRlciwgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1tZXNzYWdlIC5pcy1sb2FkaW5nLmJ1dHRvbjphZnRlcixcbi53b29jb21tZXJjZSAud29vY29tbWVyY2UtbWVzc2FnZSAuaXMtbG9hZGluZ1tyb2xlPWJ1dHRvbl06YWZ0ZXIsXG4ud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWluZm8gLmlzLWxvYWRpbmcuYnV0dG9uOmFmdGVyLFxuLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1pbmZvIC5pcy1sb2FkaW5nW3JvbGU9YnV0dG9uXTphZnRlciwgLndvb3N3LWxpc3QgdGFibGUud29vc3ctaXRlbXMgdHIud29vc3ctaXRlbSAud29vc3ctaXRlbS0tYWN0aW9ucyAuaXMtbG9hZGluZy5idXR0b246YWZ0ZXIge1xuICB3aWR0aDogMXJlbTtcbiAgYmFja2dyb3VuZDogcmFkaWFsLWdyYWRpZW50KGZhcnRoZXN0LXNpZGUsIGN1cnJlbnRDb2xvciA5NCUsIHJnYmEoMCwgMCwgMCwgMCkpIHRvcC8ycHggMnB4IG5vLXJlcGVhdCwgY29uaWMtZ3JhZGllbnQocmdiYSgwLCAwLCAwLCAwKSAzMCUsIGN1cnJlbnRDb2xvcik7XG4gIC13ZWJraXQtbWFzazogcmFkaWFsLWdyYWRpZW50KGZhcnRoZXN0LXNpZGUsIHRyYW5zcGFyZW50IGNhbGMoMTAwJSAtIDJweCksICMwMDAgMCk7XG59XG4uYnV0dG9uLFxuLndjLWJsb2NrLWNvbXBvbmVudHMtYnV0dG9uLCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UtQWRkcmVzcy10aXRsZSAuZWRpdCwgLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0ICNjb250ZW50IGRpdi5wcm9kdWN0LnByb2R1Y3QtdHlwZS12YXJpYWJsZSBkaXYuc3VtbWFyeSAuY2FydCAudmFyaWF0aW9ucyAucmVzZXRfdmFyaWF0aW9ucywgLndvb2NvbW1lcmNlLWNhcnQgLndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2FydC1mb3JtIHRyOmxhc3QtY2hpbGQgLmJ1dHRvbiwgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1tZXNzYWdlIC5idXR0b24sXG4ud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW1lc3NhZ2UgW3JvbGU9YnV0dG9uXSxcbi53b29jb21tZXJjZSAud29vY29tbWVyY2UtaW5mbyAuYnV0dG9uLFxuLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1pbmZvIFtyb2xlPWJ1dHRvbl0sIC53b29jb21tZXJjZSB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0IC5idXR0b24sIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtZXJyb3IgLmJ1dHRvbiwgLndvb2NvbW1lcmNlLWNhcnQgLndvb2NvbW1lcmNlIC5jYXJ0LWNvbGxhdGVyYWxzIC5jYXJ0X3RvdGFscyAud2MtcHJvY2VlZC10by1jaGVja291dCAuY2hlY2tvdXQtYnV0dG9uLCAud29vY29tbWVyY2UtY2FydCAud29vY29tbWVyY2UgLnJldHVybi10by1zaG9wIC5idXR0b24sIC53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCAjY29udGVudCBkaXYucHJvZHVjdCBkaXYuc3VtbWFyeSAuY2FydCAuYnV0dG9uLCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgYnV0dG9uW3R5cGU9c3VibWl0XSxcbi53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSBpbnB1dFt0eXBlPXN1Ym1pdF0sXG4ud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgLmJ1dHRvbixcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgYnV0dG9uW3R5cGU9c3VibWl0XSxcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgaW5wdXRbdHlwZT1zdWJtaXRdLFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSAuYnV0dG9uLCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2Ugc2VjdGlvbiAuYnV0dG9uLFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSBzZWN0aW9uIC5idXR0b24ge1xuICAvKiAtLSBGdWxsIHdpZHRoIG9uIG1vYmlsZSAtLSAqL1xufVxuLmJ1dHRvbjpub3QoLml0LWJ1dHRvbi0tdGVydGlhcnkpOm5vdCguaGFzLWljb24pLFxuLndjLWJsb2NrLWNvbXBvbmVudHMtYnV0dG9uOm5vdCguaXQtYnV0dG9uLS10ZXJ0aWFyeSk6bm90KC5oYXMtaWNvbiksIC53b29jb21tZXJjZS1jYXJ0IC53b29jb21tZXJjZSAuY2FydC1jb2xsYXRlcmFscyAuY2FydF90b3RhbHMgLndjLXByb2NlZWQtdG8tY2hlY2tvdXQgLmNoZWNrb3V0LWJ1dHRvbjpub3QoLml0LWJ1dHRvbi0tdGVydGlhcnkpOm5vdCguaGFzLWljb24pLCAud29vY29tbWVyY2UtY2FydCAud29vY29tbWVyY2UgLnJldHVybi10by1zaG9wIC5idXR0b246bm90KC5pdC1idXR0b24tLXRlcnRpYXJ5KTpub3QoLmhhcy1pY29uKSwgLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0ICNjb250ZW50IGRpdi5wcm9kdWN0IGRpdi5zdW1tYXJ5IC5jYXJ0IC5idXR0b246bm90KC5pdC1idXR0b24tLXRlcnRpYXJ5KTpub3QoLmhhcy1pY29uKSwgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIGJ1dHRvblt0eXBlPXN1Ym1pdF06bm90KC5pdC1idXR0b24tLXRlcnRpYXJ5KTpub3QoLmhhcy1pY29uKSxcbi53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSBpbnB1dFt0eXBlPXN1Ym1pdF06bm90KC5pdC1idXR0b24tLXRlcnRpYXJ5KTpub3QoLmhhcy1pY29uKSxcbi53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSAuYnV0dG9uOm5vdCguaXQtYnV0dG9uLS10ZXJ0aWFyeSk6bm90KC5oYXMtaWNvbiksXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIGJ1dHRvblt0eXBlPXN1Ym1pdF06bm90KC5pdC1idXR0b24tLXRlcnRpYXJ5KTpub3QoLmhhcy1pY29uKSxcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgaW5wdXRbdHlwZT1zdWJtaXRdOm5vdCguaXQtYnV0dG9uLS10ZXJ0aWFyeSk6bm90KC5oYXMtaWNvbiksXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIC5idXR0b246bm90KC5pdC1idXR0b24tLXRlcnRpYXJ5KTpub3QoLmhhcy1pY29uKSwgLndvb2NvbW1lcmNlLWNhcnQgLndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2FydC1mb3JtIHRyOmxhc3QtY2hpbGQgLmJ1dHRvbjpub3QoLml0LWJ1dHRvbi0tdGVydGlhcnkpOm5vdCguaGFzLWljb24pLFxuLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1tZXNzYWdlIFtyb2xlPWJ1dHRvbl06bm90KC5pdC1idXR0b24tLXRlcnRpYXJ5KTpub3QoLmhhcy1pY29uKSxcbi53b29jb21tZXJjZSAud29vY29tbWVyY2UtaW5mbyBbcm9sZT1idXR0b25dOm5vdCguaXQtYnV0dG9uLS10ZXJ0aWFyeSk6bm90KC5oYXMtaWNvbiksIC53b29jb21tZXJjZSB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0IC5idXR0b246bm90KC5pdC1idXR0b24tLXRlcnRpYXJ5KTpub3QoLmhhcy1pY29uKSwgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlLUFkZHJlc3MtdGl0bGUgLmVkaXQ6bm90KC5pdC1idXR0b24tLXRlcnRpYXJ5KTpub3QoLmhhcy1pY29uKSwgLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0ICNjb250ZW50IGRpdi5wcm9kdWN0LnByb2R1Y3QtdHlwZS12YXJpYWJsZSBkaXYuc3VtbWFyeSAuY2FydCAudmFyaWF0aW9ucyAucmVzZXRfdmFyaWF0aW9uczpub3QoLml0LWJ1dHRvbi0tdGVydGlhcnkpOm5vdCguaGFzLWljb24pIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLmJ1dHRvbjpub3QoLml0LWJ1dHRvbi0tdGVydGlhcnkpOm5vdCguaGFzLWljb24pLFxuICAud2MtYmxvY2stY29tcG9uZW50cy1idXR0b246bm90KC5pdC1idXR0b24tLXRlcnRpYXJ5KTpub3QoLmhhcy1pY29uKSwgLndvb2NvbW1lcmNlLWNhcnQgLndvb2NvbW1lcmNlIC5jYXJ0LWNvbGxhdGVyYWxzIC5jYXJ0X3RvdGFscyAud2MtcHJvY2VlZC10by1jaGVja291dCAuY2hlY2tvdXQtYnV0dG9uOm5vdCguaXQtYnV0dG9uLS10ZXJ0aWFyeSk6bm90KC5oYXMtaWNvbiksIC53b29jb21tZXJjZS1jYXJ0IC53b29jb21tZXJjZSAucmV0dXJuLXRvLXNob3AgLmJ1dHRvbjpub3QoLml0LWJ1dHRvbi0tdGVydGlhcnkpOm5vdCguaGFzLWljb24pLCAud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgI2NvbnRlbnQgZGl2LnByb2R1Y3QgZGl2LnN1bW1hcnkgLmNhcnQgLmJ1dHRvbjpub3QoLml0LWJ1dHRvbi0tdGVydGlhcnkpOm5vdCguaGFzLWljb24pLCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgYnV0dG9uW3R5cGU9c3VibWl0XTpub3QoLml0LWJ1dHRvbi0tdGVydGlhcnkpOm5vdCguaGFzLWljb24pLFxuICAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgaW5wdXRbdHlwZT1zdWJtaXRdOm5vdCguaXQtYnV0dG9uLS10ZXJ0aWFyeSk6bm90KC5oYXMtaWNvbiksXG4gIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSAuYnV0dG9uOm5vdCguaXQtYnV0dG9uLS10ZXJ0aWFyeSk6bm90KC5oYXMtaWNvbiksXG4gIC53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgYnV0dG9uW3R5cGU9c3VibWl0XTpub3QoLml0LWJ1dHRvbi0tdGVydGlhcnkpOm5vdCguaGFzLWljb24pLFxuICAud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIGlucHV0W3R5cGU9c3VibWl0XTpub3QoLml0LWJ1dHRvbi0tdGVydGlhcnkpOm5vdCguaGFzLWljb24pLFxuICAud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIC5idXR0b246bm90KC5pdC1idXR0b24tLXRlcnRpYXJ5KTpub3QoLmhhcy1pY29uKSwgLndvb2NvbW1lcmNlLWNhcnQgLndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2FydC1mb3JtIHRyOmxhc3QtY2hpbGQgLmJ1dHRvbjpub3QoLml0LWJ1dHRvbi0tdGVydGlhcnkpOm5vdCguaGFzLWljb24pLFxuICAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW1lc3NhZ2UgW3JvbGU9YnV0dG9uXTpub3QoLml0LWJ1dHRvbi0tdGVydGlhcnkpOm5vdCguaGFzLWljb24pLFxuICAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWluZm8gW3JvbGU9YnV0dG9uXTpub3QoLml0LWJ1dHRvbi0tdGVydGlhcnkpOm5vdCguaGFzLWljb24pLCAud29vY29tbWVyY2UgdWwucHJvZHVjdHMgbGkucHJvZHVjdCAuYnV0dG9uOm5vdCguaXQtYnV0dG9uLS10ZXJ0aWFyeSk6bm90KC5oYXMtaWNvbiksIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZS1BZGRyZXNzLXRpdGxlIC5lZGl0Om5vdCguaXQtYnV0dG9uLS10ZXJ0aWFyeSk6bm90KC5oYXMtaWNvbiksIC53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCAjY29udGVudCBkaXYucHJvZHVjdC5wcm9kdWN0LXR5cGUtdmFyaWFibGUgZGl2LnN1bW1hcnkgLmNhcnQgLnZhcmlhdGlvbnMgLnJlc2V0X3ZhcmlhdGlvbnM6bm90KC5pdC1idXR0b24tLXRlcnRpYXJ5KTpub3QoLmhhcy1pY29uKSB7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbn1cblxuLmJ1dHRvbixcbi53Yy1ibG9jay1jb21wb25lbnRzLWJ1dHRvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50O1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgYm9yZGVyOiAxcHggc29saWQgIWltcG9ydGFudDtcbiAgZm9udC1zaXplOiB2YXIoLS1pdC1zaXplLXNtYWxsKTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHBhZGRpbmc6IDEuMjVyZW0gMS44NzVyZW07XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLWl0LXRyYW5zaXRpb24pLCBib3JkZXIgdmFyKC0taXQtdHJhbnNpdGlvbiksIGJhY2tncm91bmQgdmFyKC0taXQtdHJhbnNpdGlvbik7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IDAuNXJlbTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoNDhweCk7XG4gIGNvbG9yOiB2YXIoLS1pdC1jb2xvci10ZXh0KSAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICBib3JkZXItY29sb3I6IGN1cnJlbnRjb2xvcjtcbiAgYm94LXNoYWRvdzogMCA0cHggNHB4IDAgcmdiYSgzNCwgMzQsIDM0LCAwLjE0OTAxOTYwNzgpIGluc2V0ICFpbXBvcnRhbnQ7XG59XG4uYnV0dG9uID4gc3ZnLFxuLndjLWJsb2NrLWNvbXBvbmVudHMtYnV0dG9uID4gc3ZnIHtcbiAgY29sb3I6IGN1cnJlbnRjb2xvcjtcbn1cbi5idXR0b246aG92ZXIsXG4ud2MtYmxvY2stY29tcG9uZW50cy1idXR0b246aG92ZXIge1xuICBjb2xvcjogdmFyKC0taXQtY29sb3Itd2hpdGUpICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQ6IHZhcigtLWl0LWNvbG9yLXRleHQpICFpbXBvcnRhbnQ7XG59XG5cbi8qKlxuICogRG8gbm90IEB1c2UgZmlsZXMgd2l0aCBhY3R1YWwgc2NzcyBjb2RlIGluIHRoaXMgZmlsZSwgYXMgaXQgd2lsbCBjb21waWxlIGNzcyBjb2RlIHR3aWNlLlxuICogQXMgdGhpcyBmaWxlIGdvaW5nIHRvIGJlIGFuIHN0YW5kYWxvbmUgY3NzIGZpbGUuXG4gKi9cbi8qKlxuICogRG8gbm90IEB1c2UgZmlsZXMgd2l0aCBhY3R1YWwgc2NzcyBjb2RlIGluIHRoaXMgZmlsZSwgYXMgaXQgd2lsbCBjb21waWxlIGNzcyBjb2RlIHR3aWNlLlxuICogQXMgdGhpcyBmaWxlIGdvaW5nIHRvIGJlIGFuIHN0YW5kYWxvbmUgY3NzIGZpbGUuXG4gKi9cbi8qKlxuICogRG8gbm90IEB1c2UgZmlsZXMgd2l0aCBhY3R1YWwgc2NzcyBjb2RlIGluIHRoaXMgZmlsZSwgYXMgaXQgd2lsbCBjb21waWxlIGNzcyBjb2RlIHR3aWNlLlxuICogQXMgdGhpcyBmaWxlIGdvaW5nIHRvIGJlIGFuIHN0YW5kYWxvbmUgY3NzIGZpbGUuXG4gKi9cbkBrZXlmcmFtZXMgY2FydExpbmsge1xuICAwJSwgOTAlIHtcbiAgICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIH1cbiAgMTAwJSB7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuQGtleWZyYW1lcyBhZGRlZFN0YXRlIHtcbiAgMCUsIDkwJSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taXQtY29sb3ItYnJhbmQpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0taXQtY29sb3ItYnJhbmQpO1xuICAgIGNvbG9yOiB2YXIoLS1pdC1jb2xvci13aGl0ZSk7XG4gIH1cbiAgMTAwJSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taXQtY29sb3Itd2hpdGUpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0taXQtY29sb3ItYnJhbmQpO1xuICAgIGNvbG9yOiB2YXIoLS1pdC1jb2xvci1icmFuZCk7XG4gIH1cbn1cbkBrZXlmcmFtZXMgaWNvbkNoYW5nZSB7XG4gIDAlIHtcbiAgICBtYXNrOiB1cmwoXCIuLi9pbWcvd29vLWNoZWNrLnN2Z1wiKSBuby1yZXBlYXQgY2VudGVyL2NvbnRhaW47XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgfVxuICA1JSB7XG4gICAgbWFzazogdXJsKFwiLi4vaW1nL3dvby1jaGVjay5zdmdcIikgbm8tcmVwZWF0IGNlbnRlci9jb250YWluO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMS4yKTtcbiAgfVxuICAxMCUsIDkwJSB7XG4gICAgbWFzazogdXJsKFwiLi4vaW1nL3dvby1jaGVjay5zdmdcIikgbm8tcmVwZWF0IGNlbnRlci9jb250YWluO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cbiAgMTAwJSB7XG4gICAgbWFzazogdXJsKFwiLi4vaW1nL3dvby1jYXJ0LnN2Z1wiKSBuby1yZXBlYXQgY2VudGVyL2NvbnRhaW47XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxufVxuLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzIGxpLnByb2R1Y3QgLmFkZF90b19jYXJ0X2J1dHRvbi5idXR0b24sIC53b29zdy1saXN0IHRhYmxlLndvb3N3LWl0ZW1zIHRyLndvb3N3LWl0ZW0gLndvb3N3LWl0ZW0tLWFjdGlvbnMgLmFkZF90b19jYXJ0X2J1dHRvbi5idXR0b24sIC53b29jb21tZXJjZSB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0IC5wcm9kdWN0X3R5cGVfZXh0ZXJuYWwuYnV0dG9uLCAud29vc3ctbGlzdCB0YWJsZS53b29zdy1pdGVtcyB0ci53b29zdy1pdGVtIC53b29zdy1pdGVtLS1hY3Rpb25zIC5wcm9kdWN0X3R5cGVfZXh0ZXJuYWwuYnV0dG9uLCAud29vY29tbWVyY2UgdWwucHJvZHVjdHMgbGkucHJvZHVjdCAucHJvZHVjdF90eXBlX2dyb3VwZWQuYnV0dG9uLCAud29vc3ctbGlzdCB0YWJsZS53b29zdy1pdGVtcyB0ci53b29zdy1pdGVtIC53b29zdy1pdGVtLS1hY3Rpb25zIC5wcm9kdWN0X3R5cGVfZ3JvdXBlZC5idXR0b24sIC53b29jb21tZXJjZSB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0IC5wcm9kdWN0X291dF9vZl9zdG9jay5idXR0b24sIC53b29zdy1saXN0IHRhYmxlLndvb3N3LWl0ZW1zIHRyLndvb3N3LWl0ZW0gLndvb3N3LWl0ZW0tLWFjdGlvbnMgLnByb2R1Y3Rfb3V0X29mX3N0b2NrLmJ1dHRvbiB7XG4gIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcbn1cbi53b29jb21tZXJjZSB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0IC5hZGRfdG9fY2FydF9idXR0b24uYnV0dG9uOjphZnRlciwgLndvb3N3LWxpc3QgdGFibGUud29vc3ctaXRlbXMgdHIud29vc3ctaXRlbSAud29vc3ctaXRlbS0tYWN0aW9ucyAuYWRkX3RvX2NhcnRfYnV0dG9uLmJ1dHRvbjo6YWZ0ZXIsIC53b29jb21tZXJjZSB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0IC5wcm9kdWN0X3R5cGVfZXh0ZXJuYWwuYnV0dG9uOjphZnRlciwgLndvb3N3LWxpc3QgdGFibGUud29vc3ctaXRlbXMgdHIud29vc3ctaXRlbSAud29vc3ctaXRlbS0tYWN0aW9ucyAucHJvZHVjdF90eXBlX2V4dGVybmFsLmJ1dHRvbjo6YWZ0ZXIsIC53b29jb21tZXJjZSB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0IC5wcm9kdWN0X3R5cGVfZ3JvdXBlZC5idXR0b246OmFmdGVyLCAud29vc3ctbGlzdCB0YWJsZS53b29zdy1pdGVtcyB0ci53b29zdy1pdGVtIC53b29zdy1pdGVtLS1hY3Rpb25zIC5wcm9kdWN0X3R5cGVfZ3JvdXBlZC5idXR0b246OmFmdGVyLCAud29vY29tbWVyY2UgdWwucHJvZHVjdHMgbGkucHJvZHVjdCAucHJvZHVjdF9vdXRfb2Zfc3RvY2suYnV0dG9uOjphZnRlciwgLndvb3N3LWxpc3QgdGFibGUud29vc3ctaXRlbXMgdHIud29vc3ctaXRlbSAud29vc3ctaXRlbS0tYWN0aW9ucyAucHJvZHVjdF9vdXRfb2Zfc3RvY2suYnV0dG9uOjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBzdGF0aWMgIWltcG9ydGFudDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxLjI1cmVtO1xuICBoZWlnaHQ6IDEuMjVyZW07XG4gIG1hcmdpbjogMDtcbiAgYmFja2dyb3VuZDogY3VycmVudGNvbG9yO1xuICBtYXNrOiB1cmwoXCIuLi9pbWcvd29vLWNhcnQuc3ZnXCIpIG5vLXJlcGVhdCBjZW50ZXIvY29udGFpbjtcbn1cbi53b29jb21tZXJjZSB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0IC5hZGRfdG9fY2FydF9idXR0b24ubG9hZGluZy5idXR0b24sIC53b29zdy1saXN0IHRhYmxlLndvb3N3LWl0ZW1zIHRyLndvb3N3LWl0ZW0gLndvb3N3LWl0ZW0tLWFjdGlvbnMgLmFkZF90b19jYXJ0X2J1dHRvbi5sb2FkaW5nLmJ1dHRvbiwgLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzIGxpLnByb2R1Y3QgLmxvYWRpbmcucHJvZHVjdF90eXBlX2V4dGVybmFsLmJ1dHRvbiwgLndvb3N3LWxpc3QgdGFibGUud29vc3ctaXRlbXMgdHIud29vc3ctaXRlbSAud29vc3ctaXRlbS0tYWN0aW9ucyAubG9hZGluZy5wcm9kdWN0X3R5cGVfZXh0ZXJuYWwuYnV0dG9uLCAud29vY29tbWVyY2UgdWwucHJvZHVjdHMgbGkucHJvZHVjdCAubG9hZGluZy5wcm9kdWN0X3R5cGVfZ3JvdXBlZC5idXR0b24sIC53b29zdy1saXN0IHRhYmxlLndvb3N3LWl0ZW1zIHRyLndvb3N3LWl0ZW0gLndvb3N3LWl0ZW0tLWFjdGlvbnMgLmxvYWRpbmcucHJvZHVjdF90eXBlX2dyb3VwZWQuYnV0dG9uLCAud29vY29tbWVyY2UgdWwucHJvZHVjdHMgbGkucHJvZHVjdCAubG9hZGluZy5wcm9kdWN0X291dF9vZl9zdG9jay5idXR0b24sIC53b29zdy1saXN0IHRhYmxlLndvb3N3LWl0ZW1zIHRyLndvb3N3LWl0ZW0gLndvb3N3LWl0ZW0tLWFjdGlvbnMgLmxvYWRpbmcucHJvZHVjdF9vdXRfb2Zfc3RvY2suYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taXQtY29sb3ItYnJhbmQpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWl0LWNvbG9yLWJyYW5kKTtcbiAgY29sb3I6IHZhcigtLWl0LWNvbG9yLXdoaXRlKTtcbiAgb3BhY2l0eTogMTtcbn1cbi53b29jb21tZXJjZSB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0IC5hZGRfdG9fY2FydF9idXR0b24ubG9hZGluZy5idXR0b246OmFmdGVyLCAud29vc3ctbGlzdCB0YWJsZS53b29zdy1pdGVtcyB0ci53b29zdy1pdGVtIC53b29zdy1pdGVtLS1hY3Rpb25zIC5hZGRfdG9fY2FydF9idXR0b24ubG9hZGluZy5idXR0b246OmFmdGVyLCAud29vY29tbWVyY2UgdWwucHJvZHVjdHMgbGkucHJvZHVjdCAubG9hZGluZy5wcm9kdWN0X3R5cGVfZXh0ZXJuYWwuYnV0dG9uOjphZnRlciwgLndvb3N3LWxpc3QgdGFibGUud29vc3ctaXRlbXMgdHIud29vc3ctaXRlbSAud29vc3ctaXRlbS0tYWN0aW9ucyAubG9hZGluZy5wcm9kdWN0X3R5cGVfZXh0ZXJuYWwuYnV0dG9uOjphZnRlciwgLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzIGxpLnByb2R1Y3QgLmxvYWRpbmcucHJvZHVjdF90eXBlX2dyb3VwZWQuYnV0dG9uOjphZnRlciwgLndvb3N3LWxpc3QgdGFibGUud29vc3ctaXRlbXMgdHIud29vc3ctaXRlbSAud29vc3ctaXRlbS0tYWN0aW9ucyAubG9hZGluZy5wcm9kdWN0X3R5cGVfZ3JvdXBlZC5idXR0b246OmFmdGVyLCAud29vY29tbWVyY2UgdWwucHJvZHVjdHMgbGkucHJvZHVjdCAubG9hZGluZy5wcm9kdWN0X291dF9vZl9zdG9jay5idXR0b246OmFmdGVyLCAud29vc3ctbGlzdCB0YWJsZS53b29zdy1pdGVtcyB0ci53b29zdy1pdGVtIC53b29zdy1pdGVtLS1hY3Rpb25zIC5sb2FkaW5nLnByb2R1Y3Rfb3V0X29mX3N0b2NrLmJ1dHRvbjo6YWZ0ZXIge1xuICBtYXNrOiB1cmwoXCIuLi9pbWcvd29vLWxvYWRpbmcuc3ZnXCIpIG5vLXJlcGVhdCBjZW50ZXIvY29udGFpbjtcbn1cbi53b29jb21tZXJjZSB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0IC5hZGRfdG9fY2FydF9idXR0b24uYWRkZWQuYnV0dG9uLCAud29vc3ctbGlzdCB0YWJsZS53b29zdy1pdGVtcyB0ci53b29zdy1pdGVtIC53b29zdy1pdGVtLS1hY3Rpb25zIC5hZGRfdG9fY2FydF9idXR0b24uYWRkZWQuYnV0dG9uLCAud29vY29tbWVyY2UgdWwucHJvZHVjdHMgbGkucHJvZHVjdCAuYWRkZWQucHJvZHVjdF90eXBlX2V4dGVybmFsLmJ1dHRvbiwgLndvb3N3LWxpc3QgdGFibGUud29vc3ctaXRlbXMgdHIud29vc3ctaXRlbSAud29vc3ctaXRlbS0tYWN0aW9ucyAuYWRkZWQucHJvZHVjdF90eXBlX2V4dGVybmFsLmJ1dHRvbiwgLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzIGxpLnByb2R1Y3QgLmFkZGVkLnByb2R1Y3RfdHlwZV9ncm91cGVkLmJ1dHRvbiwgLndvb3N3LWxpc3QgdGFibGUud29vc3ctaXRlbXMgdHIud29vc3ctaXRlbSAud29vc3ctaXRlbS0tYWN0aW9ucyAuYWRkZWQucHJvZHVjdF90eXBlX2dyb3VwZWQuYnV0dG9uLCAud29vY29tbWVyY2UgdWwucHJvZHVjdHMgbGkucHJvZHVjdCAuYWRkZWQucHJvZHVjdF9vdXRfb2Zfc3RvY2suYnV0dG9uLCAud29vc3ctbGlzdCB0YWJsZS53b29zdy1pdGVtcyB0ci53b29zdy1pdGVtIC53b29zdy1pdGVtLS1hY3Rpb25zIC5hZGRlZC5wcm9kdWN0X291dF9vZl9zdG9jay5idXR0b24ge1xuICBhbmltYXRpb246IGFkZGVkU3RhdGUgM3M7XG59XG4ud29vY29tbWVyY2UgdWwucHJvZHVjdHMgbGkucHJvZHVjdCAuYWRkX3RvX2NhcnRfYnV0dG9uLmFkZGVkLmJ1dHRvbjo6YWZ0ZXIsIC53b29zdy1saXN0IHRhYmxlLndvb3N3LWl0ZW1zIHRyLndvb3N3LWl0ZW0gLndvb3N3LWl0ZW0tLWFjdGlvbnMgLmFkZF90b19jYXJ0X2J1dHRvbi5hZGRlZC5idXR0b246OmFmdGVyLCAud29vY29tbWVyY2UgdWwucHJvZHVjdHMgbGkucHJvZHVjdCAuYWRkZWQucHJvZHVjdF90eXBlX2V4dGVybmFsLmJ1dHRvbjo6YWZ0ZXIsIC53b29zdy1saXN0IHRhYmxlLndvb3N3LWl0ZW1zIHRyLndvb3N3LWl0ZW0gLndvb3N3LWl0ZW0tLWFjdGlvbnMgLmFkZGVkLnByb2R1Y3RfdHlwZV9leHRlcm5hbC5idXR0b246OmFmdGVyLCAud29vY29tbWVyY2UgdWwucHJvZHVjdHMgbGkucHJvZHVjdCAuYWRkZWQucHJvZHVjdF90eXBlX2dyb3VwZWQuYnV0dG9uOjphZnRlciwgLndvb3N3LWxpc3QgdGFibGUud29vc3ctaXRlbXMgdHIud29vc3ctaXRlbSAud29vc3ctaXRlbS0tYWN0aW9ucyAuYWRkZWQucHJvZHVjdF90eXBlX2dyb3VwZWQuYnV0dG9uOjphZnRlciwgLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzIGxpLnByb2R1Y3QgLmFkZGVkLnByb2R1Y3Rfb3V0X29mX3N0b2NrLmJ1dHRvbjo6YWZ0ZXIsIC53b29zdy1saXN0IHRhYmxlLndvb3N3LWl0ZW1zIHRyLndvb3N3LWl0ZW0gLndvb3N3LWl0ZW0tLWFjdGlvbnMgLmFkZGVkLnByb2R1Y3Rfb3V0X29mX3N0b2NrLmJ1dHRvbjo6YWZ0ZXIge1xuICBhbmltYXRpb246IGljb25DaGFuZ2UgM3M7XG59XG4ud29vY29tbWVyY2UgdWwucHJvZHVjdHMgbGkucHJvZHVjdCAucHJvZHVjdF90eXBlX2V4dGVybmFsLmJ1dHRvbjphZnRlciwgLndvb3N3LWxpc3QgdGFibGUud29vc3ctaXRlbXMgdHIud29vc3ctaXRlbSAud29vc3ctaXRlbS0tYWN0aW9ucyAucHJvZHVjdF90eXBlX2V4dGVybmFsLmJ1dHRvbjphZnRlciwgLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzIGxpLnByb2R1Y3QgLnByb2R1Y3RfdHlwZV9ncm91cGVkLmJ1dHRvbjphZnRlciwgLndvb3N3LWxpc3QgdGFibGUud29vc3ctaXRlbXMgdHIud29vc3ctaXRlbSAud29vc3ctaXRlbS0tYWN0aW9ucyAucHJvZHVjdF90eXBlX2dyb3VwZWQuYnV0dG9uOmFmdGVyLCAud29vY29tbWVyY2UgdWwucHJvZHVjdHMgbGkucHJvZHVjdCAucHJvZHVjdF9vdXRfb2Zfc3RvY2suYnV0dG9uOmFmdGVyLCAud29vc3ctbGlzdCB0YWJsZS53b29zdy1pdGVtcyB0ci53b29zdy1pdGVtIC53b29zdy1pdGVtLS1hY3Rpb25zIC5wcm9kdWN0X291dF9vZl9zdG9jay5idXR0b246YWZ0ZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzgzcHgpIHtcbiAgLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzIGxpLnByb2R1Y3QgLmJ1dHRvbiB7XG4gICAgZ2FwOiAwO1xuICB9XG4gIC53b29jb21tZXJjZSB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0IC5hZGRfdG9fY2FydF9idXR0b24uYnV0dG9uLCAud29vY29tbWVyY2UgdWwucHJvZHVjdHMgbGkucHJvZHVjdCAucHJvZHVjdF90eXBlX2V4dGVybmFsLmJ1dHRvbiwgLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzIGxpLnByb2R1Y3QgLnByb2R1Y3RfdHlwZV9ncm91cGVkLmJ1dHRvbiwgLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzIGxpLnByb2R1Y3QgLnByb2R1Y3Rfb3V0X29mX3N0b2NrLmJ1dHRvbiB7XG4gICAgcGFkZGluZzogMS4xMjVyZW07XG4gICAgZm9udC1zaXplOiAwO1xuICB9XG4gIC53b29jb21tZXJjZSB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0IC5hZGRfdG9fY2FydF9idXR0b24uYnV0dG9uOmFmdGVyLCAud29vY29tbWVyY2UgdWwucHJvZHVjdHMgbGkucHJvZHVjdCAucHJvZHVjdF90eXBlX2V4dGVybmFsLmJ1dHRvbjphZnRlciwgLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzIGxpLnByb2R1Y3QgLnByb2R1Y3RfdHlwZV9ncm91cGVkLmJ1dHRvbjphZnRlciwgLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzIGxpLnByb2R1Y3QgLnByb2R1Y3Rfb3V0X29mX3N0b2NrLmJ1dHRvbjphZnRlciB7XG4gICAgd2lkdGg6IDEuNzVyZW07XG4gICAgaGVpZ2h0OiAxLjc1cmVtO1xuICB9XG4gIC53b29jb21tZXJjZSB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0IC5hZGRfdG9fY2FydF9idXR0b24ucHJvZHVjdF90eXBlX3ZhcmlhYmxlLmJ1dHRvbjo6YWZ0ZXIsIC53b29jb21tZXJjZSB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0IC5wcm9kdWN0X3R5cGVfdmFyaWFibGUucHJvZHVjdF90eXBlX2V4dGVybmFsLmJ1dHRvbjo6YWZ0ZXIsIC53b29jb21tZXJjZSB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0IC5wcm9kdWN0X3R5cGVfdmFyaWFibGUucHJvZHVjdF90eXBlX2dyb3VwZWQuYnV0dG9uOjphZnRlciwgLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzIGxpLnByb2R1Y3QgLnByb2R1Y3RfdHlwZV92YXJpYWJsZS5wcm9kdWN0X291dF9vZl9zdG9jay5idXR0b246OmFmdGVyIHtcbiAgICBtYXNrOiB1cmwoXCIuLi9pbWcvd29vLWFycm93LnN2Z1wiKSBuby1yZXBlYXQgY2VudGVyL2NvbnRhaW47XG4gIH1cbiAgLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzIGxpLnByb2R1Y3QgLnByb2R1Y3RfdHlwZV9leHRlcm5hbC5idXR0b246OmFmdGVyLCAud29vY29tbWVyY2UgdWwucHJvZHVjdHMgbGkucHJvZHVjdCAucHJvZHVjdF90eXBlX2dyb3VwZWQuYnV0dG9uOjphZnRlciwgLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzIGxpLnByb2R1Y3QgLnByb2R1Y3Rfb3V0X29mX3N0b2NrLmJ1dHRvbjo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXNrOiB1cmwoXCIuLi9pbWcvd29vLWFycm93LnN2Z1wiKSBuby1yZXBlYXQgY2VudGVyL2NvbnRhaW47XG4gIH1cbn1cblxuLndvb3N3LWJ0biB7XG4gIG1pbi13aWR0aDogMi4zMTI1cmVtO1xuICBtaW4taGVpZ2h0OiAyLjMxMjVyZW07XG4gIG1hcmdpbi1yaWdodDogMC44NzVyZW07XG4gIHBhZGRpbmc6IDA7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1pdC1ib3JkZXItcmFkaXVzLXNtYWxsKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taXQtY29sb3Itd2hpdGUpO1xuICBib3JkZXItd2lkdGg6IDFweDtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1pdC1jb2xvci1icmFuZCk7XG4gIGNvbG9yOiB2YXIoLS1pdC1jb2xvci1icmFuZCk7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIGZsZXgtc2hyaW5rOiAwO1xufVxuXG4ud29vc3ctbGlzdCB0YWJsZS53b29zdy1pdGVtcyB7XG4gIHdpZHRoOiAxMDAlO1xuICB0YWJsZS1sYXlvdXQ6IGZpeGVkO1xufVxuLndvb3N3LWxpc3QgdGFibGUud29vc3ctaXRlbXMgdHIud29vc3ctaXRlbSAud29vc3ctaXRlbS0tcmVtb3ZlIHtcbiAgd2lkdGg6IDIuNjVyZW07XG59XG4ud29vc3ctbGlzdCB0YWJsZS53b29zdy1pdGVtcyB0ci53b29zdy1pdGVtIC53b29zdy1pdGVtLS1yZW1vdmUgc3Bhbjo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgd2lkdGg6IDEuNXJlbTtcbiAgaGVpZ2h0OiAxLjVyZW07XG4gIG1hc2s6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0Nzdmcgdmlld0JveD0nMCAwIDI0IDI0JyBmaWxsPSdub25lJyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnJTNFJTNDcGF0aCBkPSdNMTEuOTg3NyAxMC41OTgzTDYuNjk0NzEgNS4zMDUyOUM2LjUwNjExIDUuMTIzMTMgNi4yNTM1MSA1LjAyMjM0IDUuOTkxMzEgNS4wMjQ2MUM1LjcyOTExIDUuMDI2ODkgNS40NzgzIDUuMTMyMDYgNS4yOTI4OSA1LjMxNzQ3QzUuMTA3NDkgNS41MDI4OCA1LjAwMjMyIDUuNzUzNjkgNS4wMDAwNCA2LjAxNTg5QzQuOTk3NzYgNi4yNzgwOCA1LjA5ODU1IDYuNTMwNjkgNS4yODA3MSA2LjcxOTI5TDEwLjU3MzcgMTIuMDEyM0w1LjI4MDcxIDE3LjMwNTNDNS4wOTg1NSAxNy40OTM5IDQuOTk3NzYgMTcuNzQ2NSA1LjAwMDA0IDE4LjAwODdDNS4wMDIzMiAxOC4yNzA5IDUuMTA3NDkgMTguNTIxNyA1LjI5Mjg5IDE4LjcwNzFDNS40NzgzIDE4Ljg5MjUgNS43MjkxMSAxOC45OTc3IDUuOTkxMzEgMTlDNi4yNTM1MSAxOS4wMDIyIDYuNTA2MTEgMTguOTAxNCA2LjY5NDcxIDE4LjcxOTNMMTEuOTg3NyAxMy40MjYzTDE3LjI4MDcgMTguNzE5M0MxNy40NjkzIDE4LjkwMTQgMTcuNzIxOSAxOS4wMDIyIDE3Ljk4NDEgMTlDMTguMjQ2MyAxOC45OTc3IDE4LjQ5NzEgMTguODkyNSAxOC42ODI1IDE4LjcwNzFDMTguODY3OSAxOC41MjE3IDE4Ljk3MzEgMTguMjcwOSAxOC45NzU0IDE4LjAwODdDMTguOTc3NyAxNy43NDY1IDE4Ljg3NjkgMTcuNDkzOSAxOC42OTQ3IDE3LjMwNTNMMTMuNDAxNyAxMi4wMTIzTDE4LjY5NDcgNi43MTkyOUMxOC43OTAyIDYuNjI3MDQgMTguODY2NCA2LjUxNjcgMTguOTE4OCA2LjM5NDY5QzE4Ljk3MTIgNi4yNzI2OSAxOC45OTg4IDYuMTQxNDcgMTkgNi4wMDg2OUMxOS4wMDExIDUuODc1OTEgMTguOTc1OCA1Ljc0NDIzIDE4LjkyNTUgNS42MjEzM0MxOC44NzUzIDUuNDk4NDQgMTguODAxIDUuMzg2NzkgMTguNzA3MSA1LjI5Mjg5QzE4LjYxMzIgNS4xOTkgMTguNTAxNiA1LjEyNDc1IDE4LjM3ODcgNS4wNzQ0N0MxOC4yNTU4IDUuMDI0MTkgMTguMTI0MSA0Ljk5ODg4IDE3Ljk5MTMgNS4wMDAwNEMxNy44NTg1IDUuMDAxMTkgMTcuNzI3MyA1LjAyODc4IDE3LjYwNTMgNS4wODExOUMxNy40ODMzIDUuMTMzNiAxNy4zNzMgNS4yMDk3OCAxNy4yODA3IDUuMzA1MjlMMTEuOTg3NyAxMC41OTgzWicgZmlsbD0nJTIzMjU0NDVBJy8lM0UlM0Mvc3ZnJTNFJTBBXCIpO1xuICBtYXNrLXNpemU6IGNvbnRhaW47XG4gIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLWl0LXRyYW5zaXRpb24tdGltZSkgZWFzZTtcbiAgY29sb3I6IHZhcigtLWl0LWNvbG9yLWJyYW5kKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogY3VycmVudGNvbG9yO1xuICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAxO1xufVxuLndvb3N3LWxpc3QgdGFibGUud29vc3ctaXRlbXMgdHIud29vc3ctaXRlbSAud29vc3ctaXRlbS0tcmVtb3ZlIHNwYW46aG92ZXI6YmVmb3JlIHtcbiAgY29sb3I6IHZhcigtLWl0LWNvbG9yLWVycm9yKTtcbn1cbi53b29zdy1saXN0IHRhYmxlLndvb3N3LWl0ZW1zIHRyLndvb3N3LWl0ZW0gLndvb3N3LWl0ZW0tLWltYWdlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi53b29zdy1saXN0IHRhYmxlLndvb3N3LWl0ZW1zIHRyLndvb3N3LWl0ZW0gLndvb3N3LWl0ZW0tLWltYWdlIGltZyB7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWl0LWJvcmRlci1yYWRpdXMtc21hbGwpO1xufVxuLndvb3N3LWxpc3QgdGFibGUud29vc3ctaXRlbXMgdHIud29vc3ctaXRlbSAud29vc3ctaXRlbS0taW5mbyB7XG4gIHdpZHRoOiBhdXRvO1xuICBmb250LXdlaWdodDogNDAwO1xufVxuLndvb3N3LWxpc3QgdGFibGUud29vc3ctaXRlbXMgdHIud29vc3ctaXRlbSAud29vc3ctaXRlbS0taW5mbyA+ICoge1xuICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtO1xufVxuLndvb3N3LWxpc3QgdGFibGUud29vc3ctaXRlbXMgdHIud29vc3ctaXRlbSAud29vc3ctaXRlbS0taW5mbyA+ICo6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG4ud29vc3ctbGlzdCB0YWJsZS53b29zdy1pdGVtcyB0ci53b29zdy1pdGVtIC53b29zdy1pdGVtLS1uYW1lIHtcbiAgZm9udC1zaXplOiB2YXIoLS1pdC1zaXplLXNtYWxsKTtcbn1cbi53b29zdy1saXN0IHRhYmxlLndvb3N3LWl0ZW1zIHRyLndvb3N3LWl0ZW0gLndvb3N3LWl0ZW0tLW5hbWUgYSB7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG59XG4ud29vc3ctbGlzdCB0YWJsZS53b29zdy1pdGVtcyB0ci53b29zdy1pdGVtIC53b29zdy1pdGVtLS1wcmljZSxcbi53b29zdy1saXN0IHRhYmxlLndvb3N3LWl0ZW1zIHRyLndvb3N3LWl0ZW0gLndvb3N3LWl0ZW0tLXRpbWUge1xuICBmb250LXNpemU6IHZhcigtLWl0LXNpemUteC1zbWFsbCk7XG59XG4ud29vc3ctbGlzdCB0YWJsZS53b29zdy1pdGVtcyB0ci53b29zdy1pdGVtIC53b29zdy1pdGVtLS1hY3Rpb25zIHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIHdpZHRoOiAyNSU7XG59XG4ud29vc3ctbGlzdCB0YWJsZS53b29zdy1pdGVtcyB0ci53b29zdy1pdGVtIC53b29zdy1pdGVtLS1hY3Rpb25zIC5idXR0b24ge1xuICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG59XG4ud29vc3ctbGlzdCB0YWJsZS53b29zdy1pdGVtcyB0ci53b29zdy1pdGVtIC53b29zdy1pdGVtLS1hY3Rpb25zIC53b29zdy1pdGVtLS1zdG9jayB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4ud29vc3ctbGlzdCB0YWJsZS53b29zdy1pdGVtcyB0ci53b29zdy1pdGVtIC5hZGRlZF90b19jYXJ0IHtcbiAgaW5zZXQ6IDA7XG4gIGZvbnQtc2l6ZTogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEzNjVweCkgYW5kIChtaW4td2lkdGg6IDBweCkge1xuICAud29vc3ctbGlzdCB0YWJsZS53b29zdy1pdGVtcyB0ci53b29zdy1pdGVtIC53b29zdy1pdGVtLS1hY3Rpb25zIC5idXR0b24ge1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWl0LWNvbG9yLWJyYW5kKTtcbiAgICBjb2xvcjogdmFyKC0taXQtY29sb3Itd2hpdGUpO1xuICAgIHBhZGRpbmc6IDFyZW07XG4gICAgZm9udC1zaXplOiAwO1xuICAgIGdhcDogMDtcbiAgfVxuICAud29vc3ctbGlzdCB0YWJsZS53b29zdy1pdGVtcyB0ci53b29zdy1pdGVtIC53b29zdy1pdGVtLS1hY3Rpb25zIC5idXR0b24ucHJvZHVjdF9vdXRfb2Zfc3RvY2s6OmFmdGVyLCAud29vc3ctbGlzdCB0YWJsZS53b29zdy1pdGVtcyB0ci53b29zdy1pdGVtIC53b29zdy1pdGVtLS1hY3Rpb25zIC5idXR0b24ucHJvZHVjdF90eXBlX3ZhcmlhYmxlOjphZnRlciB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hc2s6IHVybChcIi4uL2ltZy93b28tYXJyb3cuc3ZnXCIpIG5vLXJlcGVhdCBjZW50ZXIvY29udGFpbjtcbiAgfVxuICAud29vc3ctbGlzdCB0YWJsZS53b29zdy1pdGVtcyB0ci53b29zdy1pdGVtIC53b29zdy1pdGVtLS1zdG9jayB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAud29vc3ctbGlzdCB0YWJsZS53b29zdy1pdGVtcyB0ci53b29zdy1pdGVtIC53b29zdy1pdGVtLS1pbWFnZSB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgfVxuICAud29vc3ctbGlzdCB0YWJsZS53b29zdy1pdGVtcyB0ci53b29zdy1pdGVtIC53b29zdy1pdGVtLS1hY3Rpb25zIHtcbiAgICB3aWR0aDogMzAlO1xuICB9XG59XG4ud29vc3ctbGlzdCAud29vc3ctYWN0aW9uczplbXB0eSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qKlxuICogRG8gbm90IEB1c2UgZmlsZXMgd2l0aCBhY3R1YWwgc2NzcyBjb2RlIGluIHRoaXMgZmlsZSwgYXMgaXQgd2lsbCBjb21waWxlIGNzcyBjb2RlIHR3aWNlLlxuICogQXMgdGhpcyBmaWxlIGdvaW5nIHRvIGJlIGFuIHN0YW5kYWxvbmUgY3NzIGZpbGUuXG4gKi9cbi8qKlxuICogRG8gbm90IEB1c2UgZmlsZXMgd2l0aCBhY3R1YWwgc2NzcyBjb2RlIGluIHRoaXMgZmlsZSwgYXMgaXQgd2lsbCBjb21waWxlIGNzcyBjb2RlIHR3aWNlLlxuICogQXMgdGhpcyBmaWxlIGdvaW5nIHRvIGJlIGFuIHN0YW5kYWxvbmUgY3NzIGZpbGUuXG4gKi9cbi8qKlxuICogRG8gbm90IEB1c2UgZmlsZXMgd2l0aCBhY3R1YWwgc2NzcyBjb2RlIGluIHRoaXMgZmlsZSwgYXMgaXQgd2lsbCBjb21waWxlIGNzcyBjb2RlIHR3aWNlLlxuICogQXMgdGhpcyBmaWxlIGdvaW5nIHRvIGJlIGFuIHN0YW5kYWxvbmUgY3NzIGZpbGUuXG4gKi9cbi53b29jb21tZXJjZSAud29vY29tbWVyY2UtbWVzc2FnZSB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0taXQtY29sb3Itc3VjY2Vzcyk7XG59XG4ud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW1lc3NhZ2U6YmVmb3JlIHtcbiAgY29udGVudDogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyB3aWR0aD0nMjQnIGhlaWdodD0nMjQnIHZpZXdCb3g9JzAgMCAyNCAyNCcgZmlsbD0nbm9uZScgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyUzRSUzQ3BhdGggZmlsbC1ydWxlPSdldmVub2RkJyBjbGlwLXJ1bGU9J2V2ZW5vZGQnIGQ9J00yMiAxMkMyMiAxNy41MjI4IDE3LjUyMjggMjIgMTIgMjJDNi40NzcxNSAyMiAyIDE3LjUyMjggMiAxMkMyIDYuNDc3MTUgNi40NzcxNSAyIDEyIDJDMTcuNTIyOCAyIDIyIDYuNDc3MTUgMjIgMTJaTTkuMzgyNCAxMS4wNjg5QzkuNTA0NDEgMTEuMTIxMyA5LjYxNDc1IDExLjE5NzUgOS43MDcgMTEuMjkzTDExIDEyLjU4NkwxNC4yOTMgOS4yOTMwMkMxNC4zODUyIDkuMTk3NTEgMTQuNDk1NiA5LjEyMTMzIDE0LjYxNzYgOS4wNjg5MkMxNC43Mzk2IDkuMDE2NTEgMTQuODcwOCA4Ljk4ODkyIDE1LjAwMzYgOC45ODc3N0MxNS4xMzY0IDguOTg2NjIgMTUuMjY4MSA5LjAxMTkyIDE1LjM5MSA5LjA2MjJDMTUuNTEzOCA5LjExMjQ4IDE1LjYyNTUgOS4xODY3MyAxNS43MTk0IDkuMjgwNjNDMTUuODEzMyA5LjM3NDUyIDE1Ljg4NzUgOS40ODYxNyAxNS45Mzc4IDkuNjA5MDdDMTUuOTg4MSA5LjczMTk2IDE2LjAxMzQgOS44NjM2NCAxNi4wMTIyIDkuOTk2NDJDMTYuMDExMSAxMC4xMjkyIDE1Ljk4MzUgMTAuMjYwNCAxNS45MzExIDEwLjM4MjRDMTUuODc4NyAxMC41MDQ0IDE1LjgwMjUgMTAuNjE0OCAxNS43MDcgMTAuNzA3TDExLjcwNyAxNC43MDdDMTEuNTE5NSAxNC44OTQ1IDExLjI2NTIgMTQuOTk5OCAxMSAxNC45OTk4QzEwLjczNDggMTQuOTk5OCAxMC40ODA1IDE0Ljg5NDUgMTAuMjkzIDE0LjcwN0w4LjI5MyAxMi43MDdDOC4xOTc0OSAxMi42MTQ4IDguMTIxMyAxMi41MDQ0IDguMDY4OSAxMi4zODI0QzguMDE2NDkgMTIuMjYwNCA3Ljk4ODkgMTIuMTI5MiA3Ljk4Nzc1IDExLjk5NjRDNy45ODY1OSAxMS44NjM2IDguMDExOSAxMS43MzIgOC4wNjIxOCAxMS42MDkxQzguMTEyNDYgMTEuNDg2MiA4LjE4NjcxIDExLjM3NDUgOC4yODA2IDExLjI4MDZDOC4zNzQ1IDExLjE4NjcgOC40ODYxNSAxMS4xMTI1IDguNjA5MDQgMTEuMDYyMkM4LjczMTk0IDExLjAxMTkgOC44NjM2MiAxMC45ODY2IDguOTk2NCAxMC45ODc4QzkuMTI5MTggMTAuOTg4OSA5LjI2MDQgMTEuMDE2NSA5LjM4MjQgMTEuMDY4OVonIGZpbGw9JyUyMzAwODAwMCcvJTNFJTNDL3N2ZyUzRSUwQVwiKTtcbn1cbi53b29jb21tZXJjZSAud29vY29tbWVyY2UtZXJyb3Ige1xuICBib3JkZXItY29sb3I6IHZhcigtLWl0LWNvbG9yLWVycm9yKTtcbn1cbi53b29jb21tZXJjZSAud29vY29tbWVyY2UtZXJyb3I6YmVmb3JlIHtcbiAgY29udGVudDogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyB3aWR0aD0nMjQnIGhlaWdodD0nMjQnIHZpZXdCb3g9JzAgMCAyNCAyNCcgZmlsbD0nbm9uZScgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyUzRSUzQ3BhdGggZmlsbC1ydWxlPSdldmVub2RkJyBjbGlwLXJ1bGU9J2V2ZW5vZGQnIGQ9J00xMiAyMkMxNy41MjI4IDIyIDIyIDE3LjUyMjggMjIgMTJDMjIgNi40NzcxNSAxNy41MjI4IDIgMTIgMkM2LjQ3NzE1IDIgMiA2LjQ3NzE1IDIgMTJDMiAxNy41MjI4IDYuNDc3MTUgMjIgMTIgMjJaTTEwLjU5MTggMTIuMDE1NEw5LjExNyAxMy40OTlDOS4wMjE3OSAxMy41OTE1IDguOTQ1OTUgMTMuNzAyMSA4Ljg5MzkyIDEzLjgyNDJDOC44NDE4OCAxMy45NDY0IDguODE0NjkgMTQuMDc3NiA4LjgxMzkzIDE0LjIxMDRDOC44MTMxNyAxNC4zNDMyIDguODM4ODUgMTQuNDc0NyA4Ljg4OTQ4IDE0LjU5NzVDOC45NDAxIDE0LjcyMDIgOS4wMTQ2NiAxNC44MzE2IDkuMTA4ODEgMTQuOTI1MkM5LjIwMjk1IDE1LjAxODkgOS4zMTQ3OSAxNS4wOTI4IDkuNDM3ODEgMTUuMTQyN0M5LjU2MDgzIDE1LjE5MjcgOS42OTI1NiAxNS4yMTc2IDkuODI1MzEgMTUuMjE2MUM5Ljk1ODA3IDE1LjIxNDYgMTAuMDg5MiAxNS4xODY2IDEwLjIxMSAxNS4xMzM5QzEwLjMzMjkgMTUuMDgxMiAxMC40NDMgMTUuMDA0NyAxMC41MzUgMTQuOTA5TDEyLjAwMjcgMTMuNDMyNUwxMy40NDIgMTQuODc4QzEzLjYyOTEgMTUuMDY2MSAxMy44ODMzIDE1LjE3MjEgMTQuMTQ4NSAxNS4xNzI3QzE0LjQxMzggMTUuMTczNCAxNC42Njg1IDE1LjA2ODYgMTQuODU2NSAxNC44ODE1QzE1LjA0NDUgMTQuNjk0NCAxNS4xNTA1IDE0LjQ0MDMgMTUuMTUxMiAxNC4xNzVDMTUuMTUxOSAxMy45MDk3IDE1LjA0NzEgMTMuNjU1MSAxNC44NiAxMy40NjdMMTMuNDEyNyAxMi4wMTQxTDE0Ljg5NSAxMC41MjNDMTUuMDc2NyAxMC4zMzM5IDE1LjE3NjggMTAuMDgxIDE1LjE3MzggOS44MTg3NEMxNS4xNzA5IDkuNTU2NTEgMTUuMDY1IDkuMzA1OTUgMTQuODc5IDkuMTIxMDRDMTQuNjkzMSA4LjkzNjEyIDE0LjQ0MTkgOC44MzE2NiAxNC4xNzk3IDguODMwMTZDMTMuOTE3NCA4LjgyODY1IDEzLjY2NTEgOC45MzAyMiAxMy40NzcgOS4xMTI5OEwxMi4wMDE1IDEwLjU5NzNMMTAuNSA5LjA5MDAyQzEwLjMxMTggOC45MDc0MiAxMC4wNTk0IDguODA2MDYgOS43OTcxNyA4LjgwNzc2QzkuNTM0OTUgOC44MDk0NyA5LjI4Mzg5IDguOTE0MSA5LjA5ODA3IDkuMDk5MTNDOC45MTIyNSA5LjI4NDE2IDguODA2NTUgOS41MzQ3OCA4LjgwMzczIDkuNzk2OTlDOC44MDA5MSAxMC4wNTkyIDguOTAxMjEgMTAuMzEyIDkuMDgzIDEwLjUwMUwxMC41OTE4IDEyLjAxNTRaJyBmaWxsPSclMjNFODQ5MDEnLyUzRSUzQy9zdmclM0UlMEFcIik7XG59XG4ud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWVycm9yIC5idXR0b24ge1xuICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xufVxuLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1pbmZvIHtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1pdC1jb2xvci1pbmZvKTtcbn1cbi53b29jb21tZXJjZSAud29vY29tbWVyY2UtaW5mbzpiZWZvcmUge1xuICBjb250ZW50OiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnIHdpZHRoPScyNCcgaGVpZ2h0PScyNCcgdmlld0JveD0nMCAwIDI0IDI0JyBmaWxsPSdub25lJyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnJTNFJTNDcGF0aCBmaWxsLXJ1bGU9J2V2ZW5vZGQnIGNsaXAtcnVsZT0nZXZlbm9kZCcgZD0nTTEyIDIyQzYuNDc3IDIyIDIgMTcuNTIzIDIgMTJDMiA2LjQ3NyA2LjQ3NyAyIDEyIDJDMTcuNTIzIDIgMjIgNi40NzcgMjIgMTJDMjIgMTcuNTIzIDE3LjUyMyAyMiAxMiAyMlpNMTMgOEMxMyA4LjU1MjI4IDEyLjU1MjMgOSAxMiA5QzExLjQ0NzcgOSAxMSA4LjU1MjI4IDExIDhDMTEgNy40NDc3MiAxMS40NDc3IDcgMTIgN0MxMi41NTIzIDcgMTMgNy40NDc3MiAxMyA4Wk0xMiAxMEMxMi41NTIzIDEwIDEzIDEwLjQ0NzcgMTMgMTFWMTZDMTMgMTYuNTUyMyAxMi41NTIzIDE3IDEyIDE3QzExLjQ0NzcgMTcgMTEgMTYuNTUyMyAxMSAxNlYxMUMxMSAxMC40NDc3IDExLjQ0NzcgMTAgMTIgMTBaJyBmaWxsPSclMjMwMDg2RDQnLyUzRSUzQy9zdmclM0UlMEFcIik7XG59XG4ud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW1lc3NhZ2UgLmJ1dHRvbixcbi53b29jb21tZXJjZSAud29vY29tbWVyY2UtbWVzc2FnZSBbcm9sZT1idXR0b25dLFxuLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1pbmZvIC5idXR0b24sXG4ud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWluZm8gW3JvbGU9YnV0dG9uXSB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0taXQtY29sb3ItYmxhY2spO1xuICBjb2xvcjogdmFyKC0taXQtY29sb3ItYmxhY2spO1xuICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xufVxuLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1tZXNzYWdlIC5idXR0b246aG92ZXIsXG4ud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW1lc3NhZ2UgW3JvbGU9YnV0dG9uXTpob3Zlcixcbi53b29jb21tZXJjZSAud29vY29tbWVyY2UtaW5mbyAuYnV0dG9uOmhvdmVyLFxuLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1pbmZvIFtyb2xlPWJ1dHRvbl06aG92ZXIge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1pdC1jb2xvci1ibGFjayk7XG4gIGNvbG9yOiB2YXIoLS1pdC1jb2xvci13aGl0ZSk7XG59XG4ud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW1lc3NhZ2UsXG4ud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWVycm9yLFxuLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1pbmZvIHtcbiAgY29sb3I6IHZhcigtLWl0LWNvbG9yLXRleHQpO1xuICBib3JkZXItd2lkdGg6IDFweDtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0taXQtYm9yZGVyLXJhZGl1cyk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWl0LWNvbG9yLWJhY2tncm91bmQpO1xuICBwYWRkaW5nOiB2YXIoLS1pdC1zcGFjaW5nLWRlZmF1bHQtaGFsZikgdmFyKC0taXQtc3BhY2luZy1kZWZhdWx0LWhhbGYpIHZhcigtLWl0LXNwYWNpbmctZGVmYXVsdC1oYWxmKSAzLjI1cmVtO1xuICBkaXNwbGF5OiBncmlkO1xuICBqdXN0aWZ5LWl0ZW1zOiBzdGFydDtcbiAgYWxpZ24taXRlbXM6IHN0YXJ0O1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1pdC1zcGFjaW5nLWNvbnRlbnQpO1xufVxuLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1tZXNzYWdlLFxuLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1lcnJvcixcbi53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSAud29vY29tbWVyY2UtaW5mbyB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG4ud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW1lc3NhZ2UgbGk6aGFzKC5idXR0b24pLFxuLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1lcnJvciBsaTpoYXMoLmJ1dHRvbiksXG4ud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWluZm8gbGk6aGFzKC5idXR0b24pIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcGFkZGluZy10b3A6IDAuMzc1cmVtO1xuICBjb2x1bW4tZ2FwOiB2YXIoLS1pdC1zcGFjaW5nLWRlZmF1bHQpO1xufVxuLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1tZXNzYWdlIGxpOmhhcyguYnV0dG9uKSAuYnV0dG9uLFxuLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1lcnJvciBsaTpoYXMoLmJ1dHRvbikgLmJ1dHRvbixcbi53b29jb21tZXJjZSAud29vY29tbWVyY2UtaW5mbyBsaTpoYXMoLmJ1dHRvbikgLmJ1dHRvbiB7XG4gIG1hcmdpbi10b3A6IC0wLjM3NXJlbTtcbiAgZmxleC1zaHJpbms6IDA7XG59XG4ud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW1lc3NhZ2UgbGk6bm90KDpoYXMoLmJ1dHRvbikpLFxuLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1lcnJvciBsaTpub3QoOmhhcyguYnV0dG9uKSksXG4ud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWluZm8gbGk6bm90KDpoYXMoLmJ1dHRvbikpIHtcbiAgZ3JpZC1jb2x1bW46IHNwYW4gMjtcbn1cbi53b29jb21tZXJjZSAud29vY29tbWVyY2UtbWVzc2FnZTpiZWZvcmUsXG4ud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWVycm9yOmJlZm9yZSxcbi53b29jb21tZXJjZSAud29vY29tbWVyY2UtaW5mbzpiZWZvcmUge1xuICB0b3A6IGNhbGModmFyKC0taXQtc3BhY2luZy1kZWZhdWx0LWhhbGYpKTtcbiAgbGVmdDogY2FsYyh2YXIoLS1pdC1zcGFjaW5nLWRlZmF1bHQtaGFsZikpO1xuICB3aWR0aDogMS41cmVtO1xuICBoZWlnaHQ6IDEuNXJlbTtcbn1cbi53b29jb21tZXJjZSAud29vY29tbWVyY2UtbWVzc2FnZTphZnRlcixcbi53b29jb21tZXJjZSAud29vY29tbWVyY2UtZXJyb3I6YWZ0ZXIsXG4ud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWluZm86YWZ0ZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1tZXNzYWdlIC5idXR0b24sXG4ud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW1lc3NhZ2UgW3JvbGU9YnV0dG9uXSxcbi53b29jb21tZXJjZSAud29vY29tbWVyY2UtZXJyb3IgLmJ1dHRvbixcbi53b29jb21tZXJjZSAud29vY29tbWVyY2UtZXJyb3IgW3JvbGU9YnV0dG9uXSxcbi53b29jb21tZXJjZSAud29vY29tbWVyY2UtaW5mbyAuYnV0dG9uLFxuLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1pbmZvIFtyb2xlPWJ1dHRvbl0ge1xuICBtYXJnaW4tdG9wOiAwLjVyZW07XG59XG4ud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW1lc3NhZ2UgLmJ1dHRvbixcbi53b29jb21tZXJjZSAud29vY29tbWVyY2UtZXJyb3IgLmJ1dHRvbixcbi53b29jb21tZXJjZSAud29vY29tbWVyY2UtaW5mbyAuYnV0dG9uIHtcbiAgZmxvYXQ6IG5vbmU7XG59XG4ud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW5vdGljZXMtd3JhcHBlcjplbXB0eSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzgzcHgpIHtcbiAgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1tZXNzYWdlLFxuICAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWVycm9yLFxuICAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWluZm8ge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgYXV0bztcbiAgfVxuICAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW1lc3NhZ2U6aGFzKC5idXR0b24pOmJlZm9yZSwgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1tZXNzYWdlOmhhcyhbcm9sZT1idXR0b25dKTpiZWZvcmUsIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtbWVzc2FnZTpoYXMobGkpOmhhcyguYnV0dG9uKTpiZWZvcmUsXG4gIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtZXJyb3I6aGFzKC5idXR0b24pOmJlZm9yZSxcbiAgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1lcnJvcjpoYXMoW3JvbGU9YnV0dG9uXSk6YmVmb3JlLFxuICAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWVycm9yOmhhcyhsaSk6aGFzKC5idXR0b24pOmJlZm9yZSxcbiAgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1pbmZvOmhhcyguYnV0dG9uKTpiZWZvcmUsXG4gIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtaW5mbzpoYXMoW3JvbGU9YnV0dG9uXSk6YmVmb3JlLFxuICAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWluZm86aGFzKGxpKTpoYXMoLmJ1dHRvbik6YmVmb3JlIHtcbiAgICB0b3A6IGNhbGModmFyKC0taXQtc3BhY2luZy1kZWZhdWx0LWhhbGYpICsgMC4xNzVyZW0pO1xuICB9XG4gIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtbWVzc2FnZSAuYnV0dG9uLFxuICAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW1lc3NhZ2UgW3JvbGU9YnV0dG9uXSxcbiAgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1lcnJvciAuYnV0dG9uLFxuICAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWVycm9yIFtyb2xlPWJ1dHRvbl0sXG4gIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtaW5mbyAuYnV0dG9uLFxuICAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWluZm8gW3JvbGU9YnV0dG9uXSB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG59XG5cbi8qKlxuICogRG8gbm90IEB1c2UgZmlsZXMgd2l0aCBhY3R1YWwgc2NzcyBjb2RlIGluIHRoaXMgZmlsZSwgYXMgaXQgd2lsbCBjb21waWxlIGNzcyBjb2RlIHR3aWNlLlxuICogQXMgdGhpcyBmaWxlIGdvaW5nIHRvIGJlIGFuIHN0YW5kYWxvbmUgY3NzIGZpbGUuXG4gKi9cbi8qKlxuICogRG8gbm90IEB1c2UgZmlsZXMgd2l0aCBhY3R1YWwgc2NzcyBjb2RlIGluIHRoaXMgZmlsZSwgYXMgaXQgd2lsbCBjb21waWxlIGNzcyBjb2RlIHR3aWNlLlxuICogQXMgdGhpcyBmaWxlIGdvaW5nIHRvIGJlIGFuIHN0YW5kYWxvbmUgY3NzIGZpbGUuXG4gKi9cbi53b29jb21tZXJjZSAuY29sMi1zZXQge1xuICBkaXNwbGF5OiBncmlkO1xuICBhbGlnbi1pdGVtczogc3RhcnQ7XG4gIGdhcDogdmFyKC0taXQtc3BhY2luZy1kZWZhdWx0KTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3ODNweCkge1xuICAud29vY29tbWVyY2UgLmNvbDItc2V0IHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xuICB9XG59XG4ud29vY29tbWVyY2UgLmNvbDItc2V0IC5jb2wtMSxcbi53b29jb21tZXJjZSAuY29sMi1zZXQgLmNvbC0yIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGZsb2F0OiBub25lO1xuICBkaXNwbGF5OiBncmlkO1xuICBnYXA6IHZhcigtLWl0LXNwYWNpbmctZGVmYXVsdCk7XG59XG4ud29vY29tbWVyY2UgLmNvbDItc2V0OjpiZWZvcmUsIC53b29jb21tZXJjZSAuY29sMi1zZXQ6OmFmdGVyIHtcbiAgY29udGVudDogbm9uZTtcbn1cblxuLyoqXG4gKiBEbyBub3QgQHVzZSBmaWxlcyB3aXRoIGFjdHVhbCBzY3NzIGNvZGUgaW4gdGhpcyBmaWxlLCBhcyBpdCB3aWxsIGNvbXBpbGUgY3NzIGNvZGUgdHdpY2UuXG4gKiBBcyB0aGlzIGZpbGUgZ29pbmcgdG8gYmUgYW4gc3RhbmRhbG9uZSBjc3MgZmlsZS5cbiAqL1xuLyoqXG4gKiBEbyBub3QgQHVzZSBmaWxlcyB3aXRoIGFjdHVhbCBzY3NzIGNvZGUgaW4gdGhpcyBmaWxlLCBhcyBpdCB3aWxsIGNvbXBpbGUgY3NzIGNvZGUgdHdpY2UuXG4gKiBBcyB0aGlzIGZpbGUgZ29pbmcgdG8gYmUgYW4gc3RhbmRhbG9uZSBjc3MgZmlsZS5cbiAqL1xuLndvb2NvbW1lcmNlLWNhcnQgLndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2FydC1mb3JtIHRyOmxhc3QtY2hpbGQgLmNvdXBvbiAuaW5wdXQtdGV4dCwgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIGZvcm0gaW5wdXRbdHlwZT10ZXh0XSxcbi53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSBmb3JtIGlucHV0W3R5cGU9ZW1haWxdLFxuLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIGZvcm0gaW5wdXRbdHlwZT11cmxdLFxuLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIGZvcm0gaW5wdXRbdHlwZT1wYXNzd29yZF0sXG4ud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgZm9ybSBpbnB1dFt0eXBlPXNlYXJjaF0sXG4ud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgZm9ybSBpbnB1dFt0eXBlPW51bWJlcl0sXG4ud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgZm9ybSBpbnB1dFt0eXBlPXRlbF0sXG4ud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgZm9ybSBpbnB1dFt0eXBlPXJhbmdlXSxcbi53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSBmb3JtIGlucHV0W3R5cGU9ZGF0ZV0sXG4ud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgZm9ybSBpbnB1dFt0eXBlPW1vbnRoXSxcbi53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSBmb3JtIGlucHV0W3R5cGU9d2Vla10sXG4ud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgZm9ybSBpbnB1dFt0eXBlPXRpbWVdLFxuLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIGZvcm0gaW5wdXRbdHlwZT1kYXRldGltZV0sXG4ud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgZm9ybSBpbnB1dFt0eXBlPWRhdGV0aW1lLWxvY2FsXSxcbi53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSBmb3JtIGlucHV0W3R5cGU9Y29sb3JdLFxuLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIGZvcm0gdGV4dGFyZWEsXG4ud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgZm9ybSAuaW5wdXQtdGV4dCxcbi53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSBmb3JtIC5zZWxlY3QyIC5zZWxlY3QyLXNlbGVjdGlvbixcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgZm9ybSBpbnB1dFt0eXBlPXRleHRdLFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSBmb3JtIGlucHV0W3R5cGU9ZW1haWxdLFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSBmb3JtIGlucHV0W3R5cGU9dXJsXSxcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgZm9ybSBpbnB1dFt0eXBlPXBhc3N3b3JkXSxcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgZm9ybSBpbnB1dFt0eXBlPXNlYXJjaF0sXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIGZvcm0gaW5wdXRbdHlwZT1udW1iZXJdLFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSBmb3JtIGlucHV0W3R5cGU9dGVsXSxcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgZm9ybSBpbnB1dFt0eXBlPXJhbmdlXSxcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgZm9ybSBpbnB1dFt0eXBlPWRhdGVdLFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSBmb3JtIGlucHV0W3R5cGU9bW9udGhdLFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSBmb3JtIGlucHV0W3R5cGU9d2Vla10sXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIGZvcm0gaW5wdXRbdHlwZT10aW1lXSxcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgZm9ybSBpbnB1dFt0eXBlPWRhdGV0aW1lXSxcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgZm9ybSBpbnB1dFt0eXBlPWRhdGV0aW1lLWxvY2FsXSxcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgZm9ybSBpbnB1dFt0eXBlPWNvbG9yXSxcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgZm9ybSB0ZXh0YXJlYSxcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgZm9ybSAuaW5wdXQtdGV4dCxcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgZm9ybSAuc2VsZWN0MiAuc2VsZWN0Mi1zZWxlY3Rpb24sIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSBmb3JtIHNlbGVjdCxcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgZm9ybSBzZWxlY3Qge1xuICB3aWR0aDogMTAwJTtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgcGFkZGluZzogMC42ODc1cmVtIDFyZW07XG4gIGZvbnQtc2l6ZTogdmFyKC0taXQtc2l6ZS1zbWFsbCk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWl0LWNvbG9yLWJvcmRlcik7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWl0LWJvcmRlci1yYWRpdXMpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pdC1jb2xvci13aGl0ZSk7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1pdC1mb250LWZhbWlseSk7XG4gIGNvbG9yOiB2YXIoLS1pdC1jb2xvci1ibGFjayk7XG59XG4ud29vY29tbWVyY2UtY2FydCAud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jYXJ0LWZvcm0gdHI6bGFzdC1jaGlsZCAuY291cG9uIC5pbnB1dC10ZXh0Oi13ZWJraXQtYXV0b2ZpbGwsIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSBmb3JtIGlucHV0W3R5cGU9dGV4dF06LXdlYmtpdC1hdXRvZmlsbCxcbi53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSBmb3JtIGlucHV0W3R5cGU9ZW1haWxdOi13ZWJraXQtYXV0b2ZpbGwsXG4ud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgZm9ybSBpbnB1dFt0eXBlPXVybF06LXdlYmtpdC1hdXRvZmlsbCxcbi53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSBmb3JtIGlucHV0W3R5cGU9cGFzc3dvcmRdOi13ZWJraXQtYXV0b2ZpbGwsXG4ud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgZm9ybSBpbnB1dFt0eXBlPXNlYXJjaF06LXdlYmtpdC1hdXRvZmlsbCxcbi53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSBmb3JtIGlucHV0W3R5cGU9bnVtYmVyXTotd2Via2l0LWF1dG9maWxsLFxuLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIGZvcm0gaW5wdXRbdHlwZT10ZWxdOi13ZWJraXQtYXV0b2ZpbGwsXG4ud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgZm9ybSBpbnB1dFt0eXBlPXJhbmdlXTotd2Via2l0LWF1dG9maWxsLFxuLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIGZvcm0gaW5wdXRbdHlwZT1kYXRlXTotd2Via2l0LWF1dG9maWxsLFxuLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIGZvcm0gaW5wdXRbdHlwZT1tb250aF06LXdlYmtpdC1hdXRvZmlsbCxcbi53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSBmb3JtIGlucHV0W3R5cGU9d2Vla106LXdlYmtpdC1hdXRvZmlsbCxcbi53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSBmb3JtIGlucHV0W3R5cGU9dGltZV06LXdlYmtpdC1hdXRvZmlsbCxcbi53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSBmb3JtIGlucHV0W3R5cGU9ZGF0ZXRpbWVdOi13ZWJraXQtYXV0b2ZpbGwsXG4ud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgZm9ybSBpbnB1dFt0eXBlPWRhdGV0aW1lLWxvY2FsXTotd2Via2l0LWF1dG9maWxsLFxuLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIGZvcm0gaW5wdXRbdHlwZT1jb2xvcl06LXdlYmtpdC1hdXRvZmlsbCxcbi53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSBmb3JtIHRleHRhcmVhOi13ZWJraXQtYXV0b2ZpbGwsXG4ud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgZm9ybSAuaW5wdXQtdGV4dDotd2Via2l0LWF1dG9maWxsLFxuLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIGZvcm0gLnNlbGVjdDIgLnNlbGVjdDItc2VsZWN0aW9uOi13ZWJraXQtYXV0b2ZpbGwsXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIGZvcm0gaW5wdXRbdHlwZT10ZXh0XTotd2Via2l0LWF1dG9maWxsLFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSBmb3JtIGlucHV0W3R5cGU9ZW1haWxdOi13ZWJraXQtYXV0b2ZpbGwsXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIGZvcm0gaW5wdXRbdHlwZT11cmxdOi13ZWJraXQtYXV0b2ZpbGwsXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIGZvcm0gaW5wdXRbdHlwZT1wYXNzd29yZF06LXdlYmtpdC1hdXRvZmlsbCxcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgZm9ybSBpbnB1dFt0eXBlPXNlYXJjaF06LXdlYmtpdC1hdXRvZmlsbCxcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgZm9ybSBpbnB1dFt0eXBlPW51bWJlcl06LXdlYmtpdC1hdXRvZmlsbCxcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgZm9ybSBpbnB1dFt0eXBlPXRlbF06LXdlYmtpdC1hdXRvZmlsbCxcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgZm9ybSBpbnB1dFt0eXBlPXJhbmdlXTotd2Via2l0LWF1dG9maWxsLFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSBmb3JtIGlucHV0W3R5cGU9ZGF0ZV06LXdlYmtpdC1hdXRvZmlsbCxcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgZm9ybSBpbnB1dFt0eXBlPW1vbnRoXTotd2Via2l0LWF1dG9maWxsLFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSBmb3JtIGlucHV0W3R5cGU9d2Vla106LXdlYmtpdC1hdXRvZmlsbCxcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgZm9ybSBpbnB1dFt0eXBlPXRpbWVdOi13ZWJraXQtYXV0b2ZpbGwsXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIGZvcm0gaW5wdXRbdHlwZT1kYXRldGltZV06LXdlYmtpdC1hdXRvZmlsbCxcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgZm9ybSBpbnB1dFt0eXBlPWRhdGV0aW1lLWxvY2FsXTotd2Via2l0LWF1dG9maWxsLFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSBmb3JtIGlucHV0W3R5cGU9Y29sb3JdOi13ZWJraXQtYXV0b2ZpbGwsXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIGZvcm0gdGV4dGFyZWE6LXdlYmtpdC1hdXRvZmlsbCxcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgZm9ybSAuaW5wdXQtdGV4dDotd2Via2l0LWF1dG9maWxsLFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSBmb3JtIC5zZWxlY3QyIC5zZWxlY3QyLXNlbGVjdGlvbjotd2Via2l0LWF1dG9maWxsLCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgZm9ybSBzZWxlY3Q6LXdlYmtpdC1hdXRvZmlsbCxcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgZm9ybSBzZWxlY3Q6LXdlYmtpdC1hdXRvZmlsbCwgLndvb2NvbW1lcmNlLWNhcnQgLndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2FydC1mb3JtIHRyOmxhc3QtY2hpbGQgLmNvdXBvbiAuaW5wdXQtdGV4dDotd2Via2l0LWF1dG9maWxsOmhvdmVyLCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgZm9ybSBpbnB1dFt0eXBlPXRleHRdOi13ZWJraXQtYXV0b2ZpbGw6aG92ZXIsXG4ud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgZm9ybSBpbnB1dFt0eXBlPWVtYWlsXTotd2Via2l0LWF1dG9maWxsOmhvdmVyLFxuLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIGZvcm0gaW5wdXRbdHlwZT11cmxdOi13ZWJraXQtYXV0b2ZpbGw6aG92ZXIsXG4ud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgZm9ybSBpbnB1dFt0eXBlPXBhc3N3b3JkXTotd2Via2l0LWF1dG9maWxsOmhvdmVyLFxuLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIGZvcm0gaW5wdXRbdHlwZT1zZWFyY2hdOi13ZWJraXQtYXV0b2ZpbGw6aG92ZXIsXG4ud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgZm9ybSBpbnB1dFt0eXBlPW51bWJlcl06LXdlYmtpdC1hdXRvZmlsbDpob3Zlcixcbi53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSBmb3JtIGlucHV0W3R5cGU9dGVsXTotd2Via2l0LWF1dG9maWxsOmhvdmVyLFxuLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIGZvcm0gaW5wdXRbdHlwZT1yYW5nZV06LXdlYmtpdC1hdXRvZmlsbDpob3Zlcixcbi53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSBmb3JtIGlucHV0W3R5cGU9ZGF0ZV06LXdlYmtpdC1hdXRvZmlsbDpob3Zlcixcbi53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSBmb3JtIGlucHV0W3R5cGU9bW9udGhdOi13ZWJraXQtYXV0b2ZpbGw6aG92ZXIsXG4ud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgZm9ybSBpbnB1dFt0eXBlPXdlZWtdOi13ZWJraXQtYXV0b2ZpbGw6aG92ZXIsXG4ud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgZm9ybSBpbnB1dFt0eXBlPXRpbWVdOi13ZWJraXQtYXV0b2ZpbGw6aG92ZXIsXG4ud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgZm9ybSBpbnB1dFt0eXBlPWRhdGV0aW1lXTotd2Via2l0LWF1dG9maWxsOmhvdmVyLFxuLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIGZvcm0gaW5wdXRbdHlwZT1kYXRldGltZS1sb2NhbF06LXdlYmtpdC1hdXRvZmlsbDpob3Zlcixcbi53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSBmb3JtIGlucHV0W3R5cGU9Y29sb3JdOi13ZWJraXQtYXV0b2ZpbGw6aG92ZXIsXG4ud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgZm9ybSB0ZXh0YXJlYTotd2Via2l0LWF1dG9maWxsOmhvdmVyLFxuLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIGZvcm0gLmlucHV0LXRleHQ6LXdlYmtpdC1hdXRvZmlsbDpob3Zlcixcbi53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSBmb3JtIC5zZWxlY3QyIC5zZWxlY3QyLXNlbGVjdGlvbjotd2Via2l0LWF1dG9maWxsOmhvdmVyLFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSBmb3JtIGlucHV0W3R5cGU9dGV4dF06LXdlYmtpdC1hdXRvZmlsbDpob3Zlcixcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgZm9ybSBpbnB1dFt0eXBlPWVtYWlsXTotd2Via2l0LWF1dG9maWxsOmhvdmVyLFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSBmb3JtIGlucHV0W3R5cGU9dXJsXTotd2Via2l0LWF1dG9maWxsOmhvdmVyLFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSBmb3JtIGlucHV0W3R5cGU9cGFzc3dvcmRdOi13ZWJraXQtYXV0b2ZpbGw6aG92ZXIsXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIGZvcm0gaW5wdXRbdHlwZT1zZWFyY2hdOi13ZWJraXQtYXV0b2ZpbGw6aG92ZXIsXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIGZvcm0gaW5wdXRbdHlwZT1udW1iZXJdOi13ZWJraXQtYXV0b2ZpbGw6aG92ZXIsXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIGZvcm0gaW5wdXRbdHlwZT10ZWxdOi13ZWJraXQtYXV0b2ZpbGw6aG92ZXIsXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIGZvcm0gaW5wdXRbdHlwZT1yYW5nZV06LXdlYmtpdC1hdXRvZmlsbDpob3Zlcixcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgZm9ybSBpbnB1dFt0eXBlPWRhdGVdOi13ZWJraXQtYXV0b2ZpbGw6aG92ZXIsXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIGZvcm0gaW5wdXRbdHlwZT1tb250aF06LXdlYmtpdC1hdXRvZmlsbDpob3Zlcixcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgZm9ybSBpbnB1dFt0eXBlPXdlZWtdOi13ZWJraXQtYXV0b2ZpbGw6aG92ZXIsXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIGZvcm0gaW5wdXRbdHlwZT10aW1lXTotd2Via2l0LWF1dG9maWxsOmhvdmVyLFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSBmb3JtIGlucHV0W3R5cGU9ZGF0ZXRpbWVdOi13ZWJraXQtYXV0b2ZpbGw6aG92ZXIsXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIGZvcm0gaW5wdXRbdHlwZT1kYXRldGltZS1sb2NhbF06LXdlYmtpdC1hdXRvZmlsbDpob3Zlcixcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgZm9ybSBpbnB1dFt0eXBlPWNvbG9yXTotd2Via2l0LWF1dG9maWxsOmhvdmVyLFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSBmb3JtIHRleHRhcmVhOi13ZWJraXQtYXV0b2ZpbGw6aG92ZXIsXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIGZvcm0gLmlucHV0LXRleHQ6LXdlYmtpdC1hdXRvZmlsbDpob3Zlcixcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgZm9ybSAuc2VsZWN0MiAuc2VsZWN0Mi1zZWxlY3Rpb246LXdlYmtpdC1hdXRvZmlsbDpob3ZlciwgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIGZvcm0gc2VsZWN0Oi13ZWJraXQtYXV0b2ZpbGw6aG92ZXIsXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIGZvcm0gc2VsZWN0Oi13ZWJraXQtYXV0b2ZpbGw6aG92ZXIsIC53b29jb21tZXJjZS1jYXJ0IC53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNhcnQtZm9ybSB0cjpsYXN0LWNoaWxkIC5jb3Vwb24gLmlucHV0LXRleHQ6LXdlYmtpdC1hdXRvZmlsbDpmb2N1cywgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIGZvcm0gaW5wdXRbdHlwZT10ZXh0XTotd2Via2l0LWF1dG9maWxsOmZvY3VzLFxuLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIGZvcm0gaW5wdXRbdHlwZT1lbWFpbF06LXdlYmtpdC1hdXRvZmlsbDpmb2N1cyxcbi53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSBmb3JtIGlucHV0W3R5cGU9dXJsXTotd2Via2l0LWF1dG9maWxsOmZvY3VzLFxuLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIGZvcm0gaW5wdXRbdHlwZT1wYXNzd29yZF06LXdlYmtpdC1hdXRvZmlsbDpmb2N1cyxcbi53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSBmb3JtIGlucHV0W3R5cGU9c2VhcmNoXTotd2Via2l0LWF1dG9maWxsOmZvY3VzLFxuLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIGZvcm0gaW5wdXRbdHlwZT1udW1iZXJdOi13ZWJraXQtYXV0b2ZpbGw6Zm9jdXMsXG4ud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgZm9ybSBpbnB1dFt0eXBlPXRlbF06LXdlYmtpdC1hdXRvZmlsbDpmb2N1cyxcbi53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSBmb3JtIGlucHV0W3R5cGU9cmFuZ2VdOi13ZWJraXQtYXV0b2ZpbGw6Zm9jdXMsXG4ud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgZm9ybSBpbnB1dFt0eXBlPWRhdGVdOi13ZWJraXQtYXV0b2ZpbGw6Zm9jdXMsXG4ud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgZm9ybSBpbnB1dFt0eXBlPW1vbnRoXTotd2Via2l0LWF1dG9maWxsOmZvY3VzLFxuLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIGZvcm0gaW5wdXRbdHlwZT13ZWVrXTotd2Via2l0LWF1dG9maWxsOmZvY3VzLFxuLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIGZvcm0gaW5wdXRbdHlwZT10aW1lXTotd2Via2l0LWF1dG9maWxsOmZvY3VzLFxuLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIGZvcm0gaW5wdXRbdHlwZT1kYXRldGltZV06LXdlYmtpdC1hdXRvZmlsbDpmb2N1cyxcbi53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSBmb3JtIGlucHV0W3R5cGU9ZGF0ZXRpbWUtbG9jYWxdOi13ZWJraXQtYXV0b2ZpbGw6Zm9jdXMsXG4ud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgZm9ybSBpbnB1dFt0eXBlPWNvbG9yXTotd2Via2l0LWF1dG9maWxsOmZvY3VzLFxuLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIGZvcm0gdGV4dGFyZWE6LXdlYmtpdC1hdXRvZmlsbDpmb2N1cyxcbi53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSBmb3JtIC5pbnB1dC10ZXh0Oi13ZWJraXQtYXV0b2ZpbGw6Zm9jdXMsXG4ud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgZm9ybSAuc2VsZWN0MiAuc2VsZWN0Mi1zZWxlY3Rpb246LXdlYmtpdC1hdXRvZmlsbDpmb2N1cyxcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgZm9ybSBpbnB1dFt0eXBlPXRleHRdOi13ZWJraXQtYXV0b2ZpbGw6Zm9jdXMsXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIGZvcm0gaW5wdXRbdHlwZT1lbWFpbF06LXdlYmtpdC1hdXRvZmlsbDpmb2N1cyxcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgZm9ybSBpbnB1dFt0eXBlPXVybF06LXdlYmtpdC1hdXRvZmlsbDpmb2N1cyxcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgZm9ybSBpbnB1dFt0eXBlPXBhc3N3b3JkXTotd2Via2l0LWF1dG9maWxsOmZvY3VzLFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSBmb3JtIGlucHV0W3R5cGU9c2VhcmNoXTotd2Via2l0LWF1dG9maWxsOmZvY3VzLFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSBmb3JtIGlucHV0W3R5cGU9bnVtYmVyXTotd2Via2l0LWF1dG9maWxsOmZvY3VzLFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSBmb3JtIGlucHV0W3R5cGU9dGVsXTotd2Via2l0LWF1dG9maWxsOmZvY3VzLFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSBmb3JtIGlucHV0W3R5cGU9cmFuZ2VdOi13ZWJraXQtYXV0b2ZpbGw6Zm9jdXMsXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIGZvcm0gaW5wdXRbdHlwZT1kYXRlXTotd2Via2l0LWF1dG9maWxsOmZvY3VzLFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSBmb3JtIGlucHV0W3R5cGU9bW9udGhdOi13ZWJraXQtYXV0b2ZpbGw6Zm9jdXMsXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIGZvcm0gaW5wdXRbdHlwZT13ZWVrXTotd2Via2l0LWF1dG9maWxsOmZvY3VzLFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSBmb3JtIGlucHV0W3R5cGU9dGltZV06LXdlYmtpdC1hdXRvZmlsbDpmb2N1cyxcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgZm9ybSBpbnB1dFt0eXBlPWRhdGV0aW1lXTotd2Via2l0LWF1dG9maWxsOmZvY3VzLFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSBmb3JtIGlucHV0W3R5cGU9ZGF0ZXRpbWUtbG9jYWxdOi13ZWJraXQtYXV0b2ZpbGw6Zm9jdXMsXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIGZvcm0gaW5wdXRbdHlwZT1jb2xvcl06LXdlYmtpdC1hdXRvZmlsbDpmb2N1cyxcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgZm9ybSB0ZXh0YXJlYTotd2Via2l0LWF1dG9maWxsOmZvY3VzLFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSBmb3JtIC5pbnB1dC10ZXh0Oi13ZWJraXQtYXV0b2ZpbGw6Zm9jdXMsXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIGZvcm0gLnNlbGVjdDIgLnNlbGVjdDItc2VsZWN0aW9uOi13ZWJraXQtYXV0b2ZpbGw6Zm9jdXMsIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSBmb3JtIHNlbGVjdDotd2Via2l0LWF1dG9maWxsOmZvY3VzLFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSBmb3JtIHNlbGVjdDotd2Via2l0LWF1dG9maWxsOmZvY3VzLCAud29vY29tbWVyY2UtY2FydCAud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jYXJ0LWZvcm0gdHI6bGFzdC1jaGlsZCAuY291cG9uIC5pbnB1dC10ZXh0Oi13ZWJraXQtYXV0b2ZpbGw6YWN0aXZlLCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgZm9ybSBpbnB1dFt0eXBlPXRleHRdOi13ZWJraXQtYXV0b2ZpbGw6YWN0aXZlLFxuLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIGZvcm0gaW5wdXRbdHlwZT1lbWFpbF06LXdlYmtpdC1hdXRvZmlsbDphY3RpdmUsXG4ud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgZm9ybSBpbnB1dFt0eXBlPXVybF06LXdlYmtpdC1hdXRvZmlsbDphY3RpdmUsXG4ud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgZm9ybSBpbnB1dFt0eXBlPXBhc3N3b3JkXTotd2Via2l0LWF1dG9maWxsOmFjdGl2ZSxcbi53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSBmb3JtIGlucHV0W3R5cGU9c2VhcmNoXTotd2Via2l0LWF1dG9maWxsOmFjdGl2ZSxcbi53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSBmb3JtIGlucHV0W3R5cGU9bnVtYmVyXTotd2Via2l0LWF1dG9maWxsOmFjdGl2ZSxcbi53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSBmb3JtIGlucHV0W3R5cGU9dGVsXTotd2Via2l0LWF1dG9maWxsOmFjdGl2ZSxcbi53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSBmb3JtIGlucHV0W3R5cGU9cmFuZ2VdOi13ZWJraXQtYXV0b2ZpbGw6YWN0aXZlLFxuLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIGZvcm0gaW5wdXRbdHlwZT1kYXRlXTotd2Via2l0LWF1dG9maWxsOmFjdGl2ZSxcbi53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSBmb3JtIGlucHV0W3R5cGU9bW9udGhdOi13ZWJraXQtYXV0b2ZpbGw6YWN0aXZlLFxuLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIGZvcm0gaW5wdXRbdHlwZT13ZWVrXTotd2Via2l0LWF1dG9maWxsOmFjdGl2ZSxcbi53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSBmb3JtIGlucHV0W3R5cGU9dGltZV06LXdlYmtpdC1hdXRvZmlsbDphY3RpdmUsXG4ud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgZm9ybSBpbnB1dFt0eXBlPWRhdGV0aW1lXTotd2Via2l0LWF1dG9maWxsOmFjdGl2ZSxcbi53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSBmb3JtIGlucHV0W3R5cGU9ZGF0ZXRpbWUtbG9jYWxdOi13ZWJraXQtYXV0b2ZpbGw6YWN0aXZlLFxuLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIGZvcm0gaW5wdXRbdHlwZT1jb2xvcl06LXdlYmtpdC1hdXRvZmlsbDphY3RpdmUsXG4ud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgZm9ybSB0ZXh0YXJlYTotd2Via2l0LWF1dG9maWxsOmFjdGl2ZSxcbi53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSBmb3JtIC5pbnB1dC10ZXh0Oi13ZWJraXQtYXV0b2ZpbGw6YWN0aXZlLFxuLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIGZvcm0gLnNlbGVjdDIgLnNlbGVjdDItc2VsZWN0aW9uOi13ZWJraXQtYXV0b2ZpbGw6YWN0aXZlLFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSBmb3JtIGlucHV0W3R5cGU9dGV4dF06LXdlYmtpdC1hdXRvZmlsbDphY3RpdmUsXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIGZvcm0gaW5wdXRbdHlwZT1lbWFpbF06LXdlYmtpdC1hdXRvZmlsbDphY3RpdmUsXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIGZvcm0gaW5wdXRbdHlwZT11cmxdOi13ZWJraXQtYXV0b2ZpbGw6YWN0aXZlLFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSBmb3JtIGlucHV0W3R5cGU9cGFzc3dvcmRdOi13ZWJraXQtYXV0b2ZpbGw6YWN0aXZlLFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSBmb3JtIGlucHV0W3R5cGU9c2VhcmNoXTotd2Via2l0LWF1dG9maWxsOmFjdGl2ZSxcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgZm9ybSBpbnB1dFt0eXBlPW51bWJlcl06LXdlYmtpdC1hdXRvZmlsbDphY3RpdmUsXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIGZvcm0gaW5wdXRbdHlwZT10ZWxdOi13ZWJraXQtYXV0b2ZpbGw6YWN0aXZlLFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSBmb3JtIGlucHV0W3R5cGU9cmFuZ2VdOi13ZWJraXQtYXV0b2ZpbGw6YWN0aXZlLFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSBmb3JtIGlucHV0W3R5cGU9ZGF0ZV06LXdlYmtpdC1hdXRvZmlsbDphY3RpdmUsXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIGZvcm0gaW5wdXRbdHlwZT1tb250aF06LXdlYmtpdC1hdXRvZmlsbDphY3RpdmUsXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIGZvcm0gaW5wdXRbdHlwZT13ZWVrXTotd2Via2l0LWF1dG9maWxsOmFjdGl2ZSxcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgZm9ybSBpbnB1dFt0eXBlPXRpbWVdOi13ZWJraXQtYXV0b2ZpbGw6YWN0aXZlLFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSBmb3JtIGlucHV0W3R5cGU9ZGF0ZXRpbWVdOi13ZWJraXQtYXV0b2ZpbGw6YWN0aXZlLFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSBmb3JtIGlucHV0W3R5cGU9ZGF0ZXRpbWUtbG9jYWxdOi13ZWJraXQtYXV0b2ZpbGw6YWN0aXZlLFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSBmb3JtIGlucHV0W3R5cGU9Y29sb3JdOi13ZWJraXQtYXV0b2ZpbGw6YWN0aXZlLFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSBmb3JtIHRleHRhcmVhOi13ZWJraXQtYXV0b2ZpbGw6YWN0aXZlLFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSBmb3JtIC5pbnB1dC10ZXh0Oi13ZWJraXQtYXV0b2ZpbGw6YWN0aXZlLFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSBmb3JtIC5zZWxlY3QyIC5zZWxlY3QyLXNlbGVjdGlvbjotd2Via2l0LWF1dG9maWxsOmFjdGl2ZSwgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIGZvcm0gc2VsZWN0Oi13ZWJraXQtYXV0b2ZpbGw6YWN0aXZlLFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSBmb3JtIHNlbGVjdDotd2Via2l0LWF1dG9maWxsOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWl0LWNvbG9yLXdoaXRlKTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwcyA5OTk5cztcbiAgY29sb3I6IHZhcigtLWl0LWNvbG9yLWJsYWNrKTtcbn1cbi53b29jb21tZXJjZS1jYXJ0IC53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNhcnQtZm9ybSB0cjpsYXN0LWNoaWxkIC5jb3Vwb24gLmlucHV0LXRleHQ6Zm9jdXMsIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSBmb3JtIGlucHV0W3R5cGU9dGV4dF06Zm9jdXMsXG4ud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgZm9ybSBpbnB1dFt0eXBlPWVtYWlsXTpmb2N1cyxcbi53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSBmb3JtIGlucHV0W3R5cGU9dXJsXTpmb2N1cyxcbi53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSBmb3JtIGlucHV0W3R5cGU9cGFzc3dvcmRdOmZvY3VzLFxuLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIGZvcm0gaW5wdXRbdHlwZT1zZWFyY2hdOmZvY3VzLFxuLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIGZvcm0gaW5wdXRbdHlwZT1udW1iZXJdOmZvY3VzLFxuLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIGZvcm0gaW5wdXRbdHlwZT10ZWxdOmZvY3VzLFxuLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIGZvcm0gaW5wdXRbdHlwZT1yYW5nZV06Zm9jdXMsXG4ud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgZm9ybSBpbnB1dFt0eXBlPWRhdGVdOmZvY3VzLFxuLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIGZvcm0gaW5wdXRbdHlwZT1tb250aF06Zm9jdXMsXG4ud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgZm9ybSBpbnB1dFt0eXBlPXdlZWtdOmZvY3VzLFxuLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIGZvcm0gaW5wdXRbdHlwZT10aW1lXTpmb2N1cyxcbi53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSBmb3JtIGlucHV0W3R5cGU9ZGF0ZXRpbWVdOmZvY3VzLFxuLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIGZvcm0gaW5wdXRbdHlwZT1kYXRldGltZS1sb2NhbF06Zm9jdXMsXG4ud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgZm9ybSBpbnB1dFt0eXBlPWNvbG9yXTpmb2N1cyxcbi53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSBmb3JtIHRleHRhcmVhOmZvY3VzLFxuLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIGZvcm0gLmlucHV0LXRleHQ6Zm9jdXMsXG4ud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgZm9ybSAuc2VsZWN0MiAuc2VsZWN0Mi1zZWxlY3Rpb246Zm9jdXMsXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIGZvcm0gaW5wdXRbdHlwZT10ZXh0XTpmb2N1cyxcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgZm9ybSBpbnB1dFt0eXBlPWVtYWlsXTpmb2N1cyxcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgZm9ybSBpbnB1dFt0eXBlPXVybF06Zm9jdXMsXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIGZvcm0gaW5wdXRbdHlwZT1wYXNzd29yZF06Zm9jdXMsXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIGZvcm0gaW5wdXRbdHlwZT1zZWFyY2hdOmZvY3VzLFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSBmb3JtIGlucHV0W3R5cGU9bnVtYmVyXTpmb2N1cyxcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgZm9ybSBpbnB1dFt0eXBlPXRlbF06Zm9jdXMsXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIGZvcm0gaW5wdXRbdHlwZT1yYW5nZV06Zm9jdXMsXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIGZvcm0gaW5wdXRbdHlwZT1kYXRlXTpmb2N1cyxcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgZm9ybSBpbnB1dFt0eXBlPW1vbnRoXTpmb2N1cyxcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgZm9ybSBpbnB1dFt0eXBlPXdlZWtdOmZvY3VzLFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSBmb3JtIGlucHV0W3R5cGU9dGltZV06Zm9jdXMsXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIGZvcm0gaW5wdXRbdHlwZT1kYXRldGltZV06Zm9jdXMsXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIGZvcm0gaW5wdXRbdHlwZT1kYXRldGltZS1sb2NhbF06Zm9jdXMsXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIGZvcm0gaW5wdXRbdHlwZT1jb2xvcl06Zm9jdXMsXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIGZvcm0gdGV4dGFyZWE6Zm9jdXMsXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIGZvcm0gLmlucHV0LXRleHQ6Zm9jdXMsXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIGZvcm0gLnNlbGVjdDIgLnNlbGVjdDItc2VsZWN0aW9uOmZvY3VzLCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgZm9ybSBzZWxlY3Q6Zm9jdXMsXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIGZvcm0gc2VsZWN0OmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1pdC1jb2xvci1icmFuZCk7XG59XG4ud29vY29tbWVyY2UtY2FydCAud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jYXJ0LWZvcm0gdHI6bGFzdC1jaGlsZCAuY291cG9uIFtyZWFkb25seV0uaW5wdXQtdGV4dCwgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIGZvcm0gaW5wdXRbcmVhZG9ubHldW3R5cGU9dGV4dF0sXG4ud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgZm9ybSBpbnB1dFtyZWFkb25seV1bdHlwZT1lbWFpbF0sXG4ud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgZm9ybSBpbnB1dFtyZWFkb25seV1bdHlwZT11cmxdLFxuLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIGZvcm0gaW5wdXRbcmVhZG9ubHldW3R5cGU9cGFzc3dvcmRdLFxuLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIGZvcm0gaW5wdXRbcmVhZG9ubHldW3R5cGU9c2VhcmNoXSxcbi53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSBmb3JtIGlucHV0W3JlYWRvbmx5XVt0eXBlPW51bWJlcl0sXG4ud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgZm9ybSBpbnB1dFtyZWFkb25seV1bdHlwZT10ZWxdLFxuLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIGZvcm0gaW5wdXRbcmVhZG9ubHldW3R5cGU9cmFuZ2VdLFxuLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIGZvcm0gaW5wdXRbcmVhZG9ubHldW3R5cGU9ZGF0ZV0sXG4ud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgZm9ybSBpbnB1dFtyZWFkb25seV1bdHlwZT1tb250aF0sXG4ud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgZm9ybSBpbnB1dFtyZWFkb25seV1bdHlwZT13ZWVrXSxcbi53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSBmb3JtIGlucHV0W3JlYWRvbmx5XVt0eXBlPXRpbWVdLFxuLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIGZvcm0gaW5wdXRbcmVhZG9ubHldW3R5cGU9ZGF0ZXRpbWVdLFxuLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIGZvcm0gaW5wdXRbcmVhZG9ubHldW3R5cGU9ZGF0ZXRpbWUtbG9jYWxdLFxuLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIGZvcm0gaW5wdXRbcmVhZG9ubHldW3R5cGU9Y29sb3JdLFxuLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIGZvcm0gdGV4dGFyZWFbcmVhZG9ubHldLFxuLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIGZvcm0gW3JlYWRvbmx5XS5pbnB1dC10ZXh0LFxuLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIGZvcm0gLnNlbGVjdDIgW3JlYWRvbmx5XS5zZWxlY3QyLXNlbGVjdGlvbixcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgZm9ybSBpbnB1dFtyZWFkb25seV1bdHlwZT10ZXh0XSxcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgZm9ybSBpbnB1dFtyZWFkb25seV1bdHlwZT1lbWFpbF0sXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIGZvcm0gaW5wdXRbcmVhZG9ubHldW3R5cGU9dXJsXSxcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgZm9ybSBpbnB1dFtyZWFkb25seV1bdHlwZT1wYXNzd29yZF0sXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIGZvcm0gaW5wdXRbcmVhZG9ubHldW3R5cGU9c2VhcmNoXSxcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgZm9ybSBpbnB1dFtyZWFkb25seV1bdHlwZT1udW1iZXJdLFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSBmb3JtIGlucHV0W3JlYWRvbmx5XVt0eXBlPXRlbF0sXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIGZvcm0gaW5wdXRbcmVhZG9ubHldW3R5cGU9cmFuZ2VdLFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSBmb3JtIGlucHV0W3JlYWRvbmx5XVt0eXBlPWRhdGVdLFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSBmb3JtIGlucHV0W3JlYWRvbmx5XVt0eXBlPW1vbnRoXSxcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgZm9ybSBpbnB1dFtyZWFkb25seV1bdHlwZT13ZWVrXSxcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgZm9ybSBpbnB1dFtyZWFkb25seV1bdHlwZT10aW1lXSxcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgZm9ybSBpbnB1dFtyZWFkb25seV1bdHlwZT1kYXRldGltZV0sXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIGZvcm0gaW5wdXRbcmVhZG9ubHldW3R5cGU9ZGF0ZXRpbWUtbG9jYWxdLFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSBmb3JtIGlucHV0W3JlYWRvbmx5XVt0eXBlPWNvbG9yXSxcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgZm9ybSB0ZXh0YXJlYVtyZWFkb25seV0sXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIGZvcm0gW3JlYWRvbmx5XS5pbnB1dC10ZXh0LFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSBmb3JtIC5zZWxlY3QyIFtyZWFkb25seV0uc2VsZWN0Mi1zZWxlY3Rpb24sIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSBmb3JtIHNlbGVjdFtyZWFkb25seV0sXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIGZvcm0gc2VsZWN0W3JlYWRvbmx5XSB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWl0LWNvbG9yLWxpZ2h0LWdyYXkpO1xufVxuXG4ud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgZm9ybSBpbnB1dFt0eXBlPWNoZWNrYm94XSxcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgZm9ybSBpbnB1dFt0eXBlPWNoZWNrYm94XSB7XG4gIHdpZHRoOiAxLjEyNXJlbTtcbiAgaGVpZ2h0OiAxLjEyNXJlbTtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0taXQtY29sb3ItYmxhY2spO1xuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMXB4KTtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuLml0LWludHJvLS1mdWxsd2lkdGggLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIGZvcm0gaW5wdXRbdHlwZT1jaGVja2JveF0sIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSBmb3JtIC5pdC1pbnRyby0tZnVsbHdpZHRoIGlucHV0W3R5cGU9Y2hlY2tib3hdLFxuLml0LWludHJvLS1mdWxsd2lkdGggLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSBmb3JtIGlucHV0W3R5cGU9Y2hlY2tib3hdLFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSBmb3JtIC5pdC1pbnRyby0tZnVsbHdpZHRoIGlucHV0W3R5cGU9Y2hlY2tib3hdLCAuaGFzLWJnLWRhcmsgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIGZvcm0gaW5wdXRbdHlwZT1jaGVja2JveF0sIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSBmb3JtIC5oYXMtYmctZGFyayBpbnB1dFt0eXBlPWNoZWNrYm94XSxcbi5oYXMtYmctZGFyayAud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIGZvcm0gaW5wdXRbdHlwZT1jaGVja2JveF0sXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIGZvcm0gLmhhcy1iZy1kYXJrIGlucHV0W3R5cGU9Y2hlY2tib3hdIHtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1pdC1jb2xvci13aGl0ZSk7XG59XG4uaXQtaW50cm8tLWZ1bGx3aWR0aCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgZm9ybSBpbnB1dFt0eXBlPWNoZWNrYm94XTpjaGVja2VkOmJlZm9yZSwgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIGZvcm0gLml0LWludHJvLS1mdWxsd2lkdGggaW5wdXRbdHlwZT1jaGVja2JveF06Y2hlY2tlZDpiZWZvcmUsXG4uaXQtaW50cm8tLWZ1bGx3aWR0aCAud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIGZvcm0gaW5wdXRbdHlwZT1jaGVja2JveF06Y2hlY2tlZDpiZWZvcmUsXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIGZvcm0gLml0LWludHJvLS1mdWxsd2lkdGggaW5wdXRbdHlwZT1jaGVja2JveF06Y2hlY2tlZDpiZWZvcmUsIC5oYXMtYmctZGFyayAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgZm9ybSBpbnB1dFt0eXBlPWNoZWNrYm94XTpjaGVja2VkOmJlZm9yZSwgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIGZvcm0gLmhhcy1iZy1kYXJrIGlucHV0W3R5cGU9Y2hlY2tib3hdOmNoZWNrZWQ6YmVmb3JlLFxuLmhhcy1iZy1kYXJrIC53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgZm9ybSBpbnB1dFt0eXBlPWNoZWNrYm94XTpjaGVja2VkOmJlZm9yZSxcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgZm9ybSAuaGFzLWJnLWRhcmsgaW5wdXRbdHlwZT1jaGVja2JveF06Y2hlY2tlZDpiZWZvcmUge1xuICBjb250ZW50OiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnIHdpZHRoPScxMicgaGVpZ2h0PSc4JyB2aWV3Qm94PScwIDAgMTIgOCcgZmlsbD0nbm9uZScgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyUzRSUzQ3BhdGggZD0nTTIuMDUxMjggMy4yNDE1QzEuOTE1ODcgMy4wOTc0OSAxLjcyOTA5IDMuMDEyNzYgMS41MzE1NCAzLjAwNTczQzEuMzMzOTkgMi45OTg3MSAxLjE0MTY2IDMuMDY5OTUgMC45OTYzNiAzLjIwMzk4QzAuODUxMDY0IDMuMzM4MDEgMC43NjQ1NTUgMy41MjM5OCAwLjc1NTY0NiAzLjcyMTQ1QzAuNzQ2NzM2IDMuOTE4OTIgMC44MTYxNDYgNC4xMTE5MyAwLjk0ODc4MiA0LjI1ODVMMy42NTc3OCA3LjE5Nzc1QzQuMDYwNTMgNy41OTIyNSA0LjY2MDUzIDcuNTkyMjUgNS4wMzMyOCA3LjIyMDI1TDUuMzA2MjggNi45NTFDNi4yOTIxOCA1Ljk4MTQxIDcuMjc2OTMgNS4wMTA2NiA4LjI2MDUzIDQuMDM4NzVMOC4yOTA1MyA0LjAwODc1QzkuMjA5OCAzLjEwMjggMTAuMTI0MyAyLjE5MjAzIDExLjAzNCAxLjI3NjVDMTEuMTcgMS4xMzQxNSAxMS4yNDQ1IDAuOTQ0MDQ3IDExLjI0MTYgMC43NDcyMTlDMTEuMjM4NiAwLjU1MDM5MSAxMS4xNTg0IDAuMzYyNjE1IDExLjAxODIgMC4yMjQ0MDlDMTAuODc4MSAwLjA4NjIwMjQgMTAuNjg5MiAwLjAwODY0NjkzIDEwLjQ5MjMgMC4wMDg0NzY1NEMxMC4yOTU1IDAuMDA4MzA2MTUgMTAuMTA2NCAwLjA4NTUzNDcgOS45NjYwMyAwLjIyMzQ5OEM5LjA2MDUzIDEuMTM0MjUgOC4xNTA1MiAyLjA0MDUxIDcuMjM2MDMgMi45NDIyNUw3LjIwNjAzIDIuOTcyMjVDNi4yNjM0OSAzLjkwMzk3IDUuMzE5NzQgNC44MzQ0NyA0LjM3NDc4IDUuNzYzNzVMMi4wNTEyOCAzLjI0MTVWMy4yNDE1WicgZmlsbD0nJTIzRkZGRkZGJy8lM0UlM0Mvc3ZnJTNFJTBBXCIpO1xufVxuLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIGZvcm0gaW5wdXRbdHlwZT1jaGVja2JveF06Y2hlY2tlZDpiZWZvcmUsXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIGZvcm0gaW5wdXRbdHlwZT1jaGVja2JveF06Y2hlY2tlZDpiZWZvcmUge1xuICBjb250ZW50OiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnIHdpZHRoPScxMicgaGVpZ2h0PSc4JyB2aWV3Qm94PScwIDAgMTIgOCcgZmlsbD0nbm9uZScgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyUzRSUzQ3BhdGggZD0nTTIuMDUxMjggMy4yNDE1QzEuOTE1ODcgMy4wOTc0OSAxLjcyOTA5IDMuMDEyNzYgMS41MzE1NCAzLjAwNTczQzEuMzMzOTkgMi45OTg3MSAxLjE0MTY2IDMuMDY5OTUgMC45OTYzNiAzLjIwMzk4QzAuODUxMDY0IDMuMzM4MDEgMC43NjQ1NTUgMy41MjM5OCAwLjc1NTY0NiAzLjcyMTQ1QzAuNzQ2NzM2IDMuOTE4OTIgMC44MTYxNDYgNC4xMTE5MyAwLjk0ODc4MiA0LjI1ODVMMy42NTc3OCA3LjE5Nzc1QzQuMDYwNTMgNy41OTIyNSA0LjY2MDUzIDcuNTkyMjUgNS4wMzMyOCA3LjIyMDI1TDUuMzA2MjggNi45NTFDNi4yOTIxOCA1Ljk4MTQxIDcuMjc2OTMgNS4wMTA2NiA4LjI2MDUzIDQuMDM4NzVMOC4yOTA1MyA0LjAwODc1QzkuMjA5OCAzLjEwMjggMTAuMTI0MyAyLjE5MjAzIDExLjAzNCAxLjI3NjVDMTEuMTcgMS4xMzQxNSAxMS4yNDQ1IDAuOTQ0MDQ3IDExLjI0MTYgMC43NDcyMTlDMTEuMjM4NiAwLjU1MDM5MSAxMS4xNTg0IDAuMzYyNjE1IDExLjAxODIgMC4yMjQ0MDlDMTAuODc4MSAwLjA4NjIwMjQgMTAuNjg5MiAwLjAwODY0NjkzIDEwLjQ5MjMgMC4wMDg0NzY1NEMxMC4yOTU1IDAuMDA4MzA2MTUgMTAuMTA2NCAwLjA4NTUzNDcgOS45NjYwMyAwLjIyMzQ5OEM5LjA2MDUzIDEuMTM0MjUgOC4xNTA1MiAyLjA0MDUxIDcuMjM2MDMgMi45NDIyNUw3LjIwNjAzIDIuOTcyMjVDNi4yNjM0OSAzLjkwMzk3IDUuMzE5NzQgNC44MzQ0NyA0LjM3NDc4IDUuNzYzNzVMMi4wNTEyOCAzLjI0MTVWMy4yNDE1WicgZmlsbD0nJTIzMTIxMjEwJy8lM0UlM0Mvc3ZnJTNFJTBBXCIpO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG59XG4ud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgZm9ybSBpbnB1dFt0eXBlPWNoZWNrYm94XTpmb2N1cy12aXNpYmxlLFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSBmb3JtIGlucHV0W3R5cGU9Y2hlY2tib3hdOmZvY3VzLXZpc2libGUge1xuICBvdXRsaW5lLW9mZnNldDogMC4xMjVyZW07XG4gIG91dGxpbmU6IDJweCBzb2xpZCB2YXIoLS1pdC1jb2xvci1hY2NlbnQpO1xuICBib3gtc2hhZG93OiBub25lO1xufVxuXG4ud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgZm9ybSBsYWJlbDpoYXMoaW5wdXRbdHlwZT1jaGVja2JveF0pLFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSBmb3JtIGxhYmVsOmhhcyhpbnB1dFt0eXBlPWNoZWNrYm94XSkge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgZ2FwOiAwLjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLyoqXG4gKiBEbyBub3QgQHVzZSBmaWxlcyB3aXRoIGFjdHVhbCBzY3NzIGNvZGUgaW4gdGhpcyBmaWxlLCBhcyBpdCB3aWxsIGNvbXBpbGUgY3NzIGNvZGUgdHdpY2UuXG4gKiBBcyB0aGlzIGZpbGUgZ29pbmcgdG8gYmUgYW4gc3RhbmRhbG9uZSBjc3MgZmlsZS5cbiAqL1xuLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIGZvcm0gc2VsZWN0LFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSBmb3JtIHNlbGVjdCB7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIHBhZGRpbmctcmlnaHQ6IDMuNXJlbTtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL2Fycm93LWRvd24uc3ZnXCIpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjYWxjKDEwMCUgLSAxcmVtKSBjZW50ZXI7XG59XG5cbi8qKlxuICogRG8gbm90IEB1c2UgZmlsZXMgd2l0aCBhY3R1YWwgc2NzcyBjb2RlIGluIHRoaXMgZmlsZSwgYXMgaXQgd2lsbCBjb21waWxlIGNzcyBjb2RlIHR3aWNlLlxuICogQXMgdGhpcyBmaWxlIGdvaW5nIHRvIGJlIGFuIHN0YW5kYWxvbmUgY3NzIGZpbGUuXG4gKi9cbi53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSBmb3JtIC5jaGVja291dC1pbmxpbmUtZXJyb3ItbWVzc2FnZSxcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgZm9ybSAuY2hlY2tvdXQtaW5saW5lLWVycm9yLW1lc3NhZ2Uge1xuICBtYXJnaW4tdG9wOiAwLjVyZW07XG59XG4ud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgZm9ybSBsYWJlbCxcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgZm9ybSBsYWJlbCB7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogdmFyKC0taXQtc2l6ZS1zbWFsbCk7XG4gIGxpbmUtaGVpZ2h0OiAxLjY7XG59XG4ud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgZm9ybSAuc2VsZWN0MiAuc2VsZWN0Mi1zZWxlY3Rpb25fX3JlbmRlcmVkLFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSBmb3JtIC5zZWxlY3QyIC5zZWxlY3QyLXNlbGVjdGlvbl9fcmVuZGVyZWQge1xuICBwYWRkaW5nOiAwO1xuICBsaW5lLWhlaWdodDogMS42O1xuICBmb250LXNpemU6IHZhcigtLWl0LXNpemUtc21hbGwpO1xufVxuLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIGZvcm0gLnNlbGVjdDIuc2VsZWN0Mi1jb250YWluZXItLW9wZW4uc2VsZWN0Mi1jb250YWluZXItLWJlbG93IC5zZWxlY3QyLXNlbGVjdGlvbixcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgZm9ybSAuc2VsZWN0Mi5zZWxlY3QyLWNvbnRhaW5lci0tb3Blbi5zZWxlY3QyLWNvbnRhaW5lci0tYmVsb3cgLnNlbGVjdDItc2VsZWN0aW9uIHtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG59XG4ud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgZm9ybSAuc2VsZWN0Mi5zZWxlY3QyLWNvbnRhaW5lci0tb3Blbi5zZWxlY3QyLWNvbnRhaW5lci0tYWJvdmUgLnNlbGVjdDItc2VsZWN0aW9uLFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSBmb3JtIC5zZWxlY3QyLnNlbGVjdDItY29udGFpbmVyLS1vcGVuLnNlbGVjdDItY29udGFpbmVyLS1hYm92ZSAuc2VsZWN0Mi1zZWxlY3Rpb24ge1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcbn1cbi53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSBmb3JtIGZpZWxkc2V0LFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSBmb3JtIGZpZWxkc2V0IHtcbiAgYm9yZGVyOiAwO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIHJvdy1nYXA6IHZhcigtLWl0LXNwYWNpbmctZGVmYXVsdCk7XG59XG4ud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgZm9ybSBmaWVsZHNldCBsZWdlbmQsXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIGZvcm0gZmllbGRzZXQgbGVnZW5kIHtcbiAgZGlzcGxheTogZmxleDtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0taXQtc3BhY2luZy1kZWZhdWx0KTtcbn1cbi53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSBmb3JtIC5zaG93LXBhc3N3b3JkLWlucHV0OjpiZWZvcmUsXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIGZvcm0gLnNob3ctcGFzc3dvcmQtaW5wdXQ6OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0Nzdmcgdmlld0JveD0nMCAwIDE5IDE3JyBmaWxsPSdub25lJyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnJTNFJTNDcGF0aCBkPSdNMC41IDAuNUwxNi41IDE2LjVNOC42NDggNC42MjNDOS4xNjc3MyA0LjQ2ODkzIDkuNzE5NDkgNC40NTg1NiAxMC4yNDQ2IDQuNTkyOTlDMTAuNzY5OCA0LjcyNzQzIDExLjI0ODcgNS4wMDE2NCAxMS42MzA1IDUuMzg2NDlDMTIuMDEyMiA1Ljc3MTM0IDEyLjI4MjYgNi4yNTI0NCAxMi40MTI4IDYuNzc4NjVDMTIuNTQzIDcuMzA0ODYgMTIuNTI4MiA3Ljg1NjUyIDEyLjM3IDguMzc1TTUuOTEgMi4zNzhDMTAuMTc0IDAuMjYyIDE0Ljc2NyAxLjk3IDE4LjUgNy41QzE3LjQ3MyA5LjAyMSAxNi4zODEgMTAuMjUzIDE1LjI0OSAxMS4xOTZNMTIuNzQgMTIuNzg2QzguNTc2IDE0LjY0MiA0LjEzMSAxMi44OCAwLjUgNy41QzEuNTEgNi4wMDQgMi41ODMgNC43ODcgMy42OTYgMy44NScgc3Ryb2tlPSclMjMxMjEyMTAnIHN0cm9rZS1vcGFjaXR5PScwLjcnIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCcvJTNFJTNDL3N2ZyUzRSUwQVwiKTtcbiAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICB3aWR0aDogMS4yNXJlbTtcbiAgaGVpZ2h0OiAxLjEyNXJlbTtcbn1cbi53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSBmb3JtIC5zaG93LXBhc3N3b3JkLWlucHV0LmRpc3BsYXktcGFzc3dvcmQ6OmJlZm9yZSxcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgZm9ybSAuc2hvdy1wYXNzd29yZC1pbnB1dC5kaXNwbGF5LXBhc3N3b3JkOjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnIHZpZXdCb3g9JzAgMCAyMCAyMCcgZmlsbD0nbm9uZScgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyUzRSUzQ3BhdGggZD0nTTAuODMzMDA4IDEwQzAuODMzMDA4IDEwIDQuMTY2MzQgMy4zMzMzMyA5Ljk5OTY3IDMuMzMzMzNDMTUuODMzIDMuMzMzMzMgMTkuMTY2MyAxMCAxOS4xNjYzIDEwJyBzdHJva2U9JyUyMzI1NDQ1QScgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbGluZWpvaW49J3JvdW5kJy8lM0UlM0NwYXRoIGQ9J00wLjgzMzAwOCAxMEMwLjgzMzAwOCAxMCA0LjE2NjM0IDE2LjY2NjcgOS45OTk2NyAxNi42NjY3QzE1LjgzMyAxNi42NjY3IDE5LjE2NjMgMTAgMTkuMTY2MyAxMCcgc3Ryb2tlPSclMjMyNTQ0NUEnIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCcvJTNFJTNDcGF0aCBkPSdNMTAgMTIuNUMxMS4zODA3IDEyLjUgMTIuNSAxMS4zODA3IDEyLjUgMTBDMTIuNSA4LjYxOTI5IDExLjM4MDcgNy41IDEwIDcuNUM4LjYxOTI5IDcuNSA3LjUgOC42MTkyOSA3LjUgMTBDNy41IDExLjM4MDcgOC42MTkyOSAxMi41IDEwIDEyLjVaJyBzdHJva2U9JyUyMzI1NDQ1QScgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbGluZWpvaW49J3JvdW5kJy8lM0UlM0Mvc3ZnJTNFJTBBXCIpO1xufVxuLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIGZvcm0gLndvb2NvbW1lcmNlLXBhc3N3b3JkLXN0cmVuZ3RoLFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSBmb3JtIC53b29jb21tZXJjZS1wYXNzd29yZC1zdHJlbmd0aCB7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWl0LWJvcmRlci1yYWRpdXMtc21hbGwpO1xuICBmb250LXNpemU6IHZhcigtLWl0LXNpemUteC1zbWFsbCk7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIHBhZGRpbmc6IDAuMjVyZW0gMC41cmVtO1xuICBtYXJnaW4tdG9wOiAwLjVyZW07XG59XG4ud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgZm9ybSBzbWFsbCxcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgZm9ybSBzbWFsbCB7XG4gIGZvbnQtc2l6ZTogdmFyKC0taXQtc2l6ZS14LXNtYWxsKTtcbn1cbi53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSBmb3JtIGRpdjpoYXMoPiAuZm9ybS1yb3cpOmZpcnN0LW9mLXR5cGUsXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIGZvcm0gZGl2Omhhcyg+IC5mb3JtLXJvdyk6Zmlyc3Qtb2YtdHlwZSB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdhcDogdmFyKC0taXQtc3BhY2luZy1kZWZhdWx0KTtcbiAgYWxpZ24taXRlbXM6IHN0YXJ0O1xufVxuLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIHNlY3Rpb24sXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIHNlY3Rpb24ge1xuICBkaXNwbGF5OiBncmlkO1xuICBnYXA6IHZhcigtLWl0LXNwYWNpbmctZGVmYXVsdCk7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG4ud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2Ugc2VjdGlvbiBoMixcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2Ugc2VjdGlvbiBoMiB7XG4gIGZvbnQtc2l6ZTogdmFyKC0taXQtaDUtZm9udC1zaXplKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWl0LWg1LWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbn1cbi53b29jb21tZXJjZS1hY2NvdW50IGlucyxcbi53b29jb21tZXJjZS1jaGVja291dCBpbnMge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG4ud29vY29tbWVyY2UtYWNjb3VudCAuYWRkcmVzc2VzIGgyLFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC5hZGRyZXNzZXMgaDIge1xuICBmb250LXNpemU6IHZhcigtLWl0LWg1LWZvbnQtc2l6ZSk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1pdC1oNS1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG59XG4ud29vY29tbWVyY2UtYWNjb3VudCAuYWRkcmVzc2VzIGFkZHJlc3MsXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLmFkZHJlc3NlcyBhZGRyZXNzIHtcbiAgcGFkZGluZzogMC44NzVyZW07XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC1zaXplOiB2YXIoLS1pdC1zaXplLXNtYWxsKTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0taXQtY29sb3ItYm9yZGVyKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0taXQtYm9yZGVyLXJhZGl1cy1zbWFsbCk7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzgzcHgpIHtcbiAgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIGZvcm0gZGl2Omhhcyg+IC5mb3JtLXJvdyk6Zmlyc3Qtb2YtdHlwZSxcbiAgLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSBmb3JtIGRpdjpoYXMoPiAuZm9ybS1yb3cpOmZpcnN0LW9mLXR5cGUge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7XG4gIH1cbiAgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIGZvcm0gZGl2Omhhcyg+IC5mb3JtLXJvdyk6Zmlyc3Qtb2YtdHlwZSA+ICo6bGFzdC1jaGlsZDpudGgtY2hpbGQob2RkKSxcbiAgLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSBmb3JtIGRpdjpoYXMoPiAuZm9ybS1yb3cpOmZpcnN0LW9mLXR5cGUgPiAqOmxhc3QtY2hpbGQ6bnRoLWNoaWxkKG9kZCkge1xuICAgIGdyaWQtY29sdW1uOiAxLy0xO1xuICB9XG59XG5cbi5zZWxlY3QyLWNvbnRhaW5lciAuc2VsZWN0Mi1kcm9wZG93biB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0taXQtY29sb3ItYm9yZGVyKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0taXQtYm9yZGVyLXJhZGl1cyk7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4uc2VsZWN0Mi1jb250YWluZXIgLnNlbGVjdDItZHJvcGRvd24gLnNlbGVjdDItc2VhcmNoIHtcbiAgcGFkZGluZzogdmFyKC0taXQtc3BhY2luZy1kZWZhdWx0LWhhbGYpO1xufVxuLnNlbGVjdDItY29udGFpbmVyIC5zZWxlY3QyLWRyb3Bkb3duIC5zZWxlY3QyLXNlYXJjaF9fZmllbGQge1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1pdC1ib3JkZXItcmFkaXVzLXNtYWxsKTtcbiAgcGFkZGluZzogMC41cmVtO1xufVxuLnNlbGVjdDItY29udGFpbmVyIC5zZWxlY3QyLWRyb3Bkb3duIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiB7XG4gIHBhZGRpbmc6IDAuNXJlbSB2YXIoLS1pdC1zcGFjaW5nLWRlZmF1bHQtaGFsZik7XG4gIGZvbnQtc2l6ZTogdmFyKC0taXQtc2l6ZS1zbWFsbCk7XG59XG4uc2VsZWN0Mi1jb250YWluZXIgLnNlbGVjdDItZHJvcGRvd24gLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uW2RhdGEtc2VsZWN0ZWQ9dHJ1ZV0ge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1pdC1jb2xvci1iYWNrZ3JvdW5kKTtcbiAgY29sb3I6IHZhcigtLWl0LWNvbG9yLXRleHQpO1xufVxuLnNlbGVjdDItY29udGFpbmVyIC5zZWxlY3QyLWRyb3Bkb3duIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbi0taGlnaGxpZ2h0ZWQge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1pdC1jb2xvci1icmFuZCk7XG59XG5cbi8qKlxuICogRG8gbm90IEB1c2UgZmlsZXMgd2l0aCBhY3R1YWwgc2NzcyBjb2RlIGluIHRoaXMgZmlsZSwgYXMgaXQgd2lsbCBjb21waWxlIGNzcyBjb2RlIHR3aWNlLlxuICogQXMgdGhpcyBmaWxlIGdvaW5nIHRvIGJlIGFuIHN0YW5kYWxvbmUgY3NzIGZpbGUuXG4gKi9cbi8qKlxuICogRG8gbm90IEB1c2UgZmlsZXMgd2l0aCBhY3R1YWwgc2NzcyBjb2RlIGluIHRoaXMgZmlsZSwgYXMgaXQgd2lsbCBjb21waWxlIGNzcyBjb2RlIHR3aWNlLlxuICogQXMgdGhpcyBmaWxlIGdvaW5nIHRvIGJlIGFuIHN0YW5kYWxvbmUgY3NzIGZpbGUuXG4gKi9cbi53b29jb21tZXJjZSBmb3JtIC5mb3JtLXJvdyB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG59XG4ud29vY29tbWVyY2UgZm9ybSAuZm9ybS1yb3c6OmJlZm9yZSwgLndvb2NvbW1lcmNlIGZvcm0gLmZvcm0tcm93OjphZnRlciB7XG4gIGNvbnRlbnQ6IG5vbmU7XG59XG4ud29vY29tbWVyY2UgZm9ybSAuZm9ybS1yb3cgZW0ge1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtc2l6ZTogdmFyKC0taXQtc2l6ZS1zbWFsbCk7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLXRvcDogMC41cmVtO1xuICBjb2xvcjogdmFyKC0taXQtY29sb3ItcGxhY2Vob2xkZXIpO1xufVxuLndvb2NvbW1lcmNlIGZvcm0gLmZvcm0tcm93IC5yZXF1aXJlZCB7XG4gIGNvbG9yOiB2YXIoLS1pdC1jb2xvci1lcnJvcik7XG59XG4ud29vY29tbWVyY2UgZm9ybSAuY2xlYXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuLndvb2NvbW1lcmNlIGZvcm0gaDIge1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1pdC1zcGFjaW5nLWRlZmF1bHQpO1xuICBmb250LXNpemU6IHZhcigtLWl0LWg1LWZvbnQtc2l6ZSk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1pdC1oNS1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzgzcHgpIHtcbiAgLndvb2NvbW1lcmNlIGZvcm0gLmZvcm0tcm93OmhhcygrIFtzdHlsZSo9XCJkaXNwbGF5OiBub25lXCJdKSB7XG4gICAgZ3JpZC1jb2x1bW46IHNwYW4gMjtcbiAgfVxuICAud29vY29tbWVyY2UgZm9ybSAuZm9ybS1yb3ctZmlyc3Qge1xuICAgIGdyaWQtY29sdW1uOiAxO1xuICB9XG4gIC53b29jb21tZXJjZSBmb3JtIC5mb3JtLXJvdy1sYXN0IHtcbiAgICBncmlkLWNvbHVtbjogMjtcbiAgfVxufVxuXG4vKipcbiAqIERvIG5vdCBAdXNlIGZpbGVzIHdpdGggYWN0dWFsIHNjc3MgY29kZSBpbiB0aGlzIGZpbGUsIGFzIGl0IHdpbGwgY29tcGlsZSBjc3MgY29kZSB0d2ljZS5cbiAqIEFzIHRoaXMgZmlsZSBnb2luZyB0byBiZSBhbiBzdGFuZGFsb25lIGNzcyBmaWxlLlxuICovXG4vKipcbiAqIERvIG5vdCBAdXNlIGZpbGVzIHdpdGggYWN0dWFsIHNjc3MgY29kZSBpbiB0aGlzIGZpbGUsIGFzIGl0IHdpbGwgY29tcGlsZSBjc3MgY29kZSB0d2ljZS5cbiAqIEFzIHRoaXMgZmlsZSBnb2luZyB0byBiZSBhbiBzdGFuZGFsb25lIGNzcyBmaWxlLlxuICovXG4vKipcbiAqIERvIG5vdCBAdXNlIGZpbGVzIHdpdGggYWN0dWFsIHNjc3MgY29kZSBpbiB0aGlzIGZpbGUsIGFzIGl0IHdpbGwgY29tcGlsZSBjc3MgY29kZSB0d2ljZS5cbiAqIEFzIHRoaXMgZmlsZSBnb2luZyB0byBiZSBhbiBzdGFuZGFsb25lIGNzcyBmaWxlLlxuICovXG4ud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgdGFibGUsXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIHRhYmxlIHtcbiAgYm9yZGVyOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgbWFyZ2luOiAwO1xufVxuLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIHRhYmxlIHRyOm50aC1jaGlsZCgybikgdGQsIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSB0YWJsZSB0cjpob3ZlciB0ZCxcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgdGFibGUgdHI6bnRoLWNoaWxkKDJuKSB0ZCxcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgdGFibGUgdHI6aG92ZXIgdGQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSB0YWJsZSB0ciB0ZCwgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIHRhYmxlIHRyIHRoLFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSB0YWJsZSB0ciB0ZCxcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgdGFibGUgdHIgdGgge1xuICBwYWRkaW5nLWJsb2NrOiAwLjYyNXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4ud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgdGFibGUgdHIgdGQ6Zmlyc3QtY2hpbGQsIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSB0YWJsZSB0ciB0aDpmaXJzdC1jaGlsZCxcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgdGFibGUgdHIgdGQ6Zmlyc3QtY2hpbGQsXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIHRhYmxlIHRyIHRoOmZpcnN0LWNoaWxkIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xufVxuLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIHRhYmxlIHRyIHRkOmxhc3QtY2hpbGQsIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSB0YWJsZSB0ciB0aDpsYXN0LWNoaWxkLFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSB0YWJsZSB0ciB0ZDpsYXN0LWNoaWxkLFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSB0YWJsZSB0ciB0aDpsYXN0LWNoaWxkIHtcbiAgcGFkZGluZy1yaWdodDogMDtcbn1cbi53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSB0YWJsZS53b29jb21tZXJjZS1vcmRlcnMtdGFibGUgdGQsIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSB0YWJsZS53b29jb21tZXJjZS1vcmRlcnMtdGFibGUgdGgsIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSB0YWJsZS53b29jb21tZXJjZS10YWJsZSB0ZCwgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIHRhYmxlLndvb2NvbW1lcmNlLXRhYmxlIHRoLFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSB0YWJsZS53b29jb21tZXJjZS1vcmRlcnMtdGFibGUgdGQsXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIHRhYmxlLndvb2NvbW1lcmNlLW9yZGVycy10YWJsZSB0aCxcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgdGFibGUud29vY29tbWVyY2UtdGFibGUgdGQsXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIHRhYmxlLndvb2NvbW1lcmNlLXRhYmxlIHRoIHtcbiAgcGFkZGluZy1ibG9jazogMXJlbTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3ODNweCkge1xuICAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgdGFibGUud29vY29tbWVyY2Utb3JkZXJzLXRhYmxlIHRkLCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgdGFibGUud29vY29tbWVyY2Utb3JkZXJzLXRhYmxlIHRoLCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgdGFibGUud29vY29tbWVyY2UtdGFibGUgdGQsIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSB0YWJsZS53b29jb21tZXJjZS10YWJsZSB0aCxcbiAgLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSB0YWJsZS53b29jb21tZXJjZS1vcmRlcnMtdGFibGUgdGQsXG4gIC53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgdGFibGUud29vY29tbWVyY2Utb3JkZXJzLXRhYmxlIHRoLFxuICAud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIHRhYmxlLndvb2NvbW1lcmNlLXRhYmxlIHRkLFxuICAud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIHRhYmxlLndvb2NvbW1lcmNlLXRhYmxlIHRoIHtcbiAgICBwYWRkaW5nLWlubGluZTogdmFyKC0taXQtc3BhY2luZy1kZWZhdWx0LWhhbGYpO1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogNDc5cHgpIHtcbiAgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIHRhYmxlLndvb2NvbW1lcmNlLW9yZGVycy10YWJsZSB0ZCAuYnV0dG9uLCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgdGFibGUud29vY29tbWVyY2Utb3JkZXJzLXRhYmxlIHRoIC5idXR0b24sIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSB0YWJsZS53b29jb21tZXJjZS10YWJsZSB0ZCAuYnV0dG9uLCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgdGFibGUud29vY29tbWVyY2UtdGFibGUgdGggLmJ1dHRvbixcbiAgLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSB0YWJsZS53b29jb21tZXJjZS1vcmRlcnMtdGFibGUgdGQgLmJ1dHRvbixcbiAgLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSB0YWJsZS53b29jb21tZXJjZS1vcmRlcnMtdGFibGUgdGggLmJ1dHRvbixcbiAgLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSB0YWJsZS53b29jb21tZXJjZS10YWJsZSB0ZCAuYnV0dG9uLFxuICAud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIHRhYmxlLndvb2NvbW1lcmNlLXRhYmxlIHRoIC5idXR0b24ge1xuICAgIG1hcmdpbi10b3A6IHZhcigtLWl0LXNwYWNpbmctZm9ybSk7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc4MnB4KSBhbmQgKG1pbi13aWR0aDogMHB4KSB7XG4gIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSB0YWJsZS5zaG9wX3RhYmxlX3Jlc3BvbnNpdmUgdGQsIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSB0YWJsZS5zaG9wX3RhYmxlX3Jlc3BvbnNpdmUgdGgsXG4gIC53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgdGFibGUuc2hvcF90YWJsZV9yZXNwb25zaXZlIHRkLFxuICAud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIHRhYmxlLnNob3BfdGFibGVfcmVzcG9uc2l2ZSB0aCB7XG4gICAgcGFkZGluZy1pbmxpbmU6IDA7XG4gIH1cbn1cblxuLyogUGFnZSBzdHlsZXMuICovXG4vKipcbiAqIERvIG5vdCBAdXNlIGZpbGVzIHdpdGggYWN0dWFsIHNjc3MgY29kZSBpbiB0aGlzIGZpbGUsIGFzIGl0IHdpbGwgY29tcGlsZSBjc3MgY29kZSB0d2ljZS5cbiAqIEFzIHRoaXMgZmlsZSBnb2luZyB0byBiZSBhbiBzdGFuZGFsb25lIGNzcyBmaWxlLlxuICovXG4vKipcbiAqIERvIG5vdCBAdXNlIGZpbGVzIHdpdGggYWN0dWFsIHNjc3MgY29kZSBpbiB0aGlzIGZpbGUsIGFzIGl0IHdpbGwgY29tcGlsZSBjc3MgY29kZSB0d2ljZS5cbiAqIEFzIHRoaXMgZmlsZSBnb2luZyB0byBiZSBhbiBzdGFuZGFsb25lIGNzcyBmaWxlLlxuICovXG4ud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgI2NvbnRlbnQgZGl2LnByb2R1Y3QgLnByb2R1Y3QtZ2FsbGVyeS13cmFwcGVyIC5vbnNhbGUsIC53b29jb21tZXJjZSB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0IC53b29jb21tZXJjZS1sb29wLXByb2R1Y3RfX3RodW1ibmFpbCAub25zYWxlIHtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0taXQtYm9yZGVyLXJhZGl1cy1zbWFsbCk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWl0LWNvbG9yLWJyYW5kKTtcbiAgcGFkZGluZzogMC41cmVtIDFyZW07XG4gIG1pbi1oZWlnaHQ6IGF1dG87XG4gIG1pbi13aWR0aDogYXV0bztcbiAgbGluZS1oZWlnaHQ6IGluaXRpYWw7XG4gIGZvbnQtc2l6ZTogdmFyKC0taXQtc2l6ZS1zbWFsbCk7XG4gIG1hcmdpbjogMDtcbiAgdG9wOiB2YXIoLS1pdC1zcGFjaW5nLWRlZmF1bHQtaGFsZik7XG4gIHJpZ2h0OiB2YXIoLS1pdC1zcGFjaW5nLWRlZmF1bHQtaGFsZik7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIHotaW5kZXg6IDE7XG59XG5cbi53b29jb21tZXJjZSAud29vY29tbWVyY2UtYXJjaGl2ZS1jb3VudC1hbmQtb3JkZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgY29sdW1uLWdhcDogdmFyKC0taXQtc3BhY2luZy1kZWZhdWx0KTtcbiAgcm93LWdhcDogdmFyKC0taXQtc3BhY2luZy1kZWZhdWx0LWhhbGYpO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1pdC1zcGFjaW5nLWRlZmF1bHQpO1xufVxuLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1hcmNoaXZlLWNvdW50LWFuZC1vcmRlciAud29vY29tbWVyY2UtcmVzdWx0LWNvdW50LFxuLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1hcmNoaXZlLWNvdW50LWFuZC1vcmRlciAud29vY29tbWVyY2Utb3JkZXJpbmcge1xuICBtYXJnaW46IDA7XG59XG4ud29vY29tbWVyY2UgdWwucHJvZHVjdHMge1xuICBtYXJnaW46IDA7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGNvbHVtbi1nYXA6IHZhcigtLWl0LXNwYWNpbmctY29sdW1ucyk7XG4gIHJvdy1nYXA6IHZhcigtLWl0LXNwYWNpbmctY29udGVudCk7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZmlsbCwgbWlubWF4KDE4Ljc1cmVtLCAxZnIpKTtcbn1cbi53b29jb21tZXJjZSB1bC5wcm9kdWN0czo6YmVmb3JlLCAud29vY29tbWVyY2UgdWwucHJvZHVjdHM6OmFmdGVyIHtcbiAgY29udGVudDogbm9uZTtcbn1cbi53b29jb21tZXJjZSB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBtaW4td2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG59XG4ud29vY29tbWVyY2UgdWwucHJvZHVjdHMgbGkucHJvZHVjdCAud29vY29tbWVyY2UtbG9vcC1wcm9kdWN0X19tYWluIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgcm93LWdhcDogdmFyKC0taXQtc3BhY2luZy1kZWZhdWx0LWhhbGYpO1xufVxuLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzIGxpLnByb2R1Y3QgLndvb2NvbW1lcmNlLWxvb3AtcHJvZHVjdF9fdGh1bWJuYWlsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1pdC1zcGFjaW5nLWRlZmF1bHQtaGFsZik7XG59XG4ud29vY29tbWVyY2UgdWwucHJvZHVjdHMgbGkucHJvZHVjdCAud29vY29tbWVyY2UtbG9vcC1wcm9kdWN0X190aHVtYm5haWwgaW1nIHtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0taXQtYm9yZGVyLXJhZGl1cyk7XG4gIG1hcmdpbjogMDtcbn1cbi53b29jb21tZXJjZSB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0IC53b29jb21tZXJjZS1sb29wLXByb2R1Y3RfX3RpdGxlIHtcbiAgcGFkZGluZzogMDtcbiAgZm9udC1zaXplOiB2YXIoLS1pdC1oNC1mb250LXNpemUpO1xuICBsaW5lLWhlaWdodDogdmFyKC0taXQtaDQtbGluZS1oZWlnaHQpO1xufVxuLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzIGxpLnByb2R1Y3QgLndvb2NvbW1lcmNlLWxvb3AtcHJvZHVjdF9fdGl0bGUgPiBhIHtcbiAgY29sb3I6IGluaGVyaXQ7XG59XG4ud29vY29tbWVyY2UgdWwucHJvZHVjdHMgbGkucHJvZHVjdCAud29vY29tbWVyY2UtbG9vcC1wcm9kdWN0X19za3Uge1xuICBmb250LXdlaWdodDogNTAwO1xuICBjb2xvcjogcmdiYSh2YXIoLS1pdC1jb2xvci1ibGFjayksIDAuNyk7XG4gIGZvbnQtc2l6ZTogdmFyKC0taXQtc2l6ZS14LXNtYWxsKTtcbn1cbi53b29jb21tZXJjZSB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0IC53b29jb21tZXJjZS1sb29wLXByb2R1Y3RfX2JvdHRvbSB7XG4gIG1hcmdpbi10b3A6IHZhcigtLWl0LXNwYWNpbmctZGVmYXVsdC1oYWxmKTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZ2FwOiB2YXIoLS1pdC1zcGFjaW5nLWRlZmF1bHQpO1xufVxuLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzIGxpLnByb2R1Y3QgLndvb2NvbW1lcmNlLWxvb3AtcHJvZHVjdF9fYWRkLXRvLWNhcnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4ud29vY29tbWVyY2UgdWwucHJvZHVjdHMgbGkucHJvZHVjdCAud29vY29tbWVyY2UtbG9vcC1wcm9kdWN0X19hZGQtdG8tY2FydDpoYXMoLmFkZGVkKSAuYWRkZWRfdG9fY2FydCB7XG4gIGFuaW1hdGlvbjogY2FydExpbmsgMi44cyBmb3J3YXJkcztcbn1cbi53b29jb21tZXJjZSB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0IC53b29jb21tZXJjZS1sb29wLXByb2R1Y3RfX3ByaWNlLWFuZC1pbmZvIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cbi53b29jb21tZXJjZSB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0IC53b29jb21tZXJjZS1sb29wLXByb2R1Y3RfX3ByaWNlLWFuZC1pbmZvID4gKiB7XG4gIG1hcmdpbjogMC4yNXJlbSAwIDA7XG59XG4ud29vY29tbWVyY2UgdWwucHJvZHVjdHMgbGkucHJvZHVjdCAud29vY29tbWVyY2UtbG9vcC1wcm9kdWN0X19wcmljZSB7XG4gIGZvbnQtc2l6ZTogdmFyKC0taXQtaDQtZm9udC1zaXplKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWl0LWg0LWxpbmUtaGVpZ2h0KTtcbiAgY29sb3I6IHZhcigtLWl0LWNvbG9yLWJyYW5kKTtcbn1cbi53b29jb21tZXJjZSB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0IC53b29jb21tZXJjZS1sb29wLXByb2R1Y3RfX3ByaWNlICsgKiB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG4ud29vY29tbWVyY2UgdWwucHJvZHVjdHMgbGkucHJvZHVjdCAud29vY29tbWVyY2UtbG9vcC1wcm9kdWN0X19wcmljZSAucHJpY2Uge1xuICBtYXJnaW46IDA7XG4gIGNvbG9yOiB2YXIoLS1pdC1jb2xvci1icmFuZCk7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG4ud29vY29tbWVyY2UgdWwucHJvZHVjdHMgbGkucHJvZHVjdCAud29vY29tbWVyY2UtbG9vcC1wcm9kdWN0X19wcmljZSAucHJpY2UgZGVsIHtcbiAgZm9udC1zaXplOiB2YXIoLS1pdC1oNi1mb250LXNpemUpO1xuICBwYWRkaW5nLXJpZ2h0OiAwLjI1cmVtO1xufVxuLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzIGxpLnByb2R1Y3QgLndvb2NvbW1lcmNlLWxvb3AtcHJvZHVjdF9fcHJpY2UgLnByaWNlIGlucyB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbi53b29jb21tZXJjZSB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0IC5idXR0b24ge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbn1cbi53b29jb21tZXJjZSB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0IC5hZGRlZF90b19jYXJ0IHtcbiAgaW5zZXQ6IDA7XG4gIGZvbnQtc2l6ZTogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3ODNweCkge1xuICAud29vY29tbWVyY2UgdWwucHJvZHVjdHMgbGkucHJvZHVjdCAud29vY29tbWVyY2UtbG9vcC1wcm9kdWN0X19jYXRlZ29yaWVzIHtcbiAgICBmb250LXNpemU6IHZhcigtLWl0LXNpemUtbGFyZ2UpO1xuICB9XG4gIC53b29jb21tZXJjZSB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0IC53b29jb21tZXJjZS1sb29wLXByb2R1Y3RfX2JvdHRvbSB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICB9XG59XG5cbi8qKlxuICogRG8gbm90IEB1c2UgZmlsZXMgd2l0aCBhY3R1YWwgc2NzcyBjb2RlIGluIHRoaXMgZmlsZSwgYXMgaXQgd2lsbCBjb21waWxlIGNzcyBjb2RlIHR3aWNlLlxuICogQXMgdGhpcyBmaWxlIGdvaW5nIHRvIGJlIGFuIHN0YW5kYWxvbmUgY3NzIGZpbGUuXG4gKi9cbi8qKlxuICogRG8gbm90IEB1c2UgZmlsZXMgd2l0aCBhY3R1YWwgc2NzcyBjb2RlIGluIHRoaXMgZmlsZSwgYXMgaXQgd2lsbCBjb21waWxlIGNzcyBjb2RlIHR3aWNlLlxuICogQXMgdGhpcyBmaWxlIGdvaW5nIHRvIGJlIGFuIHN0YW5kYWxvbmUgY3NzIGZpbGUuXG4gKi9cbi8qKlxuICogRG8gbm90IEB1c2UgZmlsZXMgd2l0aCBhY3R1YWwgc2NzcyBjb2RlIGluIHRoaXMgZmlsZSwgYXMgaXQgd2lsbCBjb21waWxlIGNzcyBjb2RlIHR3aWNlLlxuICogQXMgdGhpcyBmaWxlIGdvaW5nIHRvIGJlIGFuIHN0YW5kYWxvbmUgY3NzIGZpbGUuXG4gKi9cbi8qKlxuICogRG8gbm90IEB1c2UgZmlsZXMgd2l0aCBhY3R1YWwgc2NzcyBjb2RlIGluIHRoaXMgZmlsZSwgYXMgaXQgd2lsbCBjb21waWxlIGNzcyBjb2RlIHR3aWNlLlxuICogQXMgdGhpcyBmaWxlIGdvaW5nIHRvIGJlIGFuIHN0YW5kYWxvbmUgY3NzIGZpbGUuXG4gKi9cbi53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCAjY29udGVudCB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4ud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgI2NvbnRlbnQgZGl2LnByb2R1Y3Qge1xuICBtYXJnaW4tdG9wOiB2YXIoLS1pdC1zcGFjaW5nLWNvbnRlbnQpO1xuICBkaXNwbGF5OiBncmlkO1xuICBnYXA6IHZhcigtLWl0LXNwYWNpbmctZGVmYXVsdC1oYWxmKTtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxMDAlO1xufVxuLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0ICNjb250ZW50IGRpdi5wcm9kdWN0LnByb2R1Y3QtdHlwZS12YXJpYWJsZSBkaXYuc3VtbWFyeSAucHJvZHVjdF90aXRsZSB7XG4gIGZvbnQtc2l6ZTogdmFyKC0taXQtcHJvZHVjdC1mb250LXNpemUpO1xuICBsaW5lLWhlaWdodDogdmFyKC0taXQtcHJvZHVjdC1saW5lLWhlaWdodCk7XG59XG4ud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgI2NvbnRlbnQgZGl2LnByb2R1Y3QucHJvZHVjdC10eXBlLXZhcmlhYmxlIGRpdi5zdW1tYXJ5ID4gLnByaWNlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCAjY29udGVudCBkaXYucHJvZHVjdC5wcm9kdWN0LXR5cGUtdmFyaWFibGUgZGl2LnN1bW1hcnkgLmNhcnQge1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBnYXA6IHZhcigtLWl0LXNwYWNpbmctZGVmYXVsdCk7XG59XG4ud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgI2NvbnRlbnQgZGl2LnByb2R1Y3QucHJvZHVjdC10eXBlLXZhcmlhYmxlIGRpdi5zdW1tYXJ5IC5jYXJ0IC52YXJpYXRpb25zIHtcbiAgbWFyZ2luOiAwO1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCAjY29udGVudCBkaXYucHJvZHVjdC5wcm9kdWN0LXR5cGUtdmFyaWFibGUgZGl2LnN1bW1hcnkgLmNhcnQgLnZhcmlhdGlvbnMgdGJvZHkge1xuICBkaXNwbGF5OiBmbGV4O1xuICBjb2x1bW4tZ2FwOiB2YXIoLS1pdC1zcGFjaW5nLWZvcm0pO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4ud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgI2NvbnRlbnQgZGl2LnByb2R1Y3QucHJvZHVjdC10eXBlLXZhcmlhYmxlIGRpdi5zdW1tYXJ5IC5jYXJ0IC52YXJpYXRpb25zIHRib2R5OmhhcygucmVzZXRfdmFyaWF0aW9uc1tzdHlsZSo9XCJ2aXNpYmlsaXR5OiB2aXNpYmxlO1wiXSkge1xuICBwYWRkaW5nLWJvdHRvbTogMnJlbTtcbn1cbi53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCAjY29udGVudCBkaXYucHJvZHVjdC5wcm9kdWN0LXR5cGUtdmFyaWFibGUgZGl2LnN1bW1hcnkgLmNhcnQgLnZhcmlhdGlvbnMgdHIge1xuICB3aWR0aDogMTAwJTtcbiAgZGlzcGxheTogZmxleDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cbi53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCAjY29udGVudCBkaXYucHJvZHVjdC5wcm9kdWN0LXR5cGUtdmFyaWFibGUgZGl2LnN1bW1hcnkgLmNhcnQgLnZhcmlhdGlvbnMgdHIgbGFiZWwge1xuICBmb250LXdlaWdodDogNDAwO1xufVxuLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0ICNjb250ZW50IGRpdi5wcm9kdWN0LnByb2R1Y3QtdHlwZS12YXJpYWJsZSBkaXYuc3VtbWFyeSAuY2FydCAudmFyaWF0aW9ucyB0ciA+ICoge1xuICB3aWR0aDogMTAwJTtcbn1cbi53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCAjY29udGVudCBkaXYucHJvZHVjdC5wcm9kdWN0LXR5cGUtdmFyaWFibGUgZGl2LnN1bW1hcnkgLmNhcnQgLnZhcmlhdGlvbnMgLnJlc2V0X3ZhcmlhdGlvbnMge1xuICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgYm90dG9tOiAwO1xufVxuLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0ICNjb250ZW50IGRpdi5wcm9kdWN0LnByb2R1Y3QtdHlwZS12YXJpYWJsZSBkaXYuc3VtbWFyeSAuY2FydCAuc2luZ2xlX3ZhcmlhdGlvbl93cmFwIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZ2FwOiB2YXIoLS1pdC1zcGFjaW5nLWRlZmF1bHQtaGFsZik7XG4gIG1hcmdpbi10b3A6IHZhcigtLWl0LXNwYWNpbmctZGVmYXVsdCk7XG59XG4ud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgI2NvbnRlbnQgZGl2LnByb2R1Y3QucHJvZHVjdC10eXBlLXZhcmlhYmxlIGRpdi5zdW1tYXJ5IC5jYXJ0IC5zaW5nbGVfdmFyaWF0aW9uX3dyYXAgLnNpbmdsZV92YXJpYXRpb24gLndvb2NvbW1lcmNlLXZhcmlhdGlvbi1kZXNjcmlwdGlvbiB7XG4gIGZvbnQtc2l6ZTogdmFyKC0taXQtc2l6ZS1zbWFsbCk7XG59XG4ud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgI2NvbnRlbnQgZGl2LnByb2R1Y3QucHJvZHVjdC10eXBlLXZhcmlhYmxlIGRpdi5zdW1tYXJ5IC5jYXJ0IC5zaW5nbGVfdmFyaWF0aW9uX3dyYXAgLnNpbmdsZV92YXJpYXRpb246ZW1wdHkge1xuICBkaXNwbGF5OiBub25lO1xufVxuLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0ICNjb250ZW50IGRpdi5wcm9kdWN0LnByb2R1Y3QtdHlwZS12YXJpYWJsZSBkaXYuc3VtbWFyeSAuY2FydCAudmFyaWF0aW9uc19idXR0b24ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgZ2FwOiB2YXIoLS1pdC1zcGFjaW5nLWRlZmF1bHQtaGFsZik7XG59XG5AbWVkaWEgKG1heC13aWR0aDogMTAyM3B4KSB7XG4gIC53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCAjY29udGVudCBkaXYucHJvZHVjdC5wcm9kdWN0LXR5cGUtdmFyaWFibGUgZGl2LnN1bW1hcnkgLmNhcnQgLnZhcmlhdGlvbnNfYnV0dG9uIHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gIH1cbn1cbi53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCAjY29udGVudCBkaXYucHJvZHVjdC5wcm9kdWN0LXR5cGUtZ3JvdXBlZCBkaXYuc3VtbWFyeSAuY2FydCB7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGdhcDogdmFyKC0taXQtc3BhY2luZy1kZWZhdWx0KTtcbn1cbi53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCAjY29udGVudCBkaXYucHJvZHVjdC5wcm9kdWN0LXR5cGUtZ3JvdXBlZCBkaXYuc3VtbWFyeSAuY2FydCAud29vY29tbWVyY2UtZ3JvdXBlZC1wcm9kdWN0LWxpc3QtaXRlbSB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtcm93czogMWZyIGF1dG87XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmcjtcbiAgZ2FwOiB2YXIoLS1pdC1zcGFjaW5nLWRlZmF1bHQtaGFsZik7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLWl0LXNwYWNpbmctZGVmYXVsdC1oYWxmKTtcbiAgcGFkZGluZy1ib3R0b206IHZhcigtLWl0LXNwYWNpbmctZGVmYXVsdC1oYWxmKTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWl0LWNvbG9yLWJvcmRlcik7XG59XG4ud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgI2NvbnRlbnQgZGl2LnByb2R1Y3QucHJvZHVjdC10eXBlLWdyb3VwZWQgZGl2LnN1bW1hcnkgLmNhcnQgLndvb2NvbW1lcmNlLWdyb3VwZWQtcHJvZHVjdC1saXN0LWl0ZW06bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1ib3R0b206IDA7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xufVxuLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0ICNjb250ZW50IGRpdi5wcm9kdWN0LnByb2R1Y3QtdHlwZS1ncm91cGVkIGRpdi5zdW1tYXJ5IC5jYXJ0IC53b29jb21tZXJjZS1ncm91cGVkLXByb2R1Y3QtbGlzdC1pdGVtX19xdWFudGl0eSB7XG4gIHdpZHRoOiBhdXRvO1xuICBkaXNwbGF5OiBmbGV4O1xuICBwYWRkaW5nOiAwO1xufVxuLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0ICNjb250ZW50IGRpdi5wcm9kdWN0LnByb2R1Y3QtdHlwZS1ncm91cGVkIGRpdi5zdW1tYXJ5IC5jYXJ0IC53b29jb21tZXJjZS1ncm91cGVkLXByb2R1Y3QtbGlzdC1pdGVtX19xdWFudGl0eSAucXVhbnRpdHktaW5wdXQge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG59XG4ud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgI2NvbnRlbnQgZGl2LnByb2R1Y3QucHJvZHVjdC10eXBlLWdyb3VwZWQgZGl2LnN1bW1hcnkgLmNhcnQgLndvb2NvbW1lcmNlLWdyb3VwZWQtcHJvZHVjdC1saXN0LWl0ZW1fX3F1YW50aXR5IC53b29zdy1idG4ge1xuICBkaXNwbGF5OiBub25lO1xufVxuLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0ICNjb250ZW50IGRpdi5wcm9kdWN0LnByb2R1Y3QtdHlwZS1ncm91cGVkIGRpdi5zdW1tYXJ5IC5jYXJ0IC53b29jb21tZXJjZS1ncm91cGVkLXByb2R1Y3QtbGlzdC1pdGVtX19sYWJlbCB7XG4gIHBhZGRpbmc6IDA7XG4gIGdyaWQtY29sdW1uOiAxLzM7XG4gIGdyaWQtcm93OiAxLzM7XG59XG4ud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgI2NvbnRlbnQgZGl2LnByb2R1Y3QucHJvZHVjdC10eXBlLWdyb3VwZWQgZGl2LnN1bW1hcnkgLmNhcnQgLndvb2NvbW1lcmNlLWdyb3VwZWQtcHJvZHVjdC1saXN0LWl0ZW1fX2xhYmVsIGEge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0ICNjb250ZW50IGRpdi5wcm9kdWN0LnByb2R1Y3QtdHlwZS1ncm91cGVkIGRpdi5zdW1tYXJ5IC5jYXJ0IC53b29jb21tZXJjZS1ncm91cGVkLXByb2R1Y3QtbGlzdC1pdGVtX19sYWJlbCBhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAxcHg7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAwO1xuICBvcGFjaXR5OiAwO1xuICBoZWlnaHQ6IDFweDtcbiAgYmFja2dyb3VuZDogY3VycmVudENvbG9yO1xuICB0cmFuc2l0aW9uOiB3aWR0aCB2YXIoLS1pdC10cmFuc2l0aW9uKSwgb3BhY2l0eSAwLjFzIGxpbmVhciAwLjJzO1xufVxuLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0ICNjb250ZW50IGRpdi5wcm9kdWN0LnByb2R1Y3QtdHlwZS1ncm91cGVkIGRpdi5zdW1tYXJ5IC5jYXJ0IC53b29jb21tZXJjZS1ncm91cGVkLXByb2R1Y3QtbGlzdC1pdGVtX19sYWJlbCBhOmhvdmVyIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG59XG4ud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgI2NvbnRlbnQgZGl2LnByb2R1Y3QucHJvZHVjdC10eXBlLWdyb3VwZWQgZGl2LnN1bW1hcnkgLmNhcnQgLndvb2NvbW1lcmNlLWdyb3VwZWQtcHJvZHVjdC1saXN0LWl0ZW1fX2xhYmVsIGE6aG92ZXI6YmVmb3JlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG9wYWNpdHk6IDE7XG4gIHRyYW5zaXRpb246IHdpZHRoIHZhcigtLWl0LXRyYW5zaXRpb24pLCBvcGFjaXR5IDAuMXMgbGluZWFyO1xufVxuLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0ICNjb250ZW50IGRpdi5wcm9kdWN0LnByb2R1Y3QtdHlwZS1ncm91cGVkIGRpdi5zdW1tYXJ5IC5jYXJ0IC53b29jb21tZXJjZS1ncm91cGVkLXByb2R1Y3QtbGlzdC1pdGVtX19wcmljZSB7XG4gIHBhZGRpbmc6IDA7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0ICNjb250ZW50IGRpdi5wcm9kdWN0LnByb2R1Y3QtdHlwZS1ncm91cGVkIGRpdi5zdW1tYXJ5IC5jYXJ0IC53b29jb21tZXJjZS1ncm91cGVkLXByb2R1Y3QtbGlzdC1pdGVtX19wcmljZSAuc3RvY2ssXG4ud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgI2NvbnRlbnQgZGl2LnByb2R1Y3QucHJvZHVjdC10eXBlLWdyb3VwZWQgZGl2LnN1bW1hcnkgLmNhcnQgLndvb2NvbW1lcmNlLWdyb3VwZWQtcHJvZHVjdC1saXN0LWl0ZW1fX3ByaWNlIC5sZWdhbC1wcmljZS1pbmZvIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCAjY29udGVudCBkaXYucHJvZHVjdC5wcm9kdWN0LXR5cGUtZ3JvdXBlZCBkaXYuc3VtbWFyeSAuY2FydCAud29vY29tbWVyY2UtZ3JvdXBlZC1wcm9kdWN0LWxpc3QtaXRlbV9fcHJpY2UgaW5zIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0ICNjb250ZW50IGRpdi5wcm9kdWN0IC5wcm9kdWN0LWdhbGxlcnktd3JhcHBlciB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG1pbi13aWR0aDogMDtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA3ODJweCkge1xuICAud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgI2NvbnRlbnQgZGl2LnByb2R1Y3QgLnByb2R1Y3QtZ2FsbGVyeS13cmFwcGVyIHtcbiAgICBtYXgtd2lkdGg6IDM3NXB4O1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICB9XG59XG4ud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgI2NvbnRlbnQgZGl2LnByb2R1Y3QgLnByb2R1Y3QtZ2FsbGVyeS13cmFwcGVyIC5vbnNhbGUge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIHJpZ2h0OiBhdXRvO1xuICB6LWluZGV4OiAyO1xuICBsZWZ0OiB2YXIoLS1pdC1zcGFjaW5nLWRlZmF1bHQtaGFsZik7XG59XG4ud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgI2NvbnRlbnQgZGl2LnByb2R1Y3QgLnByb2R1Y3QtZ2FsbGVyeS13cmFwcGVyIC53b29jb21tZXJjZS1wcm9kdWN0LWdhbGxlcnkge1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LWhlaWdodDogMTAwJTtcbiAgZmxvYXQ6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcG9zaXRpb246IHN0YXRpYztcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC1yb3ctZ2FwOiB2YXIoLS1pdC1zcGFjaW5nLWRlZmF1bHQtaGFsZik7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG1pbi13aWR0aDogMDtcbn1cbi53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCAjY29udGVudCBkaXYucHJvZHVjdCAucHJvZHVjdC1nYWxsZXJ5LXdyYXBwZXIgLndvb2NvbW1lcmNlLXByb2R1Y3QtZ2FsbGVyeSAuc3dpcGVyLS1pbWFnZXMge1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgbWluLXdpZHRoOiAwO1xuICB3aWR0aDogMTAwJTtcbn1cbi53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCAjY29udGVudCBkaXYucHJvZHVjdCAucHJvZHVjdC1nYWxsZXJ5LXdyYXBwZXIgLndvb2NvbW1lcmNlLXByb2R1Y3QtZ2FsbGVyeSAuc3dpcGVyLS1pbWFnZXMgLnN3aXBlci1zbGlkZSB7XG4gIGFzcGVjdC1yYXRpbzogMy80O1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuNHMgZWFzZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4ud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgI2NvbnRlbnQgZGl2LnByb2R1Y3QgLnByb2R1Y3QtZ2FsbGVyeS13cmFwcGVyIC53b29jb21tZXJjZS1wcm9kdWN0LWdhbGxlcnkgLnN3aXBlci0taW1hZ2VzIC5zd2lwZXItc2xpZGUgLnByb2R1Y3QtaW1hZ2Uge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvYmplY3QtZml0OiBjb250YWluO1xuICBvYmplY3QtcG9zaXRpb246IGNlbnRlcjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMDtcbiAgbWF4LWhlaWdodDogNTAwcHg7XG59XG4ud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgI2NvbnRlbnQgZGl2LnByb2R1Y3QgLnByb2R1Y3QtZ2FsbGVyeS13cmFwcGVyIC53b29jb21tZXJjZS1wcm9kdWN0LWdhbGxlcnkgLnN3aXBlci0taW1hZ2VzIC5zd2lwZXItc2xpZGU6OmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBpbnNldDogMDtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjA1KTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjRzIGVhc2U7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB6LWluZGV4OiAxO1xufVxuLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0ICNjb250ZW50IGRpdi5wcm9kdWN0IC5wcm9kdWN0LWdhbGxlcnktd3JhcHBlciAud29vY29tbWVyY2UtcHJvZHVjdC1nYWxsZXJ5IC5zd2lwZXItLWltYWdlcyAuc3dpcGVyLXNsaWRlLnN3aXBlci1zbGlkZS1hY3RpdmUge1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG4ud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgI2NvbnRlbnQgZGl2LnByb2R1Y3QgLnByb2R1Y3QtZ2FsbGVyeS13cmFwcGVyIC53b29jb21tZXJjZS1wcm9kdWN0LWdhbGxlcnkgLnN3aXBlci0taW1hZ2VzIC5zd2lwZXItc2xpZGUuc3dpcGVyLXNsaWRlLWFjdGl2ZTo6YWZ0ZXIge1xuICBvcGFjaXR5OiAwO1xufVxuLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0ICNjb250ZW50IGRpdi5wcm9kdWN0IC5wcm9kdWN0LWdhbGxlcnktd3JhcHBlciAud29vY29tbWVyY2UtcHJvZHVjdC1nYWxsZXJ5IC5zd2lwZXItLWltYWdlczpub3QoLnN3aXBlci1pbml0aWFsaXplZCkgLnN3aXBlci13cmFwcGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4ud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgI2NvbnRlbnQgZGl2LnByb2R1Y3QgLnByb2R1Y3QtZ2FsbGVyeS13cmFwcGVyIC53b29jb21tZXJjZS1wcm9kdWN0LWdhbGxlcnkgLnN3aXBlci0taW1hZ2VzOm5vdCguc3dpcGVyLWluaXRpYWxpemVkKSAuc3dpcGVyLXNsaWRlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGFzcGVjdC1yYXRpbzogYXV0bztcbiAgb3BhY2l0eTogMTtcbiAgY3Vyc29yOiBkZWZhdWx0O1xufVxuLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0ICNjb250ZW50IGRpdi5wcm9kdWN0IC5wcm9kdWN0LWdhbGxlcnktd3JhcHBlciAud29vY29tbWVyY2UtcHJvZHVjdC1nYWxsZXJ5IC5zd2lwZXItYnV0dG9ucyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBnYXA6IHZhcigtLWl0LXNwYWNpbmctZGVmYXVsdCk7XG4gIG1hcmdpbi10b3A6IHZhcigtLWl0LXNwYWNpbmctZGVmYXVsdC1oYWxmKTtcbn1cbi53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCAjY29udGVudCBkaXYucHJvZHVjdCAucHJvZHVjdC1nYWxsZXJ5LXdyYXBwZXIgLndvb2NvbW1lcmNlLXByb2R1Y3QtZ2FsbGVyeSAuc3dpcGVyLWJ1dHRvbnMgLnN3aXBlci1idXR0b24tcHJldixcbi53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCAjY29udGVudCBkaXYucHJvZHVjdCAucHJvZHVjdC1nYWxsZXJ5LXdyYXBwZXIgLndvb2NvbW1lcmNlLXByb2R1Y3QtZ2FsbGVyeSAuc3dpcGVyLWJ1dHRvbnMgLnN3aXBlci1idXR0b24tbmV4dCB7XG4gIHBvc2l0aW9uOiBzdGF0aWM7XG4gIHRyYW5zZm9ybTogbm9uZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0ICNjb250ZW50IGRpdi5wcm9kdWN0IGRpdi5zdW1tYXJ5IHtcbiAgZmxvYXQ6IG5vbmU7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4td2lkdGg6IDA7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogbWlubWF4KDAsIDFmcik7XG4gIGdhcDogdmFyKC0taXQtc3BhY2luZy1kZWZhdWx0LWhhbGYpO1xuICBncmlkLXRlbXBsYXRlLXJvd3M6IGF1dG87XG4gIGdyaWQtYXV0by1yb3dzOiBtaW4tY29udGVudDtcbiAgYWxpZ24taXRlbXM6IHN0YXJ0O1xuICBncmlkLWF1dG8tZmxvdzogcm93IGRlbnNlO1xufVxuLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0ICNjb250ZW50IGRpdi5wcm9kdWN0IGRpdi5zdW1tYXJ5Omhhcygud29vY29tbWVyY2UtcHJvZHVjdC1kZXRhaWxzX19zaG9ydC1kZXNjcmlwdGlvbikgLnN0b2NrIHtcbiAgZ3JpZC1yb3c6IDUvNjtcbn1cbi53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCAjY29udGVudCBkaXYucHJvZHVjdCBkaXYuc3VtbWFyeSAucHJvZHVjdC12b2x1bWUge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHdpZHRoOiBtYXgtY29udGVudDtcbiAgbWluLXdpZHRoOiAzcmVtO1xuICBwYWRkaW5nOiAwLjgxcmVtIDAuMzdyZW07XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjb2xvcjogIzAwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taXQtY29sb3Itd2hpdGUpO1xuICBib3JkZXItcmFkaXVzOiAycHg7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDJweCB2YXIoLS1pdC1jb2xvci1ibGFjayk7XG59XG4ud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgI2NvbnRlbnQgZGl2LnByb2R1Y3QgZGl2LnN1bW1hcnkgLnByb2R1Y3QtY2F0ZWdvcmllcyB7XG4gIGZvbnQtc2l6ZTogdmFyKC0taXQtaDUtZm9udC1zaXplKTtcbiAgbGluZS1oZWlnaHQ6IDEuMTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taXQtY29sb3ItYnJhbmQpO1xuICBwYWRkaW5nOiAwIDEwcHggMnB4O1xuICB3aWR0aDogZml0LWNvbnRlbnQ7XG4gIGhlaWdodDogYXV0bztcbn1cbi53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCAjY29udGVudCBkaXYucHJvZHVjdCBkaXYuc3VtbWFyeSAucHJvZHVjdC1jYXRlZ29yaWVzIGEge1xuICBjb2xvcjogdmFyKC0taXQtY29sb3ItYmxhY2spO1xuICBmb250LXNpemU6IHZhcigtLWl0LXNpemUtc21hbGwpO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0ICNjb250ZW50IGRpdi5wcm9kdWN0IGRpdi5zdW1tYXJ5IC5wcm9kdWN0LWNhdGVnb3JpZXMgYTpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogM3B4O1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMDtcbiAgb3BhY2l0eTogMDtcbiAgaGVpZ2h0OiAycHg7XG4gIGJhY2tncm91bmQ6IGN1cnJlbnRDb2xvcjtcbiAgdHJhbnNpdGlvbjogd2lkdGggdmFyKC0taXQtdHJhbnNpdGlvbiksIG9wYWNpdHkgMC4xcyBsaW5lYXIgMC4ycztcbn1cbi53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCAjY29udGVudCBkaXYucHJvZHVjdCBkaXYuc3VtbWFyeSAucHJvZHVjdC1jYXRlZ29yaWVzIGE6aG92ZXIge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbn1cbi53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCAjY29udGVudCBkaXYucHJvZHVjdCBkaXYuc3VtbWFyeSAucHJvZHVjdC1jYXRlZ29yaWVzIGE6aG92ZXI6YmVmb3JlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG9wYWNpdHk6IDE7XG4gIHRyYW5zaXRpb246IHdpZHRoIHZhcigtLWl0LXRyYW5zaXRpb24pLCBvcGFjaXR5IDAuMXMgbGluZWFyO1xufVxuLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0ICNjb250ZW50IGRpdi5wcm9kdWN0IGRpdi5zdW1tYXJ5IC5wcm9kdWN0LWNhdGVnb3JpZXMgYSB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgcGFkZGluZzogMDtcbn1cbi53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCAjY29udGVudCBkaXYucHJvZHVjdCBkaXYuc3VtbWFyeSAucHJvZHVjdC1jYXRlZ29yaWVzIGE6aG92ZXIge1xuICBjb2xvcjogdmFyKC0taXQtY29sb3Itd2hpdGUpO1xufVxuLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0ICNjb250ZW50IGRpdi5wcm9kdWN0IGRpdi5zdW1tYXJ5IC5wcm9kdWN0LWNhdGVnb3JpZXMgYTpiZWZvcmUge1xuICBkaXNwbGF5OiBub25lO1xufVxuLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0ICNjb250ZW50IGRpdi5wcm9kdWN0IGRpdi5zdW1tYXJ5IC5wcm9kdWN0LWNhdGVnb3JpZXMgKyAucHJvZHVjdF90aXRsZSB7XG4gIG1hcmdpbi10b3A6IGNhbGModmFyKC0taXQtc3BhY2luZy1kZWZhdWx0LWhhbGYpICogLTEpO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDEwMjNweCkge1xuICAud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgI2NvbnRlbnQgZGl2LnByb2R1Y3QgZGl2LnN1bW1hcnkgLnByb2R1Y3QtY2F0ZWdvcmllcyArIC5wcm9kdWN0X3RpdGxlIHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoLS1pdC1zcGFjaW5nLWRlZmF1bHQtaGFsZik7XG4gIH1cbn1cbi53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCAjY29udGVudCBkaXYucHJvZHVjdCBkaXYuc3VtbWFyeSAucHJvZHVjdF90aXRsZSB7XG4gIGZvbnQtc2l6ZTogdmFyKC0taXQtcHJvZHVjdC1mb250LXNpemUpO1xuICBsaW5lLWhlaWdodDogdmFyKC0taXQtcHJvZHVjdC1saW5lLWhlaWdodCk7XG59XG4ud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgI2NvbnRlbnQgZGl2LnByb2R1Y3QgZGl2LnN1bW1hcnkgLnN0b2NrIHtcbiAgZ3JpZC1yb3c6IDQvNTtcbiAgZGlzcGxheTogZmxleDtcbiAgZ2FwOiAwLjVyZW07XG4gIGZvbnQtc2l6ZTogdmFyKC0taXQtc2l6ZS14LXNtYWxsKTtcbiAgY29sb3I6IHZhcigtLWl0LWNvbG9yLXRleHQpO1xufVxuLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0ICNjb250ZW50IGRpdi5wcm9kdWN0IGRpdi5zdW1tYXJ5IC5zdG9jazo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgd2lkdGg6IDFyZW07XG4gIGhlaWdodDogMXJlbTtcbiAgZmxleC1zaHJpbms6IDA7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMXB4KTtcbn1cbi53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCAjY29udGVudCBkaXYucHJvZHVjdCBkaXYuc3VtbWFyeSAuc3RvY2suaW4tc3RvY2s6OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy93b28tY2hlY2stY2lyY2xlLnN2Z1wiKTtcbn1cbi53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCAjY29udGVudCBkaXYucHJvZHVjdCBkaXYuc3VtbWFyeSAuc3RvY2suYXZhaWxhYmxlLW9uLWJhY2tvcmRlcjo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL3dvby1jaGVjay1jaXJjbGUteWVsbG93LnN2Z1wiKTtcbn1cbi53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCAjY29udGVudCBkaXYucHJvZHVjdCBkaXYuc3VtbWFyeSAuc3RvY2sub3V0LW9mLXN0b2NrOjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvd29vLWNyb3NzLWNpcmNsZS5zdmdcIik7XG59XG4ud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgI2NvbnRlbnQgZGl2LnByb2R1Y3QgZGl2LnN1bW1hcnkgLndvb2NvbW1lcmNlLXByb2R1Y3QtZGV0YWlsc19fc2hvcnQtZGVzY3JpcHRpb24ge1xuICBmb250LXNpemU6IHZhcigtLWl0LXNpemUtc21hbGwpO1xuICBjb2xvcjogdmFyKC0taXQtY29sb3ItdGV4dCk7XG4gIHBhZGRpbmctdG9wOiB2YXIoLS1pdC1zcGFjaW5nLWRlZmF1bHQtaGFsZik7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1pdC1jb2xvci1ib3JkZXIpO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG4ud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgI2NvbnRlbnQgZGl2LnByb2R1Y3QgZGl2LnN1bW1hcnkgLndvb2NvbW1lcmNlLXByb2R1Y3QtZGV0YWlsc19fc2hvcnQtZGVzY3JpcHRpb24gPiAqOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0ICNjb250ZW50IGRpdi5wcm9kdWN0IGRpdi5zdW1tYXJ5IC5wcmljZSB7XG4gIGZvbnQtc2l6ZTogdmFyKC0taXQtaDUtZm9udC1zaXplKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWl0LWg1LWxpbmUtaGVpZ2h0KTtcbiAgY29sb3I6IHZhcigtLWl0LWNvbG9yLWJsYWNrKTtcbn1cbi53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCAjY29udGVudCBkaXYucHJvZHVjdCBkaXYuc3VtbWFyeSAucHJpY2UgYmRpLFxuLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0ICNjb250ZW50IGRpdi5wcm9kdWN0IGRpdi5zdW1tYXJ5IC5wcmljZSBpbnMsXG4ud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgI2NvbnRlbnQgZGl2LnByb2R1Y3QgZGl2LnN1bW1hcnkgLnByaWNlIGRlbCwgLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0ICNjb250ZW50IGRpdi5wcm9kdWN0IGRpdi5zdW1tYXJ5IC5wcmljZSA+IHNwYW4ge1xuICBmb250LXNpemU6IGluaGVyaXQ7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICBjb2xvcjogdmFyKC0taXQtY29sb3ItYmxhY2spO1xufVxuLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0ICNjb250ZW50IGRpdi5wcm9kdWN0IGRpdi5zdW1tYXJ5IC5wcmljZSBkZWwge1xuICBmb250LXNpemU6IHZhcigtLWl0LWg1LWZvbnQtc2l6ZSk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1pdC1oNS1saW5lLWhlaWdodCk7XG4gIHBhZGRpbmctcmlnaHQ6IDAuMjVyZW07XG59XG4ud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgI2NvbnRlbnQgZGl2LnByb2R1Y3QgZGl2LnN1bW1hcnkgLnByaWNlIGRlbCBiZGkge1xuICBvcGFjaXR5OiAwLjU7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbn1cbi53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCAjY29udGVudCBkaXYucHJvZHVjdCBkaXYuc3VtbWFyeSAucHJpY2UgaW5zIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0ICNjb250ZW50IGRpdi5wcm9kdWN0IGRpdi5zdW1tYXJ5IC5wcmljZSA+IC5hbW91bnQgPiBiZGkge1xuICBmb250LXdlaWdodDogNTAwO1xufVxuLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0ICNjb250ZW50IGRpdi5wcm9kdWN0IGRpdi5zdW1tYXJ5IC5sZWdhbC1wcmljZS1pbmZvIHtcbiAgbWFyZ2luLXRvcDogY2FsYyh2YXIoLS1pdC1zcGFjaW5nLWRlZmF1bHQtaGFsZikgKiAtMSk7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGdhcDogdmFyKC0taXQtc3BhY2luZy1kZWZhdWx0LWhhbGYpO1xufVxuLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0ICNjb250ZW50IGRpdi5wcm9kdWN0IGRpdi5zdW1tYXJ5IC5sZWdhbC1wcmljZS1pbmZvID4gKiB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG4ud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgI2NvbnRlbnQgZGl2LnByb2R1Y3QgZGl2LnN1bW1hcnkgLmNhcnQge1xuICB3aWR0aDogMTAwJTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gIGdhcDogdmFyKC0taXQtc3BhY2luZy1kZWZhdWx0LWhhbGYpO1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDEyNzlweCkge1xuICAud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgI2NvbnRlbnQgZGl2LnByb2R1Y3QgZGl2LnN1bW1hcnkgLmNhcnQge1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgfVxufVxuLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0ICNjb250ZW50IGRpdi5wcm9kdWN0IGRpdi5zdW1tYXJ5IC5jYXJ0OmJlZm9yZSwgLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0ICNjb250ZW50IGRpdi5wcm9kdWN0IGRpdi5zdW1tYXJ5IC5jYXJ0OmFmdGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCAjY29udGVudCBkaXYucHJvZHVjdCBkaXYuc3VtbWFyeSAuY2FydCAucXVhbnRpdHktaW5wdXQge1xuICBvcmRlcjogMTtcbiAgZmxleC1zaHJpbms6IDA7XG4gIG1hcmdpbi1yaWdodDogdmFyKC0taXQtc3BhY2luZy1kZWZhdWx0LWhhbGYpO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBoZWlnaHQ6IHZhcigtLWl0LWhlaWdodC1jYXJ0KTtcbn1cbi53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCAjY29udGVudCBkaXYucHJvZHVjdCBkaXYuc3VtbWFyeSAuY2FydCAucXVhbnRpdHktaW5wdXQgLnF0eS1idG4ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pdC1jb2xvci1icmFuZCk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0taXQtY29sb3ItYnJhbmQpO1xuICBjb2xvcjogIzAwMDtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjNzIGVhc2UsIGJvcmRlci1jb2xvciAwLjNzIGVhc2UsIGNvbG9yIDAuM3MgZWFzZTtcbn1cbi53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCAjY29udGVudCBkaXYucHJvZHVjdCBkaXYuc3VtbWFyeSAuY2FydCAucXVhbnRpdHktaW5wdXQgLnF0eS1idG46aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuICBib3JkZXItY29sb3I6ICMwMDA7XG4gIGNvbG9yOiAjZmZmO1xufVxuLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0ICNjb250ZW50IGRpdi5wcm9kdWN0IGRpdi5zdW1tYXJ5IC5jYXJ0IC5xdWFudGl0eS1pbnB1dCBpbnB1dC5xdHkge1xuICBib3JkZXItY29sb3I6ICMwMDA7XG4gIGNvbG9yOiAjMDAwO1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0ICNjb250ZW50IGRpdi5wcm9kdWN0IGRpdi5zdW1tYXJ5IC5jYXJ0IC53b29zdy1idG4ge1xuICBvcmRlcjogMjtcbiAgZmxleC1zaHJpbms6IDA7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0ICNjb250ZW50IGRpdi5wcm9kdWN0IGRpdi5zdW1tYXJ5IC5jYXJ0IC5idXR0b24ge1xuICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICBvcmRlcjogMztcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taXQtY29sb3ItYnJhbmQpICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0taXQtY29sb3ItYnJhbmQpICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjMDAwICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4zcyBlYXNlLCBib3JkZXItY29sb3IgMC4zcyBlYXNlLCBjb2xvciAwLjNzIGVhc2U7XG59XG4ud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgI2NvbnRlbnQgZGl2LnByb2R1Y3QgZGl2LnN1bW1hcnkgLmNhcnQgLmJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDAgIWltcG9ydGFudDtcbiAgYm9yZGVyLWNvbG9yOiAjMDAwICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG59XG4ud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgI2NvbnRlbnQgZGl2LnByb2R1Y3QgZGl2LnN1bW1hcnkgLnByb2R1Y3QtaWNvbnMge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1pdC1jb2xvci1iYWNrZ3JvdW5kKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0taXQtYm9yZGVyLXJhZGl1cyk7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtcm93czogcmVwZWF0KDMsIGF1dG8pO1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgcGFkZGluZzogMC4zNzVyZW0gMDtcbn1cbi53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCAjY29udGVudCBkaXYucHJvZHVjdCBkaXYuc3VtbWFyeSAucHJvZHVjdC1pY29uc19faXRlbSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogMC41cmVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IDAuMzc1cmVtIDAuNzVyZW07XG4gIGZvbnQtc2l6ZTogdmFyKC0taXQtc2l6ZS14LXNtYWxsKTtcbn1cbi53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCAjY29udGVudCBkaXYucHJvZHVjdCBkaXYuc3VtbWFyeSAucHJvZHVjdC1pY29uc19faXRlbSBpbWcsXG4ud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgI2NvbnRlbnQgZGl2LnByb2R1Y3QgZGl2LnN1bW1hcnkgLnByb2R1Y3QtaWNvbnNfX2l0ZW0gc3ZnIHtcbiAgbWF4LXdpZHRoOiAxLjVyZW07XG4gIG1heC1oZWlnaHQ6IDEuNXJlbTtcbn1cbi53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCAjY29udGVudCBkaXYucHJvZHVjdCBkaXYuc3VtbWFyeSAucHJvZHVjdC1pY29uc19faXRlbSBpbWcge1xuICBvYmplY3QtZml0OiBjb250YWluO1xuICBvYmplY3QtcG9zaXRpb246IGNlbnRlcjtcbn1cbi53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCAjY29udGVudCBkaXYucHJvZHVjdCAud29vY29tbWVyY2UtdGFicyB1bC50YWJzIHtcbiAgcGFkZGluZzogMDtcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGdhcDogdmFyKC0taXQtc3BhY2luZy1kZWZhdWx0LWhhbGYpO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1pdC1zcGFjaW5nLWNvbnRlbnQpO1xufVxuLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0ICNjb250ZW50IGRpdi5wcm9kdWN0IC53b29jb21tZXJjZS10YWJzIHVsLnRhYnM6YmVmb3JlLCAud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgI2NvbnRlbnQgZGl2LnByb2R1Y3QgLndvb2NvbW1lcmNlLXRhYnMgdWwudGFiczphZnRlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4ud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgI2NvbnRlbnQgZGl2LnByb2R1Y3QgLndvb2NvbW1lcmNlLXRhYnMgdWwudGFicyBsaSB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0taXQtY29sb3ItYmxhY2spO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMjVzIGVhc2UsIGNvbG9yIDAuMjVzIGVhc2U7XG59XG4ud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgI2NvbnRlbnQgZGl2LnByb2R1Y3QgLndvb2NvbW1lcmNlLXRhYnMgdWwudGFicyBsaSBhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIHBhZGRpbmc6IHZhcigtLWl0LXNwYWNpbmctZGVmYXVsdC1oYWxmKSB2YXIoLS1pdC1zcGFjaW5nLWRlZmF1bHQpO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBsZXR0ZXItc3BhY2luZzogMC4wNGVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXNpemU6IHZhcigtLWl0LXNpemUteC1zbWFsbCk7XG4gIGNvbG9yOiB2YXIoLS1pdC1jb2xvci1ibGFjayk7XG59XG4ud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgI2NvbnRlbnQgZGl2LnByb2R1Y3QgLndvb2NvbW1lcmNlLXRhYnMgdWwudGFicyBsaTpiZWZvcmUsIC53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCAjY29udGVudCBkaXYucHJvZHVjdCAud29vY29tbWVyY2UtdGFicyB1bC50YWJzIGxpOmFmdGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCAjY29udGVudCBkaXYucHJvZHVjdCAud29vY29tbWVyY2UtdGFicyB1bC50YWJzIGxpOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogdmFyKC0taXQtY29sb3ItYmFja2dyb3VuZCk7XG59XG4ud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgI2NvbnRlbnQgZGl2LnByb2R1Y3QgLndvb2NvbW1lcmNlLXRhYnMgdWwudGFicyBsaS5hY3RpdmUge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1pdC1jb2xvci1ibGFjayk7XG59XG4ud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgI2NvbnRlbnQgZGl2LnByb2R1Y3QgLndvb2NvbW1lcmNlLXRhYnMgdWwudGFicyBsaS5hY3RpdmUgYSB7XG4gIGNvbG9yOiB2YXIoLS1pdC1jb2xvci13aGl0ZSk7XG59XG4ud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgI2NvbnRlbnQgZGl2LnByb2R1Y3QgLndvb2NvbW1lcmNlLXRhYnMgLndvb2NvbW1lcmNlLVRhYnMtcGFuZWwge1xuICBtYXJnaW46IDA7XG59XG4ud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgI2NvbnRlbnQgZGl2LnByb2R1Y3QgLndvb2NvbW1lcmNlLXRhYnMgLndvb2NvbW1lcmNlLVRhYnMtcGFuZWwgaDIge1xuICBmb250LXNpemU6IHZhcigtLWl0LWgzLWZvbnQtc2l6ZSk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1pdC1oMy1saW5lLWhlaWdodCk7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLWl0LXNwYWNpbmctZGVmYXVsdCk7XG59XG4ud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgI2NvbnRlbnQgZGl2LnByb2R1Y3QgLndvb2NvbW1lcmNlLXRhYnMgLndvb2NvbW1lcmNlLVRhYnMtcGFuZWwgLnByb2R1Y3Qtbm90ZXMge1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1pdC1zcGFjaW5nLWNvbnRlbnQpO1xufVxuLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0ICNjb250ZW50IGRpdi5wcm9kdWN0IC53b29jb21tZXJjZS10YWJzIC53b29jb21tZXJjZS1UYWJzLXBhbmVsIC5wcm9kdWN0LW5vdGVzX19saXN0IHtcbiAgbWFyZ2luOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAzNXJlbTtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAzNSUgMWZyO1xufVxuLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0ICNjb250ZW50IGRpdi5wcm9kdWN0IC53b29jb21tZXJjZS10YWJzIC53b29jb21tZXJjZS1UYWJzLXBhbmVsIC5wcm9kdWN0LW5vdGVzX19sYWJlbCwgLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0ICNjb250ZW50IGRpdi5wcm9kdWN0IC53b29jb21tZXJjZS10YWJzIC53b29jb21tZXJjZS1UYWJzLXBhbmVsIC5wcm9kdWN0LW5vdGVzX192YWx1ZSB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogdmFyKC0taXQtc3BhY2luZy1kZWZhdWx0LWhhbGYpIDA7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1pdC1jb2xvci1ib3JkZXIpO1xuICBsaW5lLWhlaWdodDogMS40O1xufVxuLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0ICNjb250ZW50IGRpdi5wcm9kdWN0IC53b29jb21tZXJjZS10YWJzIC53b29jb21tZXJjZS1UYWJzLXBhbmVsIC5wcm9kdWN0LW5vdGVzX19sYWJlbCB7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxldHRlci1zcGFjaW5nOiAwLjA0ZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtc2l6ZTogdmFyKC0taXQtc2l6ZS14LXNtYWxsKTtcbiAgY29sb3I6IHZhcigtLWl0LWNvbG9yLXRleHQpO1xufVxuLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0ICNjb250ZW50IGRpdi5wcm9kdWN0IC53b29jb21tZXJjZS10YWJzIC53b29jb21tZXJjZS1UYWJzLXBhbmVsIC5wcm9kdWN0LW5vdGVzX192YWx1ZSB7XG4gIGZvbnQtc2l6ZTogdmFyKC0taXQtc2l6ZS1zbWFsbCk7XG4gIGNvbG9yOiB2YXIoLS1pdC1jb2xvci1ibGFjayk7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cbi53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCAjY29udGVudCBkaXYucHJvZHVjdCAud29vY29tbWVyY2UtdGFicyAud29vY29tbWVyY2UtVGFicy1wYW5lbCAucHJvZHVjdC1ub3Rlc19fbGFiZWw6bnRoLWxhc3QtY2hpbGQoMiksIC53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCAjY29udGVudCBkaXYucHJvZHVjdCAud29vY29tbWVyY2UtdGFicyAud29vY29tbWVyY2UtVGFicy1wYW5lbCAucHJvZHVjdC1ub3Rlc19fdmFsdWU6bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1ib3R0b206IDA7XG59XG4ud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgI2NvbnRlbnQgZGl2LnByb2R1Y3QgLndvb2NvbW1lcmNlLXRhYnMgLndvb2NvbW1lcmNlLVRhYnMtcGFuZWwgdGFibGUuc2hvcF9hdHRyaWJ1dGVzIHtcbiAgbWFyZ2luOiAwO1xuICBib3JkZXI6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDM1cmVtO1xufVxuLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0ICNjb250ZW50IGRpdi5wcm9kdWN0IC53b29jb21tZXJjZS10YWJzIC53b29jb21tZXJjZS1UYWJzLXBhbmVsIHRhYmxlLnNob3BfYXR0cmlidXRlcyB0ciB7XG4gIGJvcmRlcjogMDtcbn1cbi53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCAjY29udGVudCBkaXYucHJvZHVjdCAud29vY29tbWVyY2UtdGFicyAud29vY29tbWVyY2UtVGFicy1wYW5lbCB0YWJsZS5zaG9wX2F0dHJpYnV0ZXMgdGgsXG4ud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgI2NvbnRlbnQgZGl2LnByb2R1Y3QgLndvb2NvbW1lcmNlLXRhYnMgLndvb2NvbW1lcmNlLVRhYnMtcGFuZWwgdGFibGUuc2hvcF9hdHRyaWJ1dGVzIHRkIHtcbiAgcGFkZGluZzogdmFyKC0taXQtc3BhY2luZy1kZWZhdWx0LWhhbGYpIDA7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWl0LWNvbG9yLWJvcmRlcik7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIGJhY2tncm91bmQ6IG5vbmUgIWltcG9ydGFudDtcbn1cbi53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCAjY29udGVudCBkaXYucHJvZHVjdCAud29vY29tbWVyY2UtdGFicyAud29vY29tbWVyY2UtVGFicy1wYW5lbCB0YWJsZS5zaG9wX2F0dHJpYnV0ZXMgdGgge1xuICB3aWR0aDogMzUlO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsZXR0ZXItc3BhY2luZzogMC4wNGVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXNpemU6IHZhcigtLWl0LXNpemUteC1zbWFsbCk7XG4gIGNvbG9yOiB2YXIoLS1pdC1jb2xvci10ZXh0KTtcbn1cbi53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCAjY29udGVudCBkaXYucHJvZHVjdCAud29vY29tbWVyY2UtdGFicyAud29vY29tbWVyY2UtVGFicy1wYW5lbCB0YWJsZS5zaG9wX2F0dHJpYnV0ZXMgdGQge1xuICBmb250LXNpemU6IHZhcigtLWl0LXNpemUtc21hbGwpO1xuICBjb2xvcjogdmFyKC0taXQtY29sb3ItYmxhY2spO1xufVxuLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0ICNjb250ZW50IGRpdi5wcm9kdWN0IC53b29jb21tZXJjZS10YWJzIC53b29jb21tZXJjZS1UYWJzLXBhbmVsIHRhYmxlLnNob3BfYXR0cmlidXRlcyB0ZCBwIHtcbiAgbWFyZ2luOiAwO1xufVxuLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0ICNjb250ZW50IGRpdi5wcm9kdWN0IC53b29jb21tZXJjZS10YWJzIC53b29jb21tZXJjZS1UYWJzLXBhbmVsIHRhYmxlLnNob3BfYXR0cmlidXRlcyB0cjpsYXN0LWNoaWxkIHRoLFxuLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0ICNjb250ZW50IGRpdi5wcm9kdWN0IC53b29jb21tZXJjZS10YWJzIC53b29jb21tZXJjZS1UYWJzLXBhbmVsIHRhYmxlLnNob3BfYXR0cmlidXRlcyB0cjpsYXN0LWNoaWxkIHRkIHtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbn1cbi53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCAjY29udGVudCBkaXYucHJvZHVjdCAuYWRkaXRpb25hbC1wcm9kdWN0c19faGVhZGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0ICNjb250ZW50IGRpdi5wcm9kdWN0IC5hZGRpdGlvbmFsLXByb2R1Y3RzX19oZWFkZXIgaDIge1xuICBwYWRkaW5nLXJpZ2h0OiA2LjI1cmVtO1xufVxuLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0ICNjb250ZW50IGRpdi5wcm9kdWN0IC5hZGRpdGlvbmFsLXByb2R1Y3RzX19oZWFkZXIgLnN3aXBlci1idXR0b25zIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgZ2FwOiB2YXIoLS1pdC1zcGFjaW5nLWRlZmF1bHQpO1xuICByaWdodDogMDtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbn1cbi53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCAjY29udGVudCBkaXYucHJvZHVjdCAuYWRkaXRpb25hbC1wcm9kdWN0c19faGVhZGVyIC5zd2lwZXItYnV0dG9uczpoYXMoLnN3aXBlci1idXR0b24tcHJldi5zd2lwZXItYnV0dG9uLWRpc2FibGVkKTpoYXMoLnN3aXBlci1idXR0b24tbmV4dC5zd2lwZXItYnV0dG9uLWRpc2FibGVkKSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4ud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgI2NvbnRlbnQgZGl2LnByb2R1Y3QgLmFkZGl0aW9uYWwtcHJvZHVjdHMgLnN3aXBlci1wcm9kdWN0cyB7XG4gIG1hcmdpbi10b3A6IHZhcigtLWl0LXNwYWNpbmctY29udGVudCk7XG59XG4ud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgI2NvbnRlbnQgZGl2LnByb2R1Y3QgLmFkZGl0aW9uYWwtcHJvZHVjdHMgLnN3aXBlci1zbGlkZSB7XG4gIHBhZGRpbmctcmlnaHQ6IDFweDtcbn1cbi53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCAjY29udGVudCBkaXYucHJvZHVjdCAuYWRkaXRpb25hbC1wcm9kdWN0cyAuc3dpcGVyLXNsaWRlIHVsLnByb2R1Y3RzIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2NzVweCkgYW5kIChtaW4td2lkdGg6IDBweCkge1xuICAud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgI2NvbnRlbnQgZGl2LnByb2R1Y3QgLmFkZGl0aW9uYWwtcHJvZHVjdHNfX2hlYWRlciBoMiB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgfVxuICAud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgI2NvbnRlbnQgZGl2LnByb2R1Y3QgLmFkZGl0aW9uYWwtcHJvZHVjdHNfX2hlYWRlciAuc3dpcGVyLWJ1dHRvbnMge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0ICNjb250ZW50IGRpdi5wcm9kdWN0IC5hZGRpdGlvbmFsLXByb2R1Y3RzIC5zd2lwZXItc2xpZGUge1xuICAgIHdpZHRoOiBtYXgoMTcuNXJlbSwgODB2dyk7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY3NXB4KSBhbmQgKG1pbi13aWR0aDogMHB4KSB7XG4gIC53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCAjY29udGVudCBkaXYucHJvZHVjdC5wcm9kdWN0LXR5cGUtdmFyaWFibGUgZGl2LnN1bW1hcnkgLmNhcnQgLnZhcmlhdGlvbnNfYnV0dG9uLFxuICAud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgI2NvbnRlbnQgZGl2LnByb2R1Y3QucHJvZHVjdC10eXBlLXZhcmlhYmxlIGRpdi5zdW1tYXJ5IC5jYXJ0IC5jYXJ0IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgY29sdW1uLWdhcDogdmFyKC0taXQtc3BhY2luZy1kZWZhdWx0LWhhbGYpO1xuICAgIHJvdy1nYXA6IHZhcigtLWl0LXNwYWNpbmctZGVmYXVsdC1oYWxmKTtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgfVxuICAud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgI2NvbnRlbnQgZGl2LnByb2R1Y3QucHJvZHVjdC10eXBlLXZhcmlhYmxlIGRpdi5zdW1tYXJ5IC5jYXJ0IC52YXJpYXRpb25zX2J1dHRvbiAucXVhbnRpdHksXG4gIC53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCAjY29udGVudCBkaXYucHJvZHVjdC5wcm9kdWN0LXR5cGUtdmFyaWFibGUgZGl2LnN1bW1hcnkgLmNhcnQgLnZhcmlhdGlvbnNfYnV0dG9uIC5xdWFudGl0eS1pbnB1dCxcbiAgLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0ICNjb250ZW50IGRpdi5wcm9kdWN0LnByb2R1Y3QtdHlwZS12YXJpYWJsZSBkaXYuc3VtbWFyeSAuY2FydCAuY2FydCAucXVhbnRpdHksXG4gIC53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCAjY29udGVudCBkaXYucHJvZHVjdC5wcm9kdWN0LXR5cGUtdmFyaWFibGUgZGl2LnN1bW1hcnkgLmNhcnQgLmNhcnQgLnF1YW50aXR5LWlucHV0IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbiAgLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0ICNjb250ZW50IGRpdi5wcm9kdWN0LnByb2R1Y3QtdHlwZS12YXJpYWJsZSBkaXYuc3VtbWFyeSAuY2FydCAudmFyaWF0aW9uc19idXR0b24gLnF1YW50aXR5IGlucHV0LFxuICAud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgI2NvbnRlbnQgZGl2LnByb2R1Y3QucHJvZHVjdC10eXBlLXZhcmlhYmxlIGRpdi5zdW1tYXJ5IC5jYXJ0IC52YXJpYXRpb25zX2J1dHRvbiAucXVhbnRpdHktaW5wdXQgaW5wdXQsXG4gIC53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCAjY29udGVudCBkaXYucHJvZHVjdC5wcm9kdWN0LXR5cGUtdmFyaWFibGUgZGl2LnN1bW1hcnkgLmNhcnQgLmNhcnQgLnF1YW50aXR5IGlucHV0LFxuICAud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgI2NvbnRlbnQgZGl2LnByb2R1Y3QucHJvZHVjdC10eXBlLXZhcmlhYmxlIGRpdi5zdW1tYXJ5IC5jYXJ0IC5jYXJ0IC5xdWFudGl0eS1pbnB1dCBpbnB1dCB7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbiAgLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0ICNjb250ZW50IGRpdi5wcm9kdWN0IGRpdi5zdW1tYXJ5IC5jYXJ0IC5xdWFudGl0eSxcbiAgLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0ICNjb250ZW50IGRpdi5wcm9kdWN0IGRpdi5zdW1tYXJ5IC5jYXJ0IC5xdWFudGl0eS1pbnB1dCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0ICNjb250ZW50IGRpdi5wcm9kdWN0IGRpdi5zdW1tYXJ5IC5jYXJ0IC5xdWFudGl0eSBpbnB1dCxcbiAgLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0ICNjb250ZW50IGRpdi5wcm9kdWN0IGRpdi5zdW1tYXJ5IC5jYXJ0IC5xdWFudGl0eS1pbnB1dCBpbnB1dCB7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbiAgLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0ICNjb250ZW50IGRpdi5wcm9kdWN0IC53b29jb21tZXJjZS10YWJzIHVsLnRhYnMge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0ICNjb250ZW50IGRpdi5wcm9kdWN0IC53b29jb21tZXJjZS10YWJzIC53b29jb21tZXJjZS1UYWJzLXBhbmVsIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgIG1hcmdpbjogMDtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0taXQtY29sb3ItYm9yZGVyKTtcbiAgfVxuICAud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgI2NvbnRlbnQgZGl2LnByb2R1Y3QgLndvb2NvbW1lcmNlLXRhYnMgLnRhYi1hY2NvcmRpb25fX2hlYWRlciB7XG4gICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogdmFyKC0taXQtc3BhY2luZy1kZWZhdWx0KSAwO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0taXQtaDMtZm9udC1zaXplKTtcbiAgfVxuICAud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgI2NvbnRlbnQgZGl2LnByb2R1Y3QgLndvb2NvbW1lcmNlLXRhYnMgLnRhYi1hY2NvcmRpb25fX2hlYWRlcjphZnRlciB7XG4gICAgY29udGVudDogXCIrXCI7XG4gICAgZm9udC1zaXplOiAxLjVlbTtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4yNXMgZWFzZTtcbiAgfVxuICAud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgI2NvbnRlbnQgZGl2LnByb2R1Y3QgLndvb2NvbW1lcmNlLXRhYnMgLnRhYi1hY2NvcmRpb25fX2JvZHkge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgbWF4LWhlaWdodDogMDtcbiAgICB0cmFuc2l0aW9uOiBtYXgtaGVpZ2h0IDAuM3MgZWFzZTtcbiAgfVxuICAud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgI2NvbnRlbnQgZGl2LnByb2R1Y3QgLndvb2NvbW1lcmNlLXRhYnMgLnRhYi1hY2NvcmRpb24uaXMtb3BlbiAudGFiLWFjY29yZGlvbl9faGVhZGVyOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIuKIklwiO1xuICB9XG4gIC53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCAjY29udGVudCBkaXYucHJvZHVjdCAud29vY29tbWVyY2UtdGFicyAudGFiLWFjY29yZGlvbi5pcy1vcGVuIC50YWItYWNjb3JkaW9uX19ib2R5IHtcbiAgICBtYXgtaGVpZ2h0OiAyMDB2aDtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0taXQtc3BhY2luZy1kZWZhdWx0KTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc4M3B4KSB7XG4gIC53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCAjY29udGVudCBkaXYucHJvZHVjdCB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBtaW5tYXgoMCwgMWZyKSBtaW5tYXgoMCwgMWZyKTtcbiAgICBhbGlnbi1pdGVtczogc3RhcnQ7XG4gIH1cbiAgLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0ICNjb250ZW50IGRpdi5wcm9kdWN0IC5wcm9kdWN0LWdhbGxlcnktd3JhcHBlciB7XG4gICAgZ3JpZC1jb2x1bW46IDEvMjtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxuICAud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgI2NvbnRlbnQgZGl2LnByb2R1Y3QgZGl2LnN1bW1hcnkge1xuICAgIG1heC13aWR0aDogMzEuMjVyZW07XG4gICAgbWluLXdpZHRoOiAwO1xuICB9XG4gIC53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCAjY29udGVudCBkaXYucHJvZHVjdCBkaXYuc3VtbWFyeSAucHJvZHVjdC1pY29ucyB7XG4gICAgcGFkZGluZzogMXJlbSAwO1xuICAgIGdyaWQtdGVtcGxhdGUtcm93czogYXV0bztcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgzLCAxZnIpO1xuICB9XG4gIC53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCAjY29udGVudCBkaXYucHJvZHVjdCBkaXYuc3VtbWFyeSAucHJvZHVjdC1pY29uc19faXRlbSB7XG4gICAgcGFkZGluZzogMCAwLjc1cmVtO1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIH1cbiAgLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0ICNjb250ZW50IGRpdi5wcm9kdWN0IGRpdi5zdW1tYXJ5IC5wcm9kdWN0LWljb25zX19pdGVtOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMDtcbiAgICB3aWR0aDogMXB4O1xuICAgIGhlaWdodDogNzUlO1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pdC1jb2xvci1ib3JkZXIpO1xuICB9XG4gIC53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCAjY29udGVudCBkaXYucHJvZHVjdCBkaXYuc3VtbWFyeSAucHJvZHVjdC1pY29uc19faXRlbTpsYXN0LWNoaWxkOmFmdGVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCAjY29udGVudCBkaXYucHJvZHVjdCAud29vY29tbWVyY2UtdGFicyB7XG4gICAgZ3JpZC1jb2x1bW46IDEvMztcbiAgfVxuICAud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgI2NvbnRlbnQgZGl2LnByb2R1Y3QgLndvb2NvbW1lcmNlLXRhYnMgLnByb2R1Y3Qtbm90ZXNfX3RpZXItLXRvcCB7XG4gICAgd2lkdGg6IDQ1JTtcbiAgfVxuICAud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgI2NvbnRlbnQgZGl2LnByb2R1Y3QgLndvb2NvbW1lcmNlLXRhYnMgLnByb2R1Y3Qtbm90ZXNfX3RpZXItLWhlYXJ0IHtcbiAgICB3aWR0aDogNjglO1xuICB9XG4gIC53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCAjY29udGVudCBkaXYucHJvZHVjdCAuYWRkaXRpb25hbC1wcm9kdWN0cyB7XG4gICAgZ3JpZC1jb2x1bW46IDEvMztcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgI2NvbnRlbnQgZGl2LnByb2R1Y3Qge1xuICAgIGdhcDogdmFyKC0taXQtc3BhY2luZy1zZWN0aW9uKTtcbiAgfVxuICAud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgI2NvbnRlbnQgZGl2LnByb2R1Y3QgLnByb2R1Y3QtZ2FsbGVyeS13cmFwcGVyIHtcbiAgICBtYXgtd2lkdGg6IDQ4MHB4O1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIG1heC1oZWlnaHQ6IDUwMHB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIH1cbiAgLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0ICNjb250ZW50IGRpdi5wcm9kdWN0LnByb2R1Y3QtdHlwZS1ncm91cGVkIGRpdi5zdW1tYXJ5IC5jYXJ0IC53b29jb21tZXJjZS1ncm91cGVkLXByb2R1Y3QtbGlzdC1pdGVtIHtcbiAgICBncmlkLXRlbXBsYXRlLXJvd3M6IGF1dG87XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiA1LjMxMjVyZW0gMWZyIDEwcmVtO1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIGJvcmRlci1ib3R0b206IDA7XG4gIH1cbiAgLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0ICNjb250ZW50IGRpdi5wcm9kdWN0LnByb2R1Y3QtdHlwZS1ncm91cGVkIGRpdi5zdW1tYXJ5IC5jYXJ0IC53b29jb21tZXJjZS1ncm91cGVkLXByb2R1Y3QtbGlzdC1pdGVtLm91dG9mc3RvY2sge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0ICNjb250ZW50IGRpdi5wcm9kdWN0LnByb2R1Y3QtdHlwZS1ncm91cGVkIGRpdi5zdW1tYXJ5IC5jYXJ0IC53b29jb21tZXJjZS1ncm91cGVkLXByb2R1Y3QtbGlzdC1pdGVtX19sYWJlbCB7XG4gICAgZ3JpZC1jb2x1bW46IGF1dG87XG4gICAgZ3JpZC1yb3c6IGF1dG87XG4gIH1cbiAgLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0ICNjb250ZW50IGRpdi5wcm9kdWN0LnByb2R1Y3QtdHlwZS1ncm91cGVkIGRpdi5zdW1tYXJ5IC5jYXJ0IC53b29jb21tZXJjZS1ncm91cGVkLXByb2R1Y3QtbGlzdC1pdGVtX19wcmljZSB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgfVxufVxuXG4ud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgZm9ybS5jYXJ0IC52YXJpYXRpb25zIHNlbGVjdCB7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbn1cblxuLnZhcmlhdGlvbnMtZm9ybS0tc3dhdGNoZXMgLnZhcmlhdGlvbi1idXR0b25zIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBnYXA6IDhweDtcbiAgbWFyZ2luLWJvdHRvbTogMTZweDtcbn1cbi52YXJpYXRpb25zLWZvcm0tLXN3YXRjaGVzIC52YXJpYXRpb24tYnRuIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBtaW4td2lkdGg6IDcycHg7XG4gIHBhZGRpbmc6IDEwcHggMTZweDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2Q5ZDlkOTtcbiAgYm9yZGVyLXJhZGl1czogOHB4O1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBmb250LXNpemU6IDE0cHg7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAwLjE1cywgYm94LXNoYWRvdyAwLjE1cztcbn1cbi52YXJpYXRpb25zLWZvcm0tLXN3YXRjaGVzIC52YXJpYXRpb24tYnRuOmhvdmVyOm5vdCguaXMtZGlzYWJsZWQpIHtcbiAgYm9yZGVyLWNvbG9yOiAjMDAwO1xufVxuLnZhcmlhdGlvbnMtZm9ybS0tc3dhdGNoZXMgLnZhcmlhdGlvbi1idG4uaXMtc2VsZWN0ZWQge1xuICBib3JkZXItY29sb3I6ICMwMDA7XG4gIGJvcmRlci13aWR0aDogMnB4O1xuICBib3gtc2hhZG93OiBub25lO1xufVxuLnZhcmlhdGlvbnMtZm9ybS0tc3dhdGNoZXMgLnZhcmlhdGlvbi1idG4uaXMtZGlzYWJsZWQge1xuICBvcGFjaXR5OiAwLjM1O1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLnZhcmlhdGlvbnMtZm9ybS0tc3dhdGNoZXMgLnZhcmlhdGlvbi1idG4uaXMtZGlzYWJsZWQ6OmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBpbnNldDogMDtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHRvcCByaWdodCwgdHJhbnNwYXJlbnQgY2FsYyg1MCUgLSAwLjVweCksICNjY2MgY2FsYyg1MCUgLSAwLjVweCksICNjY2MgY2FsYyg1MCUgKyAwLjVweCksIHRyYW5zcGFyZW50IGNhbGMoNTAlICsgMC41cHgpKTtcbiAgYm9yZGVyLXJhZGl1czogaW5oZXJpdDtcbn1cbi52YXJpYXRpb25zLWZvcm0tLXN3YXRjaGVzIC5yZXNldF92YXJpYXRpb25zIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tdG9wOiA0cHg7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgY29sb3I6ICM3Njc2NzY7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuLnZhcmlhdGlvbnMtZm9ybS0tc3dhdGNoZXMgLnJlc2V0X3ZhcmlhdGlvbnM6aG92ZXIge1xuICBjb2xvcjogIzAwMDtcbn1cblxuLmJ1eS1ub3cge1xuICBvcmRlcjogNDtcbiAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1pdC1jb2xvci1ibGFjaykgIWltcG9ydGFudDtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1pdC1jb2xvci1ibGFjaykgIWltcG9ydGFudDtcbiAgY29sb3I6IHZhcigtLWl0LWNvbG9yLXdoaXRlKSAhaW1wb3J0YW50O1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMjVzIGVhc2UsIGJhY2tncm91bmQtY29sb3IgMC4yNXMgZWFzZTtcbn1cbi5idXktbm93OmhvdmVyIHtcbiAgYmFja2dyb3VuZDogdmFyKC0taXQtY29sb3ItYnJhbmQpICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0taXQtY29sb3ItYnJhbmQpICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiB2YXIoLS1pdC1jb2xvci1ibGFjaykgIWltcG9ydGFudDtcbn1cbi5idXktbm93LmRpc2FibGVkLCAuYnV5LW5vdzpkaXNhYmxlZCB7XG4gIG9wYWNpdHk6IDAuNDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG4uYnV5LW5vdy5pcy1sb2FkaW5nIHtcbiAgb3BhY2l0eTogMC42O1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuLyoqXG4gKiBEbyBub3QgQHVzZSBmaWxlcyB3aXRoIGFjdHVhbCBzY3NzIGNvZGUgaW4gdGhpcyBmaWxlLCBhcyBpdCB3aWxsIGNvbXBpbGUgY3NzIGNvZGUgdHdpY2UuXG4gKiBBcyB0aGlzIGZpbGUgZ29pbmcgdG8gYmUgYW4gc3RhbmRhbG9uZSBjc3MgZmlsZS5cbiAqL1xuLyoqXG4gKiBEbyBub3QgQHVzZSBmaWxlcyB3aXRoIGFjdHVhbCBzY3NzIGNvZGUgaW4gdGhpcyBmaWxlLCBhcyBpdCB3aWxsIGNvbXBpbGUgY3NzIGNvZGUgdHdpY2UuXG4gKiBBcyB0aGlzIGZpbGUgZ29pbmcgdG8gYmUgYW4gc3RhbmRhbG9uZSBjc3MgZmlsZS5cbiAqL1xuLyoqXG4gKiBEbyBub3QgQHVzZSBmaWxlcyB3aXRoIGFjdHVhbCBzY3NzIGNvZGUgaW4gdGhpcyBmaWxlLCBhcyBpdCB3aWxsIGNvbXBpbGUgY3NzIGNvZGUgdHdpY2UuXG4gKiBBcyB0aGlzIGZpbGUgZ29pbmcgdG8gYmUgYW4gc3RhbmRhbG9uZSBjc3MgZmlsZS5cbiAqL1xuLyoqXG4gKiBEbyBub3QgQHVzZSBmaWxlcyB3aXRoIGFjdHVhbCBzY3NzIGNvZGUgaW4gdGhpcyBmaWxlLCBhcyBpdCB3aWxsIGNvbXBpbGUgY3NzIGNvZGUgdHdpY2UuXG4gKiBBcyB0aGlzIGZpbGUgZ29pbmcgdG8gYmUgYW4gc3RhbmRhbG9uZSBjc3MgZmlsZS5cbiAqL1xuLyoqXG4gKiBEbyBub3QgQHVzZSBmaWxlcyB3aXRoIGFjdHVhbCBzY3NzIGNvZGUgaW4gdGhpcyBmaWxlLCBhcyBpdCB3aWxsIGNvbXBpbGUgY3NzIGNvZGUgdHdpY2UuXG4gKiBBcyB0aGlzIGZpbGUgZ29pbmcgdG8gYmUgYW4gc3RhbmRhbG9uZSBjc3MgZmlsZS5cbiAqL1xuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSAuY2hlY2tvdXQgLndvb2NvbW1lcmNlLW9yZGVyIC5zaG9wX3RhYmxlLCAud29vY29tbWVyY2UtY2FydCAud29vY29tbWVyY2UgLmNhcnQtY29sbGF0ZXJhbHMgLmNhcnRfdG90YWxzIC5zaG9wX3RhYmxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIG1hcmdpbjogMDtcbiAgYm9yZGVyOiAwO1xufVxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSAuY2hlY2tvdXQgLndvb2NvbW1lcmNlLW9yZGVyIC5zaG9wX3RhYmxlIHRoZWFkLCAud29vY29tbWVyY2UtY2FydCAud29vY29tbWVyY2UgLmNhcnQtY29sbGF0ZXJhbHMgLmNhcnRfdG90YWxzIC5zaG9wX3RhYmxlIHRoZWFkIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgLmNoZWNrb3V0IC53b29jb21tZXJjZS1vcmRlciAuc2hvcF90YWJsZSBpbWcsIC53b29jb21tZXJjZS1jYXJ0IC53b29jb21tZXJjZSAuY2FydC1jb2xsYXRlcmFscyAuY2FydF90b3RhbHMgLnNob3BfdGFibGUgaW1nIHtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0taXQtYm9yZGVyLXJhZGl1cy1zbWFsbCk7XG59XG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIC5jaGVja291dCAud29vY29tbWVyY2Utb3JkZXIgLnNob3BfdGFibGUgdHI6Zmlyc3QtY2hpbGQgdGQsIC53b29jb21tZXJjZS1jYXJ0IC53b29jb21tZXJjZSAuY2FydC1jb2xsYXRlcmFscyAuY2FydF90b3RhbHMgLnNob3BfdGFibGUgdHI6Zmlyc3QtY2hpbGQgdGQge1xuICBib3JkZXItdG9wOiAwO1xufVxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSAuY2hlY2tvdXQgLndvb2NvbW1lcmNlLW9yZGVyIC5zaG9wX3RhYmxlIHRyLm9yZGVyLXRvdGFsLXNtYWxsLWJ1c2luZXNzLW5vdGljZTpsYXN0LWNoaWxkIHRoLCAud29vY29tbWVyY2UtY2FydCAud29vY29tbWVyY2UgLmNhcnQtY29sbGF0ZXJhbHMgLmNhcnRfdG90YWxzIC5zaG9wX3RhYmxlIHRyLm9yZGVyLXRvdGFsLXNtYWxsLWJ1c2luZXNzLW5vdGljZTpsYXN0LWNoaWxkIHRoLFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSAuY2hlY2tvdXQgLndvb2NvbW1lcmNlLW9yZGVyIC5zaG9wX3RhYmxlIHRyLm9yZGVyLXRvdGFsLXNtYWxsLWJ1c2luZXNzLW5vdGljZTpsYXN0LWNoaWxkIHRkLFxuLndvb2NvbW1lcmNlLWNhcnQgLndvb2NvbW1lcmNlIC5jYXJ0LWNvbGxhdGVyYWxzIC5jYXJ0X3RvdGFscyAuc2hvcF90YWJsZSB0ci5vcmRlci10b3RhbC1zbWFsbC1idXNpbmVzcy1ub3RpY2U6bGFzdC1jaGlsZCB0ZCB7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xufVxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSAuY2hlY2tvdXQgLndvb2NvbW1lcmNlLW9yZGVyIC5zaG9wX3RhYmxlIHRyLm9yZGVyLXRvdGFsLXNtYWxsLWJ1c2luZXNzLW5vdGljZSB0aCwgLndvb2NvbW1lcmNlLWNhcnQgLndvb2NvbW1lcmNlIC5jYXJ0LWNvbGxhdGVyYWxzIC5jYXJ0X3RvdGFscyAuc2hvcF90YWJsZSB0ci5vcmRlci10b3RhbC1zbWFsbC1idXNpbmVzcy1ub3RpY2UgdGgsXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIC5jaGVja291dCAud29vY29tbWVyY2Utb3JkZXIgLnNob3BfdGFibGUgdHIub3JkZXItdG90YWwtc21hbGwtYnVzaW5lc3Mtbm90aWNlIHRkLFxuLndvb2NvbW1lcmNlLWNhcnQgLndvb2NvbW1lcmNlIC5jYXJ0LWNvbGxhdGVyYWxzIC5jYXJ0X3RvdGFscyAuc2hvcF90YWJsZSB0ci5vcmRlci10b3RhbC1zbWFsbC1idXNpbmVzcy1ub3RpY2UgdGQge1xuICBib3JkZXItYm90dG9tOiAwO1xufVxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSAuY2hlY2tvdXQgLndvb2NvbW1lcmNlLW9yZGVyIC5zaG9wX3RhYmxlIHRyLm9yZGVyLXRvdGFsLCAud29vY29tbWVyY2UtY2FydCAud29vY29tbWVyY2UgLmNhcnQtY29sbGF0ZXJhbHMgLmNhcnRfdG90YWxzIC5zaG9wX3RhYmxlIHRyLm9yZGVyLXRvdGFsIHtcbiAgZm9udC1zaXplOiB2YXIoLS1pdC1zaXplLWxhcmdlKTtcbn1cbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgLmNoZWNrb3V0IC53b29jb21tZXJjZS1vcmRlciAuc2hvcF90YWJsZSB0ci5vcmRlci10b3RhbCB0aCwgLndvb2NvbW1lcmNlLWNhcnQgLndvb2NvbW1lcmNlIC5jYXJ0LWNvbGxhdGVyYWxzIC5jYXJ0X3RvdGFscyAuc2hvcF90YWJsZSB0ci5vcmRlci10b3RhbCB0aCxcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgLmNoZWNrb3V0IC53b29jb21tZXJjZS1vcmRlciAuc2hvcF90YWJsZSB0ci5vcmRlci10b3RhbCB0ZCxcbi53b29jb21tZXJjZS1jYXJ0IC53b29jb21tZXJjZSAuY2FydC1jb2xsYXRlcmFscyAuY2FydF90b3RhbHMgLnNob3BfdGFibGUgdHIub3JkZXItdG90YWwgdGQge1xuICBmb250LXdlaWdodDogNzAwO1xufVxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSAuY2hlY2tvdXQgLndvb2NvbW1lcmNlLW9yZGVyIC5zaG9wX3RhYmxlIHRoLCAud29vY29tbWVyY2UtY2FydCAud29vY29tbWVyY2UgLmNhcnQtY29sbGF0ZXJhbHMgLmNhcnRfdG90YWxzIC5zaG9wX3RhYmxlIHRoIHtcbiAgd2lkdGg6IDEwMCU7XG59XG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIC5jaGVja291dCAud29vY29tbWVyY2Utb3JkZXIgLnNob3BfdGFibGUgdGgsIC53b29jb21tZXJjZS1jYXJ0IC53b29jb21tZXJjZSAuY2FydC1jb2xsYXRlcmFscyAuY2FydF90b3RhbHMgLnNob3BfdGFibGUgdGgsXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIC5jaGVja291dCAud29vY29tbWVyY2Utb3JkZXIgLnNob3BfdGFibGUgdGQsXG4ud29vY29tbWVyY2UtY2FydCAud29vY29tbWVyY2UgLmNhcnQtY29sbGF0ZXJhbHMgLmNhcnRfdG90YWxzIC5zaG9wX3RhYmxlIHRkIHtcbiAgcGFkZGluZzogdmFyKC0taXQtc3BhY2luZy1mb3JtKSB2YXIoLS1pdC1zcGFjaW5nLWRlZmF1bHQtaGFsZik7XG4gIGJvcmRlci10b3A6IDA7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1pdC1jb2xvci1ib3JkZXIpO1xuICBiYWNrZ3JvdW5kOiBub25lO1xufVxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSAuY2hlY2tvdXQgLndvb2NvbW1lcmNlLW9yZGVyIC5zaG9wX3RhYmxlIHRoOmZpcnN0LWNoaWxkLCAud29vY29tbWVyY2UtY2FydCAud29vY29tbWVyY2UgLmNhcnQtY29sbGF0ZXJhbHMgLmNhcnRfdG90YWxzIC5zaG9wX3RhYmxlIHRoOmZpcnN0LWNoaWxkLFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSAuY2hlY2tvdXQgLndvb2NvbW1lcmNlLW9yZGVyIC5zaG9wX3RhYmxlIHRkOmZpcnN0LWNoaWxkLFxuLndvb2NvbW1lcmNlLWNhcnQgLndvb2NvbW1lcmNlIC5jYXJ0LWNvbGxhdGVyYWxzIC5jYXJ0X3RvdGFscyAuc2hvcF90YWJsZSB0ZDpmaXJzdC1jaGlsZCB7XG4gIHBhZGRpbmctbGVmdDogMDtcbn1cbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgLmNoZWNrb3V0IC53b29jb21tZXJjZS1vcmRlciAuc2hvcF90YWJsZSB0aDpsYXN0LWNoaWxkLCAud29vY29tbWVyY2UtY2FydCAud29vY29tbWVyY2UgLmNhcnQtY29sbGF0ZXJhbHMgLmNhcnRfdG90YWxzIC5zaG9wX3RhYmxlIHRoOmxhc3QtY2hpbGQsXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIC5jaGVja291dCAud29vY29tbWVyY2Utb3JkZXIgLnNob3BfdGFibGUgdGQ6bGFzdC1jaGlsZCxcbi53b29jb21tZXJjZS1jYXJ0IC53b29jb21tZXJjZSAuY2FydC1jb2xsYXRlcmFscyAuY2FydF90b3RhbHMgLnNob3BfdGFibGUgdGQ6bGFzdC1jaGlsZCB7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSAuY2hlY2tvdXQgLndvb2NvbW1lcmNlLW9yZGVyIC5zaG9wX3RhYmxlIHRoLCAud29vY29tbWVyY2UtY2FydCAud29vY29tbWVyY2UgLmNhcnQtY29sbGF0ZXJhbHMgLmNhcnRfdG90YWxzIC5zaG9wX3RhYmxlIHRoIHtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbn1cbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgLmNoZWNrb3V0IC53b29jb21tZXJjZS1vcmRlciAuc2hvcF90YWJsZSAud2MtZ3pkLWFkZGl0aW9uYWwtaW5mbywgLndvb2NvbW1lcmNlLWNhcnQgLndvb2NvbW1lcmNlIC5jYXJ0LWNvbGxhdGVyYWxzIC5jYXJ0X3RvdGFscyAuc2hvcF90YWJsZSAud2MtZ3pkLWFkZGl0aW9uYWwtaW5mbyB7XG4gIGZvbnQtc2l6ZTogdmFyKC0taXQtc2l6ZS1zbWFsbCk7XG59XG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIC5jaGVja291dCAud29vY29tbWVyY2Utb3JkZXIgLnNob3BfdGFibGUgLndvb2NvbW1lcmNlLXNoaXBwaW5nLW1ldGhvZHMsIC53b29jb21tZXJjZS1jYXJ0IC53b29jb21tZXJjZSAuY2FydC1jb2xsYXRlcmFscyAuY2FydF90b3RhbHMgLnNob3BfdGFibGUgLndvb2NvbW1lcmNlLXNoaXBwaW5nLW1ldGhvZHMge1xuICBtYXJnaW46IDA7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbn1cbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgLmNoZWNrb3V0IC53b29jb21tZXJjZS1vcmRlciAuc2hvcF90YWJsZSAud29vY29tbWVyY2Utc2hpcHBpbmctbWV0aG9kcyBsYWJlbCwgLndvb2NvbW1lcmNlLWNhcnQgLndvb2NvbW1lcmNlIC5jYXJ0LWNvbGxhdGVyYWxzIC5jYXJ0X3RvdGFscyAuc2hvcF90YWJsZSAud29vY29tbWVyY2Utc2hpcHBpbmctbWV0aG9kcyBsYWJlbCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGZvbnQtc2l6ZTogdmFyKC0taXQtc2l6ZS1tZWRpdW0pO1xufVxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSAuY2hlY2tvdXQgLndvb2NvbW1lcmNlLW9yZGVyIC5zaG9wX3RhYmxlIC53b29jb21tZXJjZS1zaGlwcGluZy1tZXRob2RzIGxhYmVsOmhhcygqKSwgLndvb2NvbW1lcmNlLWNhcnQgLndvb2NvbW1lcmNlIC5jYXJ0LWNvbGxhdGVyYWxzIC5jYXJ0X3RvdGFscyAuc2hvcF90YWJsZSAud29vY29tbWVyY2Utc2hpcHBpbmctbWV0aG9kcyBsYWJlbDpoYXMoKikge1xuICBmb250LXNpemU6IDA7XG4gIGxpbmUtaGVpZ2h0OiAwO1xufVxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSAuY2hlY2tvdXQgLndvb2NvbW1lcmNlLW9yZGVyIC5zaG9wX3RhYmxlIC53b29jb21tZXJjZS1zaGlwcGluZy1tZXRob2RzIGxhYmVsOmhhcygqKSA+ICosIC53b29jb21tZXJjZS1jYXJ0IC53b29jb21tZXJjZSAuY2FydC1jb2xsYXRlcmFscyAuY2FydF90b3RhbHMgLnNob3BfdGFibGUgLndvb2NvbW1lcmNlLXNoaXBwaW5nLW1ldGhvZHMgbGFiZWw6aGFzKCopID4gKiB7XG4gIGZvbnQtc2l6ZTogdmFyKC0taXQtc2l6ZS1tZWRpdW0pO1xuICBsaW5lLWhlaWdodDogMS42O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzgycHgpIGFuZCAobWluLXdpZHRoOiAwcHgpIHtcbiAgLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSAuY2hlY2tvdXQgLndvb2NvbW1lcmNlLW9yZGVyIC5zaG9wX3RhYmxlX3Jlc3BvbnNpdmUuc2hvcF90YWJsZSB0ZCwgLndvb2NvbW1lcmNlLWNhcnQgLndvb2NvbW1lcmNlIC5jYXJ0LWNvbGxhdGVyYWxzIC5jYXJ0X3RvdGFscyAuc2hvcF90YWJsZV9yZXNwb25zaXZlLnNob3BfdGFibGUgdGQsIC53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgLmNoZWNrb3V0IC53b29jb21tZXJjZS1vcmRlciAuc2hvcF90YWJsZV9yZXNwb25zaXZlLnNob3BfdGFibGUgdGgsIC53b29jb21tZXJjZS1jYXJ0IC53b29jb21tZXJjZSAuY2FydC1jb2xsYXRlcmFscyAuY2FydF90b3RhbHMgLnNob3BfdGFibGVfcmVzcG9uc2l2ZS5zaG9wX3RhYmxlIHRoIHtcbiAgICBwYWRkaW5nLWlubGluZTogMDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIC5jaGVja291dCAud29vY29tbWVyY2Utb3JkZXIgLnNob3BfdGFibGUsIC53b29jb21tZXJjZS1jYXJ0IC53b29jb21tZXJjZSAuY2FydC1jb2xsYXRlcmFscyAuY2FydF90b3RhbHMgLnNob3BfdGFibGUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG92ZXJmbG93OiBhdXRvO1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMzY2cHgpIHtcbiAgLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSAuY2hlY2tvdXQgLndvb2NvbW1lcmNlLW9yZGVyIC5zaG9wX3RhYmxlIC53Yy1nemQtYWRkaXRpb25hbC1pbmZvLCAud29vY29tbWVyY2UtY2FydCAud29vY29tbWVyY2UgLmNhcnQtY29sbGF0ZXJhbHMgLmNhcnRfdG90YWxzIC5zaG9wX3RhYmxlIC53Yy1nemQtYWRkaXRpb25hbC1pbmZvIHtcbiAgICBmb250LXNpemU6IHZhcigtLWl0LXNpemUtbWVkaXVtKTtcbiAgfVxufVxuXG4ud29vY29tbWVyY2UtY2FydCAud29vY29tbWVyY2Uge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbn1cbi53b29jb21tZXJjZS1jYXJ0IC53b29jb21tZXJjZSAud29vY29tbWVyY2Utbm90aWNlcy13cmFwcGVyIHtcbiAgZ3JpZC1jb2x1bW46IDEvLTE7XG59XG4ud29vY29tbWVyY2UtY2FydCAud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jYXJ0LWZvcm0ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBncmlkLWNvbHVtbjogMS8zO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBnYXA6IHZhcigtLWl0LXNwYWNpbmctZGVmYXVsdCk7XG59XG4ud29vY29tbWVyY2UtY2FydCAud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jYXJ0LWZvcm0gdGFibGUud29vY29tbWVyY2UtY2FydC1mb3JtX19jb250ZW50cyB7XG4gIGJvcmRlcjogMDtcbn1cbi53b29jb21tZXJjZS1jYXJ0IC53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNhcnQtZm9ybSB0YWJsZS53b29jb21tZXJjZS1jYXJ0LWZvcm1fX2NvbnRlbnRzIHRoZWFkIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi53b29jb21tZXJjZS1jYXJ0IC53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNhcnQtZm9ybSB0YWJsZS53b29jb21tZXJjZS1jYXJ0LWZvcm1fX2NvbnRlbnRzIHRib2R5IHtcbiAgZGlzcGxheTogZ3JpZDtcbn1cbi53b29jb21tZXJjZS1jYXJ0IC53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNhcnQtZm9ybSAud29vY29tbWVyY2UtY2FydC1mb3JtX19jYXJ0LWl0ZW0ge1xuICBkaXNwbGF5OiBncmlkO1xuICBhbGlnbi1pdGVtczogc3RhcnQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogNXJlbSAxZnIgYXV0bztcbiAgZ3JpZC1yb3ctZ2FwOiB2YXIoLS1pdC1zcGFjaW5nLWZvcm0pO1xuICBncmlkLWNvbHVtbi1nYXA6IDEuNXJlbTtcbiAgcGFkZGluZzogdmFyKC0taXQtc3BhY2luZy1kZWZhdWx0KSAwO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0taXQtY29sb3ItYm9yZGVyKTtcbn1cbi53b29jb21tZXJjZS1jYXJ0IC53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNhcnQtZm9ybSAud29vY29tbWVyY2UtY2FydC1mb3JtX19jYXJ0LWl0ZW06Zmlyc3QtY2hpbGQge1xuICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0taXQtY29sb3ItYm9yZGVyKTtcbn1cbi53b29jb21tZXJjZS1jYXJ0IC53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNhcnQtZm9ybSAud29vY29tbWVyY2UtY2FydC1mb3JtX19jYXJ0LWl0ZW0gdGQge1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IDA7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG59XG4ud29vY29tbWVyY2UtY2FydCAud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jYXJ0LWZvcm0gLndvb2NvbW1lcmNlLWNhcnQtZm9ybV9fY2FydC1pdGVtIHRkOmJlZm9yZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4ud29vY29tbWVyY2UtY2FydCAud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jYXJ0LWZvcm0gLndvb2NvbW1lcmNlLWNhcnQtZm9ybV9fY2FydC1pdGVtIC5wcm9kdWN0LXRodW1ibmFpbCB7XG4gIGdyaWQtcm93OiAxLzM7XG4gIGdyaWQtY29sdW1uOiAxLzI7XG4gIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG59XG4ud29vY29tbWVyY2UtY2FydCAud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jYXJ0LWZvcm0gLndvb2NvbW1lcmNlLWNhcnQtZm9ybV9fY2FydC1pdGVtIC5wcm9kdWN0LXRodW1ibmFpbCBhIGltZyB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDVyZW07XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWl0LWJvcmRlci1yYWRpdXMtc21hbGwpO1xufVxuLndvb2NvbW1lcmNlLWNhcnQgLndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2FydC1mb3JtIC53b29jb21tZXJjZS1jYXJ0LWZvcm1fX2NhcnQtaXRlbSAucHJvZHVjdC1uYW1lIHtcbiAgZ3JpZC1jb2x1bW46IDIvMztcbiAgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50O1xufVxuLndvb2NvbW1lcmNlLWNhcnQgLndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2FydC1mb3JtIC53b29jb21tZXJjZS1jYXJ0LWZvcm1fX2NhcnQtaXRlbSAucHJvZHVjdC1uYW1lIC5sYWJlbF93aXRoX3ByaWNlIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZ2FwOiAwLjVyZW07XG59XG4ud29vY29tbWVyY2UtY2FydCAud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jYXJ0LWZvcm0gLndvb2NvbW1lcmNlLWNhcnQtZm9ybV9fY2FydC1pdGVtIC5wcm9kdWN0LW5hbWUgLmxhYmVsX3dpdGhfcHJpY2UgLmxhYmVsIHtcbiAgZm9udC1zaXplOiB2YXIoLS1pdC1oNi1mb250LXNpemUpO1xuICBsaW5lLWhlaWdodDogdmFyKC0taXQtaDYtbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogNTAwO1xufVxuLndvb2NvbW1lcmNlLWNhcnQgLndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2FydC1mb3JtIC53b29jb21tZXJjZS1jYXJ0LWZvcm1fX2NhcnQtaXRlbSAucHJvZHVjdC1uYW1lIC5sYWJlbF93aXRoX3ByaWNlIC5sYWJlbCBhIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuLndvb2NvbW1lcmNlLWNhcnQgLndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2FydC1mb3JtIC53b29jb21tZXJjZS1jYXJ0LWZvcm1fX2NhcnQtaXRlbSAucHJvZHVjdC1uYW1lIC5sYWJlbF93aXRoX3ByaWNlIC5wcmljZSBkZWwge1xuICBvcGFjaXR5OiAwLjU7XG4gIGZvbnQtc2l6ZTogdmFyKC0taXQtc2l6ZS1zbWFsbCk7XG59XG4ud29vY29tbWVyY2UtY2FydCAud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jYXJ0LWZvcm0gLndvb2NvbW1lcmNlLWNhcnQtZm9ybV9fY2FydC1pdGVtIC5wcm9kdWN0LW5hbWUgLmxhYmVsX3dpdGhfcHJpY2UgLnByaWNlIGlucyB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbi53b29jb21tZXJjZS1jYXJ0IC53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNhcnQtZm9ybSAud29vY29tbWVyY2UtY2FydC1mb3JtX19jYXJ0LWl0ZW0gLnByb2R1Y3QtcXVhbnRpdHkge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGdyaWQtY29sdW1uOiAyLzM7XG4gIHdpZHRoOiBtYXgtY29udGVudDtcbn1cbi53b29jb21tZXJjZS1jYXJ0IC53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNhcnQtZm9ybSAud29vY29tbWVyY2UtY2FydC1mb3JtX19jYXJ0LWl0ZW0gLnByb2R1Y3QtcHJpY2Uge1xuICBkaXNwbGF5OiBub25lO1xufVxuLndvb2NvbW1lcmNlLWNhcnQgLndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2FydC1mb3JtIC53b29jb21tZXJjZS1jYXJ0LWZvcm1fX2NhcnQtaXRlbSAucHJvZHVjdC1zdWJ0b3RhbCB7XG4gIGdyaWQtY29sdW1uOiAzLzQ7XG4gIGdyaWQtcm93OiAxLzI7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgY29sb3I6IHZhcigtLWl0LWNvbG9yLWJyYW5kKTtcbn1cbi53b29jb21tZXJjZS1jYXJ0IC53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNhcnQtZm9ybSAud29vY29tbWVyY2UtY2FydC1mb3JtX19jYXJ0LWl0ZW0gLnByb2R1Y3QtcmVtb3ZlIHtcbiAgZ3JpZC1jb2x1bW46IDIvMztcbiAgZ3JpZC1yb3c6IDMvNDtcbn1cbi53b29jb21tZXJjZS1jYXJ0IC53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNhcnQtZm9ybSAud29vY29tbWVyY2UtY2FydC1mb3JtX19jYXJ0LWl0ZW0gLnByb2R1Y3QtcmVtb3ZlIGEge1xuICB3aWR0aDogYXV0bztcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIGZvbnQtc2l6ZTogdmFyKC0taXQtc2l6ZS1zbWFsbCk7XG4gIGNvbG9yOiB2YXIoLS1pdC1jb2xvci10ZXh0KSAhaW1wb3J0YW50O1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBmb250LXdlaWdodDogNDAwO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG4ud29vY29tbWVyY2UtY2FydCAud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jYXJ0LWZvcm0gLndvb2NvbW1lcmNlLWNhcnQtZm9ybV9fY2FydC1pdGVtIC5wcm9kdWN0LXJlbW92ZSBhOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG59XG4ud29vY29tbWVyY2UtY2FydCAud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jYXJ0LWZvcm0gdHI6bGFzdC1jaGlsZCB7XG4gIHdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXRvcDogdmFyKC0taXQtc3BhY2luZy1kZWZhdWx0KTtcbn1cbi53b29jb21tZXJjZS1jYXJ0IC53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNhcnQtZm9ybSB0cjpsYXN0LWNoaWxkIHRkIHtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyOiAwO1xuICBkaXNwbGF5OiBmbGV4O1xufVxuLndvb2NvbW1lcmNlLWNhcnQgLndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2FydC1mb3JtIHRyOmxhc3QtY2hpbGQgLmNvdXBvbiB7XG4gIHdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBncmlkO1xuICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xuICBncmlkLXRlbXBsYXRlLXJvd3M6IDFmciAxZnI7XG4gIGdhcDogdmFyKC0taXQtc3BhY2luZy1mb3JtKTtcbiAgcGFkZGluZy1ib3R0b206IDAgIWltcG9ydGFudDtcbn1cbi53b29jb21tZXJjZS1jYXJ0IC53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNhcnQtZm9ybSB0cjpsYXN0LWNoaWxkIC5jb3Vwb246YmVmb3JlLCAud29vY29tbWVyY2UtY2FydCAud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jYXJ0LWZvcm0gdHI6bGFzdC1jaGlsZCAuY291cG9uOmFmdGVyIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuLndvb2NvbW1lcmNlLWNhcnQgLndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2FydC1mb3JtIHRyOmxhc3QtY2hpbGQgLmNvdXBvbiAuaW5wdXQtdGV4dCB7XG4gIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG4gIG1hcmdpbjogMDtcbn1cbi53b29jb21tZXJjZS1jYXJ0IC53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNhcnQtZm9ybSB0cjpsYXN0LWNoaWxkIC5jb3Vwb24gLmNvdXBvbi1lcnJvci1ub3RpY2Uge1xuICBncmlkLWNvbHVtbjogMS8tMTtcbn1cbi53b29jb21tZXJjZS1jYXJ0IC53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNhcnQtZm9ybSB0cjpsYXN0LWNoaWxkIC5idXR0b24ge1xuICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xufVxuLndvb2NvbW1lcmNlLWNhcnQgLndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2FydC1mb3JtIHRyOmxhc3QtY2hpbGQgLmJ1dHRvbltuYW1lPXVwZGF0ZV9jYXJ0XSB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cbi53b29jb21tZXJjZS1jYXJ0IC53b29jb21tZXJjZSAuY2FydC1jb2xsYXRlcmFscyB7XG4gIG1hcmdpbi10b3A6IHZhcigtLWl0LXNwYWNpbmctc2VjdGlvbi1oYWxmKTtcbn1cbi53b29jb21tZXJjZS1jYXJ0IC53b29jb21tZXJjZSAuY2FydC1jb2xsYXRlcmFsczpiZWZvcmUsIC53b29jb21tZXJjZS1jYXJ0IC53b29jb21tZXJjZSAuY2FydC1jb2xsYXRlcmFsczphZnRlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4ud29vY29tbWVyY2UtY2FydCAud29vY29tbWVyY2UgLmNhcnQtY29sbGF0ZXJhbHMgLmNhcnRfdG90YWxzIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGZsb2F0OiBub25lO1xuICBkaXNwbGF5OiBncmlkO1xuICBnYXA6IHZhcigtLWl0LXNwYWNpbmctZGVmYXVsdCk7XG4gIGdyaWQtdGVtcGxhdGUtcm93czogYXV0byAxZnI7XG59XG4ud29vY29tbWVyY2UtY2FydCAud29vY29tbWVyY2UgLmNhcnQtY29sbGF0ZXJhbHMgLmNhcnRfdG90YWxzIGgyIHtcbiAgZm9udC1zaXplOiB2YXIoLS1pdC1oNS1mb250LXNpemUpO1xuICBsaW5lLWhlaWdodDogdmFyKC0taXQtaDUtbGluZS1oZWlnaHQpO1xufVxuLndvb2NvbW1lcmNlLWNhcnQgLndvb2NvbW1lcmNlIC5jYXJ0LWNvbGxhdGVyYWxzIC5jYXJ0X3RvdGFscyAuc2hvcF90YWJsZSB0cjpmaXJzdC1jaGlsZCB0aCxcbi53b29jb21tZXJjZS1jYXJ0IC53b29jb21tZXJjZSAuY2FydC1jb2xsYXRlcmFscyAuY2FydF90b3RhbHMgLnNob3BfdGFibGUgdHI6Zmlyc3QtY2hpbGQgdGQge1xuICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0taXQtY29sb3ItYm9yZGVyKTtcbn1cbi53b29jb21tZXJjZS1jYXJ0IC53b29jb21tZXJjZSAuY2FydC1jb2xsYXRlcmFscyAuY2FydF90b3RhbHMgLndjLXByb2NlZWQtdG8tY2hlY2tvdXQge1xuICBwYWRkaW5nOiAwO1xufVxuLndvb2NvbW1lcmNlLWNhcnQgLndvb2NvbW1lcmNlIC5jYXJ0LWNvbGxhdGVyYWxzIC5jYXJ0X3RvdGFscyAud2MtcHJvY2VlZC10by1jaGVja291dDpiZWZvcmUsIC53b29jb21tZXJjZS1jYXJ0IC53b29jb21tZXJjZSAuY2FydC1jb2xsYXRlcmFscyAuY2FydF90b3RhbHMgLndjLXByb2NlZWQtdG8tY2hlY2tvdXQ6YWZ0ZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuLndvb2NvbW1lcmNlLWNhcnQgLndvb2NvbW1lcmNlIC5jYXJ0LWNvbGxhdGVyYWxzIC5jYXJ0X3RvdGFscyAud2MtcHJvY2VlZC10by1jaGVja291dCAuY2hlY2tvdXQtYnV0dG9uIHtcbiAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbn1cbi53b29jb21tZXJjZS1jYXJ0IC53b29jb21tZXJjZSAuY3Jvc3Mtc2VsbHMge1xuICBncmlkLWNvbHVtbjogMS8tMTtcbiAgbWFyZ2luLXRvcDogdmFyKC0taXQtc3BhY2luZy1zZWN0aW9uLWhhbGYpO1xufVxuLndvb2NvbW1lcmNlLWNhcnQgLndvb2NvbW1lcmNlIC5jcm9zcy1zZWxscyBoMiB7XG4gIGZvbnQtc2l6ZTogdmFyKC0taXQtaDUtZm9udC1zaXplKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWl0LWg1LWxpbmUtaGVpZ2h0KTtcbn1cbi53b29jb21tZXJjZS1jYXJ0IC53b29jb21tZXJjZSAuY3Jvc3Mtc2VsbHMgLnByb2R1Y3RzIHtcbiAgbWFyZ2luLXRvcDogdmFyKC0taXQtc3BhY2luZy1jb250ZW50KTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMzY2cHgpIHtcbiAgLndvb2NvbW1lcmNlLWNhcnQgLndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2FydC1mb3JtIC53b29jb21tZXJjZS1jYXJ0LWZvcm1fX2NhcnQtaXRlbSB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiA1cmVtIDFmciBhdXRvIDEwcmVtIGF1dG87XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgfVxuICAud29vY29tbWVyY2UtY2FydCAud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jYXJ0LWZvcm0gLndvb2NvbW1lcmNlLWNhcnQtZm9ybV9fY2FydC1pdGVtIC5wcm9kdWN0LXRodW1ibmFpbCB7XG4gICAgZ3JpZC1jb2x1bW46IDEvMjtcbiAgICBncmlkLXJvdzogMS8yO1xuICB9XG4gIC53b29jb21tZXJjZS1jYXJ0IC53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNhcnQtZm9ybSAud29vY29tbWVyY2UtY2FydC1mb3JtX19jYXJ0LWl0ZW0gLnByb2R1Y3QtbmFtZSB7XG4gICAgZ3JpZC1jb2x1bW46IDIvMztcbiAgICBncmlkLXJvdzogMS8yO1xuICB9XG4gIC53b29jb21tZXJjZS1jYXJ0IC53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNhcnQtZm9ybSAud29vY29tbWVyY2UtY2FydC1mb3JtX19jYXJ0LWl0ZW0gLnByb2R1Y3Qtc3VidG90YWwge1xuICAgIGdyaWQtY29sdW1uOiA0LzU7XG4gICAgZ3JpZC1yb3c6IDEvMjtcbiAgfVxuICAud29vY29tbWVyY2UtY2FydCAud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jYXJ0LWZvcm0gLndvb2NvbW1lcmNlLWNhcnQtZm9ybV9fY2FydC1pdGVtIC5wcm9kdWN0LXF1YW50aXR5IHtcbiAgICBncmlkLWNvbHVtbjogMy80O1xuICAgIGdyaWQtcm93OiAxLzI7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG4gIC53b29jb21tZXJjZS1jYXJ0IC53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNhcnQtZm9ybSAud29vY29tbWVyY2UtY2FydC1mb3JtX19jYXJ0LWl0ZW0gLnByb2R1Y3QtcmVtb3ZlIHtcbiAgICBncmlkLWNvbHVtbjogNS82O1xuICAgIGdyaWQtcm93OiAxLzI7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gIH1cbiAgLndvb2NvbW1lcmNlLWNhcnQgLndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2FydC1mb3JtIC53b29jb21tZXJjZS1jYXJ0LWZvcm1fX2NhcnQtaXRlbSAucHJvZHVjdC1yZW1vdmUgYSB7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgd2lkdGg6IDEuNXJlbTtcbiAgICBoZWlnaHQ6IDEuNXJlbTtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB9XG4gIC53b29jb21tZXJjZS1jYXJ0IC53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNhcnQtZm9ybSAud29vY29tbWVyY2UtY2FydC1mb3JtX19jYXJ0LWl0ZW0gLnByb2R1Y3QtcmVtb3ZlIGE6YmVmb3JlIHtcbiAgICBjb250ZW50OiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnIHdpZHRoPScyNCcgaGVpZ2h0PScyNCcgdmlld0JveD0nMCAwIDI0IDI0JyBmaWxsPSdub25lJyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnJTNFJTNDcGF0aCBkPSdNMTEuOTg3NyAxMC41OTgzTDYuNjk0NzEgNS4zMDUyOUM2LjUwNjExIDUuMTIzMTMgNi4yNTM1MSA1LjAyMjM0IDUuOTkxMzEgNS4wMjQ2MUM1LjcyOTExIDUuMDI2ODkgNS40NzgzIDUuMTMyMDYgNS4yOTI4OSA1LjMxNzQ3QzUuMTA3NDkgNS41MDI4OCA1LjAwMjMyIDUuNzUzNjkgNS4wMDAwNCA2LjAxNTg5QzQuOTk3NzYgNi4yNzgwOCA1LjA5ODU1IDYuNTMwNjkgNS4yODA3MSA2LjcxOTI5TDEwLjU3MzcgMTIuMDEyM0w1LjI4MDcxIDE3LjMwNTNDNS4wOTg1NSAxNy40OTM5IDQuOTk3NzYgMTcuNzQ2NSA1LjAwMDA0IDE4LjAwODdDNS4wMDIzMiAxOC4yNzA5IDUuMTA3NDkgMTguNTIxNyA1LjI5Mjg5IDE4LjcwNzFDNS40NzgzIDE4Ljg5MjUgNS43MjkxMSAxOC45OTc3IDUuOTkxMzEgMTlDNi4yNTM1MSAxOS4wMDIyIDYuNTA2MTEgMTguOTAxNCA2LjY5NDcxIDE4LjcxOTNMMTEuOTg3NyAxMy40MjYzTDE3LjI4MDcgMTguNzE5M0MxNy40NjkzIDE4LjkwMTQgMTcuNzIxOSAxOS4wMDIyIDE3Ljk4NDEgMTlDMTguMjQ2MyAxOC45OTc3IDE4LjQ5NzEgMTguODkyNSAxOC42ODI1IDE4LjcwNzFDMTguODY3OSAxOC41MjE3IDE4Ljk3MzEgMTguMjcwOSAxOC45NzU0IDE4LjAwODdDMTguOTc3NyAxNy43NDY1IDE4Ljg3NjkgMTcuNDkzOSAxOC42OTQ3IDE3LjMwNTNMMTMuNDAxNyAxMi4wMTIzTDE4LjY5NDcgNi43MTkyOUMxOC43OTAyIDYuNjI3MDQgMTguODY2NCA2LjUxNjcgMTguOTE4OCA2LjM5NDY5QzE4Ljk3MTIgNi4yNzI2OSAxOC45OTg4IDYuMTQxNDcgMTkgNi4wMDg2OUMxOS4wMDExIDUuODc1OTEgMTguOTc1OCA1Ljc0NDIzIDE4LjkyNTUgNS42MjEzM0MxOC44NzUzIDUuNDk4NDQgMTguODAxIDUuMzg2NzkgMTguNzA3MSA1LjI5Mjg5QzE4LjYxMzIgNS4xOTkgMTguNTAxNiA1LjEyNDc1IDE4LjM3ODcgNS4wNzQ0N0MxOC4yNTU4IDUuMDI0MTkgMTguMTI0MSA0Ljk5ODg4IDE3Ljk5MTMgNS4wMDAwNEMxNy44NTg1IDUuMDAxMTkgMTcuNzI3MyA1LjAyODc4IDE3LjYwNTMgNS4wODExOUMxNy40ODMzIDUuMTMzNiAxNy4zNzMgNS4yMDk3OCAxNy4yODA3IDUuMzA1MjlMMTEuOTg3NyAxMC41OTgzWicgZmlsbD0nJTIzMjU0NDVBJy8lM0UlM0Mvc3ZnJTNFJTBBXCIpO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgfVxuICAud29vY29tbWVyY2UtY2FydCAud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jYXJ0LWZvcm0gLndvb2NvbW1lcmNlLWNhcnQtZm9ybV9fY2FydC1pdGVtIC5wcm9kdWN0LXJlbW92ZSBhIHNwYW4ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLndvb2NvbW1lcmNlLWNhcnQgLndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2FydC1mb3JtIC53b29jb21tZXJjZS1jYXJ0LWZvcm1fX2NhcnQtaXRlbSAucHJvZHVjdC1yZW1vdmUgYTpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIH1cbiAgLndvb2NvbW1lcmNlLWNhcnQgLndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2FydC1mb3JtIHRyOmxhc3QtY2hpbGQge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi10b3A6IHZhcigtLWl0LXNwYWNpbmctZGVmYXVsdCk7XG4gIH1cbiAgLndvb2NvbW1lcmNlLWNhcnQgLndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2FydC1mb3JtIHRyOmxhc3QtY2hpbGQgdGQge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYm9yZGVyOiAwO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGdhcDogdmFyKC0taXQtc3BhY2luZy1mb3JtKTtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIH1cbiAgLndvb2NvbW1lcmNlLWNhcnQgLndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2FydC1mb3JtIHRyOmxhc3QtY2hpbGQgLmNvdXBvbiB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciBhdXRvO1xuICAgIGdyaWQtY29sdW1uLWdhcDogdmFyKC0taXQtc3BhY2luZy1mb3JtKTtcbiAgfVxuICAud29vY29tbWVyY2UtY2FydCAud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jYXJ0LWZvcm0gdHI6bGFzdC1jaGlsZCAuY291cG9uIC5pbnB1dC10ZXh0IHtcbiAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICAgIG1hcmdpbjogMDtcbiAgfVxuICAud29vY29tbWVyY2UtY2FydCAud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jYXJ0LWZvcm0gdHI6bGFzdC1jaGlsZCAuY291cG9uIC5jb3Vwb24tZXJyb3Itbm90aWNlIHtcbiAgICBncmlkLWNvbHVtbjogMS8tMTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAud29vY29tbWVyY2UtY2FydCAud29vY29tbWVyY2Uge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIDFmcik7XG4gICAgZ3JpZC1jb2x1bW4tZ2FwOiB2YXIoLS1pdC1zcGFjaW5nLXNlY3Rpb24pO1xuICB9XG4gIC53b29jb21tZXJjZS1jYXJ0IC53b29jb21tZXJjZTpoYXMoLndjLWVtcHR5LWNhcnQtbWVzc2FnZSkge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICB9XG4gIC53b29jb21tZXJjZS1jYXJ0IC53b29jb21tZXJjZSAuY2FydC1jb2xsYXRlcmFscyB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxuICAud29vY29tbWVyY2UtY2FydCAud29vY29tbWVyY2UgLmNyb3NzLXNlbGxzIHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoLS1pdC1zcGFjaW5nLXNlY3Rpb24pO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzgzcHgpIHtcbiAgLndvb2NvbW1lcmNlLWNhcnQgLndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2FydC1mb3JtIHRyOmxhc3QtY2hpbGQgLmNvdXBvbiB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgYXV0bztcbiAgICBncmlkLXRlbXBsYXRlLXJvd3M6IDFmcjtcbiAgfVxuICAud29vY29tbWVyY2UtY2FydCAud29vY29tbWVyY2UgLmNhcnQtY29sbGF0ZXJhbHMgLmNhcnRfdG90YWxzIHtcbiAgICBtaW4td2lkdGg6IDIyLjVyZW07XG4gICAgdG9wOiAxMGR2aDtcbiAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgIG1heC1oZWlnaHQ6IDgwZHZoO1xuICB9XG59XG5cbi8qKlxuICogRG8gbm90IEB1c2UgZmlsZXMgd2l0aCBhY3R1YWwgc2NzcyBjb2RlIGluIHRoaXMgZmlsZSwgYXMgaXQgd2lsbCBjb21waWxlIGNzcyBjb2RlIHR3aWNlLlxuICogQXMgdGhpcyBmaWxlIGdvaW5nIHRvIGJlIGFuIHN0YW5kYWxvbmUgY3NzIGZpbGUuXG4gKi9cbi8qKlxuICogRG8gbm90IEB1c2UgZmlsZXMgd2l0aCBhY3R1YWwgc2NzcyBjb2RlIGluIHRoaXMgZmlsZSwgYXMgaXQgd2lsbCBjb21waWxlIGNzcyBjb2RlIHR3aWNlLlxuICogQXMgdGhpcyBmaWxlIGdvaW5nIHRvIGJlIGFuIHN0YW5kYWxvbmUgY3NzIGZpbGUuXG4gKi9cbi8qKlxuICogRG8gbm90IEB1c2UgZmlsZXMgd2l0aCBhY3R1YWwgc2NzcyBjb2RlIGluIHRoaXMgZmlsZSwgYXMgaXQgd2lsbCBjb21waWxlIGNzcyBjb2RlIHR3aWNlLlxuICogQXMgdGhpcyBmaWxlIGdvaW5nIHRvIGJlIGFuIHN0YW5kYWxvbmUgY3NzIGZpbGUuXG4gKi9cbi8qKlxuICogRG8gbm90IEB1c2UgZmlsZXMgd2l0aCBhY3R1YWwgc2NzcyBjb2RlIGluIHRoaXMgZmlsZSwgYXMgaXQgd2lsbCBjb21waWxlIGNzcyBjb2RlIHR3aWNlLlxuICogQXMgdGhpcyBmaWxlIGdvaW5nIHRvIGJlIGFuIHN0YW5kYWxvbmUgY3NzIGZpbGUuXG4gKi9cbi53b29jb21tZXJjZS1jaGVja291dCAuZW50cnktY29udGVudC0td29vY29tbWVyY2Uge1xuICBtYXJnaW4tdG9wOiB2YXIoLS1pdC1zcGFjaW5nLXNlY3Rpb24taGFsZik7XG59XG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIC5jaGVja291dF9jb3Vwb24ge1xuICBkaXNwbGF5OiBncmlkO1xuICBwYWRkaW5nOiB2YXIoLS1pdC1zcGFjaW5nLWZvcm0pO1xuICBnYXA6IHZhcigtLWl0LXNwYWNpbmctZm9ybSk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0taXQtY29sb3ItYm9yZGVyKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0taXQtYm9yZGVyLXJhZGl1cyk7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLWl0LXNwYWNpbmctY29udGVudCk7XG59XG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIC5jaGVja291dF9jb3Vwb24gKiB7XG4gIGZsb2F0OiBub25lO1xufVxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSAuY2hlY2tvdXQge1xuICB3aWR0aDogMTAwJTtcbiAgZGlzcGxheTogZ3JpZDtcbiAgYWxpZ24taXRlbXM6IHN0YXJ0O1xuICBjb2x1bW4tZ2FwOiB2YXIoLS1pdC1zcGFjaW5nLXNlY3Rpb24pO1xuICByb3ctZ2FwOiB2YXIoLS1pdC1zcGFjaW5nLWNvbnRlbnQpO1xufVxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSAuY2hlY2tvdXQgaDMge1xuICBmb250LXNpemU6IHZhcigtLWl0LWg1LWZvbnQtc2l6ZSk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1pdC1oNS1saW5lLWhlaWdodCk7XG59XG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIC5jaGVja291dCAud29vY29tbWVyY2UtTm90aWNlR3JvdXAtY2hlY2tvdXQgLndvb2NvbW1lcmNlLWVycm9yIHtcbiAgbWFyZ2luOiAwO1xufVxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSAuY2hlY2tvdXQgI2N1c3RvbWVyX2RldGFpbHMge1xuICBnYXA6IHZhcigtLWl0LXNwYWNpbmctZm9ybSk7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xufVxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSAuY2hlY2tvdXQgI2N1c3RvbWVyX2RldGFpbHMgPiAuY29sLTEge1xuICBnYXA6IHZhcigtLWl0LXNwYWNpbmctY29udGVudCk7XG59XG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIC5jaGVja291dCAjY3VzdG9tZXJfZGV0YWlscyA+IC5jb2wtMiB7XG4gIGdhcDogdmFyKC0taXQtc3BhY2luZy1mb3JtKTtcbn1cbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgLmNoZWNrb3V0ICNjdXN0b21lcl9kZXRhaWxzIC53b29jb21tZXJjZS1lbWFpbC1maWVsZF9fZGVzY3JpcHRpb24ge1xuICBtYXJnaW4tdG9wOiAwLjVyZW07XG59XG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIC5jaGVja291dCAjY3VzdG9tZXJfZGV0YWlscyAud29vY29tbWVyY2UtZW1haWwtZmllbGRfX2ZpZWxkLXdyYXBwZXIge1xuICBtYXJnaW4tdG9wOiB2YXIoLS1pdC1zcGFjaW5nLWZvcm0pO1xufVxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSAuY2hlY2tvdXQgI2N1c3RvbWVyX2RldGFpbHMgLndvb2NvbW1lcmNlLWVtYWlsLWZpZWxkX19maWVsZC13cmFwcGVyIC5kZXNjcmlwdGlvbiB7XG4gIGFsbDogdW5zZXQ7XG4gIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogMTAwJSAhaW1wb3J0YW50O1xuICBtYXJnaW4tdG9wOiAwLjVyZW0gIWltcG9ydGFudDtcbiAgZm9udC1zaXplOiB2YXIoLS1pdC1zaXplLXgtc21hbGwpO1xuICBjb2xvcjogdmFyKC0taXQtY29sb3ItcGxhY2Vob2xkZXIpO1xufVxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSAuY2hlY2tvdXQgI2N1c3RvbWVyX2RldGFpbHMgd2Mtb3JkZXItYXR0cmlidXRpb24taW5wdXRzIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgLmNoZWNrb3V0ICNjdXN0b21lcl9kZXRhaWxzIC53b29jb21tZXJjZS1iaWxsaW5nLWZpZWxkc19fZGVzY3JpcHRpb24ge1xuICBtYXJnaW4tdG9wOiAwLjVyZW07XG59XG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIC5jaGVja291dCAjY3VzdG9tZXJfZGV0YWlscyAud29vY29tbWVyY2UtYmlsbGluZy1maWVsZHNfX2ZpZWxkLXdyYXBwZXIge1xuICBtYXJnaW4tdG9wOiB2YXIoLS1pdC1zcGFjaW5nLWZvcm0pO1xufVxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSAuY2hlY2tvdXQgI2N1c3RvbWVyX2RldGFpbHMgLndvb2NvbW1lcmNlLXNoaXBwaW5nLWZpZWxkcyAjc2hpcC10by1kaWZmZXJlbnQtYWRkcmVzcyB7XG4gIGZsb2F0OiBub25lO1xuICBjbGVhcjogYm90aDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbn1cbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgLmNoZWNrb3V0ICNjdXN0b21lcl9kZXRhaWxzIC53b29jb21tZXJjZS1zaGlwcGluZy1maWVsZHMgI3NoaXAtdG8tZGlmZmVyZW50LWFkZHJlc3MgaW5wdXQge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMnB4KTtcbn1cbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgLmNoZWNrb3V0ICNjdXN0b21lcl9kZXRhaWxzIC53b29jb21tZXJjZS1zaGlwcGluZy1maWVsZHNfX3RpdGxlIHtcbiAgbWFyZ2luLXRvcDogdmFyKC0taXQtc3BhY2luZy1jb250ZW50KSAhaW1wb3J0YW50O1xufVxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSAuY2hlY2tvdXQgI2N1c3RvbWVyX2RldGFpbHMgLndvb2NvbW1lcmNlLXNoaXBwaW5nLWZpZWxkc19fZGVzY3JpcHRpb24ge1xuICBtYXJnaW4tdG9wOiAwLjVyZW07XG59XG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIC5jaGVja291dCAjY3VzdG9tZXJfZGV0YWlscyAud29vY29tbWVyY2Utc2hpcHBpbmctZmllbGRzX19maWVsZC13cmFwcGVyIHtcbiAgbWFyZ2luLXRvcDogdmFyKC0taXQtc3BhY2luZy1mb3JtKTtcbn1cbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgLmNoZWNrb3V0ICNjdXN0b21lcl9kZXRhaWxzIC53b29jb21tZXJjZS1hZGRpdGlvbmFsLWZpZWxkcyBoMyB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIC5jaGVja291dCAjY3VzdG9tZXJfZGV0YWlscyAud29vY29tbWVyY2UtYWRkaXRpb25hbC1maWVsZHNfX3RvZ2dsZS1sYWJlbCBpbnB1dCB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDRweCk7XG59XG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIC5jaGVja291dCAjY3VzdG9tZXJfZGV0YWlscyAud29vY29tbWVyY2UtYWRkaXRpb25hbC1maWVsZHNfX3RvZ2dsZS1sYWJlbCAub3B0aW9uYWwge1xuICBkaXNwbGF5OiBub25lO1xufVxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSAuY2hlY2tvdXQgI2N1c3RvbWVyX2RldGFpbHMgLndvb2NvbW1lcmNlLWFkZGl0aW9uYWwtZmllbGRzICNvcmRlcl9jb21tZW50c19maWVsZCB7XG4gIG1hcmdpbi10b3A6IHZhcigtLWl0LXNwYWNpbmctZm9ybSk7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIC5jaGVja291dCAjY3VzdG9tZXJfZGV0YWlscyAud29vY29tbWVyY2Utc2hpcHBpbmctb3B0aW9ucyB7XG4gIG1hcmdpbi10b3A6IHZhcigtLWl0LXNwYWNpbmctZGVmYXVsdCk7XG59XG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIC5jaGVja291dCAjY3VzdG9tZXJfZGV0YWlscyAud29vY29tbWVyY2Utc2hpcHBpbmctb3B0aW9ucyAud29vY29tbWVyY2Utc2hpcHBpbmctbWV0aG9kcyB7XG4gIG1hcmdpbi10b3A6IHZhcigtLWl0LXNwYWNpbmctZm9ybSk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWl0LWNvbG9yLWJvcmRlcik7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWl0LWJvcmRlci1yYWRpdXMpO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSAuY2hlY2tvdXQgI2N1c3RvbWVyX2RldGFpbHMgLndvb2NvbW1lcmNlLXNoaXBwaW5nLW9wdGlvbnMgLndvb2NvbW1lcmNlLXNoaXBwaW5nLW1ldGhvZHMgbGkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbjogMDtcbiAgZGlzcGxheTogZmxleDtcbiAgZ2FwOiAwLjVyZW07XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIHBhZGRpbmc6IHZhcigtLWl0LXNwYWNpbmctZm9ybSk7XG4gIGJhY2tncm91bmQ6IHZhcigtLWl0LWNvbG9yLXdoaXRlKTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWl0LWNvbG9yLWJvcmRlcik7XG59XG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIC5jaGVja291dCAjY3VzdG9tZXJfZGV0YWlscyAud29vY29tbWVyY2Utc2hpcHBpbmctb3B0aW9ucyAud29vY29tbWVyY2Utc2hpcHBpbmctbWV0aG9kcyBsaTpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbn1cbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgLmNoZWNrb3V0ICNjdXN0b21lcl9kZXRhaWxzIC53b29jb21tZXJjZS1zaGlwcGluZy1vcHRpb25zIC53b29jb21tZXJjZS1zaGlwcGluZy1tZXRob2RzIGxpOmhhcyhpbnB1dDpjaGVja2VkKSB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWl0LWNvbG9yLWJhY2tncm91bmQpO1xufVxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSAuY2hlY2tvdXQgI2N1c3RvbWVyX2RldGFpbHMgLndvb2NvbW1lcmNlLXNoaXBwaW5nLW9wdGlvbnMgLndvb2NvbW1lcmNlLXNoaXBwaW5nLW1ldGhvZHMgbGkgaW5wdXQge1xuICBtYXJnaW46IDA7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMC4zNzVyZW0pO1xufVxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSAuY2hlY2tvdXQgI2N1c3RvbWVyX2RldGFpbHMgLndvb2NvbW1lcmNlLXNoaXBwaW5nLW9wdGlvbnMgLndvb2NvbW1lcmNlLXNoaXBwaW5nLW1ldGhvZHMgbGkgbGFiZWwge1xuICBtYXJnaW46IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1zZWxmOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgZm9udC1zaXplOiB2YXIoLS1pdC1zaXplLXJlZ3VsYXIpO1xufVxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSAuY2hlY2tvdXQgI2N1c3RvbWVyX2RldGFpbHMgLndvb2NvbW1lcmNlLXNoaXBwaW5nLW9wdGlvbnMgLndvb2NvbW1lcmNlLXNoaXBwaW5nLW1ldGhvZHMgbGkgbGFiZWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBpbnNldDogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSAuY2hlY2tvdXQgPiAjb3JkZXJfcmV2aWV3X2hlYWRpbmcge1xuICBkaXNwbGF5OiBub25lO1xufVxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSAuY2hlY2tvdXQgLndvb2NvbW1lcmNlLW9yZGVyIHtcbiAgZGlzcGxheTogZ3JpZDtcbn1cbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgLmNoZWNrb3V0IC53b29jb21tZXJjZS1vcmRlciAuc2hvcF90YWJsZSB0ci53Yy1nemQtY2FydC1pdGVtLWhhcy10aHVtYm5haWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIC5jaGVja291dCAud29vY29tbWVyY2Utb3JkZXIgLnNob3BfdGFibGUgdHIud2MtZ3pkLWNhcnQtaXRlbS1oYXMtdGh1bWJuYWlsIC5wcm9kdWN0LXF1YW50aXR5IHtcbiAgd2lkdGg6IDEuMjVyZW07XG4gIGhlaWdodDogMS4yNXJlbTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1pdC1jb2xvci13aGl0ZSk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWl0LWNvbG9yLWJvcmRlcik7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMy4xMjVyZW07XG4gIHRvcDogLTAuNjI1cmVtO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGZvbnQtc2l6ZTogdmFyKC0taXQtc2l6ZS14eC1zbWFsbCk7XG59XG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIC5jaGVja291dCAud29vY29tbWVyY2Utb3JkZXIgLnNob3BfdGFibGUgLndjLWd6ZC1jYXJ0LWl0ZW0tbmFtZS13cmFwcGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSAuY2hlY2tvdXQgLndvb2NvbW1lcmNlLW9yZGVyIC5zaG9wX3RhYmxlIC53Yy1nemQtY2FydC1pdGVtLXRodW1ibmFpbCB7XG4gIG1hcmdpbjogMCAxLjVyZW0gMCAwO1xufVxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSAuY2hlY2tvdXQgLndvb2NvbW1lcmNlLW9yZGVyIC5zaG9wX3RhYmxlIC5sYWJlbF93aXRoX3ByaWNlIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG59XG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIC5jaGVja291dCAud29vY29tbWVyY2Utb3JkZXIgLnNob3BfdGFibGUgLmxhYmVsX3dpdGhfcHJpY2UgLnByaWNlIHtcbiAgZm9udC1zaXplOiB2YXIoLS1pdC1zaXplLXNtYWxsKTtcbn1cbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgLmNoZWNrb3V0IC53b29jb21tZXJjZS1vcmRlciAuc2hvcF90YWJsZSAubGFiZWxfd2l0aF9wcmljZSAucHJpY2UgZGVsIHtcbiAgb3BhY2l0eTogMC41O1xuICBmb250LXNpemU6IHZhcigtLWl0LXNpemUteC1zbWFsbCk7XG59XG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIC5jaGVja291dCAud29vY29tbWVyY2Utb3JkZXIgLnNob3BfdGFibGUgLmxhYmVsX3dpdGhfcHJpY2UgLnByaWNlIGlucyB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgLmNoZWNrb3V0IC53b29jb21tZXJjZS1jaGVja291dC1yZXZpZXctb3JkZXIgLndvb2NvbW1lcmNlLWNoZWNrb3V0LXBheW1lbnQjcGF5bWVudCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tdG9wOiB2YXIoLS1pdC1zcGFjaW5nLWZvcm0pO1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG59XG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIC5jaGVja291dCAud29vY29tbWVyY2UtY2hlY2tvdXQtcmV2aWV3LW9yZGVyIC53b29jb21tZXJjZS1jaGVja291dC1wYXltZW50I3BheW1lbnQgLnBheW1lbnRfbWV0aG9kcyB7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWl0LWNvbG9yLWJvcmRlcik7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWl0LWJvcmRlci1yYWRpdXMpO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSAuY2hlY2tvdXQgLndvb2NvbW1lcmNlLWNoZWNrb3V0LXJldmlldy1vcmRlciAud29vY29tbWVyY2UtY2hlY2tvdXQtcGF5bWVudCNwYXltZW50IC5wYXltZW50X21ldGhvZHM6YmVmb3JlLCAud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIC5jaGVja291dCAud29vY29tbWVyY2UtY2hlY2tvdXQtcmV2aWV3LW9yZGVyIC53b29jb21tZXJjZS1jaGVja291dC1wYXltZW50I3BheW1lbnQgLnBheW1lbnRfbWV0aG9kczphZnRlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIC5jaGVja291dCAud29vY29tbWVyY2UtY2hlY2tvdXQtcmV2aWV3LW9yZGVyIC53b29jb21tZXJjZS1jaGVja291dC1wYXltZW50I3BheW1lbnQgLnBheW1lbnRfbWV0aG9kcyBsaSB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgY29sdW1uLWdhcDogMC41cmVtO1xuICByb3ctZ2FwOiB2YXIoLS1pdC1zcGFjaW5nLWRlZmF1bHQtaGFsZik7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogYXV0byAxZnI7XG4gIHBhZGRpbmc6IHZhcigtLWl0LXNwYWNpbmctZm9ybSk7XG4gIGJhY2tncm91bmQ6IHZhcigtLWl0LWNvbG9yLXdoaXRlKTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWl0LWNvbG9yLWJvcmRlcik7XG59XG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIC5jaGVja291dCAud29vY29tbWVyY2UtY2hlY2tvdXQtcmV2aWV3LW9yZGVyIC53b29jb21tZXJjZS1jaGVja291dC1wYXltZW50I3BheW1lbnQgLnBheW1lbnRfbWV0aG9kcyBsaTpiZWZvcmUsIC53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgLmNoZWNrb3V0IC53b29jb21tZXJjZS1jaGVja291dC1yZXZpZXctb3JkZXIgLndvb2NvbW1lcmNlLWNoZWNrb3V0LXBheW1lbnQjcGF5bWVudCAucGF5bWVudF9tZXRob2RzIGxpOmFmdGVyIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSAuY2hlY2tvdXQgLndvb2NvbW1lcmNlLWNoZWNrb3V0LXJldmlldy1vcmRlciAud29vY29tbWVyY2UtY2hlY2tvdXQtcGF5bWVudCNwYXltZW50IC5wYXltZW50X21ldGhvZHMgbGk6bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1ib3R0b206IDA7XG59XG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIC5jaGVja291dCAud29vY29tbWVyY2UtY2hlY2tvdXQtcmV2aWV3LW9yZGVyIC53b29jb21tZXJjZS1jaGVja291dC1wYXltZW50I3BheW1lbnQgLnBheW1lbnRfbWV0aG9kcyBsaTpoYXMoaW5wdXQ6Y2hlY2tlZCkge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1pdC1jb2xvci1iYWNrZ3JvdW5kKTtcbn1cbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgLmNoZWNrb3V0IC53b29jb21tZXJjZS1jaGVja291dC1yZXZpZXctb3JkZXIgLndvb2NvbW1lcmNlLWNoZWNrb3V0LXBheW1lbnQjcGF5bWVudCAucGF5bWVudF9tZXRob2RzIGxpIGlucHV0IHtcbiAgbWFyZ2luOiAwO1xufVxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSAuY2hlY2tvdXQgLndvb2NvbW1lcmNlLWNoZWNrb3V0LXJldmlldy1vcmRlciAud29vY29tbWVyY2UtY2hlY2tvdXQtcGF5bWVudCNwYXltZW50IC5wYXltZW50X21ldGhvZHMgbGkgbGFiZWwge1xuICBmb250LXNpemU6IHZhcigtLWl0LXNpemUtcmVndWxhcik7XG4gIG1hcmdpbjogMDtcbn1cbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgLmNoZWNrb3V0IC53b29jb21tZXJjZS1jaGVja291dC1yZXZpZXctb3JkZXIgLndvb2NvbW1lcmNlLWNoZWNrb3V0LXBheW1lbnQjcGF5bWVudCAucGF5bWVudF9tZXRob2RzIGxpIGxhYmVsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgaW5zZXQ6IDA7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgLmNoZWNrb3V0IC53b29jb21tZXJjZS1jaGVja291dC1yZXZpZXctb3JkZXIgLndvb2NvbW1lcmNlLWNoZWNrb3V0LXBheW1lbnQjcGF5bWVudCAucGF5bWVudF9tZXRob2RzIGxpIC5wYXltZW50X2JveCB7XG4gIGdyaWQtY29sdW1uOiAxLzM7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIGNvbG9yOiB2YXIoLS1pdC1jb2xvci10ZXh0KTtcbiAgZm9udC1zaXplOiB2YXIoLS1pdC1zaXplLXNtYWxsKTtcbn1cbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgLmNoZWNrb3V0IC53b29jb21tZXJjZS1jaGVja291dC1yZXZpZXctb3JkZXIgLndvb2NvbW1lcmNlLWNoZWNrb3V0LXBheW1lbnQjcGF5bWVudCAucGF5bWVudF9tZXRob2RzIGxpIC5wYXltZW50X2JveDpiZWZvcmUge1xuICBkaXNwbGF5OiBub25lO1xufVxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSAuY2hlY2tvdXQgLndvb2NvbW1lcmNlLWNoZWNrb3V0LXJldmlldy1vcmRlciAud29vY29tbWVyY2UtY2hlY2tvdXQtcGF5bWVudCNwYXltZW50IC5wbGFjZS1vcmRlciB7XG4gIG1hcmdpbi10b3A6IHZhcigtLWl0LXNwYWNpbmctZm9ybSk7XG4gIHBhZGRpbmc6IDA7XG59XG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIC5jaGVja291dCAud29vY29tbWVyY2UtY2hlY2tvdXQtcmV2aWV3LW9yZGVyIC53Yy1nemQtY2hlY2tib3gtcGxhY2Vob2xkZXIge1xuICBtYXJnaW4tdG9wOiB2YXIoLS1pdC1zcGFjaW5nLWZvcm0pO1xufVxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSAuY2hlY2tvdXQgLndvb2NvbW1lcmNlLWNoZWNrb3V0LXJldmlldy1vcmRlciAud2MtZ3pkLWNoZWNrYm94LXBsYWNlaG9sZGVyICo6aGFzKD4gaW5wdXRbdHlwZT1jaGVja2JveF0pIHtcbiAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbn1cbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgLmNoZWNrb3V0IC53b29jb21tZXJjZS1jaGVja291dC1yZXZpZXctb3JkZXIgLndjLWd6ZC1jaGVja2JveC1wbGFjZWhvbGRlciAqOmhhcyg+IGlucHV0W3R5cGU9Y2hlY2tib3hdKSBpbnB1dCB7XG4gIG1hcmdpbjogMDtcbiAgZmxleC1zaHJpbms6IDA7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgycHgpO1xufVxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSAuY2hlY2tvdXQgLndvb2NvbW1lcmNlLWNoZWNrb3V0LXJldmlldy1vcmRlciAud2MtZ3pkLWNoZWNrYm94LXBsYWNlaG9sZGVyIC5jaGVja291dC1pbmxpbmUtZXJyb3ItbWVzc2FnZSB7XG4gIG1hcmdpbi10b3A6IDAuNXJlbTtcbn1cbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgLmNoZWNrb3V0IC53b29jb21tZXJjZS1jaGVja291dC1yZXZpZXctb3JkZXIgLndvb2NvbW1lcmNlLWNoZWNrb3V0LW1haW4tYnV0dG9ucyB7XG4gIG1hcmdpbi10b3A6IHZhcigtLWl0LXNwYWNpbmctZm9ybSk7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGdhcDogdmFyKC0taXQtc3BhY2luZy1kZWZhdWx0KTtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIC5jaGVja291dCAud29vY29tbWVyY2UtY2hlY2tvdXQtcmV2aWV3LW9yZGVyIC53b29jb21tZXJjZS1jaGVja291dC1tYWluLWJ1dHRvbnMgLmJhY2stdG8tY2FydDpob3ZlcjphZnRlciB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZykgdHJhbnNsYXRlWCgwLjM3NXJlbSk7XG59XG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIC5jaGVja291dCAud29vY29tbWVyY2UtY2hlY2tvdXQtcmV2aWV3LW9yZGVyIC53b29jb21tZXJjZS1jaGVja291dC1tYWluLWJ1dHRvbnMgLmJhY2stdG8tY2FydDphZnRlciB7XG4gIG9yZGVyOiAtMTtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbn1cbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgLmNoZWNrb3V0IC53b29jb21tZXJjZS1jaGVja291dC1yZXZpZXctb3JkZXIgYnV0dG9uI3BsYWNlX29yZGVyIHtcbiAgZmxvYXQ6IG5vbmU7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzgzcHgpIHtcbiAgLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSAuY2hlY2tvdXRfY291cG9uIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciBhdXRvO1xuICAgIHBhZGRpbmc6IHZhcigtLWl0LXNwYWNpbmctZGVmYXVsdCk7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjNweCkgYW5kIChtaW4td2lkdGg6IDU1N3B4KSB7XG4gIC53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgLmNoZWNrb3V0IC53b29jb21tZXJjZS1vcmRlciAuc2hvcF90YWJsZSB0ci53Yy1nemQtY2FydC1pdGVtLWhhcy10aHVtYm5haWwgLnByb2R1Y3QtcXVhbnRpdHkge1xuICAgIGxlZnQ6IGNhbGMoMTUlIC0gMC42MjVyZW0pO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMzY1cHgpIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSBmb3JtIC5mb3JtLXJvdzpoYXMoKyBbc3R5bGUqPVwiZGlzcGxheTogbm9uZVwiXSkge1xuICAgIGdyaWQtY29sdW1uOiBzcGFuIDE7XG4gIH1cbiAgLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSBmb3JtIC5mb3JtLXJvdy1maXJzdCwgLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSBmb3JtIC5mb3JtLXJvdy1sYXN0IHtcbiAgICBncmlkLWNvbHVtbjogMTtcbiAgfVxuICAud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIGZvcm0gZGl2Omhhcyg+IC5mb3JtLXJvdyk6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSAuY2hlY2tvdXQge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIDFmcik7XG4gIH1cbiAgLndvb2NvbW1lcmNlLWNoZWNrb3V0IC53b29jb21tZXJjZSAuY2hlY2tvdXQgPiAqIHtcbiAgICBncmlkLWNvbHVtbjogMS8zO1xuICB9XG4gIC53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgLmNoZWNrb3V0IC53b29jb21tZXJjZS1Ob3RpY2VHcm91cC1jaGVja291dCB7XG4gICAgZ3JpZC1jb2x1bW46IDEvNDtcbiAgfVxuICAud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIC5jaGVja291dCAud29vY29tbWVyY2Utb3JkZXIge1xuICAgIHRvcDogMTBkdmg7XG4gICAgcG9zaXRpb246IHN0aWNreTtcbiAgICBncmlkLWNvbHVtbjogMy80O1xuICAgIG1heC1oZWlnaHQ6IDgwZHZoO1xuICAgIG1pbi13aWR0aDogMjIuNXJlbTtcbiAgICBnYXA6IHZhcigtLWl0LXNwYWNpbmctZGVmYXVsdCk7XG4gICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvIDFmcjtcbiAgfVxuICAud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIC5jaGVja291dCAud29vY29tbWVyY2Utb3JkZXIgLnNob3BfdGFibGUgLmxhYmVsX3dpdGhfcHJpY2Uge1xuICAgIGdhcDogMC4yNXJlbTtcbiAgICBmb250LXNpemU6IHZhcigtLWl0LXNpemUtc21hbGwpO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTM2NnB4KSB7XG4gIC53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UgLmNoZWNrb3V0IC53b29jb21tZXJjZS1vcmRlciB7XG4gICAgbWluLXdpZHRoOiAyNXJlbTtcbiAgfVxuICAud29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlIC5jaGVja291dCAud29vY29tbWVyY2Utb3JkZXIgLnNob3BfdGFibGUgLmxhYmVsX3dpdGhfcHJpY2Uge1xuICAgIGdhcDogMC41cmVtO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0taXQtc2l6ZS1tZWRpdW0pO1xuICB9XG59XG5cbi8qKlxuICogRG8gbm90IEB1c2UgZmlsZXMgd2l0aCBhY3R1YWwgc2NzcyBjb2RlIGluIHRoaXMgZmlsZSwgYXMgaXQgd2lsbCBjb21waWxlIGNzcyBjb2RlIHR3aWNlLlxuICogQXMgdGhpcyBmaWxlIGdvaW5nIHRvIGJlIGFuIHN0YW5kYWxvbmUgY3NzIGZpbGUuXG4gKi9cbi8qKlxuICogRG8gbm90IEB1c2UgZmlsZXMgd2l0aCBhY3R1YWwgc2NzcyBjb2RlIGluIHRoaXMgZmlsZSwgYXMgaXQgd2lsbCBjb21waWxlIGNzcyBjb2RlIHR3aWNlLlxuICogQXMgdGhpcyBmaWxlIGdvaW5nIHRvIGJlIGFuIHN0YW5kYWxvbmUgY3NzIGZpbGUuXG4gKi9cbi8qKlxuICogRG8gbm90IEB1c2UgZmlsZXMgd2l0aCBhY3R1YWwgc2NzcyBjb2RlIGluIHRoaXMgZmlsZSwgYXMgaXQgd2lsbCBjb21waWxlIGNzcyBjb2RlIHR3aWNlLlxuICogQXMgdGhpcyBmaWxlIGdvaW5nIHRvIGJlIGFuIHN0YW5kYWxvbmUgY3NzIGZpbGUuXG4gKi9cbi53b29jb21tZXJjZS1hY2NvdW50Lndvb2NvbW1lcmNlLWxvc3QtcGFzc3dvcmQgLmVudHJ5LXRpdGxlIHtcbiAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG59XG4ud29vY29tbWVyY2UtYWNjb3VudC53b29jb21tZXJjZS1sb3N0LXBhc3N3b3JkIGZvcm0ge1xuICBkaXNwbGF5OiBncmlkO1xuICBnYXA6IHZhcigtLWl0LXNwYWNpbmctZGVmYXVsdCk7XG59XG4ud29vY29tbWVyY2UtYWNjb3VudC53b29jb21tZXJjZS1sb3N0LXBhc3N3b3JkIGZvcm06aGFzKCN1c2VyX2xvZ2luKSB7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xufVxuLndvb2NvbW1lcmNlLWFjY291bnQgZGl2Lndvb2NvbW1lcmNlIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgY29sdW1uLWdhcDogdmFyKC0taXQtc3BhY2luZy1zZWN0aW9uKTtcbiAgcm93LWdhcDogdmFyKC0taXQtc3BhY2luZy1zZWN0aW9uLWhhbGYpO1xufVxuLndvb2NvbW1lcmNlLWFjY291bnQgZGl2Lndvb2NvbW1lcmNlOjpiZWZvcmUsIC53b29jb21tZXJjZS1hY2NvdW50IGRpdi53b29jb21tZXJjZTo6YWZ0ZXIge1xuICBjb250ZW50OiBub25lO1xufVxuLndvb2NvbW1lcmNlLWFjY291bnQgZGl2Lndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1NeUFjY291bnQtbmF2aWdhdGlvbi10cmlnZ2VyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi53b29jb21tZXJjZS1hY2NvdW50IGRpdi53b29jb21tZXJjZSAud29vY29tbWVyY2UtTXlBY2NvdW50LW5hdmlnYXRpb24ge1xuICB3aWR0aDogMTAwJTtcbn1cbi53b29jb21tZXJjZS1hY2NvdW50IGRpdi53b29jb21tZXJjZSAud29vY29tbWVyY2UtTXlBY2NvdW50LW5hdmlnYXRpb24gdWwge1xuICBtYXJnaW46IDA7XG59XG4ud29vY29tbWVyY2UtYWNjb3VudCBkaXYud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLU15QWNjb3VudC1uYXZpZ2F0aW9uIGxpIHtcbiAgbWFyZ2luOiAwO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0taXQtY29sb3ItYm9yZGVyKTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciB2YXIoLS1pdC10cmFuc2l0aW9uKTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLndvb2NvbW1lcmNlLWFjY291bnQgZGl2Lndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1NeUFjY291bnQtbmF2aWdhdGlvbiBsaTpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1pdC1jb2xvci1ib3JkZXIpO1xufVxuLndvb2NvbW1lcmNlLWFjY291bnQgZGl2Lndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1NeUFjY291bnQtbmF2aWdhdGlvbiBsaS5pcy1hY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pdC1jb2xvci1iYWNrZ3JvdW5kKTtcbn1cbkBtZWRpYSAoaG92ZXI6IGhvdmVyKSB7XG4gIC53b29jb21tZXJjZS1hY2NvdW50IGRpdi53b29jb21tZXJjZSAud29vY29tbWVyY2UtTXlBY2NvdW50LW5hdmlnYXRpb24gbGk6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWl0LWNvbG9yLWJhY2tncm91bmQpO1xuICB9XG59XG4ud29vY29tbWVyY2UtYWNjb3VudCBkaXYud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLU15QWNjb3VudC1uYXZpZ2F0aW9uIGxpOjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDEuNXJlbTtcbiAgaGVpZ2h0OiAxLjVyZW07XG4gIHRvcDogNTAlO1xuICByaWdodDogMC44NzVyZW07XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyB2aWV3Qm94PScwIDAgMjQgMjQnIGZpbGw9J25vbmUnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyclM0UlM0NyZWN0IHg9JzguNTk5NjEnIHk9JzYuODk1NTEnIHdpZHRoPScxLjI2NjY0JyBoZWlnaHQ9JzguMzUxMDMnIHJ4PScwLjYzMzMxOScgdHJhbnNmb3JtPSdyb3RhdGUoLTQ1IDguNTk5NjEgNi44OTU1MSknIGZpbGw9JyUyMzI1NDQ1QScvJTNFJTNDcmVjdCB3aWR0aD0nMS4yNjY2NCcgaGVpZ2h0PSc4LjM1MTAzJyByeD0nMC42MzMzMTknIHRyYW5zZm9ybT0nbWF0cml4KC0wLjcwNzEwNyAtMC43MDcxMDcgLTAuNzA3MTA3IDAuNzA3MTA3IDE1LjQwMDQgMTIuMDk0NyknIGZpbGw9JyUyMzI1NDQ1QScvJTNFJTNDL3N2ZyUzRSUwQVwiKTtcbn1cbi53b29jb21tZXJjZS1hY2NvdW50IGRpdi53b29jb21tZXJjZSAud29vY29tbWVyY2UtTXlBY2NvdW50LW5hdmlnYXRpb24gbGk6bGFzdC1jaGlsZDo6YWZ0ZXIge1xuICBjb250ZW50OiBub25lO1xufVxuLndvb2NvbW1lcmNlLWFjY291bnQgZGl2Lndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1NeUFjY291bnQtbmF2aWdhdGlvbiBhIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjb2xvcjogdmFyKC0taXQtY29sb3ItdGV4dCk7XG4gIHBhZGRpbmc6IDAuODc1cmVtO1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi53b29jb21tZXJjZS1hY2NvdW50IGRpdi53b29jb21tZXJjZSAud29vY29tbWVyY2UtTXlBY2NvdW50LWNvbnRlbnQge1xuICB3aWR0aDogMTAwJTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZ2FwOiB2YXIoLS1pdC1zcGFjaW5nLWRlZmF1bHQpO1xufVxuLndvb2NvbW1lcmNlLWFjY291bnQgZGl2Lndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1NeUFjY291bnQtY29udGVudCBzZWN0aW9uIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi53b29jb21tZXJjZS1hY2NvdW50IGRpdi53b29jb21tZXJjZSAud29vY29tbWVyY2UtTXlBY2NvdW50LWNvbnRlbnQgaDIge1xuICBmb250LXNpemU6IHZhcigtLWl0LWg1LWZvbnQtc2l6ZSk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1pdC1oNS1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG59XG4ud29vY29tbWVyY2UtYWNjb3VudCBkaXYud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLU15QWNjb3VudC1jb250ZW50IC5teV9hY2NvdW50X29yZGVycyB7XG4gIGZvbnQtc2l6ZTogdmFyKC0taXQtc2l6ZS1zbWFsbCk7XG59XG4ud29vY29tbWVyY2UtYWNjb3VudCBkaXYud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLXBhZ2luYXRpb24ge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuLndvb2NvbW1lcmNlLWFjY291bnQgZGl2Lndvb2NvbW1lcmNlID4gLnUtY29sdW1ucyB7XG4gIGRpc3BsYXk6IGdyaWQ7XG59XG4ud29vY29tbWVyY2UtYWNjb3VudCAuaXQtY29udGFpbmVyLS1uYXJyb3cgZGl2Lndvb2NvbW1lcmNlIHtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gIGdhcDogdmFyKC0taXQtc3BhY2luZy1kZWZhdWx0KTtcbn1cbi53b29jb21tZXJjZS1hY2NvdW50IC5pdC1jb250YWluZXItLW5hcnJvdyBkaXYud29vY29tbWVyY2UgLmVudHJ5LXRpdGxlICsgLmVudHJ5LWNvbnRlbnQtLXdvb2NvbW1lcmNlIHtcbiAgbWFyZ2luLXRvcDogdmFyKC0taXQtc3BhY2luZy1kZWZhdWx0KTtcbn1cbi53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZS1BZGRyZXNzLXRpdGxlIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG59XG4ud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UtQWRkcmVzcy10aXRsZSAuZWRpdCB7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgZm9udC1zaXplOiB2YXIoLS1pdC1zaXplLXgtc21hbGwpO1xuICB0ZXh0LXRyYW5zZm9ybTogdW5zZXQ7XG4gIGxldHRlci1zcGFjaW5nOiAwLjAxZW07XG4gIG1hcmdpbi10b3A6IDAuMjVyZW07XG4gIGZsb2F0OiBub25lO1xufVxuLndvb2NvbW1lcmNlLWFjY291bnQgLmVkaXQtYWNjb3VudCB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdhcDogdmFyKC0taXQtc3BhY2luZy1kZWZhdWx0KTtcbn1cbi53b29jb21tZXJjZS1hY2NvdW50IC5lZGl0LWFjY291bnQgPiAqIHtcbiAgZ3JpZC1jb2x1bW46IHNwYW4gMjtcbn1cbi53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZS1hZGRyZXNzLWZpZWxkcyBwOmhhcyhidXR0b25bdHlwZT1zdWJtaXRdKSB7XG4gIG1hcmdpbi10b3A6IHZhcigtLWl0LXNwYWNpbmctZGVmYXVsdCk7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIC53b29jb21tZXJjZS1hY2NvdW50IGRpdi53b29jb21tZXJjZSB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gIH1cbiAgLndvb2NvbW1lcmNlLWFjY291bnQud29vY29tbWVyY2UtbG9zdC1wYXNzd29yZCB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTtcbiAgfVxuICAud29vY29tbWVyY2UtYWNjb3VudCAuaXQtY29udGFpbmVyLS13aWRlIGRpdi53b29jb21tZXJjZSB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTtcbiAgfVxuICAud29vY29tbWVyY2UtYWNjb3VudCAuaXQtY29udGFpbmVyLS13aWRlIGRpdi53b29jb21tZXJjZSAud29vY29tbWVyY2UtTXlBY2NvdW50LWNvbnRlbnQge1xuICAgIGdyaWQtY29sdW1uOiBzcGFuIDI7XG4gIH1cbiAgLndvb2NvbW1lcmNlLWFjY291bnQgLml0LWNvbnRhaW5lci0td2lkZSBkaXYud29vY29tbWVyY2UgPiAud29vY29tbWVyY2Utbm90aWNlcy13cmFwcGVyIHtcbiAgICBncmlkLWNvbHVtbjogc3BhbiAzO1xuICB9XG4gIC53b29jb21tZXJjZS1hY2NvdW50IC5pdC1jb250YWluZXItLXdpZGUgZGl2Lndvb2NvbW1lcmNlID4gLnUtY29sdW1ucyB7XG4gICAgZ3JpZC1jb2x1bW46IHNwYW4gMztcbiAgfVxuICAud29vY29tbWVyY2UtYWNjb3VudCAuZWRpdC1hY2NvdW50IHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDIzcHgpIGFuZCAobWluLXdpZHRoOiAwcHgpIHtcbiAgLndvb2NvbW1lcmNlLWFjY291bnQgZGl2Lndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1NeUFjY291bnQtbmF2aWdhdGlvbi10cmlnZ2VyIHtcbiAgICBhbGw6IHVuc2V0O1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6IDk7XG4gICAgdG9wOiBjYWxjKHZhcigtLWl0LWhlYWRlci1oZWlnaHQpICsgNy41cmVtKTtcbiAgICBwYWRkaW5nOiAwLjVyZW07XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHZhcigtLWl0LWJvcmRlci1yYWRpdXMpO1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiB2YXIoLS1pdC1ib3JkZXItcmFkaXVzKTtcbiAgICBib3JkZXItd2lkdGg6IDFweCAxcHggMXB4IDA7XG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWl0LWNvbG9yLWJvcmRlcik7XG4gICAgYmFja2dyb3VuZDogdmFyKC0taXQtY29sb3Itd2hpdGUpO1xuICAgIHRyYW5zaXRpb246IGxlZnQgdmFyKC0taXQtdHJhbnNpdGlvbik7XG4gIH1cbiAgLndvb2NvbW1lcmNlLWFjY291bnQgZGl2Lndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1NeUFjY291bnQtbmF2aWdhdGlvbi10cmlnZ2VyLmlzLWFjdGl2ZSB7XG4gICAgbGVmdDogY2FsYyg4N3Z3IC0gMXB4KTtcbiAgfVxuICAud29vY29tbWVyY2UtYWNjb3VudCBkaXYud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLU15QWNjb3VudC1uYXZpZ2F0aW9uLXRyaWdnZXIuaXMtYWN0aXZlIC5vcGVuIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC53b29jb21tZXJjZS1hY2NvdW50IGRpdi53b29jb21tZXJjZSAud29vY29tbWVyY2UtTXlBY2NvdW50LW5hdmlnYXRpb24tdHJpZ2dlci5pcy1hY3RpdmUgLmNsb3NlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICAud29vY29tbWVyY2UtYWNjb3VudCBkaXYud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLU15QWNjb3VudC1uYXZpZ2F0aW9uLXRyaWdnZXIgc3ZnIHtcbiAgICB3aWR0aDogMS4yNXJlbTtcbiAgfVxuICAud29vY29tbWVyY2UtYWNjb3VudCBkaXYud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLU15QWNjb3VudC1uYXZpZ2F0aW9uLXRyaWdnZXIgLmNsb3NlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC53b29jb21tZXJjZS1hY2NvdW50IGRpdi53b29jb21tZXJjZSAud29vY29tbWVyY2UtTXlBY2NvdW50LW5hdmlnYXRpb24ge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICBsZWZ0OiAtODd2dztcbiAgICB3aWR0aDogODd2dztcbiAgICB0b3A6IGNhbGModmFyKC0taXQtaGVhZGVyLWhlaWdodCkgKyB2YXIoLS13cC1hZG1pbi0tYWRtaW4tYmFyLS1oZWlnaHQsIDApICsgMnJlbSk7XG4gICAgYmFja2dyb3VuZDogdmFyKC0taXQtY29sb3Itd2hpdGUpO1xuICAgIHotaW5kZXg6IDg7XG4gICAgdHJhbnNpdGlvbjogbGVmdCB2YXIoLS1pdC10cmFuc2l0aW9uKTtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogdmFyKC0taXQtYm9yZGVyLXJhZGl1cyk7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHZhcigtLWl0LWJvcmRlci1yYWRpdXMpO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWl0LWNvbG9yLWJvcmRlcik7XG4gICAgbWF4LWhlaWdodDogY2FsYyg5MGR2aCAtIHZhcigtLWl0LWhlYWRlci1oZWlnaHQpIC0gdmFyKC0td3AtYWRtaW4tLWFkbWluLWJhci0taGVpZ2h0LCAwKSAtIDJyZW0pO1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICB9XG4gIC53b29jb21tZXJjZS1hY2NvdW50IGRpdi53b29jb21tZXJjZSAud29vY29tbWVyY2UtTXlBY2NvdW50LW5hdmlnYXRpb24uaXMtYWN0aXZlIHtcbiAgICBsZWZ0OiAwO1xuICB9XG4gIC53b29jb21tZXJjZS1hY2NvdW50IGRpdi53b29jb21tZXJjZSAud29vY29tbWVyY2UtTXlBY2NvdW50LW5hdmlnYXRpb24gbGk6Zmlyc3QtY2hpbGQge1xuICAgIGJvcmRlci10b3A6IDA7XG4gIH1cbiAgLndvb2NvbW1lcmNlLWFjY291bnQgZGl2Lndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1NeUFjY291bnQtbmF2aWdhdGlvbiBsaTpsYXN0LWNoaWxkIHtcbiAgICBib3JkZXItYm90dG9tOiAwO1xuICB9XG59XG5cbi8qKlxuICogRG8gbm90IEB1c2UgZmlsZXMgd2l0aCBhY3R1YWwgc2NzcyBjb2RlIGluIHRoaXMgZmlsZSwgYXMgaXQgd2lsbCBjb21waWxlIGNzcyBjb2RlIHR3aWNlLlxuICogQXMgdGhpcyBmaWxlIGdvaW5nIHRvIGJlIGFuIHN0YW5kYWxvbmUgY3NzIGZpbGUuXG4gKi9cbi8qKlxuICogRG8gbm90IEB1c2UgZmlsZXMgd2l0aCBhY3R1YWwgc2NzcyBjb2RlIGluIHRoaXMgZmlsZSwgYXMgaXQgd2lsbCBjb21waWxlIGNzcyBjb2RlIHR3aWNlLlxuICogQXMgdGhpcyBmaWxlIGdvaW5nIHRvIGJlIGFuIHN0YW5kYWxvbmUgY3NzIGZpbGUuXG4gKi9cbi53b29jb21tZXJjZSAjY3VzdG9tZXJfbG9naW4ge1xuICBjb2x1bW4tZ2FwOiB2YXIoLS1pdC1zcGFjaW5nLXNlY3Rpb24pO1xuICByb3ctZ2FwOiB2YXIoLS1pdC1zcGFjaW5nLXNlY3Rpb24taGFsZik7XG59XG4ud29vY29tbWVyY2UgZm9ybS5sb2dpbiwgLndvb2NvbW1lcmNlIGZvcm0ucmVnaXN0ZXIge1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGJvcmRlcjogMDtcbn1cbi53b29jb21tZXJjZSBmb3JtLmxvZ2luIC5mb3JtLXJvdyxcbi53b29jb21tZXJjZSBmb3JtLmxvZ2luIHAsIC53b29jb21tZXJjZSBmb3JtLnJlZ2lzdGVyIC5mb3JtLXJvdyxcbi53b29jb21tZXJjZSBmb3JtLnJlZ2lzdGVyIHAge1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1pdC1zcGFjaW5nLWZvcm0pO1xufVxuLndvb2NvbW1lcmNlIGZvcm0ubG9naW4gLmZvcm0tcm93OmhhcyhidXR0b25bdHlwZT1zdWJtaXRdKSxcbi53b29jb21tZXJjZSBmb3JtLmxvZ2luIHA6aGFzKGJ1dHRvblt0eXBlPXN1Ym1pdF0pLCAud29vY29tbWVyY2UgZm9ybS5yZWdpc3RlciAuZm9ybS1yb3c6aGFzKGJ1dHRvblt0eXBlPXN1Ym1pdF0pLFxuLndvb2NvbW1lcmNlIGZvcm0ucmVnaXN0ZXIgcDpoYXMoYnV0dG9uW3R5cGU9c3VibWl0XSkge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7XG4gIGdhcDogdmFyKC0taXQtc3BhY2luZy1jb2x1bW5zKTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3ODNweCkge1xuICAud29vY29tbWVyY2UgZm9ybS5sb2dpbiAuZm9ybS1yb3c6aGFzKGJ1dHRvblt0eXBlPXN1Ym1pdF0pLFxuICAud29vY29tbWVyY2UgZm9ybS5sb2dpbiBwOmhhcyhidXR0b25bdHlwZT1zdWJtaXRdKSwgLndvb2NvbW1lcmNlIGZvcm0ucmVnaXN0ZXIgLmZvcm0tcm93OmhhcyhidXR0b25bdHlwZT1zdWJtaXRdKSxcbiAgLndvb2NvbW1lcmNlIGZvcm0ucmVnaXN0ZXIgcDpoYXMoYnV0dG9uW3R5cGU9c3VibWl0XSkge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gIH1cbn1cbi53b29jb21tZXJjZSBmb3JtLmxvZ2luIC5mb3JtLXJvdzpsYXN0LWNoaWxkLFxuLndvb2NvbW1lcmNlIGZvcm0ubG9naW4gcDpsYXN0LWNoaWxkLCAud29vY29tbWVyY2UgZm9ybS5yZWdpc3RlciAuZm9ybS1yb3c6bGFzdC1jaGlsZCxcbi53b29jb21tZXJjZSBmb3JtLnJlZ2lzdGVyIHA6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG4ud29vY29tbWVyY2UgZm9ybS5sb2dpbiAubG9zdF9wYXNzd29yZCBhLCAud29vY29tbWVyY2UgZm9ybS5yZWdpc3RlciAubG9zdF9wYXNzd29yZCBhIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbi53b29jb21tZXJjZSBmb3JtLmxvZ2luIC5sb3N0X3Bhc3N3b3JkIGE6YmVmb3JlLCAud29vY29tbWVyY2UgZm9ybS5yZWdpc3RlciAubG9zdF9wYXNzd29yZCBhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAxcHg7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAwO1xuICBvcGFjaXR5OiAwO1xuICBoZWlnaHQ6IDFweDtcbiAgYmFja2dyb3VuZDogY3VycmVudENvbG9yO1xuICB0cmFuc2l0aW9uOiB3aWR0aCB2YXIoLS1pdC10cmFuc2l0aW9uKSwgb3BhY2l0eSAwLjFzIGxpbmVhciAwLjJzO1xufVxuLndvb2NvbW1lcmNlIGZvcm0ubG9naW4gLmxvc3RfcGFzc3dvcmQgYTpob3ZlciwgLndvb2NvbW1lcmNlIGZvcm0ucmVnaXN0ZXIgLmxvc3RfcGFzc3dvcmQgYTpob3ZlciB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xufVxuLndvb2NvbW1lcmNlIGZvcm0ubG9naW4gLmxvc3RfcGFzc3dvcmQgYTpob3ZlcjpiZWZvcmUsIC53b29jb21tZXJjZSBmb3JtLnJlZ2lzdGVyIC5sb3N0X3Bhc3N3b3JkIGE6aG92ZXI6YmVmb3JlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG9wYWNpdHk6IDE7XG4gIHRyYW5zaXRpb246IHdpZHRoIHZhcigtLWl0LXRyYW5zaXRpb24pLCBvcGFjaXR5IDAuMXMgbGluZWFyO1xufVxuXG4vKipcbiAqIERvIG5vdCBAdXNlIGZpbGVzIHdpdGggYWN0dWFsIHNjc3MgY29kZSBpbiB0aGlzIGZpbGUsIGFzIGl0IHdpbGwgY29tcGlsZSBjc3MgY29kZSB0d2ljZS5cbiAqIEFzIHRoaXMgZmlsZSBnb2luZyB0byBiZSBhbiBzdGFuZGFsb25lIGNzcyBmaWxlLlxuICovXG4vKipcbiAqIERvIG5vdCBAdXNlIGZpbGVzIHdpdGggYWN0dWFsIHNjc3MgY29kZSBpbiB0aGlzIGZpbGUsIGFzIGl0IHdpbGwgY29tcGlsZSBjc3MgY29kZSB0d2ljZS5cbiAqIEFzIHRoaXMgZmlsZSBnb2luZyB0byBiZSBhbiBzdGFuZGFsb25lIGNzcyBmaWxlLlxuICovXG4ud29vY29tbWVyY2Utb3JkZXItcmVjZWl2ZWQgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1vcmRlciA+IHNlY3Rpb24ge1xuICBtYXJnaW4tdG9wOiB2YXIoLS1pdC1zcGFjaW5nLWNvbnRlbnQpO1xufVxuLndvb2NvbW1lcmNlLW9yZGVyLXJlY2VpdmVkIC53b29jb21tZXJjZSAud29vY29tbWVyY2Utb3JkZXIgLndvb2NvbW1lcmNlLXRoYW5reW91LW9yZGVyLXJlY2VpdmVkIHtcbiAgbWFyZ2luOiAwLjVyZW0gMCAwO1xufVxuLndvb2NvbW1lcmNlLW9yZGVyLXJlY2VpdmVkIC53b29jb21tZXJjZSAud29vY29tbWVyY2Utb3JkZXIgLndvb2NvbW1lcmNlLW9yZGVyLW92ZXJ2aWV3IHtcbiAgbWFyZ2luOiB2YXIoLS1pdC1zcGFjaW5nLWNvbnRlbnQpIDAgMDtcbn1cbi53b29jb21tZXJjZS1vcmRlci1yZWNlaXZlZCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW9yZGVyIC53b29jb21tZXJjZS1iYWNzLWJhbmstZGV0YWlscyBoMiB7XG4gIGZvbnQtc2l6ZTogdmFyKC0taXQtc2l6ZS1sYXJnZSk7XG59XG4ud29vY29tbWVyY2Utb3JkZXItcmVjZWl2ZWQgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1vcmRlciAud29vY29tbWVyY2UtYmFjcy1iYW5rLWRldGFpbHMgaDMge1xuICBmb250LXNpemU6IHZhcigtLWl0LXNpemUtbGFyZ2UpO1xufVxuLndvb2NvbW1lcmNlLW9yZGVyLXJlY2VpdmVkIC53b29jb21tZXJjZSAud29vY29tbWVyY2Utb3JkZXIgLndvb2NvbW1lcmNlLWJhY3MtYmFuay1kZXRhaWxzIC53Yy1iYWNzLWJhbmstZGV0YWlscyB7XG4gIG1hcmdpbjogMDtcbn1cbi53b29jb21tZXJjZS1vcmRlci1yZWNlaXZlZCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW9yZGVyIC53b29jb21tZXJjZS1vcmRlci1vdmVydmlldyxcbi53b29jb21tZXJjZS1vcmRlci1yZWNlaXZlZCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW9yZGVyIC53b29jb21tZXJjZS1iYWNzLWJhbmstZGV0YWlscyAud2MtYmFjcy1iYW5rLWRldGFpbHMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xufVxuLndvb2NvbW1lcmNlLW9yZGVyLXJlY2VpdmVkIC53b29jb21tZXJjZSAud29vY29tbWVyY2Utb3JkZXIgLndvb2NvbW1lcmNlLW9yZGVyLW92ZXJ2aWV3OmJlZm9yZSwgLndvb2NvbW1lcmNlLW9yZGVyLXJlY2VpdmVkIC53b29jb21tZXJjZSAud29vY29tbWVyY2Utb3JkZXIgLndvb2NvbW1lcmNlLW9yZGVyLW92ZXJ2aWV3OmFmdGVyLFxuLndvb2NvbW1lcmNlLW9yZGVyLXJlY2VpdmVkIC53b29jb21tZXJjZSAud29vY29tbWVyY2Utb3JkZXIgLndvb2NvbW1lcmNlLWJhY3MtYmFuay1kZXRhaWxzIC53Yy1iYWNzLWJhbmstZGV0YWlsczpiZWZvcmUsXG4ud29vY29tbWVyY2Utb3JkZXItcmVjZWl2ZWQgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1vcmRlciAud29vY29tbWVyY2UtYmFjcy1iYW5rLWRldGFpbHMgLndjLWJhY3MtYmFuay1kZXRhaWxzOmFmdGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi53b29jb21tZXJjZS1vcmRlci1yZWNlaXZlZCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW9yZGVyIC53b29jb21tZXJjZS1vcmRlci1vdmVydmlldyBsaSxcbi53b29jb21tZXJjZS1vcmRlci1yZWNlaXZlZCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW9yZGVyIC53b29jb21tZXJjZS1iYWNzLWJhbmstZGV0YWlscyAud2MtYmFjcy1iYW5rLWRldGFpbHMgbGkge1xuICBmbG9hdDogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGJhc2VsaW5lO1xuICBmb250LXNpemU6IHZhcigtLWl0LXNpemUtbWVkaXVtKTtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIGdhcDogMC4yNXJlbTtcbiAgYm9yZGVyOiAwO1xufVxuLndvb2NvbW1lcmNlLW9yZGVyLXJlY2VpdmVkIC53b29jb21tZXJjZSAud29vY29tbWVyY2Utb3JkZXIgLndvb2NvbW1lcmNlLW9yZGVyLW92ZXJ2aWV3IGxpIHN0cm9uZyxcbi53b29jb21tZXJjZS1vcmRlci1yZWNlaXZlZCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW9yZGVyIC53b29jb21tZXJjZS1iYWNzLWJhbmstZGV0YWlscyAud2MtYmFjcy1iYW5rLWRldGFpbHMgbGkgc3Ryb25nIHtcbiAgZm9udC1zaXplOiAxZW07XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3ODJweCkgYW5kIChtaW4td2lkdGg6IDBweCkge1xuICAud29vY29tbWVyY2Utb3JkZXItcmVjZWl2ZWQgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1vcmRlciAud29vY29tbWVyY2Utb3JkZXItZGV0YWlscyAud29vY29tbWVyY2UtdGFibGUgdGQ6bGFzdC1jaGlsZCwgLndvb2NvbW1lcmNlLW9yZGVyLXJlY2VpdmVkIC53b29jb21tZXJjZSAud29vY29tbWVyY2Utb3JkZXIgLndvb2NvbW1lcmNlLW9yZGVyLWRldGFpbHMgLndvb2NvbW1lcmNlLXRhYmxlIHRoOmxhc3QtY2hpbGQge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzgzcHgpIHtcbiAgLndvb2NvbW1lcmNlLW9yZGVyLXJlY2VpdmVkIC53b29jb21tZXJjZSAud29vY29tbWVyY2Utb3JkZXIgLndvb2NvbW1lcmNlLW9yZGVyLWRldGFpbHMgLndvb2NvbW1lcmNlLXRhYmxlIHRyOmhhcyg+IDpsYXN0LWNoaWxkOm50aC1jaGlsZCgyKSkgPiB0ZCxcbiAgLndvb2NvbW1lcmNlLW9yZGVyLXJlY2VpdmVkIC53b29jb21tZXJjZSAud29vY29tbWVyY2Utb3JkZXIgLndvb2NvbW1lcmNlLW9yZGVyLWRldGFpbHMgLndvb2NvbW1lcmNlLXRhYmxlIHRyOmhhcyg+IDpsYXN0LWNoaWxkOm50aC1jaGlsZCgyKSkgPiB0aCB7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxufSIsIi8qIENvbXBvbmVudCBzdHlsZXMuICovXG5AdXNlIFwiY29tcG9uZW50cy9wYWdpbmF0aW9uXCI7XG5AdXNlIFwiY29tcG9uZW50cy9xdWFudGl0eS1pbnB1dFwiO1xuQHVzZSBcImNvbXBvbmVudHMvd2lzaGxpc3RcIjtcbkB1c2UgXCJjb21wb25lbnRzL25vdGlmaWNhdGlvbnNcIjtcbkB1c2UgXCJjb21wb25lbnRzL2NvbHVtbnNcIjtcbkB1c2UgXCJjb21wb25lbnRzL2ZpZWxkc1wiO1xuQHVzZSBcImNvbXBvbmVudHMvZm9ybVwiO1xuQHVzZSBcImNvbXBvbmVudHMvdGFibGVcIjtcblxuLyogUGFnZSBzdHlsZXMuICovXG5AdXNlIFwicGFnZXMvYXJjaGl2ZS1wcm9kdWN0XCI7XG5AdXNlIFwicGFnZXMvc2luZ2xlLXByb2R1Y3RcIjtcbkB1c2UgXCJwYWdlcy9jYXJ0XCI7XG5AdXNlIFwicGFnZXMvY2hlY2tvdXRcIjtcbkB1c2UgXCJwYWdlcy9hY2NvdW50XCI7XG5AdXNlIFwicGFnZXMvbG9naW5cIjtcbkB1c2UgXCJwYWdlcy90aGFuay15b3UtcGFnZVwiO1xuIiwiJXBhZ2luYXRpb24ge1xuXHRtYXJnaW4tdG9wOiB2YXIoLS1pdC1zcGFjaW5nLXNlY3Rpb24taGFsZik7XG5cblx0LnBhZ2UtbnVtYmVycyB7XG5cdFx0bWFyZ2luOiAwO1xuXHRcdHBhZGRpbmc6IDA7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRmbGV4LXdyYXA6IHdyYXA7XG5cdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRnYXA6IDAuNXJlbTtcblxuXHRcdGxpIHtcblx0XHRcdG1hcmdpbjogMDtcblx0XHRcdGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcblx0XHRcdGZvbnQtc2l6ZTogdmFyKC0taXQtc2l6ZS1zbWFsbCk7XG5cblx0XHRcdCY6aGFzKC5wcmV2KSB7XG5cdFx0XHRcdG1hcmdpbi1yaWdodDogMC41cmVtO1xuXHRcdFx0fVxuXG5cdFx0XHQmOmhhcygubmV4dCkge1xuXHRcdFx0XHRtYXJnaW4tbGVmdDogMC41cmVtO1xuXHRcdFx0fVxuXG5cdFx0XHQ+ICoge1xuXHRcdFx0XHR3aWR0aDogMnJlbTtcblx0XHRcdFx0aGVpZ2h0OiAycmVtO1xuXHRcdFx0XHRib3JkZXItcmFkaXVzOiB2YXIoLS1pdC1ib3JkZXItcmFkaXVzLXNtYWxsKTtcblx0XHRcdFx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0taXQtY29sb3ItYm9yZGVyKTtcblx0XHRcdFx0ZGlzcGxheTogaW5saW5lLWZsZXg7XG5cdFx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0XHRcdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHRcdFx0fVxuXG5cdFx0XHRzcGFuIHtcblxuXHRcdFx0XHQmLmN1cnJlbnQge1xuXHRcdFx0XHRcdGNvbG9yOiB2YXIoLS1pdC1jb2xvci13aGl0ZSk7XG5cdFx0XHRcdFx0YmFja2dyb3VuZDogdmFyKC0taXQtY29sb3ItYnJhbmQpO1xuXHRcdFx0XHRcdGJvcmRlci1jb2xvcjogdmFyKC0taXQtY29sb3ItYnJhbmQpO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdGEge1xuXHRcdFx0XHR0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS1pdC10cmFuc2l0aW9uKSwgYmFja2dyb3VuZCB2YXIoLS1pdC10cmFuc2l0aW9uKSwgYm9yZGVyLWNvbG9yIHZhcigtLWl0LXRyYW5zaXRpb24pO1xuXG5cdFx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHRcdGNvbG9yOiB2YXIoLS1pdC1jb2xvci13aGl0ZSk7XG5cdFx0XHRcdFx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1pdC1jb2xvci1icmFuZCk7XG5cdFx0XHRcdFx0YmFja2dyb3VuZDogdmFyKC0taXQtY29sb3ItYnJhbmQpO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG4iLCJAdXNlIFwiLi4vLi4vLi4vLi4vYXNzZXRzL3Njc3MvZ2xvYmFsLzEtZ2VuZXJpYy8xLTEtYmFzZS9wYWdpbmF0aW9uLWJhc2VcIjtcblxuLndvb2NvbW1lcmNlIHtcblxuXHQud29vY29tbWVyY2UtcGFnaW5hdGlvbiB7XG5cblx0XHRAZXh0ZW5kICVwYWdpbmF0aW9uICFvcHRpb25hbDtcblxuXHRcdC5wYWdlLW51bWJlcnMge1xuXHRcdFx0Ym9yZGVyOiAwO1xuXG5cdFx0XHRsaSB7XG5cdFx0XHRcdGJvcmRlci1yaWdodDogMDtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cbiIsIi8qKlxuICogRG8gbm90IEB1c2UgZmlsZXMgd2l0aCBhY3R1YWwgc2NzcyBjb2RlIGluIHRoaXMgZmlsZSwgYXMgaXQgd2lsbCBjb21waWxlIGNzcyBjb2RlIHR3aWNlLlxuICogQXMgdGhpcyBmaWxlIGdvaW5nIHRvIGJlIGFuIHN0YW5kYWxvbmUgY3NzIGZpbGUuXG4gKi9cbkB1c2UgXCIuLi8uLi8uLi8uLi9hc3NldHMvc2Nzcy9nbG9iYWwvMC1zZXR0aW5ncy9zZXR0aW5nc1wiIGFzIHM7XG5cbmRpdi5xdWFudGl0eS1pbnB1dCB7XG5cdGRpc3BsYXk6IGdyaWQ7XG5cdGdyaWQtdGVtcGxhdGUtY29sdW1uczogYXV0byAxZnIgYXV0bztcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0taXQtY29sb3ItYm9yZGVyKTtcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0taXQtYm9yZGVyLXJhZGl1cy1zbWFsbCk7XG5cdG92ZXJmbG93OiBoaWRkZW47XG5cblx0LnF0eS1idG4ge1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0XHR3aWR0aDogcy5yZW0oMjQpO1xuXHRcdGhlaWdodDogMTAwJTtcblx0XHRib3JkZXI6IDA7XG5cdFx0ZmxleC1zaHJpbms6IDA7XG5cdFx0YmFja2dyb3VuZDogdmFyKC0taXQtY29sb3ItYmFja2dyb3VuZCk7XG5cdFx0Y29sb3I6IHZhcigtLWl0LWNvbG9yLWJyYW5kKTtcblx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cdFx0dHJhbnNpdGlvbjogYWxsIHZhcigtLWl0LXRyYW5zaXRpb24pO1xuXG5cdFx0Jjpob3Zlcixcblx0XHQmOmZvY3VzLXZpc2libGUge1xuXHRcdFx0YmFja2dyb3VuZDogdmFyKC0taXQtY29sb3ItYnJhbmQpO1xuXHRcdFx0Y29sb3I6IHZhcigtLWl0LWNvbG9yLXdoaXRlKTtcblx0XHR9XG5cblx0XHQmOjpiZWZvcmUge1xuXHRcdFx0Y29udGVudDogXCJcIjtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0d2lkdGg6IHMucmVtKDkpO1xuXHRcdFx0aGVpZ2h0OiBzLnJlbSg5KTtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6IGN1cnJlbnRjb2xvcjtcblx0XHR9XG5cblx0XHQmLnF0eS1taW51cyB7XG5cblx0XHRcdCY6OmJlZm9yZSB7XG5cdFx0XHRcdG1hc2s6IHVybChcIi4uL2ltZy93b28tY2hldnJvbi5zdmdcIikgbm8tcmVwZWF0IGNlbnRlciAvIGNvbnRhaW47XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Ji5xdHktcGx1cyB7XG5cblx0XHRcdCY6OmJlZm9yZSB7XG5cdFx0XHRcdHRyYW5zZm9ybTogcm90YXRlKC0xODBkZWcpO1xuXHRcdFx0XHRtYXNrOiB1cmwoXCIuLi9pbWcvd29vLWNoZXZyb24uc3ZnXCIpIG5vLXJlcGVhdCBjZW50ZXIgLyBjb250YWluO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdGlucHV0W3R5cGU9XCJudW1iZXJcIl0ge1xuXHRcdHdpZHRoOiBzLnJlbSgzNSkgIWltcG9ydGFudDtcblx0XHRoZWlnaHQ6IHMucmVtKDM1KTtcblx0XHRib3JkZXI6IG5vbmU7XG5cdFx0cGFkZGluZzogMDtcblx0XHRmb250LXNpemU6IHZhcigtLWl0LXNpemUtc21hbGwpO1xuXHRcdGFwcGVhcmFuY2U6IG5vbmU7XG5cdFx0LW1vei1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7XG5cblx0XHQmOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uLFxuXHRcdCY6Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24ge1xuXHRcdFx0bWFyZ2luOiAwO1xuXHRcdFx0LXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuXHRcdH1cblx0fVxufVxuIiwiQHVzZSBcInNhc3M6bWF0aFwiO1xuQHVzZSBcInNhc3M6bGlzdFwiO1xuXG5AZnVuY3Rpb24gc3RyaXAtdW5pdCgkbnVtKSB7XG5cblx0QHJldHVybiBtYXRoLmRpdigkbnVtLCAkbnVtICogMCArIDEpO1xufVxuXG5AZnVuY3Rpb24gZ2V0VW5pdCgkdmFsdWUpIHtcblxuXHRAcmV0dXJuIHN0ci1zbGljZSgkdmFsdWUgKiAwICsgXCJcIiwgMiwgLTEpO1xufVxuXG5AZnVuY3Rpb24gY29udmVydC10by1yZW0oJHZhbHVlLCAkYmFzZS12YWx1ZTogMTZweCkge1xuXHQkdmFsdWU6IG1hdGguZGl2KHJvdW5kKG1hdGguZGl2KHN0cmlwLXVuaXQoJHZhbHVlKSwgc3RyaXAtdW5pdCgkYmFzZS12YWx1ZSkpICogMTAwMDApLCAxMDAwMCkgKiAxcmVtO1xuXG5cdEBpZiAoJHZhbHVlID09IDApIHsgJHZhbHVlOiAwOyB9IC8qIFR1cm4gMHJlbSBpbnRvIDAgKi9cblxuXHRAcmV0dXJuICR2YWx1ZTtcbn1cblxuQGZ1bmN0aW9uIHJlbSgkdmFsdWVzLCAkYmFzZS12YWx1ZTogMTZweCkge1xuXHQkbWF4OiBsaXN0Lmxlbmd0aCgkdmFsdWVzKTtcblxuXHRAaWYgJG1heCA9PSAxIHsgQHJldHVybiBjb252ZXJ0LXRvLXJlbShsaXN0Lm50aCgkdmFsdWVzLCAxKSwgJGJhc2UtdmFsdWUpOyB9XG5cblx0JHJlbVZhbHVlczogKCk7XG5cdEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJG1heCB7XG5cdFx0JHJlbVZhbHVlczogbGlzdC5hcHBlbmQoJHJlbVZhbHVlcywgY29udmVydC10by1yZW0obGlzdC5udGgoJHZhbHVlcywgJGkpLCAkYmFzZS12YWx1ZSkpO1xuXHR9XG5cdEByZXR1cm4gJHJlbVZhbHVlcztcbn1cblxuQGZ1bmN0aW9uIHJlbS1mcm9tLXB4KCR2YWx1ZXMsICRiYXNlLXZhbHVlOiAxNnB4KSB7XG5cdCRtYXg6IGxpc3QubGVuZ3RoKCR2YWx1ZXMpO1xuXG5cdEBpZiAkbWF4ID09IDEge1xuXG4gQHJldHVybiBjb252ZXJ0LXRvLXJlbShsaXN0Lm50aCgkdmFsdWVzLCAxKSwgJGJhc2UtdmFsdWUpOyB9XG5cblx0JHJlbVZhbHVlczogKCk7XG5cblx0QGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkbWF4IHtcblx0XHQkcmVtVmFsdWVzOiBsaXN0LmFwcGVuZCgkcmVtVmFsdWVzLCBjb252ZXJ0LXRvLXJlbShsaXN0Lm50aCgkdmFsdWVzLCAkaSksICRiYXNlLXZhbHVlKSk7XG5cdH1cblxuXHRAcmV0dXJuICRyZW1WYWx1ZXM7XG59XG5cbkBmdW5jdGlvbiBlbSgkdmFsdWVzKSB7XG5cdCRyZW1WYWx1ZXM6IHJlbS1mcm9tLXB4KCR2YWx1ZXMpO1xuXG5cdCRtYXg6IGxpc3QubGVuZ3RoKCRyZW1WYWx1ZXMpO1xuXG5cdEBpZiAkbWF4ID09IDEge1xuXG5cdFx0QHJldHVybiBtYXRoLmRpdihyb3VuZChzdHJpcC11bml0KGxpc3QubnRoKCRyZW1WYWx1ZXMsIDEpKSAqIDEwMDAwKSwgMTAwMDAgKSAqIDFlbTtcblx0fVxuXG5cdCRlbVZhbHVlczogKCk7XG5cblx0QGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkbWF4IHtcblx0XHQkZW1WYWx1ZXM6IGxpc3QuYXBwZW5kKCRlbVZhbHVlcywgbWF0aC5kaXYocm91bmQoc3RyaXAtdW5pdChsaXN0Lm50aCgkcmVtVmFsdWVzLCAxKSkgKiAxMDAwMCksIDEwMDAwICkgKiAxZW0pO1xuXHR9XG5cblx0QHJldHVybiAkZW1WYWx1ZXM7XG59XG5cbi8qXG4gKiBDT05WRVJUIFRPIENMQU1QXG4gKlxuICogQGxpbmsgaHR0cHM6Ly93ZWJzZW1hbnRpY3MudWsvdG9vbHMvcmVzcG9uc2l2ZS1mb250LWNhbGN1bGF0b3IvXG4gKlxuICogQ2FsbCB3aXRoIDIsIG9yIDQgcGFyYW1ldGVycy4gT25seSBmaXJzdCAyIHBhcmFtZXRlcnMgYXJlIHJlcXVpcmVkLiBWaWV3cG9ydCB3aWR0aHMgYWxzbyBjYW4gYmUgd2l0aCAncHgnIHVuaXRzIChmb3Igc3VwcG9ydGluZyBicmVha3BvaW50IHZhbHVlcykuXG4gKlxuICogRXhhbXBsZXM6XG4gKlxuICogMSkgZm9udC1zaXplOiBjbGFtcC1yZW0oMzIsIDQ4KTtcbiAqIDIpIGZvbnQtc2l6ZTogY2xhbXAtcmVtKDMyLCA0OCwgNjQwLCAxNDQwKTtcbiAqL1xuQGZ1bmN0aW9uIGNsYW1wLXJlbSgkZm9udC1zaXplLW1pbiwgJGZvbnQtc2l6ZS1tYXgsICR2aWV3cG9ydC1taW46IDY0MCwgJHZpZXdwb3J0LW1heDogMTQ0MCkge1xuXG5cdEBpZiBtYXRoLmlzLXVuaXRsZXNzKCR2aWV3cG9ydC1taW4pIHtcblx0XHQkdmlld3BvcnQtbWluOiAkdmlld3BvcnQtbWluICogMXB4O1xuXHR9XG5cdCRmb250LXNpemUtbWluLXJlbTogY29udmVydC10by1yZW0oJGZvbnQtc2l6ZS1taW4pO1xuXHQkZm9udC1zaXplLW1heC1yZW06IGNvbnZlcnQtdG8tcmVtKCRmb250LXNpemUtbWF4KTtcblxuXHQvLyBDYWxjdWxhdGUgZmx1aWQgdmFyaWFibGUuXG5cdCR2YXIxOiBjYWxjKDF2dyAtIG1hdGgucm91bmQobWF0aC5kaXYoJHZpZXdwb3J0LW1pbiwgMTAwKSAqIDEwMDAwKSAvIDEwMDAwKTtcblx0JHZhcjI6IGNhbGMoMTAwICogbWF0aC5yb3VuZChtYXRoLmRpdigoc3RyaXAtdW5pdCgkZm9udC1zaXplLW1heCkgLSBzdHJpcC11bml0KCRmb250LXNpemUtbWluKSksIChzdHJpcC11bml0KCR2aWV3cG9ydC1tYXgpIC0gc3RyaXAtdW5pdCgkdmlld3BvcnQtbWluKSkpICogMTAwMDApIC8gMTAwMDApO1xuXHQkZmx1aWQ6IGNhbGMoICRmb250LXNpemUtbWluLXJlbSArICgkdmFyMSAqICR2YXIyKSApO1xuXG5cdC8vIFByZXBhcmUgcmV0dXJuaW5nIHZhcmlhYmxlLlxuXHQkY2xhbXA6IGNsYW1wKCAjeyRmb250LXNpemUtbWluLXJlbX0sICN7JGZsdWlkfSwgI3skZm9udC1zaXplLW1heC1yZW19ICk7XG5cblx0QHJldHVybiAkY2xhbXA7XG59XG5cbiIsIi8qKlxuICogTWl4aW5zIGZvciBNZWRpYSBRdWVyaWVzXG4gKiBFeGFtcGxlIFVzYWdlOiBAaW5jbHVkZSBtaW4oJGxnKSB8fCBAaW5jbHVkZSBtaW4oMTQ0MClcbiAqL1xuXG4vLyAtLS0gbWluLXdpZHRoXG5AbWl4aW4gbWluKCRicCkge1xuXG5cdEBtZWRpYSAobWluLXdpZHRoOiAjeyRicCArICdweCd9KSB7XG5cdFx0QGNvbnRlbnQ7XG5cdH1cbn1cblxuLy8gLS0tIG1pbi1oZWlnaHRcbkBtaXhpbiBtaW5oKCRicCkge1xuXG5cdEBtZWRpYSAobWluLWhlaWdodDogI3skYnAgKyAncHgnfSkge1xuXHRcdEBjb250ZW50O1xuXHR9XG59XG5cbi8vIC0tLSBtYXgtd2lkdGhcbkBtaXhpbiBtYXgoJGJwKSB7XG5cblx0QG1lZGlhIChtYXgtd2lkdGg6ICN7KCRicCAtIDEpICsgJ3B4J30pIHtcblx0XHRAY29udGVudDtcblx0fVxufVxuXG4vLyAtLS0gbWF4LWhlaWdodFxuQG1peGluIG1heGgoJGJwKSB7XG5cblx0QG1lZGlhIChtYXgtaGVpZ2h0OiAjeygkYnAgLSAxKSArICdweCd9KSB7XG5cdFx0QGNvbnRlbnQ7XG5cdH1cbn1cblxuLy8gLS0tIG1pbi13aWR0aCAtIG1heC13aWR0aFxuQG1peGluIG1pbi1tYXgoJGJwLW1pbiwgJGJwLW1heCkge1xuXG5cdEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICN7KCRicC1tYXggLSAxKSArICdweCd9KSBhbmQgKG1pbi13aWR0aDogI3skYnAtbWluICsgJ3B4J30pIHtcblx0XHRAY29udGVudDtcblx0fVxufVxuIiwiLyoqXG4gKiBEbyBub3QgQHVzZSBmaWxlcyB3aXRoIGFjdHVhbCBzY3NzIGNvZGUgaW4gdGhpcyBmaWxlLCBhcyBpdCB3aWxsIGNvbXBpbGUgY3NzIGNvZGUgdHdpY2UuXG4gKiBBcyB0aGlzIGZpbGUgZ29pbmcgdG8gYmUgYW4gc3RhbmRhbG9uZSBjc3MgZmlsZS5cbiAqL1xuQHVzZSBcIi4uLy4uLy4uLy4uL2Fzc2V0cy9zY3NzL2dsb2JhbC8wLXNldHRpbmdzL3NldHRpbmdzXCIgYXMgcztcbkB1c2UgXCIuLi8uLi8uLi8uLi9hc3NldHMvc2Nzcy9nbG9iYWwvMS1nZW5lcmljLzEtMS1iYXNlL2J1dHRvbnMtYmFzZVwiO1xuQHVzZSBcIi4uL2NvbXBvbmVudHMvYWRkLXRvLWNhcnRcIjtcblxuLndvb3N3LWJ0biB7XG4gIG1pbi13aWR0aDogcy5yZW0oMzcpO1xuICBtaW4taGVpZ2h0OiBzLnJlbSgzNyk7XG4gIG1hcmdpbi1yaWdodDogcy5yZW0oMTQpO1xuICBwYWRkaW5nOiAwO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0taXQtYm9yZGVyLXJhZGl1cy1zbWFsbCk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWl0LWNvbG9yLXdoaXRlKTtcbiAgYm9yZGVyLXdpZHRoOiAxcHg7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0taXQtY29sb3ItYnJhbmQpO1xuICBjb2xvcjogdmFyKC0taXQtY29sb3ItYnJhbmQpO1xuICBib3gtc2hhZG93OiBub25lO1xuICBmbGV4LXNocmluazogMDtcbn1cblxuLndvb3N3LWxpc3Qge1xuXG4gIHRhYmxlLndvb3N3LWl0ZW1zIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB0YWJsZS1sYXlvdXQ6IGZpeGVkO1xuXG4gICAgdHIud29vc3ctaXRlbSB7XG5cbiAgICAgIC53b29zdy1pdGVtLS1yZW1vdmUge1xuICAgICAgICB3aWR0aDogMi42NXJlbTtcblxuICAgICAgICBzcGFuIHtcblxuICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIHdpZHRoOiAxLjVyZW07XG4gICAgICAgICAgICBoZWlnaHQ6IDEuNXJlbTtcbiAgICAgICAgICAgIG1hc2s6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0Nzdmcgdmlld0JveD0nMCAwIDI0IDI0JyBmaWxsPSdub25lJyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnJTNFJTNDcGF0aCBkPSdNMTEuOTg3NyAxMC41OTgzTDYuNjk0NzEgNS4zMDUyOUM2LjUwNjExIDUuMTIzMTMgNi4yNTM1MSA1LjAyMjM0IDUuOTkxMzEgNS4wMjQ2MUM1LjcyOTExIDUuMDI2ODkgNS40NzgzIDUuMTMyMDYgNS4yOTI4OSA1LjMxNzQ3QzUuMTA3NDkgNS41MDI4OCA1LjAwMjMyIDUuNzUzNjkgNS4wMDAwNCA2LjAxNTg5QzQuOTk3NzYgNi4yNzgwOCA1LjA5ODU1IDYuNTMwNjkgNS4yODA3MSA2LjcxOTI5TDEwLjU3MzcgMTIuMDEyM0w1LjI4MDcxIDE3LjMwNTNDNS4wOTg1NSAxNy40OTM5IDQuOTk3NzYgMTcuNzQ2NSA1LjAwMDA0IDE4LjAwODdDNS4wMDIzMiAxOC4yNzA5IDUuMTA3NDkgMTguNTIxNyA1LjI5Mjg5IDE4LjcwNzFDNS40NzgzIDE4Ljg5MjUgNS43MjkxMSAxOC45OTc3IDUuOTkxMzEgMTlDNi4yNTM1MSAxOS4wMDIyIDYuNTA2MTEgMTguOTAxNCA2LjY5NDcxIDE4LjcxOTNMMTEuOTg3NyAxMy40MjYzTDE3LjI4MDcgMTguNzE5M0MxNy40NjkzIDE4LjkwMTQgMTcuNzIxOSAxOS4wMDIyIDE3Ljk4NDEgMTlDMTguMjQ2MyAxOC45OTc3IDE4LjQ5NzEgMTguODkyNSAxOC42ODI1IDE4LjcwNzFDMTguODY3OSAxOC41MjE3IDE4Ljk3MzEgMTguMjcwOSAxOC45NzU0IDE4LjAwODdDMTguOTc3NyAxNy43NDY1IDE4Ljg3NjkgMTcuNDkzOSAxOC42OTQ3IDE3LjMwNTNMMTMuNDAxNyAxMi4wMTIzTDE4LjY5NDcgNi43MTkyOUMxOC43OTAyIDYuNjI3MDQgMTguODY2NCA2LjUxNjcgMTguOTE4OCA2LjM5NDY5QzE4Ljk3MTIgNi4yNzI2OSAxOC45OTg4IDYuMTQxNDcgMTkgNi4wMDg2OUMxOS4wMDExIDUuODc1OTEgMTguOTc1OCA1Ljc0NDIzIDE4LjkyNTUgNS42MjEzM0MxOC44NzUzIDUuNDk4NDQgMTguODAxIDUuMzg2NzkgMTguNzA3MSA1LjI5Mjg5QzE4LjYxMzIgNS4xOTkgMTguNTAxNiA1LjEyNDc1IDE4LjM3ODcgNS4wNzQ0N0MxOC4yNTU4IDUuMDI0MTkgMTguMTI0MSA0Ljk5ODg4IDE3Ljk5MTMgNS4wMDAwNEMxNy44NTg1IDUuMDAxMTkgMTcuNzI3MyA1LjAyODc4IDE3LjYwNTMgNS4wODExOUMxNy40ODMzIDUuMTMzNiAxNy4zNzMgNS4yMDk3OCAxNy4yODA3IDUuMzA1MjlMMTEuOTg3NyAxMC41OTgzWicgZmlsbD0nJTIzMjU0NDVBJy8lM0UlM0Mvc3ZnJTNFJTBBXCIpO1xuICAgICAgICAgICAgbWFzay1zaXplOiBjb250YWluO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0taXQtdHJhbnNpdGlvbi10aW1lKSBlYXNlO1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLWl0LWNvbG9yLWJyYW5kKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGN1cnJlbnRjb2xvcjtcbiAgICAgICAgICAgIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IDE7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJjpob3ZlciB7XG5cbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWl0LWNvbG9yLWVycm9yKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLndvb3N3LWl0ZW0tLWltYWdlIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcblxuICAgICAgICBpbWcge1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWl0LWJvcmRlci1yYWRpdXMtc21hbGwpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC53b29zdy1pdGVtLS1pbmZvIHtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG5cbiAgICAgICAgPiAqIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAuMjVyZW07XG5cbiAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLndvb3N3LWl0ZW0tLW5hbWUge1xuICAgICAgICBmb250LXNpemU6IHZhcigtLWl0LXNpemUtc21hbGwpO1xuXG4gICAgICAgIGEge1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLndvb3N3LWl0ZW0tLXByaWNlLFxuICAgICAgLndvb3N3LWl0ZW0tLXRpbWUge1xuICAgICAgICBmb250LXNpemU6IHZhcigtLWl0LXNpemUteC1zbWFsbCk7XG4gICAgICB9XG5cbiAgICAgIC53b29zdy1pdGVtLS1hY3Rpb25zIHtcbiAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgIHdpZHRoOiAyNSU7XG5cbiAgICAgICAgLmJ1dHRvbiB7XG5cbiAgICAgICAgICBAZXh0ZW5kICVpdC1idXR0b24tLXNtICFvcHRpb25hbDtcbiAgICAgICAgICBAZXh0ZW5kICVhZGQtdG8tY2FydCAhb3B0aW9uYWw7XG4gICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xuICAgICAgICB9XG5cbiAgICAgICAgLndvb3N3LWl0ZW0tLXN0b2NrIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5hZGRlZF90b19jYXJ0IHtcbiAgICAgICAgaW5zZXQ6IDA7XG4gICAgICAgIGZvbnQtc2l6ZTogMDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgcy5taW4tbWF4KHMuJHplcm8sIHMuJGxnKSB7XG5cbiAgICAgICAgLndvb3N3LWl0ZW0tLWFjdGlvbnMge1xuXG4gICAgICAgICAgLmJ1dHRvbiB7XG5cbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWl0LWNvbG9yLWJyYW5kKTtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1pdC1jb2xvci13aGl0ZSk7XG4gICAgICAgICAgICBwYWRkaW5nOiAxcmVtO1xuICAgICAgICAgICAgZm9udC1zaXplOiAwO1xuICAgICAgICAgICAgZ2FwOiAwO1xuXG4gICAgICAgICAgICAmLnByb2R1Y3Rfb3V0X29mX3N0b2NrLFxuICAgICAgICAgICAgJi5wcm9kdWN0X3R5cGVfdmFyaWFibGUge1xuXG4gICAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgbWFzazogdXJsKFwiLi4vaW1nL3dvby1hcnJvdy5zdmdcIikgbm8tcmVwZWF0IGNlbnRlciAvIGNvbnRhaW47XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAud29vc3ctaXRlbS0tc3RvY2sge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgcy5taW4ocy4kbWQpIHtcblxuICAgICAgICAud29vc3ctaXRlbS0taW1hZ2Uge1xuICAgICAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICAgIH1cblxuICAgICAgICAud29vc3ctaXRlbS0tYWN0aW9ucyB7XG4gICAgICAgICAgd2lkdGg6IDMwJTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC53b29zdy1hY3Rpb25zIHtcblxuICAgICY6ZW1wdHkge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cbn1cbiIsIkB1c2UgJy4uLy4uLzAtc2V0dGluZ3Mvc2V0dGluZ3MnIGFzIHM7XG4laXQtYnV0dG9uIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHQvL2JvcmRlci1yYWRpdXM6IHZhcigtLWl0LWJvcmRlci1yYWRpdXMpO1xuXHRmb250LWZhbWlseTogaW5oZXJpdDtcblx0Ym9yZGVyLXdpZHRoOiAxcHg7XG5cdGJvcmRlci1zdHlsZTogc29saWQ7XG5cdGZvbnQtc2l6ZTogdmFyKC0taXQtc2l6ZS1zbWFsbCk7XG5cdGZvbnQtd2VpZ2h0OiA1MDA7XG5cdC8vbGV0dGVyLXNwYWNpbmc6IDAuMTVlbTtcblx0bGluZS1oZWlnaHQ6IDE7XG5cdHBhZGRpbmc6IHMucmVtKDIwKSBzLnJlbSgzMCk7XG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0dGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG5cdHRyYW5zaXRpb246IGNvbG9yIHZhcigtLWl0LXRyYW5zaXRpb24pLCBib3JkZXIgdmFyKC0taXQtdHJhbnNpdGlvbiksIGJhY2tncm91bmQgdmFyKC0taXQtdHJhbnNpdGlvbik7XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcblx0ZGlzcGxheTogaW5saW5lLWZsZXg7XG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRnYXA6IDAuNXJlbTtcblx0Y3Vyc29yOiBwb2ludGVyO1xuXHRiYWNrZHJvcC1maWx0ZXI6IGJsdXIoMTVweCk7XG5cblx0JiA+IHN2ZyB7XG5cdFx0Y29sb3I6IGN1cnJlbnRjb2xvcjtcblx0fVxuXG5cdCYuaXMtbG9hZGluZyB7XG5cblx0XHRAZXh0ZW5kIC5pcy1kaXNhYmxlZCAhb3B0aW9uYWw7IC8vIEl0J3Mgd29ya2luZywgZG8gbm90IHJlbW92ZSBpdC5cblxuXHRcdCY6YWZ0ZXIge1xuXHRcdFx0Y29udGVudDogJyc7XG5cdFx0XHR3aWR0aDogMS4yNXJlbTtcblx0XHRcdGFzcGVjdC1yYXRpbzogMTtcblx0XHRcdGJvcmRlci1yYWRpdXM6IDUwJTtcblx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdGJhY2tncm91bmQ6IHJhZGlhbC1ncmFkaWVudChmYXJ0aGVzdC1zaWRlLCBjdXJyZW50Y29sb3IgOTQlLCB0cmFuc3BhcmVudCkgdG9wLzNweCAzcHggbm8tcmVwZWF0LCBjb25pYy1ncmFkaWVudCh0cmFuc3BhcmVudCAzMCUsIGN1cnJlbnRjb2xvcik7XG5cdFx0XHQtd2Via2l0LW1hc2s6IHJhZGlhbC1ncmFkaWVudChmYXJ0aGVzdC1zaWRlLCB0cmFuc3BhcmVudCAje2NhbGMoMTAwJSAtIDNweCl9LCAjMDAwIDApO1xuXHRcdFx0YW5pbWF0aW9uOiBzcGluTG9hZGVyIDFzIGluZmluaXRlIGxpbmVhcjtcblx0XHRcdHotaW5kZXg6IDE7XG5cdFx0fVxuXG5cdFx0QGtleWZyYW1lcyBzcGluTG9hZGVyIHtcblxuXHRcdFx0MTAwJSB7XG5cdFx0XHRcdHRyYW5zZm9ybTogcm90YXRlKDF0dXJuKTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQvKiAtLSBCdXR0b24gdHlwZXMgLS0gKi9cblx0Ji0tcHJpbWFyeSB7XG5cdFx0bWluLXdpZHRoOiAyMzFweDtcblx0XHRAZXh0ZW5kICVpdC1idXR0b24gIW9wdGlvbmFsO1xuXHRcdC8vYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taXQtY29sb3ItYnJhbmQpO1xuXHRcdGJvcmRlci1jb2xvcjogdmFyKC0taXQtY29sb3Itd2hpdGUpO1xuXHRcdGNvbG9yOiB2YXIoLS1pdC1jb2xvci13aGl0ZSk7XG5cblx0XHRAbWVkaWEgKGhvdmVyOiBob3Zlcikge1xuXG5cdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0taXQtY29sb3ItdGV4dCk7XG5cdFx0XHRcdGNvbG9yOiB2YXIoLS1pdC1jb2xvci13aGl0ZSk7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0QG1lZGlhIChob3Zlcjogbm9uZSkge1xuXG5cdFx0XHQmOmFjdGl2ZSB7XG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWl0LWNvbG9yLXdoaXRlKTtcblx0XHRcdFx0Y29sb3I6IHZhcigtLWl0LWNvbG9yLWJyYW5kKTtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQmOmZvY3VzLXZpc2libGUge1xuXHRcdFx0b3V0bGluZS1jb2xvcjogdmFyKC0taXQtY29sb3ItYnJhbmQpO1xuXHRcdH1cblxuXHRcdCYuaXMtZGlzYWJsZWQsXG5cdFx0JjpkaXNhYmxlZFtkaXNhYmxlZF0ge1xuXHRcdFx0cG9pbnRlci1ldmVudHM6IG5vbmU7XG5cdFx0XHRwYWRkaW5nOiAwLjY4NzVyZW0gMi41cmVtO1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0taXQtY29sb3ItYnJhbmQtZ3JleWVkKTtcblx0XHRcdGJvcmRlci1jb2xvcjogdmFyKC0taXQtY29sb3ItYnJhbmQtZ3JleWVkKTtcblx0XHRcdGNvbG9yOiB2YXIoLS1pdC1jb2xvci13aGl0ZSk7XG5cblx0XHRcdCY6Zm9jdXMtdmlzaWJsZSB7XG5cdFx0XHRcdG91dGxpbmUtY29sb3I6IHZhcigtLWl0LWNvbG9yLWJyYW5kLWdyZXllZCk7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Lml0LWludHJvLS1mdWxsd2lkdGggJixcblx0XHQuaGFzLWJnLWRhcmsgJiB7XG5cdFx0XHQvL2JhY2tncm91bmQtY29sb3I6IHZhcigtLWl0LWNvbG9yLXdoaXRlKTtcblx0XHRcdGJvcmRlci1jb2xvcjogdmFyKC0taXQtY29sb3Itd2hpdGUpO1xuXHRcdFx0Y29sb3I6IHZhcigtLWl0LWNvbG9yLXdoaXRlKTtcblxuXHRcdFx0QG1lZGlhIChob3ZlcjogaG92ZXIpIHtcblxuXHRcdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pdC1jb2xvci1icmFuZCk7XG5cdFx0XHRcdFx0Y29sb3I6IHZhcigtLWl0LWNvbG9yLXdoaXRlKTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHRAbWVkaWEgKGhvdmVyOiBub25lKSB7XG5cblx0XHRcdFx0JjphY3RpdmUge1xuXHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWl0LWNvbG9yLWJyYW5kKTtcblx0XHRcdFx0XHRjb2xvcjogdmFyKC0taXQtY29sb3Itd2hpdGUpO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdCY6Zm9jdXMtdmlzaWJsZSB7XG5cdFx0XHRcdG91dGxpbmUtY29sb3I6IHZhcigtLWl0LWNvbG9yLXdoaXRlKTtcblx0XHRcdH1cblxuXHRcdFx0Ji5pcy1kaXNhYmxlZCB7XG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWl0LWNvbG9yLWJvcmRlcik7XG5cdFx0XHRcdGJvcmRlci1jb2xvcjogdmFyKC0taXQtY29sb3ItYm9yZGVyKTtcblxuXHRcdFx0XHQmOmZvY3VzLXZpc2libGUge1xuXHRcdFx0XHRcdG91dGxpbmUtY29sb3I6IHZhcigtLWl0LWNvbG9yLWJvcmRlcik7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQmLS1hY2NlbnQge1xuXG5cdFx0QGV4dGVuZCAlaXQtYnV0dG9uICFvcHRpb25hbDtcblx0XHQvL2JhY2tncm91bmQtY29sb3I6IHZhcigtLWl0LWNvbG9yLWFjY2VudCk7XG5cdFx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1pdC1jb2xvci10ZXh0KTtcblx0XHRjb2xvcjogdmFyKC0taXQtY29sb3ItdGV4dCk7XG5cblx0XHRAbWVkaWEgKGhvdmVyOiBob3Zlcikge1xuXG5cdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0taXQtY29sb3Itd2hpdGUpO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdEBtZWRpYSAoaG92ZXI6IG5vbmUpIHtcblxuXHRcdFx0JjphY3RpdmUge1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pdC1jb2xvci13aGl0ZSk7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Ji5pcy1kaXNhYmxlZCB7XG5cdFx0XHRwb2ludGVyLWV2ZW50czogbm9uZTtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWl0LWNvbG9yLWFjY2VudC1ncmV5ZWQpO1xuXHRcdFx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1pdC1jb2xvci1hY2NlbnQtZ3JleWVkKTtcblxuXHRcdFx0Jjpmb2N1cy12aXNpYmxlIHtcblx0XHRcdFx0b3V0bGluZS1jb2xvcjogdmFyKC0taXQtY29sb3ItYWNjZW50LWdyZXllZCk7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Lml0LWludHJvLS1mdWxsd2lkdGggJixcblx0XHQuaGFzLWJnLWRhcmsgJiB7XG5cblx0XHRcdEBtZWRpYSAoaG92ZXI6IGhvdmVyKSB7XG5cblx0XHRcdFx0Jjpob3ZlciB7XG5cdFx0XHRcdFx0Y29sb3I6IHZhcigtLWl0LWNvbG9yLXdoaXRlKTtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pdC1jb2xvci1icmFuZCk7XG5cdFx0XHRcdFx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1pdC1jb2xvci13aGl0ZSk7XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0QG1lZGlhIChob3Zlcjogbm9uZSkge1xuXG5cdFx0XHRcdCY6YWN0aXZlIHtcblx0XHRcdFx0XHRjb2xvcjogdmFyKC0taXQtY29sb3Itd2hpdGUpO1xuXHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWl0LWNvbG9yLWJyYW5kKTtcblx0XHRcdFx0XHRib3JkZXItY29sb3I6IHZhcigtLWl0LWNvbG9yLXdoaXRlKTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdCYtLW91dGxpbmUge1xuXG5cdFx0QGV4dGVuZCAlaXQtYnV0dG9uICFvcHRpb25hbDtcblx0XHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcblx0XHRib3JkZXItY29sb3I6IHZhcigtLWl0LWNvbG9yLWJyYW5kKTtcblx0XHRjb2xvcjogdmFyKC0taXQtY29sb3ItYnJhbmQpO1xuXG5cdFx0QG1lZGlhIChob3ZlcjogaG92ZXIpIHtcblxuXHRcdFx0Jjpob3ZlciB7XG5cdFx0XHRcdGNvbG9yOiB2YXIoLS1pdC1jb2xvci13aGl0ZSk7XG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWl0LWNvbG9yLWJyYW5kKTtcblx0XHRcdH1cblx0XHR9XG5cblx0XHRAbWVkaWEgKGhvdmVyOiBub25lKSB7XG5cblx0XHRcdCY6YWN0aXZlIHtcblx0XHRcdFx0Y29sb3I6IHZhcigtLWl0LWNvbG9yLXdoaXRlKTtcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0taXQtY29sb3ItYnJhbmQpO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdCY6Zm9jdXMtdmlzaWJsZSB7XG5cdFx0XHRvdXRsaW5lLWNvbG9yOiB2YXIoLS1pdC1jb2xvci1icmFuZCk7XG5cdFx0fVxuXG5cdFx0Ji5pcy1kaXNhYmxlZCB7XG5cdFx0XHRwb2ludGVyLWV2ZW50czogbm9uZTtcblx0XHRcdGNvbG9yOiB2YXIoLS1pdC1jb2xvci1icmFuZC1ncmV5ZWQpO1xuXHRcdFx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1pdC1jb2xvci1icmFuZC1ncmV5ZWQpO1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0taXQtY29sb3ItYmFja2dyb3VuZCk7XG5cblx0XHRcdCY6Zm9jdXMtdmlzaWJsZSB7XG5cdFx0XHRcdG91dGxpbmUtY29sb3I6IHZhcigtLWl0LWNvbG9yLWJyYW5kLWdyZXllZCk7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Lml0LWludHJvLS1mdWxsd2lkdGggJixcblx0XHQuaGFzLWJnLWRhcmsgJiB7XG5cdFx0XHRib3JkZXItY29sb3I6IHZhcigtLWl0LWNvbG9yLXdoaXRlKTtcblx0XHRcdGNvbG9yOiB2YXIoLS1pdC1jb2xvci13aGl0ZSk7XG5cblx0XHRcdEBtZWRpYSAoaG92ZXI6IGhvdmVyKSB7XG5cblx0XHRcdFx0Jjpob3ZlciB7XG5cdFx0XHRcdFx0Y29sb3I6IHZhcigtLWl0LWNvbG9yLWJyYW5kKTtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pdC1jb2xvci13aGl0ZSk7XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0QG1lZGlhIChob3Zlcjogbm9uZSkge1xuXG5cdFx0XHRcdCY6YWN0aXZlIHtcblx0XHRcdFx0XHRjb2xvcjogdmFyKC0taXQtY29sb3ItYnJhbmQpO1xuXHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWl0LWNvbG9yLXdoaXRlKTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHQmOmZvY3VzLXZpc2libGUge1xuXHRcdFx0XHRvdXRsaW5lLWNvbG9yOiB2YXIoLS1pdC1jb2xvci13aGl0ZSk7XG5cdFx0XHR9XG5cblx0XHRcdCYuaXMtZGlzYWJsZWQge1xuXHRcdFx0XHRjb2xvcjogdmFyKC0taXQtY29sb3ItYnJhbmQtZ3JleWVkKTtcblx0XHRcdFx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1pdC1jb2xvci1icmFuZC1ncmV5ZWQpO1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pdC1jb2xvci1iYWNrZ3JvdW5kKTtcblxuXHRcdFx0XHQmOmZvY3VzLXZpc2libGUge1xuXHRcdFx0XHRcdG91dGxpbmUtY29sb3I6IHZhcigtLWl0LWNvbG9yLWJyYW5kLWdyZXllZCk7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQmLS10ZXJ0aWFyeSB7XG5cblx0XHRAZXh0ZW5kICVpdC1idXR0b24gIW9wdGlvbmFsO1xuXHRcdHBhZGRpbmc6IDA7XG5cdFx0Ym9yZGVyOiBub25lO1xuXHRcdGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuXHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0Y29sb3I6IHZhcigtLWl0LWNvbG9yLWJyYW5kKTtcblx0XHRkaXNwbGF5OiBpbmxpbmUtZmxleDtcblx0XHRib3JkZXItcmFkaXVzOiAwO1xuXHRcdHRyYW5zaXRpb246IGNvbG9yIHZhcigtLWl0LXRyYW5zaXRpb24pO1xuXG5cdFx0Jjpub3QoLmlzLWxvYWRpbmcpIHtcblxuXHRcdFx0JjphZnRlciB7XG5cdFx0XHRcdGNvbnRlbnQ6ICcnO1xuXHRcdFx0XHRsaW5lLWhlaWdodDogMDtcblx0XHRcdFx0d2lkdGg6IDEuMTI1cmVtO1xuXHRcdFx0XHRoZWlnaHQ6IDEuMTI1cmVtO1xuXHRcdFx0XHR0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0taXQtdHJhbnNpdGlvbik7XG5cdFx0XHRcdG1hc2s6IHVybCgnZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyB3aWR0aD1cXCcxOFxcJyBoZWlnaHQ9XFwnMThcXCcgdmlld0JveD1cXCcwIDAgMTggMThcXCcgZmlsbD1cXCdub25lXFwnIHhtbG5zPVxcJ2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXFwnJTNFJTNDcGF0aCBmaWxsLXJ1bGU9XFwnZXZlbm9kZFxcJyBjbGlwLXJ1bGU9XFwnZXZlbm9kZFxcJyBkPVxcJ004Ljg0NDc1IDQuMzQ0NzVDOC43NzUwNCA0LjQxNDM0IDguNzE5NzQgNC40OTcgOC42ODIgNC41ODc5OEM4LjY0NDI3IDQuNjc4OTcgOC42MjQ4NSA0Ljc3NjUgOC42MjQ4NSA0Ljg3NUM4LjYyNDg1IDQuOTczNSA4LjY0NDI3IDUuMDcxMDQgOC42ODIgNS4xNjIwMkM4LjcxOTc0IDUuMjUzMDEgOC43NzUwNCA1LjMzNTY2IDguODQ0NzUgNS40MDUyNUwxMS42ODk1IDguMjVINC41QzQuMzAxMDkgOC4yNSA0LjExMDMyIDguMzI5MDIgMy45Njk2NyA4LjQ2OTY3QzMuODI5MDIgOC42MTAzMiAzLjc1IDguODAxMDkgMy43NSA5QzMuNzUgOS4xOTg5MSAzLjgyOTAyIDkuMzg5NjggMy45Njk2NyA5LjUzMDMzQzQuMTEwMzIgOS42NzA5OCA0LjMwMTA5IDkuNzUgNC41IDkuNzVIMTEuNjg5NUw4Ljg0NDc1IDEyLjU5NDhDOC43NzUwNCAxMi42NjQzIDguNzE5NzQgMTIuNzQ3IDguNjgyIDEyLjgzOEM4LjY0NDI3IDEyLjkyOSA4LjYyNDg1IDEzLjAyNjUgOC42MjQ4NSAxMy4xMjVDOC42MjQ4NSAxMy4yMjM1IDguNjQ0MjcgMTMuMzIxIDguNjgyIDEzLjQxMkM4LjcxOTc0IDEzLjUwMyA4Ljc3NTA0IDEzLjU4NTcgOC44NDQ3NSAxMy42NTUzQzkuMTM3MjUgMTMuOTQ3OCA5LjYxMjc1IDEzLjk0NzggOS45MDYgMTMuNjU1M0wxNC4wMzAyIDkuNTMwMjVDMTQuMTY2MSA5LjM5NDk1IDE0LjI0NDcgOS4yMTI2NSAxNC4yNSA5LjAyMVY4Ljk3ODI1QzE0LjI0NDYgOC43ODY4NSAxNC4xNjYgOC42MDQ4MiAxNC4wMzAyIDguNDY5NzVMOS45MDYgNC4zNDQ3NUM5LjgzNjM0IDQuMjc1MDIgOS43NTM2MyA0LjIxOTcgOS42NjI1OCA0LjE4MTk2QzkuNTcxNTMgNC4xNDQyMSA5LjQ3Mzk0IDQuMTI0NzkgOS4zNzUzNyA0LjEyNDc5QzkuMjc2ODEgNC4xMjQ3OSA5LjE3OTIyIDQuMTQ0MjEgOS4wODgxNyA0LjE4MTk2QzguOTk3MTIgNC4yMTk3IDguOTE0NCA0LjI3NTAyIDguODQ0NzUgNC4zNDQ3NVpcXCcgZmlsbD1cXCclMjMyNTQ0NUFcXCcvJTNFJTNDL3N2ZyUzRSUwQScpIG5vLXJlcGVhdCBjZW50ZXI7XG5cdFx0XHRcdG1hc2stc2l6ZTogY29udGFpbjtcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogY3VycmVudGNvbG9yO1xuXHRcdFx0fVxuXG5cdFx0XHQmOmhvdmVyIHtcblxuXHRcdFx0XHQmOmFmdGVyIHtcblx0XHRcdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMC4zNzVyZW0pO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Jjpmb2N1cy12aXNpYmxlIHtcblx0XHRcdG91dGxpbmU6IG5vbmU7XG5cblx0XHRcdCY6YmVmb3JlIHtcblx0XHRcdFx0Y29udGVudDogJyc7XG5cdFx0XHRcdHdpZHRoOiBjYWxjKDEwMCUgLSAxLjYyNXJlbSk7XG5cdFx0XHRcdGhlaWdodDogMnB4O1xuXHRcdFx0XHRiYWNrZ3JvdW5kOiB2YXIoLS1pdC1jb2xvci1icmFuZCk7XG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0bGVmdDogMDtcblx0XHRcdFx0Ym90dG9tOiAwO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdCYuaXMtZGlzYWJsZWQge1xuXHRcdFx0cG9pbnRlci1ldmVudHM6IG5vbmU7XG5cblx0XHRcdCY6bm90KC5pcy1sb2FkaW5nKSB7XG5cdFx0XHRcdGNvbG9yOiB2YXIoLS1pdC1jb2xvci1ib3JkZXIpO1xuXG5cdFx0XHRcdCY6Zm9jdXMtdmlzaWJsZSB7XG5cblx0XHRcdFx0XHQmOmJlZm9yZSB7XG5cdFx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pdC1jb2xvci1ib3JkZXIpO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC5pdC1pbnRyby0tZnVsbHdpZHRoICYsXG5cdFx0Lmhhcy1iZy1kYXJrICYge1xuXHRcdFx0Y29sb3I6IHZhcigtLWl0LWNvbG9yLXdoaXRlKTtcblxuXHRcdFx0Jjpmb2N1cy12aXNpYmxlIHtcblxuXHRcdFx0XHQmOmJlZm9yZSB7XG5cdFx0XHRcdFx0YmFja2dyb3VuZDogdmFyKC0taXQtY29sb3Itd2hpdGUpO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0LyogLS0gQnV0dG9uIHNpemVzIC0tICovXG5cdCYtLXNtIHtcblxuXHRcdHRleHQtdHJhbnNmb3JtOiBub25lO1xuXHRcdGZvbnQtc2l6ZTogdmFyKC0taXQtc2l6ZS14LXNtYWxsKTtcblx0XHRsZXR0ZXItc3BhY2luZzogMC4xZW07XG5cblx0XHQmOm5vdCguaXQtYnV0dG9uLS10ZXJ0aWFyeSkge1xuXHRcdFx0cGFkZGluZzogMC41cmVtIDEuNzVyZW07XG5cdFx0fVxuXG5cdFx0Ji5pcy1sb2FkaW5nIHtcblxuXHRcdFx0JjphZnRlciB7XG5cdFx0XHRcdHdpZHRoOiAxcmVtO1xuXHRcdFx0XHRiYWNrZ3JvdW5kOiByYWRpYWwtZ3JhZGllbnQoZmFydGhlc3Qtc2lkZSwgY3VycmVudENvbG9yIDk0JSwgIzAwMDApIHRvcC8ycHggMnB4IG5vLXJlcGVhdCwgY29uaWMtZ3JhZGllbnQoIzAwMDAgMzAlLCBjdXJyZW50Q29sb3IpO1xuXHRcdFx0XHQtd2Via2l0LW1hc2s6IHJhZGlhbC1ncmFkaWVudChmYXJ0aGVzdC1zaWRlLCB0cmFuc3BhcmVudCAje2NhbGMoMTAwJSAtIDJweCl9LCAjMDAwIDApO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC8qIC0tIEZ1bGwgd2lkdGggb24gbW9iaWxlIC0tICovXG5cdCY6bm90KC5pdC1idXR0b24tLXRlcnRpYXJ5KTpub3QoLmhhcy1pY29uKSB7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdH1cblxuXHRAaW5jbHVkZSBzLm1pbihzLiR4cykge1xuXG5cdFx0Jjpub3QoLml0LWJ1dHRvbi0tdGVydGlhcnkpOm5vdCguaGFzLWljb24pIHtcblx0XHRcdHdpZHRoOiBhdXRvO1xuXHRcdH1cblx0fVxufVxuXG4laXQtYnV0dG9uLWdyb3VwIHtcblx0ZGlzcGxheTogZmxleDtcblx0ZmxleC13cmFwOiB3cmFwO1xuXHRnYXA6IHZhcigtLWl0LXNwYWNpbmctZGVmYXVsdCk7XG5cdHdpZHRoOiAxMDAlO1xuXG5cdEBpbmNsdWRlIHMubWluKHMuJHhzKSB7XG5cdFx0d2lkdGg6IGF1dG87XG5cdH1cbn1cblxuLmJ1dHRvbixcbi53Yy1ibG9jay1jb21wb25lbnRzLWJ1dHRvbiB7XG5cdEBleHRlbmQgJWl0LWJ1dHRvbiAhb3B0aW9uYWw7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0Ym9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50O1xuXHRmb250LWZhbWlseTogaW5oZXJpdDtcblx0Ym9yZGVyOiAxcHggc29saWQgIWltcG9ydGFudDtcblx0Zm9udC1zaXplOiB2YXIoLS1pdC1zaXplLXNtYWxsKTtcblx0Zm9udC13ZWlnaHQ6IDUwMDtcblx0Ly9sZXR0ZXItc3BhY2luZzogMC4xNWVtO1xuXHRsaW5lLWhlaWdodDogMTtcblx0cGFkZGluZzogcy5yZW0oMjApIHMucmVtKDMwKTtcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHR0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcblx0dHJhbnNpdGlvbjogY29sb3IgdmFyKC0taXQtdHJhbnNpdGlvbiksIGJvcmRlciB2YXIoLS1pdC10cmFuc2l0aW9uKSwgYmFja2dyb3VuZCB2YXIoLS1pdC10cmFuc2l0aW9uKTtcblx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRkaXNwbGF5OiBpbmxpbmUtZmxleDtcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGdhcDogMC41cmVtO1xuXHRjdXJzb3I6IHBvaW50ZXI7XG5cdGJhY2tkcm9wLWZpbHRlcjogYmx1cig0OHB4KTtcblx0Y29sb3I6IHZhcigtLWl0LWNvbG9yLXRleHQpICFpbXBvcnRhbnQ7XG5cdGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG5cdGJvcmRlci1jb2xvcjogY3VycmVudGNvbG9yO1xuXHRib3gtc2hhZG93OiAwIDRweCA0cHggMCAjMjIyMjIyMjYgaW5zZXQgIWltcG9ydGFudDtcblxuXHQmID4gc3ZnIHtcblx0XHRjb2xvcjogY3VycmVudGNvbG9yO1xuXHR9XG5cblx0Jjpob3ZlciB7XG5cdFx0Y29sb3I6IHZhcigtLWl0LWNvbG9yLXdoaXRlKSAhaW1wb3J0YW50O1xuXHRcdGJhY2tncm91bmQ6IHZhcigtLWl0LWNvbG9yLXRleHQpICFpbXBvcnRhbnQ7XG5cdH1cbn1cbiIsIi8qKlxuICogRG8gbm90IEB1c2UgZmlsZXMgd2l0aCBhY3R1YWwgc2NzcyBjb2RlIGluIHRoaXMgZmlsZSwgYXMgaXQgd2lsbCBjb21waWxlIGNzcyBjb2RlIHR3aWNlLlxuICogQXMgdGhpcyBmaWxlIGdvaW5nIHRvIGJlIGFuIHN0YW5kYWxvbmUgY3NzIGZpbGUuXG4gKi9cbkB1c2UgXCIuLi8uLi8uLi8uLi9hc3NldHMvc2Nzcy9nbG9iYWwvMC1zZXR0aW5ncy9zZXR0aW5nc1wiIGFzIHM7XG5AdXNlIFwiLi4vLi4vLi4vLi4vYXNzZXRzL3Njc3MvZ2xvYmFsLzEtZ2VuZXJpYy8xLTEtYmFzZS9idXR0b25zLWJhc2VcIjtcbkB1c2UgXCIuLi9jb21wb25lbnRzL2FuaW1hdGlvbnNcIjtcblxuJWFkZC10by1jYXJ0IHtcblxuXHQmLmFkZF90b19jYXJ0X2J1dHRvbiB7XG5cdFx0bWFyZ2luLXRvcDogMCAhaW1wb3J0YW50O1xuXG5cdFx0Jjo6YWZ0ZXIge1xuXHRcdFx0Y29udGVudDogXCJcIjtcblx0XHRcdHBvc2l0aW9uOiBzdGF0aWMgIWltcG9ydGFudDtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0d2lkdGg6IDEuMjVyZW07XG5cdFx0XHRoZWlnaHQ6IDEuMjVyZW07XG5cdFx0XHRtYXJnaW46IDA7XG5cdFx0XHRiYWNrZ3JvdW5kOiBjdXJyZW50Y29sb3I7XG5cdFx0XHRtYXNrOiB1cmwoXCIuLi9pbWcvd29vLWNhcnQuc3ZnXCIpIG5vLXJlcGVhdCBjZW50ZXIgLyBjb250YWluO1xuXHRcdH1cblxuXHRcdCYubG9hZGluZyB7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pdC1jb2xvci1icmFuZCk7XG5cdFx0XHRib3JkZXItY29sb3I6IHZhcigtLWl0LWNvbG9yLWJyYW5kKTtcblx0XHRcdGNvbG9yOiB2YXIoLS1pdC1jb2xvci13aGl0ZSk7XG5cdFx0XHRvcGFjaXR5OiAxO1xuXG5cdFx0XHQmOjphZnRlciB7XG5cdFx0XHRcdG1hc2s6IHVybChcIi4uL2ltZy93b28tbG9hZGluZy5zdmdcIikgbm8tcmVwZWF0IGNlbnRlciAvIGNvbnRhaW47XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Ji5hZGRlZCB7XG5cdFx0XHRhbmltYXRpb246IGFkZGVkU3RhdGUgM3M7XG5cblx0XHRcdCY6OmFmdGVyIHtcblx0XHRcdFx0YW5pbWF0aW9uOiBpY29uQ2hhbmdlIDNzO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdCYucHJvZHVjdF90eXBlX2V4dGVybmFsLFxuXHQmLnByb2R1Y3RfdHlwZV9ncm91cGVkLFxuXHQmLnByb2R1Y3Rfb3V0X29mX3N0b2NrIHtcblxuXHRcdEBleHRlbmQgLmFkZF90b19jYXJ0X2J1dHRvbjtcblxuXHRcdCY6YWZ0ZXIge1xuXHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHR9XG5cdH1cbn1cblxuJWFkZC10by1jYXJ0LWxnIHtcblxuXHRAaW5jbHVkZSBzLm1pbihzLiRzbSkge1xuXHRcdGdhcDogMDtcblxuXHRcdCYuYWRkX3RvX2NhcnRfYnV0dG9uIHtcblx0XHRcdHBhZGRpbmc6IDEuMTI1cmVtO1xuXHRcdFx0Zm9udC1zaXplOiAwO1xuXG5cdFx0XHQmOmFmdGVyIHtcblx0XHRcdFx0d2lkdGg6IDEuNzVyZW07XG5cdFx0XHRcdGhlaWdodDogMS43NXJlbTtcblx0XHRcdH1cblxuXHRcdFx0Ji5wcm9kdWN0X3R5cGVfdmFyaWFibGUge1xuXG5cdFx0XHRcdCY6OmFmdGVyIHtcblx0XHRcdFx0XHRtYXNrOiB1cmwoXCIuLi9pbWcvd29vLWFycm93LnN2Z1wiKSBuby1yZXBlYXQgY2VudGVyIC8gY29udGFpbjtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHQmLnByb2R1Y3RfdHlwZV9leHRlcm5hbCxcblx0XHRcdCYucHJvZHVjdF90eXBlX2dyb3VwZWQsXG5cdFx0XHQmLnByb2R1Y3Rfb3V0X29mX3N0b2NrIHtcblxuXHRcdFx0XHQmOjphZnRlciB7XG5cdFx0XHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0XHRcdG1hc2s6IHVybChcIi4uL2ltZy93b28tYXJyb3cuc3ZnXCIpIG5vLXJlcGVhdCBjZW50ZXIgLyBjb250YWluO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG4iLCIkY2hlY2staWNvbjogdXJsKFwiLi4vaW1nL3dvby1jaGVjay5zdmdcIik7XG4kY2FydC1pY29uOiB1cmwoXCIuLi9pbWcvd29vLWNhcnQuc3ZnXCIpO1xuXG5Aa2V5ZnJhbWVzIGNhcnRMaW5rIHtcblxuXHQwJSwgOTAlIHtcblx0XHRwb2ludGVyLWV2ZW50czogYXV0bztcblx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdH1cblxuXHQxMDAlIHtcblx0XHRwb2ludGVyLWV2ZW50czogbm9uZTtcblx0XHRkaXNwbGF5OiBub25lO1xuXHR9XG59XG5cbkBrZXlmcmFtZXMgYWRkZWRTdGF0ZSB7XG5cblx0MCUsIDkwJSB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0taXQtY29sb3ItYnJhbmQpO1xuXHRcdGJvcmRlci1jb2xvcjogdmFyKC0taXQtY29sb3ItYnJhbmQpO1xuXHRcdGNvbG9yOiB2YXIoLS1pdC1jb2xvci13aGl0ZSk7XG5cdH1cblxuXHQxMDAlIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pdC1jb2xvci13aGl0ZSk7XG5cdFx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1pdC1jb2xvci1icmFuZCk7XG5cdFx0Y29sb3I6IHZhcigtLWl0LWNvbG9yLWJyYW5kKTtcblx0fVxufVxuXG5Aa2V5ZnJhbWVzIGljb25DaGFuZ2Uge1xuXG5cdDAlIHtcblx0XHRtYXNrOiAkY2hlY2staWNvbiBuby1yZXBlYXQgY2VudGVyIC8gY29udGFpbjtcblx0XHR0cmFuc2Zvcm06IHNjYWxlKDApO1xuXHR9XG5cblx0NSUge1xuXHRcdG1hc2s6ICRjaGVjay1pY29uIG5vLXJlcGVhdCBjZW50ZXIgLyBjb250YWluO1xuXHRcdHRyYW5zZm9ybTogc2NhbGUoMS4yKTtcblx0fVxuXG5cdDEwJSwgOTAlIHtcblx0XHRtYXNrOiAkY2hlY2staWNvbiBuby1yZXBlYXQgY2VudGVyIC8gY29udGFpbjtcblx0XHR0cmFuc2Zvcm06IHNjYWxlKDEpO1xuXHR9XG5cblx0MTAwJSB7XG5cdFx0bWFzazogJGNhcnQtaWNvbiBuby1yZXBlYXQgY2VudGVyIC8gY29udGFpbjtcblx0XHR0cmFuc2Zvcm06IHNjYWxlKDEpO1xuXHR9XG59XG4iLCIvKipcbiAqIERvIG5vdCBAdXNlIGZpbGVzIHdpdGggYWN0dWFsIHNjc3MgY29kZSBpbiB0aGlzIGZpbGUsIGFzIGl0IHdpbGwgY29tcGlsZSBjc3MgY29kZSB0d2ljZS5cbiAqIEFzIHRoaXMgZmlsZSBnb2luZyB0byBiZSBhbiBzdGFuZGFsb25lIGNzcyBmaWxlLlxuICovXG5AdXNlIFwiLi4vLi4vLi4vLi4vYXNzZXRzL3Njc3MvZ2xvYmFsLzAtc2V0dGluZ3Mvc2V0dGluZ3NcIiBhcyBzO1xuQHVzZSBcIi4uLy4uLy4uLy4uL2Fzc2V0cy9zY3NzL2dsb2JhbC8xLWdlbmVyaWMvMS0xLWJhc2UvYnV0dG9ucy1iYXNlXCI7XG5cbi53b29jb21tZXJjZSB7XG5cblx0Lndvb2NvbW1lcmNlLW1lc3NhZ2Uge1xuXHRcdGJvcmRlci1jb2xvcjogdmFyKC0taXQtY29sb3Itc3VjY2Vzcyk7XG5cblx0XHQmOmJlZm9yZSB7XG5cdFx0XHRjb250ZW50OiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnIHdpZHRoPScyNCcgaGVpZ2h0PScyNCcgdmlld0JveD0nMCAwIDI0IDI0JyBmaWxsPSdub25lJyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnJTNFJTNDcGF0aCBmaWxsLXJ1bGU9J2V2ZW5vZGQnIGNsaXAtcnVsZT0nZXZlbm9kZCcgZD0nTTIyIDEyQzIyIDE3LjUyMjggMTcuNTIyOCAyMiAxMiAyMkM2LjQ3NzE1IDIyIDIgMTcuNTIyOCAyIDEyQzIgNi40NzcxNSA2LjQ3NzE1IDIgMTIgMkMxNy41MjI4IDIgMjIgNi40NzcxNSAyMiAxMlpNOS4zODI0IDExLjA2ODlDOS41MDQ0MSAxMS4xMjEzIDkuNjE0NzUgMTEuMTk3NSA5LjcwNyAxMS4yOTNMMTEgMTIuNTg2TDE0LjI5MyA5LjI5MzAyQzE0LjM4NTIgOS4xOTc1MSAxNC40OTU2IDkuMTIxMzMgMTQuNjE3NiA5LjA2ODkyQzE0LjczOTYgOS4wMTY1MSAxNC44NzA4IDguOTg4OTIgMTUuMDAzNiA4Ljk4Nzc3QzE1LjEzNjQgOC45ODY2MiAxNS4yNjgxIDkuMDExOTIgMTUuMzkxIDkuMDYyMkMxNS41MTM4IDkuMTEyNDggMTUuNjI1NSA5LjE4NjczIDE1LjcxOTQgOS4yODA2M0MxNS44MTMzIDkuMzc0NTIgMTUuODg3NSA5LjQ4NjE3IDE1LjkzNzggOS42MDkwN0MxNS45ODgxIDkuNzMxOTYgMTYuMDEzNCA5Ljg2MzY0IDE2LjAxMjIgOS45OTY0MkMxNi4wMTExIDEwLjEyOTIgMTUuOTgzNSAxMC4yNjA0IDE1LjkzMTEgMTAuMzgyNEMxNS44Nzg3IDEwLjUwNDQgMTUuODAyNSAxMC42MTQ4IDE1LjcwNyAxMC43MDdMMTEuNzA3IDE0LjcwN0MxMS41MTk1IDE0Ljg5NDUgMTEuMjY1MiAxNC45OTk4IDExIDE0Ljk5OThDMTAuNzM0OCAxNC45OTk4IDEwLjQ4MDUgMTQuODk0NSAxMC4yOTMgMTQuNzA3TDguMjkzIDEyLjcwN0M4LjE5NzQ5IDEyLjYxNDggOC4xMjEzIDEyLjUwNDQgOC4wNjg5IDEyLjM4MjRDOC4wMTY0OSAxMi4yNjA0IDcuOTg4OSAxMi4xMjkyIDcuOTg3NzUgMTEuOTk2NEM3Ljk4NjU5IDExLjg2MzYgOC4wMTE5IDExLjczMiA4LjA2MjE4IDExLjYwOTFDOC4xMTI0NiAxMS40ODYyIDguMTg2NzEgMTEuMzc0NSA4LjI4MDYgMTEuMjgwNkM4LjM3NDUgMTEuMTg2NyA4LjQ4NjE1IDExLjExMjUgOC42MDkwNCAxMS4wNjIyQzguNzMxOTQgMTEuMDExOSA4Ljg2MzYyIDEwLjk4NjYgOC45OTY0IDEwLjk4NzhDOS4xMjkxOCAxMC45ODg5IDkuMjYwNCAxMS4wMTY1IDkuMzgyNCAxMS4wNjg5WicgZmlsbD0nJTIzMDA4MDAwJy8lM0UlM0Mvc3ZnJTNFJTBBXCIpO1xuXHRcdH1cblx0fVxuXG5cdC53b29jb21tZXJjZS1lcnJvciB7XG5cdFx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1pdC1jb2xvci1lcnJvcik7XG5cblx0XHQmOmJlZm9yZSB7XG5cdFx0XHRjb250ZW50OiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnIHdpZHRoPScyNCcgaGVpZ2h0PScyNCcgdmlld0JveD0nMCAwIDI0IDI0JyBmaWxsPSdub25lJyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnJTNFJTNDcGF0aCBmaWxsLXJ1bGU9J2V2ZW5vZGQnIGNsaXAtcnVsZT0nZXZlbm9kZCcgZD0nTTEyIDIyQzE3LjUyMjggMjIgMjIgMTcuNTIyOCAyMiAxMkMyMiA2LjQ3NzE1IDE3LjUyMjggMiAxMiAyQzYuNDc3MTUgMiAyIDYuNDc3MTUgMiAxMkMyIDE3LjUyMjggNi40NzcxNSAyMiAxMiAyMlpNMTAuNTkxOCAxMi4wMTU0TDkuMTE3IDEzLjQ5OUM5LjAyMTc5IDEzLjU5MTUgOC45NDU5NSAxMy43MDIxIDguODkzOTIgMTMuODI0MkM4Ljg0MTg4IDEzLjk0NjQgOC44MTQ2OSAxNC4wNzc2IDguODEzOTMgMTQuMjEwNEM4LjgxMzE3IDE0LjM0MzIgOC44Mzg4NSAxNC40NzQ3IDguODg5NDggMTQuNTk3NUM4Ljk0MDEgMTQuNzIwMiA5LjAxNDY2IDE0LjgzMTYgOS4xMDg4MSAxNC45MjUyQzkuMjAyOTUgMTUuMDE4OSA5LjMxNDc5IDE1LjA5MjggOS40Mzc4MSAxNS4xNDI3QzkuNTYwODMgMTUuMTkyNyA5LjY5MjU2IDE1LjIxNzYgOS44MjUzMSAxNS4yMTYxQzkuOTU4MDcgMTUuMjE0NiAxMC4wODkyIDE1LjE4NjYgMTAuMjExIDE1LjEzMzlDMTAuMzMyOSAxNS4wODEyIDEwLjQ0MyAxNS4wMDQ3IDEwLjUzNSAxNC45MDlMMTIuMDAyNyAxMy40MzI1TDEzLjQ0MiAxNC44NzhDMTMuNjI5MSAxNS4wNjYxIDEzLjg4MzMgMTUuMTcyMSAxNC4xNDg1IDE1LjE3MjdDMTQuNDEzOCAxNS4xNzM0IDE0LjY2ODUgMTUuMDY4NiAxNC44NTY1IDE0Ljg4MTVDMTUuMDQ0NSAxNC42OTQ0IDE1LjE1MDUgMTQuNDQwMyAxNS4xNTEyIDE0LjE3NUMxNS4xNTE5IDEzLjkwOTcgMTUuMDQ3MSAxMy42NTUxIDE0Ljg2IDEzLjQ2N0wxMy40MTI3IDEyLjAxNDFMMTQuODk1IDEwLjUyM0MxNS4wNzY3IDEwLjMzMzkgMTUuMTc2OCAxMC4wODEgMTUuMTczOCA5LjgxODc0QzE1LjE3MDkgOS41NTY1MSAxNS4wNjUgOS4zMDU5NSAxNC44NzkgOS4xMjEwNEMxNC42OTMxIDguOTM2MTIgMTQuNDQxOSA4LjgzMTY2IDE0LjE3OTcgOC44MzAxNkMxMy45MTc0IDguODI4NjUgMTMuNjY1MSA4LjkzMDIyIDEzLjQ3NyA5LjExMjk4TDEyLjAwMTUgMTAuNTk3M0wxMC41IDkuMDkwMDJDMTAuMzExOCA4LjkwNzQyIDEwLjA1OTQgOC44MDYwNiA5Ljc5NzE3IDguODA3NzZDOS41MzQ5NSA4LjgwOTQ3IDkuMjgzODkgOC45MTQxIDkuMDk4MDcgOS4wOTkxM0M4LjkxMjI1IDkuMjg0MTYgOC44MDY1NSA5LjUzNDc4IDguODAzNzMgOS43OTY5OUM4LjgwMDkxIDEwLjA1OTIgOC45MDEyMSAxMC4zMTIgOS4wODMgMTAuNTAxTDEwLjU5MTggMTIuMDE1NFonIGZpbGw9JyUyM0U4NDkwMScvJTNFJTNDL3N2ZyUzRSUwQVwiKTtcblx0XHR9XG5cblx0XHQuYnV0dG9uIHtcblxuXHRcdFx0QGV4dGVuZCAlaXQtYnV0dG9uLS1hY2NlbnQgIW9wdGlvbmFsO1xuXHRcdFx0QGV4dGVuZCAlaXQtYnV0dG9uLS1zbSAhb3B0aW9uYWw7XG5cdFx0XHR3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuXHRcdH1cblx0fVxuXG5cdC53b29jb21tZXJjZS1pbmZvIHtcblx0XHRib3JkZXItY29sb3I6IHZhcigtLWl0LWNvbG9yLWluZm8pO1xuXG5cdFx0JjpiZWZvcmUge1xuXHRcdFx0Y29udGVudDogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyB3aWR0aD0nMjQnIGhlaWdodD0nMjQnIHZpZXdCb3g9JzAgMCAyNCAyNCcgZmlsbD0nbm9uZScgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyUzRSUzQ3BhdGggZmlsbC1ydWxlPSdldmVub2RkJyBjbGlwLXJ1bGU9J2V2ZW5vZGQnIGQ9J00xMiAyMkM2LjQ3NyAyMiAyIDE3LjUyMyAyIDEyQzIgNi40NzcgNi40NzcgMiAxMiAyQzE3LjUyMyAyIDIyIDYuNDc3IDIyIDEyQzIyIDE3LjUyMyAxNy41MjMgMjIgMTIgMjJaTTEzIDhDMTMgOC41NTIyOCAxMi41NTIzIDkgMTIgOUMxMS40NDc3IDkgMTEgOC41NTIyOCAxMSA4QzExIDcuNDQ3NzIgMTEuNDQ3NyA3IDEyIDdDMTIuNTUyMyA3IDEzIDcuNDQ3NzIgMTMgOFpNMTIgMTBDMTIuNTUyMyAxMCAxMyAxMC40NDc3IDEzIDExVjE2QzEzIDE2LjU1MjMgMTIuNTUyMyAxNyAxMiAxN0MxMS40NDc3IDE3IDExIDE2LjU1MjMgMTEgMTZWMTFDMTEgMTAuNDQ3NyAxMS40NDc3IDEwIDEyIDEwWicgZmlsbD0nJTIzMDA4NkQ0Jy8lM0UlM0Mvc3ZnJTNFJTBBXCIpO1xuXHRcdH1cblx0fVxuXG5cdC53b29jb21tZXJjZS1tZXNzYWdlLFxuXHQud29vY29tbWVyY2UtaW5mbyB7XG5cblx0XHQuYnV0dG9uLFxuXHRcdFtyb2xlPVwiYnV0dG9uXCJdIHtcblxuXHRcdFx0QGV4dGVuZCAlaXQtYnV0dG9uLS1vdXRsaW5lICFvcHRpb25hbDtcblx0XHRcdEBleHRlbmQgJWl0LWJ1dHRvbi0tc20gIW9wdGlvbmFsO1xuXHRcdFx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1pdC1jb2xvci1ibGFjayk7XG5cdFx0XHRjb2xvcjogdmFyKC0taXQtY29sb3ItYmxhY2spO1xuXHRcdFx0d2lkdGg6IGF1dG8gIWltcG9ydGFudDtcblxuXHRcdFx0Jjpob3ZlciB7XG5cdFx0XHRcdGJhY2tncm91bmQ6IHZhcigtLWl0LWNvbG9yLWJsYWNrKTtcblx0XHRcdFx0Y29sb3I6IHZhcigtLWl0LWNvbG9yLXdoaXRlKTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQud29vY29tbWVyY2UtbWVzc2FnZSxcblx0Lndvb2NvbW1lcmNlLWVycm9yLFxuXHQud29vY29tbWVyY2UtaW5mbyB7XG5cdFx0Y29sb3I6IHZhcigtLWl0LWNvbG9yLXRleHQpO1xuXHRcdGJvcmRlci13aWR0aDogMXB4O1xuXHRcdGJvcmRlci1zdHlsZTogc29saWQ7XG5cdFx0Ym9yZGVyLXJhZGl1czogdmFyKC0taXQtYm9yZGVyLXJhZGl1cyk7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0taXQtY29sb3ItYmFja2dyb3VuZCk7XG5cdFx0cGFkZGluZzogdmFyKC0taXQtc3BhY2luZy1kZWZhdWx0LWhhbGYpIHZhcigtLWl0LXNwYWNpbmctZGVmYXVsdC1oYWxmKSB2YXIoLS1pdC1zcGFjaW5nLWRlZmF1bHQtaGFsZikgcy5yZW0oNTIpO1xuXHRcdGRpc3BsYXk6IGdyaWQ7XG5cdFx0anVzdGlmeS1pdGVtczogc3RhcnQ7XG5cdFx0YWxpZ24taXRlbXM6IHN0YXJ0O1xuXHRcdG1hcmdpbi1ib3R0b206IHZhcigtLWl0LXNwYWNpbmctY29udGVudCk7XG5cblx0XHQud29vY29tbWVyY2UtYWNjb3VudCAmIHtcblx0XHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdFx0fVxuXG5cdFx0bGk6aGFzKC5idXR0b24pIHtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRhbGlnbi1pdGVtczogZmxleC1zdGFydDtcblx0XHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcblx0XHRcdHBhZGRpbmctdG9wOiAuMzc1cmVtO1xuXHRcdFx0Y29sdW1uLWdhcDogdmFyKC0taXQtc3BhY2luZy1kZWZhdWx0KTtcblxuXHRcdFx0LmJ1dHRvbiB7XG5cdFx0XHRcdG1hcmdpbi10b3A6IC0wLjM3NXJlbTtcblx0XHRcdFx0ZmxleC1zaHJpbms6IDA7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0bGk6bm90KDpoYXMoLmJ1dHRvbikpIHtcblx0XHRcdGdyaWQtY29sdW1uOiBzcGFuIDI7XG5cdFx0fVxuXG5cdFx0JjpiZWZvcmUge1xuXHRcdFx0dG9wOiBjYWxjKHZhcigtLWl0LXNwYWNpbmctZGVmYXVsdC1oYWxmKSk7XG5cdFx0XHRsZWZ0OiBjYWxjKHZhcigtLWl0LXNwYWNpbmctZGVmYXVsdC1oYWxmKSk7XG5cdFx0XHR3aWR0aDogMS41cmVtO1xuXHRcdFx0aGVpZ2h0OiAxLjVyZW07XG5cdFx0fVxuXG5cdFx0JjphZnRlciB7XG5cdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdH1cblxuXHRcdC5idXR0b24sXG5cdFx0W3JvbGU9XCJidXR0b25cIl0ge1xuXHRcdFx0bWFyZ2luLXRvcDogLjVyZW07XG5cdFx0fVxuXG5cdFx0LmJ1dHRvbiB7XG5cdFx0XHRmbG9hdDogbm9uZTtcblx0XHR9XG5cdH1cblxuXHQud29vY29tbWVyY2Utbm90aWNlcy13cmFwcGVyIHtcblxuXHRcdCY6ZW1wdHkge1xuXHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHR9XG5cdH1cblxuXHRAaW5jbHVkZSBzLm1pbihzLiRzbSkge1xuXG5cdFx0Lndvb2NvbW1lcmNlLW1lc3NhZ2UsXG5cdFx0Lndvb2NvbW1lcmNlLWVycm9yLFxuXHRcdC53b29jb21tZXJjZS1pbmZvIHtcblx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0XHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciBhdXRvO1xuXG5cdFx0XHQmOmhhcyguYnV0dG9uKSxcblx0XHRcdCY6aGFzKFtyb2xlPVwiYnV0dG9uXCJdKSxcblx0XHRcdCY6aGFzKGxpKTpoYXMoLmJ1dHRvbikge1xuXG5cdFx0XHRcdCY6YmVmb3JlIHtcblx0XHRcdFx0XHR0b3A6IGNhbGModmFyKC0taXQtc3BhY2luZy1kZWZhdWx0LWhhbGYpICsgMC4xNzVyZW0pO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdC5idXR0b24sXG5cdFx0XHRbcm9sZT1cImJ1dHRvblwiXSB7XG5cdFx0XHRcdG1hcmdpbjogMDtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cbiIsIi8qKlxuICogRG8gbm90IEB1c2UgZmlsZXMgd2l0aCBhY3R1YWwgc2NzcyBjb2RlIGluIHRoaXMgZmlsZSwgYXMgaXQgd2lsbCBjb21waWxlIGNzcyBjb2RlIHR3aWNlLlxuICogQXMgdGhpcyBmaWxlIGdvaW5nIHRvIGJlIGFuIHN0YW5kYWxvbmUgY3NzIGZpbGUuXG4gKi9cbkB1c2UgXCIuLi8uLi8uLi8uLi9hc3NldHMvc2Nzcy9nbG9iYWwvMC1zZXR0aW5ncy9zZXR0aW5nc1wiIGFzIHM7XG5cbi53b29jb21tZXJjZSB7XG5cblx0LmNvbDItc2V0IHtcblx0XHRkaXNwbGF5OiBncmlkO1xuXHRcdGFsaWduLWl0ZW1zOiBzdGFydDtcblx0XHRnYXA6IHZhcigtLWl0LXNwYWNpbmctZGVmYXVsdCk7XG5cblx0XHRAaW5jbHVkZSBzLm1pbihzLiRzbSkge1xuXHRcdFx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTtcblx0XHR9XG5cblx0XHQuY29sLTEsXG5cdFx0LmNvbC0yIHtcblx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0ZmxvYXQ6IG5vbmU7XG5cdFx0XHRkaXNwbGF5OiBncmlkO1xuXHRcdFx0Z2FwOiB2YXIoLS1pdC1zcGFjaW5nLWRlZmF1bHQpO1xuXHRcdH1cblxuXHRcdCY6OmJlZm9yZSxcblx0XHQmOjphZnRlciB7XG5cdFx0XHRjb250ZW50OiBub25lO1xuXHRcdH1cblx0fVxufVxuIiwiLyoqXG4gKiBEbyBub3QgQHVzZSBmaWxlcyB3aXRoIGFjdHVhbCBzY3NzIGNvZGUgaW4gdGhpcyBmaWxlLCBhcyBpdCB3aWxsIGNvbXBpbGUgY3NzIGNvZGUgdHdpY2UuXG4gKiBBcyB0aGlzIGZpbGUgZ29pbmcgdG8gYmUgYW4gc3RhbmRhbG9uZSBjc3MgZmlsZS5cbiAqL1xuQHVzZSBcIi4uLy4uLy4uLy4uL2Fzc2V0cy9zY3NzL2dsb2JhbC8wLXNldHRpbmdzL3NldHRpbmdzXCIgYXMgcztcbkB1c2UgJy4uLy4uLy4uLy4uL2Fzc2V0cy9zY3NzL2dsb2JhbC8xLWdlbmVyaWMvMS0zLWZvcm1zL2ZpZWxkLWlucHV0JztcbkB1c2UgJy4uLy4uLy4uLy4uL2Fzc2V0cy9zY3NzL2dsb2JhbC8xLWdlbmVyaWMvMS0zLWZvcm1zL2ZpZWxkLWNoZWNrYm94JztcbkB1c2UgJy4uLy4uLy4uLy4uL2Fzc2V0cy9zY3NzL2dsb2JhbC8xLWdlbmVyaWMvMS0zLWZvcm1zL3NlbGVjdCc7XG5AdXNlICcuLi8uLi8uLi8uLi9hc3NldHMvc2Nzcy9nbG9iYWwvMS1nZW5lcmljLzEtMS1iYXNlL2J1dHRvbnMtYmFzZSc7XG5cbi53b29jb21tZXJjZS1hY2NvdW50LFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IHtcblxuXHQud29vY29tbWVyY2Uge1xuXG5cdFx0Zm9ybSB7XG5cblx0XHRcdGlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxuXHRcdFx0aW5wdXRbdHlwZT1cImVtYWlsXCJdLFxuXHRcdFx0aW5wdXRbdHlwZT1cInVybFwiXSxcblx0XHRcdGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXSxcblx0XHRcdGlucHV0W3R5cGU9XCJzZWFyY2hcIl0sXG5cdFx0XHRpbnB1dFt0eXBlPVwibnVtYmVyXCJdLFxuXHRcdFx0aW5wdXRbdHlwZT1cInRlbFwiXSxcblx0XHRcdGlucHV0W3R5cGU9XCJyYW5nZVwiXSxcblx0XHRcdGlucHV0W3R5cGU9XCJkYXRlXCJdLFxuXHRcdFx0aW5wdXRbdHlwZT1cIm1vbnRoXCJdLFxuXHRcdFx0aW5wdXRbdHlwZT1cIndlZWtcIl0sXG5cdFx0XHRpbnB1dFt0eXBlPVwidGltZVwiXSxcblx0XHRcdGlucHV0W3R5cGU9XCJkYXRldGltZVwiXSxcblx0XHRcdGlucHV0W3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXSxcblx0XHRcdGlucHV0W3R5cGU9XCJjb2xvclwiXSxcblx0XHRcdHRleHRhcmVhLFxuXHRcdFx0LmlucHV0LXRleHQsXG5cdFx0XHQuc2VsZWN0MiAuc2VsZWN0Mi1zZWxlY3Rpb24ge1xuXG5cdFx0XHRcdEBleHRlbmQgJWl0LWlucHV0ICFvcHRpb25hbDtcblx0XHRcdH1cblxuXHRcdFx0LmNoZWNrb3V0LWlubGluZS1lcnJvci1tZXNzYWdlIHtcblx0XHRcdFx0bWFyZ2luLXRvcDogLjVyZW07XG5cdFx0XHR9XG5cblx0XHRcdGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG5cblx0XHRcdFx0QGV4dGVuZCAlaXQtY2hlY2tib3ggIW9wdGlvbmFsO1xuXHRcdFx0fVxuXG5cdFx0XHRsYWJlbCB7XG5cdFx0XHRcdG1hcmdpbi1ib3R0b206IC41cmVtO1xuXHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdFx0Zm9udC1zaXplOiB2YXIoLS1pdC1zaXplLXNtYWxsKTtcblx0XHRcdFx0bGluZS1oZWlnaHQ6IDEuNjtcblxuXHRcdFx0XHQmOmhhcyhpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0pIHtcblxuXHRcdFx0XHRcdEBleHRlbmQgJWl0LWNoZWNrYm94LXdyYXBwZXIgIW9wdGlvbmFsO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdHNlbGVjdCB7XG5cblx0XHRcdFx0QGV4dGVuZCAlaXQtc2VsZWN0ICFvcHRpb25hbDtcblx0XHRcdH1cblxuXHRcdFx0LnNlbGVjdDIge1xuXG5cdFx0XHRcdC5zZWxlY3QyLXNlbGVjdGlvbl9fcmVuZGVyZWQge1xuXHRcdFx0XHRcdHBhZGRpbmc6IDA7XG5cdFx0XHRcdFx0bGluZS1oZWlnaHQ6IDEuNjtcblx0XHRcdFx0XHRmb250LXNpemU6IHZhcigtLWl0LXNpemUtc21hbGwpO1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0Ji5zZWxlY3QyLWNvbnRhaW5lci0tb3BlbiB7XG5cblx0XHRcdFx0XHQmLnNlbGVjdDItY29udGFpbmVyLS1iZWxvdyB7XG5cblx0XHRcdFx0XHRcdC5zZWxlY3QyLXNlbGVjdGlvbiB7XG5cdFx0XHRcdFx0XHRcdGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xuXHRcdFx0XHRcdFx0XHRib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdCYuc2VsZWN0Mi1jb250YWluZXItLWFib3ZlIHtcblxuXHRcdFx0XHRcdFx0LnNlbGVjdDItc2VsZWN0aW9uIHtcblx0XHRcdFx0XHRcdFx0Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG5cdFx0XHRcdFx0XHRcdGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdGZpZWxkc2V0IHtcblx0XHRcdFx0Ym9yZGVyOiAwO1xuXHRcdFx0XHRwYWRkaW5nOiAwO1xuXHRcdFx0XHRtYXJnaW46IDA7XG5cdFx0XHRcdGRpc3BsYXk6IGdyaWQ7XG5cdFx0XHRcdHJvdy1nYXA6IHZhcigtLWl0LXNwYWNpbmctZGVmYXVsdCk7XG5cblx0XHRcdFx0bGVnZW5kIHtcblx0XHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0XHRcdG1hcmdpbi1ib3R0b206IHZhcigtLWl0LXNwYWNpbmctZGVmYXVsdCk7XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0LnNob3ctcGFzc3dvcmQtaW5wdXQge1xuXG5cdFx0XHRcdCY6OmJlZm9yZSB7XG5cdFx0XHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyB2aWV3Qm94PScwIDAgMTkgMTcnIGZpbGw9J25vbmUnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyclM0UlM0NwYXRoIGQ9J00wLjUgMC41TDE2LjUgMTYuNU04LjY0OCA0LjYyM0M5LjE2NzczIDQuNDY4OTMgOS43MTk0OSA0LjQ1ODU2IDEwLjI0NDYgNC41OTI5OUMxMC43Njk4IDQuNzI3NDMgMTEuMjQ4NyA1LjAwMTY0IDExLjYzMDUgNS4zODY0OUMxMi4wMTIyIDUuNzcxMzQgMTIuMjgyNiA2LjI1MjQ0IDEyLjQxMjggNi43Nzg2NUMxMi41NDMgNy4zMDQ4NiAxMi41MjgyIDcuODU2NTIgMTIuMzcgOC4zNzVNNS45MSAyLjM3OEMxMC4xNzQgMC4yNjIgMTQuNzY3IDEuOTcgMTguNSA3LjVDMTcuNDczIDkuMDIxIDE2LjM4MSAxMC4yNTMgMTUuMjQ5IDExLjE5Nk0xMi43NCAxMi43ODZDOC41NzYgMTQuNjQyIDQuMTMxIDEyLjg4IDAuNSA3LjVDMS41MSA2LjAwNCAyLjU4MyA0Ljc4NyAzLjY5NiAzLjg1JyBzdHJva2U9JyUyMzEyMTIxMCcgc3Ryb2tlLW9wYWNpdHk9JzAuNycgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbGluZWpvaW49J3JvdW5kJy8lM0UlM0Mvc3ZnJTNFJTBBXCIpO1xuXHRcdFx0XHRcdGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcblx0XHRcdFx0XHR3aWR0aDogMS4yNXJlbTtcblx0XHRcdFx0XHRoZWlnaHQ6IDEuMTI1cmVtO1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0Ji5kaXNwbGF5LXBhc3N3b3JkIHtcblxuXHRcdFx0XHRcdCY6OmJlZm9yZSB7XG5cdFx0XHRcdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnIHZpZXdCb3g9JzAgMCAyMCAyMCcgZmlsbD0nbm9uZScgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyUzRSUzQ3BhdGggZD0nTTAuODMzMDA4IDEwQzAuODMzMDA4IDEwIDQuMTY2MzQgMy4zMzMzMyA5Ljk5OTY3IDMuMzMzMzNDMTUuODMzIDMuMzMzMzMgMTkuMTY2MyAxMCAxOS4xNjYzIDEwJyBzdHJva2U9JyUyMzI1NDQ1QScgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbGluZWpvaW49J3JvdW5kJy8lM0UlM0NwYXRoIGQ9J00wLjgzMzAwOCAxMEMwLjgzMzAwOCAxMCA0LjE2NjM0IDE2LjY2NjcgOS45OTk2NyAxNi42NjY3QzE1LjgzMyAxNi42NjY3IDE5LjE2NjMgMTAgMTkuMTY2MyAxMCcgc3Ryb2tlPSclMjMyNTQ0NUEnIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCcvJTNFJTNDcGF0aCBkPSdNMTAgMTIuNUMxMS4zODA3IDEyLjUgMTIuNSAxMS4zODA3IDEyLjUgMTBDMTIuNSA4LjYxOTI5IDExLjM4MDcgNy41IDEwIDcuNUM4LjYxOTI5IDcuNSA3LjUgOC42MTkyOSA3LjUgMTBDNy41IDExLjM4MDcgOC42MTkyOSAxMi41IDEwIDEyLjVaJyBzdHJva2U9JyUyMzI1NDQ1QScgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbGluZWpvaW49J3JvdW5kJy8lM0UlM0Mvc3ZnJTNFJTBBXCIpO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHQud29vY29tbWVyY2UtcGFzc3dvcmQtc3RyZW5ndGgge1xuXHRcdFx0XHRib3JkZXItcmFkaXVzOiB2YXIoLS1pdC1ib3JkZXItcmFkaXVzLXNtYWxsKTtcblx0XHRcdFx0Zm9udC1zaXplOiB2YXIoLS1pdC1zaXplLXgtc21hbGwpO1xuXHRcdFx0XHRmb250LXdlaWdodDogNDAwO1xuXHRcdFx0XHRwYWRkaW5nOiAuMjVyZW0gLjVyZW07XG5cdFx0XHRcdG1hcmdpbi10b3A6IC41cmVtO1xuXHRcdFx0fVxuXG5cdFx0XHRzbWFsbCB7XG5cdFx0XHRcdGZvbnQtc2l6ZTogdmFyKC0taXQtc2l6ZS14LXNtYWxsKTtcblx0XHRcdH1cblxuXHRcdFx0ZGl2OmhhcyggPiAuZm9ybS1yb3cgKTpmaXJzdC1vZi10eXBlIHtcblx0XHRcdFx0ZGlzcGxheTogZ3JpZDtcblx0XHRcdFx0Z2FwOiB2YXIoLS1pdC1zcGFjaW5nLWRlZmF1bHQpO1xuXHRcdFx0XHRhbGlnbi1pdGVtczogc3RhcnQ7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0YnV0dG9uW3R5cGU9XCJzdWJtaXRcIl0sXG5cdFx0aW5wdXRbdHlwZT1cInN1Ym1pdFwiXSxcblx0XHQuYnV0dG9uIHtcblxuXHRcdFx0QGV4dGVuZCAlaXQtYnV0dG9uLS1wcmltYXJ5ICFvcHRpb25hbDtcblx0XHR9XG5cblx0XHRzZWN0aW9uIHtcblx0XHRcdGRpc3BsYXk6IGdyaWQ7XG5cdFx0XHRnYXA6IHZhcigtLWl0LXNwYWNpbmctZGVmYXVsdCk7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXG5cdFx0XHRoMiB7XG5cdFx0XHRcdGZvbnQtc2l6ZTogdmFyKC0taXQtaDUtZm9udC1zaXplKTtcblx0XHRcdFx0bGluZS1oZWlnaHQ6IHZhcigtLWl0LWg1LWxpbmUtaGVpZ2h0KTtcblx0XHRcdFx0Zm9udC13ZWlnaHQ6IDQwMDtcblx0XHRcdH1cblxuXHRcdFx0LmJ1dHRvbiB7XG5cblx0XHRcdFx0QGV4dGVuZCAlaXQtYnV0dG9uLS1wcmltYXJ5ICFvcHRpb25hbDtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHRpbnMge1xuXHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0fVxuXG5cdC5hZGRyZXNzZXMge1xuXG5cdFx0aDIge1xuXHRcdFx0Zm9udC1zaXplOiB2YXIoLS1pdC1oNS1mb250LXNpemUpO1xuXHRcdFx0bGluZS1oZWlnaHQ6IHZhcigtLWl0LWg1LWxpbmUtaGVpZ2h0KTtcblx0XHRcdGZvbnQtd2VpZ2h0OiA0MDA7XG5cdFx0fVxuXG5cdFx0YWRkcmVzcyB7XG5cdFx0XHRwYWRkaW5nOiAwLjg3NXJlbTtcblx0XHRcdGZvbnQtc3R5bGU6IG5vcm1hbDtcblx0XHRcdGZvbnQtc2l6ZTogdmFyKC0taXQtc2l6ZS1zbWFsbCk7XG5cdFx0XHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1pdC1jb2xvci1ib3JkZXIpO1xuXHRcdFx0Ym9yZGVyLXJhZGl1czogdmFyKC0taXQtYm9yZGVyLXJhZGl1cy1zbWFsbCk7XG5cdFx0fVxuXHR9XG5cblx0QGluY2x1ZGUgcy5taW4ocy4kc20pIHtcblxuXHRcdC53b29jb21tZXJjZSB7XG5cblx0XHRcdGZvcm0ge1xuXG5cdFx0XHRcdGRpdjpoYXMoID4gLmZvcm0tcm93ICk6Zmlyc3Qtb2YtdHlwZSB7XG5cdFx0XHRcdFx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTtcblxuXHRcdFx0XHRcdD4gKjpsYXN0LWNoaWxkOm50aC1jaGlsZChvZGQpIHtcblx0XHRcdFx0XHRcdGdyaWQtY29sdW1uOiAxIC8gLTE7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cbi5zZWxlY3QyLWNvbnRhaW5lciB7XG5cblx0LnNlbGVjdDItZHJvcGRvd24ge1xuXHRcdGJvcmRlci1jb2xvcjogdmFyKC0taXQtY29sb3ItYm9yZGVyKTtcblx0XHRib3JkZXItcmFkaXVzOiB2YXIoLS1pdC1ib3JkZXItcmFkaXVzKTtcblx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXG5cdFx0LnNlbGVjdDItc2VhcmNoIHtcblx0XHRcdHBhZGRpbmc6IHZhcigtLWl0LXNwYWNpbmctZGVmYXVsdC1oYWxmKTtcblxuXHRcdFx0Jl9fZmllbGQge1xuXHRcdFx0XHRib3JkZXItcmFkaXVzOiB2YXIoLS1pdC1ib3JkZXItcmFkaXVzLXNtYWxsKTtcblx0XHRcdFx0cGFkZGluZzogLjVyZW07XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0LnNlbGVjdDItcmVzdWx0cyB7XG5cblx0XHRcdCZfX29wdGlvbiB7XG5cdFx0XHRcdHBhZGRpbmc6IC41cmVtIHZhcigtLWl0LXNwYWNpbmctZGVmYXVsdC1oYWxmKTtcblx0XHRcdFx0Zm9udC1zaXplOiB2YXIoLS1pdC1zaXplLXNtYWxsKTtcblxuXHRcdFx0XHQmW2RhdGEtc2VsZWN0ZWQ9XCJ0cnVlXCJdIHtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kOiB2YXIoLS1pdC1jb2xvci1iYWNrZ3JvdW5kKTtcblx0XHRcdFx0XHRjb2xvcjogdmFyKC0taXQtY29sb3ItdGV4dCk7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQmLS1oaWdobGlnaHRlZCB7XG5cdFx0XHRcdFx0YmFja2dyb3VuZDogdmFyKC0taXQtY29sb3ItYnJhbmQpO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG4iLCIlaXQtaW5wdXQge1xuXHR3aWR0aDogMTAwJTtcblx0bGluZS1oZWlnaHQ6IDEuNjtcblx0cGFkZGluZzogMC42ODc1cmVtIDFyZW07XG5cdGZvbnQtc2l6ZTogdmFyKC0taXQtc2l6ZS1zbWFsbCk7XG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWl0LWNvbG9yLWJvcmRlcik7XG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLWl0LWJvcmRlci1yYWRpdXMpO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pdC1jb2xvci13aGl0ZSk7XG5cdGZvbnQtZmFtaWx5OiB2YXIoLS1pdC1mb250LWZhbWlseSk7XG5cdGNvbG9yOiB2YXIoLS1pdC1jb2xvci1ibGFjayk7XG5cblx0Ji0tZXJyb3Ige1xuXHRcdGJvcmRlci1jb2xvcjogdmFyKC0taXQtY29sb3ItZXJyb3IpO1xuXHR9XG5cblx0Jjotd2Via2l0LWF1dG9maWxsLFxuXHQmOi13ZWJraXQtYXV0b2ZpbGw6aG92ZXIsXG5cdCY6LXdlYmtpdC1hdXRvZmlsbDpmb2N1cyxcblx0Jjotd2Via2l0LWF1dG9maWxsOmFjdGl2ZSB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0taXQtY29sb3Itd2hpdGUpO1xuXHRcdHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMHMgOTk5OXM7IC8vIHVzZSBhIHJlYWxseSBsYXJnZSBkZWxheSBoZXJlXG5cdFx0Y29sb3I6IHZhcigtLWl0LWNvbG9yLWJsYWNrKTtcblx0fVxuXG5cdCY6Zm9jdXMge1xuXHRcdGJvcmRlci1jb2xvcjogdmFyKC0taXQtY29sb3ItYnJhbmQpO1xuXHR9XG5cblx0JltyZWFkb25seV0ge1xuXHRcdGJhY2tncm91bmQ6IHZhcigtLWl0LWNvbG9yLWxpZ2h0LWdyYXkpO1xuXHR9XG59XG4iLCIlaXQtY2hlY2tib3gge1xuXHR3aWR0aDogMS4xMjVyZW07XG5cdGhlaWdodDogMS4xMjVyZW07XG5cdGFwcGVhcmFuY2U6IG5vbmU7XG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWl0LWNvbG9yLWJsYWNrKTtcblx0Ym9yZGVyLXJhZGl1czogMC4yNXJlbTtcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKDFweCk7XG5cdGRpc3BsYXk6IGlubGluZS1mbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuXHQuaXQtaW50cm8tLWZ1bGx3aWR0aCAmLFxuXHQuaGFzLWJnLWRhcmsgJiB7XG5cdFx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1pdC1jb2xvci13aGl0ZSk7XG5cblx0XHQmOmNoZWNrZWQge1xuXG5cdFx0XHQmOmJlZm9yZSB7XG5cdFx0XHRcdGNvbnRlbnQ6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0Nzdmcgd2lkdGg9JzEyJyBoZWlnaHQ9JzgnIHZpZXdCb3g9JzAgMCAxMiA4JyBmaWxsPSdub25lJyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnJTNFJTNDcGF0aCBkPSdNMi4wNTEyOCAzLjI0MTVDMS45MTU4NyAzLjA5NzQ5IDEuNzI5MDkgMy4wMTI3NiAxLjUzMTU0IDMuMDA1NzNDMS4zMzM5OSAyLjk5ODcxIDEuMTQxNjYgMy4wNjk5NSAwLjk5NjM2IDMuMjAzOThDMC44NTEwNjQgMy4zMzgwMSAwLjc2NDU1NSAzLjUyMzk4IDAuNzU1NjQ2IDMuNzIxNDVDMC43NDY3MzYgMy45MTg5MiAwLjgxNjE0NiA0LjExMTkzIDAuOTQ4NzgyIDQuMjU4NUwzLjY1Nzc4IDcuMTk3NzVDNC4wNjA1MyA3LjU5MjI1IDQuNjYwNTMgNy41OTIyNSA1LjAzMzI4IDcuMjIwMjVMNS4zMDYyOCA2Ljk1MUM2LjI5MjE4IDUuOTgxNDEgNy4yNzY5MyA1LjAxMDY2IDguMjYwNTMgNC4wMzg3NUw4LjI5MDUzIDQuMDA4NzVDOS4yMDk4IDMuMTAyOCAxMC4xMjQzIDIuMTkyMDMgMTEuMDM0IDEuMjc2NUMxMS4xNyAxLjEzNDE1IDExLjI0NDUgMC45NDQwNDcgMTEuMjQxNiAwLjc0NzIxOUMxMS4yMzg2IDAuNTUwMzkxIDExLjE1ODQgMC4zNjI2MTUgMTEuMDE4MiAwLjIyNDQwOUMxMC44NzgxIDAuMDg2MjAyNCAxMC42ODkyIDAuMDA4NjQ2OTMgMTAuNDkyMyAwLjAwODQ3NjU0QzEwLjI5NTUgMC4wMDgzMDYxNSAxMC4xMDY0IDAuMDg1NTM0NyA5Ljk2NjAzIDAuMjIzNDk4QzkuMDYwNTMgMS4xMzQyNSA4LjE1MDUyIDIuMDQwNTEgNy4yMzYwMyAyLjk0MjI1TDcuMjA2MDMgMi45NzIyNUM2LjI2MzQ5IDMuOTAzOTcgNS4zMTk3NCA0LjgzNDQ3IDQuMzc0NzggNS43NjM3NUwyLjA1MTI4IDMuMjQxNVYzLjI0MTVaJyBmaWxsPSclMjNGRkZGRkYnLyUzRSUzQy9zdmclM0UlMEFcIik7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0JjpjaGVja2VkIHtcblxuXHRcdCY6YmVmb3JlIHtcblx0XHRcdGNvbnRlbnQ6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0Nzdmcgd2lkdGg9JzEyJyBoZWlnaHQ9JzgnIHZpZXdCb3g9JzAgMCAxMiA4JyBmaWxsPSdub25lJyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnJTNFJTNDcGF0aCBkPSdNMi4wNTEyOCAzLjI0MTVDMS45MTU4NyAzLjA5NzQ5IDEuNzI5MDkgMy4wMTI3NiAxLjUzMTU0IDMuMDA1NzNDMS4zMzM5OSAyLjk5ODcxIDEuMTQxNjYgMy4wNjk5NSAwLjk5NjM2IDMuMjAzOThDMC44NTEwNjQgMy4zMzgwMSAwLjc2NDU1NSAzLjUyMzk4IDAuNzU1NjQ2IDMuNzIxNDVDMC43NDY3MzYgMy45MTg5MiAwLjgxNjE0NiA0LjExMTkzIDAuOTQ4NzgyIDQuMjU4NUwzLjY1Nzc4IDcuMTk3NzVDNC4wNjA1MyA3LjU5MjI1IDQuNjYwNTMgNy41OTIyNSA1LjAzMzI4IDcuMjIwMjVMNS4zMDYyOCA2Ljk1MUM2LjI5MjE4IDUuOTgxNDEgNy4yNzY5MyA1LjAxMDY2IDguMjYwNTMgNC4wMzg3NUw4LjI5MDUzIDQuMDA4NzVDOS4yMDk4IDMuMTAyOCAxMC4xMjQzIDIuMTkyMDMgMTEuMDM0IDEuMjc2NUMxMS4xNyAxLjEzNDE1IDExLjI0NDUgMC45NDQwNDcgMTEuMjQxNiAwLjc0NzIxOUMxMS4yMzg2IDAuNTUwMzkxIDExLjE1ODQgMC4zNjI2MTUgMTEuMDE4MiAwLjIyNDQwOUMxMC44NzgxIDAuMDg2MjAyNCAxMC42ODkyIDAuMDA4NjQ2OTMgMTAuNDkyMyAwLjAwODQ3NjU0QzEwLjI5NTUgMC4wMDgzMDYxNSAxMC4xMDY0IDAuMDg1NTM0NyA5Ljk2NjAzIDAuMjIzNDk4QzkuMDYwNTMgMS4xMzQyNSA4LjE1MDUyIDIuMDQwNTEgNy4yMzYwMyAyLjk0MjI1TDcuMjA2MDMgMi45NzIyNUM2LjI2MzQ5IDMuOTAzOTcgNS4zMTk3NCA0LjgzNDQ3IDQuMzc0NzggNS43NjM3NUwyLjA1MTI4IDMuMjQxNVYzLjI0MTVaJyBmaWxsPSclMjMxMjEyMTAnLyUzRSUzQy9zdmclM0UlMEFcIik7XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0fVxuXHR9XG5cblx0Jjpmb2N1cy12aXNpYmxlIHtcblx0XHRvdXRsaW5lLW9mZnNldDogMC4xMjVyZW07XG5cdFx0b3V0bGluZTogMnB4IHNvbGlkIHZhcigtLWl0LWNvbG9yLWFjY2VudCk7XG5cdFx0Ym94LXNoYWRvdzogbm9uZTtcblx0fVxufVxuXG4laXQtY2hlY2tib3gtd3JhcHBlciB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuXHRnYXA6IDAuNXJlbTtcblx0bWFyZ2luLWJvdHRvbTogMDtcblx0Y3Vyc29yOiBwb2ludGVyO1xufVxuIiwiQHVzZSBcImZpZWxkLWlucHV0XCI7XG5cbiVpdC1zZWxlY3Qge1xuXG5cdEBleHRlbmQgJWl0LWlucHV0ICFvcHRpb25hbDtcblx0YXBwZWFyYW5jZTogbm9uZTtcblx0cGFkZGluZy1yaWdodDogMy41cmVtO1xuXHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltZy9hcnJvdy1kb3duLnN2ZycpO1xuXHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjYWxjKDEwMCUgLSAxcmVtKSBjZW50ZXI7XG59XG4iLCIvKipcbiAqIERvIG5vdCBAdXNlIGZpbGVzIHdpdGggYWN0dWFsIHNjc3MgY29kZSBpbiB0aGlzIGZpbGUsIGFzIGl0IHdpbGwgY29tcGlsZSBjc3MgY29kZSB0d2ljZS5cbiAqIEFzIHRoaXMgZmlsZSBnb2luZyB0byBiZSBhbiBzdGFuZGFsb25lIGNzcyBmaWxlLlxuICovXG5AdXNlIFwiLi4vLi4vLi4vLi4vYXNzZXRzL3Njc3MvZ2xvYmFsLzAtc2V0dGluZ3Mvc2V0dGluZ3NcIiBhcyBzO1xuXG4ud29vY29tbWVyY2Uge1xuXG5cdGZvcm0ge1xuXG5cdFx0LmZvcm0tcm93IHtcblx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0bWFyZ2luOiAwO1xuXHRcdFx0cGFkZGluZzogMDtcblxuXHRcdFx0Jjo6YmVmb3JlLFxuXHRcdFx0Jjo6YWZ0ZXIge1xuXHRcdFx0XHRjb250ZW50OiBub25lO1xuXHRcdFx0fVxuXG5cdFx0XHRlbSB7XG5cdFx0XHRcdGZvbnQtc3R5bGU6IG5vcm1hbDtcblx0XHRcdFx0Zm9udC1zaXplOiB2YXIoLS1pdC1zaXplLXNtYWxsKTtcblx0XHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0XHRtYXJnaW4tdG9wOiAuNXJlbTtcblx0XHRcdFx0Y29sb3I6IHZhcigtLWl0LWNvbG9yLXBsYWNlaG9sZGVyKTtcblx0XHRcdH1cblxuXHRcdFx0LnJlcXVpcmVkIHtcblx0XHRcdFx0Y29sb3I6IHZhcigtLWl0LWNvbG9yLWVycm9yKTtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQuY2xlYXIge1xuXHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHR9XG5cblx0XHRoMiB7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiB2YXIoLS1pdC1zcGFjaW5nLWRlZmF1bHQpO1xuXHRcdFx0Zm9udC1zaXplOiB2YXIoLS1pdC1oNS1mb250LXNpemUpO1xuXHRcdFx0bGluZS1oZWlnaHQ6IHZhcigtLWl0LWg1LWxpbmUtaGVpZ2h0KTtcblx0XHRcdGZvbnQtd2VpZ2h0OiA0MDA7XG5cdFx0fVxuXHR9XG5cblx0QGluY2x1ZGUgcy5taW4ocy4kc20pIHtcblxuXHRcdGZvcm0ge1xuXG5cdFx0XHQuZm9ybS1yb3cge1xuXG5cdFx0XHRcdCY6aGFzKCArIFtzdHlsZSo9XCJkaXNwbGF5OiBub25lXCJdICkge1xuXHRcdFx0XHRcdGdyaWQtY29sdW1uOiBzcGFuIDI7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQmLWZpcnN0IHtcblx0XHRcdFx0XHRncmlkLWNvbHVtbjogMTtcblx0XHRcdFx0fVxuXG5cdFx0XHRcdCYtbGFzdCB7XG5cdFx0XHRcdFx0Z3JpZC1jb2x1bW46IDI7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cbiIsIi8qKlxuICogRG8gbm90IEB1c2UgZmlsZXMgd2l0aCBhY3R1YWwgc2NzcyBjb2RlIGluIHRoaXMgZmlsZSwgYXMgaXQgd2lsbCBjb21waWxlIGNzcyBjb2RlIHR3aWNlLlxuICogQXMgdGhpcyBmaWxlIGdvaW5nIHRvIGJlIGFuIHN0YW5kYWxvbmUgY3NzIGZpbGUuXG4gKi9cbkB1c2UgXCIuLi8uLi8uLi8uLi9hc3NldHMvc2Nzcy9nbG9iYWwvMC1zZXR0aW5ncy9zZXR0aW5nc1wiIGFzIHM7XG5AdXNlIFwiLi4vLi4vLi4vLi4vYXNzZXRzL3Njc3MvZ2xvYmFsLzEtZ2VuZXJpYy8xLTEtYmFzZS9idXR0b25zLWJhc2VcIjtcblxuLndvb2NvbW1lcmNlLWFjY291bnQsXG4ud29vY29tbWVyY2UtY2hlY2tvdXQge1xuXG4gIC53b29jb21tZXJjZSB7XG5cbiAgICB0YWJsZSB7XG4gICAgICBib3JkZXI6IDA7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gICAgICBtYXJnaW46IDA7XG5cbiAgICAgIHRyIHtcblxuICAgICAgICAmOm50aC1jaGlsZCgybiksXG4gICAgICAgICY6aG92ZXIge1xuXG4gICAgICAgICAgdGQge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgdGQsIHRoIHtcbiAgICAgICAgICBwYWRkaW5nLWJsb2NrOiAuNjI1cmVtO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXG4gICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYud29vY29tbWVyY2Utb3JkZXJzLXRhYmxlLFxuICAgICAgJi53b29jb21tZXJjZS10YWJsZSB7XG5cbiAgICAgICAgdGQsIHRoIHtcbiAgICAgICAgICBwYWRkaW5nLWJsb2NrOiAxcmVtO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5idXR0b24ge1xuXG4gICAgICAgIEBleHRlbmQgJWl0LWJ1dHRvbi0tc20gIW9wdGlvbmFsO1xuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBzLm1pbihzLiRzbSkge1xuXG4gICAgICAgICYud29vY29tbWVyY2Utb3JkZXJzLXRhYmxlLFxuICAgICAgICAmLndvb2NvbW1lcmNlLXRhYmxlIHtcblxuICAgICAgICAgIHRkLCB0aCB7XG4gICAgICAgICAgICBwYWRkaW5nLWlubGluZTogdmFyKC0taXQtc3BhY2luZy1kZWZhdWx0LWhhbGYpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBzLm1heChzLiR4cykge1xuXG4gICAgICAgICYud29vY29tbWVyY2Utb3JkZXJzLXRhYmxlLFxuICAgICAgICAmLndvb2NvbW1lcmNlLXRhYmxlIHtcblxuICAgICAgICAgIHRkLCB0aCB7XG5cbiAgICAgICAgICAgIC5idXR0b24ge1xuICAgICAgICAgICAgICBtYXJnaW4tdG9wOiB2YXIoLS1pdC1zcGFjaW5nLWZvcm0pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBzLm1pbi1tYXgocy4kemVybywgcy4kc20pIHtcblxuICAgICAgICAmLnNob3BfdGFibGVfcmVzcG9uc2l2ZSB7XG5cbiAgICAgICAgICB0ZCwgdGgge1xuICAgICAgICAgICAgcGFkZGluZy1pbmxpbmU6IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvKipcbiAqIERvIG5vdCBAdXNlIGZpbGVzIHdpdGggYWN0dWFsIHNjc3MgY29kZSBpbiB0aGlzIGZpbGUsIGFzIGl0IHdpbGwgY29tcGlsZSBjc3MgY29kZSB0d2ljZS5cbiAqIEFzIHRoaXMgZmlsZSBnb2luZyB0byBiZSBhbiBzdGFuZGFsb25lIGNzcyBmaWxlLlxuICovXG5AdXNlIFwiLi4vLi4vLi4vLi4vYXNzZXRzL3Njc3MvZ2xvYmFsLzAtc2V0dGluZ3Mvc2V0dGluZ3NcIiBhcyBzO1xuQHVzZSBcIi4uL2NvbXBvbmVudHMvYmFkZ2VcIjtcbkB1c2UgXCIuLi9jb21wb25lbnRzL2FkZC10by1jYXJ0XCI7XG5cbi53b29jb21tZXJjZSB7XG5cblx0Lndvb2NvbW1lcmNlLWFyY2hpdmUtY291bnQtYW5kLW9yZGVyIHtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0ZmxleC13cmFwOiB3cmFwO1xuXHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcblx0XHRjb2x1bW4tZ2FwOiB2YXIoLS1pdC1zcGFjaW5nLWRlZmF1bHQpO1xuXHRcdHJvdy1nYXA6IHZhcigtLWl0LXNwYWNpbmctZGVmYXVsdC1oYWxmKTtcblx0XHRtYXJnaW4tYm90dG9tOiB2YXIoLS1pdC1zcGFjaW5nLWRlZmF1bHQpO1xuXG5cdFx0Lndvb2NvbW1lcmNlLXJlc3VsdC1jb3VudCxcblx0XHQud29vY29tbWVyY2Utb3JkZXJpbmcge1xuXHRcdFx0bWFyZ2luOiAwO1xuXHRcdH1cblx0fVxuXG5cdHVsLnByb2R1Y3RzIHtcblx0XHRtYXJnaW46IDA7XG5cdFx0ZGlzcGxheTogZ3JpZDtcblx0XHRjb2x1bW4tZ2FwOiB2YXIoLS1pdC1zcGFjaW5nLWNvbHVtbnMpO1xuXHRcdHJvdy1nYXA6IHZhcigtLWl0LXNwYWNpbmctY29udGVudCk7XG5cdFx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maWxsLCBtaW5tYXgoMTguNzVyZW0sIDFmcikpO1xuXG5cdFx0Jjo6YmVmb3JlLFxuXHRcdCY6OmFmdGVyIHtcblx0XHRcdGNvbnRlbnQ6IG5vbmU7XG5cdFx0fVxuXG5cdFx0bGkucHJvZHVjdCB7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0XHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcblx0XHRcdG1pbi13aWR0aDogMTAwJTtcblx0XHRcdGhlaWdodDogMTAwJTtcblx0XHRcdG1hcmdpbjogMCAhaW1wb3J0YW50O1xuXG5cdFx0XHQud29vY29tbWVyY2UtbG9vcC1wcm9kdWN0IHtcblxuXHRcdFx0XHQmX19tYWluIHtcblx0XHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0XHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdFx0XHRcdFx0cm93LWdhcDogdmFyKC0taXQtc3BhY2luZy1kZWZhdWx0LWhhbGYpO1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0Jl9fdGh1bWJuYWlsIHtcblx0XHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRcdFx0bWFyZ2luLWJvdHRvbTogdmFyKC0taXQtc3BhY2luZy1kZWZhdWx0LWhhbGYpO1xuXG5cdFx0XHRcdFx0aW1nIHtcblx0XHRcdFx0XHRcdGJvcmRlci1yYWRpdXM6IHZhcigtLWl0LWJvcmRlci1yYWRpdXMpO1xuXHRcdFx0XHRcdFx0bWFyZ2luOiAwO1xuXHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdC5vbnNhbGUge1xuXG5cdFx0XHRcdFx0XHRAZXh0ZW5kICViYWRnZSAhb3B0aW9uYWw7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cblx0XHRcdFx0Jl9fdGl0bGUge1xuXHRcdFx0XHRcdHBhZGRpbmc6IDA7XG5cdFx0XHRcdFx0Zm9udC1zaXplOiB2YXIoLS1pdC1oNC1mb250LXNpemUpO1xuXHRcdFx0XHRcdGxpbmUtaGVpZ2h0OiB2YXIoLS1pdC1oNC1saW5lLWhlaWdodCk7XG5cblx0XHRcdFx0XHQ+IGEge1xuXHRcdFx0XHRcdFx0Y29sb3I6IGluaGVyaXQ7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cblx0XHRcdFx0Jl9fc2t1IHtcblx0XHRcdFx0XHRmb250LXdlaWdodDogNTAwO1xuXHRcdFx0XHRcdGNvbG9yOiByZ2JhKHZhcigtLWl0LWNvbG9yLWJsYWNrKSwgLjcpO1xuXHRcdFx0XHRcdGZvbnQtc2l6ZTogdmFyKC0taXQtc2l6ZS14LXNtYWxsKTtcblx0XHRcdFx0fVxuXG5cdFx0XHRcdCZfX2JvdHRvbSB7XG5cdFx0XHRcdFx0bWFyZ2luLXRvcDogdmFyKC0taXQtc3BhY2luZy1kZWZhdWx0LWhhbGYpO1xuXHRcdFx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRcdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0XHRcdFx0XHRnYXA6IHZhcigtLWl0LXNwYWNpbmctZGVmYXVsdCk7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQmX19hZGQtdG8tY2FydCB7XG5cdFx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXG5cdFx0XHRcdFx0JjpoYXMoLmFkZGVkKSB7XG5cblx0XHRcdFx0XHRcdC5hZGRlZF90b19jYXJ0IHtcblx0XHRcdFx0XHRcdFx0YW5pbWF0aW9uOiBjYXJ0TGluayAyLjhzIGZvcndhcmRzO1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXG5cdFx0XHRcdCZfX3ByaWNlLWFuZC1pbmZvIHtcblx0XHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0XHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cblx0XHRcdFx0XHQ+ICoge1xuXHRcdFx0XHRcdFx0bWFyZ2luOiAwLjI1cmVtIDAgMDtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQmX19wcmljZSB7XG5cdFx0XHRcdFx0Zm9udC1zaXplOiB2YXIoLS1pdC1oNC1mb250LXNpemUpO1xuXHRcdFx0XHRcdGxpbmUtaGVpZ2h0OiB2YXIoLS1pdC1oNC1saW5lLWhlaWdodCk7XG5cdFx0XHRcdFx0Y29sb3I6IHZhcigtLWl0LWNvbG9yLWJyYW5kKTtcblxuXHRcdFx0XHRcdCsgKiB7XG5cdFx0XHRcdFx0XHRtYXJnaW4tdG9wOiAwO1xuXHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdC5wcmljZSB7XG5cdFx0XHRcdFx0XHRtYXJnaW46IDA7XG5cdFx0XHRcdFx0XHRjb2xvcjogdmFyKC0taXQtY29sb3ItYnJhbmQpO1xuXHRcdFx0XHRcdFx0Zm9udC13ZWlnaHQ6IDcwMDtcblxuXHRcdFx0XHRcdFx0ZGVsIHtcblx0XHRcdFx0XHRcdFx0Zm9udC1zaXplOiB2YXIoLS1pdC1oNi1mb250LXNpemUpO1xuXHRcdFx0XHRcdFx0XHRwYWRkaW5nLXJpZ2h0OiAwLjI1cmVtO1xuXHRcdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0XHRpbnMge1xuXHRcdFx0XHRcdFx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdC5idXR0b24ge1xuXG5cdFx0XHRcdEBleHRlbmQgJWl0LWJ1dHRvbi0tb3V0bGluZSAhb3B0aW9uYWw7XG5cdFx0XHRcdEBleHRlbmQgJWFkZC10by1jYXJ0ICFvcHRpb25hbDtcblx0XHRcdFx0QGV4dGVuZCAlYWRkLXRvLWNhcnQtbGcgIW9wdGlvbmFsO1xuXHRcdFx0XHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcblx0XHRcdH1cblxuXHRcdFx0LmFkZGVkX3RvX2NhcnQge1xuXHRcdFx0XHRpbnNldDogMDtcblx0XHRcdFx0Zm9udC1zaXplOiAwO1xuXHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdHBvaW50ZXItZXZlbnRzOiBub25lO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdEBpbmNsdWRlIHMubWluKHMuJHNtKSB7XG5cblx0XHR1bC5wcm9kdWN0cyB7XG5cblx0XHRcdGxpLnByb2R1Y3Qge1xuXG5cdFx0XHRcdC53b29jb21tZXJjZS1sb29wLXByb2R1Y3Qge1xuXG5cdFx0XHRcdFx0Jl9fY2F0ZWdvcmllcyB7XG5cdFx0XHRcdFx0XHRmb250LXNpemU6IHZhcigtLWl0LXNpemUtbGFyZ2UpO1xuXHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdCZfX2JvdHRvbSB7XG5cdFx0XHRcdFx0XHRmbGV4LWRpcmVjdGlvbjogcm93O1xuXHRcdFx0XHRcdFx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXHRcdFx0XHRcdFx0YWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuIiwiJWJhZGdlIHtcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0taXQtYm9yZGVyLXJhZGl1cy1zbWFsbCk7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWl0LWNvbG9yLWJyYW5kKTtcblx0cGFkZGluZzogMC41cmVtIDFyZW07XG5cdG1pbi1oZWlnaHQ6IGF1dG87XG5cdG1pbi13aWR0aDogYXV0bztcblx0bGluZS1oZWlnaHQ6IGluaXRpYWw7XG5cdGZvbnQtc2l6ZTogdmFyKC0taXQtc2l6ZS1zbWFsbCk7XG5cdG1hcmdpbjogMDtcblx0dG9wOiB2YXIoLS1pdC1zcGFjaW5nLWRlZmF1bHQtaGFsZik7XG5cdHJpZ2h0OiB2YXIoLS1pdC1zcGFjaW5nLWRlZmF1bHQtaGFsZik7XG5cdGZvbnQtd2VpZ2h0OiA0MDA7XG5cdHotaW5kZXg6IDE7XG59XG4iLCIvKipcbiAqIERvIG5vdCBAdXNlIGZpbGVzIHdpdGggYWN0dWFsIHNjc3MgY29kZSBpbiB0aGlzIGZpbGUsIGFzIGl0IHdpbGwgY29tcGlsZSBjc3MgY29kZSB0d2ljZS5cbiAqIEFzIHRoaXMgZmlsZSBnb2luZyB0byBiZSBhbiBzdGFuZGFsb25lIGNzcyBmaWxlLlxuICovXG5AdXNlICcuLi8uLi8uLi8uLi9hc3NldHMvc2Nzcy9nbG9iYWwvMC1zZXR0aW5ncy9zZXR0aW5ncycgYXMgcztcbkB1c2UgXCIuLi8uLi8uLi8uLi9hc3NldHMvc2Nzcy9nbG9iYWwvMS1nZW5lcmljLzEtMS1iYXNlL2J1dHRvbnMtYmFzZVwiO1xuQHVzZSAnLi4vY29tcG9uZW50cy9iYWRnZSc7XG5cbi53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCB7XG5cblx0I2NvbnRlbnQge1xuXHRcdG92ZXJmbG93OiBoaWRkZW47XG5cblx0XHRkaXYucHJvZHVjdCB7XG5cdFx0XHRtYXJnaW4tdG9wOiB2YXIoLS1pdC1zcGFjaW5nLWNvbnRlbnQpO1xuXHRcdFx0ZGlzcGxheTogZ3JpZDtcblx0XHRcdGdhcDogdmFyKC0taXQtc3BhY2luZy1kZWZhdWx0LWhhbGYpO1xuXHRcdFx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxMDAlO1xuXG5cblx0XHRcdCYucHJvZHVjdC10eXBlLXZhcmlhYmxlIHtcblxuXHRcdFx0XHRkaXYuc3VtbWFyeSB7XG5cblx0XHRcdFx0XHQucHJvZHVjdF90aXRsZSB7XG5cdFx0XHRcdFx0XHRmb250LXNpemU6IHZhcigtLWl0LXByb2R1Y3QtZm9udC1zaXplKTtcblx0XHRcdFx0XHRcdGxpbmUtaGVpZ2h0OiB2YXIoLS1pdC1wcm9kdWN0LWxpbmUtaGVpZ2h0KTtcblx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHQ+IC5wcmljZSB7XG5cdFx0XHRcdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdC5jYXJ0IHtcblx0XHRcdFx0XHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdFx0XHRcdFx0XHRnYXA6IHZhcigtLWl0LXNwYWNpbmctZGVmYXVsdCk7XG5cblx0XHRcdFx0XHRcdC52YXJpYXRpb25zIHtcblx0XHRcdFx0XHRcdFx0bWFyZ2luOiAwO1xuXHRcdFx0XHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblxuXHRcdFx0XHRcdFx0XHR0Ym9keSB7XG5cdFx0XHRcdFx0XHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdFx0XHRcdFx0XHRjb2x1bW4tZ2FwOiB2YXIoLS1pdC1zcGFjaW5nLWZvcm0pO1xuXHRcdFx0XHRcdFx0XHRcdGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7XG5cdFx0XHRcdFx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXG5cdFx0XHRcdFx0XHRcdFx0JjpoYXMoLnJlc2V0X3ZhcmlhdGlvbnNbc3R5bGUqPSd2aXNpYmlsaXR5OiB2aXNpYmxlOyddKSB7XG5cdFx0XHRcdFx0XHRcdFx0XHRwYWRkaW5nLWJvdHRvbTogMnJlbTtcblx0XHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdFx0XHR0ciB7XG5cdFx0XHRcdFx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRcdFx0XHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdFx0XHRcdFx0XHR0ZXh0LWFsaWduOiBsZWZ0O1xuXHRcdFx0XHRcdFx0XHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cblx0XHRcdFx0XHRcdFx0XHRsYWJlbCB7XG5cdFx0XHRcdFx0XHRcdFx0XHRmb250LXdlaWdodDogNDAwO1xuXHRcdFx0XHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdFx0XHRcdD4gKiB7XG5cdFx0XHRcdFx0XHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdFx0XHQucmVzZXRfdmFyaWF0aW9ucyB7XG5cblx0XHRcdFx0XHRcdFx0XHRAZXh0ZW5kICVpdC1idXR0b24tLXRlcnRpYXJ5ICFvcHRpb25hbDtcblx0XHRcdFx0XHRcdFx0XHRAZXh0ZW5kICVpdC1idXR0b24tLXNtICFvcHRpb25hbDtcblx0XHRcdFx0XHRcdFx0XHR3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuXHRcdFx0XHRcdFx0XHRcdHBhZGRpbmc6IDAgIWltcG9ydGFudDtcblx0XHRcdFx0XHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdFx0XHRcdFx0bGVmdDogMDtcblx0XHRcdFx0XHRcdFx0XHRib3R0b206IDA7XG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdFx0LnNpbmdsZV92YXJpYXRpb25fd3JhcCB7XG5cdFx0XHRcdFx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRcdFx0XHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdFx0XHRcdFx0XHRcdGdhcDogdmFyKC0taXQtc3BhY2luZy1kZWZhdWx0LWhhbGYpO1xuXHRcdFx0XHRcdFx0XHRtYXJnaW4tdG9wOiB2YXIoLS1pdC1zcGFjaW5nLWRlZmF1bHQpO1xuXG5cdFx0XHRcdFx0XHRcdC5zaW5nbGVfdmFyaWF0aW9uIHtcblxuXHRcdFx0XHRcdFx0XHRcdC53b29jb21tZXJjZS12YXJpYXRpb24tZGVzY3JpcHRpb24ge1xuXHRcdFx0XHRcdFx0XHRcdFx0Zm9udC1zaXplOiB2YXIoLS1pdC1zaXplLXNtYWxsKTtcblx0XHRcdFx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHRcdFx0XHQmOmVtcHR5IHtcblx0XHRcdFx0XHRcdFx0XHRcdGRpc3BsYXk6IG5vbmU7IC8vIFRPRE86IElzIG5lZWRlZCB0byByZW1vdmUgbGF5b3V0IHNoaWZ0LCBidXQgY2F1c2luZyBzaGFycCBhbmltYXRpb24gb24gZmlyc3Qgb3Blbi4gTmVlZCB0byBiZSBmaXhlZFxuXHRcdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0XHQudmFyaWF0aW9uc19idXR0b24ge1xuXHRcdFx0XHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0XHRcdFx0XHRhbGlnbi1pdGVtczogc3RyZXRjaDtcblx0XHRcdFx0XHRcdFx0Z2FwOiB2YXIoLS1pdC1zcGFjaW5nLWRlZmF1bHQtaGFsZik7XG5cblx0XHRcdFx0XHRcdFx0QGluY2x1ZGUgcy5tYXgocy4kbWQpIHtcblx0XHRcdFx0XHRcdFx0XHRmbGV4LXdyYXA6IHdyYXA7XG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0Ji5wcm9kdWN0LXR5cGUtZ3JvdXBlZCB7XG5cblx0XHRcdFx0ZGl2LnN1bW1hcnkge1xuXG5cdFx0XHRcdFx0LmNhcnQge1xuXHRcdFx0XHRcdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0XHRcdFx0XHRcdGdhcDogdmFyKC0taXQtc3BhY2luZy1kZWZhdWx0KTtcblxuXHRcdFx0XHRcdFx0Lndvb2NvbW1lcmNlLWdyb3VwZWQtcHJvZHVjdC1saXN0LWl0ZW0ge1xuXHRcdFx0XHRcdFx0XHRkaXNwbGF5OiBncmlkO1xuXHRcdFx0XHRcdFx0XHRncmlkLXRlbXBsYXRlLXJvd3M6IDFmciBhdXRvO1xuXHRcdFx0XHRcdFx0XHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnI7XG5cdFx0XHRcdFx0XHRcdGdhcDogdmFyKC0taXQtc3BhY2luZy1kZWZhdWx0LWhhbGYpO1xuXHRcdFx0XHRcdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdFx0XHRcdFx0XHRtYXJnaW4tYm90dG9tOiB2YXIoLS1pdC1zcGFjaW5nLWRlZmF1bHQtaGFsZik7XG5cdFx0XHRcdFx0XHRcdHBhZGRpbmctYm90dG9tOiB2YXIoLS1pdC1zcGFjaW5nLWRlZmF1bHQtaGFsZik7XG5cdFx0XHRcdFx0XHRcdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1pdC1jb2xvci1ib3JkZXIpO1xuXG5cdFx0XHRcdFx0XHRcdCY6bGFzdC1jaGlsZCB7XG5cdFx0XHRcdFx0XHRcdFx0Ym9yZGVyLWJvdHRvbTogMDtcblx0XHRcdFx0XHRcdFx0XHRwYWRkaW5nLWJvdHRvbTogMDtcblx0XHRcdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0XHRcdCZfX3F1YW50aXR5IHtcblx0XHRcdFx0XHRcdFx0XHR3aWR0aDogYXV0bztcblx0XHRcdFx0XHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0XHRcdFx0XHRcdHBhZGRpbmc6IDA7XG5cblx0XHRcdFx0XHRcdFx0XHQucXVhbnRpdHktaW5wdXQge1xuXHRcdFx0XHRcdFx0XHRcdFx0bWFyZ2luLXJpZ2h0OiAwO1xuXHRcdFx0XHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdFx0XHRcdC53b29zdy1idG4ge1xuXHRcdFx0XHRcdFx0XHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdFx0XHQmX19sYWJlbCB7XG5cdFx0XHRcdFx0XHRcdFx0cGFkZGluZzogMDtcblx0XHRcdFx0XHRcdFx0XHRncmlkLWNvbHVtbjogMSAvIDM7XG5cdFx0XHRcdFx0XHRcdFx0Z3JpZC1yb3c6IDEgLyAzO1xuXG5cdFx0XHRcdFx0XHRcdFx0YSB7XG5cblx0XHRcdFx0XHRcdFx0XHRcdEBpbmNsdWRlIHMuYW5pbWF0ZWQtdW5kZXJsaW5lKDFweCk7XG5cdFx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHRcdFx0Jl9fcHJpY2Uge1xuXHRcdFx0XHRcdFx0XHRcdHBhZGRpbmc6IDA7XG5cdFx0XHRcdFx0XHRcdFx0dGV4dC1hbGlnbjogcmlnaHQ7XG5cblx0XHRcdFx0XHRcdFx0XHQuc3RvY2ssXG5cdFx0XHRcdFx0XHRcdFx0LmxlZ2FsLXByaWNlLWluZm8ge1xuXHRcdFx0XHRcdFx0XHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHRcdFx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHRcdFx0XHRpbnMge1xuXHRcdFx0XHRcdFx0XHRcdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRcdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHQucHJvZHVjdC1nYWxsZXJ5LXdyYXBwZXIge1xuXHRcdFx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXHRcdFx0XHRtaW4td2lkdGg6IDA7XG5cblx0XHRcdFx0QGluY2x1ZGUgcy5tYXgocy4kc20pIHtcblx0XHRcdFx0XHRtYXgtd2lkdGg6IDM3NXB4O1xuXHRcdFx0XHRcdG1hcmdpbjogMCBhdXRvO1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0Lm9uc2FsZSB7XG5cdFx0XHRcdFx0ZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuXG5cdFx0XHRcdFx0QGV4dGVuZCAlYmFkZ2UgIW9wdGlvbmFsO1xuXHRcdFx0XHRcdHJpZ2h0OiBhdXRvO1xuXHRcdFx0XHRcdHotaW5kZXg6IDI7XG5cdFx0XHRcdFx0bGVmdDogdmFyKC0taXQtc3BhY2luZy1kZWZhdWx0LWhhbGYpO1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0Lndvb2NvbW1lcmNlLXByb2R1Y3QtZ2FsbGVyeSB7XG5cdFx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRcdFx0bWF4LWhlaWdodDogMTAwJTtcblx0XHRcdFx0XHRmbG9hdDogbm9uZTtcblx0XHRcdFx0XHRtYXJnaW46IDA7XG5cdFx0XHRcdFx0cG9zaXRpb246IHN0YXRpYztcblx0XHRcdFx0XHRkaXNwbGF5OiBncmlkO1xuXHRcdFx0XHRcdGdyaWQtcm93LWdhcDogdmFyKC0taXQtc3BhY2luZy1kZWZhdWx0LWhhbGYpO1xuXHRcdFx0XHRcdG92ZXJmbG93OiBoaWRkZW47XG5cdFx0XHRcdFx0bWluLXdpZHRoOiAwO1xuXG5cdFx0XHRcdFx0LnN3aXBlci0taW1hZ2VzIHtcblx0XHRcdFx0XHRcdG92ZXJmbG93OiB2aXNpYmxlO1xuXHRcdFx0XHRcdFx0bWluLXdpZHRoOiAwO1xuXHRcdFx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cblx0XHRcdFx0XHRcdC5zd2lwZXItc2xpZGUge1xuXHRcdFx0XHRcdFx0XHRhc3BlY3QtcmF0aW86IDMgLyA0O1xuXHRcdFx0XHRcdFx0XHR0cmFuc2l0aW9uOiBvcGFjaXR5IDAuNHMgZWFzZTtcblx0XHRcdFx0XHRcdFx0Y3Vyc29yOiBwb2ludGVyO1xuXHRcdFx0XHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cblx0XHRcdFx0XHRcdFx0LnByb2R1Y3QtaW1hZ2Uge1xuXHRcdFx0XHRcdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0XHRcdFx0XHRcdGhlaWdodDogMTAwJTtcblx0XHRcdFx0XHRcdFx0XHRvYmplY3QtZml0OiBjb250YWluO1xuXHRcdFx0XHRcdFx0XHRcdG9iamVjdC1wb3NpdGlvbjogY2VudGVyO1xuXHRcdFx0XHRcdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHRcdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdFx0XHRcdFx0XHR6LWluZGV4OiAwO1xuXHRcdFx0XHRcdFx0XHRcdG1heC1oZWlnaHQ6IDUwMHB4O1xuXHRcdFx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHRcdFx0Jjo6YWZ0ZXIge1xuXHRcdFx0XHRcdFx0XHRcdGNvbnRlbnQ6IFwiXCI7XG5cdFx0XHRcdFx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHRcdFx0XHRcdGluc2V0OiAwO1xuXHRcdFx0XHRcdFx0XHRcdGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4wNSk7XG5cdFx0XHRcdFx0XHRcdFx0dHJhbnNpdGlvbjogb3BhY2l0eSAwLjRzIGVhc2U7XG5cdFx0XHRcdFx0XHRcdFx0cG9pbnRlci1ldmVudHM6IG5vbmU7XG5cdFx0XHRcdFx0XHRcdFx0ei1pbmRleDogMTtcblx0XHRcdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0XHRcdCYuc3dpcGVyLXNsaWRlLWFjdGl2ZSB7XG5cdFx0XHRcdFx0XHRcdFx0Y3Vyc29yOiBkZWZhdWx0O1xuXG5cdFx0XHRcdFx0XHRcdFx0Jjo6YWZ0ZXIge1xuXHRcdFx0XHRcdFx0XHRcdFx0b3BhY2l0eTogMDtcblx0XHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdFx0Ly8gU2luZ2xlLXNsaWRlIGZhbGxiYWNrOiBTd2lwZXIgZG9lc24ndCBpbml0IChzbGlkZXNDb3VudCA8IDIpLlxuXHRcdFx0XHRcdFx0Jjpub3QoLnN3aXBlci1pbml0aWFsaXplZCkge1xuXG5cdFx0XHRcdFx0XHRcdC5zd2lwZXItd3JhcHBlciB7XG5cdFx0XHRcdFx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdFx0XHQuc3dpcGVyLXNsaWRlIHtcblx0XHRcdFx0XHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0XHRcdFx0XHRhc3BlY3QtcmF0aW86IGF1dG87XG5cdFx0XHRcdFx0XHRcdFx0b3BhY2l0eTogMTtcblx0XHRcdFx0XHRcdFx0XHRjdXJzb3I6IGRlZmF1bHQ7XG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHQuc3dpcGVyLWJ1dHRvbnMge1xuXHRcdFx0XHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdFx0XHRcdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHRcdFx0XHRcdFx0Z2FwOiB2YXIoLS1pdC1zcGFjaW5nLWRlZmF1bHQpO1xuXHRcdFx0XHRcdFx0bWFyZ2luLXRvcDogdmFyKC0taXQtc3BhY2luZy1kZWZhdWx0LWhhbGYpO1xuXG5cdFx0XHRcdFx0XHQuc3dpcGVyLWJ1dHRvbi1wcmV2LFxuXHRcdFx0XHRcdFx0LnN3aXBlci1idXR0b24tbmV4dCB7XG5cdFx0XHRcdFx0XHRcdHBvc2l0aW9uOiBzdGF0aWM7XG5cdFx0XHRcdFx0XHRcdHRyYW5zZm9ybTogbm9uZTtcblx0XHRcdFx0XHRcdFx0Y3Vyc29yOiBwb2ludGVyO1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHRkaXYuc3VtbWFyeSB7XG5cdFx0XHRcdGZsb2F0OiBub25lO1xuXHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0bWluLXdpZHRoOiAwO1xuXHRcdFx0XHRkaXNwbGF5OiBncmlkO1xuXHRcdFx0XHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG1pbm1heCgwLCAxZnIpO1xuXHRcdFx0XHRnYXA6IHZhcigtLWl0LXNwYWNpbmctZGVmYXVsdC1oYWxmKTtcblx0XHRcdFx0Z3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvO1xuXHRcdFx0XHRncmlkLWF1dG8tcm93czogbWluLWNvbnRlbnQ7XG5cdFx0XHRcdGFsaWduLWl0ZW1zOiBzdGFydDtcblx0XHRcdFx0Z3JpZC1hdXRvLWZsb3c6IHJvdyBkZW5zZTtcblxuXHRcdFx0XHQmOmhhcygud29vY29tbWVyY2UtcHJvZHVjdC1kZXRhaWxzX19zaG9ydC1kZXNjcmlwdGlvbikge1xuXG5cdFx0XHRcdFx0LnN0b2NrIHtcblx0XHRcdFx0XHRcdGdyaWQtcm93OiA1IC8gNjtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQucHJvZHVjdC12b2x1bWUge1xuXHRcdFx0XHRcdGRpc3BsYXk6IGlubGluZS1mbGV4O1xuXHRcdFx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0XHRcdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdFx0XHRcdFx0d2lkdGg6IG1heC1jb250ZW50O1xuXHRcdFx0XHRcdG1pbi13aWR0aDogM3JlbTtcblx0XHRcdFx0XHRwYWRkaW5nOiAwLjgxcmVtIDAuMzdyZW07XG5cdFx0XHRcdFx0Zm9udC1zaXplOiAxNnB4O1xuXHRcdFx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRcdFx0XHRjb2xvcjogIzAwMDtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pdC1jb2xvci13aGl0ZSk7XG5cdFx0XHRcdFx0Ym9yZGVyLXJhZGl1czogMnB4O1xuXHRcdFx0XHRcdGJveC1zaGFkb3c6IDAgMCAwIDJweCB2YXIoLS1pdC1jb2xvci1ibGFjayk7XG5cblx0XHRcdFx0fVxuXG5cdFx0XHRcdC5wcm9kdWN0LWNhdGVnb3JpZXMge1xuXHRcdFx0XHRcdGZvbnQtc2l6ZTogdmFyKC0taXQtaDUtZm9udC1zaXplKTtcblx0XHRcdFx0XHRsaW5lLWhlaWdodDogMS4xO1xuXHRcdFx0XHRcdGZvbnQtd2VpZ2h0OiA0MDA7XG5cdFx0XHRcdFx0Ly9mb250LXN0eWxlOiBpdGFsaWM7XG5cdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0taXQtY29sb3ItYnJhbmQpO1xuXHRcdFx0XHRcdHBhZGRpbmc6IDAgMTBweCAycHg7XG5cdFx0XHRcdFx0d2lkdGg6IGZpdC1jb250ZW50O1xuXHRcdFx0XHRcdGhlaWdodDogYXV0bztcblxuXHRcdFx0XHRcdGEge1xuXHRcdFx0XHRcdFx0Y29sb3I6IHZhcigtLWl0LWNvbG9yLWJsYWNrKTtcblx0XHRcdFx0XHRcdGZvbnQtc2l6ZTogdmFyKC0taXQtc2l6ZS1zbWFsbCk7XG5cdFx0XHRcdFx0XHRAaW5jbHVkZSBzLmFuaW1hdGVkLXVuZGVybGluZSgycHgsIDNweCk7XG5cdFx0XHRcdFx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdFx0XHRcdFx0XHRwYWRkaW5nOiAwO1xuXG5cdFx0XHRcdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0XHRcdFx0Y29sb3I6IHZhcigtLWl0LWNvbG9yLXdoaXRlKTtcblx0XHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdFx0JjpiZWZvcmUge1xuXHRcdFx0XHRcdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdCsgLnByb2R1Y3RfdGl0bGUge1xuXHRcdFx0XHRcdFx0bWFyZ2luLXRvcDogY2FsYyh2YXIoLS1pdC1zcGFjaW5nLWRlZmF1bHQtaGFsZikgKiAtMSk7XG5cblx0XHRcdFx0XHRcdEBpbmNsdWRlIHMubWF4KHMuJG1kKSB7XG5cdFx0XHRcdFx0XHRcdG1hcmdpbi10b3A6IHZhcigtLWl0LXNwYWNpbmctZGVmYXVsdC1oYWxmKTtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQucHJvZHVjdF90aXRsZSB7XG5cdFx0XHRcdFx0Zm9udC1zaXplOiB2YXIoLS1pdC1wcm9kdWN0LWZvbnQtc2l6ZSk7XG5cdFx0XHRcdFx0bGluZS1oZWlnaHQ6IHZhcigtLWl0LXByb2R1Y3QtbGluZS1oZWlnaHQpO1xuXG5cdFx0XHRcdH1cblxuXHRcdFx0XHQuc3RvY2sge1xuXHRcdFx0XHRcdGdyaWQtcm93OiA0IC8gNTtcblx0XHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0XHRcdGdhcDogcy5yZW0oOCk7XG5cdFx0XHRcdFx0Zm9udC1zaXplOiB2YXIoLS1pdC1zaXplLXgtc21hbGwpO1xuXHRcdFx0XHRcdGNvbG9yOiB2YXIoLS1pdC1jb2xvci10ZXh0KTtcblxuXHRcdFx0XHRcdCY6OmJlZm9yZSB7XG5cdFx0XHRcdFx0XHRjb250ZW50OiAnJztcblx0XHRcdFx0XHRcdHdpZHRoOiBzLnJlbSgxNik7XG5cdFx0XHRcdFx0XHRoZWlnaHQ6IHMucmVtKDE2KTtcblx0XHRcdFx0XHRcdGZsZXgtc2hyaW5rOiAwO1xuXHRcdFx0XHRcdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuXHRcdFx0XHRcdFx0YmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuXHRcdFx0XHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKDFweCk7XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0Ji5pbi1zdG9jayB7XG5cblx0XHRcdFx0XHRcdCY6OmJlZm9yZSB7XG5cdFx0XHRcdFx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1nL3dvby1jaGVjay1jaXJjbGUuc3ZnJyk7XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0Ji5hdmFpbGFibGUtb24tYmFja29yZGVyIHtcblxuXHRcdFx0XHRcdFx0Jjo6YmVmb3JlIHtcblx0XHRcdFx0XHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWcvd29vLWNoZWNrLWNpcmNsZS15ZWxsb3cuc3ZnJyk7XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0Ji5vdXQtb2Ytc3RvY2sge1xuXG5cdFx0XHRcdFx0XHQmOjpiZWZvcmUge1xuXHRcdFx0XHRcdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltZy93b28tY3Jvc3MtY2lyY2xlLnN2ZycpO1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXG5cdFx0XHRcdC53b29jb21tZXJjZS1wcm9kdWN0LWRldGFpbHNfX3Nob3J0LWRlc2NyaXB0aW9uIHtcblx0XHRcdFx0XHRmb250LXNpemU6IHZhcigtLWl0LXNpemUtc21hbGwpO1xuXHRcdFx0XHRcdGNvbG9yOiB2YXIoLS1pdC1jb2xvci10ZXh0KTtcblx0XHRcdFx0XHRwYWRkaW5nLXRvcDogdmFyKC0taXQtc3BhY2luZy1kZWZhdWx0LWhhbGYpO1xuXHRcdFx0XHRcdGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1pdC1jb2xvci1ib3JkZXIpO1xuXHRcdFx0XHRcdGZvbnQtc3R5bGU6IGl0YWxpYztcblxuXHRcdFx0XHRcdD4gKjpsYXN0LWNoaWxkIHtcblx0XHRcdFx0XHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cblxuXHRcdFx0XHQucHJpY2Uge1xuXHRcdFx0XHRcdGZvbnQtc2l6ZTogdmFyKC0taXQtaDUtZm9udC1zaXplKTtcblx0XHRcdFx0XHRsaW5lLWhlaWdodDogdmFyKC0taXQtaDUtbGluZS1oZWlnaHQpO1xuXHRcdFx0XHRcdGNvbG9yOiB2YXIoLS1pdC1jb2xvci1ibGFjayk7XG5cblx0XHRcdFx0XHRiZGksXG5cdFx0XHRcdFx0aW5zLFxuXHRcdFx0XHRcdGRlbCxcblx0XHRcdFx0XHQmID4gc3BhbiB7XG5cdFx0XHRcdFx0XHRmb250LXNpemU6IGluaGVyaXQ7XG5cdFx0XHRcdFx0XHRsaW5lLWhlaWdodDogaW5oZXJpdDtcblx0XHRcdFx0XHRcdGNvbG9yOiB2YXIoLS1pdC1jb2xvci1ibGFjayk7XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0ZGVsIHtcblx0XHRcdFx0XHRcdGZvbnQtc2l6ZTogdmFyKC0taXQtaDUtZm9udC1zaXplKTtcblx0XHRcdFx0XHRcdGxpbmUtaGVpZ2h0OiB2YXIoLS1pdC1oNS1saW5lLWhlaWdodCk7XG5cdFx0XHRcdFx0XHRwYWRkaW5nLXJpZ2h0OiAwLjI1cmVtO1xuXG5cdFx0XHRcdFx0XHRiZGkge1xuXHRcdFx0XHRcdFx0XHRvcGFjaXR5OiAwLjU7XG5cdFx0XHRcdFx0XHRcdGZvbnQtc2l6ZTogaW5oZXJpdDtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHRpbnMge1xuXHRcdFx0XHRcdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdD4gLmFtb3VudCB7XG5cblx0XHRcdFx0XHRcdD4gYmRpIHtcblx0XHRcdFx0XHRcdFx0Zm9udC13ZWlnaHQ6IDUwMDtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQubGVnYWwtcHJpY2UtaW5mbyB7XG5cdFx0XHRcdFx0bWFyZ2luLXRvcDogY2FsYyh2YXIoLS1pdC1zcGFjaW5nLWRlZmF1bHQtaGFsZikgKiAtMSk7XG5cdFx0XHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdFx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRcdFx0XHRcdGdhcDogdmFyKC0taXQtc3BhY2luZy1kZWZhdWx0LWhhbGYpO1xuXG5cdFx0XHRcdFx0PiAqIHtcblx0XHRcdFx0XHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cblx0XHRcdFx0LmNhcnQge1xuXHRcdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRcdFx0YWxpZ24taXRlbXM6IHN0cmV0Y2g7XG5cdFx0XHRcdFx0Z2FwOiB2YXIoLS1pdC1zcGFjaW5nLWRlZmF1bHQtaGFsZik7XG5cdFx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0XHRcdFx0XHRAaW5jbHVkZSBzLm1heCgxMjgwKSB7XG5cdFx0XHRcdFx0XHRmbGV4LXdyYXA6IHdyYXA7XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0JjpiZWZvcmUsXG5cdFx0XHRcdFx0JjphZnRlciB7XG5cdFx0XHRcdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdC5xdWFudGl0eS1pbnB1dCB7XG5cdFx0XHRcdFx0XHRvcmRlcjogMTtcblx0XHRcdFx0XHRcdGZsZXgtc2hyaW5rOiAwO1xuXHRcdFx0XHRcdFx0bWFyZ2luLXJpZ2h0OiB2YXIoLS1pdC1zcGFjaW5nLWRlZmF1bHQtaGFsZik7XG5cdFx0XHRcdFx0XHRib3JkZXItcmFkaXVzOiAwO1xuXHRcdFx0XHRcdFx0aGVpZ2h0OiB2YXIoLS1pdC1oZWlnaHQtY2FydCk7XG5cblx0XHRcdFx0XHRcdC5xdHktYnRuIHtcblx0XHRcdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0taXQtY29sb3ItYnJhbmQpO1xuXHRcdFx0XHRcdFx0XHRib3JkZXItY29sb3I6IHZhcigtLWl0LWNvbG9yLWJyYW5kKTtcblx0XHRcdFx0XHRcdFx0Y29sb3I6ICMwMDA7XG5cdFx0XHRcdFx0XHRcdHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4zcyBlYXNlLCBib3JkZXItY29sb3IgMC4zcyBlYXNlLCBjb2xvciAwLjNzIGVhc2U7XG5cblx0XHRcdFx0XHRcdFx0Jjpob3ZlciB7XG5cdFx0XHRcdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogIzAwMDtcblx0XHRcdFx0XHRcdFx0XHRib3JkZXItY29sb3I6ICMwMDA7XG5cdFx0XHRcdFx0XHRcdFx0Y29sb3I6ICNmZmY7XG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdFx0aW5wdXQucXR5IHtcblx0XHRcdFx0XHRcdFx0Ym9yZGVyLWNvbG9yOiAjMDAwO1xuXHRcdFx0XHRcdFx0XHRjb2xvcjogIzAwMDtcblx0XHRcdFx0XHRcdFx0Ym9yZGVyLXJhZGl1czogMDtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHQud29vc3ctYnRuIHtcblx0XHRcdFx0XHRcdG9yZGVyOiAyO1xuXHRcdFx0XHRcdFx0ZmxleC1zaHJpbms6IDA7XG5cdFx0XHRcdFx0XHRtYXJnaW4tcmlnaHQ6IDA7XG5cdFx0XHRcdFx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0LmJ1dHRvbiB7XG5cdFx0XHRcdFx0XHRAZXh0ZW5kICVpdC1idXR0b24tLXByaW1hcnkgIW9wdGlvbmFsO1xuXHRcdFx0XHRcdFx0QGV4dGVuZCAlaXQtYnV0dG9uLS1zbSAhb3B0aW9uYWw7XG5cdFx0XHRcdFx0XHR3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuXHRcdFx0XHRcdFx0b3JkZXI6IDM7XG5cdFx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pdC1jb2xvci1icmFuZCkgIWltcG9ydGFudDtcblx0XHRcdFx0XHRcdGJvcmRlci1jb2xvcjogdmFyKC0taXQtY29sb3ItYnJhbmQpICFpbXBvcnRhbnQ7XG5cdFx0XHRcdFx0XHRjb2xvcjogIzAwMCAhaW1wb3J0YW50O1xuXHRcdFx0XHRcdFx0Ym9yZGVyLXJhZGl1czogMDtcblx0XHRcdFx0XHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdFx0XHRcdFx0XHR0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuM3MgZWFzZSwgYm9yZGVyLWNvbG9yIDAuM3MgZWFzZSwgY29sb3IgMC4zcyBlYXNlO1xuXG5cdFx0XHRcdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogIzAwMCAhaW1wb3J0YW50Oztcblx0XHRcdFx0XHRcdFx0Ym9yZGVyLWNvbG9yOiAjMDAwICFpbXBvcnRhbnQ7O1xuXHRcdFx0XHRcdFx0XHRjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXG5cdFx0XHRcdC5wcm9kdWN0LWljb25zIHtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kOiB2YXIoLS1pdC1jb2xvci1iYWNrZ3JvdW5kKTtcblx0XHRcdFx0XHRib3JkZXItcmFkaXVzOiB2YXIoLS1pdC1ib3JkZXItcmFkaXVzKTtcblx0XHRcdFx0XHRkaXNwbGF5OiBncmlkO1xuXHRcdFx0XHRcdGdyaWQtdGVtcGxhdGUtcm93czogcmVwZWF0KDMsIGF1dG8pO1xuXHRcdFx0XHRcdGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuXHRcdFx0XHRcdHBhZGRpbmc6IC4zNzVyZW0gMDtcblxuXHRcdFx0XHRcdCZfX2l0ZW0ge1xuXHRcdFx0XHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdFx0XHRcdFx0ZGlzcGxheTogaW5saW5lLWZsZXg7XG5cdFx0XHRcdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdFx0XHRcdFx0Z2FwOiAuNXJlbTtcblx0XHRcdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdFx0XHRcdHBhZGRpbmc6IDAuMzc1cmVtIDAuNzVyZW07XG5cdFx0XHRcdFx0XHRmb250LXNpemU6IHZhcigtLWl0LXNpemUteC1zbWFsbCk7XG5cblx0XHRcdFx0XHRcdGltZyxcblx0XHRcdFx0XHRcdHN2ZyB7XG5cdFx0XHRcdFx0XHRcdG1heC13aWR0aDogMS41cmVtO1xuXHRcdFx0XHRcdFx0XHRtYXgtaGVpZ2h0OiAxLjVyZW07XG5cdFx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHRcdGltZyB7XG5cdFx0XHRcdFx0XHRcdG9iamVjdC1maXQ6IGNvbnRhaW47XG5cdFx0XHRcdFx0XHRcdG9iamVjdC1wb3NpdGlvbjogY2VudGVyO1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHQud29vY29tbWVyY2UtdGFicyB7XG5cblx0XHRcdFx0dWwudGFicyB7XG5cdFx0XHRcdFx0cGFkZGluZzogMDtcblx0XHRcdFx0XHRvdmVyZmxvdzogYXV0bztcblx0XHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0XHRcdGdhcDogdmFyKC0taXQtc3BhY2luZy1kZWZhdWx0LWhhbGYpO1xuXHRcdFx0XHRcdG1hcmdpbi1ib3R0b206IHZhcigtLWl0LXNwYWNpbmctY29udGVudCk7XG5cblx0XHRcdFx0XHQmOmJlZm9yZSxcblx0XHRcdFx0XHQmOmFmdGVyIHtcblx0XHRcdFx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0bGkge1xuXHRcdFx0XHRcdFx0bWFyZ2luOiAwO1xuXHRcdFx0XHRcdFx0cGFkZGluZzogMDtcblx0XHRcdFx0XHRcdGJhY2tncm91bmQ6IG5vbmU7XG5cdFx0XHRcdFx0XHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1pdC1jb2xvci1ibGFjayk7XG5cdFx0XHRcdFx0XHRib3JkZXItcmFkaXVzOiAwO1xuXHRcdFx0XHRcdFx0dHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjI1cyBlYXNlLCBjb2xvciAwLjI1cyBlYXNlO1xuXG5cdFx0XHRcdFx0XHRhIHtcblx0XHRcdFx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRcdFx0XHRcdGZvbnQtd2VpZ2h0OiA0MDA7XG5cdFx0XHRcdFx0XHRcdHBhZGRpbmc6IHZhcigtLWl0LXNwYWNpbmctZGVmYXVsdC1oYWxmKSB2YXIoLS1pdC1zcGFjaW5nLWRlZmF1bHQpO1xuXHRcdFx0XHRcdFx0XHR3aGl0ZS1zcGFjZTogbm93cmFwO1xuXHRcdFx0XHRcdFx0XHRsZXR0ZXItc3BhY2luZzogMC4wNGVtO1xuXHRcdFx0XHRcdFx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRcdFx0XHRcdFx0XHRmb250LXNpemU6IHZhcigtLWl0LXNpemUteC1zbWFsbCk7XG5cdFx0XHRcdFx0XHRcdGNvbG9yOiB2YXIoLS1pdC1jb2xvci1ibGFjayk7XG5cdFx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHRcdCY6YmVmb3JlLFxuXHRcdFx0XHRcdFx0JjphZnRlciB7XG5cdFx0XHRcdFx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHRcdFx0XHRiYWNrZ3JvdW5kOiB2YXIoLS1pdC1jb2xvci1iYWNrZ3JvdW5kKTtcblx0XHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdFx0Ji5hY3RpdmUge1xuXHRcdFx0XHRcdFx0XHRiYWNrZ3JvdW5kOiB2YXIoLS1pdC1jb2xvci1ibGFjayk7XG5cblx0XHRcdFx0XHRcdFx0YSB7XG5cdFx0XHRcdFx0XHRcdFx0Y29sb3I6IHZhcigtLWl0LWNvbG9yLXdoaXRlKTtcblx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXG5cdFx0XHRcdC53b29jb21tZXJjZS1UYWJzLXBhbmVsIHtcblx0XHRcdFx0XHRtYXJnaW46IDA7XG5cblx0XHRcdFx0XHRoMiB7XG5cdFx0XHRcdFx0XHRmb250LXNpemU6IHZhcigtLWl0LWgzLWZvbnQtc2l6ZSk7XG5cdFx0XHRcdFx0XHRsaW5lLWhlaWdodDogdmFyKC0taXQtaDMtbGluZS1oZWlnaHQpO1xuXHRcdFx0XHRcdFx0bWFyZ2luLWJvdHRvbTogdmFyKC0taXQtc3BhY2luZy1kZWZhdWx0KTtcblx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHQucHJvZHVjdC1ub3RlcyB7XG5cdFx0XHRcdFx0XHRtYXJnaW4tYm90dG9tOiB2YXIoLS1pdC1zcGFjaW5nLWNvbnRlbnQpO1xuXG5cdFx0XHRcdFx0XHQmX19saXN0IHtcblx0XHRcdFx0XHRcdFx0bWFyZ2luOiAwO1xuXHRcdFx0XHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0XHRcdFx0bWF4LXdpZHRoOiBzLnJlbSg1NjApO1xuXHRcdFx0XHRcdFx0XHRkaXNwbGF5OiBncmlkO1xuXHRcdFx0XHRcdFx0XHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDM1JSAxZnI7XG5cdFx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHRcdCZfX2xhYmVsLFxuXHRcdFx0XHRcdFx0Jl9fdmFsdWUge1xuXHRcdFx0XHRcdFx0XHRtYXJnaW46IDA7XG5cdFx0XHRcdFx0XHRcdHBhZGRpbmc6IHZhcigtLWl0LXNwYWNpbmctZGVmYXVsdC1oYWxmKSAwO1xuXHRcdFx0XHRcdFx0XHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0taXQtY29sb3ItYm9yZGVyKTtcblx0XHRcdFx0XHRcdFx0bGluZS1oZWlnaHQ6IDEuNDtcblx0XHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdFx0Jl9fbGFiZWwge1xuXHRcdFx0XHRcdFx0XHRmb250LXdlaWdodDogNDAwO1xuXHRcdFx0XHRcdFx0XHRsZXR0ZXItc3BhY2luZzogMC4wNGVtO1xuXHRcdFx0XHRcdFx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRcdFx0XHRcdFx0XHRmb250LXNpemU6IHZhcigtLWl0LXNpemUteC1zbWFsbCk7XG5cdFx0XHRcdFx0XHRcdGNvbG9yOiB2YXIoLS1pdC1jb2xvci10ZXh0KTtcblx0XHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdFx0Jl9fdmFsdWUge1xuXHRcdFx0XHRcdFx0XHRmb250LXNpemU6IHZhcigtLWl0LXNpemUtc21hbGwpO1xuXHRcdFx0XHRcdFx0XHRjb2xvcjogdmFyKC0taXQtY29sb3ItYmxhY2spO1xuXHRcdFx0XHRcdFx0XHRmb250LXN0eWxlOiBpdGFsaWM7XG5cdFx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHRcdC8vIERyb3AgdGhlIGxhc3Qgcm93J3MgZGl2aWRlciAobGFzdCBkdCArIGxhc3QgZGQpLlxuXHRcdFx0XHRcdFx0Jl9fbGFiZWw6bnRoLWxhc3QtY2hpbGQoMiksXG5cdFx0XHRcdFx0XHQmX192YWx1ZTpsYXN0LWNoaWxkIHtcblx0XHRcdFx0XHRcdFx0Ym9yZGVyLWJvdHRvbTogMDtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHR0YWJsZS5zaG9wX2F0dHJpYnV0ZXMge1xuXHRcdFx0XHRcdFx0bWFyZ2luOiAwO1xuXHRcdFx0XHRcdFx0Ym9yZGVyOiAwO1xuXHRcdFx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRcdFx0XHRtYXgtd2lkdGg6IHMucmVtKDU2MCk7XG5cblx0XHRcdFx0XHRcdHRyIHtcblx0XHRcdFx0XHRcdFx0Ym9yZGVyOiAwO1xuXHRcdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0XHR0aCxcblx0XHRcdFx0XHRcdHRkIHtcblx0XHRcdFx0XHRcdFx0cGFkZGluZzogdmFyKC0taXQtc3BhY2luZy1kZWZhdWx0LWhhbGYpIDA7XG5cdFx0XHRcdFx0XHRcdGJvcmRlcjogMDtcblx0XHRcdFx0XHRcdFx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWl0LWNvbG9yLWJvcmRlcik7XG5cdFx0XHRcdFx0XHRcdHRleHQtYWxpZ246IGxlZnQ7XG5cdFx0XHRcdFx0XHRcdHZlcnRpY2FsLWFsaWduOiB0b3A7XG5cdFx0XHRcdFx0XHRcdGxpbmUtaGVpZ2h0OiAxLjQ7XG5cdFx0XHRcdFx0XHRcdGJhY2tncm91bmQ6IG5vbmUgIWltcG9ydGFudDtcblx0XHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdFx0dGgge1xuXHRcdFx0XHRcdFx0XHR3aWR0aDogMzUlO1xuXHRcdFx0XHRcdFx0XHRmb250LXdlaWdodDogNDAwO1xuXHRcdFx0XHRcdFx0XHRsZXR0ZXItc3BhY2luZzogMC4wNGVtO1xuXHRcdFx0XHRcdFx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRcdFx0XHRcdFx0XHRmb250LXNpemU6IHZhcigtLWl0LXNpemUteC1zbWFsbCk7XG5cdFx0XHRcdFx0XHRcdGNvbG9yOiB2YXIoLS1pdC1jb2xvci10ZXh0KTtcblx0XHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdFx0dGQge1xuXHRcdFx0XHRcdFx0XHRmb250LXNpemU6IHZhcigtLWl0LXNpemUtc21hbGwpO1xuXHRcdFx0XHRcdFx0XHRjb2xvcjogdmFyKC0taXQtY29sb3ItYmxhY2spO1xuXG5cdFx0XHRcdFx0XHRcdHAge1xuXHRcdFx0XHRcdFx0XHRcdG1hcmdpbjogMDtcblx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0XHR0cjpsYXN0LWNoaWxkIHtcblxuXHRcdFx0XHRcdFx0XHR0aCxcblx0XHRcdFx0XHRcdFx0dGQge1xuXHRcdFx0XHRcdFx0XHRcdGJvcmRlci1ib3R0b206IDA7XG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0LmFkZGl0aW9uYWwtcHJvZHVjdHMge1xuXG5cdFx0XHRcdCZfX2hlYWRlciB7XG5cdFx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXG5cdFx0XHRcdFx0aDIge1xuXHRcdFx0XHRcdFx0cGFkZGluZy1yaWdodDogcy5yZW0oMTAwKTtcblx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHQuc3dpcGVyLWJ1dHRvbnMge1xuXHRcdFx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHRcdFx0ZGlzcGxheTogaW5saW5lLWZsZXg7XG5cdFx0XHRcdFx0XHRnYXA6IHZhcigtLWl0LXNwYWNpbmctZGVmYXVsdCk7XG5cdFx0XHRcdFx0XHRyaWdodDogMDtcblx0XHRcdFx0XHRcdHRvcDogNTAlO1xuXHRcdFx0XHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuXG5cdFx0XHRcdFx0XHQvLyBIaWRlIGJ1dHRvbnMgd2hlbiBib3RoIGJ1dHRvbnMgYXJlIGRpc2FibGVkXG5cdFx0XHRcdFx0XHQmOmhhcyguc3dpcGVyLWJ1dHRvbi1wcmV2LnN3aXBlci1idXR0b24tZGlzYWJsZWQpOmhhcyguc3dpcGVyLWJ1dHRvbi1uZXh0LnN3aXBlci1idXR0b24tZGlzYWJsZWQpIHtcblx0XHRcdFx0XHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQuc3dpcGVyLXByb2R1Y3RzIHtcblx0XHRcdFx0XHRtYXJnaW4tdG9wOiB2YXIoLS1pdC1zcGFjaW5nLWNvbnRlbnQpO1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0LnN3aXBlci1zbGlkZSB7XG5cdFx0XHRcdFx0cGFkZGluZy1yaWdodDogMXB4O1xuXG5cdFx0XHRcdFx0dWwucHJvZHVjdHMge1xuXHRcdFx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0Ly8gNjc2IGlzIGEgbnVtYmVyIGZyb20gX3Byb2R1Y3Qtc2luZ2xlLmpzXG5cdEBpbmNsdWRlIHMubWluLW1heCgwLCA2NzYpIHtcblxuXHRcdCNjb250ZW50IHtcblxuXHRcdFx0ZGl2LnByb2R1Y3Qge1xuXG5cdFx0XHRcdC5hZGRpdGlvbmFsLXByb2R1Y3RzIHtcblxuXHRcdFx0XHRcdCZfX2hlYWRlciB7XG5cblx0XHRcdFx0XHRcdGgyIHtcblx0XHRcdFx0XHRcdFx0cGFkZGluZy1yaWdodDogMDtcblx0XHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdFx0LnN3aXBlci1idXR0b25zIHtcblx0XHRcdFx0XHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHQuc3dpcGVyLXNsaWRlIHtcblx0XHRcdFx0XHRcdHdpZHRoOiBtYXgoI3tzLnJlbSgyODApfSwgODB2dyk7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0QGluY2x1ZGUgcy5taW4tbWF4KDAsIDY3Nikge1xuXHRcdCNjb250ZW50IGRpdi5wcm9kdWN0IHtcblx0XHRcdCYucHJvZHVjdC10eXBlLXZhcmlhYmxlIGRpdi5zdW1tYXJ5IC5jYXJ0IHtcblx0XHRcdFx0LnZhcmlhdGlvbnNfYnV0dG9uLFxuXHRcdFx0XHQuY2FydCB7XG5cdFx0XHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdFx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRcdFx0XHRcdGNvbHVtbi1nYXA6IHZhcigtLWl0LXNwYWNpbmctZGVmYXVsdC1oYWxmKTtcblx0XHRcdFx0XHRyb3ctZ2FwOiB2YXIoLS1pdC1zcGFjaW5nLWRlZmF1bHQtaGFsZik7XG5cdFx0XHRcdFx0YWxpZ24taXRlbXM6IHN0cmV0Y2g7XG5cblx0XHRcdFx0XHQucXVhbnRpdHksXG5cdFx0XHRcdFx0LnF1YW50aXR5LWlucHV0IHtcblx0XHRcdFx0XHRcdG1hcmdpbi1yaWdodDogMDtcblxuXHRcdFx0XHRcdFx0aW5wdXQge1xuXHRcdFx0XHRcdFx0XHR3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuXHRcdFx0XHRcdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdGRpdi5zdW1tYXJ5IC5jYXJ0IHtcblx0XHRcdFx0LnF1YW50aXR5LFxuXHRcdFx0XHQucXVhbnRpdHktaW5wdXQge1xuXHRcdFx0XHRcdG1hcmdpbi1yaWdodDogMDtcblx0XHRcdFx0XHR3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuXG5cdFx0XHRcdFx0aW5wdXQge1xuXHRcdFx0XHRcdFx0d2lkdGg6IDEwMCUgIWltcG9ydGFudDtcblx0XHRcdFx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0Lndvb2NvbW1lcmNlLXRhYnMge1xuXG5cdFx0XHRcdC8vIEhpZGUgdGFiIG5hdmlnYXRpb24gb24gbW9iaWxlIOKAlCBoZWFkaW5ncyBiZWNvbWUgYWNjb3JkaW9uIHRyaWdnZXJzLlxuXHRcdFx0XHR1bC50YWJzIHtcblx0XHRcdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0Ly8gRm9yY2UgYWxsIHBhbmVscyB2aXNpYmxlIChXb29Db21tZXJjZSBzZXRzIGlubGluZSBkaXNwbGF5Om5vbmUgb24gaW5hY3RpdmUpLlxuXHRcdFx0XHQud29vY29tbWVyY2UtVGFicy1wYW5lbCB7XG5cdFx0XHRcdFx0ZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcblx0XHRcdFx0XHRtYXJnaW46IDA7XG5cdFx0XHRcdFx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWl0LWNvbG9yLWJvcmRlcik7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQudGFiLWFjY29yZGlvbiB7XG5cblx0XHRcdFx0XHQmX19oZWFkZXIge1xuXHRcdFx0XHRcdFx0bWFyZ2luOiAwICFpbXBvcnRhbnQ7XG5cdFx0XHRcdFx0XHRwYWRkaW5nOiB2YXIoLS1pdC1zcGFjaW5nLWRlZmF1bHQpIDA7XG5cdFx0XHRcdFx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cdFx0XHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0XHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRcdFx0XHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcblx0XHRcdFx0XHRcdGZvbnQtc2l6ZTogdmFyKC0taXQtaDMtZm9udC1zaXplKTtcblxuXHRcdFx0XHRcdFx0JjphZnRlciB7XG5cdFx0XHRcdFx0XHRcdGNvbnRlbnQ6ICcrJztcblx0XHRcdFx0XHRcdFx0Zm9udC1zaXplOiAxLjVlbTtcblx0XHRcdFx0XHRcdFx0bGluZS1oZWlnaHQ6IDE7XG5cdFx0XHRcdFx0XHRcdHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjI1cyBlYXNlO1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdCZfX2JvZHkge1xuXHRcdFx0XHRcdFx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0XHRcdFx0XHRcdG1heC1oZWlnaHQ6IDA7XG5cdFx0XHRcdFx0XHR0cmFuc2l0aW9uOiBtYXgtaGVpZ2h0IDAuM3MgZWFzZTtcblx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHQmLmlzLW9wZW4ge1xuXG5cdFx0XHRcdFx0XHQudGFiLWFjY29yZGlvbl9faGVhZGVyOmFmdGVyIHtcblx0XHRcdFx0XHRcdFx0Y29udGVudDogJ+KIkic7XG5cdFx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHRcdC50YWItYWNjb3JkaW9uX19ib2R5IHtcblx0XHRcdFx0XHRcdFx0bWF4LWhlaWdodDogMjAwdmg7IC8vIGxhcmdlIGVub3VnaDsgYW5pbWF0ZXMgY29sbGFwc2UvZXhwYW5kXG5cdFx0XHRcdFx0XHRcdHBhZGRpbmctYm90dG9tOiB2YXIoLS1pdC1zcGFjaW5nLWRlZmF1bHQpO1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdEBpbmNsdWRlIHMubWluKHMuJHNtKSB7XG5cblx0XHQjY29udGVudCB7XG5cblx0XHRcdGRpdi5wcm9kdWN0IHtcblx0XHRcdFx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBtaW5tYXgoMCwgMWZyKSBtaW5tYXgoMCwgMWZyKTtcblx0XHRcdFx0YWxpZ24taXRlbXM6IHN0YXJ0O1xuXG5cdFx0XHRcdC5wcm9kdWN0LWdhbGxlcnktd3JhcHBlciB7XG5cdFx0XHRcdFx0Z3JpZC1jb2x1bW46IDEgLyAyO1xuXHRcdFx0XHRcdHdpZHRoOiBhdXRvO1xuXG5cdFx0XHRcdH1cblxuXHRcdFx0XHRkaXYuc3VtbWFyeSB7XG5cdFx0XHRcdFx0bWF4LXdpZHRoOiBzLnJlbSg1MDApO1xuXHRcdFx0XHRcdG1pbi13aWR0aDogMDtcblxuXHRcdFx0XHRcdC5wcm9kdWN0LWljb25zIHtcblx0XHRcdFx0XHRcdHBhZGRpbmc6IDFyZW0gMDtcblx0XHRcdFx0XHRcdGdyaWQtdGVtcGxhdGUtcm93czogYXV0bztcblx0XHRcdFx0XHRcdGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIDFmcik7XG5cblx0XHRcdFx0XHRcdCZfX2l0ZW0ge1xuXHRcdFx0XHRcdFx0XHRwYWRkaW5nOiAwIDAuNzVyZW07XG5cdFx0XHRcdFx0XHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cblx0XHRcdFx0XHRcdFx0JjphZnRlciB7XG5cdFx0XHRcdFx0XHRcdFx0Y29udGVudDogJyc7XG5cdFx0XHRcdFx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHRcdFx0XHRcdHJpZ2h0OiAwO1xuXHRcdFx0XHRcdFx0XHRcdHdpZHRoOiAxcHg7XG5cdFx0XHRcdFx0XHRcdFx0aGVpZ2h0OiA3NSU7XG5cdFx0XHRcdFx0XHRcdFx0dG9wOiA1MCU7XG5cdFx0XHRcdFx0XHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuXHRcdFx0XHRcdFx0XHRcdGJhY2tncm91bmQ6IHZhcigtLWl0LWNvbG9yLWJvcmRlcik7XG5cdFx0XHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdFx0XHQmOmxhc3QtY2hpbGQge1xuXG5cdFx0XHRcdFx0XHRcdFx0JjphZnRlciB7XG5cdFx0XHRcdFx0XHRcdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXG5cdFx0XHRcdC53b29jb21tZXJjZS10YWJzIHtcblx0XHRcdFx0XHRncmlkLWNvbHVtbjogMSAvIDM7XG5cblx0XHRcdFx0XHQucHJvZHVjdC1ub3Rlc19fdGllciB7XG5cblx0XHRcdFx0XHRcdCYtLXRvcCB7XG5cdFx0XHRcdFx0XHRcdHdpZHRoOiA0NSU7XG5cdFx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHRcdCYtLWhlYXJ0IHtcblx0XHRcdFx0XHRcdFx0d2lkdGg6IDY4JTtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQuYWRkaXRpb25hbC1wcm9kdWN0cyB7XG5cdFx0XHRcdFx0Z3JpZC1jb2x1bW46IDEgLyAzO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0QGluY2x1ZGUgcy5taW4ocy4kbWQpIHtcblxuXHRcdCNjb250ZW50IHtcblxuXHRcdFx0ZGl2LnByb2R1Y3Qge1xuXHRcdFx0XHRnYXA6IHZhcigtLWl0LXNwYWNpbmctc2VjdGlvbik7XG5cblx0XHRcdFx0LnByb2R1Y3QtZ2FsbGVyeS13cmFwcGVyIHtcblx0XHRcdFx0XHRtYXgtd2lkdGg6IDQ4MHB4O1xuXHRcdFx0XHRcdG1hcmdpbjogMCBhdXRvO1xuXHRcdFx0XHRcdG1heC1oZWlnaHQ6IDUwMHB4O1xuXHRcdFx0XHRcdG92ZXJmbG93OiBoaWRkZW47XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQmLnByb2R1Y3QtdHlwZS1ncm91cGVkIHtcblxuXHRcdFx0XHRcdGRpdi5zdW1tYXJ5IHtcblxuXHRcdFx0XHRcdFx0LmNhcnQge1xuXG5cdFx0XHRcdFx0XHRcdC53b29jb21tZXJjZS1ncm91cGVkLXByb2R1Y3QtbGlzdC1pdGVtIHtcblx0XHRcdFx0XHRcdFx0XHRncmlkLXRlbXBsYXRlLXJvd3M6IGF1dG87XG5cdFx0XHRcdFx0XHRcdFx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBzLnJlbSg4NSkgMWZyIHMucmVtKDE2MCk7XG5cdFx0XHRcdFx0XHRcdFx0cGFkZGluZy1ib3R0b206IDA7XG5cdFx0XHRcdFx0XHRcdFx0Ym9yZGVyLWJvdHRvbTogMDtcblxuXHRcdFx0XHRcdFx0XHRcdCYub3V0b2ZzdG9jayB7XG5cdFx0XHRcdFx0XHRcdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdFx0XHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdFx0XHRcdCZfX2xhYmVsIHtcblx0XHRcdFx0XHRcdFx0XHRcdGdyaWQtY29sdW1uOiBhdXRvO1xuXHRcdFx0XHRcdFx0XHRcdFx0Z3JpZC1yb3c6IGF1dG87XG5cdFx0XHRcdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0XHRcdFx0Jl9fcHJpY2Uge1xuXHRcdFx0XHRcdFx0XHRcdFx0dGV4dC1hbGlnbjogbGVmdDtcblx0XHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cblxuXG4ud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgZm9ybS5jYXJ0IC52YXJpYXRpb25zIHNlbGVjdCB7XG5cdGJvcmRlci1yYWRpdXM6IDNweDtcbn1cblxuLnZhcmlhdGlvbnMtZm9ybS0tc3dhdGNoZXMge1xuXHQudmFyaWF0aW9uLWJ1dHRvbnMge1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0ZmxleC13cmFwOiB3cmFwO1xuXHRcdGdhcDogOHB4O1xuXHRcdG1hcmdpbi1ib3R0b206IDE2cHg7XG5cdH1cblxuXHQudmFyaWF0aW9uLWJ0biB7XG5cdFx0ZGlzcGxheTogaW5saW5lLWZsZXg7XG5cdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0XHRtaW4td2lkdGg6IDcycHg7XG5cdFx0cGFkZGluZzogMTBweCAxNnB4O1xuXHRcdGJvcmRlcjogMXB4IHNvbGlkICNkOWQ5ZDk7XG5cdFx0Ym9yZGVyLXJhZGl1czogOHB4O1xuXHRcdGJhY2tncm91bmQ6ICNmZmY7XG5cdFx0Zm9udC1zaXplOiAxNHB4O1xuXHRcdGxpbmUtaGVpZ2h0OiAxO1xuXHRcdGN1cnNvcjogcG9pbnRlcjtcblx0XHR0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgMC4xNXMsIGJveC1zaGFkb3cgMC4xNXM7XG5cblx0XHQmOmhvdmVyOm5vdCguaXMtZGlzYWJsZWQpIHtcblx0XHRcdGJvcmRlci1jb2xvcjogIzAwMDtcblx0XHR9XG5cblx0XHQmLmlzLXNlbGVjdGVkIHtcblx0XHRcdGJvcmRlci1jb2xvcjogIzAwMDtcblx0XHRcdGJvcmRlci13aWR0aDogMnB4O1xuXHRcdFx0Ym94LXNoYWRvdzogbm9uZTtcblx0XHR9XG5cblx0XHQmLmlzLWRpc2FibGVkIHtcblx0XHRcdG9wYWNpdHk6IDAuMzU7XG5cdFx0XHRjdXJzb3I6IG5vdC1hbGxvd2VkO1xuXHRcdFx0cG9pbnRlci1ldmVudHM6IG5vbmU7XG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cblx0XHRcdC8vINCf0LXRgNC10YfRkdGA0LrQuNCy0LDQvdC40LVcblx0XHRcdCY6OmFmdGVyIHtcblx0XHRcdFx0Y29udGVudDogJyc7XG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0aW5zZXQ6IDA7XG5cdFx0XHRcdGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudChcblx0XHRcdFx0XHRcdHRvIHRvcCByaWdodCxcblx0XHRcdFx0XHRcdHRyYW5zcGFyZW50IGNhbGMoNTAlIC0gMC41cHgpLFxuXHRcdFx0XHRcdFx0I2NjYyBjYWxjKDUwJSAtIDAuNXB4KSxcblx0XHRcdFx0XHRcdCNjY2MgY2FsYyg1MCUgKyAwLjVweCksXG5cdFx0XHRcdFx0XHR0cmFuc3BhcmVudCBjYWxjKDUwJSArIDAuNXB4KVxuXHRcdFx0XHQpO1xuXHRcdFx0XHRib3JkZXItcmFkaXVzOiBpbmhlcml0O1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC5yZXNldF92YXJpYXRpb25zIHtcblx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0bWFyZ2luLXRvcDogNHB4O1xuXHRcdGZvbnQtc2l6ZTogMTJweDtcblx0XHRjb2xvcjogIzc2NzY3Njtcblx0XHR0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcblxuXHRcdCY6aG92ZXIge1xuXHRcdFx0Y29sb3I6ICMwMDA7XG5cdFx0fVxuXHR9XG59XG5cbi5idXktbm93IHtcblx0QGV4dGVuZCAlaXQtYnV0dG9uLS1zZWNvbmRhcnkgIW9wdGlvbmFsO1xuXHRAZXh0ZW5kICVpdC1idXR0b24tLXNtICFvcHRpb25hbDtcblx0b3JkZXI6IDQ7XG5cdHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG5cdGJvcmRlci1yYWRpdXM6IDNweDtcblx0YmFja2dyb3VuZDogdmFyKC0taXQtY29sb3ItYmxhY2spICFpbXBvcnRhbnQ7XG5cdGJvcmRlci1jb2xvcjogdmFyKC0taXQtY29sb3ItYmxhY2spICFpbXBvcnRhbnQ7XG5cdGNvbG9yOiB2YXIoLS1pdC1jb2xvci13aGl0ZSkgIWltcG9ydGFudDtcblx0dHJhbnNpdGlvbjogb3BhY2l0eSAwLjI1cyBlYXNlLCBiYWNrZ3JvdW5kLWNvbG9yIDAuMjVzIGVhc2U7XG5cblx0Jjpob3ZlciB7XG5cdFx0YmFja2dyb3VuZDogdmFyKC0taXQtY29sb3ItYnJhbmQpICFpbXBvcnRhbnQ7XG5cdFx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1pdC1jb2xvci1icmFuZCkgIWltcG9ydGFudDtcblx0XHRjb2xvcjogdmFyKC0taXQtY29sb3ItYmxhY2spICFpbXBvcnRhbnQ7XG5cdH1cblxuXHQmLmRpc2FibGVkLFxuXHQmOmRpc2FibGVkIHtcblx0XHRvcGFjaXR5OiAwLjQ7XG5cdFx0cG9pbnRlci1ldmVudHM6IG5vbmU7XG5cdH1cblxuXHQmLmlzLWxvYWRpbmcge1xuXHRcdG9wYWNpdHk6IDAuNjtcblx0XHRwb2ludGVyLWV2ZW50czogbm9uZTtcblx0fVxufVxuIiwiQHVzZSAnbWl4aW5zLW1lZGlhLXF1ZXJ5JztcbkB1c2UgJ3ZhcnMnO1xuXG4vLyBUZXh0IHRydW5jYXRlXG4vLyBSZXF1aXJlcyBpbmxpbmUtYmxvY2sgb3IgYmxvY2sgZm9yIHByb3BlciBzdHlsaW5nXG5AbWl4aW4gdGV4dC10cnVuY2F0ZSB7XG5cdG92ZXJmbG93OiBoaWRkZW47XG5cdHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuXHR3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4vLyBObyBhdXRvZmlsbCBjb2xvciBmb3IgaW5wdXRzXG5AbWl4aW4gbm8tYXV0b2ZpbGwge1xuXG5cdCY6LXdlYmtpdC1hdXRvZmlsbCxcblx0Jjotd2Via2l0LWF1dG9maWxsOmhvdmVyLFxuXHQmOi13ZWJraXQtYXV0b2ZpbGw6Zm9jdXMsXG5cdCY6LXdlYmtpdC1hdXRvZmlsbDphY3RpdmUge1xuXHRcdHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMHMgOTk5OXM7IC8vIHVzZSBhIHJlYWxseSBsYXJnZSBkZWxheSBoZXJlXG5cdH1cblxuXHQvLyBDaGFuZ2UgdGV4dCBpbiBhdXRvZmlsbCB0ZXh0Ym94XG5cdCY6LXdlYmtpdC1hdXRvZmlsbCB7XG5cdFx0LXdlYmtpdC10ZXh0LWZpbGwtY29sb3I6IHZhcigtLWl0LWNvbG9yLWJsYWNrKTtcblx0fVxufVxuXG4vLyBSZXNwb25zaXZlIGhvdmVyLCBvbmx5IG9uIGRldmljZXMgd2l0aCB3aWR0aCA+IDE0NDBweFxuQG1peGluIGhvdmVyKCRicDogdmFycy4kbGcpIHtcblxuXHRAaW5jbHVkZSBtaXhpbnMtbWVkaWEtcXVlcnkubWluKCRicCkge1xuXG5cdFx0Jjpob3ZlciB7XG5cdFx0XHRAY29udGVudDtcblx0XHR9XG5cdH1cbn1cblxuLy8gUGxhY2Vob2xkZXIgZm9yIGFsbCBicm93c2Vyc1xuQG1peGluIHBsYWNlaG9sZGVyIHtcblxuXHQmOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG5cdFx0QGNvbnRlbnQ7XG5cdH1cblxuXHQmOi1tb3otcGxhY2Vob2xkZXIge1xuXHRcdEBjb250ZW50O1xuXHR9XG5cblx0Jjo6LW1vei1wbGFjZWhvbGRlciB7XG5cdFx0QGNvbnRlbnQ7XG5cdH1cblxuXHQmOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtcblx0XHRAY29udGVudDtcblx0fVxuXG5cdCY6OnBsYWNlaG9sZGVyIHtcblx0XHRAY29udGVudDtcblx0fVxufVxuXG4vLyBDdXN0b20gc2Nyb2xsYmFyIHN0eWxpbmdcbkBtaXhpbiBzY3JvbGxiYXIoXG5cdCR3aWR0aDogNnB4LFxuXHQkY29sb3ItYm9yZGVyOiB2YXIoLS1pdC1jb2xvci1icmFuZCksXG5cdCRjb2xvci10cmFjazogdmFyKC0taXQtY29sb3ItYmFja2dyb3VuZClcbikge1xuXHRvdmVyZmxvdy15OiBhdXRvO1xuXG5cdCY6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcblx0XHR3aWR0aDogJHdpZHRoO1xuXHR9XG5cblx0Jjo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2sge1xuXHRcdGJhY2tncm91bmQ6ICRjb2xvci10cmFjaztcblx0XHRib3JkZXItcmFkaXVzOiBjYWxjKCR3aWR0aCAvIDIpO1xuXHR9XG5cblx0Jjo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWIge1xuXHRcdHdpZHRoOiAkd2lkdGg7XG5cdFx0aGVpZ2h0OiA2MHB4O1xuXHRcdGJvcmRlci1yYWRpdXM6IGNhbGMoJHdpZHRoIC8gMik7XG5cdFx0YmFja2dyb3VuZDogJGNvbG9yLWJvcmRlcjtcblx0fVxufVxuXG5AbWl4aW4gc2Nyb2xsYmFyLXgoXG5cdCRoZWlnaHQ6IDZweCxcblx0JGNvbG9yLWJvcmRlcjogdmFyKC0taXQtY29sb3ItYnJhbmQpLFxuXHQkY29sb3ItdHJhY2s6IHZhcigtLWl0LWNvbG9yLWJhY2tncm91bmQpXG4pIHtcblx0b3ZlcmZsb3cteDogYXV0bztcblxuXHQmOjotd2Via2l0LXNjcm9sbGJhcjpob3Jpem9udGFsIHtcblx0XHRiYWNrZ3JvdW5kOiAkY29sb3ItYm9yZGVyO1xuXHRcdGhlaWdodDogJGhlaWdodDtcblx0fVxuXG5cdCY6Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNrOmhvcml6b250YWwge1xuXHRcdGJhY2tncm91bmQ6ICRjb2xvci10cmFjaztcblx0XHRib3JkZXItcmFkaXVzOiBjYWxjKCRoZWlnaHQgLyAyKTtcblx0fVxuXG5cdCY6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iOmhvcml6b250YWwge1xuXHRcdHdpZHRoOiA2MHB4O1xuXHRcdGJhY2tncm91bmQ6ICRjb2xvci1ib3JkZXI7XG5cdFx0Ym9yZGVyLXJhZGl1czogY2FsYygkaGVpZ2h0IC8gMik7XG5cdH1cbn1cblxuLy8gQ2xlYXIgZGVmYXVsdCBzdHlsaW5nIGZvciBidXR0b24gZWxlbWVudHNcbkBtaXhpbiB1bnN0eWxlZC1idXR0b24ge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblx0Y29sb3I6IGN1cnJlbnRjb2xvcjtcblx0Ym9yZGVyOiAwO1xuXHRtYXJnaW46IDA7XG5cdHBhZGRpbmc6IDA7XG5cdG91dGxpbmU6IHVuc2V0O1xuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi8vIENsZWFyIGRlZmF1bHQgc3R5bGluZyBmb3IgbGlzdCBlbGVtZW50c1xuQG1peGluIHVuc3R5bGVkLWxpc3Qge1xuXHRsaXN0LXN0eWxlOiBub25lO1xuXHRtYXJnaW46IDA7XG5cdHBhZGRpbmc6IDA7XG59XG5cbi8vIExpbWl0IHRleHQgdG8gTiBsaW5lc1xuQG1peGluIGxpbWl0LWxpbmVzKCRudW06IDQpIHtcblx0ZGlzcGxheTogLXdlYmtpdC1ib3g7XG5cdGxpbmUtY2xhbXA6ICRudW07XG5cdG92ZXJmbG93OiBoaWRkZW47XG5cdHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuXHQtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xuXHQtd2Via2l0LWxpbmUtY2xhbXA6ICRudW07XG59XG5cbi8vIE1peGluIGZvciBhbGwgaGVhZGluZ3NcbkBtaXhpbiBoZWFkaW5ncygpIHtcblxuXHRoMSxcblx0LmgxLFxuXHRoMixcblx0LmgyLFxuXHRoMyxcblx0LmgzLFxuXHRoNCxcblx0Lmg0LFxuXHRoNSxcblx0Lmg1LFxuXHRoNixcblx0Lmg2IHtcblx0XHRAY29udGVudDtcblx0fVxufVxuXG4vLyBBbmltYXRlZCB1bmRlcmxpbmUgbWl4aW5cbkBtaXhpbiBhbmltYXRlZC11bmRlcmxpbmUoJGhlaWdodDogMXB4LCAkcG9zaXRpb246IDFweCwgJGRpc3BsYXk6IGlubGluZS1ibG9jaywgJHdpZHRoOiAxMDAlLCAkY29sb3I6IGN1cnJlbnRDb2xvcikge1xuXHRkaXNwbGF5OiAkZGlzcGxheTtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cblx0JjpiZWZvcmUge1xuXHRcdGNvbnRlbnQ6ICcnO1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRib3R0b206ICRwb3NpdGlvbjtcblx0XHRsZWZ0OiAwO1xuXHRcdHdpZHRoOiAwO1xuXHRcdG9wYWNpdHk6IDA7XG5cdFx0aGVpZ2h0OiAkaGVpZ2h0O1xuXHRcdGJhY2tncm91bmQ6ICRjb2xvcjtcblx0XHR0cmFuc2l0aW9uOiB3aWR0aCB2YXIoLS1pdC10cmFuc2l0aW9uKSwgb3BhY2l0eSAuMXMgbGluZWFyIC4ycztcblx0fVxuXG5cdCY6aG92ZXIge1xuXHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuXG5cdFx0JjpiZWZvcmUge1xuXHRcdFx0d2lkdGg6ICR3aWR0aDtcblx0XHRcdG9wYWNpdHk6IDE7XG5cdFx0XHR0cmFuc2l0aW9uOiB3aWR0aCB2YXIoLS1pdC10cmFuc2l0aW9uKSwgb3BhY2l0eSAuMXMgbGluZWFyO1xuXHRcdH1cblx0fVxufVxuXG4vLyBTdGF0aWMgdW5kZXJsaW5lIG1peGluXG5AbWl4aW4gc3RhdGljLXVuZGVybGluZSgkaGVpZ2h0OiAxcHgsICRwb3NpdGlvbjogMXB4LCAkZGlzcGxheTogaW5saW5lLWJsb2NrLCAkd2lkdGg6IDEwMCUsICRjb2xvcjogY3VycmVudENvbG9yKSB7XG5cdGRpc3BsYXk6ICRkaXNwbGF5O1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuXHQmOmJlZm9yZSB7XG5cdFx0Y29udGVudDogJyc7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdGJvdHRvbTogJHBvc2l0aW9uO1xuXHRcdGxlZnQ6IDA7XG5cdFx0d2lkdGg6ICR3aWR0aDtcblx0XHRoZWlnaHQ6ICRoZWlnaHQ7XG5cdFx0YmFja2dyb3VuZDogJGNvbG9yO1xuXHR9XG59XG4iLCIvKipcbiAqIERvIG5vdCBAdXNlIGZpbGVzIHdpdGggYWN0dWFsIHNjc3MgY29kZSBpbiB0aGlzIGZpbGUsIGFzIGl0IHdpbGwgY29tcGlsZSBjc3MgY29kZSB0d2ljZS5cbiAqIEFzIHRoaXMgZmlsZSBnb2luZyB0byBiZSBhbiBzdGFuZGFsb25lIGNzcyBmaWxlLlxuICovXG5AdXNlIFwiLi4vLi4vLi4vLi4vYXNzZXRzL3Njc3MvZ2xvYmFsLzAtc2V0dGluZ3Mvc2V0dGluZ3NcIiBhcyBzO1xuQHVzZSBcIi4uLy4uLy4uLy4uL2Fzc2V0cy9zY3NzL2dsb2JhbC8xLWdlbmVyaWMvMS0xLWJhc2UvYnV0dG9ucy1iYXNlXCI7XG5AdXNlICcuLi8uLi8uLi8uLi9hc3NldHMvc2Nzcy9nbG9iYWwvMS1nZW5lcmljLzEtMy1mb3Jtcy9maWVsZC1pbnB1dCc7XG5AdXNlIFwiLi4vY29tcG9uZW50cy9zaG9wLXRhYmxlXCI7XG5cbi53b29jb21tZXJjZS1jYXJ0IHtcblxuXHQud29vY29tbWVyY2Uge1xuXHRcdGRpc3BsYXk6IGdyaWQ7XG5cdFx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG5cblx0XHQud29vY29tbWVyY2Utbm90aWNlcy13cmFwcGVyIHtcblx0XHRcdGdyaWQtY29sdW1uOiAxIC8gLTE7XG5cdFx0fVxuXG5cdFx0Zm9ybS53b29jb21tZXJjZS1jYXJ0LWZvcm0ge1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGdyaWQtY29sdW1uOiAxIC8gMztcblx0XHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdFx0XHRnYXA6IHZhcigtLWl0LXNwYWNpbmctZGVmYXVsdCk7XG5cblx0XHRcdHRhYmxlLndvb2NvbW1lcmNlLWNhcnQtZm9ybV9fY29udGVudHMge1xuXHRcdFx0XHRib3JkZXI6IDA7XG5cblx0XHRcdFx0dGhlYWQge1xuXHRcdFx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHR0Ym9keSB7XG5cdFx0XHRcdFx0ZGlzcGxheTogZ3JpZDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHQud29vY29tbWVyY2UtY2FydC1mb3JtX19jYXJ0LWl0ZW0ge1xuXHRcdFx0XHRkaXNwbGF5OiBncmlkO1xuXHRcdFx0XHRhbGlnbi1pdGVtczogc3RhcnQ7XG5cdFx0XHRcdGdyaWQtdGVtcGxhdGUtY29sdW1uczogNXJlbSAxZnIgYXV0bztcblx0XHRcdFx0Z3JpZC1yb3ctZ2FwOiB2YXIoLS1pdC1zcGFjaW5nLWZvcm0pO1xuXHRcdFx0XHRncmlkLWNvbHVtbi1nYXA6IDEuNXJlbTtcblx0XHRcdFx0cGFkZGluZzogdmFyKC0taXQtc3BhY2luZy1kZWZhdWx0KSAwO1xuXHRcdFx0XHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0taXQtY29sb3ItYm9yZGVyKTtcblxuXHRcdFx0XHQmOmZpcnN0LWNoaWxkIHtcblx0XHRcdFx0XHRib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0taXQtY29sb3ItYm9yZGVyKTtcblx0XHRcdFx0fVxuXG5cdFx0XHRcdHRkIHtcblx0XHRcdFx0XHRwYWRkaW5nOiAwO1xuXHRcdFx0XHRcdGJvcmRlcjogMDtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kOiBub25lO1xuXG5cdFx0XHRcdFx0JjpiZWZvcmUge1xuXHRcdFx0XHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQucHJvZHVjdC10aHVtYm5haWwge1xuXHRcdFx0XHRcdGdyaWQtcm93OiAxIC8gMztcblx0XHRcdFx0XHRncmlkLWNvbHVtbjogMSAvIDI7XG5cdFx0XHRcdFx0ZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcblxuXHRcdFx0XHRcdGEge1xuXG5cdFx0XHRcdFx0XHRpbWcge1xuXHRcdFx0XHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0XHRcdFx0bWF4LXdpZHRoOiA1cmVtO1xuXHRcdFx0XHRcdFx0XHRib3JkZXItcmFkaXVzOiB2YXIoLS1pdC1ib3JkZXItcmFkaXVzLXNtYWxsKTtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQucHJvZHVjdC1uYW1lIHtcblx0XHRcdFx0XHRncmlkLWNvbHVtbjogMiAvIDM7XG5cdFx0XHRcdFx0dGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50O1xuXG5cdFx0XHRcdFx0LmxhYmVsX3dpdGhfcHJpY2Uge1xuXHRcdFx0XHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdFx0XHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdFx0XHRcdFx0XHRnYXA6IC41cmVtO1xuXG5cdFx0XHRcdFx0XHQubGFiZWwge1xuXHRcdFx0XHRcdFx0XHRmb250LXNpemU6IHZhcigtLWl0LWg2LWZvbnQtc2l6ZSk7XG5cdFx0XHRcdFx0XHRcdGxpbmUtaGVpZ2h0OiB2YXIoLS1pdC1oNi1saW5lLWhlaWdodCk7XG5cdFx0XHRcdFx0XHRcdGZvbnQtd2VpZ2h0OiA1MDA7XG5cblx0XHRcdFx0XHRcdFx0YSB7XG5cdFx0XHRcdFx0XHRcdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHRcdC5wcmljZSB7XG5cblx0XHRcdFx0XHRcdFx0ZGVsIHtcblx0XHRcdFx0XHRcdFx0XHRvcGFjaXR5OiAuNTtcblx0XHRcdFx0XHRcdFx0XHRmb250LXNpemU6IHZhcigtLWl0LXNpemUtc21hbGwpO1xuXHRcdFx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHRcdFx0aW5zIHtcblx0XHRcdFx0XHRcdFx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQucHJvZHVjdC1xdWFudGl0eSB7XG5cdFx0XHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdFx0XHRcdGdyaWQtY29sdW1uOiAyIC8gMztcblx0XHRcdFx0XHR3aWR0aDogbWF4LWNvbnRlbnQ7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQucHJvZHVjdC1wcmljZSB7XG5cdFx0XHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHRcdFx0fVxuXG5cdFx0XHRcdC5wcm9kdWN0LXN1YnRvdGFsIHtcblx0XHRcdFx0XHRncmlkLWNvbHVtbjogMyAvIDQ7XG5cdFx0XHRcdFx0Z3JpZC1yb3c6IDEgLyAyO1xuXHRcdFx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRcdFx0XHRmb250LXdlaWdodDogNzAwO1xuXHRcdFx0XHRcdGNvbG9yOiB2YXIoLS1pdC1jb2xvci1icmFuZCk7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQucHJvZHVjdC1yZW1vdmUge1xuXHRcdFx0XHRcdGdyaWQtY29sdW1uOiAyIC8gMztcblx0XHRcdFx0XHRncmlkLXJvdzogMyAvIDQ7XG5cblx0XHRcdFx0XHRhIHtcblx0XHRcdFx0XHRcdHdpZHRoOiBhdXRvO1xuXHRcdFx0XHRcdFx0dGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG5cdFx0XHRcdFx0XHRmb250LXNpemU6IHZhcigtLWl0LXNpemUtc21hbGwpO1xuXHRcdFx0XHRcdFx0Y29sb3I6IHZhcigtLWl0LWNvbG9yLXRleHQpICFpbXBvcnRhbnQ7XG5cdFx0XHRcdFx0XHR0ZXh0LWFsaWduOiBsZWZ0O1xuXHRcdFx0XHRcdFx0Zm9udC13ZWlnaHQ6IDQwMDtcblx0XHRcdFx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdFx0XHRcdGJvcmRlci1yYWRpdXM6IDA7XG5cblx0XHRcdFx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHRcdFx0XHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0dHI6bGFzdC1jaGlsZCB7XG5cdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdFx0bWFyZ2luLXRvcDogdmFyKC0taXQtc3BhY2luZy1kZWZhdWx0KTtcblxuXHRcdFx0XHR0ZCB7XG5cdFx0XHRcdFx0cGFkZGluZzogMDtcblx0XHRcdFx0XHRib3JkZXI6IDA7XG5cdFx0XHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdFx0fVxuXG5cdFx0XHRcdC5jb3Vwb24ge1xuXHRcdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0XHRcdGRpc3BsYXk6IGdyaWQ7XG5cdFx0XHRcdFx0ZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcblx0XHRcdFx0XHRncmlkLXRlbXBsYXRlLXJvd3M6IDFmciAxZnI7XG5cdFx0XHRcdFx0Z2FwOiB2YXIoLS1pdC1zcGFjaW5nLWZvcm0pO1xuXHRcdFx0XHRcdHBhZGRpbmctYm90dG9tOiAwICFpbXBvcnRhbnQ7XG5cblx0XHRcdFx0XHQmOmJlZm9yZSxcblx0XHRcdFx0XHQmOmFmdGVyIHtcblx0XHRcdFx0XHRcdGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcblx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHQuaW5wdXQtdGV4dCB7XG5cblx0XHRcdFx0XHRcdEBleHRlbmQgJWl0LWlucHV0ICFvcHRpb25hbDtcblx0XHRcdFx0XHRcdHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG5cdFx0XHRcdFx0XHRtYXJnaW46IDA7XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0LmNvdXBvbi1lcnJvci1ub3RpY2Uge1xuXHRcdFx0XHRcdFx0Z3JpZC1jb2x1bW46IDEgLyAtMTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQuYnV0dG9uIHtcblxuXHRcdFx0XHRcdEBleHRlbmQgJWl0LWJ1dHRvbi0tb3V0bGluZSAhb3B0aW9uYWw7XG5cdFx0XHRcdFx0d2lkdGg6IGF1dG8gIWltcG9ydGFudDtcblx0XHRcdFx0XHRmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xuXG5cdFx0XHRcdFx0JltuYW1lPVwidXBkYXRlX2NhcnRcIl0ge1xuXHRcdFx0XHRcdFx0ZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC5jYXJ0LWNvbGxhdGVyYWxzIHtcblx0XHRcdG1hcmdpbi10b3A6IHZhcigtLWl0LXNwYWNpbmctc2VjdGlvbi1oYWxmKTtcblxuXHRcdFx0JjpiZWZvcmUsXG5cdFx0XHQmOmFmdGVyIHtcblx0XHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHRcdH1cblxuXHRcdFx0LmNhcnRfdG90YWxzIHtcblx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRcdGZsb2F0OiBub25lO1xuXHRcdFx0XHRkaXNwbGF5OiBncmlkO1xuXHRcdFx0XHRnYXA6IHZhcigtLWl0LXNwYWNpbmctZGVmYXVsdCk7XG5cdFx0XHRcdGdyaWQtdGVtcGxhdGUtcm93czogYXV0byAxZnI7XG5cblx0XHRcdFx0aDIge1xuXHRcdFx0XHRcdGZvbnQtc2l6ZTogdmFyKC0taXQtaDUtZm9udC1zaXplKTtcblx0XHRcdFx0XHRsaW5lLWhlaWdodDogdmFyKC0taXQtaDUtbGluZS1oZWlnaHQpO1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0LnNob3BfdGFibGUge1xuXG5cdFx0XHRcdFx0QGV4dGVuZCAlc2hvcF90YWJsZSAhb3B0aW9uYWw7XG5cblx0XHRcdFx0XHR0ciB7XG5cblx0XHRcdFx0XHRcdCY6Zmlyc3QtY2hpbGQge1xuXG5cdFx0XHRcdFx0XHRcdHRoLFxuXHRcdFx0XHRcdFx0XHR0ZCB7XG5cdFx0XHRcdFx0XHRcdFx0Ym9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWl0LWNvbG9yLWJvcmRlcik7XG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQud2MtcHJvY2VlZC10by1jaGVja291dCB7XG5cdFx0XHRcdFx0cGFkZGluZzogMDtcblxuXHRcdFx0XHRcdCY6YmVmb3JlLFxuXHRcdFx0XHRcdCY6YWZ0ZXIge1xuXHRcdFx0XHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHQuY2hlY2tvdXQtYnV0dG9uIHtcblxuXHRcdFx0XHRcdFx0QGV4dGVuZCAlaXQtYnV0dG9uLS1wcmltYXJ5O1xuXHRcdFx0XHRcdFx0d2lkdGg6IDEwMCUgIWltcG9ydGFudDtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cblx0XHQuY3Jvc3Mtc2VsbHMge1xuXHRcdFx0Z3JpZC1jb2x1bW46IDEgLyAtMTtcblx0XHRcdG1hcmdpbi10b3A6IHZhcigtLWl0LXNwYWNpbmctc2VjdGlvbi1oYWxmKTtcblxuXHRcdFx0aDIge1xuXHRcdFx0XHRmb250LXNpemU6IHZhcigtLWl0LWg1LWZvbnQtc2l6ZSk7XG5cdFx0XHRcdGxpbmUtaGVpZ2h0OiB2YXIoLS1pdC1oNS1saW5lLWhlaWdodCk7XG5cdFx0XHR9XG5cblx0XHRcdC5wcm9kdWN0cyB7XG5cdFx0XHRcdG1hcmdpbi10b3A6IHZhcigtLWl0LXNwYWNpbmctY29udGVudCk7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0LnJldHVybi10by1zaG9wIHtcblxuXHRcdFx0LmJ1dHRvbiB7XG5cblx0XHRcdFx0QGV4dGVuZCAlaXQtYnV0dG9uLS1wcmltYXJ5ICFvcHRpb25hbDtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHRAaW5jbHVkZSBzLm1pbihzLiRsZykge1xuXG5cdFx0Lndvb2NvbW1lcmNlIHtcblxuXHRcdFx0Zm9ybS53b29jb21tZXJjZS1jYXJ0LWZvcm0ge1xuXG5cdFx0XHRcdC53b29jb21tZXJjZS1jYXJ0LWZvcm1fX2NhcnQtaXRlbSB7XG5cdFx0XHRcdFx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiA1cmVtIDFmciBhdXRvIDEwcmVtIGF1dG87XG5cdFx0XHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblxuXHRcdFx0XHRcdC5wcm9kdWN0LXRodW1ibmFpbCB7XG5cdFx0XHRcdFx0XHRncmlkLWNvbHVtbjogMSAvIDI7XG5cdFx0XHRcdFx0XHRncmlkLXJvdzogMSAvIDI7XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0LnByb2R1Y3QtbmFtZSB7XG5cdFx0XHRcdFx0XHRncmlkLWNvbHVtbjogMiAvIDM7XG5cdFx0XHRcdFx0XHRncmlkLXJvdzogMSAvIDI7XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0LnByb2R1Y3Qtc3VidG90YWwge1xuXHRcdFx0XHRcdFx0Z3JpZC1jb2x1bW46IDQgLyA1O1xuXHRcdFx0XHRcdFx0Z3JpZC1yb3c6IDEgLyAyO1xuXHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdC5wcm9kdWN0LXF1YW50aXR5IHtcblx0XHRcdFx0XHRcdGdyaWQtY29sdW1uOiAzIC8gNDtcblx0XHRcdFx0XHRcdGdyaWQtcm93OiAxIC8gMjtcblx0XHRcdFx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHQucHJvZHVjdC1yZW1vdmUge1xuXHRcdFx0XHRcdFx0Z3JpZC1jb2x1bW46IDUgLyA2O1xuXHRcdFx0XHRcdFx0Z3JpZC1yb3c6IDEgLyAyO1xuXHRcdFx0XHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdFx0XHRcdFx0ZGlzcGxheTogZmxleDtcblxuXHRcdFx0XHRcdFx0YSB7XG5cdFx0XHRcdFx0XHRcdGRpc3BsYXk6IGlubGluZS1mbGV4O1xuXHRcdFx0XHRcdFx0XHR3aWR0aDogMS41cmVtO1xuXHRcdFx0XHRcdFx0XHRoZWlnaHQ6IDEuNXJlbTtcblx0XHRcdFx0XHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRcdFx0XHRcdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cblx0XHRcdFx0XHRcdFx0JjpiZWZvcmUge1xuXHRcdFx0XHRcdFx0XHRcdGNvbnRlbnQ6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0Nzdmcgd2lkdGg9JzI0JyBoZWlnaHQ9JzI0JyB2aWV3Qm94PScwIDAgMjQgMjQnIGZpbGw9J25vbmUnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyclM0UlM0NwYXRoIGQ9J00xMS45ODc3IDEwLjU5ODNMNi42OTQ3MSA1LjMwNTI5QzYuNTA2MTEgNS4xMjMxMyA2LjI1MzUxIDUuMDIyMzQgNS45OTEzMSA1LjAyNDYxQzUuNzI5MTEgNS4wMjY4OSA1LjQ3ODMgNS4xMzIwNiA1LjI5Mjg5IDUuMzE3NDdDNS4xMDc0OSA1LjUwMjg4IDUuMDAyMzIgNS43NTM2OSA1LjAwMDA0IDYuMDE1ODlDNC45OTc3NiA2LjI3ODA4IDUuMDk4NTUgNi41MzA2OSA1LjI4MDcxIDYuNzE5MjlMMTAuNTczNyAxMi4wMTIzTDUuMjgwNzEgMTcuMzA1M0M1LjA5ODU1IDE3LjQ5MzkgNC45OTc3NiAxNy43NDY1IDUuMDAwMDQgMTguMDA4N0M1LjAwMjMyIDE4LjI3MDkgNS4xMDc0OSAxOC41MjE3IDUuMjkyODkgMTguNzA3MUM1LjQ3ODMgMTguODkyNSA1LjcyOTExIDE4Ljk5NzcgNS45OTEzMSAxOUM2LjI1MzUxIDE5LjAwMjIgNi41MDYxMSAxOC45MDE0IDYuNjk0NzEgMTguNzE5M0wxMS45ODc3IDEzLjQyNjNMMTcuMjgwNyAxOC43MTkzQzE3LjQ2OTMgMTguOTAxNCAxNy43MjE5IDE5LjAwMjIgMTcuOTg0MSAxOUMxOC4yNDYzIDE4Ljk5NzcgMTguNDk3MSAxOC44OTI1IDE4LjY4MjUgMTguNzA3MUMxOC44Njc5IDE4LjUyMTcgMTguOTczMSAxOC4yNzA5IDE4Ljk3NTQgMTguMDA4N0MxOC45Nzc3IDE3Ljc0NjUgMTguODc2OSAxNy40OTM5IDE4LjY5NDcgMTcuMzA1M0wxMy40MDE3IDEyLjAxMjNMMTguNjk0NyA2LjcxOTI5QzE4Ljc5MDIgNi42MjcwNCAxOC44NjY0IDYuNTE2NyAxOC45MTg4IDYuMzk0NjlDMTguOTcxMiA2LjI3MjY5IDE4Ljk5ODggNi4xNDE0NyAxOSA2LjAwODY5QzE5LjAwMTEgNS44NzU5MSAxOC45NzU4IDUuNzQ0MjMgMTguOTI1NSA1LjYyMTMzQzE4Ljg3NTMgNS40OTg0NCAxOC44MDEgNS4zODY3OSAxOC43MDcxIDUuMjkyODlDMTguNjEzMiA1LjE5OSAxOC41MDE2IDUuMTI0NzUgMTguMzc4NyA1LjA3NDQ3QzE4LjI1NTggNS4wMjQxOSAxOC4xMjQxIDQuOTk4ODggMTcuOTkxMyA1LjAwMDA0QzE3Ljg1ODUgNS4wMDExOSAxNy43MjczIDUuMDI4NzggMTcuNjA1MyA1LjA4MTE5QzE3LjQ4MzMgNS4xMzM2IDE3LjM3MyA1LjIwOTc4IDE3LjI4MDcgNS4zMDUyOUwxMS45ODc3IDEwLjU5ODNaJyBmaWxsPSclMjMyNTQ0NUEnLyUzRSUzQy9zdmclM0UlMEFcIik7XG5cdFx0XHRcdFx0XHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHRcdFx0c3BhbiB7XG5cdFx0XHRcdFx0XHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHRcdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHRcdFx0XHRcdGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuXHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cblx0XHRcdFx0dHI6bGFzdC1jaGlsZCB7XG5cdFx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRcdFx0bWFyZ2luLXRvcDogdmFyKC0taXQtc3BhY2luZy1kZWZhdWx0KTtcblxuXHRcdFx0XHRcdHRkIHtcblx0XHRcdFx0XHRcdHBhZGRpbmc6IDA7XG5cdFx0XHRcdFx0XHRib3JkZXI6IDA7XG5cdFx0XHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0XHRcdFx0ZmxleC13cmFwOiB3cmFwO1xuXHRcdFx0XHRcdFx0Z2FwOiB2YXIoLS1pdC1zcGFjaW5nLWZvcm0pO1xuXHRcdFx0XHRcdFx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdC5jb3Vwb24ge1xuXHRcdFx0XHRcdFx0ZGlzcGxheTogZ3JpZDtcblx0XHRcdFx0XHRcdGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIGF1dG87XG5cdFx0XHRcdFx0XHRncmlkLWNvbHVtbi1nYXA6IHZhcigtLWl0LXNwYWNpbmctZm9ybSk7XG5cblx0XHRcdFx0XHRcdC5pbnB1dC10ZXh0IHtcblxuXHRcdFx0XHRcdFx0XHR3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuXHRcdFx0XHRcdFx0XHRtYXJnaW46IDA7XG5cdFx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHRcdC5jb3Vwb24tZXJyb3Itbm90aWNlIHtcblx0XHRcdFx0XHRcdFx0Z3JpZC1jb2x1bW46IDEgLyAtMTtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHRAaW5jbHVkZSBzLm1pbihzLiRtZCkge1xuXG5cdFx0Lndvb2NvbW1lcmNlIHtcblx0XHRcdGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIDFmcik7XG5cdFx0XHRncmlkLWNvbHVtbi1nYXA6IHZhcigtLWl0LXNwYWNpbmctc2VjdGlvbik7XG5cblx0XHRcdCY6aGFzKC53Yy1lbXB0eS1jYXJ0LW1lc3NhZ2UpIHtcblx0XHRcdFx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG5cdFx0XHR9XG5cblx0XHRcdC5jYXJ0LWNvbGxhdGVyYWxzIHtcblx0XHRcdFx0bWFyZ2luLXRvcDogMDtcblx0XHRcdH1cblxuXHRcdFx0LmNyb3NzLXNlbGxzIHtcblx0XHRcdFx0bWFyZ2luLXRvcDogdmFyKC0taXQtc3BhY2luZy1zZWN0aW9uKTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHRAaW5jbHVkZSBzLm1pbihzLiRzbSkge1xuXG5cdFx0Lndvb2NvbW1lcmNlIHtcblxuXHRcdFx0Zm9ybS53b29jb21tZXJjZS1jYXJ0LWZvcm0ge1xuXG5cdFx0XHRcdHRyOmxhc3QtY2hpbGQge1xuXG5cdFx0XHRcdFx0LmNvdXBvbiB7XG5cdFx0XHRcdFx0XHR3aWR0aDogYXV0bztcblx0XHRcdFx0XHRcdGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIGF1dG87XG5cdFx0XHRcdFx0XHRncmlkLXRlbXBsYXRlLXJvd3M6IDFmcjtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0LmNhcnQtY29sbGF0ZXJhbHMge1xuXG5cdFx0XHRcdC5jYXJ0X3RvdGFscyB7XG5cdFx0XHRcdFx0bWluLXdpZHRoOiAyMi41cmVtO1xuXHRcdFx0XHRcdHRvcDogMTBkdmg7XG5cdFx0XHRcdFx0cG9zaXRpb246IHN0aWNreTtcblx0XHRcdFx0XHRtYXgtaGVpZ2h0OiA4MGR2aDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuIiwiQHVzZSBcIi4uLy4uLy4uLy4uL2Fzc2V0cy9zY3NzL2dsb2JhbC8wLXNldHRpbmdzL3NldHRpbmdzXCIgYXMgcztcblxuJXNob3BfdGFibGUge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblx0bWFyZ2luOiAwO1xuXHRib3JkZXI6IDA7XG5cblx0dGhlYWQge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdH1cblxuXHRpbWcge1xuXHRcdGJvcmRlci1yYWRpdXM6IHZhcigtLWl0LWJvcmRlci1yYWRpdXMtc21hbGwpO1xuXHR9XG5cblx0dHIge1xuXG5cdFx0JjpmaXJzdC1jaGlsZCB7XG5cblx0XHRcdHRkIHtcblx0XHRcdFx0Ym9yZGVyLXRvcDogMDtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQmLm9yZGVyLXRvdGFsLXNtYWxsLWJ1c2luZXNzLW5vdGljZSB7XG5cblx0XHRcdCY6bGFzdC1jaGlsZCB7XG5cblx0XHRcdFx0dGgsXG5cdFx0XHRcdHRkIHtcblx0XHRcdFx0XHRwYWRkaW5nLWJvdHRvbTogMDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHR0aCxcblx0XHRcdHRkIHtcblx0XHRcdFx0Ym9yZGVyLWJvdHRvbTogMDtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQmLm9yZGVyLXRvdGFsIHtcblx0XHRcdGZvbnQtc2l6ZTogdmFyKC0taXQtc2l6ZS1sYXJnZSk7XG5cblx0XHRcdHRoLFxuXHRcdFx0dGR7XG5cdFx0XHRcdGZvbnQtd2VpZ2h0OiA3MDA7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0dGgge1xuXHRcdHdpZHRoOiAxMDAlO1xuXHR9XG5cblx0dGgsXG5cdHRkIHtcblx0XHRwYWRkaW5nOiB2YXIoLS1pdC1zcGFjaW5nLWZvcm0pIHZhcigtLWl0LXNwYWNpbmctZGVmYXVsdC1oYWxmKTtcblx0XHRib3JkZXItdG9wOiAwO1xuXHRcdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1pdC1jb2xvci1ib3JkZXIpO1xuXHRcdGJhY2tncm91bmQ6IG5vbmU7XG5cblx0XHQmOmZpcnN0LWNoaWxkIHtcblx0XHRcdHBhZGRpbmctbGVmdDogMDtcblx0XHR9XG5cblx0XHQmOmxhc3QtY2hpbGQge1xuXHRcdFx0cGFkZGluZy1yaWdodDogMDtcblx0XHRcdGZvbnQtd2VpZ2h0OiA3MDA7XG5cdFx0XHR0ZXh0LWFsaWduOiByaWdodDtcblx0XHRcdHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cdFx0fVxuXHR9XG5cblx0dGgge1xuXHRcdGZvbnQtd2VpZ2h0OiA0MDA7XG5cdH1cblxuXHQud2MtZ3pkLWFkZGl0aW9uYWwtaW5mbyB7XG5cdFx0Zm9udC1zaXplOiB2YXIoLS1pdC1zaXplLXNtYWxsKTtcblx0fVxuXG5cdC53b29jb21tZXJjZS1zaGlwcGluZy1tZXRob2RzIHtcblx0XHRtYXJnaW46IDA7XG5cdFx0bGlzdC1zdHlsZS10eXBlOiBub25lO1xuXG5cdFx0bGFiZWwge1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0XHRcdGZvbnQtc2l6ZTogdmFyKC0taXQtc2l6ZS1tZWRpdW0pO1xuXG5cdFx0XHQmOmhhcygqKSB7XG5cdFx0XHRcdGZvbnQtc2l6ZTogMDtcblx0XHRcdFx0bGluZS1oZWlnaHQ6IDA7XG5cblx0XHRcdFx0PiAqIHtcblx0XHRcdFx0XHRmb250LXNpemU6IHZhcigtLWl0LXNpemUtbWVkaXVtKTtcblx0XHRcdFx0XHRsaW5lLWhlaWdodDogMS42O1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0Ji5zaG9wX3RhYmxlX3Jlc3BvbnNpdmUge1xuXG5cdFx0dGQsIHRoIHtcblxuXHRcdFx0QGluY2x1ZGUgcy5taW4tbWF4KHMuJHplcm8sIHMuJHNtKSB7XG5cdFx0XHRcdHBhZGRpbmctaW5saW5lOiAwO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdEBpbmNsdWRlIHMubWluKHMuJG1kKSB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0b3ZlcmZsb3c6IGF1dG87XG5cdFx0bWF4LWhlaWdodDogMTAwJTtcblx0fVxuXG5cdEBpbmNsdWRlIHMubWluKHMuJGxnKSB7XG5cblx0XHQud2MtZ3pkLWFkZGl0aW9uYWwtaW5mbyB7XG5cdFx0XHRmb250LXNpemU6IHZhcigtLWl0LXNpemUtbWVkaXVtKTtcblx0XHR9XG5cdH1cbn1cbiIsIi8qKlxuICogRG8gbm90IEB1c2UgZmlsZXMgd2l0aCBhY3R1YWwgc2NzcyBjb2RlIGluIHRoaXMgZmlsZSwgYXMgaXQgd2lsbCBjb21waWxlIGNzcyBjb2RlIHR3aWNlLlxuICogQXMgdGhpcyBmaWxlIGdvaW5nIHRvIGJlIGFuIHN0YW5kYWxvbmUgY3NzIGZpbGUuXG4gKi9cbkB1c2UgXCIuLi8uLi8uLi8uLi9hc3NldHMvc2Nzcy9nbG9iYWwvMC1zZXR0aW5ncy9zZXR0aW5nc1wiIGFzIHM7XG5AdXNlIFwiLi4vLi4vLi4vLi4vYXNzZXRzL3Njc3MvZ2xvYmFsLzEtZ2VuZXJpYy8xLTEtYmFzZS9idXR0b25zLWJhc2VcIjtcbkB1c2UgXCIuLi9jb21wb25lbnRzL3Nob3AtdGFibGVcIjtcblxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IHtcblxuXHQuZW50cnktY29udGVudC0td29vY29tbWVyY2Uge1xuXHRcdG1hcmdpbi10b3A6IHZhcigtLWl0LXNwYWNpbmctc2VjdGlvbi1oYWxmKTtcblx0fVxuXG5cdC53b29jb21tZXJjZSB7XG5cblx0XHQuY2hlY2tvdXRfY291cG9uIHtcblx0XHRcdGRpc3BsYXk6IGdyaWQ7XG5cdFx0XHRwYWRkaW5nOiB2YXIoLS1pdC1zcGFjaW5nLWZvcm0pO1xuXHRcdFx0Z2FwOiB2YXIoLS1pdC1zcGFjaW5nLWZvcm0pO1xuXHRcdFx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1pdC1jb2xvci1ib3JkZXIpO1xuXHRcdFx0Ym9yZGVyLXJhZGl1czogdmFyKC0taXQtYm9yZGVyLXJhZGl1cyk7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiB2YXIoLS1pdC1zcGFjaW5nLWNvbnRlbnQpO1xuXG5cdFx0XHQqIHtcblx0XHRcdFx0ZmxvYXQ6IG5vbmU7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0LmNoZWNrb3V0IHtcblx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0ZGlzcGxheTogZ3JpZDtcblx0XHRcdGFsaWduLWl0ZW1zOiBzdGFydDtcblx0XHRcdGNvbHVtbi1nYXA6IHZhcigtLWl0LXNwYWNpbmctc2VjdGlvbik7XG5cdFx0XHRyb3ctZ2FwOiB2YXIoLS1pdC1zcGFjaW5nLWNvbnRlbnQpO1xuXG5cdFx0XHRoMyB7XG5cdFx0XHRcdGZvbnQtc2l6ZTogdmFyKC0taXQtaDUtZm9udC1zaXplKTtcblx0XHRcdFx0bGluZS1oZWlnaHQ6IHZhcigtLWl0LWg1LWxpbmUtaGVpZ2h0KTtcblx0XHRcdH1cblxuXHRcdFx0Lndvb2NvbW1lcmNlLU5vdGljZUdyb3VwLWNoZWNrb3V0IHtcblxuXHRcdFx0XHQud29vY29tbWVyY2UtZXJyb3Ige1xuXHRcdFx0XHRcdG1hcmdpbjogMDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHQjY3VzdG9tZXJfZGV0YWlscyB7XG5cdFx0XHRcdGdhcDogdmFyKC0taXQtc3BhY2luZy1mb3JtKTtcblx0XHRcdFx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG5cblx0XHRcdFx0PiAuY29sLTEge1xuXHRcdFx0XHRcdGdhcDogdmFyKC0taXQtc3BhY2luZy1jb250ZW50KTtcblx0XHRcdFx0fVxuXG5cdFx0XHRcdD4gLmNvbC0yIHtcblx0XHRcdFx0XHRnYXA6IHZhcigtLWl0LXNwYWNpbmctZm9ybSk7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQud29vY29tbWVyY2UtZW1haWwtZmllbGQge1xuXG5cdFx0XHRcdFx0Jl9fZGVzY3JpcHRpb24ge1xuXHRcdFx0XHRcdFx0bWFyZ2luLXRvcDogLjVyZW07XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0Jl9fZmllbGQtd3JhcHBlciB7XG5cdFx0XHRcdFx0XHRtYXJnaW4tdG9wOiB2YXIoLS1pdC1zcGFjaW5nLWZvcm0pO1xuXG5cdFx0XHRcdFx0XHQuZGVzY3JpcHRpb24ge1xuXHRcdFx0XHRcdFx0XHRhbGw6IHVuc2V0O1xuXHRcdFx0XHRcdFx0XHRkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyAvLyBSZXF1aXJlZFxuXHRcdFx0XHRcdFx0XHRoZWlnaHQ6IDEwMCUgIWltcG9ydGFudDsgLy8gUmVxdWlyZWRcblx0XHRcdFx0XHRcdFx0bWFyZ2luLXRvcDogLjVyZW0gIWltcG9ydGFudDsgLy8gUmVxdWlyZWRcblx0XHRcdFx0XHRcdFx0Zm9udC1zaXplOiB2YXIoLS1pdC1zaXplLXgtc21hbGwpO1xuXHRcdFx0XHRcdFx0XHRjb2xvcjogdmFyKC0taXQtY29sb3ItcGxhY2Vob2xkZXIpO1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXG5cdFx0XHRcdHdjLW9yZGVyLWF0dHJpYnV0aW9uLWlucHV0cyB7XG5cdFx0XHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHRcdFx0fVxuXG5cdFx0XHRcdC53b29jb21tZXJjZS1iaWxsaW5nLWZpZWxkcyB7XG5cblx0XHRcdFx0XHQmX19kZXNjcmlwdGlvbiB7XG5cdFx0XHRcdFx0XHRtYXJnaW4tdG9wOiAuNXJlbTtcblx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHQmX19maWVsZC13cmFwcGVyIHtcblx0XHRcdFx0XHRcdG1hcmdpbi10b3A6IHZhcigtLWl0LXNwYWNpbmctZm9ybSk7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cblx0XHRcdFx0Lndvb2NvbW1lcmNlLXNoaXBwaW5nLWZpZWxkcyB7XG5cblx0XHRcdFx0XHQjc2hpcC10by1kaWZmZXJlbnQtYWRkcmVzcyB7XG5cdFx0XHRcdFx0XHRmbG9hdDogbm9uZTtcblx0XHRcdFx0XHRcdGNsZWFyOiBib3RoO1xuXHRcdFx0XHRcdFx0Zm9udC13ZWlnaHQ6IDQwMDtcblxuXHRcdFx0XHRcdFx0aW5wdXQge1xuXHRcdFx0XHRcdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMnB4KTtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHQmX190aXRsZSB7XG5cdFx0XHRcdFx0XHRtYXJnaW4tdG9wOiB2YXIoLS1pdC1zcGFjaW5nLWNvbnRlbnQpICFpbXBvcnRhbnQ7IC8vIFJlcXVpcmVkXG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0Jl9fZGVzY3JpcHRpb24ge1xuXHRcdFx0XHRcdFx0bWFyZ2luLXRvcDogMC41cmVtO1xuXHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdCZfX2ZpZWxkLXdyYXBwZXIge1xuXHRcdFx0XHRcdFx0bWFyZ2luLXRvcDogdmFyKC0taXQtc3BhY2luZy1mb3JtKTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQud29vY29tbWVyY2UtYWRkaXRpb25hbC1maWVsZHMge1xuXG5cdFx0XHRcdFx0aDMge1xuXHRcdFx0XHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHQmX190b2dnbGUtbGFiZWwge1xuXG5cdFx0XHRcdFx0XHRpbnB1dCB7XG5cdFx0XHRcdFx0XHRcdG1hcmdpbi1yaWdodDogMDtcblx0XHRcdFx0XHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKDRweCk7XG5cdFx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHRcdC5vcHRpb25hbCB7XG5cdFx0XHRcdFx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0I29yZGVyX2NvbW1lbnRzX2ZpZWxkIHtcblx0XHRcdFx0XHRcdG1hcmdpbi10b3A6IHZhcigtLWl0LXNwYWNpbmctZm9ybSk7XG5cdFx0XHRcdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXG5cdFx0XHRcdC53b29jb21tZXJjZS1zaGlwcGluZy1vcHRpb25zIHtcblx0XHRcdFx0XHRtYXJnaW4tdG9wOiB2YXIoLS1pdC1zcGFjaW5nLWRlZmF1bHQpO1xuXG5cdFx0XHRcdFx0Lndvb2NvbW1lcmNlLXNoaXBwaW5nLW1ldGhvZHMge1xuXHRcdFx0XHRcdFx0bWFyZ2luLXRvcDogdmFyKC0taXQtc3BhY2luZy1mb3JtKTtcblx0XHRcdFx0XHRcdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWl0LWNvbG9yLWJvcmRlcik7XG5cdFx0XHRcdFx0XHRib3JkZXItcmFkaXVzOiB2YXIoLS1pdC1ib3JkZXItcmFkaXVzKTtcblx0XHRcdFx0XHRcdG92ZXJmbG93OiBoaWRkZW47XG5cblx0XHRcdFx0XHRcdGxpIHtcblx0XHRcdFx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0XHRcdFx0XHRtYXJnaW46IDA7XG5cdFx0XHRcdFx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRcdFx0XHRcdGdhcDogLjVyZW07XG5cdFx0XHRcdFx0XHRcdGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuXHRcdFx0XHRcdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG5cdFx0XHRcdFx0XHRcdHBhZGRpbmc6IHZhcigtLWl0LXNwYWNpbmctZm9ybSk7XG5cdFx0XHRcdFx0XHRcdGJhY2tncm91bmQ6IHZhcigtLWl0LWNvbG9yLXdoaXRlKTtcblx0XHRcdFx0XHRcdFx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWl0LWNvbG9yLWJvcmRlcik7XG5cblx0XHRcdFx0XHRcdFx0JjpsYXN0LWNoaWxkIHtcblx0XHRcdFx0XHRcdFx0XHRib3JkZXItYm90dG9tOiAwO1xuXHRcdFx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHRcdFx0JjpoYXMoaW5wdXQ6Y2hlY2tlZCkge1xuXHRcdFx0XHRcdFx0XHRcdGJhY2tncm91bmQ6IHZhcigtLWl0LWNvbG9yLWJhY2tncm91bmQpO1xuXHRcdFx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHRcdFx0aW5wdXQge1xuXHRcdFx0XHRcdFx0XHRcdG1hcmdpbjogMDtcblx0XHRcdFx0XHRcdFx0XHRmbGV4LXNocmluazogMDtcblx0XHRcdFx0XHRcdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLjM3NXJlbSk7XG5cdFx0XHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdFx0XHRsYWJlbCB7XG5cdFx0XHRcdFx0XHRcdFx0bWFyZ2luOiAwO1xuXHRcdFx0XHRcdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0XHRcdFx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRcdFx0XHRcdFx0YWxpZ24tc2VsZjogY2VudGVyO1xuXHRcdFx0XHRcdFx0XHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcblx0XHRcdFx0XHRcdFx0XHRmb250LXNpemU6IHZhcigtLWl0LXNpemUtcmVndWxhcik7XG5cblx0XHRcdFx0XHRcdFx0XHQmOmJlZm9yZSB7XG5cdFx0XHRcdFx0XHRcdFx0XHRjb250ZW50OiAnJztcblx0XHRcdFx0XHRcdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0XHRcdFx0XHRcdGluc2V0OiAwO1xuXHRcdFx0XHRcdFx0XHRcdFx0Y3Vyc29yOiBwb2ludGVyO1xuXHRcdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHQ+ICNvcmRlcl9yZXZpZXdfaGVhZGluZyB7XG5cdFx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0XHR9XG5cblx0XHRcdC53b29jb21tZXJjZS1vcmRlciB7XG5cdFx0XHRcdGRpc3BsYXk6IGdyaWQ7XG5cblx0XHRcdFx0LnNob3BfdGFibGUge1xuXG5cdFx0XHRcdFx0QGV4dGVuZCAlc2hvcF90YWJsZSAhb3B0aW9uYWw7XG5cblx0XHRcdFx0XHR0ciB7XG5cblx0XHRcdFx0XHRcdCYud2MtZ3pkLWNhcnQtaXRlbS1oYXMtdGh1bWJuYWlsIHtcblx0XHRcdFx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXG5cdFx0XHRcdFx0XHRcdC5wcm9kdWN0LXF1YW50aXR5IHtcblx0XHRcdFx0XHRcdFx0XHR3aWR0aDogMS4yNXJlbTtcblx0XHRcdFx0XHRcdFx0XHRoZWlnaHQ6IDEuMjVyZW07XG5cdFx0XHRcdFx0XHRcdFx0Ym9yZGVyLXJhZGl1czogNTAlO1xuXHRcdFx0XHRcdFx0XHRcdGJhY2tncm91bmQ6IHZhcigtLWl0LWNvbG9yLXdoaXRlKTtcblx0XHRcdFx0XHRcdFx0XHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1pdC1jb2xvci1ib3JkZXIpO1xuXHRcdFx0XHRcdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0XHRcdFx0XHRsZWZ0OiAzLjEyNXJlbTtcblx0XHRcdFx0XHRcdFx0XHR0b3A6IC0wLjYyNXJlbTtcblx0XHRcdFx0XHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUtZmxleDtcblx0XHRcdFx0XHRcdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdFx0XHRcdFx0XHRcdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHRcdFx0XHRcdFx0XHRcdGZvbnQtc2l6ZTogdmFyKC0taXQtc2l6ZS14eC1zbWFsbCk7XG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHQud2MtZ3pkLWNhcnQtaXRlbS1uYW1lLXdyYXBwZXIge1xuXHRcdFx0XHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdFx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0XHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0LndjLWd6ZC1jYXJ0LWl0ZW0tdGh1bWJuYWlsIHtcblx0XHRcdFx0XHRcdG1hcmdpbjogMCAxLjVyZW0gMCAwO1xuXHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdC5sYWJlbF93aXRoX3ByaWNlIHtcblx0XHRcdFx0XHRcdGRpc3BsYXk6IGlubGluZS1mbGV4O1xuXHRcdFx0XHRcdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuXHRcdFx0XHRcdFx0LnByaWNlIHtcblx0XHRcdFx0XHRcdFx0Zm9udC1zaXplOiB2YXIoLS1pdC1zaXplLXNtYWxsKTtcblxuXHRcdFx0XHRcdFx0XHRkZWwge1xuXHRcdFx0XHRcdFx0XHRcdG9wYWNpdHk6IC41O1xuXHRcdFx0XHRcdFx0XHRcdGZvbnQtc2l6ZTogdmFyKC0taXQtc2l6ZS14LXNtYWxsKTtcblx0XHRcdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0XHRcdGlucyB7XG5cdFx0XHRcdFx0XHRcdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdC53b29jb21tZXJjZS1jaGVja291dC1yZXZpZXctb3JkZXIge1xuXG5cdFx0XHRcdC53b29jb21tZXJjZS1jaGVja291dC1wYXltZW50I3BheW1lbnQge1xuXHRcdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHRcdG1hcmdpbi10b3A6IHZhcigtLWl0LXNwYWNpbmctZm9ybSk7XG5cdFx0XHRcdFx0Ym9yZGVyOiAwO1xuXHRcdFx0XHRcdGJvcmRlci1yYWRpdXM6IDA7XG5cdFx0XHRcdFx0YmFja2dyb3VuZDogbm9uZTtcblx0XHRcdFx0XHRwYWRkaW5nOiAwO1xuXG5cdFx0XHRcdFx0LnBheW1lbnRfbWV0aG9kcyB7XG5cdFx0XHRcdFx0XHRwYWRkaW5nOiAwO1xuXHRcdFx0XHRcdFx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0taXQtY29sb3ItYm9yZGVyKTtcblx0XHRcdFx0XHRcdGJvcmRlci1yYWRpdXM6IHZhcigtLWl0LWJvcmRlci1yYWRpdXMpO1xuXHRcdFx0XHRcdFx0b3ZlcmZsb3c6IGhpZGRlbjtcblxuXHRcdFx0XHRcdFx0JjpiZWZvcmUsXG5cdFx0XHRcdFx0XHQmOmFmdGVyIHtcblx0XHRcdFx0XHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdFx0bGkge1xuXHRcdFx0XHRcdFx0XHRkaXNwbGF5OiBncmlkO1xuXHRcdFx0XHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRcdFx0XHRcdGNvbHVtbi1nYXA6IC41cmVtO1xuXHRcdFx0XHRcdFx0XHRyb3ctZ2FwOiB2YXIoLS1pdC1zcGFjaW5nLWRlZmF1bHQtaGFsZik7XG5cdFx0XHRcdFx0XHRcdGdyaWQtdGVtcGxhdGUtY29sdW1uczogYXV0byAxZnI7XG5cdFx0XHRcdFx0XHRcdHBhZGRpbmc6IHZhcigtLWl0LXNwYWNpbmctZm9ybSk7XG5cdFx0XHRcdFx0XHRcdGJhY2tncm91bmQ6IHZhcigtLWl0LWNvbG9yLXdoaXRlKTtcblx0XHRcdFx0XHRcdFx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWl0LWNvbG9yLWJvcmRlcik7XG5cblx0XHRcdFx0XHRcdFx0JjpiZWZvcmUsXG5cdFx0XHRcdFx0XHRcdCY6YWZ0ZXIge1xuXHRcdFx0XHRcdFx0XHRcdGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcblx0XHRcdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0XHRcdCY6bGFzdC1jaGlsZCB7XG5cdFx0XHRcdFx0XHRcdFx0Ym9yZGVyLWJvdHRvbTogMDtcblx0XHRcdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0XHRcdCY6aGFzKGlucHV0OmNoZWNrZWQpIHtcblx0XHRcdFx0XHRcdFx0XHRiYWNrZ3JvdW5kOiB2YXIoLS1pdC1jb2xvci1iYWNrZ3JvdW5kKTtcblx0XHRcdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0XHRcdGlucHV0IHtcblx0XHRcdFx0XHRcdFx0XHRtYXJnaW46IDA7XG5cdFx0XHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdFx0XHRsYWJlbCB7XG5cdFx0XHRcdFx0XHRcdFx0Zm9udC1zaXplOiB2YXIoLS1pdC1zaXplLXJlZ3VsYXIpO1xuXHRcdFx0XHRcdFx0XHRcdG1hcmdpbjogMDtcblxuXHRcdFx0XHRcdFx0XHRcdCY6YmVmb3JlIHtcblx0XHRcdFx0XHRcdFx0XHRcdGNvbnRlbnQ6ICcnO1xuXHRcdFx0XHRcdFx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHRcdFx0XHRcdFx0aW5zZXQ6IDA7XG5cdFx0XHRcdFx0XHRcdFx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cdFx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHRcdFx0LnBheW1lbnRfYm94IHtcblx0XHRcdFx0XHRcdFx0XHRncmlkLWNvbHVtbjogMSAvIDM7XG5cdFx0XHRcdFx0XHRcdFx0YmFja2dyb3VuZDogbm9uZTtcblx0XHRcdFx0XHRcdFx0XHRtYXJnaW46IDA7XG5cdFx0XHRcdFx0XHRcdFx0cGFkZGluZzogMDtcblx0XHRcdFx0XHRcdFx0XHRsaW5lLWhlaWdodDogaW5oZXJpdDtcblx0XHRcdFx0XHRcdFx0XHRjb2xvcjogdmFyKC0taXQtY29sb3ItdGV4dCk7XG5cdFx0XHRcdFx0XHRcdFx0Zm9udC1zaXplOiB2YXIoLS1pdC1zaXplLXNtYWxsKTtcblxuXHRcdFx0XHRcdFx0XHRcdCY6YmVmb3JlIHtcblx0XHRcdFx0XHRcdFx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0LnBsYWNlLW9yZGVyIHtcblx0XHRcdFx0XHRcdG1hcmdpbi10b3A6IHZhcigtLWl0LXNwYWNpbmctZm9ybSk7XG5cdFx0XHRcdFx0XHRwYWRkaW5nOiAwO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXG5cdFx0XHRcdC53Yy1nemQtY2hlY2tib3gtcGxhY2Vob2xkZXIge1xuXHRcdFx0XHRcdG1hcmdpbi10b3A6IHZhcigtLWl0LXNwYWNpbmctZm9ybSk7XG5cblx0XHRcdFx0XHQqOmhhcyg+IGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSkge1xuXHRcdFx0XHRcdFx0ZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuXHRcdFx0XHRcdFx0YWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG5cblx0XHRcdFx0XHRcdGlucHV0IHtcblx0XHRcdFx0XHRcdFx0bWFyZ2luOiAwO1xuXHRcdFx0XHRcdFx0XHRmbGV4LXNocmluazogMDtcblx0XHRcdFx0XHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKDJweCk7XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0LmNoZWNrb3V0LWlubGluZS1lcnJvci1tZXNzYWdlIHtcblx0XHRcdFx0XHRcdG1hcmdpbi10b3A6IC41cmVtO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXG5cdFx0XHRcdC53b29jb21tZXJjZS1jaGVja291dC1tYWluLWJ1dHRvbnMge1xuXHRcdFx0XHRcdG1hcmdpbi10b3A6IHZhcigtLWl0LXNwYWNpbmctZm9ybSk7XG5cdFx0XHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdFx0XHRnYXA6IHZhcigtLWl0LXNwYWNpbmctZGVmYXVsdCk7XG5cdFx0XHRcdFx0ZmxleC13cmFwOiB3cmFwO1xuXHRcdFx0XHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcblx0XHRcdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXG5cdFx0XHRcdFx0LmJhY2stdG8tY2FydCB7XG5cblx0XHRcdFx0XHRcdCY6aG92ZXIge1xuXG5cdFx0XHRcdFx0XHRcdCY6YWZ0ZXIge1xuXHRcdFx0XHRcdFx0XHRcdHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZykgdHJhbnNsYXRlWCgwLjM3NXJlbSk7XG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdFx0JjphZnRlciB7XG5cdFx0XHRcdFx0XHRcdG9yZGVyOiAtMTtcblx0XHRcdFx0XHRcdFx0dHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblxuXHRcdFx0XHRidXR0b24jcGxhY2Vfb3JkZXIge1xuXHRcdFx0XHRcdGZsb2F0OiBub25lO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0QGluY2x1ZGUgcy5taW4ocy4kc20pIHtcblxuXHRcdC53b29jb21tZXJjZSB7XG5cblx0XHRcdC5jaGVja291dF9jb3Vwb24ge1xuXHRcdFx0XHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciBhdXRvO1xuXHRcdFx0XHRwYWRkaW5nOiB2YXIoLS1pdC1zcGFjaW5nLWRlZmF1bHQpO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdEBpbmNsdWRlIHMubWluLW1heCg1NTcsIHMuJG1kKSB7XG5cblx0XHQud29vY29tbWVyY2Uge1xuXG5cdFx0XHQuY2hlY2tvdXQge1xuXG5cdFx0XHRcdC53b29jb21tZXJjZS1vcmRlciB7XG5cblx0XHRcdFx0XHQuc2hvcF90YWJsZSB7XG5cblx0XHRcdFx0XHRcdHRyIHtcblxuXHRcdFx0XHRcdFx0XHQmLndjLWd6ZC1jYXJ0LWl0ZW0taGFzLXRodW1ibmFpbCB7XG5cblx0XHRcdFx0XHRcdFx0XHQucHJvZHVjdC1xdWFudGl0eSB7XG5cdFx0XHRcdFx0XHRcdFx0XHRsZWZ0OiBjYWxjKDE1JSAtIDAuNjI1cmVtKTtcblx0XHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHRAaW5jbHVkZSBzLm1pbi1tYXgocy4kbWQsIHMuJGxnKSB7XG5cblx0XHQud29vY29tbWVyY2Uge1xuXG5cdFx0XHRmb3JtIHtcblxuXHRcdFx0XHQuZm9ybS1yb3cge1xuXG5cdFx0XHRcdFx0JjpoYXMoICsgW3N0eWxlKj1cImRpc3BsYXk6IG5vbmVcIl0gKSB7XG5cdFx0XHRcdFx0XHRncmlkLWNvbHVtbjogc3BhbiAxO1xuXHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdCYtZmlyc3QsXG5cdFx0XHRcdFx0Ji1sYXN0IHtcblx0XHRcdFx0XHRcdGdyaWQtY29sdW1uOiAxO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXG5cdFx0XHRcdGRpdjpoYXMoID4gLmZvcm0tcm93ICk6Zmlyc3Qtb2YtdHlwZSB7XG5cdFx0XHRcdFx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHRAaW5jbHVkZSBzLm1pbihzLiRtZCkge1xuXG5cdFx0Lndvb2NvbW1lcmNlIHtcblxuXHRcdFx0LmNoZWNrb3V0IHtcblx0XHRcdFx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTtcblxuXHRcdFx0XHQ+ICoge1xuXHRcdFx0XHRcdGdyaWQtY29sdW1uOiAxIC8gMztcblx0XHRcdFx0fVxuXG5cdFx0XHRcdC53b29jb21tZXJjZS1Ob3RpY2VHcm91cC1jaGVja291dCB7XG5cdFx0XHRcdFx0Z3JpZC1jb2x1bW46IDEgLyA0O1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0Lndvb2NvbW1lcmNlLW9yZGVyIHtcblx0XHRcdFx0XHR0b3A6IDEwZHZoO1xuXHRcdFx0XHRcdHBvc2l0aW9uOiBzdGlja3k7XG5cdFx0XHRcdFx0Z3JpZC1jb2x1bW46IDMgLyA0O1xuXHRcdFx0XHRcdG1heC1oZWlnaHQ6IDgwZHZoO1xuXHRcdFx0XHRcdG1pbi13aWR0aDogcy5yZW0oMzYwKTtcblx0XHRcdFx0XHRnYXA6IHZhcigtLWl0LXNwYWNpbmctZGVmYXVsdCk7XG5cdFx0XHRcdFx0Z3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvIDFmcjtcblxuXHRcdFx0XHRcdC5zaG9wX3RhYmxlIHtcblxuXHRcdFx0XHRcdFx0LmxhYmVsX3dpdGhfcHJpY2Uge1xuXHRcdFx0XHRcdFx0XHRnYXA6IDAuMjVyZW07XG5cdFx0XHRcdFx0XHRcdGZvbnQtc2l6ZTogdmFyKC0taXQtc2l6ZS1zbWFsbCk7XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0QGluY2x1ZGUgcy5taW4ocy4kbGcpIHtcblxuXHRcdC53b29jb21tZXJjZSB7XG5cblx0XHRcdC5jaGVja291dCB7XG5cblx0XHRcdFx0Lndvb2NvbW1lcmNlLW9yZGVyIHtcblx0XHRcdFx0XHRtaW4td2lkdGg6IHMucmVtKDQwMCk7XG5cblx0XHRcdFx0XHQuc2hvcF90YWJsZSB7XG5cblx0XHRcdFx0XHRcdC5sYWJlbF93aXRoX3ByaWNlIHtcblx0XHRcdFx0XHRcdFx0Z2FwOiAwLjVyZW07XG5cdFx0XHRcdFx0XHRcdGZvbnQtc2l6ZTogdmFyKC0taXQtc2l6ZS1tZWRpdW0pO1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuIiwiLyoqXG4gKiBEbyBub3QgQHVzZSBmaWxlcyB3aXRoIGFjdHVhbCBzY3NzIGNvZGUgaW4gdGhpcyBmaWxlLCBhcyBpdCB3aWxsIGNvbXBpbGUgY3NzIGNvZGUgdHdpY2UuXG4gKiBBcyB0aGlzIGZpbGUgZ29pbmcgdG8gYmUgYW4gc3RhbmRhbG9uZSBjc3MgZmlsZS5cbiAqL1xuQHVzZSBcIi4uLy4uLy4uLy4uL2Fzc2V0cy9zY3NzL2dsb2JhbC8wLXNldHRpbmdzL3NldHRpbmdzXCIgYXMgcztcbkB1c2UgXCIuLi8uLi8uLi8uLi9hc3NldHMvc2Nzcy9nbG9iYWwvMS1nZW5lcmljLzEtMS1iYXNlL2J1dHRvbnMtYmFzZVwiO1xuQHVzZSBcIi4uL2NvbXBvbmVudHMvbm90aWZpY2F0aW9uc1wiO1xuXG4ud29vY29tbWVyY2UtYWNjb3VudCB7XG5cbiAgJi53b29jb21tZXJjZS1sb3N0LXBhc3N3b3JkIHtcblxuICAgIC5lbnRyeS10aXRsZSB7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICB9XG5cbiAgICBmb3JtIHtcbiAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICBnYXA6IHZhcigtLWl0LXNwYWNpbmctZGVmYXVsdCk7XG5cbiAgICAgICY6aGFzKCN1c2VyX2xvZ2luKSB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGRpdi53b29jb21tZXJjZSB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBjb2x1bW4tZ2FwOiB2YXIoLS1pdC1zcGFjaW5nLXNlY3Rpb24pO1xuICAgIHJvdy1nYXA6IHZhcigtLWl0LXNwYWNpbmctc2VjdGlvbi1oYWxmKTtcblxuICAgICY6OmJlZm9yZSxcbiAgICAmOjphZnRlciB7XG4gICAgICBjb250ZW50OiBub25lO1xuICAgIH1cblxuICAgIC53b29jb21tZXJjZS1NeUFjY291bnQtbmF2aWdhdGlvbi10cmlnZ2VyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgLndvb2NvbW1lcmNlLU15QWNjb3VudC1uYXZpZ2F0aW9uIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICB1bCB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgIH1cblxuICAgICAgbGkge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1pdC1jb2xvci1ib3JkZXIpO1xuICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLWl0LXRyYW5zaXRpb24pO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWl0LWNvbG9yLWJvcmRlcik7XG4gICAgICAgIH1cblxuICAgICAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taXQtY29sb3ItYmFja2dyb3VuZCk7XG4gICAgICAgIH1cblxuICAgICAgICBAbWVkaWEgKGhvdmVyOiBob3Zlcikge1xuXG4gICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pdC1jb2xvci1iYWNrZ3JvdW5kKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHdpZHRoOiAxLjVyZW07XG4gICAgICAgICAgaGVpZ2h0OiAxLjVyZW07XG4gICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgcmlnaHQ6IC44NzVyZW07XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0Nzdmcgdmlld0JveD0nMCAwIDI0IDI0JyBmaWxsPSdub25lJyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnJTNFJTNDcmVjdCB4PSc4LjU5OTYxJyB5PSc2Ljg5NTUxJyB3aWR0aD0nMS4yNjY2NCcgaGVpZ2h0PSc4LjM1MTAzJyByeD0nMC42MzMzMTknIHRyYW5zZm9ybT0ncm90YXRlKC00NSA4LjU5OTYxIDYuODk1NTEpJyBmaWxsPSclMjMyNTQ0NUEnLyUzRSUzQ3JlY3Qgd2lkdGg9JzEuMjY2NjQnIGhlaWdodD0nOC4zNTEwMycgcng9JzAuNjMzMzE5JyB0cmFuc2Zvcm09J21hdHJpeCgtMC43MDcxMDcgLTAuNzA3MTA3IC0wLjcwNzEwNyAwLjcwNzEwNyAxNS40MDA0IDEyLjA5NDcpJyBmaWxsPSclMjMyNTQ0NUEnLyUzRSUzQy9zdmclM0UlMEFcIik7XG4gICAgICAgIH1cblxuICAgICAgICAmOmxhc3QtY2hpbGQge1xuXG4gICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogbm9uZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgYSB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgY29sb3I6IHZhcigtLWl0LWNvbG9yLXRleHQpO1xuICAgICAgICBwYWRkaW5nOiAwLjg3NXJlbTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLndvb2NvbW1lcmNlLU15QWNjb3VudC1jb250ZW50IHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBnYXA6IHZhcigtLWl0LXNwYWNpbmctZGVmYXVsdCk7XG5cbiAgICAgIHNlY3Rpb24ge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgfVxuXG4gICAgICBoMiB7XG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0taXQtaDUtZm9udC1zaXplKTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWl0LWg1LWxpbmUtaGVpZ2h0KTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgIH1cblxuICAgICAgLm15X2FjY291bnRfb3JkZXJzIHtcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1pdC1zaXplLXNtYWxsKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAud29vY29tbWVyY2UtcGFnaW5hdGlvbiB7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgIH1cblxuICAgID4gLnUtY29sdW1ucyB7XG4gICAgICBkaXNwbGF5OiBncmlkO1xuICAgIH1cbiAgfVxuXG4gIC5pdC1jb250YWluZXItLW5hcnJvdyB7XG5cbiAgICBkaXYud29vY29tbWVyY2Uge1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gICAgICBnYXA6IHZhcigtLWl0LXNwYWNpbmctZGVmYXVsdCk7XG5cbiAgICAgIC5lbnRyeS10aXRsZSArIC5lbnRyeS1jb250ZW50LS13b29jb21tZXJjZSB7XG4gICAgICAgIG1hcmdpbi10b3A6IHZhcigtLWl0LXNwYWNpbmctZGVmYXVsdCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLndvb2NvbW1lcmNlLUFkZHJlc3MtdGl0bGUge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcblxuICAgIC5lZGl0IHtcblxuICAgICAgQGV4dGVuZCAlaXQtYnV0dG9uLS10ZXJ0aWFyeSAhb3B0aW9uYWw7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICBmb250LXNpemU6IHZhcigtLWl0LXNpemUteC1zbWFsbCk7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdW5zZXQ7XG4gICAgICBsZXR0ZXItc3BhY2luZzogMC4wMWVtO1xuICAgICAgbWFyZ2luLXRvcDogLjI1cmVtO1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgLmVkaXQtYWNjb3VudCB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBnYXA6IHZhcigtLWl0LXNwYWNpbmctZGVmYXVsdCk7XG5cbiAgICA+ICoge1xuICAgICAgZ3JpZC1jb2x1bW46IHNwYW4gMjtcbiAgICB9XG4gIH1cblxuICAud29vY29tbWVyY2UtYWRkcmVzcy1maWVsZHMge1xuXG4gICAgcDpoYXMoYnV0dG9uW3R5cGU9XCJzdWJtaXRcIl0pIHtcbiAgICAgIG1hcmdpbi10b3A6IHZhcigtLWl0LXNwYWNpbmctZGVmYXVsdCk7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgcy5taW4ocy4kbWQpIHtcblxuICAgIGRpdi53b29jb21tZXJjZSB7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgICB9XG5cbiAgICAmLndvb2NvbW1lcmNlLWxvc3QtcGFzc3dvcmQge1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTtcbiAgICB9XG5cbiAgICAuaXQtY29udGFpbmVyLS13aWRlIHtcblxuICAgICAgZGl2Lndvb2NvbW1lcmNlIHtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTtcblxuICAgICAgICAud29vY29tbWVyY2UtTXlBY2NvdW50LWNvbnRlbnQge1xuICAgICAgICAgIGdyaWQtY29sdW1uOiBzcGFuIDI7XG4gICAgICAgIH1cblxuICAgICAgICA+IC53b29jb21tZXJjZS1ub3RpY2VzLXdyYXBwZXIge1xuICAgICAgICAgIGdyaWQtY29sdW1uOiBzcGFuIDM7XG4gICAgICAgIH1cblxuICAgICAgICA+IC51LWNvbHVtbnMge1xuICAgICAgICAgIGdyaWQtY29sdW1uOiBzcGFuIDM7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAuZWRpdC1hY2NvdW50IHtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgcy5taW4tbWF4KHMuJHplcm8sIHMuJG1kKSB7XG5cbiAgICBkaXYud29vY29tbWVyY2Uge1xuXG4gICAgICAud29vY29tbWVyY2UtTXlBY2NvdW50LW5hdmlnYXRpb24tdHJpZ2dlciB7XG4gICAgICAgIGFsbDogdW5zZXQ7XG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgei1pbmRleDogOTtcbiAgICAgICAgdG9wOiBjYWxjKHZhcigtLWl0LWhlYWRlci1oZWlnaHQpICsgNy41cmVtKTtcbiAgICAgICAgcGFkZGluZzogLjVyZW07XG4gICAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiB2YXIoLS1pdC1ib3JkZXItcmFkaXVzKTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IHZhcigtLWl0LWJvcmRlci1yYWRpdXMpO1xuICAgICAgICBib3JkZXItd2lkdGg6IDFweCAxcHggMXB4IDA7XG4gICAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0taXQtY29sb3ItYm9yZGVyKTtcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0taXQtY29sb3Itd2hpdGUpO1xuICAgICAgICB0cmFuc2l0aW9uOiBsZWZ0IHZhcigtLWl0LXRyYW5zaXRpb24pO1xuXG4gICAgICAgICYuaXMtYWN0aXZlIHtcbiAgICAgICAgICBsZWZ0OiBjYWxjKDg3dncgLSAxcHgpO1xuXG4gICAgICAgICAgLm9wZW4ge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuY2xvc2Uge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgc3ZnIHtcbiAgICAgICAgICB3aWR0aDogMS4yNXJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5jbG9zZSB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAud29vY29tbWVyY2UtTXlBY2NvdW50LW5hdmlnYXRpb24ge1xuICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgIGxlZnQ6IC04N3Z3O1xuICAgICAgICB3aWR0aDogODd2dztcbiAgICAgICAgdG9wOiBjYWxjKHZhcigtLWl0LWhlYWRlci1oZWlnaHQpICsgdmFyKC0td3AtYWRtaW4tLWFkbWluLWJhci0taGVpZ2h0LCAwKSArIDJyZW0pO1xuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pdC1jb2xvci13aGl0ZSk7XG4gICAgICAgIHotaW5kZXg6IDg7XG4gICAgICAgIHRyYW5zaXRpb246IGxlZnQgdmFyKC0taXQtdHJhbnNpdGlvbik7XG4gICAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiB2YXIoLS1pdC1ib3JkZXItcmFkaXVzKTtcbiAgICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHZhcigtLWl0LWJvcmRlci1yYWRpdXMpO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1pdC1jb2xvci1ib3JkZXIpO1xuICAgICAgICBtYXgtaGVpZ2h0OiBjYWxjKDkwZHZoIC0gdmFyKC0taXQtaGVhZGVyLWhlaWdodCkgLSB2YXIoLS13cC1hZG1pbi0tYWRtaW4tYmFyLS1oZWlnaHQsIDApIC0gMnJlbSk7XG4gICAgICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcblxuICAgICAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIGxpIHtcblxuICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogMDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuIiwiLyoqXG4gKiBEbyBub3QgQHVzZSBmaWxlcyB3aXRoIGFjdHVhbCBzY3NzIGNvZGUgaW4gdGhpcyBmaWxlLCBhcyBpdCB3aWxsIGNvbXBpbGUgY3NzIGNvZGUgdHdpY2UuXG4gKiBBcyB0aGlzIGZpbGUgZ29pbmcgdG8gYmUgYW4gc3RhbmRhbG9uZSBjc3MgZmlsZS5cbiAqL1xuQHVzZSBcIi4uLy4uLy4uLy4uL2Fzc2V0cy9zY3NzL2dsb2JhbC8wLXNldHRpbmdzL3NldHRpbmdzXCIgYXMgcztcblxuLndvb2NvbW1lcmNlIHtcblxuXHQjY3VzdG9tZXJfbG9naW4ge1xuXHRcdGNvbHVtbi1nYXA6IHZhcigtLWl0LXNwYWNpbmctc2VjdGlvbik7XG5cdFx0cm93LWdhcDogdmFyKC0taXQtc3BhY2luZy1zZWN0aW9uLWhhbGYpO1xuXHR9XG5cblx0Zm9ybSB7XG5cblx0XHQmLmxvZ2luLFxuXHRcdCYucmVnaXN0ZXIge1xuXHRcdFx0cGFkZGluZzogMDtcblx0XHRcdG1hcmdpbjogMDtcblx0XHRcdGJvcmRlcjogMDtcblxuXHRcdFx0LmZvcm0tcm93LFxuXHRcdFx0cCB7XG5cdFx0XHRcdG1hcmdpbi1ib3R0b206IHZhcigtLWl0LXNwYWNpbmctZm9ybSk7XG5cblx0XHRcdFx0JjpoYXMoYnV0dG9uW3R5cGU9XCJzdWJtaXRcIl0pIHtcblx0XHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0XHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcblx0XHRcdFx0XHRnYXA6IHZhcigtLWl0LXNwYWNpbmctY29sdW1ucyk7XG5cblx0XHRcdFx0XHRAaW5jbHVkZSBzLm1pbihzLiRzbSkge1xuXHRcdFx0XHRcdFx0ZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xuXHRcdFx0XHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRcdFx0XHRcdGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cblx0XHRcdFx0JjpsYXN0LWNoaWxkIHtcblx0XHRcdFx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdC5sb3N0X3Bhc3N3b3JkIHtcblxuXHRcdFx0XHRhIHtcblxuXHRcdFx0XHRcdEBpbmNsdWRlIHMuYW5pbWF0ZWQtdW5kZXJsaW5lKCk7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cbiIsIi8qKlxuICogRG8gbm90IEB1c2UgZmlsZXMgd2l0aCBhY3R1YWwgc2NzcyBjb2RlIGluIHRoaXMgZmlsZSwgYXMgaXQgd2lsbCBjb21waWxlIGNzcyBjb2RlIHR3aWNlLlxuICogQXMgdGhpcyBmaWxlIGdvaW5nIHRvIGJlIGFuIHN0YW5kYWxvbmUgY3NzIGZpbGUuXG4gKi9cbkB1c2UgXCIuLi8uLi8uLi8uLi9hc3NldHMvc2Nzcy9nbG9iYWwvMC1zZXR0aW5ncy9zZXR0aW5nc1wiIGFzIHM7XG5cbi53b29jb21tZXJjZS1vcmRlci1yZWNlaXZlZCB7XG5cblx0Lndvb2NvbW1lcmNlIHtcblxuXHRcdC53b29jb21tZXJjZS1vcmRlciB7XG5cblx0XHRcdD4gc2VjdGlvbiB7XG5cdFx0XHRcdG1hcmdpbi10b3A6IHZhcigtLWl0LXNwYWNpbmctY29udGVudCk7XG5cdFx0XHR9XG5cblx0XHRcdC53b29jb21tZXJjZS10aGFua3lvdS1vcmRlci1yZWNlaXZlZCB7XG5cdFx0XHRcdG1hcmdpbjogLjVyZW0gMCAwO1xuXHRcdFx0fVxuXG5cdFx0XHQud29vY29tbWVyY2Utb3JkZXItb3ZlcnZpZXcge1xuXHRcdFx0XHRtYXJnaW46IHZhcigtLWl0LXNwYWNpbmctY29udGVudCkgMCAwO1xuXHRcdFx0fVxuXG5cdFx0XHQud29vY29tbWVyY2UtYmFjcy1iYW5rLWRldGFpbHMge1xuXG5cdFx0XHRcdGgyIHtcblx0XHRcdFx0XHRmb250LXNpemU6IHZhcigtLWl0LXNpemUtbGFyZ2UpO1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0aDMge1xuXHRcdFx0XHRcdGZvbnQtc2l6ZTogdmFyKC0taXQtc2l6ZS1sYXJnZSk7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQud2MtYmFjcy1iYW5rLWRldGFpbHMge1xuXHRcdFx0XHRcdG1hcmdpbjogMDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHQud29vY29tbWVyY2Utb3JkZXItb3ZlcnZpZXcsXG5cdFx0XHQud29vY29tbWVyY2UtYmFjcy1iYW5rLWRldGFpbHMgLndjLWJhY3MtYmFuay1kZXRhaWxzIHtcblx0XHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuXHRcdFx0XHQmOmJlZm9yZSxcblx0XHRcdFx0JjphZnRlciB7XG5cdFx0XHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHRcdFx0fVxuXG5cdFx0XHRcdGxpIHtcblx0XHRcdFx0XHRmbG9hdDogbm9uZTtcblx0XHRcdFx0XHRtYXJnaW46IDA7XG5cdFx0XHRcdFx0ZGlzcGxheTogaW5saW5lLWZsZXg7XG5cdFx0XHRcdFx0YWxpZ24taXRlbXM6IGJhc2VsaW5lO1xuXHRcdFx0XHRcdGZvbnQtc2l6ZTogdmFyKC0taXQtc2l6ZS1tZWRpdW0pO1xuXHRcdFx0XHRcdHRleHQtdHJhbnNmb3JtOiBub25lO1xuXHRcdFx0XHRcdGdhcDogLjI1cmVtO1xuXHRcdFx0XHRcdGJvcmRlcjogMDtcblxuXHRcdFx0XHRcdHN0cm9uZyB7XG5cdFx0XHRcdFx0XHRmb250LXNpemU6IDFlbTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHRAaW5jbHVkZSBzLm1pbi1tYXgocy4kemVybywgcy4kc20pIHtcblxuXHRcdC53b29jb21tZXJjZSB7XG5cblx0XHRcdC53b29jb21tZXJjZS1vcmRlciB7XG5cblx0XHRcdFx0Lndvb2NvbW1lcmNlLW9yZGVyLWRldGFpbHMge1xuXG5cdFx0XHRcdFx0Lndvb2NvbW1lcmNlLXRhYmxlIHtcblxuXHRcdFx0XHRcdFx0dGQsIHRoIHtcblxuXHRcdFx0XHRcdFx0XHQmOmxhc3QtY2hpbGQge1xuXHRcdFx0XHRcdFx0XHRcdHRleHQtYWxpZ246IHJpZ2h0O1xuXHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0QGluY2x1ZGUgcy5taW4ocy4kc20pIHtcblxuXHRcdC53b29jb21tZXJjZSB7XG5cblx0XHRcdC53b29jb21tZXJjZS1vcmRlciB7XG5cblx0XHRcdFx0Lndvb2NvbW1lcmNlLW9yZGVyLWRldGFpbHMge1xuXG5cdFx0XHRcdFx0Lndvb2NvbW1lcmNlLXRhYmxlIHtcblxuXHRcdFx0XHRcdFx0dHI6aGFzKD4gOmxhc3QtY2hpbGQ6bnRoLWNoaWxkKDIpKSB7XG5cblx0XHRcdFx0XHRcdFx0PiB0ZCxcblx0XHRcdFx0XHRcdFx0PiB0aCB7XG5cdFx0XHRcdFx0XHRcdFx0d2lkdGg6IDUwJTtcblx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuIl19 */
