/*!*************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[1].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[1].use[3]!./resources/scss/main.scss ***!
  \*************************************************************************************************************************************************************************************************************************************************/
@charset "UTF-8";
/**
 * Main Libraries File
 * Group: Libraries
 */
/**
 * Swiper
 * Group: Libraries
 */
/**
 * Swiper 11.2.10
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * https://swiperjs.com
 *
 * Copyright 2014-2025 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: June 28, 2025
 */
@font-face {
  font-family: "swiper-icons";
  src: url("data:application/font-woff;charset=utf-8;base64, d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA") format("woff");
  font-weight: 400;
  font-style: normal;
}
:root {
  --swiper-theme-color: #007aff;
  /*
  --swiper-preloader-color: var(--swiper-theme-color);
  --swiper-wrapper-transition-timing-function: initial;
  */
}

:host {
  position: relative;
  display: block;
  margin-left: auto;
  margin-right: auto;
  z-index: 1;
}

.swiper {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
  list-style: none;
  padding: 0;
  /* Fix of Webkit flickering */
  z-index: 1;
  display: block;
}

.swiper-vertical > .swiper-wrapper {
  flex-direction: column;
}

.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: flex;
  transition-property: transform;
  transition-timing-function: var(--swiper-wrapper-transition-timing-function, initial);
  box-sizing: content-box;
}

.swiper-android .swiper-slide,
.swiper-ios .swiper-slide,
.swiper-wrapper {
  transform: translate3d(0px, 0, 0);
}

.swiper-horizontal {
  touch-action: pan-y;
}

.swiper-vertical {
  touch-action: pan-x;
}

.swiper-slide {
  flex-shrink: 0;
  width: 100%;
  height: 100%;
  position: relative;
  transition-property: transform;
  display: block;
}

.swiper-slide-invisible-blank {
  visibility: hidden;
}

/* Auto Height */
.swiper-autoheight,
.swiper-autoheight .swiper-slide {
  height: auto;
}

.swiper-autoheight .swiper-wrapper {
  align-items: flex-start;
  transition-property: transform, height;
}

.swiper-backface-hidden .swiper-slide {
  transform: translateZ(0);
  backface-visibility: hidden;
}

/* 3D Effects */
.swiper-3d.swiper-css-mode .swiper-wrapper {
  perspective: 1200px;
}

.swiper-3d .swiper-wrapper {
  transform-style: preserve-3d;
}

.swiper-3d {
  perspective: 1200px;
}
.swiper-3d .swiper-slide,
.swiper-3d .swiper-cube-shadow {
  transform-style: preserve-3d;
}

/* CSS Mode */
.swiper-css-mode > .swiper-wrapper {
  overflow: auto;
  scrollbar-width: none; /* For Firefox */
  -ms-overflow-style: none; /* For Internet Explorer and Edge */
}
.swiper-css-mode > .swiper-wrapper::-webkit-scrollbar {
  display: none;
}
.swiper-css-mode > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: start start;
}
.swiper-css-mode.swiper-horizontal > .swiper-wrapper {
  scroll-snap-type: x mandatory;
}
.swiper-css-mode.swiper-vertical > .swiper-wrapper {
  scroll-snap-type: y mandatory;
}
.swiper-css-mode.swiper-free-mode > .swiper-wrapper {
  scroll-snap-type: none;
}
.swiper-css-mode.swiper-free-mode > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: none;
}
.swiper-css-mode.swiper-centered > .swiper-wrapper::before {
  content: "";
  flex-shrink: 0;
  order: 9999;
}
.swiper-css-mode.swiper-centered > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: center center;
  scroll-snap-stop: always;
}
.swiper-css-mode.swiper-centered.swiper-horizontal > .swiper-wrapper > .swiper-slide:first-child {
  margin-inline-start: var(--swiper-centered-offset-before);
}
.swiper-css-mode.swiper-centered.swiper-horizontal > .swiper-wrapper::before {
  height: 100%;
  min-height: 1px;
  width: var(--swiper-centered-offset-after);
}
.swiper-css-mode.swiper-centered.swiper-vertical > .swiper-wrapper > .swiper-slide:first-child {
  margin-block-start: var(--swiper-centered-offset-before);
}
.swiper-css-mode.swiper-centered.swiper-vertical > .swiper-wrapper::before {
  width: 100%;
  min-width: 1px;
  height: var(--swiper-centered-offset-after);
}

/* Slide styles start */
/* 3D Shadows */
.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top,
.swiper-3d .swiper-slide-shadow-bottom,
.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top,
.swiper-3d .swiper-slide-shadow-bottom {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 10;
}
.swiper-3d .swiper-slide-shadow {
  background: rgba(0, 0, 0, 0.15);
}
.swiper-3d .swiper-slide-shadow-left {
  background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-3d .swiper-slide-shadow-right {
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-3d .swiper-slide-shadow-top {
  background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-3d .swiper-slide-shadow-bottom {
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-lazy-preloader {
  width: 42px;
  height: 42px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -21px;
  margin-top: -21px;
  z-index: 10;
  transform-origin: 50%;
  box-sizing: border-box;
  border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));
  border-radius: 50%;
  border-top-color: transparent;
}

.swiper:not(.swiper-watch-progress) .swiper-lazy-preloader,
.swiper-watch-progress .swiper-slide-visible .swiper-lazy-preloader {
  animation: swiper-preloader-spin 1s infinite linear;
}

.swiper-lazy-preloader-white {
  --swiper-preloader-color: #fff;
}

.swiper-lazy-preloader-black {
  --swiper-preloader-color: #000;
}

@keyframes swiper-preloader-spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
/* Slide styles end */
:root {
  /*
  --swiper-pagination-color: var(--swiper-theme-color);
  --swiper-pagination-left: auto;
  --swiper-pagination-right: 8px;
  --swiper-pagination-bottom: 8px;
  --swiper-pagination-top: auto;
  --swiper-pagination-fraction-color: inherit;
  --swiper-pagination-progressbar-bg-color: rgba(0,0,0,0.25);
  --swiper-pagination-progressbar-size: 4px;
  --swiper-pagination-bullet-size: 8px;
  --swiper-pagination-bullet-width: 8px;
  --swiper-pagination-bullet-height: 8px;
  --swiper-pagination-bullet-border-radius: 50%;
  --swiper-pagination-bullet-inactive-color: #000;
  --swiper-pagination-bullet-inactive-opacity: 0.2;
  --swiper-pagination-bullet-opacity: 1;
  --swiper-pagination-bullet-horizontal-gap: 4px;
  --swiper-pagination-bullet-vertical-gap: 6px;
  */
}

.swiper-pagination {
  position: absolute;
  text-align: center;
  transition: 300ms opacity;
  transform: translate3d(0, 0, 0);
  z-index: 10;
}
.swiper-pagination.swiper-pagination-hidden {
  opacity: 0;
}
.swiper-pagination-disabled > .swiper-pagination, .swiper-pagination.swiper-pagination-disabled {
  display: none !important;
}

/* Common Styles */
.swiper-pagination-fraction,
.swiper-pagination-custom,
.swiper-horizontal > .swiper-pagination-bullets,
.swiper-pagination-bullets.swiper-pagination-horizontal {
  bottom: var(--swiper-pagination-bottom, 8px);
  top: var(--swiper-pagination-top, auto);
  left: 0;
  width: 100%;
}

/* Bullets */
.swiper-pagination-bullets-dynamic {
  overflow: hidden;
  font-size: 0;
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transform: scale(0.33);
  position: relative;
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active {
  transform: scale(1);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {
  transform: scale(1);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {
  transform: scale(0.66);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {
  transform: scale(0.33);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {
  transform: scale(0.66);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {
  transform: scale(0.33);
}

.swiper-pagination-bullet {
  width: var(--swiper-pagination-bullet-width, var(--swiper-pagination-bullet-size, 8px));
  height: var(--swiper-pagination-bullet-height, var(--swiper-pagination-bullet-size, 8px));
  display: inline-block;
  border-radius: var(--swiper-pagination-bullet-border-radius, 50%);
  background: var(--swiper-pagination-bullet-inactive-color, #000);
  opacity: var(--swiper-pagination-bullet-inactive-opacity, 0.2);
}
button.swiper-pagination-bullet {
  border: none;
  margin: 0;
  padding: 0;
  box-shadow: none;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

.swiper-pagination-clickable .swiper-pagination-bullet {
  cursor: pointer;
}
.swiper-pagination-bullet:only-child {
  display: none !important;
}

.swiper-pagination-bullet-active {
  opacity: var(--swiper-pagination-bullet-opacity, 1);
  background: var(--swiper-pagination-color, var(--swiper-theme-color));
}

.swiper-vertical > .swiper-pagination-bullets,
.swiper-pagination-vertical.swiper-pagination-bullets {
  right: var(--swiper-pagination-right, 8px);
  left: var(--swiper-pagination-left, auto);
  top: 50%;
  transform: translate3d(0px, -50%, 0);
}
.swiper-vertical > .swiper-pagination-bullets .swiper-pagination-bullet,
.swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet {
  margin: var(--swiper-pagination-bullet-vertical-gap, 6px) 0;
  display: block;
}
.swiper-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic,
.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  top: 50%;
  transform: translateY(-50%);
  width: 8px;
}
.swiper-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,
.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  display: inline-block;
  transition: 200ms transform, 200ms top;
}

.swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet,
.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 var(--swiper-pagination-bullet-horizontal-gap, 4px);
}
.swiper-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic,
.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  left: 50%;
  transform: translateX(-50%);
  white-space: nowrap;
}
.swiper-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,
.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transition: 200ms transform, 200ms left;
}

.swiper-horizontal.swiper-rtl > .swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transition: 200ms transform, 200ms right;
}

/* Fraction */
.swiper-pagination-fraction {
  color: var(--swiper-pagination-fraction-color, inherit);
}

/* Progress */
.swiper-pagination-progressbar {
  background: var(--swiper-pagination-progressbar-bg-color, rgba(0, 0, 0, 0.25));
  position: absolute;
}
.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  background: var(--swiper-pagination-color, var(--swiper-theme-color));
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  transform: scale(0);
  transform-origin: left top;
}
.swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  transform-origin: right top;
}
.swiper-horizontal > .swiper-pagination-progressbar, .swiper-pagination-progressbar.swiper-pagination-horizontal, .swiper-vertical > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite, .swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite {
  width: 100%;
  height: var(--swiper-pagination-progressbar-size, 4px);
  left: 0;
  top: 0;
}
.swiper-vertical > .swiper-pagination-progressbar, .swiper-pagination-progressbar.swiper-pagination-vertical, .swiper-horizontal > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite, .swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite {
  width: var(--swiper-pagination-progressbar-size, 4px);
  height: 100%;
  left: 0;
  top: 0;
}

.swiper-pagination-lock {
  display: none;
}

:root {
  --swiper-navigation-size: 44px;
  /*
  --swiper-navigation-top-offset: 50%;
  --swiper-navigation-sides-offset: 10px;
  --swiper-navigation-color: var(--swiper-theme-color);
  */
}

.swiper-button-prev,
.swiper-button-next {
  position: absolute;
  top: var(--swiper-navigation-top-offset, 50%);
  width: calc(var(--swiper-navigation-size) / 44 * 27);
  height: var(--swiper-navigation-size);
  margin-top: calc(0px - var(--swiper-navigation-size) / 2);
  z-index: 10;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--swiper-navigation-color, var(--swiper-theme-color));
}
.swiper-button-prev.swiper-button-disabled,
.swiper-button-next.swiper-button-disabled {
  opacity: 0.35;
  cursor: auto;
  pointer-events: none;
}
.swiper-button-prev.swiper-button-hidden,
.swiper-button-next.swiper-button-hidden {
  opacity: 0;
  cursor: auto;
  pointer-events: none;
}
.swiper-navigation-disabled .swiper-button-prev,
.swiper-navigation-disabled .swiper-button-next {
  display: none !important;
}
.swiper-button-prev svg,
.swiper-button-next svg {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
  transform-origin: center;
}
.swiper-rtl .swiper-button-prev svg,
.swiper-rtl .swiper-button-next svg {
  transform: rotate(180deg);
}

.swiper-button-prev,
.swiper-rtl .swiper-button-next {
  left: var(--swiper-navigation-sides-offset, 10px);
  right: auto;
}

.swiper-button-next,
.swiper-rtl .swiper-button-prev {
  right: var(--swiper-navigation-sides-offset, 10px);
  left: auto;
}

.swiper-button-lock {
  display: none;
}

/* Navigation font start */
.swiper-button-prev:after,
.swiper-button-next:after {
  font-family: swiper-icons;
  font-size: var(--swiper-navigation-size);
  text-transform: none !important;
  letter-spacing: 0;
  font-variant: initial;
  line-height: 1;
}

.swiper-button-prev:after,
.swiper-rtl .swiper-button-next:after {
  content: "prev";
}

.swiper-button-next,
.swiper-rtl .swiper-button-prev {
  right: var(--swiper-navigation-sides-offset, 10px);
  left: auto;
}
.swiper-button-next:after,
.swiper-rtl .swiper-button-prev:after {
  content: "next";
}

/* Navigation font end */
/**
 * Main Settings File
 * Group: Settings
 */
/**
 * Animation
 * Group: Settings
 */
:root {
  --transition-duration: 0.3s;
  --transition-duration-medium: 0.5s;
  --transition-duration-slow: 1s;
  --transition-duration-very-slow: 2s;
}

/**
 * Box Model
 * Group: Settings
 */
:root {
  --radius: 1rem;
  --border-radius-null: 0;
  --border-radius-xs: 0.25rem;
  --border-radius-s: 0.5rem;
  --border-radius-m: 1rem;
  --border-radius-l: 1.25rem;
  --border-radius-xl: 4rem;
  --border-radius-xxl: 8rem;
  --border-radius-full: 50%;
  --box-shadow-light: hsl(0deg 0% 0% / 15%);
  --box-shadow-dark: hsl(0deg 0% 100% / 15%);
  --box-shadow-light-01:
    0px 1px 2px 0px var(--box-shadow-light, rgb(0 0 0 / 15%)),
    0px 1px 3px 1px var(--box-shadow-light, rgb(0 0 0 / 15%));
  --box-shadow-light-02:
    0px 1px 2px 0px var(--box-shadow-light, rgb(0 0 0 / 15%)),
    0px 2px 6px 2px var(--box-shadow-light, rgb(0 0 0 / 15%));
  --box-shadow-light-03:
    0px 4px 8px 3px var(--box-shadow-light, rgb(0 0 0 / 15%)),
    0px 1px 3px 0px var(--box-shadow-light, rgb(0 0 0 / 15%));
  --box-shadow-light-04:
    0px 6px 10px 4px var(--box-shadow-light, rgb(0 0 0 / 15%)),
    0px 2px 3px 0px var(--box-shadow-light, rgb(0 0 0 / 15%));
  --box-shadow-light-05:
    0px 8px 12px 6px var(--box-shadow-light, rgb(0 0 0 / 15%)),
    0px 4px 4px 0px var(--box-shadow-light, rgb(0 0 0 / 15%));
  --box-shadow-light-06:
    0px 16px 32px 6px var(--box-shadow-light, rgb(0 0 0 / 15%)),
    0px 4px 8px 0px var(--box-shadow-light, rgb(0 0 0 / 15%));
  --box-shadow-dark-01:
    0px 1px 2px 0px var(--box-shadow-dark, rgb(255 255 255 / 15%)),
    0px 1px 3px 1px var(--box-shadow-dark, rgb(255 255 255 / 15%));
  --box-shadow-dark-02:
    0px 1px 2px 0px var(--box-shadow-dark, rgb(255 255 255 / 15%)),
    0px 2px 6px 2px var(--box-shadow-dark, rgb(255 255 255 / 15%));
  --box-shadow-dark-03:
    0px 4px 8px 3px var(--box-shadow-dark, rgb(255 255 255 / 15%)),
    0px 1px 3px 0px var(--box-shadow-dark, rgb(255 255 255 / 15%));
  --box-shadow-dark-04:
    0px 6px 10px 4px var(--box-shadow-dark, rgb(255 255 255 / 15%)),
    0px 2px 3px 0px var(--box-shadow-dark, rgb(255 255 255 / 15%));
  --box-shadow-dark-05:
    0px 8px 12px 6px var(--box-shadow-dark, rgb(255 255 255 / 15%)),
    0px 4px 4px 0px var(--box-shadow-dark, rgb(255 255 255 / 15%));
  --box-shadow-dark-06:
    0px 16px 32px 6px var(--box-shadow-dark, rgb(255 255 255 / 15%)),
    0px 4px 8px 0px var(--box-shadow-dark, rgb(255 255 255 / 15%));
  --box-shadow-hover: 0 4px 20px rgb(10 13 15 / 35%);
  --box-shadow-menu-inner: 0px 4px 8px 0px var(--color-neutral-050) inset;
  --box-shadow-menu-outer: 0px 4px 4px 0px #00000040;
  --box-shadow-accordion: 0px 5px 16px 0px rgb(8 15 52 / 6%);
}

/**
 * Breakpoints
 * Group: Settings
 */
/**
 * Buttons
 * Group: Settings
 */
:root {
  --btn-radius: var(--radius);
  --btn-radius-xs: calc(var(--radius) / 4);
  --btn-radius-sm: calc(var(--radius) / 2);
  --btn-radius-md: calc(var(--radius) * 1.125);
  --btn-radius-lg: calc(var(--radius) * 1.75);
  --btn-radius-xl: calc(var(--radius) * 4);
  --btn-radius-full: 50%;
  --button-size-xsmall: 2rem;
  --button-size-small: 2.75rem;
  --button-size: 3.125rem;
  --button-size-large: 3.125rem;
  --button-border-width: 0.125rem;
}

/**
 * Fonts
 * Group: Settings
 */
@font-face {
  font-family: "Open Sans";
  src: url(/dist/fonts/OpenSans-Light.ttf) format("truetype");
  font-weight: 300;
  font-style: normal;
}
@font-face {
  font-family: "Open Sans";
  src: url(/dist/fonts/OpenSans-LightItalic.ttf) format("truetype");
  font-weight: 300;
  font-style: italic;
}
@font-face {
  font-family: "Open Sans";
  src: url(/dist/fonts/OpenSans-Regular.ttf) format("truetype");
  font-weight: 400;
  font-style: normal;
}
@font-face {
  font-family: "Open Sans";
  src: url(/dist/fonts/OpenSans-Italic.ttf) format("truetype");
  font-weight: 400;
  font-style: italic;
}
@font-face {
  font-family: "Open Sans";
  src: url(/dist/fonts/OpenSans-Medium.ttf) format("truetype");
  font-weight: 500;
  font-style: normal;
}
@font-face {
  font-family: "Open Sans";
  src: url(/dist/fonts/OpenSans-MediumItalic.ttf) format("truetype");
  font-weight: 500;
  font-style: italic;
}
@font-face {
  font-family: "Open Sans";
  src: url(/dist/fonts/OpenSans-SemiBold.ttf) format("truetype");
  font-weight: 600;
  font-style: normal;
}
@font-face {
  font-family: "Open Sans";
  src: url(/dist/fonts/OpenSans-SemiBoldItalic.ttf) format("truetype");
  font-weight: 600;
  font-style: italic;
}
@font-face {
  font-family: "Open Sans";
  src: url(/dist/fonts/OpenSans-Bold.ttf) format("truetype");
  font-weight: 700;
  font-style: normal;
}
@font-face {
  font-family: "Open Sans";
  src: url(/dist/fonts/OpenSans-BoldItalic.ttf) format("truetype");
  font-weight: 700;
  font-style: italic;
}
@font-face {
  font-family: "Open Sans";
  src: url(/dist/fonts/OpenSans-ExtraBold.ttf) format("truetype");
  font-weight: 800;
  font-style: normal;
}
@font-face {
  font-family: "Open Sans";
  src: url(/dist/fonts/OpenSans-ExtraBoldItalic.ttf) format("truetype");
  font-weight: 800;
  font-style: italic;
}
/**
 * Grid
 * Group: Settings
 */
:root {
  --grid-columns: 12;
  --grid-gap: 1rem;
  --gap-vertical: var(--grid-gap);
  --gap-horizontal: var(--grid-gap);
  --grid-template-columns: repeat(12, 1fr);
  --grid-template-columns-2: repeat(2, 1fr);
  --grid-template-columns-3: repeat(3, 1fr);
  --grid-template-columns-4: repeat(4, 1fr);
}

/**
 * Icons
 * Group: Settings
 */
:root {
  --icon-unit: 1rem;
  --icon-default: var(--icon-unit);
  --icon-xxs: calc(0.625 * var(--icon-unit));
  --icon-mxs: calc(1.125 * var(--icon-unit));
  --icon-xs: calc(1.25 * var(--icon-unit));
  --icon-ms: calc(1.5 * var(--icon-unit));
  --icon-sm: calc(2 * var(--icon-unit));
  --icon-md: calc(2.5 * var(--icon-unit));
  --icon-lg: calc(3 * var(--icon-unit));
  --icon-xl: calc(4 * var(--icon-unit));
  --icon-2xl: calc(5 * var(--icon-unit));
}

/**
 * Inputs
 * Group: Settings
 */
:root {
  --input-height-small: 16px;
  --input-height-medium: 18px;
  --input-height-large: 20px;
  --checkbox-size: 16px;
  --checkbox-size-small: 12px;
}

/**
 * Sizes
 * Group: Settings
 */
:root {
  /* Max widths */
  --max-width--9xs: 9rem;
  --max-width--8xs: 10rem;
  --max-width--7xs: 12rem;
  --max-width--6xs: 14rem;
  --max-width--5xs: 19rem;
  --max-width--4xs: 25rem;
  --max-width--3xs: 30rem;
  --max-width--2xs: 34rem;
  --max-width--xs: 42rem;
  --max-width--sm: 57rem;
  --max-width--md: 65rem;
  --max-width--lg: 72.5rem;
  --max-width--xl: 80rem;
  --max-width--2xl: 90rem;
  /* Min widths */
  --min-width-table-list: 55rem;
  --min-width-tree-list: 40rem;
  /* Max heights */
  --max-height-intro-banner: 42.5rem;
  --max-height-map-list: 32rem;
  --max-height-image-news: 25rem;
  /* Min heights */
  --min-height-map-parmacy: 25rem;
  /* Heights */
  --header-top-bar-height: 4rem;
  --header-main-bar-height: 6.25rem;
  --header-height: calc(
    var(--header-top-bar-height) + var(--header-main-bar-height)
  );
  --pagination-height: 3.75rem;
  /* Widths */
  --sidebar-width: 100%;
  --content-width: 100%;
  /* Sizing */
  --page-max-wrapper: 120rem;
  --page-max-wrapper-large: 160rem;
}

/**
 * Spacing
 * Group: Settings
 */
:root {
  --spacing-unit: 1rem;
  --spacing-default: var(--spacing-unit);
  --spacing-000: calc(0 * var(--spacing-unit));
  --spacing-012: calc(0.125 * var(--spacing-unit));
  --spacing-025: calc(0.25 * var(--spacing-unit));
  --spacing-037: calc(0.375 * var(--spacing-unit));
  --spacing-050: calc(0.5 * var(--spacing-unit));
  --spacing-075: calc(0.75 * var(--spacing-unit));
  --spacing-100: calc(1 * var(--spacing-unit));
  --spacing-125: calc(1.25 * var(--spacing-unit));
  --spacing-150: calc(1.5 * var(--spacing-unit));
  --spacing-200: calc(2 * var(--spacing-unit));
  --spacing-250: calc(2.5 * var(--spacing-unit));
  --spacing-300: calc(3 * var(--spacing-unit));
  --spacing-350: calc(3.5 * var(--spacing-unit));
  --spacing-400: calc(4 * var(--spacing-unit));
  --spacing-500: calc(5 * var(--spacing-unit));
  --spacing-600: calc(6 * var(--spacing-unit));
  --spacing-700: calc(7 * var(--spacing-unit));
  --spacing-800: calc(8 * var(--spacing-unit));
  --spacing-1000: calc(10 * var(--spacing-unit));
  --spacing-1200: calc(12 * var(--spacing-unit));
  --spacing-1600: calc(16 * var(--spacing-unit));
  --spacing-2000: calc(20 * var(--spacing-unit));
  --spacing-2400: calc(24 * var(--spacing-unit));
  --spacing-3200: calc(32 * var(--spacing-unit));
  --spacing-3700: calc(37 * var(--spacing-unit));
  --spacing-4000: calc(40 * var(--spacing-unit));
}

/**
 * Swiper
 * Group: Settings
 */
:root {
  --swiper-pagination-color: var(--color-brand-orange);
  --swiper-navigation-color: var(--color-brand-orange);
  --swiper-pagination-left: auto;
  --swiper-pagination-right: 8px;
  --swiper-pagination-bottom: 8px;
  --swiper-pagination-top: auto;
  --swiper-pagination-bullet-size: var(--spacing-100);
  --swiper-pagination-bullet-width: var(--spacing-100);
  --swiper-pagination-bullet-height: var(--spacing-050);
  --swiper-pagination-bullet-inactive-color: var(--color-brand-light-gray);
  --swiper-pagination-bullet-inactive-opacity: 1;
  --swiper-pagination-bullet-opacity: 1;
  --swiper-pagination-bullet-horizontal-gap: var(--spacing-050);
  --swiper-pagination-bullet-vertical-gap: var(--spacing-100);
  --swiper-pagination-bullet-border-radius: var(--border-radius-xs);
}

/**
 * Typography
 * Group: Settings
 */
:root {
  /* Font Faces */
  --font-primary: "Open Sans", sans-serif;
  --font-mono: "Monaco", monospace;
  --font-awesome: "FontAwesome";
  /* Type base */
  --text-base-size: 1em;
  /* Font Weights */
  --font-weight-thin: 100;
  --font-weight-extralight: 200;
  --font-weight-light: 300;
  --font-weight-regular: 400;
  --font-weight-medium: 500;
  --font-weight-semibold: 600;
  --font-weight-bold: 700;
  --font-weight-extrabold: 800;
  --font-weight-black: 900;
  /* Letter Spacings */
  --tracking-tight: -0.0156rem;
  --tracking-normal: 0rem;
  --tracking-wide: 0.0063rem;
  --tracking-wide-lg: 0.0313rem;
  --tracking-wide-xl: 0.0625rem;
  --tracking-wide-2xl: 0.0938rem;
  --tracking-wide-3xl: 0.1875rem;
  /* Line heights */
  --leading-none: 1;
  --leading-tight: 1.25;
  --leading-normal: 1.5;
  --leading-relaxed: 1.6;
  --leading-loose: 2;
  --leading-extra-loose: 2.67;
  /* Body variables */
  --body-font-weight: var(--font-weight-regular);
  --body-extra-small-font-size: 0.75rem;
  --body-small-font-size: 0.875rem;
  --body-small-letter-spacing: var(--tracking-normal);
  --body-small-line-height: var(--leading-normal);
  --body-font-size: 1rem;
  --body-letter-spacing: var(--tracking-normal);
  --body-line-height: var(--leading-normal);
  --body-medium-font-size: 1.125rem;
  --body-medium-letter-spacing: var(--tracking-normal);
  --body-medium-line-height: var(--leading-normal);
  --body-large-font-size: 1.5rem;
  --body-large-letter-spacing: var(--tracking-normal);
  --body-large-line-height: var(--leading-normal);
  --h1-font-size: 3.625rem;
  --h1-font-weight: var(--font-weight-regular);
  --h1-letter-spacing: var(--tracking-normal);
  --h1-line-height: var(--leading-tight);
  --h2-font-size: 2.125rem;
  --h2-font-weight: var(--font-weight-regular);
  --h2-letter-spacing: var(--tracking-normal);
  --h2-line-height: var(--leading-normal);
  --h3-font-size: 1.5rem;
  --h3-font-weight: var(--font-weight-regular);
  --h3-letter-spacing: var(--tracking-normal);
  --h3-line-height: var(--leading-tight);
  --h4-font-size: 1.25rem;
  --h4-font-weight: var(--font-weight-regular);
  --h4-letter-spacing: var(--tracking-normal);
  --h4-line-height: var(--leading-normal);
  --h5-font-size: 1.125rem;
  --h5-font-weight: var(--font-weight-regular);
  --h5-letter-spacing: var(--tracking-normal);
  --h5-line-height: var(--leading-normal);
  --h6-font-size: 1rem;
  --h6-font-weight: var(--font-weight-regular);
  --h6-letter-spacing: var(--tracking-normal);
  --h6-line-height: var(--leading-normal);
}

/**
 * Variables
 * "Group" Settings
 */
:root {
  --shade-color-h: 0;
  --shade-color-s: 0%;
  --shade-color-l: 0%;
}

/**
 * Main Tools File
 * Group: Tools
 */
/**
 * A11y
 * Group: Tools
 */
/* This is to cover Voice-over devices for accessibility purposes */
/**
  * Skip link mixin
  * Visually hides an element off-screen but makes it visible and accessible
  * when focused (e.g., for keyboard users to skip to main content).
  * Follows WCAG 2.2 accessibility best practices.
  * Use on `.u-skip-link` or equivalent utility class.
  */
/**
 * Animations
 * Group: Tools
 */
/**
 * On Event
 * Group: Tools
 */
/**
 * Box Shadows
 * Group: Tools
 *
 * @mixin box-shadow
 * 
 * @param {String} $style - Το στυλ του box-shadow. Επιτρεπόμενες τιμές: '01', '02', '03', '04', '05', '06'.
 * @param {String} $theme - Το θέμα της σκιάς. Επιτρεπόμενες τιμές: 'light', 'dark'.
 * @param {Boolean} $important - Αν είναι `true`, προσθέτει το `!important` στην ιδιότητα box-shadow. Προεπιλογή: `false`.
 * 
 * @example
 * .element {
 *   @include box-shadow('03', 'dark');
 * }
 */
/**
 * Breakpoints Mixins
 * Group: Tools
 */
/**
 * Animations
 * Group: Tools
 */
/**
 * Button
 * Group: Tools
 */
/**
 * Clearfix
 * Group: Tools
 */
/*
	Mixin to drop micro clearfix into a selector. Further reading:
	http://www.cssmojo.com/the-very-latest-clearfix-reloaded/

	.usage {
		@include clearfix();
	}

 */
/**
 * Colors
 *
 * Group: Tools
 */
:root {
  --color-brand-brown-semi-transparent: #fbf0da;
  --color-brand-brown: #73510d;
  --color-brand-red-semi-transparent: #f9e1e5;
  --color-brand-dark-red: #af233a;
  --color-brand-red: #f9e1e5;
  --color-alert-green-dark: #0d6832;
  --color-brand-green: #d6f0e0;
  --color-brand-blue: #003375;
  --color-brand-blue-light: #1c657d;
  --color-brand-blue-light-semi-transparent: #def1f7;
  --color-brand-blue-semi-transparent: rgba(187, 107, 217, 0.2);
  --color-brand-orange: #f89b34;
  --color-brand-dark-gray: #333333;
  --color-brand-gray: #575757;
  --color-brand-blue-dark: #4b6587;
  --color-brand-white: #ffffff;
  --color-brand-light-gray: #e8e8e8;
  --color-brand-lighter-gray: #eeeeee;
  --color-brand-search-gray: #d9d9d9;
  --color-neutral-1000: #0a0a0a;
  --color-neutral-975: #1f2021;
  --color-neutral-950: #232626;
  --color-neutral-900: #3b3d40;
  --color-neutral-800: #53565a;
  --color-neutral-700: #5e6166;
  --color-neutral-600: #767a80;
  --color-neutral-500: #7f848a;
  --color-neutral-400: #999ea6;
  --color-neutral-300: #b5bcc4;
  --color-neutral-200: #d1d6de;
  --color-neutral-100: #dfe5ed;
  --color-neutral-050: #f2f7ff;
  --color-neutral-000: #fafafa;
  --color-dark: hsl(100, 100%, 0%);
  --color-light: hsl(0, 0%, 100%);
  --color-fade-light-5: rgba(242, 242, 242, 0.0509803922);
  --color-fade-light-10: rgba(242, 242, 242, 0.1019607843);
  --color-fade-light-20: rgba(242, 242, 242, 0.2);
  --color-fade-light-30: rgba(242, 242, 242, 0.3019607843);
  --color-fade-light-40: rgba(242, 242, 242, 0.4);
  --color-fade-light-50: rgba(242, 242, 242, 0.5019607843);
  --color-fade-light-60: rgba(242, 242, 242, 0.6);
  --color-fade-light-70: rgba(242, 242, 242, 0.6980392157);
  --color-fade-light-80: rgba(242, 242, 242, 0.8);
  --color-fade-light-90: rgba(242, 242, 242, 0.8980392157);
  --color-fade-dark-5: rgba(29, 27, 32, 0.0509803922);
  --color-fade-dark-10: rgba(29, 27, 32, 0.1019607843);
  --color-fade-dark-20: rgba(29, 27, 32, 0.2);
  --color-fade-dark-30: rgba(29, 27, 32, 0.3019607843);
  --color-fade-dark-40: rgba(29, 27, 32, 0.4);
  --color-fade-dark-50: rgba(29, 27, 32, 0.5019607843);
  --color-fade-dark-60: rgba(29, 27, 32, 0.6);
  --color-fade-dark-70: rgba(29, 27, 32, 0.6980392157);
  --color-fade-dark-80: rgba(29, 27, 32, 0.8);
  --color-fade-dark-90: rgba(29, 27, 32, 0.8980392157);
  --color-focus-stroke: #fedc00;
  --color-text: var(--neutral-1000);
  --color-text-light: var(--light);
  --overlay-color: rgb(0 0 0 / 84%);
  --overlay-color-light: rgb(0 0 0 / 35%);
}

/**
 * Linear Gradient Mixin
 * Group: Tools
 * 
 * Generates a linear gradient background with customizable direction, colors, and stops.
 * 
 * @mixin linear-gradient(
 *   $direction: to bottom,         // Direction of the gradient (e.g., 'to right', '45deg')
 *   $start-color: rgba(0, 0, 0, 0), // Starting color of the gradient
 *   $start-percent: 0%,            // Percentage position where the starting color begins
 *   $end-color: rgba(0, 0, 0, 0.7), // Ending color of the gradient
 *   $end-percent: 70%,             // Percentage position where the ending color ends
 *   $important: false               // If true, appends `!important` to the background property
 * )
 * 
 * @example
 * .cta__button--gradient {
 *   @include linear-gradient(270deg, rgba(0, 0, 0, 0.00), 34.5%, rgba(0, 0, 0, 0.70), 63%);
 * }
 * 
 * @example
 * .cta__button--gradient-important {
 *   @include linear-gradient(to right, #FF5733, 0%, rgba(255, 87, 51, 0.5), 100%, true);
 * }
 *	0deg: Points to top.
 *  90deg: Points to right.
 *	180deg: Points to bottom.
 *	270deg: Points to left.
 */
/**
 * Input
 * Group: Tools
 */
/**
 * Placeholder
 * Group: Tools
 */
/* stylelint-disable */
/* prettier-ignore */
/**
 * Typography
 * Group: Tools
 */
/**
 * Animations
 * Group: Tools
 */
/**
 * Animations
 * Group: Tools
 */
/**
 * Input
 * Group: Tools
 */
/**
 * Screen Reader Only
 * Group: Tools
 */
/**
 * Spacing
 * Group: Tools
 */
/**
 * Main Generic File
 * Group: Generic
 */
/**
 * Animations
 * Group: Generic
  * This file contains reusable keyframe animations for various visual effects.
 * It includes utility classes prefixed with `animate-` for easy application.
 */
/* Utility classes for animating elements */
[class^=animate-],
[class*=" animate-"] {
  visibility: visible !important;
}

/* Slide Down Animation */
/**
 * @animation slide-down
 * Moves an element from above the viewport into its normal position with a smooth transition.
 * Use this for dropdowns, modals, or mobile menus.
 */
@keyframes slide-down {
  from {
    transform: translateY(-100%);
    opacity: 0;
  }
  to {
    transform: translateY(0);
    opacity: 1;
  }
}
/* Slide Up Animation */
/**
 * @animation slide-up
 * Moves an element from its normal position to above the viewport with a smooth transition.
 * Use this for hiding dropdowns, modals, or mobile menus.
 */
@keyframes slide-up {
  from {
    transform: scaleY(0);
    opacity: 0;
  }
  to {
    transform: scaleY(1);
    opacity: 1;
  }
}
/* Slide Left Animation */
/**
 * @animation slide-left
 * Moves an element from above the viewport into its normal position with a smooth transition.
 * Use this for dropdowns, modals, or mobile menus.
 */
@keyframes slide-left {
  from {
    transform: scaleX(0);
    opacity: 0;
  }
  to {
    transform: scaleX(1);
    opacity: 1;
  }
}
/* Fade In Animation */
/**
 * @animation fade-in
 * Gradually increases the opacity of an element from 0 to 1.
 * Use this for tooltips, popups, or subtle appearance effects.
 */
@keyframes fade-in {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
/* Fade Out Animation */
/**
 * @animation fade-out
 * Gradually decreases the opacity of an element from 1 to 0.
 * Use this for dismissing tooltips, popups, or subtle disappearance effects.
 */
@keyframes fade-out {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
/* Scale In Animation */
/**
 * @animation scale-in
 * Gradually scales an element from 0.8x to its normal size.
 * Use this for modals, images, or zoom effects.
 */
@keyframes scale-in {
  from {
    transform: scale(0.8);
    opacity: 0;
  }
  to {
    transform: scale(1);
    opacity: 1;
  }
}
/* Scale Out Animation */
/**
 * @animation scale-out
 * Gradually scales an element from its normal size to 0.8x.
 * Use this for dismissing modals, images, or zoom effects.
 */
@keyframes scale-out {
  from {
    transform: scale(1);
    opacity: 1;
  }
  to {
    transform: scale(0.8);
    opacity: 0;
  }
}
/* Bounce Animation */
/**
 * @animation bounce
 * Creates a bouncing effect for an element.
 * Use this for call-to-action buttons or attention-grabbing effects.
 */
@keyframes bounce {
  0%, 100% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-10%);
  }
}
/**
 * @animation bounce 2
 * Creates a bouncing effect for an element.
 * Use this for call-to-action buttons or attention-grabbing effects.
 */
@keyframes bounce2 {
  0%, 20%, 50%, 80%, 100% {
    transform: translateY(0);
  }
  40% {
    transform: translateY(-20%);
  }
  60% {
    transform: translateY(-10%);
  }
}
/* Slide bounce up Animation */
/**
 * @animation slide-bounce-up
 * Creates a bouncing effect for an element.
 * Use this for accordion or attention-grabbing effects.
 */
@keyframes slide-bounce-up {
  from {
    transform: scaleY(0.5) translateY(30%);
  }
  to {
    transform: scaleY(1) translateY(0);
  }
}
/* Slide bounce down Animation */
/**
 * @animation slide-bounce-down
 * Creates a bouncing effect for an element.
 * Use this for accordion or attention-grabbing effects.
 */
@keyframes slide-bounce-down {
  from {
    transform: scaleY(0.5) translateY(-30%);
  }
  to {
    transform: scaleY(1) translateY(0);
  }
}
/* Rotate Animation */
/**
 * @animation rotate full
 * Rotates an element 360 degrees.
 * Use this for loading spinners or decorative effects.
 */
@keyframes rotate-full {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}
/**
 * @animation rotate half
 * Rotates an element 180 degrees.
 * Use this for loading spinners or decorative effects.
 */
@keyframes rotate-180 {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(180deg);
  }
}
/**
 * @animation rotate 90
 * Rotates an element 90 degrees.
 * Use this for loading spinners or decorative effects.
 */
@keyframes rotate-90 {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(90deg);
  }
}
/**
 * Keyframe animation: full 360° clockwise rotation.
 * Commonly applied to icons or loaders to indicate progress or activity.
 */
@keyframes spin {
  to {
    transform: rotate(360deg);
  }
}
/**
 * @animation shake X
 * Simple shake animation for errors
 */
@keyframes shake-x {
  0%, 10% {
    transform: translateX(0);
  }
  20% {
    transform: translateX(calc(-1 * var(--spacing-050)));
  }
  30% {
    transform: translateX(0);
  }
  40% {
    transform: translateX(var(--spacing-050));
  }
  50% {
    transform: translateX(0);
  }
  60% {
    transform: translateX(calc(-1 * var(--spacing-050)));
  }
  70% {
    transform: translateX(0);
  }
  80% {
    transform: translateX(var(--spacing-050));
  }
  90%, 100% {
    transform: translateX(0);
  }
}
/**
 * @animation shake Y
 * Simple shake animation for errors
 */
@keyframes shake-y {
  0%, 100% {
    transform: translateY(0);
  }
  25% {
    transform: translateY(-5%);
  }
  50% {
    transform: translateY(5%);
  }
  75% {
    transform: translateY(-5%);
  }
}
/**
 * CSS Reset
 * Group: Generic
 */
/* https://piccalil.li/blog/a-more-modern-css-reset/
   By Andy Bell
   License: MIT License
*/
/* Box sizing rules */
*,
*::before,
*::after {
  box-sizing: border-box;
}

/* Remove default margin */
body,
h1,
h2,
h3,
h4,
p,
figure,
blockquote,
dl,
dd {
  margin: 0;
}

/* Remove list styles on ul, ol elements with a list role, which suggests default styling will be removed */
ul[role=list],
ol[role=list] {
  list-style: none;
}

html body *:focus {
  outline: none;
}

html body *:focus-visible {
  outline: 3px solid var(--color-focus-stroke);
  outline-offset: 2px;
}

/* Set core root defaults */
html:focus-within {
  scroll-behavior: smooth;
}

/* Set core body defaults */
body {
  min-height: 100dvh;
  text-rendering: optimizespeed;
  line-height: 1.5;
}

/* A elements that don't have a class get default styles */
a:not([class]) {
  -webkit-text-decoration-skip: ink;
          text-decoration-skip-ink: auto;
}

/* Make images easier to work with */
img,
picture {
  max-width: 100%;
  display: block;
}

/* Inherit fonts for inputs and buttons */
input,
button,
textarea,
select {
  font: inherit;
}

/* Remove all animations and transitions for people that prefer not to see them */
@media (prefers-reduced-motion: reduce) {
  html:focus-within {
    scroll-behavior: auto;
  }
  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}
/**
 * Swiper Pagination
 * Group: Generic
 */
.swiper-pagination-bullet-active {
  width: calc(3 * var(--swiper-pagination-bullet-width));
}
.swiper-pagination-bullets {
  position: relative;
}

/**
 * Main Elements File
 * Group: Elements
 */
/**
 * Generic
 * Group: Elements
 */
/**
 * More sensible default box-sizing:
 * css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice
 */
html {
  box-sizing: border-box !important;
  scroll-behavior: smooth;
  width: 100%;
  max-width: 100%;
  overflow-x: hidden !important;
}

* {
  box-sizing: border-box !important;
  font-variant-ligatures: no-common-ligatures !important;
  -webkit-tap-highlight-color: transparent !important; /* for removing the highlight */
}
*, *::before, *::after {
  box-sizing: inherit;
}

/**
 * Body
 * Group: Elements
 */
body {
  background-color: var(--color-neutral-000);
  color: var(--color-text);
  display: flex;
  flex-direction: column;
  font-family: var(--font-primary);
  font-size: 100%;
  font-weight: var(--font-weight-regular);
  line-height: var(--body-line-height);
  min-height: 100dvh;
  margin: 0;
  padding: 0;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
@media (max-width: 575.98px) {
  body {
    max-width: 100%;
    overflow-x: hidden;
  }
}
body.is-hidden, body.is-blocked, body.is-mobile-menu-open {
  overflow: hidden;
}

/**
 * Button
 * Group: Elements
 */
button {
  cursor: pointer;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-color: transparent;
}
button:not([class]) {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  border-radius: var(--border-radius-m);
  border-width: var(--button-border-width);
  border-style: solid;
  border-color: transparent;
  font-size: var(--body-font-size);
  font-style: normal;
  font-stretch: normal;
  font-weight: var(--font-weight-regular);
  line-height: var(--leading-none);
  letter-spacing: var(--tracking-normal);
  padding-block: var(--spacing-075);
  padding-inline: var(--spacing-100);
  text-decoration: none;
  background-color: var(--color-brand-orange);
  border-color: var(--color-brand-orange);
  color: var(--color-brand-dark-gray);
}
button:not([class]):hover, button:not([class]):active, button:not([class]):focus {
  transition: color var(--transition-duration) ease-in-out, background-color var(--transition-duration) ease-in-out, transform var(--transition-duration) ease-in-out, opacity var(--transition-duration) ease-in-out;
}
button:not([class]):hover:active, button:not([class]):active:active, button:not([class]):focus:active {
  transform: scale(0.9);
}
button:not([class]):hover {
  background-color: var(--color-brand-light-gray);
}
button:not([class]):focus {
  outline-color: var(--color-focus-stroke);
}
button[disabled] {
  cursor: not-allowed;
  box-shadow: none;
  opacity: 0.6;
}
.button-variation--primary-outline button {
  background-color: var(--color-brand-lighter-gray);
  border-color: var(--color-brand-orange);
  color: var(--color-brand-orange);
}
.button-variation--primary-outline button:hover {
  background-color: var(--color-brand-orange);
  color: var(--color-light);
}
.button-variation--primary-outline button:focus {
  border-color: var(--color-focus-stroke);
}
.button-variation--secondary-outline button {
  background-color: var(--color-brand-lighter-gray);
  border-color: var(--color-brand-blue);
  color: var(--color-brand-blue);
}
.button-variation--secondary-outline button:hover {
  background-color: var(--color-brand-blue);
  color: var(--color-light);
}
.button-variation--secondary-outline button:focus {
  border-color: var(--color-focus-stroke);
}
.button-icon--svg {
  width: var(--icon-xs);
  height: var(--icon-xs);
  margin-left: var(--spacing-050);
}

.button-load-more {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  border-radius: var(--border-radius-m);
  border-width: var(--button-border-width);
  border-style: solid;
  border-color: transparent;
  font-size: var(--body-font-size);
  font-style: normal;
  font-stretch: normal;
  font-weight: var(--font-weight-regular);
  line-height: var(--leading-none);
  letter-spacing: var(--tracking-normal);
  padding-block: var(--spacing-075);
  padding-inline: var(--spacing-100);
  text-decoration: none;
  font-size: var(--body-font-size);
  font-weight: var(--font-weight-semibold);
  letter-spacing: var(--tracking-normal);
  line-height: var(--leading-none);
  padding-block: var(--spacing-100);
  padding-inline: var(--spacing-600);
  border-radius: var(--btn-radius-lg);
  background-color: var(--color-brand-orange);
  border-color: var(--color-brand-orange);
  color: var(--color-brand-dark-gray);
  display: flex;
  margin-top: var(--spacing-400);
  margin-inline: auto;
}
.button-load-more:hover, .button-load-more:active, .button-load-more:focus {
  transition: color var(--transition-duration) ease-in-out, background-color var(--transition-duration) ease-in-out, transform var(--transition-duration) ease-in-out, opacity var(--transition-duration) ease-in-out;
}
.button-load-more:hover:active, .button-load-more:active:active, .button-load-more:focus:active {
  transform: scale(0.9);
}
.button-load-more:hover {
  background-color: var(--color-brand-light-gray);
}
.button-load-more:focus {
  outline-color: var(--color-focus-stroke);
}
.button-load-more:active {
  transform: translateY(1px);
}
.button-load-more .u-is-loading {
  position: relative;
  background-color: var(--color-brand-lighter-gray);
}
.button-load-more .u-is-loading::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  z-index: 3;
  width: 12px;
  height: 12px;
  margin: -10px 0 0 -10px;
  border-radius: 50%;
  animation: spin var(--transition-duration-slow) linear infinite;
  text-indent: 0;
}

.button-share {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  border-radius: var(--border-radius-m);
  border-width: var(--button-border-width);
  border-style: solid;
  border-color: transparent;
  font-size: var(--body-font-size);
  font-style: normal;
  font-stretch: normal;
  font-weight: var(--font-weight-regular);
  line-height: var(--leading-none);
  letter-spacing: var(--tracking-normal);
  padding-block: var(--spacing-075);
  padding-inline: var(--spacing-100);
  text-decoration: none;
  font-size: var(--body-large-font-size);
  font-weight: var(--font-weight-bold);
  letter-spacing: var(--tracking-normal);
  line-height: var(--leading-none);
  padding-block: var(--spacing-075);
  padding-inline: var(--spacing-100);
  border-radius: var(--btn-radius-md);
  background-color: var(--color-brand-orange);
  border-color: var(--color-brand-orange);
  color: var(--color-brand-dark-gray);
}
.button-share:hover, .button-share:active, .button-share:focus {
  transition: color var(--transition-duration) ease-in-out, background-color var(--transition-duration) ease-in-out, transform var(--transition-duration) ease-in-out, opacity var(--transition-duration) ease-in-out;
}
.button-share:hover:active, .button-share:active:active, .button-share:focus:active {
  transform: scale(0.9);
}
.button-share:hover {
  background-color: var(--color-brand-light-gray);
}
.button-share:focus {
  outline-color: var(--color-focus-stroke);
}
@media (min-width: 768px) {
  .button-share {
    display: none;
  }
}

.button-edit-item {
  max-height: var(--icon-mxs);
  width: var(--icon-mxs);
  height: auto;
  color: inherit;
}
.button-edit-item__link {
  color: var(--color-brand-gray);
}
.button-edit-item__link:hover, .button-edit-item__link:focus {
  color: var(--color-brand-blue);
}
.button-edit-item--wrapper {
  margin-block: var(--spacing-050) 0;
}
.button-edit-item--wrapper-abs {
  position: absolute;
  bottom: 0;
  right: 0;
  margin: var(--spacing-025);
}

.back-to-top {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  border-radius: var(--border-radius-m);
  border-width: var(--button-border-width);
  border-style: solid;
  border-color: transparent;
  font-size: var(--body-font-size);
  font-style: normal;
  font-stretch: normal;
  font-weight: var(--font-weight-regular);
  line-height: var(--leading-none);
  letter-spacing: var(--tracking-normal);
  padding-block: var(--spacing-075);
  padding-inline: var(--spacing-100);
  text-decoration: none;
  font-size: var(--body-small-font-size);
  font-weight: var(--font-weight-bold);
  letter-spacing: var(--tracking-normal);
  line-height: var(--leading-tight);
  padding-block: var(--spacing-025);
  padding-inline: var(--spacing-075);
  border-radius: var(--btn-radius-full);
  background-color: var(--color-brand-orange);
  border-color: var(--color-brand-orange);
  color: var(--color-brand-dark-gray);
  box-shadow: var(--box-shadow-light-03);
  position: fixed;
  bottom: var(--spacing-100);
  right: var(--spacing-800);
  padding-block: var(--spacing-075);
  padding-inline: var(--spacing-100);
  aspect-ratio: 1;
  place-self: end;
  z-index: 1000;
  opacity: 0;
  pointer-events: none;
  transform: translateY(100%);
  transition: opacity var(--transition-duration) ease-in-out, transform var(--transition-duration) ease-in-out;
}
.back-to-top:hover, .back-to-top:active, .back-to-top:focus {
  transition: color var(--transition-duration) ease-in-out, background-color var(--transition-duration) ease-in-out, transform var(--transition-duration) ease-in-out, opacity var(--transition-duration) ease-in-out;
}
.back-to-top:hover:active, .back-to-top:active:active, .back-to-top:focus:active {
  transform: scale(0.9);
}
.back-to-top:hover {
  background-color: var(--color-brand-light-gray);
}
.back-to-top:focus {
  outline-color: var(--color-focus-stroke);
}
.back-to-top__icon {
  width: var(--icon-xs);
  height: var(--icon-xs);
}
.back-to-top.is-visible {
  opacity: 1;
  pointer-events: auto;
  transform: translateY(0);
}

/**
 * Filter
 * Group: Elements
 */
.filter {
  width: 100%;
  overflow: hidden;
  background-color: var(--color-brand-light-gray);
  color: var(--color-brand-blue);
  border-radius: var(--border-radius-xs);
  border: none;
  font-size: var(--body-font-size);
  font-weight: var(--font-weight-regular);
  line-height: var(--body-line-height);
  text-indent: 0;
  background-color: var(--color-brand-search-gray);
  border-radius: var(--border-radius-l);
  height: var(--spacing-300);
  display: flex;
  flex-flow: row nowrap;
  align-items: center;
  justify-content: space-between;
  padding: var(--spacing-100) var(--spacing-150);
  color: var(--color-brand-blue);
  font-size: var(--body-font-size);
  letter-spacing: var(--body-letter-spacing);
  line-height: var(--body-line-height);
  font-weight: var(--font-weight-regular);
}
.filter:hover, .filter:active, .filter:focus {
  transition: box-shadow var(--transition-duration) ease-in-out;
}
.filter:hover {
  box-shadow: var(--box-shadow-light-03);
}
.filter input {
  width: 100%;
  color: inherit;
  font-size: var(--body-font-size);
  letter-spacing: var(--body-letter-spacing);
  line-height: var(--body-line-height);
  font-weight: var(--font-weight-regular);
}
.filter input::-moz-placeholder {
  font-size: var(--body-font-size);
  letter-spacing: var(--body-letter-spacing);
  line-height: var(--body-line-height);
  font-weight: var(--font-weight-regular);
  color: var(--color-brand-blue);
}
.filter input::placeholder {
  font-size: var(--body-font-size);
  letter-spacing: var(--body-letter-spacing);
  line-height: var(--body-line-height);
  font-weight: var(--font-weight-regular);
  color: var(--color-brand-blue);
}
.filter input::-webkit-input-placeholder {
  font-size: var(--body-font-size);
  letter-spacing: var(--body-letter-spacing);
  line-height: var(--body-line-height);
  font-weight: var(--font-weight-regular);
  color: var(--color-brand-blue);
}
.filter input::-moz-placeholder {
  font-size: var(--body-font-size);
  letter-spacing: var(--body-letter-spacing);
  line-height: var(--body-line-height);
  font-weight: var(--font-weight-regular);
  color: var(--color-brand-blue);
  opacity: 1;
}
.filter input:-ms-input-placeholder {
  font-size: var(--body-font-size);
  letter-spacing: var(--body-letter-spacing);
  line-height: var(--body-line-height);
  font-weight: var(--font-weight-regular);
  color: var(--color-brand-blue);
}
@media (min-width: 768px) {
  .filter {
    max-width: var(--max-width--5xs);
  }
}
.filter-input-text {
  color: var(--color-brand-blue);
}
.filter-date {
  position: relative;
  padding-block: var(--spacing-050);
}
.filter-date__placeholder {
  border-radius: var(--border-radius-xs);
  border: none;
  font-size: var(--body-font-size);
  font-weight: var(--font-weight-regular);
  line-height: var(--body-line-height);
  text-indent: 0;
  background-color: var(--color-brand-search-gray);
  border-radius: var(--border-radius-l);
  height: var(--spacing-300);
  display: flex;
  flex-flow: row nowrap;
  align-items: center;
  padding: var(--spacing-100) var(--spacing-150);
  color: var(--color-brand-blue);
  position: absolute;
  inset: 0;
  transition: transform var(--transition-duration) ease-in-out, opacity var(--transition-duration) ease-in-out;
  pointer-events: none;
}
.filter-date__placeholder:hover, .filter-date__placeholder:active, .filter-date__placeholder:focus {
  transition: box-shadow var(--transition-duration) ease-in-out;
}
.filter-date__placeholder:hover {
  box-shadow: var(--box-shadow-light-03);
}
.filter-date__placeholder input {
  height: var(--input-height-medium);
  width: 100%;
  color: inherit;
  font-size: var(--body-font-size);
  letter-spacing: var(--body-letter-spacing);
  line-height: var(--body-line-height);
  font-weight: var(--font-weight-regular);
}
.filter-date__placeholder input::-moz-placeholder {
  font-size: var(--body-font-size);
  letter-spacing: var(--body-letter-spacing);
  line-height: var(--body-line-height);
  font-weight: var(--font-weight-regular);
  color: var(--color-brand-blue);
}
.filter-date__placeholder input::placeholder {
  font-size: var(--body-font-size);
  letter-spacing: var(--body-letter-spacing);
  line-height: var(--body-line-height);
  font-weight: var(--font-weight-regular);
  color: var(--color-brand-blue);
}
.filter-date__placeholder input::-webkit-input-placeholder {
  font-size: var(--body-font-size);
  letter-spacing: var(--body-letter-spacing);
  line-height: var(--body-line-height);
  font-weight: var(--font-weight-regular);
  color: var(--color-brand-blue);
}
.filter-date__placeholder input::-moz-placeholder {
  font-size: var(--body-font-size);
  letter-spacing: var(--body-letter-spacing);
  line-height: var(--body-line-height);
  font-weight: var(--font-weight-regular);
  color: var(--color-brand-blue);
  opacity: 1;
}
.filter-date__placeholder input:-ms-input-placeholder {
  font-size: var(--body-font-size);
  letter-spacing: var(--body-letter-spacing);
  line-height: var(--body-line-height);
  font-weight: var(--font-weight-regular);
  color: var(--color-brand-blue);
}
.filter-date:hover .filter-date__placeholder, .filter-date:focus-within .filter-date__placeholder, .filter-date.is-filled .filter-date__placeholder {
  transform: translateX(-100%);
  opacity: 0;
}
.filter-buttons-as-radio {
  border-radius: var(--border-radius-xs);
  border: none;
  font-size: var(--body-font-size);
  font-weight: var(--font-weight-regular);
  line-height: var(--body-line-height);
  text-indent: 0;
  background-color: var(--color-brand-search-gray);
  border-radius: var(--border-radius-l);
  height: var(--spacing-300);
  display: flex;
  flex-flow: row nowrap;
  align-items: center;
  justify-content: space-between;
  padding: var(--spacing-100) var(--spacing-150);
  color: var(--color-brand-blue);
  font-size: var(--body-font-size);
  letter-spacing: var(--body-letter-spacing);
  line-height: var(--body-line-height);
  font-weight: var(--font-weight-regular);
  display: flex;
  justify-content: flex-start;
  flex-direction: column;
  max-width: var(--max-width--sm);
  width: 100%;
  height: auto;
  padding: 0;
  overflow: hidden;
}
.filter-buttons-as-radio:hover, .filter-buttons-as-radio:active, .filter-buttons-as-radio:focus {
  transition: box-shadow var(--transition-duration) ease-in-out;
}
.filter-buttons-as-radio:hover {
  box-shadow: var(--box-shadow-light-03);
}
.filter-buttons-as-radio input {
  width: 100%;
  color: inherit;
  font-size: var(--body-font-size);
  letter-spacing: var(--body-letter-spacing);
  line-height: var(--body-line-height);
  font-weight: var(--font-weight-regular);
}
.filter-buttons-as-radio input::-moz-placeholder {
  font-size: var(--body-font-size);
  letter-spacing: var(--body-letter-spacing);
  line-height: var(--body-line-height);
  font-weight: var(--font-weight-regular);
  color: var(--color-brand-blue);
}
.filter-buttons-as-radio input::placeholder {
  font-size: var(--body-font-size);
  letter-spacing: var(--body-letter-spacing);
  line-height: var(--body-line-height);
  font-weight: var(--font-weight-regular);
  color: var(--color-brand-blue);
}
.filter-buttons-as-radio input::-webkit-input-placeholder {
  font-size: var(--body-font-size);
  letter-spacing: var(--body-letter-spacing);
  line-height: var(--body-line-height);
  font-weight: var(--font-weight-regular);
  color: var(--color-brand-blue);
}
.filter-buttons-as-radio input::-moz-placeholder {
  font-size: var(--body-font-size);
  letter-spacing: var(--body-letter-spacing);
  line-height: var(--body-line-height);
  font-weight: var(--font-weight-regular);
  color: var(--color-brand-blue);
  opacity: 1;
}
.filter-buttons-as-radio input:-ms-input-placeholder {
  font-size: var(--body-font-size);
  letter-spacing: var(--body-letter-spacing);
  line-height: var(--body-line-height);
  font-weight: var(--font-weight-regular);
  color: var(--color-brand-blue);
}
@media (min-width: 768px) {
  .filter-buttons-as-radio {
    flex-flow: row nowrap;
    width: -moz-fit-content;
    width: fit-content;
  }
}
.filter-buttons-as-radio__item {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  border-radius: var(--border-radius-m);
  border-width: var(--button-border-width);
  border-style: solid;
  border-color: transparent;
  font-size: var(--body-font-size);
  font-style: normal;
  font-stretch: normal;
  font-weight: var(--font-weight-regular);
  line-height: var(--leading-none);
  letter-spacing: var(--tracking-normal);
  padding-block: var(--spacing-075);
  padding-inline: var(--spacing-100);
  text-decoration: none;
  font-size: var(--body-font-size);
  letter-spacing: var(--body-letter-spacing);
  line-height: var(--body-line-height);
  font-weight: var(--font-weight-regular);
  height: var(--spacing-300);
  border-radius: var(--border-radius-l);
  background-color: var(--color-brand-search-gray);
  color: var(--color-brand-blue);
  width: 100%;
  padding: var(--spacing-050);
  border-radius: 0;
  height: var(--spacing-300);
}
.filter-buttons-as-radio__item:hover, .filter-buttons-as-radio__item:active, .filter-buttons-as-radio__item:focus {
  transition: color var(--transition-duration) ease-in-out, background-color var(--transition-duration) ease-in-out, transform var(--transition-duration) ease-in-out, opacity var(--transition-duration) ease-in-out;
}
.filter-buttons-as-radio__item:hover:active, .filter-buttons-as-radio__item:active:active, .filter-buttons-as-radio__item:focus:active {
  transform: scale(0.9);
}
.filter-buttons-as-radio__item[aria-pressed=true] {
  color: var(--color-brand-orange);
  font-weight: var(--font-weight-semibold);
}
.filter-buttons-as-radio__item:focus {
  border-color: var(--color-focus-stroke);
}
@media (min-width: 768px) {
  .filter-buttons-as-radio__item {
    width: var(--max-width--5xs);
  }
}
.filter-buttons-as-radio__item:not(:first-child) {
  border-top: 1px solid var(--color-brand-orange);
}
@media (min-width: 768px) {
  .filter-buttons-as-radio__item:not(:first-child) {
    border-top: none;
    border-left: 1px solid var(--color-brand-orange);
  }
}
.filter-dropdown {
  overflow: visible;
  padding: 0;
}
.filter__submit-button {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  border-radius: var(--border-radius-m);
  border-width: var(--button-border-width);
  border-style: solid;
  border-color: transparent;
  font-size: var(--body-font-size);
  font-style: normal;
  font-stretch: normal;
  font-weight: var(--font-weight-regular);
  line-height: var(--leading-none);
  letter-spacing: var(--tracking-normal);
  padding-block: var(--spacing-075);
  padding-inline: var(--spacing-100);
  text-decoration: none;
  font-size: var(--body-font-size);
  letter-spacing: var(--body-letter-spacing);
  line-height: var(--body-line-height);
  font-weight: var(--font-weight-regular);
  height: var(--spacing-300);
  border-radius: var(--border-radius-l);
  background-color: var(--color-brand-orange);
  border-color: var(--color-brand-orange);
  color: var(--color-brand-dark-gray);
  font-weight: var(--font-weight-medium);
  max-width: var(--max-width--5xs);
  width: 100%;
}
.filter__submit-button:hover, .filter__submit-button:active, .filter__submit-button:focus {
  transition: color var(--transition-duration) ease-in-out, background-color var(--transition-duration) ease-in-out, transform var(--transition-duration) ease-in-out, opacity var(--transition-duration) ease-in-out;
}
.filter__submit-button:hover:active, .filter__submit-button:active:active, .filter__submit-button:focus:active {
  transform: scale(0.9);
}
.filter__submit-button:hover {
  background-color: var(--color-brand-light-gray);
}
.filter__submit-button:focus {
  outline-color: var(--color-focus-stroke);
}
.filter__reset-button {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  border-radius: var(--border-radius-m);
  border-width: var(--button-border-width);
  border-style: solid;
  border-color: transparent;
  font-size: var(--body-font-size);
  font-style: normal;
  font-stretch: normal;
  font-weight: var(--font-weight-regular);
  line-height: var(--leading-none);
  letter-spacing: var(--tracking-normal);
  padding-block: var(--spacing-075);
  padding-inline: var(--spacing-100);
  text-decoration: none;
  font-size: var(--body-small-font-size);
  font-weight: var(--font-weight-regular);
  letter-spacing: var(--tracking-normal);
  line-height: var(--leading-none);
  padding-block: var(--spacing-025);
  padding-inline: var(--spacing-075);
  border-radius: var(--btn-radius);
  background-color: var(--color-brand-blue);
  border-color: var(--color-brand-blue);
  color: var(--color-light);
  font-weight: var(--font-weight-medium);
  position: absolute;
  top: 0;
  right: 0;
  margin: var(--spacing-100);
  overflow: hidden;
}
.filter__reset-button:hover, .filter__reset-button:active, .filter__reset-button:focus {
  transition: color var(--transition-duration) ease-in-out, background-color var(--transition-duration) ease-in-out, transform var(--transition-duration) ease-in-out, opacity var(--transition-duration) ease-in-out;
}
.filter__reset-button:hover:active, .filter__reset-button:active:active, .filter__reset-button:focus:active {
  transform: scale(0.9);
}
.filter__reset-button:hover {
  background-color: var(--color-brand-lighter-gray);
  color: var(--color-brand-blue);
}
.filter__reset-button:focus {
  outline-color: var(--color-focus-stroke);
}
.filter__reset-button__text {
  font-size: var(--body-extra-small-font-size);
  margin-right: var(--spacing-025);
  transition: transform var(--transition-duration) ease-in-out, opacity var(--transition-duration) ease-in-out;
}
@media (min-width: 1200px) {
  .filter__reset-button__text {
    transform: translateX(100%);
    opacity: 0;
  }
}
.filter__reset-button__icon {
  width: var(--icon-ms);
  height: var(--icon-ms);
  pointer-events: none;
}
@media (min-width: 1200px) {
  .filter__reset-button:hover .filter__reset-button__text {
    transform: translateX(0);
    opacity: 1;
  }
}
.filter-error {
  position: relative;
  animation: bounce2 var(--transition-duration-very-slow) ease infinite;
  color: var(--color-brand-dark-red);
  background-color: var(--color-brand-red-semi-transparent);
  box-shadow: 0 0 0 2px var(--color-brand-dark-red);
}
.filter-error::-moz-placeholder {
  color: var(--color-brand-dark-red);
}
.filter-error::placeholder {
  color: var(--color-brand-dark-red);
}
.filter-error::-webkit-input-placeholder {
  color: var(--color-brand-dark-red);
}
.filter-error::-moz-placeholder {
  color: var(--color-brand-dark-red);
  opacity: 1;
}
.filter-error:-ms-input-placeholder {
  color: var(--color-brand-dark-red);
}
.filter-error::after {
  content: "*";
  position: absolute;
  top: 0;
  left: 0;
  margin: var(--spacing-025) var(--spacing-050);
  pointer-events: none;
  color: var(--color-brand-dark-red);
}

/**
 * Form
 * Group: Elements
 */
form[role=search] {
  display: flex;
}

/**
 * Headings
 * Group: Elements
 */
h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: var(--font-primary);
}
h1 p,
h1 a,
h1 span,
h2 p,
h2 a,
h2 span,
h3 p,
h3 a,
h3 span,
h4 p,
h4 a,
h4 span,
h5 p,
h5 a,
h5 span,
h6 p,
h6 a,
h6 span {
  color: inherit;
  display: inherit;
  font-size: inherit;
  font-weight: inherit;
  line-height: inherit;
  text-decoration: none;
}

h1 {
  font-size: var(--h1-font-size);
  font-weight: var(--h1-font-weight);
  letter-spacing: var(--h1-letter-spacing);
  line-height: var(--h1-line-height);
}

h2 {
  font-size: var(--h2-font-size);
  font-weight: var(--h2-font-weight);
  letter-spacing: var(--h2-letter-spacing);
  line-height: var(--h2-line-height);
}

h3 {
  font-size: var(--h3-font-size);
  font-weight: var(--h3-font-weight);
  letter-spacing: var(--h3-letter-spacing);
  line-height: var(--h3-line-height);
}

h4 {
  font-size: var(--h4-font-size);
  font-weight: var(--h4-font-weight);
  letter-spacing: var(--h4-letter-spacing);
  line-height: var(--h4-line-height);
}

h5 {
  font-size: var(--h5-font-size);
  font-weight: var(--h5-font-weight);
  letter-spacing: var(--h5-letter-spacing);
  line-height: var(--h5-line-height);
}

h6 {
  font-size: var(--h6-font-size);
  font-weight: var(--h6-font-weight);
  letter-spacing: var(--h6-letter-spacing);
  line-height: var(--h6-line-height);
}

/**
 * HTML
 * Group: Elements
 */
html {
  box-sizing: border-box;
}

/**
 * Icon
 * Group: Elements
 */
.icon-article-download {
  width: var(--icon-ms);
  max-height: var(--icon-ms);
  height: auto;
}
.icon-article-download--wrapper {
  display: block;
  padding: var(--spacing-150) var(--spacing-200);
  border-top: 2px solid var(--color-brand-dark-gray);
  text-align: end;
}
.icon-article-download__link {
  display: inline-flex;
  align-items: center;
  gap: var(--spacing-100);
  text-decoration: none;
  color: var(--color-brand-dark-gray);
}
.icon-article-download__link:hover {
  color: var(--color-brand-orange);
}
.icon-article-download__text {
  font-size: var(--body-small-font-size);
  letter-spacing: var(--body-small-letter-spacing);
  line-height: var(--body-small-line-height);
  font-weight: var(--font-weight-medium);
}

/**
 * Image
 * Group: Elements
 */
img {
  display: block;
  max-width: 100%;
  flex-shrink: 1;
  height: auto;
}

/**
 * Input
 * Group: Elements
 */
input:not([type=checkbox], [type=radio]) {
  border: none;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}
input[type=button], input[type=submit] {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  border-radius: var(--border-radius-m);
  border-width: var(--button-border-width);
  border-style: solid;
  border-color: transparent;
  font-size: var(--body-font-size);
  font-style: normal;
  font-stretch: normal;
  font-weight: var(--font-weight-regular);
  line-height: var(--leading-none);
  letter-spacing: var(--tracking-normal);
  padding-block: var(--spacing-075);
  padding-inline: var(--spacing-100);
  text-decoration: none;
  background-color: var(--color-brand-orange);
  border-color: var(--color-brand-orange);
  color: var(--color-brand-dark-gray);
  font-size: var(--body-large-font-size);
  font-weight: var(--font-weight-bold);
  letter-spacing: var(--tracking-normal);
  line-height: var(--leading-none);
  padding-block: var(--spacing-075);
  padding-inline: var(--spacing-100);
  border-radius: var(--btn-radius-md);
  cursor: pointer;
}
input[type=button]:hover, input[type=button]:active, input[type=button]:focus, input[type=submit]:hover, input[type=submit]:active, input[type=submit]:focus {
  transition: color var(--transition-duration) ease-in-out, background-color var(--transition-duration) ease-in-out, transform var(--transition-duration) ease-in-out, opacity var(--transition-duration) ease-in-out;
}
input[type=button]:hover:active, input[type=button]:active:active, input[type=button]:focus:active, input[type=submit]:hover:active, input[type=submit]:active:active, input[type=submit]:focus:active {
  transform: scale(0.9);
}
input[type=button]:hover, input[type=submit]:hover {
  background-color: var(--color-brand-light-gray);
}
input[type=button]:focus, input[type=submit]:focus {
  outline-color: var(--color-focus-stroke);
}
input[type=checkbox] {
  border-radius: var(--border-radius-3xs);
  cursor: pointer;
  height: var(--checkbox-size);
  outline: none;
  width: var(--checkbox-size);
}
input[type=radio] {
  cursor: pointer;
  height: var(--checkbox-size);
  width: var(--checkbox-size);
}
input:not([type=submit], [type=button], [type=checkbox], [type=radio]) {
  border-radius: var(--border-radius-xs);
  border: none;
  font-size: var(--body-font-size);
  font-weight: var(--font-weight-regular);
  line-height: var(--body-line-height);
  text-indent: 0;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-color: transparent;
  outline: none;
}
input:not([type=submit], [type=button], [type=checkbox], [type=radio]):hover, input:not([type=submit], [type=button], [type=checkbox], [type=radio]):active, input:not([type=submit], [type=button], [type=checkbox], [type=radio]):focus {
  transition: box-shadow var(--transition-duration) ease-in-out;
}

/**
 * Language Selector
 * Group: Elements
 */
.language-selector {
  font-size: var(--body-medium-font-size);
  letter-spacing: var(--body-medium-letter-spacing);
  line-height: var(--body-medium-line-height);
  font-weight: var(--font-weight-semibold);
  display: block;
  text-decoration: none;
  margin-left: var(--spacing-150);
}
@media (min-width: 1200px) {
  .language-selector {
    margin-left: var(--spacing-150);
  }
}

/**
 * Link / Anchor
 * Group: Elements
 */
a {
  color: inherit;
  text-decoration: none;
  text-decoration-thickness: 2px;
  text-underline-offset: var(--spacing-025);
}
a[disabled] {
  cursor: not-allowed;
  box-shadow: none;
  opacity: 0.6;
}

/**
 * List Item
 * Group: Elements
 */
.list-item {
  position: relative;
}
.list-item-article {
  position: relative;
  width: 100%;
  display: flex;
  flex-flow: row nowrap;
  border-bottom: 1px solid var(--color-brand-dark-gray);
  margin-bottom: var(--spacing-200);
}
.list-item-article:hover, .list-item-article:focus-within {
  background-color: var(--color-brand-light-gray);
  border-bottom-color: var(--color-brand-orange);
}
.list-item-article__image {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.list-item-article__image--wrapper {
  flex: 0 0 auto;
  width: var(--spacing-1200);
  height: auto;
  display: none;
}
.list-item-article__image--wrapper picture {
  width: 100%;
  height: 100%;
}
@media (min-width: 768px) {
  .list-item-article__image--wrapper {
    display: block;
  }
}
.list-item-article__content {
  flex: 1;
  padding: var(--spacing-200) var(--spacing-150);
}
.list-item-article__title {
  font-family: var(--font-primary);
  font-size: var(--h3-font-size);
  letter-spacing: var(--h3-letter-spacing);
  line-height: var(--h3-line-height);
  font-weight: var(--font-weight-regular);
  color: var(--color-brand-dark-gray);
}
.list-item-article__title:hover, .list-item-article__title:focus-within {
  color: var(--color-brand-blue);
}
.list-item-article__date {
  font-size: var(--body-small-font-size);
  letter-spacing: var(--body-small-letter-spacing);
  line-height: var(--body-small-line-height);
  font-weight: var(--font-weight-medium);
  display: block;
  color: var(--color-brand-blue);
  margin-bottom: var(--spacing-150);
}
.list-item-article__description {
  font-size: var(--body-font-size);
  letter-spacing: var(--body-letter-spacing);
  line-height: var(--body-line-height);
  font-weight: var(--font-weight-regular);
  margin-top: var(--spacing-150);
  color: var(--color-brand-gray);
}
.list-item-link {
  position: relative;
  padding-block: var(--spacing-200) var(--spacing-150);
  padding-inline: var(--spacing-150);
  border-bottom: 1px solid var(--color-dark);
}
.list-item-link:hover, .list-item-link:focus-within {
  background-color: var(--color-brand-lighter-gray);
  border-bottom-color: var(--color-brand-orange);
}
.list-item-link__title {
  font-family: var(--font-primary);
  font-size: var(--h3-font-size);
  letter-spacing: var(--h3-letter-spacing);
  line-height: var(--h3-line-height);
  font-weight: var(--font-weight-regular);
  color: var(--color-brand-dark-gray);
  margin-bottom: var(--spacing-075);
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
  text-decoration: none;
}
.list-item-link__title:hover, .list-item-link__title:focus {
  color: var(--color-brand-blue);
}
.list-item-link__title h2,
.list-item-link__title h3,
.list-item-link__title h4,
.list-item-link__title h5,
.list-item-link__title h6 {
  font-size: inherit;
  font-weight: inherit;
  letter-spacing: inherit;
  line-height: inherit;
}
.list-item-link__info {
  display: flex;
  align-items: center;
  gap: var(--spacing-050);
  color: var(--color-brand-gray);
  margin-bottom: var(--spacing-100);
}
.list-item-link__info-icon {
  max-height: var(--icon-mxs);
  width: var(--icon-mxs);
  height: auto;
  color: inherit;
}
.list-item-link__info-text {
  font-size: var(--body-font-size);
  letter-spacing: var(--body-letter-spacing);
  line-height: var(--body-line-height);
  font-weight: var(--font-weight-regular);
}
.list-item-link__icon {
  max-height: var(--icon-ms);
  width: var(--icon-ms);
  height: auto;
  color: inherit;
}
.list-item-faq {
  font-size: var(--body-font-size);
  letter-spacing: var(--body-letter-spacing);
  line-height: var(--body-line-height);
  font-weight: var(--font-weight-regular);
  padding-block: var(--spacing-250) var(--spacing-150);
  padding-inline: var(--spacing-250);
  box-shadow: var(--box-shadow-accordion);
  border: 2px solid transparent;
  max-width: var(--max-width--sm);
  margin-inline: auto;
  margin-block: var(--spacing-075);
  color: var(--color-brand-gray);
}
.list-item-faq[open] {
  border-color: var(--color-brand-blue);
}
.list-item-faq[open] > *:not(summary) {
  animation: fade-in var(--transition-duration) ease-in forwards;
}
.list-item-faq[open] .list-item-faq__icon {
  color: var(--color-light);
  transform: rotate(90deg);
}
.list-item-faq[open] .list-item-faq__icon--wrapper {
  background-color: var(--color-brand-blue);
}
.list-item-faq--wrapper {
  position: relative;
}
.list-item-faq__title {
  font-family: var(--font-primary);
  font-size: var(--h4-font-size);
  letter-spacing: var(--h4-letter-spacing);
  line-height: var(--h4-line-height);
  font-weight: var(--font-weight-regular);
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: var(--spacing-050);
  list-style: none;
  color: var(--color-brand-dark-gray);
  cursor: pointer;
  margin-bottom: var(--spacing-100);
}
.list-item-faq__title::-webkit-details-marker {
  display: none;
}
.list-item-faq__title:hover {
  color: var(--color-brand-blue);
}
.list-item-faq__icon {
  max-height: var(--icon-xs);
  width: var(--icon-xs);
  height: auto;
  color: var(--color-brand-blue);
  transition: transform var(--transition-duration) ease-in-out;
}
.list-item-faq__icon--wrapper {
  width: var(--spacing-300);
  height: var(--spacing-300);
  border-radius: var(--border-radius-full);
  flex-shrink: 0;
  display: grid;
  place-items: center;
  transition: background-color var(--transition-duration) ease-in-out;
}
.list-item-faq__icon--wrapper:hover {
  background-color: var(--color-brand-blue);
}
.list-item-faq__icon--wrapper:hover .list-item-faq__icon {
  color: var(--color-light);
}
.list-item-faq__category {
  font-size: var(--body-small-font-size);
  letter-spacing: var(--body-small-letter-spacing);
  line-height: var(--body-small-line-height);
  font-weight: var(--font-weight-bold);
  color: var(--color-brand-dark-gray);
  margin-top: var(--spacing-150);
}
.list-item-regulation {
  position: relative;
  width: 100%;
  display: flex;
  flex-flow: row nowrap;
}
.list-item-regulation:hover .list-item-regulation__content, .list-item-regulation:focus-within .list-item-regulation__content {
  background-color: var(--color-brand-light-gray);
  border-bottom-color: var(--color-brand-orange);
}
.list-item-regulation__content {
  flex: 1;
  padding: var(--spacing-200) var(--spacing-150);
  border-bottom: 1px solid var(--color-brand-dark-gray);
}
.list-item-regulation__title {
  font-family: var(--font-primary);
  font-size: var(--h3-font-size);
  letter-spacing: var(--h3-letter-spacing);
  line-height: var(--h3-line-height);
  font-weight: var(--font-weight-regular);
  color: var(--color-brand-dark-gray);
}
.list-item-regulation__title:hover, .list-item-regulation__title:focus-within {
  color: var(--color-brand-blue);
}
.list-item-regulation__date {
  font-size: var(--body-small-font-size);
  letter-spacing: var(--body-small-letter-spacing);
  line-height: var(--body-small-line-height);
  font-weight: var(--font-weight-medium);
  display: block;
  color: var(--color-brand-blue);
  margin-bottom: var(--spacing-150);
}
.list-item-search-result {
  width: 100%;
  display: flex;
  flex-flow: row nowrap;
}
.list-item-search-result:hover .list-item-search-result__content {
  background-color: var(--color-brand-light-gray);
  border-bottom-color: var(--color-brand-orange);
}
.list-item-search-result__content {
  flex: 1;
  padding: var(--spacing-200) var(--spacing-150);
  border-bottom: 1px solid var(--color-brand-dark-gray);
}
.list-item-search-result__title {
  font-family: var(--font-primary);
  font-size: var(--h3-font-size);
  letter-spacing: var(--h3-letter-spacing);
  line-height: var(--h3-line-height);
  font-weight: var(--font-weight-regular);
  color: var(--color-brand-dark-gray);
  margin-bottom: var(--spacing-050);
}
.list-item-search-result__title:hover {
  color: var(--color-brand-blue);
}
.list-item-search-result__category {
  font-size: var(--body-small-font-size);
  letter-spacing: var(--body-small-letter-spacing);
  line-height: var(--body-small-line-height);
  font-weight: var(--font-weight-medium);
  display: block;
  color: var(--color-brand-blue);
  margin-bottom: var(--spacing-150);
}

/**
 * List
 * Group: Elements
 */
ol,
ul {
  padding: 0;
  margin: 0;
  list-style-type: none;
  /* When UL doesn't have any class */
}
ol::before,
ul::before {
  content: "​"; /* add zero-width space */
  position: absolute;
  width: 0;
  height: 0;
  overflow: hidden;
  pointer-events: none;
  clip: rect(0, 0, 0, 0);
  clip-path: inset(50%);
  white-space: nowrap;
  border: 0;
  display: inline-block;
}
ol li,
ul li {
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
  letter-spacing: inherit;
  line-height: inherit;
}
ol li::marker,
ul li::marker {
  color: currentcolor;
}
.o-main ol:not([class]),
.o-main ul:not([class]) {
  padding-left: 1.5em;
}
.o-main ol:not([class]) li,
.o-main ul:not([class]) li {
  margin: var(--space-sm) 0;
}

ol {
  /* When OL doesn't have any class */
}
.o-main ol:not([class]) {
  list-style: auto;
}

ul {
  /* When UL doesn't have any class */
}
.o-main ul:not([class]) {
  list-style: disc outside;
}

/**
 * Logo
 * Group: Elements
 */
.logo-header {
  max-width: 5.5rem;
  max-height: 5rem;
}
.logo-header img {
  -o-object-fit: contain;
     object-fit: contain;
}
.logo-footer {
  max-width: 9rem;
  max-height: 9rem;
}
.logo-footer img {
  -o-object-fit: contain;
     object-fit: contain;
}

/**
 * Main
 * Group: Elements
 */
main {
  flex: 1;
}

/**
 * Nav
 * Group: Elements
 */
.menu {
  list-style: none;
  display: flex;
  flex-direction: column;
}
@media (min-width: 992px) {
  .menu {
    flex-direction: row;
    gap: var(--spacing-050);
  }
}
.menu-item {
  font-size: var(--body-font-size);
  letter-spacing: var(--body-letter-spacing);
  line-height: var(--body-line-height);
  font-weight: var(--font-weight-semibold);
  color: var(--color-light);
  text-decoration: none;
  display: block;
  width: 100%;
  border-left: 3px solid transparent;
  padding-inline: var(--spacing-100);
  padding-block: var(--spacing-050);
}
.menu-item:hover {
  color: var(--color-brand-blue);
  background-color: var(--color-light);
  border-left-color: var(--color-brand-orange);
}
.menu-item--wrapper {
  position: relative;
}
.menu-item--cta {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  border-radius: var(--border-radius-m);
  border-width: var(--button-border-width);
  border-style: solid;
  border-color: transparent;
  font-size: var(--body-font-size);
  font-style: normal;
  font-stretch: normal;
  font-weight: var(--font-weight-regular);
  line-height: var(--leading-none);
  letter-spacing: var(--tracking-normal);
  padding-block: var(--spacing-075);
  padding-inline: var(--spacing-100);
  text-decoration: none;
  background-color: var(--color-brand-orange);
  border-color: var(--color-brand-orange);
  color: var(--color-brand-dark-gray);
  display: flex;
  align-items: center;
  height: var(--spacing-200);
  border-width: var(--button-border-width);
  border-style: solid;
  border-radius: 1.25rem;
  padding-inline: var(--spacing-200);
}
.menu-item--cta:hover, .menu-item--cta:active, .menu-item--cta:focus {
  transition: color var(--transition-duration) ease-in-out, background-color var(--transition-duration) ease-in-out, transform var(--transition-duration) ease-in-out, opacity var(--transition-duration) ease-in-out;
}
.menu-item--cta:hover:active, .menu-item--cta:active:active, .menu-item--cta:focus:active {
  transform: scale(0.9);
}
.menu-item--cta:hover {
  background-color: var(--color-brand-light-gray);
}
.menu-item--cta:focus {
  outline-color: var(--color-focus-stroke);
}
.menu-item--button {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background: transparent;
  border: none;
  box-shadow: none;
  text-align: inherit;
  text-decoration: none;
  cursor: pointer;
  border-left: 3px solid transparent;
  display: flex;
  justify-content: space-between;
  gap: var(--spacing-025);
  align-items: center;
}
@media (min-width: 992px) {
  .menu-item--button {
    color: var(--color-brand-dark-gray);
    border: none;
    background-color: transparent;
  }
  .menu-item--button:hover {
    color: var(--color-brand-dark-gray);
    background-color: transparent;
  }
}
.menu-item__icon {
  width: var(--icon-default);
  height: var(--icon-default);
  transition: transform var(--transition-duration) ease-in-out;
}
.menu-item[aria-expanded=true] .menu-item__icon {
  transform: rotate(180deg);
}
.menu-sub {
  background-color: var(--color-brand-blue-dark);
}
@media (min-width: 992px) {
  .menu-sub {
    box-shadow: var(--box-shadow-light-04);
    position: absolute;
    top: 100%;
    left: 0;
    width: var(--spacing-2400);
    background-color: var(--color-brand-blue);
  }
  .menu-sub > *:last-child > .menu-item {
    border-bottom: none;
  }
}
.menu-sub .menu-item {
  padding-left: var(--spacing-250);
  border-bottom: 1px solid var(--color-light);
}
.menu-sub[data-expanded=false] {
  display: none;
}
.menu-sub[data-expanded=true] {
  display: block;
  animation: fade-in var(--transition-duration) ease-in-out forwards;
}
.menu > *:not(:last-child) > .menu-item {
  border-bottom: 1px solid var(--color-light);
}
@media (min-width: 992px) {
  .menu > *:not(:last-child) > .menu-item {
    border-bottom: none;
  }
}

/**
 * Pagination
 * Group: Elements
 */
.pagination {
  height: var(--pagination-height);
  margin-inline: auto;
  margin-block: var(--spacing-300);
  max-width: var(--spacing-4000);
}
@media (min-width: 1200px) {
  .pagination {
    margin-block: var(--spacing-600);
  }
}
.pagination__list {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0;
  margin: 0;
  gap: var(--spacing-050);
}
@media (min-width: 414px) {
  .pagination__list {
    gap: var(--spacing-100);
  }
}
@media (min-width: 768px) {
  .pagination__list {
    gap: var(--spacing-200);
  }
}
@media (min-width: 992px) {
  .pagination__list {
    gap: var(--spacing-300);
  }
}
.pagination__item {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  border-radius: var(--border-radius-m);
  border-width: var(--button-border-width);
  border-style: solid;
  border-color: transparent;
  font-size: var(--body-font-size);
  font-style: normal;
  font-stretch: normal;
  font-weight: var(--font-weight-regular);
  line-height: var(--leading-none);
  letter-spacing: var(--tracking-normal);
  padding-block: var(--spacing-075);
  padding-inline: var(--spacing-100);
  text-decoration: none;
  font-size: var(--body-small-font-size);
  font-weight: var(--font-weight-bold);
  letter-spacing: var(--tracking-normal);
  line-height: var(--leading-tight);
  padding-block: var(--spacing-025);
  padding-inline: var(--spacing-075);
  border-radius: var(--btn-radius-full);
  background-color: transparent;
  color: var(--color-brand-blue);
  width: var(--spacing-200);
  height: var(--spacing-200);
  padding: 0;
}
.pagination__item:hover, .pagination__item:active, .pagination__item:focus {
  transition: color var(--transition-duration) ease-in-out, background-color var(--transition-duration) ease-in-out, transform var(--transition-duration) ease-in-out, opacity var(--transition-duration) ease-in-out;
}
.pagination__item:hover:active, .pagination__item:active:active, .pagination__item:focus:active {
  transform: scale(0.9);
}
.pagination__item:hover, .pagination__item[aria-current=page] {
  background-color: var(--color-brand-blue);
  color: var(--color-light);
}
.pagination__item:focus {
  border-color: var(--color-focus-stroke);
}
@media (min-width: 576px) {
  .pagination__item {
    width: var(--spacing-300);
    height: var(--spacing-300);
  }
}
.pagination__navigation-button {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  border-radius: var(--border-radius-m);
  border-width: var(--button-border-width);
  border-style: solid;
  border-color: transparent;
  font-size: var(--body-font-size);
  font-style: normal;
  font-stretch: normal;
  font-weight: var(--font-weight-regular);
  line-height: var(--leading-none);
  letter-spacing: var(--tracking-normal);
  padding-block: var(--spacing-075);
  padding-inline: var(--spacing-100);
  text-decoration: none;
  font-size: var(--body-small-font-size);
  font-weight: var(--font-weight-bold);
  letter-spacing: var(--tracking-normal);
  line-height: var(--leading-tight);
  padding-block: var(--spacing-025);
  padding-inline: var(--spacing-075);
  border-radius: var(--btn-radius-full);
  background-color: transparent;
  color: var(--color-brand-blue);
  width: var(--spacing-200);
  height: var(--spacing-200);
  padding: 0;
}
.pagination__navigation-button:hover, .pagination__navigation-button:active, .pagination__navigation-button:focus {
  transition: color var(--transition-duration) ease-in-out, background-color var(--transition-duration) ease-in-out, transform var(--transition-duration) ease-in-out, opacity var(--transition-duration) ease-in-out;
}
.pagination__navigation-button:hover:active, .pagination__navigation-button:active:active, .pagination__navigation-button:focus:active {
  transform: scale(0.9);
}
.pagination__navigation-button:hover, .pagination__navigation-button[aria-current=page] {
  background-color: var(--color-brand-blue);
  color: var(--color-light);
}
.pagination__navigation-button:focus {
  border-color: var(--color-focus-stroke);
}
@media (min-width: 576px) {
  .pagination__navigation-button {
    width: var(--spacing-300);
    height: var(--spacing-300);
  }
}
.pagination__navigation-button[aria-disabled=true] {
  opacity: 0.5;
  cursor: not-allowed;
  pointer-events: none;
}
.pagination__nav-icon {
  width: var(--icon-xxs);
  height: var(--icon-xs);
}

/**
 * Input
 * Group: Elements
 */
.search {
  border-radius: var(--border-radius-xs);
  border: none;
  font-size: var(--body-font-size);
  font-weight: var(--font-weight-regular);
  line-height: var(--body-line-height);
  text-indent: 0;
  background-color: var(--color-brand-search-gray);
  border-radius: var(--border-radius-l);
  height: var(--spacing-250);
  display: flex;
  align-items: center;
  padding: var(--spacing-075);
  color: var(--color-brand-blue);
  padding-right: 0;
  padding-block: 0;
  margin-block: 0;
  margin-inline: auto var(--spacing-050);
}
.search:hover, .search:active, .search:focus {
  transition: box-shadow var(--transition-duration) ease-in-out;
}
.search:hover {
  box-shadow: var(--box-shadow-light-03);
}
.search input {
  height: var(--input-height-large);
  width: var(--max-width--6xs);
  color: inherit;
  font-size: var(--body-small-font-size);
  letter-spacing: var(--body-small-letter-spacing);
  line-height: var(--body-small-line-height);
  font-weight: var(--font-weight-regular);
}
.search input::-moz-placeholder {
  font-size: var(--body-small-font-size);
  letter-spacing: var(--body-small-letter-spacing);
  line-height: var(--body-small-line-height);
  font-weight: var(--font-weight-regular);
  color: var(--color-brand-blue);
  opacity: 0.7;
}
.search input::placeholder {
  font-size: var(--body-small-font-size);
  letter-spacing: var(--body-small-letter-spacing);
  line-height: var(--body-small-line-height);
  font-weight: var(--font-weight-regular);
  color: var(--color-brand-blue);
  opacity: 0.7;
}
.search input::-webkit-input-placeholder {
  font-size: var(--body-small-font-size);
  letter-spacing: var(--body-small-letter-spacing);
  line-height: var(--body-small-line-height);
  font-weight: var(--font-weight-regular);
  color: var(--color-brand-blue);
  opacity: 0.7;
}
.search input::-moz-placeholder {
  font-size: var(--body-small-font-size);
  letter-spacing: var(--body-small-letter-spacing);
  line-height: var(--body-small-line-height);
  font-weight: var(--font-weight-regular);
  color: var(--color-brand-blue);
  opacity: 0.7;
  opacity: 1;
}
.search input:-ms-input-placeholder {
  font-size: var(--body-small-font-size);
  letter-spacing: var(--body-small-letter-spacing);
  line-height: var(--body-small-line-height);
  font-weight: var(--font-weight-regular);
  color: var(--color-brand-blue);
  opacity: 0.7;
}
@media (min-width: 992px) {
  .search input {
    width: var(--max-width--5xs);
  }
}
.search__cta {
  font-size: var(--body-small-font-size);
  font-weight: var(--font-weight-regular);
  letter-spacing: var(--tracking-normal);
  line-height: var(--leading-none);
  padding-block: var(--spacing-025);
  padding-inline: var(--spacing-075);
  border-radius: var(--btn-radius);
  height: 100%;
  width: var(--spacing-250);
  display: grid;
  place-items: center;
  border: none;
  padding: 0;
  border-radius: 0;
  border-left: 1px solid var(--color-brand-blue);
  color: var(--color-brand-blue);
}
.search__cta:hover {
  color: var(--color-brand-orange);
}
.search__icon {
  width: var(--icon-xs);
  height: var(--icon-xs);
  margin-right: var(--spacing-025);
}
.search__icon--open, .search__icon--close {
  display: none;
  color: inherit;
}
.search__icon--toggler-wrapper {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  border-radius: var(--border-radius-m);
  border-width: var(--button-border-width);
  border-style: solid;
  border-color: transparent;
  font-size: var(--body-font-size);
  font-style: normal;
  font-stretch: normal;
  font-weight: var(--font-weight-regular);
  line-height: var(--leading-none);
  letter-spacing: var(--tracking-normal);
  padding-block: var(--spacing-075);
  padding-inline: var(--spacing-100);
  text-decoration: none;
  font-size: var(--body-small-font-size);
  font-weight: var(--font-weight-regular);
  letter-spacing: var(--tracking-normal);
  line-height: var(--leading-none);
  padding-block: var(--spacing-025);
  padding-inline: var(--spacing-075);
  border-radius: var(--btn-radius);
  color: var(--color-brand-blue);
}
.search__icon--toggler-wrapper:hover, .search__icon--toggler-wrapper:active, .search__icon--toggler-wrapper:focus {
  transition: color var(--transition-duration) ease-in-out, background-color var(--transition-duration) ease-in-out, transform var(--transition-duration) ease-in-out, opacity var(--transition-duration) ease-in-out;
}
.search__icon--toggler-wrapper:hover:active, .search__icon--toggler-wrapper:active:active, .search__icon--toggler-wrapper:focus:active {
  transform: scale(0.9);
}
.search__icon--toggler-wrapper:hover {
  color: var(--color-brand-orange);
}
.search__icon--toggler-wrapper[aria-expanded=false] .search__icon--open {
  display: block;
}
.search__icon--toggler-wrapper[aria-expanded=true] .search__icon--close {
  display: block;
}
.search--mobile {
  overflow: hidden;
  max-width: 0;
  transform: scaleX(0);
  transform-origin: right center;
  transition: max-width var(--transition-duration) ease-in-out;
}
.search--mobile[data-expanded=true] {
  transform: scaleX(1);
  max-width: var(--max-width--7xs);
  margin-right: var(--spacing-050);
}
.search--mobile[data-expanded=true] input {
  max-width: var(--max-width--9xs);
}
@media (min-width: 768px) {
  .search--mobile[data-expanded=true] {
    max-width: var(--max-width--5xs);
  }
  .search--mobile[data-expanded=true] input {
    max-width: var(--max-width--6xs);
  }
}

/**
 * Select
 * Group: Elements
 */
select {
  border-radius: var(--border-radius-xs);
  border: none;
  font-size: var(--body-font-size);
  font-weight: var(--font-weight-regular);
  line-height: var(--body-line-height);
  text-indent: 0;
  background-color: var(--color-brand-search-gray);
  border-radius: var(--border-radius-l);
  height: var(--spacing-300);
  display: flex;
  flex-flow: row nowrap;
  align-items: center;
  justify-content: space-between;
  padding: var(--spacing-100) var(--spacing-150);
  color: var(--color-brand-blue);
  font-size: var(--body-font-size);
  letter-spacing: var(--body-letter-spacing);
  line-height: var(--body-line-height);
  font-weight: var(--font-weight-regular);
}
select:hover, select:active, select:focus {
  transition: box-shadow var(--transition-duration) ease-in-out;
}
select:hover {
  box-shadow: var(--box-shadow-light-03);
}
select input {
  width: 100%;
  color: inherit;
  font-size: var(--body-font-size);
  letter-spacing: var(--body-letter-spacing);
  line-height: var(--body-line-height);
  font-weight: var(--font-weight-regular);
}
select input::-moz-placeholder {
  font-size: var(--body-font-size);
  letter-spacing: var(--body-letter-spacing);
  line-height: var(--body-line-height);
  font-weight: var(--font-weight-regular);
  color: var(--color-brand-blue);
}
select input::placeholder {
  font-size: var(--body-font-size);
  letter-spacing: var(--body-letter-spacing);
  line-height: var(--body-line-height);
  font-weight: var(--font-weight-regular);
  color: var(--color-brand-blue);
}
select input::-webkit-input-placeholder {
  font-size: var(--body-font-size);
  letter-spacing: var(--body-letter-spacing);
  line-height: var(--body-line-height);
  font-weight: var(--font-weight-regular);
  color: var(--color-brand-blue);
}
select input::-moz-placeholder {
  font-size: var(--body-font-size);
  letter-spacing: var(--body-letter-spacing);
  line-height: var(--body-line-height);
  font-weight: var(--font-weight-regular);
  color: var(--color-brand-blue);
  opacity: 1;
}
select input:-ms-input-placeholder {
  font-size: var(--body-font-size);
  letter-spacing: var(--body-letter-spacing);
  line-height: var(--body-line-height);
  font-weight: var(--font-weight-regular);
  color: var(--color-brand-blue);
}

/**
 * Social Links
 * Group: Elements
 */
.social-links {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: var(--spacing-025);
  color: inherit;
  flex: 1;
}
@media (min-width: 576px) {
  .social-links {
    justify-content: flex-start;
    flex: 0 1 auto;
    gap: var(--spacing-200);
  }
}
.social-links__link {
  font-size: var(--body-small-font-size);
  letter-spacing: var(--body-small-letter-spacing);
  line-height: var(--body-small-line-height);
  font-weight: var(--font-weight-regular);
  text-decoration: none;
  display: flex;
  align-items: center;
}
.social-links__link svg {
  height: var(--icon-default);
  width: auto;
  margin-right: var(--spacing-025);
}
@media (min-width: 576px) {
  .social-links__link {
    font-size: var(--body-font-size);
    letter-spacing: var(--body-letter-spacing);
    line-height: var(--body-line-height);
    font-weight: var(--font-weight-regular);
  }
  .social-links__link svg {
    height: var(--icon-default);
    width: auto;
    margin-right: var(--spacing-075);
  }
}

/**
 * List Item
 * Group: Elements
 */
.table-list {
  border-collapse: collapse;
  min-width: var(--min-width-table-list);
  width: 100%;
}
.table-list--wrapper {
  overflow-x: auto;
  width: 100%;
}
@media (min-width: 992px) {
  .table-list--wrapper {
    overflow-x: visible;
  }
}
.table-list__caption {
  font-family: var(--font-primary);
  font-size: var(--h2-font-size);
  letter-spacing: var(--h2-letter-spacing);
  line-height: var(--h2-line-height);
  font-weight: var(--font-weight-regular);
  color: var(--color-brand-dark-gray);
  margin: 0 0 var(--spacing-100);
  text-align: left;
}
.table-list__tree-caption {
  font-family: var(--font-primary);
  font-size: var(--h2-font-size);
  letter-spacing: var(--h2-letter-spacing);
  line-height: var(--h2-line-height);
  font-weight: var(--font-weight-regular);
  color: var(--color-brand-dark-gray);
  margin-top: var(--spacing-600);
  margin-bottom: var(--spacing-300);
  text-align: left;
}
.table-list__cell {
  padding-block: var(--spacing-200);
  padding-inline: var(--spacing-050);
}
.table-list__cell:first-child {
  padding-inline: var(--spacing-075) 0;
}
.table-list__cell:last-child {
  padding-inline: 0 var(--spacing-075);
}
.table-list__cell--header {
  text-align: left;
  width: 30%;
}
.table-list__row {
  border-bottom: 1px solid var(--color-brand-lighter-gray);
}
.table-list__row:hover, .table-list__row:focus-within {
  background-color: var(--color-brand-lighter-gray);
  border-bottom-color: var(--color-brand-orange);
}
.table-list__row:hover > *, .table-list__row:focus-within > * {
  background-color: transparent;
}
.table-list__row-with-header {
  border-block: 1px solid var(--color-brand-orange);
}
.table-list__row-with-header:nth-child(odd) {
  background-color: var(--color-brand-blue);
  color: var(--color-light);
}
.table-list__row-with-header:nth-child(even) {
  background-color: var(--color-brand-light-gray);
  color: var(--color-brand-gray);
}
.table-list__row-with-header:first-child {
  border-top: 3px solid var(--color-brand-gray);
}
.table-list__row-with-header:last-child {
  border-bottom: 3px solid var(--color-brand-orange);
}
.table-list__header {
  font-size: var(--body-small-font-size);
  letter-spacing: var(--body-small-letter-spacing);
  line-height: var(--body-small-line-height);
  font-weight: var(--font-weight-bold);
  text-align: left;
  color: var(--color-brand-gray);
  border-bottom: 3px solid var(--color-brand-dark-gray);
  white-space: nowrap;
}
.table-list__index {
  font-size: var(--body-font-size);
  letter-spacing: var(--body-letter-spacing);
  line-height: var(--body-line-height);
  font-weight: var(--font-weight-bold);
  width: clamp(var(--spacing-300), 6vw, var(--spacing-400));
}
.table-list__index-text {
  font-size: var(--body-font-size);
  letter-spacing: var(--body-letter-spacing);
  line-height: var(--body-line-height);
  font-weight: var(--font-weight-bold);
}
.table-list__title {
  font-size: var(--body-small-font-size);
  letter-spacing: var(--body-small-letter-spacing);
  line-height: var(--body-small-line-height);
  font-weight: var(--font-weight-regular);
}
.table-list__title-text {
  font-size: var(--body-small-font-size);
  letter-spacing: var(--body-small-letter-spacing);
  line-height: var(--body-small-line-height);
  font-weight: var(--font-weight-regular);
  max-width: var(--spacing-3700);
}
.table-list__link {
  font-size: var(--body-small-font-size);
  letter-spacing: var(--body-small-letter-spacing);
  line-height: var(--body-small-line-height);
  font-weight: var(--font-weight-regular);
  width: clamp(20%, var(--spacing-2400), 25rem);
}
.table-list__link-inner {
  display: flex;
  flex-flow: row nowrap;
  justify-content: space-between;
  align-items: center;
  gap: var(--spacing-050);
  text-decoration: none;
}
.table-list__link-inner:hover, .table-list__link-inner:focus {
  color: var(--color-brand-blue);
}
.table-list__link-text {
  font-size: var(--body-small-font-size);
  letter-spacing: var(--body-small-letter-spacing);
  line-height: var(--body-small-line-height);
  font-weight: var(--font-weight-regular);
  max-width: var(--spacing-1600);
  flex: 1;
}
.table-list__link-icon {
  max-height: var(--icon-xs);
  width: var(--icon-xs);
  height: auto;
  color: inherit;
}
.table-list__title-link {
  font-size: var(--body-small-font-size);
  letter-spacing: var(--body-small-letter-spacing);
  line-height: var(--body-small-line-height);
  font-weight: var(--font-weight-regular);
  width: clamp(20%, var(--spacing-2400), 25rem);
}
.table-list__title-link-inner {
  display: flex;
  flex-flow: row nowrap;
  justify-content: space-between;
  align-items: center;
  gap: var(--spacing-050);
  text-decoration: none;
}
.table-list__title-link-inner:hover, .table-list__title-link-inner:focus {
  color: var(--color-brand-blue);
}
.table-list__title-link-text {
  font-size: var(--body-small-font-size);
  letter-spacing: var(--body-small-letter-spacing);
  line-height: var(--body-small-line-height);
  font-weight: var(--font-weight-regular);
  flex: 1;
}
.table-list__title-link-icon {
  max-height: var(--icon-xs);
  width: var(--icon-xs);
  height: auto;
  color: inherit;
}
.table-list__lastname {
  font-size: var(--body-small-font-size);
  letter-spacing: var(--body-small-letter-spacing);
  line-height: var(--body-small-line-height);
  font-weight: var(--font-weight-regular);
}
.table-list__lastname-text {
  font-size: var(--body-small-font-size);
  letter-spacing: var(--body-small-letter-spacing);
  line-height: var(--body-small-line-height);
  font-weight: var(--font-weight-regular);
  max-width: var(--spacing-3700);
}
.table-list__firstname {
  font-size: var(--body-small-font-size);
  letter-spacing: var(--body-small-letter-spacing);
  line-height: var(--body-small-line-height);
  font-weight: var(--font-weight-regular);
}
.table-list__firstname-text {
  font-size: var(--body-small-font-size);
  letter-spacing: var(--body-small-letter-spacing);
  line-height: var(--body-small-line-height);
  font-weight: var(--font-weight-regular);
  max-width: var(--spacing-3700);
}
.table-list__phone {
  font-size: var(--body-small-font-size);
  letter-spacing: var(--body-small-letter-spacing);
  line-height: var(--body-small-line-height);
  font-weight: var(--font-weight-regular);
}
.table-list__phone-text {
  font-size: var(--body-small-font-size);
  letter-spacing: var(--body-small-letter-spacing);
  line-height: var(--body-small-line-height);
  font-weight: var(--font-weight-regular);
  max-width: var(--spacing-3700);
}
.table-list__email {
  font-size: var(--body-small-font-size);
  letter-spacing: var(--body-small-letter-spacing);
  line-height: var(--body-small-line-height);
  font-weight: var(--font-weight-regular);
}
.table-list__email-text {
  font-size: var(--body-small-font-size);
  letter-spacing: var(--body-small-letter-spacing);
  line-height: var(--body-small-line-height);
  font-weight: var(--font-weight-regular);
  max-width: var(--spacing-3700);
}
.table-list__orgunit {
  font-size: var(--body-small-font-size);
  letter-spacing: var(--body-small-letter-spacing);
  line-height: var(--body-small-line-height);
  font-weight: var(--font-weight-regular);
}
.table-list__orgunit-text {
  font-size: var(--body-small-font-size);
  letter-spacing: var(--body-small-letter-spacing);
  line-height: var(--body-small-line-height);
  font-weight: var(--font-weight-regular);
  max-width: var(--spacing-3700);
}
.table-list__site {
  font-size: var(--body-small-font-size);
  letter-spacing: var(--body-small-letter-spacing);
  line-height: var(--body-small-line-height);
  font-weight: var(--font-weight-regular);
}
.table-list__site-text {
  font-size: var(--body-small-font-size);
  letter-spacing: var(--body-small-letter-spacing);
  line-height: var(--body-small-line-height);
  font-weight: var(--font-weight-regular);
  max-width: var(--spacing-3700);
}
.table-list__name {
  width: clamp(var(--spacing-600), 8vw, var(--spacing-700));
}
.table-list__name-text {
  font-size: var(--body-small-font-size);
  letter-spacing: var(--body-small-letter-spacing);
  line-height: var(--body-small-line-height);
  font-weight: var(--font-weight-bold);
}
.table-list__name-link {
  text-decoration: none;
}
.table-list__name-link:hover, .table-list__name-link:focus {
  color: var(--color-brand-blue);
}
.table-list__type {
  width: clamp(var(--spacing-600), 8vw, var(--spacing-700));
}
.table-list__type-text {
  font-size: var(--body-small-font-size);
  letter-spacing: var(--body-small-letter-spacing);
  line-height: var(--body-small-line-height);
  font-weight: var(--font-weight-regular);
}
.table-list__therapeutic-category-text {
  font-size: var(--body-small-font-size);
  letter-spacing: var(--body-small-letter-spacing);
  line-height: var(--body-small-line-height);
  font-weight: var(--font-weight-regular);
}
.table-list__active_substance-text {
  font-size: var(--body-small-font-size);
  letter-spacing: var(--body-small-letter-spacing);
  line-height: var(--body-small-line-height);
  font-weight: var(--font-weight-regular);
}
.table-list__approval-text {
  font-size: var(--body-small-font-size);
  letter-spacing: var(--body-small-letter-spacing);
  line-height: var(--body-small-line-height);
  font-weight: var(--font-weight-regular);
  text-align: center;
}
.table-list__indication-clarification-text {
  font-size: var(--body-small-font-size);
  letter-spacing: var(--body-small-letter-spacing);
  line-height: var(--body-small-line-height);
  font-weight: var(--font-weight-regular);
  text-align: center;
}
.table-list__availability--available {
  background-color: var(--color-brand-green);
}
.table-list__availability--low-available {
  background-color: var(--color-brand-brown-semi-transparent);
}
.table-list__availability--not-available {
  background-color: var(--color-brand-red);
}
.table-list__availability-text {
  font-size: var(--body-font-size);
  letter-spacing: var(--body-letter-spacing);
  line-height: var(--body-line-height);
  font-weight: var(--font-weight-regular);
  text-align: center;
  min-width: var(--spacing-1000);
  max-width: var(--spacing-800);
  margin-inline: auto;
  padding-inline: var(--spacing-150);
}

/**
 * Text
 * Group: Elements
 */
p,
span,
li,
a,
time,
address {
  font-size: var(--body-font-size);
  font-weight: var(--font-weight-regular);
  letter-spacing: var(--body-letter-spacing);
  line-height: var(--body-line-height);
}

p.has-small-font-size {
  font-size: var(--body-small-font-size);
  letter-spacing: var(--body-small-letter-spacing);
  line-height: var(--body-small-line-height);
  font-weight: var(--font-weight-true);
}
p.has-large-font-size {
  font-family: var(--font-primary);
  font-size: var(--h6-font-size);
  letter-spacing: var(--h6-letter-spacing);
  line-height: var(--h6-line-height);
  font-weight: var(--font-weight-true);
}
p.has-larger-font-size {
  font-family: var(--font-primary);
  font-size: var(--h5-font-size);
  letter-spacing: var(--h5-letter-spacing);
  line-height: var(--h5-line-height);
  font-weight: var(--font-weight-true);
}

a span,
span span {
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
  letter-spacing: inherit;
  line-height: inherit;
}

li p,
li span {
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
  letter-spacing: inherit;
  line-height: inherit;
}

a {
  color: var(--color-link);
  text-decoration: underline;
}

small {
  font-size: var(--body-small-font-size);
  font-weight: var(--font-weight-regular);
  line-height: var(--body-small-line-height);
}
small > * {
  font-size: inherit;
  font-weight: inherit;
  line-height: inherit;
}

b,
strong {
  font-weight: var(--font-weight-bold);
}

i,
em {
  font-style: italic;
}

sup {
  display: inline;
  font-size: 0.6em;
  font-weight: 400;
  vertical-align: top;
}

mark {
  background-color: transparent;
  position: relative;
}

ins {
  font-weight: var(--font-weight-bold);
  text-decoration: none;
}

del + ins {
  margin-left: var(--space-sm);
}

th a,
th span,
td a,
td span,
li a,
li span,
p a,
p span {
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
  letter-spacing: inherit;
  line-height: inherit;
}

/*
 * Inherit font styles if div has font classes
 * This is helpful for the RTE which is a div and accepts p tags inside
 */
div[class] > p:not([class]) {
  font-size: inherit;
  font-weight: inherit;
  line-height: inherit;
  letter-spacing: inherit;
}

button[class] > span:not([class]), button[class] > p:not([class]) {
  font-size: inherit;
  font-weight: inherit;
  line-height: inherit;
  letter-spacing: inherit;
}

/**
 * Textarea
 *
 * Group: Elements
 */
textarea {
  border-radius: var(--border-radius-xs);
  border: none;
  font-size: var(--body-font-size);
  font-weight: var(--font-weight-regular);
  line-height: var(--body-line-height);
  text-indent: 0;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-color: transparent;
  outline: none;
}
textarea:hover, textarea:active, textarea:focus {
  transition: box-shadow var(--transition-duration) ease-in-out;
}

/**
 * Title
 *
 * Group: Elements
 */
.title-page {
  font-family: var(--font-primary);
  font-size: var(--h2-font-size);
  letter-spacing: var(--h2-letter-spacing);
  line-height: var(--h2-line-height);
  font-weight: var(--font-weight-regular);
}
.title-section {
  font-family: var(--font-primary);
  font-size: var(--h2-font-size);
  letter-spacing: var(--h2-letter-spacing);
  line-height: var(--h2-line-height);
  font-weight: var(--font-weight-regular);
  margin-bottom: var(--spacing-200);
}

/**
 * Video
 * Group: Elements
 */
.video {
  aspect-ratio: 16/9;
  min-width: 320px;
  min-height: 180px;
  max-width: 1920px;
  max-height: 1080px;
}

/**
 * Objects Main
 * Group: Objects
 */
/**
 * Articles Group
 * Group: Objects
 */
.o-articles-group__news {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-200);
}
@media (min-width: 992px) {
  .o-articles-group__news {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    grid-template-rows: 1fr 2fr;
  }
}
.o-articles-group__news-item {
  min-height: 0;
}
@media (min-width: 992px) {
  .o-articles-group__news-item:nth-child(1) {
    grid-column: 1/span 6;
    grid-row: 1/span 2;
  }
  .o-articles-group__news-item:nth-child(2) {
    grid-column: 7/span 6;
    grid-row: 1;
  }
  .o-articles-group__news-item:nth-child(3) {
    grid-column: 7/span 6;
    grid-row: 2;
  }
}
.o-articles-group__press {
  display: grid;
  gap: var(--spacing-250);
  grid-template-columns: 1fr;
  max-width: 100%;
  margin-inline: auto;
}
@media (min-width: 768px) {
  .o-articles-group__press {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (min-width: 1200px) {
  .o-articles-group__press {
    grid-template-columns: repeat(3, 1fr);
    gap: var(--spacing-100) var(--spacing-250);
  }
}

/**
 * Aspect Ratio
 * Group: Objects
 * link: https://twitter.com/csswizardry/status/1267046214069030912
 */
@supports (padding-top: calc(var(--height) / var(--width) * 100%)) {
  .o-aspect-ratio {
    --width: 16;
    --height: 9;
    position: relative;
    background-size: cover;
  }
  .o-aspect-ratio::after {
    content: "";
    display: block;
    padding-top: calc(var(--height) / var(--width) * 100%);
  }
  .o-aspect-ratio > div,
  .o-aspect-ratio > img,
  .o-aspect-ratio > video,
  .o-aspect-ratio > iframe {
    -o-object-fit: cover;
       object-fit: cover;
    position: absolute !important;
    left: 0;
    top: 0;
    height: 100%;
    width: 100% !important;
  }
}

/* Apply aspect ratio to container */
.has-aspect-ratio {
  position: relative;
}
.has-aspect-ratio::before {
  content: "";
  display: block;
}
.has-aspect-ratio > div {
  -o-object-fit: cover;
     object-fit: cover;
  position: absolute !important;
  left: 0;
  top: 0;
  height: 100%;
  width: 100% !important;
}
.has-aspect-ratio iframe {
  height: 100%;
  width: 100%;
}

/**
 * Container
 * Group: Objects
 */
.o-container {
  max-width: var(--max-width--2xl);
  width: 100%;
  padding-inline: var(--spacing-100);
  margin-inline: auto;
  /* Container inside a container */
  /* Container inside a container but with fullwidth class between them */
}
@media (min-width: 768px) {
  .o-container {
    padding-inline: var(--spacing-200);
  }
}
@media (min-width: 992px) {
  .o-container {
    padding-inline: var(--spacing-300);
  }
}
@media (min-width: 1200px) {
  .o-container {
    padding-inline: var(--spacing-400);
  }
}
@media (min-width: 1440px) {
  .o-container {
    padding-inline: var(--spacing-500);
  }
}
.o-container [class^=o-container],
.o-container [class*=" o-container"] {
  padding-inline: 0;
}
.o-container .u-full-width [class^=o-container],
.o-container .u-full-width [class*=" o-container"] {
  padding-inline: var(--spacing-100);
}

/**
 * Cookie Dialog
 * Group: Objects
 */
.o-cookie-dialog__container {
  box-shadow: var(--box-shadow-light-03);
  position: fixed;
  bottom: var(--spacing-150);
  left: 0;
  margin-inline: var(--spacing-150);
  max-width: 45rem;
  background-color: var(--color-brand-light-gray);
  border-radius: var(--spacing-100);
  border: 3px solid var(--color-brand-orange);
  padding: var(--spacing-200);
}
.o-cookie-dialog__title {
  font-family: var(--font-primary);
  font-size: var(--h3-font-size);
  letter-spacing: var(--h3-letter-spacing);
  line-height: var(--h3-line-height);
  font-weight: var(--font-weight-regular);
  margin-bottom: var(--spacing-100);
}
.o-cookie-dialog__description {
  margin-bottom: var(--spacing-200);
}
.o-cookie-dialog__button {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  border-radius: var(--border-radius-m);
  border-width: var(--button-border-width);
  border-style: solid;
  border-color: transparent;
  font-size: var(--body-font-size);
  font-style: normal;
  font-stretch: normal;
  font-weight: var(--font-weight-regular);
  line-height: var(--leading-none);
  letter-spacing: var(--tracking-normal);
  padding-block: var(--spacing-075);
  padding-inline: var(--spacing-100);
  text-decoration: none;
  font-size: var(--body-font-size);
  font-weight: var(--font-weight-bold);
  letter-spacing: var(--tracking-normal);
  line-height: var(--leading-none);
  width: var(--spacing-1200);
  height: var(--button-size);
  border-radius: var(--btn-radius-lg);
  background-color: var(--color-brand-blue);
  border-color: var(--color-brand-blue);
  color: var(--color-light);
}
.o-cookie-dialog__button:hover, .o-cookie-dialog__button:active, .o-cookie-dialog__button:focus {
  transition: color var(--transition-duration) ease-in-out, background-color var(--transition-duration) ease-in-out, transform var(--transition-duration) ease-in-out, opacity var(--transition-duration) ease-in-out;
}
.o-cookie-dialog__button:hover:active, .o-cookie-dialog__button:active:active, .o-cookie-dialog__button:focus:active {
  transform: scale(0.9);
}
.o-cookie-dialog__button:hover {
  background-color: var(--color-brand-lighter-gray);
  color: var(--color-brand-blue);
}
.o-cookie-dialog__button:focus {
  outline-color: var(--color-focus-stroke);
}
.o-cookie-dialog__button-container {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--spacing-150);
}
@media (min-width: 576px) {
  .o-cookie-dialog__button-container {
    flex-direction: row;
    gap: var(--spacing-200);
  }
}
.o-cookie-dialog__close-button {
  position: absolute;
  top: 1rem;
  right: 1rem;
  font-size: var(--body-small-font-size);
  font-weight: var(--font-weight-bold);
  letter-spacing: var(--tracking-normal);
  line-height: var(--leading-tight);
  padding-block: var(--spacing-025);
  padding-inline: var(--spacing-075);
  border-radius: var(--btn-radius-full);
  color: var(--color-brand-orange);
}

/**
 * Dropdown
 * Group: Objects
 */
.o-dropdown {
  position: relative;
  transition: background-color ease-in-out var(--transition-duration);
}
.o-dropdown__list {
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  z-index: 5;
  background-color: var(--color-brand-search-gray);
  color: var(--color-brand-gray);
  border-bottom-left-radius: var(--border-radius-l);
  border-bottom-right-radius: var(--border-radius-l);
  padding-block: var(--spacing-025) var(--spacing-150);
  max-height: clamp(var(--spacing-1200), 45dvh, var(--spacing-2400));
  overflow: auto;
}
.o-dropdown__list-item {
  border-bottom: 1px dashed var(--color-dark);
  padding-inline: var(--spacing-150);
  padding-block: var(--spacing-050);
  cursor: pointer;
}
.o-dropdown__list-item[aria-selected=true] {
  font-weight: var(--font-weight-bold);
}
.o-dropdown__toggle-button {
  position: relative;
  z-index: 3;
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: space-between;
  border: none;
  overflow: hidden;
  padding: var(--spacing-100) var(--spacing-150);
  color: inherit;
}
.o-dropdown__display {
  color: inherit;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.o-dropdown__icon {
  width: var(--icon-ms);
  height: var(--icon-xs);
  flex: 0 0 auto;
}
.o-dropdown[aria-expanded=false] .o-dropdown__list {
  display: none;
}
.o-dropdown[aria-expanded=true] {
  background-color: var(--color-brand-orange);
  color: var(--color-light);
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}
.o-dropdown[aria-expanded=true] .o-dropdown__list {
  animation: fade-in var(--transition-duration) ease-in forwards, slide-bounce-down var(--transition-duration) ease-out forwards;
}
.o-dropdown[aria-expanded=true] .o-dropdown__icon {
  animation: rotate-180 var(--transition-duration) ease-in forwards;
}
.o-dropdown:focus-visible {
  border-color: var(--color-focus-stroke);
}

/**
 * Filters Group
 * Group: Objects
 */
.o-filter-group {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--spacing-200);
}
@media (min-width: 768px) {
  .o-filter-group {
    flex-flow: row wrap;
    justify-content: space-between;
  }
}
@media (min-width: 1440px) {
  .o-filter-group {
    row-gap: var(--spacing-100);
  }
}

/**
 * Icon Group
 * Group: Objects
 */
.o-icon-group {
  display: flex;
  flex-flow: row nowrap;
  justify-content: flex-start;
  align-items: center;
  gap: var(--spacing-150);
}

/**
 * Link box group
 * Group: Objects
 */
.o-link-box-group {
  display: grid;
  gap: var(--spacing-250);
  grid-template-columns: 1fr;
}
@media (min-width: 768px) {
  .o-link-box-group {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (min-width: 1200px) {
  .o-link-box-group {
    grid-template-columns: repeat(3, 1fr);
  }
}

/**
 * Main
 *
 * Group: Objects
 */
/**
 * Modal
 * Group: Objects
 */
/**
 * Page
 * Group: Objects
 */
.o-page--layout-with-sidebar {
  display: flex;
  flex-direction: column-reverse;
  justify-content: space-between;
  align-items: flex-start;
  gap: var(--spacing-400);
}
@media (min-width: 992px) {
  .o-page--layout-with-sidebar {
    flex-flow: row nowrap;
  }
}
.o-page--layout-with-sidebar-and-map {
  align-items: center;
}
.o-page__main {
  flex: 1;
}
.o-page__main > .o-section:first-child {
  padding-top: 0;
}
.o-page__sidebar {
  flex: 1 0 auto;
  position: relative;
  max-width: var(--max-width--4xs);
  margin-inline: auto;
}
@media (min-width: 992px) {
  .o-page__sidebar {
    margin-inline: initial;
  }
}

/**
 * Section
 * Group: Objects
 */
.o-section {
  max-width: 100%;
  padding-block: var(--spacing-400);
}
/**
 * BLOCKS MAIN FILE
 */
/**
 * Alert
 * Group: Components
 */
.c-alert--layout {
  border-radius: var(--border-radius-s);
  padding: var(--spacing-150);
}
.c-alert--info {
  color: var(--color-brand-blue-light);
  background-color: var(--color-brand-blue-light-semi-transparent);
}
.c-alert--success {
  color: var(--color-alert-green-dark);
  background-color: var(--color-brand-green);
}
.c-alert--warning {
  color: var(--color-brand-brown);
  background-color: var(--color-brand-brown-semi-transparent);
}
.c-alert--danger {
  color: var(--color-brand-dark-red);
  background-color: var(--color-brand-red-semi-transparent);
}
.c-alert--slide-up {
  animation: slide-up var(--transition-duration) ease forwards;
}
.c-alert--fade-out {
  animation: fade-out var(--transition-duration-medium) ease forwards;
}
.c-alert__title {
  font-family: var(--font-primary);
  font-size: var(--h3-font-size);
  letter-spacing: var(--h3-letter-spacing);
  line-height: var(--h3-line-height);
  font-weight: var(--font-weight-regular);
  margin-bottom: var(--spacing-050);
}
.c-alert__text {
  font-size: var(--body-font-size);
  letter-spacing: var(--body-letter-spacing);
  line-height: var(--body-line-height);
  font-weight: var(--font-weight-regular);
}

/**
 * Breadcrumb
 * Group: Components
 */
.c-breadcrumb__list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: var(--spacing-050);
}
.c-breadcrumb__item {
  font-size: var(--body-small-font-size);
  letter-spacing: var(--body-small-letter-spacing);
  line-height: var(--body-small-line-height);
  font-weight: var(--font-weight-regular);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--spacing-050);
  color: var(--color-brand-light-gray);
}
.c-breadcrumb__item-link {
  border-bottom: 1px solid transparent;
  text-decoration: none;
}
.c-breadcrumb__item-link:hover {
  text-decoration: underline;
}
.c-breadcrumb__item[aria-current=page] {
  color: var(--color-brand-orange);
  font-weight: var(--font-weight-bold);
}
.c-breadcrumb__spacer {
  display: block;
  color: var(--color-brand-light-gray);
}

/**
 * Contact
 * Group: Components
 */
.c-contact .o-section,
.c-contact .c-alert {
  padding-block: 0 var(--spacing-200);
}
.c-contact--layout {
  display: flex;
  flex-direction: column-reverse;
  gap: var(--spacing-400);
}
@media (min-width: 992px) {
  .c-contact--layout {
    flex-direction: row;
    gap: var(--spacing-200);
  }
}
.c-contact__map-container {
  flex: 1;
}
.c-contact__form-container {
  flex: 1;
}
.c-contact__form-container .field-validation-error {
  display: flex;
  align-items: center;
  height: var(--spacing-300);
  color: var(--color-brand-dark-red);
  line-height: var(--body-line-height);
  background-color: var(--color-brand-red-semi-transparent);
  border-radius: var(--border-radius-l);
  padding: var(--spacing-100);
  margin-top: var(--spacing-050);
}
.c-contact__form-container .umbraco-forms-fieldset {
  color: var(--color-light);
  background-color: var(--color-brand-blue);
  border-radius: var(--spacing-150);
  border: none;
  padding: var(--spacing-150);
}
.c-contact__form-container .umbraco-forms-field {
  margin-bottom: var(--spacing-100);
}
.c-contact__form-container .umbraco-forms-label {
  display: inline-block;
  padding-left: var(--spacing-075);
  margin-bottom: var(--spacing-050);
}
.c-contact__form-container input,
.c-contact__form-container textarea {
  font-size: var(--body-font-size);
  font-weight: var(--font-weight-bold);
  letter-spacing: var(--tracking-normal);
  line-height: var(--leading-none);
  width: var(--spacing-1200);
  height: var(--button-size);
  border-radius: var(--btn-radius-lg);
  border-radius: var(--border-radius-xs);
  border: none;
  font-size: var(--body-font-size);
  font-weight: var(--font-weight-regular);
  line-height: var(--body-line-height);
  text-indent: 0;
  background-color: var(--color-brand-search-gray);
  border-radius: var(--border-radius-l);
  height: var(--spacing-300);
  display: flex;
  flex-flow: row nowrap;
  align-items: center;
  padding: var(--spacing-100);
  color: var(--color-brand-blue);
  width: 100%;
  height: var(--spacing-350);
}
.c-contact__form-container input:hover, .c-contact__form-container input:active, .c-contact__form-container input:focus,
.c-contact__form-container textarea:hover,
.c-contact__form-container textarea:active,
.c-contact__form-container textarea:focus {
  transition: box-shadow var(--transition-duration) ease-in-out;
}
.c-contact__form-container input:hover,
.c-contact__form-container textarea:hover {
  box-shadow: var(--box-shadow-light-03);
}
.c-contact__form-container input input,
.c-contact__form-container textarea input {
  height: var(--input-height-medium);
  color: inherit;
  width: 100%;
  font-size: var(--body-font-size);
  letter-spacing: var(--body-letter-spacing);
  line-height: var(--body-line-height);
  font-weight: var(--font-weight-regular);
}
.c-contact__form-container input input::-moz-placeholder, .c-contact__form-container textarea input::-moz-placeholder {
  font-size: var(--body-font-size);
  letter-spacing: var(--body-letter-spacing);
  line-height: var(--body-line-height);
  font-weight: var(--font-weight-regular);
  color: var(--color-brand-blue);
}
.c-contact__form-container input input::placeholder,
.c-contact__form-container textarea input::placeholder {
  font-size: var(--body-font-size);
  letter-spacing: var(--body-letter-spacing);
  line-height: var(--body-line-height);
  font-weight: var(--font-weight-regular);
  color: var(--color-brand-blue);
}
.c-contact__form-container input input::-webkit-input-placeholder,
.c-contact__form-container textarea input::-webkit-input-placeholder {
  font-size: var(--body-font-size);
  letter-spacing: var(--body-letter-spacing);
  line-height: var(--body-line-height);
  font-weight: var(--font-weight-regular);
  color: var(--color-brand-blue);
}
.c-contact__form-container input input::-moz-placeholder,
.c-contact__form-container textarea input::-moz-placeholder {
  font-size: var(--body-font-size);
  letter-spacing: var(--body-letter-spacing);
  line-height: var(--body-line-height);
  font-weight: var(--font-weight-regular);
  color: var(--color-brand-blue);
  opacity: 1;
}
.c-contact__form-container input input:-ms-input-placeholder,
.c-contact__form-container textarea input:-ms-input-placeholder {
  font-size: var(--body-font-size);
  letter-spacing: var(--body-letter-spacing);
  line-height: var(--body-line-height);
  font-weight: var(--font-weight-regular);
  color: var(--color-brand-blue);
}
.c-contact__form-container input input:focus,
.c-contact__form-container textarea input:focus {
  outline: 2px solid var(--color-focus-stroke);
  outline-offset: 1px;
}
.c-contact__form-container textarea {
  height: var(--spacing-1000);
}
.c-contact__form-container input[type=submit] {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  border-radius: var(--border-radius-m);
  border-width: var(--button-border-width);
  border-style: solid;
  border-color: transparent;
  font-size: var(--body-font-size);
  font-style: normal;
  font-stretch: normal;
  font-weight: var(--font-weight-regular);
  line-height: var(--leading-none);
  letter-spacing: var(--tracking-normal);
  padding-block: var(--spacing-075);
  padding-inline: var(--spacing-100);
  text-decoration: none;
  font-size: var(--body-font-size);
  font-weight: var(--font-weight-bold);
  letter-spacing: var(--tracking-normal);
  line-height: var(--leading-none);
  width: var(--spacing-1200);
  height: var(--button-size);
  border-radius: var(--btn-radius-lg);
  background-color: var(--color-brand-orange);
  border-color: var(--color-brand-orange);
  color: var(--color-brand-dark-gray);
  margin-top: var(--spacing-150);
}
.c-contact__form-container input[type=submit]:hover, .c-contact__form-container input[type=submit]:active, .c-contact__form-container input[type=submit]:focus {
  transition: color var(--transition-duration) ease-in-out, background-color var(--transition-duration) ease-in-out, transform var(--transition-duration) ease-in-out, opacity var(--transition-duration) ease-in-out;
}
.c-contact__form-container input[type=submit]:hover:active, .c-contact__form-container input[type=submit]:active:active, .c-contact__form-container input[type=submit]:focus:active {
  transform: scale(0.9);
}
.c-contact__form-container input[type=submit]:hover {
  background-color: var(--color-brand-light-gray);
}
.c-contact__form-container input[type=submit]:focus {
  outline-color: var(--color-focus-stroke);
}
.c-contact__form-container select {
  width: 100%;
  height: var(--spacing-350);
}
.c-contact__form-container .umbraco-forms-hidden {
  display: none;
}

/**
 * Cookies
 * Group: Components
 */
.c-cookies {
  background-color: var(--color-brand-blue);
  padding-block: var(--spacing-500);
  color: var(--color-light);
  text-align: center;
}
.c-cookies__title {
  font-family: var(--font-primary);
  font-size: var(--h2-font-size);
  letter-spacing: var(--h2-letter-spacing);
  line-height: var(--h2-line-height);
  font-weight: var(--font-weight-regular);
  margin-bottom: var(--spacing-100);
}
.c-cookies__description {
  font-size: var(--body-small-font-size);
  letter-spacing: var(--body-small-letter-spacing);
  line-height: var(--body-small-line-height);
  font-weight: var(--font-weight-regular);
  margin-bottom: var(--spacing-200);
}
.c-cookies__label {
  font-size: var(--body-font-size);
  letter-spacing: var(--body-letter-spacing);
  line-height: var(--body-line-height);
  font-weight: var(--font-weight-regular);
}
.c-cookies__button {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  border-radius: var(--border-radius-m);
  border-width: var(--button-border-width);
  border-style: solid;
  border-color: transparent;
  font-size: var(--body-font-size);
  font-style: normal;
  font-stretch: normal;
  font-weight: var(--font-weight-regular);
  line-height: var(--leading-none);
  letter-spacing: var(--tracking-normal);
  padding-block: var(--spacing-075);
  padding-inline: var(--spacing-100);
  text-decoration: none;
  font-size: var(--body-font-size);
  font-weight: var(--font-weight-bold);
  letter-spacing: var(--tracking-normal);
  line-height: var(--leading-none);
  width: var(--spacing-1200);
  height: var(--button-size);
  border-radius: var(--btn-radius-lg);
  background-color: var(--color-brand-orange);
  border-color: var(--color-brand-orange);
  color: var(--color-brand-dark-gray);
}
.c-cookies__button:hover, .c-cookies__button:active, .c-cookies__button:focus {
  transition: color var(--transition-duration) ease-in-out, background-color var(--transition-duration) ease-in-out, transform var(--transition-duration) ease-in-out, opacity var(--transition-duration) ease-in-out;
}
.c-cookies__button:hover:active, .c-cookies__button:active:active, .c-cookies__button:focus:active {
  transform: scale(0.9);
}
.c-cookies__button:hover {
  background-color: var(--color-brand-light-gray);
}
.c-cookies__button:focus {
  outline-color: var(--color-focus-stroke);
}

/**
 * Documentation listing
 * Group: Components
 */
.c-document-listing__item {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: var(--spacing-075);
  border-bottom: 1px solid var(--color-brand-orange);
  padding-block: var(--spacing-200);
  padding-inline: var(--spacing-125);
}
.c-document-listing__item:hover {
  background-color: var(--color-brand-lighter-gray);
}
.c-document-listing__item-title {
  font-family: var(--font-primary);
  font-size: var(--h6-font-size);
  letter-spacing: var(--h6-letter-spacing);
  line-height: var(--h6-line-height);
  font-weight: var(--font-weight-bold);
  color: var(--color-light);
  background-color: var(--color-brand-blue);
  padding-block: var(--spacing-200);
  padding-inline: var(--spacing-050);
  border-bottom: 1px solid var(--color-brand-orange);
}
.c-document-listing__item-link {
  display: block;
  text-decoration: none;
}
.c-document-listing__item-link:hover {
  color: var(--color-brand-orange);
}

/**
 * Filter
 * Group: Components
 */
.c-filter--layout {
  position: relative;
  background-color: var(--color-brand-blue);
  padding-block: var(--spacing-400) var(--spacing-300);
  padding-inline: var(--spacing-100);
}
.c-filter__container {
  max-width: var(--max-width--md);
  margin-inline: auto;
}
.c-filter__title {
  font-family: var(--font-primary);
  font-size: var(--h2-font-size);
  letter-spacing: var(--h2-letter-spacing);
  line-height: var(--h2-line-height);
  font-weight: var(--font-weight-regular);
  margin-bottom: var(--spacing-150);
}
.c-filter .c-alert {
  max-width: var(--max-width--md);
  margin-inline: auto;
  margin-block: var(--spacing-250) 0;
}

/**
 * Footer
 * Group: Components
 */
.c-footer {
  color: var(--color-brand-white);
  position: relative;
  margin-top: auto;
}
.c-footer__main {
  background-color: var(--color-brand-blue);
}
.c-footer__main-inner {
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  gap: 3rem;
  padding-block: var(--spacing-500);
}
@media (min-width: 576px) {
  .c-footer__main-inner {
    grid-template-columns: repeat(2, 1fr);
    gap: 4rem;
  }
}
@media (min-width: 992px) {
  .c-footer__main-inner {
    grid-template-columns: repeat(4, 1fr);
    gap: 4rem;
  }
}
@media (min-width: 1440px) {
  .c-footer__main-inner {
    gap: 10rem;
  }
}
.c-footer__logo-text {
  margin-top: var(--spacing-150);
  color: var(--color-brand-light-gray);
}
.c-footer__column-title {
  font-size: var(--body-font-size);
  letter-spacing: var(--body-letter-spacing);
  line-height: var(--body-line-height);
  font-weight: var(--font-weight-bold);
  margin-bottom: var(--spacing-075);
}
.c-footer__column-link {
  font-size: var(--body-small-font-size);
  letter-spacing: var(--body-small-letter-spacing);
  line-height: var(--body-small-line-height);
  font-weight: var(--font-weight-regular);
  text-decoration: none;
}
.c-footer__column-link:hover {
  color: var(--color-brand-orange);
}
@media (min-width: 1440px) {
  .c-footer__column:first-child {
    max-width: 160px;
  }
}
.c-footer__bottom__logos-container {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 1rem;
  padding-block: var(--spacing-075);
}
@media (min-width: 768px) {
  .c-footer__bottom__logos-container {
    gap: 2rem;
  }
}
.c-footer__bottom__logo {
  height: var(--spacing-300);
}
.c-footer__bottom__logo picture,
.c-footer__bottom__logo img {
  height: 100%;
}
.c-footer__bottom__copyright {
  background-color: var(--color-brand-blue);
  color: var(--color-light);
  text-align: center;
  padding-block: var(--spacing-125);
}
.c-footer__bottom__copyright-text {
  font-size: var(--body-font-size);
  letter-spacing: var(--body-letter-spacing);
  line-height: var(--body-line-height);
  font-weight: var(--font-weight-regular);
}

/**
 * Header Main
 * Group: Custom Components
 */
.c-header {
  flex: 0 0 auto;
  position: relative;
  width: 100%;
  z-index: 10;
  /*
   * Header Parts
   */
  /* Branding */
  /*
   * Search container in main with toggle buttons
   */
  /*
   * Main menu toggle parts
   */
}
.c-header__top-bar {
  background-color: var(--color-brand-blue);
}
.c-header__top-bar-inner {
  height: var(--header-top-bar-height);
  display: flex;
  justify-content: space-between;
  align-items: center;
  color: var(--color-light);
}
.c-header__top-bar-inner .search {
  display: none;
}
@media (min-width: 992px) {
  .c-header__top-bar-inner .search {
    display: flex;
  }
}
@media (min-width: 992px) {
  .c-header__top-bar-inner .social-links {
    gap: var(--spacing-300);
  }
}
.c-header__main {
  position: relative;
}
.c-header__main-inner {
  height: var(--header-main-bar-height);
  display: flex;
  justify-content: flex-end;
  align-items: center;
}
.c-header__main-inner > :nth-child(2) {
  margin-left: auto;
}
.c-header__logo {
  margin-right: auto;
}
.c-header__search-container {
  display: flex;
  align-items: center;
}
@media (min-width: 992px) {
  .c-header__search-container {
    display: none;
  }
}
.c-header__toggle-burger-icon, .c-header__toggle-close-icon {
  display: none;
  width: var(--icon-sm);
  height: var(--icon-sm);
}
.c-header__toggle-menu {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  border-radius: var(--border-radius-m);
  border-width: var(--button-border-width);
  border-style: solid;
  border-color: transparent;
  font-size: var(--body-font-size);
  font-style: normal;
  font-stretch: normal;
  font-weight: var(--font-weight-regular);
  line-height: var(--leading-none);
  letter-spacing: var(--tracking-normal);
  padding-block: var(--spacing-075);
  padding-inline: var(--spacing-100);
  text-decoration: none;
  font-size: var(--body-small-font-size);
  font-weight: var(--font-weight-regular);
  letter-spacing: var(--tracking-normal);
  line-height: var(--leading-none);
  padding-block: var(--spacing-025);
  padding-inline: var(--spacing-075);
  border-radius: var(--btn-radius);
  color: var(--color-brand-blue);
}
.c-header__toggle-menu:hover, .c-header__toggle-menu:active, .c-header__toggle-menu:focus {
  transition: color var(--transition-duration) ease-in-out, background-color var(--transition-duration) ease-in-out, transform var(--transition-duration) ease-in-out, opacity var(--transition-duration) ease-in-out;
}
.c-header__toggle-menu:hover:active, .c-header__toggle-menu:active:active, .c-header__toggle-menu:focus:active {
  transform: scale(0.9);
}
.c-header__toggle-menu:hover {
  color: var(--color-brand-orange);
}
.c-header__toggle-menu[aria-expanded=true] .c-header__toggle-close-icon {
  display: block;
  animation: fade-in var(--transition-duration) ease-in forwards;
}
.c-header__toggle-menu[aria-expanded=true] .c-header__toggle-burger-icon {
  animation: fade-out var(--transition-duration) ease-in forwards;
}
@media (min-width: 992px) {
  .c-header__toggle-menu[aria-expanded=true] {
    display: none;
  }
}
.c-header__toggle-menu[aria-expanded=false] .c-header__toggle-burger-icon {
  display: block;
}
@media (min-width: 992px) {
  .c-header__toggle-menu[aria-expanded=false] {
    display: none;
  }
}
.c-header__content-wrapper {
  display: none;
  position: fixed;
  inset: var(--header-height) 0 0 0;
  z-index: 10;
  overflow-y: auto;
  height: calc(100dvh - var(--header-height));
  background-color: var(--color-brand-blue);
  color: var(--color-light);
  width: 100%;
}
@media (min-width: 992px) {
  .c-header__content-wrapper {
    display: block;
    position: relative;
    inset: unset;
    overflow-y: visible;
    z-index: inherit;
    height: auto;
    width: auto;
    background-color: transparent;
    padding: 0;
  }
}
.c-header__content-wrapper[data-expanded=true] {
  display: block;
  animation: fade-in var(--transition-duration) ease-in forwards;
}

/**
 * Image Links
 * Group: Components
 */
.c-image-links__wrapper {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: var(--spacing-200) var(--spacing-100);
}
.c-image-links__link {
  height: var(--spacing-700);
}

/**
 * Text and Image
 * Group: Components
 * Views: Section Image And Text Block
 */
.c-image-text {
  position: relative;
}
.c-image-text--layout {
  display: flex;
  flex-flow: column nowrap;
  gap: var(--spacing-150);
}
@media (min-width: 768px) {
  .c-image-text--layout {
    flex-flow: row nowrap;
    gap: var(--spacing-200);
  }
}
.c-image-text--reversed {
  flex-flow: column nowrap;
}
@media (min-width: 768px) {
  .c-image-text--reversed {
    flex-flow: row-reverse nowrap;
  }
}
.c-image-text__image-wrap {
  display: flex;
  justify-content: center;
  align-items: center;
}
@media (min-width: 768px) {
  .c-image-text__image-wrap {
    flex: 1;
  }
}
.c-image-text__text-wrap {
  display: flex;
  flex-direction: column;
  justify-content: center;
}
@media (min-width: 768px) {
  .c-image-text__text-wrap {
    flex: 1;
  }
}
.c-image-text__eyebrow {
  font-size: var(--body-small-font-size);
  letter-spacing: var(--body-small-letter-spacing);
  line-height: var(--body-small-line-height);
  font-weight: var(--font-weight-regular);
  color: var(--color-brand-blue);
  margin-bottom: var(--spacing-075);
}
.c-image-text__title {
  font-family: var(--font-primary);
  font-size: var(--h3-font-size);
  letter-spacing: var(--h3-letter-spacing);
  line-height: var(--h3-line-height);
  font-weight: var(--font-weight-regular);
  margin-bottom: var(--spacing-100);
  color: var(--color-brand-dark-gray);
}
.c-image-text__text {
  font-size: var(--body-font-size);
  letter-spacing: var(--body-letter-spacing);
  line-height: var(--body-line-height);
  font-weight: var(--font-weight-regular);
  color: var(--color-brand-gray);
}

/**
 * Link box
 * Group: Components
 */
.c-link-box--layout {
  position: relative;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: var(--spacing-150);
  padding: var(--spacing-200) var(--spacing-150);
  color: var(--color-light);
  background-color: var(--color-brand-blue);
  border: 2px solid var(--color-brand-blue);
  border-radius: var(--border-radius-m);
  text-decoration: none;
  height: 100%;
  transition: background-color var(--transition-duration) ease-in-out, color var(--transition-duration) ease-in-out;
}
.c-link-box--layout:hover {
  background-color: transparent;
  color: var(--color-brand-blue);
}
.c-link-box--layout:hover .c-link-box__icon {
  color: var(--color-brand-blue);
}
.c-link-box--layout:hover .c-link-box__icon--wrapper {
  background-color: transparent;
  border-color: var(--color-brand-blue);
}
.c-link-box__content__title {
  font-family: var(--font-primary);
  font-size: var(--h5-font-size);
  letter-spacing: var(--h5-letter-spacing);
  line-height: var(--h5-line-height);
  font-weight: var(--font-weight-regular);
  color: inherit;
}
.c-link-box__content__description {
  font-size: var(--body-small-font-size);
  letter-spacing: var(--body-small-letter-spacing);
  line-height: var(--body-small-line-height);
  font-weight: var(--font-weight-regular);
  margin-top: var(--spacing-025);
  color: inherit;
}
.c-link-box__icon {
  width: var(--icon-sm);
  max-height: var(--icon-sm);
  height: auto;
  color: var(--color-light);
  transition: color var(--transition-duration) ease-in-out;
}
.c-link-box__icon--wrapper {
  flex: none;
  display: grid;
  place-items: center;
  width: var(--icon-xl);
  height: var(--icon-xl);
  position: relative;
  border: 2px solid transparent;
  border-radius: var(--border-radius-full);
  background-color: var(--color-brand-blue-semi-transparent);
  transition: background-color var(--transition-duration) ease-in-out, border var(--transition-duration) ease-in-out;
}

/**
 * Intro Banner
 * Group: Components
 */
.c-intro-banner--layout {
  position: relative;
  width: 100%;
  max-height: var(--max-height-intro-banner);
  overflow: hidden;
  aspect-ratio: 4/3;
}
@media (min-width: 576px) {
  .c-intro-banner--layout {
    aspect-ratio: 36/17;
  }
}
@media (min-width: 768px) and (max-width: 991.98px) {
  .c-intro-banner.withVideo .c-intro-banner--layout {
    max-height: unset;
    aspect-ratio: auto;
  }
  .c-intro-banner.withVideo .c-intro-banner__media {
    height: auto;
    padding: 2rem;
  }
}
.c-intro-banner__media {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-around;
  gap: 3rem;
  height: 100%;
  max-width: var(--max-width--2xl);
  padding-inline: 1rem;
  margin: 0 auto;
}
@media (min-width: 992px) {
  .c-intro-banner__media {
    flex-direction: row;
    gap: 5rem;
    height: 100%;
    padding-inline: 3rem;
  }
}
.c-intro-banner__image {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.c-intro-banner__image-wrap {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  max-height: 100%;
  z-index: -1;
}
.c-intro-banner__image-wrap::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  background-color: var(--overlay-color-light);
}
.c-intro-banner__image-wrap picture {
  height: 100%;
}
@media (min-width: 576px) {
  .c-intro-banner__image-wrap picture {
    height: auto;
  }
}
.c-intro-banner__text-wrap {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-150);
  align-items: center;
  justify-content: center;
  height: 100%;
}
@media (min-width: 576px) {
  .c-intro-banner__text-wrap {
    gap: var(--spacing-250);
  }
}
.c-intro-banner__video-wrap {
  display: none;
  width: 100%;
  max-width: 720px;
  overflow: hidden;
  border-radius: var(--border-radius-m);
  border: 2px solid var(--color-brand-blue);
}
@media (min-width: 768px) {
  .c-intro-banner__video-wrap {
    display: block;
  }
}
.c-intro-banner__video-wrap .video-box {
  position: relative;
  width: 100%;
  padding-top: 56.25%; /* 16:9 aspect ratio */
  background-color: #000;
  overflow: hidden;
}
.c-intro-banner__video-wrap video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: block;
  -o-object-fit: contain;
     object-fit: contain;
}
.c-intro-banner__title {
  font-family: var(--font-primary);
  font-size: var(--h2-font-size);
  letter-spacing: var(--h2-letter-spacing);
  line-height: var(--h2-line-height);
  font-weight: var(--font-weight-bold);
  text-align: center;
  color: var(--color-light);
}
@media (min-width: 768px) {
  .c-intro-banner__title {
    font-family: var(--font-primary);
    font-size: var(--h1-font-size);
    letter-spacing: var(--h1-letter-spacing);
    line-height: var(--h1-line-height);
    font-weight: var(--font-weight-bold);
  }
}
.c-intro-banner__subtitle {
  font-family: var(--font-primary);
  font-size: var(--h3-font-size);
  letter-spacing: var(--h3-letter-spacing);
  line-height: var(--h3-line-height);
  font-weight: var(--font-weight-bold);
  text-align: center;
  color: var(--color-light);
}
@media (min-width: 768px) {
  .c-intro-banner__subtitle {
    font-family: var(--font-primary);
    font-size: var(--h1-font-size);
    letter-spacing: var(--h1-letter-spacing);
    line-height: var(--h1-line-height);
    font-weight: var(--font-weight-bold);
  }
}
.c-intro-banner__buttons-group {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: var(--spacing-100);
}
@media (min-width: 576px) {
  .c-intro-banner__buttons-group {
    flex-direction: row;
  }
}
.c-intro-banner__button {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  border-radius: var(--border-radius-m);
  border-width: var(--button-border-width);
  border-style: solid;
  border-color: transparent;
  font-size: var(--body-font-size);
  font-style: normal;
  font-stretch: normal;
  font-weight: var(--font-weight-regular);
  line-height: var(--leading-none);
  letter-spacing: var(--tracking-normal);
  padding-block: var(--spacing-075);
  padding-inline: var(--spacing-100);
  text-decoration: none;
  font-size: var(--body-font-size);
  font-weight: var(--font-weight-bold);
  letter-spacing: var(--tracking-normal);
  line-height: var(--leading-none);
  width: var(--spacing-1200);
  height: var(--button-size);
  border-radius: var(--btn-radius-lg);
}
.c-intro-banner__button:hover, .c-intro-banner__button:active, .c-intro-banner__button:focus {
  transition: color var(--transition-duration) ease-in-out, background-color var(--transition-duration) ease-in-out, transform var(--transition-duration) ease-in-out, opacity var(--transition-duration) ease-in-out;
}
.c-intro-banner__button:hover:active, .c-intro-banner__button:active:active, .c-intro-banner__button:focus:active {
  transform: scale(0.9);
}
.c-intro-banner__button--primary {
  background-color: var(--color-brand-orange);
  border-color: var(--color-brand-orange);
  color: var(--color-brand-dark-gray);
}
.c-intro-banner__button--primary:hover {
  background-color: var(--color-brand-light-gray);
}
.c-intro-banner__button--primary:focus {
  outline-color: var(--color-focus-stroke);
}

/**
 * List block
 * Group: Components
 */
.c-list__title {
  font-family: var(--font-primary);
  font-size: var(--h2-font-size);
  letter-spacing: var(--h2-letter-spacing);
  line-height: var(--h2-line-height);
  font-weight: var(--font-weight-regular);
  color: var(--color-brand-dark-gray);
  margin: 0 0 var(--spacing-150);
}
.c-list__text {
  font-size: var(--body-font-size);
  letter-spacing: var(--body-letter-spacing);
  line-height: var(--body-line-height);
  font-weight: var(--font-weight-regular);
  color: var(--color-brand-dark-gray);
}

/**
 * Map
 * Group: Components
 */
.c-map {
  max-width: 100%;
  overflow: hidden;
  min-height: var(--min-height-map-parmacy);
}
.c-map__container {
  aspect-ratio: 4/3;
  width: 100%;
  height: auto;
  z-index: 0;
}
.c-map--map-list {
  min-height: var(--min-height-map-parmacy);
  max-height: var(--max-height-map-list);
  margin-inline: auto;
}
.c-map__google-map {
  position: relative;
  aspect-ratio: 2.183/1;
  width: 100%;
}

/**
 * News
 * Group: Components
 */
.c-news__header {
  color: var(--color-brand-dark-gray);
}
.c-news__title {
  font-family: var(--font-primary);
  font-size: var(--h3-font-size);
  letter-spacing: var(--h3-letter-spacing);
  line-height: var(--h3-line-height);
  font-weight: var(--font-weight-regular);
  color: inherit;
  text-decoration: none;
}
.c-news__badge {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  border-radius: var(--border-radius-m);
  border-width: var(--button-border-width);
  border-style: solid;
  border-color: transparent;
  font-size: var(--body-font-size);
  font-style: normal;
  font-stretch: normal;
  font-weight: var(--font-weight-regular);
  line-height: var(--leading-none);
  letter-spacing: var(--tracking-normal);
  padding-block: var(--spacing-075);
  padding-inline: var(--spacing-100);
  text-decoration: none;
  font-size: var(--body-small-font-size);
  font-weight: var(--font-weight-regular);
  letter-spacing: var(--tracking-normal);
  line-height: var(--leading-none);
  padding-block: var(--spacing-025);
  padding-inline: var(--spacing-075);
  border-radius: var(--btn-radius);
  background-color: var(--color-brand-orange);
  border-color: var(--color-brand-orange);
  color: var(--color-brand-dark-gray);
  font-weight: 500;
  text-transform: uppercase;
  margin-top: var(--spacing-150);
}
.c-news__badge:hover, .c-news__badge:active, .c-news__badge:focus {
  transition: color var(--transition-duration) ease-in-out, background-color var(--transition-duration) ease-in-out, transform var(--transition-duration) ease-in-out, opacity var(--transition-duration) ease-in-out;
}
.c-news__badge:hover:active, .c-news__badge:active:active, .c-news__badge:focus:active {
  transform: scale(0.9);
}
.c-news__badge:hover {
  background-color: var(--color-brand-light-gray);
}
.c-news__badge:focus {
  outline-color: var(--color-focus-stroke);
}
.c-news__date {
  font-size: var(--body-small-font-size);
  letter-spacing: var(--body-small-letter-spacing);
  line-height: var(--body-small-line-height);
  font-weight: var(--font-weight-medium);
  display: block;
  color: var(--color-brand-blue);
  margin-block: var(--spacing-075);
}
@media (min-width: 992px) {
  .c-news__date {
    margin-block: 0 var(--spacing-075);
  }
}
.c-news__link {
  display: flex;
  justify-content: space-between;
  gap: var(--spacing-100);
  text-decoration: none;
  color: var(--color-brand-dark-gray);
}
.c-news__link:hover {
  color: var(--color-brand-orange);
}
.c-news__icon {
  width: var(--icon-ms);
  max-height: var(--icon-ms);
  height: auto;
  color: inherit;
  flex-shrink: 0;
}
.c-news__cta-button {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  border-radius: var(--border-radius-m);
  border-width: var(--button-border-width);
  border-style: solid;
  border-color: transparent;
  font-size: var(--body-font-size);
  font-style: normal;
  font-stretch: normal;
  font-weight: var(--font-weight-regular);
  line-height: var(--leading-none);
  letter-spacing: var(--tracking-normal);
  padding-block: var(--spacing-075);
  padding-inline: var(--spacing-100);
  text-decoration: none;
  font-size: var(--body-font-size);
  font-weight: var(--font-weight-semibold);
  letter-spacing: var(--tracking-normal);
  line-height: var(--leading-none);
  padding-block: var(--spacing-100);
  padding-inline: var(--spacing-600);
  border-radius: var(--btn-radius-lg);
  background-color: var(--color-brand-orange);
  border-color: var(--color-brand-orange);
  color: var(--color-brand-dark-gray);
  margin-inline: auto;
}
.c-news__cta-button:hover, .c-news__cta-button:active, .c-news__cta-button:focus {
  transition: color var(--transition-duration) ease-in-out, background-color var(--transition-duration) ease-in-out, transform var(--transition-duration) ease-in-out, opacity var(--transition-duration) ease-in-out;
}
.c-news__cta-button:hover:active, .c-news__cta-button:active:active, .c-news__cta-button:focus:active {
  transform: scale(0.9);
}
.c-news__cta-button:hover {
  background-color: var(--color-brand-light-gray);
}
.c-news__cta-button:focus {
  outline-color: var(--color-focus-stroke);
}
.c-news__cta-button--wrapper {
  text-align: center;
  margin-top: var(--spacing-200);
}
.c-news--colored-background {
  background-color: var(--color-brand-light-gray);
}
@media (min-width: 992px) {
  .c-news-article {
    display: flex;
    gap: var(--spacing-150);
    flex-direction: row;
  }
  .c-news-article:nth-child(1) {
    flex-direction: column;
  }
  .c-news-article:nth-child(1) .c-news-article__image--wrapper {
    aspect-ratio: 16/9;
  }
  .c-news-article:nth-child(2) .c-news-article__image--wrapper {
    aspect-ratio: 3/2;
  }
  .c-news-article:nth-child(2) .c-news__title {
    font-family: var(--font-primary);
    font-size: var(--h5-font-size);
    letter-spacing: var(--h5-letter-spacing);
    line-height: var(--h5-line-height);
    font-weight: var(--font-weight-medium);
    color: inherit;
    text-decoration: none;
  }
  .c-news-article:nth-child(3) .c-news-article__image--wrapper {
    aspect-ratio: 4/5;
  }
  .c-news-article:nth-child(3) .c-news__title {
    font-family: var(--font-primary);
    font-size: var(--h5-font-size);
    letter-spacing: var(--h5-letter-spacing);
    line-height: var(--h5-line-height);
    font-weight: var(--font-weight-medium);
    color: inherit;
    text-decoration: none;
  }
}
.c-news-article__image {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
@media (min-width: 992px) {
  .c-news-article__image {
    position: absolute;
    inset: 0;
  }
}
.c-news-article__image--wrapper {
  flex: 1;
  position: relative;
  overflow: hidden;
  width: 100%;
  height: 100%;
  max-height: clamp(var(--spacing-500), 50dvw, var(--max-height-image-news));
}
.c-news-article__content {
  flex: 1;
}
.c-news-article__summary {
  font-size: var(--body-font-size);
  letter-spacing: var(--body-letter-spacing);
  line-height: var(--body-line-height);
  font-weight: var(--font-weight-regular);
  margin-top: var(--spacing-075);
  color: var(--color-brand-gray);
}
.c-news-article-page__image--wrapper {
  max-width: 100%;
  margin-bottom: var(--spacing-100);
}
.c-news-article-page__text {
  font-size: var(--body-font-size);
  letter-spacing: var(--body-letter-spacing);
  line-height: var(--body-line-height);
  font-weight: var(--font-weight-regular);
  color: var(--color-brand-gray);
  margin-bottom: var(--spacing-200);
}
.c-news-press__summary {
  font-size: var(--body-font-size);
  letter-spacing: var(--body-letter-spacing);
  line-height: var(--body-line-height);
  font-weight: var(--font-weight-regular);
  display: -webkit-box;
  -webkit-line-clamp: 5;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  margin-top: var(--spacing-075);
  color: var(--color-brand-gray);
}
.c-news-competitions__list {
  padding-bottom: var(--spacing-100);
}
.c-news-competitions__item {
  padding-bottom: var(--spacing-300);
  margin-bottom: var(--spacing-200);
  border-bottom: 1px solid var(--color-dark);
}
.c-news-competitions__summary {
  font-size: var(--body-font-size);
  letter-spacing: var(--body-letter-spacing);
  line-height: var(--body-line-height);
  font-weight: var(--font-weight-regular);
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  margin-top: var(--spacing-075);
  color: var(--color-brand-gray);
}

/**
 * Newsletter
 * Group: Components
 */
.c-newsletter {
  background-color: var(--color-brand-blue);
  padding-block: var(--spacing-500);
  color: var(--color-light);
  text-align: center;
}
.c-newsletter__title {
  font-family: var(--font-primary);
  font-size: var(--h2-font-size);
  letter-spacing: var(--h2-letter-spacing);
  line-height: var(--h2-line-height);
  font-weight: var(--font-weight-regular);
  margin-bottom: var(--spacing-100);
}
.c-newsletter__description {
  font-size: var(--body-small-font-size);
  letter-spacing: var(--body-small-letter-spacing);
  line-height: var(--body-small-line-height);
  font-weight: var(--font-weight-regular);
  max-width: var(--max-width--4xs);
  margin-inline: auto;
  margin-bottom: var(--spacing-200);
}
.c-newsletter__form {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: var(--spacing-250);
  width: -moz-max-content;
  width: max-content;
  margin-inline: auto;
}
@media (min-width: 768px) {
  .c-newsletter__form {
    flex-direction: row;
    gap: var(--spacing-075);
  }
}
.c-newsletter__form .field-validation-error {
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  display: flex;
  align-items: center;
  height: var(--spacing-300);
  color: var(--color-brand-dark-red);
  line-height: var(--body-line-height);
  background-color: var(--color-brand-red-semi-transparent);
  border-radius: var(--border-radius-l);
  padding: var(--spacing-100);
  margin-top: var(--spacing-050);
}
.c-newsletter__input {
  font-size: var(--body-font-size);
  font-weight: var(--font-weight-bold);
  letter-spacing: var(--tracking-normal);
  line-height: var(--leading-none);
  width: var(--spacing-1200);
  height: var(--button-size);
  border-radius: var(--btn-radius-lg);
  border-radius: var(--border-radius-xs);
  border: none;
  font-size: var(--body-font-size);
  font-weight: var(--font-weight-regular);
  line-height: var(--body-line-height);
  text-indent: 0;
  background-color: var(--color-brand-search-gray);
  border-radius: var(--border-radius-l);
  height: var(--spacing-300);
  display: flex;
  flex-flow: row nowrap;
  align-items: center;
  padding: var(--spacing-100);
  color: var(--color-brand-blue);
}
.c-newsletter__input:hover, .c-newsletter__input:active, .c-newsletter__input:focus {
  transition: box-shadow var(--transition-duration) ease-in-out;
}
.c-newsletter__input:hover {
  box-shadow: var(--box-shadow-light-03);
}
.c-newsletter__input input {
  height: var(--input-height-medium);
  color: inherit;
  width: 100%;
  font-size: var(--body-font-size);
  letter-spacing: var(--body-letter-spacing);
  line-height: var(--body-line-height);
  font-weight: var(--font-weight-regular);
}
.c-newsletter__input input::-moz-placeholder {
  font-size: var(--body-font-size);
  letter-spacing: var(--body-letter-spacing);
  line-height: var(--body-line-height);
  font-weight: var(--font-weight-regular);
  color: var(--color-brand-blue);
}
.c-newsletter__input input::placeholder {
  font-size: var(--body-font-size);
  letter-spacing: var(--body-letter-spacing);
  line-height: var(--body-line-height);
  font-weight: var(--font-weight-regular);
  color: var(--color-brand-blue);
}
.c-newsletter__input input::-webkit-input-placeholder {
  font-size: var(--body-font-size);
  letter-spacing: var(--body-letter-spacing);
  line-height: var(--body-line-height);
  font-weight: var(--font-weight-regular);
  color: var(--color-brand-blue);
}
.c-newsletter__input input::-moz-placeholder {
  font-size: var(--body-font-size);
  letter-spacing: var(--body-letter-spacing);
  line-height: var(--body-line-height);
  font-weight: var(--font-weight-regular);
  color: var(--color-brand-blue);
  opacity: 1;
}
.c-newsletter__input input:-ms-input-placeholder {
  font-size: var(--body-font-size);
  letter-spacing: var(--body-letter-spacing);
  line-height: var(--body-line-height);
  font-weight: var(--font-weight-regular);
  color: var(--color-brand-blue);
}
.c-newsletter__input input:focus {
  outline: 2px solid var(--color-focus-stroke);
  outline-offset: 1px;
}
.c-newsletter__input input::-moz-placeholder {
  font-size: var(--body-font-size);
  letter-spacing: var(--body-letter-spacing);
  line-height: var(--body-line-height);
  font-weight: var(--font-weight-bold);
  text-align: center;
  border: none;
}
.c-newsletter__input input::placeholder {
  font-size: var(--body-font-size);
  letter-spacing: var(--body-letter-spacing);
  line-height: var(--body-line-height);
  font-weight: var(--font-weight-bold);
  text-align: center;
  border: none;
}
.c-newsletter__input input::-webkit-input-placeholder {
  font-size: var(--body-font-size);
  letter-spacing: var(--body-letter-spacing);
  line-height: var(--body-line-height);
  font-weight: var(--font-weight-bold);
  text-align: center;
  border: none;
}
.c-newsletter__input input::-moz-placeholder {
  font-size: var(--body-font-size);
  letter-spacing: var(--body-letter-spacing);
  line-height: var(--body-line-height);
  font-weight: var(--font-weight-bold);
  text-align: center;
  border: none;
  opacity: 1;
}
.c-newsletter__input input:-ms-input-placeholder {
  font-size: var(--body-font-size);
  letter-spacing: var(--body-letter-spacing);
  line-height: var(--body-line-height);
  font-weight: var(--font-weight-bold);
  text-align: center;
  border: none;
}
.c-newsletter__button {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  border-radius: var(--border-radius-m);
  border-width: var(--button-border-width);
  border-style: solid;
  border-color: transparent;
  font-size: var(--body-font-size);
  font-style: normal;
  font-stretch: normal;
  font-weight: var(--font-weight-regular);
  line-height: var(--leading-none);
  letter-spacing: var(--tracking-normal);
  padding-block: var(--spacing-075);
  padding-inline: var(--spacing-100);
  text-decoration: none;
  font-size: var(--body-font-size);
  font-weight: var(--font-weight-bold);
  letter-spacing: var(--tracking-normal);
  line-height: var(--leading-none);
  width: var(--spacing-1200);
  height: var(--button-size);
  border-radius: var(--btn-radius-lg);
  background-color: var(--color-brand-orange);
  border-color: var(--color-brand-orange);
  color: var(--color-brand-dark-gray);
}
.c-newsletter__button:hover, .c-newsletter__button:active, .c-newsletter__button:focus {
  transition: color var(--transition-duration) ease-in-out, background-color var(--transition-duration) ease-in-out, transform var(--transition-duration) ease-in-out, opacity var(--transition-duration) ease-in-out;
}
.c-newsletter__button:hover:active, .c-newsletter__button:active:active, .c-newsletter__button:focus:active {
  transform: scale(0.9);
}
.c-newsletter__button:hover {
  background-color: var(--color-brand-light-gray);
}
.c-newsletter__button:focus {
  outline-color: var(--color-focus-stroke);
}

/**
 * Not Found Page 404
 * Group: Components
 */
.c-not-found--layout {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.c-not-found__title {
  font-family: var(--font-primary);
  font-size: var(--h2-font-size);
  letter-spacing: var(--h2-letter-spacing);
  line-height: var(--h2-line-height);
  font-weight: var(--font-weight-regular);
  font-size: 9.5rem;
  color: var(--color-brand-blue);
  text-align: center;
  line-height: 1;
}
.c-not-found__text {
  font-size: var(--body-small-font-size);
  letter-spacing: var(--body-small-letter-spacing);
  line-height: var(--body-small-line-height);
  font-weight: var(--font-weight-regular);
  text-align: center;
}
.c-not-found__back-to-home {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  border-radius: var(--border-radius-m);
  border-width: var(--button-border-width);
  border-style: solid;
  border-color: transparent;
  font-size: var(--body-font-size);
  font-style: normal;
  font-stretch: normal;
  font-weight: var(--font-weight-regular);
  line-height: var(--leading-none);
  letter-spacing: var(--tracking-normal);
  padding-block: var(--spacing-075);
  padding-inline: var(--spacing-100);
  text-decoration: none;
  font-size: var(--body-font-size);
  font-weight: var(--font-weight-bold);
  letter-spacing: var(--tracking-normal);
  line-height: var(--leading-none);
  width: var(--spacing-1200);
  height: var(--button-size);
  border-radius: var(--btn-radius-lg);
  background-color: var(--color-brand-orange);
  border-color: var(--color-brand-orange);
  color: var(--color-brand-dark-gray);
  text-transform: uppercase;
  text-align: center;
  margin-top: var(--spacing-250);
}
.c-not-found__back-to-home:hover, .c-not-found__back-to-home:active, .c-not-found__back-to-home:focus {
  transition: color var(--transition-duration) ease-in-out, background-color var(--transition-duration) ease-in-out, transform var(--transition-duration) ease-in-out, opacity var(--transition-duration) ease-in-out;
}
.c-not-found__back-to-home:hover:active, .c-not-found__back-to-home:active:active, .c-not-found__back-to-home:focus:active {
  transform: scale(0.9);
}
.c-not-found__back-to-home:hover {
  background-color: var(--color-brand-light-gray);
}
.c-not-found__back-to-home:focus {
  outline-color: var(--color-focus-stroke);
}

/**
 * Page Banner
 * Group: Components
 */
.c-page-banner {
  background-color: var(--color-brand-blue);
  padding-block: var(--spacing-200);
  color: var(--color-light);
  text-align: center;
  border-bottom: 5px solid var(--color-brand-orange);
}
@media (min-width: 768px) {
  .c-page-banner {
    padding-block: var(--spacing-400);
  }
}
.c-page-banner__title {
  margin-bottom: var(--spacing-150);
}

/**
 * PDF Viewer
 * Group: Components
 */
.c-pdf-viewer canvas {
  max-width: 100%;
  border-radius: var(--spacing-200);
  border: 4px solid var(--color-brand-blue);
  margin-block: var(--spacing-200);
}
.c-pdf-viewer__nav {
  display: flex;
  align-items: center;
  justify-content: center;
  max-width: 900px;
  margin-bottom: var(--spacing-200);
}
.c-pdf-viewer__nav-text {
  display: flex;
  font-weight: var(--font-weight-medium);
  margin-inline: var(--spacing-150);
}
.c-pdf-viewer__nav-button {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  border-radius: var(--border-radius-m);
  border-width: var(--button-border-width);
  border-style: solid;
  border-color: transparent;
  font-size: var(--body-font-size);
  font-style: normal;
  font-stretch: normal;
  font-weight: var(--font-weight-regular);
  line-height: var(--leading-none);
  letter-spacing: var(--tracking-normal);
  padding-block: var(--spacing-075);
  padding-inline: var(--spacing-100);
  text-decoration: none;
  background-color: var(--color-brand-blue);
  border-color: var(--color-brand-blue);
  color: var(--color-light);
}
.c-pdf-viewer__nav-button:hover, .c-pdf-viewer__nav-button:active, .c-pdf-viewer__nav-button:focus {
  transition: color var(--transition-duration) ease-in-out, background-color var(--transition-duration) ease-in-out, transform var(--transition-duration) ease-in-out, opacity var(--transition-duration) ease-in-out;
}
.c-pdf-viewer__nav-button:hover:active, .c-pdf-viewer__nav-button:active:active, .c-pdf-viewer__nav-button:focus:active {
  transform: scale(0.9);
}
.c-pdf-viewer__nav-button:hover {
  background-color: var(--color-brand-lighter-gray);
  color: var(--color-brand-blue);
}
.c-pdf-viewer__nav-button:focus {
  outline-color: var(--color-focus-stroke);
}

/**
 * Quote
 * Group: Components
 */
.c-quote {
  background-color: var(--color-brand-blue);
  color: var(--color-light);
}
.c-quote--layout {
  max-width: 47.5rem;
  margin-inline: auto;
}
.c-quote__text {
  font-family: var(--font-primary);
  font-size: var(--h2-font-size);
  letter-spacing: var(--h2-letter-spacing);
  line-height: var(--h2-line-height);
  font-weight: var(--font-weight-regular);
  font-style: italic;
  border-left: 4px solid var(--color-brand-orange);
  padding-left: var(--spacing-150);
}
@media (min-width: 768px) {
  .c-quote__text {
    font-size: 3rem;
  }
}
.c-quote__author {
  font-size: var(--body-font-size);
  letter-spacing: var(--body-letter-spacing);
  line-height: var(--body-line-height);
  font-weight: var(--font-weight-regular);
  display: block;
  text-align: right;
  margin-top: var(--spacing-050);
  font-style: normal;
}
.c-quote__author::before {
  content: "— ";
  margin-right: var(--spacing-025);
}

/**
 * Sidebar
 * Group: Components
 */
.c-sidebar__list {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-150);
  background-color: var(--color-brand-blue);
  border-radius: var(--border-radius-m);
  color: var(--color-light);
  padding-block: var(--spacing-125);
  padding-inline: var(--spacing-150);
}
.c-sidebar__list-item {
  font-size: var(--body-font-size);
  letter-spacing: var(--body-letter-spacing);
  line-height: var(--body-line-height);
  font-weight: var(--font-weight-regular);
  text-decoration: none;
}
.c-sidebar__list-item:hover {
  color: var(--color-brand-orange);
}
.c-sidebar__list-item[aria-current=page] {
  border-left: 3px solid var(--color-brand-orange);
  padding-left: var(--spacing-050);
  font-weight: var(--font-weight-bold);
}
.c-sidebar__list--boxes {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-150);
}
.c-sidebar__title {
  font-family: var(--font-primary);
  font-size: var(--h2-font-size);
  letter-spacing: var(--h2-letter-spacing);
  line-height: var(--h2-line-height);
  font-weight: var(--font-weight-regular);
  margin-bottom: var(--spacing-150);
  padding-bottom: var(--spacing-025);
  border-bottom: 2px solid var(--color-brand-dark-gray);
}

/**
 * Text
 * Group: Components
 */
.c-text__title {
  color: var(--color-brand-dark-gray);
}
.c-text__content {
  font-size: var(--body-font-size);
  letter-spacing: var(--body-letter-spacing);
  line-height: var(--body-line-height);
  font-weight: var(--font-weight-regular);
  color: var(--color-brand-gray);
}
.c-text__content a {
  color: var(--color-brand-blue);
  text-decoration: underline;
  font-weight: 700;
}

/**
 * Ticket Link
 * Group: Components
 */
.c-ticket-link--layout {
  display: grid;
  place-items: center;
  background-color: var(--color-brand-light-gray);
  padding-block: var(--spacing-400);
  padding-inline: var(--spacing-100);
}
.c-ticket-link__button-link {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  border-radius: var(--border-radius-m);
  border-width: var(--button-border-width);
  border-style: solid;
  border-color: transparent;
  font-size: var(--body-font-size);
  font-style: normal;
  font-stretch: normal;
  font-weight: var(--font-weight-regular);
  line-height: var(--leading-none);
  letter-spacing: var(--tracking-normal);
  padding-block: var(--spacing-075);
  padding-inline: var(--spacing-100);
  text-decoration: none;
  font-size: var(--body-font-size);
  font-weight: var(--font-weight-semibold);
  letter-spacing: var(--tracking-normal);
  line-height: var(--leading-none);
  padding-block: var(--spacing-100);
  padding-inline: var(--spacing-600);
  border-radius: var(--btn-radius-lg);
  background-color: var(--color-brand-orange);
  border-color: var(--color-brand-orange);
  color: var(--color-brand-dark-gray);
}
.c-ticket-link__button-link:hover, .c-ticket-link__button-link:active, .c-ticket-link__button-link:focus {
  transition: color var(--transition-duration) ease-in-out, background-color var(--transition-duration) ease-in-out, transform var(--transition-duration) ease-in-out, opacity var(--transition-duration) ease-in-out;
}
.c-ticket-link__button-link:hover:active, .c-ticket-link__button-link:active:active, .c-ticket-link__button-link:focus:active {
  transform: scale(0.9);
}
.c-ticket-link__button-link:hover {
  background-color: var(--color-brand-light-gray);
}
.c-ticket-link__button-link:focus {
  outline-color: var(--color-focus-stroke);
}

/**
 * Tree
 * Group: Components
 */
.c-tree {
  position: relative;
}
.c-tree__list {
  padding-left: var(--spacing-200);
  margin-left: var(--spacing-075);
  margin-block: var(--spacing-100);
  transition: height var(--transition-duration) ease-in-out;
}
.c-tree__list:not(:nth-child(1)) {
  border-left: 1px solid var(--color-brand-dark-gray);
}
.c-tree__list-item {
  font-size: var(--body-font-size);
  letter-spacing: var(--body-letter-spacing);
  line-height: var(--body-line-height);
  font-weight: var(--font-weight-regular);
  color: var(--color-brand-dark-gray);
  margin-block: var(--spacing-100);
}
.c-tree__list__icon-file, .c-tree__list__icon-folder {
  width: var(--icon-ms);
  max-height: var(--icon-ms);
  height: auto;
  color: inherit;
  margin-right: var(--spacing-050);
  flex: 1 0 auto;
}
.c-tree__list__toggler {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  border-radius: var(--border-radius-m);
  border-width: var(--button-border-width);
  border-style: solid;
  border-color: transparent;
  font-size: var(--body-font-size);
  font-style: normal;
  font-stretch: normal;
  font-weight: var(--font-weight-regular);
  line-height: var(--leading-none);
  letter-spacing: var(--tracking-normal);
  padding-block: var(--spacing-075);
  padding-inline: var(--spacing-100);
  text-decoration: none;
  font-size: var(--body-small-font-size);
  font-weight: var(--font-weight-regular);
  letter-spacing: var(--tracking-normal);
  line-height: var(--leading-none);
  padding-block: var(--spacing-025);
  padding-inline: var(--spacing-075);
  border-radius: var(--btn-radius);
}
.c-tree__list__toggler:hover, .c-tree__list__toggler:active, .c-tree__list__toggler:focus {
  transition: color var(--transition-duration) ease-in-out, background-color var(--transition-duration) ease-in-out, transform var(--transition-duration) ease-in-out, opacity var(--transition-duration) ease-in-out;
}
.c-tree__list__toggler:hover:active, .c-tree__list__toggler:active:active, .c-tree__list__toggler:focus:active {
  transform: scale(0.9);
}
.c-tree__list__toggler-icon {
  width: var(--icon-ms);
  max-height: var(--icon-ms);
  height: auto;
  color: inherit;
  transition: transform var(--transition-duration) ease-in-out;
}
.c-tree__list__toggler[aria-expanded=true] > .c-tree__list__toggler-icon {
  transform: rotate(180deg);
}
.c-tree__list__toggler + .c-tree__list:not(.is-open), .c-tree__list__toggler ~ .c-tree__list:not(.is-open) {
  height: 0;
  overflow: hidden;
  display: none;
}
.c-tree__list .button-edit-item--wrapper {
  display: inline-block;
  margin-left: var(--spacing-050);
}
.c-tree__list.is-open {
  animation: fade-in var(--transition-duration) ease-in-out;
}
.c-tree__sidebar {
  flex: none;
}
.c-tree__button {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  border-radius: var(--border-radius-m);
  border-width: var(--button-border-width);
  border-style: solid;
  border-color: transparent;
  font-size: var(--body-font-size);
  font-style: normal;
  font-stretch: normal;
  font-weight: var(--font-weight-regular);
  line-height: var(--leading-none);
  letter-spacing: var(--tracking-normal);
  padding-block: var(--spacing-075);
  padding-inline: var(--spacing-100);
  text-decoration: none;
  padding: 0;
}
.c-tree__button:hover, .c-tree__button:active, .c-tree__button:focus {
  transition: color var(--transition-duration) ease-in-out, background-color var(--transition-duration) ease-in-out, transform var(--transition-duration) ease-in-out, opacity var(--transition-duration) ease-in-out;
}
.c-tree__button:hover:active, .c-tree__button:active:active, .c-tree__button:focus:active {
  transform: scale(0.9);
}
.c-tree__button:hover, .c-tree__button:focus {
  color: var(--color-brand-orange);
}
@media (min-width: 992px) {
  .c-tree .c-sidebar {
    position: sticky;
    top: 5%;
  }
}

/**
 * Main
 * Group: Utilities
 */
/**
 * A11y
 * Group: Utilities
 */
/**
 * Hide only visually, but have it available for screen readers:
 * http://snook.ca/archives/html_and_css/hiding-content-for-accessibility
 */
.u-sr,
.screen-reader-text {
  border: 0 !important;
  clip: rect(0 0 0 0) !important;
  clip-path: inset(50%) !important;
  height: 1px !important;
  margin: -1px !important;
  overflow: hidden !important;
  padding: 0 !important;
  position: absolute !important;
  white-space: nowrap !important;
  width: 1px !important;
}
.u-sr:active, .u-sr:focus,
.screen-reader-text:active,
.screen-reader-text:focus {
  clip: auto;
  clip-path: none;
  display: block;
  height: auto;
  width: auto;
  z-index: 100000;
  text-decoration: none;
}

.u-skip-link {
  position: absolute;
  top: -999px;
  left: -999px;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
  border: 0;
}
.u-skip-link:focus {
  position: absolute;
  top: 1rem;
  left: 1rem;
  width: auto;
  height: auto;
  padding: 0.75rem 1rem;
  background-color: #000;
  color: #fff;
  z-index: 1000;
  clip-path: none;
  white-space: normal;
  text-decoration: none;
  border-radius: 4px;
  box-shadow: 0 0 0 2px white;
}

.mobile-menu-is-open {
  overflow: hidden;
  height: 100%;
}
.mobile-menu-is-open::before {
  content: "";
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5);
  z-index: 99;
  backdrop-filter: blur(var(--spacing-050));
}

/**
 * Background Color
 * Group: Utilities
 */
.u-bg-color-brand-brown-semi-transparent {
  background-color: var(--color-brand-brown-semi-transparent);
}
.u-bg-color-brand-brown {
  background-color: var(--color-brand-brown);
}
.u-bg-color-brand-red-semi-transparent {
  background-color: var(--color-brand-red-semi-transparent);
}
.u-bg-color-brand-dark-red {
  background-color: var(--color-brand-dark-red);
}
.u-bg-color-brand-red {
  background-color: var(--color-brand-red);
}
.u-bg-color-alert-green-dark {
  background-color: var(--color-alert-green-dark);
}
.u-bg-color-brand-green {
  background-color: var(--color-brand-green);
}
.u-bg-color-brand-blue {
  background-color: var(--color-brand-blue);
}
.u-bg-color-brand-blue-light {
  background-color: var(--color-brand-blue-light);
}
.u-bg-color-brand-blue-light-semi-transparent {
  background-color: var(--color-brand-blue-light-semi-transparent);
}
.u-bg-color-brand-blue-semi-transparent {
  background-color: var(--color-brand-blue-semi-transparent);
}
.u-bg-color-brand-orange {
  background-color: var(--color-brand-orange);
}
.u-bg-color-brand-dark-gray {
  background-color: var(--color-brand-dark-gray);
}
.u-bg-color-brand-gray {
  background-color: var(--color-brand-gray);
}
.u-bg-color-brand-blue-dark {
  background-color: var(--color-brand-blue-dark);
}
.u-bg-color-brand-white {
  background-color: var(--color-brand-white);
}
.u-bg-color-brand-light-gray {
  background-color: var(--color-brand-light-gray);
}
.u-bg-color-brand-lighter-gray {
  background-color: var(--color-brand-lighter-gray);
}
.u-bg-color-brand-search-gray {
  background-color: var(--color-brand-search-gray);
}
.u-bg-color-neutral-1000 {
  background-color: var(--color-neutral-1000);
}
.u-bg-color-neutral-975 {
  background-color: var(--color-neutral-975);
}
.u-bg-color-neutral-950 {
  background-color: var(--color-neutral-950);
}
.u-bg-color-neutral-900 {
  background-color: var(--color-neutral-900);
}
.u-bg-color-neutral-800 {
  background-color: var(--color-neutral-800);
}
.u-bg-color-neutral-700 {
  background-color: var(--color-neutral-700);
}
.u-bg-color-neutral-600 {
  background-color: var(--color-neutral-600);
}
.u-bg-color-neutral-500 {
  background-color: var(--color-neutral-500);
}
.u-bg-color-neutral-400 {
  background-color: var(--color-neutral-400);
}
.u-bg-color-neutral-300 {
  background-color: var(--color-neutral-300);
}
.u-bg-color-neutral-200 {
  background-color: var(--color-neutral-200);
}
.u-bg-color-neutral-100 {
  background-color: var(--color-neutral-100);
}
.u-bg-color-neutral-050 {
  background-color: var(--color-neutral-050);
}
.u-bg-color-neutral-000 {
  background-color: var(--color-neutral-000);
}
.u-bg-color-dark {
  background-color: var(--color-dark);
}
.u-bg-color-light {
  background-color: var(--color-light);
}
.u-bg-color-fade-light-5 {
  background-color: var(--color-fade-light-5);
}
.u-bg-color-fade-light-10 {
  background-color: var(--color-fade-light-10);
}
.u-bg-color-fade-light-20 {
  background-color: var(--color-fade-light-20);
}
.u-bg-color-fade-light-30 {
  background-color: var(--color-fade-light-30);
}
.u-bg-color-fade-light-40 {
  background-color: var(--color-fade-light-40);
}
.u-bg-color-fade-light-50 {
  background-color: var(--color-fade-light-50);
}
.u-bg-color-fade-light-60 {
  background-color: var(--color-fade-light-60);
}
.u-bg-color-fade-light-70 {
  background-color: var(--color-fade-light-70);
}
.u-bg-color-fade-light-80 {
  background-color: var(--color-fade-light-80);
}
.u-bg-color-fade-light-90 {
  background-color: var(--color-fade-light-90);
}
.u-bg-color-fade-dark-5 {
  background-color: var(--color-fade-dark-5);
}
.u-bg-color-fade-dark-10 {
  background-color: var(--color-fade-dark-10);
}
.u-bg-color-fade-dark-20 {
  background-color: var(--color-fade-dark-20);
}
.u-bg-color-fade-dark-30 {
  background-color: var(--color-fade-dark-30);
}
.u-bg-color-fade-dark-40 {
  background-color: var(--color-fade-dark-40);
}
.u-bg-color-fade-dark-50 {
  background-color: var(--color-fade-dark-50);
}
.u-bg-color-fade-dark-60 {
  background-color: var(--color-fade-dark-60);
}
.u-bg-color-fade-dark-70 {
  background-color: var(--color-fade-dark-70);
}
.u-bg-color-fade-dark-80 {
  background-color: var(--color-fade-dark-80);
}
.u-bg-color-fade-dark-90 {
  background-color: var(--color-fade-dark-90);
}
.u-bg-color-focus-stroke {
  background-color: var(--color-focus-stroke);
}
.u-bg-color-text {
  background-color: var(--color-text);
}
.u-bg-color-text-light {
  background-color: var(--color-text-light);
}

/**
 * Background
 * Group: Utilities
 */
.u-br-t {
  border-top: 1px solid currentcolor;
}

.u-br-b {
  border-bottom: 1px solid currentcolor;
}

.u-br-l {
  border-left: 1px solid currentcolor;
}

.u-br-r {
  border-right: 1px solid currentcolor;
}

.u-brc-gray-50 {
  border-color: var(--color-neutral-50);
}

/**
 * Clearfix
 * Group: Utilities
 */
.u-clearfix::after {
  content: "" !important;
  display: block !important;
  clear: both !important;
}

/**
 * Color
 * Group: Utilities
 */
.u-color-brand-brown-semi-transparent {
  color: var(--color-brand-brown-semi-transparent);
}
.u-color-brand-brown {
  color: var(--color-brand-brown);
}
.u-color-brand-red-semi-transparent {
  color: var(--color-brand-red-semi-transparent);
}
.u-color-brand-dark-red {
  color: var(--color-brand-dark-red);
}
.u-color-brand-red {
  color: var(--color-brand-red);
}
.u-color-alert-green-dark {
  color: var(--color-alert-green-dark);
}
.u-color-brand-green {
  color: var(--color-brand-green);
}
.u-color-brand-blue {
  color: var(--color-brand-blue);
}
.u-color-brand-blue-light {
  color: var(--color-brand-blue-light);
}
.u-color-brand-blue-light-semi-transparent {
  color: var(--color-brand-blue-light-semi-transparent);
}
.u-color-brand-blue-semi-transparent {
  color: var(--color-brand-blue-semi-transparent);
}
.u-color-brand-orange {
  color: var(--color-brand-orange);
}
.u-color-brand-dark-gray {
  color: var(--color-brand-dark-gray);
}
.u-color-brand-gray {
  color: var(--color-brand-gray);
}
.u-color-brand-blue-dark {
  color: var(--color-brand-blue-dark);
}
.u-color-brand-white {
  color: var(--color-brand-white);
}
.u-color-brand-light-gray {
  color: var(--color-brand-light-gray);
}
.u-color-brand-lighter-gray {
  color: var(--color-brand-lighter-gray);
}
.u-color-brand-search-gray {
  color: var(--color-brand-search-gray);
}
.u-color-neutral-1000 {
  color: var(--color-neutral-1000);
}
.u-color-neutral-975 {
  color: var(--color-neutral-975);
}
.u-color-neutral-950 {
  color: var(--color-neutral-950);
}
.u-color-neutral-900 {
  color: var(--color-neutral-900);
}
.u-color-neutral-800 {
  color: var(--color-neutral-800);
}
.u-color-neutral-700 {
  color: var(--color-neutral-700);
}
.u-color-neutral-600 {
  color: var(--color-neutral-600);
}
.u-color-neutral-500 {
  color: var(--color-neutral-500);
}
.u-color-neutral-400 {
  color: var(--color-neutral-400);
}
.u-color-neutral-300 {
  color: var(--color-neutral-300);
}
.u-color-neutral-200 {
  color: var(--color-neutral-200);
}
.u-color-neutral-100 {
  color: var(--color-neutral-100);
}
.u-color-neutral-050 {
  color: var(--color-neutral-050);
}
.u-color-neutral-000 {
  color: var(--color-neutral-000);
}
.u-color-dark {
  color: var(--color-dark);
}
.u-color-light {
  color: var(--color-light);
}
.u-color-fade-light-5 {
  color: var(--color-fade-light-5);
}
.u-color-fade-light-10 {
  color: var(--color-fade-light-10);
}
.u-color-fade-light-20 {
  color: var(--color-fade-light-20);
}
.u-color-fade-light-30 {
  color: var(--color-fade-light-30);
}
.u-color-fade-light-40 {
  color: var(--color-fade-light-40);
}
.u-color-fade-light-50 {
  color: var(--color-fade-light-50);
}
.u-color-fade-light-60 {
  color: var(--color-fade-light-60);
}
.u-color-fade-light-70 {
  color: var(--color-fade-light-70);
}
.u-color-fade-light-80 {
  color: var(--color-fade-light-80);
}
.u-color-fade-light-90 {
  color: var(--color-fade-light-90);
}
.u-color-fade-dark-5 {
  color: var(--color-fade-dark-5);
}
.u-color-fade-dark-10 {
  color: var(--color-fade-dark-10);
}
.u-color-fade-dark-20 {
  color: var(--color-fade-dark-20);
}
.u-color-fade-dark-30 {
  color: var(--color-fade-dark-30);
}
.u-color-fade-dark-40 {
  color: var(--color-fade-dark-40);
}
.u-color-fade-dark-50 {
  color: var(--color-fade-dark-50);
}
.u-color-fade-dark-60 {
  color: var(--color-fade-dark-60);
}
.u-color-fade-dark-70 {
  color: var(--color-fade-dark-70);
}
.u-color-fade-dark-80 {
  color: var(--color-fade-dark-80);
}
.u-color-fade-dark-90 {
  color: var(--color-fade-dark-90);
}
.u-color-focus-stroke {
  color: var(--color-focus-stroke);
}
.u-color-text {
  color: var(--color-text);
}
.u-color-text-light {
  color: var(--color-text-light);
}

/**
 * Cookies Colors
 * Group: Utilities
 */
.btn-bgcolor-000000 {
  background-color: #000000;
}

.btn-textcolor-000000 {
  color: #000000;
}

.cookies-bgcolor-000000 {
  background-color: #000000;
}

.btn-bgcolor-ffffff {
  background-color: #ffffff;
}

.btn-textcolor-ffffff {
  color: #ffffff;
}

.cookies-bgcolor-ffffff {
  background-color: #ffffff;
}

.btn-bgcolor-003375 {
  background-color: #003375;
}

.btn-textcolor-003375 {
  color: #003375;
}

.cookies-bgcolor-003375 {
  background-color: #003375;
}

.btn-bgcolor-4b6587 {
  background-color: #4b6587;
}

.btn-textcolor-4b6587 {
  color: #4b6587;
}

.cookies-bgcolor-4b6587 {
  background-color: #4b6587;
}

.btn-bgcolor-f89b34 {
  background-color: #f89b34;
}

.btn-textcolor-f89b34 {
  color: #f89b34;
}

.cookies-bgcolor-f89b34 {
  background-color: #f89b34;
}

.btn-bgcolor-575757 {
  background-color: #575757;
}

.btn-textcolor-575757 {
  color: #575757;
}

.cookies-bgcolor-575757 {
  background-color: #575757;
}

/**
 * Display
 * Group: Utilities
 */
.u-hidden {
  display: none !important;
}

.u-d-flex {
  display: flex;
}

.u-d-block {
  display: block;
}

.u-d-inline-block {
  display: inline-block;
}

.u-pos-rel {
  position: relative;
}

.u-overflow-h {
  overflow: hidden;
}

.is-uninitialized {
  opacity: 0;
  pointer-events: none;
}

/**
 * Icon
 * Group: Utilities
 */
[class*=u-icon] {
  width: auto;
}

/* icon size */
.u-icon-xs {
  font-size: var(--icon-xs);
  height: var(--icon-xs);
  min-width: var(--icon-xs);
}

.u-icon-sm {
  font-size: var(--icon-sm);
  height: var(--icon-sm);
  min-width: var(--icon-sm);
}

.u-icon-md {
  font-size: var(--icon-md);
  height: var(--icon-md);
  min-width: var(--icon-md);
}

.u-icon-lg {
  font-size: var(--icon-lg);
  height: var(--icon-lg);
  min-width: var(--icon-lg);
}

.u-icon-xl {
  font-size: var(--icon-xl);
  height: var(--icon-xl);
  min-width: var(--icon-xl);
}

.u-icon-2xl {
  font-size: var(--icon-2xl);
  height: var(--icon-2xl);
  min-width: var(--icon-2xl);
}

.u-icon-3xl {
  font-size: var(--icon-3xl);
  height: var(--icon-3xl);
  min-width: var(--icon-3xl);
}

.u-icon-4xl {
  font-size: var(--icon-4xl);
  height: var(--icon-4xl);
  min-width: var(--icon-4xl);
}

.u-icon--rounded {
  border-radius: 100%;
  overflow: hidden;
}

/**
 * Loading
 * Group: Utilities
 */
.u-is-loading {
  position: relative;
  opacity: 0.7;
  pointer-events: none;
  transition: opacity var(--transition-duration) ease-in-out;
}

.u-is-loading::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 30px;
  height: 30px;
  margin: -15px 0 0 -15px;
  border: 3px solid rgba(65, 119, 175, 0.3);
  border-radius: 50%;
  border-top-color: #4177af;
  animation: spin var(--transition-duration-slow) ease-in-out infinite;
}

/**
 * Margin
 * Group: Utilities
 */
/* Zero margins */
.u-m-0 {
  margin: 0;
}

.u-mb-0 {
  margin-bottom: 0;
}

.u-mt-0 {
  margin-top: 0;
}

.u-ml-0 {
  margin-left: 0;
}

.u-mr-0 {
  margin-right: 0;
}

/* Auto margins */
.u-ml-auto {
  margin-left: auto;
}

.u-mr-auto {
  margin-right: auto;
}

.u-mt-auto {
  margin-top: auto;
}

.u-mb-auto {
  margin-bottom: auto;
}

/* Vertical margins */
.u-mbl-100 {
  margin-block: var(--spacing-100);
}

.u-mt,
.u-mt-md {
  margin-top: var(--space-md);
}

.u-mt-xs {
  margin-top: var(--space-xs);
}

.u-mt-sm {
  margin-top: var(--space-sm);
}

.u-mt-lg {
  margin-top: var(--space-lg);
}

.u-mt-xl {
  margin-top: var(--space-xl);
}

.u-mt-2xl {
  margin-top: var(--space-2xl);
}

.u-mt-3xl {
  margin-top: var(--space-3xl);
}

.u-mt-4xl {
  margin-top: var(--space-4xl);
}

.u-mt-200 {
  margin-top: var(--spacing-200);
}

.u-mb-200 {
  margin-bottom: var(--spacing-200);
}

.u-mb,
.u-mb-md {
  margin-bottom: var(--space-md);
}

.u-mb-xs {
  margin-bottom: var(--space-xs);
}

.u-mb-sm {
  margin-bottom: var(--space-sm);
}

.u-mb-lg {
  margin-bottom: var(--space-lg);
}

.u-mb-xl {
  margin-bottom: var(--space-xl);
}

.u-mb-2xl {
  margin-bottom: var(--space-2xl);
}

.u-mb-3xl {
  margin-bottom: var(--space-3xl);
}

.u-mb-4xl {
  margin-bottom: var(--space-4xl);
}

/* Horizontal margins */
.u-ml,
.u-ml-md {
  margin-left: var(--space-md);
}

.u-ml-xs {
  margin-left: var(--space-xs);
}

.u-ml-sm {
  margin-left: var(--space-sm);
}

.u-ml-lg {
  margin-left: var(--space-lg);
}

.u-ml-xl {
  margin-left: var(--space-xl);
}

.u-ml-2xl {
  margin-left: var(--space-2xl);
}

.u-ml-3xl {
  margin-left: var(--space-3xl);
}

.u-ml-4xl {
  margin-left: var(--space-4xl);
}

.u-mr,
.u-mr-md {
  margin-right: var(--space-md);
}

.u-mr-xs {
  margin-right: var(--space-xs);
}

.u-mr-sm {
  margin-right: var(--space-sm);
}

.u-mr-lg {
  margin-right: var(--space-lg);
}

.u-mr-xl {
  margin-right: var(--space-xl);
}

.u-mr-2xl {
  margin-right: var(--space-2xl);
}

.u-mr-3xl {
  margin-right: var(--space-3xl);
}

.u-mr-4xl {
  margin-right: var(--space-4xl);
}

/**
 * Opacity
 * Group: Utilities
 */
.u-opacity-5 {
  --opacity: 0.05;
}

.u-opacity-10 {
  --opacity: 0.1;
}

.u-opacity-15 {
  --opacity: 0.15;
}

.u-opacity-20 {
  --opacity: 0.2;
}

.u-opacity-25 {
  --opacity: 0.25;
}

.u-opacity-30 {
  --opacity: 0.3;
}

.u-opacity-35 {
  --opacity: 0.35;
}

.u-opacity-40 {
  --opacity: 0.4;
}

.u-opacity-45 {
  --opacity: 0.45;
}

.u-opacity-50 {
  --opacity: 0.5;
}

.u-opacity-55 {
  --opacity: 0.55;
}

.u-opacity-60 {
  --opacity: 0.6;
}

.u-opacity-65 {
  --opacity: 0.65;
}

.u-opacity-70 {
  --opacity: 0.7;
}

.u-opacity-75 {
  --opacity: 0.75;
}

.u-opacity-80 {
  --opacity: 0.8;
}

.u-opacity-85 {
  --opacity: 0.85;
}

.u-opacity-90 {
  --opacity: 0.9;
}

.u-opacity-95 {
  --opacity: 0.95;
}

.u-opacity-100 {
  --opacity: 1;
}

/**
 * Padding
 * Group: Utilities
 */
/* Zero paddings */
.u-p-0 {
  padding: 0;
}

.u-pt-0 {
  padding-top: 0;
}

.u-pb-0 {
  padding-bottom: 0;
}

.u-pl-0 {
  padding-left: 0;
}

.u-pr-0 {
  padding-right: 0;
}

/* Vertical paddings */
.u-pt,
.u-pt-md {
  padding-top: var(--space-md);
}

.u-pt-xs {
  padding-top: var(--space-xs);
}

.u-pt-sm {
  padding-top: var(--space-sm);
}

.u-pt-lg {
  padding-top: var(--space-lg);
}

.u-pt-xl {
  padding-top: var(--space-xl);
}

.u-pt-2xl {
  padding-top: var(--space-2xl);
}

.u-pb,
.u-pb-md {
  padding-bottom: var(--space-md);
}

.u-pb-xs {
  padding-bottom: var(--space-xs);
}

.u-pb-sm {
  padding-bottom: var(--space-sm);
}

.u-pb-lg {
  padding-bottom: var(--space-lg);
}

.u-pb-xl {
  padding-bottom: var(--space-xl);
}

.u-pb-2xl {
  padding-bottom: var(--space-2xl);
}

/* Horizontal paddings */
.u-pl,
.u-pl-md {
  padding-left: var(--space-md);
}

.u-pl-xs {
  padding-left: var(--space-xs);
}

.u-pl-sm {
  padding-left: var(--space-sm);
}

.u-pl-lg {
  padding-left: var(--space-lg);
}

.u-pl-xl {
  padding-left: var(--space-xl);
}

.u-pl-2xl {
  padding-left: var(--space-2xl);
}

.u-pr,
.u-pr-md {
  padding-right: var(--space-md);
}

.u-pr-xs {
  padding-right: var(--space-xs);
}

.u-pr-sm {
  padding-right: var(--space-sm);
}

.u-pr-lg {
  padding-right: var(--space-lg);
}

.u-pr-xl {
  padding-right: var(--space-xl);
}

.u-pr-2xl {
  padding-right: var(--space-2xl);
}

/*
 * Size
 * Group: Utilities
 */
/* Width Utilities */
.u-min-w0 {
  min-width: 0;
}

.u-max-w0 {
  max-width: 0;
}

.u-w100 {
  width: 100%;
}

/* Height Utilities */
.u-min-h0 {
  min-height: 0;
}

.u-max-h0 {
  max-height: 0;
}

.u-h100 {
  height: 100%;
}

.u-full-width {
  min-width: 100vw;
  position: relative;
  margin-left: -50vw;
  left: 50%;
}

/**
 * Space X
 * Group: Utilities
 */
[class*=u-space-x] > * {
  margin-left: 0 !important;
  margin-right: 0 !important;
}
[class*=u-space-x] > * + * {
  margin-left: var(--space-md) !important;
}

body .u-space-x-sm > * + * {
  margin-left: var(--space-sm) !important;
}
body .u-space-x-lg > * + * {
  margin-left: var(--space-lg) !important;
}
body .u-space-x-xl > * + * {
  margin-left: var(--space-xl) !important;
}
body .u-space-x-2xl > * + * {
  margin-left: var(--space-2xl) !important;
}

/**
 * Typography
 *
 * Group: Utilities
 */
.u-font-primary {
  font-family: var(--font-primary) !important;
}
.u-font-primary * {
  font-family: var(--font-primary) !important;
}

/* Font Types */
.u-font-h1 {
  font-family: var(--font-primary);
  font-size: var(--h1-font-size);
  letter-spacing: var(--h1-letter-spacing);
  line-height: var(--h1-line-height);
  font-weight: var(--font-weight-regular);
}

.u-font-h2 {
  font-family: var(--font-primary);
  font-size: var(--h2-font-size);
  letter-spacing: var(--h2-letter-spacing);
  line-height: var(--h2-line-height);
  font-weight: var(--font-weight-regular);
}

.u-font-h3 {
  font-family: var(--font-primary);
  font-size: var(--h3-font-size);
  letter-spacing: var(--h3-letter-spacing);
  line-height: var(--h3-line-height);
  font-weight: var(--font-weight-regular);
}

.u-font-h4 {
  font-family: var(--font-primary);
  font-size: var(--h4-font-size);
  letter-spacing: var(--h4-letter-spacing);
  line-height: var(--h4-line-height);
  font-weight: var(--font-weight-regular);
}

.u-font-h5 {
  font-family: var(--font-primary);
  font-size: var(--h5-font-size);
  letter-spacing: var(--h5-letter-spacing);
  line-height: var(--h5-line-height);
  font-weight: var(--font-weight-regular);
}

.u-font-h6 {
  font-family: var(--font-primary);
  font-size: var(--h6-font-size);
  letter-spacing: var(--h6-letter-spacing);
  line-height: var(--h6-line-height);
  font-weight: var(--font-weight-regular);
}

.u-font-p {
  font-size: var(--body-font-size);
  letter-spacing: var(--body-letter-spacing);
  line-height: var(--body-line-height);
  font-weight: var(--font-weight-regular);
}

.u-font-sm {
  font-size: var(--body-small-font-size);
  letter-spacing: var(--body-small-letter-spacing);
  line-height: var(--body-small-line-height);
  font-weight: var(--font-weight-regular);
}

.u-font-md {
  font-size: var(--body-font-size);
  letter-spacing: var(--body-letter-spacing);
  line-height: var(--body-line-height);
  font-weight: var(--font-weight-regular);
}

.u-font-lg {
  font-size: var(--body-medium-font-size);
  letter-spacing: var(--body-medium-letter-spacing);
  line-height: var(--body-medium-line-height);
  font-weight: var(--font-weight-regular);
}

/* Font Sizes */
.u-fz-h1 {
  font-family: var(--font-primary);
  font-size: var(--h1-font-size);
  letter-spacing: var(--h1-letter-spacing);
  line-height: var(--h1-line-height);
  font-weight: var(--font-weight-regular);
}

.u-fz-h2 {
  font-family: var(--font-primary);
  font-size: var(--h2-font-size);
  letter-spacing: var(--h2-letter-spacing);
  line-height: var(--h2-line-height);
  font-weight: var(--font-weight-regular);
}

.u-fz-h3 {
  font-family: var(--font-primary);
  font-size: var(--h3-font-size);
  letter-spacing: var(--h3-letter-spacing);
  line-height: var(--h3-line-height);
  font-weight: var(--font-weight-regular);
}

.u-fz-h4 {
  font-family: var(--font-primary);
  font-size: var(--h4-font-size);
  letter-spacing: var(--h4-letter-spacing);
  line-height: var(--h4-line-height);
  font-weight: var(--font-weight-regular);
}

.u-fz-h5 {
  font-family: var(--font-primary);
  font-size: var(--h5-font-size);
  letter-spacing: var(--h5-letter-spacing);
  line-height: var(--h5-line-height);
  font-weight: var(--font-weight-regular);
}

.u-fz-h6 {
  font-family: var(--font-primary);
  font-size: var(--h6-font-size);
  letter-spacing: var(--h6-letter-spacing);
  line-height: var(--h6-line-height);
  font-weight: var(--font-weight-regular);
}

.u-fz-p {
  font-size: var(--body-font-size);
  letter-spacing: var(--body-letter-spacing);
  line-height: var(--body-line-height);
  font-weight: var(--font-weight-regular);
}

.u-fz-sm {
  font-size: var(--body-small-font-size);
  letter-spacing: var(--body-small-letter-spacing);
  line-height: var(--body-small-line-height);
  font-weight: var(--font-weight-regular);
}

.u-fz-md {
  font-size: var(--body-font-size);
  letter-spacing: var(--body-letter-spacing);
  line-height: var(--body-line-height);
  font-weight: var(--font-weight-regular);
}

.u-fz-lg {
  font-size: var(--body-medium-font-size);
  letter-spacing: var(--body-medium-letter-spacing);
  line-height: var(--body-medium-line-height);
  font-weight: var(--font-weight-regular);
}

/* Text alignment */
.u-ta-right {
  text-align: right !important;
}

.u-ta-left {
  text-align: left !important;
}

.u-ta-center {
  text-align: center !important;
}

/* Text transform */
.u-tt-up {
  text-transform: uppercase !important;
}

.u-tt-cap {
  text-transform: capitalize !important;
}

/* Font weights */
.u-fw-normal {
  font-weight: normal !important;
}

.u-fw-bold {
  font-weight: bold !important;
}

.u-fw-extra-bold {
  font-weight: 800 !important;
}

.u-fw-black {
  font-weight: 900 !important;
}

.u-fw-300 {
  font-weight: 300 !important;
}

.u-fw-400 {
  font-weight: 400 !important;
}

.u-fw-500 {
  font-weight: 500 !important;
}

.u-fw-600 {
  font-weight: 600 !important;
}

.u-fw-700 {
  font-weight: 700 !important;
}

.u-fw-800 {
  font-weight: 800 !important;
}

.u-fw-900 {
  font-weight: 900 !important;
}

/* Truncate text */
.u-truncate {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

/* Break Word */
.u-break-word {
  overflow-wrap: break-word;
  word-break: break-word;
  white-space: normal;
}

/* Highlight text */
.u-highlight {
  background-color: var(--color-brand-orange);
}

/* Text decoration */
.u-td-n {
  text-decoration: none;
}

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

.has-text-align-right {
  text-align: right;
}

/**
 * CSS Debug
 * Group: Scopes
 */
.u-css-debug {
  /**
   * Outline all classes.
   */
  /**
   * Outline all BEM Elements.
   */
  /**
   * Outline all BEM Modifiers.
   */
  /**
   * Outline all Object classes.
   */
  /**
   * Outline all Component classes.
   */
  /**
   * Outline all Responsive classes.
   */
  /**
   * Outline all Hack classes.
   */
  /* Headers out of order */
  /**
   * Debugging <head> styles.
   */
  /**
   * External Resources
   */
  /**
   * Inline Resources
   */
  /**
   * Blocked Resources
   */
  /**
   * Third-party Blocking Resources
   */
}
.u-css-debug [class] {
  outline: 5px solid lightgrey;
}
.u-css-debug [class*=__] {
  outline: 5px solid grey;
}
.u-css-debug [class*="--"] {
  outline: 5px solid darkgrey;
}
.u-css-debug [class^=o-],
.u-css-debug [class*=o-] {
  outline: 5px solid orange;
}
.u-css-debug [class^=c-],
.u-css-debug [class*=" c-"] {
  outline: 5px solid cyan;
}
.u-css-debug [class*="@"] {
  outline: 5px solid rosybrown;
}
.u-css-debug [class^=_] {
  outline: 5px solid red;
}
.u-css-debug :is(h2, h3, h4, h5, h6) ~ h1,
.u-css-debug :is(h3, h4, h5, h6) ~ h2,
.u-css-debug :is(h4, h5, h6) ~ h3,
.u-css-debug :is(h5, h6) ~ h4,
.u-css-debug h6 ~ h5 {
  outline: 2px dotted blue;
}
.u-css-debug head {
  --ct-is-problematic: solid;
  --ct-is-affected: dashed;
  --ct-notify: #0bce6b;
  --ct-warn: #ffa400;
  --ct-error: #ff4e42;
  display: block;
}
.u-css-debug head script,
.u-css-debug head style,
.u-css-debug head [rel=stylesheet],
.u-css-debug head title,
.u-css-debug head meta[charset]:not(:nth-child(-n+5)) {
  margin: 5px;
  padding: 5px;
  border-width: 5px;
  background-color: white;
  color: #333;
}
.u-css-debug head script,
.u-css-debug head style {
  font: 16px/1.5 monospace;
  display: block;
}
.u-css-debug head script::before,
.u-css-debug head style::before {
  font-weight: bold;
}
.u-css-debug head script[src],
.u-css-debug head link[rel=stylesheet] {
  border-style: var(--ct-is-problematic);
  border-color: var(--ct-warn);
}
.u-css-debug head script[src]::before {
  content: "[Blocking Script – " attr(src) "]";
}
.u-css-debug head link[rel=stylesheet]::before {
  content: "[Blocking Stylesheet – " attr(href) "]";
}
.u-css-debug head style:not(:empty),
.u-css-debug head script:not(:empty) {
  max-height: 5em;
  overflow: auto;
  background-color: #ffd;
  white-space: pre;
  border-color: var(--ct-notify);
  border-style: var(--ct-is-problematic);
}
.u-css-debug head script:not(:empty)::before {
  content: "[Inline Script] ";
}
.u-css-debug head style:not(:empty)::before {
  content: "[Inline Style] ";
}
.u-css-debug head script:not(:empty) ~ title,
.u-css-debug head script[src]:not([async], [defer], [type=module]) ~ title {
  display: block;
  border-style: var(--ct-is-affected);
  border-color: var(--ct-error);
}
.u-css-debug head script[src][async][defer] {
  display: block;
  border-style: var(--ct-is-problematic);
  border-color: var(--ct-warn);
}
.u-css-debug head script:not([src])[async],
.u-css-debug head script:not([src])[defer] {
  border-style: var(--ct-is-problematic);
  border-color: var(--ct-warn);
}
.u-css-debug head script:not([src])[async]::before {
  content: "The async attribute is redundant on inline scripts";
}
.u-css-debug head script:not([src])[defer]::before {
  content: "The defer attribute is redundant on inline scripts";
}
.u-css-debug head script[src^=http],
.u-css-debug head [rel=stylesheet][href^=http] {
  border-style: var(--ct-is-problematic);
  border-color: var(--ct-error);
}
.u-css-debug head script[src^=http]::before {
  content: "[Third Party Blocking Script – " attr(src) "]";
}
.u-css-debug head [rel=stylesheet][href^=http]::before {
  content: "[Third Party Blocking Stylesheet – " attr(href) "]";
}

/*# sourceMappingURL=data:application/json;charset=utf-8;base64,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Q0E7QVJvaUJGOztBUzVsQkE7OztFQUFBO0FDQUE7OztFQUFBO0FBS0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QVZrbUJGOztBV25uQkE7OztFQUFBO0FBTUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBWG9uQkY7QVdqbkJBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QVhtbkJGO0FXaG5CQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FYa25CRjtBVy9tQkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBWGluQkY7QVc5bUJBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QVhnbkJGO0FXN21CQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FYK21CRjtBVzVtQkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBWDhtQkY7QVczbUJBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QVg2bUJGO0FXMW1CQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FYNG1CRjtBV3ptQkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBWDJtQkY7QVd4bUJBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QVgwbUJGO0FXdm1CQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FYeW1CRjtBWWhzQkE7OztFQUFBO0FBS0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FaaXNCRjs7QWE5c0JBOzs7RUFBQTtBQUtBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBYmd0QkY7O0FjaHVCQTs7O0VBQUE7QUFLQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWRrdUJGOztBZTV1QkE7OztFQUFBO0FBS0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFDQTs7R0FBQTtFQUlBO0VBRUE7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0FmdXVCRjs7QWdCeHhCQTs7O0VBQUE7QUFLQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FoQjB4QkY7O0FpQjN6QkE7OztFQUFBO0FBS0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWpCNnpCRjs7QWtCajFCQTs7O0VBQUE7QUFPQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsQjQwQkY7O0FtQjk1QkE7OztFQUFBO0FBS0E7RUFDRTtFQUNBO0VBQ0E7QW5CZzZCRjs7QW9CeDZCQTs7O0VBQUE7QUNBQTs7O0VBQUE7QUFLQTtBQW1CQTs7Ozs7O0dBQUE7QUN4QkE7OztFQUFBO0FDQUE7OztFQUFBO0FDQUE7Ozs7Ozs7Ozs7Ozs7O0VBQUE7QUNBQTs7O0VBQUE7QUhBQTs7O0VBQUE7QUlBQTs7O0VBQUE7QUNBQTs7O0VBQUE7QUFLQTs7Ozs7Ozs7RUFBQTtBQ0xB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QTFDa2lERjtBMENoaURFO0VoQlNBO0tBQUE7VUFBQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBaUJFO0VBQ0E7RUFDQTtBMUIwZ0RKO0F1QjdpREk7RUdtQkEsbU5BQ0U7QTFCNGhETjtBMEJ2aERJO0VBQ0U7QTFCeWhETjtBMEI5Z0RJO0VBQ0U7QTFCZ2hETjtBMEI3Z0RJO0VBQ0U7QTFCK2dETjtBMEM3akRFO0VBQ0U7RUFDQTtFQUNBO0ExQytqREo7QTBDNWpERTtFaEI2Q0U7RUFDQTtFQUNBO0ExQmtoREo7QTBCaGhESTtFQUNFO0VBQ0E7QTFCa2hETjtBMEIvZ0RJO0VBQ0U7QTFCaWhETjtBMENwa0RFO0VoQndFRTtFQUNBO0VBQ0E7QTFCKy9DSjtBMEI3L0NJO0VBQ0U7RUFDQTtBMUIrL0NOO0EwQjUvQ0k7RUFDRTtBMUI4L0NOO0EwQ2xrREU7RUFDRTtFQUNBO0VBQ0E7QTFDb2tESjs7QTBDaGtEQTtFaEIzQkU7S0FBQTtVQUFBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUE4SUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFuSUE7RUFDQTtFQUNBO0VnQkhGO0VBQ0E7RUFDQTtBMUMwbERGO0F1QjVuREk7RUdtQkEsbU5BQ0U7QTFCMm1ETjtBMEJ0bURJO0VBQ0U7QTFCd21ETjtBMEI3bERJO0VBQ0U7QTFCK2xETjtBMEI1bERJO0VBQ0U7QTFCOGxETjtBMENwbURFO0VBQ0U7QTFDc21ESjtBMENubURFO0VBQ0U7RUFDQTtBMUNxbURKO0EwQ25tREk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0ExQ3FtRE47O0EwQ2htREE7RWhCNURFO0tBQUE7VUFBQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBbUlFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBeEhBO0VBQ0E7RUFDQTtBMUJ1cERKO0F1QjFyREk7RUdtQkEsbU5BQ0U7QTFCeXFETjtBMEJwcURJO0VBQ0U7QTFCc3FETjtBMEIzcERJO0VBQ0U7QTFCNnBETjtBMEIxcERJO0VBQ0U7QTFCNHBETjtBeUJsckRJO0VpQndDSjtJQU1JO0UxQ3dvREY7QUFDRjs7QTBDcm9EQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0ExQ3dvREY7QTBDdG9ERTtFQUNFO0ExQ3dvREo7QTBDdG9ESTtFQUVFO0ExQ3VvRE47QTBDbm9ERTtFQUNFO0ExQ3FvREo7QTBDbG9ERTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0ExQ29vREo7O0EwQ2hvREE7RWhCakdFO0tBQUE7VUFBQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBNkdFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBbEdBO0VBQ0E7RUFDQTtFRnpDRjtFa0I2R0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLDRHQUNFO0ExQ3lwREo7QXVCNXdESTtFR21CQSxtTkFDRTtBMUIydkROO0EwQnR2REk7RUFDRTtBMUJ3dkROO0EwQjd1REk7RUFDRTtBMUIrdUROO0EwQjV1REk7RUFDRTtBMUI4dUROO0EwQ2xxREU7RUFDRTtFQUNBO0ExQ29xREo7QTBDanFERTtFQUNFO0VBQ0E7RUFDQTtBMUNtcURKOztBMkN4ekRBOzs7RUFBQTtBQVdBO0VBR0U7RUFDQTtFQUNBO0VBQ0E7RWJKQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFtR0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VFakRBO0VBQ0E7RUFDQTtFQUNBO0FoQ3V3REo7QXVCL3pESTtFT0ZBO0E5Qm8wREo7QThCaDBESTtFTlJGO0F4QjIwREY7QThCM3RESTtFQUNFO0VBQ0E7RUV2REY7RUFDQTtFQUNBO0VBQ0E7QWhDcXhESjtBK0IxMURFO0VDa0VFO0VBQ0E7RUFDQTtFQUNBO0VGMkRJO0E5Qml1RFI7QStCajJERTtFQ2tFRTtFQUNBO0VBQ0E7RUFDQTtFRjJESTtBOUJpdURSO0ErQjcxREU7RUM4REU7RUFDQTtFQUNBO0VBQ0E7RUYyREk7QTlCd3VEUjtBK0JoMkRFO0VDMERFO0VBQ0E7RUFDQTtFQUNBO0VGMkRJO0VDdEhKO0EvQnMyREo7QStCbjJERTtFQ3FERTtFQUNBO0VBQ0E7RUFDQTtFRjJESTtBOUJ1dkRSO0F5QnQxREk7RWtCaENKO0lBVUk7RTNDZzNERjtBQUNGO0EyQzkyREU7RUFDRTtBM0NnM0RKO0EyQzcyREU7RUFDRTtFQUNBO0EzQysyREo7QTJDNzJESTtFYm5CRjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUEwRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFYWhFRTtFQUNBO0VBQ0EsNEdBQ0U7RUFFRjtBM0N5M0ROO0F1QjE0REk7RU9GQTtBOUIrNERKO0E4QjM0REk7RU5SRjtBeEJzNURGO0E4QmwwREk7RUFDRTtFQUNBO0VBQ0E7RUU1QkY7RUFDQTtFQUNBO0VBQ0E7QWhDaTJESjtBK0J0NkRFO0VDa0VFO0VBQ0E7RUFDQTtFQUNBO0VGZ0NJO0E5QncwRFI7QStCNzZERTtFQ2tFRTtFQUNBO0VBQ0E7RUFDQTtFRmdDSTtBOUJ3MERSO0ErQno2REU7RUM4REU7RUFDQTtFQUNBO0VBQ0E7RUZnQ0k7QTlCKzBEUjtBK0I1NkRFO0VDMERFO0VBQ0E7RUFDQTtFQUNBO0VGZ0NJO0VDM0ZKO0EvQms3REo7QStCLzZERTtFQ3FERTtFQUNBO0VBQ0E7RUFDQTtFRmdDSTtBOUI4MURSO0EyQy81RE07RUFDRTtFQUNBO0EzQ2k2RFI7QTJDNTVERTtFYnhDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFtR0U7RUFDQTtFQUNB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Q0E7QXBEZytFTjtBb0Q5OUVNO0VBRUU7QXBEKzlFUjtBb0Q1OUVNOzs7OztFQUtFO0VBQ0E7RUFDQTtFQUNBO0FwRDg5RVI7QW9EMTlFSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXBENDlFTjtBb0QxOUVNO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXBENDlFUjtBb0R6OUVNO0VwQjNERjtFQUNBO0VBQ0E7RUFDQTtBaEN1aEZKO0FvRDE5RUk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBcEQ0OUVOO0FvRHg5RUU7RXBCeEVFO0VBQ0E7RUFDQTtFQUNBO0VvQndFQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FwRDQ5RUo7QW9EMTlFSTtFQUNFO0FwRDQ5RU47QW9EMTlFTTtFQUNFO0FwRDQ5RVI7QW9EejlFTTtFQUNFO0VBQ0E7QXBEMjlFUjtBb0R6OUVRO0VBQ0U7QXBEMjlFVjtBb0R0OUVJO0VBQ0U7QXBEdzlFTjtBb0RyOUVJO0VwQmhKQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VvQitJRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FwRDA5RU47QW9EeDlFTTtFQUNFO0FwRDA5RVI7QW9EdjlFTTtFQUNFO0FwRHk5RVI7QW9EcjlFSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXBEdTlFTjtBb0RyOUVNO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXBEdTlFUjtBb0RyOUVRO0VBQ0U7QXBEdTlFVjtBb0RyOUVVO0VBQ0U7QXBEdTlFWjtBb0RqOUVJO0VwQi9KQTtFQUNBO0VBQ0E7RUFDQTtFb0IrSkU7RUFDQTtBcERxOUVOO0FvRGo5RUU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBcERtOUVKO0FvRC84RU07RUFDRTtFQUNBO0FwRGk5RVI7QW9ENzhFSTtFQUNFO0VBQ0E7RUFDQTtBcEQrOEVOO0FvRDU4RUk7RXBCbk9BO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RW9Ca09FO0FwRGk5RU47QW9ELzhFTTtFQUVFO0FwRGc5RVI7QW9ENThFSTtFcEJ0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STtFN0JaQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0U2QldFO0VBQ0E7RUFDQTtFQUNBO0E3RGk2R047QTZEOTVHSTtFQUNFO0VBQ0E7QTdEZzZHTjtBNkQ5NUdNO0VBQ0U7QTdEZzZHUjtBNkQ3NUdNO0VBQ0U7QTdEKzVHUjtBNkQ1NUdNO0VBQ0U7RUFDQTtBN0Q4NUdSO0E2RDE1R0k7RUFDRTtBN0Q0NUdOO0E2RDE1R007RUFFRTtFQUNBO0E3RDI1R1I7QTZEejVHUTtFQUNFO0E3RDI1R1Y7QTZEdDVHSTtFQUNFO0E3RHc1R047QTZEdDVHTTtFQUNFO0VBQ0E7QTdEdzVHUjtBNkRyNUdNO0VBQ0U7RUFDQTtBN0R1NUdSO0E2RHA1R007RUFDRTtBN0RzNUdSO0E2RG41R007RUFDRTtBN0RxNUdSO0E2RGo1R0k7RTdCM0JBO0VBQ0E7RUFDQTtFQUNBO0U2QjJCRTtFQUNBO0VBQ0E7RUFDQTtBN0RxNUdOO0E2RGw1R0k7RTdCN0JBO0VBQ0E7RUFDQTtFQUNBO0U2QjZCRTtBN0RzNUdOO0E2RHA1R007RTdCbENGO0VBQ0E7RUFDQTtFQUNBO0FoQ3k3R0o7QTZEcjVHSTtFN0I5Q0E7RUFDQTtFQUNBO0VBQ0E7QWhDczhHSjtBNkR4NUdNO0U3QmpERjtFQUNBO0VBQ0E7RUFDQTtFNkJpREk7QTdENDVHUjtBNkR4NUdJO0U3QnhEQTtFQUNBO0VBQ0E7RUFDQTtFNkJ3REU7QTdENDVHTjtBNkQxNUdNO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3RDQ1R1I7QTZEMTVHUTtFQUVFO0E3RDI1R1Y7QTZEdjVHTTtFN0IzRUY7RUFDQTtFQUNBO0VBQ0E7RTZCMkVJO0VBQ0E7QTdEMjVHUjtBNkR4NUdNO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QTdEMDVHUjtBNkR0NUdJO0U3QjFGQTtFQUNBO0VBQ0E7RUFDQTtFNkIwRkU7QTdEMDVHTjtBNkR4NUdNO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3RDA1R1I7QTZEeDVHUTtFQUVFO0E3RHk1R1Y7QTZEcjVHTTtFN0I3R0Y7RUFDQTtFQUNBO0VBQ0E7RTZCNkdJO0E3RHk1R1I7QTZEdDVHTTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0E3RHc1R1I7QTZEcDVHSTtFN0IzSEE7RUFDQTtFQUNBO0VBQ0E7QWhDa2hISjtBNkR2NUdNO0U3QjlIRjtFQUNBO0VBQ0E7RUFDQTtFNkI4SEk7QTdEMjVHUjtBNkR2NUdJO0U3QnJJQTtFQUNBO0VBQ0E7RUFDQTtBaEMraEhKO0E2RDE1R007RTdCeElGO0VBQ0E7RUFDQTtFQUNBO0U2QndJSTtBN0Q4NUdSO0E2RDE1R0k7RTdCL0lBO0VBQ0E7RUFDQTtFQUNBO0FoQzRpSEo7QTZENzVHTTtFN0JsSkY7RUFDQTtFQUNBO0VBQ0E7RTZCa0pJO0E3RGk2R1I7QTZENzVHSTtFN0J6SkE7RUFDQTtFQUNBO0VBQ0E7QWhDeWpISjtBNkRoNkdNO0U3QjVKRjtFQUNBO0VBQ0E7RUFDQTtFNkI0Skk7QTdEbzZHUjtBNkRoNkdJO0U3Qm5LQTtFQUNBO0VBQ0E7RUFDQTtBaENza0hKO0E2RG42R007RTdCdEtGO0VBQ0E7RUFDQTtFQUNBO0U2QnNLSTtBN0R1NkdSO0E2RG42R0k7RTdCN0tBO0VBQ0E7RUFDQTtFQUNBO0FoQ21sSEo7QTZEdDZHTTtFN0JoTEY7RUFDQTtFQUNBO0VBQ0E7RTZCZ0xJO0E3RDA2R1I7QTZEdDZHSTtFQUNFO0E3RHc2R047QTZEdDZHTTtFN0IxTEY7RUFDQTtFQUNBO0VBQ0E7QWhDbW1ISjtBNkR4NkdNO0VBQ0U7QTdEMDZHUjtBNkR4NkdRO0VBRUU7QTdEeTZHVjtBNkRwNkdJO0VBQ0U7QTdEczZHTjtBNkRwNkdNO0U3QjNNRjtFQUNBO0VBQ0E7RUFDQTtBaENrbkhKO0E2RHA2R007RTdCak5GO0VBQ0E7RUFDQTtFQUNBO0FoQ3duSEo7QTZEcDZHTTtFN0J2TkY7RUFDQTtFQUNBO0VBQ0E7QWhDOG5ISjtBNkRwNkdNO0U3QjdORjtFQUNBO0VBQ0E7RUFDQTtFNkI2Tkk7QTdEdzZHUjtBNkRuNkdNO0U3QnJPRjtFQUNBO0VBQ0E7RUFDQTtFNkJxT0k7QTdEdTZHUjtBNkRsNkdNO0VBQ0U7QTdEbzZHUjtBNkRq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RUFDQTtFQUNBO0VGRUk7QTlCMjdJUjtBK0I5L0lFOztFQzhERTtFQUNBO0VBQ0E7RUFDQTtFRkVJO0E5Qm04SVI7QStCbGdKRTs7RUMwREU7RUFDQTtFQUNBO0VBQ0E7RUZFSTtFQzdESjtBL0J5Z0pKO0ErQnRnSkU7O0VDcURFO0VBQ0E7RUFDQTtFQUNBO0VGRUk7QTlCbzlJUjtBOEJqOUlNOztFQUNFO0VBQ0E7QTlCbzlJUjtBa0YvOUlJO0VBQ0U7QWxGaStJTjtBa0Y5OUlJO0V4RHhERjtLQUFBO1VBQUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQXlKRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQTlJQTtFQUNBO0VBQ0E7RXdEMEJFO0FsRnUvSU47QXVCcGpKSTtFR21CQSxtTkFDRTtBMUJtaUpOO0EwQjloSkk7RUFDRTtBMUJnaUpOO0EwQnJoSkk7RUFDRTtBMUJ1aEpOO0EwQnBoSkk7RUFDRTtBMUJzaEpOO0FrRmhnSkk7RUFDRTtFQUNBO0FsRmtnSk47QWtGLy9JSTtFQUNFO0FsRmlnSk47O0FtRjlsSkE7OztFQUFBO0FBV0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBbkYwbEpGO0FtRnhsSkU7RW5ESUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFbURMQTtBbkY2bEpKO0FtRjFsSkU7RW5EOENFO0VBQ0E7RUFDQTtFQUNBO0VtRDlDQTtBbkY4bEpKO0FtRjNsSkU7RW5EK0NFO0VBQ0E7RUFDQTtFQUNBO0FoQytpSko7QW1GN2xKRTtFekRWQTtLQUFBO1VBQUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQXlKRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQTlJQTtFQUNBO0VBQ0E7QTFCaW1KSjtBdUJwb0pJO0VHbUJBLG1OQUNFO0ExQm1uSk47QTBCOW1KSTtFQUNFO0ExQmduSk47QTBCcm1KSTtFQUNFO0ExQnVtSk47QTBCcG1KSTtFQUNFO0ExQnNtSk47O0FvRnZxSkE7OztFQUFBO0FBY0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBcEZncUpKO0FvRjlwSkk7RUFDRTtBcEZncUpOO0FvRjdwSkk7RXBEMEJBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RW9EM0JFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXBGa3FKTjtBb0YvcEpJO0VBQ0U7RUFDQTtBcEZpcUpOO0FvRi9wSk07RUFDRTtBcEZpcUpSOztBcUYzc0pBOzs7RUFBQTtBQWNFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXJGb3NKSjtBcUZqc0pFO0VBQ0U7RUFDQTtBckZtc0pKO0FxRmhzSkU7RXJETEU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFcURJQTtBckZxc0pKO0FxRmxzSkU7RUFDRTtFQUNBO0VBQ0E7QXJGb3NKSjs7QXNGdnVKQTs7O0VBQUE7QUFTQTtFQUdFO0VBQ0E7RUFDQTtBdEZtdUpGO0FzRmp1SkU7RUFDRTtBdEZtdUpKO0FzRmp1Skk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBdEZtdUpOO0F5Qi9zSkk7RTZEeEJBO0lBT0k7SUFDQTtFdEZvdUpOO0FBQ0Y7QXlCcnRKSTtFNkR4QkE7SUFZSTtJQUNBO0V0RnF1Sk47QUFDRjtBeUIzdEpJO0U2RHhCQTtJQWlCSTtFdEZzdUpOO0FBQ0Y7QXNGbHVKRTtFQUNFO0VBQ0E7QXRGb3VKSjtBc0ZodUpJO0V0RDZCQTtFQUNBO0VBQ0E7RUFDQTtFc0Q3QkU7QXRGb3VKTjtBc0ZqdUpJO0V0RGdCQTtFQUNBO0VBQ0E7RUFDQTtFc0RoQkU7QXRGcXVKTjtBc0ZudUpNO0VBQ0U7QXRGcXVKUjtBeUJydkpJO0U2RHFCRTtJQUNFO0V0Rm11Sk47QUFDRjtBc0Y5dEpJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBdEZndUpOO0F5Qmp3Skk7RTZENEJBO0lBUUk7RXRGaXVKTjtBQUNGO0FzRjl0Skk7RUFDRTtBdEZndUpOO0FzRjl0Sk07O0VBRUU7QXRGZ3VKUjtBc0Y1dEpJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXRGOHRKTjtBc0Y1dEpNO0V0RHRCRjtFQUNBO0VBQ0E7RUFDQTtBaENxdkpKOztBdUZwMEpBOzs7RUFBQTtBQVVBO0VBSUU7RUFDQTtFQUNBO0VBQ0E7RUFFQTs7SUFBQTtFQTRDQTtFQUtBOztJQUFBO0VBWUE7O0lBQUE7QXZGeXdKRjtBdUZuMEpFO0VBQ0U7QXZGcTBKSjtBdUZuMEpJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBdkZxMEpOO0F1Rm4wSk07RUFDRTtBdkZxMEpSO0F5QjN6Skk7RThEWEU7SUFJSTtFdkZzMEpSO0FBQ0Y7QXlCaDBKSTtFOERIRTtJQUVJO0V2RnEwSlI7QUFDRjtBdUZoMEpFO0VBQ0U7QXZGazBKSjtBdUZoMEpJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXZGazBKTjtBdUZoMEpNO0VBQ0U7QXZGazBKUjtBdUY1ekpFO0VBQ0U7QXZGOHpKSjtBdUZ4ekpFO0VBQ0U7RUFDQTtBdkYwekpKO0F5QngxSkk7RThENEJGO0lBS0k7RXZGMnpKSjtBQUNGO0F1RnJ6SkU7RUFFRTtFQUNBO0VBQ0E7QXZGc3pKSjtBdUZuekpFO0U3RG5FQTtLQUFBO1VBQUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQXdIRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFNkR2RUE7QXZGMDBKSjtBdUJqNUpJO0VHbUJBLG1OQUNFO0ExQmc0Sk47QTBCMzNKSTtFQUNFO0ExQjYzSk47QXVGOTBKSTtFQUNFO0F2RmcxSk47QXVGNTBKTTtFQUNFO0VBQ0E7QXZGODBKUjtBdUYzMEpNO0VBQ0U7QXZGNjBKUjtBeUI3NEpJO0U4RHlEQTtJQVdJO0V2RjYwSk47QUFDRjtBdUZ6MEpNO0VBQ0U7QXZGMjBKUjtBeUJyNUpJO0U4RHdFQTtJQU1JO0V2RjIwSk47QUFDRjtBdUZ2MEpFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F2RnkwSko7QXlCcjZKSTtFOERtRkY7SUFZSTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RXZGMDBKSjtBQUNGO0F1RngwSkk7RUFDRTtFQUNBO0F2RjAwSk47O0F3RmorSkE7OztFQUFBO0FBV0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBeEY2OUpKO0F3RjE5SkU7RUFDRTtBeEY0OUpKOztBeUYvK0pBOzs7O0VBQUE7QUFTQTtFQUdFO0F6RjQrSkY7QXlGMStKRTtFQUNFO0VBQ0E7RUFDQTtBekY0K0pKO0F5Qmw5Skk7RWdFN0JGO0lBTUk7SUFDQTtFekY2K0pKO0FBQ0Y7QXlGMStKRTtFQUNFO0F6RjQrSko7QXlCMzlKSTtFZ0VsQkY7SUFJSTtFekY2K0pKO0FBQ0Y7QXlGMStKRTtFQUNFO0VBQ0E7RUFDQTtBekY0K0pKO0F5QnIrSkk7RWdFVkY7SUFNSTtFekY2K0pKO0FBQ0Y7QXlGMStKRTtFQUNFO0VBQ0E7RUFDQTtBekY0K0pKO0F5Qi8rSkk7RWdFQUY7SUFNSTtFekY2K0pKO0FBQ0Y7QXlGMStKRTtFekRnQkU7RUFDQTtFQUNBO0VBQ0E7RXlEaEJBO0VBQ0E7QXpGOCtKSjtBeUYzK0pFO0V6RC9CRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0V5RDhCQTtFQUNBO0F6RmcvSko7QXlGNytKRTtFekRTRTtFQUNBO0VBQ0E7RUFDQTtFeURUQTtBekZpL0pKOztBMEZ2aktBOzs7RUFBQTtBQVdFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsaUhBQ0U7QTFGa2pLTjtBMEYvaUtJO0VBQ0U7RUFDQTtBMUZpaktOO0EwRi9pS007RUFDRTtBMUZpaktSO0EwRi9pS1E7RUFDRTtFQUNBO0ExRmlqS1Y7QTBGMWlLSTtFMURDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0UwREZFO0ExRitpS047QTBGNWlLSTtFMURtQkE7RUFDQTtFQUNBO0VBQ0E7RTBEbkJFO0VBQ0E7QTFGZ2pLTjtBMEY1aUtFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBMUY4aUtKO0EwRjVpS0k7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxrSEFDRTtBMUY2aUtSOztBMkZ6bktBOzs7RUFBQTtBQWFFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBM0ZtbktKO0F5QjFsS0k7RWtFOUJGO0lBUUk7RTNGb25LSjtBQUNGO0F5QnRrS0k7RWtFekNFO0lBQ0U7SUFDQTtFM0ZrbktOO0UyRi9tS0k7SUFDRTtJQUNBO0UzRmluS047QUFDRjtBMkY3bUtFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EzRittS0o7QXlCcG5LSTtFa0VKRjtJQVlJO0lBQ0E7SUFDQTtJQUNBO0UzRmduS0o7QUFDRjtBMkY3bUtFO0VBQ0U7RUFDQTtFQUNBO0tBQUE7QTNGK21LSjtBMkY3bUtJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EzRittS047QTJGN21LTTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBM0YrbUtSO0EyRjVtS007RUFDRTtBM0Y4bUtSO0F5QnBwS0k7RWtFcUNFO0lBSUk7RTNGK21LUjtBQUNGO0EyRjFtS0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTNGNG1LSjtBeUJqcUtJO0VrRStDRjtJQVNJO0UzRjZtS0o7QUFDRjtBMkYxbUtFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EzRjRtS0o7QXlCOXFLSTtFa0U0REY7SUFTSTtFM0Y2bUtKO0FBQ0Y7QTJGM21LSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTNGNm1LTjtBMkYxbUtJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7S0FBQTtBM0Y0bUtOO0EyRnhtS0U7RTNEakhFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RTJEZ0hBO0VBQ0E7QTNGNm1LSjtBeUI1c0tJO0VrRTJGRjtJM0R6SEU7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFaEM4dUtGO0FBQ0Y7QTJGL21LRTtFM0RwSEU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFMkRtSEE7RUFDQTtBM0ZvbktKO0F5Qjl0S0k7RWtFc0dGO0kzRHBJRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0VoQ2d3S0Y7QUFDRjtBMkZ0bktFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QTNGd25LSjtBeUI3dUtJO0VrRWlIRjtJQU9JO0UzRnluS0o7QUFDRjtBMkZ0bktFO0VqRWhKQTtLQUFBO1VBQUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQXlKRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBMUJpbktKO0F1Qmh5S0k7RUdtQkEsbU5BQ0U7QTFCK3dLTjtBMEIxd0tJO0VBQ0U7QTFCNHdLTjtBMkZscEtJO0VqRW5IQTtFQUNBO0VBQ0E7QTFCd3dLSjtBMEJ0d0tJO0VBQ0U7QTFCd3dLTjtBMEJyd0tJO0VBQ0U7QTFCdXdLTjs7QTRGeDBLQTs7O0VBQUE7QUFVRTtFNURXRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0U0RFpBO0VBQ0E7QTVGdzBLSjtBNEZyMEtFO0U1RDJERTtFQUNBO0VBQ0E7RUFDQTtFNEQzREE7QTVGeTBLSjs7QTZGNzFLQTs7O0VBQUE7QUFTQTtFQUdFO0VBQ0E7RUFDQTtBN0Z5MUtGO0E2RnYxS0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBN0Z5MUtKO0E2RnQxS0U7RUFDRTtFQUNBO0VBQ0E7QTdGdzFLSjtBNkZyMUtFO0VBQ0U7RUFDQTtFQUNBO0E3RnUxS0o7O0E4RnYzS0E7OztFQUFBO0FBYUU7RUFDRTtBOUZpM0tKO0E4RjkyS0U7RTlEWUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFOERiQTtFQUNBO0E5Rm0zS0o7QThGaDNLRTtFcEVEQTtLQUFBO1VBQUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQXdIRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQTdHQTtFQUNBO0VBQ0E7RW9FN0JBO0VBQ0E7RUFDQTtBOUZ5NEtKO0F1Qmo1S0k7RUdtQkEsbU5BQ0U7QTFCZzRLTjtBMEIzM0tJO0VBQ0U7QTFCNjNLTjtBMEJsM0tJO0VBQ0U7QTFCbzNLTjtBMEJqM0tJO0VBQ0U7QTFCbTNLTjtBOEZsNUtFO0U5RG1DRTtFQUNBO0VBQ0E7RUFDQTtFOERuQ0E7RUFDQTtFQUNBO0E5RnM1S0o7QXlCbDVLSTtFcUVURjtJQVFJO0U5RnU1S0o7QUFDRjtBOEZwNUtFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBOUZzNUtKO0E4RnA1S0k7RUFDRTtBOUZzNUtOO0E4Rmw1S0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E5Rm81S0o7QThGajVLRTtFcEUzQ0E7S0FBQTtVQUFBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUE4SUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFuSUE7RUFDQTtFQUNBO0VvRWFBO0E5RjA2S0o7QXVCMTlLSTtFR21CQSxtTkFDRTtBMUJ5OEtOO0EwQnA4S0k7RUFDRTtBMUJzOEtOO0EwQjM3S0k7RUFDRTtBMUI2N0tOO0EwQjE3S0k7RUFDRTtBMUI0N0tOO0E4RnA3S0k7RUFDRTtFQUNBO0E5RnM3S047QThGbDdLRTtFQUNFO0E5Rm83S0o7QXlCejlLSTtFcUV3Q0Y7SUFFSTtJQUNBO0lBQ0E7RTlGbTdLSjtFOEZqN0tJO0lBQ0U7RTlGbTdLTjtFOEZoN0tRO0lBQ0U7RTlGazdLVjtFOEYzNktRO0lBQ0U7RTlGNjZLVjtFOEZ6NktNO0k5RDdESjtJQUNBO0lBQ0E7SUFDQTtJQUNBO0k4RDRETTtJQUNBO0U5Rjg2S1I7RThGeDZLUTtJQUNFO0U5RjA2S1Y7RThGdDZLTTtJOUQ1RUo7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJOEQyRU07SUFDQTtFOUYyNktSO0FBQ0Y7QThGdjZLSTtFQUNFO0VBQ0E7RUFDQTtLQUFBO0E5Rnk2S047QXlCbmdMSTtFcUV1RkE7SUFNSTtJQUNBO0U5RjA2S047QUFDRjtBOEZ4NktNO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E5RjA2S1I7QThGbDZLSTtFQUNFO0E5Rm82S047QThGajZLSTtFOURsRkE7RUFDQTtFQUNBO0VBQ0E7RThEa0ZFO0VBQ0E7QTlGcTZLTjtBOEYvNUtNO0VBQ0U7RUFDQTtBOUZpNktSO0E4Rjc1S0k7RTlEbEdBO0VBQ0E7RUFDQTtFQUNBO0U4RGtHRTtFQUNBO0E5Rmk2S047QThGNTVLSTtFOUQzR0E7RUFDQTtFQUNBO0VBQ0E7RStEOUVGO0VBQ0EscUJEdUw0QjtFQ3RMNUI7RUFDQTtFQUNBO0VEc0xJO0VBQ0E7QTlGbzZLTjtBOEYvNUtJO0VBQ0U7QTlGaTZLTjtBOEY5NUtJO0VBQ0U7RUFDQTtFQUNBO0E5Rmc2S047QThGNzVLSTtFOUQvSEE7RUFDQTtFQUNBO0VBQ0E7RStEOUVGO0VBQ0EscUJEMk00QjtFQzFNNUI7RUFDQTtFQUNBO0VEME1JO0VBQ0E7QTlGcTZLTjs7QWdHcm5MQTs7O0VBQUE7QUFXQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FoR2luTEY7QWdHL21MRTtFaEVJRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VnRUxBO0FoR29uTEo7QWdHam5MRTtFaEU4Q0U7RUFDQTtFQUNBO0VBQ0E7RWdFOUNBO0VBQ0E7RUFDQTtBaEdxbkxKO0FnR2xuTEU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQUE7RUFDQTtBaEdvbkxKO0F5QjltTEk7RXVFWkY7SUFTSTtJQUNBO0VoR3FuTEo7QUFDRjtBZ0dubkxJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWhHcW5MTjtBZ0dqbkxFO0V0RW1JRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFSXpMRjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUE0Q0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBOUJnb0xKO0F1QjlxTEk7RU9GQTtBOUJtckxKO0E4Qi9xTEk7RU5SRjtBeEIwckxGO0E4QnBvTEk7RUFDRTtFQUNBO0VBQ0E7RUVFRjtFQUNBO0VBQ0E7RUFDQTtBaENxb0xKO0ErQjFzTEU7RUNrRUU7RUFDQTtFQUNBO0VBQ0E7RUZFSTtBOUIwb0xSO0ErQmp0TEU7RUNrRUU7RUFDQTtFQUNBO0VBQ0E7RUZFSTtBOUIwb0xSO0ErQjdzTEU7RUM4REU7RUFDQTtFQUNBO0VBQ0E7RUZFSTtBOUJpcExSO0ErQmh0TEU7RUMwREU7RUFDQTtFQUNBO0VBQ0E7RUZFSTtFQzdESjtBL0JzdExKO0ErQm50TEU7RUNxREU7RUFDQTtFQUNBO0VBQ0E7RUZFSTtBOUJncUxSO0E4QjdwTE07RUFDRTtFQUNBO0E5QitwTFI7QStCM3VMRTtFQ2tFRTtFQUNBO0VBQ0E7RUFDQTtFZ0VWSTtFQUNBO0FoR3VyTFI7QStCbnZMRTtFQ2tFRTtFQUNBO0VBQ0E7RUFDQTtFZ0VWSTtFQUNBO0FoR3VyTFI7QStCL3VMRTtFQzhERTtFQUNBO0VBQ0E7RUFDQTtFZ0VWSTtFQUNBO0FoRytyTFI7QStCbnZMRTtFQzBERTtFQUNBO0VBQ0E7RUFDQTtFZ0VWSTtFQUNBO0VqRWxESjtBL0IwdkxKO0ErQnZ2TEU7RUNxREU7RUFDQTtFQUNBO0VBQ0E7RWdFVkk7RUFDQTtBaEdndExSO0FnRzNzTEU7RXRFcERBO0tBQUE7VUFBQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBeUpFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBOUlBO0VBQ0E7RUFDQTtBMUJ5dkxKO0F1QjV4TEk7RUdtQkEsbU5BQ0U7QTFCMndMTjtBMEJ0d0xJO0VBQ0U7QTFCd3dMTjtBMEI3dkxJO0VBQ0U7QTFCK3ZMTjtBMEI1dkxJO0VBQ0U7QTFCOHZMTjs7QWlHL3pMQTs7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QUNBO0VBQ0E7QWpDNnZNSjs7QTBHcndNQTtFckZjRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXJCMnZNRjtBcUJ6dk1FO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBckIydk1KOztBMEc3eE1BO0VBQ0U7RUFDQTtBMUdneU1GO0EwRzl4TUU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTFHZ3lNSjs7QTJHbjBNQTs7O0VBQUE7QUFTSTtFQUNFO0EzR2kwTU47QTJHbDBNSTtFQUNFO0EzR28wTU47QTJHcjBNSTtFQUNFO0EzR3UwTU47QTJHeDBNSTtFQUNFO0EzRzAwTU47QTJHMzBNSTtFQUNFO0EzRzYwTU47QTJHOTBNSTtFQUNFO0EzR2cxTU47QTJHajFNSTtFQUNFO0EzR20xTU47QTJHcDFNSTtFQUNFO0EzR3MxTU47QTJHdjFNSTtFQUNFO0EzR3kxTU47QTJHMTFNSTtFQUNFO0EzRzQxTU47QTJHNzFNSTtFQUNFO0EzRysxTU47QTJHaDJNSTtFQUNFO0EzR2syTU47QTJHbjJNSTtFQUNFO0EzR3EyTU47QTJHdDJNSTtFQUNFO0EzR3cyTU47QTJHejJNSTtFQUNFO0EzRzIyTU47QTJHNTJNSTtFQUNFO0EzRzgyTU47QTJHLzJNSTtFQUNFO0EzR2kzTU47QTJHbDNNSTtFQUNFO0EzR28zTU47QTJHcjNNSTtFQUNFO0EzR3UzTU47QTJHeDNNSTtFQUNFO0EzRzAzTU47QTJHMzNNSTtFQUNFO0EzRzYzTU47QTJHOTNNSTtFQUNFO0EzR2c0TU47QTJHajRNSTtFQUNFO0EzR200TU47QTJHcDRNSTtFQUNFO0EzR3M0TU47QTJHdjRNSTtFQUNFO0EzR3k0TU47QTJHMTRNSTtFQUNFO0EzRzQ0TU47QTJHNzRNSTtFQUNFO0EzRys0TU47QTJHaDVNSTtFQUNFO0EzR2s1TU47QTJHbjVNSTtFQUNFO0EzR3E1TU47QTJHdDVNSTtFQUNFO0EzR3c1TU47QTJHejVNSTtFQUNFO0EzRzI1TU47QTJHNTVNSTtFQUNFO0EzRzg1TU47QTJHLzVNSTtFQUNFO0EzR2k2TU47QTJHbDZNSTtFQUNFO0EzR282TU47QTJHcjZNSTtFQUNFO0EzR3U2TU47QTJHeDZNSTtFQUNFO0EzRzA2TU47QTJHMzZNSTtFQUNFO0EzRzY2TU47QTJHOTZNSTtFQUNFO0EzR2c3TU47QTJHajdNSTtFQUNFO0EzR203TU47QTJHcDdNSTtFQUNFO0EzR3M3TU47QTJHdjdNSTtFQUNFO0EzR3k3TU47QTJHMTdNSTtFQUNFO0EzRzQ3TU47QTJHNzdNSTtFQUNFO0EzRys3TU47QTJHaDhNSTtFQUNFO0EzR2s4TU47QTJHbjhNSTtFQUNFO0EzR3E4TU47QTJHdDhNSTtFQUNFO0EzR3c4TU47QTJHejhNSTtFQUNFO0EzRzI4TU47QTJHNThNSTtFQUNFO0EzRzg4TU47QTJHLzhNSTtFQUNFO0EzR2k5TU47QTJHbDlNSTtFQUNFO0EzR285TU47QTJHcjlNSTtFQUNFO0EzR3U5TU47QTJHeDlNSTtFQUNFO0EzRzA5TU47QTJHMzlNSTtFQUNFO0EzRzY5TU47QTJHOTlNSTtFQUNFO0EzR2crTU47QTJHaitNSTtFQUNFO0EzR20rTU47QTJHcCtNSTtFQUNFO0EzR3MrTU47QTJHditNSTtFQUNFO0EzR3krTU47QTJHMStNSTtFQUNFO0EzRzQrTU47O0E0R3QvTUE7OztFQUFBO0FBS0E7RUFDRTtBNUd3L01GOztBNEdyL01BO0VBQ0U7QTVHdy9NRjs7QTRHci9NQTtFQUNFO0E1R3cvTUY7O0E0R3IvTUE7RUFDRTtBNUd3L01GOztBNEdyL01BO0VBQ0U7QTVHdy9NRjs7QTZHOWdOQTs7O0VBQUE7QWxGZUU7RUFDRTtFQUNBO0VBQ0E7QTNCc2dOSjs7QThHeGhOQTs7O0VBQUE7QUFTSTtFQUNFO0E5R3NoTk47QThHdmhOSTtFQUNFO0E5R3loTk47QThHMWhOSTtFQUNFO0E5RzRoTk47QThHN2hOSTtFQUNFO0E5RytoTk47QThHaGlOSTtFQUNFO0E5R2tpTk47QThHbmlOSTtFQUNFO0E5R3FpTk47QThHdGlOSTtFQUNFO0E5R3dpTk47QThHemlOSTtFQUNFO0E5RzJpTk47QThHNWlOSTtFQUNFO0E5RzhpTk47QThHL2lOSTtFQUNFO0E5R2lqTk47QThHbGpOSTtFQUNFO0E5R29qTk47QThHcmpOSTtFQUNFO0E5R3VqTk47QThHeGpOSTtFQUNFO0E5RzBqTk47QThHM2pOSTtFQUNFO0E5RzZqTk47QThHOWpOSTtFQUNFO0E5R2drTk47QThHamtOSTtFQUNFO0E5R21rTk47QThHcGtOSTtFQUNFO0E5R3NrTk47QThHdmtOSTtFQUNFO0E5R3lrTk47QThHMWtOSTtFQUNFO0E5RzRrTk47QThHN2tOSTtFQUNFO0E5RytrTk47QThHaGxOSTtFQUNFO0E5R2tsTk47QThHbmxOSTtFQUNFO0E5R3FsTk47QThHdGxOSTtFQUNFO0E5R3dsTk47QThHemxOSTtFQUNFO0E5RzJsTk47QThHNWxOSTtFQUNFO0E5RzhsTk47QThHL2xOSTtFQUNFO0E5R2ltTk47QThHbG1OSTtFQUNFO0E5R29tTk47QThHcm1OSTtFQUNFO0E5R3VtTk47QThHeG1OSTtFQUNFO0E5RzBtTk47QThHM21OSTtFQUNFO0E5RzZtTk47QThHOW1OSTtFQUNFO0E5R2duTk47QThHam5OSTtFQUNFO0E5R21uTk47QThHcG5OSTtFQUNFO0E5R3NuTk47QThHdm5OSTtFQUNFO0E5R3luTk47QThHMW5OSTtFQUNFO0E5RzRuTk47QThHN25OSTtFQUNFO0E5RytuTk47QThHaG9OSTtFQUNFO0E5R2tvTk47QThHbm9OSTtFQUNFO0E5R3FvTk47QThHdG9OSTtFQUNFO0E5R3dvTk47QThHem9OSTtFQUNFO0E5RzJvTk47QThHNW9OSTtFQUNFO0E5RzhvTk47QThHL29OSTtFQUNFO0E5R2lwTk47QThHbHBOSTtFQUNFO0E5R29wTk47QThHcnBOSTtFQUNFO0E5R3VwTk47QThHeHBOSTtFQUNFO0E5RzBwTk47QThHM3BOSTtFQUNFO0E5RzZwTk47QThHOXBOSTtFQUNFO0E5R2dxTk47QThHanFOSTtFQUNFO0E5R21xTk47QThHcHFOSTtFQUNFO0E5R3NxTk47QThHdnFOSTtFQUNFO0E5R3lxTk47QThHMXFOSTtFQUNFO0E5RzRxTk47QThHN3FOSTtFQUNFO0E5RytxTk47QThHaHJOSTtFQUNFO0E5R2tyTk47QThHbnJOSTtFQUNFO0E5R3FyTk47QThHdHJOSTtFQUNFO0E5R3dyTk47QThHenJOSTtFQUNFO0E5RzJyTk47QThHNXJOSTtFQUNFO0E5RzhyTk47QThHL3JOSTtFQUNFO0E5R2lzTk47O0ErRzNzTkE7OztFQUFBO0FBU0U7RUFDRTtBL0d5c05KOztBK0d0c05FO0VBQ0U7QS9HeXNOSjs7QStHdHNORTtFQUNFO0EvR3lzTko7O0ErR2x0TkU7RUFDRTtBL0dxdE5KOztBK0dsdE5FO0VBQ0U7QS9HcXROSjs7QStHbHRORTtFQUNFO0EvR3F0Tko7O0ErRzl0TkU7RUFDRTtBL0dpdU5KOztBK0c5dE5FO0VBQ0U7QS9HaXVOSjs7QStHOXRORTtFQUNFO0EvR2l1Tko7O0ErRzF1TkU7RUFDRTtBL0c2dU5KOztBK0cxdU5FO0VBQ0U7QS9HNnVOSjs7QStHMXVORTtFQUNFO0EvRzZ1Tko7O0ErR3R2TkU7RUFDRTtBL0d5dk5KOztBK0d0dk5FO0VBQ0U7QS9HeXZOSjs7QStHdHZORTtFQUNFO0EvR3l2Tko7O0ErR2x3TkU7RUFDRTtBL0dxd05KOztBK0dsd05FO0VBQ0U7QS9HcXdOSjs7QStHbHdORTtFQUNFO0EvR3F3Tko7O0FnSHZ4TkE7OztFQUFBO0FBS0E7RUFDRTtBaEh5eE5GOztBZ0h0eE5BO0VBQ0U7QWhIeXhORjs7QWdIdHhOQTtFQUNFO0FoSHl4TkY7O0FnSHR4TkE7RUFDRTtBaEh5eE5GOztBZ0h0eE5BO0VBQ0U7QWhIeXhORjs7QWdIdHhOQTtFQUNFO0FoSHl4TkY7O0FnSHR4TkE7RUFDRTtFQUNBO0FoSHl4TkY7O0FpSHh6TkE7OztFQUFBO0FBS0E7RUFDRTtBakgwek5GOztBaUh2ek5BO0FBQ0E7RUFDRTtFQUNBO0VBQ0E7QWpIMHpORjs7QWlIdnpOQTtFQUNFO0VBQ0E7RUFDQTtBakgwek5GOztBaUh2ek5BO0VBQ0U7RUFDQTtFQUNBO0FqSDB6TkY7O0FpSHZ6TkE7RUFDRTtFQUNBO0VBQ0E7QWpIMHpORjs7QWlIdnpOQTtFQUNFO0VBQ0E7RUFDQTtBakgwek5GOztBaUh2ek5BO0VBQ0U7RUFDQTtFQUNBO0FqSDB6TkY7O0FpSHZ6TkE7RUFDRTtFQUNBO0VBQ0E7QWpIMHpORjs7QWlIdnpOQTtFQUNFO0VBQ0E7RUFDQTtBakgwek5GOztBaUh2ek5BO0VBQ0U7RUFDQTtBakgwek5GOztBa0h0M05BOzs7RUFBQTtBQUtBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QWxIdzNORjs7QWtIcjNOQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWxIdzNORjs7QW1ILzROQTs7O0VBQUE7QUFLQTtBQUNBO0VBQ0U7QW5IaTVORjs7QW1IOTROQTtFQUNFO0FuSGk1TkY7O0FtSDk0TkE7RUFDRTtBbkhpNU5GOztBbUg5NE5BO0VBQ0U7QW5IaTVORjs7QW1IOTROQTtFQUNFO0FuSGk1TkY7O0FtSDk0TkE7QUFDQTtFQUNFO0FuSGk1TkY7O0FtSDk0TkE7RUFDRTtBbkhpNU5GOztBbUg5NE5BO0VBQ0U7QW5IaTVORjs7QW1IOTROQTtFQUNFO0FuSGk1TkY7O0FtSDk0TkE7QUFDQTtFQUNFO0FuSGk1TkY7O0FtSDk0TkE7O0VBRUU7QW5IaTVORjs7QW1IOTROQTtFQUNFO0FuSGk1TkY7O0FtSDk0TkE7RUFDRTtBbkhpNU5GOztBbUg5NE5BO0VBQ0U7QW5IaTVORjs7QW1IOTROQTtFQUNFO0FuSGk1TkY7O0FtSDk0TkE7RUFDRTtBbkhpNU5GOztBbUg5NE5BO0VBQ0U7QW5IaTVORjs7QW1IOTROQTtFQUNFO0FuSGk1TkY7O0FtSDk0TkE7RUFDRTtBbkhpNU5GOztBbUg5NE5BO0VBQ0U7QW5IaTVORjs7QW1IOTROQTs7RUFFRTtBbkhpNU5GOztBbUg5NE5BO0VBQ0U7QW5IaTVORjs7QW1IOTROQTtFQUNFO0FuSGk1TkY7O0FtSDk0TkE7RUFDRTtBbkhpNU5GOztBbUg5NE5BO0VBQ0U7QW5IaTVORjs7QW1IOTROQTtFQUNFO0FuSGk1TkY7O0FtSDk0TkE7RUFDRTtBbkhpNU5GOztBbUg5NE5BO0VBQ0U7QW5IaTVORjs7QW1IOTROQTtBQUNBOztFQUVFO0FuSGk1TkY7O0FtSDk0TkE7RUFDRTtBbkhpNU5GOztBbUg5NE5BO0VBQ0U7QW5IaTVORjs7QW1IOTROQTtFQUNFO0FuSGk1TkY7O0FtSDk0TkE7RUFDRTtBbkhpNU5GOztBbUg5NE5BO0VBQ0U7QW5IaTVORjs7QW1IOTROQTtFQUNFO0FuSGk1TkY7O0FtSDk0TkE7RUFDRTtBbkhpNU5GOztBbUg5NE5BOztFQUVFO0FuSGk1TkY7O0FtSDk0TkE7RUFDRTtBbkhpNU5GOztBbUg5NE5BO0VBQ0U7QW5IaTVORjs7QW1IOTROQTtFQUNFO0FuSGk1TkY7O0FtSDk0TkE7RUFDRTtBbkhpNU5GOztBbUg5NE5BO0VBQ0U7QW5IaTVORjs7QW1IOTROQTtFQUNFO0FuSGk1TkY7O0FtSDk0TkE7RUFDRTtBbkhpNU5GOztBb0gza09BOzs7RUFBQTtBQUtBO0VBQ0U7QXBINmtPRjs7QW9IMWtPQTtFQUNFO0FwSDZrT0Y7O0FvSDFrT0E7RUFDRTtBcEg2a09GOztBb0gxa09BO0VBQ0U7QXBINmtPRjs7QW9IMWtPQTtFQUNFO0FwSDZrT0Y7O0FvSDFrT0E7RUFDRTtBcEg2a09GOztBb0gxa09BO0VBQ0U7QXBINmtPRjs7QW9IMWtPQTtFQUNFO0FwSDZrT0Y7O0FvSDFrT0E7RUFDRTtBcEg2a09GOztBb0gxa09BO0VBQ0U7QXBINmtPRjs7QW9IMWtPQTtFQUNFO0FwSDZrT0Y7O0FvSDFrT0E7RUFDRTtBcEg2a09GOztBb0gxa09BO0VBQ0U7QXBINmtPRjs7QW9IMWtPQTtFQUNFO0FwSDZrT0Y7O0FvSDFrT0E7RUFDRTtBcEg2a09GOztBb0gxa09BO0VBQ0U7QXBINmtPRjs7QW9IMWtPQTtFQUNFO0FwSDZrT0Y7O0FvSDFrT0E7RUFDRTtBcEg2a09GOztBb0gxa09BO0VBQ0U7QXBINmtPRjs7QW9IMWtPQTtFQUNFO0FwSDZrT0Y7O0FxSC9wT0E7OztFQUFBO0FBS0E7QUFDQTtFQUNFO0FySGlxT0Y7O0FxSDlwT0E7RUFDRTtBckhpcU9GOztBcUg5cE9BO0VBQ0U7QXJIaXFPRjs7QXFIOXBPQTtFQUNFO0FySGlxT0Y7O0FxSDlwT0E7RUFDRTtBckhpcU9GOztBcUg5cE9BO0FBQ0E7O0VBRUU7QXJIaXFPRjs7QXFIOXBPQTtFQUNFO0FySGlxT0Y7O0FxSDlwT0E7RUFDRTtBckhpcU9GOztBcUg5cE9BO0VBQ0U7QXJIaXFPRjs7QXFIOXBPQTtFQUNFO0FySGlxT0Y7O0FxSDlwT0E7RUFDRTtBckhpcU9GOztBcUg5cE9BOztFQUVFO0FySGlxT0Y7O0FxSDlwT0E7RUFDRTtBckhpcU9GOztBcUg5cE9BO0VBQ0U7QXJIaXFPRjs7QXFIOXBPQTtFQUNFO0FySGlxT0Y7O0FxSDlwT0E7RUFDRTtBckhpcU9GOztBcUg5cE9BO0VBQ0U7QXJIaXFPRjs7QXFIOXBPQTtBQUNBOztFQUVFO0FySGlxT0Y7O0FxSDlwT0E7RUFDRTtBckhpcU9GOztBcUg5cE9BO0VBQ0U7QXJIaXFPRjs7QXFIOXBPQTtFQUNFO0FySGlxT0Y7O0FxSDlwT0E7RUFDRTtBckhpcU9GOztBcUg5cE9BO0VBQ0U7QXJIaXFPRjs7QXFIOXBPQTs7RUFFRTtBckhpcU9GOztBcUg5cE9BO0VBQ0U7QXJIaXFPRjs7QXFIOXBPQTtFQUNFO0FySGlxT0Y7O0FxSDlwT0E7RUFDRTtBckhpcU9GOztBcUg5cE9BO0VBQ0U7QXJIaXFPRjs7QXFIOXBPQTtFQUNFO0FySGlxT0Y7O0FzSDl4T0E7OztFQUFBO0FBS0E7QUFDQTtFQUNFO0F0SGd5T0Y7O0FzSDd4T0E7RUFDRTtBdEhneU9GOztBc0g3eE9BO0VBQ0U7QXRIZ3lPRjs7QXNIN3hPQTtBQUNBO0VBQ0U7QXRIZ3lPRjs7QXNIN3hPQTtFQUNFO0F0SGd5T0Y7O0FzSDd4T0E7RUFDRTtBdEhneU9GOztBc0g3eE9BO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXRIZ3lPRjs7QXVIbjBPQTs7O0VBQUE7QUFNRTtFQUNFO0VBQ0E7QXZIbzBPSjtBdUhsME9JO0VBQ0U7QXZIbzBPTjs7QXVIOXpPRTtFQUNFO0F2SGkwT0o7QXVIOXpPRTtFQUNFO0F2SGcwT0o7QXVIN3pPRTtFQUNFO0F2SCt6T0o7QXVINXpPRTtFQUNFO0F2SDh6T0o7O0F3SDUxT0E7Ozs7RUFBQTtBQVFBO0VBQ0U7QXhINDFPRjtBd0gxMU9FO0VBQ0U7QXhINDFPSjs7QXdIeDFPQTtBQUtBO0V4RlJJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWhDZzJPSjs7QXdIeDFPQTtFeEZKSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FoQ2cyT0o7O0F3SDUxT0E7RXhGQUk7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBaENnMk9KOztBd0hoMk9BO0V4RklJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWhDZzJPSjs7QXdIcDJPQTtFeEZRSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FoQ2cyT0o7O0F3SHgyT0E7RXhGWUk7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBaENnMk9KOztBd0g1Mk9BO0V4RitCSTtFQUNBO0VBQ0E7RUFDQTtBaENpMU9KOztBd0gzMk9BO0V4RmdCSTtFQUNBO0VBQ0E7RUFDQTtBaEMrMU9KOztBd0g5Mk9BO0V4Rm1CSTtFQUNBO0VBQ0E7RUFDQTtBaEMrMU9KOztBd0hqM09BO0V4RnNCSTtFQUNBO0VBQ0E7RUFDQTtBaEMrMU9KOztBd0hoM09BO0FBS0E7RXhGN0RJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWhDNjZPSjs7QXdIaDNPQTtFeEZ6REk7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBaEM2Nk9KOztBd0hwM09BO0V4RnJESTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FoQzY2T0o7O0F3SHgzT0E7RXhGakRJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWhDNjZPSjs7QXdINTNPQTtFeEY3Q0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBaEM2Nk9KOztBd0hoNE9BO0V4RnpDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FoQzY2T0o7O0F3SHA0T0E7RXhGdEJJO0VBQ0E7RUFDQTtFQUNBO0FoQzg1T0o7O0F3SG40T0E7RXhGckNJO0VBQ0E7RUFDQTtFQUNBO0FoQzQ2T0o7O0F3SHQ0T0E7RXhGbENJO0VBQ0E7RUFDQTtFQUNBO0FoQzQ2T0o7O0F3SHo0T0E7RXhGL0JJO0VBQ0E7RUFDQTtFQUNBO0FoQzQ2T0o7O0F3SHg0T0E7QUFDQTtFQUNFO0F4SDI0T0Y7O0F3SHg0T0E7RUFDRTtBeEgyNE9GOztBd0h4NE9BO0VBQ0U7QXhIMjRPRjs7QXdIeDRPQTtBQUNBO0VBQ0U7QXhIMjRPRjs7QXdIeDRPQTtFQUNFO0F4SDI0T0Y7O0F3SHg0T0E7QUFDQTtFQUNFO0F4SDI0T0Y7O0F3SHg0T0E7RUFDRTtBeEgyNE9GOztBd0h4NE9BO0VBQ0U7QXhIMjRPRjs7QXdIeDRPQTtFQUNFO0F4SDI0T0Y7O0F3SHg0T0E7RUFDRTtBeEgyNE9GOztBd0h4NE9BO0VBQ0U7QXhIMjRPRjs7QXdIeDRPQTtFQUNFO0F4SDI0T0Y7O0F3SHg0T0E7RUFDRTtBeEgyNE9GOztBd0h4NE9BO0VBQ0U7QXhIMjRPRjs7QXdIeDRPQTtFQUNFO0F4SDI0T0Y7O0F3SHg0T0E7RUFDRTtBeEgyNE9GOztBd0h4NE9BO0FBQ0E7RUFDRTtFQUNBO0VBQ0E7QXhIMjRPRjs7QXdIeDRPQTtBQUNBO0VBQ0U7RUFDQTtFQUNBO0F4SDI0T0Y7O0F3SHg0T0E7QUFDQTtFQUNFO0F4SDI0T0Y7O0F3SHg0T0E7QUFDQTtFQUNFO0F4SDI0T0Y7O0F3SHg0T0E7RUFDRTtBeEgyNE9GOztBd0h4NE9BO0VBQ0U7QXhIMjRPRjs7QXlIcm1QQTs7O0VBQUE7QUFLQTtFQUNFOztJQUFBO0VBT0E7O0lBQUE7RUFPQTs7SUFBQTtFQU9BOztJQUFBO0VBUUE7O0lBQUE7RUFRQTs7SUFBQTtFQU9BOztJQUFBO0VBT0E7RUFTQTs7SUFBQTtFQW9DQTs7SUFBQTtFQWlCQTs7SUFBQTtFQXFCQTs7SUFBQTtFQThCQTs7SUFBQTtBekh1K09GO0F5SHhvUEU7RUFDRTtBekgwb1BKO0F5SHBvUEU7RUFDRTtBekhzb1BKO0F5SGhvUEU7RUFDRTtBekhrb1BKO0F5SDVuUEU7O0VBRUU7QXpIOG5QSjtBeUh4blBFOztFQUVFO0F6SDBuUEo7QXlIcG5QRTtFQUNFO0F6SHNuUEo7QXlIaG5QRTtFQUNFO0F6SGtuUEo7QXlIOW1QRTs7Ozs7RUFLRTtBekhnblBKO0F5SDFtUEU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7QXpIMm1QSjtBeUh6bVBJOzs7OztFQUtFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXpIMm1QTjtBeUh4bVBJOztFQUVFO0VBQ0E7QXpIMG1QTjtBeUh2bVBJOztFQUVFO0F6SHltUE47QXlIbG1QRTs7RUFFRTtFQUNBO0F6SG9tUEo7QXlIam1QRTtFQUNFO0F6SG1tUEo7QXlIaG1QRTtFQUNFO0F6SGttUEo7QXlINWxQRTs7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXpIOGxQSjtBeUgzbFBFO0VBQ0U7QXpINmxQSjtBeUgxbFBFO0VBQ0U7QXpINGxQSjtBeUh0bFBFOztFQUVFO0VBQ0E7RUFDQTtBekh3bFBKO0F5SHJsUEU7RUFDRTtFQUNBO0VBQ0E7QXpIdWxQSjtBeUhwbFBFOztFQUVFO0VBQ0E7QXpIc2xQSjtBeUhubFBFO0VBQ0U7QXpIcWxQSjtBeUhsbFBFO0VBQ0U7QXpIb2xQSjtBeUg5a1BFOztFQUVFO0VBQ0E7QXpIZ2xQSjtBeUg3a1BFO0VBQ0U7QXpIK2tQSjtBeUg1a1BFO0VBQ0U7QXpIOGtQSixDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vZW9weXkvLi9yZXNvdXJjZXMvc2Nzcy9tYWluLnNjc3MiLCJ3ZWJwYWNrOi8vZW9weXkvLi9yZXNvdXJjZXMvc2Nzcy8wMC1saWJyYXJpZXMvX2luZGV4LnNjc3MiLCJ3ZWJwYWNrOi8vZW9weXkvLi9yZXNvdXJjZXMvc2Nzcy8wMC1saWJyYXJpZXMvX3N3aXBlci5zY3NzIiwid2VicGFjazovL2VvcHl5Ly4vbm9kZV9tb2R1bGVzL3N3aXBlci9zd2lwZXIuc2NzcyIsIndlYnBhY2s6Ly9lb3B5eS8uL25vZGVfbW9kdWxlcy9zd2lwZXIvbW9kdWxlcy9wYWdpbmF0aW9uLnNjc3MiLCJ3ZWJwYWNrOi8vZW9weXkvLi9ub2RlX21vZHVsZXMvc3dpcGVyL21vZHVsZXMvbmF2aWdhdGlvbi5zY3NzIiwid2VicGFjazovL2VvcHl5Ly4vcmVzb3VyY2VzL3Njc3MvMDEtc2V0dGluZ3MvX2luZGV4LnNjc3MiLCJ3ZWJwYWNrOi8vZW9weXkvLi9yZXNvdXJjZXMvc2Nzcy8wMS1zZXR0aW5ncy9fYW5pbWF0aW9ucy5zY3NzIiwid2VicGFjazovL2VvcHl5Ly4vcmVzb3VyY2VzL3Njc3MvMDEtc2V0dGluZ3MvX2JveC1tb2RlbC5zY3NzIiwid2VicGFjazovL2VvcHl5Ly4vcmVzb3VyY2VzL3Njc3MvMDEtc2V0dGluZ3MvX2JyZWFrcG9pbnRzLnNjc3MiLCJ3ZWJwYWNrOi8vZW9weXkvLi9yZXNvdXJjZXMvc2Nzcy8wMS1zZXR0aW5ncy9fYnV0dG9ucy5zY3NzIiwid2VicGFjazovL2VvcHl5Ly4vcmVzb3VyY2VzL3Njc3MvMDEtc2V0dGluZ3MvX2ZvbnRzLnNjc3MiLCJ3ZWJwYWNrOi8vZW9weXkvLi9yZXNvdXJjZXMvc2Nzcy8wMS1zZXR0aW5ncy9fZ3JpZC5zY3NzIiwid2VicGFjazovL2VvcHl5Ly4vcmVzb3VyY2VzL3Njc3MvMDEtc2V0dGluZ3MvX2ljb25zLnNjc3MiLCJ3ZWJwYWNrOi8vZW9weXkvLi9yZXNvdXJjZXMvc2Nzcy8wMS1zZXR0aW5ncy9faW5wdXRzLnNjc3MiLCJ3ZWJwYWNrOi8vZW9weXkvLi9yZXNvdXJjZXMvc2Nzcy8wMS1zZXR0aW5ncy9fc2l6ZXMuc2NzcyIsIndlYnBhY2s6Ly9lb3B5eS8uL3Jlc291cmNlcy9zY3NzLzAxLXNldHRpbmdzL19zcGFjaW5nLnNjc3MiLCJ3ZWJwYWNrOi8vZW9weXkvLi9yZXNvdXJjZXMvc2Nzcy8wMS1zZXR0aW5ncy9fc3dpcGVyLnNjc3MiLCJ3ZWJwYWNrOi8vZW9weXkvLi9yZXNvdXJjZXMvc2Nzcy8wMS1zZXR0aW5ncy9fdHlwb2dyYXBoeS5zY3NzIiwid2VicGFjazovL2VvcHl5Ly4vcmVzb3VyY2VzL3Njc3MvMDEtc2V0dGluZ3MvX3ZhcmlhYmxlcy5zY3NzIiwid2VicGFjazovL2VvcHl5Ly4vcmVzb3VyY2VzL3Njc3MvMDItdG9vbHMvX2luZGV4LnNjc3MiLCJ3ZWJwYWNrOi8vZW9weXkvLi9yZXNvdXJjZXMvc2Nzcy8wMi10b29scy9fYTExeS5zY3NzIiwid2VicGFjazovL2VvcHl5Ly4vcmVzb3VyY2VzL3Njc3MvMDItdG9vbHMvX2FuaW1hdGlvbnMuc2NzcyIsIndlYnBhY2s6Ly9lb3B5eS8uL3Jlc291cmNlcy9zY3NzLzAyLXRvb2xzL19vbi1ldmVudC5zY3NzIiwid2VicGFjazovL2VvcHl5Ly4vcmVzb3VyY2VzL3Njc3MvMDItdG9vbHMvX2JveC1zaGFkb3dzLnNjc3MiLCJ3ZWJwYWNrOi8vZW9weXkvLi9yZXNvdXJjZXMvc2Nzcy8wMi10b29scy9fYnJlYWtwb2ludHMuc2NzcyIsIndlYnBhY2s6Ly9lb3B5eS8uL3Jlc291cmNlcy9zY3NzLzAyLXRvb2xzL19idXR0b25zLnNjc3MiLCJ3ZWJwYWNrOi8vZW9weXkvLi9yZXNvdXJjZXMvc2Nzcy8wMi10b29scy9fY2xlYXJmaXguc2NzcyIsIndlYnBhY2s6Ly9lb3B5eS8uL3Jlc291cmNlcy9zY3NzLzAyLXRvb2xzL19jb2xvcnMuc2NzcyIsIndlYnBhY2s6Ly9lb3B5eS8uL3Jlc291cmNlcy9zY3NzLzAyLXRvb2xzL19ncmFkaWVudC5zY3NzIiwid2VicGFjazovL2VvcHl5Ly4vcmVzb3VyY2VzL3Njc3MvMDItdG9vbHMvX2lucHV0LnNjc3MiLCJ3ZWJwYWNrOi8vZW9weXkvLi9yZXNvdXJjZXMvc2Nzcy8wMi10b29scy9fcGxhY2Vob2xkZXIuc2NzcyIsIndlYnBhY2s6Ly9lb3B5eS8uL3Jlc291cmNlcy9zY3NzLzAyLXRvb2xzL190eXBvZ3JhcGh5LnNjc3MiLCJ3ZWJwYWNrOi8vZW9weXkvLi9yZXNvdXJjZXMvc2Nzcy8wMi10b29scy9faGlkZGVuLnNjc3MiLCJ3ZWJwYWNrOi8vZW9weXkvLi9yZXNvdXJjZXMvc2Nzcy8wMi10b29scy9fc3BhY2luZy5zY3NzIiwid2VicGFjazovL2VvcHl5Ly4vcmVzb3VyY2VzL3Njc3MvMDMtZ2VuZXJpYy9faW5kZXguc2NzcyIsIndlYnBhY2s6Ly9lb3B5eS8uL3Jlc291cmNlcy9zY3NzLzAzLWdlbmVyaWMvX2FuaW1hdGlvbnMuc2NzcyIsIndlYnBhY2s6Ly9lb3B5eS8uL3Jlc291cmNlcy9zY3NzLzAzLWdlbmVyaWMvX3Jlc2V0LnNjc3MiLCJ3ZWJwYWNrOi8vZW9weXkvLi9yZXNvdXJjZXMvc2Nzcy8wMy1nZW5lcmljL19zd2lwZXItcGFnaW5hdGlvbi5zY3NzIiwid2VicGFjazovL2VvcHl5Ly4vcmVzb3VyY2VzL3Njc3MvMDQtZWxlbWVudHMvX2luZGV4LnNjc3MiLCJ3ZWJwYWNrOi8vZW9weXkvLi9yZXNvdXJjZXMvc2Nzcy8wNC1lbGVtZW50cy9fYWxsLnNjc3MiLCJ3ZWJwYWNrOi8vZW9weXkvLi9yZXNvdXJjZXMvc2Nzcy8wNC1lbGVtZW50cy9fYm9keS5zY3NzIiwid2VicGFjazovL2VvcHl5Ly4vcmVzb3VyY2VzL3Njc3MvMDQtZWxlbWVudHMvX2J1dHRvbi5zY3NzIiwid2VicGFjazovL2VvcHl5Ly4vcmVzb3VyY2VzL3Njc3MvMDQtZWxlbWVudHMvX2ZpbHRlci5zY3NzIiwid2VicGFjazovL2VvcHl5Ly4vcmVzb3VyY2VzL3Njc3MvMDQtZWxlbWVudHMvX2Zvcm0uc2NzcyIsIndlYnBhY2s6Ly9lb3B5eS8uL3Jlc291cmNlcy9zY3NzLzA0LWVsZW1lbnRzL19oZWFkaW5ncy5zY3NzIiwid2VicGFjazovL2VvcHl5Ly4vcmVzb3VyY2VzL3Njc3MvMDQtZWxlbWVudHMvX2h0bWwuc2NzcyIsIndlYnBhY2s6Ly9lb3B5eS8uL3Jlc291cmNlcy9zY3NzLzA0LWVsZW1lbnRzL19pY29uLnNjc3MiLCJ3ZWJwYWNrOi8vZW9weXkvLi9yZXNvdXJjZXMvc2Nzcy8wNC1lbGVtZW50cy9faW1hZ2Uuc2NzcyIsIndlYnBhY2s6Ly9lb3B5eS8uL3Jlc291cmNlcy9zY3NzLzA0LWVsZW1lbnRzL19pbnB1dC5zY3NzIiwid2VicGFjazovL2VvcHl5Ly4vcmVzb3VyY2VzL3Njc3MvMDQtZWxlbWVudHMvX2xhbmd1YWdlLXNlbGVjdG9yLnNjc3MiLCJ3ZWJwYWNrOi8vZW9weXkvLi9yZXNvdXJjZXMvc2Nzcy8wNC1lbGVtZW50cy9fbGluay5zY3NzIiwid2VicGFjazovL2VvcHl5Ly4vcmVzb3VyY2VzL3Njc3MvMDQtZWxlbWVudHMvX2xpc3QtaXRlbS5zY3NzIiwid2VicGFjazovL2VvcHl5Ly4vcmVzb3VyY2VzL3Njc3MvMDQtZWxlbWVudHMvX2xpc3Quc2NzcyIsIndlYnBhY2s6Ly9lb3B5eS8uL3Jlc291cmNlcy9zY3NzLzA0LWVsZW1lbnRzL19sb2dvLnNjc3MiLCJ3ZWJwYWNrOi8vZW9weXkvLi9yZXNvdXJjZXMvc2Nzcy8wNC1lbGVtZW50cy9fbWFpbi5zY3NzIiwid2VicGFjazovL2VvcHl5Ly4vcmVzb3VyY2VzL3Njc3MvMDQtZWxlbWVudHMvX25hdmlnYXRpb24uc2NzcyIsIndlYnBhY2s6Ly9lb3B5eS8uL3Jlc291cmNlcy9zY3NzLzA0LWVsZW1lbnRzL19wYWdpbmF0aW9uLnNjc3MiLCJ3ZWJwYWNrOi8vZW9weXkvLi9yZXNvdXJjZXMvc2Nzcy8wNC1lbGVtZW50cy9fc2VhcmNoLnNjc3MiLCJ3ZWJwYWNrOi8vZW9weXkvLi9yZXNvdXJjZXMvc2Nzcy8wNC1lbGVtZW50cy9fc2VsZWN0LnNjc3MiLCJ3ZWJwYWNrOi8vZW9weXkvLi9yZXNvdXJjZXMvc2Nzcy8wNC1lbGVtZW50cy9fc29jaWFsLWxpbmtzLnNjc3MiLCJ3ZWJwYWNrOi8vZW9weXkvLi9yZXNvdXJjZXMvc2Nzcy8wNC1lbGVtZW50cy9fdGFibGUuc2NzcyIsIndlYnBhY2s6Ly9lb3B5eS8uL3Jlc291cmNlcy9zY3NzLzA0LWVsZW1lbnRzL190ZXh0LnNjc3MiLCJ3ZWJwYWNrOi8vZW9weXkvLi9yZXNvdXJjZXMvc2Nzcy8wNC1lbGVtZW50cy9fdGV4dGFyZWEuc2NzcyIsIndlYnBhY2s6Ly9lb3B5eS8uL3Jlc291cmNlcy9zY3NzLzA0LWVsZW1lbnRzL190aXRsZS5zY3NzIiwid2VicGFjazovL2VvcHl5Ly4vcmVzb3VyY2VzL3Njc3MvMDQtZWxlbWVudHMvX3ZpZGVvLnNjc3MiLCJ3ZWJwYWNrOi8vZW9weXkvLi9yZXNvdXJjZXMvc2Nzcy8wNS1vYmplY3RzL19pbmRleC5zY3NzIiwid2VicGFjazovL2VvcHl5Ly4vcmVzb3VyY2VzL3Njc3MvMDUtb2JqZWN0cy9fYXJ0aWNsZXMtZ3JvdXAuc2NzcyIsIndlYnBhY2s6Ly9lb3B5eS8uL3Jlc291cmNlcy9zY3NzLzA1LW9iamVjdHMvX2FzcGVjdC1yYXRpby5zY3NzIiwid2VicGFjazovL2VvcHl5Ly4vcmVzb3VyY2VzL3Njc3MvMDUtb2JqZWN0cy9fY29udGFpbmVyLnNjc3MiLCJ3ZWJwYWNrOi8vZW9weXkvLi9yZXNvdXJjZXMvc2Nzcy8wNS1vYmplY3RzL19jb29raWUtZGlhbG9nLnNjc3MiLCJ3ZWJwYWNrOi8vZW9weXkvLi9yZXNvdXJjZXMvc2Nzcy8wNS1vYmplY3RzL19kcm9wZG93bi5zY3NzIiwid2VicGFjazovL2VvcHl5Ly4vcmVzb3VyY2VzL3Njc3MvMDUtb2JqZWN0cy9fZmlsdGVyLWdyb3VwLnNjc3MiLCJ3ZWJwYWNrOi8vZW9weXkvLi9yZXNvdXJjZXMvc2Nzcy8wNS1vYmplY3RzL19pY29uLWdyb3VwLnNjc3MiLCJ3ZWJwYWNrOi8vZW9weXkvLi9yZXNvdXJjZXMvc2Nzcy8wNS1vYmplY3RzL19saW5rLWJveC1ncm91cC5zY3NzIiwid2VicGFjazovL2VvcHl5Ly4vcmVzb3VyY2VzL3Njc3MvMDUtb2JqZWN0cy9fbWFpbi5zY3NzIiwid2VicGFjazovL2VvcHl5Ly4vcmVzb3VyY2VzL3Njc3MvMDUtb2JqZWN0cy9fbW9kYWwuc2NzcyIsIndlYnBhY2s6Ly9lb3B5eS8uL3Jlc291cmNlcy9zY3NzLzA1LW9iamVjdHMvX3BhZ2UtbGF5b3V0LnNjc3MiLCJ3ZWJwYWNrOi8vZW9weXkvLi9yZXNvdXJjZXMvc2Nzcy8wNS1vYmplY3RzL19zZWN0aW9uLnNjc3MiLCJ3ZWJwYWNrOi8vZW9weXkvLi9yZXNvdXJjZXMvc2Nzcy8wNi1jb21wb25lbnRzL19pbmRleC5zY3NzIiwid2VicGFjazovL2VvcHl5Ly4vcmVzb3VyY2VzL3Njc3MvMDYtY29tcG9uZW50cy9fYWxlcnQuc2NzcyIsIndlYnBhY2s6Ly9lb3B5eS8uL3Jlc291cmNlcy9zY3NzLzA2LWNvbXBvbmVudHMvX2JyZWFkY3J1bWIuc2NzcyIsIndlYnBhY2s6Ly9lb3B5eS8uL3Jlc291cmNlcy9zY3NzLzA2LWNvbXBvbmVudHMvX2NvbnRhY3Quc2NzcyIsIndlYnBhY2s6Ly9lb3B5eS8uL3Jlc291cmNlcy9zY3NzLzA2LWNvbXBvbmVudHMvX2Nvb2tpZXMuc2NzcyIsIndlYnBhY2s6Ly9lb3B5eS8uL3Jlc291cmNlcy9zY3NzLzA2LWNvbXBvbmVudHMvX2RvY3VtZW50LWxpc3Rpbmcuc2NzcyIsIndlYnBhY2s6Ly9lb3B5eS8uL3Jlc291cmNlcy9zY3NzLzA2LWNvbXBvbmVudHMvX2ZpbHRlci5zY3NzIiwid2VicGFjazovL2VvcHl5Ly4vcmVzb3VyY2VzL3Njc3MvMDYtY29tcG9uZW50cy9fZm9vdGVyLnNjc3MiLCJ3ZWJwYWNrOi8vZW9weXkvLi9yZXNvdXJjZXMvc2Nzcy8wNi1jb21wb25lbnRzL19oZWFkZXIuc2NzcyIsIndlYnBhY2s6Ly9lb3B5eS8uL3Jlc291cmNlcy9zY3NzLzA2LWNvbXBvbmVudHMvX2ltYWdlLWxpbmtzLnNjc3MiLCJ3ZWJwYWNrOi8vZW9weXkvLi9yZXNvdXJjZXMvc2Nzcy8wNi1jb21wb25lbnRzL19pbWFnZS10ZXh0LnNjc3MiLCJ3ZWJwYWNrOi8vZW9weXkvLi9yZXNvdXJjZXMvc2Nzcy8wNi1jb21wb25lbnRzL19saW5rLWJveC5zY3NzIiwid2VicGFjazovL2VvcHl5Ly4vcmVzb3VyY2VzL3Njc3MvMDYtY29tcG9uZW50cy9faW50cm8tYmFubmVyLnNjc3MiLCJ3ZWJwYWNrOi8vZW9weXkvLi9yZXNvdXJjZXMvc2Nzcy8wNi1jb21wb25lbnRzL19saXN0LnNjc3MiLCJ3ZWJwYWNrOi8vZW9weXkvLi9yZXNvdXJjZXMvc2Nzcy8wNi1jb21wb25lbnRzL19tYXAuc2NzcyIsIndlYnBhY2s6Ly9lb3B5eS8uL3Jlc291cmNlcy9zY3NzLzA2LWNvbXBvbmVudHMvX25ld3Muc2NzcyIsIndlYnBhY2s6Ly9lb3B5eS8uL3Jlc291cmNlcy9zY3NzLzAyLXRvb2xzL190cnVuY2F0ZS5zY3NzIiwid2VicGFjazovL2VvcHl5Ly4vcmVzb3VyY2VzL3Njc3MvMDYtY29tcG9uZW50cy9fbmV3c2xldHRlci5zY3NzIiwid2VicGFjazovL2VvcHl5Ly4vcmVzb3VyY2VzL3Njc3MvMDYtY29tcG9uZW50cy9fbm90LWZvdW5kLnNjc3MiLCJ3ZWJwYWNrOi8vZW9weXkvLi9yZXNvdXJjZXMvc2Nzcy8wNi1jb21wb25lbnRzL19wYWdlLWJhbm5lci5zY3NzIiwid2VicGFjazovL2VvcHl5Ly4vcmVzb3VyY2VzL3Njc3MvMDYtY29tcG9uZW50cy9fcGRmLXZpZXdlci5zY3NzIiwid2VicGFjazovL2VvcHl5Ly4vcmVzb3VyY2VzL3Njc3MvMDYtY29tcG9uZW50cy9fcXVvdGUuc2NzcyIsIndlYnBhY2s6Ly9lb3B5eS8uL3Jlc291cmNlcy9zY3NzLzA2LWNvbXBvbmVudHMvX3NpZGViYXIuc2NzcyIsIndlYnBhY2s6Ly9lb3B5eS8uL3Jlc291cmNlcy9zY3NzLzA2LWNvbXBvbmVudHMvX3RleHQuc2NzcyIsIndlYnBhY2s6Ly9lb3B5eS8uL3Jlc291cmNlcy9zY3NzLzA2LWNvbXBvbmVudHMvX3RpY2tldC1saW5rLnNjc3MiLCJ3ZWJwYWNrOi8vZW9weXkvLi9yZXNvdXJjZXMvc2Nzcy8wNi1jb21wb25lbnRzL190cmVlLnNjc3MiLCJ3ZWJwYWNrOi8vZW9weXkvLi9yZXNvdXJjZXMvc2Nzcy8wNy11dGlsaXRpZXMvX2luZGV4LnNjc3MiLCJ3ZWJwYWNrOi8vZW9weXkvLi9yZXNvdXJjZXMvc2Nzcy8wNy11dGlsaXRpZXMvX2ExMXkuc2NzcyIsIndlYnBhY2s6Ly9lb3B5eS8uL3Jlc291cmNlcy9zY3NzLzA3LXV0aWxpdGllcy9fYmFja2dyb3VuZC1jb2xvci5zY3NzIiwid2VicGFjazovL2VvcHl5Ly4vcmVzb3VyY2VzL3Njc3MvMDctdXRpbGl0aWVzL19ib3JkZXIuc2NzcyIsIndlYnBhY2s6Ly9lb3B5eS8uL3Jlc291cmNlcy9zY3NzLzA3LXV0aWxpdGllcy9fY2xlYXJmaXguc2NzcyIsIndlYnBhY2s6Ly9lb3B5eS8uL3Jlc291cmNlcy9zY3NzLzA3LXV0aWxpdGllcy9fY29sb3Iuc2NzcyIsIndlYnBhY2s6Ly9lb3B5eS8uL3Jlc291cmNlcy9zY3NzLzA3LXV0aWxpdGllcy9fY29va2llcy1jb2xvcnMuc2NzcyIsIndlYnBhY2s6Ly9lb3B5eS8uL3Jlc291cmNlcy9zY3NzLzA3LXV0aWxpdGllcy9fZGlzcGxheS5zY3NzIiwid2VicGFjazovL2VvcHl5Ly4vcmVzb3VyY2VzL3Njc3MvMDctdXRpbGl0aWVzL19pY29uLnNjc3MiLCJ3ZWJwYWNrOi8vZW9weXkvLi9yZXNvdXJjZXMvc2Nzcy8wNy11dGlsaXRpZXMvX2xvYWRpbmcuc2NzcyIsIndlYnBhY2s6Ly9lb3B5eS8uL3Jlc291cmNlcy9zY3NzLzA3LXV0aWxpdGllcy9fbWFyZ2luLnNjc3MiLCJ3ZWJwYWNrOi8vZW9weXkvLi9yZXNvdXJjZXMvc2Nzcy8wNy11dGlsaXRpZXMvX29wYWNpdHkuc2NzcyIsIndlYnBhY2s6Ly9lb3B5eS8uL3Jlc291cmNlcy9zY3NzLzA3LXV0aWxpdGllcy9fcGFkZGluZy5zY3NzIiwid2VicGFjazovL2VvcHl5Ly4vcmVzb3VyY2VzL3Njc3MvMDctdXRpbGl0aWVzL19zaXplLnNjc3MiLCJ3ZWJwYWNrOi8vZW9weXkvLi9yZXNvdXJjZXMvc2Nzcy8wNy11dGlsaXRpZXMvX3NwYWNpbmcuc2NzcyIsIndlYnBhY2s6Ly9lb3B5eS8uL3Jlc291cmNlcy9zY3NzLzA3LXV0aWxpdGllcy9fdHlwb2dyYXBoeS5zY3NzIiwid2VicGFjazovL2VvcHl5Ly4vcmVzb3VyY2VzL3Njc3MvMDctdXRpbGl0aWVzL19kZWJ1Zy5zY3NzIl0sInNvdXJjZXNDb250ZW50IjpbIkBjaGFyc2V0IFwiVVRGLThcIjtcbi8qKlxuICogTWFpbiBMaWJyYXJpZXMgRmlsZVxuICogR3JvdXA6IExpYnJhcmllc1xuICovXG4vKipcbiAqIFN3aXBlclxuICogR3JvdXA6IExpYnJhcmllc1xuICovXG4vKipcbiAqIFN3aXBlciAxMS4yLjEwXG4gKiBNb3N0IG1vZGVybiBtb2JpbGUgdG91Y2ggc2xpZGVyIGFuZCBmcmFtZXdvcmsgd2l0aCBoYXJkd2FyZSBhY2NlbGVyYXRlZCB0cmFuc2l0aW9uc1xuICogaHR0cHM6Ly9zd2lwZXJqcy5jb21cbiAqXG4gKiBDb3B5cmlnaHQgMjAxNC0yMDI1IFZsYWRpbWlyIEtoYXJsYW1waWRpXG4gKlxuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlXG4gKlxuICogUmVsZWFzZWQgb246IEp1bmUgMjgsIDIwMjVcbiAqL1xuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcInN3aXBlci1pY29uc1wiO1xuICBzcmM6IHVybChcImRhdGE6YXBwbGljYXRpb24vZm9udC13b2ZmO2NoYXJzZXQ9dXRmLTg7YmFzZTY0LCBkMDlHUmdBQkFBQUFBQVpnQUJBQUFBQUFEQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQkdSbFJOQUFBR1JBQUFBQm9BQUFBY2k2cUhrVWRFUlVZQUFBV2dBQUFBSXdBQUFDUUFZQUJYUjFCUFV3QUFCaFFBQUFBdUFBQUFOdUFZNyt4SFUxVkNBQUFGeEFBQUFGQUFBQUJtMmZQY3pVOVRMeklBQUFIY0FBQUFTZ0FBQUdCUDlWNVJZMjFoY0FBQUFrUUFBQUNJQUFBQll0NkYwY0JqZG5RZ0FBQUN6QUFBQUFRQUFBQUVBQkVCUkdkaGMzQUFBQVdZQUFBQUNBQUFBQWovL3dBRFoyeDVaZ0FBQXl3QUFBRE1BQUFEMk1IdHJ5Vm9aV0ZrQUFBQmJBQUFBREFBQUFBMkUyK2VvV2hvWldFQUFBR2NBQUFBSHdBQUFDUUM5Z0R6YUcxMGVBQUFBaWdBQUFBWkFBQUFyZ0prQUJGc2IyTmhBQUFDMEFBQUFGb0FBQUJhRlFBVUdHMWhlSEFBQUFHOEFBQUFId0FBQUNBQWNBQkFibUZ0WlFBQUEvZ0FBQUU1QUFBQ1h2RmRCd2x3YjNOMEFBQUZOQUFBQUdJQUFBQ0U1czc0aFhqYVkyQmtZR0FBWXBmNUh1L2orVzIrTW5Bek1ZREF6YVg2UWpENi80Ly9CeGo1R0E4QXVSd01ZR2tBUHl3TDEzamFZMkJrWUdBODhQOEFneDRqKy84ZlFEWWZBMUFFQldnREFJQjJCT29BZU5wallHUmdZTkJoNEdkZ1lnQUJFTW5JQUJKellOQURDUUFBQ1dnQXNRQjQybU5nWWZ6Q09JR0JsWUdCMFljeGpZR0J3UjFLZjJXUVpHaGhZR0JpWUdWbWdBRkdCaVFRa09hYXd0REFvTUJReFhqZy93RUdQY1lEREE0d05VQTJDQ2d3c0FBQU80RUw2Z0FBZU5wajJNMGd5QUFDcXhnR05XQmtaMkQ0L3dNQSt4a0RkZ0FBQUhqYVkyQmdZR2FBWUJrR1JnWVFpQUh5R01GOEZnWUhJTTNEd01IQUJHUXJNT2d5V0RMRU0xVDkvdzhVQmZFTWdMekUvLy8vUC81Ly9mL1YveHYrcjRlYUFBZU1iQXh3SVVZbUlNSEVnS1lBWWpVY3NEQXdzTEt4YzNCeWNmUHc4akVRQS9nWkJBU0ZoRVZFeGNRbEpLV2taV1RsNUJVVWxaUlZWTlhVTlRRWkJnTUFBTVIrRStnQUVRRkVBQUFBS2dBcUFDb0FOQUErQUVnQVVnQmNBR1lBY0FCNkFJUUFqZ0NZQUtJQXJBQzJBTUFBeWdEVUFONEE2QUR5QVB3QkJnRVFBUm9CSkFFdUFUZ0JRZ0ZNQVZZQllBRnFBWFFCZmdHSUFaSUJuQUdtQWJJQnpnSHNBQUI0MnUyTk1RNkNVQXlHVzU2OHg5QW5lWVlnbTRNSmJoS0ZhRXhJT0FWWDhBcGV3U3Q0QmljNEFmZUFpZDNWT0JpeER4ZlBZRXphNU8rWGZpMDRZQURnZ2lVSVVMQ3VFSks4VmhPNGJTdnBkbmt0SEk1UUNZdGRpMnNsOFpuWGFIbHFVck5LemRLY1Q4Y2pscStyd1pTdklWY3pOaWV6c2ZuUC91em5tZlBGQk5PRE0ySzdNVFE0NVlFQVpxR1A4MUFtR0djRjNpUHFPb3AwcjFTUFRhVGJWa2ZVZTRIWGo5N3dZRSt5TndXWXh3V3U0djF1Z1dIZ28zUzFYZFpFVnFXTTdFVDBjZm5MR3hXZmtnUjQybzJQdldyRE1CU0ZqL0lITGFGMHpLalJnZGlWTXdTY05SQW9XVW9INzhZMmljQi95SVkwOUFuNkFIMkJkdS9VQit5eG9wWXNoUWlFdm52dTBkVVJnRHQ4UWVDOFBEdzdGcGppM2ZFQTR6L1BFSjZZT0I1aEtoNGRqM0V2WGh4UHFIL1NLVVkzcko3c3JaNEZabmgxUE1BdFBod1A2ZmwyUE1KTVBEZ2VRNHJZOFlUNkd6YW8wZUFFQTQwOUR1Z2dtVG5Gbk9jU0NpRWlMTWd4Q2lUSTZDcTVEWlVkM1FtcDEwdk8wTGFMVGQyY2pONGZPdW1sYzdsVVliU1FjWkZrdXRSRzdnNkpLWkt5MFJtZExZNjgwQ0RuRUorVU1rcEZGZTFSTjdueGRWcFhyQzRhVHRuYXVyT25ZZXJjWmcyWVZtTE4vZC9nY3pmRWltckUvZnMvYk91cTI5Wm1uOHRsb09SYVhnWmdHYTc4eU85L2NuWG0yQnBhR3ZxMjVEdjlTNEU5KzVTSWM5UHF1cEpLaFlGU1NsNDcrUWNyMW1ZTkFBQUFlTnB0dzBjS3drQUFBTURaSkE4UTdPVUp2a0xzUGZaNnpGVkVSUHk4cUhoMllFUiszaS9CUDgzdklCTEx5U3NvS2ltcnFLcXBhMmhwNitqcTZSc1lHaG1ibUpxWlN5MHNyYXh0Yk8zc0hSeWRuRU1VNHVSNnl4N0pKWHZlUDdXckR5Y0FBQUFBQUFILy93QUNlTnBqWUdSZ1lPQUJZaGtnWmdKQ1pnWk5Ca1lHTFFadElKc0ZMTVlBQUF3M0FMZ0FlTm9saXpFS2dEQVFCQ2NoUmJDMnNGRVIwWUQ2cVZRaUJDdi9IOWV6R0k2WjVYQkF3OENCSy9tNWlRUVZhdVZiWExuT3JNWnYyb0xkS0ZhOFBqdXJ1MmhKekdhYm1PU0x6Tk16dnV0cEIzTjQybU5nWkdCZzRHS1FZekJoWU14SkxNbGo0R0JnQVlvdy9QL1BBSkpoTE02c1NvV0tmV0NBQXdEQWpnYlJBQUI0Mm1OZ1lHQmtBSUliQ1pvNUlQcm1VbjBoR0EwQU84RUZUUUFBXCIpIGZvcm1hdChcIndvZmZcIik7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cbjpyb290IHtcbiAgLS1zd2lwZXItdGhlbWUtY29sb3I6ICMwMDdhZmY7XG4gIC8qXG4gIC0tc3dpcGVyLXByZWxvYWRlci1jb2xvcjogdmFyKC0tc3dpcGVyLXRoZW1lLWNvbG9yKTtcbiAgLS1zd2lwZXItd3JhcHBlci10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogaW5pdGlhbDtcbiAgKi9cbn1cblxuOmhvc3Qge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICB6LWluZGV4OiAxO1xufVxuXG4uc3dpcGVyIHtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBwYWRkaW5nOiAwO1xuICAvKiBGaXggb2YgV2Via2l0IGZsaWNrZXJpbmcgKi9cbiAgei1pbmRleDogMTtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5zd2lwZXItdmVydGljYWwgPiAuc3dpcGVyLXdyYXBwZXIge1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xufVxuXG4uc3dpcGVyLXdyYXBwZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHotaW5kZXg6IDE7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IHZhcigtLXN3aXBlci13cmFwcGVyLXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uLCBpbml0aWFsKTtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG59XG5cbi5zd2lwZXItYW5kcm9pZCAuc3dpcGVyLXNsaWRlLFxuLnN3aXBlci1pb3MgLnN3aXBlci1zbGlkZSxcbi5zd2lwZXItd3JhcHBlciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMHB4LCAwLCAwKTtcbn1cblxuLnN3aXBlci1ob3Jpem9udGFsIHtcbiAgdG91Y2gtYWN0aW9uOiBwYW4teTtcbn1cblxuLnN3aXBlci12ZXJ0aWNhbCB7XG4gIHRvdWNoLWFjdGlvbjogcGFuLXg7XG59XG5cbi5zd2lwZXItc2xpZGUge1xuICBmbGV4LXNocmluazogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uc3dpcGVyLXNsaWRlLWludmlzaWJsZS1ibGFuayB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLyogQXV0byBIZWlnaHQgKi9cbi5zd2lwZXItYXV0b2hlaWdodCxcbi5zd2lwZXItYXV0b2hlaWdodCAuc3dpcGVyLXNsaWRlIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4uc3dpcGVyLWF1dG9oZWlnaHQgLnN3aXBlci13cmFwcGVyIHtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgaGVpZ2h0O1xufVxuXG4uc3dpcGVyLWJhY2tmYWNlLWhpZGRlbiAuc3dpcGVyLXNsaWRlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi8qIDNEIEVmZmVjdHMgKi9cbi5zd2lwZXItM2Quc3dpcGVyLWNzcy1tb2RlIC5zd2lwZXItd3JhcHBlciB7XG4gIHBlcnNwZWN0aXZlOiAxMjAwcHg7XG59XG5cbi5zd2lwZXItM2QgLnN3aXBlci13cmFwcGVyIHtcbiAgdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcbn1cblxuLnN3aXBlci0zZCB7XG4gIHBlcnNwZWN0aXZlOiAxMjAwcHg7XG59XG4uc3dpcGVyLTNkIC5zd2lwZXItc2xpZGUsXG4uc3dpcGVyLTNkIC5zd2lwZXItY3ViZS1zaGFkb3cge1xuICB0cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkO1xufVxuXG4vKiBDU1MgTW9kZSAqL1xuLnN3aXBlci1jc3MtbW9kZSA+IC5zd2lwZXItd3JhcHBlciB7XG4gIG92ZXJmbG93OiBhdXRvO1xuICBzY3JvbGxiYXItd2lkdGg6IG5vbmU7IC8qIEZvciBGaXJlZm94ICovXG4gIC1tcy1vdmVyZmxvdy1zdHlsZTogbm9uZTsgLyogRm9yIEludGVybmV0IEV4cGxvcmVyIGFuZCBFZGdlICovXG59XG4uc3dpcGVyLWNzcy1tb2RlID4gLnN3aXBlci13cmFwcGVyOjotd2Via2l0LXNjcm9sbGJhciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4uc3dpcGVyLWNzcy1tb2RlID4gLnN3aXBlci13cmFwcGVyID4gLnN3aXBlci1zbGlkZSB7XG4gIHNjcm9sbC1zbmFwLWFsaWduOiBzdGFydCBzdGFydDtcbn1cbi5zd2lwZXItY3NzLW1vZGUuc3dpcGVyLWhvcml6b250YWwgPiAuc3dpcGVyLXdyYXBwZXIge1xuICBzY3JvbGwtc25hcC10eXBlOiB4IG1hbmRhdG9yeTtcbn1cbi5zd2lwZXItY3NzLW1vZGUuc3dpcGVyLXZlcnRpY2FsID4gLnN3aXBlci13cmFwcGVyIHtcbiAgc2Nyb2xsLXNuYXAtdHlwZTogeSBtYW5kYXRvcnk7XG59XG4uc3dpcGVyLWNzcy1tb2RlLnN3aXBlci1mcmVlLW1vZGUgPiAuc3dpcGVyLXdyYXBwZXIge1xuICBzY3JvbGwtc25hcC10eXBlOiBub25lO1xufVxuLnN3aXBlci1jc3MtbW9kZS5zd2lwZXItZnJlZS1tb2RlID4gLnN3aXBlci13cmFwcGVyID4gLnN3aXBlci1zbGlkZSB7XG4gIHNjcm9sbC1zbmFwLWFsaWduOiBub25lO1xufVxuLnN3aXBlci1jc3MtbW9kZS5zd2lwZXItY2VudGVyZWQgPiAuc3dpcGVyLXdyYXBwZXI6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICBvcmRlcjogOTk5OTtcbn1cbi5zd2lwZXItY3NzLW1vZGUuc3dpcGVyLWNlbnRlcmVkID4gLnN3aXBlci13cmFwcGVyID4gLnN3aXBlci1zbGlkZSB7XG4gIHNjcm9sbC1zbmFwLWFsaWduOiBjZW50ZXIgY2VudGVyO1xuICBzY3JvbGwtc25hcC1zdG9wOiBhbHdheXM7XG59XG4uc3dpcGVyLWNzcy1tb2RlLnN3aXBlci1jZW50ZXJlZC5zd2lwZXItaG9yaXpvbnRhbCA+IC5zd2lwZXItd3JhcHBlciA+IC5zd2lwZXItc2xpZGU6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4taW5saW5lLXN0YXJ0OiB2YXIoLS1zd2lwZXItY2VudGVyZWQtb2Zmc2V0LWJlZm9yZSk7XG59XG4uc3dpcGVyLWNzcy1tb2RlLnN3aXBlci1jZW50ZXJlZC5zd2lwZXItaG9yaXpvbnRhbCA+IC5zd2lwZXItd3JhcHBlcjo6YmVmb3JlIHtcbiAgaGVpZ2h0OiAxMDAlO1xuICBtaW4taGVpZ2h0OiAxcHg7XG4gIHdpZHRoOiB2YXIoLS1zd2lwZXItY2VudGVyZWQtb2Zmc2V0LWFmdGVyKTtcbn1cbi5zd2lwZXItY3NzLW1vZGUuc3dpcGVyLWNlbnRlcmVkLnN3aXBlci12ZXJ0aWNhbCA+IC5zd2lwZXItd3JhcHBlciA+IC5zd2lwZXItc2xpZGU6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tYmxvY2stc3RhcnQ6IHZhcigtLXN3aXBlci1jZW50ZXJlZC1vZmZzZXQtYmVmb3JlKTtcbn1cbi5zd2lwZXItY3NzLW1vZGUuc3dpcGVyLWNlbnRlcmVkLnN3aXBlci12ZXJ0aWNhbCA+IC5zd2lwZXItd3JhcHBlcjo6YmVmb3JlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1pbi13aWR0aDogMXB4O1xuICBoZWlnaHQ6IHZhcigtLXN3aXBlci1jZW50ZXJlZC1vZmZzZXQtYWZ0ZXIpO1xufVxuXG4vKiBTbGlkZSBzdHlsZXMgc3RhcnQgKi9cbi8qIDNEIFNoYWRvd3MgKi9cbi5zd2lwZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3csXG4uc3dpcGVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LWxlZnQsXG4uc3dpcGVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LXJpZ2h0LFxuLnN3aXBlci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy10b3AsXG4uc3dpcGVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LWJvdHRvbSxcbi5zd2lwZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3csXG4uc3dpcGVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LWxlZnQsXG4uc3dpcGVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LXJpZ2h0LFxuLnN3aXBlci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy10b3AsXG4uc3dpcGVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LWJvdHRvbSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgei1pbmRleDogMTA7XG59XG4uc3dpcGVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93IHtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjE1KTtcbn1cbi5zd2lwZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctbGVmdCB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBsZWZ0LCByZ2JhKDAsIDAsIDAsIDAuNSksIHJnYmEoMCwgMCwgMCwgMCkpO1xufVxuLnN3aXBlci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1yaWdodCB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgcmdiYSgwLCAwLCAwLCAwLjUpLCByZ2JhKDAsIDAsIDAsIDApKTtcbn1cbi5zd2lwZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctdG9wIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHRvcCwgcmdiYSgwLCAwLCAwLCAwLjUpLCByZ2JhKDAsIDAsIDAsIDApKTtcbn1cbi5zd2lwZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctYm90dG9tIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgcmdiYSgwLCAwLCAwLCAwLjUpLCByZ2JhKDAsIDAsIDAsIDApKTtcbn1cblxuLnN3aXBlci1sYXp5LXByZWxvYWRlciB7XG4gIHdpZHRoOiA0MnB4O1xuICBoZWlnaHQ6IDQycHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogNTAlO1xuICB0b3A6IDUwJTtcbiAgbWFyZ2luLWxlZnQ6IC0yMXB4O1xuICBtYXJnaW4tdG9wOiAtMjFweDtcbiAgei1pbmRleDogMTA7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDUwJTtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgYm9yZGVyOiA0cHggc29saWQgdmFyKC0tc3dpcGVyLXByZWxvYWRlci1jb2xvciwgdmFyKC0tc3dpcGVyLXRoZW1lLWNvbG9yKSk7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgYm9yZGVyLXRvcC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi5zd2lwZXI6bm90KC5zd2lwZXItd2F0Y2gtcHJvZ3Jlc3MpIC5zd2lwZXItbGF6eS1wcmVsb2FkZXIsXG4uc3dpcGVyLXdhdGNoLXByb2dyZXNzIC5zd2lwZXItc2xpZGUtdmlzaWJsZSAuc3dpcGVyLWxhenktcHJlbG9hZGVyIHtcbiAgYW5pbWF0aW9uOiBzd2lwZXItcHJlbG9hZGVyLXNwaW4gMXMgaW5maW5pdGUgbGluZWFyO1xufVxuXG4uc3dpcGVyLWxhenktcHJlbG9hZGVyLXdoaXRlIHtcbiAgLS1zd2lwZXItcHJlbG9hZGVyLWNvbG9yOiAjZmZmO1xufVxuXG4uc3dpcGVyLWxhenktcHJlbG9hZGVyLWJsYWNrIHtcbiAgLS1zd2lwZXItcHJlbG9hZGVyLWNvbG9yOiAjMDAwO1xufVxuXG5Aa2V5ZnJhbWVzIHN3aXBlci1wcmVsb2FkZXItc3BpbiB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICB9XG59XG4vKiBTbGlkZSBzdHlsZXMgZW5kICovXG46cm9vdCB7XG4gIC8qXG4gIC0tc3dpcGVyLXBhZ2luYXRpb24tY29sb3I6IHZhcigtLXN3aXBlci10aGVtZS1jb2xvcik7XG4gIC0tc3dpcGVyLXBhZ2luYXRpb24tbGVmdDogYXV0bztcbiAgLS1zd2lwZXItcGFnaW5hdGlvbi1yaWdodDogOHB4O1xuICAtLXN3aXBlci1wYWdpbmF0aW9uLWJvdHRvbTogOHB4O1xuICAtLXN3aXBlci1wYWdpbmF0aW9uLXRvcDogYXV0bztcbiAgLS1zd2lwZXItcGFnaW5hdGlvbi1mcmFjdGlvbi1jb2xvcjogaW5oZXJpdDtcbiAgLS1zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci1iZy1jb2xvcjogcmdiYSgwLDAsMCwwLjI1KTtcbiAgLS1zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci1zaXplOiA0cHg7XG4gIC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LXNpemU6IDhweDtcbiAgLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtd2lkdGg6IDhweDtcbiAgLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtaGVpZ2h0OiA4cHg7XG4gIC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWJvcmRlci1yYWRpdXM6IDUwJTtcbiAgLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtaW5hY3RpdmUtY29sb3I6ICMwMDA7XG4gIC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWluYWN0aXZlLW9wYWNpdHk6IDAuMjtcbiAgLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtb3BhY2l0eTogMTtcbiAgLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtaG9yaXpvbnRhbC1nYXA6IDRweDtcbiAgLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtdmVydGljYWwtZ2FwOiA2cHg7XG4gICovXG59XG5cbi5zd2lwZXItcGFnaW5hdGlvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0cmFuc2l0aW9uOiAzMDBtcyBvcGFjaXR5O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB6LWluZGV4OiAxMDtcbn1cbi5zd2lwZXItcGFnaW5hdGlvbi5zd2lwZXItcGFnaW5hdGlvbi1oaWRkZW4ge1xuICBvcGFjaXR5OiAwO1xufVxuLnN3aXBlci1wYWdpbmF0aW9uLWRpc2FibGVkID4gLnN3aXBlci1wYWdpbmF0aW9uLCAuc3dpcGVyLXBhZ2luYXRpb24uc3dpcGVyLXBhZ2luYXRpb24tZGlzYWJsZWQge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi8qIENvbW1vbiBTdHlsZXMgKi9cbi5zd2lwZXItcGFnaW5hdGlvbi1mcmFjdGlvbixcbi5zd2lwZXItcGFnaW5hdGlvbi1jdXN0b20sXG4uc3dpcGVyLWhvcml6b250YWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cyxcbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLnN3aXBlci1wYWdpbmF0aW9uLWhvcml6b250YWwge1xuICBib3R0b206IHZhcigtLXN3aXBlci1wYWdpbmF0aW9uLWJvdHRvbSwgOHB4KTtcbiAgdG9wOiB2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi10b3AsIGF1dG8pO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLyogQnVsbGV0cyAqL1xuLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGZvbnQtc2l6ZTogMDtcbn1cbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMC4zMyk7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xufVxuLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWFjdGl2ZS1tYWluIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbn1cbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUtcHJldiB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMC42Nik7XG59XG4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlLXByZXYtcHJldiB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMC4zMyk7XG59XG4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlLW5leHQge1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuNjYpO1xufVxuLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWFjdGl2ZS1uZXh0LW5leHQge1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuMzMpO1xufVxuXG4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgd2lkdGg6IHZhcigtLXN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC13aWR0aCwgdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LXNpemUsIDhweCkpO1xuICBoZWlnaHQ6IHZhcigtLXN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1oZWlnaHQsIHZhcigtLXN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1zaXplLCA4cHgpKTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYm9yZGVyLXJhZGl1cywgNTAlKTtcbiAgYmFja2dyb3VuZDogdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWluYWN0aXZlLWNvbG9yLCAjMDAwKTtcbiAgb3BhY2l0eTogdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWluYWN0aXZlLW9wYWNpdHksIDAuMik7XG59XG5idXR0b24uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgYm9yZGVyOiBub25lO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbi5zd2lwZXItcGFnaW5hdGlvbi1jbGlja2FibGUgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQ6b25seS1jaGlsZCB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUge1xuICBvcGFjaXR5OiB2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtb3BhY2l0eSwgMSk7XG4gIGJhY2tncm91bmQ6IHZhcigtLXN3aXBlci1wYWdpbmF0aW9uLWNvbG9yLCB2YXIoLS1zd2lwZXItdGhlbWUtY29sb3IpKTtcbn1cblxuLnN3aXBlci12ZXJ0aWNhbCA+IC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLFxuLnN3aXBlci1wYWdpbmF0aW9uLXZlcnRpY2FsLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMge1xuICByaWdodDogdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tcmlnaHQsIDhweCk7XG4gIGxlZnQ6IHZhcigtLXN3aXBlci1wYWdpbmF0aW9uLWxlZnQsIGF1dG8pO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwcHgsIC01MCUsIDApO1xufVxuLnN3aXBlci12ZXJ0aWNhbCA+IC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQsXG4uc3dpcGVyLXBhZ2luYXRpb24tdmVydGljYWwuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgbWFyZ2luOiB2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtdmVydGljYWwtZ2FwLCA2cHgpIDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLnN3aXBlci12ZXJ0aWNhbCA+IC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyxcbi5zd2lwZXItcGFnaW5hdGlvbi12ZXJ0aWNhbC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyB7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIHdpZHRoOiA4cHg7XG59XG4uc3dpcGVyLXZlcnRpY2FsID4gLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQsXG4uc3dpcGVyLXBhZ2luYXRpb24tdmVydGljYWwuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdHJhbnNpdGlvbjogMjAwbXMgdHJhbnNmb3JtLCAyMDBtcyB0b3A7XG59XG5cbi5zd2lwZXItaG9yaXpvbnRhbCA+IC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQsXG4uc3dpcGVyLXBhZ2luYXRpb24taG9yaXpvbnRhbC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQge1xuICBtYXJnaW46IDAgdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWhvcml6b250YWwtZ2FwLCA0cHgpO1xufVxuLnN3aXBlci1ob3Jpem9udGFsID4gLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljLFxuLnN3aXBlci1wYWdpbmF0aW9uLWhvcml6b250YWwuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMge1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cbi5zd2lwZXItaG9yaXpvbnRhbCA+IC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LFxuLnN3aXBlci1wYWdpbmF0aW9uLWhvcml6b250YWwuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XG4gIHRyYW5zaXRpb246IDIwMG1zIHRyYW5zZm9ybSwgMjAwbXMgbGVmdDtcbn1cblxuLnN3aXBlci1ob3Jpem9udGFsLnN3aXBlci1ydGwgPiAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQge1xuICB0cmFuc2l0aW9uOiAyMDBtcyB0cmFuc2Zvcm0sIDIwMG1zIHJpZ2h0O1xufVxuXG4vKiBGcmFjdGlvbiAqL1xuLnN3aXBlci1wYWdpbmF0aW9uLWZyYWN0aW9uIHtcbiAgY29sb3I6IHZhcigtLXN3aXBlci1wYWdpbmF0aW9uLWZyYWN0aW9uLWNvbG9yLCBpbmhlcml0KTtcbn1cblxuLyogUHJvZ3Jlc3MgKi9cbi5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2JhciB7XG4gIGJhY2tncm91bmQ6IHZhcigtLXN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLWJnLWNvbG9yLCByZ2JhKDAsIDAsIDAsIDAuMjUpKTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xufVxuLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyIC5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci1maWxsIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tY29sb3IsIHZhcigtLXN3aXBlci10aGVtZS1jb2xvcikpO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCB0b3A7XG59XG4uc3dpcGVyLXJ0bCAuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIgLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLWZpbGwge1xuICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCB0b3A7XG59XG4uc3dpcGVyLWhvcml6b250YWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIsIC5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci5zd2lwZXItcGFnaW5hdGlvbi1ob3Jpem9udGFsLCAuc3dpcGVyLXZlcnRpY2FsID4gLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLW9wcG9zaXRlLCAuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIuc3dpcGVyLXBhZ2luYXRpb24tdmVydGljYWwuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXItb3Bwb3NpdGUge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiB2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci1zaXplLCA0cHgpO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG59XG4uc3dpcGVyLXZlcnRpY2FsID4gLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLCAuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIuc3dpcGVyLXBhZ2luYXRpb24tdmVydGljYWwsIC5zd2lwZXItaG9yaXpvbnRhbCA+IC5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci1vcHBvc2l0ZSwgLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLnN3aXBlci1wYWdpbmF0aW9uLWhvcml6b250YWwuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXItb3Bwb3NpdGUge1xuICB3aWR0aDogdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXItc2l6ZSwgNHB4KTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG59XG5cbi5zd2lwZXItcGFnaW5hdGlvbi1sb2NrIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuOnJvb3Qge1xuICAtLXN3aXBlci1uYXZpZ2F0aW9uLXNpemU6IDQ0cHg7XG4gIC8qXG4gIC0tc3dpcGVyLW5hdmlnYXRpb24tdG9wLW9mZnNldDogNTAlO1xuICAtLXN3aXBlci1uYXZpZ2F0aW9uLXNpZGVzLW9mZnNldDogMTBweDtcbiAgLS1zd2lwZXItbmF2aWdhdGlvbi1jb2xvcjogdmFyKC0tc3dpcGVyLXRoZW1lLWNvbG9yKTtcbiAgKi9cbn1cblxuLnN3aXBlci1idXR0b24tcHJldixcbi5zd2lwZXItYnV0dG9uLW5leHQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogdmFyKC0tc3dpcGVyLW5hdmlnYXRpb24tdG9wLW9mZnNldCwgNTAlKTtcbiAgd2lkdGg6IGNhbGModmFyKC0tc3dpcGVyLW5hdmlnYXRpb24tc2l6ZSkgLyA0NCAqIDI3KTtcbiAgaGVpZ2h0OiB2YXIoLS1zd2lwZXItbmF2aWdhdGlvbi1zaXplKTtcbiAgbWFyZ2luLXRvcDogY2FsYygwcHggLSB2YXIoLS1zd2lwZXItbmF2aWdhdGlvbi1zaXplKSAvIDIpO1xuICB6LWluZGV4OiAxMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgY29sb3I6IHZhcigtLXN3aXBlci1uYXZpZ2F0aW9uLWNvbG9yLCB2YXIoLS1zd2lwZXItdGhlbWUtY29sb3IpKTtcbn1cbi5zd2lwZXItYnV0dG9uLXByZXYuc3dpcGVyLWJ1dHRvbi1kaXNhYmxlZCxcbi5zd2lwZXItYnV0dG9uLW5leHQuc3dpcGVyLWJ1dHRvbi1kaXNhYmxlZCB7XG4gIG9wYWNpdHk6IDAuMzU7XG4gIGN1cnNvcjogYXV0bztcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG4uc3dpcGVyLWJ1dHRvbi1wcmV2LnN3aXBlci1idXR0b24taGlkZGVuLFxuLnN3aXBlci1idXR0b24tbmV4dC5zd2lwZXItYnV0dG9uLWhpZGRlbiB7XG4gIG9wYWNpdHk6IDA7XG4gIGN1cnNvcjogYXV0bztcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG4uc3dpcGVyLW5hdmlnYXRpb24tZGlzYWJsZWQgLnN3aXBlci1idXR0b24tcHJldixcbi5zd2lwZXItbmF2aWdhdGlvbi1kaXNhYmxlZCAuc3dpcGVyLWJ1dHRvbi1uZXh0IHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuLnN3aXBlci1idXR0b24tcHJldiBzdmcsXG4uc3dpcGVyLWJ1dHRvbi1uZXh0IHN2ZyB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG9iamVjdC1maXQ6IGNvbnRhaW47XG4gIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcbn1cbi5zd2lwZXItcnRsIC5zd2lwZXItYnV0dG9uLXByZXYgc3ZnLFxuLnN3aXBlci1ydGwgLnN3aXBlci1idXR0b24tbmV4dCBzdmcge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xufVxuXG4uc3dpcGVyLWJ1dHRvbi1wcmV2LFxuLnN3aXBlci1ydGwgLnN3aXBlci1idXR0b24tbmV4dCB7XG4gIGxlZnQ6IHZhcigtLXN3aXBlci1uYXZpZ2F0aW9uLXNpZGVzLW9mZnNldCwgMTBweCk7XG4gIHJpZ2h0OiBhdXRvO1xufVxuXG4uc3dpcGVyLWJ1dHRvbi1uZXh0LFxuLnN3aXBlci1ydGwgLnN3aXBlci1idXR0b24tcHJldiB7XG4gIHJpZ2h0OiB2YXIoLS1zd2lwZXItbmF2aWdhdGlvbi1zaWRlcy1vZmZzZXQsIDEwcHgpO1xuICBsZWZ0OiBhdXRvO1xufVxuXG4uc3dpcGVyLWJ1dHRvbi1sb2NrIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyogTmF2aWdhdGlvbiBmb250IHN0YXJ0ICovXG4uc3dpcGVyLWJ1dHRvbi1wcmV2OmFmdGVyLFxuLnN3aXBlci1idXR0b24tbmV4dDphZnRlciB7XG4gIGZvbnQtZmFtaWx5OiBzd2lwZXItaWNvbnM7XG4gIGZvbnQtc2l6ZTogdmFyKC0tc3dpcGVyLW5hdmlnYXRpb24tc2l6ZSk7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lICFpbXBvcnRhbnQ7XG4gIGxldHRlci1zcGFjaW5nOiAwO1xuICBmb250LXZhcmlhbnQ6IGluaXRpYWw7XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG4uc3dpcGVyLWJ1dHRvbi1wcmV2OmFmdGVyLFxuLnN3aXBlci1ydGwgLnN3aXBlci1idXR0b24tbmV4dDphZnRlciB7XG4gIGNvbnRlbnQ6IFwicHJldlwiO1xufVxuXG4uc3dpcGVyLWJ1dHRvbi1uZXh0LFxuLnN3aXBlci1ydGwgLnN3aXBlci1idXR0b24tcHJldiB7XG4gIHJpZ2h0OiB2YXIoLS1zd2lwZXItbmF2aWdhdGlvbi1zaWRlcy1vZmZzZXQsIDEwcHgpO1xuICBsZWZ0OiBhdXRvO1xufVxuLnN3aXBlci1idXR0b24tbmV4dDphZnRlcixcbi5zd2lwZXItcnRsIC5zd2lwZXItYnV0dG9uLXByZXY6YWZ0ZXIge1xuICBjb250ZW50OiBcIm5leHRcIjtcbn1cblxuLyogTmF2aWdhdGlvbiBmb250IGVuZCAqL1xuLyoqXG4gKiBNYWluIFNldHRpbmdzIEZpbGVcbiAqIEdyb3VwOiBTZXR0aW5nc1xuICovXG4vKipcbiAqIEFuaW1hdGlvblxuICogR3JvdXA6IFNldHRpbmdzXG4gKi9cbjpyb290IHtcbiAgLS10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzO1xuICAtLXRyYW5zaXRpb24tZHVyYXRpb24tbWVkaXVtOiAwLjVzO1xuICAtLXRyYW5zaXRpb24tZHVyYXRpb24tc2xvdzogMXM7XG4gIC0tdHJhbnNpdGlvbi1kdXJhdGlvbi12ZXJ5LXNsb3c6IDJzO1xufVxuXG4vKipcbiAqIEJveCBNb2RlbFxuICogR3JvdXA6IFNldHRpbmdzXG4gKi9cbjpyb290IHtcbiAgLS1yYWRpdXM6IDFyZW07XG4gIC0tYm9yZGVyLXJhZGl1cy1udWxsOiAwO1xuICAtLWJvcmRlci1yYWRpdXMteHM6IDAuMjVyZW07XG4gIC0tYm9yZGVyLXJhZGl1cy1zOiAwLjVyZW07XG4gIC0tYm9yZGVyLXJhZGl1cy1tOiAxcmVtO1xuICAtLWJvcmRlci1yYWRpdXMtbDogMS4yNXJlbTtcbiAgLS1ib3JkZXItcmFkaXVzLXhsOiA0cmVtO1xuICAtLWJvcmRlci1yYWRpdXMteHhsOiA4cmVtO1xuICAtLWJvcmRlci1yYWRpdXMtZnVsbDogNTAlO1xuICAtLWJveC1zaGFkb3ctbGlnaHQ6IGhzbCgwZGVnIDAlIDAlIC8gMTUlKTtcbiAgLS1ib3gtc2hhZG93LWRhcms6IGhzbCgwZGVnIDAlIDEwMCUgLyAxNSUpO1xuICAtLWJveC1zaGFkb3ctbGlnaHQtMDE6XG4gICAgMHB4IDFweCAycHggMHB4IHZhcigtLWJveC1zaGFkb3ctbGlnaHQsIHJnYigwIDAgMCAvIDE1JSkpLFxuICAgIDBweCAxcHggM3B4IDFweCB2YXIoLS1ib3gtc2hhZG93LWxpZ2h0LCByZ2IoMCAwIDAgLyAxNSUpKTtcbiAgLS1ib3gtc2hhZG93LWxpZ2h0LTAyOlxuICAgIDBweCAxcHggMnB4IDBweCB2YXIoLS1ib3gtc2hhZG93LWxpZ2h0LCByZ2IoMCAwIDAgLyAxNSUpKSxcbiAgICAwcHggMnB4IDZweCAycHggdmFyKC0tYm94LXNoYWRvdy1saWdodCwgcmdiKDAgMCAwIC8gMTUlKSk7XG4gIC0tYm94LXNoYWRvdy1saWdodC0wMzpcbiAgICAwcHggNHB4IDhweCAzcHggdmFyKC0tYm94LXNoYWRvdy1saWdodCwgcmdiKDAgMCAwIC8gMTUlKSksXG4gICAgMHB4IDFweCAzcHggMHB4IHZhcigtLWJveC1zaGFkb3ctbGlnaHQsIHJnYigwIDAgMCAvIDE1JSkpO1xuICAtLWJveC1zaGFkb3ctbGlnaHQtMDQ6XG4gICAgMHB4IDZweCAxMHB4IDRweCB2YXIoLS1ib3gtc2hhZG93LWxpZ2h0LCByZ2IoMCAwIDAgLyAxNSUpKSxcbiAgICAwcHggMnB4IDNweCAwcHggdmFyKC0tYm94LXNoYWRvdy1saWdodCwgcmdiKDAgMCAwIC8gMTUlKSk7XG4gIC0tYm94LXNoYWRvdy1saWdodC0wNTpcbiAgICAwcHggOHB4IDEycHggNnB4IHZhcigtLWJveC1zaGFkb3ctbGlnaHQsIHJnYigwIDAgMCAvIDE1JSkpLFxuICAgIDBweCA0cHggNHB4IDBweCB2YXIoLS1ib3gtc2hhZG93LWxpZ2h0LCByZ2IoMCAwIDAgLyAxNSUpKTtcbiAgLS1ib3gtc2hhZG93LWxpZ2h0LTA2OlxuICAgIDBweCAxNnB4IDMycHggNnB4IHZhcigtLWJveC1zaGFkb3ctbGlnaHQsIHJnYigwIDAgMCAvIDE1JSkpLFxuICAgIDBweCA0cHggOHB4IDBweCB2YXIoLS1ib3gtc2hhZG93LWxpZ2h0LCByZ2IoMCAwIDAgLyAxNSUpKTtcbiAgLS1ib3gtc2hhZG93LWRhcmstMDE6XG4gICAgMHB4IDFweCAycHggMHB4IHZhcigtLWJveC1zaGFkb3ctZGFyaywgcmdiKDI1NSAyNTUgMjU1IC8gMTUlKSksXG4gICAgMHB4IDFweCAzcHggMXB4IHZhcigtLWJveC1zaGFkb3ctZGFyaywgcmdiKDI1NSAyNTUgMjU1IC8gMTUlKSk7XG4gIC0tYm94LXNoYWRvdy1kYXJrLTAyOlxuICAgIDBweCAxcHggMnB4IDBweCB2YXIoLS1ib3gtc2hhZG93LWRhcmssIHJnYigyNTUgMjU1IDI1NSAvIDE1JSkpLFxuICAgIDBweCAycHggNnB4IDJweCB2YXIoLS1ib3gtc2hhZG93LWRhcmssIHJnYigyNTUgMjU1IDI1NSAvIDE1JSkpO1xuICAtLWJveC1zaGFkb3ctZGFyay0wMzpcbiAgICAwcHggNHB4IDhweCAzcHggdmFyKC0tYm94LXNoYWRvdy1kYXJrLCByZ2IoMjU1IDI1NSAyNTUgLyAxNSUpKSxcbiAgICAwcHggMXB4IDNweCAwcHggdmFyKC0tYm94LXNoYWRvdy1kYXJrLCByZ2IoMjU1IDI1NSAyNTUgLyAxNSUpKTtcbiAgLS1ib3gtc2hhZG93LWRhcmstMDQ6XG4gICAgMHB4IDZweCAxMHB4IDRweCB2YXIoLS1ib3gtc2hhZG93LWRhcmssIHJnYigyNTUgMjU1IDI1NSAvIDE1JSkpLFxuICAgIDBweCAycHggM3B4IDBweCB2YXIoLS1ib3gtc2hhZG93LWRhcmssIHJnYigyNTUgMjU1IDI1NSAvIDE1JSkpO1xuICAtLWJveC1zaGFkb3ctZGFyay0wNTpcbiAgICAwcHggOHB4IDEycHggNnB4IHZhcigtLWJveC1zaGFkb3ctZGFyaywgcmdiKDI1NSAyNTUgMjU1IC8gMTUlKSksXG4gICAgMHB4IDRweCA0cHggMHB4IHZhcigtLWJveC1zaGFkb3ctZGFyaywgcmdiKDI1NSAyNTUgMjU1IC8gMTUlKSk7XG4gIC0tYm94LXNoYWRvdy1kYXJrLTA2OlxuICAgIDBweCAxNnB4IDMycHggNnB4IHZhcigtLWJveC1zaGFkb3ctZGFyaywgcmdiKDI1NSAyNTUgMjU1IC8gMTUlKSksXG4gICAgMHB4IDRweCA4cHggMHB4IHZhcigtLWJveC1zaGFkb3ctZGFyaywgcmdiKDI1NSAyNTUgMjU1IC8gMTUlKSk7XG4gIC0tYm94LXNoYWRvdy1ob3ZlcjogMCA0cHggMjBweCByZ2IoMTAgMTMgMTUgLyAzNSUpO1xuICAtLWJveC1zaGFkb3ctbWVudS1pbm5lcjogMHB4IDRweCA4cHggMHB4IHZhcigtLWNvbG9yLW5ldXRyYWwtMDUwKSBpbnNldDtcbiAgLS1ib3gtc2hhZG93LW1lbnUtb3V0ZXI6IDBweCA0cHggNHB4IDBweCAjMDAwMDAwNDA7XG4gIC0tYm94LXNoYWRvdy1hY2NvcmRpb246IDBweCA1cHggMTZweCAwcHggcmdiKDggMTUgNTIgLyA2JSk7XG59XG5cbi8qKlxuICogQnJlYWtwb2ludHNcbiAqIEdyb3VwOiBTZXR0aW5nc1xuICovXG4vKipcbiAqIEJ1dHRvbnNcbiAqIEdyb3VwOiBTZXR0aW5nc1xuICovXG46cm9vdCB7XG4gIC0tYnRuLXJhZGl1czogdmFyKC0tcmFkaXVzKTtcbiAgLS1idG4tcmFkaXVzLXhzOiBjYWxjKHZhcigtLXJhZGl1cykgLyA0KTtcbiAgLS1idG4tcmFkaXVzLXNtOiBjYWxjKHZhcigtLXJhZGl1cykgLyAyKTtcbiAgLS1idG4tcmFkaXVzLW1kOiBjYWxjKHZhcigtLXJhZGl1cykgKiAxLjEyNSk7XG4gIC0tYnRuLXJhZGl1cy1sZzogY2FsYyh2YXIoLS1yYWRpdXMpICogMS43NSk7XG4gIC0tYnRuLXJhZGl1cy14bDogY2FsYyh2YXIoLS1yYWRpdXMpICogNCk7XG4gIC0tYnRuLXJhZGl1cy1mdWxsOiA1MCU7XG4gIC0tYnV0dG9uLXNpemUteHNtYWxsOiAycmVtO1xuICAtLWJ1dHRvbi1zaXplLXNtYWxsOiAyLjc1cmVtO1xuICAtLWJ1dHRvbi1zaXplOiAzLjEyNXJlbTtcbiAgLS1idXR0b24tc2l6ZS1sYXJnZTogMy4xMjVyZW07XG4gIC0tYnV0dG9uLWJvcmRlci13aWR0aDogMC4xMjVyZW07XG59XG5cbi8qKlxuICogRm9udHNcbiAqIEdyb3VwOiBTZXR0aW5nc1xuICovXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwiT3BlbiBTYW5zXCI7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvT3BlblNhbnMvT3BlblNhbnMtTGlnaHQudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpO1xuICBmb250LXdlaWdodDogMzAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwiT3BlbiBTYW5zXCI7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvT3BlblNhbnMvT3BlblNhbnMtTGlnaHRJdGFsaWMudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpO1xuICBmb250LXdlaWdodDogMzAwO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwiT3BlbiBTYW5zXCI7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvT3BlblNhbnMvT3BlblNhbnMtUmVndWxhci50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIik7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJPcGVuIFNhbnNcIjtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9PcGVuU2Fucy9PcGVuU2Fucy1JdGFsaWMudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpO1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwiT3BlbiBTYW5zXCI7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvT3BlblNhbnMvT3BlblNhbnMtTWVkaXVtLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcIk9wZW4gU2Fuc1wiO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL09wZW5TYW5zL09wZW5TYW5zLU1lZGl1bUl0YWxpYy50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIik7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJPcGVuIFNhbnNcIjtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9PcGVuU2Fucy9PcGVuU2Fucy1TZW1pQm9sZC50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIik7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJPcGVuIFNhbnNcIjtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9PcGVuU2Fucy9PcGVuU2Fucy1TZW1pQm9sZEl0YWxpYy50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIik7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJPcGVuIFNhbnNcIjtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9PcGVuU2Fucy9PcGVuU2Fucy1Cb2xkLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcIk9wZW4gU2Fuc1wiO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL09wZW5TYW5zL09wZW5TYW5zLUJvbGRJdGFsaWMudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpO1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwiT3BlbiBTYW5zXCI7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvT3BlblNhbnMvT3BlblNhbnMtRXh0cmFCb2xkLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKTtcbiAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcIk9wZW4gU2Fuc1wiO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL09wZW5TYW5zL09wZW5TYW5zLUV4dHJhQm9sZEl0YWxpYy50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIik7XG4gIGZvbnQtd2VpZ2h0OiA4MDA7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cbi8qKlxuICogR3JpZFxuICogR3JvdXA6IFNldHRpbmdzXG4gKi9cbjpyb290IHtcbiAgLS1ncmlkLWNvbHVtbnM6IDEyO1xuICAtLWdyaWQtZ2FwOiAxcmVtO1xuICAtLWdhcC12ZXJ0aWNhbDogdmFyKC0tZ3JpZC1nYXApO1xuICAtLWdhcC1ob3Jpem9udGFsOiB2YXIoLS1ncmlkLWdhcCk7XG4gIC0tZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMTIsIDFmcik7XG4gIC0tZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zLTI6IHJlcGVhdCgyLCAxZnIpO1xuICAtLWdyaWQtdGVtcGxhdGUtY29sdW1ucy0zOiByZXBlYXQoMywgMWZyKTtcbiAgLS1ncmlkLXRlbXBsYXRlLWNvbHVtbnMtNDogcmVwZWF0KDQsIDFmcik7XG59XG5cbi8qKlxuICogSWNvbnNcbiAqIEdyb3VwOiBTZXR0aW5nc1xuICovXG46cm9vdCB7XG4gIC0taWNvbi11bml0OiAxcmVtO1xuICAtLWljb24tZGVmYXVsdDogdmFyKC0taWNvbi11bml0KTtcbiAgLS1pY29uLXh4czogY2FsYygwLjYyNSAqIHZhcigtLWljb24tdW5pdCkpO1xuICAtLWljb24tbXhzOiBjYWxjKDEuMTI1ICogdmFyKC0taWNvbi11bml0KSk7XG4gIC0taWNvbi14czogY2FsYygxLjI1ICogdmFyKC0taWNvbi11bml0KSk7XG4gIC0taWNvbi1tczogY2FsYygxLjUgKiB2YXIoLS1pY29uLXVuaXQpKTtcbiAgLS1pY29uLXNtOiBjYWxjKDIgKiB2YXIoLS1pY29uLXVuaXQpKTtcbiAgLS1pY29uLW1kOiBjYWxjKDIuNSAqIHZhcigtLWljb24tdW5pdCkpO1xuICAtLWljb24tbGc6IGNhbGMoMyAqIHZhcigtLWljb24tdW5pdCkpO1xuICAtLWljb24teGw6IGNhbGMoNCAqIHZhcigtLWljb24tdW5pdCkpO1xuICAtLWljb24tMnhsOiBjYWxjKDUgKiB2YXIoLS1pY29uLXVuaXQpKTtcbn1cblxuLyoqXG4gKiBJbnB1dHNcbiAqIEdyb3VwOiBTZXR0aW5nc1xuICovXG46cm9vdCB7XG4gIC0taW5wdXQtaGVpZ2h0LXNtYWxsOiAxNnB4O1xuICAtLWlucHV0LWhlaWdodC1tZWRpdW06IDE4cHg7XG4gIC0taW5wdXQtaGVpZ2h0LWxhcmdlOiAyMHB4O1xuICAtLWNoZWNrYm94LXNpemU6IDE2cHg7XG4gIC0tY2hlY2tib3gtc2l6ZS1zbWFsbDogMTJweDtcbn1cblxuLyoqXG4gKiBTaXplc1xuICogR3JvdXA6IFNldHRpbmdzXG4gKi9cbjpyb290IHtcbiAgLyogTWF4IHdpZHRocyAqL1xuICAtLW1heC13aWR0aC0tOXhzOiA5cmVtO1xuICAtLW1heC13aWR0aC0tOHhzOiAxMHJlbTtcbiAgLS1tYXgtd2lkdGgtLTd4czogMTJyZW07XG4gIC0tbWF4LXdpZHRoLS02eHM6IDE0cmVtO1xuICAtLW1heC13aWR0aC0tNXhzOiAxOXJlbTtcbiAgLS1tYXgtd2lkdGgtLTR4czogMjVyZW07XG4gIC0tbWF4LXdpZHRoLS0zeHM6IDMwcmVtO1xuICAtLW1heC13aWR0aC0tMnhzOiAzNHJlbTtcbiAgLS1tYXgtd2lkdGgtLXhzOiA0MnJlbTtcbiAgLS1tYXgtd2lkdGgtLXNtOiA1N3JlbTtcbiAgLS1tYXgtd2lkdGgtLW1kOiA2NXJlbTtcbiAgLS1tYXgtd2lkdGgtLWxnOiA3Mi41cmVtO1xuICAtLW1heC13aWR0aC0teGw6IDgwcmVtO1xuICAtLW1heC13aWR0aC0tMnhsOiA5MHJlbTtcbiAgLyogTWluIHdpZHRocyAqL1xuICAtLW1pbi13aWR0aC10YWJsZS1saXN0OiA1NXJlbTtcbiAgLS1taW4td2lkdGgtdHJlZS1saXN0OiA0MHJlbTtcbiAgLyogTWF4IGhlaWdodHMgKi9cbiAgLS1tYXgtaGVpZ2h0LWludHJvLWJhbm5lcjogNDIuNXJlbTtcbiAgLS1tYXgtaGVpZ2h0LW1hcC1saXN0OiAzMnJlbTtcbiAgLS1tYXgtaGVpZ2h0LWltYWdlLW5ld3M6IDI1cmVtO1xuICAvKiBNaW4gaGVpZ2h0cyAqL1xuICAtLW1pbi1oZWlnaHQtbWFwLXBhcm1hY3k6IDI1cmVtO1xuICAvKiBIZWlnaHRzICovXG4gIC0taGVhZGVyLXRvcC1iYXItaGVpZ2h0OiA0cmVtO1xuICAtLWhlYWRlci1tYWluLWJhci1oZWlnaHQ6IDYuMjVyZW07XG4gIC0taGVhZGVyLWhlaWdodDogY2FsYyhcbiAgICB2YXIoLS1oZWFkZXItdG9wLWJhci1oZWlnaHQpICsgdmFyKC0taGVhZGVyLW1haW4tYmFyLWhlaWdodClcbiAgKTtcbiAgLS1wYWdpbmF0aW9uLWhlaWdodDogMy43NXJlbTtcbiAgLyogV2lkdGhzICovXG4gIC0tc2lkZWJhci13aWR0aDogMTAwJTtcbiAgLS1jb250ZW50LXdpZHRoOiAxMDAlO1xuICAvKiBTaXppbmcgKi9cbiAgLS1wYWdlLW1heC13cmFwcGVyOiAxMjByZW07XG4gIC0tcGFnZS1tYXgtd3JhcHBlci1sYXJnZTogMTYwcmVtO1xufVxuXG4vKipcbiAqIFNwYWNpbmdcbiAqIEdyb3VwOiBTZXR0aW5nc1xuICovXG46cm9vdCB7XG4gIC0tc3BhY2luZy11bml0OiAxcmVtO1xuICAtLXNwYWNpbmctZGVmYXVsdDogdmFyKC0tc3BhY2luZy11bml0KTtcbiAgLS1zcGFjaW5nLTAwMDogY2FsYygwICogdmFyKC0tc3BhY2luZy11bml0KSk7XG4gIC0tc3BhY2luZy0wMTI6IGNhbGMoMC4xMjUgKiB2YXIoLS1zcGFjaW5nLXVuaXQpKTtcbiAgLS1zcGFjaW5nLTAyNTogY2FsYygwLjI1ICogdmFyKC0tc3BhY2luZy11bml0KSk7XG4gIC0tc3BhY2luZy0wMzc6IGNhbGMoMC4zNzUgKiB2YXIoLS1zcGFjaW5nLXVuaXQpKTtcbiAgLS1zcGFjaW5nLTA1MDogY2FsYygwLjUgKiB2YXIoLS1zcGFjaW5nLXVuaXQpKTtcbiAgLS1zcGFjaW5nLTA3NTogY2FsYygwLjc1ICogdmFyKC0tc3BhY2luZy11bml0KSk7XG4gIC0tc3BhY2luZy0xMDA6IGNhbGMoMSAqIHZhcigtLXNwYWNpbmctdW5pdCkpO1xuICAtLXNwYWNpbmctMTI1OiBjYWxjKDEuMjUgKiB2YXIoLS1zcGFjaW5nLXVuaXQpKTtcbiAgLS1zcGFjaW5nLTE1MDogY2FsYygxLjUgKiB2YXIoLS1zcGFjaW5nLXVuaXQpKTtcbiAgLS1zcGFjaW5nLTIwMDogY2FsYygyICogdmFyKC0tc3BhY2luZy11bml0KSk7XG4gIC0tc3BhY2luZy0yNTA6IGNhbGMoMi41ICogdmFyKC0tc3BhY2luZy11bml0KSk7XG4gIC0tc3BhY2luZy0zMDA6IGNhbGMoMyAqIHZhcigtLXNwYWNpbmctdW5pdCkpO1xuICAtLXNwYWNpbmctMzUwOiBjYWxjKDMuNSAqIHZhcigtLXNwYWNpbmctdW5pdCkpO1xuICAtLXNwYWNpbmctNDAwOiBjYWxjKDQgKiB2YXIoLS1zcGFjaW5nLXVuaXQpKTtcbiAgLS1zcGFjaW5nLTUwMDogY2FsYyg1ICogdmFyKC0tc3BhY2luZy11bml0KSk7XG4gIC0tc3BhY2luZy02MDA6IGNhbGMoNiAqIHZhcigtLXNwYWNpbmctdW5pdCkpO1xuICAtLXNwYWNpbmctNzAwOiBjYWxjKDcgKiB2YXIoLS1zcGFjaW5nLXVuaXQpKTtcbiAgLS1zcGFjaW5nLTgwMDogY2FsYyg4ICogdmFyKC0tc3BhY2luZy11bml0KSk7XG4gIC0tc3BhY2luZy0xMDAwOiBjYWxjKDEwICogdmFyKC0tc3BhY2luZy11bml0KSk7XG4gIC0tc3BhY2luZy0xMjAwOiBjYWxjKDEyICogdmFyKC0tc3BhY2luZy11bml0KSk7XG4gIC0tc3BhY2luZy0xNjAwOiBjYWxjKDE2ICogdmFyKC0tc3BhY2luZy11bml0KSk7XG4gIC0tc3BhY2luZy0yMDAwOiBjYWxjKDIwICogdmFyKC0tc3BhY2luZy11bml0KSk7XG4gIC0tc3BhY2luZy0yNDAwOiBjYWxjKDI0ICogdmFyKC0tc3BhY2luZy11bml0KSk7XG4gIC0tc3BhY2luZy0zMjAwOiBjYWxjKDMyICogdmFyKC0tc3BhY2luZy11bml0KSk7XG4gIC0tc3BhY2luZy0zNzAwOiBjYWxjKDM3ICogdmFyKC0tc3BhY2luZy11bml0KSk7XG4gIC0tc3BhY2luZy00MDAwOiBjYWxjKDQwICogdmFyKC0tc3BhY2luZy11bml0KSk7XG59XG5cbi8qKlxuICogU3dpcGVyXG4gKiBHcm91cDogU2V0dGluZ3NcbiAqL1xuOnJvb3Qge1xuICAtLXN3aXBlci1wYWdpbmF0aW9uLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1vcmFuZ2UpO1xuICAtLXN3aXBlci1uYXZpZ2F0aW9uLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1vcmFuZ2UpO1xuICAtLXN3aXBlci1wYWdpbmF0aW9uLWxlZnQ6IGF1dG87XG4gIC0tc3dpcGVyLXBhZ2luYXRpb24tcmlnaHQ6IDhweDtcbiAgLS1zd2lwZXItcGFnaW5hdGlvbi1ib3R0b206IDhweDtcbiAgLS1zd2lwZXItcGFnaW5hdGlvbi10b3A6IGF1dG87XG4gIC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LXNpemU6IHZhcigtLXNwYWNpbmctMTAwKTtcbiAgLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtd2lkdGg6IHZhcigtLXNwYWNpbmctMTAwKTtcbiAgLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtaGVpZ2h0OiB2YXIoLS1zcGFjaW5nLTA1MCk7XG4gIC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWluYWN0aXZlLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1saWdodC1ncmF5KTtcbiAgLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtaW5hY3RpdmUtb3BhY2l0eTogMTtcbiAgLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtb3BhY2l0eTogMTtcbiAgLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtaG9yaXpvbnRhbC1nYXA6IHZhcigtLXNwYWNpbmctMDUwKTtcbiAgLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtdmVydGljYWwtZ2FwOiB2YXIoLS1zcGFjaW5nLTEwMCk7XG4gIC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMteHMpO1xufVxuXG4vKipcbiAqIFR5cG9ncmFwaHlcbiAqIEdyb3VwOiBTZXR0aW5nc1xuICovXG46cm9vdCB7XG4gIC8qIEZvbnQgRmFjZXMgKi9cbiAgLS1mb250LXByaW1hcnk6IFwiT3BlbiBTYW5zXCIsIHNhbnMtc2VyaWY7XG4gIC0tZm9udC1tb25vOiBcIk1vbmFjb1wiLCBtb25vc3BhY2U7XG4gIC0tZm9udC1hd2Vzb21lOiBcIkZvbnRBd2Vzb21lXCI7XG4gIC8qIFR5cGUgYmFzZSAqL1xuICAtLXRleHQtYmFzZS1zaXplOiAxZW07XG4gIC8qIEZvbnQgV2VpZ2h0cyAqL1xuICAtLWZvbnQtd2VpZ2h0LXRoaW46IDEwMDtcbiAgLS1mb250LXdlaWdodC1leHRyYWxpZ2h0OiAyMDA7XG4gIC0tZm9udC13ZWlnaHQtbGlnaHQ6IDMwMDtcbiAgLS1mb250LXdlaWdodC1yZWd1bGFyOiA0MDA7XG4gIC0tZm9udC13ZWlnaHQtbWVkaXVtOiA1MDA7XG4gIC0tZm9udC13ZWlnaHQtc2VtaWJvbGQ6IDYwMDtcbiAgLS1mb250LXdlaWdodC1ib2xkOiA3MDA7XG4gIC0tZm9udC13ZWlnaHQtZXh0cmFib2xkOiA4MDA7XG4gIC0tZm9udC13ZWlnaHQtYmxhY2s6IDkwMDtcbiAgLyogTGV0dGVyIFNwYWNpbmdzICovXG4gIC0tdHJhY2tpbmctdGlnaHQ6IC0wLjAxNTZyZW07XG4gIC0tdHJhY2tpbmctbm9ybWFsOiAwcmVtO1xuICAtLXRyYWNraW5nLXdpZGU6IDAuMDA2M3JlbTtcbiAgLS10cmFja2luZy13aWRlLWxnOiAwLjAzMTNyZW07XG4gIC0tdHJhY2tpbmctd2lkZS14bDogMC4wNjI1cmVtO1xuICAtLXRyYWNraW5nLXdpZGUtMnhsOiAwLjA5MzhyZW07XG4gIC0tdHJhY2tpbmctd2lkZS0zeGw6IDAuMTg3NXJlbTtcbiAgLyogTGluZSBoZWlnaHRzICovXG4gIC0tbGVhZGluZy1ub25lOiAxO1xuICAtLWxlYWRpbmctdGlnaHQ6IDEuMjU7XG4gIC0tbGVhZGluZy1ub3JtYWw6IDEuNTtcbiAgLS1sZWFkaW5nLXJlbGF4ZWQ6IDEuNjtcbiAgLS1sZWFkaW5nLWxvb3NlOiAyO1xuICAtLWxlYWRpbmctZXh0cmEtbG9vc2U6IDIuNjc7XG4gIC8qIEJvZHkgdmFyaWFibGVzICovXG4gIC0tYm9keS1mb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIC0tYm9keS1leHRyYS1zbWFsbC1mb250LXNpemU6IDAuNzVyZW07XG4gIC0tYm9keS1zbWFsbC1mb250LXNpemU6IDAuODc1cmVtO1xuICAtLWJvZHktc21hbGwtbGV0dGVyLXNwYWNpbmc6IHZhcigtLXRyYWNraW5nLW5vcm1hbCk7XG4gIC0tYm9keS1zbWFsbC1saW5lLWhlaWdodDogdmFyKC0tbGVhZGluZy1ub3JtYWwpO1xuICAtLWJvZHktZm9udC1zaXplOiAxcmVtO1xuICAtLWJvZHktbGV0dGVyLXNwYWNpbmc6IHZhcigtLXRyYWNraW5nLW5vcm1hbCk7XG4gIC0tYm9keS1saW5lLWhlaWdodDogdmFyKC0tbGVhZGluZy1ub3JtYWwpO1xuICAtLWJvZHktbWVkaXVtLWZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIC0tYm9keS1tZWRpdW0tbGV0dGVyLXNwYWNpbmc6IHZhcigtLXRyYWNraW5nLW5vcm1hbCk7XG4gIC0tYm9keS1tZWRpdW0tbGluZS1oZWlnaHQ6IHZhcigtLWxlYWRpbmctbm9ybWFsKTtcbiAgLS1ib2R5LWxhcmdlLWZvbnQtc2l6ZTogMS41cmVtO1xuICAtLWJvZHktbGFyZ2UtbGV0dGVyLXNwYWNpbmc6IHZhcigtLXRyYWNraW5nLW5vcm1hbCk7XG4gIC0tYm9keS1sYXJnZS1saW5lLWhlaWdodDogdmFyKC0tbGVhZGluZy1ub3JtYWwpO1xuICAtLWgxLWZvbnQtc2l6ZTogMy42MjVyZW07XG4gIC0taDEtZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICAtLWgxLWxldHRlci1zcGFjaW5nOiB2YXIoLS10cmFja2luZy1ub3JtYWwpO1xuICAtLWgxLWxpbmUtaGVpZ2h0OiB2YXIoLS1sZWFkaW5nLXRpZ2h0KTtcbiAgLS1oMi1mb250LXNpemU6IDIuMTI1cmVtO1xuICAtLWgyLWZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbiAgLS1oMi1sZXR0ZXItc3BhY2luZzogdmFyKC0tdHJhY2tpbmctbm9ybWFsKTtcbiAgLS1oMi1saW5lLWhlaWdodDogdmFyKC0tbGVhZGluZy1ub3JtYWwpO1xuICAtLWgzLWZvbnQtc2l6ZTogMS41cmVtO1xuICAtLWgzLWZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbiAgLS1oMy1sZXR0ZXItc3BhY2luZzogdmFyKC0tdHJhY2tpbmctbm9ybWFsKTtcbiAgLS1oMy1saW5lLWhlaWdodDogdmFyKC0tbGVhZGluZy10aWdodCk7XG4gIC0taDQtZm9udC1zaXplOiAxLjI1cmVtO1xuICAtLWg0LWZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbiAgLS1oNC1sZXR0ZXItc3BhY2luZzogdmFyKC0tdHJhY2tpbmctbm9ybWFsKTtcbiAgLS1oNC1saW5lLWhlaWdodDogdmFyKC0tbGVhZGluZy1ub3JtYWwpO1xuICAtLWg1LWZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIC0taDUtZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICAtLWg1LWxldHRlci1zcGFjaW5nOiB2YXIoLS10cmFja2luZy1ub3JtYWwpO1xuICAtLWg1LWxpbmUtaGVpZ2h0OiB2YXIoLS1sZWFkaW5nLW5vcm1hbCk7XG4gIC0taDYtZm9udC1zaXplOiAxcmVtO1xuICAtLWg2LWZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbiAgLS1oNi1sZXR0ZXItc3BhY2luZzogdmFyKC0tdHJhY2tpbmctbm9ybWFsKTtcbiAgLS1oNi1saW5lLWhlaWdodDogdmFyKC0tbGVhZGluZy1ub3JtYWwpO1xufVxuXG4vKipcbiAqIFZhcmlhYmxlc1xuICogXCJHcm91cFwiIFNldHRpbmdzXG4gKi9cbjpyb290IHtcbiAgLS1zaGFkZS1jb2xvci1oOiAwO1xuICAtLXNoYWRlLWNvbG9yLXM6IDAlO1xuICAtLXNoYWRlLWNvbG9yLWw6IDAlO1xufVxuXG4vKipcbiAqIE1haW4gVG9vbHMgRmlsZVxuICogR3JvdXA6IFRvb2xzXG4gKi9cbi8qKlxuICogQTExeVxuICogR3JvdXA6IFRvb2xzXG4gKi9cbi8qIFRoaXMgaXMgdG8gY292ZXIgVm9pY2Utb3ZlciBkZXZpY2VzIGZvciBhY2Nlc3NpYmlsaXR5IHB1cnBvc2VzICovXG4vKipcbiAgKiBTa2lwIGxpbmsgbWl4aW5cbiAgKiBWaXN1YWxseSBoaWRlcyBhbiBlbGVtZW50IG9mZi1zY3JlZW4gYnV0IG1ha2VzIGl0IHZpc2libGUgYW5kIGFjY2Vzc2libGVcbiAgKiB3aGVuIGZvY3VzZWQgKGUuZy4sIGZvciBrZXlib2FyZCB1c2VycyB0byBza2lwIHRvIG1haW4gY29udGVudCkuXG4gICogRm9sbG93cyBXQ0FHIDIuMiBhY2Nlc3NpYmlsaXR5IGJlc3QgcHJhY3RpY2VzLlxuICAqIFVzZSBvbiBgLnUtc2tpcC1saW5rYCBvciBlcXVpdmFsZW50IHV0aWxpdHkgY2xhc3MuXG4gICovXG4vKipcbiAqIEFuaW1hdGlvbnNcbiAqIEdyb3VwOiBUb29sc1xuICovXG4vKipcbiAqIE9uIEV2ZW50XG4gKiBHcm91cDogVG9vbHNcbiAqL1xuLyoqXG4gKiBCb3ggU2hhZG93c1xuICogR3JvdXA6IFRvb2xzXG4gKlxuICogQG1peGluIGJveC1zaGFkb3dcbiAqIFxuICogQHBhcmFtIHtTdHJpbmd9ICRzdHlsZSAtIM6kzr8gz4PPhM+Fzrsgz4TOv8+FIGJveC1zaGFkb3cuIM6Vz4DOuc+Ez4HOtc+Az4zOvM61zr3Otc+CIM+EzrnOvM6tz4I6ICcwMScsICcwMicsICcwMycsICcwNCcsICcwNScsICcwNicuXG4gKiBAcGFyYW0ge1N0cmluZ30gJHRoZW1lIC0gzqTOvyDOuM6tzrzOsSDPhM63z4Igz4POus65zqzPgi4gzpXPgM65z4TPgc61z4DPjM68zrXOvc61z4Igz4TOuc68zq3PgjogJ2xpZ2h0JywgJ2RhcmsnLlxuICogQHBhcmFtIHtCb29sZWFufSAkaW1wb3J0YW50IC0gzpHOvSDOtc6vzr3Osc65IGB0cnVlYCwgz4DPgc6/z4POuM6tz4TOtc65IM+Ezr8gYCFpbXBvcnRhbnRgIM+Dz4TOt869IM65zrTOuc+Mz4TOt8+EzrEgYm94LXNoYWRvdy4gzqDPgc6/zrXPgM65zrvOv86zzq46IGBmYWxzZWAuXG4gKiBcbiAqIEBleGFtcGxlXG4gKiAuZWxlbWVudCB7XG4gKiAgIEBpbmNsdWRlIGJveC1zaGFkb3coJzAzJywgJ2RhcmsnKTtcbiAqIH1cbiAqL1xuLyoqXG4gKiBCcmVha3BvaW50cyBNaXhpbnNcbiAqIEdyb3VwOiBUb29sc1xuICovXG4vKipcbiAqIEFuaW1hdGlvbnNcbiAqIEdyb3VwOiBUb29sc1xuICovXG4vKipcbiAqIEJ1dHRvblxuICogR3JvdXA6IFRvb2xzXG4gKi9cbi8qKlxuICogQ2xlYXJmaXhcbiAqIEdyb3VwOiBUb29sc1xuICovXG4vKlxuXHRNaXhpbiB0byBkcm9wIG1pY3JvIGNsZWFyZml4IGludG8gYSBzZWxlY3Rvci4gRnVydGhlciByZWFkaW5nOlxuXHRodHRwOi8vd3d3LmNzc21vam8uY29tL3RoZS12ZXJ5LWxhdGVzdC1jbGVhcmZpeC1yZWxvYWRlZC9cblxuXHQudXNhZ2Uge1xuXHRcdEBpbmNsdWRlIGNsZWFyZml4KCk7XG5cdH1cblxuICovXG4vKipcbiAqIENvbG9yc1xuICpcbiAqIEdyb3VwOiBUb29sc1xuICovXG46cm9vdCB7XG4gIC0tY29sb3ItYnJhbmQtYnJvd24tc2VtaS10cmFuc3BhcmVudDogI2ZiZjBkYTtcbiAgLS1jb2xvci1icmFuZC1icm93bjogIzczNTEwZDtcbiAgLS1jb2xvci1icmFuZC1yZWQtc2VtaS10cmFuc3BhcmVudDogI2Y5ZTFlNTtcbiAgLS1jb2xvci1icmFuZC1kYXJrLXJlZDogI2FmMjMzYTtcbiAgLS1jb2xvci1icmFuZC1yZWQ6ICNmOWUxZTU7XG4gIC0tY29sb3ItYWxlcnQtZ3JlZW4tZGFyazogIzBkNjgzMjtcbiAgLS1jb2xvci1icmFuZC1ncmVlbjogI2Q2ZjBlMDtcbiAgLS1jb2xvci1icmFuZC1ibHVlOiAjMDAzMzc1O1xuICAtLWNvbG9yLWJyYW5kLWJsdWUtbGlnaHQ6ICMxYzY1N2Q7XG4gIC0tY29sb3ItYnJhbmQtYmx1ZS1saWdodC1zZW1pLXRyYW5zcGFyZW50OiAjZGVmMWY3O1xuICAtLWNvbG9yLWJyYW5kLWJsdWUtc2VtaS10cmFuc3BhcmVudDogcmdiYSgxODcsIDEwNywgMjE3LCAwLjIpO1xuICAtLWNvbG9yLWJyYW5kLW9yYW5nZTogI2Y4OWIzNDtcbiAgLS1jb2xvci1icmFuZC1kYXJrLWdyYXk6ICMzMzMzMzM7XG4gIC0tY29sb3ItYnJhbmQtZ3JheTogIzU3NTc1NztcbiAgLS1jb2xvci1icmFuZC1ibHVlLWRhcms6ICM0YjY1ODc7XG4gIC0tY29sb3ItYnJhbmQtd2hpdGU6ICNmZmZmZmY7XG4gIC0tY29sb3ItYnJhbmQtbGlnaHQtZ3JheTogI2U4ZThlODtcbiAgLS1jb2xvci1icmFuZC1saWdodGVyLWdyYXk6ICNlZWVlZWU7XG4gIC0tY29sb3ItYnJhbmQtc2VhcmNoLWdyYXk6ICNkOWQ5ZDk7XG4gIC0tY29sb3ItbmV1dHJhbC0xMDAwOiAjMGEwYTBhO1xuICAtLWNvbG9yLW5ldXRyYWwtOTc1OiAjMWYyMDIxO1xuICAtLWNvbG9yLW5ldXRyYWwtOTUwOiAjMjMyNjI2O1xuICAtLWNvbG9yLW5ldXRyYWwtOTAwOiAjM2IzZDQwO1xuICAtLWNvbG9yLW5ldXRyYWwtODAwOiAjNTM1NjVhO1xuICAtLWNvbG9yLW5ldXRyYWwtNzAwOiAjNWU2MTY2O1xuICAtLWNvbG9yLW5ldXRyYWwtNjAwOiAjNzY3YTgwO1xuICAtLWNvbG9yLW5ldXRyYWwtNTAwOiAjN2Y4NDhhO1xuICAtLWNvbG9yLW5ldXRyYWwtNDAwOiAjOTk5ZWE2O1xuICAtLWNvbG9yLW5ldXRyYWwtMzAwOiAjYjViY2M0O1xuICAtLWNvbG9yLW5ldXRyYWwtMjAwOiAjZDFkNmRlO1xuICAtLWNvbG9yLW5ldXRyYWwtMTAwOiAjZGZlNWVkO1xuICAtLWNvbG9yLW5ldXRyYWwtMDUwOiAjZjJmN2ZmO1xuICAtLWNvbG9yLW5ldXRyYWwtMDAwOiAjZmFmYWZhO1xuICAtLWNvbG9yLWRhcms6IGhzbCgxMDAsIDEwMCUsIDAlKTtcbiAgLS1jb2xvci1saWdodDogaHNsKDAsIDAlLCAxMDAlKTtcbiAgLS1jb2xvci1mYWRlLWxpZ2h0LTU6IHJnYmEoMjQyLCAyNDIsIDI0MiwgMC4wNTA5ODAzOTIyKTtcbiAgLS1jb2xvci1mYWRlLWxpZ2h0LTEwOiByZ2JhKDI0MiwgMjQyLCAyNDIsIDAuMTAxOTYwNzg0Myk7XG4gIC0tY29sb3ItZmFkZS1saWdodC0yMDogcmdiYSgyNDIsIDI0MiwgMjQyLCAwLjIpO1xuICAtLWNvbG9yLWZhZGUtbGlnaHQtMzA6IHJnYmEoMjQyLCAyNDIsIDI0MiwgMC4zMDE5NjA3ODQzKTtcbiAgLS1jb2xvci1mYWRlLWxpZ2h0LTQwOiByZ2JhKDI0MiwgMjQyLCAyNDIsIDAuNCk7XG4gIC0tY29sb3ItZmFkZS1saWdodC01MDogcmdiYSgyNDIsIDI0MiwgMjQyLCAwLjUwMTk2MDc4NDMpO1xuICAtLWNvbG9yLWZhZGUtbGlnaHQtNjA6IHJnYmEoMjQyLCAyNDIsIDI0MiwgMC42KTtcbiAgLS1jb2xvci1mYWRlLWxpZ2h0LTcwOiByZ2JhKDI0MiwgMjQyLCAyNDIsIDAuNjk4MDM5MjE1Nyk7XG4gIC0tY29sb3ItZmFkZS1saWdodC04MDogcmdiYSgyNDIsIDI0MiwgMjQyLCAwLjgpO1xuICAtLWNvbG9yLWZhZGUtbGlnaHQtOTA6IHJnYmEoMjQyLCAyNDIsIDI0MiwgMC44OTgwMzkyMTU3KTtcbiAgLS1jb2xvci1mYWRlLWRhcmstNTogcmdiYSgyOSwgMjcsIDMyLCAwLjA1MDk4MDM5MjIpO1xuICAtLWNvbG9yLWZhZGUtZGFyay0xMDogcmdiYSgyOSwgMjcsIDMyLCAwLjEwMTk2MDc4NDMpO1xuICAtLWNvbG9yLWZhZGUtZGFyay0yMDogcmdiYSgyOSwgMjcsIDMyLCAwLjIpO1xuICAtLWNvbG9yLWZhZGUtZGFyay0zMDogcmdiYSgyOSwgMjcsIDMyLCAwLjMwMTk2MDc4NDMpO1xuICAtLWNvbG9yLWZhZGUtZGFyay00MDogcmdiYSgyOSwgMjcsIDMyLCAwLjQpO1xuICAtLWNvbG9yLWZhZGUtZGFyay01MDogcmdiYSgyOSwgMjcsIDMyLCAwLjUwMTk2MDc4NDMpO1xuICAtLWNvbG9yLWZhZGUtZGFyay02MDogcmdiYSgyOSwgMjcsIDMyLCAwLjYpO1xuICAtLWNvbG9yLWZhZGUtZGFyay03MDogcmdiYSgyOSwgMjcsIDMyLCAwLjY5ODAzOTIxNTcpO1xuICAtLWNvbG9yLWZhZGUtZGFyay04MDogcmdiYSgyOSwgMjcsIDMyLCAwLjgpO1xuICAtLWNvbG9yLWZhZGUtZGFyay05MDogcmdiYSgyOSwgMjcsIDMyLCAwLjg5ODAzOTIxNTcpO1xuICAtLWNvbG9yLWZvY3VzLXN0cm9rZTogI2ZlZGMwMDtcbiAgLS1jb2xvci10ZXh0OiB2YXIoLS1uZXV0cmFsLTEwMDApO1xuICAtLWNvbG9yLXRleHQtbGlnaHQ6IHZhcigtLWxpZ2h0KTtcbiAgLS1vdmVybGF5LWNvbG9yOiByZ2IoMCAwIDAgLyA4NCUpO1xuICAtLW92ZXJsYXktY29sb3ItbGlnaHQ6IHJnYigwIDAgMCAvIDM1JSk7XG59XG5cbi8qKlxuICogTGluZWFyIEdyYWRpZW50IE1peGluXG4gKiBHcm91cDogVG9vbHNcbiAqIFxuICogR2VuZXJhdGVzIGEgbGluZWFyIGdyYWRpZW50IGJhY2tncm91bmQgd2l0aCBjdXN0b21pemFibGUgZGlyZWN0aW9uLCBjb2xvcnMsIGFuZCBzdG9wcy5cbiAqIFxuICogQG1peGluIGxpbmVhci1ncmFkaWVudChcbiAqICAgJGRpcmVjdGlvbjogdG8gYm90dG9tLCAgICAgICAgIC8vIERpcmVjdGlvbiBvZiB0aGUgZ3JhZGllbnQgKGUuZy4sICd0byByaWdodCcsICc0NWRlZycpXG4gKiAgICRzdGFydC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwKSwgLy8gU3RhcnRpbmcgY29sb3Igb2YgdGhlIGdyYWRpZW50XG4gKiAgICRzdGFydC1wZXJjZW50OiAwJSwgICAgICAgICAgICAvLyBQZXJjZW50YWdlIHBvc2l0aW9uIHdoZXJlIHRoZSBzdGFydGluZyBjb2xvciBiZWdpbnNcbiAqICAgJGVuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjcpLCAvLyBFbmRpbmcgY29sb3Igb2YgdGhlIGdyYWRpZW50XG4gKiAgICRlbmQtcGVyY2VudDogNzAlLCAgICAgICAgICAgICAvLyBQZXJjZW50YWdlIHBvc2l0aW9uIHdoZXJlIHRoZSBlbmRpbmcgY29sb3IgZW5kc1xuICogICAkaW1wb3J0YW50OiBmYWxzZSAgICAgICAgICAgICAgIC8vIElmIHRydWUsIGFwcGVuZHMgYCFpbXBvcnRhbnRgIHRvIHRoZSBiYWNrZ3JvdW5kIHByb3BlcnR5XG4gKiApXG4gKiBcbiAqIEBleGFtcGxlXG4gKiAuY3RhX19idXR0b24tLWdyYWRpZW50IHtcbiAqICAgQGluY2x1ZGUgbGluZWFyLWdyYWRpZW50KDI3MGRlZywgcmdiYSgwLCAwLCAwLCAwLjAwKSwgMzQuNSUsIHJnYmEoMCwgMCwgMCwgMC43MCksIDYzJSk7XG4gKiB9XG4gKiBcbiAqIEBleGFtcGxlXG4gKiAuY3RhX19idXR0b24tLWdyYWRpZW50LWltcG9ydGFudCB7XG4gKiAgIEBpbmNsdWRlIGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgI0ZGNTczMywgMCUsIHJnYmEoMjU1LCA4NywgNTEsIDAuNSksIDEwMCUsIHRydWUpO1xuICogfVxuICpcdDBkZWc6IFBvaW50cyB0byB0b3AuXG4gKiAgOTBkZWc6IFBvaW50cyB0byByaWdodC5cbiAqXHQxODBkZWc6IFBvaW50cyB0byBib3R0b20uXG4gKlx0MjcwZGVnOiBQb2ludHMgdG8gbGVmdC5cbiAqL1xuLyoqXG4gKiBJbnB1dFxuICogR3JvdXA6IFRvb2xzXG4gKi9cbi8qKlxuICogUGxhY2Vob2xkZXJcbiAqIEdyb3VwOiBUb29sc1xuICovXG4vKiBzdHlsZWxpbnQtZGlzYWJsZSAqL1xuLyogcHJldHRpZXItaWdub3JlICovXG4vKipcbiAqIFR5cG9ncmFwaHlcbiAqIEdyb3VwOiBUb29sc1xuICovXG4vKipcbiAqIEFuaW1hdGlvbnNcbiAqIEdyb3VwOiBUb29sc1xuICovXG4vKipcbiAqIEFuaW1hdGlvbnNcbiAqIEdyb3VwOiBUb29sc1xuICovXG4vKipcbiAqIElucHV0XG4gKiBHcm91cDogVG9vbHNcbiAqL1xuLyoqXG4gKiBTY3JlZW4gUmVhZGVyIE9ubHlcbiAqIEdyb3VwOiBUb29sc1xuICovXG4vKipcbiAqIFNwYWNpbmdcbiAqIEdyb3VwOiBUb29sc1xuICovXG4vKipcbiAqIE1haW4gR2VuZXJpYyBGaWxlXG4gKiBHcm91cDogR2VuZXJpY1xuICovXG4vKipcbiAqIEFuaW1hdGlvbnNcbiAqIEdyb3VwOiBHZW5lcmljXG4gICogVGhpcyBmaWxlIGNvbnRhaW5zIHJldXNhYmxlIGtleWZyYW1lIGFuaW1hdGlvbnMgZm9yIHZhcmlvdXMgdmlzdWFsIGVmZmVjdHMuXG4gKiBJdCBpbmNsdWRlcyB1dGlsaXR5IGNsYXNzZXMgcHJlZml4ZWQgd2l0aCBgYW5pbWF0ZS1gIGZvciBlYXN5IGFwcGxpY2F0aW9uLlxuICovXG4vKiBVdGlsaXR5IGNsYXNzZXMgZm9yIGFuaW1hdGluZyBlbGVtZW50cyAqL1xuW2NsYXNzXj1hbmltYXRlLV0sXG5bY2xhc3MqPVwiIGFuaW1hdGUtXCJdIHtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50O1xufVxuXG4vKiBTbGlkZSBEb3duIEFuaW1hdGlvbiAqL1xuLyoqXG4gKiBAYW5pbWF0aW9uIHNsaWRlLWRvd25cbiAqIE1vdmVzIGFuIGVsZW1lbnQgZnJvbSBhYm92ZSB0aGUgdmlld3BvcnQgaW50byBpdHMgbm9ybWFsIHBvc2l0aW9uIHdpdGggYSBzbW9vdGggdHJhbnNpdGlvbi5cbiAqIFVzZSB0aGlzIGZvciBkcm9wZG93bnMsIG1vZGFscywgb3IgbW9iaWxlIG1lbnVzLlxuICovXG5Aa2V5ZnJhbWVzIHNsaWRlLWRvd24ge1xuICBmcm9tIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG4vKiBTbGlkZSBVcCBBbmltYXRpb24gKi9cbi8qKlxuICogQGFuaW1hdGlvbiBzbGlkZS11cFxuICogTW92ZXMgYW4gZWxlbWVudCBmcm9tIGl0cyBub3JtYWwgcG9zaXRpb24gdG8gYWJvdmUgdGhlIHZpZXdwb3J0IHdpdGggYSBzbW9vdGggdHJhbnNpdGlvbi5cbiAqIFVzZSB0aGlzIGZvciBoaWRpbmcgZHJvcGRvd25zLCBtb2RhbHMsIG9yIG1vYmlsZSBtZW51cy5cbiAqL1xuQGtleWZyYW1lcyBzbGlkZS11cCB7XG4gIGZyb20ge1xuICAgIHRyYW5zZm9ybTogc2NhbGVZKDApO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogc2NhbGVZKDEpO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cbi8qIFNsaWRlIExlZnQgQW5pbWF0aW9uICovXG4vKipcbiAqIEBhbmltYXRpb24gc2xpZGUtbGVmdFxuICogTW92ZXMgYW4gZWxlbWVudCBmcm9tIGFib3ZlIHRoZSB2aWV3cG9ydCBpbnRvIGl0cyBub3JtYWwgcG9zaXRpb24gd2l0aCBhIHNtb290aCB0cmFuc2l0aW9uLlxuICogVXNlIHRoaXMgZm9yIGRyb3Bkb3ducywgbW9kYWxzLCBvciBtb2JpbGUgbWVudXMuXG4gKi9cbkBrZXlmcmFtZXMgc2xpZGUtbGVmdCB7XG4gIGZyb20ge1xuICAgIHRyYW5zZm9ybTogc2NhbGVYKDApO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogc2NhbGVYKDEpO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cbi8qIEZhZGUgSW4gQW5pbWF0aW9uICovXG4vKipcbiAqIEBhbmltYXRpb24gZmFkZS1pblxuICogR3JhZHVhbGx5IGluY3JlYXNlcyB0aGUgb3BhY2l0eSBvZiBhbiBlbGVtZW50IGZyb20gMCB0byAxLlxuICogVXNlIHRoaXMgZm9yIHRvb2x0aXBzLCBwb3B1cHMsIG9yIHN1YnRsZSBhcHBlYXJhbmNlIGVmZmVjdHMuXG4gKi9cbkBrZXlmcmFtZXMgZmFkZS1pbiB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cbi8qIEZhZGUgT3V0IEFuaW1hdGlvbiAqL1xuLyoqXG4gKiBAYW5pbWF0aW9uIGZhZGUtb3V0XG4gKiBHcmFkdWFsbHkgZGVjcmVhc2VzIHRoZSBvcGFjaXR5IG9mIGFuIGVsZW1lbnQgZnJvbSAxIHRvIDAuXG4gKiBVc2UgdGhpcyBmb3IgZGlzbWlzc2luZyB0b29sdGlwcywgcG9wdXBzLCBvciBzdWJ0bGUgZGlzYXBwZWFyYW5jZSBlZmZlY3RzLlxuICovXG5Aa2V5ZnJhbWVzIGZhZGUtb3V0IHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuICB0byB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuLyogU2NhbGUgSW4gQW5pbWF0aW9uICovXG4vKipcbiAqIEBhbmltYXRpb24gc2NhbGUtaW5cbiAqIEdyYWR1YWxseSBzY2FsZXMgYW4gZWxlbWVudCBmcm9tIDAuOHggdG8gaXRzIG5vcm1hbCBzaXplLlxuICogVXNlIHRoaXMgZm9yIG1vZGFscywgaW1hZ2VzLCBvciB6b29tIGVmZmVjdHMuXG4gKi9cbkBrZXlmcmFtZXMgc2NhbGUtaW4ge1xuICBmcm9tIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOCk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuICB0byB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG4vKiBTY2FsZSBPdXQgQW5pbWF0aW9uICovXG4vKipcbiAqIEBhbmltYXRpb24gc2NhbGUtb3V0XG4gKiBHcmFkdWFsbHkgc2NhbGVzIGFuIGVsZW1lbnQgZnJvbSBpdHMgbm9ybWFsIHNpemUgdG8gMC44eC5cbiAqIFVzZSB0aGlzIGZvciBkaXNtaXNzaW5nIG1vZGFscywgaW1hZ2VzLCBvciB6b29tIGVmZmVjdHMuXG4gKi9cbkBrZXlmcmFtZXMgc2NhbGUtb3V0IHtcbiAgZnJvbSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG4gIHRvIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOCk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuLyogQm91bmNlIEFuaW1hdGlvbiAqL1xuLyoqXG4gKiBAYW5pbWF0aW9uIGJvdW5jZVxuICogQ3JlYXRlcyBhIGJvdW5jaW5nIGVmZmVjdCBmb3IgYW4gZWxlbWVudC5cbiAqIFVzZSB0aGlzIGZvciBjYWxsLXRvLWFjdGlvbiBidXR0b25zIG9yIGF0dGVudGlvbi1ncmFiYmluZyBlZmZlY3RzLlxuICovXG5Aa2V5ZnJhbWVzIGJvdW5jZSB7XG4gIDAlLCAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIH1cbiAgNTAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwJSk7XG4gIH1cbn1cbi8qKlxuICogQGFuaW1hdGlvbiBib3VuY2UgMlxuICogQ3JlYXRlcyBhIGJvdW5jaW5nIGVmZmVjdCBmb3IgYW4gZWxlbWVudC5cbiAqIFVzZSB0aGlzIGZvciBjYWxsLXRvLWFjdGlvbiBidXR0b25zIG9yIGF0dGVudGlvbi1ncmFiYmluZyBlZmZlY3RzLlxuICovXG5Aa2V5ZnJhbWVzIGJvdW5jZTIge1xuICAwJSwgMjAlLCA1MCUsIDgwJSwgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG4gIDQwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yMCUpO1xuICB9XG4gIDYwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMCUpO1xuICB9XG59XG4vKiBTbGlkZSBib3VuY2UgdXAgQW5pbWF0aW9uICovXG4vKipcbiAqIEBhbmltYXRpb24gc2xpZGUtYm91bmNlLXVwXG4gKiBDcmVhdGVzIGEgYm91bmNpbmcgZWZmZWN0IGZvciBhbiBlbGVtZW50LlxuICogVXNlIHRoaXMgZm9yIGFjY29yZGlvbiBvciBhdHRlbnRpb24tZ3JhYmJpbmcgZWZmZWN0cy5cbiAqL1xuQGtleWZyYW1lcyBzbGlkZS1ib3VuY2UtdXAge1xuICBmcm9tIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlWSgwLjUpIHRyYW5zbGF0ZVkoMzAlKTtcbiAgfVxuICB0byB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZVkoMSkgdHJhbnNsYXRlWSgwKTtcbiAgfVxufVxuLyogU2xpZGUgYm91bmNlIGRvd24gQW5pbWF0aW9uICovXG4vKipcbiAqIEBhbmltYXRpb24gc2xpZGUtYm91bmNlLWRvd25cbiAqIENyZWF0ZXMgYSBib3VuY2luZyBlZmZlY3QgZm9yIGFuIGVsZW1lbnQuXG4gKiBVc2UgdGhpcyBmb3IgYWNjb3JkaW9uIG9yIGF0dGVudGlvbi1ncmFiYmluZyBlZmZlY3RzLlxuICovXG5Aa2V5ZnJhbWVzIHNsaWRlLWJvdW5jZS1kb3duIHtcbiAgZnJvbSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZVkoMC41KSB0cmFuc2xhdGVZKC0zMCUpO1xuICB9XG4gIHRvIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlWSgxKSB0cmFuc2xhdGVZKDApO1xuICB9XG59XG4vKiBSb3RhdGUgQW5pbWF0aW9uICovXG4vKipcbiAqIEBhbmltYXRpb24gcm90YXRlIGZ1bGxcbiAqIFJvdGF0ZXMgYW4gZWxlbWVudCAzNjAgZGVncmVlcy5cbiAqIFVzZSB0aGlzIGZvciBsb2FkaW5nIHNwaW5uZXJzIG9yIGRlY29yYXRpdmUgZWZmZWN0cy5cbiAqL1xuQGtleWZyYW1lcyByb3RhdGUtZnVsbCB7XG4gIGZyb20ge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICB9XG4gIHRvIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICB9XG59XG4vKipcbiAqIEBhbmltYXRpb24gcm90YXRlIGhhbGZcbiAqIFJvdGF0ZXMgYW4gZWxlbWVudCAxODAgZGVncmVlcy5cbiAqIFVzZSB0aGlzIGZvciBsb2FkaW5nIHNwaW5uZXJzIG9yIGRlY29yYXRpdmUgZWZmZWN0cy5cbiAqL1xuQGtleWZyYW1lcyByb3RhdGUtMTgwIHtcbiAgZnJvbSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gIH1cbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gIH1cbn1cbi8qKlxuICogQGFuaW1hdGlvbiByb3RhdGUgOTBcbiAqIFJvdGF0ZXMgYW4gZWxlbWVudCA5MCBkZWdyZWVzLlxuICogVXNlIHRoaXMgZm9yIGxvYWRpbmcgc3Bpbm5lcnMgb3IgZGVjb3JhdGl2ZSBlZmZlY3RzLlxuICovXG5Aa2V5ZnJhbWVzIHJvdGF0ZS05MCB7XG4gIGZyb20ge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICB9XG4gIHRvIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gIH1cbn1cbi8qKlxuICogS2V5ZnJhbWUgYW5pbWF0aW9uOiBmdWxsIDM2MMKwIGNsb2Nrd2lzZSByb3RhdGlvbi5cbiAqIENvbW1vbmx5IGFwcGxpZWQgdG8gaWNvbnMgb3IgbG9hZGVycyB0byBpbmRpY2F0ZSBwcm9ncmVzcyBvciBhY3Rpdml0eS5cbiAqL1xuQGtleWZyYW1lcyBzcGluIHtcbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gIH1cbn1cbi8qKlxuICogQGFuaW1hdGlvbiBzaGFrZSBYXG4gKiBTaW1wbGUgc2hha2UgYW5pbWF0aW9uIGZvciBlcnJvcnNcbiAqL1xuQGtleWZyYW1lcyBzaGFrZS14IHtcbiAgMCUsIDEwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB9XG4gIDIwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoLTEgKiB2YXIoLS1zcGFjaW5nLTA1MCkpKTtcbiAgfVxuICAzMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgfVxuICA0MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCh2YXIoLS1zcGFjaW5nLTA1MCkpO1xuICB9XG4gIDUwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB9XG4gIDYwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoLTEgKiB2YXIoLS1zcGFjaW5nLTA1MCkpKTtcbiAgfVxuICA3MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgfVxuICA4MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCh2YXIoLS1zcGFjaW5nLTA1MCkpO1xuICB9XG4gIDkwJSwgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB9XG59XG4vKipcbiAqIEBhbmltYXRpb24gc2hha2UgWVxuICogU2ltcGxlIHNoYWtlIGFuaW1hdGlvbiBmb3IgZXJyb3JzXG4gKi9cbkBrZXlmcmFtZXMgc2hha2UteSB7XG4gIDAlLCAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIH1cbiAgMjUlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUlKTtcbiAgfVxuICA1MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg1JSk7XG4gIH1cbiAgNzUlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUlKTtcbiAgfVxufVxuLyoqXG4gKiBDU1MgUmVzZXRcbiAqIEdyb3VwOiBHZW5lcmljXG4gKi9cbi8qIGh0dHBzOi8vcGljY2FsaWwubGkvYmxvZy9hLW1vcmUtbW9kZXJuLWNzcy1yZXNldC9cbiAgIEJ5IEFuZHkgQmVsbFxuICAgTGljZW5zZTogTUlUIExpY2Vuc2VcbiovXG4vKiBCb3ggc2l6aW5nIHJ1bGVzICovXG4qLFxuKjo6YmVmb3JlLFxuKjo6YWZ0ZXIge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4vKiBSZW1vdmUgZGVmYXVsdCBtYXJnaW4gKi9cbmJvZHksXG5oMSxcbmgyLFxuaDMsXG5oNCxcbnAsXG5maWd1cmUsXG5ibG9ja3F1b3RlLFxuZGwsXG5kZCB7XG4gIG1hcmdpbjogMDtcbn1cblxuLyogUmVtb3ZlIGxpc3Qgc3R5bGVzIG9uIHVsLCBvbCBlbGVtZW50cyB3aXRoIGEgbGlzdCByb2xlLCB3aGljaCBzdWdnZXN0cyBkZWZhdWx0IHN0eWxpbmcgd2lsbCBiZSByZW1vdmVkICovXG51bFtyb2xlPWxpc3RdLFxub2xbcm9sZT1saXN0XSB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cbmh0bWwgYm9keSAqOmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTtcbn1cblxuaHRtbCBib2R5ICo6Zm9jdXMtdmlzaWJsZSB7XG4gIG91dGxpbmU6IDNweCBzb2xpZCB2YXIoLS1jb2xvci1mb2N1cy1zdHJva2UpO1xuICBvdXRsaW5lLW9mZnNldDogMnB4O1xufVxuXG4vKiBTZXQgY29yZSByb290IGRlZmF1bHRzICovXG5odG1sOmZvY3VzLXdpdGhpbiB7XG4gIHNjcm9sbC1iZWhhdmlvcjogc21vb3RoO1xufVxuXG4vKiBTZXQgY29yZSBib2R5IGRlZmF1bHRzICovXG5ib2R5IHtcbiAgbWluLWhlaWdodDogMTAwZHZoO1xuICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVzcGVlZDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbn1cblxuLyogQSBlbGVtZW50cyB0aGF0IGRvbid0IGhhdmUgYSBjbGFzcyBnZXQgZGVmYXVsdCBzdHlsZXMgKi9cbmE6bm90KFtjbGFzc10pIHtcbiAgdGV4dC1kZWNvcmF0aW9uLXNraXAtaW5rOiBhdXRvO1xufVxuXG4vKiBNYWtlIGltYWdlcyBlYXNpZXIgdG8gd29yayB3aXRoICovXG5pbWcsXG5waWN0dXJlIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLyogSW5oZXJpdCBmb250cyBmb3IgaW5wdXRzIGFuZCBidXR0b25zICovXG5pbnB1dCxcbmJ1dHRvbixcbnRleHRhcmVhLFxuc2VsZWN0IHtcbiAgZm9udDogaW5oZXJpdDtcbn1cblxuLyogUmVtb3ZlIGFsbCBhbmltYXRpb25zIGFuZCB0cmFuc2l0aW9ucyBmb3IgcGVvcGxlIHRoYXQgcHJlZmVyIG5vdCB0byBzZWUgdGhlbSAqL1xuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgaHRtbDpmb2N1cy13aXRoaW4ge1xuICAgIHNjcm9sbC1iZWhhdmlvcjogYXV0bztcbiAgfVxuICAqLFxuICAqOjpiZWZvcmUsXG4gICo6OmFmdGVyIHtcbiAgICBhbmltYXRpb24tZHVyYXRpb246IDAuMDFtcyAhaW1wb3J0YW50O1xuICAgIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IDEgIWltcG9ydGFudDtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjAxbXMgIWltcG9ydGFudDtcbiAgICBzY3JvbGwtYmVoYXZpb3I6IGF1dG8gIWltcG9ydGFudDtcbiAgfVxufVxuLyoqXG4gKiBTd2lwZXIgUGFnaW5hdGlvblxuICogR3JvdXA6IEdlbmVyaWNcbiAqL1xuLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUge1xuICB3aWR0aDogY2FsYygzICogdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LXdpZHRoKSk7XG59XG4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLyoqXG4gKiBNYWluIEVsZW1lbnRzIEZpbGVcbiAqIEdyb3VwOiBFbGVtZW50c1xuICovXG4vKipcbiAqIEdlbmVyaWNcbiAqIEdyb3VwOiBFbGVtZW50c1xuICovXG4vKipcbiAqIE1vcmUgc2Vuc2libGUgZGVmYXVsdCBib3gtc2l6aW5nOlxuICogY3NzLXRyaWNrcy5jb20vaW5oZXJpdGluZy1ib3gtc2l6aW5nLXByb2JhYmx5LXNsaWdodGx5LWJldHRlci1iZXN0LXByYWN0aWNlXG4gKi9cbmh0bWwge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94ICFpbXBvcnRhbnQ7XG4gIHNjcm9sbC1iZWhhdmlvcjogc21vb3RoO1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdy14OiBoaWRkZW4gIWltcG9ydGFudDtcbn1cblxuKiB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3ggIWltcG9ydGFudDtcbiAgZm9udC12YXJpYW50LWxpZ2F0dXJlczogbm8tY29tbW9uLWxpZ2F0dXJlcyAhaW1wb3J0YW50O1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7IC8qIGZvciByZW1vdmluZyB0aGUgaGlnaGxpZ2h0ICovXG59XG4qLCAqOjpiZWZvcmUsICo6OmFmdGVyIHtcbiAgYm94LXNpemluZzogaW5oZXJpdDtcbn1cblxuLyoqXG4gKiBCb2R5XG4gKiBHcm91cDogRWxlbWVudHNcbiAqL1xuYm9keSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLW5ldXRyYWwtMDAwKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQpO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1wcmltYXJ5KTtcbiAgZm9udC1zaXplOiAxMDAlO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LWxpbmUtaGVpZ2h0KTtcbiAgbWluLWhlaWdodDogMTAwZHZoO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDU3NS45OHB4KSB7XG4gIGJvZHkge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBvdmVyZmxvdy14OiBoaWRkZW47XG4gIH1cbn1cbmJvZHkuaXMtaGlkZGVuLCBib2R5LmlzLWJsb2NrZWQsIGJvZHkuaXMtbW9iaWxlLW1lbnUtb3BlbiB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi8qKlxuICogQnV0dG9uXG4gKiBHcm91cDogRWxlbWVudHNcbiAqL1xuYnV0dG9uIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbmJ1dHRvbjpub3QoW2NsYXNzXSkge1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtbSk7XG4gIGJvcmRlci13aWR0aDogdmFyKC0tYnV0dG9uLWJvcmRlci13aWR0aCk7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1mb250LXNpemUpO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtc3RyZXRjaDogbm9ybWFsO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1sZWFkaW5nLW5vbmUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tdHJhY2tpbmctbm9ybWFsKTtcbiAgcGFkZGluZy1ibG9jazogdmFyKC0tc3BhY2luZy0wNzUpO1xuICBwYWRkaW5nLWlubGluZTogdmFyKC0tc3BhY2luZy0xMDApO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLW9yYW5nZSk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtb3JhbmdlKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWRhcmstZ3JheSk7XG59XG5idXR0b246bm90KFtjbGFzc10pOmhvdmVyLCBidXR0b246bm90KFtjbGFzc10pOmFjdGl2ZSwgYnV0dG9uOm5vdChbY2xhc3NdKTpmb2N1cyB7XG4gIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0LCB0cmFuc2Zvcm0gdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQsIG9wYWNpdHkgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQ7XG59XG5idXR0b246bm90KFtjbGFzc10pOmhvdmVyOmFjdGl2ZSwgYnV0dG9uOm5vdChbY2xhc3NdKTphY3RpdmU6YWN0aXZlLCBidXR0b246bm90KFtjbGFzc10pOmZvY3VzOmFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMC45KTtcbn1cbmJ1dHRvbjpub3QoW2NsYXNzXSk6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1saWdodC1ncmF5KTtcbn1cbmJ1dHRvbjpub3QoW2NsYXNzXSk6Zm9jdXMge1xuICBvdXRsaW5lLWNvbG9yOiB2YXIoLS1jb2xvci1mb2N1cy1zdHJva2UpO1xufVxuYnV0dG9uW2Rpc2FibGVkXSB7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIG9wYWNpdHk6IDAuNjtcbn1cbi5idXR0b24tdmFyaWF0aW9uLS1wcmltYXJ5LW91dGxpbmUgYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtbGlnaHRlci1ncmF5KTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1vcmFuZ2UpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtb3JhbmdlKTtcbn1cbi5idXR0b24tdmFyaWF0aW9uLS1wcmltYXJ5LW91dGxpbmUgYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtb3JhbmdlKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0KTtcbn1cbi5idXR0b24tdmFyaWF0aW9uLS1wcmltYXJ5LW91dGxpbmUgYnV0dG9uOmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1mb2N1cy1zdHJva2UpO1xufVxuLmJ1dHRvbi12YXJpYXRpb24tLXNlY29uZGFyeS1vdXRsaW5lIGJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWxpZ2h0ZXItZ3JheSk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcbn1cbi5idXR0b24tdmFyaWF0aW9uLS1zZWNvbmRhcnktb3V0bGluZSBidXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0KTtcbn1cbi5idXR0b24tdmFyaWF0aW9uLS1zZWNvbmRhcnktb3V0bGluZSBidXR0b246Zm9jdXMge1xuICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWZvY3VzLXN0cm9rZSk7XG59XG4uYnV0dG9uLWljb24tLXN2ZyB7XG4gIHdpZHRoOiB2YXIoLS1pY29uLXhzKTtcbiAgaGVpZ2h0OiB2YXIoLS1pY29uLXhzKTtcbiAgbWFyZ2luLWxlZnQ6IHZhcigtLXNwYWNpbmctMDUwKTtcbn1cblxuLmJ1dHRvbi1sb2FkLW1vcmUge1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtbSk7XG4gIGJvcmRlci13aWR0aDogdmFyKC0tYnV0dG9uLWJvcmRlci13aWR0aCk7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1mb250LXNpemUpO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtc3RyZXRjaDogbm9ybWFsO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1sZWFkaW5nLW5vbmUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tdHJhY2tpbmctbm9ybWFsKTtcbiAgcGFkZGluZy1ibG9jazogdmFyKC0tc3BhY2luZy0wNzUpO1xuICBwYWRkaW5nLWlubGluZTogdmFyKC0tc3BhY2luZy0xMDApO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtc2VtaWJvbGQpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tdHJhY2tpbmctbm9ybWFsKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxlYWRpbmctbm9uZSk7XG4gIHBhZGRpbmctYmxvY2s6IHZhcigtLXNwYWNpbmctMTAwKTtcbiAgcGFkZGluZy1pbmxpbmU6IHZhcigtLXNwYWNpbmctNjAwKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYnRuLXJhZGl1cy1sZyk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLW9yYW5nZSk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtb3JhbmdlKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWRhcmstZ3JheSk7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmctNDAwKTtcbiAgbWFyZ2luLWlubGluZTogYXV0bztcbn1cbi5idXR0b24tbG9hZC1tb3JlOmhvdmVyLCAuYnV0dG9uLWxvYWQtbW9yZTphY3RpdmUsIC5idXR0b24tbG9hZC1tb3JlOmZvY3VzIHtcbiAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQsIHRyYW5zZm9ybSB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dCwgb3BhY2l0eSB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dDtcbn1cbi5idXR0b24tbG9hZC1tb3JlOmhvdmVyOmFjdGl2ZSwgLmJ1dHRvbi1sb2FkLW1vcmU6YWN0aXZlOmFjdGl2ZSwgLmJ1dHRvbi1sb2FkLW1vcmU6Zm9jdXM6YWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjkpO1xufVxuLmJ1dHRvbi1sb2FkLW1vcmU6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1saWdodC1ncmF5KTtcbn1cbi5idXR0b24tbG9hZC1tb3JlOmZvY3VzIHtcbiAgb3V0bGluZS1jb2xvcjogdmFyKC0tY29sb3ItZm9jdXMtc3Ryb2tlKTtcbn1cbi5idXR0b24tbG9hZC1tb3JlOmFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxcHgpO1xufVxuLmJ1dHRvbi1sb2FkLW1vcmUgLnUtaXMtbG9hZGluZyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtbGlnaHRlci1ncmF5KTtcbn1cbi5idXR0b24tbG9hZC1tb3JlIC51LWlzLWxvYWRpbmc6OmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiA1MCU7XG4gIHRvcDogNTAlO1xuICB6LWluZGV4OiAzO1xuICB3aWR0aDogMTJweDtcbiAgaGVpZ2h0OiAxMnB4O1xuICBtYXJnaW46IC0xMHB4IDAgMCAtMTBweDtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBhbmltYXRpb246IHNwaW4gdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbi1zbG93KSBsaW5lYXIgaW5maW5pdGU7XG4gIHRleHQtaW5kZW50OiAwO1xufVxuXG4uYnV0dG9uLXNoYXJlIHtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLW0pO1xuICBib3JkZXItd2lkdGg6IHZhcigtLWJ1dHRvbi1ib3JkZXItd2lkdGgpO1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICBmb250LXNpemU6IHZhcigtLWJvZHktZm9udC1zaXplKTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXN0cmV0Y2g6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGVhZGluZy1ub25lKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLXRyYWNraW5nLW5vcm1hbCk7XG4gIHBhZGRpbmctYmxvY2s6IHZhcigtLXNwYWNpbmctMDc1KTtcbiAgcGFkZGluZy1pbmxpbmU6IHZhcigtLXNwYWNpbmctMTAwKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBmb250LXNpemU6IHZhcigtLWJvZHktbGFyZ2UtZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tdHJhY2tpbmctbm9ybWFsKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxlYWRpbmctbm9uZSk7XG4gIHBhZGRpbmctYmxvY2s6IHZhcigtLXNwYWNpbmctMDc1KTtcbiAgcGFkZGluZy1pbmxpbmU6IHZhcigtLXNwYWNpbmctMTAwKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYnRuLXJhZGl1cy1tZCk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLW9yYW5nZSk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtb3JhbmdlKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWRhcmstZ3JheSk7XG59XG4uYnV0dG9uLXNoYXJlOmhvdmVyLCAuYnV0dG9uLXNoYXJlOmFjdGl2ZSwgLmJ1dHRvbi1zaGFyZTpmb2N1cyB7XG4gIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0LCB0cmFuc2Zvcm0gdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQsIG9wYWNpdHkgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQ7XG59XG4uYnV0dG9uLXNoYXJlOmhvdmVyOmFjdGl2ZSwgLmJ1dHRvbi1zaGFyZTphY3RpdmU6YWN0aXZlLCAuYnV0dG9uLXNoYXJlOmZvY3VzOmFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMC45KTtcbn1cbi5idXR0b24tc2hhcmU6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1saWdodC1ncmF5KTtcbn1cbi5idXR0b24tc2hhcmU6Zm9jdXMge1xuICBvdXRsaW5lLWNvbG9yOiB2YXIoLS1jb2xvci1mb2N1cy1zdHJva2UpO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5idXR0b24tc2hhcmUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLmJ1dHRvbi1lZGl0LWl0ZW0ge1xuICBtYXgtaGVpZ2h0OiB2YXIoLS1pY29uLW14cyk7XG4gIHdpZHRoOiB2YXIoLS1pY29uLW14cyk7XG4gIGhlaWdodDogYXV0bztcbiAgY29sb3I6IGluaGVyaXQ7XG59XG4uYnV0dG9uLWVkaXQtaXRlbV9fbGluayB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ncmF5KTtcbn1cbi5idXR0b24tZWRpdC1pdGVtX19saW5rOmhvdmVyLCAuYnV0dG9uLWVkaXQtaXRlbV9fbGluazpmb2N1cyB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcbn1cbi5idXR0b24tZWRpdC1pdGVtLS13cmFwcGVyIHtcbiAgbWFyZ2luLWJsb2NrOiB2YXIoLS1zcGFjaW5nLTA1MCkgMDtcbn1cbi5idXR0b24tZWRpdC1pdGVtLS13cmFwcGVyLWFicyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAwO1xuICByaWdodDogMDtcbiAgbWFyZ2luOiB2YXIoLS1zcGFjaW5nLTAyNSk7XG59XG5cbi5iYWNrLXRvLXRvcCB7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1tKTtcbiAgYm9yZGVyLXdpZHRoOiB2YXIoLS1idXR0b24tYm9yZGVyLXdpZHRoKTtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LWZvbnQtc2l6ZSk7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC1zdHJldGNoOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxlYWRpbmctbm9uZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS10cmFja2luZy1ub3JtYWwpO1xuICBwYWRkaW5nLWJsb2NrOiB2YXIoLS1zcGFjaW5nLTA3NSk7XG4gIHBhZGRpbmctaW5saW5lOiB2YXIoLS1zcGFjaW5nLTEwMCk7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LXNtYWxsLWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ib2xkKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLXRyYWNraW5nLW5vcm1hbCk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1sZWFkaW5nLXRpZ2h0KTtcbiAgcGFkZGluZy1ibG9jazogdmFyKC0tc3BhY2luZy0wMjUpO1xuICBwYWRkaW5nLWlubGluZTogdmFyKC0tc3BhY2luZy0wNzUpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1idG4tcmFkaXVzLWZ1bGwpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1vcmFuZ2UpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLW9yYW5nZSk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1kYXJrLWdyYXkpO1xuICBib3gtc2hhZG93OiB2YXIoLS1ib3gtc2hhZG93LWxpZ2h0LTAzKTtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBib3R0b206IHZhcigtLXNwYWNpbmctMTAwKTtcbiAgcmlnaHQ6IHZhcigtLXNwYWNpbmctODAwKTtcbiAgcGFkZGluZy1ibG9jazogdmFyKC0tc3BhY2luZy0wNzUpO1xuICBwYWRkaW5nLWlubGluZTogdmFyKC0tc3BhY2luZy0xMDApO1xuICBhc3BlY3QtcmF0aW86IDE7XG4gIHBsYWNlLXNlbGY6IGVuZDtcbiAgei1pbmRleDogMTAwMDtcbiAgb3BhY2l0eTogMDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAlKTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dCwgdHJhbnNmb3JtIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0O1xufVxuLmJhY2stdG8tdG9wOmhvdmVyLCAuYmFjay10by10b3A6YWN0aXZlLCAuYmFjay10by10b3A6Zm9jdXMge1xuICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dCwgdHJhbnNmb3JtIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0LCBvcGFjaXR5IHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0O1xufVxuLmJhY2stdG8tdG9wOmhvdmVyOmFjdGl2ZSwgLmJhY2stdG8tdG9wOmFjdGl2ZTphY3RpdmUsIC5iYWNrLXRvLXRvcDpmb2N1czphY3RpdmUge1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuOSk7XG59XG4uYmFjay10by10b3A6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1saWdodC1ncmF5KTtcbn1cbi5iYWNrLXRvLXRvcDpmb2N1cyB7XG4gIG91dGxpbmUtY29sb3I6IHZhcigtLWNvbG9yLWZvY3VzLXN0cm9rZSk7XG59XG4uYmFjay10by10b3BfX2ljb24ge1xuICB3aWR0aDogdmFyKC0taWNvbi14cyk7XG4gIGhlaWdodDogdmFyKC0taWNvbi14cyk7XG59XG4uYmFjay10by10b3AuaXMtdmlzaWJsZSB7XG4gIG9wYWNpdHk6IDE7XG4gIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG59XG5cbi8qKlxuICogRmlsdGVyXG4gKiBHcm91cDogRWxlbWVudHNcbiAqL1xuLmZpbHRlciB7XG4gIHdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1saWdodC1ncmF5KTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXhzKTtcbiAgYm9yZGVyOiBub25lO1xuICBmb250LXNpemU6IHZhcigtLWJvZHktZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tYm9keS1saW5lLWhlaWdodCk7XG4gIHRleHQtaW5kZW50OiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1zZWFyY2gtZ3JheSk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtbCk7XG4gIGhlaWdodDogdmFyKC0tc3BhY2luZy0zMDApO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcGFkZGluZzogdmFyKC0tc3BhY2luZy0xMDApIHZhcigtLXNwYWNpbmctMTUwKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xuICBmb250LXNpemU6IHZhcigtLWJvZHktZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWJvZHktbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tYm9keS1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbn1cbi5maWx0ZXI6aG92ZXIsIC5maWx0ZXI6YWN0aXZlLCAuZmlsdGVyOmZvY3VzIHtcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dDtcbn1cbi5maWx0ZXI6aG92ZXIge1xuICBib3gtc2hhZG93OiB2YXIoLS1ib3gtc2hhZG93LWxpZ2h0LTAzKTtcbn1cbi5maWx0ZXIgaW5wdXQge1xuICB3aWR0aDogMTAwJTtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tYm9keS1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xufVxuLmZpbHRlciBpbnB1dDo6cGxhY2Vob2xkZXIge1xuICBmb250LXNpemU6IHZhcigtLWJvZHktZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWJvZHktbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tYm9keS1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xufVxuLmZpbHRlciBpbnB1dDo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tYm9keS1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG59XG4uZmlsdGVyIGlucHV0OjotbW96LXBsYWNlaG9sZGVyIHtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1ib2R5LWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWJvZHktbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcbiAgb3BhY2l0eTogMTtcbn1cbi5maWx0ZXIgaW5wdXQ6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1ib2R5LWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWJvZHktbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZmlsdGVyIHtcbiAgICBtYXgtd2lkdGg6IHZhcigtLW1heC13aWR0aC0tNXhzKTtcbiAgfVxufVxuLmZpbHRlci1pbnB1dC10ZXh0IHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xufVxuLmZpbHRlci1kYXRlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLWJsb2NrOiB2YXIoLS1zcGFjaW5nLTA1MCk7XG59XG4uZmlsdGVyLWRhdGVfX3BsYWNlaG9sZGVyIHtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy14cyk7XG4gIGJvcmRlcjogbm9uZTtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWJvZHktbGluZS1oZWlnaHQpO1xuICB0ZXh0LWluZGVudDogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtc2VhcmNoLWdyYXkpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLWwpO1xuICBoZWlnaHQ6IHZhcigtLXNwYWNpbmctMzAwKTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiByb3cgbm93cmFwO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLTEwMCkgdmFyKC0tc3BhY2luZy0xNTApO1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgaW5zZXQ6IDA7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dCwgb3BhY2l0eSB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG4uZmlsdGVyLWRhdGVfX3BsYWNlaG9sZGVyOmhvdmVyLCAuZmlsdGVyLWRhdGVfX3BsYWNlaG9sZGVyOmFjdGl2ZSwgLmZpbHRlci1kYXRlX19wbGFjZWhvbGRlcjpmb2N1cyB7XG4gIHRyYW5zaXRpb246IGJveC1zaGFkb3cgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQ7XG59XG4uZmlsdGVyLWRhdGVfX3BsYWNlaG9sZGVyOmhvdmVyIHtcbiAgYm94LXNoYWRvdzogdmFyKC0tYm94LXNoYWRvdy1saWdodC0wMyk7XG59XG4uZmlsdGVyLWRhdGVfX3BsYWNlaG9sZGVyIGlucHV0IHtcbiAgaGVpZ2h0OiB2YXIoLS1pbnB1dC1oZWlnaHQtbWVkaXVtKTtcbiAgd2lkdGg6IDEwMCU7XG4gIGNvbG9yOiBpbmhlcml0O1xuICBmb250LXNpemU6IHZhcigtLWJvZHktZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWJvZHktbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tYm9keS1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbn1cbi5maWx0ZXItZGF0ZV9fcGxhY2Vob2xkZXIgaW5wdXQ6OnBsYWNlaG9sZGVyIHtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1ib2R5LWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWJvZHktbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcbn1cbi5maWx0ZXItZGF0ZV9fcGxhY2Vob2xkZXIgaW5wdXQ6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuICBmb250LXNpemU6IHZhcigtLWJvZHktZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWJvZHktbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tYm9keS1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xufVxuLmZpbHRlci1kYXRlX19wbGFjZWhvbGRlciBpbnB1dDo6LW1vei1wbGFjZWhvbGRlciB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tYm9keS1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG4gIG9wYWNpdHk6IDE7XG59XG4uZmlsdGVyLWRhdGVfX3BsYWNlaG9sZGVyIGlucHV0Oi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tYm9keS1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG59XG4uZmlsdGVyLWRhdGU6aG92ZXIgLmZpbHRlci1kYXRlX19wbGFjZWhvbGRlciwgLmZpbHRlci1kYXRlOmZvY3VzLXdpdGhpbiAuZmlsdGVyLWRhdGVfX3BsYWNlaG9sZGVyLCAuZmlsdGVyLWRhdGUuaXMtZmlsbGVkIC5maWx0ZXItZGF0ZV9fcGxhY2Vob2xkZXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xuICBvcGFjaXR5OiAwO1xufVxuLmZpbHRlci1idXR0b25zLWFzLXJhZGlvIHtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy14cyk7XG4gIGJvcmRlcjogbm9uZTtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWJvZHktbGluZS1oZWlnaHQpO1xuICB0ZXh0LWluZGVudDogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtc2VhcmNoLWdyYXkpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLWwpO1xuICBoZWlnaHQ6IHZhcigtLXNwYWNpbmctMzAwKTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiByb3cgbm93cmFwO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctMTAwKSB2YXIoLS1zcGFjaW5nLTE1MCk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1ib2R5LWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWJvZHktbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgbWF4LXdpZHRoOiB2YXIoLS1tYXgtd2lkdGgtLXNtKTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbiAgcGFkZGluZzogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbi5maWx0ZXItYnV0dG9ucy1hcy1yYWRpbzpob3ZlciwgLmZpbHRlci1idXR0b25zLWFzLXJhZGlvOmFjdGl2ZSwgLmZpbHRlci1idXR0b25zLWFzLXJhZGlvOmZvY3VzIHtcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dDtcbn1cbi5maWx0ZXItYnV0dG9ucy1hcy1yYWRpbzpob3ZlciB7XG4gIGJveC1zaGFkb3c6IHZhcigtLWJveC1zaGFkb3ctbGlnaHQtMDMpO1xufVxuLmZpbHRlci1idXR0b25zLWFzLXJhZGlvIGlucHV0IHtcbiAgd2lkdGg6IDEwMCU7XG4gIGNvbG9yOiBpbmhlcml0O1xuICBmb250LXNpemU6IHZhcigtLWJvZHktZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWJvZHktbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tYm9keS1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbn1cbi5maWx0ZXItYnV0dG9ucy1hcy1yYWRpbyBpbnB1dDo6cGxhY2Vob2xkZXIge1xuICBmb250LXNpemU6IHZhcigtLWJvZHktZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWJvZHktbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tYm9keS1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xufVxuLmZpbHRlci1idXR0b25zLWFzLXJhZGlvIGlucHV0Ojotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1ib2R5LWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWJvZHktbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcbn1cbi5maWx0ZXItYnV0dG9ucy1hcy1yYWRpbyBpbnB1dDo6LW1vei1wbGFjZWhvbGRlciB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tYm9keS1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG4gIG9wYWNpdHk6IDE7XG59XG4uZmlsdGVyLWJ1dHRvbnMtYXMtcmFkaW8gaW5wdXQ6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1ib2R5LWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWJvZHktbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZmlsdGVyLWJ1dHRvbnMtYXMtcmFkaW8ge1xuICAgIGZsZXgtZmxvdzogcm93IG5vd3JhcDtcbiAgICB3aWR0aDogZml0LWNvbnRlbnQ7XG4gIH1cbn1cbi5maWx0ZXItYnV0dG9ucy1hcy1yYWRpb19faXRlbSB7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1tKTtcbiAgYm9yZGVyLXdpZHRoOiB2YXIoLS1idXR0b24tYm9yZGVyLXdpZHRoKTtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LWZvbnQtc2l6ZSk7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC1zdHJldGNoOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxlYWRpbmctbm9uZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS10cmFja2luZy1ub3JtYWwpO1xuICBwYWRkaW5nLWJsb2NrOiB2YXIoLS1zcGFjaW5nLTA3NSk7XG4gIHBhZGRpbmctaW5saW5lOiB2YXIoLS1zcGFjaW5nLTEwMCk7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1ib2R5LWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWJvZHktbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIGhlaWdodDogdmFyKC0tc3BhY2luZy0zMDApO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLWwpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1zZWFyY2gtZ3JheSk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctMDUwKTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgaGVpZ2h0OiB2YXIoLS1zcGFjaW5nLTMwMCk7XG59XG4uZmlsdGVyLWJ1dHRvbnMtYXMtcmFkaW9fX2l0ZW06aG92ZXIsIC5maWx0ZXItYnV0dG9ucy1hcy1yYWRpb19faXRlbTphY3RpdmUsIC5maWx0ZXItYnV0dG9ucy1hcy1yYWRpb19faXRlbTpmb2N1cyB7XG4gIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0LCB0cmFuc2Zvcm0gdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQsIG9wYWNpdHkgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQ7XG59XG4uZmlsdGVyLWJ1dHRvbnMtYXMtcmFkaW9fX2l0ZW06aG92ZXI6YWN0aXZlLCAuZmlsdGVyLWJ1dHRvbnMtYXMtcmFkaW9fX2l0ZW06YWN0aXZlOmFjdGl2ZSwgLmZpbHRlci1idXR0b25zLWFzLXJhZGlvX19pdGVtOmZvY3VzOmFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMC45KTtcbn1cbi5maWx0ZXItYnV0dG9ucy1hcy1yYWRpb19faXRlbVthcmlhLXByZXNzZWQ9dHJ1ZV0ge1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtb3JhbmdlKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXNlbWlib2xkKTtcbn1cbi5maWx0ZXItYnV0dG9ucy1hcy1yYWRpb19faXRlbTpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItZm9jdXMtc3Ryb2tlKTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZmlsdGVyLWJ1dHRvbnMtYXMtcmFkaW9fX2l0ZW0ge1xuICAgIHdpZHRoOiB2YXIoLS1tYXgtd2lkdGgtLTV4cyk7XG4gIH1cbn1cbi5maWx0ZXItYnV0dG9ucy1hcy1yYWRpb19faXRlbTpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1icmFuZC1vcmFuZ2UpO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5maWx0ZXItYnV0dG9ucy1hcy1yYWRpb19faXRlbTpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJyYW5kLW9yYW5nZSk7XG4gIH1cbn1cbi5maWx0ZXItZHJvcGRvd24ge1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgcGFkZGluZzogMDtcbn1cbi5maWx0ZXJfX3N1Ym1pdC1idXR0b24ge1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtbSk7XG4gIGJvcmRlci13aWR0aDogdmFyKC0tYnV0dG9uLWJvcmRlci13aWR0aCk7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1mb250LXNpemUpO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtc3RyZXRjaDogbm9ybWFsO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1sZWFkaW5nLW5vbmUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tdHJhY2tpbmctbm9ybWFsKTtcbiAgcGFkZGluZy1ibG9jazogdmFyKC0tc3BhY2luZy0wNzUpO1xuICBwYWRkaW5nLWlubGluZTogdmFyKC0tc3BhY2luZy0xMDApO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tYm9keS1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICBoZWlnaHQ6IHZhcigtLXNwYWNpbmctMzAwKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1sKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtb3JhbmdlKTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1vcmFuZ2UpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtZGFyay1ncmF5KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LW1lZGl1bSk7XG4gIG1heC13aWR0aDogdmFyKC0tbWF4LXdpZHRoLS01eHMpO1xuICB3aWR0aDogMTAwJTtcbn1cbi5maWx0ZXJfX3N1Ym1pdC1idXR0b246aG92ZXIsIC5maWx0ZXJfX3N1Ym1pdC1idXR0b246YWN0aXZlLCAuZmlsdGVyX19zdWJtaXQtYnV0dG9uOmZvY3VzIHtcbiAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQsIHRyYW5zZm9ybSB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dCwgb3BhY2l0eSB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dDtcbn1cbi5maWx0ZXJfX3N1Ym1pdC1idXR0b246aG92ZXI6YWN0aXZlLCAuZmlsdGVyX19zdWJtaXQtYnV0dG9uOmFjdGl2ZTphY3RpdmUsIC5maWx0ZXJfX3N1Ym1pdC1idXR0b246Zm9jdXM6YWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjkpO1xufVxuLmZpbHRlcl9fc3VibWl0LWJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWxpZ2h0LWdyYXkpO1xufVxuLmZpbHRlcl9fc3VibWl0LWJ1dHRvbjpmb2N1cyB7XG4gIG91dGxpbmUtY29sb3I6IHZhcigtLWNvbG9yLWZvY3VzLXN0cm9rZSk7XG59XG4uZmlsdGVyX19yZXNldC1idXR0b24ge1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtbSk7XG4gIGJvcmRlci13aWR0aDogdmFyKC0tYnV0dG9uLWJvcmRlci13aWR0aCk7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1mb250LXNpemUpO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtc3RyZXRjaDogbm9ybWFsO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1sZWFkaW5nLW5vbmUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tdHJhY2tpbmctbm9ybWFsKTtcbiAgcGFkZGluZy1ibG9jazogdmFyKC0tc3BhY2luZy0wNzUpO1xuICBwYWRkaW5nLWlubGluZTogdmFyKC0tc3BhY2luZy0xMDApO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1zbWFsbC1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS10cmFja2luZy1ub3JtYWwpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGVhZGluZy1ub25lKTtcbiAgcGFkZGluZy1ibG9jazogdmFyKC0tc3BhY2luZy0wMjUpO1xuICBwYWRkaW5nLWlubGluZTogdmFyKC0tc3BhY2luZy0wNzUpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1idG4tcmFkaXVzKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1saWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1tZWRpdW0pO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIG1hcmdpbjogdmFyKC0tc3BhY2luZy0xMDApO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuLmZpbHRlcl9fcmVzZXQtYnV0dG9uOmhvdmVyLCAuZmlsdGVyX19yZXNldC1idXR0b246YWN0aXZlLCAuZmlsdGVyX19yZXNldC1idXR0b246Zm9jdXMge1xuICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dCwgdHJhbnNmb3JtIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0LCBvcGFjaXR5IHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0O1xufVxuLmZpbHRlcl9fcmVzZXQtYnV0dG9uOmhvdmVyOmFjdGl2ZSwgLmZpbHRlcl9fcmVzZXQtYnV0dG9uOmFjdGl2ZTphY3RpdmUsIC5maWx0ZXJfX3Jlc2V0LWJ1dHRvbjpmb2N1czphY3RpdmUge1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuOSk7XG59XG4uZmlsdGVyX19yZXNldC1idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1saWdodGVyLWdyYXkpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG59XG4uZmlsdGVyX19yZXNldC1idXR0b246Zm9jdXMge1xuICBvdXRsaW5lLWNvbG9yOiB2YXIoLS1jb2xvci1mb2N1cy1zdHJva2UpO1xufVxuLmZpbHRlcl9fcmVzZXQtYnV0dG9uX190ZXh0IHtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LWV4dHJhLXNtYWxsLWZvbnQtc2l6ZSk7XG4gIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2luZy0wMjUpO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQsIG9wYWNpdHkgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQ7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5maWx0ZXJfX3Jlc2V0LWJ1dHRvbl9fdGV4dCB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cbi5maWx0ZXJfX3Jlc2V0LWJ1dHRvbl9faWNvbiB7XG4gIHdpZHRoOiB2YXIoLS1pY29uLW1zKTtcbiAgaGVpZ2h0OiB2YXIoLS1pY29uLW1zKTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5maWx0ZXJfX3Jlc2V0LWJ1dHRvbjpob3ZlciAuZmlsdGVyX19yZXNldC1idXR0b25fX3RleHQge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG4uZmlsdGVyLWVycm9yIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBhbmltYXRpb246IGJvdW5jZTIgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbi12ZXJ5LXNsb3cpIGVhc2UgaW5maW5pdGU7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1kYXJrLXJlZCk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLXJlZC1zZW1pLXRyYW5zcGFyZW50KTtcbiAgYm94LXNoYWRvdzogMCAwIDAgMnB4IHZhcigtLWNvbG9yLWJyYW5kLWRhcmstcmVkKTtcbn1cbi5maWx0ZXItZXJyb3I6OnBsYWNlaG9sZGVyIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWRhcmstcmVkKTtcbn1cbi5maWx0ZXItZXJyb3I6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtZGFyay1yZWQpO1xufVxuLmZpbHRlci1lcnJvcjo6LW1vei1wbGFjZWhvbGRlciB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1kYXJrLXJlZCk7XG4gIG9wYWNpdHk6IDE7XG59XG4uZmlsdGVyLWVycm9yOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1kYXJrLXJlZCk7XG59XG4uZmlsdGVyLWVycm9yOjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiKlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgbWFyZ2luOiB2YXIoLS1zcGFjaW5nLTAyNSkgdmFyKC0tc3BhY2luZy0wNTApO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWRhcmstcmVkKTtcbn1cblxuLyoqXG4gKiBGb3JtXG4gKiBHcm91cDogRWxlbWVudHNcbiAqL1xuZm9ybVtyb2xlPXNlYXJjaF0ge1xuICBkaXNwbGF5OiBmbGV4O1xufVxuXG4vKipcbiAqIEhlYWRpbmdzXG4gKiBHcm91cDogRWxlbWVudHNcbiAqL1xuaDEsXG5oMixcbmgzLFxuaDQsXG5oNSxcbmg2IHtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtcHJpbWFyeSk7XG59XG5oMSBwLFxuaDEgYSxcbmgxIHNwYW4sXG5oMiBwLFxuaDIgYSxcbmgyIHNwYW4sXG5oMyBwLFxuaDMgYSxcbmgzIHNwYW4sXG5oNCBwLFxuaDQgYSxcbmg0IHNwYW4sXG5oNSBwLFxuaDUgYSxcbmg1IHNwYW4sXG5oNiBwLFxuaDYgYSxcbmg2IHNwYW4ge1xuICBjb2xvcjogaW5oZXJpdDtcbiAgZGlzcGxheTogaW5oZXJpdDtcbiAgZm9udC1zaXplOiBpbmhlcml0O1xuICBmb250LXdlaWdodDogaW5oZXJpdDtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuaDEge1xuICBmb250LXNpemU6IHZhcigtLWgxLWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1oMS1mb250LXdlaWdodCk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1oMS1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1oMS1saW5lLWhlaWdodCk7XG59XG5cbmgyIHtcbiAgZm9udC1zaXplOiB2YXIoLS1oMi1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogdmFyKC0taDItZm9udC13ZWlnaHQpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0taDItbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0taDItbGluZS1oZWlnaHQpO1xufVxuXG5oMyB7XG4gIGZvbnQtc2l6ZTogdmFyKC0taDMtZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWgzLWZvbnQtd2VpZ2h0KTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWgzLWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWgzLWxpbmUtaGVpZ2h0KTtcbn1cblxuaDQge1xuICBmb250LXNpemU6IHZhcigtLWg0LWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1oNC1mb250LXdlaWdodCk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1oNC1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1oNC1saW5lLWhlaWdodCk7XG59XG5cbmg1IHtcbiAgZm9udC1zaXplOiB2YXIoLS1oNS1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogdmFyKC0taDUtZm9udC13ZWlnaHQpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0taDUtbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0taDUtbGluZS1oZWlnaHQpO1xufVxuXG5oNiB7XG4gIGZvbnQtc2l6ZTogdmFyKC0taDYtZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWg2LWZvbnQtd2VpZ2h0KTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWg2LWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWg2LWxpbmUtaGVpZ2h0KTtcbn1cblxuLyoqXG4gKiBIVE1MXG4gKiBHcm91cDogRWxlbWVudHNcbiAqL1xuaHRtbCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbi8qKlxuICogSWNvblxuICogR3JvdXA6IEVsZW1lbnRzXG4gKi9cbi5pY29uLWFydGljbGUtZG93bmxvYWQge1xuICB3aWR0aDogdmFyKC0taWNvbi1tcyk7XG4gIG1heC1oZWlnaHQ6IHZhcigtLWljb24tbXMpO1xuICBoZWlnaHQ6IGF1dG87XG59XG4uaWNvbi1hcnRpY2xlLWRvd25sb2FkLS13cmFwcGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctMTUwKSB2YXIoLS1zcGFjaW5nLTIwMCk7XG4gIGJvcmRlci10b3A6IDJweCBzb2xpZCB2YXIoLS1jb2xvci1icmFuZC1kYXJrLWdyYXkpO1xuICB0ZXh0LWFsaWduOiBlbmQ7XG59XG4uaWNvbi1hcnRpY2xlLWRvd25sb2FkX19saW5rIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogdmFyKC0tc3BhY2luZy0xMDApO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1kYXJrLWdyYXkpO1xufVxuLmljb24tYXJ0aWNsZS1kb3dubG9hZF9fbGluazpob3ZlciB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1vcmFuZ2UpO1xufVxuLmljb24tYXJ0aWNsZS1kb3dubG9hZF9fdGV4dCB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1zbWFsbC1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tYm9keS1zbWFsbC1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LXNtYWxsLWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LW1lZGl1bSk7XG59XG5cbi8qKlxuICogSW1hZ2VcbiAqIEdyb3VwOiBFbGVtZW50c1xuICovXG5pbWcge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBmbGV4LXNocmluazogMTtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4vKipcbiAqIElucHV0XG4gKiBHcm91cDogRWxlbWVudHNcbiAqL1xuaW5wdXQ6bm90KFt0eXBlPWNoZWNrYm94XSwgW3R5cGU9cmFkaW9dKSB7XG4gIGJvcmRlcjogbm9uZTtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbn1cbmlucHV0W3R5cGU9YnV0dG9uXSwgaW5wdXRbdHlwZT1zdWJtaXRdIHtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLW0pO1xuICBib3JkZXItd2lkdGg6IHZhcigtLWJ1dHRvbi1ib3JkZXItd2lkdGgpO1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICBmb250LXNpemU6IHZhcigtLWJvZHktZm9udC1zaXplKTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXN0cmV0Y2g6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGVhZGluZy1ub25lKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLXRyYWNraW5nLW5vcm1hbCk7XG4gIHBhZGRpbmctYmxvY2s6IHZhcigtLXNwYWNpbmctMDc1KTtcbiAgcGFkZGluZy1pbmxpbmU6IHZhcigtLXNwYWNpbmctMTAwKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1vcmFuZ2UpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLW9yYW5nZSk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1kYXJrLWdyYXkpO1xuICBmb250LXNpemU6IHZhcigtLWJvZHktbGFyZ2UtZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tdHJhY2tpbmctbm9ybWFsKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxlYWRpbmctbm9uZSk7XG4gIHBhZGRpbmctYmxvY2s6IHZhcigtLXNwYWNpbmctMDc1KTtcbiAgcGFkZGluZy1pbmxpbmU6IHZhcigtLXNwYWNpbmctMTAwKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYnRuLXJhZGl1cy1tZCk7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbmlucHV0W3R5cGU9YnV0dG9uXTpob3ZlciwgaW5wdXRbdHlwZT1idXR0b25dOmFjdGl2ZSwgaW5wdXRbdHlwZT1idXR0b25dOmZvY3VzLCBpbnB1dFt0eXBlPXN1Ym1pdF06aG92ZXIsIGlucHV0W3R5cGU9c3VibWl0XTphY3RpdmUsIGlucHV0W3R5cGU9c3VibWl0XTpmb2N1cyB7XG4gIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0LCB0cmFuc2Zvcm0gdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQsIG9wYWNpdHkgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQ7XG59XG5pbnB1dFt0eXBlPWJ1dHRvbl06aG92ZXI6YWN0aXZlLCBpbnB1dFt0eXBlPWJ1dHRvbl06YWN0aXZlOmFjdGl2ZSwgaW5wdXRbdHlwZT1idXR0b25dOmZvY3VzOmFjdGl2ZSwgaW5wdXRbdHlwZT1zdWJtaXRdOmhvdmVyOmFjdGl2ZSwgaW5wdXRbdHlwZT1zdWJtaXRdOmFjdGl2ZTphY3RpdmUsIGlucHV0W3R5cGU9c3VibWl0XTpmb2N1czphY3RpdmUge1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuOSk7XG59XG5pbnB1dFt0eXBlPWJ1dHRvbl06aG92ZXIsIGlucHV0W3R5cGU9c3VibWl0XTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWxpZ2h0LWdyYXkpO1xufVxuaW5wdXRbdHlwZT1idXR0b25dOmZvY3VzLCBpbnB1dFt0eXBlPXN1Ym1pdF06Zm9jdXMge1xuICBvdXRsaW5lLWNvbG9yOiB2YXIoLS1jb2xvci1mb2N1cy1zdHJva2UpO1xufVxuaW5wdXRbdHlwZT1jaGVja2JveF0ge1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLTN4cyk7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgaGVpZ2h0OiB2YXIoLS1jaGVja2JveC1zaXplKTtcbiAgb3V0bGluZTogbm9uZTtcbiAgd2lkdGg6IHZhcigtLWNoZWNrYm94LXNpemUpO1xufVxuaW5wdXRbdHlwZT1yYWRpb10ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGhlaWdodDogdmFyKC0tY2hlY2tib3gtc2l6ZSk7XG4gIHdpZHRoOiB2YXIoLS1jaGVja2JveC1zaXplKTtcbn1cbmlucHV0Om5vdChbdHlwZT1zdWJtaXRdLCBbdHlwZT1idXR0b25dLCBbdHlwZT1jaGVja2JveF0sIFt0eXBlPXJhZGlvXSkge1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXhzKTtcbiAgYm9yZGVyOiBub25lO1xuICBmb250LXNpemU6IHZhcigtLWJvZHktZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tYm9keS1saW5lLWhlaWdodCk7XG4gIHRleHQtaW5kZW50OiAwO1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgb3V0bGluZTogbm9uZTtcbn1cbmlucHV0Om5vdChbdHlwZT1zdWJtaXRdLCBbdHlwZT1idXR0b25dLCBbdHlwZT1jaGVja2JveF0sIFt0eXBlPXJhZGlvXSk6aG92ZXIsIGlucHV0Om5vdChbdHlwZT1zdWJtaXRdLCBbdHlwZT1idXR0b25dLCBbdHlwZT1jaGVja2JveF0sIFt0eXBlPXJhZGlvXSk6YWN0aXZlLCBpbnB1dDpub3QoW3R5cGU9c3VibWl0XSwgW3R5cGU9YnV0dG9uXSwgW3R5cGU9Y2hlY2tib3hdLCBbdHlwZT1yYWRpb10pOmZvY3VzIHtcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dDtcbn1cblxuLyoqXG4gKiBMYW5ndWFnZSBTZWxlY3RvclxuICogR3JvdXA6IEVsZW1lbnRzXG4gKi9cbi5sYW5ndWFnZS1zZWxlY3RvciB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1tZWRpdW0tZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWJvZHktbWVkaXVtLWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWJvZHktbWVkaXVtLWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXNlbWlib2xkKTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgbWFyZ2luLWxlZnQ6IHZhcigtLXNwYWNpbmctMTUwKTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmxhbmd1YWdlLXNlbGVjdG9yIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKC0tc3BhY2luZy0xNTApO1xuICB9XG59XG5cbi8qKlxuICogTGluayAvIEFuY2hvclxuICogR3JvdXA6IEVsZW1lbnRzXG4gKi9cbmEge1xuICBjb2xvcjogaW5oZXJpdDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0ZXh0LWRlY29yYXRpb24tdGhpY2tuZXNzOiAycHg7XG4gIHRleHQtdW5kZXJsaW5lLW9mZnNldDogdmFyKC0tc3BhY2luZy0wMjUpO1xufVxuYVtkaXNhYmxlZF0ge1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICBib3gtc2hhZG93OiBub25lO1xuICBvcGFjaXR5OiAwLjY7XG59XG5cbi8qKlxuICogTGlzdCBJdGVtXG4gKiBHcm91cDogRWxlbWVudHNcbiAqL1xuLmxpc3QtaXRlbSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5saXN0LWl0ZW0tYXJ0aWNsZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IG5vd3JhcDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJyYW5kLWRhcmstZ3JheSk7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctMjAwKTtcbn1cbi5saXN0LWl0ZW0tYXJ0aWNsZTpob3ZlciwgLmxpc3QtaXRlbS1hcnRpY2xlOmZvY3VzLXdpdGhpbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWxpZ2h0LWdyYXkpO1xuICBib3JkZXItYm90dG9tLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1vcmFuZ2UpO1xufVxuLmxpc3QtaXRlbS1hcnRpY2xlX19pbWFnZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xufVxuLmxpc3QtaXRlbS1hcnRpY2xlX19pbWFnZS0td3JhcHBlciB7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICB3aWR0aDogdmFyKC0tc3BhY2luZy0xMjAwKTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBkaXNwbGF5OiBub25lO1xufVxuLmxpc3QtaXRlbS1hcnRpY2xlX19pbWFnZS0td3JhcHBlciBwaWN0dXJlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAubGlzdC1pdGVtLWFydGljbGVfX2ltYWdlLS13cmFwcGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuLmxpc3QtaXRlbS1hcnRpY2xlX19jb250ZW50IHtcbiAgZmxleDogMTtcbiAgcGFkZGluZzogdmFyKC0tc3BhY2luZy0yMDApIHZhcigtLXNwYWNpbmctMTUwKTtcbn1cbi5saXN0LWl0ZW0tYXJ0aWNsZV9fdGl0bGUge1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1wcmltYXJ5KTtcbiAgZm9udC1zaXplOiB2YXIoLS1oMy1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0taDMtbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0taDMtbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1kYXJrLWdyYXkpO1xufVxuLmxpc3QtaXRlbS1hcnRpY2xlX190aXRsZTpob3ZlciwgLmxpc3QtaXRlbS1hcnRpY2xlX190aXRsZTpmb2N1cy13aXRoaW4ge1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG59XG4ubGlzdC1pdGVtLWFydGljbGVfX2RhdGUge1xuICBmb250LXNpemU6IHZhcigtLWJvZHktc21hbGwtZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWJvZHktc21hbGwtbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tYm9keS1zbWFsbC1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1tZWRpdW0pO1xuICBkaXNwbGF5OiBibG9jaztcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLTE1MCk7XG59XG4ubGlzdC1pdGVtLWFydGljbGVfX2Rlc2NyaXB0aW9uIHtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1ib2R5LWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWJvZHktbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmctMTUwKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWdyYXkpO1xufVxuLmxpc3QtaXRlbS1saW5rIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLWJsb2NrOiB2YXIoLS1zcGFjaW5nLTIwMCkgdmFyKC0tc3BhY2luZy0xNTApO1xuICBwYWRkaW5nLWlubGluZTogdmFyKC0tc3BhY2luZy0xNTApO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tY29sb3ItZGFyayk7XG59XG4ubGlzdC1pdGVtLWxpbms6aG92ZXIsIC5saXN0LWl0ZW0tbGluazpmb2N1cy13aXRoaW4ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1saWdodGVyLWdyYXkpO1xuICBib3JkZXItYm90dG9tLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1vcmFuZ2UpO1xufVxuLmxpc3QtaXRlbS1saW5rX190aXRsZSB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LXByaW1hcnkpO1xuICBmb250LXNpemU6IHZhcigtLWgzLWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1oMy1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1oMy1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWRhcmstZ3JheSk7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctMDc1KTtcbiAgd2lkdGg6IDEwMCU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuLmxpc3QtaXRlbS1saW5rX190aXRsZTpob3ZlciwgLmxpc3QtaXRlbS1saW5rX190aXRsZTpmb2N1cyB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcbn1cbi5saXN0LWl0ZW0tbGlua19fdGl0bGUgaDIsXG4ubGlzdC1pdGVtLWxpbmtfX3RpdGxlIGgzLFxuLmxpc3QtaXRlbS1saW5rX190aXRsZSBoNCxcbi5saXN0LWl0ZW0tbGlua19fdGl0bGUgaDUsXG4ubGlzdC1pdGVtLWxpbmtfX3RpdGxlIGg2IHtcbiAgZm9udC1zaXplOiBpbmhlcml0O1xuICBmb250LXdlaWdodDogaW5oZXJpdDtcbiAgbGV0dGVyLXNwYWNpbmc6IGluaGVyaXQ7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xufVxuLmxpc3QtaXRlbS1saW5rX19pbmZvIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiB2YXIoLS1zcGFjaW5nLTA1MCk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ncmF5KTtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy0xMDApO1xufVxuLmxpc3QtaXRlbS1saW5rX19pbmZvLWljb24ge1xuICBtYXgtaGVpZ2h0OiB2YXIoLS1pY29uLW14cyk7XG4gIHdpZHRoOiB2YXIoLS1pY29uLW14cyk7XG4gIGhlaWdodDogYXV0bztcbiAgY29sb3I6IGluaGVyaXQ7XG59XG4ubGlzdC1pdGVtLWxpbmtfX2luZm8tdGV4dCB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tYm9keS1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xufVxuLmxpc3QtaXRlbS1saW5rX19pY29uIHtcbiAgbWF4LWhlaWdodDogdmFyKC0taWNvbi1tcyk7XG4gIHdpZHRoOiB2YXIoLS1pY29uLW1zKTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBjb2xvcjogaW5oZXJpdDtcbn1cbi5saXN0LWl0ZW0tZmFxIHtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1ib2R5LWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWJvZHktbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIHBhZGRpbmctYmxvY2s6IHZhcigtLXNwYWNpbmctMjUwKSB2YXIoLS1zcGFjaW5nLTE1MCk7XG4gIHBhZGRpbmctaW5saW5lOiB2YXIoLS1zcGFjaW5nLTI1MCk7XG4gIGJveC1zaGFkb3c6IHZhcigtLWJveC1zaGFkb3ctYWNjb3JkaW9uKTtcbiAgYm9yZGVyOiAycHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIG1heC13aWR0aDogdmFyKC0tbWF4LXdpZHRoLS1zbSk7XG4gIG1hcmdpbi1pbmxpbmU6IGF1dG87XG4gIG1hcmdpbi1ibG9jazogdmFyKC0tc3BhY2luZy0wNzUpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtZ3JheSk7XG59XG4ubGlzdC1pdGVtLWZhcVtvcGVuXSB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG59XG4ubGlzdC1pdGVtLWZhcVtvcGVuXSA+ICo6bm90KHN1bW1hcnkpIHtcbiAgYW5pbWF0aW9uOiBmYWRlLWluIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4gZm9yd2FyZHM7XG59XG4ubGlzdC1pdGVtLWZhcVtvcGVuXSAubGlzdC1pdGVtLWZhcV9faWNvbiB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1saWdodCk7XG4gIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbn1cbi5saXN0LWl0ZW0tZmFxW29wZW5dIC5saXN0LWl0ZW0tZmFxX19pY29uLS13cmFwcGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG59XG4ubGlzdC1pdGVtLWZhcS0td3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5saXN0LWl0ZW0tZmFxX190aXRsZSB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LXByaW1hcnkpO1xuICBmb250LXNpemU6IHZhcigtLWg0LWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1oNC1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1oNC1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IHZhcigtLXNwYWNpbmctMDUwKTtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWRhcmstZ3JheSk7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy0xMDApO1xufVxuLmxpc3QtaXRlbS1mYXFfX3RpdGxlOjotd2Via2l0LWRldGFpbHMtbWFya2VyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5saXN0LWl0ZW0tZmFxX190aXRsZTpob3ZlciB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcbn1cbi5saXN0LWl0ZW0tZmFxX19pY29uIHtcbiAgbWF4LWhlaWdodDogdmFyKC0taWNvbi14cyk7XG4gIHdpZHRoOiB2YXIoLS1pY29uLXhzKTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dDtcbn1cbi5saXN0LWl0ZW0tZmFxX19pY29uLS13cmFwcGVyIHtcbiAgd2lkdGg6IHZhcigtLXNwYWNpbmctMzAwKTtcbiAgaGVpZ2h0OiB2YXIoLS1zcGFjaW5nLTMwMCk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtZnVsbCk7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICBkaXNwbGF5OiBncmlkO1xuICBwbGFjZS1pdGVtczogY2VudGVyO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0O1xufVxuLmxpc3QtaXRlbS1mYXFfX2ljb24tLXdyYXBwZXI6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcbn1cbi5saXN0LWl0ZW0tZmFxX19pY29uLS13cmFwcGVyOmhvdmVyIC5saXN0LWl0ZW0tZmFxX19pY29uIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0KTtcbn1cbi5saXN0LWl0ZW0tZmFxX19jYXRlZ29yeSB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1zbWFsbC1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tYm9keS1zbWFsbC1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LXNtYWxsLWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtZGFyay1ncmF5KTtcbiAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2luZy0xNTApO1xufVxuLmxpc3QtaXRlbS1yZWd1bGF0aW9uIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiByb3cgbm93cmFwO1xufVxuLmxpc3QtaXRlbS1yZWd1bGF0aW9uOmhvdmVyIC5saXN0LWl0ZW0tcmVndWxhdGlvbl9fY29udGVudCwgLmxpc3QtaXRlbS1yZWd1bGF0aW9uOmZvY3VzLXdpdGhpbiAubGlzdC1pdGVtLXJlZ3VsYXRpb25fX2NvbnRlbnQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1saWdodC1ncmF5KTtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtb3JhbmdlKTtcbn1cbi5saXN0LWl0ZW0tcmVndWxhdGlvbl9fY29udGVudCB7XG4gIGZsZXg6IDE7XG4gIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctMjAwKSB2YXIoLS1zcGFjaW5nLTE1MCk7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1jb2xvci1icmFuZC1kYXJrLWdyYXkpO1xufVxuLmxpc3QtaXRlbS1yZWd1bGF0aW9uX190aXRsZSB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LXByaW1hcnkpO1xuICBmb250LXNpemU6IHZhcigtLWgzLWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1oMy1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1oMy1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWRhcmstZ3JheSk7XG59XG4ubGlzdC1pdGVtLXJlZ3VsYXRpb25fX3RpdGxlOmhvdmVyLCAubGlzdC1pdGVtLXJlZ3VsYXRpb25fX3RpdGxlOmZvY3VzLXdpdGhpbiB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcbn1cbi5saXN0LWl0ZW0tcmVndWxhdGlvbl9fZGF0ZSB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1zbWFsbC1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tYm9keS1zbWFsbC1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LXNtYWxsLWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LW1lZGl1bSk7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctMTUwKTtcbn1cbi5saXN0LWl0ZW0tc2VhcmNoLXJlc3VsdCB7XG4gIHdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7XG59XG4ubGlzdC1pdGVtLXNlYXJjaC1yZXN1bHQ6aG92ZXIgLmxpc3QtaXRlbS1zZWFyY2gtcmVzdWx0X19jb250ZW50IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtbGlnaHQtZ3JheSk7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLW9yYW5nZSk7XG59XG4ubGlzdC1pdGVtLXNlYXJjaC1yZXN1bHRfX2NvbnRlbnQge1xuICBmbGV4OiAxO1xuICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLTIwMCkgdmFyKC0tc3BhY2luZy0xNTApO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tY29sb3ItYnJhbmQtZGFyay1ncmF5KTtcbn1cbi5saXN0LWl0ZW0tc2VhcmNoLXJlc3VsdF9fdGl0bGUge1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1wcmltYXJ5KTtcbiAgZm9udC1zaXplOiB2YXIoLS1oMy1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0taDMtbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0taDMtbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1kYXJrLWdyYXkpO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLTA1MCk7XG59XG4ubGlzdC1pdGVtLXNlYXJjaC1yZXN1bHRfX3RpdGxlOmhvdmVyIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xufVxuLmxpc3QtaXRlbS1zZWFyY2gtcmVzdWx0X19jYXRlZ29yeSB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1zbWFsbC1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tYm9keS1zbWFsbC1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LXNtYWxsLWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LW1lZGl1bSk7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctMTUwKTtcbn1cblxuLyoqXG4gKiBMaXN0XG4gKiBHcm91cDogRWxlbWVudHNcbiAqL1xub2wsXG51bCB7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICAvKiBXaGVuIFVMIGRvZXNuJ3QgaGF2ZSBhbnkgY2xhc3MgKi9cbn1cbm9sOjpiZWZvcmUsXG51bDo6YmVmb3JlIHtcbiAgY29udGVudDogXCLigItcIjsgLyogYWRkIHplcm8td2lkdGggc3BhY2UgKi9cbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgY2xpcC1wYXRoOiBpbnNldCg1MCUpO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBib3JkZXI6IDA7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cbm9sIGxpLFxudWwgbGkge1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgZm9udC1zaXplOiBpbmhlcml0O1xuICBmb250LXdlaWdodDogaW5oZXJpdDtcbiAgbGV0dGVyLXNwYWNpbmc6IGluaGVyaXQ7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xufVxub2wgbGk6Om1hcmtlcixcbnVsIGxpOjptYXJrZXIge1xuICBjb2xvcjogY3VycmVudGNvbG9yO1xufVxuLm8tbWFpbiBvbDpub3QoW2NsYXNzXSksXG4uby1tYWluIHVsOm5vdChbY2xhc3NdKSB7XG4gIHBhZGRpbmctbGVmdDogMS41ZW07XG59XG4uby1tYWluIG9sOm5vdChbY2xhc3NdKSBsaSxcbi5vLW1haW4gdWw6bm90KFtjbGFzc10pIGxpIHtcbiAgbWFyZ2luOiB2YXIoLS1zcGFjZS1zbSkgMDtcbn1cblxub2wge1xuICAvKiBXaGVuIE9MIGRvZXNuJ3QgaGF2ZSBhbnkgY2xhc3MgKi9cbn1cbi5vLW1haW4gb2w6bm90KFtjbGFzc10pIHtcbiAgbGlzdC1zdHlsZTogYXV0bztcbn1cblxudWwge1xuICAvKiBXaGVuIFVMIGRvZXNuJ3QgaGF2ZSBhbnkgY2xhc3MgKi9cbn1cbi5vLW1haW4gdWw6bm90KFtjbGFzc10pIHtcbiAgbGlzdC1zdHlsZTogZGlzYyBvdXRzaWRlO1xufVxuXG4vKipcbiAqIExvZ29cbiAqIEdyb3VwOiBFbGVtZW50c1xuICovXG4ubG9nby1oZWFkZXIge1xuICBtYXgtd2lkdGg6IDUuNXJlbTtcbiAgbWF4LWhlaWdodDogNXJlbTtcbn1cbi5sb2dvLWhlYWRlciBpbWcge1xuICBvYmplY3QtZml0OiBjb250YWluO1xufVxuLmxvZ28tZm9vdGVyIHtcbiAgbWF4LXdpZHRoOiA5cmVtO1xuICBtYXgtaGVpZ2h0OiA5cmVtO1xufVxuLmxvZ28tZm9vdGVyIGltZyB7XG4gIG9iamVjdC1maXQ6IGNvbnRhaW47XG59XG5cbi8qKlxuICogTWFpblxuICogR3JvdXA6IEVsZW1lbnRzXG4gKi9cbm1haW4ge1xuICBmbGV4OiAxO1xufVxuXG4vKipcbiAqIE5hdlxuICogR3JvdXA6IEVsZW1lbnRzXG4gKi9cbi5tZW51IHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAubWVudSB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBnYXA6IHZhcigtLXNwYWNpbmctMDUwKTtcbiAgfVxufVxuLm1lbnUtaXRlbSB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tYm9keS1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXNlbWlib2xkKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0KTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlci1sZWZ0OiAzcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIHBhZGRpbmctaW5saW5lOiB2YXIoLS1zcGFjaW5nLTEwMCk7XG4gIHBhZGRpbmctYmxvY2s6IHZhcigtLXNwYWNpbmctMDUwKTtcbn1cbi5tZW51LWl0ZW06aG92ZXIge1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0KTtcbiAgYm9yZGVyLWxlZnQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLW9yYW5nZSk7XG59XG4ubWVudS1pdGVtLS13cmFwcGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLm1lbnUtaXRlbS0tY3RhIHtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLW0pO1xuICBib3JkZXItd2lkdGg6IHZhcigtLWJ1dHRvbi1ib3JkZXItd2lkdGgpO1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICBmb250LXNpemU6IHZhcigtLWJvZHktZm9udC1zaXplKTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXN0cmV0Y2g6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGVhZGluZy1ub25lKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLXRyYWNraW5nLW5vcm1hbCk7XG4gIHBhZGRpbmctYmxvY2s6IHZhcigtLXNwYWNpbmctMDc1KTtcbiAgcGFkZGluZy1pbmxpbmU6IHZhcigtLXNwYWNpbmctMTAwKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1vcmFuZ2UpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLW9yYW5nZSk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1kYXJrLWdyYXkpO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBoZWlnaHQ6IHZhcigtLXNwYWNpbmctMjAwKTtcbiAgYm9yZGVyLXdpZHRoOiB2YXIoLS1idXR0b24tYm9yZGVyLXdpZHRoKTtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLXJhZGl1czogMS4yNXJlbTtcbiAgcGFkZGluZy1pbmxpbmU6IHZhcigtLXNwYWNpbmctMjAwKTtcbn1cbi5tZW51LWl0ZW0tLWN0YTpob3ZlciwgLm1lbnUtaXRlbS0tY3RhOmFjdGl2ZSwgLm1lbnUtaXRlbS0tY3RhOmZvY3VzIHtcbiAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQsIHRyYW5zZm9ybSB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dCwgb3BhY2l0eSB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dDtcbn1cbi5tZW51LWl0ZW0tLWN0YTpob3ZlcjphY3RpdmUsIC5tZW51LWl0ZW0tLWN0YTphY3RpdmU6YWN0aXZlLCAubWVudS1pdGVtLS1jdGE6Zm9jdXM6YWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjkpO1xufVxuLm1lbnUtaXRlbS0tY3RhOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtbGlnaHQtZ3JheSk7XG59XG4ubWVudS1pdGVtLS1jdGE6Zm9jdXMge1xuICBvdXRsaW5lLWNvbG9yOiB2YXIoLS1jb2xvci1mb2N1cy1zdHJva2UpO1xufVxuLm1lbnUtaXRlbS0tYnV0dG9uIHtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgdGV4dC1hbGlnbjogaW5oZXJpdDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJvcmRlci1sZWZ0OiAzcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgZ2FwOiB2YXIoLS1zcGFjaW5nLTAyNSk7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLm1lbnUtaXRlbS0tYnV0dG9uIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtZGFyay1ncmF5KTtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cbiAgLm1lbnUtaXRlbS0tYnV0dG9uOmhvdmVyIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtZGFyay1ncmF5KTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxufVxuLm1lbnUtaXRlbV9faWNvbiB7XG4gIHdpZHRoOiB2YXIoLS1pY29uLWRlZmF1bHQpO1xuICBoZWlnaHQ6IHZhcigtLWljb24tZGVmYXVsdCk7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dDtcbn1cbi5tZW51LWl0ZW1bYXJpYS1leHBhbmRlZD10cnVlXSAubWVudS1pdGVtX19pY29uIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbn1cbi5tZW51LXN1YiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUtZGFyayk7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLm1lbnUtc3ViIHtcbiAgICBib3gtc2hhZG93OiB2YXIoLS1ib3gtc2hhZG93LWxpZ2h0LTA0KTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAxMDAlO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IHZhcigtLXNwYWNpbmctMjQwMCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG4gIH1cbiAgLm1lbnUtc3ViID4gKjpsYXN0LWNoaWxkID4gLm1lbnUtaXRlbSB7XG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgfVxufVxuLm1lbnUtc3ViIC5tZW51LWl0ZW0ge1xuICBwYWRkaW5nLWxlZnQ6IHZhcigtLXNwYWNpbmctMjUwKTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWxpZ2h0KTtcbn1cbi5tZW51LXN1YltkYXRhLWV4cGFuZGVkPWZhbHNlXSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4ubWVudS1zdWJbZGF0YS1leHBhbmRlZD10cnVlXSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBhbmltYXRpb246IGZhZGUtaW4gdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQgZm9yd2FyZHM7XG59XG4ubWVudSA+ICo6bm90KDpsYXN0LWNoaWxkKSA+IC5tZW51LWl0ZW0ge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tY29sb3ItbGlnaHQpO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5tZW51ID4gKjpub3QoOmxhc3QtY2hpbGQpID4gLm1lbnUtaXRlbSB7XG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgfVxufVxuXG4vKipcbiAqIFBhZ2luYXRpb25cbiAqIEdyb3VwOiBFbGVtZW50c1xuICovXG4ucGFnaW5hdGlvbiB7XG4gIGhlaWdodDogdmFyKC0tcGFnaW5hdGlvbi1oZWlnaHQpO1xuICBtYXJnaW4taW5saW5lOiBhdXRvO1xuICBtYXJnaW4tYmxvY2s6IHZhcigtLXNwYWNpbmctMzAwKTtcbiAgbWF4LXdpZHRoOiB2YXIoLS1zcGFjaW5nLTQwMDApO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAucGFnaW5hdGlvbiB7XG4gICAgbWFyZ2luLWJsb2NrOiB2YXIoLS1zcGFjaW5nLTYwMCk7XG4gIH1cbn1cbi5wYWdpbmF0aW9uX19saXN0IHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgZ2FwOiB2YXIoLS1zcGFjaW5nLTA1MCk7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDE0cHgpIHtcbiAgLnBhZ2luYXRpb25fX2xpc3Qge1xuICAgIGdhcDogdmFyKC0tc3BhY2luZy0xMDApO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnBhZ2luYXRpb25fX2xpc3Qge1xuICAgIGdhcDogdmFyKC0tc3BhY2luZy0yMDApO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLnBhZ2luYXRpb25fX2xpc3Qge1xuICAgIGdhcDogdmFyKC0tc3BhY2luZy0zMDApO1xuICB9XG59XG4ucGFnaW5hdGlvbl9faXRlbSB7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1tKTtcbiAgYm9yZGVyLXdpZHRoOiB2YXIoLS1idXR0b24tYm9yZGVyLXdpZHRoKTtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LWZvbnQtc2l6ZSk7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC1zdHJldGNoOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxlYWRpbmctbm9uZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS10cmFja2luZy1ub3JtYWwpO1xuICBwYWRkaW5nLWJsb2NrOiB2YXIoLS1zcGFjaW5nLTA3NSk7XG4gIHBhZGRpbmctaW5saW5lOiB2YXIoLS1zcGFjaW5nLTEwMCk7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LXNtYWxsLWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ib2xkKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLXRyYWNraW5nLW5vcm1hbCk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1sZWFkaW5nLXRpZ2h0KTtcbiAgcGFkZGluZy1ibG9jazogdmFyKC0tc3BhY2luZy0wMjUpO1xuICBwYWRkaW5nLWlubGluZTogdmFyKC0tc3BhY2luZy0wNzUpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1idG4tcmFkaXVzLWZ1bGwpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xuICB3aWR0aDogdmFyKC0tc3BhY2luZy0yMDApO1xuICBoZWlnaHQ6IHZhcigtLXNwYWNpbmctMjAwKTtcbiAgcGFkZGluZzogMDtcbn1cbi5wYWdpbmF0aW9uX19pdGVtOmhvdmVyLCAucGFnaW5hdGlvbl9faXRlbTphY3RpdmUsIC5wYWdpbmF0aW9uX19pdGVtOmZvY3VzIHtcbiAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQsIHRyYW5zZm9ybSB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dCwgb3BhY2l0eSB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dDtcbn1cbi5wYWdpbmF0aW9uX19pdGVtOmhvdmVyOmFjdGl2ZSwgLnBhZ2luYXRpb25fX2l0ZW06YWN0aXZlOmFjdGl2ZSwgLnBhZ2luYXRpb25fX2l0ZW06Zm9jdXM6YWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjkpO1xufVxuLnBhZ2luYXRpb25fX2l0ZW06aG92ZXIsIC5wYWdpbmF0aW9uX19pdGVtW2FyaWEtY3VycmVudD1wYWdlXSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItbGlnaHQpO1xufVxuLnBhZ2luYXRpb25fX2l0ZW06Zm9jdXMge1xuICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWZvY3VzLXN0cm9rZSk7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHtcbiAgLnBhZ2luYXRpb25fX2l0ZW0ge1xuICAgIHdpZHRoOiB2YXIoLS1zcGFjaW5nLTMwMCk7XG4gICAgaGVpZ2h0OiB2YXIoLS1zcGFjaW5nLTMwMCk7XG4gIH1cbn1cbi5wYWdpbmF0aW9uX19uYXZpZ2F0aW9uLWJ1dHRvbiB7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1tKTtcbiAgYm9yZGVyLXdpZHRoOiB2YXIoLS1idXR0b24tYm9yZGVyLXdpZHRoKTtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LWZvbnQtc2l6ZSk7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC1zdHJldGNoOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxlYWRpbmctbm9uZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS10cmFja2luZy1ub3JtYWwpO1xuICBwYWRkaW5nLWJsb2NrOiB2YXIoLS1zcGFjaW5nLTA3NSk7XG4gIHBhZGRpbmctaW5saW5lOiB2YXIoLS1zcGFjaW5nLTEwMCk7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LXNtYWxsLWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ib2xkKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLXRyYWNraW5nLW5vcm1hbCk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1sZWFkaW5nLXRpZ2h0KTtcbiAgcGFkZGluZy1ibG9jazogdmFyKC0tc3BhY2luZy0wMjUpO1xuICBwYWRkaW5nLWlubGluZTogdmFyKC0tc3BhY2luZy0wNzUpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1idG4tcmFkaXVzLWZ1bGwpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xuICB3aWR0aDogdmFyKC0tc3BhY2luZy0yMDApO1xuICBoZWlnaHQ6IHZhcigtLXNwYWNpbmctMjAwKTtcbiAgcGFkZGluZzogMDtcbn1cbi5wYWdpbmF0aW9uX19uYXZpZ2F0aW9uLWJ1dHRvbjpob3ZlciwgLnBhZ2luYXRpb25fX25hdmlnYXRpb24tYnV0dG9uOmFjdGl2ZSwgLnBhZ2luYXRpb25fX25hdmlnYXRpb24tYnV0dG9uOmZvY3VzIHtcbiAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQsIHRyYW5zZm9ybSB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dCwgb3BhY2l0eSB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dDtcbn1cbi5wYWdpbmF0aW9uX19uYXZpZ2F0aW9uLWJ1dHRvbjpob3ZlcjphY3RpdmUsIC5wYWdpbmF0aW9uX19uYXZpZ2F0aW9uLWJ1dHRvbjphY3RpdmU6YWN0aXZlLCAucGFnaW5hdGlvbl9fbmF2aWdhdGlvbi1idXR0b246Zm9jdXM6YWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjkpO1xufVxuLnBhZ2luYXRpb25fX25hdmlnYXRpb24tYnV0dG9uOmhvdmVyLCAucGFnaW5hdGlvbl9fbmF2aWdhdGlvbi1idXR0b25bYXJpYS1jdXJyZW50PXBhZ2VdIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1saWdodCk7XG59XG4ucGFnaW5hdGlvbl9fbmF2aWdhdGlvbi1idXR0b246Zm9jdXMge1xuICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWZvY3VzLXN0cm9rZSk7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHtcbiAgLnBhZ2luYXRpb25fX25hdmlnYXRpb24tYnV0dG9uIHtcbiAgICB3aWR0aDogdmFyKC0tc3BhY2luZy0zMDApO1xuICAgIGhlaWdodDogdmFyKC0tc3BhY2luZy0zMDApO1xuICB9XG59XG4ucGFnaW5hdGlvbl9fbmF2aWdhdGlvbi1idXR0b25bYXJpYS1kaXNhYmxlZD10cnVlXSB7XG4gIG9wYWNpdHk6IDAuNTtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG4ucGFnaW5hdGlvbl9fbmF2LWljb24ge1xuICB3aWR0aDogdmFyKC0taWNvbi14eHMpO1xuICBoZWlnaHQ6IHZhcigtLWljb24teHMpO1xufVxuXG4vKipcbiAqIElucHV0XG4gKiBHcm91cDogRWxlbWVudHNcbiAqL1xuLnNlYXJjaCB7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMteHMpO1xuICBib3JkZXI6IG5vbmU7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LWxpbmUtaGVpZ2h0KTtcbiAgdGV4dC1pbmRlbnQ6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLXNlYXJjaC1ncmF5KTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1sKTtcbiAgaGVpZ2h0OiB2YXIoLS1zcGFjaW5nLTI1MCk7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctMDc1KTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xuICBwYWRkaW5nLWJsb2NrOiAwO1xuICBtYXJnaW4tYmxvY2s6IDA7XG4gIG1hcmdpbi1pbmxpbmU6IGF1dG8gdmFyKC0tc3BhY2luZy0wNTApO1xufVxuLnNlYXJjaDpob3ZlciwgLnNlYXJjaDphY3RpdmUsIC5zZWFyY2g6Zm9jdXMge1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0O1xufVxuLnNlYXJjaDpob3ZlciB7XG4gIGJveC1zaGFkb3c6IHZhcigtLWJveC1zaGFkb3ctbGlnaHQtMDMpO1xufVxuLnNlYXJjaCBpbnB1dCB7XG4gIGhlaWdodDogdmFyKC0taW5wdXQtaGVpZ2h0LWxhcmdlKTtcbiAgd2lkdGg6IHZhcigtLW1heC13aWR0aC0tNnhzKTtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1zbWFsbC1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tYm9keS1zbWFsbC1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LXNtYWxsLWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xufVxuLnNlYXJjaCBpbnB1dDo6cGxhY2Vob2xkZXIge1xuICBmb250LXNpemU6IHZhcigtLWJvZHktc21hbGwtZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWJvZHktc21hbGwtbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tYm9keS1zbWFsbC1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xuICBvcGFjaXR5OiAwLjc7XG59XG4uc2VhcmNoIGlucHV0Ojotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LXNtYWxsLWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1ib2R5LXNtYWxsLWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWJvZHktc21hbGwtbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcbiAgb3BhY2l0eTogMC43O1xufVxuLnNlYXJjaCBpbnB1dDo6LW1vei1wbGFjZWhvbGRlciB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1zbWFsbC1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tYm9keS1zbWFsbC1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LXNtYWxsLWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG4gIG9wYWNpdHk6IDAuNztcbiAgb3BhY2l0eTogMTtcbn1cbi5zZWFyY2ggaW5wdXQ6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LXNtYWxsLWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1ib2R5LXNtYWxsLWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWJvZHktc21hbGwtbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcbiAgb3BhY2l0eTogMC43O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5zZWFyY2ggaW5wdXQge1xuICAgIHdpZHRoOiB2YXIoLS1tYXgtd2lkdGgtLTV4cyk7XG4gIH1cbn1cbi5zZWFyY2hfX2N0YSB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1zbWFsbC1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS10cmFja2luZy1ub3JtYWwpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGVhZGluZy1ub25lKTtcbiAgcGFkZGluZy1ibG9jazogdmFyKC0tc3BhY2luZy0wMjUpO1xuICBwYWRkaW5nLWlubGluZTogdmFyKC0tc3BhY2luZy0wNzUpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1idG4tcmFkaXVzKTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogdmFyKC0tc3BhY2luZy0yNTApO1xuICBkaXNwbGF5OiBncmlkO1xuICBwbGFjZS1pdGVtczogY2VudGVyO1xuICBib3JkZXI6IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcbn1cbi5zZWFyY2hfX2N0YTpob3ZlciB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1vcmFuZ2UpO1xufVxuLnNlYXJjaF9faWNvbiB7XG4gIHdpZHRoOiB2YXIoLS1pY29uLXhzKTtcbiAgaGVpZ2h0OiB2YXIoLS1pY29uLXhzKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLTAyNSk7XG59XG4uc2VhcmNoX19pY29uLS1vcGVuLCAuc2VhcmNoX19pY29uLS1jbG9zZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGNvbG9yOiBpbmhlcml0O1xufVxuLnNlYXJjaF9faWNvbi0tdG9nZ2xlci13cmFwcGVyIHtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLW0pO1xuICBib3JkZXItd2lkdGg6IHZhcigtLWJ1dHRvbi1ib3JkZXItd2lkdGgpO1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICBmb250LXNpemU6IHZhcigtLWJvZHktZm9udC1zaXplKTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXN0cmV0Y2g6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGVhZGluZy1ub25lKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLXRyYWNraW5nLW5vcm1hbCk7XG4gIHBhZGRpbmctYmxvY2s6IHZhcigtLXNwYWNpbmctMDc1KTtcbiAgcGFkZGluZy1pbmxpbmU6IHZhcigtLXNwYWNpbmctMTAwKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBmb250LXNpemU6IHZhcigtLWJvZHktc21hbGwtZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tdHJhY2tpbmctbm9ybWFsKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxlYWRpbmctbm9uZSk7XG4gIHBhZGRpbmctYmxvY2s6IHZhcigtLXNwYWNpbmctMDI1KTtcbiAgcGFkZGluZy1pbmxpbmU6IHZhcigtLXNwYWNpbmctMDc1KTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYnRuLXJhZGl1cyk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcbn1cbi5zZWFyY2hfX2ljb24tLXRvZ2dsZXItd3JhcHBlcjpob3ZlciwgLnNlYXJjaF9faWNvbi0tdG9nZ2xlci13cmFwcGVyOmFjdGl2ZSwgLnNlYXJjaF9faWNvbi0tdG9nZ2xlci13cmFwcGVyOmZvY3VzIHtcbiAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQsIHRyYW5zZm9ybSB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dCwgb3BhY2l0eSB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dDtcbn1cbi5zZWFyY2hfX2ljb24tLXRvZ2dsZXItd3JhcHBlcjpob3ZlcjphY3RpdmUsIC5zZWFyY2hfX2ljb24tLXRvZ2dsZXItd3JhcHBlcjphY3RpdmU6YWN0aXZlLCAuc2VhcmNoX19pY29uLS10b2dnbGVyLXdyYXBwZXI6Zm9jdXM6YWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjkpO1xufVxuLnNlYXJjaF9faWNvbi0tdG9nZ2xlci13cmFwcGVyOmhvdmVyIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLW9yYW5nZSk7XG59XG4uc2VhcmNoX19pY29uLS10b2dnbGVyLXdyYXBwZXJbYXJpYS1leHBhbmRlZD1mYWxzZV0gLnNlYXJjaF9faWNvbi0tb3BlbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLnNlYXJjaF9faWNvbi0tdG9nZ2xlci13cmFwcGVyW2FyaWEtZXhwYW5kZWQ9dHJ1ZV0gLnNlYXJjaF9faWNvbi0tY2xvc2Uge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi5zZWFyY2gtLW1vYmlsZSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG1heC13aWR0aDogMDtcbiAgdHJhbnNmb3JtOiBzY2FsZVgoMCk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGNlbnRlcjtcbiAgdHJhbnNpdGlvbjogbWF4LXdpZHRoIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0O1xufVxuLnNlYXJjaC0tbW9iaWxlW2RhdGEtZXhwYW5kZWQ9dHJ1ZV0ge1xuICB0cmFuc2Zvcm06IHNjYWxlWCgxKTtcbiAgbWF4LXdpZHRoOiB2YXIoLS1tYXgtd2lkdGgtLTd4cyk7XG4gIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2luZy0wNTApO1xufVxuLnNlYXJjaC0tbW9iaWxlW2RhdGEtZXhwYW5kZWQ9dHJ1ZV0gaW5wdXQge1xuICBtYXgtd2lkdGg6IHZhcigtLW1heC13aWR0aC0tOXhzKTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuc2VhcmNoLS1tb2JpbGVbZGF0YS1leHBhbmRlZD10cnVlXSB7XG4gICAgbWF4LXdpZHRoOiB2YXIoLS1tYXgtd2lkdGgtLTV4cyk7XG4gIH1cbiAgLnNlYXJjaC0tbW9iaWxlW2RhdGEtZXhwYW5kZWQ9dHJ1ZV0gaW5wdXQge1xuICAgIG1heC13aWR0aDogdmFyKC0tbWF4LXdpZHRoLS02eHMpO1xuICB9XG59XG5cbi8qKlxuICogU2VsZWN0XG4gKiBHcm91cDogRWxlbWVudHNcbiAqL1xuc2VsZWN0IHtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy14cyk7XG4gIGJvcmRlcjogbm9uZTtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWJvZHktbGluZS1oZWlnaHQpO1xuICB0ZXh0LWluZGVudDogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtc2VhcmNoLWdyYXkpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLWwpO1xuICBoZWlnaHQ6IHZhcigtLXNwYWNpbmctMzAwKTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiByb3cgbm93cmFwO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctMTAwKSB2YXIoLS1zcGFjaW5nLTE1MCk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1ib2R5LWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWJvZHktbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG59XG5zZWxlY3Q6aG92ZXIsIHNlbGVjdDphY3RpdmUsIHNlbGVjdDpmb2N1cyB7XG4gIHRyYW5zaXRpb246IGJveC1zaGFkb3cgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQ7XG59XG5zZWxlY3Q6aG92ZXIge1xuICBib3gtc2hhZG93OiB2YXIoLS1ib3gtc2hhZG93LWxpZ2h0LTAzKTtcbn1cbnNlbGVjdCBpbnB1dCB7XG4gIHdpZHRoOiAxMDAlO1xuICBjb2xvcjogaW5oZXJpdDtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1ib2R5LWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWJvZHktbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG59XG5zZWxlY3QgaW5wdXQ6OnBsYWNlaG9sZGVyIHtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1ib2R5LWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWJvZHktbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcbn1cbnNlbGVjdCBpbnB1dDo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tYm9keS1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG59XG5zZWxlY3QgaW5wdXQ6Oi1tb3otcGxhY2Vob2xkZXIge1xuICBmb250LXNpemU6IHZhcigtLWJvZHktZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWJvZHktbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tYm9keS1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xuICBvcGFjaXR5OiAxO1xufVxuc2VsZWN0IGlucHV0Oi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tYm9keS1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG59XG5cbi8qKlxuICogU29jaWFsIExpbmtzXG4gKiBHcm91cDogRWxlbWVudHNcbiAqL1xuLnNvY2lhbC1saW5rcyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiB2YXIoLS1zcGFjaW5nLTAyNSk7XG4gIGNvbG9yOiBpbmhlcml0O1xuICBmbGV4OiAxO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSB7XG4gIC5zb2NpYWwtbGlua3Mge1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICBmbGV4OiAwIDEgYXV0bztcbiAgICBnYXA6IHZhcigtLXNwYWNpbmctMjAwKTtcbiAgfVxufVxuLnNvY2lhbC1saW5rc19fbGluayB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1zbWFsbC1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tYm9keS1zbWFsbC1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LXNtYWxsLWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG4uc29jaWFsLWxpbmtzX19saW5rIHN2ZyB7XG4gIGhlaWdodDogdmFyKC0taWNvbi1kZWZhdWx0KTtcbiAgd2lkdGg6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2luZy0wMjUpO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSB7XG4gIC5zb2NpYWwtbGlua3NfX2xpbmsge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1mb250LXNpemUpO1xuICAgIGxldHRlci1zcGFjaW5nOiB2YXIoLS1ib2R5LWxldHRlci1zcGFjaW5nKTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tYm9keS1saW5lLWhlaWdodCk7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICB9XG4gIC5zb2NpYWwtbGlua3NfX2xpbmsgc3ZnIHtcbiAgICBoZWlnaHQ6IHZhcigtLWljb24tZGVmYXVsdCk7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLTA3NSk7XG4gIH1cbn1cblxuLyoqXG4gKiBMaXN0IEl0ZW1cbiAqIEdyb3VwOiBFbGVtZW50c1xuICovXG4udGFibGUtbGlzdCB7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gIG1pbi13aWR0aDogdmFyKC0tbWluLXdpZHRoLXRhYmxlLWxpc3QpO1xuICB3aWR0aDogMTAwJTtcbn1cbi50YWJsZS1saXN0LS13cmFwcGVyIHtcbiAgb3ZlcmZsb3cteDogYXV0bztcbiAgd2lkdGg6IDEwMCU7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLnRhYmxlLWxpc3QtLXdyYXBwZXIge1xuICAgIG92ZXJmbG93LXg6IHZpc2libGU7XG4gIH1cbn1cbi50YWJsZS1saXN0X19jYXB0aW9uIHtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtcHJpbWFyeSk7XG4gIGZvbnQtc2l6ZTogdmFyKC0taDItZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWgyLWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWgyLWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtZGFyay1ncmF5KTtcbiAgbWFyZ2luOiAwIDAgdmFyKC0tc3BhY2luZy0xMDApO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuLnRhYmxlLWxpc3RfX3RyZWUtY2FwdGlvbiB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LXByaW1hcnkpO1xuICBmb250LXNpemU6IHZhcigtLWgyLWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1oMi1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1oMi1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWRhcmstZ3JheSk7XG4gIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmctNjAwKTtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy0zMDApO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuLnRhYmxlLWxpc3RfX2NlbGwge1xuICBwYWRkaW5nLWJsb2NrOiB2YXIoLS1zcGFjaW5nLTIwMCk7XG4gIHBhZGRpbmctaW5saW5lOiB2YXIoLS1zcGFjaW5nLTA1MCk7XG59XG4udGFibGUtbGlzdF9fY2VsbDpmaXJzdC1jaGlsZCB7XG4gIHBhZGRpbmctaW5saW5lOiB2YXIoLS1zcGFjaW5nLTA3NSkgMDtcbn1cbi50YWJsZS1saXN0X19jZWxsOmxhc3QtY2hpbGQge1xuICBwYWRkaW5nLWlubGluZTogMCB2YXIoLS1zcGFjaW5nLTA3NSk7XG59XG4udGFibGUtbGlzdF9fY2VsbC0taGVhZGVyIHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgd2lkdGg6IDMwJTtcbn1cbi50YWJsZS1saXN0X19yb3cge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tY29sb3ItYnJhbmQtbGlnaHRlci1ncmF5KTtcbn1cbi50YWJsZS1saXN0X19yb3c6aG92ZXIsIC50YWJsZS1saXN0X19yb3c6Zm9jdXMtd2l0aGluIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtbGlnaHRlci1ncmF5KTtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtb3JhbmdlKTtcbn1cbi50YWJsZS1saXN0X19yb3c6aG92ZXIgPiAqLCAudGFibGUtbGlzdF9fcm93OmZvY3VzLXdpdGhpbiA+ICoge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi50YWJsZS1saXN0X19yb3ctd2l0aC1oZWFkZXIge1xuICBib3JkZXItYmxvY2s6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1icmFuZC1vcmFuZ2UpO1xufVxuLnRhYmxlLWxpc3RfX3Jvdy13aXRoLWhlYWRlcjpudGgtY2hpbGQob2RkKSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItbGlnaHQpO1xufVxuLnRhYmxlLWxpc3RfX3Jvdy13aXRoLWhlYWRlcjpudGgtY2hpbGQoZXZlbikge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1saWdodC1ncmF5KTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWdyYXkpO1xufVxuLnRhYmxlLWxpc3RfX3Jvdy13aXRoLWhlYWRlcjpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci10b3A6IDNweCBzb2xpZCB2YXIoLS1jb2xvci1icmFuZC1ncmF5KTtcbn1cbi50YWJsZS1saXN0X19yb3ctd2l0aC1oZWFkZXI6bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1ib3R0b206IDNweCBzb2xpZCB2YXIoLS1jb2xvci1icmFuZC1vcmFuZ2UpO1xufVxuLnRhYmxlLWxpc3RfX2hlYWRlciB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1zbWFsbC1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tYm9keS1zbWFsbC1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LXNtYWxsLWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtZ3JheSk7XG4gIGJvcmRlci1ib3R0b206IDNweCBzb2xpZCB2YXIoLS1jb2xvci1icmFuZC1kYXJrLWdyYXkpO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuLnRhYmxlLWxpc3RfX2luZGV4IHtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1ib2R5LWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWJvZHktbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZCk7XG4gIHdpZHRoOiBjbGFtcCh2YXIoLS1zcGFjaW5nLTMwMCksIDZ2dywgdmFyKC0tc3BhY2luZy00MDApKTtcbn1cbi50YWJsZS1saXN0X19pbmRleC10ZXh0IHtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1ib2R5LWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWJvZHktbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZCk7XG59XG4udGFibGUtbGlzdF9fdGl0bGUge1xuICBmb250LXNpemU6IHZhcigtLWJvZHktc21hbGwtZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWJvZHktc21hbGwtbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tYm9keS1zbWFsbC1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbn1cbi50YWJsZS1saXN0X190aXRsZS10ZXh0IHtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LXNtYWxsLWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1ib2R5LXNtYWxsLWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWJvZHktc21hbGwtbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIG1heC13aWR0aDogdmFyKC0tc3BhY2luZy0zNzAwKTtcbn1cbi50YWJsZS1saXN0X19saW5rIHtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LXNtYWxsLWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1ib2R5LXNtYWxsLWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWJvZHktc21hbGwtbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIHdpZHRoOiBjbGFtcCgyMCUsIHZhcigtLXNwYWNpbmctMjQwMCksIDI1cmVtKTtcbn1cbi50YWJsZS1saXN0X19saW5rLWlubmVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiByb3cgbm93cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogdmFyKC0tc3BhY2luZy0wNTApO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG4udGFibGUtbGlzdF9fbGluay1pbm5lcjpob3ZlciwgLnRhYmxlLWxpc3RfX2xpbmstaW5uZXI6Zm9jdXMge1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG59XG4udGFibGUtbGlzdF9fbGluay10ZXh0IHtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LXNtYWxsLWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1ib2R5LXNtYWxsLWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWJvZHktc21hbGwtbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIG1heC13aWR0aDogdmFyKC0tc3BhY2luZy0xNjAwKTtcbiAgZmxleDogMTtcbn1cbi50YWJsZS1saXN0X19saW5rLWljb24ge1xuICBtYXgtaGVpZ2h0OiB2YXIoLS1pY29uLXhzKTtcbiAgd2lkdGg6IHZhcigtLWljb24teHMpO1xuICBoZWlnaHQ6IGF1dG87XG4gIGNvbG9yOiBpbmhlcml0O1xufVxuLnRhYmxlLWxpc3RfX3RpdGxlLWxpbmsge1xuICBmb250LXNpemU6IHZhcigtLWJvZHktc21hbGwtZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWJvZHktc21hbGwtbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tYm9keS1zbWFsbC1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbiAgd2lkdGg6IGNsYW1wKDIwJSwgdmFyKC0tc3BhY2luZy0yNDAwKSwgMjVyZW0pO1xufVxuLnRhYmxlLWxpc3RfX3RpdGxlLWxpbmstaW5uZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiB2YXIoLS1zcGFjaW5nLTA1MCk7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbi50YWJsZS1saXN0X190aXRsZS1saW5rLWlubmVyOmhvdmVyLCAudGFibGUtbGlzdF9fdGl0bGUtbGluay1pbm5lcjpmb2N1cyB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcbn1cbi50YWJsZS1saXN0X190aXRsZS1saW5rLXRleHQge1xuICBmb250LXNpemU6IHZhcigtLWJvZHktc21hbGwtZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWJvZHktc21hbGwtbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tYm9keS1zbWFsbC1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbiAgZmxleDogMTtcbn1cbi50YWJsZS1saXN0X190aXRsZS1saW5rLWljb24ge1xuICBtYXgtaGVpZ2h0OiB2YXIoLS1pY29uLXhzKTtcbiAgd2lkdGg6IHZhcigtLWljb24teHMpO1xuICBoZWlnaHQ6IGF1dG87XG4gIGNvbG9yOiBpbmhlcml0O1xufVxuLnRhYmxlLWxpc3RfX2xhc3RuYW1lIHtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LXNtYWxsLWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1ib2R5LXNtYWxsLWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWJvZHktc21hbGwtbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG59XG4udGFibGUtbGlzdF9fbGFzdG5hbWUtdGV4dCB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1zbWFsbC1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tYm9keS1zbWFsbC1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LXNtYWxsLWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICBtYXgtd2lkdGg6IHZhcigtLXNwYWNpbmctMzcwMCk7XG59XG4udGFibGUtbGlzdF9fZmlyc3RuYW1lIHtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LXNtYWxsLWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1ib2R5LXNtYWxsLWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWJvZHktc21hbGwtbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG59XG4udGFibGUtbGlzdF9fZmlyc3RuYW1lLXRleHQge1xuICBmb250LXNpemU6IHZhcigtLWJvZHktc21hbGwtZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWJvZHktc21hbGwtbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tYm9keS1zbWFsbC1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbiAgbWF4LXdpZHRoOiB2YXIoLS1zcGFjaW5nLTM3MDApO1xufVxuLnRhYmxlLWxpc3RfX3Bob25lIHtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LXNtYWxsLWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1ib2R5LXNtYWxsLWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWJvZHktc21hbGwtbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG59XG4udGFibGUtbGlzdF9fcGhvbmUtdGV4dCB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1zbWFsbC1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tYm9keS1zbWFsbC1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LXNtYWxsLWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICBtYXgtd2lkdGg6IHZhcigtLXNwYWNpbmctMzcwMCk7XG59XG4udGFibGUtbGlzdF9fZW1haWwge1xuICBmb250LXNpemU6IHZhcigtLWJvZHktc21hbGwtZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWJvZHktc21hbGwtbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tYm9keS1zbWFsbC1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbn1cbi50YWJsZS1saXN0X19lbWFpbC10ZXh0IHtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LXNtYWxsLWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1ib2R5LXNtYWxsLWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWJvZHktc21hbGwtbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIG1heC13aWR0aDogdmFyKC0tc3BhY2luZy0zNzAwKTtcbn1cbi50YWJsZS1saXN0X19vcmd1bml0IHtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LXNtYWxsLWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1ib2R5LXNtYWxsLWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWJvZHktc21hbGwtbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG59XG4udGFibGUtbGlzdF9fb3JndW5pdC10ZXh0IHtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LXNtYWxsLWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1ib2R5LXNtYWxsLWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWJvZHktc21hbGwtbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIG1heC13aWR0aDogdmFyKC0tc3BhY2luZy0zNzAwKTtcbn1cbi50YWJsZS1saXN0X19zaXRlIHtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LXNtYWxsLWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1ib2R5LXNtYWxsLWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWJvZHktc21hbGwtbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG59XG4udGFibGUtbGlzdF9fc2l0ZS10ZXh0IHtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LXNtYWxsLWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1ib2R5LXNtYWxsLWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWJvZHktc21hbGwtbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIG1heC13aWR0aDogdmFyKC0tc3BhY2luZy0zNzAwKTtcbn1cbi50YWJsZS1saXN0X19uYW1lIHtcbiAgd2lkdGg6IGNsYW1wKHZhcigtLXNwYWNpbmctNjAwKSwgOHZ3LCB2YXIoLS1zcGFjaW5nLTcwMCkpO1xufVxuLnRhYmxlLWxpc3RfX25hbWUtdGV4dCB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1zbWFsbC1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tYm9keS1zbWFsbC1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LXNtYWxsLWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xufVxuLnRhYmxlLWxpc3RfX25hbWUtbGluayB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbi50YWJsZS1saXN0X19uYW1lLWxpbms6aG92ZXIsIC50YWJsZS1saXN0X19uYW1lLWxpbms6Zm9jdXMge1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG59XG4udGFibGUtbGlzdF9fdHlwZSB7XG4gIHdpZHRoOiBjbGFtcCh2YXIoLS1zcGFjaW5nLTYwMCksIDh2dywgdmFyKC0tc3BhY2luZy03MDApKTtcbn1cbi50YWJsZS1saXN0X190eXBlLXRleHQge1xuICBmb250LXNpemU6IHZhcigtLWJvZHktc21hbGwtZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWJvZHktc21hbGwtbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tYm9keS1zbWFsbC1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbn1cbi50YWJsZS1saXN0X190aGVyYXBldXRpYy1jYXRlZ29yeS10ZXh0IHtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LXNtYWxsLWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1ib2R5LXNtYWxsLWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWJvZHktc21hbGwtbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG59XG4udGFibGUtbGlzdF9fYWN0aXZlX3N1YnN0YW5jZS10ZXh0IHtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LXNtYWxsLWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1ib2R5LXNtYWxsLWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWJvZHktc21hbGwtbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG59XG4udGFibGUtbGlzdF9fYXBwcm92YWwtdGV4dCB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1zbWFsbC1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tYm9keS1zbWFsbC1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LXNtYWxsLWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4udGFibGUtbGlzdF9faW5kaWNhdGlvbi1jbGFyaWZpY2F0aW9uLXRleHQge1xuICBmb250LXNpemU6IHZhcigtLWJvZHktc21hbGwtZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWJvZHktc21hbGwtbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tYm9keS1zbWFsbC1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuLnRhYmxlLWxpc3RfX2F2YWlsYWJpbGl0eS0tYXZhaWxhYmxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtZ3JlZW4pO1xufVxuLnRhYmxlLWxpc3RfX2F2YWlsYWJpbGl0eS0tbG93LWF2YWlsYWJsZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJyb3duLXNlbWktdHJhbnNwYXJlbnQpO1xufVxuLnRhYmxlLWxpc3RfX2F2YWlsYWJpbGl0eS0tbm90LWF2YWlsYWJsZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLXJlZCk7XG59XG4udGFibGUtbGlzdF9fYXZhaWxhYmlsaXR5LXRleHQge1xuICBmb250LXNpemU6IHZhcigtLWJvZHktZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWJvZHktbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tYm9keS1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtaW4td2lkdGg6IHZhcigtLXNwYWNpbmctMTAwMCk7XG4gIG1heC13aWR0aDogdmFyKC0tc3BhY2luZy04MDApO1xuICBtYXJnaW4taW5saW5lOiBhdXRvO1xuICBwYWRkaW5nLWlubGluZTogdmFyKC0tc3BhY2luZy0xNTApO1xufVxuXG4vKipcbiAqIFRleHRcbiAqIEdyb3VwOiBFbGVtZW50c1xuICovXG5wLFxuc3BhbixcbmxpLFxuYSxcbnRpbWUsXG5hZGRyZXNzIHtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWJvZHktbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tYm9keS1saW5lLWhlaWdodCk7XG59XG5cbnAuaGFzLXNtYWxsLWZvbnQtc2l6ZSB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1zbWFsbC1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tYm9keS1zbWFsbC1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LXNtYWxsLWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXRydWUpO1xufVxucC5oYXMtbGFyZ2UtZm9udC1zaXplIHtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtcHJpbWFyeSk7XG4gIGZvbnQtc2l6ZTogdmFyKC0taDYtZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWg2LWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWg2LWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXRydWUpO1xufVxucC5oYXMtbGFyZ2VyLWZvbnQtc2l6ZSB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LXByaW1hcnkpO1xuICBmb250LXNpemU6IHZhcigtLWg1LWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1oNS1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1oNS1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC10cnVlKTtcbn1cblxuYSBzcGFuLFxuc3BhbiBzcGFuIHtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgZm9udC13ZWlnaHQ6IGluaGVyaXQ7XG4gIGxldHRlci1zcGFjaW5nOiBpbmhlcml0O1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbn1cblxubGkgcCxcbmxpIHNwYW4ge1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgZm9udC1zaXplOiBpbmhlcml0O1xuICBmb250LXdlaWdodDogaW5oZXJpdDtcbiAgbGV0dGVyLXNwYWNpbmc6IGluaGVyaXQ7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xufVxuXG5hIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWxpbmspO1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cblxuc21hbGwge1xuICBmb250LXNpemU6IHZhcigtLWJvZHktc21hbGwtZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tYm9keS1zbWFsbC1saW5lLWhlaWdodCk7XG59XG5zbWFsbCA+ICoge1xuICBmb250LXNpemU6IGluaGVyaXQ7XG4gIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbn1cblxuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ib2xkKTtcbn1cblxuaSxcbmVtIHtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuXG5zdXAge1xuICBkaXNwbGF5OiBpbmxpbmU7XG4gIGZvbnQtc2l6ZTogMC42ZW07XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG59XG5cbm1hcmsge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG5pbnMge1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZCk7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuZGVsICsgaW5zIHtcbiAgbWFyZ2luLWxlZnQ6IHZhcigtLXNwYWNlLXNtKTtcbn1cblxudGggYSxcbnRoIHNwYW4sXG50ZCBhLFxudGQgc3BhbixcbmxpIGEsXG5saSBzcGFuLFxucCBhLFxucCBzcGFuIHtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgZm9udC13ZWlnaHQ6IGluaGVyaXQ7XG4gIGxldHRlci1zcGFjaW5nOiBpbmhlcml0O1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbn1cblxuLypcbiAqIEluaGVyaXQgZm9udCBzdHlsZXMgaWYgZGl2IGhhcyBmb250IGNsYXNzZXNcbiAqIFRoaXMgaXMgaGVscGZ1bCBmb3IgdGhlIFJURSB3aGljaCBpcyBhIGRpdiBhbmQgYWNjZXB0cyBwIHRhZ3MgaW5zaWRlXG4gKi9cbmRpdltjbGFzc10gPiBwOm5vdChbY2xhc3NdKSB7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgZm9udC13ZWlnaHQ6IGluaGVyaXQ7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICBsZXR0ZXItc3BhY2luZzogaW5oZXJpdDtcbn1cblxuYnV0dG9uW2NsYXNzXSA+IHNwYW46bm90KFtjbGFzc10pLCBidXR0b25bY2xhc3NdID4gcDpub3QoW2NsYXNzXSkge1xuICBmb250LXNpemU6IGluaGVyaXQ7XG4gIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgbGV0dGVyLXNwYWNpbmc6IGluaGVyaXQ7XG59XG5cbi8qKlxuICogVGV4dGFyZWFcbiAqXG4gKiBHcm91cDogRWxlbWVudHNcbiAqL1xudGV4dGFyZWEge1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXhzKTtcbiAgYm9yZGVyOiBub25lO1xuICBmb250LXNpemU6IHZhcigtLWJvZHktZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tYm9keS1saW5lLWhlaWdodCk7XG4gIHRleHQtaW5kZW50OiAwO1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgb3V0bGluZTogbm9uZTtcbn1cbnRleHRhcmVhOmhvdmVyLCB0ZXh0YXJlYTphY3RpdmUsIHRleHRhcmVhOmZvY3VzIHtcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dDtcbn1cblxuLyoqXG4gKiBUaXRsZVxuICpcbiAqIEdyb3VwOiBFbGVtZW50c1xuICovXG4udGl0bGUtcGFnZSB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LXByaW1hcnkpO1xuICBmb250LXNpemU6IHZhcigtLWgyLWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1oMi1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1oMi1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbn1cbi50aXRsZS1zZWN0aW9uIHtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtcHJpbWFyeSk7XG4gIGZvbnQtc2l6ZTogdmFyKC0taDItZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWgyLWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWgyLWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLTIwMCk7XG59XG5cbi8qKlxuICogVmlkZW9cbiAqIEdyb3VwOiBFbGVtZW50c1xuICovXG4udmlkZW8ge1xuICBhc3BlY3QtcmF0aW86IDE2Lzk7XG4gIG1pbi13aWR0aDogMzIwcHg7XG4gIG1pbi1oZWlnaHQ6IDE4MHB4O1xuICBtYXgtd2lkdGg6IDE5MjBweDtcbiAgbWF4LWhlaWdodDogMTA4MHB4O1xufVxuXG4vKipcbiAqIE9iamVjdHMgTWFpblxuICogR3JvdXA6IE9iamVjdHNcbiAqL1xuLyoqXG4gKiBBcnRpY2xlcyBHcm91cFxuICogR3JvdXA6IE9iamVjdHNcbiAqL1xuLm8tYXJ0aWNsZXMtZ3JvdXBfX25ld3Mge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBnYXA6IHZhcigtLXNwYWNpbmctMjAwKTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAuby1hcnRpY2xlcy1ncm91cF9fbmV3cyB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgxMiwgMWZyKTtcbiAgICBncmlkLXRlbXBsYXRlLXJvd3M6IDFmciAyZnI7XG4gIH1cbn1cbi5vLWFydGljbGVzLWdyb3VwX19uZXdzLWl0ZW0ge1xuICBtaW4taGVpZ2h0OiAwO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5vLWFydGljbGVzLWdyb3VwX19uZXdzLWl0ZW06bnRoLWNoaWxkKDEpIHtcbiAgICBncmlkLWNvbHVtbjogMS9zcGFuIDY7XG4gICAgZ3JpZC1yb3c6IDEvc3BhbiAyO1xuICB9XG4gIC5vLWFydGljbGVzLWdyb3VwX19uZXdzLWl0ZW06bnRoLWNoaWxkKDIpIHtcbiAgICBncmlkLWNvbHVtbjogNy9zcGFuIDY7XG4gICAgZ3JpZC1yb3c6IDE7XG4gIH1cbiAgLm8tYXJ0aWNsZXMtZ3JvdXBfX25ld3MtaXRlbTpudGgtY2hpbGQoMykge1xuICAgIGdyaWQtY29sdW1uOiA3L3NwYW4gNjtcbiAgICBncmlkLXJvdzogMjtcbiAgfVxufVxuLm8tYXJ0aWNsZXMtZ3JvdXBfX3ByZXNzIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ2FwOiB2YXIoLS1zcGFjaW5nLTI1MCk7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1pbmxpbmU6IGF1dG87XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLm8tYXJ0aWNsZXMtZ3JvdXBfX3ByZXNzIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5vLWFydGljbGVzLWdyb3VwX19wcmVzcyB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTtcbiAgICBnYXA6IHZhcigtLXNwYWNpbmctMTAwKSB2YXIoLS1zcGFjaW5nLTI1MCk7XG4gIH1cbn1cblxuLyoqXG4gKiBBc3BlY3QgUmF0aW9cbiAqIEdyb3VwOiBPYmplY3RzXG4gKiBsaW5rOiBodHRwczovL3R3aXR0ZXIuY29tL2Nzc3dpemFyZHJ5L3N0YXR1cy8xMjY3MDQ2MjE0MDY5MDMwOTEyXG4gKi9cbkBzdXBwb3J0cyAocGFkZGluZy10b3A6IGNhbGModmFyKC0taGVpZ2h0KSAvIHZhcigtLXdpZHRoKSAqIDEwMCUpKSB7XG4gIC5vLWFzcGVjdC1yYXRpbyB7XG4gICAgLS13aWR0aDogMTY7XG4gICAgLS1oZWlnaHQ6IDk7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIH1cbiAgLm8tYXNwZWN0LXJhdGlvOjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nLXRvcDogY2FsYyh2YXIoLS1oZWlnaHQpIC8gdmFyKC0td2lkdGgpICogMTAwJSk7XG4gIH1cbiAgLm8tYXNwZWN0LXJhdGlvID4gZGl2LFxuICAuby1hc3BlY3QtcmF0aW8gPiBpbWcsXG4gIC5vLWFzcGVjdC1yYXRpbyA+IHZpZGVvLFxuICAuby1hc3BlY3QtcmF0aW8gPiBpZnJhbWUge1xuICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8qIEFwcGx5IGFzcGVjdCByYXRpbyB0byBjb250YWluZXIgKi9cbi5oYXMtYXNwZWN0LXJhdGlvIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLmhhcy1hc3BlY3QtcmF0aW86OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLmhhcy1hc3BlY3QtcmF0aW8gPiBkaXYge1xuICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xufVxuLmhhcy1hc3BlY3QtcmF0aW8gaWZyYW1lIHtcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLyoqXG4gKiBDb250YWluZXJcbiAqIEdyb3VwOiBPYmplY3RzXG4gKi9cbi5vLWNvbnRhaW5lciB7XG4gIG1heC13aWR0aDogdmFyKC0tbWF4LXdpZHRoLS0yeGwpO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZy1pbmxpbmU6IHZhcigtLXNwYWNpbmctMTAwKTtcbiAgbWFyZ2luLWlubGluZTogYXV0bztcbiAgLyogQ29udGFpbmVyIGluc2lkZSBhIGNvbnRhaW5lciAqL1xuICAvKiBDb250YWluZXIgaW5zaWRlIGEgY29udGFpbmVyIGJ1dCB3aXRoIGZ1bGx3aWR0aCBjbGFzcyBiZXR3ZWVuIHRoZW0gKi9cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuby1jb250YWluZXIge1xuICAgIHBhZGRpbmctaW5saW5lOiB2YXIoLS1zcGFjaW5nLTIwMCk7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAuby1jb250YWluZXIge1xuICAgIHBhZGRpbmctaW5saW5lOiB2YXIoLS1zcGFjaW5nLTMwMCk7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLm8tY29udGFpbmVyIHtcbiAgICBwYWRkaW5nLWlubGluZTogdmFyKC0tc3BhY2luZy00MDApO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTQ0MHB4KSB7XG4gIC5vLWNvbnRhaW5lciB7XG4gICAgcGFkZGluZy1pbmxpbmU6IHZhcigtLXNwYWNpbmctNTAwKTtcbiAgfVxufVxuLm8tY29udGFpbmVyIFtjbGFzc149by1jb250YWluZXJdLFxuLm8tY29udGFpbmVyIFtjbGFzcyo9XCIgby1jb250YWluZXJcIl0ge1xuICBwYWRkaW5nLWlubGluZTogMDtcbn1cbi5vLWNvbnRhaW5lciAudS1mdWxsLXdpZHRoIFtjbGFzc149by1jb250YWluZXJdLFxuLm8tY29udGFpbmVyIC51LWZ1bGwtd2lkdGggW2NsYXNzKj1cIiBvLWNvbnRhaW5lclwiXSB7XG4gIHBhZGRpbmctaW5saW5lOiB2YXIoLS1zcGFjaW5nLTEwMCk7XG59XG5cbi8qKlxuICogQ29va2llIERpYWxvZ1xuICogR3JvdXA6IE9iamVjdHNcbiAqL1xuLm8tY29va2llLWRpYWxvZ19fY29udGFpbmVyIHtcbiAgYm94LXNoYWRvdzogdmFyKC0tYm94LXNoYWRvdy1saWdodC0wMyk7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgYm90dG9tOiB2YXIoLS1zcGFjaW5nLTE1MCk7XG4gIGxlZnQ6IDA7XG4gIG1hcmdpbi1pbmxpbmU6IHZhcigtLXNwYWNpbmctMTUwKTtcbiAgbWF4LXdpZHRoOiA0NXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtbGlnaHQtZ3JheSk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXNwYWNpbmctMTAwKTtcbiAgYm9yZGVyOiAzcHggc29saWQgdmFyKC0tY29sb3ItYnJhbmQtb3JhbmdlKTtcbiAgcGFkZGluZzogdmFyKC0tc3BhY2luZy0yMDApO1xufVxuLm8tY29va2llLWRpYWxvZ19fdGl0bGUge1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1wcmltYXJ5KTtcbiAgZm9udC1zaXplOiB2YXIoLS1oMy1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0taDMtbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0taDMtbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctMTAwKTtcbn1cbi5vLWNvb2tpZS1kaWFsb2dfX2Rlc2NyaXB0aW9uIHtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy0yMDApO1xufVxuLm8tY29va2llLWRpYWxvZ19fYnV0dG9uIHtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLW0pO1xuICBib3JkZXItd2lkdGg6IHZhcigtLWJ1dHRvbi1ib3JkZXItd2lkdGgpO1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICBmb250LXNpemU6IHZhcigtLWJvZHktZm9udC1zaXplKTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXN0cmV0Y2g6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGVhZGluZy1ub25lKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLXRyYWNraW5nLW5vcm1hbCk7XG4gIHBhZGRpbmctYmxvY2s6IHZhcigtLXNwYWNpbmctMDc1KTtcbiAgcGFkZGluZy1pbmxpbmU6IHZhcigtLXNwYWNpbmctMTAwKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBmb250LXNpemU6IHZhcigtLWJvZHktZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tdHJhY2tpbmctbm9ybWFsKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxlYWRpbmctbm9uZSk7XG4gIHdpZHRoOiB2YXIoLS1zcGFjaW5nLTEyMDApO1xuICBoZWlnaHQ6IHZhcigtLWJ1dHRvbi1zaXplKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYnRuLXJhZGl1cy1sZyk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItbGlnaHQpO1xufVxuLm8tY29va2llLWRpYWxvZ19fYnV0dG9uOmhvdmVyLCAuby1jb29raWUtZGlhbG9nX19idXR0b246YWN0aXZlLCAuby1jb29raWUtZGlhbG9nX19idXR0b246Zm9jdXMge1xuICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dCwgdHJhbnNmb3JtIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0LCBvcGFjaXR5IHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0O1xufVxuLm8tY29va2llLWRpYWxvZ19fYnV0dG9uOmhvdmVyOmFjdGl2ZSwgLm8tY29va2llLWRpYWxvZ19fYnV0dG9uOmFjdGl2ZTphY3RpdmUsIC5vLWNvb2tpZS1kaWFsb2dfX2J1dHRvbjpmb2N1czphY3RpdmUge1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuOSk7XG59XG4uby1jb29raWUtZGlhbG9nX19idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1saWdodGVyLWdyYXkpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG59XG4uby1jb29raWUtZGlhbG9nX19idXR0b246Zm9jdXMge1xuICBvdXRsaW5lLWNvbG9yOiB2YXIoLS1jb2xvci1mb2N1cy1zdHJva2UpO1xufVxuLm8tY29va2llLWRpYWxvZ19fYnV0dG9uLWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogdmFyKC0tc3BhY2luZy0xNTApO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSB7XG4gIC5vLWNvb2tpZS1kaWFsb2dfX2J1dHRvbi1jb250YWluZXIge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgZ2FwOiB2YXIoLS1zcGFjaW5nLTIwMCk7XG4gIH1cbn1cbi5vLWNvb2tpZS1kaWFsb2dfX2Nsb3NlLWJ1dHRvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxcmVtO1xuICByaWdodDogMXJlbTtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LXNtYWxsLWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ib2xkKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLXRyYWNraW5nLW5vcm1hbCk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1sZWFkaW5nLXRpZ2h0KTtcbiAgcGFkZGluZy1ibG9jazogdmFyKC0tc3BhY2luZy0wMjUpO1xuICBwYWRkaW5nLWlubGluZTogdmFyKC0tc3BhY2luZy0wNzUpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1idG4tcmFkaXVzLWZ1bGwpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtb3JhbmdlKTtcbn1cblxuLyoqXG4gKiBEcm9wZG93blxuICogR3JvdXA6IE9iamVjdHNcbiAqL1xuLm8tZHJvcGRvd24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgZWFzZS1pbi1vdXQgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbik7XG59XG4uby1kcm9wZG93bl9fbGlzdCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMDAlO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgei1pbmRleDogNTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtc2VhcmNoLWdyYXkpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtZ3JheSk7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtbCk7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLWwpO1xuICBwYWRkaW5nLWJsb2NrOiB2YXIoLS1zcGFjaW5nLTAyNSkgdmFyKC0tc3BhY2luZy0xNTApO1xuICBtYXgtaGVpZ2h0OiBjbGFtcCh2YXIoLS1zcGFjaW5nLTEyMDApLCA0NWR2aCwgdmFyKC0tc3BhY2luZy0yNDAwKSk7XG4gIG92ZXJmbG93OiBhdXRvO1xufVxuLm8tZHJvcGRvd25fX2xpc3QtaXRlbSB7XG4gIGJvcmRlci1ib3R0b206IDFweCBkYXNoZWQgdmFyKC0tY29sb3ItZGFyayk7XG4gIHBhZGRpbmctaW5saW5lOiB2YXIoLS1zcGFjaW5nLTE1MCk7XG4gIHBhZGRpbmctYmxvY2s6IHZhcigtLXNwYWNpbmctMDUwKTtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuLm8tZHJvcGRvd25fX2xpc3QtaXRlbVthcmlhLXNlbGVjdGVkPXRydWVdIHtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xufVxuLm8tZHJvcGRvd25fX3RvZ2dsZS1idXR0b24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDM7XG4gIGZsZXg6IDE7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYm9yZGVyOiBub25lO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLTEwMCkgdmFyKC0tc3BhY2luZy0xNTApO1xuICBjb2xvcjogaW5oZXJpdDtcbn1cbi5vLWRyb3Bkb3duX19kaXNwbGF5IHtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuLm8tZHJvcGRvd25fX2ljb24ge1xuICB3aWR0aDogdmFyKC0taWNvbi1tcyk7XG4gIGhlaWdodDogdmFyKC0taWNvbi14cyk7XG4gIGZsZXg6IDAgMCBhdXRvO1xufVxuLm8tZHJvcGRvd25bYXJpYS1leHBhbmRlZD1mYWxzZV0gLm8tZHJvcGRvd25fX2xpc3Qge1xuICBkaXNwbGF5OiBub25lO1xufVxuLm8tZHJvcGRvd25bYXJpYS1leHBhbmRlZD10cnVlXSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLW9yYW5nZSk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1saWdodCk7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xufVxuLm8tZHJvcGRvd25bYXJpYS1leHBhbmRlZD10cnVlXSAuby1kcm9wZG93bl9fbGlzdCB7XG4gIGFuaW1hdGlvbjogZmFkZS1pbiB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluIGZvcndhcmRzLCBzbGlkZS1ib3VuY2UtZG93biB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLW91dCBmb3J3YXJkcztcbn1cbi5vLWRyb3Bkb3duW2FyaWEtZXhwYW5kZWQ9dHJ1ZV0gLm8tZHJvcGRvd25fX2ljb24ge1xuICBhbmltYXRpb246IHJvdGF0ZS0xODAgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbiBmb3J3YXJkcztcbn1cbi5vLWRyb3Bkb3duOmZvY3VzLXZpc2libGUge1xuICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWZvY3VzLXN0cm9rZSk7XG59XG5cbi8qKlxuICogRmlsdGVycyBHcm91cFxuICogR3JvdXA6IE9iamVjdHNcbiAqL1xuLm8tZmlsdGVyLWdyb3VwIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIGdhcDogdmFyKC0tc3BhY2luZy0yMDApO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5vLWZpbHRlci1ncm91cCB7XG4gICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxNDQwcHgpIHtcbiAgLm8tZmlsdGVyLWdyb3VwIHtcbiAgICByb3ctZ2FwOiB2YXIoLS1zcGFjaW5nLTEwMCk7XG4gIH1cbn1cblxuLyoqXG4gKiBJY29uIEdyb3VwXG4gKiBHcm91cDogT2JqZWN0c1xuICovXG4uby1pY29uLWdyb3VwIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiByb3cgbm93cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogdmFyKC0tc3BhY2luZy0xNTApO1xufVxuXG4vKipcbiAqIExpbmsgYm94IGdyb3VwXG4gKiBHcm91cDogT2JqZWN0c1xuICovXG4uby1saW5rLWJveC1ncm91cCB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdhcDogdmFyKC0tc3BhY2luZy0yNTApO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuby1saW5rLWJveC1ncm91cCB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAuby1saW5rLWJveC1ncm91cCB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTtcbiAgfVxufVxuXG4vKipcbiAqIE1haW5cbiAqXG4gKiBHcm91cDogT2JqZWN0c1xuICovXG4vKipcbiAqIE1vZGFsXG4gKiBHcm91cDogT2JqZWN0c1xuICovXG4vKipcbiAqIFBhZ2VcbiAqIEdyb3VwOiBPYmplY3RzXG4gKi9cbi5vLXBhZ2UtLWxheW91dC13aXRoLXNpZGViYXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIGdhcDogdmFyKC0tc3BhY2luZy00MDApO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5vLXBhZ2UtLWxheW91dC13aXRoLXNpZGViYXIge1xuICAgIGZsZXgtZmxvdzogcm93IG5vd3JhcDtcbiAgfVxufVxuLm8tcGFnZS0tbGF5b3V0LXdpdGgtc2lkZWJhci1hbmQtbWFwIHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cbi5vLXBhZ2VfX21haW4ge1xuICBmbGV4OiAxO1xufVxuLm8tcGFnZV9fbWFpbiA+IC5vLXNlY3Rpb246Zmlyc3QtY2hpbGQge1xuICBwYWRkaW5nLXRvcDogMDtcbn1cbi5vLXBhZ2VfX3NpZGViYXIge1xuICBmbGV4OiAxIDAgYXV0bztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXgtd2lkdGg6IHZhcigtLW1heC13aWR0aC0tNHhzKTtcbiAgbWFyZ2luLWlubGluZTogYXV0bztcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAuby1wYWdlX19zaWRlYmFyIHtcbiAgICBtYXJnaW4taW5saW5lOiBpbml0aWFsO1xuICB9XG59XG5cbi8qKlxuICogU2VjdGlvblxuICogR3JvdXA6IE9iamVjdHNcbiAqL1xuLm8tc2VjdGlvbiB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgcGFkZGluZy1ibG9jazogdmFyKC0tc3BhY2luZy00MDApO1xufVxuLyoqXG4gKiBCTE9DS1MgTUFJTiBGSUxFXG4gKi9cbi8qKlxuICogQWxlcnRcbiAqIEdyb3VwOiBDb21wb25lbnRzXG4gKi9cbi5jLWFsZXJ0LS1sYXlvdXQge1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXMpO1xuICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLTE1MCk7XG59XG4uYy1hbGVydC0taW5mbyB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlLWxpZ2h0KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZS1saWdodC1zZW1pLXRyYW5zcGFyZW50KTtcbn1cbi5jLWFsZXJ0LS1zdWNjZXNzIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWFsZXJ0LWdyZWVuLWRhcmspO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ncmVlbik7XG59XG4uYy1hbGVydC0td2FybmluZyB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1icm93bik7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJyb3duLXNlbWktdHJhbnNwYXJlbnQpO1xufVxuLmMtYWxlcnQtLWRhbmdlciB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1kYXJrLXJlZCk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLXJlZC1zZW1pLXRyYW5zcGFyZW50KTtcbn1cbi5jLWFsZXJ0LS1zbGlkZS11cCB7XG4gIGFuaW1hdGlvbjogc2xpZGUtdXAgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZSBmb3J3YXJkcztcbn1cbi5jLWFsZXJ0LS1mYWRlLW91dCB7XG4gIGFuaW1hdGlvbjogZmFkZS1vdXQgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbi1tZWRpdW0pIGVhc2UgZm9yd2FyZHM7XG59XG4uYy1hbGVydF9fdGl0bGUge1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1wcmltYXJ5KTtcbiAgZm9udC1zaXplOiB2YXIoLS1oMy1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0taDMtbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0taDMtbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctMDUwKTtcbn1cbi5jLWFsZXJ0X190ZXh0IHtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1ib2R5LWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWJvZHktbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG59XG5cbi8qKlxuICogQnJlYWRjcnVtYlxuICogR3JvdXA6IENvbXBvbmVudHNcbiAqL1xuLmMtYnJlYWRjcnVtYl9fbGlzdCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogdmFyKC0tc3BhY2luZy0wNTApO1xufVxuLmMtYnJlYWRjcnVtYl9faXRlbSB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1zbWFsbC1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tYm9keS1zbWFsbC1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LXNtYWxsLWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGdhcDogdmFyKC0tc3BhY2luZy0wNTApO1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtbGlnaHQtZ3JheSk7XG59XG4uYy1icmVhZGNydW1iX19pdGVtLWxpbmsge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbi5jLWJyZWFkY3J1bWJfX2l0ZW0tbGluazpob3ZlciB7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuLmMtYnJlYWRjcnVtYl9faXRlbVthcmlhLWN1cnJlbnQ9cGFnZV0ge1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtb3JhbmdlKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xufVxuLmMtYnJlYWRjcnVtYl9fc3BhY2VyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1saWdodC1ncmF5KTtcbn1cblxuLyoqXG4gKiBDb250YWN0XG4gKiBHcm91cDogQ29tcG9uZW50c1xuICovXG4uYy1jb250YWN0IC5vLXNlY3Rpb24sXG4uYy1jb250YWN0IC5jLWFsZXJ0IHtcbiAgcGFkZGluZy1ibG9jazogMCB2YXIoLS1zcGFjaW5nLTIwMCk7XG59XG4uYy1jb250YWN0LS1sYXlvdXQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7XG4gIGdhcDogdmFyKC0tc3BhY2luZy00MDApO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5jLWNvbnRhY3QtLWxheW91dCB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBnYXA6IHZhcigtLXNwYWNpbmctMjAwKTtcbiAgfVxufVxuLmMtY29udGFjdF9fbWFwLWNvbnRhaW5lciB7XG4gIGZsZXg6IDE7XG59XG4uYy1jb250YWN0X19mb3JtLWNvbnRhaW5lciB7XG4gIGZsZXg6IDE7XG59XG4uYy1jb250YWN0X19mb3JtLWNvbnRhaW5lciAuZmllbGQtdmFsaWRhdGlvbi1lcnJvciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGhlaWdodDogdmFyKC0tc3BhY2luZy0zMDApO1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtZGFyay1yZWQpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tYm9keS1saW5lLWhlaWdodCk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLXJlZC1zZW1pLXRyYW5zcGFyZW50KTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1sKTtcbiAgcGFkZGluZzogdmFyKC0tc3BhY2luZy0xMDApO1xuICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjaW5nLTA1MCk7XG59XG4uYy1jb250YWN0X19mb3JtLWNvbnRhaW5lciAudW1icmFjby1mb3Jtcy1maWVsZHNldCB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1saWdodCk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1zcGFjaW5nLTE1MCk7XG4gIGJvcmRlcjogbm9uZTtcbiAgcGFkZGluZzogdmFyKC0tc3BhY2luZy0xNTApO1xufVxuLmMtY29udGFjdF9fZm9ybS1jb250YWluZXIgLnVtYnJhY28tZm9ybXMtZmllbGQge1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLTEwMCk7XG59XG4uYy1jb250YWN0X19mb3JtLWNvbnRhaW5lciAudW1icmFjby1mb3Jtcy1sYWJlbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZy1sZWZ0OiB2YXIoLS1zcGFjaW5nLTA3NSk7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctMDUwKTtcbn1cbi5jLWNvbnRhY3RfX2Zvcm0tY29udGFpbmVyIGlucHV0LFxuLmMtY29udGFjdF9fZm9ybS1jb250YWluZXIgdGV4dGFyZWEge1xuICBmb250LXNpemU6IHZhcigtLWJvZHktZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tdHJhY2tpbmctbm9ybWFsKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxlYWRpbmctbm9uZSk7XG4gIHdpZHRoOiB2YXIoLS1zcGFjaW5nLTEyMDApO1xuICBoZWlnaHQ6IHZhcigtLWJ1dHRvbi1zaXplKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYnRuLXJhZGl1cy1sZyk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMteHMpO1xuICBib3JkZXI6IG5vbmU7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LWxpbmUtaGVpZ2h0KTtcbiAgdGV4dC1pbmRlbnQ6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLXNlYXJjaC1ncmF5KTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1sKTtcbiAgaGVpZ2h0OiB2YXIoLS1zcGFjaW5nLTMwMCk7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IG5vd3JhcDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZzogdmFyKC0tc3BhY2luZy0xMDApO1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IHZhcigtLXNwYWNpbmctMzUwKTtcbn1cbi5jLWNvbnRhY3RfX2Zvcm0tY29udGFpbmVyIGlucHV0OmhvdmVyLCAuYy1jb250YWN0X19mb3JtLWNvbnRhaW5lciBpbnB1dDphY3RpdmUsIC5jLWNvbnRhY3RfX2Zvcm0tY29udGFpbmVyIGlucHV0OmZvY3VzLFxuLmMtY29udGFjdF9fZm9ybS1jb250YWluZXIgdGV4dGFyZWE6aG92ZXIsXG4uYy1jb250YWN0X19mb3JtLWNvbnRhaW5lciB0ZXh0YXJlYTphY3RpdmUsXG4uYy1jb250YWN0X19mb3JtLWNvbnRhaW5lciB0ZXh0YXJlYTpmb2N1cyB7XG4gIHRyYW5zaXRpb246IGJveC1zaGFkb3cgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQ7XG59XG4uYy1jb250YWN0X19mb3JtLWNvbnRhaW5lciBpbnB1dDpob3Zlcixcbi5jLWNvbnRhY3RfX2Zvcm0tY29udGFpbmVyIHRleHRhcmVhOmhvdmVyIHtcbiAgYm94LXNoYWRvdzogdmFyKC0tYm94LXNoYWRvdy1saWdodC0wMyk7XG59XG4uYy1jb250YWN0X19mb3JtLWNvbnRhaW5lciBpbnB1dCBpbnB1dCxcbi5jLWNvbnRhY3RfX2Zvcm0tY29udGFpbmVyIHRleHRhcmVhIGlucHV0IHtcbiAgaGVpZ2h0OiB2YXIoLS1pbnB1dC1oZWlnaHQtbWVkaXVtKTtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIHdpZHRoOiAxMDAlO1xuICBmb250LXNpemU6IHZhcigtLWJvZHktZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWJvZHktbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tYm9keS1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbn1cbi5jLWNvbnRhY3RfX2Zvcm0tY29udGFpbmVyIGlucHV0IGlucHV0OjpwbGFjZWhvbGRlcixcbi5jLWNvbnRhY3RfX2Zvcm0tY29udGFpbmVyIHRleHRhcmVhIGlucHV0OjpwbGFjZWhvbGRlciB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tYm9keS1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG59XG4uYy1jb250YWN0X19mb3JtLWNvbnRhaW5lciBpbnB1dCBpbnB1dDo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlcixcbi5jLWNvbnRhY3RfX2Zvcm0tY29udGFpbmVyIHRleHRhcmVhIGlucHV0Ojotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1ib2R5LWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWJvZHktbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcbn1cbi5jLWNvbnRhY3RfX2Zvcm0tY29udGFpbmVyIGlucHV0IGlucHV0OjotbW96LXBsYWNlaG9sZGVyLFxuLmMtY29udGFjdF9fZm9ybS1jb250YWluZXIgdGV4dGFyZWEgaW5wdXQ6Oi1tb3otcGxhY2Vob2xkZXIge1xuICBmb250LXNpemU6IHZhcigtLWJvZHktZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWJvZHktbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tYm9keS1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xuICBvcGFjaXR5OiAxO1xufVxuLmMtY29udGFjdF9fZm9ybS1jb250YWluZXIgaW5wdXQgaW5wdXQ6LW1zLWlucHV0LXBsYWNlaG9sZGVyLFxuLmMtY29udGFjdF9fZm9ybS1jb250YWluZXIgdGV4dGFyZWEgaW5wdXQ6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1ib2R5LWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWJvZHktbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcbn1cbi5jLWNvbnRhY3RfX2Zvcm0tY29udGFpbmVyIGlucHV0IGlucHV0OmZvY3VzLFxuLmMtY29udGFjdF9fZm9ybS1jb250YWluZXIgdGV4dGFyZWEgaW5wdXQ6Zm9jdXMge1xuICBvdXRsaW5lOiAycHggc29saWQgdmFyKC0tY29sb3ItZm9jdXMtc3Ryb2tlKTtcbiAgb3V0bGluZS1vZmZzZXQ6IDFweDtcbn1cbi5jLWNvbnRhY3RfX2Zvcm0tY29udGFpbmVyIHRleHRhcmVhIHtcbiAgaGVpZ2h0OiB2YXIoLS1zcGFjaW5nLTEwMDApO1xufVxuLmMtY29udGFjdF9fZm9ybS1jb250YWluZXIgaW5wdXRbdHlwZT1zdWJtaXRdIHtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLW0pO1xuICBib3JkZXItd2lkdGg6IHZhcigtLWJ1dHRvbi1ib3JkZXItd2lkdGgpO1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICBmb250LXNpemU6IHZhcigtLWJvZHktZm9udC1zaXplKTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXN0cmV0Y2g6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGVhZGluZy1ub25lKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLXRyYWNraW5nLW5vcm1hbCk7XG4gIHBhZGRpbmctYmxvY2s6IHZhcigtLXNwYWNpbmctMDc1KTtcbiAgcGFkZGluZy1pbmxpbmU6IHZhcigtLXNwYWNpbmctMTAwKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBmb250LXNpemU6IHZhcigtLWJvZHktZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tdHJhY2tpbmctbm9ybWFsKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxlYWRpbmctbm9uZSk7XG4gIHdpZHRoOiB2YXIoLS1zcGFjaW5nLTEyMDApO1xuICBoZWlnaHQ6IHZhcigtLWJ1dHRvbi1zaXplKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYnRuLXJhZGl1cy1sZyk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLW9yYW5nZSk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtb3JhbmdlKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWRhcmstZ3JheSk7XG4gIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmctMTUwKTtcbn1cbi5jLWNvbnRhY3RfX2Zvcm0tY29udGFpbmVyIGlucHV0W3R5cGU9c3VibWl0XTpob3ZlciwgLmMtY29udGFjdF9fZm9ybS1jb250YWluZXIgaW5wdXRbdHlwZT1zdWJtaXRdOmFjdGl2ZSwgLmMtY29udGFjdF9fZm9ybS1jb250YWluZXIgaW5wdXRbdHlwZT1zdWJtaXRdOmZvY3VzIHtcbiAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQsIHRyYW5zZm9ybSB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dCwgb3BhY2l0eSB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dDtcbn1cbi5jLWNvbnRhY3RfX2Zvcm0tY29udGFpbmVyIGlucHV0W3R5cGU9c3VibWl0XTpob3ZlcjphY3RpdmUsIC5jLWNvbnRhY3RfX2Zvcm0tY29udGFpbmVyIGlucHV0W3R5cGU9c3VibWl0XTphY3RpdmU6YWN0aXZlLCAuYy1jb250YWN0X19mb3JtLWNvbnRhaW5lciBpbnB1dFt0eXBlPXN1Ym1pdF06Zm9jdXM6YWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjkpO1xufVxuLmMtY29udGFjdF9fZm9ybS1jb250YWluZXIgaW5wdXRbdHlwZT1zdWJtaXRdOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtbGlnaHQtZ3JheSk7XG59XG4uYy1jb250YWN0X19mb3JtLWNvbnRhaW5lciBpbnB1dFt0eXBlPXN1Ym1pdF06Zm9jdXMge1xuICBvdXRsaW5lLWNvbG9yOiB2YXIoLS1jb2xvci1mb2N1cy1zdHJva2UpO1xufVxuLmMtY29udGFjdF9fZm9ybS1jb250YWluZXIgc2VsZWN0IHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogdmFyKC0tc3BhY2luZy0zNTApO1xufVxuLmMtY29udGFjdF9fZm9ybS1jb250YWluZXIgLnVtYnJhY28tZm9ybXMtaGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyoqXG4gKiBDb29raWVzXG4gKiBHcm91cDogQ29tcG9uZW50c1xuICovXG4uYy1jb29raWVzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG4gIHBhZGRpbmctYmxvY2s6IHZhcigtLXNwYWNpbmctNTAwKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0KTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuLmMtY29va2llc19fdGl0bGUge1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1wcmltYXJ5KTtcbiAgZm9udC1zaXplOiB2YXIoLS1oMi1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0taDItbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0taDItbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctMTAwKTtcbn1cbi5jLWNvb2tpZXNfX2Rlc2NyaXB0aW9uIHtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LXNtYWxsLWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1ib2R5LXNtYWxsLWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWJvZHktc21hbGwtbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctMjAwKTtcbn1cbi5jLWNvb2tpZXNfX2xhYmVsIHtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1ib2R5LWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWJvZHktbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG59XG4uYy1jb29raWVzX19idXR0b24ge1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtbSk7XG4gIGJvcmRlci13aWR0aDogdmFyKC0tYnV0dG9uLWJvcmRlci13aWR0aCk7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1mb250LXNpemUpO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtc3RyZXRjaDogbm9ybWFsO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1sZWFkaW5nLW5vbmUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tdHJhY2tpbmctbm9ybWFsKTtcbiAgcGFkZGluZy1ibG9jazogdmFyKC0tc3BhY2luZy0wNzUpO1xuICBwYWRkaW5nLWlubGluZTogdmFyKC0tc3BhY2luZy0xMDApO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZCk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS10cmFja2luZy1ub3JtYWwpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGVhZGluZy1ub25lKTtcbiAgd2lkdGg6IHZhcigtLXNwYWNpbmctMTIwMCk7XG4gIGhlaWdodDogdmFyKC0tYnV0dG9uLXNpemUpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1idG4tcmFkaXVzLWxnKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtb3JhbmdlKTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1vcmFuZ2UpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtZGFyay1ncmF5KTtcbn1cbi5jLWNvb2tpZXNfX2J1dHRvbjpob3ZlciwgLmMtY29va2llc19fYnV0dG9uOmFjdGl2ZSwgLmMtY29va2llc19fYnV0dG9uOmZvY3VzIHtcbiAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQsIHRyYW5zZm9ybSB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dCwgb3BhY2l0eSB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dDtcbn1cbi5jLWNvb2tpZXNfX2J1dHRvbjpob3ZlcjphY3RpdmUsIC5jLWNvb2tpZXNfX2J1dHRvbjphY3RpdmU6YWN0aXZlLCAuYy1jb29raWVzX19idXR0b246Zm9jdXM6YWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjkpO1xufVxuLmMtY29va2llc19fYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtbGlnaHQtZ3JheSk7XG59XG4uYy1jb29raWVzX19idXR0b246Zm9jdXMge1xuICBvdXRsaW5lLWNvbG9yOiB2YXIoLS1jb2xvci1mb2N1cy1zdHJva2UpO1xufVxuXG4vKipcbiAqIERvY3VtZW50YXRpb24gbGlzdGluZ1xuICogR3JvdXA6IENvbXBvbmVudHNcbiAqL1xuLmMtZG9jdW1lbnQtbGlzdGluZ19faXRlbSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiB2YXIoLS1zcGFjaW5nLTA3NSk7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1jb2xvci1icmFuZC1vcmFuZ2UpO1xuICBwYWRkaW5nLWJsb2NrOiB2YXIoLS1zcGFjaW5nLTIwMCk7XG4gIHBhZGRpbmctaW5saW5lOiB2YXIoLS1zcGFjaW5nLTEyNSk7XG59XG4uYy1kb2N1bWVudC1saXN0aW5nX19pdGVtOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtbGlnaHRlci1ncmF5KTtcbn1cbi5jLWRvY3VtZW50LWxpc3RpbmdfX2l0ZW0tdGl0bGUge1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1wcmltYXJ5KTtcbiAgZm9udC1zaXplOiB2YXIoLS1oNi1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0taDYtbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0taDYtbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZCk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1saWdodCk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xuICBwYWRkaW5nLWJsb2NrOiB2YXIoLS1zcGFjaW5nLTIwMCk7XG4gIHBhZGRpbmctaW5saW5lOiB2YXIoLS1zcGFjaW5nLTA1MCk7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1jb2xvci1icmFuZC1vcmFuZ2UpO1xufVxuLmMtZG9jdW1lbnQtbGlzdGluZ19faXRlbS1saW5rIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbi5jLWRvY3VtZW50LWxpc3RpbmdfX2l0ZW0tbGluazpob3ZlciB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1vcmFuZ2UpO1xufVxuXG4vKipcbiAqIEZpbHRlclxuICogR3JvdXA6IENvbXBvbmVudHNcbiAqL1xuLmMtZmlsdGVyLS1sYXlvdXQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xuICBwYWRkaW5nLWJsb2NrOiB2YXIoLS1zcGFjaW5nLTQwMCkgdmFyKC0tc3BhY2luZy0zMDApO1xuICBwYWRkaW5nLWlubGluZTogdmFyKC0tc3BhY2luZy0xMDApO1xufVxuLmMtZmlsdGVyX19jb250YWluZXIge1xuICBtYXgtd2lkdGg6IHZhcigtLW1heC13aWR0aC0tbWQpO1xuICBtYXJnaW4taW5saW5lOiBhdXRvO1xufVxuLmMtZmlsdGVyX190aXRsZSB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LXByaW1hcnkpO1xuICBmb250LXNpemU6IHZhcigtLWgyLWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1oMi1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1oMi1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy0xNTApO1xufVxuLmMtZmlsdGVyIC5jLWFsZXJ0IHtcbiAgbWF4LXdpZHRoOiB2YXIoLS1tYXgtd2lkdGgtLW1kKTtcbiAgbWFyZ2luLWlubGluZTogYXV0bztcbiAgbWFyZ2luLWJsb2NrOiB2YXIoLS1zcGFjaW5nLTI1MCkgMDtcbn1cblxuLyoqXG4gKiBGb290ZXJcbiAqIEdyb3VwOiBDb21wb25lbnRzXG4gKi9cbi5jLWZvb3RlciB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC13aGl0ZSk7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLXRvcDogYXV0bztcbn1cbi5jLWZvb3Rlcl9fbWFpbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xufVxuLmMtZm9vdGVyX19tYWluLWlubmVyIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMSwgMWZyKTtcbiAgZ2FwOiAzcmVtO1xuICBwYWRkaW5nLWJsb2NrOiB2YXIoLS1zcGFjaW5nLTUwMCk7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHtcbiAgLmMtZm9vdGVyX19tYWluLWlubmVyIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xuICAgIGdhcDogNHJlbTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5jLWZvb3Rlcl9fbWFpbi1pbm5lciB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNCwgMWZyKTtcbiAgICBnYXA6IDRyZW07XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxNDQwcHgpIHtcbiAgLmMtZm9vdGVyX19tYWluLWlubmVyIHtcbiAgICBnYXA6IDEwcmVtO1xuICB9XG59XG4uYy1mb290ZXJfX2xvZ28tdGV4dCB7XG4gIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmctMTUwKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWxpZ2h0LWdyYXkpO1xufVxuLmMtZm9vdGVyX19jb2x1bW4tdGl0bGUge1xuICBmb250LXNpemU6IHZhcigtLWJvZHktZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWJvZHktbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tYm9keS1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ib2xkKTtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy0wNzUpO1xufVxuLmMtZm9vdGVyX19jb2x1bW4tbGluayB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1zbWFsbC1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tYm9keS1zbWFsbC1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LXNtYWxsLWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG4uYy1mb290ZXJfX2NvbHVtbi1saW5rOmhvdmVyIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLW9yYW5nZSk7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTQ0MHB4KSB7XG4gIC5jLWZvb3Rlcl9fY29sdW1uOmZpcnN0LWNoaWxkIHtcbiAgICBtYXgtd2lkdGg6IDE2MHB4O1xuICB9XG59XG4uYy1mb290ZXJfX2JvdHRvbV9fbG9nb3MtY29udGFpbmVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgZ2FwOiAxcmVtO1xuICBwYWRkaW5nLWJsb2NrOiB2YXIoLS1zcGFjaW5nLTA3NSk7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmMtZm9vdGVyX19ib3R0b21fX2xvZ29zLWNvbnRhaW5lciB7XG4gICAgZ2FwOiAycmVtO1xuICB9XG59XG4uYy1mb290ZXJfX2JvdHRvbV9fbG9nbyB7XG4gIGhlaWdodDogdmFyKC0tc3BhY2luZy0zMDApO1xufVxuLmMtZm9vdGVyX19ib3R0b21fX2xvZ28gcGljdHVyZSxcbi5jLWZvb3Rlcl9fYm90dG9tX19sb2dvIGltZyB7XG4gIGhlaWdodDogMTAwJTtcbn1cbi5jLWZvb3Rlcl9fYm90dG9tX19jb3B5cmlnaHQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0KTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nLWJsb2NrOiB2YXIoLS1zcGFjaW5nLTEyNSk7XG59XG4uYy1mb290ZXJfX2JvdHRvbV9fY29weXJpZ2h0LXRleHQge1xuICBmb250LXNpemU6IHZhcigtLWJvZHktZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWJvZHktbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tYm9keS1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbn1cblxuLyoqXG4gKiBIZWFkZXIgTWFpblxuICogR3JvdXA6IEN1c3RvbSBDb21wb25lbnRzXG4gKi9cbi5jLWhlYWRlciB7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICB6LWluZGV4OiAxMDtcbiAgLypcbiAgICogSGVhZGVyIFBhcnRzXG4gICAqL1xuICAvKiBCcmFuZGluZyAqL1xuICAvKlxuICAgKiBTZWFyY2ggY29udGFpbmVyIGluIG1haW4gd2l0aCB0b2dnbGUgYnV0dG9uc1xuICAgKi9cbiAgLypcbiAgICogTWFpbiBtZW51IHRvZ2dsZSBwYXJ0c1xuICAgKi9cbn1cbi5jLWhlYWRlcl9fdG9wLWJhciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xufVxuLmMtaGVhZGVyX190b3AtYmFyLWlubmVyIHtcbiAgaGVpZ2h0OiB2YXIoLS1oZWFkZXItdG9wLWJhci1oZWlnaHQpO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1saWdodCk7XG59XG4uYy1oZWFkZXJfX3RvcC1iYXItaW5uZXIgLnNlYXJjaCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLmMtaGVhZGVyX190b3AtYmFyLWlubmVyIC5zZWFyY2gge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAuYy1oZWFkZXJfX3RvcC1iYXItaW5uZXIgLnNvY2lhbC1saW5rcyB7XG4gICAgZ2FwOiB2YXIoLS1zcGFjaW5nLTMwMCk7XG4gIH1cbn1cbi5jLWhlYWRlcl9fbWFpbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5jLWhlYWRlcl9fbWFpbi1pbm5lciB7XG4gIGhlaWdodDogdmFyKC0taGVhZGVyLW1haW4tYmFyLWhlaWdodCk7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG4uYy1oZWFkZXJfX21haW4taW5uZXIgPiA6bnRoLWNoaWxkKDIpIHtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG59XG4uYy1oZWFkZXJfX2xvZ28ge1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG59XG4uYy1oZWFkZXJfX3NlYXJjaC1jb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5jLWhlYWRlcl9fc2VhcmNoLWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuLmMtaGVhZGVyX190b2dnbGUtYnVyZ2VyLWljb24sIC5jLWhlYWRlcl9fdG9nZ2xlLWNsb3NlLWljb24ge1xuICBkaXNwbGF5OiBub25lO1xuICB3aWR0aDogdmFyKC0taWNvbi1zbSk7XG4gIGhlaWdodDogdmFyKC0taWNvbi1zbSk7XG59XG4uYy1oZWFkZXJfX3RvZ2dsZS1tZW51IHtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLW0pO1xuICBib3JkZXItd2lkdGg6IHZhcigtLWJ1dHRvbi1ib3JkZXItd2lkdGgpO1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICBmb250LXNpemU6IHZhcigtLWJvZHktZm9udC1zaXplKTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXN0cmV0Y2g6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGVhZGluZy1ub25lKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLXRyYWNraW5nLW5vcm1hbCk7XG4gIHBhZGRpbmctYmxvY2s6IHZhcigtLXNwYWNpbmctMDc1KTtcbiAgcGFkZGluZy1pbmxpbmU6IHZhcigtLXNwYWNpbmctMTAwKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBmb250LXNpemU6IHZhcigtLWJvZHktc21hbGwtZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tdHJhY2tpbmctbm9ybWFsKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxlYWRpbmctbm9uZSk7XG4gIHBhZGRpbmctYmxvY2s6IHZhcigtLXNwYWNpbmctMDI1KTtcbiAgcGFkZGluZy1pbmxpbmU6IHZhcigtLXNwYWNpbmctMDc1KTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYnRuLXJhZGl1cyk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcbn1cbi5jLWhlYWRlcl9fdG9nZ2xlLW1lbnU6aG92ZXIsIC5jLWhlYWRlcl9fdG9nZ2xlLW1lbnU6YWN0aXZlLCAuYy1oZWFkZXJfX3RvZ2dsZS1tZW51OmZvY3VzIHtcbiAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQsIHRyYW5zZm9ybSB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dCwgb3BhY2l0eSB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dDtcbn1cbi5jLWhlYWRlcl9fdG9nZ2xlLW1lbnU6aG92ZXI6YWN0aXZlLCAuYy1oZWFkZXJfX3RvZ2dsZS1tZW51OmFjdGl2ZTphY3RpdmUsIC5jLWhlYWRlcl9fdG9nZ2xlLW1lbnU6Zm9jdXM6YWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjkpO1xufVxuLmMtaGVhZGVyX190b2dnbGUtbWVudTpob3ZlciB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1vcmFuZ2UpO1xufVxuLmMtaGVhZGVyX190b2dnbGUtbWVudVthcmlhLWV4cGFuZGVkPXRydWVdIC5jLWhlYWRlcl9fdG9nZ2xlLWNsb3NlLWljb24ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgYW5pbWF0aW9uOiBmYWRlLWluIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4gZm9yd2FyZHM7XG59XG4uYy1oZWFkZXJfX3RvZ2dsZS1tZW51W2FyaWEtZXhwYW5kZWQ9dHJ1ZV0gLmMtaGVhZGVyX190b2dnbGUtYnVyZ2VyLWljb24ge1xuICBhbmltYXRpb246IGZhZGUtb3V0IHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4gZm9yd2FyZHM7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLmMtaGVhZGVyX190b2dnbGUtbWVudVthcmlhLWV4cGFuZGVkPXRydWVdIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG4uYy1oZWFkZXJfX3RvZ2dsZS1tZW51W2FyaWEtZXhwYW5kZWQ9ZmFsc2VdIC5jLWhlYWRlcl9fdG9nZ2xlLWJ1cmdlci1pY29uIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLmMtaGVhZGVyX190b2dnbGUtbWVudVthcmlhLWV4cGFuZGVkPWZhbHNlXSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuLmMtaGVhZGVyX19jb250ZW50LXdyYXBwZXIge1xuICBkaXNwbGF5OiBub25lO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGluc2V0OiB2YXIoLS1oZWFkZXItaGVpZ2h0KSAwIDAgMDtcbiAgei1pbmRleDogMTA7XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIGhlaWdodDogY2FsYygxMDBkdmggLSB2YXIoLS1oZWFkZXItaGVpZ2h0KSk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItbGlnaHQpO1xuICB3aWR0aDogMTAwJTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAuYy1oZWFkZXJfX2NvbnRlbnQtd3JhcHBlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGluc2V0OiB1bnNldDtcbiAgICBvdmVyZmxvdy15OiB2aXNpYmxlO1xuICAgIHotaW5kZXg6IGluaGVyaXQ7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbn1cbi5jLWhlYWRlcl9fY29udGVudC13cmFwcGVyW2RhdGEtZXhwYW5kZWQ9dHJ1ZV0ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgYW5pbWF0aW9uOiBmYWRlLWluIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4gZm9yd2FyZHM7XG59XG5cbi8qKlxuICogSW1hZ2UgTGlua3NcbiAqIEdyb3VwOiBDb21wb25lbnRzXG4gKi9cbi5jLWltYWdlLWxpbmtzX193cmFwcGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgZ2FwOiB2YXIoLS1zcGFjaW5nLTIwMCkgdmFyKC0tc3BhY2luZy0xMDApO1xufVxuLmMtaW1hZ2UtbGlua3NfX2xpbmsge1xuICBoZWlnaHQ6IHZhcigtLXNwYWNpbmctNzAwKTtcbn1cblxuLyoqXG4gKiBUZXh0IGFuZCBJbWFnZVxuICogR3JvdXA6IENvbXBvbmVudHNcbiAqIFZpZXdzOiBTZWN0aW9uIEltYWdlIEFuZCBUZXh0IEJsb2NrXG4gKi9cbi5jLWltYWdlLXRleHQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4uYy1pbWFnZS10ZXh0LS1sYXlvdXQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IGNvbHVtbiBub3dyYXA7XG4gIGdhcDogdmFyKC0tc3BhY2luZy0xNTApO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jLWltYWdlLXRleHQtLWxheW91dCB7XG4gICAgZmxleC1mbG93OiByb3cgbm93cmFwO1xuICAgIGdhcDogdmFyKC0tc3BhY2luZy0yMDApO1xuICB9XG59XG4uYy1pbWFnZS10ZXh0LS1yZXZlcnNlZCB7XG4gIGZsZXgtZmxvdzogY29sdW1uIG5vd3JhcDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuYy1pbWFnZS10ZXh0LS1yZXZlcnNlZCB7XG4gICAgZmxleC1mbG93OiByb3ctcmV2ZXJzZSBub3dyYXA7XG4gIH1cbn1cbi5jLWltYWdlLXRleHRfX2ltYWdlLXdyYXAge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuYy1pbWFnZS10ZXh0X19pbWFnZS13cmFwIHtcbiAgICBmbGV4OiAxO1xuICB9XG59XG4uYy1pbWFnZS10ZXh0X190ZXh0LXdyYXAge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuYy1pbWFnZS10ZXh0X190ZXh0LXdyYXAge1xuICAgIGZsZXg6IDE7XG4gIH1cbn1cbi5jLWltYWdlLXRleHRfX2V5ZWJyb3cge1xuICBmb250LXNpemU6IHZhcigtLWJvZHktc21hbGwtZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWJvZHktc21hbGwtbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tYm9keS1zbWFsbC1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLTA3NSk7XG59XG4uYy1pbWFnZS10ZXh0X190aXRsZSB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LXByaW1hcnkpO1xuICBmb250LXNpemU6IHZhcigtLWgzLWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1oMy1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1oMy1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy0xMDApO1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtZGFyay1ncmF5KTtcbn1cbi5jLWltYWdlLXRleHRfX3RleHQge1xuICBmb250LXNpemU6IHZhcigtLWJvZHktZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWJvZHktbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tYm9keS1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWdyYXkpO1xufVxuXG4vKipcbiAqIExpbmsgYm94XG4gKiBHcm91cDogQ29tcG9uZW50c1xuICovXG4uYy1saW5rLWJveC0tbGF5b3V0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogdmFyKC0tc3BhY2luZy0xNTApO1xuICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLTIwMCkgdmFyKC0tc3BhY2luZy0xNTApO1xuICBjb2xvcjogdmFyKC0tY29sb3ItbGlnaHQpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcbiAgYm9yZGVyOiAycHggc29saWQgdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtbSk7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0LCBjb2xvciB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dDtcbn1cbi5jLWxpbmstYm94LS1sYXlvdXQ6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xufVxuLmMtbGluay1ib3gtLWxheW91dDpob3ZlciAuYy1saW5rLWJveF9faWNvbiB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcbn1cbi5jLWxpbmstYm94LS1sYXlvdXQ6aG92ZXIgLmMtbGluay1ib3hfX2ljb24tLXdyYXBwZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcbn1cbi5jLWxpbmstYm94X19jb250ZW50X190aXRsZSB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LXByaW1hcnkpO1xuICBmb250LXNpemU6IHZhcigtLWg1LWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1oNS1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1oNS1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbiAgY29sb3I6IGluaGVyaXQ7XG59XG4uYy1saW5rLWJveF9fY29udGVudF9fZGVzY3JpcHRpb24ge1xuICBmb250LXNpemU6IHZhcigtLWJvZHktc21hbGwtZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWJvZHktc21hbGwtbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tYm9keS1zbWFsbC1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbiAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2luZy0wMjUpO1xuICBjb2xvcjogaW5oZXJpdDtcbn1cbi5jLWxpbmstYm94X19pY29uIHtcbiAgd2lkdGg6IHZhcigtLWljb24tc20pO1xuICBtYXgtaGVpZ2h0OiB2YXIoLS1pY29uLXNtKTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBjb2xvcjogdmFyKC0tY29sb3ItbGlnaHQpO1xuICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dDtcbn1cbi5jLWxpbmstYm94X19pY29uLS13cmFwcGVyIHtcbiAgZmxleDogbm9uZTtcbiAgZGlzcGxheTogZ3JpZDtcbiAgcGxhY2UtaXRlbXM6IGNlbnRlcjtcbiAgd2lkdGg6IHZhcigtLWljb24teGwpO1xuICBoZWlnaHQ6IHZhcigtLWljb24teGwpO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJvcmRlcjogMnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLWZ1bGwpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlLXNlbWktdHJhbnNwYXJlbnQpO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0LCBib3JkZXIgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQ7XG59XG5cbi8qKlxuICogSW50cm8gQmFubmVyXG4gKiBHcm91cDogQ29tcG9uZW50c1xuICovXG4uYy1pbnRyby1iYW5uZXItLWxheW91dCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC1oZWlnaHQ6IHZhcigtLW1heC1oZWlnaHQtaW50cm8tYmFubmVyKTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYXNwZWN0LXJhdGlvOiA0LzM7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHtcbiAgLmMtaW50cm8tYmFubmVyLS1sYXlvdXQge1xuICAgIGFzcGVjdC1yYXRpbzogMzYvMTc7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7XG4gIC5jLWludHJvLWJhbm5lci53aXRoVmlkZW8gLmMtaW50cm8tYmFubmVyLS1sYXlvdXQge1xuICAgIG1heC1oZWlnaHQ6IHVuc2V0O1xuICAgIGFzcGVjdC1yYXRpbzogYXV0bztcbiAgfVxuICAuYy1pbnRyby1iYW5uZXIud2l0aFZpZGVvIC5jLWludHJvLWJhbm5lcl9fbWVkaWEge1xuICAgIGhlaWdodDogYXV0bztcbiAgICBwYWRkaW5nOiAycmVtO1xuICB9XG59XG4uYy1pbnRyby1iYW5uZXJfX21lZGlhIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7XG4gIGdhcDogM3JlbTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBtYXgtd2lkdGg6IHZhcigtLW1heC13aWR0aC0tMnhsKTtcbiAgcGFkZGluZy1pbmxpbmU6IDFyZW07XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5jLWludHJvLWJhbm5lcl9fbWVkaWEge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgZ2FwOiA1cmVtO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBwYWRkaW5nLWlubGluZTogM3JlbTtcbiAgfVxufVxuLmMtaW50cm8tYmFubmVyX19pbWFnZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xufVxuLmMtaW50cm8tYmFubmVyX19pbWFnZS13cmFwIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBpbnNldDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgbWF4LWhlaWdodDogMTAwJTtcbiAgei1pbmRleDogLTE7XG59XG4uYy1pbnRyby1iYW5uZXJfX2ltYWdlLXdyYXA6OmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBpbnNldDogMDtcbiAgei1pbmRleDogMDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW92ZXJsYXktY29sb3ItbGlnaHQpO1xufVxuLmMtaW50cm8tYmFubmVyX19pbWFnZS13cmFwIHBpY3R1cmUge1xuICBoZWlnaHQ6IDEwMCU7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHtcbiAgLmMtaW50cm8tYmFubmVyX19pbWFnZS13cmFwIHBpY3R1cmUge1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxufVxuLmMtaW50cm8tYmFubmVyX190ZXh0LXdyYXAge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBnYXA6IHZhcigtLXNwYWNpbmctMTUwKTtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGhlaWdodDogMTAwJTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkge1xuICAuYy1pbnRyby1iYW5uZXJfX3RleHQtd3JhcCB7XG4gICAgZ2FwOiB2YXIoLS1zcGFjaW5nLTI1MCk7XG4gIH1cbn1cbi5jLWludHJvLWJhbm5lcl9fdmlkZW8td3JhcCB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDcyMHB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLW0pO1xuICBib3JkZXI6IDJweCBzb2xpZCB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuYy1pbnRyby1iYW5uZXJfX3ZpZGVvLXdyYXAge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG4uYy1pbnRyby1iYW5uZXJfX3ZpZGVvLXdyYXAgLnZpZGVvLWJveCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctdG9wOiA1Ni4yNSU7IC8qIDE2OjkgYXNwZWN0IHJhdGlvICovXG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4uYy1pbnRyby1iYW5uZXJfX3ZpZGVvLXdyYXAgdmlkZW8ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG9iamVjdC1maXQ6IGNvbnRhaW47XG59XG4uYy1pbnRyby1iYW5uZXJfX3RpdGxlIHtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtcHJpbWFyeSk7XG4gIGZvbnQtc2l6ZTogdmFyKC0taDItZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWgyLWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWgyLWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1saWdodCk7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmMtaW50cm8tYmFubmVyX190aXRsZSB7XG4gICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtcHJpbWFyeSk7XG4gICAgZm9udC1zaXplOiB2YXIoLS1oMS1mb250LXNpemUpO1xuICAgIGxldHRlci1zcGFjaW5nOiB2YXIoLS1oMS1sZXR0ZXItc3BhY2luZyk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWgxLWxpbmUtaGVpZ2h0KTtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZCk7XG4gIH1cbn1cbi5jLWludHJvLWJhbm5lcl9fc3VidGl0bGUge1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1wcmltYXJ5KTtcbiAgZm9udC1zaXplOiB2YXIoLS1oMy1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0taDMtbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0taDMtbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZCk7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0KTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuYy1pbnRyby1iYW5uZXJfX3N1YnRpdGxlIHtcbiAgICBmb250LWZhbWlseTogdmFyKC0tZm9udC1wcmltYXJ5KTtcbiAgICBmb250LXNpemU6IHZhcigtLWgxLWZvbnQtc2l6ZSk7XG4gICAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWgxLWxldHRlci1zcGFjaW5nKTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0taDEtbGluZS1oZWlnaHQpO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ib2xkKTtcbiAgfVxufVxuLmMtaW50cm8tYmFubmVyX19idXR0b25zLWdyb3VwIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGdhcDogdmFyKC0tc3BhY2luZy0xMDApO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSB7XG4gIC5jLWludHJvLWJhbm5lcl9fYnV0dG9ucy1ncm91cCB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgfVxufVxuLmMtaW50cm8tYmFubmVyX19idXR0b24ge1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtbSk7XG4gIGJvcmRlci13aWR0aDogdmFyKC0tYnV0dG9uLWJvcmRlci13aWR0aCk7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1mb250LXNpemUpO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtc3RyZXRjaDogbm9ybWFsO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1sZWFkaW5nLW5vbmUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tdHJhY2tpbmctbm9ybWFsKTtcbiAgcGFkZGluZy1ibG9jazogdmFyKC0tc3BhY2luZy0wNzUpO1xuICBwYWRkaW5nLWlubGluZTogdmFyKC0tc3BhY2luZy0xMDApO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZCk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS10cmFja2luZy1ub3JtYWwpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGVhZGluZy1ub25lKTtcbiAgd2lkdGg6IHZhcigtLXNwYWNpbmctMTIwMCk7XG4gIGhlaWdodDogdmFyKC0tYnV0dG9uLXNpemUpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1idG4tcmFkaXVzLWxnKTtcbn1cbi5jLWludHJvLWJhbm5lcl9fYnV0dG9uOmhvdmVyLCAuYy1pbnRyby1iYW5uZXJfX2J1dHRvbjphY3RpdmUsIC5jLWludHJvLWJhbm5lcl9fYnV0dG9uOmZvY3VzIHtcbiAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQsIHRyYW5zZm9ybSB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dCwgb3BhY2l0eSB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dDtcbn1cbi5jLWludHJvLWJhbm5lcl9fYnV0dG9uOmhvdmVyOmFjdGl2ZSwgLmMtaW50cm8tYmFubmVyX19idXR0b246YWN0aXZlOmFjdGl2ZSwgLmMtaW50cm8tYmFubmVyX19idXR0b246Zm9jdXM6YWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjkpO1xufVxuLmMtaW50cm8tYmFubmVyX19idXR0b24tLXByaW1hcnkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1vcmFuZ2UpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLW9yYW5nZSk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1kYXJrLWdyYXkpO1xufVxuLmMtaW50cm8tYmFubmVyX19idXR0b24tLXByaW1hcnk6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1saWdodC1ncmF5KTtcbn1cbi5jLWludHJvLWJhbm5lcl9fYnV0dG9uLS1wcmltYXJ5OmZvY3VzIHtcbiAgb3V0bGluZS1jb2xvcjogdmFyKC0tY29sb3ItZm9jdXMtc3Ryb2tlKTtcbn1cblxuLyoqXG4gKiBMaXN0IGJsb2NrXG4gKiBHcm91cDogQ29tcG9uZW50c1xuICovXG4uYy1saXN0X190aXRsZSB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LXByaW1hcnkpO1xuICBmb250LXNpemU6IHZhcigtLWgyLWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1oMi1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1oMi1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWRhcmstZ3JheSk7XG4gIG1hcmdpbjogMCAwIHZhcigtLXNwYWNpbmctMTUwKTtcbn1cbi5jLWxpc3RfX3RleHQge1xuICBmb250LXNpemU6IHZhcigtLWJvZHktZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWJvZHktbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tYm9keS1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWRhcmstZ3JheSk7XG59XG5cbi8qKlxuICogTWFwXG4gKiBHcm91cDogQ29tcG9uZW50c1xuICovXG4uYy1tYXAge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG1pbi1oZWlnaHQ6IHZhcigtLW1pbi1oZWlnaHQtbWFwLXBhcm1hY3kpO1xufVxuLmMtbWFwX19jb250YWluZXIge1xuICBhc3BlY3QtcmF0aW86IDQvMztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbiAgei1pbmRleDogMDtcbn1cbi5jLW1hcC0tbWFwLWxpc3Qge1xuICBtaW4taGVpZ2h0OiB2YXIoLS1taW4taGVpZ2h0LW1hcC1wYXJtYWN5KTtcbiAgbWF4LWhlaWdodDogdmFyKC0tbWF4LWhlaWdodC1tYXAtbGlzdCk7XG4gIG1hcmdpbi1pbmxpbmU6IGF1dG87XG59XG4uYy1tYXBfX2dvb2dsZS1tYXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGFzcGVjdC1yYXRpbzogMi4xODMvMTtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi8qKlxuICogTmV3c1xuICogR3JvdXA6IENvbXBvbmVudHNcbiAqL1xuLmMtbmV3c19faGVhZGVyIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWRhcmstZ3JheSk7XG59XG4uYy1uZXdzX190aXRsZSB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LXByaW1hcnkpO1xuICBmb250LXNpemU6IHZhcigtLWgzLWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1oMy1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1oMy1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbi5jLW5ld3NfX2JhZGdlIHtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLW0pO1xuICBib3JkZXItd2lkdGg6IHZhcigtLWJ1dHRvbi1ib3JkZXItd2lkdGgpO1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICBmb250LXNpemU6IHZhcigtLWJvZHktZm9udC1zaXplKTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXN0cmV0Y2g6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGVhZGluZy1ub25lKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLXRyYWNraW5nLW5vcm1hbCk7XG4gIHBhZGRpbmctYmxvY2s6IHZhcigtLXNwYWNpbmctMDc1KTtcbiAgcGFkZGluZy1pbmxpbmU6IHZhcigtLXNwYWNpbmctMTAwKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBmb250LXNpemU6IHZhcigtLWJvZHktc21hbGwtZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tdHJhY2tpbmctbm9ybWFsKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxlYWRpbmctbm9uZSk7XG4gIHBhZGRpbmctYmxvY2s6IHZhcigtLXNwYWNpbmctMDI1KTtcbiAgcGFkZGluZy1pbmxpbmU6IHZhcigtLXNwYWNpbmctMDc1KTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYnRuLXJhZGl1cyk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLW9yYW5nZSk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtb3JhbmdlKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWRhcmstZ3JheSk7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmctMTUwKTtcbn1cbi5jLW5ld3NfX2JhZGdlOmhvdmVyLCAuYy1uZXdzX19iYWRnZTphY3RpdmUsIC5jLW5ld3NfX2JhZGdlOmZvY3VzIHtcbiAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQsIHRyYW5zZm9ybSB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dCwgb3BhY2l0eSB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dDtcbn1cbi5jLW5ld3NfX2JhZGdlOmhvdmVyOmFjdGl2ZSwgLmMtbmV3c19fYmFkZ2U6YWN0aXZlOmFjdGl2ZSwgLmMtbmV3c19fYmFkZ2U6Zm9jdXM6YWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjkpO1xufVxuLmMtbmV3c19fYmFkZ2U6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1saWdodC1ncmF5KTtcbn1cbi5jLW5ld3NfX2JhZGdlOmZvY3VzIHtcbiAgb3V0bGluZS1jb2xvcjogdmFyKC0tY29sb3ItZm9jdXMtc3Ryb2tlKTtcbn1cbi5jLW5ld3NfX2RhdGUge1xuICBmb250LXNpemU6IHZhcigtLWJvZHktc21hbGwtZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWJvZHktc21hbGwtbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tYm9keS1zbWFsbC1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1tZWRpdW0pO1xuICBkaXNwbGF5OiBibG9jaztcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xuICBtYXJnaW4tYmxvY2s6IHZhcigtLXNwYWNpbmctMDc1KTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAuYy1uZXdzX19kYXRlIHtcbiAgICBtYXJnaW4tYmxvY2s6IDAgdmFyKC0tc3BhY2luZy0wNzUpO1xuICB9XG59XG4uYy1uZXdzX19saW5rIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBnYXA6IHZhcigtLXNwYWNpbmctMTAwKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtZGFyay1ncmF5KTtcbn1cbi5jLW5ld3NfX2xpbms6aG92ZXIge1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtb3JhbmdlKTtcbn1cbi5jLW5ld3NfX2ljb24ge1xuICB3aWR0aDogdmFyKC0taWNvbi1tcyk7XG4gIG1heC1oZWlnaHQ6IHZhcigtLWljb24tbXMpO1xuICBoZWlnaHQ6IGF1dG87XG4gIGNvbG9yOiBpbmhlcml0O1xuICBmbGV4LXNocmluazogMDtcbn1cbi5jLW5ld3NfX2N0YS1idXR0b24ge1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtbSk7XG4gIGJvcmRlci13aWR0aDogdmFyKC0tYnV0dG9uLWJvcmRlci13aWR0aCk7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1mb250LXNpemUpO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtc3RyZXRjaDogbm9ybWFsO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1sZWFkaW5nLW5vbmUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tdHJhY2tpbmctbm9ybWFsKTtcbiAgcGFkZGluZy1ibG9jazogdmFyKC0tc3BhY2luZy0wNzUpO1xuICBwYWRkaW5nLWlubGluZTogdmFyKC0tc3BhY2luZy0xMDApO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtc2VtaWJvbGQpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tdHJhY2tpbmctbm9ybWFsKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxlYWRpbmctbm9uZSk7XG4gIHBhZGRpbmctYmxvY2s6IHZhcigtLXNwYWNpbmctMTAwKTtcbiAgcGFkZGluZy1pbmxpbmU6IHZhcigtLXNwYWNpbmctNjAwKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYnRuLXJhZGl1cy1sZyk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLW9yYW5nZSk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtb3JhbmdlKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWRhcmstZ3JheSk7XG4gIG1hcmdpbi1pbmxpbmU6IGF1dG87XG59XG4uYy1uZXdzX19jdGEtYnV0dG9uOmhvdmVyLCAuYy1uZXdzX19jdGEtYnV0dG9uOmFjdGl2ZSwgLmMtbmV3c19fY3RhLWJ1dHRvbjpmb2N1cyB7XG4gIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0LCB0cmFuc2Zvcm0gdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQsIG9wYWNpdHkgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQ7XG59XG4uYy1uZXdzX19jdGEtYnV0dG9uOmhvdmVyOmFjdGl2ZSwgLmMtbmV3c19fY3RhLWJ1dHRvbjphY3RpdmU6YWN0aXZlLCAuYy1uZXdzX19jdGEtYnV0dG9uOmZvY3VzOmFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMC45KTtcbn1cbi5jLW5ld3NfX2N0YS1idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1saWdodC1ncmF5KTtcbn1cbi5jLW5ld3NfX2N0YS1idXR0b246Zm9jdXMge1xuICBvdXRsaW5lLWNvbG9yOiB2YXIoLS1jb2xvci1mb2N1cy1zdHJva2UpO1xufVxuLmMtbmV3c19fY3RhLWJ1dHRvbi0td3JhcHBlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2luZy0yMDApO1xufVxuLmMtbmV3cy0tY29sb3JlZC1iYWNrZ3JvdW5kIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtbGlnaHQtZ3JheSk7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLmMtbmV3cy1hcnRpY2xlIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGdhcDogdmFyKC0tc3BhY2luZy0xNTApO1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIH1cbiAgLmMtbmV3cy1hcnRpY2xlOm50aC1jaGlsZCgxKSB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgfVxuICAuYy1uZXdzLWFydGljbGU6bnRoLWNoaWxkKDEpIC5jLW5ld3MtYXJ0aWNsZV9faW1hZ2UtLXdyYXBwZXIge1xuICAgIGFzcGVjdC1yYXRpbzogMTYvOTtcbiAgfVxuICAuYy1uZXdzLWFydGljbGU6bnRoLWNoaWxkKDIpIC5jLW5ld3MtYXJ0aWNsZV9faW1hZ2UtLXdyYXBwZXIge1xuICAgIGFzcGVjdC1yYXRpbzogMy8yO1xuICB9XG4gIC5jLW5ld3MtYXJ0aWNsZTpudGgtY2hpbGQoMikgLmMtbmV3c19fdGl0bGUge1xuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LXByaW1hcnkpO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0taDUtZm9udC1zaXplKTtcbiAgICBsZXR0ZXItc3BhY2luZzogdmFyKC0taDUtbGV0dGVyLXNwYWNpbmcpO1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1oNS1saW5lLWhlaWdodCk7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LW1lZGl1bSk7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG4gIC5jLW5ld3MtYXJ0aWNsZTpudGgtY2hpbGQoMykgLmMtbmV3cy1hcnRpY2xlX19pbWFnZS0td3JhcHBlciB7XG4gICAgYXNwZWN0LXJhdGlvOiA0LzU7XG4gIH1cbiAgLmMtbmV3cy1hcnRpY2xlOm50aC1jaGlsZCgzKSAuYy1uZXdzX190aXRsZSB7XG4gICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtcHJpbWFyeSk7XG4gICAgZm9udC1zaXplOiB2YXIoLS1oNS1mb250LXNpemUpO1xuICAgIGxldHRlci1zcGFjaW5nOiB2YXIoLS1oNS1sZXR0ZXItc3BhY2luZyk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWg1LWxpbmUtaGVpZ2h0KTtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbWVkaXVtKTtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cbn1cbi5jLW5ld3MtYXJ0aWNsZV9faW1hZ2Uge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvYmplY3QtZml0OiBjb3Zlcjtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAuYy1uZXdzLWFydGljbGVfX2ltYWdlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgaW5zZXQ6IDA7XG4gIH1cbn1cbi5jLW5ld3MtYXJ0aWNsZV9faW1hZ2UtLXdyYXBwZXIge1xuICBmbGV4OiAxO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG1heC1oZWlnaHQ6IGNsYW1wKHZhcigtLXNwYWNpbmctNTAwKSwgNTBkdncsIHZhcigtLW1heC1oZWlnaHQtaW1hZ2UtbmV3cykpO1xufVxuLmMtbmV3cy1hcnRpY2xlX19jb250ZW50IHtcbiAgZmxleDogMTtcbn1cbi5jLW5ld3MtYXJ0aWNsZV9fc3VtbWFyeSB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tYm9keS1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjaW5nLTA3NSk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ncmF5KTtcbn1cbi5jLW5ld3MtYXJ0aWNsZS1wYWdlX19pbWFnZS0td3JhcHBlciB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy0xMDApO1xufVxuLmMtbmV3cy1hcnRpY2xlLXBhZ2VfX3RleHQge1xuICBmb250LXNpemU6IHZhcigtLWJvZHktZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWJvZHktbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tYm9keS1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWdyYXkpO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLTIwMCk7XG59XG4uYy1uZXdzLXByZXNzX19zdW1tYXJ5IHtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1ib2R5LWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWJvZHktbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICAtd2Via2l0LWxpbmUtY2xhbXA6IDU7XG4gIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjaW5nLTA3NSk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ncmF5KTtcbn1cbi5jLW5ld3MtY29tcGV0aXRpb25zX19saXN0IHtcbiAgcGFkZGluZy1ib3R0b206IHZhcigtLXNwYWNpbmctMTAwKTtcbn1cbi5jLW5ld3MtY29tcGV0aXRpb25zX19pdGVtIHtcbiAgcGFkZGluZy1ib3R0b206IHZhcigtLXNwYWNpbmctMzAwKTtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy0yMDApO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tY29sb3ItZGFyayk7XG59XG4uYy1uZXdzLWNvbXBldGl0aW9uc19fc3VtbWFyeSB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tYm9keS1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgLXdlYmtpdC1saW5lLWNsYW1wOiAzO1xuICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2luZy0wNzUpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtZ3JheSk7XG59XG5cbi8qKlxuICogTmV3c2xldHRlclxuICogR3JvdXA6IENvbXBvbmVudHNcbiAqL1xuLmMtbmV3c2xldHRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xuICBwYWRkaW5nLWJsb2NrOiB2YXIoLS1zcGFjaW5nLTUwMCk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1saWdodCk7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi5jLW5ld3NsZXR0ZXJfX3RpdGxlIHtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtcHJpbWFyeSk7XG4gIGZvbnQtc2l6ZTogdmFyKC0taDItZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWgyLWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWgyLWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLTEwMCk7XG59XG4uYy1uZXdzbGV0dGVyX19kZXNjcmlwdGlvbiB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1zbWFsbC1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tYm9keS1zbWFsbC1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LXNtYWxsLWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICBtYXgtd2lkdGg6IHZhcigtLW1heC13aWR0aC0tNHhzKTtcbiAgbWFyZ2luLWlubGluZTogYXV0bztcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy0yMDApO1xufVxuLmMtbmV3c2xldHRlcl9fZm9ybSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZ2FwOiB2YXIoLS1zcGFjaW5nLTI1MCk7XG4gIHdpZHRoOiBtYXgtY29udGVudDtcbiAgbWFyZ2luLWlubGluZTogYXV0bztcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuYy1uZXdzbGV0dGVyX19mb3JtIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGdhcDogdmFyKC0tc3BhY2luZy0wNzUpO1xuICB9XG59XG4uYy1uZXdzbGV0dGVyX19mb3JtIC5maWVsZC12YWxpZGF0aW9uLWVycm9yIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDEwMCU7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBoZWlnaHQ6IHZhcigtLXNwYWNpbmctMzAwKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWRhcmstcmVkKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWJvZHktbGluZS1oZWlnaHQpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1yZWQtc2VtaS10cmFuc3BhcmVudCk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtbCk7XG4gIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctMTAwKTtcbiAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2luZy0wNTApO1xufVxuLmMtbmV3c2xldHRlcl9faW5wdXQge1xuICBmb250LXNpemU6IHZhcigtLWJvZHktZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tdHJhY2tpbmctbm9ybWFsKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxlYWRpbmctbm9uZSk7XG4gIHdpZHRoOiB2YXIoLS1zcGFjaW5nLTEyMDApO1xuICBoZWlnaHQ6IHZhcigtLWJ1dHRvbi1zaXplKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYnRuLXJhZGl1cy1sZyk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMteHMpO1xuICBib3JkZXI6IG5vbmU7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LWxpbmUtaGVpZ2h0KTtcbiAgdGV4dC1pbmRlbnQ6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLXNlYXJjaC1ncmF5KTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1sKTtcbiAgaGVpZ2h0OiB2YXIoLS1zcGFjaW5nLTMwMCk7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IG5vd3JhcDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZzogdmFyKC0tc3BhY2luZy0xMDApO1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG59XG4uYy1uZXdzbGV0dGVyX19pbnB1dDpob3ZlciwgLmMtbmV3c2xldHRlcl9faW5wdXQ6YWN0aXZlLCAuYy1uZXdzbGV0dGVyX19pbnB1dDpmb2N1cyB7XG4gIHRyYW5zaXRpb246IGJveC1zaGFkb3cgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQ7XG59XG4uYy1uZXdzbGV0dGVyX19pbnB1dDpob3ZlciB7XG4gIGJveC1zaGFkb3c6IHZhcigtLWJveC1zaGFkb3ctbGlnaHQtMDMpO1xufVxuLmMtbmV3c2xldHRlcl9faW5wdXQgaW5wdXQge1xuICBoZWlnaHQ6IHZhcigtLWlucHV0LWhlaWdodC1tZWRpdW0pO1xuICBjb2xvcjogaW5oZXJpdDtcbiAgd2lkdGg6IDEwMCU7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tYm9keS1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xufVxuLmMtbmV3c2xldHRlcl9faW5wdXQgaW5wdXQ6OnBsYWNlaG9sZGVyIHtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1ib2R5LWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWJvZHktbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcbn1cbi5jLW5ld3NsZXR0ZXJfX2lucHV0IGlucHV0Ojotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1ib2R5LWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWJvZHktbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcbn1cbi5jLW5ld3NsZXR0ZXJfX2lucHV0IGlucHV0OjotbW96LXBsYWNlaG9sZGVyIHtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1ib2R5LWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWJvZHktbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcbiAgb3BhY2l0eTogMTtcbn1cbi5jLW5ld3NsZXR0ZXJfX2lucHV0IGlucHV0Oi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tYm9keS1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG59XG4uYy1uZXdzbGV0dGVyX19pbnB1dCBpbnB1dDpmb2N1cyB7XG4gIG91dGxpbmU6IDJweCBzb2xpZCB2YXIoLS1jb2xvci1mb2N1cy1zdHJva2UpO1xuICBvdXRsaW5lLW9mZnNldDogMXB4O1xufVxuLmMtbmV3c2xldHRlcl9faW5wdXQgaW5wdXQ6OnBsYWNlaG9sZGVyIHtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1ib2R5LWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWJvZHktbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZCk7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYm9yZGVyOiBub25lO1xufVxuLmMtbmV3c2xldHRlcl9faW5wdXQgaW5wdXQ6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuICBmb250LXNpemU6IHZhcigtLWJvZHktZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWJvZHktbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tYm9keS1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ib2xkKTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBib3JkZXI6IG5vbmU7XG59XG4uYy1uZXdzbGV0dGVyX19pbnB1dCBpbnB1dDo6LW1vei1wbGFjZWhvbGRlciB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tYm9keS1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJvcmRlcjogbm9uZTtcbiAgb3BhY2l0eTogMTtcbn1cbi5jLW5ld3NsZXR0ZXJfX2lucHV0IGlucHV0Oi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tYm9keS1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJvcmRlcjogbm9uZTtcbn1cbi5jLW5ld3NsZXR0ZXJfX2J1dHRvbiB7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1tKTtcbiAgYm9yZGVyLXdpZHRoOiB2YXIoLS1idXR0b24tYm9yZGVyLXdpZHRoKTtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LWZvbnQtc2l6ZSk7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC1zdHJldGNoOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxlYWRpbmctbm9uZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS10cmFja2luZy1ub3JtYWwpO1xuICBwYWRkaW5nLWJsb2NrOiB2YXIoLS1zcGFjaW5nLTA3NSk7XG4gIHBhZGRpbmctaW5saW5lOiB2YXIoLS1zcGFjaW5nLTEwMCk7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ib2xkKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLXRyYWNraW5nLW5vcm1hbCk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1sZWFkaW5nLW5vbmUpO1xuICB3aWR0aDogdmFyKC0tc3BhY2luZy0xMjAwKTtcbiAgaGVpZ2h0OiB2YXIoLS1idXR0b24tc2l6ZSk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJ0bi1yYWRpdXMtbGcpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1vcmFuZ2UpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLW9yYW5nZSk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1kYXJrLWdyYXkpO1xufVxuLmMtbmV3c2xldHRlcl9fYnV0dG9uOmhvdmVyLCAuYy1uZXdzbGV0dGVyX19idXR0b246YWN0aXZlLCAuYy1uZXdzbGV0dGVyX19idXR0b246Zm9jdXMge1xuICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dCwgdHJhbnNmb3JtIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0LCBvcGFjaXR5IHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0O1xufVxuLmMtbmV3c2xldHRlcl9fYnV0dG9uOmhvdmVyOmFjdGl2ZSwgLmMtbmV3c2xldHRlcl9fYnV0dG9uOmFjdGl2ZTphY3RpdmUsIC5jLW5ld3NsZXR0ZXJfX2J1dHRvbjpmb2N1czphY3RpdmUge1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuOSk7XG59XG4uYy1uZXdzbGV0dGVyX19idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1saWdodC1ncmF5KTtcbn1cbi5jLW5ld3NsZXR0ZXJfX2J1dHRvbjpmb2N1cyB7XG4gIG91dGxpbmUtY29sb3I6IHZhcigtLWNvbG9yLWZvY3VzLXN0cm9rZSk7XG59XG5cbi8qKlxuICogTm90IEZvdW5kIFBhZ2UgNDA0XG4gKiBHcm91cDogQ29tcG9uZW50c1xuICovXG4uYy1ub3QtZm91bmQtLWxheW91dCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG4uYy1ub3QtZm91bmRfX3RpdGxlIHtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtcHJpbWFyeSk7XG4gIGZvbnQtc2l6ZTogdmFyKC0taDItZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWgyLWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWgyLWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICBmb250LXNpemU6IDkuNXJlbTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuLmMtbm90LWZvdW5kX190ZXh0IHtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LXNtYWxsLWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1ib2R5LXNtYWxsLWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWJvZHktc21hbGwtbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi5jLW5vdC1mb3VuZF9fYmFjay10by1ob21lIHtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLW0pO1xuICBib3JkZXItd2lkdGg6IHZhcigtLWJ1dHRvbi1ib3JkZXItd2lkdGgpO1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICBmb250LXNpemU6IHZhcigtLWJvZHktZm9udC1zaXplKTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXN0cmV0Y2g6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGVhZGluZy1ub25lKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLXRyYWNraW5nLW5vcm1hbCk7XG4gIHBhZGRpbmctYmxvY2s6IHZhcigtLXNwYWNpbmctMDc1KTtcbiAgcGFkZGluZy1pbmxpbmU6IHZhcigtLXNwYWNpbmctMTAwKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBmb250LXNpemU6IHZhcigtLWJvZHktZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tdHJhY2tpbmctbm9ybWFsKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxlYWRpbmctbm9uZSk7XG4gIHdpZHRoOiB2YXIoLS1zcGFjaW5nLTEyMDApO1xuICBoZWlnaHQ6IHZhcigtLWJ1dHRvbi1zaXplKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYnRuLXJhZGl1cy1sZyk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLW9yYW5nZSk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtb3JhbmdlKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWRhcmstZ3JheSk7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2luZy0yNTApO1xufVxuLmMtbm90LWZvdW5kX19iYWNrLXRvLWhvbWU6aG92ZXIsIC5jLW5vdC1mb3VuZF9fYmFjay10by1ob21lOmFjdGl2ZSwgLmMtbm90LWZvdW5kX19iYWNrLXRvLWhvbWU6Zm9jdXMge1xuICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dCwgdHJhbnNmb3JtIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0LCBvcGFjaXR5IHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0O1xufVxuLmMtbm90LWZvdW5kX19iYWNrLXRvLWhvbWU6aG92ZXI6YWN0aXZlLCAuYy1ub3QtZm91bmRfX2JhY2stdG8taG9tZTphY3RpdmU6YWN0aXZlLCAuYy1ub3QtZm91bmRfX2JhY2stdG8taG9tZTpmb2N1czphY3RpdmUge1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuOSk7XG59XG4uYy1ub3QtZm91bmRfX2JhY2stdG8taG9tZTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWxpZ2h0LWdyYXkpO1xufVxuLmMtbm90LWZvdW5kX19iYWNrLXRvLWhvbWU6Zm9jdXMge1xuICBvdXRsaW5lLWNvbG9yOiB2YXIoLS1jb2xvci1mb2N1cy1zdHJva2UpO1xufVxuXG4vKipcbiAqIFBhZ2UgQmFubmVyXG4gKiBHcm91cDogQ29tcG9uZW50c1xuICovXG4uYy1wYWdlLWJhbm5lciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xuICBwYWRkaW5nLWJsb2NrOiB2YXIoLS1zcGFjaW5nLTIwMCk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1saWdodCk7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYm9yZGVyLWJvdHRvbTogNXB4IHNvbGlkIHZhcigtLWNvbG9yLWJyYW5kLW9yYW5nZSk7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmMtcGFnZS1iYW5uZXIge1xuICAgIHBhZGRpbmctYmxvY2s6IHZhcigtLXNwYWNpbmctNDAwKTtcbiAgfVxufVxuLmMtcGFnZS1iYW5uZXJfX3RpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy0xNTApO1xufVxuXG4vKipcbiAqIFBERiBWaWV3ZXJcbiAqIEdyb3VwOiBDb21wb25lbnRzXG4gKi9cbi5jLXBkZi12aWV3ZXIgY2FudmFzIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1zcGFjaW5nLTIwMCk7XG4gIGJvcmRlcjogNHB4IHNvbGlkIHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xuICBtYXJnaW4tYmxvY2s6IHZhcigtLXNwYWNpbmctMjAwKTtcbn1cbi5jLXBkZi12aWV3ZXJfX25hdiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBtYXgtd2lkdGg6IDkwMHB4O1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLTIwMCk7XG59XG4uYy1wZGYtdmlld2VyX19uYXYtdGV4dCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1tZWRpdW0pO1xuICBtYXJnaW4taW5saW5lOiB2YXIoLS1zcGFjaW5nLTE1MCk7XG59XG4uYy1wZGYtdmlld2VyX19uYXYtYnV0dG9uIHtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLW0pO1xuICBib3JkZXItd2lkdGg6IHZhcigtLWJ1dHRvbi1ib3JkZXItd2lkdGgpO1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICBmb250LXNpemU6IHZhcigtLWJvZHktZm9udC1zaXplKTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXN0cmV0Y2g6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGVhZGluZy1ub25lKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLXRyYWNraW5nLW5vcm1hbCk7XG4gIHBhZGRpbmctYmxvY2s6IHZhcigtLXNwYWNpbmctMDc1KTtcbiAgcGFkZGluZy1pbmxpbmU6IHZhcigtLXNwYWNpbmctMTAwKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0KTtcbn1cbi5jLXBkZi12aWV3ZXJfX25hdi1idXR0b246aG92ZXIsIC5jLXBkZi12aWV3ZXJfX25hdi1idXR0b246YWN0aXZlLCAuYy1wZGYtdmlld2VyX19uYXYtYnV0dG9uOmZvY3VzIHtcbiAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQsIHRyYW5zZm9ybSB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dCwgb3BhY2l0eSB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dDtcbn1cbi5jLXBkZi12aWV3ZXJfX25hdi1idXR0b246aG92ZXI6YWN0aXZlLCAuYy1wZGYtdmlld2VyX19uYXYtYnV0dG9uOmFjdGl2ZTphY3RpdmUsIC5jLXBkZi12aWV3ZXJfX25hdi1idXR0b246Zm9jdXM6YWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjkpO1xufVxuLmMtcGRmLXZpZXdlcl9fbmF2LWJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWxpZ2h0ZXItZ3JheSk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcbn1cbi5jLXBkZi12aWV3ZXJfX25hdi1idXR0b246Zm9jdXMge1xuICBvdXRsaW5lLWNvbG9yOiB2YXIoLS1jb2xvci1mb2N1cy1zdHJva2UpO1xufVxuXG4vKipcbiAqIFF1b3RlXG4gKiBHcm91cDogQ29tcG9uZW50c1xuICovXG4uYy1xdW90ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItbGlnaHQpO1xufVxuLmMtcXVvdGUtLWxheW91dCB7XG4gIG1heC13aWR0aDogNDcuNXJlbTtcbiAgbWFyZ2luLWlubGluZTogYXV0bztcbn1cbi5jLXF1b3RlX190ZXh0IHtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtcHJpbWFyeSk7XG4gIGZvbnQtc2l6ZTogdmFyKC0taDItZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWgyLWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWgyLWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGJvcmRlci1sZWZ0OiA0cHggc29saWQgdmFyKC0tY29sb3ItYnJhbmQtb3JhbmdlKTtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoLS1zcGFjaW5nLTE1MCk7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmMtcXVvdGVfX3RleHQge1xuICAgIGZvbnQtc2l6ZTogM3JlbTtcbiAgfVxufVxuLmMtcXVvdGVfX2F1dGhvciB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tYm9keS1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICBkaXNwbGF5OiBibG9jaztcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmctMDUwKTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuLmMtcXVvdGVfX2F1dGhvcjo6YmVmb3JlIHtcbiAgY29udGVudDogXCLigJQgXCI7XG4gIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2luZy0wMjUpO1xufVxuXG4vKipcbiAqIFNpZGViYXJcbiAqIEdyb3VwOiBDb21wb25lbnRzXG4gKi9cbi5jLXNpZGViYXJfX2xpc3Qge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBnYXA6IHZhcigtLXNwYWNpbmctMTUwKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtbSk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1saWdodCk7XG4gIHBhZGRpbmctYmxvY2s6IHZhcigtLXNwYWNpbmctMTI1KTtcbiAgcGFkZGluZy1pbmxpbmU6IHZhcigtLXNwYWNpbmctMTUwKTtcbn1cbi5jLXNpZGViYXJfX2xpc3QtaXRlbSB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tYm9keS1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG4uYy1zaWRlYmFyX19saXN0LWl0ZW06aG92ZXIge1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtb3JhbmdlKTtcbn1cbi5jLXNpZGViYXJfX2xpc3QtaXRlbVthcmlhLWN1cnJlbnQ9cGFnZV0ge1xuICBib3JkZXItbGVmdDogM3B4IHNvbGlkIHZhcigtLWNvbG9yLWJyYW5kLW9yYW5nZSk7XG4gIHBhZGRpbmctbGVmdDogdmFyKC0tc3BhY2luZy0wNTApO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZCk7XG59XG4uYy1zaWRlYmFyX19saXN0LS1ib3hlcyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGdhcDogdmFyKC0tc3BhY2luZy0xNTApO1xufVxuLmMtc2lkZWJhcl9fdGl0bGUge1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1wcmltYXJ5KTtcbiAgZm9udC1zaXplOiB2YXIoLS1oMi1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0taDItbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0taDItbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctMTUwKTtcbiAgcGFkZGluZy1ib3R0b206IHZhcigtLXNwYWNpbmctMDI1KTtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkIHZhcigtLWNvbG9yLWJyYW5kLWRhcmstZ3JheSk7XG59XG5cbi8qKlxuICogVGV4dFxuICogR3JvdXA6IENvbXBvbmVudHNcbiAqL1xuLmMtdGV4dF9fdGl0bGUge1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtZGFyay1ncmF5KTtcbn1cbi5jLXRleHRfX2NvbnRlbnQge1xuICBmb250LXNpemU6IHZhcigtLWJvZHktZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWJvZHktbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tYm9keS1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWdyYXkpO1xufVxuLmMtdGV4dF9fY29udGVudCBhIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cblxuLyoqXG4gKiBUaWNrZXQgTGlua1xuICogR3JvdXA6IENvbXBvbmVudHNcbiAqL1xuLmMtdGlja2V0LWxpbmstLWxheW91dCB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIHBsYWNlLWl0ZW1zOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWxpZ2h0LWdyYXkpO1xuICBwYWRkaW5nLWJsb2NrOiB2YXIoLS1zcGFjaW5nLTQwMCk7XG4gIHBhZGRpbmctaW5saW5lOiB2YXIoLS1zcGFjaW5nLTEwMCk7XG59XG4uYy10aWNrZXQtbGlua19fYnV0dG9uLWxpbmsge1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtbSk7XG4gIGJvcmRlci13aWR0aDogdmFyKC0tYnV0dG9uLWJvcmRlci13aWR0aCk7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1mb250LXNpemUpO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtc3RyZXRjaDogbm9ybWFsO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1sZWFkaW5nLW5vbmUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tdHJhY2tpbmctbm9ybWFsKTtcbiAgcGFkZGluZy1ibG9jazogdmFyKC0tc3BhY2luZy0wNzUpO1xuICBwYWRkaW5nLWlubGluZTogdmFyKC0tc3BhY2luZy0xMDApO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtc2VtaWJvbGQpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tdHJhY2tpbmctbm9ybWFsKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxlYWRpbmctbm9uZSk7XG4gIHBhZGRpbmctYmxvY2s6IHZhcigtLXNwYWNpbmctMTAwKTtcbiAgcGFkZGluZy1pbmxpbmU6IHZhcigtLXNwYWNpbmctNjAwKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYnRuLXJhZGl1cy1sZyk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLW9yYW5nZSk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtb3JhbmdlKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWRhcmstZ3JheSk7XG59XG4uYy10aWNrZXQtbGlua19fYnV0dG9uLWxpbms6aG92ZXIsIC5jLXRpY2tldC1saW5rX19idXR0b24tbGluazphY3RpdmUsIC5jLXRpY2tldC1saW5rX19idXR0b24tbGluazpmb2N1cyB7XG4gIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0LCB0cmFuc2Zvcm0gdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQsIG9wYWNpdHkgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQ7XG59XG4uYy10aWNrZXQtbGlua19fYnV0dG9uLWxpbms6aG92ZXI6YWN0aXZlLCAuYy10aWNrZXQtbGlua19fYnV0dG9uLWxpbms6YWN0aXZlOmFjdGl2ZSwgLmMtdGlja2V0LWxpbmtfX2J1dHRvbi1saW5rOmZvY3VzOmFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMC45KTtcbn1cbi5jLXRpY2tldC1saW5rX19idXR0b24tbGluazpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWxpZ2h0LWdyYXkpO1xufVxuLmMtdGlja2V0LWxpbmtfX2J1dHRvbi1saW5rOmZvY3VzIHtcbiAgb3V0bGluZS1jb2xvcjogdmFyKC0tY29sb3ItZm9jdXMtc3Ryb2tlKTtcbn1cblxuLyoqXG4gKiBUcmVlXG4gKiBHcm91cDogQ29tcG9uZW50c1xuICovXG4uYy10cmVlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLmMtdHJlZV9fbGlzdCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKC0tc3BhY2luZy0yMDApO1xuICBtYXJnaW4tbGVmdDogdmFyKC0tc3BhY2luZy0wNzUpO1xuICBtYXJnaW4tYmxvY2s6IHZhcigtLXNwYWNpbmctMTAwKTtcbiAgdHJhbnNpdGlvbjogaGVpZ2h0IHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0O1xufVxuLmMtdHJlZV9fbGlzdDpub3QoOm50aC1jaGlsZCgxKSkge1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJyYW5kLWRhcmstZ3JheSk7XG59XG4uYy10cmVlX19saXN0LWl0ZW0ge1xuICBmb250LXNpemU6IHZhcigtLWJvZHktZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWJvZHktbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tYm9keS1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWRhcmstZ3JheSk7XG4gIG1hcmdpbi1ibG9jazogdmFyKC0tc3BhY2luZy0xMDApO1xufVxuLmMtdHJlZV9fbGlzdF9faWNvbi1maWxlLCAuYy10cmVlX19saXN0X19pY29uLWZvbGRlciB7XG4gIHdpZHRoOiB2YXIoLS1pY29uLW1zKTtcbiAgbWF4LWhlaWdodDogdmFyKC0taWNvbi1tcyk7XG4gIGhlaWdodDogYXV0bztcbiAgY29sb3I6IGluaGVyaXQ7XG4gIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2luZy0wNTApO1xuICBmbGV4OiAxIDAgYXV0bztcbn1cbi5jLXRyZWVfX2xpc3RfX3RvZ2dsZXIge1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtbSk7XG4gIGJvcmRlci13aWR0aDogdmFyKC0tYnV0dG9uLWJvcmRlci13aWR0aCk7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1mb250LXNpemUpO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtc3RyZXRjaDogbm9ybWFsO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1sZWFkaW5nLW5vbmUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tdHJhY2tpbmctbm9ybWFsKTtcbiAgcGFkZGluZy1ibG9jazogdmFyKC0tc3BhY2luZy0wNzUpO1xuICBwYWRkaW5nLWlubGluZTogdmFyKC0tc3BhY2luZy0xMDApO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1zbWFsbC1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS10cmFja2luZy1ub3JtYWwpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGVhZGluZy1ub25lKTtcbiAgcGFkZGluZy1ibG9jazogdmFyKC0tc3BhY2luZy0wMjUpO1xuICBwYWRkaW5nLWlubGluZTogdmFyKC0tc3BhY2luZy0wNzUpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1idG4tcmFkaXVzKTtcbn1cbi5jLXRyZWVfX2xpc3RfX3RvZ2dsZXI6aG92ZXIsIC5jLXRyZWVfX2xpc3RfX3RvZ2dsZXI6YWN0aXZlLCAuYy10cmVlX19saXN0X190b2dnbGVyOmZvY3VzIHtcbiAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQsIHRyYW5zZm9ybSB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dCwgb3BhY2l0eSB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dDtcbn1cbi5jLXRyZWVfX2xpc3RfX3RvZ2dsZXI6aG92ZXI6YWN0aXZlLCAuYy10cmVlX19saXN0X190b2dnbGVyOmFjdGl2ZTphY3RpdmUsIC5jLXRyZWVfX2xpc3RfX3RvZ2dsZXI6Zm9jdXM6YWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjkpO1xufVxuLmMtdHJlZV9fbGlzdF9fdG9nZ2xlci1pY29uIHtcbiAgd2lkdGg6IHZhcigtLWljb24tbXMpO1xuICBtYXgtaGVpZ2h0OiB2YXIoLS1pY29uLW1zKTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBjb2xvcjogaW5oZXJpdDtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0O1xufVxuLmMtdHJlZV9fbGlzdF9fdG9nZ2xlclthcmlhLWV4cGFuZGVkPXRydWVdID4gLmMtdHJlZV9fbGlzdF9fdG9nZ2xlci1pY29uIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbn1cbi5jLXRyZWVfX2xpc3RfX3RvZ2dsZXIgKyAuYy10cmVlX19saXN0Om5vdCguaXMtb3BlbiksIC5jLXRyZWVfX2xpc3RfX3RvZ2dsZXIgfiAuYy10cmVlX19saXN0Om5vdCguaXMtb3Blbikge1xuICBoZWlnaHQ6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4uYy10cmVlX19saXN0IC5idXR0b24tZWRpdC1pdGVtLS13cmFwcGVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tbGVmdDogdmFyKC0tc3BhY2luZy0wNTApO1xufVxuLmMtdHJlZV9fbGlzdC5pcy1vcGVuIHtcbiAgYW5pbWF0aW9uOiBmYWRlLWluIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0O1xufVxuLmMtdHJlZV9fc2lkZWJhciB7XG4gIGZsZXg6IG5vbmU7XG59XG4uYy10cmVlX19idXR0b24ge1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtbSk7XG4gIGJvcmRlci13aWR0aDogdmFyKC0tYnV0dG9uLWJvcmRlci13aWR0aCk7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1mb250LXNpemUpO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtc3RyZXRjaDogbm9ybWFsO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1sZWFkaW5nLW5vbmUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tdHJhY2tpbmctbm9ybWFsKTtcbiAgcGFkZGluZy1ibG9jazogdmFyKC0tc3BhY2luZy0wNzUpO1xuICBwYWRkaW5nLWlubGluZTogdmFyKC0tc3BhY2luZy0xMDApO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG59XG4uYy10cmVlX19idXR0b246aG92ZXIsIC5jLXRyZWVfX2J1dHRvbjphY3RpdmUsIC5jLXRyZWVfX2J1dHRvbjpmb2N1cyB7XG4gIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0LCB0cmFuc2Zvcm0gdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQsIG9wYWNpdHkgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQ7XG59XG4uYy10cmVlX19idXR0b246aG92ZXI6YWN0aXZlLCAuYy10cmVlX19idXR0b246YWN0aXZlOmFjdGl2ZSwgLmMtdHJlZV9fYnV0dG9uOmZvY3VzOmFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMC45KTtcbn1cbi5jLXRyZWVfX2J1dHRvbjpob3ZlciwgLmMtdHJlZV9fYnV0dG9uOmZvY3VzIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLW9yYW5nZSk7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLmMtdHJlZSAuYy1zaWRlYmFyIHtcbiAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgIHRvcDogNSU7XG4gIH1cbn1cblxuLyoqXG4gKiBNYWluXG4gKiBHcm91cDogVXRpbGl0aWVzXG4gKi9cbi8qKlxuICogQTExeVxuICogR3JvdXA6IFV0aWxpdGllc1xuICovXG4vKipcbiAqIEhpZGUgb25seSB2aXN1YWxseSwgYnV0IGhhdmUgaXQgYXZhaWxhYmxlIGZvciBzY3JlZW4gcmVhZGVyczpcbiAqIGh0dHA6Ly9zbm9vay5jYS9hcmNoaXZlcy9odG1sX2FuZF9jc3MvaGlkaW5nLWNvbnRlbnQtZm9yLWFjY2Vzc2liaWxpdHlcbiAqL1xuLnUtc3IsXG4uc2NyZWVuLXJlYWRlci10ZXh0IHtcbiAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XG4gIGNsaXA6IHJlY3QoMCAwIDAgMCkgIWltcG9ydGFudDtcbiAgY2xpcC1wYXRoOiBpbnNldCg1MCUpICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogMXB4ICFpbXBvcnRhbnQ7XG4gIG1hcmdpbjogLTFweCAhaW1wb3J0YW50O1xuICBvdmVyZmxvdzogaGlkZGVuICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXAgIWltcG9ydGFudDtcbiAgd2lkdGg6IDFweCAhaW1wb3J0YW50O1xufVxuLnUtc3I6YWN0aXZlLCAudS1zcjpmb2N1cyxcbi5zY3JlZW4tcmVhZGVyLXRleHQ6YWN0aXZlLFxuLnNjcmVlbi1yZWFkZXItdGV4dDpmb2N1cyB7XG4gIGNsaXA6IGF1dG87XG4gIGNsaXAtcGF0aDogbm9uZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogYXV0bztcbiAgd2lkdGg6IGF1dG87XG4gIHotaW5kZXg6IDEwMDAwMDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4udS1za2lwLWxpbmsge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogLTk5OXB4O1xuICBsZWZ0OiAtOTk5cHg7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMXB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjbGlwLXBhdGg6IGluc2V0KDUwJSk7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGJvcmRlcjogMDtcbn1cbi51LXNraXAtbGluazpmb2N1cyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxcmVtO1xuICBsZWZ0OiAxcmVtO1xuICB3aWR0aDogYXV0bztcbiAgaGVpZ2h0OiBhdXRvO1xuICBwYWRkaW5nOiAwLjc1cmVtIDFyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG4gIGNvbG9yOiAjZmZmO1xuICB6LWluZGV4OiAxMDAwO1xuICBjbGlwLXBhdGg6IG5vbmU7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBib3gtc2hhZG93OiAwIDAgMCAycHggd2hpdGU7XG59XG5cbi5tb2JpbGUtbWVudS1pcy1vcGVuIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuLm1vYmlsZS1tZW51LWlzLW9wZW46OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNSk7XG4gIHotaW5kZXg6IDk5O1xuICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIodmFyKC0tc3BhY2luZy0wNTApKTtcbn1cblxuLyoqXG4gKiBCYWNrZ3JvdW5kIENvbG9yXG4gKiBHcm91cDogVXRpbGl0aWVzXG4gKi9cbi51LWJnLWNvbG9yLWJyYW5kLWJyb3duLXNlbWktdHJhbnNwYXJlbnQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1icm93bi1zZW1pLXRyYW5zcGFyZW50KTtcbn1cbi51LWJnLWNvbG9yLWJyYW5kLWJyb3duIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYnJvd24pO1xufVxuLnUtYmctY29sb3ItYnJhbmQtcmVkLXNlbWktdHJhbnNwYXJlbnQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1yZWQtc2VtaS10cmFuc3BhcmVudCk7XG59XG4udS1iZy1jb2xvci1icmFuZC1kYXJrLXJlZCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWRhcmstcmVkKTtcbn1cbi51LWJnLWNvbG9yLWJyYW5kLXJlZCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLXJlZCk7XG59XG4udS1iZy1jb2xvci1hbGVydC1ncmVlbi1kYXJrIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYWxlcnQtZ3JlZW4tZGFyayk7XG59XG4udS1iZy1jb2xvci1icmFuZC1ncmVlbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWdyZWVuKTtcbn1cbi51LWJnLWNvbG9yLWJyYW5kLWJsdWUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcbn1cbi51LWJnLWNvbG9yLWJyYW5kLWJsdWUtbGlnaHQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlLWxpZ2h0KTtcbn1cbi51LWJnLWNvbG9yLWJyYW5kLWJsdWUtbGlnaHQtc2VtaS10cmFuc3BhcmVudCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUtbGlnaHQtc2VtaS10cmFuc3BhcmVudCk7XG59XG4udS1iZy1jb2xvci1icmFuZC1ibHVlLXNlbWktdHJhbnNwYXJlbnQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlLXNlbWktdHJhbnNwYXJlbnQpO1xufVxuLnUtYmctY29sb3ItYnJhbmQtb3JhbmdlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtb3JhbmdlKTtcbn1cbi51LWJnLWNvbG9yLWJyYW5kLWRhcmstZ3JheSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWRhcmstZ3JheSk7XG59XG4udS1iZy1jb2xvci1icmFuZC1ncmF5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtZ3JheSk7XG59XG4udS1iZy1jb2xvci1icmFuZC1ibHVlLWRhcmsge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlLWRhcmspO1xufVxuLnUtYmctY29sb3ItYnJhbmQtd2hpdGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC13aGl0ZSk7XG59XG4udS1iZy1jb2xvci1icmFuZC1saWdodC1ncmF5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtbGlnaHQtZ3JheSk7XG59XG4udS1iZy1jb2xvci1icmFuZC1saWdodGVyLWdyYXkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1saWdodGVyLWdyYXkpO1xufVxuLnUtYmctY29sb3ItYnJhbmQtc2VhcmNoLWdyYXkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1zZWFyY2gtZ3JheSk7XG59XG4udS1iZy1jb2xvci1uZXV0cmFsLTEwMDAge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1uZXV0cmFsLTEwMDApO1xufVxuLnUtYmctY29sb3ItbmV1dHJhbC05NzUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1uZXV0cmFsLTk3NSk7XG59XG4udS1iZy1jb2xvci1uZXV0cmFsLTk1MCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLW5ldXRyYWwtOTUwKTtcbn1cbi51LWJnLWNvbG9yLW5ldXRyYWwtOTAwIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItbmV1dHJhbC05MDApO1xufVxuLnUtYmctY29sb3ItbmV1dHJhbC04MDAge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1uZXV0cmFsLTgwMCk7XG59XG4udS1iZy1jb2xvci1uZXV0cmFsLTcwMCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLW5ldXRyYWwtNzAwKTtcbn1cbi51LWJnLWNvbG9yLW5ldXRyYWwtNjAwIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItbmV1dHJhbC02MDApO1xufVxuLnUtYmctY29sb3ItbmV1dHJhbC01MDAge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1uZXV0cmFsLTUwMCk7XG59XG4udS1iZy1jb2xvci1uZXV0cmFsLTQwMCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLW5ldXRyYWwtNDAwKTtcbn1cbi51LWJnLWNvbG9yLW5ldXRyYWwtMzAwIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItbmV1dHJhbC0zMDApO1xufVxuLnUtYmctY29sb3ItbmV1dHJhbC0yMDAge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1uZXV0cmFsLTIwMCk7XG59XG4udS1iZy1jb2xvci1uZXV0cmFsLTEwMCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLW5ldXRyYWwtMTAwKTtcbn1cbi51LWJnLWNvbG9yLW5ldXRyYWwtMDUwIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItbmV1dHJhbC0wNTApO1xufVxuLnUtYmctY29sb3ItbmV1dHJhbC0wMDAge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1uZXV0cmFsLTAwMCk7XG59XG4udS1iZy1jb2xvci1kYXJrIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItZGFyayk7XG59XG4udS1iZy1jb2xvci1saWdodCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0KTtcbn1cbi51LWJnLWNvbG9yLWZhZGUtbGlnaHQtNSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWZhZGUtbGlnaHQtNSk7XG59XG4udS1iZy1jb2xvci1mYWRlLWxpZ2h0LTEwIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItZmFkZS1saWdodC0xMCk7XG59XG4udS1iZy1jb2xvci1mYWRlLWxpZ2h0LTIwIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItZmFkZS1saWdodC0yMCk7XG59XG4udS1iZy1jb2xvci1mYWRlLWxpZ2h0LTMwIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItZmFkZS1saWdodC0zMCk7XG59XG4udS1iZy1jb2xvci1mYWRlLWxpZ2h0LTQwIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItZmFkZS1saWdodC00MCk7XG59XG4udS1iZy1jb2xvci1mYWRlLWxpZ2h0LTUwIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItZmFkZS1saWdodC01MCk7XG59XG4udS1iZy1jb2xvci1mYWRlLWxpZ2h0LTYwIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItZmFkZS1saWdodC02MCk7XG59XG4udS1iZy1jb2xvci1mYWRlLWxpZ2h0LTcwIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItZmFkZS1saWdodC03MCk7XG59XG4udS1iZy1jb2xvci1mYWRlLWxpZ2h0LTgwIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItZmFkZS1saWdodC04MCk7XG59XG4udS1iZy1jb2xvci1mYWRlLWxpZ2h0LTkwIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItZmFkZS1saWdodC05MCk7XG59XG4udS1iZy1jb2xvci1mYWRlLWRhcmstNSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWZhZGUtZGFyay01KTtcbn1cbi51LWJnLWNvbG9yLWZhZGUtZGFyay0xMCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWZhZGUtZGFyay0xMCk7XG59XG4udS1iZy1jb2xvci1mYWRlLWRhcmstMjAge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1mYWRlLWRhcmstMjApO1xufVxuLnUtYmctY29sb3ItZmFkZS1kYXJrLTMwIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItZmFkZS1kYXJrLTMwKTtcbn1cbi51LWJnLWNvbG9yLWZhZGUtZGFyay00MCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWZhZGUtZGFyay00MCk7XG59XG4udS1iZy1jb2xvci1mYWRlLWRhcmstNTAge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1mYWRlLWRhcmstNTApO1xufVxuLnUtYmctY29sb3ItZmFkZS1kYXJrLTYwIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItZmFkZS1kYXJrLTYwKTtcbn1cbi51LWJnLWNvbG9yLWZhZGUtZGFyay03MCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWZhZGUtZGFyay03MCk7XG59XG4udS1iZy1jb2xvci1mYWRlLWRhcmstODAge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1mYWRlLWRhcmstODApO1xufVxuLnUtYmctY29sb3ItZmFkZS1kYXJrLTkwIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItZmFkZS1kYXJrLTkwKTtcbn1cbi51LWJnLWNvbG9yLWZvY3VzLXN0cm9rZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWZvY3VzLXN0cm9rZSk7XG59XG4udS1iZy1jb2xvci10ZXh0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItdGV4dCk7XG59XG4udS1iZy1jb2xvci10ZXh0LWxpZ2h0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItdGV4dC1saWdodCk7XG59XG5cbi8qKlxuICogQmFja2dyb3VuZFxuICogR3JvdXA6IFV0aWxpdGllc1xuICovXG4udS1ici10IHtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIGN1cnJlbnRjb2xvcjtcbn1cblxuLnUtYnItYiB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBjdXJyZW50Y29sb3I7XG59XG5cbi51LWJyLWwge1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkIGN1cnJlbnRjb2xvcjtcbn1cblxuLnUtYnItciB7XG4gIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIGN1cnJlbnRjb2xvcjtcbn1cblxuLnUtYnJjLWdyYXktNTAge1xuICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLW5ldXRyYWwtNTApO1xufVxuXG4vKipcbiAqIENsZWFyZml4XG4gKiBHcm91cDogVXRpbGl0aWVzXG4gKi9cbi51LWNsZWFyZml4OjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCIgIWltcG9ydGFudDtcbiAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgY2xlYXI6IGJvdGggIWltcG9ydGFudDtcbn1cblxuLyoqXG4gKiBDb2xvclxuICogR3JvdXA6IFV0aWxpdGllc1xuICovXG4udS1jb2xvci1icmFuZC1icm93bi1zZW1pLXRyYW5zcGFyZW50IHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJyb3duLXNlbWktdHJhbnNwYXJlbnQpO1xufVxuLnUtY29sb3ItYnJhbmQtYnJvd24ge1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYnJvd24pO1xufVxuLnUtY29sb3ItYnJhbmQtcmVkLXNlbWktdHJhbnNwYXJlbnQge1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtcmVkLXNlbWktdHJhbnNwYXJlbnQpO1xufVxuLnUtY29sb3ItYnJhbmQtZGFyay1yZWQge1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtZGFyay1yZWQpO1xufVxuLnUtY29sb3ItYnJhbmQtcmVkIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLXJlZCk7XG59XG4udS1jb2xvci1hbGVydC1ncmVlbi1kYXJrIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWFsZXJ0LWdyZWVuLWRhcmspO1xufVxuLnUtY29sb3ItYnJhbmQtZ3JlZW4ge1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtZ3JlZW4pO1xufVxuLnUtY29sb3ItYnJhbmQtYmx1ZSB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcbn1cbi51LWNvbG9yLWJyYW5kLWJsdWUtbGlnaHQge1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZS1saWdodCk7XG59XG4udS1jb2xvci1icmFuZC1ibHVlLWxpZ2h0LXNlbWktdHJhbnNwYXJlbnQge1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZS1saWdodC1zZW1pLXRyYW5zcGFyZW50KTtcbn1cbi51LWNvbG9yLWJyYW5kLWJsdWUtc2VtaS10cmFuc3BhcmVudCB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlLXNlbWktdHJhbnNwYXJlbnQpO1xufVxuLnUtY29sb3ItYnJhbmQtb3JhbmdlIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLW9yYW5nZSk7XG59XG4udS1jb2xvci1icmFuZC1kYXJrLWdyYXkge1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtZGFyay1ncmF5KTtcbn1cbi51LWNvbG9yLWJyYW5kLWdyYXkge1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtZ3JheSk7XG59XG4udS1jb2xvci1icmFuZC1ibHVlLWRhcmsge1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZS1kYXJrKTtcbn1cbi51LWNvbG9yLWJyYW5kLXdoaXRlIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLXdoaXRlKTtcbn1cbi51LWNvbG9yLWJyYW5kLWxpZ2h0LWdyYXkge1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtbGlnaHQtZ3JheSk7XG59XG4udS1jb2xvci1icmFuZC1saWdodGVyLWdyYXkge1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtbGlnaHRlci1ncmF5KTtcbn1cbi51LWNvbG9yLWJyYW5kLXNlYXJjaC1ncmF5IHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLXNlYXJjaC1ncmF5KTtcbn1cbi51LWNvbG9yLW5ldXRyYWwtMTAwMCB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1uZXV0cmFsLTEwMDApO1xufVxuLnUtY29sb3ItbmV1dHJhbC05NzUge1xuICBjb2xvcjogdmFyKC0tY29sb3ItbmV1dHJhbC05NzUpO1xufVxuLnUtY29sb3ItbmV1dHJhbC05NTAge1xuICBjb2xvcjogdmFyKC0tY29sb3ItbmV1dHJhbC05NTApO1xufVxuLnUtY29sb3ItbmV1dHJhbC05MDAge1xuICBjb2xvcjogdmFyKC0tY29sb3ItbmV1dHJhbC05MDApO1xufVxuLnUtY29sb3ItbmV1dHJhbC04MDAge1xuICBjb2xvcjogdmFyKC0tY29sb3ItbmV1dHJhbC04MDApO1xufVxuLnUtY29sb3ItbmV1dHJhbC03MDAge1xuICBjb2xvcjogdmFyKC0tY29sb3ItbmV1dHJhbC03MDApO1xufVxuLnUtY29sb3ItbmV1dHJhbC02MDAge1xuICBjb2xvcjogdmFyKC0tY29sb3ItbmV1dHJhbC02MDApO1xufVxuLnUtY29sb3ItbmV1dHJhbC01MDAge1xuICBjb2xvcjogdmFyKC0tY29sb3ItbmV1dHJhbC01MDApO1xufVxuLnUtY29sb3ItbmV1dHJhbC00MDAge1xuICBjb2xvcjogdmFyKC0tY29sb3ItbmV1dHJhbC00MDApO1xufVxuLnUtY29sb3ItbmV1dHJhbC0zMDAge1xuICBjb2xvcjogdmFyKC0tY29sb3ItbmV1dHJhbC0zMDApO1xufVxuLnUtY29sb3ItbmV1dHJhbC0yMDAge1xuICBjb2xvcjogdmFyKC0tY29sb3ItbmV1dHJhbC0yMDApO1xufVxuLnUtY29sb3ItbmV1dHJhbC0xMDAge1xuICBjb2xvcjogdmFyKC0tY29sb3ItbmV1dHJhbC0xMDApO1xufVxuLnUtY29sb3ItbmV1dHJhbC0wNTAge1xuICBjb2xvcjogdmFyKC0tY29sb3ItbmV1dHJhbC0wNTApO1xufVxuLnUtY29sb3ItbmV1dHJhbC0wMDAge1xuICBjb2xvcjogdmFyKC0tY29sb3ItbmV1dHJhbC0wMDApO1xufVxuLnUtY29sb3ItZGFyayB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1kYXJrKTtcbn1cbi51LWNvbG9yLWxpZ2h0IHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0KTtcbn1cbi51LWNvbG9yLWZhZGUtbGlnaHQtNSB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1mYWRlLWxpZ2h0LTUpO1xufVxuLnUtY29sb3ItZmFkZS1saWdodC0xMCB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1mYWRlLWxpZ2h0LTEwKTtcbn1cbi51LWNvbG9yLWZhZGUtbGlnaHQtMjAge1xuICBjb2xvcjogdmFyKC0tY29sb3ItZmFkZS1saWdodC0yMCk7XG59XG4udS1jb2xvci1mYWRlLWxpZ2h0LTMwIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWZhZGUtbGlnaHQtMzApO1xufVxuLnUtY29sb3ItZmFkZS1saWdodC00MCB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1mYWRlLWxpZ2h0LTQwKTtcbn1cbi51LWNvbG9yLWZhZGUtbGlnaHQtNTAge1xuICBjb2xvcjogdmFyKC0tY29sb3ItZmFkZS1saWdodC01MCk7XG59XG4udS1jb2xvci1mYWRlLWxpZ2h0LTYwIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWZhZGUtbGlnaHQtNjApO1xufVxuLnUtY29sb3ItZmFkZS1saWdodC03MCB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1mYWRlLWxpZ2h0LTcwKTtcbn1cbi51LWNvbG9yLWZhZGUtbGlnaHQtODAge1xuICBjb2xvcjogdmFyKC0tY29sb3ItZmFkZS1saWdodC04MCk7XG59XG4udS1jb2xvci1mYWRlLWxpZ2h0LTkwIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWZhZGUtbGlnaHQtOTApO1xufVxuLnUtY29sb3ItZmFkZS1kYXJrLTUge1xuICBjb2xvcjogdmFyKC0tY29sb3ItZmFkZS1kYXJrLTUpO1xufVxuLnUtY29sb3ItZmFkZS1kYXJrLTEwIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWZhZGUtZGFyay0xMCk7XG59XG4udS1jb2xvci1mYWRlLWRhcmstMjAge1xuICBjb2xvcjogdmFyKC0tY29sb3ItZmFkZS1kYXJrLTIwKTtcbn1cbi51LWNvbG9yLWZhZGUtZGFyay0zMCB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1mYWRlLWRhcmstMzApO1xufVxuLnUtY29sb3ItZmFkZS1kYXJrLTQwIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWZhZGUtZGFyay00MCk7XG59XG4udS1jb2xvci1mYWRlLWRhcmstNTAge1xuICBjb2xvcjogdmFyKC0tY29sb3ItZmFkZS1kYXJrLTUwKTtcbn1cbi51LWNvbG9yLWZhZGUtZGFyay02MCB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1mYWRlLWRhcmstNjApO1xufVxuLnUtY29sb3ItZmFkZS1kYXJrLTcwIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWZhZGUtZGFyay03MCk7XG59XG4udS1jb2xvci1mYWRlLWRhcmstODAge1xuICBjb2xvcjogdmFyKC0tY29sb3ItZmFkZS1kYXJrLTgwKTtcbn1cbi51LWNvbG9yLWZhZGUtZGFyay05MCB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1mYWRlLWRhcmstOTApO1xufVxuLnUtY29sb3ItZm9jdXMtc3Ryb2tlIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWZvY3VzLXN0cm9rZSk7XG59XG4udS1jb2xvci10ZXh0IHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQpO1xufVxuLnUtY29sb3ItdGV4dC1saWdodCB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LWxpZ2h0KTtcbn1cblxuLyoqXG4gKiBDb29raWVzIENvbG9yc1xuICogR3JvdXA6IFV0aWxpdGllc1xuICovXG4uYnRuLWJnY29sb3ItMDAwMDAwIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDAwMDtcbn1cblxuLmJ0bi10ZXh0Y29sb3ItMDAwMDAwIHtcbiAgY29sb3I6ICMwMDAwMDA7XG59XG5cbi5jb29raWVzLWJnY29sb3ItMDAwMDAwIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDAwMDtcbn1cblxuLmJ0bi1iZ2NvbG9yLWZmZmZmZiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG59XG5cbi5idG4tdGV4dGNvbG9yLWZmZmZmZiB7XG4gIGNvbG9yOiAjZmZmZmZmO1xufVxuXG4uY29va2llcy1iZ2NvbG9yLWZmZmZmZiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG59XG5cbi5idG4tYmdjb2xvci0wMDMzNzUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAzMzc1O1xufVxuXG4uYnRuLXRleHRjb2xvci0wMDMzNzUge1xuICBjb2xvcjogIzAwMzM3NTtcbn1cblxuLmNvb2tpZXMtYmdjb2xvci0wMDMzNzUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAzMzc1O1xufVxuXG4uYnRuLWJnY29sb3ItNGI2NTg3IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzRiNjU4Nztcbn1cblxuLmJ0bi10ZXh0Y29sb3ItNGI2NTg3IHtcbiAgY29sb3I6ICM0YjY1ODc7XG59XG5cbi5jb29raWVzLWJnY29sb3ItNGI2NTg3IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzRiNjU4Nztcbn1cblxuLmJ0bi1iZ2NvbG9yLWY4OWIzNCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmODliMzQ7XG59XG5cbi5idG4tdGV4dGNvbG9yLWY4OWIzNCB7XG4gIGNvbG9yOiAjZjg5YjM0O1xufVxuXG4uY29va2llcy1iZ2NvbG9yLWY4OWIzNCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmODliMzQ7XG59XG5cbi5idG4tYmdjb2xvci01NzU3NTcge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTc1NzU3O1xufVxuXG4uYnRuLXRleHRjb2xvci01NzU3NTcge1xuICBjb2xvcjogIzU3NTc1Nztcbn1cblxuLmNvb2tpZXMtYmdjb2xvci01NzU3NTcge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTc1NzU3O1xufVxuXG4vKipcbiAqIERpc3BsYXlcbiAqIEdyb3VwOiBVdGlsaXRpZXNcbiAqL1xuLnUtaGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4udS1kLWZsZXgge1xuICBkaXNwbGF5OiBmbGV4O1xufVxuXG4udS1kLWJsb2NrIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi51LWQtaW5saW5lLWJsb2NrIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4udS1wb3MtcmVsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4udS1vdmVyZmxvdy1oIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLmlzLXVuaW5pdGlhbGl6ZWQge1xuICBvcGFjaXR5OiAwO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuLyoqXG4gKiBJY29uXG4gKiBHcm91cDogVXRpbGl0aWVzXG4gKi9cbltjbGFzcyo9dS1pY29uXSB7XG4gIHdpZHRoOiBhdXRvO1xufVxuXG4vKiBpY29uIHNpemUgKi9cbi51LWljb24teHMge1xuICBmb250LXNpemU6IHZhcigtLWljb24teHMpO1xuICBoZWlnaHQ6IHZhcigtLWljb24teHMpO1xuICBtaW4td2lkdGg6IHZhcigtLWljb24teHMpO1xufVxuXG4udS1pY29uLXNtIHtcbiAgZm9udC1zaXplOiB2YXIoLS1pY29uLXNtKTtcbiAgaGVpZ2h0OiB2YXIoLS1pY29uLXNtKTtcbiAgbWluLXdpZHRoOiB2YXIoLS1pY29uLXNtKTtcbn1cblxuLnUtaWNvbi1tZCB7XG4gIGZvbnQtc2l6ZTogdmFyKC0taWNvbi1tZCk7XG4gIGhlaWdodDogdmFyKC0taWNvbi1tZCk7XG4gIG1pbi13aWR0aDogdmFyKC0taWNvbi1tZCk7XG59XG5cbi51LWljb24tbGcge1xuICBmb250LXNpemU6IHZhcigtLWljb24tbGcpO1xuICBoZWlnaHQ6IHZhcigtLWljb24tbGcpO1xuICBtaW4td2lkdGg6IHZhcigtLWljb24tbGcpO1xufVxuXG4udS1pY29uLXhsIHtcbiAgZm9udC1zaXplOiB2YXIoLS1pY29uLXhsKTtcbiAgaGVpZ2h0OiB2YXIoLS1pY29uLXhsKTtcbiAgbWluLXdpZHRoOiB2YXIoLS1pY29uLXhsKTtcbn1cblxuLnUtaWNvbi0yeGwge1xuICBmb250LXNpemU6IHZhcigtLWljb24tMnhsKTtcbiAgaGVpZ2h0OiB2YXIoLS1pY29uLTJ4bCk7XG4gIG1pbi13aWR0aDogdmFyKC0taWNvbi0yeGwpO1xufVxuXG4udS1pY29uLTN4bCB7XG4gIGZvbnQtc2l6ZTogdmFyKC0taWNvbi0zeGwpO1xuICBoZWlnaHQ6IHZhcigtLWljb24tM3hsKTtcbiAgbWluLXdpZHRoOiB2YXIoLS1pY29uLTN4bCk7XG59XG5cbi51LWljb24tNHhsIHtcbiAgZm9udC1zaXplOiB2YXIoLS1pY29uLTR4bCk7XG4gIGhlaWdodDogdmFyKC0taWNvbi00eGwpO1xuICBtaW4td2lkdGg6IHZhcigtLWljb24tNHhsKTtcbn1cblxuLnUtaWNvbi0tcm91bmRlZCB7XG4gIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi8qKlxuICogTG9hZGluZ1xuICogR3JvdXA6IFV0aWxpdGllc1xuICovXG4udS1pcy1sb2FkaW5nIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvcGFjaXR5OiAwLjc7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0O1xufVxuXG4udS1pcy1sb2FkaW5nOjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgd2lkdGg6IDMwcHg7XG4gIGhlaWdodDogMzBweDtcbiAgbWFyZ2luOiAtMTVweCAwIDAgLTE1cHg7XG4gIGJvcmRlcjogM3B4IHNvbGlkIHJnYmEoNjUsIDExOSwgMTc1LCAwLjMpO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGJvcmRlci10b3AtY29sb3I6ICM0MTc3YWY7XG4gIGFuaW1hdGlvbjogc3BpbiB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uLXNsb3cpIGVhc2UtaW4tb3V0IGluZmluaXRlO1xufVxuXG4vKipcbiAqIE1hcmdpblxuICogR3JvdXA6IFV0aWxpdGllc1xuICovXG4vKiBaZXJvIG1hcmdpbnMgKi9cbi51LW0tMCB7XG4gIG1hcmdpbjogMDtcbn1cblxuLnUtbWItMCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi51LW10LTAge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuXG4udS1tbC0wIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG5cbi51LW1yLTAge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG59XG5cbi8qIEF1dG8gbWFyZ2lucyAqL1xuLnUtbWwtYXV0byB7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xufVxuXG4udS1tci1hdXRvIHtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxuXG4udS1tdC1hdXRvIHtcbiAgbWFyZ2luLXRvcDogYXV0bztcbn1cblxuLnUtbWItYXV0byB7XG4gIG1hcmdpbi1ib3R0b206IGF1dG87XG59XG5cbi8qIFZlcnRpY2FsIG1hcmdpbnMgKi9cbi51LW1ibC0xMDAge1xuICBtYXJnaW4tYmxvY2s6IHZhcigtLXNwYWNpbmctMTAwKTtcbn1cblxuLnUtbXQsXG4udS1tdC1tZCB7XG4gIG1hcmdpbi10b3A6IHZhcigtLXNwYWNlLW1kKTtcbn1cblxuLnUtbXQteHMge1xuICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjZS14cyk7XG59XG5cbi51LW10LXNtIHtcbiAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2Utc20pO1xufVxuXG4udS1tdC1sZyB7XG4gIG1hcmdpbi10b3A6IHZhcigtLXNwYWNlLWxnKTtcbn1cblxuLnUtbXQteGwge1xuICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjZS14bCk7XG59XG5cbi51LW10LTJ4bCB7XG4gIG1hcmdpbi10b3A6IHZhcigtLXNwYWNlLTJ4bCk7XG59XG5cbi51LW10LTN4bCB7XG4gIG1hcmdpbi10b3A6IHZhcigtLXNwYWNlLTN4bCk7XG59XG5cbi51LW10LTR4bCB7XG4gIG1hcmdpbi10b3A6IHZhcigtLXNwYWNlLTR4bCk7XG59XG5cbi51LW10LTIwMCB7XG4gIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmctMjAwKTtcbn1cblxuLnUtbWItMjAwIHtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy0yMDApO1xufVxuXG4udS1tYixcbi51LW1iLW1kIHtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2UtbWQpO1xufVxuXG4udS1tYi14cyB7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNlLXhzKTtcbn1cblxuLnUtbWItc20ge1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjZS1zbSk7XG59XG5cbi51LW1iLWxnIHtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2UtbGcpO1xufVxuXG4udS1tYi14bCB7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNlLXhsKTtcbn1cblxuLnUtbWItMnhsIHtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2UtMnhsKTtcbn1cblxuLnUtbWItM3hsIHtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2UtM3hsKTtcbn1cblxuLnUtbWItNHhsIHtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2UtNHhsKTtcbn1cblxuLyogSG9yaXpvbnRhbCBtYXJnaW5zICovXG4udS1tbCxcbi51LW1sLW1kIHtcbiAgbWFyZ2luLWxlZnQ6IHZhcigtLXNwYWNlLW1kKTtcbn1cblxuLnUtbWwteHMge1xuICBtYXJnaW4tbGVmdDogdmFyKC0tc3BhY2UteHMpO1xufVxuXG4udS1tbC1zbSB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoLS1zcGFjZS1zbSk7XG59XG5cbi51LW1sLWxnIHtcbiAgbWFyZ2luLWxlZnQ6IHZhcigtLXNwYWNlLWxnKTtcbn1cblxuLnUtbWwteGwge1xuICBtYXJnaW4tbGVmdDogdmFyKC0tc3BhY2UteGwpO1xufVxuXG4udS1tbC0yeGwge1xuICBtYXJnaW4tbGVmdDogdmFyKC0tc3BhY2UtMnhsKTtcbn1cblxuLnUtbWwtM3hsIHtcbiAgbWFyZ2luLWxlZnQ6IHZhcigtLXNwYWNlLTN4bCk7XG59XG5cbi51LW1sLTR4bCB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoLS1zcGFjZS00eGwpO1xufVxuXG4udS1tcixcbi51LW1yLW1kIHtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjZS1tZCk7XG59XG5cbi51LW1yLXhzIHtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjZS14cyk7XG59XG5cbi51LW1yLXNtIHtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjZS1zbSk7XG59XG5cbi51LW1yLWxnIHtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjZS1sZyk7XG59XG5cbi51LW1yLXhsIHtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjZS14bCk7XG59XG5cbi51LW1yLTJ4bCB7XG4gIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2UtMnhsKTtcbn1cblxuLnUtbXItM3hsIHtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjZS0zeGwpO1xufVxuXG4udS1tci00eGwge1xuICBtYXJnaW4tcmlnaHQ6IHZhcigtLXNwYWNlLTR4bCk7XG59XG5cbi8qKlxuICogT3BhY2l0eVxuICogR3JvdXA6IFV0aWxpdGllc1xuICovXG4udS1vcGFjaXR5LTUge1xuICAtLW9wYWNpdHk6IDAuMDU7XG59XG5cbi51LW9wYWNpdHktMTAge1xuICAtLW9wYWNpdHk6IDAuMTtcbn1cblxuLnUtb3BhY2l0eS0xNSB7XG4gIC0tb3BhY2l0eTogMC4xNTtcbn1cblxuLnUtb3BhY2l0eS0yMCB7XG4gIC0tb3BhY2l0eTogMC4yO1xufVxuXG4udS1vcGFjaXR5LTI1IHtcbiAgLS1vcGFjaXR5OiAwLjI1O1xufVxuXG4udS1vcGFjaXR5LTMwIHtcbiAgLS1vcGFjaXR5OiAwLjM7XG59XG5cbi51LW9wYWNpdHktMzUge1xuICAtLW9wYWNpdHk6IDAuMzU7XG59XG5cbi51LW9wYWNpdHktNDAge1xuICAtLW9wYWNpdHk6IDAuNDtcbn1cblxuLnUtb3BhY2l0eS00NSB7XG4gIC0tb3BhY2l0eTogMC40NTtcbn1cblxuLnUtb3BhY2l0eS01MCB7XG4gIC0tb3BhY2l0eTogMC41O1xufVxuXG4udS1vcGFjaXR5LTU1IHtcbiAgLS1vcGFjaXR5OiAwLjU1O1xufVxuXG4udS1vcGFjaXR5LTYwIHtcbiAgLS1vcGFjaXR5OiAwLjY7XG59XG5cbi51LW9wYWNpdHktNjUge1xuICAtLW9wYWNpdHk6IDAuNjU7XG59XG5cbi51LW9wYWNpdHktNzAge1xuICAtLW9wYWNpdHk6IDAuNztcbn1cblxuLnUtb3BhY2l0eS03NSB7XG4gIC0tb3BhY2l0eTogMC43NTtcbn1cblxuLnUtb3BhY2l0eS04MCB7XG4gIC0tb3BhY2l0eTogMC44O1xufVxuXG4udS1vcGFjaXR5LTg1IHtcbiAgLS1vcGFjaXR5OiAwLjg1O1xufVxuXG4udS1vcGFjaXR5LTkwIHtcbiAgLS1vcGFjaXR5OiAwLjk7XG59XG5cbi51LW9wYWNpdHktOTUge1xuICAtLW9wYWNpdHk6IDAuOTU7XG59XG5cbi51LW9wYWNpdHktMTAwIHtcbiAgLS1vcGFjaXR5OiAxO1xufVxuXG4vKipcbiAqIFBhZGRpbmdcbiAqIEdyb3VwOiBVdGlsaXRpZXNcbiAqL1xuLyogWmVybyBwYWRkaW5ncyAqL1xuLnUtcC0wIHtcbiAgcGFkZGluZzogMDtcbn1cblxuLnUtcHQtMCB7XG4gIHBhZGRpbmctdG9wOiAwO1xufVxuXG4udS1wYi0wIHtcbiAgcGFkZGluZy1ib3R0b206IDA7XG59XG5cbi51LXBsLTAge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG59XG5cbi51LXByLTAge1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xufVxuXG4vKiBWZXJ0aWNhbCBwYWRkaW5ncyAqL1xuLnUtcHQsXG4udS1wdC1tZCB7XG4gIHBhZGRpbmctdG9wOiB2YXIoLS1zcGFjZS1tZCk7XG59XG5cbi51LXB0LXhzIHtcbiAgcGFkZGluZy10b3A6IHZhcigtLXNwYWNlLXhzKTtcbn1cblxuLnUtcHQtc20ge1xuICBwYWRkaW5nLXRvcDogdmFyKC0tc3BhY2Utc20pO1xufVxuXG4udS1wdC1sZyB7XG4gIHBhZGRpbmctdG9wOiB2YXIoLS1zcGFjZS1sZyk7XG59XG5cbi51LXB0LXhsIHtcbiAgcGFkZGluZy10b3A6IHZhcigtLXNwYWNlLXhsKTtcbn1cblxuLnUtcHQtMnhsIHtcbiAgcGFkZGluZy10b3A6IHZhcigtLXNwYWNlLTJ4bCk7XG59XG5cbi51LXBiLFxuLnUtcGItbWQge1xuICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tc3BhY2UtbWQpO1xufVxuXG4udS1wYi14cyB7XG4gIHBhZGRpbmctYm90dG9tOiB2YXIoLS1zcGFjZS14cyk7XG59XG5cbi51LXBiLXNtIHtcbiAgcGFkZGluZy1ib3R0b206IHZhcigtLXNwYWNlLXNtKTtcbn1cblxuLnUtcGItbGcge1xuICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tc3BhY2UtbGcpO1xufVxuXG4udS1wYi14bCB7XG4gIHBhZGRpbmctYm90dG9tOiB2YXIoLS1zcGFjZS14bCk7XG59XG5cbi51LXBiLTJ4bCB7XG4gIHBhZGRpbmctYm90dG9tOiB2YXIoLS1zcGFjZS0yeGwpO1xufVxuXG4vKiBIb3Jpem9udGFsIHBhZGRpbmdzICovXG4udS1wbCxcbi51LXBsLW1kIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoLS1zcGFjZS1tZCk7XG59XG5cbi51LXBsLXhzIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoLS1zcGFjZS14cyk7XG59XG5cbi51LXBsLXNtIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoLS1zcGFjZS1zbSk7XG59XG5cbi51LXBsLWxnIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoLS1zcGFjZS1sZyk7XG59XG5cbi51LXBsLXhsIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoLS1zcGFjZS14bCk7XG59XG5cbi51LXBsLTJ4bCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKC0tc3BhY2UtMnhsKTtcbn1cblxuLnUtcHIsXG4udS1wci1tZCB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhcigtLXNwYWNlLW1kKTtcbn1cblxuLnUtcHIteHMge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1zcGFjZS14cyk7XG59XG5cbi51LXByLXNtIHtcbiAgcGFkZGluZy1yaWdodDogdmFyKC0tc3BhY2Utc20pO1xufVxuXG4udS1wci1sZyB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhcigtLXNwYWNlLWxnKTtcbn1cblxuLnUtcHIteGwge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1zcGFjZS14bCk7XG59XG5cbi51LXByLTJ4bCB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhcigtLXNwYWNlLTJ4bCk7XG59XG5cbi8qXG4gKiBTaXplXG4gKiBHcm91cDogVXRpbGl0aWVzXG4gKi9cbi8qIFdpZHRoIFV0aWxpdGllcyAqL1xuLnUtbWluLXcwIHtcbiAgbWluLXdpZHRoOiAwO1xufVxuXG4udS1tYXgtdzAge1xuICBtYXgtd2lkdGg6IDA7XG59XG5cbi51LXcxMDAge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLyogSGVpZ2h0IFV0aWxpdGllcyAqL1xuLnUtbWluLWgwIHtcbiAgbWluLWhlaWdodDogMDtcbn1cblxuLnUtbWF4LWgwIHtcbiAgbWF4LWhlaWdodDogMDtcbn1cblxuLnUtaDEwMCB7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuLnUtZnVsbC13aWR0aCB7XG4gIG1pbi13aWR0aDogMTAwdnc7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLWxlZnQ6IC01MHZ3O1xuICBsZWZ0OiA1MCU7XG59XG5cbi8qKlxuICogU3BhY2UgWFxuICogR3JvdXA6IFV0aWxpdGllc1xuICovXG5bY2xhc3MqPXUtc3BhY2UteF0gPiAqIHtcbiAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG59XG5bY2xhc3MqPXUtc3BhY2UteF0gPiAqICsgKiB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoLS1zcGFjZS1tZCkgIWltcG9ydGFudDtcbn1cblxuYm9keSAudS1zcGFjZS14LXNtID4gKiArICoge1xuICBtYXJnaW4tbGVmdDogdmFyKC0tc3BhY2Utc20pICFpbXBvcnRhbnQ7XG59XG5ib2R5IC51LXNwYWNlLXgtbGcgPiAqICsgKiB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoLS1zcGFjZS1sZykgIWltcG9ydGFudDtcbn1cbmJvZHkgLnUtc3BhY2UteC14bCA+ICogKyAqIHtcbiAgbWFyZ2luLWxlZnQ6IHZhcigtLXNwYWNlLXhsKSAhaW1wb3J0YW50O1xufVxuYm9keSAudS1zcGFjZS14LTJ4bCA+ICogKyAqIHtcbiAgbWFyZ2luLWxlZnQ6IHZhcigtLXNwYWNlLTJ4bCkgIWltcG9ydGFudDtcbn1cblxuLyoqXG4gKiBUeXBvZ3JhcGh5XG4gKlxuICogR3JvdXA6IFV0aWxpdGllc1xuICovXG4udS1mb250LXByaW1hcnkge1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1wcmltYXJ5KSAhaW1wb3J0YW50O1xufVxuLnUtZm9udC1wcmltYXJ5ICoge1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1wcmltYXJ5KSAhaW1wb3J0YW50O1xufVxuXG4vKiBGb250IFR5cGVzICovXG4udS1mb250LWgxIHtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtcHJpbWFyeSk7XG4gIGZvbnQtc2l6ZTogdmFyKC0taDEtZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWgxLWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWgxLWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xufVxuXG4udS1mb250LWgyIHtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtcHJpbWFyeSk7XG4gIGZvbnQtc2l6ZTogdmFyKC0taDItZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWgyLWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWgyLWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xufVxuXG4udS1mb250LWgzIHtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtcHJpbWFyeSk7XG4gIGZvbnQtc2l6ZTogdmFyKC0taDMtZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWgzLWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWgzLWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xufVxuXG4udS1mb250LWg0IHtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtcHJpbWFyeSk7XG4gIGZvbnQtc2l6ZTogdmFyKC0taDQtZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWg0LWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWg0LWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xufVxuXG4udS1mb250LWg1IHtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtcHJpbWFyeSk7XG4gIGZvbnQtc2l6ZTogdmFyKC0taDUtZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWg1LWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWg1LWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xufVxuXG4udS1mb250LWg2IHtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtcHJpbWFyeSk7XG4gIGZvbnQtc2l6ZTogdmFyKC0taDYtZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWg2LWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWg2LWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xufVxuXG4udS1mb250LXAge1xuICBmb250LXNpemU6IHZhcigtLWJvZHktZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWJvZHktbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tYm9keS1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbn1cblxuLnUtZm9udC1zbSB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1zbWFsbC1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tYm9keS1zbWFsbC1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LXNtYWxsLWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xufVxuXG4udS1mb250LW1kIHtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1ib2R5LWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWJvZHktbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG59XG5cbi51LWZvbnQtbGcge1xuICBmb250LXNpemU6IHZhcigtLWJvZHktbWVkaXVtLWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1ib2R5LW1lZGl1bS1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LW1lZGl1bS1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbn1cblxuLyogRm9udCBTaXplcyAqL1xuLnUtZnotaDEge1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1wcmltYXJ5KTtcbiAgZm9udC1zaXplOiB2YXIoLS1oMS1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0taDEtbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0taDEtbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG59XG5cbi51LWZ6LWgyIHtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtcHJpbWFyeSk7XG4gIGZvbnQtc2l6ZTogdmFyKC0taDItZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWgyLWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWgyLWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xufVxuXG4udS1mei1oMyB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LXByaW1hcnkpO1xuICBmb250LXNpemU6IHZhcigtLWgzLWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1oMy1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1oMy1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbn1cblxuLnUtZnotaDQge1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1wcmltYXJ5KTtcbiAgZm9udC1zaXplOiB2YXIoLS1oNC1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0taDQtbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0taDQtbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG59XG5cbi51LWZ6LWg1IHtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtcHJpbWFyeSk7XG4gIGZvbnQtc2l6ZTogdmFyKC0taDUtZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWg1LWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWg1LWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xufVxuXG4udS1mei1oNiB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LXByaW1hcnkpO1xuICBmb250LXNpemU6IHZhcigtLWg2LWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1oNi1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1oNi1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbn1cblxuLnUtZnotcCB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tYm9keS1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xufVxuXG4udS1mei1zbSB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1zbWFsbC1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tYm9keS1zbWFsbC1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LXNtYWxsLWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xufVxuXG4udS1mei1tZCB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tYm9keS1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xufVxuXG4udS1mei1sZyB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1tZWRpdW0tZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWJvZHktbWVkaXVtLWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWJvZHktbWVkaXVtLWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xufVxuXG4vKiBUZXh0IGFsaWdubWVudCAqL1xuLnUtdGEtcmlnaHQge1xuICB0ZXh0LWFsaWduOiByaWdodCAhaW1wb3J0YW50O1xufVxuXG4udS10YS1sZWZ0IHtcbiAgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50O1xufVxuXG4udS10YS1jZW50ZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDtcbn1cblxuLyogVGV4dCB0cmFuc2Zvcm0gKi9cbi51LXR0LXVwIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZSAhaW1wb3J0YW50O1xufVxuXG4udS10dC1jYXAge1xuICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZSAhaW1wb3J0YW50O1xufVxuXG4vKiBGb250IHdlaWdodHMgKi9cbi51LWZ3LW5vcm1hbCB7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWwgIWltcG9ydGFudDtcbn1cblxuLnUtZnctYm9sZCB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkICFpbXBvcnRhbnQ7XG59XG5cbi51LWZ3LWV4dHJhLWJvbGQge1xuICBmb250LXdlaWdodDogODAwICFpbXBvcnRhbnQ7XG59XG5cbi51LWZ3LWJsYWNrIHtcbiAgZm9udC13ZWlnaHQ6IDkwMCAhaW1wb3J0YW50O1xufVxuXG4udS1mdy0zMDAge1xuICBmb250LXdlaWdodDogMzAwICFpbXBvcnRhbnQ7XG59XG5cbi51LWZ3LTQwMCB7XG4gIGZvbnQtd2VpZ2h0OiA0MDAgIWltcG9ydGFudDtcbn1cblxuLnUtZnctNTAwIHtcbiAgZm9udC13ZWlnaHQ6IDUwMCAhaW1wb3J0YW50O1xufVxuXG4udS1mdy02MDAge1xuICBmb250LXdlaWdodDogNjAwICFpbXBvcnRhbnQ7XG59XG5cbi51LWZ3LTcwMCB7XG4gIGZvbnQtd2VpZ2h0OiA3MDAgIWltcG9ydGFudDtcbn1cblxuLnUtZnctODAwIHtcbiAgZm9udC13ZWlnaHQ6IDgwMCAhaW1wb3J0YW50O1xufVxuXG4udS1mdy05MDAge1xuICBmb250LXdlaWdodDogOTAwICFpbXBvcnRhbnQ7XG59XG5cbi8qIFRydW5jYXRlIHRleHQgKi9cbi51LXRydW5jYXRlIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi8qIEJyZWFrIFdvcmQgKi9cbi51LWJyZWFrLXdvcmQge1xuICBvdmVyZmxvdy13cmFwOiBicmVhay13b3JkO1xuICB3b3JkLWJyZWFrOiBicmVhay13b3JkO1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xufVxuXG4vKiBIaWdobGlnaHQgdGV4dCAqL1xuLnUtaGlnaGxpZ2h0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtb3JhbmdlKTtcbn1cblxuLyogVGV4dCBkZWNvcmF0aW9uICovXG4udS10ZC1uIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4uaGFzLXRleHQtYWxpZ24tY2VudGVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uaGFzLXRleHQtYWxpZ24tcmlnaHQge1xuICB0ZXh0LWFsaWduOiByaWdodDtcbn1cblxuLyoqXG4gKiBDU1MgRGVidWdcbiAqIEdyb3VwOiBTY29wZXNcbiAqL1xuLnUtY3NzLWRlYnVnIHtcbiAgLyoqXG4gICAqIE91dGxpbmUgYWxsIGNsYXNzZXMuXG4gICAqL1xuICAvKipcbiAgICogT3V0bGluZSBhbGwgQkVNIEVsZW1lbnRzLlxuICAgKi9cbiAgLyoqXG4gICAqIE91dGxpbmUgYWxsIEJFTSBNb2RpZmllcnMuXG4gICAqL1xuICAvKipcbiAgICogT3V0bGluZSBhbGwgT2JqZWN0IGNsYXNzZXMuXG4gICAqL1xuICAvKipcbiAgICogT3V0bGluZSBhbGwgQ29tcG9uZW50IGNsYXNzZXMuXG4gICAqL1xuICAvKipcbiAgICogT3V0bGluZSBhbGwgUmVzcG9uc2l2ZSBjbGFzc2VzLlxuICAgKi9cbiAgLyoqXG4gICAqIE91dGxpbmUgYWxsIEhhY2sgY2xhc3Nlcy5cbiAgICovXG4gIC8qIEhlYWRlcnMgb3V0IG9mIG9yZGVyICovXG4gIC8qKlxuICAgKiBEZWJ1Z2dpbmcgPGhlYWQ+IHN0eWxlcy5cbiAgICovXG4gIC8qKlxuICAgKiBFeHRlcm5hbCBSZXNvdXJjZXNcbiAgICovXG4gIC8qKlxuICAgKiBJbmxpbmUgUmVzb3VyY2VzXG4gICAqL1xuICAvKipcbiAgICogQmxvY2tlZCBSZXNvdXJjZXNcbiAgICovXG4gIC8qKlxuICAgKiBUaGlyZC1wYXJ0eSBCbG9ja2luZyBSZXNvdXJjZXNcbiAgICovXG59XG4udS1jc3MtZGVidWcgW2NsYXNzXSB7XG4gIG91dGxpbmU6IDVweCBzb2xpZCBsaWdodGdyZXk7XG59XG4udS1jc3MtZGVidWcgW2NsYXNzKj1fX10ge1xuICBvdXRsaW5lOiA1cHggc29saWQgZ3JleTtcbn1cbi51LWNzcy1kZWJ1ZyBbY2xhc3MqPVwiLS1cIl0ge1xuICBvdXRsaW5lOiA1cHggc29saWQgZGFya2dyZXk7XG59XG4udS1jc3MtZGVidWcgW2NsYXNzXj1vLV0sXG4udS1jc3MtZGVidWcgW2NsYXNzKj1vLV0ge1xuICBvdXRsaW5lOiA1cHggc29saWQgb3JhbmdlO1xufVxuLnUtY3NzLWRlYnVnIFtjbGFzc149Yy1dLFxuLnUtY3NzLWRlYnVnIFtjbGFzcyo9XCIgYy1cIl0ge1xuICBvdXRsaW5lOiA1cHggc29saWQgY3lhbjtcbn1cbi51LWNzcy1kZWJ1ZyBbY2xhc3MqPVwiQFwiXSB7XG4gIG91dGxpbmU6IDVweCBzb2xpZCByb3N5YnJvd247XG59XG4udS1jc3MtZGVidWcgW2NsYXNzXj1fXSB7XG4gIG91dGxpbmU6IDVweCBzb2xpZCByZWQ7XG59XG4udS1jc3MtZGVidWcgOmlzKGgyLCBoMywgaDQsIGg1LCBoNikgfiBoMSxcbi51LWNzcy1kZWJ1ZyA6aXMoaDMsIGg0LCBoNSwgaDYpIH4gaDIsXG4udS1jc3MtZGVidWcgOmlzKGg0LCBoNSwgaDYpIH4gaDMsXG4udS1jc3MtZGVidWcgOmlzKGg1LCBoNikgfiBoNCxcbi51LWNzcy1kZWJ1ZyBoNiB+IGg1IHtcbiAgb3V0bGluZTogMnB4IGRvdHRlZCBibHVlO1xufVxuLnUtY3NzLWRlYnVnIGhlYWQge1xuICAtLWN0LWlzLXByb2JsZW1hdGljOiBzb2xpZDtcbiAgLS1jdC1pcy1hZmZlY3RlZDogZGFzaGVkO1xuICAtLWN0LW5vdGlmeTogIzBiY2U2YjtcbiAgLS1jdC13YXJuOiAjZmZhNDAwO1xuICAtLWN0LWVycm9yOiAjZmY0ZTQyO1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi51LWNzcy1kZWJ1ZyBoZWFkIHNjcmlwdCxcbi51LWNzcy1kZWJ1ZyBoZWFkIHN0eWxlLFxuLnUtY3NzLWRlYnVnIGhlYWQgW3JlbD1zdHlsZXNoZWV0XSxcbi51LWNzcy1kZWJ1ZyBoZWFkIHRpdGxlLFxuLnUtY3NzLWRlYnVnIGhlYWQgbWV0YVtjaGFyc2V0XTpub3QoOm50aC1jaGlsZCgtbis1KSkge1xuICBtYXJnaW46IDVweDtcbiAgcGFkZGluZzogNXB4O1xuICBib3JkZXItd2lkdGg6IDVweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gIGNvbG9yOiAjMzMzO1xufVxuLnUtY3NzLWRlYnVnIGhlYWQgc2NyaXB0LFxuLnUtY3NzLWRlYnVnIGhlYWQgc3R5bGUge1xuICBmb250OiAxNnB4LzEuNSBtb25vc3BhY2U7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLnUtY3NzLWRlYnVnIGhlYWQgc2NyaXB0OjpiZWZvcmUsXG4udS1jc3MtZGVidWcgaGVhZCBzdHlsZTo6YmVmb3JlIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG4udS1jc3MtZGVidWcgaGVhZCBzY3JpcHRbc3JjXSxcbi51LWNzcy1kZWJ1ZyBoZWFkIGxpbmtbcmVsPXN0eWxlc2hlZXRdIHtcbiAgYm9yZGVyLXN0eWxlOiB2YXIoLS1jdC1pcy1wcm9ibGVtYXRpYyk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tY3Qtd2Fybik7XG59XG4udS1jc3MtZGVidWcgaGVhZCBzY3JpcHRbc3JjXTo6YmVmb3JlIHtcbiAgY29udGVudDogXCJbQmxvY2tpbmcgU2NyaXB0IOKAkyBcIiBhdHRyKHNyYykgXCJdXCI7XG59XG4udS1jc3MtZGVidWcgaGVhZCBsaW5rW3JlbD1zdHlsZXNoZWV0XTo6YmVmb3JlIHtcbiAgY29udGVudDogXCJbQmxvY2tpbmcgU3R5bGVzaGVldCDigJMgXCIgYXR0cihocmVmKSBcIl1cIjtcbn1cbi51LWNzcy1kZWJ1ZyBoZWFkIHN0eWxlOm5vdCg6ZW1wdHkpLFxuLnUtY3NzLWRlYnVnIGhlYWQgc2NyaXB0Om5vdCg6ZW1wdHkpIHtcbiAgbWF4LWhlaWdodDogNWVtO1xuICBvdmVyZmxvdzogYXV0bztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZDtcbiAgd2hpdGUtc3BhY2U6IHByZTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jdC1ub3RpZnkpO1xuICBib3JkZXItc3R5bGU6IHZhcigtLWN0LWlzLXByb2JsZW1hdGljKTtcbn1cbi51LWNzcy1kZWJ1ZyBoZWFkIHNjcmlwdDpub3QoOmVtcHR5KTo6YmVmb3JlIHtcbiAgY29udGVudDogXCJbSW5saW5lIFNjcmlwdF0gXCI7XG59XG4udS1jc3MtZGVidWcgaGVhZCBzdHlsZTpub3QoOmVtcHR5KTo6YmVmb3JlIHtcbiAgY29udGVudDogXCJbSW5saW5lIFN0eWxlXSBcIjtcbn1cbi51LWNzcy1kZWJ1ZyBoZWFkIHNjcmlwdDpub3QoOmVtcHR5KSB+IHRpdGxlLFxuLnUtY3NzLWRlYnVnIGhlYWQgc2NyaXB0W3NyY106bm90KFthc3luY10sIFtkZWZlcl0sIFt0eXBlPW1vZHVsZV0pIH4gdGl0bGUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgYm9yZGVyLXN0eWxlOiB2YXIoLS1jdC1pcy1hZmZlY3RlZCk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tY3QtZXJyb3IpO1xufVxuLnUtY3NzLWRlYnVnIGhlYWQgc2NyaXB0W3NyY11bYXN5bmNdW2RlZmVyXSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBib3JkZXItc3R5bGU6IHZhcigtLWN0LWlzLXByb2JsZW1hdGljKTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jdC13YXJuKTtcbn1cbi51LWNzcy1kZWJ1ZyBoZWFkIHNjcmlwdDpub3QoW3NyY10pW2FzeW5jXSxcbi51LWNzcy1kZWJ1ZyBoZWFkIHNjcmlwdDpub3QoW3NyY10pW2RlZmVyXSB7XG4gIGJvcmRlci1zdHlsZTogdmFyKC0tY3QtaXMtcHJvYmxlbWF0aWMpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWN0LXdhcm4pO1xufVxuLnUtY3NzLWRlYnVnIGhlYWQgc2NyaXB0Om5vdChbc3JjXSlbYXN5bmNdOjpiZWZvcmUge1xuICBjb250ZW50OiBcIlRoZSBhc3luYyBhdHRyaWJ1dGUgaXMgcmVkdW5kYW50IG9uIGlubGluZSBzY3JpcHRzXCI7XG59XG4udS1jc3MtZGVidWcgaGVhZCBzY3JpcHQ6bm90KFtzcmNdKVtkZWZlcl06OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiVGhlIGRlZmVyIGF0dHJpYnV0ZSBpcyByZWR1bmRhbnQgb24gaW5saW5lIHNjcmlwdHNcIjtcbn1cbi51LWNzcy1kZWJ1ZyBoZWFkIHNjcmlwdFtzcmNePWh0dHBdLFxuLnUtY3NzLWRlYnVnIGhlYWQgW3JlbD1zdHlsZXNoZWV0XVtocmVmXj1odHRwXSB7XG4gIGJvcmRlci1zdHlsZTogdmFyKC0tY3QtaXMtcHJvYmxlbWF0aWMpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWN0LWVycm9yKTtcbn1cbi51LWNzcy1kZWJ1ZyBoZWFkIHNjcmlwdFtzcmNePWh0dHBdOjpiZWZvcmUge1xuICBjb250ZW50OiBcIltUaGlyZCBQYXJ0eSBCbG9ja2luZyBTY3JpcHQg4oCTIFwiIGF0dHIoc3JjKSBcIl1cIjtcbn1cbi51LWNzcy1kZWJ1ZyBoZWFkIFtyZWw9c3R5bGVzaGVldF1baHJlZl49aHR0cF06OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiW1RoaXJkIFBhcnR5IEJsb2NraW5nIFN0eWxlc2hlZXQg4oCTIFwiIGF0dHIoaHJlZikgXCJdXCI7XG59IiwiLyoqXG4gKiBNYWluIExpYnJhcmllcyBGaWxlXG4gKiBHcm91cDogTGlicmFyaWVzXG4gKi9cblxuQGZvcndhcmQgXCJzd2lwZXJcIjtcbiIsIi8qKlxuICogU3dpcGVyXG4gKiBHcm91cDogTGlicmFyaWVzXG4gKi9cblxuQHVzZSBcInN3aXBlci9zY3NzXCIgYXMgKjtcbkB1c2UgXCJzd2lwZXIvc2Nzcy9wYWdpbmF0aW9uXCIgYXMgKjtcbkB1c2UgXCJzd2lwZXIvc2Nzcy9uYXZpZ2F0aW9uXCIgYXMgKjtcbiIsIi8qKlxuICogU3dpcGVyIDExLjIuMTBcbiAqIE1vc3QgbW9kZXJuIG1vYmlsZSB0b3VjaCBzbGlkZXIgYW5kIGZyYW1ld29yayB3aXRoIGhhcmR3YXJlIGFjY2VsZXJhdGVkIHRyYW5zaXRpb25zXG4gKiBodHRwczovL3N3aXBlcmpzLmNvbVxuICpcbiAqIENvcHlyaWdodCAyMDE0LTIwMjUgVmxhZGltaXIgS2hhcmxhbXBpZGlcbiAqXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2VcbiAqXG4gKiBSZWxlYXNlZCBvbjogSnVuZSAyOCwgMjAyNVxuICovXG5cbkB1c2UgJ3N3aXBlci12YXJzLnNjc3MnIGFzIHZhcnM7XG5AYXQtcm9vdCB7XG4gIEBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAnc3dpcGVyLWljb25zJztcbiAgICBzcmM6IHVybCgnZGF0YTphcHBsaWNhdGlvbi9mb250LXdvZmY7Y2hhcnNldD11dGYtODtiYXNlNjQsIGQwOUdSZ0FCQUFBQUFBWmdBQkFBQUFBQURBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFCR1JsUk5BQUFHUkFBQUFCb0FBQUFjaTZxSGtVZEVSVVlBQUFXZ0FBQUFJd0FBQUNRQVlBQlhSMUJQVXdBQUJoUUFBQUF1QUFBQU51QVk3K3hIVTFWQ0FBQUZ4QUFBQUZBQUFBQm0yZlBjelU5VEx6SUFBQUhjQUFBQVNnQUFBR0JQOVY1UlkyMWhjQUFBQWtRQUFBQ0lBQUFCWXQ2RjBjQmpkblFnQUFBQ3pBQUFBQVFBQUFBRUFCRUJSR2RoYzNBQUFBV1lBQUFBQ0FBQUFBai8vd0FEWjJ4NVpnQUFBeXdBQUFETUFBQUQyTUh0cnlWb1pXRmtBQUFCYkFBQUFEQUFBQUEyRTIrZW9XaG9aV0VBQUFHY0FBQUFId0FBQUNRQzlnRHphRzEwZUFBQUFpZ0FBQUFaQUFBQXJnSmtBQkZzYjJOaEFBQUMwQUFBQUZvQUFBQmFGUUFVR0cxaGVIQUFBQUc4QUFBQUh3QUFBQ0FBY0FCQWJtRnRaUUFBQS9nQUFBRTVBQUFDWHZGZEJ3bHdiM04wQUFBRk5BQUFBR0lBQUFDRTVzNzRoWGphWTJCa1lHQUFZcGY1SHUvaitXMitNbkF6TVlEQXphWDZRakQ2LzQvL0J4ajVHQThBdVJ3TVlHa0FQeXdMMTNqYVkyQmtZR0E4OFA4QWd4NGorLzhmUURZZkExQUVCV2dEQUlCMkJPb0FlTnBqWUdSZ1lOQmg0R2RnWWdBQkVNbklBQkp6WU5BRENRQUFDV2dBc1FCNDJtTmdZZnpDT0lHQmxZR0IwWWN4allHQndSMUtmMldRWkdoaFlHQmlZR1ZtZ0FGR0JpUVFrT2Fhd3REQW9NQlF4WGpnL3dFR1BjWUREQTR3TlVBMkNDZ3dzQUFBTzRFTDZnQUFlTnBqMk0wZ3lBQUNxeGdHTldCa1oyRDQvd01BK3hrRGRnQUFBSGphWTJCZ1lHYUFZQmtHUmdZUWlBSHlHTUY4RmdZSElNM0R3TUhBQkdRck1PZ3lXRExFTTFUOS93OFVCZkVNZ0x6RS8vLy9QLzUvL2YvVi94dityNGVhQUFlTWJBeHdJVVltSU1IRWdLWUFZalVjc0RBd3NMS3hjM0J5Y2ZQdzhqRVFBL2daQkFTRmhFVkV4Y1FsSktXa1pXVGw1QlVVbFpSVlZOWFVOVFFaQmdNQUFNUitFK2dBRVFGRUFBQUFLZ0FxQUNvQU5BQStBRWdBVWdCY0FHWUFjQUI2QUlRQWpnQ1lBS0lBckFDMkFNQUF5Z0RVQU40QTZBRHlBUHdCQmdFUUFSb0JKQUV1QVRnQlFnRk1BVllCWUFGcUFYUUJmZ0dJQVpJQm5BR21BYklCemdIc0FBQjQydTJOTVE2Q1VBeUdXNTY4eDlBbmVZWWdtNE1KYmhLRmFFeElPQVZYOEFwZXdTdDRCaWM0QWZlQWlkM1ZPQml4RHhmUFlFemE1TytYZmkwNFlBRGdnaVVJVUxDdUVKSzhWaE80YlN2cGRua3RISTVRQ1l0ZGkyc2w4Wm5YYUhscVVyTkt6ZEtjVDhjamxxK3J3WlN2SVZjek5pZXpzZm5QL3V6bm1mUEZCTk9ETTJLN01UUTQ1WUVBWnFHUDgxQW1HR2NGM2lQcU9vcDByMVNQVGFUYlZrZlVlNEhYajk3d1lFK3lOd1dZeHdXdTR2MXVnV0hnbzNTMVhkWkVWcVdNN0VUMGNmbkxHeFdma2dSNDJvMlB2V3JETUJTRmovSUhMYUYwektqUmdkaVZNd1NjTlJBb1dVb0g3OFkyaWNCL3lJWTA5QW42QUgyQmR1L1VCK3l4b3BZc2hRaUV2bnZ1MGRVUmdEdDhRZUM4UER3N0ZwamkzZkVBNHovUEVKNllPQjVoS2g0ZGozRXZYaHhQcUgvU0tVWTNySjdzclo0RlpuaDFQTUF0UGh3UDZmbDJQTUpNUERnZVE0clk4WVQ2R3phbzBlQUVBNDA5RHVnZ21UbkZuT2NTQ2lFaUxNZ3hDaVRJNkNxNURaVWQzUW1wMTB2TzBMYUxUZDJjak40Zk91bWxjN2xVWWJTUWNaRmt1dFJHN2c2SktaS3kwUm1kTFk2ODBDRG5FSitVTWtwRkZlMVJON254ZFZwWHJDNGFUdG5hdXJPblllcmNaZzJZVm1MTi9kL2djemZFaW1yRS9mcy9iT3VxMjlabW44dGxvT1JhWGdaZ0dhNzh5TzkvY25YbTJCcGFHdnEyNUR2OVM0RTkrNVNJYzlQcXVwSktoWUZTU2w0NytRY3IxbVlOQUFBQWVOcHR3MGNLd2tBQUFNRFpKQThRN09VSnZrTHNQZlo2ekZWRVJQeThxSGgyWUVSKzNpL0JQODN2SUJMTHlTc29LaW1ycUtxcGEyaHA2K2pxNlJzWUdobWJtSnFaU3kwc3JheHRiTzNzSFJ5ZG5FTVU0dVI2eXg3SkpYdmVQN1dyRHljQUFBQUFBQUgvL3dBQ2VOcGpZR1JnWU9BQlloa2daZ0pDWmdaTkJrWUdMUVp0SUpzRkxNWUFBQXczQUxnQWVOb2xpekVLZ0RBUUJDY2hSYkMyc0ZFUjBZRDZxVlFpQkN2L0g5ZXpHSTZaNVhCQXc4Q0JLL201aVFRVmF1VmJYTG5Pck1adjJvTGRLRmE4UGp1cnUyaEp6R2FibU9TTHpOTXp2dXRwQjNONDJtTmdaR0JnNEdLUVl6QmhZTXhKTE1sajRHQmdBWW93L1AvUEFKSmhMTTZzU29XS2ZXQ0FBd0RBamdiUkFBQjQybU5nWUdCa0FJSWJDWm81SVBybVVuMGhHQTBBTzhFRlRRQUEnKVxuICAgICAgZm9ybWF0KCd3b2ZmJyk7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gIH1cbn1cbkBhdC1yb290IHtcbiAgOnJvb3Qge1xuICAgIC0tc3dpcGVyLXRoZW1lLWNvbG9yOiAje3ZhcnMuJHRoZW1lQ29sb3J9O1xuICAgIC8qXG4gICAgLS1zd2lwZXItcHJlbG9hZGVyLWNvbG9yOiB2YXIoLS1zd2lwZXItdGhlbWUtY29sb3IpO1xuICAgIC0tc3dpcGVyLXdyYXBwZXItdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGluaXRpYWw7XG4gICAgKi9cbiAgfVxufVxuOmhvc3Qge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICB6LWluZGV4OiAxO1xufVxuLnN3aXBlciB7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgcGFkZGluZzogMDtcbiAgLyogRml4IG9mIFdlYmtpdCBmbGlja2VyaW5nICovXG4gIHotaW5kZXg6IDE7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLnN3aXBlci12ZXJ0aWNhbCA+IC5zd2lwZXItd3JhcHBlciB7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG59XG4uc3dpcGVyLXdyYXBwZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHotaW5kZXg6IDE7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IHZhcigtLXN3aXBlci13cmFwcGVyLXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uLCBpbml0aWFsKTtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG59XG4uc3dpcGVyLWFuZHJvaWQgLnN3aXBlci1zbGlkZSxcbi5zd2lwZXItaW9zIC5zd2lwZXItc2xpZGUsXG4uc3dpcGVyLXdyYXBwZXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDBweCwgMCwgMCk7XG59XG4uc3dpcGVyLWhvcml6b250YWwge1xuICB0b3VjaC1hY3Rpb246IHBhbi15O1xufVxuLnN3aXBlci12ZXJ0aWNhbCB7XG4gIHRvdWNoLWFjdGlvbjogcGFuLXg7XG59XG4uc3dpcGVyLXNsaWRlIHtcbiAgZmxleC1zaHJpbms6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtO1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi5zd2lwZXItc2xpZGUtaW52aXNpYmxlLWJsYW5rIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuLyogQXV0byBIZWlnaHQgKi9cbi5zd2lwZXItYXV0b2hlaWdodCxcbi5zd2lwZXItYXV0b2hlaWdodCAuc3dpcGVyLXNsaWRlIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuLnN3aXBlci1hdXRvaGVpZ2h0IC5zd2lwZXItd3JhcHBlciB7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIGhlaWdodDtcbn1cbi5zd2lwZXItYmFja2ZhY2UtaGlkZGVuIC5zd2lwZXItc2xpZGUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbn1cbi8qIDNEIEVmZmVjdHMgKi9cbi5zd2lwZXItM2Quc3dpcGVyLWNzcy1tb2RlIC5zd2lwZXItd3JhcHBlciB7XG4gIHBlcnNwZWN0aXZlOiAxMjAwcHg7XG59XG4uc3dpcGVyLTNkIC5zd2lwZXItd3JhcHBlciB7XG4gIHRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2Q7XG59XG4uc3dpcGVyLTNkIHtcbiAgcGVyc3BlY3RpdmU6IDEyMDBweDtcbiAgLnN3aXBlci1zbGlkZSxcbiAgLnN3aXBlci1jdWJlLXNoYWRvdyB7XG4gICAgdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcbiAgfVxufVxuXG4vKiBDU1MgTW9kZSAqL1xuLnN3aXBlci1jc3MtbW9kZSB7XG4gID4gLnN3aXBlci13cmFwcGVyIHtcbiAgICBvdmVyZmxvdzogYXV0bztcbiAgICBzY3JvbGxiYXItd2lkdGg6IG5vbmU7IC8qIEZvciBGaXJlZm94ICovXG4gICAgLW1zLW92ZXJmbG93LXN0eWxlOiBub25lOyAvKiBGb3IgSW50ZXJuZXQgRXhwbG9yZXIgYW5kIEVkZ2UgKi9cbiAgICAmOjotd2Via2l0LXNjcm9sbGJhciB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuICA+IC5zd2lwZXItd3JhcHBlciA+IC5zd2lwZXItc2xpZGUge1xuICAgIHNjcm9sbC1zbmFwLWFsaWduOiBzdGFydCBzdGFydDtcbiAgfVxuICAmLnN3aXBlci1ob3Jpem9udGFsIHtcbiAgICA+IC5zd2lwZXItd3JhcHBlciB7XG4gICAgICBzY3JvbGwtc25hcC10eXBlOiB4IG1hbmRhdG9yeTtcbiAgICB9XG4gIH1cbiAgJi5zd2lwZXItdmVydGljYWwge1xuICAgID4gLnN3aXBlci13cmFwcGVyIHtcbiAgICAgIHNjcm9sbC1zbmFwLXR5cGU6IHkgbWFuZGF0b3J5O1xuICAgIH1cbiAgfVxuICAmLnN3aXBlci1mcmVlLW1vZGUge1xuICAgID4gLnN3aXBlci13cmFwcGVyIHtcbiAgICAgIHNjcm9sbC1zbmFwLXR5cGU6IG5vbmU7XG4gICAgfVxuICAgID4gLnN3aXBlci13cmFwcGVyID4gLnN3aXBlci1zbGlkZSB7XG4gICAgICBzY3JvbGwtc25hcC1hbGlnbjogbm9uZTtcbiAgICB9XG4gIH1cbiAgJi5zd2lwZXItY2VudGVyZWQge1xuICAgID4gLnN3aXBlci13cmFwcGVyOjpiZWZvcmUge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBmbGV4LXNocmluazogMDtcbiAgICAgIG9yZGVyOiA5OTk5O1xuICAgIH1cbiAgICA+IC5zd2lwZXItd3JhcHBlciA+IC5zd2lwZXItc2xpZGUge1xuICAgICAgc2Nyb2xsLXNuYXAtYWxpZ246IGNlbnRlciBjZW50ZXI7XG4gICAgICBzY3JvbGwtc25hcC1zdG9wOiBhbHdheXM7XG4gICAgfVxuICB9XG4gICYuc3dpcGVyLWNlbnRlcmVkLnN3aXBlci1ob3Jpem9udGFsIHtcbiAgICA+IC5zd2lwZXItd3JhcHBlciA+IC5zd2lwZXItc2xpZGU6Zmlyc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWlubGluZS1zdGFydDogdmFyKC0tc3dpcGVyLWNlbnRlcmVkLW9mZnNldC1iZWZvcmUpO1xuICAgIH1cbiAgICA+IC5zd2lwZXItd3JhcHBlcjo6YmVmb3JlIHtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIG1pbi1oZWlnaHQ6IDFweDtcbiAgICAgIHdpZHRoOiB2YXIoLS1zd2lwZXItY2VudGVyZWQtb2Zmc2V0LWFmdGVyKTtcbiAgICB9XG4gIH1cbiAgJi5zd2lwZXItY2VudGVyZWQuc3dpcGVyLXZlcnRpY2FsIHtcbiAgICA+IC5zd2lwZXItd3JhcHBlciA+IC5zd2lwZXItc2xpZGU6Zmlyc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWJsb2NrLXN0YXJ0OiB2YXIoLS1zd2lwZXItY2VudGVyZWQtb2Zmc2V0LWJlZm9yZSk7XG4gICAgfVxuICAgID4gLnN3aXBlci13cmFwcGVyOjpiZWZvcmUge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtaW4td2lkdGg6IDFweDtcbiAgICAgIGhlaWdodDogdmFyKC0tc3dpcGVyLWNlbnRlcmVkLW9mZnNldC1hZnRlcik7XG4gICAgfVxuICB9XG59XG5cbi8qIFNsaWRlIHN0eWxlcyBzdGFydCAqL1xuLyogM0QgU2hhZG93cyAqL1xuLnN3aXBlci0zZCB7XG4gIC5zd2lwZXItc2xpZGUtc2hhZG93LFxuICAuc3dpcGVyLXNsaWRlLXNoYWRvdy1sZWZ0LFxuICAuc3dpcGVyLXNsaWRlLXNoYWRvdy1yaWdodCxcbiAgLnN3aXBlci1zbGlkZS1zaGFkb3ctdG9wLFxuICAuc3dpcGVyLXNsaWRlLXNoYWRvdy1ib3R0b20sXG4gIC5zd2lwZXItc2xpZGUtc2hhZG93LFxuICAuc3dpcGVyLXNsaWRlLXNoYWRvdy1sZWZ0LFxuICAuc3dpcGVyLXNsaWRlLXNoYWRvdy1yaWdodCxcbiAgLnN3aXBlci1zbGlkZS1zaGFkb3ctdG9wLFxuICAuc3dpcGVyLXNsaWRlLXNoYWRvdy1ib3R0b20ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgei1pbmRleDogMTA7XG4gIH1cbiAgLnN3aXBlci1zbGlkZS1zaGFkb3cge1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4xNSk7XG4gIH1cbiAgLnN3aXBlci1zbGlkZS1zaGFkb3ctbGVmdCB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGxlZnQsIHJnYmEoMCwgMCwgMCwgMC41KSwgcmdiYSgwLCAwLCAwLCAwKSk7XG4gIH1cbiAgLnN3aXBlci1zbGlkZS1zaGFkb3ctcmlnaHQge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgcmdiYSgwLCAwLCAwLCAwLjUpLCByZ2JhKDAsIDAsIDAsIDApKTtcbiAgfVxuICAuc3dpcGVyLXNsaWRlLXNoYWRvdy10b3Age1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byB0b3AsIHJnYmEoMCwgMCwgMCwgMC41KSwgcmdiYSgwLCAwLCAwLCAwKSk7XG4gIH1cbiAgLnN3aXBlci1zbGlkZS1zaGFkb3ctYm90dG9tIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCByZ2JhKDAsIDAsIDAsIDAuNSksIHJnYmEoMCwgMCwgMCwgMCkpO1xuICB9XG59XG4uc3dpcGVyLWxhenktcHJlbG9hZGVyIHtcbiAgd2lkdGg6IDQycHg7XG4gIGhlaWdodDogNDJweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiA1MCU7XG4gIHRvcDogNTAlO1xuICBtYXJnaW4tbGVmdDogLTIxcHg7XG4gIG1hcmdpbi10b3A6IC0yMXB4O1xuICB6LWluZGV4OiAxMDtcbiAgdHJhbnNmb3JtLW9yaWdpbjogNTAlO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBib3JkZXI6IDRweCBzb2xpZCB2YXIoLS1zd2lwZXItcHJlbG9hZGVyLWNvbG9yLCB2YXIoLS1zd2lwZXItdGhlbWUtY29sb3IpKTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBib3JkZXItdG9wLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi5zd2lwZXI6bm90KC5zd2lwZXItd2F0Y2gtcHJvZ3Jlc3MpLFxuLnN3aXBlci13YXRjaC1wcm9ncmVzcyAuc3dpcGVyLXNsaWRlLXZpc2libGUge1xuICAuc3dpcGVyLWxhenktcHJlbG9hZGVyIHtcbiAgICBhbmltYXRpb246IHN3aXBlci1wcmVsb2FkZXItc3BpbiAxcyBpbmZpbml0ZSBsaW5lYXI7XG4gIH1cbn1cbi5zd2lwZXItbGF6eS1wcmVsb2FkZXItd2hpdGUge1xuICAtLXN3aXBlci1wcmVsb2FkZXItY29sb3I6ICNmZmY7XG59XG4uc3dpcGVyLWxhenktcHJlbG9hZGVyLWJsYWNrIHtcbiAgLS1zd2lwZXItcHJlbG9hZGVyLWNvbG9yOiAjMDAwO1xufVxuQGtleWZyYW1lcyBzd2lwZXItcHJlbG9hZGVyLXNwaW4ge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgfVxufVxuLyogU2xpZGUgc3R5bGVzIGVuZCAqL1xuXG5cblxuIiwiQHVzZSAnLi4vc3dpcGVyLXZhcnMuc2NzcycgYXMgdmFycztcbkBhdC1yb290IHtcbiAgOnJvb3Qge1xuICAgIC8qXG4gIC0tc3dpcGVyLXBhZ2luYXRpb24tY29sb3I6IHZhcigtLXN3aXBlci10aGVtZS1jb2xvcik7XG4gIC0tc3dpcGVyLXBhZ2luYXRpb24tbGVmdDogYXV0bztcbiAgLS1zd2lwZXItcGFnaW5hdGlvbi1yaWdodDogOHB4O1xuICAtLXN3aXBlci1wYWdpbmF0aW9uLWJvdHRvbTogOHB4O1xuICAtLXN3aXBlci1wYWdpbmF0aW9uLXRvcDogYXV0bztcbiAgLS1zd2lwZXItcGFnaW5hdGlvbi1mcmFjdGlvbi1jb2xvcjogaW5oZXJpdDtcbiAgLS1zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci1iZy1jb2xvcjogcmdiYSgwLDAsMCwwLjI1KTtcbiAgLS1zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci1zaXplOiA0cHg7XG4gIC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LXNpemU6IDhweDtcbiAgLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtd2lkdGg6IDhweDtcbiAgLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtaGVpZ2h0OiA4cHg7XG4gIC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWJvcmRlci1yYWRpdXM6IDUwJTtcbiAgLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtaW5hY3RpdmUtY29sb3I6ICMwMDA7XG4gIC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWluYWN0aXZlLW9wYWNpdHk6IDAuMjtcbiAgLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtb3BhY2l0eTogMTtcbiAgLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtaG9yaXpvbnRhbC1nYXA6IDRweDtcbiAgLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtdmVydGljYWwtZ2FwOiA2cHg7XG4gICovXG4gIH1cbn1cbi5zd2lwZXItcGFnaW5hdGlvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0cmFuc2l0aW9uOiAzMDBtcyBvcGFjaXR5O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB6LWluZGV4OiAxMDtcbiAgJi5zd2lwZXItcGFnaW5hdGlvbi1oaWRkZW4ge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbiAgLnN3aXBlci1wYWdpbmF0aW9uLWRpc2FibGVkID4gJixcbiAgJi5zd2lwZXItcGFnaW5hdGlvbi1kaXNhYmxlZCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG4vKiBDb21tb24gU3R5bGVzICovXG4uc3dpcGVyLXBhZ2luYXRpb24tZnJhY3Rpb24sXG4uc3dpcGVyLXBhZ2luYXRpb24tY3VzdG9tLFxuLnN3aXBlci1ob3Jpem9udGFsID4gLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMsXG4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy5zd2lwZXItcGFnaW5hdGlvbi1ob3Jpem9udGFsIHtcbiAgYm90dG9tOiB2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1ib3R0b20sIDhweCk7XG4gIHRvcDogdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tdG9wLCBhdXRvKTtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG59XG4vKiBCdWxsZXRzICovXG4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgZm9udC1zaXplOiAwO1xuICAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuMzMpO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxuICAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWFjdGl2ZSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxuICAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWFjdGl2ZS1tYWluIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB9XG4gIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlLXByZXYge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC42Nik7XG4gIH1cbiAgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUtcHJldi1wcmV2IHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuMzMpO1xuICB9XG4gIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlLW5leHQge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC42Nik7XG4gIH1cbiAgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUtbmV4dC1uZXh0IHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuMzMpO1xuICB9XG59XG4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgd2lkdGg6IHZhcigtLXN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC13aWR0aCwgdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LXNpemUsIDhweCkpO1xuICBoZWlnaHQ6IHZhcigtLXN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1oZWlnaHQsIHZhcigtLXN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1zaXplLCA4cHgpKTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYm9yZGVyLXJhZGl1cywgNTAlKTtcbiAgYmFja2dyb3VuZDogdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWluYWN0aXZlLWNvbG9yLCAjMDAwKTtcbiAgb3BhY2l0eTogdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWluYWN0aXZlLW9wYWNpdHksIDAuMik7XG4gIEBhdC1yb290IGJ1dHRvbiN7Jn0ge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gIH1cbiAgLnN3aXBlci1wYWdpbmF0aW9uLWNsaWNrYWJsZSAmIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cblxuICAmOm9ubHktY2hpbGQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUge1xuICBvcGFjaXR5OiB2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtb3BhY2l0eSwgMSk7XG4gIGJhY2tncm91bmQ6IHZhcigtLXN3aXBlci1wYWdpbmF0aW9uLWNvbG9yLCB2YXIoLS1zd2lwZXItdGhlbWUtY29sb3IpKTtcbn1cblxuLnN3aXBlci12ZXJ0aWNhbCA+IC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLFxuLnN3aXBlci1wYWdpbmF0aW9uLXZlcnRpY2FsLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMge1xuICByaWdodDogdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tcmlnaHQsIDhweCk7XG4gIGxlZnQ6IHZhcigtLXN3aXBlci1wYWdpbmF0aW9uLWxlZnQsIGF1dG8pO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwcHgsIC01MCUsIDApO1xuICAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgICBtYXJnaW46IHZhcigtLXN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC12ZXJ0aWNhbC1nYXAsIDZweCkgMDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICAmLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyB7XG4gICAgdG9wOiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgIHdpZHRoOiA4cHg7XG4gICAgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB0cmFuc2l0aW9uOlxuICAgICAgICAyMDBtcyB0cmFuc2Zvcm0sXG4gICAgICAgIDIwMG1zIHRvcDtcbiAgICB9XG4gIH1cbn1cbi5zd2lwZXItaG9yaXpvbnRhbCA+IC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLFxuLnN3aXBlci1wYWdpbmF0aW9uLWhvcml6b250YWwuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cyB7XG4gIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQge1xuICAgIG1hcmdpbjogMCB2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtaG9yaXpvbnRhbC1nYXAsIDRweCk7XG4gIH1cbiAgJi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMge1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgICAgIHRyYW5zaXRpb246XG4gICAgICAgIDIwMG1zIHRyYW5zZm9ybSxcbiAgICAgICAgMjAwbXMgbGVmdDtcbiAgICB9XG4gIH1cbn1cbi5zd2lwZXItaG9yaXpvbnRhbC5zd2lwZXItcnRsID4gLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgdHJhbnNpdGlvbjpcbiAgICAyMDBtcyB0cmFuc2Zvcm0sXG4gICAgMjAwbXMgcmlnaHQ7XG59XG4vKiBGcmFjdGlvbiAqL1xuLnN3aXBlci1wYWdpbmF0aW9uLWZyYWN0aW9uIHtcbiAgY29sb3I6IHZhcigtLXN3aXBlci1wYWdpbmF0aW9uLWZyYWN0aW9uLWNvbG9yLCBpbmhlcml0KTtcbn1cbi8qIFByb2dyZXNzICovXG4uc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci1iZy1jb2xvciwgcmdiYSgwLCAwLCAwLCAwLjI1KSk7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLWZpbGwge1xuICAgIGJhY2tncm91bmQ6IHZhcigtLXN3aXBlci1wYWdpbmF0aW9uLWNvbG9yLCB2YXIoLS1zd2lwZXItdGhlbWUtY29sb3IpKTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCB0b3A7XG4gIH1cbiAgLnN3aXBlci1ydGwgJiAuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXItZmlsbCB7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgdG9wO1xuICB9XG4gIC5zd2lwZXItaG9yaXpvbnRhbCA+ICYsXG4gICYuc3dpcGVyLXBhZ2luYXRpb24taG9yaXpvbnRhbCxcbiAgLnN3aXBlci12ZXJ0aWNhbCA+ICYuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXItb3Bwb3NpdGUsXG4gICYuc3dpcGVyLXBhZ2luYXRpb24tdmVydGljYWwuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXItb3Bwb3NpdGUge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXItc2l6ZSwgNHB4KTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDtcbiAgfVxuICAuc3dpcGVyLXZlcnRpY2FsID4gJixcbiAgJi5zd2lwZXItcGFnaW5hdGlvbi12ZXJ0aWNhbCxcbiAgLnN3aXBlci1ob3Jpem9udGFsID4gJi5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci1vcHBvc2l0ZSxcbiAgJi5zd2lwZXItcGFnaW5hdGlvbi1ob3Jpem9udGFsLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLW9wcG9zaXRlIHtcbiAgICB3aWR0aDogdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXItc2l6ZSwgNHB4KTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDA7XG4gIH1cbn1cbi5zd2lwZXItcGFnaW5hdGlvbi1sb2NrIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbiIsIkB1c2UgJy4uL3N3aXBlci12YXJzLnNjc3MnIGFzIHZhcnM7XG5AYXQtcm9vdCB7XG4gIDpyb290IHtcbiAgICAtLXN3aXBlci1uYXZpZ2F0aW9uLXNpemU6IDQ0cHg7XG4gICAgLypcbiAgLS1zd2lwZXItbmF2aWdhdGlvbi10b3Atb2Zmc2V0OiA1MCU7XG4gIC0tc3dpcGVyLW5hdmlnYXRpb24tc2lkZXMtb2Zmc2V0OiAxMHB4O1xuICAtLXN3aXBlci1uYXZpZ2F0aW9uLWNvbG9yOiB2YXIoLS1zd2lwZXItdGhlbWUtY29sb3IpO1xuICAqL1xuICB9XG59XG4uc3dpcGVyLWJ1dHRvbi1wcmV2LFxuLnN3aXBlci1idXR0b24tbmV4dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiB2YXIoLS1zd2lwZXItbmF2aWdhdGlvbi10b3Atb2Zmc2V0LCA1MCUpO1xuICB3aWR0aDogY2FsYyh2YXIoLS1zd2lwZXItbmF2aWdhdGlvbi1zaXplKSAvIDQ0ICogMjcpO1xuICBoZWlnaHQ6IHZhcigtLXN3aXBlci1uYXZpZ2F0aW9uLXNpemUpO1xuICBtYXJnaW4tdG9wOiBjYWxjKDBweCAtICh2YXIoLS1zd2lwZXItbmF2aWdhdGlvbi1zaXplKSAvIDIpKTtcbiAgei1pbmRleDogMTA7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGNvbG9yOiB2YXIoLS1zd2lwZXItbmF2aWdhdGlvbi1jb2xvciwgdmFyKC0tc3dpcGVyLXRoZW1lLWNvbG9yKSk7XG4gICYuc3dpcGVyLWJ1dHRvbi1kaXNhYmxlZCB7XG4gICAgb3BhY2l0eTogMC4zNTtcbiAgICBjdXJzb3I6IGF1dG87XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIH1cbiAgJi5zd2lwZXItYnV0dG9uLWhpZGRlbiB7XG4gICAgb3BhY2l0eTogMDtcbiAgICBjdXJzb3I6IGF1dG87XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIH1cbiAgLnN3aXBlci1uYXZpZ2F0aW9uLWRpc2FibGVkICYge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuICBzdmcge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBvYmplY3QtZml0OiBjb250YWluO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcbiAgfVxuICAuc3dpcGVyLXJ0bCAmIHN2ZyB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgfVxufVxuLnN3aXBlci1idXR0b24tcHJldixcbi5zd2lwZXItcnRsIC5zd2lwZXItYnV0dG9uLW5leHQge1xuICBsZWZ0OiB2YXIoLS1zd2lwZXItbmF2aWdhdGlvbi1zaWRlcy1vZmZzZXQsIDEwcHgpO1xuICByaWdodDogYXV0bztcbn1cbi5zd2lwZXItYnV0dG9uLW5leHQsXG4uc3dpcGVyLXJ0bCAuc3dpcGVyLWJ1dHRvbi1wcmV2IHtcbiAgcmlnaHQ6IHZhcigtLXN3aXBlci1uYXZpZ2F0aW9uLXNpZGVzLW9mZnNldCwgMTBweCk7XG4gIGxlZnQ6IGF1dG87XG59XG4uc3dpcGVyLWJ1dHRvbi1sb2NrIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi8qIE5hdmlnYXRpb24gZm9udCBzdGFydCAqL1xuLnN3aXBlci1idXR0b24tcHJldixcbi5zd2lwZXItYnV0dG9uLW5leHQge1xuICAmOmFmdGVyIHtcbiAgICBmb250LWZhbWlseTogc3dpcGVyLWljb25zO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tc3dpcGVyLW5hdmlnYXRpb24tc2l6ZSk7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmUgIWltcG9ydGFudDtcbiAgICBsZXR0ZXItc3BhY2luZzogMDtcbiAgICBmb250LXZhcmlhbnQ6IGluaXRpYWw7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gIH1cbn1cbi5zd2lwZXItYnV0dG9uLXByZXYsXG4uc3dpcGVyLXJ0bCAuc3dpcGVyLWJ1dHRvbi1uZXh0IHtcbiAgJjphZnRlciB7XG4gICAgY29udGVudDogJ3ByZXYnO1xuICB9XG59XG4uc3dpcGVyLWJ1dHRvbi1uZXh0LFxuLnN3aXBlci1ydGwgLnN3aXBlci1idXR0b24tcHJldiB7XG4gIHJpZ2h0OiB2YXIoLS1zd2lwZXItbmF2aWdhdGlvbi1zaWRlcy1vZmZzZXQsIDEwcHgpO1xuICBsZWZ0OiBhdXRvO1xuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OiAnbmV4dCc7XG4gIH1cbn1cbi8qIE5hdmlnYXRpb24gZm9udCBlbmQgKi9cbiIsIi8qKlxuICogTWFpbiBTZXR0aW5ncyBGaWxlXG4gKiBHcm91cDogU2V0dGluZ3NcbiAqL1xuXG5AZm9yd2FyZCBcImFuaW1hdGlvbnNcIjtcbkBmb3J3YXJkIFwiYm94LW1vZGVsXCI7XG5AZm9yd2FyZCBcImJyZWFrcG9pbnRzXCI7XG5AZm9yd2FyZCBcImJ1dHRvbnNcIjtcbkBmb3J3YXJkIFwiZm9udHNcIjtcbkBmb3J3YXJkIFwiZ3JpZFwiO1xuQGZvcndhcmQgXCJpY29uc1wiO1xuQGZvcndhcmQgXCJpbnB1dHNcIjtcbkBmb3J3YXJkIFwic2l6ZXNcIjtcbkBmb3J3YXJkIFwic3BhY2luZ1wiO1xuQGZvcndhcmQgXCJzd2lwZXJcIjtcbkBmb3J3YXJkIFwidHlwb2dyYXBoeVwiO1xuQGZvcndhcmQgXCJ2YXJpYWJsZXNcIjtcbiIsIi8qKlxuICogQW5pbWF0aW9uXG4gKiBHcm91cDogU2V0dGluZ3NcbiAqL1xuXG46cm9vdCB7XG4gIC0tdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zcztcbiAgLS10cmFuc2l0aW9uLWR1cmF0aW9uLW1lZGl1bTogMC41cztcbiAgLS10cmFuc2l0aW9uLWR1cmF0aW9uLXNsb3c6IDFzO1xuICAtLXRyYW5zaXRpb24tZHVyYXRpb24tdmVyeS1zbG93OiAycztcbn1cbiIsIi8qKlxuICogQm94IE1vZGVsXG4gKiBHcm91cDogU2V0dGluZ3NcbiAqL1xuXG46cm9vdCB7XG4gIC0tcmFkaXVzOiAxcmVtO1xuICAtLWJvcmRlci1yYWRpdXMtbnVsbDogMDtcbiAgLS1ib3JkZXItcmFkaXVzLXhzOiAwLjI1cmVtOyAvLyA0cHggaW4gMTZweCBiYXNlXG4gIC0tYm9yZGVyLXJhZGl1cy1zOiAwLjVyZW07IC8vIDhweCBpbiAxNnB4IGJhc2VcbiAgLS1ib3JkZXItcmFkaXVzLW06IDFyZW07IC8vIDE2cHggaW4gMTZweCBiYXNlXG4gIC0tYm9yZGVyLXJhZGl1cy1sOiAxLjI1cmVtOyAvLyAyMHB4IGluIDE2cHggYmFzZVxuICAtLWJvcmRlci1yYWRpdXMteGw6IDRyZW07IC8vIDY0cHggaW4gMTZweCBiYXNlXG4gIC0tYm9yZGVyLXJhZGl1cy14eGw6IDhyZW07IC8vIDEyOHB4IGluIDE2cHggYmFzZVxuICAtLWJvcmRlci1yYWRpdXMtZnVsbDogNTAlO1xuICAtLWJveC1zaGFkb3ctbGlnaHQ6IGhzbCgwZGVnIDAlIDAlIC8gMTUlKTtcbiAgLS1ib3gtc2hhZG93LWRhcms6IGhzbCgwZGVnIDAlIDEwMCUgLyAxNSUpO1xuICAtLWJveC1zaGFkb3ctbGlnaHQtMDE6XG4gICAgMHB4IDFweCAycHggMHB4IHZhcigtLWJveC1zaGFkb3ctbGlnaHQsIHJnYigwIDAgMCAvIDE1JSkpLFxuICAgIDBweCAxcHggM3B4IDFweCB2YXIoLS1ib3gtc2hhZG93LWxpZ2h0LCByZ2IoMCAwIDAgLyAxNSUpKTtcbiAgLS1ib3gtc2hhZG93LWxpZ2h0LTAyOlxuICAgIDBweCAxcHggMnB4IDBweCB2YXIoLS1ib3gtc2hhZG93LWxpZ2h0LCByZ2IoMCAwIDAgLyAxNSUpKSxcbiAgICAwcHggMnB4IDZweCAycHggdmFyKC0tYm94LXNoYWRvdy1saWdodCwgcmdiKDAgMCAwIC8gMTUlKSk7XG4gIC0tYm94LXNoYWRvdy1saWdodC0wMzpcbiAgICAwcHggNHB4IDhweCAzcHggdmFyKC0tYm94LXNoYWRvdy1saWdodCwgcmdiKDAgMCAwIC8gMTUlKSksXG4gICAgMHB4IDFweCAzcHggMHB4IHZhcigtLWJveC1zaGFkb3ctbGlnaHQsIHJnYigwIDAgMCAvIDE1JSkpO1xuICAtLWJveC1zaGFkb3ctbGlnaHQtMDQ6XG4gICAgMHB4IDZweCAxMHB4IDRweCB2YXIoLS1ib3gtc2hhZG93LWxpZ2h0LCByZ2IoMCAwIDAgLyAxNSUpKSxcbiAgICAwcHggMnB4IDNweCAwcHggdmFyKC0tYm94LXNoYWRvdy1saWdodCwgcmdiKDAgMCAwIC8gMTUlKSk7XG4gIC0tYm94LXNoYWRvdy1saWdodC0wNTpcbiAgICAwcHggOHB4IDEycHggNnB4IHZhcigtLWJveC1zaGFkb3ctbGlnaHQsIHJnYigwIDAgMCAvIDE1JSkpLFxuICAgIDBweCA0cHggNHB4IDBweCB2YXIoLS1ib3gtc2hhZG93LWxpZ2h0LCByZ2IoMCAwIDAgLyAxNSUpKTtcbiAgLS1ib3gtc2hhZG93LWxpZ2h0LTA2OlxuICAgIDBweCAxNnB4IDMycHggNnB4IHZhcigtLWJveC1zaGFkb3ctbGlnaHQsIHJnYigwIDAgMCAvIDE1JSkpLFxuICAgIDBweCA0cHggOHB4IDBweCB2YXIoLS1ib3gtc2hhZG93LWxpZ2h0LCByZ2IoMCAwIDAgLyAxNSUpKTtcbiAgLS1ib3gtc2hhZG93LWRhcmstMDE6XG4gICAgMHB4IDFweCAycHggMHB4IHZhcigtLWJveC1zaGFkb3ctZGFyaywgcmdiKDI1NSAyNTUgMjU1IC8gMTUlKSksXG4gICAgMHB4IDFweCAzcHggMXB4IHZhcigtLWJveC1zaGFkb3ctZGFyaywgcmdiKDI1NSAyNTUgMjU1IC8gMTUlKSk7XG4gIC0tYm94LXNoYWRvdy1kYXJrLTAyOlxuICAgIDBweCAxcHggMnB4IDBweCB2YXIoLS1ib3gtc2hhZG93LWRhcmssIHJnYigyNTUgMjU1IDI1NSAvIDE1JSkpLFxuICAgIDBweCAycHggNnB4IDJweCB2YXIoLS1ib3gtc2hhZG93LWRhcmssIHJnYigyNTUgMjU1IDI1NSAvIDE1JSkpO1xuICAtLWJveC1zaGFkb3ctZGFyay0wMzpcbiAgICAwcHggNHB4IDhweCAzcHggdmFyKC0tYm94LXNoYWRvdy1kYXJrLCByZ2IoMjU1IDI1NSAyNTUgLyAxNSUpKSxcbiAgICAwcHggMXB4IDNweCAwcHggdmFyKC0tYm94LXNoYWRvdy1kYXJrLCByZ2IoMjU1IDI1NSAyNTUgLyAxNSUpKTtcbiAgLS1ib3gtc2hhZG93LWRhcmstMDQ6XG4gICAgMHB4IDZweCAxMHB4IDRweCB2YXIoLS1ib3gtc2hhZG93LWRhcmssIHJnYigyNTUgMjU1IDI1NSAvIDE1JSkpLFxuICAgIDBweCAycHggM3B4IDBweCB2YXIoLS1ib3gtc2hhZG93LWRhcmssIHJnYigyNTUgMjU1IDI1NSAvIDE1JSkpO1xuICAtLWJveC1zaGFkb3ctZGFyay0wNTpcbiAgICAwcHggOHB4IDEycHggNnB4IHZhcigtLWJveC1zaGFkb3ctZGFyaywgcmdiKDI1NSAyNTUgMjU1IC8gMTUlKSksXG4gICAgMHB4IDRweCA0cHggMHB4IHZhcigtLWJveC1zaGFkb3ctZGFyaywgcmdiKDI1NSAyNTUgMjU1IC8gMTUlKSk7XG4gIC0tYm94LXNoYWRvdy1kYXJrLTA2OlxuICAgIDBweCAxNnB4IDMycHggNnB4IHZhcigtLWJveC1zaGFkb3ctZGFyaywgcmdiKDI1NSAyNTUgMjU1IC8gMTUlKSksXG4gICAgMHB4IDRweCA4cHggMHB4IHZhcigtLWJveC1zaGFkb3ctZGFyaywgcmdiKDI1NSAyNTUgMjU1IC8gMTUlKSk7XG4gIC0tYm94LXNoYWRvdy1ob3ZlcjogMCA0cHggMjBweCByZ2IoMTAgMTMgMTUgLyAzNSUpO1xuICAtLWJveC1zaGFkb3ctbWVudS1pbm5lcjogMHB4IDRweCA4cHggMHB4IHZhcigtLWNvbG9yLW5ldXRyYWwtMDUwKSBpbnNldDtcbiAgLS1ib3gtc2hhZG93LW1lbnUtb3V0ZXI6IDBweCA0cHggNHB4IDBweCAjMDAwMDAwNDA7XG4gIC0tYm94LXNoYWRvdy1hY2NvcmRpb246IDBweCA1cHggMTZweCAwcHggcmdiKDggMTUgNTIgLyA2JSk7XG59XG4iLCIvKipcbiAqIEJyZWFrcG9pbnRzXG4gKiBHcm91cDogU2V0dGluZ3NcbiAqL1xuXG4kYnJlYWtwb2ludC1tb2JpbGUtc21hbGw6IDMyMHB4O1xuJGJyZWFrcG9pbnQtbW9iaWxlLW1lZGl1bTogMzc1cHg7XG4kYnJlYWtwb2ludC1tb2JpbGUtbGFyZ2U6IDQxNHB4O1xuJGJyZWFrcG9pbnQtcGhhYmxldDogNTc2cHg7XG4kYnJlYWtwb2ludC10YWJsZXQ6IDc2OHB4O1xuJGJyZWFrcG9pbnQtZGVza3RvcC1zbWFsbDogOTkycHg7XG4kYnJlYWtwb2ludC1kZXNrdG9wLW1lZGl1bTogMTIwMHB4O1xuJGJyZWFrcG9pbnQtZGVza3RvcDogMTQ0MHB4O1xuJGJyZWFrcG9pbnQtZGVza3RvcC1sYXJnZTogMTYwMHB4O1xuJGJyZWFrcG9pbnQtZGVza3RvcC14bGFyZ2U6IDE5MjBweDtcbiRicmVha3BvaW50czogKFxuICBkZWZhdWx0OiAwLFxuICBtb2JpbGUtc21hbGw6ICRicmVha3BvaW50LW1vYmlsZS1zbWFsbCxcbiAgbW9iaWxlLW1lZGl1bTogJGJyZWFrcG9pbnQtbW9iaWxlLW1lZGl1bSxcbiAgbW9iaWxlLWxhcmdlOiAkYnJlYWtwb2ludC1tb2JpbGUtbGFyZ2UsXG4gIHBoYWJsZXQ6ICRicmVha3BvaW50LXBoYWJsZXQsXG4gIHRhYmxldDogJGJyZWFrcG9pbnQtdGFibGV0LFxuICBkZXNrdG9wLXNtYWxsOiAkYnJlYWtwb2ludC1kZXNrdG9wLXNtYWxsLFxuICBkZXNrdG9wLW1lZGl1bTogJGJyZWFrcG9pbnQtZGVza3RvcC1tZWRpdW0sXG4gIGRlc2t0b3A6ICRicmVha3BvaW50LWRlc2t0b3AsXG4gIGRlc2t0b3AtbGFyZ2U6ICRicmVha3BvaW50LWRlc2t0b3AtbGFyZ2UsXG4gIGRlc2t0b3AteGxhcmdlOiAkYnJlYWtwb2ludC1kZXNrdG9wLXhsYXJnZSxcbikgIWRlZmF1bHQ7XG4iLCIvKipcbiAqIEJ1dHRvbnNcbiAqIEdyb3VwOiBTZXR0aW5nc1xuICovXG5cbjpyb290IHtcbiAgLS1idG4tcmFkaXVzOiB2YXIoLS1yYWRpdXMpO1xuICAtLWJ0bi1yYWRpdXMteHM6IGNhbGModmFyKC0tcmFkaXVzKSAvIDQpO1xuICAtLWJ0bi1yYWRpdXMtc206IGNhbGModmFyKC0tcmFkaXVzKSAvIDIpO1xuICAtLWJ0bi1yYWRpdXMtbWQ6IGNhbGModmFyKC0tcmFkaXVzKSAqIDEuMTI1KTtcbiAgLS1idG4tcmFkaXVzLWxnOiBjYWxjKHZhcigtLXJhZGl1cykgKiAxLjc1KTtcbiAgLS1idG4tcmFkaXVzLXhsOiBjYWxjKHZhcigtLXJhZGl1cykgKiA0KTtcbiAgLS1idG4tcmFkaXVzLWZ1bGw6IDUwJTtcbiAgLS1idXR0b24tc2l6ZS14c21hbGw6IDJyZW07XG4gIC0tYnV0dG9uLXNpemUtc21hbGw6IDIuNzVyZW07XG4gIC0tYnV0dG9uLXNpemU6IDMuMTI1cmVtO1xuICAtLWJ1dHRvbi1zaXplLWxhcmdlOiAzLjEyNXJlbTtcbiAgLS1idXR0b24tYm9yZGVyLXdpZHRoOiAwLjEyNXJlbTtcbn1cbiIsIi8qKlxuICogRm9udHNcbiAqIEdyb3VwOiBTZXR0aW5nc1xuICovXG5cbi8vRm9udCBGYW1pbHkgXCJQb3BwaW5zXCJcbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJPcGVuIFNhbnNcIjtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9PcGVuU2Fucy9PcGVuU2Fucy1MaWdodC50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIik7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcIk9wZW4gU2Fuc1wiO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL09wZW5TYW5zL09wZW5TYW5zLUxpZ2h0SXRhbGljLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKTtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwiT3BlbiBTYW5zXCI7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvT3BlblNhbnMvT3BlblNhbnMtUmVndWxhci50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIik7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcIk9wZW4gU2Fuc1wiO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL09wZW5TYW5zL09wZW5TYW5zLUl0YWxpYy50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIik7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcIk9wZW4gU2Fuc1wiO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL09wZW5TYW5zL09wZW5TYW5zLU1lZGl1bS50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIik7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcIk9wZW4gU2Fuc1wiO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL09wZW5TYW5zL09wZW5TYW5zLU1lZGl1bUl0YWxpYy50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIik7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcIk9wZW4gU2Fuc1wiO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL09wZW5TYW5zL09wZW5TYW5zLVNlbWlCb2xkLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwiT3BlbiBTYW5zXCI7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvT3BlblNhbnMvT3BlblNhbnMtU2VtaUJvbGRJdGFsaWMudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpO1xuICBmb250LXdlaWdodDogNjAwO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJPcGVuIFNhbnNcIjtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9PcGVuU2Fucy9PcGVuU2Fucy1Cb2xkLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwiT3BlbiBTYW5zXCI7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvT3BlblNhbnMvT3BlblNhbnMtQm9sZEl0YWxpYy50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIik7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcIk9wZW4gU2Fuc1wiO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL09wZW5TYW5zL09wZW5TYW5zLUV4dHJhQm9sZC50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIik7XG4gIGZvbnQtd2VpZ2h0OiA4MDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcIk9wZW4gU2Fuc1wiO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL09wZW5TYW5zL09wZW5TYW5zLUV4dHJhQm9sZEl0YWxpYy50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIik7XG4gIGZvbnQtd2VpZ2h0OiA4MDA7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cbiIsIi8qKlxuICogR3JpZFxuICogR3JvdXA6IFNldHRpbmdzXG4gKi9cblxuOnJvb3Qge1xuICAtLWdyaWQtY29sdW1uczogMTI7XG4gIC0tZ3JpZC1nYXA6IDFyZW07XG4gIC0tZ2FwLXZlcnRpY2FsOiB2YXIoLS1ncmlkLWdhcCk7XG4gIC0tZ2FwLWhvcml6b250YWw6IHZhcigtLWdyaWQtZ2FwKTtcbiAgLS1ncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgxMiwgMWZyKTtcbiAgLS1ncmlkLXRlbXBsYXRlLWNvbHVtbnMtMjogcmVwZWF0KDIsIDFmcik7XG4gIC0tZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zLTM6IHJlcGVhdCgzLCAxZnIpO1xuICAtLWdyaWQtdGVtcGxhdGUtY29sdW1ucy00OiByZXBlYXQoNCwgMWZyKTtcbn1cbiIsIi8qKlxuICogSWNvbnNcbiAqIEdyb3VwOiBTZXR0aW5nc1xuICovXG5cbjpyb290IHtcbiAgLS1pY29uLXVuaXQ6IDFyZW07XG4gIC0taWNvbi1kZWZhdWx0OiB2YXIoLS1pY29uLXVuaXQpO1xuICAtLWljb24teHhzOiBjYWxjKDAuNjI1ICogdmFyKC0taWNvbi11bml0KSk7XG4gIC0taWNvbi1teHM6IGNhbGMoMS4xMjUgKiB2YXIoLS1pY29uLXVuaXQpKTtcbiAgLS1pY29uLXhzOiBjYWxjKDEuMjUgKiB2YXIoLS1pY29uLXVuaXQpKTtcbiAgLS1pY29uLW1zOiBjYWxjKDEuNSAqIHZhcigtLWljb24tdW5pdCkpO1xuICAtLWljb24tc206IGNhbGMoMiAqIHZhcigtLWljb24tdW5pdCkpO1xuICAtLWljb24tbWQ6IGNhbGMoMi41ICogdmFyKC0taWNvbi11bml0KSk7XG4gIC0taWNvbi1sZzogY2FsYygzICogdmFyKC0taWNvbi11bml0KSk7XG4gIC0taWNvbi14bDogY2FsYyg0ICogdmFyKC0taWNvbi11bml0KSk7XG4gIC0taWNvbi0yeGw6IGNhbGMoNSAqIHZhcigtLWljb24tdW5pdCkpO1xufVxuIiwiLyoqXG4gKiBJbnB1dHNcbiAqIEdyb3VwOiBTZXR0aW5nc1xuICovXG5cbjpyb290IHtcbiAgLS1pbnB1dC1oZWlnaHQtc21hbGw6IDE2cHg7XG4gIC0taW5wdXQtaGVpZ2h0LW1lZGl1bTogMThweDtcbiAgLS1pbnB1dC1oZWlnaHQtbGFyZ2U6IDIwcHg7XG4gIC0tY2hlY2tib3gtc2l6ZTogMTZweDtcbiAgLS1jaGVja2JveC1zaXplLXNtYWxsOiAxMnB4O1xufVxuIiwiLyoqXG4gKiBTaXplc1xuICogR3JvdXA6IFNldHRpbmdzXG4gKi9cblxuOnJvb3Qge1xuICAvKiBNYXggd2lkdGhzICovXG4gIC0tbWF4LXdpZHRoLS05eHM6IDlyZW07IC8vIDE0NHB4IGluIDE2cHggYmFzZSBwaXhlbCBzaXplXG4gIC0tbWF4LXdpZHRoLS04eHM6IDEwcmVtOyAvLyAxNjBweCBpbiAxNnB4IGJhc2UgcGl4ZWwgc2l6ZVxuICAtLW1heC13aWR0aC0tN3hzOiAxMnJlbTsgLy8gMTkycHggaW4gMTZweCBiYXNlIHBpeGVsIHNpemVcbiAgLS1tYXgtd2lkdGgtLTZ4czogMTRyZW07IC8vIDIyNHB4IGluIDE2cHggYmFzZSBwaXhlbCBzaXplXG4gIC0tbWF4LXdpZHRoLS01eHM6IDE5cmVtOyAvLyAzMDRweCBpbiAxNnB4IGJhc2UgcGl4ZWwgc2l6ZVxuICAtLW1heC13aWR0aC0tNHhzOiAyNXJlbTsgLy8gNDAwcHggaW4gMTZweCBiYXNlIHBpeGVsIHNpemVcbiAgLS1tYXgtd2lkdGgtLTN4czogMzByZW07IC8vIDQ4MHB4IGluIDE2cHggYmFzZSBwaXhlbCBzaXplXG4gIC0tbWF4LXdpZHRoLS0yeHM6IDM0cmVtOyAvLyA1NDRweCBpbiAxNnB4IGJhc2UgcGl4ZWwgc2l6ZVxuICAtLW1heC13aWR0aC0teHM6IDQycmVtOyAvLyA2NzJweCBpbiAxNnB4IGJhc2UgcGl4ZWwgc2l6ZVxuICAtLW1heC13aWR0aC0tc206IDU3cmVtOyAvLyA5MTJweCBpbiAxNnB4IGJhc2UgcGl4ZWwgc2l6ZVxuICAtLW1heC13aWR0aC0tbWQ6IDY1cmVtOyAvLyAxMDQwcHggaW4gMTZweCBiYXNlIHBpeGVsIHNpemVcbiAgLS1tYXgtd2lkdGgtLWxnOiA3Mi41cmVtOyAvLyAxMTYwcHggaW4gMTZweCBiYXNlIHBpeGVsIHNpemVcbiAgLS1tYXgtd2lkdGgtLXhsOiA4MHJlbTsgLy8gMTI4MHB4IGluIDE2cHggYmFzZSBwaXhlbCBzaXplXG4gIC0tbWF4LXdpZHRoLS0yeGw6IDkwcmVtOyAvLyAxNDQwcHggaW4gMTZweCBiYXNlIHBpeGVsIHNpemVcblxuICAvKiBNaW4gd2lkdGhzICovXG4gIC0tbWluLXdpZHRoLXRhYmxlLWxpc3Q6IDU1cmVtOyAvLyA4ODBweCBpbiAxNnB4IGJhc2UgcGl4ZWwgc2l6ZVxuICAtLW1pbi13aWR0aC10cmVlLWxpc3Q6IDQwcmVtOyAvLyA2NDBweCBpbiAxNnB4IGJhc2UgcGl4ZWwgc2l6ZVxuXG4gIC8qIE1heCBoZWlnaHRzICovXG4gIC0tbWF4LWhlaWdodC1pbnRyby1iYW5uZXI6IDQyLjVyZW07IC8vIDY4MHB4IGluIDE2cHggYmFzZSBwaXhlbCBzaXplXG4gIC0tbWF4LWhlaWdodC1tYXAtbGlzdDogMzJyZW07IC8vIDUxMnB4IGluIDE2cHggYmFzZSBwaXhlbCBzaXplXG4gIC0tbWF4LWhlaWdodC1pbWFnZS1uZXdzOiAyNXJlbTsgLy8gNDAwcHggaW4gMTZweCBiYXNlIHBpeGVsIHNpemVcblxuICAvKiBNaW4gaGVpZ2h0cyAqL1xuICAtLW1pbi1oZWlnaHQtbWFwLXBhcm1hY3k6IDI1cmVtOyAvLyA0MDBweCBpbiAxNnB4IGJhc2UgcGl4ZWwgc2l6ZVxuXG4gIC8qIEhlaWdodHMgKi9cbiAgLS1oZWFkZXItdG9wLWJhci1oZWlnaHQ6IDRyZW07IC8vIDY0cHggaW4gMTZweCBiYXNlIHBpeGVsIHNpemVcbiAgLS1oZWFkZXItbWFpbi1iYXItaGVpZ2h0OiA2LjI1cmVtOyAvLyAxMDBweCBpbiAxNnB4IGJhc2UgcGl4ZWwgc2l6ZVxuICAtLWhlYWRlci1oZWlnaHQ6IGNhbGMoXG4gICAgdmFyKC0taGVhZGVyLXRvcC1iYXItaGVpZ2h0KSArIHZhcigtLWhlYWRlci1tYWluLWJhci1oZWlnaHQpXG4gICk7IC8vIGNhbGN1bGF0ZWQgaGVhZGVyJ3MgaGVpZ2h0XG5cbiAgLS1wYWdpbmF0aW9uLWhlaWdodDogMy43NXJlbTsgLy8gNjBweCBpbiAxNnB4IGJhc2UgcGl4ZWwgc2l6ZVxuXG4gIC8qIFdpZHRocyAqL1xuICAtLXNpZGViYXItd2lkdGg6IDEwMCU7XG4gIC0tY29udGVudC13aWR0aDogMTAwJTtcblxuICAvKiBTaXppbmcgKi9cbiAgLS1wYWdlLW1heC13cmFwcGVyOiAxMjByZW07IC8vIDE5MjBweCBpbiAxNnB4IGJhc2UgcGl4ZWwgc2l6ZVxuICAtLXBhZ2UtbWF4LXdyYXBwZXItbGFyZ2U6IDE2MHJlbTsgLy8gMjU2MHB4IGluIDE2cHggYmFzZSBwaXhlbCBzaXplXG59XG4iLCIvKipcbiAqIFNwYWNpbmdcbiAqIEdyb3VwOiBTZXR0aW5nc1xuICovXG5cbjpyb290IHtcbiAgLS1zcGFjaW5nLXVuaXQ6IDFyZW07XG4gIC0tc3BhY2luZy1kZWZhdWx0OiB2YXIoLS1zcGFjaW5nLXVuaXQpOyAvLyAxNnB4IGluIDE2cHggYmFzZVxuICAtLXNwYWNpbmctMDAwOiBjYWxjKDAgKiB2YXIoLS1zcGFjaW5nLXVuaXQpKTtcbiAgLS1zcGFjaW5nLTAxMjogY2FsYygwLjEyNSAqIHZhcigtLXNwYWNpbmctdW5pdCkpOyAvLyAycHggaW4gMTZweCBiYXNlXG4gIC0tc3BhY2luZy0wMjU6IGNhbGMoMC4yNSAqIHZhcigtLXNwYWNpbmctdW5pdCkpOyAvLyA0cHggaW4gMTZweCBiYXNlXG4gIC0tc3BhY2luZy0wMzc6IGNhbGMoMC4zNzUgKiB2YXIoLS1zcGFjaW5nLXVuaXQpKTsgLy8gNnB4IGluIDE2cHggYmFzZVxuICAtLXNwYWNpbmctMDUwOiBjYWxjKDAuNSAqIHZhcigtLXNwYWNpbmctdW5pdCkpOyAvLyA4cHggaW4gMTZweCBiYXNlXG4gIC0tc3BhY2luZy0wNzU6IGNhbGMoMC43NSAqIHZhcigtLXNwYWNpbmctdW5pdCkpOyAvLyAxMnB4IGluIDE2cHggYmFzZVxuICAtLXNwYWNpbmctMTAwOiBjYWxjKDEgKiB2YXIoLS1zcGFjaW5nLXVuaXQpKTsgLy8gMTZweCBpbiAxNnB4IGJhc2VcbiAgLS1zcGFjaW5nLTEyNTogY2FsYygxLjI1ICogdmFyKC0tc3BhY2luZy11bml0KSk7IC8vIDIwcHggaW4gMTZweCBiYXNlXG4gIC0tc3BhY2luZy0xNTA6IGNhbGMoMS41ICogdmFyKC0tc3BhY2luZy11bml0KSk7IC8vIDI0cHggaW4gMTZweCBiYXNlXG4gIC0tc3BhY2luZy0yMDA6IGNhbGMoMiAqIHZhcigtLXNwYWNpbmctdW5pdCkpOyAvLyAzMnB4IGluIDE2cHggYmFzZVxuICAtLXNwYWNpbmctMjUwOiBjYWxjKDIuNSAqIHZhcigtLXNwYWNpbmctdW5pdCkpOyAvLyA0MHB4IGluIDE2cHggYmFzZVxuICAtLXNwYWNpbmctMzAwOiBjYWxjKDMgKiB2YXIoLS1zcGFjaW5nLXVuaXQpKTsgLy8gNDhweCBpbiAxNnB4IGJhc2VcbiAgLS1zcGFjaW5nLTM1MDogY2FsYygzLjUgKiB2YXIoLS1zcGFjaW5nLXVuaXQpKTsgLy8gNTZweCBpbiAxNnB4IGJhc2VcbiAgLS1zcGFjaW5nLTQwMDogY2FsYyg0ICogdmFyKC0tc3BhY2luZy11bml0KSk7IC8vIDY0cHggaW4gMTZweCBiYXNlXG4gIC0tc3BhY2luZy01MDA6IGNhbGMoNSAqIHZhcigtLXNwYWNpbmctdW5pdCkpOyAvLyA4MHB4IGluIDE2cHggYmFzZVxuICAtLXNwYWNpbmctNjAwOiBjYWxjKDYgKiB2YXIoLS1zcGFjaW5nLXVuaXQpKTsgLy8gOTZweCBpbiAxNnB4IGJhc2VcbiAgLS1zcGFjaW5nLTcwMDogY2FsYyg3ICogdmFyKC0tc3BhY2luZy11bml0KSk7IC8vIDExMnB4IGluIDE2cHggYmFzZVxuICAtLXNwYWNpbmctODAwOiBjYWxjKDggKiB2YXIoLS1zcGFjaW5nLXVuaXQpKTsgLy8gMTI4cHggaW4gMTZweCBiYXNlXG4gIC0tc3BhY2luZy0xMDAwOiBjYWxjKDEwICogdmFyKC0tc3BhY2luZy11bml0KSk7IC8vIDE2MHB4IGluIDE2cHggYmFzZVxuICAtLXNwYWNpbmctMTIwMDogY2FsYygxMiAqIHZhcigtLXNwYWNpbmctdW5pdCkpOyAvLyAxOTJweCBpbiAxNnB4IGJhc2VcbiAgLS1zcGFjaW5nLTE2MDA6IGNhbGMoMTYgKiB2YXIoLS1zcGFjaW5nLXVuaXQpKTsgLy8gMjU2cHggaW4gMTZweCBiYXNlXG4gIC0tc3BhY2luZy0yMDAwOiBjYWxjKDIwICogdmFyKC0tc3BhY2luZy11bml0KSk7IC8vIDMyMHB4IGluIDE2cHggYmFzZVxuICAtLXNwYWNpbmctMjQwMDogY2FsYygyNCAqIHZhcigtLXNwYWNpbmctdW5pdCkpOyAvLyAzODRweCBpbiAxNnB4IGJhc2VcbiAgLS1zcGFjaW5nLTMyMDA6IGNhbGMoMzIgKiB2YXIoLS1zcGFjaW5nLXVuaXQpKTsgLy8gNTEycHggaW4gMTZweCBiYXNlXG4gIC0tc3BhY2luZy0zNzAwOiBjYWxjKDM3ICogdmFyKC0tc3BhY2luZy11bml0KSk7IC8vIDU5MnB4IGluIDE2cHggYmFzZVxuICAtLXNwYWNpbmctNDAwMDogY2FsYyg0MCAqIHZhcigtLXNwYWNpbmctdW5pdCkpOyAvLyA2NDBweCBpbiAxNnB4IGJhc2Vcbn1cbiIsIi8qKlxuICogU3dpcGVyXG4gKiBHcm91cDogU2V0dGluZ3NcbiAqL1xuXG46cm9vdCB7XG4gIC0tc3dpcGVyLXBhZ2luYXRpb24tY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLW9yYW5nZSk7XG4gIC0tc3dpcGVyLW5hdmlnYXRpb24tY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLW9yYW5nZSk7XG4gIC0tc3dpcGVyLXBhZ2luYXRpb24tbGVmdDogYXV0bztcbiAgLS1zd2lwZXItcGFnaW5hdGlvbi1yaWdodDogOHB4O1xuICAtLXN3aXBlci1wYWdpbmF0aW9uLWJvdHRvbTogOHB4O1xuICAtLXN3aXBlci1wYWdpbmF0aW9uLXRvcDogYXV0bztcbiAgLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtc2l6ZTogdmFyKC0tc3BhY2luZy0xMDApO1xuICAtLXN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC13aWR0aDogdmFyKC0tc3BhY2luZy0xMDApO1xuICAtLXN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1oZWlnaHQ6IHZhcigtLXNwYWNpbmctMDUwKTtcbiAgLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtaW5hY3RpdmUtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWxpZ2h0LWdyYXkpO1xuICAtLXN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1pbmFjdGl2ZS1vcGFjaXR5OiAxO1xuICAtLXN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1vcGFjaXR5OiAxO1xuICAtLXN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1ob3Jpem9udGFsLWdhcDogdmFyKC0tc3BhY2luZy0wNTApO1xuICAtLXN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC12ZXJ0aWNhbC1nYXA6IHZhcigtLXNwYWNpbmctMTAwKTtcbiAgLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy14cyk7XG59XG4iLCIvKipcbiAqIFR5cG9ncmFwaHlcbiAqIEdyb3VwOiBTZXR0aW5nc1xuICovXG5cbkB1c2UgXCJmb250c1wiO1xuXG46cm9vdCB7XG4gIC8qIEZvbnQgRmFjZXMgKi9cbiAgLS1mb250LXByaW1hcnk6IFwiT3BlbiBTYW5zXCIsIHNhbnMtc2VyaWY7XG4gIC0tZm9udC1tb25vOiBcIk1vbmFjb1wiLCBtb25vc3BhY2U7XG4gIC0tZm9udC1hd2Vzb21lOiBcIkZvbnRBd2Vzb21lXCI7XG5cbiAgLyogVHlwZSBiYXNlICovXG4gIC0tdGV4dC1iYXNlLXNpemU6IDFlbTtcblxuICAvKiBGb250IFdlaWdodHMgKi9cbiAgLS1mb250LXdlaWdodC10aGluOiAxMDA7XG4gIC0tZm9udC13ZWlnaHQtZXh0cmFsaWdodDogMjAwO1xuICAtLWZvbnQtd2VpZ2h0LWxpZ2h0OiAzMDA7XG4gIC0tZm9udC13ZWlnaHQtcmVndWxhcjogNDAwO1xuICAtLWZvbnQtd2VpZ2h0LW1lZGl1bTogNTAwO1xuICAtLWZvbnQtd2VpZ2h0LXNlbWlib2xkOiA2MDA7XG4gIC0tZm9udC13ZWlnaHQtYm9sZDogNzAwO1xuICAtLWZvbnQtd2VpZ2h0LWV4dHJhYm9sZDogODAwO1xuICAtLWZvbnQtd2VpZ2h0LWJsYWNrOiA5MDA7XG5cbiAgLyogTGV0dGVyIFNwYWNpbmdzICovXG4gIC0tdHJhY2tpbmctdGlnaHQ6IC0wLjAxNTZyZW07IC8vIC0wLjI1cHggaW4gMTZweCBiYXNlXG4gIC0tdHJhY2tpbmctbm9ybWFsOiAwcmVtO1xuICAtLXRyYWNraW5nLXdpZGU6IDAuMDA2M3JlbTsgLy8gMC4xcHggaW4gMTZweCBiYXNlXG4gIC0tdHJhY2tpbmctd2lkZS1sZzogMC4wMzEzcmVtOyAvLyAwLjVweCBpbiAxNnB4IGJhc2VcbiAgLS10cmFja2luZy13aWRlLXhsOiAwLjA2MjVyZW07IC8vIDFweCBpbiAxNnB4IGJhc2VcbiAgLS10cmFja2luZy13aWRlLTJ4bDogMC4wOTM4cmVtOyAvLyAxLjVweCBpbiAxNnB4IGJhc2VcbiAgLS10cmFja2luZy13aWRlLTN4bDogMC4xODc1cmVtOyAvLyAzcHggaW4gMTZweCBiYXNlXG5cbiAgLyogTGluZSBoZWlnaHRzICovXG4gIC0tbGVhZGluZy1ub25lOiAxO1xuICAtLWxlYWRpbmctdGlnaHQ6IDEuMjU7XG4gIC0tbGVhZGluZy1ub3JtYWw6IDEuNTtcbiAgLS1sZWFkaW5nLXJlbGF4ZWQ6IDEuNjtcbiAgLS1sZWFkaW5nLWxvb3NlOiAyO1xuICAtLWxlYWRpbmctZXh0cmEtbG9vc2U6IDIuNjc7XG5cbiAgLyogQm9keSB2YXJpYWJsZXMgKi9cbiAgLS1ib2R5LWZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbiAgLS1ib2R5LWV4dHJhLXNtYWxsLWZvbnQtc2l6ZTogMC43NXJlbTsgLy8gMTJweCBpbiAxNnB4IGJhc2VcbiAgLS1ib2R5LXNtYWxsLWZvbnQtc2l6ZTogMC44NzVyZW07IC8vIDE0cHggaW4gMTZweCBiYXNlXG4gIC0tYm9keS1zbWFsbC1sZXR0ZXItc3BhY2luZzogdmFyKC0tdHJhY2tpbmctbm9ybWFsKTtcbiAgLS1ib2R5LXNtYWxsLWxpbmUtaGVpZ2h0OiB2YXIoLS1sZWFkaW5nLW5vcm1hbCk7XG4gIC0tYm9keS1mb250LXNpemU6IDFyZW07IC8vIDE2cHggaW4gMTZweCBiYXNlXG4gIC0tYm9keS1sZXR0ZXItc3BhY2luZzogdmFyKC0tdHJhY2tpbmctbm9ybWFsKTtcbiAgLS1ib2R5LWxpbmUtaGVpZ2h0OiB2YXIoLS1sZWFkaW5nLW5vcm1hbCk7XG4gIC0tYm9keS1tZWRpdW0tZm9udC1zaXplOiAxLjEyNXJlbTsgLy8gMTZweCBpbiAxNnB4IGJhc2VcbiAgLS1ib2R5LW1lZGl1bS1sZXR0ZXItc3BhY2luZzogdmFyKC0tdHJhY2tpbmctbm9ybWFsKTtcbiAgLS1ib2R5LW1lZGl1bS1saW5lLWhlaWdodDogdmFyKC0tbGVhZGluZy1ub3JtYWwpO1xuICAtLWJvZHktbGFyZ2UtZm9udC1zaXplOiAxLjVyZW07IC8vIDI0cHggaW4gMTZweCBiYXNlXG4gIC0tYm9keS1sYXJnZS1sZXR0ZXItc3BhY2luZzogdmFyKC0tdHJhY2tpbmctbm9ybWFsKTtcbiAgLS1ib2R5LWxhcmdlLWxpbmUtaGVpZ2h0OiB2YXIoLS1sZWFkaW5nLW5vcm1hbCk7XG4gIC0taDEtZm9udC1zaXplOiAzLjYyNXJlbTsgLy8gNThweCBpbiAxNnB4IGJhc2VcbiAgLS1oMS1mb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIC0taDEtbGV0dGVyLXNwYWNpbmc6IHZhcigtLXRyYWNraW5nLW5vcm1hbCk7XG4gIC0taDEtbGluZS1oZWlnaHQ6IHZhcigtLWxlYWRpbmctdGlnaHQpO1xuICAtLWgyLWZvbnQtc2l6ZTogMi4xMjVyZW07IC8vIDM0cHggaW4gMTZweCBiYXNlXG4gIC0taDItZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICAtLWgyLWxldHRlci1zcGFjaW5nOiB2YXIoLS10cmFja2luZy1ub3JtYWwpO1xuICAtLWgyLWxpbmUtaGVpZ2h0OiB2YXIoLS1sZWFkaW5nLW5vcm1hbCk7XG4gIC0taDMtZm9udC1zaXplOiAxLjVyZW07IC8vIDI0cHggaW4gMTZweCBiYXNlXG4gIC0taDMtZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICAtLWgzLWxldHRlci1zcGFjaW5nOiB2YXIoLS10cmFja2luZy1ub3JtYWwpO1xuICAtLWgzLWxpbmUtaGVpZ2h0OiB2YXIoLS1sZWFkaW5nLXRpZ2h0KTtcbiAgLS1oNC1mb250LXNpemU6IDEuMjVyZW07IC8vIDIwcHggaW4gMTZweCBiYXNlXG4gIC0taDQtZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICAtLWg0LWxldHRlci1zcGFjaW5nOiB2YXIoLS10cmFja2luZy1ub3JtYWwpO1xuICAtLWg0LWxpbmUtaGVpZ2h0OiB2YXIoLS1sZWFkaW5nLW5vcm1hbCk7XG4gIC0taDUtZm9udC1zaXplOiAxLjEyNXJlbTsgLy8gMThweCBpbiAxNnB4IGJhc2VcbiAgLS1oNS1mb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIC0taDUtbGV0dGVyLXNwYWNpbmc6IHZhcigtLXRyYWNraW5nLW5vcm1hbCk7XG4gIC0taDUtbGluZS1oZWlnaHQ6IHZhcigtLWxlYWRpbmctbm9ybWFsKTtcbiAgLS1oNi1mb250LXNpemU6IDFyZW07IC8vIDE2cHggaW4gMTZweCBiYXNlXG4gIC0taDYtZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICAtLWg2LWxldHRlci1zcGFjaW5nOiB2YXIoLS10cmFja2luZy1ub3JtYWwpO1xuICAtLWg2LWxpbmUtaGVpZ2h0OiB2YXIoLS1sZWFkaW5nLW5vcm1hbCk7XG59XG4iLCIvKipcbiAqIFZhcmlhYmxlc1xuICogXCJHcm91cFwiIFNldHRpbmdzXG4gKi9cblxuOnJvb3Qge1xuICAtLXNoYWRlLWNvbG9yLWg6IDA7XG4gIC0tc2hhZGUtY29sb3ItczogMCU7XG4gIC0tc2hhZGUtY29sb3ItbDogMCU7XG59XG5cbi8vIENvbG9yIHZhcmlhYmxlc1xuJGNvbG9yczogKFxuICAvKipcbiAgKiBCcmFuZCBDb2xvcnNcbiAgKi8gXCJicmFuZC1icm93bi1zZW1pLXRyYW5zcGFyZW50XCI6ICNmYmYwZGEsXG4gIFwiYnJhbmQtYnJvd25cIjogIzczNTEwZCxcbiAgXCJicmFuZC1yZWQtc2VtaS10cmFuc3BhcmVudFwiOiAjZjllMWU1LFxuICBcImJyYW5kLWRhcmstcmVkXCI6ICNhZjIzM2EsXG4gIFwiYnJhbmQtcmVkXCI6ICNmOWUxZTUsXG4gIFwiYWxlcnQtZ3JlZW4tZGFya1wiOiAjMGQ2ODMyLFxuICBcImJyYW5kLWdyZWVuXCI6ICNkNmYwZTAsXG4gIFwiYnJhbmQtYmx1ZVwiOiAjMDAzMzc1LFxuICBcImJyYW5kLWJsdWUtbGlnaHRcIjogIzFjNjU3ZCxcbiAgXCJicmFuZC1ibHVlLWxpZ2h0LXNlbWktdHJhbnNwYXJlbnRcIjogI2RlZjFmNyxcbiAgXCJicmFuZC1ibHVlLXNlbWktdHJhbnNwYXJlbnRcIjogI2JiNmJkOTMzLFxuICBcImJyYW5kLW9yYW5nZVwiOiAjZjg5YjM0LFxuICBcImJyYW5kLWRhcmstZ3JheVwiOiAjMzMzMzMzLFxuICBcImJyYW5kLWdyYXlcIjogIzU3NTc1NyxcbiAgXCJicmFuZC1ibHVlLWRhcmtcIjogIzRiNjU4NyxcbiAgXCJicmFuZC13aGl0ZVwiOiAjZmZmZmZmLFxuICBcImJyYW5kLWxpZ2h0LWdyYXlcIjogI2U4ZThlOCxcbiAgXCJicmFuZC1saWdodGVyLWdyYXlcIjogI2VlZWVlZSxcbiAgXCJicmFuZC1zZWFyY2gtZ3JheVwiOiAjZDlkOWQ5LFxuXG4gIC8qKlxuICAgKiBOZXV0cmFsIENvbG9yc1xuICAgKi8gXCJuZXV0cmFsLTEwMDBcIjogIzBhMGEwYSxcbiAgXCJuZXV0cmFsLTk3NVwiOiAjMWYyMDIxLFxuICBcIm5ldXRyYWwtOTUwXCI6ICMyMzI2MjYsXG4gIFwibmV1dHJhbC05MDBcIjogIzNiM2Q0MCxcbiAgXCJuZXV0cmFsLTgwMFwiOiAjNTM1NjVhLFxuICBcIm5ldXRyYWwtNzAwXCI6ICM1ZTYxNjYsXG4gIFwibmV1dHJhbC02MDBcIjogIzc2N2E4MCxcbiAgXCJuZXV0cmFsLTUwMFwiOiAjN2Y4NDhhLFxuICBcIm5ldXRyYWwtNDAwXCI6ICM5OTllYTYsXG4gIFwibmV1dHJhbC0zMDBcIjogI2I1YmNjNCxcbiAgXCJuZXV0cmFsLTIwMFwiOiAjZDFkNmRlLFxuICBcIm5ldXRyYWwtMTAwXCI6ICNkZmU1ZWQsXG4gIFwibmV1dHJhbC0wNTBcIjogI2YyZjdmZixcbiAgXCJuZXV0cmFsLTAwMFwiOiAjZmFmYWZhLFxuXG4gIFwiZGFya1wiOiBoc2woMTAwZGVnIDEwMCUgMCUgLyAxMDAlKSxcbiAgXCJsaWdodFwiOiBoc2woMGRlZyAwJSAxMDAlIC8gMTAwJSksXG4gIC8qKlxuICAgKiBGYWRlIENvbG9ycyBsaWdodC9kYXJrXG4gICAqLyBcImZhZGUtbGlnaHQtNVwiOiAjZjJmMmYyMGQsXG4gIFwiZmFkZS1saWdodC0xMFwiOiAjZjJmMmYyMWEsXG4gIFwiZmFkZS1saWdodC0yMFwiOiAjZjJmMmYyMzMsXG4gIFwiZmFkZS1saWdodC0zMFwiOiAjZjJmMmYyNGQsXG4gIFwiZmFkZS1saWdodC00MFwiOiAjZjJmMmYyNjYsXG4gIFwiZmFkZS1saWdodC01MFwiOiAjZjJmMmYyODAsXG4gIFwiZmFkZS1saWdodC02MFwiOiAjZjJmMmYyOTksXG4gIFwiZmFkZS1saWdodC03MFwiOiAjZjJmMmYyYjIsXG4gIFwiZmFkZS1saWdodC04MFwiOiAjZjJmMmYyY2MsXG4gIFwiZmFkZS1saWdodC05MFwiOiAjZjJmMmYyZTUsXG4gIFwiZmFkZS1kYXJrLTVcIjogIzFkMWIyMDBkLFxuICBcImZhZGUtZGFyay0xMFwiOiAjMWQxYjIwMWEsXG4gIFwiZmFkZS1kYXJrLTIwXCI6ICMxZDFiMjAzMyxcbiAgXCJmYWRlLWRhcmstMzBcIjogIzFkMWIyMDRkLFxuICBcImZhZGUtZGFyay00MFwiOiAjMWQxYjIwNjYsXG4gIFwiZmFkZS1kYXJrLTUwXCI6ICMxZDFiMjA4MCxcbiAgXCJmYWRlLWRhcmstNjBcIjogIzFkMWIyMDk5LFxuICBcImZhZGUtZGFyay03MFwiOiAjMWQxYjIwYjIsXG4gIFwiZmFkZS1kYXJrLTgwXCI6ICMxZDFiMjBjYyxcbiAgXCJmYWRlLWRhcmstOTBcIjogIzFkMWIyMGU1LFxuXG4gIC8qKlxuICAgKiBDb2xvciBTaGFkZXNcbiAgICovIFwiZm9jdXMtc3Ryb2tlXCI6ICNmZWRjMDAsXG4gIFwidGV4dFwiOiB2YXIoLS1uZXV0cmFsLTEwMDApLFxuICBcInRleHQtbGlnaHRcIjogdmFyKC0tbGlnaHQpXG4pO1xuXG4vLyBDb2xvciB2YXJpYWJsZXMgZm9yIGNvb2tpZXNcbiRjb29raWVzLWNvbG9yczogKFxuICBcIjAwMDAwMFwiLFxuICAvLyBibGFja1xuICBcImZmZmZmZlwiLFxuICAvLyB3aGl0ZVxuICBcIjAwMzM3NVwiLFxuICAvLyBibHVlXG4gIFwiNGI2NTg3XCIsXG4gIC8vIGRhcmtlciBibHVlXG4gIFwiZjg5YjM0XCIsXG4gIC8vIHNlY29uZGFyeVxuICBcIjU3NTc1N1wiIC8vIGdyZXlcbik7XG4iLCIvKipcbiAqIE1haW4gVG9vbHMgRmlsZVxuICogR3JvdXA6IFRvb2xzXG4gKi9cblxuQGZvcndhcmQgXCJhMTF5XCI7XG5AZm9yd2FyZCBcImFuaW1hdGlvbnNcIjtcbkBmb3J3YXJkIFwiYm94LXNoYWRvd3NcIjtcbkBmb3J3YXJkIFwiYnJlYWtwb2ludHNcIjtcbkBmb3J3YXJkIFwiYnV0dG9uc1wiO1xuQGZvcndhcmQgXCJjbGVhcmZpeFwiO1xuQGZvcndhcmQgXCJjb2xvcnNcIjtcbkBmb3J3YXJkIFwiZ3JhZGllbnRcIjtcbkBmb3J3YXJkIFwiaW5wdXRcIjtcbkBmb3J3YXJkIFwib24tZXZlbnRcIjtcbkBmb3J3YXJkIFwicGxhY2Vob2xkZXJcIjtcbkBmb3J3YXJkIFwiaGlkZGVuXCI7XG5AZm9yd2FyZCBcInNwYWNpbmdcIjtcbkBmb3J3YXJkIFwidHlwb2dyYXBoeVwiO1xuIiwiLyoqXG4gKiBBMTF5XG4gKiBHcm91cDogVG9vbHNcbiAqL1xuXG4vKiBUaGlzIGlzIHRvIGNvdmVyIFZvaWNlLW92ZXIgZGV2aWNlcyBmb3IgYWNjZXNzaWJpbGl0eSBwdXJwb3NlcyAqL1xuQG1peGluIGxpc3Qtc3R5bGUtbm9uZSgpIHtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuXG4gICY6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcXDIwMEJcIjsgLyogYWRkIHplcm8td2lkdGggc3BhY2UgKi9cbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgICBjbGlwLXBhdGg6IGluc2V0KDUwJSk7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICBib3JkZXI6IDA7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB9XG59XG5cbi8qKlxuICAqIFNraXAgbGluayBtaXhpblxuICAqIFZpc3VhbGx5IGhpZGVzIGFuIGVsZW1lbnQgb2ZmLXNjcmVlbiBidXQgbWFrZXMgaXQgdmlzaWJsZSBhbmQgYWNjZXNzaWJsZVxuICAqIHdoZW4gZm9jdXNlZCAoZS5nLiwgZm9yIGtleWJvYXJkIHVzZXJzIHRvIHNraXAgdG8gbWFpbiBjb250ZW50KS5cbiAgKiBGb2xsb3dzIFdDQUcgMi4yIGFjY2Vzc2liaWxpdHkgYmVzdCBwcmFjdGljZXMuXG4gICogVXNlIG9uIGAudS1za2lwLWxpbmtgIG9yIGVxdWl2YWxlbnQgdXRpbGl0eSBjbGFzcy5cbiAgKi9cbkBtaXhpbiBza2lwLWxpbmsoKSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAtOTk5cHg7XG4gIGxlZnQ6IC05OTlweDtcbiAgd2lkdGg6IDFweDtcbiAgaGVpZ2h0OiAxcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNsaXAtcGF0aDogaW5zZXQoNTAlKTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYm9yZGVyOiAwO1xuXG4gICY6Zm9jdXMge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDFyZW07XG4gICAgbGVmdDogMXJlbTtcbiAgICB3aWR0aDogYXV0bztcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgcGFkZGluZzogMC43NXJlbSAxcmVtO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgei1pbmRleDogMTAwMDtcbiAgICBjbGlwLXBhdGg6IG5vbmU7XG4gICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIDJweCB3aGl0ZTtcbiAgfVxufVxuIiwiLyoqXG4gKiBBbmltYXRpb25zXG4gKiBHcm91cDogVG9vbHNcbiAqL1xuXG5AdXNlIFwib24tZXZlbnRcIiBhcyAqO1xuXG5AbWl4aW4gYW5jaG9yLWFuaW1hdGlvbigpIHtcbiAgJHRoaXM6ICY7XG5cbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICB0cmFuc2l0aW9uOiBib3JkZXItYm90dG9tLWNvbG9yIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0O1xuXG4gIEBpbmNsdWRlIG9uLWV2ZW50IHtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiBpbmhlcml0O1xuICB9XG59XG4iLCIvKipcbiAqIE9uIEV2ZW50XG4gKiBHcm91cDogVG9vbHNcbiAqL1xuXG4vLy8gRXZlbnQgd3JhcHBlclxuLy8vIEBwYXJhbSB7Qm9vbH0gJHNlbGYgW2ZhbHNlXSAtIFdoZXRoZXIgb3Igbm90IHRvIGluY2x1ZGUgY3VycmVudCBzZWxlY3RvclxuLy8vIEBsaW5rIGh0dHBzOi8vdHdpdHRlci5jb20vY3Nzd2l6YXJkcnkvc3RhdHVzLzQ3ODkzODUzMDM0MjAwNjc4NCBPcmlnaW5hbCB0d2VldCBmcm9tIEhhcnJ5IFJvYmVydHNcbi8vIC51c2FnZSB7XG4vLyAgIEBpbmNsdWRlIG9uLWV2ZW50IHtcbi8vICAgICBjb2xvcjogcmViZWNjYXB1cnBsZTtcbi8vICAgfVxuLy8gfVxuXG5AbWl4aW4gb24tZXZlbnQoJHNlbGY6IGZhbHNlKSB7XG4gIEBpZiAkc2VsZiB7XG4gICAgJixcbiAgICAmOmhvdmVyLFxuICAgICY6YWN0aXZlLFxuICAgICY6Zm9jdXMge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICAmOmhvdmVyLFxuICAgICY6YWN0aXZlLFxuICAgICY6Zm9jdXMge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG4iLCIvKipcbiAqIEJveCBTaGFkb3dzXG4gKiBHcm91cDogVG9vbHNcbiAqXG4gKiBAbWl4aW4gYm94LXNoYWRvd1xuICogXG4gKiBAcGFyYW0ge1N0cmluZ30gJHN0eWxlIC0gzqTOvyDPg8+Ez4XOuyDPhM6/z4UgYm94LXNoYWRvdy4gzpXPgM65z4TPgc61z4DPjM68zrXOvc61z4Igz4TOuc68zq3PgjogJzAxJywgJzAyJywgJzAzJywgJzA0JywgJzA1JywgJzA2Jy5cbiAqIEBwYXJhbSB7U3RyaW5nfSAkdGhlbWUgLSDOpM6/IM64zq3OvM6xIM+EzrfPgiDPg866zrnOrM+CLiDOlc+AzrnPhM+BzrXPgM+MzrzOtc69zrXPgiDPhM65zrzOrc+COiAnbGlnaHQnLCAnZGFyaycuXG4gKiBAcGFyYW0ge0Jvb2xlYW59ICRpbXBvcnRhbnQgLSDOkc69IM61zq/Ovc6xzrkgYHRydWVgLCDPgM+Bzr/Pg864zq3PhM61zrkgz4TOvyBgIWltcG9ydGFudGAgz4PPhM63zr0gzrnOtM65z4zPhM63z4TOsSBib3gtc2hhZG93LiDOoM+Bzr/Otc+AzrnOu86/zrPOrjogYGZhbHNlYC5cbiAqIFxuICogQGV4YW1wbGVcbiAqIC5lbGVtZW50IHtcbiAqICAgQGluY2x1ZGUgYm94LXNoYWRvdygnMDMnLCAnZGFyaycpO1xuICogfVxuICovXG5cbkBtaXhpbiBib3gtc2hhZG93KCRzdHlsZTogXCIwMVwiLCAkdGhlbWU6IFwibGlnaHRcIiwgJGltcG9ydGFudDogZmFsc2UpIHtcbiAgYm94LXNoYWRvdzogdmFyKC0tYm94LXNoYWRvdy0jeyR0aGVtZX0tI3skc3R5bGV9KVxuICAgICN7aWYoJGltcG9ydGFudCwgXCIgIWltcG9ydGFudFwiLCBcIlwiKX07XG59XG4iLCIvKipcbiAqIEJyZWFrcG9pbnRzIE1peGluc1xuICogR3JvdXA6IFRvb2xzXG4gKi9cblxuQHVzZSBcInNhc3M6bWFwXCI7XG5AdXNlIFwiLi4vMDEtc2V0dGluZ3MvYnJlYWtwb2ludHNcIiBhcyAqO1xuQGZvcndhcmQgXCIuLi8wMS1zZXR0aW5ncy9icmVha3BvaW50c1wiO1xuXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50czogJGJyZWFrcG9pbnRzKSB7XG4gICRtaW46IG1hcC5nZXQoJGJyZWFrcG9pbnRzLCAkbmFtZSk7XG5cbiAgQHJldHVybiBpZigkbWluICE9IDAsICRtaW4sIG51bGwpO1xufVxuXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1tYXgoJG5hbWUsICRicmVha3BvaW50czogJGJyZWFrcG9pbnRzKSB7XG4gICRtYXg6IG1hcC5nZXQoJGJyZWFrcG9pbnRzLCAkbmFtZSk7XG5cbiAgQHJldHVybiBpZigkbWF4IGFuZCAkbWF4ID4gMCwgJG1heCAtIDAuMDIsIG51bGwpO1xufVxuXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1uZXh0KFxuICAkbmFtZSxcbiAgJGJyZWFrcG9pbnRzOiAkYnJlYWtwb2ludHMsXG4gICRicmVha3BvaW50LW5hbWVzOiBtYXAua2V5cygkYnJlYWtwb2ludHMpXG4pIHtcbiAgJG46IGluZGV4KCRicmVha3BvaW50LW5hbWVzLCAkbmFtZSk7XG5cbiAgQGlmIG5vdCAkbiB7XG4gICAgQGVycm9yIFwiYnJlYWtwb2ludCBgI3skbmFtZX1gIG5vdCBmb3VuZCBpbiBgI3skYnJlYWtwb2ludHN9YFwiO1xuICB9XG5cbiAgQHJldHVybiBpZihcbiAgICAkbiA8IGxlbmd0aCgkYnJlYWtwb2ludC1uYW1lcyksXG4gICAgbnRoKCRicmVha3BvaW50LW5hbWVzLCAkbiArIDEpLFxuICAgIG51bGxcbiAgKTtcbn1cblxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5hbWUsICRicmVha3BvaW50czogJGJyZWFrcG9pbnRzKSB7XG4gICRtaW46IGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuXG4gIEBpZiAkbWluIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1kb3duKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRicmVha3BvaW50cykge1xuICAkbWF4OiBicmVha3BvaW50LW1heCgkbmFtZSwgJGJyZWFrcG9pbnRzKTtcblxuICBAaWYgJG1heCB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtYXgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtYmV0d2VlbigkbG93ZXIsICR1cHBlciwgJGJyZWFrcG9pbnRzOiAkYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogYnJlYWtwb2ludC1taW4oJGxvd2VyLCAkYnJlYWtwb2ludHMpO1xuICAkbWF4OiBicmVha3BvaW50LW1heCgkdXBwZXIsICRicmVha3BvaW50cyk7XG5cbiAgQGlmICRtaW4gIT0gbnVsbCBhbmQgJG1heCAhPSBudWxsIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikgYW5kIChtYXgtd2lkdGg6ICRtYXgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWF4ID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGxvd2VyLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWluID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkdXBwZXIsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LW9ubHkoJG5hbWUsICRicmVha3BvaW50czogJGJyZWFrcG9pbnRzKSB7XG4gICRtaW46IGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICAkbmV4dDogYnJlYWtwb2ludC1uZXh0KCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICAkbWF4OiBicmVha3BvaW50LW1heCgkbmV4dCk7XG5cbiAgQGlmICRtaW4gIT0gbnVsbCBhbmQgJG1heCAhPSBudWxsIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikgYW5kIChtYXgtd2lkdGg6ICRtYXgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWF4ID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5hbWUsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRtaW4gPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCRuZXh0LCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuIiwiLyoqXG4gKiBCdXR0b25cbiAqIEdyb3VwOiBUb29sc1xuICovXG5cbkB1c2UgXCJicmVha3BvaW50c1wiIGFzICo7XG5AdXNlIFwib24tZXZlbnRcIiBhcyAqO1xuXG5AZnVuY3Rpb24gaWYtaW1wb3J0YW50KCRpbXBvcnRhbnQpIHtcbiAgQHJldHVybiAje2lmKCRpbXBvcnRhbnQsIFwiIWltcG9ydGFudFwiLCBcIlwiKX07XG59XG5cbkBtaXhpbiBidXR0b24tcmVzZXQoKSB7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IG5vbmU7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIHRleHQtYWxpZ246IGluaGVyaXQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG5AbWl4aW4gYnV0dG9uKCkge1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtbSk7XG4gIGJvcmRlci13aWR0aDogdmFyKC0tYnV0dG9uLWJvcmRlci13aWR0aCk7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1mb250LXNpemUpO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtc3RyZXRjaDogbm9ybWFsO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1sZWFkaW5nLW5vbmUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tdHJhY2tpbmctbm9ybWFsKTtcbiAgcGFkZGluZy1ibG9jazogdmFyKC0tc3BhY2luZy0wNzUpO1xuICBwYWRkaW5nLWlubGluZTogdmFyKC0tc3BhY2luZy0xMDApO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgQGluY2x1ZGUgb24tZXZlbnQge1xuICAgIHRyYW5zaXRpb246XG4gICAgICBjb2xvciB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dCxcbiAgICAgIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQsXG4gICAgICB0cmFuc2Zvcm0gdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQsXG4gICAgICBvcGFjaXR5IHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0O1xuXG4gICAgJjphY3RpdmUge1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwLjkpO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gYnV0dG9uLXN0eWxlKCRzdHlsZTogXCJwcmltYXJ5XCIsICRpbXBvcnRhbnQ6IGZhbHNlKSB7XG4gIEBpZiAkc3R5bGUgPT0gXCJwcmltYXJ5XCIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLW9yYW5nZSkgaWYtaW1wb3J0YW50KCRpbXBvcnRhbnQpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtb3JhbmdlKSBpZi1pbXBvcnRhbnQoJGltcG9ydGFudCk7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWRhcmstZ3JheSkgaWYtaW1wb3J0YW50KCRpbXBvcnRhbnQpO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1saWdodC1ncmF5KSBpZi1pbXBvcnRhbnQoJGltcG9ydGFudCk7XG4gICAgfVxuXG4gICAgJjpmb2N1cyB7XG4gICAgICBvdXRsaW5lLWNvbG9yOiB2YXIoLS1jb2xvci1mb2N1cy1zdHJva2UpIGlmLWltcG9ydGFudCgkaW1wb3J0YW50KTtcbiAgICB9XG4gIH1cblxuICBAaWYgJHN0eWxlID09IFwicHJpbWFyeS1vdXRsaW5lXCIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWxpZ2h0ZXItZ3JheSkgaWYtaW1wb3J0YW50KCRpbXBvcnRhbnQpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtb3JhbmdlKSBpZi1pbXBvcnRhbnQoJGltcG9ydGFudCk7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLW9yYW5nZSkgaWYtaW1wb3J0YW50KCRpbXBvcnRhbnQpO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1vcmFuZ2UpIGlmLWltcG9ydGFudCgkaW1wb3J0YW50KTtcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1saWdodCkgaWYtaW1wb3J0YW50KCRpbXBvcnRhbnQpO1xuICAgIH1cblxuICAgICY6Zm9jdXMge1xuICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1mb2N1cy1zdHJva2UpO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkc3R5bGUgPT0gXCJzZWNvbmRhcnlcIiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSkgaWYtaW1wb3J0YW50KCRpbXBvcnRhbnQpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSkgaWYtaW1wb3J0YW50KCRpbXBvcnRhbnQpO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1saWdodCkgaWYtaW1wb3J0YW50KCRpbXBvcnRhbnQpO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1saWdodGVyLWdyYXkpXG4gICAgICAgIGlmLWltcG9ydGFudCgkaW1wb3J0YW50KTtcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKSBpZi1pbXBvcnRhbnQoJGltcG9ydGFudCk7XG4gICAgfVxuXG4gICAgJjpmb2N1cyB7XG4gICAgICBvdXRsaW5lLWNvbG9yOiB2YXIoLS1jb2xvci1mb2N1cy1zdHJva2UpIGlmLWltcG9ydGFudCgkaW1wb3J0YW50KTtcbiAgICB9XG4gIH1cblxuICBAaWYgJHN0eWxlID09IFwic2Vjb25kYXJ5LW91dGxpbmVcIiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtbGlnaHRlci1ncmF5KSBpZi1pbXBvcnRhbnQoJGltcG9ydGFudCk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKSBpZi1pbXBvcnRhbnQoJGltcG9ydGFudCk7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpIGlmLWltcG9ydGFudCgkaW1wb3J0YW50KTtcblxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSkgaWYtaW1wb3J0YW50KCRpbXBvcnRhbnQpO1xuICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0KSBpZi1pbXBvcnRhbnQoJGltcG9ydGFudCk7XG4gICAgfVxuXG4gICAgJjpmb2N1cyB7XG4gICAgICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWZvY3VzLXN0cm9rZSk7XG4gICAgfVxuICB9XG5cbiAgQGlmICRzdHlsZSA9PSBcInNlY29uZGFyeS1saWdodFwiIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCBpZi1pbXBvcnRhbnQoJGltcG9ydGFudCk7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpIGlmLWltcG9ydGFudCgkaW1wb3J0YW50KTtcblxuICAgICY6aG92ZXIsXG4gICAgJlthcmlhLWN1cnJlbnQ9XCJwYWdlXCJdIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpIGlmLWltcG9ydGFudCgkaW1wb3J0YW50KTtcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1saWdodCkgaWYtaW1wb3J0YW50KCRpbXBvcnRhbnQpO1xuICAgIH1cblxuICAgICY6Zm9jdXMge1xuICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1mb2N1cy1zdHJva2UpO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkc3R5bGUgPT0gXCJmaWx0ZXJcIiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtc2VhcmNoLWdyYXkpIGlmLWltcG9ydGFudCgkaW1wb3J0YW50KTtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSkgaWYtaW1wb3J0YW50KCRpbXBvcnRhbnQpO1xuXG4gICAgJlthcmlhLXByZXNzZWQ9XCJ0cnVlXCJdIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1vcmFuZ2UpIGlmLWltcG9ydGFudCgkaW1wb3J0YW50KTtcbiAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1zZW1pYm9sZCk7XG4gICAgfVxuXG4gICAgJjpmb2N1cyB7XG4gICAgICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWZvY3VzLXN0cm9rZSk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBidXR0b24tc2l6ZSgkc2l6ZTogXCJtZFwiKSB7XG4gIC8vIHJlY29tbWVuZGVkIGZvciBwYWdpbmF0aW9uXG4gIEBpZiAkc2l6ZSA9PSBcInhzXCIge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1zbWFsbC1mb250LXNpemUpO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ib2xkKTtcbiAgICBsZXR0ZXItc3BhY2luZzogdmFyKC0tdHJhY2tpbmctbm9ybWFsKTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tbGVhZGluZy10aWdodCk7XG4gICAgcGFkZGluZy1ibG9jazogdmFyKC0tc3BhY2luZy0wMjUpO1xuICAgIHBhZGRpbmctaW5saW5lOiB2YXIoLS1zcGFjaW5nLTA3NSk7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYnRuLXJhZGl1cy1mdWxsKTtcbiAgfVxuXG4gIC8vIHJlY29tbWVuZGVkIGZvciBwZGYgZG93bmxvYWQgb3IgYmFkZ2VcbiAgQGlmICRzaXplID09IFwic21cIiB7XG4gICAgZm9udC1zaXplOiB2YXIoLS1ib2R5LXNtYWxsLWZvbnQtc2l6ZSk7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICAgIGxldHRlci1zcGFjaW5nOiB2YXIoLS10cmFja2luZy1ub3JtYWwpO1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1sZWFkaW5nLW5vbmUpO1xuICAgIHBhZGRpbmctYmxvY2s6IHZhcigtLXNwYWNpbmctMDI1KTtcbiAgICBwYWRkaW5nLWlubGluZTogdmFyKC0tc3BhY2luZy0wNzUpO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJ0bi1yYWRpdXMpO1xuICB9XG5cbiAgLy8gcmVjb21tZW5kZWQgZm9yIGdlbmVyYWwgdXNlXG4gIEBpZiAkc2l6ZSA9PSBcIm1kXCIge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1sYXJnZS1mb250LXNpemUpO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ib2xkKTtcbiAgICBsZXR0ZXItc3BhY2luZzogdmFyKC0tdHJhY2tpbmctbm9ybWFsKTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tbGVhZGluZy1ub25lKTtcbiAgICBwYWRkaW5nLWJsb2NrOiB2YXIoLS1zcGFjaW5nLTA3NSk7XG4gICAgcGFkZGluZy1pbmxpbmU6IHZhcigtLXNwYWNpbmctMTAwKTtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1idG4tcmFkaXVzLW1kKTtcbiAgfVxuXG4gIC8vIHJlY29tbWVuZGVkIGZvciBjdGEgYnV0dG9uIGluIGNvbXBvbmVudHMvYmxvY2ssIGxpa2UgXCJtb3JlXCJcbiAgQGlmICRzaXplID09IFwibGdcIiB7XG4gICAgZm9udC1zaXplOiB2YXIoLS1ib2R5LWZvbnQtc2l6ZSk7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXNlbWlib2xkKTtcbiAgICBsZXR0ZXItc3BhY2luZzogdmFyKC0tdHJhY2tpbmctbm9ybWFsKTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tbGVhZGluZy1ub25lKTtcbiAgICBwYWRkaW5nLWJsb2NrOiB2YXIoLS1zcGFjaW5nLTEwMCk7XG4gICAgcGFkZGluZy1pbmxpbmU6IHZhcigtLXNwYWNpbmctNjAwKTtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1idG4tcmFkaXVzLWxnKTtcbiAgfVxuXG4gIC8vIHJlY29tbWVuZGVkIGZvciBzdHJpY3Qgc3RhdGljIGJ1dHRvbnMsIGxpa2UgaGVybyBiYW5uZXIsIG5ld3NsZXR0ZXIgYmxvY2sgY3RhLCBldGMuXG4gIEBpZiAkc2l6ZSA9PSBcInN0YXRpY1wiIHtcbiAgICBmb250LXNpemU6IHZhcigtLWJvZHktZm9udC1zaXplKTtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZCk7XG4gICAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLXRyYWNraW5nLW5vcm1hbCk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWxlYWRpbmctbm9uZSk7XG4gICAgd2lkdGg6IHZhcigtLXNwYWNpbmctMTIwMCk7XG4gICAgaGVpZ2h0OiB2YXIoLS1idXR0b24tc2l6ZSk7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYnRuLXJhZGl1cy1sZyk7XG4gIH1cblxuICAvLyBidXR0b24gYXMgZmlsdGVyIGlucHV0XG4gIEBpZiAkc2l6ZSA9PSBcImZpbHRlclwiIHtcbiAgICBmb250LXNpemU6IHZhcigtLWJvZHktZm9udC1zaXplKTtcbiAgICBsZXR0ZXItc3BhY2luZzogdmFyKC0tYm9keS1sZXR0ZXItc3BhY2luZyk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWJvZHktbGluZS1oZWlnaHQpO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbiAgICBoZWlnaHQ6IHZhcigtLXNwYWNpbmctMzAwKTtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLWwpO1xuICB9XG59XG4iLCIvKipcbiAqIENsZWFyZml4XG4gKiBHcm91cDogVG9vbHNcbiAqL1xuXG4vKlxuXHRNaXhpbiB0byBkcm9wIG1pY3JvIGNsZWFyZml4IGludG8gYSBzZWxlY3Rvci4gRnVydGhlciByZWFkaW5nOlxuXHRodHRwOi8vd3d3LmNzc21vam8uY29tL3RoZS12ZXJ5LWxhdGVzdC1jbGVhcmZpeC1yZWxvYWRlZC9cblxuXHQudXNhZ2Uge1xuXHRcdEBpbmNsdWRlIGNsZWFyZml4KCk7XG5cdH1cblxuICovXG5AbWl4aW4gY2xlYXJmaXgoKSB7XG4gICY6OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiICFpbXBvcnRhbnQ7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICBjbGVhcjogYm90aCAhaW1wb3J0YW50O1xuICB9XG59XG4iLCIvKipcbiAqIENvbG9yc1xuICpcbiAqIEdyb3VwOiBUb29sc1xuICovXG5cbkB1c2UgXCIuLi8wMS1zZXR0aW5ncy92YXJpYWJsZXNcIiBhcyAqO1xuXG46cm9vdCB7XG4gIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGNvbG9ycyB7XG4gICAgLS1jb2xvci0jeyRuYW1lfTogI3skY29sb3J9O1xuICB9XG5cbiAgLS1vdmVybGF5LWNvbG9yOiByZ2IoMCAwIDAgLyA4NCUpO1xuICAtLW92ZXJsYXktY29sb3ItbGlnaHQ6IHJnYigwIDAgMCAvIDM1JSk7XG59XG4iLCIvKipcbiAqIExpbmVhciBHcmFkaWVudCBNaXhpblxuICogR3JvdXA6IFRvb2xzXG4gKiBcbiAqIEdlbmVyYXRlcyBhIGxpbmVhciBncmFkaWVudCBiYWNrZ3JvdW5kIHdpdGggY3VzdG9taXphYmxlIGRpcmVjdGlvbiwgY29sb3JzLCBhbmQgc3RvcHMuXG4gKiBcbiAqIEBtaXhpbiBsaW5lYXItZ3JhZGllbnQoXG4gKiAgICRkaXJlY3Rpb246IHRvIGJvdHRvbSwgICAgICAgICAvLyBEaXJlY3Rpb24gb2YgdGhlIGdyYWRpZW50IChlLmcuLCAndG8gcmlnaHQnLCAnNDVkZWcnKVxuICogICAkc3RhcnQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCksIC8vIFN0YXJ0aW5nIGNvbG9yIG9mIHRoZSBncmFkaWVudFxuICogICAkc3RhcnQtcGVyY2VudDogMCUsICAgICAgICAgICAgLy8gUGVyY2VudGFnZSBwb3NpdGlvbiB3aGVyZSB0aGUgc3RhcnRpbmcgY29sb3IgYmVnaW5zXG4gKiAgICRlbmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC43KSwgLy8gRW5kaW5nIGNvbG9yIG9mIHRoZSBncmFkaWVudFxuICogICAkZW5kLXBlcmNlbnQ6IDcwJSwgICAgICAgICAgICAgLy8gUGVyY2VudGFnZSBwb3NpdGlvbiB3aGVyZSB0aGUgZW5kaW5nIGNvbG9yIGVuZHNcbiAqICAgJGltcG9ydGFudDogZmFsc2UgICAgICAgICAgICAgICAvLyBJZiB0cnVlLCBhcHBlbmRzIGAhaW1wb3J0YW50YCB0byB0aGUgYmFja2dyb3VuZCBwcm9wZXJ0eVxuICogKVxuICogXG4gKiBAZXhhbXBsZVxuICogLmN0YV9fYnV0dG9uLS1ncmFkaWVudCB7XG4gKiAgIEBpbmNsdWRlIGxpbmVhci1ncmFkaWVudCgyNzBkZWcsIHJnYmEoMCwgMCwgMCwgMC4wMCksIDM0LjUlLCByZ2JhKDAsIDAsIDAsIDAuNzApLCA2MyUpO1xuICogfVxuICogXG4gKiBAZXhhbXBsZVxuICogLmN0YV9fYnV0dG9uLS1ncmFkaWVudC1pbXBvcnRhbnQge1xuICogICBAaW5jbHVkZSBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICNGRjU3MzMsIDAlLCByZ2JhKDI1NSwgODcsIDUxLCAwLjUpLCAxMDAlLCB0cnVlKTtcbiAqIH1cbiAqXHQwZGVnOiBQb2ludHMgdG8gdG9wLlxuICogIDkwZGVnOiBQb2ludHMgdG8gcmlnaHQuXG4gKlx0MTgwZGVnOiBQb2ludHMgdG8gYm90dG9tLlxuICpcdDI3MGRlZzogUG9pbnRzIHRvIGxlZnQuXG4gKi9cblxuQG1peGluIGxpbmVhci1ncmFkaWVudChcbiAgJGRpcmVjdGlvbjogdG8gbGVmdCxcbiAgJHN0YXJ0LWNvbG9yOiByZ2JhKDAsIDAsIDAsIDApLFxuICAkc3RhcnQtcGVyY2VudDogMCUsXG4gICRlbmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC43KSxcbiAgJGVuZC1wZXJjZW50OiA3MCUsXG4gICRpbXBvcnRhbnQ6IGZhbHNlXG4pIHtcbiAgJGltcG9ydGFudC1zdHJpbmc6IGlmKCRpbXBvcnRhbnQsIFwiICFpbXBvcnRhbnRcIiwgXCJcIik7XG5cbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KFxuICAgICAgJGRpcmVjdGlvbixcbiAgICAgICRzdGFydC1jb2xvciAkc3RhcnQtcGVyY2VudCxcbiAgICAgICRlbmQtY29sb3IgJGVuZC1wZXJjZW50XG4gICAgKVxuICAgICN7JGltcG9ydGFudC1zdHJpbmd9O1xufVxuIiwiLyoqXG4gKiBJbnB1dFxuICogR3JvdXA6IFRvb2xzXG4gKi9cblxuQHVzZSBcInBsYWNlaG9sZGVyXCIgYXMgKjtcbkB1c2UgXCJ0eXBvZ3JhcGh5XCIgYXMgKjtcbkB1c2UgXCJib3gtc2hhZG93c1wiIGFzICo7XG5AdXNlIFwib24tZXZlbnRcIiBhcyAqO1xuXG5AbWl4aW4gaW5wdXQtZGVmYXVsdCgkdHlwZTogXCJkZWZhdWx0XCIpIHtcbiAgJHRoaXM6ICY7XG5cbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy14cyk7XG4gIGJvcmRlcjogbm9uZTtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWJvZHktbGluZS1oZWlnaHQpO1xuICB0ZXh0LWluZGVudDogMDtcblxuICBAaW5jbHVkZSBvbi1ldmVudCB7XG4gICAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dDtcbiAgfVxuXG4gIEBpZiAkdHlwZSAhPSBcInJlc2V0XCIge1xuICAgICY6aG92ZXIge1xuICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdyhcIjAzXCIsIFwibGlnaHRcIik7XG4gICAgfVxuICB9XG5cbiAgQGlmICR0eXBlID09IFwicmVzZXRcIiB7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBvdXRsaW5lOiBub25lO1xuICB9XG5cbiAgQGlmICR0eXBlID09IFwic2VhcmNoXCIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLXNlYXJjaC1ncmF5KTtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLWwpO1xuICAgIGhlaWdodDogdmFyKC0tc3BhY2luZy0yNTApO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLTA3NSk7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xuXG4gICAgaW5wdXQge1xuICAgICAgaGVpZ2h0OiB2YXIoLS1pbnB1dC1oZWlnaHQtbGFyZ2UpO1xuICAgICAgd2lkdGg6IHZhcigtLW1heC13aWR0aC0tNnhzKTtcbiAgICAgIGNvbG9yOiBpbmhlcml0O1xuXG4gICAgICBAaW5jbHVkZSB0ZXh0KFwic21cIik7XG5cbiAgICAgIEBpbmNsdWRlIHBsYWNlaG9sZGVyIHtcbiAgICAgICAgQGluY2x1ZGUgdGV4dChcInNtXCIpO1xuXG4gICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcbiAgICAgICAgb3BhY2l0eTogMC43O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpZiAkdHlwZSA9PSBcIm5ld3NsZXR0ZXJcIiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtc2VhcmNoLWdyYXkpO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtbCk7XG4gICAgaGVpZ2h0OiB2YXIoLS1zcGFjaW5nLTMwMCk7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLTEwMCk7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xuXG4gICAgaW5wdXQge1xuICAgICAgaGVpZ2h0OiB2YXIoLS1pbnB1dC1oZWlnaHQtbWVkaXVtKTtcbiAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgIEBpbmNsdWRlIHRleHQoXCJtZFwiKTtcblxuICAgICAgQGluY2x1ZGUgcGxhY2Vob2xkZXIge1xuICAgICAgICBAaW5jbHVkZSB0ZXh0KFwibWRcIik7XG5cbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xuICAgICAgfVxuXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgb3V0bGluZTogMnB4IHNvbGlkIHZhcigtLWNvbG9yLWZvY3VzLXN0cm9rZSk7XG4gICAgICAgIG91dGxpbmUtb2Zmc2V0OiAxcHg7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGlmICR0eXBlID09IFwiZmlsdGVyXCIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLXNlYXJjaC1ncmF5KTtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLWwpO1xuICAgIGhlaWdodDogdmFyKC0tc3BhY2luZy0zMDApO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiByb3cgbm93cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgcGFkZGluZzogdmFyKC0tc3BhY2luZy0xMDApIHZhcigtLXNwYWNpbmctMTUwKTtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG5cbiAgICBpbnB1dCB7XG4gICAgICBoZWlnaHQ6IHZhcigtLWlucHV0LWhlaWdodC1tZWRpdW0pO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBjb2xvcjogaW5oZXJpdDtcblxuICAgICAgQGluY2x1ZGUgdGV4dChcIm1kXCIpO1xuXG4gICAgICBAaW5jbHVkZSBwbGFjZWhvbGRlciB7XG4gICAgICAgIEBpbmNsdWRlIHRleHQoXCJtZFwiKTtcblxuICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGlmICR0eXBlID09IFwiZGVmYXVsdFwiIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1zZWFyY2gtZ3JheSk7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1sKTtcbiAgICBoZWlnaHQ6IHZhcigtLXNwYWNpbmctMzAwKTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogcm93IG5vd3JhcDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLTEwMCkgdmFyKC0tc3BhY2luZy0xNTApO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcblxuICAgIEBpbmNsdWRlIHRleHQoXCJtZFwiKTtcblxuICAgIGlucHV0IHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgY29sb3I6IGluaGVyaXQ7XG5cbiAgICAgIEBpbmNsdWRlIHRleHQoXCJtZFwiKTtcblxuICAgICAgQGluY2x1ZGUgcGxhY2Vob2xkZXIge1xuICAgICAgICBAaW5jbHVkZSB0ZXh0KFwibWRcIik7XG5cbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLyoqXG4gKiBQbGFjZWhvbGRlclxuICogR3JvdXA6IFRvb2xzXG4gKi9cblxuLyogc3R5bGVsaW50LWRpc2FibGUgKi9cbi8qIHByZXR0aWVyLWlnbm9yZSAqL1xuLy8gTGVnYWN5IHBsYWNlaG9sZGVyIHNlbGVjdG9ycyBmb3IgYnJvYWRlciBicm93c2VyIHN1cHBvcnQuXG4vLyBLZWVwcyA6OnBsYWNlaG9sZGVyIHN0eWxlcyBjb25zaXN0ZW50IGFjcm9zcyBtb2Rlcm4gYW5kIG9sZGVyIGJyb3dzZXJzLlxuQG1peGluIHBsYWNlaG9sZGVyIHtcbiAgJjo6cGxhY2Vob2xkZXIge1xuICAgIEBjb250ZW50O1xuICB9XG5cbiAgJjo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cblxuICAmOjotbW96LXBsYWNlaG9sZGVyIHtcbiAgICBAY29udGVudDtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgJjotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgIEBjb250ZW50O1xuICB9XG59XG4iLCIvKipcbiAqIFR5cG9ncmFwaHlcbiAqIEdyb3VwOiBUb29sc1xuICovXG5cbkBtaXhpbiBoZWFkaW5nKCRzaXplOiBcImgxXCIsICR3ZWlnaHQ6IFwicmVndWxhclwiLCAkaW1wb3J0YW50OiBmYWxzZSkge1xuICAkaW1wb3J0YW50LXN0cmluZzogXCJcIjtcblxuICBAaWYgJGltcG9ydGFudCA9PSB0cnVlIHtcbiAgICAkaW1wb3J0YW50LXN0cmluZzogXCIgIWltcG9ydGFudFwiO1xuICB9XG5cbiAgQGlmICRzaXplID09IFwiaDFcIiB7XG4gICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtcHJpbWFyeSk7XG4gICAgZm9udC1zaXplOiB2YXIoLS1oMS1mb250LXNpemUpICN7JGltcG9ydGFudC1zdHJpbmd9O1xuICAgIGxldHRlci1zcGFjaW5nOiB2YXIoLS1oMS1sZXR0ZXItc3BhY2luZykgI3skaW1wb3J0YW50LXN0cmluZ307XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWgxLWxpbmUtaGVpZ2h0KSAjeyRpbXBvcnRhbnQtc3RyaW5nfTtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtI3skd2VpZ2h0fSkgI3skaW1wb3J0YW50LXN0cmluZ307XG4gIH1cblxuICBAaWYgJHNpemUgPT0gXCJoMlwiIHtcbiAgICBmb250LWZhbWlseTogdmFyKC0tZm9udC1wcmltYXJ5KTtcbiAgICBmb250LXNpemU6IHZhcigtLWgyLWZvbnQtc2l6ZSkgI3skaW1wb3J0YW50LXN0cmluZ307XG4gICAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWgyLWxldHRlci1zcGFjaW5nKSAjeyRpbXBvcnRhbnQtc3RyaW5nfTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0taDItbGluZS1oZWlnaHQpICN7JGltcG9ydGFudC1zdHJpbmd9O1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC0jeyR3ZWlnaHR9KSAjeyRpbXBvcnRhbnQtc3RyaW5nfTtcbiAgfVxuXG4gIEBpZiAkc2l6ZSA9PSBcImgzXCIge1xuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LXByaW1hcnkpO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0taDMtZm9udC1zaXplKSAjeyRpbXBvcnRhbnQtc3RyaW5nfTtcbiAgICBsZXR0ZXItc3BhY2luZzogdmFyKC0taDMtbGV0dGVyLXNwYWNpbmcpICN7JGltcG9ydGFudC1zdHJpbmd9O1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1oMy1saW5lLWhlaWdodCkgI3skaW1wb3J0YW50LXN0cmluZ307XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LSN7JHdlaWdodH0pICN7JGltcG9ydGFudC1zdHJpbmd9O1xuICB9XG5cbiAgQGlmICRzaXplID09IFwiaDRcIiB7XG4gICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtcHJpbWFyeSk7XG4gICAgZm9udC1zaXplOiB2YXIoLS1oNC1mb250LXNpemUpICN7JGltcG9ydGFudC1zdHJpbmd9O1xuICAgIGxldHRlci1zcGFjaW5nOiB2YXIoLS1oNC1sZXR0ZXItc3BhY2luZykgI3skaW1wb3J0YW50LXN0cmluZ307XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWg0LWxpbmUtaGVpZ2h0KSAjeyRpbXBvcnRhbnQtc3RyaW5nfTtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtI3skd2VpZ2h0fSkgI3skaW1wb3J0YW50LXN0cmluZ307XG4gIH1cblxuICBAaWYgJHNpemUgPT0gXCJoNVwiIHtcbiAgICBmb250LWZhbWlseTogdmFyKC0tZm9udC1wcmltYXJ5KTtcbiAgICBmb250LXNpemU6IHZhcigtLWg1LWZvbnQtc2l6ZSkgI3skaW1wb3J0YW50LXN0cmluZ307XG4gICAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWg1LWxldHRlci1zcGFjaW5nKSAjeyRpbXBvcnRhbnQtc3RyaW5nfTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0taDUtbGluZS1oZWlnaHQpICN7JGltcG9ydGFudC1zdHJpbmd9O1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC0jeyR3ZWlnaHR9KSAjeyRpbXBvcnRhbnQtc3RyaW5nfTtcbiAgfVxuXG4gIEBpZiAkc2l6ZSA9PSBcImg2XCIge1xuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LXByaW1hcnkpO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0taDYtZm9udC1zaXplKSAjeyRpbXBvcnRhbnQtc3RyaW5nfTtcbiAgICBsZXR0ZXItc3BhY2luZzogdmFyKC0taDYtbGV0dGVyLXNwYWNpbmcpICN7JGltcG9ydGFudC1zdHJpbmd9O1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1oNi1saW5lLWhlaWdodCkgI3skaW1wb3J0YW50LXN0cmluZ307XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LSN7JHdlaWdodH0pICN7JGltcG9ydGFudC1zdHJpbmd9O1xuICB9XG59XG5cbkBtaXhpbiB0ZXh0KCRzaXplOiBcIm1kXCIsICR3ZWlnaHQ6IFwicmVndWxhclwiLCAkaW1wb3J0YW50OiBmYWxzZSkge1xuICAkaW1wb3J0YW50LXN0cmluZzogXCJcIjtcblxuICBAaWYgJGltcG9ydGFudCA9PSB0cnVlIHtcbiAgICAkaW1wb3J0YW50LXN0cmluZzogXCIgIWltcG9ydGFudFwiO1xuICB9XG5cbiAgQGlmICRzaXplID09IFwic21cIiB7XG4gICAgZm9udC1zaXplOiB2YXIoLS1ib2R5LXNtYWxsLWZvbnQtc2l6ZSkgI3skaW1wb3J0YW50LXN0cmluZ307XG4gICAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWJvZHktc21hbGwtbGV0dGVyLXNwYWNpbmcpICN7JGltcG9ydGFudC1zdHJpbmd9O1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LXNtYWxsLWxpbmUtaGVpZ2h0KSAjeyRpbXBvcnRhbnQtc3RyaW5nfTtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtI3skd2VpZ2h0fSkgI3skaW1wb3J0YW50LXN0cmluZ307XG4gIH1cblxuICBAaWYgJHNpemUgPT0gXCJtZFwiIHtcbiAgICBmb250LXNpemU6IHZhcigtLWJvZHktZm9udC1zaXplKSAjeyRpbXBvcnRhbnQtc3RyaW5nfTtcbiAgICBsZXR0ZXItc3BhY2luZzogdmFyKC0tYm9keS1sZXR0ZXItc3BhY2luZykgI3skaW1wb3J0YW50LXN0cmluZ307XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWJvZHktbGluZS1oZWlnaHQpICN7JGltcG9ydGFudC1zdHJpbmd9O1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC0jeyR3ZWlnaHR9KSAjeyRpbXBvcnRhbnQtc3RyaW5nfTtcbiAgfVxuXG4gIEBpZiAkc2l6ZSA9PSBcImxnXCIge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1tZWRpdW0tZm9udC1zaXplKSAjeyRpbXBvcnRhbnQtc3RyaW5nfTtcbiAgICBsZXR0ZXItc3BhY2luZzogdmFyKC0tYm9keS1tZWRpdW0tbGV0dGVyLXNwYWNpbmcpICN7JGltcG9ydGFudC1zdHJpbmd9O1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LW1lZGl1bS1saW5lLWhlaWdodCkgI3skaW1wb3J0YW50LXN0cmluZ307XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LSN7JHdlaWdodH0pICN7JGltcG9ydGFudC1zdHJpbmd9O1xuICB9XG59XG4iLCIvKipcbiAqIFNjcmVlbiBSZWFkZXIgT25seVxuICogR3JvdXA6IFRvb2xzXG4gKi9cblxuLy8gTWl4aW4gdG8gcXVpY2tseSBhcHBseSBhY2Nlc3NpYmxlIGhpZGluZyB0byBlbGVtZW50cy4gRm9yIHNjcmVlbiByZWFkZXJzLlxuQG1peGluIGhpZGRlbi12aXN1YWxseSgpIHtcbiAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XG4gIGNsaXA6IHJlY3QoMCAwIDAgMCkgIWltcG9ydGFudDtcbiAgY2xpcC1wYXRoOiBpbnNldCg1MCUpICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogMXB4ICFpbXBvcnRhbnQ7XG4gIG1hcmdpbjogLTFweCAhaW1wb3J0YW50O1xuICBvdmVyZmxvdzogaGlkZGVuICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXAgIWltcG9ydGFudDtcbiAgd2lkdGg6IDFweCAhaW1wb3J0YW50O1xuXG4gICY6YWN0aXZlLFxuICAmOmZvY3VzIHtcbiAgICBjbGlwOiBhdXRvO1xuICAgIGNsaXAtcGF0aDogbm9uZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgd2lkdGg6IGF1dG87XG4gICAgei1pbmRleDogMTAwMDAwO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxufVxuIiwiLyoqXG4gKiBTcGFjaW5nXG4gKiBHcm91cDogVG9vbHNcbiAqL1xuXG5AbWl4aW4gc3BhY2luZy1zaWRlcygkcmlnaHQ6IHRydWUsICRsZWZ0OiB0cnVlKSB7XG4gIEBpZiAkcmlnaHQge1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLXNwYWNlLXNtKTtcbiAgfVxuXG4gIEBpZiAkbGVmdCB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1zcGFjZS1zbSk7XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHRhYmxldCkge1xuICAgIEBpZiAkcmlnaHQge1xuICAgICAgcGFkZGluZy1yaWdodDogdmFyKC0tc3BhY2UtbWQpO1xuICAgIH1cblxuICAgIEBpZiAkbGVmdCB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXNwYWNlLW1kKTtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGRlc2t0b3ApIHtcbiAgICBAaWYgJHJpZ2h0IHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLXNwYWNlLWxnKTtcbiAgICB9XG5cbiAgICBAaWYgJGxlZnQge1xuICAgICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1zcGFjZS1sZyk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBtYXJnaW4tc2lkZXMoJHJpZ2h0OiB0cnVlLCAkbGVmdDogdHJ1ZSwgJG5lZ2F0aXZlOiBmYWxzZSkge1xuICAkbWludXM6IGlmKCRuZWdhdGl2ZSwgXCItXCIsIFwiXCIpO1xuXG4gIEBpZiAkcmlnaHQge1xuICAgIG1hcmdpbi1yaWdodDogI3skbWludXN9dmFyKC0tc3BhY2Utc20pO1xuICB9XG5cbiAgQGlmICRsZWZ0IHtcbiAgICBtYXJnaW4tbGVmdDogI3skbWludXN9dmFyKC0tc3BhY2Utc20pO1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh0YWJsZXQpIHtcbiAgICBAaWYgJHJpZ2h0IHtcbiAgICAgIG1hcmdpbi1yaWdodDogI3skbWludXN9dmFyKC0tc3BhY2UtbWQpO1xuICAgIH1cblxuICAgIEBpZiAkbGVmdCB7XG4gICAgICBtYXJnaW4tbGVmdDogI3skbWludXN9dmFyKC0tc3BhY2UtbWQpO1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoZGVza3RvcCkge1xuICAgIEBpZiAkcmlnaHQge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAjeyRtaW51c312YXIoLS1zcGFjZS1sZyk7XG4gICAgfVxuXG4gICAgQGlmICRsZWZ0IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAjeyRtaW51c312YXIoLS1zcGFjZS1sZyk7XG4gICAgfVxuICB9XG59XG4iLCIvKipcbiAqIE1haW4gR2VuZXJpYyBGaWxlXG4gKiBHcm91cDogR2VuZXJpY1xuICovXG5cbkBmb3J3YXJkIFwiYW5pbWF0aW9uc1wiO1xuQGZvcndhcmQgXCJyZXNldFwiO1xuQGZvcndhcmQgXCJzd2lwZXItcGFnaW5hdGlvblwiO1xuIiwiLyoqXG4gKiBBbmltYXRpb25zXG4gKiBHcm91cDogR2VuZXJpY1xuICAqIFRoaXMgZmlsZSBjb250YWlucyByZXVzYWJsZSBrZXlmcmFtZSBhbmltYXRpb25zIGZvciB2YXJpb3VzIHZpc3VhbCBlZmZlY3RzLlxuICogSXQgaW5jbHVkZXMgdXRpbGl0eSBjbGFzc2VzIHByZWZpeGVkIHdpdGggYGFuaW1hdGUtYCBmb3IgZWFzeSBhcHBsaWNhdGlvbi5cbiAqL1xuXG4vKiBVdGlsaXR5IGNsYXNzZXMgZm9yIGFuaW1hdGluZyBlbGVtZW50cyAqL1xuW2NsYXNzXj1cImFuaW1hdGUtXCJdLFxuW2NsYXNzKj1cIiBhbmltYXRlLVwiXSB7XG4gIHZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDsgLy8gRW5zdXJlcyB2aXNpYmlsaXR5IGZvciBhbmltYXRlZCBlbGVtZW50c1xufVxuXG4vKiBTbGlkZSBEb3duIEFuaW1hdGlvbiAqL1xuXG4vKipcbiAqIEBhbmltYXRpb24gc2xpZGUtZG93blxuICogTW92ZXMgYW4gZWxlbWVudCBmcm9tIGFib3ZlIHRoZSB2aWV3cG9ydCBpbnRvIGl0cyBub3JtYWwgcG9zaXRpb24gd2l0aCBhIHNtb290aCB0cmFuc2l0aW9uLlxuICogVXNlIHRoaXMgZm9yIGRyb3Bkb3ducywgbW9kYWxzLCBvciBtb2JpbGUgbWVudXMuXG4gKi9cbkBrZXlmcmFtZXMgc2xpZGUtZG93biB7XG4gIGZyb20ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7IC8vIFN0YXJ0IHBvc2l0aW9uOiBvdXRzaWRlIHRoZSB2aWV3cG9ydCAodG9wKVxuICAgIG9wYWNpdHk6IDA7IC8vIEZ1bGx5IHRyYW5zcGFyZW50XG4gIH1cblxuICB0byB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOyAvLyBFbmQgcG9zaXRpb246IG5vcm1hbCBsb2NhdGlvblxuICAgIG9wYWNpdHk6IDE7IC8vIEZ1bGx5IHZpc2libGVcbiAgfVxufVxuXG4vKiBTbGlkZSBVcCBBbmltYXRpb24gKi9cblxuLyoqXG4gKiBAYW5pbWF0aW9uIHNsaWRlLXVwXG4gKiBNb3ZlcyBhbiBlbGVtZW50IGZyb20gaXRzIG5vcm1hbCBwb3NpdGlvbiB0byBhYm92ZSB0aGUgdmlld3BvcnQgd2l0aCBhIHNtb290aCB0cmFuc2l0aW9uLlxuICogVXNlIHRoaXMgZm9yIGhpZGluZyBkcm9wZG93bnMsIG1vZGFscywgb3IgbW9iaWxlIG1lbnVzLlxuICovXG5Aa2V5ZnJhbWVzIHNsaWRlLXVwIHtcbiAgZnJvbSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZVkoMCk7IC8vIFN0YXJ0IHBvc2l0aW9uOiBub3JtYWwgbG9jYXRpb25cbiAgICBvcGFjaXR5OiAwOyAvLyBGdWxseSB0cmFuc3BhcmVudFxuICB9XG5cbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogc2NhbGVZKDEpOyAvLyBFbmQgcG9zaXRpb246IG91dHNpZGUgdGhlIHZpZXdwb3J0ICh0b3ApXG4gICAgb3BhY2l0eTogMTsgLy8gRnVsbHkgdmlzaWJsZVxuICB9XG59XG5cbi8qIFNsaWRlIExlZnQgQW5pbWF0aW9uICovXG5cbi8qKlxuICogQGFuaW1hdGlvbiBzbGlkZS1sZWZ0XG4gKiBNb3ZlcyBhbiBlbGVtZW50IGZyb20gYWJvdmUgdGhlIHZpZXdwb3J0IGludG8gaXRzIG5vcm1hbCBwb3NpdGlvbiB3aXRoIGEgc21vb3RoIHRyYW5zaXRpb24uXG4gKiBVc2UgdGhpcyBmb3IgZHJvcGRvd25zLCBtb2RhbHMsIG9yIG1vYmlsZSBtZW51cy5cbiAqL1xuQGtleWZyYW1lcyBzbGlkZS1sZWZ0IHtcbiAgZnJvbSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZVgoMCk7IC8vIFN0YXJ0IHBvc2l0aW9uOiB6ZXJvIFggc2l6ZVxuICAgIG9wYWNpdHk6IDA7IC8vIEZ1bGx5IHRyYW5zcGFyZW50XG4gIH1cblxuICB0byB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZVgoMSk7IC8vIEVuZCBwb3NpdGlvbjogbm9ybWFsIHNpemVcbiAgICBvcGFjaXR5OiAxOyAvLyBGdWxseSB2aXNpYmxlXG4gIH1cbn1cblxuLyogRmFkZSBJbiBBbmltYXRpb24gKi9cblxuLyoqXG4gKiBAYW5pbWF0aW9uIGZhZGUtaW5cbiAqIEdyYWR1YWxseSBpbmNyZWFzZXMgdGhlIG9wYWNpdHkgb2YgYW4gZWxlbWVudCBmcm9tIDAgdG8gMS5cbiAqIFVzZSB0aGlzIGZvciB0b29sdGlwcywgcG9wdXBzLCBvciBzdWJ0bGUgYXBwZWFyYW5jZSBlZmZlY3RzLlxuICovXG5Aa2V5ZnJhbWVzIGZhZGUtaW4ge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAwOyAvLyBGdWxseSB0cmFuc3BhcmVudFxuICB9XG5cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDE7IC8vIEZ1bGx5IHZpc2libGVcbiAgfVxufVxuXG4vKiBGYWRlIE91dCBBbmltYXRpb24gKi9cblxuLyoqXG4gKiBAYW5pbWF0aW9uIGZhZGUtb3V0XG4gKiBHcmFkdWFsbHkgZGVjcmVhc2VzIHRoZSBvcGFjaXR5IG9mIGFuIGVsZW1lbnQgZnJvbSAxIHRvIDAuXG4gKiBVc2UgdGhpcyBmb3IgZGlzbWlzc2luZyB0b29sdGlwcywgcG9wdXBzLCBvciBzdWJ0bGUgZGlzYXBwZWFyYW5jZSBlZmZlY3RzLlxuICovXG5Aa2V5ZnJhbWVzIGZhZGUtb3V0IHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMTsgLy8gRnVsbHkgdmlzaWJsZVxuICB9XG5cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDA7IC8vIEZ1bGx5IHRyYW5zcGFyZW50XG4gIH1cbn1cblxuLyogU2NhbGUgSW4gQW5pbWF0aW9uICovXG5cbi8qKlxuICogQGFuaW1hdGlvbiBzY2FsZS1pblxuICogR3JhZHVhbGx5IHNjYWxlcyBhbiBlbGVtZW50IGZyb20gMC44eCB0byBpdHMgbm9ybWFsIHNpemUuXG4gKiBVc2UgdGhpcyBmb3IgbW9kYWxzLCBpbWFnZXMsIG9yIHpvb20gZWZmZWN0cy5cbiAqL1xuQGtleWZyYW1lcyBzY2FsZS1pbiB7XG4gIGZyb20ge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC44KTsgLy8gU2NhbGVkIGRvd25cbiAgICBvcGFjaXR5OiAwOyAvLyBGdWxseSB0cmFuc3BhcmVudFxuICB9XG5cbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7IC8vIE5vcm1hbCBzaXplXG4gICAgb3BhY2l0eTogMTsgLy8gRnVsbHkgdmlzaWJsZVxuICB9XG59XG5cbi8qIFNjYWxlIE91dCBBbmltYXRpb24gKi9cblxuLyoqXG4gKiBAYW5pbWF0aW9uIHNjYWxlLW91dFxuICogR3JhZHVhbGx5IHNjYWxlcyBhbiBlbGVtZW50IGZyb20gaXRzIG5vcm1hbCBzaXplIHRvIDAuOHguXG4gKiBVc2UgdGhpcyBmb3IgZGlzbWlzc2luZyBtb2RhbHMsIGltYWdlcywgb3Igem9vbSBlZmZlY3RzLlxuICovXG5Aa2V5ZnJhbWVzIHNjYWxlLW91dCB7XG4gIGZyb20ge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7IC8vIE5vcm1hbCBzaXplXG4gICAgb3BhY2l0eTogMTsgLy8gRnVsbHkgdmlzaWJsZVxuICB9XG5cbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC44KTsgLy8gU2NhbGVkIGRvd25cbiAgICBvcGFjaXR5OiAwOyAvLyBGdWxseSB0cmFuc3BhcmVudFxuICB9XG59XG5cbi8qIEJvdW5jZSBBbmltYXRpb24gKi9cblxuLyoqXG4gKiBAYW5pbWF0aW9uIGJvdW5jZVxuICogQ3JlYXRlcyBhIGJvdW5jaW5nIGVmZmVjdCBmb3IgYW4gZWxlbWVudC5cbiAqIFVzZSB0aGlzIGZvciBjYWxsLXRvLWFjdGlvbiBidXR0b25zIG9yIGF0dGVudGlvbi1ncmFiYmluZyBlZmZlY3RzLlxuICovXG5Aa2V5ZnJhbWVzIGJvdW5jZSB7XG4gIDAlLFxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7IC8vIE5vcm1hbCBwb3NpdGlvblxuICB9XG5cbiAgNTAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwJSk7IC8vIE1vdmUgdXAgc2xpZ2h0bHlcbiAgfVxufVxuXG4vKipcbiAqIEBhbmltYXRpb24gYm91bmNlIDJcbiAqIENyZWF0ZXMgYSBib3VuY2luZyBlZmZlY3QgZm9yIGFuIGVsZW1lbnQuXG4gKiBVc2UgdGhpcyBmb3IgY2FsbC10by1hY3Rpb24gYnV0dG9ucyBvciBhdHRlbnRpb24tZ3JhYmJpbmcgZWZmZWN0cy5cbiAqL1xuQGtleWZyYW1lcyBib3VuY2UyIHtcbiAgMCUsXG4gIDIwJSxcbiAgNTAlLFxuICA4MCUsXG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxuXG4gIDQwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yMCUpO1xuICB9XG5cbiAgNjAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwJSk7XG4gIH1cbn1cblxuLyogU2xpZGUgYm91bmNlIHVwIEFuaW1hdGlvbiAqL1xuXG4vKipcbiAqIEBhbmltYXRpb24gc2xpZGUtYm91bmNlLXVwXG4gKiBDcmVhdGVzIGEgYm91bmNpbmcgZWZmZWN0IGZvciBhbiBlbGVtZW50LlxuICogVXNlIHRoaXMgZm9yIGFjY29yZGlvbiBvciBhdHRlbnRpb24tZ3JhYmJpbmcgZWZmZWN0cy5cbiAqL1xuQGtleWZyYW1lcyBzbGlkZS1ib3VuY2UtdXAge1xuICBmcm9tIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlWSgwLjUpIHRyYW5zbGF0ZVkoMzAlKTsgLy8gU3RhcnRpbmcgcG9zaXRpb25cbiAgfVxuXG4gIHRvIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlWSgxKSB0cmFuc2xhdGVZKDApOyAvLyBOb3JtYWwgcG9zaXRpb25cbiAgfVxufVxuXG4vKiBTbGlkZSBib3VuY2UgZG93biBBbmltYXRpb24gKi9cblxuLyoqXG4gKiBAYW5pbWF0aW9uIHNsaWRlLWJvdW5jZS1kb3duXG4gKiBDcmVhdGVzIGEgYm91bmNpbmcgZWZmZWN0IGZvciBhbiBlbGVtZW50LlxuICogVXNlIHRoaXMgZm9yIGFjY29yZGlvbiBvciBhdHRlbnRpb24tZ3JhYmJpbmcgZWZmZWN0cy5cbiAqL1xuQGtleWZyYW1lcyBzbGlkZS1ib3VuY2UtZG93biB7XG4gIGZyb20ge1xuICAgIHRyYW5zZm9ybTogc2NhbGVZKDAuNSkgdHJhbnNsYXRlWSgtMzAlKTsgLy8gU3RhcnRpbmcgcG9zaXRpb25cbiAgfVxuXG4gIHRvIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlWSgxKSB0cmFuc2xhdGVZKDApOyAvLyBOb3JtYWwgcG9zaXRpb25cbiAgfVxufVxuXG4vKiBSb3RhdGUgQW5pbWF0aW9uICovXG5cbi8qKlxuICogQGFuaW1hdGlvbiByb3RhdGUgZnVsbFxuICogUm90YXRlcyBhbiBlbGVtZW50IDM2MCBkZWdyZWVzLlxuICogVXNlIHRoaXMgZm9yIGxvYWRpbmcgc3Bpbm5lcnMgb3IgZGVjb3JhdGl2ZSBlZmZlY3RzLlxuICovXG5Aa2V5ZnJhbWVzIHJvdGF0ZS1mdWxsIHtcbiAgZnJvbSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7IC8vIFN0YXJ0aW5nIGFuZ2xlXG4gIH1cblxuICB0byB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTsgLy8gQ29tcGxldGUgcm90YXRpb25cbiAgfVxufVxuXG4vKipcbiAqIEBhbmltYXRpb24gcm90YXRlIGhhbGZcbiAqIFJvdGF0ZXMgYW4gZWxlbWVudCAxODAgZGVncmVlcy5cbiAqIFVzZSB0aGlzIGZvciBsb2FkaW5nIHNwaW5uZXJzIG9yIGRlY29yYXRpdmUgZWZmZWN0cy5cbiAqL1xuQGtleWZyYW1lcyByb3RhdGUtMTgwIHtcbiAgZnJvbSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7IC8vIFN0YXJ0aW5nIGFuZ2xlXG4gIH1cblxuICB0byB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTsgLy8gQ29tcGxldGUgcm90YXRpb25cbiAgfVxufVxuXG4vKipcbiAqIEBhbmltYXRpb24gcm90YXRlIDkwXG4gKiBSb3RhdGVzIGFuIGVsZW1lbnQgOTAgZGVncmVlcy5cbiAqIFVzZSB0aGlzIGZvciBsb2FkaW5nIHNwaW5uZXJzIG9yIGRlY29yYXRpdmUgZWZmZWN0cy5cbiAqL1xuQGtleWZyYW1lcyByb3RhdGUtOTAge1xuICBmcm9tIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTsgLy8gU3RhcnRpbmcgYW5nbGVcbiAgfVxuXG4gIHRvIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7IC8vIENvbXBsZXRlIHJvdGF0aW9uXG4gIH1cbn1cblxuLyoqXG4gKiBLZXlmcmFtZSBhbmltYXRpb246IGZ1bGwgMzYwwrAgY2xvY2t3aXNlIHJvdGF0aW9uLlxuICogQ29tbW9ubHkgYXBwbGllZCB0byBpY29ucyBvciBsb2FkZXJzIHRvIGluZGljYXRlIHByb2dyZXNzIG9yIGFjdGl2aXR5LlxuICovXG5Aa2V5ZnJhbWVzIHNwaW4ge1xuICB0byB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgfVxufVxuXG4vKipcbiAqIEBhbmltYXRpb24gc2hha2UgWFxuICogU2ltcGxlIHNoYWtlIGFuaW1hdGlvbiBmb3IgZXJyb3JzXG4gKi9cbkBrZXlmcmFtZXMgc2hha2UteCB7XG4gIDAlLFxuICAxMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgfVxuXG4gIDIwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKCN7Y2FsYygtMSAqIHZhcigtLXNwYWNpbmctMDUwKSl9KTtcbiAgfVxuXG4gIDMwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB9XG5cbiAgNDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgodmFyKC0tc3BhY2luZy0wNTApKTtcbiAgfVxuXG4gIDUwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB9XG5cbiAgNjAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoI3tjYWxjKC0xICogdmFyKC0tc3BhY2luZy0wNTApKX0pO1xuICB9XG5cbiAgNzAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIH1cblxuICA4MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCh2YXIoLS1zcGFjaW5nLTA1MCkpO1xuICB9XG5cbiAgOTAlLFxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIH1cbn1cblxuLyoqXG4gKiBAYW5pbWF0aW9uIHNoYWtlIFlcbiAqIFNpbXBsZSBzaGFrZSBhbmltYXRpb24gZm9yIGVycm9yc1xuICovXG5Aa2V5ZnJhbWVzIHNoYWtlLXkge1xuICAwJSxcbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG5cbiAgMjUlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUlKTtcbiAgfVxuXG4gIDUwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDUlKTtcbiAgfVxuXG4gIDc1JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01JSk7XG4gIH1cbn1cbiIsIi8qKlxuICogQ1NTIFJlc2V0XG4gKiBHcm91cDogR2VuZXJpY1xuICovXG5cbi8qIGh0dHBzOi8vcGljY2FsaWwubGkvYmxvZy9hLW1vcmUtbW9kZXJuLWNzcy1yZXNldC9cbiAgIEJ5IEFuZHkgQmVsbFxuICAgTGljZW5zZTogTUlUIExpY2Vuc2VcbiovXG5cbi8qIEJveCBzaXppbmcgcnVsZXMgKi9cbiosXG4qOjpiZWZvcmUsXG4qOjphZnRlciB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbi8qIFJlbW92ZSBkZWZhdWx0IG1hcmdpbiAqL1xuYm9keSxcbmgxLFxuaDIsXG5oMyxcbmg0LFxucCxcbmZpZ3VyZSxcbmJsb2NrcXVvdGUsXG5kbCxcbmRkIHtcbiAgbWFyZ2luOiAwO1xufVxuXG4vKiBSZW1vdmUgbGlzdCBzdHlsZXMgb24gdWwsIG9sIGVsZW1lbnRzIHdpdGggYSBsaXN0IHJvbGUsIHdoaWNoIHN1Z2dlc3RzIGRlZmF1bHQgc3R5bGluZyB3aWxsIGJlIHJlbW92ZWQgKi9cbnVsW3JvbGU9XCJsaXN0XCJdLFxub2xbcm9sZT1cImxpc3RcIl0ge1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG5odG1sIGJvZHkgKjpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmU7XG59XG5cbmh0bWwgYm9keSAqOmZvY3VzLXZpc2libGUge1xuICBvdXRsaW5lOiAzcHggc29saWQgdmFyKC0tY29sb3ItZm9jdXMtc3Ryb2tlKTtcbiAgb3V0bGluZS1vZmZzZXQ6IDJweDtcbn1cblxuLyogU2V0IGNvcmUgcm9vdCBkZWZhdWx0cyAqL1xuaHRtbDpmb2N1cy13aXRoaW4ge1xuICBzY3JvbGwtYmVoYXZpb3I6IHNtb290aDtcbn1cblxuLyogU2V0IGNvcmUgYm9keSBkZWZhdWx0cyAqL1xuYm9keSB7XG4gIG1pbi1oZWlnaHQ6IDEwMGR2aDtcbiAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplc3BlZWQ7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG59XG5cbi8qIEEgZWxlbWVudHMgdGhhdCBkb24ndCBoYXZlIGEgY2xhc3MgZ2V0IGRlZmF1bHQgc3R5bGVzICovXG5hOm5vdChbY2xhc3NdKSB7XG4gIHRleHQtZGVjb3JhdGlvbi1za2lwLWluazogYXV0bztcbn1cblxuLyogTWFrZSBpbWFnZXMgZWFzaWVyIHRvIHdvcmsgd2l0aCAqL1xuaW1nLFxucGljdHVyZSB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qIEluaGVyaXQgZm9udHMgZm9yIGlucHV0cyBhbmQgYnV0dG9ucyAqL1xuaW5wdXQsXG5idXR0b24sXG50ZXh0YXJlYSxcbnNlbGVjdCB7XG4gIGZvbnQ6IGluaGVyaXQ7XG59XG5cbi8qIFJlbW92ZSBhbGwgYW5pbWF0aW9ucyBhbmQgdHJhbnNpdGlvbnMgZm9yIHBlb3BsZSB0aGF0IHByZWZlciBub3QgdG8gc2VlIHRoZW0gKi9cbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gIGh0bWw6Zm9jdXMtd2l0aGluIHtcbiAgICBzY3JvbGwtYmVoYXZpb3I6IGF1dG87XG4gIH1cblxuICAqLFxuICAqOjpiZWZvcmUsXG4gICo6OmFmdGVyIHtcbiAgICBhbmltYXRpb24tZHVyYXRpb246IDAuMDFtcyAhaW1wb3J0YW50O1xuICAgIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IDEgIWltcG9ydGFudDtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjAxbXMgIWltcG9ydGFudDtcbiAgICBzY3JvbGwtYmVoYXZpb3I6IGF1dG8gIWltcG9ydGFudDtcbiAgfVxufVxuIiwiLyoqXG4gKiBTd2lwZXIgUGFnaW5hdGlvblxuICogR3JvdXA6IEdlbmVyaWNcbiAqL1xuXG4uc3dpcGVyLXBhZ2luYXRpb24ge1xuICAmLWJ1bGxldCB7XG4gICAgJi1hY3RpdmUge1xuICAgICAgd2lkdGg6IGNhbGMoMyAqIHZhcigtLXN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC13aWR0aCkpO1xuICAgIH1cbiAgfVxuXG4gICYtYnVsbGV0cyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG59XG4iLCIvKipcbiAqIE1haW4gRWxlbWVudHMgRmlsZVxuICogR3JvdXA6IEVsZW1lbnRzXG4gKi9cblxuQGZvcndhcmQgXCJhbGxcIjtcbkBmb3J3YXJkIFwiYm9keVwiO1xuQGZvcndhcmQgXCJidXR0b25cIjtcbkBmb3J3YXJkIFwiZmlsdGVyXCI7XG5AZm9yd2FyZCBcImZvcm1cIjtcbkBmb3J3YXJkIFwiaGVhZGluZ3NcIjtcbkBmb3J3YXJkIFwiaHRtbFwiO1xuQGZvcndhcmQgXCJpY29uXCI7XG5AZm9yd2FyZCBcImltYWdlXCI7XG5AZm9yd2FyZCBcImlucHV0XCI7XG5AZm9yd2FyZCBcImxhbmd1YWdlLXNlbGVjdG9yXCI7XG5AZm9yd2FyZCBcImxpbmtcIjtcbkBmb3J3YXJkIFwibGlzdC1pdGVtXCI7XG5AZm9yd2FyZCBcImxpc3RcIjtcbkBmb3J3YXJkIFwibG9nb1wiO1xuQGZvcndhcmQgXCJtYWluXCI7XG5AZm9yd2FyZCBcIm5hdmlnYXRpb25cIjtcbkBmb3J3YXJkIFwicGFnaW5hdGlvblwiO1xuQGZvcndhcmQgXCJzZWFyY2hcIjtcbkBmb3J3YXJkIFwic2VsZWN0XCI7XG5AZm9yd2FyZCBcInNvY2lhbC1saW5rc1wiO1xuQGZvcndhcmQgXCJ0YWJsZVwiO1xuQGZvcndhcmQgXCJ0ZXh0XCI7XG5AZm9yd2FyZCBcInRleHRhcmVhXCI7XG5AZm9yd2FyZCBcInRpdGxlXCI7XG5AZm9yd2FyZCBcInZpZGVvXCI7XG4iLCIvKipcbiAqIEdlbmVyaWNcbiAqIEdyb3VwOiBFbGVtZW50c1xuICovXG5cbi8qKlxuICogTW9yZSBzZW5zaWJsZSBkZWZhdWx0IGJveC1zaXppbmc6XG4gKiBjc3MtdHJpY2tzLmNvbS9pbmhlcml0aW5nLWJveC1zaXppbmctcHJvYmFibHktc2xpZ2h0bHktYmV0dGVyLWJlc3QtcHJhY3RpY2VcbiAqL1xuXG5odG1sIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveCAhaW1wb3J0YW50O1xuICBzY3JvbGwtYmVoYXZpb3I6IHNtb290aDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3cteDogaGlkZGVuICFpbXBvcnRhbnQ7XG59XG5cbioge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94ICFpbXBvcnRhbnQ7XG4gIGZvbnQtdmFyaWFudC1saWdhdHVyZXM6IG5vLWNvbW1vbi1saWdhdHVyZXMgIWltcG9ydGFudDtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50OyAvKiBmb3IgcmVtb3ZpbmcgdGhlIGhpZ2hsaWdodCAqL1xuXG4gICYsXG4gICY6OmJlZm9yZSxcbiAgJjo6YWZ0ZXIge1xuICAgIGJveC1zaXppbmc6IGluaGVyaXQ7XG4gIH1cbn1cbiIsIi8qKlxuICogQm9keVxuICogR3JvdXA6IEVsZW1lbnRzXG4gKi9cblxuQHVzZSBcIi4uLzAyLXRvb2xzL2JyZWFrcG9pbnRzXCIgYXMgKjtcblxuYm9keSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLW5ldXRyYWwtMDAwKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQpO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1wcmltYXJ5KTtcbiAgZm9udC1zaXplOiAxMDAlO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LWxpbmUtaGVpZ2h0KTtcbiAgbWluLWhlaWdodDogMTAwZHZoO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihcInBoYWJsZXRcIikge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBvdmVyZmxvdy14OiBoaWRkZW47XG4gIH1cblxuICAmLmlzLWhpZGRlbixcbiAgJi5pcy1ibG9ja2VkLFxuICAmLmlzLW1vYmlsZS1tZW51LW9wZW4ge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIH1cbn1cbiIsIi8qKlxuICogQnV0dG9uXG4gKiBHcm91cDogRWxlbWVudHNcbiAqL1xuXG5AdXNlIFwiLi4vMDItdG9vbHMvYnV0dG9uc1wiIGFzICo7XG5AdXNlIFwiLi4vMDItdG9vbHMvYnJlYWtwb2ludHNcIiBhcyAqO1xuQHVzZSBcIi4uLzAyLXRvb2xzL2JveC1zaGFkb3dzXCIgYXMgKjtcblxuYnV0dG9uIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblxuICAmOm5vdChbY2xhc3NdKSB7XG4gICAgQGluY2x1ZGUgYnV0dG9uO1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1zdHlsZShcInByaW1hcnlcIik7XG4gIH1cblxuICAmW2Rpc2FibGVkXSB7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIG9wYWNpdHk6IDAuNjtcbiAgfVxuXG4gIC5idXR0b24tdmFyaWF0aW9uLS1wcmltYXJ5LW91dGxpbmUgJiB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLXN0eWxlKFwicHJpbWFyeS1vdXRsaW5lXCIpO1xuICB9XG5cbiAgLmJ1dHRvbi12YXJpYXRpb24tLXNlY29uZGFyeS1vdXRsaW5lICYge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1zdHlsZShcInNlY29uZGFyeS1vdXRsaW5lXCIpO1xuICB9XG5cbiAgLmJ1dHRvbi12YXJpYXRpb24tLWxpZ2h0ICYge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1zdHlsZShcImxpZ2h0XCIpO1xuICB9XG5cbiAgLmJ1dHRvbi12YXJpYXRpb24tLWRhcmsgJiB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLXN0eWxlKFwiZGFya1wiKTtcbiAgfVxufVxuXG4uYnV0dG9uLWljb24ge1xuICAmLS1zdmcge1xuICAgIHdpZHRoOiB2YXIoLS1pY29uLXhzKTtcbiAgICBoZWlnaHQ6IHZhcigtLWljb24teHMpO1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1zcGFjaW5nLTA1MCk7XG4gIH1cbn1cblxuLmJ1dHRvbi1sb2FkLW1vcmUge1xuICBAaW5jbHVkZSBidXR0b247XG4gIEBpbmNsdWRlIGJ1dHRvbi1zaXplKFwibGdcIik7XG4gIEBpbmNsdWRlIGJ1dHRvbi1zdHlsZShcInByaW1hcnlcIik7XG5cbiAgZGlzcGxheTogZmxleDtcbiAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2luZy00MDApO1xuICBtYXJnaW4taW5saW5lOiBhdXRvO1xuXG4gICY6YWN0aXZlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMXB4KTtcbiAgfVxuXG4gIC51LWlzLWxvYWRpbmcge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1saWdodGVyLWdyYXkpO1xuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgei1pbmRleDogMztcbiAgICAgIHdpZHRoOiAxMnB4O1xuICAgICAgaGVpZ2h0OiAxMnB4O1xuICAgICAgbWFyZ2luOiAtMTBweCAwIDAgLTEwcHg7XG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICBhbmltYXRpb246IHNwaW4gdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbi1zbG93KSBsaW5lYXIgaW5maW5pdGU7XG4gICAgICB0ZXh0LWluZGVudDogMDtcbiAgICB9XG4gIH1cbn1cblxuLmJ1dHRvbi1zaGFyZSB7XG4gIEBpbmNsdWRlIGJ1dHRvbjtcbiAgQGluY2x1ZGUgYnV0dG9uLXNpemUoXCJtZFwiKTtcbiAgQGluY2x1ZGUgYnV0dG9uLXN0eWxlKFwicHJpbWFyeVwiKTtcblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKFwidGFibGV0XCIpIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5idXR0b24tZWRpdC1pdGVtIHtcbiAgbWF4LWhlaWdodDogdmFyKC0taWNvbi1teHMpO1xuICB3aWR0aDogdmFyKC0taWNvbi1teHMpO1xuICBoZWlnaHQ6IGF1dG87XG4gIGNvbG9yOiBpbmhlcml0O1xuXG4gICZfX2xpbmsge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ncmF5KTtcblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG4gICAgfVxuICB9XG5cbiAgJi0td3JhcHBlciB7XG4gICAgbWFyZ2luLWJsb2NrOiB2YXIoLS1zcGFjaW5nLTA1MCkgMDtcbiAgfVxuXG4gICYtLXdyYXBwZXItYWJzIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIG1hcmdpbjogdmFyKC0tc3BhY2luZy0wMjUpO1xuICB9XG59XG5cbi5iYWNrLXRvLXRvcCB7XG4gIEBpbmNsdWRlIGJ1dHRvbjtcbiAgQGluY2x1ZGUgYnV0dG9uLXNpemUoXCJ4c1wiKTtcbiAgQGluY2x1ZGUgYnV0dG9uLXN0eWxlKFwicHJpbWFyeVwiKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdyhcIjAzXCIsIFwibGlnaHRcIik7XG5cbiAgcG9zaXRpb246IGZpeGVkO1xuICBib3R0b206IHZhcigtLXNwYWNpbmctMTAwKTtcbiAgcmlnaHQ6IHZhcigtLXNwYWNpbmctODAwKTtcbiAgcGFkZGluZy1ibG9jazogdmFyKC0tc3BhY2luZy0wNzUpO1xuICBwYWRkaW5nLWlubGluZTogdmFyKC0tc3BhY2luZy0xMDApO1xuICBhc3BlY3QtcmF0aW86IDE7XG4gIHBsYWNlLXNlbGY6IGVuZDtcbiAgei1pbmRleDogMTAwMDtcbiAgb3BhY2l0eTogMDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAlKTtcbiAgdHJhbnNpdGlvbjpcbiAgICBvcGFjaXR5IHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0LFxuICAgIHRyYW5zZm9ybSB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dDtcblxuICAmX19pY29uIHtcbiAgICB3aWR0aDogdmFyKC0taWNvbi14cyk7XG4gICAgaGVpZ2h0OiB2YXIoLS1pY29uLXhzKTtcbiAgfVxuXG4gICYuaXMtdmlzaWJsZSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIH1cbn1cbiIsIi8qKlxuICogRmlsdGVyXG4gKiBHcm91cDogRWxlbWVudHNcbiAqL1xuXG5AdXNlIFwiLi4vMDItdG9vbHMvYnV0dG9uc1wiIGFzICo7XG5AdXNlIFwiLi4vMDItdG9vbHMvYnJlYWtwb2ludHNcIiBhcyAqO1xuQHVzZSBcIi4uLzAyLXRvb2xzL3R5cG9ncmFwaHlcIiBhcyAqO1xuQHVzZSBcIi4uLzAyLXRvb2xzL2lucHV0XCIgYXMgKjtcbkB1c2UgXCIuLi8wMi10b29scy9wbGFjZWhvbGRlclwiIGFzICo7XG5cbi5maWx0ZXIge1xuICAkdGhpczogJjtcblxuICB3aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtbGlnaHQtZ3JheSk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcbiAgQGluY2x1ZGUgaW5wdXQtZGVmYXVsdDtcblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKFwidGFibGV0XCIpIHtcbiAgICBtYXgtd2lkdGg6IHZhcigtLW1heC13aWR0aC0tNXhzKTtcbiAgfVxuXG4gICYtaW5wdXQtdGV4dCB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xuICB9XG5cbiAgJi1kYXRlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy1ibG9jazogdmFyKC0tc3BhY2luZy0wNTApO1xuXG4gICAgJl9fcGxhY2Vob2xkZXIge1xuICAgICAgQGluY2x1ZGUgaW5wdXQtZGVmYXVsdChcImZpbHRlclwiKTtcblxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgaW5zZXQ6IDA7XG4gICAgICB0cmFuc2l0aW9uOlxuICAgICAgICB0cmFuc2Zvcm0gdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQsXG4gICAgICAgIG9wYWNpdHkgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQ7XG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB9XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMtd2l0aGluLFxuICAgICYuaXMtZmlsbGVkIHtcbiAgICAgICN7JHRoaXN9LWRhdGVfX3BsYWNlaG9sZGVyIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLWJ1dHRvbnMtYXMtcmFkaW8ge1xuICAgIEBpbmNsdWRlIGlucHV0LWRlZmF1bHQ7XG5cbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIG1heC13aWR0aDogdmFyKC0tbWF4LXdpZHRoLS1zbSk7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoXCJ0YWJsZXRcIikge1xuICAgICAgZmxleC1mbG93OiByb3cgbm93cmFwO1xuICAgICAgd2lkdGg6IGZpdC1jb250ZW50O1xuICAgIH1cblxuICAgICZfX2l0ZW0ge1xuICAgICAgQGluY2x1ZGUgYnV0dG9uO1xuICAgICAgQGluY2x1ZGUgYnV0dG9uLXNpemUoXCJmaWx0ZXJcIik7XG4gICAgICBAaW5jbHVkZSBidXR0b24tc3R5bGUoXCJmaWx0ZXJcIik7XG5cbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgcGFkZGluZzogdmFyKC0tc3BhY2luZy0wNTApO1xuICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgIGhlaWdodDogdmFyKC0tc3BhY2luZy0zMDApO1xuXG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKFwidGFibGV0XCIpIHtcbiAgICAgICAgd2lkdGg6IHZhcigtLW1heC13aWR0aC0tNXhzKTtcbiAgICAgIH1cblxuICAgICAgJjpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1icmFuZC1vcmFuZ2UpO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoXCJ0YWJsZXRcIikge1xuICAgICAgICAgIGJvcmRlci10b3A6IG5vbmU7XG4gICAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1icmFuZC1vcmFuZ2UpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi1kcm9wZG93biB7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuXG4gICZfX3N1Ym1pdC1idXR0b24ge1xuICAgIEBpbmNsdWRlIGJ1dHRvbjtcbiAgICBAaW5jbHVkZSBidXR0b24tc2l6ZShcImZpbHRlclwiKTtcbiAgICBAaW5jbHVkZSBidXR0b24tc3R5bGUoXCJwcmltYXJ5XCIpO1xuXG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LW1lZGl1bSk7XG4gICAgbWF4LXdpZHRoOiB2YXIoLS1tYXgtd2lkdGgtLTV4cyk7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAmX19yZXNldC1idXR0b24ge1xuICAgIEBpbmNsdWRlIGJ1dHRvbjtcbiAgICBAaW5jbHVkZSBidXR0b24tc2l6ZShcInNtXCIpO1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1zdHlsZShcInNlY29uZGFyeVwiKTtcblxuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1tZWRpdW0pO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgbWFyZ2luOiB2YXIoLS1zcGFjaW5nLTEwMCk7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICZfX3RleHQge1xuICAgICAgZm9udC1zaXplOiB2YXIoLS1ib2R5LWV4dHJhLXNtYWxsLWZvbnQtc2l6ZSk7XG4gICAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXNwYWNpbmctMDI1KTtcbiAgICAgIHRyYW5zaXRpb246XG4gICAgICAgIHRyYW5zZm9ybSB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dCxcbiAgICAgICAgb3BhY2l0eSB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dDtcblxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChcImRlc2t0b3AtbWVkaXVtXCIpIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgfVxuICAgIH1cblxuICAgICZfX2ljb24ge1xuICAgICAgd2lkdGg6IHZhcigtLWljb24tbXMpO1xuICAgICAgaGVpZ2h0OiB2YXIoLS1pY29uLW1zKTtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoXCJkZXNrdG9wLW1lZGl1bVwiKSB7XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgI3skdGhpc31fX3Jlc2V0LWJ1dHRvbl9fdGV4dCB7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLWVycm9yIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgYW5pbWF0aW9uOiBib3VuY2UyIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24tdmVyeS1zbG93KSBlYXNlIGluZmluaXRlO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1kYXJrLXJlZCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtcmVkLXNlbWktdHJhbnNwYXJlbnQpO1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIDJweCB2YXIoLS1jb2xvci1icmFuZC1kYXJrLXJlZCk7XG5cbiAgICBAaW5jbHVkZSBwbGFjZWhvbGRlciB7XG4gICAgICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtZGFyay1yZWQpO1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiKlwiO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIG1hcmdpbjogdmFyKC0tc3BhY2luZy0wMjUpIHZhcigtLXNwYWNpbmctMDUwKTtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWRhcmstcmVkKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8qKlxuICogRm9ybVxuICogR3JvdXA6IEVsZW1lbnRzXG4gKi9cbkB1c2UgXCIuLi8wMi10b29scy9icmVha3BvaW50c1wiIGFzICo7XG5AdXNlIFwiLi4vMDItdG9vbHMvdHlwb2dyYXBoeVwiIGFzICo7XG5AdXNlIFwiLi4vMDItdG9vbHMvYnV0dG9uc1wiIGFzICo7XG5cbmZvcm0ge1xuICAmW3JvbGU9XCJzZWFyY2hcIl0ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gIH1cbn1cbiIsIi8qKlxuICogSGVhZGluZ3NcbiAqIEdyb3VwOiBFbGVtZW50c1xuICovXG5cbmgxLFxuaDIsXG5oMyxcbmg0LFxuaDUsXG5oNiB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LXByaW1hcnkpO1xuXG4gIHAsXG4gIGEsXG4gIHNwYW4ge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIGRpc3BsYXk6IGluaGVyaXQ7XG4gICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxufVxuXG5oMSB7XG4gIGZvbnQtc2l6ZTogdmFyKC0taDEtZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWgxLWZvbnQtd2VpZ2h0KTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWgxLWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWgxLWxpbmUtaGVpZ2h0KTtcbn1cblxuaDIge1xuICBmb250LXNpemU6IHZhcigtLWgyLWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1oMi1mb250LXdlaWdodCk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1oMi1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1oMi1saW5lLWhlaWdodCk7XG59XG5cbmgzIHtcbiAgZm9udC1zaXplOiB2YXIoLS1oMy1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogdmFyKC0taDMtZm9udC13ZWlnaHQpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0taDMtbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0taDMtbGluZS1oZWlnaHQpO1xufVxuXG5oNCB7XG4gIGZvbnQtc2l6ZTogdmFyKC0taDQtZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWg0LWZvbnQtd2VpZ2h0KTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWg0LWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWg0LWxpbmUtaGVpZ2h0KTtcbn1cblxuaDUge1xuICBmb250LXNpemU6IHZhcigtLWg1LWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1oNS1mb250LXdlaWdodCk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1oNS1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1oNS1saW5lLWhlaWdodCk7XG59XG5cbmg2IHtcbiAgZm9udC1zaXplOiB2YXIoLS1oNi1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogdmFyKC0taDYtZm9udC13ZWlnaHQpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0taDYtbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0taDYtbGluZS1oZWlnaHQpO1xufVxuIiwiLyoqXG4gKiBIVE1MXG4gKiBHcm91cDogRWxlbWVudHNcbiAqL1xuXG5odG1sIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cbiIsIi8qKlxuICogSWNvblxuICogR3JvdXA6IEVsZW1lbnRzXG4gKi9cblxuQHVzZSBcIi4uLzAyLXRvb2xzL3R5cG9ncmFwaHlcIiBhcyAqO1xuXG4uaWNvbi1hcnRpY2xlLWRvd25sb2FkIHtcbiAgd2lkdGg6IHZhcigtLWljb24tbXMpO1xuICBtYXgtaGVpZ2h0OiB2YXIoLS1pY29uLW1zKTtcbiAgaGVpZ2h0OiBhdXRvO1xuXG4gICYtLXdyYXBwZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctMTUwKSB2YXIoLS1zcGFjaW5nLTIwMCk7XG4gICAgYm9yZGVyLXRvcDogMnB4IHNvbGlkIHZhcigtLWNvbG9yLWJyYW5kLWRhcmstZ3JheSk7XG4gICAgdGV4dC1hbGlnbjogZW5kO1xuICB9XG5cbiAgJl9fbGluayB7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBnYXA6IHZhcigtLXNwYWNpbmctMTAwKTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWRhcmstZ3JheSk7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1vcmFuZ2UpO1xuICAgIH1cbiAgfVxuXG4gICZfX3RleHQge1xuICAgIEBpbmNsdWRlIHRleHQoXCJzbVwiLCBcIm1lZGl1bVwiKTtcbiAgfVxufVxuIiwiLyoqXG4gKiBJbWFnZVxuICogR3JvdXA6IEVsZW1lbnRzXG4gKi9cblxuaW1nIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgZmxleC1zaHJpbms6IDE7XG4gIGhlaWdodDogYXV0bztcbn1cbiIsIi8qKlxuICogSW5wdXRcbiAqIEdyb3VwOiBFbGVtZW50c1xuICovXG5cbkB1c2UgXCIuLi8wMi10b29scy9idXR0b25zXCIgYXMgKjtcbkB1c2UgXCIuLi8wMi10b29scy9pbnB1dFwiIGFzICo7XG5cbmlucHV0IHtcbiAgJjpub3QoW3R5cGU9XCJjaGVja2JveFwiXSwgW3R5cGU9XCJyYWRpb1wiXSkge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuICB9XG5cbiAgJlt0eXBlPVwiYnV0dG9uXCJdLFxuICAmW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgIEBpbmNsdWRlIGJ1dHRvbjtcbiAgICBAaW5jbHVkZSBidXR0b24tc3R5bGUoXCJwcmltYXJ5XCIpO1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1zaXplKFwibWRcIik7XG5cbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cblxuICAmW3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy0zeHMpO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBoZWlnaHQ6IHZhcigtLWNoZWNrYm94LXNpemUpO1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgd2lkdGg6IHZhcigtLWNoZWNrYm94LXNpemUpO1xuICB9XG5cbiAgJlt0eXBlPVwicmFkaW9cIl0ge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBoZWlnaHQ6IHZhcigtLWNoZWNrYm94LXNpemUpO1xuICAgIHdpZHRoOiB2YXIoLS1jaGVja2JveC1zaXplKTtcbiAgfVxuXG4gICY6bm90KFt0eXBlPVwic3VibWl0XCJdLCBbdHlwZT1cImJ1dHRvblwiXSwgW3R5cGU9XCJjaGVja2JveFwiXSwgW3R5cGU9XCJyYWRpb1wiXSkge1xuICAgIEBpbmNsdWRlIGlucHV0LWRlZmF1bHQoXCJyZXNldFwiKTtcbiAgfVxufVxuIiwiLyoqXG4gKiBMYW5ndWFnZSBTZWxlY3RvclxuICogR3JvdXA6IEVsZW1lbnRzXG4gKi9cblxuQHVzZSBcIi4uLzAyLXRvb2xzL3R5cG9ncmFwaHlcIiBhcyAqO1xuQHVzZSBcIi4uLzAyLXRvb2xzL2JyZWFrcG9pbnRzXCIgYXMgKjtcblxuLmxhbmd1YWdlLXNlbGVjdG9yIHtcbiAgJHRoaXM6ICY7XG5cbiAgQGluY2x1ZGUgdGV4dChcImxnXCIsIFwic2VtaWJvbGRcIik7XG5cbiAgZGlzcGxheTogYmxvY2s7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgbWFyZ2luLWxlZnQ6IHZhcigtLXNwYWNpbmctMTUwKTtcblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKFwiZGVza3RvcC1tZWRpdW1cIikge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1zcGFjaW5nLTE1MCk7XG4gIH1cbn1cbiIsIi8qKlxuICogTGluayAvIEFuY2hvclxuICogR3JvdXA6IEVsZW1lbnRzXG4gKi9cblxuYSB7XG4gIGNvbG9yOiBpbmhlcml0O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRleHQtZGVjb3JhdGlvbi10aGlja25lc3M6IDJweDtcbiAgdGV4dC11bmRlcmxpbmUtb2Zmc2V0OiB2YXIoLS1zcGFjaW5nLTAyNSk7XG5cbiAgJltkaXNhYmxlZF0ge1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICBvcGFjaXR5OiAwLjY7XG4gIH1cbn1cbiIsIi8qKlxuICogTGlzdCBJdGVtXG4gKiBHcm91cDogRWxlbWVudHNcbiAqL1xuXG5AdXNlIFwiLi4vMDItdG9vbHMvdHlwb2dyYXBoeVwiIGFzICo7XG5AdXNlIFwiLi4vMDItdG9vbHMvYnJlYWtwb2ludHNcIiBhcyAqO1xuXG4ubGlzdC1pdGVtIHtcbiAgJHRoaXM6ICY7XG5cbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICYtYXJ0aWNsZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiByb3cgbm93cmFwO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1jb2xvci1icmFuZC1kYXJrLWdyYXkpO1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctMjAwKTtcblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cy13aXRoaW4ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtbGlnaHQtZ3JheSk7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1vcmFuZ2UpO1xuICAgIH1cblxuICAgICZfX2ltYWdlIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG5cbiAgICAgICYtLXdyYXBwZXIge1xuICAgICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICAgICAgd2lkdGg6IHZhcigtLXNwYWNpbmctMTIwMCk7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgZGlzcGxheTogbm9uZTtcblxuICAgICAgICBwaWN0dXJlIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKFwidGFibGV0XCIpIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICZfX2NvbnRlbnQge1xuICAgICAgZmxleDogMTtcbiAgICAgIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctMjAwKSB2YXIoLS1zcGFjaW5nLTE1MCk7XG4gICAgfVxuXG4gICAgJl9fdGl0bGUge1xuICAgICAgQGluY2x1ZGUgaGVhZGluZyhcImgzXCIpO1xuXG4gICAgICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtZGFyay1ncmF5KTtcblxuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMtd2l0aGluIHtcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xuICAgICAgfVxuICAgIH1cblxuICAgICZfX2RhdGUge1xuICAgICAgQGluY2x1ZGUgdGV4dChcInNtXCIsIFwibWVkaXVtXCIpO1xuXG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcbiAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctMTUwKTtcbiAgICB9XG5cbiAgICAmX19kZXNjcmlwdGlvbiB7XG4gICAgICBAaW5jbHVkZSB0ZXh0KFwibWRcIik7XG5cbiAgICAgIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmctMTUwKTtcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ncmF5KTtcbiAgICB9XG4gIH1cblxuICAmLWxpbmsge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLWJsb2NrOiB2YXIoLS1zcGFjaW5nLTIwMCkgdmFyKC0tc3BhY2luZy0xNTApO1xuICAgIHBhZGRpbmctaW5saW5lOiB2YXIoLS1zcGFjaW5nLTE1MCk7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWRhcmspO1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzLXdpdGhpbiB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1saWdodGVyLWdyYXkpO1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtb3JhbmdlKTtcbiAgICB9XG5cbiAgICAmX190aXRsZSB7XG4gICAgICBAaW5jbHVkZSBoZWFkaW5nKFwiaDNcIik7XG5cbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1kYXJrLWdyYXkpO1xuICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy0wNzUpO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG4gICAgICB9XG5cbiAgICAgIGgyLFxuICAgICAgaDMsXG4gICAgICBoNCxcbiAgICAgIGg1LFxuICAgICAgaDYge1xuICAgICAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogaW5oZXJpdDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJl9faW5mbyB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGdhcDogdmFyKC0tc3BhY2luZy0wNTApO1xuICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWdyYXkpO1xuICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy0xMDApO1xuXG4gICAgICAmLWljb24ge1xuICAgICAgICBtYXgtaGVpZ2h0OiB2YXIoLS1pY29uLW14cyk7XG4gICAgICAgIHdpZHRoOiB2YXIoLS1pY29uLW14cyk7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICB9XG5cbiAgICAgICYtdGV4dCB7XG4gICAgICAgIEBpbmNsdWRlIHRleHQoXCJtZFwiKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmX19pY29uIHtcbiAgICAgIG1heC1oZWlnaHQ6IHZhcigtLWljb24tbXMpO1xuICAgICAgd2lkdGg6IHZhcigtLWljb24tbXMpO1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgfVxuICB9XG5cbiAgJi1mYXEge1xuICAgIEBpbmNsdWRlIHRleHQoXCJtZFwiKTtcblxuICAgIHBhZGRpbmctYmxvY2s6IHZhcigtLXNwYWNpbmctMjUwKSB2YXIoLS1zcGFjaW5nLTE1MCk7XG4gICAgcGFkZGluZy1pbmxpbmU6IHZhcigtLXNwYWNpbmctMjUwKTtcbiAgICBib3gtc2hhZG93OiB2YXIoLS1ib3gtc2hhZG93LWFjY29yZGlvbik7XG4gICAgYm9yZGVyOiAycHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgbWF4LXdpZHRoOiB2YXIoLS1tYXgtd2lkdGgtLXNtKTtcbiAgICBtYXJnaW4taW5saW5lOiBhdXRvO1xuICAgIG1hcmdpbi1ibG9jazogdmFyKC0tc3BhY2luZy0wNzUpO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ncmF5KTtcblxuICAgICZbb3Blbl0ge1xuICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcblxuICAgICAgPiAqOm5vdChzdW1tYXJ5KSB7XG4gICAgICAgIGFuaW1hdGlvbjogZmFkZS1pbiB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluIGZvcndhcmRzO1xuICAgICAgfVxuXG4gICAgICAjeyR0aGlzfS1mYXFfX2ljb24ge1xuICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItbGlnaHQpO1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG5cbiAgICAgICAgJi0td3JhcHBlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLS13cmFwcGVyIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB9XG5cbiAgICAmX190aXRsZSB7XG4gICAgICBAaW5jbHVkZSBoZWFkaW5nKFwiaDRcIik7XG5cbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgZ2FwOiB2YXIoLS1zcGFjaW5nLTA1MCk7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWRhcmstZ3JheSk7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLTEwMCk7XG5cbiAgICAgICY6Oi13ZWJraXQtZGV0YWlscy1tYXJrZXIge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xuICAgICAgfVxuICAgIH1cblxuICAgICZfX2ljb24ge1xuICAgICAgbWF4LWhlaWdodDogdmFyKC0taWNvbi14cyk7XG4gICAgICB3aWR0aDogdmFyKC0taWNvbi14cyk7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG4gICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQ7XG5cbiAgICAgICYtLXdyYXBwZXIge1xuICAgICAgICB3aWR0aDogdmFyKC0tc3BhY2luZy0zMDApO1xuICAgICAgICBoZWlnaHQ6IHZhcigtLXNwYWNpbmctMzAwKTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1mdWxsKTtcbiAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgIHBsYWNlLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQ7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG5cbiAgICAgICAgICAjeyR0aGlzfS1mYXFfX2ljb24ge1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0KTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmX19jYXRlZ29yeSB7XG4gICAgICBAaW5jbHVkZSB0ZXh0KFwic21cIiwgXCJib2xkXCIpO1xuXG4gICAgICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtZGFyay1ncmF5KTtcbiAgICAgIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmctMTUwKTtcbiAgICB9XG4gIH1cblxuICAmLXJlZ3VsYXRpb24ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogcm93IG5vd3JhcDtcblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cy13aXRoaW4ge1xuICAgICAgI3skdGhpc30tcmVndWxhdGlvbl9fY29udGVudCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWxpZ2h0LWdyYXkpO1xuICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1vcmFuZ2UpO1xuICAgICAgfVxuICAgIH1cblxuICAgICZfX2NvbnRlbnQge1xuICAgICAgZmxleDogMTtcbiAgICAgIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctMjAwKSB2YXIoLS1zcGFjaW5nLTE1MCk7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tY29sb3ItYnJhbmQtZGFyay1ncmF5KTtcbiAgICB9XG5cbiAgICAmX190aXRsZSB7XG4gICAgICBAaW5jbHVkZSBoZWFkaW5nKFwiaDNcIik7XG5cbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1kYXJrLWdyYXkpO1xuXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cy13aXRoaW4ge1xuICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJl9fZGF0ZSB7XG4gICAgICBAaW5jbHVkZSB0ZXh0KFwic21cIiwgXCJtZWRpdW1cIik7XG5cbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xuICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy0xNTApO1xuICAgIH1cbiAgfVxuXG4gICYtc2VhcmNoLXJlc3VsdCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgICN7JHRoaXN9LXNlYXJjaC1yZXN1bHRfX2NvbnRlbnQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1saWdodC1ncmF5KTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtb3JhbmdlKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmX19jb250ZW50IHtcbiAgICAgIGZsZXg6IDE7XG4gICAgICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLTIwMCkgdmFyKC0tc3BhY2luZy0xNTApO1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJyYW5kLWRhcmstZ3JheSk7XG4gICAgfVxuXG4gICAgJl9fdGl0bGUge1xuICAgICAgQGluY2x1ZGUgaGVhZGluZyhcImgzXCIpO1xuXG4gICAgICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtZGFyay1ncmF5KTtcbiAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctMDUwKTtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmX19jYXRlZ29yeSB7XG4gICAgICBAaW5jbHVkZSB0ZXh0KFwic21cIiwgXCJtZWRpdW1cIik7XG5cbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xuICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy0xNTApO1xuICAgIH1cbiAgfVxufVxuIiwiLyoqXG4gKiBMaXN0XG4gKiBHcm91cDogRWxlbWVudHNcbiAqL1xuXG5AdXNlIFwiLi4vMDItdG9vbHMvYTExeVwiIGFzICo7XG5cbm9sLFxudWwge1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIEBpbmNsdWRlIGxpc3Qtc3R5bGUtbm9uZTtcblxuICBsaSB7XG4gICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xuICAgIGxldHRlci1zcGFjaW5nOiBpbmhlcml0O1xuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuXG4gICAgJjo6bWFya2VyIHtcbiAgICAgIGNvbG9yOiBjdXJyZW50Y29sb3I7XG4gICAgfVxuICB9XG5cbiAgLyogV2hlbiBVTCBkb2Vzbid0IGhhdmUgYW55IGNsYXNzICovXG4gIC5vLW1haW4gJjpub3QoW2NsYXNzXSkge1xuICAgIHBhZGRpbmctbGVmdDogMS41ZW07XG5cbiAgICBsaSB7XG4gICAgICBtYXJnaW46IHZhcigtLXNwYWNlLXNtKSAwO1xuICAgIH1cbiAgfVxufVxuXG5vbCB7XG4gIC8qIFdoZW4gT0wgZG9lc24ndCBoYXZlIGFueSBjbGFzcyAqL1xuICAuby1tYWluICY6bm90KFtjbGFzc10pIHtcbiAgICBsaXN0LXN0eWxlOiBhdXRvO1xuICB9XG59XG5cbnVsIHtcbiAgLyogV2hlbiBVTCBkb2Vzbid0IGhhdmUgYW55IGNsYXNzICovXG4gIC5vLW1haW4gJjpub3QoW2NsYXNzXSkge1xuICAgIGxpc3Qtc3R5bGU6IGRpc2Mgb3V0c2lkZTtcbiAgfVxufVxuIiwiLyoqXG4gKiBMb2dvXG4gKiBHcm91cDogRWxlbWVudHNcbiAqL1xuXG5AdXNlIFwiLi4vMDItdG9vbHMvYnJlYWtwb2ludHNcIiBhcyAqO1xuXG4ubG9nbyB7XG4gICYtaGVhZGVyIHtcbiAgICBtYXgtd2lkdGg6IDUuNXJlbTtcbiAgICBtYXgtaGVpZ2h0OiA1cmVtO1xuXG4gICAgaW1nIHtcbiAgICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG4gICAgfVxuICB9XG5cbiAgJi1mb290ZXIge1xuICAgIG1heC13aWR0aDogOXJlbTtcbiAgICBtYXgtaGVpZ2h0OiA5cmVtO1xuXG4gICAgaW1nIHtcbiAgICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG4gICAgfVxuICB9XG59XG4iLCIvKipcbiAqIE1haW5cbiAqIEdyb3VwOiBFbGVtZW50c1xuICovXG5cbm1haW4ge1xuICBmbGV4OiAxO1xufVxuIiwiLyoqXG4gKiBOYXZcbiAqIEdyb3VwOiBFbGVtZW50c1xuICovXG5cbkB1c2UgXCIuLi8wMi10b29scy90eXBvZ3JhcGh5XCIgYXMgKjtcbkB1c2UgXCIuLi8wMi10b29scy9hMTF5XCIgYXMgKjtcbkB1c2UgXCIuLi8wMi10b29scy9idXR0b25zXCIgYXMgKjtcbkB1c2UgXCIuLi8wMi10b29scy9icmVha3BvaW50c1wiIGFzICo7XG5AdXNlIFwiLi4vMDItdG9vbHMvYm94LXNoYWRvd3NcIiBhcyAqO1xuXG4ubWVudSB7XG4gICR0aGlzOiAmO1xuICAkYnJlYWtwb2ludC10by1kZXNrdG9wOiBcImRlc2t0b3Atc21hbGxcIjtcblxuICBsaXN0LXN0eWxlOiBub25lO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQtdG8tZGVza3RvcCkge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgZ2FwOiB2YXIoLS1zcGFjaW5nLTA1MCk7XG4gIH1cblxuICAmLWl0ZW0ge1xuICAgIEBpbmNsdWRlIHRleHQoXCJtZFwiLCBcInNlbWlib2xkXCIpO1xuXG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0KTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm9yZGVyLWxlZnQ6IDNweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBwYWRkaW5nLWlubGluZTogdmFyKC0tc3BhY2luZy0xMDApO1xuICAgIHBhZGRpbmctYmxvY2s6IHZhcigtLXNwYWNpbmctMDUwKTtcblxuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItbGlnaHQpO1xuICAgICAgYm9yZGVyLWxlZnQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLW9yYW5nZSk7XG4gICAgfVxuXG4gICAgJi0td3JhcHBlciB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgfVxuXG4gICAgJi0tY3RhIHtcbiAgICAgIEBpbmNsdWRlIGJ1dHRvbjtcbiAgICAgIEBpbmNsdWRlIGJ1dHRvbi1zdHlsZShcInByaW1hcnlcIik7XG5cbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgaGVpZ2h0OiB2YXIoLS1zcGFjaW5nLTIwMCk7XG4gICAgICBib3JkZXItd2lkdGg6IHZhcigtLWJ1dHRvbi1ib3JkZXItd2lkdGgpO1xuICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDEuMjVyZW07XG4gICAgICBwYWRkaW5nLWlubGluZTogdmFyKC0tc3BhY2luZy0yMDApO1xuICAgIH1cblxuICAgICYtLWJ1dHRvbiB7XG4gICAgICBAaW5jbHVkZSBidXR0b24tcmVzZXQ7XG5cbiAgICAgIGJvcmRlci1sZWZ0OiAzcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgZ2FwOiB2YXIoLS1zcGFjaW5nLTAyNSk7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50LXRvLWRlc2t0b3ApIHtcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWRhcmstZ3JheSk7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWRhcmstZ3JheSk7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmX19pY29uIHtcbiAgICAgIHdpZHRoOiB2YXIoLS1pY29uLWRlZmF1bHQpO1xuICAgICAgaGVpZ2h0OiB2YXIoLS1pY29uLWRlZmF1bHQpO1xuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0O1xuICAgIH1cblxuICAgICZbYXJpYS1leHBhbmRlZD1cInRydWVcIl0ge1xuICAgICAgI3skdGhpc30taXRlbV9faWNvbiB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi1zdWIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUtZGFyayk7XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50LXRvLWRlc2t0b3ApIHtcbiAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coXCIwNFwiLCBcImxpZ2h0XCIpO1xuXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDEwMCU7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgd2lkdGg6IHZhcigtLXNwYWNpbmctMjQwMCk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcblxuICAgICAgJiA+ICo6bGFzdC1jaGlsZCA+ICN7JHRoaXN9LWl0ZW0ge1xuICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgICAgfVxuICAgIH1cblxuICAgICN7JHRoaXN9LWl0ZW0ge1xuICAgICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1zcGFjaW5nLTI1MCk7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tY29sb3ItbGlnaHQpO1xuICAgIH1cblxuICAgICZbZGF0YS1leHBhbmRlZD1cImZhbHNlXCJdIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgJltkYXRhLWV4cGFuZGVkPVwidHJ1ZVwiXSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGFuaW1hdGlvbjogZmFkZS1pbiB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dCBmb3J3YXJkcztcbiAgICB9XG4gIH1cblxuICAmID4gKjpub3QoOmxhc3QtY2hpbGQpID4gLm1lbnUtaXRlbSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWxpZ2h0KTtcblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQtdG8tZGVza3RvcCkge1xuICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICB9XG4gIH1cbn1cbiIsIi8qKlxuICogUGFnaW5hdGlvblxuICogR3JvdXA6IEVsZW1lbnRzXG4gKi9cblxuQHVzZSBcIi4uLzAyLXRvb2xzL2J1dHRvbnNcIiBhcyAqO1xuQHVzZSBcIi4uLzAyLXRvb2xzL2JyZWFrcG9pbnRzXCIgYXMgKjtcblxuLnBhZ2luYXRpb24ge1xuICAkdGhpczogJjtcblxuICBoZWlnaHQ6IHZhcigtLXBhZ2luYXRpb24taGVpZ2h0KTtcbiAgbWFyZ2luLWlubGluZTogYXV0bztcbiAgbWFyZ2luLWJsb2NrOiB2YXIoLS1zcGFjaW5nLTMwMCk7XG4gIG1heC13aWR0aDogdmFyKC0tc3BhY2luZy00MDAwKTtcblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKFwiZGVza3RvcC1tZWRpdW1cIikge1xuICAgIG1hcmdpbi1ibG9jazogdmFyKC0tc3BhY2luZy02MDApO1xuICB9XG5cbiAgJl9fbGlzdCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIGdhcDogdmFyKC0tc3BhY2luZy0wNTApO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChcIm1vYmlsZS1sYXJnZVwiKSB7XG4gICAgICBnYXA6IHZhcigtLXNwYWNpbmctMTAwKTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKFwidGFibGV0XCIpIHtcbiAgICAgIGdhcDogdmFyKC0tc3BhY2luZy0yMDApO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoXCJkZXNrdG9wLXNtYWxsXCIpIHtcbiAgICAgIGdhcDogdmFyKC0tc3BhY2luZy0zMDApO1xuICAgIH1cbiAgfVxuXG4gICZfX2l0ZW0ge1xuICAgIEBpbmNsdWRlIGJ1dHRvbjtcbiAgICBAaW5jbHVkZSBidXR0b24tc2l6ZShcInhzXCIpO1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1zdHlsZShcInNlY29uZGFyeS1saWdodFwiKTtcblxuICAgIHdpZHRoOiB2YXIoLS1zcGFjaW5nLTIwMCk7XG4gICAgaGVpZ2h0OiB2YXIoLS1zcGFjaW5nLTIwMCk7XG4gICAgcGFkZGluZzogMDtcblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoXCJwaGFibGV0XCIpIHtcbiAgICAgIHdpZHRoOiB2YXIoLS1zcGFjaW5nLTMwMCk7XG4gICAgICBoZWlnaHQ6IHZhcigtLXNwYWNpbmctMzAwKTtcbiAgICB9XG4gIH1cblxuICAmX19uYXZpZ2F0aW9uLWJ1dHRvbiB7XG4gICAgQGluY2x1ZGUgYnV0dG9uO1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1zaXplKFwieHNcIik7XG4gICAgQGluY2x1ZGUgYnV0dG9uLXN0eWxlKFwic2Vjb25kYXJ5LWxpZ2h0XCIpO1xuXG4gICAgd2lkdGg6IHZhcigtLXNwYWNpbmctMjAwKTtcbiAgICBoZWlnaHQ6IHZhcigtLXNwYWNpbmctMjAwKTtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChcInBoYWJsZXRcIikge1xuICAgICAgd2lkdGg6IHZhcigtLXNwYWNpbmctMzAwKTtcbiAgICAgIGhlaWdodDogdmFyKC0tc3BhY2luZy0zMDApO1xuICAgIH1cblxuICAgICZbYXJpYS1kaXNhYmxlZD1cInRydWVcIl0ge1xuICAgICAgb3BhY2l0eTogMC41O1xuICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIH1cbiAgfVxuXG4gICZfX25hdi1pY29uIHtcbiAgICB3aWR0aDogdmFyKC0taWNvbi14eHMpO1xuICAgIGhlaWdodDogdmFyKC0taWNvbi14cyk7XG4gIH1cbn1cbiIsIi8qKlxuICogSW5wdXRcbiAqIEdyb3VwOiBFbGVtZW50c1xuICovXG5cbkB1c2UgXCIuLi8wMi10b29scy9icmVha3BvaW50c1wiIGFzICo7XG5AdXNlIFwiLi4vMDItdG9vbHMvYnV0dG9uc1wiIGFzICo7XG5AdXNlIFwiLi4vMDItdG9vbHMvaW5wdXRcIiBhcyAqO1xuQHVzZSBcIi4uLzAyLXRvb2xzL3BsYWNlaG9sZGVyXCIgYXMgKjtcblxuLnNlYXJjaCB7XG4gICR0aGlzOiAmO1xuXG4gIEBpbmNsdWRlIGlucHV0LWRlZmF1bHQoXCJzZWFyY2hcIik7XG5cbiAgcGFkZGluZy1yaWdodDogMDtcbiAgcGFkZGluZy1ibG9jazogMDtcbiAgbWFyZ2luLWJsb2NrOiAwO1xuICBtYXJnaW4taW5saW5lOiBhdXRvIHZhcigtLXNwYWNpbmctMDUwKTtcblxuICBpbnB1dCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChcImRlc2t0b3Atc21hbGxcIikge1xuICAgICAgd2lkdGg6IHZhcigtLW1heC13aWR0aC0tNXhzKTtcbiAgICB9XG4gIH1cblxuICAmX19jdGEge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1zaXplKFwic21cIik7XG5cbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IHZhcigtLXNwYWNpbmctMjUwKTtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIHBsYWNlLWl0ZW1zOiBjZW50ZXI7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcblxuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLW9yYW5nZSk7XG4gICAgfVxuICB9XG5cbiAgJl9faWNvbiB7XG4gICAgd2lkdGg6IHZhcigtLWljb24teHMpO1xuICAgIGhlaWdodDogdmFyKC0taWNvbi14cyk7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLTAyNSk7XG5cbiAgICAmLS1vcGVuLFxuICAgICYtLWNsb3NlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB9XG4gIH1cblxuICAmX19pY29uLS10b2dnbGVyLXdyYXBwZXIge1xuICAgIEBpbmNsdWRlIGJ1dHRvbjtcbiAgICBAaW5jbHVkZSBidXR0b24tc2l6ZShcInNtXCIpO1xuXG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtb3JhbmdlKTtcbiAgICB9XG5cbiAgICAmW2FyaWEtZXhwYW5kZWQ9XCJmYWxzZVwiXSB7XG4gICAgICAjeyR0aGlzfV9faWNvbi0tb3BlbiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgIH1cblxuICAgICZbYXJpYS1leHBhbmRlZD1cInRydWVcIl0ge1xuICAgICAgI3skdGhpc31fX2ljb24tLWNsb3NlIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi0tbW9iaWxlIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIG1heC13aWR0aDogMDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlWCgwKTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBjZW50ZXI7XG4gICAgdHJhbnNpdGlvbjogbWF4LXdpZHRoIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0O1xuXG4gICAgJltkYXRhLWV4cGFuZGVkPVwidHJ1ZVwiXSB7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlWCgxKTtcbiAgICAgIG1heC13aWR0aDogdmFyKC0tbWF4LXdpZHRoLS03eHMpO1xuICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLTA1MCk7XG5cbiAgICAgIGlucHV0IHtcbiAgICAgICAgbWF4LXdpZHRoOiB2YXIoLS1tYXgtd2lkdGgtLTl4cyk7XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoXCJ0YWJsZXRcIikge1xuICAgICAgICBtYXgtd2lkdGg6IHZhcigtLW1heC13aWR0aC0tNXhzKTtcblxuICAgICAgICBpbnB1dCB7XG4gICAgICAgICAgbWF4LXdpZHRoOiB2YXIoLS1tYXgtd2lkdGgtLTZ4cyk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8qKlxuICogU2VsZWN0XG4gKiBHcm91cDogRWxlbWVudHNcbiAqL1xuXG5AdXNlIFwiLi4vMDItdG9vbHMvaW5wdXRcIiBhcyAqO1xuXG5zZWxlY3Qge1xuICBAaW5jbHVkZSBpbnB1dC1kZWZhdWx0O1xufVxuIiwiLyoqXG4gKiBTb2NpYWwgTGlua3NcbiAqIEdyb3VwOiBFbGVtZW50c1xuICovXG5cbkB1c2UgXCIuLi8wMi10b29scy9icmVha3BvaW50c1wiIGFzICo7XG5AdXNlIFwiLi4vMDItdG9vbHMvYnV0dG9uc1wiIGFzICo7XG5AdXNlIFwiLi4vMDItdG9vbHMvdHlwb2dyYXBoeVwiIGFzICo7XG5cbi5zb2NpYWwtbGlua3Mge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogdmFyKC0tc3BhY2luZy0wMjUpO1xuICBjb2xvcjogaW5oZXJpdDtcbiAgZmxleDogMTtcblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKFwicGhhYmxldFwiKSB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuICAgIGdhcDogdmFyKC0tc3BhY2luZy0yMDApO1xuICB9XG5cbiAgJl9fbGluayB7XG4gICAgQGluY2x1ZGUgdGV4dChcInNtXCIpO1xuXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgIHN2ZyB7XG4gICAgICBoZWlnaHQ6IHZhcigtLWljb24tZGVmYXVsdCk7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2luZy0wMjUpO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoXCJwaGFibGV0XCIpIHtcbiAgICAgIEBpbmNsdWRlIHRleHQoXCJtZFwiKTtcblxuICAgICAgc3ZnIHtcbiAgICAgICAgaGVpZ2h0OiB2YXIoLS1pY29uLWRlZmF1bHQpO1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLTA3NSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvKipcbiAqIExpc3QgSXRlbVxuICogR3JvdXA6IEVsZW1lbnRzXG4gKi9cblxuQHVzZSBcIi4uLzAyLXRvb2xzL3R5cG9ncmFwaHlcIiBhcyAqO1xuQHVzZSBcIi4uLzAyLXRvb2xzL2JyZWFrcG9pbnRzXCIgYXMgKjtcblxuLnRhYmxlIHtcbiAgJHRoaXM6ICY7XG5cbiAgJi1saXN0IHtcbiAgICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICAgIG1pbi13aWR0aDogdmFyKC0tbWluLXdpZHRoLXRhYmxlLWxpc3QpO1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgJi0td3JhcHBlciB7XG4gICAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoXCJkZXNrdG9wLXNtYWxsXCIpIHtcbiAgICAgICAgb3ZlcmZsb3cteDogdmlzaWJsZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmX19jYXB0aW9uIHtcbiAgICAgIEBpbmNsdWRlIGhlYWRpbmcoXCJoMlwiKTtcblxuICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWRhcmstZ3JheSk7XG4gICAgICBtYXJnaW46IDAgMCB2YXIoLS1zcGFjaW5nLTEwMCk7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIH1cblxuICAgICZfX3RyZWUtY2FwdGlvbiB7XG4gICAgICBAaW5jbHVkZSBoZWFkaW5nKFwiaDJcIik7XG5cbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1kYXJrLWdyYXkpO1xuICAgICAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2luZy02MDApO1xuICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy0zMDApO1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB9XG5cbiAgICAmX19jZWxsIHtcbiAgICAgIHBhZGRpbmctYmxvY2s6IHZhcigtLXNwYWNpbmctMjAwKTtcbiAgICAgIHBhZGRpbmctaW5saW5lOiB2YXIoLS1zcGFjaW5nLTA1MCk7XG5cbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICBwYWRkaW5nLWlubGluZTogdmFyKC0tc3BhY2luZy0wNzUpIDA7XG4gICAgICB9XG5cbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIHBhZGRpbmctaW5saW5lOiAwIHZhcigtLXNwYWNpbmctMDc1KTtcbiAgICAgIH1cblxuICAgICAgJi0taGVhZGVyIHtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgd2lkdGg6IDMwJTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmX19yb3cge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJyYW5kLWxpZ2h0ZXItZ3JheSk7XG5cbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzLXdpdGhpbiB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWxpZ2h0ZXItZ3JheSk7XG4gICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLW9yYW5nZSk7XG5cbiAgICAgICAgJiA+ICoge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJl9fcm93LXdpdGgtaGVhZGVyIHtcbiAgICAgIGJvcmRlci1ibG9jazogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJyYW5kLW9yYW5nZSk7XG5cbiAgICAgICY6bnRoLWNoaWxkKG9kZCkge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0KTtcbiAgICAgIH1cblxuICAgICAgJjpudGgtY2hpbGQoZXZlbikge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1saWdodC1ncmF5KTtcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWdyYXkpO1xuICAgICAgfVxuXG4gICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLXRvcDogM3B4IHNvbGlkIHZhcigtLWNvbG9yLWJyYW5kLWdyYXkpO1xuICAgICAgfVxuXG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItYm90dG9tOiAzcHggc29saWQgdmFyKC0tY29sb3ItYnJhbmQtb3JhbmdlKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmX19oZWFkZXIge1xuICAgICAgQGluY2x1ZGUgdGV4dChcInNtXCIsIFwiYm9sZFwiKTtcblxuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ncmF5KTtcbiAgICAgIGJvcmRlci1ib3R0b206IDNweCBzb2xpZCB2YXIoLS1jb2xvci1icmFuZC1kYXJrLWdyYXkpO1xuICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB9XG5cbiAgICAmX19pbmRleCB7XG4gICAgICBAaW5jbHVkZSB0ZXh0KFwibWRcIiwgXCJib2xkXCIpO1xuXG4gICAgICB3aWR0aDogY2xhbXAodmFyKC0tc3BhY2luZy0zMDApLCA2dncsIHZhcigtLXNwYWNpbmctNDAwKSk7XG5cbiAgICAgICYtdGV4dCB7XG4gICAgICAgIEBpbmNsdWRlIHRleHQoXCJtZFwiLCBcImJvbGRcIik7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJl9fdGl0bGUge1xuICAgICAgQGluY2x1ZGUgdGV4dChcInNtXCIpO1xuXG4gICAgICAmLXRleHQge1xuICAgICAgICBAaW5jbHVkZSB0ZXh0KFwic21cIik7XG5cbiAgICAgICAgbWF4LXdpZHRoOiB2YXIoLS1zcGFjaW5nLTM3MDApO1xuICAgICAgfVxuICAgIH1cblxuICAgICZfX2xpbmsge1xuICAgICAgQGluY2x1ZGUgdGV4dChcInNtXCIpO1xuXG4gICAgICB3aWR0aDogY2xhbXAoMjAlLCB2YXIoLS1zcGFjaW5nLTI0MDApLCAyNXJlbSk7XG5cbiAgICAgICYtaW5uZXIge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgZ2FwOiB2YXIoLS1zcGFjaW5nLTA1MCk7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICAgICAmOmhvdmVyLFxuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi10ZXh0IHtcbiAgICAgICAgQGluY2x1ZGUgdGV4dChcInNtXCIpO1xuXG4gICAgICAgIG1heC13aWR0aDogdmFyKC0tc3BhY2luZy0xNjAwKTtcbiAgICAgICAgZmxleDogMTtcbiAgICAgIH1cblxuICAgICAgJi1pY29uIHtcbiAgICAgICAgbWF4LWhlaWdodDogdmFyKC0taWNvbi14cyk7XG4gICAgICAgIHdpZHRoOiB2YXIoLS1pY29uLXhzKTtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmX190aXRsZS1saW5rIHtcbiAgICAgIEBpbmNsdWRlIHRleHQoXCJzbVwiKTtcblxuICAgICAgd2lkdGg6IGNsYW1wKDIwJSwgdmFyKC0tc3BhY2luZy0yNDAwKSwgMjVyZW0pO1xuXG4gICAgICAmLWlubmVyIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1mbG93OiByb3cgbm93cmFwO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGdhcDogdmFyKC0tc3BhY2luZy0wNTApO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICAgICAgJjpob3ZlcixcbiAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYtdGV4dCB7XG4gICAgICAgIEBpbmNsdWRlIHRleHQoXCJzbVwiKTtcblxuICAgICAgICBmbGV4OiAxO1xuICAgICAgfVxuXG4gICAgICAmLWljb24ge1xuICAgICAgICBtYXgtaGVpZ2h0OiB2YXIoLS1pY29uLXhzKTtcbiAgICAgICAgd2lkdGg6IHZhcigtLWljb24teHMpO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgfVxuICAgIH1cblxuICAgICZfX2xhc3RuYW1lIHtcbiAgICAgIEBpbmNsdWRlIHRleHQoXCJzbVwiKTtcblxuICAgICAgJi10ZXh0IHtcbiAgICAgICAgQGluY2x1ZGUgdGV4dChcInNtXCIpO1xuXG4gICAgICAgIG1heC13aWR0aDogdmFyKC0tc3BhY2luZy0zNzAwKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmX19maXJzdG5hbWUge1xuICAgICAgQGluY2x1ZGUgdGV4dChcInNtXCIpO1xuXG4gICAgICAmLXRleHQge1xuICAgICAgICBAaW5jbHVkZSB0ZXh0KFwic21cIik7XG5cbiAgICAgICAgbWF4LXdpZHRoOiB2YXIoLS1zcGFjaW5nLTM3MDApO1xuICAgICAgfVxuICAgIH1cblxuICAgICZfX3Bob25lIHtcbiAgICAgIEBpbmNsdWRlIHRleHQoXCJzbVwiKTtcblxuICAgICAgJi10ZXh0IHtcbiAgICAgICAgQGluY2x1ZGUgdGV4dChcInNtXCIpO1xuXG4gICAgICAgIG1heC13aWR0aDogdmFyKC0tc3BhY2luZy0zNzAwKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmX19lbWFpbCB7XG4gICAgICBAaW5jbHVkZSB0ZXh0KFwic21cIik7XG5cbiAgICAgICYtdGV4dCB7XG4gICAgICAgIEBpbmNsdWRlIHRleHQoXCJzbVwiKTtcblxuICAgICAgICBtYXgtd2lkdGg6IHZhcigtLXNwYWNpbmctMzcwMCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJl9fb3JndW5pdCB7XG4gICAgICBAaW5jbHVkZSB0ZXh0KFwic21cIik7XG5cbiAgICAgICYtdGV4dCB7XG4gICAgICAgIEBpbmNsdWRlIHRleHQoXCJzbVwiKTtcblxuICAgICAgICBtYXgtd2lkdGg6IHZhcigtLXNwYWNpbmctMzcwMCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJl9fc2l0ZSB7XG4gICAgICBAaW5jbHVkZSB0ZXh0KFwic21cIik7XG5cbiAgICAgICYtdGV4dCB7XG4gICAgICAgIEBpbmNsdWRlIHRleHQoXCJzbVwiKTtcblxuICAgICAgICBtYXgtd2lkdGg6IHZhcigtLXNwYWNpbmctMzcwMCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJl9fbmFtZSB7XG4gICAgICB3aWR0aDogY2xhbXAodmFyKC0tc3BhY2luZy02MDApLCA4dncsIHZhcigtLXNwYWNpbmctNzAwKSk7XG5cbiAgICAgICYtdGV4dCB7XG4gICAgICAgIEBpbmNsdWRlIHRleHQoXCJzbVwiLCBcImJvbGRcIik7XG4gICAgICB9XG5cbiAgICAgICYtbGluayB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICAgICAmOmhvdmVyLFxuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmX190eXBlIHtcbiAgICAgIHdpZHRoOiBjbGFtcCh2YXIoLS1zcGFjaW5nLTYwMCksIDh2dywgdmFyKC0tc3BhY2luZy03MDApKTtcblxuICAgICAgJi10ZXh0IHtcbiAgICAgICAgQGluY2x1ZGUgdGV4dChcInNtXCIpO1xuICAgICAgfVxuICAgIH1cblxuICAgICZfX3RoZXJhcGV1dGljLWNhdGVnb3J5IHtcbiAgICAgICYtdGV4dCB7XG4gICAgICAgIEBpbmNsdWRlIHRleHQoXCJzbVwiKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmX19hY3RpdmVfc3Vic3RhbmNlIHtcbiAgICAgICYtdGV4dCB7XG4gICAgICAgIEBpbmNsdWRlIHRleHQoXCJzbVwiKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmX19hcHByb3ZhbCB7XG4gICAgICAmLXRleHQge1xuICAgICAgICBAaW5jbHVkZSB0ZXh0KFwic21cIik7XG5cbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgfVxuICAgIH1cblxuICAgICZfX2luZGljYXRpb24tY2xhcmlmaWNhdGlvbiB7XG4gICAgICAmLXRleHQge1xuICAgICAgICBAaW5jbHVkZSB0ZXh0KFwic21cIik7XG5cbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgfVxuICAgIH1cblxuICAgICZfX2F2YWlsYWJpbGl0eSB7XG4gICAgICAmLS1hdmFpbGFibGUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ncmVlbik7XG4gICAgICB9XG5cbiAgICAgICYtLWxvdy1hdmFpbGFibGUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1icm93bi1zZW1pLXRyYW5zcGFyZW50KTtcbiAgICAgIH1cblxuICAgICAgJi0tbm90LWF2YWlsYWJsZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLXJlZCk7XG4gICAgICB9XG5cbiAgICAgICYtdGV4dCB7XG4gICAgICAgIEBpbmNsdWRlIHRleHQoXCJtZFwiKTtcblxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIG1pbi13aWR0aDogdmFyKC0tc3BhY2luZy0xMDAwKTtcbiAgICAgICAgbWF4LXdpZHRoOiB2YXIoLS1zcGFjaW5nLTgwMCk7XG4gICAgICAgIG1hcmdpbi1pbmxpbmU6IGF1dG87XG4gICAgICAgIHBhZGRpbmctaW5saW5lOiB2YXIoLS1zcGFjaW5nLTE1MCk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvKipcbiAqIFRleHRcbiAqIEdyb3VwOiBFbGVtZW50c1xuICovXG5cbkB1c2UgXCIuLi8wMi10b29scy90eXBvZ3JhcGh5XCIgYXMgKjtcblxucCxcbnNwYW4sXG5saSxcbmEsXG50aW1lLFxuYWRkcmVzcyB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1ib2R5LWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWJvZHktbGluZS1oZWlnaHQpO1xufVxuXG5wIHtcbiAgJi5oYXMtc21hbGwtZm9udC1zaXplIHtcbiAgICBAaW5jbHVkZSB0ZXh0KFwic21cIiwgdHJ1ZSk7XG4gIH1cblxuICAmLmhhcy1sYXJnZS1mb250LXNpemUge1xuICAgIEBpbmNsdWRlIGhlYWRpbmcoXCJoNlwiLCB0cnVlKTtcbiAgfVxuXG4gICYuaGFzLWxhcmdlci1mb250LXNpemUge1xuICAgIEBpbmNsdWRlIGhlYWRpbmcoXCJoNVwiLCB0cnVlKTtcbiAgfVxufVxuXG4vLyBTcGFuIG9yIGEgaW5zaWRlIGEgc3BhblxuYSxcbnNwYW4ge1xuICBzcGFuIHtcbiAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgZm9udC13ZWlnaHQ6IGluaGVyaXQ7XG4gICAgbGV0dGVyLXNwYWNpbmc6IGluaGVyaXQ7XG4gICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIH1cbn1cblxubGkge1xuICBwLFxuICBzcGFuIHtcbiAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgZm9udC13ZWlnaHQ6IGluaGVyaXQ7XG4gICAgbGV0dGVyLXNwYWNpbmc6IGluaGVyaXQ7XG4gICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIH1cbn1cblxuYSB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1saW5rKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG5cbi8vIFNtYWxsXG5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1zbWFsbC1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LXNtYWxsLWxpbmUtaGVpZ2h0KTtcblxuICA+ICoge1xuICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICBmb250LXdlaWdodDogaW5oZXJpdDtcbiAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgfVxufVxuXG4vLyBTdHJvbmcgVGFnc1xuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ib2xkKTtcbn1cblxuaSxcbmVtIHtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuXG5zdXAge1xuICBkaXNwbGF5OiBpbmxpbmU7XG4gIGZvbnQtc2l6ZTogMC42ZW07XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG59XG5cbm1hcmsge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG5pbnMge1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZCk7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuZGVsIHtcbiAgKyBpbnMge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1zcGFjZS1zbSk7XG4gIH1cbn1cblxudGgsXG50ZCxcbmxpLFxucCB7XG4gIGEsXG4gIHNwYW4ge1xuICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICBmb250LXdlaWdodDogaW5oZXJpdDtcbiAgICBsZXR0ZXItc3BhY2luZzogaW5oZXJpdDtcbiAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgfVxufVxuXG4vKlxuICogSW5oZXJpdCBmb250IHN0eWxlcyBpZiBkaXYgaGFzIGZvbnQgY2xhc3Nlc1xuICogVGhpcyBpcyBoZWxwZnVsIGZvciB0aGUgUlRFIHdoaWNoIGlzIGEgZGl2IGFuZCBhY2NlcHRzIHAgdGFncyBpbnNpZGVcbiAqL1xuZGl2W2NsYXNzXSB7XG4gICYgPiBwOm5vdChbY2xhc3NdKSB7XG4gICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICAgIGxldHRlci1zcGFjaW5nOiBpbmhlcml0O1xuICB9XG59XG5cbmJ1dHRvbltjbGFzc10ge1xuICAmID4gc3Bhbjpub3QoW2NsYXNzXSksXG4gICYgPiBwOm5vdChbY2xhc3NdKSB7XG4gICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICAgIGxldHRlci1zcGFjaW5nOiBpbmhlcml0O1xuICB9XG59XG4iLCIvKipcbiAqIFRleHRhcmVhXG4gKlxuICogR3JvdXA6IEVsZW1lbnRzXG4gKi9cblxuQHVzZSBcIi4uLzAyLXRvb2xzL2lucHV0XCIgYXMgKjtcblxudGV4dGFyZWEge1xuICBAaW5jbHVkZSBpbnB1dC1kZWZhdWx0KFwicmVzZXRcIik7XG59XG4iLCIvKipcbiAqIFRpdGxlXG4gKlxuICogR3JvdXA6IEVsZW1lbnRzXG4gKi9cblxuQHVzZSBcIi4uLzAyLXRvb2xzL3R5cG9ncmFwaHlcIiBhcyAqO1xuXG4udGl0bGUge1xuICAmLXBhZ2Uge1xuICAgIEBpbmNsdWRlIGhlYWRpbmcoXCJoMlwiKTtcbiAgfVxuXG4gICYtc2VjdGlvbiB7XG4gICAgQGluY2x1ZGUgaGVhZGluZyhcImgyXCIpO1xuXG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy0yMDApO1xuICB9XG59XG4iLCIvKipcbiAqIFZpZGVvXG4gKiBHcm91cDogRWxlbWVudHNcbiAqL1xuXG4udmlkZW8ge1xuICBhc3BlY3QtcmF0aW86IDE2IC8gOTtcbiAgbWluLXdpZHRoOiAzMjBweDtcbiAgbWluLWhlaWdodDogMTgwcHg7XG4gIG1heC13aWR0aDogMTkyMHB4O1xuICBtYXgtaGVpZ2h0OiAxMDgwcHg7XG59XG4iLCIvKipcbiAqIE9iamVjdHMgTWFpblxuICogR3JvdXA6IE9iamVjdHNcbiAqL1xuXG5AZm9yd2FyZCBcImFydGljbGVzLWdyb3VwXCI7XG5AZm9yd2FyZCBcImFzcGVjdC1yYXRpb1wiO1xuQGZvcndhcmQgXCJjb250YWluZXJcIjtcbkBmb3J3YXJkIFwiY29va2llLWRpYWxvZ1wiO1xuQGZvcndhcmQgXCJkcm9wZG93blwiO1xuQGZvcndhcmQgXCJmaWx0ZXItZ3JvdXBcIjtcbkBmb3J3YXJkIFwiaWNvbi1ncm91cFwiO1xuQGZvcndhcmQgXCJsaW5rLWJveC1ncm91cFwiO1xuQGZvcndhcmQgXCJtYWluXCI7XG5AZm9yd2FyZCBcIm1vZGFsXCI7XG5AZm9yd2FyZCBcInBhZ2UtbGF5b3V0XCI7XG5AZm9yd2FyZCBcInNlY3Rpb25cIjtcbiIsIi8qKlxuICogQXJ0aWNsZXMgR3JvdXBcbiAqIEdyb3VwOiBPYmplY3RzXG4gKi9cblxuQHVzZSBcIi4uLzAyLXRvb2xzL2JyZWFrcG9pbnRzXCIgYXMgKjtcblxuLm8tYXJ0aWNsZXMtZ3JvdXAge1xuICAkdGhpczogJjtcblxuICAmX19uZXdzIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgZ2FwOiB2YXIoLS1zcGFjaW5nLTIwMCk7XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKFwiZGVza3RvcC1zbWFsbFwiKSB7XG4gICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMTIsIDFmcik7XG4gICAgICBncmlkLXRlbXBsYXRlLXJvd3M6IDFmciAyZnI7XG4gICAgfVxuXG4gICAgJi1pdGVtIHtcbiAgICAgIG1pbi1oZWlnaHQ6IDA7XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoXCJkZXNrdG9wLXNtYWxsXCIpIHtcbiAgICAgICAgJjpudGgtY2hpbGQoMSkge1xuICAgICAgICAgIGdyaWQtY29sdW1uOiAxIC8gc3BhbiA2O1xuICAgICAgICAgIGdyaWQtcm93OiAxIC8gc3BhbiAyO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgICAgIGdyaWQtY29sdW1uOiA3IC8gc3BhbiA2O1xuICAgICAgICAgIGdyaWQtcm93OiAxO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpudGgtY2hpbGQoMykge1xuICAgICAgICAgIGdyaWQtY29sdW1uOiA3IC8gc3BhbiA2O1xuICAgICAgICAgIGdyaWQtcm93OiAyO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJl9fcHJlc3Mge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ2FwOiB2YXIoLS1zcGFjaW5nLTI1MCk7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1pbmxpbmU6IGF1dG87XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKFwidGFibGV0XCIpIHtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChcImRlc2t0b3AtbWVkaXVtXCIpIHtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIDFmcik7XG4gICAgICBnYXA6IHZhcigtLXNwYWNpbmctMTAwKSB2YXIoLS1zcGFjaW5nLTI1MCk7XG4gICAgfVxuICB9XG59XG4iLCIvKipcbiAqIEFzcGVjdCBSYXRpb1xuICogR3JvdXA6IE9iamVjdHNcbiAqIGxpbms6IGh0dHBzOi8vdHdpdHRlci5jb20vY3Nzd2l6YXJkcnkvc3RhdHVzLzEyNjcwNDYyMTQwNjkwMzA5MTJcbiAqL1xuXG4uby1hc3BlY3QtcmF0aW8ge1xuICBAc3VwcG9ydHMgKHBhZGRpbmctdG9wOiBjYWxjKHZhcigtLWhlaWdodCkgLyB2YXIoLS13aWR0aCkgKiAxMDAlKSkge1xuICAgIC0td2lkdGg6IDE2O1xuICAgIC0taGVpZ2h0OiA5O1xuXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwYWRkaW5nLXRvcDogY2FsYyh2YXIoLS1oZWlnaHQpIC8gdmFyKC0td2lkdGgpICogMTAwJSk7XG4gICAgfVxuXG4gICAgPiBkaXYsXG4gICAgPiBpbWcsXG4gICAgPiB2aWRlbyxcbiAgICA+IGlmcmFtZSB7XG4gICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICAgICAgbGVmdDogMDtcbiAgICAgIHRvcDogMDtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG5cbi8qIEFwcGx5IGFzcGVjdCByYXRpbyB0byBjb250YWluZXIgKi9cbi5oYXMtYXNwZWN0LXJhdGlvIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICY6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gID4gZGl2IHtcbiAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgfVxuXG4gIGlmcmFtZSB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG4iLCIvKipcbiAqIENvbnRhaW5lclxuICogR3JvdXA6IE9iamVjdHNcbiAqL1xuXG5AdXNlIFwiLi4vMDItdG9vbHMvYnJlYWtwb2ludHNcIiBhcyAqO1xuXG4uby1jb250YWluZXIge1xuICBtYXgtd2lkdGg6IHZhcigtLW1heC13aWR0aC0tMnhsKTtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctaW5saW5lOiB2YXIoLS1zcGFjaW5nLTEwMCk7XG4gIG1hcmdpbi1pbmxpbmU6IGF1dG87XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChcInRhYmxldFwiKSB7XG4gICAgcGFkZGluZy1pbmxpbmU6IHZhcigtLXNwYWNpbmctMjAwKTtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoXCJkZXNrdG9wLXNtYWxsXCIpIHtcbiAgICBwYWRkaW5nLWlubGluZTogdmFyKC0tc3BhY2luZy0zMDApO1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChcImRlc2t0b3AtbWVkaXVtXCIpIHtcbiAgICBwYWRkaW5nLWlubGluZTogdmFyKC0tc3BhY2luZy00MDApO1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChcImRlc2t0b3BcIikge1xuICAgIHBhZGRpbmctaW5saW5lOiB2YXIoLS1zcGFjaW5nLTUwMCk7XG4gIH1cblxuICAvKiBDb250YWluZXIgaW5zaWRlIGEgY29udGFpbmVyICovXG4gIFtjbGFzc149XCJvLWNvbnRhaW5lclwiXSxcbiAgW2NsYXNzKj1cIiBvLWNvbnRhaW5lclwiXSB7XG4gICAgcGFkZGluZy1pbmxpbmU6IDA7XG4gIH1cblxuICAvKiBDb250YWluZXIgaW5zaWRlIGEgY29udGFpbmVyIGJ1dCB3aXRoIGZ1bGx3aWR0aCBjbGFzcyBiZXR3ZWVuIHRoZW0gKi9cbiAgLnUtZnVsbC13aWR0aCB7XG4gICAgW2NsYXNzXj1cIm8tY29udGFpbmVyXCJdLFxuICAgIFtjbGFzcyo9XCIgby1jb250YWluZXJcIl0ge1xuICAgICAgcGFkZGluZy1pbmxpbmU6IHZhcigtLXNwYWNpbmctMTAwKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8qKlxuICogQ29va2llIERpYWxvZ1xuICogR3JvdXA6IE9iamVjdHNcbiAqL1xuXG5AdXNlIFwiLi4vMDItdG9vbHMvYnJlYWtwb2ludHNcIiBhcyAqO1xuQHVzZSBcIi4uLzAyLXRvb2xzL3R5cG9ncmFwaHlcIiBhcyAqO1xuQHVzZSBcIi4uLzAyLXRvb2xzL2J1dHRvbnNcIiBhcyAqO1xuQHVzZSBcIi4uLzAyLXRvb2xzL2JveC1zaGFkb3dzXCIgYXMgKjtcblxuLm8tY29va2llLWRpYWxvZyB7XG4gICR0aGlzOiAmO1xuXG4gICZfX2NvbnRhaW5lciB7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhcIjAzXCIsIFwibGlnaHRcIik7XG5cbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgYm90dG9tOiB2YXIoLS1zcGFjaW5nLTE1MCk7XG4gICAgbGVmdDogMDtcbiAgICBtYXJnaW4taW5saW5lOiB2YXIoLS1zcGFjaW5nLTE1MCk7XG4gICAgbWF4LXdpZHRoOiA0NXJlbTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1saWdodC1ncmF5KTtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1zcGFjaW5nLTEwMCk7XG4gICAgYm9yZGVyOiAzcHggc29saWQgdmFyKC0tY29sb3ItYnJhbmQtb3JhbmdlKTtcbiAgICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLTIwMCk7XG4gIH1cblxuICAmX190aXRsZSB7XG4gICAgQGluY2x1ZGUgaGVhZGluZyhcImgzXCIpO1xuXG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy0xMDApO1xuICB9XG5cbiAgJl9fZGVzY3JpcHRpb24ge1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctMjAwKTtcbiAgfVxuXG4gICZfX2J1dHRvbiB7XG4gICAgQGluY2x1ZGUgYnV0dG9uO1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1zaXplKFwic3RhdGljXCIpO1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1zdHlsZShcInNlY29uZGFyeVwiKTtcblxuICAgICYtY29udGFpbmVyIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGdhcDogdmFyKC0tc3BhY2luZy0xNTApO1xuXG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKFwicGhhYmxldFwiKSB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgIGdhcDogdmFyKC0tc3BhY2luZy0yMDApO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICZfX2Nsb3NlLWJ1dHRvbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMXJlbTtcbiAgICByaWdodDogMXJlbTtcblxuICAgIEBpbmNsdWRlIGJ1dHRvbi1zaXplKFwieHNcIik7XG5cbiAgICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtb3JhbmdlKTtcbiAgfVxufVxuIiwiLyoqXG4gKiBEcm9wZG93blxuICogR3JvdXA6IE9iamVjdHNcbiAqL1xuXG5AdXNlIFwiLi4vMDItdG9vbHMvYnV0dG9uc1wiIGFzICo7XG5AdXNlIFwiLi4vMDItdG9vbHMvdHlwb2dyYXBoeVwiIGFzICo7XG5cbi5vLWRyb3Bkb3duIHtcbiAgJHRoaXM6ICY7XG5cbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIGVhc2UtaW4tb3V0IHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pO1xuXG4gICZfX2xpc3Qge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDEwMCU7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICB6LWluZGV4OiA1O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLXNlYXJjaC1ncmF5KTtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtZ3JheSk7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1sKTtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1sKTtcbiAgICBwYWRkaW5nLWJsb2NrOiB2YXIoLS1zcGFjaW5nLTAyNSkgdmFyKC0tc3BhY2luZy0xNTApO1xuICAgIG1heC1oZWlnaHQ6IGNsYW1wKHZhcigtLXNwYWNpbmctMTIwMCksIDQ1ZHZoLCB2YXIoLS1zcGFjaW5nLTI0MDApKTtcbiAgICBvdmVyZmxvdzogYXV0bztcblxuICAgICYtaXRlbSB7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggZGFzaGVkIHZhcigtLWNvbG9yLWRhcmspO1xuICAgICAgcGFkZGluZy1pbmxpbmU6IHZhcigtLXNwYWNpbmctMTUwKTtcbiAgICAgIHBhZGRpbmctYmxvY2s6IHZhcigtLXNwYWNpbmctMDUwKTtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICAgJlthcmlhLXNlbGVjdGVkPVwidHJ1ZVwiXSB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ib2xkKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmX190b2dnbGUtYnV0dG9uIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMztcbiAgICBmbGV4OiAxO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgYm9yZGVyOiBub25lO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcGFkZGluZzogdmFyKC0tc3BhY2luZy0xMDApIHZhcigtLXNwYWNpbmctMTUwKTtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgfVxuXG4gICZfX2Rpc3BsYXkge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgfVxuXG4gICZfX2ljb24ge1xuICAgIHdpZHRoOiB2YXIoLS1pY29uLW1zKTtcbiAgICBoZWlnaHQ6IHZhcigtLWljb24teHMpO1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICB9XG5cbiAgJlthcmlhLWV4cGFuZGVkPVwiZmFsc2VcIl0ge1xuICAgICN7JHRoaXN9X19saXN0IHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgJlthcmlhLWV4cGFuZGVkPVwidHJ1ZVwiXSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtb3JhbmdlKTtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItbGlnaHQpO1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XG5cbiAgICAjeyR0aGlzfV9fbGlzdCB7XG4gICAgICBhbmltYXRpb246XG4gICAgICAgIGZhZGUtaW4gdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbiBmb3J3YXJkcyxcbiAgICAgICAgc2xpZGUtYm91bmNlLWRvd24gdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1vdXQgZm9yd2FyZHM7XG4gICAgfVxuXG4gICAgI3skdGhpc31fX2ljb24ge1xuICAgICAgYW5pbWF0aW9uOiByb3RhdGUtMTgwIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4gZm9yd2FyZHM7XG4gICAgfVxuICB9XG5cbiAgJjpmb2N1cy12aXNpYmxlIHtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWZvY3VzLXN0cm9rZSk7XG4gIH1cbn1cbiIsIi8qKlxuICogRmlsdGVycyBHcm91cFxuICogR3JvdXA6IE9iamVjdHNcbiAqL1xuXG5AdXNlIFwiLi4vMDItdG9vbHMvYnJlYWtwb2ludHNcIiBhcyAqO1xuXG4uby1maWx0ZXItZ3JvdXAge1xuICAkdGhpczogJjtcblxuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgZ2FwOiB2YXIoLS1zcGFjaW5nLTIwMCk7XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChcInRhYmxldFwiKSB7XG4gICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKFwiZGVza3RvcFwiKSB7XG4gICAgcm93LWdhcDogdmFyKC0tc3BhY2luZy0xMDApO1xuICB9XG59XG4iLCIvKipcbiAqIEljb24gR3JvdXBcbiAqIEdyb3VwOiBPYmplY3RzXG4gKi9cblxuLm8taWNvbi1ncm91cCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IG5vd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IHZhcigtLXNwYWNpbmctMTUwKTtcbn1cbiIsIi8qKlxuICogTGluayBib3ggZ3JvdXBcbiAqIEdyb3VwOiBPYmplY3RzXG4gKi9cblxuQHVzZSBcIi4uLzAyLXRvb2xzL2JyZWFrcG9pbnRzXCIgYXMgKjtcblxuLm8tbGluay1ib3gtZ3JvdXAge1xuICAkdGhpczogJjtcblxuICBkaXNwbGF5OiBncmlkO1xuICBnYXA6IHZhcigtLXNwYWNpbmctMjUwKTtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChcInRhYmxldFwiKSB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoXCJkZXNrdG9wLW1lZGl1bVwiKSB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTtcbiAgfVxufVxuIiwiLyoqXG4gKiBNYWluXG4gKlxuICogR3JvdXA6IE9iamVjdHNcbiAqL1xuXG4uby1tYWluIHtcbiAgJHRoaXM6ICY7XG59XG4iLCIvKipcbiAqIE1vZGFsXG4gKiBHcm91cDogT2JqZWN0c1xuICovXG5cbkB1c2UgXCIuLi8wMi10b29scy9icmVha3BvaW50c1wiIGFzICo7XG5cbi5vLW1vZGFsIHtcbiAgJHRoaXM6ICY7XG59XG4iLCIvKipcbiAqIFBhZ2VcbiAqIEdyb3VwOiBPYmplY3RzXG4gKi9cblxuQHVzZSBcIi4uLzAyLXRvb2xzL2JyZWFrcG9pbnRzXCIgYXMgKjtcblxuLm8tcGFnZSB7XG4gICR0aGlzOiAmO1xuXG4gICYtLWxheW91dC13aXRoLXNpZGViYXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICBnYXA6IHZhcigtLXNwYWNpbmctNDAwKTtcblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoXCJkZXNrdG9wLXNtYWxsXCIpIHtcbiAgICAgIGZsZXgtZmxvdzogcm93IG5vd3JhcDtcbiAgICB9XG4gIH1cblxuICAmLS1sYXlvdXQtd2l0aC1zaWRlYmFyLWFuZC1tYXAge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cblxuICAmX19tYWluIHtcbiAgICBmbGV4OiAxO1xuXG4gICAgJiA+IC5vLXNlY3Rpb246Zmlyc3QtY2hpbGQge1xuICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgfVxuICB9XG5cbiAgJl9fc2lkZWJhciB7XG4gICAgZmxleDogMSAwIGF1dG87XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1heC13aWR0aDogdmFyKC0tbWF4LXdpZHRoLS00eHMpO1xuICAgIG1hcmdpbi1pbmxpbmU6IGF1dG87XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKFwiZGVza3RvcC1zbWFsbFwiKSB7XG4gICAgICBtYXJnaW4taW5saW5lOiBpbml0aWFsO1xuICAgIH1cbiAgfVxufVxuIiwiLyoqXG4gKiBTZWN0aW9uXG4gKiBHcm91cDogT2JqZWN0c1xuICovXG5cbkB1c2UgXCIuLi8wMi10b29scy9icmVha3BvaW50c1wiIGFzICo7XG5cbi5vLXNlY3Rpb24ge1xuICAkdGhpczogJjtcblxuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctYmxvY2s6IHZhcigtLXNwYWNpbmctNDAwKTtcblxuICAuby1jb250YWluZXI6bnRoLW9mLXR5cGUobiArIDIpLFxuICAuby1jb250YWluZXI6bnRoLW9mLXR5cGUoMSk6bnRoLWxhc3Qtb2YtdHlwZShuICsgMikge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoXCJ0YWJsZXRcIikge1xuICAgICAgLy9wYWRkaW5nLWJsb2NrOiB2YXIoLS1zcGFjaW5nLTIwMCk7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChcImRlc2t0b3BcIikge1xuICAgICAgLy9wYWRkaW5nLWJsb2NrOiB2YXIoLS1zcGFjaW5nLTMwMCk7XG4gICAgfVxuICB9XG5cbiAgJjpoYXMoLm8tY29udGFpbmVyICsgLm8tY29udGFpbmVyKSB7XG4gICAgLm8tY29udGFpbmVyIHtcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoXCJ0YWJsZXRcIikge1xuICAgICAgICAvL3BhZGRpbmctYmxvY2s6IHZhcigtLXNwYWNpbmctMjAwKTtcbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChcImRlc2t0b3BcIikge1xuICAgICAgICAvL3BhZGRpbmctYmxvY2s6IHZhcigtLXNwYWNpbmctMzAwKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8qKlxuICogQkxPQ0tTIE1BSU4gRklMRVxuICovXG5cbkBmb3J3YXJkIFwiYWxlcnRcIjtcbkBmb3J3YXJkIFwiYnJlYWRjcnVtYlwiO1xuQGZvcndhcmQgXCJjb250YWN0XCI7XG5AZm9yd2FyZCBcImNvb2tpZXNcIjtcbkBmb3J3YXJkIFwiZG9jdW1lbnQtbGlzdGluZ1wiO1xuQGZvcndhcmQgXCJmaWx0ZXJcIjtcbkBmb3J3YXJkIFwiZm9vdGVyXCI7XG5AZm9yd2FyZCBcImhlYWRlclwiO1xuQGZvcndhcmQgXCJpbWFnZS1saW5rc1wiO1xuQGZvcndhcmQgXCJpbWFnZS10ZXh0XCI7XG5AZm9yd2FyZCBcImxpbmstYm94XCI7XG5AZm9yd2FyZCBcImludHJvLWJhbm5lclwiO1xuQGZvcndhcmQgXCJsaXN0XCI7XG5AZm9yd2FyZCBcIm1hcFwiO1xuQGZvcndhcmQgXCJuZXdzXCI7XG5AZm9yd2FyZCBcIm5ld3NsZXR0ZXJcIjtcbkBmb3J3YXJkIFwibm90LWZvdW5kXCI7XG5AZm9yd2FyZCBcInBhZ2UtYmFubmVyXCI7XG5AZm9yd2FyZCBcInBkZi12aWV3ZXJcIjtcbkBmb3J3YXJkIFwicXVvdGVcIjtcbkBmb3J3YXJkIFwic2lkZWJhclwiO1xuQGZvcndhcmQgXCJ0ZXh0XCI7XG5AZm9yd2FyZCBcInRpY2tldC1saW5rXCI7XG5AZm9yd2FyZCBcInRyZWVcIjtcbiIsIi8qKlxuICogQWxlcnRcbiAqIEdyb3VwOiBDb21wb25lbnRzXG4gKi9cblxuQHVzZSBcIi4uLzAyLXRvb2xzL3R5cG9ncmFwaHlcIiBhcyAqO1xuXG4uYy1hbGVydCB7XG4gICR0aGlzOiAmO1xuXG4gICYtLWxheW91dCB7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zKTtcbiAgICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLTE1MCk7XG4gIH1cblxuICAmLS1pbmZvIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZS1saWdodCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZS1saWdodC1zZW1pLXRyYW5zcGFyZW50KTtcbiAgfVxuXG4gICYtLXN1Y2Nlc3Mge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1hbGVydC1ncmVlbi1kYXJrKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ncmVlbik7XG4gIH1cblxuICAmLS13YXJuaW5nIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYnJvd24pO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJyb3duLXNlbWktdHJhbnNwYXJlbnQpO1xuICB9XG5cbiAgJi0tZGFuZ2VyIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtZGFyay1yZWQpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLXJlZC1zZW1pLXRyYW5zcGFyZW50KTtcbiAgfVxuXG4gICYtLXNsaWRlLXVwIHtcbiAgICBhbmltYXRpb246IHNsaWRlLXVwIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UgZm9yd2FyZHM7XG4gIH1cblxuICAmLS1mYWRlLW91dCB7XG4gICAgYW5pbWF0aW9uOiBmYWRlLW91dCB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uLW1lZGl1bSkgZWFzZSBmb3J3YXJkcztcbiAgfVxuXG4gICZfX3RpdGxlIHtcbiAgICBAaW5jbHVkZSBoZWFkaW5nKFwiaDNcIik7XG5cbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLTA1MCk7XG4gIH1cblxuICAmX190ZXh0IHtcbiAgICBAaW5jbHVkZSB0ZXh0KFwibWRcIik7XG4gIH1cbn1cbiIsIi8qKlxuICogQnJlYWRjcnVtYlxuICogR3JvdXA6IENvbXBvbmVudHNcbiAqL1xuXG5AdXNlIFwiLi4vMDItdG9vbHMvdHlwb2dyYXBoeVwiIGFzICo7XG5AdXNlIFwiLi4vMDItdG9vbHMvYnJlYWtwb2ludHNcIiBhcyAqO1xuXG4uYy1icmVhZGNydW1iIHtcbiAgJHRoaXM6ICY7XG5cbiAgJl9fbGlzdCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBnYXA6IHZhcigtLXNwYWNpbmctMDUwKTtcbiAgfVxuXG4gICZfX2l0ZW0ge1xuICAgIEBpbmNsdWRlIHRleHQoXCJzbVwiKTtcblxuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgZ2FwOiB2YXIoLS1zcGFjaW5nLTA1MCk7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWxpZ2h0LWdyYXkpO1xuXG4gICAgJi1saW5rIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgfVxuICAgIH1cblxuICAgICZbYXJpYS1jdXJyZW50PVwicGFnZVwiXSB7XG4gICAgICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtb3JhbmdlKTtcbiAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ib2xkKTtcbiAgICB9XG4gIH1cblxuICAmX19zcGFjZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1saWdodC1ncmF5KTtcbiAgfVxufVxuIiwiLyoqXG4gKiBDb250YWN0XG4gKiBHcm91cDogQ29tcG9uZW50c1xuICovXG5cbkB1c2UgXCIuLi8wMi10b29scy9icmVha3BvaW50c1wiIGFzICo7XG5AdXNlIFwiLi4vMDItdG9vbHMvdHlwb2dyYXBoeVwiIGFzICo7XG5AdXNlIFwiLi4vMDItdG9vbHMvYnV0dG9uc1wiIGFzICo7XG5AdXNlIFwiLi4vMDItdG9vbHMvaW5wdXRcIiBhcyAqO1xuXG4uYy1jb250YWN0IHtcbiAgJHRoaXM6ICY7XG5cbiAgLm8tc2VjdGlvbixcbiAgLmMtYWxlcnQge1xuICAgIHBhZGRpbmctYmxvY2s6IDAgdmFyKC0tc3BhY2luZy0yMDApO1xuICB9XG5cbiAgJi0tbGF5b3V0IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcbiAgICBnYXA6IHZhcigtLXNwYWNpbmctNDAwKTtcblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoXCJkZXNrdG9wLXNtYWxsXCIpIHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICBnYXA6IHZhcigtLXNwYWNpbmctMjAwKTtcbiAgICB9XG4gIH1cblxuICAmX19tYXAtY29udGFpbmVyIHtcbiAgICBmbGV4OiAxO1xuICB9XG5cbiAgJl9fZm9ybS1jb250YWluZXIge1xuICAgIGZsZXg6IDE7XG5cbiAgICAuZmllbGQtdmFsaWRhdGlvbi1lcnJvciB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGhlaWdodDogdmFyKC0tc3BhY2luZy0zMDApO1xuICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWRhcmstcmVkKTtcbiAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LWxpbmUtaGVpZ2h0KTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLXJlZC1zZW1pLXRyYW5zcGFyZW50KTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtbCk7XG4gICAgICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLTEwMCk7XG4gICAgICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjaW5nLTA1MCk7XG4gICAgfVxuXG4gICAgLnVtYnJhY28tZm9ybXMtZmllbGRzZXQge1xuICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0KTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xuICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tc3BhY2luZy0xNTApO1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgcGFkZGluZzogdmFyKC0tc3BhY2luZy0xNTApO1xuICAgIH1cblxuICAgIC51bWJyYWNvLWZvcm1zLWZpZWxkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctMTAwKTtcbiAgICB9XG5cbiAgICAudW1icmFjby1mb3Jtcy1sYWJlbCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXNwYWNpbmctMDc1KTtcbiAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctMDUwKTtcbiAgICB9XG5cbiAgICBpbnB1dCxcbiAgICB0ZXh0YXJlYSB7XG4gICAgICBAaW5jbHVkZSBidXR0b24tc2l6ZShcInN0YXRpY1wiKTtcbiAgICAgIEBpbmNsdWRlIGlucHV0LWRlZmF1bHQoXCJuZXdzbGV0dGVyXCIpO1xuXG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogdmFyKC0tc3BhY2luZy0zNTApO1xuICAgIH1cblxuICAgIHRleHRhcmVhIHtcbiAgICAgIGhlaWdodDogdmFyKC0tc3BhY2luZy0xMDAwKTtcbiAgICB9XG5cbiAgICBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAgIEBpbmNsdWRlIGJ1dHRvbjtcbiAgICAgIEBpbmNsdWRlIGJ1dHRvbi1zaXplKFwic3RhdGljXCIpO1xuICAgICAgQGluY2x1ZGUgYnV0dG9uLXN0eWxlKFwicHJpbWFyeVwiKTtcblxuICAgICAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2luZy0xNTApO1xuICAgIH1cblxuICAgIHNlbGVjdCB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogdmFyKC0tc3BhY2luZy0zNTApO1xuICAgIH1cblxuICAgIC51bWJyYWNvLWZvcm1zLWhpZGRlbiB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxufVxuIiwiLyoqXG4gKiBDb29raWVzXG4gKiBHcm91cDogQ29tcG9uZW50c1xuICovXG5cbkB1c2UgXCIuLi8wMi10b29scy90eXBvZ3JhcGh5XCIgYXMgKjtcbkB1c2UgXCIuLi8wMi10b29scy9icmVha3BvaW50c1wiIGFzICo7XG5AdXNlIFwiLi4vMDItdG9vbHMvYnV0dG9uc1wiIGFzICo7XG5AdXNlIFwiLi4vMDItdG9vbHMvaW5wdXRcIiBhcyAqO1xuQHVzZSBcIi4uLzAyLXRvb2xzL3BsYWNlaG9sZGVyXCIgYXMgKjtcblxuLmMtY29va2llcyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xuICBwYWRkaW5nLWJsb2NrOiB2YXIoLS1zcGFjaW5nLTUwMCk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1saWdodCk7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAmX190aXRsZSB7XG4gICAgQGluY2x1ZGUgaGVhZGluZyhcImgyXCIpO1xuXG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy0xMDApO1xuICB9XG5cbiAgJl9fZGVzY3JpcHRpb24ge1xuICAgIEBpbmNsdWRlIHRleHQoXCJzbVwiKTtcblxuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctMjAwKTtcbiAgfVxuXG4gICZfX2xhYmVsIHtcbiAgICBAaW5jbHVkZSB0ZXh0KFwibWRcIik7XG4gIH1cblxuICAmX19idXR0b24ge1xuICAgIEBpbmNsdWRlIGJ1dHRvbjtcbiAgICBAaW5jbHVkZSBidXR0b24tc2l6ZShcInN0YXRpY1wiKTtcbiAgICBAaW5jbHVkZSBidXR0b24tc3R5bGUoXCJwcmltYXJ5XCIpO1xuICB9XG59XG4iLCIvKipcbiAqIERvY3VtZW50YXRpb24gbGlzdGluZ1xuICogR3JvdXA6IENvbXBvbmVudHNcbiAqL1xuXG5AdXNlIFwiLi4vMDItdG9vbHMvdHlwb2dyYXBoeVwiIGFzICo7XG5cbi5jLWRvY3VtZW50LWxpc3Rpbmcge1xuICAkdGhpczogJjtcblxuICAmX19saXN0IHtcbiAgICAvL1xuICB9XG5cbiAgJl9faXRlbSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBnYXA6IHZhcigtLXNwYWNpbmctMDc1KTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tY29sb3ItYnJhbmQtb3JhbmdlKTtcbiAgICBwYWRkaW5nLWJsb2NrOiB2YXIoLS1zcGFjaW5nLTIwMCk7XG4gICAgcGFkZGluZy1pbmxpbmU6IHZhcigtLXNwYWNpbmctMTI1KTtcblxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtbGlnaHRlci1ncmF5KTtcbiAgICB9XG5cbiAgICAmLXRpdGxlIHtcbiAgICAgIEBpbmNsdWRlIGhlYWRpbmcoXCJoNlwiLCBcImJvbGRcIik7XG5cbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1saWdodCk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcbiAgICAgIHBhZGRpbmctYmxvY2s6IHZhcigtLXNwYWNpbmctMjAwKTtcbiAgICAgIHBhZGRpbmctaW5saW5lOiB2YXIoLS1zcGFjaW5nLTA1MCk7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tY29sb3ItYnJhbmQtb3JhbmdlKTtcbiAgICB9XG5cbiAgICAmLWxpbmsge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtb3JhbmdlKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8qKlxuICogRmlsdGVyXG4gKiBHcm91cDogQ29tcG9uZW50c1xuICovXG5cbkB1c2UgXCIuLi8wMi10b29scy9icmVha3BvaW50c1wiIGFzICo7XG5AdXNlIFwiLi4vMDItdG9vbHMvdHlwb2dyYXBoeVwiIGFzICo7XG5AdXNlIFwiLi4vMDItdG9vbHMvcGxhY2Vob2xkZXJcIiBhcyAqO1xuQHVzZSBcIi4uLzAyLXRvb2xzL2J1dHRvbnNcIiBhcyAqO1xuQHVzZSBcIi4uLzAyLXRvb2xzL2JveC1zaGFkb3dzXCIgYXMgKjtcblxuLmMtZmlsdGVyIHtcbiAgJHRoaXM6ICY7XG5cbiAgJi0tbGF5b3V0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG4gICAgcGFkZGluZy1ibG9jazogdmFyKC0tc3BhY2luZy00MDApIHZhcigtLXNwYWNpbmctMzAwKTtcbiAgICBwYWRkaW5nLWlubGluZTogdmFyKC0tc3BhY2luZy0xMDApO1xuICB9XG5cbiAgJl9fY29udGFpbmVyIHtcbiAgICBtYXgtd2lkdGg6IHZhcigtLW1heC13aWR0aC0tbWQpO1xuICAgIG1hcmdpbi1pbmxpbmU6IGF1dG87XG4gIH1cblxuICAmX190aXRsZSB7XG4gICAgQGluY2x1ZGUgaGVhZGluZyhcImgyXCIpO1xuXG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy0xNTApO1xuICB9XG5cbiAgLmMtYWxlcnQge1xuICAgIG1heC13aWR0aDogdmFyKC0tbWF4LXdpZHRoLS1tZCk7XG4gICAgbWFyZ2luLWlubGluZTogYXV0bztcbiAgICBtYXJnaW4tYmxvY2s6IHZhcigtLXNwYWNpbmctMjUwKSAwO1xuICB9XG59XG4iLCIvKipcbiAqIEZvb3RlclxuICogR3JvdXA6IENvbXBvbmVudHNcbiAqL1xuXG5AdXNlIFwiLi4vMDItdG9vbHMvYnJlYWtwb2ludHNcIiBhcyAqO1xuQHVzZSBcIi4uLzAyLXRvb2xzL3R5cG9ncmFwaHlcIiBhcyAqO1xuQHVzZSBcIi4uLzAyLXRvb2xzL2J1dHRvbnNcIiBhcyAqO1xuXG4uYy1mb290ZXIge1xuICAkdGhpczogJjtcblxuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtd2hpdGUpO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi10b3A6IGF1dG87XG5cbiAgJl9fbWFpbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG5cbiAgICAmLWlubmVyIHtcbiAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgxLCAxZnIpO1xuICAgICAgZ2FwOiAzcmVtO1xuICAgICAgcGFkZGluZy1ibG9jazogdmFyKC0tc3BhY2luZy01MDApO1xuXG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKFwicGhhYmxldFwiKSB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7XG4gICAgICAgIGdhcDogNHJlbTtcbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChcImRlc2t0b3Atc21hbGxcIikge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg0LCAxZnIpO1xuICAgICAgICBnYXA6IDRyZW07XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoXCJkZXNrdG9wXCIpIHtcbiAgICAgICAgZ2FwOiAxMHJlbTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmX19sb2dvLXRleHQge1xuICAgIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmctMTUwKTtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtbGlnaHQtZ3JheSk7XG4gIH1cblxuICAmX19jb2x1bW4ge1xuICAgICYtdGl0bGUge1xuICAgICAgQGluY2x1ZGUgdGV4dChcIm1kXCIsIFwiYm9sZFwiKTtcblxuICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy0wNzUpO1xuICAgIH1cblxuICAgICYtbGluayB7XG4gICAgICBAaW5jbHVkZSB0ZXh0KFwic21cIik7XG5cbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1vcmFuZ2UpO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoXCJkZXNrdG9wXCIpIHtcbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICBtYXgtd2lkdGg6IDE2MHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICZfX2JvdHRvbSB7XG4gICAgJl9fbG9nb3MtY29udGFpbmVyIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgIGdhcDogMXJlbTtcbiAgICAgIHBhZGRpbmctYmxvY2s6IHZhcigtLXNwYWNpbmctMDc1KTtcblxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChcInRhYmxldFwiKSB7XG4gICAgICAgIGdhcDogMnJlbTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmX19sb2dvIHtcbiAgICAgIGhlaWdodDogdmFyKC0tc3BhY2luZy0zMDApO1xuXG4gICAgICBwaWN0dXJlLFxuICAgICAgaW1nIHtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgfVxuICAgIH1cblxuICAgICZfX2NvcHlyaWdodCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1saWdodCk7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBwYWRkaW5nLWJsb2NrOiB2YXIoLS1zcGFjaW5nLTEyNSk7XG5cbiAgICAgICYtdGV4dCB7XG4gICAgICAgIEBpbmNsdWRlIHRleHQoXCJtZFwiKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8qKlxuICogSGVhZGVyIE1haW5cbiAqIEdyb3VwOiBDdXN0b20gQ29tcG9uZW50c1xuICovXG5cbkB1c2UgXCIuLi8wMi10b29scy9icmVha3BvaW50c1wiIGFzICo7XG5AdXNlIFwiLi4vMDItdG9vbHMvYnV0dG9uc1wiIGFzICo7XG5AdXNlIFwiLi4vMDItdG9vbHMvb24tZXZlbnRcIiBhcyAqO1xuQHVzZSBcIi4uLzAyLXRvb2xzL3R5cG9ncmFwaHlcIiBhcyAqO1xuXG4uYy1oZWFkZXIge1xuICAkdGhpczogJjtcbiAgJGJyZWFrcG9pbnQtdG8tZGVza3RvcDogXCJkZXNrdG9wLXNtYWxsXCI7XG5cbiAgZmxleDogMCAwIGF1dG87XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIHotaW5kZXg6IDEwO1xuXG4gIC8qXG4gICAqIEhlYWRlciBQYXJ0c1xuICAgKi9cbiAgJl9fdG9wLWJhciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG5cbiAgICAmLWlubmVyIHtcbiAgICAgIGhlaWdodDogdmFyKC0taGVhZGVyLXRvcC1iYXItaGVpZ2h0KTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0KTtcblxuICAgICAgLnNlYXJjaCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludC10by1kZXNrdG9wKSB7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuc29jaWFsLWxpbmtzIHtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludC10by1kZXNrdG9wKSB7XG4gICAgICAgICAgZ2FwOiB2YXIoLS1zcGFjaW5nLTMwMCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmX19tYWluIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAmLWlubmVyIHtcbiAgICAgIGhlaWdodDogdmFyKC0taGVhZGVyLW1haW4tYmFyLWhlaWdodCk7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICYgPiA6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLyogQnJhbmRpbmcgKi9cbiAgJl9fbG9nbyB7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICB9XG5cbiAgLypcbiAgICogU2VhcmNoIGNvbnRhaW5lciBpbiBtYWluIHdpdGggdG9nZ2xlIGJ1dHRvbnNcbiAgICovXG4gICZfX3NlYXJjaC1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQtdG8tZGVza3RvcCkge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAvKlxuICAgKiBNYWluIG1lbnUgdG9nZ2xlIHBhcnRzXG4gICAqL1xuICAmX190b2dnbGUtYnVyZ2VyLWljb24sXG4gICZfX3RvZ2dsZS1jbG9zZS1pY29uIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHdpZHRoOiB2YXIoLS1pY29uLXNtKTtcbiAgICBoZWlnaHQ6IHZhcigtLWljb24tc20pO1xuICB9XG5cbiAgJl9fdG9nZ2xlLW1lbnUge1xuICAgIEBpbmNsdWRlIGJ1dHRvbjtcbiAgICBAaW5jbHVkZSBidXR0b24tc2l6ZShcInNtXCIpO1xuXG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtb3JhbmdlKTtcbiAgICB9XG5cbiAgICAmW2FyaWEtZXhwYW5kZWQ9XCJ0cnVlXCJdIHtcbiAgICAgICN7JHRoaXN9X190b2dnbGUtY2xvc2UtaWNvbiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBhbmltYXRpb246IGZhZGUtaW4gdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbiBmb3J3YXJkcztcbiAgICAgIH1cblxuICAgICAgI3skdGhpc31fX3RvZ2dsZS1idXJnZXItaWNvbiB7XG4gICAgICAgIGFuaW1hdGlvbjogZmFkZS1vdXQgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbiBmb3J3YXJkcztcbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludC10by1kZXNrdG9wKSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJlthcmlhLWV4cGFuZGVkPVwiZmFsc2VcIl0ge1xuICAgICAgI3skdGhpc31fX3RvZ2dsZS1idXJnZXItaWNvbiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50LXRvLWRlc2t0b3ApIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmX19jb250ZW50LXdyYXBwZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIGluc2V0OiB2YXIoLS1oZWFkZXItaGVpZ2h0KSAwIDAgMDtcbiAgICB6LWluZGV4OiAxMDtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgIGhlaWdodDogY2FsYygxMDBkdmggLSB2YXIoLS1oZWFkZXItaGVpZ2h0KSk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0KTtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoXCJkZXNrdG9wLXNtYWxsXCIpIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgaW5zZXQ6IHVuc2V0O1xuICAgICAgb3ZlcmZsb3cteTogdmlzaWJsZTtcbiAgICAgIHotaW5kZXg6IGluaGVyaXQ7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICAmW2RhdGEtZXhwYW5kZWQ9XCJ0cnVlXCJdIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgYW5pbWF0aW9uOiBmYWRlLWluIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4gZm9yd2FyZHM7XG4gICAgfVxuICB9XG59XG4iLCIvKipcbiAqIEltYWdlIExpbmtzXG4gKiBHcm91cDogQ29tcG9uZW50c1xuICovXG5cbkB1c2UgXCIuLi8wMi10b29scy9icmVha3BvaW50c1wiIGFzICo7XG5AdXNlIFwiLi4vMDItdG9vbHMvdHlwb2dyYXBoeVwiIGFzICo7XG5cbi5jLWltYWdlLWxpbmtzIHtcbiAgJHRoaXM6ICY7XG5cbiAgJl9fd3JhcHBlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgZ2FwOiB2YXIoLS1zcGFjaW5nLTIwMCkgdmFyKC0tc3BhY2luZy0xMDApO1xuICB9XG5cbiAgJl9fbGluayB7XG4gICAgaGVpZ2h0OiB2YXIoLS1zcGFjaW5nLTcwMCk7XG4gIH1cbn1cbiIsIi8qKlxuICogVGV4dCBhbmQgSW1hZ2VcbiAqIEdyb3VwOiBDb21wb25lbnRzXG4gKiBWaWV3czogU2VjdGlvbiBJbWFnZSBBbmQgVGV4dCBCbG9ja1xuICovXG5cbkB1c2UgXCIuLi8wMi10b29scy9icmVha3BvaW50c1wiIGFzICo7XG5AdXNlIFwiLi4vMDItdG9vbHMvdHlwb2dyYXBoeVwiIGFzICo7XG5cbi5jLWltYWdlLXRleHQge1xuICAkdGhpczogJjtcblxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgJi0tbGF5b3V0IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogY29sdW1uIG5vd3JhcDtcbiAgICBnYXA6IHZhcigtLXNwYWNpbmctMTUwKTtcblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoXCJ0YWJsZXRcIikge1xuICAgICAgZmxleC1mbG93OiByb3cgbm93cmFwO1xuICAgICAgZ2FwOiB2YXIoLS1zcGFjaW5nLTIwMCk7XG4gICAgfVxuICB9XG5cbiAgJi0tcmV2ZXJzZWQge1xuICAgIGZsZXgtZmxvdzogY29sdW1uIG5vd3JhcDtcblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoXCJ0YWJsZXRcIikge1xuICAgICAgZmxleC1mbG93OiByb3ctcmV2ZXJzZSBub3dyYXA7XG4gICAgfVxuICB9XG5cbiAgJl9faW1hZ2Utd3JhcCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChcInRhYmxldFwiKSB7XG4gICAgICBmbGV4OiAxO1xuICAgIH1cbiAgfVxuXG4gICZfX3RleHQtd3JhcCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChcInRhYmxldFwiKSB7XG4gICAgICBmbGV4OiAxO1xuICAgIH1cbiAgfVxuXG4gICZfX2V5ZWJyb3cge1xuICAgIEBpbmNsdWRlIHRleHQoXCJzbVwiKTtcblxuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLTA3NSk7XG4gIH1cblxuICAmX190aXRsZSB7XG4gICAgQGluY2x1ZGUgaGVhZGluZyhcImgzXCIpO1xuXG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy0xMDApO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1kYXJrLWdyYXkpO1xuICB9XG5cbiAgJl9fdGV4dCB7XG4gICAgQGluY2x1ZGUgdGV4dChcIm1kXCIpO1xuXG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWdyYXkpO1xuICB9XG59XG4iLCIvKipcbiAqIExpbmsgYm94XG4gKiBHcm91cDogQ29tcG9uZW50c1xuICovXG5cbkB1c2UgXCIuLi8wMi10b29scy9icmVha3BvaW50c1wiIGFzICo7XG5AdXNlIFwiLi4vMDItdG9vbHMvdHlwb2dyYXBoeVwiIGFzICo7XG5cbi5jLWxpbmstYm94IHtcbiAgJHRoaXM6ICY7XG5cbiAgJi0tbGF5b3V0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBnYXA6IHZhcigtLXNwYWNpbmctMTUwKTtcbiAgICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLTIwMCkgdmFyKC0tc3BhY2luZy0xNTApO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1saWdodCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG4gICAgYm9yZGVyOiAycHggc29saWQgdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1tKTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHRyYW5zaXRpb246XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0LFxuICAgICAgY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQ7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xuXG4gICAgICAjeyR0aGlzfV9faWNvbiB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcblxuICAgICAgICAmLS13cmFwcGVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJl9fY29udGVudCB7XG4gICAgJl9fdGl0bGUge1xuICAgICAgQGluY2x1ZGUgaGVhZGluZyhcImg1XCIpO1xuXG4gICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB9XG5cbiAgICAmX19kZXNjcmlwdGlvbiB7XG4gICAgICBAaW5jbHVkZSB0ZXh0KFwic21cIik7XG5cbiAgICAgIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmctMDI1KTtcbiAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIH1cbiAgfVxuXG4gICZfX2ljb24ge1xuICAgIHdpZHRoOiB2YXIoLS1pY29uLXNtKTtcbiAgICBtYXgtaGVpZ2h0OiB2YXIoLS1pY29uLXNtKTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0KTtcbiAgICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dDtcblxuICAgICYtLXdyYXBwZXIge1xuICAgICAgZmxleDogbm9uZTtcbiAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICBwbGFjZS1pdGVtczogY2VudGVyO1xuICAgICAgd2lkdGg6IHZhcigtLWljb24teGwpO1xuICAgICAgaGVpZ2h0OiB2YXIoLS1pY29uLXhsKTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGJvcmRlcjogMnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1mdWxsKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUtc2VtaS10cmFuc3BhcmVudCk7XG4gICAgICB0cmFuc2l0aW9uOlxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0LFxuICAgICAgICBib3JkZXIgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQ7XG4gICAgfVxuICB9XG59XG4iLCIvKipcbiAqIEludHJvIEJhbm5lclxuICogR3JvdXA6IENvbXBvbmVudHNcbiAqL1xuXG5AdXNlIFwiLi4vMDItdG9vbHMvYnJlYWtwb2ludHNcIiBhcyAqO1xuQHVzZSBcIi4uLzAyLXRvb2xzL3R5cG9ncmFwaHlcIiBhcyAqO1xuQHVzZSBcIi4uLzAyLXRvb2xzL2dyYWRpZW50XCIgYXMgKjtcbkB1c2UgXCIuLi8wMi10b29scy9idXR0b25zXCIgYXMgKjtcblxuLmMtaW50cm8tYmFubmVyIHtcbiAgJHRoaXM6ICY7XG5cbiAgJi0tbGF5b3V0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWF4LWhlaWdodDogdmFyKC0tbWF4LWhlaWdodC1pbnRyby1iYW5uZXIpO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgYXNwZWN0LXJhdGlvOiA0LzM7XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKFwicGhhYmxldFwiKSB7XG4gICAgICBhc3BlY3QtcmF0aW86IDM2LzE3O1xuICAgIH1cbiAgfVxuXG4gICYud2l0aFZpZGVvIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWJldHdlZW4oXCJ0YWJsZXRcIiwgXCJkZXNrdG9wLXNtYWxsXCIpIHtcbiAgICAgICN7JHRoaXN9LS1sYXlvdXQge1xuICAgICAgICBtYXgtaGVpZ2h0OiB1bnNldDtcbiAgICAgICAgYXNwZWN0LXJhdGlvOiBhdXRvO1xuICAgICAgfVxuXG4gICAgICAjeyR0aGlzfV9fbWVkaWEge1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIHBhZGRpbmc6IDJyZW07XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJl9fbWVkaWEge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xuICAgIGdhcDogM3JlbTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiB2YXIoLS1tYXgtd2lkdGgtLTJ4bCk7XG4gICAgcGFkZGluZy1pbmxpbmU6IDFyZW07XG4gICAgbWFyZ2luOiAwIGF1dG87XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKFwiZGVza3RvcC1zbWFsbFwiKSB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgZ2FwOiA1cmVtO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgcGFkZGluZy1pbmxpbmU6IDNyZW07XG4gICAgfVxuICB9XG5cbiAgJl9faW1hZ2Uge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBvYmplY3QtZml0OiBjb3ZlcjtcblxuICAgICYtd3JhcCB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBpbnNldDogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICAgIHotaW5kZXg6IC0xO1xuXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgaW5zZXQ6IDA7XG4gICAgICAgIHotaW5kZXg6IDA7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1vdmVybGF5LWNvbG9yLWxpZ2h0KTtcbiAgICAgIH1cblxuICAgICAgcGljdHVyZSB7XG4gICAgICAgIGhlaWdodDogMTAwJTtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKFwicGhhYmxldFwiKSB7XG4gICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJl9fdGV4dC13cmFwIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgZ2FwOiB2YXIoLS1zcGFjaW5nLTE1MCk7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBoZWlnaHQ6IDEwMCU7XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKFwicGhhYmxldFwiKSB7XG4gICAgICBnYXA6IHZhcigtLXNwYWNpbmctMjUwKTtcbiAgICB9XG4gIH1cblxuICAmX192aWRlby13cmFwIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC13aWR0aDogNzIwcHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLW0pO1xuICAgIGJvcmRlcjogMnB4IHNvbGlkIHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChcInRhYmxldFwiKSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAudmlkZW8tYm94IHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgcGFkZGluZy10b3A6IDU2LjI1JTsgLyogMTY6OSBhc3BlY3QgcmF0aW8gKi9cbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIH1cblxuICAgIHZpZGVvIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgICB9XG4gIH1cblxuICAmX190aXRsZSB7XG4gICAgQGluY2x1ZGUgaGVhZGluZyhcImgyXCIsIFwiYm9sZFwiKTtcblxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItbGlnaHQpO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChcInRhYmxldFwiKSB7XG4gICAgICBAaW5jbHVkZSBoZWFkaW5nKFwiaDFcIiwgXCJib2xkXCIpO1xuICAgIH1cbiAgfVxuXG4gICZfX3N1YnRpdGxlIHtcbiAgICBAaW5jbHVkZSBoZWFkaW5nKFwiaDNcIiwgXCJib2xkXCIpO1xuXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1saWdodCk7XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKFwidGFibGV0XCIpIHtcbiAgICAgIEBpbmNsdWRlIGhlYWRpbmcoXCJoMVwiLCBcImJvbGRcIik7XG4gICAgfVxuICB9XG5cbiAgJl9fYnV0dG9ucy1ncm91cCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGdhcDogdmFyKC0tc3BhY2luZy0xMDApO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChcInBoYWJsZXRcIikge1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICB9XG4gIH1cblxuICAmX19idXR0b24ge1xuICAgIEBpbmNsdWRlIGJ1dHRvbjtcbiAgICBAaW5jbHVkZSBidXR0b24tc2l6ZShcInN0YXRpY1wiKTtcblxuICAgICYtLXByaW1hcnkge1xuICAgICAgQGluY2x1ZGUgYnV0dG9uLXN0eWxlKFwicHJpbWFyeVwiKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8qKlxuICogTGlzdCBibG9ja1xuICogR3JvdXA6IENvbXBvbmVudHNcbiAqL1xuXG5AdXNlIFwiLi4vMDItdG9vbHMvdHlwb2dyYXBoeVwiIGFzICo7XG5cbi5jLWxpc3Qge1xuICAkdGhpczogJjtcblxuICAmX190aXRsZSB7XG4gICAgQGluY2x1ZGUgaGVhZGluZyhcImgyXCIpO1xuXG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWRhcmstZ3JheSk7XG4gICAgbWFyZ2luOiAwIDAgdmFyKC0tc3BhY2luZy0xNTApO1xuICB9XG5cbiAgJl9fdGV4dCB7XG4gICAgQGluY2x1ZGUgdGV4dDtcblxuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1kYXJrLWdyYXkpO1xuICB9XG59XG4iLCIvKipcbiAqIE1hcFxuICogR3JvdXA6IENvbXBvbmVudHNcbiAqL1xuXG5AdXNlIFwiLi4vMDItdG9vbHMvdHlwb2dyYXBoeVwiIGFzICo7XG5AdXNlIFwiLi4vMDItdG9vbHMvYnJlYWtwb2ludHNcIiBhcyAqO1xuQHVzZSBcIi4uLzAyLXRvb2xzL2J1dHRvbnNcIiBhcyAqO1xuXG4uYy1tYXAge1xuICAkdGhpczogJjtcblxuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG1pbi1oZWlnaHQ6IHZhcigtLW1pbi1oZWlnaHQtbWFwLXBhcm1hY3kpO1xuXG4gICZfX2NvbnRhaW5lciB7XG4gICAgYXNwZWN0LXJhdGlvOiA0IC8gMztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgei1pbmRleDogMDtcbiAgfVxuXG4gICYtLW1hcC1saXN0IHtcbiAgICBtaW4taGVpZ2h0OiB2YXIoLS1taW4taGVpZ2h0LW1hcC1wYXJtYWN5KTtcbiAgICBtYXgtaGVpZ2h0OiB2YXIoLS1tYXgtaGVpZ2h0LW1hcC1saXN0KTtcbiAgICBtYXJnaW4taW5saW5lOiBhdXRvO1xuICB9XG5cbiAgJl9fZ29vZ2xlLW1hcCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGFzcGVjdC1yYXRpbzogMi4xODMgLyAxO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG4iLCIvKipcbiAqIE5ld3NcbiAqIEdyb3VwOiBDb21wb25lbnRzXG4gKi9cblxuQHVzZSBcIi4uLzAyLXRvb2xzL2JyZWFrcG9pbnRzXCIgYXMgKjtcbkB1c2UgXCIuLi8wMi10b29scy90eXBvZ3JhcGh5XCIgYXMgKjtcbkB1c2UgXCIuLi8wMi10b29scy9idXR0b25zXCIgYXMgKjtcbkB1c2UgXCIuLi8wMi10b29scy90cnVuY2F0ZVwiIGFzICo7XG5cbi5jLW5ld3Mge1xuICAkdGhpczogJjtcblxuICAmX19oZWFkZXIge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1kYXJrLWdyYXkpO1xuICB9XG5cbiAgJl9fdGl0bGUge1xuICAgIEBpbmNsdWRlIGhlYWRpbmcoXCJoM1wiKTtcblxuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gICZfX2JhZGdlIHtcbiAgICBAaW5jbHVkZSBidXR0b247XG4gICAgQGluY2x1ZGUgYnV0dG9uLXNpemUoXCJzbVwiKTtcbiAgICBAaW5jbHVkZSBidXR0b24tc3R5bGUoXCJwcmltYXJ5XCIpO1xuXG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmctMTUwKTtcbiAgfVxuXG4gICZfX2RhdGUge1xuICAgIEBpbmNsdWRlIHRleHQoXCJzbVwiLCBcIm1lZGl1bVwiKTtcblxuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcbiAgICBtYXJnaW4tYmxvY2s6IHZhcigtLXNwYWNpbmctMDc1KTtcblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoXCJkZXNrdG9wLXNtYWxsXCIpIHtcbiAgICAgIG1hcmdpbi1ibG9jazogMCB2YXIoLS1zcGFjaW5nLTA3NSk7XG4gICAgfVxuICB9XG5cbiAgJl9fbGluayB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgZ2FwOiB2YXIoLS1zcGFjaW5nLTEwMCk7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1kYXJrLWdyYXkpO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtb3JhbmdlKTtcbiAgICB9XG4gIH1cblxuICAmX19pY29uIHtcbiAgICB3aWR0aDogdmFyKC0taWNvbi1tcyk7XG4gICAgbWF4LWhlaWdodDogdmFyKC0taWNvbi1tcyk7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICB9XG5cbiAgJl9fY3RhLWJ1dHRvbiB7XG4gICAgQGluY2x1ZGUgYnV0dG9uO1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1zaXplKFwibGdcIik7XG4gICAgQGluY2x1ZGUgYnV0dG9uLXN0eWxlKFwicHJpbWFyeVwiKTtcblxuICAgIG1hcmdpbi1pbmxpbmU6IGF1dG87XG5cbiAgICAmLS13cmFwcGVyIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmctMjAwKTtcbiAgICB9XG4gIH1cblxuICAmLS1jb2xvcmVkLWJhY2tncm91bmQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWxpZ2h0LWdyYXkpO1xuICB9XG5cbiAgJi1hcnRpY2xlIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKFwiZGVza3RvcC1zbWFsbFwiKSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZ2FwOiB2YXIoLS1zcGFjaW5nLTE1MCk7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuXG4gICAgICAmOm50aC1jaGlsZCgxKSB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgICAgICAgI3skdGhpc30tYXJ0aWNsZSB7XG4gICAgICAgICAgJl9faW1hZ2UtLXdyYXBwZXIge1xuICAgICAgICAgICAgYXNwZWN0LXJhdGlvOiAxNiAvIDk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgI3skdGhpc30tYXJ0aWNsZSB7XG4gICAgICAgICAgJl9faW1hZ2UtLXdyYXBwZXIge1xuICAgICAgICAgICAgYXNwZWN0LXJhdGlvOiAzIC8gMjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAjeyR0aGlzfV9fdGl0bGUge1xuICAgICAgICAgIEBpbmNsdWRlIGhlYWRpbmcoXCJoNVwiLCBcIm1lZGl1bVwiKTtcblxuICAgICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmOm50aC1jaGlsZCgzKSB7XG4gICAgICAgICN7JHRoaXN9LWFydGljbGUge1xuICAgICAgICAgICZfX2ltYWdlLS13cmFwcGVyIHtcbiAgICAgICAgICAgIGFzcGVjdC1yYXRpbzogNCAvIDU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgI3skdGhpc31fX3RpdGxlIHtcbiAgICAgICAgICBAaW5jbHVkZSBoZWFkaW5nKFwiaDVcIiwgXCJtZWRpdW1cIik7XG5cbiAgICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmX19pbWFnZSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuXG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKFwiZGVza3RvcC1zbWFsbFwiKSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgaW5zZXQ6IDA7XG4gICAgICB9XG5cbiAgICAgICYtLXdyYXBwZXIge1xuICAgICAgICBmbGV4OiAxO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIG1heC1oZWlnaHQ6IGNsYW1wKFxuICAgICAgICAgIHZhcigtLXNwYWNpbmctNTAwKSxcbiAgICAgICAgICA1MGR2dyxcbiAgICAgICAgICB2YXIoLS1tYXgtaGVpZ2h0LWltYWdlLW5ld3MpXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJl9fY29udGVudCB7XG4gICAgICBmbGV4OiAxO1xuICAgIH1cblxuICAgICZfX3N1bW1hcnkge1xuICAgICAgQGluY2x1ZGUgdGV4dChcIm1kXCIpO1xuXG4gICAgICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjaW5nLTA3NSk7XG4gICAgICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtZ3JheSk7XG4gICAgfVxuICB9XG5cbiAgJi1hcnRpY2xlLXBhZ2Uge1xuICAgICZfX2ltYWdlIHtcbiAgICAgICYtLXdyYXBwZXIge1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctMTAwKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmX190ZXh0IHtcbiAgICAgIEBpbmNsdWRlIHRleHQoXCJtZFwiKTtcblxuICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWdyYXkpO1xuICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy0yMDApO1xuICAgIH1cbiAgfVxuXG4gICYtcHJlc3Mge1xuICAgICZfX3N1bW1hcnkge1xuICAgICAgQGluY2x1ZGUgdGV4dChcIm1kXCIpO1xuICAgICAgQGluY2x1ZGUgdHJ1bmNhdGUtbGluZXMoNSk7XG5cbiAgICAgIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmctMDc1KTtcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ncmF5KTtcbiAgICB9XG4gIH1cblxuICAmLWNvbXBldGl0aW9ucyB7XG4gICAgJl9fbGlzdCB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tc3BhY2luZy0xMDApO1xuICAgIH1cblxuICAgICZfX2l0ZW0ge1xuICAgICAgcGFkZGluZy1ib3R0b206IHZhcigtLXNwYWNpbmctMzAwKTtcbiAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctMjAwKTtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1jb2xvci1kYXJrKTtcbiAgICB9XG5cbiAgICAmX19zdW1tYXJ5IHtcbiAgICAgIEBpbmNsdWRlIHRleHQoXCJtZFwiKTtcbiAgICAgIEBpbmNsdWRlIHRydW5jYXRlLWxpbmVzKDMpO1xuXG4gICAgICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjaW5nLTA3NSk7XG4gICAgICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtZ3JheSk7XG4gICAgfVxuICB9XG59XG4iLCJAbWl4aW4gdHJ1bmNhdGUtbGluZXMoJGxpbmVzOiA1KSB7XG4gIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICAtd2Via2l0LWxpbmUtY2xhbXA6ICRsaW5lcztcbiAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG59XG4iLCIvKipcbiAqIE5ld3NsZXR0ZXJcbiAqIEdyb3VwOiBDb21wb25lbnRzXG4gKi9cblxuQHVzZSBcIi4uLzAyLXRvb2xzL3R5cG9ncmFwaHlcIiBhcyAqO1xuQHVzZSBcIi4uLzAyLXRvb2xzL2JyZWFrcG9pbnRzXCIgYXMgKjtcbkB1c2UgXCIuLi8wMi10b29scy9idXR0b25zXCIgYXMgKjtcbkB1c2UgXCIuLi8wMi10b29scy9pbnB1dFwiIGFzICo7XG5AdXNlIFwiLi4vMDItdG9vbHMvcGxhY2Vob2xkZXJcIiBhcyAqO1xuXG4uYy1uZXdzbGV0dGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG4gIHBhZGRpbmctYmxvY2s6IHZhcigtLXNwYWNpbmctNTAwKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0KTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICZfX3RpdGxlIHtcbiAgICBAaW5jbHVkZSBoZWFkaW5nKFwiaDJcIik7XG5cbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLTEwMCk7XG4gIH1cblxuICAmX19kZXNjcmlwdGlvbiB7XG4gICAgQGluY2x1ZGUgdGV4dChcInNtXCIpO1xuXG4gICAgbWF4LXdpZHRoOiB2YXIoLS1tYXgtd2lkdGgtLTR4cyk7XG4gICAgbWFyZ2luLWlubGluZTogYXV0bztcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLTIwMCk7XG4gIH1cblxuICAmX19mb3JtIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGdhcDogdmFyKC0tc3BhY2luZy0yNTApO1xuICAgIHdpZHRoOiBtYXgtY29udGVudDtcbiAgICBtYXJnaW4taW5saW5lOiBhdXRvO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChcInRhYmxldFwiKSB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgZ2FwOiB2YXIoLS1zcGFjaW5nLTA3NSk7XG4gICAgfVxuXG4gICAgLmZpZWxkLXZhbGlkYXRpb24tZXJyb3Ige1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAxMDAlO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBoZWlnaHQ6IHZhcigtLXNwYWNpbmctMzAwKTtcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1kYXJrLXJlZCk7XG4gICAgICBsaW5lLWhlaWdodDogdmFyKC0tYm9keS1saW5lLWhlaWdodCk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1yZWQtc2VtaS10cmFuc3BhcmVudCk7XG4gICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLWwpO1xuICAgICAgcGFkZGluZzogdmFyKC0tc3BhY2luZy0xMDApO1xuICAgICAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2luZy0wNTApO1xuICAgIH1cbiAgfVxuXG4gICZfX2lucHV0IHtcbiAgICBAaW5jbHVkZSBidXR0b24tc2l6ZShcInN0YXRpY1wiKTtcbiAgICBAaW5jbHVkZSBpbnB1dC1kZWZhdWx0KFwibmV3c2xldHRlclwiKTtcblxuICAgIGlucHV0IHtcbiAgICAgIEBpbmNsdWRlIHBsYWNlaG9sZGVyIHtcbiAgICAgICAgQGluY2x1ZGUgdGV4dChcIm1kXCIsIFwiYm9sZFwiKTtcblxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmX19idXR0b24ge1xuICAgIEBpbmNsdWRlIGJ1dHRvbjtcbiAgICBAaW5jbHVkZSBidXR0b24tc2l6ZShcInN0YXRpY1wiKTtcbiAgICBAaW5jbHVkZSBidXR0b24tc3R5bGUoXCJwcmltYXJ5XCIpO1xuICB9XG59XG4iLCIvKipcbiAqIE5vdCBGb3VuZCBQYWdlIDQwNFxuICogR3JvdXA6IENvbXBvbmVudHNcbiAqL1xuXG5AdXNlIFwiLi4vMDItdG9vbHMvYnJlYWtwb2ludHNcIiBhcyAqO1xuQHVzZSBcIi4uLzAyLXRvb2xzL3R5cG9ncmFwaHlcIiBhcyAqO1xuQHVzZSBcIi4uLzAyLXRvb2xzL2J1dHRvbnNcIiBhcyAqO1xuXG4uYy1ub3QtZm91bmQge1xuICAkdGhpczogJjtcblxuICAmLS1sYXlvdXQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG5cbiAgJl9fdGl0bGUge1xuICAgIEBpbmNsdWRlIGhlYWRpbmcoXCJoMlwiKTtcblxuICAgIGZvbnQtc2l6ZTogOS41cmVtO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gIH1cblxuICAmX190ZXh0IHtcbiAgICBAaW5jbHVkZSB0ZXh0KFwic21cIik7XG5cbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cblxuICAmX19iYWNrLXRvLWhvbWUge1xuICAgIEBpbmNsdWRlIGJ1dHRvbjtcbiAgICBAaW5jbHVkZSBidXR0b24tc2l6ZShcInN0YXRpY1wiKTtcbiAgICBAaW5jbHVkZSBidXR0b24tc3R5bGUoXCJwcmltYXJ5XCIpO1xuXG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2luZy0yNTApO1xuICB9XG59XG4iLCIvKipcbiAqIFBhZ2UgQmFubmVyXG4gKiBHcm91cDogQ29tcG9uZW50c1xuICovXG5cbkB1c2UgXCIuLi8wMi10b29scy90eXBvZ3JhcGh5XCIgYXMgKjtcbkB1c2UgXCIuLi8wMi10b29scy9icmVha3BvaW50c1wiIGFzICo7XG5cbi5jLXBhZ2UtYmFubmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG4gIHBhZGRpbmctYmxvY2s6IHZhcigtLXNwYWNpbmctMjAwKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0KTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBib3JkZXItYm90dG9tOiA1cHggc29saWQgdmFyKC0tY29sb3ItYnJhbmQtb3JhbmdlKTtcblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKFwidGFibGV0XCIpIHtcbiAgICBwYWRkaW5nLWJsb2NrOiB2YXIoLS1zcGFjaW5nLTQwMCk7XG4gIH1cblxuICAmX190aXRsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy0xNTApO1xuICB9XG59XG4iLCIvKipcbiAqIFBERiBWaWV3ZXJcbiAqIEdyb3VwOiBDb21wb25lbnRzXG4gKi9cblxuQHVzZSBcIi4uLzAyLXRvb2xzL2JyZWFrcG9pbnRzXCIgYXMgKjtcbkB1c2UgXCIuLi8wMi10b29scy90eXBvZ3JhcGh5XCIgYXMgKjtcbkB1c2UgXCIuLi8wMi10b29scy9idXR0b25zXCIgYXMgKjtcblxuLmMtcGRmLXZpZXdlciB7XG4gIGNhbnZhcyB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXNwYWNpbmctMjAwKTtcbiAgICBib3JkZXI6IDRweCBzb2xpZCB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcbiAgICBtYXJnaW4tYmxvY2s6IHZhcigtLXNwYWNpbmctMjAwKTtcbiAgfVxuXG4gICZfX25hdiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIG1heC13aWR0aDogOTAwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy0yMDApO1xuICB9XG5cbiAgJl9fbmF2LXRleHQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LW1lZGl1bSk7XG4gICAgbWFyZ2luLWlubGluZTogdmFyKC0tc3BhY2luZy0xNTApO1xuICB9XG5cbiAgJl9fbmF2LWJ1dHRvbiB7XG4gICAgQGluY2x1ZGUgYnV0dG9uO1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1zdHlsZShcInNlY29uZGFyeVwiKTtcbiAgfVxufVxuIiwiLyoqXG4gKiBRdW90ZVxuICogR3JvdXA6IENvbXBvbmVudHNcbiAqL1xuXG5AdXNlIFwiLi4vMDItdG9vbHMvdHlwb2dyYXBoeVwiIGFzICo7XG5AdXNlIFwiLi4vMDItdG9vbHMvYnJlYWtwb2ludHNcIiBhcyAqO1xuXG4uYy1xdW90ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItbGlnaHQpO1xuXG4gICYtLWxheW91dCB7XG4gICAgbWF4LXdpZHRoOiA0Ny41cmVtO1xuICAgIG1hcmdpbi1pbmxpbmU6IGF1dG87XG4gIH1cblxuICAmX190ZXh0IHtcbiAgICBAaW5jbHVkZSBoZWFkaW5nKFwiaDJcIik7XG5cbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgYm9yZGVyLWxlZnQ6IDRweCBzb2xpZCB2YXIoLS1jb2xvci1icmFuZC1vcmFuZ2UpO1xuICAgIHBhZGRpbmctbGVmdDogdmFyKC0tc3BhY2luZy0xNTApO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChcInRhYmxldFwiKSB7XG4gICAgICBmb250LXNpemU6IDNyZW07XG4gICAgfVxuICB9XG5cbiAgJl9fYXV0aG9yIHtcbiAgICBAaW5jbHVkZSB0ZXh0KFwibWRcIik7XG5cbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjaW5nLTA1MCk7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwi4oCUIFwiO1xuICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLTAyNSk7XG4gICAgfVxuICB9XG59XG4iLCIvKipcbiAqIFNpZGViYXJcbiAqIEdyb3VwOiBDb21wb25lbnRzXG4gKi9cblxuQHVzZSBcIi4uLzAyLXRvb2xzL3R5cG9ncmFwaHlcIiBhcyAqO1xuXG4uYy1zaWRlYmFyIHtcbiAgJHRoaXM6ICY7XG5cbiAgJl9fbGlzdCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGdhcDogdmFyKC0tc3BhY2luZy0xNTApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtbSk7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0KTtcbiAgICBwYWRkaW5nLWJsb2NrOiB2YXIoLS1zcGFjaW5nLTEyNSk7XG4gICAgcGFkZGluZy1pbmxpbmU6IHZhcigtLXNwYWNpbmctMTUwKTtcblxuICAgICYtaXRlbSB7XG4gICAgICBAaW5jbHVkZSB0ZXh0KFwibWRcIik7XG5cbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1vcmFuZ2UpO1xuICAgICAgfVxuXG4gICAgICAmW2FyaWEtY3VycmVudD1cInBhZ2VcIl0ge1xuICAgICAgICBib3JkZXItbGVmdDogM3B4IHNvbGlkIHZhcigtLWNvbG9yLWJyYW5kLW9yYW5nZSk7XG4gICAgICAgIHBhZGRpbmctbGVmdDogdmFyKC0tc3BhY2luZy0wNTApO1xuICAgICAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi0tYm94ZXMge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBnYXA6IHZhcigtLXNwYWNpbmctMTUwKTtcbiAgICB9XG4gIH1cblxuICAmX190aXRsZSB7XG4gICAgQGluY2x1ZGUgaGVhZGluZyhcImgyXCIpO1xuXG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy0xNTApO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1zcGFjaW5nLTAyNSk7XG4gICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkIHZhcigtLWNvbG9yLWJyYW5kLWRhcmstZ3JheSk7XG4gIH1cbn1cbiIsIi8qKlxuICogVGV4dFxuICogR3JvdXA6IENvbXBvbmVudHNcbiAqL1xuXG5AdXNlIFwiLi4vMDItdG9vbHMvdHlwb2dyYXBoeVwiIGFzICo7XG5cbi5jLXRleHQge1xuICAkdGhpczogJjtcblxuICAmX190aXRsZSB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWRhcmstZ3JheSk7XG4gIH1cblxuICAmX19jb250ZW50IHtcbiAgICBAaW5jbHVkZSB0ZXh0KFwibWRcIik7XG5cbiAgICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtZ3JheSk7XG5cbiAgICBhIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICB9XG4gIH1cbn1cbiIsIi8qKlxuICogVGlja2V0IExpbmtcbiAqIEdyb3VwOiBDb21wb25lbnRzXG4gKi9cblxuQHVzZSBcIi4uLzAyLXRvb2xzL2J1dHRvbnNcIiBhcyAqO1xuXG4uYy10aWNrZXQtbGluayB7XG4gICR0aGlzOiAmO1xuXG4gICYtLWxheW91dCB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBwbGFjZS1pdGVtczogY2VudGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWxpZ2h0LWdyYXkpO1xuICAgIHBhZGRpbmctYmxvY2s6IHZhcigtLXNwYWNpbmctNDAwKTtcbiAgICBwYWRkaW5nLWlubGluZTogdmFyKC0tc3BhY2luZy0xMDApO1xuICB9XG5cbiAgJl9fYnV0dG9uLWxpbmsge1xuICAgIEBpbmNsdWRlIGJ1dHRvbjtcbiAgICBAaW5jbHVkZSBidXR0b24tc2l6ZShcImxnXCIpO1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1zdHlsZShcInByaW1hcnlcIik7XG4gIH1cbn1cbiIsIi8qKlxuICogVHJlZVxuICogR3JvdXA6IENvbXBvbmVudHNcbiAqL1xuXG5AdXNlIFwiLi4vMDItdG9vbHMvdHlwb2dyYXBoeVwiIGFzICo7XG5AdXNlIFwiLi4vMDItdG9vbHMvYnJlYWtwb2ludHNcIiBhcyAqO1xuQHVzZSBcIi4uLzAyLXRvb2xzL2J1dHRvbnNcIiBhcyAqO1xuXG4uYy10cmVlIHtcbiAgJHRoaXM6ICY7XG5cbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICZfX2xpc3Qge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKC0tc3BhY2luZy0yMDApO1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1zcGFjaW5nLTA3NSk7XG4gICAgbWFyZ2luLWJsb2NrOiB2YXIoLS1zcGFjaW5nLTEwMCk7XG4gICAgdHJhbnNpdGlvbjogaGVpZ2h0IHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0O1xuXG4gICAgJjpub3QoOm50aC1jaGlsZCgxKSkge1xuICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1icmFuZC1kYXJrLWdyYXkpO1xuICAgIH1cblxuICAgICYtaXRlbSB7XG4gICAgICBAaW5jbHVkZSB0ZXh0KFwibWRcIik7XG5cbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1kYXJrLWdyYXkpO1xuICAgICAgbWFyZ2luLWJsb2NrOiB2YXIoLS1zcGFjaW5nLTEwMCk7XG4gICAgfVxuXG4gICAgJl9faWNvbi1maWxlLFxuICAgICZfX2ljb24tZm9sZGVyIHtcbiAgICAgIHdpZHRoOiB2YXIoLS1pY29uLW1zKTtcbiAgICAgIG1heC1oZWlnaHQ6IHZhcigtLWljb24tbXMpO1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXNwYWNpbmctMDUwKTtcbiAgICAgIGZsZXg6IDEgMCBhdXRvO1xuICAgIH1cblxuICAgICZfX3RvZ2dsZXIge1xuICAgICAgQGluY2x1ZGUgYnV0dG9uO1xuICAgICAgQGluY2x1ZGUgYnV0dG9uLXNpemUoXCJzbVwiKTtcblxuICAgICAgJi1pY29uIHtcbiAgICAgICAgd2lkdGg6IHZhcigtLWljb24tbXMpO1xuICAgICAgICBtYXgtaGVpZ2h0OiB2YXIoLS1pY29uLW1zKTtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0O1xuICAgICAgfVxuXG4gICAgICAmW2FyaWEtZXhwYW5kZWQ9XCJ0cnVlXCJdIHtcbiAgICAgICAgPiAjeyR0aGlzfV9fbGlzdF9fdG9nZ2xlci1pY29uIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJl9fdG9nZ2xlciArICN7JHRoaXN9X19saXN0Om5vdCguaXMtb3BlbiksXG4gICAgJl9fdG9nZ2xlciB+ICN7JHRoaXN9X19saXN0Om5vdCguaXMtb3Blbikge1xuICAgICAgaGVpZ2h0OiAwO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgLmJ1dHRvbi1lZGl0LWl0ZW0tLXdyYXBwZXIge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luLWxlZnQ6IHZhcigtLXNwYWNpbmctMDUwKTtcbiAgICB9XG5cbiAgICAmLmlzLW9wZW4ge1xuICAgICAgYW5pbWF0aW9uOiBmYWRlLWluIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0O1xuICAgIH1cbiAgfVxuXG4gICZfX3NpZGViYXIge1xuICAgIGZsZXg6IG5vbmU7XG4gIH1cblxuICAmX19idXR0b24ge1xuICAgIEBpbmNsdWRlIGJ1dHRvbjtcblxuICAgIHBhZGRpbmc6IDA7XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLW9yYW5nZSk7XG4gICAgfVxuICB9XG5cbiAgLmMtc2lkZWJhciB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChcImRlc2t0b3Atc21hbGxcIikge1xuICAgICAgcG9zaXRpb246IHN0aWNreTtcbiAgICAgIHRvcDogNSU7XG4gICAgfVxuICB9XG59XG4iLCIvKipcbiAqIE1haW5cbiAqIEdyb3VwOiBVdGlsaXRpZXNcbiAqL1xuXG5AZm9yd2FyZCBcImExMXlcIjtcbkBmb3J3YXJkIFwiYmFja2dyb3VuZC1jb2xvclwiO1xuQGZvcndhcmQgXCJib3JkZXJcIjtcbkBmb3J3YXJkIFwiY2xlYXJmaXhcIjtcbkBmb3J3YXJkIFwiY29sb3JcIjtcbkBmb3J3YXJkIFwiY29va2llcy1jb2xvcnNcIjtcbkBmb3J3YXJkIFwiZGlzcGxheVwiO1xuQGZvcndhcmQgXCJpY29uXCI7XG5AZm9yd2FyZCBcImxvYWRpbmdcIjtcbkBmb3J3YXJkIFwibWFyZ2luXCI7XG5AZm9yd2FyZCBcIm9wYWNpdHlcIjtcbkBmb3J3YXJkIFwicGFkZGluZ1wiO1xuQGZvcndhcmQgXCJzaXplXCI7XG5AZm9yd2FyZCBcInNwYWNpbmdcIjtcbkBmb3J3YXJkIFwidHlwb2dyYXBoeVwiO1xuQGZvcndhcmQgXCJkZWJ1Z1wiO1xuIiwiLyoqXG4gKiBBMTF5XG4gKiBHcm91cDogVXRpbGl0aWVzXG4gKi9cblxuLyoqXG4gKiBIaWRlIG9ubHkgdmlzdWFsbHksIGJ1dCBoYXZlIGl0IGF2YWlsYWJsZSBmb3Igc2NyZWVuIHJlYWRlcnM6XG4gKiBodHRwOi8vc25vb2suY2EvYXJjaGl2ZXMvaHRtbF9hbmRfY3NzL2hpZGluZy1jb250ZW50LWZvci1hY2Nlc3NpYmlsaXR5XG4gKi9cblxuQHVzZSBcIi4uLzAyLXRvb2xzL2hpZGRlblwiIGFzICo7XG5AdXNlIFwiLi4vMDItdG9vbHMvYTExeVwiIGFzICo7XG5cbi51LXNyLFxuLnNjcmVlbi1yZWFkZXItdGV4dCB7XG4gIEBpbmNsdWRlIGhpZGRlbi12aXN1YWxseTtcbn1cblxuLnUtc2tpcC1saW5rIHtcbiAgQGluY2x1ZGUgc2tpcC1saW5rO1xufVxuXG4ubW9iaWxlLW1lbnUtaXMtb3BlbiB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGhlaWdodDogMTAwJTtcblxuICAmOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kOiByZ2IoMCAwIDAgLyA1MCUpO1xuICAgIHotaW5kZXg6IDk5O1xuICAgIGJhY2tkcm9wLWZpbHRlcjogYmx1cih2YXIoLS1zcGFjaW5nLTA1MCkpO1xuICB9XG59XG4iLCIvKipcbiAqIEJhY2tncm91bmQgQ29sb3JcbiAqIEdyb3VwOiBVdGlsaXRpZXNcbiAqL1xuXG5AdXNlIFwiLi4vMDEtc2V0dGluZ3MvdmFyaWFibGVzXCIgYXMgKjtcblxuLnUtYmctY29sb3Ige1xuICBAZWFjaCAkbmFtZSwgJGNvbG9yIGluICRjb2xvcnMge1xuICAgICYtI3skbmFtZX0ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItI3skbmFtZX0pO1xuICAgIH1cbiAgfVxufVxuIiwiLyoqXG4gKiBCYWNrZ3JvdW5kXG4gKiBHcm91cDogVXRpbGl0aWVzXG4gKi9cblxuLnUtYnItdCB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCBjdXJyZW50Y29sb3I7XG59XG5cbi51LWJyLWIge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgY3VycmVudGNvbG9yO1xufVxuXG4udS1ici1sIHtcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCBjdXJyZW50Y29sb3I7XG59XG5cbi51LWJyLXIge1xuICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCBjdXJyZW50Y29sb3I7XG59XG5cbi51LWJyYy1ncmF5LTUwIHtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1uZXV0cmFsLTUwKTtcbn1cbiIsIi8qKlxuICogQ2xlYXJmaXhcbiAqIEdyb3VwOiBVdGlsaXRpZXNcbiAqL1xuXG5AdXNlIFwiLi4vMDItdG9vbHMvY2xlYXJmaXhcIiBhcyAqO1xuXG4udS1jbGVhcmZpeCB7XG4gIEBpbmNsdWRlIGNsZWFyZml4O1xufVxuIiwiLyoqXG4gKiBDb2xvclxuICogR3JvdXA6IFV0aWxpdGllc1xuICovXG5cbkB1c2UgXCIuLi8wMS1zZXR0aW5ncy92YXJpYWJsZXNcIiBhcyAqO1xuXG4udS1jb2xvciB7XG4gIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGNvbG9ycyB7XG4gICAgJi0jeyRuYW1lfSB7XG4gICAgICBjb2xvcjogdmFyKC0tY29sb3ItI3skbmFtZX0pO1xuICAgIH1cbiAgfVxufVxuIiwiLyoqXG4gKiBDb29raWVzIENvbG9yc1xuICogR3JvdXA6IFV0aWxpdGllc1xuICovXG5cbkB1c2UgXCJzYXNzOnN0cmluZ1wiO1xuQHVzZSBcIi4uLzAxLXNldHRpbmdzL3ZhcmlhYmxlc1wiIGFzICo7XG5cbkBlYWNoICRjb2xvciBpbiAkY29va2llcy1jb2xvcnMge1xuICAuYnRuLWJnY29sb3ItI3skY29sb3J9IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBzdHJpbmcudW5xdW90ZShcIiNcIiArICRjb2xvcik7XG4gIH1cblxuICAuYnRuLXRleHRjb2xvci0jeyRjb2xvcn0ge1xuICAgIGNvbG9yOiBzdHJpbmcudW5xdW90ZShcIiNcIiArICRjb2xvcik7XG4gIH1cblxuICAuY29va2llcy1iZ2NvbG9yLSN7JGNvbG9yfSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogc3RyaW5nLnVucXVvdGUoXCIjXCIgKyAkY29sb3IpO1xuICB9XG59XG4iLCIvKipcbiAqIERpc3BsYXlcbiAqIEdyb3VwOiBVdGlsaXRpZXNcbiAqL1xuXG4udS1oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi51LWQtZmxleCB7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG5cbi51LWQtYmxvY2sge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLnUtZC1pbmxpbmUtYmxvY2sge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi51LXBvcy1yZWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi51LW92ZXJmbG93LWgge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uaXMtdW5pbml0aWFsaXplZCB7XG4gIG9wYWNpdHk6IDA7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuIiwiLyoqXG4gKiBJY29uXG4gKiBHcm91cDogVXRpbGl0aWVzXG4gKi9cblxuW2NsYXNzKj1cInUtaWNvblwiXSB7XG4gIHdpZHRoOiBhdXRvO1xufVxuXG4vKiBpY29uIHNpemUgKi9cbi51LWljb24teHMge1xuICBmb250LXNpemU6IHZhcigtLWljb24teHMpO1xuICBoZWlnaHQ6IHZhcigtLWljb24teHMpO1xuICBtaW4td2lkdGg6IHZhcigtLWljb24teHMpO1xufVxuXG4udS1pY29uLXNtIHtcbiAgZm9udC1zaXplOiB2YXIoLS1pY29uLXNtKTtcbiAgaGVpZ2h0OiB2YXIoLS1pY29uLXNtKTtcbiAgbWluLXdpZHRoOiB2YXIoLS1pY29uLXNtKTtcbn1cblxuLnUtaWNvbi1tZCB7XG4gIGZvbnQtc2l6ZTogdmFyKC0taWNvbi1tZCk7XG4gIGhlaWdodDogdmFyKC0taWNvbi1tZCk7XG4gIG1pbi13aWR0aDogdmFyKC0taWNvbi1tZCk7XG59XG5cbi51LWljb24tbGcge1xuICBmb250LXNpemU6IHZhcigtLWljb24tbGcpO1xuICBoZWlnaHQ6IHZhcigtLWljb24tbGcpO1xuICBtaW4td2lkdGg6IHZhcigtLWljb24tbGcpO1xufVxuXG4udS1pY29uLXhsIHtcbiAgZm9udC1zaXplOiB2YXIoLS1pY29uLXhsKTtcbiAgaGVpZ2h0OiB2YXIoLS1pY29uLXhsKTtcbiAgbWluLXdpZHRoOiB2YXIoLS1pY29uLXhsKTtcbn1cblxuLnUtaWNvbi0yeGwge1xuICBmb250LXNpemU6IHZhcigtLWljb24tMnhsKTtcbiAgaGVpZ2h0OiB2YXIoLS1pY29uLTJ4bCk7XG4gIG1pbi13aWR0aDogdmFyKC0taWNvbi0yeGwpO1xufVxuXG4udS1pY29uLTN4bCB7XG4gIGZvbnQtc2l6ZTogdmFyKC0taWNvbi0zeGwpO1xuICBoZWlnaHQ6IHZhcigtLWljb24tM3hsKTtcbiAgbWluLXdpZHRoOiB2YXIoLS1pY29uLTN4bCk7XG59XG5cbi51LWljb24tNHhsIHtcbiAgZm9udC1zaXplOiB2YXIoLS1pY29uLTR4bCk7XG4gIGhlaWdodDogdmFyKC0taWNvbi00eGwpO1xuICBtaW4td2lkdGg6IHZhcigtLWljb24tNHhsKTtcbn1cblxuLnUtaWNvbi0tcm91bmRlZCB7XG4gIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4iLCIvKipcbiAqIExvYWRpbmdcbiAqIEdyb3VwOiBVdGlsaXRpZXNcbiAqL1xuXG4udS1pcy1sb2FkaW5nIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvcGFjaXR5OiAwLjc7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0O1xufVxuXG4udS1pcy1sb2FkaW5nOjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgd2lkdGg6IDMwcHg7XG4gIGhlaWdodDogMzBweDtcbiAgbWFyZ2luOiAtMTVweCAwIDAgLTE1cHg7XG4gIGJvcmRlcjogM3B4IHNvbGlkIHJnYig2NSAxMTkgMTc1IC8gMzAlKTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBib3JkZXItdG9wLWNvbG9yOiAjNDE3N2FmO1xuICBhbmltYXRpb246IHNwaW4gdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbi1zbG93KSBlYXNlLWluLW91dCBpbmZpbml0ZTtcbn1cbiIsIi8qKlxuICogTWFyZ2luXG4gKiBHcm91cDogVXRpbGl0aWVzXG4gKi9cblxuLyogWmVybyBtYXJnaW5zICovXG4udS1tLTAge1xuICBtYXJnaW46IDA7XG59XG5cbi51LW1iLTAge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4udS1tdC0wIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cblxuLnUtbWwtMCB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuXG4udS1tci0wIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xufVxuXG4vKiBBdXRvIG1hcmdpbnMgKi9cbi51LW1sLWF1dG8ge1xuICBtYXJnaW4tbGVmdDogYXV0bztcbn1cblxuLnUtbXItYXV0byB7XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbn1cblxuLnUtbXQtYXV0byB7XG4gIG1hcmdpbi10b3A6IGF1dG87XG59XG5cbi51LW1iLWF1dG8ge1xuICBtYXJnaW4tYm90dG9tOiBhdXRvO1xufVxuXG4vKiBWZXJ0aWNhbCBtYXJnaW5zICovXG4udS1tYmwtMTAwIHtcbiAgbWFyZ2luLWJsb2NrOiB2YXIoLS1zcGFjaW5nLTEwMCk7XG59XG5cbi51LW10LFxuLnUtbXQtbWQge1xuICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjZS1tZCk7XG59XG5cbi51LW10LXhzIHtcbiAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2UteHMpO1xufVxuXG4udS1tdC1zbSB7XG4gIG1hcmdpbi10b3A6IHZhcigtLXNwYWNlLXNtKTtcbn1cblxuLnUtbXQtbGcge1xuICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjZS1sZyk7XG59XG5cbi51LW10LXhsIHtcbiAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2UteGwpO1xufVxuXG4udS1tdC0yeGwge1xuICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjZS0yeGwpO1xufVxuXG4udS1tdC0zeGwge1xuICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjZS0zeGwpO1xufVxuXG4udS1tdC00eGwge1xuICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjZS00eGwpO1xufVxuXG4udS1tdC0yMDAge1xuICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjaW5nLTIwMCk7XG59XG5cbi51LW1iLTIwMCB7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctMjAwKTtcbn1cblxuLnUtbWIsXG4udS1tYi1tZCB7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNlLW1kKTtcbn1cblxuLnUtbWIteHMge1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjZS14cyk7XG59XG5cbi51LW1iLXNtIHtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2Utc20pO1xufVxuXG4udS1tYi1sZyB7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNlLWxnKTtcbn1cblxuLnUtbWIteGwge1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjZS14bCk7XG59XG5cbi51LW1iLTJ4bCB7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNlLTJ4bCk7XG59XG5cbi51LW1iLTN4bCB7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNlLTN4bCk7XG59XG5cbi51LW1iLTR4bCB7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNlLTR4bCk7XG59XG5cbi8qIEhvcml6b250YWwgbWFyZ2lucyAqL1xuLnUtbWwsXG4udS1tbC1tZCB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoLS1zcGFjZS1tZCk7XG59XG5cbi51LW1sLXhzIHtcbiAgbWFyZ2luLWxlZnQ6IHZhcigtLXNwYWNlLXhzKTtcbn1cblxuLnUtbWwtc20ge1xuICBtYXJnaW4tbGVmdDogdmFyKC0tc3BhY2Utc20pO1xufVxuXG4udS1tbC1sZyB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoLS1zcGFjZS1sZyk7XG59XG5cbi51LW1sLXhsIHtcbiAgbWFyZ2luLWxlZnQ6IHZhcigtLXNwYWNlLXhsKTtcbn1cblxuLnUtbWwtMnhsIHtcbiAgbWFyZ2luLWxlZnQ6IHZhcigtLXNwYWNlLTJ4bCk7XG59XG5cbi51LW1sLTN4bCB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoLS1zcGFjZS0zeGwpO1xufVxuXG4udS1tbC00eGwge1xuICBtYXJnaW4tbGVmdDogdmFyKC0tc3BhY2UtNHhsKTtcbn1cblxuLnUtbXIsXG4udS1tci1tZCB7XG4gIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2UtbWQpO1xufVxuXG4udS1tci14cyB7XG4gIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2UteHMpO1xufVxuXG4udS1tci1zbSB7XG4gIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2Utc20pO1xufVxuXG4udS1tci1sZyB7XG4gIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2UtbGcpO1xufVxuXG4udS1tci14bCB7XG4gIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2UteGwpO1xufVxuXG4udS1tci0yeGwge1xuICBtYXJnaW4tcmlnaHQ6IHZhcigtLXNwYWNlLTJ4bCk7XG59XG5cbi51LW1yLTN4bCB7XG4gIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2UtM3hsKTtcbn1cblxuLnUtbXItNHhsIHtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjZS00eGwpO1xufVxuIiwiLyoqXG4gKiBPcGFjaXR5XG4gKiBHcm91cDogVXRpbGl0aWVzXG4gKi9cblxuLnUtb3BhY2l0eS01IHtcbiAgLS1vcGFjaXR5OiAwLjA1O1xufVxuXG4udS1vcGFjaXR5LTEwIHtcbiAgLS1vcGFjaXR5OiAwLjE7XG59XG5cbi51LW9wYWNpdHktMTUge1xuICAtLW9wYWNpdHk6IDAuMTU7XG59XG5cbi51LW9wYWNpdHktMjAge1xuICAtLW9wYWNpdHk6IDAuMjtcbn1cblxuLnUtb3BhY2l0eS0yNSB7XG4gIC0tb3BhY2l0eTogMC4yNTtcbn1cblxuLnUtb3BhY2l0eS0zMCB7XG4gIC0tb3BhY2l0eTogMC4zO1xufVxuXG4udS1vcGFjaXR5LTM1IHtcbiAgLS1vcGFjaXR5OiAwLjM1O1xufVxuXG4udS1vcGFjaXR5LTQwIHtcbiAgLS1vcGFjaXR5OiAwLjQ7XG59XG5cbi51LW9wYWNpdHktNDUge1xuICAtLW9wYWNpdHk6IDAuNDU7XG59XG5cbi51LW9wYWNpdHktNTAge1xuICAtLW9wYWNpdHk6IDAuNTtcbn1cblxuLnUtb3BhY2l0eS01NSB7XG4gIC0tb3BhY2l0eTogMC41NTtcbn1cblxuLnUtb3BhY2l0eS02MCB7XG4gIC0tb3BhY2l0eTogMC42O1xufVxuXG4udS1vcGFjaXR5LTY1IHtcbiAgLS1vcGFjaXR5OiAwLjY1O1xufVxuXG4udS1vcGFjaXR5LTcwIHtcbiAgLS1vcGFjaXR5OiAwLjc7XG59XG5cbi51LW9wYWNpdHktNzUge1xuICAtLW9wYWNpdHk6IDAuNzU7XG59XG5cbi51LW9wYWNpdHktODAge1xuICAtLW9wYWNpdHk6IDAuODtcbn1cblxuLnUtb3BhY2l0eS04NSB7XG4gIC0tb3BhY2l0eTogMC44NTtcbn1cblxuLnUtb3BhY2l0eS05MCB7XG4gIC0tb3BhY2l0eTogMC45O1xufVxuXG4udS1vcGFjaXR5LTk1IHtcbiAgLS1vcGFjaXR5OiAwLjk1O1xufVxuXG4udS1vcGFjaXR5LTEwMCB7XG4gIC0tb3BhY2l0eTogMTtcbn1cbiIsIi8qKlxuICogUGFkZGluZ1xuICogR3JvdXA6IFV0aWxpdGllc1xuICovXG5cbi8qIFplcm8gcGFkZGluZ3MgKi9cbi51LXAtMCB7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi51LXB0LTAge1xuICBwYWRkaW5nLXRvcDogMDtcbn1cblxuLnUtcGItMCB7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xufVxuXG4udS1wbC0wIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xufVxuXG4udS1wci0wIHtcbiAgcGFkZGluZy1yaWdodDogMDtcbn1cblxuLyogVmVydGljYWwgcGFkZGluZ3MgKi9cbi51LXB0LFxuLnUtcHQtbWQge1xuICBwYWRkaW5nLXRvcDogdmFyKC0tc3BhY2UtbWQpO1xufVxuXG4udS1wdC14cyB7XG4gIHBhZGRpbmctdG9wOiB2YXIoLS1zcGFjZS14cyk7XG59XG5cbi51LXB0LXNtIHtcbiAgcGFkZGluZy10b3A6IHZhcigtLXNwYWNlLXNtKTtcbn1cblxuLnUtcHQtbGcge1xuICBwYWRkaW5nLXRvcDogdmFyKC0tc3BhY2UtbGcpO1xufVxuXG4udS1wdC14bCB7XG4gIHBhZGRpbmctdG9wOiB2YXIoLS1zcGFjZS14bCk7XG59XG5cbi51LXB0LTJ4bCB7XG4gIHBhZGRpbmctdG9wOiB2YXIoLS1zcGFjZS0yeGwpO1xufVxuXG4udS1wYixcbi51LXBiLW1kIHtcbiAgcGFkZGluZy1ib3R0b206IHZhcigtLXNwYWNlLW1kKTtcbn1cblxuLnUtcGIteHMge1xuICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tc3BhY2UteHMpO1xufVxuXG4udS1wYi1zbSB7XG4gIHBhZGRpbmctYm90dG9tOiB2YXIoLS1zcGFjZS1zbSk7XG59XG5cbi51LXBiLWxnIHtcbiAgcGFkZGluZy1ib3R0b206IHZhcigtLXNwYWNlLWxnKTtcbn1cblxuLnUtcGIteGwge1xuICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tc3BhY2UteGwpO1xufVxuXG4udS1wYi0yeGwge1xuICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tc3BhY2UtMnhsKTtcbn1cblxuLyogSG9yaXpvbnRhbCBwYWRkaW5ncyAqL1xuLnUtcGwsXG4udS1wbC1tZCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKC0tc3BhY2UtbWQpO1xufVxuXG4udS1wbC14cyB7XG4gIHBhZGRpbmctbGVmdDogdmFyKC0tc3BhY2UteHMpO1xufVxuXG4udS1wbC1zbSB7XG4gIHBhZGRpbmctbGVmdDogdmFyKC0tc3BhY2Utc20pO1xufVxuXG4udS1wbC1sZyB7XG4gIHBhZGRpbmctbGVmdDogdmFyKC0tc3BhY2UtbGcpO1xufVxuXG4udS1wbC14bCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKC0tc3BhY2UteGwpO1xufVxuXG4udS1wbC0yeGwge1xuICBwYWRkaW5nLWxlZnQ6IHZhcigtLXNwYWNlLTJ4bCk7XG59XG5cbi51LXByLFxuLnUtcHItbWQge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1zcGFjZS1tZCk7XG59XG5cbi51LXByLXhzIHtcbiAgcGFkZGluZy1yaWdodDogdmFyKC0tc3BhY2UteHMpO1xufVxuXG4udS1wci1zbSB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhcigtLXNwYWNlLXNtKTtcbn1cblxuLnUtcHItbGcge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1zcGFjZS1sZyk7XG59XG5cbi51LXByLXhsIHtcbiAgcGFkZGluZy1yaWdodDogdmFyKC0tc3BhY2UteGwpO1xufVxuXG4udS1wci0yeGwge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1zcGFjZS0yeGwpO1xufVxuIiwiLypcbiAqIFNpemVcbiAqIEdyb3VwOiBVdGlsaXRpZXNcbiAqL1xuXG4vKiBXaWR0aCBVdGlsaXRpZXMgKi9cbi51LW1pbi13MCB7XG4gIG1pbi13aWR0aDogMDtcbn1cblxuLnUtbWF4LXcwIHtcbiAgbWF4LXdpZHRoOiAwO1xufVxuXG4udS13MTAwIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi8qIEhlaWdodCBVdGlsaXRpZXMgKi9cbi51LW1pbi1oMCB7XG4gIG1pbi1oZWlnaHQ6IDA7XG59XG5cbi51LW1heC1oMCB7XG4gIG1heC1oZWlnaHQ6IDA7XG59XG5cbi51LWgxMDAge1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbi51LWZ1bGwtd2lkdGgge1xuICBtaW4td2lkdGg6IDEwMHZ3O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi1sZWZ0OiAtNTB2dztcbiAgbGVmdDogNTAlO1xufVxuIiwiLyoqXG4gKiBTcGFjZSBYXG4gKiBHcm91cDogVXRpbGl0aWVzXG4gKi9cblxuW2NsYXNzKj1cInUtc3BhY2UteFwiXSB7XG4gID4gKiB7XG4gICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcblxuICAgICsgKiB7XG4gICAgICBtYXJnaW4tbGVmdDogdmFyKC0tc3BhY2UtbWQpICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG5cbmJvZHkge1xuICAudS1zcGFjZS14LXNtID4gKiArICoge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1zcGFjZS1zbSkgIWltcG9ydGFudDtcbiAgfVxuXG4gIC51LXNwYWNlLXgtbGcgPiAqICsgKiB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhcigtLXNwYWNlLWxnKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnUtc3BhY2UteC14bCA+ICogKyAqIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKC0tc3BhY2UteGwpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudS1zcGFjZS14LTJ4bCA+ICogKyAqIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKC0tc3BhY2UtMnhsKSAhaW1wb3J0YW50O1xuICB9XG59XG4iLCIvKipcbiAqIFR5cG9ncmFwaHlcbiAqXG4gKiBHcm91cDogVXRpbGl0aWVzXG4gKi9cblxuQHVzZSBcIi4uLzAyLXRvb2xzL3R5cG9ncmFwaHlcIiBhcyAqO1xuXG4udS1mb250LXByaW1hcnkge1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1wcmltYXJ5KSAhaW1wb3J0YW50O1xuXG4gICoge1xuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LXByaW1hcnkpICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLyogRm9udCBUeXBlcyAqL1xuLnUtZm9udC1oZWFkbGluZSB7XG4gIEBpbmNsdWRlIGhlYWRpbmcoXCJoZWFkbGluZVwiKTtcbn1cblxuLnUtZm9udC1oMSB7XG4gIEBpbmNsdWRlIGhlYWRpbmcoXCJoMVwiKTtcbn1cblxuLnUtZm9udC1oMiB7XG4gIEBpbmNsdWRlIGhlYWRpbmcoXCJoMlwiKTtcbn1cblxuLnUtZm9udC1oMyB7XG4gIEBpbmNsdWRlIGhlYWRpbmcoXCJoM1wiKTtcbn1cblxuLnUtZm9udC1oNCB7XG4gIEBpbmNsdWRlIGhlYWRpbmcoXCJoNFwiKTtcbn1cblxuLnUtZm9udC1oNSB7XG4gIEBpbmNsdWRlIGhlYWRpbmcoXCJoNVwiKTtcbn1cblxuLnUtZm9udC1oNiB7XG4gIEBpbmNsdWRlIGhlYWRpbmcoXCJoNlwiKTtcbn1cblxuLnUtZm9udC1wIHtcbiAgQGluY2x1ZGUgdGV4dDtcbn1cblxuLnUtZm9udC14cyB7XG4gIEBpbmNsdWRlIHRleHQoXCJ4c1wiKTtcbn1cblxuLnUtZm9udC1zbSB7XG4gIEBpbmNsdWRlIHRleHQoXCJzbVwiKTtcbn1cblxuLnUtZm9udC1tZCB7XG4gIEBpbmNsdWRlIHRleHQoXCJtZFwiKTtcbn1cblxuLnUtZm9udC1sZyB7XG4gIEBpbmNsdWRlIHRleHQoXCJsZ1wiKTtcbn1cblxuLnUtZm9udC14bCB7XG4gIEBpbmNsdWRlIHRleHQoXCJ4bFwiKTtcbn1cblxuLyogRm9udCBTaXplcyAqL1xuLnUtZnotaGVhZGxpbmUge1xuICBAaW5jbHVkZSBoZWFkaW5nKFwiaGVhZGxpbmVcIik7XG59XG5cbi51LWZ6LWgxIHtcbiAgQGluY2x1ZGUgaGVhZGluZyhcImgxXCIpO1xufVxuXG4udS1mei1oMiB7XG4gIEBpbmNsdWRlIGhlYWRpbmcoXCJoMlwiKTtcbn1cblxuLnUtZnotaDMge1xuICBAaW5jbHVkZSBoZWFkaW5nKFwiaDNcIik7XG59XG5cbi51LWZ6LWg0IHtcbiAgQGluY2x1ZGUgaGVhZGluZyhcImg0XCIpO1xufVxuXG4udS1mei1oNSB7XG4gIEBpbmNsdWRlIGhlYWRpbmcoXCJoNVwiKTtcbn1cblxuLnUtZnotaDYge1xuICBAaW5jbHVkZSBoZWFkaW5nKFwiaDZcIik7XG59XG5cbi51LWZ6LXAge1xuICBAaW5jbHVkZSB0ZXh0O1xufVxuXG4udS1mei14cyB7XG4gIEBpbmNsdWRlIHRleHQoXCJ4c1wiKTtcbn1cblxuLnUtZnotc20ge1xuICBAaW5jbHVkZSB0ZXh0KFwic21cIik7XG59XG5cbi51LWZ6LW1kIHtcbiAgQGluY2x1ZGUgdGV4dChcIm1kXCIpO1xufVxuXG4udS1mei1sZyB7XG4gIEBpbmNsdWRlIHRleHQoXCJsZ1wiKTtcbn1cblxuLnUtZnoteGwge1xuICBAaW5jbHVkZSB0ZXh0KFwieGxcIik7XG59XG5cbi8qIFRleHQgYWxpZ25tZW50ICovXG4udS10YS1yaWdodCB7XG4gIHRleHQtYWxpZ246IHJpZ2h0ICFpbXBvcnRhbnQ7XG59XG5cbi51LXRhLWxlZnQge1xuICB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7XG59XG5cbi51LXRhLWNlbnRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50O1xufVxuXG4vKiBUZXh0IHRyYW5zZm9ybSAqL1xuLnUtdHQtdXAge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlICFpbXBvcnRhbnQ7XG59XG5cbi51LXR0LWNhcCB7XG4gIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplICFpbXBvcnRhbnQ7XG59XG5cbi8qIEZvbnQgd2VpZ2h0cyAqL1xuLnUtZnctbm9ybWFsIHtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbCAhaW1wb3J0YW50O1xufVxuXG4udS1mdy1ib2xkIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQgIWltcG9ydGFudDtcbn1cblxuLnUtZnctZXh0cmEtYm9sZCB7XG4gIGZvbnQtd2VpZ2h0OiA4MDAgIWltcG9ydGFudDtcbn1cblxuLnUtZnctYmxhY2sge1xuICBmb250LXdlaWdodDogOTAwICFpbXBvcnRhbnQ7XG59XG5cbi51LWZ3LTMwMCB7XG4gIGZvbnQtd2VpZ2h0OiAzMDAgIWltcG9ydGFudDtcbn1cblxuLnUtZnctNDAwIHtcbiAgZm9udC13ZWlnaHQ6IDQwMCAhaW1wb3J0YW50O1xufVxuXG4udS1mdy01MDAge1xuICBmb250LXdlaWdodDogNTAwICFpbXBvcnRhbnQ7XG59XG5cbi51LWZ3LTYwMCB7XG4gIGZvbnQtd2VpZ2h0OiA2MDAgIWltcG9ydGFudDtcbn1cblxuLnUtZnctNzAwIHtcbiAgZm9udC13ZWlnaHQ6IDcwMCAhaW1wb3J0YW50O1xufVxuXG4udS1mdy04MDAge1xuICBmb250LXdlaWdodDogODAwICFpbXBvcnRhbnQ7XG59XG5cbi51LWZ3LTkwMCB7XG4gIGZvbnQtd2VpZ2h0OiA5MDAgIWltcG9ydGFudDtcbn1cblxuLyogVHJ1bmNhdGUgdGV4dCAqL1xuLnUtdHJ1bmNhdGUge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLyogQnJlYWsgV29yZCAqL1xuLnUtYnJlYWstd29yZCB7XG4gIG92ZXJmbG93LXdyYXA6IGJyZWFrLXdvcmQ7XG4gIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG59XG5cbi8qIEhpZ2hsaWdodCB0ZXh0ICovXG4udS1oaWdobGlnaHQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1vcmFuZ2UpO1xufVxuXG4vKiBUZXh0IGRlY29yYXRpb24gKi9cbi51LXRkLW4ge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5oYXMtdGV4dC1hbGlnbi1jZW50ZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5oYXMtdGV4dC1hbGlnbi1yaWdodCB7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuIiwiLyoqXG4gKiBDU1MgRGVidWdcbiAqIEdyb3VwOiBTY29wZXNcbiAqL1xuXG4udS1jc3MtZGVidWcge1xuICAvKipcbiAgICogT3V0bGluZSBhbGwgY2xhc3Nlcy5cbiAgICovXG4gIFtjbGFzc10ge1xuICAgIG91dGxpbmU6IDVweCBzb2xpZCBsaWdodGdyZXk7XG4gIH1cblxuICAvKipcbiAgICogT3V0bGluZSBhbGwgQkVNIEVsZW1lbnRzLlxuICAgKi9cbiAgW2NsYXNzKj1cIl9fXCJdIHtcbiAgICBvdXRsaW5lOiA1cHggc29saWQgZ3JleTtcbiAgfVxuXG4gIC8qKlxuICAgKiBPdXRsaW5lIGFsbCBCRU0gTW9kaWZpZXJzLlxuICAgKi9cbiAgW2NsYXNzKj1cIi0tXCJdIHtcbiAgICBvdXRsaW5lOiA1cHggc29saWQgZGFya2dyZXk7XG4gIH1cblxuICAvKipcbiAgICogT3V0bGluZSBhbGwgT2JqZWN0IGNsYXNzZXMuXG4gICAqL1xuICBbY2xhc3NePVwiby1cIl0sXG4gIFtjbGFzcyo9XCJvLVwiXSB7XG4gICAgb3V0bGluZTogNXB4IHNvbGlkIG9yYW5nZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBPdXRsaW5lIGFsbCBDb21wb25lbnQgY2xhc3Nlcy5cbiAgICovXG4gIFtjbGFzc149XCJjLVwiXSxcbiAgW2NsYXNzKj1cIiBjLVwiXSB7XG4gICAgb3V0bGluZTogNXB4IHNvbGlkIGN5YW47XG4gIH1cblxuICAvKipcbiAgICogT3V0bGluZSBhbGwgUmVzcG9uc2l2ZSBjbGFzc2VzLlxuICAgKi9cbiAgW2NsYXNzKj1cIkBcIl0ge1xuICAgIG91dGxpbmU6IDVweCBzb2xpZCByb3N5YnJvd247XG4gIH1cblxuICAvKipcbiAgICogT3V0bGluZSBhbGwgSGFjayBjbGFzc2VzLlxuICAgKi9cbiAgW2NsYXNzXj1cIl9cIl0ge1xuICAgIG91dGxpbmU6IDVweCBzb2xpZCByZWQ7XG4gIH1cblxuICAvKiBIZWFkZXJzIG91dCBvZiBvcmRlciAqL1xuICA6aXMoaDIsIGgzLCBoNCwgaDUsIGg2KSB+IGgxLFxuICA6aXMoaDMsIGg0LCBoNSwgaDYpIH4gaDIsXG4gIDppcyhoNCwgaDUsIGg2KSB+IGgzLFxuICA6aXMoaDUsIGg2KSB+IGg0LFxuICBoNiB+IGg1IHtcbiAgICBvdXRsaW5lOiAycHggZG90dGVkIGJsdWU7XG4gIH1cblxuICAvKipcbiAgICogRGVidWdnaW5nIDxoZWFkPiBzdHlsZXMuXG4gICAqL1xuICBoZWFkIHtcbiAgICAtLWN0LWlzLXByb2JsZW1hdGljOiBzb2xpZDtcbiAgICAtLWN0LWlzLWFmZmVjdGVkOiBkYXNoZWQ7XG4gICAgLS1jdC1ub3RpZnk6ICMwYmNlNmI7XG4gICAgLS1jdC13YXJuOiAjZmZhNDAwO1xuICAgIC0tY3QtZXJyb3I6ICNmZjRlNDI7XG5cbiAgICBkaXNwbGF5OiBibG9jaztcblxuICAgIHNjcmlwdCxcbiAgICBzdHlsZSxcbiAgICBbcmVsPVwic3R5bGVzaGVldFwiXSxcbiAgICB0aXRsZSxcbiAgICBtZXRhW2NoYXJzZXRdOm5vdCg6bnRoLWNoaWxkKC1uICsgNSkpIHtcbiAgICAgIG1hcmdpbjogNXB4O1xuICAgICAgcGFkZGluZzogNXB4O1xuICAgICAgYm9yZGVyLXdpZHRoOiA1cHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICAgIGNvbG9yOiAjMzMzO1xuICAgIH1cblxuICAgIHNjcmlwdCxcbiAgICBzdHlsZSB7XG4gICAgICBmb250OiAxNnB4LzEuNSBtb25vc3BhY2U7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICBzY3JpcHQ6OmJlZm9yZSxcbiAgICBzdHlsZTo6YmVmb3JlIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBFeHRlcm5hbCBSZXNvdXJjZXNcbiAgICovXG4gIGhlYWQgc2NyaXB0W3NyY10sXG4gIGhlYWQgbGlua1tyZWw9XCJzdHlsZXNoZWV0XCJdIHtcbiAgICBib3JkZXItc3R5bGU6IHZhcigtLWN0LWlzLXByb2JsZW1hdGljKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWN0LXdhcm4pO1xuICB9XG5cbiAgaGVhZCBzY3JpcHRbc3JjXTo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIltCbG9ja2luZyBTY3JpcHQg4oCTIFwiIGF0dHIoc3JjKSBcIl1cIjtcbiAgfVxuXG4gIGhlYWQgbGlua1tyZWw9XCJzdHlsZXNoZWV0XCJdOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiW0Jsb2NraW5nIFN0eWxlc2hlZXQg4oCTIFwiIGF0dHIoaHJlZikgXCJdXCI7XG4gIH1cblxuICAvKipcbiAgICogSW5saW5lIFJlc291cmNlc1xuICAgKi9cbiAgaGVhZCBzdHlsZTpub3QoOmVtcHR5KSxcbiAgaGVhZCBzY3JpcHQ6bm90KDplbXB0eSkge1xuICAgIG1heC1oZWlnaHQ6IDVlbTtcbiAgICBvdmVyZmxvdzogYXV0bztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZkO1xuICAgIHdoaXRlLXNwYWNlOiBwcmU7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jdC1ub3RpZnkpO1xuICAgIGJvcmRlci1zdHlsZTogdmFyKC0tY3QtaXMtcHJvYmxlbWF0aWMpO1xuICB9XG5cbiAgaGVhZCBzY3JpcHQ6bm90KDplbXB0eSk6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJbSW5saW5lIFNjcmlwdF0gXCI7XG4gIH1cblxuICBoZWFkIHN0eWxlOm5vdCg6ZW1wdHkpOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiW0lubGluZSBTdHlsZV0gXCI7XG4gIH1cblxuICAvKipcbiAgICogQmxvY2tlZCBSZXNvdXJjZXNcbiAgICovXG4gIGhlYWQgc2NyaXB0Om5vdCg6ZW1wdHkpIH4gdGl0bGUsXG4gIGhlYWQgc2NyaXB0W3NyY106bm90KFthc3luY10sIFtkZWZlcl0sIFt0eXBlPVwibW9kdWxlXCJdKSB+IHRpdGxlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBib3JkZXItc3R5bGU6IHZhcigtLWN0LWlzLWFmZmVjdGVkKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWN0LWVycm9yKTtcbiAgfVxuXG4gIGhlYWQgc2NyaXB0W3NyY11bYXN5bmNdW2RlZmVyXSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgYm9yZGVyLXN0eWxlOiB2YXIoLS1jdC1pcy1wcm9ibGVtYXRpYyk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jdC13YXJuKTtcbiAgfVxuXG4gIGhlYWQgc2NyaXB0Om5vdChbc3JjXSlbYXN5bmNdLFxuICBoZWFkIHNjcmlwdDpub3QoW3NyY10pW2RlZmVyXSB7XG4gICAgYm9yZGVyLXN0eWxlOiB2YXIoLS1jdC1pcy1wcm9ibGVtYXRpYyk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jdC13YXJuKTtcbiAgfVxuXG4gIGhlYWQgc2NyaXB0Om5vdChbc3JjXSlbYXN5bmNdOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiVGhlIGFzeW5jIGF0dHJpYnV0ZSBpcyByZWR1bmRhbnQgb24gaW5saW5lIHNjcmlwdHNcIjtcbiAgfVxuXG4gIGhlYWQgc2NyaXB0Om5vdChbc3JjXSlbZGVmZXJdOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiVGhlIGRlZmVyIGF0dHJpYnV0ZSBpcyByZWR1bmRhbnQgb24gaW5saW5lIHNjcmlwdHNcIjtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGlyZC1wYXJ0eSBCbG9ja2luZyBSZXNvdXJjZXNcbiAgICovXG4gIGhlYWQgc2NyaXB0W3NyY149XCJodHRwXCJdLFxuICBoZWFkIFtyZWw9XCJzdHlsZXNoZWV0XCJdW2hyZWZePVwiaHR0cFwiXSB7XG4gICAgYm9yZGVyLXN0eWxlOiB2YXIoLS1jdC1pcy1wcm9ibGVtYXRpYyk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jdC1lcnJvcik7XG4gIH1cblxuICBoZWFkIHNjcmlwdFtzcmNePVwiaHR0cFwiXTo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIltUaGlyZCBQYXJ0eSBCbG9ja2luZyBTY3JpcHQg4oCTIFwiIGF0dHIoc3JjKSBcIl1cIjtcbiAgfVxuXG4gIGhlYWQgW3JlbD1cInN0eWxlc2hlZXRcIl1baHJlZl49XCJodHRwXCJdOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiW1RoaXJkIFBhcnR5IEJsb2NraW5nIFN0eWxlc2hlZXQg4oCTIFwiIGF0dHIoaHJlZikgXCJdXCI7XG4gIH1cbn1cbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==*/