@charset "UTF-8";
/*! normalize.css v8.0.0 | MIT License | github.com/necolas/normalize.css */
/* Document
   ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
  line-height: 1.15; /* 1 */
  -webkit-text-size-adjust: 100%; /* 2 */
}
/* Sections
   ========================================================================== */
/**
 * Remove the margin in all browsers.
 */
body {
  margin: 0;
}
/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}
/* Grouping content
   ========================================================================== */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  box-sizing: content-box; /* 1 */
  height: 0; /* 1 */
  overflow: visible; /* 2 */
}
/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}
/* Text-level semantics
   ========================================================================== */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
  background-color: transparent;
}
/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  border-bottom: none; /* 1 */
  text-decoration: underline; /* 2 */
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted; /* 2 */
}
/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder;
}
/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}
/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%;
}
/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}
sub {
  bottom: -0.25em;
}
sup {
  top: -0.5em;
}
/* Embedded content
   ========================================================================== */
/**
 * Remove the border on images inside links in IE 10.
 */
img {
  border-style: none;
}
/* Forms
   ========================================================================== */
/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
  font-family: inherit; /* 1 */
  font-size: 100%; /* 1 */
  line-height: 1.15; /* 1 */
  margin: 0; /* 2 */
}
/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input { /* 1 */
  overflow: visible;
}
/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select { /* 1 */
  text-transform: none;
}
/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
}
/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}
/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText;
}
/**
 * Correct the padding in Firefox.
 */
fieldset {
  padding: 0.35em 0.75em 0.625em;
}
/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
legend {
  box-sizing: border-box; /* 1 */
  color: inherit; /* 2 */
  display: table; /* 1 */
  max-width: 100%; /* 1 */
  padding: 0; /* 3 */
  white-space: normal; /* 1 */
}
/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline;
}
/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
  overflow: auto;
}
/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type="checkbox"],
[type="radio"] {
  box-sizing: border-box; /* 1 */
  padding: 0; /* 2 */
}
/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}
/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type="search"] {
  -webkit-appearance: textfield; /* 1 */
  outline-offset: -2px; /* 2 */
}
/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}
/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}
/* Interactive
   ========================================================================== */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
  display: block;
}
/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item;
}
/* Misc
   ========================================================================== */
/**
 * Add the correct display in IE 10+.
 */
template {
  display: none;
}
/**
 * Add the correct display in IE 10.
 */
[hidden] {
  display: none;
}
/**
 * Swiper 4.3.3
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * http://www.idangero.us/swiper/
 *
 * Copyright 2014-2018 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: June 5, 2018
 */
.swiper-container {
  margin: 0 auto;
  position: relative;
  overflow: hidden;
  list-style: none;
  padding: 0;
  /* Fix of Webkit flickering */
  z-index: 1;
}
.swiper-container-no-flexbox .swiper-slide {
  float: left;
}
.swiper-container-vertical > .swiper-wrapper {
  flex-direction: column;
}
.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: flex;
  transition-property: transform;
  box-sizing: content-box;
}
.swiper-container-android .swiper-slide,
.swiper-wrapper {
  transform: translate3d(0px, 0, 0);
}
.swiper-container-multirow > .swiper-wrapper {
  flex-wrap: wrap;
}
.swiper-container-free-mode > .swiper-wrapper {
  transition-timing-function: ease-out;
  margin: 0 auto;
}
.swiper-slide {
  flex-shrink: 0;
  width: 100%;
  height: 100%;
  position: relative;
  transition-property: transform;
}
.swiper-invisible-blank-slide {
  visibility: hidden;
}
/* Auto Height */
.swiper-container-autoheight,
.swiper-container-autoheight .swiper-slide {
  height: auto;
}
.swiper-container-autoheight .swiper-wrapper {
  align-items: flex-start;
  transition-property: transform, height;
}
/* 3D Effects */
.swiper-container-3d {
  perspective: 1200px;
}
.swiper-container-3d .swiper-wrapper,
.swiper-container-3d .swiper-slide,
.swiper-container-3d .swiper-slide-shadow-left,
.swiper-container-3d .swiper-slide-shadow-right,
.swiper-container-3d .swiper-slide-shadow-top,
.swiper-container-3d .swiper-slide-shadow-bottom,
.swiper-container-3d .swiper-cube-shadow {
  transform-style: preserve-3d;
}
.swiper-container-3d .swiper-slide-shadow-left,
.swiper-container-3d .swiper-slide-shadow-right,
.swiper-container-3d .swiper-slide-shadow-top,
.swiper-container-3d .swiper-slide-shadow-bottom {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 10;
}
.swiper-container-3d .swiper-slide-shadow-left {
  background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-container-3d .swiper-slide-shadow-right {
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-container-3d .swiper-slide-shadow-top {
  background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-container-3d .swiper-slide-shadow-bottom {
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
/* IE10 Windows Phone 8 Fixes */
.swiper-container-wp8-horizontal,
.swiper-container-wp8-horizontal > .swiper-wrapper {
  touch-action: pan-y;
}
.swiper-container-wp8-vertical,
.swiper-container-wp8-vertical > .swiper-wrapper {
  touch-action: pan-x;
}
.swiper-button-prev,
.swiper-button-next {
  position: absolute;
  top: 50%;
  width: 27px;
  height: 44px;
  margin-top: -22px;
  z-index: 10;
  cursor: pointer;
  background-size: 27px 44px;
  background-position: center;
  background-repeat: no-repeat;
}
.swiper-button-prev.swiper-button-disabled,
.swiper-button-next.swiper-button-disabled {
  opacity: 0.35;
  cursor: auto;
  pointer-events: none;
}
.swiper-button-prev,
.swiper-container-rtl .swiper-button-next {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23007aff'%2F%3E%3C%2Fsvg%3E");
  left: 10px;
  right: auto;
}
.swiper-button-next,
.swiper-container-rtl .swiper-button-prev {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23007aff'%2F%3E%3C%2Fsvg%3E");
  right: 10px;
  left: auto;
}
.swiper-button-prev.swiper-button-white,
.swiper-container-rtl .swiper-button-next.swiper-button-white {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23ffffff'%2F%3E%3C%2Fsvg%3E");
}
.swiper-button-next.swiper-button-white,
.swiper-container-rtl .swiper-button-prev.swiper-button-white {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23ffffff'%2F%3E%3C%2Fsvg%3E");
}
.swiper-button-prev.swiper-button-black,
.swiper-container-rtl .swiper-button-next.swiper-button-black {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23000000'%2F%3E%3C%2Fsvg%3E");
}
.swiper-button-next.swiper-button-black,
.swiper-container-rtl .swiper-button-prev.swiper-button-black {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23000000'%2F%3E%3C%2Fsvg%3E");
}
.swiper-button-lock {
  display: none;
}
.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;
}
/* Common Styles */
.swiper-pagination-fraction,
.swiper-pagination-custom,
.swiper-container-horizontal > .swiper-pagination-bullets {
  bottom: 10px;
  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: 8px;
  height: 8px;
  display: inline-block;
  border-radius: 100%;
  background: #000;
  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-active {
  opacity: 1;
  background: #007aff;
}
.swiper-container-vertical > .swiper-pagination-bullets {
  right: 10px;
  top: 50%;
  transform: translate3d(0px, -50%, 0);
}
.swiper-container-vertical > .swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 6px 0;
  display: block;
}
.swiper-container-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  top: 50%;
  transform: translateY(-50%);
  width: 8px;
}
.swiper-container-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  display: inline-block;
  transition: 200ms transform, 200ms top;
}
.swiper-container-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 4px;
}
.swiper-container-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  left: 50%;
  transform: translateX(-50%);
  white-space: nowrap;
}
.swiper-container-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transition: 200ms transform, 200ms left;
}
.swiper-container-horizontal.swiper-container-rtl > .swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transition: 200ms transform, 200ms right;
}
/* Progress */
.swiper-pagination-progressbar {
  background: rgba(0, 0, 0, 0.25);
  position: absolute;
}
.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  background: #007aff;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  transform: scale(0);
  transform-origin: left top;
}
.swiper-container-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  transform-origin: right top;
}
.swiper-container-horizontal > .swiper-pagination-progressbar,
.swiper-container-vertical > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
  width: 100%;
  height: 4px;
  left: 0;
  top: 0;
}
.swiper-container-vertical > .swiper-pagination-progressbar,
.swiper-container-horizontal > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
  width: 4px;
  height: 100%;
  left: 0;
  top: 0;
}
.swiper-pagination-white .swiper-pagination-bullet-active {
  background: #ffffff;
}
.swiper-pagination-progressbar.swiper-pagination-white {
  background: rgba(255, 255, 255, 0.25);
}
.swiper-pagination-progressbar.swiper-pagination-white .swiper-pagination-progressbar-fill {
  background: #ffffff;
}
.swiper-pagination-black .swiper-pagination-bullet-active {
  background: #000000;
}
.swiper-pagination-progressbar.swiper-pagination-black {
  background: rgba(0, 0, 0, 0.25);
}
.swiper-pagination-progressbar.swiper-pagination-black .swiper-pagination-progressbar-fill {
  background: #000000;
}
.swiper-pagination-lock {
  display: none;
}
/* Scrollbar */
.swiper-scrollbar {
  border-radius: 10px;
  position: relative;
  -ms-touch-action: none;
  background: rgba(0, 0, 0, 0.1);
}
.swiper-container-horizontal > .swiper-scrollbar {
  position: absolute;
  left: 1%;
  bottom: 3px;
  z-index: 50;
  height: 5px;
  width: 98%;
}
.swiper-container-vertical > .swiper-scrollbar {
  position: absolute;
  right: 3px;
  top: 1%;
  z-index: 50;
  width: 5px;
  height: 98%;
}
.swiper-scrollbar-drag {
  height: 100%;
  width: 100%;
  position: relative;
  background: rgba(0, 0, 0, 0.5);
  border-radius: 10px;
  left: 0;
  top: 0;
}
.swiper-scrollbar-cursor-drag {
  cursor: move;
}
.swiper-scrollbar-lock {
  display: none;
}
.swiper-zoom-container {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
}
.swiper-zoom-container > img,
.swiper-zoom-container > svg,
.swiper-zoom-container > canvas {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
}
.swiper-slide-zoomed {
  cursor: move;
}
/* Preloader */
.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%;
  animation: swiper-preloader-spin 1s steps(12, end) infinite;
}
.swiper-lazy-preloader:after {
  display: block;
  content: '';
  width: 100%;
  height: 100%;
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D'0%200%20120%20120'%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20xmlns%3Axlink%3D'http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink'%3E%3Cdefs%3E%3Cline%20id%3D'l'%20x1%3D'60'%20x2%3D'60'%20y1%3D'7'%20y2%3D'27'%20stroke%3D'%236c6c6c'%20stroke-width%3D'11'%20stroke-linecap%3D'round'%2F%3E%3C%2Fdefs%3E%3Cg%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(30%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(60%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(90%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(120%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(150%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.37'%20transform%3D'rotate(180%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.46'%20transform%3D'rotate(210%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.56'%20transform%3D'rotate(240%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.66'%20transform%3D'rotate(270%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.75'%20transform%3D'rotate(300%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.85'%20transform%3D'rotate(330%2060%2C60)'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");
  background-position: 50%;
  background-size: 100%;
  background-repeat: no-repeat;
}
.swiper-lazy-preloader-white:after {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D'0%200%20120%20120'%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20xmlns%3Axlink%3D'http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink'%3E%3Cdefs%3E%3Cline%20id%3D'l'%20x1%3D'60'%20x2%3D'60'%20y1%3D'7'%20y2%3D'27'%20stroke%3D'%23fff'%20stroke-width%3D'11'%20stroke-linecap%3D'round'%2F%3E%3C%2Fdefs%3E%3Cg%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(30%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(60%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(90%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(120%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(150%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.37'%20transform%3D'rotate(180%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.46'%20transform%3D'rotate(210%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.56'%20transform%3D'rotate(240%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.66'%20transform%3D'rotate(270%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.75'%20transform%3D'rotate(300%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.85'%20transform%3D'rotate(330%2060%2C60)'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");
}
@keyframes swiper-preloader-spin {
  100% {
    transform: rotate(360deg);
  }
}
/* a11y */
.swiper-container .swiper-notification {
  position: absolute;
  left: 0;
  top: 0;
  pointer-events: none;
  opacity: 0;
  z-index: -1000;
}
.swiper-container-fade.swiper-container-free-mode .swiper-slide {
  transition-timing-function: ease-out;
}
.swiper-container-fade .swiper-slide {
  pointer-events: none;
  transition-property: opacity;
}
.swiper-container-fade .swiper-slide .swiper-slide {
  pointer-events: none;
}
.swiper-container-fade .swiper-slide-active,
.swiper-container-fade .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}
.swiper-container-cube {
  overflow: visible;
}
.swiper-container-cube .swiper-slide {
  pointer-events: none;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  z-index: 1;
  visibility: hidden;
  transform-origin: 0 0;
  width: 100%;
  height: 100%;
}
.swiper-container-cube .swiper-slide .swiper-slide {
  pointer-events: none;
}
.swiper-container-cube.swiper-container-rtl .swiper-slide {
  transform-origin: 100% 0;
}
.swiper-container-cube .swiper-slide-active,
.swiper-container-cube .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}
.swiper-container-cube .swiper-slide-active,
.swiper-container-cube .swiper-slide-next,
.swiper-container-cube .swiper-slide-prev,
.swiper-container-cube .swiper-slide-next + .swiper-slide {
  pointer-events: auto;
  visibility: visible;
}
.swiper-container-cube .swiper-slide-shadow-top,
.swiper-container-cube .swiper-slide-shadow-bottom,
.swiper-container-cube .swiper-slide-shadow-left,
.swiper-container-cube .swiper-slide-shadow-right {
  z-index: 0;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
.swiper-container-cube .swiper-cube-shadow {
  position: absolute;
  left: 0;
  bottom: 0px;
  width: 100%;
  height: 100%;
  background: #000;
  opacity: 0.6;
  -webkit-filter: blur(50px);
  filter: blur(50px);
  z-index: 0;
}
.swiper-container-flip {
  overflow: visible;
}
.swiper-container-flip .swiper-slide {
  pointer-events: none;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  z-index: 1;
}
.swiper-container-flip .swiper-slide .swiper-slide {
  pointer-events: none;
}
.swiper-container-flip .swiper-slide-active,
.swiper-container-flip .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}
.swiper-container-flip .swiper-slide-shadow-top,
.swiper-container-flip .swiper-slide-shadow-bottom,
.swiper-container-flip .swiper-slide-shadow-left,
.swiper-container-flip .swiper-slide-shadow-right {
  z-index: 0;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
.swiper-container-coverflow .swiper-wrapper {
  /* Windows 8 IE 10 fix */
  -ms-perspective: 1200px;
}
@keyframes jump {
  0% {
    transform: translateY(0); }
  50% {
    transform: translateY(-20%); }
  100% {
    transform: translateY(0); } }
@font-face {
  src: url("../fonts/domaine.woff2") format("woff2"), url("../fonts/domaine.woff") format("woff");
  font-family: Domaine;
  font-weight: 400;
  font-style: normal;
  font-display: swap; }
@font-face {
  src: url("../fonts/domaine-italic.woff2") format("woff2"), url("../fonts/domaine-italic.woff") format("woff");
  font-family: Domaine;
  font-weight: 400;
  font-style: italic;
  font-display: swap; }
[type='text'],
[type='tel'],
[type='email'],
[type='search'],
[type='number'],
[type='url'],
[type='password'],
[type='date'],
textarea {
  width: 100%;
  border: 1px solid currentColor;
  border-radius: 0;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none; }
button,
[type='submit'] {
  display: inline-block;
  cursor: pointer;
  text-decoration: none;
  text-align: center;
  border: 1px solid currentColor;
  border-radius: 0;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none; }
textarea {
  resize: vertical;
  vertical-align: top; }
select {
  position: relative;
  display: block; }
fieldset {
  margin: 0;
  margin-bottom: 1.25rem;
  padding: 0;
  border: 0; }
label {
  display: inline-block; }
label[for] {
    cursor: pointer; }
[unselectable] {
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none; }
[disabled] {
  cursor: not-allowed; }
h1 {
  font-size: 2.47059rem;
  font-weight: 400;
  margin: 0;
  margin-bottom: 1.25rem; }
h2 {
  font-size: 2.11765rem;
  font-weight: 400;
  margin: 0;
  margin-bottom: 1.25rem; }
h3 {
  font-size: 1.17647rem;
  font-weight: 400;
  margin: 0;
  margin-bottom: 1.25rem; }
h4,
h5,
h6 {
  font-size: 0.70588rem;
  font-weight: 400;
  margin: 0;
  margin-bottom: 1.25rem; }
a {
  text-decoration: none;
  color: currentColor; }
a:hover, a:active, a:focus {
    text-decoration: none; }
ul,
dl,
ol {
  margin: 0;
  margin-bottom: 1.25rem;
  padding: 0;
  padding-left: 1.25rem; }
ul ul,
  dl ul,
  ol ul, ul
  dl,
  dl
  dl,
  ol
  dl, ul
  ol,
  dl
  ol,
  ol
  ol {
    margin-bottom: 0; }
nav ul,
nav ol,
fieldset ul,
fieldset ol {
  padding: 0;
  margin-bottom: 0;
  list-style: none; }
audio,
canvas,
iframe,
img,
svg,
video {
  vertical-align: middle; }
audio,
iframe,
img,
video {
  max-width: 100%;
  height: auto; }
figure {
  margin: 0;
  margin-bottom: 1.25rem; }
:root {
  color: #000;
  background-color: #fff;
  box-sizing: border-box;
  font-size: 17px;
  -webkit-font-kerning: normal;
          font-kerning: normal;
  font-variant-ligatures: common-ligatures contextual;
  font-feature-settings: 'kern', 'liga', 'clig', 'calt';
  line-height: 1.25;
  -webkit-text-size-adjust: 100%;
      -ms-text-size-adjust: 100%;
          text-size-adjust: 100%; }
*, *::before, *::after {
  box-sizing: inherit; }
body {
  font-family: sans-serif;
  font-weight: 400;
  font-style: normal;
  background-color: #fff;
  width: 100%; }
.fonts-loaded body {
    font-family: Domaine, sans-serif; }
@media print {
    body * {
      display: none; }
    body::after {
      content: 'Please, do not waste paper by printing webpages.'; } }
::-moz-selection {
  background-color: #ff8e66;
  color: #000;
  text-shadow: none; }
::selection {
  background-color: #ff8e66;
  color: #000;
  text-shadow: none; }
table {
  margin: 0;
  margin-bottom: 1.25rem;
  width: 100%;
  border-collapse: collapse; }
td,
th {
  padding: 0;
  vertical-align: top; }
th {
  text-align: left; }
hr {
  margin-right: auto;
  margin-left: auto;
  margin-bottom: 1.25rem;
  margin-top: 0;
  display: block;
  width: 90%;
  border: 0;
  border-bottom: 1px solid currentColor; }
pre,
p {
  margin: 0;
  margin-bottom: 1.25rem; }
sub,
sup {
  position: relative;
  vertical-align: baseline;
  font-size: 75%;
  line-height: 0; }
sub {
  bottom: -0.25em; }
sup {
  top: -0.5em; }
strong,
b,
i,
em {
  font-weight: 400;
  font-style: italic; }
.text--huge {
  font-size: 2.47059rem;
  font-weight: 400;
  line-height: 0.9;
  letter-spacing: 0; }
@media (min-width: 720px) {
    .text--huge {
      font-size: calc(45px + 1vw);
      line-height: 0.9375; } }
@media (min-width: 1100px) {
    .text--huge {
      font-size: calc(55px + 1vw); } }
.text--larger {
  font-size: 2.11765rem;
  font-weight: 400; }
.text--large {
  font-size: 1.17647rem;
  font-weight: 400; }
.text--default {
  font-size: 1rem;
  font-weight: 400; }
@media (min-width: 1100px) {
    .text--default {
      font-size: 1.35294rem; } }
.text--small {
  font-size: 0.70588rem;
  font-weight: 400; }
.accordion {
  position: relative;
  display: block;
  min-height: 220px; }
.accordion::before {
    padding-top: 45%; }
.accordion::before {
    position: relative;
    display: block;
    content: '';
    padding-top: calc(56.25% - 4.2rem); }
@media (min-width: 960px) {
      .accordion::before {
        padding-top: calc(56.25% - 5.9rem); } }
.accordion__inner {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: stretch; }
.accordion__header {
  position: relative;
  display: block;
  font-size: 1.05882rem;
  width: 2.5rem;
  line-height: 2.5rem;
  height: 100%;
  border: 0;
  outline: 0;
  padding: 0; }
@media (min-width: 960px) {
    .accordion__header {
      font-size: 2.11765rem;
      width: 3.75rem;
      line-height: 3.75rem; } }
.accordion__content--musik {
  color: #98d3bb; }
.accordion__header--musik {
  background-color: #98d3bb;
  color: #000; }
.accordion__content--live-autor {
  color: #ff8e66; }
.accordion__header--live-autor {
  background-color: #ff8e66;
  color: #000; }
.accordion__content--moderation {
  color: #98d3bb; }
.accordion__header--moderation {
  background-color: #000;
  color: #98d3bb; }
.accordion__header__inner {
  position: absolute;
  top: 0.625rem;
  left: 50%;
  display: block;
  transform: rotate(90deg) translateY(-50%);
  transform-origin: top left;
  white-space: nowrap; }
@media (min-width: 960px) {
    .accordion__header__inner {
      top: 1.25rem; } }
.accordion__content {
  position: relative;
  display: block;
  will-change: width;
  transition: width 0.3s ease-in;
  overflow: hidden;
  width: 0;
  height: 100%; }
.accordion__content[aria-hidden='false'] {
    width: calc(100% - 7.5rem); }
.current {
  background: #000;
  background-color: var(--currentcolor, #f6e3a5); }
.current__cover {
  background-color: #000;
  padding: 2.5rem;
  position: relative; }
@media (min-width: 720px) {
    .current__cover {
      color: #000;
      background: #f6e3a5;
      background-color: var(--currentcolor, #f6e3a5); } }
@media (min-width: 960px) {
    .current__cover {
      padding-right: 5rem;
      padding-left: 5rem; } }
.current__cover .current__image {
    margin-bottom: 0;
    text-align: center; }
.current__cover .image__src {
    display: inline-block; }
@media (min-width: 720px) {
  .current__content {
    background-color: #000;
    color: #f6e3a5;
    color: var(--currentcolor, #f6e3a5); } }
.current__new {
  position: absolute;
  left: 1.25rem;
  top: 1.25rem;
  font-size: 1.35294rem;
  background: #69bfd8;
  background-color: var(--currenthighlight, #69bfd8);
  border-radius: 100%;
  height: 5rem;
  line-height: 5.2rem;
  text-align: center;
  text-transform: uppercase;
  transform: rotate(-5deg);
  width: 5rem; }
@media (min-width: 960px) {
    .current__new {
      font-size: 2.11765rem;
      left: 2.5rem;
      width: 6.875rem;
      height: 6.875rem;
      line-height: 7rem; } }
.event {
  padding: 0.625rem;
  padding-right: 2.5rem;
  background-color: #fff;
  color: #000;
  will-change: max-height;
  transition: max-height 0.3s ease-in;
  position: relative;
  overflow: hidden;
  min-height: 60px;
  max-height: 150px; }
.event:nth-child(2n) {
    background-color: #000;
    color: #fff; }
@media (min-width: 720px) {
    .event {
      padding-left: 340px; } }
@media (min-width: 960px) {
    .event {
      padding-right: 7.5rem;
      padding-left: 390px;
      display: flex;
      justify-content: space-between; } }
.event p {
    margin-bottom: 0; }
.event--hidden {
  padding-top: 0;
  padding-bottom: 0;
  min-height: 0;
  max-height: 0; }
.event__title {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  border: 0;
  overflow: hidden;
  clip: rect(0 0 0 0); }
.event__title.focusable:active, .event__title.focusable:focus {
    position: static;
    width: auto;
    height: auto;
    margin: 0;
    overflow: visible;
    clip: auto; }
.event__tickets {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  width: 2.5rem; }
@media (min-width: 960px) {
    .event__tickets {
      width: 7.5rem; } }
.event__tickets .event__dots {
    position: absolute;
    left: 0;
    top: 5px;
    width: 5px;
    height: 245px; }
.event__tickets__link {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  font-size: 0.70588rem;
  font-weight: 400;
  display: block;
  transform: translateY(-50%) translateX(-50%) rotate(-90deg);
  transform-origin: center;
  text-align: center;
  text-transform: uppercase;
  line-height: 2.5rem; }
@media (min-width: 960px) {
    .event__tickets__link {
      transform: translateY(-50%) translateX(-50%); } }
.event__date {
  white-space: nowrap; }
@media (min-width: 720px) {
    .event__date {
      position: absolute;
      top: 50%;
      transform: translateY(-50%);
      font-size: 2.94118rem;
      left: 0.625rem;
      line-height: 0.9; } }
@media (min-width: 960px) {
    .event__date {
      left: 1.25rem; } }
@media (min-width: 720px) {
  .event__date__time {
    display: none;
    visibility: hidden; } }
@media (min-width: 960px) {
  .event__infos {
    padding-right: 2.5rem;
    flex: 1 0 280px; } }
@media (min-width: 960px) {
  .event__meta {
    padding-right: 2.5rem;
    flex: 1 0 180px; } }
.event__meta__time {
  display: none;
  visibility: hidden; }
@media (min-width: 960px) {
    .event__meta__time {
      display: block;
      visibility: visible; } }
.eventbutton {
  background-color: #fff;
  color: #000;
  position: relative;
  width: 100%; }
.eventbutton__more,
.eventbutton__less {
  padding: 0.625rem;
  background-color: #fff;
  color: #000;
  border: 0;
  outline: 0;
  text-align: left;
  text-decoration: none; }
@media (min-width: 960px) {
    .eventbutton__more,
    .eventbutton__less {
      padding-right: 1.25rem;
      padding-left: 1.25rem; } }
.eventbutton--even {
  background-color: #000;
  color: #fff; }
.eventbutton--even .eventbutton__more,
  .eventbutton--even .eventbutton__less {
    background-color: #000;
    color: #fff; }
.icon {
  position: relative;
  top: -0.0625em;
  display: inline-block;
  width: 1em;
  height: 1em;
  fill: currentColor; }
.image {
  margin-bottom: 1.25rem; }
.image__caption {
  padding-top: 0.15625rem;
  font-size: 0.70588rem;
  font-weight: 400; }
.overlay {
  display: block;
  visibility: visible;
  position: fixed;
  top: 50%;
  left: 50%;
  background-color: #000;
  color: #98d3bb;
  will-change: transform, opacity;
  transition: transform 0.3s ease-in, opacity 0.3s ease-in;
  z-index: 1000;
  width: 100vw;
  height: 100vh;
  transform: translateX(-50%) translateY(-50%);
  box-shadow: 0 0 5rem 0 rgba(0, 0, 0, 0.7); }
.overlay[aria-hidden='true'] {
    z-index: -1;
    display: none;
    visibility: hidden;
    opacity: 0; }
.overlay__content {
  padding: 1.25rem;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  overflow-y: auto; }
.overlay__content > div {
    position: relative;
    display: block;
    margin: 0 auto;
    max-width: 800px; }
.overlay__content a {
    color: #98d3bb; }
.overlay__content a:hover, .overlay__content a:active, .overlay__content a:focus {
      color: #ff8e66; }
.overlay__close.burger {
  position: absolute;
  right: -0.625rem;
  top: 0.625rem;
  color: #98d3bb; }
.overlay__close.burger .burger__line {
    background-color: #98d3bb; }
.overlay__close.burger:hover, .overlay__close.burger:active, .overlay__close.burger:focus {
    color: #98d3bb; }
.overlay__close.burger:hover .burger__line, .overlay__close.burger:active .burger__line, .overlay__close.burger:focus .burger__line {
      background-color: #98d3bb; }
.overlay__close.burger:hover {
    color: #ff8e66; }
.overlay__close.burger:hover .burger__line {
      background-color: #ff8e66; }
.press {
  background-color: #ff8e66;
  padding-right: 0.625rem;
  padding-left: 0.625rem;
  padding-top: 0.25rem;
  padding-bottom: 0.25rem;
  font-size: 2.11765rem;
  font-weight: 400;
  color: #000;
  display: flex;
  width: 100vw;
  justify-content: space-between; }
.press:hover, .press:active, .press:focus {
    color: #98d3bb;
    text-decoration: none; }
@media (min-width: 720px) {
    .press {
      padding-right: 1.25rem;
      padding-left: 1.25rem; } }
@media (min-width: 960px) {
    .press {
      font-size: 2.47059rem;
      font-weight: 400;
      line-height: 0.9;
      letter-spacing: 0; } }
@media (min-width: 960px) and (min-width: 720px) {
    .press {
      font-size: calc(45px + 1vw);
      line-height: 0.9375; } }
@media (min-width: 960px) and (min-width: 1100px) {
    .press {
      font-size: calc(55px + 1vw); } }
.press .press__icon {
    width: 0.75em;
    height: 0.75em; }
.press__text {
  text-transform: uppercase; }
@media (min-width: 960px) {
    .press__text {
      position: relative;
      top: 2px; } }
.project {
  display: block; }
@media (min-width: 720px) {
    .project {
      display: flex;
      justify-content: space-between;
      flex-direction: row; } }
.project--moderator,
.project--moderator .image__caption {
  background-color: #000;
  color: #98d3bb; }
.project--moderator .project__images {
  color: #98d3bb; }
.project--moderator .project__content a:hover, .project--moderator .project__content a:active, .project--moderator .project__content a:focus {
  color: #ff8e66; }
.project--musiker,
.project--musiker .image__caption {
  background-color: #ff8e66;
  color: #000; }
.project--musiker .project__images {
  color: #ff8e66; }
.project--musiker .project__content a:hover, .project--musiker .project__content a:active, .project--musiker .project__content a:focus {
  color: #98d3bb; }
.project--live-autor,
.project--live-autor .image__caption {
  background-color: #000;
  color: #ff8e66; }
.project--live-autor .project__images {
  color: #ff8e66; }
.project--live-autor .project__content a:hover, .project--live-autor .project__content a:active, .project--live-autor .project__content a:focus {
  color: #98d3bb; }
.project--schriftsteller,
.project--schriftsteller .image__caption {
  background-color: #98d3bb;
  color: #000; }
.project--schriftsteller .project__images {
  color: #98d3bb; }
.project--schriftsteller .project__content a:hover, .project--schriftsteller .project__content a:active, .project--schriftsteller .project__content a:focus {
  color: #ff8e66; }
.project__images {
  overflow: hidden;
  order: 1; }
@media (min-width: 720px) {
    .project__images {
      width: 50%; }
      .project--moderator .project__images,
      .project--live-autor .project__images {
        order: 3; } }
.project__content {
  font-size: 1rem;
  font-weight: 400;
  padding: 0.625rem;
  padding-right: 1.875rem;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  min-height: 240px;
  order: 2; }
@media (min-width: 1100px) {
    .project__content {
      font-size: 1.35294rem; } }
@media (min-width: 640px) {
    .project__content {
      padding-right: 3.75rem; } }
@media (min-width: 720px) {
    .project__content {
      padding-right: 2.5rem;
      width: 50%; } }
@media (min-width: 960px) {
    .project__content {
      padding: 1.25rem;
      padding-right: 3.75rem; } }
.project__content a {
    font-style: italic;
    text-decoration: none; }
.project__content a:hover, .project__content a:active, .project__content a:focus {
      color: #fff; }
.project__heading {
  font-size: 2.47059rem;
  font-weight: 400;
  line-height: 0.9;
  letter-spacing: 0;
  margin-top: 0.625rem;
  margin-bottom: 1.875rem; }
@media (min-width: 720px) {
    .project__heading {
      font-size: calc(45px + 1vw);
      line-height: 0.9375; } }
@media (min-width: 1100px) {
    .project__heading {
      font-size: calc(55px + 1vw); } }
.project__text :last-child {
  margin-bottom: 0; }
.section {
  position: relative;
  display: block; }
.section--aktuell {
  z-index: 1;
  margin-top: -2px; }
.section__heading {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  border: 0;
  overflow: hidden;
  clip: rect(0 0 0 0); }
.section__heading.focusable:active, .section__heading.focusable:focus {
    position: static;
    width: auto;
    height: auto;
    margin: 0;
    overflow: visible;
    clip: auto; }
.section__inner {
  position: relative;
  display: block; }
.section--kontakt__inner {
  padding: 0.625rem;
  background-color: #000;
  color: #98d3bb; }
@media (min-width: 720px) {
    .section--kontakt__inner {
      padding: 1.25rem;
      font-size: 1.17647rem;
      font-weight: 400; } }
@media (min-width: 960px) {
    .section--kontakt__inner {
      font-size: 2.11765rem;
      font-weight: 400;
      line-height: 1.4; } }
.section--kontakt__inner a {
    color: #98d3bb; }
.section--kontakt__inner a:hover, .section--kontakt__inner a:active, .section--kontakt__inner a:focus {
      color: #ff8e66;
      text-decoration: none; }
.section--kontakt__inner a[href^='mailto'] {
      text-decoration: none; }
.section--kontakt__inner :last-child {
    margin-bottom: 0; }
.section--kontakt__privacy,
.section--kontakt__imprint {
  color: #98d3bb;
  display: block;
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  background: transparent; }
.section--kontakt__privacy:hover, .section--kontakt__privacy:active, .section--kontakt__privacy:focus,
  .section--kontakt__imprint:hover,
  .section--kontakt__imprint:active,
  .section--kontakt__imprint:focus {
    color: #ff8e66; }
@media (min-width: 720px) {
    .section--kontakt__privacy,
    .section--kontakt__imprint {
      font-size: 1rem;
      font-weight: 400;
      margin-right: 2.5rem;
      display: inline-block; } }
@media (min-width: 720px) and (min-width: 1100px) {
    .section--kontakt__privacy,
    .section--kontakt__imprint {
      font-size: 1.35294rem; } }
.section--kontakt__grid {
  margin-bottom: 1.25rem;
  display: flex;
  flex-direction: column; }
@media (min-width: 720px) {
    .section--kontakt__grid {
      flex-direction: row; } }
@media (min-width: 720px) {
  .section--kontakt__grid-item {
    width: 50%; }
    .section--kontakt__grid-item:first-of-type {
      padding-right: 1.25rem; }
    .section--kontakt__grid-item:last-of-type {
      padding-left: 1.25rem; } }
.section--kontakt__grid-item + .section--kontakt__grid-item {
  margin-top: 1.25rem; }
@media (min-width: 720px) {
    .section--kontakt__grid-item + .section--kontakt__grid-item {
      margin-top: 0; } }
.slider {
  position: relative; }
.slider::before {
    padding-top: 75%; }
.slider::before {
    position: relative;
    display: block;
    content: ''; }
.slider:hover .image__caption,
  .slider:hover .slider__prev,
  .slider:hover .slider__next, .slider:active .image__caption,
  .slider:active .slider__prev,
  .slider:active .slider__next, .slider:focus .image__caption,
  .slider:focus .slider__prev,
  .slider:focus .slider__next {
    opacity: 1; }
.slider__inner {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0; }
.slider__container {
  width: 100%;
  height: 100%; }
.slider__image {
  position: relative;
  display: block;
  margin-bottom: 0; }
.slider__image .image__src {
    position: absolute;
    top: 0;
    width: 100%;
    height: auto; }
.slider__image .image__caption {
    position: absolute;
    bottom: 0.3125rem;
    left: 0.3125rem;
    padding: 0.3125rem;
    font-size: 0.70588rem;
    will-change: opacity;
    transition: opacity 0.3s ease-in;
    display: block;
    opacity: 0; }
@media (min-width: 960px) {
      .slider__image .image__caption {
        position: absolute;
        left: 0.625rem;
        bottom: 0.625rem; } }
.slider__prev,
.slider__next {
  will-change: opacity;
  transition: opacity 0.3s ease-in;
  z-index: 1000;
  padding: 0;
  font-size: 2.11765rem;
  font-weight: 400;
  color: currentColor;
  outline: 0;
  border: 0;
  background: transparent;
  opacity: 0; }
.slider__prev {
  position: absolute;
  left: 0.625rem; }
.slider__prev .slider__icon {
    transform: rotate(-90deg); }
.slider__next {
  position: absolute;
  right: 1.25rem; }
.slider__next .slider__icon {
    transform: rotate(90deg); }
@keyframes plyr-progress {
  to {
    background-position: 25px 0; } }
.plyr {
  position: relative;
  max-width: 100%;
  min-width: 200px;
  font-family: Avenir, "Avenir Next", "Helvetica Neue", "Segoe UI", Helvetica, Arial, sans-serif;
  direction: ltr; }
.plyr,
  .plyr *,
  .plyr *::after,
  .plyr *::before {
    box-sizing: border-box; }
.plyr a,
  .plyr button,
  .plyr input,
  .plyr label {
    touch-action: manipulation; }
.plyr:focus {
    outline: 0; }
.plyr video,
  .plyr audio {
    width: 100%;
    height: auto;
    vertical-align: middle;
    border-radius: inherit; }
.plyr input[type="range"] {
    display: block;
    height: 20px;
    width: 100%;
    margin: 0;
    padding: 0;
    vertical-align: middle;
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    cursor: pointer;
    border: none;
    background: transparent; }
.plyr input[type="range"]::-webkit-slider-runnable-track {
      height: 8px;
      background: transparent;
      border: 0;
      border-radius: 4px;
      -webkit-user-select: none;
              user-select: none; }
.plyr input[type="range"]::-webkit-slider-thumb {
      -webkit-appearance: none;
      margin-top: -4px;
      position: relative;
      height: 16px;
      width: 16px;
      background: #fff;
      border: 2px solid transparent;
      border-radius: 100%;
      transition: background .2s ease, border .2s ease, transform .2s ease;
      box-shadow: 0 1px 1px rgba(0, 0, 0, 0.15), 0 0 0 1px rgba(0, 0, 0, 0.15);
      box-sizing: border-box; }
.plyr input[type="range"]::-moz-range-track {
      height: 8px;
      background: transparent;
      border: 0;
      border-radius: 4px;
      -moz-user-select: none;
           user-select: none; }
.plyr input[type="range"]::-moz-range-thumb {
      position: relative;
      height: 16px;
      width: 16px;
      background: #fff;
      border: 2px solid transparent;
      border-radius: 100%;
      transition: background .2s ease, border .2s ease, transform .2s ease;
      box-shadow: 0 1px 1px rgba(0, 0, 0, 0.15), 0 0 0 1px rgba(0, 0, 0, 0.15);
      box-sizing: border-box; }
.plyr input[type="range"]::-ms-track {
      height: 8px;
      background: transparent;
      border: 0;
      color: transparent; }
.plyr input[type="range"]::-ms-fill-upper {
      height: 8px;
      background: transparent;
      border: 0;
      border-radius: 4px;
      -ms-user-select: none;
          user-select: none; }
.plyr input[type="range"]::-ms-fill-lower {
      height: 8px;
      background: transparent;
      border: 0;
      border-radius: 4px;
      -ms-user-select: none;
          user-select: none;
      background: #3498db; }
.plyr input[type="range"]::-ms-thumb {
      position: relative;
      height: 16px;
      width: 16px;
      background: #fff;
      border: 2px solid transparent;
      border-radius: 100%;
      transition: background .2s ease, border .2s ease, transform .2s ease;
      box-shadow: 0 1px 1px rgba(0, 0, 0, 0.15), 0 0 0 1px rgba(0, 0, 0, 0.15);
      box-sizing: border-box;
      margin-top: 0; }
.plyr input[type="range"]::-ms-tooltip {
      display: none; }
.plyr input[type="range"]:focus {
      outline: 0; }
.plyr input[type="range"]::-moz-focus-outer {
      border: 0; }
.plyr input[type="range"].tab-focus:focus {
      outline-offset: 3px; }
.plyr input[type="range"]:active::-webkit-slider-thumb {
      background: #3498db;
      border-color: #fff;
      transform: scale(1.25); }
.plyr input[type="range"]:active::-moz-range-thumb {
      background: #3498db;
      border-color: #fff;
      transform: scale(1.25); }
.plyr input[type="range"]:active::-ms-thumb {
      background: #3498db;
      border-color: #fff;
      transform: scale(1.25); }
.plyr--video input[type="range"].tab-focus:focus {
  outline: 1px dotted rgba(255, 255, 255, 0.5); }
.plyr--audio input[type="range"].tab-focus:focus {
  outline: 1px dotted rgba(86, 93, 100, 0.5); }
.plyr__sr-only {
  clip: rect(1px, 1px, 1px, 1px);
  overflow: hidden;
  position: absolute !important;
  padding: 0 !important;
  border: 0 !important;
  height: 1px !important;
  width: 1px !important; }
.plyr__video-wrapper {
  position: relative;
  background: #000;
  border-radius: inherit; }
.plyr__video-embed {
  padding-bottom: 56.25%;
  /* 16:9 */
  height: 0;
  border-radius: inherit;
  overflow: hidden;
  z-index: 0; }
.plyr__video-embed iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0;
    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none; }
.plyr__video-embed > div {
    position: relative;
    padding-bottom: 200%;
    transform: translateY(-35.95%); }
.plyr .plyr__video-embed iframe {
  pointer-events: none; }
.plyr video::-webkit-media-text-track-container {
  display: none; }
.plyr__captions {
  display: none;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  padding: 20px;
  transform: translateY(-60px);
  transition: transform 0.3s ease;
  color: #fff;
  font-size: 16px;
  text-align: center;
  font-weight: 400; }
.plyr__captions span {
    border-radius: 2px;
    padding: 3px 10px;
    background: rgba(0, 0, 0, 0.7);
    -webkit-box-decoration-break: clone;
            box-decoration-break: clone;
    line-height: 150%; }
.plyr__captions span:empty {
    display: none; }
@media (min-width: 768px) {
    .plyr__captions {
      font-size: 24px; } }
.plyr--captions-active .plyr__captions {
  display: block; }
.plyr--hide-controls .plyr__captions {
  transform: translateY(-20px); }
@media (min-width: 1024px) {
  .plyr--fullscreen-active .plyr__captions {
    font-size: 32px; } }
.plyr ::-webkit-media-controls {
  display: none; }
.plyr__controls {
  display: flex;
  align-items: center;
  line-height: 1;
  text-align: center;
  pointer-events: none; }
.plyr__controls > * {
    pointer-events: all; }
.plyr__controls > button,
  .plyr__controls .plyr__progress,
  .plyr__controls .plyr__time {
    margin-left: 5px; }
.plyr__controls > button:first-child,
    .plyr__controls .plyr__progress:first-child,
    .plyr__controls .plyr__time:first-child {
      margin-left: 0; }
.plyr__controls .plyr__volume {
    margin-left: 5px; }
.plyr__controls [data-plyr="pause"] {
    margin-left: 0; }
.plyr__controls button {
    position: relative;
    display: inline-block;
    flex-shrink: 0;
    overflow: visible;
    vertical-align: middle;
    padding: 7px;
    border: 0;
    background: transparent;
    border-radius: 3px;
    cursor: pointer;
    transition: background 0.3s ease, color 0.3s ease, opacity 0.3s ease;
    color: inherit; }
.plyr__controls button svg {
      width: 18px;
      height: 18px;
      display: block;
      fill: currentColor; }
.plyr__controls button:focus {
      outline: 0; }
.plyr__controls .icon--exit-fullscreen,
  .plyr__controls .icon--muted,
  .plyr__controls .icon--captions-on {
    display: none; }
@media (min-width: 480px) {
    .plyr__controls > button,
    .plyr__controls .plyr__progress,
    .plyr__controls .plyr__time {
      margin-left: 10px; } }
.plyr--hide-controls .plyr__controls {
  opacity: 0;
  pointer-events: none; }
.plyr--video .plyr__controls {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  padding: 50px 10px 10px;
  background: linear-gradient(rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.5));
  border-bottom-left-radius: inherit;
  border-bottom-right-radius: inherit;
  color: #fff;
  transition: opacity 0.3s ease; }
.plyr--video .plyr__controls button.tab-focus:focus, .plyr--video .plyr__controls button:hover {
    background: #3498db;
    color: #fff; }
.plyr--audio .plyr__controls {
  padding: 10px;
  border-radius: inherit;
  background: #fff;
  border: 1px solid #dbe3e8;
  color: #565D64; }
.plyr--audio .plyr__controls button.tab-focus:focus, .plyr--audio .plyr__controls button:hover {
    background: #3498db;
    color: #fff; }
.plyr__play-large {
  display: none;
  position: absolute;
  z-index: 1;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  padding: 10px;
  background: #3498db;
  border: 4px solid currentColor;
  border-radius: 100%;
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.15);
  color: #fff;
  transition: all 0.3s ease; }
.plyr__play-large svg {
    position: relative;
    left: 2px;
    width: 20px;
    height: 20px;
    display: block;
    fill: currentColor; }
.plyr__play-large:focus {
    outline: 1px dotted rgba(255, 255, 255, 0.5); }
.plyr .plyr__play-large {
  display: inline-block; }
.plyr--audio .plyr__play-large {
  display: none; }
.plyr--playing .plyr__play-large {
  opacity: 0;
  visibility: hidden; }
.plyr__controls [data-plyr="pause"],
.plyr--playing .plyr__controls [data-plyr="play"] {
  display: none; }
.plyr--playing .plyr__controls [data-plyr="pause"] {
  display: inline-block; }
.plyr--fullscreen-active .icon--exit-fullscreen,
.plyr--muted .plyr__controls .icon--muted,
.plyr--captions-active .plyr__controls .icon--captions-on {
  display: block; }
.plyr--fullscreen-active .icon--exit-fullscreen + svg,
  .plyr--muted .plyr__controls .icon--muted + svg,
  .plyr--captions-active .plyr__controls .icon--captions-on + svg {
    display: none; }
.plyr [data-plyr="captions"],
.plyr [data-plyr="fullscreen"] {
  display: none; }
.plyr--captions-enabled [data-plyr="captions"],
.plyr--fullscreen-enabled [data-plyr="fullscreen"] {
  display: inline-block; }
.plyr__tooltip {
  position: absolute;
  z-index: 2;
  bottom: 100%;
  margin-bottom: 10px;
  padding: 5px 7.5px;
  pointer-events: none;
  opacity: 0;
  background: rgba(0, 0, 0, 0.7);
  border-radius: 3px;
  color: #fff;
  font-size: 14px;
  line-height: 1.3;
  transform: translate(-50%, 10px) scale(0.8);
  transform-origin: 50% 100%;
  transition: transform 0.2s 0.1s ease, opacity 0.2s 0.1s ease; }
.plyr__tooltip::before {
    content: "";
    position: absolute;
    width: 0;
    height: 0;
    left: 50%;
    transform: translateX(-50%);
    bottom: -4px;
    border-right: 4px solid transparent;
    border-top: 4px solid rgba(0, 0, 0, 0.7);
    border-left: 4px solid transparent;
    z-index: 2; }
.plyr button:hover .plyr__tooltip,
.plyr button.tab-focus:focus .plyr__tooltip,
.plyr__tooltip--visible {
  opacity: 1;
  transform: translate(-50%, 0) scale(1); }
.plyr button:hover .plyr__tooltip {
  z-index: 3; }
.plyr__controls button:first-child .plyr__tooltip {
  left: 0;
  transform: translate(0, 10px) scale(0.8);
  transform-origin: 0 100%; }
.plyr__controls button:first-child .plyr__tooltip::before {
    left: 16px; }
.plyr__controls button:last-child .plyr__tooltip {
  right: 0;
  transform: translate(0, 10px) scale(0.8);
  transform-origin: 100% 100%; }
.plyr__controls button:last-child .plyr__tooltip::before {
    left: auto;
    right: 16px;
    transform: translateX(50%); }
.plyr__controls button:first-child:hover .plyr__tooltip,
.plyr__controls button:first-child.tab-focus:focus .plyr__tooltip,
.plyr__controls button:first-child .plyr__tooltip--visible,
.plyr__controls button:last-child:hover .plyr__tooltip,
.plyr__controls button:last-child.tab-focus:focus .plyr__tooltip,
.plyr__controls button:last-child .plyr__tooltip--visible {
  transform: translate(0, 0) scale(1); }
.plyr__progress {
  display: none;
  position: relative;
  flex: 1; }
.plyr__progress input[type="range"] {
    position: relative;
    z-index: 2; }
.plyr__progress input[type="range"]::-webkit-slider-runnable-track {
      background: transparent; }
.plyr__progress input[type="range"]::-moz-range-track {
      background: transparent; }
.plyr__progress input[type="range"]::-ms-fill-upper {
      background: transparent; }
.plyr__progress .plyr__tooltip {
    left: 0; }
.plyr .plyr__progress {
  display: inline-block; }
.plyr__progress--buffer,
.plyr__progress--played,
.plyr__volume--display {
  position: absolute;
  left: 0;
  top: 50%;
  width: 100%;
  height: 8px;
  margin: -4px 0 0;
  padding: 0;
  vertical-align: top;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: none;
  border-radius: 100px; }
.plyr__progress--buffer::-webkit-progress-bar,
  .plyr__progress--played::-webkit-progress-bar,
  .plyr__volume--display::-webkit-progress-bar {
    background: transparent; }
.plyr__progress--buffer::-webkit-progress-value,
  .plyr__progress--played::-webkit-progress-value,
  .plyr__volume--display::-webkit-progress-value {
    background: currentColor;
    border-radius: 100px;
    min-width: 8px; }
.plyr__progress--buffer::-moz-progress-bar,
  .plyr__progress--played::-moz-progress-bar,
  .plyr__volume--display::-moz-progress-bar {
    background: currentColor;
    border-radius: 100px;
    min-width: 8px; }
.plyr__progress--buffer::-ms-fill,
  .plyr__progress--played::-ms-fill,
  .plyr__volume--display::-ms-fill {
    border-radius: 100px; }
.plyr__progress--played,
.plyr__volume--display {
  z-index: 1;
  color: #3498db;
  background: transparent;
  transition: none; }
.plyr__progress--played::-webkit-progress-value,
  .plyr__volume--display::-webkit-progress-value {
    min-width: 8px;
    max-width: 99%;
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
    transition: none; }
.plyr__progress--played::-moz-progress-bar,
  .plyr__volume--display::-moz-progress-bar {
    min-width: 8px;
    max-width: 99%;
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
    transition: none; }
.plyr__progress--played::-ms-fill,
  .plyr__volume--display::-ms-fill {
    display: none; }
.plyr__progress--buffer::-webkit-progress-value {
  transition: width 0.2s ease; }
.plyr__progress--buffer::-moz-progress-bar {
  transition: width 0.2s ease; }
.plyr__progress--buffer::-ms-fill {
  transition: width 0.2s ease; }
.plyr--video .plyr__progress--buffer,
.plyr--video .plyr__volume--display {
  background: rgba(255, 255, 255, 0.25); }
.plyr--video .plyr__progress--buffer {
  color: rgba(255, 255, 255, 0.25); }
.plyr--audio .plyr__progress--buffer,
.plyr--audio .plyr__volume--display {
  background: rgba(198, 214, 219, 0.67); }
.plyr--audio .plyr__progress--buffer {
  color: rgba(198, 214, 219, 0.67); }
.plyr--loading .plyr__progress--buffer {
  animation: plyr-progress 1s linear infinite;
  background-size: 25px 25px;
  background-repeat: repeat-x;
  background-image: linear-gradient(-45deg, rgba(0, 0, 0, 0.15) 25%, transparent 25%, transparent 50%, rgba(0, 0, 0, 0.15) 50%, rgba(0, 0, 0, 0.15) 75%, transparent 75%, transparent);
  color: transparent; }
.plyr--video.plyr--loading .plyr__progress--buffer {
  background-color: rgba(255, 255, 255, 0.25); }
.plyr--audio.plyr--loading .plyr__progress--buffer {
  background-color: rgba(198, 214, 219, 0.67); }
.plyr__time {
  display: inline-block;
  vertical-align: middle;
  font-size: 14px; }
.plyr__time + .plyr__time {
  display: none; }
@media (min-width: 768px) {
    .plyr__time + .plyr__time {
      display: inline-block; } }
.plyr__time + .plyr__time::before {
    content: "\2044";
    margin-right: 10px; }
.plyr__volume {
  display: none; }
.plyr .plyr__volume {
  flex: 1;
  position: relative; }
.plyr .plyr__volume input[type="range"] {
    position: relative;
    z-index: 2; }
@media (min-width: 480px) {
    .plyr .plyr__volume {
      display: block;
      max-width: 60px; } }
@media (min-width: 768px) {
    .plyr .plyr__volume {
      max-width: 100px; } }
.plyr--is-ios .plyr__volume,
.plyr--is-ios [data-plyr="mute"] {
  display: none !important; }
.plyr--fullscreen-active {
  height: 100%;
  width: 100%;
  background: #000;
  border-radius: 0 !important; }
.plyr--fullscreen-active video {
    height: 100%; }
.plyr--fullscreen-active .plyr__video-wrapper {
    height: 100%;
    width: 100%; }
.plyr--fullscreen-active .plyr__video-embed {
    overflow: visible; }
.plyr--fullscreen-active.plyr--vimeo .plyr__video-wrapper {
    height: 0;
    top: 50%;
    transform: translateY(-50%); }
.plyr--fullscreen-fallback.plyr--fullscreen-active {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 10000000; }
.plyr {
  background-color: #000;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0; }
.plyr input[type='range']:active::-webkit-slider-thumb {
    background-color: currentColor; }
.plyr input[type='range']:active::-moz-range-thumb {
    background-color: currentColor; }
.plyr input[type='range']:active::-ms-thumb {
    background-color: currentColor; }
.pylr__video-embed {
  height: auto;
  padding: 0; }
.plyr__progress--played {
  color: currentColor; }
.plyr--video .plyr__controls {
  z-index: 1000;
  justify-content: center;
  color: currentColor; }
.plyr--video .plyr__controls button.tab-focus:focus,
  .plyr--video .plyr__controls button:hover {
    background-color: #000;
    color: currentColor; }
.video {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0; }
.video__link {
  position: relative;
  display: block;
  z-index: 20;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0; }
.video__link::before {
    position: relative;
    display: block;
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 30;
    background-color: #000;
    will-change: transform, opacity;
    transition: transform 0.3s ease-in, opacity 0.3s ease-in;
    opacity: 0; }
.video__link::after {
    position: absolute;
    left: 0.625rem;
    bottom: 0.625rem;
    color: #fff;
    font-size: 0.70588rem;
    will-change: transform, opacity;
    transition: transform 0.3s ease-in, opacity 0.3s ease-in;
    display: none;
    content: 'Mit Klick auf den Play-Button wird ein Video von Vimeo bzw. YouTube geladen. Die Datenschutzerklärung dazu habe ich gelesen und verstanden.';
    opacity: 0; }
@media (min-width: 1100px) {
      .video__link::after {
        display: block; } }
.video__link:hover::before, .video__link:active::before, .video__link:focus::before {
    opacity: 0.5; }
.video__link:hover::after, .video__link:active::after, .video__link:focus::after {
    opacity: 1; }
.video__link--playing {
  z-index: -1; }
.video__play {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 40;
  width: 2.5rem;
  height: 2.5rem; }
.video__play .icon--play {
    fill: currentColor; }
.video__placeholder {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: #000;
  z-index: 10;
  width: 100%; }
.video__image {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin-bottom: 0; }
.video__image .image__src {
    left: 0;
    height: 100%;
    max-width: none; }
.burger {
  position: absolute;
  right: 0.625rem;
  top: 1.25rem;
  z-index: 40;
  display: block;
  width: 48px;
  height: 26px;
  background: transparent;
  overflow: hidden;
  padding: 0;
  margin: 0;
  border: 0;
  outline: 0; }
@media (min-width: 720px) {
    .burger {
      display: none;
      visibility: hidden; } }
.burger__line {
  background-color: #000;
  will-change: transform, opacity, left, width;
  transition: transform 0.3s ease-in, opacity 0.3s ease-in, left 0.3s ease-in, width 0.3s ease-in;
  display: block;
  width: 48px;
  height: 3px;
  transform-origin: center center; }
.burger__line:nth-of-type(1) {
    position: absolute;
    top: 0;
    left: 0; }
.burger__line:nth-of-type(2) {
    position: absolute;
    top: 50%;
    transform: translateY(-50%); }
.burger__line:nth-of-type(3) {
    position: absolute;
    bottom: 0;
    left: 0; }
@media (min-width: 720px) {
  .burger--open,
  .burger[aria-expanded='true'] {
    display: none;
    visibility: hidden; } }
.burger--open .burger__line,
.burger[aria-expanded='true'] .burger__line {
  width: 33px;
  left: 11px; }
.burger--open .burger__line:nth-of-type(1),
  .burger[aria-expanded='true'] .burger__line:nth-of-type(1) {
    transform: rotate(45deg);
    transform-origin: top left; }
.burger--open .burger__line:nth-of-type(2),
  .burger[aria-expanded='true'] .burger__line:nth-of-type(2) {
    opacity: 0; }
.burger--open .burger__line:nth-of-type(3),
  .burger[aria-expanded='true'] .burger__line:nth-of-type(3) {
    transform: rotate(-45deg);
    transform-origin: bottom left; }
@media (min-width: 720px) {
  .burger--open {
    display: block;
    visibility: visible; } }
.burger--open .burger__line {
  background-color: #ff8e66; }
.burger--open:hover .burger__line, .burger--open:active .burger__line, .burger--open:focus .burger__line {
  background-color: #98d3bb; }
.header {
  z-index: 40;
  position: relative; }
@media (min-width: 720px) {
    .header {
      position: absolute;
      top: 0;
      left: 0;
      width: 30vw;
      height: 100vh; } }
@media (min-width: 960px) {
    .header {
      padding: 1.25rem;
      width: 25vw; } }
.header__inner {
  padding: 0.625rem;
  padding-top: 0.9375rem;
  background-color: #ff8e66;
  z-index: 40;
  position: relative; }
@media (min-width: 720px) {
    .header__inner {
      position: absolute;
      top: 0;
      right: 0;
      bottom: 0;
      left: 0;
      z-index: 10;
      padding-top: 1.5625rem; } }
@media (min-width: 960px) {
    .header__inner {
      padding-right: 1.25rem;
      padding-left: 1.25rem; } }
.logo {
  font-size: 2.47059rem;
  font-weight: 400;
  line-height: 0.9;
  letter-spacing: 0;
  display: inline-block; }
@media (min-width: 720px) {
    .logo {
      font-size: calc(45px + 1vw);
      line-height: 0.9375; } }
@media (min-width: 1100px) {
    .logo {
      font-size: calc(55px + 1vw); } }
.nav {
  position: absolute;
  top: 95px;
  right: 0;
  background-color: #98d3bb;
  z-index: 20;
  will-change: transform, opacity;
  transition: transform 0.3s ease-in, opacity 0.3s ease-in;
  width: 100vw;
  transform: translateY(-150%); }
@media (min-width: 720px) {
    .nav {
      position: absolute;
      bottom: 0;
      left: 0;
      top: auto;
      right: auto;
      padding: 0.625rem;
      transform: translateY(0);
      width: auto;
      background: transparent; } }
@media (min-width: 960px) {
    .nav {
      padding: 1.25rem; } }
.nav--open {
  transform: translateY(0); }
.nav__list--main {
  font-size: 2.47059rem;
  font-weight: 400;
  line-height: 0.9;
  letter-spacing: 0;
  margin: 0;
  padding-top: 1.5rem;
  padding-bottom: 0.8rem;
  padding-right: 0.625rem;
  padding-left: 0.625rem;
  line-height: 1.1; }
@media (min-width: 720px) {
    .nav__list--main {
      font-size: calc(45px + 1vw);
      line-height: 0.9375; } }
@media (min-width: 1100px) {
    .nav__list--main {
      font-size: calc(55px + 1vw); } }
@media (min-width: 720px) {
    .nav__list--main {
      font-size: 1.35294rem;
      padding-right: 0;
      padding-left: 0;
      padding-top: 0.625rem;
      padding-bottom: 0.625rem; } }
@media (min-width: 720px) {
  .nav__item--main {
    line-height: 1.5;
    padding: 0; } }
.nav__link {
  color: #000; }
.nav__link:hover, .nav__link:active, .nav__link:focus {
    color: #ff8e66; }
@media (min-width: 720px) {
      .nav__link:hover, .nav__link:active, .nav__link:focus {
        color: #98d3bb; } }
.page {
  position: relative;
  display: block;
  overflow: hidden; }
.page__heading {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  border: 0;
  overflow: hidden;
  clip: rect(0 0 0 0); }
.page__heading.focusable:active, .page__heading.focusable:focus {
    position: static;
    width: auto;
    height: auto;
    margin: 0;
    overflow: visible;
    clip: auto; }
.page__main {
  position: relative;
  display: block;
  z-index: 1; }
@media (min-width: 720px) {
    .page__main {
      padding-top: 100vh; } }
.page__mainimage {
  margin-top: -1px;
  margin-bottom: 0;
  z-index: 40;
  background-color: #ff8e66;
  position: relative;
  width: 100%;
  height: calc(100vh - 95px);
  overflow: hidden; }
@media (orientation: landscape) {
    .page__mainimage {
      height: auto; } }
@media (min-width: 720px) {
    .page__mainimage {
      position: absolute;
      right: 0;
      top: 0;
      width: 70vw;
      height: calc(100vh + 1px); } }
@media (min-width: 720px) and (orientation: landscape) {
    .page__mainimage {
      height: calc(100vh + 1px); } }
@media (min-width: 960px) {
    .page__mainimage {
      width: 75vw; } }
.page__mainimage > .image__src {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    max-width: none;
    width: auto;
    height: calc(100vh - 95px); }
@media (orientation: landscape) {
      .page__mainimage > .image__src {
        position: static;
        width: 100%;
        height: auto;
        transform: none; } }
@media (min-width: 720px) {
      .page__mainimage > .image__src {
        height: calc(100vh + 1px); } }
@media (min-width: 720px) and (orientation: landscape) {
    .page__mainimage > .image__src {
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      max-width: none;
      width: auto;
      height: calc(100vh + 1px); } }
.page__top {
  position: fixed;
  bottom: 0.625rem;
  right: 0.8rem;
  background-color: #ff8e66;
  z-index: 20;
  font-size: 1.17647rem;
  font-weight: 400;
  width: 3rem;
  height: 3rem;
  border-radius: 100%; }
.page__top:hover, .page__top:active, .page__top:focus {
    animation: jump 0.3s 0s ease-in ; }
@media (min-width: 720px) {
    .page__top {
      position: fixed;
      bottom: 1.25rem; } }
.page__top__icon {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 2rem;
  height: 2rem; }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIm1haW4uY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL25vcm1hbGl6ZS5jc3Mvbm9ybWFsaXplLmNzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9zd2lwZXIvZGlzdC9jc3Mvc3dpcGVyLmNzcyIsIjEtY29uZmlnL2FuaW1hdGlvbnMuc2NzcyIsIjQtcmVzZXQvZm9udHMuc2NzcyIsIi4uLy4uLzEtY29uZmlnL3NoYXJlZC5qc29uIiwiNC1yZXNldC9mb3Jtcy5zY3NzIiwiMi10b29scy9zcGFjaW5nLnNjc3MiLCIyLXRvb2xzL3V0aWxpdGllcy5zY3NzIiwiNC1yZXNldC9oZWFkaW5ncy5zY3NzIiwiMi10b29scy9mb250cy5zY3NzIiwiNC1yZXNldC9saW5rcy5zY3NzIiwiMi10b29scy9hdHRlbnRpb24uc2NzcyIsIjQtcmVzZXQvbGlzdHMuc2NzcyIsIjQtcmVzZXQvbWVkaWEuc2NzcyIsIjQtcmVzZXQvcm9vdC5zY3NzIiwiMi10b29scy9jb2xvcnMuc2NzcyIsIjEtY29uZmlnL2NvbG9ycy5zY3NzIiwiMS1jb25maWcvYmFzZS11bml0cy5zY3NzIiwiMi10b29scy9tZWRpYXF1ZXJ5LnNjc3MiLCI0LXJlc2V0L3RhYmxlcy5zY3NzIiwiNC1yZXNldC90ZXh0LnNjc3MiLCIuLi9wYXR0ZXJucy9iYXNpY3MvdGV4dC90ZXh0LnNjc3MiLCIuLi9wYXR0ZXJucy9jb21wb25lbnRzL2FjY29yZGlvbi9hY2NvcmRpb24uc2NzcyIsIjItdG9vbHMvYmxvY2suc2NzcyIsIjItdG9vbHMvcmF0aW8tYm94LnNjc3MiLCIyLXRvb2xzL3Bvc2l0aW9uLnNjc3MiLCIyLXRvb2xzL2FuaW1hdGlvbi5zY3NzIiwiLi4vcGF0dGVybnMvY29tcG9uZW50cy9jdXJyZW50L2N1cnJlbnQuc2NzcyIsIi4uL3BhdHRlcm5zL2NvbXBvbmVudHMvZXZlbnQvZXZlbnQuc2NzcyIsIjItdG9vbHMvaGlkZGVuLnNjc3MiLCIyLXRvb2xzL2NlbnRlci5zY3NzIiwiLi4vcGF0dGVybnMvY29tcG9uZW50cy9ldmVudGJ1dHRvbi9ldmVudGJ1dHRvbi5zY3NzIiwiLi4vcGF0dGVybnMvY29tcG9uZW50cy9pY29uL2ljb24uc2NzcyIsIi4uL3BhdHRlcm5zL2NvbXBvbmVudHMvaW1hZ2UvaW1hZ2Uuc2NzcyIsIi4uL3BhdHRlcm5zL2NvbXBvbmVudHMvb3ZlcmxheS9vdmVybGF5LnNjc3MiLCIyLXRvb2xzL3otaW5kZXguc2NzcyIsIi4uL3BhdHRlcm5zL2NvbXBvbmVudHMvcHJlc3MvcHJlc3Muc2NzcyIsIi4uL3BhdHRlcm5zL2NvbXBvbmVudHMvcHJvamVjdC9wcm9qZWN0LnNjc3MiLCIuLi9wYXR0ZXJucy9jb21wb25lbnRzL3NlY3Rpb24tc3RhcnQvc2VjdGlvbi1zdGFydC5zY3NzIiwiLi4vcGF0dGVybnMvY29tcG9uZW50cy9zbGlkZXIvc2xpZGVyLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvcGx5ci9zcmMvc2Nzcy9wbHlyLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvcGx5ci9zcmMvc2Nzcy92YXJpYWJsZXMuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9wbHlyL3NyYy9zY3NzL21peGlucy5zY3NzIiwiLi4vcGF0dGVybnMvY29tcG9uZW50cy92aWRlby92aWRlby5zY3NzIiwiLi4vcGF0dGVybnMvZ2xvYmFscy9idXJnZXIvYnVyZ2VyLnNjc3MiLCIuLi9wYXR0ZXJucy9nbG9iYWxzL2hlYWRlci9oZWFkZXIuc2NzcyIsIi4uL3BhdHRlcm5zL2dsb2JhbHMvbG9nby9sb2dvLnNjc3MiLCIuLi9wYXR0ZXJucy9nbG9iYWxzL25hdi9uYXYuc2NzcyIsIjEtY29uZmlnL2RlZmF1bHRzLnNjc3MiLCIuLi9wYXR0ZXJucy90ZW1wbGF0ZXMvcGFnZS9wYWdlLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsaUJBQWlCO0FDQWpCLDRFQUE0RTtBQUU1RTtnRkFDZ0Y7QUFFaEY7OztHQUdHO0FBRUg7RUFDRSxrQkFBa0IsQ0FBQyxPQUFPO0VBQzFCLCtCQUErQixDQUFD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RUFDbEIsZUFBYyxFQUNmO0FBR0Q7RUNYUSxVQ0hLO0VEYUwsdUJDTHlCO0VGUS9CLFdBQVU7RUFDVixVQUFTLEVBQ1Y7QUFJRDtFQUNFLHNCQUFxQixFQUt0QjtBQU5EO0lBSUksZ0JBQWUsRUFDaEI7QU5nQkg7RU1YRSwwQkFBaUI7S0FBakIsdUJBQWlCO01BQWpCLHNCQUFpQjtVQUFqQixrQkFBaUIsRUFDbEI7QU5hRDtFTVZFLG9CQUFtQixFQUNwQjtBRzlERDtFQ2VFLHNCRkh5RDtFRWlEekQsaUJMNURpRTtFRTJCM0QsVUNISztFRGFMLHVCQ0x5QixFQzdCaEM7QUFFRDtFQ1NFLHNCRkh5RDtFRWlEekQsaUJMNURpRTtFRTJCM0QsVUNISztFRGFMLHVCQ0x5QixFQ3ZCaEM7QUFFRDtFQ0dFLHNCRkh5RDtFRWlEekQsaUJMNURpRTtFRTJCM0QsVUNISztFRGFMLHVCQ0x5QixFQ2pCaEM7QUFFRDs7O0VDSEUsc0JGSHlEO0VFaUR6RCxpQkw1RGlFO0VFMkIzRCxVQ0hLO0VEYUwsdUJDTHlCLEVDVGhDO0FFeEJEO0VBQ0Usc0JBQXFCO0VBQ3JCLG9CQUFtQixFQUtwQjtBQ0xDO0lER0Usc0JBQXFCLEVDQ3RCO0FDTkg7OztFTjRCUSxVQ0hLO0VEYUwsdUJDTHlCO0VENEJ6QixXQ3BDSztFRDhDTCxzQkN0Q3lCLEVLeEJoQztBQVREOzs7Ozs7Ozs7Ozs7O0lOc0NRLGlCQ2JLLEVLakJWO0FBSUg7Ozs7RU5pRFEsV0NwQ0s7RURhTCxpQkNiSztFS1BULGlCQUFnQixFQUNqQjtBQ2pCSDs7Ozs7O0VBTUUsdUJBQXNCLEVBQ3ZCO0FBR0Q7Ozs7RUFJRSxnQkFBZTtFQUNmLGFBQVksRUFDYjtBQUVEO0VQUVEsVUNISztFRGFMLHVCQ0x5QixFTVhoQztBQ3RCRDtFQ2VFLFlDWGdCO0VEZWhCLHVCQ2RnQjtFRkZoQix1QkFBc0I7RUFDdEIsZ0JHSG1CO0VISW5CLDZCQUFvQjtVQUFwQixxQkFBb0I7RUFDcEIsb0RBQW1EO0VBQ25ELHNEQUFxRDtFQUNyRCxrQkdOcUI7RUhPckIsK0JBQXNCO01BQXRCLDJCQUFzQjtVQUF0Qix1QkFBc0IsRUFDdkI7QUFFRDtFQUlJLG9CQUFtQixFQUNwQjtBQUlIO0VMa0JJLHdCTHRDbUQ7RUs0RHJELGlCTDVEaUU7RUsyRWpFLG1CTDNFK0U7RVdrQi9FLHVCQ2RnQjtFRm1CaEIsWUFBVyxFQVlaO0FMS0c7SUFDRSxpQ0x6Q2lELEVLMENsRDtBU3JDRDtJSmVKO01BUU0sY0FBYSxFQUNkO0lBVEw7TUFZTSw0REFBMkQsRUFDNUQsRUFBQTtBQUtMO0VDcEJFLDBCQ2JvQjtFRFNwQixZQ1hnQjtFRnNDaEIsa0JBQWlCLEVBQ2xCO0FBSkQ7RUNwQkUsMEJDYm9CO0VEU3BCLFlDWGdCO0VGc0NoQixrQkFBaUIsRUFDbEI7QUsxQ0Q7RWIyQlEsVUNISztFRGFMLHVCQ0x5QjtFWTlCL0IsWUFBVztFQUNYLDBCQUF5QixFQUMxQjtBQUdEOztFQUVFLFdBQVU7RUFDVixvQkFBbUIsRUFDcEI7QUFHRDtFQUNFLGlCQUFnQixFQUNqQjtBQ2ZEO0VkK0JRLG1CYzlCZ0I7RWQrQmhCLGtCYy9CZ0I7RWRtQ2hCLHVCQ0x5QjtFREt6QixjQ2JLO0VhckJYLGVBQWM7RUFDZCxXQUFVO0VBQ1YsVUFBUztFQUNULHNDQUFxQyxFQUN0QztBQUVEOztFZGtCUSxVQ0hLO0VEYUwsdUJDTHlCLEVhcEJoQztBQUVEOztFQUVFLG1CQUFrQjtFQUNsQix5QkFBd0I7RUFDeEIsZUFBYztFQUNkLGVBQWMsRUFDZjtBQUVEO0VBQ0UsZ0JBQWUsRUFDaEI7QUFFRDtFQUNFLFlBQVcsRUFDWjtBQUVEOzs7O0VYOEJFLGlCTDVEaUU7RUsyRWpFLG1CTDNFcUwsRWdCb0N0TDtBQ0dEO0VaekJFLHNCRkh5RDtFRWlEekQsaUJMNURpRTtFaUJFakUsaUJBQWdCO0VBQ2hCLGtCQUFpQixFQXNDbEI7QUhUSztJR09OO01BakNJLDRCQUEyQjtNQUMzQixvQkFBbUIsRUFrQ3RCLEVBQUE7QUhUSztJR09OO01BNUJJLDRCQUEyQixFQThCOUIsRUFBQTtBQUVEO0VaN0JFLHNCRkh5RDtFRWlEekQsaUJMNURpRSxFaUI2Q2xFO0FBRUQ7RVpqQ0Usc0JGSHlEO0VFaUR6RCxpQkw1RGlFLEVpQmlEbEU7QUFFRDtFWnJDRSxnQkZIeUQ7RUVpRHpELGlCTDVEaUUsRWlCcURsRTtBSHJCSztJR21CTjtNWnJDRSxzQkZIeUQsRWMwQzFELEVBQUE7QUFFRDtFWnpDRSxzQkZIeUQ7RUVpRHpELGlCTDVEaUUsRWlCeURsRTtBQ3hERDtFQ0FFLG1CQUFrQjtFQUNsQixlQUFjO0VERWQsa0JBQWlCLEVBWWxCO0FFZkM7SUFDRSxpQkFBMkMsRUFDNUM7QUZGSDtJQ0FFLG1CQUFrQjtJQUNsQixlQUFjO0lBR1osWUFBVztJREtYLG1DQUE4QyxFQUsvQztBSmlCRztNSS9CTjtRQVlNLG1DQUE4QyxFQUVqRCxFQUFBO0FBR0g7RUdkRSxtQkFvQzBCO0VBcEJwQixPbEJJSztFa0JITCxTbEJHSztFa0JGTCxVbEJFSztFa0JETCxRbEJDSztFZUpYLFlBQVc7RUFDWCxjQUFhO0VBQ2IsK0JBQThCO0VBQzlCLHFCQUFvQixFQUNyQjtBQUVEO0VDekJFLG1CQUFrQjtFQUNsQixlQUFjO0VkWWQsc0JGSHlEO0Vla0J6RCxjTHRCMEI7RUt1QjFCLG9CTHZCMEI7RUt3QjFCLGFBQVk7RUFDWixVQUFTO0VBQ1QsV0FBVTtFQUNWLFdBQVUsRUFPWDtBSlRLO0lJTk47TWJaRSxzQkZIeUQ7TWUyQnZELGVBQXFDO01BQ3JDLHFCQUEyQyxFQUU5QyxFQUFBO0FBRUQ7RVA3QkUsZUNSbUIsRU11Q3BCO0FBRUQ7RVA3QkUsMEJDWm1CO0VEUW5CLFlDWGdCLEVNK0NqQjtBQUVEO0VQdENFLGVDVG9CLEVNaURyQjtBQUVEO0VQdENFLDBCQ2JvQjtFRFNwQixZQ1hnQixFTXdEakI7QUFFRDtFUC9DRSxlQ1JtQixFTXlEcEI7QUFFRDtFUC9DRSx1QkNmZ0I7RURXaEIsZUNSbUIsRU04RHBCO0FBR0Q7RUduRUUsbUJBb0MwQjtFQVBwQixjbEJEeUI7RWtCQ3pCLFVIdUN3QjtFQUM5QixlQUFjO0VBQ2QsMENBQXlDO0VBQ3pDLDJCQUEwQjtFQUMxQixvQkFBbUIsRUFLcEI7QUpqREs7SUl1Q047TUFRSSxhTDVFZ0MsRUs4RW5DLEVBQUE7QUFFRDtFQ2xGRSxtQkFBa0I7RUFDbEIsZUFBYztFR21CZCxtQkFBYTtFQUNiLCtCQUFZO0VKZ0VaLGlCQUFnQjtFQUNoQixTQUFRO0VBQ1IsYUFBWSxFQUtiO0FBVkQ7SUFRSSwyQkFBbUQsRUFDcEQ7QUs3Rkg7RUFDRSxpQlhHZ0I7RVdGaEIsK0NBQXVELEVBQ3hEO0FBRUQ7RVpjRSx1QkNmZ0I7RVZ5RFYsZ0JDNUJ5QjtFb0J6Qi9CLG1CQUFrQixFQXFCbkI7QVRJSztJUzVCTjtNWlVFLFlDWGdCO01XUWQsb0JYSmtCO01XS2xCLCtDQUF1RCxFQWdCMUQsRUFBQTtBVElLO0lTNUJOO01yQjZEUSxvQkNqQ3lCO01Ea0N6QixtQkNsQ3lCLEVvQkpoQyxFQUFBO0FBeEJEO0lyQmlDUSxpQkNiSztJb0JGVCxtQkFBa0IsRUFDbkI7QUFuQkg7SUFzQkksc0JBQXFCLEVBQ3RCO0FUS0c7RVNGTjtJWlpFLHVCQ2ZnQjtJVytCZCxlWDNCa0I7SVc0QmxCLG9DQUE0QyxFQUUvQyxFQUFBO0FBR0Q7RUZwQ0UsbUJBb0MwQjtFQVBwQixjbEJEeUI7RWtCQ3pCLGFsQkR5QjtFRWxCL0Isc0JGSHlEO0VvQmlDekQsb0JYcENrQjtFV3FDbEIsbURBQXlEO0VBQ3pELG9CQUFtQjtFQUNuQixhVnRDd0I7RVV1Q3hCLG9CQUFtQjtFQUNuQixtQkFBa0I7RUFDbEIsMEJBQXlCO0VBQ3pCLHlCQUF3QjtFQUN4QixZVjNDd0IsRVVvRHpCO0FUN0JLO0lTUU47TWxCMUJFLHNCRkh5RDtNb0I2Q3ZELGFWakR3QjtNVWtEeEIsZ0JBQW9DO01BQ3BDLGlCQUFxQztNQUNyQyxrQkFBaUIsRUFFcEIsRUFBQTtBQzlERDtFdEI2RFEsa0JDNUJ5QjtFRHNDekIsc0JDdEN5QjtFUWQvQix1QkNkZ0I7RURVaEIsWUNYZ0I7RVVrQmhCLHdCQUFhO0VBQ2Isb0NBQVk7RUVsQlosbUJBQWtCO0VBQ2xCLGlCQUFnQjtFQUNoQixpQkFBZ0I7RUFDaEIsa0JBQWlCLEVBb0JsQjtBQTVCRDtJYm1CRSx1QkNmZ0I7SURXaEIsWUNWZ0IsRVlRZjtBVm9CRztJVWpDTjtNdEJ1RVEsb0JzQnZEb0IsRUFZM0IsRUFBQTtBVktLO0lVakNOO010QnVFUSxzQkN0Q3lCO01Ec0N6QixvQnNCbkR5QjtNQUM3QixjQUFhO01BQ2IsK0JBQThCLEVBTWpDLEVBQUE7QUE1QkQ7SXRCc0NRLGlCQ2JLLEVxQkVWO0FBR0g7RXRCaUNRLGVDdENLO0VEdUNMLGtCQ3ZDSztFcUJPWCxjQUFhO0VBQ2IsY0FBYSxFQUNkO0FBRUQ7RUNsQ0UsbUJBQWtCO0VBQ2xCLFdBQVU7RUFDVixZQUFXO0VBQ1gsYUFBWTtFQUNaLFdBQVU7RUFDVixVQUFTO0VBQ1QsaUJBQWdCO0VBQ2hCLG9CQUFtQixFRDZCcEI7QUMxQkc7SUFFRSxpQkFBZ0I7SUFDaEIsWUFBVztJQUNYLGFBQVk7SUFDWixVQUFTO0lBQ1Qsa0JBQWlCO0lBQ2pCLFdBQVUsRUFDWDtBRG9CTDtFSG5DRSxtQkFvQzBCO0VBUHBCLE9sQlRLO0VrQlNMLFNsQlRLO0VrQlNMLFVsQlRLO0VxQmlCWCxjWGxDMEIsRVc2QzNCO0FWcEJLO0lVT047TUFLSSxjQUFnQyxFQVFuQyxFQUFBO0FBYkQ7SUhuQ0UsbUJBb0MwQjtJQVBwQixRbEJUSztJa0JTTCxTR2V3QjtJQUM1QixXQUFVO0lBQ1YsY0FBYSxFQUNkO0FBR0g7RUhsREUsbUJBb0MwQjtFQVBwQixTS3pCbUI7RUx5Qm5CLFVLekIwQjtFQUM5QixpQ0FBZ0M7RXJCS2xDLHNCRkh5RDtFRWlEekQsaUJMNURpRTtFd0J5RGpFLGVBQWM7RUFDZCw0REFBMkQ7RUFDM0QseUJBQXdCO0VBQ3hCLG1CQUFrQjtFQUNsQiwwQkFBeUI7RUFDekIsb0JYdkQwQixFVzREM0I7QVZuQ0s7SVVzQk47TUFXSSw2Q0FBNEMsRUFFL0MsRUFBQTtBQUVEO0VBQ0Usb0JBQW1CLEVBWXBCO0FWbERLO0lVcUNOO01IakVFLG1CQW9DMEI7TUFQcEIsU0s1Qm1CO01BQ3ZCLDRCQUEyQjtNckJRN0Isc0JGSHlEO01xQmdFdkQsZVh2RXNCO01Xd0V0QixpQkFBZ0IsRUFNbkIsRUFBQTtBVmxESztJVXFDTjtNQVdJLGNYN0VnQyxFVytFbkMsRUFBQTtBVmxESztFVW9ETjtJQzVERSxjQUFhO0lBQ2IsbUJBQWtCLEVEK0RuQixFQUFBO0FWeERLO0VVMEROO0l0QnBCUSxzQkN0Q3lCO0lxQjZEN0IsZ0JBQWUsRUFFbEIsRUFBQTtBVi9ESztFVWlFTjtJdEIzQlEsc0JDdEN5QjtJcUJvRTdCLGdCQUFlLEVBRWxCLEVBQUE7QUFFRDtFQ2hGRSxjQUFhO0VBQ2IsbUJBQWtCLEVEcUZuQjtBVjlFSztJVXdFTjtNQzNFRSxlQUFTO01BQ1Qsb0JBQW1CLEVEZ0ZwQixFQUFBO0FHL0dEO0VoQm1CRSx1QkNkZ0I7RURVaEIsWUNYZ0I7RWVEaEIsbUJBQWtCO0VBQ2xCLFlBQVcsRUFDWjtBQUVEOztFekJzRFEsa0JDNUJ5QjtFUWQvQix1QkNkZ0I7RURVaEIsWUNYZ0I7RWVRaEIsVUFBUztFQUNULFdBQVU7RUFDVixpQkFBZ0I7RUFDaEIsc0JBQXFCLEVBS3RCO0FiYUs7SWExQk47O016QjJEUSx1QkNqQ3lCO01Ea0N6QixzQkNsQ3lCLEV3QmJoQyxFQUFBO0FBRUQ7RWhCSEUsdUJDZmdCO0VEV2hCLFlDVmdCLEVlMEJqQjtBQVREOztJaEJIRSx1QkNmZ0I7SURXaEIsWUNWZ0IsRWV5QmY7QUMxQkg7RUFDRSxtQkFBa0I7RUFDbEIsZUFBYztFQUNkLHNCQUFxQjtFQUNyQixXQUFVO0VBQ1YsWUFBVztFQUNYLG1CQUFrQixFQUNuQjtBQ1hEO0UzQnNDUSx1QkNMeUIsRTBCL0JoQztBQUVEO0UzQm1FUSx3QkN0Q3lCO0VFbEIvQixzQkZIeUQ7RUVpRHpELGlCTDVEaUUsRTZCTWxFO0FDUEQ7RUw4QkUsZUFBUztFQUNULG9CQUFtQjtFSjFCbkIsZ0JBd0N1QjtFQVhqQixTU2hDYztFVGdDZCxVU2hDcUI7RW5CaUIzQix1QkNmZ0I7RURXaEIsZUNSbUI7RVVlbkIsZ0NBQWE7RUFDYix5REFBWTtFU0FaLGNBZlM7RUREVCxhQUFZO0VBQ1osY0FBYTtFQUNiLDZDQUE0QztFQUM1QywwQ2xCTmdCLEVrQmFqQjtBQWpCRDtJQ3VCRSxZQVBVO0lOU1YsY0FBYTtJQUNiLG1CQUFrQjtJS1hoQixXQUFVLEVBQ1g7QUFHSDtFNUJtQ00saUJXbEQ4QjtFUUNsQyxtQkFvQzBCO0VBcEJwQixPbEJJSztFa0JITCxTbEJHSztFa0JGTCxVbEJFSztFa0JETCxRbEJDSztFMkJIWCxpQkFBZ0IsRUFlakI7QUFsQkQ7SVhqQkUsbUJBQWtCO0lBQ2xCLGVBQWM7SVd1QlosZUFBYztJQUNkLGlCQUFnQixFQUNqQjtBQVRIO0luQkpFLGVDUm1CLEVrQjZCbEI7QXZCbENEO01JYUEsZUNUb0IsRUxBbkI7QXVCaUNIO0VUbENFLG1CQW9DMEI7RUFQcEIsaUJsQkR5QjtFa0JDekIsY2xCRHlCO0VRbEIvQixlQ1JtQixFa0J3RGxCO0FBeEJIO0luQnBCRSwwQkNabUIsRWtCdUNoQjtBdkI1Q0g7SUlhQSxlQ1JtQixFTERsQjtBdUJpQ0g7TW5CcEJFLDBCQ1ptQixFa0I4Q2Q7QUFkUDtJbkJ4QkUsZUNUb0IsRWtCd0RqQjtBQXZCTDtNbkJwQkUsMEJDYm9CLEVrQnVEZjtBRTdEUDtFckJtQkUsMEJDYm9CO0VWNERkLHdCQ2pDeUI7RURrQ3pCLHVCQ2xDeUI7RUQ4QnpCLHFCQzlCeUI7RUQrQnpCLHdCQy9CeUI7RUVsQi9CLHNCRkh5RDtFRWlEekQsaUJMNURpRTtFV2NqRSxZQ1hnQjtFb0JDaEIsY0FBYTtFQUNiLGFBQVk7RUFDWiwrQkFBOEIsRUFtQi9CO0F6QnhCQztJSWFBLGVDUm1CO0lvQklqQixzQkFBcUIsRXpCTHRCO0FPMkJHO0lrQmpDTjtNOUJrRVEsdUJDakN5QjtNRGtDekIsc0JDbEN5QixFNkJQaEMsRUFBQTtBbEJPSztJa0JqQ047TTNCZUUsc0JGSHlEO01FaUR6RCxpQkw1RGlFO01pQkVqRSxpQkFBZ0I7TUFDaEIsa0JBQWlCLEVlc0JsQixFQUFBO0FsQk9LO0lrQmpDTjtNZk9JLDRCQUEyQjtNQUMzQixvQkFBbUIsRWVrQnRCLEVBQUE7QWxCT0s7SWtCakNOO01mWUksNEJBQTJCLEVlYzlCLEVBQUE7QUExQkQ7SUF1QkksY0FBYTtJQUNiLGVBQWMsRUFDZjtBQUdIO0VBQ0UsMEJBQXlCLEVBTTFCO0FsQkZLO0lrQkxOO01BSUksbUJBQWtCO01BQ2xCLFNBQVEsRUFFWCxFQUFBO0FDbkNEO0VBQ0UsZUFBYyxFQU9mO0FuQnlCSztJbUJqQ047TUFJSSxjQUFhO01BQ2IsK0JBQThCO01BQzlCLG9CQUFtQixFQUV0QixFQUFBO0FBRUQ7O0V0QlNFLHVCQ2ZnQjtFRFdoQixlQ1JtQixFcUJRbEI7QUFMSDtFdEJLRSxlQ1JtQixFcUJZbEI7QTFCakJEO0VJYUEsZUNUb0IsRUxBbkI7QTBCd0JIOztFdEJYRSwwQkNib0I7RURTcEIsWUNYZ0IsRXFCK0JmO0FBTEg7RXRCZkUsZUNUb0IsRXFCaUNuQjtBMUJyQ0Q7RUlhQSxlQ1JtQixFTERsQjtBMEI0Q0g7O0V0Qi9CRSx1QkNmZ0I7RURXaEIsZUNUb0IsRXFCaURuQjtBQUxIO0V0Qm5DRSxlQ1RvQixFcUJxRG5CO0ExQnpERDtFSWFBLGVDUm1CLEVMRGxCO0EwQmdFSDs7RXRCbkRFLDBCQ1ptQjtFRFFuQixZQ1hnQixFcUJ1RWY7QUFMSDtFdEJ2REUsZUNSbUIsRXFCd0VsQjtBMUI3RUQ7RUlhQSxlQ1RvQixFTEFuQjtBMEJvRkg7RUFDRSxpQkFBZ0I7RUFDaEIsU0FBUSxFQVVUO0FuQnJFSztJbUJ5RE47TUFLSSxXQUFVLEVBT2I7TUFMRzs7UUFFRSxTQUFRLEVBQ1QsRUFBQTtBQUlMO0U1QnpGRSxnQkZIeUQ7RUVpRHpELGlCTDVEaUU7RUU0RDNELGtCQzVCeUI7RURzQ3pCLHdCQ3RDeUI7RThCMEUvQixjQUFhO0VBQ2IsdUJBQXNCO0VBQ3RCLCtCQUE4QjtFQUM5QixrQkFBaUI7RUFDakIsU0FBUSxFQXVCVDtBbkJyR0s7SW1CdUVOO001QnpGRSxzQkZIeUQsRThCMEgxRCxFQUFBO0FuQnJHSztJbUJ1RU47TS9CakNRLHVCQ3RDeUIsRThCcUdoQyxFQUFBO0FuQnJHSztJbUJ1RU47TS9CakNRLHNCQ3RDeUI7TThCc0Y3QixXQUFVLEVBZWIsRUFBQTtBbkJyR0s7SW1CdUVOO00vQjNDUSxpQkM1QnlCO01Ec0N6Qix1QkN0Q3lCLEU4QnFHaEMsRUFBQTtBQTlCRDtJNUI1QkUsbUJMM0VxTDtJaUMrSG5MLHNCQUFxQixFQUt0QjtBMUJuSUQ7TUlhQSxZQ1ZnQixFTENmO0EwQmtJSDtFNUJ6SEUsc0JGSHlEO0VFaUR6RCxpQkw1RGlFO0VpQkVqRSxpQkFBZ0I7RUFDaEIsa0JBQWlCO0Vma0NYLHFCQ0x5QjtFREt6Qix3QkNMeUIsRThCMEdoQztBbkIxR0s7SW1CdUdOO01oQmpJSSw0QkFBMkI7TUFDM0Isb0JBQW1CLEVnQm1JdEIsRUFBQTtBbkIxR0s7SW1CdUdOO01oQjVISSw0QkFBMkIsRWdCK0g5QixFQUFBO0FBRUQ7RS9CdkdRLGlCQ2JLLEU4QnVIVjtBQ2hKSDtFZkVFLG1CQUFrQjtFQUNsQixlQUFjLEVlRGY7QUFFRDtFSG1CRSxXQVRPO0U3QndCRCxpQmdDaENnQixFQUN2QjtBQUVEO0VUUEUsbUJBQWtCO0VBQ2xCLFdBQVU7RUFDVixZQUFXO0VBQ1gsYUFBWTtFQUNaLFdBQVU7RUFDVixVQUFTO0VBQ1QsaUJBQWdCO0VBQ2hCLG9CQUFtQixFU0VwQjtBVENHO0lBRUUsaUJBQWdCO0lBQ2hCLFlBQVc7SUFDWCxhQUFZO0lBQ1osVUFBUztJQUNULGtCQUFpQjtJQUNqQixXQUFVLEVBQ1g7QVNQTDtFZlhFLG1CQUFrQjtFQUNsQixlQUFjLEVlWWY7QUFFRDtFaEM0Q1Esa0JDNUJ5QjtFUWQvQix1QkNmZ0I7RURXaEIsZUNSbUIsRXNCeUNwQjtBcEJmSztJb0JoQk47TWhDNENRLGlCQzVCeUI7TUVsQi9CLHNCRkh5RDtNRWlEekQsaUJMNURpRSxFa0MrQ2xFLEVBQUE7QXBCZks7SW9CaEJOO003QkZFLHNCRkh5RDtNRWlEekQsaUJMNURpRTtNa0M0Qi9ELGlCQUFnQixFQW1CbkIsRUFBQTtBQS9CRDtJdkJGRSxlQ1JtQixFc0JvQ2xCO0EzQnpDRDtNSWFBLGVDVG9CO01zQitCaEIsc0JBQXFCLEUzQi9CeEI7QTJCV0g7TUF3Qk0s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LFVsQlRLO0lrQlNMLFFsQlRLLEVxQ2dCVjtBMUJSRztFMEJXTjs7SWZuQkUsY0FBYTtJQUNiLG1CQUFrQixFZTBDbkIsRUFBQTtBQXhCRDs7RUFPSSxZQWpEa0I7RUFrRGxCLFdBQTBDLEVBZTNDO0FBdkJIOztJQVdNLHlCQUFtQztJQUNuQywyQkFBMEIsRUFDM0I7QUFiTDs7SUFnQk0sV0FBVSxFQUNYO0FBakJMOztJQW9CTSwwQkFBcUM7SUFDckMsOEJBQTZCLEVBQzlCO0ExQmpDQztFMEJxQ047SWZ4Q0UsZUFBUztJQUNULG9CQUFtQixFZXFEcEIsRUFBQTtBQWREO0U3Qm5ERSwwQkNib0IsRTRCdUVuQjtBQVBIO0U3Qm5ERSwwQkNabUIsRTRCMkVoQjtBQ2xGTDtFVnVCRSxZQWJRO0VVUlIsbUJBQWtCLEVBWW5CO0EzQm1CSztJMkJqQ047TXBCS0UsbUJBb0MwQjtNQWhDdEIsT0FBTTtNQUNOLFFBQU87TW9CSlQsWUFBVztNQUNYLGNBQWEsRUFPaEIsRUFBQTtBM0JtQks7STJCakNOO012QzZEUSxpQkM1QnlCO01zQ3JCN0IsWUFBVyxFQUVkLEVBQUE7QUFFRDtFdkM2Q1Esa0JDNUJ5QjtFRHNDekIsdUJDdEN5QjtFUWQvQiwwQkNib0I7RW1CaUJwQixZQWJRO0VVVVIsbUJBQWtCLEVBV25CO0EzQkVLO0kyQmpCTjtNcEJYRSxtQkFvQzBCO01BcEJwQixPbEJJSztNa0JITCxTbEJHSztNa0JGTCxVbEJFSztNa0JETCxRbEJDSztNNEJGWCxZQVZTO003QjBESCx1QkN0Q3lCLEVzQ0ZoQyxFQUFBO0EzQkVLO0kyQmpCTjtNdkNrRFEsdUJDakN5QjtNRGtDekIsc0JDbEN5QixFc0NGaEMsRUFBQTtBQy9CRDtFckNlRSxzQkZIeUQ7RUVpRHpELGlCTDVEaUU7RWlCRWpFLGlCQUFnQjtFQUNoQixrQkFBaUI7RXlCRmpCLHNCQUFxQixFQUN0QjtBNUI4Qks7STRCakNOO016Qk9JLDRCQUEyQjtNQUMzQixvQkFBbUIsRXlCTHRCLEVBQUE7QTVCOEJLO0k0QmpDTjtNekJZSSw0QkFBMkIsRXlCVDlCLEVBQUE7QUNIRDtFdEJLRSxtQkFvQzBCO0VBUHBCLFV1QmpDWTtFdkJpQ1osU2xCVEs7RVFOWCwwQkNabUI7RW1CZ0JuQixZQVhTO0VUVVQsZ0NBQWE7RUFDYix5REFBWTtFcUJsQlosYUFBWTtFQUNaLDZCQUE0QixFQWE3QjtBN0JjSztJNkJqQ047TXRCS0UsbUJBb0MwQjtNQVBwQixVbEJUSztNa0JTTCxRbEJUSztNa0JTTCxVc0J6QjhCO010QnlCOUIsWXNCekJzQztNekNvRHRDLGtCQzVCeUI7TXdDdEI3Qix5QkFBd0I7TUFDeEIsWUFBVztNQUNYLHdCQUF1QixFQU0xQixFQUFBO0E3QmNLO0k2QmpDTjtNekM2RFEsaUJDNUJ5QixFd0NkaEMsRUFBQTtBQUVEO0VBQ0UseUJBQXdCLEVBQ3pCO0FBR0Q7RXRDWEUsc0JGSHlEO0VFaUR6RCxpQkw1RGlFO0VpQkVqRSxpQkFBZ0I7RUFDaEIsa0JBQWlCO0Vmd0JYLFVDSEs7RUQ4Q0wsb0J5QzFDbUI7RXpDMENuQix1QnlDMUM2QjtFekNxQzdCLHdCQ2pDeUI7RURrQ3pCLHVCQ2xDeUI7RXdDSC9CLGlCQUFnQixFQU1qQjtBN0JISztJNkJQTjtNMUJuQkksNEJBQTJCO01BQzNCLG9CQUFtQixFMEI0QnRCLEVBQUE7QTdCSEs7STZCUE47TTFCZEksNEJBQTJCLEUwQndCOUIsRUFBQTtBN0JISztJNkJQTjtNdENYRSxzQkZIeUQ7TURzRG5ELGlCQ3pDSztNRDBDTCxnQkMxQ0s7TURzQ0wsc0JDOUJ5QjtNRCtCekIseUJDL0J5QixFd0NHaEMsRUFBQTtBN0JISztFNkJLTjtJQUVJLGlCQUFnQjtJQUNoQixXQUFVLEVBRWIsRUFBQTtBQUVEO0VoQzlCRSxZQ1hnQixFK0JtRGpCO0FwQ3JEQztJSWFBLGVDVG9CLEVMQW5CO0FPMkJHO01QL0JKO1FJYUEsZUNSbUIsRUxEbEIsRUFBQTtBc0NKSDtFMUJBRSxtQkFBa0I7RUFDbEIsZUFBYztFMEJDZCxpQkFBZ0IsRUFDakI7QUFFRDtFcEJMRSxtQkFBa0I7RUFDbEIsV0FBVTtFQUNWLFlBQVc7RUFDWCxhQUFZO0VBQ1osV0FBVTtFQUNWLFVBQVM7RUFDVCxpQkFBZ0I7RUFDaEIsb0JBQW1CLEVvQkFwQjtBcEJHRztJQUVFLGlCQUFnQjtJQUNoQixZQUFXO0lBQ1gsYUFBWTtJQUNaLFVBQVM7SUFDVCxrQkFBaUI7SUFDakIsV0FBVSxFQUNYO0FvQlRMO0UxQlRFLG1CQUFrQjtFQUNsQixlQUFjO0VZb0JkLFdBVE8sRWNJUjtBL0JlSztJK0J0Qk47TUFLSSxtQkFBa0IsRUFFckIsRUFBQTtBQUVEO0UzQ2tCUSxpQjJDakJnQjtFM0NpQmhCLGlCQ2JLO0U0QkZYLFlBYlE7RXBCU1IsMEJDYm9CO0VpQ2tCcEIsbUJBQWtCO0VBQ2xCLFlBQVc7RUFDWCwyQkFBdUM7RUFDdkMsaUJBQWdCLEVBNENqQjtBL0I3REc7SStCVUo7TUFVSSxhQUFZLEVBeUNmLEVBQUE7QS9CdENLO0krQmJOO014QmZFLG1CQW9DMEI7TUFQcEIsU2xCVEs7TWtCU0wsT2xCVEs7TTBDVVQsWUFBVztNQUNYLDBCQUF5QixFQW1DNUIsRUFBQTtBL0I3REc7SStCVUo7TUFtQk0sMEJBQXlCLEVBZ0M5QixFQUFBO0EvQnRDSztJK0JiTjtNQXdCSSxZQUFXLEVBMkJkLEVBQUE7QUFuREQ7SXhCZkUsbUJBb0MwQjtJQVBwQixTS3pCbUI7SUx5Qm5CLFVLekIwQjtJQUM5QixpQ0FBZ0M7SW1CdUNoQyxnQkFBZTtJQUNmLFlBQVc7SUFDWCwyQkFBdUMsRUFtQnhDO0EvQjVEQztNK0JVSjtRQWtDTSxpQkFBZ0I7UUFDaEIsWUFBVztRQUNYLGFBQVk7UUFDWixnQkFBZSxFQWFsQixFQUFBO0EvQnJDRztNK0JiTjtRQXlDTSwwQkFBeUIsRUFTNUIsRUFBQTtBL0I1REM7SStCVUo7TXhCZkUsbUJBb0MwQjtNQVBwQixTS3pCbUI7TUx5Qm5CLFVLekIwQjtNQUM5QixpQ0FBZ0M7TW1CdUQ1QixnQkFBZTtNQUNmLFlBQVc7TUFDWCwwQkFBeUIsRUFHOUIsRUFBQTtBQUdIO0V4QnBFRSxnQkF3Q3VCO0VBWGpCLGlCbEJEeUI7RWtCQ3pCLGN3QndDd0I7RWxDdkQ5QiwwQkNib0I7RW1CaUJwQixZQVhTO0UxQkdULHNCRkh5RDtFRWlEekQsaUJMNURpRTtFNkM2RWpFLFlBOUVrQjtFQStFbEIsYUEvRWtCO0VBZ0ZsQixvQkFBbUIsRUFTcEI7QXRDdkZDO0llK0JFLGlDQUFnRCxFZjNCakQ7QU8yQkc7SStCd0NOO014QnBFRSxnQkF3Q3VCO01BWGpCLGdCbEJEeUIsRTBDd0RoQyxFQUFBO0FBRUQ7RXhCdEZFLG1CQW9DMEI7RUFQcEIsU0t6Qm1CO0VMeUJuQixVS3pCMEI7RUFDOUIsaUNBQWdDO0VtQm1GbEMsWUFBMkI7RUFDM0IsYUFBNEIsRUFDN0IiLCJmaWxlIjoibWFpbi5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyJAY2hhcnNldCBcIlVURi04XCI7XG5AaW1wb3J0IHVybChub3JtYWxpemUuY3NzL25vcm1hbGl6ZS5jc3MpO1xuQGltcG9ydCB1cmwoc3dpcGVyL2Rpc3QvY3NzL3N3aXBlci5jc3MpO1xuQGtleWZyYW1lcyBqdW1wIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsgfVxuICA1MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjAlKTsgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7IH0gfVxuXG5AZm9udC1mYWNlIHtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9kb21haW5lLndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCIuLi9mb250cy9kb21haW5lLndvZmZcIikgZm9ybWF0KFwid29mZlwiKTtcbiAgZm9udC1mYW1pbHk6IERvbWFpbmU7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC1kaXNwbGF5OiBzd2FwOyB9XG5cbkBmb250LWZhY2Uge1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL2RvbWFpbmUtaXRhbGljLndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCIuLi9mb250cy9kb21haW5lLWl0YWxpYy53b2ZmXCIpIGZvcm1hdChcIndvZmZcIik7XG4gIGZvbnQtZmFtaWx5OiBEb21haW5lO1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGZvbnQtZGlzcGxheTogc3dhcDsgfVxuXG5bdHlwZT0ndGV4dCddLFxuW3R5cGU9J3RlbCddLFxuW3R5cGU9J2VtYWlsJ10sXG5bdHlwZT0nc2VhcmNoJ10sXG5bdHlwZT0nbnVtYmVyJ10sXG5bdHlwZT0ndXJsJ10sXG5bdHlwZT0ncGFzc3dvcmQnXSxcblt0eXBlPSdkYXRlJ10sXG50ZXh0YXJlYSB7XG4gIHdpZHRoOiAxMDAlO1xuICBib3JkZXI6IDFweCBzb2xpZCBjdXJyZW50Q29sb3I7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGFwcGVhcmFuY2U6IG5vbmU7IH1cblxuYnV0dG9uLFxuW3R5cGU9J3N1Ym1pdCddIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBib3JkZXI6IDFweCBzb2xpZCBjdXJyZW50Q29sb3I7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGFwcGVhcmFuY2U6IG5vbmU7IH1cblxudGV4dGFyZWEge1xuICByZXNpemU6IHZlcnRpY2FsO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wOyB9XG5cbnNlbGVjdCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuZmllbGRzZXQge1xuICBtYXJnaW46IDA7XG4gIG1hcmdpbi1ib3R0b206IDEuMjVyZW07XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogMDsgfVxuXG5sYWJlbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICBsYWJlbFtmb3JdIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7IH1cblxuW3Vuc2VsZWN0YWJsZV0ge1xuICB1c2VyLXNlbGVjdDogbm9uZTsgfVxuXG5bZGlzYWJsZWRdIHtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuXG5oMSB7XG4gIGZvbnQtc2l6ZTogMi40NzA1OXJlbTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbWFyZ2luOiAwO1xuICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtOyB9XG5cbmgyIHtcbiAgZm9udC1zaXplOiAyLjExNzY1cmVtO1xuICBmb250LXdlaWdodDogNDAwO1xuICBtYXJnaW46IDA7XG4gIG1hcmdpbi1ib3R0b206IDEuMjVyZW07IH1cblxuaDMge1xuICBmb250LXNpemU6IDEuMTc2NDdyZW07XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIG1hcmdpbjogMDtcbiAgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTsgfVxuXG5oNCxcbmg1LFxuaDYge1xuICBmb250LXNpemU6IDAuNzA1ODhyZW07XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIG1hcmdpbjogMDtcbiAgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTsgfVxuXG5hIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjb2xvcjogY3VycmVudENvbG9yOyB9XG4gIGE6aG92ZXIsIGE6YWN0aXZlLCBhOmZvY3VzIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cblxudWwsXG5kbCxcbm9sIHtcbiAgbWFyZ2luOiAwO1xuICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtO1xuICBwYWRkaW5nOiAwO1xuICBwYWRkaW5nLWxlZnQ6IDEuMjVyZW07IH1cbiAgdWwgdWwsXG4gIGRsIHVsLFxuICBvbCB1bCwgdWxcbiAgZGwsXG4gIGRsXG4gIGRsLFxuICBvbFxuICBkbCwgdWxcbiAgb2wsXG4gIGRsXG4gIG9sLFxuICBvbFxuICBvbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG5uYXYgdWwsXG5uYXYgb2wsXG5maWVsZHNldCB1bCxcbmZpZWxkc2V0IG9sIHtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTsgfVxuXG5hdWRpbyxcbmNhbnZhcyxcbmlmcmFtZSxcbmltZyxcbnN2ZyxcbnZpZGVvIHtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuXG5hdWRpbyxcbmlmcmFtZSxcbmltZyxcbnZpZGVvIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87IH1cblxuZmlndXJlIHtcbiAgbWFyZ2luOiAwO1xuICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtOyB9XG5cbjpyb290IHtcbiAgY29sb3I6ICMwMDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGZvbnQtc2l6ZTogMTdweDtcbiAgZm9udC1rZXJuaW5nOiBub3JtYWw7XG4gIGZvbnQtdmFyaWFudC1saWdhdHVyZXM6IGNvbW1vbi1saWdhdHVyZXMgY29udGV4dHVhbDtcbiAgZm9udC1mZWF0dXJlLXNldHRpbmdzOiAna2VybicsICdsaWdhJywgJ2NsaWcnLCAnY2FsdCc7XG4gIGxpbmUtaGVpZ2h0OiAxLjI1O1xuICB0ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyB9XG5cbiosICo6OmJlZm9yZSwgKjo6YWZ0ZXIge1xuICBib3gtc2l6aW5nOiBpbmhlcml0OyB9XG5cbmJvZHkge1xuICBmb250LWZhbWlseTogc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICB3aWR0aDogMTAwJTsgfVxuICAuZm9udHMtbG9hZGVkIGJvZHkge1xuICAgIGZvbnQtZmFtaWx5OiBEb21haW5lLCBzYW5zLXNlcmlmOyB9XG4gIEBtZWRpYSBwcmludCB7XG4gICAgYm9keSAqIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICBib2R5OjphZnRlciB7XG4gICAgICBjb250ZW50OiAnUGxlYXNlLCBkbyBub3Qgd2FzdGUgcGFwZXIgYnkgcHJpbnRpbmcgd2VicGFnZXMuJzsgfSB9XG5cbjo6c2VsZWN0aW9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmOGU2NjtcbiAgY29sb3I6ICMwMDA7XG4gIHRleHQtc2hhZG93OiBub25lOyB9XG5cbnRhYmxlIHtcbiAgbWFyZ2luOiAwO1xuICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtO1xuICB3aWR0aDogMTAwJTtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTsgfVxuXG50ZCxcbnRoIHtcbiAgcGFkZGluZzogMDtcbiAgdmVydGljYWwtYWxpZ246IHRvcDsgfVxuXG50aCB7XG4gIHRleHQtYWxpZ246IGxlZnQ7IH1cblxuaHIge1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtO1xuICBtYXJnaW4tdG9wOiAwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDkwJTtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgY3VycmVudENvbG9yOyB9XG5cbnByZSxcbnAge1xuICBtYXJnaW46IDA7XG4gIG1hcmdpbi1ib3R0b206IDEuMjVyZW07IH1cblxuc3ViLFxuc3VwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIGZvbnQtc2l6ZTogNzUlO1xuICBsaW5lLWhlaWdodDogMDsgfVxuXG5zdWIge1xuICBib3R0b206IC0wLjI1ZW07IH1cblxuc3VwIHtcbiAgdG9wOiAtMC41ZW07IH1cblxuc3Ryb25nLFxuYixcbmksXG5lbSB7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYzsgfVxuXG4udGV4dC0taHVnZSB7XG4gIGZvbnQtc2l6ZTogMi40NzA1OXJlbTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IDAuOTtcbiAgbGV0dGVyLXNwYWNpbmc6IDA7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDcyMHB4KSB7XG4gICAgLnRleHQtLWh1Z2Uge1xuICAgICAgZm9udC1zaXplOiBjYWxjKDQ1cHggKyAxdncpO1xuICAgICAgbGluZS1oZWlnaHQ6IDAuOTM3NTsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMTAwcHgpIHtcbiAgICAudGV4dC0taHVnZSB7XG4gICAgICBmb250LXNpemU6IGNhbGMoNTVweCArIDF2dyk7IH0gfVxuXG4udGV4dC0tbGFyZ2VyIHtcbiAgZm9udC1zaXplOiAyLjExNzY1cmVtO1xuICBmb250LXdlaWdodDogNDAwOyB9XG5cbi50ZXh0LS1sYXJnZSB7XG4gIGZvbnQtc2l6ZTogMS4xNzY0N3JlbTtcbiAgZm9udC13ZWlnaHQ6IDQwMDsgfVxuXG4udGV4dC0tZGVmYXVsdCB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgZm9udC13ZWlnaHQ6IDQwMDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTEwMHB4KSB7XG4gICAgLnRleHQtLWRlZmF1bHQge1xuICAgICAgZm9udC1zaXplOiAxLjM1Mjk0cmVtOyB9IH1cblxuLnRleHQtLXNtYWxsIHtcbiAgZm9udC1zaXplOiAwLjcwNTg4cmVtO1xuICBmb250LXdlaWdodDogNDAwOyB9XG5cbi5hY2NvcmRpb24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtaW4taGVpZ2h0OiAyMjBweDsgfVxuICAuYWNjb3JkaW9uOjpiZWZvcmUge1xuICAgIHBhZGRpbmctdG9wOiA0NSU7IH1cbiAgLmFjY29yZGlvbjo6YmVmb3JlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY29udGVudDogJyc7XG4gICAgcGFkZGluZy10b3A6IGNhbGMoNTYuMjUlIC0gNC4ycmVtKTsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA5NjBweCkge1xuICAgICAgLmFjY29yZGlvbjo6YmVmb3JlIHtcbiAgICAgICAgcGFkZGluZy10b3A6IGNhbGMoNTYuMjUlIC0gNS45cmVtKTsgfSB9XG5cbi5hY2NvcmRpb25fX2lubmVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoOyB9XG5cbi5hY2NvcmRpb25fX2hlYWRlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogMS4wNTg4MnJlbTtcbiAgd2lkdGg6IDIuNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDIuNXJlbTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBib3JkZXI6IDA7XG4gIG91dGxpbmU6IDA7XG4gIHBhZGRpbmc6IDA7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDk2MHB4KSB7XG4gICAgLmFjY29yZGlvbl9faGVhZGVyIHtcbiAgICAgIGZvbnQtc2l6ZTogMi4xMTc2NXJlbTtcbiAgICAgIHdpZHRoOiAzLjc1cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDMuNzVyZW07IH0gfVxuXG4uYWNjb3JkaW9uX19jb250ZW50LS1tdXNpayB7XG4gIGNvbG9yOiAjOThkM2JiOyB9XG5cbi5hY2NvcmRpb25fX2hlYWRlci0tbXVzaWsge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjOThkM2JiO1xuICBjb2xvcjogIzAwMDsgfVxuXG4uYWNjb3JkaW9uX19jb250ZW50LS1saXZlLWF1dG9yIHtcbiAgY29sb3I6ICNmZjhlNjY7IH1cblxuLmFjY29yZGlvbl9faGVhZGVyLS1saXZlLWF1dG9yIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmOGU2NjtcbiAgY29sb3I6ICMwMDA7IH1cblxuLmFjY29yZGlvbl9fY29udGVudC0tbW9kZXJhdGlvbiB7XG4gIGNvbG9yOiAjOThkM2JiOyB9XG5cbi5hY2NvcmRpb25fX2hlYWRlci0tbW9kZXJhdGlvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG4gIGNvbG9yOiAjOThkM2JiOyB9XG5cbi5hY2NvcmRpb25fX2hlYWRlcl9faW5uZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMC42MjVyZW07XG4gIGxlZnQ6IDUwJTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKSB0cmFuc2xhdGVZKC01MCUpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiB0b3AgbGVmdDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogOTYwcHgpIHtcbiAgICAuYWNjb3JkaW9uX19oZWFkZXJfX2lubmVyIHtcbiAgICAgIHRvcDogMS4yNXJlbTsgfSB9XG5cbi5hY2NvcmRpb25fX2NvbnRlbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWxsLWNoYW5nZTogd2lkdGg7XG4gIHRyYW5zaXRpb246IHdpZHRoIDAuM3MgZWFzZS1pbjtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMTAwJTsgfVxuICAuYWNjb3JkaW9uX19jb250ZW50W2FyaWEtaGlkZGVuPSdmYWxzZSddIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gNy41cmVtKTsgfVxuXG4uY3VycmVudCB7XG4gIGJhY2tncm91bmQ6ICMwMDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWN1cnJlbnRjb2xvciwgI2Y2ZTNhNSk7IH1cblxuLmN1cnJlbnRfX2NvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgcGFkZGluZzogMi41cmVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDcyMHB4KSB7XG4gICAgLmN1cnJlbnRfX2NvdmVyIHtcbiAgICAgIGNvbG9yOiAjMDAwO1xuICAgICAgYmFja2dyb3VuZDogI2Y2ZTNhNTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWN1cnJlbnRjb2xvciwgI2Y2ZTNhNSk7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogOTYwcHgpIHtcbiAgICAuY3VycmVudF9fY292ZXIge1xuICAgICAgcGFkZGluZy1yaWdodDogNXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogNXJlbTsgfSB9XG4gIC5jdXJyZW50X19jb3ZlciAuY3VycmVudF9faW1hZ2Uge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5jdXJyZW50X19jb3ZlciAuaW1hZ2VfX3NyYyB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3MjBweCkge1xuICAuY3VycmVudF9fY29udGVudCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgICBjb2xvcjogI2Y2ZTNhNTtcbiAgICBjb2xvcjogdmFyKC0tY3VycmVudGNvbG9yLCAjZjZlM2E1KTsgfSB9XG5cbi5jdXJyZW50X19uZXcge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDEuMjVyZW07XG4gIHRvcDogMS4yNXJlbTtcbiAgZm9udC1zaXplOiAxLjM1Mjk0cmVtO1xuICBiYWNrZ3JvdW5kOiAjNjliZmQ4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jdXJyZW50aGlnaGxpZ2h0LCAjNjliZmQ4KTtcbiAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgaGVpZ2h0OiA1cmVtO1xuICBsaW5lLWhlaWdodDogNS4ycmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHRyYW5zZm9ybTogcm90YXRlKC01ZGVnKTtcbiAgd2lkdGg6IDVyZW07IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDk2MHB4KSB7XG4gICAgLmN1cnJlbnRfX25ldyB7XG4gICAgICBmb250LXNpemU6IDIuMTE3NjVyZW07XG4gICAgICBsZWZ0OiAyLjVyZW07XG4gICAgICB3aWR0aDogNi44NzVyZW07XG4gICAgICBoZWlnaHQ6IDYuODc1cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDdyZW07IH0gfVxuXG4uZXZlbnQge1xuICBwYWRkaW5nOiAwLjYyNXJlbTtcbiAgcGFkZGluZy1yaWdodDogMi41cmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBjb2xvcjogIzAwMDtcbiAgd2lsbC1jaGFuZ2U6IG1heC1oZWlnaHQ7XG4gIHRyYW5zaXRpb246IG1heC1oZWlnaHQgMC4zcyBlYXNlLWluO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG1pbi1oZWlnaHQ6IDYwcHg7XG4gIG1heC1oZWlnaHQ6IDE1MHB4OyB9XG4gIC5ldmVudDpudGgtY2hpbGQoMm4pIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuICAgIGNvbG9yOiAjZmZmOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3MjBweCkge1xuICAgIC5ldmVudCB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDM0MHB4OyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDk2MHB4KSB7XG4gICAgLmV2ZW50IHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDcuNXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMzkwcHg7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9IH1cbiAgLmV2ZW50IHAge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLmV2ZW50LS1oaWRkZW4ge1xuICBwYWRkaW5nLXRvcDogMDtcbiAgcGFkZGluZy1ib3R0b206IDA7XG4gIG1pbi1oZWlnaHQ6IDA7XG4gIG1heC1oZWlnaHQ6IDA7IH1cblxuLmV2ZW50X190aXRsZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDFweDtcbiAgaGVpZ2h0OiAxcHg7XG4gIG1hcmdpbjogLTFweDtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjbGlwOiByZWN0KDAgMCAwIDApOyB9XG4gIC5ldmVudF9fdGl0bGUuZm9jdXNhYmxlOmFjdGl2ZSwgLmV2ZW50X190aXRsZS5mb2N1c2FibGU6Zm9jdXMge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbjogMDtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICBjbGlwOiBhdXRvOyB9XG5cbi5ldmVudF9fdGlja2V0cyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICB3aWR0aDogMi41cmVtOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA5NjBweCkge1xuICAgIC5ldmVudF9fdGlja2V0cyB7XG4gICAgICB3aWR0aDogNy41cmVtOyB9IH1cbiAgLmV2ZW50X190aWNrZXRzIC5ldmVudF9fZG90cyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiA1cHg7XG4gICAgd2lkdGg6IDVweDtcbiAgICBoZWlnaHQ6IDI0NXB4OyB9XG5cbi5ldmVudF9fdGlja2V0c19fbGluayB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gIGZvbnQtc2l6ZTogMC43MDU4OHJlbTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSB0cmFuc2xhdGVYKC01MCUpIHJvdGF0ZSgtOTBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgbGluZS1oZWlnaHQ6IDIuNXJlbTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogOTYwcHgpIHtcbiAgICAuZXZlbnRfX3RpY2tldHNfX2xpbmsge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHRyYW5zbGF0ZVgoLTUwJSk7IH0gfVxuXG4uZXZlbnRfX2RhdGUge1xuICB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3MjBweCkge1xuICAgIC5ldmVudF9fZGF0ZSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgIGZvbnQtc2l6ZTogMi45NDExOHJlbTtcbiAgICAgIGxlZnQ6IDAuNjI1cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDAuOTsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA5NjBweCkge1xuICAgIC5ldmVudF9fZGF0ZSB7XG4gICAgICBsZWZ0OiAxLjI1cmVtOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDcyMHB4KSB7XG4gIC5ldmVudF9fZGF0ZV9fdGltZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogOTYwcHgpIHtcbiAgLmV2ZW50X19pbmZvcyB7XG4gICAgcGFkZGluZy1yaWdodDogMi41cmVtO1xuICAgIGZsZXg6IDEgMCAyODBweDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA5NjBweCkge1xuICAuZXZlbnRfX21ldGEge1xuICAgIHBhZGRpbmctcmlnaHQ6IDIuNXJlbTtcbiAgICBmbGV4OiAxIDAgMTgwcHg7IH0gfVxuXG4uZXZlbnRfX21ldGFfX3RpbWUge1xuICBkaXNwbGF5OiBub25lO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDk2MHB4KSB7XG4gICAgLmV2ZW50X19tZXRhX190aW1lIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTsgfSB9XG5cbi5ldmVudGJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGNvbG9yOiAjMDAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi5ldmVudGJ1dHRvbl9fbW9yZSxcbi5ldmVudGJ1dHRvbl9fbGVzcyB7XG4gIHBhZGRpbmc6IDAuNjI1cmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBjb2xvcjogIzAwMDtcbiAgYm9yZGVyOiAwO1xuICBvdXRsaW5lOiAwO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDk2MHB4KSB7XG4gICAgLmV2ZW50YnV0dG9uX19tb3JlLFxuICAgIC5ldmVudGJ1dHRvbl9fbGVzcyB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxLjI1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAxLjI1cmVtOyB9IH1cblxuLmV2ZW50YnV0dG9uLS1ldmVuIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgY29sb3I6ICNmZmY7IH1cbiAgLmV2ZW50YnV0dG9uLS1ldmVuIC5ldmVudGJ1dHRvbl9fbW9yZSxcbiAgLmV2ZW50YnV0dG9uLS1ldmVuIC5ldmVudGJ1dHRvbl9fbGVzcyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgICBjb2xvcjogI2ZmZjsgfVxuXG4uaWNvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAtMC4wNjI1ZW07XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDFlbTtcbiAgaGVpZ2h0OiAxZW07XG4gIGZpbGw6IGN1cnJlbnRDb2xvcjsgfVxuXG4uaW1hZ2Uge1xuICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtOyB9XG5cbi5pbWFnZV9fY2FwdGlvbiB7XG4gIHBhZGRpbmctdG9wOiAwLjE1NjI1cmVtO1xuICBmb250LXNpemU6IDAuNzA1ODhyZW07XG4gIGZvbnQtd2VpZ2h0OiA0MDA7IH1cblxuLm92ZXJsYXkge1xuICBkaXNwbGF5OiBibG9jaztcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuICBjb2xvcjogIzk4ZDNiYjtcbiAgd2lsbC1jaGFuZ2U6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3MgZWFzZS1pbiwgb3BhY2l0eSAwLjNzIGVhc2UtaW47XG4gIHotaW5kZXg6IDEwMDA7XG4gIHdpZHRoOiAxMDB2dztcbiAgaGVpZ2h0OiAxMDB2aDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHRyYW5zbGF0ZVkoLTUwJSk7XG4gIGJveC1zaGFkb3c6IDAgMCA1cmVtIDAgcmdiYSgwLCAwLCAwLCAwLjcpOyB9XG4gIC5vdmVybGF5W2FyaWEtaGlkZGVuPSd0cnVlJ10ge1xuICAgIHotaW5kZXg6IC0xO1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIG9wYWNpdHk6IDA7IH1cblxuLm92ZXJsYXlfX2NvbnRlbnQge1xuICBwYWRkaW5nOiAxLjI1cmVtO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgb3ZlcmZsb3cteTogYXV0bzsgfVxuICAub3ZlcmxheV9fY29udGVudCA+IGRpdiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIG1heC13aWR0aDogODAwcHg7IH1cbiAgLm92ZXJsYXlfX2NvbnRlbnQgYSB7XG4gICAgY29sb3I6ICM5OGQzYmI7IH1cbiAgICAub3ZlcmxheV9fY29udGVudCBhOmhvdmVyLCAub3ZlcmxheV9fY29udGVudCBhOmFjdGl2ZSwgLm92ZXJsYXlfX2NvbnRlbnQgYTpmb2N1cyB7XG4gICAgICBjb2xvcjogI2ZmOGU2NjsgfVxuXG4ub3ZlcmxheV9fY2xvc2UuYnVyZ2VyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogLTAuNjI1cmVtO1xuICB0b3A6IDAuNjI1cmVtO1xuICBjb2xvcjogIzk4ZDNiYjsgfVxuICAub3ZlcmxheV9fY2xvc2UuYnVyZ2VyIC5idXJnZXJfX2xpbmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM5OGQzYmI7IH1cbiAgLm92ZXJsYXlfX2Nsb3NlLmJ1cmdlcjpob3ZlciwgLm92ZXJsYXlfX2Nsb3NlLmJ1cmdlcjphY3RpdmUsIC5vdmVybGF5X19jbG9zZS5idXJnZXI6Zm9jdXMge1xuICAgIGNvbG9yOiAjOThkM2JiOyB9XG4gICAgLm92ZXJsYXlfX2Nsb3NlLmJ1cmdlcjpob3ZlciAuYnVyZ2VyX19saW5lLCAub3ZlcmxheV9fY2xvc2UuYnVyZ2VyOmFjdGl2ZSAuYnVyZ2VyX19saW5lLCAub3ZlcmxheV9fY2xvc2UuYnVyZ2VyOmZvY3VzIC5idXJnZXJfX2xpbmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzk4ZDNiYjsgfVxuICAub3ZlcmxheV9fY2xvc2UuYnVyZ2VyOmhvdmVyIHtcbiAgICBjb2xvcjogI2ZmOGU2NjsgfVxuICAgIC5vdmVybGF5X19jbG9zZS5idXJnZXI6aG92ZXIgLmJ1cmdlcl9fbGluZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmY4ZTY2OyB9XG5cbi5wcmVzcyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZjhlNjY7XG4gIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICBwYWRkaW5nLXRvcDogMC4yNXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDAuMjVyZW07XG4gIGZvbnQtc2l6ZTogMi4xMTc2NXJlbTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgY29sb3I6ICMwMDA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHdpZHRoOiAxMDB2dztcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9XG4gIC5wcmVzczpob3ZlciwgLnByZXNzOmFjdGl2ZSwgLnByZXNzOmZvY3VzIHtcbiAgICBjb2xvcjogIzk4ZDNiYjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDcyMHB4KSB7XG4gICAgLnByZXNzIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDEuMjVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDEuMjVyZW07IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogOTYwcHgpIHtcbiAgICAucHJlc3Mge1xuICAgICAgZm9udC1zaXplOiAyLjQ3MDU5cmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAwLjk7XG4gICAgICBsZXR0ZXItc3BhY2luZzogMDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA5NjBweCkgYW5kIChtaW4td2lkdGg6IDcyMHB4KSB7XG4gICAgLnByZXNzIHtcbiAgICAgIGZvbnQtc2l6ZTogY2FsYyg0NXB4ICsgMXZ3KTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAwLjkzNzU7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogOTYwcHgpIGFuZCAobWluLXdpZHRoOiAxMTAwcHgpIHtcbiAgICAucHJlc3Mge1xuICAgICAgZm9udC1zaXplOiBjYWxjKDU1cHggKyAxdncpOyB9IH1cbiAgLnByZXNzIC5wcmVzc19faWNvbiB7XG4gICAgd2lkdGg6IDAuNzVlbTtcbiAgICBoZWlnaHQ6IDAuNzVlbTsgfVxuXG4ucHJlc3NfX3RleHQge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA5NjBweCkge1xuICAgIC5wcmVzc19fdGV4dCB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB0b3A6IDJweDsgfSB9XG5cbi5wcm9qZWN0IHtcbiAgZGlzcGxheTogYmxvY2s7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDcyMHB4KSB7XG4gICAgLnByb2plY3Qge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7IH0gfVxuXG4ucHJvamVjdC0tbW9kZXJhdG9yLFxuLnByb2plY3QtLW1vZGVyYXRvciAuaW1hZ2VfX2NhcHRpb24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuICBjb2xvcjogIzk4ZDNiYjsgfVxuXG4ucHJvamVjdC0tbW9kZXJhdG9yIC5wcm9qZWN0X19pbWFnZXMge1xuICBjb2xvcjogIzk4ZDNiYjsgfVxuXG4ucHJvamVjdC0tbW9kZXJhdG9yIC5wcm9qZWN0X19jb250ZW50IGE6aG92ZXIsIC5wcm9qZWN0LS1tb2RlcmF0b3IgLnByb2plY3RfX2NvbnRlbnQgYTphY3RpdmUsIC5wcm9qZWN0LS1tb2RlcmF0b3IgLnByb2plY3RfX2NvbnRlbnQgYTpmb2N1cyB7XG4gIGNvbG9yOiAjZmY4ZTY2OyB9XG5cbi5wcm9qZWN0LS1tdXNpa2VyLFxuLnByb2plY3QtLW11c2lrZXIgLmltYWdlX19jYXB0aW9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmOGU2NjtcbiAgY29sb3I6ICMwMDA7IH1cblxuLnByb2plY3QtLW11c2lrZXIgLnByb2plY3RfX2ltYWdlcyB7XG4gIGNvbG9yOiAjZmY4ZTY2OyB9XG5cbi5wcm9qZWN0LS1tdXNpa2VyIC5wcm9qZWN0X19jb250ZW50IGE6aG92ZXIsIC5wcm9qZWN0LS1tdXNpa2VyIC5wcm9qZWN0X19jb250ZW50IGE6YWN0aXZlLCAucHJvamVjdC0tbXVzaWtlciAucHJvamVjdF9fY29udGVudCBhOmZvY3VzIHtcbiAgY29sb3I6ICM5OGQzYmI7IH1cblxuLnByb2plY3QtLWxpdmUtYXV0b3IsXG4ucHJvamVjdC0tbGl2ZS1hdXRvciAuaW1hZ2VfX2NhcHRpb24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuICBjb2xvcjogI2ZmOGU2NjsgfVxuXG4ucHJvamVjdC0tbGl2ZS1hdXRvciAucHJvamVjdF9faW1hZ2VzIHtcbiAgY29sb3I6ICNmZjhlNjY7IH1cblxuLnByb2plY3QtLWxpdmUtYXV0b3IgLnByb2plY3RfX2NvbnRlbnQgYTpob3ZlciwgLnByb2plY3QtLWxpdmUtYXV0b3IgLnByb2plY3RfX2NvbnRlbnQgYTphY3RpdmUsIC5wcm9qZWN0LS1saXZlLWF1dG9yIC5wcm9qZWN0X19jb250ZW50IGE6Zm9jdXMge1xuICBjb2xvcjogIzk4ZDNiYjsgfVxuXG4ucHJvamVjdC0tc2NocmlmdHN0ZWxsZXIsXG4ucHJvamVjdC0tc2NocmlmdHN0ZWxsZXIgLmltYWdlX19jYXB0aW9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzk4ZDNiYjtcbiAgY29sb3I6ICMwMDA7IH1cblxuLnByb2plY3QtLXNjaHJpZnRzdGVsbGVyIC5wcm9qZWN0X19pbWFnZXMge1xuICBjb2xvcjogIzk4ZDNiYjsgfVxuXG4ucHJvamVjdC0tc2NocmlmdHN0ZWxsZXIgLnByb2plY3RfX2NvbnRlbnQgYTpob3ZlciwgLnByb2plY3QtLXNjaHJpZnRzdGVsbGVyIC5wcm9qZWN0X19jb250ZW50IGE6YWN0aXZlLCAucHJvamVjdC0tc2NocmlmdHN0ZWxsZXIgLnByb2plY3RfX2NvbnRlbnQgYTpmb2N1cyB7XG4gIGNvbG9yOiAjZmY4ZTY2OyB9XG5cbi5wcm9qZWN0X19pbWFnZXMge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBvcmRlcjogMTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzIwcHgpIHtcbiAgICAucHJvamVjdF9faW1hZ2VzIHtcbiAgICAgIHdpZHRoOiA1MCU7IH1cbiAgICAgIC5wcm9qZWN0LS1tb2RlcmF0b3IgLnByb2plY3RfX2ltYWdlcyxcbiAgICAgIC5wcm9qZWN0LS1saXZlLWF1dG9yIC5wcm9qZWN0X19pbWFnZXMge1xuICAgICAgICBvcmRlcjogMzsgfSB9XG5cbi5wcm9qZWN0X19jb250ZW50IHtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBmb250LXdlaWdodDogNDAwO1xuICBwYWRkaW5nOiAwLjYyNXJlbTtcbiAgcGFkZGluZy1yaWdodDogMS44NzVyZW07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgbWluLWhlaWdodDogMjQwcHg7XG4gIG9yZGVyOiAyOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMTAwcHgpIHtcbiAgICAucHJvamVjdF9fY29udGVudCB7XG4gICAgICBmb250LXNpemU6IDEuMzUyOTRyZW07IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIHtcbiAgICAucHJvamVjdF9fY29udGVudCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAzLjc1cmVtOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDcyMHB4KSB7XG4gICAgLnByb2plY3RfX2NvbnRlbnQge1xuICAgICAgcGFkZGluZy1yaWdodDogMi41cmVtO1xuICAgICAgd2lkdGg6IDUwJTsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA5NjBweCkge1xuICAgIC5wcm9qZWN0X19jb250ZW50IHtcbiAgICAgIHBhZGRpbmc6IDEuMjVyZW07XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAzLjc1cmVtOyB9IH1cbiAgLnByb2plY3RfX2NvbnRlbnQgYSB7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICAgIC5wcm9qZWN0X19jb250ZW50IGE6aG92ZXIsIC5wcm9qZWN0X19jb250ZW50IGE6YWN0aXZlLCAucHJvamVjdF9fY29udGVudCBhOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAjZmZmOyB9XG5cbi5wcm9qZWN0X19oZWFkaW5nIHtcbiAgZm9udC1zaXplOiAyLjQ3MDU5cmVtO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogMC45O1xuICBsZXR0ZXItc3BhY2luZzogMDtcbiAgbWFyZ2luLXRvcDogMC42MjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDEuODc1cmVtOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3MjBweCkge1xuICAgIC5wcm9qZWN0X19oZWFkaW5nIHtcbiAgICAgIGZvbnQtc2l6ZTogY2FsYyg0NXB4ICsgMXZ3KTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAwLjkzNzU7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTEwMHB4KSB7XG4gICAgLnByb2plY3RfX2hlYWRpbmcge1xuICAgICAgZm9udC1zaXplOiBjYWxjKDU1cHggKyAxdncpOyB9IH1cblxuLnByb2plY3RfX3RleHQgOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi5zZWN0aW9uIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4uc2VjdGlvbi0tYWt0dWVsbCB7XG4gIHotaW5kZXg6IDE7XG4gIG1hcmdpbi10b3A6IC0ycHg7IH1cblxuLnNlY3Rpb25fX2hlYWRpbmcge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMXB4O1xuICBtYXJnaW46IC0xcHg7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY2xpcDogcmVjdCgwIDAgMCAwKTsgfVxuICAuc2VjdGlvbl9faGVhZGluZy5mb2N1c2FibGU6YWN0aXZlLCAuc2VjdGlvbl9faGVhZGluZy5mb2N1c2FibGU6Zm9jdXMge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbjogMDtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICBjbGlwOiBhdXRvOyB9XG5cbi5zZWN0aW9uX19pbm5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLnNlY3Rpb24tLWtvbnRha3RfX2lubmVyIHtcbiAgcGFkZGluZzogMC42MjVyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG4gIGNvbG9yOiAjOThkM2JiOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3MjBweCkge1xuICAgIC5zZWN0aW9uLS1rb250YWt0X19pbm5lciB7XG4gICAgICBwYWRkaW5nOiAxLjI1cmVtO1xuICAgICAgZm9udC1zaXplOiAxLjE3NjQ3cmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA5NjBweCkge1xuICAgIC5zZWN0aW9uLS1rb250YWt0X19pbm5lciB7XG4gICAgICBmb250LXNpemU6IDIuMTE3NjVyZW07XG4gICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNDsgfSB9XG4gIC5zZWN0aW9uLS1rb250YWt0X19pbm5lciBhIHtcbiAgICBjb2xvcjogIzk4ZDNiYjsgfVxuICAgIC5zZWN0aW9uLS1rb250YWt0X19pbm5lciBhOmhvdmVyLCAuc2VjdGlvbi0ta29udGFrdF9faW5uZXIgYTphY3RpdmUsIC5zZWN0aW9uLS1rb250YWt0X19pbm5lciBhOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAjZmY4ZTY2O1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gICAgLnNlY3Rpb24tLWtvbnRha3RfX2lubmVyIGFbaHJlZl49J21haWx0byddIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICAuc2VjdGlvbi0ta29udGFrdF9faW5uZXIgOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLnNlY3Rpb24tLWtvbnRha3RfX3ByaXZhY3ksXG4uc2VjdGlvbi0ta29udGFrdF9faW1wcmludCB7XG4gIGNvbG9yOiAjOThkM2JiO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IDA7XG4gIG91dGxpbmU6IDA7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyB9XG4gIC5zZWN0aW9uLS1rb250YWt0X19wcml2YWN5OmhvdmVyLCAuc2VjdGlvbi0ta29udGFrdF9fcHJpdmFjeTphY3RpdmUsIC5zZWN0aW9uLS1rb250YWt0X19wcml2YWN5OmZvY3VzLFxuICAuc2VjdGlvbi0ta29udGFrdF9faW1wcmludDpob3ZlcixcbiAgLnNlY3Rpb24tLWtvbnRha3RfX2ltcHJpbnQ6YWN0aXZlLFxuICAuc2VjdGlvbi0ta29udGFrdF9faW1wcmludDpmb2N1cyB7XG4gICAgY29sb3I6ICNmZjhlNjY7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDcyMHB4KSB7XG4gICAgLnNlY3Rpb24tLWtvbnRha3RfX3ByaXZhY3ksXG4gICAgLnNlY3Rpb24tLWtvbnRha3RfX2ltcHJpbnQge1xuICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgIG1hcmdpbi1yaWdodDogMi41cmVtO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDcyMHB4KSBhbmQgKG1pbi13aWR0aDogMTEwMHB4KSB7XG4gICAgLnNlY3Rpb24tLWtvbnRha3RfX3ByaXZhY3ksXG4gICAgLnNlY3Rpb24tLWtvbnRha3RfX2ltcHJpbnQge1xuICAgICAgZm9udC1zaXplOiAxLjM1Mjk0cmVtOyB9IH1cblxuLnNlY3Rpb24tLWtvbnRha3RfX2dyaWQge1xuICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3MjBweCkge1xuICAgIC5zZWN0aW9uLS1rb250YWt0X19ncmlkIHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzIwcHgpIHtcbiAgLnNlY3Rpb24tLWtvbnRha3RfX2dyaWQtaXRlbSB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAgIC5zZWN0aW9uLS1rb250YWt0X19ncmlkLWl0ZW06Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxLjI1cmVtOyB9XG4gICAgLnNlY3Rpb24tLWtvbnRha3RfX2dyaWQtaXRlbTpsYXN0LW9mLXR5cGUge1xuICAgICAgcGFkZGluZy1sZWZ0OiAxLjI1cmVtOyB9IH1cblxuLnNlY3Rpb24tLWtvbnRha3RfX2dyaWQtaXRlbSArIC5zZWN0aW9uLS1rb250YWt0X19ncmlkLWl0ZW0ge1xuICBtYXJnaW4tdG9wOiAxLjI1cmVtOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3MjBweCkge1xuICAgIC5zZWN0aW9uLS1rb250YWt0X19ncmlkLWl0ZW0gKyAuc2VjdGlvbi0ta29udGFrdF9fZ3JpZC1pdGVtIHtcbiAgICAgIG1hcmdpbi10b3A6IDA7IH0gfVxuXG4uc2xpZGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5zbGlkZXI6OmJlZm9yZSB7XG4gICAgcGFkZGluZy10b3A6IDc1JTsgfVxuICAuc2xpZGVyOjpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjb250ZW50OiAnJzsgfVxuICAuc2xpZGVyOmhvdmVyIC5pbWFnZV9fY2FwdGlvbixcbiAgLnNsaWRlcjpob3ZlciAuc2xpZGVyX19wcmV2LFxuICAuc2xpZGVyOmhvdmVyIC5zbGlkZXJfX25leHQsIC5zbGlkZXI6YWN0aXZlIC5pbWFnZV9fY2FwdGlvbixcbiAgLnNsaWRlcjphY3RpdmUgLnNsaWRlcl9fcHJldixcbiAgLnNsaWRlcjphY3RpdmUgLnNsaWRlcl9fbmV4dCwgLnNsaWRlcjpmb2N1cyAuaW1hZ2VfX2NhcHRpb24sXG4gIC5zbGlkZXI6Zm9jdXMgLnNsaWRlcl9fcHJldixcbiAgLnNsaWRlcjpmb2N1cyAuc2xpZGVyX19uZXh0IHtcbiAgICBvcGFjaXR5OiAxOyB9XG5cbi5zbGlkZXJfX2lubmVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7IH1cblxuLnNsaWRlcl9fY29udGFpbmVyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTsgfVxuXG4uc2xpZGVyX19pbWFnZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgLnNsaWRlcl9faW1hZ2UgLmltYWdlX19zcmMge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiBhdXRvOyB9XG4gIC5zbGlkZXJfX2ltYWdlIC5pbWFnZV9fY2FwdGlvbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMC4zMTI1cmVtO1xuICAgIGxlZnQ6IDAuMzEyNXJlbTtcbiAgICBwYWRkaW5nOiAwLjMxMjVyZW07XG4gICAgZm9udC1zaXplOiAwLjcwNTg4cmVtO1xuICAgIHdpbGwtY2hhbmdlOiBvcGFjaXR5O1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcyBlYXNlLWluO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG9wYWNpdHk6IDA7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogOTYwcHgpIHtcbiAgICAgIC5zbGlkZXJfX2ltYWdlIC5pbWFnZV9fY2FwdGlvbiB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogMC42MjVyZW07XG4gICAgICAgIGJvdHRvbTogMC42MjVyZW07IH0gfVxuXG4uc2xpZGVyX19wcmV2LFxuLnNsaWRlcl9fbmV4dCB7XG4gIHdpbGwtY2hhbmdlOiBvcGFjaXR5O1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgZWFzZS1pbjtcbiAgei1pbmRleDogMTAwMDtcbiAgcGFkZGluZzogMDtcbiAgZm9udC1zaXplOiAyLjExNzY1cmVtO1xuICBmb250LXdlaWdodDogNDAwO1xuICBjb2xvcjogY3VycmVudENvbG9yO1xuICBvdXRsaW5lOiAwO1xuICBib3JkZXI6IDA7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBvcGFjaXR5OiAwOyB9XG5cbi5zbGlkZXJfX3ByZXYge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDAuNjI1cmVtOyB9XG4gIC5zbGlkZXJfX3ByZXYgLnNsaWRlcl9faWNvbiB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTsgfVxuXG4uc2xpZGVyX19uZXh0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMS4yNXJlbTsgfVxuICAuc2xpZGVyX19uZXh0IC5zbGlkZXJfX2ljb24ge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTsgfVxuXG5Aa2V5ZnJhbWVzIHBseXItcHJvZ3Jlc3Mge1xuICB0byB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMjVweCAwOyB9IH1cblxuLnBseXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWluLXdpZHRoOiAyMDBweDtcbiAgZm9udC1mYW1pbHk6IEF2ZW5pciwgXCJBdmVuaXIgTmV4dFwiLCBcIkhlbHZldGljYSBOZXVlXCIsIFwiU2Vnb2UgVUlcIiwgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgZGlyZWN0aW9uOiBsdHI7IH1cbiAgLnBseXIsXG4gIC5wbHlyICosXG4gIC5wbHlyICo6OmFmdGVyLFxuICAucGx5ciAqOjpiZWZvcmUge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IH1cbiAgLnBseXIgYSxcbiAgLnBseXIgYnV0dG9uLFxuICAucGx5ciBpbnB1dCxcbiAgLnBseXIgbGFiZWwge1xuICAgIHRvdWNoLWFjdGlvbjogbWFuaXB1bGF0aW9uOyB9XG4gIC5wbHlyOmZvY3VzIHtcbiAgICBvdXRsaW5lOiAwOyB9XG4gIC5wbHlyIHZpZGVvLFxuICAucGx5ciBhdWRpbyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgYm9yZGVyLXJhZGl1czogaW5oZXJpdDsgfVxuICAucGx5ciBpbnB1dFt0eXBlPVwicmFuZ2VcIl0ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogMjBweDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsgfVxuICAgIC5wbHlyIGlucHV0W3R5cGU9XCJyYW5nZVwiXTo6LXdlYmtpdC1zbGlkZXItcnVubmFibGUtdHJhY2sge1xuICAgICAgaGVpZ2h0OiA4cHg7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlcjogMDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICAgIHVzZXItc2VsZWN0OiBub25lOyB9XG4gICAgLnBseXIgaW5wdXRbdHlwZT1cInJhbmdlXCJdOjotd2Via2l0LXNsaWRlci10aHVtYiB7XG4gICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICBtYXJnaW4tdG9wOiAtNHB4O1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgaGVpZ2h0OiAxNnB4O1xuICAgICAgd2lkdGg6IDE2cHg7XG4gICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgICAgYm9yZGVyOiAycHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAuMnMgZWFzZSwgYm9yZGVyIC4ycyBlYXNlLCB0cmFuc2Zvcm0gLjJzIGVhc2U7XG4gICAgICBib3gtc2hhZG93OiAwIDFweCAxcHggcmdiYSgwLCAwLCAwLCAwLjE1KSwgMCAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMC4xNSk7XG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OyB9XG4gICAgLnBseXIgaW5wdXRbdHlwZT1cInJhbmdlXCJdOjotbW96LXJhbmdlLXRyYWNrIHtcbiAgICAgIGhlaWdodDogOHB4O1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXI6IDA7XG4gICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgICB1c2VyLXNlbGVjdDogbm9uZTsgfVxuICAgIC5wbHlyIGlucHV0W3R5cGU9XCJyYW5nZVwiXTo6LW1vei1yYW5nZS10aHVtYiB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBoZWlnaHQ6IDE2cHg7XG4gICAgICB3aWR0aDogMTZweDtcbiAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgICBib3JkZXI6IDJweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIC4ycyBlYXNlLCBib3JkZXIgLjJzIGVhc2UsIHRyYW5zZm9ybSAuMnMgZWFzZTtcbiAgICAgIGJveC1zaGFkb3c6IDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMTUpLCAwIDAgMCAxcHggcmdiYSgwLCAwLCAwLCAwLjE1KTtcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IH1cbiAgICAucGx5ciBpbnB1dFt0eXBlPVwicmFuZ2VcIl06Oi1tcy10cmFjayB7XG4gICAgICBoZWlnaHQ6IDhweDtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyOiAwO1xuICAgICAgY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgLnBseXIgaW5wdXRbdHlwZT1cInJhbmdlXCJdOjotbXMtZmlsbC11cHBlciB7XG4gICAgICBoZWlnaHQ6IDhweDtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyOiAwO1xuICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7IH1cbiAgICAucGx5ciBpbnB1dFt0eXBlPVwicmFuZ2VcIl06Oi1tcy1maWxsLWxvd2VyIHtcbiAgICAgIGhlaWdodDogOHB4O1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXI6IDA7XG4gICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgIGJhY2tncm91bmQ6ICMzNDk4ZGI7IH1cbiAgICAucGx5ciBpbnB1dFt0eXBlPVwicmFuZ2VcIl06Oi1tcy10aHVtYiB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBoZWlnaHQ6IDE2cHg7XG4gICAgICB3aWR0aDogMTZweDtcbiAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgICBib3JkZXI6IDJweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIC4ycyBlYXNlLCBib3JkZXIgLjJzIGVhc2UsIHRyYW5zZm9ybSAuMnMgZWFzZTtcbiAgICAgIGJveC1zaGFkb3c6IDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMTUpLCAwIDAgMCAxcHggcmdiYSgwLCAwLCAwLCAwLjE1KTtcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICBtYXJnaW4tdG9wOiAwOyB9XG4gICAgLnBseXIgaW5wdXRbdHlwZT1cInJhbmdlXCJdOjotbXMtdG9vbHRpcCB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLnBseXIgaW5wdXRbdHlwZT1cInJhbmdlXCJdOmZvY3VzIHtcbiAgICAgIG91dGxpbmU6IDA7IH1cbiAgICAucGx5ciBpbnB1dFt0eXBlPVwicmFuZ2VcIl06Oi1tb3otZm9jdXMtb3V0ZXIge1xuICAgICAgYm9yZGVyOiAwOyB9XG4gICAgLnBseXIgaW5wdXRbdHlwZT1cInJhbmdlXCJdLnRhYi1mb2N1czpmb2N1cyB7XG4gICAgICBvdXRsaW5lLW9mZnNldDogM3B4OyB9XG4gICAgLnBseXIgaW5wdXRbdHlwZT1cInJhbmdlXCJdOmFjdGl2ZTo6LXdlYmtpdC1zbGlkZXItdGh1bWIge1xuICAgICAgYmFja2dyb3VuZDogIzM0OThkYjtcbiAgICAgIGJvcmRlci1jb2xvcjogI2ZmZjtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4yNSk7IH1cbiAgICAucGx5ciBpbnB1dFt0eXBlPVwicmFuZ2VcIl06YWN0aXZlOjotbW96LXJhbmdlLXRodW1iIHtcbiAgICAgIGJhY2tncm91bmQ6ICMzNDk4ZGI7XG4gICAgICBib3JkZXItY29sb3I6ICNmZmY7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMjUpOyB9XG4gICAgLnBseXIgaW5wdXRbdHlwZT1cInJhbmdlXCJdOmFjdGl2ZTo6LW1zLXRodW1iIHtcbiAgICAgIGJhY2tncm91bmQ6ICMzNDk4ZGI7XG4gICAgICBib3JkZXItY29sb3I6ICNmZmY7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMjUpOyB9XG5cbi5wbHlyLS12aWRlbyBpbnB1dFt0eXBlPVwicmFuZ2VcIl0udGFiLWZvY3VzOmZvY3VzIHtcbiAgb3V0bGluZTogMXB4IGRvdHRlZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7IH1cblxuLnBseXItLWF1ZGlvIGlucHV0W3R5cGU9XCJyYW5nZVwiXS50YWItZm9jdXM6Zm9jdXMge1xuICBvdXRsaW5lOiAxcHggZG90dGVkIHJnYmEoODYsIDkzLCAxMDAsIDAuNSk7IH1cblxuLnBseXJfX3NyLW9ubHkge1xuICBjbGlwOiByZWN0KDFweCwgMXB4LCAxcHgsIDFweCk7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gIGJvcmRlcjogMCAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IDFweCAhaW1wb3J0YW50O1xuICB3aWR0aDogMXB4ICFpbXBvcnRhbnQ7IH1cblxuLnBseXJfX3ZpZGVvLXdyYXBwZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQ6ICMwMDA7XG4gIGJvcmRlci1yYWRpdXM6IGluaGVyaXQ7IH1cblxuLnBseXJfX3ZpZGVvLWVtYmVkIHtcbiAgcGFkZGluZy1ib3R0b206IDU2LjI1JTtcbiAgLyogMTY6OSAqL1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlci1yYWRpdXM6IGluaGVyaXQ7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHotaW5kZXg6IDA7IH1cbiAgLnBseXJfX3ZpZGVvLWVtYmVkIGlmcmFtZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBib3JkZXI6IDA7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7IH1cbiAgLnBseXJfX3ZpZGVvLWVtYmVkID4gZGl2IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy1ib3R0b206IDIwMCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0zNS45NSUpOyB9XG5cbi5wbHlyIC5wbHlyX192aWRlby1lbWJlZCBpZnJhbWUge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTsgfVxuXG4ucGx5ciB2aWRlbzo6LXdlYmtpdC1tZWRpYS10ZXh0LXRyYWNrLWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLnBseXJfX2NhcHRpb25zIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAyMHB4O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTYwcHgpO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcyBlYXNlO1xuICBjb2xvcjogI2ZmZjtcbiAgZm9udC1zaXplOiAxNnB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7IH1cbiAgLnBseXJfX2NhcHRpb25zIHNwYW4ge1xuICAgIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgICBwYWRkaW5nOiAzcHggMTBweDtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNyk7XG4gICAgYm94LWRlY29yYXRpb24tYnJlYWs6IGNsb25lO1xuICAgIGxpbmUtaGVpZ2h0OiAxNTAlOyB9XG4gIC5wbHlyX19jYXB0aW9ucyBzcGFuOmVtcHR5IHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5wbHlyX19jYXB0aW9ucyB7XG4gICAgICBmb250LXNpemU6IDI0cHg7IH0gfVxuXG4ucGx5ci0tY2FwdGlvbnMtYWN0aXZlIC5wbHlyX19jYXB0aW9ucyB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5wbHlyLS1oaWRlLWNvbnRyb2xzIC5wbHlyX19jYXB0aW9ucyB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjBweCk7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAucGx5ci0tZnVsbHNjcmVlbi1hY3RpdmUgLnBseXJfX2NhcHRpb25zIHtcbiAgICBmb250LXNpemU6IDMycHg7IH0gfVxuXG4ucGx5ciA6Oi13ZWJraXQtbWVkaWEtY29udHJvbHMge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5wbHlyX19jb250cm9scyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lOyB9XG4gIC5wbHlyX19jb250cm9scyA+ICoge1xuICAgIHBvaW50ZXItZXZlbnRzOiBhbGw7IH1cbiAgLnBseXJfX2NvbnRyb2xzID4gYnV0dG9uLFxuICAucGx5cl9fY29udHJvbHMgLnBseXJfX3Byb2dyZXNzLFxuICAucGx5cl9fY29udHJvbHMgLnBseXJfX3RpbWUge1xuICAgIG1hcmdpbi1sZWZ0OiA1cHg7IH1cbiAgICAucGx5cl9fY29udHJvbHMgPiBidXR0b246Zmlyc3QtY2hpbGQsXG4gICAgLnBseXJfX2NvbnRyb2xzIC5wbHlyX19wcm9ncmVzczpmaXJzdC1jaGlsZCxcbiAgICAucGx5cl9fY29udHJvbHMgLnBseXJfX3RpbWU6Zmlyc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgLnBseXJfX2NvbnRyb2xzIC5wbHlyX192b2x1bWUge1xuICAgIG1hcmdpbi1sZWZ0OiA1cHg7IH1cbiAgLnBseXJfX2NvbnRyb2xzIFtkYXRhLXBseXI9XCJwYXVzZVwiXSB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgLnBseXJfX2NvbnRyb2xzIGJ1dHRvbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIHBhZGRpbmc6IDdweDtcbiAgICBib3JkZXI6IDA7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuM3MgZWFzZSwgY29sb3IgMC4zcyBlYXNlLCBvcGFjaXR5IDAuM3MgZWFzZTtcbiAgICBjb2xvcjogaW5oZXJpdDsgfVxuICAgIC5wbHlyX19jb250cm9scyBidXR0b24gc3ZnIHtcbiAgICAgIHdpZHRoOiAxOHB4O1xuICAgICAgaGVpZ2h0OiAxOHB4O1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBmaWxsOiBjdXJyZW50Q29sb3I7IH1cbiAgICAucGx5cl9fY29udHJvbHMgYnV0dG9uOmZvY3VzIHtcbiAgICAgIG91dGxpbmU6IDA7IH1cbiAgLnBseXJfX2NvbnRyb2xzIC5pY29uLS1leGl0LWZ1bGxzY3JlZW4sXG4gIC5wbHlyX19jb250cm9scyAuaWNvbi0tbXV0ZWQsXG4gIC5wbHlyX19jb250cm9scyAuaWNvbi0tY2FwdGlvbnMtb24ge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gICAgLnBseXJfX2NvbnRyb2xzID4gYnV0dG9uLFxuICAgIC5wbHlyX19jb250cm9scyAucGx5cl9fcHJvZ3Jlc3MsXG4gICAgLnBseXJfX2NvbnRyb2xzIC5wbHlyX190aW1lIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4OyB9IH1cblxuLnBseXItLWhpZGUtY29udHJvbHMgLnBseXJfX2NvbnRyb2xzIHtcbiAgb3BhY2l0eTogMDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7IH1cblxuLnBseXItLXZpZGVvIC5wbHlyX19jb250cm9scyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgcGFkZGluZzogNTBweCAxMHB4IDEwcHg7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudChyZ2JhKDAsIDAsIDAsIDApLCByZ2JhKDAsIDAsIDAsIDAuNSkpO1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiBpbmhlcml0O1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogaW5oZXJpdDtcbiAgY29sb3I6ICNmZmY7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcyBlYXNlOyB9XG4gIC5wbHlyLS12aWRlbyAucGx5cl9fY29udHJvbHMgYnV0dG9uLnRhYi1mb2N1czpmb2N1cywgLnBseXItLXZpZGVvIC5wbHlyX19jb250cm9scyBidXR0b246aG92ZXIge1xuICAgIGJhY2tncm91bmQ6ICMzNDk4ZGI7XG4gICAgY29sb3I6ICNmZmY7IH1cblxuLnBseXItLWF1ZGlvIC5wbHlyX19jb250cm9scyB7XG4gIHBhZGRpbmc6IDEwcHg7XG4gIGJvcmRlci1yYWRpdXM6IGluaGVyaXQ7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkYmUzZTg7XG4gIGNvbG9yOiAjNTY1RDY0OyB9XG4gIC5wbHlyLS1hdWRpbyAucGx5cl9fY29udHJvbHMgYnV0dG9uLnRhYi1mb2N1czpmb2N1cywgLnBseXItLWF1ZGlvIC5wbHlyX19jb250cm9scyBidXR0b246aG92ZXIge1xuICAgIGJhY2tncm91bmQ6ICMzNDk4ZGI7XG4gICAgY29sb3I6ICNmZmY7IH1cblxuLnBseXJfX3BsYXktbGFyZ2Uge1xuICBkaXNwbGF5OiBub25lO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDE7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICBwYWRkaW5nOiAxMHB4O1xuICBiYWNrZ3JvdW5kOiAjMzQ5OGRiO1xuICBib3JkZXI6IDRweCBzb2xpZCBjdXJyZW50Q29sb3I7XG4gIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xuICBjb2xvcjogI2ZmZjtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTsgfVxuICAucGx5cl9fcGxheS1sYXJnZSBzdmcge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAycHg7XG4gICAgd2lkdGg6IDIwcHg7XG4gICAgaGVpZ2h0OiAyMHB4O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZpbGw6IGN1cnJlbnRDb2xvcjsgfVxuICAucGx5cl9fcGxheS1sYXJnZTpmb2N1cyB7XG4gICAgb3V0bGluZTogMXB4IGRvdHRlZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7IH1cblxuLnBseXIgLnBseXJfX3BsYXktbGFyZ2Uge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cblxuLnBseXItLWF1ZGlvIC5wbHlyX19wbGF5LWxhcmdlIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4ucGx5ci0tcGxheWluZyAucGx5cl9fcGxheS1sYXJnZSB7XG4gIG9wYWNpdHk6IDA7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG4ucGx5cl9fY29udHJvbHMgW2RhdGEtcGx5cj1cInBhdXNlXCJdLFxuLnBseXItLXBsYXlpbmcgLnBseXJfX2NvbnRyb2xzIFtkYXRhLXBseXI9XCJwbGF5XCJdIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4ucGx5ci0tcGxheWluZyAucGx5cl9fY29udHJvbHMgW2RhdGEtcGx5cj1cInBhdXNlXCJdIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG5cbi5wbHlyLS1mdWxsc2NyZWVuLWFjdGl2ZSAuaWNvbi0tZXhpdC1mdWxsc2NyZWVuLFxuLnBseXItLW11dGVkIC5wbHlyX19jb250cm9scyAuaWNvbi0tbXV0ZWQsXG4ucGx5ci0tY2FwdGlvbnMtYWN0aXZlIC5wbHlyX19jb250cm9scyAuaWNvbi0tY2FwdGlvbnMtb24ge1xuICBkaXNwbGF5OiBibG9jazsgfVxuICAucGx5ci0tZnVsbHNjcmVlbi1hY3RpdmUgLmljb24tLWV4aXQtZnVsbHNjcmVlbiArIHN2ZyxcbiAgLnBseXItLW11dGVkIC5wbHlyX19jb250cm9scyAuaWNvbi0tbXV0ZWQgKyBzdmcsXG4gIC5wbHlyLS1jYXB0aW9ucy1hY3RpdmUgLnBseXJfX2NvbnRyb2xzIC5pY29uLS1jYXB0aW9ucy1vbiArIHN2ZyB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuXG4ucGx5ciBbZGF0YS1wbHlyPVwiY2FwdGlvbnNcIl0sXG4ucGx5ciBbZGF0YS1wbHlyPVwiZnVsbHNjcmVlblwiXSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLnBseXItLWNhcHRpb25zLWVuYWJsZWQgW2RhdGEtcGx5cj1cImNhcHRpb25zXCJdLFxuLnBseXItLWZ1bGxzY3JlZW4tZW5hYmxlZCBbZGF0YS1wbHlyPVwiZnVsbHNjcmVlblwiXSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuXG4ucGx5cl9fdG9vbHRpcCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMjtcbiAgYm90dG9tOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICBwYWRkaW5nOiA1cHggNy41cHg7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBvcGFjaXR5OiAwO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNyk7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgY29sb3I6ICNmZmY7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgbGluZS1oZWlnaHQ6IDEuMztcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgMTBweCkgc2NhbGUoMC44KTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogNTAlIDEwMCU7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjJzIDAuMXMgZWFzZSwgb3BhY2l0eSAwLjJzIDAuMXMgZWFzZTsgfVxuICAucGx5cl9fdG9vbHRpcDo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgbGVmdDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICBib3R0b206IC00cHg7XG4gICAgYm9yZGVyLXJpZ2h0OiA0cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXRvcDogNHB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC43KTtcbiAgICBib3JkZXItbGVmdDogNHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIHotaW5kZXg6IDI7IH1cblxuLnBseXIgYnV0dG9uOmhvdmVyIC5wbHlyX190b29sdGlwLFxuLnBseXIgYnV0dG9uLnRhYi1mb2N1czpmb2N1cyAucGx5cl9fdG9vbHRpcCxcbi5wbHlyX190b29sdGlwLS12aXNpYmxlIHtcbiAgb3BhY2l0eTogMTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgMCkgc2NhbGUoMSk7IH1cblxuLnBseXIgYnV0dG9uOmhvdmVyIC5wbHlyX190b29sdGlwIHtcbiAgei1pbmRleDogMzsgfVxuXG4ucGx5cl9fY29udHJvbHMgYnV0dG9uOmZpcnN0LWNoaWxkIC5wbHlyX190b29sdGlwIHtcbiAgbGVmdDogMDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMTBweCkgc2NhbGUoMC44KTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogMCAxMDAlOyB9XG4gIC5wbHlyX19jb250cm9scyBidXR0b246Zmlyc3QtY2hpbGQgLnBseXJfX3Rvb2x0aXA6OmJlZm9yZSB7XG4gICAgbGVmdDogMTZweDsgfVxuXG4ucGx5cl9fY29udHJvbHMgYnV0dG9uOmxhc3QtY2hpbGQgLnBseXJfX3Rvb2x0aXAge1xuICByaWdodDogMDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMTBweCkgc2NhbGUoMC44KTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogMTAwJSAxMDAlOyB9XG4gIC5wbHlyX19jb250cm9scyBidXR0b246bGFzdC1jaGlsZCAucGx5cl9fdG9vbHRpcDo6YmVmb3JlIHtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHJpZ2h0OiAxNnB4O1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg1MCUpOyB9XG5cbi5wbHlyX19jb250cm9scyBidXR0b246Zmlyc3QtY2hpbGQ6aG92ZXIgLnBseXJfX3Rvb2x0aXAsXG4ucGx5cl9fY29udHJvbHMgYnV0dG9uOmZpcnN0LWNoaWxkLnRhYi1mb2N1czpmb2N1cyAucGx5cl9fdG9vbHRpcCxcbi5wbHlyX19jb250cm9scyBidXR0b246Zmlyc3QtY2hpbGQgLnBseXJfX3Rvb2x0aXAtLXZpc2libGUsXG4ucGx5cl9fY29udHJvbHMgYnV0dG9uOmxhc3QtY2hpbGQ6aG92ZXIgLnBseXJfX3Rvb2x0aXAsXG4ucGx5cl9fY29udHJvbHMgYnV0dG9uOmxhc3QtY2hpbGQudGFiLWZvY3VzOmZvY3VzIC5wbHlyX190b29sdGlwLFxuLnBseXJfX2NvbnRyb2xzIGJ1dHRvbjpsYXN0LWNoaWxkIC5wbHlyX190b29sdGlwLS12aXNpYmxlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCkgc2NhbGUoMSk7IH1cblxuLnBseXJfX3Byb2dyZXNzIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmbGV4OiAxOyB9XG4gIC5wbHlyX19wcm9ncmVzcyBpbnB1dFt0eXBlPVwicmFuZ2VcIl0ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAyOyB9XG4gICAgLnBseXJfX3Byb2dyZXNzIGlucHV0W3R5cGU9XCJyYW5nZVwiXTo6LXdlYmtpdC1zbGlkZXItcnVubmFibGUtdHJhY2sge1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7IH1cbiAgICAucGx5cl9fcHJvZ3Jlc3MgaW5wdXRbdHlwZT1cInJhbmdlXCJdOjotbW96LXJhbmdlLXRyYWNrIHtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyB9XG4gICAgLnBseXJfX3Byb2dyZXNzIGlucHV0W3R5cGU9XCJyYW5nZVwiXTo6LW1zLWZpbGwtdXBwZXIge1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7IH1cbiAgLnBseXJfX3Byb2dyZXNzIC5wbHlyX190b29sdGlwIHtcbiAgICBsZWZ0OiAwOyB9XG5cbi5wbHlyIC5wbHlyX19wcm9ncmVzcyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuXG4ucGx5cl9fcHJvZ3Jlc3MtLWJ1ZmZlcixcbi5wbHlyX19wcm9ncmVzcy0tcGxheWVkLFxuLnBseXJfX3ZvbHVtZS0tZGlzcGxheSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiA1MCU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDhweDtcbiAgbWFyZ2luOiAtNHB4IDAgMDtcbiAgcGFkZGluZzogMDtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItcmFkaXVzOiAxMDBweDsgfVxuICAucGx5cl9fcHJvZ3Jlc3MtLWJ1ZmZlcjo6LXdlYmtpdC1wcm9ncmVzcy1iYXIsXG4gIC5wbHlyX19wcm9ncmVzcy0tcGxheWVkOjotd2Via2l0LXByb2dyZXNzLWJhcixcbiAgLnBseXJfX3ZvbHVtZS0tZGlzcGxheTo6LXdlYmtpdC1wcm9ncmVzcy1iYXIge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyB9XG4gIC5wbHlyX19wcm9ncmVzcy0tYnVmZmVyOjotd2Via2l0LXByb2dyZXNzLXZhbHVlLFxuICAucGx5cl9fcHJvZ3Jlc3MtLXBsYXllZDo6LXdlYmtpdC1wcm9ncmVzcy12YWx1ZSxcbiAgLnBseXJfX3ZvbHVtZS0tZGlzcGxheTo6LXdlYmtpdC1wcm9ncmVzcy12YWx1ZSB7XG4gICAgYmFja2dyb3VuZDogY3VycmVudENvbG9yO1xuICAgIGJvcmRlci1yYWRpdXM6IDEwMHB4O1xuICAgIG1pbi13aWR0aDogOHB4OyB9XG4gIC5wbHlyX19wcm9ncmVzcy0tYnVmZmVyOjotbW96LXByb2dyZXNzLWJhcixcbiAgLnBseXJfX3Byb2dyZXNzLS1wbGF5ZWQ6Oi1tb3otcHJvZ3Jlc3MtYmFyLFxuICAucGx5cl9fdm9sdW1lLS1kaXNwbGF5OjotbW96LXByb2dyZXNzLWJhciB7XG4gICAgYmFja2dyb3VuZDogY3VycmVudENvbG9yO1xuICAgIGJvcmRlci1yYWRpdXM6IDEwMHB4O1xuICAgIG1pbi13aWR0aDogOHB4OyB9XG4gIC5wbHlyX19wcm9ncmVzcy0tYnVmZmVyOjotbXMtZmlsbCxcbiAgLnBseXJfX3Byb2dyZXNzLS1wbGF5ZWQ6Oi1tcy1maWxsLFxuICAucGx5cl9fdm9sdW1lLS1kaXNwbGF5OjotbXMtZmlsbCB7XG4gICAgYm9yZGVyLXJhZGl1czogMTAwcHg7IH1cblxuLnBseXJfX3Byb2dyZXNzLS1wbGF5ZWQsXG4ucGx5cl9fdm9sdW1lLS1kaXNwbGF5IHtcbiAgei1pbmRleDogMTtcbiAgY29sb3I6ICMzNDk4ZGI7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICB0cmFuc2l0aW9uOiBub25lOyB9XG4gIC5wbHlyX19wcm9ncmVzcy0tcGxheWVkOjotd2Via2l0LXByb2dyZXNzLXZhbHVlLFxuICAucGx5cl9fdm9sdW1lLS1kaXNwbGF5Ojotd2Via2l0LXByb2dyZXNzLXZhbHVlIHtcbiAgICBtaW4td2lkdGg6IDhweDtcbiAgICBtYXgtd2lkdGg6IDk5JTtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcbiAgICB0cmFuc2l0aW9uOiBub25lOyB9XG4gIC5wbHlyX19wcm9ncmVzcy0tcGxheWVkOjotbW96LXByb2dyZXNzLWJhcixcbiAgLnBseXJfX3ZvbHVtZS0tZGlzcGxheTo6LW1vei1wcm9ncmVzcy1iYXIge1xuICAgIG1pbi13aWR0aDogOHB4O1xuICAgIG1heC13aWR0aDogOTklO1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xuICAgIHRyYW5zaXRpb246IG5vbmU7IH1cbiAgLnBseXJfX3Byb2dyZXNzLS1wbGF5ZWQ6Oi1tcy1maWxsLFxuICAucGx5cl9fdm9sdW1lLS1kaXNwbGF5OjotbXMtZmlsbCB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuXG4ucGx5cl9fcHJvZ3Jlc3MtLWJ1ZmZlcjo6LXdlYmtpdC1wcm9ncmVzcy12YWx1ZSB7XG4gIHRyYW5zaXRpb246IHdpZHRoIDAuMnMgZWFzZTsgfVxuXG4ucGx5cl9fcHJvZ3Jlc3MtLWJ1ZmZlcjo6LW1vei1wcm9ncmVzcy1iYXIge1xuICB0cmFuc2l0aW9uOiB3aWR0aCAwLjJzIGVhc2U7IH1cblxuLnBseXJfX3Byb2dyZXNzLS1idWZmZXI6Oi1tcy1maWxsIHtcbiAgdHJhbnNpdGlvbjogd2lkdGggMC4ycyBlYXNlOyB9XG5cbi5wbHlyLS12aWRlbyAucGx5cl9fcHJvZ3Jlc3MtLWJ1ZmZlcixcbi5wbHlyLS12aWRlbyAucGx5cl9fdm9sdW1lLS1kaXNwbGF5IHtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjI1KTsgfVxuXG4ucGx5ci0tdmlkZW8gLnBseXJfX3Byb2dyZXNzLS1idWZmZXIge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjI1KTsgfVxuXG4ucGx5ci0tYXVkaW8gLnBseXJfX3Byb2dyZXNzLS1idWZmZXIsXG4ucGx5ci0tYXVkaW8gLnBseXJfX3ZvbHVtZS0tZGlzcGxheSB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMTk4LCAyMTQsIDIxOSwgMC42Nyk7IH1cblxuLnBseXItLWF1ZGlvIC5wbHlyX19wcm9ncmVzcy0tYnVmZmVyIHtcbiAgY29sb3I6IHJnYmEoMTk4LCAyMTQsIDIxOSwgMC42Nyk7IH1cblxuLnBseXItLWxvYWRpbmcgLnBseXJfX3Byb2dyZXNzLS1idWZmZXIge1xuICBhbmltYXRpb246IHBseXItcHJvZ3Jlc3MgMXMgbGluZWFyIGluZmluaXRlO1xuICBiYWNrZ3JvdW5kLXNpemU6IDI1cHggMjVweDtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoLTQ1ZGVnLCByZ2JhKDAsIDAsIDAsIDAuMTUpIDI1JSwgdHJhbnNwYXJlbnQgMjUlLCB0cmFuc3BhcmVudCA1MCUsIHJnYmEoMCwgMCwgMCwgMC4xNSkgNTAlLCByZ2JhKDAsIDAsIDAsIDAuMTUpIDc1JSwgdHJhbnNwYXJlbnQgNzUlLCB0cmFuc3BhcmVudCk7XG4gIGNvbG9yOiB0cmFuc3BhcmVudDsgfVxuXG4ucGx5ci0tdmlkZW8ucGx5ci0tbG9hZGluZyAucGx5cl9fcHJvZ3Jlc3MtLWJ1ZmZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yNSk7IH1cblxuLnBseXItLWF1ZGlvLnBseXItLWxvYWRpbmcgLnBseXJfX3Byb2dyZXNzLS1idWZmZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDE5OCwgMjE0LCAyMTksIDAuNjcpOyB9XG5cbi5wbHlyX190aW1lIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBmb250LXNpemU6IDE0cHg7IH1cblxuLnBseXJfX3RpbWUgKyAucGx5cl9fdGltZSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLnBseXJfX3RpbWUgKyAucGx5cl9fdGltZSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH0gfVxuICAucGx5cl9fdGltZSArIC5wbHlyX190aW1lOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFwyMDQ0XCI7XG4gICAgbWFyZ2luLXJpZ2h0OiAxMHB4OyB9XG5cbi5wbHlyX192b2x1bWUge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5wbHlyIC5wbHlyX192b2x1bWUge1xuICBmbGV4OiAxO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLnBseXIgLnBseXJfX3ZvbHVtZSBpbnB1dFt0eXBlPVwicmFuZ2VcIl0ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAyOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkge1xuICAgIC5wbHlyIC5wbHlyX192b2x1bWUge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXgtd2lkdGg6IDYwcHg7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAucGx5ciAucGx5cl9fdm9sdW1lIHtcbiAgICAgIG1heC13aWR0aDogMTAwcHg7IH0gfVxuXG4ucGx5ci0taXMtaW9zIC5wbHlyX192b2x1bWUsXG4ucGx5ci0taXMtaW9zIFtkYXRhLXBseXI9XCJtdXRlXCJdIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi5wbHlyLS1mdWxsc2NyZWVuLWFjdGl2ZSB7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQ6ICMwMDA7XG4gIGJvcmRlci1yYWRpdXM6IDAgIWltcG9ydGFudDsgfVxuICAucGx5ci0tZnVsbHNjcmVlbi1hY3RpdmUgdmlkZW8ge1xuICAgIGhlaWdodDogMTAwJTsgfVxuICAucGx5ci0tZnVsbHNjcmVlbi1hY3RpdmUgLnBseXJfX3ZpZGVvLXdyYXBwZXIge1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAucGx5ci0tZnVsbHNjcmVlbi1hY3RpdmUgLnBseXJfX3ZpZGVvLWVtYmVkIHtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTsgfVxuICAucGx5ci0tZnVsbHNjcmVlbi1hY3RpdmUucGx5ci0tdmltZW8gLnBseXJfX3ZpZGVvLXdyYXBwZXIge1xuICAgIGhlaWdodDogMDtcbiAgICB0b3A6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7IH1cblxuLnBseXItLWZ1bGxzY3JlZW4tZmFsbGJhY2sucGx5ci0tZnVsbHNjcmVlbi1hY3RpdmUge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgei1pbmRleDogMTAwMDAwMDA7IH1cblxuLnBseXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDsgfVxuICAucGx5ciBpbnB1dFt0eXBlPSdyYW5nZSddOmFjdGl2ZTo6LXdlYmtpdC1zbGlkZXItdGh1bWIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IGN1cnJlbnRDb2xvcjsgfVxuICAucGx5ciBpbnB1dFt0eXBlPSdyYW5nZSddOmFjdGl2ZTo6LW1vei1yYW5nZS10aHVtYiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogY3VycmVudENvbG9yOyB9XG4gIC5wbHlyIGlucHV0W3R5cGU9J3JhbmdlJ106YWN0aXZlOjotbXMtdGh1bWIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IGN1cnJlbnRDb2xvcjsgfVxuXG4ucHlscl9fdmlkZW8tZW1iZWQge1xuICBoZWlnaHQ6IGF1dG87XG4gIHBhZGRpbmc6IDA7IH1cblxuLnBseXJfX3Byb2dyZXNzLS1wbGF5ZWQge1xuICBjb2xvcjogY3VycmVudENvbG9yOyB9XG5cbi5wbHlyLS12aWRlbyAucGx5cl9fY29udHJvbHMge1xuICB6LWluZGV4OiAxMDAwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgY29sb3I6IGN1cnJlbnRDb2xvcjsgfVxuICAucGx5ci0tdmlkZW8gLnBseXJfX2NvbnRyb2xzIGJ1dHRvbi50YWItZm9jdXM6Zm9jdXMsXG4gIC5wbHlyLS12aWRlbyAucGx5cl9fY29udHJvbHMgYnV0dG9uOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuICAgIGNvbG9yOiBjdXJyZW50Q29sb3I7IH1cblxuLnZpZGVvIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7IH1cblxuLnZpZGVvX19saW5rIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgei1pbmRleDogMjA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwOyB9XG4gIC52aWRlb19fbGluazo6YmVmb3JlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICB6LWluZGV4OiAzMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuICAgIHdpbGwtY2hhbmdlOiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3MgZWFzZS1pbiwgb3BhY2l0eSAwLjNzIGVhc2UtaW47XG4gICAgb3BhY2l0eTogMDsgfVxuICAudmlkZW9fX2xpbms6OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMC42MjVyZW07XG4gICAgYm90dG9tOiAwLjYyNXJlbTtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBmb250LXNpemU6IDAuNzA1ODhyZW07XG4gICAgd2lsbC1jaGFuZ2U6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcyBlYXNlLWluLCBvcGFjaXR5IDAuM3MgZWFzZS1pbjtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIGNvbnRlbnQ6ICdNaXQgS2xpY2sgYXVmIGRlbiBQbGF5LUJ1dHRvbiB3aXJkIGVpbiBWaWRlbyB2b24gVmltZW8gYnp3LiBZb3VUdWJlIGdlbGFkZW4uIERpZSBEYXRlbnNjaHV0emVya2zDpHJ1bmcgZGF6dSBoYWJlIGljaCBnZWxlc2VuIHVuZCB2ZXJzdGFuZGVuLic7XG4gICAgb3BhY2l0eTogMDsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMTAwcHgpIHtcbiAgICAgIC52aWRlb19fbGluazo6YWZ0ZXIge1xuICAgICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG4gIC52aWRlb19fbGluazpob3Zlcjo6YmVmb3JlLCAudmlkZW9fX2xpbms6YWN0aXZlOjpiZWZvcmUsIC52aWRlb19fbGluazpmb2N1czo6YmVmb3JlIHtcbiAgICBvcGFjaXR5OiAwLjU7IH1cbiAgLnZpZGVvX19saW5rOmhvdmVyOjphZnRlciwgLnZpZGVvX19saW5rOmFjdGl2ZTo6YWZ0ZXIsIC52aWRlb19fbGluazpmb2N1czo6YWZ0ZXIge1xuICAgIG9wYWNpdHk6IDE7IH1cblxuLnZpZGVvX19saW5rLS1wbGF5aW5nIHtcbiAgei1pbmRleDogLTE7IH1cblxuLnZpZGVvX19wbGF5IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgei1pbmRleDogNDA7XG4gIHdpZHRoOiAyLjVyZW07XG4gIGhlaWdodDogMi41cmVtOyB9XG4gIC52aWRlb19fcGxheSAuaWNvbi0tcGxheSB7XG4gICAgZmlsbDogY3VycmVudENvbG9yOyB9XG5cbi52aWRlb19fcGxhY2Vob2xkZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgei1pbmRleDogMTA7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi52aWRlb19faW1hZ2Uge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAudmlkZW9fX2ltYWdlIC5pbWFnZV9fc3JjIHtcbiAgICBsZWZ0OiAwO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBtYXgtd2lkdGg6IG5vbmU7IH1cblxuLmJ1cmdlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDAuNjI1cmVtO1xuICB0b3A6IDEuMjVyZW07XG4gIHotaW5kZXg6IDQwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDQ4cHg7XG4gIGhlaWdodDogMjZweDtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgYm9yZGVyOiAwO1xuICBvdXRsaW5lOiAwOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3MjBweCkge1xuICAgIC5idXJnZXIge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjsgfSB9XG5cbi5idXJnZXJfX2xpbmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuICB3aWxsLWNoYW5nZTogdHJhbnNmb3JtLCBvcGFjaXR5LCBsZWZ0LCB3aWR0aDtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3MgZWFzZS1pbiwgb3BhY2l0eSAwLjNzIGVhc2UtaW4sIGxlZnQgMC4zcyBlYXNlLWluLCB3aWR0aCAwLjNzIGVhc2UtaW47XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogNDhweDtcbiAgaGVpZ2h0OiAzcHg7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBjZW50ZXI7IH1cbiAgLmJ1cmdlcl9fbGluZTpudGgtb2YtdHlwZSgxKSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwOyB9XG4gIC5idXJnZXJfX2xpbmU6bnRoLW9mLXR5cGUoMikge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7IH1cbiAgLmJ1cmdlcl9fbGluZTpudGgtb2YtdHlwZSgzKSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwOyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3MjBweCkge1xuICAuYnVyZ2VyLS1vcGVuLFxuICAuYnVyZ2VyW2FyaWEtZXhwYW5kZWQ9J3RydWUnXSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47IH0gfVxuXG4uYnVyZ2VyLS1vcGVuIC5idXJnZXJfX2xpbmUsXG4uYnVyZ2VyW2FyaWEtZXhwYW5kZWQ9J3RydWUnXSAuYnVyZ2VyX19saW5lIHtcbiAgd2lkdGg6IDMzcHg7XG4gIGxlZnQ6IDExcHg7IH1cbiAgLmJ1cmdlci0tb3BlbiAuYnVyZ2VyX19saW5lOm50aC1vZi10eXBlKDEpLFxuICAuYnVyZ2VyW2FyaWEtZXhwYW5kZWQ9J3RydWUnXSAuYnVyZ2VyX19saW5lOm50aC1vZi10eXBlKDEpIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogdG9wIGxlZnQ7IH1cbiAgLmJ1cmdlci0tb3BlbiAuYnVyZ2VyX19saW5lOm50aC1vZi10eXBlKDIpLFxuICAuYnVyZ2VyW2FyaWEtZXhwYW5kZWQ9J3RydWUnXSAuYnVyZ2VyX19saW5lOm50aC1vZi10eXBlKDIpIHtcbiAgICBvcGFjaXR5OiAwOyB9XG4gIC5idXJnZXItLW9wZW4gLmJ1cmdlcl9fbGluZTpudGgtb2YtdHlwZSgzKSxcbiAgLmJ1cmdlclthcmlhLWV4cGFuZGVkPSd0cnVlJ10gLmJ1cmdlcl9fbGluZTpudGgtb2YtdHlwZSgzKSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBib3R0b20gbGVmdDsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzIwcHgpIHtcbiAgLmJ1cmdlci0tb3BlbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTsgfSB9XG5cbi5idXJnZXItLW9wZW4gLmJ1cmdlcl9fbGluZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZjhlNjY7IH1cblxuLmJ1cmdlci0tb3Blbjpob3ZlciAuYnVyZ2VyX19saW5lLCAuYnVyZ2VyLS1vcGVuOmFjdGl2ZSAuYnVyZ2VyX19saW5lLCAuYnVyZ2VyLS1vcGVuOmZvY3VzIC5idXJnZXJfX2xpbmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjOThkM2JiOyB9XG5cbi5oZWFkZXIge1xuICB6LWluZGV4OiA0MDtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3MjBweCkge1xuICAgIC5oZWFkZXIge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHdpZHRoOiAzMHZ3O1xuICAgICAgaGVpZ2h0OiAxMDB2aDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA5NjBweCkge1xuICAgIC5oZWFkZXIge1xuICAgICAgcGFkZGluZzogMS4yNXJlbTtcbiAgICAgIHdpZHRoOiAyNXZ3OyB9IH1cblxuLmhlYWRlcl9faW5uZXIge1xuICBwYWRkaW5nOiAwLjYyNXJlbTtcbiAgcGFkZGluZy10b3A6IDAuOTM3NXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmOGU2NjtcbiAgei1pbmRleDogNDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzIwcHgpIHtcbiAgICAuaGVhZGVyX19pbm5lciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB6LWluZGV4OiAxMDtcbiAgICAgIHBhZGRpbmctdG9wOiAxLjU2MjVyZW07IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogOTYwcHgpIHtcbiAgICAuaGVhZGVyX19pbm5lciB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxLjI1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAxLjI1cmVtOyB9IH1cblxuLmxvZ28ge1xuICBmb250LXNpemU6IDIuNDcwNTlyZW07XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAwLjk7XG4gIGxldHRlci1zcGFjaW5nOiAwO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDcyMHB4KSB7XG4gICAgLmxvZ28ge1xuICAgICAgZm9udC1zaXplOiBjYWxjKDQ1cHggKyAxdncpO1xuICAgICAgbGluZS1oZWlnaHQ6IDAuOTM3NTsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMTAwcHgpIHtcbiAgICAubG9nbyB7XG4gICAgICBmb250LXNpemU6IGNhbGMoNTVweCArIDF2dyk7IH0gfVxuXG4ubmF2IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDk1cHg7XG4gIHJpZ2h0OiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjOThkM2JiO1xuICB6LWluZGV4OiAyMDtcbiAgd2lsbC1jaGFuZ2U6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3MgZWFzZS1pbiwgb3BhY2l0eSAwLjNzIGVhc2UtaW47XG4gIHdpZHRoOiAxMDB2dztcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xNTAlKTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzIwcHgpIHtcbiAgICAubmF2IHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB0b3A6IGF1dG87XG4gICAgICByaWdodDogYXV0bztcbiAgICAgIHBhZGRpbmc6IDAuNjI1cmVtO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA5NjBweCkge1xuICAgIC5uYXYge1xuICAgICAgcGFkZGluZzogMS4yNXJlbTsgfSB9XG5cbi5uYXYtLW9wZW4ge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7IH1cblxuLm5hdl9fbGlzdC0tbWFpbiB7XG4gIGZvbnQtc2l6ZTogMi40NzA1OXJlbTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IDAuOTtcbiAgbGV0dGVyLXNwYWNpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZy10b3A6IDEuNXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDAuOHJlbTtcbiAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gIHBhZGRpbmctbGVmdDogMC42MjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjE7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDcyMHB4KSB7XG4gICAgLm5hdl9fbGlzdC0tbWFpbiB7XG4gICAgICBmb250LXNpemU6IGNhbGMoNDVweCArIDF2dyk7XG4gICAgICBsaW5lLWhlaWdodDogMC45Mzc1OyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDExMDBweCkge1xuICAgIC5uYXZfX2xpc3QtLW1haW4ge1xuICAgICAgZm9udC1zaXplOiBjYWxjKDU1cHggKyAxdncpOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDcyMHB4KSB7XG4gICAgLm5hdl9fbGlzdC0tbWFpbiB7XG4gICAgICBmb250LXNpemU6IDEuMzUyOTRyZW07XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgcGFkZGluZy10b3A6IDAuNjI1cmVtO1xuICAgICAgcGFkZGluZy1ib3R0b206IDAuNjI1cmVtOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDcyMHB4KSB7XG4gIC5uYXZfX2l0ZW0tLW1haW4ge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgcGFkZGluZzogMDsgfSB9XG5cbi5uYXZfX2xpbmsge1xuICBjb2xvcjogIzAwMDsgfVxuICAubmF2X19saW5rOmhvdmVyLCAubmF2X19saW5rOmFjdGl2ZSwgLm5hdl9fbGluazpmb2N1cyB7XG4gICAgY29sb3I6ICNmZjhlNjY7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzIwcHgpIHtcbiAgICAgIC5uYXZfX2xpbms6aG92ZXIsIC5uYXZfX2xpbms6YWN0aXZlLCAubmF2X19saW5rOmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICM5OGQzYmI7IH0gfVxuXG4ucGFnZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cblxuLnBhZ2VfX2hlYWRpbmcge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMXB4O1xuICBtYXJnaW46IC0xcHg7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY2xpcDogcmVjdCgwIDAgMCAwKTsgfVxuICAucGFnZV9faGVhZGluZy5mb2N1c2FibGU6YWN0aXZlLCAucGFnZV9faGVhZGluZy5mb2N1c2FibGU6Zm9jdXMge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbjogMDtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICBjbGlwOiBhdXRvOyB9XG5cbi5wYWdlX19tYWluIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgei1pbmRleDogMTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzIwcHgpIHtcbiAgICAucGFnZV9fbWFpbiB7XG4gICAgICBwYWRkaW5nLXRvcDogMTAwdmg7IH0gfVxuXG4ucGFnZV9fbWFpbmltYWdlIHtcbiAgbWFyZ2luLXRvcDogLTFweDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgei1pbmRleDogNDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZjhlNjY7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogY2FsYygxMDB2aCAtIDk1cHgpO1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gIEBtZWRpYSAob3JpZW50YXRpb246IGxhbmRzY2FwZSkge1xuICAgIC5wYWdlX19tYWluaW1hZ2Uge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDcyMHB4KSB7XG4gICAgLnBhZ2VfX21haW5pbWFnZSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICByaWdodDogMDtcbiAgICAgIHRvcDogMDtcbiAgICAgIHdpZHRoOiA3MHZ3O1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMHZoICsgMXB4KTsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3MjBweCkgYW5kIChvcmllbnRhdGlvbjogbGFuZHNjYXBlKSB7XG4gICAgLnBhZ2VfX21haW5pbWFnZSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwdmggKyAxcHgpOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDk2MHB4KSB7XG4gICAgLnBhZ2VfX21haW5pbWFnZSB7XG4gICAgICB3aWR0aDogNzV2dzsgfSB9XG4gIC5wYWdlX19tYWluaW1hZ2UgPiAuaW1hZ2VfX3NyYyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gOTVweCk7IH1cbiAgICBAbWVkaWEgKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpIHtcbiAgICAgIC5wYWdlX19tYWluaW1hZ2UgPiAuaW1hZ2VfX3NyYyB7XG4gICAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIHRyYW5zZm9ybTogbm9uZTsgfSB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDcyMHB4KSB7XG4gICAgICAucGFnZV9fbWFpbmltYWdlID4gLmltYWdlX19zcmMge1xuICAgICAgICBoZWlnaHQ6IGNhbGMoMTAwdmggKyAxcHgpOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDcyMHB4KSBhbmQgKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpIHtcbiAgICAucGFnZV9fbWFpbmltYWdlID4gLmltYWdlX19zcmMge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMHZoICsgMXB4KTsgfSB9XG5cbi5wYWdlX190b3Age1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGJvdHRvbTogMC42MjVyZW07XG4gIHJpZ2h0OiAwLjhyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZjhlNjY7XG4gIHotaW5kZXg6IDIwO1xuICBmb250LXNpemU6IDEuMTc2NDdyZW07XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIHdpZHRoOiAzcmVtO1xuICBoZWlnaHQ6IDNyZW07XG4gIGJvcmRlci1yYWRpdXM6IDEwMCU7IH1cbiAgLnBhZ2VfX3RvcDpob3ZlciwgLnBhZ2VfX3RvcDphY3RpdmUsIC5wYWdlX190b3A6Zm9jdXMge1xuICAgIGFuaW1hdGlvbjoganVtcCAwLjNzIDBzIGVhc2UtaW4gOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3MjBweCkge1xuICAgIC5wYWdlX190b3Age1xuICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgYm90dG9tOiAxLjI1cmVtOyB9IH1cblxuLnBhZ2VfX3RvcF9faWNvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gIHdpZHRoOiAycmVtO1xuICBoZWlnaHQ6IDJyZW07IH1cbiIsIi8qISBub3JtYWxpemUuY3NzIHY4LjAuMCB8IE1JVCBMaWNlbnNlIHwgZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3MgKi9cblxuLyogRG9jdW1lbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgbGluZSBoZWlnaHQgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gUHJldmVudCBhZGp1c3RtZW50cyBvZiBmb250IHNpemUgYWZ0ZXIgb3JpZW50YXRpb24gY2hhbmdlcyBpbiBpT1MuXG4gKi9cblxuaHRtbCB7XG4gIGxpbmUtaGVpZ2h0OiAxLjE1OyAvKiAxICovXG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLyogMiAqL1xufVxuXG4vKiBTZWN0aW9uc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuYm9keSB7XG4gIG1hcmdpbjogMDtcbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBmb250IHNpemUgYW5kIG1hcmdpbiBvbiBgaDFgIGVsZW1lbnRzIHdpdGhpbiBgc2VjdGlvbmAgYW5kXG4gKiBgYXJ0aWNsZWAgY29udGV4dHMgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgU2FmYXJpLlxuICovXG5cbmgxIHtcbiAgZm9udC1zaXplOiAyZW07XG4gIG1hcmdpbjogMC42N2VtIDA7XG59XG5cbi8qIEdyb3VwaW5nIGNvbnRlbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gRmlyZWZveC5cbiAqIDIuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UgYW5kIElFLlxuICovXG5cbmhyIHtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7IC8qIDEgKi9cbiAgaGVpZ2h0OiAwOyAvKiAxICovXG4gIG92ZXJmbG93OiB2aXNpYmxlOyAvKiAyICovXG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5wcmUge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7IC8qIDEgKi9cbiAgZm9udC1zaXplOiAxZW07IC8qIDIgKi9cbn1cblxuLyogVGV4dC1sZXZlbCBzZW1hbnRpY3NcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogUmVtb3ZlIHRoZSBncmF5IGJhY2tncm91bmQgb24gYWN0aXZlIGxpbmtzIGluIElFIDEwLlxuICovXG5cbmEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLyoqXG4gKiAxLiBSZW1vdmUgdGhlIGJvdHRvbSBib3JkZXIgaW4gQ2hyb21lIDU3LVxuICogMi4gQWRkIHRoZSBjb3JyZWN0IHRleHQgZGVjb3JhdGlvbiBpbiBDaHJvbWUsIEVkZ2UsIElFLCBPcGVyYSwgYW5kIFNhZmFyaS5cbiAqL1xuXG5hYmJyW3RpdGxlXSB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7IC8qIDEgKi9cbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IC8qIDIgKi9cbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkOyAvKiAyICovXG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgd2VpZ2h0IGluIENocm9tZSwgRWRnZSwgYW5kIFNhZmFyaS5cbiAqL1xuXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbmNvZGUsXG5rYmQsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlOyAvKiAxICovXG4gIGZvbnQtc2l6ZTogMWVtOyAvKiAyICovXG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuc21hbGwge1xuICBmb250LXNpemU6IDgwJTtcbn1cblxuLyoqXG4gKiBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBlbGVtZW50cyBmcm9tIGFmZmVjdGluZyB0aGUgbGluZSBoZWlnaHQgaW5cbiAqIGFsbCBicm93c2Vycy5cbiAqL1xuXG5zdWIsXG5zdXAge1xuICBmb250LXNpemU6IDc1JTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5zdWIge1xuICBib3R0b206IC0wLjI1ZW07XG59XG5cbnN1cCB7XG4gIHRvcDogLTAuNWVtO1xufVxuXG4vKiBFbWJlZGRlZCBjb250ZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIFJlbW92ZSB0aGUgYm9yZGVyIG9uIGltYWdlcyBpbnNpZGUgbGlua3MgaW4gSUUgMTAuXG4gKi9cblxuaW1nIHtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xufVxuXG4vKiBGb3Jtc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiAxLiBDaGFuZ2UgdGhlIGZvbnQgc3R5bGVzIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIFJlbW92ZSB0aGUgbWFyZ2luIGluIEZpcmVmb3ggYW5kIFNhZmFyaS5cbiAqL1xuXG5idXR0b24sXG5pbnB1dCxcbm9wdGdyb3VwLFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICBmb250LWZhbWlseTogaW5oZXJpdDsgLyogMSAqL1xuICBmb250LXNpemU6IDEwMCU7IC8qIDEgKi9cbiAgbGluZS1oZWlnaHQ6IDEuMTU7IC8qIDEgKi9cbiAgbWFyZ2luOiAwOyAvKiAyICovXG59XG5cbi8qKlxuICogU2hvdyB0aGUgb3ZlcmZsb3cgaW4gSUUuXG4gKiAxLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlLlxuICovXG5cbmJ1dHRvbixcbmlucHV0IHsgLyogMSAqL1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEVkZ2UsIEZpcmVmb3gsIGFuZCBJRS5cbiAqIDEuIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRmlyZWZveC5cbiAqL1xuXG5idXR0b24sXG5zZWxlY3QgeyAvKiAxICovXG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gKi9cblxuYnV0dG9uLFxuW3R5cGU9XCJidXR0b25cIl0sXG5bdHlwZT1cInJlc2V0XCJdLFxuW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGlubmVyIGJvcmRlciBhbmQgcGFkZGluZyBpbiBGaXJlZm94LlxuICovXG5cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwiYnV0dG9uXCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJyZXNldFwiXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwic3VibWl0XCJdOjotbW96LWZvY3VzLWlubmVyIHtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xuICBwYWRkaW5nOiAwO1xufVxuXG4vKipcbiAqIFJlc3RvcmUgdGhlIGZvY3VzIHN0eWxlcyB1bnNldCBieSB0aGUgcHJldmlvdXMgcnVsZS5cbiAqL1xuXG5idXR0b246LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cImJ1dHRvblwiXTotbW96LWZvY3VzcmluZyxcblt0eXBlPVwicmVzZXRcIl06LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cInN1Ym1pdFwiXTotbW96LWZvY3VzcmluZyB7XG4gIG91dGxpbmU6IDFweCBkb3R0ZWQgQnV0dG9uVGV4dDtcbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBwYWRkaW5nIGluIEZpcmVmb3guXG4gKi9cblxuZmllbGRzZXQge1xuICBwYWRkaW5nOiAwLjM1ZW0gMC43NWVtIDAuNjI1ZW07XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgdGV4dCB3cmFwcGluZyBpbiBFZGdlIGFuZCBJRS5cbiAqIDIuIENvcnJlY3QgdGhlIGNvbG9yIGluaGVyaXRhbmNlIGZyb20gYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBJRS5cbiAqIDMuIFJlbW92ZSB0aGUgcGFkZGluZyBzbyBkZXZlbG9wZXJzIGFyZSBub3QgY2F1Z2h0IG91dCB3aGVuIHRoZXkgemVybyBvdXRcbiAqICAgIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbmxlZ2VuZCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIDEgKi9cbiAgY29sb3I6IGluaGVyaXQ7IC8qIDIgKi9cbiAgZGlzcGxheTogdGFibGU7IC8qIDEgKi9cbiAgbWF4LXdpZHRoOiAxMDAlOyAvKiAxICovXG4gIHBhZGRpbmc6IDA7IC8qIDMgKi9cbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDsgLyogMSAqL1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCB2ZXJ0aWNhbCBhbGlnbm1lbnQgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG4gKi9cblxucHJvZ3Jlc3Mge1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRSAxMCsuXG4gKi9cblxudGV4dGFyZWEge1xuICBvdmVyZmxvdzogYXV0bztcbn1cblxuLyoqXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBJRSAxMC5cbiAqIDIuIFJlbW92ZSB0aGUgcGFkZGluZyBpbiBJRSAxMC5cbiAqL1xuXG5bdHlwZT1cImNoZWNrYm94XCJdLFxuW3R5cGU9XCJyYWRpb1wiXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIDEgKi9cbiAgcGFkZGluZzogMDsgLyogMiAqL1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGN1cnNvciBzdHlsZSBvZiBpbmNyZW1lbnQgYW5kIGRlY3JlbWVudCBidXR0b25zIGluIENocm9tZS5cbiAqL1xuXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIG9kZCBhcHBlYXJhbmNlIGluIENocm9tZSBhbmQgU2FmYXJpLlxuICogMi4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXG4gKi9cblxuW3R5cGU9XCJzZWFyY2hcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLyogMSAqL1xuICBvdXRsaW5lLW9mZnNldDogLTJweDsgLyogMiAqL1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBtYWNPUy5cbiAqL1xuXG5bdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICogMi4gQ2hhbmdlIGZvbnQgcHJvcGVydGllcyB0byBgaW5oZXJpdGAgaW4gU2FmYXJpLlxuICovXG5cbjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLyogMSAqL1xuICBmb250OiBpbmhlcml0OyAvKiAyICovXG59XG5cbi8qIEludGVyYWN0aXZlXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gRWRnZSwgSUUgMTArLCBhbmQgRmlyZWZveC5cbiAqL1xuXG5kZXRhaWxzIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGxpc3QtaXRlbTtcbn1cblxuLyogTWlzY1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMCsuXG4gKi9cblxudGVtcGxhdGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwLlxuICovXG5cbltoaWRkZW5dIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbiIsIi8qKlxuICogU3dpcGVyIDQuMy4zXG4gKiBNb3N0IG1vZGVybiBtb2JpbGUgdG91Y2ggc2xpZGVyIGFuZCBmcmFtZXdvcmsgd2l0aCBoYXJkd2FyZSBhY2NlbGVyYXRlZCB0cmFuc2l0aW9uc1xuICogaHR0cDovL3d3dy5pZGFuZ2Vyby51cy9zd2lwZXIvXG4gKlxuICogQ29weXJpZ2h0IDIwMTQtMjAxOCBWbGFkaW1pciBLaGFybGFtcGlkaVxuICpcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZVxuICpcbiAqIFJlbGVhc2VkIG9uOiBKdW5lIDUsIDIwMThcbiAqL1xuLnN3aXBlci1jb250YWluZXIge1xuICBtYXJnaW46IDAgYXV0bztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBwYWRkaW5nOiAwO1xuICAvKiBGaXggb2YgV2Via2l0IGZsaWNrZXJpbmcgKi9cbiAgei1pbmRleDogMTtcbn1cbi5zd2lwZXItY29udGFpbmVyLW5vLWZsZXhib3ggLnN3aXBlci1zbGlkZSB7XG4gIGZsb2F0OiBsZWZ0O1xufVxuLnN3aXBlci1jb250YWluZXItdmVydGljYWwgPiAuc3dpcGVyLXdyYXBwZXIge1xuICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xuICAtd2Via2l0LWJveC1kaXJlY3Rpb246IG5vcm1hbDtcbiAgLXdlYmtpdC1mbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAtbXMtZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cbi5zd2lwZXItd3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgei1pbmRleDogMTtcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogLXdlYmtpdC10cmFuc2Zvcm07XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IC13ZWJraXQtdHJhbnNmb3JtO1xuICAtby10cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCAtd2Via2l0LXRyYW5zZm9ybTtcbiAgLXdlYmtpdC1ib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG59XG4uc3dpcGVyLWNvbnRhaW5lci1hbmRyb2lkIC5zd2lwZXItc2xpZGUsXG4uc3dpcGVyLXdyYXBwZXIge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMHB4LCAwLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwcHgsIDAsIDApO1xufVxuLnN3aXBlci1jb250YWluZXItbXVsdGlyb3cgPiAuc3dpcGVyLXdyYXBwZXIge1xuICAtd2Via2l0LWZsZXgtd3JhcDogd3JhcDtcbiAgLW1zLWZsZXgtd3JhcDogd3JhcDtcbiAgZmxleC13cmFwOiB3cmFwO1xufVxuLnN3aXBlci1jb250YWluZXItZnJlZS1tb2RlID4gLnN3aXBlci13cmFwcGVyIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG4gIC1vLXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xuICBtYXJnaW46IDAgYXV0bztcbn1cbi5zd2lwZXItc2xpZGUge1xuICAtd2Via2l0LWZsZXgtc2hyaW5rOiAwO1xuICAtbXMtZmxleC1uZWdhdGl2ZTogMDtcbiAgZmxleC1zaHJpbms6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiAtd2Via2l0LXRyYW5zZm9ybTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogLXdlYmtpdC10cmFuc2Zvcm07XG4gIC1vLXRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIC13ZWJraXQtdHJhbnNmb3JtO1xufVxuLnN3aXBlci1pbnZpc2libGUtYmxhbmstc2xpZGUge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG4vKiBBdXRvIEhlaWdodCAqL1xuLnN3aXBlci1jb250YWluZXItYXV0b2hlaWdodCxcbi5zd2lwZXItY29udGFpbmVyLWF1dG9oZWlnaHQgLnN3aXBlci1zbGlkZSB7XG4gIGhlaWdodDogYXV0bztcbn1cbi5zd2lwZXItY29udGFpbmVyLWF1dG9oZWlnaHQgLnN3aXBlci13cmFwcGVyIHtcbiAgLXdlYmtpdC1ib3gtYWxpZ246IHN0YXJ0O1xuICAtd2Via2l0LWFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAtbXMtZmxleC1hbGlnbjogc3RhcnQ7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IGhlaWdodCwgLXdlYmtpdC10cmFuc2Zvcm07XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IGhlaWdodCwgLXdlYmtpdC10cmFuc2Zvcm07XG4gIC1vLXRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgaGVpZ2h0O1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIGhlaWdodDtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBoZWlnaHQsIC13ZWJraXQtdHJhbnNmb3JtO1xufVxuLyogM0QgRWZmZWN0cyAqL1xuLnN3aXBlci1jb250YWluZXItM2Qge1xuICAtd2Via2l0LXBlcnNwZWN0aXZlOiAxMjAwcHg7XG4gIHBlcnNwZWN0aXZlOiAxMjAwcHg7XG59XG4uc3dpcGVyLWNvbnRhaW5lci0zZCAuc3dpcGVyLXdyYXBwZXIsXG4uc3dpcGVyLWNvbnRhaW5lci0zZCAuc3dpcGVyLXNsaWRlLFxuLnN3aXBlci1jb250YWluZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctbGVmdCxcbi5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LXJpZ2h0LFxuLnN3aXBlci1jb250YWluZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctdG9wLFxuLnN3aXBlci1jb250YWluZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctYm90dG9tLFxuLnN3aXBlci1jb250YWluZXItM2QgLnN3aXBlci1jdWJlLXNoYWRvdyB7XG4gIC13ZWJraXQtdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcbiAgdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcbn1cbi5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LWxlZnQsXG4uc3dpcGVyLWNvbnRhaW5lci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1yaWdodCxcbi5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LXRvcCxcbi5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LWJvdHRvbSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgei1pbmRleDogMTA7XG59XG4uc3dpcGVyLWNvbnRhaW5lci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1sZWZ0IHtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIHJpZ2h0IHRvcCwgbGVmdCB0b3AsIGZyb20ocmdiYSgwLCAwLCAwLCAwLjUpKSwgdG8ocmdiYSgwLCAwLCAwLCAwKSkpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChyaWdodCwgcmdiYSgwLCAwLCAwLCAwLjUpLCByZ2JhKDAsIDAsIDAsIDApKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KHJpZ2h0LCByZ2JhKDAsIDAsIDAsIDAuNSksIHJnYmEoMCwgMCwgMCwgMCkpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gbGVmdCwgcmdiYSgwLCAwLCAwLCAwLjUpLCByZ2JhKDAsIDAsIDAsIDApKTtcbn1cbi5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LXJpZ2h0IHtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIGxlZnQgdG9wLCByaWdodCB0b3AsIGZyb20ocmdiYSgwLCAwLCAwLCAwLjUpKSwgdG8ocmdiYSgwLCAwLCAwLCAwKSkpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWZ0LCByZ2JhKDAsIDAsIDAsIDAuNSksIHJnYmEoMCwgMCwgMCwgMCkpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQobGVmdCwgcmdiYSgwLCAwLCAwLCAwLjUpLCByZ2JhKDAsIDAsIDAsIDApKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCByZ2JhKDAsIDAsIDAsIDAuNSksIHJnYmEoMCwgMCwgMCwgMCkpO1xufVxuLnN3aXBlci1jb250YWluZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctdG9wIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIGxlZnQgYm90dG9tLCBsZWZ0IHRvcCwgZnJvbShyZ2JhKDAsIDAsIDAsIDAuNSkpLCB0byhyZ2JhKDAsIDAsIDAsIDApKSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KGJvdHRvbSwgcmdiYSgwLCAwLCAwLCAwLjUpLCByZ2JhKDAsIDAsIDAsIDApKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KGJvdHRvbSwgcmdiYSgwLCAwLCAwLCAwLjUpLCByZ2JhKDAsIDAsIDAsIDApKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHRvcCwgcmdiYSgwLCAwLCAwLCAwLjUpLCByZ2JhKDAsIDAsIDAsIDApKTtcbn1cbi5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LWJvdHRvbSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCBsZWZ0IHRvcCwgbGVmdCBib3R0b20sIGZyb20ocmdiYSgwLCAwLCAwLCAwLjUpKSwgdG8ocmdiYSgwLCAwLCAwLCAwKSkpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsIHJnYmEoMCwgMCwgMCwgMC41KSwgcmdiYSgwLCAwLCAwLCAwKSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCh0b3AsIHJnYmEoMCwgMCwgMCwgMC41KSwgcmdiYSgwLCAwLCAwLCAwKSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHJnYmEoMCwgMCwgMCwgMC41KSwgcmdiYSgwLCAwLCAwLCAwKSk7XG59XG4vKiBJRTEwIFdpbmRvd3MgUGhvbmUgOCBGaXhlcyAqL1xuLnN3aXBlci1jb250YWluZXItd3A4LWhvcml6b250YWwsXG4uc3dpcGVyLWNvbnRhaW5lci13cDgtaG9yaXpvbnRhbCA+IC5zd2lwZXItd3JhcHBlciB7XG4gIC1tcy10b3VjaC1hY3Rpb246IHBhbi15O1xuICB0b3VjaC1hY3Rpb246IHBhbi15O1xufVxuLnN3aXBlci1jb250YWluZXItd3A4LXZlcnRpY2FsLFxuLnN3aXBlci1jb250YWluZXItd3A4LXZlcnRpY2FsID4gLnN3aXBlci13cmFwcGVyIHtcbiAgLW1zLXRvdWNoLWFjdGlvbjogcGFuLXg7XG4gIHRvdWNoLWFjdGlvbjogcGFuLXg7XG59XG4uc3dpcGVyLWJ1dHRvbi1wcmV2LFxuLnN3aXBlci1idXR0b24tbmV4dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHdpZHRoOiAyN3B4O1xuICBoZWlnaHQ6IDQ0cHg7XG4gIG1hcmdpbi10b3A6IC0yMnB4O1xuICB6LWluZGV4OiAxMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IDI3cHggNDRweDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuLnN3aXBlci1idXR0b24tcHJldi5zd2lwZXItYnV0dG9uLWRpc2FibGVkLFxuLnN3aXBlci1idXR0b24tbmV4dC5zd2lwZXItYnV0dG9uLWRpc2FibGVkIHtcbiAgb3BhY2l0eTogMC4zNTtcbiAgY3Vyc29yOiBhdXRvO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cbi5zd2lwZXItYnV0dG9uLXByZXYsXG4uc3dpcGVyLWNvbnRhaW5lci1ydGwgLnN3aXBlci1idXR0b24tbmV4dCB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0Zi04LCUzQ3N2ZyUyMHhtbG5zJTNEJ2h0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyclMjB2aWV3Qm94JTNEJzAlMjAwJTIwMjclMjA0NCclM0UlM0NwYXRoJTIwZCUzRCdNMCUyQzIyTDIyJTJDMGwyLjElMkMyLjFMNC4yJTJDMjJsMTkuOSUyQzE5LjlMMjIlMkM0NEwwJTJDMjJMMCUyQzIyTDAlMkMyMnonJTIwZmlsbCUzRCclMjMwMDdhZmYnJTJGJTNFJTNDJTJGc3ZnJTNFXCIpO1xuICBsZWZ0OiAxMHB4O1xuICByaWdodDogYXV0bztcbn1cbi5zd2lwZXItYnV0dG9uLW5leHQsXG4uc3dpcGVyLWNvbnRhaW5lci1ydGwgLnN3aXBlci1idXR0b24tcHJldiB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0Zi04LCUzQ3N2ZyUyMHhtbG5zJTNEJ2h0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyclMjB2aWV3Qm94JTNEJzAlMjAwJTIwMjclMjA0NCclM0UlM0NwYXRoJTIwZCUzRCdNMjclMkMyMkwyNyUyQzIyTDUlMkM0NGwtMi4xLTIuMUwyMi44JTJDMjJMMi45JTJDMi4xTDUlMkMwTDI3JTJDMjJMMjclMkMyMnonJTIwZmlsbCUzRCclMjMwMDdhZmYnJTJGJTNFJTNDJTJGc3ZnJTNFXCIpO1xuICByaWdodDogMTBweDtcbiAgbGVmdDogYXV0bztcbn1cbi5zd2lwZXItYnV0dG9uLXByZXYuc3dpcGVyLWJ1dHRvbi13aGl0ZSxcbi5zd2lwZXItY29udGFpbmVyLXJ0bCAuc3dpcGVyLWJ1dHRvbi1uZXh0LnN3aXBlci1idXR0b24td2hpdGUge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGYtOCwlM0NzdmclMjB4bWxucyUzRCdodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmcnJTIwdmlld0JveCUzRCcwJTIwMCUyMDI3JTIwNDQnJTNFJTNDcGF0aCUyMGQlM0QnTTAlMkMyMkwyMiUyQzBsMi4xJTJDMi4xTDQuMiUyQzIybDE5LjklMkMxOS45TDIyJTJDNDRMMCUyQzIyTDAlMkMyMkwwJTJDMjJ6JyUyMGZpbGwlM0QnJTIzZmZmZmZmJyUyRiUzRSUzQyUyRnN2ZyUzRVwiKTtcbn1cbi5zd2lwZXItYnV0dG9uLW5leHQuc3dpcGVyLWJ1dHRvbi13aGl0ZSxcbi5zd2lwZXItY29udGFpbmVyLXJ0bCAuc3dpcGVyLWJ1dHRvbi1wcmV2LnN3aXBlci1idXR0b24td2hpdGUge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGYtOCwlM0NzdmclMjB4bWxucyUzRCdodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmcnJTIwdmlld0JveCUzRCcwJTIwMCUyMDI3JTIwNDQnJTNFJTNDcGF0aCUyMGQlM0QnTTI3JTJDMjJMMjclMkMyMkw1JTJDNDRsLTIuMS0yLjFMMjIuOCUyQzIyTDIuOSUyQzIuMUw1JTJDMEwyNyUyQzIyTDI3JTJDMjJ6JyUyMGZpbGwlM0QnJTIzZmZmZmZmJyUyRiUzRSUzQyUyRnN2ZyUzRVwiKTtcbn1cbi5zd2lwZXItYnV0dG9uLXByZXYuc3dpcGVyLWJ1dHRvbi1ibGFjayxcbi5zd2lwZXItY29udGFpbmVyLXJ0bCAuc3dpcGVyLWJ1dHRvbi1uZXh0LnN3aXBlci1idXR0b24tYmxhY2sge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGYtOCwlM0NzdmclMjB4bWxucyUzRCdodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmcnJTIwdmlld0JveCUzRCcwJTIwMCUyMDI3JTIwNDQnJTNFJTNDcGF0aCUyMGQlM0QnTTAlMkMyMkwyMiUyQzBsMi4xJTJDMi4xTDQuMiUyQzIybDE5LjklMkMxOS45TDIyJTJDNDRMMCUyQzIyTDAlMkMyMkwwJTJDMjJ6JyUyMGZpbGwlM0QnJTIzMDAwMDAwJyUyRiUzRSUzQyUyRnN2ZyUzRVwiKTtcbn1cbi5zd2lwZXItYnV0dG9uLW5leHQuc3dpcGVyLWJ1dHRvbi1ibGFjayxcbi5zd2lwZXItY29udGFpbmVyLXJ0bCAuc3dpcGVyLWJ1dHRvbi1wcmV2LnN3aXBlci1idXR0b24tYmxhY2sge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGYtOCwlM0NzdmclMjB4bWxucyUzRCdodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmcnJTIwdmlld0JveCUzRCcwJTIwMCUyMDI3JTIwNDQnJTNFJTNDcGF0aCUyMGQlM0QnTTI3JTJDMjJMMjclMkMyMkw1JTJDNDRsLTIuMS0yLjFMMjIuOCUyQzIyTDIuOSUyQzIuMUw1JTJDMEwyNyUyQzIyTDI3JTJDMjJ6JyUyMGZpbGwlM0QnJTIzMDAwMDAwJyUyRiUzRSUzQyUyRnN2ZyUzRVwiKTtcbn1cbi5zd2lwZXItYnV0dG9uLWxvY2sge1xuICBkaXNwbGF5OiBub25lO1xufVxuLnN3aXBlci1wYWdpbmF0aW9uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogMzAwbXMgb3BhY2l0eTtcbiAgLW8tdHJhbnNpdGlvbjogMzAwbXMgb3BhY2l0eTtcbiAgdHJhbnNpdGlvbjogMzAwbXMgb3BhY2l0eTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB6LWluZGV4OiAxMDtcbn1cbi5zd2lwZXItcGFnaW5hdGlvbi5zd2lwZXItcGFnaW5hdGlvbi1oaWRkZW4ge1xuICBvcGFjaXR5OiAwO1xufVxuLyogQ29tbW9uIFN0eWxlcyAqL1xuLnN3aXBlci1wYWdpbmF0aW9uLWZyYWN0aW9uLFxuLnN3aXBlci1wYWdpbmF0aW9uLWN1c3RvbSxcbi5zd2lwZXItY29udGFpbmVyLWhvcml6b250YWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cyB7XG4gIGJvdHRvbTogMTBweDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG59XG4vKiBCdWxsZXRzICovXG4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgZm9udC1zaXplOiAwO1xufVxuLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDAuMzMpO1xuICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgwLjMzKTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjMzKTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWFjdGl2ZSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIHRyYW5zZm9ybTogc2NhbGUoMSk7XG59XG4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlLW1haW4ge1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIC1tcy10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xufVxuLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWFjdGl2ZS1wcmV2IHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDAuNjYpO1xuICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgwLjY2KTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjY2KTtcbn1cbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUtcHJldi1wcmV2IHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDAuMzMpO1xuICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgwLjMzKTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjMzKTtcbn1cbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUtbmV4dCB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwLjY2KTtcbiAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMC42Nik7XG4gIHRyYW5zZm9ybTogc2NhbGUoMC42Nik7XG59XG4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlLW5leHQtbmV4dCB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwLjMzKTtcbiAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMC4zMyk7XG4gIHRyYW5zZm9ybTogc2NhbGUoMC4zMyk7XG59XG4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgd2lkdGg6IDhweDtcbiAgaGVpZ2h0OiA4cHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgYmFja2dyb3VuZDogIzAwMDtcbiAgb3BhY2l0eTogMC4yO1xufVxuYnV0dG9uLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XG4gIGJvcmRlcjogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmU7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xuICBhcHBlYXJhbmNlOiBub25lO1xufVxuLnN3aXBlci1wYWdpbmF0aW9uLWNsaWNrYWJsZSAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUge1xuICBvcGFjaXR5OiAxO1xuICBiYWNrZ3JvdW5kOiAjMDA3YWZmO1xufVxuLnN3aXBlci1jb250YWluZXItdmVydGljYWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cyB7XG4gIHJpZ2h0OiAxMHB4O1xuICB0b3A6IDUwJTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDBweCwgLTUwJSwgMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMHB4LCAtNTAlLCAwKTtcbn1cbi5zd2lwZXItY29udGFpbmVyLXZlcnRpY2FsID4gLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XG4gIG1hcmdpbjogNnB4IDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLnN3aXBlci1jb250YWluZXItdmVydGljYWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMge1xuICB0b3A6IDUwJTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgd2lkdGg6IDhweDtcbn1cbi5zd2lwZXItY29udGFpbmVyLXZlcnRpY2FsID4gLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogMjAwbXMgdG9wLCAyMDBtcyAtd2Via2l0LXRyYW5zZm9ybTtcbiAgdHJhbnNpdGlvbjogMjAwbXMgdG9wLCAyMDBtcyAtd2Via2l0LXRyYW5zZm9ybTtcbiAgLW8tdHJhbnNpdGlvbjogMjAwbXMgdHJhbnNmb3JtLCAyMDBtcyB0b3A7XG4gIHRyYW5zaXRpb246IDIwMG1zIHRyYW5zZm9ybSwgMjAwbXMgdG9wO1xuICB0cmFuc2l0aW9uOiAyMDBtcyB0cmFuc2Zvcm0sIDIwMG1zIHRvcCwgMjAwbXMgLXdlYmtpdC10cmFuc2Zvcm07XG59XG4uc3dpcGVyLWNvbnRhaW5lci1ob3Jpem9udGFsID4gLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XG4gIG1hcmdpbjogMCA0cHg7XG59XG4uc3dpcGVyLWNvbnRhaW5lci1ob3Jpem9udGFsID4gLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIHtcbiAgbGVmdDogNTAlO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuLnN3aXBlci1jb250YWluZXItaG9yaXpvbnRhbCA+IC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAyMDBtcyBsZWZ0LCAyMDBtcyAtd2Via2l0LXRyYW5zZm9ybTtcbiAgdHJhbnNpdGlvbjogMjAwbXMgbGVmdCwgMjAwbXMgLXdlYmtpdC10cmFuc2Zvcm07XG4gIC1vLXRyYW5zaXRpb246IDIwMG1zIHRyYW5zZm9ybSwgMjAwbXMgbGVmdDtcbiAgdHJhbnNpdGlvbjogMjAwbXMgdHJhbnNmb3JtLCAyMDBtcyBsZWZ0O1xuICB0cmFuc2l0aW9uOiAyMDBtcyB0cmFuc2Zvcm0sIDIwMG1zIGxlZnQsIDIwMG1zIC13ZWJraXQtdHJhbnNmb3JtO1xufVxuLnN3aXBlci1jb250YWluZXItaG9yaXpvbnRhbC5zd2lwZXItY29udGFpbmVyLXJ0bCA+IC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogMjAwbXMgcmlnaHQsIDIwMG1zIC13ZWJraXQtdHJhbnNmb3JtO1xuICB0cmFuc2l0aW9uOiAyMDBtcyByaWdodCwgMjAwbXMgLXdlYmtpdC10cmFuc2Zvcm07XG4gIC1vLXRyYW5zaXRpb246IDIwMG1zIHRyYW5zZm9ybSwgMjAwbXMgcmlnaHQ7XG4gIHRyYW5zaXRpb246IDIwMG1zIHRyYW5zZm9ybSwgMjAwbXMgcmlnaHQ7XG4gIHRyYW5zaXRpb246IDIwMG1zIHRyYW5zZm9ybSwgMjAwbXMgcmlnaHQsIDIwMG1zIC13ZWJraXQtdHJhbnNmb3JtO1xufVxuLyogUHJvZ3Jlc3MgKi9cbi5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2JhciB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4yNSk7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbn1cbi5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2JhciAuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXItZmlsbCB7XG4gIGJhY2tncm91bmQ6ICMwMDdhZmY7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMCk7XG4gIC1tcy10cmFuc2Zvcm06IHNjYWxlKDApO1xuICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgdG9wO1xuICAtbXMtdHJhbnNmb3JtLW9yaWdpbjogbGVmdCB0b3A7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgdG9wO1xufVxuLnN3aXBlci1jb250YWluZXItcnRsIC5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2JhciAuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXItZmlsbCB7XG4gIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgdG9wO1xuICAtbXMtdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgdG9wO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCB0b3A7XG59XG4uc3dpcGVyLWNvbnRhaW5lci1ob3Jpem9udGFsID4gLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLFxuLnN3aXBlci1jb250YWluZXItdmVydGljYWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXItb3Bwb3NpdGUge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiA0cHg7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbn1cbi5zd2lwZXItY29udGFpbmVyLXZlcnRpY2FsID4gLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLFxuLnN3aXBlci1jb250YWluZXItaG9yaXpvbnRhbCA+IC5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci1vcHBvc2l0ZSB7XG4gIHdpZHRoOiA0cHg7XG4gIGhlaWdodDogMTAwJTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xufVxuLnN3aXBlci1wYWdpbmF0aW9uLXdoaXRlIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlIHtcbiAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbn1cbi5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci5zd2lwZXItcGFnaW5hdGlvbi13aGl0ZSB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yNSk7XG59XG4uc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIuc3dpcGVyLXBhZ2luYXRpb24td2hpdGUgLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLWZpbGwge1xuICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xufVxuLnN3aXBlci1wYWdpbmF0aW9uLWJsYWNrIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlIHtcbiAgYmFja2dyb3VuZDogIzAwMDAwMDtcbn1cbi5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci5zd2lwZXItcGFnaW5hdGlvbi1ibGFjayB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4yNSk7XG59XG4uc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIuc3dpcGVyLXBhZ2luYXRpb24tYmxhY2sgLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLWZpbGwge1xuICBiYWNrZ3JvdW5kOiAjMDAwMDAwO1xufVxuLnN3aXBlci1wYWdpbmF0aW9uLWxvY2sge1xuICBkaXNwbGF5OiBub25lO1xufVxuLyogU2Nyb2xsYmFyICovXG4uc3dpcGVyLXNjcm9sbGJhciB7XG4gIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLW1zLXRvdWNoLWFjdGlvbjogbm9uZTtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjEpO1xufVxuLnN3aXBlci1jb250YWluZXItaG9yaXpvbnRhbCA+IC5zd2lwZXItc2Nyb2xsYmFyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAxJTtcbiAgYm90dG9tOiAzcHg7XG4gIHotaW5kZXg6IDUwO1xuICBoZWlnaHQ6IDVweDtcbiAgd2lkdGg6IDk4JTtcbn1cbi5zd2lwZXItY29udGFpbmVyLXZlcnRpY2FsID4gLnN3aXBlci1zY3JvbGxiYXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAzcHg7XG4gIHRvcDogMSU7XG4gIHotaW5kZXg6IDUwO1xuICB3aWR0aDogNXB4O1xuICBoZWlnaHQ6IDk4JTtcbn1cbi5zd2lwZXItc2Nyb2xsYmFyLWRyYWcge1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAxMDAlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC41KTtcbiAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xufVxuLnN3aXBlci1zY3JvbGxiYXItY3Vyc29yLWRyYWcge1xuICBjdXJzb3I6IG1vdmU7XG59XG4uc3dpcGVyLXNjcm9sbGJhci1sb2NrIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5zd2lwZXItem9vbS1jb250YWluZXIge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgZGlzcGxheTogZmxleDtcbiAgLXdlYmtpdC1ib3gtcGFjazogY2VudGVyO1xuICAtd2Via2l0LWp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAtbXMtZmxleC1wYWNrOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyO1xuICAtd2Via2l0LWFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi5zd2lwZXItem9vbS1jb250YWluZXIgPiBpbWcsXG4uc3dpcGVyLXpvb20tY29udGFpbmVyID4gc3ZnLFxuLnN3aXBlci16b29tLWNvbnRhaW5lciA+IGNhbnZhcyB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWF4LWhlaWdodDogMTAwJTtcbiAgLW8tb2JqZWN0LWZpdDogY29udGFpbjtcbiAgb2JqZWN0LWZpdDogY29udGFpbjtcbn1cbi5zd2lwZXItc2xpZGUtem9vbWVkIHtcbiAgY3Vyc29yOiBtb3ZlO1xufVxuLyogUHJlbG9hZGVyICovXG4uc3dpcGVyLWxhenktcHJlbG9hZGVyIHtcbiAgd2lkdGg6IDQycHg7XG4gIGhlaWdodDogNDJweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiA1MCU7XG4gIHRvcDogNTAlO1xuICBtYXJnaW4tbGVmdDogLTIxcHg7XG4gIG1hcmdpbi10b3A6IC0yMXB4O1xuICB6LWluZGV4OiAxMDtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiA1MCU7XG4gIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiA1MCU7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDUwJTtcbiAgLXdlYmtpdC1hbmltYXRpb246IHN3aXBlci1wcmVsb2FkZXItc3BpbiAxcyBzdGVwcygxMiwgZW5kKSBpbmZpbml0ZTtcbiAgYW5pbWF0aW9uOiBzd2lwZXItcHJlbG9hZGVyLXNwaW4gMXMgc3RlcHMoMTIsIGVuZCkgaW5maW5pdGU7XG59XG4uc3dpcGVyLWxhenktcHJlbG9hZGVyOmFmdGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNvbnRlbnQ6ICcnO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGYtOCwlM0NzdmclMjB2aWV3Qm94JTNEJzAlMjAwJTIwMTIwJTIwMTIwJyUyMHhtbG5zJTNEJ2h0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyclMjB4bWxucyUzQXhsaW5rJTNEJ2h0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMTk5OSUyRnhsaW5rJyUzRSUzQ2RlZnMlM0UlM0NsaW5lJTIwaWQlM0QnbCclMjB4MSUzRCc2MCclMjB4MiUzRCc2MCclMjB5MSUzRCc3JyUyMHkyJTNEJzI3JyUyMHN0cm9rZSUzRCclMjM2YzZjNmMnJTIwc3Ryb2tlLXdpZHRoJTNEJzExJyUyMHN0cm9rZS1saW5lY2FwJTNEJ3JvdW5kJyUyRiUzRSUzQyUyRmRlZnMlM0UlM0NnJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuMjcnJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuMjcnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSgzMCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjI3JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoNjAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy4yNyclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDkwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuMjcnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSgxMjAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy4yNyclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDE1MCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjM3JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMTgwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuNDYnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSgyMTAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy41NiclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDI0MCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjY2JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMjcwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuNzUnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSgzMDAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy44NSclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDMzMCUyMDYwJTJDNjApJyUyRiUzRSUzQyUyRmclM0UlM0MlMkZzdmclM0VcIik7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDUwJTtcbiAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuLnN3aXBlci1sYXp5LXByZWxvYWRlci13aGl0ZTphZnRlciB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0Zi04LCUzQ3N2ZyUyMHZpZXdCb3glM0QnMCUyMDAlMjAxMjAlMjAxMjAnJTIweG1sbnMlM0QnaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJyUyMHhtbG5zJTNBeGxpbmslM0QnaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYxOTk5JTJGeGxpbmsnJTNFJTNDZGVmcyUzRSUzQ2xpbmUlMjBpZCUzRCdsJyUyMHgxJTNEJzYwJyUyMHgyJTNEJzYwJyUyMHkxJTNEJzcnJTIweTIlM0QnMjcnJTIwc3Ryb2tlJTNEJyUyM2ZmZiclMjBzdHJva2Utd2lkdGglM0QnMTEnJTIwc3Ryb2tlLWxpbmVjYXAlM0Qncm91bmQnJTJGJTNFJTNDJTJGZGVmcyUzRSUzQ2clM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy4yNyclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy4yNyclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDMwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuMjcnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSg2MCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjI3JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoOTAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy4yNyclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDEyMCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjI3JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMTUwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuMzcnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSgxODAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy40NiclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDIxMCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjU2JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMjQwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuNjYnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSgyNzAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy43NSclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDMwMCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjg1JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMzMwJTIwNjAlMkM2MCknJTJGJTNFJTNDJTJGZyUzRSUzQyUyRnN2ZyUzRVwiKTtcbn1cbkAtd2Via2l0LWtleWZyYW1lcyBzd2lwZXItcHJlbG9hZGVyLXNwaW4ge1xuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgfVxufVxuQGtleWZyYW1lcyBzd2lwZXItcHJlbG9hZGVyLXNwaW4ge1xuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgfVxufVxuLyogYTExeSAqL1xuLnN3aXBlci1jb250YWluZXIgLnN3aXBlci1ub3RpZmljYXRpb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIG9wYWNpdHk6IDA7XG4gIHotaW5kZXg6IC0xMDAwO1xufVxuLnN3aXBlci1jb250YWluZXItZmFkZS5zd2lwZXItY29udGFpbmVyLWZyZWUtbW9kZSAuc3dpcGVyLXNsaWRlIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG4gIC1vLXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xufVxuLnN3aXBlci1jb250YWluZXItZmFkZSAuc3dpcGVyLXNsaWRlIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eTtcbiAgLW8tdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eTtcbn1cbi5zd2lwZXItY29udGFpbmVyLWZhZGUgLnN3aXBlci1zbGlkZSAuc3dpcGVyLXNsaWRlIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG4uc3dpcGVyLWNvbnRhaW5lci1mYWRlIC5zd2lwZXItc2xpZGUtYWN0aXZlLFxuLnN3aXBlci1jb250YWluZXItZmFkZSAuc3dpcGVyLXNsaWRlLWFjdGl2ZSAuc3dpcGVyLXNsaWRlLWFjdGl2ZSB7XG4gIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xufVxuLnN3aXBlci1jb250YWluZXItY3ViZSB7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuLnN3aXBlci1jb250YWluZXItY3ViZSAuc3dpcGVyLXNsaWRlIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIHotaW5kZXg6IDE7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiAwIDA7XG4gIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiAwIDA7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDAgMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbn1cbi5zd2lwZXItY29udGFpbmVyLWN1YmUgLnN3aXBlci1zbGlkZSAuc3dpcGVyLXNsaWRlIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG4uc3dpcGVyLWNvbnRhaW5lci1jdWJlLnN3aXBlci1jb250YWluZXItcnRsIC5zd2lwZXItc2xpZGUge1xuICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IDEwMCUgMDtcbiAgLW1zLXRyYW5zZm9ybS1vcmlnaW46IDEwMCUgMDtcbiAgdHJhbnNmb3JtLW9yaWdpbjogMTAwJSAwO1xufVxuLnN3aXBlci1jb250YWluZXItY3ViZSAuc3dpcGVyLXNsaWRlLWFjdGl2ZSxcbi5zd2lwZXItY29udGFpbmVyLWN1YmUgLnN3aXBlci1zbGlkZS1hY3RpdmUgLnN3aXBlci1zbGlkZS1hY3RpdmUge1xuICBwb2ludGVyLWV2ZW50czogYXV0bztcbn1cbi5zd2lwZXItY29udGFpbmVyLWN1YmUgLnN3aXBlci1zbGlkZS1hY3RpdmUsXG4uc3dpcGVyLWNvbnRhaW5lci1jdWJlIC5zd2lwZXItc2xpZGUtbmV4dCxcbi5zd2lwZXItY29udGFpbmVyLWN1YmUgLnN3aXBlci1zbGlkZS1wcmV2LFxuLnN3aXBlci1jb250YWluZXItY3ViZSAuc3dpcGVyLXNsaWRlLW5leHQgKyAuc3dpcGVyLXNsaWRlIHtcbiAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG59XG4uc3dpcGVyLWNvbnRhaW5lci1jdWJlIC5zd2lwZXItc2xpZGUtc2hhZG93LXRvcCxcbi5zd2lwZXItY29udGFpbmVyLWN1YmUgLnN3aXBlci1zbGlkZS1zaGFkb3ctYm90dG9tLFxuLnN3aXBlci1jb250YWluZXItY3ViZSAuc3dpcGVyLXNsaWRlLXNoYWRvdy1sZWZ0LFxuLnN3aXBlci1jb250YWluZXItY3ViZSAuc3dpcGVyLXNsaWRlLXNoYWRvdy1yaWdodCB7XG4gIHotaW5kZXg6IDA7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG59XG4uc3dpcGVyLWNvbnRhaW5lci1jdWJlIC5zd2lwZXItY3ViZS1zaGFkb3cge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIGJvdHRvbTogMHB4O1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kOiAjMDAwO1xuICBvcGFjaXR5OiAwLjY7XG4gIC13ZWJraXQtZmlsdGVyOiBibHVyKDUwcHgpO1xuICBmaWx0ZXI6IGJsdXIoNTBweCk7XG4gIHotaW5kZXg6IDA7XG59XG4uc3dpcGVyLWNvbnRhaW5lci1mbGlwIHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG4uc3dpcGVyLWNvbnRhaW5lci1mbGlwIC5zd2lwZXItc2xpZGUge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgei1pbmRleDogMTtcbn1cbi5zd2lwZXItY29udGFpbmVyLWZsaXAgLnN3aXBlci1zbGlkZSAuc3dpcGVyLXNsaWRlIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG4uc3dpcGVyLWNvbnRhaW5lci1mbGlwIC5zd2lwZXItc2xpZGUtYWN0aXZlLFxuLnN3aXBlci1jb250YWluZXItZmxpcCAuc3dpcGVyLXNsaWRlLWFjdGl2ZSAuc3dpcGVyLXNsaWRlLWFjdGl2ZSB7XG4gIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xufVxuLnN3aXBlci1jb250YWluZXItZmxpcCAuc3dpcGVyLXNsaWRlLXNoYWRvdy10b3AsXG4uc3dpcGVyLWNvbnRhaW5lci1mbGlwIC5zd2lwZXItc2xpZGUtc2hhZG93LWJvdHRvbSxcbi5zd2lwZXItY29udGFpbmVyLWZsaXAgLnN3aXBlci1zbGlkZS1zaGFkb3ctbGVmdCxcbi5zd2lwZXItY29udGFpbmVyLWZsaXAgLnN3aXBlci1zbGlkZS1zaGFkb3ctcmlnaHQge1xuICB6LWluZGV4OiAwO1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuLnN3aXBlci1jb250YWluZXItY292ZXJmbG93IC5zd2lwZXItd3JhcHBlciB7XG4gIC8qIFdpbmRvd3MgOCBJRSAxMCBmaXggKi9cbiAgLW1zLXBlcnNwZWN0aXZlOiAxMjAwcHg7XG59XG4iLCIvLyBnbG9iYWxseSB1c2VkIGtleWZyYW1lIGFuaW1hdGlvbnMgYXJlIGRlZmluZWQgaGVyZVxuQGtleWZyYW1lcyBqdW1wIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxuXG4gIDUwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yMCUpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG59XG4iLCIvLyBjdXN0b20gQGZvbnQtZmFjZSBydWxlcyBhcmUgYXV0b21hdGljYWxseSBnZW5lcmF0ZWQgZnJvbSBmb250LWNvbmZpZ1xuQGlmIHZhcmlhYmxlLWV4aXN0cyhmb250cykge1xuICBAZWFjaCAkZm9udC1pZCwgJGZvbnQtZGVmaW5pdGlvbiBpbiAkZm9udHMge1xuICAgIEBpZiBtYXAtZ2V0KCRmb250LWRlZmluaXRpb24sIGZvbnRmYWNlKSA9PSB0cnVlIHtcbiAgICAgICRmb250ZmlsZTogbWFwLWdldCgkZm9udC1kZWZpbml0aW9uLCBmaWxlKTtcblxuICAgICAgQGZvbnQtZmFjZSB7XG4gICAgICAgIHNyYzogdXJsKCcuLi9mb250cy8jeyRmb250ZmlsZX0ud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksIHVybCgnLi4vZm9udHMvI3skZm9udGZpbGV9LndvZmYnKSBmb3JtYXQoJ3dvZmYnKTtcbiAgICAgICAgZm9udC1mYW1pbHk6IG1hcC1nZXQoJGZvbnQtZGVmaW5pdGlvbiwgZmFtaWx5KTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG1hcC1nZXQoJGZvbnQtZGVmaW5pdGlvbiwgd2VpZ2h0KTtcbiAgICAgICAgZm9udC1zdHlsZTogdW5xdW90ZShtYXAtZ2V0KCRmb250LWRlZmluaXRpb24sIHN0eWxlKSk7XG4gICAgICAgIGZvbnQtZGlzcGxheTogc3dhcDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIiRicmVha3BvaW50czogKHM6IDQ4MCxtOiA2NDAsbDogNzIwLHhsOiA5NjAseHhsOiAxMTAwLHh4eGw6IDE2MDAsaHVnZTogMTkyMCxpbnNhbmU6IDI0MDApO1xuJGZvbnRzOiAoZGVmYXVsdDogKGZhbWlseTogRG9tYWluZSxmYWxsYmFjazogc2Fucy1zZXJpZix3ZWlnaHQ6IDQwMCxzdHlsZTogbm9ybWFsLGZvbnRmYWNlOiB0cnVlLGZpbGU6IGRvbWFpbmUpLGl0YWxpYzogKGZhbWlseTogRG9tYWluZSxmYWxsYmFjazogc2Fucy1zZXJpZix3ZWlnaHQ6IDQwMCxzdHlsZTogaXRhbGljLGZvbnRmYWNlOiB0cnVlLGZpbGU6IGRvbWFpbmUtaXRhbGljKSk7IiwiLy8gZGVmYXVsdCBzdHlsZXMgZm9yIHRleHQtaW5wdXQgZm9ybXMgZmllbGRzXG5bdHlwZT0ndGV4dCddLFxuW3R5cGU9J3RlbCddLFxuW3R5cGU9J2VtYWlsJ10sXG5bdHlwZT0nc2VhcmNoJ10sXG5bdHlwZT0nbnVtYmVyJ10sXG5bdHlwZT0ndXJsJ10sXG5bdHlwZT0ncGFzc3dvcmQnXSxcblt0eXBlPSdkYXRlJ10sXG50ZXh0YXJlYSB7XG4gIHdpZHRoOiAxMDAlOyAvLyB3cmFwIGdyaWQvZGl2L3AgYXJvdW5kIGlucHV0c1xuICBib3JkZXI6IDFweCBzb2xpZCBjdXJyZW50Q29sb3I7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGFwcGVhcmFuY2U6IG5vbmU7IC8vIG5vIHJvdW5kZWQgaW5wdXRzIGV0Yy5cbn1cblxuYnV0dG9uLFxuW3R5cGU9J3N1Ym1pdCddIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBib3JkZXI6IDFweCBzb2xpZCBjdXJyZW50Q29sb3I7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbi8vIGFsbG93IHJlc2l6aW5nIG9mIHRleHRhcmVhcyB2ZXJ0aWNhbGx5XG50ZXh0YXJlYSB7XG4gIHJlc2l6ZTogdmVydGljYWw7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG59XG5cbnNlbGVjdCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8vIG5vIGJvcmRlci9wYWRkaW5nL21hcmdpbiBmb3IgdGhlIGZpZWxkc2V0XG5maWVsZHNldCB7XG4gIEBpbmNsdWRlIG1hcmdpbihhIDAsIGIgMSk7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogMDtcbn1cblxuLy8gcG9zaXRpb24gbGFiZWxzIG9uIHRvcCBvZiB0aGVpciByZWxhdGVkIGlucHV0cyBieSBkZWZhdWx0LFxuLy8gYW5kIGdpdmUgdGhlbSBhIGhpbnQgdG8gbWFrZSB0aGVtIGNsaWNrYWJsZSBieSBzZXR0aW5nIGN1cnNvclxubGFiZWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgJltmb3JdIHsgLy8gYWRkIHBvaW50ZXItY3Vyc29yIGlmIGFzc29jaWF0ZWQgdG8gaW5wdXRcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cbn1cblxuLy8gZG9udCBhbGxvdyB1bnNlbGVjdGFibGUgZWxlbWVudHMgdG8gYmUgc2VsZWN0ZWRcblt1bnNlbGVjdGFibGVdIHtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG59XG5cbltkaXNhYmxlZF0ge1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuIiwiLy8gY3JlYXRlcyBtYXJnaW5zLCBieSBkZWZhdWx0ICh3aXRob3V0IGFueSBwYXJhbWV0ZXJzKSBvbmx5IG1hcmdpbi1ib3R0b21cbi8vIHdpdGggJGJhc2UtdW5pdCAtLSBkZWZhdWx0IHJoeXRobSwgb3IgZm9yIGV2ZXJ5IHNpZGUvdmFsdWUtcGFpciB3aXRoXG4vLyB0aGVpciBzaG9ydCB2YXJpYW50czpcbi8vXG4vLyB1c2FnZSBleGFtcGxlczpcbi8vIEBpbmNsdWRlIG1hcmdpbjsgPT0+IG1hcmdpbi1ib3R0b206ICRiYXNlLXVuaXQ7XG4vLyBAaW5jbHVkZSBtYXJnaW4oMikgPT0+IHdhcm5pbmchLCB0aGlzIGlzIG5vdCBnb25uYSB3b3JrXG4vLyBAaW5jbHVkZSBtYXJnaW4oYiAyKSA9PT4gbWFyZ2luLWJvdHRvbTogJGJhc2UtdW5pdCAqIDI7XG4vLyBAaW5jbHVkZSBtYXJnaW4oYSAyKSA9PT4gbWFyZ2luOiAkYmFzZS11bml0ICogMjtcbi8vIEBpbmNsdWRlIG1hcmdpbihhIDAuNSwgYiAxKSA9PT4gbWFyZ2luOiAkYmFzZS11bml0ICogMC41OyBtYXJnaW4tYm90dG9tOiAkYmFzZS11bml0O1xuLy8gQGluY2x1ZGUgbWFyZ2luKHIgMSwgbCAxMiUpID09PiBtYXJnaW4tcmlnaHQ6IGJhc2UtdW5pdDsgbWFyZ2luLWxlZnQ6IDEyJTtcbi8vIEBpbmNsdWRlIG1hcmdpbihyIDAsIHQgYXV0bykgPT0+IG1hcmdpbi1yaWdodDogMDsgbWFyZ2luLXRvcDogYXV0bztcbi8vIEBpbmNsdWRlIG1hcmdpbih2IDEpID09PiBtYXJnaW4tcmlnaHQ6ICRiYXNlLXVuaXQ7IG1hcmdpbi1sZWZ0OiAkYmFzZS11bml0O1xuLy8gQGluY2x1ZGUgbWFyZ2luKGggMSkgPT0+IG1hcmdpbi10b3A6ICRiYXNlLXVuaXQ7IG1hcmdpbi1ib3R0b206ICRiYXNlLXVuaXQ7XG5AbWl4aW4gbWFyZ2luKCRzcGFjaW5nLWFyZ3MuLi4pIHtcbiAgLy8gZGVmYXVsdCBjYXNlIGZvciBzcGFjaW5nIC0tIG1hcmdpbiBib3R0b21cbiAgQGlmIGxlbmd0aCgkc3BhY2luZy1hcmdzKSA9PSAwIHtcbiAgICBAaWYgdmFyaWFibGUtZXhpc3RzKGJhc2UtdW5pdCkgPT0gZmFsc2Uge1xuICAgICAgQHdhcm4gJyRiYXNlLXVuaXQgaXMgbm90IHNldCwgcGxlYXNlIHNldCB0aGlzIHZhcmlhYmxlIGluIHlvdXIgY29uZmlnLiBEZWZhdWx0aW5nIHRvIDEuNXJlbSc7XG4gICAgICAkYmFzZS11bml0OiAxLjVyZW07XG4gICAgfSBAZWxzZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAkYmFzZS11bml0O1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQGVhY2ggJHBvc2l0aW9uLWtleSwgJHBvc2l0aW9uLXZhbHVlIGluICRzcGFjaW5nLWFyZ3Mge1xuICAgICAgQGlmIG5vdCAkcG9zaXRpb24tdmFsdWUge1xuICAgICAgICBAd2FybiAnWW91IHNob3VsZCBwcm92aWRlIGEgbGlzdCBvZiBzaWRlL3ZhbHVlIHBhaXJzIGUuZy4gXCJiIDJcIiBmb3IgdGhpcyBtaXhpbiB0byB3b3JrJztcbiAgICAgIH0gQGVsc2UgaWYgJHBvc2l0aW9uLWtleSA9PSAnYScge1xuICAgICAgICBtYXJnaW46IHBhcnNlLXVuaXQoJHBvc2l0aW9uLXZhbHVlKTtcbiAgICAgIH0gQGVsc2UgaWYgJHBvc2l0aW9uLWtleSA9PSAndicge1xuICAgICAgICBtYXJnaW4tdG9wOiBwYXJzZS11bml0KCRwb3NpdGlvbi12YWx1ZSk7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHBhcnNlLXVuaXQoJHBvc2l0aW9uLXZhbHVlKTtcbiAgICAgIH0gQGVsc2UgaWYgJHBvc2l0aW9uLWtleSA9PSAnaCcge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IHBhcnNlLXVuaXQoJHBvc2l0aW9uLXZhbHVlKTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IHBhcnNlLXVuaXQoJHBvc2l0aW9uLXZhbHVlKTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAkc2lkZTogcG9zaXRpb24tbWFwKCRwb3NpdGlvbi1rZXkpO1xuICAgICAgICAkdmFsdWU6IHBhcnNlLXVuaXQoJHBvc2l0aW9uLXZhbHVlKTtcbiAgICAgICAgbWFyZ2luLSN7JHNpZGV9OiAkdmFsdWU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIHRoaXMgcGFkZGluZyBtaXhpbiBmb3IgcGFkZGluZyBiZWhhdmVzIHNsaWdodGx5IGRpZmZlcmVudFxuLy8gd2hlbiBwcm92aWRlZCB3aXRoIG5vIHBhcmFtZXRlciwgcGFkZGluZyBpcyBhcHBsaWVkIHRvIGFsbCBmb3VyXG4vLyBzaWRlcyBvZiB0aGUgZWxlbWVudCwgdXNpbmcgcGFkZGluZy1zaG9ydGhhbmRcbkBtaXhpbiBwYWRkaW5nKCRzcGFjaW5nLWFyZ3MuLi4pIHtcbiAgLy8gZGVmYXVsdCBjYXNlIGZvciBzcGFjaW5nIC0tIG1hcmdpbiBib3R0b21cbiAgQGlmIGxlbmd0aCgkc3BhY2luZy1hcmdzKSA9PSAwIHtcbiAgICBAaWYgdmFyaWFibGUtZXhpc3RzKGJhc2UtdW5pdCkgPT0gZmFsc2Uge1xuICAgICAgQHdhcm4gJyRiYXNlLXVuaXQgaXMgbm90IHNldCwgcGxlYXNlIHNldCB0aGlzIHZhcmlhYmxlIGluIHlvdXIgY29uZmlnLiBEZWZhdWx0aW5nIHRvIDEuNXJlbSc7XG4gICAgICAkYmFzZS11bml0OiAxLjVyZW07XG4gICAgfSBAZWxzZSB7XG4gICAgICBwYWRkaW5nOiAkYmFzZS11bml0O1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQGVhY2ggJHBvc2l0aW9uLWtleSwgJHBvc2l0aW9uLXZhbHVlIGluICRzcGFjaW5nLWFyZ3Mge1xuICAgICAgQGlmIG5vdCAkcG9zaXRpb24tdmFsdWUge1xuICAgICAgICBAd2FybiAnWW91IHNob3VsZCBwcm92aWRlIGEgbGlzdCBvZiBzaWRlL3ZhbHVlIHBhaXJzIGUuZy4gXCJiIDJcIiBmb3IgdGhpcyBtaXhpbiB0byB3b3JrJztcbiAgICAgIH0gQGVsc2UgaWYgJHBvc2l0aW9uLWtleSA9PSAnYScge1xuICAgICAgICBwYWRkaW5nOiBwYXJzZS11bml0KCRwb3NpdGlvbi12YWx1ZSk7XG4gICAgICB9IEBlbHNlIGlmICRwb3NpdGlvbi1rZXkgPT0gJ3YnIHtcbiAgICAgICAgcGFkZGluZy10b3A6IHBhcnNlLXVuaXQoJHBvc2l0aW9uLXZhbHVlKTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IHBhcnNlLXVuaXQoJHBvc2l0aW9uLXZhbHVlKTtcbiAgICAgIH0gQGVsc2UgaWYgJHBvc2l0aW9uLWtleSA9PSAnaCcge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiBwYXJzZS11bml0KCRwb3NpdGlvbi12YWx1ZSk7XG4gICAgICAgIHBhZGRpbmctbGVmdDogcGFyc2UtdW5pdCgkcG9zaXRpb24tdmFsdWUpO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgICRzaWRlOiBwb3NpdGlvbi1tYXAoJHBvc2l0aW9uLWtleSk7XG4gICAgICAgICR2YWx1ZTogcGFyc2UtdW5pdCgkcG9zaXRpb24tdmFsdWUpO1xuICAgICAgICBwYWRkaW5nLSN7JHNpZGV9OiAkdmFsdWU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbiIsIi8vIGdlbmVyYWwgaGVscGVyIGZ1bmN0aW9uc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AZnVuY3Rpb24gcHgtdG8tcmVtKCRweHZhbHVlKSB7XG4gIEBpZiB2YXJpYWJsZS1leGlzdHMoZm9udC1zaXplcykgPT0gZmFsc2Uge1xuICAgIEB3YXJuICckZm9udC1zaXplcyBTYXNzLW1hcCBkb2VzIG5vdCBleGlzdCwgcGxlYXNlIHByb3ZpZGUgb25lIGluIHlvdXIgY29uZmlnLiBEZWZhdWx0aW5nIHRvIDE2cHgtcmVtLWVxdWl2YWxlbnQnO1xuICAgIEByZXR1cm4gKCRweHZhbHVlIC8gMTZweCkgKiAxcmVtO1xuICB9IEBlbHNlIGlmIG1hcC1oYXMta2V5KCRmb250LXNpemVzLCBkZWZhdWx0KSA9PSBmYWxzZSB7XG4gICAgQHdhcm4gJ0luZGV4IFwiZGVmYXVsdFwiIG5vdCBmb3VuZCBpbiAkZm9udC1zaXplcyBTYXNzLW1hcCB1c2luZyBmdW5jdGlvbiBweC10by1yZW0uIERlZmF1bHRpbmcgdG8gMTZweC1yZW0tZXF1aXZhbGVudCc7XG4gICAgQHJldHVybiAoJHB4dmFsdWUgLyAxNnB4KSAqIDFyZW07XG4gIH1cblxuICBAcmV0dXJuICgkcHh2YWx1ZSAvIG1hcC1nZXQoJGZvbnQtc2l6ZXMsIGRlZmF1bHQpKSAqIDFyZW07XG59XG5cbi8vIHJldHVybnMgdHJ1ZSBpZiBpdCBpcyBqdXN0IGEgbnVtYmVyIHdpdGhvdXQgdW5pdFxuQGZ1bmN0aW9uIGlzLW51bWJlcigkdmFsdWUpIHtcbiAgQHJldHVybiB0eXBlLW9mKCR2YWx1ZSkgPT0gJ251bWJlcicgYW5kIHVuaXRsZXNzKCR2YWx1ZSk7XG59XG5cbi8vIGlmIGEgdW5pdGxlc3MgbnVtYmVyIGlzIGdpdmVuLCB0aGlzIGZ1bmN0aW9uIHJldHVybnMgJGJhc2UtdW5pdCAqIHZhbHVlXG4vLyAoZXhjZXB0IGZvciAwLCAwIHdpbGwgYmUgcmV0dXJuZWQgaW5zdGFudGx5KVxuLy8gaWYgYW55dGhpbmcgZWxzZSBpcyBnaXZlbiwgaXQgd2lsbCByZXR1cm4gaXRzIHVucW90ZWQgdmFsdWU7XG5AZnVuY3Rpb24gcGFyc2UtdW5pdCgkdmFsdWUpIHtcbiAgQGlmICR2YWx1ZSA9PSAwIHtcbiAgICBAcmV0dXJuIDA7XG4gIH1cblxuICBAaWYgaXMtbnVtYmVyKCR2YWx1ZSkge1xuICAgIEBpZiB2YXJpYWJsZS1leGlzdHMoYmFzZS11bml0KSA9PSBmYWxzZSB7XG4gICAgICBAd2FybiAnJGJhc2UtdW5pdCBpcyBub3Qgc2V0LCBwbGVhc2Ugc2V0IHRoaXMgdmFyaWFibGUgaW4geW91ciBjb25maWcuIERlZmF1bHRpbmcgdG8gMS41cmVtJztcbiAgICAgICRiYXNlLXVuaXQ6IDEuNXJlbTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIEByZXR1cm4gJGJhc2UtdW5pdCAqICR2YWx1ZTtcbiAgICB9XG4gIH1cblxuICBAcmV0dXJuICR2YWx1ZTtcbn1cblxuLy8gcmV0dXJucyB0aGUgZnVsbCB2YWx1ZSBmb3IgYW55IG9mIHRoZSBwb3NpdGlvbi9zaWRlIHNob3J0LWZvcm1zXG5AZnVuY3Rpb24gcG9zaXRpb24tbWFwKCRzaG9ydCkge1xuICAkc2hvcnQtbWFwOiAoXG4gICAgdDogdG9wLFxuICAgIHI6IHJpZ2h0LFxuICAgIGI6IGJvdHRvbSxcbiAgICBsOiBsZWZ0XG4gICk7XG5cbiAgQGlmIG1hcC1oYXMta2V5KCRzaG9ydC1tYXAsICRzaG9ydCkge1xuICAgIEByZXR1cm4gbWFwLWdldCgkc2hvcnQtbWFwLCAkc2hvcnQpO1xuICB9IEBlbHNlIHtcbiAgICBAd2FybiAnU2hvcnQga2V5IFwiI3skc2hvcnR9XCIgbm90IGF2YWlhYmxlLiBBdmFpYWJsZSBrZXlzIGFyZTogdCwgciwgYiBhbmQgbCc7XG5cbiAgICBAcmV0dXJuIGZhbHNlO1xuICB9XG59XG4iLCJoMSB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZShoMSk7XG4gIEBpbmNsdWRlIGZvbnQtd2VpZ2h0KGRlZmF1bHQpO1xuICBAaW5jbHVkZSBtYXJnaW4oYSAwLCBiIDEpO1xufVxuXG5oMiB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZShoMik7XG4gIEBpbmNsdWRlIGZvbnQtd2VpZ2h0KGRlZmF1bHQpO1xuICBAaW5jbHVkZSBtYXJnaW4oYSAwLCBiIDEpO1xufVxuXG5oMyB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZShoMyk7XG4gIEBpbmNsdWRlIGZvbnQtd2VpZ2h0KGRlZmF1bHQpO1xuICBAaW5jbHVkZSBtYXJnaW4oYSAwLCBiIDEpO1xufVxuXG5oNCxcbmg1LFxuaDYge1xuICBAaW5jbHVkZSBmb250LXNpemUoaDQpO1xuICBAaW5jbHVkZSBmb250LXdlaWdodChkZWZhdWx0KTtcbiAgQGluY2x1ZGUgbWFyZ2luKGEgMCwgYiAxKTtcbn1cblxuIiwiLy8gZnVuY3Rpb24gdG8gZWFzaWx5IGdldCB0aGUgZm9udC1zaXplIGFuZCBjb252ZXJ0IGl0IHRvIHJlbVxuQGZ1bmN0aW9uIGZvbnQtc2l6ZSgkZm9udHNpemUtdmFsdWU6IGRlZmF1bHQpIHtcbiAgQGlmIHZhcmlhYmxlLWV4aXN0cyhmb250LXNpemVzKSA9PSBmYWxzZSB7XG4gICAgQHdhcm4gJyRmb250LXNpemVzIFNhc3MtbWFwIGRvZXMgbm90IGV4aXN0LCBwbGVhc2UgcHJvdmlkZSBvbmUgaW4geW91ciBjb25maWcuIERlZmF1bHRpbmcgdG8gMTZweCc7XG4gICAgQHJldHVybiBweC10by1yZW0oMTZweCk7XG4gIH0gQGVsc2UgaWYgbWFwLWhhcy1rZXkoJGZvbnQtc2l6ZXMsICRmb250c2l6ZS12YWx1ZSkgPT0gZmFsc2Uge1xuICAgIEB3YXJuICdJbmRleCBcIiN7JGZvbnRzaXplLXZhbHVlfVwiIG5vdCBmb3VuZCBpbiAkZm9udC1zaXplcyBTYXNzLW1hcCB1c2luZyBmdW5jdGlvbiBmb250LXNpemUuIERlZmF1bHRpbmcgdG8gMTZweCc7XG4gICAgQHJldHVybiBweC10by1yZW0oMTZweCk7XG4gIH1cblxuICBAcmV0dXJuIHB4LXRvLXJlbShtYXAtZ2V0KCRmb250LXNpemVzLCAkZm9udHNpemUtdmFsdWUpKTtcbn1cblxuLy8gZm9udC1zaXplIG1peGluIHVzaW5nIHRoZSBmdW5jdGlvbiBhYm92ZVxuQG1peGluIGZvbnQtc2l6ZSgkZm9udHNpemUtdmFsdWU6IGRlZmF1bHQpIHtcbiAgZm9udC1zaXplOiBmb250LXNpemUoJGZvbnRzaXplLXZhbHVlKTtcbn1cblxuLy8gbWl4aW5zIGZvciBmb250LWZhY2UsIGZvciB1c2FnZSB3aXRoIGZvbnRmYWNlb2JzZXJ2ZXJcbkBtaXhpbiBmb250LWZhbWlseSgkZmFtaWx5LXZhbHVlOiBkZWZhdWx0KSB7XG4gICRmYWxsYmFjazogbnVsbDtcbiAgJGZvbnQ6IG51bGw7XG5cbiAgQGlmIHZhcmlhYmxlLWV4aXN0cyhmb250cykgPT0gZmFsc2Uge1xuICAgIEB3YXJuICckZm9udHMgU2Fzcy1tYXAgZG9lcyBub3QgZXhpc3QsIHBsZWFzZSBwcm92aWRlIG9uZSBpbiB5b3VyIGNvbmZpZy4gRGVmYXVsdGluZyB0byBzYW5zLXNlcmYnO1xuICAgICRmYWxsYmFjazogc2Fucy1zZXJpZjtcbiAgICAkZm9udDogc2Fucy1zZXJpZjtcbiAgfSBAZWxzZSBpZiBtYXAtaGFzLWtleSgkZm9udHMsICRmYW1pbHktdmFsdWUpID09IGZhbHNlIHtcbiAgICBAd2FybiAnSW5kZXggXCIjeyRmYW1pbHktdmFsdWV9XCIgbm90IGZvdW5kIGluICRmb250cyBTYXNzIG1hcCB1c2luZyBtaXhpbiBmb250LWZhbWlseS4gRGVmYXVsdGluZyB0byBzYW5zLXNlcmlmJztcbiAgICAkZmFsbGJhY2s6IHNhbnMtc2VyaWY7XG4gICAgJGZvbnQ6IHNhbnMtc2VyaWY7XG4gIH0gQGVsc2Uge1xuICAgICRmYWxsYmFjazogdW5xdW90ZShtYXAtZ2V0KG1hcC1nZXQoJGZvbnRzLCAkZmFtaWx5LXZhbHVlKSwgZmFsbGJhY2spKTtcbiAgICAkZm9udDogbWFwLWdldChtYXAtZ2V0KCRmb250cywgJGZhbWlseS12YWx1ZSksIGZhbWlseSksICRmYWxsYmFjaztcbiAgfVxuXG4gIC8vIG5vdyB0aGF0IHdlIGhhdmUgdGhlIGZvbnQgYW5kIGZhbGxiYWNrLCBpZiB3ZSB1c2VcbiAgLy8gZm9udC1mYWNlLCBhZGQgdGhlIGZvbnRzLWxvYWRlZCBjbGFzcywgaWYgbm90LCBqdXN0IHVzZSBhbGxcbiAgQGlmIG1hcC1nZXQobWFwLWdldCgkZm9udHMsICRmYW1pbHktdmFsdWUpLCBmb250ZmFjZSkgPT0gdHJ1ZSB7XG4gICAgZm9udC1mYW1pbHk6ICRmYWxsYmFjaztcblxuICAgIC5mb250cy1sb2FkZWQgJiB7XG4gICAgICBmb250LWZhbWlseTogJGZvbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBmb250LWZhbWlseTogJGZvbnQ7XG4gIH1cbn1cblxuLy8gbWl4aW4gZm9yIGZvbnQtd2VpZ2h0XG5AbWl4aW4gZm9udC13ZWlnaHQoJGZhbWlseS12YWx1ZTogZGVmYXVsdCkge1xuICAkdGhpcy1mb250LXdlaWdodDogNDAwO1xuXG4gIEBpZiB2YXJpYWJsZS1leGlzdHMoZm9udHMpID09IGZhbHNlIHtcbiAgICBAd2FybiAnJGZvbnRzIFNhc3MtbWFwIGRvZXMgbm90IGV4aXN0LCBwbGVhc2UgcHJvdmlkZSBvbmUgaW4geW91ciBjb25maWcuIERlZmF1bHRpbmcgdG8gNDAwJztcbiAgfSBAZWxzZSBpZiBtYXAtaGFzLWtleSgkZm9udHMsICRmYW1pbHktdmFsdWUpID09IGZhbHNlIHtcbiAgICBAd2FybiAnSW5kZXggXCIjeyRmYW1pbHktdmFsdWV9XCIgbm90IGZvdW5kIGluICRmb250cyBTYXNzIG1hcCB1c2luZyBtaXhpbiBmb250LXdlaWdodC4gRGVmYXVsdGluZyB0byA0MDAnO1xuICB9IEBlbHNlIHtcbiAgICAkdGhpcy1mb250LXdlaWdodDogbWFwLWdldChtYXAtZ2V0KCRmb250cywgJGZhbWlseS12YWx1ZSksIHdlaWdodCk7XG4gIH1cblxuICBmb250LXdlaWdodDogJHRoaXMtZm9udC13ZWlnaHQ7XG59XG5cbi8vIG1peGluIGZvciBmb250LXN0eWxlXG5AbWl4aW4gZm9udC1zdHlsZSgkZmFtaWx5LXZhbHVlOiBkZWZhdWx0KSB7XG4gICR0aGlzLWZvbnQtc3R5bGU6IG5vcm1hbDtcblxuICBAaWYgdmFyaWFibGUtZXhpc3RzKGZvbnRzKSA9PSBmYWxzZSB7XG4gICAgQHdhcm4gJyRmb250cyBTYXNzLW1hcCBkb2VzIG5vdCBleGlzdCwgcGxlYXNlIHByb3ZpZGUgb25lIGluIHlvdXIgY29uZmlnLiBEZWZhdWx0aW5nIHRvIG5vcm1hbCc7XG4gIH0gQGVsc2UgaWYgbWFwLWhhcy1rZXkoJGZvbnRzLCAkZmFtaWx5LXZhbHVlKSA9PSBmYWxzZSB7XG4gICAgQHdhcm4gJ0luZGV4IFwiI3skZmFtaWx5LXZhbHVlfVwiIG5vdCBmb3VuZCBpbiAkZm9udHMgU2FzcyBtYXAgdXNpbmcgbWl4aW4gZm9udC1zdHlsZS4gRGVmYXVsdGluZyB0byBub3JtYWwnO1xuICB9IEBlbHNlIHtcbiAgICAkdGhpcy1mb250LXN0eWxlOiB1bnF1b3RlKG1hcC1nZXQobWFwLWdldCgkZm9udHMsICRmYW1pbHktdmFsdWUpLCBzdHlsZSkpO1xuICB9XG5cbiAgZm9udC1zdHlsZTogJHRoaXMtZm9udC1zdHlsZTtcbn1cblxuLy8gbm93IGFsbCB0b2dldGhlciwgZm9udC1zaG9ydGhhbmQgbWl4aW5cbkBtaXhpbiBmb250KCRmYW1pbHktdmFsdWU6IGRlZmF1bHQpIHtcbiAgQGluY2x1ZGUgZm9udC1mYW1pbHkoJGZhbWlseS12YWx1ZSk7XG4gIEBpbmNsdWRlIGZvbnQtd2VpZ2h0KCRmYW1pbHktdmFsdWUpO1xuICBAaW5jbHVkZSBmb250LXN0eWxlKCRmYW1pbHktdmFsdWUpO1xufVxuIiwiYSB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY29sb3I6IGN1cnJlbnRDb2xvcjtcblxuICBAaW5jbHVkZSBhdHRlbnRpb24ge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxufVxuIiwiLy8gYXR0ZW50aW9uIG1peGluIGZvciBob3Zlci0sIGZvY3VzLSBhbmQgYWN0aXZlLXN0YXRlc1xuQG1peGluIGF0dGVudGlvbiB7XG4gICY6aG92ZXIsXG4gICY6YWN0aXZlLFxuICAmOmZvY3VzIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuIiwidWwsXG5kbCxcbm9sIHtcbiAgQGluY2x1ZGUgbWFyZ2luKGEgMCwgYiAxKTtcbiAgQGluY2x1ZGUgcGFkZGluZyhhIDAsIGwgMSk7XG5cbiAgJiAmIHsgLy8gbm8gbWFyZ2luIGZvciBzdWJsaXN0c1xuICAgIEBpbmNsdWRlIG1hcmdpbihiIDApO1xuICB9XG59XG5cbi8vIG5ldmVyIGV2ZXIgc2hvdyBsaXN0cyBpbiBuYXZpZ2F0aW9uIG9yIGZpZWxkc2V0cyBibG9ja3MgYXMgbGlzdHNcbm5hdixcbmZpZWxkc2V0IHtcbiAgdWwsXG4gIG9sIHtcbiAgICBAaW5jbHVkZSBwYWRkaW5nKGEgMCk7XG4gICAgQGluY2x1ZGUgbWFyZ2luKGIgMCk7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgfVxufVxuXG4iLCIvLyBSZW1vdmUgdGhlIGdhcCBiZXR3ZWVuIG1lZGlhIGVsZW1lbnRzIHN1Y2ggYXMgYXVkaW8sIGltYWdlcywgdmlkZW9zIGV0Yy5cbi8vIGFuZCB0aGUgYm90dG9tIG9mIHRoZWlyIGNvbnRhaW5lcnNcbmF1ZGlvLFxuY2FudmFzLFxuaWZyYW1lLFxuaW1nLFxuc3ZnLFxudmlkZW8ge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4vLyBtYWtlIHVzZXIgY29udGVudCBtZWRpYSBlbGVtZW50cyByZXNwb25zaXZlIChtYXgtd2lkdGgpXG5hdWRpbyxcbmlmcmFtZSxcbmltZyxcbnZpZGVvIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbmZpZ3VyZSB7XG4gIEBpbmNsdWRlIG1hcmdpbihhIDAsIGIgMSk7XG59XG4iLCI6cm9vdCB7XG4gIEBpbmNsdWRlIGNvbG9yKGRlZmF1bHQpO1xuICBAaW5jbHVkZSBiYWNrZ3JvdW5kLWNvbG9yKGJhY2tncm91bmQpO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvLyBzYW5lIGJveC1zaXppbmcgZXZlcnl3aGVyZVxuICBmb250LXNpemU6ICRiYXNlLWZvbnQtc2l6ZTsgLy8gYXMgcmVmZXJlbmNlIGZvciByZW1cbiAgZm9udC1rZXJuaW5nOiBub3JtYWw7XG4gIGZvbnQtdmFyaWFudC1saWdhdHVyZXM6IGNvbW1vbi1saWdhdHVyZXMgY29udGV4dHVhbDtcbiAgZm9udC1mZWF0dXJlLXNldHRpbmdzOiAna2VybicsICdsaWdhJywgJ2NsaWcnLCAnY2FsdCc7XG4gIGxpbmUtaGVpZ2h0OiAkYmFzZS1saW5lLWhlaWdodDtcbiAgdGV4dC1zaXplLWFkanVzdDogMTAwJTtcbn1cblxuKiB7XG4gICYsXG4gICY6OmJlZm9yZSxcbiAgJjo6YWZ0ZXIge1xuICAgIGJveC1zaXppbmc6IGluaGVyaXQ7XG4gIH1cbn1cblxuXG5ib2R5IHtcbiAgQGluY2x1ZGUgZm9udChkZWZhdWx0KTtcbiAgQGluY2x1ZGUgYmFja2dyb3VuZC1jb2xvcihiYWNrZ3JvdW5kKTtcbiAgd2lkdGg6IDEwMCU7XG5cbiAgLy8gcmVtb3ZlIHRoaXMgaWYgeW91IHdhbnQgY3VzdG9tIHByaW50LXN0eWxlc1xuICBAaW5jbHVkZSBtZWRpYXF1ZXJ5KHByaW50KSB7XG4gICAgKiB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICdQbGVhc2UsIGRvIG5vdCB3YXN0ZSBwYXBlciBieSBwcmludGluZyB3ZWJwYWdlcy4nO1xuICAgIH1cbiAgfVxufVxuXG4vLyB0ZXh0IHNlbGVjdGlvbiBzdHlsZXNcbjo6c2VsZWN0aW9uIHtcbiAgQGluY2x1ZGUgYmFja2dyb3VuZC1jb2xvcihmaXJzdCk7XG4gIEBpbmNsdWRlIGNvbG9yKGRlZmF1bHQpO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cbiIsIi8vIGEgZnVuY3Rpb24gdG8gZWFzaWx5IGdldCB0aGUgY29sb3IgdmFsdWUgb2YgdGhlIGNvbG9ycy1tYXBcbkBmdW5jdGlvbiBjb2xvcigkY29sb3ItdmFsdWU6IGRlZmF1bHQpIHtcbiAgQGlmIHZhcmlhYmxlLWV4aXN0cyhjb2xvcnMpID09IGZhbHNlIHtcbiAgICBAd2FybiAnJGNvbG9ycyBTYXNzLW1hcCBkb2VzIG5vdCBleGlzdCwgcGxlYXNlIHByb3ZpZGUgb25lIGluIHlvdXIgY29uZmlnLiBEZWZhdWx0aW5nIHRvIHJlZCc7XG4gICAgQHJldHVybiAjZjAwO1xuICB9IEBlbHNlIGlmIG1hcC1oYXMta2V5KCRjb2xvcnMsICRjb2xvci12YWx1ZSkgPT0gZmFsc2Uge1xuICAgIEB3YXJuICdJbmRleCBcIiN7JGNvbG9yLXZhbHVlfVwiIG5vdCBmb3VuZCBpbiAkY29sb3JzIFNhc3MtbWFwIHVzaW5nIGZ1bmN0aW9uIGNvbG9yLiBEZWZhdWx0aW5nIHRvIHJlZCc7XG4gICAgQHJldHVybiAjZjAwO1xuICB9XG5cbiAgQHJldHVybiBtYXAtZ2V0KCRjb2xvcnMsICRjb2xvci12YWx1ZSk7XG59XG5cbi8vIG1peGlucyB1c2luZyB0aGUgZnVuY3Rpb24gYWJvdmVcbkBtaXhpbiBjb2xvcigkY29sb3ItdmFsdWU6IGRlZmF1bHQpIHtcbiAgY29sb3I6IGNvbG9yKCRjb2xvci12YWx1ZSk7XG59XG5cbkBtaXhpbiBiYWNrZ3JvdW5kLWNvbG9yKCRjb2xvci12YWx1ZTogZGVmYXVsdCkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcigkY29sb3ItdmFsdWUpO1xufVxuXG5AbWl4aW4gYm9yZGVyLWNvbG9yKCRjb2xvci12YWx1ZTogZGVmYXVsdCkge1xuICBib3JkZXItY29sb3I6IGNvbG9yKCRjb2xvci12YWx1ZSk7XG59XG5cbkBtaXhpbiBmaWxsKCRjb2xvci12YWx1ZTogZGVmYXVsdCkge1xuICBmaWxsOiBjb2xvcigkY29sb3ItdmFsdWUpO1xufVxuIiwiLy8gZGVmaW5lIHlvdXIgY29sb3JzIGhlcmUsIGFuZCBmZWVsIGZyZWUgdG8gdXNlICdyZWFsJyBuYW1lcywganVzdFxuLy8gbGlrZSBiZWxvdyAtLT4gY29sb3ItcmVkOiAjZmZmOyBidXQgbmV2ZXIgdXNlIHRob3NlIGNvbG9ycyBpbiB5b3VyXG4vLyBwcm9qZWN0LCBvbmx5IHVzZSB0aGUgbWFwICsgbWl4aW5zLCB3aGVyZSB5b3UgYXNzaW5nIHRoZSBjb2xvcnMgaW5cblxuJGNvbG9yLWJsYWNrOiAjMDAwO1xuJGNvbG9yLXdoaXRlOiAjZmZmO1xuJGNvbG9yLW9yYW5nZTogI2ZmOGU2NjtcbiRjb2xvci1ncmVlbjogIzk4ZDNiYjtcbiRjb2xvci15ZWxsb3c6ICNmNmUzYTU7XG4kY29sb3ItYmx1ZTogIzY5YmZkODtcbiRjb2xvci1zaGFkb3c6IHJnYmEoJGNvbG9yLWJsYWNrLCAwLjcpO1xuXG4kY29sb3JzOiAoXG4gIGRlZmF1bHQ6ICRjb2xvci1ibGFjayxcbiAgYmFja2dyb3VuZDogJGNvbG9yLXdoaXRlLFxuICBmaXJzdDogJGNvbG9yLW9yYW5nZSxcbiAgc2Vjb25kOiAkY29sb3ItZ3JlZW4sXG4pO1xuIiwiLy8gYmFzZSB1bml0IGRlZmluaXRpb24gYW5kIHdpZHRoL2hlaWdodHMgZm9yIG90aGVyIHN0dWZmXG4kYmFzZS1mb250LXNpemU6IDE3cHg7XG4kYmFzZS1saW5lLWhlaWdodDogMS4yNTtcblxuJGJhc2UtdW5pdDogMXJlbSAqICRiYXNlLWxpbmUtaGVpZ2h0O1xuJGJhc2UtaGFsZjogJGJhc2UtdW5pdCAvIDI7XG4kYmFzZS10aGlyZDogJGJhc2UtdW5pdCAvIDM7XG4kYmFzZS1xdWFydDogJGJhc2UtdW5pdCAvIDQ7XG4kYmFzZS1kb3VibGU6ICRiYXNlLXVuaXQgKiAyO1xuJGJhc2UtdHJpcGxlOiAkYmFzZS11bml0ICogMztcbiRiYXNlLXF1YWQ6ICRiYXNlLXVuaXQgKiA0O1xuIiwiLy8gYSBzbWFsbCBoZWxwZXIgZm9yIGVhc2llciBtZWRpYXF1ZXJpZXMgLSBqdXN0IGRlZmluZSB0aGVcbi8vIGJyZWFrcG9pbnRzIGluIHlvdXIgY29uZmlnIGFzIGEgbWFwIGFuZCB5b3UgYXJlIHJlYWR5IHRvIGdvXG4vLyBieSBkZWZhdWx0IHdlIHVzZSB0aGUgbW9iaWxlLWZpcnN0IGlkZWEsIG5vIG1xID09IG1vYmlsZVxuLy8geW91IGNhbiBzZXQgdGhlIHNlY29uZCBwYXJhbWV0ZXIgdG8gdHJ1ZSBhbiBwcm92aWRlIGEgY3VzdG9tIG1lZGlhcXVlcnlcbkBtaXhpbiBtZWRpYXF1ZXJ5KCRicmVha3BvaW50LXZhbHVlLCAkY3VzdG9tLXF1ZXJ5OiBmYWxzZSkge1xuICBAaWYgJGJyZWFrcG9pbnQtdmFsdWUgPT0gcHJpbnQgeyAvLyBwcmludCBzdHlsZXNcbiAgICBAbWVkaWEgcHJpbnQge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRicmVha3BvaW50LXZhbHVlID09IGxhbmRzY2FwZSB7IC8vIGxhbmRzY2FwZSBhbmQgcG9ydHJhaXQgbWVkaWFxdWVyaWVzXG4gICAgQG1lZGlhIChvcmllbnRhdGlvbjogbGFuZHNjYXBlKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJGJyZWFrcG9pbnQtdmFsdWUgPT0gcG9ydHJhaXQge1xuICAgIEBtZWRpYSAob3JpZW50YXRpb246IHBvcnRyYWl0KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJGN1c3RvbS1xdWVyeSB7IC8vIGN1c3RvbSBtZWRpYXF1ZXJpZXNcbiAgICBAaWYgdmFyaWFibGUtZXhpc3RzKGJyZWFrcG9pbnRzKSA9PSBmYWxzZSB7XG4gICAgICBAd2FybiAnJGJyZWFrcG9pbnRzIFNhc3MtbWFwIGRvZXMgbm90IGV4aXN0LCBwbGVhc2UgcHJvdmlkZSBvbmUgaW4geW91ciBjb25maWcnO1xuICAgIH0gQGVsc2UgaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCAkYnJlYWtwb2ludC12YWx1ZSkgPT0gZmFsc2Uge1xuICAgICAgQHdhcm4gJ0luZGV4IFwiI3skYnJlYWtwb2ludC12YWx1ZX1cIiBub3QgZm91bmQgaW4gJGJyZWFrcG9pbnRzIFNhc3MtbWFwIHVzaW5nIG1peGluIG1lZGlhcXVlcnknO1xuICAgIH0gQGVsc2Uge1xuICAgICAgQG1lZGlhICN7bWFwLWdldCgkYnJlYWtwb2ludHMsICRicmVha3BvaW50LXZhbHVlKX0ge1xuICAgICAgICBAY29udGVudDtcbiAgICAgIH1cbiAgICB9XG4gIH0gQGVsc2UgeyAvLyBkZWZhdWx0OiBtb2JpbGUtZmlyc3QgbWVkaWFxdWVyaWVzIGFzIGRlZmluZWQgaW4gYnJlYWtwb2ludHMsIHRoZXkgd2lsbCBiZSBjb252ZXJ0ZWQgdG8gZW1cbiAgICBAaWYgdmFyaWFibGUtZXhpc3RzKGJyZWFrcG9pbnRzKSA9PSBmYWxzZSB7XG4gICAgICBAd2FybiAnJGJyZWFrcG9pbnRzIFNhc3MtbWFwIGRvZXMgbm90IGV4aXN0LCBwbGVhc2UgcHJvdmlkZSBvbmUgaW4geW91ciBjb25maWcnO1xuICAgIH0gQGVsc2UgaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCAkYnJlYWtwb2ludC12YWx1ZSkgPT0gZmFsc2Uge1xuICAgICAgQHdhcm4gJ0luZGV4IFwiI3skYnJlYWtwb2ludC12YWx1ZX1cIiBub3QgZm91bmQgaW4gJGJyZWFrcG9pbnRzIFNhc3MtbWFwIHVzaW5nIG1peGluIG1lZGlhcXVlcnknO1xuICAgIH0gQGVsc2Uge1xuICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICN7bWFwLWdldCgkYnJlYWtwb2ludHMsICRicmVha3BvaW50LXZhbHVlKSAqIDFweH0pIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyB1c2UgdGhlIGZ1bGwgYXZhaWFibGUgd2lkdGggYnkgZGVmYXVsdGpcbnRhYmxlIHtcbiAgQGluY2x1ZGUgbWFyZ2luKGEgMCwgYiAxKTtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG59XG5cbi8vIGFsaWduIGNvbnRlbnQgaW4gdGFibGUgY2VsbHMgdG8gdGhlIHRvcCBieSBkZWZhdWx0XG50ZCxcbnRoIHtcbiAgcGFkZGluZzogMDtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbn1cblxuLy8gYWxpZ24gY29udGVudCB0byB0aGUgbGVmdCBmb3IgdGFibGUgaGVhZGluZ3NcbnRoIHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuIiwiLy8gVGV4dCBhbmQgb3RoZXIgaW5saW5lIGVsZW1lbnRzXG4vLyBkZWZhdWx0IGhyIGlzIGp1c3QgYSBzaW5nbGUgbGluZSAxcHggaGlnaCwgZmVlbCBmcmVlIHRvIG92ZXJyaWRlXG5ociB7XG4gIEBpbmNsdWRlIG1hcmdpbihoIGF1dG8sIGIgMSwgdCAwKTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiA5MCU7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIGN1cnJlbnRDb2xvcjtcbn1cblxucHJlLFxucCB7XG4gIEBpbmNsdWRlIG1hcmdpbihhIDAsIGIgMSk7XG59XG5cbnN1YixcbnN1cCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICBmb250LXNpemU6IDc1JTtcbiAgbGluZS1oZWlnaHQ6IDA7XG59XG5cbnN1YiB7XG4gIGJvdHRvbTogLTAuMjVlbTtcbn1cblxuc3VwIHtcbiAgdG9wOiAtMC41ZW07XG59XG5cbnN0cm9uZyxcbmIsXG5pLFxuZW0ge1xuICBAaW5jbHVkZSBmb250LXdlaWdodChkZWZhdWx0KTtcbiAgQGluY2x1ZGUgZm9udC1zdHlsZShpdGFsaWMpO1xufVxuIiwiQG1peGluIHRleHQtaHVnZSB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZShoMSk7XG4gIEBpbmNsdWRlIGZvbnQtd2VpZ2h0KGRlZmF1bHQpO1xuICBsaW5lLWhlaWdodDogMC45O1xuICBsZXR0ZXItc3BhY2luZzogMDtcblxuICBAaW5jbHVkZSBtZWRpYXF1ZXJ5KGwpIHtcbiAgICBmb250LXNpemU6IGNhbGMoNDVweCArIDF2dyk7XG4gICAgbGluZS1oZWlnaHQ6IDAuOTM3NTtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhcXVlcnkoeHhsKSB7XG4gICAgZm9udC1zaXplOiBjYWxjKDU1cHggKyAxdncpO1xuICB9XG59XG5cbkBtaXhpbiB0ZXh0LWxhcmdlciB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZShoMik7XG4gIEBpbmNsdWRlIGZvbnQtd2VpZ2h0KGRlZmF1bHQpO1xufVxuXG5AbWl4aW4gdGV4dC1sYXJnZSB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZShoMyk7XG4gIEBpbmNsdWRlIGZvbnQtd2VpZ2h0KGRlZmF1bHQpO1xufVxuXG5AbWl4aW4gdGV4dC1kZWZhdWx0IHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKGRlZmF1bHQpO1xuICBAaW5jbHVkZSBmb250LXdlaWdodChkZWZhdWx0KTtcblxuICBAaW5jbHVkZSBtZWRpYXF1ZXJ5KHh4bCkge1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZShjdXJyZW50KTtcbiAgfVxufVxuXG5AbWl4aW4gdGV4dC1zbWFsbCB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZShoNCk7XG4gIEBpbmNsdWRlIGZvbnQtd2VpZ2h0KGRlZmF1bHQpO1xufVxuXG4udGV4dC0taHVnZSB7XG4gIEBpbmNsdWRlIHRleHQtaHVnZTtcbn1cblxuLnRleHQtLWxhcmdlciB7XG4gIEBpbmNsdWRlIHRleHQtbGFyZ2VyO1xufVxuXG4udGV4dC0tbGFyZ2Uge1xuICBAaW5jbHVkZSB0ZXh0LWxhcmdlO1xufVxuXG4udGV4dC0tZGVmYXVsdCB7XG4gIEBpbmNsdWRlIHRleHQtZGVmYXVsdDtcbn1cblxuLnRleHQtLXNtYWxsIHtcbiAgQGluY2x1ZGUgdGV4dC1zbWFsbDtcbn1cbiIsIiRhY2NvcmRpb24taGVhZGVyLWhlaWdodDogJGJhc2UtZG91YmxlO1xuXG4uYWNjb3JkaW9uIHtcbiAgQGluY2x1ZGUgcmF0aW8tYm94KDIwLCA5KTtcbiAgQGluY2x1ZGUgYmxvY2s7XG4gIG1pbi1oZWlnaHQ6IDIyMHB4O1xuXG4gICY6OmJlZm9yZSB7XG4gICAgQGluY2x1ZGUgYmxvY2socHNldWRvKTtcbiAgICAvLyB3ZWlyZCwgd29ya2luZyBudW1iZXIgZm9yIG5hdmlzICsgMTYvOVxuICAgIC8vIHBhZGRpbmctdG9wOiA0Ni44JTtcbiAgICBwYWRkaW5nLXRvcDogY2FsYygjeyg5IC8gMTYgKiAxMDAlKX0gLSA0LjJyZW0pO1xuXG4gICAgQGluY2x1ZGUgbWVkaWFxdWVyeSh4bCkge1xuICAgICAgcGFkZGluZy10b3A6IGNhbGMoI3soOSAvIDE2ICogMTAwJSl9IC0gNS45cmVtKTtcbiAgICB9XG4gIH1cbn1cblxuLmFjY29yZGlvbl9faW5uZXIge1xuICBAaW5jbHVkZSBjZW50ZXIoY292ZXIpO1xuICB3aWR0aDogMTAwJTtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbn1cblxuLmFjY29yZGlvbl9faGVhZGVyIHtcbiAgQGluY2x1ZGUgYmxvY2s7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZShvdGhlcik7XG4gIHdpZHRoOiAkYWNjb3JkaW9uLWhlYWRlci1oZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkYWNjb3JkaW9uLWhlYWRlci1oZWlnaHQ7XG4gIGhlaWdodDogMTAwJTtcbiAgYm9yZGVyOiAwO1xuICBvdXRsaW5lOiAwO1xuICBwYWRkaW5nOiAwO1xuXG4gIEBpbmNsdWRlIG1lZGlhcXVlcnkoeGwpIHtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoaDIpO1xuICAgIHdpZHRoOiAkYWNjb3JkaW9uLWhlYWRlci1oZWlnaHQgKiAxLjU7XG4gICAgbGluZS1oZWlnaHQ6ICRhY2NvcmRpb24taGVhZGVyLWhlaWdodCAqIDEuNTtcbiAgfVxufVxuXG4uYWNjb3JkaW9uX19jb250ZW50LS1tdXNpayB7XG4gIEBpbmNsdWRlIGNvbG9yKHNlY29uZCk7XG59XG5cbi5hY2NvcmRpb25fX2hlYWRlci0tbXVzaWsge1xuICBAaW5jbHVkZSBiYWNrZ3JvdW5kLWNvbG9yKHNlY29uZCk7XG4gIEBpbmNsdWRlIGNvbG9yKGRlZmF1bHQpO1xufVxuXG4uYWNjb3JkaW9uX19jb250ZW50LS1saXZlLWF1dG9yIHtcbiAgQGluY2x1ZGUgY29sb3IoZmlyc3QpO1xufVxuXG4uYWNjb3JkaW9uX19oZWFkZXItLWxpdmUtYXV0b3Ige1xuICBAaW5jbHVkZSBiYWNrZ3JvdW5kLWNvbG9yKGZpcnN0KTtcbiAgQGluY2x1ZGUgY29sb3IoZGVmYXVsdCk7XG59XG5cbi5hY2NvcmRpb25fX2NvbnRlbnQtLW1vZGVyYXRpb24ge1xuICBAaW5jbHVkZSBjb2xvcihzZWNvbmQpO1xufVxuXG4uYWNjb3JkaW9uX19oZWFkZXItLW1vZGVyYXRpb24ge1xuICBAaW5jbHVkZSBiYWNrZ3JvdW5kLWNvbG9yKGRlZmF1bHQpO1xuICBAaW5jbHVkZSBjb2xvcihzZWNvbmQpO1xufVxuXG5cbi5hY2NvcmRpb25fX2hlYWRlcl9faW5uZXIge1xuICBAaW5jbHVkZSBhYnNvbHV0ZSh0IDEvMiwgbCA1MCUpO1xuICBkaXNwbGF5OiBibG9jaztcbiAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpIHRyYW5zbGF0ZVkoLTUwJSk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gIEBpbmNsdWRlIG1lZGlhcXVlcnkoeGwpIHtcbiAgICB0b3A6ICRiYXNlLXVuaXQ7XG4gIH1cbn1cblxuLmFjY29yZGlvbl9fY29udGVudCB7XG4gIEBpbmNsdWRlIGJsb2NrO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKHdpZHRoKTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMTAwJTtcblxuICAmW2FyaWEtaGlkZGVuPSdmYWxzZSddIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gI3skYWNjb3JkaW9uLWhlYWRlci1oZWlnaHQgKiAzfSk7XG4gIH1cbn1cblxuXG4iLCIvLyBtaXhpbiBmb3Igc2V0dGluZyBkaXNwbGF5IGJsb2NrIGFuZCBvdGhlciBvZnRlbiB1c2VkIGNvbWJpbmF0aW9uc1xuQG1peGluIGJsb2NrKCRibG9jay12YWx1ZTogZGVmYXVsdCkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuXG4gIEBpZiAkYmxvY2stdmFsdWUgPT0gcHNldWRvIHtcbiAgICBjb250ZW50OiAnJztcbiAgfSBAZWxzZSBpZiAkYmxvY2stdmFsdWUgPT0gYmxvY2sge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIH1cbn1cbiIsIi8vIGEgc21hbGwgbWl4aW4gZm9yIHRoZSBib3gtcmF0aW8gY2FsY3VsYXRpb25zXG5AbWl4aW4gcmF0aW8tYm94KCRyYXRpby1vbmU6IDEsICRyYXRpby10d286IDEpIHtcbiAgJjo6YmVmb3JlIHtcbiAgICBwYWRkaW5nLXRvcDogJHJhdGlvLXR3byAvICRyYXRpby1vbmUgKiAxMDAlO1xuICB9XG59XG4iLCIvLyB0aGFua3MgdG8gaHVnbyBnaXJhdWRlbDogaHR0cDovL2h1Z29naXJhdWRlbC5jb20vMjAxNC8wNS8xOS9uZXctb2Zmc2V0cy1zYXNzLW1peGluL1xuQG1peGluIHBvc2l0aW9uKCRwb3NpdGlvbiwgJHBvc2l0aW9uLWFyZ3MuLi4pIHtcbiAgLy8gZGVmYXVsdCBjYXNlIGZvciBwb3NpdGlvbnM6XG4gIC8vIGZpeGVkLCBhYnNvbHV0ZSA9PT4gdG9wOiAwOyBsZWZ0OiAwO1xuICAvLyBzdGF0aWMsIHJlbGF0aXZlOiB0b3A6IGF1dG87IGxlZnQ6IGF1dG87XG4gIHBvc2l0aW9uOiAkcG9zaXRpb247XG5cbiAgQGlmIGxlbmd0aCgkcG9zaXRpb24tYXJncykgPT0gMCB7XG4gICAgQGlmICRwb3NpdGlvbiA9PSBhYnNvbHV0ZSBvciBwb3NpdGlvbiA9PSBmaXhlZCB7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgIH0gQGVsc2Uge1xuICAgICAgdG9wOiBhdXRvO1xuICAgICAgbGVmdDogYXV0bztcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIEBlYWNoICRwb3NpdGlvbi1rZXksICRwb3NpdGlvbi12YWx1ZSBpbiAkcG9zaXRpb24tYXJncyB7XG4gICAgICBAaWYgbm90ICRwb3NpdGlvbi12YWx1ZSB7XG4gICAgICAgIEB3YXJuICdZb3Ugc2hvdWxkIHByb3ZpZGUgYSBsaXN0IG9mIHNpZGUvdmFsdWUgcGFpcnMgZS5nLiBcImIgMlwiIGZvciB0aGlzIG1peGluIHRvIHdvcmsnO1xuICAgICAgfSBAZWxzZSBpZiAkcG9zaXRpb24ta2V5ID09ICdhJyB7XG4gICAgICAgICR2YWx1ZTogcGFyc2UtdW5pdCgkcG9zaXRpb24tdmFsdWUpO1xuICAgICAgICB0b3A6ICR2YWx1ZTtcbiAgICAgICAgcmlnaHQ6ICR2YWx1ZTtcbiAgICAgICAgYm90dG9tOiAkdmFsdWU7XG4gICAgICAgIGxlZnQ6ICR2YWx1ZTtcbiAgICAgIH0gQGVsc2UgaWYgJHBvc2l0aW9uLWtleSA9PSAndicge1xuICAgICAgICB0b3A6IHBhcnNlLXVuaXQoJHBvc2l0aW9uLXZhbHVlKTtcbiAgICAgICAgYm90dG9tOiBwYXJzZS11bml0KCRwb3NpdGlvbi12YWx1ZSk7XG4gICAgICB9IEBlbHNlIGlmICRwb3NpdGlvbi1rZXkgPT0gJ2gnIHtcbiAgICAgICAgcmlnaHQ6IHBhcnNlLXVuaXQoJHBvc2l0aW9uLXZhbHVlKTtcbiAgICAgICAgbGVmdDogcGFyc2UtdW5pdCgkcG9zaXRpb24tdmFsdWUpO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgICRzaWRlOiBwb3NpdGlvbi1tYXAoJHBvc2l0aW9uLWtleSk7XG4gICAgICAgICR2YWx1ZTogcGFyc2UtdW5pdCgkcG9zaXRpb24tdmFsdWUpO1xuICAgICAgICAjeyRzaWRlfTogJHZhbHVlO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gYWJzb2x1dGUoJGFyZ3MuLi4pIHtcbiAgQGluY2x1ZGUgcG9zaXRpb24oYWJzb2x1dGUsICRhcmdzLi4uKTtcbn1cblxuQG1peGluIGZpeGVkKCRhcmdzLi4uKSB7XG4gIEBpbmNsdWRlIHBvc2l0aW9uKGZpeGVkLCAkYXJncy4uLik7XG59XG5cbkBtaXhpbiByZWxhdGl2ZSgkYXJncy4uLikge1xuICBAaW5jbHVkZSBwb3NpdGlvbihyZWxhdGl2ZSwgJGFyZ3MuLi4pO1xufVxuXG5AbWl4aW4gc3RhdGljKCRhcmdzLi4uKSB7XG4gIEBpbmNsdWRlIHBvc2l0aW9uKHN0YXRpYywgJGFyZ3MuLi4pO1xufVxuIiwiJGFuaW1hdGlvbi1lYXNlLWRlZmF1bHQ6IGVhc2UtaW47XG4kYW5pbWF0aW9uLXRyYW5zaXRpb24tcHJvcGVydGllczogdHJhbnNmb3JtIG9wYWNpdHk7XG5cbiRhbmltYXRpb24tdGltZS1mYXN0OiAwLjE1cztcbiRhbmltYXRpb24tdGltZS1kZWZhdWx0OiAwLjNzO1xuJGFuaW1hdGlvbi10aW1lLXNsb3c6IDAuNnM7XG5cbkBtaXhpbiB0cmFuc2l0aW9uKCRwcm9wczogJGFuaW1hdGlvbi10cmFuc2l0aW9uLXByb3BlcnRpZXMsICR0aW1lOiAkYW5pbWF0aW9uLXRpbWUtZGVmYXVsdCwgJGVhc2U6ICRhbmltYXRpb24tZWFzZS1kZWZhdWx0KSB7XG4gICR0cmFuc2l0aW9uOiAnJztcbiAgJHdpbGwtY2hhbmdlOiAnJztcblxuICBAZWFjaCAkcCBpbiAkcHJvcHMge1xuICAgIC8vIHdlIGRvIG5vdCBuZWVkIHRoZSBjb21tYSwgaWYgd2UgYXJlIGp1c3Qgc3RhcnRpbmcgdG8gY29tYmluZSB0aGUgc3RyaW5nXG4gICAgQGlmICR0cmFuc2l0aW9uID09ICcnIHtcbiAgICAgICR0cmFuc2l0aW9uOiAnI3skcH0gI3skdGltZX0gI3skZWFzZX0nO1xuICAgICAgJHdpbGwtY2hhbmdlOiAnI3skcH0nO1xuICAgIH0gQGVsc2Uge1xuICAgICAgJHRyYW5zaXRpb246ICcjeyR0cmFuc2l0aW9ufSwgI3skcH0gI3skdGltZX0gI3skZWFzZX0nO1xuICAgICAgJHdpbGwtY2hhbmdlOiAnI3skd2lsbC1jaGFuZ2V9LCAjeyRwfSc7XG4gICAgfVxuICB9XG5cbiAgd2lsbC1jaGFuZ2U6ICN7JHdpbGwtY2hhbmdlfTtcbiAgdHJhbnNpdGlvbjogI3skdHJhbnNpdGlvbn07XG59XG5cbi8vIHVzdWFsbHkgd2UgZG8gbm90IHVzZSBtdWx0aXBsZSBhbmltYXRpb25zLCBzbyB3ZSBkb250IGhhdmUgdG9cbi8vIHNwbGl0IGJ5IG5hbWUgYXMgZm9yIHRyYW5zaXRpb25zLCBpZiB5b3Ugd2FudCB0byBhbmltYXRlIG11bHRwbGVcbi8vIHByb3BlcnRpZXMsIHRoZW4gZG8gc28gZXhwbGljaXRseSBpbiB0aGUgQGtleWZyYW1lLWRlZmluaXRpb25cbkBtaXhpbiBhbmltYXRpb24oJG5hbWUsICR0aW1lOiAkYW5pbWF0aW9uLXRpbWUtZGVmYXVsdCwgJGVhc2U6ICRhbmltYXRpb24tZWFzZS1kZWZhdWx0LCAkZGVsYXk6IDBzLCAkcGFyYW1zOiAnJykge1xuICBAaWYgbm90ICRuYW1lIHtcbiAgICBAd2FybiAnUGxlYXNlIHByb3ZpZGUgdGhlIG5hbWUgZm9yIHRoZSBrZXlmcmFtZS1hbmltYXRpb24gYW5kIGRlZmluZSBpdCc7XG4gIH0gQGVsc2Uge1xuICAgIGFuaW1hdGlvbjogI3skbmFtZX0gI3skdGltZX0gI3skZGVsYXl9ICN7JGVhc2V9ICN7JHBhcmFtc307XG4gIH1cbn1cbiIsIi5jdXJyZW50IHtcbiAgYmFja2dyb3VuZDogJGNvbG9yLWJsYWNrO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jdXJyZW50Y29sb3IsICN7JGNvbG9yLXllbGxvd30pO1xufVxuXG4uY3VycmVudF9fY292ZXIge1xuICBAaW5jbHVkZSBiYWNrZ3JvdW5kLWNvbG9yKGRlZmF1bHQpO1xuICBAaW5jbHVkZSBwYWRkaW5nKGEgMik7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICBAaW5jbHVkZSBtZWRpYXF1ZXJ5KGwpIHtcbiAgICBAaW5jbHVkZSBjb2xvcihkZWZhdWx0KTtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3IteWVsbG93O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWN1cnJlbnRjb2xvciwgI3skY29sb3IteWVsbG93fSk7XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYXF1ZXJ5KHhsKSB7XG4gICAgQGluY2x1ZGUgcGFkZGluZyhoIDQpO1xuICB9XG5cbiAgLy8gbmVzdGluZyBmb3Igc3BlY2lmaWNpdHlcbiAgLmN1cnJlbnRfX2ltYWdlIHtcbiAgICBAaW5jbHVkZSBtYXJnaW4oYiAwKTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cblxuICAuaW1hZ2VfX3NyYyB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB9XG59XG5cbi5jdXJyZW50X19jb250ZW50IHtcbiAgQGluY2x1ZGUgbWVkaWFxdWVyeShsKSB7XG4gICAgLy8gc2Fzcy1saW50OmRpc2FibGUtYmxvY2sgbm8tZHVwbGljYXRlLXByb3BlcnRpZXNcbiAgICBAaW5jbHVkZSBiYWNrZ3JvdW5kLWNvbG9yKGRlZmF1bHQpO1xuICAgIGNvbG9yOiAkY29sb3IteWVsbG93O1xuICAgIGNvbG9yOiB2YXIoLS1jdXJyZW50Y29sb3IsICN7JGNvbG9yLXllbGxvd30pO1xuICB9XG59XG5cblxuLmN1cnJlbnRfX25ldyB7XG4gIC8vIHNhc3MtbGludDpkaXNhYmxlLWJsb2NrIG5vLWR1cGxpY2F0ZS1wcm9wZXJ0aWVzXG4gIEBpbmNsdWRlIGFic29sdXRlKGwgMSwgdCAxKTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKGN1cnJlbnQpO1xuICBiYWNrZ3JvdW5kOiAkY29sb3ItYmx1ZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY3VycmVudGhpZ2hsaWdodCwgI3skY29sb3ItYmx1ZX0pO1xuICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICBoZWlnaHQ6ICRiYXNlLXF1YWQ7XG4gIGxpbmUtaGVpZ2h0OiA1LjJyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTVkZWcpO1xuICB3aWR0aDogJGJhc2UtcXVhZDtcblxuICBAaW5jbHVkZSBtZWRpYXF1ZXJ5KHhsKSB7XG4gICAgQGluY2x1ZGUgZm9udC1zaXplKGgyKTtcbiAgICBsZWZ0OiAkYmFzZS1kb3VibGU7XG4gICAgd2lkdGg6ICRiYXNlLXF1YWQgKyAkYmFzZS11bml0ICogMS41O1xuICAgIGhlaWdodDogJGJhc2UtcXVhZCArICRiYXNlLXVuaXQgKiAxLjU7XG4gICAgbGluZS1oZWlnaHQ6IDdyZW07XG4gIH1cbn1cblxuIiwiLmV2ZW50IHtcbiAgQGluY2x1ZGUgcGFkZGluZyhhIDEvMiwgciAyKTtcbiAgQGluY2x1ZGUgYmFja2dyb3VuZC1jb2xvcihiYWNrZ3JvdW5kKTtcbiAgQGluY2x1ZGUgY29sb3IoZGVmYXVsdCk7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24obWF4LWhlaWdodCk7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgLy8gY3V0IG9mZiB0aWNrZXQtZG90cyBhbmQgY2xlYXIgdGltZSBmbG9hdFxuICBtaW4taGVpZ2h0OiA2MHB4O1xuICBtYXgtaGVpZ2h0OiAxNTBweDtcblxuICAmOm50aC1jaGlsZCgybikge1xuICAgIEBpbmNsdWRlIGJhY2tncm91bmQtY29sb3IoZGVmYXVsdCk7XG4gICAgQGluY2x1ZGUgY29sb3IoYmFja2dyb3VuZCk7XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYXF1ZXJ5KGwpIHtcbiAgICBAaW5jbHVkZSBwYWRkaW5nKGwgMzQwcHgpO1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWFxdWVyeSh4bCkge1xuICAgIEBpbmNsdWRlIHBhZGRpbmcociA2LCBsIDM5MHB4KTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgfVxuXG4gIHAge1xuICAgIEBpbmNsdWRlIG1hcmdpbihiIDApO1xuICB9XG59XG5cbi5ldmVudC0taGlkZGVuIHtcbiAgQGluY2x1ZGUgcGFkZGluZyh2IDApO1xuICBtaW4taGVpZ2h0OiAwO1xuICBtYXgtaGVpZ2h0OiAwO1xufVxuXG4uZXZlbnRfX3RpdGxlIHtcbiAgQGluY2x1ZGUgdmlzdWFsbHloaWRkZW47XG59XG5cbi5ldmVudF9fdGlja2V0cyB7XG4gIEBpbmNsdWRlIGFic29sdXRlKHQgMCwgciAwLCBiIDApO1xuICB3aWR0aDogJGJhc2UtZG91YmxlO1xuXG4gIEBpbmNsdWRlIG1lZGlhcXVlcnkoeGwpIHtcbiAgICB3aWR0aDogJGJhc2UtcXVhZCArICRiYXNlLWRvdWJsZTtcbiAgfVxuXG4gIC5ldmVudF9fZG90cyB7XG4gICAgQGluY2x1ZGUgYWJzb2x1dGUobCAwLCB0IDVweCk7XG4gICAgd2lkdGg6IDVweDtcbiAgICBoZWlnaHQ6IDI0NXB4O1xuICB9XG59XG5cbi5ldmVudF9fdGlja2V0c19fbGluayB7XG4gIEBpbmNsdWRlIGNlbnRlcihib3RoKTtcbiAgQGluY2x1ZGUgdGV4dC1zbWFsbDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSB0cmFuc2xhdGVYKC01MCUpIHJvdGF0ZSgtOTBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgbGluZS1oZWlnaHQ6ICRiYXNlLWRvdWJsZTtcblxuICBAaW5jbHVkZSBtZWRpYXF1ZXJ5KHhsKSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHRyYW5zbGF0ZVgoLTUwJSk7XG4gIH1cbn1cblxuLmV2ZW50X19kYXRlIHtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICBAaW5jbHVkZSBtZWRpYXF1ZXJ5KGwpIHtcbiAgICBAaW5jbHVkZSBjZW50ZXIodmVydGljYWwpO1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZShldmVudCk7XG4gICAgbGVmdDogJGJhc2UtaGFsZjtcbiAgICBsaW5lLWhlaWdodDogMC45O1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWFxdWVyeSh4bCkge1xuICAgIGxlZnQ6ICRiYXNlLXVuaXQ7XG4gIH1cbn1cblxuLmV2ZW50X19kYXRlX190aW1lIHtcbiAgQGluY2x1ZGUgbWVkaWFxdWVyeShsKSB7XG4gICAgQGluY2x1ZGUgaGlkZGVuO1xuICB9XG59XG5cbi5ldmVudF9faW5mb3Mge1xuICBAaW5jbHVkZSBtZWRpYXF1ZXJ5KHhsKSB7XG4gICAgQGluY2x1ZGUgcGFkZGluZyhyIDIpO1xuICAgIGZsZXg6IDEgMCAyODBweDtcbiAgfVxufVxuXG4uZXZlbnRfX21ldGEge1xuICBAaW5jbHVkZSBtZWRpYXF1ZXJ5KHhsKSB7XG4gICAgQGluY2x1ZGUgcGFkZGluZyhyIDIpO1xuICAgIGZsZXg6IDEgMCAxODBweDtcbiAgfVxufVxuXG4uZXZlbnRfX21ldGFfX3RpbWUge1xuICBAaW5jbHVkZSBoaWRkZW47XG5cbiAgQGluY2x1ZGUgbWVkaWFxdWVyeSh4bCkge1xuICAgIEBpbmNsdWRlIHVuaGlkZGVuO1xuICB9XG59XG4iLCIvLyBoZWxwZXJzIHRvIGhpZGUgZWxlbWVudHMgaW4gdmFyaW91cyB3YXlzXG5AbWl4aW4gdmlzdWFsbHloaWRkZW4ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMXB4O1xuICBtYXJnaW46IC0xcHg7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY2xpcDogcmVjdCgwIDAgMCAwKTtcblxuICAmLmZvY3VzYWJsZSB7XG4gICAgJjphY3RpdmUsXG4gICAgJjpmb2N1cyB7XG4gICAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICAgIGNsaXA6IGF1dG87XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBoaWRkZW4ge1xuICBkaXNwbGF5OiBub25lO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbkBtaXhpbiB1bmhpZGRlbigkZGlzcGxheTogYmxvY2spIHtcbiAgZGlzcGxheTogI3skZGlzcGxheX07XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG59XG4iLCIvLyBhIG1peGluIGZvciBjZW50ZXJpbmcgd2l0aCBkaWZmZXJlbnQgbWV0aG9kc1xuQG1peGluIGNlbnRlcigkY29udGV4dDogZGVmYXVsdCkge1xuICBAaWYgJGNvbnRleHQgPT0gaG9yaXpvbnRhbCB7XG4gICAgQGluY2x1ZGUgYWJzb2x1dGUobCA1MCUpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgfSBAZWxzZSBpZiAkY29udGV4dCA9PSB2ZXJ0aWNhbCB7XG4gICAgQGluY2x1ZGUgYWJzb2x1dGUodCA1MCUpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgfSBAZWxzZSBpZiAkY29udGV4dCA9PSBib3RoIHtcbiAgICBAaW5jbHVkZSBhYnNvbHV0ZSh0IDUwJSwgbCA1MCUpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICB9IEBlbHNlIGlmICRjb250ZXh0ID09IGNvdmVyIHtcbiAgICBAaW5jbHVkZSBhYnNvbHV0ZShhIDApO1xuICB9IEBlbHNlIHsgLy8gYXNzdW1pbmcgZGVmYXVsdCBjYXNlIC0gb2xkc2Nob29sIGhvcml6b250YWwgY2VudGVyaW5nXG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICB9XG59XG4iLCIuZXZlbnRidXR0b24ge1xuICBAaW5jbHVkZSBiYWNrZ3JvdW5kLWNvbG9yKGJhY2tncm91bmQpO1xuICBAaW5jbHVkZSBjb2xvcihkZWZhdWx0KTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmV2ZW50YnV0dG9uX19tb3JlLFxuLmV2ZW50YnV0dG9uX19sZXNzIHtcbiAgQGluY2x1ZGUgcGFkZGluZyhhIDEvMik7XG4gIEBpbmNsdWRlIGJhY2tncm91bmQtY29sb3IoYmFja2dyb3VuZCk7XG4gIEBpbmNsdWRlIGNvbG9yKGRlZmF1bHQpO1xuICBib3JkZXI6IDA7XG4gIG91dGxpbmU6IDA7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICBAaW5jbHVkZSBtZWRpYXF1ZXJ5KHhsKSB7XG4gICAgQGluY2x1ZGUgcGFkZGluZyhoIDEpO1xuICB9XG59XG5cbi5ldmVudGJ1dHRvbi0tZXZlbiB7XG4gIEBpbmNsdWRlIGJhY2tncm91bmQtY29sb3IoZGVmYXVsdCk7XG4gIEBpbmNsdWRlIGNvbG9yKGJhY2tncm91bmQpO1xuXG4gIC5ldmVudGJ1dHRvbl9fbW9yZSxcbiAgLmV2ZW50YnV0dG9uX19sZXNzIHtcbiAgICBAaW5jbHVkZSBiYWNrZ3JvdW5kLWNvbG9yKGRlZmF1bHQpO1xuICAgIEBpbmNsdWRlIGNvbG9yKGJhY2tncm91bmQpO1xuICB9XG59XG4iLCIvLyBzdmcgaWNvbnMgYW5kIGN1c3RvbSBpY29uIHN0eWxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBkZWZhdWx0IGljb24gc3R5bGVzIC0gaW5saW5lLCBzYW1lIGNvbG9yLCAxZW0vMWVtXG4uaWNvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAtMC4wNjI1ZW07XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDFlbTtcbiAgaGVpZ2h0OiAxZW07XG4gIGZpbGw6IGN1cnJlbnRDb2xvcjtcbn1cblxuIiwiLmltYWdlIHtcbiAgQGluY2x1ZGUgbWFyZ2luKGIgMSk7XG59XG5cbi5pbWFnZV9fY2FwdGlvbiB7XG4gIEBpbmNsdWRlIHBhZGRpbmcodCAxLzgpO1xuICBAaW5jbHVkZSB0ZXh0LXNtYWxsO1xufVxuIiwiLm92ZXJsYXkge1xuICBAaW5jbHVkZSB1bmhpZGRlbjtcbiAgQGluY2x1ZGUgZml4ZWQodCA1MCUsIGwgNTAlKTtcbiAgQGluY2x1ZGUgYmFja2dyb3VuZC1jb2xvcihkZWZhdWx0KTtcbiAgQGluY2x1ZGUgY29sb3Ioc2Vjb25kKTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbjtcbiAgQGluY2x1ZGUgei1pbmRleChza3kpO1xuICB3aWR0aDogMTAwdnc7XG4gIGhlaWdodDogMTAwdmg7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKSB0cmFuc2xhdGVZKC01MCUpO1xuICBib3gtc2hhZG93OiAwIDAgJGJhc2UtcXVhZCAwICRjb2xvci1zaGFkb3c7XG5cbiAgJlthcmlhLWhpZGRlbj0ndHJ1ZSddIHtcbiAgICBAaW5jbHVkZSB6LWluZGV4KGdyb3VuZCk7XG4gICAgQGluY2x1ZGUgaGlkZGVuO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cblxuLm92ZXJsYXlfX2NvbnRlbnQge1xuICBAaW5jbHVkZSBwYWRkaW5nO1xuICBAaW5jbHVkZSBjZW50ZXIoY292ZXIpO1xuICBvdmVyZmxvdy15OiBhdXRvO1xuXG4gID4gZGl2IHtcbiAgICBAaW5jbHVkZSBibG9jaztcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBtYXgtd2lkdGg6IDgwMHB4O1xuICB9XG5cbiAgYSB7XG4gICAgQGluY2x1ZGUgY29sb3Ioc2Vjb25kKTtcblxuICAgIEBpbmNsdWRlIGF0dGVudGlvbiB7XG4gICAgICBAaW5jbHVkZSBjb2xvcihmaXJzdCk7XG4gICAgfVxuICB9XG59XG5cbi5vdmVybGF5X19jbG9zZSB7XG4gICYuYnVyZ2VyIHtcbiAgICBAaW5jbHVkZSBhYnNvbHV0ZShyIC0xLzIsIHQgMS8yKTtcbiAgICBAaW5jbHVkZSBjb2xvcihzZWNvbmQpO1xuXG4gICAgLmJ1cmdlcl9fbGluZSB7XG4gICAgICBAaW5jbHVkZSBiYWNrZ3JvdW5kLWNvbG9yKHNlY29uZCk7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYXR0ZW50aW9uIHtcbiAgICAgIEBpbmNsdWRlIGNvbG9yKHNlY29uZCk7XG5cbiAgICAgIC5idXJnZXJfX2xpbmUge1xuICAgICAgICBAaW5jbHVkZSBiYWNrZ3JvdW5kLWNvbG9yKHNlY29uZCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICBAaW5jbHVkZSBjb2xvcihmaXJzdCk7XG5cbiAgICAgIC5idXJnZXJfX2xpbmUge1xuICAgICAgICBAaW5jbHVkZSBiYWNrZ3JvdW5kLWNvbG9yKGZpcnN0KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIHotaW5kZXggbWl4aW4gZm9yIHVzZSB3aXRoIHRoZSBtYXAgaW4gdmFyaWFibGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vIHByb3ZpZGUgYSBkZWZhdWx0IG1hcCBmb3Igei1pbmRleGVzIHVzZWQgdGhyb3VnaG91dCB0aGUgcHJvamVjdFxuLy8gd2l0aCBhbiBlYXN5IHRvIHJlbWVtYmVyIHN0YWNraW5nIGhpZXJhcmNoeSDigJTCoGp1c3QgbG9vayBkb3duIHlvdXIgYm9keSFcbi8vIElmIHlvdSB3YW50IHRvIHVzZSB5b3VyIG93biBtYXAsIGp1c3QgcHJvdmlkZSBvbmUgd2l0aCB0aGUgdmFyaWFibGUgJHotaW5kZXhlc1xuLy8gYmVmb3JlIGluY2x1ZGluZyB0aGlzIGZpbGUgaW4geW91ciBtYWluIFNhc3MgZmlsZVxuJHotaW5kZXhlczogKFxuICBza3k6IDEwMDAsXG4gIGhhaXI6IDUwLFxuICBoZWFkOiA0MCxcbiAgYnJlYXN0OiAzMCxcbiAgYmVsbHk6IDIwLFxuICBrbmVlczogMTAsXG4gIGZlZXQ6IDEsXG4gIGRlZmF1bHQ6IDAsXG4gIGdyb3VuZDogLTFcbikgIWRlZmF1bHQ7XG5cbi8vIGFuZCBhbiBlYXN5IHRvIHVzZSBtaXhpbiB0byB1c2UgYSB2YWx1ZSBmcm9tIHRoZSBtYXAgYWJvdmUgdXNlIGxpa2UgdGhpczpcbi8vIEBpbmNsdWRlIHotaW5kZXgoa25lZXMpOyA9PT4gei1pbmRleDogMTA7XG5cbkBtaXhpbiB6LWluZGV4KCR6LXZhbHVlOiBkZWZhdWx0KSB7XG4gIHotaW5kZXg6IHotaW5kZXgoJHotdmFsdWUpO1xufVxuXG4vLyBhbmQgaWYgbmVlZGVkIGEgZnVuY3Rpb24gdG8gZ2V0IHRoZSB2YWx1ZSBmcm9tIHRoZSBtYXAgd2l0aCxcbi8vIHRoaXMgaXMgYmFzaWNhbGx5IGp1c3QgYW4gYWxpYXMgZm9yIG1hcC1nZXQoJHotaW5kZXhlcy4uLilcbkBmdW5jdGlvbiB6LWluZGV4KCR6LXZhbHVlOiBkZWZhdWx0KSB7XG4gIEBpZiBtYXAtaGFzLWtleSgkei1pbmRleGVzLCAkei12YWx1ZSkgPT0gZmFsc2Uge1xuICAgIEB3YXJuICdJbmRleCBcIiN7JHotdmFsdWV9XCIgbm90IGZvdW5kIGluICR6LWluZGV4ZXMgU2Fzcy1tYXAgdXNpbmcgbWl4aW4gei1pbmRleC4gRGVmYXVsdGluZyB0byAwJztcbiAgICBAcmV0dXJuIDA7XG4gIH1cblxuICBAcmV0dXJuIG1hcC1nZXQoJHotaW5kZXhlcywgJHotdmFsdWUpO1xufVxuIiwiLnByZXNzIHtcbiAgQGluY2x1ZGUgYmFja2dyb3VuZC1jb2xvcihmaXJzdCk7XG4gIEBpbmNsdWRlIHBhZGRpbmcoaCAxLzIsIHYgMS81KTtcbiAgQGluY2x1ZGUgdGV4dC1sYXJnZXI7XG4gIEBpbmNsdWRlIGNvbG9yKGRlZmF1bHQpO1xuICBkaXNwbGF5OiBmbGV4O1xuICB3aWR0aDogMTAwdnc7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcblxuICBAaW5jbHVkZSBhdHRlbnRpb24ge1xuICAgIEBpbmNsdWRlIGNvbG9yKHNlY29uZCk7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWFxdWVyeShsKSB7XG4gICAgQGluY2x1ZGUgcGFkZGluZyhoIDEpO1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWFxdWVyeSh4bCkge1xuICAgIEBpbmNsdWRlIHRleHQtaHVnZTtcbiAgfVxuXG4gIC5wcmVzc19faWNvbiB7XG4gICAgd2lkdGg6IDAuNzVlbTtcbiAgICBoZWlnaHQ6IDAuNzVlbTtcbiAgfVxufVxuXG4ucHJlc3NfX3RleHQge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXG4gIEBpbmNsdWRlIG1lZGlhcXVlcnkoeGwpIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAycHg7XG4gIH1cbn1cbiIsIi5wcm9qZWN0IHtcbiAgZGlzcGxheTogYmxvY2s7XG5cbiAgQGluY2x1ZGUgbWVkaWFxdWVyeShsKSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgfVxufVxuXG4ucHJvamVjdC0tbW9kZXJhdG9yIHtcbiAgJixcbiAgJiAuaW1hZ2VfX2NhcHRpb24ge1xuICAgIEBpbmNsdWRlIGJhY2tncm91bmQtY29sb3IoZGVmYXVsdCk7XG4gICAgQGluY2x1ZGUgY29sb3Ioc2Vjb25kKTtcbiAgfVxuXG4gIC5wcm9qZWN0X19pbWFnZXMge1xuICAgIEBpbmNsdWRlIGNvbG9yKHNlY29uZCk7XG4gIH1cblxuICAucHJvamVjdF9fY29udGVudCB7XG4gICAgYSB7XG4gICAgICBAaW5jbHVkZSBhdHRlbnRpb24ge1xuICAgICAgICBAaW5jbHVkZSBjb2xvcihmaXJzdCk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5wcm9qZWN0LS1tdXNpa2VyIHtcbiAgJixcbiAgJiAuaW1hZ2VfX2NhcHRpb24ge1xuICAgIEBpbmNsdWRlIGJhY2tncm91bmQtY29sb3IoZmlyc3QpO1xuICAgIEBpbmNsdWRlIGNvbG9yKGRlZmF1bHQpO1xuICB9XG5cbiAgLnByb2plY3RfX2ltYWdlcyB7XG4gICAgQGluY2x1ZGUgY29sb3IoZmlyc3QpO1xuICB9XG5cbiAgLnByb2plY3RfX2NvbnRlbnQge1xuICAgIGEge1xuICAgICAgQGluY2x1ZGUgYXR0ZW50aW9uIHtcbiAgICAgICAgQGluY2x1ZGUgY29sb3Ioc2Vjb25kKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLnByb2plY3QtLWxpdmUtYXV0b3Ige1xuICAmLFxuICAmIC5pbWFnZV9fY2FwdGlvbiB7XG4gICAgQGluY2x1ZGUgYmFja2dyb3VuZC1jb2xvcihkZWZhdWx0KTtcbiAgICBAaW5jbHVkZSBjb2xvcihmaXJzdCk7XG4gIH1cblxuICAucHJvamVjdF9faW1hZ2VzIHtcbiAgICBAaW5jbHVkZSBjb2xvcihmaXJzdCk7XG4gIH1cblxuICAucHJvamVjdF9fY29udGVudCB7XG4gICAgYSB7XG4gICAgICBAaW5jbHVkZSBhdHRlbnRpb24ge1xuICAgICAgICBAaW5jbHVkZSBjb2xvcihzZWNvbmQpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4ucHJvamVjdC0tc2NocmlmdHN0ZWxsZXIge1xuICAmLFxuICAmIC5pbWFnZV9fY2FwdGlvbiB7XG4gICAgQGluY2x1ZGUgYmFja2dyb3VuZC1jb2xvcihzZWNvbmQpO1xuICAgIEBpbmNsdWRlIGNvbG9yKGRlZmF1bHQpO1xuICB9XG5cbiAgLnByb2plY3RfX2ltYWdlcyB7XG4gICAgQGluY2x1ZGUgY29sb3Ioc2Vjb25kKTtcbiAgfVxuXG4gIC5wcm9qZWN0X19jb250ZW50IHtcbiAgICBhIHtcbiAgICAgIEBpbmNsdWRlIGF0dGVudGlvbiB7XG4gICAgICAgIEBpbmNsdWRlIGNvbG9yKGZpcnN0KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLnByb2plY3RfX2ltYWdlcyB7XG4gIG92ZXJmbG93OiBoaWRkZW47IC8vIHNsaWRlcnMgY2FuIGJlIGhlcmVcbiAgb3JkZXI6IDE7XG5cbiAgQGluY2x1ZGUgbWVkaWFxdWVyeShsKSB7XG4gICAgd2lkdGg6IDUwJTtcblxuICAgIC5wcm9qZWN0LS1tb2RlcmF0b3IgJixcbiAgICAucHJvamVjdC0tbGl2ZS1hdXRvciAmIHtcbiAgICAgIG9yZGVyOiAzOyAvLyBpbWFnZXMgb24gdGhlIHJpZ2h0IHNpZGUgZm9yIHRob3NlIHR3b1xuICAgIH1cbiAgfVxufVxuXG4ucHJvamVjdF9fY29udGVudCB7XG4gIEBpbmNsdWRlIHRleHQtZGVmYXVsdDtcbiAgQGluY2x1ZGUgcGFkZGluZyhhIDEvMiwgciAxLjUpO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIG1pbi1oZWlnaHQ6IDI0MHB4O1xuICBvcmRlcjogMjtcblxuICBAaW5jbHVkZSBtZWRpYXF1ZXJ5KG0pIHtcbiAgICBAaW5jbHVkZSBwYWRkaW5nKHIgMyk7XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYXF1ZXJ5KGwpIHtcbiAgICBAaW5jbHVkZSBwYWRkaW5nKHIgMik7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhcXVlcnkoeGwpIHtcbiAgICBAaW5jbHVkZSBwYWRkaW5nKGEgMSwgciAzKTtcbiAgfVxuXG4gIGEge1xuICAgIEBpbmNsdWRlIGZvbnQtc3R5bGUoaXRhbGljKTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICBAaW5jbHVkZSBhdHRlbnRpb24ge1xuICAgICAgQGluY2x1ZGUgY29sb3IoYmFja2dyb3VuZCk7XG4gICAgfVxuICB9XG59XG5cbi5wcm9qZWN0X19oZWFkaW5nIHtcbiAgQGluY2x1ZGUgdGV4dC1odWdlO1xuICBAaW5jbHVkZSBtYXJnaW4odCAxLzIsIGIgMS41KTtcbn1cblxuLnByb2plY3RfX3RleHQge1xuICA6bGFzdC1jaGlsZCB7XG4gICAgQGluY2x1ZGUgbWFyZ2luKGIgMCk7XG4gIH1cbn1cbiIsIi5zZWN0aW9uIHtcbiAgQGluY2x1ZGUgYmxvY2s7XG59XG5cbi5zZWN0aW9uLS1ha3R1ZWxsIHtcbiAgQGluY2x1ZGUgei1pbmRleChmZWV0KTtcbiAgQGluY2x1ZGUgbWFyZ2luKHQgLTJweCk7XG59XG5cbi5zZWN0aW9uX19oZWFkaW5nIHtcbiAgQGluY2x1ZGUgdmlzdWFsbHloaWRkZW47XG59XG5cbi5zZWN0aW9uX19pbm5lciB7XG4gIEBpbmNsdWRlIGJsb2NrO1xufVxuXG4uc2VjdGlvbi0ta29udGFrdF9faW5uZXIge1xuICBAaW5jbHVkZSBwYWRkaW5nKGEgMS8yKTtcbiAgQGluY2x1ZGUgYmFja2dyb3VuZC1jb2xvcihkZWZhdWx0KTtcbiAgQGluY2x1ZGUgY29sb3Ioc2Vjb25kKTtcblxuICBAaW5jbHVkZSBtZWRpYXF1ZXJ5KGwpIHtcbiAgICBAaW5jbHVkZSBwYWRkaW5nKGEgMSk7XG4gICAgQGluY2x1ZGUgdGV4dC1sYXJnZTtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhcXVlcnkoeGwpIHtcbiAgICBAaW5jbHVkZSB0ZXh0LWxhcmdlcjtcbiAgICBsaW5lLWhlaWdodDogMS40O1xuICB9XG5cbiAgYSB7XG4gICAgQGluY2x1ZGUgY29sb3Ioc2Vjb25kKTtcblxuICAgIEBpbmNsdWRlIGF0dGVudGlvbiB7XG4gICAgICBAaW5jbHVkZSBjb2xvcihmaXJzdCk7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgfVxuXG4gICAgJltocmVmXj0nbWFpbHRvJ10ge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cbiAgfVxuXG4gIDpsYXN0LWNoaWxkIHtcbiAgICBAaW5jbHVkZSBtYXJnaW4oYiAwKTtcbiAgfVxufVxuXG4uc2VjdGlvbi0ta29udGFrdF9fcHJpdmFjeSxcbi5zZWN0aW9uLS1rb250YWt0X19pbXByaW50IHtcbiAgQGluY2x1ZGUgY29sb3Ioc2Vjb25kKTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyOiAwO1xuICBvdXRsaW5lOiAwO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcblxuICBAaW5jbHVkZSBhdHRlbnRpb24ge1xuICAgIEBpbmNsdWRlIGNvbG9yKGZpcnN0KTtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhcXVlcnkobCkge1xuICAgIEBpbmNsdWRlIHRleHQtZGVmYXVsdDtcbiAgICBAaW5jbHVkZSBtYXJnaW4ociAyKTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIH1cbn1cblxuXG4uc2VjdGlvbi0ta29udGFrdF9fZ3JpZCB7XG4gIEBpbmNsdWRlIG1hcmdpbjtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICBAaW5jbHVkZSBtZWRpYXF1ZXJ5KGwpIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICB9XG59XG5cbi5zZWN0aW9uLS1rb250YWt0X19ncmlkLWl0ZW0ge1xuICBAaW5jbHVkZSBtZWRpYXF1ZXJ5KGwpIHtcbiAgICB3aWR0aDogNTAlO1xuXG4gICAgJjpmaXJzdC1vZi10eXBlIHtcbiAgICAgIEBpbmNsdWRlIHBhZGRpbmcociAxKTtcbiAgICB9XG5cbiAgICAmOmxhc3Qtb2YtdHlwZSB7XG4gICAgICBAaW5jbHVkZSBwYWRkaW5nKGwgMSk7XG4gICAgfVxuICB9XG5cbiAgJiArICYge1xuICAgIEBpbmNsdWRlIG1hcmdpbih0IDEpO1xuXG4gICAgQGluY2x1ZGUgbWVkaWFxdWVyeShsKSB7XG4gICAgICBAaW5jbHVkZSBtYXJnaW4odCAwKTtcbiAgICB9XG4gIH1cbn1cbiIsIkBpbXBvcnQgJ3N3aXBlci9kaXN0L2Nzcy9zd2lwZXIuY3NzJztcblxuLnNsaWRlciB7XG4gIEBpbmNsdWRlIHJhdGlvLWJveCg0LCAzKTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICY6OmJlZm9yZSB7XG4gICAgQGluY2x1ZGUgYmxvY2socHNldWRvKTtcbiAgfVxuXG4gIEBpbmNsdWRlIGF0dGVudGlvbiB7XG4gICAgLmltYWdlX19jYXB0aW9uLFxuICAgIC5zbGlkZXJfX3ByZXYsXG4gICAgLnNsaWRlcl9fbmV4dCB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgIH1cbiAgfVxufVxuXG4uc2xpZGVyX19pbm5lciB7XG4gIEBpbmNsdWRlIGNlbnRlcihjb3Zlcik7XG59XG5cbi5zbGlkZXJfX2NvbnRhaW5lciB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbi5zbGlkZXJfX2ltYWdlIHtcbiAgQGluY2x1ZGUgYmxvY2s7XG4gIEBpbmNsdWRlIG1hcmdpbihiIDApO1xuXG4gIC5pbWFnZV9fc3JjIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxuXG4gIC5pbWFnZV9fY2FwdGlvbiB7XG4gICAgQGluY2x1ZGUgYWJzb2x1dGUoYiAxLzQsIGwgMS80KTtcbiAgICBAaW5jbHVkZSBwYWRkaW5nKGEgMS80KTtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoaDQpO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24ob3BhY2l0eSk7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgb3BhY2l0eTogMDtcblxuICAgIEBpbmNsdWRlIG1lZGlhcXVlcnkoeGwpIHtcbiAgICAgIEBpbmNsdWRlIGFic29sdXRlKGwgMS8yLCBiIDEvMik7XG4gICAgfTtcbiAgfVxufVxuXG4uc2xpZGVyX19wcmV2LFxuLnNsaWRlcl9fbmV4dCB7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24ob3BhY2l0eSk7XG4gIEBpbmNsdWRlIHotaW5kZXgoc2t5KTtcbiAgQGluY2x1ZGUgcGFkZGluZyhhIDApO1xuICBAaW5jbHVkZSB0ZXh0LWxhcmdlcjtcbiAgY29sb3I6IGN1cnJlbnRDb2xvcjtcbiAgb3V0bGluZTogMDtcbiAgYm9yZGVyOiAwO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgb3BhY2l0eTogMDtcbn1cblxuLnNsaWRlcl9fcHJldiB7XG4gIEBpbmNsdWRlIGFic29sdXRlKGwgMS8yKTtcblxuICAuc2xpZGVyX19pY29uIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICB9XG59XG5cbi5zbGlkZXJfX25leHQge1xuICBAaW5jbHVkZSBhYnNvbHV0ZShyIDEpO1xuXG4gIC5zbGlkZXJfX2ljb24ge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbiAgfVxufVxuIiwiLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIFBseXIgc3R5bGVzXG4vLyBodHRwczovL2dpdGh1Yi5jb20vc2Vsei9wbHlyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AaW1wb3J0IFwidmFyaWFibGVzXCI7XG5AaW1wb3J0IFwibWl4aW5zXCI7XG5cbi8vIEFuaW1hdGlvblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5Aa2V5ZnJhbWVzIHBseXItcHJvZ3Jlc3Mge1xuICAgIHRvIHtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogJHBseXItcHJvZ3Jlc3MtbG9hZGluZy1zaXplIDA7XG4gICAgfVxufVxuXG4vLyBTdHlsZXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIEJhc2Vcbi5wbHlyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIG1pbi13aWR0aDogMjAwcHg7XG4gICAgZm9udC1mYW1pbHk6ICRwbHlyLWZvbnQtZmFtaWx5O1xuICAgIGRpcmVjdGlvbjogbHRyO1xuXG4gICAgQGlmICRwbHlyLWJvcmRlci1ib3ggPT0gdHJ1ZSB7XG4gICAgICAgIC8vIGJvcmRlci1ib3ggZXZlcnl0aGluZ1xuICAgICAgICAvLyBodHRwOi8vcGF1bGlyaXNoLmNvbS8yMDEyL2JveC1zaXppbmctYm9yZGVyLWJveC1mdHcvXG4gICAgICAgICYsXG4gICAgICAgICosXG4gICAgICAgICo6OmFmdGVyLFxuICAgICAgICAqOjpiZWZvcmUge1xuICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAkcGx5ci10b3VjaC1hY3Rpb24gPT0gdHJ1ZSB7XG4gICAgICAgIC8vIEZpeCAzMDBtcyBkZWxheVxuICAgICAgICBhLFxuICAgICAgICBidXR0b24sXG4gICAgICAgIGlucHV0LFxuICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgICB0b3VjaC1hY3Rpb246IG1hbmlwdWxhdGlvbjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIEZvY3VzXG4gICAgJjpmb2N1cyB7XG4gICAgICAgIG91dGxpbmU6IDA7XG4gICAgfVxuXG4gICAgLy8gTWVkaWEgZWxlbWVudHNcbiAgICB2aWRlbyxcbiAgICBhdWRpbyB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IGluaGVyaXQ7XG4gICAgfVxuXG4gICAgLy8gUmFuZ2UgaW5wdXRzXG4gICAgLy8gU3BlY2lmaWNpdHkgaXMgZm9yIGJvb3RzdHJhcCBjb21wYXRpYmlsaXR5XG4gICAgaW5wdXRbdHlwZT1cInJhbmdlXCJdIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGhlaWdodDogKCRwbHlyLXJhbmdlLXRodW1iLWhlaWdodCAqICRwbHlyLXJhbmdlLXRodW1iLWFjdGl2ZS1zY2FsZSk7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cbiAgICAgICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuXG4gICAgICAgIC8vIFdlYktpdFxuICAgICAgICAmOjotd2Via2l0LXNsaWRlci1ydW5uYWJsZS10cmFjayB7XG4gICAgICAgICAgICBAaW5jbHVkZSBwbHlyLXJhbmdlLXRyYWNrKCk7XG4gICAgICAgIH1cbiAgICAgICAgJjo6LXdlYmtpdC1zbGlkZXItdGh1bWIge1xuICAgICAgICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogLSgoJHBseXItcmFuZ2UtdGh1bWItaGVpZ2h0IC0gJHBseXItcmFuZ2UtdHJhY2staGVpZ2h0KSAvIDIpO1xuICAgICAgICAgICAgQGluY2x1ZGUgcGx5ci1yYW5nZS10aHVtYigpO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gTW96aWxsYVxuICAgICAgICAmOjotbW96LXJhbmdlLXRyYWNrIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHBseXItcmFuZ2UtdHJhY2soKTtcbiAgICAgICAgfVxuICAgICAgICAmOjotbW96LXJhbmdlLXRodW1iIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHBseXItcmFuZ2UtdGh1bWIoKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIE1pY3Jvc29mdFxuICAgICAgICAmOjotbXMtdHJhY2sge1xuICAgICAgICAgICAgaGVpZ2h0OiAkcGx5ci1yYW5nZS10cmFjay1oZWlnaHQ7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgfVxuICAgICAgICAmOjotbXMtZmlsbC11cHBlciB7XG4gICAgICAgICAgICBAaW5jbHVkZSBwbHlyLXJhbmdlLXRyYWNrKCk7XG4gICAgICAgIH1cbiAgICAgICAgJjo6LW1zLWZpbGwtbG93ZXIge1xuICAgICAgICAgICAgQGluY2x1ZGUgcGx5ci1yYW5nZS10cmFjaygpO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJHBseXItcmFuZ2Utc2VsZWN0ZWQtYmc7XG4gICAgICAgIH1cbiAgICAgICAgJjo6LW1zLXRodW1iIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHBseXItcmFuZ2UtdGh1bWIoKTtcbiAgICAgICAgICAgIC8vIEZvciBzb21lIHJlYXNvbiwgRWRnZSB1c2VzIHRoZSAtd2Via2l0IG1hcmdpbiBhYm92ZVxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgfVxuICAgICAgICAmOjotbXMtdG9vbHRpcCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gRm9jdXMgc3R5bGVzXG4gICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgb3V0bGluZTogMDtcbiAgICAgICAgfVxuICAgICAgICAmOjotbW96LWZvY3VzLW91dGVyIHtcbiAgICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgfVxuICAgICAgICAmLnRhYi1mb2N1czpmb2N1cyB7XG4gICAgICAgICAgICBvdXRsaW5lLW9mZnNldDogM3B4O1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gUHJlc3NlZCBzdHlsZXNcbiAgICAgICAgJjphY3RpdmUge1xuICAgICAgICAgICAgJjo6LXdlYmtpdC1zbGlkZXItdGh1bWIge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHBseXItcmFuZ2UtdGh1bWItYWN0aXZlKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOjotbW96LXJhbmdlLXRodW1iIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBwbHlyLXJhbmdlLXRodW1iLWFjdGl2ZSgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjo6LW1zLXRodW1iIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBwbHlyLXJhbmdlLXRodW1iLWFjdGl2ZSgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyBWaWRlbyByYW5nZSBpbnB1dHNcbi5wbHlyLS12aWRlbyBpbnB1dFt0eXBlPVwicmFuZ2VcIl0udGFiLWZvY3VzOmZvY3VzIHtcbiAgICBvdXRsaW5lOiAxcHggZG90dGVkIHRyYW5zcGFyZW50aXplKCRwbHlyLXZpZGVvLWNvbnRyb2wtY29sb3IsIDAuNSk7XG59XG5cbi8vIEF1ZGlvIHJhbmdlIGlucHV0c1xuLnBseXItLWF1ZGlvIGlucHV0W3R5cGU9XCJyYW5nZVwiXS50YWItZm9jdXM6Zm9jdXMge1xuICAgIG91dGxpbmU6IDFweCBkb3R0ZWQgdHJhbnNwYXJlbnRpemUoJHBseXItYXVkaW8tY29udHJvbC1jb2xvciwgMC41KTtcbn1cblxuLy8gU2NyZWVuIHJlYWRlciBvbmx5IGVsZW1lbnRzXG4ucGx5cl9fc3Itb25seSB7XG4gICAgY2xpcDogcmVjdCgxcHgsIDFweCwgMXB4LCAxcHgpO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAvLyAhaW1wb3J0YW50IGlzIG5vdCBhbHdheXMgbmVlZGVkXG4gICAgQGlmICRwbHlyLXNyLW9ubHktaW1wb3J0YW50ID09IHRydWUge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXI6IDAgIWltcG9ydGFudDtcbiAgICAgICAgaGVpZ2h0OiAxcHggIWltcG9ydGFudDtcbiAgICAgICAgd2lkdGg6IDFweCAhaW1wb3J0YW50O1xuICAgIH0gQGVsc2Uge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICAgIHdpZHRoOiAxcHg7XG4gICAgfVxufVxuXG4vLyBWaWRlb1xuLnBseXJfX3ZpZGVvLXdyYXBwZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBiYWNrZ3JvdW5kOiAjMDAwO1xuICAgIGJvcmRlci1yYWRpdXM6IGluaGVyaXQ7XG59XG5cbi8vIENvbnRhaW5lciBmb3IgZW1iZWRzXG4ucGx5cl9fdmlkZW8tZW1iZWQge1xuICAgIHBhZGRpbmctYm90dG9tOiA1Ni4yNSU7IC8qIDE2OjkgKi9cbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogaW5oZXJpdDtcblxuICAgIC8vIFJlcXVpcmUgb3ZlcmZsb3cgYW5kIHotaW5kZXggdG8gZm9yY2UgYm9yZGVyLXJhZGl1c1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgei1pbmRleDogMDtcblxuICAgIGlmcmFtZSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgIH1cblxuICAgIC8vIFZpbWVvIGhhY2tcbiAgICA+IGRpdiB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDIwMCU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMzUuOTUlKTtcbiAgICB9XG59XG4vLyBUbyBhbGxvdyBtb3VzZSBldmVudHMgdG8gYmUgY2FwdHVyZWQgaWYgZnVsbCBzdXBwb3J0XG4ucGx5ciAucGx5cl9fdmlkZW8tZW1iZWQgaWZyYW1lIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuLy8gQ2FwdGlvbnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBIaWRlIGRlZmF1bHQgY2FwdGlvbnNcbi5wbHlyIHZpZGVvOjotd2Via2l0LW1lZGlhLXRleHQtdHJhY2stY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuLnBseXJfX2NhcHRpb25zIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiAoJHBseXItY29udHJvbC1zcGFjaW5nICogMik7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0oJHBseXItY29udHJvbC1zcGFjaW5nICogNikpO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzIGVhc2U7XG4gICAgY29sb3I6ICRwbHlyLWNhcHRpb25zLWNvbG9yO1xuICAgIGZvbnQtc2l6ZTogJHBseXItZm9udC1zaXplLWNhcHRpb25zLWJhc2U7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG5cbiAgICBzcGFuIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMnB4O1xuICAgICAgICBwYWRkaW5nOiBmbG9vcigkcGx5ci1jb250cm9sLXNwYWNpbmcgLyAzKSAkcGx5ci1jb250cm9sLXNwYWNpbmc7XG4gICAgICAgIGJhY2tncm91bmQ6ICRwbHlyLWNhcHRpb25zLWJnO1xuICAgICAgICBib3gtZGVjb3JhdGlvbi1icmVhazogY2xvbmU7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxNTAlO1xuICAgIH1cbiAgICBzcGFuOmVtcHR5IHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHBseXItYnAtc2NyZWVuLW1kKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogJHBseXItZm9udC1zaXplLWNhcHRpb25zLW1lZGl1bTtcbiAgICB9XG59XG4ucGx5ci0tY2FwdGlvbnMtYWN0aXZlIC5wbHlyX19jYXB0aW9ucyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG59XG4ucGx5ci0taGlkZS1jb250cm9scyAucGx5cl9fY2FwdGlvbnMge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtKCRwbHlyLWNvbnRyb2wtc3BhY2luZyAqIDIpKTtcbn1cbi8vIExhcmdlIGNhcHRpb25zIGluIGZ1bGwgc2NyZWVuIG9uIGxhcmdlciBzY3JlZW5zXG5AbWVkaWEgKG1pbi13aWR0aDogJHBseXItYnAtc2NyZWVuLWxnKSB7XG4gICAgLnBseXItLWZ1bGxzY3JlZW4tYWN0aXZlIC5wbHlyX19jYXB0aW9ucyB7XG4gICAgICAgIGZvbnQtc2l6ZTogJHBseXItZm9udC1zaXplLWNhcHRpb25zLWxhcmdlO1xuICAgIH1cbn1cblxuLy8gQ29udHJvbHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBIaWRlIG5hdGl2ZSBjb250cm9sc1xuLnBseXIgOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzIHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuXG4vLyBQbGF5YmFjayBjb250cm9sc1xuLnBseXJfX2NvbnRyb2xzIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIFxuICAgICYgPiAqIHtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IGFsbDtcbiAgICB9XG4gICAgXG4gICAgLy8gU3BhY2luZ1xuICAgID4gYnV0dG9uLFxuICAgIC5wbHlyX19wcm9ncmVzcyxcbiAgICAucGx5cl9fdGltZSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAoJHBseXItY29udHJvbC1zcGFjaW5nIC8gMik7XG5cbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAucGx5cl9fdm9sdW1lIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6ICgkcGx5ci1jb250cm9sLXNwYWNpbmcgLyAyKTtcbiAgICB9XG4gICAgW2RhdGEtcGx5cj1cInBhdXNlXCJdIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuXG4gICAgLy8gQnV0dG9uc1xuICAgIGJ1dHRvbiB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7IC8vIElFMTFcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgcGFkZGluZzogKCRwbHlyLWNvbnRyb2wtc3BhY2luZyAqIDAuNyk7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuM3MgZWFzZSwgY29sb3IgMC4zcyBlYXNlLCBvcGFjaXR5IDAuM3MgZWFzZTtcbiAgICAgICAgY29sb3I6IGluaGVyaXQ7XG5cbiAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgIHdpZHRoOiAkcGx5ci1jb250cm9sLWljb24tc2l6ZTtcbiAgICAgICAgICAgIGhlaWdodDogJHBseXItY29udHJvbC1pY29uLXNpemU7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGZpbGw6IGN1cnJlbnRDb2xvcjtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIERlZmF1bHQgZm9jdXNcbiAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICBvdXRsaW5lOiAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gSGlkZSB0b2dnbGUgaWNvbnMgYnkgZGVmYXVsdFxuICAgIC5pY29uLS1leGl0LWZ1bGxzY3JlZW4sXG4gICAgLmljb24tLW11dGVkLFxuICAgIC5pY29uLS1jYXB0aW9ucy1vbiB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRwbHlyLWJwLXNjcmVlbi1zbSkge1xuICAgICAgICA+IGJ1dHRvbixcbiAgICAgICAgLnBseXJfX3Byb2dyZXNzLFxuICAgICAgICAucGx5cl9fdGltZSB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogJHBseXItY29udHJvbC1zcGFjaW5nO1xuICAgICAgICB9XG4gICAgfVxufVxuLy8gSGlkZSBjb250cm9sc1xuLnBseXItLWhpZGUtY29udHJvbHMgLnBseXJfX2NvbnRyb2xzIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG4vLyBWaWRlbyBjb250cm9sc1xuLnBseXItLXZpZGVvIC5wbHlyX19jb250cm9scyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIHBhZGRpbmc6ICgkcGx5ci1jb250cm9sLXNwYWNpbmcgKiA1KSAkcGx5ci1jb250cm9sLXNwYWNpbmcgJHBseXItY29udHJvbC1zcGFjaW5nO1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudChcbiAgICAgICAgdHJhbnNwYXJlbnRpemUoJHBseXItdmlkZW8tY29udHJvbHMtYmcsIDEpLFxuICAgICAgICB0cmFuc3BhcmVudGl6ZSgkcGx5ci12aWRlby1jb250cm9scy1iZywgMC41KVxuICAgICk7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogaW5oZXJpdDtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogaW5oZXJpdDtcbiAgICBjb2xvcjogJHBseXItdmlkZW8tY29udHJvbC1jb2xvcjtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgZWFzZTtcblxuICAgIGJ1dHRvbiB7XG4gICAgICAgIC8vIEhvdmVyIGFuZCB0YWIgZm9jdXNcbiAgICAgICAgJi50YWItZm9jdXM6Zm9jdXMsXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJHBseXItdmlkZW8tY29udHJvbC1iZy1ob3ZlcjtcbiAgICAgICAgICAgIGNvbG9yOiAkcGx5ci12aWRlby1jb250cm9sLWNvbG9yLWhvdmVyO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyBBdWRpbyBjb250cm9sc1xuLnBseXItLWF1ZGlvIC5wbHlyX19jb250cm9scyB7XG4gICAgcGFkZGluZzogJHBseXItY29udHJvbC1zcGFjaW5nO1xuICAgIGJvcmRlci1yYWRpdXM6IGluaGVyaXQ7XG4gICAgYmFja2dyb3VuZDogJHBseXItYXVkaW8tY29udHJvbHMtYmc7XG4gICAgYm9yZGVyOiAkcGx5ci1hdWRpby1jb250cm9scy1ib3JkZXI7XG4gICAgY29sb3I6ICRwbHlyLWF1ZGlvLWNvbnRyb2wtY29sb3I7XG5cbiAgICBidXR0b24ge1xuICAgICAgICAvLyBIb3ZlciBhbmQgdGFiIGZvY3VzXG4gICAgICAgICYudGFiLWZvY3VzOmZvY3VzLFxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRwbHlyLWF1ZGlvLWNvbnRyb2wtYmctaG92ZXI7XG4gICAgICAgICAgICBjb2xvcjogJHBseXItYXVkaW8tY29udHJvbC1jb2xvci1ob3ZlcjtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gTGFyZ2UgcGxheSBidXR0b24gKHZpZGVvIG9ubHkpXG4ucGx5cl9fcGxheS1sYXJnZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogMTtcbiAgICB0b3A6IDUwJTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgcGFkZGluZzogJHBseXItY29udHJvbC1zcGFjaW5nO1xuICAgIGJhY2tncm91bmQ6ICRwbHlyLXZpZGVvLWNvbnRyb2wtYmctaG92ZXI7XG4gICAgYm9yZGVyOiA0cHggc29saWQgY3VycmVudENvbG9yO1xuICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gICAgYm94LXNoYWRvdzogMCAxcHggMXB4IHRyYW5zcGFyZW50aXplKCMwMDAsIDAuODUpO1xuICAgIGNvbG9yOiAkcGx5ci12aWRlby1jb250cm9sLWNvbG9yO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG5cbiAgICBzdmcge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGxlZnQ6IDJweDtcbiAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgIGhlaWdodDogMjBweDtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGZpbGw6IGN1cnJlbnRDb2xvcjtcbiAgICB9XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgICAgb3V0bGluZTogMXB4IGRvdHRlZCB0cmFuc3BhcmVudGl6ZSgkcGx5ci12aWRlby1jb250cm9sLWNvbG9yLCAwLjUpO1xuICAgIH1cbn1cbi5wbHlyIC5wbHlyX19wbGF5LWxhcmdlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG4ucGx5ci0tYXVkaW8gLnBseXJfX3BsYXktbGFyZ2Uge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG4ucGx5ci0tcGxheWluZyAucGx5cl9fcGxheS1sYXJnZSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi8vIFN0YXRlc1xuLnBseXJfX2NvbnRyb2xzIFtkYXRhLXBseXI9XCJwYXVzZVwiXSxcbi5wbHlyLS1wbGF5aW5nIC5wbHlyX19jb250cm9scyBbZGF0YS1wbHlyPVwicGxheVwiXSB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cbi5wbHlyLS1wbGF5aW5nIC5wbHlyX19jb250cm9scyBbZGF0YS1wbHlyPVwicGF1c2VcIl0ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLy8gQ2hhbmdlIGljb25zIG9uIHN0YXRlIGNoYW5nZVxuLnBseXItLWZ1bGxzY3JlZW4tYWN0aXZlIC5pY29uLS1leGl0LWZ1bGxzY3JlZW4sXG4ucGx5ci0tbXV0ZWQgLnBseXJfX2NvbnRyb2xzIC5pY29uLS1tdXRlZCxcbi5wbHlyLS1jYXB0aW9ucy1hY3RpdmUgLnBseXJfX2NvbnRyb2xzIC5pY29uLS1jYXB0aW9ucy1vbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAmICsgc3ZnIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG59XG5cbi8vIFNvbWUgb3B0aW9ucyBhcmUgaGlkZGVuIGJ5IGRlZmF1bHRcbi5wbHlyIFtkYXRhLXBseXI9XCJjYXB0aW9uc1wiXSxcbi5wbHlyIFtkYXRhLXBseXI9XCJmdWxsc2NyZWVuXCJdIHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuLnBseXItLWNhcHRpb25zLWVuYWJsZWQgW2RhdGEtcGx5cj1cImNhcHRpb25zXCJdLFxuLnBseXItLWZ1bGxzY3JlZW4tZW5hYmxlZCBbZGF0YS1wbHlyPVwiZnVsbHNjcmVlblwiXSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4vLyBUb29sdGlwc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi5wbHlyX190b29sdGlwIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogMjtcbiAgICBib3R0b206IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogKCRwbHlyLXRvb2x0aXAtcGFkZGluZyAqIDIpO1xuICAgIHBhZGRpbmc6ICRwbHlyLXRvb2x0aXAtcGFkZGluZyAoJHBseXItdG9vbHRpcC1wYWRkaW5nICogMS41KTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcblxuICAgIG9wYWNpdHk6IDA7XG4gICAgYmFja2dyb3VuZDogJHBseXItdG9vbHRpcC1iZztcbiAgICBib3JkZXItcmFkaXVzOiAkcGx5ci10b29sdGlwLXJhZGl1cztcblxuICAgIGNvbG9yOiAkcGx5ci10b29sdGlwLWNvbG9yO1xuICAgIGZvbnQtc2l6ZTogJHBseXItZm9udC1zaXplLXNtYWxsO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG5cbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAxMHB4KSBzY2FsZSgwLjgpO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IDUwJSAxMDAlO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjJzIDAuMXMgZWFzZSwgb3BhY2l0eSAwLjJzIDAuMXMgZWFzZTtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICAgIC8vIEFycm93c1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHdpZHRoOiAwO1xuICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuXG4gICAgICAgIC8vIFRoZSBiYWNrZ3JvdW5kIHRyaWFuZ2xlXG4gICAgICAgIGJvdHRvbTogLSRwbHlyLXRvb2x0aXAtYXJyb3ctc2l6ZTtcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiAkcGx5ci10b29sdGlwLWFycm93LXNpemUgc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJvcmRlci10b3A6ICRwbHlyLXRvb2x0aXAtYXJyb3ctc2l6ZSBzb2xpZCAkcGx5ci10b29sdGlwLWJnO1xuICAgICAgICBib3JkZXItbGVmdDogJHBseXItdG9vbHRpcC1hcnJvdy1zaXplIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICB6LWluZGV4OiAyO1xuICAgIH1cbn1cbi5wbHlyIGJ1dHRvbjpob3ZlciAucGx5cl9fdG9vbHRpcCxcbi5wbHlyIGJ1dHRvbi50YWItZm9jdXM6Zm9jdXMgLnBseXJfX3Rvb2x0aXAsXG4ucGx5cl9fdG9vbHRpcC0tdmlzaWJsZSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAwKSBzY2FsZSgxKTtcbn1cbi5wbHlyIGJ1dHRvbjpob3ZlciAucGx5cl9fdG9vbHRpcCB7XG4gICAgei1pbmRleDogMztcbn1cblxuLy8gRmlyc3QgdG9vbHRpcFxuLnBseXJfX2NvbnRyb2xzIGJ1dHRvbjpmaXJzdC1jaGlsZCAucGx5cl9fdG9vbHRpcCB7XG4gICAgbGVmdDogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAxMHB4KSBzY2FsZSgwLjgpO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IDAgMTAwJTtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGxlZnQ6ICgkcGx5ci1jb250cm9sLWljb24tc2l6ZSAvIDIpICsgJHBseXItY29udHJvbC1wYWRkaW5nO1xuICAgIH1cbn1cblxuLy8gTGFzdCB0b29sdGlwXG4ucGx5cl9fY29udHJvbHMgYnV0dG9uOmxhc3QtY2hpbGQgLnBseXJfX3Rvb2x0aXAge1xuICAgIHJpZ2h0OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDEwcHgpIHNjYWxlKDAuOCk7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogMTAwJSAxMDAlO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgcmlnaHQ6ICgkcGx5ci1jb250cm9sLWljb24tc2l6ZSAvIDIpICsgJHBseXItY29udHJvbC1wYWRkaW5nO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNTAlKTtcbiAgICB9XG59XG5cbi5wbHlyX19jb250cm9scyBidXR0b246Zmlyc3QtY2hpbGQsXG4ucGx5cl9fY29udHJvbHMgYnV0dG9uOmxhc3QtY2hpbGQge1xuICAgICY6aG92ZXIgLnBseXJfX3Rvb2x0aXAsXG4gICAgJi50YWItZm9jdXM6Zm9jdXMgLnBseXJfX3Rvb2x0aXAsXG4gICAgLnBseXJfX3Rvb2x0aXAtLXZpc2libGUge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKSBzY2FsZSgxKTtcbiAgICB9XG59XG5cbi8vIFBsYXliYWNrIHByb2dyZXNzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gPHByb2dyZXNzPiBlbGVtZW50XG4ucGx5cl9fcHJvZ3Jlc3Mge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsZXg6IDE7XG5cbiAgICBpbnB1dFt0eXBlPVwicmFuZ2VcIl0ge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHotaW5kZXg6IDI7XG5cbiAgICAgICAgJjo6LXdlYmtpdC1zbGlkZXItcnVubmFibGUtdHJhY2sge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgIH1cbiAgICAgICAgJjo6LW1vei1yYW5nZS10cmFjayB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgfVxuICAgICAgICAmOjotbXMtZmlsbC11cHBlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIFNlZWsgdG9vbHRpcCB0byBzaG93IHRpbWVcbiAgICAucGx5cl9fdG9vbHRpcCB7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgfVxufVxuLnBseXIgLnBseXJfX3Byb2dyZXNzIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5wbHlyX19wcm9ncmVzcy0tYnVmZmVyLFxuLnBseXJfX3Byb2dyZXNzLS1wbGF5ZWQsXG4ucGx5cl9fdm9sdW1lLS1kaXNwbGF5IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDUwJTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6ICRwbHlyLXJhbmdlLXRyYWNrLWhlaWdodDtcbiAgICBtYXJnaW46IC0oJHBseXItcmFuZ2UtdHJhY2staGVpZ2h0IC8gMikgMCAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiAxMDBweDtcblxuICAgICY6Oi13ZWJraXQtcHJvZ3Jlc3MtYmFyIHtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgfVxuICAgICY6Oi13ZWJraXQtcHJvZ3Jlc3MtdmFsdWUge1xuICAgICAgICBiYWNrZ3JvdW5kOiBjdXJyZW50Q29sb3I7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMHB4O1xuICAgICAgICBtaW4td2lkdGg6ICRwbHlyLXJhbmdlLXRyYWNrLWhlaWdodDtcbiAgICB9XG4gICAgJjo6LW1vei1wcm9ncmVzcy1iYXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiBjdXJyZW50Q29sb3I7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMHB4O1xuICAgICAgICBtaW4td2lkdGg6ICRwbHlyLXJhbmdlLXRyYWNrLWhlaWdodDtcbiAgICB9XG4gICAgJjo6LW1zLWZpbGwge1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxMDBweDtcbiAgICB9XG59XG4ucGx5cl9fcHJvZ3Jlc3MtLXBsYXllZCxcbi5wbHlyX192b2x1bWUtLWRpc3BsYXkge1xuICAgIHotaW5kZXg6IDE7XG4gICAgY29sb3I6ICRwbHlyLXJhbmdlLXNlbGVjdGVkLWJnO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG5cbiAgICAmOjotd2Via2l0LXByb2dyZXNzLXZhbHVlIHtcbiAgICAgICAgbWluLXdpZHRoOiAkcGx5ci1yYW5nZS10cmFjay1oZWlnaHQ7XG4gICAgICAgIG1heC13aWR0aDogOTklO1xuICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XG4gICAgICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgfVxuICAgICY6Oi1tb3otcHJvZ3Jlc3MtYmFyIHtcbiAgICAgICAgbWluLXdpZHRoOiAkcGx5ci1yYW5nZS10cmFjay1oZWlnaHQ7XG4gICAgICAgIG1heC13aWR0aDogOTklO1xuICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XG4gICAgICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgfVxuICAgICY6Oi1tcy1maWxsIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG59XG4ucGx5cl9fcHJvZ3Jlc3MtLWJ1ZmZlciB7XG4gICAgJjo6LXdlYmtpdC1wcm9ncmVzcy12YWx1ZSB7XG4gICAgICAgIHRyYW5zaXRpb246IHdpZHRoIDAuMnMgZWFzZTtcbiAgICB9XG4gICAgJjo6LW1vei1wcm9ncmVzcy1iYXIge1xuICAgICAgICB0cmFuc2l0aW9uOiB3aWR0aCAwLjJzIGVhc2U7XG4gICAgfVxuICAgICY6Oi1tcy1maWxsIHtcbiAgICAgICAgdHJhbnNpdGlvbjogd2lkdGggMC4ycyBlYXNlO1xuICAgIH1cbn1cbi5wbHlyLS12aWRlbyAucGx5cl9fcHJvZ3Jlc3MtLWJ1ZmZlcixcbi5wbHlyLS12aWRlbyAucGx5cl9fdm9sdW1lLS1kaXNwbGF5IHtcbiAgICBiYWNrZ3JvdW5kOiAkcGx5ci12aWRlby1yYW5nZS10cmFjay1iZztcbn1cbi5wbHlyLS12aWRlbyAucGx5cl9fcHJvZ3Jlc3MtLWJ1ZmZlciB7XG4gICAgY29sb3I6ICRwbHlyLXZpZGVvLXByb2dyZXNzLWJ1ZmZlcmVkLWJnO1xufVxuLnBseXItLWF1ZGlvIC5wbHlyX19wcm9ncmVzcy0tYnVmZmVyLFxuLnBseXItLWF1ZGlvIC5wbHlyX192b2x1bWUtLWRpc3BsYXkge1xuICAgIGJhY2tncm91bmQ6ICRwbHlyLWF1ZGlvLXJhbmdlLXRyYWNrLWJnO1xufVxuLnBseXItLWF1ZGlvIC5wbHlyX19wcm9ncmVzcy0tYnVmZmVyIHtcbiAgICBjb2xvcjogJHBseXItYXVkaW8tcHJvZ3Jlc3MtYnVmZmVyZWQtYmc7XG59XG5cbi8vIExvYWRpbmcgc3RhdGVcbi5wbHlyLS1sb2FkaW5nIC5wbHlyX19wcm9ncmVzcy0tYnVmZmVyIHtcbiAgICBhbmltYXRpb246IHBseXItcHJvZ3Jlc3MgMXMgbGluZWFyIGluZmluaXRlO1xuICAgIGJhY2tncm91bmQtc2l6ZTogJHBseXItcHJvZ3Jlc3MtbG9hZGluZy1zaXplICRwbHlyLXByb2dyZXNzLWxvYWRpbmctc2l6ZTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KFxuICAgICAgICAtNDVkZWcsXG4gICAgICAgICRwbHlyLXByb2dyZXNzLWxvYWRpbmctYmcgMjUlLFxuICAgICAgICB0cmFuc3BhcmVudCAyNSUsXG4gICAgICAgIHRyYW5zcGFyZW50IDUwJSxcbiAgICAgICAgJHBseXItcHJvZ3Jlc3MtbG9hZGluZy1iZyA1MCUsXG4gICAgICAgICRwbHlyLXByb2dyZXNzLWxvYWRpbmctYmcgNzUlLFxuICAgICAgICB0cmFuc3BhcmVudCA3NSUsXG4gICAgICAgIHRyYW5zcGFyZW50XG4gICAgKTtcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4ucGx5ci0tdmlkZW8ucGx5ci0tbG9hZGluZyAucGx5cl9fcHJvZ3Jlc3MtLWJ1ZmZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHBseXItdmlkZW8tcHJvZ3Jlc3MtYnVmZmVyZWQtYmc7XG59XG4ucGx5ci0tYXVkaW8ucGx5ci0tbG9hZGluZyAucGx5cl9fcHJvZ3Jlc3MtLWJ1ZmZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHBseXItYXVkaW8tcHJvZ3Jlc3MtYnVmZmVyZWQtYmc7XG59XG5cbi8vIFRpbWVcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4ucGx5cl9fdGltZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgZm9udC1zaXplOiAkcGx5ci1mb250LXNpemUtc21hbGw7XG59XG4vLyBNZWRpYSBkdXJhdGlvbiBoaWRkZW4gb24gc21hbGwgc2NyZWVuc1xuLnBseXJfX3RpbWUgKyAucGx5cl9fdGltZSB7XG4gICAgZGlzcGxheTogbm9uZTtcblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkcGx5ci1icC1zY3JlZW4tbWQpIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cblxuICAgIC8vIEFkZCBhIHNsYXNoIGluIGJlZm9yZVxuICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXFwyMDQ0XCI7XG4gICAgICAgIG1hcmdpbi1yaWdodDogJHBseXItY29udHJvbC1zcGFjaW5nO1xuICAgIH1cbn1cblxuLy8gVm9sdW1lXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLnBseXJfX3ZvbHVtZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cbi5wbHlyIC5wbHlyX192b2x1bWUge1xuICAgIGZsZXg6IDE7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgaW5wdXRbdHlwZT1cInJhbmdlXCJdIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB6LWluZGV4OiAyO1xuICAgIH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHBseXItYnAtc2NyZWVuLXNtKSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtYXgtd2lkdGg6IDYwcHg7XG4gICAgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkcGx5ci1icC1zY3JlZW4tbWQpIHtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDBweDtcbiAgICB9XG59XG5cbi8vIEhpZGUgc291bmQgY29udHJvbHMgb24gaU9TXG4vLyBJdCdzIG5vdCBzdXBwb3J0ZWQgdG8gY2hhbmdlIHZvbHVtZSB1c2luZyBKYXZhU2NyaXB0OlxuLy8gaHR0cHM6Ly9kZXZlbG9wZXIuYXBwbGUuY29tL2xpYnJhcnkvc2FmYXJpL2RvY3VtZW50YXRpb24vQXVkaW9WaWRlby9Db25jZXB0dWFsL1VzaW5nX0hUTUw1X0F1ZGlvX1ZpZGVvL0RldmljZS1TcGVjaWZpY0NvbnNpZGVyYXRpb25zL0RldmljZS1TcGVjaWZpY0NvbnNpZGVyYXRpb25zLmh0bWxcbi5wbHlyLS1pcy1pb3MgLnBseXJfX3ZvbHVtZSxcbi5wbHlyLS1pcy1pb3MgW2RhdGEtcGx5cj1cIm11dGVcIl0ge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLy8gRnVsbHNjcmVlblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi5wbHlyLS1mdWxsc2NyZWVuLWFjdGl2ZSB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJhY2tncm91bmQ6ICMwMDA7XG4gICAgYm9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50O1xuXG4gICAgdmlkZW8ge1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgfVxuICAgIC5wbHlyX192aWRlby13cmFwcGVyIHtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gICAgLnBseXJfX3ZpZGVvLWVtYmVkIHtcbiAgICAgICAgLy8gUmV2ZXJ0IG92ZXJmbG93IGNoYW5nZVxuICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICB9XG5cbiAgICAvLyBWaW1lbyByZXF1aXJlcyBzb21lIGRpZmZlcmVudCBzdHlsaW5nXG4gICAgJi5wbHlyLS12aW1lbyAucGx5cl9fdmlkZW8td3JhcHBlciB7XG4gICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICB9XG59XG5cbi8vIEZhbGxiYWNrIGZvciB1bnN1cHBvcnRlZCBicm93c2Vyc1xuLnBseXItLWZ1bGxzY3JlZW4tZmFsbGJhY2sucGx5ci0tZnVsbHNjcmVlbi1hY3RpdmUge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgei1pbmRleDogMTAwMDAwMDA7XG59XG4iLCIvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gUGx5ciB2YXJpYWJsZXNcbi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9zZWx6L3BseXJcbi8vIGh0dHBzOi8vcm9ib3RzLnRob3VnaHRib3QuY29tL3Nhc3MtZGVmYXVsdFxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8gU2V0dGluZ3NcbiRwbHlyLWJvcmRlci1ib3g6ICAgICAgICAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJHBseXItdG91Y2gtYWN0aW9uOiAgICAgICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kcGx5ci1zci1vbmx5LWltcG9ydGFudDogICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcblxuLy8gQ29sb3JzXG4kcGx5ci1jb2xvci1tYWluOiAgICAgICAgICAgICAgICAgICAgICAgIzM0OThkYiAhZGVmYXVsdDtcblxuLy8gRm9udCBzaXplc1xuJHBseXItZm9udC1mYW1pbHk6ICAgICAgICAgICAgICAgICAgICAgIEF2ZW5pciwgJ0F2ZW5pciBOZXh0JywgJ0hlbHZldGljYSBOZXVlJywgJ1NlZ29lIFVJJywgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZiAhZGVmYXVsdDtcbiRwbHlyLWZvbnQtc2l6ZS1zbWFsbDogICAgICAgICAgICAgICAgICAxNHB4ICFkZWZhdWx0O1xuJHBseXItZm9udC1zaXplLWJhc2U6ICAgICAgICAgICAgICAgICAgIDE2cHggIWRlZmF1bHQ7XG5cbi8vIENhcHRpb25zXG4kcGx5ci1jYXB0aW9ucy1iZzogICAgICAgICAgICAgICAgICAgICAgdHJhbnNwYXJlbnRpemUoIzAwMCwgLjMpICFkZWZhdWx0O1xuJHBseXItY2FwdGlvbnMtY29sb3I6ICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kcGx5ci1mb250LXNpemUtY2FwdGlvbnMtYmFzZTogICAgICAgICAgJHBseXItZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG4kcGx5ci1mb250LXNpemUtY2FwdGlvbnMtbWVkaXVtOiAgICAgICAgY2VpbCgkcGx5ci1mb250LXNpemUtYmFzZSAqIDEuNSkgIWRlZmF1bHQ7XG4kcGx5ci1mb250LXNpemUtY2FwdGlvbnMtbGFyZ2U6ICAgICAgICAgKCRwbHlyLWZvbnQtc2l6ZS1iYXNlICogMikgIWRlZmF1bHQ7XG5cbi8vIENvbnRyb2xzXG4kcGx5ci1jb250cm9sLWljb24tc2l6ZTogICAgICAgICAgICAgICAgMThweCAhZGVmYXVsdDtcbiRwbHlyLWNvbnRyb2wtc3BhY2luZzogICAgICAgICAgICAgICAgICAxMHB4ICFkZWZhdWx0O1xuJHBseXItY29udHJvbC1wYWRkaW5nOiAgICAgICAgICAgICAgICAgICgkcGx5ci1jb250cm9sLXNwYWNpbmcgKiAuNykgIWRlZmF1bHQ7XG4kcGx5ci12aWRlby1jb250cm9scy1iZzogICAgICAgICAgICAgICAgIzAwMCAhZGVmYXVsdDtcbiRwbHlyLXZpZGVvLWNvbnRyb2wtY29sb3I6ICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJHBseXItdmlkZW8tY29udHJvbC1jb2xvci1ob3ZlcjogICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kcGx5ci12aWRlby1jb250cm9sLWJnLWhvdmVyOiAgICAgICAgICAgJHBseXItY29sb3ItbWFpbiAhZGVmYXVsdDtcbiRwbHlyLWF1ZGlvLWNvbnRyb2xzLWJnOiAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJHBseXItYXVkaW8tY29udHJvbHMtYm9yZGVyOiAgICAgICAgICAgIDFweCBzb2xpZCAjZGJlM2U4ICFkZWZhdWx0O1xuJHBseXItYXVkaW8tY29udHJvbC1jb2xvcjogICAgICAgICAgICAgICM1NjVENjQgIWRlZmF1bHQ7XG4kcGx5ci1hdWRpby1jb250cm9sLWNvbG9yLWhvdmVyOiAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRwbHlyLWF1ZGlvLWNvbnRyb2wtYmctaG92ZXI6ICAgICAgICAgICAkcGx5ci1jb2xvci1tYWluO1xuXG4vLyBUb29sdGlwc1xuJHBseXItdG9vbHRpcC1iZzogICAgICAgICAgICAgICAgICAgICAgIHRyYW5zcGFyZW50aXplKCMwMDAsIC4zKSAhZGVmYXVsdDtcbiRwbHlyLXRvb2x0aXAtY29sb3I6ICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJHBseXItdG9vbHRpcC1wYWRkaW5nOiAgICAgICAgICAgICAgICAgICgkcGx5ci1jb250cm9sLXNwYWNpbmcgLyAyKSAhZGVmYXVsdDtcbiRwbHlyLXRvb2x0aXAtYXJyb3ctc2l6ZTogICAgICAgICAgICAgICA0cHggIWRlZmF1bHQ7XG4kcGx5ci10b29sdGlwLXJhZGl1czogICAgICAgICAgICAgICAgICAgM3B4ICFkZWZhdWx0O1xuXG4vLyBQcm9ncmVzc1xuJHBseXItcHJvZ3Jlc3MtbG9hZGluZy1zaXplOiAgICAgICAgICAgIDI1cHggIWRlZmF1bHQ7XG4kcGx5ci1wcm9ncmVzcy1sb2FkaW5nLWJnOiAgICAgICAgICAgICAgdHJhbnNwYXJlbnRpemUoIzAwMCwgLjg1KSAhZGVmYXVsdDtcbiRwbHlyLXZpZGVvLXByb2dyZXNzLWJnOiAgICAgICAgICAgICAgICB0cmFuc3BhcmVudGl6ZSgjZmZmLCAuNzUpICFkZWZhdWx0O1xuJHBseXItdmlkZW8tcHJvZ3Jlc3MtYnVmZmVyZWQtYmc6ICAgICAgICRwbHlyLXZpZGVvLXByb2dyZXNzLWJnICFkZWZhdWx0O1xuJHBseXItYXVkaW8tcHJvZ3Jlc3MtYmc6ICAgICAgICAgICAgICAgIHRyYW5zcGFyZW50aXplKCNDNkQ2REIsIC4zMykgIWRlZmF1bHQ7XG4kcGx5ci1hdWRpby1wcm9ncmVzcy1idWZmZXJlZC1iZzogICAgICAgJHBseXItYXVkaW8tcHJvZ3Jlc3MtYmcgIWRlZmF1bHQ7XG5cbi8vIFJhbmdlIHNsaWRlcnNcbiRwbHlyLXJhbmdlLXRyYWNrLWhlaWdodDogICAgICAgICAgICAgICA4cHggIWRlZmF1bHQ7XG4kcGx5ci1yYW5nZS10aHVtYi1oZWlnaHQ6ICAgICAgICAgICAgICAgZmxvb3IoJHBseXItcmFuZ2UtdHJhY2staGVpZ2h0ICogMikgIWRlZmF1bHQ7XG4kcGx5ci1yYW5nZS10aHVtYi13aWR0aDogICAgICAgICAgICAgICAgZmxvb3IoJHBseXItcmFuZ2UtdHJhY2staGVpZ2h0ICogMikgIWRlZmF1bHQ7XG4kcGx5ci1yYW5nZS10aHVtYi1iZzogICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRwbHlyLXJhbmdlLXRodW1iLWJvcmRlcjogICAgICAgICAgICAgICAycHggc29saWQgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4kcGx5ci1yYW5nZS10aHVtYi1zaGFkb3c6ICAgICAgICAgICAgICAgMCAxcHggMXB4IHRyYW5zcGFyZW50aXplKCRwbHlyLXZpZGVvLWNvbnRyb2xzLWJnLCAuODUpLCAwIDAgMCAxcHggdHJhbnNwYXJlbnRpemUoIzAwMCwgLjg1KSAhZGVmYXVsdDtcbiRwbHlyLXJhbmdlLXRodW1iLWFjdGl2ZS1ib3JkZXItY29sb3I6ICAjZmZmICFkZWZhdWx0O1xuJHBseXItcmFuZ2UtdGh1bWItYWN0aXZlLWJnOiAgICAgICAgICAgICRwbHlyLXZpZGVvLWNvbnRyb2wtYmctaG92ZXIgIWRlZmF1bHQ7XG4kcGx5ci1yYW5nZS10aHVtYi1hY3RpdmUtc2NhbGU6ICAgICAgICAgMS4yNSAhZGVmYXVsdDtcbiRwbHlyLXZpZGVvLXJhbmdlLXRyYWNrLWJnOiAgICAgICAgICAgICAkcGx5ci12aWRlby1wcm9ncmVzcy1idWZmZXJlZC1iZyAhZGVmYXVsdDtcbiRwbHlyLWF1ZGlvLXJhbmdlLXRyYWNrLWJnOiAgICAgICAgICAgICAkcGx5ci1hdWRpby1wcm9ncmVzcy1idWZmZXJlZC1iZyAhZGVmYXVsdDtcbiRwbHlyLXJhbmdlLXNlbGVjdGVkLWJnOiAgICAgICAgICAgICAgICAkcGx5ci1jb2xvci1tYWluICFkZWZhdWx0O1xuXG4vLyBCcmVha3BvaW50c1xuJHBseXItYnAtc2NyZWVuLXNtOiAgICAgICAgICAgICAgICAgICAgIDQ4MHB4ICFkZWZhdWx0O1xuJHBseXItYnAtc2NyZWVuLW1kOiAgICAgICAgICAgICAgICAgICAgIDc2OHB4ICFkZWZhdWx0O1xuJHBseXItYnAtc2NyZWVuLWxnOiAgICAgICAgICAgICAgICAgICAgIDEwMjRweCAhZGVmYXVsdDsiLCIvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gUGx5ciBtaXhpbnNcbi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9zZWx6L3BseXJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vIDxpbnB1dCB0eXBlPVwicmFuZ2VcIj4gc3R5bGluZ1xuQG1peGluIHBseXItcmFuZ2UtdHJhY2soKSB7XG4gICAgaGVpZ2h0OiAkcGx5ci1yYW5nZS10cmFjay1oZWlnaHQ7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6ICgkcGx5ci1yYW5nZS10cmFjay1oZWlnaHQgLyAyKTtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcbn1cbkBtaXhpbiBwbHlyLXJhbmdlLXRodW1iKCkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBoZWlnaHQ6ICRwbHlyLXJhbmdlLXRodW1iLWhlaWdodDtcbiAgICB3aWR0aDogJHBseXItcmFuZ2UtdGh1bWItd2lkdGg7XG4gICAgYmFja2dyb3VuZDogJHBseXItcmFuZ2UtdGh1bWItYmc7XG4gICAgYm9yZGVyOiAkcGx5ci1yYW5nZS10aHVtYi1ib3JkZXI7XG4gICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIC4ycyBlYXNlLCBib3JkZXIgLjJzIGVhc2UsIHRyYW5zZm9ybSAuMnMgZWFzZTtcbiAgICBib3gtc2hhZG93OiAkcGx5ci1yYW5nZS10aHVtYi1zaGFkb3c7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cbkBtaXhpbiBwbHlyLXJhbmdlLXRodW1iLWFjdGl2ZSgpIHtcbiAgICBiYWNrZ3JvdW5kOiAkcGx5ci1yYW5nZS10aHVtYi1hY3RpdmUtYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkcGx5ci1yYW5nZS10aHVtYi1hY3RpdmUtYm9yZGVyLWNvbG9yO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoJHBseXItcmFuZ2UtdGh1bWItYWN0aXZlLXNjYWxlKTtcbn0iLCJAaW1wb3J0ICcuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvcGx5ci9zcmMvc2Nzcy9wbHlyJztcblxuLy8gb3ZlcnJpZGUgY29sb3JzIGZvciBwbHlyXG4vLyBzYXNzLWxpbnQ6ZGlzYWJsZSBuZXN0aW5nLWRlcHRoLCBuby12ZW5kb3ItcHJlZml4ZXMsIGZvcmNlLWVsZW1lbnQtbmVzdGluZywgbm8tcXVhbGlmeWluZy1lbGVtZW50c1xuXG4ucGx5ciB7XG4gIEBpbmNsdWRlIGJhY2tncm91bmQtY29sb3IoZGVmYXVsdCk7XG4gIEBpbmNsdWRlIGNlbnRlcihjb3Zlcik7XG5cbiAgaW5wdXRbdHlwZT0ncmFuZ2UnXSB7XG4gICAgJjphY3RpdmUge1xuICAgICAgJjo6LXdlYmtpdC1zbGlkZXItdGh1bWIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjdXJyZW50Q29sb3I7XG4gICAgICB9XG5cbiAgICAgICY6Oi1tb3otcmFuZ2UtdGh1bWIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjdXJyZW50Q29sb3I7XG4gICAgICB9XG5cbiAgICAgICY6Oi1tcy10aHVtYiB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGN1cnJlbnRDb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLnB5bHJfX3ZpZGVvLWVtYmVkIHtcbiAgaGVpZ2h0OiBhdXRvO1xuICBwYWRkaW5nOiAwO1xufVxuXG4ucGx5cl9fcHJvZ3Jlc3MtLXBsYXllZCB7XG4gIGNvbG9yOiBjdXJyZW50Q29sb3I7XG59XG5cbi5wbHlyLS12aWRlbyB7XG4gIC5wbHlyX19jb250cm9scyB7XG4gICAgQGluY2x1ZGUgei1pbmRleChza3kpO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGNvbG9yOiBjdXJyZW50Q29sb3I7XG5cbiAgICBidXR0b24udGFiLWZvY3VzOmZvY3VzLFxuICAgIGJ1dHRvbjpob3ZlciB7XG4gICAgICBAaW5jbHVkZSBiYWNrZ3JvdW5kLWNvbG9yKGRlZmF1bHQpO1xuICAgICAgY29sb3I6IGN1cnJlbnRDb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLy8gY3VzdG9tIHZpZGVvIHN0eWxlc1xuLnZpZGVvIHtcbiAgQGluY2x1ZGUgY2VudGVyKGNvdmVyKTtcbn1cblxuLnZpZGVvX19saW5rIHtcbiAgQGluY2x1ZGUgYmxvY2s7XG4gIEBpbmNsdWRlIHotaW5kZXgoYmVsbHkpO1xuICBAaW5jbHVkZSBjZW50ZXIoY292ZXIpO1xuXG4gICY6OmJlZm9yZSB7XG4gICAgQGluY2x1ZGUgYmxvY2socHNldWRvKTtcbiAgICBAaW5jbHVkZSBjZW50ZXIoY292ZXIpO1xuICAgIEBpbmNsdWRlIHotaW5kZXgoYnJlYXN0KTtcbiAgICBAaW5jbHVkZSBiYWNrZ3JvdW5kLWNvbG9yKGRlZmF1bHQpO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb247XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gICY6OmFmdGVyIHtcbiAgICBAaW5jbHVkZSBhYnNvbHV0ZShsIDEvMiwgYiAxLzIpO1xuICAgIEBpbmNsdWRlIGNvbG9yKGJhY2tncm91bmQpO1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZShoNCk7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbjtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIGNvbnRlbnQ6ICdNaXQgS2xpY2sgYXVmIGRlbiBQbGF5LUJ1dHRvbiB3aXJkIGVpbiBWaWRlbyB2b24gVmltZW8gYnp3LiBZb3VUdWJlIGdlbGFkZW4uIERpZSBEYXRlbnNjaHV0emVya2zDpHJ1bmcgZGF6dSBoYWJlIGljaCBnZWxlc2VuIHVuZCB2ZXJzdGFuZGVuLic7XG4gICAgb3BhY2l0eTogMDtcblxuICAgIEBpbmNsdWRlIG1lZGlhcXVlcnkoeHhsKSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBhdHRlbnRpb24ge1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBvcGFjaXR5OiAwLjU7XG4gICAgfVxuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG4gIH1cbn1cblxuLnZpZGVvX19saW5rLS1wbGF5aW5nIHtcbiAgQGluY2x1ZGUgei1pbmRleChncm91bmQpO1xufVxuXG4udmlkZW9fX3BsYXkge1xuICBAaW5jbHVkZSBjZW50ZXIoYm90aCk7XG4gIEBpbmNsdWRlIHotaW5kZXgoaGVhZCk7XG4gIHdpZHRoOiAkYmFzZS1kb3VibGU7XG4gIGhlaWdodDogJGJhc2UtZG91YmxlO1xuXG4gIC5pY29uLS1wbGF5IHtcbiAgICBmaWxsOiBjdXJyZW50Q29sb3I7XG4gIH1cbn1cblxuLnZpZGVvX19wbGFjZWhvbGRlciB7XG4gIEBpbmNsdWRlIGNlbnRlcihjb3Zlcik7XG4gIEBpbmNsdWRlIGJhY2tncm91bmQtY29sb3IoZGVmYXVsdCk7XG4gIEBpbmNsdWRlIHotaW5kZXgoa25lZXMpO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLnZpZGVvX19pbWFnZSB7XG4gIEBpbmNsdWRlIGNlbnRlcihjb3Zlcik7XG4gIEBpbmNsdWRlIG1hcmdpbihiIDApO1xuXG4gIC5pbWFnZV9fc3JjIHtcbiAgICBsZWZ0OiAwO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBtYXgtd2lkdGg6IG5vbmU7XG4gIH1cbn1cblxuIiwiJGJ1cmdlci13aWR0aDogNDhweDtcbiRidXJnZXItaGVpZ2h0OiAyNnB4O1xuJGJ1cmdlci1kaWFnb25hbDogMzNweDtcbiRidXJnZXItYW5nbGU6IDQ1ZGVnO1xuXG4uYnVyZ2VyIHtcbiAgQGluY2x1ZGUgYWJzb2x1dGUociAxLzIsIHQgMSk7XG4gIEBpbmNsdWRlIHotaW5kZXgoaGVhZCk7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogJGJ1cmdlci13aWR0aDtcbiAgaGVpZ2h0OiAkYnVyZ2VyLWhlaWdodDtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgYm9yZGVyOiAwO1xuICBvdXRsaW5lOiAwO1xuXG4gIEBpbmNsdWRlIG1lZGlhcXVlcnkobCkge1xuICAgIEBpbmNsdWRlIGhpZGRlbjtcbiAgfVxufVxuXG4uYnVyZ2VyX19saW5lIHtcbiAgQGluY2x1ZGUgYmFja2dyb3VuZC1jb2xvcihkZWZhdWx0KTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbih0cmFuc2Zvcm0gb3BhY2l0eSBsZWZ0IHdpZHRoKTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAkYnVyZ2VyLXdpZHRoO1xuICBoZWlnaHQ6IDNweDtcbiAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGNlbnRlcjtcblxuICAmOm50aC1vZi10eXBlKDEpIHtcbiAgICBAaW5jbHVkZSBhYnNvbHV0ZTtcbiAgfVxuXG4gICY6bnRoLW9mLXR5cGUoMikge1xuICAgIEBpbmNsdWRlIGNlbnRlcih2ZXJ0aWNhbCk7XG4gIH1cblxuICAmOm50aC1vZi10eXBlKDMpIHtcbiAgICBAaW5jbHVkZSBhYnNvbHV0ZShiIDAsIGwgMCk7XG4gIH1cbn1cblxuLmJ1cmdlci0tb3Blbixcbi5idXJnZXJbYXJpYS1leHBhbmRlZD0ndHJ1ZSddIHtcbiAgQGluY2x1ZGUgbWVkaWFxdWVyeShsKSB7XG4gICAgQGluY2x1ZGUgaGlkZGVuO1xuICB9XG5cbiAgLmJ1cmdlcl9fbGluZSB7XG4gICAgd2lkdGg6ICRidXJnZXItZGlhZ29uYWw7XG4gICAgbGVmdDogKCRidXJnZXItd2lkdGggLSAkYnVyZ2VyLWhlaWdodCkgLyAyO1xuXG4gICAgJjpudGgtb2YtdHlwZSgxKSB7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgjeyRidXJnZXItYW5nbGV9KTtcbiAgICAgIHRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0O1xuICAgIH1cblxuICAgICY6bnRoLW9mLXR5cGUoMikge1xuICAgICAgb3BhY2l0eTogMDtcbiAgICB9XG5cbiAgICAmOm50aC1vZi10eXBlKDMpIHtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKC0jeyRidXJnZXItYW5nbGV9KTtcbiAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGJvdHRvbSBsZWZ0O1xuICAgIH1cbiAgfVxufVxuXG4uYnVyZ2VyLS1vcGVuIHtcbiAgQGluY2x1ZGUgbWVkaWFxdWVyeShsKSB7XG4gICAgQGluY2x1ZGUgdW5oaWRkZW47XG4gIH1cblxuICAuYnVyZ2VyX19saW5lIHtcbiAgICBAaW5jbHVkZSBiYWNrZ3JvdW5kLWNvbG9yKGZpcnN0KTtcbiAgfVxuXG4gIEBpbmNsdWRlIGF0dGVudGlvbiB7XG4gICAgLmJ1cmdlcl9fbGluZSB7XG4gICAgICBAaW5jbHVkZSBiYWNrZ3JvdW5kLWNvbG9yKHNlY29uZCk7XG4gICAgfVxuICB9XG59XG5cbiIsIi5oZWFkZXIge1xuICBAaW5jbHVkZSB6LWluZGV4KGhlYWQpO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgQGluY2x1ZGUgbWVkaWFxdWVyeShsKSB7XG4gICAgQGluY2x1ZGUgYWJzb2x1dGU7XG4gICAgd2lkdGg6IDMwdnc7XG4gICAgaGVpZ2h0OiAxMDB2aDtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhcXVlcnkoeGwpIHtcbiAgICBAaW5jbHVkZSBwYWRkaW5nKGEgMSk7XG4gICAgd2lkdGg6IDI1dnc7XG4gIH1cbn1cblxuLmhlYWRlcl9faW5uZXIge1xuICBAaW5jbHVkZSBwYWRkaW5nKGEgMS8yLCB0IDMvNCk7XG4gIEBpbmNsdWRlIGJhY2tncm91bmQtY29sb3IoZmlyc3QpO1xuICBAaW5jbHVkZSB6LWluZGV4KGhlYWQpO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgQGluY2x1ZGUgbWVkaWFxdWVyeShsKSB7XG4gICAgQGluY2x1ZGUgY2VudGVyKGNvdmVyKTtcbiAgICBAaW5jbHVkZSB6LWluZGV4KGtuZWVzKTtcbiAgICBAaW5jbHVkZSBwYWRkaW5nKHQgMS4yNSk7XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYXF1ZXJ5KHhsKSB7XG4gICAgQGluY2x1ZGUgcGFkZGluZyhoIDEpO1xuICB9XG59XG4iLCIubG9nbyB7XG4gIEBpbmNsdWRlIHRleHQtaHVnZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuIiwiLm5hdiB7XG4gIEBpbmNsdWRlIGFic29sdXRlKHQgJGhlaWdodC1oZWFkZXIsIHIgMCk7XG4gIEBpbmNsdWRlIGJhY2tncm91bmQtY29sb3Ioc2Vjb25kKTtcbiAgQGluY2x1ZGUgei1pbmRleChiZWxseSk7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb247XG4gIHdpZHRoOiAxMDB2dztcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xNTAlKTtcblxuICBAaW5jbHVkZSBtZWRpYXF1ZXJ5KGwpIHtcbiAgICBAaW5jbHVkZSBhYnNvbHV0ZShiIDAsIGwgMCwgdCBhdXRvLCByIGF1dG8pO1xuICAgIEBpbmNsdWRlIHBhZGRpbmcoYSAxLzIpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICB3aWR0aDogYXV0bztcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhcXVlcnkoeGwpIHtcbiAgICBAaW5jbHVkZSBwYWRkaW5nKGEgMSk7XG4gIH1cbn1cblxuLm5hdi0tb3BlbiB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbn1cblxuLy8gbWFpbiBuYXZpZ2F0aW9uXG4ubmF2X19saXN0LS1tYWluIHtcbiAgQGluY2x1ZGUgdGV4dC1odWdlO1xuICBAaW5jbHVkZSBtYXJnaW4oYSAwKTtcbiAgQGluY2x1ZGUgcGFkZGluZyh0IDEuNXJlbSwgYiAwLjhyZW0sIGggMS8yKTtcbiAgbGluZS1oZWlnaHQ6IDEuMTtcblxuICBAaW5jbHVkZSBtZWRpYXF1ZXJ5KGwpIHtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoY3VycmVudCk7XG4gICAgQGluY2x1ZGUgcGFkZGluZyhoIDAsIHYgMS8yKTtcbiAgfVxufVxuXG4ubmF2X19pdGVtLS1tYWluIHtcbiAgQGluY2x1ZGUgbWVkaWFxdWVyeShsKSB7XG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG59XG5cbi5uYXZfX2xpbmsge1xuICBAaW5jbHVkZSBjb2xvcihkZWZhdWx0KTtcblxuICBAaW5jbHVkZSBhdHRlbnRpb24ge1xuICAgIEBpbmNsdWRlIGNvbG9yKGZpcnN0KTtcblxuICAgIEBpbmNsdWRlIG1lZGlhcXVlcnkobCkge1xuICAgICAgQGluY2x1ZGUgY29sb3Ioc2Vjb25kKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIGdsb2JhbGx5IHVzZWQgd2lkdGggYW5kIGhlaWdodCBhbmQgb3RoZXIgZGVjbGFyYXRpb25zXG4kaGVpZ2h0LWhlYWRlcjogOTVweDtcbiIsIiRwYWdlLXRvcC1zaXplOiAzcmVtO1xuXG4ucGFnZSB7XG4gIEBpbmNsdWRlIGJsb2NrO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4ucGFnZV9faGVhZGluZyB7XG4gIEBpbmNsdWRlIHZpc3VhbGx5aGlkZGVuO1xufVxuXG4ucGFnZV9fbWFpbiB7XG4gIEBpbmNsdWRlIGJsb2NrO1xuICBAaW5jbHVkZSB6LWluZGV4KGZlZXQpO1xuXG4gIEBpbmNsdWRlIG1lZGlhcXVlcnkobCkge1xuICAgIHBhZGRpbmctdG9wOiAxMDB2aDtcbiAgfVxufVxuXG4ucGFnZV9fbWFpbmltYWdlIHtcbiAgQGluY2x1ZGUgbWFyZ2luKHQgLTFweCwgYiAwKTtcbiAgQGluY2x1ZGUgei1pbmRleChoZWFkKTtcbiAgQGluY2x1ZGUgYmFja2dyb3VuZC1jb2xvcihmaXJzdCk7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogY2FsYygxMDB2aCAtICN7JGhlaWdodC1oZWFkZXJ9KTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICBAaW5jbHVkZSBtZWRpYXF1ZXJ5KGxhbmRzY2FwZSkge1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhcXVlcnkobCkge1xuICAgIEBpbmNsdWRlIGFic29sdXRlKHIgMCwgdCAwKTtcbiAgICB3aWR0aDogNzB2dztcbiAgICBoZWlnaHQ6IGNhbGMoMTAwdmggKyAxcHgpOyAvLyBibGVlZGluZyBsaW5lXG5cbiAgICBAaW5jbHVkZSBtZWRpYXF1ZXJ5KGxhbmRzY2FwZSkge1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMHZoICsgMXB4KTsgLy8gYmxlZWRpbmcgbGluZVxuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhcXVlcnkoeGwpIHtcbiAgICB3aWR0aDogNzV2dztcbiAgfVxuXG4gID4gLmltYWdlX19zcmMge1xuICAgIEBpbmNsdWRlIGNlbnRlcihib3RoKTtcbiAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gI3skaGVpZ2h0LWhlYWRlcn0pO1xuXG4gICAgQGluY2x1ZGUgbWVkaWFxdWVyeShsYW5kc2NhcGUpIHtcbiAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYXF1ZXJ5KGwpIHtcbiAgICAgIGhlaWdodDogY2FsYygxMDB2aCArIDFweCk7XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhcXVlcnkobGFuZHNjYXBlKSB7XG4gICAgICAgIEBpbmNsdWRlIGNlbnRlcihib3RoKTtcbiAgICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgaGVpZ2h0OiBjYWxjKDEwMHZoICsgMXB4KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLnBhZ2VfX3RvcCB7XG4gIEBpbmNsdWRlIGZpeGVkKGIgMS8yLCByIDAuOHJlbSk7XG4gIEBpbmNsdWRlIGJhY2tncm91bmQtY29sb3IoZmlyc3QpO1xuICBAaW5jbHVkZSB6LWluZGV4KGJlbGx5KTtcbiAgQGluY2x1ZGUgdGV4dC1sYXJnZTtcbiAgd2lkdGg6ICRwYWdlLXRvcC1zaXplO1xuICBoZWlnaHQ6ICRwYWdlLXRvcC1zaXplO1xuICBib3JkZXItcmFkaXVzOiAxMDAlO1xuXG4gIEBpbmNsdWRlIGF0dGVudGlvbiB7XG4gICAgQGluY2x1ZGUgYW5pbWF0aW9uKGp1bXApO1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWFxdWVyeShsKSB7XG4gICAgQGluY2x1ZGUgZml4ZWQoYiAxKTtcbiAgfVxufVxuXG4ucGFnZV9fdG9wX19pY29uIHtcbiAgQGluY2x1ZGUgY2VudGVyKGJvdGgpO1xuICB3aWR0aDogJHBhZ2UtdG9wLXNpemUgKiAyLzM7XG4gIGhlaWdodDogJHBhZ2UtdG9wLXNpemUgKiAyLzM7XG59XG5cbiJdLCJzb3VyY2VSb290IjoiLi8ifQ== */
