/*!*************************************************************************************************************************************************************************************************************************************************!*\
  !*** 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, 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") 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);
}

/**
 * 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 {
  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;
}

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

/**
 * 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-orange);
  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;
  }
}
.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__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-100);
  margin-left: var(--spacing-050);
  margin-block: var(--spacing-100);
}
.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 .button-edit-item--wrapper {
  display: inline-block;
  margin-left: var(--spacing-050);
}
.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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Q0E7QVJvaUJGOztBUzVsQkE7OztFQUFBO0FDQUE7OztFQUFBO0FBS0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QVZrbUJGOztBV25uQkE7OztFQUFBO0FBTUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBWG9uQkY7QVdqbkJBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QVhtbkJGO0FXaG5CQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FYa25CRjtBVy9tQkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBWGluQkY7QVc5bUJBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QVhnbkJGO0FXN21CQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FYK21CRjtBVzVtQkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBWDhtQkY7QVczbUJBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QVg2bUJGO0FXMW1CQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FYNG1CRjtBV3ptQkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBWDJtQkY7QVd4bUJBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QVgwbUJGO0FXdm1CQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FYeW1CRjtBWWhzQkE7OztFQUFBO0FBS0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FaaXNCRjs7QWE5c0JBOzs7RUFBQTtBQUtBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBYmd0QkY7O0FjaHVCQTs7O0VBQUE7QUFLQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWRrdUJGOztBZTV1QkE7OztFQUFBO0FBS0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFDQTs7R0FBQTtFQUlBO0VBRUE7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0FmdXVCRjs7QWdCeHhCQTs7O0VBQUE7QUFLQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FoQjB4QkY7O0FpQjN6QkE7OztFQUFBO0FBS0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWpCNnpCRjs7QWtCajFCQTs7O0VBQUE7QUFPQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsQjQwQkY7O0FtQjk1QkE7OztFQUFBO0FBS0E7RUFDRTtFQUNBO0VBQ0E7QW5CZzZCRjs7QW9CeDZCQTs7O0VBQUE7QUNBQTs7O0VBQUE7QUFLQTtBQW1CQTs7Ozs7O0dBQUE7QUN4QkE7OztFQUFBO0FDQUE7OztFQUFBO0FDQUE7Ozs7Ozs7Ozs7Ozs7O0VBQUE7QUNBQTs7O0VBQUE7QUhBQTs7O0VBQUE7QUlBQTs7O0VBQUE7QUNBQTs7O0VBQUE7QUFLQTs7Ozs7Ozs7RUFBQTtBQ0xBOzs7O0VBQUE7QUFRQTtFQUVJO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBR0Y7RUFDQTtBNUI4aENGOztBNkI1aUNBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBQUE7QUNBQTs7O0VBQUE7QUNBQTs7O0VBQUE7QUFLQTtBQUNBO0FDTkE7OztFQUFBO0FWQUE7OztFQUFBO0FBQUE7OztFQUFBO0FRQUE7OztFQUFBO0FHQUE7OztFQUFBO0FDQUE7OztFQUFBO0FDQUE7OztFQUFBO0FDQUE7Ozs7O0VBQUE7QUFPQTtBQUNBOztFQUVFO0FwQ2luQ0Y7O0FvQzltQ0E7QUFFQTs7OztFQUFBO0FBS0E7RUFDRTtJQUNFO0lBQ0E7RXBDZ25DRjtFb0M3bUNBO0lBQ0U7SUFDQTtFcEMrbUNGO0FBQ0Y7QW9DNW1DQTtBQUVBOzs7O0VBQUE7QUFLQTtFQUNFO0lBQ0U7SUFDQTtFcEM2bUNGO0VvQzFtQ0E7SUFDRTtJQUNBO0VwQzRtQ0Y7QUFDRjtBb0N6bUNBO0FBRUE7Ozs7RUFBQTtBQUtBO0VBQ0U7SUFDRTtJQUNBO0VwQzBtQ0Y7RW9Ddm1DQTtJQUNFO0lBQ0E7RXBDeW1DRjtBQUNGO0FvQ3RtQ0E7QUFFQTs7OztFQUFBO0FBS0E7RUFDRTtJQUNFO0VwQ3VtQ0Y7RW9DcG1DQTtJQUNFO0VwQ3NtQ0Y7QUFDRjtBb0NubUNBO0FBRUE7Ozs7RUFBQTtBQUtBO0VBQ0U7SUFDRTtFcENvbUNGO0VvQ2ptQ0E7SUFDRTtFcENtbUNGO0FBQ0Y7QW9DaG1DQTtBQUVBOzs7O0VBQUE7QUFLQTtFQUNFO0lBQ0U7SUFDQTtFcENpbUNGO0VvQzlsQ0E7SUFDRTtJQUNBO0VwQ2dtQ0Y7QUFDRjtBb0M3bENBO0FBRUE7Ozs7RUFBQTtBQUtBO0VBQ0U7SUFDRTtJQUNBO0VwQzhsQ0Y7RW9DM2xDQTtJQUNFO0lBQ0E7RXBDNmxDRjtBQUNGO0FvQzFsQ0E7QUFFQTs7OztFQUFBO0FBS0E7RUFDRTtJQUVFO0VwQzBsQ0Y7RW9DdmxDQTtJQUNFO0VwQ3lsQ0Y7QUFDRjtBb0N0bENBOzs7O0VBQUE7QUFLQTtFQUNFO0lBS0U7RXBDb2xDRjtFb0NqbENBO0lBQ0U7RXBDbWxDRjtFb0NobENBO0lBQ0U7RXBDa2xDRjtBQUNGO0FvQy9rQ0E7QUFFQTs7OztFQUFBO0FBS0E7RUFDRTtJQUNFO0VwQ2dsQ0Y7RW9DN2tDQTtJQUNFO0VwQytrQ0Y7QUFDRjtBb0M1a0NBO0FBRUE7Ozs7RUFBQTtBQUtBO0VBQ0U7SUFDRTtFcEM2a0NGO0VvQzFrQ0E7SUFDRTtFcEM0a0NGO0FBQ0Y7QW9DemtDQTtBQUVBOzs7O0VBQUE7QUFLQTtFQUNFO0lBQ0U7RXBDMGtDRjtFb0N2a0NBO0lBQ0U7RXBDeWtDRjtBQUNGO0FvQ3RrQ0E7Ozs7RUFBQTtBQUtBO0VBQ0U7SUFDRTtFcEN3a0NGO0VvQ3JrQ0E7SUFDRTtFcEN1a0NGO0FBQ0Y7QW9DcGtDQTs7OztFQUFBO0FBS0E7RUFDRTtJQUNFO0VwQ3NrQ0Y7RW9DbmtDQTtJQUNFO0VwQ3FrQ0Y7QUFDRjtBb0Nsa0NBOzs7RUFBQTtBQUlBO0VBQ0U7SUFDRTtFcENva0NGO0FBQ0Y7QW9DamtDQTs7O0VBQUE7QUFJQTtFQUNFO0lBRUU7RXBDa2tDRjtFb0MvakNBO0lBQ0U7RXBDaWtDRjtFb0M5akNBO0lBQ0U7RXBDZ2tDRjtFb0M3akNBO0lBQ0U7RXBDK2pDRjtFb0M1akNBO0lBQ0U7RXBDOGpDRjtFb0MzakNBO0lBQ0U7RXBDNmpDRjtFb0MxakNBO0lBQ0U7RXBDNGpDRjtFb0N6akNBO0lBQ0U7RXBDMmpDRjtFb0N4akNBO0lBRUU7RXBDeWpDRjtBQUNGO0FvQ3RqQ0E7OztFQUFBO0FBSUE7RUFDRTtJQUVFO0VwQ3VqQ0Y7RW9DcGpDQTtJQUNFO0VwQ3NqQ0Y7RW9DbmpDQTtJQUNFO0VwQ3FqQ0Y7RW9DbGpDQTtJQUNFO0VwQ29qQ0Y7QUFDRjtBcUN0NENBOzs7RUFBQTtBQUtBOzs7Q0FBQTtBQUtBO0FBQ0E7OztFQUdFO0FyQ3M0Q0Y7O0FxQ240Q0E7QUFDQTs7Ozs7Ozs7OztFQVVFO0FyQ3M0Q0Y7O0FxQ240Q0E7QUFDQTs7RUFFRTtBckNzNENGOztBcUNuNENBO0VBQ0U7QXJDczRDRjs7QXFDbjRDQTtFQUNFO0VBQ0E7QXJDczRDRjs7QXFDbjRDQTtBQUNBO0VBQ0U7QXJDczRDRjs7QXFDbjRDQTtBQUNBO0VBQ0U7RUFDQTtFQUNBO0FyQ3M0Q0Y7O0FxQ240Q0E7QUFDQTtFQUNFO1VBQUE7QXJDczRDRjs7QXFDbjRDQTtBQUNBOztFQUVFO0VBQ0E7QXJDczRDRjs7QXFDbjRDQTtBQUNBOzs7O0VBSUU7QXJDczRDRjs7QXFDbjRDQTtBQUNBO0VBQ0U7SUFDRTtFckNzNENGO0VxQ240Q0E7OztJQUdFO0lBQ0E7SUFDQTtJQUNBO0VyQ3E0Q0Y7QUFDRjtBc0NoK0NBOzs7RUFBQTtBQU9JO0VBQ0U7QXRDKzlDTjtBc0MzOUNFO0VBQ0U7QXRDNjlDSjs7QXVDMStDQTs7O0VBQUE7QUNBQTs7O0VBQUE7QUFLQTs7O0VBQUE7QUFLQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXhDKytDRjs7QXdDNStDQTtFQUNFO0VBQ0E7RUFDQTtBeEMrK0NGO0F3QzcrQ0U7RUFHRTtBeEM2K0NKOztBeUN2Z0RBOzs7RUFBQTtBQU9BO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXpDdWdERjtBeUJwK0NJO0VnQmhESjtJQWdCSTtJQUNBO0V6Q3dnREY7QUFDRjtBeUN0Z0RFO0VBR0U7QXpDc2dESjs7QTBDcGlEQTs7O0VBQUE7QUFRQTtFQUNFO0VBQ0E7S0FBQTtVQUFBO0VBQ0E7QTFDbWlERjtBMENqaURFO0VoQlVBO0tBQUE7VUFBQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBaUJFO0VBQ0E7RUFDQTtBMUIwZ0RKO0F1QjdpREk7RUdtQkEsbU5BQ0U7QTFCNGhETjtBMEJ2aERJO0VBQ0U7QTFCeWhETjtBMEI5Z0RJO0VBQ0U7QTFCZ2hETjtBMEI3Z0RJO0VBQ0U7QTFCK2dETjtBMEM5akRFO0VBQ0U7RUFDQTtFQUNBO0ExQ2drREo7QTBDN2pERTtFaEI4Q0U7RUFDQTtFQUNBO0ExQmtoREo7QTBCaGhESTtFQUNFO0VBQ0E7QTFCa2hETjtBMEIvZ0RJO0VBQ0U7QTFCaWhETjtBMENya0RFO0VoQnlFRTtFQUNBO0VBQ0E7QTFCKy9DSjtBMEI3L0NJO0VBQ0U7RUFDQTtBMUIrL0NOO0EwQjUvQ0k7RUFDRTtBMUI4L0NOO0EwQ25rREU7RUFDRTtFQUNBO0VBQ0E7QTFDcWtESjs7QTBDamtEQTtFaEIxQkU7S0FBQTtVQUFBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUE4SUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFuSUE7RUFDQTtFQUNBO0VnQkpGO0VBQ0E7RUFDQTtBMUMybERGO0F1QjVuREk7RUdtQkEsbU5BQ0U7QTFCMm1ETjtBMEJ0bURJO0VBQ0U7QTFCd21ETjtBMEI3bERJO0VBQ0U7QTFCK2xETjtBMEI1bERJO0VBQ0U7QTFCOGxETjtBMENybURFO0VBQ0U7QTFDdW1ESjtBMENwbURFO0VBQ0U7RUFDQTtBMUNzbURKO0EwQ3BtREk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0ExQ3NtRE47O0EwQ2ptREE7RWhCM0RFO0tBQUE7VUFBQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBbUlFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBeEhBO0VBQ0E7RUFDQTtBMUJ1cERKO0F1QjFyREk7RUdtQkEsbU5BQ0U7QTFCeXFETjtBMEJwcURJO0VBQ0U7QTFCc3FETjtBMEIzcERJO0VBQ0U7QTFCNnBETjtBMEIxcERJO0VBQ0U7QTFCNHBETjtBeUJsckRJO0VpQnVDSjtJQU1JO0UxQ3lvREY7QUFDRjs7QTBDdG9EQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0ExQ3lvREY7QTBDdm9ERTtFQUNFO0ExQ3lvREo7QTBDdm9ESTtFQUVFO0ExQ3dvRE47QTBDcG9ERTtFQUNFO0ExQ3NvREo7QTBDbm9ERTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0ExQ3FvREo7O0EyQ3h2REE7OztFQUFBO0FBV0E7RUFHRTtFQUNBO0VBQ0E7RUFDQTtFYkpBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQW1HRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUVqREE7RUFDQTtFQUNBO0VBQ0E7QWhDdXNESjtBdUIvdkRJO0VPRkE7QTlCb3dESjtBOEJod0RJO0VOUkY7QXhCMndERjtBOEIzcERJO0VBQ0U7RUFDQTtFRXZERjtFQUNBO0VBQ0E7RUFDQTtBaENxdERKO0ErQjF4REU7RUNrRUU7RUFDQTtFQUNBO0VBQ0E7RUYyREk7QTlCaXFEUjtBK0JqeURFO0VDa0VFO0VBQ0E7RUFDQTtFQUNBO0VGMkRJO0E5QmlxRFI7QStCN3hERTtFQzhERTtFQUNBO0VBQ0E7RUFDQTtFRjJESTtBOUJ3cURSO0ErQmh5REU7RUMwREU7RUFDQTtFQUNBO0VBQ0E7RUYyREk7RUN0SEo7QS9Cc3lESjtBK0JueURFO0VDcURFO0VBQ0E7RUFDQTtFQUNBO0VGMkRJO0E5QnVyRFI7QXlCdHhESTtFa0JoQ0o7SUFVSTtFM0NnekRGO0FBQ0Y7QTJDOXlERTtFQUNFO0EzQ2d6REo7QTJDN3lERTtFQUNFO0VBQ0E7QTNDK3lESjtBMkM3eURJO0VibkJGO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQTBFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VhaEVFO0VBQ0E7RUFDQSw0R0FDRTtFQUVGO0EzQ3l6RE47QXVCMTBESTtFT0ZBO0E5QiswREo7QThCMzBESTtFTlJGO0F4QnMxREY7QThCbHdESTtFQUNFO0VBQ0E7RUFDQTtFRTVCRjtFQUNBO0VBQ0E7RUFDQTtBaENpeURKO0ErQnQyREU7RUNrRUU7RUFDQTtFQUNBO0VBQ0E7RUZnQ0k7QTlCd3dEUjtBK0I3MkRFO0VDa0VFO0VBQ0E7RUFDQTtFQUNBO0VGZ0NJO0E5Qnd3RFI7QStCejJERTtFQzhERTtFQUNBO0VBQ0E7RUFDQTtFRmdDSTtBOUIrd0RSO0ErQjUyREU7RUMwREU7RUFDQTtFQUNBO0VBQ0E7RUZnQ0k7RUMzRko7QS9CazNESjtBK0IvMkRFO0VDcURFO0VBQ0E7RUFDQTtFQUNBO0VGZ0NJO0E5Qjh4RFI7QTJDaDJETTtFQUNFO0VBQ0E7QTNDazJEUjtBMkM3MURFO0VidkNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQW1HRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUVqREE7RUFDQTtFQUNBO0VBQ0E7RVd4QkE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBM0NnM0RKO0F1QnY1REk7RU9GQTtBOUI0NURKO0E4Qng1REk7RU5SRjtBeEJtNkRGO0E4Qm56REk7RUFDRTtFQUNBO0VFdkRGO0VBQ0E7RUFDQTtFQUNBO0FoQzYyREo7QStCbDdERTtFQ2tFRTtFQUNBO0VBQ0E7RUFDQTtFRjJESTtBOUJ5ekRSO0ErQno3REU7RUNrRUU7RUFDQTtFQUNBO0VBQ0E7RUYyREk7QTlCeXpEUjtBK0JyN0RFO0VDOERFO0VBQ0E7RUFDQTtFQUNBO0VGMkRJO0E5QmcwRFI7QStCeDdERTtFQzBERTtFQUNBO0VBQ0E7RUFDQTtFRjJESTtFQ3RISjtBL0I4N0RKO0ErQjM3REU7RUNxREU7RUFDQTtF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O0VBQ0E7RUFDQTtFQUNBO0FuRDg0RVI7QW1ENTRFUTtFQUNFO0VBQ0E7QW5EODRFVjtBeUIzNEVJO0UwQlhFO0lBWUk7RW5EODRFUjtBQUNGO0FtRDE0RUk7RUFDRTtFQUNBO0FuRDQ0RU47QW1EejRFSTtFbkJ6QkE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFbUJ3QkU7QW5EODRFTjtBbUQ1NEVNO0VBRUU7QW5ENjRFUjtBbUR6NEVJO0VuQklBO0VBQ0E7RUFDQTtFQUNBO0VtQkpFO0VBQ0E7RUFDQTtBbkQ2NEVOO0FtRDE0RUk7RW5CR0E7RUFDQTtFQUNBO0VBQ0E7RW1CSEU7RUFDQTtBbkQ4NEVOO0FtRDE0RUU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBbkQ0NEVKO0FtRDE0RUk7RUFFRTtFQUNBO0FuRDI0RU47QW1EeDRFSTtFbkJoRUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFbUIrREU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QW5ENjRFTjtBbUQzNEVNO0VBRUU7QW5ENDRFUjtBbUR6NEVNOzs7OztFQUtFO0VBQ0E7RUFDQTtFQUNBO0FuRDI0RVI7QW1EdjRFSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QW5EeTRFTjtBbUR2NEVNO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QW5EeTRFUjtBbUR0NEVNO0VuQjNERjtFQUNBO0VBQ0E7RUFDQTtBaENvOEVKO0FtRHY0RUk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBbkR5NEVOO0FtRHI0RUU7RW5CeEVFO0VBQ0E7RUFDQTtFQUNBO0VtQndFQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FuRHk0RUo7QW1EdjRFSTtFQUNFO0FuRHk0RU47QW1EdjRFTTtFQUNFO0FuRHk0RVI7QW1EdDRFTTtFQUNFO0VBQ0E7QW5EdzRFUjtBbUR0NEVRO0VBQ0U7QW5EdzRFVjtBbURuNEVJO0VBQ0U7QW5EcTRFTjtBbURsNEVJO0VuQmhKQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VtQitJRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FuRHU0RU47QW1EcjRFTTtFQUNFO0FuRHU0RVI7QW1EcDRFTTtFQUNFO0FuRHM0RVI7QW1EbDRFSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QW5EbzRFTjtBbURsNEVNO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QW5EbzRFUjtBbURsNEVRO0VBQ0U7QW5EbzRFVjtBbURsNEVVO0VBQ0U7QW5EbzRFWjtBbUQ5M0VJO0VuQi9KQTtFQUNBO0VBQ0E7RUFDQTtFbUIrSkU7RUFDQTtBbkRrNEVOO0FtRDkzRUU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBbkRnNEVKO0FtRDUzRU07RUFDRTtFQUNBO0FuRDgzRVI7QW1EMTNFSTtFQUNFO0VBQ0E7RUFDQTtBbkQ0M0VOO0FtRHozRUk7RW5Cbk9BO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RW1Ca09FO0FuRDgzRU47QW1ENTNFTTtFQUVFO0FuRDYzRVI7QW1EejNFSTtFbkJ0TUE7RUFDQTtFQUNBO0VBQ0E7RW1Cc01FO0VBQ0E7RUFDQTtBbkQ2M0VOO0FtRHozRUU7RUFDRTtFQUNBO0VBQ0E7QW5EMjNFSjtBbUR4M0VNO0VBQ0U7RUFDQTtBbkQwM0VSO0FtRHQzRUk7RUFDRTtFQUNBO0VBQ0E7QW5EdzNFTjtBbURyM0VJO0VuQnpRQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VtQndRRTtFQUNBO0FuRDAzRU47QW1EeDNFTTtFQUNFO0FuRDAzRVI7QW1EdDNFSTtFbkI1T0E7RUFDQTtFQUNBO0VBQ0E7RW1CNE9FO0VBQ0E7RUFDQTtBbkQwM0VOOztBb0RockZBOzs7RUFBQTtBQU9BOztFQUVFO0VBQ0E7RS9CSEE7RStCa0JBO0FwRG1xRkY7QXFCbnJGRTs7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FyQnNyRko7QW9EN3JGRTs7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FwRGdzRko7QW9EOXJGSTs7RUFDRTtBcERpc0ZOO0FvRDVyRkU7O0VBQ0U7QXBEK3JGSjtBb0Q3ckZJOztFQUNFO0FwRGdzRk47O0FvRDNyRkE7RUFDRTtBcEQ4ckZGO0FvRDdyRkU7RUFDRTtBcEQrckZKOztBb0QzckZBO0VBQ0U7QXBEOHJGRjtBb0Q3ckZFO0VBQ0U7QXBEK3JGSjs7QXFENXVGQTs7O0VBQUE7QUFRRTtFQUNFO0VBQ0E7QXJEMnVGSjtBcUR6dUZJO0VBQ0U7S0FBQTtBckQydUZOO0FxRHZ1RkU7RUFDRTtFQUNBO0FyRHl1Rko7QXFEdnVGSTtFQUNFO0tBQUE7QXJEeXVGTjs7QXNEL3ZGQTs7O0VBQUE7QUFLQTtFQUNFO0F0RGl3RkY7O0F1RHZ3RkE7OztFQUFBO0FBV0E7RUFJRTtFQUNBO0VBQ0E7QXZEZ3dGRjtBeUJ0dUZJO0U4QmhDSjtJQVNJO0lBQ0E7RXZEaXdGRjtBQUNGO0F1RC92RkU7RXZCb0RFO0VBQ0E7RUFDQTtFQUNBO0V1QnBEQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBdkRtd0ZKO0F1RGp3Rkk7RUFDRTtFQUNBO0VBQ0E7QXZEbXdGTjtBdURod0ZJO0VBQ0U7QXZEa3dGTjtBdUQvdkZJO0U3QnRCRjtLQUFBO1VBQUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQWlCRTtFQUNBO0VBQ0E7RTZCVEU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXZEa3hGTjtBdUJsekZJO0VHbUJBLG1OQUNFO0ExQml5Rk47QTBCNXhGSTtFQUNFO0ExQjh4Rk47QTBCbnhGSTtFQUNFO0ExQnF4Rk47QTBCbHhGSTtFQUNFO0ExQm94Rk47QXVEM3hGSTtFN0I3Q0Y7S0FBQTtVQUFBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0U2QjBDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F2RGt5Rk47QXlCeHpGSTtFOEJlQTtJQVVJO0lBQ0E7SUFDQTtFdkRteUZOO0V1RGp5Rk07SUFDRTtJQUNBO0V2RG15RlI7QUFDRjtBdUQveEZJO0VBQ0U7RUFDQTtFQUNBO0F2RGl5Rk47QXVEN3hGTTtFQUNFO0F2RCt4RlI7QXVEMXhGRTtFQUNFO0F2RDR4Rko7QXlCOTBGSTtFOEJpREY7SS9CM0VBO0krQmlGSTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0V2RDR4Rko7RXVEMXhGSTtJQUNFO0V2RDR4Rk47QUFDRjtBdUR6eEZJO0VBQ0U7RUFDQTtBdkQyeEZOO0F1RHh4Rkk7RUFDRTtBdkQweEZOO0F1RHZ4Rkk7RUFDRTtFQUNBO0F2RHl4Rk47QXVEcnhGRTtFQUNFO0F2RHV4Rko7QXlCejJGSTtFOEJpRkY7SUFJSTtFdkR3eEZKO0FBQ0Y7O0F3RHo1RkE7OztFQUFBO0FBUUE7RUFHRTtFQUNBO0VBQ0E7RUFDQTtBeERzNUZGO0F5QnozRkk7RStCbkNKO0lBU0k7RXhEdTVGRjtBQUNGO0F3RHI1RkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXhEdTVGSjtBeUJ0NEZJO0UrQnZCRjtJQVNJO0V4RHc1Rko7QUFDRjtBeUIzNEZJO0UrQnZCRjtJQWFJO0V4RHk1Rko7QUFDRjtBeUJoNUZJO0UrQnZCRjtJQWlCSTtFeEQwNUZKO0FBQ0Y7QXdEdjVGRTtFOUJsQkE7S0FBQTtVQUFBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUE2R0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUF0Q0E7RUFDQTtFOEJ2RUE7RUFDQTtFQUNBO0F4RCs2Rko7QXVCeDhGSTtFR21CQSxtTkFDRTtBMUJ1N0ZOO0EwQmw3Rkk7RUFDRTtBMUJvN0ZOO0EwQjkyRkk7RUFFRTtFQUNBO0ExQisyRk47QTBCNTJGSTtFQUNFO0ExQjgyRk47QXlCajhGSTtFK0JGRjtJQVVJO0lBQ0E7RXhENjdGSjtBQUNGO0F3RDE3RkU7RTlCakNBO0tBQUE7VUFBQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBNkdFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBdENBO0VBQ0E7RThCeERBO0VBQ0E7RUFDQTtBeERrOUZKO0F1QjEvRkk7RUdtQkEsbU5BQ0U7QTFCeStGTjtBMEJwK0ZJO0VBQ0U7QTFCcytGTjtBMEJoNkZJO0VBRUU7RUFDQTtBMUJpNkZOO0EwQjk1Rkk7RUFDRTtBMUJnNkZOO0F5Qm4vRkk7RStCYUY7SUFVSTtJQUNBO0V4RGcrRko7QUFDRjtBd0Q5OUZJO0VBQ0U7RUFDQTtFQUNBO0F4RGcrRk47QXdENTlGRTtFQUNFO0VBQ0E7QXhEODlGSjs7QXlEN2lHQTs7O0VBQUE7QUFVQTtFM0JHRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFtQkU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RTJCNUJGO0VBQ0E7QXpEbWpHRjtBdUI1aUdJO0VPRkE7QTlCaWpHSjtBOEI3aUdJO0VOUkY7QXhCd2pHRjtBOEI1aEdJO0VBQ0U7RUFDQTtFQUNBO0VFcUJGO0VBQ0E7RUFDQTtFQUNBO0FoQzBnR0o7QStCeGtHRTtFQzJERTtFQUNBO0VBQ0E7RUFDQTtFRmpCSTtFQUNBO0E5QmtpR1I7QStCaGxHRTtFQzJERTtFQUNBO0VBQ0E7RUFDQTtFRmpCSTtFQUNBO0E5QmtpR1I7QStCNWtHRTtFQ3VERTtFQUNBO0VBQ0E7RUFDQTtFRmpCSTtFQUNBO0E5QjBpR1I7QStCaGxHRTtFQ21ERTtFQUNBO0VBQ0E7RUFDQTtFRmpCSTtFQUNBO0VDcENKO0EvQnVsR0o7QStCcGxHRTtFQzhDRTtFQUNBO0VBQ0E7RUFDQTtFRmpCSTtFQUNBO0E5QjJqR1I7QXlCeGtHSTtFZ0N6QkY7SUFFSTtFekRtbUdKO0FBQ0Y7QXlEaG1HRTtFL0J1SUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RStCMUlBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBekR1bUdKO0F5RHJtR0k7RUFDRTtBekR1bUdOO0F5RG5tR0U7RUFDRTtFQUNBO0VBQ0E7QXpEcW1HSjtBeURubUdJO0VBRUU7RUFDQTtBekRvbUdOO0F5RGhtR0U7RS9CL0JBO0tBQUE7VUFBQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBd0hFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0UrQjNHQTtBekR1bkdKO0F1QjFwR0k7RUdtQkEsbU5BQ0U7QTFCeW9HTjtBMEJwb0dJO0VBQ0U7QTFCc29HTjtBeUQzbkdJO0VBQ0U7QXpENm5HTjtBeUR6bkdNO0VBQ0U7QXpEMm5HUjtBeUR0bkdNO0VBQ0U7QXpEd25HUjtBeURubkdFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBekRxbkdKO0F5RG5uR0k7RUFDRTtFQUNBO0VBQ0E7QXpEcW5HTjtBeURubkdNO0VBQ0U7QXpEcW5HUjtBeUJwcUdJO0VnQ3lDQTtJQVVJO0V6RHFuR047RXlEbm5HTTtJQUNFO0V6RHFuR1I7QUFDRjs7QTBEdnRHQTs7O0VBQUE7QUFPQTtFNUJNRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFtR0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VFakRBO0VBQ0E7RUFDQTtFQUNBO0FoQ2txR0o7QXVCMXRHSTtFT0ZBO0E5Qit0R0o7QThCM3RHSTtFTlJGO0F4QnN1R0Y7QThCdG5HSTtFQUNFO0VBQ0E7RUV2REY7RUFDQTtFQUNBO0VBQ0E7QWhDZ3JHSjtBK0JydkdFO0VDa0VFO0VBQ0E7RUFDQTtFQUNBO0VGMkRJO0E5QjRuR1I7QStCNXZHRTtFQ2tFRTtFQUNBO0VBQ0E7RUFDQTtFRjJESTtBOUI0bkdSO0ErQnh2R0U7RUM4REU7RUFDQTtFQUNBO0VBQ0E7RUYyREk7QTlCbW9HUjtBK0IzdkdFO0VDMERFO0VBQ0E7RUFDQTtFQUNBO0VGMkRJO0VDdEhKO0EvQml3R0o7QStCOXZHRTtFQ3FERTtFQUNBO0VBQ0E7RUFDQTtFRjJESTtBOUJrcEdSOztBMkQ1eEdBOzs7RUFBQTtBQVNBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EzRDB4R0Y7QXlCOXZHSTtFa0NsQ0o7SUFTSTtJQUNBO0lBQ0E7RTNEMnhHRjtBQUNGO0EyRHp4R0U7RTNCOENFO0VBQ0E7RUFDQTtFQUNBO0UyQjlDQTtFQUNBO0VBQ0E7QTNENnhHSjtBMkQzeEdJO0VBQ0U7RUFDQTtFQUNBO0EzRDZ4R047QXlCbnhHSTtFa0NwQkY7STNCcURFO0lBQ0E7SUFDQTtJQUNBO0VoQ3N2R0Y7RTJEOXhHSTtJQUNFO0lBQ0E7SUFDQTtFM0RneUdOO0FBQ0Y7O0E0RDMwR0E7OztFQUFBO0FBV0U7RUFDRTtFQUNBO0VBQ0E7QTVEdTBHSjtBNERyMEdJO0VBQ0U7RUFDQTtBNUR1MEdOO0F5Qjl5R0k7RW1DM0JBO0lBS0k7RTVEdzBHTjtBQUNGO0E0RHIwR0k7RTVCSkE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFNEJHRTtFQUNBO0VBQ0E7QTVEMDBHTjtBNER2MEdJO0U1QlpBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RTRCV0U7RUFDQTtFQUNBO0VBQ0E7QTVENDBHTjtBNER6MEdJO0VBQ0U7RUFDQTtBNUQyMEdOO0E0RHowR007RUFDRTtBNUQyMEdSO0E0RHgwR007RUFDRTtBNUQwMEdSO0E0RHYwR007RUFDRTtFQUNBO0E1RHkwR1I7QTREcjBHSTtFQUNFO0E1RHUwR047QTREcjBHTTtFQUVFO0VBQ0E7QTVEczBHUjtBNERwMEdRO0VBQ0U7QTVEczBHVjtBNERqMEdJO0VBQ0U7QTVEbTBHTjtBNERqMEdNO0VBQ0U7RUFDQTtBNURtMEdSO0E0RGgwR007RUFDRTtFQUNBO0E1RGswR1I7QTREL3pHTTtFQUNFO0E1RGkwR1I7QTREOXpHTTtFQUNFO0E1RGcwR1I7QTRENXpHSTtFNUIzQkE7RUFDQTtFQUNBO0VBQ0E7RTRCMkJFO0VBQ0E7RUFDQTtFQUNBO0E1RGcwR047QTREN3pHSTtFNUI3QkE7RUFDQTtFQUNBO0VBQ0E7RTRCNkJFO0E1RGkwR047QTREL3pHTTtFNUJsQ0Y7RUFDQTtFQUNBO0VBQ0E7QWhDbzJHSjtBNERoMEdJO0U1QjlDQTtFQUNBO0VBQ0E7RUFDQTtBaENpM0dKO0E0RG4wR007RTVCakRGO0VBQ0E7RUFDQTtFQUNBO0U0QmlESTtBNUR1MEdSO0E0RG4wR0k7RTVCeERBO0VBQ0E7RUFDQTtFQUNBO0U0QndERTtBNUR1MEdOO0E0RHIwR007RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTVEdTBHUjtBNERyMEdRO0VBRUU7QTVEczBHVjtBNERsMEdNO0U1QjNFRjtFQUNBO0VBQ0E7RUFDQTtFNEIyRUk7RUFDQTtBNURzMEdSO0E0RG4wR007RUFDRTtFQUNBO0VBQ0E7RUFDQTtBNURxMEdSO0E0RGowR0k7RTVCMUZBO0VBQ0E7RUFDQTtFQUNBO0U0QjBGRTtBNURxMEdOO0E0RG4wR007RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTVEcTBHUjtBNERuMEdRO0VBRUU7QTVEbzBHVjtBNERoMEdNO0U1QjdHRjtFQUNBO0VBQ0E7RUFDQTtFNEI2R0k7QTVEbzBHUjtBNERqMEdNO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QTVEbTBHUjtBNEQvekdJO0U1QjNIQTtFQUNBO0VBQ0E7RUFDQTtBaEM2N0dKO0E0RGwwR007RTVCOUhGO0VBQ0E7RUFDQTtFQUNBO0U0QjhISTtBNURzMEdSO0E0RGwwR0k7RTVCcklBO0VBQ0E7RUFDQTtFQUNBO0FoQzA4R0o7QTREcjBHTTtFNUJ4SUY7RUFDQTtFQUNBO0VBQ0E7RTRCd0lJO0E1RHkwR1I7QTREcjBHSTtFNUIvSUE7RUFDQTtFQUNBO0VBQ0E7QWhDdTlHSjtBNER4MEdNO0U1QmxKRjtFQUNBO0VBQ0E7RUFDQTtFNEJrSkk7QTVENDBHUjtBNER4MEdJO0U1QnpKQTtFQUNBO0VBQ0E7RUFDQTtBaENvK0dKO0E0RDMwR007RTVCNUpGO0VBQ0E7RUFDQTtFQUNBO0U0QjRKSTtBNUQrMEdSO0E0RDMwR0k7RTVCbktBO0VBQ0E7RUFDQTtFQUNBO0FoQ2kvR0o7QTREOTBHTTtFNUJ0S0Y7RUFDQTtFQUNBO0VBQ0E7RTRCc0tJO0E1RGsxR1I7QTREOTBHSTtFNUI3S0E7RUFDQTtFQUNBO0VBQ0E7QWhDOC9HSjtBNERqMUdNO0U1QmhMRjtFQUNBO0VBQ0E7RUFDQTtFNEJnTEk7QTVEcTFHUjtBNERqMUdJO0VBQ0U7QTVEbTFHTjtBNERqMUdNO0U1QjFMRjtFQUNBO0VBQ0E7RUFDQTtBaEM4Z0hKO0E0RG4xR007RUFDRTtBNURxMUdSO0E0RG4xR1E7RUFFRTtBNURvMUdWO0E0RC8wR0k7RUFDRTtBNURpMUdOO0E0RC8wR007RTVCM01GO0VBQ0E7RUFDQTtFQUNBO0FoQzZoSEo7QTRELzBHTTtFNUJqTkY7RUFDQTtFQUNBO0VBQ0E7QWhDbWlISjtBNEQvMEdNO0U1QnZORjtFQUNBO0VBQ0E7RUFDQTtBaEN5aUhKO0E0RC8wR007RTVCN05GO0VBQ0E7RUFDQTtFQUNBO0U0QjZOSTtBNURtMUdSO0E0RDkwR007RTVCck9GO0VBQ0E7RUFDQTtFQUNBO0U0QnFPSTtBNURrMUdSO0E0RDcwR007RUFDRTtBNUQrMEdSO0E0RDUwR007RUFDRTtBNUQ4MEdSO0E0RDMwR007RUFDRTtBNUQ2MEdSO0E0RDEwR007RTVCbFBGO0VBQ0E7RUFDQTtFQUNBO0U0QmtQSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E1RDgwR1I7O0E2RG5wSEE7OztFQUFBO0FBT0E7Ozs7OztFQU1FO0VBQ0E7RUFDQTtFQUNBO0E3RG1wSEY7O0E2RC9vSEU7RTdCaURFO0VBQ0E7RUFDQTtFQUNBO0FoQ2ttSEo7QTZEbHBIRTtFN0I2QkU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBaEN3bkhKO0E2RHJwSEU7RTdCaUJFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWhDdW9ISjs7QTZEcHBIRTs7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3RHdwSEo7O0E2RG5wSEU7O0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBN0RzcEhKOztBNkRscEhBO0VBQ0U7RUFDQTtBN0RxcEhGOztBNkRqcEhBO0VBQ0U7RUFDQTtFQUNBO0E3RG9wSEY7QTZEbHBIRTtFQUNFO0VBQ0E7RUFDQTtBN0RvcEhKOztBNkQvb0hBOztFQUVFO0E3RGtwSEY7O0E2RC9vSEE7O0VBRUU7QTdE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Q0E7QWpGcTBJTjtBaUZsMElJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBakZvMElOO0FpRmowSUk7RUFDRTtBakZtMElOO0FpRmgwSUk7RUFDRTtFQUNBO0VBQ0E7QWpGazBJTjtBaUYveklJOztFdkQ4SEE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUl6TEY7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBNENFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RW1ERUU7RUFDQTtBakZtMUlOO0F1QnA0SUk7Ozs7RU9GQTtBOUI0NElKO0E4Qng0SUk7O0VOUkY7QXhCbzVJRjtBOEI5MUlJOztFQUNFO0VBQ0E7RUFDQTtFRUVGO0VBQ0E7RUFDQTtFQUNBO0FoQ2cySUo7QStCcjZJRTtFQ2tFRTtFQUNBO0VBQ0E7RUFDQTtFRkVJO0E5QnMySVI7QStCNzZJRTs7RUNrRUU7RUFDQTtFQUNBO0VBQ0E7RUZFSTtBOUJzMklSO0ErQno2SUU7O0VDOERFO0VBQ0E7RUFDQTtFQUNBO0VGRUk7QTlCODJJUjtBK0I3NklFOztFQzBERTtFQUNBO0VBQ0E7RUFDQTtFRkVJO0VDN0RKO0EvQm83SUo7QStCajdJRTs7RUNxREU7RUFDQTtFQUNBO0VBQ0E7RUZFSTtBOUIrM0lSO0E4QjUzSU07O0VBQ0U7RUFDQTtBOUIrM0lSO0FpRjE0SUk7RUFDRTtBakY0NElOO0FpRno0SUk7RXZEeERGO0tBQUE7VUFBQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBeUpFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBOUlBO0VBQ0E7RUFDQTtFdUQwQkU7QWpGazZJTjtBdUIvOUlJO0VHbUJBLG1OQUNFO0ExQjg4SU47QTBCejhJSTtFQUNFO0ExQjI4SU47QTBCaDhJSTtFQUNFO0ExQms4SU47QTBCLzdJSTtFQUNFO0ExQmk4SU47QWlGMzZJSTtFQUNFO0VBQ0E7QWpGNjZJTjtBaUYx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eXNLTjtBNEZ0c0tJO0VBQ0U7RUFDQTtFQUNBO0E1RndzS047QTRGcnNLSTtFNUQvSEE7RUFDQTtFQUNBO0VBQ0E7RTZEOUVGO0VBQ0EscUJEMk00QjtFQzFNNUI7RUFDQTtFQUNBO0VEME1JO0VBQ0E7QTVGNnNLTjs7QThGNzVLQTs7O0VBQUE7QUFXQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0E5Rnk1S0Y7QThGdjVLRTtFOURJRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0U4RExBO0E5RjQ1S0o7QThGejVLRTtFOUQ4Q0U7RUFDQTtFQUNBO0VBQ0E7RThEOUNBO0VBQ0E7RUFDQTtBOUY2NUtKO0E4RjE1S0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQUE7RUFDQTtBOUY0NUtKO0F5QnQ1S0k7RXFFWkY7SUFTSTtJQUNBO0U5RjY1S0o7QUFDRjtBOEYzNUtJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTlGNjVLTjtBOEZ6NUtFO0VwRW1JRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFSXpMRjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUE0Q0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBOUJ3NktKO0F1QnQ5S0k7RU9GQTtBOUIyOUtKO0E4QnY5S0k7RU5SRjtBeEJrK0tGO0E4QjU2S0k7RUFDRTtFQUNBO0VBQ0E7RUVFRjtFQUNBO0VBQ0E7RUFDQTtBaEM2NktKO0ErQmwvS0U7RUNrRUU7RUFDQTtFQUNBO0VBQ0E7RUZFSTtBOUJrN0tSO0ErQnovS0U7RUNrRUU7RUFDQTtFQUNBO0VBQ0E7RUZFSTtBOUJrN0tSO0ErQnIvS0U7RUM4REU7RUFDQTtFQUNBO0VBQ0E7RUZFSTtBOUJ5N0tSO0ErQngvS0U7RUMwREU7RUFDQTtFQUNBO0VBQ0E7RUZFSTtFQzdESjtBL0I4L0tKO0ErQjMvS0U7RUNxREU7RUFDQTtFQUNBO0VBQ0E7RUZFSTtBOUJ3OEtSO0E4QnI4S007RUFDRTtFQUNBO0E5QnU4S1I7QStCbmhMRTtFQ2tFRTtFQUNBO0VBQ0E7RUFDQTtFOERWSTtFQUNBO0E5Ris5S1I7QStCM2hMRTtFQ2tFRTtFQUNBO0VBQ0E7RUFDQTtFOERWSTtFQUNBO0E5Ris5S1I7QStCdmhMRTtFQzhERTtFQUNBO0VBQ0E7RUFDQTtFOERWSTtFQUNBO0E5RnUrS1I7QStCM2hMRTtFQzBERTtFQUNBO0VBQ0E7RUFDQTtFOERWSTtFQUNBO0UvRGxESjtBL0JraUxKO0ErQi9oTEU7RUNxREU7RUFDQTtFQUNBO0VBQ0E7RThEVkk7RUFDQTtBOUZ3L0tSO0E4Rm4vS0U7RXBFcERBO0tBQUE7VUFBQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBeUpFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBOUlBO0VBQ0E7RUFDQTtBMUJpaUxKO0F1QnBrTEk7RUdtQkEsbU5BQ0U7QTFCbWpMTjtBMEI5aUxJO0VBQ0U7QTFCZ2pMTjtBMEJyaUxJO0VBQ0U7QTFCdWlMTjtBMEJwaUxJO0VBQ0U7QTFCc2lMTjs7QStGdm1MQTs7O0VBQUE7QUFZRTtFQUNFO0VBQ0E7RUFDQTtBL0ZrbUxKO0ErRi9sTEU7RS9ER0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFK0RKQTtFQUNBO0VBQ0E7RUFDQTtBL0ZvbUxKO0ErRmptTEU7RS9EMENFO0VBQ0E7RUFDQTtFQUNBO0UrRDFDQTtBL0ZxbUxKO0ErRmxtTEU7RXJFVkE7S0FBQTtVQUFBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUF5SkU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUE5SUE7RUFDQTtFQUNBO0VxRXBCQTtFQUNBO0VBQ0E7QS9GMm5MSjtBdUI1b0xJO0VHbUJBLG1OQUNFO0ExQjJuTE47QTBCdG5MSTtFQUNFO0ExQnduTE47QTBCN21MSTtFQUNF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R2tuTU47QXlHbm5NSTtFQUNFO0F6R3FuTU47QXlHdG5NSTtFQUNFO0F6R3duTU47QXlHem5NSTtFQUNFO0F6RzJuTU47QXlHNW5NSTtFQUNFO0F6RzhuTU47QXlHL25NSTtFQUNFO0F6R2lvTU47QXlHbG9NSTtFQUNFO0F6R29vTU47QXlHcm9NSTtFQUNFO0F6R3VvTU47QXlHeG9NSTtFQUNFO0F6RzBvTU47QXlHM29NSTtFQUNFO0F6RzZvTU47QXlHOW9NSTtFQUNFO0F6R2dwTU47QXlHanBNSTtFQUNFO0F6R21wTU47QXlHcHBNSTtFQUNFO0F6R3NwTU47QXlHdnBNSTtFQUNFO0F6R3lwTU47QXlHMXBNSTtFQUNFO0F6RzRwTU47QXlHN3BNSTtFQUNFO0F6RytwTU47QXlHaHFNSTtFQUNFO0F6R2txTU47QXlHbnFNSTtFQUNFO0F6R3FxTU47QXlHdHFNSTtFQUNFO0F6R3dxTU47QXlHenFNSTtFQUNFO0F6RzJxTU47QXlHNXFNSTtFQUNFO0F6RzhxTU47QXlHL3FNSTtFQUNFO0F6R2lyTU47QXlHbHJNSTtFQUNFO0F6R29yTU47QXlHcnJNSTtFQUNFO0F6R3VyTU47QXlHeHJNSTtFQUNFO0F6RzByTU47QXlHM3JNSTtFQUNFO0F6RzZyTU47QXlHOXJNSTtFQUNFO0F6R2dzTU47QXlHanNNSTtFQUNFO0F6R21zTU47QXlHcHNNSTtFQUNFO0F6R3NzTU47QXlHdnNNSTtFQUNFO0F6R3lzTU47QXlHMXNNSTtFQUNFO0F6RzRzTU47QXlHN3NNSTtFQUNFO0F6RytzTU47QXlHaHRNSTtFQUNFO0F6R2t0TU47QXlHbnRNSTtFQUNFO0F6R3F0TU47QXlHdHRNSTtFQUNFO0F6R3d0TU47QXlHenRNSTtFQUNFO0F6RzJ0TU47QXlHNXRNSTtFQUNFO0F6Rzh0TU47QXlHL3RNSTtFQUNFO0F6R2l1TU47O0EwRzN1TUE7OztFQUFBO0FBS0E7RUFDRTtBMUc2dU1GOztBMEcxdU1BO0VBQ0U7QTFHNnVNRjs7QTBHMXVNQTtFQUNFO0ExRzZ1TUY7O0EwRzF1TUE7RUFDRTtBMUc2dU1GOztBMEcxdU1BO0VBQ0U7QTFHNnVNRjs7QTJHbndNQTs7O0VBQUE7QWhGZUU7RUFDRTtFQUNBO0VBQ0E7QTNCMnZNSjs7QTRHN3dNQTs7O0VBQUE7QUFTSTtFQUNFO0E1RzJ3TU47QTRHNXdNSTtFQUNFO0E1Rzh3TU47QTRHL3dNSTtFQUNFO0E1R2l4TU47QTRHbHhNSTtFQUNFO0E1R294TU47QTRHcnhNSTtFQUNFO0E1R3V4TU47QTRHeHhNSTtFQUNFO0E1RzB4TU47QTRHM3hNSTtFQUNFO0E1RzZ4TU47QTRHOXhNSTtFQUNFO0E1R2d5TU47QTRHanlNSTtFQUNFO0E1R215TU47QTRHcHlNSTtFQUNFO0E1R3N5TU47QTRHdnlNSTtFQUNFO0E1R3l5TU47QTRHMXlNSTtFQUNFO0E1RzR5TU47QTRHN3lNSTtFQUNFO0E1Ryt5TU47QTRHaHpNSTtFQUNFO0E1R2t6TU47QTRHbnpNSTtFQUNFO0E1R3F6TU47QTRHdHpNSTtFQUNFO0E1R3d6TU47QTRHenpNSTtFQUNFO0E1RzJ6TU47QTRHNXpNSTtFQUNFO0E1Rzh6TU47QTRHL3pNSTtFQUNFO0E1R2kwTU47QTRHbDBNSTtFQUNFO0E1R28wTU47QTRHcjBNSTtFQUNFO0E1R3UwTU47QTRHeDBNSTtFQUNFO0E1RzAwTU47QTRHMzBNSTtFQUNFO0E1RzYwTU47QTRHOTBNSTtFQUNFO0E1R2cxTU47QTRHajFNSTtFQUNFO0E1R20xTU47QTRHcDFNSTtFQUNFO0E1R3MxTU47QTRHdjFNSTtFQUNFO0E1R3kxTU47QTRHMTFNSTtFQUNFO0E1RzQxTU47QTRHNzFNSTtFQUNFO0E1RysxTU47QTRHaDJNSTtFQUNFO0E1R2syTU47QTRHbjJNSTtFQUNFO0E1R3EyTU47QTRHdDJNSTtFQUNFO0E1R3cyTU47QTRHejJNSTtFQUNFO0E1RzIyTU47QTRHNTJNSTtFQUNFO0E1RzgyTU47QTRHLzJNSTtFQUNFO0E1R2kzTU47QTRHbDNNSTtFQUNFO0E1R28zTU47QTRHcjNNSTtFQUNFO0E1R3UzTU47QTRHeDNNSTtFQUNFO0E1RzAzTU47QTRHMzNNSTtFQUNFO0E1RzYzTU47QTRHOTNNSTtFQUNFO0E1R2c0TU47QTRHajRNSTtFQUNFO0E1R200TU47QTRHcDRNSTtFQUNFO0E1R3M0TU47QTRHdjRNSTtFQUNFO0E1R3k0TU47QTRHMTRNSTtFQUNFO0E1RzQ0TU47QTRHNzRNSTtFQUNFO0E1Rys0TU47QTRHaDVNSTtFQUNFO0E1R2s1TU47QTRHbjVNSTtFQUNFO0E1R3E1TU47QTRHdDVNSTtFQUNFO0E1R3c1TU47QTRHejVNSTtFQUNFO0E1RzI1TU47QTRHNTVNSTtFQUNFO0E1Rzg1TU47QTRHLzVNSTtFQUNFO0E1R2k2TU47QTRHbDZNSTtFQUNFO0E1R282TU47QTRHcjZNSTtFQUNFO0E1R3U2TU47QTRHeDZNSTtFQUNFO0E1RzA2TU47QTRHMzZNSTtFQUNFO0E1RzY2TU47QTRHOTZNSTtFQUNFO0E1R2c3TU47QTRHajdNSTtFQUNFO0E1R203TU47QTRHcDdNSTtFQUNFO0E1R3M3TU47O0E2R2g4TUE7OztFQUFBO0FBU0U7RUFDRTtBN0c4N01KOztBNkczN01FO0VBQ0U7QTdHODdNSjs7QTZHMzdNRTtFQUNFO0E3Rzg3TUo7O0E2R3Y4TUU7RUFDRTtBN0cwOE1KOztBNkd2OE1FO0VBQ0U7QTdHMDhNSjs7QTZHdjhNRTtFQUNFO0E3RzA4TUo7O0E2R245TUU7RUFDRTtBN0dzOU1KOztBNkduOU1FO0VBQ0U7QTdHczlNSjs7QTZHbjlNRTtFQUNFO0E3R3M5TUo7O0E2Ry85TUU7RUFDRTtBN0drK01KOztBNkcvOU1FO0VBQ0U7QTdHaytNSjs7QTZHLzlNRTtFQUNFO0E3R2srTUo7O0E2RzMrTUU7RUFDRTtBN0c4K01KOztBNkczK01FO0VBQ0U7QTdHOCtNSjs7QTZHMytNRTtFQUNFO0E3RzgrTUo7O0E2R3YvTUU7RUFDRTtBN0cwL01KOztBNkd2L01FO0VBQ0U7QTdHMC9NSjs7QTZHdi9NRTtFQUNFO0E3RzAvTUo7O0E4RzVnTkE7OztFQUFBO0FBS0E7RUFDRTtBOUc4Z05GOztBOEczZ05BO0VBQ0U7QTlHOGdORjs7QThHM2dOQTtFQUNFO0E5RzhnTkY7O0E4RzNnTkE7RUFDRTtBOUc4Z05GOztBOEczZ05BO0VBQ0U7QTlHOGdORjs7QThHM2dOQTtFQUNFO0E5RzhnTkY7O0E4RzNnTkE7RUFDRTtFQUNBO0E5RzhnTkY7O0ErRzdpTkE7OztFQUFBO0FBS0E7RUFDRTtBL0craU5GOztBK0c1aU5BO0FBQ0E7RUFDRTtFQUNBO0VBQ0E7QS9HK2lORjs7QStHNWlOQTtFQUNFO0VBQ0E7RUFDQTtBL0craU5GOztBK0c1aU5BO0VBQ0U7RUFDQTtFQUNBO0EvRytpTkY7O0ErRzVpTkE7RUFDRTtFQUNBO0VBQ0E7QS9HK2lORjs7QStHNWlOQTtFQUNFO0VBQ0E7RUFDQTtBL0craU5GOztBK0c1aU5BO0VBQ0U7RUFDQTtFQUNBO0EvRytpTkY7O0ErRzVpTkE7RUFDRTtFQUNBO0VBQ0E7QS9HK2lORjs7QStHNWlOQTtFQUNFO0VBQ0E7RUFDQTtBL0craU5GOztBK0c1aU5BO0VBQ0U7RUFDQTtBL0craU5GOztBZ0gzbU5BOzs7RUFBQTtBQUtBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QWhINm1ORjs7QWdIMW1OQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWhINm1ORjs7QWlIcG9OQTs7O0VBQUE7QUFLQTtBQUNBO0VBQ0U7QWpIc29ORjs7QWlIbm9OQTtFQUNFO0FqSHNvTkY7O0FpSG5vTkE7RUFDRTtBakhzb05GOztBaUhub05BO0VBQ0U7QWpIc29ORjs7QWlIbm9OQTtFQUNFO0FqSHNvTkY7O0FpSG5vTkE7QUFDQTtFQUNFO0FqSHNvTkY7O0FpSG5vTkE7RUFDRTtBakhzb05GOztBaUhub05BO0VBQ0U7QWpIc29ORjs7QWlIbm9OQTtFQUNFO0FqSHNvTkY7O0FpSG5vTkE7QUFDQTtFQUNFO0FqSHNvTkY7O0FpSG5vTkE7O0VBRUU7QWpIc29ORjs7QWlIbm9OQTtFQUNFO0FqSHNvTkY7O0FpSG5vTkE7RUFDRTtBakhzb05GOztBaUhub05BO0VBQ0U7QWpIc29ORjs7QWlIbm9OQTtFQUNFO0FqSHNvTkY7O0FpSG5vTkE7RUFDRTtBakhzb05GOztBaUhub05BO0VBQ0U7QWpIc29ORjs7QWlIbm9OQTtFQUNFO0FqSHNvTkY7O0FpSG5vTkE7RUFDRTtBakhzb05GOztBaUhub05BO0VBQ0U7QWpIc29ORjs7QWlIbm9OQTs7RUFFRTtBakhzb05GOztBaUhub05BO0VBQ0U7QWpIc29ORjs7QWlIbm9OQTtFQUNFO0FqSHNvTkY7O0FpSG5vTkE7RUFDRTtBakhzb05GOztBaUhub05BO0VBQ0U7QWpIc29ORjs7QWlIbm9OQTtFQUNFO0FqSHNvTkY7O0FpSG5vTkE7RUFDRTtBakhzb05GOztBaUhub05BO0VBQ0U7QWpIc29ORjs7QWlIbm9OQTtBQUNBOztFQUVFO0FqSHNvTkY7O0FpSG5vTkE7RUFDRTtBakhzb05GOztBaUhub05BO0VBQ0U7QWpIc29ORjs7QWlIbm9OQTtFQUNFO0FqSHNvTkY7O0FpSG5vTkE7RUFDRTtBakhzb05GOztBaUhub05BO0VBQ0U7QWpIc29ORjs7QWlIbm9OQTtFQUNFO0FqSHNvTkY7O0FpSG5vTkE7RUFDRTtBakhzb05GOztBaUhub05BOztFQUVFO0FqSHNvTkY7O0FpSG5vTkE7RUFDRTtBakhzb05GOztBaUhub05BO0VBQ0U7QWpIc29ORjs7QWlIbm9OQTtFQUNFO0FqSHNvTkY7O0FpSG5vTkE7RUFDRTtBakhzb05GOztBaUhub05BO0VBQ0U7QWpIc29ORjs7QWlIbm9OQTtFQUNFO0FqSHNvTkY7O0FpSG5vTkE7RUFDRTtBakhzb05GOztBa0hoME5BOzs7RUFBQTtBQUtBO0VBQ0U7QWxIazBORjs7QWtIL3pOQTtFQUNFO0FsSGswTkY7O0FrSC96TkE7RUFDRTtBbEhrME5GOztBa0gvek5BO0VBQ0U7QWxIazBORjs7QWtIL3pOQTtFQUNFO0FsSGswTkY7O0FrSC96TkE7RUFDRTtBbEhrME5GOztBa0gvek5BO0VBQ0U7QWxIazBORjs7QWtIL3pOQTtFQUNFO0FsSGswTkY7O0FrSC96TkE7RUFDRTtBbEhrME5GOztBa0gvek5BO0VBQ0U7QWxIazBORjs7QWtIL3pOQTtFQUNFO0FsSGswTkY7O0FrSC96TkE7RUFDRTtBbEhrME5GOztBa0gvek5BO0VBQ0U7QWxIazBORjs7QWtIL3pOQTtFQUNFO0FsSGswTkY7O0FrSC96TkE7RUFDRTtBbEhrME5GOztBa0gvek5BO0VBQ0U7QWxIazBORjs7QWtIL3pOQTtFQUNFO0FsSGswTkY7O0FrSC96TkE7RUFDRTtBbEhrME5GOztBa0gvek5BO0VBQ0U7QWxIazBORjs7QWtIL3pOQTtFQUNFO0FsSGswTkY7O0FtSHA1TkE7OztFQUFBO0FBS0E7QUFDQTtFQUNFO0FuSHM1TkY7O0FtSG41TkE7RUFDRTtBbkhzNU5GOztBbUhuNU5BO0VBQ0U7QW5IczVORjs7QW1IbjVOQTtFQUNFO0FuSHM1TkY7O0FtSG41TkE7RUFDRTtBbkhzNU5GOztBbUhuNU5BO0FBQ0E7O0VBRUU7QW5IczVORjs7QW1IbjVOQTtFQUNFO0FuSHM1TkY7O0FtSG41TkE7RUFDRTtBbkhzNU5GOztBbUhuNU5BO0VBQ0U7QW5IczVORjs7QW1IbjVOQTtFQUNFO0FuSHM1TkY7O0FtSG41TkE7RUFDRTtBbkhzNU5GOztBbUhuNU5BOztFQUVFO0FuSHM1TkY7O0FtSG41TkE7RUFDRTtBbkhzNU5GOztBbUhuNU5BO0VBQ0U7QW5IczVORjs7QW1IbjVOQTtFQUNFO0FuSHM1TkY7O0FtSG41TkE7RUFDRTtBbkhzNU5GOztBbUhuNU5BO0VBQ0U7QW5IczVORjs7QW1IbjVOQTtBQUNBOztFQUVFO0FuSHM1TkY7O0FtSG41TkE7RUFDRTtBbkhzNU5GOztBbUhuNU5BO0VBQ0U7QW5IczVORjs7QW1IbjVOQTtFQUNFO0FuSHM1TkY7O0FtSG41TkE7RUFDRTtBbkhzNU5GOztBbUhuNU5BO0VBQ0U7QW5IczVORjs7QW1IbjVOQTs7RUFFRTtBbkhzNU5GOztBbUhuNU5BO0VBQ0U7QW5IczVORjs7QW1IbjVOQTtFQUNFO0FuSHM1TkY7O0FtSG41TkE7RUFDRTtBbkhzNU5GOztBbUhuNU5BO0VBQ0U7QW5IczVORjs7QW1IbjVOQTtFQUNFO0FuSHM1TkY7O0FvSG5oT0E7OztFQUFBO0FBS0E7QUFDQTtFQUNFO0FwSHFoT0Y7O0FvSGxoT0E7RUFDRTtBcEhxaE9GOztBb0hsaE9BO0VBQ0U7QXBIcWhPRjs7QW9IbGhPQTtBQUNBO0VBQ0U7QXBIcWhPRjs7QW9IbGhPQTtFQUNFO0FwSHFoT0Y7O0FvSGxoT0E7RUFDRTtBcEhxaE9GOztBb0hsaE9BO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXBIcWhPRjs7QXFIeGpPQTs7O0VBQUE7QUFNRTtFQUNFO0VBQ0E7QXJIeWpPSjtBcUh2ak9JO0VBQ0U7QXJIeWpPTjs7QXFIbmpPRTtFQUNFO0FySHNqT0o7QXFIbmpPRTtFQUNFO0FySHFqT0o7QXFIbGpPRTtFQUNFO0FySG9qT0o7QXFIampPRTtFQUNFO0FySG1qT0o7O0FzSGpsT0E7Ozs7RUFBQTtBQVFBO0VBQ0U7QXRIaWxPRjtBc0gva09FO0VBQ0U7QXRIaWxPSjs7QXNIN2tPQTtBQUtBO0V0RlJJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWhDcWxPSjs7QXNIN2tPQTtFdEZKSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FoQ3FsT0o7O0FzSGpsT0E7RXRGQUk7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBaENxbE9KOztBc0hybE9BO0V0RklJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWhDcWxPSjs7QXNIemxPQTtFdEZRSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FoQ3FsT0o7O0FzSDdsT0E7RXRGWUk7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBaENxbE9KOztBc0hqbU9BO0V0RitCSTtFQUNBO0VBQ0E7RUFDQTtBaENza09KOztBc0hobU9BO0V0RmdCSTtFQUNBO0VBQ0E7RUFDQTtBaENvbE9KOztBc0hubU9BO0V0Rm1CSTtFQUNBO0VBQ0E7RUFDQTtBaENvbE9KOztBc0h0bU9BO0V0RnNCSTtFQUNBO0VBQ0E7RUFDQTtBaENvbE9KOztBc0hybU9BO0FBS0E7RXRGN0RJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWhDa3FPSjs7QXNIcm1PQTtFdEZ6REk7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBaENrcU9KOztBc0h6bU9BO0V0RnJESTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FoQ2txT0o7O0FzSDdtT0E7RXRGakRJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWhDa3FPSjs7QXNIam5PQTtFdEY3Q0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBaENrcU9KOztBc0hybk9BO0V0RnpDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FoQ2txT0o7O0FzSHpuT0E7RXRGdEJJO0VBQ0E7RUFDQTtFQUNBO0FoQ21wT0o7O0FzSHhuT0E7RXRGckNJO0VBQ0E7RUFDQTtFQUNBO0FoQ2lxT0o7O0FzSDNuT0E7RXRGbENJO0VBQ0E7RUFDQTtFQUNBO0FoQ2lxT0o7O0FzSDluT0E7RXRGL0JJO0VBQ0E7RUFDQTtFQUNBO0FoQ2lxT0o7O0FzSDduT0E7QUFDQTtFQUNFO0F0SGdvT0Y7O0FzSDduT0E7RUFDRTtBdEhnb09GOztBc0g3bk9BO0VBQ0U7QXRIZ29PRjs7QXNIN25PQTtBQUNBO0VBQ0U7QXRIZ29PRjs7QXNIN25PQTtFQUNFO0F0SGdvT0Y7O0FzSDduT0E7QUFDQTtFQUNFO0F0SGdvT0Y7O0FzSDduT0E7RUFDRTtBdEhnb09GOztBc0g3bk9BO0VBQ0U7QXRIZ29PRjs7QXNIN25PQTtFQUNFO0F0SGdvT0Y7O0FzSDduT0E7RUFDRTtBdEhnb09GOztBc0g3bk9BO0VBQ0U7QXRIZ29PRjs7QXNIN25PQTtFQUNFO0F0SGdvT0Y7O0FzSDduT0E7RUFDRTtBdEhnb09GOztBc0g3bk9BO0VBQ0U7QXRIZ29PRjs7QXNIN25PQTtFQUNFO0F0SGdvT0Y7O0FzSDduT0E7RUFDRTtBdEhnb09GOztBc0g3bk9BO0FBQ0E7RUFDRTtFQUNBO0VBQ0E7QXRIZ29PRjs7QXNIN25PQTtBQUNBO0VBQ0U7RUFDQTtFQUNBO0F0SGdvT0Y7O0FzSDduT0E7QUFDQTtFQUNFO0F0SGdvT0Y7O0FzSDduT0E7QUFDQTtFQUNFO0F0SGdvT0Y7O0FzSDduT0E7RUFDRTtBdEhnb09GOztBc0g3bk9BO0VBQ0U7QXRIZ29PRjs7QXVIMTFPQTs7O0VBQUE7QUFLQTtFQUNFOztJQUFBO0VBT0E7O0lBQUE7RUFPQTs7SUFBQTtFQU9BOztJQUFBO0VBUUE7O0lBQUE7RUFRQTs7SUFBQTtFQU9BOztJQUFBO0VBT0E7RUFTQTs7SUFBQTtFQW9DQTs7SUFBQTtFQWlCQTs7SUFBQTtFQXFCQTs7SUFBQTtFQThCQTs7SUFBQTtBdkg0dE9GO0F1SDczT0U7RUFDRTtBdkgrM09KO0F1SHozT0U7RUFDRTtBdkgyM09KO0F1SHIzT0U7RUFDRTtBdkh1M09KO0F1SGozT0U7O0VBRUU7QXZIbTNPSjtBdUg3Mk9FOztFQUVFO0F2SCsyT0o7QXVIejJPRTtFQUNFO0F2SDIyT0o7QXVIcjJPRTtFQUNFO0F2SHUyT0o7QXVIbjJPRTs7Ozs7RUFLRTtBdkhxMk9KO0F1SC8xT0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7QXZIZzJPSjtBdUg5MU9JOzs7OztFQUtFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXZIZzJPTjtBdUg3MU9JOztFQUVFO0VBQ0E7QXZIKzFPTjtBdUg1MU9JOztFQUVFO0F2SDgxT047QXVIdjFPRTs7RUFFRTtFQUNBO0F2SHkxT0o7QXVIdDFPRTtFQUNFO0F2SHcxT0o7QXVIcjFPRTtFQUNFO0F2SHUxT0o7QXVIajFPRTs7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXZIbTFPSjtBdUhoMU9FO0VBQ0U7QXZIazFPSjtBdUgvME9FO0VBQ0U7QXZIaTFPSjtBdUgzME9FOztFQUVFO0VBQ0E7RUFDQTtBdkg2ME9KO0F1SDEwT0U7RUFDRTtFQUNBO0VBQ0E7QXZINDBPSjtBdUh6ME9FOztFQUVFO0VBQ0E7QXZIMjBPSjtBdUh4ME9FO0VBQ0U7QXZIMDBPSjtBdUh2ME9FO0VBQ0U7QXZIeTBPSjtBdUhuME9FOztFQUVFO0VBQ0E7QXZIcTBPSjtBdUhsME9FO0VBQ0U7QXZIbzBPSjtBdUhqME9FO0VBQ0U7QXZIbTBPSixDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vZW9weXkvLi9yZXNvdXJjZXMvc2Nzcy9tYWluLnNjc3MiLCJ3ZWJwYWNrOi8vZW9weXkvLi9yZXNvdXJjZXMvc2Nzcy8wMC1saWJyYXJpZXMvX2luZGV4LnNjc3MiLCJ3ZWJwYWNrOi8vZW9weXkvLi9yZXNvdXJjZXMvc2Nzcy8wMC1saWJyYXJpZXMvX3N3aXBlci5zY3NzIiwid2VicGFjazovL2VvcHl5Ly4vbm9kZV9tb2R1bGVzL3N3aXBlci9zd2lwZXIuc2NzcyIsIndlYnBhY2s6Ly9lb3B5eS8uL25vZGVfbW9kdWxlcy9zd2lwZXIvbW9kdWxlcy9wYWdpbmF0aW9uLnNjc3MiLCJ3ZWJwYWNrOi8vZW9weXkvLi9ub2RlX21vZHVsZXMvc3dpcGVyL21vZHVsZXMvbmF2aWdhdGlvbi5zY3NzIiwid2VicGFjazovL2VvcHl5Ly4vcmVzb3VyY2VzL3Njc3MvMDEtc2V0dGluZ3MvX2luZGV4LnNjc3MiLCJ3ZWJwYWNrOi8vZW9weXkvLi9yZXNvdXJjZXMvc2Nzcy8wMS1zZXR0aW5ncy9fYW5pbWF0aW9ucy5zY3NzIiwid2VicGFjazovL2VvcHl5Ly4vcmVzb3VyY2VzL3Njc3MvMDEtc2V0dGluZ3MvX2JveC1tb2RlbC5zY3NzIiwid2VicGFjazovL2VvcHl5Ly4vcmVzb3VyY2VzL3Njc3MvMDEtc2V0dGluZ3MvX2JyZWFrcG9pbnRzLnNjc3MiLCJ3ZWJwYWNrOi8vZW9weXkvLi9yZXNvdXJjZXMvc2Nzcy8wMS1zZXR0aW5ncy9fYnV0dG9ucy5zY3NzIiwid2VicGFjazovL2VvcHl5Ly4vcmVzb3VyY2VzL3Njc3MvMDEtc2V0dGluZ3MvX2ZvbnRzLnNjc3MiLCJ3ZWJwYWNrOi8vZW9weXkvLi9yZXNvdXJjZXMvc2Nzcy8wMS1zZXR0aW5ncy9fZ3JpZC5zY3NzIiwid2VicGFjazovL2VvcHl5Ly4vcmVzb3VyY2VzL3Njc3MvMDEtc2V0dGluZ3MvX2ljb25zLnNjc3MiLCJ3ZWJwYWNrOi8vZW9weXkvLi9yZXNvdXJjZXMvc2Nzcy8wMS1zZXR0aW5ncy9faW5wdXRzLnNjc3MiLCJ3ZWJwYWNrOi8vZW9weXkvLi9yZXNvdXJjZXMvc2Nzcy8wMS1zZXR0aW5ncy9fc2l6ZXMuc2NzcyIsIndlYnBhY2s6Ly9lb3B5eS8uL3Jlc291cmNlcy9zY3NzLzAxLXNldHRpbmdzL19zcGFjaW5nLnNjc3MiLCJ3ZWJwYWNrOi8vZW9weXkvLi9yZXNvdXJjZXMvc2Nzcy8wMS1zZXR0aW5ncy9fc3dpcGVyLnNjc3MiLCJ3ZWJwYWNrOi8vZW9weXkvLi9yZXNvdXJjZXMvc2Nzcy8wMS1zZXR0aW5ncy9fdHlwb2dyYXBoeS5zY3NzIiwid2VicGFjazovL2VvcHl5Ly4vcmVzb3VyY2VzL3Njc3MvMDEtc2V0dGluZ3MvX3ZhcmlhYmxlcy5zY3NzIiwid2VicGFjazovL2VvcHl5Ly4vcmVzb3VyY2VzL3Njc3MvMDItdG9vbHMvX2luZGV4LnNjc3MiLCJ3ZWJwYWNrOi8vZW9weXkvLi9yZXNvdXJjZXMvc2Nzcy8wMi10b29scy9fYTExeS5zY3NzIiwid2VicGFjazovL2VvcHl5Ly4vcmVzb3VyY2VzL3Njc3MvMDItdG9vbHMvX2FuaW1hdGlvbnMuc2NzcyIsIndlYnBhY2s6Ly9lb3B5eS8uL3Jlc291cmNlcy9zY3NzLzAyLXRvb2xzL19vbi1ldmVudC5zY3NzIiwid2VicGFjazovL2VvcHl5Ly4vcmVzb3VyY2VzL3Njc3MvMDItdG9vbHMvX2JveC1zaGFkb3dzLnNjc3MiLCJ3ZWJwYWNrOi8vZW9weXkvLi9yZXNvdXJjZXMvc2Nzcy8wMi10b29scy9fYnJlYWtwb2ludHMuc2NzcyIsIndlYnBhY2s6Ly9lb3B5eS8uL3Jlc291cmNlcy9zY3NzLzAyLXRvb2xzL19idXR0b25zLnNjc3MiLCJ3ZWJwYWNrOi8vZW9weXkvLi9yZXNvdXJjZXMvc2Nzcy8wMi10b29scy9fY2xlYXJmaXguc2NzcyIsIndlYnBhY2s6Ly9lb3B5eS8uL3Jlc291cmNlcy9zY3NzLzAyLXRvb2xzL19jb2xvcnMuc2NzcyIsIndlYnBhY2s6Ly9lb3B5eS8uL3Jlc291cmNlcy9zY3NzLzAyLXRvb2xzL19ncmFkaWVudC5zY3NzIiwid2VicGFjazovL2VvcHl5Ly4vcmVzb3VyY2VzL3Njc3MvMDItdG9vbHMvX2lucHV0LnNjc3MiLCJ3ZWJwYWNrOi8vZW9weXkvLi9yZXNvdXJjZXMvc2Nzcy8wMi10b29scy9fcGxhY2Vob2xkZXIuc2NzcyIsIndlYnBhY2s6Ly9lb3B5eS8uL3Jlc291cmNlcy9zY3NzLzAyLXRvb2xzL190eXBvZ3JhcGh5LnNjc3MiLCJ3ZWJwYWNrOi8vZW9weXkvLi9yZXNvdXJjZXMvc2Nzcy8wMi10b29scy9faGlkZGVuLnNjc3MiLCJ3ZWJwYWNrOi8vZW9weXkvLi9yZXNvdXJjZXMvc2Nzcy8wMi10b29scy9fc3BhY2luZy5zY3NzIiwid2VicGFjazovL2VvcHl5Ly4vcmVzb3VyY2VzL3Njc3MvMDMtZ2VuZXJpYy9faW5kZXguc2NzcyIsIndlYnBhY2s6Ly9lb3B5eS8uL3Jlc291cmNlcy9zY3NzLzAzLWdlbmVyaWMvX2FuaW1hdGlvbnMuc2NzcyIsIndlYnBhY2s6Ly9lb3B5eS8uL3Jlc291cmNlcy9zY3NzLzAzLWdlbmVyaWMvX3Jlc2V0LnNjc3MiLCJ3ZWJwYWNrOi8vZW9weXkvLi9yZXNvdXJjZXMvc2Nzcy8wMy1nZW5lcmljL19zd2lwZXItcGFnaW5hdGlvbi5zY3NzIiwid2VicGFjazovL2VvcHl5Ly4vcmVzb3VyY2VzL3Njc3MvMDQtZWxlbWVudHMvX2luZGV4LnNjc3MiLCJ3ZWJwYWNrOi8vZW9weXkvLi9yZXNvdXJjZXMvc2Nzcy8wNC1lbGVtZW50cy9fYWxsLnNjc3MiLCJ3ZWJwYWNrOi8vZW9weXkvLi9yZXNvdXJjZXMvc2Nzcy8wNC1lbGVtZW50cy9fYm9keS5zY3NzIiwid2VicGFjazovL2VvcHl5Ly4vcmVzb3VyY2VzL3Njc3MvMDQtZWxlbWVudHMvX2J1dHRvbi5zY3NzIiwid2VicGFjazovL2VvcHl5Ly4vcmVzb3VyY2VzL3Njc3MvMDQtZWxlbWVudHMvX2ZpbHRlci5zY3NzIiwid2VicGFjazovL2VvcHl5Ly4vcmVzb3VyY2VzL3Njc3MvMDQtZWxlbWVudHMvX2Zvcm0uc2NzcyIsIndlYnBhY2s6Ly9lb3B5eS8uL3Jlc291cmNlcy9zY3NzLzA0LWVsZW1lbnRzL19oZWFkaW5ncy5zY3NzIiwid2VicGFjazovL2VvcHl5Ly4vcmVzb3VyY2VzL3Njc3MvMDQtZWxlbWVudHMvX2h0bWwuc2NzcyIsIndlYnBhY2s6Ly9lb3B5eS8uL3Jlc291cmNlcy9zY3NzLzA0LWVsZW1lbnRzL19pY29uLnNjc3MiLCJ3ZWJwYWNrOi8vZW9weXkvLi9yZXNvdXJjZXMvc2Nzcy8wNC1lbGVtZW50cy9faW1hZ2Uuc2NzcyIsIndlYnBhY2s6Ly9lb3B5eS8uL3Jlc291cmNlcy9zY3NzLzA0LWVsZW1lbnRzL19pbnB1dC5zY3NzIiwid2VicGFjazovL2VvcHl5Ly4vcmVzb3VyY2VzL3Njc3MvMDQtZWxlbWVudHMvX2xpbmsuc2NzcyIsIndlYnBhY2s6Ly9lb3B5eS8uL3Jlc291cmNlcy9zY3NzLzA0LWVsZW1lbnRzL19saXN0LWl0ZW0uc2NzcyIsIndlYnBhY2s6Ly9lb3B5eS8uL3Jlc291cmNlcy9zY3NzLzA0LWVsZW1lbnRzL19saXN0LnNjc3MiLCJ3ZWJwYWNrOi8vZW9weXkvLi9yZXNvdXJjZXMvc2Nzcy8wNC1lbGVtZW50cy9fbG9nby5zY3NzIiwid2VicGFjazovL2VvcHl5Ly4vcmVzb3VyY2VzL3Njc3MvMDQtZWxlbWVudHMvX21haW4uc2NzcyIsIndlYnBhY2s6Ly9lb3B5eS8uL3Jlc291cmNlcy9zY3NzLzA0LWVsZW1lbnRzL19uYXZpZ2F0aW9uLnNjc3MiLCJ3ZWJwYWNrOi8vZW9weXkvLi9yZXNvdXJjZXMvc2Nzcy8wNC1lbGVtZW50cy9fcGFnaW5hdGlvbi5zY3NzIiwid2VicGFjazovL2VvcHl5Ly4vcmVzb3VyY2VzL3Njc3MvMDQtZWxlbWVudHMvX3NlYXJjaC5zY3NzIiwid2VicGFjazovL2VvcHl5Ly4vcmVzb3VyY2VzL3Njc3MvMDQtZWxlbWVudHMvX3NlbGVjdC5zY3NzIiwid2VicGFjazovL2VvcHl5Ly4vcmVzb3VyY2VzL3Njc3MvMDQtZWxlbWVudHMvX3NvY2lhbC1saW5rcy5zY3NzIiwid2VicGFjazovL2VvcHl5Ly4vcmVzb3VyY2VzL3Njc3MvMDQtZWxlbWVudHMvX3RhYmxlLnNjc3MiLCJ3ZWJwYWNrOi8vZW9weXkvLi9yZXNvdXJjZXMvc2Nzcy8wNC1lbGVtZW50cy9fdGV4dC5zY3NzIiwid2VicGFjazovL2VvcHl5Ly4vcmVzb3VyY2VzL3Njc3MvMDQtZWxlbWVudHMvX3RleHRhcmVhLnNjc3MiLCJ3ZWJwYWNrOi8vZW9weXkvLi9yZXNvdXJjZXMvc2Nzcy8wNC1lbGVtZW50cy9fdGl0bGUuc2NzcyIsIndlYnBhY2s6Ly9lb3B5eS8uL3Jlc291cmNlcy9zY3NzLzA0LWVsZW1lbnRzL192aWRlby5zY3NzIiwid2VicGFjazovL2VvcHl5Ly4vcmVzb3VyY2VzL3Njc3MvMDUtb2JqZWN0cy9faW5kZXguc2NzcyIsIndlYnBhY2s6Ly9lb3B5eS8uL3Jlc291cmNlcy9zY3NzLzA1LW9iamVjdHMvX2FydGljbGVzLWdyb3VwLnNjc3MiLCJ3ZWJwYWNrOi8vZW9weXkvLi9yZXNvdXJjZXMvc2Nzcy8wNS1vYmplY3RzL19hc3BlY3QtcmF0aW8uc2NzcyIsIndlYnBhY2s6Ly9lb3B5eS8uL3Jlc291cmNlcy9zY3NzLzA1LW9iamVjdHMvX2NvbnRhaW5lci5zY3NzIiwid2VicGFjazovL2VvcHl5Ly4vcmVzb3VyY2VzL3Njc3MvMDUtb2JqZWN0cy9fY29va2llLWRpYWxvZy5zY3NzIiwid2VicGFjazovL2VvcHl5Ly4vcmVzb3VyY2VzL3Njc3MvMDUtb2JqZWN0cy9fZHJvcGRvd24uc2NzcyIsIndlYnBhY2s6Ly9lb3B5eS8uL3Jlc291cmNlcy9zY3NzLzA1LW9iamVjdHMvX2ZpbHRlci1ncm91cC5zY3NzIiwid2VicGFjazovL2VvcHl5Ly4vcmVzb3VyY2VzL3Njc3MvMDUtb2JqZWN0cy9faWNvbi1ncm91cC5zY3NzIiwid2VicGFjazovL2VvcHl5Ly4vcmVzb3VyY2VzL3Njc3MvMDUtb2JqZWN0cy9fbGluay1ib3gtZ3JvdXAuc2NzcyIsIndlYnBhY2s6Ly9lb3B5eS8uL3Jlc291cmNlcy9zY3NzLzA1LW9iamVjdHMvX21haW4uc2NzcyIsIndlYnBhY2s6Ly9lb3B5eS8uL3Jlc291cmNlcy9zY3NzLzA1LW9iamVjdHMvX21vZGFsLnNjc3MiLCJ3ZWJwYWNrOi8vZW9weXkvLi9yZXNvdXJjZXMvc2Nzcy8wNS1vYmplY3RzL19wYWdlLWxheW91dC5zY3NzIiwid2VicGFjazovL2VvcHl5Ly4vcmVzb3VyY2VzL3Njc3MvMDUtb2JqZWN0cy9fc2VjdGlvbi5zY3NzIiwid2VicGFjazovL2VvcHl5Ly4vcmVzb3VyY2VzL3Njc3MvMDYtY29tcG9uZW50cy9faW5kZXguc2NzcyIsIndlYnBhY2s6Ly9lb3B5eS8uL3Jlc291cmNlcy9zY3NzLzA2LWNvbXBvbmVudHMvX2FsZXJ0LnNjc3MiLCJ3ZWJwYWNrOi8vZW9weXkvLi9yZXNvdXJjZXMvc2Nzcy8wNi1jb21wb25lbnRzL19icmVhZGNydW1iLnNjc3MiLCJ3ZWJwYWNrOi8vZW9weXkvLi9yZXNvdXJjZXMvc2Nzcy8wNi1jb21wb25lbnRzL19jb250YWN0LnNjc3MiLCJ3ZWJwYWNrOi8vZW9weXkvLi9yZXNvdXJjZXMvc2Nzcy8wNi1jb21wb25lbnRzL19kb2N1bWVudC1saXN0aW5nLnNjc3MiLCJ3ZWJwYWNrOi8vZW9weXkvLi9yZXNvdXJjZXMvc2Nzcy8wNi1jb21wb25lbnRzL19maWx0ZXIuc2NzcyIsIndlYnBhY2s6Ly9lb3B5eS8uL3Jlc291cmNlcy9zY3NzLzA2LWNvbXBvbmVudHMvX2Zvb3Rlci5zY3NzIiwid2VicGFjazovL2VvcHl5Ly4vcmVzb3VyY2VzL3Njc3MvMDYtY29tcG9uZW50cy9faGVhZGVyLnNjc3MiLCJ3ZWJwYWNrOi8vZW9weXkvLi9yZXNvdXJjZXMvc2Nzcy8wNi1jb21wb25lbnRzL19pbWFnZS1saW5rcy5zY3NzIiwid2VicGFjazovL2VvcHl5Ly4vcmVzb3VyY2VzL3Njc3MvMDYtY29tcG9uZW50cy9faW1hZ2UtdGV4dC5zY3NzIiwid2VicGFjazovL2VvcHl5Ly4vcmVzb3VyY2VzL3Njc3MvMDYtY29tcG9uZW50cy9fbGluay1ib3guc2NzcyIsIndlYnBhY2s6Ly9lb3B5eS8uL3Jlc291cmNlcy9zY3NzLzA2LWNvbXBvbmVudHMvX2ludHJvLWJhbm5lci5zY3NzIiwid2VicGFjazovL2VvcHl5Ly4vcmVzb3VyY2VzL3Njc3MvMDYtY29tcG9uZW50cy9fbGlzdC5zY3NzIiwid2VicGFjazovL2VvcHl5Ly4vcmVzb3VyY2VzL3Njc3MvMDYtY29tcG9uZW50cy9fbWFwLnNjc3MiLCJ3ZWJwYWNrOi8vZW9weXkvLi9yZXNvdXJjZXMvc2Nzcy8wNi1jb21wb25lbnRzL19uZXdzLnNjc3MiLCJ3ZWJwYWNrOi8vZW9weXkvLi9yZXNvdXJjZXMvc2Nzcy8wMi10b29scy9fdHJ1bmNhdGUuc2NzcyIsIndlYnBhY2s6Ly9lb3B5eS8uL3Jlc291cmNlcy9zY3NzLzA2LWNvbXBvbmVudHMvX25ld3NsZXR0ZXIuc2NzcyIsIndlYnBhY2s6Ly9lb3B5eS8uL3Jlc291cmNlcy9zY3NzLzA2LWNvbXBvbmVudHMvX25vdC1mb3VuZC5zY3NzIiwid2VicGFjazovL2VvcHl5Ly4vcmVzb3VyY2VzL3Njc3MvMDYtY29tcG9uZW50cy9fcGFnZS1iYW5uZXIuc2NzcyIsIndlYnBhY2s6Ly9lb3B5eS8uL3Jlc291cmNlcy9zY3NzLzA2LWNvbXBvbmVudHMvX3BkZi12aWV3ZXIuc2NzcyIsIndlYnBhY2s6Ly9lb3B5eS8uL3Jlc291cmNlcy9zY3NzLzA2LWNvbXBvbmVudHMvX3F1b3RlLnNjc3MiLCJ3ZWJwYWNrOi8vZW9weXkvLi9yZXNvdXJjZXMvc2Nzcy8wNi1jb21wb25lbnRzL19zaWRlYmFyLnNjc3MiLCJ3ZWJwYWNrOi8vZW9weXkvLi9yZXNvdXJjZXMvc2Nzcy8wNi1jb21wb25lbnRzL190ZXh0LnNjc3MiLCJ3ZWJwYWNrOi8vZW9weXkvLi9yZXNvdXJjZXMvc2Nzcy8wNi1jb21wb25lbnRzL190aWNrZXQtbGluay5zY3NzIiwid2VicGFjazovL2VvcHl5Ly4vcmVzb3VyY2VzL3Njc3MvMDYtY29tcG9uZW50cy9fdHJlZS5zY3NzIiwid2VicGFjazovL2VvcHl5Ly4vcmVzb3VyY2VzL3Njc3MvMDctdXRpbGl0aWVzL19pbmRleC5zY3NzIiwid2VicGFjazovL2VvcHl5Ly4vcmVzb3VyY2VzL3Njc3MvMDctdXRpbGl0aWVzL19hMTF5LnNjc3MiLCJ3ZWJwYWNrOi8vZW9weXkvLi9yZXNvdXJjZXMvc2Nzcy8wNy11dGlsaXRpZXMvX2JhY2tncm91bmQtY29sb3Iuc2NzcyIsIndlYnBhY2s6Ly9lb3B5eS8uL3Jlc291cmNlcy9zY3NzLzA3LXV0aWxpdGllcy9fYm9yZGVyLnNjc3MiLCJ3ZWJwYWNrOi8vZW9weXkvLi9yZXNvdXJjZXMvc2Nzcy8wNy11dGlsaXRpZXMvX2NsZWFyZml4LnNjc3MiLCJ3ZWJwYWNrOi8vZW9weXkvLi9yZXNvdXJjZXMvc2Nzcy8wNy11dGlsaXRpZXMvX2NvbG9yLnNjc3MiLCJ3ZWJwYWNrOi8vZW9weXkvLi9yZXNvdXJjZXMvc2Nzcy8wNy11dGlsaXRpZXMvX2Nvb2tpZXMtY29sb3JzLnNjc3MiLCJ3ZWJwYWNrOi8vZW9weXkvLi9yZXNvdXJjZXMvc2Nzcy8wNy11dGlsaXRpZXMvX2Rpc3BsYXkuc2NzcyIsIndlYnBhY2s6Ly9lb3B5eS8uL3Jlc291cmNlcy9zY3NzLzA3LXV0aWxpdGllcy9faWNvbi5zY3NzIiwid2VicGFjazovL2VvcHl5Ly4vcmVzb3VyY2VzL3Njc3MvMDctdXRpbGl0aWVzL19sb2FkaW5nLnNjc3MiLCJ3ZWJwYWNrOi8vZW9weXkvLi9yZXNvdXJjZXMvc2Nzcy8wNy11dGlsaXRpZXMvX21hcmdpbi5zY3NzIiwid2VicGFjazovL2VvcHl5Ly4vcmVzb3VyY2VzL3Njc3MvMDctdXRpbGl0aWVzL19vcGFjaXR5LnNjc3MiLCJ3ZWJwYWNrOi8vZW9weXkvLi9yZXNvdXJjZXMvc2Nzcy8wNy11dGlsaXRpZXMvX3BhZGRpbmcuc2NzcyIsIndlYnBhY2s6Ly9lb3B5eS8uL3Jlc291cmNlcy9zY3NzLzA3LXV0aWxpdGllcy9fc2l6ZS5zY3NzIiwid2VicGFjazovL2VvcHl5Ly4vcmVzb3VyY2VzL3Njc3MvMDctdXRpbGl0aWVzL19zcGFjaW5nLnNjc3MiLCJ3ZWJwYWNrOi8vZW9weXkvLi9yZXNvdXJjZXMvc2Nzcy8wNy11dGlsaXRpZXMvX3R5cG9ncmFwaHkuc2NzcyIsIndlYnBhY2s6Ly9lb3B5eS8uL3Jlc291cmNlcy9zY3NzLzA3LXV0aWxpdGllcy9fZGVidWcuc2NzcyJdLCJzb3VyY2VzQ29udGVudCI6WyJAY2hhcnNldCBcIlVURi04XCI7XG4vKipcbiAqIE1haW4gTGlicmFyaWVzIEZpbGVcbiAqIEdyb3VwOiBMaWJyYXJpZXNcbiAqL1xuLyoqXG4gKiBTd2lwZXJcbiAqIEdyb3VwOiBMaWJyYXJpZXNcbiAqL1xuLyoqXG4gKiBTd2lwZXIgMTEuMi4xMFxuICogTW9zdCBtb2Rlcm4gbW9iaWxlIHRvdWNoIHNsaWRlciBhbmQgZnJhbWV3b3JrIHdpdGggaGFyZHdhcmUgYWNjZWxlcmF0ZWQgdHJhbnNpdGlvbnNcbiAqIGh0dHBzOi8vc3dpcGVyanMuY29tXG4gKlxuICogQ29weXJpZ2h0IDIwMTQtMjAyNSBWbGFkaW1pciBLaGFybGFtcGlkaVxuICpcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZVxuICpcbiAqIFJlbGVhc2VkIG9uOiBKdW5lIDI4LCAyMDI1XG4gKi9cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJzd2lwZXItaWNvbnNcIjtcbiAgc3JjOiB1cmwoXCJkYXRhOmFwcGxpY2F0aW9uL2ZvbnQtd29mZjtjaGFyc2V0PXV0Zi04O2Jhc2U2NCwgZDA5R1JnQUJBQUFBQUFaZ0FCQUFBQUFBREFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUJHUmxSTkFBQUdSQUFBQUJvQUFBQWNpNnFIa1VkRVJVWUFBQVdnQUFBQUl3QUFBQ1FBWUFCWFIxQlBVd0FBQmhRQUFBQXVBQUFBTnVBWTcreEhVMVZDQUFBRnhBQUFBRkFBQUFCbTJmUGN6VTlUTHpJQUFBSGNBQUFBU2dBQUFHQlA5VjVSWTIxaGNBQUFBa1FBQUFDSUFBQUJZdDZGMGNCamRuUWdBQUFDekFBQUFBUUFBQUFFQUJFQlJHZGhjM0FBQUFXWUFBQUFDQUFBQUFqLy93QURaMng1WmdBQUF5d0FBQURNQUFBRDJNSHRyeVZvWldGa0FBQUJiQUFBQURBQUFBQTJFMitlb1dob1pXRUFBQUdjQUFBQUh3QUFBQ1FDOWdEemFHMTBlQUFBQWlnQUFBQVpBQUFBcmdKa0FCRnNiMk5oQUFBQzBBQUFBRm9BQUFCYUZRQVVHRzFoZUhBQUFBRzhBQUFBSHdBQUFDQUFjQUJBYm1GdFpRQUFBL2dBQUFFNUFBQUNYdkZkQndsd2IzTjBBQUFGTkFBQUFHSUFBQUNFNXM3NGhYamFZMkJrWUdBQVlwZjVIdS9qK1cyK01uQXpNWURBemFYNlFqRDYvNC8vQnhqNUdBOEF1UndNWUdrQVB5d0wxM2phWTJCa1lHQTg4UDhBZ3g0aisvOGZRRFlmQTFBRUJXZ0RBSUIyQk9vQWVOcGpZR1JnWU5CaDRHZGdZZ0FCRU1uSUFCSnpZTkFEQ1FBQUNXZ0FzUUI0Mm1OZ1lmekNPSUdCbFlHQjBZY3hqWUdCd1IxS2YyV1FaR2hoWUdCaVlHVm1nQUZHQmlRUWtPYWF3dERBb01CUXhYamcvd0VHUGNZRERBNHdOVUEyQ0Nnd3NBQUFPNEVMNmdBQWVOcGoyTTBneUFBQ3F4Z0dOV0JrWjJENC93TUEreGtEZGdBQUFIamFZMkJnWUdhQVlCa0dSZ1lRaUFIeUdNRjhGZ1lISU0zRHdNSEFCR1FyTU9neVdETEVNMVQ5L3c4VUJmRU1nTHpFLy8vL1AvNS8vZi9WL3h2K3I0ZWFBQWVNYkF4d0lVWW1JTUhFZ0tZQVlqVWNzREF3c0xLeGMzQnljZlB3OGpFUUEvZ1pCQVNGaEVWRXhjUWxKS1drWldUbDVCVVVsWlJWVk5YVU5UUVpCZ01BQU1SK0UrZ0FFUUZFQUFBQUtnQXFBQ29BTkFBK0FFZ0FVZ0JjQUdZQWNBQjZBSVFBamdDWUFLSUFyQUMyQU1BQXlnRFVBTjRBNkFEeUFQd0JCZ0VRQVJvQkpBRXVBVGdCUWdGTUFWWUJZQUZxQVhRQmZnR0lBWklCbkFHbUFiSUJ6Z0hzQUFCNDJ1Mk5NUTZDVUF5R1c1Njh4OUFuZVlZZ200TUpiaEtGYUV4SU9BVlg4QXBld1N0NEJpYzRBZmVBaWQzVk9CaXhEeGZQWUV6YTVPK1hmaTA0WUFEZ2dpVUlVTEN1RUpLOFZoTzRiU3ZwZG5rdEhJNVFDWXRkaTJzbDhablhhSGxxVXJOS3pkS2NUOGNqbHErcndaU3ZJVmN6TmllenNmblAvdXpubWZQRkJOT0RNMks3TVRRNDVZRUFacUdQODFBbUdHY0YzaVBxT29wMHIxU1BUYVRiVmtmVWU0SFhqOTd3WUUreU53V1l4d1d1NHYxdWdXSGdvM1MxWGRaRVZxV003RVQwY2ZuTEd4V2ZrZ1I0Mm8yUHZXckRNQlNGai9JSExhRjB6S2pSZ2RpVk13U2NOUkFvV1VvSDc4WTJpY0IveUlZMDlBbjZBSDJCZHUvVUIreXhvcFlzaFFpRXZudnUwZFVSZ0R0OFFlQzhQRHc3RnBqaTNmRUE0ei9QRUo2WU9CNWhLaDRkajNFdlhoeFBxSC9TS1VZM3JKN3NyWjRGWm5oMVBNQXRQaHdQNmZsMlBNSk1QRGdlUTRyWThZVDZHemFvMGVBRUE0MDlEdWdnbVRuRm5PY1NDaUVpTE1neENpVEk2Q3E1RFpVZDNRbXAxMHZPMExhTFRkMmNqTjRmT3VtbGM3bFVZYlNRY1pGa3V0Ukc3ZzZKS1pLeTBSbWRMWTY4MENEbkVKK1VNa3BGRmUxUk43bnhkVnBYckM0YVR0bmF1ck9uWWVyY1pnMllWbUxOL2QvZ2N6ZkVpbXJFL2ZzL2JPdXEyOVptbjh0bG9PUmFYZ1pnR2E3OHlPOS9jblhtMkJwYUd2cTI1RHY5UzRFOSs1U0ljOVBxdXBKS2hZRlNTbDQ3K1FjcjFtWU5BQUFBZU5wdHcwY0t3a0FBQU1EWkpBOFE3T1VKdmtMc1BmWjZ6RlZFUlB5OHFIaDJZRVIrM2kvQlA4M3ZJQkxMeVNzb0tpbXJxS3FwYTJocDYranE2UnNZR2htYm1KcVpTeTBzcmF4dGJPM3NIUnlkbkVNVTR1UjZ5eDdKSlh2ZVA3V3JEeWNBQUFBQUFBSC8vd0FDZU5wallHUmdZT0FCWWhrZ1pnSkNaZ1pOQmtZR0xRWnRJSnNGTE1ZQUFBdzNBTGdBZU5vbGl6RUtnREFRQkNjaFJiQzJzRkVSMFlENnFWUWlCQ3YvSDllekdJNlo1WEJBdzhDQksvbTVpUVFWYXVWYlhMbk9yTVp2Mm9MZEtGYThQanVydTJoSnpHYWJtT1NMek5NenZ1dHBCM040Mm1OZ1pHQmc0R0tRWXpCaFlNeEpMTWxqNEdCZ0FZb3cvUC9QQUpKaExNNnNTb1dLZldDQUF3REFqZ2JSQUFCNDJtTmdZR0JrQUlJYkNabzVJUHJtVW4waEdBMEFPOEVGVFFBQVwiKSBmb3JtYXQoXCJ3b2ZmXCIpO1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG46cm9vdCB7XG4gIC0tc3dpcGVyLXRoZW1lLWNvbG9yOiAjMDA3YWZmO1xuICAvKlxuICAtLXN3aXBlci1wcmVsb2FkZXItY29sb3I6IHZhcigtLXN3aXBlci10aGVtZS1jb2xvcik7XG4gIC0tc3dpcGVyLXdyYXBwZXItdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGluaXRpYWw7XG4gICovXG59XG5cbjpob3N0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgei1pbmRleDogMTtcbn1cblxuLnN3aXBlciB7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgcGFkZGluZzogMDtcbiAgLyogRml4IG9mIFdlYmtpdCBmbGlja2VyaW5nICovXG4gIHotaW5kZXg6IDE7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uc3dpcGVyLXZlcnRpY2FsID4gLnN3aXBlci13cmFwcGVyIHtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cblxuLnN3aXBlci13cmFwcGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB6LWluZGV4OiAxO1xuICBkaXNwbGF5OiBmbGV4O1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiB2YXIoLS1zd2lwZXItd3JhcHBlci10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbiwgaW5pdGlhbCk7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xufVxuXG4uc3dpcGVyLWFuZHJvaWQgLnN3aXBlci1zbGlkZSxcbi5zd2lwZXItaW9zIC5zd2lwZXItc2xpZGUsXG4uc3dpcGVyLXdyYXBwZXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDBweCwgMCwgMCk7XG59XG5cbi5zd2lwZXItaG9yaXpvbnRhbCB7XG4gIHRvdWNoLWFjdGlvbjogcGFuLXk7XG59XG5cbi5zd2lwZXItdmVydGljYWwge1xuICB0b3VjaC1hY3Rpb246IHBhbi14O1xufVxuXG4uc3dpcGVyLXNsaWRlIHtcbiAgZmxleC1zaHJpbms6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtO1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLnN3aXBlci1zbGlkZS1pbnZpc2libGUtYmxhbmsge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi8qIEF1dG8gSGVpZ2h0ICovXG4uc3dpcGVyLWF1dG9oZWlnaHQsXG4uc3dpcGVyLWF1dG9oZWlnaHQgLnN3aXBlci1zbGlkZSB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuLnN3aXBlci1hdXRvaGVpZ2h0IC5zd2lwZXItd3JhcHBlciB7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIGhlaWdodDtcbn1cblxuLnN3aXBlci1iYWNrZmFjZS1oaWRkZW4gLnN3aXBlci1zbGlkZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4vKiAzRCBFZmZlY3RzICovXG4uc3dpcGVyLTNkLnN3aXBlci1jc3MtbW9kZSAuc3dpcGVyLXdyYXBwZXIge1xuICBwZXJzcGVjdGl2ZTogMTIwMHB4O1xufVxuXG4uc3dpcGVyLTNkIC5zd2lwZXItd3JhcHBlciB7XG4gIHRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2Q7XG59XG5cbi5zd2lwZXItM2Qge1xuICBwZXJzcGVjdGl2ZTogMTIwMHB4O1xufVxuLnN3aXBlci0zZCAuc3dpcGVyLXNsaWRlLFxuLnN3aXBlci0zZCAuc3dpcGVyLWN1YmUtc2hhZG93IHtcbiAgdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcbn1cblxuLyogQ1NTIE1vZGUgKi9cbi5zd2lwZXItY3NzLW1vZGUgPiAuc3dpcGVyLXdyYXBwZXIge1xuICBvdmVyZmxvdzogYXV0bztcbiAgc2Nyb2xsYmFyLXdpZHRoOiBub25lOyAvKiBGb3IgRmlyZWZveCAqL1xuICAtbXMtb3ZlcmZsb3ctc3R5bGU6IG5vbmU7IC8qIEZvciBJbnRlcm5ldCBFeHBsb3JlciBhbmQgRWRnZSAqL1xufVxuLnN3aXBlci1jc3MtbW9kZSA+IC5zd2lwZXItd3JhcHBlcjo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuLnN3aXBlci1jc3MtbW9kZSA+IC5zd2lwZXItd3JhcHBlciA+IC5zd2lwZXItc2xpZGUge1xuICBzY3JvbGwtc25hcC1hbGlnbjogc3RhcnQgc3RhcnQ7XG59XG4uc3dpcGVyLWNzcy1tb2RlLnN3aXBlci1ob3Jpem9udGFsID4gLnN3aXBlci13cmFwcGVyIHtcbiAgc2Nyb2xsLXNuYXAtdHlwZTogeCBtYW5kYXRvcnk7XG59XG4uc3dpcGVyLWNzcy1tb2RlLnN3aXBlci12ZXJ0aWNhbCA+IC5zd2lwZXItd3JhcHBlciB7XG4gIHNjcm9sbC1zbmFwLXR5cGU6IHkgbWFuZGF0b3J5O1xufVxuLnN3aXBlci1jc3MtbW9kZS5zd2lwZXItZnJlZS1tb2RlID4gLnN3aXBlci13cmFwcGVyIHtcbiAgc2Nyb2xsLXNuYXAtdHlwZTogbm9uZTtcbn1cbi5zd2lwZXItY3NzLW1vZGUuc3dpcGVyLWZyZWUtbW9kZSA+IC5zd2lwZXItd3JhcHBlciA+IC5zd2lwZXItc2xpZGUge1xuICBzY3JvbGwtc25hcC1hbGlnbjogbm9uZTtcbn1cbi5zd2lwZXItY3NzLW1vZGUuc3dpcGVyLWNlbnRlcmVkID4gLnN3aXBlci13cmFwcGVyOjpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBmbGV4LXNocmluazogMDtcbiAgb3JkZXI6IDk5OTk7XG59XG4uc3dpcGVyLWNzcy1tb2RlLnN3aXBlci1jZW50ZXJlZCA+IC5zd2lwZXItd3JhcHBlciA+IC5zd2lwZXItc2xpZGUge1xuICBzY3JvbGwtc25hcC1hbGlnbjogY2VudGVyIGNlbnRlcjtcbiAgc2Nyb2xsLXNuYXAtc3RvcDogYWx3YXlzO1xufVxuLnN3aXBlci1jc3MtbW9kZS5zd2lwZXItY2VudGVyZWQuc3dpcGVyLWhvcml6b250YWwgPiAuc3dpcGVyLXdyYXBwZXIgPiAuc3dpcGVyLXNsaWRlOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLWlubGluZS1zdGFydDogdmFyKC0tc3dpcGVyLWNlbnRlcmVkLW9mZnNldC1iZWZvcmUpO1xufVxuLnN3aXBlci1jc3MtbW9kZS5zd2lwZXItY2VudGVyZWQuc3dpcGVyLWhvcml6b250YWwgPiAuc3dpcGVyLXdyYXBwZXI6OmJlZm9yZSB7XG4gIGhlaWdodDogMTAwJTtcbiAgbWluLWhlaWdodDogMXB4O1xuICB3aWR0aDogdmFyKC0tc3dpcGVyLWNlbnRlcmVkLW9mZnNldC1hZnRlcik7XG59XG4uc3dpcGVyLWNzcy1tb2RlLnN3aXBlci1jZW50ZXJlZC5zd2lwZXItdmVydGljYWwgPiAuc3dpcGVyLXdyYXBwZXIgPiAuc3dpcGVyLXNsaWRlOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLWJsb2NrLXN0YXJ0OiB2YXIoLS1zd2lwZXItY2VudGVyZWQtb2Zmc2V0LWJlZm9yZSk7XG59XG4uc3dpcGVyLWNzcy1tb2RlLnN3aXBlci1jZW50ZXJlZC5zd2lwZXItdmVydGljYWwgPiAuc3dpcGVyLXdyYXBwZXI6OmJlZm9yZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4td2lkdGg6IDFweDtcbiAgaGVpZ2h0OiB2YXIoLS1zd2lwZXItY2VudGVyZWQtb2Zmc2V0LWFmdGVyKTtcbn1cblxuLyogU2xpZGUgc3R5bGVzIHN0YXJ0ICovXG4vKiAzRCBTaGFkb3dzICovXG4uc3dpcGVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LFxuLnN3aXBlci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1sZWZ0LFxuLnN3aXBlci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1yaWdodCxcbi5zd2lwZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctdG9wLFxuLnN3aXBlci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1ib3R0b20sXG4uc3dpcGVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LFxuLnN3aXBlci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1sZWZ0LFxuLnN3aXBlci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1yaWdodCxcbi5zd2lwZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctdG9wLFxuLnN3aXBlci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1ib3R0b20ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIHotaW5kZXg6IDEwO1xufVxuLnN3aXBlci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdyB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4xNSk7XG59XG4uc3dpcGVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LWxlZnQge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gbGVmdCwgcmdiYSgwLCAwLCAwLCAwLjUpLCByZ2JhKDAsIDAsIDAsIDApKTtcbn1cbi5zd2lwZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctcmlnaHQge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHJnYmEoMCwgMCwgMCwgMC41KSwgcmdiYSgwLCAwLCAwLCAwKSk7XG59XG4uc3dpcGVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LXRvcCB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byB0b3AsIHJnYmEoMCwgMCwgMCwgMC41KSwgcmdiYSgwLCAwLCAwLCAwKSk7XG59XG4uc3dpcGVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LWJvdHRvbSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHJnYmEoMCwgMCwgMCwgMC41KSwgcmdiYSgwLCAwLCAwLCAwKSk7XG59XG5cbi5zd2lwZXItbGF6eS1wcmVsb2FkZXIge1xuICB3aWR0aDogNDJweDtcbiAgaGVpZ2h0OiA0MnB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDUwJTtcbiAgdG9wOiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtMjFweDtcbiAgbWFyZ2luLXRvcDogLTIxcHg7XG4gIHotaW5kZXg6IDEwO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiA1MCU7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGJvcmRlcjogNHB4IHNvbGlkIHZhcigtLXN3aXBlci1wcmVsb2FkZXItY29sb3IsIHZhcigtLXN3aXBlci10aGVtZS1jb2xvcikpO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGJvcmRlci10b3AtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4uc3dpcGVyOm5vdCguc3dpcGVyLXdhdGNoLXByb2dyZXNzKSAuc3dpcGVyLWxhenktcHJlbG9hZGVyLFxuLnN3aXBlci13YXRjaC1wcm9ncmVzcyAuc3dpcGVyLXNsaWRlLXZpc2libGUgLnN3aXBlci1sYXp5LXByZWxvYWRlciB7XG4gIGFuaW1hdGlvbjogc3dpcGVyLXByZWxvYWRlci1zcGluIDFzIGluZmluaXRlIGxpbmVhcjtcbn1cblxuLnN3aXBlci1sYXp5LXByZWxvYWRlci13aGl0ZSB7XG4gIC0tc3dpcGVyLXByZWxvYWRlci1jb2xvcjogI2ZmZjtcbn1cblxuLnN3aXBlci1sYXp5LXByZWxvYWRlci1ibGFjayB7XG4gIC0tc3dpcGVyLXByZWxvYWRlci1jb2xvcjogIzAwMDtcbn1cblxuQGtleWZyYW1lcyBzd2lwZXItcHJlbG9hZGVyLXNwaW4ge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgfVxufVxuLyogU2xpZGUgc3R5bGVzIGVuZCAqL1xuOnJvb3Qge1xuICAvKlxuICAtLXN3aXBlci1wYWdpbmF0aW9uLWNvbG9yOiB2YXIoLS1zd2lwZXItdGhlbWUtY29sb3IpO1xuICAtLXN3aXBlci1wYWdpbmF0aW9uLWxlZnQ6IGF1dG87XG4gIC0tc3dpcGVyLXBhZ2luYXRpb24tcmlnaHQ6IDhweDtcbiAgLS1zd2lwZXItcGFnaW5hdGlvbi1ib3R0b206IDhweDtcbiAgLS1zd2lwZXItcGFnaW5hdGlvbi10b3A6IGF1dG87XG4gIC0tc3dpcGVyLXBhZ2luYXRpb24tZnJhY3Rpb24tY29sb3I6IGluaGVyaXQ7XG4gIC0tc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXItYmctY29sb3I6IHJnYmEoMCwwLDAsMC4yNSk7XG4gIC0tc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXItc2l6ZTogNHB4O1xuICAtLXN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1zaXplOiA4cHg7XG4gIC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LXdpZHRoOiA4cHg7XG4gIC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWhlaWdodDogOHB4O1xuICAtLXN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1ib3JkZXItcmFkaXVzOiA1MCU7XG4gIC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWluYWN0aXZlLWNvbG9yOiAjMDAwO1xuICAtLXN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1pbmFjdGl2ZS1vcGFjaXR5OiAwLjI7XG4gIC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LW9wYWNpdHk6IDE7XG4gIC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWhvcml6b250YWwtZ2FwOiA0cHg7XG4gIC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LXZlcnRpY2FsLWdhcDogNnB4O1xuICAqL1xufVxuXG4uc3dpcGVyLXBhZ2luYXRpb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdHJhbnNpdGlvbjogMzAwbXMgb3BhY2l0eTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgei1pbmRleDogMTA7XG59XG4uc3dpcGVyLXBhZ2luYXRpb24uc3dpcGVyLXBhZ2luYXRpb24taGlkZGVuIHtcbiAgb3BhY2l0eTogMDtcbn1cbi5zd2lwZXItcGFnaW5hdGlvbi1kaXNhYmxlZCA+IC5zd2lwZXItcGFnaW5hdGlvbiwgLnN3aXBlci1wYWdpbmF0aW9uLnN3aXBlci1wYWdpbmF0aW9uLWRpc2FibGVkIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4vKiBDb21tb24gU3R5bGVzICovXG4uc3dpcGVyLXBhZ2luYXRpb24tZnJhY3Rpb24sXG4uc3dpcGVyLXBhZ2luYXRpb24tY3VzdG9tLFxuLnN3aXBlci1ob3Jpem9udGFsID4gLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMsXG4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy5zd2lwZXItcGFnaW5hdGlvbi1ob3Jpem9udGFsIHtcbiAgYm90dG9tOiB2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1ib3R0b20sIDhweCk7XG4gIHRvcDogdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tdG9wLCBhdXRvKTtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi8qIEJ1bGxldHMgKi9cbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBmb250LXNpemU6IDA7XG59XG4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQge1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuMzMpO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbn1cbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUtbWFpbiB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMSk7XG59XG4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlLXByZXYge1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuNjYpO1xufVxuLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWFjdGl2ZS1wcmV2LXByZXYge1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuMzMpO1xufVxuLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWFjdGl2ZS1uZXh0IHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjY2KTtcbn1cbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUtbmV4dC1uZXh0IHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjMzKTtcbn1cblxuLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XG4gIHdpZHRoOiB2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtd2lkdGgsIHZhcigtLXN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1zaXplLCA4cHgpKTtcbiAgaGVpZ2h0OiB2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtaGVpZ2h0LCB2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtc2l6ZSwgOHB4KSk7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWJvcmRlci1yYWRpdXMsIDUwJSk7XG4gIGJhY2tncm91bmQ6IHZhcigtLXN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1pbmFjdGl2ZS1jb2xvciwgIzAwMCk7XG4gIG9wYWNpdHk6IHZhcigtLXN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1pbmFjdGl2ZS1vcGFjaXR5LCAwLjIpO1xufVxuYnV0dG9uLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XG4gIGJvcmRlcjogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBib3gtc2hhZG93OiBub25lO1xuICBhcHBlYXJhbmNlOiBub25lO1xufVxuXG4uc3dpcGVyLXBhZ2luYXRpb24tY2xpY2thYmxlIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0Om9ubHktY2hpbGQge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlIHtcbiAgb3BhY2l0eTogdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LW9wYWNpdHksIDEpO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1jb2xvciwgdmFyKC0tc3dpcGVyLXRoZW1lLWNvbG9yKSk7XG59XG5cbi5zd2lwZXItdmVydGljYWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cyxcbi5zd2lwZXItcGFnaW5hdGlvbi12ZXJ0aWNhbC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzIHtcbiAgcmlnaHQ6IHZhcigtLXN3aXBlci1wYWdpbmF0aW9uLXJpZ2h0LCA4cHgpO1xuICBsZWZ0OiB2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1sZWZ0LCBhdXRvKTtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMHB4LCAtNTAlLCAwKTtcbn1cbi5zd2lwZXItdmVydGljYWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LFxuLnN3aXBlci1wYWdpbmF0aW9uLXZlcnRpY2FsLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XG4gIG1hcmdpbjogdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LXZlcnRpY2FsLWdhcCwgNnB4KSAwO1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi5zd2lwZXItdmVydGljYWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMsXG4uc3dpcGVyLXBhZ2luYXRpb24tdmVydGljYWwuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMge1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICB3aWR0aDogOHB4O1xufVxuLnN3aXBlci12ZXJ0aWNhbCA+IC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LFxuLnN3aXBlci1wYWdpbmF0aW9uLXZlcnRpY2FsLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHRyYW5zaXRpb246IDIwMG1zIHRyYW5zZm9ybSwgMjAwbXMgdG9wO1xufVxuXG4uc3dpcGVyLWhvcml6b250YWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LFxuLnN3aXBlci1wYWdpbmF0aW9uLWhvcml6b250YWwuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgbWFyZ2luOiAwIHZhcigtLXN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1ob3Jpem9udGFsLWdhcCwgNHB4KTtcbn1cbi5zd2lwZXItaG9yaXpvbnRhbCA+IC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyxcbi5zd2lwZXItcGFnaW5hdGlvbi1ob3Jpem9udGFsLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIHtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG4uc3dpcGVyLWhvcml6b250YWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCxcbi5zd2lwZXItcGFnaW5hdGlvbi1ob3Jpem9udGFsLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQge1xuICB0cmFuc2l0aW9uOiAyMDBtcyB0cmFuc2Zvcm0sIDIwMG1zIGxlZnQ7XG59XG5cbi5zd2lwZXItaG9yaXpvbnRhbC5zd2lwZXItcnRsID4gLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgdHJhbnNpdGlvbjogMjAwbXMgdHJhbnNmb3JtLCAyMDBtcyByaWdodDtcbn1cblxuLyogRnJhY3Rpb24gKi9cbi5zd2lwZXItcGFnaW5hdGlvbi1mcmFjdGlvbiB7XG4gIGNvbG9yOiB2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1mcmFjdGlvbi1jb2xvciwgaW5oZXJpdCk7XG59XG5cbi8qIFByb2dyZXNzICovXG4uc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci1iZy1jb2xvciwgcmdiYSgwLCAwLCAwLCAwLjI1KSk7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbn1cbi5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2JhciAuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXItZmlsbCB7XG4gIGJhY2tncm91bmQ6IHZhcigtLXN3aXBlci1wYWdpbmF0aW9uLWNvbG9yLCB2YXIoLS1zd2lwZXItdGhlbWUtY29sb3IpKTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgdG9wO1xufVxuLnN3aXBlci1ydGwgLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyIC5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci1maWxsIHtcbiAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgdG9wO1xufVxuLnN3aXBlci1ob3Jpem9udGFsID4gLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLCAuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIuc3dpcGVyLXBhZ2luYXRpb24taG9yaXpvbnRhbCwgLnN3aXBlci12ZXJ0aWNhbCA+IC5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci1vcHBvc2l0ZSwgLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLnN3aXBlci1wYWdpbmF0aW9uLXZlcnRpY2FsLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLW9wcG9zaXRlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXItc2l6ZSwgNHB4KTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xufVxuLnN3aXBlci12ZXJ0aWNhbCA+IC5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2JhciwgLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLnN3aXBlci1wYWdpbmF0aW9uLXZlcnRpY2FsLCAuc3dpcGVyLWhvcml6b250YWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXItb3Bwb3NpdGUsIC5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci5zd2lwZXItcGFnaW5hdGlvbi1ob3Jpem9udGFsLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLW9wcG9zaXRlIHtcbiAgd2lkdGg6IHZhcigtLXN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLXNpemUsIDRweCk7XG4gIGhlaWdodDogMTAwJTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xufVxuXG4uc3dpcGVyLXBhZ2luYXRpb24tbG9jayB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbjpyb290IHtcbiAgLS1zd2lwZXItbmF2aWdhdGlvbi1zaXplOiA0NHB4O1xuICAvKlxuICAtLXN3aXBlci1uYXZpZ2F0aW9uLXRvcC1vZmZzZXQ6IDUwJTtcbiAgLS1zd2lwZXItbmF2aWdhdGlvbi1zaWRlcy1vZmZzZXQ6IDEwcHg7XG4gIC0tc3dpcGVyLW5hdmlnYXRpb24tY29sb3I6IHZhcigtLXN3aXBlci10aGVtZS1jb2xvcik7XG4gICovXG59XG5cbi5zd2lwZXItYnV0dG9uLXByZXYsXG4uc3dpcGVyLWJ1dHRvbi1uZXh0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IHZhcigtLXN3aXBlci1uYXZpZ2F0aW9uLXRvcC1vZmZzZXQsIDUwJSk7XG4gIHdpZHRoOiBjYWxjKHZhcigtLXN3aXBlci1uYXZpZ2F0aW9uLXNpemUpIC8gNDQgKiAyNyk7XG4gIGhlaWdodDogdmFyKC0tc3dpcGVyLW5hdmlnYXRpb24tc2l6ZSk7XG4gIG1hcmdpbi10b3A6IGNhbGMoMHB4IC0gdmFyKC0tc3dpcGVyLW5hdmlnYXRpb24tc2l6ZSkgLyAyKTtcbiAgei1pbmRleDogMTA7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGNvbG9yOiB2YXIoLS1zd2lwZXItbmF2aWdhdGlvbi1jb2xvciwgdmFyKC0tc3dpcGVyLXRoZW1lLWNvbG9yKSk7XG59XG4uc3dpcGVyLWJ1dHRvbi1wcmV2LnN3aXBlci1idXR0b24tZGlzYWJsZWQsXG4uc3dpcGVyLWJ1dHRvbi1uZXh0LnN3aXBlci1idXR0b24tZGlzYWJsZWQge1xuICBvcGFjaXR5OiAwLjM1O1xuICBjdXJzb3I6IGF1dG87XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuLnN3aXBlci1idXR0b24tcHJldi5zd2lwZXItYnV0dG9uLWhpZGRlbixcbi5zd2lwZXItYnV0dG9uLW5leHQuc3dpcGVyLWJ1dHRvbi1oaWRkZW4ge1xuICBvcGFjaXR5OiAwO1xuICBjdXJzb3I6IGF1dG87XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuLnN3aXBlci1uYXZpZ2F0aW9uLWRpc2FibGVkIC5zd2lwZXItYnV0dG9uLXByZXYsXG4uc3dpcGVyLW5hdmlnYXRpb24tZGlzYWJsZWQgLnN3aXBlci1idXR0b24tbmV4dCB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cbi5zd2lwZXItYnV0dG9uLXByZXYgc3ZnLFxuLnN3aXBlci1idXR0b24tbmV4dCBzdmcge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvYmplY3QtZml0OiBjb250YWluO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG59XG4uc3dpcGVyLXJ0bCAuc3dpcGVyLWJ1dHRvbi1wcmV2IHN2Zyxcbi5zd2lwZXItcnRsIC5zd2lwZXItYnV0dG9uLW5leHQgc3ZnIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbn1cblxuLnN3aXBlci1idXR0b24tcHJldixcbi5zd2lwZXItcnRsIC5zd2lwZXItYnV0dG9uLW5leHQge1xuICBsZWZ0OiB2YXIoLS1zd2lwZXItbmF2aWdhdGlvbi1zaWRlcy1vZmZzZXQsIDEwcHgpO1xuICByaWdodDogYXV0bztcbn1cblxuLnN3aXBlci1idXR0b24tbmV4dCxcbi5zd2lwZXItcnRsIC5zd2lwZXItYnV0dG9uLXByZXYge1xuICByaWdodDogdmFyKC0tc3dpcGVyLW5hdmlnYXRpb24tc2lkZXMtb2Zmc2V0LCAxMHB4KTtcbiAgbGVmdDogYXV0bztcbn1cblxuLnN3aXBlci1idXR0b24tbG9jayB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qIE5hdmlnYXRpb24gZm9udCBzdGFydCAqL1xuLnN3aXBlci1idXR0b24tcHJldjphZnRlcixcbi5zd2lwZXItYnV0dG9uLW5leHQ6YWZ0ZXIge1xuICBmb250LWZhbWlseTogc3dpcGVyLWljb25zO1xuICBmb250LXNpemU6IHZhcigtLXN3aXBlci1uYXZpZ2F0aW9uLXNpemUpO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZSAhaW1wb3J0YW50O1xuICBsZXR0ZXItc3BhY2luZzogMDtcbiAgZm9udC12YXJpYW50OiBpbml0aWFsO1xuICBsaW5lLWhlaWdodDogMTtcbn1cblxuLnN3aXBlci1idXR0b24tcHJldjphZnRlcixcbi5zd2lwZXItcnRsIC5zd2lwZXItYnV0dG9uLW5leHQ6YWZ0ZXIge1xuICBjb250ZW50OiBcInByZXZcIjtcbn1cblxuLnN3aXBlci1idXR0b24tbmV4dCxcbi5zd2lwZXItcnRsIC5zd2lwZXItYnV0dG9uLXByZXYge1xuICByaWdodDogdmFyKC0tc3dpcGVyLW5hdmlnYXRpb24tc2lkZXMtb2Zmc2V0LCAxMHB4KTtcbiAgbGVmdDogYXV0bztcbn1cbi5zd2lwZXItYnV0dG9uLW5leHQ6YWZ0ZXIsXG4uc3dpcGVyLXJ0bCAuc3dpcGVyLWJ1dHRvbi1wcmV2OmFmdGVyIHtcbiAgY29udGVudDogXCJuZXh0XCI7XG59XG5cbi8qIE5hdmlnYXRpb24gZm9udCBlbmQgKi9cbi8qKlxuICogTWFpbiBTZXR0aW5ncyBGaWxlXG4gKiBHcm91cDogU2V0dGluZ3NcbiAqL1xuLyoqXG4gKiBBbmltYXRpb25cbiAqIEdyb3VwOiBTZXR0aW5nc1xuICovXG46cm9vdCB7XG4gIC0tdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zcztcbiAgLS10cmFuc2l0aW9uLWR1cmF0aW9uLW1lZGl1bTogMC41cztcbiAgLS10cmFuc2l0aW9uLWR1cmF0aW9uLXNsb3c6IDFzO1xuICAtLXRyYW5zaXRpb24tZHVyYXRpb24tdmVyeS1zbG93OiAycztcbn1cblxuLyoqXG4gKiBCb3ggTW9kZWxcbiAqIEdyb3VwOiBTZXR0aW5nc1xuICovXG46cm9vdCB7XG4gIC0tcmFkaXVzOiAxcmVtO1xuICAtLWJvcmRlci1yYWRpdXMtbnVsbDogMDtcbiAgLS1ib3JkZXItcmFkaXVzLXhzOiAwLjI1cmVtO1xuICAtLWJvcmRlci1yYWRpdXMtczogMC41cmVtO1xuICAtLWJvcmRlci1yYWRpdXMtbTogMXJlbTtcbiAgLS1ib3JkZXItcmFkaXVzLWw6IDEuMjVyZW07XG4gIC0tYm9yZGVyLXJhZGl1cy14bDogNHJlbTtcbiAgLS1ib3JkZXItcmFkaXVzLXh4bDogOHJlbTtcbiAgLS1ib3JkZXItcmFkaXVzLWZ1bGw6IDUwJTtcbiAgLS1ib3gtc2hhZG93LWxpZ2h0OiBoc2woMGRlZyAwJSAwJSAvIDE1JSk7XG4gIC0tYm94LXNoYWRvdy1kYXJrOiBoc2woMGRlZyAwJSAxMDAlIC8gMTUlKTtcbiAgLS1ib3gtc2hhZG93LWxpZ2h0LTAxOlxuICAgIDBweCAxcHggMnB4IDBweCB2YXIoLS1ib3gtc2hhZG93LWxpZ2h0LCByZ2IoMCAwIDAgLyAxNSUpKSxcbiAgICAwcHggMXB4IDNweCAxcHggdmFyKC0tYm94LXNoYWRvdy1saWdodCwgcmdiKDAgMCAwIC8gMTUlKSk7XG4gIC0tYm94LXNoYWRvdy1saWdodC0wMjpcbiAgICAwcHggMXB4IDJweCAwcHggdmFyKC0tYm94LXNoYWRvdy1saWdodCwgcmdiKDAgMCAwIC8gMTUlKSksXG4gICAgMHB4IDJweCA2cHggMnB4IHZhcigtLWJveC1zaGFkb3ctbGlnaHQsIHJnYigwIDAgMCAvIDE1JSkpO1xuICAtLWJveC1zaGFkb3ctbGlnaHQtMDM6XG4gICAgMHB4IDRweCA4cHggM3B4IHZhcigtLWJveC1zaGFkb3ctbGlnaHQsIHJnYigwIDAgMCAvIDE1JSkpLFxuICAgIDBweCAxcHggM3B4IDBweCB2YXIoLS1ib3gtc2hhZG93LWxpZ2h0LCByZ2IoMCAwIDAgLyAxNSUpKTtcbiAgLS1ib3gtc2hhZG93LWxpZ2h0LTA0OlxuICAgIDBweCA2cHggMTBweCA0cHggdmFyKC0tYm94LXNoYWRvdy1saWdodCwgcmdiKDAgMCAwIC8gMTUlKSksXG4gICAgMHB4IDJweCAzcHggMHB4IHZhcigtLWJveC1zaGFkb3ctbGlnaHQsIHJnYigwIDAgMCAvIDE1JSkpO1xuICAtLWJveC1zaGFkb3ctbGlnaHQtMDU6XG4gICAgMHB4IDhweCAxMnB4IDZweCB2YXIoLS1ib3gtc2hhZG93LWxpZ2h0LCByZ2IoMCAwIDAgLyAxNSUpKSxcbiAgICAwcHggNHB4IDRweCAwcHggdmFyKC0tYm94LXNoYWRvdy1saWdodCwgcmdiKDAgMCAwIC8gMTUlKSk7XG4gIC0tYm94LXNoYWRvdy1saWdodC0wNjpcbiAgICAwcHggMTZweCAzMnB4IDZweCB2YXIoLS1ib3gtc2hhZG93LWxpZ2h0LCByZ2IoMCAwIDAgLyAxNSUpKSxcbiAgICAwcHggNHB4IDhweCAwcHggdmFyKC0tYm94LXNoYWRvdy1saWdodCwgcmdiKDAgMCAwIC8gMTUlKSk7XG4gIC0tYm94LXNoYWRvdy1kYXJrLTAxOlxuICAgIDBweCAxcHggMnB4IDBweCB2YXIoLS1ib3gtc2hhZG93LWRhcmssIHJnYigyNTUgMjU1IDI1NSAvIDE1JSkpLFxuICAgIDBweCAxcHggM3B4IDFweCB2YXIoLS1ib3gtc2hhZG93LWRhcmssIHJnYigyNTUgMjU1IDI1NSAvIDE1JSkpO1xuICAtLWJveC1zaGFkb3ctZGFyay0wMjpcbiAgICAwcHggMXB4IDJweCAwcHggdmFyKC0tYm94LXNoYWRvdy1kYXJrLCByZ2IoMjU1IDI1NSAyNTUgLyAxNSUpKSxcbiAgICAwcHggMnB4IDZweCAycHggdmFyKC0tYm94LXNoYWRvdy1kYXJrLCByZ2IoMjU1IDI1NSAyNTUgLyAxNSUpKTtcbiAgLS1ib3gtc2hhZG93LWRhcmstMDM6XG4gICAgMHB4IDRweCA4cHggM3B4IHZhcigtLWJveC1zaGFkb3ctZGFyaywgcmdiKDI1NSAyNTUgMjU1IC8gMTUlKSksXG4gICAgMHB4IDFweCAzcHggMHB4IHZhcigtLWJveC1zaGFkb3ctZGFyaywgcmdiKDI1NSAyNTUgMjU1IC8gMTUlKSk7XG4gIC0tYm94LXNoYWRvdy1kYXJrLTA0OlxuICAgIDBweCA2cHggMTBweCA0cHggdmFyKC0tYm94LXNoYWRvdy1kYXJrLCByZ2IoMjU1IDI1NSAyNTUgLyAxNSUpKSxcbiAgICAwcHggMnB4IDNweCAwcHggdmFyKC0tYm94LXNoYWRvdy1kYXJrLCByZ2IoMjU1IDI1NSAyNTUgLyAxNSUpKTtcbiAgLS1ib3gtc2hhZG93LWRhcmstMDU6XG4gICAgMHB4IDhweCAxMnB4IDZweCB2YXIoLS1ib3gtc2hhZG93LWRhcmssIHJnYigyNTUgMjU1IDI1NSAvIDE1JSkpLFxuICAgIDBweCA0cHggNHB4IDBweCB2YXIoLS1ib3gtc2hhZG93LWRhcmssIHJnYigyNTUgMjU1IDI1NSAvIDE1JSkpO1xuICAtLWJveC1zaGFkb3ctZGFyay0wNjpcbiAgICAwcHggMTZweCAzMnB4IDZweCB2YXIoLS1ib3gtc2hhZG93LWRhcmssIHJnYigyNTUgMjU1IDI1NSAvIDE1JSkpLFxuICAgIDBweCA0cHggOHB4IDBweCB2YXIoLS1ib3gtc2hhZG93LWRhcmssIHJnYigyNTUgMjU1IDI1NSAvIDE1JSkpO1xuICAtLWJveC1zaGFkb3ctaG92ZXI6IDAgNHB4IDIwcHggcmdiKDEwIDEzIDE1IC8gMzUlKTtcbiAgLS1ib3gtc2hhZG93LW1lbnUtaW5uZXI6IDBweCA0cHggOHB4IDBweCB2YXIoLS1jb2xvci1uZXV0cmFsLTA1MCkgaW5zZXQ7XG4gIC0tYm94LXNoYWRvdy1tZW51LW91dGVyOiAwcHggNHB4IDRweCAwcHggIzAwMDAwMDQwO1xuICAtLWJveC1zaGFkb3ctYWNjb3JkaW9uOiAwcHggNXB4IDE2cHggMHB4IHJnYig4IDE1IDUyIC8gNiUpO1xufVxuXG4vKipcbiAqIEJyZWFrcG9pbnRzXG4gKiBHcm91cDogU2V0dGluZ3NcbiAqL1xuLyoqXG4gKiBCdXR0b25zXG4gKiBHcm91cDogU2V0dGluZ3NcbiAqL1xuOnJvb3Qge1xuICAtLWJ0bi1yYWRpdXM6IHZhcigtLXJhZGl1cyk7XG4gIC0tYnRuLXJhZGl1cy14czogY2FsYyh2YXIoLS1yYWRpdXMpIC8gNCk7XG4gIC0tYnRuLXJhZGl1cy1zbTogY2FsYyh2YXIoLS1yYWRpdXMpIC8gMik7XG4gIC0tYnRuLXJhZGl1cy1tZDogY2FsYyh2YXIoLS1yYWRpdXMpICogMS4xMjUpO1xuICAtLWJ0bi1yYWRpdXMtbGc6IGNhbGModmFyKC0tcmFkaXVzKSAqIDEuNzUpO1xuICAtLWJ0bi1yYWRpdXMteGw6IGNhbGModmFyKC0tcmFkaXVzKSAqIDQpO1xuICAtLWJ0bi1yYWRpdXMtZnVsbDogNTAlO1xuICAtLWJ1dHRvbi1zaXplLXhzbWFsbDogMnJlbTtcbiAgLS1idXR0b24tc2l6ZS1zbWFsbDogMi43NXJlbTtcbiAgLS1idXR0b24tc2l6ZTogMy4xMjVyZW07XG4gIC0tYnV0dG9uLXNpemUtbGFyZ2U6IDMuMTI1cmVtO1xuICAtLWJ1dHRvbi1ib3JkZXItd2lkdGg6IDAuMTI1cmVtO1xufVxuXG4vKipcbiAqIEZvbnRzXG4gKiBHcm91cDogU2V0dGluZ3NcbiAqL1xuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcIk9wZW4gU2Fuc1wiO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL09wZW5TYW5zL09wZW5TYW5zLUxpZ2h0LnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKTtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcIk9wZW4gU2Fuc1wiO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL09wZW5TYW5zL09wZW5TYW5zLUxpZ2h0SXRhbGljLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKTtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcIk9wZW4gU2Fuc1wiO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL09wZW5TYW5zL09wZW5TYW5zLVJlZ3VsYXIudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpO1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwiT3BlbiBTYW5zXCI7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvT3BlblNhbnMvT3BlblNhbnMtSXRhbGljLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcIk9wZW4gU2Fuc1wiO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL09wZW5TYW5zL09wZW5TYW5zLU1lZGl1bS50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIik7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJPcGVuIFNhbnNcIjtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9PcGVuU2Fucy9PcGVuU2Fucy1NZWRpdW1JdGFsaWMudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpO1xuICBmb250LXdlaWdodDogNTAwO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwiT3BlbiBTYW5zXCI7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvT3BlblNhbnMvT3BlblNhbnMtU2VtaUJvbGQudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpO1xuICBmb250LXdlaWdodDogNjAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwiT3BlbiBTYW5zXCI7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvT3BlblNhbnMvT3BlblNhbnMtU2VtaUJvbGRJdGFsaWMudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpO1xuICBmb250LXdlaWdodDogNjAwO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwiT3BlbiBTYW5zXCI7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvT3BlblNhbnMvT3BlblNhbnMtQm9sZC50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIik7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJPcGVuIFNhbnNcIjtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9PcGVuU2Fucy9PcGVuU2Fucy1Cb2xkSXRhbGljLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcIk9wZW4gU2Fuc1wiO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL09wZW5TYW5zL09wZW5TYW5zLUV4dHJhQm9sZC50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIik7XG4gIGZvbnQtd2VpZ2h0OiA4MDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJPcGVuIFNhbnNcIjtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9PcGVuU2Fucy9PcGVuU2Fucy1FeHRyYUJvbGRJdGFsaWMudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpO1xuICBmb250LXdlaWdodDogODAwO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG4vKipcbiAqIEdyaWRcbiAqIEdyb3VwOiBTZXR0aW5nc1xuICovXG46cm9vdCB7XG4gIC0tZ3JpZC1jb2x1bW5zOiAxMjtcbiAgLS1ncmlkLWdhcDogMXJlbTtcbiAgLS1nYXAtdmVydGljYWw6IHZhcigtLWdyaWQtZ2FwKTtcbiAgLS1nYXAtaG9yaXpvbnRhbDogdmFyKC0tZ3JpZC1nYXApO1xuICAtLWdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDEyLCAxZnIpO1xuICAtLWdyaWQtdGVtcGxhdGUtY29sdW1ucy0yOiByZXBlYXQoMiwgMWZyKTtcbiAgLS1ncmlkLXRlbXBsYXRlLWNvbHVtbnMtMzogcmVwZWF0KDMsIDFmcik7XG4gIC0tZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zLTQ6IHJlcGVhdCg0LCAxZnIpO1xufVxuXG4vKipcbiAqIEljb25zXG4gKiBHcm91cDogU2V0dGluZ3NcbiAqL1xuOnJvb3Qge1xuICAtLWljb24tdW5pdDogMXJlbTtcbiAgLS1pY29uLWRlZmF1bHQ6IHZhcigtLWljb24tdW5pdCk7XG4gIC0taWNvbi14eHM6IGNhbGMoMC42MjUgKiB2YXIoLS1pY29uLXVuaXQpKTtcbiAgLS1pY29uLW14czogY2FsYygxLjEyNSAqIHZhcigtLWljb24tdW5pdCkpO1xuICAtLWljb24teHM6IGNhbGMoMS4yNSAqIHZhcigtLWljb24tdW5pdCkpO1xuICAtLWljb24tbXM6IGNhbGMoMS41ICogdmFyKC0taWNvbi11bml0KSk7XG4gIC0taWNvbi1zbTogY2FsYygyICogdmFyKC0taWNvbi11bml0KSk7XG4gIC0taWNvbi1tZDogY2FsYygyLjUgKiB2YXIoLS1pY29uLXVuaXQpKTtcbiAgLS1pY29uLWxnOiBjYWxjKDMgKiB2YXIoLS1pY29uLXVuaXQpKTtcbiAgLS1pY29uLXhsOiBjYWxjKDQgKiB2YXIoLS1pY29uLXVuaXQpKTtcbiAgLS1pY29uLTJ4bDogY2FsYyg1ICogdmFyKC0taWNvbi11bml0KSk7XG59XG5cbi8qKlxuICogSW5wdXRzXG4gKiBHcm91cDogU2V0dGluZ3NcbiAqL1xuOnJvb3Qge1xuICAtLWlucHV0LWhlaWdodC1zbWFsbDogMTZweDtcbiAgLS1pbnB1dC1oZWlnaHQtbWVkaXVtOiAxOHB4O1xuICAtLWlucHV0LWhlaWdodC1sYXJnZTogMjBweDtcbiAgLS1jaGVja2JveC1zaXplOiAxNnB4O1xuICAtLWNoZWNrYm94LXNpemUtc21hbGw6IDEycHg7XG59XG5cbi8qKlxuICogU2l6ZXNcbiAqIEdyb3VwOiBTZXR0aW5nc1xuICovXG46cm9vdCB7XG4gIC8qIE1heCB3aWR0aHMgKi9cbiAgLS1tYXgtd2lkdGgtLTl4czogOXJlbTtcbiAgLS1tYXgtd2lkdGgtLTh4czogMTByZW07XG4gIC0tbWF4LXdpZHRoLS03eHM6IDEycmVtO1xuICAtLW1heC13aWR0aC0tNnhzOiAxNHJlbTtcbiAgLS1tYXgtd2lkdGgtLTV4czogMTlyZW07XG4gIC0tbWF4LXdpZHRoLS00eHM6IDI1cmVtO1xuICAtLW1heC13aWR0aC0tM3hzOiAzMHJlbTtcbiAgLS1tYXgtd2lkdGgtLTJ4czogMzRyZW07XG4gIC0tbWF4LXdpZHRoLS14czogNDJyZW07XG4gIC0tbWF4LXdpZHRoLS1zbTogNTdyZW07XG4gIC0tbWF4LXdpZHRoLS1tZDogNjVyZW07XG4gIC0tbWF4LXdpZHRoLS1sZzogNzIuNXJlbTtcbiAgLS1tYXgtd2lkdGgtLXhsOiA4MHJlbTtcbiAgLS1tYXgtd2lkdGgtLTJ4bDogOTByZW07XG4gIC8qIE1pbiB3aWR0aHMgKi9cbiAgLS1taW4td2lkdGgtdGFibGUtbGlzdDogNTVyZW07XG4gIC0tbWluLXdpZHRoLXRyZWUtbGlzdDogNDByZW07XG4gIC8qIE1heCBoZWlnaHRzICovXG4gIC0tbWF4LWhlaWdodC1pbnRyby1iYW5uZXI6IDQyLjVyZW07XG4gIC0tbWF4LWhlaWdodC1tYXAtbGlzdDogMzJyZW07XG4gIC0tbWF4LWhlaWdodC1pbWFnZS1uZXdzOiAyNXJlbTtcbiAgLyogTWluIGhlaWdodHMgKi9cbiAgLS1taW4taGVpZ2h0LW1hcC1wYXJtYWN5OiAyNXJlbTtcbiAgLyogSGVpZ2h0cyAqL1xuICAtLWhlYWRlci10b3AtYmFyLWhlaWdodDogNHJlbTtcbiAgLS1oZWFkZXItbWFpbi1iYXItaGVpZ2h0OiA2LjI1cmVtO1xuICAtLWhlYWRlci1oZWlnaHQ6IGNhbGMoXG4gICAgdmFyKC0taGVhZGVyLXRvcC1iYXItaGVpZ2h0KSArIHZhcigtLWhlYWRlci1tYWluLWJhci1oZWlnaHQpXG4gICk7XG4gIC0tcGFnaW5hdGlvbi1oZWlnaHQ6IDMuNzVyZW07XG4gIC8qIFdpZHRocyAqL1xuICAtLXNpZGViYXItd2lkdGg6IDEwMCU7XG4gIC0tY29udGVudC13aWR0aDogMTAwJTtcbiAgLyogU2l6aW5nICovXG4gIC0tcGFnZS1tYXgtd3JhcHBlcjogMTIwcmVtO1xuICAtLXBhZ2UtbWF4LXdyYXBwZXItbGFyZ2U6IDE2MHJlbTtcbn1cblxuLyoqXG4gKiBTcGFjaW5nXG4gKiBHcm91cDogU2V0dGluZ3NcbiAqL1xuOnJvb3Qge1xuICAtLXNwYWNpbmctdW5pdDogMXJlbTtcbiAgLS1zcGFjaW5nLWRlZmF1bHQ6IHZhcigtLXNwYWNpbmctdW5pdCk7XG4gIC0tc3BhY2luZy0wMDA6IGNhbGMoMCAqIHZhcigtLXNwYWNpbmctdW5pdCkpO1xuICAtLXNwYWNpbmctMDEyOiBjYWxjKDAuMTI1ICogdmFyKC0tc3BhY2luZy11bml0KSk7XG4gIC0tc3BhY2luZy0wMjU6IGNhbGMoMC4yNSAqIHZhcigtLXNwYWNpbmctdW5pdCkpO1xuICAtLXNwYWNpbmctMDM3OiBjYWxjKDAuMzc1ICogdmFyKC0tc3BhY2luZy11bml0KSk7XG4gIC0tc3BhY2luZy0wNTA6IGNhbGMoMC41ICogdmFyKC0tc3BhY2luZy11bml0KSk7XG4gIC0tc3BhY2luZy0wNzU6IGNhbGMoMC43NSAqIHZhcigtLXNwYWNpbmctdW5pdCkpO1xuICAtLXNwYWNpbmctMTAwOiBjYWxjKDEgKiB2YXIoLS1zcGFjaW5nLXVuaXQpKTtcbiAgLS1zcGFjaW5nLTEyNTogY2FsYygxLjI1ICogdmFyKC0tc3BhY2luZy11bml0KSk7XG4gIC0tc3BhY2luZy0xNTA6IGNhbGMoMS41ICogdmFyKC0tc3BhY2luZy11bml0KSk7XG4gIC0tc3BhY2luZy0yMDA6IGNhbGMoMiAqIHZhcigtLXNwYWNpbmctdW5pdCkpO1xuICAtLXNwYWNpbmctMjUwOiBjYWxjKDIuNSAqIHZhcigtLXNwYWNpbmctdW5pdCkpO1xuICAtLXNwYWNpbmctMzAwOiBjYWxjKDMgKiB2YXIoLS1zcGFjaW5nLXVuaXQpKTtcbiAgLS1zcGFjaW5nLTM1MDogY2FsYygzLjUgKiB2YXIoLS1zcGFjaW5nLXVuaXQpKTtcbiAgLS1zcGFjaW5nLTQwMDogY2FsYyg0ICogdmFyKC0tc3BhY2luZy11bml0KSk7XG4gIC0tc3BhY2luZy01MDA6IGNhbGMoNSAqIHZhcigtLXNwYWNpbmctdW5pdCkpO1xuICAtLXNwYWNpbmctNjAwOiBjYWxjKDYgKiB2YXIoLS1zcGFjaW5nLXVuaXQpKTtcbiAgLS1zcGFjaW5nLTcwMDogY2FsYyg3ICogdmFyKC0tc3BhY2luZy11bml0KSk7XG4gIC0tc3BhY2luZy04MDA6IGNhbGMoOCAqIHZhcigtLXNwYWNpbmctdW5pdCkpO1xuICAtLXNwYWNpbmctMTAwMDogY2FsYygxMCAqIHZhcigtLXNwYWNpbmctdW5pdCkpO1xuICAtLXNwYWNpbmctMTIwMDogY2FsYygxMiAqIHZhcigtLXNwYWNpbmctdW5pdCkpO1xuICAtLXNwYWNpbmctMTYwMDogY2FsYygxNiAqIHZhcigtLXNwYWNpbmctdW5pdCkpO1xuICAtLXNwYWNpbmctMjAwMDogY2FsYygyMCAqIHZhcigtLXNwYWNpbmctdW5pdCkpO1xuICAtLXNwYWNpbmctMjQwMDogY2FsYygyNCAqIHZhcigtLXNwYWNpbmctdW5pdCkpO1xuICAtLXNwYWNpbmctMzIwMDogY2FsYygzMiAqIHZhcigtLXNwYWNpbmctdW5pdCkpO1xuICAtLXNwYWNpbmctMzcwMDogY2FsYygzNyAqIHZhcigtLXNwYWNpbmctdW5pdCkpO1xuICAtLXNwYWNpbmctNDAwMDogY2FsYyg0MCAqIHZhcigtLXNwYWNpbmctdW5pdCkpO1xufVxuXG4vKipcbiAqIFN3aXBlclxuICogR3JvdXA6IFNldHRpbmdzXG4gKi9cbjpyb290IHtcbiAgLS1zd2lwZXItcGFnaW5hdGlvbi1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtb3JhbmdlKTtcbiAgLS1zd2lwZXItbmF2aWdhdGlvbi1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtb3JhbmdlKTtcbiAgLS1zd2lwZXItcGFnaW5hdGlvbi1sZWZ0OiBhdXRvO1xuICAtLXN3aXBlci1wYWdpbmF0aW9uLXJpZ2h0OiA4cHg7XG4gIC0tc3dpcGVyLXBhZ2luYXRpb24tYm90dG9tOiA4cHg7XG4gIC0tc3dpcGVyLXBhZ2luYXRpb24tdG9wOiBhdXRvO1xuICAtLXN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1zaXplOiB2YXIoLS1zcGFjaW5nLTEwMCk7XG4gIC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LXdpZHRoOiB2YXIoLS1zcGFjaW5nLTEwMCk7XG4gIC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWhlaWdodDogdmFyKC0tc3BhY2luZy0wNTApO1xuICAtLXN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1pbmFjdGl2ZS1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtbGlnaHQtZ3JheSk7XG4gIC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWluYWN0aXZlLW9wYWNpdHk6IDE7XG4gIC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LW9wYWNpdHk6IDE7XG4gIC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWhvcml6b250YWwtZ2FwOiB2YXIoLS1zcGFjaW5nLTA1MCk7XG4gIC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LXZlcnRpY2FsLWdhcDogdmFyKC0tc3BhY2luZy0xMDApO1xuICAtLXN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1ib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXhzKTtcbn1cblxuLyoqXG4gKiBUeXBvZ3JhcGh5XG4gKiBHcm91cDogU2V0dGluZ3NcbiAqL1xuOnJvb3Qge1xuICAvKiBGb250IEZhY2VzICovXG4gIC0tZm9udC1wcmltYXJ5OiBcIk9wZW4gU2Fuc1wiLCBzYW5zLXNlcmlmO1xuICAtLWZvbnQtbW9ubzogXCJNb25hY29cIiwgbW9ub3NwYWNlO1xuICAtLWZvbnQtYXdlc29tZTogXCJGb250QXdlc29tZVwiO1xuICAvKiBUeXBlIGJhc2UgKi9cbiAgLS10ZXh0LWJhc2Utc2l6ZTogMWVtO1xuICAvKiBGb250IFdlaWdodHMgKi9cbiAgLS1mb250LXdlaWdodC10aGluOiAxMDA7XG4gIC0tZm9udC13ZWlnaHQtZXh0cmFsaWdodDogMjAwO1xuICAtLWZvbnQtd2VpZ2h0LWxpZ2h0OiAzMDA7XG4gIC0tZm9udC13ZWlnaHQtcmVndWxhcjogNDAwO1xuICAtLWZvbnQtd2VpZ2h0LW1lZGl1bTogNTAwO1xuICAtLWZvbnQtd2VpZ2h0LXNlbWlib2xkOiA2MDA7XG4gIC0tZm9udC13ZWlnaHQtYm9sZDogNzAwO1xuICAtLWZvbnQtd2VpZ2h0LWV4dHJhYm9sZDogODAwO1xuICAtLWZvbnQtd2VpZ2h0LWJsYWNrOiA5MDA7XG4gIC8qIExldHRlciBTcGFjaW5ncyAqL1xuICAtLXRyYWNraW5nLXRpZ2h0OiAtMC4wMTU2cmVtO1xuICAtLXRyYWNraW5nLW5vcm1hbDogMHJlbTtcbiAgLS10cmFja2luZy13aWRlOiAwLjAwNjNyZW07XG4gIC0tdHJhY2tpbmctd2lkZS1sZzogMC4wMzEzcmVtO1xuICAtLXRyYWNraW5nLXdpZGUteGw6IDAuMDYyNXJlbTtcbiAgLS10cmFja2luZy13aWRlLTJ4bDogMC4wOTM4cmVtO1xuICAtLXRyYWNraW5nLXdpZGUtM3hsOiAwLjE4NzVyZW07XG4gIC8qIExpbmUgaGVpZ2h0cyAqL1xuICAtLWxlYWRpbmctbm9uZTogMTtcbiAgLS1sZWFkaW5nLXRpZ2h0OiAxLjI1O1xuICAtLWxlYWRpbmctbm9ybWFsOiAxLjU7XG4gIC0tbGVhZGluZy1yZWxheGVkOiAxLjY7XG4gIC0tbGVhZGluZy1sb29zZTogMjtcbiAgLS1sZWFkaW5nLWV4dHJhLWxvb3NlOiAyLjY3O1xuICAvKiBCb2R5IHZhcmlhYmxlcyAqL1xuICAtLWJvZHktZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICAtLWJvZHktZXh0cmEtc21hbGwtZm9udC1zaXplOiAwLjc1cmVtO1xuICAtLWJvZHktc21hbGwtZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgLS1ib2R5LXNtYWxsLWxldHRlci1zcGFjaW5nOiB2YXIoLS10cmFja2luZy1ub3JtYWwpO1xuICAtLWJvZHktc21hbGwtbGluZS1oZWlnaHQ6IHZhcigtLWxlYWRpbmctbm9ybWFsKTtcbiAgLS1ib2R5LWZvbnQtc2l6ZTogMXJlbTtcbiAgLS1ib2R5LWxldHRlci1zcGFjaW5nOiB2YXIoLS10cmFja2luZy1ub3JtYWwpO1xuICAtLWJvZHktbGluZS1oZWlnaHQ6IHZhcigtLWxlYWRpbmctbm9ybWFsKTtcbiAgLS1ib2R5LW1lZGl1bS1mb250LXNpemU6IDEuMTI1cmVtO1xuICAtLWJvZHktbWVkaXVtLWxldHRlci1zcGFjaW5nOiB2YXIoLS10cmFja2luZy1ub3JtYWwpO1xuICAtLWJvZHktbWVkaXVtLWxpbmUtaGVpZ2h0OiB2YXIoLS1sZWFkaW5nLW5vcm1hbCk7XG4gIC0tYm9keS1sYXJnZS1mb250LXNpemU6IDEuNXJlbTtcbiAgLS1ib2R5LWxhcmdlLWxldHRlci1zcGFjaW5nOiB2YXIoLS10cmFja2luZy1ub3JtYWwpO1xuICAtLWJvZHktbGFyZ2UtbGluZS1oZWlnaHQ6IHZhcigtLWxlYWRpbmctbm9ybWFsKTtcbiAgLS1oMS1mb250LXNpemU6IDMuNjI1cmVtO1xuICAtLWgxLWZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbiAgLS1oMS1sZXR0ZXItc3BhY2luZzogdmFyKC0tdHJhY2tpbmctbm9ybWFsKTtcbiAgLS1oMS1saW5lLWhlaWdodDogdmFyKC0tbGVhZGluZy10aWdodCk7XG4gIC0taDItZm9udC1zaXplOiAyLjEyNXJlbTtcbiAgLS1oMi1mb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIC0taDItbGV0dGVyLXNwYWNpbmc6IHZhcigtLXRyYWNraW5nLW5vcm1hbCk7XG4gIC0taDItbGluZS1oZWlnaHQ6IHZhcigtLWxlYWRpbmctbm9ybWFsKTtcbiAgLS1oMy1mb250LXNpemU6IDEuNXJlbTtcbiAgLS1oMy1mb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIC0taDMtbGV0dGVyLXNwYWNpbmc6IHZhcigtLXRyYWNraW5nLW5vcm1hbCk7XG4gIC0taDMtbGluZS1oZWlnaHQ6IHZhcigtLWxlYWRpbmctdGlnaHQpO1xuICAtLWg0LWZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgLS1oNC1mb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIC0taDQtbGV0dGVyLXNwYWNpbmc6IHZhcigtLXRyYWNraW5nLW5vcm1hbCk7XG4gIC0taDQtbGluZS1oZWlnaHQ6IHZhcigtLWxlYWRpbmctbm9ybWFsKTtcbiAgLS1oNS1mb250LXNpemU6IDEuMTI1cmVtO1xuICAtLWg1LWZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbiAgLS1oNS1sZXR0ZXItc3BhY2luZzogdmFyKC0tdHJhY2tpbmctbm9ybWFsKTtcbiAgLS1oNS1saW5lLWhlaWdodDogdmFyKC0tbGVhZGluZy1ub3JtYWwpO1xuICAtLWg2LWZvbnQtc2l6ZTogMXJlbTtcbiAgLS1oNi1mb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIC0taDYtbGV0dGVyLXNwYWNpbmc6IHZhcigtLXRyYWNraW5nLW5vcm1hbCk7XG4gIC0taDYtbGluZS1oZWlnaHQ6IHZhcigtLWxlYWRpbmctbm9ybWFsKTtcbn1cblxuLyoqXG4gKiBWYXJpYWJsZXNcbiAqIFwiR3JvdXBcIiBTZXR0aW5nc1xuICovXG46cm9vdCB7XG4gIC0tc2hhZGUtY29sb3ItaDogMDtcbiAgLS1zaGFkZS1jb2xvci1zOiAwJTtcbiAgLS1zaGFkZS1jb2xvci1sOiAwJTtcbn1cblxuLyoqXG4gKiBNYWluIFRvb2xzIEZpbGVcbiAqIEdyb3VwOiBUb29sc1xuICovXG4vKipcbiAqIEExMXlcbiAqIEdyb3VwOiBUb29sc1xuICovXG4vKiBUaGlzIGlzIHRvIGNvdmVyIFZvaWNlLW92ZXIgZGV2aWNlcyBmb3IgYWNjZXNzaWJpbGl0eSBwdXJwb3NlcyAqL1xuLyoqXG4gICogU2tpcCBsaW5rIG1peGluXG4gICogVmlzdWFsbHkgaGlkZXMgYW4gZWxlbWVudCBvZmYtc2NyZWVuIGJ1dCBtYWtlcyBpdCB2aXNpYmxlIGFuZCBhY2Nlc3NpYmxlXG4gICogd2hlbiBmb2N1c2VkIChlLmcuLCBmb3Iga2V5Ym9hcmQgdXNlcnMgdG8gc2tpcCB0byBtYWluIGNvbnRlbnQpLlxuICAqIEZvbGxvd3MgV0NBRyAyLjIgYWNjZXNzaWJpbGl0eSBiZXN0IHByYWN0aWNlcy5cbiAgKiBVc2Ugb24gYC51LXNraXAtbGlua2Agb3IgZXF1aXZhbGVudCB1dGlsaXR5IGNsYXNzLlxuICAqL1xuLyoqXG4gKiBBbmltYXRpb25zXG4gKiBHcm91cDogVG9vbHNcbiAqL1xuLyoqXG4gKiBPbiBFdmVudFxuICogR3JvdXA6IFRvb2xzXG4gKi9cbi8qKlxuICogQm94IFNoYWRvd3NcbiAqIEdyb3VwOiBUb29sc1xuICpcbiAqIEBtaXhpbiBib3gtc2hhZG93XG4gKiBcbiAqIEBwYXJhbSB7U3RyaW5nfSAkc3R5bGUgLSDOpM6/IM+Dz4TPhc67IM+Ezr/PhSBib3gtc2hhZG93LiDOlc+AzrnPhM+BzrXPgM+MzrzOtc69zrXPgiDPhM65zrzOrc+COiAnMDEnLCAnMDInLCAnMDMnLCAnMDQnLCAnMDUnLCAnMDYnLlxuICogQHBhcmFtIHtTdHJpbmd9ICR0aGVtZSAtIM6kzr8gzrjOrc68zrEgz4TOt8+CIM+DzrrOuc6sz4IuIM6Vz4DOuc+Ez4HOtc+Az4zOvM61zr3Otc+CIM+EzrnOvM6tz4I6ICdsaWdodCcsICdkYXJrJy5cbiAqIEBwYXJhbSB7Qm9vbGVhbn0gJGltcG9ydGFudCAtIM6Rzr0gzrXOr869zrHOuSBgdHJ1ZWAsIM+Az4HOv8+DzrjOrc+EzrXOuSDPhM6/IGAhaW1wb3J0YW50YCDPg8+EzrfOvSDOuc60zrnPjM+EzrfPhM6xIGJveC1zaGFkb3cuIM6gz4HOv861z4DOuc67zr/Os86uOiBgZmFsc2VgLlxuICogXG4gKiBAZXhhbXBsZVxuICogLmVsZW1lbnQge1xuICogICBAaW5jbHVkZSBib3gtc2hhZG93KCcwMycsICdkYXJrJyk7XG4gKiB9XG4gKi9cbi8qKlxuICogQnJlYWtwb2ludHMgTWl4aW5zXG4gKiBHcm91cDogVG9vbHNcbiAqL1xuLyoqXG4gKiBBbmltYXRpb25zXG4gKiBHcm91cDogVG9vbHNcbiAqL1xuLyoqXG4gKiBCdXR0b25cbiAqIEdyb3VwOiBUb29sc1xuICovXG4vKipcbiAqIENsZWFyZml4XG4gKiBHcm91cDogVG9vbHNcbiAqL1xuLypcblx0TWl4aW4gdG8gZHJvcCBtaWNybyBjbGVhcmZpeCBpbnRvIGEgc2VsZWN0b3IuIEZ1cnRoZXIgcmVhZGluZzpcblx0aHR0cDovL3d3dy5jc3Ntb2pvLmNvbS90aGUtdmVyeS1sYXRlc3QtY2xlYXJmaXgtcmVsb2FkZWQvXG5cblx0LnVzYWdlIHtcblx0XHRAaW5jbHVkZSBjbGVhcmZpeCgpO1xuXHR9XG5cbiAqL1xuLyoqXG4gKiBDb2xvcnNcbiAqXG4gKiBHcm91cDogVG9vbHNcbiAqL1xuOnJvb3Qge1xuICAtLWNvbG9yLWJyYW5kLWJyb3duLXNlbWktdHJhbnNwYXJlbnQ6ICNmYmYwZGE7XG4gIC0tY29sb3ItYnJhbmQtYnJvd246ICM3MzUxMGQ7XG4gIC0tY29sb3ItYnJhbmQtcmVkLXNlbWktdHJhbnNwYXJlbnQ6ICNmOWUxZTU7XG4gIC0tY29sb3ItYnJhbmQtZGFyay1yZWQ6ICNhZjIzM2E7XG4gIC0tY29sb3ItYnJhbmQtcmVkOiAjZjllMWU1O1xuICAtLWNvbG9yLWFsZXJ0LWdyZWVuLWRhcms6ICMwZDY4MzI7XG4gIC0tY29sb3ItYnJhbmQtZ3JlZW46ICNkNmYwZTA7XG4gIC0tY29sb3ItYnJhbmQtYmx1ZTogIzAwMzM3NTtcbiAgLS1jb2xvci1icmFuZC1ibHVlLWxpZ2h0OiAjMWM2NTdkO1xuICAtLWNvbG9yLWJyYW5kLWJsdWUtbGlnaHQtc2VtaS10cmFuc3BhcmVudDogI2RlZjFmNztcbiAgLS1jb2xvci1icmFuZC1ibHVlLXNlbWktdHJhbnNwYXJlbnQ6IHJnYmEoMTg3LCAxMDcsIDIxNywgMC4yKTtcbiAgLS1jb2xvci1icmFuZC1vcmFuZ2U6ICNmODliMzQ7XG4gIC0tY29sb3ItYnJhbmQtZGFyay1ncmF5OiAjMzMzMzMzO1xuICAtLWNvbG9yLWJyYW5kLWdyYXk6ICM1NzU3NTc7XG4gIC0tY29sb3ItYnJhbmQtYmx1ZS1kYXJrOiAjNGI2NTg3O1xuICAtLWNvbG9yLWJyYW5kLXdoaXRlOiAjZmZmZmZmO1xuICAtLWNvbG9yLWJyYW5kLWxpZ2h0LWdyYXk6ICNlOGU4ZTg7XG4gIC0tY29sb3ItYnJhbmQtbGlnaHRlci1ncmF5OiAjZWVlZWVlO1xuICAtLWNvbG9yLWJyYW5kLXNlYXJjaC1ncmF5OiAjZDlkOWQ5O1xuICAtLWNvbG9yLW5ldXRyYWwtMTAwMDogIzBhMGEwYTtcbiAgLS1jb2xvci1uZXV0cmFsLTk3NTogIzFmMjAyMTtcbiAgLS1jb2xvci1uZXV0cmFsLTk1MDogIzIzMjYyNjtcbiAgLS1jb2xvci1uZXV0cmFsLTkwMDogIzNiM2Q0MDtcbiAgLS1jb2xvci1uZXV0cmFsLTgwMDogIzUzNTY1YTtcbiAgLS1jb2xvci1uZXV0cmFsLTcwMDogIzVlNjE2NjtcbiAgLS1jb2xvci1uZXV0cmFsLTYwMDogIzc2N2E4MDtcbiAgLS1jb2xvci1uZXV0cmFsLTUwMDogIzdmODQ4YTtcbiAgLS1jb2xvci1uZXV0cmFsLTQwMDogIzk5OWVhNjtcbiAgLS1jb2xvci1uZXV0cmFsLTMwMDogI2I1YmNjNDtcbiAgLS1jb2xvci1uZXV0cmFsLTIwMDogI2QxZDZkZTtcbiAgLS1jb2xvci1uZXV0cmFsLTEwMDogI2RmZTVlZDtcbiAgLS1jb2xvci1uZXV0cmFsLTA1MDogI2YyZjdmZjtcbiAgLS1jb2xvci1uZXV0cmFsLTAwMDogI2ZhZmFmYTtcbiAgLS1jb2xvci1kYXJrOiBoc2woMTAwLCAxMDAlLCAwJSk7XG4gIC0tY29sb3ItbGlnaHQ6IGhzbCgwLCAwJSwgMTAwJSk7XG4gIC0tY29sb3ItZmFkZS1saWdodC01OiByZ2JhKDI0MiwgMjQyLCAyNDIsIDAuMDUwOTgwMzkyMik7XG4gIC0tY29sb3ItZmFkZS1saWdodC0xMDogcmdiYSgyNDIsIDI0MiwgMjQyLCAwLjEwMTk2MDc4NDMpO1xuICAtLWNvbG9yLWZhZGUtbGlnaHQtMjA6IHJnYmEoMjQyLCAyNDIsIDI0MiwgMC4yKTtcbiAgLS1jb2xvci1mYWRlLWxpZ2h0LTMwOiByZ2JhKDI0MiwgMjQyLCAyNDIsIDAuMzAxOTYwNzg0Myk7XG4gIC0tY29sb3ItZmFkZS1saWdodC00MDogcmdiYSgyNDIsIDI0MiwgMjQyLCAwLjQpO1xuICAtLWNvbG9yLWZhZGUtbGlnaHQtNTA6IHJnYmEoMjQyLCAyNDIsIDI0MiwgMC41MDE5NjA3ODQzKTtcbiAgLS1jb2xvci1mYWRlLWxpZ2h0LTYwOiByZ2JhKDI0MiwgMjQyLCAyNDIsIDAuNik7XG4gIC0tY29sb3ItZmFkZS1saWdodC03MDogcmdiYSgyNDIsIDI0MiwgMjQyLCAwLjY5ODAzOTIxNTcpO1xuICAtLWNvbG9yLWZhZGUtbGlnaHQtODA6IHJnYmEoMjQyLCAyNDIsIDI0MiwgMC44KTtcbiAgLS1jb2xvci1mYWRlLWxpZ2h0LTkwOiByZ2JhKDI0MiwgMjQyLCAyNDIsIDAuODk4MDM5MjE1Nyk7XG4gIC0tY29sb3ItZmFkZS1kYXJrLTU6IHJnYmEoMjksIDI3LCAzMiwgMC4wNTA5ODAzOTIyKTtcbiAgLS1jb2xvci1mYWRlLWRhcmstMTA6IHJnYmEoMjksIDI3LCAzMiwgMC4xMDE5NjA3ODQzKTtcbiAgLS1jb2xvci1mYWRlLWRhcmstMjA6IHJnYmEoMjksIDI3LCAzMiwgMC4yKTtcbiAgLS1jb2xvci1mYWRlLWRhcmstMzA6IHJnYmEoMjksIDI3LCAzMiwgMC4zMDE5NjA3ODQzKTtcbiAgLS1jb2xvci1mYWRlLWRhcmstNDA6IHJnYmEoMjksIDI3LCAzMiwgMC40KTtcbiAgLS1jb2xvci1mYWRlLWRhcmstNTA6IHJnYmEoMjksIDI3LCAzMiwgMC41MDE5NjA3ODQzKTtcbiAgLS1jb2xvci1mYWRlLWRhcmstNjA6IHJnYmEoMjksIDI3LCAzMiwgMC42KTtcbiAgLS1jb2xvci1mYWRlLWRhcmstNzA6IHJnYmEoMjksIDI3LCAzMiwgMC42OTgwMzkyMTU3KTtcbiAgLS1jb2xvci1mYWRlLWRhcmstODA6IHJnYmEoMjksIDI3LCAzMiwgMC44KTtcbiAgLS1jb2xvci1mYWRlLWRhcmstOTA6IHJnYmEoMjksIDI3LCAzMiwgMC44OTgwMzkyMTU3KTtcbiAgLS1jb2xvci1mb2N1cy1zdHJva2U6ICNmZWRjMDA7XG4gIC0tY29sb3ItdGV4dDogdmFyKC0tbmV1dHJhbC0xMDAwKTtcbiAgLS1jb2xvci10ZXh0LWxpZ2h0OiB2YXIoLS1saWdodCk7XG4gIC0tb3ZlcmxheS1jb2xvcjogcmdiKDAgMCAwIC8gODQlKTtcbiAgLS1vdmVybGF5LWNvbG9yLWxpZ2h0OiByZ2IoMCAwIDAgLyAzNSUpO1xufVxuXG4vKipcbiAqIExpbmVhciBHcmFkaWVudCBNaXhpblxuICogR3JvdXA6IFRvb2xzXG4gKiBcbiAqIEdlbmVyYXRlcyBhIGxpbmVhciBncmFkaWVudCBiYWNrZ3JvdW5kIHdpdGggY3VzdG9taXphYmxlIGRpcmVjdGlvbiwgY29sb3JzLCBhbmQgc3RvcHMuXG4gKiBcbiAqIEBtaXhpbiBsaW5lYXItZ3JhZGllbnQoXG4gKiAgICRkaXJlY3Rpb246IHRvIGJvdHRvbSwgICAgICAgICAvLyBEaXJlY3Rpb24gb2YgdGhlIGdyYWRpZW50IChlLmcuLCAndG8gcmlnaHQnLCAnNDVkZWcnKVxuICogICAkc3RhcnQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCksIC8vIFN0YXJ0aW5nIGNvbG9yIG9mIHRoZSBncmFkaWVudFxuICogICAkc3RhcnQtcGVyY2VudDogMCUsICAgICAgICAgICAgLy8gUGVyY2VudGFnZSBwb3NpdGlvbiB3aGVyZSB0aGUgc3RhcnRpbmcgY29sb3IgYmVnaW5zXG4gKiAgICRlbmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC43KSwgLy8gRW5kaW5nIGNvbG9yIG9mIHRoZSBncmFkaWVudFxuICogICAkZW5kLXBlcmNlbnQ6IDcwJSwgICAgICAgICAgICAgLy8gUGVyY2VudGFnZSBwb3NpdGlvbiB3aGVyZSB0aGUgZW5kaW5nIGNvbG9yIGVuZHNcbiAqICAgJGltcG9ydGFudDogZmFsc2UgICAgICAgICAgICAgICAvLyBJZiB0cnVlLCBhcHBlbmRzIGAhaW1wb3J0YW50YCB0byB0aGUgYmFja2dyb3VuZCBwcm9wZXJ0eVxuICogKVxuICogXG4gKiBAZXhhbXBsZVxuICogLmN0YV9fYnV0dG9uLS1ncmFkaWVudCB7XG4gKiAgIEBpbmNsdWRlIGxpbmVhci1ncmFkaWVudCgyNzBkZWcsIHJnYmEoMCwgMCwgMCwgMC4wMCksIDM0LjUlLCByZ2JhKDAsIDAsIDAsIDAuNzApLCA2MyUpO1xuICogfVxuICogXG4gKiBAZXhhbXBsZVxuICogLmN0YV9fYnV0dG9uLS1ncmFkaWVudC1pbXBvcnRhbnQge1xuICogICBAaW5jbHVkZSBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICNGRjU3MzMsIDAlLCByZ2JhKDI1NSwgODcsIDUxLCAwLjUpLCAxMDAlLCB0cnVlKTtcbiAqIH1cbiAqXHQwZGVnOiBQb2ludHMgdG8gdG9wLlxuICogIDkwZGVnOiBQb2ludHMgdG8gcmlnaHQuXG4gKlx0MTgwZGVnOiBQb2ludHMgdG8gYm90dG9tLlxuICpcdDI3MGRlZzogUG9pbnRzIHRvIGxlZnQuXG4gKi9cbi8qKlxuICogSW5wdXRcbiAqIEdyb3VwOiBUb29sc1xuICovXG4vKipcbiAqIFBsYWNlaG9sZGVyXG4gKiBHcm91cDogVG9vbHNcbiAqL1xuLyogc3R5bGVsaW50LWRpc2FibGUgKi9cbi8qIHByZXR0aWVyLWlnbm9yZSAqL1xuLyoqXG4gKiBUeXBvZ3JhcGh5XG4gKiBHcm91cDogVG9vbHNcbiAqL1xuLyoqXG4gKiBBbmltYXRpb25zXG4gKiBHcm91cDogVG9vbHNcbiAqL1xuLyoqXG4gKiBBbmltYXRpb25zXG4gKiBHcm91cDogVG9vbHNcbiAqL1xuLyoqXG4gKiBJbnB1dFxuICogR3JvdXA6IFRvb2xzXG4gKi9cbi8qKlxuICogU2NyZWVuIFJlYWRlciBPbmx5XG4gKiBHcm91cDogVG9vbHNcbiAqL1xuLyoqXG4gKiBTcGFjaW5nXG4gKiBHcm91cDogVG9vbHNcbiAqL1xuLyoqXG4gKiBNYWluIEdlbmVyaWMgRmlsZVxuICogR3JvdXA6IEdlbmVyaWNcbiAqL1xuLyoqXG4gKiBBbmltYXRpb25zXG4gKiBHcm91cDogR2VuZXJpY1xuICAqIFRoaXMgZmlsZSBjb250YWlucyByZXVzYWJsZSBrZXlmcmFtZSBhbmltYXRpb25zIGZvciB2YXJpb3VzIHZpc3VhbCBlZmZlY3RzLlxuICogSXQgaW5jbHVkZXMgdXRpbGl0eSBjbGFzc2VzIHByZWZpeGVkIHdpdGggYGFuaW1hdGUtYCBmb3IgZWFzeSBhcHBsaWNhdGlvbi5cbiAqL1xuLyogVXRpbGl0eSBjbGFzc2VzIGZvciBhbmltYXRpbmcgZWxlbWVudHMgKi9cbltjbGFzc149YW5pbWF0ZS1dLFxuW2NsYXNzKj1cIiBhbmltYXRlLVwiXSB7XG4gIHZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDtcbn1cblxuLyogU2xpZGUgRG93biBBbmltYXRpb24gKi9cbi8qKlxuICogQGFuaW1hdGlvbiBzbGlkZS1kb3duXG4gKiBNb3ZlcyBhbiBlbGVtZW50IGZyb20gYWJvdmUgdGhlIHZpZXdwb3J0IGludG8gaXRzIG5vcm1hbCBwb3NpdGlvbiB3aXRoIGEgc21vb3RoIHRyYW5zaXRpb24uXG4gKiBVc2UgdGhpcyBmb3IgZHJvcGRvd25zLCBtb2RhbHMsIG9yIG1vYmlsZSBtZW51cy5cbiAqL1xuQGtleWZyYW1lcyBzbGlkZS1kb3duIHtcbiAgZnJvbSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIHRvIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuLyogU2xpZGUgVXAgQW5pbWF0aW9uICovXG4vKipcbiAqIEBhbmltYXRpb24gc2xpZGUtdXBcbiAqIE1vdmVzIGFuIGVsZW1lbnQgZnJvbSBpdHMgbm9ybWFsIHBvc2l0aW9uIHRvIGFib3ZlIHRoZSB2aWV3cG9ydCB3aXRoIGEgc21vb3RoIHRyYW5zaXRpb24uXG4gKiBVc2UgdGhpcyBmb3IgaGlkaW5nIGRyb3Bkb3ducywgbW9kYWxzLCBvciBtb2JpbGUgbWVudXMuXG4gKi9cbkBrZXlmcmFtZXMgc2xpZGUtdXAge1xuICBmcm9tIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlWSgwKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIHRvIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlWSgxKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG4vKiBTbGlkZSBMZWZ0IEFuaW1hdGlvbiAqL1xuLyoqXG4gKiBAYW5pbWF0aW9uIHNsaWRlLWxlZnRcbiAqIE1vdmVzIGFuIGVsZW1lbnQgZnJvbSBhYm92ZSB0aGUgdmlld3BvcnQgaW50byBpdHMgbm9ybWFsIHBvc2l0aW9uIHdpdGggYSBzbW9vdGggdHJhbnNpdGlvbi5cbiAqIFVzZSB0aGlzIGZvciBkcm9wZG93bnMsIG1vZGFscywgb3IgbW9iaWxlIG1lbnVzLlxuICovXG5Aa2V5ZnJhbWVzIHNsaWRlLWxlZnQge1xuICBmcm9tIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlWCgwKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIHRvIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlWCgxKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG4vKiBGYWRlIEluIEFuaW1hdGlvbiAqL1xuLyoqXG4gKiBAYW5pbWF0aW9uIGZhZGUtaW5cbiAqIEdyYWR1YWxseSBpbmNyZWFzZXMgdGhlIG9wYWNpdHkgb2YgYW4gZWxlbWVudCBmcm9tIDAgdG8gMS5cbiAqIFVzZSB0aGlzIGZvciB0b29sdGlwcywgcG9wdXBzLCBvciBzdWJ0bGUgYXBwZWFyYW5jZSBlZmZlY3RzLlxuICovXG5Aa2V5ZnJhbWVzIGZhZGUtaW4ge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIHRvIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG4vKiBGYWRlIE91dCBBbmltYXRpb24gKi9cbi8qKlxuICogQGFuaW1hdGlvbiBmYWRlLW91dFxuICogR3JhZHVhbGx5IGRlY3JlYXNlcyB0aGUgb3BhY2l0eSBvZiBhbiBlbGVtZW50IGZyb20gMSB0byAwLlxuICogVXNlIHRoaXMgZm9yIGRpc21pc3NpbmcgdG9vbHRpcHMsIHBvcHVwcywgb3Igc3VidGxlIGRpc2FwcGVhcmFuY2UgZWZmZWN0cy5cbiAqL1xuQGtleWZyYW1lcyBmYWRlLW91dCB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cbi8qIFNjYWxlIEluIEFuaW1hdGlvbiAqL1xuLyoqXG4gKiBAYW5pbWF0aW9uIHNjYWxlLWluXG4gKiBHcmFkdWFsbHkgc2NhbGVzIGFuIGVsZW1lbnQgZnJvbSAwLjh4IHRvIGl0cyBub3JtYWwgc2l6ZS5cbiAqIFVzZSB0aGlzIGZvciBtb2RhbHMsIGltYWdlcywgb3Igem9vbSBlZmZlY3RzLlxuICovXG5Aa2V5ZnJhbWVzIHNjYWxlLWluIHtcbiAgZnJvbSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwLjgpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuLyogU2NhbGUgT3V0IEFuaW1hdGlvbiAqL1xuLyoqXG4gKiBAYW5pbWF0aW9uIHNjYWxlLW91dFxuICogR3JhZHVhbGx5IHNjYWxlcyBhbiBlbGVtZW50IGZyb20gaXRzIG5vcm1hbCBzaXplIHRvIDAuOHguXG4gKiBVc2UgdGhpcyBmb3IgZGlzbWlzc2luZyBtb2RhbHMsIGltYWdlcywgb3Igem9vbSBlZmZlY3RzLlxuICovXG5Aa2V5ZnJhbWVzIHNjYWxlLW91dCB7XG4gIGZyb20ge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuICB0byB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwLjgpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cbi8qIEJvdW5jZSBBbmltYXRpb24gKi9cbi8qKlxuICogQGFuaW1hdGlvbiBib3VuY2VcbiAqIENyZWF0ZXMgYSBib3VuY2luZyBlZmZlY3QgZm9yIGFuIGVsZW1lbnQuXG4gKiBVc2UgdGhpcyBmb3IgY2FsbC10by1hY3Rpb24gYnV0dG9ucyBvciBhdHRlbnRpb24tZ3JhYmJpbmcgZWZmZWN0cy5cbiAqL1xuQGtleWZyYW1lcyBib3VuY2Uge1xuICAwJSwgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG4gIDUwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMCUpO1xuICB9XG59XG4vKipcbiAqIEBhbmltYXRpb24gYm91bmNlIDJcbiAqIENyZWF0ZXMgYSBib3VuY2luZyBlZmZlY3QgZm9yIGFuIGVsZW1lbnQuXG4gKiBVc2UgdGhpcyBmb3IgY2FsbC10by1hY3Rpb24gYnV0dG9ucyBvciBhdHRlbnRpb24tZ3JhYmJpbmcgZWZmZWN0cy5cbiAqL1xuQGtleWZyYW1lcyBib3VuY2UyIHtcbiAgMCUsIDIwJSwgNTAlLCA4MCUsIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxuICA0MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjAlKTtcbiAgfVxuICA2MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAlKTtcbiAgfVxufVxuLyogU2xpZGUgYm91bmNlIHVwIEFuaW1hdGlvbiAqL1xuLyoqXG4gKiBAYW5pbWF0aW9uIHNsaWRlLWJvdW5jZS11cFxuICogQ3JlYXRlcyBhIGJvdW5jaW5nIGVmZmVjdCBmb3IgYW4gZWxlbWVudC5cbiAqIFVzZSB0aGlzIGZvciBhY2NvcmRpb24gb3IgYXR0ZW50aW9uLWdyYWJiaW5nIGVmZmVjdHMuXG4gKi9cbkBrZXlmcmFtZXMgc2xpZGUtYm91bmNlLXVwIHtcbiAgZnJvbSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZVkoMC41KSB0cmFuc2xhdGVZKDMwJSk7XG4gIH1cbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogc2NhbGVZKDEpIHRyYW5zbGF0ZVkoMCk7XG4gIH1cbn1cbi8qIFNsaWRlIGJvdW5jZSBkb3duIEFuaW1hdGlvbiAqL1xuLyoqXG4gKiBAYW5pbWF0aW9uIHNsaWRlLWJvdW5jZS1kb3duXG4gKiBDcmVhdGVzIGEgYm91bmNpbmcgZWZmZWN0IGZvciBhbiBlbGVtZW50LlxuICogVXNlIHRoaXMgZm9yIGFjY29yZGlvbiBvciBhdHRlbnRpb24tZ3JhYmJpbmcgZWZmZWN0cy5cbiAqL1xuQGtleWZyYW1lcyBzbGlkZS1ib3VuY2UtZG93biB7XG4gIGZyb20ge1xuICAgIHRyYW5zZm9ybTogc2NhbGVZKDAuNSkgdHJhbnNsYXRlWSgtMzAlKTtcbiAgfVxuICB0byB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZVkoMSkgdHJhbnNsYXRlWSgwKTtcbiAgfVxufVxuLyogUm90YXRlIEFuaW1hdGlvbiAqL1xuLyoqXG4gKiBAYW5pbWF0aW9uIHJvdGF0ZSBmdWxsXG4gKiBSb3RhdGVzIGFuIGVsZW1lbnQgMzYwIGRlZ3JlZXMuXG4gKiBVc2UgdGhpcyBmb3IgbG9hZGluZyBzcGlubmVycyBvciBkZWNvcmF0aXZlIGVmZmVjdHMuXG4gKi9cbkBrZXlmcmFtZXMgcm90YXRlLWZ1bGwge1xuICBmcm9tIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgfVxuICB0byB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgfVxufVxuLyoqXG4gKiBAYW5pbWF0aW9uIHJvdGF0ZSBoYWxmXG4gKiBSb3RhdGVzIGFuIGVsZW1lbnQgMTgwIGRlZ3JlZXMuXG4gKiBVc2UgdGhpcyBmb3IgbG9hZGluZyBzcGlubmVycyBvciBkZWNvcmF0aXZlIGVmZmVjdHMuXG4gKi9cbkBrZXlmcmFtZXMgcm90YXRlLTE4MCB7XG4gIGZyb20ge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICB9XG4gIHRvIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICB9XG59XG4vKipcbiAqIEBhbmltYXRpb24gcm90YXRlIDkwXG4gKiBSb3RhdGVzIGFuIGVsZW1lbnQgOTAgZGVncmVlcy5cbiAqIFVzZSB0aGlzIGZvciBsb2FkaW5nIHNwaW5uZXJzIG9yIGRlY29yYXRpdmUgZWZmZWN0cy5cbiAqL1xuQGtleWZyYW1lcyByb3RhdGUtOTAge1xuICBmcm9tIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgfVxuICB0byB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICB9XG59XG4vKipcbiAqIEtleWZyYW1lIGFuaW1hdGlvbjogZnVsbCAzNjDCsCBjbG9ja3dpc2Ugcm90YXRpb24uXG4gKiBDb21tb25seSBhcHBsaWVkIHRvIGljb25zIG9yIGxvYWRlcnMgdG8gaW5kaWNhdGUgcHJvZ3Jlc3Mgb3IgYWN0aXZpdHkuXG4gKi9cbkBrZXlmcmFtZXMgc3BpbiB7XG4gIHRvIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICB9XG59XG4vKipcbiAqIEBhbmltYXRpb24gc2hha2UgWFxuICogU2ltcGxlIHNoYWtlIGFuaW1hdGlvbiBmb3IgZXJyb3JzXG4gKi9cbkBrZXlmcmFtZXMgc2hha2UteCB7XG4gIDAlLCAxMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgfVxuICAyMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKC0xICogdmFyKC0tc3BhY2luZy0wNTApKSk7XG4gIH1cbiAgMzAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIH1cbiAgNDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgodmFyKC0tc3BhY2luZy0wNTApKTtcbiAgfVxuICA1MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgfVxuICA2MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKC0xICogdmFyKC0tc3BhY2luZy0wNTApKSk7XG4gIH1cbiAgNzAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIH1cbiAgODAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgodmFyKC0tc3BhY2luZy0wNTApKTtcbiAgfVxuICA5MCUsIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgfVxufVxuLyoqXG4gKiBAYW5pbWF0aW9uIHNoYWtlIFlcbiAqIFNpbXBsZSBzaGFrZSBhbmltYXRpb24gZm9yIGVycm9yc1xuICovXG5Aa2V5ZnJhbWVzIHNoYWtlLXkge1xuICAwJSwgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG4gIDI1JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01JSk7XG4gIH1cbiAgNTAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNSUpO1xuICB9XG4gIDc1JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01JSk7XG4gIH1cbn1cbi8qKlxuICogQ1NTIFJlc2V0XG4gKiBHcm91cDogR2VuZXJpY1xuICovXG4vKiBodHRwczovL3BpY2NhbGlsLmxpL2Jsb2cvYS1tb3JlLW1vZGVybi1jc3MtcmVzZXQvXG4gICBCeSBBbmR5IEJlbGxcbiAgIExpY2Vuc2U6IE1JVCBMaWNlbnNlXG4qL1xuLyogQm94IHNpemluZyBydWxlcyAqL1xuKixcbio6OmJlZm9yZSxcbio6OmFmdGVyIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuLyogUmVtb3ZlIGRlZmF1bHQgbWFyZ2luICovXG5ib2R5LFxuaDEsXG5oMixcbmgzLFxuaDQsXG5wLFxuZmlndXJlLFxuYmxvY2txdW90ZSxcbmRsLFxuZGQge1xuICBtYXJnaW46IDA7XG59XG5cbi8qIFJlbW92ZSBsaXN0IHN0eWxlcyBvbiB1bCwgb2wgZWxlbWVudHMgd2l0aCBhIGxpc3Qgcm9sZSwgd2hpY2ggc3VnZ2VzdHMgZGVmYXVsdCBzdHlsaW5nIHdpbGwgYmUgcmVtb3ZlZCAqL1xudWxbcm9sZT1saXN0XSxcbm9sW3JvbGU9bGlzdF0ge1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG5odG1sIGJvZHkgKjpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmU7XG59XG5cbmh0bWwgYm9keSAqOmZvY3VzLXZpc2libGUge1xuICBvdXRsaW5lOiAzcHggc29saWQgdmFyKC0tY29sb3ItZm9jdXMtc3Ryb2tlKTtcbiAgb3V0bGluZS1vZmZzZXQ6IDJweDtcbn1cblxuLyogU2V0IGNvcmUgcm9vdCBkZWZhdWx0cyAqL1xuaHRtbDpmb2N1cy13aXRoaW4ge1xuICBzY3JvbGwtYmVoYXZpb3I6IHNtb290aDtcbn1cblxuLyogU2V0IGNvcmUgYm9keSBkZWZhdWx0cyAqL1xuYm9keSB7XG4gIG1pbi1oZWlnaHQ6IDEwMGR2aDtcbiAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplc3BlZWQ7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG59XG5cbi8qIEEgZWxlbWVudHMgdGhhdCBkb24ndCBoYXZlIGEgY2xhc3MgZ2V0IGRlZmF1bHQgc3R5bGVzICovXG5hOm5vdChbY2xhc3NdKSB7XG4gIHRleHQtZGVjb3JhdGlvbi1za2lwLWluazogYXV0bztcbn1cblxuLyogTWFrZSBpbWFnZXMgZWFzaWVyIHRvIHdvcmsgd2l0aCAqL1xuaW1nLFxucGljdHVyZSB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qIEluaGVyaXQgZm9udHMgZm9yIGlucHV0cyBhbmQgYnV0dG9ucyAqL1xuaW5wdXQsXG5idXR0b24sXG50ZXh0YXJlYSxcbnNlbGVjdCB7XG4gIGZvbnQ6IGluaGVyaXQ7XG59XG5cbi8qIFJlbW92ZSBhbGwgYW5pbWF0aW9ucyBhbmQgdHJhbnNpdGlvbnMgZm9yIHBlb3BsZSB0aGF0IHByZWZlciBub3QgdG8gc2VlIHRoZW0gKi9cbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gIGh0bWw6Zm9jdXMtd2l0aGluIHtcbiAgICBzY3JvbGwtYmVoYXZpb3I6IGF1dG87XG4gIH1cbiAgKixcbiAgKjo6YmVmb3JlLFxuICAqOjphZnRlciB7XG4gICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjAxbXMgIWltcG9ydGFudDtcbiAgICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAxICFpbXBvcnRhbnQ7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4wMW1zICFpbXBvcnRhbnQ7XG4gICAgc2Nyb2xsLWJlaGF2aW9yOiBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi8qKlxuICogU3dpcGVyIFBhZ2luYXRpb25cbiAqIEdyb3VwOiBHZW5lcmljXG4gKi9cbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlIHtcbiAgd2lkdGg6IGNhbGMoMyAqIHZhcigtLXN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC13aWR0aCkpO1xufVxuLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi8qKlxuICogTWFpbiBFbGVtZW50cyBGaWxlXG4gKiBHcm91cDogRWxlbWVudHNcbiAqL1xuLyoqXG4gKiBHZW5lcmljXG4gKiBHcm91cDogRWxlbWVudHNcbiAqL1xuLyoqXG4gKiBNb3JlIHNlbnNpYmxlIGRlZmF1bHQgYm94LXNpemluZzpcbiAqIGNzcy10cmlja3MuY29tL2luaGVyaXRpbmctYm94LXNpemluZy1wcm9iYWJseS1zbGlnaHRseS1iZXR0ZXItYmVzdC1wcmFjdGljZVxuICovXG5odG1sIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveCAhaW1wb3J0YW50O1xuICBzY3JvbGwtYmVoYXZpb3I6IHNtb290aDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3cteDogaGlkZGVuICFpbXBvcnRhbnQ7XG59XG5cbioge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94ICFpbXBvcnRhbnQ7XG4gIGZvbnQtdmFyaWFudC1saWdhdHVyZXM6IG5vLWNvbW1vbi1saWdhdHVyZXMgIWltcG9ydGFudDtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50OyAvKiBmb3IgcmVtb3ZpbmcgdGhlIGhpZ2hsaWdodCAqL1xufVxuKiwgKjo6YmVmb3JlLCAqOjphZnRlciB7XG4gIGJveC1zaXppbmc6IGluaGVyaXQ7XG59XG5cbi8qKlxuICogQm9keVxuICogR3JvdXA6IEVsZW1lbnRzXG4gKi9cbmJvZHkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1uZXV0cmFsLTAwMCk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0KTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtcHJpbWFyeSk7XG4gIGZvbnQtc2l6ZTogMTAwJTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tYm9keS1saW5lLWhlaWdodCk7XG4gIG1pbi1oZWlnaHQ6IDEwMGR2aDtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA1NzUuOThweCkge1xuICBib2R5IHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICB9XG59XG5ib2R5LmlzLWhpZGRlbiwgYm9keS5pcy1ibG9ja2VkLCBib2R5LmlzLW1vYmlsZS1tZW51LW9wZW4ge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4vKipcbiAqIEJ1dHRvblxuICogR3JvdXA6IEVsZW1lbnRzXG4gKi9cbmJ1dHRvbiB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5idXR0b246bm90KFtjbGFzc10pIHtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLW0pO1xuICBib3JkZXItd2lkdGg6IHZhcigtLWJ1dHRvbi1ib3JkZXItd2lkdGgpO1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICBmb250LXNpemU6IHZhcigtLWJvZHktZm9udC1zaXplKTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXN0cmV0Y2g6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGVhZGluZy1ub25lKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLXRyYWNraW5nLW5vcm1hbCk7XG4gIHBhZGRpbmctYmxvY2s6IHZhcigtLXNwYWNpbmctMDc1KTtcbiAgcGFkZGluZy1pbmxpbmU6IHZhcigtLXNwYWNpbmctMTAwKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1vcmFuZ2UpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLW9yYW5nZSk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1kYXJrLWdyYXkpO1xufVxuYnV0dG9uOm5vdChbY2xhc3NdKTpob3ZlciwgYnV0dG9uOm5vdChbY2xhc3NdKTphY3RpdmUsIGJ1dHRvbjpub3QoW2NsYXNzXSk6Zm9jdXMge1xuICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dCwgdHJhbnNmb3JtIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0LCBvcGFjaXR5IHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0O1xufVxuYnV0dG9uOm5vdChbY2xhc3NdKTpob3ZlcjphY3RpdmUsIGJ1dHRvbjpub3QoW2NsYXNzXSk6YWN0aXZlOmFjdGl2ZSwgYnV0dG9uOm5vdChbY2xhc3NdKTpmb2N1czphY3RpdmUge1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuOSk7XG59XG5idXR0b246bm90KFtjbGFzc10pOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtbGlnaHQtZ3JheSk7XG59XG5idXR0b246bm90KFtjbGFzc10pOmZvY3VzIHtcbiAgb3V0bGluZS1jb2xvcjogdmFyKC0tY29sb3ItZm9jdXMtc3Ryb2tlKTtcbn1cbmJ1dHRvbltkaXNhYmxlZF0ge1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICBib3gtc2hhZG93OiBub25lO1xuICBvcGFjaXR5OiAwLjY7XG59XG4uYnV0dG9uLXZhcmlhdGlvbi0tcHJpbWFyeS1vdXRsaW5lIGJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWxpZ2h0ZXItZ3JheSk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtb3JhbmdlKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLW9yYW5nZSk7XG59XG4uYnV0dG9uLXZhcmlhdGlvbi0tcHJpbWFyeS1vdXRsaW5lIGJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLW9yYW5nZSk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1saWdodCk7XG59XG4uYnV0dG9uLXZhcmlhdGlvbi0tcHJpbWFyeS1vdXRsaW5lIGJ1dHRvbjpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItZm9jdXMtc3Ryb2tlKTtcbn1cbi5idXR0b24tdmFyaWF0aW9uLS1zZWNvbmRhcnktb3V0bGluZSBidXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1saWdodGVyLWdyYXkpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG59XG4uYnV0dG9uLXZhcmlhdGlvbi0tc2Vjb25kYXJ5LW91dGxpbmUgYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1saWdodCk7XG59XG4uYnV0dG9uLXZhcmlhdGlvbi0tc2Vjb25kYXJ5LW91dGxpbmUgYnV0dG9uOmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1mb2N1cy1zdHJva2UpO1xufVxuLmJ1dHRvbi1pY29uLS1zdmcge1xuICB3aWR0aDogdmFyKC0taWNvbi14cyk7XG4gIGhlaWdodDogdmFyKC0taWNvbi14cyk7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoLS1zcGFjaW5nLTA1MCk7XG59XG5cbi5idXR0b24tbG9hZC1tb3JlIHtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLW0pO1xuICBib3JkZXItd2lkdGg6IHZhcigtLWJ1dHRvbi1ib3JkZXItd2lkdGgpO1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICBmb250LXNpemU6IHZhcigtLWJvZHktZm9udC1zaXplKTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXN0cmV0Y2g6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGVhZGluZy1ub25lKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLXRyYWNraW5nLW5vcm1hbCk7XG4gIHBhZGRpbmctYmxvY2s6IHZhcigtLXNwYWNpbmctMDc1KTtcbiAgcGFkZGluZy1pbmxpbmU6IHZhcigtLXNwYWNpbmctMTAwKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBmb250LXNpemU6IHZhcigtLWJvZHktZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXNlbWlib2xkKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLXRyYWNraW5nLW5vcm1hbCk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1sZWFkaW5nLW5vbmUpO1xuICBwYWRkaW5nLWJsb2NrOiB2YXIoLS1zcGFjaW5nLTEwMCk7XG4gIHBhZGRpbmctaW5saW5lOiB2YXIoLS1zcGFjaW5nLTYwMCk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJ0bi1yYWRpdXMtbGcpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1vcmFuZ2UpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLW9yYW5nZSk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1kYXJrLWdyYXkpO1xuICBkaXNwbGF5OiBmbGV4O1xuICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjaW5nLTQwMCk7XG4gIG1hcmdpbi1pbmxpbmU6IGF1dG87XG59XG4uYnV0dG9uLWxvYWQtbW9yZTpob3ZlciwgLmJ1dHRvbi1sb2FkLW1vcmU6YWN0aXZlLCAuYnV0dG9uLWxvYWQtbW9yZTpmb2N1cyB7XG4gIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0LCB0cmFuc2Zvcm0gdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQsIG9wYWNpdHkgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQ7XG59XG4uYnV0dG9uLWxvYWQtbW9yZTpob3ZlcjphY3RpdmUsIC5idXR0b24tbG9hZC1tb3JlOmFjdGl2ZTphY3RpdmUsIC5idXR0b24tbG9hZC1tb3JlOmZvY3VzOmFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMC45KTtcbn1cbi5idXR0b24tbG9hZC1tb3JlOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtbGlnaHQtZ3JheSk7XG59XG4uYnV0dG9uLWxvYWQtbW9yZTpmb2N1cyB7XG4gIG91dGxpbmUtY29sb3I6IHZhcigtLWNvbG9yLWZvY3VzLXN0cm9rZSk7XG59XG4uYnV0dG9uLWxvYWQtbW9yZTphY3RpdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMXB4KTtcbn1cbi5idXR0b24tbG9hZC1tb3JlIC51LWlzLWxvYWRpbmcge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWxpZ2h0ZXItZ3JheSk7XG59XG4uYnV0dG9uLWxvYWQtbW9yZSAudS1pcy1sb2FkaW5nOjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogNTAlO1xuICB0b3A6IDUwJTtcbiAgei1pbmRleDogMztcbiAgd2lkdGg6IDEycHg7XG4gIGhlaWdodDogMTJweDtcbiAgbWFyZ2luOiAtMTBweCAwIDAgLTEwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgYW5pbWF0aW9uOiBzcGluIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24tc2xvdykgbGluZWFyIGluZmluaXRlO1xuICB0ZXh0LWluZGVudDogMDtcbn1cblxuLmJ1dHRvbi1zaGFyZSB7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1tKTtcbiAgYm9yZGVyLXdpZHRoOiB2YXIoLS1idXR0b24tYm9yZGVyLXdpZHRoKTtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LWZvbnQtc2l6ZSk7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC1zdHJldGNoOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxlYWRpbmctbm9uZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS10cmFja2luZy1ub3JtYWwpO1xuICBwYWRkaW5nLWJsb2NrOiB2YXIoLS1zcGFjaW5nLTA3NSk7XG4gIHBhZGRpbmctaW5saW5lOiB2YXIoLS1zcGFjaW5nLTEwMCk7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LWxhcmdlLWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ib2xkKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLXRyYWNraW5nLW5vcm1hbCk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1sZWFkaW5nLW5vbmUpO1xuICBwYWRkaW5nLWJsb2NrOiB2YXIoLS1zcGFjaW5nLTA3NSk7XG4gIHBhZGRpbmctaW5saW5lOiB2YXIoLS1zcGFjaW5nLTEwMCk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJ0bi1yYWRpdXMtbWQpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1vcmFuZ2UpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLW9yYW5nZSk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1kYXJrLWdyYXkpO1xufVxuLmJ1dHRvbi1zaGFyZTpob3ZlciwgLmJ1dHRvbi1zaGFyZTphY3RpdmUsIC5idXR0b24tc2hhcmU6Zm9jdXMge1xuICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dCwgdHJhbnNmb3JtIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0LCBvcGFjaXR5IHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0O1xufVxuLmJ1dHRvbi1zaGFyZTpob3ZlcjphY3RpdmUsIC5idXR0b24tc2hhcmU6YWN0aXZlOmFjdGl2ZSwgLmJ1dHRvbi1zaGFyZTpmb2N1czphY3RpdmUge1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuOSk7XG59XG4uYnV0dG9uLXNoYXJlOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtbGlnaHQtZ3JheSk7XG59XG4uYnV0dG9uLXNoYXJlOmZvY3VzIHtcbiAgb3V0bGluZS1jb2xvcjogdmFyKC0tY29sb3ItZm9jdXMtc3Ryb2tlKTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuYnV0dG9uLXNoYXJlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5idXR0b24tZWRpdC1pdGVtIHtcbiAgbWF4LWhlaWdodDogdmFyKC0taWNvbi1teHMpO1xuICB3aWR0aDogdmFyKC0taWNvbi1teHMpO1xuICBoZWlnaHQ6IGF1dG87XG4gIGNvbG9yOiBpbmhlcml0O1xufVxuLmJ1dHRvbi1lZGl0LWl0ZW1fX2xpbmsge1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtZ3JheSk7XG59XG4uYnV0dG9uLWVkaXQtaXRlbV9fbGluazpob3ZlciwgLmJ1dHRvbi1lZGl0LWl0ZW1fX2xpbms6Zm9jdXMge1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG59XG4uYnV0dG9uLWVkaXQtaXRlbS0td3JhcHBlciB7XG4gIG1hcmdpbi1ibG9jazogdmFyKC0tc3BhY2luZy0wNTApIDA7XG59XG4uYnV0dG9uLWVkaXQtaXRlbS0td3JhcHBlci1hYnMge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMDtcbiAgcmlnaHQ6IDA7XG4gIG1hcmdpbjogdmFyKC0tc3BhY2luZy0wMjUpO1xufVxuXG4vKipcbiAqIEZpbHRlclxuICogR3JvdXA6IEVsZW1lbnRzXG4gKi9cbi5maWx0ZXIge1xuICB3aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtbGlnaHQtZ3JheSk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy14cyk7XG4gIGJvcmRlcjogbm9uZTtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWJvZHktbGluZS1oZWlnaHQpO1xuICB0ZXh0LWluZGVudDogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtc2VhcmNoLWdyYXkpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLWwpO1xuICBoZWlnaHQ6IHZhcigtLXNwYWNpbmctMzAwKTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiByb3cgbm93cmFwO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctMTAwKSB2YXIoLS1zcGFjaW5nLTE1MCk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1ib2R5LWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWJvZHktbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG59XG4uZmlsdGVyOmhvdmVyLCAuZmlsdGVyOmFjdGl2ZSwgLmZpbHRlcjpmb2N1cyB7XG4gIHRyYW5zaXRpb246IGJveC1zaGFkb3cgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQ7XG59XG4uZmlsdGVyOmhvdmVyIHtcbiAgYm94LXNoYWRvdzogdmFyKC0tYm94LXNoYWRvdy1saWdodC0wMyk7XG59XG4uZmlsdGVyIGlucHV0IHtcbiAgd2lkdGg6IDEwMCU7XG4gIGNvbG9yOiBpbmhlcml0O1xuICBmb250LXNpemU6IHZhcigtLWJvZHktZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWJvZHktbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tYm9keS1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbn1cbi5maWx0ZXIgaW5wdXQ6OnBsYWNlaG9sZGVyIHtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1ib2R5LWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWJvZHktbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcbn1cbi5maWx0ZXIgaW5wdXQ6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuICBmb250LXNpemU6IHZhcigtLWJvZHktZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWJvZHktbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tYm9keS1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xufVxuLmZpbHRlciBpbnB1dDo6LW1vei1wbGFjZWhvbGRlciB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tYm9keS1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG4gIG9wYWNpdHk6IDE7XG59XG4uZmlsdGVyIGlucHV0Oi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tYm9keS1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmZpbHRlciB7XG4gICAgbWF4LXdpZHRoOiB2YXIoLS1tYXgtd2lkdGgtLTV4cyk7XG4gIH1cbn1cbi5maWx0ZXItaW5wdXQtdGV4dCB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcbn1cbi5maWx0ZXItZGF0ZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZy1ibG9jazogdmFyKC0tc3BhY2luZy0wNTApO1xufVxuLmZpbHRlci1kYXRlX19wbGFjZWhvbGRlciB7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMteHMpO1xuICBib3JkZXI6IG5vbmU7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LWxpbmUtaGVpZ2h0KTtcbiAgdGV4dC1pbmRlbnQ6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLXNlYXJjaC1ncmF5KTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1sKTtcbiAgaGVpZ2h0OiB2YXIoLS1zcGFjaW5nLTMwMCk7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IG5vd3JhcDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZzogdmFyKC0tc3BhY2luZy0xMDApIHZhcigtLXNwYWNpbmctMTUwKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGluc2V0OiAwO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQsIG9wYWNpdHkgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQ7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuLmZpbHRlci1kYXRlX19wbGFjZWhvbGRlcjpob3ZlciwgLmZpbHRlci1kYXRlX19wbGFjZWhvbGRlcjphY3RpdmUsIC5maWx0ZXItZGF0ZV9fcGxhY2Vob2xkZXI6Zm9jdXMge1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0O1xufVxuLmZpbHRlci1kYXRlX19wbGFjZWhvbGRlcjpob3ZlciB7XG4gIGJveC1zaGFkb3c6IHZhcigtLWJveC1zaGFkb3ctbGlnaHQtMDMpO1xufVxuLmZpbHRlci1kYXRlX19wbGFjZWhvbGRlciBpbnB1dCB7XG4gIGhlaWdodDogdmFyKC0taW5wdXQtaGVpZ2h0LW1lZGl1bSk7XG4gIHdpZHRoOiAxMDAlO1xuICBjb2xvcjogaW5oZXJpdDtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1ib2R5LWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWJvZHktbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG59XG4uZmlsdGVyLWRhdGVfX3BsYWNlaG9sZGVyIGlucHV0OjpwbGFjZWhvbGRlciB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tYm9keS1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG59XG4uZmlsdGVyLWRhdGVfX3BsYWNlaG9sZGVyIGlucHV0Ojotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1ib2R5LWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWJvZHktbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcbn1cbi5maWx0ZXItZGF0ZV9fcGxhY2Vob2xkZXIgaW5wdXQ6Oi1tb3otcGxhY2Vob2xkZXIge1xuICBmb250LXNpemU6IHZhcigtLWJvZHktZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWJvZHktbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tYm9keS1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xuICBvcGFjaXR5OiAxO1xufVxuLmZpbHRlci1kYXRlX19wbGFjZWhvbGRlciBpbnB1dDotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xuICBmb250LXNpemU6IHZhcigtLWJvZHktZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWJvZHktbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tYm9keS1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xufVxuLmZpbHRlci1kYXRlOmhvdmVyIC5maWx0ZXItZGF0ZV9fcGxhY2Vob2xkZXIsIC5maWx0ZXItZGF0ZTpmb2N1cy13aXRoaW4gLmZpbHRlci1kYXRlX19wbGFjZWhvbGRlciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XG4gIG9wYWNpdHk6IDA7XG59XG4uZmlsdGVyLWJ1dHRvbnMtYXMtcmFkaW8ge1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXhzKTtcbiAgYm9yZGVyOiBub25lO1xuICBmb250LXNpemU6IHZhcigtLWJvZHktZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tYm9keS1saW5lLWhlaWdodCk7XG4gIHRleHQtaW5kZW50OiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1zZWFyY2gtZ3JheSk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtbCk7XG4gIGhlaWdodDogdmFyKC0tc3BhY2luZy0zMDApO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcGFkZGluZzogdmFyKC0tc3BhY2luZy0xMDApIHZhcigtLXNwYWNpbmctMTUwKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xuICBmb250LXNpemU6IHZhcigtLWJvZHktZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWJvZHktbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tYm9keS1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBtYXgtd2lkdGg6IHZhcigtLW1heC13aWR0aC0tc20pO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBwYWRkaW5nOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuLmZpbHRlci1idXR0b25zLWFzLXJhZGlvOmhvdmVyLCAuZmlsdGVyLWJ1dHRvbnMtYXMtcmFkaW86YWN0aXZlLCAuZmlsdGVyLWJ1dHRvbnMtYXMtcmFkaW86Zm9jdXMge1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0O1xufVxuLmZpbHRlci1idXR0b25zLWFzLXJhZGlvOmhvdmVyIHtcbiAgYm94LXNoYWRvdzogdmFyKC0tYm94LXNoYWRvdy1saWdodC0wMyk7XG59XG4uZmlsdGVyLWJ1dHRvbnMtYXMtcmFkaW8gaW5wdXQge1xuICB3aWR0aDogMTAwJTtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tYm9keS1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xufVxuLmZpbHRlci1idXR0b25zLWFzLXJhZGlvIGlucHV0OjpwbGFjZWhvbGRlciB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tYm9keS1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG59XG4uZmlsdGVyLWJ1dHRvbnMtYXMtcmFkaW8gaW5wdXQ6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuICBmb250LXNpemU6IHZhcigtLWJvZHktZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWJvZHktbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tYm9keS1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xufVxuLmZpbHRlci1idXR0b25zLWFzLXJhZGlvIGlucHV0OjotbW96LXBsYWNlaG9sZGVyIHtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1ib2R5LWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWJvZHktbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcbiAgb3BhY2l0eTogMTtcbn1cbi5maWx0ZXItYnV0dG9ucy1hcy1yYWRpbyBpbnB1dDotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xuICBmb250LXNpemU6IHZhcigtLWJvZHktZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWJvZHktbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tYm9keS1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5maWx0ZXItYnV0dG9ucy1hcy1yYWRpbyB7XG4gICAgZmxleC1mbG93OiByb3cgbm93cmFwO1xuICAgIHdpZHRoOiBmaXQtY29udGVudDtcbiAgfVxufVxuLmZpbHRlci1idXR0b25zLWFzLXJhZGlvX19pdGVtIHtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLW0pO1xuICBib3JkZXItd2lkdGg6IHZhcigtLWJ1dHRvbi1ib3JkZXItd2lkdGgpO1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICBmb250LXNpemU6IHZhcigtLWJvZHktZm9udC1zaXplKTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXN0cmV0Y2g6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGVhZGluZy1ub25lKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLXRyYWNraW5nLW5vcm1hbCk7XG4gIHBhZGRpbmctYmxvY2s6IHZhcigtLXNwYWNpbmctMDc1KTtcbiAgcGFkZGluZy1pbmxpbmU6IHZhcigtLXNwYWNpbmctMTAwKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBmb250LXNpemU6IHZhcigtLWJvZHktZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWJvZHktbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tYm9keS1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbiAgaGVpZ2h0OiB2YXIoLS1zcGFjaW5nLTMwMCk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtbCk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLXNlYXJjaC1ncmF5KTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogdmFyKC0tc3BhY2luZy0wNTApO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBoZWlnaHQ6IHZhcigtLXNwYWNpbmctMzAwKTtcbn1cbi5maWx0ZXItYnV0dG9ucy1hcy1yYWRpb19faXRlbTpob3ZlciwgLmZpbHRlci1idXR0b25zLWFzLXJhZGlvX19pdGVtOmFjdGl2ZSwgLmZpbHRlci1idXR0b25zLWFzLXJhZGlvX19pdGVtOmZvY3VzIHtcbiAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQsIHRyYW5zZm9ybSB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dCwgb3BhY2l0eSB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dDtcbn1cbi5maWx0ZXItYnV0dG9ucy1hcy1yYWRpb19faXRlbTpob3ZlcjphY3RpdmUsIC5maWx0ZXItYnV0dG9ucy1hcy1yYWRpb19faXRlbTphY3RpdmU6YWN0aXZlLCAuZmlsdGVyLWJ1dHRvbnMtYXMtcmFkaW9fX2l0ZW06Zm9jdXM6YWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjkpO1xufVxuLmZpbHRlci1idXR0b25zLWFzLXJhZGlvX19pdGVtW2FyaWEtcHJlc3NlZD10cnVlXSB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1vcmFuZ2UpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtc2VtaWJvbGQpO1xufVxuLmZpbHRlci1idXR0b25zLWFzLXJhZGlvX19pdGVtOmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1mb2N1cy1zdHJva2UpO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5maWx0ZXItYnV0dG9ucy1hcy1yYWRpb19faXRlbSB7XG4gICAgd2lkdGg6IHZhcigtLW1heC13aWR0aC0tNXhzKTtcbiAgfVxufVxuLmZpbHRlci1idXR0b25zLWFzLXJhZGlvX19pdGVtOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJyYW5kLW9yYW5nZSk7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmZpbHRlci1idXR0b25zLWFzLXJhZGlvX19pdGVtOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBib3JkZXItdG9wOiBub25lO1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgdmFyKC0tY29sb3ItYnJhbmQtb3JhbmdlKTtcbiAgfVxufVxuLmZpbHRlci1kcm9wZG93biB7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICBwYWRkaW5nOiAwO1xufVxuLmZpbHRlcl9fc3VibWl0LWJ1dHRvbiB7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1tKTtcbiAgYm9yZGVyLXdpZHRoOiB2YXIoLS1idXR0b24tYm9yZGVyLXdpZHRoKTtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LWZvbnQtc2l6ZSk7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC1zdHJldGNoOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxlYWRpbmctbm9uZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS10cmFja2luZy1ub3JtYWwpO1xuICBwYWRkaW5nLWJsb2NrOiB2YXIoLS1zcGFjaW5nLTA3NSk7XG4gIHBhZGRpbmctaW5saW5lOiB2YXIoLS1zcGFjaW5nLTEwMCk7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1ib2R5LWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWJvZHktbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIGhlaWdodDogdmFyKC0tc3BhY2luZy0zMDApO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLWwpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1vcmFuZ2UpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLW9yYW5nZSk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1kYXJrLWdyYXkpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbWVkaXVtKTtcbiAgbWF4LXdpZHRoOiB2YXIoLS1tYXgtd2lkdGgtLTV4cyk7XG4gIHdpZHRoOiAxMDAlO1xufVxuLmZpbHRlcl9fc3VibWl0LWJ1dHRvbjpob3ZlciwgLmZpbHRlcl9fc3VibWl0LWJ1dHRvbjphY3RpdmUsIC5maWx0ZXJfX3N1Ym1pdC1idXR0b246Zm9jdXMge1xuICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dCwgdHJhbnNmb3JtIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0LCBvcGFjaXR5IHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0O1xufVxuLmZpbHRlcl9fc3VibWl0LWJ1dHRvbjpob3ZlcjphY3RpdmUsIC5maWx0ZXJfX3N1Ym1pdC1idXR0b246YWN0aXZlOmFjdGl2ZSwgLmZpbHRlcl9fc3VibWl0LWJ1dHRvbjpmb2N1czphY3RpdmUge1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuOSk7XG59XG4uZmlsdGVyX19zdWJtaXQtYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtbGlnaHQtZ3JheSk7XG59XG4uZmlsdGVyX19zdWJtaXQtYnV0dG9uOmZvY3VzIHtcbiAgb3V0bGluZS1jb2xvcjogdmFyKC0tY29sb3ItZm9jdXMtc3Ryb2tlKTtcbn1cbi5maWx0ZXJfX3Jlc2V0LWJ1dHRvbiB7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1tKTtcbiAgYm9yZGVyLXdpZHRoOiB2YXIoLS1idXR0b24tYm9yZGVyLXdpZHRoKTtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LWZvbnQtc2l6ZSk7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC1zdHJldGNoOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxlYWRpbmctbm9uZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS10cmFja2luZy1ub3JtYWwpO1xuICBwYWRkaW5nLWJsb2NrOiB2YXIoLS1zcGFjaW5nLTA3NSk7XG4gIHBhZGRpbmctaW5saW5lOiB2YXIoLS1zcGFjaW5nLTEwMCk7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LXNtYWxsLWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLXRyYWNraW5nLW5vcm1hbCk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1sZWFkaW5nLW5vbmUpO1xuICBwYWRkaW5nLWJsb2NrOiB2YXIoLS1zcGFjaW5nLTAyNSk7XG4gIHBhZGRpbmctaW5saW5lOiB2YXIoLS1zcGFjaW5nLTA3NSk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJ0bi1yYWRpdXMpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LW1lZGl1bSk7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgbWFyZ2luOiB2YXIoLS1zcGFjaW5nLTEwMCk7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4uZmlsdGVyX19yZXNldC1idXR0b246aG92ZXIsIC5maWx0ZXJfX3Jlc2V0LWJ1dHRvbjphY3RpdmUsIC5maWx0ZXJfX3Jlc2V0LWJ1dHRvbjpmb2N1cyB7XG4gIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0LCB0cmFuc2Zvcm0gdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQsIG9wYWNpdHkgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQ7XG59XG4uZmlsdGVyX19yZXNldC1idXR0b246aG92ZXI6YWN0aXZlLCAuZmlsdGVyX19yZXNldC1idXR0b246YWN0aXZlOmFjdGl2ZSwgLmZpbHRlcl9fcmVzZXQtYnV0dG9uOmZvY3VzOmFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMC45KTtcbn1cbi5maWx0ZXJfX3Jlc2V0LWJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWxpZ2h0ZXItZ3JheSk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcbn1cbi5maWx0ZXJfX3Jlc2V0LWJ1dHRvbjpmb2N1cyB7XG4gIG91dGxpbmUtY29sb3I6IHZhcigtLWNvbG9yLWZvY3VzLXN0cm9rZSk7XG59XG4uZmlsdGVyX19yZXNldC1idXR0b25fX3RleHQge1xuICBmb250LXNpemU6IHZhcigtLWJvZHktZXh0cmEtc21hbGwtZm9udC1zaXplKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLTAyNSk7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dCwgb3BhY2l0eSB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmZpbHRlcl9fcmVzZXQtYnV0dG9uX190ZXh0IHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuLmZpbHRlcl9fcmVzZXQtYnV0dG9uX19pY29uIHtcbiAgd2lkdGg6IHZhcigtLWljb24tbXMpO1xuICBoZWlnaHQ6IHZhcigtLWljb24tbXMpO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmZpbHRlcl9fcmVzZXQtYnV0dG9uOmhvdmVyIC5maWx0ZXJfX3Jlc2V0LWJ1dHRvbl9fdGV4dCB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cbi5maWx0ZXItZXJyb3Ige1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGFuaW1hdGlvbjogYm91bmNlMiB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uLXZlcnktc2xvdykgZWFzZSBpbmZpbml0ZTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWRhcmstcmVkKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtcmVkLXNlbWktdHJhbnNwYXJlbnQpO1xuICBib3gtc2hhZG93OiAwIDAgMCAycHggdmFyKC0tY29sb3ItYnJhbmQtZGFyay1yZWQpO1xufVxuLmZpbHRlci1lcnJvcjo6cGxhY2Vob2xkZXIge1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtZGFyay1yZWQpO1xufVxuLmZpbHRlci1lcnJvcjo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1kYXJrLXJlZCk7XG59XG4uZmlsdGVyLWVycm9yOjotbW96LXBsYWNlaG9sZGVyIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWRhcmstcmVkKTtcbiAgb3BhY2l0eTogMTtcbn1cbi5maWx0ZXItZXJyb3I6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWRhcmstcmVkKTtcbn1cbi5maWx0ZXItZXJyb3I6OmFmdGVyIHtcbiAgY29udGVudDogXCIqXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBtYXJnaW46IHZhcigtLXNwYWNpbmctMDI1KSB2YXIoLS1zcGFjaW5nLTA1MCk7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtZGFyay1yZWQpO1xufVxuXG4vKipcbiAqIEZvcm1cbiAqIEdyb3VwOiBFbGVtZW50c1xuICovXG5mb3JtW3JvbGU9c2VhcmNoXSB7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG5cbi8qKlxuICogSGVhZGluZ3NcbiAqIEdyb3VwOiBFbGVtZW50c1xuICovXG5oMSxcbmgyLFxuaDMsXG5oNCxcbmg1LFxuaDYge1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1wcmltYXJ5KTtcbn1cbmgxIHAsXG5oMSBhLFxuaDEgc3BhbixcbmgyIHAsXG5oMiBhLFxuaDIgc3BhbixcbmgzIHAsXG5oMyBhLFxuaDMgc3Bhbixcbmg0IHAsXG5oNCBhLFxuaDQgc3Bhbixcbmg1IHAsXG5oNSBhLFxuaDUgc3Bhbixcbmg2IHAsXG5oNiBhLFxuaDYgc3BhbiB7XG4gIGNvbG9yOiBpbmhlcml0O1xuICBkaXNwbGF5OiBpbmhlcml0O1xuICBmb250LXNpemU6IGluaGVyaXQ7XG4gIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG5oMSB7XG4gIGZvbnQtc2l6ZTogdmFyKC0taDEtZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWgxLWZvbnQtd2VpZ2h0KTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWgxLWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWgxLWxpbmUtaGVpZ2h0KTtcbn1cblxuaDIge1xuICBmb250LXNpemU6IHZhcigtLWgyLWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1oMi1mb250LXdlaWdodCk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1oMi1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1oMi1saW5lLWhlaWdodCk7XG59XG5cbmgzIHtcbiAgZm9udC1zaXplOiB2YXIoLS1oMy1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogdmFyKC0taDMtZm9udC13ZWlnaHQpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0taDMtbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0taDMtbGluZS1oZWlnaHQpO1xufVxuXG5oNCB7XG4gIGZvbnQtc2l6ZTogdmFyKC0taDQtZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWg0LWZvbnQtd2VpZ2h0KTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWg0LWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWg0LWxpbmUtaGVpZ2h0KTtcbn1cblxuaDUge1xuICBmb250LXNpemU6IHZhcigtLWg1LWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1oNS1mb250LXdlaWdodCk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1oNS1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1oNS1saW5lLWhlaWdodCk7XG59XG5cbmg2IHtcbiAgZm9udC1zaXplOiB2YXIoLS1oNi1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogdmFyKC0taDYtZm9udC13ZWlnaHQpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0taDYtbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0taDYtbGluZS1oZWlnaHQpO1xufVxuXG4vKipcbiAqIEhUTUxcbiAqIEdyb3VwOiBFbGVtZW50c1xuICovXG5odG1sIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuLyoqXG4gKiBJY29uXG4gKiBHcm91cDogRWxlbWVudHNcbiAqL1xuLmljb24tYXJ0aWNsZS1kb3dubG9hZCB7XG4gIHdpZHRoOiB2YXIoLS1pY29uLW1zKTtcbiAgbWF4LWhlaWdodDogdmFyKC0taWNvbi1tcyk7XG4gIGhlaWdodDogYXV0bztcbn1cbi5pY29uLWFydGljbGUtZG93bmxvYWQtLXdyYXBwZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogdmFyKC0tc3BhY2luZy0xNTApIHZhcigtLXNwYWNpbmctMjAwKTtcbiAgYm9yZGVyLXRvcDogMnB4IHNvbGlkIHZhcigtLWNvbG9yLWJyYW5kLWRhcmstZ3JheSk7XG4gIHRleHQtYWxpZ246IGVuZDtcbn1cbi5pY29uLWFydGljbGUtZG93bmxvYWRfX2xpbmsge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiB2YXIoLS1zcGFjaW5nLTEwMCk7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWRhcmstZ3JheSk7XG59XG4uaWNvbi1hcnRpY2xlLWRvd25sb2FkX19saW5rOmhvdmVyIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLW9yYW5nZSk7XG59XG4uaWNvbi1hcnRpY2xlLWRvd25sb2FkX190ZXh0IHtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LXNtYWxsLWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1ib2R5LXNtYWxsLWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWJvZHktc21hbGwtbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbWVkaXVtKTtcbn1cblxuLyoqXG4gKiBJbWFnZVxuICogR3JvdXA6IEVsZW1lbnRzXG4gKi9cbmltZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGZsZXgtc2hyaW5rOiAxO1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi8qKlxuICogSW5wdXRcbiAqIEdyb3VwOiBFbGVtZW50c1xuICovXG5pbnB1dDpub3QoW3R5cGU9Y2hlY2tib3hdLCBbdHlwZT1yYWRpb10pIHtcbiAgYm9yZGVyOiBub25lO1xuICBhcHBlYXJhbmNlOiBub25lO1xufVxuaW5wdXRbdHlwZT1idXR0b25dLCBpbnB1dFt0eXBlPXN1Ym1pdF0ge1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtbSk7XG4gIGJvcmRlci13aWR0aDogdmFyKC0tYnV0dG9uLWJvcmRlci13aWR0aCk7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1mb250LXNpemUpO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtc3RyZXRjaDogbm9ybWFsO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1sZWFkaW5nLW5vbmUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tdHJhY2tpbmctbm9ybWFsKTtcbiAgcGFkZGluZy1ibG9jazogdmFyKC0tc3BhY2luZy0wNzUpO1xuICBwYWRkaW5nLWlubGluZTogdmFyKC0tc3BhY2luZy0xMDApO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLW9yYW5nZSk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtb3JhbmdlKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWRhcmstZ3JheSk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1sYXJnZS1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZCk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS10cmFja2luZy1ub3JtYWwpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGVhZGluZy1ub25lKTtcbiAgcGFkZGluZy1ibG9jazogdmFyKC0tc3BhY2luZy0wNzUpO1xuICBwYWRkaW5nLWlubGluZTogdmFyKC0tc3BhY2luZy0xMDApO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1idG4tcmFkaXVzLW1kKTtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuaW5wdXRbdHlwZT1idXR0b25dOmhvdmVyLCBpbnB1dFt0eXBlPWJ1dHRvbl06YWN0aXZlLCBpbnB1dFt0eXBlPWJ1dHRvbl06Zm9jdXMsIGlucHV0W3R5cGU9c3VibWl0XTpob3ZlciwgaW5wdXRbdHlwZT1zdWJtaXRdOmFjdGl2ZSwgaW5wdXRbdHlwZT1zdWJtaXRdOmZvY3VzIHtcbiAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQsIHRyYW5zZm9ybSB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dCwgb3BhY2l0eSB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dDtcbn1cbmlucHV0W3R5cGU9YnV0dG9uXTpob3ZlcjphY3RpdmUsIGlucHV0W3R5cGU9YnV0dG9uXTphY3RpdmU6YWN0aXZlLCBpbnB1dFt0eXBlPWJ1dHRvbl06Zm9jdXM6YWN0aXZlLCBpbnB1dFt0eXBlPXN1Ym1pdF06aG92ZXI6YWN0aXZlLCBpbnB1dFt0eXBlPXN1Ym1pdF06YWN0aXZlOmFjdGl2ZSwgaW5wdXRbdHlwZT1zdWJtaXRdOmZvY3VzOmFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMC45KTtcbn1cbmlucHV0W3R5cGU9YnV0dG9uXTpob3ZlciwgaW5wdXRbdHlwZT1zdWJtaXRdOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtbGlnaHQtZ3JheSk7XG59XG5pbnB1dFt0eXBlPWJ1dHRvbl06Zm9jdXMsIGlucHV0W3R5cGU9c3VibWl0XTpmb2N1cyB7XG4gIG91dGxpbmUtY29sb3I6IHZhcigtLWNvbG9yLWZvY3VzLXN0cm9rZSk7XG59XG5pbnB1dFt0eXBlPWNoZWNrYm94XSB7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtM3hzKTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBoZWlnaHQ6IHZhcigtLWNoZWNrYm94LXNpemUpO1xuICBvdXRsaW5lOiBub25lO1xuICB3aWR0aDogdmFyKC0tY2hlY2tib3gtc2l6ZSk7XG59XG5pbnB1dFt0eXBlPXJhZGlvXSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgaGVpZ2h0OiB2YXIoLS1jaGVja2JveC1zaXplKTtcbiAgd2lkdGg6IHZhcigtLWNoZWNrYm94LXNpemUpO1xufVxuaW5wdXQ6bm90KFt0eXBlPXN1Ym1pdF0sIFt0eXBlPWJ1dHRvbl0sIFt0eXBlPWNoZWNrYm94XSwgW3R5cGU9cmFkaW9dKSB7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMteHMpO1xuICBib3JkZXI6IG5vbmU7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LWxpbmUtaGVpZ2h0KTtcbiAgdGV4dC1pbmRlbnQ6IDA7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBvdXRsaW5lOiBub25lO1xufVxuaW5wdXQ6bm90KFt0eXBlPXN1Ym1pdF0sIFt0eXBlPWJ1dHRvbl0sIFt0eXBlPWNoZWNrYm94XSwgW3R5cGU9cmFkaW9dKTpob3ZlciwgaW5wdXQ6bm90KFt0eXBlPXN1Ym1pdF0sIFt0eXBlPWJ1dHRvbl0sIFt0eXBlPWNoZWNrYm94XSwgW3R5cGU9cmFkaW9dKTphY3RpdmUsIGlucHV0Om5vdChbdHlwZT1zdWJtaXRdLCBbdHlwZT1idXR0b25dLCBbdHlwZT1jaGVja2JveF0sIFt0eXBlPXJhZGlvXSk6Zm9jdXMge1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0O1xufVxuXG4vKipcbiAqIExpbmsgLyBBbmNob3JcbiAqIEdyb3VwOiBFbGVtZW50c1xuICovXG5hIHtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdGV4dC1kZWNvcmF0aW9uLXRoaWNrbmVzczogMnB4O1xuICB0ZXh0LXVuZGVybGluZS1vZmZzZXQ6IHZhcigtLXNwYWNpbmctMDI1KTtcbn1cbmFbZGlzYWJsZWRdIHtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgb3BhY2l0eTogMC42O1xufVxuXG4vKipcbiAqIExpc3QgSXRlbVxuICogR3JvdXA6IEVsZW1lbnRzXG4gKi9cbi5saXN0LWl0ZW0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4ubGlzdC1pdGVtLWFydGljbGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1jb2xvci1icmFuZC1kYXJrLWdyYXkpO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLTIwMCk7XG59XG4ubGlzdC1pdGVtLWFydGljbGU6aG92ZXIsIC5saXN0LWl0ZW0tYXJ0aWNsZTpmb2N1cy13aXRoaW4ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1saWdodC1ncmF5KTtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtb3JhbmdlKTtcbn1cbi5saXN0LWl0ZW0tYXJ0aWNsZV9faW1hZ2Uge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvYmplY3QtZml0OiBjb3Zlcjtcbn1cbi5saXN0LWl0ZW0tYXJ0aWNsZV9faW1hZ2UtLXdyYXBwZXIge1xuICBmbGV4OiAwIDAgYXV0bztcbiAgd2lkdGg6IHZhcigtLXNwYWNpbmctMTIwMCk7XG4gIGhlaWdodDogYXV0bztcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5saXN0LWl0ZW0tYXJ0aWNsZV9faW1hZ2UtLXdyYXBwZXIgcGljdHVyZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmxpc3QtaXRlbS1hcnRpY2xlX19pbWFnZS0td3JhcHBlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cbi5saXN0LWl0ZW0tYXJ0aWNsZV9fY29udGVudCB7XG4gIGZsZXg6IDE7XG4gIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctMjAwKSB2YXIoLS1zcGFjaW5nLTE1MCk7XG59XG4ubGlzdC1pdGVtLWFydGljbGVfX3RpdGxlIHtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtcHJpbWFyeSk7XG4gIGZvbnQtc2l6ZTogdmFyKC0taDMtZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWgzLWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWgzLWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtZGFyay1ncmF5KTtcbn1cbi5saXN0LWl0ZW0tYXJ0aWNsZV9fdGl0bGU6aG92ZXIsIC5saXN0LWl0ZW0tYXJ0aWNsZV9fdGl0bGU6Zm9jdXMtd2l0aGluIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xufVxuLmxpc3QtaXRlbS1hcnRpY2xlX19kYXRlIHtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LXNtYWxsLWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1ib2R5LXNtYWxsLWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWJvZHktc21hbGwtbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbWVkaXVtKTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy0xNTApO1xufVxuLmxpc3QtaXRlbS1hcnRpY2xlX19kZXNjcmlwdGlvbiB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tYm9keS1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjaW5nLTE1MCk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ncmF5KTtcbn1cbi5saXN0LWl0ZW0tbGluayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZy1ibG9jazogdmFyKC0tc3BhY2luZy0yMDApIHZhcigtLXNwYWNpbmctMTUwKTtcbiAgcGFkZGluZy1pbmxpbmU6IHZhcigtLXNwYWNpbmctMTUwKTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWRhcmspO1xufVxuLmxpc3QtaXRlbS1saW5rOmhvdmVyLCAubGlzdC1pdGVtLWxpbms6Zm9jdXMtd2l0aGluIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtbGlnaHRlci1ncmF5KTtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtb3JhbmdlKTtcbn1cbi5saXN0LWl0ZW0tbGlua19fdGl0bGUge1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1wcmltYXJ5KTtcbiAgZm9udC1zaXplOiB2YXIoLS1oMy1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0taDMtbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0taDMtbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1kYXJrLWdyYXkpO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLTA3NSk7XG4gIHdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbi5saXN0LWl0ZW0tbGlua19fdGl0bGU6aG92ZXIsIC5saXN0LWl0ZW0tbGlua19fdGl0bGU6Zm9jdXMge1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG59XG4ubGlzdC1pdGVtLWxpbmtfX3RpdGxlIGgyLFxuLmxpc3QtaXRlbS1saW5rX190aXRsZSBoMyxcbi5saXN0LWl0ZW0tbGlua19fdGl0bGUgaDQsXG4ubGlzdC1pdGVtLWxpbmtfX3RpdGxlIGg1LFxuLmxpc3QtaXRlbS1saW5rX190aXRsZSBoNiB7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgZm9udC13ZWlnaHQ6IGluaGVyaXQ7XG4gIGxldHRlci1zcGFjaW5nOiBpbmhlcml0O1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbn1cbi5saXN0LWl0ZW0tbGlua19faW5mbyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogdmFyKC0tc3BhY2luZy0wNTApO1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtZ3JheSk7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctMTAwKTtcbn1cbi5saXN0LWl0ZW0tbGlua19faW5mby1pY29uIHtcbiAgbWF4LWhlaWdodDogdmFyKC0taWNvbi1teHMpO1xuICB3aWR0aDogdmFyKC0taWNvbi1teHMpO1xuICBoZWlnaHQ6IGF1dG87XG4gIGNvbG9yOiBpbmhlcml0O1xufVxuLmxpc3QtaXRlbS1saW5rX19pbmZvLXRleHQge1xuICBmb250LXNpemU6IHZhcigtLWJvZHktZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWJvZHktbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tYm9keS1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbn1cbi5saXN0LWl0ZW0tbGlua19faWNvbiB7XG4gIG1heC1oZWlnaHQ6IHZhcigtLWljb24tbXMpO1xuICB3aWR0aDogdmFyKC0taWNvbi1tcyk7XG4gIGhlaWdodDogYXV0bztcbiAgY29sb3I6IGluaGVyaXQ7XG59XG4ubGlzdC1pdGVtLWZhcSB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tYm9keS1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICBwYWRkaW5nLWJsb2NrOiB2YXIoLS1zcGFjaW5nLTI1MCkgdmFyKC0tc3BhY2luZy0xNTApO1xuICBwYWRkaW5nLWlubGluZTogdmFyKC0tc3BhY2luZy0yNTApO1xuICBib3gtc2hhZG93OiB2YXIoLS1ib3gtc2hhZG93LWFjY29yZGlvbik7XG4gIGJvcmRlcjogMnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBtYXgtd2lkdGg6IHZhcigtLW1heC13aWR0aC0tc20pO1xuICBtYXJnaW4taW5saW5lOiBhdXRvO1xuICBtYXJnaW4tYmxvY2s6IHZhcigtLXNwYWNpbmctMDc1KTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWdyYXkpO1xufVxuLmxpc3QtaXRlbS1mYXFbb3Blbl0ge1xuICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xufVxuLmxpc3QtaXRlbS1mYXFbb3Blbl0gPiAqOm5vdChzdW1tYXJ5KSB7XG4gIGFuaW1hdGlvbjogZmFkZS1pbiB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluIGZvcndhcmRzO1xufVxuLmxpc3QtaXRlbS1mYXFbb3Blbl0gLmxpc3QtaXRlbS1mYXFfX2ljb24ge1xuICBjb2xvcjogdmFyKC0tY29sb3ItbGlnaHQpO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG59XG4ubGlzdC1pdGVtLWZhcVtvcGVuXSAubGlzdC1pdGVtLWZhcV9faWNvbi0td3JhcHBlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xufVxuLmxpc3QtaXRlbS1mYXEtLXdyYXBwZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4ubGlzdC1pdGVtLWZhcV9fdGl0bGUge1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1wcmltYXJ5KTtcbiAgZm9udC1zaXplOiB2YXIoLS1oNC1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0taDQtbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0taDQtbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiB2YXIoLS1zcGFjaW5nLTA1MCk7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1kYXJrLWdyYXkpO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctMTAwKTtcbn1cbi5saXN0LWl0ZW0tZmFxX190aXRsZTo6LXdlYmtpdC1kZXRhaWxzLW1hcmtlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4ubGlzdC1pdGVtLWZhcV9fdGl0bGU6aG92ZXIge1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG59XG4ubGlzdC1pdGVtLWZhcV9faWNvbiB7XG4gIG1heC1oZWlnaHQ6IHZhcigtLWljb24teHMpO1xuICB3aWR0aDogdmFyKC0taWNvbi14cyk7XG4gIGhlaWdodDogYXV0bztcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQ7XG59XG4ubGlzdC1pdGVtLWZhcV9faWNvbi0td3JhcHBlciB7XG4gIHdpZHRoOiB2YXIoLS1zcGFjaW5nLTMwMCk7XG4gIGhlaWdodDogdmFyKC0tc3BhY2luZy0zMDApO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLWZ1bGwpO1xuICBmbGV4LXNocmluazogMDtcbiAgZGlzcGxheTogZ3JpZDtcbiAgcGxhY2UtaXRlbXM6IGNlbnRlcjtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dDtcbn1cbi5saXN0LWl0ZW0tZmFxX19pY29uLS13cmFwcGVyOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG59XG4ubGlzdC1pdGVtLWZhcV9faWNvbi0td3JhcHBlcjpob3ZlciAubGlzdC1pdGVtLWZhcV9faWNvbiB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1saWdodCk7XG59XG4ubGlzdC1pdGVtLWZhcV9fY2F0ZWdvcnkge1xuICBmb250LXNpemU6IHZhcigtLWJvZHktc21hbGwtZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWJvZHktc21hbGwtbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tYm9keS1zbWFsbC1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ib2xkKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWRhcmstZ3JheSk7XG4gIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmctMTUwKTtcbn1cbi5saXN0LWl0ZW0tcmVndWxhdGlvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IG5vd3JhcDtcbn1cbi5saXN0LWl0ZW0tcmVndWxhdGlvbjpob3ZlciAubGlzdC1pdGVtLXJlZ3VsYXRpb25fX2NvbnRlbnQsIC5saXN0LWl0ZW0tcmVndWxhdGlvbjpmb2N1cy13aXRoaW4gLmxpc3QtaXRlbS1yZWd1bGF0aW9uX19jb250ZW50IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtbGlnaHQtZ3JheSk7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLW9yYW5nZSk7XG59XG4ubGlzdC1pdGVtLXJlZ3VsYXRpb25fX2NvbnRlbnQge1xuICBmbGV4OiAxO1xuICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLTIwMCkgdmFyKC0tc3BhY2luZy0xNTApO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tY29sb3ItYnJhbmQtZGFyay1ncmF5KTtcbn1cbi5saXN0LWl0ZW0tcmVndWxhdGlvbl9fdGl0bGUge1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1wcmltYXJ5KTtcbiAgZm9udC1zaXplOiB2YXIoLS1oMy1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0taDMtbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0taDMtbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1kYXJrLWdyYXkpO1xufVxuLmxpc3QtaXRlbS1yZWd1bGF0aW9uX190aXRsZTpob3ZlciwgLmxpc3QtaXRlbS1yZWd1bGF0aW9uX190aXRsZTpmb2N1cy13aXRoaW4ge1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG59XG4ubGlzdC1pdGVtLXJlZ3VsYXRpb25fX2RhdGUge1xuICBmb250LXNpemU6IHZhcigtLWJvZHktc21hbGwtZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWJvZHktc21hbGwtbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tYm9keS1zbWFsbC1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1tZWRpdW0pO1xuICBkaXNwbGF5OiBibG9jaztcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLTE1MCk7XG59XG4ubGlzdC1pdGVtLXNlYXJjaC1yZXN1bHQge1xuICB3aWR0aDogMTAwJTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiByb3cgbm93cmFwO1xufVxuLmxpc3QtaXRlbS1zZWFyY2gtcmVzdWx0OmhvdmVyIC5saXN0LWl0ZW0tc2VhcmNoLXJlc3VsdF9fY29udGVudCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWxpZ2h0LWdyYXkpO1xuICBib3JkZXItYm90dG9tLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1vcmFuZ2UpO1xufVxuLmxpc3QtaXRlbS1zZWFyY2gtcmVzdWx0X19jb250ZW50IHtcbiAgZmxleDogMTtcbiAgcGFkZGluZzogdmFyKC0tc3BhY2luZy0yMDApIHZhcigtLXNwYWNpbmctMTUwKTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJyYW5kLWRhcmstZ3JheSk7XG59XG4ubGlzdC1pdGVtLXNlYXJjaC1yZXN1bHRfX3RpdGxlIHtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtcHJpbWFyeSk7XG4gIGZvbnQtc2l6ZTogdmFyKC0taDMtZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWgzLWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWgzLWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtZGFyay1ncmF5KTtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy0wNTApO1xufVxuLmxpc3QtaXRlbS1zZWFyY2gtcmVzdWx0X190aXRsZTpob3ZlciB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcbn1cbi5saXN0LWl0ZW0tc2VhcmNoLXJlc3VsdF9fY2F0ZWdvcnkge1xuICBmb250LXNpemU6IHZhcigtLWJvZHktc21hbGwtZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWJvZHktc21hbGwtbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tYm9keS1zbWFsbC1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1tZWRpdW0pO1xuICBkaXNwbGF5OiBibG9jaztcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLTE1MCk7XG59XG5cbi8qKlxuICogTGlzdFxuICogR3JvdXA6IEVsZW1lbnRzXG4gKi9cbm9sLFxudWwge1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgLyogV2hlbiBVTCBkb2Vzbid0IGhhdmUgYW55IGNsYXNzICovXG59XG5vbDo6YmVmb3JlLFxudWw6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi4oCLXCI7IC8qIGFkZCB6ZXJvLXdpZHRoIHNwYWNlICovXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gIGNsaXAtcGF0aDogaW5zZXQoNTAlKTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYm9yZGVyOiAwO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5vbCBsaSxcbnVsIGxpIHtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgZm9udC13ZWlnaHQ6IGluaGVyaXQ7XG4gIGxldHRlci1zcGFjaW5nOiBpbmhlcml0O1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbn1cbm9sIGxpOjptYXJrZXIsXG51bCBsaTo6bWFya2VyIHtcbiAgY29sb3I6IGN1cnJlbnRjb2xvcjtcbn1cbi5vLW1haW4gb2w6bm90KFtjbGFzc10pLFxuLm8tbWFpbiB1bDpub3QoW2NsYXNzXSkge1xuICBwYWRkaW5nLWxlZnQ6IDEuNWVtO1xufVxuLm8tbWFpbiBvbDpub3QoW2NsYXNzXSkgbGksXG4uby1tYWluIHVsOm5vdChbY2xhc3NdKSBsaSB7XG4gIG1hcmdpbjogdmFyKC0tc3BhY2Utc20pIDA7XG59XG5cbm9sIHtcbiAgLyogV2hlbiBPTCBkb2Vzbid0IGhhdmUgYW55IGNsYXNzICovXG59XG4uby1tYWluIG9sOm5vdChbY2xhc3NdKSB7XG4gIGxpc3Qtc3R5bGU6IGF1dG87XG59XG5cbnVsIHtcbiAgLyogV2hlbiBVTCBkb2Vzbid0IGhhdmUgYW55IGNsYXNzICovXG59XG4uby1tYWluIHVsOm5vdChbY2xhc3NdKSB7XG4gIGxpc3Qtc3R5bGU6IGRpc2Mgb3V0c2lkZTtcbn1cblxuLyoqXG4gKiBMb2dvXG4gKiBHcm91cDogRWxlbWVudHNcbiAqL1xuLmxvZ28taGVhZGVyIHtcbiAgbWF4LXdpZHRoOiA1LjVyZW07XG4gIG1heC1oZWlnaHQ6IDVyZW07XG59XG4ubG9nby1oZWFkZXIgaW1nIHtcbiAgb2JqZWN0LWZpdDogY29udGFpbjtcbn1cbi5sb2dvLWZvb3RlciB7XG4gIG1heC13aWR0aDogOXJlbTtcbiAgbWF4LWhlaWdodDogOXJlbTtcbn1cbi5sb2dvLWZvb3RlciBpbWcge1xuICBvYmplY3QtZml0OiBjb250YWluO1xufVxuXG4vKipcbiAqIE1haW5cbiAqIEdyb3VwOiBFbGVtZW50c1xuICovXG5tYWluIHtcbiAgZmxleDogMTtcbn1cblxuLyoqXG4gKiBOYXZcbiAqIEdyb3VwOiBFbGVtZW50c1xuICovXG4ubWVudSB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLm1lbnUge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgZ2FwOiB2YXIoLS1zcGFjaW5nLTA1MCk7XG4gIH1cbn1cbi5tZW51LWl0ZW0ge1xuICBmb250LXNpemU6IHZhcigtLWJvZHktZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWJvZHktbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tYm9keS1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1zZW1pYm9sZCk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1saWdodCk7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBib3JkZXItbGVmdDogM3B4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBwYWRkaW5nLWlubGluZTogdmFyKC0tc3BhY2luZy0xMDApO1xuICBwYWRkaW5nLWJsb2NrOiB2YXIoLS1zcGFjaW5nLTA1MCk7XG59XG4ubWVudS1pdGVtOmhvdmVyIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1saWdodCk7XG4gIGJvcmRlci1sZWZ0LWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1vcmFuZ2UpO1xufVxuLm1lbnUtaXRlbS0td3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5tZW51LWl0ZW0tLWN0YSB7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1tKTtcbiAgYm9yZGVyLXdpZHRoOiB2YXIoLS1idXR0b24tYm9yZGVyLXdpZHRoKTtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LWZvbnQtc2l6ZSk7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC1zdHJldGNoOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxlYWRpbmctbm9uZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS10cmFja2luZy1ub3JtYWwpO1xuICBwYWRkaW5nLWJsb2NrOiB2YXIoLS1zcGFjaW5nLTA3NSk7XG4gIHBhZGRpbmctaW5saW5lOiB2YXIoLS1zcGFjaW5nLTEwMCk7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtb3JhbmdlKTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1vcmFuZ2UpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtZGFyay1ncmF5KTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgaGVpZ2h0OiB2YXIoLS1zcGFjaW5nLTIwMCk7XG4gIGJvcmRlci13aWR0aDogdmFyKC0tYnV0dG9uLWJvcmRlci13aWR0aCk7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci1yYWRpdXM6IDEuMjVyZW07XG4gIHBhZGRpbmctaW5saW5lOiB2YXIoLS1zcGFjaW5nLTIwMCk7XG59XG4ubWVudS1pdGVtLS1jdGE6aG92ZXIsIC5tZW51LWl0ZW0tLWN0YTphY3RpdmUsIC5tZW51LWl0ZW0tLWN0YTpmb2N1cyB7XG4gIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0LCB0cmFuc2Zvcm0gdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQsIG9wYWNpdHkgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQ7XG59XG4ubWVudS1pdGVtLS1jdGE6aG92ZXI6YWN0aXZlLCAubWVudS1pdGVtLS1jdGE6YWN0aXZlOmFjdGl2ZSwgLm1lbnUtaXRlbS0tY3RhOmZvY3VzOmFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMC45KTtcbn1cbi5tZW51LWl0ZW0tLWN0YTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWxpZ2h0LWdyYXkpO1xufVxuLm1lbnUtaXRlbS0tY3RhOmZvY3VzIHtcbiAgb3V0bGluZS1jb2xvcjogdmFyKC0tY29sb3ItZm9jdXMtc3Ryb2tlKTtcbn1cbi5tZW51LWl0ZW0tLWJ1dHRvbiB7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IG5vbmU7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIHRleHQtYWxpZ246IGluaGVyaXQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBib3JkZXItbGVmdDogM3B4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGdhcDogdmFyKC0tc3BhY2luZy0wMjUpO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5tZW51LWl0ZW0tLWJ1dHRvbiB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWRhcmstZ3JheSk7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG4gIC5tZW51LWl0ZW0tLWJ1dHRvbjpob3ZlciB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWRhcmstZ3JheSk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cbn1cbi5tZW51LWl0ZW1fX2ljb24ge1xuICB3aWR0aDogdmFyKC0taWNvbi1kZWZhdWx0KTtcbiAgaGVpZ2h0OiB2YXIoLS1pY29uLWRlZmF1bHQpO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQ7XG59XG4ubWVudS1pdGVtW2FyaWEtZXhwYW5kZWQ9dHJ1ZV0gLm1lbnUtaXRlbV9faWNvbiB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG59XG4ubWVudS1zdWIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlLWRhcmspO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5tZW51LXN1YiB7XG4gICAgYm94LXNoYWRvdzogdmFyKC0tYm94LXNoYWRvdy1saWdodC0wNCk7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMTAwJTtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiB2YXIoLS1zcGFjaW5nLTI0MDApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xuICB9XG4gIC5tZW51LXN1YiA+ICo6bGFzdC1jaGlsZCA+IC5tZW51LWl0ZW0ge1xuICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gIH1cbn1cbi5tZW51LXN1YiAubWVudS1pdGVtIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoLS1zcGFjaW5nLTI1MCk7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1jb2xvci1saWdodCk7XG59XG4ubWVudS1zdWJbZGF0YS1leHBhbmRlZD1mYWxzZV0ge1xuICBkaXNwbGF5OiBub25lO1xufVxuLm1lbnUtc3ViW2RhdGEtZXhwYW5kZWQ9dHJ1ZV0ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgYW5pbWF0aW9uOiBmYWRlLWluIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0IGZvcndhcmRzO1xufVxuLm1lbnUgPiAqOm5vdCg6bGFzdC1jaGlsZCkgPiAubWVudS1pdGVtIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWxpZ2h0KTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAubWVudSA+ICo6bm90KDpsYXN0LWNoaWxkKSA+IC5tZW51LWl0ZW0ge1xuICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gIH1cbn1cblxuLyoqXG4gKiBQYWdpbmF0aW9uXG4gKiBHcm91cDogRWxlbWVudHNcbiAqL1xuLnBhZ2luYXRpb24ge1xuICBoZWlnaHQ6IHZhcigtLXBhZ2luYXRpb24taGVpZ2h0KTtcbiAgbWFyZ2luLWlubGluZTogYXV0bztcbiAgbWFyZ2luLWJsb2NrOiB2YXIoLS1zcGFjaW5nLTMwMCk7XG4gIG1heC13aWR0aDogdmFyKC0tc3BhY2luZy00MDAwKTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLnBhZ2luYXRpb24ge1xuICAgIG1hcmdpbi1ibG9jazogdmFyKC0tc3BhY2luZy02MDApO1xuICB9XG59XG4ucGFnaW5hdGlvbl9fbGlzdCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGdhcDogdmFyKC0tc3BhY2luZy0wNTApO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQxNHB4KSB7XG4gIC5wYWdpbmF0aW9uX19saXN0IHtcbiAgICBnYXA6IHZhcigtLXNwYWNpbmctMTAwKTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5wYWdpbmF0aW9uX19saXN0IHtcbiAgICBnYXA6IHZhcigtLXNwYWNpbmctMjAwKTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5wYWdpbmF0aW9uX19saXN0IHtcbiAgICBnYXA6IHZhcigtLXNwYWNpbmctMzAwKTtcbiAgfVxufVxuLnBhZ2luYXRpb25fX2l0ZW0ge1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtbSk7XG4gIGJvcmRlci13aWR0aDogdmFyKC0tYnV0dG9uLWJvcmRlci13aWR0aCk7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1mb250LXNpemUpO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtc3RyZXRjaDogbm9ybWFsO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1sZWFkaW5nLW5vbmUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tdHJhY2tpbmctbm9ybWFsKTtcbiAgcGFkZGluZy1ibG9jazogdmFyKC0tc3BhY2luZy0wNzUpO1xuICBwYWRkaW5nLWlubGluZTogdmFyKC0tc3BhY2luZy0xMDApO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1zbWFsbC1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZCk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS10cmFja2luZy1ub3JtYWwpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGVhZGluZy10aWdodCk7XG4gIHBhZGRpbmctYmxvY2s6IHZhcigtLXNwYWNpbmctMDI1KTtcbiAgcGFkZGluZy1pbmxpbmU6IHZhcigtLXNwYWNpbmctMDc1KTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYnRuLXJhZGl1cy1mdWxsKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcbiAgd2lkdGg6IHZhcigtLXNwYWNpbmctMjAwKTtcbiAgaGVpZ2h0OiB2YXIoLS1zcGFjaW5nLTIwMCk7XG4gIHBhZGRpbmc6IDA7XG59XG4ucGFnaW5hdGlvbl9faXRlbTpob3ZlciwgLnBhZ2luYXRpb25fX2l0ZW06YWN0aXZlLCAucGFnaW5hdGlvbl9faXRlbTpmb2N1cyB7XG4gIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0LCB0cmFuc2Zvcm0gdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQsIG9wYWNpdHkgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQ7XG59XG4ucGFnaW5hdGlvbl9faXRlbTpob3ZlcjphY3RpdmUsIC5wYWdpbmF0aW9uX19pdGVtOmFjdGl2ZTphY3RpdmUsIC5wYWdpbmF0aW9uX19pdGVtOmZvY3VzOmFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMC45KTtcbn1cbi5wYWdpbmF0aW9uX19pdGVtOmhvdmVyLCAucGFnaW5hdGlvbl9faXRlbVthcmlhLWN1cnJlbnQ9cGFnZV0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0KTtcbn1cbi5wYWdpbmF0aW9uX19pdGVtOmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1mb2N1cy1zdHJva2UpO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSB7XG4gIC5wYWdpbmF0aW9uX19pdGVtIHtcbiAgICB3aWR0aDogdmFyKC0tc3BhY2luZy0zMDApO1xuICAgIGhlaWdodDogdmFyKC0tc3BhY2luZy0zMDApO1xuICB9XG59XG4ucGFnaW5hdGlvbl9fbmF2aWdhdGlvbi1idXR0b24ge1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtbSk7XG4gIGJvcmRlci13aWR0aDogdmFyKC0tYnV0dG9uLWJvcmRlci13aWR0aCk7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1mb250LXNpemUpO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtc3RyZXRjaDogbm9ybWFsO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1sZWFkaW5nLW5vbmUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tdHJhY2tpbmctbm9ybWFsKTtcbiAgcGFkZGluZy1ibG9jazogdmFyKC0tc3BhY2luZy0wNzUpO1xuICBwYWRkaW5nLWlubGluZTogdmFyKC0tc3BhY2luZy0xMDApO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1zbWFsbC1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZCk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS10cmFja2luZy1ub3JtYWwpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGVhZGluZy10aWdodCk7XG4gIHBhZGRpbmctYmxvY2s6IHZhcigtLXNwYWNpbmctMDI1KTtcbiAgcGFkZGluZy1pbmxpbmU6IHZhcigtLXNwYWNpbmctMDc1KTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYnRuLXJhZGl1cy1mdWxsKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcbiAgd2lkdGg6IHZhcigtLXNwYWNpbmctMjAwKTtcbiAgaGVpZ2h0OiB2YXIoLS1zcGFjaW5nLTIwMCk7XG4gIHBhZGRpbmc6IDA7XG59XG4ucGFnaW5hdGlvbl9fbmF2aWdhdGlvbi1idXR0b246aG92ZXIsIC5wYWdpbmF0aW9uX19uYXZpZ2F0aW9uLWJ1dHRvbjphY3RpdmUsIC5wYWdpbmF0aW9uX19uYXZpZ2F0aW9uLWJ1dHRvbjpmb2N1cyB7XG4gIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0LCB0cmFuc2Zvcm0gdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQsIG9wYWNpdHkgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQ7XG59XG4ucGFnaW5hdGlvbl9fbmF2aWdhdGlvbi1idXR0b246aG92ZXI6YWN0aXZlLCAucGFnaW5hdGlvbl9fbmF2aWdhdGlvbi1idXR0b246YWN0aXZlOmFjdGl2ZSwgLnBhZ2luYXRpb25fX25hdmlnYXRpb24tYnV0dG9uOmZvY3VzOmFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMC45KTtcbn1cbi5wYWdpbmF0aW9uX19uYXZpZ2F0aW9uLWJ1dHRvbjpob3ZlciwgLnBhZ2luYXRpb25fX25hdmlnYXRpb24tYnV0dG9uW2FyaWEtY3VycmVudD1wYWdlXSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItbGlnaHQpO1xufVxuLnBhZ2luYXRpb25fX25hdmlnYXRpb24tYnV0dG9uOmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1mb2N1cy1zdHJva2UpO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSB7XG4gIC5wYWdpbmF0aW9uX19uYXZpZ2F0aW9uLWJ1dHRvbiB7XG4gICAgd2lkdGg6IHZhcigtLXNwYWNpbmctMzAwKTtcbiAgICBoZWlnaHQ6IHZhcigtLXNwYWNpbmctMzAwKTtcbiAgfVxufVxuLnBhZ2luYXRpb25fX25hdmlnYXRpb24tYnV0dG9uW2FyaWEtZGlzYWJsZWQ9dHJ1ZV0ge1xuICBvcGFjaXR5OiAwLjU7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuLnBhZ2luYXRpb25fX25hdi1pY29uIHtcbiAgd2lkdGg6IHZhcigtLWljb24teHhzKTtcbiAgaGVpZ2h0OiB2YXIoLS1pY29uLXhzKTtcbn1cblxuLyoqXG4gKiBJbnB1dFxuICogR3JvdXA6IEVsZW1lbnRzXG4gKi9cbi5zZWFyY2gge1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXhzKTtcbiAgYm9yZGVyOiBub25lO1xuICBmb250LXNpemU6IHZhcigtLWJvZHktZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tYm9keS1saW5lLWhlaWdodCk7XG4gIHRleHQtaW5kZW50OiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1zZWFyY2gtZ3JheSk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtbCk7XG4gIGhlaWdodDogdmFyKC0tc3BhY2luZy0yNTApO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLTA3NSk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgcGFkZGluZy1ibG9jazogMDtcbn1cbi5zZWFyY2g6aG92ZXIsIC5zZWFyY2g6YWN0aXZlLCAuc2VhcmNoOmZvY3VzIHtcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dDtcbn1cbi5zZWFyY2g6aG92ZXIge1xuICBib3gtc2hhZG93OiB2YXIoLS1ib3gtc2hhZG93LWxpZ2h0LTAzKTtcbn1cbi5zZWFyY2ggaW5wdXQge1xuICBoZWlnaHQ6IHZhcigtLWlucHV0LWhlaWdodC1sYXJnZSk7XG4gIHdpZHRoOiB2YXIoLS1tYXgtd2lkdGgtLTZ4cyk7XG4gIGNvbG9yOiBpbmhlcml0O1xuICBmb250LXNpemU6IHZhcigtLWJvZHktc21hbGwtZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWJvZHktc21hbGwtbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tYm9keS1zbWFsbC1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbn1cbi5zZWFyY2ggaW5wdXQ6OnBsYWNlaG9sZGVyIHtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LXNtYWxsLWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1ib2R5LXNtYWxsLWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWJvZHktc21hbGwtbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcbiAgb3BhY2l0eTogMC43O1xufVxuLnNlYXJjaCBpbnB1dDo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1zbWFsbC1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tYm9keS1zbWFsbC1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LXNtYWxsLWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG4gIG9wYWNpdHk6IDAuNztcbn1cbi5zZWFyY2ggaW5wdXQ6Oi1tb3otcGxhY2Vob2xkZXIge1xuICBmb250LXNpemU6IHZhcigtLWJvZHktc21hbGwtZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWJvZHktc21hbGwtbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tYm9keS1zbWFsbC1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xuICBvcGFjaXR5OiAwLjc7XG4gIG9wYWNpdHk6IDE7XG59XG4uc2VhcmNoIGlucHV0Oi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1zbWFsbC1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tYm9keS1zbWFsbC1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LXNtYWxsLWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG4gIG9wYWNpdHk6IDAuNztcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAuc2VhcmNoIGlucHV0IHtcbiAgICB3aWR0aDogdmFyKC0tbWF4LXdpZHRoLS01eHMpO1xuICB9XG59XG4uc2VhcmNoX19jdGEge1xuICBmb250LXNpemU6IHZhcigtLWJvZHktc21hbGwtZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tdHJhY2tpbmctbm9ybWFsKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxlYWRpbmctbm9uZSk7XG4gIHBhZGRpbmctYmxvY2s6IHZhcigtLXNwYWNpbmctMDI1KTtcbiAgcGFkZGluZy1pbmxpbmU6IHZhcigtLXNwYWNpbmctMDc1KTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYnRuLXJhZGl1cyk7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IHZhcigtLXNwYWNpbmctMjUwKTtcbiAgZGlzcGxheTogZ3JpZDtcbiAgcGxhY2UtaXRlbXM6IGNlbnRlcjtcbiAgYm9yZGVyOiBub25lO1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG59XG4uc2VhcmNoX19jdGE6aG92ZXIge1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtb3JhbmdlKTtcbn1cbi5zZWFyY2hfX2ljb24ge1xuICB3aWR0aDogdmFyKC0taWNvbi14cyk7XG4gIGhlaWdodDogdmFyKC0taWNvbi14cyk7XG4gIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2luZy0wMjUpO1xufVxuLnNlYXJjaF9faWNvbi0tb3BlbiwgLnNlYXJjaF9faWNvbi0tY2xvc2Uge1xuICBkaXNwbGF5OiBub25lO1xuICBjb2xvcjogaW5oZXJpdDtcbn1cbi5zZWFyY2hfX2ljb24tLXRvZ2dsZXItd3JhcHBlciB7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1tKTtcbiAgYm9yZGVyLXdpZHRoOiB2YXIoLS1idXR0b24tYm9yZGVyLXdpZHRoKTtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LWZvbnQtc2l6ZSk7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC1zdHJldGNoOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxlYWRpbmctbm9uZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS10cmFja2luZy1ub3JtYWwpO1xuICBwYWRkaW5nLWJsb2NrOiB2YXIoLS1zcGFjaW5nLTA3NSk7XG4gIHBhZGRpbmctaW5saW5lOiB2YXIoLS1zcGFjaW5nLTEwMCk7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LXNtYWxsLWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLXRyYWNraW5nLW5vcm1hbCk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1sZWFkaW5nLW5vbmUpO1xuICBwYWRkaW5nLWJsb2NrOiB2YXIoLS1zcGFjaW5nLTAyNSk7XG4gIHBhZGRpbmctaW5saW5lOiB2YXIoLS1zcGFjaW5nLTA3NSk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJ0bi1yYWRpdXMpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG59XG4uc2VhcmNoX19pY29uLS10b2dnbGVyLXdyYXBwZXI6aG92ZXIsIC5zZWFyY2hfX2ljb24tLXRvZ2dsZXItd3JhcHBlcjphY3RpdmUsIC5zZWFyY2hfX2ljb24tLXRvZ2dsZXItd3JhcHBlcjpmb2N1cyB7XG4gIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0LCB0cmFuc2Zvcm0gdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQsIG9wYWNpdHkgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQ7XG59XG4uc2VhcmNoX19pY29uLS10b2dnbGVyLXdyYXBwZXI6aG92ZXI6YWN0aXZlLCAuc2VhcmNoX19pY29uLS10b2dnbGVyLXdyYXBwZXI6YWN0aXZlOmFjdGl2ZSwgLnNlYXJjaF9faWNvbi0tdG9nZ2xlci13cmFwcGVyOmZvY3VzOmFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMC45KTtcbn1cbi5zZWFyY2hfX2ljb24tLXRvZ2dsZXItd3JhcHBlcjpob3ZlciB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1vcmFuZ2UpO1xufVxuLnNlYXJjaF9faWNvbi0tdG9nZ2xlci13cmFwcGVyW2FyaWEtZXhwYW5kZWQ9ZmFsc2VdIC5zZWFyY2hfX2ljb24tLW9wZW4ge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi5zZWFyY2hfX2ljb24tLXRvZ2dsZXItd3JhcHBlclthcmlhLWV4cGFuZGVkPXRydWVdIC5zZWFyY2hfX2ljb24tLWNsb3NlIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4uc2VhcmNoLS1tb2JpbGUge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBtYXgtd2lkdGg6IDA7XG4gIHRyYW5zZm9ybTogc2NhbGVYKDApO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBjZW50ZXI7XG4gIHRyYW5zaXRpb246IG1heC13aWR0aCB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dDtcbn1cbi5zZWFyY2gtLW1vYmlsZVtkYXRhLWV4cGFuZGVkPXRydWVdIHtcbiAgdHJhbnNmb3JtOiBzY2FsZVgoMSk7XG4gIG1heC13aWR0aDogdmFyKC0tbWF4LXdpZHRoLS03eHMpO1xuICBtYXJnaW4tcmlnaHQ6IHZhcigtLXNwYWNpbmctMDUwKTtcbn1cbi5zZWFyY2gtLW1vYmlsZVtkYXRhLWV4cGFuZGVkPXRydWVdIGlucHV0IHtcbiAgbWF4LXdpZHRoOiB2YXIoLS1tYXgtd2lkdGgtLTl4cyk7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnNlYXJjaC0tbW9iaWxlW2RhdGEtZXhwYW5kZWQ9dHJ1ZV0ge1xuICAgIG1heC13aWR0aDogdmFyKC0tbWF4LXdpZHRoLS01eHMpO1xuICB9XG4gIC5zZWFyY2gtLW1vYmlsZVtkYXRhLWV4cGFuZGVkPXRydWVdIGlucHV0IHtcbiAgICBtYXgtd2lkdGg6IHZhcigtLW1heC13aWR0aC0tNnhzKTtcbiAgfVxufVxuXG4vKipcbiAqIFNlbGVjdFxuICogR3JvdXA6IEVsZW1lbnRzXG4gKi9cbnNlbGVjdCB7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMteHMpO1xuICBib3JkZXI6IG5vbmU7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LWxpbmUtaGVpZ2h0KTtcbiAgdGV4dC1pbmRlbnQ6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLXNlYXJjaC1ncmF5KTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1sKTtcbiAgaGVpZ2h0OiB2YXIoLS1zcGFjaW5nLTMwMCk7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IG5vd3JhcDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLTEwMCkgdmFyKC0tc3BhY2luZy0xNTApO1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tYm9keS1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xufVxuc2VsZWN0OmhvdmVyLCBzZWxlY3Q6YWN0aXZlLCBzZWxlY3Q6Zm9jdXMge1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0O1xufVxuc2VsZWN0OmhvdmVyIHtcbiAgYm94LXNoYWRvdzogdmFyKC0tYm94LXNoYWRvdy1saWdodC0wMyk7XG59XG5zZWxlY3QgaW5wdXQge1xuICB3aWR0aDogMTAwJTtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tYm9keS1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xufVxuc2VsZWN0IGlucHV0OjpwbGFjZWhvbGRlciB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tYm9keS1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG59XG5zZWxlY3QgaW5wdXQ6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuICBmb250LXNpemU6IHZhcigtLWJvZHktZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWJvZHktbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tYm9keS1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xufVxuc2VsZWN0IGlucHV0OjotbW96LXBsYWNlaG9sZGVyIHtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1ib2R5LWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWJvZHktbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcbiAgb3BhY2l0eTogMTtcbn1cbnNlbGVjdCBpbnB1dDotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xuICBmb250LXNpemU6IHZhcigtLWJvZHktZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWJvZHktbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tYm9keS1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xufVxuXG4vKipcbiAqIFNvY2lhbCBMaW5rc1xuICogR3JvdXA6IEVsZW1lbnRzXG4gKi9cbi5zb2NpYWwtbGlua3Mge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogdmFyKC0tc3BhY2luZy0wMjUpO1xuICBjb2xvcjogaW5oZXJpdDtcbiAgZmxleDogMTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkge1xuICAuc29jaWFsLWxpbmtzIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgZmxleDogMCAxIGF1dG87XG4gICAgZ2FwOiB2YXIoLS1zcGFjaW5nLTIwMCk7XG4gIH1cbn1cbi5zb2NpYWwtbGlua3NfX2xpbmsge1xuICBmb250LXNpemU6IHZhcigtLWJvZHktc21hbGwtZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWJvZHktc21hbGwtbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tYm9keS1zbWFsbC1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuLnNvY2lhbC1saW5rc19fbGluayBzdmcge1xuICBoZWlnaHQ6IHZhcigtLWljb24tZGVmYXVsdCk7XG4gIHdpZHRoOiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IHZhcigtLXNwYWNpbmctMDI1KTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkge1xuICAuc29jaWFsLWxpbmtzX19saW5rIHtcbiAgICBmb250LXNpemU6IHZhcigtLWJvZHktZm9udC1zaXplKTtcbiAgICBsZXR0ZXItc3BhY2luZzogdmFyKC0tYm9keS1sZXR0ZXItc3BhY2luZyk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWJvZHktbGluZS1oZWlnaHQpO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbiAgfVxuICAuc29jaWFsLWxpbmtzX19saW5rIHN2ZyB7XG4gICAgaGVpZ2h0OiB2YXIoLS1pY29uLWRlZmF1bHQpO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2luZy0wNzUpO1xuICB9XG59XG5cbi8qKlxuICogTGlzdCBJdGVtXG4gKiBHcm91cDogRWxlbWVudHNcbiAqL1xuLnRhYmxlLWxpc3Qge1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICBtaW4td2lkdGg6IHZhcigtLW1pbi13aWR0aC10YWJsZS1saXN0KTtcbiAgd2lkdGg6IDEwMCU7XG59XG4udGFibGUtbGlzdC0td3JhcHBlciB7XG4gIG92ZXJmbG93LXg6IGF1dG87XG4gIHdpZHRoOiAxMDAlO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC50YWJsZS1saXN0LS13cmFwcGVyIHtcbiAgICBvdmVyZmxvdy14OiB2aXNpYmxlO1xuICB9XG59XG4udGFibGUtbGlzdF9fY2FwdGlvbiB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LXByaW1hcnkpO1xuICBmb250LXNpemU6IHZhcigtLWgyLWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1oMi1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1oMi1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWRhcmstZ3JheSk7XG4gIG1hcmdpbjogMCAwIHZhcigtLXNwYWNpbmctMTAwKTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cbi50YWJsZS1saXN0X190cmVlLWNhcHRpb24ge1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1wcmltYXJ5KTtcbiAgZm9udC1zaXplOiB2YXIoLS1oMi1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0taDItbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0taDItbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1kYXJrLWdyYXkpO1xuICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjaW5nLTYwMCk7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctMzAwKTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cbi50YWJsZS1saXN0X19jZWxsIHtcbiAgcGFkZGluZy1ibG9jazogdmFyKC0tc3BhY2luZy0yMDApO1xuICBwYWRkaW5nLWlubGluZTogdmFyKC0tc3BhY2luZy0wNTApO1xufVxuLnRhYmxlLWxpc3RfX2NlbGw6Zmlyc3QtY2hpbGQge1xuICBwYWRkaW5nLWlubGluZTogdmFyKC0tc3BhY2luZy0wNzUpIDA7XG59XG4udGFibGUtbGlzdF9fY2VsbDpsYXN0LWNoaWxkIHtcbiAgcGFkZGluZy1pbmxpbmU6IDAgdmFyKC0tc3BhY2luZy0wNzUpO1xufVxuLnRhYmxlLWxpc3RfX2NlbGwtLWhlYWRlciB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHdpZHRoOiAzMCU7XG59XG4udGFibGUtbGlzdF9fcm93IHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJyYW5kLWxpZ2h0ZXItZ3JheSk7XG59XG4udGFibGUtbGlzdF9fcm93OmhvdmVyLCAudGFibGUtbGlzdF9fcm93OmZvY3VzLXdpdGhpbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWxpZ2h0ZXItZ3JheSk7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLW9yYW5nZSk7XG59XG4udGFibGUtbGlzdF9fcm93OmhvdmVyID4gKiwgLnRhYmxlLWxpc3RfX3Jvdzpmb2N1cy13aXRoaW4gPiAqIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4udGFibGUtbGlzdF9fcm93LXdpdGgtaGVhZGVyIHtcbiAgYm9yZGVyLWJsb2NrOiAxcHggc29saWQgdmFyKC0tY29sb3ItYnJhbmQtb3JhbmdlKTtcbn1cbi50YWJsZS1saXN0X19yb3ctd2l0aC1oZWFkZXI6bnRoLWNoaWxkKG9kZCkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0KTtcbn1cbi50YWJsZS1saXN0X19yb3ctd2l0aC1oZWFkZXI6bnRoLWNoaWxkKGV2ZW4pIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtbGlnaHQtZ3JheSk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ncmF5KTtcbn1cbi50YWJsZS1saXN0X19yb3ctd2l0aC1oZWFkZXI6Zmlyc3QtY2hpbGQge1xuICBib3JkZXItdG9wOiAzcHggc29saWQgdmFyKC0tY29sb3ItYnJhbmQtZ3JheSk7XG59XG4udGFibGUtbGlzdF9fcm93LXdpdGgtaGVhZGVyOmxhc3QtY2hpbGQge1xuICBib3JkZXItYm90dG9tOiAzcHggc29saWQgdmFyKC0tY29sb3ItYnJhbmQtb3JhbmdlKTtcbn1cbi50YWJsZS1saXN0X19oZWFkZXIge1xuICBmb250LXNpemU6IHZhcigtLWJvZHktc21hbGwtZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWJvZHktc21hbGwtbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tYm9keS1zbWFsbC1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ib2xkKTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWdyYXkpO1xuICBib3JkZXItYm90dG9tOiAzcHggc29saWQgdmFyKC0tY29sb3ItYnJhbmQtZGFyay1ncmF5KTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cbi50YWJsZS1saXN0X19pbmRleCB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tYm9keS1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xuICB3aWR0aDogY2xhbXAodmFyKC0tc3BhY2luZy0zMDApLCA2dncsIHZhcigtLXNwYWNpbmctNDAwKSk7XG59XG4udGFibGUtbGlzdF9faW5kZXgtdGV4dCB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tYm9keS1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xufVxuLnRhYmxlLWxpc3RfX3RpdGxlIHtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LXNtYWxsLWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1ib2R5LXNtYWxsLWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWJvZHktc21hbGwtbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG59XG4udGFibGUtbGlzdF9fdGl0bGUtdGV4dCB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1zbWFsbC1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tYm9keS1zbWFsbC1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LXNtYWxsLWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICBtYXgtd2lkdGg6IHZhcigtLXNwYWNpbmctMzcwMCk7XG59XG4udGFibGUtbGlzdF9fbGluayB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1zbWFsbC1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tYm9keS1zbWFsbC1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LXNtYWxsLWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICB3aWR0aDogY2xhbXAoMjAlLCB2YXIoLS1zcGFjaW5nLTI0MDApLCAyNXJlbSk7XG59XG4udGFibGUtbGlzdF9fbGluay1pbm5lciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IG5vd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IHZhcigtLXNwYWNpbmctMDUwKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuLnRhYmxlLWxpc3RfX2xpbmstaW5uZXI6aG92ZXIsIC50YWJsZS1saXN0X19saW5rLWlubmVyOmZvY3VzIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xufVxuLnRhYmxlLWxpc3RfX2xpbmstdGV4dCB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1zbWFsbC1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tYm9keS1zbWFsbC1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LXNtYWxsLWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICBtYXgtd2lkdGg6IHZhcigtLXNwYWNpbmctMTYwMCk7XG4gIGZsZXg6IDE7XG59XG4udGFibGUtbGlzdF9fbGluay1pY29uIHtcbiAgbWF4LWhlaWdodDogdmFyKC0taWNvbi14cyk7XG4gIHdpZHRoOiB2YXIoLS1pY29uLXhzKTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBjb2xvcjogaW5oZXJpdDtcbn1cbi50YWJsZS1saXN0X190aXRsZS1saW5rIHtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LXNtYWxsLWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1ib2R5LXNtYWxsLWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWJvZHktc21hbGwtbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIHdpZHRoOiBjbGFtcCgyMCUsIHZhcigtLXNwYWNpbmctMjQwMCksIDI1cmVtKTtcbn1cbi50YWJsZS1saXN0X190aXRsZS1saW5rLWlubmVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiByb3cgbm93cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogdmFyKC0tc3BhY2luZy0wNTApO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG4udGFibGUtbGlzdF9fdGl0bGUtbGluay1pbm5lcjpob3ZlciwgLnRhYmxlLWxpc3RfX3RpdGxlLWxpbmstaW5uZXI6Zm9jdXMge1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG59XG4udGFibGUtbGlzdF9fdGl0bGUtbGluay10ZXh0IHtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LXNtYWxsLWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1ib2R5LXNtYWxsLWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWJvZHktc21hbGwtbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIGZsZXg6IDE7XG59XG4udGFibGUtbGlzdF9fdGl0bGUtbGluay1pY29uIHtcbiAgbWF4LWhlaWdodDogdmFyKC0taWNvbi14cyk7XG4gIHdpZHRoOiB2YXIoLS1pY29uLXhzKTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBjb2xvcjogaW5oZXJpdDtcbn1cbi50YWJsZS1saXN0X19sYXN0bmFtZSB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1zbWFsbC1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tYm9keS1zbWFsbC1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LXNtYWxsLWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xufVxuLnRhYmxlLWxpc3RfX2xhc3RuYW1lLXRleHQge1xuICBmb250LXNpemU6IHZhcigtLWJvZHktc21hbGwtZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWJvZHktc21hbGwtbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tYm9keS1zbWFsbC1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbiAgbWF4LXdpZHRoOiB2YXIoLS1zcGFjaW5nLTM3MDApO1xufVxuLnRhYmxlLWxpc3RfX2ZpcnN0bmFtZSB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1zbWFsbC1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tYm9keS1zbWFsbC1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LXNtYWxsLWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xufVxuLnRhYmxlLWxpc3RfX2ZpcnN0bmFtZS10ZXh0IHtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LXNtYWxsLWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1ib2R5LXNtYWxsLWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWJvZHktc21hbGwtbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIG1heC13aWR0aDogdmFyKC0tc3BhY2luZy0zNzAwKTtcbn1cbi50YWJsZS1saXN0X19waG9uZSB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1zbWFsbC1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tYm9keS1zbWFsbC1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LXNtYWxsLWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xufVxuLnRhYmxlLWxpc3RfX3Bob25lLXRleHQge1xuICBmb250LXNpemU6IHZhcigtLWJvZHktc21hbGwtZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWJvZHktc21hbGwtbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tYm9keS1zbWFsbC1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbiAgbWF4LXdpZHRoOiB2YXIoLS1zcGFjaW5nLTM3MDApO1xufVxuLnRhYmxlLWxpc3RfX2VtYWlsIHtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LXNtYWxsLWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1ib2R5LXNtYWxsLWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWJvZHktc21hbGwtbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG59XG4udGFibGUtbGlzdF9fZW1haWwtdGV4dCB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1zbWFsbC1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tYm9keS1zbWFsbC1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LXNtYWxsLWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICBtYXgtd2lkdGg6IHZhcigtLXNwYWNpbmctMzcwMCk7XG59XG4udGFibGUtbGlzdF9fb3JndW5pdCB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1zbWFsbC1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tYm9keS1zbWFsbC1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LXNtYWxsLWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xufVxuLnRhYmxlLWxpc3RfX29yZ3VuaXQtdGV4dCB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1zbWFsbC1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tYm9keS1zbWFsbC1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LXNtYWxsLWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICBtYXgtd2lkdGg6IHZhcigtLXNwYWNpbmctMzcwMCk7XG59XG4udGFibGUtbGlzdF9fc2l0ZSB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1zbWFsbC1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tYm9keS1zbWFsbC1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LXNtYWxsLWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xufVxuLnRhYmxlLWxpc3RfX3NpdGUtdGV4dCB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1zbWFsbC1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tYm9keS1zbWFsbC1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LXNtYWxsLWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICBtYXgtd2lkdGg6IHZhcigtLXNwYWNpbmctMzcwMCk7XG59XG4udGFibGUtbGlzdF9fbmFtZSB7XG4gIHdpZHRoOiBjbGFtcCh2YXIoLS1zcGFjaW5nLTYwMCksIDh2dywgdmFyKC0tc3BhY2luZy03MDApKTtcbn1cbi50YWJsZS1saXN0X19uYW1lLXRleHQge1xuICBmb250LXNpemU6IHZhcigtLWJvZHktc21hbGwtZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWJvZHktc21hbGwtbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tYm9keS1zbWFsbC1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ib2xkKTtcbn1cbi50YWJsZS1saXN0X19uYW1lLWxpbmsge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG4udGFibGUtbGlzdF9fbmFtZS1saW5rOmhvdmVyLCAudGFibGUtbGlzdF9fbmFtZS1saW5rOmZvY3VzIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xufVxuLnRhYmxlLWxpc3RfX3R5cGUge1xuICB3aWR0aDogY2xhbXAodmFyKC0tc3BhY2luZy02MDApLCA4dncsIHZhcigtLXNwYWNpbmctNzAwKSk7XG59XG4udGFibGUtbGlzdF9fdHlwZS10ZXh0IHtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LXNtYWxsLWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1ib2R5LXNtYWxsLWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWJvZHktc21hbGwtbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG59XG4udGFibGUtbGlzdF9fdGhlcmFwZXV0aWMtY2F0ZWdvcnktdGV4dCB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1zbWFsbC1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tYm9keS1zbWFsbC1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LXNtYWxsLWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xufVxuLnRhYmxlLWxpc3RfX2FjdGl2ZV9zdWJzdGFuY2UtdGV4dCB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1zbWFsbC1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tYm9keS1zbWFsbC1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LXNtYWxsLWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xufVxuLnRhYmxlLWxpc3RfX2FwcHJvdmFsLXRleHQge1xuICBmb250LXNpemU6IHZhcigtLWJvZHktc21hbGwtZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWJvZHktc21hbGwtbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tYm9keS1zbWFsbC1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuLnRhYmxlLWxpc3RfX2luZGljYXRpb24tY2xhcmlmaWNhdGlvbi10ZXh0IHtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LXNtYWxsLWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1ib2R5LXNtYWxsLWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWJvZHktc21hbGwtbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi50YWJsZS1saXN0X19hdmFpbGFiaWxpdHktLWF2YWlsYWJsZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWdyZWVuKTtcbn1cbi50YWJsZS1saXN0X19hdmFpbGFiaWxpdHktLWxvdy1hdmFpbGFibGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1icm93bi1zZW1pLXRyYW5zcGFyZW50KTtcbn1cbi50YWJsZS1saXN0X19hdmFpbGFiaWxpdHktLW5vdC1hdmFpbGFibGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1yZWQpO1xufVxuLnRhYmxlLWxpc3RfX2F2YWlsYWJpbGl0eS10ZXh0IHtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1ib2R5LWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWJvZHktbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWluLXdpZHRoOiB2YXIoLS1zcGFjaW5nLTEwMDApO1xuICBtYXgtd2lkdGg6IHZhcigtLXNwYWNpbmctODAwKTtcbiAgbWFyZ2luLWlubGluZTogYXV0bztcbiAgcGFkZGluZy1pbmxpbmU6IHZhcigtLXNwYWNpbmctMTUwKTtcbn1cblxuLyoqXG4gKiBUZXh0XG4gKiBHcm91cDogRWxlbWVudHNcbiAqL1xucCxcbnNwYW4sXG5saSxcbmEsXG50aW1lLFxuYWRkcmVzcyB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1ib2R5LWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWJvZHktbGluZS1oZWlnaHQpO1xufVxuXG5wLmhhcy1zbWFsbC1mb250LXNpemUge1xuICBmb250LXNpemU6IHZhcigtLWJvZHktc21hbGwtZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWJvZHktc21hbGwtbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tYm9keS1zbWFsbC1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC10cnVlKTtcbn1cbnAuaGFzLWxhcmdlLWZvbnQtc2l6ZSB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LXByaW1hcnkpO1xuICBmb250LXNpemU6IHZhcigtLWg2LWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1oNi1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1oNi1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC10cnVlKTtcbn1cbnAuaGFzLWxhcmdlci1mb250LXNpemUge1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1wcmltYXJ5KTtcbiAgZm9udC1zaXplOiB2YXIoLS1oNS1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0taDUtbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0taDUtbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtdHJ1ZSk7XG59XG5cbmEgc3BhbixcbnNwYW4gc3BhbiB7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IGluaGVyaXQ7XG4gIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xuICBsZXR0ZXItc3BhY2luZzogaW5oZXJpdDtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG59XG5cbmxpIHAsXG5saSBzcGFuIHtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgZm9udC13ZWlnaHQ6IGluaGVyaXQ7XG4gIGxldHRlci1zcGFjaW5nOiBpbmhlcml0O1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbn1cblxuYSB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1saW5rKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG5cbnNtYWxsIHtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LXNtYWxsLWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWJvZHktc21hbGwtbGluZS1oZWlnaHQpO1xufVxuc21hbGwgPiAqIHtcbiAgZm9udC1zaXplOiBpbmhlcml0O1xuICBmb250LXdlaWdodDogaW5oZXJpdDtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG59XG5cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZCk7XG59XG5cbmksXG5lbSB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuc3VwIHtcbiAgZGlzcGxheTogaW5saW5lO1xuICBmb250LXNpemU6IDAuNmVtO1xuICBmb250LXdlaWdodDogNDAwO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xufVxuXG5tYXJrIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuaW5zIHtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbmRlbCArIGlucyB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoLS1zcGFjZS1zbSk7XG59XG5cbnRoIGEsXG50aCBzcGFuLFxudGQgYSxcbnRkIHNwYW4sXG5saSBhLFxubGkgc3BhbixcbnAgYSxcbnAgc3BhbiB7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IGluaGVyaXQ7XG4gIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xuICBsZXR0ZXItc3BhY2luZzogaW5oZXJpdDtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG59XG5cbi8qXG4gKiBJbmhlcml0IGZvbnQgc3R5bGVzIGlmIGRpdiBoYXMgZm9udCBjbGFzc2VzXG4gKiBUaGlzIGlzIGhlbHBmdWwgZm9yIHRoZSBSVEUgd2hpY2ggaXMgYSBkaXYgYW5kIGFjY2VwdHMgcCB0YWdzIGluc2lkZVxuICovXG5kaXZbY2xhc3NdID4gcDpub3QoW2NsYXNzXSkge1xuICBmb250LXNpemU6IGluaGVyaXQ7XG4gIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgbGV0dGVyLXNwYWNpbmc6IGluaGVyaXQ7XG59XG5cbmJ1dHRvbltjbGFzc10gPiBzcGFuOm5vdChbY2xhc3NdKSwgYnV0dG9uW2NsYXNzXSA+IHA6bm90KFtjbGFzc10pIHtcbiAgZm9udC1zaXplOiBpbmhlcml0O1xuICBmb250LXdlaWdodDogaW5oZXJpdDtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIGxldHRlci1zcGFjaW5nOiBpbmhlcml0O1xufVxuXG4vKipcbiAqIFRleHRhcmVhXG4gKlxuICogR3JvdXA6IEVsZW1lbnRzXG4gKi9cbnRleHRhcmVhIHtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy14cyk7XG4gIGJvcmRlcjogbm9uZTtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWJvZHktbGluZS1oZWlnaHQpO1xuICB0ZXh0LWluZGVudDogMDtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIG91dGxpbmU6IG5vbmU7XG59XG50ZXh0YXJlYTpob3ZlciwgdGV4dGFyZWE6YWN0aXZlLCB0ZXh0YXJlYTpmb2N1cyB7XG4gIHRyYW5zaXRpb246IGJveC1zaGFkb3cgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQ7XG59XG5cbi8qKlxuICogVGl0bGVcbiAqXG4gKiBHcm91cDogRWxlbWVudHNcbiAqL1xuLnRpdGxlLXBhZ2Uge1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1wcmltYXJ5KTtcbiAgZm9udC1zaXplOiB2YXIoLS1oMi1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0taDItbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0taDItbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG59XG4udGl0bGUtc2VjdGlvbiB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LXByaW1hcnkpO1xuICBmb250LXNpemU6IHZhcigtLWgyLWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1oMi1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1oMi1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy0yMDApO1xufVxuXG4vKipcbiAqIFZpZGVvXG4gKiBHcm91cDogRWxlbWVudHNcbiAqL1xuLnZpZGVvIHtcbiAgYXNwZWN0LXJhdGlvOiAxNi85O1xuICBtaW4td2lkdGg6IDMyMHB4O1xuICBtaW4taGVpZ2h0OiAxODBweDtcbiAgbWF4LXdpZHRoOiAxOTIwcHg7XG4gIG1heC1oZWlnaHQ6IDEwODBweDtcbn1cblxuLyoqXG4gKiBPYmplY3RzIE1haW5cbiAqIEdyb3VwOiBPYmplY3RzXG4gKi9cbi8qKlxuICogQXJ0aWNsZXMgR3JvdXBcbiAqIEdyb3VwOiBPYmplY3RzXG4gKi9cbi5vLWFydGljbGVzLWdyb3VwX19uZXdzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZ2FwOiB2YXIoLS1zcGFjaW5nLTIwMCk7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLm8tYXJ0aWNsZXMtZ3JvdXBfX25ld3Mge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMTIsIDFmcik7XG4gICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiAxZnIgMmZyO1xuICB9XG59XG4uby1hcnRpY2xlcy1ncm91cF9fbmV3cy1pdGVtIHtcbiAgbWluLWhlaWdodDogMDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAuby1hcnRpY2xlcy1ncm91cF9fbmV3cy1pdGVtOm50aC1jaGlsZCgxKSB7XG4gICAgZ3JpZC1jb2x1bW46IDEvc3BhbiA2O1xuICAgIGdyaWQtcm93OiAxL3NwYW4gMjtcbiAgfVxuICAuby1hcnRpY2xlcy1ncm91cF9fbmV3cy1pdGVtOm50aC1jaGlsZCgyKSB7XG4gICAgZ3JpZC1jb2x1bW46IDcvc3BhbiA2O1xuICAgIGdyaWQtcm93OiAxO1xuICB9XG4gIC5vLWFydGljbGVzLWdyb3VwX19uZXdzLWl0ZW06bnRoLWNoaWxkKDMpIHtcbiAgICBncmlkLWNvbHVtbjogNy9zcGFuIDY7XG4gICAgZ3JpZC1yb3c6IDI7XG4gIH1cbn1cbi5vLWFydGljbGVzLWdyb3VwX19wcmVzcyB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdhcDogdmFyKC0tc3BhY2luZy0yNTApO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXJnaW4taW5saW5lOiBhdXRvO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5vLWFydGljbGVzLWdyb3VwX19wcmVzcyB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAuby1hcnRpY2xlcy1ncm91cF9fcHJlc3Mge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIDFmcik7XG4gICAgZ2FwOiB2YXIoLS1zcGFjaW5nLTEwMCkgdmFyKC0tc3BhY2luZy0yNTApO1xuICB9XG59XG5cbi8qKlxuICogQXNwZWN0IFJhdGlvXG4gKiBHcm91cDogT2JqZWN0c1xuICogbGluazogaHR0cHM6Ly90d2l0dGVyLmNvbS9jc3N3aXphcmRyeS9zdGF0dXMvMTI2NzA0NjIxNDA2OTAzMDkxMlxuICovXG5Ac3VwcG9ydHMgKHBhZGRpbmctdG9wOiBjYWxjKHZhcigtLWhlaWdodCkgLyB2YXIoLS13aWR0aCkgKiAxMDAlKSkge1xuICAuby1hc3BlY3QtcmF0aW8ge1xuICAgIC0td2lkdGg6IDE2O1xuICAgIC0taGVpZ2h0OiA5O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICB9XG4gIC5vLWFzcGVjdC1yYXRpbzo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZy10b3A6IGNhbGModmFyKC0taGVpZ2h0KSAvIHZhcigtLXdpZHRoKSAqIDEwMCUpO1xuICB9XG4gIC5vLWFzcGVjdC1yYXRpbyA+IGRpdixcbiAgLm8tYXNwZWN0LXJhdGlvID4gaW1nLFxuICAuby1hc3BlY3QtcmF0aW8gPiB2aWRlbyxcbiAgLm8tYXNwZWN0LXJhdGlvID4gaWZyYW1lIHtcbiAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vKiBBcHBseSBhc3BlY3QgcmF0aW8gdG8gY29udGFpbmVyICovXG4uaGFzLWFzcGVjdC1yYXRpbyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5oYXMtYXNwZWN0LXJhdGlvOjpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi5oYXMtYXNwZWN0LXJhdGlvID4gZGl2IHtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbn1cbi5oYXMtYXNwZWN0LXJhdGlvIGlmcmFtZSB7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi8qKlxuICogQ29udGFpbmVyXG4gKiBHcm91cDogT2JqZWN0c1xuICovXG4uby1jb250YWluZXIge1xuICBtYXgtd2lkdGg6IHZhcigtLW1heC13aWR0aC0tMnhsKTtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctaW5saW5lOiB2YXIoLS1zcGFjaW5nLTEwMCk7XG4gIG1hcmdpbi1pbmxpbmU6IGF1dG87XG4gIC8qIENvbnRhaW5lciBpbnNpZGUgYSBjb250YWluZXIgKi9cbiAgLyogQ29udGFpbmVyIGluc2lkZSBhIGNvbnRhaW5lciBidXQgd2l0aCBmdWxsd2lkdGggY2xhc3MgYmV0d2VlbiB0aGVtICovXG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLm8tY29udGFpbmVyIHtcbiAgICBwYWRkaW5nLWlubGluZTogdmFyKC0tc3BhY2luZy0yMDApO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLm8tY29udGFpbmVyIHtcbiAgICBwYWRkaW5nLWlubGluZTogdmFyKC0tc3BhY2luZy0zMDApO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5vLWNvbnRhaW5lciB7XG4gICAgcGFkZGluZy1pbmxpbmU6IHZhcigtLXNwYWNpbmctNDAwKTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDE0NDBweCkge1xuICAuby1jb250YWluZXIge1xuICAgIHBhZGRpbmctaW5saW5lOiB2YXIoLS1zcGFjaW5nLTUwMCk7XG4gIH1cbn1cbi5vLWNvbnRhaW5lciBbY2xhc3NePW8tY29udGFpbmVyXSxcbi5vLWNvbnRhaW5lciBbY2xhc3MqPVwiIG8tY29udGFpbmVyXCJdIHtcbiAgcGFkZGluZy1pbmxpbmU6IDA7XG59XG4uby1jb250YWluZXIgLnUtZnVsbC13aWR0aCBbY2xhc3NePW8tY29udGFpbmVyXSxcbi5vLWNvbnRhaW5lciAudS1mdWxsLXdpZHRoIFtjbGFzcyo9XCIgby1jb250YWluZXJcIl0ge1xuICBwYWRkaW5nLWlubGluZTogdmFyKC0tc3BhY2luZy0xMDApO1xufVxuXG4vKipcbiAqIENvb2tpZSBEaWFsb2dcbiAqIEdyb3VwOiBPYmplY3RzXG4gKi9cbi5vLWNvb2tpZS1kaWFsb2dfX2NvbnRhaW5lciB7XG4gIGJveC1zaGFkb3c6IHZhcigtLWJveC1zaGFkb3ctbGlnaHQtMDMpO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGJvdHRvbTogdmFyKC0tc3BhY2luZy0xNTApO1xuICBsZWZ0OiAwO1xuICBtYXJnaW4taW5saW5lOiB2YXIoLS1zcGFjaW5nLTE1MCk7XG4gIG1heC13aWR0aDogNDVyZW07XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWxpZ2h0LWdyYXkpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1zcGFjaW5nLTEwMCk7XG4gIGJvcmRlcjogM3B4IHNvbGlkIHZhcigtLWNvbG9yLWJyYW5kLW9yYW5nZSk7XG4gIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctMjAwKTtcbn1cbi5vLWNvb2tpZS1kaWFsb2dfX3RpdGxlIHtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtcHJpbWFyeSk7XG4gIGZvbnQtc2l6ZTogdmFyKC0taDMtZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWgzLWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWgzLWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLTEwMCk7XG59XG4uby1jb29raWUtZGlhbG9nX19kZXNjcmlwdGlvbiB7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctMjAwKTtcbn1cbi5vLWNvb2tpZS1kaWFsb2dfX2J1dHRvbiB7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1tKTtcbiAgYm9yZGVyLXdpZHRoOiB2YXIoLS1idXR0b24tYm9yZGVyLXdpZHRoKTtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LWZvbnQtc2l6ZSk7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC1zdHJldGNoOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxlYWRpbmctbm9uZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS10cmFja2luZy1ub3JtYWwpO1xuICBwYWRkaW5nLWJsb2NrOiB2YXIoLS1zcGFjaW5nLTA3NSk7XG4gIHBhZGRpbmctaW5saW5lOiB2YXIoLS1zcGFjaW5nLTEwMCk7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ib2xkKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLXRyYWNraW5nLW5vcm1hbCk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1sZWFkaW5nLW5vbmUpO1xuICB3aWR0aDogdmFyKC0tc3BhY2luZy0xMjAwKTtcbiAgaGVpZ2h0OiB2YXIoLS1idXR0b24tc2l6ZSk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJ0bi1yYWRpdXMtbGcpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0KTtcbn1cbi5vLWNvb2tpZS1kaWFsb2dfX2J1dHRvbjpob3ZlciwgLm8tY29va2llLWRpYWxvZ19fYnV0dG9uOmFjdGl2ZSwgLm8tY29va2llLWRpYWxvZ19fYnV0dG9uOmZvY3VzIHtcbiAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQsIHRyYW5zZm9ybSB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dCwgb3BhY2l0eSB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dDtcbn1cbi5vLWNvb2tpZS1kaWFsb2dfX2J1dHRvbjpob3ZlcjphY3RpdmUsIC5vLWNvb2tpZS1kaWFsb2dfX2J1dHRvbjphY3RpdmU6YWN0aXZlLCAuby1jb29raWUtZGlhbG9nX19idXR0b246Zm9jdXM6YWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjkpO1xufVxuLm8tY29va2llLWRpYWxvZ19fYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtbGlnaHRlci1ncmF5KTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xufVxuLm8tY29va2llLWRpYWxvZ19fYnV0dG9uOmZvY3VzIHtcbiAgb3V0bGluZS1jb2xvcjogdmFyKC0tY29sb3ItZm9jdXMtc3Ryb2tlKTtcbn1cbi5vLWNvb2tpZS1kaWFsb2dfX2J1dHRvbi1jb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IHZhcigtLXNwYWNpbmctMTUwKTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkge1xuICAuby1jb29raWUtZGlhbG9nX19idXR0b24tY29udGFpbmVyIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGdhcDogdmFyKC0tc3BhY2luZy0yMDApO1xuICB9XG59XG4uby1jb29raWUtZGlhbG9nX19jbG9zZS1idXR0b24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMXJlbTtcbiAgcmlnaHQ6IDFyZW07XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1zbWFsbC1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZCk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS10cmFja2luZy1ub3JtYWwpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGVhZGluZy10aWdodCk7XG4gIHBhZGRpbmctYmxvY2s6IHZhcigtLXNwYWNpbmctMDI1KTtcbiAgcGFkZGluZy1pbmxpbmU6IHZhcigtLXNwYWNpbmctMDc1KTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYnRuLXJhZGl1cy1mdWxsKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLW9yYW5nZSk7XG59XG5cbi8qKlxuICogRHJvcGRvd25cbiAqIEdyb3VwOiBPYmplY3RzXG4gKi9cbi5vLWRyb3Bkb3duIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIGVhc2UtaW4tb3V0IHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pO1xufVxuLm8tZHJvcGRvd25fX2xpc3Qge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMTAwJTtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIHotaW5kZXg6IDU7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLXNlYXJjaC1ncmF5KTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWdyYXkpO1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLWwpO1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1sKTtcbiAgcGFkZGluZy1ibG9jazogdmFyKC0tc3BhY2luZy0wMjUpIHZhcigtLXNwYWNpbmctMTUwKTtcbiAgbWF4LWhlaWdodDogY2xhbXAodmFyKC0tc3BhY2luZy0xMjAwKSwgNDVkdmgsIHZhcigtLXNwYWNpbmctMjQwMCkpO1xuICBvdmVyZmxvdzogYXV0bztcbn1cbi5vLWRyb3Bkb3duX19saXN0LWl0ZW0ge1xuICBib3JkZXItYm90dG9tOiAxcHggZGFzaGVkIHZhcigtLWNvbG9yLWRhcmspO1xuICBwYWRkaW5nLWlubGluZTogdmFyKC0tc3BhY2luZy0xNTApO1xuICBwYWRkaW5nLWJsb2NrOiB2YXIoLS1zcGFjaW5nLTA1MCk7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbi5vLWRyb3Bkb3duX19saXN0LWl0ZW1bYXJpYS1zZWxlY3RlZD10cnVlXSB7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ib2xkKTtcbn1cbi5vLWRyb3Bkb3duX190b2dnbGUtYnV0dG9uIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAzO1xuICBmbGV4OiAxO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGJvcmRlcjogbm9uZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZzogdmFyKC0tc3BhY2luZy0xMDApIHZhcigtLXNwYWNpbmctMTUwKTtcbiAgY29sb3I6IGluaGVyaXQ7XG59XG4uby1kcm9wZG93bl9fZGlzcGxheSB7XG4gIGNvbG9yOiBpbmhlcml0O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cbi5vLWRyb3Bkb3duX19pY29uIHtcbiAgd2lkdGg6IHZhcigtLWljb24tbXMpO1xuICBoZWlnaHQ6IHZhcigtLWljb24teHMpO1xuICBmbGV4OiAwIDAgYXV0bztcbn1cbi5vLWRyb3Bkb3duW2FyaWEtZXhwYW5kZWQ9ZmFsc2VdIC5vLWRyb3Bkb3duX19saXN0IHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5vLWRyb3Bkb3duW2FyaWEtZXhwYW5kZWQ9dHJ1ZV0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1vcmFuZ2UpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItbGlnaHQpO1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcbn1cbi5vLWRyb3Bkb3duW2FyaWEtZXhwYW5kZWQ9dHJ1ZV0gLm8tZHJvcGRvd25fX2xpc3Qge1xuICBhbmltYXRpb246IGZhZGUtaW4gdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbiBmb3J3YXJkcywgc2xpZGUtYm91bmNlLWRvd24gdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1vdXQgZm9yd2FyZHM7XG59XG4uby1kcm9wZG93blthcmlhLWV4cGFuZGVkPXRydWVdIC5vLWRyb3Bkb3duX19pY29uIHtcbiAgYW5pbWF0aW9uOiByb3RhdGUtMTgwIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4gZm9yd2FyZHM7XG59XG4uby1kcm9wZG93bjpmb2N1cy12aXNpYmxlIHtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1mb2N1cy1zdHJva2UpO1xufVxuXG4vKipcbiAqIEZpbHRlcnMgR3JvdXBcbiAqIEdyb3VwOiBPYmplY3RzXG4gKi9cbi5vLWZpbHRlci1ncm91cCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBnYXA6IHZhcigtLXNwYWNpbmctMjAwKTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuby1maWx0ZXItZ3JvdXAge1xuICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTQ0MHB4KSB7XG4gIC5vLWZpbHRlci1ncm91cCB7XG4gICAgcm93LWdhcDogdmFyKC0tc3BhY2luZy0xMDApO1xuICB9XG59XG5cbi8qKlxuICogSWNvbiBHcm91cFxuICogR3JvdXA6IE9iamVjdHNcbiAqL1xuLm8taWNvbi1ncm91cCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IG5vd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IHZhcigtLXNwYWNpbmctMTUwKTtcbn1cblxuLyoqXG4gKiBMaW5rIGJveCBncm91cFxuICogR3JvdXA6IE9iamVjdHNcbiAqL1xuLm8tbGluay1ib3gtZ3JvdXAge1xuICBkaXNwbGF5OiBncmlkO1xuICBnYXA6IHZhcigtLXNwYWNpbmctMjUwKTtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLm8tbGluay1ib3gtZ3JvdXAge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLm8tbGluay1ib3gtZ3JvdXAge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIDFmcik7XG4gIH1cbn1cblxuLyoqXG4gKiBNYWluXG4gKlxuICogR3JvdXA6IE9iamVjdHNcbiAqL1xuLyoqXG4gKiBNb2RhbFxuICogR3JvdXA6IE9iamVjdHNcbiAqL1xuLyoqXG4gKiBQYWdlXG4gKiBHcm91cDogT2JqZWN0c1xuICovXG4uby1wYWdlLS1sYXlvdXQtd2l0aC1zaWRlYmFyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBnYXA6IHZhcigtLXNwYWNpbmctNDAwKTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAuby1wYWdlLS1sYXlvdXQtd2l0aC1zaWRlYmFyIHtcbiAgICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7XG4gIH1cbn1cbi5vLXBhZ2UtLWxheW91dC13aXRoLXNpZGViYXItYW5kLW1hcCB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG4uby1wYWdlX19tYWluIHtcbiAgZmxleDogMTtcbn1cbi5vLXBhZ2VfX21haW4gPiAuby1zZWN0aW9uOmZpcnN0LWNoaWxkIHtcbiAgcGFkZGluZy10b3A6IDA7XG59XG4uby1wYWdlX19zaWRlYmFyIHtcbiAgZmxleDogMSAwIGF1dG87XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWF4LXdpZHRoOiB2YXIoLS1tYXgtd2lkdGgtLTR4cyk7XG4gIG1hcmdpbi1pbmxpbmU6IGF1dG87XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLm8tcGFnZV9fc2lkZWJhciB7XG4gICAgbWFyZ2luLWlubGluZTogaW5pdGlhbDtcbiAgfVxufVxuXG4vKipcbiAqIFNlY3Rpb25cbiAqIEdyb3VwOiBPYmplY3RzXG4gKi9cbi5vLXNlY3Rpb24ge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctYmxvY2s6IHZhcigtLXNwYWNpbmctNDAwKTtcbn1cbi8qKlxuICogQkxPQ0tTIE1BSU4gRklMRVxuICovXG4vKipcbiAqIEFsZXJ0XG4gKiBHcm91cDogQ29tcG9uZW50c1xuICovXG4uYy1hbGVydC0tbGF5b3V0IHtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zKTtcbiAgcGFkZGluZzogdmFyKC0tc3BhY2luZy0xNTApO1xufVxuLmMtYWxlcnQtLWluZm8ge1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZS1saWdodCk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUtbGlnaHQtc2VtaS10cmFuc3BhcmVudCk7XG59XG4uYy1hbGVydC0tc3VjY2VzcyB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1hbGVydC1ncmVlbi1kYXJrKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtZ3JlZW4pO1xufVxuLmMtYWxlcnQtLXdhcm5pbmcge1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYnJvd24pO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1icm93bi1zZW1pLXRyYW5zcGFyZW50KTtcbn1cbi5jLWFsZXJ0LS1kYW5nZXIge1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtZGFyay1yZWQpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1yZWQtc2VtaS10cmFuc3BhcmVudCk7XG59XG4uYy1hbGVydC0tc2xpZGUtdXAge1xuICBhbmltYXRpb246IHNsaWRlLXVwIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UgZm9yd2FyZHM7XG59XG4uYy1hbGVydC0tZmFkZS1vdXQge1xuICBhbmltYXRpb246IGZhZGUtb3V0IHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24tbWVkaXVtKSBlYXNlIGZvcndhcmRzO1xufVxuLmMtYWxlcnRfX3RpdGxlIHtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtcHJpbWFyeSk7XG4gIGZvbnQtc2l6ZTogdmFyKC0taDMtZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWgzLWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWgzLWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLTA1MCk7XG59XG4uYy1hbGVydF9fdGV4dCB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tYm9keS1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xufVxuXG4vKipcbiAqIEJyZWFkY3J1bWJcbiAqIEdyb3VwOiBDb21wb25lbnRzXG4gKi9cbi5jLWJyZWFkY3J1bWJfX2xpc3Qge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IHZhcigtLXNwYWNpbmctMDUwKTtcbn1cbi5jLWJyZWFkY3J1bWJfX2l0ZW0ge1xuICBmb250LXNpemU6IHZhcigtLWJvZHktc21hbGwtZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWJvZHktc21hbGwtbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tYm9keS1zbWFsbC1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBnYXA6IHZhcigtLXNwYWNpbmctMDUwKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWxpZ2h0LWdyYXkpO1xufVxuLmMtYnJlYWRjcnVtYl9faXRlbS1saW5rIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG4uYy1icmVhZGNydW1iX19pdGVtLWxpbms6aG92ZXIge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cbi5jLWJyZWFkY3J1bWJfX2l0ZW1bYXJpYS1jdXJyZW50PXBhZ2VdIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLW9yYW5nZSk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ib2xkKTtcbn1cbi5jLWJyZWFkY3J1bWJfX3NwYWNlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtbGlnaHQtZ3JheSk7XG59XG5cbi8qKlxuICogQ29udGFjdFxuICogR3JvdXA6IENvbXBvbmVudHNcbiAqL1xuLmMtY29udGFjdCAuby1zZWN0aW9uLFxuLmMtY29udGFjdCAuYy1hbGVydCB7XG4gIHBhZGRpbmctYmxvY2s6IDAgdmFyKC0tc3BhY2luZy0yMDApO1xufVxuLmMtY29udGFjdC0tbGF5b3V0IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlO1xuICBnYXA6IHZhcigtLXNwYWNpbmctNDAwKTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAuYy1jb250YWN0LS1sYXlvdXQge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgZ2FwOiB2YXIoLS1zcGFjaW5nLTIwMCk7XG4gIH1cbn1cbi5jLWNvbnRhY3RfX21hcC1jb250YWluZXIge1xuICBmbGV4OiAxO1xufVxuLmMtY29udGFjdF9fZm9ybS1jb250YWluZXIge1xuICBmbGV4OiAxO1xufVxuLmMtY29udGFjdF9fZm9ybS1jb250YWluZXIgLmZpZWxkLXZhbGlkYXRpb24tZXJyb3Ige1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBoZWlnaHQ6IHZhcigtLXNwYWNpbmctMzAwKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWRhcmstcmVkKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWJvZHktbGluZS1oZWlnaHQpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1yZWQtc2VtaS10cmFuc3BhcmVudCk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtbCk7XG4gIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctMTAwKTtcbiAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2luZy0wNTApO1xufVxuLmMtY29udGFjdF9fZm9ybS1jb250YWluZXIgLnVtYnJhY28tZm9ybXMtZmllbGRzZXQge1xuICBjb2xvcjogdmFyKC0tY29sb3ItbGlnaHQpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tc3BhY2luZy0xNTApO1xuICBib3JkZXI6IG5vbmU7XG4gIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctMTUwKTtcbn1cbi5jLWNvbnRhY3RfX2Zvcm0tY29udGFpbmVyIC51bWJyYWNvLWZvcm1zLWZpZWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy0xMDApO1xufVxuLmMtY29udGFjdF9fZm9ybS1jb250YWluZXIgLnVtYnJhY28tZm9ybXMtbGFiZWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmctbGVmdDogdmFyKC0tc3BhY2luZy0wNzUpO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLTA1MCk7XG59XG4uYy1jb250YWN0X19mb3JtLWNvbnRhaW5lciBpbnB1dCxcbi5jLWNvbnRhY3RfX2Zvcm0tY29udGFpbmVyIHRleHRhcmVhIHtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ib2xkKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLXRyYWNraW5nLW5vcm1hbCk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1sZWFkaW5nLW5vbmUpO1xuICB3aWR0aDogdmFyKC0tc3BhY2luZy0xMjAwKTtcbiAgaGVpZ2h0OiB2YXIoLS1idXR0b24tc2l6ZSk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJ0bi1yYWRpdXMtbGcpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXhzKTtcbiAgYm9yZGVyOiBub25lO1xuICBmb250LXNpemU6IHZhcigtLWJvZHktZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tYm9keS1saW5lLWhlaWdodCk7XG4gIHRleHQtaW5kZW50OiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1zZWFyY2gtZ3JheSk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtbCk7XG4gIGhlaWdodDogdmFyKC0tc3BhY2luZy0zMDApO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctMTAwKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiB2YXIoLS1zcGFjaW5nLTM1MCk7XG59XG4uYy1jb250YWN0X19mb3JtLWNvbnRhaW5lciBpbnB1dDpob3ZlciwgLmMtY29udGFjdF9fZm9ybS1jb250YWluZXIgaW5wdXQ6YWN0aXZlLCAuYy1jb250YWN0X19mb3JtLWNvbnRhaW5lciBpbnB1dDpmb2N1cyxcbi5jLWNvbnRhY3RfX2Zvcm0tY29udGFpbmVyIHRleHRhcmVhOmhvdmVyLFxuLmMtY29udGFjdF9fZm9ybS1jb250YWluZXIgdGV4dGFyZWE6YWN0aXZlLFxuLmMtY29udGFjdF9fZm9ybS1jb250YWluZXIgdGV4dGFyZWE6Zm9jdXMge1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0O1xufVxuLmMtY29udGFjdF9fZm9ybS1jb250YWluZXIgaW5wdXQ6aG92ZXIsXG4uYy1jb250YWN0X19mb3JtLWNvbnRhaW5lciB0ZXh0YXJlYTpob3ZlciB7XG4gIGJveC1zaGFkb3c6IHZhcigtLWJveC1zaGFkb3ctbGlnaHQtMDMpO1xufVxuLmMtY29udGFjdF9fZm9ybS1jb250YWluZXIgaW5wdXQgaW5wdXQsXG4uYy1jb250YWN0X19mb3JtLWNvbnRhaW5lciB0ZXh0YXJlYSBpbnB1dCB7XG4gIGhlaWdodDogdmFyKC0taW5wdXQtaGVpZ2h0LW1lZGl1bSk7XG4gIGNvbG9yOiBpbmhlcml0O1xuICB3aWR0aDogMTAwJTtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1ib2R5LWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWJvZHktbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG59XG4uYy1jb250YWN0X19mb3JtLWNvbnRhaW5lciBpbnB1dCBpbnB1dDo6cGxhY2Vob2xkZXIsXG4uYy1jb250YWN0X19mb3JtLWNvbnRhaW5lciB0ZXh0YXJlYSBpbnB1dDo6cGxhY2Vob2xkZXIge1xuICBmb250LXNpemU6IHZhcigtLWJvZHktZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWJvZHktbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tYm9keS1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xufVxuLmMtY29udGFjdF9fZm9ybS1jb250YWluZXIgaW5wdXQgaW5wdXQ6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIsXG4uYy1jb250YWN0X19mb3JtLWNvbnRhaW5lciB0ZXh0YXJlYSBpbnB1dDo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tYm9keS1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG59XG4uYy1jb250YWN0X19mb3JtLWNvbnRhaW5lciBpbnB1dCBpbnB1dDo6LW1vei1wbGFjZWhvbGRlcixcbi5jLWNvbnRhY3RfX2Zvcm0tY29udGFpbmVyIHRleHRhcmVhIGlucHV0OjotbW96LXBsYWNlaG9sZGVyIHtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1ib2R5LWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWJvZHktbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcbiAgb3BhY2l0eTogMTtcbn1cbi5jLWNvbnRhY3RfX2Zvcm0tY29udGFpbmVyIGlucHV0IGlucHV0Oi1tcy1pbnB1dC1wbGFjZWhvbGRlcixcbi5jLWNvbnRhY3RfX2Zvcm0tY29udGFpbmVyIHRleHRhcmVhIGlucHV0Oi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tYm9keS1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG59XG4uYy1jb250YWN0X19mb3JtLWNvbnRhaW5lciBpbnB1dCBpbnB1dDpmb2N1cyxcbi5jLWNvbnRhY3RfX2Zvcm0tY29udGFpbmVyIHRleHRhcmVhIGlucHV0OmZvY3VzIHtcbiAgb3V0bGluZTogMnB4IHNvbGlkIHZhcigtLWNvbG9yLWZvY3VzLXN0cm9rZSk7XG4gIG91dGxpbmUtb2Zmc2V0OiAxcHg7XG59XG4uYy1jb250YWN0X19mb3JtLWNvbnRhaW5lciB0ZXh0YXJlYSB7XG4gIGhlaWdodDogdmFyKC0tc3BhY2luZy0xMDAwKTtcbn1cbi5jLWNvbnRhY3RfX2Zvcm0tY29udGFpbmVyIGlucHV0W3R5cGU9c3VibWl0XSB7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1tKTtcbiAgYm9yZGVyLXdpZHRoOiB2YXIoLS1idXR0b24tYm9yZGVyLXdpZHRoKTtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LWZvbnQtc2l6ZSk7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC1zdHJldGNoOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxlYWRpbmctbm9uZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS10cmFja2luZy1ub3JtYWwpO1xuICBwYWRkaW5nLWJsb2NrOiB2YXIoLS1zcGFjaW5nLTA3NSk7XG4gIHBhZGRpbmctaW5saW5lOiB2YXIoLS1zcGFjaW5nLTEwMCk7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ib2xkKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLXRyYWNraW5nLW5vcm1hbCk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1sZWFkaW5nLW5vbmUpO1xuICB3aWR0aDogdmFyKC0tc3BhY2luZy0xMjAwKTtcbiAgaGVpZ2h0OiB2YXIoLS1idXR0b24tc2l6ZSk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJ0bi1yYWRpdXMtbGcpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1vcmFuZ2UpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLW9yYW5nZSk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1kYXJrLWdyYXkpO1xuICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjaW5nLTE1MCk7XG59XG4uYy1jb250YWN0X19mb3JtLWNvbnRhaW5lciBpbnB1dFt0eXBlPXN1Ym1pdF06aG92ZXIsIC5jLWNvbnRhY3RfX2Zvcm0tY29udGFpbmVyIGlucHV0W3R5cGU9c3VibWl0XTphY3RpdmUsIC5jLWNvbnRhY3RfX2Zvcm0tY29udGFpbmVyIGlucHV0W3R5cGU9c3VibWl0XTpmb2N1cyB7XG4gIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0LCB0cmFuc2Zvcm0gdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQsIG9wYWNpdHkgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQ7XG59XG4uYy1jb250YWN0X19mb3JtLWNvbnRhaW5lciBpbnB1dFt0eXBlPXN1Ym1pdF06aG92ZXI6YWN0aXZlLCAuYy1jb250YWN0X19mb3JtLWNvbnRhaW5lciBpbnB1dFt0eXBlPXN1Ym1pdF06YWN0aXZlOmFjdGl2ZSwgLmMtY29udGFjdF9fZm9ybS1jb250YWluZXIgaW5wdXRbdHlwZT1zdWJtaXRdOmZvY3VzOmFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMC45KTtcbn1cbi5jLWNvbnRhY3RfX2Zvcm0tY29udGFpbmVyIGlucHV0W3R5cGU9c3VibWl0XTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWxpZ2h0LWdyYXkpO1xufVxuLmMtY29udGFjdF9fZm9ybS1jb250YWluZXIgaW5wdXRbdHlwZT1zdWJtaXRdOmZvY3VzIHtcbiAgb3V0bGluZS1jb2xvcjogdmFyKC0tY29sb3ItZm9jdXMtc3Ryb2tlKTtcbn1cbi5jLWNvbnRhY3RfX2Zvcm0tY29udGFpbmVyIHNlbGVjdCB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IHZhcigtLXNwYWNpbmctMzUwKTtcbn1cbi5jLWNvbnRhY3RfX2Zvcm0tY29udGFpbmVyIC51bWJyYWNvLWZvcm1zLWhpZGRlbiB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qKlxuICogRG9jdW1lbnRhdGlvbiBsaXN0aW5nXG4gKiBHcm91cDogQ29tcG9uZW50c1xuICovXG4uYy1kb2N1bWVudC1saXN0aW5nX19pdGVtIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IHZhcigtLXNwYWNpbmctMDc1KTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJyYW5kLW9yYW5nZSk7XG4gIHBhZGRpbmctYmxvY2s6IHZhcigtLXNwYWNpbmctMjAwKTtcbiAgcGFkZGluZy1pbmxpbmU6IHZhcigtLXNwYWNpbmctMTI1KTtcbn1cbi5jLWRvY3VtZW50LWxpc3RpbmdfX2l0ZW06aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1saWdodGVyLWdyYXkpO1xufVxuLmMtZG9jdW1lbnQtbGlzdGluZ19faXRlbS10aXRsZSB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LXByaW1hcnkpO1xuICBmb250LXNpemU6IHZhcigtLWg2LWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1oNi1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1oNi1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ib2xkKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG4gIHBhZGRpbmctYmxvY2s6IHZhcigtLXNwYWNpbmctMjAwKTtcbiAgcGFkZGluZy1pbmxpbmU6IHZhcigtLXNwYWNpbmctMDUwKTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJyYW5kLW9yYW5nZSk7XG59XG4uYy1kb2N1bWVudC1saXN0aW5nX19pdGVtLWxpbmsge1xuICBkaXNwbGF5OiBibG9jaztcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuLmMtZG9jdW1lbnQtbGlzdGluZ19faXRlbS1saW5rOmhvdmVyIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLW9yYW5nZSk7XG59XG5cbi8qKlxuICogRmlsdGVyXG4gKiBHcm91cDogQ29tcG9uZW50c1xuICovXG4uYy1maWx0ZXItLWxheW91dCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG4gIHBhZGRpbmctYmxvY2s6IHZhcigtLXNwYWNpbmctNDAwKSB2YXIoLS1zcGFjaW5nLTMwMCk7XG4gIHBhZGRpbmctaW5saW5lOiB2YXIoLS1zcGFjaW5nLTEwMCk7XG59XG4uYy1maWx0ZXJfX2NvbnRhaW5lciB7XG4gIG1heC13aWR0aDogdmFyKC0tbWF4LXdpZHRoLS1tZCk7XG4gIG1hcmdpbi1pbmxpbmU6IGF1dG87XG59XG4uYy1maWx0ZXJfX3RpdGxlIHtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtcHJpbWFyeSk7XG4gIGZvbnQtc2l6ZTogdmFyKC0taDItZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWgyLWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWgyLWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLTE1MCk7XG59XG4uYy1maWx0ZXIgLmMtYWxlcnQge1xuICBtYXgtd2lkdGg6IHZhcigtLW1heC13aWR0aC0tbWQpO1xuICBtYXJnaW4taW5saW5lOiBhdXRvO1xuICBtYXJnaW4tYmxvY2s6IHZhcigtLXNwYWNpbmctMjUwKSAwO1xufVxuXG4vKipcbiAqIEZvb3RlclxuICogR3JvdXA6IENvbXBvbmVudHNcbiAqL1xuLmMtZm9vdGVyIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLXdoaXRlKTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tdG9wOiBhdXRvO1xufVxuLmMtZm9vdGVyX19tYWluIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG59XG4uYy1mb290ZXJfX21haW4taW5uZXIge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgxLCAxZnIpO1xuICBnYXA6IDNyZW07XG4gIHBhZGRpbmctYmxvY2s6IHZhcigtLXNwYWNpbmctNTAwKTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkge1xuICAuYy1mb290ZXJfX21haW4taW5uZXIge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7XG4gICAgZ2FwOiA0cmVtO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLmMtZm9vdGVyX19tYWluLWlubmVyIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg0LCAxZnIpO1xuICAgIGdhcDogNHJlbTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDE0NDBweCkge1xuICAuYy1mb290ZXJfX21haW4taW5uZXIge1xuICAgIGdhcDogMTByZW07XG4gIH1cbn1cbi5jLWZvb3Rlcl9fbG9nby10ZXh0IHtcbiAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2luZy0xNTApO1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtbGlnaHQtZ3JheSk7XG59XG4uYy1mb290ZXJfX2NvbHVtbi10aXRsZSB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tYm9keS1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLTA3NSk7XG59XG4uYy1mb290ZXJfX2NvbHVtbi1saW5rIHtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LXNtYWxsLWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1ib2R5LXNtYWxsLWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWJvZHktc21hbGwtbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbi5jLWZvb3Rlcl9fY29sdW1uLWxpbms6aG92ZXIge1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtb3JhbmdlKTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxNDQwcHgpIHtcbiAgLmMtZm9vdGVyX19jb2x1bW46Zmlyc3QtY2hpbGQge1xuICAgIG1heC13aWR0aDogMTYwcHg7XG4gIH1cbn1cbi5jLWZvb3Rlcl9fYm90dG9tX19sb2dvcy1jb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBnYXA6IDFyZW07XG4gIHBhZGRpbmctYmxvY2s6IHZhcigtLXNwYWNpbmctMDc1KTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuYy1mb290ZXJfX2JvdHRvbV9fbG9nb3MtY29udGFpbmVyIHtcbiAgICBnYXA6IDJyZW07XG4gIH1cbn1cbi5jLWZvb3Rlcl9fYm90dG9tX19sb2dvIHtcbiAgaGVpZ2h0OiB2YXIoLS1zcGFjaW5nLTMwMCk7XG59XG4uYy1mb290ZXJfX2JvdHRvbV9fbG9nbyBwaWN0dXJlLFxuLmMtZm9vdGVyX19ib3R0b21fX2xvZ28gaW1nIHtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuLmMtZm9vdGVyX19ib3R0b21fX2NvcHlyaWdodCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItbGlnaHQpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmctYmxvY2s6IHZhcigtLXNwYWNpbmctMTI1KTtcbn1cbi5jLWZvb3Rlcl9fYm90dG9tX19jb3B5cmlnaHQtdGV4dCB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tYm9keS1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xufVxuXG4vKipcbiAqIEhlYWRlciBNYWluXG4gKiBHcm91cDogQ3VzdG9tIENvbXBvbmVudHNcbiAqL1xuLmMtaGVhZGVyIHtcbiAgZmxleDogMCAwIGF1dG87XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIHotaW5kZXg6IDEwO1xuICAvKlxuICAgKiBIZWFkZXIgUGFydHNcbiAgICovXG4gIC8qIEJyYW5kaW5nICovXG4gIC8qXG4gICAqIFNlYXJjaCBjb250YWluZXIgaW4gbWFpbiB3aXRoIHRvZ2dsZSBidXR0b25zXG4gICAqL1xuICAvKlxuICAgKiBNYWluIG1lbnUgdG9nZ2xlIHBhcnRzXG4gICAqL1xufVxuLmMtaGVhZGVyX190b3AtYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG59XG4uYy1oZWFkZXJfX3RvcC1iYXItaW5uZXIge1xuICBoZWlnaHQ6IHZhcigtLWhlYWRlci10b3AtYmFyLWhlaWdodCk7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0KTtcbn1cbi5jLWhlYWRlcl9fdG9wLWJhci1pbm5lciAuc2VhcmNoIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAuYy1oZWFkZXJfX3RvcC1iYXItaW5uZXIgLnNlYXJjaCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5jLWhlYWRlcl9fdG9wLWJhci1pbm5lciAuc29jaWFsLWxpbmtzIHtcbiAgICBnYXA6IHZhcigtLXNwYWNpbmctMzAwKTtcbiAgfVxufVxuLmMtaGVhZGVyX19tYWluIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLmMtaGVhZGVyX19tYWluLWlubmVyIHtcbiAgaGVpZ2h0OiB2YXIoLS1oZWFkZXItbWFpbi1iYXItaGVpZ2h0KTtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cbi5jLWhlYWRlcl9fbWFpbi1pbm5lciA+IDpudGgtY2hpbGQoMikge1xuICBtYXJnaW4tbGVmdDogYXV0bztcbn1cbi5jLWhlYWRlcl9fbG9nbyB7XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbn1cbi5jLWhlYWRlcl9fc2VhcmNoLWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLmMtaGVhZGVyX19zZWFyY2gtY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG4uYy1oZWFkZXJfX3RvZ2dsZS1idXJnZXItaWNvbiwgLmMtaGVhZGVyX190b2dnbGUtY2xvc2UtaWNvbiB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHdpZHRoOiB2YXIoLS1pY29uLXNtKTtcbiAgaGVpZ2h0OiB2YXIoLS1pY29uLXNtKTtcbn1cbi5jLWhlYWRlcl9fdG9nZ2xlLW1lbnUge1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtbSk7XG4gIGJvcmRlci13aWR0aDogdmFyKC0tYnV0dG9uLWJvcmRlci13aWR0aCk7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1mb250LXNpemUpO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtc3RyZXRjaDogbm9ybWFsO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1sZWFkaW5nLW5vbmUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tdHJhY2tpbmctbm9ybWFsKTtcbiAgcGFkZGluZy1ibG9jazogdmFyKC0tc3BhY2luZy0wNzUpO1xuICBwYWRkaW5nLWlubGluZTogdmFyKC0tc3BhY2luZy0xMDApO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1zbWFsbC1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS10cmFja2luZy1ub3JtYWwpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGVhZGluZy1ub25lKTtcbiAgcGFkZGluZy1ibG9jazogdmFyKC0tc3BhY2luZy0wMjUpO1xuICBwYWRkaW5nLWlubGluZTogdmFyKC0tc3BhY2luZy0wNzUpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1idG4tcmFkaXVzKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xufVxuLmMtaGVhZGVyX190b2dnbGUtbWVudTpob3ZlciwgLmMtaGVhZGVyX190b2dnbGUtbWVudTphY3RpdmUsIC5jLWhlYWRlcl9fdG9nZ2xlLW1lbnU6Zm9jdXMge1xuICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dCwgdHJhbnNmb3JtIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0LCBvcGFjaXR5IHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0O1xufVxuLmMtaGVhZGVyX190b2dnbGUtbWVudTpob3ZlcjphY3RpdmUsIC5jLWhlYWRlcl9fdG9nZ2xlLW1lbnU6YWN0aXZlOmFjdGl2ZSwgLmMtaGVhZGVyX190b2dnbGUtbWVudTpmb2N1czphY3RpdmUge1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuOSk7XG59XG4uYy1oZWFkZXJfX3RvZ2dsZS1tZW51OmhvdmVyIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLW9yYW5nZSk7XG59XG4uYy1oZWFkZXJfX3RvZ2dsZS1tZW51W2FyaWEtZXhwYW5kZWQ9dHJ1ZV0gLmMtaGVhZGVyX190b2dnbGUtY2xvc2UtaWNvbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBhbmltYXRpb246IGZhZGUtaW4gdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbiBmb3J3YXJkcztcbn1cbi5jLWhlYWRlcl9fdG9nZ2xlLW1lbnVbYXJpYS1leHBhbmRlZD10cnVlXSAuYy1oZWFkZXJfX3RvZ2dsZS1idXJnZXItaWNvbiB7XG4gIGFuaW1hdGlvbjogZmFkZS1vdXQgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbiBmb3J3YXJkcztcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAuYy1oZWFkZXJfX3RvZ2dsZS1tZW51W2FyaWEtZXhwYW5kZWQ9dHJ1ZV0ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbi5jLWhlYWRlcl9fdG9nZ2xlLW1lbnVbYXJpYS1leHBhbmRlZD1mYWxzZV0gLmMtaGVhZGVyX190b2dnbGUtYnVyZ2VyLWljb24ge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAuYy1oZWFkZXJfX3RvZ2dsZS1tZW51W2FyaWEtZXhwYW5kZWQ9ZmFsc2VdIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG4uYy1oZWFkZXJfX2NvbnRlbnQtd3JhcHBlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgaW5zZXQ6IHZhcigtLWhlYWRlci1oZWlnaHQpIDAgMCAwO1xuICB6LWluZGV4OiAxMDtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgaGVpZ2h0OiBjYWxjKDEwMGR2aCAtIHZhcigtLWhlYWRlci1oZWlnaHQpKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1saWdodCk7XG4gIHdpZHRoOiAxMDAlO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5jLWhlYWRlcl9fY29udGVudC13cmFwcGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgaW5zZXQ6IHVuc2V0O1xuICAgIG92ZXJmbG93LXk6IHZpc2libGU7XG4gICAgei1pbmRleDogaW5oZXJpdDtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgd2lkdGg6IGF1dG87XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgcGFkZGluZzogMDtcbiAgfVxufVxuLmMtaGVhZGVyX19jb250ZW50LXdyYXBwZXJbZGF0YS1leHBhbmRlZD10cnVlXSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBhbmltYXRpb246IGZhZGUtaW4gdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbiBmb3J3YXJkcztcbn1cblxuLyoqXG4gKiBJbWFnZSBMaW5rc1xuICogR3JvdXA6IENvbXBvbmVudHNcbiAqL1xuLmMtaW1hZ2UtbGlua3NfX3dyYXBwZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBnYXA6IHZhcigtLXNwYWNpbmctMjAwKSB2YXIoLS1zcGFjaW5nLTEwMCk7XG59XG4uYy1pbWFnZS1saW5rc19fbGluayB7XG4gIGhlaWdodDogdmFyKC0tc3BhY2luZy03MDApO1xufVxuXG4vKipcbiAqIFRleHQgYW5kIEltYWdlXG4gKiBHcm91cDogQ29tcG9uZW50c1xuICogVmlld3M6IFNlY3Rpb24gSW1hZ2UgQW5kIFRleHQgQmxvY2tcbiAqL1xuLmMtaW1hZ2UtdGV4dCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5jLWltYWdlLXRleHQtLWxheW91dCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogY29sdW1uIG5vd3JhcDtcbiAgZ2FwOiB2YXIoLS1zcGFjaW5nLTE1MCk7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmMtaW1hZ2UtdGV4dC0tbGF5b3V0IHtcbiAgICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7XG4gICAgZ2FwOiB2YXIoLS1zcGFjaW5nLTIwMCk7XG4gIH1cbn1cbi5jLWltYWdlLXRleHQtLXJldmVyc2VkIHtcbiAgZmxleC1mbG93OiBjb2x1bW4gbm93cmFwO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jLWltYWdlLXRleHQtLXJldmVyc2VkIHtcbiAgICBmbGV4LWZsb3c6IHJvdy1yZXZlcnNlIG5vd3JhcDtcbiAgfVxufVxuLmMtaW1hZ2UtdGV4dF9faW1hZ2Utd3JhcCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jLWltYWdlLXRleHRfX2ltYWdlLXdyYXAge1xuICAgIGZsZXg6IDE7XG4gIH1cbn1cbi5jLWltYWdlLXRleHRfX3RleHQtd3JhcCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jLWltYWdlLXRleHRfX3RleHQtd3JhcCB7XG4gICAgZmxleDogMTtcbiAgfVxufVxuLmMtaW1hZ2UtdGV4dF9fZXllYnJvdyB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1zbWFsbC1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tYm9keS1zbWFsbC1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LXNtYWxsLWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtb3JhbmdlKTtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy0wNzUpO1xufVxuLmMtaW1hZ2UtdGV4dF9fdGl0bGUge1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1wcmltYXJ5KTtcbiAgZm9udC1zaXplOiB2YXIoLS1oMy1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0taDMtbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0taDMtbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctMTAwKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWRhcmstZ3JheSk7XG59XG4uYy1pbWFnZS10ZXh0X190ZXh0IHtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1ib2R5LWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWJvZHktbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ncmF5KTtcbn1cblxuLyoqXG4gKiBMaW5rIGJveFxuICogR3JvdXA6IENvbXBvbmVudHNcbiAqL1xuLmMtbGluay1ib3gtLWxheW91dCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IHZhcigtLXNwYWNpbmctMTUwKTtcbiAgcGFkZGluZzogdmFyKC0tc3BhY2luZy0yMDApIHZhcigtLXNwYWNpbmctMTUwKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG4gIGJvcmRlcjogMnB4IHNvbGlkIHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLW0pO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGhlaWdodDogMTAwJTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dCwgY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQ7XG59XG4uYy1saW5rLWJveC0tbGF5b3V0OmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcbn1cbi5jLWxpbmstYm94LS1sYXlvdXQ6aG92ZXIgLmMtbGluay1ib3hfX2ljb24ge1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG59XG4uYy1saW5rLWJveC0tbGF5b3V0OmhvdmVyIC5jLWxpbmstYm94X19pY29uLS13cmFwcGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG59XG4uYy1saW5rLWJveF9fY29udGVudF9fdGl0bGUge1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1wcmltYXJ5KTtcbiAgZm9udC1zaXplOiB2YXIoLS1oNS1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0taDUtbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0taDUtbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIGNvbG9yOiBpbmhlcml0O1xufVxuLmMtbGluay1ib3hfX2NvbnRlbnRfX2Rlc2NyaXB0aW9uIHtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LXNtYWxsLWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1ib2R5LXNtYWxsLWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWJvZHktc21hbGwtbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmctMDI1KTtcbiAgY29sb3I6IGluaGVyaXQ7XG59XG4uYy1saW5rLWJveF9faWNvbiB7XG4gIHdpZHRoOiB2YXIoLS1pY29uLXNtKTtcbiAgbWF4LWhlaWdodDogdmFyKC0taWNvbi1zbSk7XG4gIGhlaWdodDogYXV0bztcbiAgY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0KTtcbiAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQ7XG59XG4uYy1saW5rLWJveF9faWNvbi0td3JhcHBlciB7XG4gIGZsZXg6IG5vbmU7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIHBsYWNlLWl0ZW1zOiBjZW50ZXI7XG4gIHdpZHRoOiB2YXIoLS1pY29uLXhsKTtcbiAgaGVpZ2h0OiB2YXIoLS1pY29uLXhsKTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBib3JkZXI6IDJweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1mdWxsKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZS1zZW1pLXRyYW5zcGFyZW50KTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dCwgYm9yZGVyIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0O1xufVxuXG4vKipcbiAqIEludHJvIEJhbm5lclxuICogR3JvdXA6IENvbXBvbmVudHNcbiAqL1xuLmMtaW50cm8tYmFubmVyLS1sYXlvdXQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtaGVpZ2h0OiB2YXIoLS1tYXgtaGVpZ2h0LWludHJvLWJhbm5lcik7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGFzcGVjdC1yYXRpbzogNC8zO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSB7XG4gIC5jLWludHJvLWJhbm5lci0tbGF5b3V0IHtcbiAgICBhc3BlY3QtcmF0aW86IDM2LzE3O1xuICB9XG59XG4uYy1pbnRyby1iYW5uZXJfX2ltYWdlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG59XG4uYy1pbnRyby1iYW5uZXJfX2ltYWdlLXdyYXAge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGluc2V0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBtYXgtaGVpZ2h0OiAxMDAlO1xuICB6LWluZGV4OiAtMTtcbn1cbi5jLWludHJvLWJhbm5lcl9faW1hZ2Utd3JhcDo6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGluc2V0OiAwO1xuICB6LWluZGV4OiAwO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tb3ZlcmxheS1jb2xvci1saWdodCk7XG59XG4uYy1pbnRyby1iYW5uZXJfX2ltYWdlLXdyYXAgcGljdHVyZSB7XG4gIGhlaWdodDogMTAwJTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkge1xuICAuYy1pbnRyby1iYW5uZXJfX2ltYWdlLXdyYXAgcGljdHVyZSB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG59XG4uYy1pbnRyby1iYW5uZXJfX3RleHQtd3JhcCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGdhcDogdmFyKC0tc3BhY2luZy0xNTApO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSB7XG4gIC5jLWludHJvLWJhbm5lcl9fdGV4dC13cmFwIHtcbiAgICBnYXA6IHZhcigtLXNwYWNpbmctMjUwKTtcbiAgfVxufVxuLmMtaW50cm8tYmFubmVyX190aXRsZSB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LXByaW1hcnkpO1xuICBmb250LXNpemU6IHZhcigtLWgyLWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1oMi1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1oMi1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ib2xkKTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjb2xvcjogdmFyKC0tY29sb3ItbGlnaHQpO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jLWludHJvLWJhbm5lcl9fdGl0bGUge1xuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LXByaW1hcnkpO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0taDEtZm9udC1zaXplKTtcbiAgICBsZXR0ZXItc3BhY2luZzogdmFyKC0taDEtbGV0dGVyLXNwYWNpbmcpO1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1oMS1saW5lLWhlaWdodCk7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xuICB9XG59XG4uYy1pbnRyby1iYW5uZXJfX3N1YnRpdGxlIHtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtcHJpbWFyeSk7XG4gIGZvbnQtc2l6ZTogdmFyKC0taDMtZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWgzLWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWgzLWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1saWdodCk7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmMtaW50cm8tYmFubmVyX19zdWJ0aXRsZSB7XG4gICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtcHJpbWFyeSk7XG4gICAgZm9udC1zaXplOiB2YXIoLS1oMS1mb250LXNpemUpO1xuICAgIGxldHRlci1zcGFjaW5nOiB2YXIoLS1oMS1sZXR0ZXItc3BhY2luZyk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWgxLWxpbmUtaGVpZ2h0KTtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZCk7XG4gIH1cbn1cbi5jLWludHJvLWJhbm5lcl9fYnV0dG9ucy1ncm91cCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBnYXA6IHZhcigtLXNwYWNpbmctMTAwKTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkge1xuICAuYy1pbnRyby1iYW5uZXJfX2J1dHRvbnMtZ3JvdXAge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIH1cbn1cbi5jLWludHJvLWJhbm5lcl9fYnV0dG9uIHtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLW0pO1xuICBib3JkZXItd2lkdGg6IHZhcigtLWJ1dHRvbi1ib3JkZXItd2lkdGgpO1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICBmb250LXNpemU6IHZhcigtLWJvZHktZm9udC1zaXplKTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXN0cmV0Y2g6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGVhZGluZy1ub25lKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLXRyYWNraW5nLW5vcm1hbCk7XG4gIHBhZGRpbmctYmxvY2s6IHZhcigtLXNwYWNpbmctMDc1KTtcbiAgcGFkZGluZy1pbmxpbmU6IHZhcigtLXNwYWNpbmctMTAwKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBmb250LXNpemU6IHZhcigtLWJvZHktZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tdHJhY2tpbmctbm9ybWFsKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxlYWRpbmctbm9uZSk7XG4gIHdpZHRoOiB2YXIoLS1zcGFjaW5nLTEyMDApO1xuICBoZWlnaHQ6IHZhcigtLWJ1dHRvbi1zaXplKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYnRuLXJhZGl1cy1sZyk7XG59XG4uYy1pbnRyby1iYW5uZXJfX2J1dHRvbjpob3ZlciwgLmMtaW50cm8tYmFubmVyX19idXR0b246YWN0aXZlLCAuYy1pbnRyby1iYW5uZXJfX2J1dHRvbjpmb2N1cyB7XG4gIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0LCB0cmFuc2Zvcm0gdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQsIG9wYWNpdHkgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQ7XG59XG4uYy1pbnRyby1iYW5uZXJfX2J1dHRvbjpob3ZlcjphY3RpdmUsIC5jLWludHJvLWJhbm5lcl9fYnV0dG9uOmFjdGl2ZTphY3RpdmUsIC5jLWludHJvLWJhbm5lcl9fYnV0dG9uOmZvY3VzOmFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMC45KTtcbn1cbi5jLWludHJvLWJhbm5lcl9fYnV0dG9uLS1wcmltYXJ5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtb3JhbmdlKTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1vcmFuZ2UpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtZGFyay1ncmF5KTtcbn1cbi5jLWludHJvLWJhbm5lcl9fYnV0dG9uLS1wcmltYXJ5OmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtbGlnaHQtZ3JheSk7XG59XG4uYy1pbnRyby1iYW5uZXJfX2J1dHRvbi0tcHJpbWFyeTpmb2N1cyB7XG4gIG91dGxpbmUtY29sb3I6IHZhcigtLWNvbG9yLWZvY3VzLXN0cm9rZSk7XG59XG5cbi8qKlxuICogTGlzdCBibG9ja1xuICogR3JvdXA6IENvbXBvbmVudHNcbiAqL1xuLmMtbGlzdF9fdGl0bGUge1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1wcmltYXJ5KTtcbiAgZm9udC1zaXplOiB2YXIoLS1oMi1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0taDItbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0taDItbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1kYXJrLWdyYXkpO1xuICBtYXJnaW46IDAgMCB2YXIoLS1zcGFjaW5nLTE1MCk7XG59XG4uYy1saXN0X190ZXh0IHtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1ib2R5LWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWJvZHktbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1kYXJrLWdyYXkpO1xufVxuXG4vKipcbiAqIE1hcFxuICogR3JvdXA6IENvbXBvbmVudHNcbiAqL1xuLmMtbWFwIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBtaW4taGVpZ2h0OiB2YXIoLS1taW4taGVpZ2h0LW1hcC1wYXJtYWN5KTtcbn1cbi5jLW1hcF9fY29udGFpbmVyIHtcbiAgYXNwZWN0LXJhdGlvOiA0LzM7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG4gIHotaW5kZXg6IDA7XG59XG4uYy1tYXAtLW1hcC1saXN0IHtcbiAgbWluLWhlaWdodDogdmFyKC0tbWluLWhlaWdodC1tYXAtcGFybWFjeSk7XG4gIG1heC1oZWlnaHQ6IHZhcigtLW1heC1oZWlnaHQtbWFwLWxpc3QpO1xuICBtYXJnaW4taW5saW5lOiBhdXRvO1xufVxuLmMtbWFwX19nb29nbGUtbWFwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBhc3BlY3QtcmF0aW86IDIuMTgzLzE7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4vKipcbiAqIE5ld3NcbiAqIEdyb3VwOiBDb21wb25lbnRzXG4gKi9cbi5jLW5ld3NfX2hlYWRlciB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1kYXJrLWdyYXkpO1xufVxuLmMtbmV3c19fdGl0bGUge1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1wcmltYXJ5KTtcbiAgZm9udC1zaXplOiB2YXIoLS1oMy1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0taDMtbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0taDMtbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIGNvbG9yOiBpbmhlcml0O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG4uYy1uZXdzX19iYWRnZSB7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1tKTtcbiAgYm9yZGVyLXdpZHRoOiB2YXIoLS1idXR0b24tYm9yZGVyLXdpZHRoKTtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LWZvbnQtc2l6ZSk7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC1zdHJldGNoOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxlYWRpbmctbm9uZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS10cmFja2luZy1ub3JtYWwpO1xuICBwYWRkaW5nLWJsb2NrOiB2YXIoLS1zcGFjaW5nLTA3NSk7XG4gIHBhZGRpbmctaW5saW5lOiB2YXIoLS1zcGFjaW5nLTEwMCk7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LXNtYWxsLWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLXRyYWNraW5nLW5vcm1hbCk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1sZWFkaW5nLW5vbmUpO1xuICBwYWRkaW5nLWJsb2NrOiB2YXIoLS1zcGFjaW5nLTAyNSk7XG4gIHBhZGRpbmctaW5saW5lOiB2YXIoLS1zcGFjaW5nLTA3NSk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJ0bi1yYWRpdXMpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1vcmFuZ2UpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLW9yYW5nZSk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1kYXJrLWdyYXkpO1xuICBmb250LXdlaWdodDogNTAwO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjaW5nLTE1MCk7XG59XG4uYy1uZXdzX19iYWRnZTpob3ZlciwgLmMtbmV3c19fYmFkZ2U6YWN0aXZlLCAuYy1uZXdzX19iYWRnZTpmb2N1cyB7XG4gIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0LCB0cmFuc2Zvcm0gdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQsIG9wYWNpdHkgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQ7XG59XG4uYy1uZXdzX19iYWRnZTpob3ZlcjphY3RpdmUsIC5jLW5ld3NfX2JhZGdlOmFjdGl2ZTphY3RpdmUsIC5jLW5ld3NfX2JhZGdlOmZvY3VzOmFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMC45KTtcbn1cbi5jLW5ld3NfX2JhZGdlOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtbGlnaHQtZ3JheSk7XG59XG4uYy1uZXdzX19iYWRnZTpmb2N1cyB7XG4gIG91dGxpbmUtY29sb3I6IHZhcigtLWNvbG9yLWZvY3VzLXN0cm9rZSk7XG59XG4uYy1uZXdzX19kYXRlIHtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LXNtYWxsLWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1ib2R5LXNtYWxsLWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWJvZHktc21hbGwtbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbWVkaXVtKTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcbiAgbWFyZ2luLWJsb2NrOiB2YXIoLS1zcGFjaW5nLTA3NSk7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLmMtbmV3c19fZGF0ZSB7XG4gICAgbWFyZ2luLWJsb2NrOiAwIHZhcigtLXNwYWNpbmctMDc1KTtcbiAgfVxufVxuLmMtbmV3c19fbGluayB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgZ2FwOiB2YXIoLS1zcGFjaW5nLTEwMCk7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWRhcmstZ3JheSk7XG59XG4uYy1uZXdzX19saW5rOmhvdmVyIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLW9yYW5nZSk7XG59XG4uYy1uZXdzX19pY29uIHtcbiAgd2lkdGg6IHZhcigtLWljb24tbXMpO1xuICBtYXgtaGVpZ2h0OiB2YXIoLS1pY29uLW1zKTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBjb2xvcjogaW5oZXJpdDtcbiAgZmxleC1zaHJpbms6IDA7XG59XG4uYy1uZXdzX19jdGEtYnV0dG9uIHtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLW0pO1xuICBib3JkZXItd2lkdGg6IHZhcigtLWJ1dHRvbi1ib3JkZXItd2lkdGgpO1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICBmb250LXNpemU6IHZhcigtLWJvZHktZm9udC1zaXplKTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXN0cmV0Y2g6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGVhZGluZy1ub25lKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLXRyYWNraW5nLW5vcm1hbCk7XG4gIHBhZGRpbmctYmxvY2s6IHZhcigtLXNwYWNpbmctMDc1KTtcbiAgcGFkZGluZy1pbmxpbmU6IHZhcigtLXNwYWNpbmctMTAwKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBmb250LXNpemU6IHZhcigtLWJvZHktZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXNlbWlib2xkKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLXRyYWNraW5nLW5vcm1hbCk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1sZWFkaW5nLW5vbmUpO1xuICBwYWRkaW5nLWJsb2NrOiB2YXIoLS1zcGFjaW5nLTEwMCk7XG4gIHBhZGRpbmctaW5saW5lOiB2YXIoLS1zcGFjaW5nLTYwMCk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJ0bi1yYWRpdXMtbGcpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1vcmFuZ2UpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLW9yYW5nZSk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1kYXJrLWdyYXkpO1xuICBtYXJnaW4taW5saW5lOiBhdXRvO1xufVxuLmMtbmV3c19fY3RhLWJ1dHRvbjpob3ZlciwgLmMtbmV3c19fY3RhLWJ1dHRvbjphY3RpdmUsIC5jLW5ld3NfX2N0YS1idXR0b246Zm9jdXMge1xuICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dCwgdHJhbnNmb3JtIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0LCBvcGFjaXR5IHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0O1xufVxuLmMtbmV3c19fY3RhLWJ1dHRvbjpob3ZlcjphY3RpdmUsIC5jLW5ld3NfX2N0YS1idXR0b246YWN0aXZlOmFjdGl2ZSwgLmMtbmV3c19fY3RhLWJ1dHRvbjpmb2N1czphY3RpdmUge1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuOSk7XG59XG4uYy1uZXdzX19jdGEtYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtbGlnaHQtZ3JheSk7XG59XG4uYy1uZXdzX19jdGEtYnV0dG9uOmZvY3VzIHtcbiAgb3V0bGluZS1jb2xvcjogdmFyKC0tY29sb3ItZm9jdXMtc3Ryb2tlKTtcbn1cbi5jLW5ld3NfX2N0YS1idXR0b24tLXdyYXBwZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmctMjAwKTtcbn1cbi5jLW5ld3MtLWNvbG9yZWQtYmFja2dyb3VuZCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWxpZ2h0LWdyYXkpO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5jLW5ld3MtYXJ0aWNsZSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBnYXA6IHZhcigtLXNwYWNpbmctMTUwKTtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICB9XG4gIC5jLW5ld3MtYXJ0aWNsZTpudGgtY2hpbGQoMSkge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIH1cbiAgLmMtbmV3cy1hcnRpY2xlOm50aC1jaGlsZCgxKSAuYy1uZXdzLWFydGljbGVfX2ltYWdlLS13cmFwcGVyIHtcbiAgICBhc3BlY3QtcmF0aW86IDE2Lzk7XG4gIH1cbiAgLmMtbmV3cy1hcnRpY2xlOm50aC1jaGlsZCgyKSAuYy1uZXdzLWFydGljbGVfX2ltYWdlLS13cmFwcGVyIHtcbiAgICBhc3BlY3QtcmF0aW86IDMvMjtcbiAgfVxuICAuYy1uZXdzLWFydGljbGU6bnRoLWNoaWxkKDIpIC5jLW5ld3NfX3RpdGxlIHtcbiAgICBmb250LWZhbWlseTogdmFyKC0tZm9udC1wcmltYXJ5KTtcbiAgICBmb250LXNpemU6IHZhcigtLWg1LWZvbnQtc2l6ZSk7XG4gICAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWg1LWxldHRlci1zcGFjaW5nKTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0taDUtbGluZS1oZWlnaHQpO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1tZWRpdW0pO1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuICAuYy1uZXdzLWFydGljbGU6bnRoLWNoaWxkKDMpIC5jLW5ld3MtYXJ0aWNsZV9faW1hZ2UtLXdyYXBwZXIge1xuICAgIGFzcGVjdC1yYXRpbzogNC81O1xuICB9XG4gIC5jLW5ld3MtYXJ0aWNsZTpudGgtY2hpbGQoMykgLmMtbmV3c19fdGl0bGUge1xuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LXByaW1hcnkpO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0taDUtZm9udC1zaXplKTtcbiAgICBsZXR0ZXItc3BhY2luZzogdmFyKC0taDUtbGV0dGVyLXNwYWNpbmcpO1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1oNS1saW5lLWhlaWdodCk7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LW1lZGl1bSk7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG59XG4uYy1uZXdzLWFydGljbGVfX2ltYWdlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLmMtbmV3cy1hcnRpY2xlX19pbWFnZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGluc2V0OiAwO1xuICB9XG59XG4uYy1uZXdzLWFydGljbGVfX2ltYWdlLS13cmFwcGVyIHtcbiAgZmxleDogMTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBtYXgtaGVpZ2h0OiBjbGFtcCh2YXIoLS1zcGFjaW5nLTUwMCksIDUwZHZ3LCB2YXIoLS1tYXgtaGVpZ2h0LWltYWdlLW5ld3MpKTtcbn1cbi5jLW5ld3MtYXJ0aWNsZV9fY29udGVudCB7XG4gIGZsZXg6IDE7XG59XG4uYy1uZXdzLWFydGljbGVfX3N1bW1hcnkge1xuICBmb250LXNpemU6IHZhcigtLWJvZHktZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWJvZHktbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tYm9keS1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbiAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2luZy0wNzUpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtZ3JheSk7XG59XG4uYy1uZXdzLWFydGljbGUtcGFnZV9faW1hZ2UtLXdyYXBwZXIge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctMTAwKTtcbn1cbi5jLW5ld3MtYXJ0aWNsZS1wYWdlX190ZXh0IHtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1ib2R5LWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWJvZHktbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ncmF5KTtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy0yMDApO1xufVxuLmMtbmV3cy1wcmVzc19fc3VtbWFyeSB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tYm9keS1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgLXdlYmtpdC1saW5lLWNsYW1wOiA1O1xuICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2luZy0wNzUpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtZ3JheSk7XG59XG4uYy1uZXdzLWNvbXBldGl0aW9uc19fbGlzdCB7XG4gIHBhZGRpbmctYm90dG9tOiB2YXIoLS1zcGFjaW5nLTEwMCk7XG59XG4uYy1uZXdzLWNvbXBldGl0aW9uc19faXRlbSB7XG4gIHBhZGRpbmctYm90dG9tOiB2YXIoLS1zcGFjaW5nLTMwMCk7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctMjAwKTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWRhcmspO1xufVxuLmMtbmV3cy1jb21wZXRpdGlvbnNfX3N1bW1hcnkge1xuICBmb250LXNpemU6IHZhcigtLWJvZHktZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWJvZHktbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tYm9keS1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gIC13ZWJraXQtbGluZS1jbGFtcDogMztcbiAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmctMDc1KTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWdyYXkpO1xufVxuXG4vKipcbiAqIE5ld3NsZXR0ZXJcbiAqIEdyb3VwOiBDb21wb25lbnRzXG4gKi9cbi5jLW5ld3NsZXR0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcbiAgcGFkZGluZy1ibG9jazogdmFyKC0tc3BhY2luZy01MDApO1xuICBjb2xvcjogdmFyKC0tY29sb3ItbGlnaHQpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4uYy1uZXdzbGV0dGVyX190aXRsZSB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LXByaW1hcnkpO1xuICBmb250LXNpemU6IHZhcigtLWgyLWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1oMi1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1oMi1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy0xMDApO1xufVxuLmMtbmV3c2xldHRlcl9fZGVzY3JpcHRpb24ge1xuICBmb250LXNpemU6IHZhcigtLWJvZHktc21hbGwtZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWJvZHktc21hbGwtbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tYm9keS1zbWFsbC1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbiAgbWF4LXdpZHRoOiB2YXIoLS1tYXgtd2lkdGgtLTR4cyk7XG4gIG1hcmdpbi1pbmxpbmU6IGF1dG87XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctMjAwKTtcbn1cbi5jLW5ld3NsZXR0ZXJfX2Zvcm0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGdhcDogdmFyKC0tc3BhY2luZy0yNTApO1xuICB3aWR0aDogbWF4LWNvbnRlbnQ7XG4gIG1hcmdpbi1pbmxpbmU6IGF1dG87XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmMtbmV3c2xldHRlcl9fZm9ybSB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBnYXA6IHZhcigtLXNwYWNpbmctMDc1KTtcbiAgfVxufVxuLmMtbmV3c2xldHRlcl9fZm9ybSAuZmllbGQtdmFsaWRhdGlvbi1lcnJvciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMDAlO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgaGVpZ2h0OiB2YXIoLS1zcGFjaW5nLTMwMCk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1kYXJrLXJlZCk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LWxpbmUtaGVpZ2h0KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtcmVkLXNlbWktdHJhbnNwYXJlbnQpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLWwpO1xuICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLTEwMCk7XG4gIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmctMDUwKTtcbn1cbi5jLW5ld3NsZXR0ZXJfX2lucHV0IHtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ib2xkKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLXRyYWNraW5nLW5vcm1hbCk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1sZWFkaW5nLW5vbmUpO1xuICB3aWR0aDogdmFyKC0tc3BhY2luZy0xMjAwKTtcbiAgaGVpZ2h0OiB2YXIoLS1idXR0b24tc2l6ZSk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJ0bi1yYWRpdXMtbGcpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXhzKTtcbiAgYm9yZGVyOiBub25lO1xuICBmb250LXNpemU6IHZhcigtLWJvZHktZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tYm9keS1saW5lLWhlaWdodCk7XG4gIHRleHQtaW5kZW50OiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1zZWFyY2gtZ3JheSk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtbCk7XG4gIGhlaWdodDogdmFyKC0tc3BhY2luZy0zMDApO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctMTAwKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xufVxuLmMtbmV3c2xldHRlcl9faW5wdXQ6aG92ZXIsIC5jLW5ld3NsZXR0ZXJfX2lucHV0OmFjdGl2ZSwgLmMtbmV3c2xldHRlcl9faW5wdXQ6Zm9jdXMge1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0O1xufVxuLmMtbmV3c2xldHRlcl9faW5wdXQ6aG92ZXIge1xuICBib3gtc2hhZG93OiB2YXIoLS1ib3gtc2hhZG93LWxpZ2h0LTAzKTtcbn1cbi5jLW5ld3NsZXR0ZXJfX2lucHV0IGlucHV0IHtcbiAgaGVpZ2h0OiB2YXIoLS1pbnB1dC1oZWlnaHQtbWVkaXVtKTtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIHdpZHRoOiAxMDAlO1xuICBmb250LXNpemU6IHZhcigtLWJvZHktZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWJvZHktbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tYm9keS1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbn1cbi5jLW5ld3NsZXR0ZXJfX2lucHV0IGlucHV0OjpwbGFjZWhvbGRlciB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tYm9keS1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG59XG4uYy1uZXdzbGV0dGVyX19pbnB1dCBpbnB1dDo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tYm9keS1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG59XG4uYy1uZXdzbGV0dGVyX19pbnB1dCBpbnB1dDo6LW1vei1wbGFjZWhvbGRlciB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tYm9keS1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG4gIG9wYWNpdHk6IDE7XG59XG4uYy1uZXdzbGV0dGVyX19pbnB1dCBpbnB1dDotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xuICBmb250LXNpemU6IHZhcigtLWJvZHktZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWJvZHktbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tYm9keS1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xufVxuLmMtbmV3c2xldHRlcl9faW5wdXQgaW5wdXQ6Zm9jdXMge1xuICBvdXRsaW5lOiAycHggc29saWQgdmFyKC0tY29sb3ItZm9jdXMtc3Ryb2tlKTtcbiAgb3V0bGluZS1vZmZzZXQ6IDFweDtcbn1cbi5jLW5ld3NsZXR0ZXJfX2lucHV0IGlucHV0OjpwbGFjZWhvbGRlciB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tYm9keS1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJvcmRlcjogbm9uZTtcbn1cbi5jLW5ld3NsZXR0ZXJfX2lucHV0IGlucHV0Ojotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1ib2R5LWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWJvZHktbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZCk7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYm9yZGVyOiBub25lO1xufVxuLmMtbmV3c2xldHRlcl9faW5wdXQgaW5wdXQ6Oi1tb3otcGxhY2Vob2xkZXIge1xuICBmb250LXNpemU6IHZhcigtLWJvZHktZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWJvZHktbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tYm9keS1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ib2xkKTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBib3JkZXI6IG5vbmU7XG4gIG9wYWNpdHk6IDE7XG59XG4uYy1uZXdzbGV0dGVyX19pbnB1dCBpbnB1dDotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xuICBmb250LXNpemU6IHZhcigtLWJvZHktZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWJvZHktbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tYm9keS1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ib2xkKTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBib3JkZXI6IG5vbmU7XG59XG4uYy1uZXdzbGV0dGVyX19idXR0b24ge1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtbSk7XG4gIGJvcmRlci13aWR0aDogdmFyKC0tYnV0dG9uLWJvcmRlci13aWR0aCk7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1mb250LXNpemUpO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtc3RyZXRjaDogbm9ybWFsO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1sZWFkaW5nLW5vbmUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tdHJhY2tpbmctbm9ybWFsKTtcbiAgcGFkZGluZy1ibG9jazogdmFyKC0tc3BhY2luZy0wNzUpO1xuICBwYWRkaW5nLWlubGluZTogdmFyKC0tc3BhY2luZy0xMDApO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZCk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS10cmFja2luZy1ub3JtYWwpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGVhZGluZy1ub25lKTtcbiAgd2lkdGg6IHZhcigtLXNwYWNpbmctMTIwMCk7XG4gIGhlaWdodDogdmFyKC0tYnV0dG9uLXNpemUpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1idG4tcmFkaXVzLWxnKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtb3JhbmdlKTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1vcmFuZ2UpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtZGFyay1ncmF5KTtcbn1cbi5jLW5ld3NsZXR0ZXJfX2J1dHRvbjpob3ZlciwgLmMtbmV3c2xldHRlcl9fYnV0dG9uOmFjdGl2ZSwgLmMtbmV3c2xldHRlcl9fYnV0dG9uOmZvY3VzIHtcbiAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQsIHRyYW5zZm9ybSB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dCwgb3BhY2l0eSB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dDtcbn1cbi5jLW5ld3NsZXR0ZXJfX2J1dHRvbjpob3ZlcjphY3RpdmUsIC5jLW5ld3NsZXR0ZXJfX2J1dHRvbjphY3RpdmU6YWN0aXZlLCAuYy1uZXdzbGV0dGVyX19idXR0b246Zm9jdXM6YWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjkpO1xufVxuLmMtbmV3c2xldHRlcl9fYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtbGlnaHQtZ3JheSk7XG59XG4uYy1uZXdzbGV0dGVyX19idXR0b246Zm9jdXMge1xuICBvdXRsaW5lLWNvbG9yOiB2YXIoLS1jb2xvci1mb2N1cy1zdHJva2UpO1xufVxuXG4vKipcbiAqIE5vdCBGb3VuZCBQYWdlIDQwNFxuICogR3JvdXA6IENvbXBvbmVudHNcbiAqL1xuLmMtbm90LWZvdW5kLS1sYXlvdXQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuLmMtbm90LWZvdW5kX190aXRsZSB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LXByaW1hcnkpO1xuICBmb250LXNpemU6IHZhcigtLWgyLWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1oMi1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1oMi1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbiAgZm9udC1zaXplOiA5LjVyZW07XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBsaW5lLWhlaWdodDogMTtcbn1cbi5jLW5vdC1mb3VuZF9fdGV4dCB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1zbWFsbC1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tYm9keS1zbWFsbC1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LXNtYWxsLWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4uYy1ub3QtZm91bmRfX2JhY2stdG8taG9tZSB7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1tKTtcbiAgYm9yZGVyLXdpZHRoOiB2YXIoLS1idXR0b24tYm9yZGVyLXdpZHRoKTtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LWZvbnQtc2l6ZSk7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC1zdHJldGNoOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxlYWRpbmctbm9uZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS10cmFja2luZy1ub3JtYWwpO1xuICBwYWRkaW5nLWJsb2NrOiB2YXIoLS1zcGFjaW5nLTA3NSk7XG4gIHBhZGRpbmctaW5saW5lOiB2YXIoLS1zcGFjaW5nLTEwMCk7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ib2xkKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLXRyYWNraW5nLW5vcm1hbCk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1sZWFkaW5nLW5vbmUpO1xuICB3aWR0aDogdmFyKC0tc3BhY2luZy0xMjAwKTtcbiAgaGVpZ2h0OiB2YXIoLS1idXR0b24tc2l6ZSk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJ0bi1yYWRpdXMtbGcpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1vcmFuZ2UpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLW9yYW5nZSk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1kYXJrLWdyYXkpO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmctMjUwKTtcbn1cbi5jLW5vdC1mb3VuZF9fYmFjay10by1ob21lOmhvdmVyLCAuYy1ub3QtZm91bmRfX2JhY2stdG8taG9tZTphY3RpdmUsIC5jLW5vdC1mb3VuZF9fYmFjay10by1ob21lOmZvY3VzIHtcbiAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQsIHRyYW5zZm9ybSB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dCwgb3BhY2l0eSB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dDtcbn1cbi5jLW5vdC1mb3VuZF9fYmFjay10by1ob21lOmhvdmVyOmFjdGl2ZSwgLmMtbm90LWZvdW5kX19iYWNrLXRvLWhvbWU6YWN0aXZlOmFjdGl2ZSwgLmMtbm90LWZvdW5kX19iYWNrLXRvLWhvbWU6Zm9jdXM6YWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjkpO1xufVxuLmMtbm90LWZvdW5kX19iYWNrLXRvLWhvbWU6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1saWdodC1ncmF5KTtcbn1cbi5jLW5vdC1mb3VuZF9fYmFjay10by1ob21lOmZvY3VzIHtcbiAgb3V0bGluZS1jb2xvcjogdmFyKC0tY29sb3ItZm9jdXMtc3Ryb2tlKTtcbn1cblxuLyoqXG4gKiBQYWdlIEJhbm5lclxuICogR3JvdXA6IENvbXBvbmVudHNcbiAqL1xuLmMtcGFnZS1iYW5uZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcbiAgcGFkZGluZy1ibG9jazogdmFyKC0tc3BhY2luZy0yMDApO1xuICBjb2xvcjogdmFyKC0tY29sb3ItbGlnaHQpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJvcmRlci1ib3R0b206IDVweCBzb2xpZCB2YXIoLS1jb2xvci1icmFuZC1vcmFuZ2UpO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jLXBhZ2UtYmFubmVyIHtcbiAgICBwYWRkaW5nLWJsb2NrOiB2YXIoLS1zcGFjaW5nLTQwMCk7XG4gIH1cbn1cbi5jLXBhZ2UtYmFubmVyX190aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctMTUwKTtcbn1cblxuLyoqXG4gKiBQREYgVmlld2VyXG4gKiBHcm91cDogQ29tcG9uZW50c1xuICovXG4uYy1wZGYtdmlld2VyIGNhbnZhcyB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tc3BhY2luZy0yMDApO1xuICBib3JkZXI6IDRweCBzb2xpZCB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcbiAgbWFyZ2luLWJsb2NrOiB2YXIoLS1zcGFjaW5nLTIwMCk7XG59XG4uYy1wZGYtdmlld2VyX19uYXYge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgbWF4LXdpZHRoOiA5MDBweDtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy0yMDApO1xufVxuLmMtcGRmLXZpZXdlcl9fbmF2LXRleHQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbWVkaXVtKTtcbiAgbWFyZ2luLWlubGluZTogdmFyKC0tc3BhY2luZy0xNTApO1xufVxuLmMtcGRmLXZpZXdlcl9fbmF2LWJ1dHRvbiB7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1tKTtcbiAgYm9yZGVyLXdpZHRoOiB2YXIoLS1idXR0b24tYm9yZGVyLXdpZHRoKTtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LWZvbnQtc2l6ZSk7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC1zdHJldGNoOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxlYWRpbmctbm9uZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS10cmFja2luZy1ub3JtYWwpO1xuICBwYWRkaW5nLWJsb2NrOiB2YXIoLS1zcGFjaW5nLTA3NSk7XG4gIHBhZGRpbmctaW5saW5lOiB2YXIoLS1zcGFjaW5nLTEwMCk7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1saWdodCk7XG59XG4uYy1wZGYtdmlld2VyX19uYXYtYnV0dG9uOmhvdmVyLCAuYy1wZGYtdmlld2VyX19uYXYtYnV0dG9uOmFjdGl2ZSwgLmMtcGRmLXZpZXdlcl9fbmF2LWJ1dHRvbjpmb2N1cyB7XG4gIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0LCB0cmFuc2Zvcm0gdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQsIG9wYWNpdHkgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQ7XG59XG4uYy1wZGYtdmlld2VyX19uYXYtYnV0dG9uOmhvdmVyOmFjdGl2ZSwgLmMtcGRmLXZpZXdlcl9fbmF2LWJ1dHRvbjphY3RpdmU6YWN0aXZlLCAuYy1wZGYtdmlld2VyX19uYXYtYnV0dG9uOmZvY3VzOmFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMC45KTtcbn1cbi5jLXBkZi12aWV3ZXJfX25hdi1idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1saWdodGVyLWdyYXkpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG59XG4uYy1wZGYtdmlld2VyX19uYXYtYnV0dG9uOmZvY3VzIHtcbiAgb3V0bGluZS1jb2xvcjogdmFyKC0tY29sb3ItZm9jdXMtc3Ryb2tlKTtcbn1cblxuLyoqXG4gKiBRdW90ZVxuICogR3JvdXA6IENvbXBvbmVudHNcbiAqL1xuLmMtcXVvdGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0KTtcbn1cbi5jLXF1b3RlLS1sYXlvdXQge1xuICBtYXgtd2lkdGg6IDQ3LjVyZW07XG4gIG1hcmdpbi1pbmxpbmU6IGF1dG87XG59XG4uYy1xdW90ZV9fdGV4dCB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LXByaW1hcnkpO1xuICBmb250LXNpemU6IHZhcigtLWgyLWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1oMi1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1oMi1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBib3JkZXItbGVmdDogNHB4IHNvbGlkIHZhcigtLWNvbG9yLWJyYW5kLW9yYW5nZSk7XG4gIHBhZGRpbmctbGVmdDogdmFyKC0tc3BhY2luZy0xNTApO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jLXF1b3RlX190ZXh0IHtcbiAgICBmb250LXNpemU6IDNyZW07XG4gIH1cbn1cbi5jLXF1b3RlX19hdXRob3Ige1xuICBmb250LXNpemU6IHZhcigtLWJvZHktZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWJvZHktbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tYm9keS1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjaW5nLTA1MCk7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cbi5jLXF1b3RlX19hdXRob3I6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi4oCUIFwiO1xuICBtYXJnaW4tcmlnaHQ6IHZhcigtLXNwYWNpbmctMDI1KTtcbn1cblxuLyoqXG4gKiBTaWRlYmFyXG4gKiBHcm91cDogQ29tcG9uZW50c1xuICovXG4uYy1zaWRlYmFyX19saXN0IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZ2FwOiB2YXIoLS1zcGFjaW5nLTE1MCk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLW0pO1xuICBjb2xvcjogdmFyKC0tY29sb3ItbGlnaHQpO1xuICBwYWRkaW5nLWJsb2NrOiB2YXIoLS1zcGFjaW5nLTEyNSk7XG4gIHBhZGRpbmctaW5saW5lOiB2YXIoLS1zcGFjaW5nLTE1MCk7XG59XG4uYy1zaWRlYmFyX19saXN0LWl0ZW0ge1xuICBmb250LXNpemU6IHZhcigtLWJvZHktZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWJvZHktbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tYm9keS1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuLmMtc2lkZWJhcl9fbGlzdC1pdGVtOmhvdmVyIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLW9yYW5nZSk7XG59XG4uYy1zaWRlYmFyX19saXN0LWl0ZW1bYXJpYS1jdXJyZW50PXBhZ2VdIHtcbiAgYm9yZGVyLWxlZnQ6IDNweCBzb2xpZCB2YXIoLS1jb2xvci1icmFuZC1vcmFuZ2UpO1xuICBwYWRkaW5nLWxlZnQ6IHZhcigtLXNwYWNpbmctMDUwKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xufVxuLmMtc2lkZWJhcl9fbGlzdC0tYm94ZXMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBnYXA6IHZhcigtLXNwYWNpbmctMTUwKTtcbn1cbi5jLXNpZGViYXJfX3RpdGxlIHtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtcHJpbWFyeSk7XG4gIGZvbnQtc2l6ZTogdmFyKC0taDItZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWgyLWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWgyLWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLTE1MCk7XG4gIHBhZGRpbmctYm90dG9tOiB2YXIoLS1zcGFjaW5nLTAyNSk7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCB2YXIoLS1jb2xvci1icmFuZC1kYXJrLWdyYXkpO1xufVxuXG4vKipcbiAqIFRleHRcbiAqIEdyb3VwOiBDb21wb25lbnRzXG4gKi9cbi5jLXRleHRfX3RpdGxlIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWRhcmstZ3JheSk7XG59XG4uYy10ZXh0X19jb250ZW50IHtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1ib2R5LWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWJvZHktbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ncmF5KTtcbn1cbi5jLXRleHRfX2NvbnRlbnQgYSB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG5cbi8qKlxuICogVGlja2V0IExpbmtcbiAqIEdyb3VwOiBDb21wb25lbnRzXG4gKi9cbi5jLXRpY2tldC1saW5rLS1sYXlvdXQge1xuICBkaXNwbGF5OiBncmlkO1xuICBwbGFjZS1pdGVtczogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1saWdodC1ncmF5KTtcbiAgcGFkZGluZy1ibG9jazogdmFyKC0tc3BhY2luZy00MDApO1xuICBwYWRkaW5nLWlubGluZTogdmFyKC0tc3BhY2luZy0xMDApO1xufVxuLmMtdGlja2V0LWxpbmtfX2J1dHRvbi1saW5rIHtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLW0pO1xuICBib3JkZXItd2lkdGg6IHZhcigtLWJ1dHRvbi1ib3JkZXItd2lkdGgpO1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICBmb250LXNpemU6IHZhcigtLWJvZHktZm9udC1zaXplKTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXN0cmV0Y2g6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGVhZGluZy1ub25lKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLXRyYWNraW5nLW5vcm1hbCk7XG4gIHBhZGRpbmctYmxvY2s6IHZhcigtLXNwYWNpbmctMDc1KTtcbiAgcGFkZGluZy1pbmxpbmU6IHZhcigtLXNwYWNpbmctMTAwKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBmb250LXNpemU6IHZhcigtLWJvZHktZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXNlbWlib2xkKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLXRyYWNraW5nLW5vcm1hbCk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1sZWFkaW5nLW5vbmUpO1xuICBwYWRkaW5nLWJsb2NrOiB2YXIoLS1zcGFjaW5nLTEwMCk7XG4gIHBhZGRpbmctaW5saW5lOiB2YXIoLS1zcGFjaW5nLTYwMCk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJ0bi1yYWRpdXMtbGcpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1vcmFuZ2UpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLW9yYW5nZSk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1kYXJrLWdyYXkpO1xufVxuLmMtdGlja2V0LWxpbmtfX2J1dHRvbi1saW5rOmhvdmVyLCAuYy10aWNrZXQtbGlua19fYnV0dG9uLWxpbms6YWN0aXZlLCAuYy10aWNrZXQtbGlua19fYnV0dG9uLWxpbms6Zm9jdXMge1xuICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dCwgdHJhbnNmb3JtIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0LCBvcGFjaXR5IHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0O1xufVxuLmMtdGlja2V0LWxpbmtfX2J1dHRvbi1saW5rOmhvdmVyOmFjdGl2ZSwgLmMtdGlja2V0LWxpbmtfX2J1dHRvbi1saW5rOmFjdGl2ZTphY3RpdmUsIC5jLXRpY2tldC1saW5rX19idXR0b24tbGluazpmb2N1czphY3RpdmUge1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuOSk7XG59XG4uYy10aWNrZXQtbGlua19fYnV0dG9uLWxpbms6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1saWdodC1ncmF5KTtcbn1cbi5jLXRpY2tldC1saW5rX19idXR0b24tbGluazpmb2N1cyB7XG4gIG91dGxpbmUtY29sb3I6IHZhcigtLWNvbG9yLWZvY3VzLXN0cm9rZSk7XG59XG5cbi8qKlxuICogVHJlZVxuICogR3JvdXA6IENvbXBvbmVudHNcbiAqL1xuLmMtdHJlZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5jLXRyZWVfX2xpc3Qge1xuICBwYWRkaW5nLWxlZnQ6IHZhcigtLXNwYWNpbmctMTAwKTtcbiAgbWFyZ2luLWxlZnQ6IHZhcigtLXNwYWNpbmctMDUwKTtcbiAgbWFyZ2luLWJsb2NrOiB2YXIoLS1zcGFjaW5nLTEwMCk7XG59XG4uYy10cmVlX19saXN0Om5vdCg6bnRoLWNoaWxkKDEpKSB7XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgdmFyKC0tY29sb3ItYnJhbmQtZGFyay1ncmF5KTtcbn1cbi5jLXRyZWVfX2xpc3QtaXRlbSB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tYm9keS1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtZGFyay1ncmF5KTtcbiAgbWFyZ2luLWJsb2NrOiB2YXIoLS1zcGFjaW5nLTEwMCk7XG59XG4uYy10cmVlX19saXN0X19pY29uLWZpbGUsIC5jLXRyZWVfX2xpc3RfX2ljb24tZm9sZGVyIHtcbiAgd2lkdGg6IHZhcigtLWljb24tbXMpO1xuICBtYXgtaGVpZ2h0OiB2YXIoLS1pY29uLW1zKTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBjb2xvcjogaW5oZXJpdDtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLTA1MCk7XG4gIGZsZXg6IDEgMCBhdXRvO1xufVxuLmMtdHJlZV9fbGlzdCAuYnV0dG9uLWVkaXQtaXRlbS0td3JhcHBlciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLWxlZnQ6IHZhcigtLXNwYWNpbmctMDUwKTtcbn1cbi5jLXRyZWVfX3NpZGViYXIge1xuICBmbGV4OiBub25lO1xufVxuLmMtdHJlZV9fYnV0dG9uIHtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLW0pO1xuICBib3JkZXItd2lkdGg6IHZhcigtLWJ1dHRvbi1ib3JkZXItd2lkdGgpO1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICBmb250LXNpemU6IHZhcigtLWJvZHktZm9udC1zaXplKTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXN0cmV0Y2g6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGVhZGluZy1ub25lKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLXRyYWNraW5nLW5vcm1hbCk7XG4gIHBhZGRpbmctYmxvY2s6IHZhcigtLXNwYWNpbmctMDc1KTtcbiAgcGFkZGluZy1pbmxpbmU6IHZhcigtLXNwYWNpbmctMTAwKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBwYWRkaW5nOiAwO1xufVxuLmMtdHJlZV9fYnV0dG9uOmhvdmVyLCAuYy10cmVlX19idXR0b246YWN0aXZlLCAuYy10cmVlX19idXR0b246Zm9jdXMge1xuICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dCwgdHJhbnNmb3JtIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0LCBvcGFjaXR5IHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0O1xufVxuLmMtdHJlZV9fYnV0dG9uOmhvdmVyOmFjdGl2ZSwgLmMtdHJlZV9fYnV0dG9uOmFjdGl2ZTphY3RpdmUsIC5jLXRyZWVfX2J1dHRvbjpmb2N1czphY3RpdmUge1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuOSk7XG59XG4uYy10cmVlX19idXR0b246aG92ZXIsIC5jLXRyZWVfX2J1dHRvbjpmb2N1cyB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1vcmFuZ2UpO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5jLXRyZWUgLmMtc2lkZWJhciB7XG4gICAgcG9zaXRpb246IHN0aWNreTtcbiAgICB0b3A6IDUlO1xuICB9XG59XG5cbi8qKlxuICogTWFpblxuICogR3JvdXA6IFV0aWxpdGllc1xuICovXG4vKipcbiAqIEExMXlcbiAqIEdyb3VwOiBVdGlsaXRpZXNcbiAqL1xuLyoqXG4gKiBIaWRlIG9ubHkgdmlzdWFsbHksIGJ1dCBoYXZlIGl0IGF2YWlsYWJsZSBmb3Igc2NyZWVuIHJlYWRlcnM6XG4gKiBodHRwOi8vc25vb2suY2EvYXJjaGl2ZXMvaHRtbF9hbmRfY3NzL2hpZGluZy1jb250ZW50LWZvci1hY2Nlc3NpYmlsaXR5XG4gKi9cbi51LXNyLFxuLnNjcmVlbi1yZWFkZXItdGV4dCB7XG4gIGJvcmRlcjogMCAhaW1wb3J0YW50O1xuICBjbGlwOiByZWN0KDAgMCAwIDApICFpbXBvcnRhbnQ7XG4gIGNsaXAtcGF0aDogaW5zZXQoNTAlKSAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IDFweCAhaW1wb3J0YW50O1xuICBtYXJnaW46IC0xcHggIWltcG9ydGFudDtcbiAgb3ZlcmZsb3c6IGhpZGRlbiAhaW1wb3J0YW50O1xuICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiAxcHggIWltcG9ydGFudDtcbn1cbi51LXNyOmFjdGl2ZSwgLnUtc3I6Zm9jdXMsXG4uc2NyZWVuLXJlYWRlci10ZXh0OmFjdGl2ZSxcbi5zY3JlZW4tcmVhZGVyLXRleHQ6Zm9jdXMge1xuICBjbGlwOiBhdXRvO1xuICBjbGlwLXBhdGg6IG5vbmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IGF1dG87XG4gIHdpZHRoOiBhdXRvO1xuICB6LWluZGV4OiAxMDAwMDA7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLnUtc2tpcC1saW5rIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IC05OTlweDtcbiAgbGVmdDogLTk5OXB4O1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY2xpcC1wYXRoOiBpbnNldCg1MCUpO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBib3JkZXI6IDA7XG59XG4udS1za2lwLWxpbms6Zm9jdXMge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMXJlbTtcbiAgbGVmdDogMXJlbTtcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogYXV0bztcbiAgcGFkZGluZzogMC43NXJlbSAxcmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuICBjb2xvcjogI2ZmZjtcbiAgei1pbmRleDogMTAwMDtcbiAgY2xpcC1wYXRoOiBub25lO1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgYm94LXNoYWRvdzogMCAwIDAgMnB4IHdoaXRlO1xufVxuXG4ubW9iaWxlLW1lbnUtaXMtb3BlbiB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGhlaWdodDogMTAwJTtcbn1cbi5tb2JpbGUtbWVudS1pcy1vcGVuOjpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjUpO1xuICB6LWluZGV4OiA5OTtcbiAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKHZhcigtLXNwYWNpbmctMDUwKSk7XG59XG5cbi8qKlxuICogQmFja2dyb3VuZCBDb2xvclxuICogR3JvdXA6IFV0aWxpdGllc1xuICovXG4udS1iZy1jb2xvci1icmFuZC1icm93bi1zZW1pLXRyYW5zcGFyZW50IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYnJvd24tc2VtaS10cmFuc3BhcmVudCk7XG59XG4udS1iZy1jb2xvci1icmFuZC1icm93biB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJyb3duKTtcbn1cbi51LWJnLWNvbG9yLWJyYW5kLXJlZC1zZW1pLXRyYW5zcGFyZW50IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtcmVkLXNlbWktdHJhbnNwYXJlbnQpO1xufVxuLnUtYmctY29sb3ItYnJhbmQtZGFyay1yZWQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1kYXJrLXJlZCk7XG59XG4udS1iZy1jb2xvci1icmFuZC1yZWQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1yZWQpO1xufVxuLnUtYmctY29sb3ItYWxlcnQtZ3JlZW4tZGFyayB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWFsZXJ0LWdyZWVuLWRhcmspO1xufVxuLnUtYmctY29sb3ItYnJhbmQtZ3JlZW4ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ncmVlbik7XG59XG4udS1iZy1jb2xvci1icmFuZC1ibHVlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG59XG4udS1iZy1jb2xvci1icmFuZC1ibHVlLWxpZ2h0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZS1saWdodCk7XG59XG4udS1iZy1jb2xvci1icmFuZC1ibHVlLWxpZ2h0LXNlbWktdHJhbnNwYXJlbnQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlLWxpZ2h0LXNlbWktdHJhbnNwYXJlbnQpO1xufVxuLnUtYmctY29sb3ItYnJhbmQtYmx1ZS1zZW1pLXRyYW5zcGFyZW50IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZS1zZW1pLXRyYW5zcGFyZW50KTtcbn1cbi51LWJnLWNvbG9yLWJyYW5kLW9yYW5nZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLW9yYW5nZSk7XG59XG4udS1iZy1jb2xvci1icmFuZC1kYXJrLWdyYXkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1kYXJrLWdyYXkpO1xufVxuLnUtYmctY29sb3ItYnJhbmQtZ3JheSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWdyYXkpO1xufVxuLnUtYmctY29sb3ItYnJhbmQtYmx1ZS1kYXJrIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZS1kYXJrKTtcbn1cbi51LWJnLWNvbG9yLWJyYW5kLXdoaXRlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtd2hpdGUpO1xufVxuLnUtYmctY29sb3ItYnJhbmQtbGlnaHQtZ3JheSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWxpZ2h0LWdyYXkpO1xufVxuLnUtYmctY29sb3ItYnJhbmQtbGlnaHRlci1ncmF5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtbGlnaHRlci1ncmF5KTtcbn1cbi51LWJnLWNvbG9yLWJyYW5kLXNlYXJjaC1ncmF5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtc2VhcmNoLWdyYXkpO1xufVxuLnUtYmctY29sb3ItbmV1dHJhbC0xMDAwIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItbmV1dHJhbC0xMDAwKTtcbn1cbi51LWJnLWNvbG9yLW5ldXRyYWwtOTc1IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItbmV1dHJhbC05NzUpO1xufVxuLnUtYmctY29sb3ItbmV1dHJhbC05NTAge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1uZXV0cmFsLTk1MCk7XG59XG4udS1iZy1jb2xvci1uZXV0cmFsLTkwMCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLW5ldXRyYWwtOTAwKTtcbn1cbi51LWJnLWNvbG9yLW5ldXRyYWwtODAwIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItbmV1dHJhbC04MDApO1xufVxuLnUtYmctY29sb3ItbmV1dHJhbC03MDAge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1uZXV0cmFsLTcwMCk7XG59XG4udS1iZy1jb2xvci1uZXV0cmFsLTYwMCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLW5ldXRyYWwtNjAwKTtcbn1cbi51LWJnLWNvbG9yLW5ldXRyYWwtNTAwIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItbmV1dHJhbC01MDApO1xufVxuLnUtYmctY29sb3ItbmV1dHJhbC00MDAge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1uZXV0cmFsLTQwMCk7XG59XG4udS1iZy1jb2xvci1uZXV0cmFsLTMwMCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLW5ldXRyYWwtMzAwKTtcbn1cbi51LWJnLWNvbG9yLW5ldXRyYWwtMjAwIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItbmV1dHJhbC0yMDApO1xufVxuLnUtYmctY29sb3ItbmV1dHJhbC0xMDAge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1uZXV0cmFsLTEwMCk7XG59XG4udS1iZy1jb2xvci1uZXV0cmFsLTA1MCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLW5ldXRyYWwtMDUwKTtcbn1cbi51LWJnLWNvbG9yLW5ldXRyYWwtMDAwIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItbmV1dHJhbC0wMDApO1xufVxuLnUtYmctY29sb3ItZGFyayB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWRhcmspO1xufVxuLnUtYmctY29sb3ItbGlnaHQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1saWdodCk7XG59XG4udS1iZy1jb2xvci1mYWRlLWxpZ2h0LTUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1mYWRlLWxpZ2h0LTUpO1xufVxuLnUtYmctY29sb3ItZmFkZS1saWdodC0xMCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWZhZGUtbGlnaHQtMTApO1xufVxuLnUtYmctY29sb3ItZmFkZS1saWdodC0yMCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWZhZGUtbGlnaHQtMjApO1xufVxuLnUtYmctY29sb3ItZmFkZS1saWdodC0zMCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWZhZGUtbGlnaHQtMzApO1xufVxuLnUtYmctY29sb3ItZmFkZS1saWdodC00MCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWZhZGUtbGlnaHQtNDApO1xufVxuLnUtYmctY29sb3ItZmFkZS1saWdodC01MCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWZhZGUtbGlnaHQtNTApO1xufVxuLnUtYmctY29sb3ItZmFkZS1saWdodC02MCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWZhZGUtbGlnaHQtNjApO1xufVxuLnUtYmctY29sb3ItZmFkZS1saWdodC03MCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWZhZGUtbGlnaHQtNzApO1xufVxuLnUtYmctY29sb3ItZmFkZS1saWdodC04MCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWZhZGUtbGlnaHQtODApO1xufVxuLnUtYmctY29sb3ItZmFkZS1saWdodC05MCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWZhZGUtbGlnaHQtOTApO1xufVxuLnUtYmctY29sb3ItZmFkZS1kYXJrLTUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1mYWRlLWRhcmstNSk7XG59XG4udS1iZy1jb2xvci1mYWRlLWRhcmstMTAge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1mYWRlLWRhcmstMTApO1xufVxuLnUtYmctY29sb3ItZmFkZS1kYXJrLTIwIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItZmFkZS1kYXJrLTIwKTtcbn1cbi51LWJnLWNvbG9yLWZhZGUtZGFyay0zMCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWZhZGUtZGFyay0zMCk7XG59XG4udS1iZy1jb2xvci1mYWRlLWRhcmstNDAge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1mYWRlLWRhcmstNDApO1xufVxuLnUtYmctY29sb3ItZmFkZS1kYXJrLTUwIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItZmFkZS1kYXJrLTUwKTtcbn1cbi51LWJnLWNvbG9yLWZhZGUtZGFyay02MCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWZhZGUtZGFyay02MCk7XG59XG4udS1iZy1jb2xvci1mYWRlLWRhcmstNzAge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1mYWRlLWRhcmstNzApO1xufVxuLnUtYmctY29sb3ItZmFkZS1kYXJrLTgwIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItZmFkZS1kYXJrLTgwKTtcbn1cbi51LWJnLWNvbG9yLWZhZGUtZGFyay05MCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWZhZGUtZGFyay05MCk7XG59XG4udS1iZy1jb2xvci1mb2N1cy1zdHJva2Uge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1mb2N1cy1zdHJva2UpO1xufVxuLnUtYmctY29sb3ItdGV4dCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXRleHQpO1xufVxuLnUtYmctY29sb3ItdGV4dC1saWdodCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXRleHQtbGlnaHQpO1xufVxuXG4vKipcbiAqIEJhY2tncm91bmRcbiAqIEdyb3VwOiBVdGlsaXRpZXNcbiAqL1xuLnUtYnItdCB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCBjdXJyZW50Y29sb3I7XG59XG5cbi51LWJyLWIge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgY3VycmVudGNvbG9yO1xufVxuXG4udS1ici1sIHtcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCBjdXJyZW50Y29sb3I7XG59XG5cbi51LWJyLXIge1xuICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCBjdXJyZW50Y29sb3I7XG59XG5cbi51LWJyYy1ncmF5LTUwIHtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1uZXV0cmFsLTUwKTtcbn1cblxuLyoqXG4gKiBDbGVhcmZpeFxuICogR3JvdXA6IFV0aWxpdGllc1xuICovXG4udS1jbGVhcmZpeDo6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiICFpbXBvcnRhbnQ7XG4gIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIGNsZWFyOiBib3RoICFpbXBvcnRhbnQ7XG59XG5cbi8qKlxuICogQ29sb3JcbiAqIEdyb3VwOiBVdGlsaXRpZXNcbiAqL1xuLnUtY29sb3ItYnJhbmQtYnJvd24tc2VtaS10cmFuc3BhcmVudCB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1icm93bi1zZW1pLXRyYW5zcGFyZW50KTtcbn1cbi51LWNvbG9yLWJyYW5kLWJyb3duIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJyb3duKTtcbn1cbi51LWNvbG9yLWJyYW5kLXJlZC1zZW1pLXRyYW5zcGFyZW50IHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLXJlZC1zZW1pLXRyYW5zcGFyZW50KTtcbn1cbi51LWNvbG9yLWJyYW5kLWRhcmstcmVkIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWRhcmstcmVkKTtcbn1cbi51LWNvbG9yLWJyYW5kLXJlZCB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1yZWQpO1xufVxuLnUtY29sb3ItYWxlcnQtZ3JlZW4tZGFyayB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1hbGVydC1ncmVlbi1kYXJrKTtcbn1cbi51LWNvbG9yLWJyYW5kLWdyZWVuIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWdyZWVuKTtcbn1cbi51LWNvbG9yLWJyYW5kLWJsdWUge1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG59XG4udS1jb2xvci1icmFuZC1ibHVlLWxpZ2h0IHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUtbGlnaHQpO1xufVxuLnUtY29sb3ItYnJhbmQtYmx1ZS1saWdodC1zZW1pLXRyYW5zcGFyZW50IHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUtbGlnaHQtc2VtaS10cmFuc3BhcmVudCk7XG59XG4udS1jb2xvci1icmFuZC1ibHVlLXNlbWktdHJhbnNwYXJlbnQge1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZS1zZW1pLXRyYW5zcGFyZW50KTtcbn1cbi51LWNvbG9yLWJyYW5kLW9yYW5nZSB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1vcmFuZ2UpO1xufVxuLnUtY29sb3ItYnJhbmQtZGFyay1ncmF5IHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWRhcmstZ3JheSk7XG59XG4udS1jb2xvci1icmFuZC1ncmF5IHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWdyYXkpO1xufVxuLnUtY29sb3ItYnJhbmQtYmx1ZS1kYXJrIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUtZGFyayk7XG59XG4udS1jb2xvci1icmFuZC13aGl0ZSB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC13aGl0ZSk7XG59XG4udS1jb2xvci1icmFuZC1saWdodC1ncmF5IHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWxpZ2h0LWdyYXkpO1xufVxuLnUtY29sb3ItYnJhbmQtbGlnaHRlci1ncmF5IHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWxpZ2h0ZXItZ3JheSk7XG59XG4udS1jb2xvci1icmFuZC1zZWFyY2gtZ3JheSB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1zZWFyY2gtZ3JheSk7XG59XG4udS1jb2xvci1uZXV0cmFsLTEwMDAge1xuICBjb2xvcjogdmFyKC0tY29sb3ItbmV1dHJhbC0xMDAwKTtcbn1cbi51LWNvbG9yLW5ldXRyYWwtOTc1IHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLW5ldXRyYWwtOTc1KTtcbn1cbi51LWNvbG9yLW5ldXRyYWwtOTUwIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLW5ldXRyYWwtOTUwKTtcbn1cbi51LWNvbG9yLW5ldXRyYWwtOTAwIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLW5ldXRyYWwtOTAwKTtcbn1cbi51LWNvbG9yLW5ldXRyYWwtODAwIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLW5ldXRyYWwtODAwKTtcbn1cbi51LWNvbG9yLW5ldXRyYWwtNzAwIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLW5ldXRyYWwtNzAwKTtcbn1cbi51LWNvbG9yLW5ldXRyYWwtNjAwIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLW5ldXRyYWwtNjAwKTtcbn1cbi51LWNvbG9yLW5ldXRyYWwtNTAwIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLW5ldXRyYWwtNTAwKTtcbn1cbi51LWNvbG9yLW5ldXRyYWwtNDAwIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLW5ldXRyYWwtNDAwKTtcbn1cbi51LWNvbG9yLW5ldXRyYWwtMzAwIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLW5ldXRyYWwtMzAwKTtcbn1cbi51LWNvbG9yLW5ldXRyYWwtMjAwIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLW5ldXRyYWwtMjAwKTtcbn1cbi51LWNvbG9yLW5ldXRyYWwtMTAwIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLW5ldXRyYWwtMTAwKTtcbn1cbi51LWNvbG9yLW5ldXRyYWwtMDUwIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLW5ldXRyYWwtMDUwKTtcbn1cbi51LWNvbG9yLW5ldXRyYWwtMDAwIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLW5ldXRyYWwtMDAwKTtcbn1cbi51LWNvbG9yLWRhcmsge1xuICBjb2xvcjogdmFyKC0tY29sb3ItZGFyayk7XG59XG4udS1jb2xvci1saWdodCB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1saWdodCk7XG59XG4udS1jb2xvci1mYWRlLWxpZ2h0LTUge1xuICBjb2xvcjogdmFyKC0tY29sb3ItZmFkZS1saWdodC01KTtcbn1cbi51LWNvbG9yLWZhZGUtbGlnaHQtMTAge1xuICBjb2xvcjogdmFyKC0tY29sb3ItZmFkZS1saWdodC0xMCk7XG59XG4udS1jb2xvci1mYWRlLWxpZ2h0LTIwIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWZhZGUtbGlnaHQtMjApO1xufVxuLnUtY29sb3ItZmFkZS1saWdodC0zMCB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1mYWRlLWxpZ2h0LTMwKTtcbn1cbi51LWNvbG9yLWZhZGUtbGlnaHQtNDAge1xuICBjb2xvcjogdmFyKC0tY29sb3ItZmFkZS1saWdodC00MCk7XG59XG4udS1jb2xvci1mYWRlLWxpZ2h0LTUwIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWZhZGUtbGlnaHQtNTApO1xufVxuLnUtY29sb3ItZmFkZS1saWdodC02MCB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1mYWRlLWxpZ2h0LTYwKTtcbn1cbi51LWNvbG9yLWZhZGUtbGlnaHQtNzAge1xuICBjb2xvcjogdmFyKC0tY29sb3ItZmFkZS1saWdodC03MCk7XG59XG4udS1jb2xvci1mYWRlLWxpZ2h0LTgwIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWZhZGUtbGlnaHQtODApO1xufVxuLnUtY29sb3ItZmFkZS1saWdodC05MCB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1mYWRlLWxpZ2h0LTkwKTtcbn1cbi51LWNvbG9yLWZhZGUtZGFyay01IHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWZhZGUtZGFyay01KTtcbn1cbi51LWNvbG9yLWZhZGUtZGFyay0xMCB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1mYWRlLWRhcmstMTApO1xufVxuLnUtY29sb3ItZmFkZS1kYXJrLTIwIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWZhZGUtZGFyay0yMCk7XG59XG4udS1jb2xvci1mYWRlLWRhcmstMzAge1xuICBjb2xvcjogdmFyKC0tY29sb3ItZmFkZS1kYXJrLTMwKTtcbn1cbi51LWNvbG9yLWZhZGUtZGFyay00MCB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1mYWRlLWRhcmstNDApO1xufVxuLnUtY29sb3ItZmFkZS1kYXJrLTUwIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWZhZGUtZGFyay01MCk7XG59XG4udS1jb2xvci1mYWRlLWRhcmstNjAge1xuICBjb2xvcjogdmFyKC0tY29sb3ItZmFkZS1kYXJrLTYwKTtcbn1cbi51LWNvbG9yLWZhZGUtZGFyay03MCB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1mYWRlLWRhcmstNzApO1xufVxuLnUtY29sb3ItZmFkZS1kYXJrLTgwIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWZhZGUtZGFyay04MCk7XG59XG4udS1jb2xvci1mYWRlLWRhcmstOTAge1xuICBjb2xvcjogdmFyKC0tY29sb3ItZmFkZS1kYXJrLTkwKTtcbn1cbi51LWNvbG9yLWZvY3VzLXN0cm9rZSB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1mb2N1cy1zdHJva2UpO1xufVxuLnUtY29sb3ItdGV4dCB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0KTtcbn1cbi51LWNvbG9yLXRleHQtbGlnaHQge1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1saWdodCk7XG59XG5cbi8qKlxuICogQ29va2llcyBDb2xvcnNcbiAqIEdyb3VwOiBVdGlsaXRpZXNcbiAqL1xuLmJ0bi1iZ2NvbG9yLTAwMDAwMCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDAwMDA7XG59XG5cbi5idG4tdGV4dGNvbG9yLTAwMDAwMCB7XG4gIGNvbG9yOiAjMDAwMDAwO1xufVxuXG4uY29va2llcy1iZ2NvbG9yLTAwMDAwMCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDAwMDA7XG59XG5cbi5idG4tYmdjb2xvci1mZmZmZmYge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xufVxuXG4uYnRuLXRleHRjb2xvci1mZmZmZmYge1xuICBjb2xvcjogI2ZmZmZmZjtcbn1cblxuLmNvb2tpZXMtYmdjb2xvci1mZmZmZmYge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xufVxuXG4uYnRuLWJnY29sb3ItMDAzMzc1IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMzM3NTtcbn1cblxuLmJ0bi10ZXh0Y29sb3ItMDAzMzc1IHtcbiAgY29sb3I6ICMwMDMzNzU7XG59XG5cbi5jb29raWVzLWJnY29sb3ItMDAzMzc1IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMzM3NTtcbn1cblxuLmJ0bi1iZ2NvbG9yLTRiNjU4NyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM0YjY1ODc7XG59XG5cbi5idG4tdGV4dGNvbG9yLTRiNjU4NyB7XG4gIGNvbG9yOiAjNGI2NTg3O1xufVxuXG4uY29va2llcy1iZ2NvbG9yLTRiNjU4NyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM0YjY1ODc7XG59XG5cbi5idG4tYmdjb2xvci1mODliMzQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjg5YjM0O1xufVxuXG4uYnRuLXRleHRjb2xvci1mODliMzQge1xuICBjb2xvcjogI2Y4OWIzNDtcbn1cblxuLmNvb2tpZXMtYmdjb2xvci1mODliMzQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjg5YjM0O1xufVxuXG4uYnRuLWJnY29sb3ItNTc1NzU3IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU3NTc1Nztcbn1cblxuLmJ0bi10ZXh0Y29sb3ItNTc1NzU3IHtcbiAgY29sb3I6ICM1NzU3NTc7XG59XG5cbi5jb29raWVzLWJnY29sb3ItNTc1NzU3IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU3NTc1Nztcbn1cblxuLyoqXG4gKiBEaXNwbGF5XG4gKiBHcm91cDogVXRpbGl0aWVzXG4gKi9cbi51LWhpZGRlbiB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLnUtZC1mbGV4IHtcbiAgZGlzcGxheTogZmxleDtcbn1cblxuLnUtZC1ibG9jayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4udS1kLWlubGluZS1ibG9jayB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLnUtcG9zLXJlbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLnUtb3ZlcmZsb3ctaCB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5pcy11bmluaXRpYWxpemVkIHtcbiAgb3BhY2l0eTogMDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbi8qKlxuICogSWNvblxuICogR3JvdXA6IFV0aWxpdGllc1xuICovXG5bY2xhc3MqPXUtaWNvbl0ge1xuICB3aWR0aDogYXV0bztcbn1cblxuLyogaWNvbiBzaXplICovXG4udS1pY29uLXhzIHtcbiAgZm9udC1zaXplOiB2YXIoLS1pY29uLXhzKTtcbiAgaGVpZ2h0OiB2YXIoLS1pY29uLXhzKTtcbiAgbWluLXdpZHRoOiB2YXIoLS1pY29uLXhzKTtcbn1cblxuLnUtaWNvbi1zbSB7XG4gIGZvbnQtc2l6ZTogdmFyKC0taWNvbi1zbSk7XG4gIGhlaWdodDogdmFyKC0taWNvbi1zbSk7XG4gIG1pbi13aWR0aDogdmFyKC0taWNvbi1zbSk7XG59XG5cbi51LWljb24tbWQge1xuICBmb250LXNpemU6IHZhcigtLWljb24tbWQpO1xuICBoZWlnaHQ6IHZhcigtLWljb24tbWQpO1xuICBtaW4td2lkdGg6IHZhcigtLWljb24tbWQpO1xufVxuXG4udS1pY29uLWxnIHtcbiAgZm9udC1zaXplOiB2YXIoLS1pY29uLWxnKTtcbiAgaGVpZ2h0OiB2YXIoLS1pY29uLWxnKTtcbiAgbWluLXdpZHRoOiB2YXIoLS1pY29uLWxnKTtcbn1cblxuLnUtaWNvbi14bCB7XG4gIGZvbnQtc2l6ZTogdmFyKC0taWNvbi14bCk7XG4gIGhlaWdodDogdmFyKC0taWNvbi14bCk7XG4gIG1pbi13aWR0aDogdmFyKC0taWNvbi14bCk7XG59XG5cbi51LWljb24tMnhsIHtcbiAgZm9udC1zaXplOiB2YXIoLS1pY29uLTJ4bCk7XG4gIGhlaWdodDogdmFyKC0taWNvbi0yeGwpO1xuICBtaW4td2lkdGg6IHZhcigtLWljb24tMnhsKTtcbn1cblxuLnUtaWNvbi0zeGwge1xuICBmb250LXNpemU6IHZhcigtLWljb24tM3hsKTtcbiAgaGVpZ2h0OiB2YXIoLS1pY29uLTN4bCk7XG4gIG1pbi13aWR0aDogdmFyKC0taWNvbi0zeGwpO1xufVxuXG4udS1pY29uLTR4bCB7XG4gIGZvbnQtc2l6ZTogdmFyKC0taWNvbi00eGwpO1xuICBoZWlnaHQ6IHZhcigtLWljb24tNHhsKTtcbiAgbWluLXdpZHRoOiB2YXIoLS1pY29uLTR4bCk7XG59XG5cbi51LWljb24tLXJvdW5kZWQge1xuICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4vKipcbiAqIExvYWRpbmdcbiAqIEdyb3VwOiBVdGlsaXRpZXNcbiAqL1xuLnUtaXMtbG9hZGluZyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3BhY2l0eTogMC43O1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dDtcbn1cblxuLnUtaXMtbG9hZGluZzo6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIHdpZHRoOiAzMHB4O1xuICBoZWlnaHQ6IDMwcHg7XG4gIG1hcmdpbjogLTE1cHggMCAwIC0xNXB4O1xuICBib3JkZXI6IDNweCBzb2xpZCByZ2JhKDY1LCAxMTksIDE3NSwgMC4zKTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBib3JkZXItdG9wLWNvbG9yOiAjNDE3N2FmO1xuICBhbmltYXRpb246IHNwaW4gdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbi1zbG93KSBlYXNlLWluLW91dCBpbmZpbml0ZTtcbn1cblxuLyoqXG4gKiBNYXJnaW5cbiAqIEdyb3VwOiBVdGlsaXRpZXNcbiAqL1xuLyogWmVybyBtYXJnaW5zICovXG4udS1tLTAge1xuICBtYXJnaW46IDA7XG59XG5cbi51LW1iLTAge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4udS1tdC0wIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cblxuLnUtbWwtMCB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuXG4udS1tci0wIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xufVxuXG4vKiBBdXRvIG1hcmdpbnMgKi9cbi51LW1sLWF1dG8ge1xuICBtYXJnaW4tbGVmdDogYXV0bztcbn1cblxuLnUtbXItYXV0byB7XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbn1cblxuLnUtbXQtYXV0byB7XG4gIG1hcmdpbi10b3A6IGF1dG87XG59XG5cbi51LW1iLWF1dG8ge1xuICBtYXJnaW4tYm90dG9tOiBhdXRvO1xufVxuXG4vKiBWZXJ0aWNhbCBtYXJnaW5zICovXG4udS1tYmwtMTAwIHtcbiAgbWFyZ2luLWJsb2NrOiB2YXIoLS1zcGFjaW5nLTEwMCk7XG59XG5cbi51LW10LFxuLnUtbXQtbWQge1xuICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjZS1tZCk7XG59XG5cbi51LW10LXhzIHtcbiAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2UteHMpO1xufVxuXG4udS1tdC1zbSB7XG4gIG1hcmdpbi10b3A6IHZhcigtLXNwYWNlLXNtKTtcbn1cblxuLnUtbXQtbGcge1xuICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjZS1sZyk7XG59XG5cbi51LW10LXhsIHtcbiAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2UteGwpO1xufVxuXG4udS1tdC0yeGwge1xuICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjZS0yeGwpO1xufVxuXG4udS1tdC0zeGwge1xuICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjZS0zeGwpO1xufVxuXG4udS1tdC00eGwge1xuICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjZS00eGwpO1xufVxuXG4udS1tdC0yMDAge1xuICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjaW5nLTIwMCk7XG59XG5cbi51LW1iLTIwMCB7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctMjAwKTtcbn1cblxuLnUtbWIsXG4udS1tYi1tZCB7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNlLW1kKTtcbn1cblxuLnUtbWIteHMge1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjZS14cyk7XG59XG5cbi51LW1iLXNtIHtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2Utc20pO1xufVxuXG4udS1tYi1sZyB7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNlLWxnKTtcbn1cblxuLnUtbWIteGwge1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjZS14bCk7XG59XG5cbi51LW1iLTJ4bCB7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNlLTJ4bCk7XG59XG5cbi51LW1iLTN4bCB7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNlLTN4bCk7XG59XG5cbi51LW1iLTR4bCB7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNlLTR4bCk7XG59XG5cbi8qIEhvcml6b250YWwgbWFyZ2lucyAqL1xuLnUtbWwsXG4udS1tbC1tZCB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoLS1zcGFjZS1tZCk7XG59XG5cbi51LW1sLXhzIHtcbiAgbWFyZ2luLWxlZnQ6IHZhcigtLXNwYWNlLXhzKTtcbn1cblxuLnUtbWwtc20ge1xuICBtYXJnaW4tbGVmdDogdmFyKC0tc3BhY2Utc20pO1xufVxuXG4udS1tbC1sZyB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoLS1zcGFjZS1sZyk7XG59XG5cbi51LW1sLXhsIHtcbiAgbWFyZ2luLWxlZnQ6IHZhcigtLXNwYWNlLXhsKTtcbn1cblxuLnUtbWwtMnhsIHtcbiAgbWFyZ2luLWxlZnQ6IHZhcigtLXNwYWNlLTJ4bCk7XG59XG5cbi51LW1sLTN4bCB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoLS1zcGFjZS0zeGwpO1xufVxuXG4udS1tbC00eGwge1xuICBtYXJnaW4tbGVmdDogdmFyKC0tc3BhY2UtNHhsKTtcbn1cblxuLnUtbXIsXG4udS1tci1tZCB7XG4gIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2UtbWQpO1xufVxuXG4udS1tci14cyB7XG4gIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2UteHMpO1xufVxuXG4udS1tci1zbSB7XG4gIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2Utc20pO1xufVxuXG4udS1tci1sZyB7XG4gIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2UtbGcpO1xufVxuXG4udS1tci14bCB7XG4gIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2UteGwpO1xufVxuXG4udS1tci0yeGwge1xuICBtYXJnaW4tcmlnaHQ6IHZhcigtLXNwYWNlLTJ4bCk7XG59XG5cbi51LW1yLTN4bCB7XG4gIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2UtM3hsKTtcbn1cblxuLnUtbXItNHhsIHtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjZS00eGwpO1xufVxuXG4vKipcbiAqIE9wYWNpdHlcbiAqIEdyb3VwOiBVdGlsaXRpZXNcbiAqL1xuLnUtb3BhY2l0eS01IHtcbiAgLS1vcGFjaXR5OiAwLjA1O1xufVxuXG4udS1vcGFjaXR5LTEwIHtcbiAgLS1vcGFjaXR5OiAwLjE7XG59XG5cbi51LW9wYWNpdHktMTUge1xuICAtLW9wYWNpdHk6IDAuMTU7XG59XG5cbi51LW9wYWNpdHktMjAge1xuICAtLW9wYWNpdHk6IDAuMjtcbn1cblxuLnUtb3BhY2l0eS0yNSB7XG4gIC0tb3BhY2l0eTogMC4yNTtcbn1cblxuLnUtb3BhY2l0eS0zMCB7XG4gIC0tb3BhY2l0eTogMC4zO1xufVxuXG4udS1vcGFjaXR5LTM1IHtcbiAgLS1vcGFjaXR5OiAwLjM1O1xufVxuXG4udS1vcGFjaXR5LTQwIHtcbiAgLS1vcGFjaXR5OiAwLjQ7XG59XG5cbi51LW9wYWNpdHktNDUge1xuICAtLW9wYWNpdHk6IDAuNDU7XG59XG5cbi51LW9wYWNpdHktNTAge1xuICAtLW9wYWNpdHk6IDAuNTtcbn1cblxuLnUtb3BhY2l0eS01NSB7XG4gIC0tb3BhY2l0eTogMC41NTtcbn1cblxuLnUtb3BhY2l0eS02MCB7XG4gIC0tb3BhY2l0eTogMC42O1xufVxuXG4udS1vcGFjaXR5LTY1IHtcbiAgLS1vcGFjaXR5OiAwLjY1O1xufVxuXG4udS1vcGFjaXR5LTcwIHtcbiAgLS1vcGFjaXR5OiAwLjc7XG59XG5cbi51LW9wYWNpdHktNzUge1xuICAtLW9wYWNpdHk6IDAuNzU7XG59XG5cbi51LW9wYWNpdHktODAge1xuICAtLW9wYWNpdHk6IDAuODtcbn1cblxuLnUtb3BhY2l0eS04NSB7XG4gIC0tb3BhY2l0eTogMC44NTtcbn1cblxuLnUtb3BhY2l0eS05MCB7XG4gIC0tb3BhY2l0eTogMC45O1xufVxuXG4udS1vcGFjaXR5LTk1IHtcbiAgLS1vcGFjaXR5OiAwLjk1O1xufVxuXG4udS1vcGFjaXR5LTEwMCB7XG4gIC0tb3BhY2l0eTogMTtcbn1cblxuLyoqXG4gKiBQYWRkaW5nXG4gKiBHcm91cDogVXRpbGl0aWVzXG4gKi9cbi8qIFplcm8gcGFkZGluZ3MgKi9cbi51LXAtMCB7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi51LXB0LTAge1xuICBwYWRkaW5nLXRvcDogMDtcbn1cblxuLnUtcGItMCB7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xufVxuXG4udS1wbC0wIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xufVxuXG4udS1wci0wIHtcbiAgcGFkZGluZy1yaWdodDogMDtcbn1cblxuLyogVmVydGljYWwgcGFkZGluZ3MgKi9cbi51LXB0LFxuLnUtcHQtbWQge1xuICBwYWRkaW5nLXRvcDogdmFyKC0tc3BhY2UtbWQpO1xufVxuXG4udS1wdC14cyB7XG4gIHBhZGRpbmctdG9wOiB2YXIoLS1zcGFjZS14cyk7XG59XG5cbi51LXB0LXNtIHtcbiAgcGFkZGluZy10b3A6IHZhcigtLXNwYWNlLXNtKTtcbn1cblxuLnUtcHQtbGcge1xuICBwYWRkaW5nLXRvcDogdmFyKC0tc3BhY2UtbGcpO1xufVxuXG4udS1wdC14bCB7XG4gIHBhZGRpbmctdG9wOiB2YXIoLS1zcGFjZS14bCk7XG59XG5cbi51LXB0LTJ4bCB7XG4gIHBhZGRpbmctdG9wOiB2YXIoLS1zcGFjZS0yeGwpO1xufVxuXG4udS1wYixcbi51LXBiLW1kIHtcbiAgcGFkZGluZy1ib3R0b206IHZhcigtLXNwYWNlLW1kKTtcbn1cblxuLnUtcGIteHMge1xuICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tc3BhY2UteHMpO1xufVxuXG4udS1wYi1zbSB7XG4gIHBhZGRpbmctYm90dG9tOiB2YXIoLS1zcGFjZS1zbSk7XG59XG5cbi51LXBiLWxnIHtcbiAgcGFkZGluZy1ib3R0b206IHZhcigtLXNwYWNlLWxnKTtcbn1cblxuLnUtcGIteGwge1xuICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tc3BhY2UteGwpO1xufVxuXG4udS1wYi0yeGwge1xuICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tc3BhY2UtMnhsKTtcbn1cblxuLyogSG9yaXpvbnRhbCBwYWRkaW5ncyAqL1xuLnUtcGwsXG4udS1wbC1tZCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKC0tc3BhY2UtbWQpO1xufVxuXG4udS1wbC14cyB7XG4gIHBhZGRpbmctbGVmdDogdmFyKC0tc3BhY2UteHMpO1xufVxuXG4udS1wbC1zbSB7XG4gIHBhZGRpbmctbGVmdDogdmFyKC0tc3BhY2Utc20pO1xufVxuXG4udS1wbC1sZyB7XG4gIHBhZGRpbmctbGVmdDogdmFyKC0tc3BhY2UtbGcpO1xufVxuXG4udS1wbC14bCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKC0tc3BhY2UteGwpO1xufVxuXG4udS1wbC0yeGwge1xuICBwYWRkaW5nLWxlZnQ6IHZhcigtLXNwYWNlLTJ4bCk7XG59XG5cbi51LXByLFxuLnUtcHItbWQge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1zcGFjZS1tZCk7XG59XG5cbi51LXByLXhzIHtcbiAgcGFkZGluZy1yaWdodDogdmFyKC0tc3BhY2UteHMpO1xufVxuXG4udS1wci1zbSB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhcigtLXNwYWNlLXNtKTtcbn1cblxuLnUtcHItbGcge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1zcGFjZS1sZyk7XG59XG5cbi51LXByLXhsIHtcbiAgcGFkZGluZy1yaWdodDogdmFyKC0tc3BhY2UteGwpO1xufVxuXG4udS1wci0yeGwge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1zcGFjZS0yeGwpO1xufVxuXG4vKlxuICogU2l6ZVxuICogR3JvdXA6IFV0aWxpdGllc1xuICovXG4vKiBXaWR0aCBVdGlsaXRpZXMgKi9cbi51LW1pbi13MCB7XG4gIG1pbi13aWR0aDogMDtcbn1cblxuLnUtbWF4LXcwIHtcbiAgbWF4LXdpZHRoOiAwO1xufVxuXG4udS13MTAwIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi8qIEhlaWdodCBVdGlsaXRpZXMgKi9cbi51LW1pbi1oMCB7XG4gIG1pbi1oZWlnaHQ6IDA7XG59XG5cbi51LW1heC1oMCB7XG4gIG1heC1oZWlnaHQ6IDA7XG59XG5cbi51LWgxMDAge1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbi51LWZ1bGwtd2lkdGgge1xuICBtaW4td2lkdGg6IDEwMHZ3O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi1sZWZ0OiAtNTB2dztcbiAgbGVmdDogNTAlO1xufVxuXG4vKipcbiAqIFNwYWNlIFhcbiAqIEdyb3VwOiBVdGlsaXRpZXNcbiAqL1xuW2NsYXNzKj11LXNwYWNlLXhdID4gKiB7XG4gIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50O1xufVxuW2NsYXNzKj11LXNwYWNlLXhdID4gKiArICoge1xuICBtYXJnaW4tbGVmdDogdmFyKC0tc3BhY2UtbWQpICFpbXBvcnRhbnQ7XG59XG5cbmJvZHkgLnUtc3BhY2UteC1zbSA+ICogKyAqIHtcbiAgbWFyZ2luLWxlZnQ6IHZhcigtLXNwYWNlLXNtKSAhaW1wb3J0YW50O1xufVxuYm9keSAudS1zcGFjZS14LWxnID4gKiArICoge1xuICBtYXJnaW4tbGVmdDogdmFyKC0tc3BhY2UtbGcpICFpbXBvcnRhbnQ7XG59XG5ib2R5IC51LXNwYWNlLXgteGwgPiAqICsgKiB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoLS1zcGFjZS14bCkgIWltcG9ydGFudDtcbn1cbmJvZHkgLnUtc3BhY2UteC0yeGwgPiAqICsgKiB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoLS1zcGFjZS0yeGwpICFpbXBvcnRhbnQ7XG59XG5cbi8qKlxuICogVHlwb2dyYXBoeVxuICpcbiAqIEdyb3VwOiBVdGlsaXRpZXNcbiAqL1xuLnUtZm9udC1wcmltYXJ5IHtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtcHJpbWFyeSkgIWltcG9ydGFudDtcbn1cbi51LWZvbnQtcHJpbWFyeSAqIHtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtcHJpbWFyeSkgIWltcG9ydGFudDtcbn1cblxuLyogRm9udCBUeXBlcyAqL1xuLnUtZm9udC1oMSB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LXByaW1hcnkpO1xuICBmb250LXNpemU6IHZhcigtLWgxLWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1oMS1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1oMS1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbn1cblxuLnUtZm9udC1oMiB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LXByaW1hcnkpO1xuICBmb250LXNpemU6IHZhcigtLWgyLWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1oMi1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1oMi1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbn1cblxuLnUtZm9udC1oMyB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LXByaW1hcnkpO1xuICBmb250LXNpemU6IHZhcigtLWgzLWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1oMy1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1oMy1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbn1cblxuLnUtZm9udC1oNCB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LXByaW1hcnkpO1xuICBmb250LXNpemU6IHZhcigtLWg0LWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1oNC1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1oNC1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbn1cblxuLnUtZm9udC1oNSB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LXByaW1hcnkpO1xuICBmb250LXNpemU6IHZhcigtLWg1LWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1oNS1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1oNS1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbn1cblxuLnUtZm9udC1oNiB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LXByaW1hcnkpO1xuICBmb250LXNpemU6IHZhcigtLWg2LWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1oNi1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1oNi1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbn1cblxuLnUtZm9udC1wIHtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1ib2R5LWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWJvZHktbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG59XG5cbi51LWZvbnQtc20ge1xuICBmb250LXNpemU6IHZhcigtLWJvZHktc21hbGwtZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWJvZHktc21hbGwtbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tYm9keS1zbWFsbC1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbn1cblxuLnUtZm9udC1tZCB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tYm9keS1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xufVxuXG4udS1mb250LWxnIHtcbiAgZm9udC1zaXplOiB2YXIoLS1ib2R5LW1lZGl1bS1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tYm9keS1tZWRpdW0tbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tYm9keS1tZWRpdW0tbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG59XG5cbi8qIEZvbnQgU2l6ZXMgKi9cbi51LWZ6LWgxIHtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtcHJpbWFyeSk7XG4gIGZvbnQtc2l6ZTogdmFyKC0taDEtZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWgxLWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWgxLWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xufVxuXG4udS1mei1oMiB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LXByaW1hcnkpO1xuICBmb250LXNpemU6IHZhcigtLWgyLWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1oMi1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1oMi1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbn1cblxuLnUtZnotaDMge1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1wcmltYXJ5KTtcbiAgZm9udC1zaXplOiB2YXIoLS1oMy1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0taDMtbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0taDMtbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG59XG5cbi51LWZ6LWg0IHtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtcHJpbWFyeSk7XG4gIGZvbnQtc2l6ZTogdmFyKC0taDQtZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWg0LWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWg0LWxpbmUtaGVpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xufVxuXG4udS1mei1oNSB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LXByaW1hcnkpO1xuICBmb250LXNpemU6IHZhcigtLWg1LWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1oNS1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1oNS1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbn1cblxuLnUtZnotaDYge1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1wcmltYXJ5KTtcbiAgZm9udC1zaXplOiB2YXIoLS1oNi1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0taDYtbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0taDYtbGluZS1oZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG59XG5cbi51LWZ6LXAge1xuICBmb250LXNpemU6IHZhcigtLWJvZHktZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWJvZHktbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tYm9keS1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbn1cblxuLnUtZnotc20ge1xuICBmb250LXNpemU6IHZhcigtLWJvZHktc21hbGwtZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWJvZHktc21hbGwtbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tYm9keS1zbWFsbC1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbn1cblxuLnUtZnotbWQge1xuICBmb250LXNpemU6IHZhcigtLWJvZHktZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWJvZHktbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tYm9keS1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbn1cblxuLnUtZnotbGcge1xuICBmb250LXNpemU6IHZhcigtLWJvZHktbWVkaXVtLWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1ib2R5LW1lZGl1bS1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LW1lZGl1bS1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbn1cblxuLyogVGV4dCBhbGlnbm1lbnQgKi9cbi51LXRhLXJpZ2h0IHtcbiAgdGV4dC1hbGlnbjogcmlnaHQgIWltcG9ydGFudDtcbn1cblxuLnUtdGEtbGVmdCB7XG4gIHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDtcbn1cblxuLnUtdGEtY2VudGVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7XG59XG5cbi8qIFRleHQgdHJhbnNmb3JtICovXG4udS10dC11cCB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2UgIWltcG9ydGFudDtcbn1cblxuLnUtdHQtY2FwIHtcbiAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemUgIWltcG9ydGFudDtcbn1cblxuLyogRm9udCB3ZWlnaHRzICovXG4udS1mdy1ub3JtYWwge1xuICBmb250LXdlaWdodDogbm9ybWFsICFpbXBvcnRhbnQ7XG59XG5cbi51LWZ3LWJvbGQge1xuICBmb250LXdlaWdodDogYm9sZCAhaW1wb3J0YW50O1xufVxuXG4udS1mdy1leHRyYS1ib2xkIHtcbiAgZm9udC13ZWlnaHQ6IDgwMCAhaW1wb3J0YW50O1xufVxuXG4udS1mdy1ibGFjayB7XG4gIGZvbnQtd2VpZ2h0OiA5MDAgIWltcG9ydGFudDtcbn1cblxuLnUtZnctMzAwIHtcbiAgZm9udC13ZWlnaHQ6IDMwMCAhaW1wb3J0YW50O1xufVxuXG4udS1mdy00MDAge1xuICBmb250LXdlaWdodDogNDAwICFpbXBvcnRhbnQ7XG59XG5cbi51LWZ3LTUwMCB7XG4gIGZvbnQtd2VpZ2h0OiA1MDAgIWltcG9ydGFudDtcbn1cblxuLnUtZnctNjAwIHtcbiAgZm9udC13ZWlnaHQ6IDYwMCAhaW1wb3J0YW50O1xufVxuXG4udS1mdy03MDAge1xuICBmb250LXdlaWdodDogNzAwICFpbXBvcnRhbnQ7XG59XG5cbi51LWZ3LTgwMCB7XG4gIGZvbnQtd2VpZ2h0OiA4MDAgIWltcG9ydGFudDtcbn1cblxuLnUtZnctOTAwIHtcbiAgZm9udC13ZWlnaHQ6IDkwMCAhaW1wb3J0YW50O1xufVxuXG4vKiBUcnVuY2F0ZSB0ZXh0ICovXG4udS10cnVuY2F0ZSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4vKiBCcmVhayBXb3JkICovXG4udS1icmVhay13b3JkIHtcbiAgb3ZlcmZsb3ctd3JhcDogYnJlYWstd29yZDtcbiAgd29yZC1icmVhazogYnJlYWstd29yZDtcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbn1cblxuLyogSGlnaGxpZ2h0IHRleHQgKi9cbi51LWhpZ2hsaWdodCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLW9yYW5nZSk7XG59XG5cbi8qIFRleHQgZGVjb3JhdGlvbiAqL1xuLnUtdGQtbiB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLmhhcy10ZXh0LWFsaWduLWNlbnRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLmhhcy10ZXh0LWFsaWduLXJpZ2h0IHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG5cbi8qKlxuICogQ1NTIERlYnVnXG4gKiBHcm91cDogU2NvcGVzXG4gKi9cbi51LWNzcy1kZWJ1ZyB7XG4gIC8qKlxuICAgKiBPdXRsaW5lIGFsbCBjbGFzc2VzLlxuICAgKi9cbiAgLyoqXG4gICAqIE91dGxpbmUgYWxsIEJFTSBFbGVtZW50cy5cbiAgICovXG4gIC8qKlxuICAgKiBPdXRsaW5lIGFsbCBCRU0gTW9kaWZpZXJzLlxuICAgKi9cbiAgLyoqXG4gICAqIE91dGxpbmUgYWxsIE9iamVjdCBjbGFzc2VzLlxuICAgKi9cbiAgLyoqXG4gICAqIE91dGxpbmUgYWxsIENvbXBvbmVudCBjbGFzc2VzLlxuICAgKi9cbiAgLyoqXG4gICAqIE91dGxpbmUgYWxsIFJlc3BvbnNpdmUgY2xhc3Nlcy5cbiAgICovXG4gIC8qKlxuICAgKiBPdXRsaW5lIGFsbCBIYWNrIGNsYXNzZXMuXG4gICAqL1xuICAvKiBIZWFkZXJzIG91dCBvZiBvcmRlciAqL1xuICAvKipcbiAgICogRGVidWdnaW5nIDxoZWFkPiBzdHlsZXMuXG4gICAqL1xuICAvKipcbiAgICogRXh0ZXJuYWwgUmVzb3VyY2VzXG4gICAqL1xuICAvKipcbiAgICogSW5saW5lIFJlc291cmNlc1xuICAgKi9cbiAgLyoqXG4gICAqIEJsb2NrZWQgUmVzb3VyY2VzXG4gICAqL1xuICAvKipcbiAgICogVGhpcmQtcGFydHkgQmxvY2tpbmcgUmVzb3VyY2VzXG4gICAqL1xufVxuLnUtY3NzLWRlYnVnIFtjbGFzc10ge1xuICBvdXRsaW5lOiA1cHggc29saWQgbGlnaHRncmV5O1xufVxuLnUtY3NzLWRlYnVnIFtjbGFzcyo9X19dIHtcbiAgb3V0bGluZTogNXB4IHNvbGlkIGdyZXk7XG59XG4udS1jc3MtZGVidWcgW2NsYXNzKj1cIi0tXCJdIHtcbiAgb3V0bGluZTogNXB4IHNvbGlkIGRhcmtncmV5O1xufVxuLnUtY3NzLWRlYnVnIFtjbGFzc149by1dLFxuLnUtY3NzLWRlYnVnIFtjbGFzcyo9by1dIHtcbiAgb3V0bGluZTogNXB4IHNvbGlkIG9yYW5nZTtcbn1cbi51LWNzcy1kZWJ1ZyBbY2xhc3NePWMtXSxcbi51LWNzcy1kZWJ1ZyBbY2xhc3MqPVwiIGMtXCJdIHtcbiAgb3V0bGluZTogNXB4IHNvbGlkIGN5YW47XG59XG4udS1jc3MtZGVidWcgW2NsYXNzKj1cIkBcIl0ge1xuICBvdXRsaW5lOiA1cHggc29saWQgcm9zeWJyb3duO1xufVxuLnUtY3NzLWRlYnVnIFtjbGFzc149X10ge1xuICBvdXRsaW5lOiA1cHggc29saWQgcmVkO1xufVxuLnUtY3NzLWRlYnVnIDppcyhoMiwgaDMsIGg0LCBoNSwgaDYpIH4gaDEsXG4udS1jc3MtZGVidWcgOmlzKGgzLCBoNCwgaDUsIGg2KSB+IGgyLFxuLnUtY3NzLWRlYnVnIDppcyhoNCwgaDUsIGg2KSB+IGgzLFxuLnUtY3NzLWRlYnVnIDppcyhoNSwgaDYpIH4gaDQsXG4udS1jc3MtZGVidWcgaDYgfiBoNSB7XG4gIG91dGxpbmU6IDJweCBkb3R0ZWQgYmx1ZTtcbn1cbi51LWNzcy1kZWJ1ZyBoZWFkIHtcbiAgLS1jdC1pcy1wcm9ibGVtYXRpYzogc29saWQ7XG4gIC0tY3QtaXMtYWZmZWN0ZWQ6IGRhc2hlZDtcbiAgLS1jdC1ub3RpZnk6ICMwYmNlNmI7XG4gIC0tY3Qtd2FybjogI2ZmYTQwMDtcbiAgLS1jdC1lcnJvcjogI2ZmNGU0MjtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4udS1jc3MtZGVidWcgaGVhZCBzY3JpcHQsXG4udS1jc3MtZGVidWcgaGVhZCBzdHlsZSxcbi51LWNzcy1kZWJ1ZyBoZWFkIFtyZWw9c3R5bGVzaGVldF0sXG4udS1jc3MtZGVidWcgaGVhZCB0aXRsZSxcbi51LWNzcy1kZWJ1ZyBoZWFkIG1ldGFbY2hhcnNldF06bm90KDpudGgtY2hpbGQoLW4rNSkpIHtcbiAgbWFyZ2luOiA1cHg7XG4gIHBhZGRpbmc6IDVweDtcbiAgYm9yZGVyLXdpZHRoOiA1cHg7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICBjb2xvcjogIzMzMztcbn1cbi51LWNzcy1kZWJ1ZyBoZWFkIHNjcmlwdCxcbi51LWNzcy1kZWJ1ZyBoZWFkIHN0eWxlIHtcbiAgZm9udDogMTZweC8xLjUgbW9ub3NwYWNlO1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi51LWNzcy1kZWJ1ZyBoZWFkIHNjcmlwdDo6YmVmb3JlLFxuLnUtY3NzLWRlYnVnIGhlYWQgc3R5bGU6OmJlZm9yZSB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuLnUtY3NzLWRlYnVnIGhlYWQgc2NyaXB0W3NyY10sXG4udS1jc3MtZGVidWcgaGVhZCBsaW5rW3JlbD1zdHlsZXNoZWV0XSB7XG4gIGJvcmRlci1zdHlsZTogdmFyKC0tY3QtaXMtcHJvYmxlbWF0aWMpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWN0LXdhcm4pO1xufVxuLnUtY3NzLWRlYnVnIGhlYWQgc2NyaXB0W3NyY106OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiW0Jsb2NraW5nIFNjcmlwdCDigJMgXCIgYXR0cihzcmMpIFwiXVwiO1xufVxuLnUtY3NzLWRlYnVnIGhlYWQgbGlua1tyZWw9c3R5bGVzaGVldF06OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiW0Jsb2NraW5nIFN0eWxlc2hlZXQg4oCTIFwiIGF0dHIoaHJlZikgXCJdXCI7XG59XG4udS1jc3MtZGVidWcgaGVhZCBzdHlsZTpub3QoOmVtcHR5KSxcbi51LWNzcy1kZWJ1ZyBoZWFkIHNjcmlwdDpub3QoOmVtcHR5KSB7XG4gIG1heC1oZWlnaHQ6IDVlbTtcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmQ7XG4gIHdoaXRlLXNwYWNlOiBwcmU7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tY3Qtbm90aWZ5KTtcbiAgYm9yZGVyLXN0eWxlOiB2YXIoLS1jdC1pcy1wcm9ibGVtYXRpYyk7XG59XG4udS1jc3MtZGVidWcgaGVhZCBzY3JpcHQ6bm90KDplbXB0eSk6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiW0lubGluZSBTY3JpcHRdIFwiO1xufVxuLnUtY3NzLWRlYnVnIGhlYWQgc3R5bGU6bm90KDplbXB0eSk6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiW0lubGluZSBTdHlsZV0gXCI7XG59XG4udS1jc3MtZGVidWcgaGVhZCBzY3JpcHQ6bm90KDplbXB0eSkgfiB0aXRsZSxcbi51LWNzcy1kZWJ1ZyBoZWFkIHNjcmlwdFtzcmNdOm5vdChbYXN5bmNdLCBbZGVmZXJdLCBbdHlwZT1tb2R1bGVdKSB+IHRpdGxlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJvcmRlci1zdHlsZTogdmFyKC0tY3QtaXMtYWZmZWN0ZWQpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWN0LWVycm9yKTtcbn1cbi51LWNzcy1kZWJ1ZyBoZWFkIHNjcmlwdFtzcmNdW2FzeW5jXVtkZWZlcl0ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgYm9yZGVyLXN0eWxlOiB2YXIoLS1jdC1pcy1wcm9ibGVtYXRpYyk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tY3Qtd2Fybik7XG59XG4udS1jc3MtZGVidWcgaGVhZCBzY3JpcHQ6bm90KFtzcmNdKVthc3luY10sXG4udS1jc3MtZGVidWcgaGVhZCBzY3JpcHQ6bm90KFtzcmNdKVtkZWZlcl0ge1xuICBib3JkZXItc3R5bGU6IHZhcigtLWN0LWlzLXByb2JsZW1hdGljKTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jdC13YXJuKTtcbn1cbi51LWNzcy1kZWJ1ZyBoZWFkIHNjcmlwdDpub3QoW3NyY10pW2FzeW5jXTo6YmVmb3JlIHtcbiAgY29udGVudDogXCJUaGUgYXN5bmMgYXR0cmlidXRlIGlzIHJlZHVuZGFudCBvbiBpbmxpbmUgc2NyaXB0c1wiO1xufVxuLnUtY3NzLWRlYnVnIGhlYWQgc2NyaXB0Om5vdChbc3JjXSlbZGVmZXJdOjpiZWZvcmUge1xuICBjb250ZW50OiBcIlRoZSBkZWZlciBhdHRyaWJ1dGUgaXMgcmVkdW5kYW50IG9uIGlubGluZSBzY3JpcHRzXCI7XG59XG4udS1jc3MtZGVidWcgaGVhZCBzY3JpcHRbc3JjXj1odHRwXSxcbi51LWNzcy1kZWJ1ZyBoZWFkIFtyZWw9c3R5bGVzaGVldF1baHJlZl49aHR0cF0ge1xuICBib3JkZXItc3R5bGU6IHZhcigtLWN0LWlzLXByb2JsZW1hdGljKTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jdC1lcnJvcik7XG59XG4udS1jc3MtZGVidWcgaGVhZCBzY3JpcHRbc3JjXj1odHRwXTo6YmVmb3JlIHtcbiAgY29udGVudDogXCJbVGhpcmQgUGFydHkgQmxvY2tpbmcgU2NyaXB0IOKAkyBcIiBhdHRyKHNyYykgXCJdXCI7XG59XG4udS1jc3MtZGVidWcgaGVhZCBbcmVsPXN0eWxlc2hlZXRdW2hyZWZePWh0dHBdOjpiZWZvcmUge1xuICBjb250ZW50OiBcIltUaGlyZCBQYXJ0eSBCbG9ja2luZyBTdHlsZXNoZWV0IOKAkyBcIiBhdHRyKGhyZWYpIFwiXVwiO1xufSIsIi8qKlxuICogTWFpbiBMaWJyYXJpZXMgRmlsZVxuICogR3JvdXA6IExpYnJhcmllc1xuICovXG5cbkBmb3J3YXJkIFwic3dpcGVyXCI7XG4iLCIvKipcbiAqIFN3aXBlclxuICogR3JvdXA6IExpYnJhcmllc1xuICovXG5cbkB1c2UgXCJzd2lwZXIvc2Nzc1wiIGFzICo7XG5AdXNlIFwic3dpcGVyL3Njc3MvcGFnaW5hdGlvblwiIGFzICo7XG5AdXNlIFwic3dpcGVyL3Njc3MvbmF2aWdhdGlvblwiIGFzICo7XG4iLCIvKipcbiAqIFN3aXBlciAxMS4yLjEwXG4gKiBNb3N0IG1vZGVybiBtb2JpbGUgdG91Y2ggc2xpZGVyIGFuZCBmcmFtZXdvcmsgd2l0aCBoYXJkd2FyZSBhY2NlbGVyYXRlZCB0cmFuc2l0aW9uc1xuICogaHR0cHM6Ly9zd2lwZXJqcy5jb21cbiAqXG4gKiBDb3B5cmlnaHQgMjAxNC0yMDI1IFZsYWRpbWlyIEtoYXJsYW1waWRpXG4gKlxuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlXG4gKlxuICogUmVsZWFzZWQgb246IEp1bmUgMjgsIDIwMjVcbiAqL1xuXG5AdXNlICdzd2lwZXItdmFycy5zY3NzJyBhcyB2YXJzO1xuQGF0LXJvb3Qge1xuICBAZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogJ3N3aXBlci1pY29ucyc7XG4gICAgc3JjOiB1cmwoJ2RhdGE6YXBwbGljYXRpb24vZm9udC13b2ZmO2NoYXJzZXQ9dXRmLTg7YmFzZTY0LCBkMDlHUmdBQkFBQUFBQVpnQUJBQUFBQUFEQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQkdSbFJOQUFBR1JBQUFBQm9BQUFBY2k2cUhrVWRFUlVZQUFBV2dBQUFBSXdBQUFDUUFZQUJYUjFCUFV3QUFCaFFBQUFBdUFBQUFOdUFZNyt4SFUxVkNBQUFGeEFBQUFGQUFBQUJtMmZQY3pVOVRMeklBQUFIY0FBQUFTZ0FBQUdCUDlWNVJZMjFoY0FBQUFrUUFBQUNJQUFBQll0NkYwY0JqZG5RZ0FBQUN6QUFBQUFRQUFBQUVBQkVCUkdkaGMzQUFBQVdZQUFBQUNBQUFBQWovL3dBRFoyeDVaZ0FBQXl3QUFBRE1BQUFEMk1IdHJ5Vm9aV0ZrQUFBQmJBQUFBREFBQUFBMkUyK2VvV2hvWldFQUFBR2NBQUFBSHdBQUFDUUM5Z0R6YUcxMGVBQUFBaWdBQUFBWkFBQUFyZ0prQUJGc2IyTmhBQUFDMEFBQUFGb0FBQUJhRlFBVUdHMWhlSEFBQUFHOEFBQUFId0FBQUNBQWNBQkFibUZ0WlFBQUEvZ0FBQUU1QUFBQ1h2RmRCd2x3YjNOMEFBQUZOQUFBQUdJQUFBQ0U1czc0aFhqYVkyQmtZR0FBWXBmNUh1L2orVzIrTW5Bek1ZREF6YVg2UWpENi80Ly9CeGo1R0E4QXVSd01ZR2tBUHl3TDEzamFZMkJrWUdBODhQOEFneDRqKy84ZlFEWWZBMUFFQldnREFJQjJCT29BZU5wallHUmdZTkJoNEdkZ1lnQUJFTW5JQUJKellOQURDUUFBQ1dnQXNRQjQybU5nWWZ6Q09JR0JsWUdCMFljeGpZR0J3UjFLZjJXUVpHaGhZR0JpWUdWbWdBRkdCaVFRa09hYXd0REFvTUJReFhqZy93RUdQY1lEREE0d05VQTJDQ2d3c0FBQU80RUw2Z0FBZU5wajJNMGd5QUFDcXhnR05XQmtaMkQ0L3dNQSt4a0RkZ0FBQUhqYVkyQmdZR2FBWUJrR1JnWVFpQUh5R01GOEZnWUhJTTNEd01IQUJHUXJNT2d5V0RMRU0xVDkvdzhVQmZFTWdMekUvLy8vUC81Ly9mL1YveHYrcjRlYUFBZU1iQXh3SVVZbUlNSEVnS1lBWWpVY3NEQXdzTEt4YzNCeWNmUHc4akVRQS9nWkJBU0ZoRVZFeGNRbEpLV2taV1RsNUJVVWxaUlZWTlhVTlRRWkJnTUFBTVIrRStnQUVRRkVBQUFBS2dBcUFDb0FOQUErQUVnQVVnQmNBR1lBY0FCNkFJUUFqZ0NZQUtJQXJBQzJBTUFBeWdEVUFONEE2QUR5QVB3QkJnRVFBUm9CSkFFdUFUZ0JRZ0ZNQVZZQllBRnFBWFFCZmdHSUFaSUJuQUdtQWJJQnpnSHNBQUI0MnUyTk1RNkNVQXlHVzU2OHg5QW5lWVlnbTRNSmJoS0ZhRXhJT0FWWDhBcGV3U3Q0QmljNEFmZUFpZDNWT0JpeER4ZlBZRXphNU8rWGZpMDRZQURnZ2lVSVVMQ3VFSks4VmhPNGJTdnBkbmt0SEk1UUNZdGRpMnNsOFpuWGFIbHFVck5LemRLY1Q4Y2pscStyd1pTdklWY3pOaWV6c2ZuUC91em5tZlBGQk5PRE0ySzdNVFE0NVlFQVpxR1A4MUFtR0djRjNpUHFPb3AwcjFTUFRhVGJWa2ZVZTRIWGo5N3dZRSt5TndXWXh3V3U0djF1Z1dIZ28zUzFYZFpFVnFXTTdFVDBjZm5MR3hXZmtnUjQybzJQdldyRE1CU0ZqL0lITGFGMHpLalJnZGlWTXdTY05SQW9XVW9INzhZMmljQi95SVkwOUFuNkFIMkJkdS9VQit5eG9wWXNoUWlFdm52dTBkVVJnRHQ4UWVDOFBEdzdGcGppM2ZFQTR6L1BFSjZZT0I1aEtoNGRqM0V2WGh4UHFIL1NLVVkzcko3c3JaNEZabmgxUE1BdFBod1A2ZmwyUE1KTVBEZ2VRNHJZOFlUNkd6YW8wZUFFQTQwOUR1Z2dtVG5Gbk9jU0NpRWlMTWd4Q2lUSTZDcTVEWlVkM1FtcDEwdk8wTGFMVGQyY2pONGZPdW1sYzdsVVliU1FjWkZrdXRSRzdnNkpLWkt5MFJtZExZNjgwQ0RuRUorVU1rcEZGZTFSTjdueGRWcFhyQzRhVHRuYXVyT25ZZXJjWmcyWVZtTE4vZC9nY3pmRWltckUvZnMvYk91cTI5Wm1uOHRsb09SYVhnWmdHYTc4eU85L2NuWG0yQnBhR3ZxMjVEdjlTNEU5KzVTSWM5UHF1cEpLaFlGU1NsNDcrUWNyMW1ZTkFBQUFlTnB0dzBjS3drQUFBTURaSkE4UTdPVUp2a0xzUGZaNnpGVkVSUHk4cUhoMllFUiszaS9CUDgzdklCTEx5U3NvS2ltcnFLcXBhMmhwNitqcTZSc1lHaG1ibUpxWlN5MHNyYXh0Yk8zc0hSeWRuRU1VNHVSNnl4N0pKWHZlUDdXckR5Y0FBQUFBQUFILy93QUNlTnBqWUdSZ1lPQUJZaGtnWmdKQ1pnWk5Ca1lHTFFadElKc0ZMTVlBQUF3M0FMZ0FlTm9saXpFS2dEQVFCQ2NoUmJDMnNGRVIwWUQ2cVZRaUJDdi9IOWV6R0k2WjVYQkF3OENCSy9tNWlRUVZhdVZiWExuT3JNWnYyb0xkS0ZhOFBqdXJ1MmhKekdhYm1PU0x6Tk16dnV0cEIzTjQybU5nWkdCZzRHS1FZekJoWU14SkxNbGo0R0JnQVlvdy9QL1BBSkpoTE02c1NvV0tmV0NBQXdEQWpnYlJBQUI0Mm1OZ1lHQmtBSUliQ1pvNUlQcm1VbjBoR0EwQU84RUZUUUFBJylcbiAgICAgIGZvcm1hdCgnd29mZicpO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICB9XG59XG5AYXQtcm9vdCB7XG4gIDpyb290IHtcbiAgICAtLXN3aXBlci10aGVtZS1jb2xvcjogI3t2YXJzLiR0aGVtZUNvbG9yfTtcbiAgICAvKlxuICAgIC0tc3dpcGVyLXByZWxvYWRlci1jb2xvcjogdmFyKC0tc3dpcGVyLXRoZW1lLWNvbG9yKTtcbiAgICAtLXN3aXBlci13cmFwcGVyLXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBpbml0aWFsO1xuICAgICovXG4gIH1cbn1cbjpob3N0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgei1pbmRleDogMTtcbn1cbi5zd2lwZXIge1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG4gIC8qIEZpeCBvZiBXZWJraXQgZmxpY2tlcmluZyAqL1xuICB6LWluZGV4OiAxO1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi5zd2lwZXItdmVydGljYWwgPiAuc3dpcGVyLXdyYXBwZXIge1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xufVxuLnN3aXBlci13cmFwcGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB6LWluZGV4OiAxO1xuICBkaXNwbGF5OiBmbGV4O1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiB2YXIoLS1zd2lwZXItd3JhcHBlci10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbiwgaW5pdGlhbCk7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xufVxuLnN3aXBlci1hbmRyb2lkIC5zd2lwZXItc2xpZGUsXG4uc3dpcGVyLWlvcyAuc3dpcGVyLXNsaWRlLFxuLnN3aXBlci13cmFwcGVyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwcHgsIDAsIDApO1xufVxuLnN3aXBlci1ob3Jpem9udGFsIHtcbiAgdG91Y2gtYWN0aW9uOiBwYW4teTtcbn1cbi5zd2lwZXItdmVydGljYWwge1xuICB0b3VjaC1hY3Rpb246IHBhbi14O1xufVxuLnN3aXBlci1zbGlkZSB7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4uc3dpcGVyLXNsaWRlLWludmlzaWJsZS1ibGFuayB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cbi8qIEF1dG8gSGVpZ2h0ICovXG4uc3dpcGVyLWF1dG9oZWlnaHQsXG4uc3dpcGVyLWF1dG9oZWlnaHQgLnN3aXBlci1zbGlkZSB7XG4gIGhlaWdodDogYXV0bztcbn1cbi5zd2lwZXItYXV0b2hlaWdodCAuc3dpcGVyLXdyYXBwZXIge1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBoZWlnaHQ7XG59XG4uc3dpcGVyLWJhY2tmYWNlLWhpZGRlbiAuc3dpcGVyLXNsaWRlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG59XG4vKiAzRCBFZmZlY3RzICovXG4uc3dpcGVyLTNkLnN3aXBlci1jc3MtbW9kZSAuc3dpcGVyLXdyYXBwZXIge1xuICBwZXJzcGVjdGl2ZTogMTIwMHB4O1xufVxuLnN3aXBlci0zZCAuc3dpcGVyLXdyYXBwZXIge1xuICB0cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkO1xufVxuLnN3aXBlci0zZCB7XG4gIHBlcnNwZWN0aXZlOiAxMjAwcHg7XG4gIC5zd2lwZXItc2xpZGUsXG4gIC5zd2lwZXItY3ViZS1zaGFkb3cge1xuICAgIHRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2Q7XG4gIH1cbn1cblxuLyogQ1NTIE1vZGUgKi9cbi5zd2lwZXItY3NzLW1vZGUge1xuICA+IC5zd2lwZXItd3JhcHBlciB7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgc2Nyb2xsYmFyLXdpZHRoOiBub25lOyAvKiBGb3IgRmlyZWZveCAqL1xuICAgIC1tcy1vdmVyZmxvdy1zdHlsZTogbm9uZTsgLyogRm9yIEludGVybmV0IEV4cGxvcmVyIGFuZCBFZGdlICovXG4gICAgJjo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cbiAgPiAuc3dpcGVyLXdyYXBwZXIgPiAuc3dpcGVyLXNsaWRlIHtcbiAgICBzY3JvbGwtc25hcC1hbGlnbjogc3RhcnQgc3RhcnQ7XG4gIH1cbiAgJi5zd2lwZXItaG9yaXpvbnRhbCB7XG4gICAgPiAuc3dpcGVyLXdyYXBwZXIge1xuICAgICAgc2Nyb2xsLXNuYXAtdHlwZTogeCBtYW5kYXRvcnk7XG4gICAgfVxuICB9XG4gICYuc3dpcGVyLXZlcnRpY2FsIHtcbiAgICA+IC5zd2lwZXItd3JhcHBlciB7XG4gICAgICBzY3JvbGwtc25hcC10eXBlOiB5IG1hbmRhdG9yeTtcbiAgICB9XG4gIH1cbiAgJi5zd2lwZXItZnJlZS1tb2RlIHtcbiAgICA+IC5zd2lwZXItd3JhcHBlciB7XG4gICAgICBzY3JvbGwtc25hcC10eXBlOiBub25lO1xuICAgIH1cbiAgICA+IC5zd2lwZXItd3JhcHBlciA+IC5zd2lwZXItc2xpZGUge1xuICAgICAgc2Nyb2xsLXNuYXAtYWxpZ246IG5vbmU7XG4gICAgfVxuICB9XG4gICYuc3dpcGVyLWNlbnRlcmVkIHtcbiAgICA+IC5zd2lwZXItd3JhcHBlcjo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICBvcmRlcjogOTk5OTtcbiAgICB9XG4gICAgPiAuc3dpcGVyLXdyYXBwZXIgPiAuc3dpcGVyLXNsaWRlIHtcbiAgICAgIHNjcm9sbC1zbmFwLWFsaWduOiBjZW50ZXIgY2VudGVyO1xuICAgICAgc2Nyb2xsLXNuYXAtc3RvcDogYWx3YXlzO1xuICAgIH1cbiAgfVxuICAmLnN3aXBlci1jZW50ZXJlZC5zd2lwZXItaG9yaXpvbnRhbCB7XG4gICAgPiAuc3dpcGVyLXdyYXBwZXIgPiAuc3dpcGVyLXNsaWRlOmZpcnN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IHZhcigtLXN3aXBlci1jZW50ZXJlZC1vZmZzZXQtYmVmb3JlKTtcbiAgICB9XG4gICAgPiAuc3dpcGVyLXdyYXBwZXI6OmJlZm9yZSB7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBtaW4taGVpZ2h0OiAxcHg7XG4gICAgICB3aWR0aDogdmFyKC0tc3dpcGVyLWNlbnRlcmVkLW9mZnNldC1hZnRlcik7XG4gICAgfVxuICB9XG4gICYuc3dpcGVyLWNlbnRlcmVkLnN3aXBlci12ZXJ0aWNhbCB7XG4gICAgPiAuc3dpcGVyLXdyYXBwZXIgPiAuc3dpcGVyLXNsaWRlOmZpcnN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1ibG9jay1zdGFydDogdmFyKC0tc3dpcGVyLWNlbnRlcmVkLW9mZnNldC1iZWZvcmUpO1xuICAgIH1cbiAgICA+IC5zd2lwZXItd3JhcHBlcjo6YmVmb3JlIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWluLXdpZHRoOiAxcHg7XG4gICAgICBoZWlnaHQ6IHZhcigtLXN3aXBlci1jZW50ZXJlZC1vZmZzZXQtYWZ0ZXIpO1xuICAgIH1cbiAgfVxufVxuXG4vKiBTbGlkZSBzdHlsZXMgc3RhcnQgKi9cbi8qIDNEIFNoYWRvd3MgKi9cbi5zd2lwZXItM2Qge1xuICAuc3dpcGVyLXNsaWRlLXNoYWRvdyxcbiAgLnN3aXBlci1zbGlkZS1zaGFkb3ctbGVmdCxcbiAgLnN3aXBlci1zbGlkZS1zaGFkb3ctcmlnaHQsXG4gIC5zd2lwZXItc2xpZGUtc2hhZG93LXRvcCxcbiAgLnN3aXBlci1zbGlkZS1zaGFkb3ctYm90dG9tLFxuICAuc3dpcGVyLXNsaWRlLXNoYWRvdyxcbiAgLnN3aXBlci1zbGlkZS1zaGFkb3ctbGVmdCxcbiAgLnN3aXBlci1zbGlkZS1zaGFkb3ctcmlnaHQsXG4gIC5zd2lwZXItc2xpZGUtc2hhZG93LXRvcCxcbiAgLnN3aXBlci1zbGlkZS1zaGFkb3ctYm90dG9tIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIHotaW5kZXg6IDEwO1xuICB9XG4gIC5zd2lwZXItc2xpZGUtc2hhZG93IHtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMTUpO1xuICB9XG4gIC5zd2lwZXItc2xpZGUtc2hhZG93LWxlZnQge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBsZWZ0LCByZ2JhKDAsIDAsIDAsIDAuNSksIHJnYmEoMCwgMCwgMCwgMCkpO1xuICB9XG4gIC5zd2lwZXItc2xpZGUtc2hhZG93LXJpZ2h0IHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHJnYmEoMCwgMCwgMCwgMC41KSwgcmdiYSgwLCAwLCAwLCAwKSk7XG4gIH1cbiAgLnN3aXBlci1zbGlkZS1zaGFkb3ctdG9wIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gdG9wLCByZ2JhKDAsIDAsIDAsIDAuNSksIHJnYmEoMCwgMCwgMCwgMCkpO1xuICB9XG4gIC5zd2lwZXItc2xpZGUtc2hhZG93LWJvdHRvbSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgcmdiYSgwLCAwLCAwLCAwLjUpLCByZ2JhKDAsIDAsIDAsIDApKTtcbiAgfVxufVxuLnN3aXBlci1sYXp5LXByZWxvYWRlciB7XG4gIHdpZHRoOiA0MnB4O1xuICBoZWlnaHQ6IDQycHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogNTAlO1xuICB0b3A6IDUwJTtcbiAgbWFyZ2luLWxlZnQ6IC0yMXB4O1xuICBtYXJnaW4tdG9wOiAtMjFweDtcbiAgei1pbmRleDogMTA7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDUwJTtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgYm9yZGVyOiA0cHggc29saWQgdmFyKC0tc3dpcGVyLXByZWxvYWRlci1jb2xvciwgdmFyKC0tc3dpcGVyLXRoZW1lLWNvbG9yKSk7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgYm9yZGVyLXRvcC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4uc3dpcGVyOm5vdCguc3dpcGVyLXdhdGNoLXByb2dyZXNzKSxcbi5zd2lwZXItd2F0Y2gtcHJvZ3Jlc3MgLnN3aXBlci1zbGlkZS12aXNpYmxlIHtcbiAgLnN3aXBlci1sYXp5LXByZWxvYWRlciB7XG4gICAgYW5pbWF0aW9uOiBzd2lwZXItcHJlbG9hZGVyLXNwaW4gMXMgaW5maW5pdGUgbGluZWFyO1xuICB9XG59XG4uc3dpcGVyLWxhenktcHJlbG9hZGVyLXdoaXRlIHtcbiAgLS1zd2lwZXItcHJlbG9hZGVyLWNvbG9yOiAjZmZmO1xufVxuLnN3aXBlci1sYXp5LXByZWxvYWRlci1ibGFjayB7XG4gIC0tc3dpcGVyLXByZWxvYWRlci1jb2xvcjogIzAwMDtcbn1cbkBrZXlmcmFtZXMgc3dpcGVyLXByZWxvYWRlci1zcGluIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gIH1cbn1cbi8qIFNsaWRlIHN0eWxlcyBlbmQgKi9cblxuXG5cbiIsIkB1c2UgJy4uL3N3aXBlci12YXJzLnNjc3MnIGFzIHZhcnM7XG5AYXQtcm9vdCB7XG4gIDpyb290IHtcbiAgICAvKlxuICAtLXN3aXBlci1wYWdpbmF0aW9uLWNvbG9yOiB2YXIoLS1zd2lwZXItdGhlbWUtY29sb3IpO1xuICAtLXN3aXBlci1wYWdpbmF0aW9uLWxlZnQ6IGF1dG87XG4gIC0tc3dpcGVyLXBhZ2luYXRpb24tcmlnaHQ6IDhweDtcbiAgLS1zd2lwZXItcGFnaW5hdGlvbi1ib3R0b206IDhweDtcbiAgLS1zd2lwZXItcGFnaW5hdGlvbi10b3A6IGF1dG87XG4gIC0tc3dpcGVyLXBhZ2luYXRpb24tZnJhY3Rpb24tY29sb3I6IGluaGVyaXQ7XG4gIC0tc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXItYmctY29sb3I6IHJnYmEoMCwwLDAsMC4yNSk7XG4gIC0tc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXItc2l6ZTogNHB4O1xuICAtLXN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1zaXplOiA4cHg7XG4gIC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LXdpZHRoOiA4cHg7XG4gIC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWhlaWdodDogOHB4O1xuICAtLXN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1ib3JkZXItcmFkaXVzOiA1MCU7XG4gIC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWluYWN0aXZlLWNvbG9yOiAjMDAwO1xuICAtLXN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1pbmFjdGl2ZS1vcGFjaXR5OiAwLjI7XG4gIC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LW9wYWNpdHk6IDE7XG4gIC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWhvcml6b250YWwtZ2FwOiA0cHg7XG4gIC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LXZlcnRpY2FsLWdhcDogNnB4O1xuICAqL1xuICB9XG59XG4uc3dpcGVyLXBhZ2luYXRpb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdHJhbnNpdGlvbjogMzAwbXMgb3BhY2l0eTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgei1pbmRleDogMTA7XG4gICYuc3dpcGVyLXBhZ2luYXRpb24taGlkZGVuIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIC5zd2lwZXItcGFnaW5hdGlvbi1kaXNhYmxlZCA+ICYsXG4gICYuc3dpcGVyLXBhZ2luYXRpb24tZGlzYWJsZWQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuLyogQ29tbW9uIFN0eWxlcyAqL1xuLnN3aXBlci1wYWdpbmF0aW9uLWZyYWN0aW9uLFxuLnN3aXBlci1wYWdpbmF0aW9uLWN1c3RvbSxcbi5zd2lwZXItaG9yaXpvbnRhbCA+IC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLFxuLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMuc3dpcGVyLXBhZ2luYXRpb24taG9yaXpvbnRhbCB7XG4gIGJvdHRvbTogdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tYm90dG9tLCA4cHgpO1xuICB0b3A6IHZhcigtLXN3aXBlci1wYWdpbmF0aW9uLXRvcCwgYXV0byk7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xufVxuLyogQnVsbGV0cyAqL1xuLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGZvbnQtc2l6ZTogMDtcbiAgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwLjMzKTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cbiAgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cbiAgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUtbWFpbiB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxuICAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWFjdGl2ZS1wcmV2IHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuNjYpO1xuICB9XG4gIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlLXByZXYtcHJldiB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwLjMzKTtcbiAgfVxuICAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWFjdGl2ZS1uZXh0IHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuNjYpO1xuICB9XG4gIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlLW5leHQtbmV4dCB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwLjMzKTtcbiAgfVxufVxuLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XG4gIHdpZHRoOiB2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtd2lkdGgsIHZhcigtLXN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1zaXplLCA4cHgpKTtcbiAgaGVpZ2h0OiB2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtaGVpZ2h0LCB2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtc2l6ZSwgOHB4KSk7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWJvcmRlci1yYWRpdXMsIDUwJSk7XG4gIGJhY2tncm91bmQ6IHZhcigtLXN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1pbmFjdGl2ZS1jb2xvciwgIzAwMCk7XG4gIG9wYWNpdHk6IHZhcigtLXN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1pbmFjdGl2ZS1vcGFjaXR5LCAwLjIpO1xuICBAYXQtcm9vdCBidXR0b24jeyZ9IHtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuICB9XG4gIC5zd2lwZXItcGFnaW5hdGlvbi1jbGlja2FibGUgJiB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG5cbiAgJjpvbmx5LWNoaWxkIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlIHtcbiAgb3BhY2l0eTogdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LW9wYWNpdHksIDEpO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1jb2xvciwgdmFyKC0tc3dpcGVyLXRoZW1lLWNvbG9yKSk7XG59XG5cbi5zd2lwZXItdmVydGljYWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cyxcbi5zd2lwZXItcGFnaW5hdGlvbi12ZXJ0aWNhbC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzIHtcbiAgcmlnaHQ6IHZhcigtLXN3aXBlci1wYWdpbmF0aW9uLXJpZ2h0LCA4cHgpO1xuICBsZWZ0OiB2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1sZWZ0LCBhdXRvKTtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMHB4LCAtNTAlLCAwKTtcbiAgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XG4gICAgbWFyZ2luOiB2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtdmVydGljYWwtZ2FwLCA2cHgpIDA7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbiAgJi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMge1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICB3aWR0aDogOHB4O1xuICAgIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgdHJhbnNpdGlvbjpcbiAgICAgICAgMjAwbXMgdHJhbnNmb3JtLFxuICAgICAgICAyMDBtcyB0b3A7XG4gICAgfVxuICB9XG59XG4uc3dpcGVyLWhvcml6b250YWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cyxcbi5zd2lwZXItcGFnaW5hdGlvbi1ob3Jpem9udGFsLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMge1xuICAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgICBtYXJnaW46IDAgdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWhvcml6b250YWwtZ2FwLCA0cHgpO1xuICB9XG4gICYuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIHtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XG4gICAgICB0cmFuc2l0aW9uOlxuICAgICAgICAyMDBtcyB0cmFuc2Zvcm0sXG4gICAgICAgIDIwMG1zIGxlZnQ7XG4gICAgfVxuICB9XG59XG4uc3dpcGVyLWhvcml6b250YWwuc3dpcGVyLXJ0bCA+IC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XG4gIHRyYW5zaXRpb246XG4gICAgMjAwbXMgdHJhbnNmb3JtLFxuICAgIDIwMG1zIHJpZ2h0O1xufVxuLyogRnJhY3Rpb24gKi9cbi5zd2lwZXItcGFnaW5hdGlvbi1mcmFjdGlvbiB7XG4gIGNvbG9yOiB2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1mcmFjdGlvbi1jb2xvciwgaW5oZXJpdCk7XG59XG4vKiBQcm9ncmVzcyAqL1xuLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXItYmctY29sb3IsIHJnYmEoMCwgMCwgMCwgMC4yNSkpO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIC5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci1maWxsIHtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1jb2xvciwgdmFyKC0tc3dpcGVyLXRoZW1lLWNvbG9yKSk7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgdG9wO1xuICB9XG4gIC5zd2lwZXItcnRsICYgLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLWZpbGwge1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IHRvcDtcbiAgfVxuICAuc3dpcGVyLWhvcml6b250YWwgPiAmLFxuICAmLnN3aXBlci1wYWdpbmF0aW9uLWhvcml6b250YWwsXG4gIC5zd2lwZXItdmVydGljYWwgPiAmLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLW9wcG9zaXRlLFxuICAmLnN3aXBlci1wYWdpbmF0aW9uLXZlcnRpY2FsLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLW9wcG9zaXRlIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IHZhcigtLXN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLXNpemUsIDRweCk7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDA7XG4gIH1cbiAgLnN3aXBlci12ZXJ0aWNhbCA+ICYsXG4gICYuc3dpcGVyLXBhZ2luYXRpb24tdmVydGljYWwsXG4gIC5zd2lwZXItaG9yaXpvbnRhbCA+ICYuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXItb3Bwb3NpdGUsXG4gICYuc3dpcGVyLXBhZ2luYXRpb24taG9yaXpvbnRhbC5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci1vcHBvc2l0ZSB7XG4gICAgd2lkdGg6IHZhcigtLXN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLXNpemUsIDRweCk7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwO1xuICB9XG59XG4uc3dpcGVyLXBhZ2luYXRpb24tbG9jayB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4iLCJAdXNlICcuLi9zd2lwZXItdmFycy5zY3NzJyBhcyB2YXJzO1xuQGF0LXJvb3Qge1xuICA6cm9vdCB7XG4gICAgLS1zd2lwZXItbmF2aWdhdGlvbi1zaXplOiA0NHB4O1xuICAgIC8qXG4gIC0tc3dpcGVyLW5hdmlnYXRpb24tdG9wLW9mZnNldDogNTAlO1xuICAtLXN3aXBlci1uYXZpZ2F0aW9uLXNpZGVzLW9mZnNldDogMTBweDtcbiAgLS1zd2lwZXItbmF2aWdhdGlvbi1jb2xvcjogdmFyKC0tc3dpcGVyLXRoZW1lLWNvbG9yKTtcbiAgKi9cbiAgfVxufVxuLnN3aXBlci1idXR0b24tcHJldixcbi5zd2lwZXItYnV0dG9uLW5leHQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogdmFyKC0tc3dpcGVyLW5hdmlnYXRpb24tdG9wLW9mZnNldCwgNTAlKTtcbiAgd2lkdGg6IGNhbGModmFyKC0tc3dpcGVyLW5hdmlnYXRpb24tc2l6ZSkgLyA0NCAqIDI3KTtcbiAgaGVpZ2h0OiB2YXIoLS1zd2lwZXItbmF2aWdhdGlvbi1zaXplKTtcbiAgbWFyZ2luLXRvcDogY2FsYygwcHggLSAodmFyKC0tc3dpcGVyLW5hdmlnYXRpb24tc2l6ZSkgLyAyKSk7XG4gIHotaW5kZXg6IDEwO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBjb2xvcjogdmFyKC0tc3dpcGVyLW5hdmlnYXRpb24tY29sb3IsIHZhcigtLXN3aXBlci10aGVtZS1jb2xvcikpO1xuICAmLnN3aXBlci1idXR0b24tZGlzYWJsZWQge1xuICAgIG9wYWNpdHk6IDAuMzU7XG4gICAgY3Vyc29yOiBhdXRvO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB9XG4gICYuc3dpcGVyLWJ1dHRvbi1oaWRkZW4ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgY3Vyc29yOiBhdXRvO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB9XG4gIC5zd2lwZXItbmF2aWdhdGlvbi1kaXNhYmxlZCAmIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbiAgc3ZnIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG4gIH1cbiAgLnN3aXBlci1ydGwgJiBzdmcge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gIH1cbn1cbi5zd2lwZXItYnV0dG9uLXByZXYsXG4uc3dpcGVyLXJ0bCAuc3dpcGVyLWJ1dHRvbi1uZXh0IHtcbiAgbGVmdDogdmFyKC0tc3dpcGVyLW5hdmlnYXRpb24tc2lkZXMtb2Zmc2V0LCAxMHB4KTtcbiAgcmlnaHQ6IGF1dG87XG59XG4uc3dpcGVyLWJ1dHRvbi1uZXh0LFxuLnN3aXBlci1ydGwgLnN3aXBlci1idXR0b24tcHJldiB7XG4gIHJpZ2h0OiB2YXIoLS1zd2lwZXItbmF2aWdhdGlvbi1zaWRlcy1vZmZzZXQsIDEwcHgpO1xuICBsZWZ0OiBhdXRvO1xufVxuLnN3aXBlci1idXR0b24tbG9jayB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4vKiBOYXZpZ2F0aW9uIGZvbnQgc3RhcnQgKi9cbi5zd2lwZXItYnV0dG9uLXByZXYsXG4uc3dpcGVyLWJ1dHRvbi1uZXh0IHtcbiAgJjphZnRlciB7XG4gICAgZm9udC1mYW1pbHk6IHN3aXBlci1pY29ucztcbiAgICBmb250LXNpemU6IHZhcigtLXN3aXBlci1uYXZpZ2F0aW9uLXNpemUpO1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lICFpbXBvcnRhbnQ7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDA7XG4gICAgZm9udC12YXJpYW50OiBpbml0aWFsO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICB9XG59XG4uc3dpcGVyLWJ1dHRvbi1wcmV2LFxuLnN3aXBlci1ydGwgLnN3aXBlci1idXR0b24tbmV4dCB7XG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICdwcmV2JztcbiAgfVxufVxuLnN3aXBlci1idXR0b24tbmV4dCxcbi5zd2lwZXItcnRsIC5zd2lwZXItYnV0dG9uLXByZXYge1xuICByaWdodDogdmFyKC0tc3dpcGVyLW5hdmlnYXRpb24tc2lkZXMtb2Zmc2V0LCAxMHB4KTtcbiAgbGVmdDogYXV0bztcbiAgJjphZnRlciB7XG4gICAgY29udGVudDogJ25leHQnO1xuICB9XG59XG4vKiBOYXZpZ2F0aW9uIGZvbnQgZW5kICovXG4iLCIvKipcbiAqIE1haW4gU2V0dGluZ3MgRmlsZVxuICogR3JvdXA6IFNldHRpbmdzXG4gKi9cblxuQGZvcndhcmQgXCJhbmltYXRpb25zXCI7XG5AZm9yd2FyZCBcImJveC1tb2RlbFwiO1xuQGZvcndhcmQgXCJicmVha3BvaW50c1wiO1xuQGZvcndhcmQgXCJidXR0b25zXCI7XG5AZm9yd2FyZCBcImZvbnRzXCI7XG5AZm9yd2FyZCBcImdyaWRcIjtcbkBmb3J3YXJkIFwiaWNvbnNcIjtcbkBmb3J3YXJkIFwiaW5wdXRzXCI7XG5AZm9yd2FyZCBcInNpemVzXCI7XG5AZm9yd2FyZCBcInNwYWNpbmdcIjtcbkBmb3J3YXJkIFwic3dpcGVyXCI7XG5AZm9yd2FyZCBcInR5cG9ncmFwaHlcIjtcbkBmb3J3YXJkIFwidmFyaWFibGVzXCI7XG4iLCIvKipcbiAqIEFuaW1hdGlvblxuICogR3JvdXA6IFNldHRpbmdzXG4gKi9cblxuOnJvb3Qge1xuICAtLXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7XG4gIC0tdHJhbnNpdGlvbi1kdXJhdGlvbi1tZWRpdW06IDAuNXM7XG4gIC0tdHJhbnNpdGlvbi1kdXJhdGlvbi1zbG93OiAxcztcbiAgLS10cmFuc2l0aW9uLWR1cmF0aW9uLXZlcnktc2xvdzogMnM7XG59XG4iLCIvKipcbiAqIEJveCBNb2RlbFxuICogR3JvdXA6IFNldHRpbmdzXG4gKi9cblxuOnJvb3Qge1xuICAtLXJhZGl1czogMXJlbTtcbiAgLS1ib3JkZXItcmFkaXVzLW51bGw6IDA7XG4gIC0tYm9yZGVyLXJhZGl1cy14czogMC4yNXJlbTsgLy8gNHB4IGluIDE2cHggYmFzZVxuICAtLWJvcmRlci1yYWRpdXMtczogMC41cmVtOyAvLyA4cHggaW4gMTZweCBiYXNlXG4gIC0tYm9yZGVyLXJhZGl1cy1tOiAxcmVtOyAvLyAxNnB4IGluIDE2cHggYmFzZVxuICAtLWJvcmRlci1yYWRpdXMtbDogMS4yNXJlbTsgLy8gMjBweCBpbiAxNnB4IGJhc2VcbiAgLS1ib3JkZXItcmFkaXVzLXhsOiA0cmVtOyAvLyA2NHB4IGluIDE2cHggYmFzZVxuICAtLWJvcmRlci1yYWRpdXMteHhsOiA4cmVtOyAvLyAxMjhweCBpbiAxNnB4IGJhc2VcbiAgLS1ib3JkZXItcmFkaXVzLWZ1bGw6IDUwJTtcbiAgLS1ib3gtc2hhZG93LWxpZ2h0OiBoc2woMGRlZyAwJSAwJSAvIDE1JSk7XG4gIC0tYm94LXNoYWRvdy1kYXJrOiBoc2woMGRlZyAwJSAxMDAlIC8gMTUlKTtcbiAgLS1ib3gtc2hhZG93LWxpZ2h0LTAxOlxuICAgIDBweCAxcHggMnB4IDBweCB2YXIoLS1ib3gtc2hhZG93LWxpZ2h0LCByZ2IoMCAwIDAgLyAxNSUpKSxcbiAgICAwcHggMXB4IDNweCAxcHggdmFyKC0tYm94LXNoYWRvdy1saWdodCwgcmdiKDAgMCAwIC8gMTUlKSk7XG4gIC0tYm94LXNoYWRvdy1saWdodC0wMjpcbiAgICAwcHggMXB4IDJweCAwcHggdmFyKC0tYm94LXNoYWRvdy1saWdodCwgcmdiKDAgMCAwIC8gMTUlKSksXG4gICAgMHB4IDJweCA2cHggMnB4IHZhcigtLWJveC1zaGFkb3ctbGlnaHQsIHJnYigwIDAgMCAvIDE1JSkpO1xuICAtLWJveC1zaGFkb3ctbGlnaHQtMDM6XG4gICAgMHB4IDRweCA4cHggM3B4IHZhcigtLWJveC1zaGFkb3ctbGlnaHQsIHJnYigwIDAgMCAvIDE1JSkpLFxuICAgIDBweCAxcHggM3B4IDBweCB2YXIoLS1ib3gtc2hhZG93LWxpZ2h0LCByZ2IoMCAwIDAgLyAxNSUpKTtcbiAgLS1ib3gtc2hhZG93LWxpZ2h0LTA0OlxuICAgIDBweCA2cHggMTBweCA0cHggdmFyKC0tYm94LXNoYWRvdy1saWdodCwgcmdiKDAgMCAwIC8gMTUlKSksXG4gICAgMHB4IDJweCAzcHggMHB4IHZhcigtLWJveC1zaGFkb3ctbGlnaHQsIHJnYigwIDAgMCAvIDE1JSkpO1xuICAtLWJveC1zaGFkb3ctbGlnaHQtMDU6XG4gICAgMHB4IDhweCAxMnB4IDZweCB2YXIoLS1ib3gtc2hhZG93LWxpZ2h0LCByZ2IoMCAwIDAgLyAxNSUpKSxcbiAgICAwcHggNHB4IDRweCAwcHggdmFyKC0tYm94LXNoYWRvdy1saWdodCwgcmdiKDAgMCAwIC8gMTUlKSk7XG4gIC0tYm94LXNoYWRvdy1saWdodC0wNjpcbiAgICAwcHggMTZweCAzMnB4IDZweCB2YXIoLS1ib3gtc2hhZG93LWxpZ2h0LCByZ2IoMCAwIDAgLyAxNSUpKSxcbiAgICAwcHggNHB4IDhweCAwcHggdmFyKC0tYm94LXNoYWRvdy1saWdodCwgcmdiKDAgMCAwIC8gMTUlKSk7XG4gIC0tYm94LXNoYWRvdy1kYXJrLTAxOlxuICAgIDBweCAxcHggMnB4IDBweCB2YXIoLS1ib3gtc2hhZG93LWRhcmssIHJnYigyNTUgMjU1IDI1NSAvIDE1JSkpLFxuICAgIDBweCAxcHggM3B4IDFweCB2YXIoLS1ib3gtc2hhZG93LWRhcmssIHJnYigyNTUgMjU1IDI1NSAvIDE1JSkpO1xuICAtLWJveC1zaGFkb3ctZGFyay0wMjpcbiAgICAwcHggMXB4IDJweCAwcHggdmFyKC0tYm94LXNoYWRvdy1kYXJrLCByZ2IoMjU1IDI1NSAyNTUgLyAxNSUpKSxcbiAgICAwcHggMnB4IDZweCAycHggdmFyKC0tYm94LXNoYWRvdy1kYXJrLCByZ2IoMjU1IDI1NSAyNTUgLyAxNSUpKTtcbiAgLS1ib3gtc2hhZG93LWRhcmstMDM6XG4gICAgMHB4IDRweCA4cHggM3B4IHZhcigtLWJveC1zaGFkb3ctZGFyaywgcmdiKDI1NSAyNTUgMjU1IC8gMTUlKSksXG4gICAgMHB4IDFweCAzcHggMHB4IHZhcigtLWJveC1zaGFkb3ctZGFyaywgcmdiKDI1NSAyNTUgMjU1IC8gMTUlKSk7XG4gIC0tYm94LXNoYWRvdy1kYXJrLTA0OlxuICAgIDBweCA2cHggMTBweCA0cHggdmFyKC0tYm94LXNoYWRvdy1kYXJrLCByZ2IoMjU1IDI1NSAyNTUgLyAxNSUpKSxcbiAgICAwcHggMnB4IDNweCAwcHggdmFyKC0tYm94LXNoYWRvdy1kYXJrLCByZ2IoMjU1IDI1NSAyNTUgLyAxNSUpKTtcbiAgLS1ib3gtc2hhZG93LWRhcmstMDU6XG4gICAgMHB4IDhweCAxMnB4IDZweCB2YXIoLS1ib3gtc2hhZG93LWRhcmssIHJnYigyNTUgMjU1IDI1NSAvIDE1JSkpLFxuICAgIDBweCA0cHggNHB4IDBweCB2YXIoLS1ib3gtc2hhZG93LWRhcmssIHJnYigyNTUgMjU1IDI1NSAvIDE1JSkpO1xuICAtLWJveC1zaGFkb3ctZGFyay0wNjpcbiAgICAwcHggMTZweCAzMnB4IDZweCB2YXIoLS1ib3gtc2hhZG93LWRhcmssIHJnYigyNTUgMjU1IDI1NSAvIDE1JSkpLFxuICAgIDBweCA0cHggOHB4IDBweCB2YXIoLS1ib3gtc2hhZG93LWRhcmssIHJnYigyNTUgMjU1IDI1NSAvIDE1JSkpO1xuICAtLWJveC1zaGFkb3ctaG92ZXI6IDAgNHB4IDIwcHggcmdiKDEwIDEzIDE1IC8gMzUlKTtcbiAgLS1ib3gtc2hhZG93LW1lbnUtaW5uZXI6IDBweCA0cHggOHB4IDBweCB2YXIoLS1jb2xvci1uZXV0cmFsLTA1MCkgaW5zZXQ7XG4gIC0tYm94LXNoYWRvdy1tZW51LW91dGVyOiAwcHggNHB4IDRweCAwcHggIzAwMDAwMDQwO1xuICAtLWJveC1zaGFkb3ctYWNjb3JkaW9uOiAwcHggNXB4IDE2cHggMHB4IHJnYig4IDE1IDUyIC8gNiUpO1xufVxuIiwiLyoqXG4gKiBCcmVha3BvaW50c1xuICogR3JvdXA6IFNldHRpbmdzXG4gKi9cblxuJGJyZWFrcG9pbnQtbW9iaWxlLXNtYWxsOiAzMjBweDtcbiRicmVha3BvaW50LW1vYmlsZS1tZWRpdW06IDM3NXB4O1xuJGJyZWFrcG9pbnQtbW9iaWxlLWxhcmdlOiA0MTRweDtcbiRicmVha3BvaW50LXBoYWJsZXQ6IDU3NnB4O1xuJGJyZWFrcG9pbnQtdGFibGV0OiA3NjhweDtcbiRicmVha3BvaW50LWRlc2t0b3Atc21hbGw6IDk5MnB4O1xuJGJyZWFrcG9pbnQtZGVza3RvcC1tZWRpdW06IDEyMDBweDtcbiRicmVha3BvaW50LWRlc2t0b3A6IDE0NDBweDtcbiRicmVha3BvaW50LWRlc2t0b3AtbGFyZ2U6IDE2MDBweDtcbiRicmVha3BvaW50LWRlc2t0b3AteGxhcmdlOiAxOTIwcHg7XG4kYnJlYWtwb2ludHM6IChcbiAgZGVmYXVsdDogMCxcbiAgbW9iaWxlLXNtYWxsOiAkYnJlYWtwb2ludC1tb2JpbGUtc21hbGwsXG4gIG1vYmlsZS1tZWRpdW06ICRicmVha3BvaW50LW1vYmlsZS1tZWRpdW0sXG4gIG1vYmlsZS1sYXJnZTogJGJyZWFrcG9pbnQtbW9iaWxlLWxhcmdlLFxuICBwaGFibGV0OiAkYnJlYWtwb2ludC1waGFibGV0LFxuICB0YWJsZXQ6ICRicmVha3BvaW50LXRhYmxldCxcbiAgZGVza3RvcC1zbWFsbDogJGJyZWFrcG9pbnQtZGVza3RvcC1zbWFsbCxcbiAgZGVza3RvcC1tZWRpdW06ICRicmVha3BvaW50LWRlc2t0b3AtbWVkaXVtLFxuICBkZXNrdG9wOiAkYnJlYWtwb2ludC1kZXNrdG9wLFxuICBkZXNrdG9wLWxhcmdlOiAkYnJlYWtwb2ludC1kZXNrdG9wLWxhcmdlLFxuICBkZXNrdG9wLXhsYXJnZTogJGJyZWFrcG9pbnQtZGVza3RvcC14bGFyZ2UsXG4pICFkZWZhdWx0O1xuIiwiLyoqXG4gKiBCdXR0b25zXG4gKiBHcm91cDogU2V0dGluZ3NcbiAqL1xuXG46cm9vdCB7XG4gIC0tYnRuLXJhZGl1czogdmFyKC0tcmFkaXVzKTtcbiAgLS1idG4tcmFkaXVzLXhzOiBjYWxjKHZhcigtLXJhZGl1cykgLyA0KTtcbiAgLS1idG4tcmFkaXVzLXNtOiBjYWxjKHZhcigtLXJhZGl1cykgLyAyKTtcbiAgLS1idG4tcmFkaXVzLW1kOiBjYWxjKHZhcigtLXJhZGl1cykgKiAxLjEyNSk7XG4gIC0tYnRuLXJhZGl1cy1sZzogY2FsYyh2YXIoLS1yYWRpdXMpICogMS43NSk7XG4gIC0tYnRuLXJhZGl1cy14bDogY2FsYyh2YXIoLS1yYWRpdXMpICogNCk7XG4gIC0tYnRuLXJhZGl1cy1mdWxsOiA1MCU7XG4gIC0tYnV0dG9uLXNpemUteHNtYWxsOiAycmVtO1xuICAtLWJ1dHRvbi1zaXplLXNtYWxsOiAyLjc1cmVtO1xuICAtLWJ1dHRvbi1zaXplOiAzLjEyNXJlbTtcbiAgLS1idXR0b24tc2l6ZS1sYXJnZTogMy4xMjVyZW07XG4gIC0tYnV0dG9uLWJvcmRlci13aWR0aDogMC4xMjVyZW07XG59XG4iLCIvKipcbiAqIEZvbnRzXG4gKiBHcm91cDogU2V0dGluZ3NcbiAqL1xuXG4vL0ZvbnQgRmFtaWx5IFwiUG9wcGluc1wiXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwiT3BlbiBTYW5zXCI7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvT3BlblNhbnMvT3BlblNhbnMtTGlnaHQudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpO1xuICBmb250LXdlaWdodDogMzAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJPcGVuIFNhbnNcIjtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9PcGVuU2Fucy9PcGVuU2Fucy1MaWdodEl0YWxpYy50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIik7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcIk9wZW4gU2Fuc1wiO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL09wZW5TYW5zL09wZW5TYW5zLVJlZ3VsYXIudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpO1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJPcGVuIFNhbnNcIjtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9PcGVuU2Fucy9PcGVuU2Fucy1JdGFsaWMudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpO1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJPcGVuIFNhbnNcIjtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9PcGVuU2Fucy9PcGVuU2Fucy1NZWRpdW0udHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpO1xuICBmb250LXdlaWdodDogNTAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJPcGVuIFNhbnNcIjtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9PcGVuU2Fucy9PcGVuU2Fucy1NZWRpdW1JdGFsaWMudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpO1xuICBmb250LXdlaWdodDogNTAwO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJPcGVuIFNhbnNcIjtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9PcGVuU2Fucy9PcGVuU2Fucy1TZW1pQm9sZC50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIik7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcIk9wZW4gU2Fuc1wiO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL09wZW5TYW5zL09wZW5TYW5zLVNlbWlCb2xkSXRhbGljLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwiT3BlbiBTYW5zXCI7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvT3BlblNhbnMvT3BlblNhbnMtQm9sZC50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIik7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcIk9wZW4gU2Fuc1wiO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL09wZW5TYW5zL09wZW5TYW5zLUJvbGRJdGFsaWMudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpO1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJPcGVuIFNhbnNcIjtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9PcGVuU2Fucy9PcGVuU2Fucy1FeHRyYUJvbGQudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpO1xuICBmb250LXdlaWdodDogODAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJPcGVuIFNhbnNcIjtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9PcGVuU2Fucy9PcGVuU2Fucy1FeHRyYUJvbGRJdGFsaWMudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpO1xuICBmb250LXdlaWdodDogODAwO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG4iLCIvKipcbiAqIEdyaWRcbiAqIEdyb3VwOiBTZXR0aW5nc1xuICovXG5cbjpyb290IHtcbiAgLS1ncmlkLWNvbHVtbnM6IDEyO1xuICAtLWdyaWQtZ2FwOiAxcmVtO1xuICAtLWdhcC12ZXJ0aWNhbDogdmFyKC0tZ3JpZC1nYXApO1xuICAtLWdhcC1ob3Jpem9udGFsOiB2YXIoLS1ncmlkLWdhcCk7XG4gIC0tZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMTIsIDFmcik7XG4gIC0tZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zLTI6IHJlcGVhdCgyLCAxZnIpO1xuICAtLWdyaWQtdGVtcGxhdGUtY29sdW1ucy0zOiByZXBlYXQoMywgMWZyKTtcbiAgLS1ncmlkLXRlbXBsYXRlLWNvbHVtbnMtNDogcmVwZWF0KDQsIDFmcik7XG59XG4iLCIvKipcbiAqIEljb25zXG4gKiBHcm91cDogU2V0dGluZ3NcbiAqL1xuXG46cm9vdCB7XG4gIC0taWNvbi11bml0OiAxcmVtO1xuICAtLWljb24tZGVmYXVsdDogdmFyKC0taWNvbi11bml0KTtcbiAgLS1pY29uLXh4czogY2FsYygwLjYyNSAqIHZhcigtLWljb24tdW5pdCkpO1xuICAtLWljb24tbXhzOiBjYWxjKDEuMTI1ICogdmFyKC0taWNvbi11bml0KSk7XG4gIC0taWNvbi14czogY2FsYygxLjI1ICogdmFyKC0taWNvbi11bml0KSk7XG4gIC0taWNvbi1tczogY2FsYygxLjUgKiB2YXIoLS1pY29uLXVuaXQpKTtcbiAgLS1pY29uLXNtOiBjYWxjKDIgKiB2YXIoLS1pY29uLXVuaXQpKTtcbiAgLS1pY29uLW1kOiBjYWxjKDIuNSAqIHZhcigtLWljb24tdW5pdCkpO1xuICAtLWljb24tbGc6IGNhbGMoMyAqIHZhcigtLWljb24tdW5pdCkpO1xuICAtLWljb24teGw6IGNhbGMoNCAqIHZhcigtLWljb24tdW5pdCkpO1xuICAtLWljb24tMnhsOiBjYWxjKDUgKiB2YXIoLS1pY29uLXVuaXQpKTtcbn1cbiIsIi8qKlxuICogSW5wdXRzXG4gKiBHcm91cDogU2V0dGluZ3NcbiAqL1xuXG46cm9vdCB7XG4gIC0taW5wdXQtaGVpZ2h0LXNtYWxsOiAxNnB4O1xuICAtLWlucHV0LWhlaWdodC1tZWRpdW06IDE4cHg7XG4gIC0taW5wdXQtaGVpZ2h0LWxhcmdlOiAyMHB4O1xuICAtLWNoZWNrYm94LXNpemU6IDE2cHg7XG4gIC0tY2hlY2tib3gtc2l6ZS1zbWFsbDogMTJweDtcbn1cbiIsIi8qKlxuICogU2l6ZXNcbiAqIEdyb3VwOiBTZXR0aW5nc1xuICovXG5cbjpyb290IHtcbiAgLyogTWF4IHdpZHRocyAqL1xuICAtLW1heC13aWR0aC0tOXhzOiA5cmVtOyAvLyAxNDRweCBpbiAxNnB4IGJhc2UgcGl4ZWwgc2l6ZVxuICAtLW1heC13aWR0aC0tOHhzOiAxMHJlbTsgLy8gMTYwcHggaW4gMTZweCBiYXNlIHBpeGVsIHNpemVcbiAgLS1tYXgtd2lkdGgtLTd4czogMTJyZW07IC8vIDE5MnB4IGluIDE2cHggYmFzZSBwaXhlbCBzaXplXG4gIC0tbWF4LXdpZHRoLS02eHM6IDE0cmVtOyAvLyAyMjRweCBpbiAxNnB4IGJhc2UgcGl4ZWwgc2l6ZVxuICAtLW1heC13aWR0aC0tNXhzOiAxOXJlbTsgLy8gMzA0cHggaW4gMTZweCBiYXNlIHBpeGVsIHNpemVcbiAgLS1tYXgtd2lkdGgtLTR4czogMjVyZW07IC8vIDQwMHB4IGluIDE2cHggYmFzZSBwaXhlbCBzaXplXG4gIC0tbWF4LXdpZHRoLS0zeHM6IDMwcmVtOyAvLyA0ODBweCBpbiAxNnB4IGJhc2UgcGl4ZWwgc2l6ZVxuICAtLW1heC13aWR0aC0tMnhzOiAzNHJlbTsgLy8gNTQ0cHggaW4gMTZweCBiYXNlIHBpeGVsIHNpemVcbiAgLS1tYXgtd2lkdGgtLXhzOiA0MnJlbTsgLy8gNjcycHggaW4gMTZweCBiYXNlIHBpeGVsIHNpemVcbiAgLS1tYXgtd2lkdGgtLXNtOiA1N3JlbTsgLy8gOTEycHggaW4gMTZweCBiYXNlIHBpeGVsIHNpemVcbiAgLS1tYXgtd2lkdGgtLW1kOiA2NXJlbTsgLy8gMTA0MHB4IGluIDE2cHggYmFzZSBwaXhlbCBzaXplXG4gIC0tbWF4LXdpZHRoLS1sZzogNzIuNXJlbTsgLy8gMTE2MHB4IGluIDE2cHggYmFzZSBwaXhlbCBzaXplXG4gIC0tbWF4LXdpZHRoLS14bDogODByZW07IC8vIDEyODBweCBpbiAxNnB4IGJhc2UgcGl4ZWwgc2l6ZVxuICAtLW1heC13aWR0aC0tMnhsOiA5MHJlbTsgLy8gMTQ0MHB4IGluIDE2cHggYmFzZSBwaXhlbCBzaXplXG5cbiAgLyogTWluIHdpZHRocyAqL1xuICAtLW1pbi13aWR0aC10YWJsZS1saXN0OiA1NXJlbTsgLy8gODgwcHggaW4gMTZweCBiYXNlIHBpeGVsIHNpemVcbiAgLS1taW4td2lkdGgtdHJlZS1saXN0OiA0MHJlbTsgLy8gNjQwcHggaW4gMTZweCBiYXNlIHBpeGVsIHNpemVcblxuICAvKiBNYXggaGVpZ2h0cyAqL1xuICAtLW1heC1oZWlnaHQtaW50cm8tYmFubmVyOiA0Mi41cmVtOyAvLyA2ODBweCBpbiAxNnB4IGJhc2UgcGl4ZWwgc2l6ZVxuICAtLW1heC1oZWlnaHQtbWFwLWxpc3Q6IDMycmVtOyAvLyA1MTJweCBpbiAxNnB4IGJhc2UgcGl4ZWwgc2l6ZVxuICAtLW1heC1oZWlnaHQtaW1hZ2UtbmV3czogMjVyZW07IC8vIDQwMHB4IGluIDE2cHggYmFzZSBwaXhlbCBzaXplXG5cbiAgLyogTWluIGhlaWdodHMgKi9cbiAgLS1taW4taGVpZ2h0LW1hcC1wYXJtYWN5OiAyNXJlbTsgLy8gNDAwcHggaW4gMTZweCBiYXNlIHBpeGVsIHNpemVcblxuICAvKiBIZWlnaHRzICovXG4gIC0taGVhZGVyLXRvcC1iYXItaGVpZ2h0OiA0cmVtOyAvLyA2NHB4IGluIDE2cHggYmFzZSBwaXhlbCBzaXplXG4gIC0taGVhZGVyLW1haW4tYmFyLWhlaWdodDogNi4yNXJlbTsgLy8gMTAwcHggaW4gMTZweCBiYXNlIHBpeGVsIHNpemVcbiAgLS1oZWFkZXItaGVpZ2h0OiBjYWxjKFxuICAgIHZhcigtLWhlYWRlci10b3AtYmFyLWhlaWdodCkgKyB2YXIoLS1oZWFkZXItbWFpbi1iYXItaGVpZ2h0KVxuICApOyAvLyBjYWxjdWxhdGVkIGhlYWRlcidzIGhlaWdodFxuXG4gIC0tcGFnaW5hdGlvbi1oZWlnaHQ6IDMuNzVyZW07IC8vIDYwcHggaW4gMTZweCBiYXNlIHBpeGVsIHNpemVcblxuICAvKiBXaWR0aHMgKi9cbiAgLS1zaWRlYmFyLXdpZHRoOiAxMDAlO1xuICAtLWNvbnRlbnQtd2lkdGg6IDEwMCU7XG5cbiAgLyogU2l6aW5nICovXG4gIC0tcGFnZS1tYXgtd3JhcHBlcjogMTIwcmVtOyAvLyAxOTIwcHggaW4gMTZweCBiYXNlIHBpeGVsIHNpemVcbiAgLS1wYWdlLW1heC13cmFwcGVyLWxhcmdlOiAxNjByZW07IC8vIDI1NjBweCBpbiAxNnB4IGJhc2UgcGl4ZWwgc2l6ZVxufVxuIiwiLyoqXG4gKiBTcGFjaW5nXG4gKiBHcm91cDogU2V0dGluZ3NcbiAqL1xuXG46cm9vdCB7XG4gIC0tc3BhY2luZy11bml0OiAxcmVtO1xuICAtLXNwYWNpbmctZGVmYXVsdDogdmFyKC0tc3BhY2luZy11bml0KTsgLy8gMTZweCBpbiAxNnB4IGJhc2VcbiAgLS1zcGFjaW5nLTAwMDogY2FsYygwICogdmFyKC0tc3BhY2luZy11bml0KSk7XG4gIC0tc3BhY2luZy0wMTI6IGNhbGMoMC4xMjUgKiB2YXIoLS1zcGFjaW5nLXVuaXQpKTsgLy8gMnB4IGluIDE2cHggYmFzZVxuICAtLXNwYWNpbmctMDI1OiBjYWxjKDAuMjUgKiB2YXIoLS1zcGFjaW5nLXVuaXQpKTsgLy8gNHB4IGluIDE2cHggYmFzZVxuICAtLXNwYWNpbmctMDM3OiBjYWxjKDAuMzc1ICogdmFyKC0tc3BhY2luZy11bml0KSk7IC8vIDZweCBpbiAxNnB4IGJhc2VcbiAgLS1zcGFjaW5nLTA1MDogY2FsYygwLjUgKiB2YXIoLS1zcGFjaW5nLXVuaXQpKTsgLy8gOHB4IGluIDE2cHggYmFzZVxuICAtLXNwYWNpbmctMDc1OiBjYWxjKDAuNzUgKiB2YXIoLS1zcGFjaW5nLXVuaXQpKTsgLy8gMTJweCBpbiAxNnB4IGJhc2VcbiAgLS1zcGFjaW5nLTEwMDogY2FsYygxICogdmFyKC0tc3BhY2luZy11bml0KSk7IC8vIDE2cHggaW4gMTZweCBiYXNlXG4gIC0tc3BhY2luZy0xMjU6IGNhbGMoMS4yNSAqIHZhcigtLXNwYWNpbmctdW5pdCkpOyAvLyAyMHB4IGluIDE2cHggYmFzZVxuICAtLXNwYWNpbmctMTUwOiBjYWxjKDEuNSAqIHZhcigtLXNwYWNpbmctdW5pdCkpOyAvLyAyNHB4IGluIDE2cHggYmFzZVxuICAtLXNwYWNpbmctMjAwOiBjYWxjKDIgKiB2YXIoLS1zcGFjaW5nLXVuaXQpKTsgLy8gMzJweCBpbiAxNnB4IGJhc2VcbiAgLS1zcGFjaW5nLTI1MDogY2FsYygyLjUgKiB2YXIoLS1zcGFjaW5nLXVuaXQpKTsgLy8gNDBweCBpbiAxNnB4IGJhc2VcbiAgLS1zcGFjaW5nLTMwMDogY2FsYygzICogdmFyKC0tc3BhY2luZy11bml0KSk7IC8vIDQ4cHggaW4gMTZweCBiYXNlXG4gIC0tc3BhY2luZy0zNTA6IGNhbGMoMy41ICogdmFyKC0tc3BhY2luZy11bml0KSk7IC8vIDU2cHggaW4gMTZweCBiYXNlXG4gIC0tc3BhY2luZy00MDA6IGNhbGMoNCAqIHZhcigtLXNwYWNpbmctdW5pdCkpOyAvLyA2NHB4IGluIDE2cHggYmFzZVxuICAtLXNwYWNpbmctNTAwOiBjYWxjKDUgKiB2YXIoLS1zcGFjaW5nLXVuaXQpKTsgLy8gODBweCBpbiAxNnB4IGJhc2VcbiAgLS1zcGFjaW5nLTYwMDogY2FsYyg2ICogdmFyKC0tc3BhY2luZy11bml0KSk7IC8vIDk2cHggaW4gMTZweCBiYXNlXG4gIC0tc3BhY2luZy03MDA6IGNhbGMoNyAqIHZhcigtLXNwYWNpbmctdW5pdCkpOyAvLyAxMTJweCBpbiAxNnB4IGJhc2VcbiAgLS1zcGFjaW5nLTgwMDogY2FsYyg4ICogdmFyKC0tc3BhY2luZy11bml0KSk7IC8vIDEyOHB4IGluIDE2cHggYmFzZVxuICAtLXNwYWNpbmctMTAwMDogY2FsYygxMCAqIHZhcigtLXNwYWNpbmctdW5pdCkpOyAvLyAxNjBweCBpbiAxNnB4IGJhc2VcbiAgLS1zcGFjaW5nLTEyMDA6IGNhbGMoMTIgKiB2YXIoLS1zcGFjaW5nLXVuaXQpKTsgLy8gMTkycHggaW4gMTZweCBiYXNlXG4gIC0tc3BhY2luZy0xNjAwOiBjYWxjKDE2ICogdmFyKC0tc3BhY2luZy11bml0KSk7IC8vIDI1NnB4IGluIDE2cHggYmFzZVxuICAtLXNwYWNpbmctMjAwMDogY2FsYygyMCAqIHZhcigtLXNwYWNpbmctdW5pdCkpOyAvLyAzMjBweCBpbiAxNnB4IGJhc2VcbiAgLS1zcGFjaW5nLTI0MDA6IGNhbGMoMjQgKiB2YXIoLS1zcGFjaW5nLXVuaXQpKTsgLy8gMzg0cHggaW4gMTZweCBiYXNlXG4gIC0tc3BhY2luZy0zMjAwOiBjYWxjKDMyICogdmFyKC0tc3BhY2luZy11bml0KSk7IC8vIDUxMnB4IGluIDE2cHggYmFzZVxuICAtLXNwYWNpbmctMzcwMDogY2FsYygzNyAqIHZhcigtLXNwYWNpbmctdW5pdCkpOyAvLyA1OTJweCBpbiAxNnB4IGJhc2VcbiAgLS1zcGFjaW5nLTQwMDA6IGNhbGMoNDAgKiB2YXIoLS1zcGFjaW5nLXVuaXQpKTsgLy8gNjQwcHggaW4gMTZweCBiYXNlXG59XG4iLCIvKipcbiAqIFN3aXBlclxuICogR3JvdXA6IFNldHRpbmdzXG4gKi9cblxuOnJvb3Qge1xuICAtLXN3aXBlci1wYWdpbmF0aW9uLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1vcmFuZ2UpO1xuICAtLXN3aXBlci1uYXZpZ2F0aW9uLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1vcmFuZ2UpO1xuICAtLXN3aXBlci1wYWdpbmF0aW9uLWxlZnQ6IGF1dG87XG4gIC0tc3dpcGVyLXBhZ2luYXRpb24tcmlnaHQ6IDhweDtcbiAgLS1zd2lwZXItcGFnaW5hdGlvbi1ib3R0b206IDhweDtcbiAgLS1zd2lwZXItcGFnaW5hdGlvbi10b3A6IGF1dG87XG4gIC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LXNpemU6IHZhcigtLXNwYWNpbmctMTAwKTtcbiAgLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtd2lkdGg6IHZhcigtLXNwYWNpbmctMTAwKTtcbiAgLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtaGVpZ2h0OiB2YXIoLS1zcGFjaW5nLTA1MCk7XG4gIC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWluYWN0aXZlLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1saWdodC1ncmF5KTtcbiAgLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtaW5hY3RpdmUtb3BhY2l0eTogMTtcbiAgLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtb3BhY2l0eTogMTtcbiAgLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtaG9yaXpvbnRhbC1nYXA6IHZhcigtLXNwYWNpbmctMDUwKTtcbiAgLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtdmVydGljYWwtZ2FwOiB2YXIoLS1zcGFjaW5nLTEwMCk7XG4gIC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMteHMpO1xufVxuIiwiLyoqXG4gKiBUeXBvZ3JhcGh5XG4gKiBHcm91cDogU2V0dGluZ3NcbiAqL1xuXG5AdXNlIFwiZm9udHNcIjtcblxuOnJvb3Qge1xuICAvKiBGb250IEZhY2VzICovXG4gIC0tZm9udC1wcmltYXJ5OiBcIk9wZW4gU2Fuc1wiLCBzYW5zLXNlcmlmO1xuICAtLWZvbnQtbW9ubzogXCJNb25hY29cIiwgbW9ub3NwYWNlO1xuICAtLWZvbnQtYXdlc29tZTogXCJGb250QXdlc29tZVwiO1xuXG4gIC8qIFR5cGUgYmFzZSAqL1xuICAtLXRleHQtYmFzZS1zaXplOiAxZW07XG5cbiAgLyogRm9udCBXZWlnaHRzICovXG4gIC0tZm9udC13ZWlnaHQtdGhpbjogMTAwO1xuICAtLWZvbnQtd2VpZ2h0LWV4dHJhbGlnaHQ6IDIwMDtcbiAgLS1mb250LXdlaWdodC1saWdodDogMzAwO1xuICAtLWZvbnQtd2VpZ2h0LXJlZ3VsYXI6IDQwMDtcbiAgLS1mb250LXdlaWdodC1tZWRpdW06IDUwMDtcbiAgLS1mb250LXdlaWdodC1zZW1pYm9sZDogNjAwO1xuICAtLWZvbnQtd2VpZ2h0LWJvbGQ6IDcwMDtcbiAgLS1mb250LXdlaWdodC1leHRyYWJvbGQ6IDgwMDtcbiAgLS1mb250LXdlaWdodC1ibGFjazogOTAwO1xuXG4gIC8qIExldHRlciBTcGFjaW5ncyAqL1xuICAtLXRyYWNraW5nLXRpZ2h0OiAtMC4wMTU2cmVtOyAvLyAtMC4yNXB4IGluIDE2cHggYmFzZVxuICAtLXRyYWNraW5nLW5vcm1hbDogMHJlbTtcbiAgLS10cmFja2luZy13aWRlOiAwLjAwNjNyZW07IC8vIDAuMXB4IGluIDE2cHggYmFzZVxuICAtLXRyYWNraW5nLXdpZGUtbGc6IDAuMDMxM3JlbTsgLy8gMC41cHggaW4gMTZweCBiYXNlXG4gIC0tdHJhY2tpbmctd2lkZS14bDogMC4wNjI1cmVtOyAvLyAxcHggaW4gMTZweCBiYXNlXG4gIC0tdHJhY2tpbmctd2lkZS0yeGw6IDAuMDkzOHJlbTsgLy8gMS41cHggaW4gMTZweCBiYXNlXG4gIC0tdHJhY2tpbmctd2lkZS0zeGw6IDAuMTg3NXJlbTsgLy8gM3B4IGluIDE2cHggYmFzZVxuXG4gIC8qIExpbmUgaGVpZ2h0cyAqL1xuICAtLWxlYWRpbmctbm9uZTogMTtcbiAgLS1sZWFkaW5nLXRpZ2h0OiAxLjI1O1xuICAtLWxlYWRpbmctbm9ybWFsOiAxLjU7XG4gIC0tbGVhZGluZy1yZWxheGVkOiAxLjY7XG4gIC0tbGVhZGluZy1sb29zZTogMjtcbiAgLS1sZWFkaW5nLWV4dHJhLWxvb3NlOiAyLjY3O1xuXG4gIC8qIEJvZHkgdmFyaWFibGVzICovXG4gIC0tYm9keS1mb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIC0tYm9keS1leHRyYS1zbWFsbC1mb250LXNpemU6IDAuNzVyZW07IC8vIDEycHggaW4gMTZweCBiYXNlXG4gIC0tYm9keS1zbWFsbC1mb250LXNpemU6IDAuODc1cmVtOyAvLyAxNHB4IGluIDE2cHggYmFzZVxuICAtLWJvZHktc21hbGwtbGV0dGVyLXNwYWNpbmc6IHZhcigtLXRyYWNraW5nLW5vcm1hbCk7XG4gIC0tYm9keS1zbWFsbC1saW5lLWhlaWdodDogdmFyKC0tbGVhZGluZy1ub3JtYWwpO1xuICAtLWJvZHktZm9udC1zaXplOiAxcmVtOyAvLyAxNnB4IGluIDE2cHggYmFzZVxuICAtLWJvZHktbGV0dGVyLXNwYWNpbmc6IHZhcigtLXRyYWNraW5nLW5vcm1hbCk7XG4gIC0tYm9keS1saW5lLWhlaWdodDogdmFyKC0tbGVhZGluZy1ub3JtYWwpO1xuICAtLWJvZHktbWVkaXVtLWZvbnQtc2l6ZTogMS4xMjVyZW07IC8vIDE2cHggaW4gMTZweCBiYXNlXG4gIC0tYm9keS1tZWRpdW0tbGV0dGVyLXNwYWNpbmc6IHZhcigtLXRyYWNraW5nLW5vcm1hbCk7XG4gIC0tYm9keS1tZWRpdW0tbGluZS1oZWlnaHQ6IHZhcigtLWxlYWRpbmctbm9ybWFsKTtcbiAgLS1ib2R5LWxhcmdlLWZvbnQtc2l6ZTogMS41cmVtOyAvLyAyNHB4IGluIDE2cHggYmFzZVxuICAtLWJvZHktbGFyZ2UtbGV0dGVyLXNwYWNpbmc6IHZhcigtLXRyYWNraW5nLW5vcm1hbCk7XG4gIC0tYm9keS1sYXJnZS1saW5lLWhlaWdodDogdmFyKC0tbGVhZGluZy1ub3JtYWwpO1xuICAtLWgxLWZvbnQtc2l6ZTogMy42MjVyZW07IC8vIDU4cHggaW4gMTZweCBiYXNlXG4gIC0taDEtZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICAtLWgxLWxldHRlci1zcGFjaW5nOiB2YXIoLS10cmFja2luZy1ub3JtYWwpO1xuICAtLWgxLWxpbmUtaGVpZ2h0OiB2YXIoLS1sZWFkaW5nLXRpZ2h0KTtcbiAgLS1oMi1mb250LXNpemU6IDIuMTI1cmVtOyAvLyAzNHB4IGluIDE2cHggYmFzZVxuICAtLWgyLWZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbiAgLS1oMi1sZXR0ZXItc3BhY2luZzogdmFyKC0tdHJhY2tpbmctbm9ybWFsKTtcbiAgLS1oMi1saW5lLWhlaWdodDogdmFyKC0tbGVhZGluZy1ub3JtYWwpO1xuICAtLWgzLWZvbnQtc2l6ZTogMS41cmVtOyAvLyAyNHB4IGluIDE2cHggYmFzZVxuICAtLWgzLWZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbiAgLS1oMy1sZXR0ZXItc3BhY2luZzogdmFyKC0tdHJhY2tpbmctbm9ybWFsKTtcbiAgLS1oMy1saW5lLWhlaWdodDogdmFyKC0tbGVhZGluZy10aWdodCk7XG4gIC0taDQtZm9udC1zaXplOiAxLjI1cmVtOyAvLyAyMHB4IGluIDE2cHggYmFzZVxuICAtLWg0LWZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbiAgLS1oNC1sZXR0ZXItc3BhY2luZzogdmFyKC0tdHJhY2tpbmctbm9ybWFsKTtcbiAgLS1oNC1saW5lLWhlaWdodDogdmFyKC0tbGVhZGluZy1ub3JtYWwpO1xuICAtLWg1LWZvbnQtc2l6ZTogMS4xMjVyZW07IC8vIDE4cHggaW4gMTZweCBiYXNlXG4gIC0taDUtZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICAtLWg1LWxldHRlci1zcGFjaW5nOiB2YXIoLS10cmFja2luZy1ub3JtYWwpO1xuICAtLWg1LWxpbmUtaGVpZ2h0OiB2YXIoLS1sZWFkaW5nLW5vcm1hbCk7XG4gIC0taDYtZm9udC1zaXplOiAxcmVtOyAvLyAxNnB4IGluIDE2cHggYmFzZVxuICAtLWg2LWZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbiAgLS1oNi1sZXR0ZXItc3BhY2luZzogdmFyKC0tdHJhY2tpbmctbm9ybWFsKTtcbiAgLS1oNi1saW5lLWhlaWdodDogdmFyKC0tbGVhZGluZy1ub3JtYWwpO1xufVxuIiwiLyoqXG4gKiBWYXJpYWJsZXNcbiAqIFwiR3JvdXBcIiBTZXR0aW5nc1xuICovXG5cbjpyb290IHtcbiAgLS1zaGFkZS1jb2xvci1oOiAwO1xuICAtLXNoYWRlLWNvbG9yLXM6IDAlO1xuICAtLXNoYWRlLWNvbG9yLWw6IDAlO1xufVxuXG4vLyBDb2xvciB2YXJpYWJsZXNcbiRjb2xvcnM6IChcbiAgLyoqXG4gICogQnJhbmQgQ29sb3JzXG4gICovIFwiYnJhbmQtYnJvd24tc2VtaS10cmFuc3BhcmVudFwiOiAjZmJmMGRhLFxuICBcImJyYW5kLWJyb3duXCI6ICM3MzUxMGQsXG4gIFwiYnJhbmQtcmVkLXNlbWktdHJhbnNwYXJlbnRcIjogI2Y5ZTFlNSxcbiAgXCJicmFuZC1kYXJrLXJlZFwiOiAjYWYyMzNhLFxuICBcImJyYW5kLXJlZFwiOiAjZjllMWU1LFxuICBcImFsZXJ0LWdyZWVuLWRhcmtcIjogIzBkNjgzMixcbiAgXCJicmFuZC1ncmVlblwiOiAjZDZmMGUwLFxuICBcImJyYW5kLWJsdWVcIjogIzAwMzM3NSxcbiAgXCJicmFuZC1ibHVlLWxpZ2h0XCI6ICMxYzY1N2QsXG4gIFwiYnJhbmQtYmx1ZS1saWdodC1zZW1pLXRyYW5zcGFyZW50XCI6ICNkZWYxZjcsXG4gIFwiYnJhbmQtYmx1ZS1zZW1pLXRyYW5zcGFyZW50XCI6ICNiYjZiZDkzMyxcbiAgXCJicmFuZC1vcmFuZ2VcIjogI2Y4OWIzNCxcbiAgXCJicmFuZC1kYXJrLWdyYXlcIjogIzMzMzMzMyxcbiAgXCJicmFuZC1ncmF5XCI6ICM1NzU3NTcsXG4gIFwiYnJhbmQtYmx1ZS1kYXJrXCI6ICM0YjY1ODcsXG4gIFwiYnJhbmQtd2hpdGVcIjogI2ZmZmZmZixcbiAgXCJicmFuZC1saWdodC1ncmF5XCI6ICNlOGU4ZTgsXG4gIFwiYnJhbmQtbGlnaHRlci1ncmF5XCI6ICNlZWVlZWUsXG4gIFwiYnJhbmQtc2VhcmNoLWdyYXlcIjogI2Q5ZDlkOSxcblxuICAvKipcbiAgICogTmV1dHJhbCBDb2xvcnNcbiAgICovIFwibmV1dHJhbC0xMDAwXCI6ICMwYTBhMGEsXG4gIFwibmV1dHJhbC05NzVcIjogIzFmMjAyMSxcbiAgXCJuZXV0cmFsLTk1MFwiOiAjMjMyNjI2LFxuICBcIm5ldXRyYWwtOTAwXCI6ICMzYjNkNDAsXG4gIFwibmV1dHJhbC04MDBcIjogIzUzNTY1YSxcbiAgXCJuZXV0cmFsLTcwMFwiOiAjNWU2MTY2LFxuICBcIm5ldXRyYWwtNjAwXCI6ICM3NjdhODAsXG4gIFwibmV1dHJhbC01MDBcIjogIzdmODQ4YSxcbiAgXCJuZXV0cmFsLTQwMFwiOiAjOTk5ZWE2LFxuICBcIm5ldXRyYWwtMzAwXCI6ICNiNWJjYzQsXG4gIFwibmV1dHJhbC0yMDBcIjogI2QxZDZkZSxcbiAgXCJuZXV0cmFsLTEwMFwiOiAjZGZlNWVkLFxuICBcIm5ldXRyYWwtMDUwXCI6ICNmMmY3ZmYsXG4gIFwibmV1dHJhbC0wMDBcIjogI2ZhZmFmYSxcblxuICBcImRhcmtcIjogaHNsKDEwMGRlZyAxMDAlIDAlIC8gMTAwJSksXG4gIFwibGlnaHRcIjogaHNsKDBkZWcgMCUgMTAwJSAvIDEwMCUpLFxuICAvKipcbiAgICogRmFkZSBDb2xvcnMgbGlnaHQvZGFya1xuICAgKi8gXCJmYWRlLWxpZ2h0LTVcIjogI2YyZjJmMjBkLFxuICBcImZhZGUtbGlnaHQtMTBcIjogI2YyZjJmMjFhLFxuICBcImZhZGUtbGlnaHQtMjBcIjogI2YyZjJmMjMzLFxuICBcImZhZGUtbGlnaHQtMzBcIjogI2YyZjJmMjRkLFxuICBcImZhZGUtbGlnaHQtNDBcIjogI2YyZjJmMjY2LFxuICBcImZhZGUtbGlnaHQtNTBcIjogI2YyZjJmMjgwLFxuICBcImZhZGUtbGlnaHQtNjBcIjogI2YyZjJmMjk5LFxuICBcImZhZGUtbGlnaHQtNzBcIjogI2YyZjJmMmIyLFxuICBcImZhZGUtbGlnaHQtODBcIjogI2YyZjJmMmNjLFxuICBcImZhZGUtbGlnaHQtOTBcIjogI2YyZjJmMmU1LFxuICBcImZhZGUtZGFyay01XCI6ICMxZDFiMjAwZCxcbiAgXCJmYWRlLWRhcmstMTBcIjogIzFkMWIyMDFhLFxuICBcImZhZGUtZGFyay0yMFwiOiAjMWQxYjIwMzMsXG4gIFwiZmFkZS1kYXJrLTMwXCI6ICMxZDFiMjA0ZCxcbiAgXCJmYWRlLWRhcmstNDBcIjogIzFkMWIyMDY2LFxuICBcImZhZGUtZGFyay01MFwiOiAjMWQxYjIwODAsXG4gIFwiZmFkZS1kYXJrLTYwXCI6ICMxZDFiMjA5OSxcbiAgXCJmYWRlLWRhcmstNzBcIjogIzFkMWIyMGIyLFxuICBcImZhZGUtZGFyay04MFwiOiAjMWQxYjIwY2MsXG4gIFwiZmFkZS1kYXJrLTkwXCI6ICMxZDFiMjBlNSxcblxuICAvKipcbiAgICogQ29sb3IgU2hhZGVzXG4gICAqLyBcImZvY3VzLXN0cm9rZVwiOiAjZmVkYzAwLFxuICBcInRleHRcIjogdmFyKC0tbmV1dHJhbC0xMDAwKSxcbiAgXCJ0ZXh0LWxpZ2h0XCI6IHZhcigtLWxpZ2h0KVxuKTtcblxuLy8gQ29sb3IgdmFyaWFibGVzIGZvciBjb29raWVzXG4kY29va2llcy1jb2xvcnM6IChcbiAgXCIwMDAwMDBcIixcbiAgLy8gYmxhY2tcbiAgXCJmZmZmZmZcIixcbiAgLy8gd2hpdGVcbiAgXCIwMDMzNzVcIixcbiAgLy8gYmx1ZVxuICBcIjRiNjU4N1wiLFxuICAvLyBkYXJrZXIgYmx1ZVxuICBcImY4OWIzNFwiLFxuICAvLyBzZWNvbmRhcnlcbiAgXCI1NzU3NTdcIiAvLyBncmV5XG4pO1xuIiwiLyoqXG4gKiBNYWluIFRvb2xzIEZpbGVcbiAqIEdyb3VwOiBUb29sc1xuICovXG5cbkBmb3J3YXJkIFwiYTExeVwiO1xuQGZvcndhcmQgXCJhbmltYXRpb25zXCI7XG5AZm9yd2FyZCBcImJveC1zaGFkb3dzXCI7XG5AZm9yd2FyZCBcImJyZWFrcG9pbnRzXCI7XG5AZm9yd2FyZCBcImJ1dHRvbnNcIjtcbkBmb3J3YXJkIFwiY2xlYXJmaXhcIjtcbkBmb3J3YXJkIFwiY29sb3JzXCI7XG5AZm9yd2FyZCBcImdyYWRpZW50XCI7XG5AZm9yd2FyZCBcImlucHV0XCI7XG5AZm9yd2FyZCBcIm9uLWV2ZW50XCI7XG5AZm9yd2FyZCBcInBsYWNlaG9sZGVyXCI7XG5AZm9yd2FyZCBcImhpZGRlblwiO1xuQGZvcndhcmQgXCJzcGFjaW5nXCI7XG5AZm9yd2FyZCBcInR5cG9ncmFwaHlcIjtcbiIsIi8qKlxuICogQTExeVxuICogR3JvdXA6IFRvb2xzXG4gKi9cblxuLyogVGhpcyBpcyB0byBjb3ZlciBWb2ljZS1vdmVyIGRldmljZXMgZm9yIGFjY2Vzc2liaWxpdHkgcHVycG9zZXMgKi9cbkBtaXhpbiBsaXN0LXN0eWxlLW5vbmUoKSB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcblxuICAmOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFwyMDBCXCI7IC8qIGFkZCB6ZXJvLXdpZHRoIHNwYWNlICovXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gICAgY2xpcC1wYXRoOiBpbnNldCg1MCUpO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgYm9yZGVyOiAwO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgfVxufVxuXG4vKipcbiAgKiBTa2lwIGxpbmsgbWl4aW5cbiAgKiBWaXN1YWxseSBoaWRlcyBhbiBlbGVtZW50IG9mZi1zY3JlZW4gYnV0IG1ha2VzIGl0IHZpc2libGUgYW5kIGFjY2Vzc2libGVcbiAgKiB3aGVuIGZvY3VzZWQgKGUuZy4sIGZvciBrZXlib2FyZCB1c2VycyB0byBza2lwIHRvIG1haW4gY29udGVudCkuXG4gICogRm9sbG93cyBXQ0FHIDIuMiBhY2Nlc3NpYmlsaXR5IGJlc3QgcHJhY3RpY2VzLlxuICAqIFVzZSBvbiBgLnUtc2tpcC1saW5rYCBvciBlcXVpdmFsZW50IHV0aWxpdHkgY2xhc3MuXG4gICovXG5AbWl4aW4gc2tpcC1saW5rKCkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogLTk5OXB4O1xuICBsZWZ0OiAtOTk5cHg7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMXB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjbGlwLXBhdGg6IGluc2V0KDUwJSk7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGJvcmRlcjogMDtcblxuICAmOmZvY3VzIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAxcmVtO1xuICAgIGxlZnQ6IDFyZW07XG4gICAgd2lkdGg6IGF1dG87XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHBhZGRpbmc6IDAuNzVyZW0gMXJlbTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIHotaW5kZXg6IDEwMDA7XG4gICAgY2xpcC1wYXRoOiBub25lO1xuICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICBib3gtc2hhZG93OiAwIDAgMCAycHggd2hpdGU7XG4gIH1cbn1cbiIsIi8qKlxuICogQW5pbWF0aW9uc1xuICogR3JvdXA6IFRvb2xzXG4gKi9cblxuQHVzZSBcIm9uLWV2ZW50XCIgYXMgKjtcblxuQG1peGluIGFuY2hvci1hbmltYXRpb24oKSB7XG4gICR0aGlzOiAmO1xuXG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgdHJhbnNpdGlvbjogYm9yZGVyLWJvdHRvbS1jb2xvciB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dDtcblxuICBAaW5jbHVkZSBvbi1ldmVudCB7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogaW5oZXJpdDtcbiAgfVxufVxuIiwiLyoqXG4gKiBPbiBFdmVudFxuICogR3JvdXA6IFRvb2xzXG4gKi9cblxuLy8vIEV2ZW50IHdyYXBwZXJcbi8vLyBAcGFyYW0ge0Jvb2x9ICRzZWxmIFtmYWxzZV0gLSBXaGV0aGVyIG9yIG5vdCB0byBpbmNsdWRlIGN1cnJlbnQgc2VsZWN0b3Jcbi8vLyBAbGluayBodHRwczovL3R3aXR0ZXIuY29tL2Nzc3dpemFyZHJ5L3N0YXR1cy80Nzg5Mzg1MzAzNDIwMDY3ODQgT3JpZ2luYWwgdHdlZXQgZnJvbSBIYXJyeSBSb2JlcnRzXG4vLyAudXNhZ2Uge1xuLy8gICBAaW5jbHVkZSBvbi1ldmVudCB7XG4vLyAgICAgY29sb3I6IHJlYmVjY2FwdXJwbGU7XG4vLyAgIH1cbi8vIH1cblxuQG1peGluIG9uLWV2ZW50KCRzZWxmOiBmYWxzZSkge1xuICBAaWYgJHNlbGYge1xuICAgICYsXG4gICAgJjpob3ZlcixcbiAgICAmOmFjdGl2ZSxcbiAgICAmOmZvY3VzIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgJjpob3ZlcixcbiAgICAmOmFjdGl2ZSxcbiAgICAmOmZvY3VzIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuIiwiLyoqXG4gKiBCb3ggU2hhZG93c1xuICogR3JvdXA6IFRvb2xzXG4gKlxuICogQG1peGluIGJveC1zaGFkb3dcbiAqIFxuICogQHBhcmFtIHtTdHJpbmd9ICRzdHlsZSAtIM6kzr8gz4PPhM+Fzrsgz4TOv8+FIGJveC1zaGFkb3cuIM6Vz4DOuc+Ez4HOtc+Az4zOvM61zr3Otc+CIM+EzrnOvM6tz4I6ICcwMScsICcwMicsICcwMycsICcwNCcsICcwNScsICcwNicuXG4gKiBAcGFyYW0ge1N0cmluZ30gJHRoZW1lIC0gzqTOvyDOuM6tzrzOsSDPhM63z4Igz4POus65zqzPgi4gzpXPgM65z4TPgc61z4DPjM68zrXOvc61z4Igz4TOuc68zq3PgjogJ2xpZ2h0JywgJ2RhcmsnLlxuICogQHBhcmFtIHtCb29sZWFufSAkaW1wb3J0YW50IC0gzpHOvSDOtc6vzr3Osc65IGB0cnVlYCwgz4DPgc6/z4POuM6tz4TOtc65IM+Ezr8gYCFpbXBvcnRhbnRgIM+Dz4TOt869IM65zrTOuc+Mz4TOt8+EzrEgYm94LXNoYWRvdy4gzqDPgc6/zrXPgM65zrvOv86zzq46IGBmYWxzZWAuXG4gKiBcbiAqIEBleGFtcGxlXG4gKiAuZWxlbWVudCB7XG4gKiAgIEBpbmNsdWRlIGJveC1zaGFkb3coJzAzJywgJ2RhcmsnKTtcbiAqIH1cbiAqL1xuXG5AbWl4aW4gYm94LXNoYWRvdygkc3R5bGU6IFwiMDFcIiwgJHRoZW1lOiBcImxpZ2h0XCIsICRpbXBvcnRhbnQ6IGZhbHNlKSB7XG4gIGJveC1zaGFkb3c6IHZhcigtLWJveC1zaGFkb3ctI3skdGhlbWV9LSN7JHN0eWxlfSlcbiAgICAje2lmKCRpbXBvcnRhbnQsIFwiICFpbXBvcnRhbnRcIiwgXCJcIil9O1xufVxuIiwiLyoqXG4gKiBCcmVha3BvaW50cyBNaXhpbnNcbiAqIEdyb3VwOiBUb29sc1xuICovXG5cbkB1c2UgXCJzYXNzOm1hcFwiO1xuQHVzZSBcIi4uLzAxLXNldHRpbmdzL2JyZWFrcG9pbnRzXCIgYXMgKjtcbkBmb3J3YXJkIFwiLi4vMDEtc2V0dGluZ3MvYnJlYWtwb2ludHNcIjtcblxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRicmVha3BvaW50cykge1xuICAkbWluOiBtYXAuZ2V0KCRicmVha3BvaW50cywgJG5hbWUpO1xuXG4gIEByZXR1cm4gaWYoJG1pbiAhPSAwLCAkbWluLCBudWxsKTtcbn1cblxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbWF4KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRicmVha3BvaW50cykge1xuICAkbWF4OiBtYXAuZ2V0KCRicmVha3BvaW50cywgJG5hbWUpO1xuXG4gIEByZXR1cm4gaWYoJG1heCBhbmQgJG1heCA+IDAsICRtYXggLSAwLjAyLCBudWxsKTtcbn1cblxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbmV4dChcbiAgJG5hbWUsXG4gICRicmVha3BvaW50czogJGJyZWFrcG9pbnRzLFxuICAkYnJlYWtwb2ludC1uYW1lczogbWFwLmtleXMoJGJyZWFrcG9pbnRzKVxuKSB7XG4gICRuOiBpbmRleCgkYnJlYWtwb2ludC1uYW1lcywgJG5hbWUpO1xuXG4gIEBpZiBub3QgJG4ge1xuICAgIEBlcnJvciBcImJyZWFrcG9pbnQgYCN7JG5hbWV9YCBub3QgZm91bmQgaW4gYCN7JGJyZWFrcG9pbnRzfWBcIjtcbiAgfVxuXG4gIEByZXR1cm4gaWYoXG4gICAgJG4gPCBsZW5ndGgoJGJyZWFrcG9pbnQtbmFtZXMpLFxuICAgIG50aCgkYnJlYWtwb2ludC1uYW1lcywgJG4gKyAxKSxcbiAgICBudWxsXG4gICk7XG59XG5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LXVwKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRicmVha3BvaW50cykge1xuICAkbWluOiBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzKTtcblxuICBAaWYgJG1pbiB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkbmFtZSwgJGJyZWFrcG9pbnRzOiAkYnJlYWtwb2ludHMpIHtcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJG5hbWUsICRicmVha3BvaW50cyk7XG5cbiAgQGlmICRtYXgge1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LWJldHdlZW4oJGxvd2VyLCAkdXBwZXIsICRicmVha3BvaW50czogJGJyZWFrcG9pbnRzKSB7XG4gICRtaW46IGJyZWFrcG9pbnQtbWluKCRsb3dlciwgJGJyZWFrcG9pbnRzKTtcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJHVwcGVyLCAkYnJlYWtwb2ludHMpO1xuXG4gIEBpZiAkbWluICE9IG51bGwgYW5kICRtYXggIT0gbnVsbCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIGFuZCAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1heCA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRsb3dlciwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1pbiA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJHVwcGVyLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1vbmx5KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRicmVha3BvaW50cykge1xuICAkbWluOiBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgJG5leHQ6IGJyZWFrcG9pbnQtbmV4dCgkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJG5leHQpO1xuXG4gIEBpZiAkbWluICE9IG51bGwgYW5kICRtYXggIT0gbnVsbCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIGFuZCAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1heCA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRuYW1lLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWluID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkbmV4dCwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cbiIsIi8qKlxuICogQnV0dG9uXG4gKiBHcm91cDogVG9vbHNcbiAqL1xuXG5AdXNlIFwiYnJlYWtwb2ludHNcIiBhcyAqO1xuQHVzZSBcIm9uLWV2ZW50XCIgYXMgKjtcblxuQGZ1bmN0aW9uIGlmLWltcG9ydGFudCgkaW1wb3J0YW50KSB7XG4gIEByZXR1cm4gI3tpZigkaW1wb3J0YW50LCBcIiFpbXBvcnRhbnRcIiwgXCJcIil9O1xufVxuXG5AbWl4aW4gYnV0dG9uLXJlc2V0KCkge1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiBub25lO1xuICBib3gtc2hhZG93OiBub25lO1xuICB0ZXh0LWFsaWduOiBpbmhlcml0O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuQG1peGluIGJ1dHRvbigpIHtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLW0pO1xuICBib3JkZXItd2lkdGg6IHZhcigtLWJ1dHRvbi1ib3JkZXItd2lkdGgpO1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICBmb250LXNpemU6IHZhcigtLWJvZHktZm9udC1zaXplKTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXN0cmV0Y2g6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGVhZGluZy1ub25lKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLXRyYWNraW5nLW5vcm1hbCk7XG4gIHBhZGRpbmctYmxvY2s6IHZhcigtLXNwYWNpbmctMDc1KTtcbiAgcGFkZGluZy1pbmxpbmU6IHZhcigtLXNwYWNpbmctMTAwKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gIEBpbmNsdWRlIG9uLWV2ZW50IHtcbiAgICB0cmFuc2l0aW9uOlxuICAgICAgY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQsXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0LFxuICAgICAgdHJhbnNmb3JtIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0LFxuICAgICAgb3BhY2l0eSB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dDtcblxuICAgICY6YWN0aXZlIHtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMC45KTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGJ1dHRvbi1zdHlsZSgkc3R5bGU6IFwicHJpbWFyeVwiLCAkaW1wb3J0YW50OiBmYWxzZSkge1xuICBAaWYgJHN0eWxlID09IFwicHJpbWFyeVwiIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1vcmFuZ2UpIGlmLWltcG9ydGFudCgkaW1wb3J0YW50KTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLW9yYW5nZSkgaWYtaW1wb3J0YW50KCRpbXBvcnRhbnQpO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1kYXJrLWdyYXkpIGlmLWltcG9ydGFudCgkaW1wb3J0YW50KTtcblxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtbGlnaHQtZ3JheSkgaWYtaW1wb3J0YW50KCRpbXBvcnRhbnQpO1xuICAgIH1cblxuICAgICY6Zm9jdXMge1xuICAgICAgb3V0bGluZS1jb2xvcjogdmFyKC0tY29sb3ItZm9jdXMtc3Ryb2tlKSBpZi1pbXBvcnRhbnQoJGltcG9ydGFudCk7XG4gICAgfVxuICB9XG5cbiAgQGlmICRzdHlsZSA9PSBcInByaW1hcnktb3V0bGluZVwiIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1saWdodGVyLWdyYXkpIGlmLWltcG9ydGFudCgkaW1wb3J0YW50KTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLW9yYW5nZSkgaWYtaW1wb3J0YW50KCRpbXBvcnRhbnQpO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1vcmFuZ2UpIGlmLWltcG9ydGFudCgkaW1wb3J0YW50KTtcblxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtb3JhbmdlKSBpZi1pbXBvcnRhbnQoJGltcG9ydGFudCk7XG4gICAgICBjb2xvcjogdmFyKC0tY29sb3ItbGlnaHQpIGlmLWltcG9ydGFudCgkaW1wb3J0YW50KTtcbiAgICB9XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItZm9jdXMtc3Ryb2tlKTtcbiAgICB9XG4gIH1cblxuICBAaWYgJHN0eWxlID09IFwic2Vjb25kYXJ5XCIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpIGlmLWltcG9ydGFudCgkaW1wb3J0YW50KTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpIGlmLWltcG9ydGFudCgkaW1wb3J0YW50KTtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItbGlnaHQpIGlmLWltcG9ydGFudCgkaW1wb3J0YW50KTtcblxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtbGlnaHRlci1ncmF5KVxuICAgICAgICBpZi1pbXBvcnRhbnQoJGltcG9ydGFudCk7XG4gICAgICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSkgaWYtaW1wb3J0YW50KCRpbXBvcnRhbnQpO1xuICAgIH1cblxuICAgICY6Zm9jdXMge1xuICAgICAgb3V0bGluZS1jb2xvcjogdmFyKC0tY29sb3ItZm9jdXMtc3Ryb2tlKSBpZi1pbXBvcnRhbnQoJGltcG9ydGFudCk7XG4gICAgfVxuICB9XG5cbiAgQGlmICRzdHlsZSA9PSBcInNlY29uZGFyeS1vdXRsaW5lXCIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWxpZ2h0ZXItZ3JheSkgaWYtaW1wb3J0YW50KCRpbXBvcnRhbnQpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSkgaWYtaW1wb3J0YW50KCRpbXBvcnRhbnQpO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKSBpZi1pbXBvcnRhbnQoJGltcG9ydGFudCk7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpIGlmLWltcG9ydGFudCgkaW1wb3J0YW50KTtcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1saWdodCkgaWYtaW1wb3J0YW50KCRpbXBvcnRhbnQpO1xuICAgIH1cblxuICAgICY6Zm9jdXMge1xuICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1mb2N1cy1zdHJva2UpO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkc3R5bGUgPT0gXCJzZWNvbmRhcnktbGlnaHRcIiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgaWYtaW1wb3J0YW50KCRpbXBvcnRhbnQpO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKSBpZi1pbXBvcnRhbnQoJGltcG9ydGFudCk7XG5cbiAgICAmOmhvdmVyLFxuICAgICZbYXJpYS1jdXJyZW50PVwicGFnZVwiXSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKSBpZi1pbXBvcnRhbnQoJGltcG9ydGFudCk7XG4gICAgICBjb2xvcjogdmFyKC0tY29sb3ItbGlnaHQpIGlmLWltcG9ydGFudCgkaW1wb3J0YW50KTtcbiAgICB9XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItZm9jdXMtc3Ryb2tlKTtcbiAgICB9XG4gIH1cblxuICBAaWYgJHN0eWxlID09IFwiZmlsdGVyXCIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLXNlYXJjaC1ncmF5KSBpZi1pbXBvcnRhbnQoJGltcG9ydGFudCk7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpIGlmLWltcG9ydGFudCgkaW1wb3J0YW50KTtcblxuICAgICZbYXJpYS1wcmVzc2VkPVwidHJ1ZVwiXSB7XG4gICAgICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtb3JhbmdlKSBpZi1pbXBvcnRhbnQoJGltcG9ydGFudCk7XG4gICAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtc2VtaWJvbGQpO1xuICAgIH1cblxuICAgICY6Zm9jdXMge1xuICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1mb2N1cy1zdHJva2UpO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gYnV0dG9uLXNpemUoJHNpemU6IFwibWRcIikge1xuICAvLyByZWNvbW1lbmRlZCBmb3IgcGFnaW5hdGlvblxuICBAaWYgJHNpemUgPT0gXCJ4c1wiIHtcbiAgICBmb250LXNpemU6IHZhcigtLWJvZHktc21hbGwtZm9udC1zaXplKTtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZCk7XG4gICAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLXRyYWNraW5nLW5vcm1hbCk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWxlYWRpbmctdGlnaHQpO1xuICAgIHBhZGRpbmctYmxvY2s6IHZhcigtLXNwYWNpbmctMDI1KTtcbiAgICBwYWRkaW5nLWlubGluZTogdmFyKC0tc3BhY2luZy0wNzUpO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJ0bi1yYWRpdXMtZnVsbCk7XG4gIH1cblxuICAvLyByZWNvbW1lbmRlZCBmb3IgcGRmIGRvd25sb2FkIG9yIGJhZGdlXG4gIEBpZiAkc2l6ZSA9PSBcInNtXCIge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1zbWFsbC1mb250LXNpemUpO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbiAgICBsZXR0ZXItc3BhY2luZzogdmFyKC0tdHJhY2tpbmctbm9ybWFsKTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tbGVhZGluZy1ub25lKTtcbiAgICBwYWRkaW5nLWJsb2NrOiB2YXIoLS1zcGFjaW5nLTAyNSk7XG4gICAgcGFkZGluZy1pbmxpbmU6IHZhcigtLXNwYWNpbmctMDc1KTtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1idG4tcmFkaXVzKTtcbiAgfVxuXG4gIC8vIHJlY29tbWVuZGVkIGZvciBnZW5lcmFsIHVzZVxuICBAaWYgJHNpemUgPT0gXCJtZFwiIHtcbiAgICBmb250LXNpemU6IHZhcigtLWJvZHktbGFyZ2UtZm9udC1zaXplKTtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZCk7XG4gICAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLXRyYWNraW5nLW5vcm1hbCk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWxlYWRpbmctbm9uZSk7XG4gICAgcGFkZGluZy1ibG9jazogdmFyKC0tc3BhY2luZy0wNzUpO1xuICAgIHBhZGRpbmctaW5saW5lOiB2YXIoLS1zcGFjaW5nLTEwMCk7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYnRuLXJhZGl1cy1tZCk7XG4gIH1cblxuICAvLyByZWNvbW1lbmRlZCBmb3IgY3RhIGJ1dHRvbiBpbiBjb21wb25lbnRzL2Jsb2NrLCBsaWtlIFwibW9yZVwiXG4gIEBpZiAkc2l6ZSA9PSBcImxnXCIge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1mb250LXNpemUpO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1zZW1pYm9sZCk7XG4gICAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLXRyYWNraW5nLW5vcm1hbCk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWxlYWRpbmctbm9uZSk7XG4gICAgcGFkZGluZy1ibG9jazogdmFyKC0tc3BhY2luZy0xMDApO1xuICAgIHBhZGRpbmctaW5saW5lOiB2YXIoLS1zcGFjaW5nLTYwMCk7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYnRuLXJhZGl1cy1sZyk7XG4gIH1cblxuICAvLyByZWNvbW1lbmRlZCBmb3Igc3RyaWN0IHN0YXRpYyBidXR0b25zLCBsaWtlIGhlcm8gYmFubmVyLCBuZXdzbGV0dGVyIGJsb2NrIGN0YSwgZXRjLlxuICBAaWYgJHNpemUgPT0gXCJzdGF0aWNcIiB7XG4gICAgZm9udC1zaXplOiB2YXIoLS1ib2R5LWZvbnQtc2l6ZSk7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xuICAgIGxldHRlci1zcGFjaW5nOiB2YXIoLS10cmFja2luZy1ub3JtYWwpO1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1sZWFkaW5nLW5vbmUpO1xuICAgIHdpZHRoOiB2YXIoLS1zcGFjaW5nLTEyMDApO1xuICAgIGhlaWdodDogdmFyKC0tYnV0dG9uLXNpemUpO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJ0bi1yYWRpdXMtbGcpO1xuICB9XG5cbiAgLy8gYnV0dG9uIGFzIGZpbHRlciBpbnB1dFxuICBAaWYgJHNpemUgPT0gXCJmaWx0ZXJcIiB7XG4gICAgZm9udC1zaXplOiB2YXIoLS1ib2R5LWZvbnQtc2l6ZSk7XG4gICAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWJvZHktbGV0dGVyLXNwYWNpbmcpO1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LWxpbmUtaGVpZ2h0KTtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gICAgaGVpZ2h0OiB2YXIoLS1zcGFjaW5nLTMwMCk7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1sKTtcbiAgfVxufVxuIiwiLyoqXG4gKiBDbGVhcmZpeFxuICogR3JvdXA6IFRvb2xzXG4gKi9cblxuLypcblx0TWl4aW4gdG8gZHJvcCBtaWNybyBjbGVhcmZpeCBpbnRvIGEgc2VsZWN0b3IuIEZ1cnRoZXIgcmVhZGluZzpcblx0aHR0cDovL3d3dy5jc3Ntb2pvLmNvbS90aGUtdmVyeS1sYXRlc3QtY2xlYXJmaXgtcmVsb2FkZWQvXG5cblx0LnVzYWdlIHtcblx0XHRAaW5jbHVkZSBjbGVhcmZpeCgpO1xuXHR9XG5cbiAqL1xuQG1peGluIGNsZWFyZml4KCkge1xuICAmOjphZnRlciB7XG4gICAgY29udGVudDogXCJcIiAhaW1wb3J0YW50O1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgY2xlYXI6IGJvdGggIWltcG9ydGFudDtcbiAgfVxufVxuIiwiLyoqXG4gKiBDb2xvcnNcbiAqXG4gKiBHcm91cDogVG9vbHNcbiAqL1xuXG5AdXNlIFwiLi4vMDEtc2V0dGluZ3MvdmFyaWFibGVzXCIgYXMgKjtcblxuOnJvb3Qge1xuICBAZWFjaCAkbmFtZSwgJGNvbG9yIGluICRjb2xvcnMge1xuICAgIC0tY29sb3ItI3skbmFtZX06ICN7JGNvbG9yfTtcbiAgfVxuXG4gIC0tb3ZlcmxheS1jb2xvcjogcmdiKDAgMCAwIC8gODQlKTtcbiAgLS1vdmVybGF5LWNvbG9yLWxpZ2h0OiByZ2IoMCAwIDAgLyAzNSUpO1xufVxuIiwiLyoqXG4gKiBMaW5lYXIgR3JhZGllbnQgTWl4aW5cbiAqIEdyb3VwOiBUb29sc1xuICogXG4gKiBHZW5lcmF0ZXMgYSBsaW5lYXIgZ3JhZGllbnQgYmFja2dyb3VuZCB3aXRoIGN1c3RvbWl6YWJsZSBkaXJlY3Rpb24sIGNvbG9ycywgYW5kIHN0b3BzLlxuICogXG4gKiBAbWl4aW4gbGluZWFyLWdyYWRpZW50KFxuICogICAkZGlyZWN0aW9uOiB0byBib3R0b20sICAgICAgICAgLy8gRGlyZWN0aW9uIG9mIHRoZSBncmFkaWVudCAoZS5nLiwgJ3RvIHJpZ2h0JywgJzQ1ZGVnJylcbiAqICAgJHN0YXJ0LWNvbG9yOiByZ2JhKDAsIDAsIDAsIDApLCAvLyBTdGFydGluZyBjb2xvciBvZiB0aGUgZ3JhZGllbnRcbiAqICAgJHN0YXJ0LXBlcmNlbnQ6IDAlLCAgICAgICAgICAgIC8vIFBlcmNlbnRhZ2UgcG9zaXRpb24gd2hlcmUgdGhlIHN0YXJ0aW5nIGNvbG9yIGJlZ2luc1xuICogICAkZW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNyksIC8vIEVuZGluZyBjb2xvciBvZiB0aGUgZ3JhZGllbnRcbiAqICAgJGVuZC1wZXJjZW50OiA3MCUsICAgICAgICAgICAgIC8vIFBlcmNlbnRhZ2UgcG9zaXRpb24gd2hlcmUgdGhlIGVuZGluZyBjb2xvciBlbmRzXG4gKiAgICRpbXBvcnRhbnQ6IGZhbHNlICAgICAgICAgICAgICAgLy8gSWYgdHJ1ZSwgYXBwZW5kcyBgIWltcG9ydGFudGAgdG8gdGhlIGJhY2tncm91bmQgcHJvcGVydHlcbiAqIClcbiAqIFxuICogQGV4YW1wbGVcbiAqIC5jdGFfX2J1dHRvbi0tZ3JhZGllbnQge1xuICogICBAaW5jbHVkZSBsaW5lYXItZ3JhZGllbnQoMjcwZGVnLCByZ2JhKDAsIDAsIDAsIDAuMDApLCAzNC41JSwgcmdiYSgwLCAwLCAwLCAwLjcwKSwgNjMlKTtcbiAqIH1cbiAqIFxuICogQGV4YW1wbGVcbiAqIC5jdGFfX2J1dHRvbi0tZ3JhZGllbnQtaW1wb3J0YW50IHtcbiAqICAgQGluY2x1ZGUgbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAjRkY1NzMzLCAwJSwgcmdiYSgyNTUsIDg3LCA1MSwgMC41KSwgMTAwJSwgdHJ1ZSk7XG4gKiB9XG4gKlx0MGRlZzogUG9pbnRzIHRvIHRvcC5cbiAqICA5MGRlZzogUG9pbnRzIHRvIHJpZ2h0LlxuICpcdDE4MGRlZzogUG9pbnRzIHRvIGJvdHRvbS5cbiAqXHQyNzBkZWc6IFBvaW50cyB0byBsZWZ0LlxuICovXG5cbkBtaXhpbiBsaW5lYXItZ3JhZGllbnQoXG4gICRkaXJlY3Rpb246IHRvIGxlZnQsXG4gICRzdGFydC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwKSxcbiAgJHN0YXJ0LXBlcmNlbnQ6IDAlLFxuICAkZW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNyksXG4gICRlbmQtcGVyY2VudDogNzAlLFxuICAkaW1wb3J0YW50OiBmYWxzZVxuKSB7XG4gICRpbXBvcnRhbnQtc3RyaW5nOiBpZigkaW1wb3J0YW50LCBcIiAhaW1wb3J0YW50XCIsIFwiXCIpO1xuXG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudChcbiAgICAgICRkaXJlY3Rpb24sXG4gICAgICAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsXG4gICAgICAkZW5kLWNvbG9yICRlbmQtcGVyY2VudFxuICAgIClcbiAgICAjeyRpbXBvcnRhbnQtc3RyaW5nfTtcbn1cbiIsIi8qKlxuICogSW5wdXRcbiAqIEdyb3VwOiBUb29sc1xuICovXG5cbkB1c2UgXCJwbGFjZWhvbGRlclwiIGFzICo7XG5AdXNlIFwidHlwb2dyYXBoeVwiIGFzICo7XG5AdXNlIFwiYm94LXNoYWRvd3NcIiBhcyAqO1xuQHVzZSBcIm9uLWV2ZW50XCIgYXMgKjtcblxuQG1peGluIGlucHV0LWRlZmF1bHQoJHR5cGU6IFwiZGVmYXVsdFwiKSB7XG4gICR0aGlzOiAmO1xuXG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMteHMpO1xuICBib3JkZXI6IG5vbmU7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LWxpbmUtaGVpZ2h0KTtcbiAgdGV4dC1pbmRlbnQ6IDA7XG5cbiAgQGluY2x1ZGUgb24tZXZlbnQge1xuICAgIHRyYW5zaXRpb246IGJveC1zaGFkb3cgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQ7XG4gIH1cblxuICBAaWYgJHR5cGUgIT0gXCJyZXNldFwiIHtcbiAgICAmOmhvdmVyIHtcbiAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coXCIwM1wiLCBcImxpZ2h0XCIpO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkdHlwZSA9PSBcInJlc2V0XCIge1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgfVxuXG4gIEBpZiAkdHlwZSA9PSBcInNlYXJjaFwiIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1zZWFyY2gtZ3JheSk7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1sKTtcbiAgICBoZWlnaHQ6IHZhcigtLXNwYWNpbmctMjUwKTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgcGFkZGluZzogdmFyKC0tc3BhY2luZy0wNzUpO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcblxuICAgIGlucHV0IHtcbiAgICAgIGhlaWdodDogdmFyKC0taW5wdXQtaGVpZ2h0LWxhcmdlKTtcbiAgICAgIHdpZHRoOiB2YXIoLS1tYXgtd2lkdGgtLTZ4cyk7XG4gICAgICBjb2xvcjogaW5oZXJpdDtcblxuICAgICAgQGluY2x1ZGUgdGV4dChcInNtXCIpO1xuXG4gICAgICBAaW5jbHVkZSBwbGFjZWhvbGRlciB7XG4gICAgICAgIEBpbmNsdWRlIHRleHQoXCJzbVwiKTtcblxuICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG4gICAgICAgIG9wYWNpdHk6IDAuNztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaWYgJHR5cGUgPT0gXCJuZXdzbGV0dGVyXCIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLXNlYXJjaC1ncmF5KTtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLWwpO1xuICAgIGhlaWdodDogdmFyKC0tc3BhY2luZy0zMDApO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiByb3cgbm93cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgcGFkZGluZzogdmFyKC0tc3BhY2luZy0xMDApO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcblxuICAgIGlucHV0IHtcbiAgICAgIGhlaWdodDogdmFyKC0taW5wdXQtaGVpZ2h0LW1lZGl1bSk7XG4gICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICBAaW5jbHVkZSB0ZXh0KFwibWRcIik7XG5cbiAgICAgIEBpbmNsdWRlIHBsYWNlaG9sZGVyIHtcbiAgICAgICAgQGluY2x1ZGUgdGV4dChcIm1kXCIpO1xuXG4gICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcbiAgICAgIH1cblxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIG91dGxpbmU6IDJweCBzb2xpZCB2YXIoLS1jb2xvci1mb2N1cy1zdHJva2UpO1xuICAgICAgICBvdXRsaW5lLW9mZnNldDogMXB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpZiAkdHlwZSA9PSBcImZpbHRlclwiIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1zZWFyY2gtZ3JheSk7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1sKTtcbiAgICBoZWlnaHQ6IHZhcigtLXNwYWNpbmctMzAwKTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogcm93IG5vd3JhcDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctMTAwKSB2YXIoLS1zcGFjaW5nLTE1MCk7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xuXG4gICAgaW5wdXQge1xuICAgICAgaGVpZ2h0OiB2YXIoLS1pbnB1dC1oZWlnaHQtbWVkaXVtKTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgY29sb3I6IGluaGVyaXQ7XG5cbiAgICAgIEBpbmNsdWRlIHRleHQoXCJtZFwiKTtcblxuICAgICAgQGluY2x1ZGUgcGxhY2Vob2xkZXIge1xuICAgICAgICBAaW5jbHVkZSB0ZXh0KFwibWRcIik7XG5cbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpZiAkdHlwZSA9PSBcImRlZmF1bHRcIiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtc2VhcmNoLWdyYXkpO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtbCk7XG4gICAgaGVpZ2h0OiB2YXIoLS1zcGFjaW5nLTMwMCk7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgcGFkZGluZzogdmFyKC0tc3BhY2luZy0xMDApIHZhcigtLXNwYWNpbmctMTUwKTtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG5cbiAgICBAaW5jbHVkZSB0ZXh0KFwibWRcIik7XG5cbiAgICBpbnB1dCB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGNvbG9yOiBpbmhlcml0O1xuXG4gICAgICBAaW5jbHVkZSB0ZXh0KFwibWRcIik7XG5cbiAgICAgIEBpbmNsdWRlIHBsYWNlaG9sZGVyIHtcbiAgICAgICAgQGluY2x1ZGUgdGV4dChcIm1kXCIpO1xuXG4gICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8qKlxuICogUGxhY2Vob2xkZXJcbiAqIEdyb3VwOiBUb29sc1xuICovXG5cbi8qIHN0eWxlbGludC1kaXNhYmxlICovXG4vKiBwcmV0dGllci1pZ25vcmUgKi9cbi8vIExlZ2FjeSBwbGFjZWhvbGRlciBzZWxlY3RvcnMgZm9yIGJyb2FkZXIgYnJvd3NlciBzdXBwb3J0LlxuLy8gS2VlcHMgOjpwbGFjZWhvbGRlciBzdHlsZXMgY29uc2lzdGVudCBhY3Jvc3MgbW9kZXJuIGFuZCBvbGRlciBicm93c2Vycy5cbkBtaXhpbiBwbGFjZWhvbGRlciB7XG4gICY6OnBsYWNlaG9sZGVyIHtcbiAgICBAY29udGVudDtcbiAgfVxuXG4gICY6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgIEBjb250ZW50O1xuICB9XG5cbiAgJjo6LW1vei1wbGFjZWhvbGRlciB7XG4gICAgQGNvbnRlbnQ7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gICY6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuIiwiLyoqXG4gKiBUeXBvZ3JhcGh5XG4gKiBHcm91cDogVG9vbHNcbiAqL1xuXG5AbWl4aW4gaGVhZGluZygkc2l6ZTogXCJoMVwiLCAkd2VpZ2h0OiBcInJlZ3VsYXJcIiwgJGltcG9ydGFudDogZmFsc2UpIHtcbiAgJGltcG9ydGFudC1zdHJpbmc6IFwiXCI7XG5cbiAgQGlmICRpbXBvcnRhbnQgPT0gdHJ1ZSB7XG4gICAgJGltcG9ydGFudC1zdHJpbmc6IFwiICFpbXBvcnRhbnRcIjtcbiAgfVxuXG4gIEBpZiAkc2l6ZSA9PSBcImgxXCIge1xuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LXByaW1hcnkpO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0taDEtZm9udC1zaXplKSAjeyRpbXBvcnRhbnQtc3RyaW5nfTtcbiAgICBsZXR0ZXItc3BhY2luZzogdmFyKC0taDEtbGV0dGVyLXNwYWNpbmcpICN7JGltcG9ydGFudC1zdHJpbmd9O1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1oMS1saW5lLWhlaWdodCkgI3skaW1wb3J0YW50LXN0cmluZ307XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LSN7JHdlaWdodH0pICN7JGltcG9ydGFudC1zdHJpbmd9O1xuICB9XG5cbiAgQGlmICRzaXplID09IFwiaDJcIiB7XG4gICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtcHJpbWFyeSk7XG4gICAgZm9udC1zaXplOiB2YXIoLS1oMi1mb250LXNpemUpICN7JGltcG9ydGFudC1zdHJpbmd9O1xuICAgIGxldHRlci1zcGFjaW5nOiB2YXIoLS1oMi1sZXR0ZXItc3BhY2luZykgI3skaW1wb3J0YW50LXN0cmluZ307XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWgyLWxpbmUtaGVpZ2h0KSAjeyRpbXBvcnRhbnQtc3RyaW5nfTtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtI3skd2VpZ2h0fSkgI3skaW1wb3J0YW50LXN0cmluZ307XG4gIH1cblxuICBAaWYgJHNpemUgPT0gXCJoM1wiIHtcbiAgICBmb250LWZhbWlseTogdmFyKC0tZm9udC1wcmltYXJ5KTtcbiAgICBmb250LXNpemU6IHZhcigtLWgzLWZvbnQtc2l6ZSkgI3skaW1wb3J0YW50LXN0cmluZ307XG4gICAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWgzLWxldHRlci1zcGFjaW5nKSAjeyRpbXBvcnRhbnQtc3RyaW5nfTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0taDMtbGluZS1oZWlnaHQpICN7JGltcG9ydGFudC1zdHJpbmd9O1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC0jeyR3ZWlnaHR9KSAjeyRpbXBvcnRhbnQtc3RyaW5nfTtcbiAgfVxuXG4gIEBpZiAkc2l6ZSA9PSBcImg0XCIge1xuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LXByaW1hcnkpO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0taDQtZm9udC1zaXplKSAjeyRpbXBvcnRhbnQtc3RyaW5nfTtcbiAgICBsZXR0ZXItc3BhY2luZzogdmFyKC0taDQtbGV0dGVyLXNwYWNpbmcpICN7JGltcG9ydGFudC1zdHJpbmd9O1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1oNC1saW5lLWhlaWdodCkgI3skaW1wb3J0YW50LXN0cmluZ307XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LSN7JHdlaWdodH0pICN7JGltcG9ydGFudC1zdHJpbmd9O1xuICB9XG5cbiAgQGlmICRzaXplID09IFwiaDVcIiB7XG4gICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtcHJpbWFyeSk7XG4gICAgZm9udC1zaXplOiB2YXIoLS1oNS1mb250LXNpemUpICN7JGltcG9ydGFudC1zdHJpbmd9O1xuICAgIGxldHRlci1zcGFjaW5nOiB2YXIoLS1oNS1sZXR0ZXItc3BhY2luZykgI3skaW1wb3J0YW50LXN0cmluZ307XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWg1LWxpbmUtaGVpZ2h0KSAjeyRpbXBvcnRhbnQtc3RyaW5nfTtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtI3skd2VpZ2h0fSkgI3skaW1wb3J0YW50LXN0cmluZ307XG4gIH1cblxuICBAaWYgJHNpemUgPT0gXCJoNlwiIHtcbiAgICBmb250LWZhbWlseTogdmFyKC0tZm9udC1wcmltYXJ5KTtcbiAgICBmb250LXNpemU6IHZhcigtLWg2LWZvbnQtc2l6ZSkgI3skaW1wb3J0YW50LXN0cmluZ307XG4gICAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWg2LWxldHRlci1zcGFjaW5nKSAjeyRpbXBvcnRhbnQtc3RyaW5nfTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0taDYtbGluZS1oZWlnaHQpICN7JGltcG9ydGFudC1zdHJpbmd9O1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC0jeyR3ZWlnaHR9KSAjeyRpbXBvcnRhbnQtc3RyaW5nfTtcbiAgfVxufVxuXG5AbWl4aW4gdGV4dCgkc2l6ZTogXCJtZFwiLCAkd2VpZ2h0OiBcInJlZ3VsYXJcIiwgJGltcG9ydGFudDogZmFsc2UpIHtcbiAgJGltcG9ydGFudC1zdHJpbmc6IFwiXCI7XG5cbiAgQGlmICRpbXBvcnRhbnQgPT0gdHJ1ZSB7XG4gICAgJGltcG9ydGFudC1zdHJpbmc6IFwiICFpbXBvcnRhbnRcIjtcbiAgfVxuXG4gIEBpZiAkc2l6ZSA9PSBcInNtXCIge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1zbWFsbC1mb250LXNpemUpICN7JGltcG9ydGFudC1zdHJpbmd9O1xuICAgIGxldHRlci1zcGFjaW5nOiB2YXIoLS1ib2R5LXNtYWxsLWxldHRlci1zcGFjaW5nKSAjeyRpbXBvcnRhbnQtc3RyaW5nfTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tYm9keS1zbWFsbC1saW5lLWhlaWdodCkgI3skaW1wb3J0YW50LXN0cmluZ307XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LSN7JHdlaWdodH0pICN7JGltcG9ydGFudC1zdHJpbmd9O1xuICB9XG5cbiAgQGlmICRzaXplID09IFwibWRcIiB7XG4gICAgZm9udC1zaXplOiB2YXIoLS1ib2R5LWZvbnQtc2l6ZSkgI3skaW1wb3J0YW50LXN0cmluZ307XG4gICAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWJvZHktbGV0dGVyLXNwYWNpbmcpICN7JGltcG9ydGFudC1zdHJpbmd9O1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LWxpbmUtaGVpZ2h0KSAjeyRpbXBvcnRhbnQtc3RyaW5nfTtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtI3skd2VpZ2h0fSkgI3skaW1wb3J0YW50LXN0cmluZ307XG4gIH1cblxuICBAaWYgJHNpemUgPT0gXCJsZ1wiIHtcbiAgICBmb250LXNpemU6IHZhcigtLWJvZHktbWVkaXVtLWZvbnQtc2l6ZSkgI3skaW1wb3J0YW50LXN0cmluZ307XG4gICAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWJvZHktbWVkaXVtLWxldHRlci1zcGFjaW5nKSAjeyRpbXBvcnRhbnQtc3RyaW5nfTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tYm9keS1tZWRpdW0tbGluZS1oZWlnaHQpICN7JGltcG9ydGFudC1zdHJpbmd9O1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC0jeyR3ZWlnaHR9KSAjeyRpbXBvcnRhbnQtc3RyaW5nfTtcbiAgfVxufVxuIiwiLyoqXG4gKiBTY3JlZW4gUmVhZGVyIE9ubHlcbiAqIEdyb3VwOiBUb29sc1xuICovXG5cbi8vIE1peGluIHRvIHF1aWNrbHkgYXBwbHkgYWNjZXNzaWJsZSBoaWRpbmcgdG8gZWxlbWVudHMuIEZvciBzY3JlZW4gcmVhZGVycy5cbkBtaXhpbiBoaWRkZW4tdmlzdWFsbHkoKSB7XG4gIGJvcmRlcjogMCAhaW1wb3J0YW50O1xuICBjbGlwOiByZWN0KDAgMCAwIDApICFpbXBvcnRhbnQ7XG4gIGNsaXAtcGF0aDogaW5zZXQoNTAlKSAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IDFweCAhaW1wb3J0YW50O1xuICBtYXJnaW46IC0xcHggIWltcG9ydGFudDtcbiAgb3ZlcmZsb3c6IGhpZGRlbiAhaW1wb3J0YW50O1xuICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiAxcHggIWltcG9ydGFudDtcblxuICAmOmFjdGl2ZSxcbiAgJjpmb2N1cyB7XG4gICAgY2xpcDogYXV0bztcbiAgICBjbGlwLXBhdGg6IG5vbmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIHotaW5kZXg6IDEwMDAwMDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cbn1cbiIsIi8qKlxuICogU3BhY2luZ1xuICogR3JvdXA6IFRvb2xzXG4gKi9cblxuQG1peGluIHNwYWNpbmctc2lkZXMoJHJpZ2h0OiB0cnVlLCAkbGVmdDogdHJ1ZSkge1xuICBAaWYgJHJpZ2h0IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1zcGFjZS1zbSk7XG4gIH1cblxuICBAaWYgJGxlZnQge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKC0tc3BhY2Utc20pO1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh0YWJsZXQpIHtcbiAgICBAaWYgJHJpZ2h0IHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLXNwYWNlLW1kKTtcbiAgICB9XG5cbiAgICBAaWYgJGxlZnQge1xuICAgICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1zcGFjZS1tZCk7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChkZXNrdG9wKSB7XG4gICAgQGlmICRyaWdodCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1zcGFjZS1sZyk7XG4gICAgfVxuXG4gICAgQGlmICRsZWZ0IHtcbiAgICAgIHBhZGRpbmctbGVmdDogdmFyKC0tc3BhY2UtbGcpO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gbWFyZ2luLXNpZGVzKCRyaWdodDogdHJ1ZSwgJGxlZnQ6IHRydWUsICRuZWdhdGl2ZTogZmFsc2UpIHtcbiAgJG1pbnVzOiBpZigkbmVnYXRpdmUsIFwiLVwiLCBcIlwiKTtcblxuICBAaWYgJHJpZ2h0IHtcbiAgICBtYXJnaW4tcmlnaHQ6ICN7JG1pbnVzfXZhcigtLXNwYWNlLXNtKTtcbiAgfVxuXG4gIEBpZiAkbGVmdCB7XG4gICAgbWFyZ2luLWxlZnQ6ICN7JG1pbnVzfXZhcigtLXNwYWNlLXNtKTtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAodGFibGV0KSB7XG4gICAgQGlmICRyaWdodCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6ICN7JG1pbnVzfXZhcigtLXNwYWNlLW1kKTtcbiAgICB9XG5cbiAgICBAaWYgJGxlZnQge1xuICAgICAgbWFyZ2luLWxlZnQ6ICN7JG1pbnVzfXZhcigtLXNwYWNlLW1kKTtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGRlc2t0b3ApIHtcbiAgICBAaWYgJHJpZ2h0IHtcbiAgICAgIG1hcmdpbi1yaWdodDogI3skbWludXN9dmFyKC0tc3BhY2UtbGcpO1xuICAgIH1cblxuICAgIEBpZiAkbGVmdCB7XG4gICAgICBtYXJnaW4tbGVmdDogI3skbWludXN9dmFyKC0tc3BhY2UtbGcpO1xuICAgIH1cbiAgfVxufVxuIiwiLyoqXG4gKiBNYWluIEdlbmVyaWMgRmlsZVxuICogR3JvdXA6IEdlbmVyaWNcbiAqL1xuXG5AZm9yd2FyZCBcImFuaW1hdGlvbnNcIjtcbkBmb3J3YXJkIFwicmVzZXRcIjtcbkBmb3J3YXJkIFwic3dpcGVyLXBhZ2luYXRpb25cIjtcbiIsIi8qKlxuICogQW5pbWF0aW9uc1xuICogR3JvdXA6IEdlbmVyaWNcbiAgKiBUaGlzIGZpbGUgY29udGFpbnMgcmV1c2FibGUga2V5ZnJhbWUgYW5pbWF0aW9ucyBmb3IgdmFyaW91cyB2aXN1YWwgZWZmZWN0cy5cbiAqIEl0IGluY2x1ZGVzIHV0aWxpdHkgY2xhc3NlcyBwcmVmaXhlZCB3aXRoIGBhbmltYXRlLWAgZm9yIGVhc3kgYXBwbGljYXRpb24uXG4gKi9cblxuLyogVXRpbGl0eSBjbGFzc2VzIGZvciBhbmltYXRpbmcgZWxlbWVudHMgKi9cbltjbGFzc149XCJhbmltYXRlLVwiXSxcbltjbGFzcyo9XCIgYW5pbWF0ZS1cIl0ge1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7IC8vIEVuc3VyZXMgdmlzaWJpbGl0eSBmb3IgYW5pbWF0ZWQgZWxlbWVudHNcbn1cblxuLyogU2xpZGUgRG93biBBbmltYXRpb24gKi9cblxuLyoqXG4gKiBAYW5pbWF0aW9uIHNsaWRlLWRvd25cbiAqIE1vdmVzIGFuIGVsZW1lbnQgZnJvbSBhYm92ZSB0aGUgdmlld3BvcnQgaW50byBpdHMgbm9ybWFsIHBvc2l0aW9uIHdpdGggYSBzbW9vdGggdHJhbnNpdGlvbi5cbiAqIFVzZSB0aGlzIGZvciBkcm9wZG93bnMsIG1vZGFscywgb3IgbW9iaWxlIG1lbnVzLlxuICovXG5Aa2V5ZnJhbWVzIHNsaWRlLWRvd24ge1xuICBmcm9tIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpOyAvLyBTdGFydCBwb3NpdGlvbjogb3V0c2lkZSB0aGUgdmlld3BvcnQgKHRvcClcbiAgICBvcGFjaXR5OiAwOyAvLyBGdWxseSB0cmFuc3BhcmVudFxuICB9XG5cbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsgLy8gRW5kIHBvc2l0aW9uOiBub3JtYWwgbG9jYXRpb25cbiAgICBvcGFjaXR5OiAxOyAvLyBGdWxseSB2aXNpYmxlXG4gIH1cbn1cblxuLyogU2xpZGUgVXAgQW5pbWF0aW9uICovXG5cbi8qKlxuICogQGFuaW1hdGlvbiBzbGlkZS11cFxuICogTW92ZXMgYW4gZWxlbWVudCBmcm9tIGl0cyBub3JtYWwgcG9zaXRpb24gdG8gYWJvdmUgdGhlIHZpZXdwb3J0IHdpdGggYSBzbW9vdGggdHJhbnNpdGlvbi5cbiAqIFVzZSB0aGlzIGZvciBoaWRpbmcgZHJvcGRvd25zLCBtb2RhbHMsIG9yIG1vYmlsZSBtZW51cy5cbiAqL1xuQGtleWZyYW1lcyBzbGlkZS11cCB7XG4gIGZyb20ge1xuICAgIHRyYW5zZm9ybTogc2NhbGVZKDApOyAvLyBTdGFydCBwb3NpdGlvbjogbm9ybWFsIGxvY2F0aW9uXG4gICAgb3BhY2l0eTogMDsgLy8gRnVsbHkgdHJhbnNwYXJlbnRcbiAgfVxuXG4gIHRvIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlWSgxKTsgLy8gRW5kIHBvc2l0aW9uOiBvdXRzaWRlIHRoZSB2aWV3cG9ydCAodG9wKVxuICAgIG9wYWNpdHk6IDE7IC8vIEZ1bGx5IHZpc2libGVcbiAgfVxufVxuXG4vKiBTbGlkZSBMZWZ0IEFuaW1hdGlvbiAqL1xuXG4vKipcbiAqIEBhbmltYXRpb24gc2xpZGUtbGVmdFxuICogTW92ZXMgYW4gZWxlbWVudCBmcm9tIGFib3ZlIHRoZSB2aWV3cG9ydCBpbnRvIGl0cyBub3JtYWwgcG9zaXRpb24gd2l0aCBhIHNtb290aCB0cmFuc2l0aW9uLlxuICogVXNlIHRoaXMgZm9yIGRyb3Bkb3ducywgbW9kYWxzLCBvciBtb2JpbGUgbWVudXMuXG4gKi9cbkBrZXlmcmFtZXMgc2xpZGUtbGVmdCB7XG4gIGZyb20ge1xuICAgIHRyYW5zZm9ybTogc2NhbGVYKDApOyAvLyBTdGFydCBwb3NpdGlvbjogemVybyBYIHNpemVcbiAgICBvcGFjaXR5OiAwOyAvLyBGdWxseSB0cmFuc3BhcmVudFxuICB9XG5cbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogc2NhbGVYKDEpOyAvLyBFbmQgcG9zaXRpb246IG5vcm1hbCBzaXplXG4gICAgb3BhY2l0eTogMTsgLy8gRnVsbHkgdmlzaWJsZVxuICB9XG59XG5cbi8qIEZhZGUgSW4gQW5pbWF0aW9uICovXG5cbi8qKlxuICogQGFuaW1hdGlvbiBmYWRlLWluXG4gKiBHcmFkdWFsbHkgaW5jcmVhc2VzIHRoZSBvcGFjaXR5IG9mIGFuIGVsZW1lbnQgZnJvbSAwIHRvIDEuXG4gKiBVc2UgdGhpcyBmb3IgdG9vbHRpcHMsIHBvcHVwcywgb3Igc3VidGxlIGFwcGVhcmFuY2UgZWZmZWN0cy5cbiAqL1xuQGtleWZyYW1lcyBmYWRlLWluIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDsgLy8gRnVsbHkgdHJhbnNwYXJlbnRcbiAgfVxuXG4gIHRvIHtcbiAgICBvcGFjaXR5OiAxOyAvLyBGdWxseSB2aXNpYmxlXG4gIH1cbn1cblxuLyogRmFkZSBPdXQgQW5pbWF0aW9uICovXG5cbi8qKlxuICogQGFuaW1hdGlvbiBmYWRlLW91dFxuICogR3JhZHVhbGx5IGRlY3JlYXNlcyB0aGUgb3BhY2l0eSBvZiBhbiBlbGVtZW50IGZyb20gMSB0byAwLlxuICogVXNlIHRoaXMgZm9yIGRpc21pc3NpbmcgdG9vbHRpcHMsIHBvcHVwcywgb3Igc3VidGxlIGRpc2FwcGVhcmFuY2UgZWZmZWN0cy5cbiAqL1xuQGtleWZyYW1lcyBmYWRlLW91dCB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDE7IC8vIEZ1bGx5IHZpc2libGVcbiAgfVxuXG4gIHRvIHtcbiAgICBvcGFjaXR5OiAwOyAvLyBGdWxseSB0cmFuc3BhcmVudFxuICB9XG59XG5cbi8qIFNjYWxlIEluIEFuaW1hdGlvbiAqL1xuXG4vKipcbiAqIEBhbmltYXRpb24gc2NhbGUtaW5cbiAqIEdyYWR1YWxseSBzY2FsZXMgYW4gZWxlbWVudCBmcm9tIDAuOHggdG8gaXRzIG5vcm1hbCBzaXplLlxuICogVXNlIHRoaXMgZm9yIG1vZGFscywgaW1hZ2VzLCBvciB6b29tIGVmZmVjdHMuXG4gKi9cbkBrZXlmcmFtZXMgc2NhbGUtaW4ge1xuICBmcm9tIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOCk7IC8vIFNjYWxlZCBkb3duXG4gICAgb3BhY2l0eTogMDsgLy8gRnVsbHkgdHJhbnNwYXJlbnRcbiAgfVxuXG4gIHRvIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpOyAvLyBOb3JtYWwgc2l6ZVxuICAgIG9wYWNpdHk6IDE7IC8vIEZ1bGx5IHZpc2libGVcbiAgfVxufVxuXG4vKiBTY2FsZSBPdXQgQW5pbWF0aW9uICovXG5cbi8qKlxuICogQGFuaW1hdGlvbiBzY2FsZS1vdXRcbiAqIEdyYWR1YWxseSBzY2FsZXMgYW4gZWxlbWVudCBmcm9tIGl0cyBub3JtYWwgc2l6ZSB0byAwLjh4LlxuICogVXNlIHRoaXMgZm9yIGRpc21pc3NpbmcgbW9kYWxzLCBpbWFnZXMsIG9yIHpvb20gZWZmZWN0cy5cbiAqL1xuQGtleWZyYW1lcyBzY2FsZS1vdXQge1xuICBmcm9tIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpOyAvLyBOb3JtYWwgc2l6ZVxuICAgIG9wYWNpdHk6IDE7IC8vIEZ1bGx5IHZpc2libGVcbiAgfVxuXG4gIHRvIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOCk7IC8vIFNjYWxlZCBkb3duXG4gICAgb3BhY2l0eTogMDsgLy8gRnVsbHkgdHJhbnNwYXJlbnRcbiAgfVxufVxuXG4vKiBCb3VuY2UgQW5pbWF0aW9uICovXG5cbi8qKlxuICogQGFuaW1hdGlvbiBib3VuY2VcbiAqIENyZWF0ZXMgYSBib3VuY2luZyBlZmZlY3QgZm9yIGFuIGVsZW1lbnQuXG4gKiBVc2UgdGhpcyBmb3IgY2FsbC10by1hY3Rpb24gYnV0dG9ucyBvciBhdHRlbnRpb24tZ3JhYmJpbmcgZWZmZWN0cy5cbiAqL1xuQGtleWZyYW1lcyBib3VuY2Uge1xuICAwJSxcbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOyAvLyBOb3JtYWwgcG9zaXRpb25cbiAgfVxuXG4gIDUwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMCUpOyAvLyBNb3ZlIHVwIHNsaWdodGx5XG4gIH1cbn1cblxuLyoqXG4gKiBAYW5pbWF0aW9uIGJvdW5jZSAyXG4gKiBDcmVhdGVzIGEgYm91bmNpbmcgZWZmZWN0IGZvciBhbiBlbGVtZW50LlxuICogVXNlIHRoaXMgZm9yIGNhbGwtdG8tYWN0aW9uIGJ1dHRvbnMgb3IgYXR0ZW50aW9uLWdyYWJiaW5nIGVmZmVjdHMuXG4gKi9cbkBrZXlmcmFtZXMgYm91bmNlMiB7XG4gIDAlLFxuICAyMCUsXG4gIDUwJSxcbiAgODAlLFxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIH1cblxuICA0MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjAlKTtcbiAgfVxuXG4gIDYwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMCUpO1xuICB9XG59XG5cbi8qIFNsaWRlIGJvdW5jZSB1cCBBbmltYXRpb24gKi9cblxuLyoqXG4gKiBAYW5pbWF0aW9uIHNsaWRlLWJvdW5jZS11cFxuICogQ3JlYXRlcyBhIGJvdW5jaW5nIGVmZmVjdCBmb3IgYW4gZWxlbWVudC5cbiAqIFVzZSB0aGlzIGZvciBhY2NvcmRpb24gb3IgYXR0ZW50aW9uLWdyYWJiaW5nIGVmZmVjdHMuXG4gKi9cbkBrZXlmcmFtZXMgc2xpZGUtYm91bmNlLXVwIHtcbiAgZnJvbSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZVkoMC41KSB0cmFuc2xhdGVZKDMwJSk7IC8vIFN0YXJ0aW5nIHBvc2l0aW9uXG4gIH1cblxuICB0byB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZVkoMSkgdHJhbnNsYXRlWSgwKTsgLy8gTm9ybWFsIHBvc2l0aW9uXG4gIH1cbn1cblxuLyogU2xpZGUgYm91bmNlIGRvd24gQW5pbWF0aW9uICovXG5cbi8qKlxuICogQGFuaW1hdGlvbiBzbGlkZS1ib3VuY2UtZG93blxuICogQ3JlYXRlcyBhIGJvdW5jaW5nIGVmZmVjdCBmb3IgYW4gZWxlbWVudC5cbiAqIFVzZSB0aGlzIGZvciBhY2NvcmRpb24gb3IgYXR0ZW50aW9uLWdyYWJiaW5nIGVmZmVjdHMuXG4gKi9cbkBrZXlmcmFtZXMgc2xpZGUtYm91bmNlLWRvd24ge1xuICBmcm9tIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlWSgwLjUpIHRyYW5zbGF0ZVkoLTMwJSk7IC8vIFN0YXJ0aW5nIHBvc2l0aW9uXG4gIH1cblxuICB0byB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZVkoMSkgdHJhbnNsYXRlWSgwKTsgLy8gTm9ybWFsIHBvc2l0aW9uXG4gIH1cbn1cblxuLyogUm90YXRlIEFuaW1hdGlvbiAqL1xuXG4vKipcbiAqIEBhbmltYXRpb24gcm90YXRlIGZ1bGxcbiAqIFJvdGF0ZXMgYW4gZWxlbWVudCAzNjAgZGVncmVlcy5cbiAqIFVzZSB0aGlzIGZvciBsb2FkaW5nIHNwaW5uZXJzIG9yIGRlY29yYXRpdmUgZWZmZWN0cy5cbiAqL1xuQGtleWZyYW1lcyByb3RhdGUtZnVsbCB7XG4gIGZyb20ge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpOyAvLyBTdGFydGluZyBhbmdsZVxuICB9XG5cbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7IC8vIENvbXBsZXRlIHJvdGF0aW9uXG4gIH1cbn1cblxuLyoqXG4gKiBAYW5pbWF0aW9uIHJvdGF0ZSBoYWxmXG4gKiBSb3RhdGVzIGFuIGVsZW1lbnQgMTgwIGRlZ3JlZXMuXG4gKiBVc2UgdGhpcyBmb3IgbG9hZGluZyBzcGlubmVycyBvciBkZWNvcmF0aXZlIGVmZmVjdHMuXG4gKi9cbkBrZXlmcmFtZXMgcm90YXRlLTE4MCB7XG4gIGZyb20ge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpOyAvLyBTdGFydGluZyBhbmdsZVxuICB9XG5cbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7IC8vIENvbXBsZXRlIHJvdGF0aW9uXG4gIH1cbn1cblxuLyoqXG4gKiBAYW5pbWF0aW9uIHJvdGF0ZSA5MFxuICogUm90YXRlcyBhbiBlbGVtZW50IDkwIGRlZ3JlZXMuXG4gKiBVc2UgdGhpcyBmb3IgbG9hZGluZyBzcGlubmVycyBvciBkZWNvcmF0aXZlIGVmZmVjdHMuXG4gKi9cbkBrZXlmcmFtZXMgcm90YXRlLTkwIHtcbiAgZnJvbSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7IC8vIFN0YXJ0aW5nIGFuZ2xlXG4gIH1cblxuICB0byB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpOyAvLyBDb21wbGV0ZSByb3RhdGlvblxuICB9XG59XG5cbi8qKlxuICogS2V5ZnJhbWUgYW5pbWF0aW9uOiBmdWxsIDM2MMKwIGNsb2Nrd2lzZSByb3RhdGlvbi5cbiAqIENvbW1vbmx5IGFwcGxpZWQgdG8gaWNvbnMgb3IgbG9hZGVycyB0byBpbmRpY2F0ZSBwcm9ncmVzcyBvciBhY3Rpdml0eS5cbiAqL1xuQGtleWZyYW1lcyBzcGluIHtcbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gIH1cbn1cblxuLyoqXG4gKiBAYW5pbWF0aW9uIHNoYWtlIFhcbiAqIFNpbXBsZSBzaGFrZSBhbmltYXRpb24gZm9yIGVycm9yc1xuICovXG5Aa2V5ZnJhbWVzIHNoYWtlLXgge1xuICAwJSxcbiAgMTAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIH1cblxuICAyMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgje2NhbGMoLTEgKiB2YXIoLS1zcGFjaW5nLTA1MCkpfSk7XG4gIH1cblxuICAzMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgfVxuXG4gIDQwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKHZhcigtLXNwYWNpbmctMDUwKSk7XG4gIH1cblxuICA1MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgfVxuXG4gIDYwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKCN7Y2FsYygtMSAqIHZhcigtLXNwYWNpbmctMDUwKSl9KTtcbiAgfVxuXG4gIDcwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB9XG5cbiAgODAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgodmFyKC0tc3BhY2luZy0wNTApKTtcbiAgfVxuXG4gIDkwJSxcbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB9XG59XG5cbi8qKlxuICogQGFuaW1hdGlvbiBzaGFrZSBZXG4gKiBTaW1wbGUgc2hha2UgYW5pbWF0aW9uIGZvciBlcnJvcnNcbiAqL1xuQGtleWZyYW1lcyBzaGFrZS15IHtcbiAgMCUsXG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxuXG4gIDI1JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01JSk7XG4gIH1cblxuICA1MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg1JSk7XG4gIH1cblxuICA3NSUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNSUpO1xuICB9XG59XG4iLCIvKipcbiAqIENTUyBSZXNldFxuICogR3JvdXA6IEdlbmVyaWNcbiAqL1xuXG4vKiBodHRwczovL3BpY2NhbGlsLmxpL2Jsb2cvYS1tb3JlLW1vZGVybi1jc3MtcmVzZXQvXG4gICBCeSBBbmR5IEJlbGxcbiAgIExpY2Vuc2U6IE1JVCBMaWNlbnNlXG4qL1xuXG4vKiBCb3ggc2l6aW5nIHJ1bGVzICovXG4qLFxuKjo6YmVmb3JlLFxuKjo6YWZ0ZXIge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4vKiBSZW1vdmUgZGVmYXVsdCBtYXJnaW4gKi9cbmJvZHksXG5oMSxcbmgyLFxuaDMsXG5oNCxcbnAsXG5maWd1cmUsXG5ibG9ja3F1b3RlLFxuZGwsXG5kZCB7XG4gIG1hcmdpbjogMDtcbn1cblxuLyogUmVtb3ZlIGxpc3Qgc3R5bGVzIG9uIHVsLCBvbCBlbGVtZW50cyB3aXRoIGEgbGlzdCByb2xlLCB3aGljaCBzdWdnZXN0cyBkZWZhdWx0IHN0eWxpbmcgd2lsbCBiZSByZW1vdmVkICovXG51bFtyb2xlPVwibGlzdFwiXSxcbm9sW3JvbGU9XCJsaXN0XCJdIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuaHRtbCBib2R5ICo6Zm9jdXMge1xuICBvdXRsaW5lOiBub25lO1xufVxuXG5odG1sIGJvZHkgKjpmb2N1cy12aXNpYmxlIHtcbiAgb3V0bGluZTogM3B4IHNvbGlkIHZhcigtLWNvbG9yLWZvY3VzLXN0cm9rZSk7XG4gIG91dGxpbmUtb2Zmc2V0OiAycHg7XG59XG5cbi8qIFNldCBjb3JlIHJvb3QgZGVmYXVsdHMgKi9cbmh0bWw6Zm9jdXMtd2l0aGluIHtcbiAgc2Nyb2xsLWJlaGF2aW9yOiBzbW9vdGg7XG59XG5cbi8qIFNldCBjb3JlIGJvZHkgZGVmYXVsdHMgKi9cbmJvZHkge1xuICBtaW4taGVpZ2h0OiAxMDBkdmg7XG4gIHRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZXNwZWVkO1xuICBsaW5lLWhlaWdodDogMS41O1xufVxuXG4vKiBBIGVsZW1lbnRzIHRoYXQgZG9uJ3QgaGF2ZSBhIGNsYXNzIGdldCBkZWZhdWx0IHN0eWxlcyAqL1xuYTpub3QoW2NsYXNzXSkge1xuICB0ZXh0LWRlY29yYXRpb24tc2tpcC1pbms6IGF1dG87XG59XG5cbi8qIE1ha2UgaW1hZ2VzIGVhc2llciB0byB3b3JrIHdpdGggKi9cbmltZyxcbnBpY3R1cmUge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKiBJbmhlcml0IGZvbnRzIGZvciBpbnB1dHMgYW5kIGJ1dHRvbnMgKi9cbmlucHV0LFxuYnV0dG9uLFxudGV4dGFyZWEsXG5zZWxlY3Qge1xuICBmb250OiBpbmhlcml0O1xufVxuXG4vKiBSZW1vdmUgYWxsIGFuaW1hdGlvbnMgYW5kIHRyYW5zaXRpb25zIGZvciBwZW9wbGUgdGhhdCBwcmVmZXIgbm90IHRvIHNlZSB0aGVtICovXG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICBodG1sOmZvY3VzLXdpdGhpbiB7XG4gICAgc2Nyb2xsLWJlaGF2aW9yOiBhdXRvO1xuICB9XG5cbiAgKixcbiAgKjo6YmVmb3JlLFxuICAqOjphZnRlciB7XG4gICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjAxbXMgIWltcG9ydGFudDtcbiAgICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAxICFpbXBvcnRhbnQ7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4wMW1zICFpbXBvcnRhbnQ7XG4gICAgc2Nyb2xsLWJlaGF2aW9yOiBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cbn1cbiIsIi8qKlxuICogU3dpcGVyIFBhZ2luYXRpb25cbiAqIEdyb3VwOiBHZW5lcmljXG4gKi9cblxuLnN3aXBlci1wYWdpbmF0aW9uIHtcbiAgJi1idWxsZXQge1xuICAgICYtYWN0aXZlIHtcbiAgICAgIHdpZHRoOiBjYWxjKDMgKiB2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtd2lkdGgpKTtcbiAgICB9XG4gIH1cblxuICAmLWJ1bGxldHMge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxufVxuIiwiLyoqXG4gKiBNYWluIEVsZW1lbnRzIEZpbGVcbiAqIEdyb3VwOiBFbGVtZW50c1xuICovXG5cbkBmb3J3YXJkIFwiYWxsXCI7XG5AZm9yd2FyZCBcImJvZHlcIjtcbkBmb3J3YXJkIFwiYnV0dG9uXCI7XG5AZm9yd2FyZCBcImZpbHRlclwiO1xuQGZvcndhcmQgXCJmb3JtXCI7XG5AZm9yd2FyZCBcImhlYWRpbmdzXCI7XG5AZm9yd2FyZCBcImh0bWxcIjtcbkBmb3J3YXJkIFwiaWNvblwiO1xuQGZvcndhcmQgXCJpbWFnZVwiO1xuQGZvcndhcmQgXCJpbnB1dFwiO1xuQGZvcndhcmQgXCJsaW5rXCI7XG5AZm9yd2FyZCBcImxpc3QtaXRlbVwiO1xuQGZvcndhcmQgXCJsaXN0XCI7XG5AZm9yd2FyZCBcImxvZ29cIjtcbkBmb3J3YXJkIFwibWFpblwiO1xuQGZvcndhcmQgXCJuYXZpZ2F0aW9uXCI7XG5AZm9yd2FyZCBcInBhZ2luYXRpb25cIjtcbkBmb3J3YXJkIFwic2VhcmNoXCI7XG5AZm9yd2FyZCBcInNlbGVjdFwiO1xuQGZvcndhcmQgXCJzb2NpYWwtbGlua3NcIjtcbkBmb3J3YXJkIFwidGFibGVcIjtcbkBmb3J3YXJkIFwidGV4dFwiO1xuQGZvcndhcmQgXCJ0ZXh0YXJlYVwiO1xuQGZvcndhcmQgXCJ0aXRsZVwiO1xuQGZvcndhcmQgXCJ2aWRlb1wiO1xuIiwiLyoqXG4gKiBHZW5lcmljXG4gKiBHcm91cDogRWxlbWVudHNcbiAqL1xuXG4vKipcbiAqIE1vcmUgc2Vuc2libGUgZGVmYXVsdCBib3gtc2l6aW5nOlxuICogY3NzLXRyaWNrcy5jb20vaW5oZXJpdGluZy1ib3gtc2l6aW5nLXByb2JhYmx5LXNsaWdodGx5LWJldHRlci1iZXN0LXByYWN0aWNlXG4gKi9cblxuaHRtbCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3ggIWltcG9ydGFudDtcbiAgc2Nyb2xsLWJlaGF2aW9yOiBzbW9vdGg7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93LXg6IGhpZGRlbiAhaW1wb3J0YW50O1xufVxuXG4qIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveCAhaW1wb3J0YW50O1xuICBmb250LXZhcmlhbnQtbGlnYXR1cmVzOiBuby1jb21tb24tbGlnYXR1cmVzICFpbXBvcnRhbnQ7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDsgLyogZm9yIHJlbW92aW5nIHRoZSBoaWdobGlnaHQgKi9cblxuICAmLFxuICAmOjpiZWZvcmUsXG4gICY6OmFmdGVyIHtcbiAgICBib3gtc2l6aW5nOiBpbmhlcml0O1xuICB9XG59XG4iLCIvKipcbiAqIEJvZHlcbiAqIEdyb3VwOiBFbGVtZW50c1xuICovXG5cbkB1c2UgXCIuLi8wMi10b29scy9icmVha3BvaW50c1wiIGFzICo7XG5cbmJvZHkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1uZXV0cmFsLTAwMCk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0KTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtcHJpbWFyeSk7XG4gIGZvbnQtc2l6ZTogMTAwJTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tYm9keS1saW5lLWhlaWdodCk7XG4gIG1pbi1oZWlnaHQ6IDEwMGR2aDtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oXCJwaGFibGV0XCIpIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICB9XG5cbiAgJi5pcy1oaWRkZW4sXG4gICYuaXMtYmxvY2tlZCxcbiAgJi5pcy1tb2JpbGUtbWVudS1vcGVuIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG59XG4iLCIvKipcbiAqIEJ1dHRvblxuICogR3JvdXA6IEVsZW1lbnRzXG4gKi9cblxuQHVzZSBcIi4uLzAyLXRvb2xzL2J1dHRvbnNcIiBhcyAqO1xuQHVzZSBcIi4uLzAyLXRvb2xzL2JyZWFrcG9pbnRzXCIgYXMgKjtcblxuYnV0dG9uIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblxuICAmOm5vdChbY2xhc3NdKSB7XG4gICAgQGluY2x1ZGUgYnV0dG9uO1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1zdHlsZShcInByaW1hcnlcIik7XG4gIH1cblxuICAmW2Rpc2FibGVkXSB7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIG9wYWNpdHk6IDAuNjtcbiAgfVxuXG4gIC5idXR0b24tdmFyaWF0aW9uLS1wcmltYXJ5LW91dGxpbmUgJiB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLXN0eWxlKFwicHJpbWFyeS1vdXRsaW5lXCIpO1xuICB9XG5cbiAgLmJ1dHRvbi12YXJpYXRpb24tLXNlY29uZGFyeS1vdXRsaW5lICYge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1zdHlsZShcInNlY29uZGFyeS1vdXRsaW5lXCIpO1xuICB9XG5cbiAgLmJ1dHRvbi12YXJpYXRpb24tLWxpZ2h0ICYge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1zdHlsZShcImxpZ2h0XCIpO1xuICB9XG5cbiAgLmJ1dHRvbi12YXJpYXRpb24tLWRhcmsgJiB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLXN0eWxlKFwiZGFya1wiKTtcbiAgfVxufVxuXG4uYnV0dG9uLWljb24ge1xuICAmLS1zdmcge1xuICAgIHdpZHRoOiB2YXIoLS1pY29uLXhzKTtcbiAgICBoZWlnaHQ6IHZhcigtLWljb24teHMpO1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1zcGFjaW5nLTA1MCk7XG4gIH1cbn1cblxuLmJ1dHRvbi1sb2FkLW1vcmUge1xuICBAaW5jbHVkZSBidXR0b247XG4gIEBpbmNsdWRlIGJ1dHRvbi1zaXplKFwibGdcIik7XG4gIEBpbmNsdWRlIGJ1dHRvbi1zdHlsZShcInByaW1hcnlcIik7XG5cbiAgZGlzcGxheTogZmxleDtcbiAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2luZy00MDApO1xuICBtYXJnaW4taW5saW5lOiBhdXRvO1xuXG4gICY6YWN0aXZlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMXB4KTtcbiAgfVxuXG4gIC51LWlzLWxvYWRpbmcge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1saWdodGVyLWdyYXkpO1xuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgei1pbmRleDogMztcbiAgICAgIHdpZHRoOiAxMnB4O1xuICAgICAgaGVpZ2h0OiAxMnB4O1xuICAgICAgbWFyZ2luOiAtMTBweCAwIDAgLTEwcHg7XG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICBhbmltYXRpb246IHNwaW4gdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbi1zbG93KSBsaW5lYXIgaW5maW5pdGU7XG4gICAgICB0ZXh0LWluZGVudDogMDtcbiAgICB9XG4gIH1cbn1cblxuLmJ1dHRvbi1zaGFyZSB7XG4gIEBpbmNsdWRlIGJ1dHRvbjtcbiAgQGluY2x1ZGUgYnV0dG9uLXNpemUoXCJtZFwiKTtcbiAgQGluY2x1ZGUgYnV0dG9uLXN0eWxlKFwicHJpbWFyeVwiKTtcblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKFwidGFibGV0XCIpIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5idXR0b24tZWRpdC1pdGVtIHtcbiAgbWF4LWhlaWdodDogdmFyKC0taWNvbi1teHMpO1xuICB3aWR0aDogdmFyKC0taWNvbi1teHMpO1xuICBoZWlnaHQ6IGF1dG87XG4gIGNvbG9yOiBpbmhlcml0O1xuXG4gICZfX2xpbmsge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ncmF5KTtcblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG4gICAgfVxuICB9XG5cbiAgJi0td3JhcHBlciB7XG4gICAgbWFyZ2luLWJsb2NrOiB2YXIoLS1zcGFjaW5nLTA1MCkgMDtcbiAgfVxuXG4gICYtLXdyYXBwZXItYWJzIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIG1hcmdpbjogdmFyKC0tc3BhY2luZy0wMjUpO1xuICB9XG59XG4iLCIvKipcbiAqIEZpbHRlclxuICogR3JvdXA6IEVsZW1lbnRzXG4gKi9cblxuQHVzZSBcIi4uLzAyLXRvb2xzL2J1dHRvbnNcIiBhcyAqO1xuQHVzZSBcIi4uLzAyLXRvb2xzL2JyZWFrcG9pbnRzXCIgYXMgKjtcbkB1c2UgXCIuLi8wMi10b29scy90eXBvZ3JhcGh5XCIgYXMgKjtcbkB1c2UgXCIuLi8wMi10b29scy9pbnB1dFwiIGFzICo7XG5AdXNlIFwiLi4vMDItdG9vbHMvcGxhY2Vob2xkZXJcIiBhcyAqO1xuXG4uZmlsdGVyIHtcbiAgJHRoaXM6ICY7XG5cbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWxpZ2h0LWdyYXkpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG4gIEBpbmNsdWRlIGlucHV0LWRlZmF1bHQ7XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChcInRhYmxldFwiKSB7XG4gICAgbWF4LXdpZHRoOiB2YXIoLS1tYXgtd2lkdGgtLTV4cyk7XG4gIH1cblxuICAmLWlucHV0LXRleHQge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcbiAgfVxuXG4gICYtZGF0ZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctYmxvY2s6IHZhcigtLXNwYWNpbmctMDUwKTtcblxuICAgICZfX3BsYWNlaG9sZGVyIHtcbiAgICAgIEBpbmNsdWRlIGlucHV0LWRlZmF1bHQoXCJmaWx0ZXJcIik7XG5cbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGluc2V0OiAwO1xuICAgICAgdHJhbnNpdGlvbjpcbiAgICAgICAgdHJhbnNmb3JtIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0LFxuICAgICAgICBvcGFjaXR5IHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0O1xuICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgfVxuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzLXdpdGhpbiB7XG4gICAgICAjeyR0aGlzfS1kYXRlX19wbGFjZWhvbGRlciB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi1idXR0b25zLWFzLXJhZGlvIHtcbiAgICBAaW5jbHVkZSBpbnB1dC1kZWZhdWx0O1xuXG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBtYXgtd2lkdGg6IHZhcigtLW1heC13aWR0aC0tc20pO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBwYWRkaW5nOiAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKFwidGFibGV0XCIpIHtcbiAgICAgIGZsZXgtZmxvdzogcm93IG5vd3JhcDtcbiAgICAgIHdpZHRoOiBmaXQtY29udGVudDtcbiAgICB9XG5cbiAgICAmX19pdGVtIHtcbiAgICAgIEBpbmNsdWRlIGJ1dHRvbjtcbiAgICAgIEBpbmNsdWRlIGJ1dHRvbi1zaXplKFwiZmlsdGVyXCIpO1xuICAgICAgQGluY2x1ZGUgYnV0dG9uLXN0eWxlKFwiZmlsdGVyXCIpO1xuXG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctMDUwKTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICBoZWlnaHQ6IHZhcigtLXNwYWNpbmctMzAwKTtcblxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChcInRhYmxldFwiKSB7XG4gICAgICAgIHdpZHRoOiB2YXIoLS1tYXgtd2lkdGgtLTV4cyk7XG4gICAgICB9XG5cbiAgICAgICY6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tY29sb3ItYnJhbmQtb3JhbmdlKTtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKFwidGFibGV0XCIpIHtcbiAgICAgICAgICBib3JkZXItdG9wOiBub25lO1xuICAgICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgdmFyKC0tY29sb3ItYnJhbmQtb3JhbmdlKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYtZHJvcGRvd24ge1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cblxuICAmX19zdWJtaXQtYnV0dG9uIHtcbiAgICBAaW5jbHVkZSBidXR0b247XG4gICAgQGluY2x1ZGUgYnV0dG9uLXNpemUoXCJmaWx0ZXJcIik7XG4gICAgQGluY2x1ZGUgYnV0dG9uLXN0eWxlKFwicHJpbWFyeVwiKTtcblxuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1tZWRpdW0pO1xuICAgIG1heC13aWR0aDogdmFyKC0tbWF4LXdpZHRoLS01eHMpO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgJl9fcmVzZXQtYnV0dG9uIHtcbiAgICBAaW5jbHVkZSBidXR0b247XG4gICAgQGluY2x1ZGUgYnV0dG9uLXNpemUoXCJzbVwiKTtcbiAgICBAaW5jbHVkZSBidXR0b24tc3R5bGUoXCJzZWNvbmRhcnlcIik7XG5cbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbWVkaXVtKTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIG1hcmdpbjogdmFyKC0tc3BhY2luZy0xMDApO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAmX190ZXh0IHtcbiAgICAgIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1leHRyYS1zbWFsbC1mb250LXNpemUpO1xuICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLTAyNSk7XG4gICAgICB0cmFuc2l0aW9uOlxuICAgICAgICB0cmFuc2Zvcm0gdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQsXG4gICAgICAgIG9wYWNpdHkgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQ7XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoXCJkZXNrdG9wLW1lZGl1bVwiKSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmX19pY29uIHtcbiAgICAgIHdpZHRoOiB2YXIoLS1pY29uLW1zKTtcbiAgICAgIGhlaWdodDogdmFyKC0taWNvbi1tcyk7XG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKFwiZGVza3RvcC1tZWRpdW1cIikge1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgICN7JHRoaXN9X19yZXNldC1idXR0b25fX3RleHQge1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi1lcnJvciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGFuaW1hdGlvbjogYm91bmNlMiB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uLXZlcnktc2xvdykgZWFzZSBpbmZpbml0ZTtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtZGFyay1yZWQpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLXJlZC1zZW1pLXRyYW5zcGFyZW50KTtcbiAgICBib3gtc2hhZG93OiAwIDAgMCAycHggdmFyKC0tY29sb3ItYnJhbmQtZGFyay1yZWQpO1xuXG4gICAgQGluY2x1ZGUgcGxhY2Vob2xkZXIge1xuICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWRhcmstcmVkKTtcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBjb250ZW50OiBcIipcIjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBtYXJnaW46IHZhcigtLXNwYWNpbmctMDI1KSB2YXIoLS1zcGFjaW5nLTA1MCk7XG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1kYXJrLXJlZCk7XG4gICAgfVxuICB9XG59XG4iLCIvKipcbiAqIEZvcm1cbiAqIEdyb3VwOiBFbGVtZW50c1xuICovXG5AdXNlIFwiLi4vMDItdG9vbHMvYnJlYWtwb2ludHNcIiBhcyAqO1xuQHVzZSBcIi4uLzAyLXRvb2xzL3R5cG9ncmFwaHlcIiBhcyAqO1xuQHVzZSBcIi4uLzAyLXRvb2xzL2J1dHRvbnNcIiBhcyAqO1xuXG5mb3JtIHtcbiAgJltyb2xlPVwic2VhcmNoXCJdIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICB9XG59XG4iLCIvKipcbiAqIEhlYWRpbmdzXG4gKiBHcm91cDogRWxlbWVudHNcbiAqL1xuXG5oMSxcbmgyLFxuaDMsXG5oNCxcbmg1LFxuaDYge1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1wcmltYXJ5KTtcblxuICBwLFxuICBhLFxuICBzcGFuIHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICBkaXNwbGF5OiBpbmhlcml0O1xuICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICBmb250LXdlaWdodDogaW5oZXJpdDtcbiAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cbn1cblxuaDEge1xuICBmb250LXNpemU6IHZhcigtLWgxLWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1oMS1mb250LXdlaWdodCk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1oMS1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1oMS1saW5lLWhlaWdodCk7XG59XG5cbmgyIHtcbiAgZm9udC1zaXplOiB2YXIoLS1oMi1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogdmFyKC0taDItZm9udC13ZWlnaHQpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0taDItbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0taDItbGluZS1oZWlnaHQpO1xufVxuXG5oMyB7XG4gIGZvbnQtc2l6ZTogdmFyKC0taDMtZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWgzLWZvbnQtd2VpZ2h0KTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWgzLWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWgzLWxpbmUtaGVpZ2h0KTtcbn1cblxuaDQge1xuICBmb250LXNpemU6IHZhcigtLWg0LWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1oNC1mb250LXdlaWdodCk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1oNC1sZXR0ZXItc3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1oNC1saW5lLWhlaWdodCk7XG59XG5cbmg1IHtcbiAgZm9udC1zaXplOiB2YXIoLS1oNS1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogdmFyKC0taDUtZm9udC13ZWlnaHQpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0taDUtbGV0dGVyLXNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0taDUtbGluZS1oZWlnaHQpO1xufVxuXG5oNiB7XG4gIGZvbnQtc2l6ZTogdmFyKC0taDYtZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWg2LWZvbnQtd2VpZ2h0KTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWg2LWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWg2LWxpbmUtaGVpZ2h0KTtcbn1cbiIsIi8qKlxuICogSFRNTFxuICogR3JvdXA6IEVsZW1lbnRzXG4gKi9cblxuaHRtbCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG4iLCIvKipcbiAqIEljb25cbiAqIEdyb3VwOiBFbGVtZW50c1xuICovXG5cbkB1c2UgXCIuLi8wMi10b29scy90eXBvZ3JhcGh5XCIgYXMgKjtcblxuLmljb24tYXJ0aWNsZS1kb3dubG9hZCB7XG4gIHdpZHRoOiB2YXIoLS1pY29uLW1zKTtcbiAgbWF4LWhlaWdodDogdmFyKC0taWNvbi1tcyk7XG4gIGhlaWdodDogYXV0bztcblxuICAmLS13cmFwcGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLTE1MCkgdmFyKC0tc3BhY2luZy0yMDApO1xuICAgIGJvcmRlci10b3A6IDJweCBzb2xpZCB2YXIoLS1jb2xvci1icmFuZC1kYXJrLWdyYXkpO1xuICAgIHRleHQtYWxpZ246IGVuZDtcbiAgfVxuXG4gICZfX2xpbmsge1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ2FwOiB2YXIoLS1zcGFjaW5nLTEwMCk7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1kYXJrLWdyYXkpO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtb3JhbmdlKTtcbiAgICB9XG4gIH1cblxuICAmX190ZXh0IHtcbiAgICBAaW5jbHVkZSB0ZXh0KFwic21cIiwgXCJtZWRpdW1cIik7XG4gIH1cbn1cbiIsIi8qKlxuICogSW1hZ2VcbiAqIEdyb3VwOiBFbGVtZW50c1xuICovXG5cbmltZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGZsZXgtc2hyaW5rOiAxO1xuICBoZWlnaHQ6IGF1dG87XG59XG4iLCIvKipcbiAqIElucHV0XG4gKiBHcm91cDogRWxlbWVudHNcbiAqL1xuXG5AdXNlIFwiLi4vMDItdG9vbHMvYnV0dG9uc1wiIGFzICo7XG5AdXNlIFwiLi4vMDItdG9vbHMvaW5wdXRcIiBhcyAqO1xuXG5pbnB1dCB7XG4gICY6bm90KFt0eXBlPVwiY2hlY2tib3hcIl0sIFt0eXBlPVwicmFkaW9cIl0pIHtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgfVxuXG4gICZbdHlwZT1cImJ1dHRvblwiXSxcbiAgJlt0eXBlPVwic3VibWl0XCJdIHtcbiAgICBAaW5jbHVkZSBidXR0b247XG4gICAgQGluY2x1ZGUgYnV0dG9uLXN0eWxlKFwicHJpbWFyeVwiKTtcbiAgICBAaW5jbHVkZSBidXR0b24tc2l6ZShcIm1kXCIpO1xuXG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG5cbiAgJlt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtM3hzKTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgaGVpZ2h0OiB2YXIoLS1jaGVja2JveC1zaXplKTtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIHdpZHRoOiB2YXIoLS1jaGVja2JveC1zaXplKTtcbiAgfVxuXG4gICZbdHlwZT1cInJhZGlvXCJdIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgaGVpZ2h0OiB2YXIoLS1jaGVja2JveC1zaXplKTtcbiAgICB3aWR0aDogdmFyKC0tY2hlY2tib3gtc2l6ZSk7XG4gIH1cblxuICAmOm5vdChbdHlwZT1cInN1Ym1pdFwiXSwgW3R5cGU9XCJidXR0b25cIl0sIFt0eXBlPVwiY2hlY2tib3hcIl0sIFt0eXBlPVwicmFkaW9cIl0pIHtcbiAgICBAaW5jbHVkZSBpbnB1dC1kZWZhdWx0KFwicmVzZXRcIik7XG4gIH1cbn1cbiIsIi8qKlxuICogTGluayAvIEFuY2hvclxuICogR3JvdXA6IEVsZW1lbnRzXG4gKi9cblxuYSB7XG4gIGNvbG9yOiBpbmhlcml0O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRleHQtZGVjb3JhdGlvbi10aGlja25lc3M6IDJweDtcbiAgdGV4dC11bmRlcmxpbmUtb2Zmc2V0OiB2YXIoLS1zcGFjaW5nLTAyNSk7XG5cbiAgJltkaXNhYmxlZF0ge1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICBvcGFjaXR5OiAwLjY7XG4gIH1cbn1cbiIsIi8qKlxuICogTGlzdCBJdGVtXG4gKiBHcm91cDogRWxlbWVudHNcbiAqL1xuXG5AdXNlIFwiLi4vMDItdG9vbHMvdHlwb2dyYXBoeVwiIGFzICo7XG5AdXNlIFwiLi4vMDItdG9vbHMvYnJlYWtwb2ludHNcIiBhcyAqO1xuXG4ubGlzdC1pdGVtIHtcbiAgJHRoaXM6ICY7XG5cbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICYtYXJ0aWNsZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiByb3cgbm93cmFwO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1jb2xvci1icmFuZC1kYXJrLWdyYXkpO1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctMjAwKTtcblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cy13aXRoaW4ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtbGlnaHQtZ3JheSk7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1vcmFuZ2UpO1xuICAgIH1cblxuICAgICZfX2ltYWdlIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG5cbiAgICAgICYtLXdyYXBwZXIge1xuICAgICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICAgICAgd2lkdGg6IHZhcigtLXNwYWNpbmctMTIwMCk7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgZGlzcGxheTogbm9uZTtcblxuICAgICAgICBwaWN0dXJlIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKFwidGFibGV0XCIpIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICZfX2NvbnRlbnQge1xuICAgICAgZmxleDogMTtcbiAgICAgIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctMjAwKSB2YXIoLS1zcGFjaW5nLTE1MCk7XG4gICAgfVxuXG4gICAgJl9fdGl0bGUge1xuICAgICAgQGluY2x1ZGUgaGVhZGluZyhcImgzXCIpO1xuXG4gICAgICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtZGFyay1ncmF5KTtcblxuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMtd2l0aGluIHtcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xuICAgICAgfVxuICAgIH1cblxuICAgICZfX2RhdGUge1xuICAgICAgQGluY2x1ZGUgdGV4dChcInNtXCIsIFwibWVkaXVtXCIpO1xuXG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcbiAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctMTUwKTtcbiAgICB9XG5cbiAgICAmX19kZXNjcmlwdGlvbiB7XG4gICAgICBAaW5jbHVkZSB0ZXh0KFwibWRcIik7XG5cbiAgICAgIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmctMTUwKTtcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ncmF5KTtcbiAgICB9XG4gIH1cblxuICAmLWxpbmsge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLWJsb2NrOiB2YXIoLS1zcGFjaW5nLTIwMCkgdmFyKC0tc3BhY2luZy0xNTApO1xuICAgIHBhZGRpbmctaW5saW5lOiB2YXIoLS1zcGFjaW5nLTE1MCk7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWRhcmspO1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzLXdpdGhpbiB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1saWdodGVyLWdyYXkpO1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtb3JhbmdlKTtcbiAgICB9XG5cbiAgICAmX190aXRsZSB7XG4gICAgICBAaW5jbHVkZSBoZWFkaW5nKFwiaDNcIik7XG5cbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1kYXJrLWdyYXkpO1xuICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy0wNzUpO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG4gICAgICB9XG5cbiAgICAgIGgyLFxuICAgICAgaDMsXG4gICAgICBoNCxcbiAgICAgIGg1LFxuICAgICAgaDYge1xuICAgICAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogaW5oZXJpdDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJl9faW5mbyB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGdhcDogdmFyKC0tc3BhY2luZy0wNTApO1xuICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWdyYXkpO1xuICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy0xMDApO1xuXG4gICAgICAmLWljb24ge1xuICAgICAgICBtYXgtaGVpZ2h0OiB2YXIoLS1pY29uLW14cyk7XG4gICAgICAgIHdpZHRoOiB2YXIoLS1pY29uLW14cyk7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICB9XG5cbiAgICAgICYtdGV4dCB7XG4gICAgICAgIEBpbmNsdWRlIHRleHQoXCJtZFwiKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmX19pY29uIHtcbiAgICAgIG1heC1oZWlnaHQ6IHZhcigtLWljb24tbXMpO1xuICAgICAgd2lkdGg6IHZhcigtLWljb24tbXMpO1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgfVxuICB9XG5cbiAgJi1mYXEge1xuICAgIEBpbmNsdWRlIHRleHQoXCJtZFwiKTtcblxuICAgIHBhZGRpbmctYmxvY2s6IHZhcigtLXNwYWNpbmctMjUwKSB2YXIoLS1zcGFjaW5nLTE1MCk7XG4gICAgcGFkZGluZy1pbmxpbmU6IHZhcigtLXNwYWNpbmctMjUwKTtcbiAgICBib3gtc2hhZG93OiB2YXIoLS1ib3gtc2hhZG93LWFjY29yZGlvbik7XG4gICAgYm9yZGVyOiAycHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgbWF4LXdpZHRoOiB2YXIoLS1tYXgtd2lkdGgtLXNtKTtcbiAgICBtYXJnaW4taW5saW5lOiBhdXRvO1xuICAgIG1hcmdpbi1ibG9jazogdmFyKC0tc3BhY2luZy0wNzUpO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ncmF5KTtcblxuICAgICZbb3Blbl0ge1xuICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcblxuICAgICAgPiAqOm5vdChzdW1tYXJ5KSB7XG4gICAgICAgIGFuaW1hdGlvbjogZmFkZS1pbiB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluIGZvcndhcmRzO1xuICAgICAgfVxuXG4gICAgICAjeyR0aGlzfS1mYXFfX2ljb24ge1xuICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItbGlnaHQpO1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG5cbiAgICAgICAgJi0td3JhcHBlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLS13cmFwcGVyIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB9XG5cbiAgICAmX190aXRsZSB7XG4gICAgICBAaW5jbHVkZSBoZWFkaW5nKFwiaDRcIik7XG5cbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgZ2FwOiB2YXIoLS1zcGFjaW5nLTA1MCk7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWRhcmstZ3JheSk7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLTEwMCk7XG5cbiAgICAgICY6Oi13ZWJraXQtZGV0YWlscy1tYXJrZXIge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xuICAgICAgfVxuICAgIH1cblxuICAgICZfX2ljb24ge1xuICAgICAgbWF4LWhlaWdodDogdmFyKC0taWNvbi14cyk7XG4gICAgICB3aWR0aDogdmFyKC0taWNvbi14cyk7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG4gICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQ7XG5cbiAgICAgICYtLXdyYXBwZXIge1xuICAgICAgICB3aWR0aDogdmFyKC0tc3BhY2luZy0zMDApO1xuICAgICAgICBoZWlnaHQ6IHZhcigtLXNwYWNpbmctMzAwKTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1mdWxsKTtcbiAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgIHBsYWNlLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQ7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG5cbiAgICAgICAgICAjeyR0aGlzfS1mYXFfX2ljb24ge1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0KTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmX19jYXRlZ29yeSB7XG4gICAgICBAaW5jbHVkZSB0ZXh0KFwic21cIiwgXCJib2xkXCIpO1xuXG4gICAgICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtZGFyay1ncmF5KTtcbiAgICAgIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmctMTUwKTtcbiAgICB9XG4gIH1cblxuICAmLXJlZ3VsYXRpb24ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogcm93IG5vd3JhcDtcblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cy13aXRoaW4ge1xuICAgICAgI3skdGhpc30tcmVndWxhdGlvbl9fY29udGVudCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWxpZ2h0LWdyYXkpO1xuICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1vcmFuZ2UpO1xuICAgICAgfVxuICAgIH1cblxuICAgICZfX2NvbnRlbnQge1xuICAgICAgZmxleDogMTtcbiAgICAgIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctMjAwKSB2YXIoLS1zcGFjaW5nLTE1MCk7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tY29sb3ItYnJhbmQtZGFyay1ncmF5KTtcbiAgICB9XG5cbiAgICAmX190aXRsZSB7XG4gICAgICBAaW5jbHVkZSBoZWFkaW5nKFwiaDNcIik7XG5cbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1kYXJrLWdyYXkpO1xuXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cy13aXRoaW4ge1xuICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJl9fZGF0ZSB7XG4gICAgICBAaW5jbHVkZSB0ZXh0KFwic21cIiwgXCJtZWRpdW1cIik7XG5cbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xuICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy0xNTApO1xuICAgIH1cbiAgfVxuXG4gICYtc2VhcmNoLXJlc3VsdCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgICN7JHRoaXN9LXNlYXJjaC1yZXN1bHRfX2NvbnRlbnQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1saWdodC1ncmF5KTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtb3JhbmdlKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmX19jb250ZW50IHtcbiAgICAgIGZsZXg6IDE7XG4gICAgICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLTIwMCkgdmFyKC0tc3BhY2luZy0xNTApO1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJyYW5kLWRhcmstZ3JheSk7XG4gICAgfVxuXG4gICAgJl9fdGl0bGUge1xuICAgICAgQGluY2x1ZGUgaGVhZGluZyhcImgzXCIpO1xuXG4gICAgICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtZGFyay1ncmF5KTtcbiAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctMDUwKTtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmX19jYXRlZ29yeSB7XG4gICAgICBAaW5jbHVkZSB0ZXh0KFwic21cIiwgXCJtZWRpdW1cIik7XG5cbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xuICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy0xNTApO1xuICAgIH1cbiAgfVxufVxuIiwiLyoqXG4gKiBMaXN0XG4gKiBHcm91cDogRWxlbWVudHNcbiAqL1xuXG5AdXNlIFwiLi4vMDItdG9vbHMvYTExeVwiIGFzICo7XG5cbm9sLFxudWwge1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIEBpbmNsdWRlIGxpc3Qtc3R5bGUtbm9uZTtcblxuICBsaSB7XG4gICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xuICAgIGxldHRlci1zcGFjaW5nOiBpbmhlcml0O1xuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuXG4gICAgJjo6bWFya2VyIHtcbiAgICAgIGNvbG9yOiBjdXJyZW50Y29sb3I7XG4gICAgfVxuICB9XG5cbiAgLyogV2hlbiBVTCBkb2Vzbid0IGhhdmUgYW55IGNsYXNzICovXG4gIC5vLW1haW4gJjpub3QoW2NsYXNzXSkge1xuICAgIHBhZGRpbmctbGVmdDogMS41ZW07XG5cbiAgICBsaSB7XG4gICAgICBtYXJnaW46IHZhcigtLXNwYWNlLXNtKSAwO1xuICAgIH1cbiAgfVxufVxuXG5vbCB7XG4gIC8qIFdoZW4gT0wgZG9lc24ndCBoYXZlIGFueSBjbGFzcyAqL1xuICAuby1tYWluICY6bm90KFtjbGFzc10pIHtcbiAgICBsaXN0LXN0eWxlOiBhdXRvO1xuICB9XG59XG5cbnVsIHtcbiAgLyogV2hlbiBVTCBkb2Vzbid0IGhhdmUgYW55IGNsYXNzICovXG4gIC5vLW1haW4gJjpub3QoW2NsYXNzXSkge1xuICAgIGxpc3Qtc3R5bGU6IGRpc2Mgb3V0c2lkZTtcbiAgfVxufVxuIiwiLyoqXG4gKiBMb2dvXG4gKiBHcm91cDogRWxlbWVudHNcbiAqL1xuXG5AdXNlIFwiLi4vMDItdG9vbHMvYnJlYWtwb2ludHNcIiBhcyAqO1xuXG4ubG9nbyB7XG4gICYtaGVhZGVyIHtcbiAgICBtYXgtd2lkdGg6IDUuNXJlbTtcbiAgICBtYXgtaGVpZ2h0OiA1cmVtO1xuXG4gICAgaW1nIHtcbiAgICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG4gICAgfVxuICB9XG5cbiAgJi1mb290ZXIge1xuICAgIG1heC13aWR0aDogOXJlbTtcbiAgICBtYXgtaGVpZ2h0OiA5cmVtO1xuXG4gICAgaW1nIHtcbiAgICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG4gICAgfVxuICB9XG59XG4iLCIvKipcbiAqIE1haW5cbiAqIEdyb3VwOiBFbGVtZW50c1xuICovXG5cbm1haW4ge1xuICBmbGV4OiAxO1xufVxuIiwiLyoqXG4gKiBOYXZcbiAqIEdyb3VwOiBFbGVtZW50c1xuICovXG5cbkB1c2UgXCIuLi8wMi10b29scy90eXBvZ3JhcGh5XCIgYXMgKjtcbkB1c2UgXCIuLi8wMi10b29scy9hMTF5XCIgYXMgKjtcbkB1c2UgXCIuLi8wMi10b29scy9idXR0b25zXCIgYXMgKjtcbkB1c2UgXCIuLi8wMi10b29scy9icmVha3BvaW50c1wiIGFzICo7XG5AdXNlIFwiLi4vMDItdG9vbHMvYm94LXNoYWRvd3NcIiBhcyAqO1xuXG4ubWVudSB7XG4gICR0aGlzOiAmO1xuICAkYnJlYWtwb2ludC10by1kZXNrdG9wOiBcImRlc2t0b3Atc21hbGxcIjtcblxuICBsaXN0LXN0eWxlOiBub25lO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQtdG8tZGVza3RvcCkge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgZ2FwOiB2YXIoLS1zcGFjaW5nLTA1MCk7XG4gIH1cblxuICAmLWl0ZW0ge1xuICAgIEBpbmNsdWRlIHRleHQoXCJtZFwiLCBcInNlbWlib2xkXCIpO1xuXG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0KTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm9yZGVyLWxlZnQ6IDNweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBwYWRkaW5nLWlubGluZTogdmFyKC0tc3BhY2luZy0xMDApO1xuICAgIHBhZGRpbmctYmxvY2s6IHZhcigtLXNwYWNpbmctMDUwKTtcblxuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItbGlnaHQpO1xuICAgICAgYm9yZGVyLWxlZnQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLW9yYW5nZSk7XG4gICAgfVxuXG4gICAgJi0td3JhcHBlciB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgfVxuXG4gICAgJi0tY3RhIHtcbiAgICAgIEBpbmNsdWRlIGJ1dHRvbjtcbiAgICAgIEBpbmNsdWRlIGJ1dHRvbi1zdHlsZShcInByaW1hcnlcIik7XG5cbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgaGVpZ2h0OiB2YXIoLS1zcGFjaW5nLTIwMCk7XG4gICAgICBib3JkZXItd2lkdGg6IHZhcigtLWJ1dHRvbi1ib3JkZXItd2lkdGgpO1xuICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDEuMjVyZW07XG4gICAgICBwYWRkaW5nLWlubGluZTogdmFyKC0tc3BhY2luZy0yMDApO1xuICAgIH1cblxuICAgICYtLWJ1dHRvbiB7XG4gICAgICBAaW5jbHVkZSBidXR0b24tcmVzZXQ7XG5cbiAgICAgIGJvcmRlci1sZWZ0OiAzcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgZ2FwOiB2YXIoLS1zcGFjaW5nLTAyNSk7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50LXRvLWRlc2t0b3ApIHtcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWRhcmstZ3JheSk7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWRhcmstZ3JheSk7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmX19pY29uIHtcbiAgICAgIHdpZHRoOiB2YXIoLS1pY29uLWRlZmF1bHQpO1xuICAgICAgaGVpZ2h0OiB2YXIoLS1pY29uLWRlZmF1bHQpO1xuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0O1xuICAgIH1cblxuICAgICZbYXJpYS1leHBhbmRlZD1cInRydWVcIl0ge1xuICAgICAgI3skdGhpc30taXRlbV9faWNvbiB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi1zdWIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUtZGFyayk7XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50LXRvLWRlc2t0b3ApIHtcbiAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coXCIwNFwiLCBcImxpZ2h0XCIpO1xuXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDEwMCU7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgd2lkdGg6IHZhcigtLXNwYWNpbmctMjQwMCk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcblxuICAgICAgJiA+ICo6bGFzdC1jaGlsZCA+ICN7JHRoaXN9LWl0ZW0ge1xuICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgICAgfVxuICAgIH1cblxuICAgICN7JHRoaXN9LWl0ZW0ge1xuICAgICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1zcGFjaW5nLTI1MCk7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tY29sb3ItbGlnaHQpO1xuICAgIH1cblxuICAgICZbZGF0YS1leHBhbmRlZD1cImZhbHNlXCJdIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgJltkYXRhLWV4cGFuZGVkPVwidHJ1ZVwiXSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGFuaW1hdGlvbjogZmFkZS1pbiB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dCBmb3J3YXJkcztcbiAgICB9XG4gIH1cblxuICAmID4gKjpub3QoOmxhc3QtY2hpbGQpID4gLm1lbnUtaXRlbSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWxpZ2h0KTtcblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQtdG8tZGVza3RvcCkge1xuICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICB9XG4gIH1cbn1cbiIsIi8qKlxuICogUGFnaW5hdGlvblxuICogR3JvdXA6IEVsZW1lbnRzXG4gKi9cblxuQHVzZSBcIi4uLzAyLXRvb2xzL2J1dHRvbnNcIiBhcyAqO1xuQHVzZSBcIi4uLzAyLXRvb2xzL2JyZWFrcG9pbnRzXCIgYXMgKjtcblxuLnBhZ2luYXRpb24ge1xuICAkdGhpczogJjtcblxuICBoZWlnaHQ6IHZhcigtLXBhZ2luYXRpb24taGVpZ2h0KTtcbiAgbWFyZ2luLWlubGluZTogYXV0bztcbiAgbWFyZ2luLWJsb2NrOiB2YXIoLS1zcGFjaW5nLTMwMCk7XG4gIG1heC13aWR0aDogdmFyKC0tc3BhY2luZy00MDAwKTtcblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKFwiZGVza3RvcC1tZWRpdW1cIikge1xuICAgIG1hcmdpbi1ibG9jazogdmFyKC0tc3BhY2luZy02MDApO1xuICB9XG5cbiAgJl9fbGlzdCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIGdhcDogdmFyKC0tc3BhY2luZy0wNTApO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChcIm1vYmlsZS1sYXJnZVwiKSB7XG4gICAgICBnYXA6IHZhcigtLXNwYWNpbmctMTAwKTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKFwidGFibGV0XCIpIHtcbiAgICAgIGdhcDogdmFyKC0tc3BhY2luZy0yMDApO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoXCJkZXNrdG9wLXNtYWxsXCIpIHtcbiAgICAgIGdhcDogdmFyKC0tc3BhY2luZy0zMDApO1xuICAgIH1cbiAgfVxuXG4gICZfX2l0ZW0ge1xuICAgIEBpbmNsdWRlIGJ1dHRvbjtcbiAgICBAaW5jbHVkZSBidXR0b24tc2l6ZShcInhzXCIpO1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1zdHlsZShcInNlY29uZGFyeS1saWdodFwiKTtcblxuICAgIHdpZHRoOiB2YXIoLS1zcGFjaW5nLTIwMCk7XG4gICAgaGVpZ2h0OiB2YXIoLS1zcGFjaW5nLTIwMCk7XG4gICAgcGFkZGluZzogMDtcblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoXCJwaGFibGV0XCIpIHtcbiAgICAgIHdpZHRoOiB2YXIoLS1zcGFjaW5nLTMwMCk7XG4gICAgICBoZWlnaHQ6IHZhcigtLXNwYWNpbmctMzAwKTtcbiAgICB9XG4gIH1cblxuICAmX19uYXZpZ2F0aW9uLWJ1dHRvbiB7XG4gICAgQGluY2x1ZGUgYnV0dG9uO1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1zaXplKFwieHNcIik7XG4gICAgQGluY2x1ZGUgYnV0dG9uLXN0eWxlKFwic2Vjb25kYXJ5LWxpZ2h0XCIpO1xuXG4gICAgd2lkdGg6IHZhcigtLXNwYWNpbmctMjAwKTtcbiAgICBoZWlnaHQ6IHZhcigtLXNwYWNpbmctMjAwKTtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChcInBoYWJsZXRcIikge1xuICAgICAgd2lkdGg6IHZhcigtLXNwYWNpbmctMzAwKTtcbiAgICAgIGhlaWdodDogdmFyKC0tc3BhY2luZy0zMDApO1xuICAgIH1cblxuICAgICZbYXJpYS1kaXNhYmxlZD1cInRydWVcIl0ge1xuICAgICAgb3BhY2l0eTogMC41O1xuICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIH1cbiAgfVxuXG4gICZfX25hdi1pY29uIHtcbiAgICB3aWR0aDogdmFyKC0taWNvbi14eHMpO1xuICAgIGhlaWdodDogdmFyKC0taWNvbi14cyk7XG4gIH1cbn1cbiIsIi8qKlxuICogSW5wdXRcbiAqIEdyb3VwOiBFbGVtZW50c1xuICovXG5cbkB1c2UgXCIuLi8wMi10b29scy9icmVha3BvaW50c1wiIGFzICo7XG5AdXNlIFwiLi4vMDItdG9vbHMvYnV0dG9uc1wiIGFzICo7XG5AdXNlIFwiLi4vMDItdG9vbHMvaW5wdXRcIiBhcyAqO1xuQHVzZSBcIi4uLzAyLXRvb2xzL3BsYWNlaG9sZGVyXCIgYXMgKjtcblxuLnNlYXJjaCB7XG4gICR0aGlzOiAmO1xuXG4gIEBpbmNsdWRlIGlucHV0LWRlZmF1bHQoXCJzZWFyY2hcIik7XG5cbiAgcGFkZGluZy1yaWdodDogMDtcbiAgcGFkZGluZy1ibG9jazogMDtcblxuICBpbnB1dCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChcImRlc2t0b3Atc21hbGxcIikge1xuICAgICAgd2lkdGg6IHZhcigtLW1heC13aWR0aC0tNXhzKTtcbiAgICB9XG4gIH1cblxuICAmX19jdGEge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1zaXplKFwic21cIik7XG5cbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IHZhcigtLXNwYWNpbmctMjUwKTtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIHBsYWNlLWl0ZW1zOiBjZW50ZXI7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcblxuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLW9yYW5nZSk7XG4gICAgfVxuICB9XG5cbiAgJl9faWNvbiB7XG4gICAgd2lkdGg6IHZhcigtLWljb24teHMpO1xuICAgIGhlaWdodDogdmFyKC0taWNvbi14cyk7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLTAyNSk7XG5cbiAgICAmLS1vcGVuLFxuICAgICYtLWNsb3NlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB9XG4gIH1cblxuICAmX19pY29uLS10b2dnbGVyLXdyYXBwZXIge1xuICAgIEBpbmNsdWRlIGJ1dHRvbjtcbiAgICBAaW5jbHVkZSBidXR0b24tc2l6ZShcInNtXCIpO1xuXG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtb3JhbmdlKTtcbiAgICB9XG5cbiAgICAmW2FyaWEtZXhwYW5kZWQ9XCJmYWxzZVwiXSB7XG4gICAgICAjeyR0aGlzfV9faWNvbi0tb3BlbiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgIH1cblxuICAgICZbYXJpYS1leHBhbmRlZD1cInRydWVcIl0ge1xuICAgICAgI3skdGhpc31fX2ljb24tLWNsb3NlIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi0tbW9iaWxlIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIG1heC13aWR0aDogMDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlWCgwKTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBjZW50ZXI7XG4gICAgdHJhbnNpdGlvbjogbWF4LXdpZHRoIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0O1xuXG4gICAgJltkYXRhLWV4cGFuZGVkPVwidHJ1ZVwiXSB7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlWCgxKTtcbiAgICAgIG1heC13aWR0aDogdmFyKC0tbWF4LXdpZHRoLS03eHMpO1xuICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLTA1MCk7XG5cbiAgICAgIGlucHV0IHtcbiAgICAgICAgbWF4LXdpZHRoOiB2YXIoLS1tYXgtd2lkdGgtLTl4cyk7XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoXCJ0YWJsZXRcIikge1xuICAgICAgICBtYXgtd2lkdGg6IHZhcigtLW1heC13aWR0aC0tNXhzKTtcblxuICAgICAgICBpbnB1dCB7XG4gICAgICAgICAgbWF4LXdpZHRoOiB2YXIoLS1tYXgtd2lkdGgtLTZ4cyk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8qKlxuICogU2VsZWN0XG4gKiBHcm91cDogRWxlbWVudHNcbiAqL1xuXG5AdXNlIFwiLi4vMDItdG9vbHMvaW5wdXRcIiBhcyAqO1xuXG5zZWxlY3Qge1xuICBAaW5jbHVkZSBpbnB1dC1kZWZhdWx0O1xufVxuIiwiLyoqXG4gKiBTb2NpYWwgTGlua3NcbiAqIEdyb3VwOiBFbGVtZW50c1xuICovXG5cbkB1c2UgXCIuLi8wMi10b29scy9icmVha3BvaW50c1wiIGFzICo7XG5AdXNlIFwiLi4vMDItdG9vbHMvYnV0dG9uc1wiIGFzICo7XG5AdXNlIFwiLi4vMDItdG9vbHMvdHlwb2dyYXBoeVwiIGFzICo7XG5cbi5zb2NpYWwtbGlua3Mge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogdmFyKC0tc3BhY2luZy0wMjUpO1xuICBjb2xvcjogaW5oZXJpdDtcbiAgZmxleDogMTtcblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKFwicGhhYmxldFwiKSB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuICAgIGdhcDogdmFyKC0tc3BhY2luZy0yMDApO1xuICB9XG5cbiAgJl9fbGluayB7XG4gICAgQGluY2x1ZGUgdGV4dChcInNtXCIpO1xuXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgIHN2ZyB7XG4gICAgICBoZWlnaHQ6IHZhcigtLWljb24tZGVmYXVsdCk7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2luZy0wMjUpO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoXCJwaGFibGV0XCIpIHtcbiAgICAgIEBpbmNsdWRlIHRleHQoXCJtZFwiKTtcblxuICAgICAgc3ZnIHtcbiAgICAgICAgaGVpZ2h0OiB2YXIoLS1pY29uLWRlZmF1bHQpO1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLTA3NSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvKipcbiAqIExpc3QgSXRlbVxuICogR3JvdXA6IEVsZW1lbnRzXG4gKi9cblxuQHVzZSBcIi4uLzAyLXRvb2xzL3R5cG9ncmFwaHlcIiBhcyAqO1xuQHVzZSBcIi4uLzAyLXRvb2xzL2JyZWFrcG9pbnRzXCIgYXMgKjtcblxuLnRhYmxlIHtcbiAgJHRoaXM6ICY7XG5cbiAgJi1saXN0IHtcbiAgICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICAgIG1pbi13aWR0aDogdmFyKC0tbWluLXdpZHRoLXRhYmxlLWxpc3QpO1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgJi0td3JhcHBlciB7XG4gICAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoXCJkZXNrdG9wLXNtYWxsXCIpIHtcbiAgICAgICAgb3ZlcmZsb3cteDogdmlzaWJsZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmX19jYXB0aW9uIHtcbiAgICAgIEBpbmNsdWRlIGhlYWRpbmcoXCJoMlwiKTtcblxuICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWRhcmstZ3JheSk7XG4gICAgICBtYXJnaW46IDAgMCB2YXIoLS1zcGFjaW5nLTEwMCk7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIH1cblxuICAgICZfX3RyZWUtY2FwdGlvbiB7XG4gICAgICBAaW5jbHVkZSBoZWFkaW5nKFwiaDJcIik7XG5cbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1kYXJrLWdyYXkpO1xuICAgICAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2luZy02MDApO1xuICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy0zMDApO1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB9XG5cbiAgICAmX19jZWxsIHtcbiAgICAgIHBhZGRpbmctYmxvY2s6IHZhcigtLXNwYWNpbmctMjAwKTtcbiAgICAgIHBhZGRpbmctaW5saW5lOiB2YXIoLS1zcGFjaW5nLTA1MCk7XG5cbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICBwYWRkaW5nLWlubGluZTogdmFyKC0tc3BhY2luZy0wNzUpIDA7XG4gICAgICB9XG5cbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIHBhZGRpbmctaW5saW5lOiAwIHZhcigtLXNwYWNpbmctMDc1KTtcbiAgICAgIH1cblxuICAgICAgJi0taGVhZGVyIHtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgd2lkdGg6IDMwJTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmX19yb3cge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJyYW5kLWxpZ2h0ZXItZ3JheSk7XG5cbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzLXdpdGhpbiB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWxpZ2h0ZXItZ3JheSk7XG4gICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLW9yYW5nZSk7XG5cbiAgICAgICAgJiA+ICoge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJl9fcm93LXdpdGgtaGVhZGVyIHtcbiAgICAgIGJvcmRlci1ibG9jazogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJyYW5kLW9yYW5nZSk7XG5cbiAgICAgICY6bnRoLWNoaWxkKG9kZCkge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0KTtcbiAgICAgIH1cblxuICAgICAgJjpudGgtY2hpbGQoZXZlbikge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1saWdodC1ncmF5KTtcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWdyYXkpO1xuICAgICAgfVxuXG4gICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLXRvcDogM3B4IHNvbGlkIHZhcigtLWNvbG9yLWJyYW5kLWdyYXkpO1xuICAgICAgfVxuXG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItYm90dG9tOiAzcHggc29saWQgdmFyKC0tY29sb3ItYnJhbmQtb3JhbmdlKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmX19oZWFkZXIge1xuICAgICAgQGluY2x1ZGUgdGV4dChcInNtXCIsIFwiYm9sZFwiKTtcblxuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ncmF5KTtcbiAgICAgIGJvcmRlci1ib3R0b206IDNweCBzb2xpZCB2YXIoLS1jb2xvci1icmFuZC1kYXJrLWdyYXkpO1xuICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB9XG5cbiAgICAmX19pbmRleCB7XG4gICAgICBAaW5jbHVkZSB0ZXh0KFwibWRcIiwgXCJib2xkXCIpO1xuXG4gICAgICB3aWR0aDogY2xhbXAodmFyKC0tc3BhY2luZy0zMDApLCA2dncsIHZhcigtLXNwYWNpbmctNDAwKSk7XG5cbiAgICAgICYtdGV4dCB7XG4gICAgICAgIEBpbmNsdWRlIHRleHQoXCJtZFwiLCBcImJvbGRcIik7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJl9fdGl0bGUge1xuICAgICAgQGluY2x1ZGUgdGV4dChcInNtXCIpO1xuXG4gICAgICAmLXRleHQge1xuICAgICAgICBAaW5jbHVkZSB0ZXh0KFwic21cIik7XG5cbiAgICAgICAgbWF4LXdpZHRoOiB2YXIoLS1zcGFjaW5nLTM3MDApO1xuICAgICAgfVxuICAgIH1cblxuICAgICZfX2xpbmsge1xuICAgICAgQGluY2x1ZGUgdGV4dChcInNtXCIpO1xuXG4gICAgICB3aWR0aDogY2xhbXAoMjAlLCB2YXIoLS1zcGFjaW5nLTI0MDApLCAyNXJlbSk7XG5cbiAgICAgICYtaW5uZXIge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgZ2FwOiB2YXIoLS1zcGFjaW5nLTA1MCk7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICAgICAmOmhvdmVyLFxuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi10ZXh0IHtcbiAgICAgICAgQGluY2x1ZGUgdGV4dChcInNtXCIpO1xuXG4gICAgICAgIG1heC13aWR0aDogdmFyKC0tc3BhY2luZy0xNjAwKTtcbiAgICAgICAgZmxleDogMTtcbiAgICAgIH1cblxuICAgICAgJi1pY29uIHtcbiAgICAgICAgbWF4LWhlaWdodDogdmFyKC0taWNvbi14cyk7XG4gICAgICAgIHdpZHRoOiB2YXIoLS1pY29uLXhzKTtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmX190aXRsZS1saW5rIHtcbiAgICAgIEBpbmNsdWRlIHRleHQoXCJzbVwiKTtcblxuICAgICAgd2lkdGg6IGNsYW1wKDIwJSwgdmFyKC0tc3BhY2luZy0yNDAwKSwgMjVyZW0pO1xuXG4gICAgICAmLWlubmVyIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1mbG93OiByb3cgbm93cmFwO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGdhcDogdmFyKC0tc3BhY2luZy0wNTApO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICAgICAgJjpob3ZlcixcbiAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYtdGV4dCB7XG4gICAgICAgIEBpbmNsdWRlIHRleHQoXCJzbVwiKTtcblxuICAgICAgICBmbGV4OiAxO1xuICAgICAgfVxuXG4gICAgICAmLWljb24ge1xuICAgICAgICBtYXgtaGVpZ2h0OiB2YXIoLS1pY29uLXhzKTtcbiAgICAgICAgd2lkdGg6IHZhcigtLWljb24teHMpO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgfVxuICAgIH1cblxuICAgICZfX2xhc3RuYW1lIHtcbiAgICAgIEBpbmNsdWRlIHRleHQoXCJzbVwiKTtcblxuICAgICAgJi10ZXh0IHtcbiAgICAgICAgQGluY2x1ZGUgdGV4dChcInNtXCIpO1xuXG4gICAgICAgIG1heC13aWR0aDogdmFyKC0tc3BhY2luZy0zNzAwKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmX19maXJzdG5hbWUge1xuICAgICAgQGluY2x1ZGUgdGV4dChcInNtXCIpO1xuXG4gICAgICAmLXRleHQge1xuICAgICAgICBAaW5jbHVkZSB0ZXh0KFwic21cIik7XG5cbiAgICAgICAgbWF4LXdpZHRoOiB2YXIoLS1zcGFjaW5nLTM3MDApO1xuICAgICAgfVxuICAgIH1cblxuICAgICZfX3Bob25lIHtcbiAgICAgIEBpbmNsdWRlIHRleHQoXCJzbVwiKTtcblxuICAgICAgJi10ZXh0IHtcbiAgICAgICAgQGluY2x1ZGUgdGV4dChcInNtXCIpO1xuXG4gICAgICAgIG1heC13aWR0aDogdmFyKC0tc3BhY2luZy0zNzAwKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmX19lbWFpbCB7XG4gICAgICBAaW5jbHVkZSB0ZXh0KFwic21cIik7XG5cbiAgICAgICYtdGV4dCB7XG4gICAgICAgIEBpbmNsdWRlIHRleHQoXCJzbVwiKTtcblxuICAgICAgICBtYXgtd2lkdGg6IHZhcigtLXNwYWNpbmctMzcwMCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJl9fb3JndW5pdCB7XG4gICAgICBAaW5jbHVkZSB0ZXh0KFwic21cIik7XG5cbiAgICAgICYtdGV4dCB7XG4gICAgICAgIEBpbmNsdWRlIHRleHQoXCJzbVwiKTtcblxuICAgICAgICBtYXgtd2lkdGg6IHZhcigtLXNwYWNpbmctMzcwMCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJl9fc2l0ZSB7XG4gICAgICBAaW5jbHVkZSB0ZXh0KFwic21cIik7XG5cbiAgICAgICYtdGV4dCB7XG4gICAgICAgIEBpbmNsdWRlIHRleHQoXCJzbVwiKTtcblxuICAgICAgICBtYXgtd2lkdGg6IHZhcigtLXNwYWNpbmctMzcwMCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJl9fbmFtZSB7XG4gICAgICB3aWR0aDogY2xhbXAodmFyKC0tc3BhY2luZy02MDApLCA4dncsIHZhcigtLXNwYWNpbmctNzAwKSk7XG5cbiAgICAgICYtdGV4dCB7XG4gICAgICAgIEBpbmNsdWRlIHRleHQoXCJzbVwiLCBcImJvbGRcIik7XG4gICAgICB9XG5cbiAgICAgICYtbGluayB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICAgICAmOmhvdmVyLFxuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmX190eXBlIHtcbiAgICAgIHdpZHRoOiBjbGFtcCh2YXIoLS1zcGFjaW5nLTYwMCksIDh2dywgdmFyKC0tc3BhY2luZy03MDApKTtcblxuICAgICAgJi10ZXh0IHtcbiAgICAgICAgQGluY2x1ZGUgdGV4dChcInNtXCIpO1xuICAgICAgfVxuICAgIH1cblxuICAgICZfX3RoZXJhcGV1dGljLWNhdGVnb3J5IHtcbiAgICAgICYtdGV4dCB7XG4gICAgICAgIEBpbmNsdWRlIHRleHQoXCJzbVwiKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmX19hY3RpdmVfc3Vic3RhbmNlIHtcbiAgICAgICYtdGV4dCB7XG4gICAgICAgIEBpbmNsdWRlIHRleHQoXCJzbVwiKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmX19hcHByb3ZhbCB7XG4gICAgICAmLXRleHQge1xuICAgICAgICBAaW5jbHVkZSB0ZXh0KFwic21cIik7XG5cbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgfVxuICAgIH1cblxuICAgICZfX2luZGljYXRpb24tY2xhcmlmaWNhdGlvbiB7XG4gICAgICAmLXRleHQge1xuICAgICAgICBAaW5jbHVkZSB0ZXh0KFwic21cIik7XG5cbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgfVxuICAgIH1cblxuICAgICZfX2F2YWlsYWJpbGl0eSB7XG4gICAgICAmLS1hdmFpbGFibGUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ncmVlbik7XG4gICAgICB9XG5cbiAgICAgICYtLWxvdy1hdmFpbGFibGUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1icm93bi1zZW1pLXRyYW5zcGFyZW50KTtcbiAgICAgIH1cblxuICAgICAgJi0tbm90LWF2YWlsYWJsZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLXJlZCk7XG4gICAgICB9XG5cbiAgICAgICYtdGV4dCB7XG4gICAgICAgIEBpbmNsdWRlIHRleHQoXCJtZFwiKTtcblxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIG1pbi13aWR0aDogdmFyKC0tc3BhY2luZy0xMDAwKTtcbiAgICAgICAgbWF4LXdpZHRoOiB2YXIoLS1zcGFjaW5nLTgwMCk7XG4gICAgICAgIG1hcmdpbi1pbmxpbmU6IGF1dG87XG4gICAgICAgIHBhZGRpbmctaW5saW5lOiB2YXIoLS1zcGFjaW5nLTE1MCk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvKipcbiAqIFRleHRcbiAqIEdyb3VwOiBFbGVtZW50c1xuICovXG5cbkB1c2UgXCIuLi8wMi10b29scy90eXBvZ3JhcGh5XCIgYXMgKjtcblxucCxcbnNwYW4sXG5saSxcbmEsXG50aW1lLFxuYWRkcmVzcyB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1ib2R5LWxldHRlci1zcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWJvZHktbGluZS1oZWlnaHQpO1xufVxuXG5wIHtcbiAgJi5oYXMtc21hbGwtZm9udC1zaXplIHtcbiAgICBAaW5jbHVkZSB0ZXh0KFwic21cIiwgdHJ1ZSk7XG4gIH1cblxuICAmLmhhcy1sYXJnZS1mb250LXNpemUge1xuICAgIEBpbmNsdWRlIGhlYWRpbmcoXCJoNlwiLCB0cnVlKTtcbiAgfVxuXG4gICYuaGFzLWxhcmdlci1mb250LXNpemUge1xuICAgIEBpbmNsdWRlIGhlYWRpbmcoXCJoNVwiLCB0cnVlKTtcbiAgfVxufVxuXG4vLyBTcGFuIG9yIGEgaW5zaWRlIGEgc3BhblxuYSxcbnNwYW4ge1xuICBzcGFuIHtcbiAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgZm9udC13ZWlnaHQ6IGluaGVyaXQ7XG4gICAgbGV0dGVyLXNwYWNpbmc6IGluaGVyaXQ7XG4gICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIH1cbn1cblxubGkge1xuICBwLFxuICBzcGFuIHtcbiAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgZm9udC13ZWlnaHQ6IGluaGVyaXQ7XG4gICAgbGV0dGVyLXNwYWNpbmc6IGluaGVyaXQ7XG4gICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIH1cbn1cblxuYSB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1saW5rKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG5cbi8vIFNtYWxsXG5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYm9keS1zbWFsbC1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LXNtYWxsLWxpbmUtaGVpZ2h0KTtcblxuICA+ICoge1xuICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICBmb250LXdlaWdodDogaW5oZXJpdDtcbiAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgfVxufVxuXG4vLyBTdHJvbmcgVGFnc1xuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ib2xkKTtcbn1cblxuaSxcbmVtIHtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuXG5zdXAge1xuICBkaXNwbGF5OiBpbmxpbmU7XG4gIGZvbnQtc2l6ZTogMC42ZW07XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG59XG5cbm1hcmsge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG5pbnMge1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZCk7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuZGVsIHtcbiAgKyBpbnMge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1zcGFjZS1zbSk7XG4gIH1cbn1cblxudGgsXG50ZCxcbmxpLFxucCB7XG4gIGEsXG4gIHNwYW4ge1xuICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICBmb250LXdlaWdodDogaW5oZXJpdDtcbiAgICBsZXR0ZXItc3BhY2luZzogaW5oZXJpdDtcbiAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgfVxufVxuXG4vKlxuICogSW5oZXJpdCBmb250IHN0eWxlcyBpZiBkaXYgaGFzIGZvbnQgY2xhc3Nlc1xuICogVGhpcyBpcyBoZWxwZnVsIGZvciB0aGUgUlRFIHdoaWNoIGlzIGEgZGl2IGFuZCBhY2NlcHRzIHAgdGFncyBpbnNpZGVcbiAqL1xuZGl2W2NsYXNzXSB7XG4gICYgPiBwOm5vdChbY2xhc3NdKSB7XG4gICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICAgIGxldHRlci1zcGFjaW5nOiBpbmhlcml0O1xuICB9XG59XG5cbmJ1dHRvbltjbGFzc10ge1xuICAmID4gc3Bhbjpub3QoW2NsYXNzXSksXG4gICYgPiBwOm5vdChbY2xhc3NdKSB7XG4gICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICAgIGxldHRlci1zcGFjaW5nOiBpbmhlcml0O1xuICB9XG59XG4iLCIvKipcbiAqIFRleHRhcmVhXG4gKlxuICogR3JvdXA6IEVsZW1lbnRzXG4gKi9cblxuQHVzZSBcIi4uLzAyLXRvb2xzL2lucHV0XCIgYXMgKjtcblxudGV4dGFyZWEge1xuICBAaW5jbHVkZSBpbnB1dC1kZWZhdWx0KFwicmVzZXRcIik7XG59XG4iLCIvKipcbiAqIFRpdGxlXG4gKlxuICogR3JvdXA6IEVsZW1lbnRzXG4gKi9cblxuQHVzZSBcIi4uLzAyLXRvb2xzL3R5cG9ncmFwaHlcIiBhcyAqO1xuXG4udGl0bGUge1xuICAmLXBhZ2Uge1xuICAgIEBpbmNsdWRlIGhlYWRpbmcoXCJoMlwiKTtcbiAgfVxuXG4gICYtc2VjdGlvbiB7XG4gICAgQGluY2x1ZGUgaGVhZGluZyhcImgyXCIpO1xuXG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy0yMDApO1xuICB9XG59XG4iLCIvKipcbiAqIFZpZGVvXG4gKiBHcm91cDogRWxlbWVudHNcbiAqL1xuXG4udmlkZW8ge1xuICBhc3BlY3QtcmF0aW86IDE2IC8gOTtcbiAgbWluLXdpZHRoOiAzMjBweDtcbiAgbWluLWhlaWdodDogMTgwcHg7XG4gIG1heC13aWR0aDogMTkyMHB4O1xuICBtYXgtaGVpZ2h0OiAxMDgwcHg7XG59XG4iLCIvKipcbiAqIE9iamVjdHMgTWFpblxuICogR3JvdXA6IE9iamVjdHNcbiAqL1xuXG5AZm9yd2FyZCBcImFydGljbGVzLWdyb3VwXCI7XG5AZm9yd2FyZCBcImFzcGVjdC1yYXRpb1wiO1xuQGZvcndhcmQgXCJjb250YWluZXJcIjtcbkBmb3J3YXJkIFwiY29va2llLWRpYWxvZ1wiO1xuQGZvcndhcmQgXCJkcm9wZG93blwiO1xuQGZvcndhcmQgXCJmaWx0ZXItZ3JvdXBcIjtcbkBmb3J3YXJkIFwiaWNvbi1ncm91cFwiO1xuQGZvcndhcmQgXCJsaW5rLWJveC1ncm91cFwiO1xuQGZvcndhcmQgXCJtYWluXCI7XG5AZm9yd2FyZCBcIm1vZGFsXCI7XG5AZm9yd2FyZCBcInBhZ2UtbGF5b3V0XCI7XG5AZm9yd2FyZCBcInNlY3Rpb25cIjtcbiIsIi8qKlxuICogQXJ0aWNsZXMgR3JvdXBcbiAqIEdyb3VwOiBPYmplY3RzXG4gKi9cblxuQHVzZSBcIi4uLzAyLXRvb2xzL2JyZWFrcG9pbnRzXCIgYXMgKjtcblxuLm8tYXJ0aWNsZXMtZ3JvdXAge1xuICAkdGhpczogJjtcblxuICAmX19uZXdzIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgZ2FwOiB2YXIoLS1zcGFjaW5nLTIwMCk7XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKFwiZGVza3RvcC1zbWFsbFwiKSB7XG4gICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMTIsIDFmcik7XG4gICAgICBncmlkLXRlbXBsYXRlLXJvd3M6IDFmciAyZnI7XG4gICAgfVxuXG4gICAgJi1pdGVtIHtcbiAgICAgIG1pbi1oZWlnaHQ6IDA7XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoXCJkZXNrdG9wLXNtYWxsXCIpIHtcbiAgICAgICAgJjpudGgtY2hpbGQoMSkge1xuICAgICAgICAgIGdyaWQtY29sdW1uOiAxIC8gc3BhbiA2O1xuICAgICAgICAgIGdyaWQtcm93OiAxIC8gc3BhbiAyO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgICAgIGdyaWQtY29sdW1uOiA3IC8gc3BhbiA2O1xuICAgICAgICAgIGdyaWQtcm93OiAxO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpudGgtY2hpbGQoMykge1xuICAgICAgICAgIGdyaWQtY29sdW1uOiA3IC8gc3BhbiA2O1xuICAgICAgICAgIGdyaWQtcm93OiAyO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJl9fcHJlc3Mge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ2FwOiB2YXIoLS1zcGFjaW5nLTI1MCk7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1pbmxpbmU6IGF1dG87XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKFwidGFibGV0XCIpIHtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChcImRlc2t0b3AtbWVkaXVtXCIpIHtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIDFmcik7XG4gICAgICBnYXA6IHZhcigtLXNwYWNpbmctMTAwKSB2YXIoLS1zcGFjaW5nLTI1MCk7XG4gICAgfVxuICB9XG59XG4iLCIvKipcbiAqIEFzcGVjdCBSYXRpb1xuICogR3JvdXA6IE9iamVjdHNcbiAqIGxpbms6IGh0dHBzOi8vdHdpdHRlci5jb20vY3Nzd2l6YXJkcnkvc3RhdHVzLzEyNjcwNDYyMTQwNjkwMzA5MTJcbiAqL1xuXG4uby1hc3BlY3QtcmF0aW8ge1xuICBAc3VwcG9ydHMgKHBhZGRpbmctdG9wOiBjYWxjKHZhcigtLWhlaWdodCkgLyB2YXIoLS13aWR0aCkgKiAxMDAlKSkge1xuICAgIC0td2lkdGg6IDE2O1xuICAgIC0taGVpZ2h0OiA5O1xuXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwYWRkaW5nLXRvcDogY2FsYyh2YXIoLS1oZWlnaHQpIC8gdmFyKC0td2lkdGgpICogMTAwJSk7XG4gICAgfVxuXG4gICAgPiBkaXYsXG4gICAgPiBpbWcsXG4gICAgPiB2aWRlbyxcbiAgICA+IGlmcmFtZSB7XG4gICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICAgICAgbGVmdDogMDtcbiAgICAgIHRvcDogMDtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG5cbi8qIEFwcGx5IGFzcGVjdCByYXRpbyB0byBjb250YWluZXIgKi9cbi5oYXMtYXNwZWN0LXJhdGlvIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICY6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gID4gZGl2IHtcbiAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgfVxuXG4gIGlmcmFtZSB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG4iLCIvKipcbiAqIENvbnRhaW5lclxuICogR3JvdXA6IE9iamVjdHNcbiAqL1xuXG5AdXNlIFwiLi4vMDItdG9vbHMvYnJlYWtwb2ludHNcIiBhcyAqO1xuXG4uby1jb250YWluZXIge1xuICBtYXgtd2lkdGg6IHZhcigtLW1heC13aWR0aC0tMnhsKTtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctaW5saW5lOiB2YXIoLS1zcGFjaW5nLTEwMCk7XG4gIG1hcmdpbi1pbmxpbmU6IGF1dG87XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChcInRhYmxldFwiKSB7XG4gICAgcGFkZGluZy1pbmxpbmU6IHZhcigtLXNwYWNpbmctMjAwKTtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoXCJkZXNrdG9wLXNtYWxsXCIpIHtcbiAgICBwYWRkaW5nLWlubGluZTogdmFyKC0tc3BhY2luZy0zMDApO1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChcImRlc2t0b3AtbWVkaXVtXCIpIHtcbiAgICBwYWRkaW5nLWlubGluZTogdmFyKC0tc3BhY2luZy00MDApO1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChcImRlc2t0b3BcIikge1xuICAgIHBhZGRpbmctaW5saW5lOiB2YXIoLS1zcGFjaW5nLTUwMCk7XG4gIH1cblxuICAvKiBDb250YWluZXIgaW5zaWRlIGEgY29udGFpbmVyICovXG4gIFtjbGFzc149XCJvLWNvbnRhaW5lclwiXSxcbiAgW2NsYXNzKj1cIiBvLWNvbnRhaW5lclwiXSB7XG4gICAgcGFkZGluZy1pbmxpbmU6IDA7XG4gIH1cblxuICAvKiBDb250YWluZXIgaW5zaWRlIGEgY29udGFpbmVyIGJ1dCB3aXRoIGZ1bGx3aWR0aCBjbGFzcyBiZXR3ZWVuIHRoZW0gKi9cbiAgLnUtZnVsbC13aWR0aCB7XG4gICAgW2NsYXNzXj1cIm8tY29udGFpbmVyXCJdLFxuICAgIFtjbGFzcyo9XCIgby1jb250YWluZXJcIl0ge1xuICAgICAgcGFkZGluZy1pbmxpbmU6IHZhcigtLXNwYWNpbmctMTAwKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8qKlxuICogQ29va2llIERpYWxvZ1xuICogR3JvdXA6IE9iamVjdHNcbiAqL1xuXG5AdXNlIFwiLi4vMDItdG9vbHMvYnJlYWtwb2ludHNcIiBhcyAqO1xuQHVzZSBcIi4uLzAyLXRvb2xzL3R5cG9ncmFwaHlcIiBhcyAqO1xuQHVzZSBcIi4uLzAyLXRvb2xzL2J1dHRvbnNcIiBhcyAqO1xuQHVzZSBcIi4uLzAyLXRvb2xzL2JveC1zaGFkb3dzXCIgYXMgKjtcblxuLm8tY29va2llLWRpYWxvZyB7XG4gICR0aGlzOiAmO1xuXG4gICZfX2NvbnRhaW5lciB7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhcIjAzXCIsIFwibGlnaHRcIik7XG5cbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgYm90dG9tOiB2YXIoLS1zcGFjaW5nLTE1MCk7XG4gICAgbGVmdDogMDtcbiAgICBtYXJnaW4taW5saW5lOiB2YXIoLS1zcGFjaW5nLTE1MCk7XG4gICAgbWF4LXdpZHRoOiA0NXJlbTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1saWdodC1ncmF5KTtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1zcGFjaW5nLTEwMCk7XG4gICAgYm9yZGVyOiAzcHggc29saWQgdmFyKC0tY29sb3ItYnJhbmQtb3JhbmdlKTtcbiAgICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLTIwMCk7XG4gIH1cblxuICAmX190aXRsZSB7XG4gICAgQGluY2x1ZGUgaGVhZGluZyhcImgzXCIpO1xuXG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy0xMDApO1xuICB9XG5cbiAgJl9fZGVzY3JpcHRpb24ge1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctMjAwKTtcbiAgfVxuXG4gICZfX2J1dHRvbiB7XG4gICAgQGluY2x1ZGUgYnV0dG9uO1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1zaXplKFwic3RhdGljXCIpO1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1zdHlsZShcInNlY29uZGFyeVwiKTtcblxuICAgICYtY29udGFpbmVyIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGdhcDogdmFyKC0tc3BhY2luZy0xNTApO1xuXG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKFwicGhhYmxldFwiKSB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgIGdhcDogdmFyKC0tc3BhY2luZy0yMDApO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICZfX2Nsb3NlLWJ1dHRvbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMXJlbTtcbiAgICByaWdodDogMXJlbTtcblxuICAgIEBpbmNsdWRlIGJ1dHRvbi1zaXplKFwieHNcIik7XG5cbiAgICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtb3JhbmdlKTtcbiAgfVxufVxuIiwiLyoqXG4gKiBEcm9wZG93blxuICogR3JvdXA6IE9iamVjdHNcbiAqL1xuXG5AdXNlIFwiLi4vMDItdG9vbHMvYnV0dG9uc1wiIGFzICo7XG5AdXNlIFwiLi4vMDItdG9vbHMvdHlwb2dyYXBoeVwiIGFzICo7XG5cbi5vLWRyb3Bkb3duIHtcbiAgJHRoaXM6ICY7XG5cbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIGVhc2UtaW4tb3V0IHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pO1xuXG4gICZfX2xpc3Qge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDEwMCU7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICB6LWluZGV4OiA1O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLXNlYXJjaC1ncmF5KTtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtZ3JheSk7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1sKTtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1sKTtcbiAgICBwYWRkaW5nLWJsb2NrOiB2YXIoLS1zcGFjaW5nLTAyNSkgdmFyKC0tc3BhY2luZy0xNTApO1xuICAgIG1heC1oZWlnaHQ6IGNsYW1wKHZhcigtLXNwYWNpbmctMTIwMCksIDQ1ZHZoLCB2YXIoLS1zcGFjaW5nLTI0MDApKTtcbiAgICBvdmVyZmxvdzogYXV0bztcblxuICAgICYtaXRlbSB7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggZGFzaGVkIHZhcigtLWNvbG9yLWRhcmspO1xuICAgICAgcGFkZGluZy1pbmxpbmU6IHZhcigtLXNwYWNpbmctMTUwKTtcbiAgICAgIHBhZGRpbmctYmxvY2s6IHZhcigtLXNwYWNpbmctMDUwKTtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICAgJlthcmlhLXNlbGVjdGVkPVwidHJ1ZVwiXSB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ib2xkKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmX190b2dnbGUtYnV0dG9uIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMztcbiAgICBmbGV4OiAxO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgYm9yZGVyOiBub25lO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcGFkZGluZzogdmFyKC0tc3BhY2luZy0xMDApIHZhcigtLXNwYWNpbmctMTUwKTtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgfVxuXG4gICZfX2Rpc3BsYXkge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgfVxuXG4gICZfX2ljb24ge1xuICAgIHdpZHRoOiB2YXIoLS1pY29uLW1zKTtcbiAgICBoZWlnaHQ6IHZhcigtLWljb24teHMpO1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICB9XG5cbiAgJlthcmlhLWV4cGFuZGVkPVwiZmFsc2VcIl0ge1xuICAgICN7JHRoaXN9X19saXN0IHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgJlthcmlhLWV4cGFuZGVkPVwidHJ1ZVwiXSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtb3JhbmdlKTtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItbGlnaHQpO1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XG5cbiAgICAjeyR0aGlzfV9fbGlzdCB7XG4gICAgICBhbmltYXRpb246XG4gICAgICAgIGZhZGUtaW4gdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbiBmb3J3YXJkcyxcbiAgICAgICAgc2xpZGUtYm91bmNlLWRvd24gdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1vdXQgZm9yd2FyZHM7XG4gICAgfVxuXG4gICAgI3skdGhpc31fX2ljb24ge1xuICAgICAgYW5pbWF0aW9uOiByb3RhdGUtMTgwIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4gZm9yd2FyZHM7XG4gICAgfVxuICB9XG5cbiAgJjpmb2N1cy12aXNpYmxlIHtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWZvY3VzLXN0cm9rZSk7XG4gIH1cbn1cbiIsIi8qKlxuICogRmlsdGVycyBHcm91cFxuICogR3JvdXA6IE9iamVjdHNcbiAqL1xuXG5AdXNlIFwiLi4vMDItdG9vbHMvYnJlYWtwb2ludHNcIiBhcyAqO1xuXG4uby1maWx0ZXItZ3JvdXAge1xuICAkdGhpczogJjtcblxuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgZ2FwOiB2YXIoLS1zcGFjaW5nLTIwMCk7XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChcInRhYmxldFwiKSB7XG4gICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKFwiZGVza3RvcFwiKSB7XG4gICAgcm93LWdhcDogdmFyKC0tc3BhY2luZy0xMDApO1xuICB9XG59XG4iLCIvKipcbiAqIEljb24gR3JvdXBcbiAqIEdyb3VwOiBPYmplY3RzXG4gKi9cblxuLm8taWNvbi1ncm91cCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IG5vd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IHZhcigtLXNwYWNpbmctMTUwKTtcbn1cbiIsIi8qKlxuICogTGluayBib3ggZ3JvdXBcbiAqIEdyb3VwOiBPYmplY3RzXG4gKi9cblxuQHVzZSBcIi4uLzAyLXRvb2xzL2JyZWFrcG9pbnRzXCIgYXMgKjtcblxuLm8tbGluay1ib3gtZ3JvdXAge1xuICAkdGhpczogJjtcblxuICBkaXNwbGF5OiBncmlkO1xuICBnYXA6IHZhcigtLXNwYWNpbmctMjUwKTtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChcInRhYmxldFwiKSB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoXCJkZXNrdG9wLW1lZGl1bVwiKSB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTtcbiAgfVxufVxuIiwiLyoqXG4gKiBNYWluXG4gKlxuICogR3JvdXA6IE9iamVjdHNcbiAqL1xuXG4uby1tYWluIHtcbiAgJHRoaXM6ICY7XG59XG4iLCIvKipcbiAqIE1vZGFsXG4gKiBHcm91cDogT2JqZWN0c1xuICovXG5cbkB1c2UgXCIuLi8wMi10b29scy9icmVha3BvaW50c1wiIGFzICo7XG5cbi5vLW1vZGFsIHtcbiAgJHRoaXM6ICY7XG59XG4iLCIvKipcbiAqIFBhZ2VcbiAqIEdyb3VwOiBPYmplY3RzXG4gKi9cblxuQHVzZSBcIi4uLzAyLXRvb2xzL2JyZWFrcG9pbnRzXCIgYXMgKjtcblxuLm8tcGFnZSB7XG4gICR0aGlzOiAmO1xuXG4gICYtLWxheW91dC13aXRoLXNpZGViYXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICBnYXA6IHZhcigtLXNwYWNpbmctNDAwKTtcblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoXCJkZXNrdG9wLXNtYWxsXCIpIHtcbiAgICAgIGZsZXgtZmxvdzogcm93IG5vd3JhcDtcbiAgICB9XG4gIH1cblxuICAmLS1sYXlvdXQtd2l0aC1zaWRlYmFyLWFuZC1tYXAge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cblxuICAmX19tYWluIHtcbiAgICBmbGV4OiAxO1xuXG4gICAgJiA+IC5vLXNlY3Rpb246Zmlyc3QtY2hpbGQge1xuICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgfVxuICB9XG5cbiAgJl9fc2lkZWJhciB7XG4gICAgZmxleDogMSAwIGF1dG87XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1heC13aWR0aDogdmFyKC0tbWF4LXdpZHRoLS00eHMpO1xuICAgIG1hcmdpbi1pbmxpbmU6IGF1dG87XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKFwiZGVza3RvcC1zbWFsbFwiKSB7XG4gICAgICBtYXJnaW4taW5saW5lOiBpbml0aWFsO1xuICAgIH1cbiAgfVxufVxuIiwiLyoqXG4gKiBTZWN0aW9uXG4gKiBHcm91cDogT2JqZWN0c1xuICovXG5cbkB1c2UgXCIuLi8wMi10b29scy9icmVha3BvaW50c1wiIGFzICo7XG5cbi5vLXNlY3Rpb24ge1xuICAkdGhpczogJjtcblxuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctYmxvY2s6IHZhcigtLXNwYWNpbmctNDAwKTtcblxuICAuby1jb250YWluZXI6bnRoLW9mLXR5cGUobiArIDIpLFxuICAuby1jb250YWluZXI6bnRoLW9mLXR5cGUoMSk6bnRoLWxhc3Qtb2YtdHlwZShuICsgMikge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoXCJ0YWJsZXRcIikge1xuICAgICAgLy9wYWRkaW5nLWJsb2NrOiB2YXIoLS1zcGFjaW5nLTIwMCk7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChcImRlc2t0b3BcIikge1xuICAgICAgLy9wYWRkaW5nLWJsb2NrOiB2YXIoLS1zcGFjaW5nLTMwMCk7XG4gICAgfVxuICB9XG5cbiAgJjpoYXMoLm8tY29udGFpbmVyICsgLm8tY29udGFpbmVyKSB7XG4gICAgLm8tY29udGFpbmVyIHtcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoXCJ0YWJsZXRcIikge1xuICAgICAgICAvL3BhZGRpbmctYmxvY2s6IHZhcigtLXNwYWNpbmctMjAwKTtcbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChcImRlc2t0b3BcIikge1xuICAgICAgICAvL3BhZGRpbmctYmxvY2s6IHZhcigtLXNwYWNpbmctMzAwKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8qKlxuICogQkxPQ0tTIE1BSU4gRklMRVxuICovXG5cbkBmb3J3YXJkIFwiYWxlcnRcIjtcbkBmb3J3YXJkIFwiYnJlYWRjcnVtYlwiO1xuQGZvcndhcmQgXCJjb250YWN0XCI7XG5AZm9yd2FyZCBcImRvY3VtZW50LWxpc3RpbmdcIjtcbkBmb3J3YXJkIFwiZmlsdGVyXCI7XG5AZm9yd2FyZCBcImZvb3RlclwiO1xuQGZvcndhcmQgXCJoZWFkZXJcIjtcbkBmb3J3YXJkIFwiaW1hZ2UtbGlua3NcIjtcbkBmb3J3YXJkIFwiaW1hZ2UtdGV4dFwiO1xuQGZvcndhcmQgXCJsaW5rLWJveFwiO1xuQGZvcndhcmQgXCJpbnRyby1iYW5uZXJcIjtcbkBmb3J3YXJkIFwibGlzdFwiO1xuQGZvcndhcmQgXCJtYXBcIjtcbkBmb3J3YXJkIFwibmV3c1wiO1xuQGZvcndhcmQgXCJuZXdzbGV0dGVyXCI7XG5AZm9yd2FyZCBcIm5vdC1mb3VuZFwiO1xuQGZvcndhcmQgXCJwYWdlLWJhbm5lclwiO1xuQGZvcndhcmQgXCJwZGYtdmlld2VyXCI7XG5AZm9yd2FyZCBcInF1b3RlXCI7XG5AZm9yd2FyZCBcInNpZGViYXJcIjtcbkBmb3J3YXJkIFwidGV4dFwiO1xuQGZvcndhcmQgXCJ0aWNrZXQtbGlua1wiO1xuQGZvcndhcmQgXCJ0cmVlXCI7XG4iLCIvKipcbiAqIEFsZXJ0XG4gKiBHcm91cDogQ29tcG9uZW50c1xuICovXG5cbkB1c2UgXCIuLi8wMi10b29scy90eXBvZ3JhcGh5XCIgYXMgKjtcblxuLmMtYWxlcnQge1xuICAkdGhpczogJjtcblxuICAmLS1sYXlvdXQge1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtcyk7XG4gICAgcGFkZGluZzogdmFyKC0tc3BhY2luZy0xNTApO1xuICB9XG5cbiAgJi0taW5mbyB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUtbGlnaHQpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUtbGlnaHQtc2VtaS10cmFuc3BhcmVudCk7XG4gIH1cblxuICAmLS1zdWNjZXNzIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItYWxlcnQtZ3JlZW4tZGFyayk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtZ3JlZW4pO1xuICB9XG5cbiAgJi0td2FybmluZyB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJyb3duKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1icm93bi1zZW1pLXRyYW5zcGFyZW50KTtcbiAgfVxuXG4gICYtLWRhbmdlciB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWRhcmstcmVkKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1yZWQtc2VtaS10cmFuc3BhcmVudCk7XG4gIH1cblxuICAmLS1zbGlkZS11cCB7XG4gICAgYW5pbWF0aW9uOiBzbGlkZS11cCB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlIGZvcndhcmRzO1xuICB9XG5cbiAgJi0tZmFkZS1vdXQge1xuICAgIGFuaW1hdGlvbjogZmFkZS1vdXQgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbi1tZWRpdW0pIGVhc2UgZm9yd2FyZHM7XG4gIH1cblxuICAmX190aXRsZSB7XG4gICAgQGluY2x1ZGUgaGVhZGluZyhcImgzXCIpO1xuXG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy0wNTApO1xuICB9XG5cbiAgJl9fdGV4dCB7XG4gICAgQGluY2x1ZGUgdGV4dChcIm1kXCIpO1xuICB9XG59XG4iLCIvKipcbiAqIEJyZWFkY3J1bWJcbiAqIEdyb3VwOiBDb21wb25lbnRzXG4gKi9cblxuQHVzZSBcIi4uLzAyLXRvb2xzL3R5cG9ncmFwaHlcIiBhcyAqO1xuQHVzZSBcIi4uLzAyLXRvb2xzL2JyZWFrcG9pbnRzXCIgYXMgKjtcblxuLmMtYnJlYWRjcnVtYiB7XG4gICR0aGlzOiAmO1xuXG4gICZfX2xpc3Qge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ2FwOiB2YXIoLS1zcGFjaW5nLTA1MCk7XG4gIH1cblxuICAmX19pdGVtIHtcbiAgICBAaW5jbHVkZSB0ZXh0KFwic21cIik7XG5cbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGdhcDogdmFyKC0tc3BhY2luZy0wNTApO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1saWdodC1ncmF5KTtcblxuICAgICYtbGluayB7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmW2FyaWEtY3VycmVudD1cInBhZ2VcIl0ge1xuICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLW9yYW5nZSk7XG4gICAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZCk7XG4gICAgfVxuICB9XG5cbiAgJl9fc3BhY2VyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtbGlnaHQtZ3JheSk7XG4gIH1cbn1cbiIsIi8qKlxuICogQ29udGFjdFxuICogR3JvdXA6IENvbXBvbmVudHNcbiAqL1xuXG5AdXNlIFwiLi4vMDItdG9vbHMvYnJlYWtwb2ludHNcIiBhcyAqO1xuQHVzZSBcIi4uLzAyLXRvb2xzL3R5cG9ncmFwaHlcIiBhcyAqO1xuQHVzZSBcIi4uLzAyLXRvb2xzL2J1dHRvbnNcIiBhcyAqO1xuQHVzZSBcIi4uLzAyLXRvb2xzL2lucHV0XCIgYXMgKjtcblxuLmMtY29udGFjdCB7XG4gICR0aGlzOiAmO1xuXG4gIC5vLXNlY3Rpb24sXG4gIC5jLWFsZXJ0IHtcbiAgICBwYWRkaW5nLWJsb2NrOiAwIHZhcigtLXNwYWNpbmctMjAwKTtcbiAgfVxuXG4gICYtLWxheW91dCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7XG4gICAgZ2FwOiB2YXIoLS1zcGFjaW5nLTQwMCk7XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKFwiZGVza3RvcC1zbWFsbFwiKSB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgZ2FwOiB2YXIoLS1zcGFjaW5nLTIwMCk7XG4gICAgfVxuICB9XG5cbiAgJl9fbWFwLWNvbnRhaW5lciB7XG4gICAgZmxleDogMTtcbiAgfVxuXG4gICZfX2Zvcm0tY29udGFpbmVyIHtcbiAgICBmbGV4OiAxO1xuXG4gICAgLmZpZWxkLXZhbGlkYXRpb24tZXJyb3Ige1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBoZWlnaHQ6IHZhcigtLXNwYWNpbmctMzAwKTtcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1kYXJrLXJlZCk7XG4gICAgICBsaW5lLWhlaWdodDogdmFyKC0tYm9keS1saW5lLWhlaWdodCk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1yZWQtc2VtaS10cmFuc3BhcmVudCk7XG4gICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLWwpO1xuICAgICAgcGFkZGluZzogdmFyKC0tc3BhY2luZy0xMDApO1xuICAgICAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2luZy0wNTApO1xuICAgIH1cblxuICAgIC51bWJyYWNvLWZvcm1zLWZpZWxkc2V0IHtcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1saWdodCk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXNwYWNpbmctMTUwKTtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctMTUwKTtcbiAgICB9XG5cbiAgICAudW1icmFjby1mb3Jtcy1maWVsZCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLTEwMCk7XG4gICAgfVxuXG4gICAgLnVtYnJhY28tZm9ybXMtbGFiZWwge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1zcGFjaW5nLTA3NSk7XG4gICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLTA1MCk7XG4gICAgfVxuXG4gICAgaW5wdXQsXG4gICAgdGV4dGFyZWEge1xuICAgICAgQGluY2x1ZGUgYnV0dG9uLXNpemUoXCJzdGF0aWNcIik7XG4gICAgICBAaW5jbHVkZSBpbnB1dC1kZWZhdWx0KFwibmV3c2xldHRlclwiKTtcblxuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IHZhcigtLXNwYWNpbmctMzUwKTtcbiAgICB9XG5cbiAgICB0ZXh0YXJlYSB7XG4gICAgICBoZWlnaHQ6IHZhcigtLXNwYWNpbmctMTAwMCk7XG4gICAgfVxuXG4gICAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgICBAaW5jbHVkZSBidXR0b247XG4gICAgICBAaW5jbHVkZSBidXR0b24tc2l6ZShcInN0YXRpY1wiKTtcbiAgICAgIEBpbmNsdWRlIGJ1dHRvbi1zdHlsZShcInByaW1hcnlcIik7XG5cbiAgICAgIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmctMTUwKTtcbiAgICB9XG5cbiAgICBzZWxlY3Qge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IHZhcigtLXNwYWNpbmctMzUwKTtcbiAgICB9XG5cbiAgICAudW1icmFjby1mb3Jtcy1oaWRkZW4ge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cbn1cbiIsIi8qKlxuICogRG9jdW1lbnRhdGlvbiBsaXN0aW5nXG4gKiBHcm91cDogQ29tcG9uZW50c1xuICovXG5cbkB1c2UgXCIuLi8wMi10b29scy90eXBvZ3JhcGh5XCIgYXMgKjtcblxuLmMtZG9jdW1lbnQtbGlzdGluZyB7XG4gICR0aGlzOiAmO1xuXG4gICZfX2xpc3Qge1xuICAgIC8vXG4gIH1cblxuICAmX19pdGVtIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogdmFyKC0tc3BhY2luZy0wNzUpO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1jb2xvci1icmFuZC1vcmFuZ2UpO1xuICAgIHBhZGRpbmctYmxvY2s6IHZhcigtLXNwYWNpbmctMjAwKTtcbiAgICBwYWRkaW5nLWlubGluZTogdmFyKC0tc3BhY2luZy0xMjUpO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1saWdodGVyLWdyYXkpO1xuICAgIH1cblxuICAgICYtdGl0bGUge1xuICAgICAgQGluY2x1ZGUgaGVhZGluZyhcImg2XCIsIFwiYm9sZFwiKTtcblxuICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0KTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xuICAgICAgcGFkZGluZy1ibG9jazogdmFyKC0tc3BhY2luZy0yMDApO1xuICAgICAgcGFkZGluZy1pbmxpbmU6IHZhcigtLXNwYWNpbmctMDUwKTtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1jb2xvci1icmFuZC1vcmFuZ2UpO1xuICAgIH1cblxuICAgICYtbGluayB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1vcmFuZ2UpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLyoqXG4gKiBGaWx0ZXJcbiAqIEdyb3VwOiBDb21wb25lbnRzXG4gKi9cblxuQHVzZSBcIi4uLzAyLXRvb2xzL2JyZWFrcG9pbnRzXCIgYXMgKjtcbkB1c2UgXCIuLi8wMi10b29scy90eXBvZ3JhcGh5XCIgYXMgKjtcbkB1c2UgXCIuLi8wMi10b29scy9wbGFjZWhvbGRlclwiIGFzICo7XG5AdXNlIFwiLi4vMDItdG9vbHMvYnV0dG9uc1wiIGFzICo7XG5AdXNlIFwiLi4vMDItdG9vbHMvYm94LXNoYWRvd3NcIiBhcyAqO1xuXG4uYy1maWx0ZXIge1xuICAkdGhpczogJjtcblxuICAmLS1sYXlvdXQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcbiAgICBwYWRkaW5nLWJsb2NrOiB2YXIoLS1zcGFjaW5nLTQwMCkgdmFyKC0tc3BhY2luZy0zMDApO1xuICAgIHBhZGRpbmctaW5saW5lOiB2YXIoLS1zcGFjaW5nLTEwMCk7XG4gIH1cblxuICAmX19jb250YWluZXIge1xuICAgIG1heC13aWR0aDogdmFyKC0tbWF4LXdpZHRoLS1tZCk7XG4gICAgbWFyZ2luLWlubGluZTogYXV0bztcbiAgfVxuXG4gICZfX3RpdGxlIHtcbiAgICBAaW5jbHVkZSBoZWFkaW5nKFwiaDJcIik7XG5cbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLTE1MCk7XG4gIH1cblxuICAuYy1hbGVydCB7XG4gICAgbWF4LXdpZHRoOiB2YXIoLS1tYXgtd2lkdGgtLW1kKTtcbiAgICBtYXJnaW4taW5saW5lOiBhdXRvO1xuICAgIG1hcmdpbi1ibG9jazogdmFyKC0tc3BhY2luZy0yNTApIDA7XG4gIH1cbn1cbiIsIi8qKlxuICogRm9vdGVyXG4gKiBHcm91cDogQ29tcG9uZW50c1xuICovXG5cbkB1c2UgXCIuLi8wMi10b29scy9icmVha3BvaW50c1wiIGFzICo7XG5AdXNlIFwiLi4vMDItdG9vbHMvdHlwb2dyYXBoeVwiIGFzICo7XG5AdXNlIFwiLi4vMDItdG9vbHMvYnV0dG9uc1wiIGFzICo7XG5cbi5jLWZvb3RlciB7XG4gICR0aGlzOiAmO1xuXG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC13aGl0ZSk7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLXRvcDogYXV0bztcblxuICAmX19tYWluIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcblxuICAgICYtaW5uZXIge1xuICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDEsIDFmcik7XG4gICAgICBnYXA6IDNyZW07XG4gICAgICBwYWRkaW5nLWJsb2NrOiB2YXIoLS1zcGFjaW5nLTUwMCk7XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoXCJwaGFibGV0XCIpIHtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTtcbiAgICAgICAgZ2FwOiA0cmVtO1xuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKFwiZGVza3RvcC1zbWFsbFwiKSB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDQsIDFmcik7XG4gICAgICAgIGdhcDogNHJlbTtcbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChcImRlc2t0b3BcIikge1xuICAgICAgICBnYXA6IDEwcmVtO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICZfX2xvZ28tdGV4dCB7XG4gICAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2luZy0xNTApO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1saWdodC1ncmF5KTtcbiAgfVxuXG4gICZfX2NvbHVtbiB7XG4gICAgJi10aXRsZSB7XG4gICAgICBAaW5jbHVkZSB0ZXh0KFwibWRcIiwgXCJib2xkXCIpO1xuXG4gICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLTA3NSk7XG4gICAgfVxuXG4gICAgJi1saW5rIHtcbiAgICAgIEBpbmNsdWRlIHRleHQoXCJzbVwiKTtcblxuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLW9yYW5nZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChcImRlc2t0b3BcIikge1xuICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIG1heC13aWR0aDogMTYwcHg7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJl9fYm90dG9tIHtcbiAgICAmX19sb2dvcy1jb250YWluZXIge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgZ2FwOiAxcmVtO1xuICAgICAgcGFkZGluZy1ibG9jazogdmFyKC0tc3BhY2luZy0wNzUpO1xuXG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKFwidGFibGV0XCIpIHtcbiAgICAgICAgZ2FwOiAycmVtO1xuICAgICAgfVxuICAgIH1cblxuICAgICZfX2xvZ28ge1xuICAgICAgaGVpZ2h0OiB2YXIoLS1zcGFjaW5nLTMwMCk7XG5cbiAgICAgIHBpY3R1cmUsXG4gICAgICBpbWcge1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJl9fY29weXJpZ2h0IHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xuICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0KTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIHBhZGRpbmctYmxvY2s6IHZhcigtLXNwYWNpbmctMTI1KTtcblxuICAgICAgJi10ZXh0IHtcbiAgICAgICAgQGluY2x1ZGUgdGV4dChcIm1kXCIpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLyoqXG4gKiBIZWFkZXIgTWFpblxuICogR3JvdXA6IEN1c3RvbSBDb21wb25lbnRzXG4gKi9cblxuQHVzZSBcIi4uLzAyLXRvb2xzL2JyZWFrcG9pbnRzXCIgYXMgKjtcbkB1c2UgXCIuLi8wMi10b29scy9idXR0b25zXCIgYXMgKjtcbkB1c2UgXCIuLi8wMi10b29scy9vbi1ldmVudFwiIGFzICo7XG5AdXNlIFwiLi4vMDItdG9vbHMvdHlwb2dyYXBoeVwiIGFzICo7XG5cbi5jLWhlYWRlciB7XG4gICR0aGlzOiAmO1xuICAkYnJlYWtwb2ludC10by1kZXNrdG9wOiBcImRlc2t0b3Atc21hbGxcIjtcblxuICBmbGV4OiAwIDAgYXV0bztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgei1pbmRleDogMTA7XG5cbiAgLypcbiAgICogSGVhZGVyIFBhcnRzXG4gICAqL1xuICAmX190b3AtYmFyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcblxuICAgICYtaW5uZXIge1xuICAgICAgaGVpZ2h0OiB2YXIoLS1oZWFkZXItdG9wLWJhci1oZWlnaHQpO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBjb2xvcjogdmFyKC0tY29sb3ItbGlnaHQpO1xuXG4gICAgICAuc2VhcmNoIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50LXRvLWRlc2t0b3ApIHtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5zb2NpYWwtbGlua3Mge1xuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50LXRvLWRlc2t0b3ApIHtcbiAgICAgICAgICBnYXA6IHZhcigtLXNwYWNpbmctMzAwKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICZfX21haW4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICYtaW5uZXIge1xuICAgICAgaGVpZ2h0OiB2YXIoLS1oZWFkZXItbWFpbi1iYXItaGVpZ2h0KTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgJiA+IDpudGgtY2hpbGQoMikge1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvKiBCcmFuZGluZyAqL1xuICAmX19sb2dvIHtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIH1cblxuICAvKlxuICAgKiBTZWFyY2ggY29udGFpbmVyIGluIG1haW4gd2l0aCB0b2dnbGUgYnV0dG9uc1xuICAgKi9cbiAgJl9fc2VhcmNoLWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludC10by1kZXNrdG9wKSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuXG4gIC8qXG4gICAqIE1haW4gbWVudSB0b2dnbGUgcGFydHNcbiAgICovXG4gICZfX3RvZ2dsZS1idXJnZXItaWNvbixcbiAgJl9fdG9nZ2xlLWNsb3NlLWljb24ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgd2lkdGg6IHZhcigtLWljb24tc20pO1xuICAgIGhlaWdodDogdmFyKC0taWNvbi1zbSk7XG4gIH1cblxuICAmX190b2dnbGUtbWVudSB7XG4gICAgQGluY2x1ZGUgYnV0dG9uO1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1zaXplKFwic21cIik7XG5cbiAgICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1vcmFuZ2UpO1xuICAgIH1cblxuICAgICZbYXJpYS1leHBhbmRlZD1cInRydWVcIl0ge1xuICAgICAgI3skdGhpc31fX3RvZ2dsZS1jbG9zZS1pY29uIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGFuaW1hdGlvbjogZmFkZS1pbiB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluIGZvcndhcmRzO1xuICAgICAgfVxuXG4gICAgICAjeyR0aGlzfV9fdG9nZ2xlLWJ1cmdlci1pY29uIHtcbiAgICAgICAgYW5pbWF0aW9uOiBmYWRlLW91dCB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluIGZvcndhcmRzO1xuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50LXRvLWRlc2t0b3ApIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmW2FyaWEtZXhwYW5kZWQ9XCJmYWxzZVwiXSB7XG4gICAgICAjeyR0aGlzfV9fdG9nZ2xlLWJ1cmdlci1pY29uIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQtdG8tZGVza3RvcCkge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICZfX2NvbnRlbnQtd3JhcHBlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgaW5zZXQ6IHZhcigtLWhlYWRlci1oZWlnaHQpIDAgMCAwO1xuICAgIHotaW5kZXg6IDEwO1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgaGVpZ2h0OiBjYWxjKDEwMGR2aCAtIHZhcigtLWhlYWRlci1oZWlnaHQpKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItbGlnaHQpO1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChcImRlc2t0b3Atc21hbGxcIikge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBpbnNldDogdW5zZXQ7XG4gICAgICBvdmVyZmxvdy15OiB2aXNpYmxlO1xuICAgICAgei1pbmRleDogaW5oZXJpdDtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgICZbZGF0YS1leHBhbmRlZD1cInRydWVcIl0ge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBhbmltYXRpb246IGZhZGUtaW4gdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbiBmb3J3YXJkcztcbiAgICB9XG4gIH1cbn1cbiIsIi8qKlxuICogSW1hZ2UgTGlua3NcbiAqIEdyb3VwOiBDb21wb25lbnRzXG4gKi9cblxuQHVzZSBcIi4uLzAyLXRvb2xzL2JyZWFrcG9pbnRzXCIgYXMgKjtcbkB1c2UgXCIuLi8wMi10b29scy90eXBvZ3JhcGh5XCIgYXMgKjtcblxuLmMtaW1hZ2UtbGlua3Mge1xuICAkdGhpczogJjtcblxuICAmX193cmFwcGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBnYXA6IHZhcigtLXNwYWNpbmctMjAwKSB2YXIoLS1zcGFjaW5nLTEwMCk7XG4gIH1cblxuICAmX19saW5rIHtcbiAgICBoZWlnaHQ6IHZhcigtLXNwYWNpbmctNzAwKTtcbiAgfVxufVxuIiwiLyoqXG4gKiBUZXh0IGFuZCBJbWFnZVxuICogR3JvdXA6IENvbXBvbmVudHNcbiAqIFZpZXdzOiBTZWN0aW9uIEltYWdlIEFuZCBUZXh0IEJsb2NrXG4gKi9cblxuQHVzZSBcIi4uLzAyLXRvb2xzL2JyZWFrcG9pbnRzXCIgYXMgKjtcbkB1c2UgXCIuLi8wMi10b29scy90eXBvZ3JhcGh5XCIgYXMgKjtcblxuLmMtaW1hZ2UtdGV4dCB7XG4gICR0aGlzOiAmO1xuXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAmLS1sYXlvdXQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiBjb2x1bW4gbm93cmFwO1xuICAgIGdhcDogdmFyKC0tc3BhY2luZy0xNTApO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChcInRhYmxldFwiKSB7XG4gICAgICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7XG4gICAgICBnYXA6IHZhcigtLXNwYWNpbmctMjAwKTtcbiAgICB9XG4gIH1cblxuICAmLS1yZXZlcnNlZCB7XG4gICAgZmxleC1mbG93OiBjb2x1bW4gbm93cmFwO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChcInRhYmxldFwiKSB7XG4gICAgICBmbGV4LWZsb3c6IHJvdy1yZXZlcnNlIG5vd3JhcDtcbiAgICB9XG4gIH1cblxuICAmX19pbWFnZS13cmFwIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKFwidGFibGV0XCIpIHtcbiAgICAgIGZsZXg6IDE7XG4gICAgfVxuICB9XG5cbiAgJl9fdGV4dC13cmFwIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKFwidGFibGV0XCIpIHtcbiAgICAgIGZsZXg6IDE7XG4gICAgfVxuICB9XG5cbiAgJl9fZXllYnJvdyB7XG4gICAgQGluY2x1ZGUgdGV4dChcInNtXCIpO1xuXG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLW9yYW5nZSk7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy0wNzUpO1xuICB9XG5cbiAgJl9fdGl0bGUge1xuICAgIEBpbmNsdWRlIGhlYWRpbmcoXCJoM1wiKTtcblxuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctMTAwKTtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtZGFyay1ncmF5KTtcbiAgfVxuXG4gICZfX3RleHQge1xuICAgIEBpbmNsdWRlIHRleHQoXCJtZFwiKTtcblxuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ncmF5KTtcbiAgfVxufVxuIiwiLyoqXG4gKiBMaW5rIGJveFxuICogR3JvdXA6IENvbXBvbmVudHNcbiAqL1xuXG5AdXNlIFwiLi4vMDItdG9vbHMvYnJlYWtwb2ludHNcIiBhcyAqO1xuQHVzZSBcIi4uLzAyLXRvb2xzL3R5cG9ncmFwaHlcIiBhcyAqO1xuXG4uYy1saW5rLWJveCB7XG4gICR0aGlzOiAmO1xuXG4gICYtLWxheW91dCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ2FwOiB2YXIoLS1zcGFjaW5nLTE1MCk7XG4gICAgcGFkZGluZzogdmFyKC0tc3BhY2luZy0yMDApIHZhcigtLXNwYWNpbmctMTUwKTtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItbGlnaHQpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xuICAgIGJvcmRlcjogMnB4IHNvbGlkIHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtbSk7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB0cmFuc2l0aW9uOlxuICAgICAgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dCxcbiAgICAgIGNvbG9yIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0O1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcblxuICAgICAgI3skdGhpc31fX2ljb24ge1xuICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG5cbiAgICAgICAgJi0td3JhcHBlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICZfX2NvbnRlbnQge1xuICAgICZfX3RpdGxlIHtcbiAgICAgIEBpbmNsdWRlIGhlYWRpbmcoXCJoNVwiKTtcblxuICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgfVxuXG4gICAgJl9fZGVzY3JpcHRpb24ge1xuICAgICAgQGluY2x1ZGUgdGV4dChcInNtXCIpO1xuXG4gICAgICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjaW5nLTAyNSk7XG4gICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB9XG4gIH1cblxuICAmX19pY29uIHtcbiAgICB3aWR0aDogdmFyKC0taWNvbi1zbSk7XG4gICAgbWF4LWhlaWdodDogdmFyKC0taWNvbi1zbSk7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1saWdodCk7XG4gICAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQ7XG5cbiAgICAmLS13cmFwcGVyIHtcbiAgICAgIGZsZXg6IG5vbmU7XG4gICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgcGxhY2UtaXRlbXM6IGNlbnRlcjtcbiAgICAgIHdpZHRoOiB2YXIoLS1pY29uLXhsKTtcbiAgICAgIGhlaWdodDogdmFyKC0taWNvbi14bCk7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBib3JkZXI6IDJweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtZnVsbCk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlLXNlbWktdHJhbnNwYXJlbnQpO1xuICAgICAgdHJhbnNpdGlvbjpcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dCxcbiAgICAgICAgYm9yZGVyIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0O1xuICAgIH1cbiAgfVxufVxuIiwiLyoqXG4gKiBJbnRybyBCYW5uZXJcbiAqIEdyb3VwOiBDb21wb25lbnRzXG4gKi9cblxuQHVzZSBcIi4uLzAyLXRvb2xzL2JyZWFrcG9pbnRzXCIgYXMgKjtcbkB1c2UgXCIuLi8wMi10b29scy90eXBvZ3JhcGh5XCIgYXMgKjtcbkB1c2UgXCIuLi8wMi10b29scy9ncmFkaWVudFwiIGFzICo7XG5AdXNlIFwiLi4vMDItdG9vbHMvYnV0dG9uc1wiIGFzICo7XG5cbi5jLWludHJvLWJhbm5lciB7XG4gICR0aGlzOiAmO1xuXG4gICYtLWxheW91dCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC1oZWlnaHQ6IHZhcigtLW1heC1oZWlnaHQtaW50cm8tYmFubmVyKTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGFzcGVjdC1yYXRpbzogNC8zO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChcInBoYWJsZXRcIikge1xuICAgICAgYXNwZWN0LXJhdGlvOiAzNi8xNztcbiAgICB9XG4gIH1cblxuICAmX19pbWFnZSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuXG4gICAgJi13cmFwIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGluc2V0OiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgICAgei1pbmRleDogLTE7XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBpbnNldDogMDtcbiAgICAgICAgei1pbmRleDogMDtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW92ZXJsYXktY29sb3ItbGlnaHQpO1xuICAgICAgfVxuXG4gICAgICBwaWN0dXJlIHtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoXCJwaGFibGV0XCIpIHtcbiAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmX190ZXh0LXdyYXAge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBnYXA6IHZhcigtLXNwYWNpbmctMTUwKTtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGhlaWdodDogMTAwJTtcblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoXCJwaGFibGV0XCIpIHtcbiAgICAgIGdhcDogdmFyKC0tc3BhY2luZy0yNTApO1xuICAgIH1cbiAgfVxuXG4gICZfX3RpdGxlIHtcbiAgICBAaW5jbHVkZSBoZWFkaW5nKFwiaDJcIiwgXCJib2xkXCIpO1xuXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1saWdodCk7XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKFwidGFibGV0XCIpIHtcbiAgICAgIEBpbmNsdWRlIGhlYWRpbmcoXCJoMVwiLCBcImJvbGRcIik7XG4gICAgfVxuICB9XG5cbiAgJl9fc3VidGl0bGUge1xuICAgIEBpbmNsdWRlIGhlYWRpbmcoXCJoM1wiLCBcImJvbGRcIik7XG5cbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0KTtcblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoXCJ0YWJsZXRcIikge1xuICAgICAgQGluY2x1ZGUgaGVhZGluZyhcImgxXCIsIFwiYm9sZFwiKTtcbiAgICB9XG4gIH1cblxuICAmX19idXR0b25zLWdyb3VwIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgZ2FwOiB2YXIoLS1zcGFjaW5nLTEwMCk7XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKFwicGhhYmxldFwiKSB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIH1cbiAgfVxuXG4gICZfX2J1dHRvbiB7XG4gICAgQGluY2x1ZGUgYnV0dG9uO1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1zaXplKFwic3RhdGljXCIpO1xuXG4gICAgJi0tcHJpbWFyeSB7XG4gICAgICBAaW5jbHVkZSBidXR0b24tc3R5bGUoXCJwcmltYXJ5XCIpO1xuICAgIH1cbiAgfVxufVxuIiwiLyoqXG4gKiBMaXN0IGJsb2NrXG4gKiBHcm91cDogQ29tcG9uZW50c1xuICovXG5cbkB1c2UgXCIuLi8wMi10b29scy90eXBvZ3JhcGh5XCIgYXMgKjtcblxuLmMtbGlzdCB7XG4gICR0aGlzOiAmO1xuXG4gICZfX3RpdGxlIHtcbiAgICBAaW5jbHVkZSBoZWFkaW5nKFwiaDJcIik7XG5cbiAgICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtZGFyay1ncmF5KTtcbiAgICBtYXJnaW46IDAgMCB2YXIoLS1zcGFjaW5nLTE1MCk7XG4gIH1cblxuICAmX190ZXh0IHtcbiAgICBAaW5jbHVkZSB0ZXh0O1xuXG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWRhcmstZ3JheSk7XG4gIH1cbn1cbiIsIi8qKlxuICogTWFwXG4gKiBHcm91cDogQ29tcG9uZW50c1xuICovXG5cbkB1c2UgXCIuLi8wMi10b29scy90eXBvZ3JhcGh5XCIgYXMgKjtcbkB1c2UgXCIuLi8wMi10b29scy9icmVha3BvaW50c1wiIGFzICo7XG5AdXNlIFwiLi4vMDItdG9vbHMvYnV0dG9uc1wiIGFzICo7XG5cbi5jLW1hcCB7XG4gICR0aGlzOiAmO1xuXG4gIG1heC13aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgbWluLWhlaWdodDogdmFyKC0tbWluLWhlaWdodC1tYXAtcGFybWFjeSk7XG5cbiAgJl9fY29udGFpbmVyIHtcbiAgICBhc3BlY3QtcmF0aW86IDQgLyAzO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogYXV0bztcbiAgICB6LWluZGV4OiAwO1xuICB9XG5cbiAgJi0tbWFwLWxpc3Qge1xuICAgIG1pbi1oZWlnaHQ6IHZhcigtLW1pbi1oZWlnaHQtbWFwLXBhcm1hY3kpO1xuICAgIG1heC1oZWlnaHQ6IHZhcigtLW1heC1oZWlnaHQtbWFwLWxpc3QpO1xuICAgIG1hcmdpbi1pbmxpbmU6IGF1dG87XG4gIH1cblxuICAmX19nb29nbGUtbWFwIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgYXNwZWN0LXJhdGlvOiAyLjE4MyAvIDE7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbiIsIi8qKlxuICogTmV3c1xuICogR3JvdXA6IENvbXBvbmVudHNcbiAqL1xuXG5AdXNlIFwiLi4vMDItdG9vbHMvYnJlYWtwb2ludHNcIiBhcyAqO1xuQHVzZSBcIi4uLzAyLXRvb2xzL3R5cG9ncmFwaHlcIiBhcyAqO1xuQHVzZSBcIi4uLzAyLXRvb2xzL2J1dHRvbnNcIiBhcyAqO1xuQHVzZSBcIi4uLzAyLXRvb2xzL3RydW5jYXRlXCIgYXMgKjtcblxuLmMtbmV3cyB7XG4gICR0aGlzOiAmO1xuXG4gICZfX2hlYWRlciB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWRhcmstZ3JheSk7XG4gIH1cblxuICAmX190aXRsZSB7XG4gICAgQGluY2x1ZGUgaGVhZGluZyhcImgzXCIpO1xuXG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgJl9fYmFkZ2Uge1xuICAgIEBpbmNsdWRlIGJ1dHRvbjtcbiAgICBAaW5jbHVkZSBidXR0b24tc2l6ZShcInNtXCIpO1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1zdHlsZShcInByaW1hcnlcIik7XG5cbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2luZy0xNTApO1xuICB9XG5cbiAgJl9fZGF0ZSB7XG4gICAgQGluY2x1ZGUgdGV4dChcInNtXCIsIFwibWVkaXVtXCIpO1xuXG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xuICAgIG1hcmdpbi1ibG9jazogdmFyKC0tc3BhY2luZy0wNzUpO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChcImRlc2t0b3Atc21hbGxcIikge1xuICAgICAgbWFyZ2luLWJsb2NrOiAwIHZhcigtLXNwYWNpbmctMDc1KTtcbiAgICB9XG4gIH1cblxuICAmX19saW5rIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBnYXA6IHZhcigtLXNwYWNpbmctMTAwKTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWRhcmstZ3JheSk7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1vcmFuZ2UpO1xuICAgIH1cbiAgfVxuXG4gICZfX2ljb24ge1xuICAgIHdpZHRoOiB2YXIoLS1pY29uLW1zKTtcbiAgICBtYXgtaGVpZ2h0OiB2YXIoLS1pY29uLW1zKTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gIH1cblxuICAmX19jdGEtYnV0dG9uIHtcbiAgICBAaW5jbHVkZSBidXR0b247XG4gICAgQGluY2x1ZGUgYnV0dG9uLXNpemUoXCJsZ1wiKTtcbiAgICBAaW5jbHVkZSBidXR0b24tc3R5bGUoXCJwcmltYXJ5XCIpO1xuXG4gICAgbWFyZ2luLWlubGluZTogYXV0bztcblxuICAgICYtLXdyYXBwZXIge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2luZy0yMDApO1xuICAgIH1cbiAgfVxuXG4gICYtLWNvbG9yZWQtYmFja2dyb3VuZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtbGlnaHQtZ3JheSk7XG4gIH1cblxuICAmLWFydGljbGUge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoXCJkZXNrdG9wLXNtYWxsXCIpIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBnYXA6IHZhcigtLXNwYWNpbmctMTUwKTtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cbiAgICAgICY6bnRoLWNoaWxkKDEpIHtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAgICAgICAjeyR0aGlzfS1hcnRpY2xlIHtcbiAgICAgICAgICAmX19pbWFnZS0td3JhcHBlciB7XG4gICAgICAgICAgICBhc3BlY3QtcmF0aW86IDE2IC8gOTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgICAjeyR0aGlzfS1hcnRpY2xlIHtcbiAgICAgICAgICAmX19pbWFnZS0td3JhcHBlciB7XG4gICAgICAgICAgICBhc3BlY3QtcmF0aW86IDMgLyAyO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICN7JHRoaXN9X190aXRsZSB7XG4gICAgICAgICAgQGluY2x1ZGUgaGVhZGluZyhcImg1XCIsIFwibWVkaXVtXCIpO1xuXG4gICAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICY6bnRoLWNoaWxkKDMpIHtcbiAgICAgICAgI3skdGhpc30tYXJ0aWNsZSB7XG4gICAgICAgICAgJl9faW1hZ2UtLXdyYXBwZXIge1xuICAgICAgICAgICAgYXNwZWN0LXJhdGlvOiA0IC8gNTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAjeyR0aGlzfV9fdGl0bGUge1xuICAgICAgICAgIEBpbmNsdWRlIGhlYWRpbmcoXCJoNVwiLCBcIm1lZGl1bVwiKTtcblxuICAgICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICZfX2ltYWdlIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoXCJkZXNrdG9wLXNtYWxsXCIpIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBpbnNldDogMDtcbiAgICAgIH1cblxuICAgICAgJi0td3JhcHBlciB7XG4gICAgICAgIGZsZXg6IDE7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgbWF4LWhlaWdodDogY2xhbXAoXG4gICAgICAgICAgdmFyKC0tc3BhY2luZy01MDApLFxuICAgICAgICAgIDUwZHZ3LFxuICAgICAgICAgIHZhcigtLW1heC1oZWlnaHQtaW1hZ2UtbmV3cylcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmX19jb250ZW50IHtcbiAgICAgIGZsZXg6IDE7XG4gICAgfVxuXG4gICAgJl9fc3VtbWFyeSB7XG4gICAgICBAaW5jbHVkZSB0ZXh0KFwibWRcIik7XG5cbiAgICAgIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmctMDc1KTtcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ncmF5KTtcbiAgICB9XG4gIH1cblxuICAmLWFydGljbGUtcGFnZSB7XG4gICAgJl9faW1hZ2Uge1xuICAgICAgJi0td3JhcHBlciB7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy0xMDApO1xuICAgICAgfVxuICAgIH1cblxuICAgICZfX3RleHQge1xuICAgICAgQGluY2x1ZGUgdGV4dChcIm1kXCIpO1xuXG4gICAgICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtZ3JheSk7XG4gICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLTIwMCk7XG4gICAgfVxuICB9XG5cbiAgJi1wcmVzcyB7XG4gICAgJl9fc3VtbWFyeSB7XG4gICAgICBAaW5jbHVkZSB0ZXh0KFwibWRcIik7XG4gICAgICBAaW5jbHVkZSB0cnVuY2F0ZS1saW5lcyg1KTtcblxuICAgICAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2luZy0wNzUpO1xuICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWdyYXkpO1xuICAgIH1cbiAgfVxuXG4gICYtY29tcGV0aXRpb25zIHtcbiAgICAmX19saXN0IHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1zcGFjaW5nLTEwMCk7XG4gICAgfVxuXG4gICAgJl9faXRlbSB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tc3BhY2luZy0zMDApO1xuICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy0yMDApO1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWRhcmspO1xuICAgIH1cblxuICAgICZfX3N1bW1hcnkge1xuICAgICAgQGluY2x1ZGUgdGV4dChcIm1kXCIpO1xuICAgICAgQGluY2x1ZGUgdHJ1bmNhdGUtbGluZXMoMyk7XG5cbiAgICAgIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmctMDc1KTtcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ncmF5KTtcbiAgICB9XG4gIH1cbn1cbiIsIkBtaXhpbiB0cnVuY2F0ZS1saW5lcygkbGluZXM6IDUpIHtcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gIC13ZWJraXQtbGluZS1jbGFtcDogJGxpbmVzO1xuICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbn1cbiIsIi8qKlxuICogTmV3c2xldHRlclxuICogR3JvdXA6IENvbXBvbmVudHNcbiAqL1xuXG5AdXNlIFwiLi4vMDItdG9vbHMvdHlwb2dyYXBoeVwiIGFzICo7XG5AdXNlIFwiLi4vMDItdG9vbHMvYnJlYWtwb2ludHNcIiBhcyAqO1xuQHVzZSBcIi4uLzAyLXRvb2xzL2J1dHRvbnNcIiBhcyAqO1xuQHVzZSBcIi4uLzAyLXRvb2xzL2lucHV0XCIgYXMgKjtcbkB1c2UgXCIuLi8wMi10b29scy9wbGFjZWhvbGRlclwiIGFzICo7XG5cbi5jLW5ld3NsZXR0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcbiAgcGFkZGluZy1ibG9jazogdmFyKC0tc3BhY2luZy01MDApO1xuICBjb2xvcjogdmFyKC0tY29sb3ItbGlnaHQpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgJl9fdGl0bGUge1xuICAgIEBpbmNsdWRlIGhlYWRpbmcoXCJoMlwiKTtcblxuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctMTAwKTtcbiAgfVxuXG4gICZfX2Rlc2NyaXB0aW9uIHtcbiAgICBAaW5jbHVkZSB0ZXh0KFwic21cIik7XG5cbiAgICBtYXgtd2lkdGg6IHZhcigtLW1heC13aWR0aC0tNHhzKTtcbiAgICBtYXJnaW4taW5saW5lOiBhdXRvO1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctMjAwKTtcbiAgfVxuXG4gICZfX2Zvcm0ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgZ2FwOiB2YXIoLS1zcGFjaW5nLTI1MCk7XG4gICAgd2lkdGg6IG1heC1jb250ZW50O1xuICAgIG1hcmdpbi1pbmxpbmU6IGF1dG87XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKFwidGFibGV0XCIpIHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICBnYXA6IHZhcigtLXNwYWNpbmctMDc1KTtcbiAgICB9XG5cbiAgICAuZmllbGQtdmFsaWRhdGlvbi1lcnJvciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDEwMCU7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGhlaWdodDogdmFyKC0tc3BhY2luZy0zMDApO1xuICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWRhcmstcmVkKTtcbiAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LWxpbmUtaGVpZ2h0KTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLXJlZC1zZW1pLXRyYW5zcGFyZW50KTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtbCk7XG4gICAgICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLTEwMCk7XG4gICAgICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjaW5nLTA1MCk7XG4gICAgfVxuICB9XG5cbiAgJl9faW5wdXQge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1zaXplKFwic3RhdGljXCIpO1xuICAgIEBpbmNsdWRlIGlucHV0LWRlZmF1bHQoXCJuZXdzbGV0dGVyXCIpO1xuXG4gICAgaW5wdXQge1xuICAgICAgQGluY2x1ZGUgcGxhY2Vob2xkZXIge1xuICAgICAgICBAaW5jbHVkZSB0ZXh0KFwibWRcIiwgXCJib2xkXCIpO1xuXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICZfX2J1dHRvbiB7XG4gICAgQGluY2x1ZGUgYnV0dG9uO1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1zaXplKFwic3RhdGljXCIpO1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1zdHlsZShcInByaW1hcnlcIik7XG4gIH1cbn1cbiIsIi8qKlxuICogTm90IEZvdW5kIFBhZ2UgNDA0XG4gKiBHcm91cDogQ29tcG9uZW50c1xuICovXG5cbkB1c2UgXCIuLi8wMi10b29scy9icmVha3BvaW50c1wiIGFzICo7XG5AdXNlIFwiLi4vMDItdG9vbHMvdHlwb2dyYXBoeVwiIGFzICo7XG5AdXNlIFwiLi4vMDItdG9vbHMvYnV0dG9uc1wiIGFzICo7XG5cbi5jLW5vdC1mb3VuZCB7XG4gICR0aGlzOiAmO1xuXG4gICYtLWxheW91dCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cblxuICAmX190aXRsZSB7XG4gICAgQGluY2x1ZGUgaGVhZGluZyhcImgyXCIpO1xuXG4gICAgZm9udC1zaXplOiA5LjVyZW07XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgfVxuXG4gICZfX3RleHQge1xuICAgIEBpbmNsdWRlIHRleHQoXCJzbVwiKTtcblxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuXG4gICZfX2JhY2stdG8taG9tZSB7XG4gICAgQGluY2x1ZGUgYnV0dG9uO1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1zaXplKFwic3RhdGljXCIpO1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1zdHlsZShcInByaW1hcnlcIik7XG5cbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjaW5nLTI1MCk7XG4gIH1cbn1cbiIsIi8qKlxuICogUGFnZSBCYW5uZXJcbiAqIEdyb3VwOiBDb21wb25lbnRzXG4gKi9cblxuQHVzZSBcIi4uLzAyLXRvb2xzL3R5cG9ncmFwaHlcIiBhcyAqO1xuQHVzZSBcIi4uLzAyLXRvb2xzL2JyZWFrcG9pbnRzXCIgYXMgKjtcblxuLmMtcGFnZS1iYW5uZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ibHVlKTtcbiAgcGFkZGluZy1ibG9jazogdmFyKC0tc3BhY2luZy0yMDApO1xuICBjb2xvcjogdmFyKC0tY29sb3ItbGlnaHQpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJvcmRlci1ib3R0b206IDVweCBzb2xpZCB2YXIoLS1jb2xvci1icmFuZC1vcmFuZ2UpO1xuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoXCJ0YWJsZXRcIikge1xuICAgIHBhZGRpbmctYmxvY2s6IHZhcigtLXNwYWNpbmctNDAwKTtcbiAgfVxuXG4gICZfX3RpdGxlIHtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLTE1MCk7XG4gIH1cbn1cbiIsIi8qKlxuICogUERGIFZpZXdlclxuICogR3JvdXA6IENvbXBvbmVudHNcbiAqL1xuXG5AdXNlIFwiLi4vMDItdG9vbHMvYnJlYWtwb2ludHNcIiBhcyAqO1xuQHVzZSBcIi4uLzAyLXRvb2xzL3R5cG9ncmFwaHlcIiBhcyAqO1xuQHVzZSBcIi4uLzAyLXRvb2xzL2J1dHRvbnNcIiBhcyAqO1xuXG4uYy1wZGYtdmlld2VyIHtcbiAgY2FudmFzIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tc3BhY2luZy0yMDApO1xuICAgIGJvcmRlcjogNHB4IHNvbGlkIHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xuICAgIG1hcmdpbi1ibG9jazogdmFyKC0tc3BhY2luZy0yMDApO1xuICB9XG5cbiAgJl9fbmF2IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgbWF4LXdpZHRoOiA5MDBweDtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLTIwMCk7XG4gIH1cblxuICAmX19uYXYtdGV4dCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbWVkaXVtKTtcbiAgICBtYXJnaW4taW5saW5lOiB2YXIoLS1zcGFjaW5nLTE1MCk7XG4gIH1cblxuICAmX19uYXYtYnV0dG9uIHtcbiAgICBAaW5jbHVkZSBidXR0b247XG4gICAgQGluY2x1ZGUgYnV0dG9uLXN0eWxlKFwic2Vjb25kYXJ5XCIpO1xuICB9XG59XG4iLCIvKipcbiAqIFF1b3RlXG4gKiBHcm91cDogQ29tcG9uZW50c1xuICovXG5cbkB1c2UgXCIuLi8wMi10b29scy90eXBvZ3JhcGh5XCIgYXMgKjtcbkB1c2UgXCIuLi8wMi10b29scy9icmVha3BvaW50c1wiIGFzICo7XG5cbi5jLXF1b3RlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1saWdodCk7XG5cbiAgJi0tbGF5b3V0IHtcbiAgICBtYXgtd2lkdGg6IDQ3LjVyZW07XG4gICAgbWFyZ2luLWlubGluZTogYXV0bztcbiAgfVxuXG4gICZfX3RleHQge1xuICAgIEBpbmNsdWRlIGhlYWRpbmcoXCJoMlwiKTtcblxuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICBib3JkZXItbGVmdDogNHB4IHNvbGlkIHZhcigtLWNvbG9yLWJyYW5kLW9yYW5nZSk7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1zcGFjaW5nLTE1MCk7XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKFwidGFibGV0XCIpIHtcbiAgICAgIGZvbnQtc2l6ZTogM3JlbTtcbiAgICB9XG4gIH1cblxuICAmX19hdXRob3Ige1xuICAgIEBpbmNsdWRlIHRleHQoXCJtZFwiKTtcblxuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmctMDUwKTtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgY29udGVudDogXCLigJQgXCI7XG4gICAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXNwYWNpbmctMDI1KTtcbiAgICB9XG4gIH1cbn1cbiIsIi8qKlxuICogU2lkZWJhclxuICogR3JvdXA6IENvbXBvbmVudHNcbiAqL1xuXG5AdXNlIFwiLi4vMDItdG9vbHMvdHlwb2dyYXBoeVwiIGFzICo7XG5cbi5jLXNpZGViYXIge1xuICAkdGhpczogJjtcblxuICAmX19saXN0IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgZ2FwOiB2YXIoLS1zcGFjaW5nLTE1MCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtYmx1ZSk7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1tKTtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItbGlnaHQpO1xuICAgIHBhZGRpbmctYmxvY2s6IHZhcigtLXNwYWNpbmctMTI1KTtcbiAgICBwYWRkaW5nLWlubGluZTogdmFyKC0tc3BhY2luZy0xNTApO1xuXG4gICAgJi1pdGVtIHtcbiAgICAgIEBpbmNsdWRlIHRleHQoXCJtZFwiKTtcblxuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLW9yYW5nZSk7XG4gICAgICB9XG5cbiAgICAgICZbYXJpYS1jdXJyZW50PVwicGFnZVwiXSB7XG4gICAgICAgIGJvcmRlci1sZWZ0OiAzcHggc29saWQgdmFyKC0tY29sb3ItYnJhbmQtb3JhbmdlKTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1zcGFjaW5nLTA1MCk7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ib2xkKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLS1ib3hlcyB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIGdhcDogdmFyKC0tc3BhY2luZy0xNTApO1xuICAgIH1cbiAgfVxuXG4gICZfX3RpdGxlIHtcbiAgICBAaW5jbHVkZSBoZWFkaW5nKFwiaDJcIik7XG5cbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLTE1MCk7XG4gICAgcGFkZGluZy1ib3R0b206IHZhcigtLXNwYWNpbmctMDI1KTtcbiAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgdmFyKC0tY29sb3ItYnJhbmQtZGFyay1ncmF5KTtcbiAgfVxufVxuIiwiLyoqXG4gKiBUZXh0XG4gKiBHcm91cDogQ29tcG9uZW50c1xuICovXG5cbkB1c2UgXCIuLi8wMi10b29scy90eXBvZ3JhcGh5XCIgYXMgKjtcblxuLmMtdGV4dCB7XG4gICR0aGlzOiAmO1xuXG4gICZfX3RpdGxlIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtZGFyay1ncmF5KTtcbiAgfVxuXG4gICZfX2NvbnRlbnQge1xuICAgIEBpbmNsdWRlIHRleHQoXCJtZFwiKTtcblxuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1ncmF5KTtcblxuICAgIGEge1xuICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWJsdWUpO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgIH1cbiAgfVxufVxuIiwiLyoqXG4gKiBUaWNrZXQgTGlua1xuICogR3JvdXA6IENvbXBvbmVudHNcbiAqL1xuXG5AdXNlIFwiLi4vMDItdG9vbHMvYnV0dG9uc1wiIGFzICo7XG5cbi5jLXRpY2tldC1saW5rIHtcbiAgJHRoaXM6ICY7XG5cbiAgJi0tbGF5b3V0IHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIHBsYWNlLWl0ZW1zOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtbGlnaHQtZ3JheSk7XG4gICAgcGFkZGluZy1ibG9jazogdmFyKC0tc3BhY2luZy00MDApO1xuICAgIHBhZGRpbmctaW5saW5lOiB2YXIoLS1zcGFjaW5nLTEwMCk7XG4gIH1cblxuICAmX19idXR0b24tbGluayB7XG4gICAgQGluY2x1ZGUgYnV0dG9uO1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1zaXplKFwibGdcIik7XG4gICAgQGluY2x1ZGUgYnV0dG9uLXN0eWxlKFwicHJpbWFyeVwiKTtcbiAgfVxufVxuIiwiLyoqXG4gKiBUcmVlXG4gKiBHcm91cDogQ29tcG9uZW50c1xuICovXG5cbkB1c2UgXCIuLi8wMi10b29scy90eXBvZ3JhcGh5XCIgYXMgKjtcbkB1c2UgXCIuLi8wMi10b29scy9icmVha3BvaW50c1wiIGFzICo7XG5AdXNlIFwiLi4vMDItdG9vbHMvYnV0dG9uc1wiIGFzICo7XG5cbi5jLXRyZWUge1xuICAkdGhpczogJjtcblxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgJl9fbGlzdCB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1zcGFjaW5nLTEwMCk7XG4gICAgbWFyZ2luLWxlZnQ6IHZhcigtLXNwYWNpbmctMDUwKTtcbiAgICBtYXJnaW4tYmxvY2s6IHZhcigtLXNwYWNpbmctMTAwKTtcblxuICAgICY6bm90KDpudGgtY2hpbGQoMSkpIHtcbiAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgdmFyKC0tY29sb3ItYnJhbmQtZGFyay1ncmF5KTtcbiAgICB9XG5cbiAgICAmLWl0ZW0ge1xuICAgICAgQGluY2x1ZGUgdGV4dChcIm1kXCIpO1xuXG4gICAgICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtZGFyay1ncmF5KTtcbiAgICAgIG1hcmdpbi1ibG9jazogdmFyKC0tc3BhY2luZy0xMDApO1xuICAgIH1cblxuICAgICZfX2ljb24tZmlsZSxcbiAgICAmX19pY29uLWZvbGRlciB7XG4gICAgICB3aWR0aDogdmFyKC0taWNvbi1tcyk7XG4gICAgICBtYXgtaGVpZ2h0OiB2YXIoLS1pY29uLW1zKTtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLTA1MCk7XG4gICAgICBmbGV4OiAxIDAgYXV0bztcbiAgICB9XG5cbiAgICAuYnV0dG9uLWVkaXQtaXRlbS0td3JhcHBlciB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXJnaW4tbGVmdDogdmFyKC0tc3BhY2luZy0wNTApO1xuICAgIH1cbiAgfVxuXG4gICZfX3NpZGViYXIge1xuICAgIGZsZXg6IG5vbmU7XG4gIH1cblxuICAmX19idXR0b24ge1xuICAgIEBpbmNsdWRlIGJ1dHRvbjtcblxuICAgIHBhZGRpbmc6IDA7XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLW9yYW5nZSk7XG4gICAgfVxuICB9XG5cbiAgLmMtc2lkZWJhciB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChcImRlc2t0b3Atc21hbGxcIikge1xuICAgICAgcG9zaXRpb246IHN0aWNreTtcbiAgICAgIHRvcDogNSU7XG4gICAgfVxuICB9XG59XG4iLCIvKipcbiAqIE1haW5cbiAqIEdyb3VwOiBVdGlsaXRpZXNcbiAqL1xuXG5AZm9yd2FyZCBcImExMXlcIjtcbkBmb3J3YXJkIFwiYmFja2dyb3VuZC1jb2xvclwiO1xuQGZvcndhcmQgXCJib3JkZXJcIjtcbkBmb3J3YXJkIFwiY2xlYXJmaXhcIjtcbkBmb3J3YXJkIFwiY29sb3JcIjtcbkBmb3J3YXJkIFwiY29va2llcy1jb2xvcnNcIjtcbkBmb3J3YXJkIFwiZGlzcGxheVwiO1xuQGZvcndhcmQgXCJpY29uXCI7XG5AZm9yd2FyZCBcImxvYWRpbmdcIjtcbkBmb3J3YXJkIFwibWFyZ2luXCI7XG5AZm9yd2FyZCBcIm9wYWNpdHlcIjtcbkBmb3J3YXJkIFwicGFkZGluZ1wiO1xuQGZvcndhcmQgXCJzaXplXCI7XG5AZm9yd2FyZCBcInNwYWNpbmdcIjtcbkBmb3J3YXJkIFwidHlwb2dyYXBoeVwiO1xuQGZvcndhcmQgXCJkZWJ1Z1wiO1xuIiwiLyoqXG4gKiBBMTF5XG4gKiBHcm91cDogVXRpbGl0aWVzXG4gKi9cblxuLyoqXG4gKiBIaWRlIG9ubHkgdmlzdWFsbHksIGJ1dCBoYXZlIGl0IGF2YWlsYWJsZSBmb3Igc2NyZWVuIHJlYWRlcnM6XG4gKiBodHRwOi8vc25vb2suY2EvYXJjaGl2ZXMvaHRtbF9hbmRfY3NzL2hpZGluZy1jb250ZW50LWZvci1hY2Nlc3NpYmlsaXR5XG4gKi9cblxuQHVzZSBcIi4uLzAyLXRvb2xzL2hpZGRlblwiIGFzICo7XG5AdXNlIFwiLi4vMDItdG9vbHMvYTExeVwiIGFzICo7XG5cbi51LXNyLFxuLnNjcmVlbi1yZWFkZXItdGV4dCB7XG4gIEBpbmNsdWRlIGhpZGRlbi12aXN1YWxseTtcbn1cblxuLnUtc2tpcC1saW5rIHtcbiAgQGluY2x1ZGUgc2tpcC1saW5rO1xufVxuXG4ubW9iaWxlLW1lbnUtaXMtb3BlbiB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGhlaWdodDogMTAwJTtcblxuICAmOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kOiByZ2IoMCAwIDAgLyA1MCUpO1xuICAgIHotaW5kZXg6IDk5O1xuICAgIGJhY2tkcm9wLWZpbHRlcjogYmx1cih2YXIoLS1zcGFjaW5nLTA1MCkpO1xuICB9XG59XG4iLCIvKipcbiAqIEJhY2tncm91bmQgQ29sb3JcbiAqIEdyb3VwOiBVdGlsaXRpZXNcbiAqL1xuXG5AdXNlIFwiLi4vMDEtc2V0dGluZ3MvdmFyaWFibGVzXCIgYXMgKjtcblxuLnUtYmctY29sb3Ige1xuICBAZWFjaCAkbmFtZSwgJGNvbG9yIGluICRjb2xvcnMge1xuICAgICYtI3skbmFtZX0ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItI3skbmFtZX0pO1xuICAgIH1cbiAgfVxufVxuIiwiLyoqXG4gKiBCYWNrZ3JvdW5kXG4gKiBHcm91cDogVXRpbGl0aWVzXG4gKi9cblxuLnUtYnItdCB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCBjdXJyZW50Y29sb3I7XG59XG5cbi51LWJyLWIge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgY3VycmVudGNvbG9yO1xufVxuXG4udS1ici1sIHtcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCBjdXJyZW50Y29sb3I7XG59XG5cbi51LWJyLXIge1xuICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCBjdXJyZW50Y29sb3I7XG59XG5cbi51LWJyYy1ncmF5LTUwIHtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1uZXV0cmFsLTUwKTtcbn1cbiIsIi8qKlxuICogQ2xlYXJmaXhcbiAqIEdyb3VwOiBVdGlsaXRpZXNcbiAqL1xuXG5AdXNlIFwiLi4vMDItdG9vbHMvY2xlYXJmaXhcIiBhcyAqO1xuXG4udS1jbGVhcmZpeCB7XG4gIEBpbmNsdWRlIGNsZWFyZml4O1xufVxuIiwiLyoqXG4gKiBDb2xvclxuICogR3JvdXA6IFV0aWxpdGllc1xuICovXG5cbkB1c2UgXCIuLi8wMS1zZXR0aW5ncy92YXJpYWJsZXNcIiBhcyAqO1xuXG4udS1jb2xvciB7XG4gIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGNvbG9ycyB7XG4gICAgJi0jeyRuYW1lfSB7XG4gICAgICBjb2xvcjogdmFyKC0tY29sb3ItI3skbmFtZX0pO1xuICAgIH1cbiAgfVxufVxuIiwiLyoqXG4gKiBDb29raWVzIENvbG9yc1xuICogR3JvdXA6IFV0aWxpdGllc1xuICovXG5cbkB1c2UgXCJzYXNzOnN0cmluZ1wiO1xuQHVzZSBcIi4uLzAxLXNldHRpbmdzL3ZhcmlhYmxlc1wiIGFzICo7XG5cbkBlYWNoICRjb2xvciBpbiAkY29va2llcy1jb2xvcnMge1xuICAuYnRuLWJnY29sb3ItI3skY29sb3J9IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBzdHJpbmcudW5xdW90ZShcIiNcIiArICRjb2xvcik7XG4gIH1cblxuICAuYnRuLXRleHRjb2xvci0jeyRjb2xvcn0ge1xuICAgIGNvbG9yOiBzdHJpbmcudW5xdW90ZShcIiNcIiArICRjb2xvcik7XG4gIH1cblxuICAuY29va2llcy1iZ2NvbG9yLSN7JGNvbG9yfSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogc3RyaW5nLnVucXVvdGUoXCIjXCIgKyAkY29sb3IpO1xuICB9XG59XG4iLCIvKipcbiAqIERpc3BsYXlcbiAqIEdyb3VwOiBVdGlsaXRpZXNcbiAqL1xuXG4udS1oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi51LWQtZmxleCB7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG5cbi51LWQtYmxvY2sge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLnUtZC1pbmxpbmUtYmxvY2sge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi51LXBvcy1yZWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi51LW92ZXJmbG93LWgge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uaXMtdW5pbml0aWFsaXplZCB7XG4gIG9wYWNpdHk6IDA7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuIiwiLyoqXG4gKiBJY29uXG4gKiBHcm91cDogVXRpbGl0aWVzXG4gKi9cblxuW2NsYXNzKj1cInUtaWNvblwiXSB7XG4gIHdpZHRoOiBhdXRvO1xufVxuXG4vKiBpY29uIHNpemUgKi9cbi51LWljb24teHMge1xuICBmb250LXNpemU6IHZhcigtLWljb24teHMpO1xuICBoZWlnaHQ6IHZhcigtLWljb24teHMpO1xuICBtaW4td2lkdGg6IHZhcigtLWljb24teHMpO1xufVxuXG4udS1pY29uLXNtIHtcbiAgZm9udC1zaXplOiB2YXIoLS1pY29uLXNtKTtcbiAgaGVpZ2h0OiB2YXIoLS1pY29uLXNtKTtcbiAgbWluLXdpZHRoOiB2YXIoLS1pY29uLXNtKTtcbn1cblxuLnUtaWNvbi1tZCB7XG4gIGZvbnQtc2l6ZTogdmFyKC0taWNvbi1tZCk7XG4gIGhlaWdodDogdmFyKC0taWNvbi1tZCk7XG4gIG1pbi13aWR0aDogdmFyKC0taWNvbi1tZCk7XG59XG5cbi51LWljb24tbGcge1xuICBmb250LXNpemU6IHZhcigtLWljb24tbGcpO1xuICBoZWlnaHQ6IHZhcigtLWljb24tbGcpO1xuICBtaW4td2lkdGg6IHZhcigtLWljb24tbGcpO1xufVxuXG4udS1pY29uLXhsIHtcbiAgZm9udC1zaXplOiB2YXIoLS1pY29uLXhsKTtcbiAgaGVpZ2h0OiB2YXIoLS1pY29uLXhsKTtcbiAgbWluLXdpZHRoOiB2YXIoLS1pY29uLXhsKTtcbn1cblxuLnUtaWNvbi0yeGwge1xuICBmb250LXNpemU6IHZhcigtLWljb24tMnhsKTtcbiAgaGVpZ2h0OiB2YXIoLS1pY29uLTJ4bCk7XG4gIG1pbi13aWR0aDogdmFyKC0taWNvbi0yeGwpO1xufVxuXG4udS1pY29uLTN4bCB7XG4gIGZvbnQtc2l6ZTogdmFyKC0taWNvbi0zeGwpO1xuICBoZWlnaHQ6IHZhcigtLWljb24tM3hsKTtcbiAgbWluLXdpZHRoOiB2YXIoLS1pY29uLTN4bCk7XG59XG5cbi51LWljb24tNHhsIHtcbiAgZm9udC1zaXplOiB2YXIoLS1pY29uLTR4bCk7XG4gIGhlaWdodDogdmFyKC0taWNvbi00eGwpO1xuICBtaW4td2lkdGg6IHZhcigtLWljb24tNHhsKTtcbn1cblxuLnUtaWNvbi0tcm91bmRlZCB7XG4gIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4iLCIvKipcbiAqIExvYWRpbmdcbiAqIEdyb3VwOiBVdGlsaXRpZXNcbiAqL1xuXG4udS1pcy1sb2FkaW5nIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvcGFjaXR5OiAwLjc7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0O1xufVxuXG4udS1pcy1sb2FkaW5nOjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgd2lkdGg6IDMwcHg7XG4gIGhlaWdodDogMzBweDtcbiAgbWFyZ2luOiAtMTVweCAwIDAgLTE1cHg7XG4gIGJvcmRlcjogM3B4IHNvbGlkIHJnYig2NSAxMTkgMTc1IC8gMzAlKTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBib3JkZXItdG9wLWNvbG9yOiAjNDE3N2FmO1xuICBhbmltYXRpb246IHNwaW4gdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbi1zbG93KSBlYXNlLWluLW91dCBpbmZpbml0ZTtcbn1cbiIsIi8qKlxuICogTWFyZ2luXG4gKiBHcm91cDogVXRpbGl0aWVzXG4gKi9cblxuLyogWmVybyBtYXJnaW5zICovXG4udS1tLTAge1xuICBtYXJnaW46IDA7XG59XG5cbi51LW1iLTAge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4udS1tdC0wIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cblxuLnUtbWwtMCB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuXG4udS1tci0wIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xufVxuXG4vKiBBdXRvIG1hcmdpbnMgKi9cbi51LW1sLWF1dG8ge1xuICBtYXJnaW4tbGVmdDogYXV0bztcbn1cblxuLnUtbXItYXV0byB7XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbn1cblxuLnUtbXQtYXV0byB7XG4gIG1hcmdpbi10b3A6IGF1dG87XG59XG5cbi51LW1iLWF1dG8ge1xuICBtYXJnaW4tYm90dG9tOiBhdXRvO1xufVxuXG4vKiBWZXJ0aWNhbCBtYXJnaW5zICovXG4udS1tYmwtMTAwIHtcbiAgbWFyZ2luLWJsb2NrOiB2YXIoLS1zcGFjaW5nLTEwMCk7XG59XG5cbi51LW10LFxuLnUtbXQtbWQge1xuICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjZS1tZCk7XG59XG5cbi51LW10LXhzIHtcbiAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2UteHMpO1xufVxuXG4udS1tdC1zbSB7XG4gIG1hcmdpbi10b3A6IHZhcigtLXNwYWNlLXNtKTtcbn1cblxuLnUtbXQtbGcge1xuICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjZS1sZyk7XG59XG5cbi51LW10LXhsIHtcbiAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2UteGwpO1xufVxuXG4udS1tdC0yeGwge1xuICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjZS0yeGwpO1xufVxuXG4udS1tdC0zeGwge1xuICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjZS0zeGwpO1xufVxuXG4udS1tdC00eGwge1xuICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjZS00eGwpO1xufVxuXG4udS1tdC0yMDAge1xuICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjaW5nLTIwMCk7XG59XG5cbi51LW1iLTIwMCB7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctMjAwKTtcbn1cblxuLnUtbWIsXG4udS1tYi1tZCB7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNlLW1kKTtcbn1cblxuLnUtbWIteHMge1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjZS14cyk7XG59XG5cbi51LW1iLXNtIHtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2Utc20pO1xufVxuXG4udS1tYi1sZyB7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNlLWxnKTtcbn1cblxuLnUtbWIteGwge1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjZS14bCk7XG59XG5cbi51LW1iLTJ4bCB7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNlLTJ4bCk7XG59XG5cbi51LW1iLTN4bCB7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNlLTN4bCk7XG59XG5cbi51LW1iLTR4bCB7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNlLTR4bCk7XG59XG5cbi8qIEhvcml6b250YWwgbWFyZ2lucyAqL1xuLnUtbWwsXG4udS1tbC1tZCB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoLS1zcGFjZS1tZCk7XG59XG5cbi51LW1sLXhzIHtcbiAgbWFyZ2luLWxlZnQ6IHZhcigtLXNwYWNlLXhzKTtcbn1cblxuLnUtbWwtc20ge1xuICBtYXJnaW4tbGVmdDogdmFyKC0tc3BhY2Utc20pO1xufVxuXG4udS1tbC1sZyB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoLS1zcGFjZS1sZyk7XG59XG5cbi51LW1sLXhsIHtcbiAgbWFyZ2luLWxlZnQ6IHZhcigtLXNwYWNlLXhsKTtcbn1cblxuLnUtbWwtMnhsIHtcbiAgbWFyZ2luLWxlZnQ6IHZhcigtLXNwYWNlLTJ4bCk7XG59XG5cbi51LW1sLTN4bCB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoLS1zcGFjZS0zeGwpO1xufVxuXG4udS1tbC00eGwge1xuICBtYXJnaW4tbGVmdDogdmFyKC0tc3BhY2UtNHhsKTtcbn1cblxuLnUtbXIsXG4udS1tci1tZCB7XG4gIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2UtbWQpO1xufVxuXG4udS1tci14cyB7XG4gIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2UteHMpO1xufVxuXG4udS1tci1zbSB7XG4gIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2Utc20pO1xufVxuXG4udS1tci1sZyB7XG4gIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2UtbGcpO1xufVxuXG4udS1tci14bCB7XG4gIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2UteGwpO1xufVxuXG4udS1tci0yeGwge1xuICBtYXJnaW4tcmlnaHQ6IHZhcigtLXNwYWNlLTJ4bCk7XG59XG5cbi51LW1yLTN4bCB7XG4gIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2UtM3hsKTtcbn1cblxuLnUtbXItNHhsIHtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjZS00eGwpO1xufVxuIiwiLyoqXG4gKiBPcGFjaXR5XG4gKiBHcm91cDogVXRpbGl0aWVzXG4gKi9cblxuLnUtb3BhY2l0eS01IHtcbiAgLS1vcGFjaXR5OiAwLjA1O1xufVxuXG4udS1vcGFjaXR5LTEwIHtcbiAgLS1vcGFjaXR5OiAwLjE7XG59XG5cbi51LW9wYWNpdHktMTUge1xuICAtLW9wYWNpdHk6IDAuMTU7XG59XG5cbi51LW9wYWNpdHktMjAge1xuICAtLW9wYWNpdHk6IDAuMjtcbn1cblxuLnUtb3BhY2l0eS0yNSB7XG4gIC0tb3BhY2l0eTogMC4yNTtcbn1cblxuLnUtb3BhY2l0eS0zMCB7XG4gIC0tb3BhY2l0eTogMC4zO1xufVxuXG4udS1vcGFjaXR5LTM1IHtcbiAgLS1vcGFjaXR5OiAwLjM1O1xufVxuXG4udS1vcGFjaXR5LTQwIHtcbiAgLS1vcGFjaXR5OiAwLjQ7XG59XG5cbi51LW9wYWNpdHktNDUge1xuICAtLW9wYWNpdHk6IDAuNDU7XG59XG5cbi51LW9wYWNpdHktNTAge1xuICAtLW9wYWNpdHk6IDAuNTtcbn1cblxuLnUtb3BhY2l0eS01NSB7XG4gIC0tb3BhY2l0eTogMC41NTtcbn1cblxuLnUtb3BhY2l0eS02MCB7XG4gIC0tb3BhY2l0eTogMC42O1xufVxuXG4udS1vcGFjaXR5LTY1IHtcbiAgLS1vcGFjaXR5OiAwLjY1O1xufVxuXG4udS1vcGFjaXR5LTcwIHtcbiAgLS1vcGFjaXR5OiAwLjc7XG59XG5cbi51LW9wYWNpdHktNzUge1xuICAtLW9wYWNpdHk6IDAuNzU7XG59XG5cbi51LW9wYWNpdHktODAge1xuICAtLW9wYWNpdHk6IDAuODtcbn1cblxuLnUtb3BhY2l0eS04NSB7XG4gIC0tb3BhY2l0eTogMC44NTtcbn1cblxuLnUtb3BhY2l0eS05MCB7XG4gIC0tb3BhY2l0eTogMC45O1xufVxuXG4udS1vcGFjaXR5LTk1IHtcbiAgLS1vcGFjaXR5OiAwLjk1O1xufVxuXG4udS1vcGFjaXR5LTEwMCB7XG4gIC0tb3BhY2l0eTogMTtcbn1cbiIsIi8qKlxuICogUGFkZGluZ1xuICogR3JvdXA6IFV0aWxpdGllc1xuICovXG5cbi8qIFplcm8gcGFkZGluZ3MgKi9cbi51LXAtMCB7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi51LXB0LTAge1xuICBwYWRkaW5nLXRvcDogMDtcbn1cblxuLnUtcGItMCB7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xufVxuXG4udS1wbC0wIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xufVxuXG4udS1wci0wIHtcbiAgcGFkZGluZy1yaWdodDogMDtcbn1cblxuLyogVmVydGljYWwgcGFkZGluZ3MgKi9cbi51LXB0LFxuLnUtcHQtbWQge1xuICBwYWRkaW5nLXRvcDogdmFyKC0tc3BhY2UtbWQpO1xufVxuXG4udS1wdC14cyB7XG4gIHBhZGRpbmctdG9wOiB2YXIoLS1zcGFjZS14cyk7XG59XG5cbi51LXB0LXNtIHtcbiAgcGFkZGluZy10b3A6IHZhcigtLXNwYWNlLXNtKTtcbn1cblxuLnUtcHQtbGcge1xuICBwYWRkaW5nLXRvcDogdmFyKC0tc3BhY2UtbGcpO1xufVxuXG4udS1wdC14bCB7XG4gIHBhZGRpbmctdG9wOiB2YXIoLS1zcGFjZS14bCk7XG59XG5cbi51LXB0LTJ4bCB7XG4gIHBhZGRpbmctdG9wOiB2YXIoLS1zcGFjZS0yeGwpO1xufVxuXG4udS1wYixcbi51LXBiLW1kIHtcbiAgcGFkZGluZy1ib3R0b206IHZhcigtLXNwYWNlLW1kKTtcbn1cblxuLnUtcGIteHMge1xuICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tc3BhY2UteHMpO1xufVxuXG4udS1wYi1zbSB7XG4gIHBhZGRpbmctYm90dG9tOiB2YXIoLS1zcGFjZS1zbSk7XG59XG5cbi51LXBiLWxnIHtcbiAgcGFkZGluZy1ib3R0b206IHZhcigtLXNwYWNlLWxnKTtcbn1cblxuLnUtcGIteGwge1xuICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tc3BhY2UteGwpO1xufVxuXG4udS1wYi0yeGwge1xuICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tc3BhY2UtMnhsKTtcbn1cblxuLyogSG9yaXpvbnRhbCBwYWRkaW5ncyAqL1xuLnUtcGwsXG4udS1wbC1tZCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKC0tc3BhY2UtbWQpO1xufVxuXG4udS1wbC14cyB7XG4gIHBhZGRpbmctbGVmdDogdmFyKC0tc3BhY2UteHMpO1xufVxuXG4udS1wbC1zbSB7XG4gIHBhZGRpbmctbGVmdDogdmFyKC0tc3BhY2Utc20pO1xufVxuXG4udS1wbC1sZyB7XG4gIHBhZGRpbmctbGVmdDogdmFyKC0tc3BhY2UtbGcpO1xufVxuXG4udS1wbC14bCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKC0tc3BhY2UteGwpO1xufVxuXG4udS1wbC0yeGwge1xuICBwYWRkaW5nLWxlZnQ6IHZhcigtLXNwYWNlLTJ4bCk7XG59XG5cbi51LXByLFxuLnUtcHItbWQge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1zcGFjZS1tZCk7XG59XG5cbi51LXByLXhzIHtcbiAgcGFkZGluZy1yaWdodDogdmFyKC0tc3BhY2UteHMpO1xufVxuXG4udS1wci1zbSB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhcigtLXNwYWNlLXNtKTtcbn1cblxuLnUtcHItbGcge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1zcGFjZS1sZyk7XG59XG5cbi51LXByLXhsIHtcbiAgcGFkZGluZy1yaWdodDogdmFyKC0tc3BhY2UteGwpO1xufVxuXG4udS1wci0yeGwge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1zcGFjZS0yeGwpO1xufVxuIiwiLypcbiAqIFNpemVcbiAqIEdyb3VwOiBVdGlsaXRpZXNcbiAqL1xuXG4vKiBXaWR0aCBVdGlsaXRpZXMgKi9cbi51LW1pbi13MCB7XG4gIG1pbi13aWR0aDogMDtcbn1cblxuLnUtbWF4LXcwIHtcbiAgbWF4LXdpZHRoOiAwO1xufVxuXG4udS13MTAwIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi8qIEhlaWdodCBVdGlsaXRpZXMgKi9cbi51LW1pbi1oMCB7XG4gIG1pbi1oZWlnaHQ6IDA7XG59XG5cbi51LW1heC1oMCB7XG4gIG1heC1oZWlnaHQ6IDA7XG59XG5cbi51LWgxMDAge1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbi51LWZ1bGwtd2lkdGgge1xuICBtaW4td2lkdGg6IDEwMHZ3O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi1sZWZ0OiAtNTB2dztcbiAgbGVmdDogNTAlO1xufVxuIiwiLyoqXG4gKiBTcGFjZSBYXG4gKiBHcm91cDogVXRpbGl0aWVzXG4gKi9cblxuW2NsYXNzKj1cInUtc3BhY2UteFwiXSB7XG4gID4gKiB7XG4gICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcblxuICAgICsgKiB7XG4gICAgICBtYXJnaW4tbGVmdDogdmFyKC0tc3BhY2UtbWQpICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG5cbmJvZHkge1xuICAudS1zcGFjZS14LXNtID4gKiArICoge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1zcGFjZS1zbSkgIWltcG9ydGFudDtcbiAgfVxuXG4gIC51LXNwYWNlLXgtbGcgPiAqICsgKiB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhcigtLXNwYWNlLWxnKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnUtc3BhY2UteC14bCA+ICogKyAqIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKC0tc3BhY2UteGwpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudS1zcGFjZS14LTJ4bCA+ICogKyAqIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKC0tc3BhY2UtMnhsKSAhaW1wb3J0YW50O1xuICB9XG59XG4iLCIvKipcbiAqIFR5cG9ncmFwaHlcbiAqXG4gKiBHcm91cDogVXRpbGl0aWVzXG4gKi9cblxuQHVzZSBcIi4uLzAyLXRvb2xzL3R5cG9ncmFwaHlcIiBhcyAqO1xuXG4udS1mb250LXByaW1hcnkge1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1wcmltYXJ5KSAhaW1wb3J0YW50O1xuXG4gICoge1xuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LXByaW1hcnkpICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLyogRm9udCBUeXBlcyAqL1xuLnUtZm9udC1oZWFkbGluZSB7XG4gIEBpbmNsdWRlIGhlYWRpbmcoXCJoZWFkbGluZVwiKTtcbn1cblxuLnUtZm9udC1oMSB7XG4gIEBpbmNsdWRlIGhlYWRpbmcoXCJoMVwiKTtcbn1cblxuLnUtZm9udC1oMiB7XG4gIEBpbmNsdWRlIGhlYWRpbmcoXCJoMlwiKTtcbn1cblxuLnUtZm9udC1oMyB7XG4gIEBpbmNsdWRlIGhlYWRpbmcoXCJoM1wiKTtcbn1cblxuLnUtZm9udC1oNCB7XG4gIEBpbmNsdWRlIGhlYWRpbmcoXCJoNFwiKTtcbn1cblxuLnUtZm9udC1oNSB7XG4gIEBpbmNsdWRlIGhlYWRpbmcoXCJoNVwiKTtcbn1cblxuLnUtZm9udC1oNiB7XG4gIEBpbmNsdWRlIGhlYWRpbmcoXCJoNlwiKTtcbn1cblxuLnUtZm9udC1wIHtcbiAgQGluY2x1ZGUgdGV4dDtcbn1cblxuLnUtZm9udC14cyB7XG4gIEBpbmNsdWRlIHRleHQoXCJ4c1wiKTtcbn1cblxuLnUtZm9udC1zbSB7XG4gIEBpbmNsdWRlIHRleHQoXCJzbVwiKTtcbn1cblxuLnUtZm9udC1tZCB7XG4gIEBpbmNsdWRlIHRleHQoXCJtZFwiKTtcbn1cblxuLnUtZm9udC1sZyB7XG4gIEBpbmNsdWRlIHRleHQoXCJsZ1wiKTtcbn1cblxuLnUtZm9udC14bCB7XG4gIEBpbmNsdWRlIHRleHQoXCJ4bFwiKTtcbn1cblxuLyogRm9udCBTaXplcyAqL1xuLnUtZnotaGVhZGxpbmUge1xuICBAaW5jbHVkZSBoZWFkaW5nKFwiaGVhZGxpbmVcIik7XG59XG5cbi51LWZ6LWgxIHtcbiAgQGluY2x1ZGUgaGVhZGluZyhcImgxXCIpO1xufVxuXG4udS1mei1oMiB7XG4gIEBpbmNsdWRlIGhlYWRpbmcoXCJoMlwiKTtcbn1cblxuLnUtZnotaDMge1xuICBAaW5jbHVkZSBoZWFkaW5nKFwiaDNcIik7XG59XG5cbi51LWZ6LWg0IHtcbiAgQGluY2x1ZGUgaGVhZGluZyhcImg0XCIpO1xufVxuXG4udS1mei1oNSB7XG4gIEBpbmNsdWRlIGhlYWRpbmcoXCJoNVwiKTtcbn1cblxuLnUtZnotaDYge1xuICBAaW5jbHVkZSBoZWFkaW5nKFwiaDZcIik7XG59XG5cbi51LWZ6LXAge1xuICBAaW5jbHVkZSB0ZXh0O1xufVxuXG4udS1mei14cyB7XG4gIEBpbmNsdWRlIHRleHQoXCJ4c1wiKTtcbn1cblxuLnUtZnotc20ge1xuICBAaW5jbHVkZSB0ZXh0KFwic21cIik7XG59XG5cbi51LWZ6LW1kIHtcbiAgQGluY2x1ZGUgdGV4dChcIm1kXCIpO1xufVxuXG4udS1mei1sZyB7XG4gIEBpbmNsdWRlIHRleHQoXCJsZ1wiKTtcbn1cblxuLnUtZnoteGwge1xuICBAaW5jbHVkZSB0ZXh0KFwieGxcIik7XG59XG5cbi8qIFRleHQgYWxpZ25tZW50ICovXG4udS10YS1yaWdodCB7XG4gIHRleHQtYWxpZ246IHJpZ2h0ICFpbXBvcnRhbnQ7XG59XG5cbi51LXRhLWxlZnQge1xuICB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7XG59XG5cbi51LXRhLWNlbnRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50O1xufVxuXG4vKiBUZXh0IHRyYW5zZm9ybSAqL1xuLnUtdHQtdXAge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlICFpbXBvcnRhbnQ7XG59XG5cbi51LXR0LWNhcCB7XG4gIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplICFpbXBvcnRhbnQ7XG59XG5cbi8qIEZvbnQgd2VpZ2h0cyAqL1xuLnUtZnctbm9ybWFsIHtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbCAhaW1wb3J0YW50O1xufVxuXG4udS1mdy1ib2xkIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQgIWltcG9ydGFudDtcbn1cblxuLnUtZnctZXh0cmEtYm9sZCB7XG4gIGZvbnQtd2VpZ2h0OiA4MDAgIWltcG9ydGFudDtcbn1cblxuLnUtZnctYmxhY2sge1xuICBmb250LXdlaWdodDogOTAwICFpbXBvcnRhbnQ7XG59XG5cbi51LWZ3LTMwMCB7XG4gIGZvbnQtd2VpZ2h0OiAzMDAgIWltcG9ydGFudDtcbn1cblxuLnUtZnctNDAwIHtcbiAgZm9udC13ZWlnaHQ6IDQwMCAhaW1wb3J0YW50O1xufVxuXG4udS1mdy01MDAge1xuICBmb250LXdlaWdodDogNTAwICFpbXBvcnRhbnQ7XG59XG5cbi51LWZ3LTYwMCB7XG4gIGZvbnQtd2VpZ2h0OiA2MDAgIWltcG9ydGFudDtcbn1cblxuLnUtZnctNzAwIHtcbiAgZm9udC13ZWlnaHQ6IDcwMCAhaW1wb3J0YW50O1xufVxuXG4udS1mdy04MDAge1xuICBmb250LXdlaWdodDogODAwICFpbXBvcnRhbnQ7XG59XG5cbi51LWZ3LTkwMCB7XG4gIGZvbnQtd2VpZ2h0OiA5MDAgIWltcG9ydGFudDtcbn1cblxuLyogVHJ1bmNhdGUgdGV4dCAqL1xuLnUtdHJ1bmNhdGUge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLyogQnJlYWsgV29yZCAqL1xuLnUtYnJlYWstd29yZCB7XG4gIG92ZXJmbG93LXdyYXA6IGJyZWFrLXdvcmQ7XG4gIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG59XG5cbi8qIEhpZ2hsaWdodCB0ZXh0ICovXG4udS1oaWdobGlnaHQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1vcmFuZ2UpO1xufVxuXG4vKiBUZXh0IGRlY29yYXRpb24gKi9cbi51LXRkLW4ge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5oYXMtdGV4dC1hbGlnbi1jZW50ZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5oYXMtdGV4dC1hbGlnbi1yaWdodCB7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuIiwiLyoqXG4gKiBDU1MgRGVidWdcbiAqIEdyb3VwOiBTY29wZXNcbiAqL1xuXG4udS1jc3MtZGVidWcge1xuICAvKipcbiAgICogT3V0bGluZSBhbGwgY2xhc3Nlcy5cbiAgICovXG4gIFtjbGFzc10ge1xuICAgIG91dGxpbmU6IDVweCBzb2xpZCBsaWdodGdyZXk7XG4gIH1cblxuICAvKipcbiAgICogT3V0bGluZSBhbGwgQkVNIEVsZW1lbnRzLlxuICAgKi9cbiAgW2NsYXNzKj1cIl9fXCJdIHtcbiAgICBvdXRsaW5lOiA1cHggc29saWQgZ3JleTtcbiAgfVxuXG4gIC8qKlxuICAgKiBPdXRsaW5lIGFsbCBCRU0gTW9kaWZpZXJzLlxuICAgKi9cbiAgW2NsYXNzKj1cIi0tXCJdIHtcbiAgICBvdXRsaW5lOiA1cHggc29saWQgZGFya2dyZXk7XG4gIH1cblxuICAvKipcbiAgICogT3V0bGluZSBhbGwgT2JqZWN0IGNsYXNzZXMuXG4gICAqL1xuICBbY2xhc3NePVwiby1cIl0sXG4gIFtjbGFzcyo9XCJvLVwiXSB7XG4gICAgb3V0bGluZTogNXB4IHNvbGlkIG9yYW5nZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBPdXRsaW5lIGFsbCBDb21wb25lbnQgY2xhc3Nlcy5cbiAgICovXG4gIFtjbGFzc149XCJjLVwiXSxcbiAgW2NsYXNzKj1cIiBjLVwiXSB7XG4gICAgb3V0bGluZTogNXB4IHNvbGlkIGN5YW47XG4gIH1cblxuICAvKipcbiAgICogT3V0bGluZSBhbGwgUmVzcG9uc2l2ZSBjbGFzc2VzLlxuICAgKi9cbiAgW2NsYXNzKj1cIkBcIl0ge1xuICAgIG91dGxpbmU6IDVweCBzb2xpZCByb3N5YnJvd247XG4gIH1cblxuICAvKipcbiAgICogT3V0bGluZSBhbGwgSGFjayBjbGFzc2VzLlxuICAgKi9cbiAgW2NsYXNzXj1cIl9cIl0ge1xuICAgIG91dGxpbmU6IDVweCBzb2xpZCByZWQ7XG4gIH1cblxuICAvKiBIZWFkZXJzIG91dCBvZiBvcmRlciAqL1xuICA6aXMoaDIsIGgzLCBoNCwgaDUsIGg2KSB+IGgxLFxuICA6aXMoaDMsIGg0LCBoNSwgaDYpIH4gaDIsXG4gIDppcyhoNCwgaDUsIGg2KSB+IGgzLFxuICA6aXMoaDUsIGg2KSB+IGg0LFxuICBoNiB+IGg1IHtcbiAgICBvdXRsaW5lOiAycHggZG90dGVkIGJsdWU7XG4gIH1cblxuICAvKipcbiAgICogRGVidWdnaW5nIDxoZWFkPiBzdHlsZXMuXG4gICAqL1xuICBoZWFkIHtcbiAgICAtLWN0LWlzLXByb2JsZW1hdGljOiBzb2xpZDtcbiAgICAtLWN0LWlzLWFmZmVjdGVkOiBkYXNoZWQ7XG4gICAgLS1jdC1ub3RpZnk6ICMwYmNlNmI7XG4gICAgLS1jdC13YXJuOiAjZmZhNDAwO1xuICAgIC0tY3QtZXJyb3I6ICNmZjRlNDI7XG5cbiAgICBkaXNwbGF5OiBibG9jaztcblxuICAgIHNjcmlwdCxcbiAgICBzdHlsZSxcbiAgICBbcmVsPVwic3R5bGVzaGVldFwiXSxcbiAgICB0aXRsZSxcbiAgICBtZXRhW2NoYXJzZXRdOm5vdCg6bnRoLWNoaWxkKC1uICsgNSkpIHtcbiAgICAgIG1hcmdpbjogNXB4O1xuICAgICAgcGFkZGluZzogNXB4O1xuICAgICAgYm9yZGVyLXdpZHRoOiA1cHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICAgIGNvbG9yOiAjMzMzO1xuICAgIH1cblxuICAgIHNjcmlwdCxcbiAgICBzdHlsZSB7XG4gICAgICBmb250OiAxNnB4LzEuNSBtb25vc3BhY2U7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICBzY3JpcHQ6OmJlZm9yZSxcbiAgICBzdHlsZTo6YmVmb3JlIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBFeHRlcm5hbCBSZXNvdXJjZXNcbiAgICovXG4gIGhlYWQgc2NyaXB0W3NyY10sXG4gIGhlYWQgbGlua1tyZWw9XCJzdHlsZXNoZWV0XCJdIHtcbiAgICBib3JkZXItc3R5bGU6IHZhcigtLWN0LWlzLXByb2JsZW1hdGljKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWN0LXdhcm4pO1xuICB9XG5cbiAgaGVhZCBzY3JpcHRbc3JjXTo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIltCbG9ja2luZyBTY3JpcHQg4oCTIFwiIGF0dHIoc3JjKSBcIl1cIjtcbiAgfVxuXG4gIGhlYWQgbGlua1tyZWw9XCJzdHlsZXNoZWV0XCJdOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiW0Jsb2NraW5nIFN0eWxlc2hlZXQg4oCTIFwiIGF0dHIoaHJlZikgXCJdXCI7XG4gIH1cblxuICAvKipcbiAgICogSW5saW5lIFJlc291cmNlc1xuICAgKi9cbiAgaGVhZCBzdHlsZTpub3QoOmVtcHR5KSxcbiAgaGVhZCBzY3JpcHQ6bm90KDplbXB0eSkge1xuICAgIG1heC1oZWlnaHQ6IDVlbTtcbiAgICBvdmVyZmxvdzogYXV0bztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZkO1xuICAgIHdoaXRlLXNwYWNlOiBwcmU7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jdC1ub3RpZnkpO1xuICAgIGJvcmRlci1zdHlsZTogdmFyKC0tY3QtaXMtcHJvYmxlbWF0aWMpO1xuICB9XG5cbiAgaGVhZCBzY3JpcHQ6bm90KDplbXB0eSk6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJbSW5saW5lIFNjcmlwdF0gXCI7XG4gIH1cblxuICBoZWFkIHN0eWxlOm5vdCg6ZW1wdHkpOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiW0lubGluZSBTdHlsZV0gXCI7XG4gIH1cblxuICAvKipcbiAgICogQmxvY2tlZCBSZXNvdXJjZXNcbiAgICovXG4gIGhlYWQgc2NyaXB0Om5vdCg6ZW1wdHkpIH4gdGl0bGUsXG4gIGhlYWQgc2NyaXB0W3NyY106bm90KFthc3luY10sIFtkZWZlcl0sIFt0eXBlPVwibW9kdWxlXCJdKSB+IHRpdGxlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBib3JkZXItc3R5bGU6IHZhcigtLWN0LWlzLWFmZmVjdGVkKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWN0LWVycm9yKTtcbiAgfVxuXG4gIGhlYWQgc2NyaXB0W3NyY11bYXN5bmNdW2RlZmVyXSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgYm9yZGVyLXN0eWxlOiB2YXIoLS1jdC1pcy1wcm9ibGVtYXRpYyk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jdC13YXJuKTtcbiAgfVxuXG4gIGhlYWQgc2NyaXB0Om5vdChbc3JjXSlbYXN5bmNdLFxuICBoZWFkIHNjcmlwdDpub3QoW3NyY10pW2RlZmVyXSB7XG4gICAgYm9yZGVyLXN0eWxlOiB2YXIoLS1jdC1pcy1wcm9ibGVtYXRpYyk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jdC13YXJuKTtcbiAgfVxuXG4gIGhlYWQgc2NyaXB0Om5vdChbc3JjXSlbYXN5bmNdOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiVGhlIGFzeW5jIGF0dHJpYnV0ZSBpcyByZWR1bmRhbnQgb24gaW5saW5lIHNjcmlwdHNcIjtcbiAgfVxuXG4gIGhlYWQgc2NyaXB0Om5vdChbc3JjXSlbZGVmZXJdOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiVGhlIGRlZmVyIGF0dHJpYnV0ZSBpcyByZWR1bmRhbnQgb24gaW5saW5lIHNjcmlwdHNcIjtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGlyZC1wYXJ0eSBCbG9ja2luZyBSZXNvdXJjZXNcbiAgICovXG4gIGhlYWQgc2NyaXB0W3NyY149XCJodHRwXCJdLFxuICBoZWFkIFtyZWw9XCJzdHlsZXNoZWV0XCJdW2hyZWZePVwiaHR0cFwiXSB7XG4gICAgYm9yZGVyLXN0eWxlOiB2YXIoLS1jdC1pcy1wcm9ibGVtYXRpYyk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jdC1lcnJvcik7XG4gIH1cblxuICBoZWFkIHNjcmlwdFtzcmNePVwiaHR0cFwiXTo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIltUaGlyZCBQYXJ0eSBCbG9ja2luZyBTY3JpcHQg4oCTIFwiIGF0dHIoc3JjKSBcIl1cIjtcbiAgfVxuXG4gIGhlYWQgW3JlbD1cInN0eWxlc2hlZXRcIl1baHJlZl49XCJodHRwXCJdOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiW1RoaXJkIFBhcnR5IEJsb2NraW5nIFN0eWxlc2hlZXQg4oCTIFwiIGF0dHIoaHJlZikgXCJdXCI7XG4gIH1cbn1cbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==*/