@charset "UTF-8";
/*
Theme Name: FlatTheme
Author: Laszlo Lapos
Author URI: laposlaszlo.com
Description: FlatTheme
Version: 0.1
*/
/*
 *  Owl Carousel - Core
 */
.owl-carousel {
  display: none;
  width: 100%;
  -webkit-tap-highlight-color: transparent;
  /* position relative and z-index fix webkit rendering fonts issue */
  position: relative;
  z-index: 1;
}
.owl-carousel .owl-stage {
  position: relative;
  touch-action: manipulation;
  -moz-backface-visibility: hidden;
  /* fix firefox animation glitch */
}
.owl-carousel .owl-stage:after {
  content: ".";
  display: block;
  clear: both;
  visibility: hidden;
  line-height: 0;
  height: 0;
}
.owl-carousel .owl-stage-outer {
  position: relative;
  overflow: hidden;
  /* fix for flashing background */
  -webkit-transform: translate3d(0px, 0px, 0px);
}
.owl-carousel .owl-wrapper,
.owl-carousel .owl-item {
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
}
.owl-carousel .owl-item {
  position: relative;
  min-height: 1px;
  float: left;
  -webkit-backface-visibility: hidden;
  -webkit-tap-highlight-color: transparent;
  -webkit-touch-callout: none;
}
.owl-carousel .owl-item img {
  display: block;
  width: 100%;
}
.owl-carousel .owl-nav.disabled,
.owl-carousel .owl-dots.disabled {
  display: none;
}
.owl-carousel .owl-nav .owl-prev,
.owl-carousel .owl-nav .owl-next,
.owl-carousel .owl-dot {
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
.owl-carousel .owl-nav button.owl-prev,
.owl-carousel .owl-nav button.owl-next,
.owl-carousel button.owl-dot {
  background: none;
  color: inherit;
  border: none;
  padding: 0 !important;
  font: inherit;
}
.owl-carousel.owl-loaded {
  display: block;
}
.owl-carousel.owl-loading {
  opacity: 0;
  display: block;
}
.owl-carousel.owl-hidden {
  opacity: 0;
}
.owl-carousel.owl-refresh .owl-item {
  visibility: hidden;
}
.owl-carousel.owl-drag .owl-item {
  touch-action: pan-y;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
.owl-carousel.owl-grab {
  cursor: move;
  cursor: grab;
}
.owl-carousel.owl-rtl {
  direction: rtl;
}
.owl-carousel.owl-rtl .owl-item {
  float: right;
}
/* No Js */
.no-js .owl-carousel {
  display: block;
}
/*
 *  Owl Carousel - Animate Plugin
 */
.owl-carousel .animated {
  animation-duration: 1000ms;
  animation-fill-mode: both;
}
.owl-carousel .owl-animated-in {
  z-index: 0;
}
.owl-carousel .owl-animated-out {
  z-index: 1;
}
.owl-carousel .fadeOut {
  animation-name: fadeOut;
}
@keyframes fadeOut {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
/*
 * 	Owl Carousel - Auto Height Plugin
 */
.owl-height {
  transition: height 500ms ease-in-out;
}
/*
 * 	Owl Carousel - Lazy Load Plugin
 */
.owl-carousel .owl-item {
  /**
  	This is introduced due to a bug in IE11 where lazy loading combined with autoheight plugin causes a wrong
  	calculation of the height of the owl-item that breaks page layouts
   */
}
.owl-carousel .owl-item .owl-lazy {
  opacity: 0;
  transition: opacity 400ms ease;
}
.owl-carousel .owl-item .owl-lazy[src^=""], .owl-carousel .owl-item .owl-lazy:not([src]) {
  max-height: 0;
}
.owl-carousel .owl-item img.owl-lazy {
  transform-style: preserve-3d;
}
/*
 * 	Owl Carousel - Video Plugin
 */
.owl-carousel .owl-video-wrapper {
  position: relative;
  height: 100%;
  background: #000;
}
.owl-carousel .owl-video-play-icon {
  position: absolute;
  height: 80px;
  width: 80px;
  left: 50%;
  top: 50%;
  margin-left: -40px;
  margin-top: -40px;
  background: url("owl.video.play.png") no-repeat;
  cursor: pointer;
  z-index: 1;
  -webkit-backface-visibility: hidden;
  transition: transform 100ms ease;
}
.owl-carousel .owl-video-play-icon:hover {
  transform: scale(1.3, 1.3);
}
.owl-carousel .owl-video-playing .owl-video-tn,
.owl-carousel .owl-video-playing .owl-video-play-icon {
  display: none;
}
.owl-carousel .owl-video-tn {
  opacity: 0;
  height: 100%;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
  transition: opacity 400ms ease;
}
.owl-carousel .owl-video-frame {
  position: relative;
  z-index: 1;
  height: 100%;
  width: 100%;
}
/*
 * 	Default theme - Owl Carousel CSS File
 */
.owl-theme .owl-nav {
  margin-top: 10px;
  text-align: center;
  -webkit-tap-highlight-color: transparent;
}
.owl-theme .owl-nav [class*=owl-] {
  color: #FFF;
  font-size: 14px;
  margin: 5px;
  padding: 4px 7px;
  background: #D6D6D6;
  display: inline-block;
  cursor: pointer;
  border-radius: 3px;
}
.owl-theme .owl-nav [class*=owl-]:hover {
  background: #869791;
  color: #FFF;
  text-decoration: none;
}
.owl-theme .owl-nav .disabled {
  opacity: 0.5;
  cursor: default;
}
.owl-theme .owl-nav.disabled + .owl-dots {
  margin-top: 10px;
}
.owl-theme .owl-dots {
  text-align: center;
  -webkit-tap-highlight-color: transparent;
}
.owl-theme .owl-dots .owl-dot {
  display: inline-block;
  zoom: 1;
  *display: inline;
}
.owl-theme .owl-dots .owl-dot span {
  width: 10px;
  height: 10px;
  margin: 5px 7px;
  background: #D6D6D6;
  display: block;
  -webkit-backface-visibility: visible;
  transition: opacity 200ms ease;
  border-radius: 30px;
}
.owl-theme .owl-dots .owl-dot.active span, .owl-theme .owl-dots .owl-dot:hover span {
  background: #869791;
}
/*!
 * baguetteBox.js
 * @author  feimosi
 * @version %%INJECT_VERSION%%
 * @url https://github.com/feimosi/baguetteBox.js
 */
#baguetteBox-overlay {
  display: none;
  opacity: 0;
  position: fixed;
  overflow: hidden;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1000000;
  background-color: #222;
  background-color: rgba(0, 0, 0, 0.8);
  transition: opacity 0.5s ease;
}
#baguetteBox-overlay.visible {
  opacity: 1;
}
#baguetteBox-overlay .full-image {
  display: inline-block;
  position: relative;
  width: 100%;
  height: 100%;
  text-align: center;
}
#baguetteBox-overlay .full-image figure {
  display: inline;
  margin: 0;
  height: 100%;
}
#baguetteBox-overlay .full-image img {
  display: inline-block;
  width: auto;
  height: auto;
  max-height: 100%;
  max-width: 100%;
  vertical-align: middle;
  box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
}
#baguetteBox-overlay .full-image figcaption {
  display: block;
  position: absolute;
  bottom: 0;
  width: 100%;
  text-align: center;
  line-height: 1.8;
  white-space: normal;
  color: #ccc;
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.6);
  font-family: sans-serif;
}
#baguetteBox-overlay .full-image:before {
  content: "";
  display: inline-block;
  height: 50%;
  width: 1px;
  margin-right: -1px;
}
#baguetteBox-slider {
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 100%;
  white-space: nowrap;
  transition: left 0.4s ease, transform 0.4s ease;
}
#baguetteBox-slider.bounce-from-right {
  animation: bounceFromRight 0.4s ease-out;
}
#baguetteBox-slider.bounce-from-left {
  animation: bounceFromLeft 0.4s ease-out;
}
@keyframes bounceFromRight {
  0% {
    margin-left: 0;
  }
  50% {
    margin-left: -30px;
  }
  100% {
    margin-left: 0;
  }
}
@keyframes bounceFromLeft {
  0% {
    margin-left: 0;
  }
  50% {
    margin-left: 30px;
  }
  100% {
    margin-left: 0;
  }
}
.baguetteBox-button#previous-button, .baguetteBox-button#next-button {
  top: 50%;
  top: calc(50% - 30px);
  width: 44px;
  height: 60px;
}
.baguetteBox-button {
  position: absolute;
  cursor: pointer;
  outline: none;
  padding: 0;
  margin: 0;
  border: 0;
  border-radius: 15%;
  background-color: #323232;
  background-color: rgba(50, 50, 50, 0.5);
  color: #ddd;
  font: 1.6em sans-serif;
  transition: background-color 0.4s ease;
}
.baguetteBox-button:focus, .baguetteBox-button:hover {
  background-color: rgba(50, 50, 50, 0.9);
}
.baguetteBox-button#next-button {
  right: 2%;
}
.baguetteBox-button#previous-button {
  left: 2%;
}
.baguetteBox-button#close-button {
  top: 20px;
  right: 2%;
  right: calc(2% + 6px);
  width: 30px;
  height: 30px;
}
.baguetteBox-button svg {
  position: absolute;
  left: 0;
  top: 0;
}
/*
    Preloader
    Borrowed from http://tobiasahlin.com/spinkit/
*/
.baguetteBox-spinner {
  width: 40px;
  height: 40px;
  display: inline-block;
  position: absolute;
  top: 50%;
  left: 50%;
  margin-top: -20px;
  margin-left: -20px;
}
.baguetteBox-double-bounce1,
.baguetteBox-double-bounce2 {
  width: 100%;
  height: 100%;
  border-radius: 50%;
  background-color: #fff;
  opacity: 0.6;
  position: absolute;
  top: 0;
  left: 0;
  animation: bounce 2s infinite ease-in-out;
}
.baguetteBox-double-bounce2 {
  animation-delay: -1s;
}
@keyframes bounce {
  0%, 100% {
    transform: scale(0);
  }
  50% {
    transform: scale(1);
  }
}
.splide__container {
  box-sizing: border-box;
  position: relative;
}
.splide__list {
  backface-visibility: hidden;
  display: flex;
  height: 100%;
  margin: 0 !important;
  padding: 0 !important;
  transform-style: preserve-3d;
}
.splide.is-initialized:not(.is-active) .splide__list {
  display: block;
}
.splide__pagination {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin: 0;
  pointer-events: none;
}
.splide__pagination li {
  display: inline-block;
  line-height: 1;
  list-style-type: none;
  margin: 0;
  pointer-events: auto;
}
.splide__progress__bar {
  width: 0;
}
.splide {
  outline: none;
  position: relative;
  visibility: hidden;
}
.splide.is-initialized, .splide.is-rendered {
  visibility: visible;
}
.splide__slide {
  backface-visibility: hidden;
  box-sizing: border-box;
  flex-shrink: 0;
  list-style-type: none !important;
  margin: 0;
  outline: none;
  position: relative;
}
.splide__slide img {
  vertical-align: bottom;
}
.splide__slider {
  position: relative;
}
.splide__spinner {
  animation: splide-loading 1s linear infinite;
  border: 2px solid #999;
  border-left-color: transparent;
  border-radius: 50%;
  bottom: 0;
  contain: strict;
  display: inline-block;
  height: 20px;
  left: 0;
  margin: auto;
  position: absolute;
  right: 0;
  top: 0;
  width: 20px;
}
.splide__track {
  overflow: hidden;
  position: relative;
  z-index: 0;
}
@keyframes splide-loading {
  0% {
    transform: rotate(0);
  }
  to {
    transform: rotate(1turn);
  }
}
.splide--draggable > .splide__slider > .splide__track, .splide--draggable > .splide__track {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -ms-user-select: none;
  -moz-user-select: none;
       user-select: none;
}
.splide--fade > .splide__slider > .splide__track > .splide__list, .splide--fade > .splide__track > .splide__list {
  display: block;
}
.splide--fade > .splide__slider > .splide__track > .splide__list > .splide__slide, .splide--fade > .splide__track > .splide__list > .splide__slide {
  left: 0;
  opacity: 0;
  position: absolute;
  top: 0;
  z-index: 0;
}
.splide--fade > .splide__slider > .splide__track > .splide__list > .splide__slide.is-active, .splide--fade > .splide__track > .splide__list > .splide__slide.is-active {
  opacity: 1;
  position: relative;
  z-index: 1;
}
.splide--rtl {
  direction: rtl;
}
.splide--ttb.is-active > .splide__slider > .splide__track > .splide__list, .splide--ttb.is-active > .splide__track > .splide__list {
  display: block;
}
.splide__arrow {
  align-items: center;
  background: #ccc;
  border: 0;
  border-radius: 50%;
  cursor: pointer;
  display: flex;
  height: 2em;
  justify-content: center;
  opacity: 0.7;
  padding: 0;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 2em;
  z-index: 1;
}
.splide__arrow svg {
  fill: #000;
  height: 1.2em;
  width: 1.2em;
}
.splide__arrow:hover {
  opacity: 0.9;
}
.splide__arrow:focus {
  outline: none;
}
.splide__arrow--prev {
  left: 1em;
}
.splide__arrow--prev svg {
  transform: scaleX(-1);
}
.splide__arrow--next {
  right: 1em;
}
.splide__pagination {
  bottom: 0.5em;
  left: 0;
  padding: 0 1em;
  position: absolute;
  right: 0;
  z-index: 1;
}
.splide__pagination__page {
  background: #ccc;
  border: 0;
  border-radius: 50%;
  display: inline-block;
  height: 8px;
  margin: 3px;
  opacity: 0.7;
  padding: 0;
  transition: transform 0.2s linear;
  width: 8px;
}
.splide__pagination__page.is-active {
  background: #fff;
  transform: scale(1.4);
}
.splide__pagination__page:hover {
  cursor: pointer;
  opacity: 0.9;
}
.splide__pagination__page:focus {
  outline: none;
}
.splide__progress__bar {
  background: #ccc;
  height: 3px;
}
.splide--nav > .splide__slider > .splide__track > .splide__list > .splide__slide, .splide--nav > .splide__track > .splide__list > .splide__slide {
  border: 3px solid transparent;
  cursor: pointer;
}
.splide--nav > .splide__slider > .splide__track > .splide__list > .splide__slide.is-active, .splide--nav > .splide__track > .splide__list > .splide__slide.is-active {
  border: 3px solid #000;
}
.splide--nav > .splide__slider > .splide__track > .splide__list > .splide__slide:focus, .splide--nav > .splide__track > .splide__list > .splide__slide:focus {
  outline: none;
}
.splide--rtl > .splide__arrows .splide__arrow--prev, .splide--rtl > .splide__slider > .splide__track > .splide__arrows .splide__arrow--prev, .splide--rtl > .splide__track > .splide__arrows .splide__arrow--prev {
  left: auto;
  right: 1em;
}
.splide--rtl > .splide__arrows .splide__arrow--prev svg, .splide--rtl > .splide__slider > .splide__track > .splide__arrows .splide__arrow--prev svg, .splide--rtl > .splide__track > .splide__arrows .splide__arrow--prev svg {
  transform: scaleX(1);
}
.splide--rtl > .splide__arrows .splide__arrow--next, .splide--rtl > .splide__slider > .splide__track > .splide__arrows .splide__arrow--next, .splide--rtl > .splide__track > .splide__arrows .splide__arrow--next {
  left: 1em;
  right: auto;
}
.splide--rtl > .splide__arrows .splide__arrow--next svg, .splide--rtl > .splide__slider > .splide__track > .splide__arrows .splide__arrow--next svg, .splide--rtl > .splide__track > .splide__arrows .splide__arrow--next svg {
  transform: scaleX(-1);
}
.splide--ttb > .splide__arrows .splide__arrow, .splide--ttb > .splide__slider > .splide__track > .splide__arrows .splide__arrow, .splide--ttb > .splide__track > .splide__arrows .splide__arrow {
  left: 50%;
  transform: translate(-50%);
}
.splide--ttb > .splide__arrows .splide__arrow--prev, .splide--ttb > .splide__slider > .splide__track > .splide__arrows .splide__arrow--prev, .splide--ttb > .splide__track > .splide__arrows .splide__arrow--prev {
  top: 1em;
}
.splide--ttb > .splide__arrows .splide__arrow--prev svg, .splide--ttb > .splide__slider > .splide__track > .splide__arrows .splide__arrow--prev svg, .splide--ttb > .splide__track > .splide__arrows .splide__arrow--prev svg {
  transform: rotate(-90deg);
}
.splide--ttb > .splide__arrows .splide__arrow--next, .splide--ttb > .splide__slider > .splide__track > .splide__arrows .splide__arrow--next, .splide--ttb > .splide__track > .splide__arrows .splide__arrow--next {
  bottom: 1em;
  top: auto;
}
.splide--ttb > .splide__arrows .splide__arrow--next svg, .splide--ttb > .splide__slider > .splide__track > .splide__arrows .splide__arrow--next svg, .splide--ttb > .splide__track > .splide__arrows .splide__arrow--next svg {
  transform: rotate(90deg);
}
.splide--ttb > .splide__pagination, .splide--ttb > .splide__slider > .splide__pagination {
  bottom: 0;
  display: flex;
  flex-direction: column;
  left: auto;
  padding: 1em 0;
  right: 0.5em;
  top: 0;
}
/*
! tailwindcss v3.4.1 | MIT License | https://tailwindcss.com
*/
/*
1. Prevent padding and border from affecting element width. (https://github.com/mozdevs/cssremedy/issues/4)
2. Allow adding a border to an element by just adding a border-width. (https://github.com/tailwindcss/tailwindcss/pull/116)
*/
*,
::before,
::after {
  box-sizing: border-box; /* 1 */
  border-width: 0; /* 2 */
  border-style: solid; /* 2 */
  border-color: currentColor; /* 2 */
}
::before,
::after {
  --tw-content: '';
}
/*
1. Use a consistent sensible line-height in all browsers.
2. Prevent adjustments of font size after orientation changes in iOS.
3. Use a more readable tab size.
4. Use the user's configured `sans` font-family by default.
5. Use the user's configured `sans` font-feature-settings by default.
6. Use the user's configured `sans` font-variation-settings by default.
7. Disable tap highlights on iOS
*/
html,
:host {
  line-height: 1.5; /* 1 */
  -webkit-text-size-adjust: 100%; /* 2 */
  -moz-tab-size: 4; /* 3 */
  -o-tab-size: 4;
     tab-size: 4; /* 3 */
  font-family: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; /* 4 */
  font-feature-settings: normal; /* 5 */
  font-variation-settings: normal; /* 6 */
  -webkit-tap-highlight-color: transparent; /* 7 */
}
/*
1. Remove the margin in all browsers.
2. Inherit line-height from `html` so users can set them as a class directly on the `html` element.
*/
body {
  margin: 0; /* 1 */
  line-height: inherit; /* 2 */
}
/*
1. Add the correct height in Firefox.
2. Correct the inheritance of border color in Firefox. (https://bugzilla.mozilla.org/show_bug.cgi?id=190655)
3. Ensure horizontal rules are visible by default.
*/
hr {
  height: 0; /* 1 */
  color: inherit; /* 2 */
  border-top-width: 1px; /* 3 */
}
/*
Add the correct text decoration in Chrome, Edge, and Safari.
*/
abbr:where([title]) {
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted;
}
/*
Remove the default font size and weight for headings.
*/
h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: inherit;
  font-weight: inherit;
}
/*
Reset links to optimize for opt-in styling instead of opt-out.
*/
a {
  color: inherit;
  text-decoration: inherit;
}
/*
Add the correct font weight in Edge and Safari.
*/
b,
strong {
  font-weight: bolder;
}
/*
1. Use the user's configured `mono` font-family by default.
2. Use the user's configured `mono` font-feature-settings by default.
3. Use the user's configured `mono` font-variation-settings by default.
4. Correct the odd `em` font sizing in all browsers.
*/
code,
kbd,
samp,
pre {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; /* 1 */
  font-feature-settings: normal; /* 2 */
  font-variation-settings: normal; /* 3 */
  font-size: 1em; /* 4 */
}
/*
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;
}
/*
1. Remove text indentation from table contents in Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=999088, https://bugs.webkit.org/show_bug.cgi?id=201297)
2. Correct table border color inheritance in all Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=935729, https://bugs.webkit.org/show_bug.cgi?id=195016)
3. Remove gaps between table borders by default.
*/
table {
  text-indent: 0; /* 1 */
  border-color: inherit; /* 2 */
  border-collapse: collapse; /* 3 */
}
/*
1. Change the font styles in all browsers.
2. Remove the margin in Firefox and Safari.
3. Remove default padding in all browsers.
*/
button,
input,
optgroup,
select,
textarea {
  font-family: inherit; /* 1 */
  font-feature-settings: inherit; /* 1 */
  font-variation-settings: inherit; /* 1 */
  font-size: 100%; /* 1 */
  font-weight: inherit; /* 1 */
  line-height: inherit; /* 1 */
  color: inherit; /* 1 */
  margin: 0; /* 2 */
  padding: 0; /* 3 */
}
/*
Remove the inheritance of text transform in Edge and Firefox.
*/
button,
select {
  text-transform: none;
}
/*
1. Correct the inability to style clickable types in iOS and Safari.
2. Remove default button styles.
*/
button,
[type='button'],
[type='reset'],
[type='submit'] {
  -webkit-appearance: button; /* 1 */
  background-color: transparent; /* 2 */
  background-image: none; /* 2 */
}
/*
Use the modern Firefox focus style for all focusable elements.
*/
:-moz-focusring {
  outline: auto;
}
/*
Remove the additional `:invalid` styles in Firefox. (https://github.com/mozilla/gecko-dev/blob/2f9eacd9d3d995c937b4251a5557d95d494c9be1/layout/style/res/forms.css#L728-L737)
*/
:-moz-ui-invalid {
  box-shadow: none;
}
/*
Add the correct vertical alignment in Chrome and Firefox.
*/
progress {
  vertical-align: baseline;
}
/*
Correct the cursor style of increment and decrement buttons in Safari.
*/
::-webkit-inner-spin-button,
::-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.
*/
::-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 */
}
/*
Add the correct display in Chrome and Safari.
*/
summary {
  display: list-item;
}
/*
Removes the default spacing and border for appropriate elements.
*/
blockquote,
dl,
dd,
h1,
h2,
h3,
h4,
h5,
h6,
hr,
figure,
p,
pre {
  margin: 0;
}
fieldset {
  margin: 0;
  padding: 0;
}
legend {
  padding: 0;
}
ol,
ul,
menu {
  list-style: none;
  margin: 0;
  padding: 0;
}
/*
Reset default styling for dialogs.
*/
dialog {
  padding: 0;
}
/*
Prevent resizing textareas horizontally by default.
*/
textarea {
  resize: vertical;
}
/*
1. Reset the default placeholder opacity in Firefox. (https://github.com/tailwindlabs/tailwindcss/issues/3300)
2. Set the default placeholder color to the user's configured gray 400 color.
*/
input::-moz-placeholder, textarea::-moz-placeholder {
  opacity: 1; /* 1 */
  color: #9ca3af; /* 2 */
}
input:-ms-input-placeholder, textarea:-ms-input-placeholder {
  opacity: 1; /* 1 */
  color: #9ca3af; /* 2 */
}
input::placeholder,
textarea::placeholder {
  opacity: 1; /* 1 */
  color: #9ca3af; /* 2 */
}
/*
Set the default cursor for buttons.
*/
button,
[role="button"] {
  cursor: pointer;
}
/*
Make sure disabled buttons don't get the pointer cursor.
*/
:disabled {
  cursor: default;
}
/*
1. Make replaced elements `display: block` by default. (https://github.com/mozdevs/cssremedy/issues/14)
2. Add `vertical-align: middle` to align replaced elements more sensibly by default. (https://github.com/jensimmons/cssremedy/issues/14#issuecomment-634934210)
   This can trigger a poorly considered lint error in some tools but is included by design.
*/
img,
svg,
video,
canvas,
audio,
iframe,
embed,
object {
  display: block; /* 1 */
  vertical-align: middle; /* 2 */
}
/*
Constrain images and videos to the parent width and preserve their intrinsic aspect ratio. (https://github.com/mozdevs/cssremedy/issues/14)
*/
img,
video {
  max-width: 100%;
  height: auto;
}
/* Make elements with the HTML hidden attribute stay hidden by default */
[hidden] {
  display: none;
}
*, ::before, ::after{
  --tw-border-spacing-x: 0;
  --tw-border-spacing-y: 0;
  --tw-translate-x: 0;
  --tw-translate-y: 0;
  --tw-rotate: 0;
  --tw-skew-x: 0;
  --tw-skew-y: 0;
  --tw-scale-x: 1;
  --tw-scale-y: 1;
  --tw-pan-x:  ;
  --tw-pan-y:  ;
  --tw-pinch-zoom:  ;
  --tw-scroll-snap-strictness: proximity;
  --tw-gradient-from-position:  ;
  --tw-gradient-via-position:  ;
  --tw-gradient-to-position:  ;
  --tw-ordinal:  ;
  --tw-slashed-zero:  ;
  --tw-numeric-figure:  ;
  --tw-numeric-spacing:  ;
  --tw-numeric-fraction:  ;
  --tw-ring-inset:  ;
  --tw-ring-offset-width: 0px;
  --tw-ring-offset-color: #fff;
  --tw-ring-color: rgb(59 130 246 / 0.5);
  --tw-ring-offset-shadow: 0 0 #0000;
  --tw-ring-shadow: 0 0 #0000;
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  --tw-blur:  ;
  --tw-brightness:  ;
  --tw-contrast:  ;
  --tw-grayscale:  ;
  --tw-hue-rotate:  ;
  --tw-invert:  ;
  --tw-saturate:  ;
  --tw-sepia:  ;
  --tw-drop-shadow:  ;
  --tw-backdrop-blur:  ;
  --tw-backdrop-brightness:  ;
  --tw-backdrop-contrast:  ;
  --tw-backdrop-grayscale:  ;
  --tw-backdrop-hue-rotate:  ;
  --tw-backdrop-invert:  ;
  --tw-backdrop-opacity:  ;
  --tw-backdrop-saturate:  ;
  --tw-backdrop-sepia:  ;
}
::backdrop{
  --tw-border-spacing-x: 0;
  --tw-border-spacing-y: 0;
  --tw-translate-x: 0;
  --tw-translate-y: 0;
  --tw-rotate: 0;
  --tw-skew-x: 0;
  --tw-skew-y: 0;
  --tw-scale-x: 1;
  --tw-scale-y: 1;
  --tw-pan-x:  ;
  --tw-pan-y:  ;
  --tw-pinch-zoom:  ;
  --tw-scroll-snap-strictness: proximity;
  --tw-gradient-from-position:  ;
  --tw-gradient-via-position:  ;
  --tw-gradient-to-position:  ;
  --tw-ordinal:  ;
  --tw-slashed-zero:  ;
  --tw-numeric-figure:  ;
  --tw-numeric-spacing:  ;
  --tw-numeric-fraction:  ;
  --tw-ring-inset:  ;
  --tw-ring-offset-width: 0px;
  --tw-ring-offset-color: #fff;
  --tw-ring-color: rgb(59 130 246 / 0.5);
  --tw-ring-offset-shadow: 0 0 #0000;
  --tw-ring-shadow: 0 0 #0000;
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  --tw-blur:  ;
  --tw-brightness:  ;
  --tw-contrast:  ;
  --tw-grayscale:  ;
  --tw-hue-rotate:  ;
  --tw-invert:  ;
  --tw-saturate:  ;
  --tw-sepia:  ;
  --tw-drop-shadow:  ;
  --tw-backdrop-blur:  ;
  --tw-backdrop-brightness:  ;
  --tw-backdrop-contrast:  ;
  --tw-backdrop-grayscale:  ;
  --tw-backdrop-hue-rotate:  ;
  --tw-backdrop-invert:  ;
  --tw-backdrop-opacity:  ;
  --tw-backdrop-saturate:  ;
  --tw-backdrop-sepia:  ;
}
.pointer-events-none{
  pointer-events: none;
}
.visible{
  visibility: visible;
}
.static{
  position: static;
}
.fixed{
  position: fixed;
}
.absolute{
  position: absolute;
}
.relative{
  position: relative;
}
.sticky{
  position: sticky;
}
.-bottom-1{
  bottom: -0.25rem;
}
.-left-1{
  left: -0.25rem;
}
.-left-10{
  left: -2.5rem;
}
.-left-3{
  left: -0.75rem;
}
.-right-3{
  right: -0.75rem;
}
.-top-9{
  top: -2.25rem;
}
.bottom-0{
  bottom: 0px;
}
.bottom-1{
  bottom: 0.25rem;
}
.left-0{
  left: 0px;
}
.left-1\/2{
  left: 50%;
}
.right-0{
  right: 0px;
}
.right-8{
  right: 2rem;
}
.top-0{
  top: 0px;
}
.top-1{
  top: 0.25rem;
}
.top-1\/2{
  top: 50%;
}
.top-2{
  top: 0.5rem;
}
.top-36{
  top: 9rem;
}
.-z-10{
  z-index: -10;
}
.-z-20{
  z-index: -20;
}
.z-0{
  z-index: 0;
}
.z-10{
  z-index: 10;
}
.z-20{
  z-index: 20;
}
.z-30{
  z-index: 30;
}
.order-1{
  order: 1;
}
.order-2{
  order: 2;
}
.col-span-2{
  grid-column: span 2 / span 2;
}
.m-0{
  margin: 0px;
}
.\!mx-0{
  margin-left: 0px !important;
  margin-right: 0px !important;
}
.mx-8{
  margin-left: 2rem;
  margin-right: 2rem;
}
.mx-auto{
  margin-left: auto;
  margin-right: auto;
}
.-ml-8{
  margin-left: -2rem;
}
.-mt-10{
  margin-top: -2.5rem;
}
.mb-0{
  margin-bottom: 0px;
}
.mb-12{
  margin-bottom: 3rem;
}
.mb-16{
  margin-bottom: 4rem;
}
.mb-2{
  margin-bottom: 0.5rem;
}
.mb-24{
  margin-bottom: 6rem;
}
.mb-4{
  margin-bottom: 1rem;
}
.mb-8{
  margin-bottom: 2rem;
}
.ml-0{
  margin-left: 0px;
}
.ml-2{
  margin-left: 0.5rem;
}
.ml-3{
  margin-left: 0.75rem;
}
.mr-0{
  margin-right: 0px;
}
.mr-2{
  margin-right: 0.5rem;
}
.mr-8{
  margin-right: 2rem;
}
.mt-8{
  margin-top: 2rem;
}
.mt-auto{
  margin-top: auto;
}
.block{
  display: block;
}
.inline-block{
  display: inline-block;
}
.inline{
  display: inline;
}
.flex{
  display: flex;
}
.table{
  display: table;
}
.grid{
  display: grid;
}
.contents{
  display: contents;
}
.hidden{
  display: none;
}
.aspect-square{
  aspect-ratio: 1 / 1;
}
.h-1{
  height: 0.25rem;
}
.h-100percent{
  height: 100%;
}
.h-164{
  height: 41rem;
}
.h-48{
  height: 12rem;
}
.h-6{
  height: 1.5rem;
}
.h-7{
  height: 1.75rem;
}
.h-auto{
  height: auto;
}
.h-full{
  height: 100%;
}
.min-h-\[83px\]{
  min-height: 83px;
}
.\!w-\[75\%\]{
  width: 75% !important;
}
.w-100percent{
  width: 100%;
}
.w-100vw{
  width: 100vw;
}
.w-20{
  width: 5rem;
}
.w-6{
  width: 1.5rem;
}
.w-60{
  width: 15rem;
}
.w-7{
  width: 1.75rem;
}
.w-80{
  width: 20rem;
}
.w-\[110px\]{
  width: 110px;
}
.w-\[130px\]{
  width: 130px;
}
.w-full{
  width: 100%;
}
.\!max-w-6xl{
  max-width: 72rem !important;
}
.max-w-3xl{
  max-width: 48rem;
}
.max-w-72{
  max-width: 18rem;
}
.max-w-7xl{
  max-width: 80rem;
}
.flex-grow{
  flex-grow: 1;
}
.-translate-x-1\/2{
  --tw-translate-x: -50%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.-translate-y-1\/2{
  --tw-translate-y: -50%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.rotate-6{
  --tw-rotate: 6deg;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.transform{
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.cursor-pointer{
  cursor: pointer;
}
.list-none{
  list-style-type: none;
}
.grid-cols-1{
  grid-template-columns: repeat(1, minmax(0, 1fr));
}
.grid-cols-2{
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.grid-cols-4{
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
.flex-col{
  flex-direction: column;
}
.items-end{
  align-items: flex-end;
}
.items-center{
  align-items: center;
}
.justify-center{
  justify-content: center;
}
.justify-between{
  justify-content: space-between;
}
.\!gap-4{
  gap: 1rem !important;
}
.gap-0{
  gap: 0px;
}
.gap-12{
  gap: 3rem;
}
.gap-2{
  gap: 0.5rem;
}
.gap-3{
  gap: 0.75rem;
}
.gap-4{
  gap: 1rem;
}
.gap-8{
  gap: 2rem;
}
.gap-y-8{
  row-gap: 2rem;
}
.overflow-hidden{
  overflow: hidden;
}
.truncate{
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.whitespace-nowrap{
  white-space: nowrap;
}
.rounded-2xl{
  border-radius: 1rem;
}
.rounded-full{
  border-radius: 9999px;
}
.rounded-md{
  border-radius: 0.375rem;
}
.rounded-xl{
  border-radius: 0.75rem;
}
.rounded-bl-2xl{
  border-bottom-left-radius: 1rem;
}
.rounded-bl-xl{
  border-bottom-left-radius: 0.75rem;
}
.rounded-br-2xl{
  border-bottom-right-radius: 1rem;
}
.rounded-br-xl{
  border-bottom-right-radius: 0.75rem;
}
.rounded-tl-xl{
  border-top-left-radius: 0.75rem;
}
.rounded-tr-xl{
  border-top-right-radius: 0.75rem;
}
.border{
  border-width: 1px;
}
.border-solid{
  border-style: solid;
}
.border-darkgray-2{
  --tw-border-opacity: 1;
  border-color: rgb(87 93 104 / var(--tw-border-opacity));
}
.bg-\[\#D9DBD\]{
  background-color: #D9DBD;
}
.bg-\[\#EDEEF0\]{
  --tw-bg-opacity: 1;
  background-color: rgb(237 238 240 / var(--tw-bg-opacity));
}
.bg-\[\#f7f8f8\]{
  --tw-bg-opacity: 1;
  background-color: rgb(247 248 248 / var(--tw-bg-opacity));
}
.bg-darkgray-1{
  --tw-bg-opacity: 1;
  background-color: rgb(64 68 77 / var(--tw-bg-opacity));
}
.bg-darkgray-2{
  --tw-bg-opacity: 1;
  background-color: rgb(87 93 104 / var(--tw-bg-opacity));
}
.bg-gray-1{
  --tw-bg-opacity: 1;
  background-color: rgb(109 117 132 / var(--tw-bg-opacity));
}
.bg-gray-4{
  --tw-bg-opacity: 1;
  background-color: rgb(244 245 247 / var(--tw-bg-opacity));
}
.bg-lila-1{
  --tw-bg-opacity: 1;
  background-color: rgb(94 34 70 / var(--tw-bg-opacity));
}
.bg-lila-2{
  --tw-bg-opacity: 1;
  background-color: rgb(126 31 84 / var(--tw-bg-opacity));
}
.bg-magenta-2{
  --tw-bg-opacity: 1;
  background-color: rgb(202 11 114 / var(--tw-bg-opacity));
}
.bg-white-1{
  --tw-bg-opacity: 1;
  background-color: rgb(254 254 254 / var(--tw-bg-opacity));
}
.bg-zold-1{
  --tw-bg-opacity: 1;
  background-color: rgb(182 204 0 / var(--tw-bg-opacity));
}
.bg-\[\#D9DBDF\]{
  --tw-bg-opacity: 1;
  background-color: rgb(217 219 223 / var(--tw-bg-opacity));
}
.bg-gradient-to-r{
  background-image: linear-gradient(to right, var(--tw-gradient-stops));
}
.bg-gradient-to-tl{
  background-image: linear-gradient(to top left, var(--tw-gradient-stops));
}
.bg-gradient-to-tr{
  background-image: linear-gradient(to top right, var(--tw-gradient-stops));
}
.from-black-1{
  --tw-gradient-from: #0a0a0a var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(10 10 10 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.from-lila-3{
  --tw-gradient-from: #9E1C62 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(158 28 98 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.from-0\%{
  --tw-gradient-from-position: 0%;
}
.to-lila-1{
  --tw-gradient-to: #5E2246 var(--tw-gradient-to-position);
}
.to-magenta-1{
  --tw-gradient-to: #E5007D var(--tw-gradient-to-position);
}
.to-magenta-2{
  --tw-gradient-to: #CA0B72 var(--tw-gradient-to-position);
}
.to-transparent{
  --tw-gradient-to: transparent var(--tw-gradient-to-position);
}
.to-100\%{
  --tw-gradient-to-position: 100%;
}
.object-cover{
  -o-object-fit: cover;
     object-fit: cover;
}
.object-center{
  -o-object-position: center;
     object-position: center;
}
.object-top{
  -o-object-position: top;
     object-position: top;
}
.p-1{
  padding: 0.25rem;
}
.p-12{
  padding: 3rem;
}
.p-2{
  padding: 0.5rem;
}
.p-4{
  padding: 1rem;
}
.p-8{
  padding: 2rem;
}
.px-12{
  padding-left: 3rem;
  padding-right: 3rem;
}
.px-2{
  padding-left: 0.5rem;
  padding-right: 0.5rem;
}
.px-4{
  padding-left: 1rem;
  padding-right: 1rem;
}
.px-8{
  padding-left: 2rem;
  padding-right: 2rem;
}
.px-\[20\%\]{
  padding-left: 20%;
  padding-right: 20%;
}
.py-1{
  padding-top: 0.25rem;
  padding-bottom: 0.25rem;
}
.py-12{
  padding-top: 3rem;
  padding-bottom: 3rem;
}
.py-2{
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}
.py-24{
  padding-top: 6rem;
  padding-bottom: 6rem;
}
.py-4{
  padding-top: 1rem;
  padding-bottom: 1rem;
}
.py-8{
  padding-top: 2rem;
  padding-bottom: 2rem;
}
.pb-12{
  padding-bottom: 3rem;
}
.pl-10{
  padding-left: 2.5rem;
}
.pl-2{
  padding-left: 0.5rem;
}
.pl-6{
  padding-left: 1.5rem;
}
.pt-2{
  padding-top: 0.5rem;
}
.pt-24{
  padding-top: 6rem;
}
.pt-8{
  padding-top: 2rem;
}
.text-center{
  text-align: center;
}
.font-roboto{
  font-family: Roboto Slab, Arial, sans-serif;
}
.text-12{
  font-size: .8rem;
}
.text-13{
  font-size: .876rem;
}
.text-14{
  font-size: .933rem;
}
.text-15{
  font-size: 1rem;
}
.text-16{
  font-size: 1.067rem;
}
.text-18{
  font-size: 1.2rem;
}
.text-20{
  font-size: 1.33333333rem;
}
.text-22{
  font-size: 1.467rem;
}
.text-24{
  font-size: 1.6rem;
}
.text-28{
  font-size: 1.86666667rem;
}
.text-30{
  font-size: 2rem;
}
.text-32{
  font-size: 2.13333333rem;
}
.text-48{
  font-size: 3.2rem;
}
.font-bold{
  font-weight: 700;
}
.font-extrabold{
  font-weight: 800;
}
.font-medium{
  font-weight: 500;
}
.font-normal{
  font-weight: 400;
}
.font-semibold{
  font-weight: 600;
}
.uppercase{
  text-transform: uppercase;
}
.lining-nums{
  --tw-numeric-figure: lining-nums;
  font-variant-numeric: var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction);
}
.leading-7{
  line-height: 1.75rem;
}
.leading-9{
  line-height: 2.25rem;
}
.leading-none{
  line-height: 1;
}
.\!text-lila-3{
  --tw-text-opacity: 1 !important;
  color: rgb(158 28 98 / var(--tw-text-opacity)) !important;
}
.text-\[\#575D68\]{
  --tw-text-opacity: 1;
  color: rgb(87 93 104 / var(--tw-text-opacity));
}
.text-darkgray-2{
  --tw-text-opacity: 1;
  color: rgb(87 93 104 / var(--tw-text-opacity));
}
.text-gray-1{
  --tw-text-opacity: 1;
  color: rgb(109 117 132 / var(--tw-text-opacity));
}
.text-lila-1{
  --tw-text-opacity: 1;
  color: rgb(94 34 70 / var(--tw-text-opacity));
}
.text-lila-2{
  --tw-text-opacity: 1;
  color: rgb(126 31 84 / var(--tw-text-opacity));
}
.text-lila-3{
  --tw-text-opacity: 1;
  color: rgb(158 28 98 / var(--tw-text-opacity));
}
.text-magenta-2{
  --tw-text-opacity: 1;
  color: rgb(202 11 114 / var(--tw-text-opacity));
}
.text-summer-2{
  --tw-text-opacity: 1;
  color: rgb(237 67 114 / var(--tw-text-opacity));
}
.text-white-1{
  --tw-text-opacity: 1;
  color: rgb(254 254 254 / var(--tw-text-opacity));
}
.text-zold-1{
  --tw-text-opacity: 1;
  color: rgb(182 204 0 / var(--tw-text-opacity));
}
.text-zold-3{
  --tw-text-opacity: 1;
  color: rgb(144 161 36 / var(--tw-text-opacity));
}
.opacity-80{
  opacity: 0.8;
}
.opacity-90{
  opacity: 0.9;
}
.shadow-1{
  --tw-shadow: 0px 0px 20px rgba(64, 68, 77, 0.25);
  --tw-shadow-colored: 0px 0px 20px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.shadow-2{
  --tw-shadow: 0px 0px 10px rgba(64, 68, 77, 0.2);
  --tw-shadow-colored: 0px 0px 10px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.ring{
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}
.filter{
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}
.transition-colors{
  transition-property: color, background-color, border-color, fill, stroke, -webkit-text-decoration-color;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, -webkit-text-decoration-color;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}
/**
 * Foundation for Sites
 * Version 6.7.4
 * https://get.foundation
 * Licensed under MIT Open Source
 */
@media print, screen and (min-width: 40em) {
  .reveal.large, .reveal.small, .reveal.tiny, .reveal {
    right: auto;
    left: auto;
    margin: 0 auto;
  }
}
/*! normalize.css v8.0.0 | MIT License | github.com/necolas/normalize.css */
html {
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
}
body {
  margin: 0;
}
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}
hr {
  box-sizing: content-box;
  height: 0;
  overflow: visible;
}
pre {
  font-family: monospace, monospace;
  font-size: 1em;
}
a {
  background-color: transparent;
}
abbr[title] {
  border-bottom: 0;
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted;
}
b,
strong {
  font-weight: bolder;
}
code,
kbd,
samp {
  font-family: monospace, monospace;
  font-size: 1em;
}
small {
  font-size: 80%;
}
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}
sub {
  bottom: -0.25em;
}
sup {
  top: -0.5em;
}
img {
  border-style: none;
}
button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  font-size: 100%;
  line-height: 1.15;
  margin: 0;
}
button,
input {
  overflow: visible;
}
button,
select {
  text-transform: none;
}
button,
[type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button;
}
button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}
button:-moz-focusring,
[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring {
  outline: 1px dotted ButtonText;
}
fieldset {
  padding: 0.35em 0.75em 0.625em;
}
legend {
  box-sizing: border-box;
  color: inherit;
  display: table;
  max-width: 100%;
  padding: 0;
  white-space: normal;
}
progress {
  vertical-align: baseline;
}
textarea {
  overflow: auto;
}
[type=checkbox],
[type=radio] {
  box-sizing: border-box;
  padding: 0;
}
[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}
[type=search] {
  -webkit-appearance: textfield;
  outline-offset: -2px;
}
[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}
::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit;
}
details {
  display: block;
}
summary {
  display: list-item;
}
template {
  display: none;
}
[hidden] {
  display: none;
}
[data-whatintent=mouse] *, [data-whatintent=mouse] *:focus,
[data-whatintent=touch] *,
[data-whatintent=touch] *:focus,
[data-whatinput=mouse] *,
[data-whatinput=mouse] *:focus,
[data-whatinput=touch] *,
[data-whatinput=touch] *:focus {
  outline: none;
}
[draggable=false] {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
}
.foundation-mq {
  font-family: "small=0em&medium=40em&large=64em&xlarge=75em&xxlarge=90em&xxxlarge=100em";
}
html {
  box-sizing: border-box;
  font-size: 93.75%;
}
*,
*::before,
*::after {
  box-sizing: inherit;
}
body {
  margin: 0;
  padding: 0;
  background: #fefefe;
  font-family: "Raleway", "Helvetica Neue", sans-serif;
  font-weight: 400;
  line-height: 1.5;
  color: #40444D;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
img {
  display: inline-block;
  vertical-align: middle;
  max-width: 100%;
  height: auto;
  -ms-interpolation-mode: bicubic;
}
textarea {
  height: auto;
  min-height: 50px;
  border-radius: 0;
}
select {
  box-sizing: border-box;
  width: 100%;
  border-radius: 0;
}
.map_canvas img,
.map_canvas embed,
.map_canvas object,
.mqa-display img,
.mqa-display embed,
.mqa-display object {
  max-width: none !important;
}
button {
  padding: 0;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: 0;
  border-radius: 0;
  background: transparent;
  line-height: 1;
  cursor: auto;
}
[data-whatinput=mouse] button {
  outline: 0;
}
pre {
  overflow: auto;
  -webkit-overflow-scrolling: touch;
}
button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
}
.is-visible {
  display: block !important;
}
.is-hidden {
  display: none !important;
}
[type=text], [type=password], [type=date], [type=datetime], [type=datetime-local], [type=month], [type=week], [type=email], [type=number], [type=search], [type=tel], [type=time], [type=url], [type=color],
textarea {
  display: block;
  box-sizing: border-box;
  width: 100%;
  height: 2.4333333333rem;
  margin: 0 0 1rem;
  padding: 0.5rem;
  border: 1px solid #cacaca;
  border-radius: 0;
  background-color: #fefefe;
  box-shadow: inset 0 1px 2px rgba(10, 10, 10, 0.1);
  font-family: inherit;
  font-size: 1rem;
  font-weight: normal;
  line-height: 1.5;
  color: #0a0a0a;
  transition: box-shadow 0.5s, border-color 0.25s ease-in-out;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}
[type=text]:focus, [type=password]:focus, [type=date]:focus, [type=datetime]:focus, [type=datetime-local]:focus, [type=month]:focus, [type=week]:focus, [type=email]:focus, [type=number]:focus, [type=search]:focus, [type=tel]:focus, [type=time]:focus, [type=url]:focus, [type=color]:focus,
textarea:focus {
  outline: none;
  border: 1px solid #8a8a8a;
  background-color: #fefefe;
  box-shadow: 0 0 5px #cacaca;
  transition: box-shadow 0.5s, border-color 0.25s ease-in-out;
}
textarea {
  max-width: 100%;
}
textarea[rows] {
  height: auto;
}
input:disabled, input[readonly],
textarea:disabled,
textarea[readonly] {
  background-color: #e6e6e6;
  cursor: not-allowed;
}
[type=submit],
[type=button] {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border-radius: 0;
}
input[type=search] {
  box-sizing: border-box;
}
::-moz-placeholder {
  color: #cacaca;
}
:-ms-input-placeholder {
  color: #cacaca;
}
::placeholder {
  color: #cacaca;
}
[type=file],
[type=checkbox],
[type=radio] {
  margin: 0 0 1rem;
}
[type=checkbox] + label,
[type=radio] + label {
  display: inline-block;
  vertical-align: baseline;
  margin-left: 0.5rem;
  margin-right: 1rem;
  margin-bottom: 0;
}
[type=checkbox] + label[for],
[type=radio] + label[for] {
  cursor: pointer;
}
label > [type=checkbox],
label > [type=radio] {
  margin-right: 0.5rem;
}
[type=file] {
  width: 100%;
}
label {
  display: block;
  margin: 0;
  font-size: 0.875rem;
  font-weight: normal;
  line-height: 1.8;
  color: #0a0a0a;
}
label.middle {
  margin: 0 0 1rem;
  line-height: 1.5;
  padding: 0.5666666667rem 0;
}
.help-text {
  margin-top: -0.5rem;
  font-size: 0.8125rem;
  font-style: italic;
  color: #0a0a0a;
}
.input-group {
  display: flex;
  width: 100%;
  margin-bottom: 1rem;
  align-items: stretch;
}
.input-group > :first-child, .input-group > :first-child.input-group-button > * {
  border-radius: 0 0 0 0;
}
.input-group > :last-child, .input-group > :last-child.input-group-button > * {
  border-radius: 0 0 0 0;
}
.input-group-button a,
.input-group-button input,
.input-group-button button,
.input-group-button label, .input-group-button, .input-group-field, .input-group-label {
  margin: 0;
  white-space: nowrap;
}
.input-group-label {
  padding: 0 1rem;
  border: 1px solid #cacaca;
  background: #e6e6e6;
  color: #0a0a0a;
  text-align: center;
  white-space: nowrap;
  display: flex;
  flex: 0 0 auto;
  align-items: center;
}
.input-group-label:first-child {
  border-right: 0;
}
.input-group-label:last-child {
  border-left: 0;
}
.input-group-field {
  border-radius: 0;
  flex: 1 1 0px;
  min-width: 0;
}
.input-group-button {
  padding-top: 0;
  padding-bottom: 0;
  text-align: center;
  display: flex;
  flex: 0 0 auto;
}
.input-group-button a,
.input-group-button input,
.input-group-button button,
.input-group-button label {
  align-self: stretch;
  height: auto;
  padding-top: 0;
  padding-bottom: 0;
  font-size: 1rem;
}
fieldset {
  margin: 0;
  padding: 0;
  border: 0;
}
legend {
  max-width: 100%;
  margin-bottom: 0.5rem;
}
.fieldset {
  margin: 1.125rem 0;
  padding: 1.25rem;
  border: 1px solid #cacaca;
}
.fieldset legend {
  margin: 0;
  margin-left: -0.2rem;
  padding: 0 0.1875rem;
}
select {
  height: 2.4333333333rem;
  margin: 0 0 1rem;
  padding: 0.5rem;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: 1px solid #cacaca;
  border-radius: 0;
  background-color: #fefefe;
  font-family: inherit;
  font-size: 1rem;
  font-weight: normal;
  line-height: 1.5;
  color: #0a0a0a;
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" width="32" height="24" viewBox="0 0 32 24"><polygon points="0,0 32,0 16,24" style="fill: rgb%28138, 138, 138%29"></polygon></svg>');
  background-origin: content-box;
  background-position: right -1rem center;
  background-repeat: no-repeat;
  background-size: 9px 6px;
  padding-right: 1.5rem;
  transition: box-shadow 0.5s, border-color 0.25s ease-in-out;
}
@media screen and (min-width: 0\0 ) {
  select {
    background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAYCAYAAACbU/80AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAIpJREFUeNrEkckNgDAMBBfRkEt0ObRBBdsGXUDgmQfK4XhH2m8czQAAy27R3tsw4Qfe2x8uOO6oYLb6GlOor3GF+swURAOmUJ+RwtEJs9WvTGEYxBXqI1MQAZhCfUQKRzDMVj+TwrAIV6jvSUEkYAr1LSkcyTBb/V+KYfX7xAeusq3sLDtGH3kEGACPWIflNZfhRQAAAABJRU5ErkJggg==");
  }
}
select:focus {
  outline: none;
  border: 1px solid #8a8a8a;
  background-color: #fefefe;
  box-shadow: 0 0 5px #cacaca;
  transition: box-shadow 0.5s, border-color 0.25s ease-in-out;
}
select:disabled {
  background-color: #e6e6e6;
  cursor: not-allowed;
}
select::-ms-expand {
  display: none;
}
select[multiple] {
  height: auto;
  background-image: none;
}
select:not([multiple]) {
  padding-top: 0;
  padding-bottom: 0;
}
.is-invalid-input:not(:focus) {
  border-color: #cc4b37;
  background-color: #f9ecea;
}
.is-invalid-input:not(:focus)::-moz-placeholder {
  color: #cc4b37;
}
.is-invalid-input:not(:focus):-ms-input-placeholder {
  color: #cc4b37;
}
.is-invalid-input:not(:focus)::placeholder {
  color: #cc4b37;
}
.is-invalid-label {
  color: #cc4b37;
}
.form-error {
  display: none;
  margin-top: -0.5rem;
  margin-bottom: 1rem;
  font-size: 0.75rem;
  font-weight: bold;
  color: #cc4b37;
}
.form-error.is-visible {
  display: block;
}
.button {
  display: inline-block;
  vertical-align: middle;
  margin: 0 0 1rem 0;
  padding: 0.85em 1em;
  border: 1px solid transparent;
  border-radius: 0;
  transition: background-color 0.25s ease-out, color 0.25s ease-out;
  font-family: inherit;
  font-size: 0.9rem;
  -webkit-appearance: none;
  line-height: 1;
  text-align: center;
  cursor: pointer;
}
[data-whatinput=mouse] .button {
  outline: 0;
}
.button.tiny {
  font-size: 0.6rem;
}
.button.small {
  font-size: 0.75rem;
}
.button.large {
  font-size: 1.25rem;
}
.button.expanded {
  display: block;
  width: 100%;
  margin-right: 0;
  margin-left: 0;
}
.button, .button.disabled, .button[disabled], .button.disabled:hover, .button[disabled]:hover, .button.disabled:focus, .button[disabled]:focus {
  background-color: #1779ba;
  color: #fefefe;
}
.button:hover, .button:focus {
  background-color: #14679e;
  color: #fefefe;
}
.button.primary, .button.primary.disabled, .button.primary[disabled], .button.primary.disabled:hover, .button.primary[disabled]:hover, .button.primary.disabled:focus, .button.primary[disabled]:focus {
  background-color: #1779ba;
  color: #fefefe;
}
.button.primary:hover, .button.primary:focus {
  background-color: #126195;
  color: #fefefe;
}
.button.secondary, .button.secondary.disabled, .button.secondary[disabled], .button.secondary.disabled:hover, .button.secondary[disabled]:hover, .button.secondary.disabled:focus, .button.secondary[disabled]:focus {
  background-color: #767676;
  color: #fefefe;
}
.button.secondary:hover, .button.secondary:focus {
  background-color: #5e5e5e;
  color: #fefefe;
}
.button.success, .button.success.disabled, .button.success[disabled], .button.success.disabled:hover, .button.success[disabled]:hover, .button.success.disabled:focus, .button.success[disabled]:focus {
  background-color: #3adb76;
  color: #0a0a0a;
}
.button.success:hover, .button.success:focus {
  background-color: #22bb5b;
  color: #0a0a0a;
}
.button.warning, .button.warning.disabled, .button.warning[disabled], .button.warning.disabled:hover, .button.warning[disabled]:hover, .button.warning.disabled:focus, .button.warning[disabled]:focus {
  background-color: #ffae00;
  color: #0a0a0a;
}
.button.warning:hover, .button.warning:focus {
  background-color: #cc8b00;
  color: #0a0a0a;
}
.button.alert, .button.alert.disabled, .button.alert[disabled], .button.alert.disabled:hover, .button.alert[disabled]:hover, .button.alert.disabled:focus, .button.alert[disabled]:focus {
  background-color: #cc4b37;
  color: #fefefe;
}
.button.alert:hover, .button.alert:focus {
  background-color: #a53b2a;
  color: #fefefe;
}
.button.hollow, .button.hollow:hover, .button.hollow:focus, .button.hollow.disabled, .button.hollow.disabled:hover, .button.hollow.disabled:focus, .button.hollow[disabled], .button.hollow[disabled]:hover, .button.hollow[disabled]:focus {
  background-color: transparent;
}
.button.hollow, .button.hollow.disabled, .button.hollow[disabled], .button.hollow.disabled:hover, .button.hollow[disabled]:hover, .button.hollow.disabled:focus, .button.hollow[disabled]:focus {
  border: 1px solid #1779ba;
  color: #1779ba;
}
.button.hollow:hover, .button.hollow:focus {
  border-color: #0c3d5d;
  color: #0c3d5d;
}
.button.hollow.primary, .button.hollow.primary.disabled, .button.hollow.primary[disabled], .button.hollow.primary.disabled:hover, .button.hollow.primary[disabled]:hover, .button.hollow.primary.disabled:focus, .button.hollow.primary[disabled]:focus {
  border: 1px solid #1779ba;
  color: #1779ba;
}
.button.hollow.primary:hover, .button.hollow.primary:focus {
  border-color: #0c3d5d;
  color: #0c3d5d;
}
.button.hollow.secondary, .button.hollow.secondary.disabled, .button.hollow.secondary[disabled], .button.hollow.secondary.disabled:hover, .button.hollow.secondary[disabled]:hover, .button.hollow.secondary.disabled:focus, .button.hollow.secondary[disabled]:focus {
  border: 1px solid #767676;
  color: #767676;
}
.button.hollow.secondary:hover, .button.hollow.secondary:focus {
  border-color: #3b3b3b;
  color: #3b3b3b;
}
.button.hollow.success, .button.hollow.success.disabled, .button.hollow.success[disabled], .button.hollow.success.disabled:hover, .button.hollow.success[disabled]:hover, .button.hollow.success.disabled:focus, .button.hollow.success[disabled]:focus {
  border: 1px solid #3adb76;
  color: #3adb76;
}
.button.hollow.success:hover, .button.hollow.success:focus {
  border-color: #157539;
  color: #157539;
}
.button.hollow.warning, .button.hollow.warning.disabled, .button.hollow.warning[disabled], .button.hollow.warning.disabled:hover, .button.hollow.warning[disabled]:hover, .button.hollow.warning.disabled:focus, .button.hollow.warning[disabled]:focus {
  border: 1px solid #ffae00;
  color: #ffae00;
}
.button.hollow.warning:hover, .button.hollow.warning:focus {
  border-color: #805700;
  color: #805700;
}
.button.hollow.alert, .button.hollow.alert.disabled, .button.hollow.alert[disabled], .button.hollow.alert.disabled:hover, .button.hollow.alert[disabled]:hover, .button.hollow.alert.disabled:focus, .button.hollow.alert[disabled]:focus {
  border: 1px solid #cc4b37;
  color: #cc4b37;
}
.button.hollow.alert:hover, .button.hollow.alert:focus {
  border-color: #67251a;
  color: #67251a;
}
.button.clear, .button.clear:hover, .button.clear:focus, .button.clear.disabled, .button.clear.disabled:hover, .button.clear.disabled:focus, .button.clear[disabled], .button.clear[disabled]:hover, .button.clear[disabled]:focus {
  border-color: transparent;
  background-color: transparent;
}
.button.clear, .button.clear.disabled, .button.clear[disabled], .button.clear.disabled:hover, .button.clear[disabled]:hover, .button.clear.disabled:focus, .button.clear[disabled]:focus {
  color: #1779ba;
}
.button.clear:hover, .button.clear:focus {
  color: #0c3d5d;
}
.button.clear.primary, .button.clear.primary.disabled, .button.clear.primary[disabled], .button.clear.primary.disabled:hover, .button.clear.primary[disabled]:hover, .button.clear.primary.disabled:focus, .button.clear.primary[disabled]:focus {
  color: #1779ba;
}
.button.clear.primary:hover, .button.clear.primary:focus {
  color: #0c3d5d;
}
.button.clear.secondary, .button.clear.secondary.disabled, .button.clear.secondary[disabled], .button.clear.secondary.disabled:hover, .button.clear.secondary[disabled]:hover, .button.clear.secondary.disabled:focus, .button.clear.secondary[disabled]:focus {
  color: #767676;
}
.button.clear.secondary:hover, .button.clear.secondary:focus {
  color: #3b3b3b;
}
.button.clear.success, .button.clear.success.disabled, .button.clear.success[disabled], .button.clear.success.disabled:hover, .button.clear.success[disabled]:hover, .button.clear.success.disabled:focus, .button.clear.success[disabled]:focus {
  color: #3adb76;
}
.button.clear.success:hover, .button.clear.success:focus {
  color: #157539;
}
.button.clear.warning, .button.clear.warning.disabled, .button.clear.warning[disabled], .button.clear.warning.disabled:hover, .button.clear.warning[disabled]:hover, .button.clear.warning.disabled:focus, .button.clear.warning[disabled]:focus {
  color: #ffae00;
}
.button.clear.warning:hover, .button.clear.warning:focus {
  color: #805700;
}
.button.clear.alert, .button.clear.alert.disabled, .button.clear.alert[disabled], .button.clear.alert.disabled:hover, .button.clear.alert[disabled]:hover, .button.clear.alert.disabled:focus, .button.clear.alert[disabled]:focus {
  color: #cc4b37;
}
.button.clear.alert:hover, .button.clear.alert:focus {
  color: #67251a;
}
.button.disabled, .button[disabled] {
  opacity: 0.25;
  cursor: not-allowed;
}
.button.dropdown::after {
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0.4em;
  content: "";
  border-bottom-width: 0;
  border-color: #fefefe transparent transparent;
  position: relative;
  top: 0.4em;
  display: inline-block;
  float: right;
  margin-left: 1em;
}
.button.dropdown.hollow::after, .button.dropdown.clear::after {
  border-top-color: #1779ba;
}
.button.dropdown.hollow.primary::after, .button.dropdown.clear.primary::after {
  border-top-color: #1779ba;
}
.button.dropdown.hollow.secondary::after, .button.dropdown.clear.secondary::after {
  border-top-color: #767676;
}
.button.dropdown.hollow.success::after, .button.dropdown.clear.success::after {
  border-top-color: #3adb76;
}
.button.dropdown.hollow.warning::after, .button.dropdown.clear.warning::after {
  border-top-color: #ffae00;
}
.button.dropdown.hollow.alert::after, .button.dropdown.clear.alert::after {
  border-top-color: #cc4b37;
}
.button.arrow-only::after {
  top: -0.1em;
  float: none;
  margin-left: 0;
}
a.button:hover, a.button:focus {
  text-decoration: none;
}
div,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
pre,
form,
p,
blockquote,
th,
td {
  margin: 0;
  padding: 0;
}
p {
  margin-bottom: 1rem;
  font-size: inherit;
  line-height: 1.6;
  text-rendering: optimizeLegibility;
}
em,
i {
  font-style: italic;
  line-height: inherit;
}
strong,
b {
  font-weight: 600;
  line-height: inherit;
}
small {
  font-size: 80%;
  line-height: inherit;
}
h1, .h1,
h2, .h2,
h3, .h3,
h4, .h4,
h5, .h5,
h6, .h6 {
  font-family: "Raleway", "Helvetica Neue", sans-serif;
  font-style: normal;
  font-weight: 400;
  color: inherit;
  text-rendering: optimizeLegibility;
}
h1 small, .h1 small,
h2 small, .h2 small,
h3 small, .h3 small,
h4 small, .h4 small,
h5 small, .h5 small,
h6 small, .h6 small {
  line-height: 0;
  color: #cacaca;
}
h1, .h1 {
  font-size: 1.6rem;
  line-height: 1.4;
  margin-top: 0;
  margin-bottom: 0.5rem;
}
h2, .h2 {
  font-size: 1.3333333333rem;
  line-height: 1.4;
  margin-top: 0;
  margin-bottom: 0.5rem;
}
h3, .h3 {
  font-size: 1.2666666667rem;
  line-height: 1.4;
  margin-top: 0;
  margin-bottom: 0.5rem;
}
h4, .h4 {
  font-size: 1.2rem;
  line-height: 1.4;
  margin-top: 0;
  margin-bottom: 0.5rem;
}
h5, .h5 {
  font-size: 1.1333333333rem;
  line-height: 1.4;
  margin-top: 0;
  margin-bottom: 0.5rem;
}
h6, .h6 {
  font-size: 1.0666666667rem;
  line-height: 1.4;
  margin-top: 0;
  margin-bottom: 0.5rem;
}
@media print, screen and (min-width: 40em) {
  h1, .h1 {
    font-size: 2.2666666667rem;
  }

  h2, .h2 {
    font-size: 1.8666666667rem;
  }

  h3, .h3 {
    font-size: 1.2rem;
  }

  h4, .h4 {
    font-size: 1.0666666667rem;
  }

  h5, .h5 {
    font-size: 0.9333333333rem;
  }

  h6, .h6 {
    font-size: 0.8rem;
  }
}
a {
  line-height: inherit;
  color: #5E2246;
  text-decoration: none;
  cursor: pointer;
}
a:hover, a:focus {
  color: #511d3c;
}
a img {
  border: 0;
}
hr {
  clear: both;
  max-width: 1300px;
  height: 0;
  margin: 1.25rem auto;
  border-top: 0;
  border-right: 0;
  border-bottom: 1px solid #cacaca;
  border-left: 0;
}
ul,
ol,
dl {
  margin-bottom: 1rem;
  list-style-position: outside;
  line-height: 1.6;
}
li {
  font-size: inherit;
}
ul {
  margin-left: 1.25rem;
  list-style-type: disc;
}
ol {
  margin-left: 1.25rem;
}
ul ul, ul ol, ol ul, ol ol {
  margin-left: 1.25rem;
  margin-bottom: 0;
}
dl {
  margin-bottom: 1rem;
}
dl dt {
  margin-bottom: 0.3rem;
  font-weight: bold;
}
blockquote {
  margin: 0 0 1rem;
  padding: 0.6rem 1.3333333333rem 0 3.3333333333rem;
  border-left: none;
}
blockquote, blockquote p {
  line-height: 1.6;
  color: #5E2246;
}
abbr, abbr[title] {
  border-bottom: 1px dotted #0a0a0a;
  cursor: help;
  text-decoration: none;
}
figure {
  margin: 0;
}
kbd {
  margin: 0;
  padding: 0.125rem 0.25rem 0;
  background-color: #e6e6e6;
  font-family: Consolas, "Liberation Mono", Courier, monospace;
  color: #0a0a0a;
}
.subheader {
  margin-top: 0.2rem;
  margin-bottom: 0.5rem;
  font-weight: normal;
  line-height: 1.4;
  color: #8a8a8a;
}
.lead {
  font-size: 125%;
  line-height: 1.6;
}
.stat {
  font-size: 2.5rem;
  line-height: 1;
}
p + .stat {
  margin-top: -1rem;
}
ul.no-bullet, ol.no-bullet {
  margin-left: 0;
  list-style: none;
}
.cite-block, cite {
  display: block;
  color: #8a8a8a;
  font-size: 0.8125rem;
}
.cite-block:before, cite:before {
  content: "— ";
}
.code-inline, code {
  border: 1px solid #cacaca;
  background-color: #e6e6e6;
  font-family: Consolas, "Liberation Mono", Courier, monospace;
  font-weight: normal;
  color: #0a0a0a;
  display: inline;
  max-width: 100%;
  word-wrap: break-word;
  padding: 0.125rem 0.3125rem 0.0625rem;
}
.code-block {
  border: 1px solid #cacaca;
  background-color: #e6e6e6;
  font-family: Consolas, "Liberation Mono", Courier, monospace;
  font-weight: normal;
  color: #0a0a0a;
  display: block;
  overflow: auto;
  white-space: pre;
  padding: 1rem;
  margin-bottom: 1.5rem;
}
.text-left {
  text-align: left;
}
.text-right {
  text-align: right;
}
.text-center {
  text-align: center;
}
.text-justify {
  text-align: justify;
}
@media print, screen and (min-width: 40em) {
  .medium-text-left {
    text-align: left;
  }

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

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

  .medium-text-justify {
    text-align: justify;
  }
}
@media print, screen and (min-width: 64em) {
  .large-text-left {
    text-align: left;
  }

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

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

  .large-text-justify {
    text-align: justify;
  }
}
.show-for-print {
  display: none !important;
}
@media print {
  * {
    background: transparent !important;
    color: black !important;
    -webkit-print-color-adjust: economy;
            color-adjust: economy;
    box-shadow: none !important;
    text-shadow: none !important;
  }

  .show-for-print {
    display: block !important;
  }

  .hide-for-print {
    display: none !important;
  }

  table.show-for-print {
    display: table !important;
  }

  thead.show-for-print {
    display: table-header-group !important;
  }

  tbody.show-for-print {
    display: table-row-group !important;
  }

  tr.show-for-print {
    display: table-row !important;
  }

  td.show-for-print {
    display: table-cell !important;
  }

  th.show-for-print {
    display: table-cell !important;
  }

  a,
a:visited {
    text-decoration: underline;
  }

  a[href]:after {
    content: " (" attr(href) ")";
  }

  .ir a:after,
a[href^="javascript:"]:after,
a[href^="#"]:after {
    content: "";
  }

  abbr[title]:after {
    content: " (" attr(title) ")";
  }

  pre,
blockquote {
    border: 1px solid #8a8a8a;
    page-break-inside: avoid;
  }

  thead {
    display: table-header-group;
  }

  tr,
img {
    page-break-inside: avoid;
  }

  img {
    max-width: 100% !important;
  }

  @page {
    margin: 0.5cm;
  }
  p,
h2,
h3 {
    orphans: 3;
    widows: 3;
  }

  h2,
h3 {
    page-break-after: avoid;
  }

  .print-break-inside {
    page-break-inside: auto;
  }
}
.button-group {
  margin-bottom: 1rem;
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  flex-grow: 1;
}
.button-group::before, .button-group::after {
  display: table;
  content: " ";
  flex-basis: 0;
  order: 1;
}
.button-group::after {
  clear: both;
}
.button-group::before, .button-group::after {
  display: none;
}
.button-group .button {
  margin: 0;
  margin-right: 1px;
  margin-bottom: 1px;
  font-size: 0.9rem;
  flex: 0 0 auto;
}
.button-group .button:last-child {
  margin-right: 0;
}
.button-group.tiny .button {
  font-size: 0.6rem;
}
.button-group.small .button {
  font-size: 0.75rem;
}
.button-group.large .button {
  font-size: 1.25rem;
}
.button-group.expanded .button {
  flex: 1 1 0px;
}
.button-group.primary .button, .button-group.primary .button.disabled, .button-group.primary .button[disabled], .button-group.primary .button.disabled:hover, .button-group.primary .button[disabled]:hover, .button-group.primary .button.disabled:focus, .button-group.primary .button[disabled]:focus {
  background-color: #1779ba;
  color: #fefefe;
}
.button-group.primary .button:hover, .button-group.primary .button:focus {
  background-color: #126195;
  color: #fefefe;
}
.button-group.secondary .button, .button-group.secondary .button.disabled, .button-group.secondary .button[disabled], .button-group.secondary .button.disabled:hover, .button-group.secondary .button[disabled]:hover, .button-group.secondary .button.disabled:focus, .button-group.secondary .button[disabled]:focus {
  background-color: #767676;
  color: #fefefe;
}
.button-group.secondary .button:hover, .button-group.secondary .button:focus {
  background-color: #5e5e5e;
  color: #fefefe;
}
.button-group.success .button, .button-group.success .button.disabled, .button-group.success .button[disabled], .button-group.success .button.disabled:hover, .button-group.success .button[disabled]:hover, .button-group.success .button.disabled:focus, .button-group.success .button[disabled]:focus {
  background-color: #3adb76;
  color: #0a0a0a;
}
.button-group.success .button:hover, .button-group.success .button:focus {
  background-color: #22bb5b;
  color: #0a0a0a;
}
.button-group.warning .button, .button-group.warning .button.disabled, .button-group.warning .button[disabled], .button-group.warning .button.disabled:hover, .button-group.warning .button[disabled]:hover, .button-group.warning .button.disabled:focus, .button-group.warning .button[disabled]:focus {
  background-color: #ffae00;
  color: #0a0a0a;
}
.button-group.warning .button:hover, .button-group.warning .button:focus {
  background-color: #cc8b00;
  color: #0a0a0a;
}
.button-group.alert .button, .button-group.alert .button.disabled, .button-group.alert .button[disabled], .button-group.alert .button.disabled:hover, .button-group.alert .button[disabled]:hover, .button-group.alert .button.disabled:focus, .button-group.alert .button[disabled]:focus {
  background-color: #cc4b37;
  color: #fefefe;
}
.button-group.alert .button:hover, .button-group.alert .button:focus {
  background-color: #a53b2a;
  color: #fefefe;
}
.button-group.hollow .button, .button-group.hollow .button:hover, .button-group.hollow .button:focus, .button-group.hollow .button.disabled, .button-group.hollow .button.disabled:hover, .button-group.hollow .button.disabled:focus, .button-group.hollow .button[disabled], .button-group.hollow .button[disabled]:hover, .button-group.hollow .button[disabled]:focus {
  background-color: transparent;
}
.button-group.hollow .button, .button-group.hollow .button.disabled, .button-group.hollow .button[disabled], .button-group.hollow .button.disabled:hover, .button-group.hollow .button[disabled]:hover, .button-group.hollow .button.disabled:focus, .button-group.hollow .button[disabled]:focus {
  border: 1px solid #1779ba;
  color: #1779ba;
}
.button-group.hollow .button:hover, .button-group.hollow .button:focus {
  border-color: #0c3d5d;
  color: #0c3d5d;
}
.button-group.hollow.primary .button, .button-group.hollow.primary .button.disabled, .button-group.hollow.primary .button[disabled], .button-group.hollow.primary .button.disabled:hover, .button-group.hollow.primary .button[disabled]:hover, .button-group.hollow.primary .button.disabled:focus, .button-group.hollow.primary .button[disabled]:focus, .button-group.hollow .button.primary, .button-group.hollow .button.primary.disabled, .button-group.hollow .button.primary[disabled], .button-group.hollow .button.primary.disabled:hover, .button-group.hollow .button.primary[disabled]:hover, .button-group.hollow .button.primary.disabled:focus, .button-group.hollow .button.primary[disabled]:focus {
  border: 1px solid #1779ba;
  color: #1779ba;
}
.button-group.hollow.primary .button:hover, .button-group.hollow.primary .button:focus, .button-group.hollow .button.primary:hover, .button-group.hollow .button.primary:focus {
  border-color: #0c3d5d;
  color: #0c3d5d;
}
.button-group.hollow.secondary .button, .button-group.hollow.secondary .button.disabled, .button-group.hollow.secondary .button[disabled], .button-group.hollow.secondary .button.disabled:hover, .button-group.hollow.secondary .button[disabled]:hover, .button-group.hollow.secondary .button.disabled:focus, .button-group.hollow.secondary .button[disabled]:focus, .button-group.hollow .button.secondary, .button-group.hollow .button.secondary.disabled, .button-group.hollow .button.secondary[disabled], .button-group.hollow .button.secondary.disabled:hover, .button-group.hollow .button.secondary[disabled]:hover, .button-group.hollow .button.secondary.disabled:focus, .button-group.hollow .button.secondary[disabled]:focus {
  border: 1px solid #767676;
  color: #767676;
}
.button-group.hollow.secondary .button:hover, .button-group.hollow.secondary .button:focus, .button-group.hollow .button.secondary:hover, .button-group.hollow .button.secondary:focus {
  border-color: #3b3b3b;
  color: #3b3b3b;
}
.button-group.hollow.success .button, .button-group.hollow.success .button.disabled, .button-group.hollow.success .button[disabled], .button-group.hollow.success .button.disabled:hover, .button-group.hollow.success .button[disabled]:hover, .button-group.hollow.success .button.disabled:focus, .button-group.hollow.success .button[disabled]:focus, .button-group.hollow .button.success, .button-group.hollow .button.success.disabled, .button-group.hollow .button.success[disabled], .button-group.hollow .button.success.disabled:hover, .button-group.hollow .button.success[disabled]:hover, .button-group.hollow .button.success.disabled:focus, .button-group.hollow .button.success[disabled]:focus {
  border: 1px solid #3adb76;
  color: #3adb76;
}
.button-group.hollow.success .button:hover, .button-group.hollow.success .button:focus, .button-group.hollow .button.success:hover, .button-group.hollow .button.success:focus {
  border-color: #157539;
  color: #157539;
}
.button-group.hollow.warning .button, .button-group.hollow.warning .button.disabled, .button-group.hollow.warning .button[disabled], .button-group.hollow.warning .button.disabled:hover, .button-group.hollow.warning .button[disabled]:hover, .button-group.hollow.warning .button.disabled:focus, .button-group.hollow.warning .button[disabled]:focus, .button-group.hollow .button.warning, .button-group.hollow .button.warning.disabled, .button-group.hollow .button.warning[disabled], .button-group.hollow .button.warning.disabled:hover, .button-group.hollow .button.warning[disabled]:hover, .button-group.hollow .button.warning.disabled:focus, .button-group.hollow .button.warning[disabled]:focus {
  border: 1px solid #ffae00;
  color: #ffae00;
}
.button-group.hollow.warning .button:hover, .button-group.hollow.warning .button:focus, .button-group.hollow .button.warning:hover, .button-group.hollow .button.warning:focus {
  border-color: #805700;
  color: #805700;
}
.button-group.hollow.alert .button, .button-group.hollow.alert .button.disabled, .button-group.hollow.alert .button[disabled], .button-group.hollow.alert .button.disabled:hover, .button-group.hollow.alert .button[disabled]:hover, .button-group.hollow.alert .button.disabled:focus, .button-group.hollow.alert .button[disabled]:focus, .button-group.hollow .button.alert, .button-group.hollow .button.alert.disabled, .button-group.hollow .button.alert[disabled], .button-group.hollow .button.alert.disabled:hover, .button-group.hollow .button.alert[disabled]:hover, .button-group.hollow .button.alert.disabled:focus, .button-group.hollow .button.alert[disabled]:focus {
  border: 1px solid #cc4b37;
  color: #cc4b37;
}
.button-group.hollow.alert .button:hover, .button-group.hollow.alert .button:focus, .button-group.hollow .button.alert:hover, .button-group.hollow .button.alert:focus {
  border-color: #67251a;
  color: #67251a;
}
.button-group.clear .button, .button-group.clear .button:hover, .button-group.clear .button:focus, .button-group.clear .button.disabled, .button-group.clear .button.disabled:hover, .button-group.clear .button.disabled:focus, .button-group.clear .button[disabled], .button-group.clear .button[disabled]:hover, .button-group.clear .button[disabled]:focus {
  border-color: transparent;
  background-color: transparent;
}
.button-group.clear .button, .button-group.clear .button.disabled, .button-group.clear .button[disabled], .button-group.clear .button.disabled:hover, .button-group.clear .button[disabled]:hover, .button-group.clear .button.disabled:focus, .button-group.clear .button[disabled]:focus {
  color: #1779ba;
}
.button-group.clear .button:hover, .button-group.clear .button:focus {
  color: #0c3d5d;
}
.button-group.clear.primary .button, .button-group.clear.primary .button.disabled, .button-group.clear.primary .button[disabled], .button-group.clear.primary .button.disabled:hover, .button-group.clear.primary .button[disabled]:hover, .button-group.clear.primary .button.disabled:focus, .button-group.clear.primary .button[disabled]:focus, .button-group.clear .button.primary, .button-group.clear .button.primary.disabled, .button-group.clear .button.primary[disabled], .button-group.clear .button.primary.disabled:hover, .button-group.clear .button.primary[disabled]:hover, .button-group.clear .button.primary.disabled:focus, .button-group.clear .button.primary[disabled]:focus {
  color: #1779ba;
}
.button-group.clear.primary .button:hover, .button-group.clear.primary .button:focus, .button-group.clear .button.primary:hover, .button-group.clear .button.primary:focus {
  color: #0c3d5d;
}
.button-group.clear.secondary .button, .button-group.clear.secondary .button.disabled, .button-group.clear.secondary .button[disabled], .button-group.clear.secondary .button.disabled:hover, .button-group.clear.secondary .button[disabled]:hover, .button-group.clear.secondary .button.disabled:focus, .button-group.clear.secondary .button[disabled]:focus, .button-group.clear .button.secondary, .button-group.clear .button.secondary.disabled, .button-group.clear .button.secondary[disabled], .button-group.clear .button.secondary.disabled:hover, .button-group.clear .button.secondary[disabled]:hover, .button-group.clear .button.secondary.disabled:focus, .button-group.clear .button.secondary[disabled]:focus {
  color: #767676;
}
.button-group.clear.secondary .button:hover, .button-group.clear.secondary .button:focus, .button-group.clear .button.secondary:hover, .button-group.clear .button.secondary:focus {
  color: #3b3b3b;
}
.button-group.clear.success .button, .button-group.clear.success .button.disabled, .button-group.clear.success .button[disabled], .button-group.clear.success .button.disabled:hover, .button-group.clear.success .button[disabled]:hover, .button-group.clear.success .button.disabled:focus, .button-group.clear.success .button[disabled]:focus, .button-group.clear .button.success, .button-group.clear .button.success.disabled, .button-group.clear .button.success[disabled], .button-group.clear .button.success.disabled:hover, .button-group.clear .button.success[disabled]:hover, .button-group.clear .button.success.disabled:focus, .button-group.clear .button.success[disabled]:focus {
  color: #3adb76;
}
.button-group.clear.success .button:hover, .button-group.clear.success .button:focus, .button-group.clear .button.success:hover, .button-group.clear .button.success:focus {
  color: #157539;
}
.button-group.clear.warning .button, .button-group.clear.warning .button.disabled, .button-group.clear.warning .button[disabled], .button-group.clear.warning .button.disabled:hover, .button-group.clear.warning .button[disabled]:hover, .button-group.clear.warning .button.disabled:focus, .button-group.clear.warning .button[disabled]:focus, .button-group.clear .button.warning, .button-group.clear .button.warning.disabled, .button-group.clear .button.warning[disabled], .button-group.clear .button.warning.disabled:hover, .button-group.clear .button.warning[disabled]:hover, .button-group.clear .button.warning.disabled:focus, .button-group.clear .button.warning[disabled]:focus {
  color: #ffae00;
}
.button-group.clear.warning .button:hover, .button-group.clear.warning .button:focus, .button-group.clear .button.warning:hover, .button-group.clear .button.warning:focus {
  color: #805700;
}
.button-group.clear.alert .button, .button-group.clear.alert .button.disabled, .button-group.clear.alert .button[disabled], .button-group.clear.alert .button.disabled:hover, .button-group.clear.alert .button[disabled]:hover, .button-group.clear.alert .button.disabled:focus, .button-group.clear.alert .button[disabled]:focus, .button-group.clear .button.alert, .button-group.clear .button.alert.disabled, .button-group.clear .button.alert[disabled], .button-group.clear .button.alert.disabled:hover, .button-group.clear .button.alert[disabled]:hover, .button-group.clear .button.alert.disabled:focus, .button-group.clear .button.alert[disabled]:focus {
  color: #cc4b37;
}
.button-group.clear.alert .button:hover, .button-group.clear.alert .button:focus, .button-group.clear .button.alert:hover, .button-group.clear .button.alert:focus {
  color: #67251a;
}
.button-group.no-gaps .button {
  margin-right: -0.0666666667rem;
}
.button-group.no-gaps .button + .button {
  border-left-color: transparent;
}
.button-group.stacked, .button-group.stacked-for-small, .button-group.stacked-for-medium {
  flex-wrap: wrap;
}
.button-group.stacked .button, .button-group.stacked-for-small .button, .button-group.stacked-for-medium .button {
  flex: 0 0 100%;
}
.button-group.stacked .button:last-child, .button-group.stacked-for-small .button:last-child, .button-group.stacked-for-medium .button:last-child {
  margin-bottom: 0;
}
.button-group.stacked.expanded .button, .button-group.stacked-for-small.expanded .button, .button-group.stacked-for-medium.expanded .button {
  flex: 1 1 0px;
}
@media print, screen and (min-width: 40em) {
  .button-group.stacked-for-small .button {
    flex: 0 0 auto;
    margin-bottom: 0;
  }
}
@media print, screen and (min-width: 64em) {
  .button-group.stacked-for-medium .button {
    flex: 0 0 auto;
    margin-bottom: 0;
  }
}
@media print, screen and (max-width: 39.99875em) {
  .button-group.stacked-for-small.expanded {
    display: block;
  }
  .button-group.stacked-for-small.expanded .button {
    display: block;
    margin-right: 0;
  }
}
@media print, screen and (max-width: 63.99875em) {
  .button-group.stacked-for-medium.expanded {
    display: block;
  }
  .button-group.stacked-for-medium.expanded .button {
    display: block;
    margin-right: 0;
  }
}
.close-button {
  position: absolute;
  z-index: 10;
  color: #fefefe;
  cursor: pointer;
}
[data-whatinput=mouse] .close-button {
  outline: 0;
}
.close-button:hover, .close-button:focus {
  color: #0a0a0a;
}
.close-button.small {
  right: 0.66rem;
  top: 0.33em;
  font-size: 2em;
  line-height: 0.5;
}
.close-button.medium, .close-button {
  right: 0;
  top: 0;
  font-size: 4em;
  line-height: 0.5;
}
html.is-reveal-open {
  position: fixed;
  width: 100%;
  overflow-y: hidden;
}
html.is-reveal-open.zf-has-scroll {
  overflow-y: scroll;
  -webkit-overflow-scrolling: touch;
}
html.is-reveal-open body {
  overflow-y: hidden;
}
.reveal-overlay {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 9999999;
  display: none;
  background-color: rgba(109, 117, 132, 0.95);
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
}
.reveal {
  z-index: 10000000;
  backface-visibility: hidden;
  display: none;
  padding: 1rem;
  border: none;
  border-radius: 0;
  background-color: #5E2246;
  position: relative;
  top: 100px;
  margin-right: auto;
  margin-left: auto;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
}
[data-whatinput=mouse] .reveal {
  outline: 0;
}
@media print, screen and (min-width: 40em) {
  .reveal {
    min-height: 0;
  }
}
.reveal .column {
  min-width: 0;
}
.reveal > :last-child {
  margin-bottom: 0;
}
@media print, screen and (min-width: 40em) {
  .reveal {
    width: 900px;
    max-width: 1300px;
  }
}
.reveal.collapse {
  padding: 0;
}
@media print, screen and (min-width: 40em) {
  .reveal.tiny {
    width: 30%;
    max-width: 1300px;
  }
  .reveal.small {
    width: 50%;
    max-width: 1300px;
  }
  .reveal.large {
    width: 90%;
    max-width: 1300px;
  }
}
.reveal.full {
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  max-width: none;
  height: 100%;
  min-height: 100%;
  margin-left: 0;
  border: 0;
  border-radius: 0;
}
@media print, screen and (max-width: 39.99875em) {
  .reveal {
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    max-width: none;
    height: 100%;
    min-height: 100%;
    margin-left: 0;
    border: 0;
    border-radius: 0;
  }
}
.reveal.without-overlay {
  position: fixed;
}
.top-bar {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: center;
  padding: 0;
  flex-wrap: wrap;
}
.top-bar,
.top-bar ul {
  background-color: transparent;
}
.top-bar ul ul {
  background-color: #fefefe;
}
.top-bar input {
  max-width: 200px;
  margin-right: 1rem;
}
.top-bar .input-group-field {
  width: 100%;
  margin-right: 0;
}
.top-bar input.button {
  width: auto;
}
.top-bar .top-bar-left,
.top-bar .top-bar-right {
  flex: 0 0 100%;
  max-width: 100%;
}
@media print, screen and (min-width: 64em) {
  .top-bar {
    flex-wrap: nowrap;
  }
  .top-bar .top-bar-left {
    flex: 1 1 auto;
    margin-right: auto;
  }
  .top-bar .top-bar-right {
    flex: 0 1 auto;
    margin-left: auto;
  }
}
@media print, screen and (max-width: 63.99875em) {
  .top-bar.stacked-for-medium {
    flex-wrap: wrap;
  }
  .top-bar.stacked-for-medium .top-bar-left,
.top-bar.stacked-for-medium .top-bar-right {
    flex: 0 0 100%;
    max-width: 100%;
  }
}
@media print, screen and (max-width: 74.99875em) {
  .top-bar.stacked-for-large {
    flex-wrap: wrap;
  }
  .top-bar.stacked-for-large .top-bar-left,
.top-bar.stacked-for-large .top-bar-right {
    flex: 0 0 100%;
    max-width: 100%;
  }
}
.top-bar-title {
  flex: 0 0 auto;
  margin: 0.5rem 1rem 0.5rem 0;
}
.top-bar-left,
.top-bar-right {
  flex: 0 0 auto;
}
[type=text], [type=password], [type=date], [type=datetime], [type=datetime-local], [type=month], [type=week], [type=email], [type=number], [type=search], [type=tel], [type=time], [type=url], [type=color],
textarea {
  display: block;
  box-sizing: border-box;
  width: 100%;
  height: 2.4333333333rem;
  margin: 0 0 1rem;
  padding: 0.5rem;
  border: 1px solid #cacaca;
  border-radius: 0;
  background-color: #fefefe;
  box-shadow: inset 0 1px 2px rgba(10, 10, 10, 0.1);
  font-family: inherit;
  font-size: 1rem;
  font-weight: normal;
  line-height: 1.5;
  color: #0a0a0a;
  transition: box-shadow 0.5s, border-color 0.25s ease-in-out;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}
[type=text]:focus, [type=password]:focus, [type=date]:focus, [type=datetime]:focus, [type=datetime-local]:focus, [type=month]:focus, [type=week]:focus, [type=email]:focus, [type=number]:focus, [type=search]:focus, [type=tel]:focus, [type=time]:focus, [type=url]:focus, [type=color]:focus,
textarea:focus {
  outline: none;
  border: 1px solid #8a8a8a;
  background-color: #fefefe;
  box-shadow: 0 0 5px #cacaca;
  transition: box-shadow 0.5s, border-color 0.25s ease-in-out;
}
textarea {
  max-width: 100%;
}
textarea[rows] {
  height: auto;
}
input:disabled, input[readonly],
textarea:disabled,
textarea[readonly] {
  background-color: #e6e6e6;
  cursor: not-allowed;
}
[type=submit],
[type=button] {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border-radius: 0;
}
input[type=search] {
  box-sizing: border-box;
}
::-moz-placeholder {
  color: #cacaca;
}
:-ms-input-placeholder {
  color: #cacaca;
}
::placeholder {
  color: #cacaca;
}
[type=file],
[type=checkbox],
[type=radio] {
  margin: 0 0 1rem;
}
[type=checkbox] + label,
[type=radio] + label {
  display: inline-block;
  vertical-align: baseline;
  margin-left: 0.5rem;
  margin-right: 1rem;
  margin-bottom: 0;
}
[type=checkbox] + label[for],
[type=radio] + label[for] {
  cursor: pointer;
}
label > [type=checkbox],
label > [type=radio] {
  margin-right: 0.5rem;
}
[type=file] {
  width: 100%;
}
label {
  display: block;
  margin: 0;
  font-size: 0.875rem;
  font-weight: normal;
  line-height: 1.8;
  color: #0a0a0a;
}
label.middle {
  margin: 0 0 1rem;
  line-height: 1.5;
  padding: 0.5666666667rem 0;
}
.help-text {
  margin-top: -0.5rem;
  font-size: 0.8125rem;
  font-style: italic;
  color: #0a0a0a;
}
.input-group {
  display: flex;
  width: 100%;
  margin-bottom: 1rem;
  align-items: stretch;
}
.input-group > :first-child, .input-group > :first-child.input-group-button > * {
  border-radius: 0 0 0 0;
}
.input-group > :last-child, .input-group > :last-child.input-group-button > * {
  border-radius: 0 0 0 0;
}
.input-group-label, .input-group-field, .input-group-button, .input-group-button a,
.input-group-button input,
.input-group-button button,
.input-group-button label {
  margin: 0;
  white-space: nowrap;
}
.input-group-label {
  padding: 0 1rem;
  border: 1px solid #cacaca;
  background: #e6e6e6;
  color: #0a0a0a;
  text-align: center;
  white-space: nowrap;
  display: flex;
  flex: 0 0 auto;
  align-items: center;
}
.input-group-label:first-child {
  border-right: 0;
}
.input-group-label:last-child {
  border-left: 0;
}
.input-group-field {
  border-radius: 0;
  flex: 1 1 0px;
  min-width: 0;
}
.input-group-button {
  padding-top: 0;
  padding-bottom: 0;
  text-align: center;
  display: flex;
  flex: 0 0 auto;
}
.input-group-button a,
.input-group-button input,
.input-group-button button,
.input-group-button label {
  align-self: stretch;
  height: auto;
  padding-top: 0;
  padding-bottom: 0;
  font-size: 1rem;
}
fieldset {
  margin: 0;
  padding: 0;
  border: 0;
}
legend {
  max-width: 100%;
  margin-bottom: 0.5rem;
}
.fieldset {
  margin: 1.125rem 0;
  padding: 1.25rem;
  border: 1px solid #cacaca;
}
.fieldset legend {
  margin: 0;
  margin-left: -0.2rem;
  padding: 0 0.1875rem;
}
select {
  height: 2.4333333333rem;
  margin: 0 0 1rem;
  padding: 0.5rem;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: 1px solid #cacaca;
  border-radius: 0;
  background-color: #fefefe;
  font-family: inherit;
  font-size: 1rem;
  font-weight: normal;
  line-height: 1.5;
  color: #0a0a0a;
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" width="32" height="24" viewBox="0 0 32 24"><polygon points="0,0 32,0 16,24" style="fill: rgb%28138, 138, 138%29"></polygon></svg>');
  background-origin: content-box;
  background-position: right -1rem center;
  background-repeat: no-repeat;
  background-size: 9px 6px;
  padding-right: 1.5rem;
  transition: box-shadow 0.5s, border-color 0.25s ease-in-out;
}
@media screen and (min-width: 0\0 ) {
  select {
    background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAYCAYAAACbU/80AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAIpJREFUeNrEkckNgDAMBBfRkEt0ObRBBdsGXUDgmQfK4XhH2m8czQAAy27R3tsw4Qfe2x8uOO6oYLb6GlOor3GF+swURAOmUJ+RwtEJs9WvTGEYxBXqI1MQAZhCfUQKRzDMVj+TwrAIV6jvSUEkYAr1LSkcyTBb/V+KYfX7xAeusq3sLDtGH3kEGACPWIflNZfhRQAAAABJRU5ErkJggg==");
  }
}
select:focus {
  outline: none;
  border: 1px solid #8a8a8a;
  background-color: #fefefe;
  box-shadow: 0 0 5px #cacaca;
  transition: box-shadow 0.5s, border-color 0.25s ease-in-out;
}
select:disabled {
  background-color: #e6e6e6;
  cursor: not-allowed;
}
select::-ms-expand {
  display: none;
}
select[multiple] {
  height: auto;
  background-image: none;
}
select:not([multiple]) {
  padding-top: 0;
  padding-bottom: 0;
}
.is-invalid-input:not(:focus) {
  border-color: #cc4b37;
  background-color: #f9ecea;
}
.is-invalid-input:not(:focus)::-moz-placeholder {
  color: #cc4b37;
}
.is-invalid-input:not(:focus):-ms-input-placeholder {
  color: #cc4b37;
}
.is-invalid-input:not(:focus)::placeholder {
  color: #cc4b37;
}
.is-invalid-label {
  color: #cc4b37;
}
.form-error {
  display: none;
  margin-top: -0.5rem;
  margin-bottom: 1rem;
  font-size: 0.75rem;
  font-weight: bold;
  color: #cc4b37;
}
.form-error.is-visible {
  display: block;
}
.hide {
  display: none !important;
}
.invisible {
  visibility: hidden;
}
.visible {
  visibility: visible;
}
@media print, screen and (max-width: 39.99875em) {
  .hide-for-small-only {
    display: none !important;
  }
}
@media screen and (max-width: 0em), screen and (min-width: 40em) {
  .show-for-small-only {
    display: none !important;
  }
}
@media print, screen and (min-width: 40em) {
  .hide-for-medium {
    display: none !important;
  }
}
@media screen and (max-width: 39.99875em) {
  .show-for-medium {
    display: none !important;
  }
}
@media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
  .hide-for-medium-only {
    display: none !important;
  }
}
@media screen and (max-width: 39.99875em), screen and (min-width: 64em) {
  .show-for-medium-only {
    display: none !important;
  }
}
@media print, screen and (min-width: 64em) {
  .hide-for-large {
    display: none !important;
  }
}
@media screen and (max-width: 63.99875em) {
  .show-for-large {
    display: none !important;
  }
}
@media print, screen and (min-width: 64em) and (max-width: 74.99875em) {
  .hide-for-large-only {
    display: none !important;
  }
}
@media screen and (max-width: 63.99875em), screen and (min-width: 75em) {
  .show-for-large-only {
    display: none !important;
  }
}
.show-for-sr,
.show-on-focus {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}
.show-on-focus:active, .show-on-focus:focus {
  position: static !important;
  width: auto !important;
  height: auto !important;
  overflow: visible !important;
  clip: auto !important;
  white-space: normal !important;
}
.show-for-landscape,
.hide-for-portrait {
  display: block !important;
}
@media screen and (orientation: landscape) {
  .show-for-landscape,
.hide-for-portrait {
    display: block !important;
  }
}
@media screen and (orientation: portrait) {
  .show-for-landscape,
.hide-for-portrait {
    display: none !important;
  }
}
.hide-for-landscape,
.show-for-portrait {
  display: none !important;
}
@media screen and (orientation: landscape) {
  .hide-for-landscape,
.show-for-portrait {
    display: none !important;
  }
}
@media screen and (orientation: portrait) {
  .hide-for-landscape,
.show-for-portrait {
    display: block !important;
  }
}
.show-for-dark-mode {
  display: none;
}
.hide-for-dark-mode {
  display: block;
}
@media screen and (prefers-color-scheme: dark) {
  .show-for-dark-mode {
    display: block !important;
  }

  .hide-for-dark-mode {
    display: none !important;
  }
}
.show-for-ie {
  display: none;
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .show-for-ie {
    display: block !important;
  }

  .hide-for-ie {
    display: none !important;
  }
}
.show-for-sticky {
  display: none;
}
.is-stuck .show-for-sticky {
  display: block;
}
.is-stuck .hide-for-sticky {
  display: none;
}
.accordion {
  margin-left: 0;
  background: #fefefe;
  list-style-type: none;
}
.accordion[disabled] .accordion-title {
  cursor: not-allowed;
}
.accordion-item:first-child > :first-child {
  border-radius: 0 0 0 0;
}
.accordion-item:last-child > :last-child {
  border-radius: 0 0 0 0;
}
.accordion-title {
  position: relative;
  display: block;
  padding: 1.25rem 1rem;
  border: 1px solid #e6e6e6;
  border-bottom: 0;
  font-size: 0.75rem;
  line-height: 1;
  color: #1779ba;
}
:last-child:not(.is-active) > .accordion-title {
  border-bottom: 1px solid #e6e6e6;
  border-radius: 0 0 0 0;
}
.accordion-title:hover, .accordion-title:focus {
  background-color: #e6e6e6;
}
.accordion-title::before {
  position: absolute;
  top: 50%;
  right: 1rem;
  margin-top: -0.5rem;
  content: "+";
}
.is-active > .accordion-title::before {
  content: "–";
}
.accordion-content {
  display: none;
  padding: 1rem;
  border: 1px solid #e6e6e6;
  border-bottom: 0;
  background-color: #fefefe;
  color: #0a0a0a;
}
:last-child > .accordion-content:last-child {
  border-bottom: 1px solid #e6e6e6;
}
table {
  border-collapse: collapse;
  width: 100%;
  margin-bottom: 1rem;
  border-radius: 0;
}
thead,
tbody,
tfoot {
  border: 1px solid #f1f1f1;
  background-color: #fefefe;
}
caption {
  padding: 0.5rem 0.625rem 0.625rem;
  font-weight: 600;
}
thead {
  background: #f8f8f8;
  color: #0a0a0a;
}
tfoot {
  background: #f1f1f1;
  color: #0a0a0a;
}
thead tr,
tfoot tr {
  background: transparent;
}
thead th,
thead td,
tfoot th,
tfoot td {
  padding: 0.5rem 0.625rem 0.625rem;
  font-weight: 600;
  text-align: left;
}
tbody th,
tbody td {
  padding: 0.5rem 0.625rem 0.625rem;
}
tbody tr:nth-child(even) {
  border-bottom: 0;
  background-color: #f1f1f1;
}
table.unstriped tbody {
  background-color: #fefefe;
}
table.unstriped tbody tr {
  border-bottom: 1px solid #f1f1f1;
  background-color: #fefefe;
}
@media print, screen and (max-width: 63.99875em) {
  table.stack thead {
    display: none;
  }
  table.stack tfoot {
    display: none;
  }
  table.stack tr,
table.stack th,
table.stack td {
    display: block;
  }
  table.stack td {
    border-top: 0;
  }
}
table.scroll {
  display: block;
  width: 100%;
  overflow-x: auto;
}
table.hover thead tr:hover {
  background-color: #f3f3f3;
}
table.hover tfoot tr:hover {
  background-color: #ececec;
}
table.hover tbody tr:hover {
  background-color: #f9f9f9;
}
table.hover:not(.unstriped) tr:nth-of-type(even):hover {
  background-color: #ececec;
}
.table-scroll {
  overflow-x: auto;
}
html {
  font-size: 15px;
}
body {
  font-size: 15px;
}
@media print, screen and (min-width: 64em) {
  .main-container {
    padding-top: 118px;
  }
  .page-template-front .main-container {
    padding-top: 0 !important;
  }
}
.row .container {
  max-width: 890px;
  margin: 0 auto;
}
@media screen and (min-width: 75em) {
  .row .container {
    max-width: 1024px;
  }
}
@media screen and (min-width: 90em) {
  .row .container {
    max-width: 1200px;
  }
}
.row .container.padding {
  padding: 0 30px;
}
.row.full-width .container {
  max-width: initial;
}
.grid {
  margin-right: 30px;
  margin-left: 30px;
  display: grid;
}
.grid.block {
  display: block;
}
.grid.no-gap {
  -moz-column-gap: 0;
       column-gap: 0;
}
.grid.gap-2 {
  -moz-column-gap: 30px;
       column-gap: 30px;
}
.grid.gap-4 {
  -moz-column-gap: calc(30px * 2);
       column-gap: calc(30px * 2);
}
.grid.margin-2 {
  margin-left: calc(30px * 2);
  margin-right: calc(30px * 2);
}
.grid.no-margin,
.grid .grid {
  margin-left: 0;
  margin-right: 0;
}
.grid.col-2, .grid.col-3, .grid.col-4, .grid.col-6, .grid.col-12, .grid.col-1-3, .grid.col-3-1 {
  grid-template-columns: minmax(100%, max-content);
  grid-template-rows: auto;
}
.grid.sm-col-3 {
  -ms-grid-columns: 1fr 15px 1fr 15px 1fr;
  grid-template-columns: repeat(3, 1fr);
}
@media print, screen and (min-width: 64em) {
  .grid.col-2 {
    -ms-grid-columns: 1fr 15px 1fr;
    grid-template-columns: repeat(2, 1fr);
  }
  .grid.col-3 {
    -ms-grid-columns: 1fr 15px 1fr 15px 1fr;
    grid-template-columns: repeat(3, 1fr);
  }
  .grid.col-4 {
    -ms-grid-columns: 1fr 15px 1fr 15px 1fr 15px 1fr;
    grid-template-columns: repeat(4, 1fr);
  }
  .grid.col-5 {
    -ms-grid-columns: 1fr 15px 1fr 15px 1fr 15px 1fr 15px 1fr;
    grid-template-columns: repeat(5, 1fr);
  }
  .grid.col-6 {
    -ms-grid-columns: 1fr 15px 1fr 15px 1fr 15px 1fr 15px 1fr 15px 1fr;
    grid-template-columns: repeat(6, 1fr);
  }
  .grid.col-12 {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
  }
  .grid.col-1-3 {
    -ms-grid-columns: 1fr 15px 2fr;
    grid-template-columns: 1fr 2fr;
  }
  .grid.col-1-4 {
    -ms-grid-columns: 1fr 15px 3fr;
    grid-template-columns: 1fr 3fr;
  }
  .grid.col-3-1 {
    -ms-grid-columns: 2fr 15px 1fr;
    grid-template-columns: 2fr 1fr;
  }
}
.grid.no-gap.col-3 > div:nth-child(2) {
  -ms-grid-column: 2;
}
.grid.no-gap.col-3 > div:nth-child(3) {
  -ms-grid-column: 3;
}
.grid.no-gap.col-4 > div:nth-child(2) {
  -ms-grid-column: 2;
}
.grid.no-gap.col-4 > div:nth-child(3) {
  -ms-grid-column: 3;
}
.grid.no-gap.col-4 > div:nth-child(4) {
  -ms-grid-column: 4;
}
.grid.no-gap.col-5 > div:nth-child(2) {
  -ms-grid-column: 2;
}
.grid.no-gap.col-5 > div:nth-child(3) {
  -ms-grid-column: 3;
}
.grid.no-gap.col-5 > div:nth-child(4) {
  -ms-grid-column: 4;
}
.grid.no-gap.col-5 > div:nth-child(5) {
  -ms-grid-column: 5;
}
.grid.no-gap.col-2 > div:nth-child(2), .grid.no-gap.col-2 > aside:nth-child(2), .grid.no-gap.col-1-3 > div:nth-child(2), .grid.no-gap.col-1-3 > aside:nth-child(2), .grid.no-gap.col-1-4 > div:nth-child(2), .grid.no-gap.col-1-4 > aside:nth-child(2), .grid.no-gap.col-3-1 > div:nth-child(2), .grid.no-gap.col-3-1 > aside:nth-child(2) {
  -ms-grid-column: 2;
}
@media print, screen and (min-width: 64em) {
  .grid.no-gap.col-2 {
    -ms-grid-columns: 1fr 1fr;
  }
  .grid.no-gap.col-3 {
    -ms-grid-columns: 1fr 1fr 1fr;
  }
  .grid.no-gap.col-4 {
    -ms-grid-columns: 1fr 1fr 1fr 1fr;
  }
  .grid.no-gap.col-5 {
    -ms-grid-columns: 1fr 1fr 1fr 1fr 1fr;
  }
  .grid.no-gap.col-6 {
    -ms-grid-columns: 1fr 1fr 1fr 1fr 1fr 1fr;
  }
  .grid.no-gap.col-1-3 {
    -ms-grid-columns: 1fr 2fr;
  }
  .grid.no-gap.col-1-4 {
    -ms-grid-columns: 1fr 3fr;
  }
  .grid.no-gap.col-3-1 {
    -ms-grid-columns: 2fr 1fr;
  }
}
.grid.col-3 > div:nth-child(2) {
  -ms-grid-column: 3;
}
.grid.col-3 > div:nth-child(3) {
  -ms-grid-column: 5;
}
.grid.col-4 > div:nth-child(2) {
  -ms-grid-column: 3;
}
.grid.col-4 > div:nth-child(3) {
  -ms-grid-column: 5;
}
.grid.col-4 > div:nth-child(4) {
  -ms-grid-column: 7;
}
.grid.col-5 > div:nth-child(2) {
  -ms-grid-column: 3;
}
.grid.col-5 > div:nth-child(3) {
  -ms-grid-column: 5;
}
.grid.col-5 > div:nth-child(4) {
  -ms-grid-column: 7;
}
.grid.col-5 > div:nth-child(5) {
  -ms-grid-column: 9;
}
.grid.col-6 > div:nth-child(2) {
  -ms-grid-column: 3;
}
.grid.col-6 > div:nth-child(3) {
  -ms-grid-column: 5;
}
.grid.col-6 > div:nth-child(4) {
  -ms-grid-column: 7;
}
.grid.col-6 > div:nth-child(5) {
  -ms-grid-column: 9;
}
.grid.col-6 > div:nth-child(6) {
  -ms-grid-column: 11;
}
.grid.col-2 > div:nth-child(2), .grid.col-2 > aside:nth-child(2), .grid.col-1-3 > div:nth-child(2), .grid.col-1-3 > aside:nth-child(2), .grid.col-1-4 > div:nth-child(2), .grid.col-1-4 > aside:nth-child(2), .grid.col-3-1 > div:nth-child(2), .grid.col-3-1 > aside:nth-child(2) {
  -ms-grid-column: 3;
}
[data-whatinput=mouse] a:focus, button:focus [data-whatinput=touch] a:focus,
button:focus {
  outline: none;
}
.embed-container {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
  max-width: 100%;
}
.embed-container embed,
.embed-container iframe,
.embed-container object {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
p > a {
  font-weight: 600;
}
span.stars {
  color: #ffb200;
}
.modern-title {
  font-family: "Continuum-Light", "Helvetica Neue", sans-serif;
  letter-spacing: 1px;
}
.modern-title.white {
  color: #fefefe;
}
.modern-title.purple {
  color: #5E2246;
}
.modern-title.green {
  color: #B2C90A;
}
.modern-title.center {
  text-align: center;
}
.paragraph-title {
  font-family: "Raleway", "Helvetica Neue", sans-serif;
  text-transform: uppercase;
}
.paragraph-title.white {
  color: #fefefe;
}
.paragraph-title.purple {
  color: #5E2246;
}
.paragraph-title.magenta {
  color: #9e1c62;
}
.paragraph-title.green {
  color: #B2C90A;
}
.paragraph-title.bold {
  font-weight: 600;
}
.paragraph-title.nowrap {
  white-space: nowrap;
}
.paragraph-title.wrap {
  word-wrap: break-word;
}
.paragraph-title.center {
  text-align: center;
}
.paragraph-title.small {
  font-size: 1.3333333333rem;
}
.paragraph-white p {
  color: #fefefe;
}
.sidebar h1,
.sidebar h2,
.sidebar h3,
.sidebar h4,
.sidebar h5,
.sidebar h6,
.entry-content h1,
.entry-content h2,
.entry-content h3,
.entry-content h4,
.entry-content h5,
.entry-content h6 {
  text-transform: uppercase;
  color: #5E2246;
}
h1.white,
h2.white,
h3.white,
h4.white,
h5.white,
h6.white {
  color: #fefefe;
}
h1.purple,
h2.purple,
h3.purple,
h4.purple,
h5.purple,
h6.purple {
  color: #5E2246;
}
h1.green,
h2.green,
h3.green,
h4.green,
h5.green,
h6.green {
  color: #B2C90A;
}
h1.uppercase,
h2.uppercase,
h3.uppercase,
h4.uppercase,
h5.uppercase,
h6.uppercase {
  text-transform: uppercase;
}
q {
  quotes: "“" "”" "‘" "’";
}
blockquote {
  position: relative;
  font-weight: 500;
  font-style: italic;
}
blockquote:before {
  position: absolute;
  top: -1rem;
  left: 0;
  content: "“";
  font-size: 5.3333333333rem;
  height: 2rem;
  line-height: 1;
  font-family: "Raleway", "Helvetica Neue", sans-serif;
  font-style: normal;
}
.purple-row blockquote {
  color: #fefefe;
  margin-top: 2rem;
  margin-bottom: 2rem;
}
.purple-row blockquote p {
  color: #fefefe;
}
.purple-row blockquote:before {
  color: #fefefe;
}
.button {
  color: #fefefe;
  font-family: "Raleway", "Helvetica Neue", sans-serif;
  text-transform: uppercase;
  font-weight: 500;
  background-color: #5E2246;
  font-size: 1.2rem;
  letter-spacing: 1px;
  border-radius: 200px;
}
.button.small {
  font-size: 0.8rem;
}
.button:hover {
  background-color: #9e1c62;
}
.button.transparent {
  background-color: transparent;
  color: #5E2246;
}
.button.modern {
  font-family: "Raleway", "Helvetica Neue", sans-serif;
}
.button.border {
  border: 1px solid #5E2246;
  background-color: transparent;
  color: #5E2246;
}
.button.border:hover {
  background-color: #5E2246;
  color: #fefefe;
}
.button.no-border {
  background-color: transparent;
  border: none;
  text-transform: uppercase;
  font-style: normal;
  font-weight: 300;
  letter-spacing: 3px;
}
.button--white {
  background-color: #fefefe;
  color: #5E2246;
  border: 1px solid #fefefe;
}
.more-button {
  font-family: "Raleway", "Helvetica Neue", sans-serif;
  text-transform: uppercase;
  letter-spacing: 3px;
  font-weight: 300;
  position: relative;
  z-index: 2;
  padding-left: 3px;
}
.more-button:before {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 3rem;
  content: "";
  background-color: #e8e9ec;
  z-index: -1;
  transition: width 0.2s ease-in-out;
}
.more-button:hover:before {
  width: 7rem;
}
.more-button.no-background:before {
  display: none;
}
.more-button.purple {
  color: #5E2246;
}
.more-button.gray {
  color: #40444D;
}
.wp-block-media-text {
  display: block;
}
@media print, screen and (min-width: 40em) {
  .wp-block-media-text {
    display: grid;
  }
}
.wp-block-image {
  clear: both;
}
@media screen and (max-width: 39.99875em) {
  .wp-block-image.hide-on-mobile {
    display: none !important;
  }
}
.wp-block-gallery {
  margin: 0;
  flex-direction: column;
}
@media print, screen and (min-width: 40em) {
  .wp-block-gallery {
    flex-direction: row;
  }
}
@media print, screen and (max-width: 63.99875em) {
  .wp-block-gallery .blocks-gallery-item {
    width: initial;
    margin-right: initial;
  }
}
.invisible-separator {
  clear: both;
  visibility: hidden;
}
.alignleft {
  float: none !important;
}
@media print, screen and (min-width: 40em) {
  .alignleft {
    float: left !important;
  }
}
.alignleft:after {
  content: "";
  display: table;
  clear: both;
}
.wp-block-table thead {
  background-color: #5E2246;
}
.wp-block-table thead td {
  color: #fefefe;
}
.wp-block-table tr:nth-child(even) {
  background-color: #eadbe1;
}
.wp-block-table td:nth-child(1) {
  width: 75%;
  border-right: 2px solid #fefefe;
}
.wp-block-table td:nth-child(2) {
  width: 25%;
  text-align: right;
}
.wp-block-table td {
  color: #5E2246;
}
.steps-item {
  flex-wrap: nowrap;
}
.steps-item .wp-block-column:nth-child(1) {
  flex-basis: 30%;
  margin-right: 0;
}
.steps-item .wp-block-column:nth-child(2) {
  flex-basis: 70%;
}
@media print, screen and (min-width: 40em) {
  .steps-item .wp-block-column:nth-child(1) {
    flex-basis: 20%;
  }
  .steps-item .wp-block-column:nth-child(2) {
    flex-basis: 80%;
  }
  .small-image-left .wp-block-column:nth-child(1) {
    flex-basis: 20%;
  }
  .small-image-left .wp-block-column:nth-child(2) {
    flex-basis: 80%;
  }
  .small-image-right .wp-block-column:nth-child(2) {
    flex-basis: 20%;
  }
  .small-image-right .wp-block-column:nth-child(1) {
    flex-basis: 80%;
  }
}
.wp-block-media-text {
  margin-bottom: 1rem;
}
@media print, screen and (max-width: 39.99875em) {
  .wp-block-media-text .wp-block-media-text__content {
    padding: 1rem 8%;
  }
}
.badge {
  width: 100px;
}
@media print, screen and (min-width: 64em) {
  .badge {
    width: 150px;
  }
}
.badge.absolute {
  position: absolute;
}
.badge.rotate img {
  position: relative;
  transform: rotate(-10deg);
}
a.anchor-link {
  display: block;
  position: relative;
  top: -250px;
  visibility: hidden;
}
@media print, screen and (min-width: 64em) {
  .site-title-bar {
    display: none !important;
  }
}
.site-title-bar .title-bar-title {
  margin: 1rem auto;
  width: 8.6666666667rem;
}
@media print, screen and (min-width: 40em) {
  .site-title-bar .title-bar-title {
    width: 15%;
  }
}
.page-template-page-thankyou-mikrosite .site-title-bar {
  display: block !important;
}
.top-bar {
  position: fixed;
  background-color: rgba(254, 254, 254, 0.8);
  width: 100%;
  padding: 0 2rem;
  z-index: 9999;
  top: 0;
  height: 118px;
}
@media screen and (max-width: 63.99875em) {
  .top-bar {
    display: none !important;
  }
}
.top-bar .top-bar-left {
  flex: 0 1 auto;
  width: 150px;
  margin: 0;
}
.top-bar .top-bar-right {
  width: 100%;
  display: flex;
  justify-content: space-between;
  flex-flow: column;
  height: 70px;
}
body.logged-in .top-bar {
  top: 32px;
}
.top-bar-right ul li ul {
  display: none;
}
.mobile-menu {
  display: none;
}
.mobile-menu-toggle .fa,
.mobile-menu-toggle .fa-bars::before {
  color: #6d7584;
}
.header-contact {
  display: flex;
  justify-content: flex-end;
}
.header-contact .social-data,
.header-contact .contact-data {
  display: flex;
  list-style: none;
  justify-content: flex-end;
  margin: 0;
}
.header-contact .contact-data {
  text-align: right;
}
.header-contact .contact-data svg path {
  transition: fill 0.2s ease-in-out;
}
.header-contact .contact-data li {
  margin-right: 2rem;
}
.header-contact .contact-data li:hover svg path {
  fill: #9e1c62;
}
.header-contact .contact-data a {
  color: #6D7584;
  font-family: "Raleway", sans-serif;
  font-weight: 400;
  font-size: 1.2rem;
  font-size: clamp(1rem, 0.95rem + 0.25vw, 1.05rem);
}
.header-contact .contact-data svg {
  margin-right: 10px;
  position: relative;
  display: inline;
}
.header-contact .social-data {
  display: flex;
  margin-bottom: 0;
}
.header-contact .social-data li {
  margin-left: 10px;
}
.header-contact .social-data a {
  display: flex;
  height: 100%;
  width: 100%;
}
.header-contact .social-data a path {
  transition: fill 0.2s ease-in-out;
}
.header-contact .social-data a:hover path {
  fill: #9e1c62;
}
.header-contact .social-data svg {
  margin: auto;
}
.desktop-menu {
  list-style: none;
  display: flex;
  justify-content: flex-end;
  margin: 0;
}
.desktop-menu .menu-item {
  text-align: center;
}
.desktop-menu .menu-item.current-menu-item > a:after, .desktop-menu .menu-item.current-menu-parent > a:after {
  width: 50px;
}
.desktop-menu .menu-item a {
  padding: 0 calc(1 * (1vw + 1vh - 1vmin));
  text-transform: uppercase;
  display: block;
  transition: background-color 0.2s ease-in-out;
  color: #6d7584;
  position: relative;
  font-size: 1rem;
  font-size: clamp(1rem, 0.95rem + 0.25vw, 1.25rem);
}
.desktop-menu .menu-item a:hover {
  background-color: #5E2246;
  color: #fefefe;
}
.desktop-menu .menu-item a:after {
  position: relative;
  content: " ";
  display: block;
  background-color: #9e1c62;
  height: 1px;
  width: 0px;
  margin: 0 auto;
  top: 0.5rem;
  transition: all 0.2s ease-in-out;
}
.desktop-menu .menu-item a:hover {
  background-color: transparent;
  color: #6D7584;
}
.desktop-menu .menu-item a:hover:after {
  width: 50px;
}
.desktop-menu .is-dropdown-submenu-parent {
  position: relative;
}
.desktop-menu .is-dropdown-submenu-parent:hover .is-dropdown-submenu {
  display: block;
}
.desktop-menu .is-dropdown-submenu-parent > a {
  position: relative;
}
.desktop-menu .is-dropdown-submenu-parent .is-dropdown-submenu {
  position: absolute;
  left: 0;
  top: 100%;
  width: 300px;
  list-style: none;
  margin: 0;
  display: none;
}
.desktop-menu .is-dropdown-submenu-parent .is-dropdown-submenu a {
  padding: 0.5rem 2rem;
  display: block;
}
.splide__arrow {
  height: 100px;
  background-color: transparent;
}
.splide__arrow svg {
  height: 68px;
  width: 34px;
  position: relative;
  top: -9px;
  fill: #9e1c62;
}
.splide__arrow--prev {
  left: 0;
}
.splide__arrow--next {
  right: 0;
}
body {
  width: 100%;
  height: 100%;
}
@media print, screen and (min-width: 64em) {
  .mobile-menu-toggle {
    display: none !important;
  }
}
.mobile-menu-toggle svg {
  opacity: 0.75;
}
.slideout-menu {
  position: fixed;
  top: 0;
  bottom: 0;
  width: 256px;
  min-height: 100vh;
  overflow-y: scroll;
  -webkit-overflow-scrolling: touch;
  z-index: 0;
  display: none;
}
.slideout-menu-left {
  left: 0;
}
.slideout-menu-right {
  right: 0;
}
.slideout-panel {
  position: relative;
  z-index: 1;
  background-color: #FFF;
  /* A background-color is required */
  min-height: 100vh;
}
@media print, screen and (max-width: 63.99875em) {
  .slideout-panel {
    will-change: transform;
  }
}
.slideout-open,
.slideout-open body,
.slideout-open .slideout-panel {
  overflow: hidden;
}
.slideout-open .slideout-menu {
  display: block;
}
.slideout-panel:before {
  content: "";
  display: block;
}
.slideout-panel-open:before {
  position: absolute;
  top: 0;
  bottom: 0;
  width: 100%;
  z-index: 99;
}
#mobile-menu {
  background: #323131;
}
#site-content {
  min-height: 100vh;
}
.mobile-menu-bars {
  position: fixed;
  right: 1rem;
  top: 3rem;
  z-index: 100;
  height: 50px;
  width: 50px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-flow: column;
  background-color: rgba(254, 254, 254, 0.7);
  text-align: center;
}
@media screen and (min-width: 75em) {
  .mobile-menu-bars {
    display: none !important;
  }
}
.mobile-menu-bars span {
  height: 3px;
  width: 30px;
  background-color: rgba(64, 68, 77, 0.75);
  display: block;
  transition: all 0.2s ease-in-out;
  opacity: 1;
  margin: 0 auto;
}
.mobile-menu-bars span:nth-child(1), .mobile-menu-bars span:nth-child(2) {
  margin-bottom: 7px;
}
.mobile-menu-bars.is-open {
  background-color: transparent;
}
.mobile-menu-bars.is-open span {
  position: absolute;
  margin-bottom: 0;
  margin-left: initial;
  margin-right: initial;
  width: 32px;
  background-color: #fefefe;
}
.mobile-menu-bars.is-open span:nth-child(1) {
  transform: rotate(45deg) translateY(-50%);
  top: 26px;
  left: 8px;
  width: 33px;
}
.mobile-menu-bars.is-open span:nth-child(2) {
  transform: rotate(-45deg) translateY(-50%);
  top: 31px;
  left: 10px;
  width: 33px;
}
.mobile-menu-bars.is-open span:nth-child(3) {
  opacity: 0;
}
.mobile-menu .menu {
  margin: 0;
  padding: 1rem 1rem 6rem;
  list-style: none;
  display: grid;
}
.mobile-menu ul {
  list-style: none;
  margin-top: 3rem;
}
.mobile-menu .menu.nested {
  padding: 1rem;
}
.mobile-menu .menu-item a {
  padding: 0.5rem;
  text-transform: uppercase;
  color: #fefefe;
  display: block;
}
.footer {
  background-color: #5E2246;
}
.footer .fp-tableCell {
  padding: 0;
}
.footer .social svg {
  display: inline;
}
.footer-container {
  padding-right: 0.6666666667rem;
  padding-left: 0.6666666667rem;
  max-width: 75rem;
  margin-left: auto;
  margin-right: auto;
  padding-bottom: 3rem;
}
@media print, screen and (min-width: 40em) {
  .footer-container {
    padding-right: 1rem;
    padding-left: 1rem;
  }
}
@media print, screen and (min-width: 64em) {
  .footer-container {
    padding-bottom: 0;
  }
}
.footer-grid .informations {
  margin-bottom: 2rem;
}
@media print, screen and (min-width: 64em) {
  .footer-grid .informations {
    margin-bottom: 0;
  }
}
.footer-grid {
  padding: 2rem 0;
}
.footer-grid p {
  color: #fefefe;
}
.footer-grid h3 {
  margin-bottom: 1rem;
  font-size: 1.6rem;
}
.footer-grid h4 {
  font-size: 0.9333333333rem;
}
.footer-grid p,
.footer-grid li,
.footer-grid a {
  color: #fefefe;
}
.footer-grid .fa-ul {
  margin-left: 1.5rem;
}
.footer-copyright {
  background-color: #323131;
  padding-bottom: 5rem;
}
@media print, screen and (min-width: 64em) {
  .footer-copyright {
    padding-bottom: 0;
  }
}
.copyright-grid {
  padding: 2rem 0;
}
.copyright-grid .copyright {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 2rem;
}
@media print, screen and (min-width: 64em) {
  .copyright-grid .copyright {
    justify-content: start;
    margin-bottom: 0;
  }
}
.copyright-grid .copyright .logo {
  flex: 0 1 6.6666666667rem;
  margin-right: 1rem;
}
.copyright-grid .copyright .copyright-text {
  display: flex;
}
.copyright-grid .footer-menu {
  display: flex;
  align-items: center;
  justify-content: center;
}
@media print, screen and (min-width: 64em) {
  .copyright-grid .footer-menu {
    justify-content: flex-end;
  }
}
.copyright-grid .footer-menu ul {
  list-style: none;
}
.copyright-grid .footer-menu li {
  display: inline-block;
}
.copyright-grid .footer-menu li:not(:last-child) a {
  border-right: solid 1px #fefefe;
}
.copyright-grid .footer-menu a {
  padding: 0 1rem;
}
.copyright-grid p,
.copyright-grid li,
.copyright-grid a,
.copyright-grid ul {
  color: #fefefe;
  margin: 0;
}
.call-us {
  position: fixed;
  width: 320px;
  right: 0;
  z-index: 101;
  background-color: #fefefe;
  width: 100%;
  bottom: 0;
  background-color: #B2C90A;
  transition: all 0.2s ease, opacity 0.4s ease;
}
@media print, screen and (min-width: 64em) {
  .call-us {
    width: 320px;
    border-top-left-radius: 20px;
  }
}
.call-us:not(.ready) {
  opacity: 0;
}
.call-us.disabled {
  opacity: 0;
  visibility: hidden;
}
.call-us:before {
  content: " ";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  transition: box-shadow 0.4s ease-in-out;
  display: block;
  pointer-events: none;
}
@media print, screen and (min-width: 64em) {
  .call-us:before {
    border-top-left-radius: 20px;
  }
}
.call-us.slideup:before {
  box-shadow: 0 0 40px rgba(10, 10, 10, 0.4);
}
.call-us.active .call-us-close-button {
  opacity: 1;
}
.call-us .call-us-close-button {
  opacity: 0;
  transition: opacity 0.2s ease-in-out;
  cursor: pointer;
  display: flex;
  position: absolute;
  right: 0;
}
.call-us .call-us-close-button svg {
  margin: auto;
}
.call-us .close-button {
  opacity: 0;
  transition: opacity 0.2s ease-in-out;
  margin-right: 1rem;
  margin-top: 1.3rem;
}
.call-us .close-button.is-visible {
  opacity: 1;
}
.call-us .close-button i.fa-times {
  font-size: 1.7333333333rem;
  color: #fefefe;
  transition: color 0.2s ease-in-out;
}
.call-us .close-button i.fa-times:hover {
  color: #B2C90A;
}
.call-us #call-us-open {
  cursor: pointer;
}
.call-us .button {
  margin-right: 0;
  transition: all 0.2s ease-in-out;
  border: none;
  background-color: #9e1c62;
  width: 100%;
  padding: 0.5rem;
  border-radius: 100px;
  max-width: 13.3333333333rem;
  margin: 0 auto;
  display: block;
  font-size: 1.0666666667rem;
  font-weight: 700;
  height: 37px;
}
.call-us .button:hover {
  color: #fefefe;
  background-color: #5E2246;
}
.call-us .call-us__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.call-us .call-us__header i.fa-phone {
  font-size: 35px;
  line-height: 0;
  position: relative;
  top: 6px;
  margin-right: 15px;
}
.call-us .call-us__title {
  color: #fefefe;
  margin-bottom: 0;
  font-size: 1.3333333333rem;
  padding: 1rem;
  font-weight: 800;
  text-align: center;
  width: 100%;
  letter-spacing: 0;
}
.call-us .call-us__title svg {
  display: inline;
  margin-right: 1rem;
}
@media print, screen and (min-width: 64em) {
  .call-us .call-us__title {
    text-align: left;
  }
}
.call-us .call-us__content {
  padding: 1rem;
  display: grid;
  grid-template-columns: 1fr 2fr;
  grid-template-areas: "profile text" "form form";
  box-sizing: border-box;
}
@media print, screen and (min-width: 40em) {
  .call-us .call-us__content {
    grid-template-columns: 1fr 2fr 4fr;
    grid-template-areas: "profile text form";
  }
}
@media print, screen and (min-width: 64em) {
  .call-us .call-us__content {
    grid-template-columns: 1fr 2fr;
    grid-template-areas: "profile text" "form form";
  }
}
.call-us .call-us__image {
  grid-area: profile;
  padding-right: 1rem;
  margin-bottom: 1rem;
}
.call-us img {
  border-radius: 50%;
}
.call-us .call-us__text {
  grid-area: text;
}
.call-us .call-us__form {
  grid-area: form;
  width: 100%;
}
.call-us .call-us__text p {
  line-height: 1.3;
  font-size: 14px;
  color: #fefefe;
  margin-bottom: 0;
  font-weight: 700;
}
.call-us-overlay {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 100;
  width: 100%;
  height: 100%;
  transition: all 0.3s ease-in-out;
  opacity: 0;
  visibility: hidden;
  background-color: rgba(10, 10, 10, 0.8);
  pointer-events: none;
}
.call-us-overlay.show {
  opacity: 0.8;
  visibility: visible;
  pointer-events: all;
}
.call-us-overlay.is-active {
  opacity: 0.8;
  visibility: visible;
  pointer-events: all;
}
.page-template-mikrosite-dentalweek .call-us {
  background-color: #9e1c62;
}
.page-template-mikrosite-dentalweek .call-us .button {
  background-color: #B2C90A;
  color: #fefefe;
  font-weight: 700;
}
.page-template-mikrosite-dentalweek .call-us .button:hover {
  background-color: #B6CC00;
  border-color: #B6CC00;
}
.page-template-mikrosite-dentalweek .call-us p {
  color: #fefefe;
}
.breadcrumbs {
  color: #5E2246;
  margin-bottom: 0;
  padding-bottom: 0.7rem;
}
.breadcrumbs a {
  color: #5E2246;
}
.breadcrumbs span:not(.breadcrumb_last) a {
  text-transform: uppercase;
}
.page-header {
  padding: 1rem 3rem;
  background-color: #f7f8f8;
  display: flex;
  align-items: flex-end;
}
.page-header.with-image {
  display: grid;
  grid-column-gap: 15px;
  grid-template-columns: 1fr;
  grid-template-rows: auto 1fr;
  padding: 0;
  grid-template-areas: "image" "title";
}
@media print, screen and (min-width: 64em) {
  .page-header.with-image {
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: initial;
    grid-template-areas: "title image";
  }
}
.page-header .header-image {
  overflow: hidden;
  grid-area: image;
}
@media print, screen and (min-width: 64em) {
  .page-header .header-image {
    height: 30rem;
  }
  .page-header .header-image img {
    -o-object-fit: cover;
       object-fit: cover;
    width: 100%;
    height: 100%;
  }
}
.page-header .title-container {
  height: 100%;
  display: flex;
  justify-content: center;
  padding: 1rem;
  flex-flow: column;
  grid-area: title;
}
@media print, screen and (min-width: 64em) {
  .page-header .title-container {
    padding: 0 3rem 0 8rem;
  }
}
.page-header .title-container-gallery {
  display: flex;
}
.page-header .title-container-gallery .breadcrumbs {
  display: flex;
  align-items: flex-end;
}
.page-header h1 {
  margin-right: 2rem;
  margin-bottom: 0;
}
.thankyou-page-header {
  height: 33.3333333333rem;
}
.sidebar {
  background-color: #e8e9ec;
  padding: 2rem 1rem;
}
.sidebar .badge {
  margin-bottom: 2rem;
  width: 100%;
  display: flex;
  justify-content: space-around;
}
.sidebar .badge img {
  width: 120px;
  margin: 0 auto;
  display: block;
  margin-bottom: 1rem;
  transition: transform 0.2s ease-in-out;
}
.sidebar .badge img:hover {
  transform: scale(1.1);
}
@supports (position: sticky) {
  .sidebar .sidebar-form {
    position: sticky !important;
    width: initial !important;
  }
}
.sidebar .sidebar-banner {
  margin-bottom: 2rem;
}
.sidebar .sidebar-banner img {
  width: 100%;
}
.sidebar .sidebar-latest-posts {
  margin-bottom: 2rem;
}
.sidebar .sidebar-latest-posts .post-item {
  padding: 1rem;
  background-color: #f7f8f8;
  margin-bottom: 1rem;
}
.sidebar .sidebar-latest-posts .title {
  font-size: 1.125rem;
}
.sidebar .sidebar-latest-posts .button {
  margin-bottom: 0;
}
.sidebar .sidebar-latest-posts .image {
  margin-bottom: 1rem;
}
.sidebar .sidebar-latest-posts .content {
  padding: 0;
  margin-right: 15px;
}
.sidebar .sidebar-latest-posts .button {
  display: block;
  width: 50%;
  margin: 0 0 0 auto;
}
.sidebar .sidebar-latest-posts .text p {
  font-size: 0.875rem;
  line-height: 1.4;
  color: #40444D;
}
.TurnKeyCRM fieldset {
  background: transparent !important;
}
input[type=text] {
  box-shadow: none;
  border: none;
  border-radius: 100px;
}
textarea {
  border-radius: 20px;
}
.inputfile {
  width: 0.1px;
  height: 0.1px;
  opacity: 0;
  overflow: hidden;
  position: absolute;
  z-index: -1;
}
.inputfile + label {
  color: #fefefe;
  background-color: #fefefe;
  display: inline-block;
  cursor: pointer;
  padding: 0.4rem 1rem;
  width: 100%;
  line-height: 2;
  margin-bottom: 1rem;
  transition: background-color 0.2s ease-in-out;
  border-radius: 100px;
  font-size: 0.8rem;
  padding: 0.5rem;
  height: 37px;
  color: #575D68;
  position: relative;
}
.inputfile + label span {
  background-color: #9E1C62;
  padding: 0.5em 1em;
  color: #fefefe;
  border-radius: 1100px;
  margin-right: 0.5rem;
}
.inputfile:focus + label,
.inputfile + label:hover {
  background-color: #E5007D;
  color: #fefefe;
}
.nf-error.field-wrap .nf-field-element::after {
  top: 4px !important;
  right: 8px !important;
  height: 28px !important;
  width: 28px !important;
  line-height: 28px !important;
  border-radius: 0 !important;
}
.nf-pass.field-wrap .nf-field-element:after {
  top: 4px !important;
  right: 8px !important;
  height: 28px !important;
  width: 28px !important;
  line-height: 28px !important;
}
.nf-error-msg.nf-error-invalid-email,
.nf-error-msg.nf-error-field-errors,
.nf-error-msg.nf-error-required-error {
  background-color: #E34D34;
  color: #fefefe !important;
  padding: 0.2rem 1rem;
  font-weight: 600;
  border-radius: 0 !important;
  text-align: center;
}
.nf-error.listimage-wrap .nf-field-element ul,
.nf-error .ninja-forms-field {
  border: 1px solid #E34D34 !important;
}
.nf-error-msg.nf-error-invalid-email,
.nf-error-msg.nf-error-required-error {
  position: absolute;
  top: 0;
  z-index: 3;
  right: 0;
  transform: translate(0, -50%);
  font-size: 0.7333333333rem;
  min-width: 200px;
  filter: drop-shadow(0 2px 2px rgba(10, 10, 10, 0.25));
}
.nf-error-msg.nf-error-invalid-email::after,
.nf-error-msg.nf-error-required-error::after {
  content: "";
  display: block;
  width: 0;
  height: 0;
  border-top: 15px solid #E34D34;
  border-right: 15px solid transparent;
  position: absolute;
  right: 10px;
}
.nf-error-msg.nf-error-field-errors {
  display: none;
}
.nf-after-field .nf-error-msg {
  margin-right: 0 !important;
}
.call-us nf-field:first-child .nf-error-msg.nf-error-required-error {
  right: 3rem;
}
.Response img {
  width: 20px;
}
.ResponseError {
  background-color: #b41421;
  color: #fefefe;
  padding: 0.5rem 1rem;
  text-align: center;
  display: block;
  margin-top: 1rem;
}
.form-koztes input {
  margin-bottom: 1rem;
  border-radius: 100px;
  border: none;
  box-shadow: none;
}
.form-koztes input:focus {
  border: none;
}
.form-koztes input::-moz-placeholder {
  color: #9fa1a6;
}
.form-koztes input:-ms-input-placeholder {
  color: #9fa1a6;
}
.form-koztes input::placeholder {
  color: #9fa1a6;
}
@media print, screen and (min-width: 64em) {
  .form-koztes input {
    margin-bottom: 0;
  }
}
.form-koztes .InputBlock {
  margin-right: 1rem;
}
@media print, screen and (min-width: 64em) {
  .form-koztes .grid.col-1-3 {
    grid-template-columns: 1fr auto;
  }
}
.form-koztes input[type=Submit] {
  padding: 0.5rem;
  background-color: #9e1c62;
  line-height: 1.45;
  color: #fefefe;
  text-transform: uppercase;
  min-width: 200px;
  width: 100%;
  font-weight: 700;
  max-width: 200px;
  display: block;
  margin: 0 auto;
  font-size: 1.0666666667rem;
}
.form-koztes input[type=Submit]:hover {
  background-color: #5E2246;
}
/**************************\
  Basic Modal Styles
\**************************/
.modal {
  font-family: -apple-system, BlinkMacSystemFont, avenir next, avenir, helvetica neue, helvetica, ubuntu, roboto, noto, segoe ui, arial, sans-serif;
}
.modal__overlay {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(10, 10, 10, 0.9);
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 9999999;
}
.modal__container {
  background-color: #fff;
  padding: 30px;
  max-height: 100vh;
  border-radius: 4px;
  overflow-y: auto;
  box-sizing: border-box;
}
.modal__container.instagram__container {
  max-width: 500px;
}
.modal__header {
  display: flex;
  justify-content: flex-end;
  align-items: center;
}
.modal__title {
  margin-top: 0;
  margin-bottom: 0;
  font-weight: 600;
  font-size: 1.25rem;
  line-height: 1.25;
  color: #00449e;
  box-sizing: border-box;
}
.modal__close {
  background: transparent;
  border: 0;
  cursor: pointer;
}
.modal__header .modal__close:before {
  content: "✕";
}
.modal__content {
  margin-top: 2rem;
  margin-bottom: 2rem;
  line-height: 1.5;
  color: rgba(0, 0, 0, 0.8);
}
.modal__content .post-data {
  max-width: 640px;
}
.modal__content .likes, .modal__content .comments, .modal__content .follow {
  display: inline-block;
  color: #9e1c62;
  padding: 1rem 0;
}
.modal__content .likes, .modal__content .comments {
  margin-right: 1rem;
}
/**************************\
  Demo Animation Style
\**************************/
@keyframes mmfadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes mmfadeOut {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
@keyframes mmslideIn {
  from {
    transform: translateY(15%);
  }
  to {
    transform: translateY(0);
  }
}
@keyframes mmslideOut {
  from {
    transform: translateY(0);
  }
  to {
    transform: translateY(-10%);
  }
}
.micromodal-slide {
  display: none;
}
.micromodal-slide.is-open {
  display: block;
}
.micromodal-slide[aria-hidden=false] .modal__overlay {
  animation: mmfadeIn 0.3s cubic-bezier(0, 0, 0.2, 1);
}
.micromodal-slide[aria-hidden=false] .modal__container {
  animation: mmslideIn 0.3s cubic-bezier(0, 0, 0.2, 1);
}
.micromodal-slide[aria-hidden=true] .modal__overlay {
  animation: mmfadeOut 0.3s cubic-bezier(0, 0, 0.2, 1);
}
.micromodal-slide[aria-hidden=true] .modal__container {
  animation: mmslideOut 0.3s cubic-bezier(0, 0, 0.2, 1);
}
.micromodal-slide .modal__container,
.micromodal-slide .modal__overlay {
  will-change: transform;
}
[data-whatinput=mouse] a:focus, button:focus [data-whatinput=touch] a:focus,
button:focus {
  outline: none;
}
.anchor {
  display: block;
  visibility: hidden;
  position: relative;
  top: 100px;
}
@media print, screen and (min-width: 40em) {
  .anchor {
    top: -100px;
  }
}
.price-check {
  background-color: #a8bc0d;
  position: relative;
}
.price-check:after {
  content: " ";
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  position: absolute;
  background-color: #a8bc0d;
  z-index: 1;
  display: block;
}
@media print, screen and (min-width: 64em) {
  .price-check:after {
    display: none;
  }
  .price-check {
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
  }
}
.price-check .InputBlock {
  margin-bottom: 1rem;
}
.price-check .image-container {
  position: relative;
  z-index: 2;
}
@media print, screen and (min-width: 64em) {
  .price-check .image-container {
    display: none !important;
  }
}
.price-check .image-container img {
  width: 100%;
}
.price-check .text-container {
  display: flex;
  flex-flow: column;
  padding: 2rem;
  position: relative;
  z-index: 2;
}
@media print, screen and (min-width: 64em) {
  .price-check .text-container {
    width: 50%;
    padding-right: 10%;
  }
}
.price-check .text-container.full-width {
  width: 100%;
  justify-content: center;
}
.price-check .text-container-inner {
  width: 100%;
}
.price-check p {
  color: #fefefe;
}
.price-check textarea,
.price-check input[type=text] {
  background-color: #fefefe;
  border: none;
  box-shadow: none;
}
.price-check textarea {
  border-radius: 15px;
}
.price-check input[type=text] {
  border-radius: 100px;
}
.price-check input[type=Submit] {
  background-color: #9E1C62;
  color: #fefefe;
  padding: 0.5rem;
  width: 100%;
  cursor: pointer;
  border: none;
  transition: background-color 0.2s ease-in-out;
  text-transform: uppercase;
  border-radius: 100px;
  height: 37px;
}
.price-check input[type=Submit]:hover {
  background-color: #5E2246;
  color: #fefefe;
}
.price-check .fieldset {
  display: flex;
  flex-wrap: wrap;
  padding: 0;
  border: none;
  margin-bottom: 0;
}
.price-check .fieldset-inner {
  flex-wrap: wrap;
  width: 100%;
  flex: 1 0 calc(50% - 1rem);
  margin-right: 1rem;
  align-items: flex-start;
}
@media print, screen and (max-width: 39.99875em) {
  .price-check .fieldset-inner {
    flex: 1 0 100%;
  }
}
.price-check .InputBlock {
  width: 100%;
}
.price-check .inputfile:focus + label {
  background-color: #5E2246;
  border: 1px solid #5E2246;
  color: #fefefe;
}
.price-check textarea {
  height: 142px;
}
.price-check.block-item {
  background-color: #B6CC00;
  margin-bottom: 1rem;
  display: flex;
  flex-direction: column;
}
@media print, screen and (min-width: 64em) {
  .price-check.block-item {
    flex-direction: row;
  }
}
.price-check.block-item .paragraph-title {
  font-size: 1.2rem;
}
.price-check.block-item .image-container {
  flex: 1 1 40%;
  display: block !important;
}
.price-check.block-item .image-container img {
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  height: 100%;
}
.maps-container {
  position: relative;
  padding-bottom: 75%;
  height: 0;
  overflow: hidden;
  max-width: 100%;
}
@media print, screen and (min-width: 64em) {
  .maps-container {
    padding-bottom: 25%;
  }
}
.maps-container embed,
.maps-container iframe,
.maps-container object {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.latest-posts {
  padding: 3rem 0;
  background-color: #E0E2E5;
}
.latest-posts .latest-posts-carousel-wrapper {
  min-width: 100%;
}
@media print, screen and (min-width: 64em) and (max-width: 74.99875em) {
  .latest-posts .latest-posts-carousel-wrapper {
    padding: 0 3rem;
  }
}
.latest-posts .owl-carousel .owl-stage {
  display: flex;
}
.latest-posts .owl-carousel .owl-item {
  display: flex;
  flex: 1 0 auto;
}
.latest-posts .owl-nav {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: -2rem;
  right: -2rem;
  display: flex;
  justify-content: space-between;
}
.latest-posts .owl-nav i {
  font-size: 2.6666666667rem;
}
.latest-posts .owl-stage-outer {
  padding: 1rem 0;
}
.latest-posts .owl-dots {
  text-align: center;
  padding: 1rem 0;
}
.latest-posts .owl-dots span {
  width: 10px;
  height: 10px;
  background-color: #A6ABB5;
  display: block;
  margin: 0.4rem;
  border-radius: 50%;
}
.latest-posts .owl-dots .owl-dot.active span {
  background-color: #5E2246;
}
.latest-posts .slide-item {
  border-radius: 15px;
  overflow: hidden;
  box-shadow: 0px 0px 10px rgba(64, 68, 77, 0.2);
}
.latest-posts .slide-item a {
  color: #40444D;
  height: 100%;
  display: flex;
  flex-flow: column;
}
.latest-posts .slide-item .image {
  height: 210px;
}
.latest-posts .slide-item .image img {
  -o-object-fit: cover;
     object-fit: cover;
  height: 100%;
  width: 100%;
}
.latest-posts .slide-item .content {
  display: flex;
  flex-flow: column;
  padding: 1rem;
  background-color: #fefefe;
  text-align: right;
  flex: 1 1 auto;
}
.latest-posts .slide-item .text,
.latest-posts .slide-item .title {
  text-align: left;
}
.latest-posts .slide-item .button {
  border: 1px solid #6D7584;
  border-radius: 0;
  color: #40444D;
  margin-bottom: 0;
  display: inline-block;
  margin: auto 0 0 auto;
}
.latest-posts .slide-item .button:hover {
  background-color: #6D7584;
  color: #fefefe;
}
#breaking-popup {
  z-index: 9999999;
  position: fixed;
  display: none;
}
#breaking-popup .breaking-popup-wrapper {
  background-color: #fefefe;
  padding: 30px;
  top: 50%;
  left: 50%;
  width: 90%;
  position: fixed;
  transform: translate(-50%, -50%);
  z-index: 99999999;
}
@media print, screen and (min-width: 64em) {
  #breaking-popup .breaking-popup-wrapper {
    width: 800px;
  }
}
#breaking-popup h1, #breaking-popup h2 {
  color: #111111;
}
#breaking-popup .breaking-popup-wrapper p {
  line-height: 1.3;
}
#breaking-popup .breaking-popup-wrapper a {
  font-weight: bold;
}
#breaking-popup .close-button {
  background-color: transparent;
  border: none;
  position: absolute;
  top: 1rem;
  right: 1rem;
  cursor: pointer;
}
#breaking-popup .close-button:focus {
  border: none;
  outline: none;
}
#breaking-popup .close-button svg {
  fill: #111111;
}
#breaking-popup .breaking-popup-overlay {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 9;
  background-color: rgba(0, 0, 0, 0.8);
}
.contact-bar {
  width: 100%;
  position: fixed;
  bottom: 0;
  z-index: 1000000;
}
@media print, screen and (min-width: 64em) {
  .contact-bar {
    top: 25%;
    left: 0;
    width: initial;
    bottom: initial;
  }
}
.contact-bar::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  background-image: linear-gradient(94.33deg, #ff6962 -11.72%, #ca0b72 109.03%);
  z-index: -1;
  transition: all 0.3s ease-in-out;
}
@media screen and (max-width: 63.99875em) {
  .contact-bar::after {
    display: none !important;
  }
}
@media print, screen and (min-width: 64em) {
  .contact-bar::after {
    top: 0;
    bottom: initial;
    border-top-right-radius: 15px;
    border-bottom-right-radius: 15px;
  }
}
@media print, screen and (max-width: 63.99875em) {
  .contact-bar .buttons-wrapper {
    background-image: linear-gradient(94.33deg, #ff6962 -11.72%, #ca0b72 109.03%);
  }
}
@media print, screen and (min-width: 64em) {
  .contact-bar .buttons-wrapper {
    overflow: hidden;
  }
}
@media print, screen and (max-width: 63.99875em) {
  .contact-bar h2 {
    font-size: 1.6rem;
    font-weight: 700;
  }
}
@keyframes moveLeft {
  0% {
    right: 0;
    opacity: 1;
  }
  100% {
    right: 100px;
    opacity: 0;
  }
}
@keyframes moveLeftBack {
  0% {
    right: 100px;
    opacity: 0;
  }
  100% {
    right: 0;
    opacity: 1;
  }
}
@keyframes moveRight {
  0% {
    left: 0;
    opacity: 1;
  }
  100% {
    left: 100px;
    opacity: 0;
  }
}
@keyframes moveRightBack {
  0% {
    left: 100px;
    opacity: 0;
  }
  100% {
    left: 0;
    opacity: 1;
  }
}
.contact-bar .icons-left {
  position: relative;
  animation: moveLeftBack 0.3s forwards ease-in-out;
}
.contact-bar .icons-right {
  animation: moveLeftBack 0.3s forwards ease-in-out;
  position: relative;
}
.contact-bar li {
  transition: opacity 0.3s ease-in-out, transform 0.15s ease-in-out;
  margin: 0 0.25rem;
}
@media print, screen and (min-width: 64em) {
  .contact-bar li {
    margin: 0;
  }
  .contact-bar li:hover {
    transform: scale(1.15);
  }
  .contact-bar li,
.contact-bar button {
    margin-bottom: 10px;
  }
}
.contact-bar fieldset {
  margin-bottom: 2rem;
}
@media print, screen and (max-width: 63.99875em) {
  .contact-bar .Response {
    position: absolute;
    top: -5rem;
  }
}
.contact-bar .ResponseError {
  margin: 0;
  overflow: hidden;
  border-radius: 100px;
  background-color: #ff0000;
}
.contact-bar .divider {
  background-color: #fefefe;
  width: 1px;
  top: 1rem;
  bottom: 1rem;
  position: absolute;
  left: 100%;
  opacity: 0;
  transition: opacity 0.3s ease-in-out;
}
@media screen and (max-width: 63.99875em) {
  .contact-bar .divider {
    display: none !important;
  }
}
.contact-bar .form-overflow {
  position: absolute;
  left: 0;
  height: 220px;
  top: 0;
  width: 100%;
  z-index: -1;
  transition: top 0.3s ease-in-out;
}
@media print, screen and (max-width: 63.99875em) {
  .contact-bar .form-overflow {
    pointer-events: none;
    background-image: linear-gradient(94.33deg, #ff6962 -11.72%, #ca0b72 109.03%);
  }
}
@media print, screen and (min-width: 64em) {
  .contact-bar .form-overflow {
    overflow: hidden;
    transition: width 0.3s ease-in-out;
    width: 0;
    bottom: initial;
    height: initial;
    top: 1rem;
    left: calc(100% + 1rem);
    z-index: initial;
  }
}
.contact-bar .form-wrapper {
  width: 100%;
  opacity: 0;
  transition: opacity 0.3s ease-in-out;
  padding-top: 0.5rem;
}
@media print, screen and (min-width: 64em) {
  .contact-bar .form-wrapper {
    padding-top: initial;
    width: 240px;
  }
}
.contact-bar input {
  height: initial;
  background-color: rgba(254, 254, 254, 0.8);
  margin-bottom: 0;
}
@media print, screen and (min-width: 64em) {
  .contact-bar input {
    margin-bottom: 0.5rem;
  }
}
.contact-bar input:focus {
  border: none;
}
.contact-bar input[type=text] {
  height: 40px;
}
.contact-bar input::-moz-placeholder {
  color: #ed4372;
  font-size: 1.0666666667rem;
  font-weight: 400;
}
.contact-bar input:-ms-input-placeholder {
  color: #ed4372;
  font-size: 1.0666666667rem;
  font-weight: 400;
}
.contact-bar input::placeholder {
  color: #ed4372;
  font-size: 1.0666666667rem;
  font-weight: 400;
}
.contact-bar .InputBlock {
  margin-bottom: 1rem;
}
@media print, screen and (min-width: 64em) {
  .contact-bar .InputBlock {
    margin-bottom: 0;
  }
}
.contact-bar .contact-button-wrapper {
  width: 100%;
  padding-right: 5px;
}
@media print, screen and (min-width: 64em) {
  .contact-bar .contact-button-wrapper {
    width: initial;
    margin-bottom: 10px;
    padding-right: initial;
  }
}
.contact-bar .contact-button {
  transition: background-color 0.3s ease-in-out;
  line-height: 2.4;
  height: 40px;
  width: 100%;
}
@media print, screen and (min-width: 64em) {
  .contact-bar .contact-button {
    height: 176px;
    margin: 0;
  }
}
.contact-bar .contact-button:hover {
  background-color: #B6CC00;
}
.contact-bar .contact-button:hover span {
  color: #fefefe;
}
.contact-bar .mobile-form-button {
  transition: all 0.3s ease-in-out;
}
.contact-bar .submit-button {
  background-color: #fefefe;
  color: #ed4372;
  display: none;
  font-weight: 700;
  text-transform: uppercase;
  width: 100%;
  cursor: pointer;
  transition: background-color 0.3s ease-in-out;
}
@media print, screen and (min-width: 64em) {
  .contact-bar .submit-button {
    display: block;
  }
}
.contact-bar .submit-button:hover {
  background-color: #B6CC00;
  color: #fefefe;
}
.contact-bar .submit-button-mobile {
  margin: 0 auto;
  background-color: #fefefe;
  color: #ed4372;
  font-weight: 700;
  text-transform: uppercase;
  cursor: pointer;
  transition: background-color 0.3s ease-in-out;
  height: 40px !important;
}
@media print, screen and (min-width: 64em) {
  .contact-bar .submit-button-mobile {
    display: none !important;
  }
}
.contact-bar input,
.contact-bar .submit-button {
  font-size: 1.1333333333rem;
  padding: 0.5rem 1rem;
  border-radius: 200px;
  line-height: 1.2;
}
.contact-bar.is-opened::after {
  height: 285px;
}
@media print, screen and (min-width: 64em) {
  .contact-bar.is-opened::after {
    height: 100%;
    width: calc(100% + 240px + 2rem);
  }
  .contact-bar.is-opened li {
    opacity: 0.6;
  }
}
.contact-bar.is-opened .form-overflow {
  width: 100%;
  top: -220px;
  pointer-events: all;
}
@media print, screen and (min-width: 64em) {
  .contact-bar.is-opened .form-overflow {
    height: initial;
    top: 1rem;
    width: 240px;
  }
}
.contact-bar.is-opened .divider,
.contact-bar.is-opened .form-wrapper {
  opacity: 1;
}
.contact-bar.is-opened .contact-button-wrapper {
  flex: 1 0 100%;
}
.contact-bar.is-opened .mobile-form-button {
  right: 1rem;
  position: absolute;
  left: 1rem;
  top: 50%;
  transform: translateY(-50%);
}
.contact-bar.is-opened .icons-left,
.contact-bar.is-opened .icons-right {
  transition: margin 0.3s ease-in-out;
}
@media print, screen and (max-width: 63.99875em) {
  .contact-bar.is-opened .icons-left {
    animation: moveLeft 0.3s forwards ease-in-out;
  }
  .contact-bar.is-opened .icons-right {
    animation: moveLeft 0.3s forwards ease-in-out;
  }
}
.contact-bar-overlay {
  background-color: rgba(10, 10, 10, 0.8);
  position: fixed;
  z-index: 100000;
  top: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  opacity: 0;
  transition: opacity 0.3s ease-in-out;
}
.contact-bar.is-opened + .contact-bar-overlay {
  opacity: 1;
  pointer-events: all;
}
.offer small {
  margin-top: 1rem;
  display: block;
}
.offer hr {
  max-width: initial;
  background-image: linear-gradient(90deg, #fff, #fff 65%, transparent 0, transparent);
  background-size: 20px 1px;
  border: none;
  height: 1px;
}
td[data-row-index="0"] {
  border-top-left-radius: 15px;
  border-top-right-radius: 15px;
  border-bottom: 3px solid #fff !important;
}
tr.wpdt-cell-row:last-child td {
  border-bottom-left-radius: 15px;
  border-bottom-right-radius: 15px;
}
td[data-col-index="0"] {
  width: 100px !important;
  border-right-color: none !important;
}
@media print, screen and (min-width: 40em) {
  td[data-col-index="0"] {
    width: 200px !important;
  }
}
td[data-col-index="0"].merged-cell {
  width: initial !important;
}
.page-template-front .main-grid {
  overflow: hidden;
}
@media print, screen and (min-width: 64em) {
  .site-front-header {
    height: 100vh;
  }
}
.site-front-header .front-page-rotator {
  overflow: hidden;
  height: 100%;
}
.site-front-header .splide__track,
.site-front-header .splide__list,
.site-front-header .splide__slide {
  height: 100%;
}
.site-front-header .splide__pagination {
  bottom: 3rem;
}
.site-front-header .slide-item {
  height: 100%;
}
.site-front-header .video-content {
  position: relative;
  display: flex;
  align-items: center;
}
@media print, screen and (min-width: 64em) {
  .site-front-header .video-content {
    overflow: hidden;
  }
}
.site-front-header .video-content::after {
  content: " ";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-image: linear-gradient(90deg, rgba(94, 34, 70, 0) 0%, #5e2246 100%);
  z-index: 5;
  pointer-events: none;
}
@media screen and (max-width: 63.99875em) {
  .site-front-header .video-content::after {
    display: none !important;
  }
}
@media print, screen and (min-width: 64em) {
  .site-front-header .video-content {
    height: 100%;
  }
}
.site-front-header .video-content a,
.site-front-header .video-content img {
  width: 100%;
}
.site-front-header .video-content video {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: top center;
     object-position: top center;
}
.site-front-header .video-content .pause-button {
  position: absolute;
  top: 9rem;
  right: 2rem;
  color: rgba(254, 254, 254, 0.5);
}
@media screen and (max-width: 63.99875em) {
  .site-front-header .video-content .pause-button {
    display: none !important;
  }
}
.site-front-header .video-content .pause-button #pause-button {
  cursor: pointer;
  font-size: 2rem;
}
.site-front-header .text {
  background-image: linear-gradient(129.7deg, #7e1f54 0%, #5e2246 100%);
  border-radius: 15px;
  top: -2rem;
}
@media print, screen and (min-width: 64em) {
  .site-front-header .text {
    background-image: none;
    max-width: 33.3333333333rem;
    top: 50%;
    transform: translateY(-50%);
    right: 25%;
  }
}
.site-front-header .text h1 {
  line-height: 1.2;
}
.site-front-header .text ul {
  position: relative;
  margin-left: 3rem;
  margin-bottom: 2rem;
}
.site-front-header .text svg {
  position: absolute;
  left: -3rem;
  top: -0.5rem;
}
@media print, screen and (min-width: 64em) {
  .site-front-header .text svg {
    top: -0.5rem;
  }
}
@media screen and (min-width: 90em) {
  .site-front-header .text svg {
    top: initial;
  }
}
.site-front-header .text .button {
  background-image: linear-gradient(130deg, #ff6962 0%, #ca0b72 100%);
  font-size: 1.2rem;
  padding: 0.7rem 2rem;
  text-align: center;
  width: 100%;
  border-radius: 200px;
  text-transform: unset;
  font-weight: 600;
}
@media print, screen and (min-width: 64em) {
  .site-front-header .text .button {
    display: inline !important;
    font-size: 1.3333333333rem;
  }
}
@media screen and (min-width: 90em) {
  .site-front-header .text .button {
    font-size: 1.6rem;
  }
}
.site-front-header .text .button:hover {
  color: #fefefe;
  background-color: #ed4372;
}
.site-front-header .badge-wrapper {
  z-index: 10;
}
@media print, screen and (min-width: 64em) {
  .site-front-header .badge-wrapper {
    padding-top: 0;
    position: absolute;
    right: 0;
    top: 11rem;
  }
}
@media screen and (min-width: 90em) {
  .site-front-header .badge-wrapper {
    top: 11rem;
  }
}
.site-front-header .badge-wrapper .badge {
  width: 100%;
}
@media print, screen and (min-width: 64em) {
  .site-front-header .badge-wrapper .badge {
    width: 280px;
  }
}
@media screen and (min-width: 90em) {
  .site-front-header .badge-wrapper .badge {
    width: 380px;
  }
}
.site-front-header .form {
  background-color: rgba(182, 204, 0, 0.8);
  z-index: 10;
}
.site-front-header .form form {
  display: flex;
  align-items: center;
}
.site-front-header .form .button {
  border-radius: 200px;
  display: block;
  width: 100%;
}
.site-front-header .form input {
  margin-bottom: 0;
  padding: 0.3rem 1rem;
  line-height: 1.55;
  border: none;
  font-size: 1.2rem;
}
@media print, screen and (min-width: 64em) {
  .site-front-header fieldset {
    display: flex;
    width: 100%;
    gap: 1rem;
  }
}
.site-front-header .InputBlock {
  flex: 1 0 calc(25% - 1rem);
}
.site-front-header .form-content {
  position: relative;
  z-index: 2;
}
@media print, screen and (max-width: 63.99875em) {
  .site-front-header .InputBlock {
    margin-bottom: 1rem;
  }
}
.dentalweek-header {
  height: 100%;
}
.dentalweek-header .bg-image {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  width: 100%;
  height: 100%;
}
.dentalweek-header .logo {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 26.6666666667rem;
}
.dental-logo {
  margin: 0 auto;
  position: absolute;
  display: flex;
  flex-flow: column;
  align-items: center;
  top: 40%;
  left: 50%;
  transform: translate(-50%, -50%);
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) and (min-width: 1024px) {
  .dental-logo {
    top: auto;
  }
}
.dental-logo img {
  width: 70% !important;
}
@media print, screen and (min-width: 40em) {
  .dental-logo img {
    width: 384px !important;
  }
}
.dental-logo .button-interested {
  padding: 0.5rem 1rem;
  text-decoration: none;
  margin-top: 1rem;
  font-family: "Roboto Slab", serif;
  cursor: pointer;
  position: relative;
  z-index: 9999999;
  border: 2px solid #7d2659;
  color: #7d2659;
}
@media print, screen and (min-width: 40em) {
  .dental-logo .button-interested {
    color: #fefefe;
    border: 2px solid #fefefe;
  }
}
.item {
  position: relative;
}
@media print, screen and (max-width: 39.99875em) {
  .item {
    background-image: none !important;
  }
}
.item .desktop-image {
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  height: 100%;
}
@media screen and (max-width: 63.99875em) {
  .item .desktop-image {
    display: none !important;
  }
}
@media print, screen and (min-width: 64em) {
  .item .mobile-image {
    display: none !important;
  }
}
.item .title-container {
  padding: 1rem 1rem 3rem;
  position: relative;
}
@media print, screen and (min-width: 64em) {
  .item .title-container.dental-week-title {
    display: none !important;
  }
  .item .title-container {
    width: 100%;
    max-width: 1200px;
    position: absolute;
    bottom: 13rem;
    left: 50%;
    transform: translateX(-50%);
    padding: 0 2rem;
  }
}
@media screen and (min-width: 75em) {
  .item .title-container {
    width: 1200px;
  }
}
@media print, screen and (min-width: 64em) {
  .item .title-container .title-container-inner {
    width: 500px;
  }
}
.item .title-container h2,
.item .title-container h3 {
  color: #5E2246;
}
.item .title-container h1,
.item .title-container h2 {
  font-size: 22px;
  line-height: 1.3;
  margin-bottom: 1rem;
}
@media print, screen and (min-width: 64em) {
  .item .title-container h1,
.item .title-container h2 {
    font-size: 32px;
  }
}
.item .title-container h3 {
  font-size: 16px;
  margin-bottom: 1rem;
}
.item .button {
  text-decoration: none;
  background-color: #5E2246;
}
.item .button:hover {
  background-color: #7d2659;
}
.item .badge {
  z-index: 100;
}
.item.number-1 .badge {
  top: 1rem;
  right: 1rem;
}
@media print, screen and (min-width: 64em) {
  .item.number-1 .badge {
    top: initial;
    bottom: 25rem;
    right: 8%;
  }
}
.item.number-2 .badge {
  left: 1rem;
  top: 1rem;
}
@media print, screen and (min-width: 64em) {
  .item.number-2 .badge {
    left: initial;
    top: initial;
    right: 8%;
    bottom: 10rem;
  }
}
.item.number-3 .badge {
  top: 1rem;
  right: 1rem;
}
@media print, screen and (min-width: 64em) {
  .item.number-3 .badge {
    top: initial;
    right: 10%;
    bottom: 14rem;
  }
}
.frontpage-form {
  padding: 2rem 0;
  margin-bottom: 0;
  background-color: transparent;
  background-color: rgba(178, 201, 10, 0.8);
}
@media print, screen and (min-width: 64em) {
  .frontpage-form {
    position: absolute;
    z-index: 2;
    bottom: 0;
    width: 100%;
  }
}
.frontpage-form .InputBlock {
  float: left;
  box-sizing: border-box;
  width: 100%;
  height: 38px;
}
@media print, screen and (min-width: 64em) {
  .frontpage-form .InputBlock {
    width: 25%;
    padding: 0 0.5rem;
  }
}
.frontpage-form .row {
  max-width: 62.5rem;
  margin: 0 auto;
}
.frontpage-form .form-wrapper {
  display: flex;
}
.frontpage-form h2 {
  font-weight: 800;
  color: #fefefe;
  margin-bottom: 0;
  position: relative;
  top: -3px;
}
.frontpage-form h3 {
  text-transform: uppercase;
  line-height: 42px;
  text-align: left;
  font-size: 1.1rem;
  line-height: 1.3;
  color: #40444D;
}
@media print, screen and (min-width: 40em) {
  .frontpage-form h3 {
    color: #fefefe;
  }
}
.frontpage-form .medium-8 {
  padding: 0;
}
.frontpage-form input {
  margin-right: 1rem;
}
.frontpage-form input[type=text],
.frontpage-form input[type=email],
.frontpage-form input[type=tel] {
  background-color: rgba(254, 254, 254, 0.9);
  border: none;
  color: #40444d;
  border-radius: 100px;
}
@media print, screen and (min-width: 64em) {
  .frontpage-form input[type=text],
.frontpage-form input[type=email],
.frontpage-form input[type=tel] {
    margin-bottom: 0;
  }
}
.frontpage-form input[type=text]::-moz-placeholder, .frontpage-form input[type=email]::-moz-placeholder, .frontpage-form input[type=tel]::-moz-placeholder {
  color: #6D7584;
}
.frontpage-form input[type=text]:-ms-input-placeholder, .frontpage-form input[type=email]:-ms-input-placeholder, .frontpage-form input[type=tel]:-ms-input-placeholder {
  color: #6D7584;
}
.frontpage-form input[type=text]::placeholder,
.frontpage-form input[type=email]::placeholder,
.frontpage-form input[type=tel]::placeholder {
  color: #6D7584;
}
.frontpage-form input[type=text]:focus,
.frontpage-form input[type=email]:focus,
.frontpage-form input[type=tel]:focus {
  box-shadow: none;
  background-color: #fefefe;
}
.frontpage-form input[type=text]:hover,
.frontpage-form input[type=email]:hover,
.frontpage-form input[type=tel]:hover {
  background-color: #fefefe;
}
.frontpage-form input[type=Submit] {
  width: 100%;
  padding: 0.4rem 0;
}
.frontpage-form .forms .columns {
  padding: 0.2rem;
}
.frontpage-form .forms {
  flex: 1 0 auto;
}
.frontpage-form .button {
  background-color: transparent;
  margin-right: 0;
  height: 37px;
  transition: all 0.2s ease-in-out;
  border: 1px solid #6D7584;
  background-color: #6D7584;
  border-radius: 100px;
  font-weight: 800;
}
@media print, screen and (min-width: 64em) {
  .frontpage-form .button {
    margin-bottom: 0;
  }
}
.frontpage-form .button:hover {
  border: 1px solid #5E2246;
  color: #fefefe;
  background-color: #5E2246;
}
.micro-slider {
  height: 100%;
}
.micro-slider .home-slider,
.micro-slider .owl-stage-outer,
.micro-slider .owl-stage,
.micro-slider .owl-item,
.micro-slider .slide-item,
.micro-slider .slide-container {
  height: 100%;
}
.preface {
  padding: 3rem 0;
  max-width: 100%;
  position: relative;
  z-index: 1;
  background-color: rgba(109, 117, 132, 0.85);
}
.preface p {
  color: #fefefe;
}
.preface .preface-text {
  margin-bottom: 2rem;
}
.preface .preface-text p {
  line-height: 1.8;
  font-size: 16px;
}
.preface .preface-list {
  margin: 0;
}
.preface .preface-list .preface-item {
  list-style: none;
  margin-bottom: 3rem;
  position: relative;
}
@media print, screen and (min-width: 40em) {
  .preface .preface-list .preface-item {
    margin-bottom: 1.5rem;
  }
}
.preface .preface-list .preface-item .text {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  padding-left: 80px;
}
.preface .preface-list .preface-item .image {
  width: 50px;
  height: 50px;
  border-radius: 50%;
  display: block;
  float: left;
  overflow: hidden;
}
.preface .preface-list .preface-item .image img {
  width: 50px;
}
.about {
  padding: 4rem 0;
}
.about .row:hover .image-container img {
  filter: grayscale(0%);
}
.about .row.rosa {
  margin-bottom: 3rem;
}
.about .text-container,
.about .image-container {
  position: relative;
}
.about .image-container {
  padding: 0 1rem;
  box-sizing: border-box;
}
.about .image-container h2 {
  font-size: 30px;
  line-height: 1.2;
  margin-bottom: 3rem;
  text-align: center;
}
.about .image-container img {
  display: block;
  margin: 0 auto;
  margin-bottom: 1rem;
  transition: filter 0.2s ease-in-out;
}
@media print, screen and (min-width: 64em) {
  .about .image-container img {
    filter: grayscale(100%);
  }
}
.about .image-container .title {
  text-align: center;
  margin-bottom: 2rem;
}
.about .image-container .title p:nth-child(1) {
  font-weight: 400;
  font-size: 20px;
  text-transform: uppercase;
}
.about .image-container .title p:nth-child(2),
.about .image-container .title p:nth-child(3) {
  font-weight: 600;
  margin-bottom: 0;
}
.about .image-container .title.gunnar p {
  text-align: center;
}
.about .text-container {
  padding: 0 1rem;
}
.holiday .holiday-header {
  padding: 2rem 0;
}
.holiday .holiday-title {
  text-align: center;
  text-transform: uppercase;
}
.holiday .holiday-lead p {
  font-size: 16px;
  line-height: 28px;
}
.holiday .holiday-content {
  display: grid;
  padding: 0 0 2rem;
}
.holiday .holiday-content .col {
  margin-bottom: 2rem;
}
.holiday .holiday-content .header .image {
  margin-bottom: 1rem;
}
.holiday .holiday-content .header .image img {
  width: 50%;
  margin: 0 auto;
  display: block;
}
@media print, screen and (min-width: 40em) {
  .holiday .holiday-content {
    grid-column-gap: 30px;
    -ms-grid-columns: 1fr 30px 1fr 30px 1fr;
    grid-template-columns: repeat(3, 1fr);
  }
  .holiday .holiday-content:nth-child(2) {
    -ms-grid-column: 2;
  }
  .holiday .holiday-content:nth-child(3) {
    -ms-grid-column: 3;
  }
  .holiday .holiday-content .col {
    margin-bottom: initial;
  }
}
.ajanlat {
  padding: 3rem 0;
  background: linear-gradient(149.85deg, #7e1f54 0%, #5e2246 55.21%), url("../assets/budapest/md_relax-contact-bg.jpg"), #f5f6f7;
  background-blend-mode: normal, multiply, color, normal, normal;
}
@media print, screen and (min-width: 64em) {
  .ajanlat {
    padding: 6rem 0;
  }
}
.ajanlat__card .paragraph-title {
  font-size: 1.2rem;
}
.ajanlat__card img {
  display: block;
  margin: 0 auto;
}
.ajanlat__card p {
  max-width: 40ch;
  margin: 0 auto;
}
.ajanlat__header {
  margin-bottom: 1rem;
}
.ajanlat p {
  color: #fefefe;
}
.ajanlat strong {
  color: #fefefe;
  font-weight: 800;
}
.ajanlat a {
  color: #81cff4;
  font-weight: 800;
}
.ajanlat .price-list th span {
  display: block;
}
.ajanlat .line {
  height: 1px;
  border-top: dashed 1px #fefefe;
  margin: 2rem;
}
@media print, screen and (min-width: 64em) {
  .ajanlat .line {
    display: none !important;
  }
  .ajanlat .offer-1 {
    padding: 0 4rem;
  }
}
.ajanlat table {
  table-layout: auto !important;
}
.ajanlat .wpDataTablesWrapper table.has-columns-hidden span.responsiveExpander {
  opacity: 1 !important;
  background-image: none !important;
  border: none !important;
  box-shadow: none !important;
}
.ajanlat table.has-columns-hidden > tbody > tr > td > span.responsiveExpander:after {
  background-image: none !important;
  content: "+" !important;
  color: #fefefe;
  border: none !important;
  box-shadow: none;
  width: 25px;
  height: 25px;
  border-radius: 100%;
  background-color: #a8bc0e;
  font-size: 40px;
  text-align: center;
  font-family: "Raleway", "Helvetica Neue", sans-serif;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  line-height: 0.65;
}
.ajanlat table.has-columns-hidden > tbody > tr.detail-show > td span.responsiveExpander:after {
  content: "-" !important;
  line-height: 0.45;
  font-size: 40px;
  width: 25px;
  height: 25px;
  border-radius: 100%;
  background-color: #a8bc0e;
}
.ajanlat table,
.ajanlat tbody,
.ajanlat thead,
.ajanlat tfoot {
  border: none !important;
}
.ajanlat td,
.ajanlat th {
  border: none !important;
  padding: 15px 10px !important;
}
@media print, screen and (min-width: 64em) {
  .ajanlat td,
.ajanlat th {
    padding: 7px 10px !important;
  }
}
.ajanlat th {
  text-align: center !important;
  font-weight: 800 !important;
  color: #40444d !important;
}
.ajanlat tr {
  border-bottom: solid 1px #ffffff !important;
}
.ajanlat td.column-1 {
  background-color: #d7d7d7 !important;
  font-weight: 600;
}
.ajanlat td.column-2 {
  background-color: #e0e2e5 !important;
  text-align: center !important;
}
.ajanlat td.column-3 {
  background-color: #b6cc00 !important;
  text-align: center !important;
  font-weight: 800;
  color: #fefefe;
}
.ajanlat td.column-4 {
  background-color: #7f7f7f !important;
  text-align: center !important;
  font-weight: 800;
  color: #fefefe;
}
.ajanlat .column-1 {
  width: 30% !important;
  position: relative;
}
@media print, screen and (max-width: 39.99875em) {
  .ajanlat .column-1 {
    padding-left: 50px !important;
  }
}
.ajanlat .column-1 .responsiveExpander {
  position: absolute;
  top: 50%;
  left: 10px;
  transform: translateY(-50%);
}
.ajanlat .wpDataTablesWrapper table.wpDataTable th,
.ajanlat .wpDataTablesWrapper table.wpDataTable td {
  white-space: initial !important;
}
.ajanlat .wpDataTablesWrapper div.dt-buttons {
  margin: 0;
}
.ajanlat .powered_by_link {
  display: none !important;
}
.ajanlat .row-detail td {
  padding: 5px !important;
  background-color: #97989b !important;
}
.ajanlat .row-detail li {
  padding: 10px 15px !important;
}
.ajanlat .row-detail li:nth-child(1) {
  background-color: #cecece;
}
.ajanlat .row-detail li:nth-child(2) {
  font-weight: 800;
  background-color: #b7b7b7;
}
.ajanlat .row-detail .column-2,
.ajanlat .row-detail .column-4 {
  display: flex;
}
.ajanlat .row-detail .column-2 .columnValue,
.ajanlat .row-detail .column-4 .columnValue {
  margin-left: auto;
  margin-right: 0;
}
.ajanlat .text-wrapper {
  order: 1;
}
@media print, screen and (max-width: 39.99875em) {
  .ajanlat .text-wrapper {
    margin: 0 2rem 2rem;
  }
}
@media print, screen and (min-width: 64em) {
  .ajanlat .text-wrapper {
    order: 2;
  }
}
.ajanlat .text-wrapper h2 {
  color: #fefefe;
  font-size: 1.6rem;
  text-transform: uppercase;
}
.ajanlat .text-wrapper p {
  text-align: left;
}
.treatments {
  padding: 3rem 0;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}
@media print, screen and (max-width: 63.99875em) {
  .treatments .container.padding {
    padding: 0;
  }
}
.treatments.dentist {
  background: linear-gradient(0deg, rgba(166, 171, 181, 0.8), rgba(166, 171, 181, 0.8)), url("../assets/kezelesek-bg.jpg");
}
.treatments.dentist h2 {
  color: #fefefe;
}
.treatments.plastik {
  background-image: url("../assets/prizmas-bg.jpg");
}
.treatments.plastik h2 {
  color: #5e2246;
}
.treatments.plastik p {
  text-align: left;
}
.treatments.plastik .element {
  width: 100%;
}
.treatments.plastik .price {
  background-image: linear-gradient(92.23deg, #b6cc00 0%, #a8bc0e 100%);
}
@media print, screen and (min-width: 64em) {
  .treatments {
    padding: 6rem 0;
  }
}
.treatments .subtitle {
  text-align: center;
}
.treatments .treatments-slider {
  margin-bottom: 1rem;
}
.treatments .container {
  padding: 0 30px;
}
.treatments .kezelesek-title {
  margin-bottom: 3rem;
}
@media print, screen and (min-width: 64em) {
  .treatments .kezelesek-title {
    margin-bottom: 2rem;
  }
}
.treatments .micro-kezelesek-slider {
  margin-bottom: 2rem;
}
.treatments .owl-stage-outer {
  width: 100%;
}
.treatments .owl-stage {
  display: flex;
}
.treatments .owl-item {
  display: flex;
  flex: 1 0 auto;
  height: initial;
}
.treatments .owl-dots {
  margin-top: 1rem;
}
.treatments .owl-nav {
  position: absolute;
  left: 0;
  right: 0;
  z-index: 10;
  width: 100%;
  top: initial;
  top: 0;
  margin-top: 0;
}
@media print, screen and (min-width: 64em) {
  .treatments .owl-nav {
    height: 50px;
    top: 50% !important;
    bottom: initial !important;
    transform: translateY(-50%);
  }
}
.treatments .owl-nav .owl-prev,
.treatments .owl-nav .owl-next {
  background: transparent !important;
  position: absolute;
  height: 60px;
}
.treatments .owl-nav .owl-prev i,
.treatments .owl-nav .owl-next i {
  color: #6D7584;
  font-size: 4rem;
  transition: color 0.2s ease-in-out;
}
@media print, screen and (min-width: 64em) {
  .treatments .owl-nav .owl-prev i,
.treatments .owl-nav .owl-next i {
    color: #5E2246;
  }
}
.treatments .owl-nav .owl-prev:hover i,
.treatments .owl-nav .owl-next:hover i {
  color: #9e1c62;
}
.treatments .owl-nav .owl-prev {
  left: 1rem;
}
@media print, screen and (min-width: 64em) {
  .treatments .owl-nav .owl-prev {
    left: 1rem;
  }
}
.treatments .owl-nav .owl-next {
  right: 1rem;
}
@media print, screen and (min-width: 64em) {
  .treatments .owl-nav .owl-next {
    right: 1rem;
  }
  .treatments .owl-nav .owl-prev {
    left: -3rem;
  }
  .treatments .owl-nav .owl-next {
    right: -3rem;
  }
}
.treatments .element {
  background-color: #fefefe;
  display: flex;
  flex-flow: column;
  border-radius: 15px;
  overflow: hidden;
  box-shadow: 0px 0px 10px rgba(64, 68, 77, 0.2);
}
.treatments .element__content {
  padding: 1rem;
  display: flex;
  flex-flow: column;
  height: 100%;
}
.treatments .element__content h3 {
  margin-bottom: 1rem;
  color: #9e1c62;
  text-align: center;
  font-size: 1.3333333333rem;
  text-transform: initial;
}
@media print, screen and (max-width: 39.99875em) {
  .treatments .element__content h3 {
    font-size: 1.2rem;
  }
}
.treatments .image {
  height: 200px;
  position: relative;
  overflow: hidden;
  flex: 1 0 200px;
}
.treatments .image::after {
  content: " ";
  display: block;
  position: absolute;
  left: 0;
  right: 0;
  bottom: -5px;
  box-shadow: 0px 0px 10px rgba(64, 68, 77, 0.2);
  height: 5px;
}
.treatments .image img {
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  height: 100%;
}
.treatments p {
  text-align: center;
}
.treatments .price {
  margin-top: auto;
  margin-bottom: 0;
  background-image: linear-gradient(93.56deg, #9e1c62 0%, #7e1f54 100%);
  padding: 1rem;
  border-bottom-left-radius: 15px;
  border-bottom-right-radius: 15px;
  overflow: hidden;
  flex: 1 0 73px;
  height: 73px;
}
.treatments .price p {
  font-size: 1.3333333333rem;
  text-align: center;
  margin-bottom: 0;
  font-weight: 700;
  color: #fefefe;
  line-height: 1;
  font-variant-numeric: lining-nums;
  font-feature-settings: "lnum";
}
.treatments .price p span {
  font-size: 1.0666666667rem;
  font-family: Lato, sans-serif;
}
.treatments .kezelesek-footer p {
  font-size: 12px;
}
.treatments-block .price {
  height: 73px;
  background-image: linear-gradient(92.23deg, #b6cc00 0%, #a8bc0e 100%);
}
.treatments-block .price p span {
  font-size: 1.0666666667rem;
  font-family: Lato, sans-serif;
}
.treatments-block .element__content h3 {
  color: #9e1c62 !important;
  text-transform: initial !important;
}
.treatments-block .splide__list {
  align-items: stretch;
  flex-direction: row;
}
.treatments-block .element {
  background-color: #fefefe;
  border-radius: 15px;
  overflow: hidden;
  box-shadow: 0px 0px 10px rgba(64, 68, 77, 0.2);
  height: 100%;
  display: flex;
  flex-direction: column;
}
.gunnar.row {
  padding: 6rem 0;
}
.gunnar.row img {
  width: 100%;
  border-radius: 50%;
  max-width: 360px;
  display: block;
  margin: 0 auto 1rem auto;
}
.gunnar.row .image p {
  text-align: center;
  font-size: 1.0666666667rem;
}
.gunnar.row .text {
  display: flex;
  flex-flow: column;
  justify-content: center;
}
.video {
  padding: 3rem 0;
}
.video .video-player--container {
  position: relative;
}
.video .video-player--container .inner {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.video .video-player--container .inner-wrap {
  text-align: center;
}
.dental-week {
  background-image: url("../assets/dental-week-bg.jpg");
  background-position: left center;
  background-size: cover;
  background-repeat: no-repeat;
  display: flex;
  flex-wrap: wrap;
  flex-flow: column;
  position: relative;
  overflow: hidden;
  padding: 3rem 0;
}
@media print, screen and (min-width: 64em) {
  .dental-week {
    flex-flow: row;
    background-position: center;
  }
}
.dental-week__circle {
  position: absolute;
  right: -20%;
  bottom: -40%;
  height: 100%;
  width: 80%;
  border-radius: 50%;
  border: 2px solid #fefefe;
  z-index: 2;
  background-image: linear-gradient(to bottom, rgba(182, 204, 0, 0.7), rgba(109, 117, 132, 0.7), rgba(158, 28, 98, 0.7));
  display: none;
}
@media print, screen and (min-width: 64em) {
  .dental-week__circle {
    display: block;
  }
}
.dental-week__title, .dental-week__formtitle {
  font-family: "Roboto Slab", serif;
  color: #fefefe;
  line-height: 1;
  margin-bottom: 2rem;
  font-size: 25px;
  font-weight: 700;
}
@media print, screen and (min-width: 64em) {
  .dental-week__title, .dental-week__formtitle {
    font-size: 35px;
  }
}
.dental-week__formtitle {
  text-align: center;
  font-size: 28px;
}
.dental-week__formfields {
  display: flex;
  flex-wrap: wrap;
}
.dental-week__input {
  border: 2px solid #fefefe;
  background-color: #7d2659;
  margin-bottom: 0.5rem;
  border-radius: initial;
  padding: 1rem;
  line-height: 100%;
  height: initial;
  color: #fefefe;
}
.dental-week__input:focus {
  background-color: #7d2659;
  border: 2px solid #fefefe;
}
.dental-week__submit {
  font-family: "Roboto Slab", serif;
  text-transform: uppercase;
  background-color: #fefefe;
  color: #40444d;
  font-size: 18px;
  border-radius: initial;
  line-height: 100%;
  padding: 1rem;
  margin-bottom: 0.5rem;
  border: 2px solid #fefefe;
  width: 100%;
}
.dental-week .InputBlock {
  width: 100%;
}
@media print, screen and (min-width: 40em) {
  .dental-week .InputBlock {
    width: calc(50% - 0.5rem);
    margin: 0 0.25rem;
  }
}
.dental-week .fyre-logo {
  margin: 0 auto;
  padding-bottom: 2rem;
  display: none;
}
.dental-week .fyre-logo img {
  width: 100%;
}
@media print, screen and (min-width: 64em) {
  .dental-week .fyre-logo {
    width: 512px;
    display: block;
    height: 512px;
  }
}
.dental-week .fyre-logo-mobile {
  margin: 0 auto;
}
@media print, screen and (min-width: 40em) {
  .dental-week .fyre-logo-mobile {
    width: 50%;
  }
}
@media print, screen and (min-width: 64em) {
  .dental-week .fyre-logo-mobile {
    display: none;
  }
}
.dental-week p {
  color: #fefefe;
}
.dental-week p:last-of-type {
  margin-bottom: 2rem;
}
.dental-week .download-pdf {
  background-color: transparent;
  border-radius: initial;
  border: 2px solid #fefefe;
  text-decoration: none;
  font-family: "Roboto Slab", serif;
  font-size: 20px;
}
.dental-week .dental-week-text {
  padding: 2rem 3rem 3rem;
  flex: 1 1 100%;
}
@media print, screen and (min-width: 64em) {
  .dental-week .dental-week-text {
    flex: 1 0 36%;
  }
}
.dental-week .dental-week-form-container {
  flex: 1 1 100%;
  position: relative;
  z-index: 3;
  padding: 0 3rem;
  display: flex;
  flex-flow: column;
  justify-content: flex-end;
}
@media print, screen and (min-width: 64em) {
  .dental-week .dental-week-form-container {
    flex: 1 0 50%;
  }
}
.doctors {
  background-image: linear-gradient(0deg, #9e1c62, #9e1c62);
}
.doctors .data-col {
  display: flex;
  align-items: center;
  padding: 30px;
}
@media print, screen and (min-width: 64em) {
  .doctors .data-col {
    padding: 30px 8rem;
  }
}
.doctors .data-col p {
  color: #fefefe;
}
.doctors .doctors-container {
  margin: 0;
  display: flex;
  flex-flow: wrap;
  height: 100%;
}
.doctors .doctors-container .doctor-item {
  display: block;
  position: relative;
  cursor: pointer;
  padding: 0;
  list-style: none;
  flex: 0 0 50%;
  display: flex;
  flex-wrap: wrap;
  justify-content: stretch;
  flex-flow: column;
}
@media print, screen and (min-width: 40em) {
  .doctors .doctors-container .doctor-item {
    flex: 1 1 33.33%;
    flex-flow: column;
  }
}
.doctors .doctors-container .doctor-item img {
  display: block;
  margin-right: 0;
  width: 100%;
}
@media print, screen and (min-width: 64em) {
  .doctors .doctors-container .doctor-item img {
    -o-object-fit: cover;
       object-fit: cover;
    width: 100%;
    height: 100%;
  }
}
.doctors .doctors-container .doctor-item .doctor-data {
  display: block;
  background-color: rgba(94, 34, 70, 0.85);
  height: 100%;
}
@media print, screen and (min-width: 64em) {
  .doctors .doctors-container .doctor-item .doctor-data {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 10;
    opacity: 0;
    transition: opacity 0.2s ease-out;
    padding: 1rem;
  }
}
.doctors .doctors-container .doctor-item:hover .doctor-data {
  opacity: 1;
}
.doctors .doctors-container .doctor-item .doctor-data h3,
.doctors .doctors-container .doctor-item .doctor-data p {
  color: #fefefe;
  text-align: center;
  margin-bottom: 0;
  padding: 0.5rem;
}
.doctors .doctors-container .doctor-item .doctor-data h3 {
  font-size: 1rem;
  font-weight: 700;
}
.doctors .doctors-container .doctor-item p {
  margin-bottom: 0;
}
@media print, screen and (min-width: 64em) {
  .doctors .doctors-container .doctor-item .data-content {
    left: 0;
    right: 0;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
  }
}
.laekni .front-orvosok-carousel {
  background-color: #5E2246;
  padding: 3rem 0;
  overflow: hidden;
}
@media print, screen and (min-width: 64em) {
  .laekni .front-orvosok-carousel {
    border-radius: 15px;
  }
}
.laekni .front-orvosok-carousel::after {
  background-image: linear-gradient(to right, #5e2246 0%, transparent 20%, transparent 80%, #5e2246 100%);
  content: " ";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1;
  opacity: 0.95;
  pointer-events: none;
}
.laekni .doctor-title {
  opacity: 0;
}
.laekni .splide__slide.is-visible .doctor-title {
  opacity: 1;
  transition: opacity 0.3s;
}
.laekni .splide__arrow {
  background-color: transparent !important;
  top: initial;
  bottom: 1rem;
  width: 40px !important;
  height: 40px !important;
  z-index: 2;
}
.laekni .splide__arrow svg {
  width: 100%;
  position: relative;
  top: initial;
  fill: #fefefe;
  stroke: none !important;
  filter: none !important;
}
.laekni .splide__arrow--prev {
  left: 1rem;
}
.laekni .splide__arrow--next {
  right: 1rem;
}
.dental-clinic {
  padding: 3rem 0;
}
.dental-clinic .photo-accordion {
  display: flex;
  justify-content: center;
}
.dental-clinic .microAccordion {
  z-index: 1;
  margin: 0;
  width: 100%;
}
.dental-clinic .microAccordion li {
  background-size: cover !important;
  background-position: center;
  background-repeat: no-repeat;
  position: relative;
  height: 300px;
  list-style: none;
}
.dental-clinic .microAccordion li .heading {
  background-color: rgba(255, 255, 255, 0.76);
  padding: 0 20px;
  height: 98px;
  width: 264px;
  text-transform: uppercase;
  font-size: 18px;
  color: #666;
  text-align: left;
  font-style: normal;
  line-height: 98px;
  position: absolute;
  bottom: 103px;
  transform: rotate(-90deg);
  transition: all 0.7s ease-in 0s;
  display: none !important;
}
.dental-clinic .microAccordion li.microSlide-open .heading {
  margin-left: -200px;
}
.dental-clinic .microAccordion li.microSlide-closed .heading {
  margin-left: -103px;
}
.dental-clinic .microAccordion li .description {
  padding: 80px 20px 20px 20px;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  background: linear-gradient(0deg, rgba(255, 255, 255, 0.8) 50%, rgba(255, 255, 255, 0));
  transition: all 0.7s ease-in 0s;
  display: block;
  opacity: 1;
}
@media print, screen and (min-width: 64em) {
  .dental-clinic .microAccordion li .description {
    display: none;
  }
}
.dental-clinic .microAccordion li.microSlide-open .description {
  bottom: 0;
  opacity: 1;
}
.dental-clinic .microAccordion li.microSlide-closed .description {
  bottom: -20rem;
  opacity: 0;
}
.dental-clinic .microAccordion li .description h2 {
  text-transform: uppercase;
  font-style: normal;
  font-size: 21px;
  color: #666;
  text-align: left;
  margin-bottom: 1rem;
  padding-bottom: 5px;
}
.dental-clinic .microAccordion li .description p {
  line-height: 12px;
  font-size: 12px;
  font-style: italic;
  font-weight: normal;
  line-height: 1.4em;
  color: #666;
  margin-bottom: 0;
}
.section-review .text-animate-1 {
  opacity: 0;
  transform: translateX(60px);
  transition: all 1.1s 0.8s cubic-bezier(0.165, 0.84, 0.44, 1);
  display: block;
}
.section-review .text-animate-2 {
  opacity: 0;
  transform: translateX(60px);
  transition: all 1.3s 1.1s cubic-bezier(0.165, 0.84, 0.44, 1);
  display: block;
}
.section-review .wp-gr {
  opacity: 0;
  transform: translateY(60px);
  transition: all 1.3s 0.7s cubic-bezier(0.165, 0.84, 0.44, 1) !important;
  display: block;
}
.section-review.in-view .wp-gr,
.section-review.in-view .text-animate-1,
.section-review.in-view .text-animate-2 {
  opacity: 1;
  transform: none;
}
.section-review {
  justify-content: center;
  z-index: 100;
  position: relative;
}
.section-review .google-review {
  width: 46.6666666667rem;
  border-radius: 50px;
  overflow: hidden;
  box-shadow: 0 0 20px rgba(10, 10, 10, 0.2);
  position: relative;
  z-index: 10;
}
.section-review .google-review .title {
  display: flex;
  align-items: center;
}
.section-review .google-review h2 {
  color: #fefefe;
  font-weight: 700;
  margin-bottom: 0;
  letter-spacing: 0;
  font-size: 2.1333333333rem;
}
.section-review .google-review > div {
  padding: 2rem;
}
.section-review .google-review svg {
  display: inline;
}
.section-review .google-review img {
  border-radius: 50% !important;
}
.section-review .google-review .widget-wrapper {
  background-color: #fefefe;
}
.google-reviews {
  padding: 0 0 3rem 0;
}
.google-reviews .owl-carousel .owl-stage {
  display: flex;
}
.google-reviews .owl-carousel .owl-item {
  display: flex;
  flex: 1 0 auto;
}
.google-reviews .owl-nav {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: -2rem;
  right: -2rem;
  display: flex;
  justify-content: space-between;
}
.google-reviews .owl-nav i {
  font-size: 2.6666666667rem;
}
.google-reviews .owl-stage-outer {
  padding: 1rem 0;
}
.google-reviews .owl-dots {
  text-align: center;
  padding: 1rem 0;
}
.google-reviews .owl-dots span {
  width: 10px;
  height: 10px;
  background-color: #a6abb5;
  display: block;
  margin: 0.4rem;
  border-radius: 50%;
}
.google-reviews .owl-dots .owl-dot.active span {
  background-color: #5E2246;
}
.google-reviews .slide-item {
  border-radius: 15px;
  overflow: hidden;
  box-shadow: 0px 0px 10px rgba(64, 68, 77, 0.2);
  background-color: #fefefe;
}
.google-reviews .slide-item a {
  color: #40444D;
  height: 100%;
  display: flex;
  flex-flow: column;
}
.google-reviews .slide-item .content {
  display: flex;
  flex-flow: column;
  justify-content: space-between;
  height: 100%;
  padding: 1rem;
  flex: 1 1 auto;
}
.modal-video .embed-container {
  width: 60vw;
}
.clinic-video .embed-container {
  border-radius: 15px;
  overflow: hidden;
}
@media screen and (max-width: 63.99875em) {
  .clinic-video .container .modal-trigger-image {
    display: none !important;
  }
}
@media print, screen and (min-width: 64em) {
  .clinic-video .container .hide-for-desktop {
    display: none !important;
  }
}
.clinic-video .container img {
  cursor: pointer;
  transition: transform 0.2s ease-in-out;
  width: 70%;
  margin: 0 auto;
  display: block;
}
@media print, screen and (min-width: 40em) {
  .clinic-video .container img {
    width: 100%;
    margin: initial;
    display: initial;
  }
  .clinic-video .container img:hover {
    transform: scale(1.07);
  }
}
.clinic-video .container .tour {
  grid-area: tour;
}
.clinic-video .container .discover {
  grid-area: tourtitle;
}
@media print, screen and (min-width: 40em) {
  .clinic-video .container .video {
    padding: 0 10rem;
  }
}
@media print, screen and (min-width: 64em) {
  .clinic-video .container .video {
    padding: 0 10rem;
  }
}
@media screen and (min-width: 75em) {
  .clinic-video .container .video {
    padding: 0 10rem;
  }
}
.clinic-video .container h3 {
  font-weight: 800;
}
.clinic-video .container .video,
.clinic-video .container .tour,
.clinic-video .container .discover {
  align-self: center;
}
.about-budapest {
  max-width: 100%;
  background-color: #f7f8f8;
}
.about-budapest .image,
.about-budapest .text-container {
  width: 100%;
}
@media print, screen and (min-width: 40em) {
  .about-budapest .image,
.about-budapest .text-container {
    width: 50%;
  }
  .about-budapest .image {
    order: 2;
  }
  .about-budapest .text-container {
    order: 1;
  }
}
.about-budapest .text-inner {
  padding: 2rem 1rem 3rem;
}
@media print, screen and (min-width: 64em) {
  .about-budapest .text-inner {
    padding: 3rem 5rem;
  }
}
.about-budapest h3 {
  color: #6D7584;
  text-transform: uppercase;
  font-weight: 300;
  font-size: 30px;
  margin-bottom: 2rem;
}
.about-budapest .image {
  padding: 7rem 0;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
}
@media print, screen and (min-width: 40em) {
  .about-budapest .image {
    padding: 11rem 0;
  }
}
@media print, screen and (min-width: 64em) {
  .about-budapest .image {
    padding: 13rem 0;
  }
}
.about-budapest .image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.about-budapest .owl-item {
  display: flex;
}
.about-budapest .owl-item .owl-item > div {
  display: flex;
  flex: 1 0 auto;
}
.about-budapest .owl-carousel {
  position: relative;
}
@media print, screen and (min-width: 64em) {
  .about-budapest .owl-carousel .owl-stage {
    display: flex;
  }
  .about-budapest .owl-carousel .owl-item {
    display: flex;
    flex: 1 0 auto;
    height: initial;
  }
}
.about-budapest .owl-carousel .owl-nav {
  position: absolute;
  height: 50px;
  left: 0;
  right: 0;
  margin: 0;
  top: 10%;
}
@media print, screen and (min-width: 64em) {
  .about-budapest .owl-carousel .owl-nav {
    transform: translateY(-50%);
    top: 50%;
  }
}
.about-budapest .owl-carousel .owl-item > div {
  display: flex;
  flex-direction: column;
}
@media print, screen and (min-width: 40em) {
  .about-budapest .owl-carousel .owl-item > div {
    flex-direction: row;
  }
}
.about-budapest .owl-carousel .owl-prev,
.about-budapest .owl-carousel .owl-next {
  position: absolute;
  background-color: transparent;
  padding: 0;
  margin: 0;
}
.about-budapest .owl-carousel .owl-prev:hover,
.about-budapest .owl-carousel .owl-next:hover {
  background-color: transparent;
}
.about-budapest .owl-carousel .owl-prev i,
.about-budapest .owl-carousel .owl-next i {
  color: #fefefe;
  font-size: 60px;
  line-height: 1;
}
@media print, screen and (min-width: 64em) {
  .about-budapest .owl-carousel .owl-prev i,
.about-budapest .owl-carousel .owl-next i {
    color: #833062;
  }
}
.about-budapest .owl-carousel .owl-prev {
  left: 2rem;
}
.about-budapest .owl-carousel .owl-next {
  right: 2rem;
}
.about-budapest .owl-carousel .owl-next i:before {
  color: #fefefe;
  text-shadow: 0 0 20px rgba(10, 10, 10, 0.8);
}
.about-budapest .owl-carousel .owl-dots {
  position: absolute;
  width: 100%;
  bottom: 1rem;
}
@media print, screen and (min-width: 40em) {
  .about-budapest .owl-carousel .owl-dots {
    width: 50%;
    top: initial;
    transform: initial;
    bottom: 1rem;
  }
}
.about-budapest .owl-carousel .owl-dot span {
  background-color: #5E2246;
}
.about-budapest .owl-carousel .owl-dot:hover span, .about-budapest .owl-carousel .owl-dot.active span {
  background-color: #a93d7e;
  width: 14px;
  height: 14px;
  position: relative;
  top: 2px;
}
.front-page-contact {
  padding: 3rem 0 0;
  max-width: 100%;
  position: relative;
  background-attachment: fixed;
  background-size: cover;
}
@media print, screen and (min-width: 64em) {
  .front-page-contact {
    padding: 3rem 0;
  }
}
.front-page-contact .nf-field-container {
  margin-bottom: 0;
}
.front-page-contact .grid {
  grid-column-gap: 6rem;
}
@media print, screen and (max-width: 39.99875em) {
  .front-page-contact .grid {
    margin: 0;
  }
}
.front-page-contact form {
  position: relative;
}
.front-page-contact form::after {
  content: " ";
  display: block;
  position: absolute;
  top: -11rem;
  left: -6rem;
  right: -6rem;
  bottom: -10rem;
  background-color: #B2C90A;
  border-radius: 50%;
  z-index: -1;
  transform: rotate(7deg);
}
@media screen and (max-width: 63.99875em) {
  .front-page-contact form::after {
    display: none !important;
  }
}
.front-page-contact .form-wrapper {
  padding: 2rem;
  background-color: #b6cc00;
}
@media print, screen and (min-width: 64em) {
  .front-page-contact .form-wrapper {
    padding: 3rem 6rem 0;
    background-color: transparent;
    width: initial;
  }
  .front-page-contact .fields {
    display: flex;
    gap: 1rem;
  }
}
.front-page-contact .col {
  flex: 1 0 50%;
}
.front-page-contact textarea {
  height: 89px;
  border-radius: 15px;
}
.front-page-contact input[type=submit],
.front-page-contact input[type=text],
.front-page-contact input[type=email],
.front-page-contact input[type=tel] {
  border-radius: 100px;
}
.front-page-contact input[type=text],
.front-page-contact input[type=email],
.front-page-contact input[type=tel],
.front-page-contact textarea {
  background-color: #fefefe;
  border: none;
  margin-bottom: 1rem;
  box-shadow: none;
}
.front-page-contact input[type=text]::-moz-placeholder, .front-page-contact input[type=email]::-moz-placeholder, .front-page-contact input[type=tel]::-moz-placeholder, .front-page-contact textarea::-moz-placeholder {
  color: #40444d;
}
.front-page-contact input[type=text]:-ms-input-placeholder, .front-page-contact input[type=email]:-ms-input-placeholder, .front-page-contact input[type=tel]:-ms-input-placeholder, .front-page-contact textarea:-ms-input-placeholder {
  color: #40444d;
}
.front-page-contact input[type=text]::placeholder,
.front-page-contact input[type=email]::placeholder,
.front-page-contact input[type=tel]::placeholder,
.front-page-contact textarea::placeholder {
  color: #40444d;
}
.front-page-contact .gallery-container {
  display: flex;
  flex-wrap: wrap;
}
@media print, screen and (max-width: 39.99875em) {
  .front-page-contact .gallery-container {
    padding: 0 2rem;
    margin-bottom: 2rem;
  }
}
.front-page-contact .gallery-container .gallery-item {
  display: block;
  flex: 1 1 calc(33.33% - 1rem);
  margin: 0 0.5rem;
  margin-bottom: 1rem;
  overflow: hidden;
  border-radius: 15px;
}
.front-page-contact .gallery-container .gallery-item img {
  float: left;
}
.front-page-contact .data-container h2 {
  line-height: 1.3;
}
.front-page-contact .data-container {
  display: flex;
  flex-flow: column;
}
@media print, screen and (min-width: 40em) {
  .front-page-contact .data-container {
    justify-content: space-between;
    flex-flow: row;
  }
}
.front-page-contact p {
  color: #5E2246;
}
.front-page-contact h2 {
  margin-bottom: 1rem;
  color: #fefefe;
  text-transform: uppercase;
  text-align: center;
  font-weight: 800;
  padding: 0 3rem;
}
.front-page-contact .button {
  background-color: #9e1c62;
  width: 100%;
  white-space: normal;
  padding: 0.5rem;
}
.front-page-contact .button:hover {
  background-color: #5E2246;
}
#map {
  height: 30vh;
}
.fly-in {
  padding: 3rem 0;
  background: linear-gradient(149.85deg, #7e1f54 0%, #5e2246 55.21%), url("../assets/budapest/md_relax-contact-bg.jpg"), #f5f6f7;
  background-blend-mode: normal, multiply, color, normal, normal;
}
@media print, screen and (min-width: 64em) {
  .fly-in {
    padding: 6rem 0;
  }
}
.fly-in__card .paragraph-title {
  font-size: 1.2rem;
}
.fly-in__card img {
  display: block;
  margin: 0 auto;
}
.fly-in__card p {
  max-width: 40ch;
  margin: 0 auto;
}
.fly-in__header {
  margin-bottom: 1rem;
}
.fly-in p {
  color: #fefefe;
}
.fly-in .price-list th span {
  display: block;
}
.fly-in .column-2,
.fly-in .column-3 {
  text-align: right;
}
.fly-in .column-4 {
  text-align: center;
}
@media print, screen and (max-width: 39.99875em) {
  .fly-in .prices.grid {
    margin: 0;
  }
}
.fly-in .line {
  height: 1px;
  border-top: dashed 1px #fefefe;
  margin: 2rem;
}
@media print, screen and (min-width: 64em) {
  .fly-in .line {
    display: none !important;
  }
}
.fly-in .table-wrapper {
  overflow: hidden;
  box-shadow: 0px 0px 10px rgba(64, 68, 77, 0.2);
  border-radius: 15px;
}
@media print, screen and (max-width: 39.99875em) {
  .fly-in .table-wrapper {
    margin-left: 2rem;
    margin-right: 2rem;
    width: 650px;
  }
}
.fly-in table {
  margin-bottom: 0;
  border: none;
  font-size: 0.9333333333rem;
}
.fly-in table tr {
  border: none;
}
.fly-in thead {
  border: none;
}
.fly-in thead th {
  color: #fefefe;
  padding: 0.5rem;
  font-weight: 700;
}
.fly-in thead td {
  padding: 0.5rem;
}
.fly-in thead th.column-1,
.fly-in thead th.column-4 {
  background-color: #8a919d;
}
.fly-in thead th.column-2,
.fly-in thead th.column-3 {
  background-color: #6d7584;
  border-left: solid 1px #fefefe;
}
.fly-in thead th.column-4 {
  border-left: solid 1px #fefefe;
}
.fly-in thead th span {
  font-weight: 400;
}
.fly-in thead svg {
  position: relative;
  display: inline;
}
.fly-in tbody {
  border: none;
}
.fly-in tbody td {
  font-weight: 700;
}
.fly-in tbody td:first-child {
  font-weight: 400;
}
.fly-in tbody td.column-2,
.fly-in tbody td.column-3 {
  background-color: #999ea9;
  color: #fefefe;
  font-size: 1.3333333333rem;
}
.fly-in tbody td.column-2 span,
.fly-in tbody td.column-3 span {
  font-size: 0.9333333333rem;
}
.fly-in tbody tr:nth-child(even) td.column-1 {
  background-color: #f0f1f2;
}
.fly-in tbody tr:nth-child(even) td.column-2,
.fly-in tbody tr:nth-child(even) td.column-3 {
  background-color: #8a919d;
}
.fly-in tbody td.column-3,
.fly-in tbody td.column-4 {
  border-left: solid 1px #fefefe;
}
.fly-in tbody td.column-4 {
  background-color: #b6cc00;
  color: #fefefe;
  font-size: 1.3333333333rem;
}
.fly-in tbody tr:nth-child(even) td.column-4 {
  background-color: #aabe09;
}
.fly-in .table-overflow {
  overflow-x: auto;
  order: 2;
}
@media print, screen and (min-width: 64em) {
  .fly-in .table-overflow {
    order: 1;
  }
}
.fly-in .text-wrapper {
  display: flex;
  flex-flow: column;
  justify-content: center;
  order: 1;
}
@media print, screen and (max-width: 39.99875em) {
  .fly-in .text-wrapper {
    margin: 0 2rem 2rem;
  }
}
@media print, screen and (min-width: 64em) {
  .fly-in .text-wrapper {
    order: 2;
  }
}
.fly-in .text-wrapper h2 {
  color: #fefefe;
  font-size: 1.6rem;
  text-transform: uppercase;
}
.fly-in .text-wrapper p {
  text-align: left;
}
.dw-light {
  padding: 3rem 0;
}
@media print, screen and (min-width: 64em) {
  .dw-light {
    padding: 6rem 0;
  }
}
.dw-light p {
  font-size: 0.9333333333rem;
}
@media print, screen and (max-width: 39.99875em) {
  .dw-light .grid {
    margin-left: 2rem;
    margin-right: 2rem;
  }
  .dw-light .grid .grid {
    margin-left: 0;
    margin-right: 0;
  }
}
.dw-light__header {
  margin-bottom: 2rem;
}
.dw-light__header p {
  font-size: 1.0666666667rem;
}
.dw-light ul {
  list-style: none;
}
.dw-light h3 {
  color: #9e1c62;
  font-size: 1.2rem;
  font-weight: 700;
  text-transform: uppercase;
  position: relative;
}
.dw-light h3 span {
  color: #fefefe;
  z-index: 1;
  left: -2.5rem;
  position: absolute;
  width: 26px;
  text-align: center;
  line-height: 1.4;
  font-weight: 600;
  font-size: 1.0666666667rem;
}
.dw-light h3 span::after {
  content: " ";
  display: block;
  position: absolute;
  background-color: #B2C90A;
  top: 0;
  left: 0;
  width: 24px;
  height: 24px;
  border-radius: 50%;
  z-index: -1;
}
.dw-light h4 {
  color: #9e1c62;
  font-size: 1.0666666667rem;
  font-weight: 400;
}
.dw-light li {
  position: relative;
  font-size: 0.9333333333rem;
}
.dw-light li::after {
  content: " ";
  display: block;
  position: absolute;
  top: 7px;
  left: -1rem;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background-color: #B2C90A;
}
.dw-light .dental-week-description .text {
  order: 2;
  box-shadow: none !important;
}
.dw-light .dental-week-description .logo {
  order: 1;
}
@media print, screen and (min-width: 64em) {
  .dw-light .dental-week-description .text,
.dw-light .dental-week-description .logo {
    order: initial;
  }
}
.dw-light .text {
  padding: 1rem 1rem 1rem 3.5rem;
}
@media print, screen and (max-width: 63.99875em) {
  .dw-light .text {
    margin-bottom: 1rem;
  }
}
.dw-light .logo {
  text-align: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  background-image: linear-gradient(142.18deg, #f4f5f7 0.04%, #e0e2e5 100.04%);
}
@media print, screen and (max-width: 63.99875em) {
  .dw-light .logo {
    padding: 1rem;
  }
}
.dw-light .logo img {
  margin-bottom: 2rem;
}
.dw-light .upcomming {
  background-color: #B2C90A;
  color: #fefefe;
  font-weight: 700;
  border-radius: 100px;
  padding: 0.5rem 2rem;
  font-variant-numeric: lining-nums;
  font-feature-settings: "lnum";
  display: inline-block;
}
@media print, screen and (max-width: 63.99875em) {
  .dw-light .upcomming {
    margin-bottom: 2rem;
  }
}
.dw-light .upcomming span {
  display: block;
  font-size: 1.4666666667rem;
}
@media print, screen and (min-width: 40em) {
  .peter-gyorgy-quote .wp-block-column:nth-child(1) {
    flex-basis: 75%;
  }
  .peter-gyorgy-quote .wp-block-column:nth-child(2) {
    flex-basis: 25%;
  }
}
.leader-image {
  border: 1px solid #e8e9eb;
}
.page-template-page-contact #map {
  height: 26.6666666667rem;
  width: 100%;
}
.page-template-page-contact .grid {
  grid-column-gap: 0;
}
.page-template-page-contact .form-contact {
  background-color: #9e1c62;
  padding: 3rem;
}
.page-template-page-contact .form-contact .form-title {
  font-size: 1.3333333333rem;
  letter-spacing: 0;
  margin-bottom: 3rem;
  font-weight: 500;
}
.page-template-page-contact .form-contact textarea,
.page-template-page-contact .form-contact input[type=tel],
.page-template-page-contact .form-contact input[type=email],
.page-template-page-contact .form-contact input[type=text] {
  background: #fefefe;
  border: none;
  box-shadow: none;
  color: #5E2246;
}
.page-template-page-contact .form-contact textarea::-moz-placeholder, .page-template-page-contact .form-contact input[type=tel]::-moz-placeholder, .page-template-page-contact .form-contact input[type=email]::-moz-placeholder, .page-template-page-contact .form-contact input[type=text]::-moz-placeholder {
  color: #5E2246;
}
.page-template-page-contact .form-contact textarea:-ms-input-placeholder, .page-template-page-contact .form-contact input[type=tel]:-ms-input-placeholder, .page-template-page-contact .form-contact input[type=email]:-ms-input-placeholder, .page-template-page-contact .form-contact input[type=text]:-ms-input-placeholder {
  color: #5E2246;
}
.page-template-page-contact .form-contact textarea::placeholder,
.page-template-page-contact .form-contact input[type=tel]::placeholder,
.page-template-page-contact .form-contact input[type=email]::placeholder,
.page-template-page-contact .form-contact input[type=text]::placeholder {
  color: #5E2246;
}
.page-template-page-contact .form-contact textarea {
  height: 250px;
}
.page-template-page-contact .form-contact input[type=button] {
  float: right;
  background-color: #B2C90A;
}
.page-template-page-contact .form-contact .nf-form-fields-required {
  display: none;
}
.page-template-page-contact .form-contact .nf-field-container {
  margin-bottom: 0.5rem;
}
.page-template-page-contact .parking {
  padding: 3rem;
  background-color: #fefefe;
}
.page-template-page-contact .parking td,
.page-template-page-contact .parking th {
  text-align: center;
  width: 33.33%;
}
.page-template-page-contact .parking th {
  background-color: #5E2246;
  color: #fefefe;
}
.page-template-page-contact .parking tr:last-child {
  background-color: #6D7584;
}
.page-template-page-contact .parking tr:last-child td {
  color: #fefefe;
  font-weight: 600;
  font-size: 2rem;
}
.page-template-page-contact .reception {
  margin-top: 2rem;
}
@media print, screen and (min-width: 40em) {
  .page-template-page-contact .reception {
    width: 80%;
  }
}
.page-template-page-contact .address {
  background-color: #5E2246;
  color: #fefefe;
  padding: 3rem;
}
@media print, screen and (min-width: 40em) {
  .page-template-page-contact .address {
    width: 80%;
  }
}
.page-template-page-contact .address .address-title {
  font-size: 1.4666666667rem;
}
.page-template-page-contact .address .fa-ul {
  margin-left: 1.5rem;
}
.page-template-page-contact .address a {
  color: #fefefe;
}
.page-template-page-gallery .gallery-grid {
  margin-top: 0;
}
.page-template-page-gallery .page-header {
  flex-flow: column;
  align-items: center;
}
@media print, screen and (max-width: 63.99875em) {
  .page-template-page-gallery .page-header .title-container-gallery {
    margin-bottom: 2rem;
  }
}
@media print, screen and (min-width: 40em) {
  .page-template-page-gallery .page-header {
    flex-flow: row;
  }
}
.page-template-page-gallery .button-group {
  flex-flow: column;
}
@media print, screen and (min-width: 64em) {
  .page-template-page-gallery .button-group {
    flex-flow: row;
    margin-left: auto;
    margin-bottom: 0;
  }
}
.page-template-page-gallery .button-group button {
  font-style: normal;
  font-family: "Raleway", "Helvetica Neue", sans-serif;
  font-size: 0.9333333333rem;
  border-radius: 1rem;
  padding: 0.5rem 1rem;
  font-weight: 400;
}
.page-template-page-gallery .button-group button i {
  font-size: 1.0666666667rem;
}
.page-template-page-gallery .button-group button.is-checked {
  background-color: #5E2246;
  color: #fefefe;
}
.page-template-page-gallery .images-grid .masonry {
  margin: 0;
  list-style: none;
}
@media print, screen and (min-width: 40em) {
  .page-template-page-gallery .grid-sizer {
    width: 33.33%;
  }
}
@media print, screen and (min-width: 64em) {
  .page-template-page-gallery .grid-sizer {
    width: 20%;
  }
}
@media print, screen and (min-width: 40em) {
  .page-template-page-gallery .masonry-item {
    width: 33.33%;
  }
}
@media print, screen and (min-width: 64em) {
  .page-template-page-gallery .masonry-item {
    width: 20%;
  }
}
.page-template-page-gallery .video-item {
  position: relative;
}
.page-template-page-gallery .video-item svg {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateX(-50%) translateY(-50%) scale(7);
}
.page-template-page-gallery .video-item path {
  fill: #fefefe;
  opacity: 0.5;
}
.main-grid .content {
  padding: 2rem 0;
}
/* ==========================================================================
    Factory oldalon az ikonos felsorolás
========================================================================== */
[data-whatinput=mouse] .reasons .reasons-item:hover {
  transform: scale(1);
  position: relative;
  z-index: 2;
  box-shadow: none;
}
.reasons {
  padding: 3rem 0;
  background-image: linear-gradient(95deg, #B2C90A, #6D7584);
}
.reasons .reasons-items {
  display: flex;
  flex-wrap: wrap;
  position: relative;
}
@media print, screen and (min-width: 40em) {
  .reasons .reasons-items {
    flex-wrap: wrap;
  }
}
@media print, screen and (min-width: 64em) {
  .reasons .reasons-items {
    flex-wrap: wrap;
    padding: 0 4rem;
  }
}
.reasons .reasons-item {
  width: 100%;
  margin: 0 1rem;
  flex-grow: 1;
  display: flex;
  flex-flow: column;
  position: relative;
  display: block;
  background-color: #fefefe;
  padding: 1rem 1rem 3rem;
  margin-bottom: 2rem;
  transition: all 0.2s ease-in-out;
}
@media print, screen and (min-width: 40em) {
  .reasons .reasons-item {
    width: initial;
    flex: 1 0 calc(33.33% - 2rem);
  }
}
@media print, screen and (min-width: 64em) {
  .reasons .reasons-item {
    flex: 1 0 calc(20% - 2rem);
  }
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) and (max-width: 1023px) {
  .reasons .reasons-item {
    width: 100%;
  }
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) and (min-width: 1024px) {
  .reasons .reasons-item {
    width: calc(20% - 2rem);
  }
}
.reasons .reasons-item:hover {
  transform: scale(1.1);
  position: relative;
  z-index: 2;
  box-shadow: 0 0 30px rgba(10, 10, 10, 0.5);
}
.reasons p, .reasons h2 {
  color: #40444D;
}
.reasons p {
  margin-bottom: 0;
  font-size: 0.7866666667rem;
}
.reasons .reasons-item-inner {
  height: 100%;
}
.reasons .button {
  position: absolute;
  bottom: 1rem;
  left: 50%;
  transform: translateX(-50%);
  white-space: nowrap;
  margin-bottom: 0;
  background-color: #B2C90A;
  color: #fefefe;
  font-weight: 800;
  font-size: 0.7333333333rem;
  padding: 0.2rem 0.5rem;
}
.reasons .reasons-item-image {
  padding: 0 4.5rem;
}
@media print, screen and (min-width: 64em) {
  .reasons .reasons-item-image {
    padding: 0 2.5rem;
  }
}
.reasons .reasons-item-image img {
  transition: all 0.2s ease-in-out;
  width: 150px;
  margin: 0 auto;
  display: block;
}
.reasons .reasons-item-title {
  text-align: center;
}
@media print, screen and (min-width: 64em) {
  .reasons .reasons-item-title {
    font-size: 0.8rem;
  }
}
@media screen and (min-width: 75em) {
  .reasons .reasons-item-title {
    font-size: 1.0666666667rem;
  }
}
.factory-content {
  max-width: 960px !important;
}
@media screen and (min-width: 75em) {
  .factory-content {
    max-width: 1024px !important;
  }
}
.dental-week-form {
  background-color: #801f55;
  padding: 3rem 2.5rem;
  display: flex;
  flex-flow: wrap;
}
.dental-week-form p {
  color: #fefefe;
}
.dental-week-form__text {
  flex: 1 1 calc(60% - 1rem);
  margin: 0 0.5rem;
}
.dental-week-form__form {
  flex: 1 1 calc(40% - 1rem);
  margin: 0 0.5rem;
}
.dental-week-form .InputBlock {
  flex: 1 0 100%;
  margin: 0 0.5rem;
}
.dental-week-form__input[type=text] {
  background-color: transparent;
}
.dental-week-form__input {
  margin-bottom: 0;
  padding: 1rem 2rem;
  height: initial;
  line-height: initial;
  font-size: 1.0666666667rem;
  width: 100%;
  margin-bottom: 1rem;
}
.dental-week-form__input::-moz-placeholder {
  color: #fefefe;
  font-size: 1.0666666667rem;
}
.dental-week-form__input:-ms-input-placeholder {
  color: #fefefe;
  font-size: 1.0666666667rem;
}
.dental-week-form__input::placeholder {
  color: #fefefe;
  font-size: 1.0666666667rem;
}
.dental-week-form__fieldset {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}
.dental-week-form__response {
  background-color: #d90000;
  color: #fefefe;
  width: 50%;
  margin: 0 auto;
}
.page-id-1198 td:nth-child(1) {
  width: 30%;
}
.page-id-1198 td:nth-child(2) {
  width: 20%;
}
.page-id-1198 td:nth-child(3) {
  width: 50%;
}
.blog-container .grid {
  grid-template-areas: "content" "sidebar";
}
@media print, screen and (min-width: 64em) {
  .blog-container .grid {
    grid-template-areas: "sidebar content";
  }
}
.blog-container .sidebar {
  grid-area: sidebar;
}
@media print, screen and (min-width: 64em) {
  .blog-container .sidebar {
    padding-left: 6rem;
  }
}
.blog-container .content {
  padding-top: 0;
  grid-area: content;
}
@media print, screen and (min-width: 40em) {
  .blog-container .grid-sizer,
.blog-container .masonry-item {
    width: 33.33%;
  }
}
.blog-container .grid-item-inner {
  padding-bottom: 4rem;
  background-color: #fefefe;
  transition: all 0.2s ease-in-out;
  position: relative;
}
@media print, screen and (min-width: 64em) {
  .blog-container .grid-item-inner:hover {
    transform: scale(1.1);
    z-index: 1100;
    box-shadow: 0 0 30px rgba(10, 10, 10, 0.1);
  }
}
.blog-container .post-link {
  display: block;
  color: #40444D;
}
.blog-container .image {
  margin-bottom: 2rem;
  display: block;
}
@media print, screen and (min-width: 40em) {
  .blog-container .entry {
    width: calc(100% - 1rem);
  }
}
.blog-container .entry-header,
.blog-container .entry-content {
  padding: 0 1rem;
}
.blog-container .entry-title a {
  color: #40444D;
  transition: color 0.2s ease-in-out;
}
.blog-container .entry-title a:hover {
  color: #5E2246;
}
.blog-container .view-more-button-wrapper {
  padding: 0 1rem;
}
.page-template-page-steps .page-header.with-image {
  display: block;
  position: relative;
}
.page-template-page-steps .page-header.with-image .title-container {
  padding: 1rem 2rem;
}
@media print, screen and (min-width: 64em) {
  .page-template-page-steps .page-header.with-image .title-container {
    position: absolute;
    left: 6rem;
    top: 50%;
    transform: translateY(-50%);
    width: 40%;
  }
  .page-template-page-steps .page-header.with-image .paragraph-title {
    color: #fefefe !important;
  }
  .page-template-page-steps .page-header.with-image p {
    color: #fefefe !important;
  }
}
.steps-row {
  padding: 6rem 0 4rem;
}
.steps-row .paragraph-title {
  font-size: 1.2rem;
}
.steps-row .paragraph-title span {
  color: #9e1c62;
  font-size: 1.3333333333rem;
  font-weight: 700;
}
.steps-row p {
  font-size: 0.9333333333rem;
}
.steps-row .steps__item {
  display: flex;
  margin-bottom: 2rem;
  flex-flow: column;
}
@media print, screen and (min-width: 64em) {
  .steps-row .steps__item {
    flex-flow: row;
  }
  .steps-row .steps__item:last-child {
    margin-bottom: 0;
  }
}
.steps-row .steps__item-image {
  flex: 1 0 30%;
  padding: 0 60% 0 0;
}
@media print, screen and (min-width: 64em) {
  .steps-row .steps__item-image {
    padding: 0 1rem 0 2rem;
    position: relative;
    top: -2rem;
  }
}
.steps-row .slide-to-btn {
  background-color: #9ca1ab;
  color: #fefefe;
  padding: 0.5rem 1rem;
  border-radius: 50px;
  font-size: 0.9333333333rem;
  font-weight: 700;
  white-space: nowrap;
}
@media print, screen and (max-width: 39.99875em) {
  .steps-row .slide-to-btn {
    font-size: 0.8rem;
  }
}
.steps-row .slide-to-btn svg {
  margin-right: 0.5rem;
  display: inline;
}
.dw-light-row {
  background: linear-gradient(180deg, #9e1c62 0%, rgba(158, 28, 98, 0) 100%), linear-gradient(0deg, #9e1c62, #9e1c62), linear-gradient(0deg, #000000, #000000), url("../assets/budapest/md_relax-contact-bg.jpg"), #f5f6f7;
  background-blend-mode: normal, multiply, color, normal, normal;
}
.dw-light-row .paragraph-title span {
  color: #fefefe;
}
.dw-light-row__header p {
  color: #fefefe;
}
.dw-light-row .text {
  background-color: #fefefe;
}
.dw-light-row .upcomming a {
  color: #fefefe;
}
.hotels-row {
  padding: 6rem 0;
  background-color: #d9dbdf;
}
.hotels-row__header {
  margin-bottom: 2rem;
}
.hotels-row__header + .grid {
  display: block;
}
.hotels-row .carousel-wrapper {
  display: block;
}
@media print, screen and (max-width: 63.99875em) {
  .hotels-row .carousel-wrapper {
    margin: 0 !important;
  }
}
.hotels-row .hotels-carousel {
  position: relative;
}
.hotels-row .hotels-carousel__item {
  padding: 2rem;
  background-color: #fefefe;
  border-radius: 15px;
  box-shadow: 0px 0px 10px rgba(64, 68, 77, 0.2);
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.hotels-row .hotels-carousel__header p {
  font-size: 0.9333333333rem;
}
.hotels-row .hotels-carousel__title {
  font-size: 1.0666666667rem;
  text-transform: initial;
}
.hotels-row .hotels-carousel__gallery {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  grid-gap: 1rem;
}
.hotels-row .hotels-carousel__gallery a {
  overflow: hidden;
}
@media print, screen and (min-width: 64em) {
  .hotels-row .hotels-carousel__gallery a {
    height: 230px;
  }
}
.hotels-row .hotels-carousel__gallery img {
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  height: 100%;
}
@media print, screen and (min-width: 40em) {
  .hotels-row .hotels-carousel__gallery {
    grid-template-columns: 1fr 1fr 1fr;
  }
}
.hotels-row .hotels-carousel .owl-nav {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 100%;
  justify-content: space-between;
}
@media print, screen and (min-width: 64em) {
  .hotels-row .hotels-carousel .owl-nav {
    display: flex;
  }
}
.hotels-row .hotels-carousel .owl-nav button:hover {
  background-color: transparent;
}
.hotels-row .hotels-carousel .owl-nav .owl-prev {
  position: relative;
  left: -2rem;
}
.hotels-row .hotels-carousel .owl-nav .owl-next {
  position: relative;
  right: -2rem;
}
.hotels-row .hotels-carousel .owl-stage {
  display: flex;
}
.hotels-row .hotels-carousel .owl-item {
  display: flex;
  flex: 1 0 auto;
}
.budapest-row {
  padding: 6rem 0;
}
.budapest-row .grid {
  grid-gap: 4rem;
}
.budapest-row .container {
  max-width: 900px;
}
.budapest-row .text {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
}
.budapest-row .more-btn {
  background-color: #9e1c62;
  color: #fefefe;
  padding: 0.5rem 1rem;
  border-radius: 50px;
  font-size: 0.9333333333rem;
  font-weight: 700;
}
@media print, screen and (max-width: 39.99875em) {
  .budapest-row .more-btn {
    font-size: 0.8rem;
  }
}
.budapest-row .more-btn svg {
  margin-right: 0.5rem;
  position: relative;
  top: 1px;
}
.page-thankyou .main-grid {
  margin-top: 0;
}
.page-thankyou .header {
  height: 13.3333333333rem;
  overflow: hidden;
}
@media print, screen and (min-width: 64em) {
  .page-thankyou .header {
    height: 23.7333333333rem;
  }
}
.page-thankyou .header img {
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  height: 100%;
}
.page-thankyou .banner-wrapper {
  display: grid;
  padding: 10rem 2rem 4rem;
  grid-template-columns: 1fr;
  gap: 2rem;
  background-color: #d9dbdf;
  position: relative;
}
.page-thankyou .banner-wrapper .banner-left {
  order: 2;
}
.page-thankyou .banner-wrapper .banner-right {
  order: 3;
}
@media print, screen and (min-width: 64em) {
  .page-thankyou .banner-wrapper {
    padding: 4rem 8rem;
    grid-template-columns: 1fr 2fr 1fr;
  }
  .page-thankyou .banner-wrapper .banner-left {
    order: 1;
  }
  .page-thankyou .banner-wrapper .text {
    order: 2;
  }
}
.page-thankyou .banner-wrapper h1 {
  color: #7e1f54;
  text-transform: uppercase;
  text-align: center;
  font-size: 2.1333333333rem;
  -webkit-hyphens: auto;
      -ms-hyphens: auto;
          hyphens: auto;
  letter-spacing: 0.03em;
}
@media screen and (max-width: 23.4375em) {
  .page-thankyou .banner-wrapper h1 {
    font-size: 1.7333333333rem;
  }
}
@media screen and (max-width: 20em) {
  .page-thankyou .banner-wrapper h1 {
    font-size: 1.2rem;
  }
}
@media print, screen and (min-width: 64em) {
  .page-thankyou .banner-wrapper h1 {
    font-size: 2.4rem;
  }
}
.page-thankyou .banner-wrapper .text-inner p {
  text-align: center;
  font-size: 1.3333333333rem;
  color: #6d7584;
}
@media print, screen and (min-width: 64em) {
  .page-thankyou .banner-wrapper .text-inner p {
    font-size: 1.6rem;
  }
}
.page-thankyou .banner-wrapper button {
  font-weight: 700;
  background-color: #9ca1ab;
  margin: 0 auto;
  display: block;
  color: #fefefe;
  padding: 0.2666666667rem 1.3333333333rem;
  border-radius: 100px;
  cursor: pointer;
}
.page-thankyou .banner-wrapper .text-inner {
  background-color: #fefefe;
  padding: 2rem;
  border-radius: 15px;
  position: absolute;
  top: 0;
  transform: translate(0, -50%);
  box-shadow: 0px 0px 30px rgba(64, 68, 77, 0.25);
  left: 2rem;
  right: 2rem;
}
@media print, screen and (min-width: 64em) {
  .page-thankyou .banner-wrapper .text-inner {
    left: 50%;
    right: initial;
    transform: translate(-50%, -50%);
    width: 30rem;
  }
}
.page-thankyou .banner-wrapper .banner-header h4 {
  font-size: 1.0666666667rem;
  text-align: center;
  color: #40444d;
}
.page-thankyou .banner-wrapper .banner-container {
  border-radius: 15px;
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
  max-width: 100%;
}
.page-thankyou .banner-wrapper .banner-container img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
@media print, screen and (max-width: 63.99875em) {
  .thankyou-kampany .header img {
    display: none;
  }
}
.thankyou-kampany .text-inner {
  background-color: transparent !important;
  border-radius: 15px;
  position: absolute;
  top: 5% !important;
  box-shadow: none !important;
  width: 100%;
  display: flex;
  flex-flow: column;
  justify-content: center;
  left: 0 !important;
}
@media screen and (min-width: 23.4375em) {
  .thankyou-kampany .text-inner {
    width: 30rem;
    overflow: initial;
    left: 50% !important;
    transform: translate(-50%, -50%) !important;
  }
}
@media screen and (max-width: 23.4375em) {
  .thankyou-kampany .text-inner {
    width: 100% !important;
  }
  .thankyou-kampany .banner-wrapper {
    padding: 18rem 2rem 4rem !important;
  }
}
@media print, screen and (max-width: 74.99875em) {
  .thankyou-kampany .banner-wrapper {
    padding: 28rem 2rem 4rem !important;
  }
}
.thankyou-kampany .bgimage {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: -1;
  width: 100%;
  display: none;
}
.thankyou-kampany .bgimage.mobil {
  display: block;
}
@media screen and (min-width: 23.4375em) {
  .thankyou-kampany .bgimage {
    width: 38.8rem;
  }
  .thankyou-kampany .bgimage.mobil {
    display: none;
  }
  .thankyou-kampany .bgimage.desktop {
    display: block;
  }
}
.thankyou-kampany .text-inner p,
.thankyou-kampany h1 {
  color: #fefefe !important;
  font-weight: 600 !important;
}
.thankyou-kampany h1 {
  font-weight: 800 !important;
}
.thankyou-kampany button {
  background-color: #c3086f !important;
}
.single-case-study h1 {
  text-transform: initial;
}
.single-case-study blockquote p {
  font-size: 1.4666666667rem;
  color: #9E1C62;
  text-align: center;
}
.single-case-study blockquote {
  padding: 0 4rem;
}
.single-case-study blockquote::before {
  content: "";
  top: 0;
  width: 40px;
  height: 40px;
  background-size: 40px 40px;
  background-image: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzEiIGhlaWdodD0iMjIiIHZpZXdCb3g9IjAgMCAzMSAyMiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggaWQ9IlZlY3RvciIgZD0iTTExLjEzNTkgMC41TDkuMzQ5MiA5Ljg4MDA1TDkuMjM2MTQgMTAuNDczNkg5Ljg0MDM3SDEyLjkwMjRWMjEuMTA5NUgxVjkuODExNjJMMy44NzY3NiAwLjVIMTEuMTM1OVpNMjguMjMzNSAwLjVMMjYuNDQ2OCA5Ljg4MDA1TDI2LjMzMzggMTAuNDczNkgyNi45MzhIMzBWMjEuMTA5NUgxOC4wOTc2VjkuODExNjJMMjAuOTc0NCAwLjVIMjguMjMzNVoiIHN0cm9rZT0iIzlFMUM2MiIvPgo8L3N2Zz4K);
}
.single-case-study blockquote::after {
  content: " ";
  bottom: 0;
  right: 0;
  width: 40px;
  height: 40px;
  background-size: 40px 40px;
  position: absolute;
  background-image: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzEiIGhlaWdodD0iMjIiIHZpZXdCb3g9IjAgMCAzMSAyMiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggaWQ9IlZlY3RvciIgZD0iTTE5Ljg2NDEgMjEuMTA5NEwyMS42NTA4IDExLjcyOTNMMjEuNzYzOSAxMS4xMzU4TDIxLjE1OTYgMTEuMTM1OEwxOC4wOTc2IDExLjEzNThMMTguMDk3NiAwLjQ5OTg3NUwzMCAwLjQ5OTg3NEwzMCAxMS43OTc4TDI3LjEyMzIgMjEuMTA5NEwxOS44NjQxIDIxLjEwOTRaTTIuNzY2NSAyMS4xMDk0TDQuNTUzMiAxMS43MjkzTDQuNjY2MiAxMS4xMzU4TDQuMDYyIDExLjEzNThMMC45OTk5OTkgMTEuMTM1OEwwLjk5OTk5OCAwLjQ5OTg3N0wxMi45MDI0IDAuNDk5ODc2TDEyLjkwMjQgMTEuNzk3OEwxMC4wMjU2IDIxLjEwOTRMMi43NjY1IDIxLjEwOTRaIiBzdHJva2U9IiM5RTFDNjIiLz4KPC9zdmc+Cg==);
}
.single-case-study #baguetteBox-slider img {
  max-width: 650px !important;
}
.post-type-archive-case-study .main-container {
  padding-top: 0;
}
.post-type-archive-case-study .masonry-item {
  width: 100%;
  margin-bottom: 1rem;
}
@media print, screen and (min-width: 64em) {
  .post-type-archive-case-study .masonry-item {
    width: calc(33.33333% - 1rem);
    margin: 0 0.5rem 1rem;
  }
}
.post-type-archive-case-study .footer {
  background-color: #40444D;
}
.block-item.alignfull {
  width: 100vw;
  position: relative;
  left: 50%;
  right: 50%;
  margin-left: -50vw;
  margin-right: -50vw;
}
.gyik .accordion {
  background-color: #e8e9ec;
}
.gyik .accordion-item.is-active .accordion-title {
  background-color: #fefefe;
  border: none;
  border-left: 1px solid #e6e6e6;
  border-right: 1px solid #e6e6e6;
  border-top: 1px solid #e6e6e6;
  border-bottom: 0;
}
.gyik .accordion-item.is-active .accordion-content {
  border: none;
  border-left: 1px solid #e6e6e6;
  border-right: 1px solid #e6e6e6;
  border-top: 0;
  border-bottom: 1px solid #e6e6e6;
}
.gyik .accordion-item.is-active .accordion-title::before {
  content: "-";
  margin-top: -0.3rem;
}
.gyik .accordion-title {
  font-size: 1rem;
  color: #5E2246;
  padding-left: 3rem;
}
.gyik .accordion-title::before {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 1rem;
  margin-top: 0;
  content: "+";
  font-size: 2.6666666667rem;
  right: initial;
}
.slider {
  width: 100%;
}
@media print, screen and (min-width: 64em) {
  .slider .owl-stage {
    display: flex;
  }
  .slider .owl-item {
    display: flex;
    flex: 1 0 auto;
    height: initial;
  }
}
.slider .slide {
  display: flex;
  flex-flow: column;
  background-color: #e8e9ec;
}
.slider .slide .image {
  order: 1;
}
.slider .slide .text {
  order: 2;
}
@media print, screen and (min-width: 40em) {
  .slider .slide {
    flex-flow: row;
  }
  .slider .slide .text {
    order: 1;
  }
  .slider .slide .image {
    order: 2;
  }
  .slider .slide .image,
.slider .slide .text {
    width: 50%;
  }
}
.slider .slide .text {
  padding: 1rem 1rem 3rem;
}
.slider .slide .image img {
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  height: 100%;
}
.slider .owl-dots {
  position: absolute;
  left: 0;
  bottom: 0;
  right: 0;
}
.slider .owl-dots .owl-dot span {
  background-color: #5E2246;
}
.slider .owl-dots .owl-dot.active span {
  width: 14px;
  height: 14px;
  position: relative;
  top: 2px;
  background-color: #9e1c62;
}
@media print, screen and (min-width: 40em) {
  .slider .owl-dots {
    width: 50%;
  }
}
.slider:hover .owl-nav {
  opacity: 1;
}
.slider .owl-nav {
  position: absolute;
  left: 50%;
  right: 0;
  margin: 0;
  opacity: 0;
  transition: opacity 0.2s ease-in-out;
  height: 40px;
  top: 10%;
}
@media print, screen and (min-width: 40em) {
  .slider .owl-nav {
    top: 50%;
    transform: translateY(-50%);
  }
}
.slider .owl-nav:hover [class*=owl-] {
  background-color: transparent;
  color: #5E2246;
}
.slider .owl-nav [class*=owl-] {
  position: absolute;
  font-size: 2rem;
}
.slider .owl-nav [class*=owl-] i::before {
  font-size: 2.6666666667rem;
  color: #fefefe;
  text-shadow: 0 0 20px rgba(10, 10, 10, 0.6);
}
.slider .owl-nav .owl-prev {
  left: 1rem;
}
.slider .owl-nav .owl-next {
  right: 1rem;
}
.image-left-container .wp-block-column:nth-child(1) {
  flex-basis: 100%;
  order: 2;
}
.image-left-container .wp-block-column:nth-child(2) {
  flex-basis: 100%;
  order: 1;
}
@media print, screen and (min-width: 40em) {
  .image-left-container .wp-block-column:nth-child(1) {
    flex-basis: 25%;
    margin-right: 0;
    order: 1;
  }
  .image-left-container .wp-block-column:nth-child(2) {
    flex-basis: 75%;
    order: 2;
  }
}
.hover\:bg-lila-3:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(158 28 98 / var(--tw-bg-opacity));
}
.hover\:text-white-1:hover{
  --tw-text-opacity: 1;
  color: rgb(254 254 254 / var(--tw-text-opacity));
}
.hover\:underline:hover{
  -webkit-text-decoration-line: underline;
          text-decoration-line: underline;
}
@media (min-width: 768px){
  .md\:order-1{
    order: 1;
  }
  .md\:order-2{
    order: 2;
  }
  .md\:mx-auto{
    margin-left: auto;
    margin-right: auto;
  }
  .md\:mb-0{
    margin-bottom: 0px;
  }
  .md\:mb-12{
    margin-bottom: 3rem;
  }
  .md\:mb-24{
    margin-bottom: 6rem;
  }
  .md\:flex{
    display: flex;
  }
  .md\:grid{
    display: grid;
  }
  .md\:h-24{
    height: 6rem;
  }
  .md\:w-2\/3{
    width: 66.666667%;
  }
  .md\:w-\[65\%\]{
    width: 65%;
  }
  .md\:grid-cols-2{
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .md\:grid-cols-3{
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .md\:flex-row{
    flex-direction: row;
  }
  .md\:justify-center{
    justify-content: center;
  }
  .md\:gap-8{
    gap: 2rem;
  }
  .md\:rounded-full{
    border-radius: 9999px;
  }
  .md\:px-6{
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
  .md\:py-2{
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
  }
  .md\:py-24{
    padding-top: 6rem;
    padding-bottom: 6rem;
  }
  .md\:pl-8{
    padding-left: 2rem;
  }
  .md\:text-32{
    font-size: 2.13333333rem;
  }
}
@media (min-width: 1024px){
  .lg\:absolute{
    position: absolute;
  }
  .lg\:relative{
    position: relative;
  }
  .lg\:bottom-0{
    bottom: 0px;
  }
  .lg\:bottom-64{
    bottom: 16rem;
  }
  .lg\:left-0{
    left: 0px;
  }
  .lg\:right-0{
    right: 0px;
  }
  .lg\:right-64{
    right: 16rem;
  }
  .lg\:top-0{
    top: 0px;
  }
  .lg\:top-1\/2{
    top: 50%;
  }
  .lg\:order-1{
    order: 1;
  }
  .lg\:order-2{
    order: 2;
  }
  .lg\:col-span-2{
    grid-column: span 2 / span 2;
  }
  .lg\:col-start-2{
    grid-column-start: 2;
  }
  .lg\:mx-0{
    margin-left: 0px;
    margin-right: 0px;
  }
  .lg\:mb-0{
    margin-bottom: 0px;
  }
  .lg\:mb-44{
    margin-bottom: 11rem;
  }
  .lg\:mb-8{
    margin-bottom: 2rem;
  }
  .lg\:ml-0{
    margin-left: 0px;
  }
  .lg\:mr-16{
    margin-right: 4rem;
  }
  .lg\:mr-8{
    margin-right: 2rem;
  }
  .lg\:mt-0{
    margin-top: 0px;
  }
  .lg\:block{
    display: block;
  }
  .lg\:inline{
    display: inline;
  }
  .lg\:flex{
    display: flex;
  }
  .lg\:grid{
    display: grid;
  }
  .lg\:hidden{
    display: none;
  }
  .lg\:aspect-auto{
    aspect-ratio: auto;
  }
  .lg\:h-full{
    height: 100%;
  }
  .lg\:w-1\/2{
    width: 50%;
  }
  .lg\:w-10{
    width: 2.5rem;
  }
  .lg\:w-80{
    width: 20rem;
  }
  .lg\:w-\[350px\]{
    width: 350px;
  }
  .lg\:w-full{
    width: 100%;
  }
  .lg\:-translate-y-1\/2{
    --tw-translate-y: -50%;
    transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
  }
  .lg\:-rotate-90{
    --tw-rotate: -90deg;
    transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
  }
  .lg\:transform{
    transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
  }
  .lg\:cursor-pointer{
    cursor: pointer;
  }
  .lg\:grid-cols-2{
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .lg\:grid-cols-3{
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .lg\:grid-cols-4{
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
  .lg\:flex-row{
    flex-direction: row;
  }
  .lg\:flex-col{
    flex-direction: column;
  }
  .lg\:items-center{
    align-items: center;
  }
  .lg\:justify-start{
    justify-content: flex-start;
  }
  .lg\:bg-transparent{
    background-color: transparent;
  }
  .lg\:p-0{
    padding: 0px;
  }
  .lg\:p-24{
    padding: 6rem;
  }
  .lg\:px-0{
    padding-left: 0px;
    padding-right: 0px;
  }
  .lg\:px-16{
    padding-left: 4rem;
    padding-right: 4rem;
  }
  .lg\:px-24{
    padding-left: 6rem;
    padding-right: 6rem;
  }
  .lg\:px-4{
    padding-left: 1rem;
    padding-right: 1rem;
  }
  .lg\:px-48{
    padding-left: 12rem;
    padding-right: 12rem;
  }
  .lg\:px-8{
    padding-left: 2rem;
    padding-right: 2rem;
  }
  .lg\:py-0{
    padding-top: 0px;
    padding-bottom: 0px;
  }
  .lg\:py-24{
    padding-top: 6rem;
    padding-bottom: 6rem;
  }
  .lg\:py-8{
    padding-top: 2rem;
    padding-bottom: 2rem;
  }
  .lg\:pb-24{
    padding-bottom: 6rem;
  }
  .lg\:pl-24{
    padding-left: 6rem;
  }
  .lg\:pr-8{
    padding-right: 2rem;
  }
  .lg\:text-left{
    text-align: left;
  }
  .lg\:text-right{
    text-align: right;
  }
  .lg\:text-16{
    font-size: 1.067rem;
  }
  .lg\:text-22{
    font-size: 1.467rem;
  }
  .lg\:text-30{
    font-size: 2rem;
  }
  .lg\:text-32{
    font-size: 2.13333333rem;
  }
  .lg\:text-48{
    font-size: 3.2rem;
  }
}
@media (min-width: 1280px){
  .xl\:relative{
    position: relative;
  }
  .xl\:top-0{
    top: 0px;
  }
  .xl\:z-0{
    z-index: 0;
  }
  .xl\:h-100vh{
    height: 100vh;
  }
  .xl\:w-full{
    width: 100%;
  }
  .xl\:grid-cols-5{
    grid-template-columns: repeat(5, minmax(0, 1fr));
  }
  .xl\:grid-cols-6{
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }
  .xl\:bg-transparent{
    background-color: transparent;
  }
  .xl\:px-0{
    padding-left: 0px;
    padding-right: 0px;
  }
  .xl\:px-8{
    padding-left: 2rem;
    padding-right: 2rem;
  }
  .xl\:text-48{
    font-size: 3.2rem;
  }
}
@media (min-width: 1536px){
  .\32xl\:bottom-52{
    bottom: 13rem;
  }
  .\32xl\:w-128{
    width: 32rem;
  }
  .\32xl\:text-20{
    font-size: 1.33333333rem;
  }
  .\32xl\:text-48{
    font-size: 3.2rem;
  }
}
.\[\&\.is-checked\]\:bg-darkgray-2.is-checked{
  --tw-bg-opacity: 1;
  background-color: rgb(87 93 104 / var(--tw-bg-opacity));
}
.\[\&\.is-checked\]\:bg-magenta-2.is-checked{
  --tw-bg-opacity: 1;
  background-color: rgb(202 11 114 / var(--tw-bg-opacity));
}
.\[\&\.is-checked\]\:bg-zold-1.is-checked{
  --tw-bg-opacity: 1;
  background-color: rgb(182 204 0 / var(--tw-bg-opacity));
}
.\[\&\.is-checked\]\:text-white-1.is-checked{
  --tw-text-opacity: 1;
  color: rgb(254 254 254 / var(--tw-text-opacity));
}
.\[\&\>\.image-wrapper\:last-child\]\:mb-0>.image-wrapper:last-child{
  margin-bottom: 0px;
}
.\[\&\>\.image-wrapper\]\:mb-4>.image-wrapper{
  margin-bottom: 1rem;
}
.\[\&\>br\]\:hidden>br{
  display: none;
}
.\[\&\>button\.is-checked\]\:scale-110>button.is-checked{
  --tw-scale-x: 1.1;
  --tw-scale-y: 1.1;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.\[\&\>button\]\:cursor-pointer>button{
  cursor: pointer;
}
.\[\&\>button\]\:rounded-full>button{
  border-radius: 9999px;
}
.\[\&\>button\]\:px-4>button{
  padding-left: 1rem;
  padding-right: 1rem;
}
.\[\&\>button\]\:py-1>button{
  padding-top: 0.25rem;
  padding-bottom: 0.25rem;
}
.\[\&\>button\]\:text-12>button{
  font-size: .8rem;
}
.\[\&\>button\]\:font-bold>button{
  font-weight: 700;
}
.\[\&\>button\]\:leading-normal>button{
  line-height: 1.5;
}
.\[\&\>button\]\:transition-transform>button{
  transition-property: transform;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}
.\[\&\>button\]\:ease-in-out>button{
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}
.\[\&\>h2\]\:text-18>h2{
  font-size: 1.2rem;
}
.\[\&\>h2\]\:font-bold>h2{
  font-weight: 700;
}
.\[\&\>h2\]\:uppercase>h2{
  text-transform: uppercase;
}
.\[\&\>h2\]\:text-lila-3>h2{
  --tw-text-opacity: 1;
  color: rgb(158 28 98 / var(--tw-text-opacity));
}
.\[\&\>h2\]\:text-magenta-2>h2{
  --tw-text-opacity: 1;
  color: rgb(202 11 114 / var(--tw-text-opacity));
}
.\[\&\>img\]\:h-100percent>img{
  height: 100%;
}
.\[\&\>img\]\:w-100percent>img{
  width: 100%;
}
.\[\&\>img\]\:rounded-md>img{
  border-radius: 0.375rem;
}
.\[\&\>img\]\:object-cover>img{
  -o-object-fit: cover;
     object-fit: cover;
}
.\[\&\>p\]\:\!text-darkgray-1>p{
  --tw-text-opacity: 1 !important;
  color: rgb(64 68 77 / var(--tw-text-opacity)) !important;
}
.\[\&_h2\]\:text-24 h2{
  font-size: 1.6rem;
}
.\[\&_h2\]\:font-bold h2{
  font-weight: 700;
}
.\[\&_h2\]\:text-\[\#CB0000\] h2{
  --tw-text-opacity: 1;
  color: rgb(203 0 0 / var(--tw-text-opacity));
}
.\[\&_h3\]\:text-16 h3{
  font-size: 1.067rem;
}
.\[\&_h3\]\:text-\[\#CB0000\] h3{
  --tw-text-opacity: 1;
  color: rgb(203 0 0 / var(--tw-text-opacity));
}
.\[\&_li\]\:text-white-1 li{
  --tw-text-opacity: 1;
  color: rgb(254 254 254 / var(--tw-text-opacity));
}
.\[\&_p\]\:text-16 p{
  font-size: 1.067rem;
}
.\[\&_p\]\:text-darkgray-1 p{
  --tw-text-opacity: 1;
  color: rgb(64 68 77 / var(--tw-text-opacity));
}
.\[\&_strong\]\:text-lila-3 strong{
  --tw-text-opacity: 1;
  color: rgb(158 28 98 / var(--tw-text-opacity));
}
.\[\&_table\]\:overflow-hidden table{
  overflow: hidden;
}
.\[\&_table\]\:rounded-2xl table{
  border-radius: 1rem;
}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFwcC5jc3MiLCJhcHAuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9vd2wuY2Fyb3VzZWwvc3JjL3Njc3MvX2NvcmUuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9vd2wuY2Fyb3VzZWwvc3JjL3Njc3MvX2FuaW1hdGUuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9vd2wuY2Fyb3VzZWwvc3JjL3Njc3MvX2F1dG9oZWlnaHQuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9vd2wuY2Fyb3VzZWwvc3JjL3Njc3MvX2xhenlsb2FkLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvb3dsLmNhcm91c2VsL3NyYy9zY3NzL192aWRlby5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL293bC5jYXJvdXNlbC9zcmMvc2Nzcy9fdGhlbWUuZGVmYXVsdC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL293bC5jYXJvdXNlbC9zcmMvc2Nzcy9fdGhlbWUuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9iYWd1ZXR0ZWJveC5qcy9zcmMvYmFndWV0dGVCb3guc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9Ac3BsaWRlanMvc3BsaWRlL2Rpc3QvY3NzL3NwbGlkZS5taW4uY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL3RhaWx3aW5kY3NzL2Jhc2UuY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL3RhaWx3aW5kY3NzL3V0aWxpdGllcy5jc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2ZvdW5kYXRpb24uc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fYnJlYWtwb2ludC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19yZXZlYWwuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdmVuZG9yL25vcm1hbGl6ZS5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9fZ2xvYmFsLnNjc3MiLCJnbG9iYWwvX21hZGVudGEtc2V0dGluZ3Muc2NzcyIsImdsb2JhbC9fc2V0dGluZ3Muc2NzcyIsImdsb2JhbC9fY29sb3JzLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX21peGlucy5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9fdGV4dC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9fY2hlY2tib3guc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2Zvcm1zLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19sYWJlbC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9faGVscC10ZXh0LnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19pbnB1dC1ncm91cC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9fZmllbGRzZXQuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX3NlbGVjdC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9fZXJyb3Iuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYnV0dG9uLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX2NvbG9yLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3R5cG9ncmFwaHkvX2Jhc2Uuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdHlwb2dyYXBoeS9faGVscGVycy5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy90eXBvZ3JhcGh5L19hbGlnbm1lbnQuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdHlwb2dyYXBoeS9fcHJpbnQuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYnV0dG9uLWdyb3VwLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2Nsb3NlLWJ1dHRvbi5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL190b3AtYmFyLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3Zpc2liaWxpdHkuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYWNjb3JkaW9uLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3RhYmxlLnNjc3MiLCJnbG9iYWwvX2xheW91dC5zY3NzIiwiZ2xvYmFsL19nbG9iYWwuc2NzcyIsImdsb2JhbC9fdmlkZW8tZW1iZWQuc2NzcyIsImdsb2JhbC9fdHlwby5zY3NzIiwiZ2xvYmFsL19idXR0b25zLnNjc3MiLCJnbG9iYWwvX2d1dGVuYmVyZy5zY3NzIiwiZ2xvYmFsL19iYWRnZXMuc2NzcyIsImNvbXBvbmVudHMvX2FuY2hvci5zY3NzIiwiY29tcG9uZW50cy9faGVhZGVyLnNjc3MiLCJjb21wb25lbnRzL19zcGxpZGUuc2NzcyIsImNvbXBvbmVudHMvX21vYmlsZS1tZW51LnNjc3MiLCJjb21wb25lbnRzL19mb290ZXIuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MveHktZ3JpZC9fZ3V0dGVycy5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy94eS1ncmlkL19ncmlkLnNjc3MiLCJjb21wb25lbnRzL19jYWxsLXVzLnNjc3MiLCJjb21wb25lbnRzL19icmVhZGNydW1icy5zY3NzIiwiY29tcG9uZW50cy9fcGFnZS1oZWFkZXIuc2NzcyIsImNvbXBvbmVudHMvX3NpZGViYXIuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9yZnMvc2Nzcy5zY3NzIiwiY29tcG9uZW50cy9fZm9ybS5zY3NzIiwiY29tcG9uZW50cy9fbWljcm9tb2RhbC5zY3NzIiwiY29tcG9uZW50cy9fbGlua3Muc2NzcyIsImNvbXBvbmVudHMvX3ByaWNlLWNoZWNrLnNjc3MiLCJjb21wb25lbnRzL19nb29nbGVtYXBzLnNjc3MiLCJjb21wb25lbnRzL19sYXRlc3RibG9nLnNjc3MiLCJjb21wb25lbnRzL19icmVha2luZy1wb3B1cC5zY3NzIiwiY29tcG9uZW50cy9fY29udGFjdC1iYXIuc2NzcyIsImNvbXBvbmVudHMvX29mZmVyLnNjc3MiLCJjb21wb25lbnRzL19hbGxvbjQtdGFibGVzLnNjc3MiLCJwYWdlcy9fZnJvbnQuc2NzcyIsIm1pY3Jvc2l0ZS9idWRhcGVzdC9fZmx5LWluLnNjc3MiLCJtaWNyb3NpdGUvYnVkYXBlc3QvX2R3LWxpZ2h0LnNjc3MiLCJwYWdlcy9fYWJvdXQuc2NzcyIsInBhZ2VzL19jb250YWN0LnNjc3MiLCJwYWdlcy9fZ2FsbGVyeS5zY3NzIiwicGFnZXMvX3BhZ2Uuc2NzcyIsInBhZ2VzL19nYXJhbmNpYS5zY3NzIiwicGFnZXMvX2Jsb2cuc2NzcyIsInBhZ2VzL19zdGVwcy5zY3NzIiwicGFnZXMvX3BhZ2UtdGhhbmt5b3Uuc2NzcyIsInBhZ2VzL19jYXNlLXN0dWR5LnNjc3MiLCJibG9ja3MvX2dsb2JhbC5zY3NzIiwiYmxvY2tzL19neWlrLnNjc3MiLCJibG9ja3MvX3NsaWRlci5zY3NzIiwiYmxvY2tzL19pbWFnZS1sZWZ0LnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsZ0JBQWdCO0FDQWhCOzs7Ozs7Q0FBQTtBQ0FBOztFQUFBO0FBR0E7RUFDQyxhQUFBO0VBQ0EsV0FBQTtFQUNBLHdDQUFBO0VBQ0EsbUVBQUE7RUFDQSxrQkFBQTtFQUNBLFVBQUE7QUZTRDtBRVBDO0VBQ0Msa0JBQUE7RUFFQSwwQkFBQTtFQUNBLGdDQUFBO0VBQWtDLGlDQUFBO0FGVXBDO0FFUEM7RUFDQyxZQUFBO0VBQ0EsY0FBQTtFQUNBLFdBQUE7RUFDQSxrQkFBQTtFQUNBLGNBQUE7RUFDQSxTQUFBO0FGU0Y7QUVOQztFQUNDLGtCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxnQ0FBQTtFQUNBLDZDQUFBO0FGUUY7QUVMQzs7RUFFQyxtQ0FBQTtFQUNBLGdDQUFBO0VBQ0EsK0JBQUE7RUFDQSx1Q0FBQTtFQUNBLG9DQUFBO0VBQ0EsbUNBQUE7QUZPRjtBRUpDO0VBQ0Msa0JBQUE7RUFDQSxlQUFBO0VBQ0EsV0FBQTtFQUNBLG1DQUFBO0VBQ0Esd0NBQUE7RUFDQSwyQkFBQTtBRk1GO0FFSkM7RUFDQyxjQUFBO0VBQ0EsV0FBQTtBRk1GO0FFSEM7O0VBRUMsYUFBQTtBRktGO0FFRkM7OztFQUdDLGVBQUE7RUFDQSx5QkFBQTtFQUVBLHNCQUFBO0VBQ0EscUJBQUE7RUFDQSxpQkFBQTtBRklGO0FFREM7OztFQUdDLGdCQUFBO0VBQ0EsY0FBQTtFQUNBLFlBQUE7RUFDQSxxQkFBQTtFQUNBLGFBQUE7QUZHRjtBRUFDO0VBQ0MsY0FBQTtBRkVGO0FFQ0M7RUFDQyxVQUFBO0VBQ0EsY0FBQTtBRkNGO0FFRUM7RUFDQyxVQUFBO0FGQUY7QUVHQztFQUNDLGtCQUFBO0FGREY7QUVJQztFQUNDLG1CQUFBO0VBQ0EseUJBQUE7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RUFBQSxNQUFBO0VBQUEsU0FBQSxFQUFBLE1BQUE7RUFBQSxVQUFBLEVBQUEsTUFBQTtBQUFBO0FBQUE7O0NBQUE7QUFBQTs7RUFBQSxvQkFBQTtBQUFBO0FBQUE7OztDQUFBO0FBQUE7Ozs7RUFBQSwwQkFBQSxFQUFBLE1BQUE7RUFBQSw2QkFBQSxFQUFBLE1BQUE7RUFBQSxzQkFBQSxFQUFBLE1BQUE7QUFBQTtBQUFBOztDQUFBO0FBQUE7RUFBQSxhQUFBO0FBQUE7QUFBQTs7Q0FBQTtBQUFBO0VBQUEsZ0JBQUE7QUFBQTtBQUFBOztDQUFBO0FBQUE7RUFBQSx3QkFBQTtBQUFBO0FBQUE7O0NBQUE7QUFBQTs7RUFBQSxZQUFBO0FBQUE7QUFBQTs7O0NBQUE7QUFBQTtFQUFBLDZCQUFBLEVBQUEsTUFBQTtFQUFBLG9CQUFBLEVBQUEsTUFBQTtBQUFBO0FBQUE7O0NBQUE7QUFBQTtFQUFBLHdCQUFBO0FBQUE7QUFBQTs7O0NBQUE7QUFBQTtFQUFBLDBCQUFBLEVBQUEsTUFBQTtFQUFBLGFBQUEsRUFBQSxNQUFBO0FBQUE7QUFBQTs7Q0FBQTtBQUFBO0VBQUEsa0JBQUE7QUFBQTtBQUFBOztDQUFBO0FBQUE7Ozs7Ozs7Ozs7Ozs7RUFBQSxTQUFBO0FBQUE7QUFBQTtFQUFBLFNBQUE7RUFBQSxVQUFBO0FBQUE7QUFBQTtFQUFBLFVBQUE7QUFBQTtBQUFBOzs7RUFBQSxnQkFBQTtFQUFBLFNBQUE7RUFBQSxVQUFBO0FBQUE7QUFBQTs7Q0FBQTtBQUFBO0VBQUEsVUFBQTtBQUFBO0FBQUE7O0NBQUE7QUFBQTtFQUFBLGdCQUFBO0FBQUE7QUFBQTs7O0NBQUE7QUFBQTtFQUFBLFVBQUEsRUFBQSxNQUFBO0VBQUEsY0FBQSxFQUFBLE1BQUE7QUFBQTtBQUFBO0VBQUEsVUFBQSxFQUFBLE1BQUE7RUFBQSxjQUFBLEVBQUEsTUFBQTtBQUFBO0FBQUE7O0VBQUEsVUFBQSxFQUFBLE1BQUE7RUFBQSxjQUFBLEVBQUEsTUFBQTtBQUFBO0FBQUE7O0NBQUE7QUFBQTs7RUFBQSxlQUFBO0FBQUE7QUFBQTs7Q0FBQTtBQUFBO0VBQUEsZUFBQTtBQUFBO0FBQUE7Ozs7Q0FBQTtBQUFBOzs7Ozs7OztFQUFBLGNBQUEsRUFBQSxNQUFBO0VBQUEsc0JBQUEsRUFBQSxNQUFBO0FBQUE7QUFBQTs7Q0FBQTtBQUFBOztFQUFBLGVBQUE7RUFBQSxZQUFBO0FBQUE7QUFBQSx3RUFBQTtBQUFBO0VBQUEsYUFBQTtBQUFBO0FBQUE7RUFBQSx3QkFBQTtFQUFBLHdCQUFBO0VBQUEsbUJBQUE7RUFBQSxtQkFBQTtFQUFBLGNBQUE7RUFBQSxjQUFBO0VBQUEsY0FBQTtFQUFBLGVBQUE7RUFBQSxlQUFBO0VBQUEsYUFBQTtFQUFBLGFBQUE7RUFBQSxrQkFBQTtFQUFBLHNDQUFBO0VBQUEsOEJBQUE7RUFBQSw2QkFBQTtFQUFBLDRCQUFBO0VBQUEsZUFBQTtFQUFBLG9CQUFBO0VBQUEsc0JBQUE7RUFBQSx1QkFBQTtFQUFBLHdCQUFBO0VBQUEsa0JBQUE7RUFBQSwyQkFBQTtFQUFBLDRCQUFBO0VBQUEsc0NBQUE7RUFBQSxrQ0FBQTtFQUFBLDJCQUFBO0VBQUEsc0JBQUE7RUFBQSw4QkFBQTtFQUFBLFlBQUE7RUFBQSxrQkFBQTtFQUFBLGdCQUFBO0VBQUEsaUJBQUE7RUFBQSxrQkFBQTtFQUFBLGNBQUE7RUFBQSxnQkFBQTtFQUFBLGFBQUE7RUFBQSxtQkFBQTtFQUFBLHFCQUFBO0VBQUEsMkJBQUE7RUFBQSx5QkFBQTtFQUFBLDBCQUFBO0VBQUEsMkJBQUE7RUFBQSx1QkFBQTtFQUFBLHdCQUFBO0VBQUEseUJBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQSx3QkFBQTtFQUFBLHdCQUFBO0VBQUEsbUJBQUE7RUFBQSxtQkFBQTtFQUFBLGNBQUE7RUFBQSxjQUFBO0VBQUEsY0FBQTtFQUFBLGVBQUE7RUFBQSxlQUFBO0VBQUEsYUFBQTtFQUFBLGFBQUE7RUFBQSxrQkFBQTtFQUFBLHNDQUFBO0VBQUEsOEJBQUE7RUFBQSw2QkFBQTtFQUFBLDRCQUFBO0VBQUEsZUFBQTtFQUFBLG9CQUFBO0VBQUEsc0JBQUE7RUFBQSx1QkFBQTtFQUFBLHdCQUFBO0VBQUEsa0JBQUE7RUFBQSwyQkFBQTtFQUFBLDRCQUFBO0VBQUEsc0NBQUE7RUFBQSxrQ0FBQTtFQUFBLDJCQUFBO0VBQUEsc0JBQUE7RUFBQSw4QkFBQTtFQUFBLFlBQUE7RUFBQSxrQkFBQTtFQUFBLGdCQUFBO0VBQUEsaUJBQUE7RUFBQSxrQkFBQTtFQUFBLGNBQUE7RUFBQSxnQkFBQTtFQUFBLGFBQUE7RUFBQSxtQkFBQTtFQUFBLHFCQUFBO0VBQUEsMkJBQUE7RUFBQSx5QkFBQTtFQUFBLDBCQUFBO0VBQUEsMkJBQUE7RUFBQSx1QkFBQTtFQUFBLHdCQUFBO0VBQUEseUJBQUE7RUFBQTtBQUFBO0FDQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQSwyQkFBQTtFQUFBO0FBQUE7QUFBQTtFQUFBLGlCQUFBO0VBQUE7QUFBQTtBQUFBO0VBQUEsaUJBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQSxzQkFBQTtFQUFBO0FBQUE7QUFBQTtFQUFBLHNCQUFBO0VBQUE7QUFBQTtBQUFBO0VBQUEsaUJBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQSxnQkFBQTtFQUFBLHVCQUFBO0VBQUE7QUFBQTtBQUFBO0VBQUE7QUFBQTtBQUFBO0VBQUE7QUFBQTtBQUFBO0VBQUE7QUFBQTtBQUFBO0VBQUE7QUFBQTtBQUFBO0VBQUE7QUFBQTtBQUFBO0VBQUE7QUFBQTtBQUFBO0VBQUE7QUFBQTtBQUFBO0VBQUE7QUFBQTtBQUFBO0VBQUE7QUFBQTtBQUFBO0VBQUE7QUFBQTtBQUFBO0VBQUE7QUFBQTtBQUFBO0VBQUE7QUFBQTtBQUFBO0VBQUE7QUFBQTtBQUFBO0VBQUEsc0JBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQSxrQkFBQTtFQUFBO0FBQUE7QUFBQTtFQUFBLGtCQUFBO0VBQUE7QUFBQTtBQUFBO0VBQUEsa0JBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQSxrQkFBQTtFQUFBO0FBQUE7QUFBQTtFQUFBLGtCQUFBO0VBQUE7QUFBQTtBQUFBO0VBQUEsa0JBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQSxrQkFBQTtFQUFBO0FBQUE7QUFBQTtFQUFBLGtCQUFBO0VBQUE7QUFBQTtBQUFBO0VBQUEsa0JBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQSxrQkFBQTtFQUFBO0FBQUE7QUFBQTtFQUFBLGtCQUFBO0VBQUE7QUFBQTtBQUFBO0VBQUEsa0JBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQSw0REFBQTtFQUFBLGtFQUFBO0VBQUE7QUFBQTtBQUFBO0VBQUEsNERBQUE7RUFBQSxtRUFBQTtFQUFBO0FBQUE7QUFBQTtFQUFBO0FBQUE7QUFBQTtFQUFBO0FBQUE7QUFBQTtFQUFBO0FBQUE7QUFBQTtFQUFBO0FBQUE7QUFBQTtFQUFBO0FBQUE7QUFBQTtFQUFBO0FBQUE7QUFBQTtFQUFBLG9CQUFBO0tBQUE7QUFBQTtBQUFBO0VBQUEsMEJBQUE7S0FBQTtBQUFBO0FBQUE7RUFBQSx1QkFBQTtLQUFBO0FBQUE7QUFBQTtFQUFBO0FBQUE7QUFBQTtFQUFBO0FBQUE7QUFBQTtFQUFBO0FBQUE7QUFBQTtFQUFBO0FBQUE7QUFBQTtFQUFBO0FBQUE7QUFBQTtFQUFBLGtCQUFBO0VBQUE7QUFBQTtBQUFBO0VBQUEsb0JBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQSxrQkFBQTtFQUFBO0FBQUE7QUFBQTtFQUFBLGtCQUFBO0VBQUE7QUFBQTtBQUFBO0VBQUEsaUJBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQSxvQkFBQTtFQUFBO0FBQUE7QUFBQTtFQUFBLGlCQUFBO0VBQUE7QUFBQTtBQUFBO0VBQUEsbUJBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQSxpQkFBQTtFQUFBO0FBQUE7QUFBQTtFQUFBLGlCQUFBO0VBQUE7QUFBQTtBQUFBO0VBQUEsaUJBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFB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QjtBK0JycUNFO0VBSUUseUJBQUE7RUFDQSxjZHBOaUI7QWpCdzNDckI7QStCanFDRTtFQUNFLHFCQVpZO0VBYVosY0FiWTtBL0JnckNoQjtBK0I3cUNFO0VBSUUseUJBQUE7RUFDQSxjZHBOaUI7QWpCZzRDckI7QStCenFDRTtFQUNFLHFCQVpZO0VBYVosY0FiWTtBL0J3ckNoQjtBK0JucUNJO0VBQ0UseUJBQUE7RUFDQSw2QkFBQTtBL0JxcUNOO0ErQnRwQ0U7RUFJRSxjQ3ZKZ0I7QWhDNHlDcEI7QStCbHBDRTtFQUNFLGNBWFk7QS9CK3BDaEI7QStCNXBDRTtFQUlFLGNkdFBpQjtBakJpNUNyQjtBK0J4cENFO0VBQ0UsY0FYWTtBL0JxcUNoQjtBK0JscUNFO0VBSUUsY2R0UGlCO0FqQnU1Q3JCO0ErQjlwQ0U7RUFDRSxjQVhZO0EvQjJxQ2hCO0ErQnhxQ0U7RUFJRSxjZHRQaUI7QWpCNjVDckI7QStCcHFDRTtFQUNFLGNBWFk7QS9CaXJDaEI7QStCOXFDRTtFQUlFLGNkdFBpQjtBakJtNkNyQjtBK0IxcUNFO0VBQ0UsY0FYWTtBL0J1ckNoQjtBK0JwckNFO0VBSUUsY2R0UGlCO0FqQnk2Q3JCO0ErQmhyQ0U7RUFDRSxjQVhZO0EvQjZyQ2hCO0ErQnRrQ0k7RUFuR0YsYUFyTndCO0VBc054QixtQkFBQTtBL0I0cUNGO0ErQmhxQ0U7RVY3UEEsY0FBQTtFQUNBLFFBQUE7RUFDQSxTQUFBO0VBRUEsbUJBQUE7RUFDQSxtQlVvUE87RVZsUFAsV0FBQTtFQUdFLHNCQUFBO0VBQ0EsNkNBQUE7RVVvUEEsa0JBQUE7RUFDQSxVQUFBO0VBRUEscUJBQUE7RUFDQSxZQUFBO0VBQ0EsZ0JBVE87QS9CaXJDWDtBK0Ixa0NRO0VBQ0UseUJDdlJVO0FoQ20yQ3BCO0ErQnZrQ1k7RUFDRSx5QmQ1WE87QWpCcThDckI7QStCMWtDWTtFQUNFLHlCZDVYTztBakJ3OENyQjtBK0I3a0NZO0VBQ0UseUJkNVhPO0FqQjI4Q3JCO0ErQmhsQ1k7RUFDRSx5QmQ1WE87QWpCODhDckI7QStCbmxDWTtFQUNFLHlCZDVYTztBakJpOUNyQjtBK0I3a0NJO0VBQ0UsV0FBQTtFQUNBLFdBQUE7RUFDQSxjQUFBO0EvQitrQ047QStCMWtDSTtFQUVFLHFCQUFBO0EvQjRrQ047QWlDanhDRTs7Ozs7Ozs7Ozs7Ozs7Ozs7OztFQW1CRSxTQUFBO0VBQ0EsVUFBQTtBakNveENKO0FpQ2h4Q0U7RUFDRSxtQmR2RnNCO0VjeUZ0QixrQkFBQTtFQUNBLGdCZDNGbUI7RWM0Rm5CLGtDZDFGdUI7QW5CNDJDM0I7QWlDOXdDRTs7RUFFRSxrQkFBQTtFQUNBLG9CQUFBO0FqQ2l4Q0o7QWlDN3dDRTs7RUFFRSxnQmZsUWlCO0VlbVFqQixvQkFBQTtBakNneENKO0FpQzV3Q0U7RUFDRSxjZGpIYztFY2tIZCxvQkFBQTtBakMrd0NKO0FpQzN3Q0U7Ozs7OztFQU1FLG9EZi9RaUI7RWVnUmpCLGtCZHJKZ0I7RWNzSmhCLGdCZnRSbUI7RWV1Um5CLGNkckpXO0Vjc0pYLGtDZGpJb0I7QW5CKzRDeEI7QWlDNXdDSTs7Ozs7O0VBQ0UsY0FBQTtFQUNBLGNkdE5RO0FuQnkrQ2Q7QWlDMXdDUTtFQUlJLGlCQURpQjtFQWFqQixnQkFBQTtFQVFBLGFBQUE7RUFPQSxxQkFBQTtBakNrdkNaO0FpQ2p4Q1E7RUFJSSwwQkFEaUI7RUFhakIsZ0JBQUE7RUFRQSxhQUFBO0VBT0EscUJBQUE7QWpDeXZDWjtBaUN4eENRO0VBSUksMEJBRGlCO0VBYWpCLGdCQUFBO0VBUUEsYUFBQTtFQU9BLHFCQUFBO0FqQ2d3Q1o7QWlDL3hDUTtFQUlJLGlCQURpQjtFQWFqQixnQkFBQTtFQVFBLGFBQUE7RUFPQSxxQkFBQTtBakN1d0NaO0FpQ3R5Q1E7RUFJSSwwQkFEaUI7RUFhakIsZ0JBQUE7RUFRQSxhQUFBO0VBT0EscUJBQUE7QWpDOHdDWjtBaUM3eUNRO0VBSUksMEJBRGlCO0VBYWpCLGdCQUFBO0VBUUEsYUFBQTtFQU9BLHFCQUFBO0FqQ3F4Q1o7QWNoN0NRO0VtQjRIQTtJQUlJLDBCQURpQjtFakNzekMzQjs7RWlDenpDTTtJQUlJLDBCQURpQjtFakMwekMzQjs7RWlDN3pDTTtJQUlJLGlCQURpQjtFakM4ekMzQjs7RWlDajBDTTtJQUlJLDBCQURpQjtFakNrMEMzQjs7RWlDcjBDTTtJQUlJLDBCQURpQjtFakNzMEMzQjs7RWlDejBDTTtJQUlJLGlCQURpQjtFakMwMEMzQjtBQUNGO0FpQ3Z5Q0U7RUFDRSxvQkFBQTtFQUNBLGNidlZXO0Vhd1ZYLHFCZDFLcUI7RWM0S3JCLGVBQUE7QWpDd3lDSjtBaUN0eUNJO0VBRUUsY2Z6VWU7QWxCZ25EckI7QWlDanlDSTtFQUNFLFNBQUE7QWpDbXlDTjtBaUM5eENFO0VBQ0UsV0FBQTtFQUVBLGlCZHhTVztFY3lTWCxTQUFBO0VBQ0Esb0JkN0xRO0VjK0xSLGFBQUE7RUFDQSxlQUFBO0VBQ0EsZ0NkbE1RO0VjbU1SLGNBQUE7QWpDK3hDSjtBaUMzeENFOzs7RUFHRSxtQmR2TnNCO0Vjd050Qiw0QmR0TWtCO0VjdU1sQixnQmQxTm1CO0FuQncvQ3ZCO0FpQzF4Q0U7RUFDRSxrQkFBQTtBakM2eENKO0FpQ3p4Q0U7RUFDRSxvQmRoTmU7RWNpTmYscUJkbk5jO0FuQisrQ2xCO0FpQ3h4Q0U7RUFDRSxvQmR0TmU7QW5CaS9DbkI7QWlDdHhDSTtFQUNFLG9CZDNOb0I7RWM0TnBCLGdCQUFBO0FqQ3l4Q047QWlDcHhDRTtFQUNFLG1CZGpPcUI7QW5Cdy9DekI7QWlDcnhDSTtFQUNFLHFCZGxPd0I7RWNtT3hCLGlCZGxVZTtBbkJ5bERyQjtBaUNseENFO0VBQ0UsZ0JBQUE7RUFDQSxpRGZuVmlCO0Vlb1ZqQixpQmZuVmdCO0FsQndtRHBCO0FpQ254Q0k7RUFDRSxnQmR0UWlCO0VjdVFqQixjYjFhUztBcEIrckRmO0FpQ3Z3Q0U7RUFDRSxpQ2RsUGE7RWNtUGIsWUFBQTtFQUNBLHFCQUFBO0FqQzB3Q0o7QWlDdHdDRTtFQUNFLFNBQUE7QWpDeXdDSjtBaUM5dkNFO0VBQ0UsU0FBQTtFQUNBLDJCZHhRZ0I7RWMwUWhCLHlCZGpZUztFY21ZVCw0RGR2VW9CO0Vjd1VwQixjZGpZSTtBbkJnb0RSO0FrQzdrREU7RUFDRSxrQmY0RW1CO0VlM0VuQixxQmY0RXNCO0VlMUV0QixtQmY3Q21CO0VlOENuQixnQmZxRW1CO0VlcEVuQixjZjFEUTtBbkJ5b0RaO0FrQzNrREU7RUFDRSxlZjZEYTtFZTVEYixnQmY2RGM7QW5CaWhEbEI7QWtDMWtERTtFQUNFLGlCZjhEYTtFZTdEYixjQUFBO0FsQzZrREo7QWtDM2tESTtFQUNFLGlCQUFBO0FsQzZrRE47QWtDdmtESTtFQUNFLGNBQUE7RUFDQSxnQkFBQTtBbEMwa0ROO0FrQ3RrREU7RUFqRkEsY0FBQTtFQUNBLGNmTFU7RWVNVixvQmZ5R2U7QW5Ca2pEakI7QWtDenBERTtFQUNFLGFmd0drQjtBbkJtakR0QjtBa0N2a0RFO0VBN0VBLHlCZjBFWTtFZXpFWix5QmZuQlc7RWVxQlgsNERmdUNzQjtFZXRDdEIsbUJmVHFCO0VlVXJCLGNmcEJNO0VlMEJOLGVBQUE7RUFDQSxlQUFBO0VBQ0EscUJBQUE7RUFFQSxxQ2Y0RGE7QW5CcWxEZjtBa0Mxa0RFO0VBdEZBLHlCZjBFWTtFZXpFWix5QmZuQlc7RWVxQlgsNERmdUNzQjtFZXRDdEIsbUJmVHFCO0VlVXJCLGNmcEJNO0Vlb0NOLGNBQUE7RUFDQSxjQUFBO0VBQ0EsZ0JBQUE7RUFFQSxhQTVDbUI7RUE2Q25CLHFCQXpDeUI7QWxDNHJEM0I7QW1DaHdEVTtFQUNFLGdCQVJVO0FuQzJ3RHRCO0FtQ3B3RFU7RUFDRSxpQkFSVTtBbkMrd0R0QjtBbUN4d0RVO0VBQ0Usa0JBUlU7QW5DbXhEdEI7QW1DNXdEVTtFQUNFLG1CQVJVO0FuQ3V4RHRCO0FjM21EUTtFcUIxS0U7SUFDRSxnQkFIVTtFbkM0eERwQjs7RW1DMXhEUTtJQUNFLGlCQUhVO0VuQ2d5RHBCOztFbUM5eERRO0lBQ0Usa0JBSFU7RW5Db3lEcEI7O0VtQ2x5RFE7SUFDRSxtQkFIVTtFbkN3eURwQjtBQUNGO0FjN25EUTtFcUIxS0U7SUFDRSxnQkFIVTtFbkM2eURwQjs7RW1DM3lEUTtJQUNFLGlCQUhVO0VuQ2l6RHBCOztFbUMveURRO0lBQ0Usa0JBSFU7RW5DcXpEcEI7O0VtQ256RFE7SUFDRSxtQkFIVTtFbkN5ekRwQjtBQUNGO0FvQ2h6REU7RUFBa0Isd0JBQUE7QXBDbXpEcEI7QW9DanpERTtFQUNFO0lBSUksa0NBQUE7SUFDQSx1QkFBQTtJQUNBLG1DQUFBO1lBQUEscUJBQUE7SUFPRiwyQkFBQTtJQUNBLDRCQUFBO0VwQzJ5REo7O0VvQ3h5REU7SUFBa0IseUJBQUE7RXBDNHlEcEI7O0VvQzN5REU7SUFBa0Isd0JBQUE7RXBDK3lEcEI7O0VvQzd5REU7SUFBdUIseUJBQUE7RXBDaXpEekI7O0VvQ2h6REU7SUFBdUIsc0NBQUE7RXBDb3pEekI7O0VvQ256REU7SUFBdUIsbUNBQUE7RXBDdXpEekI7O0VvQ3R6REU7SUFBb0IsNkJBQUE7RXBDMHpEdEI7O0VvQ3p6REU7SUFBb0IsOEJBQUE7RXBDNnpEdEI7O0VvQzV6REU7SUFBb0IsOEJBQUE7RXBDZzBEdEI7O0VvQzd6REU7O0lBQ1ksMEJBQUE7RXBDaTBEZDs7RW9DL3pESTtJQUFnQiw0QkFBQTtFcENtMERwQjs7RW9DL3pERTs7O0lBRXFCLFdBQUE7RXBDbTBEdkI7O0VvQ2gwREU7SUFBb0IsNkJBQUE7RXBDbzBEdEI7O0VvQ2owREU7O0lBRUUseUJBQUE7SUFDQSx3QkFBQTtFcENvMERKOztFb0NoMERFO0lBQVEsMkJBQUE7RXBDbzBEVjs7RW9DbDBERTs7SUFDTSx3QkFBQTtFcENzMERSOztFb0NwMERFO0lBQU0sMEJBQUE7RXBDdzBEUjs7RW9DdDBERTtJQUFRLGFBQUE7RXBDMDBEVjtFb0N4MERFOzs7SUFHRSxVQUFBO0lBQ0EsU0FBQTtFcEMwMERKOztFb0N0MERFOztJQUNLLHVCQUFBO0VwQzAwRFA7O0VvQ3YwREU7SUFDRSx1QkFBQTtFcEMwMERKO0FBQ0Y7QXFDanRERTtFQWxMQSxtQkExQm1CO0VBNkJqQixhQUFBO0VBQ0EsZUFBQTtFQUNBLG9CQUFBO0VBQ0EsWUFBQTtBckNvNERKO0FxQnJ3REU7RUFFRSxjQUFBO0VBQ0EsWUFBQTtFQUdFLGFBQUE7RUFDQSxRQUFBO0FyQm93RE47QXFCaHdERTtFQUNFLFdBQUE7QXJCa3dESjtBcUMzNERJO0VBRUUsYUFBQTtBckM0NEROO0FxQ3I0REU7RUFDRSxTQUFBO0VBQ0EsaUJBekNrQjtFQTBDbEIsa0JBMUNrQjtFQTJDbEIsaUJBQUE7RUFHRSxjQUFBO0FyQ3E0RE47QXFDbDRESTtFQUNFLGVBQUE7QXJDbzRETjtBcUN6dURNO0VBQ0UsaUJBRm1CO0FyQzZ1RDNCO0FxQzV1RE07RUFDRSxrQkFGbUI7QXJDZ3ZEM0I7QXFDL3VETTtFQUNFLGtCQUZtQjtBckNtdkQzQjtBcUMxMURFO0VBRUksYUFBQTtBckMyMUROO0ErQjN3REU7RUFJRSx5QmQvS2lCO0VjZ0xqQixjQWJRO0EvQnV4RFo7QStCdndERTtFQUNFLHlCQWJtQjtFQWNuQixjQWxCUTtBL0IyeERaO0ErQm54REU7RUFJRSx5QmQvS2lCO0VjZ0xqQixjQWJRO0EvQit4RFo7QStCL3dERTtFQUNFLHlCQWJtQjtFQWNuQixjQWxCUTtBL0JteURaO0ErQjN4REU7RUFJRSx5QmQvS2lCO0VjZ0xqQixjQWJRO0EvQnV5RFo7QStCdnhERTtFQUNFLHlCQWJtQjtFQWNuQixjQWxCUTtBL0IyeURaO0ErQm55REU7RUFJRSx5QmQvS2lCO0VjZ0xqQixjQWJRO0EvQit5RFo7QStCL3hERTtFQUNFLHlCQWJtQjtFQWNuQixjQWxCUTtBL0JtekRaO0ErQjN5REU7RUFJRSx5QmQvS2lCO0VjZ0xqQixjQWJRO0EvQnV6RFo7QStCdnlERTtFQUNFLHlCQWJtQjtFQWNuQixjQWxCUTtBL0IyekRaO0ErQmp5REk7RUFDRSw2QkFBQTtBL0JteUROO0ErQmx4REU7RUFJRSx5QkFBQTtFQUNBLGNDckhnQjtBaENzNERwQjtBK0I5d0RFO0VBQ0UscUJBWlk7RUFhWixjQWJZO0EvQjZ4RGhCO0ErQjF4REU7RUFJRSx5QkFBQTtFQUNBLGNkcE5pQjtBakI2K0RyQjtBK0J0eERFO0VBQ0UscUJBWlk7RUFhWixjQWJZO0EvQnF5RGhCO0ErQmx5REU7RUFJRSx5QkFBQTtFQUNBLGNkcE5pQjtBakJxL0RyQjtBK0I5eERFO0VBQ0UscUJBWlk7RUFhWixjQWJZO0EvQjZ5RGhCO0ErQjF5REU7RUFJRSx5QkFBQTtFQUNBLGNkcE5pQjtBakI2L0RyQjtBK0J0eURFO0VBQ0UscUJBWlk7RUFhWixjQWJZO0EvQnF6RGhCO0ErQmx6REU7RUFJRSx5QkFBQTtFQUNBLGNkcE5pQjtBakJxZ0VyQjtBK0I5eURFO0VBQ0UscUJBWlk7RUFhWixjQWJZO0EvQjZ6RGhCO0ErQjF6REU7RUFJRSx5QkFBQTtFQUNBLGNkcE5pQjtBakI2Z0VyQjtBK0J0ekRFO0VBQ0UscUJBWlk7RUFhWixjQWJZO0EvQnEwRGhCO0ErQmh6REk7RUFDRSx5QkFBQTtFQUNBLDZCQUFBO0EvQmt6RE47QStCbnlERTtFQUlFLGNDdkpnQjtBaEN5N0RwQjtBK0IveERFO0VBQ0UsY0FYWTtBL0I0eURoQjtBK0J6eURFO0VBSUUsY2R0UGlCO0FqQjhoRXJCO0ErQnJ5REU7RUFDRSxjQVhZO0EvQmt6RGhCO0ErQi95REU7RUFJRSxjZHRQaUI7QWpCb2lFckI7QStCM3lERTtFQUNFLGNBWFk7QS9Cd3pEaEI7QStCcnpERTtFQUlFLGNkdFBpQjtBakIwaUVyQjtBK0JqekRFO0VBQ0UsY0FYWTtBL0I4ekRoQjtBK0IzekRFO0VBSUUsY2R0UGlCO0FqQmdqRXJCO0ErQnZ6REU7RUFDRSxjQVhZO0EvQm8wRGhCO0ErQmowREU7RUFJRSxjZHRQaUI7QWpCc2pFckI7QStCN3pERTtFQUNFLGNBWFk7QS9CMDBEaEI7QXFDMS9ERTtFQUNFLDhCQUFBO0FyQzQvREo7QXFDMS9ESTtFQUNFLDhCQUFBO0FyQzQvRE47QXFDeDFESTtFQTFHQSxlQUFBO0FyQ3E4REo7QXFDbDhERTtFQUVJLGNBQUE7QXJDbThETjtBcUM3N0RJO0VBQ0UsZ0JBQUE7QXJDKzdETjtBcUMvK0RFO0VBRUksYUFBQTtBckNnL0ROO0FjbDdEUTtFdUJRTjtJQUVJLGNBQUE7SUFLRixnQkFBQTtFckN3NkRGO0FBQ0Y7QWN4N0RRO0V1QlFOO0lBRUksY0FBQTtJQUtGLGdCQUFBO0VyQzg2REY7QUFDRjtBYzk3RFE7RXVCb0dKO0lBRUksY0FBQTtFckM0MUROO0VxQzEx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di9FRTtFQUVFLFNBQUE7RUFDQSxvQkFBQTtFQUNBLG9CQVhhO0E1Qm1nRmpCO0E2Qm44RUU7RUEvREEsdUJBRlM7RUFHVCxnQkFBQTtFQUNBLGVQNkJjO0VPM0JkLHdCQUFBO0tBQUEscUJBQUE7VUFBQSxnQkFBQTtFQUNBLHlCUGtCYTtFT2pCYixnQlptRWM7RVlsRWQseUJac0JNO0VZcEJOLG9CUGRrQjtFT2VsQixlUFhnQjtFT1loQixtQlpzRHFCO0VZckRyQixnQlpia0I7RVljbEIsY1pZTTtFSXNHTix3T0FBQTtFUTlHRSw4QkFBQTtFQUNBLHVDQUFBO0VBQ0EsNEJBQUE7RUFDQSx3QkFBQTtFQUVBLHFCQUFBO0VBSUEsMkRQcUJlO0F0QnkrRW5CO0FxQnY1RUU7RVFsRUE7SVJxRUksdVdBQUE7RXJCdzVFSjtBQUNGO0E2Qi8vRUU7RUFDRSxhQUFBO0VBQ0EseUJQTGlCO0VPTWpCLHlCWkpJO0VZS0osMkJQS2lCO0VPRmYsMkRQVWE7QXRCcS9FbkI7QTZCMS9FRTtFQUNFLHlCWjlCUztFWStCVCxtQlBEb0I7QXRCNi9FeEI7QTZCeC9FRTtFQUNFLGFBQUE7QTdCMC9FSjtBNkJ2L0VFO0VBQ0UsWUFBQTtFQUNBLHNCQUFBO0E3QnkvRUo7QTZCdi9FRTtFQUNFLGNBQUE7RUFDQSxpQkFBQTtBN0J5L0VKO0E4QjloRkU7RUFDRSxxQkEzQnVCO0VBNEJ2Qix5QkFBQTtBOUJpaUZKO0E4Qi9oRkk7RUFDRSxjQS9CcUI7QTlCZ2tGM0I7QThCbGlGSTtFQUNFLGNBL0JxQjtBOUJna0YzQjtBOEJsaUZJO0VBQ0UsY0EvQnFCO0E5QmdrRjNCO0E4QnZnRkk7RUFDRSxjQXREcUI7QTlCZ2tGM0I7QThCcmdGRTtFQXpCQSxhQUFBO0VBQ0EsbUJBQUE7RUFDQSxtQk5oRGE7RU1rRGIsa0JBOUJzQjtFQStCdEIsaUJiK0JtQjtFYTlCbkIsY0FwQ2tCO0E5QnFrRnBCO0E4QjNnRkk7RUFDRSxjQUFBO0E5QjZnRk47QXdDbGlGRTtFQUNFLHdCQUFBO0F4Q3FpRko7QXdDbGlGRTtFQUNFLGtCQUFBO0F4Q3FpRko7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QTlDdXBHSjtBOENwcEdBO0VBQ0UsY0FBQTtBOUN1cEdGO0E4Q3BwR0E7RUFDSSw0RDVCT2lCO0U0Qk5qQixtQjVCYW9CO0FsQjBvR3hCO0E4Q3JwR0k7RUFDSSxjM0JxRUE7QW5Ca2xHUjtBOENwcEdJO0VBQ0ksYzFCakJPO0FwQnVxR2Y7QThDbnBHSTtFQUNJLGMxQmxCTTtBcEJ1cUdkO0E4Qy9vR0k7RUFDSSxrQkFBQTtBOUNpcEdSO0E4QzdvR0E7RUFDSSxvRDVCcEJlO0U0QnFCZix5QkFBQTtBOUNncEdKO0E4QzlvR0k7RUFDSSxjM0I2Q0E7QW5CbW1HUjtBOEM3b0dJO0VBQ0ksYzFCekNPO0FwQndyR2Y7QThDNW9HSTtFQUNJLGMxQjNDUTtBcEJ5ckdoQjtBOEMzb0dJO0VBQ0ksYzFCOUNNO0FwQjJyR2Q7QThDMW9HSTtFQUNJLGdCQUFBO0E5QzRvR1I7QThDem9HSTtFQUNJLG1CQUFBO0E5QzJvR1I7QThDeG9HSTtFQUNJLHFCQUFBO0E5QzBvR1I7QThDcG9HSTtFQUNJLGtCQUFBO0E5Q3NvR1I7QThDcG9HSTtFQUNFLDBCQUFBO0E5Q3NvR047QThDaG9HSTtFQUNJLGMzQklBO0FuQituR1I7QThDN25HSTs7Ozs7Ozs7Ozs7O0VBTUkseUJBQUE7RUFDQSxjMUIzRk87QXBCaXVHZjtBOEMxbkdJOzs7Ozs7RUFDSSxjM0J0QkE7QW5Cd3BHUjtBOEMvbkdJOzs7Ozs7RUFDSSxjMUI1R087QXBCa3ZHZjtBOENub0dJOzs7Ozs7RUFDSSxjMUI3R007QXBCdXZHZDtBOEN2b0dJOzs7Ozs7RUFDSSx5QkFBQTtBOUM4b0dSO0E4Q3RvR0E7RUFDSSx1QkFBQTtBOUN5b0dKO0E4Q3RvR0E7RUFDSSxrQkFBQTtFQUNBLGdCQUFBO0VBQ0Esa0JBQUE7QTlDeW9HSjtBOEN2b0dJO0VBQ0ksa0JBQUE7RUFDQSxVQUFBO0VBQ0EsT0FBQTtFQUNBLFlBQUE7RUFDQSwwQkFBQTtFQUNBLFlBQUE7RUFDQSxjQUFBO0VBQ0Esb0Q1Qi9IYTtFNEJnSWIsa0JBQUE7QTlDeW9HUjtBOENyb0dBO0VBQ0ksYzNCakVJO0Uy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QUE7QTVFbXFQUjtBNEVocVBJO0VBQ0ksa0JBQUE7QTVFa3FQUjtBNEU5cFBJO0VBQ0kseUJ4RFZRO0V3RFdSLGFBQUE7QTVFZ3FQUjtBNEU5cFBRO0VBQ0ksMEJBQUE7RUFDQSxpQkFBQTtFQUNBLG1CQUFBO0VBQ0EsZ0JBQUE7QTVFZ3FQWjtBNEU3cFBROzs7O0VBSUksbUJBQUE7RUFDQSxZQUFBO0VBQ0EsZ0JBQUE7RUFDQSxjeEQ3Qkc7QXBCNHJQZjtBNEU3cFBZO0VBQ0ksY3hEaENEO0FwQmtzUGY7QTRFbnFQWTtFQUNJLGN4RGhDRDtBcEJrc1BmO0E0RW5xUFk7Ozs7RUFDSSxjeERoQ0Q7QXBCa3NQZjtBNEU5cFBRO0VBQ0ksYUFBQTtBNUVncVBaO0E0RTdwUFE7RUFDSSxZQUFBO0VBQ0EseUJ4RHZDRTtBcEJzc1BkO0E0RTVwUFE7RUFDSSxhQUFBO0E1RThwUFo7QTRFM3BQUTtFQUNJLHFCQUFBO0E1RTZwUFo7QTRFenBQSTtFQUNJLGFBQUE7RUFDQSx5QnpEMEJBO0FuQmlvUFI7QTRFenBQUTs7RUFFSSxrQkFBQTtFQUNBLGFBQUE7QTVFMnBQWjtBNEV4cFBRO0VBQ0kseUJ4RGpFRztFd0RrRUgsY3pEZ0JKO0FuQjBvUFI7QTRFdnBQUTtFQUNJLHlCeERqRUM7QXBCMHRQYjtBNEV2cFBZO0VBQ0ksY3pEU1I7RXlEUlEsZ0JBQUE7RUFDQSxlQUFBO0E1RXlwUGhCO0E0RXBwUEk7RUFDSSxnQkFBQTtBNUVzcFBSO0FjcmpQUTtFOERsR0o7SUFJUSxVQUFBO0U1RXVwUFY7QUFDRjtBNEVwcFBJO0VBQ0kseUJ4RHpGTztFd0QwRlAsY3pEUkE7RXlEU0EsYUFBQTtBNUVzcFBSO0FjL2pQUTtFOEQxRko7SUFPUSxVQUFBO0U1RXNwUFY7QUFDRjtBNEVwcFBRO0VBQ0ksMEJBQUE7QTVFc3BQWjtBNEVucFBRO0VBQ0ksbUJBQUE7QTVFcXBQWjtBNEVscFBRO0VBQ0ksY3pEekJKO0FuQjZxUFI7QTZFOXZQSTtFQUNJLGFBQUE7QTdFaXdQUjtBNkU5dlBJO0VBQ0ksaUJBQUE7RUFDQSxtQkFBQTtBN0Vn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QUFBO0lBQUE7RUFBQTtFQUFBO0lBQUE7RUFBQTtFQUFBO0lBQUE7RUFBQTtFQUFBO0lBQUE7RUFBQTtFQUFBO0lBQUE7RUFBQTtFQUFBO0lBQUE7RUFBQTtFQUFBO0lBQUE7RUFBQTtFQUFBO0lBQUE7RUFBQTtFQUFBO0lBQUE7RUFBQTtFQUFBO0lBQUE7RUFBQTtFQUFBO0lBQUE7RUFBQTtFQUFBO0lBQUE7RUFBQTtFQUFBO0lBQUEsb0JBQUE7SUFBQTtFQUFBO0VBQUE7SUFBQSxtQkFBQTtJQUFBO0VBQUE7RUFBQTtJQUFBLGlCQUFBO0lBQUE7RUFBQTtFQUFBO0lBQUE7RUFBQTtFQUFBO0lBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtJQUFBO0VBQUE7RUFBQTtJQUFBO0VBQUE7RUFBQTtJQUFBO0VBQUE7RUFBQTtJQUFBO0VBQUE7RUFBQTtJQUFBO0VBQUE7RUFBQTtJQUFBO0VBQUE7RUFBQTtJQUFBO0VBQUE7RUFBQTtJQUFBO0VBQUE7RUFBQTtJQUFBO0VBQUE7RUFBQTtJQUFBO0VBQUE7RUFBQTtJQUFBO0VBQUE7RUFBQTtJQUFBO0VBQUE7RUFBQTtJQUFBO0VBQUE7RUFBQTtJQUFBLGdCQUFBO0lBQUE7RUFBQTtFQUFBO0lBQUE7RUFBQTtFQUFBO0lBQUE7RUFBQTtFQUFBO0lBQUE7RUFBQTtFQUFBO0lBQUE7RUFBQTtFQUFBO0lBQUE7RUFBQTtFQUFBO0lBQUE7RUFBQTtFQUFBO0lBQUE7RUFBQTtFQUFBO0lBQUE7RUFBQTtFQUFBO0lBQUE7RUFBQTtFQUFBO0lBQUE7RUFBQTtFQUFBO0lBQUE7RUFBQTtFQUFBO0lBQUE7RUFBQTtFQUFBO0lBQUE7RUFBQTtFQUFBO0lBQUE7RUFBQTtFQUFBO0lBQUE7RUFBQTtFQUFBO0lBQUE7RUFBQTtFQUFBO0lBQUE7RUFBQTtFQUFBO0lBQUE7RUFBQTtFQUFBO0lBQUE7RUFBQTtFQUFBO0lBQUEsc0JBQUE7SUFBQTtFQUFBO0VBQUE7SUFBQSxtQkFBQTtJQUFBO0VBQUE7RUFBQTtJQUFBO0VBQUE7RUFBQTtJQUFBO0VBQUE7RUFBQTtJQUFBO0VBQUE7RUFBQTtJQUFBO0VBQUE7RUFBQTtJQUFBO0VBQUE7RUFBQTtJQUFBO0VBQUE7RUFBQTtJQUFBO0VBQUE7RUFBQTtJQUFBO0VBQUE7RUFBQTtJQUFBO0VBQUE7RUFBQTtJQUFBO0VBQUE7RUFBQTtJQUFBO0VBQUE7RUFBQTtJQUFBO0VBQUE7RUFBQTtJQUFBLGlCQUFBO0lBQUE7RUFBQTtFQUFBO0lBQUEsa0JBQUE7SUFBQTtFQUFBO0VBQUE7SUFBQSxrQkFBQTtJQUFBO0VBQUE7RUFBQTtJQUFBLGtCQUFBO0lBQUE7RUFBQTtFQUFBO0lBQUEsbUJBQUE7SUFBQTtFQUFBO0VBQUE7SUFBQSxrQkFBQTtJQUFBO0VBQUE7RUFBQTtJQUFBLGdCQUFBO0lBQUE7RUFBQTtFQUFBO0lBQUEsaUJBQUE7SUFBQTtFQUFBO0VBQUE7SUFBQSxpQkFBQTtJQUFBO0VBQUE7RUFBQTtJQUFBO0VBQUE7RUFBQTtJQUFBO0VBQUE7RUFBQTtJQUFBO0VBQUE7RUFBQTtJQUFBO0VBQUE7RUFBQTtJQUFBO0VBQUE7RUFBQTtJQUFBO0VBQUE7RUFBQTtJQUFBO0VBQUE7RUFBQTtJQUFBO0VBQUE7RUFBQTtJQUFBO0VBQUE7RUFBQTtJQUFBO0VBQUE7QUFBQTtBQUFBO0VBQUE7SUFBQTtFQUFBO0VBQUE7SUFBQTtFQUFBO0VBQUE7SUFBQTtFQUFBO0VBQUE7SUFBQTtFQUFBO0VBQUE7SUFBQTtFQUFBO0VBQUE7SUFBQTtFQUFBO0VBQUE7SUFBQTtFQUFBO0VBQUE7SUFBQTtFQUFBO0VBQUE7SUFBQSxpQkFBQTtJQUFBO0VBQUE7RUFBQTtJQUFBLGtCQUFBO0lBQUE7RUFBQTtFQUFBO0lBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtJQUFBO0VBQUE7RUFBQTtJQUFBO0VBQUE7RUFBQTtJQUFBO0VBQUE7RUFBQTtJQUFBO0VBQUE7QUFBQTtBQUFBO0VBQUEsa0JBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQSxrQkFBQTtFQUFBO0FBQUE7QUFBQTtFQUFBLGtCQUFBO0VBQUE7QUFBQTtBQUFBO0VBQUEsb0JBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQSxpQkFBQTtFQUFBLGlCQUFBO0VBQUE7QUFBQTtBQUFBO0VBQUE7QUFBQTtBQUFBO0VBQUE7QUFBQTtBQUFBO0VBQUEsa0JBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQSxvQkFBQTtFQUFBO0FBQUE7QUFBQTtFQUFBO0FBQUE7QUFBQTtFQUFBO0FBQUE7QUFBQTtFQUFBO0FBQUE7QUFBQTtFQUFBLDhCQUFBO0VBQUEsd0RBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQSxvQkFBQTtFQUFBO0FBQUE7QUFBQTtFQUFBLG9CQUFBO0VBQUE7QUFBQTtBQUFBO0VBQUE7QUFBQTtBQUFBO0VBQUE7QUFBQTtBQUFBO0VBQUE7QUFBQTtBQUFBO0VBQUEsb0JBQUE7S0FBQTtBQUFBO0FBQUE7RUFBQSwrQkFBQTtFQUFBO0FBQUE7QUFBQTtFQUFBO0FBQUE7QUFBQTtFQUFBO0FBQUE7QUFBQTtFQUFBLG9CQUFBO0VBQUE7QUFBQTtBQUFBO0VBQUE7QUFBQTtBQUFBO0VBQUEsb0JBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQSxvQkFBQTtFQUFBO0FBQUE7QUFBQTtFQUFBO0FBQUE7QUFBQTtFQUFBLG9CQUFBO0VBQUE7QUFBQTtBQUFBO0VBQUEsb0JBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBIiwiZmlsZSI6ImFwcC5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyJAY2hhcnNldCBcIlVURi04XCI7XG4vKlxuVGhlbWUgTmFtZTogRmxhdFRoZW1lXG5BdXRob3I6IExhc3psbyBMYXBvc1xuQXV0aG9yIFVSSTogbGFwb3NsYXN6bG8uY29tXG5EZXNjcmlwdGlvbjogRmxhdFRoZW1lXG5WZXJzaW9uOiAwLjFcbiovXG4vKlxuICogIE93bCBDYXJvdXNlbCAtIENvcmVcbiAqL1xuLm93bC1jYXJvdXNlbCB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHdpZHRoOiAxMDAlO1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAvKiBwb3NpdGlvbiByZWxhdGl2ZSBhbmQgei1pbmRleCBmaXggd2Via2l0IHJlbmRlcmluZyBmb250cyBpc3N1ZSAqL1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDE7XG59XG4ub3dsLWNhcm91c2VsIC5vd2wtc3RhZ2Uge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC1tcy10b3VjaC1hY3Rpb246IHBhbi1ZO1xuICB0b3VjaC1hY3Rpb246IG1hbmlwdWxhdGlvbjtcbiAgLW1vei1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIC8qIGZpeCBmaXJlZm94IGFuaW1hdGlvbiBnbGl0Y2ggKi9cbn1cbi5vd2wtY2Fyb3VzZWwgLm93bC1zdGFnZTphZnRlciB7XG4gIGNvbnRlbnQ6IFwiLlwiO1xuICBkaXNwbGF5OiBibG9jaztcbiAgY2xlYXI6IGJvdGg7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIGhlaWdodDogMDtcbn1cbi5vd2wtY2Fyb3VzZWwgLm93bC1zdGFnZS1vdXRlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgLyogZml4IGZvciBmbGFzaGluZyBiYWNrZ3JvdW5kICovXG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwcHgsIDBweCwgMHB4KTtcbn1cbi5vd2wtY2Fyb3VzZWwgLm93bC13cmFwcGVyLFxuLm93bC1jYXJvdXNlbCAub3dsLWl0ZW0ge1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgLW1vei1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIC1tcy1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbn1cbi5vd2wtY2Fyb3VzZWwgLm93bC1pdGVtIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtaW4taGVpZ2h0OiAxcHg7XG4gIGZsb2F0OiBsZWZ0O1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xufVxuLm93bC1jYXJvdXNlbCAub3dsLWl0ZW0gaW1nIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xufVxuLm93bC1jYXJvdXNlbCAub3dsLW5hdi5kaXNhYmxlZCxcbi5vd2wtY2Fyb3VzZWwgLm93bC1kb3RzLmRpc2FibGVkIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5vd2wtY2Fyb3VzZWwgLm93bC1uYXYgLm93bC1wcmV2LFxuLm93bC1jYXJvdXNlbCAub3dsLW5hdiAub3dsLW5leHQsXG4ub3dsLWNhcm91c2VsIC5vd2wtZG90IHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAta2h0bWwtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG59XG4ub3dsLWNhcm91c2VsIC5vd2wtbmF2IGJ1dHRvbi5vd2wtcHJldixcbi5vd2wtY2Fyb3VzZWwgLm93bC1uYXYgYnV0dG9uLm93bC1uZXh0LFxuLm93bC1jYXJvdXNlbCBidXR0b24ub3dsLWRvdCB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGNvbG9yOiBpbmhlcml0O1xuICBib3JkZXI6IG5vbmU7XG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgZm9udDogaW5oZXJpdDtcbn1cbi5vd2wtY2Fyb3VzZWwub3dsLWxvYWRlZCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLm93bC1jYXJvdXNlbC5vd2wtbG9hZGluZyB7XG4gIG9wYWNpdHk6IDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLm93bC1jYXJvdXNlbC5vd2wtaGlkZGVuIHtcbiAgb3BhY2l0eTogMDtcbn1cbi5vd2wtY2Fyb3VzZWwub3dsLXJlZnJlc2ggLm93bC1pdGVtIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuLm93bC1jYXJvdXNlbC5vd2wtZHJhZyAub3dsLWl0ZW0ge1xuICB0b3VjaC1hY3Rpb246IHBhbi15O1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHVzZXItc2VsZWN0OiBub25lO1xufVxuLm93bC1jYXJvdXNlbC5vd2wtZ3JhYiB7XG4gIGN1cnNvcjogbW92ZTtcbiAgY3Vyc29yOiBncmFiO1xufVxuLm93bC1jYXJvdXNlbC5vd2wtcnRsIHtcbiAgZGlyZWN0aW9uOiBydGw7XG59XG4ub3dsLWNhcm91c2VsLm93bC1ydGwgLm93bC1pdGVtIHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG4vKiBObyBKcyAqL1xuLm5vLWpzIC5vd2wtY2Fyb3VzZWwge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLypcbiAqICBPd2wgQ2Fyb3VzZWwgLSBBbmltYXRlIFBsdWdpblxuICovXG4ub3dsLWNhcm91c2VsIC5hbmltYXRlZCB7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogMTAwMG1zO1xuICBhbmltYXRpb24tZmlsbC1tb2RlOiBib3RoO1xufVxuLm93bC1jYXJvdXNlbCAub3dsLWFuaW1hdGVkLWluIHtcbiAgei1pbmRleDogMDtcbn1cbi5vd2wtY2Fyb3VzZWwgLm93bC1hbmltYXRlZC1vdXQge1xuICB6LWluZGV4OiAxO1xufVxuLm93bC1jYXJvdXNlbCAuZmFkZU91dCB7XG4gIGFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0O1xufVxuXG5Aa2V5ZnJhbWVzIGZhZGVPdXQge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG4vKlxuICogXHRPd2wgQ2Fyb3VzZWwgLSBBdXRvIEhlaWdodCBQbHVnaW5cbiAqL1xuLm93bC1oZWlnaHQge1xuICB0cmFuc2l0aW9uOiBoZWlnaHQgNTAwbXMgZWFzZS1pbi1vdXQ7XG59XG5cbi8qXG4gKiBcdE93bCBDYXJvdXNlbCAtIExhenkgTG9hZCBQbHVnaW5cbiAqL1xuLm93bC1jYXJvdXNlbCAub3dsLWl0ZW0ge1xuICAvKipcbiAgXHRUaGlzIGlzIGludHJvZHVjZWQgZHVlIHRvIGEgYnVnIGluIElFMTEgd2hlcmUgbGF6eSBsb2FkaW5nIGNvbWJpbmVkIHdpdGggYXV0b2hlaWdodCBwbHVnaW4gY2F1c2VzIGEgd3JvbmdcbiAgXHRjYWxjdWxhdGlvbiBvZiB0aGUgaGVpZ2h0IG9mIHRoZSBvd2wtaXRlbSB0aGF0IGJyZWFrcyBwYWdlIGxheW91dHNcbiAgICovXG59XG4ub3dsLWNhcm91c2VsIC5vd2wtaXRlbSAub3dsLWxhenkge1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDQwMG1zIGVhc2U7XG59XG4ub3dsLWNhcm91c2VsIC5vd2wtaXRlbSAub3dsLWxhenlbc3JjXj1cIlwiXSwgLm93bC1jYXJvdXNlbCAub3dsLWl0ZW0gLm93bC1sYXp5Om5vdChbc3JjXSkge1xuICBtYXgtaGVpZ2h0OiAwO1xufVxuLm93bC1jYXJvdXNlbCAub3dsLWl0ZW0gaW1nLm93bC1sYXp5IHtcbiAgdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcbn1cblxuLypcbiAqIFx0T3dsIENhcm91c2VsIC0gVmlkZW8gUGx1Z2luXG4gKi9cbi5vd2wtY2Fyb3VzZWwgLm93bC12aWRlby13cmFwcGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQ6ICMwMDA7XG59XG4ub3dsLWNhcm91c2VsIC5vd2wtdmlkZW8tcGxheS1pY29uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBoZWlnaHQ6IDgwcHg7XG4gIHdpZHRoOiA4MHB4O1xuICBsZWZ0OiA1MCU7XG4gIHRvcDogNTAlO1xuICBtYXJnaW4tbGVmdDogLTQwcHg7XG4gIG1hcmdpbi10b3A6IC00MHB4O1xuICBiYWNrZ3JvdW5kOiB1cmwoXCJvd2wudmlkZW8ucGxheS5wbmdcIikgbm8tcmVwZWF0O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHotaW5kZXg6IDE7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMTAwbXMgZWFzZTtcbn1cbi5vd2wtY2Fyb3VzZWwgLm93bC12aWRlby1wbGF5LWljb246aG92ZXIge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuMywgMS4zKTtcbn1cbi5vd2wtY2Fyb3VzZWwgLm93bC12aWRlby1wbGF5aW5nIC5vd2wtdmlkZW8tdG4sXG4ub3dsLWNhcm91c2VsIC5vd2wtdmlkZW8tcGxheWluZyAub3dsLXZpZGVvLXBsYXktaWNvbiB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4ub3dsLWNhcm91c2VsIC5vd2wtdmlkZW8tdG4ge1xuICBvcGFjaXR5OiAwO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSA0MDBtcyBlYXNlO1xufVxuLm93bC1jYXJvdXNlbCAub3dsLXZpZGVvLWZyYW1lIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4vKlxuICogXHREZWZhdWx0IHRoZW1lIC0gT3dsIENhcm91c2VsIENTUyBGaWxlXG4gKi9cbi5vd2wtdGhlbWUgLm93bC1uYXYge1xuICBtYXJnaW4tdG9wOiAxMHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4ub3dsLXRoZW1lIC5vd2wtbmF2IFtjbGFzcyo9b3dsLV0ge1xuICBjb2xvcjogI0ZGRjtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBtYXJnaW46IDVweDtcbiAgcGFkZGluZzogNHB4IDdweDtcbiAgYmFja2dyb3VuZDogI0Q2RDZENjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbn1cbi5vd2wtdGhlbWUgLm93bC1uYXYgW2NsYXNzKj1vd2wtXTpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICM4Njk3OTE7XG4gIGNvbG9yOiAjRkZGO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG4ub3dsLXRoZW1lIC5vd2wtbmF2IC5kaXNhYmxlZCB7XG4gIG9wYWNpdHk6IDAuNTtcbiAgY3Vyc29yOiBkZWZhdWx0O1xufVxuLm93bC10aGVtZSAub3dsLW5hdi5kaXNhYmxlZCArIC5vd2wtZG90cyB7XG4gIG1hcmdpbi10b3A6IDEwcHg7XG59XG4ub3dsLXRoZW1lIC5vd2wtZG90cyB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi5vd2wtdGhlbWUgLm93bC1kb3RzIC5vd2wtZG90IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB6b29tOiAxO1xuICAqZGlzcGxheTogaW5saW5lO1xufVxuLm93bC10aGVtZSAub3dsLWRvdHMgLm93bC1kb3Qgc3BhbiB7XG4gIHdpZHRoOiAxMHB4O1xuICBoZWlnaHQ6IDEwcHg7XG4gIG1hcmdpbjogNXB4IDdweDtcbiAgYmFja2dyb3VuZDogI0Q2RDZENjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAyMDBtcyBlYXNlO1xuICBib3JkZXItcmFkaXVzOiAzMHB4O1xufVxuLm93bC10aGVtZSAub3dsLWRvdHMgLm93bC1kb3QuYWN0aXZlIHNwYW4sIC5vd2wtdGhlbWUgLm93bC1kb3RzIC5vd2wtZG90OmhvdmVyIHNwYW4ge1xuICBiYWNrZ3JvdW5kOiAjODY5NzkxO1xufVxuXG4vKiFcbiAqIGJhZ3VldHRlQm94LmpzXG4gKiBAYXV0aG9yICBmZWltb3NpXG4gKiBAdmVyc2lvbiAlJUlOSkVDVF9WRVJTSU9OJSVcbiAqIEB1cmwgaHR0cHM6Ly9naXRodWIuY29tL2ZlaW1vc2kvYmFndWV0dGVCb3guanNcbiAqL1xuI2JhZ3VldHRlQm94LW92ZXJsYXkge1xuICBkaXNwbGF5OiBub25lO1xuICBvcGFjaXR5OiAwO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgei1pbmRleDogMTAwMDAwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIyMjtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjgpO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuNXMgZWFzZTtcbn1cbiNiYWd1ZXR0ZUJveC1vdmVybGF5LnZpc2libGUge1xuICBvcGFjaXR5OiAxO1xufVxuI2JhZ3VldHRlQm94LW92ZXJsYXkgLmZ1bGwtaW1hZ2Uge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuI2JhZ3VldHRlQm94LW92ZXJsYXkgLmZ1bGwtaW1hZ2UgZmlndXJlIHtcbiAgZGlzcGxheTogaW5saW5lO1xuICBtYXJnaW46IDA7XG4gIGhlaWdodDogMTAwJTtcbn1cbiNiYWd1ZXR0ZUJveC1vdmVybGF5IC5mdWxsLWltYWdlIGltZyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogYXV0bztcbiAgbWF4LWhlaWdodDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBib3gtc2hhZG93OiAwIDAgOHB4IHJnYmEoMCwgMCwgMCwgMC42KTtcbn1cbiNiYWd1ZXR0ZUJveC1vdmVybGF5IC5mdWxsLWltYWdlIGZpZ2NhcHRpb24ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDA7XG4gIHdpZHRoOiAxMDAlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGxpbmUtaGVpZ2h0OiAxLjg7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIGNvbG9yOiAjY2NjO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNik7XG4gIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmO1xufVxuI2JhZ3VldHRlQm94LW92ZXJsYXkgLmZ1bGwtaW1hZ2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBoZWlnaHQ6IDUwJTtcbiAgd2lkdGg6IDFweDtcbiAgbWFyZ2luLXJpZ2h0OiAtMXB4O1xufVxuXG4jYmFndWV0dGVCb3gtc2xpZGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHRyYW5zaXRpb246IGxlZnQgMC40cyBlYXNlLCB0cmFuc2Zvcm0gMC40cyBlYXNlO1xufVxuI2JhZ3VldHRlQm94LXNsaWRlci5ib3VuY2UtZnJvbS1yaWdodCB7XG4gIGFuaW1hdGlvbjogYm91bmNlRnJvbVJpZ2h0IDAuNHMgZWFzZS1vdXQ7XG59XG4jYmFndWV0dGVCb3gtc2xpZGVyLmJvdW5jZS1mcm9tLWxlZnQge1xuICBhbmltYXRpb246IGJvdW5jZUZyb21MZWZ0IDAuNHMgZWFzZS1vdXQ7XG59XG5cbkBrZXlmcmFtZXMgYm91bmNlRnJvbVJpZ2h0IHtcbiAgMCUge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG4gIDUwJSB7XG4gICAgbWFyZ2luLWxlZnQ6IC0zMHB4O1xuICB9XG4gIDEwMCUge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG59XG5Aa2V5ZnJhbWVzIGJvdW5jZUZyb21MZWZ0IHtcbiAgMCUge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG4gIDUwJSB7XG4gICAgbWFyZ2luLWxlZnQ6IDMwcHg7XG4gIH1cbiAgMTAwJSB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbn1cbi5iYWd1ZXR0ZUJveC1idXR0b24jcHJldmlvdXMtYnV0dG9uLCAuYmFndWV0dGVCb3gtYnV0dG9uI25leHQtYnV0dG9uIHtcbiAgdG9wOiA1MCU7XG4gIHRvcDogY2FsYyg1MCUgLSAzMHB4KTtcbiAgd2lkdGg6IDQ0cHg7XG4gIGhlaWdodDogNjBweDtcbn1cblxuLmJhZ3VldHRlQm94LWJ1dHRvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBvdXRsaW5lOiBub25lO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogMTUlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzIzMjMyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDUwLCA1MCwgNTAsIDAuNSk7XG4gIGNvbG9yOiAjZGRkO1xuICBmb250OiAxLjZlbSBzYW5zLXNlcmlmO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuNHMgZWFzZTtcbn1cbi5iYWd1ZXR0ZUJveC1idXR0b246Zm9jdXMsIC5iYWd1ZXR0ZUJveC1idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDUwLCA1MCwgNTAsIDAuOSk7XG59XG4uYmFndWV0dGVCb3gtYnV0dG9uI25leHQtYnV0dG9uIHtcbiAgcmlnaHQ6IDIlO1xufVxuLmJhZ3VldHRlQm94LWJ1dHRvbiNwcmV2aW91cy1idXR0b24ge1xuICBsZWZ0OiAyJTtcbn1cbi5iYWd1ZXR0ZUJveC1idXR0b24jY2xvc2UtYnV0dG9uIHtcbiAgdG9wOiAyMHB4O1xuICByaWdodDogMiU7XG4gIHJpZ2h0OiBjYWxjKDIlICsgNnB4KTtcbiAgd2lkdGg6IDMwcHg7XG4gIGhlaWdodDogMzBweDtcbn1cbi5iYWd1ZXR0ZUJveC1idXR0b24gc3ZnIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG59XG5cbi8qXG4gICAgUHJlbG9hZGVyXG4gICAgQm9ycm93ZWQgZnJvbSBodHRwOi8vdG9iaWFzYWhsaW4uY29tL3NwaW5raXQvXG4qL1xuLmJhZ3VldHRlQm94LXNwaW5uZXIge1xuICB3aWR0aDogNDBweDtcbiAgaGVpZ2h0OiA0MHB4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgbWFyZ2luLXRvcDogLTIwcHg7XG4gIG1hcmdpbi1sZWZ0OiAtMjBweDtcbn1cblxuLmJhZ3VldHRlQm94LWRvdWJsZS1ib3VuY2UxLFxuLmJhZ3VldHRlQm94LWRvdWJsZS1ib3VuY2UyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBvcGFjaXR5OiAwLjY7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBhbmltYXRpb246IGJvdW5jZSAycyBpbmZpbml0ZSBlYXNlLWluLW91dDtcbn1cblxuLmJhZ3VldHRlQm94LWRvdWJsZS1ib3VuY2UyIHtcbiAgYW5pbWF0aW9uLWRlbGF5OiAtMXM7XG59XG5cbkBrZXlmcmFtZXMgYm91bmNlIHtcbiAgMCUsIDEwMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gIH1cbiAgNTAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB9XG59XG4uc3BsaWRlX19jb250YWluZXIge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5zcGxpZGVfX2xpc3Qge1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgZGlzcGxheTogZmxleDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICB0cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkO1xufVxuXG4uc3BsaWRlLmlzLWluaXRpYWxpemVkOm5vdCguaXMtYWN0aXZlKSAuc3BsaWRlX19saXN0IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5zcGxpZGVfX3BhZ2luYXRpb24ge1xuICAtbXMtZmxleC1hbGlnbjogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgZGlzcGxheTogZmxleDtcbiAgLW1zLWZsZXgtd3JhcDogd3JhcDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICAtbXMtZmxleC1wYWNrOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBtYXJnaW46IDA7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG4uc3BsaWRlX19wYWdpbmF0aW9uIGxpIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBsaW5lLWhlaWdodDogMTtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICBtYXJnaW46IDA7XG4gIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xufVxuXG4uc3BsaWRlX19wcm9ncmVzc19fYmFyIHtcbiAgd2lkdGg6IDA7XG59XG5cbi5zcGxpZGUge1xuICBvdXRsaW5lOiBub25lO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLnNwbGlkZS5pcy1pbml0aWFsaXplZCwgLnNwbGlkZS5pcy1yZW5kZXJlZCB7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG59XG5cbi5zcGxpZGVfX3NsaWRlIHtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLW1zLWZsZXgtbmVnYXRpdmU6IDA7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmUgIWltcG9ydGFudDtcbiAgbWFyZ2luOiAwO1xuICBvdXRsaW5lOiBub25lO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5zcGxpZGVfX3NsaWRlIGltZyB7XG4gIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG59XG5cbi5zcGxpZGVfX3NsaWRlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLnNwbGlkZV9fc3Bpbm5lciB7XG4gIGFuaW1hdGlvbjogc3BsaWRlLWxvYWRpbmcgMXMgbGluZWFyIGluZmluaXRlO1xuICBib3JkZXI6IDJweCBzb2xpZCAjOTk5O1xuICBib3JkZXItbGVmdC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgYm90dG9tOiAwO1xuICBjb250YWluOiBzdHJpY3Q7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgaGVpZ2h0OiAyMHB4O1xuICBsZWZ0OiAwO1xuICBtYXJnaW46IGF1dG87XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDIwcHg7XG59XG5cbi5zcGxpZGVfX3RyYWNrIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAwO1xufVxuXG5Aa2V5ZnJhbWVzIHNwbGlkZS1sb2FkaW5nIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDApO1xuICB9XG4gIHRvIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxdHVybik7XG4gIH1cbn1cbi5zcGxpZGUtLWRyYWdnYWJsZSA+IC5zcGxpZGVfX3NsaWRlciA+IC5zcGxpZGVfX3RyYWNrLCAuc3BsaWRlLS1kcmFnZ2FibGUgPiAuc3BsaWRlX190cmFjayB7XG4gIC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZTtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbn1cblxuLnNwbGlkZS0tZmFkZSA+IC5zcGxpZGVfX3NsaWRlciA+IC5zcGxpZGVfX3RyYWNrID4gLnNwbGlkZV9fbGlzdCwgLnNwbGlkZS0tZmFkZSA+IC5zcGxpZGVfX3RyYWNrID4gLnNwbGlkZV9fbGlzdCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uc3BsaWRlLS1mYWRlID4gLnNwbGlkZV9fc2xpZGVyID4gLnNwbGlkZV9fdHJhY2sgPiAuc3BsaWRlX19saXN0ID4gLnNwbGlkZV9fc2xpZGUsIC5zcGxpZGUtLWZhZGUgPiAuc3BsaWRlX190cmFjayA+IC5zcGxpZGVfX2xpc3QgPiAuc3BsaWRlX19zbGlkZSB7XG4gIGxlZnQ6IDA7XG4gIG9wYWNpdHk6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICB6LWluZGV4OiAwO1xufVxuXG4uc3BsaWRlLS1mYWRlID4gLnNwbGlkZV9fc2xpZGVyID4gLnNwbGlkZV9fdHJhY2sgPiAuc3BsaWRlX19saXN0ID4gLnNwbGlkZV9fc2xpZGUuaXMtYWN0aXZlLCAuc3BsaWRlLS1mYWRlID4gLnNwbGlkZV9fdHJhY2sgPiAuc3BsaWRlX19saXN0ID4gLnNwbGlkZV9fc2xpZGUuaXMtYWN0aXZlIHtcbiAgb3BhY2l0eTogMTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxO1xufVxuXG4uc3BsaWRlLS1ydGwge1xuICBkaXJlY3Rpb246IHJ0bDtcbn1cblxuLnNwbGlkZS0tdHRiLmlzLWFjdGl2ZSA+IC5zcGxpZGVfX3NsaWRlciA+IC5zcGxpZGVfX3RyYWNrID4gLnNwbGlkZV9fbGlzdCwgLnNwbGlkZS0tdHRiLmlzLWFjdGl2ZSA+IC5zcGxpZGVfX3RyYWNrID4gLnNwbGlkZV9fbGlzdCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uc3BsaWRlX19hcnJvdyB7XG4gIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGJhY2tncm91bmQ6ICNjY2M7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xuICBkaXNwbGF5OiBmbGV4O1xuICBoZWlnaHQ6IDJlbTtcbiAgLW1zLWZsZXgtcGFjazogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgb3BhY2l0eTogMC43O1xuICBwYWRkaW5nOiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIHdpZHRoOiAyZW07XG4gIHotaW5kZXg6IDE7XG59XG5cbi5zcGxpZGVfX2Fycm93IHN2ZyB7XG4gIGZpbGw6ICMwMDA7XG4gIGhlaWdodDogMS4yZW07XG4gIHdpZHRoOiAxLjJlbTtcbn1cblxuLnNwbGlkZV9fYXJyb3c6aG92ZXIge1xuICBvcGFjaXR5OiAwLjk7XG59XG5cbi5zcGxpZGVfX2Fycm93OmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTtcbn1cblxuLnNwbGlkZV9fYXJyb3ctLXByZXYge1xuICBsZWZ0OiAxZW07XG59XG5cbi5zcGxpZGVfX2Fycm93LS1wcmV2IHN2ZyB7XG4gIHRyYW5zZm9ybTogc2NhbGVYKC0xKTtcbn1cblxuLnNwbGlkZV9fYXJyb3ctLW5leHQge1xuICByaWdodDogMWVtO1xufVxuXG4uc3BsaWRlX19wYWdpbmF0aW9uIHtcbiAgYm90dG9tOiAwLjVlbTtcbiAgbGVmdDogMDtcbiAgcGFkZGluZzogMCAxZW07XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIHotaW5kZXg6IDE7XG59XG5cbi5zcGxpZGVfX3BhZ2luYXRpb25fX3BhZ2Uge1xuICBiYWNrZ3JvdW5kOiAjY2NjO1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBoZWlnaHQ6IDhweDtcbiAgbWFyZ2luOiAzcHg7XG4gIG9wYWNpdHk6IDAuNztcbiAgcGFkZGluZzogMDtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMnMgbGluZWFyO1xuICB3aWR0aDogOHB4O1xufVxuXG4uc3BsaWRlX19wYWdpbmF0aW9uX19wYWdlLmlzLWFjdGl2ZSB7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS40KTtcbn1cblxuLnNwbGlkZV9fcGFnaW5hdGlvbl9fcGFnZTpob3ZlciB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgb3BhY2l0eTogMC45O1xufVxuXG4uc3BsaWRlX19wYWdpbmF0aW9uX19wYWdlOmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTtcbn1cblxuLnNwbGlkZV9fcHJvZ3Jlc3NfX2JhciB7XG4gIGJhY2tncm91bmQ6ICNjY2M7XG4gIGhlaWdodDogM3B4O1xufVxuXG4uc3BsaWRlLS1uYXYgPiAuc3BsaWRlX19zbGlkZXIgPiAuc3BsaWRlX190cmFjayA+IC5zcGxpZGVfX2xpc3QgPiAuc3BsaWRlX19zbGlkZSwgLnNwbGlkZS0tbmF2ID4gLnNwbGlkZV9fdHJhY2sgPiAuc3BsaWRlX19saXN0ID4gLnNwbGlkZV9fc2xpZGUge1xuICBib3JkZXI6IDNweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4uc3BsaWRlLS1uYXYgPiAuc3BsaWRlX19zbGlkZXIgPiAuc3BsaWRlX190cmFjayA+IC5zcGxpZGVfX2xpc3QgPiAuc3BsaWRlX19zbGlkZS5pcy1hY3RpdmUsIC5zcGxpZGUtLW5hdiA+IC5zcGxpZGVfX3RyYWNrID4gLnNwbGlkZV9fbGlzdCA+IC5zcGxpZGVfX3NsaWRlLmlzLWFjdGl2ZSB7XG4gIGJvcmRlcjogM3B4IHNvbGlkICMwMDA7XG59XG5cbi5zcGxpZGUtLW5hdiA+IC5zcGxpZGVfX3NsaWRlciA+IC5zcGxpZGVfX3RyYWNrID4gLnNwbGlkZV9fbGlzdCA+IC5zcGxpZGVfX3NsaWRlOmZvY3VzLCAuc3BsaWRlLS1uYXYgPiAuc3BsaWRlX190cmFjayA+IC5zcGxpZGVfX2xpc3QgPiAuc3BsaWRlX19zbGlkZTpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmU7XG59XG5cbi5zcGxpZGUtLXJ0bCA+IC5zcGxpZGVfX2Fycm93cyAuc3BsaWRlX19hcnJvdy0tcHJldiwgLnNwbGlkZS0tcnRsID4gLnNwbGlkZV9fc2xpZGVyID4gLnNwbGlkZV9fdHJhY2sgPiAuc3BsaWRlX19hcnJvd3MgLnNwbGlkZV9fYXJyb3ctLXByZXYsIC5zcGxpZGUtLXJ0bCA+IC5zcGxpZGVfX3RyYWNrID4gLnNwbGlkZV9fYXJyb3dzIC5zcGxpZGVfX2Fycm93LS1wcmV2IHtcbiAgbGVmdDogYXV0bztcbiAgcmlnaHQ6IDFlbTtcbn1cblxuLnNwbGlkZS0tcnRsID4gLnNwbGlkZV9fYXJyb3dzIC5zcGxpZGVfX2Fycm93LS1wcmV2IHN2ZywgLnNwbGlkZS0tcnRsID4gLnNwbGlkZV9fc2xpZGVyID4gLnNwbGlkZV9fdHJhY2sgPiAuc3BsaWRlX19hcnJvd3MgLnNwbGlkZV9fYXJyb3ctLXByZXYgc3ZnLCAuc3BsaWRlLS1ydGwgPiAuc3BsaWRlX190cmFjayA+IC5zcGxpZGVfX2Fycm93cyAuc3BsaWRlX19hcnJvdy0tcHJldiBzdmcge1xuICB0cmFuc2Zvcm06IHNjYWxlWCgxKTtcbn1cblxuLnNwbGlkZS0tcnRsID4gLnNwbGlkZV9fYXJyb3dzIC5zcGxpZGVfX2Fycm93LS1uZXh0LCAuc3BsaWRlLS1ydGwgPiAuc3BsaWRlX19zbGlkZXIgPiAuc3BsaWRlX190cmFjayA+IC5zcGxpZGVfX2Fycm93cyAuc3BsaWRlX19hcnJvdy0tbmV4dCwgLnNwbGlkZS0tcnRsID4gLnNwbGlkZV9fdHJhY2sgPiAuc3BsaWRlX19hcnJvd3MgLnNwbGlkZV9fYXJyb3ctLW5leHQge1xuICBsZWZ0OiAxZW07XG4gIHJpZ2h0OiBhdXRvO1xufVxuXG4uc3BsaWRlLS1ydGwgPiAuc3BsaWRlX19hcnJvd3MgLnNwbGlkZV9fYXJyb3ctLW5leHQgc3ZnLCAuc3BsaWRlLS1ydGwgPiAuc3BsaWRlX19zbGlkZXIgPiAuc3BsaWRlX190cmFjayA+IC5zcGxpZGVfX2Fycm93cyAuc3BsaWRlX19hcnJvdy0tbmV4dCBzdmcsIC5zcGxpZGUtLXJ0bCA+IC5zcGxpZGVfX3RyYWNrID4gLnNwbGlkZV9fYXJyb3dzIC5zcGxpZGVfX2Fycm93LS1uZXh0IHN2ZyB7XG4gIHRyYW5zZm9ybTogc2NhbGVYKC0xKTtcbn1cblxuLnNwbGlkZS0tdHRiID4gLnNwbGlkZV9fYXJyb3dzIC5zcGxpZGVfX2Fycm93LCAuc3BsaWRlLS10dGIgPiAuc3BsaWRlX19zbGlkZXIgPiAuc3BsaWRlX190cmFjayA+IC5zcGxpZGVfX2Fycm93cyAuc3BsaWRlX19hcnJvdywgLnNwbGlkZS0tdHRiID4gLnNwbGlkZV9fdHJhY2sgPiAuc3BsaWRlX19hcnJvd3MgLnNwbGlkZV9fYXJyb3cge1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUpO1xufVxuXG4uc3BsaWRlLS10dGIgPiAuc3BsaWRlX19hcnJvd3MgLnNwbGlkZV9fYXJyb3ctLXByZXYsIC5zcGxpZGUtLXR0YiA+IC5zcGxpZGVfX3NsaWRlciA+IC5zcGxpZGVfX3RyYWNrID4gLnNwbGlkZV9fYXJyb3dzIC5zcGxpZGVfX2Fycm93LS1wcmV2LCAuc3BsaWRlLS10dGIgPiAuc3BsaWRlX190cmFjayA+IC5zcGxpZGVfX2Fycm93cyAuc3BsaWRlX19hcnJvdy0tcHJldiB7XG4gIHRvcDogMWVtO1xufVxuXG4uc3BsaWRlLS10dGIgPiAuc3BsaWRlX19hcnJvd3MgLnNwbGlkZV9fYXJyb3ctLXByZXYgc3ZnLCAuc3BsaWRlLS10dGIgPiAuc3BsaWRlX19zbGlkZXIgPiAuc3BsaWRlX190cmFjayA+IC5zcGxpZGVfX2Fycm93cyAuc3BsaWRlX19hcnJvdy0tcHJldiBzdmcsIC5zcGxpZGUtLXR0YiA+IC5zcGxpZGVfX3RyYWNrID4gLnNwbGlkZV9fYXJyb3dzIC5zcGxpZGVfX2Fycm93LS1wcmV2IHN2ZyB7XG4gIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG59XG5cbi5zcGxpZGUtLXR0YiA+IC5zcGxpZGVfX2Fycm93cyAuc3BsaWRlX19hcnJvdy0tbmV4dCwgLnNwbGlkZS0tdHRiID4gLnNwbGlkZV9fc2xpZGVyID4gLnNwbGlkZV9fdHJhY2sgPiAuc3BsaWRlX19hcnJvd3MgLnNwbGlkZV9fYXJyb3ctLW5leHQsIC5zcGxpZGUtLXR0YiA+IC5zcGxpZGVfX3RyYWNrID4gLnNwbGlkZV9fYXJyb3dzIC5zcGxpZGVfX2Fycm93LS1uZXh0IHtcbiAgYm90dG9tOiAxZW07XG4gIHRvcDogYXV0bztcbn1cblxuLnNwbGlkZS0tdHRiID4gLnNwbGlkZV9fYXJyb3dzIC5zcGxpZGVfX2Fycm93LS1uZXh0IHN2ZywgLnNwbGlkZS0tdHRiID4gLnNwbGlkZV9fc2xpZGVyID4gLnNwbGlkZV9fdHJhY2sgPiAuc3BsaWRlX19hcnJvd3MgLnNwbGlkZV9fYXJyb3ctLW5leHQgc3ZnLCAuc3BsaWRlLS10dGIgPiAuc3BsaWRlX190cmFjayA+IC5zcGxpZGVfX2Fycm93cyAuc3BsaWRlX19hcnJvdy0tbmV4dCBzdmcge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG59XG5cbi5zcGxpZGUtLXR0YiA+IC5zcGxpZGVfX3BhZ2luYXRpb24sIC5zcGxpZGUtLXR0YiA+IC5zcGxpZGVfX3NsaWRlciA+IC5zcGxpZGVfX3BhZ2luYXRpb24ge1xuICBib3R0b206IDA7XG4gIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xuICBkaXNwbGF5OiBmbGV4O1xuICAtbXMtZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgbGVmdDogYXV0bztcbiAgcGFkZGluZzogMWVtIDA7XG4gIHJpZ2h0OiAwLjVlbTtcbiAgdG9wOiAwO1xufVxuXG5AdGFpbHdpbmQgYmFzZTtcbkB0YWlsd2luZCB1dGlsaXRpZXM7XG4vKipcbiAqIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4gKiBWZXJzaW9uIDYuNy40XG4gKiBodHRwczovL2dldC5mb3VuZGF0aW9uXG4gKiBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcbiAqL1xuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLnJldmVhbC5sYXJnZSwgLnJldmVhbC5zbWFsbCwgLnJldmVhbC50aW55LCAucmV2ZWFsIHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiBhdXRvO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICB9XG59XG4vKiEgbm9ybWFsaXplLmNzcyB2OC4wLjAgfCBNSVQgTGljZW5zZSB8IGdpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzICovXG5odG1sIHtcbiAgbGluZS1oZWlnaHQ6IDEuMTU7XG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTtcbn1cblxuYm9keSB7XG4gIG1hcmdpbjogMDtcbn1cblxuaDEge1xuICBmb250LXNpemU6IDJlbTtcbiAgbWFyZ2luOiAwLjY3ZW0gMDtcbn1cblxuaHIge1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgaGVpZ2h0OiAwO1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxucHJlIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlO1xuICBmb250LXNpemU6IDFlbTtcbn1cblxuYSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG5hYmJyW3RpdGxlXSB7XG4gIGJvcmRlci1ib3R0b206IDA7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDtcbn1cblxuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG59XG5cbmNvZGUsXG5rYmQsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlO1xuICBmb250LXNpemU6IDFlbTtcbn1cblxuc21hbGwge1xuICBmb250LXNpemU6IDgwJTtcbn1cblxuc3ViLFxuc3VwIHtcbiAgZm9udC1zaXplOiA3NSU7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuc3ViIHtcbiAgYm90dG9tOiAtMC4yNWVtO1xufVxuXG5zdXAge1xuICB0b3A6IC0wLjVlbTtcbn1cblxuaW1nIHtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xufVxuXG5idXR0b24sXG5pbnB1dCxcbm9wdGdyb3VwLFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgZm9udC1zaXplOiAxMDAlO1xuICBsaW5lLWhlaWdodDogMS4xNTtcbiAgbWFyZ2luOiAwO1xufVxuXG5idXR0b24sXG5pbnB1dCB7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG5idXR0b24sXG5zZWxlY3Qge1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cblxuYnV0dG9uLFxuW3R5cGU9YnV0dG9uXSxcblt0eXBlPXJlc2V0XSxcblt0eXBlPXN1Ym1pdF0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbn1cblxuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9YnV0dG9uXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPXJlc2V0XTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPXN1Ym1pdF06Oi1tb3otZm9jdXMtaW5uZXIge1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG59XG5cbmJ1dHRvbjotbW96LWZvY3VzcmluZyxcblt0eXBlPWJ1dHRvbl06LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1yZXNldF06LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1zdWJtaXRdOi1tb3otZm9jdXNyaW5nIHtcbiAgb3V0bGluZTogMXB4IGRvdHRlZCBCdXR0b25UZXh0O1xufVxuXG5maWVsZHNldCB7XG4gIHBhZGRpbmc6IDAuMzVlbSAwLjc1ZW0gMC42MjVlbTtcbn1cblxubGVnZW5kIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDA7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG59XG5cbnByb2dyZXNzIHtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG50ZXh0YXJlYSB7XG4gIG92ZXJmbG93OiBhdXRvO1xufVxuXG5bdHlwZT1jaGVja2JveF0sXG5bdHlwZT1yYWRpb10ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBwYWRkaW5nOiAwO1xufVxuXG5bdHlwZT1udW1iZXJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuW3R5cGU9bnVtYmVyXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuW3R5cGU9c2VhcmNoXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkO1xuICBvdXRsaW5lLW9mZnNldDogLTJweDtcbn1cblxuW3R5cGU9c2VhcmNoXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xuICBmb250OiBpbmhlcml0O1xufVxuXG5kZXRhaWxzIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbnN1bW1hcnkge1xuICBkaXNwbGF5OiBsaXN0LWl0ZW07XG59XG5cbnRlbXBsYXRlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuW2hpZGRlbl0ge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG5bZGF0YS13aGF0aW50ZW50PW1vdXNlXSAqLCBbZGF0YS13aGF0aW50ZW50PW1vdXNlXSAqOmZvY3VzLFxuW2RhdGEtd2hhdGludGVudD10b3VjaF0gKixcbltkYXRhLXdoYXRpbnRlbnQ9dG91Y2hdICo6Zm9jdXMsXG5bZGF0YS13aGF0aW5wdXQ9bW91c2VdICosXG5bZGF0YS13aGF0aW5wdXQ9bW91c2VdICo6Zm9jdXMsXG5bZGF0YS13aGF0aW5wdXQ9dG91Y2hdICosXG5bZGF0YS13aGF0aW5wdXQ9dG91Y2hdICo6Zm9jdXMge1xuICBvdXRsaW5lOiBub25lO1xufVxuXG5bZHJhZ2dhYmxlPWZhbHNlXSB7XG4gIC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZTtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbn1cblxuLmZvdW5kYXRpb24tbXEge1xuICBmb250LWZhbWlseTogXCJzbWFsbD0wZW0mbWVkaXVtPTQwZW0mbGFyZ2U9NjRlbSZ4bGFyZ2U9NzVlbSZ4eGxhcmdlPTkwZW0meHh4bGFyZ2U9MTAwZW1cIjtcbn1cblxuaHRtbCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGZvbnQtc2l6ZTogOTMuNzUlO1xufVxuXG4qLFxuKjo6YmVmb3JlLFxuKjo6YWZ0ZXIge1xuICBib3gtc2l6aW5nOiBpbmhlcml0O1xufVxuXG5ib2R5IHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBiYWNrZ3JvdW5kOiAjZmVmZWZlO1xuICBmb250LWZhbWlseTogXCJSYWxld2F5XCIsIFwiSGVsdmV0aWNhIE5ldWVcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgY29sb3I6ICM0MDQ0NEQ7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xufVxuXG5pbWcge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xuICAtbXMtaW50ZXJwb2xhdGlvbi1tb2RlOiBiaWN1YmljO1xufVxuXG50ZXh0YXJlYSB7XG4gIGhlaWdodDogYXV0bztcbiAgbWluLWhlaWdodDogNTBweDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cblxuc2VsZWN0IHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG5cbi5tYXBfY2FudmFzIGltZyxcbi5tYXBfY2FudmFzIGVtYmVkLFxuLm1hcF9jYW52YXMgb2JqZWN0LFxuLm1xYS1kaXNwbGF5IGltZyxcbi5tcWEtZGlzcGxheSBlbWJlZCxcbi5tcWEtZGlzcGxheSBvYmplY3Qge1xuICBtYXgtd2lkdGg6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuYnV0dG9uIHtcbiAgcGFkZGluZzogMDtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGN1cnNvcjogYXV0bztcbn1cbltkYXRhLXdoYXRpbnB1dD1tb3VzZV0gYnV0dG9uIHtcbiAgb3V0bGluZTogMDtcbn1cblxucHJlIHtcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbn1cblxuYnV0dG9uLFxuaW5wdXQsXG5vcHRncm91cCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG59XG5cbi5pcy12aXNpYmxlIHtcbiAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbn1cblxuLmlzLWhpZGRlbiB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuW3R5cGU9dGV4dF0sIFt0eXBlPXBhc3N3b3JkXSwgW3R5cGU9ZGF0ZV0sIFt0eXBlPWRhdGV0aW1lXSwgW3R5cGU9ZGF0ZXRpbWUtbG9jYWxdLCBbdHlwZT1tb250aF0sIFt0eXBlPXdlZWtdLCBbdHlwZT1lbWFpbF0sIFt0eXBlPW51bWJlcl0sIFt0eXBlPXNlYXJjaF0sIFt0eXBlPXRlbF0sIFt0eXBlPXRpbWVdLCBbdHlwZT11cmxdLCBbdHlwZT1jb2xvcl0sXG50ZXh0YXJlYSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAyLjQzMzMzMzMzMzNyZW07XG4gIG1hcmdpbjogMCAwIDFyZW07XG4gIHBhZGRpbmc6IDAuNXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NhY2FjYTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMnB4IHJnYmEoMTAsIDEwLCAxMCwgMC4xKTtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMC41cywgYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2UtaW4tb3V0O1xuICBhcHBlYXJhbmNlOiBub25lO1xufVxuW3R5cGU9dGV4dF06Zm9jdXMsIFt0eXBlPXBhc3N3b3JkXTpmb2N1cywgW3R5cGU9ZGF0ZV06Zm9jdXMsIFt0eXBlPWRhdGV0aW1lXTpmb2N1cywgW3R5cGU9ZGF0ZXRpbWUtbG9jYWxdOmZvY3VzLCBbdHlwZT1tb250aF06Zm9jdXMsIFt0eXBlPXdlZWtdOmZvY3VzLCBbdHlwZT1lbWFpbF06Zm9jdXMsIFt0eXBlPW51bWJlcl06Zm9jdXMsIFt0eXBlPXNlYXJjaF06Zm9jdXMsIFt0eXBlPXRlbF06Zm9jdXMsIFt0eXBlPXRpbWVdOmZvY3VzLCBbdHlwZT11cmxdOmZvY3VzLCBbdHlwZT1jb2xvcl06Zm9jdXMsXG50ZXh0YXJlYTpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmU7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM4YThhOGE7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZWZlZmU7XG4gIGJveC1zaGFkb3c6IDAgMCA1cHggI2NhY2FjYTtcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjVzLCBib3JkZXItY29sb3IgMC4yNXMgZWFzZS1pbi1vdXQ7XG59XG5cbnRleHRhcmVhIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxudGV4dGFyZWFbcm93c10ge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbmlucHV0OmRpc2FibGVkLCBpbnB1dFtyZWFkb25seV0sXG50ZXh0YXJlYTpkaXNhYmxlZCxcbnRleHRhcmVhW3JlYWRvbmx5XSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlNmU2ZTY7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG59XG5cblt0eXBlPXN1Ym1pdF0sXG5bdHlwZT1idXR0b25dIHtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cblxuaW5wdXRbdHlwZT1zZWFyY2hdIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuOjpwbGFjZWhvbGRlciB7XG4gIGNvbG9yOiAjY2FjYWNhO1xufVxuXG5bdHlwZT1maWxlXSxcblt0eXBlPWNoZWNrYm94XSxcblt0eXBlPXJhZGlvXSB7XG4gIG1hcmdpbjogMCAwIDFyZW07XG59XG5cblt0eXBlPWNoZWNrYm94XSArIGxhYmVsLFxuW3R5cGU9cmFkaW9dICsgbGFiZWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgbWFyZ2luLWxlZnQ6IDAuNXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuW3R5cGU9Y2hlY2tib3hdICsgbGFiZWxbZm9yXSxcblt0eXBlPXJhZGlvXSArIGxhYmVsW2Zvcl0ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbmxhYmVsID4gW3R5cGU9Y2hlY2tib3hdLFxubGFiZWwgPiBbdHlwZT1yYWRpb10ge1xuICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTtcbn1cblxuW3R5cGU9ZmlsZV0ge1xuICB3aWR0aDogMTAwJTtcbn1cblxubGFiZWwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogMS44O1xuICBjb2xvcjogIzBhMGEwYTtcbn1cbmxhYmVsLm1pZGRsZSB7XG4gIG1hcmdpbjogMCAwIDFyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIHBhZGRpbmc6IDAuNTY2NjY2NjY2N3JlbSAwO1xufVxuXG4uaGVscC10ZXh0IHtcbiAgbWFyZ2luLXRvcDogLTAuNXJlbTtcbiAgZm9udC1zaXplOiAwLjgxMjVyZW07XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgY29sb3I6ICMwYTBhMGE7XG59XG5cbi5pbnB1dC1ncm91cCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbn1cbi5pbnB1dC1ncm91cCA+IDpmaXJzdC1jaGlsZCwgLmlucHV0LWdyb3VwID4gOmZpcnN0LWNoaWxkLmlucHV0LWdyb3VwLWJ1dHRvbiA+ICoge1xuICBib3JkZXItcmFkaXVzOiAwIDAgMCAwO1xufVxuLmlucHV0LWdyb3VwID4gOmxhc3QtY2hpbGQsIC5pbnB1dC1ncm91cCA+IDpsYXN0LWNoaWxkLmlucHV0LWdyb3VwLWJ1dHRvbiA+ICoge1xuICBib3JkZXItcmFkaXVzOiAwIDAgMCAwO1xufVxuXG4uaW5wdXQtZ3JvdXAtYnV0dG9uIGEsXG4uaW5wdXQtZ3JvdXAtYnV0dG9uIGlucHV0LFxuLmlucHV0LWdyb3VwLWJ1dHRvbiBidXR0b24sXG4uaW5wdXQtZ3JvdXAtYnV0dG9uIGxhYmVsLCAuaW5wdXQtZ3JvdXAtYnV0dG9uLCAuaW5wdXQtZ3JvdXAtZmllbGQsIC5pbnB1dC1ncm91cC1sYWJlbCB7XG4gIG1hcmdpbjogMDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLmlucHV0LWdyb3VwLWxhYmVsIHtcbiAgcGFkZGluZzogMCAxcmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2FjYWNhO1xuICBiYWNrZ3JvdW5kOiAjZTZlNmU2O1xuICBjb2xvcjogIzBhMGEwYTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4OiAwIDAgYXV0bztcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cbi5pbnB1dC1ncm91cC1sYWJlbDpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci1yaWdodDogMDtcbn1cbi5pbnB1dC1ncm91cC1sYWJlbDpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLWxlZnQ6IDA7XG59XG5cbi5pbnB1dC1ncm91cC1maWVsZCB7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGZsZXg6IDEgMSAwcHg7XG4gIG1pbi13aWR0aDogMDtcbn1cblxuLmlucHV0LWdyb3VwLWJ1dHRvbiB7XG4gIHBhZGRpbmctdG9wOiAwO1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4OiAwIDAgYXV0bztcbn1cbi5pbnB1dC1ncm91cC1idXR0b24gYSxcbi5pbnB1dC1ncm91cC1idXR0b24gaW5wdXQsXG4uaW5wdXQtZ3JvdXAtYnV0dG9uIGJ1dHRvbixcbi5pbnB1dC1ncm91cC1idXR0b24gbGFiZWwge1xuICBhbGlnbi1zZWxmOiBzdHJldGNoO1xuICBoZWlnaHQ6IGF1dG87XG4gIHBhZGRpbmctdG9wOiAwO1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuXG5maWVsZHNldCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyOiAwO1xufVxuXG5sZWdlbmQge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbn1cblxuLmZpZWxkc2V0IHtcbiAgbWFyZ2luOiAxLjEyNXJlbSAwO1xuICBwYWRkaW5nOiAxLjI1cmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2FjYWNhO1xufVxuLmZpZWxkc2V0IGxlZ2VuZCB7XG4gIG1hcmdpbjogMDtcbiAgbWFyZ2luLWxlZnQ6IC0wLjJyZW07XG4gIHBhZGRpbmc6IDAgMC4xODc1cmVtO1xufVxuXG5zZWxlY3Qge1xuICBoZWlnaHQ6IDIuNDMzMzMzMzMzM3JlbTtcbiAgbWFyZ2luOiAwIDAgMXJlbTtcbiAgcGFkZGluZzogMC41cmVtO1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2FjYWNhO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlO1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBjb2xvcjogIzBhMGEwYTtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3N2Zyt4bWw7dXRmOCw8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2ZXJzaW9uPVwiMS4xXCIgd2lkdGg9XCIzMlwiIGhlaWdodD1cIjI0XCIgdmlld0JveD1cIjAgMCAzMiAyNFwiPjxwb2x5Z29uIHBvaW50cz1cIjAsMCAzMiwwIDE2LDI0XCIgc3R5bGU9XCJmaWxsOiByZ2IlMjgxMzgsIDEzOCwgMTM4JTI5XCI+PC9wb2x5Z29uPjwvc3ZnPicpO1xuICBiYWNrZ3JvdW5kLW9yaWdpbjogY29udGVudC1ib3g7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IC0xcmVtIGNlbnRlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiA5cHggNnB4O1xuICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW07XG4gIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMC41cywgYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2UtaW4tb3V0O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMFxcMCApIHtcbiAgc2VsZWN0IHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUNBQUFBQVlDQVlBQUFDYlUvODBBQUFBR1hSRldIUlRiMlowZDJGeVpRQkJaRzlpWlNCSmJXRm5aVkpsWVdSNWNjbGxQQUFBQUlwSlJFRlVlTnJFa2NrTmdEQU1CQmZSa0V0ME9iUkJCZHNHWFVEZ21RZks0WGhIMm04Y3pRQUF5MjdSM3RzdzRRZmUyeDh1T082b1lMYjZHbE9vcjNHRitzd1VSQU9tVUorUnd0RUpzOVd2VEdFWXhCWHFJMU1RQVpoQ2ZVUUtSekRNVmorVHdyQUlWNmp2U1VFa1lBcjFMU2tjeVRCYi9WK0tZZlg3eEFldXNxM3NMRHRHSDNrRUdBQ1BXSWZsTlpmaFJRQUFBQUJKUlU1RXJrSmdnZz09XCIpO1xuICB9XG59XG5zZWxlY3Q6Zm9jdXMge1xuICBvdXRsaW5lOiBub25lO1xuICBib3JkZXI6IDFweCBzb2xpZCAjOGE4YThhO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlO1xuICBib3gtc2hhZG93OiAwIDAgNXB4ICNjYWNhY2E7XG4gIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMC41cywgYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2UtaW4tb3V0O1xufVxuc2VsZWN0OmRpc2FibGVkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U2ZTZlNjtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbn1cbnNlbGVjdDo6LW1zLWV4cGFuZCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5zZWxlY3RbbXVsdGlwbGVdIHtcbiAgaGVpZ2h0OiBhdXRvO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xufVxuc2VsZWN0Om5vdChbbXVsdGlwbGVdKSB7XG4gIHBhZGRpbmctdG9wOiAwO1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbn1cblxuLmlzLWludmFsaWQtaW5wdXQ6bm90KDpmb2N1cykge1xuICBib3JkZXItY29sb3I6ICNjYzRiMzc7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOWVjZWE7XG59XG4uaXMtaW52YWxpZC1pbnB1dDpub3QoOmZvY3VzKTo6cGxhY2Vob2xkZXIge1xuICBjb2xvcjogI2NjNGIzNztcbn1cblxuLmlzLWludmFsaWQtbGFiZWwge1xuICBjb2xvcjogI2NjNGIzNztcbn1cblxuLmZvcm0tZXJyb3Ige1xuICBkaXNwbGF5OiBub25lO1xuICBtYXJnaW4tdG9wOiAtMC41cmVtO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBjb2xvcjogI2NjNGIzNztcbn1cbi5mb3JtLWVycm9yLmlzLXZpc2libGUge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmJ1dHRvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgbWFyZ2luOiAwIDAgMXJlbSAwO1xuICBwYWRkaW5nOiAwLjg1ZW0gMWVtO1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjI1cyBlYXNlLW91dCwgY29sb3IgMC4yNXMgZWFzZS1vdXQ7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IDAuOXJlbTtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICBsaW5lLWhlaWdodDogMTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5bZGF0YS13aGF0aW5wdXQ9bW91c2VdIC5idXR0b24ge1xuICBvdXRsaW5lOiAwO1xufVxuLmJ1dHRvbi50aW55IHtcbiAgZm9udC1zaXplOiAwLjZyZW07XG59XG4uYnV0dG9uLnNtYWxsIHtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xufVxuLmJ1dHRvbi5sYXJnZSB7XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbn1cbi5idXR0b24uZXhwYW5kZWQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG4uYnV0dG9uLCAuYnV0dG9uLmRpc2FibGVkLCAuYnV0dG9uW2Rpc2FibGVkXSwgLmJ1dHRvbi5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbltkaXNhYmxlZF06aG92ZXIsIC5idXR0b24uZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b25bZGlzYWJsZWRdOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzE3NzliYTtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG4uYnV0dG9uOmhvdmVyLCAuYnV0dG9uOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzE0Njc5ZTtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG4uYnV0dG9uLnByaW1hcnksIC5idXR0b24ucHJpbWFyeS5kaXNhYmxlZCwgLmJ1dHRvbi5wcmltYXJ5W2Rpc2FibGVkXSwgLmJ1dHRvbi5wcmltYXJ5LmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLnByaW1hcnlbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLnByaW1hcnkuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24ucHJpbWFyeVtkaXNhYmxlZF06Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTc3OWJhO1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cbi5idXR0b24ucHJpbWFyeTpob3ZlciwgLmJ1dHRvbi5wcmltYXJ5OmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzEyNjE5NTtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG4uYnV0dG9uLnNlY29uZGFyeSwgLmJ1dHRvbi5zZWNvbmRhcnkuZGlzYWJsZWQsIC5idXR0b24uc2Vjb25kYXJ5W2Rpc2FibGVkXSwgLmJ1dHRvbi5zZWNvbmRhcnkuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24uc2Vjb25kYXJ5W2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi5zZWNvbmRhcnkuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24uc2Vjb25kYXJ5W2Rpc2FibGVkXTpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM3Njc2NzY7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuLmJ1dHRvbi5zZWNvbmRhcnk6aG92ZXIsIC5idXR0b24uc2Vjb25kYXJ5OmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzVlNWU1ZTtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG4uYnV0dG9uLnN1Y2Nlc3MsIC5idXR0b24uc3VjY2Vzcy5kaXNhYmxlZCwgLmJ1dHRvbi5zdWNjZXNzW2Rpc2FibGVkXSwgLmJ1dHRvbi5zdWNjZXNzLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLnN1Y2Nlc3NbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLnN1Y2Nlc3MuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24uc3VjY2Vzc1tkaXNhYmxlZF06Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjM2FkYjc2O1xuICBjb2xvcjogIzBhMGEwYTtcbn1cbi5idXR0b24uc3VjY2Vzczpob3ZlciwgLmJ1dHRvbi5zdWNjZXNzOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIyYmI1YjtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG4uYnV0dG9uLndhcm5pbmcsIC5idXR0b24ud2FybmluZy5kaXNhYmxlZCwgLmJ1dHRvbi53YXJuaW5nW2Rpc2FibGVkXSwgLmJ1dHRvbi53YXJuaW5nLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLndhcm5pbmdbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLndhcm5pbmcuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24ud2FybmluZ1tkaXNhYmxlZF06Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZhZTAwO1xuICBjb2xvcjogIzBhMGEwYTtcbn1cbi5idXR0b24ud2FybmluZzpob3ZlciwgLmJ1dHRvbi53YXJuaW5nOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2NjOGIwMDtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG4uYnV0dG9uLmFsZXJ0LCAuYnV0dG9uLmFsZXJ0LmRpc2FibGVkLCAuYnV0dG9uLmFsZXJ0W2Rpc2FibGVkXSwgLmJ1dHRvbi5hbGVydC5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi5hbGVydFtkaXNhYmxlZF06aG92ZXIsIC5idXR0b24uYWxlcnQuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24uYWxlcnRbZGlzYWJsZWRdOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2NjNGIzNztcbiAgY29sb3I6ICNmZWZlZmU7XG59XG4uYnV0dG9uLmFsZXJ0OmhvdmVyLCAuYnV0dG9uLmFsZXJ0OmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2E1M2IyYTtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG4uYnV0dG9uLmhvbGxvdywgLmJ1dHRvbi5ob2xsb3c6aG92ZXIsIC5idXR0b24uaG9sbG93OmZvY3VzLCAuYnV0dG9uLmhvbGxvdy5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3cuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24uaG9sbG93LmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLmhvbGxvd1tkaXNhYmxlZF0sIC5idXR0b24uaG9sbG93W2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi5ob2xsb3dbZGlzYWJsZWRdOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4uYnV0dG9uLmhvbGxvdywgLmJ1dHRvbi5ob2xsb3cuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93W2Rpc2FibGVkXSwgLmJ1dHRvbi5ob2xsb3cuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24uaG9sbG93W2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi5ob2xsb3cuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24uaG9sbG93W2Rpc2FibGVkXTpmb2N1cyB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICMxNzc5YmE7XG4gIGNvbG9yOiAjMTc3OWJhO1xufVxuLmJ1dHRvbi5ob2xsb3c6aG92ZXIsIC5idXR0b24uaG9sbG93OmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiAjMGMzZDVkO1xuICBjb2xvcjogIzBjM2Q1ZDtcbn1cbi5idXR0b24uaG9sbG93LnByaW1hcnksIC5idXR0b24uaG9sbG93LnByaW1hcnkuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93LnByaW1hcnlbZGlzYWJsZWRdLCAuYnV0dG9uLmhvbGxvdy5wcmltYXJ5LmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5wcmltYXJ5W2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi5ob2xsb3cucHJpbWFyeS5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi5ob2xsb3cucHJpbWFyeVtkaXNhYmxlZF06Zm9jdXMge1xuICBib3JkZXI6IDFweCBzb2xpZCAjMTc3OWJhO1xuICBjb2xvcjogIzE3NzliYTtcbn1cbi5idXR0b24uaG9sbG93LnByaW1hcnk6aG92ZXIsIC5idXR0b24uaG9sbG93LnByaW1hcnk6Zm9jdXMge1xuICBib3JkZXItY29sb3I6ICMwYzNkNWQ7XG4gIGNvbG9yOiAjMGMzZDVkO1xufVxuLmJ1dHRvbi5ob2xsb3cuc2Vjb25kYXJ5LCAuYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnkuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93LnNlY29uZGFyeVtkaXNhYmxlZF0sIC5idXR0b24uaG9sbG93LnNlY29uZGFyeS5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi5ob2xsb3cuc2Vjb25kYXJ5W2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi5ob2xsb3cuc2Vjb25kYXJ5LmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnlbZGlzYWJsZWRdOmZvY3VzIHtcbiAgYm9yZGVyOiAxcHggc29saWQgIzc2NzY3NjtcbiAgY29sb3I6ICM3Njc2NzY7XG59XG4uYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnk6aG92ZXIsIC5idXR0b24uaG9sbG93LnNlY29uZGFyeTpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogIzNiM2IzYjtcbiAgY29sb3I6ICMzYjNiM2I7XG59XG4uYnV0dG9uLmhvbGxvdy5zdWNjZXNzLCAuYnV0dG9uLmhvbGxvdy5zdWNjZXNzLmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy5zdWNjZXNzW2Rpc2FibGVkXSwgLmJ1dHRvbi5ob2xsb3cuc3VjY2Vzcy5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi5ob2xsb3cuc3VjY2Vzc1tkaXNhYmxlZF06aG92ZXIsIC5idXR0b24uaG9sbG93LnN1Y2Nlc3MuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24uaG9sbG93LnN1Y2Nlc3NbZGlzYWJsZWRdOmZvY3VzIHtcbiAgYm9yZGVyOiAxcHggc29saWQgIzNhZGI3NjtcbiAgY29sb3I6ICMzYWRiNzY7XG59XG4uYnV0dG9uLmhvbGxvdy5zdWNjZXNzOmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5zdWNjZXNzOmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiAjMTU3NTM5O1xuICBjb2xvcjogIzE1NzUzOTtcbn1cbi5idXR0b24uaG9sbG93Lndhcm5pbmcsIC5idXR0b24uaG9sbG93Lndhcm5pbmcuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93Lndhcm5pbmdbZGlzYWJsZWRdLCAuYnV0dG9uLmhvbGxvdy53YXJuaW5nLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLmhvbGxvdy53YXJuaW5nW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi5ob2xsb3cud2FybmluZy5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi5ob2xsb3cud2FybmluZ1tkaXNhYmxlZF06Zm9jdXMge1xuICBib3JkZXI6IDFweCBzb2xpZCAjZmZhZTAwO1xuICBjb2xvcjogI2ZmYWUwMDtcbn1cbi5idXR0b24uaG9sbG93Lndhcm5pbmc6aG92ZXIsIC5idXR0b24uaG9sbG93Lndhcm5pbmc6Zm9jdXMge1xuICBib3JkZXItY29sb3I6ICM4MDU3MDA7XG4gIGNvbG9yOiAjODA1NzAwO1xufVxuLmJ1dHRvbi5ob2xsb3cuYWxlcnQsIC5idXR0b24uaG9sbG93LmFsZXJ0LmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy5hbGVydFtkaXNhYmxlZF0sIC5idXR0b24uaG9sbG93LmFsZXJ0LmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5hbGVydFtkaXNhYmxlZF06aG92ZXIsIC5idXR0b24uaG9sbG93LmFsZXJ0LmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLmhvbGxvdy5hbGVydFtkaXNhYmxlZF06Zm9jdXMge1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2M0YjM3O1xuICBjb2xvcjogI2NjNGIzNztcbn1cbi5idXR0b24uaG9sbG93LmFsZXJ0OmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5hbGVydDpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogIzY3MjUxYTtcbiAgY29sb3I6ICM2NzI1MWE7XG59XG4uYnV0dG9uLmNsZWFyLCAuYnV0dG9uLmNsZWFyOmhvdmVyLCAuYnV0dG9uLmNsZWFyOmZvY3VzLCAuYnV0dG9uLmNsZWFyLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLmNsZWFyLmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLmNsZWFyW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhcltkaXNhYmxlZF06aG92ZXIsIC5idXR0b24uY2xlYXJbZGlzYWJsZWRdOmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4uYnV0dG9uLmNsZWFyLCAuYnV0dG9uLmNsZWFyLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi5jbGVhcltkaXNhYmxlZF06aG92ZXIsIC5idXR0b24uY2xlYXIuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24uY2xlYXJbZGlzYWJsZWRdOmZvY3VzIHtcbiAgY29sb3I6ICMxNzc5YmE7XG59XG4uYnV0dG9uLmNsZWFyOmhvdmVyLCAuYnV0dG9uLmNsZWFyOmZvY3VzIHtcbiAgY29sb3I6ICMwYzNkNWQ7XG59XG4uYnV0dG9uLmNsZWFyLnByaW1hcnksIC5idXR0b24uY2xlYXIucHJpbWFyeS5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5wcmltYXJ5W2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5wcmltYXJ5LmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLmNsZWFyLnByaW1hcnlbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLmNsZWFyLnByaW1hcnkuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24uY2xlYXIucHJpbWFyeVtkaXNhYmxlZF06Zm9jdXMge1xuICBjb2xvcjogIzE3NzliYTtcbn1cbi5idXR0b24uY2xlYXIucHJpbWFyeTpob3ZlciwgLmJ1dHRvbi5jbGVhci5wcmltYXJ5OmZvY3VzIHtcbiAgY29sb3I6ICMwYzNkNWQ7XG59XG4uYnV0dG9uLmNsZWFyLnNlY29uZGFyeSwgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnkuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5W2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnkuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5W2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnkuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5W2Rpc2FibGVkXTpmb2N1cyB7XG4gIGNvbG9yOiAjNzY3Njc2O1xufVxuLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnk6aG92ZXIsIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5OmZvY3VzIHtcbiAgY29sb3I6ICMzYjNiM2I7XG59XG4uYnV0dG9uLmNsZWFyLnN1Y2Nlc3MsIC5idXR0b24uY2xlYXIuc3VjY2Vzcy5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5zdWNjZXNzW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5zdWNjZXNzLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3NbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3MuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24uY2xlYXIuc3VjY2Vzc1tkaXNhYmxlZF06Zm9jdXMge1xuICBjb2xvcjogIzNhZGI3Njtcbn1cbi5idXR0b24uY2xlYXIuc3VjY2Vzczpob3ZlciwgLmJ1dHRvbi5jbGVhci5zdWNjZXNzOmZvY3VzIHtcbiAgY29sb3I6ICMxNTc1Mzk7XG59XG4uYnV0dG9uLmNsZWFyLndhcm5pbmcsIC5idXR0b24uY2xlYXIud2FybmluZy5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci53YXJuaW5nW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci53YXJuaW5nLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLmNsZWFyLndhcm5pbmdbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLmNsZWFyLndhcm5pbmcuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24uY2xlYXIud2FybmluZ1tkaXNhYmxlZF06Zm9jdXMge1xuICBjb2xvcjogI2ZmYWUwMDtcbn1cbi5idXR0b24uY2xlYXIud2FybmluZzpob3ZlciwgLmJ1dHRvbi5jbGVhci53YXJuaW5nOmZvY3VzIHtcbiAgY29sb3I6ICM4MDU3MDA7XG59XG4uYnV0dG9uLmNsZWFyLmFsZXJ0LCAuYnV0dG9uLmNsZWFyLmFsZXJ0LmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLmFsZXJ0W2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5hbGVydC5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi5jbGVhci5hbGVydFtkaXNhYmxlZF06aG92ZXIsIC5idXR0b24uY2xlYXIuYWxlcnQuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24uY2xlYXIuYWxlcnRbZGlzYWJsZWRdOmZvY3VzIHtcbiAgY29sb3I6ICNjYzRiMzc7XG59XG4uYnV0dG9uLmNsZWFyLmFsZXJ0OmhvdmVyLCAuYnV0dG9uLmNsZWFyLmFsZXJ0OmZvY3VzIHtcbiAgY29sb3I6ICM2NzI1MWE7XG59XG4uYnV0dG9uLmRpc2FibGVkLCAuYnV0dG9uW2Rpc2FibGVkXSB7XG4gIG9wYWNpdHk6IDAuMjU7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG59XG4uYnV0dG9uLmRyb3Bkb3duOjphZnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItd2lkdGg6IDAuNGVtO1xuICBjb250ZW50OiBcIlwiO1xuICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICBib3JkZXItY29sb3I6ICNmZWZlZmUgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAwLjRlbTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmbG9hdDogcmlnaHQ7XG4gIG1hcmdpbi1sZWZ0OiAxZW07XG59XG4uYnV0dG9uLmRyb3Bkb3duLmhvbGxvdzo6YWZ0ZXIsIC5idXR0b24uZHJvcGRvd24uY2xlYXI6OmFmdGVyIHtcbiAgYm9yZGVyLXRvcC1jb2xvcjogIzE3NzliYTtcbn1cbi5idXR0b24uZHJvcGRvd24uaG9sbG93LnByaW1hcnk6OmFmdGVyLCAuYnV0dG9uLmRyb3Bkb3duLmNsZWFyLnByaW1hcnk6OmFmdGVyIHtcbiAgYm9yZGVyLXRvcC1jb2xvcjogIzE3NzliYTtcbn1cbi5idXR0b24uZHJvcGRvd24uaG9sbG93LnNlY29uZGFyeTo6YWZ0ZXIsIC5idXR0b24uZHJvcGRvd24uY2xlYXIuc2Vjb25kYXJ5OjphZnRlciB7XG4gIGJvcmRlci10b3AtY29sb3I6ICM3Njc2NzY7XG59XG4uYnV0dG9uLmRyb3Bkb3duLmhvbGxvdy5zdWNjZXNzOjphZnRlciwgLmJ1dHRvbi5kcm9wZG93bi5jbGVhci5zdWNjZXNzOjphZnRlciB7XG4gIGJvcmRlci10b3AtY29sb3I6ICMzYWRiNzY7XG59XG4uYnV0dG9uLmRyb3Bkb3duLmhvbGxvdy53YXJuaW5nOjphZnRlciwgLmJ1dHRvbi5kcm9wZG93bi5jbGVhci53YXJuaW5nOjphZnRlciB7XG4gIGJvcmRlci10b3AtY29sb3I6ICNmZmFlMDA7XG59XG4uYnV0dG9uLmRyb3Bkb3duLmhvbGxvdy5hbGVydDo6YWZ0ZXIsIC5idXR0b24uZHJvcGRvd24uY2xlYXIuYWxlcnQ6OmFmdGVyIHtcbiAgYm9yZGVyLXRvcC1jb2xvcjogI2NjNGIzNztcbn1cbi5idXR0b24uYXJyb3ctb25seTo6YWZ0ZXIge1xuICB0b3A6IC0wLjFlbTtcbiAgZmxvYXQ6IG5vbmU7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuXG5hLmJ1dHRvbjpob3ZlciwgYS5idXR0b246Zm9jdXMge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbmRpdixcbmRsLFxuZHQsXG5kZCxcbnVsLFxub2wsXG5saSxcbmgxLFxuaDIsXG5oMyxcbmg0LFxuaDUsXG5oNixcbnByZSxcbmZvcm0sXG5wLFxuYmxvY2txdW90ZSxcbnRoLFxudGQge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG59XG5cbnAge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBmb250LXNpemU6IGluaGVyaXQ7XG4gIGxpbmUtaGVpZ2h0OiAxLjY7XG4gIHRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7XG59XG5cbmVtLFxuaSB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG59XG5cbnN0cm9uZyxcbmIge1xuICBmb250LXdlaWdodDogNjAwO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbn1cblxuc21hbGwge1xuICBmb250LXNpemU6IDgwJTtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG59XG5cbmgxLCAuaDEsXG5oMiwgLmgyLFxuaDMsIC5oMyxcbmg0LCAuaDQsXG5oNSwgLmg1LFxuaDYsIC5oNiB7XG4gIGZvbnQtZmFtaWx5OiBcIlJhbGV3YXlcIiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBzYW5zLXNlcmlmO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGNvbG9yOiBpbmhlcml0O1xuICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5O1xufVxuaDEgc21hbGwsIC5oMSBzbWFsbCxcbmgyIHNtYWxsLCAuaDIgc21hbGwsXG5oMyBzbWFsbCwgLmgzIHNtYWxsLFxuaDQgc21hbGwsIC5oNCBzbWFsbCxcbmg1IHNtYWxsLCAuaDUgc21hbGwsXG5oNiBzbWFsbCwgLmg2IHNtYWxsIHtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIGNvbG9yOiAjY2FjYWNhO1xufVxuXG5oMSwgLmgxIHtcbiAgZm9udC1zaXplOiAxLjZyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbn1cblxuaDIsIC5oMiB7XG4gIGZvbnQtc2l6ZTogMS4zMzMzMzMzMzMzcmVtO1xuICBsaW5lLWhlaWdodDogMS40O1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG59XG5cbmgzLCAuaDMge1xuICBmb250LXNpemU6IDEuMjY2NjY2NjY2N3JlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xufVxuXG5oNCwgLmg0IHtcbiAgZm9udC1zaXplOiAxLjJyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbn1cblxuaDUsIC5oNSB7XG4gIGZvbnQtc2l6ZTogMS4xMzMzMzMzMzMzcmVtO1xuICBsaW5lLWhlaWdodDogMS40O1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG59XG5cbmg2LCAuaDYge1xuICBmb250LXNpemU6IDEuMDY2NjY2NjY2N3JlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICBoMSwgLmgxIHtcbiAgICBmb250LXNpemU6IDIuMjY2NjY2NjY2N3JlbTtcbiAgfVxuXG4gIGgyLCAuaDIge1xuICAgIGZvbnQtc2l6ZTogMS44NjY2NjY2NjY3cmVtO1xuICB9XG5cbiAgaDMsIC5oMyB7XG4gICAgZm9udC1zaXplOiAxLjJyZW07XG4gIH1cblxuICBoNCwgLmg0IHtcbiAgICBmb250LXNpemU6IDEuMDY2NjY2NjY2N3JlbTtcbiAgfVxuXG4gIGg1LCAuaDUge1xuICAgIGZvbnQtc2l6ZTogMC45MzMzMzMzMzMzcmVtO1xuICB9XG5cbiAgaDYsIC5oNiB7XG4gICAgZm9udC1zaXplOiAwLjhyZW07XG4gIH1cbn1cbmEge1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgY29sb3I6ICM1RTIyNDY7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuYTpob3ZlciwgYTpmb2N1cyB7XG4gIGNvbG9yOiAjNTExZDNjO1xufVxuYSBpbWcge1xuICBib3JkZXI6IDA7XG59XG5cbmhyIHtcbiAgY2xlYXI6IGJvdGg7XG4gIG1heC13aWR0aDogMTMwMHB4O1xuICBoZWlnaHQ6IDA7XG4gIG1hcmdpbjogMS4yNXJlbSBhdXRvO1xuICBib3JkZXItdG9wOiAwO1xuICBib3JkZXItcmlnaHQ6IDA7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjY2FjYWNhO1xuICBib3JkZXItbGVmdDogMDtcbn1cblxudWwsXG5vbCxcbmRsIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgbGlzdC1zdHlsZS1wb3NpdGlvbjogb3V0c2lkZTtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbn1cblxubGkge1xuICBmb250LXNpemU6IGluaGVyaXQ7XG59XG5cbnVsIHtcbiAgbWFyZ2luLWxlZnQ6IDEuMjVyZW07XG4gIGxpc3Qtc3R5bGUtdHlwZTogZGlzYztcbn1cblxub2wge1xuICBtYXJnaW4tbGVmdDogMS4yNXJlbTtcbn1cblxudWwgdWwsIHVsIG9sLCBvbCB1bCwgb2wgb2wge1xuICBtYXJnaW4tbGVmdDogMS4yNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuZGwge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuZGwgZHQge1xuICBtYXJnaW4tYm90dG9tOiAwLjNyZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG5ibG9ja3F1b3RlIHtcbiAgbWFyZ2luOiAwIDAgMXJlbTtcbiAgcGFkZGluZzogMC42cmVtIDEuMzMzMzMzMzMzM3JlbSAwIDMuMzMzMzMzMzMzM3JlbTtcbiAgYm9yZGVyLWxlZnQ6IG5vbmU7XG59XG5ibG9ja3F1b3RlLCBibG9ja3F1b3RlIHAge1xuICBsaW5lLWhlaWdodDogMS42O1xuICBjb2xvcjogIzVFMjI0Njtcbn1cblxuYWJiciwgYWJiclt0aXRsZV0ge1xuICBib3JkZXItYm90dG9tOiAxcHggZG90dGVkICMwYTBhMGE7XG4gIGN1cnNvcjogaGVscDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG5maWd1cmUge1xuICBtYXJnaW46IDA7XG59XG5cbmtiZCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMC4xMjVyZW0gMC4yNXJlbSAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTZlNmU2O1xuICBmb250LWZhbWlseTogQ29uc29sYXMsIFwiTGliZXJhdGlvbiBNb25vXCIsIENvdXJpZXIsIG1vbm9zcGFjZTtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG5cbi5zdWJoZWFkZXIge1xuICBtYXJnaW4tdG9wOiAwLjJyZW07XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgY29sb3I6ICM4YThhOGE7XG59XG5cbi5sZWFkIHtcbiAgZm9udC1zaXplOiAxMjUlO1xuICBsaW5lLWhlaWdodDogMS42O1xufVxuXG4uc3RhdCB7XG4gIGZvbnQtc2l6ZTogMi41cmVtO1xuICBsaW5lLWhlaWdodDogMTtcbn1cbnAgKyAuc3RhdCB7XG4gIG1hcmdpbi10b3A6IC0xcmVtO1xufVxuXG51bC5uby1idWxsZXQsIG9sLm5vLWJ1bGxldCB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4uY2l0ZS1ibG9jaywgY2l0ZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjb2xvcjogIzhhOGE4YTtcbiAgZm9udC1zaXplOiAwLjgxMjVyZW07XG59XG4uY2l0ZS1ibG9jazpiZWZvcmUsIGNpdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLigJQgXCI7XG59XG5cbi5jb2RlLWlubGluZSwgY29kZSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjYWNhY2E7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlNmU2ZTY7XG4gIGZvbnQtZmFtaWx5OiBDb25zb2xhcywgXCJMaWJlcmF0aW9uIE1vbm9cIiwgQ291cmllciwgbW9ub3NwYWNlO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBjb2xvcjogIzBhMGEwYTtcbiAgZGlzcGxheTogaW5saW5lO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgcGFkZGluZzogMC4xMjVyZW0gMC4zMTI1cmVtIDAuMDYyNXJlbTtcbn1cblxuLmNvZGUtYmxvY2sge1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2FjYWNhO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTZlNmU2O1xuICBmb250LWZhbWlseTogQ29uc29sYXMsIFwiTGliZXJhdGlvbiBNb25vXCIsIENvdXJpZXIsIG1vbm9zcGFjZTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBvdmVyZmxvdzogYXV0bztcbiAgd2hpdGUtc3BhY2U6IHByZTtcbiAgcGFkZGluZzogMXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xufVxuXG4udGV4dC1sZWZ0IHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuLnRleHQtcmlnaHQge1xuICB0ZXh0LWFsaWduOiByaWdodDtcbn1cblxuLnRleHQtY2VudGVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4udGV4dC1qdXN0aWZ5IHtcbiAgdGV4dC1hbGlnbjoganVzdGlmeTtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm1lZGl1bS10ZXh0LWxlZnQge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gIH1cblxuICAubWVkaXVtLXRleHQtcmlnaHQge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICB9XG5cbiAgLm1lZGl1bS10ZXh0LWNlbnRlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG5cbiAgLm1lZGl1bS10ZXh0LWp1c3RpZnkge1xuICAgIHRleHQtYWxpZ246IGp1c3RpZnk7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sYXJnZS10ZXh0LWxlZnQge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gIH1cblxuICAubGFyZ2UtdGV4dC1yaWdodCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIH1cblxuICAubGFyZ2UtdGV4dC1jZW50ZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuXG4gIC5sYXJnZS10ZXh0LWp1c3RpZnkge1xuICAgIHRleHQtYWxpZ246IGp1c3RpZnk7XG4gIH1cbn1cbi5zaG93LWZvci1wcmludCB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuQG1lZGlhIHByaW50IHtcbiAgKiB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICBjb2xvcjogYmxhY2sgIWltcG9ydGFudDtcbiAgICBjb2xvci1hZGp1c3Q6IGVjb25vbXk7XG4gICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgIHRleHQtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuc2hvdy1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuaGlkZS1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuXG4gIHRhYmxlLnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgdGhlYWQuc2hvdy1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cCAhaW1wb3J0YW50O1xuICB9XG5cbiAgdGJvZHkuc2hvdy1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IHRhYmxlLXJvdy1ncm91cCAhaW1wb3J0YW50O1xuICB9XG5cbiAgdHIuc2hvdy1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50O1xuICB9XG5cbiAgdGQuc2hvdy1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDtcbiAgfVxuXG4gIHRoLnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7XG4gIH1cblxuICBhLFxuYTp2aXNpdGVkIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgfVxuXG4gIGFbaHJlZl06YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiIChcIiBhdHRyKGhyZWYpIFwiKVwiO1xuICB9XG5cbiAgLmlyIGE6YWZ0ZXIsXG5hW2hyZWZePVwiamF2YXNjcmlwdDpcIl06YWZ0ZXIsXG5hW2hyZWZePVwiI1wiXTphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgfVxuXG4gIGFiYnJbdGl0bGVdOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiAoXCIgYXR0cih0aXRsZSkgXCIpXCI7XG4gIH1cblxuICBwcmUsXG5ibG9ja3F1b3RlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjOGE4YThhO1xuICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgfVxuXG4gIHRoZWFkIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXA7XG4gIH1cblxuICB0cixcbmltZyB7XG4gICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xuICB9XG5cbiAgaW1nIHtcbiAgICBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgfVxuXG4gIEBwYWdlIHtcbiAgICBtYXJnaW46IDAuNWNtO1xuICB9XG4gIHAsXG5oMixcbmgzIHtcbiAgICBvcnBoYW5zOiAzO1xuICAgIHdpZG93czogMztcbiAgfVxuXG4gIGgyLFxuaDMge1xuICAgIHBhZ2UtYnJlYWstYWZ0ZXI6IGF2b2lkO1xuICB9XG5cbiAgLnByaW50LWJyZWFrLWluc2lkZSB7XG4gICAgcGFnZS1icmVhay1pbnNpZGU6IGF1dG87XG4gIH1cbn1cbi5idXR0b24tZ3JvdXAge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICBmbGV4LWdyb3c6IDE7XG59XG4uYnV0dG9uLWdyb3VwOjpiZWZvcmUsIC5idXR0b24tZ3JvdXA6OmFmdGVyIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNvbnRlbnQ6IFwiIFwiO1xuICBmbGV4LWJhc2lzOiAwO1xuICBvcmRlcjogMTtcbn1cbi5idXR0b24tZ3JvdXA6OmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7XG59XG4uYnV0dG9uLWdyb3VwOjpiZWZvcmUsIC5idXR0b24tZ3JvdXA6OmFmdGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5idXR0b24tZ3JvdXAgLmJ1dHRvbiB7XG4gIG1hcmdpbjogMDtcbiAgbWFyZ2luLXJpZ2h0OiAxcHg7XG4gIG1hcmdpbi1ib3R0b206IDFweDtcbiAgZm9udC1zaXplOiAwLjlyZW07XG4gIGZsZXg6IDAgMCBhdXRvO1xufVxuLmJ1dHRvbi1ncm91cCAuYnV0dG9uOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG59XG4uYnV0dG9uLWdyb3VwLnRpbnkgLmJ1dHRvbiB7XG4gIGZvbnQtc2l6ZTogMC42cmVtO1xufVxuLmJ1dHRvbi1ncm91cC5zbWFsbCAuYnV0dG9uIHtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xufVxuLmJ1dHRvbi1ncm91cC5sYXJnZSAuYnV0dG9uIHtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xufVxuLmJ1dHRvbi1ncm91cC5leHBhbmRlZCAuYnV0dG9uIHtcbiAgZmxleDogMSAxIDBweDtcbn1cbi5idXR0b24tZ3JvdXAucHJpbWFyeSAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLnByaW1hcnkgLmJ1dHRvbi5kaXNhYmxlZCwgLmJ1dHRvbi1ncm91cC5wcmltYXJ5IC5idXR0b25bZGlzYWJsZWRdLCAuYnV0dG9uLWdyb3VwLnByaW1hcnkgLmJ1dHRvbi5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi1ncm91cC5wcmltYXJ5IC5idXR0b25bZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLWdyb3VwLnByaW1hcnkgLmJ1dHRvbi5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi1ncm91cC5wcmltYXJ5IC5idXR0b25bZGlzYWJsZWRdOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzE3NzliYTtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG4uYnV0dG9uLWdyb3VwLnByaW1hcnkgLmJ1dHRvbjpob3ZlciwgLmJ1dHRvbi1ncm91cC5wcmltYXJ5IC5idXR0b246Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTI2MTk1O1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cbi5idXR0b24tZ3JvdXAuc2Vjb25kYXJ5IC5idXR0b24sIC5idXR0b24tZ3JvdXAuc2Vjb25kYXJ5IC5idXR0b24uZGlzYWJsZWQsIC5idXR0b24tZ3JvdXAuc2Vjb25kYXJ5IC5idXR0b25bZGlzYWJsZWRdLCAuYnV0dG9uLWdyb3VwLnNlY29uZGFyeSAuYnV0dG9uLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLWdyb3VwLnNlY29uZGFyeSAuYnV0dG9uW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi1ncm91cC5zZWNvbmRhcnkgLmJ1dHRvbi5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi1ncm91cC5zZWNvbmRhcnkgLmJ1dHRvbltkaXNhYmxlZF06Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzY3Njc2O1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cbi5idXR0b24tZ3JvdXAuc2Vjb25kYXJ5IC5idXR0b246aG92ZXIsIC5idXR0b24tZ3JvdXAuc2Vjb25kYXJ5IC5idXR0b246Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWU1ZTVlO1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cbi5idXR0b24tZ3JvdXAuc3VjY2VzcyAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLnN1Y2Nlc3MgLmJ1dHRvbi5kaXNhYmxlZCwgLmJ1dHRvbi1ncm91cC5zdWNjZXNzIC5idXR0b25bZGlzYWJsZWRdLCAuYnV0dG9uLWdyb3VwLnN1Y2Nlc3MgLmJ1dHRvbi5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi1ncm91cC5zdWNjZXNzIC5idXR0b25bZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLWdyb3VwLnN1Y2Nlc3MgLmJ1dHRvbi5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi1ncm91cC5zdWNjZXNzIC5idXR0b25bZGlzYWJsZWRdOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzNhZGI3NjtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG4uYnV0dG9uLWdyb3VwLnN1Y2Nlc3MgLmJ1dHRvbjpob3ZlciwgLmJ1dHRvbi1ncm91cC5zdWNjZXNzIC5idXR0b246Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjJiYjViO1xuICBjb2xvcjogIzBhMGEwYTtcbn1cbi5idXR0b24tZ3JvdXAud2FybmluZyAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLndhcm5pbmcgLmJ1dHRvbi5kaXNhYmxlZCwgLmJ1dHRvbi1ncm91cC53YXJuaW5nIC5idXR0b25bZGlzYWJsZWRdLCAuYnV0dG9uLWdyb3VwLndhcm5pbmcgLmJ1dHRvbi5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi1ncm91cC53YXJuaW5nIC5idXR0b25bZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLWdyb3VwLndhcm5pbmcgLmJ1dHRvbi5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi1ncm91cC53YXJuaW5nIC5idXR0b25bZGlzYWJsZWRdOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmYWUwMDtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG4uYnV0dG9uLWdyb3VwLndhcm5pbmcgLmJ1dHRvbjpob3ZlciwgLmJ1dHRvbi1ncm91cC53YXJuaW5nIC5idXR0b246Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2M4YjAwO1xuICBjb2xvcjogIzBhMGEwYTtcbn1cbi5idXR0b24tZ3JvdXAuYWxlcnQgLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5hbGVydCAuYnV0dG9uLmRpc2FibGVkLCAuYnV0dG9uLWdyb3VwLmFsZXJ0IC5idXR0b25bZGlzYWJsZWRdLCAuYnV0dG9uLWdyb3VwLmFsZXJ0IC5idXR0b24uZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24tZ3JvdXAuYWxlcnQgLmJ1dHRvbltkaXNhYmxlZF06aG92ZXIsIC5idXR0b24tZ3JvdXAuYWxlcnQgLmJ1dHRvbi5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi1ncm91cC5hbGVydCAuYnV0dG9uW2Rpc2FibGVkXTpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjYzRiMzc7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuLmJ1dHRvbi1ncm91cC5hbGVydCAuYnV0dG9uOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmFsZXJ0IC5idXR0b246Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYTUzYjJhO1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cbi5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24sIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b246aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b246Zm9jdXMsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24uZGlzYWJsZWQsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24uZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24uZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b25bZGlzYWJsZWRdLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbltkaXNhYmxlZF06Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24sIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24uZGlzYWJsZWQsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b25bZGlzYWJsZWRdLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbltkaXNhYmxlZF06Zm9jdXMge1xuICBib3JkZXI6IDFweCBzb2xpZCAjMTc3OWJhO1xuICBjb2xvcjogIzE3NzliYTtcbn1cbi5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b246aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b246Zm9jdXMge1xuICBib3JkZXItY29sb3I6ICMwYzNkNWQ7XG4gIGNvbG9yOiAjMGMzZDVkO1xufVxuLmJ1dHRvbi1ncm91cC5ob2xsb3cucHJpbWFyeSAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLmhvbGxvdy5wcmltYXJ5IC5idXR0b24uZGlzYWJsZWQsIC5idXR0b24tZ3JvdXAuaG9sbG93LnByaW1hcnkgLmJ1dHRvbltkaXNhYmxlZF0sIC5idXR0b24tZ3JvdXAuaG9sbG93LnByaW1hcnkgLmJ1dHRvbi5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi1ncm91cC5ob2xsb3cucHJpbWFyeSAuYnV0dG9uW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi1ncm91cC5ob2xsb3cucHJpbWFyeSAuYnV0dG9uLmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmhvbGxvdy5wcmltYXJ5IC5idXR0b25bZGlzYWJsZWRdOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLnByaW1hcnksIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24ucHJpbWFyeS5kaXNhYmxlZCwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi5wcmltYXJ5W2Rpc2FibGVkXSwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi5wcmltYXJ5LmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLnByaW1hcnlbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLnByaW1hcnkuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24ucHJpbWFyeVtkaXNhYmxlZF06Zm9jdXMge1xuICBib3JkZXI6IDFweCBzb2xpZCAjMTc3OWJhO1xuICBjb2xvcjogIzE3NzliYTtcbn1cbi5idXR0b24tZ3JvdXAuaG9sbG93LnByaW1hcnkgLmJ1dHRvbjpob3ZlciwgLmJ1dHRvbi1ncm91cC5ob2xsb3cucHJpbWFyeSAuYnV0dG9uOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLnByaW1hcnk6aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24ucHJpbWFyeTpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogIzBjM2Q1ZDtcbiAgY29sb3I6ICMwYzNkNWQ7XG59XG4uYnV0dG9uLWdyb3VwLmhvbGxvdy5zZWNvbmRhcnkgLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5ob2xsb3cuc2Vjb25kYXJ5IC5idXR0b24uZGlzYWJsZWQsIC5idXR0b24tZ3JvdXAuaG9sbG93LnNlY29uZGFyeSAuYnV0dG9uW2Rpc2FibGVkXSwgLmJ1dHRvbi1ncm91cC5ob2xsb3cuc2Vjb25kYXJ5IC5idXR0b24uZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93LnNlY29uZGFyeSAuYnV0dG9uW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi1ncm91cC5ob2xsb3cuc2Vjb25kYXJ5IC5idXR0b24uZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24tZ3JvdXAuaG9sbG93LnNlY29uZGFyeSAuYnV0dG9uW2Rpc2FibGVkXTpmb2N1cywgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi5zZWNvbmRhcnksIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24uc2Vjb25kYXJ5LmRpc2FibGVkLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLnNlY29uZGFyeVtkaXNhYmxlZF0sIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24uc2Vjb25kYXJ5LmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLnNlY29uZGFyeVtkaXNhYmxlZF06aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24uc2Vjb25kYXJ5LmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLnNlY29uZGFyeVtkaXNhYmxlZF06Zm9jdXMge1xuICBib3JkZXI6IDFweCBzb2xpZCAjNzY3Njc2O1xuICBjb2xvcjogIzc2NzY3Njtcbn1cbi5idXR0b24tZ3JvdXAuaG9sbG93LnNlY29uZGFyeSAuYnV0dG9uOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmhvbGxvdy5zZWNvbmRhcnkgLmJ1dHRvbjpmb2N1cywgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi5zZWNvbmRhcnk6aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24uc2Vjb25kYXJ5OmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiAjM2IzYjNiO1xuICBjb2xvcjogIzNiM2IzYjtcbn1cbi5idXR0b24tZ3JvdXAuaG9sbG93LnN1Y2Nlc3MgLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5ob2xsb3cuc3VjY2VzcyAuYnV0dG9uLmRpc2FibGVkLCAuYnV0dG9uLWdyb3VwLmhvbGxvdy5zdWNjZXNzIC5idXR0b25bZGlzYWJsZWRdLCAuYnV0dG9uLWdyb3VwLmhvbGxvdy5zdWNjZXNzIC5idXR0b24uZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93LnN1Y2Nlc3MgLmJ1dHRvbltkaXNhYmxlZF06aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93LnN1Y2Nlc3MgLmJ1dHRvbi5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi1ncm91cC5ob2xsb3cuc3VjY2VzcyAuYnV0dG9uW2Rpc2FibGVkXTpmb2N1cywgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi5zdWNjZXNzLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLnN1Y2Nlc3MuZGlzYWJsZWQsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24uc3VjY2Vzc1tkaXNhYmxlZF0sIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24uc3VjY2Vzcy5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi5zdWNjZXNzW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi5zdWNjZXNzLmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLnN1Y2Nlc3NbZGlzYWJsZWRdOmZvY3VzIHtcbiAgYm9yZGVyOiAxcHggc29saWQgIzNhZGI3NjtcbiAgY29sb3I6ICMzYWRiNzY7XG59XG4uYnV0dG9uLWdyb3VwLmhvbGxvdy5zdWNjZXNzIC5idXR0b246aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93LnN1Y2Nlc3MgLmJ1dHRvbjpmb2N1cywgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi5zdWNjZXNzOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLnN1Y2Nlc3M6Zm9jdXMge1xuICBib3JkZXItY29sb3I6ICMxNTc1Mzk7XG4gIGNvbG9yOiAjMTU3NTM5O1xufVxuLmJ1dHRvbi1ncm91cC5ob2xsb3cud2FybmluZyAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLmhvbGxvdy53YXJuaW5nIC5idXR0b24uZGlzYWJsZWQsIC5idXR0b24tZ3JvdXAuaG9sbG93Lndhcm5pbmcgLmJ1dHRvbltkaXNhYmxlZF0sIC5idXR0b24tZ3JvdXAuaG9sbG93Lndhcm5pbmcgLmJ1dHRvbi5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi1ncm91cC5ob2xsb3cud2FybmluZyAuYnV0dG9uW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi1ncm91cC5ob2xsb3cud2FybmluZyAuYnV0dG9uLmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmhvbGxvdy53YXJuaW5nIC5idXR0b25bZGlzYWJsZWRdOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLndhcm5pbmcsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24ud2FybmluZy5kaXNhYmxlZCwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi53YXJuaW5nW2Rpc2FibGVkXSwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi53YXJuaW5nLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLndhcm5pbmdbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLndhcm5pbmcuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24ud2FybmluZ1tkaXNhYmxlZF06Zm9jdXMge1xuICBib3JkZXI6IDFweCBzb2xpZCAjZmZhZTAwO1xuICBjb2xvcjogI2ZmYWUwMDtcbn1cbi5idXR0b24tZ3JvdXAuaG9sbG93Lndhcm5pbmcgLmJ1dHRvbjpob3ZlciwgLmJ1dHRvbi1ncm91cC5ob2xsb3cud2FybmluZyAuYnV0dG9uOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLndhcm5pbmc6aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24ud2FybmluZzpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogIzgwNTcwMDtcbiAgY29sb3I6ICM4MDU3MDA7XG59XG4uYnV0dG9uLWdyb3VwLmhvbGxvdy5hbGVydCAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLmhvbGxvdy5hbGVydCAuYnV0dG9uLmRpc2FibGVkLCAuYnV0dG9uLWdyb3VwLmhvbGxvdy5hbGVydCAuYnV0dG9uW2Rpc2FibGVkXSwgLmJ1dHRvbi1ncm91cC5ob2xsb3cuYWxlcnQgLmJ1dHRvbi5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi1ncm91cC5ob2xsb3cuYWxlcnQgLmJ1dHRvbltkaXNhYmxlZF06aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93LmFsZXJ0IC5idXR0b24uZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24tZ3JvdXAuaG9sbG93LmFsZXJ0IC5idXR0b25bZGlzYWJsZWRdOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLmFsZXJ0LCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLmFsZXJ0LmRpc2FibGVkLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLmFsZXJ0W2Rpc2FibGVkXSwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi5hbGVydC5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi5hbGVydFtkaXNhYmxlZF06aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24uYWxlcnQuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24uYWxlcnRbZGlzYWJsZWRdOmZvY3VzIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NjNGIzNztcbiAgY29sb3I6ICNjYzRiMzc7XG59XG4uYnV0dG9uLWdyb3VwLmhvbGxvdy5hbGVydCAuYnV0dG9uOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmhvbGxvdy5hbGVydCAuYnV0dG9uOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLmFsZXJ0OmhvdmVyLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLmFsZXJ0OmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiAjNjcyNTFhO1xuICBjb2xvcjogIzY3MjUxYTtcbn1cbi5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b246Zm9jdXMsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5kaXNhYmxlZCwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24uZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbltkaXNhYmxlZF0sIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbltkaXNhYmxlZF06aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbltkaXNhYmxlZF06Zm9jdXMge1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLmRpc2FibGVkLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b25bZGlzYWJsZWRdLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24uZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbltkaXNhYmxlZF06aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uW2Rpc2FibGVkXTpmb2N1cyB7XG4gIGNvbG9yOiAjMTc3OWJhO1xufVxuLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b246Zm9jdXMge1xuICBjb2xvcjogIzBjM2Q1ZDtcbn1cbi5idXR0b24tZ3JvdXAuY2xlYXIucHJpbWFyeSAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLmNsZWFyLnByaW1hcnkgLmJ1dHRvbi5kaXNhYmxlZCwgLmJ1dHRvbi1ncm91cC5jbGVhci5wcmltYXJ5IC5idXR0b25bZGlzYWJsZWRdLCAuYnV0dG9uLWdyb3VwLmNsZWFyLnByaW1hcnkgLmJ1dHRvbi5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhci5wcmltYXJ5IC5idXR0b25bZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmNsZWFyLnByaW1hcnkgLmJ1dHRvbi5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi1ncm91cC5jbGVhci5wcmltYXJ5IC5idXR0b25bZGlzYWJsZWRdOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24ucHJpbWFyeSwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLnByaW1hcnkuZGlzYWJsZWQsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5wcmltYXJ5W2Rpc2FibGVkXSwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLnByaW1hcnkuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5wcmltYXJ5W2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLnByaW1hcnkuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5wcmltYXJ5W2Rpc2FibGVkXTpmb2N1cyB7XG4gIGNvbG9yOiAjMTc3OWJhO1xufVxuLmJ1dHRvbi1ncm91cC5jbGVhci5wcmltYXJ5IC5idXR0b246aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIucHJpbWFyeSAuYnV0dG9uOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24ucHJpbWFyeTpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLnByaW1hcnk6Zm9jdXMge1xuICBjb2xvcjogIzBjM2Q1ZDtcbn1cbi5idXR0b24tZ3JvdXAuY2xlYXIuc2Vjb25kYXJ5IC5idXR0b24sIC5idXR0b24tZ3JvdXAuY2xlYXIuc2Vjb25kYXJ5IC5idXR0b24uZGlzYWJsZWQsIC5idXR0b24tZ3JvdXAuY2xlYXIuc2Vjb25kYXJ5IC5idXR0b25bZGlzYWJsZWRdLCAuYnV0dG9uLWdyb3VwLmNsZWFyLnNlY29uZGFyeSAuYnV0dG9uLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmNsZWFyLnNlY29uZGFyeSAuYnV0dG9uW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhci5zZWNvbmRhcnkgLmJ1dHRvbi5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi1ncm91cC5jbGVhci5zZWNvbmRhcnkgLmJ1dHRvbltkaXNhYmxlZF06Zm9jdXMsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5zZWNvbmRhcnksIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5zZWNvbmRhcnkuZGlzYWJsZWQsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5zZWNvbmRhcnlbZGlzYWJsZWRdLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24uc2Vjb25kYXJ5LmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24uc2Vjb25kYXJ5W2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLnNlY29uZGFyeS5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLnNlY29uZGFyeVtkaXNhYmxlZF06Zm9jdXMge1xuICBjb2xvcjogIzc2NzY3Njtcbn1cbi5idXR0b24tZ3JvdXAuY2xlYXIuc2Vjb25kYXJ5IC5idXR0b246aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIuc2Vjb25kYXJ5IC5idXR0b246Zm9jdXMsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5zZWNvbmRhcnk6aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5zZWNvbmRhcnk6Zm9jdXMge1xuICBjb2xvcjogIzNiM2IzYjtcbn1cbi5idXR0b24tZ3JvdXAuY2xlYXIuc3VjY2VzcyAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLmNsZWFyLnN1Y2Nlc3MgLmJ1dHRvbi5kaXNhYmxlZCwgLmJ1dHRvbi1ncm91cC5jbGVhci5zdWNjZXNzIC5idXR0b25bZGlzYWJsZWRdLCAuYnV0dG9uLWdyb3VwLmNsZWFyLnN1Y2Nlc3MgLmJ1dHRvbi5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhci5zdWNjZXNzIC5idXR0b25bZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmNsZWFyLnN1Y2Nlc3MgLmJ1dHRvbi5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi1ncm91cC5jbGVhci5zdWNjZXNzIC5idXR0b25bZGlzYWJsZWRdOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24uc3VjY2VzcywgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLnN1Y2Nlc3MuZGlzYWJsZWQsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5zdWNjZXNzW2Rpc2FibGVkXSwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLnN1Y2Nlc3MuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5zdWNjZXNzW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLnN1Y2Nlc3MuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5zdWNjZXNzW2Rpc2FibGVkXTpmb2N1cyB7XG4gIGNvbG9yOiAjM2FkYjc2O1xufVxuLmJ1dHRvbi1ncm91cC5jbGVhci5zdWNjZXNzIC5idXR0b246aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIuc3VjY2VzcyAuYnV0dG9uOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24uc3VjY2Vzczpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLnN1Y2Nlc3M6Zm9jdXMge1xuICBjb2xvcjogIzE1NzUzOTtcbn1cbi5idXR0b24tZ3JvdXAuY2xlYXIud2FybmluZyAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLmNsZWFyLndhcm5pbmcgLmJ1dHRvbi5kaXNhYmxlZCwgLmJ1dHRvbi1ncm91cC5jbGVhci53YXJuaW5nIC5idXR0b25bZGlzYWJsZWRdLCAuYnV0dG9uLWdyb3VwLmNsZWFyLndhcm5pbmcgLmJ1dHRvbi5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhci53YXJuaW5nIC5idXR0b25bZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmNsZWFyLndhcm5pbmcgLmJ1dHRvbi5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi1ncm91cC5jbGVhci53YXJuaW5nIC5idXR0b25bZGlzYWJsZWRdOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24ud2FybmluZywgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLndhcm5pbmcuZGlzYWJsZWQsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi53YXJuaW5nW2Rpc2FibGVkXSwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLndhcm5pbmcuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi53YXJuaW5nW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLndhcm5pbmcuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi53YXJuaW5nW2Rpc2FibGVkXTpmb2N1cyB7XG4gIGNvbG9yOiAjZmZhZTAwO1xufVxuLmJ1dHRvbi1ncm91cC5jbGVhci53YXJuaW5nIC5idXR0b246aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIud2FybmluZyAuYnV0dG9uOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24ud2FybmluZzpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLndhcm5pbmc6Zm9jdXMge1xuICBjb2xvcjogIzgwNTcwMDtcbn1cbi5idXR0b24tZ3JvdXAuY2xlYXIuYWxlcnQgLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5jbGVhci5hbGVydCAuYnV0dG9uLmRpc2FibGVkLCAuYnV0dG9uLWdyb3VwLmNsZWFyLmFsZXJ0IC5idXR0b25bZGlzYWJsZWRdLCAuYnV0dG9uLWdyb3VwLmNsZWFyLmFsZXJ0IC5idXR0b24uZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIuYWxlcnQgLmJ1dHRvbltkaXNhYmxlZF06aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIuYWxlcnQgLmJ1dHRvbi5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi1ncm91cC5jbGVhci5hbGVydCAuYnV0dG9uW2Rpc2FibGVkXTpmb2N1cywgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLmFsZXJ0LCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24uYWxlcnQuZGlzYWJsZWQsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5hbGVydFtkaXNhYmxlZF0sIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5hbGVydC5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLmFsZXJ0W2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLmFsZXJ0LmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24uYWxlcnRbZGlzYWJsZWRdOmZvY3VzIHtcbiAgY29sb3I6ICNjYzRiMzc7XG59XG4uYnV0dG9uLWdyb3VwLmNsZWFyLmFsZXJ0IC5idXR0b246aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIuYWxlcnQgLmJ1dHRvbjpmb2N1cywgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLmFsZXJ0OmhvdmVyLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24uYWxlcnQ6Zm9jdXMge1xuICBjb2xvcjogIzY3MjUxYTtcbn1cbi5idXR0b24tZ3JvdXAubm8tZ2FwcyAuYnV0dG9uIHtcbiAgbWFyZ2luLXJpZ2h0OiAtMC4wNjY2NjY2NjY3cmVtO1xufVxuLmJ1dHRvbi1ncm91cC5uby1nYXBzIC5idXR0b24gKyAuYnV0dG9uIHtcbiAgYm9yZGVyLWxlZnQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLmJ1dHRvbi1ncm91cC5zdGFja2VkLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLXNtYWxsLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLW1lZGl1bSB7XG4gIGZsZXgtd3JhcDogd3JhcDtcbn1cbi5idXR0b24tZ3JvdXAuc3RhY2tlZCAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLXNtYWxsIC5idXR0b24sIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3ItbWVkaXVtIC5idXR0b24ge1xuICBmbGV4OiAwIDAgMTAwJTtcbn1cbi5idXR0b24tZ3JvdXAuc3RhY2tlZCAuYnV0dG9uOmxhc3QtY2hpbGQsIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3Itc21hbGwgLmJ1dHRvbjpsYXN0LWNoaWxkLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLW1lZGl1bSAuYnV0dG9uOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLmJ1dHRvbi1ncm91cC5zdGFja2VkLmV4cGFuZGVkIC5idXR0b24sIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3Itc21hbGwuZXhwYW5kZWQgLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1tZWRpdW0uZXhwYW5kZWQgLmJ1dHRvbiB7XG4gIGZsZXg6IDEgMSAwcHg7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLXNtYWxsIC5idXR0b24ge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3ItbWVkaXVtIC5idXR0b24ge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3Itc21hbGwuZXhwYW5kZWQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG4gIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3Itc21hbGwuZXhwYW5kZWQgLmJ1dHRvbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLW1lZGl1bS5leHBhbmRlZCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbiAgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1tZWRpdW0uZXhwYW5kZWQgLmJ1dHRvbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICB9XG59XG5cbi5jbG9zZS1idXR0b24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDEwO1xuICBjb2xvcjogI2ZlZmVmZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuW2RhdGEtd2hhdGlucHV0PW1vdXNlXSAuY2xvc2UtYnV0dG9uIHtcbiAgb3V0bGluZTogMDtcbn1cbi5jbG9zZS1idXR0b246aG92ZXIsIC5jbG9zZS1idXR0b246Zm9jdXMge1xuICBjb2xvcjogIzBhMGEwYTtcbn1cbi5jbG9zZS1idXR0b24uc21hbGwge1xuICByaWdodDogMC42NnJlbTtcbiAgdG9wOiAwLjMzZW07XG4gIGZvbnQtc2l6ZTogMmVtO1xuICBsaW5lLWhlaWdodDogMC41O1xufVxuXG4uY2xvc2UtYnV0dG9uLm1lZGl1bSwgLmNsb3NlLWJ1dHRvbiB7XG4gIHJpZ2h0OiAwO1xuICB0b3A6IDA7XG4gIGZvbnQtc2l6ZTogNGVtO1xuICBsaW5lLWhlaWdodDogMC41O1xufVxuXG5odG1sLmlzLXJldmVhbC1vcGVuIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB3aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3cteTogaGlkZGVuO1xufVxuaHRtbC5pcy1yZXZlYWwtb3Blbi56Zi1oYXMtc2Nyb2xsIHtcbiAgb3ZlcmZsb3cteTogc2Nyb2xsO1xuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG59XG5odG1sLmlzLXJldmVhbC1vcGVuIGJvZHkge1xuICBvdmVyZmxvdy15OiBoaWRkZW47XG59XG5cbi5yZXZlYWwtb3ZlcmxheSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiA5OTk5OTk5O1xuICBkaXNwbGF5OiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDEwOSwgMTE3LCAxMzIsIDAuOTUpO1xuICBvdmVyZmxvdy15OiBhdXRvO1xuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG59XG5cbi5yZXZlYWwge1xuICB6LWluZGV4OiAxMDAwMDAwMDtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBkaXNwbGF5OiBub25lO1xuICBwYWRkaW5nOiAxcmVtO1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1RTIyNDY7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAxMDBweDtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xufVxuW2RhdGEtd2hhdGlucHV0PW1vdXNlXSAucmV2ZWFsIHtcbiAgb3V0bGluZTogMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5yZXZlYWwge1xuICAgIG1pbi1oZWlnaHQ6IDA7XG4gIH1cbn1cbi5yZXZlYWwgLmNvbHVtbiB7XG4gIG1pbi13aWR0aDogMDtcbn1cbi5yZXZlYWwgPiA6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAucmV2ZWFsIHtcbiAgICB3aWR0aDogOTAwcHg7XG4gICAgbWF4LXdpZHRoOiAxMzAwcHg7XG4gIH1cbn1cbi5yZXZlYWwuY29sbGFwc2Uge1xuICBwYWRkaW5nOiAwO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLnJldmVhbC50aW55IHtcbiAgICB3aWR0aDogMzAlO1xuICAgIG1heC13aWR0aDogMTMwMHB4O1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAucmV2ZWFsLnNtYWxsIHtcbiAgICB3aWR0aDogNTAlO1xuICAgIG1heC13aWR0aDogMTMwMHB4O1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAucmV2ZWFsLmxhcmdlIHtcbiAgICB3aWR0aDogOTAlO1xuICAgIG1heC13aWR0aDogMTMwMHB4O1xuICB9XG59XG4ucmV2ZWFsLmZ1bGwge1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IG5vbmU7XG4gIGhlaWdodDogMTAwJTtcbiAgbWluLWhlaWdodDogMTAwJTtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5yZXZlYWwge1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG1pbi1oZWlnaHQ6IDEwMCU7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gIH1cbn1cbi5yZXZlYWwud2l0aG91dC1vdmVybGF5IHtcbiAgcG9zaXRpb246IGZpeGVkO1xufVxuXG4udG9wLWJhciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogbm93cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDA7XG4gIGZsZXgtd3JhcDogd3JhcDtcbn1cbi50b3AtYmFyLFxuLnRvcC1iYXIgdWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi50b3AtYmFyIHVsIHVsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTtcbn1cbi50b3AtYmFyIGlucHV0IHtcbiAgbWF4LXdpZHRoOiAyMDBweDtcbiAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xufVxuLnRvcC1iYXIgLmlucHV0LWdyb3VwLWZpZWxkIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cbi50b3AtYmFyIGlucHV0LmJ1dHRvbiB7XG4gIHdpZHRoOiBhdXRvO1xufVxuLnRvcC1iYXIgLnRvcC1iYXItbGVmdCxcbi50b3AtYmFyIC50b3AtYmFyLXJpZ2h0IHtcbiAgZmxleDogMCAwIDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC50b3AtYmFyIHtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgfVxuICAudG9wLWJhciAudG9wLWJhci1sZWZ0IHtcbiAgICBmbGV4OiAxIDEgYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIH1cbiAgLnRvcC1iYXIgLnRvcC1iYXItcmlnaHQge1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAudG9wLWJhci5zdGFja2VkLWZvci1tZWRpdW0ge1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgfVxuICAudG9wLWJhci5zdGFja2VkLWZvci1tZWRpdW0gLnRvcC1iYXItbGVmdCxcbi50b3AtYmFyLnN0YWNrZWQtZm9yLW1lZGl1bSAudG9wLWJhci1yaWdodCB7XG4gICAgZmxleDogMCAwIDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzQuOTk4NzVlbSkge1xuICAudG9wLWJhci5zdGFja2VkLWZvci1sYXJnZSB7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICB9XG4gIC50b3AtYmFyLnN0YWNrZWQtZm9yLWxhcmdlIC50b3AtYmFyLWxlZnQsXG4udG9wLWJhci5zdGFja2VkLWZvci1sYXJnZSAudG9wLWJhci1yaWdodCB7XG4gICAgZmxleDogMCAwIDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG59XG5cbi50b3AtYmFyLXRpdGxlIHtcbiAgZmxleDogMCAwIGF1dG87XG4gIG1hcmdpbjogMC41cmVtIDFyZW0gMC41cmVtIDA7XG59XG5cbi50b3AtYmFyLWxlZnQsXG4udG9wLWJhci1yaWdodCB7XG4gIGZsZXg6IDAgMCBhdXRvO1xufVxuXG5bdHlwZT10ZXh0XSwgW3R5cGU9cGFzc3dvcmRdLCBbdHlwZT1kYXRlXSwgW3R5cGU9ZGF0ZXRpbWVdLCBbdHlwZT1kYXRldGltZS1sb2NhbF0sIFt0eXBlPW1vbnRoXSwgW3R5cGU9d2Vla10sIFt0eXBlPWVtYWlsXSwgW3R5cGU9bnVtYmVyXSwgW3R5cGU9c2VhcmNoXSwgW3R5cGU9dGVsXSwgW3R5cGU9dGltZV0sIFt0eXBlPXVybF0sIFt0eXBlPWNvbG9yXSxcbnRleHRhcmVhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDIuNDMzMzMzMzMzM3JlbTtcbiAgbWFyZ2luOiAwIDAgMXJlbTtcbiAgcGFkZGluZzogMC41cmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2FjYWNhO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlO1xuICBib3gtc2hhZG93OiBpbnNldCAwIDFweCAycHggcmdiYSgxMCwgMTAsIDEwLCAwLjEpO1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBjb2xvcjogIzBhMGEwYTtcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjVzLCBib3JkZXItY29sb3IgMC4yNXMgZWFzZS1pbi1vdXQ7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG59XG5bdHlwZT10ZXh0XTpmb2N1cywgW3R5cGU9cGFzc3dvcmRdOmZvY3VzLCBbdHlwZT1kYXRlXTpmb2N1cywgW3R5cGU9ZGF0ZXRpbWVdOmZvY3VzLCBbdHlwZT1kYXRldGltZS1sb2NhbF06Zm9jdXMsIFt0eXBlPW1vbnRoXTpmb2N1cywgW3R5cGU9d2Vla106Zm9jdXMsIFt0eXBlPWVtYWlsXTpmb2N1cywgW3R5cGU9bnVtYmVyXTpmb2N1cywgW3R5cGU9c2VhcmNoXTpmb2N1cywgW3R5cGU9dGVsXTpmb2N1cywgW3R5cGU9dGltZV06Zm9jdXMsIFt0eXBlPXVybF06Zm9jdXMsIFt0eXBlPWNvbG9yXTpmb2N1cyxcbnRleHRhcmVhOmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTtcbiAgYm9yZGVyOiAxcHggc29saWQgIzhhOGE4YTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTtcbiAgYm94LXNoYWRvdzogMCAwIDVweCAjY2FjYWNhO1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuNXMsIGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dDtcbn1cblxudGV4dGFyZWEge1xuICBtYXgtd2lkdGg6IDEwMCU7XG59XG50ZXh0YXJlYVtyb3dzXSB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuaW5wdXQ6ZGlzYWJsZWQsIGlucHV0W3JlYWRvbmx5XSxcbnRleHRhcmVhOmRpc2FibGVkLFxudGV4dGFyZWFbcmVhZG9ubHldIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U2ZTZlNjtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbn1cblxuW3R5cGU9c3VibWl0XSxcblt0eXBlPWJ1dHRvbl0ge1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuXG5pbnB1dFt0eXBlPXNlYXJjaF0ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG46OnBsYWNlaG9sZGVyIHtcbiAgY29sb3I6ICNjYWNhY2E7XG59XG5cblt0eXBlPWZpbGVdLFxuW3R5cGU9Y2hlY2tib3hdLFxuW3R5cGU9cmFkaW9dIHtcbiAgbWFyZ2luOiAwIDAgMXJlbTtcbn1cblxuW3R5cGU9Y2hlY2tib3hdICsgbGFiZWwsXG5bdHlwZT1yYWRpb10gKyBsYWJlbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICBtYXJnaW4tbGVmdDogMC41cmVtO1xuICBtYXJnaW4tcmlnaHQ6IDFyZW07XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5bdHlwZT1jaGVja2JveF0gKyBsYWJlbFtmb3JdLFxuW3R5cGU9cmFkaW9dICsgbGFiZWxbZm9yXSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxubGFiZWwgPiBbdHlwZT1jaGVja2JveF0sXG5sYWJlbCA+IFt0eXBlPXJhZGlvXSB7XG4gIG1hcmdpbi1yaWdodDogMC41cmVtO1xufVxuXG5bdHlwZT1maWxlXSB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG5sYWJlbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDA7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxLjg7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxubGFiZWwubWlkZGxlIHtcbiAgbWFyZ2luOiAwIDAgMXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgcGFkZGluZzogMC41NjY2NjY2NjY3cmVtIDA7XG59XG5cbi5oZWxwLXRleHQge1xuICBtYXJnaW4tdG9wOiAtMC41cmVtO1xuICBmb250LXNpemU6IDAuODEyNXJlbTtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBjb2xvcjogIzBhMGEwYTtcbn1cblxuLmlucHV0LWdyb3VwIHtcbiAgZGlzcGxheTogZmxleDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xufVxuLmlucHV0LWdyb3VwID4gOmZpcnN0LWNoaWxkLCAuaW5wdXQtZ3JvdXAgPiA6Zmlyc3QtY2hpbGQuaW5wdXQtZ3JvdXAtYnV0dG9uID4gKiB7XG4gIGJvcmRlci1yYWRpdXM6IDAgMCAwIDA7XG59XG4uaW5wdXQtZ3JvdXAgPiA6bGFzdC1jaGlsZCwgLmlucHV0LWdyb3VwID4gOmxhc3QtY2hpbGQuaW5wdXQtZ3JvdXAtYnV0dG9uID4gKiB7XG4gIGJvcmRlci1yYWRpdXM6IDAgMCAwIDA7XG59XG5cbi5pbnB1dC1ncm91cC1sYWJlbCwgLmlucHV0LWdyb3VwLWZpZWxkLCAuaW5wdXQtZ3JvdXAtYnV0dG9uLCAuaW5wdXQtZ3JvdXAtYnV0dG9uIGEsXG4uaW5wdXQtZ3JvdXAtYnV0dG9uIGlucHV0LFxuLmlucHV0LWdyb3VwLWJ1dHRvbiBidXR0b24sXG4uaW5wdXQtZ3JvdXAtYnV0dG9uIGxhYmVsIHtcbiAgbWFyZ2luOiAwO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4uaW5wdXQtZ3JvdXAtbGFiZWwge1xuICBwYWRkaW5nOiAwIDFyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjYWNhY2E7XG4gIGJhY2tncm91bmQ6ICNlNmU2ZTY7XG4gIGNvbG9yOiAjMGEwYTBhO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuLmlucHV0LWdyb3VwLWxhYmVsOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLXJpZ2h0OiAwO1xufVxuLmlucHV0LWdyb3VwLWxhYmVsOmxhc3QtY2hpbGQge1xuICBib3JkZXItbGVmdDogMDtcbn1cblxuLmlucHV0LWdyb3VwLWZpZWxkIHtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgZmxleDogMSAxIDBweDtcbiAgbWluLXdpZHRoOiAwO1xufVxuXG4uaW5wdXQtZ3JvdXAtYnV0dG9uIHtcbiAgcGFkZGluZy10b3A6IDA7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXg6IDAgMCBhdXRvO1xufVxuLmlucHV0LWdyb3VwLWJ1dHRvbiBhLFxuLmlucHV0LWdyb3VwLWJ1dHRvbiBpbnB1dCxcbi5pbnB1dC1ncm91cC1idXR0b24gYnV0dG9uLFxuLmlucHV0LWdyb3VwLWJ1dHRvbiBsYWJlbCB7XG4gIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG4gIGhlaWdodDogYXV0bztcbiAgcGFkZGluZy10b3A6IDA7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xuICBmb250LXNpemU6IDFyZW07XG59XG5cbmZpZWxkc2V0IHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IDA7XG59XG5cbmxlZ2VuZCB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xufVxuXG4uZmllbGRzZXQge1xuICBtYXJnaW46IDEuMTI1cmVtIDA7XG4gIHBhZGRpbmc6IDEuMjVyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjYWNhY2E7XG59XG4uZmllbGRzZXQgbGVnZW5kIHtcbiAgbWFyZ2luOiAwO1xuICBtYXJnaW4tbGVmdDogLTAuMnJlbTtcbiAgcGFkZGluZzogMCAwLjE4NzVyZW07XG59XG5cbnNlbGVjdCB7XG4gIGhlaWdodDogMi40MzMzMzMzMzMzcmVtO1xuICBtYXJnaW46IDAgMCAxcmVtO1xuICBwYWRkaW5nOiAwLjVyZW07XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjYWNhY2E7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZWZlZmU7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IDFyZW07XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGNvbG9yOiAjMGEwYTBhO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbDt1dGY4LDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZlcnNpb249XCIxLjFcIiB3aWR0aD1cIjMyXCIgaGVpZ2h0PVwiMjRcIiB2aWV3Qm94PVwiMCAwIDMyIDI0XCI+PHBvbHlnb24gcG9pbnRzPVwiMCwwIDMyLDAgMTYsMjRcIiBzdHlsZT1cImZpbGw6IHJnYiUyODEzOCwgMTM4LCAxMzglMjlcIj48L3BvbHlnb24+PC9zdmc+Jyk7XG4gIGJhY2tncm91bmQtb3JpZ2luOiBjb250ZW50LWJveDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgLTFyZW0gY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IDlweCA2cHg7XG4gIHBhZGRpbmctcmlnaHQ6IDEuNXJlbTtcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjVzLCBib3JkZXItY29sb3IgMC4yNXMgZWFzZS1pbi1vdXQ7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAwXFwwICkge1xuICBzZWxlY3Qge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQ0FBQUFBWUNBWUFBQUNiVS84MEFBQUFHWFJGV0hSVGIyWjBkMkZ5WlFCQlpHOWlaU0JKYldGblpWSmxZV1I1Y2NsbFBBQUFBSXBKUkVGVWVOckVrY2tOZ0RBTUJCZlJrRXQwT2JSQkJkc0dYVURnbVFmSzRYaEgybThjelFBQXkyN1IzdHN3NFFmZTJ4OHVPTzZvWUxiNkdsT29yM0dGK3N3VVJBT21VSitSd3RFSnM5V3ZUR0VZeEJYcUkxTVFBWmhDZlVRS1J6RE1WaitUd3JBSVY2anZTVUVrWUFyMUxTa2N5VEJiL1YrS1lmWDd4QWV1c3Ezc0xEdEdIM2tFR0FDUFdJZmxOWmZoUlFBQUFBQkpSVTVFcmtKZ2dnPT1cIik7XG4gIH1cbn1cbnNlbGVjdDpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmU7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM4YThhOGE7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZWZlZmU7XG4gIGJveC1zaGFkb3c6IDAgMCA1cHggI2NhY2FjYTtcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjVzLCBib3JkZXItY29sb3IgMC4yNXMgZWFzZS1pbi1vdXQ7XG59XG5zZWxlY3Q6ZGlzYWJsZWQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTZlNmU2O1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuc2VsZWN0OjotbXMtZXhwYW5kIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbnNlbGVjdFttdWx0aXBsZV0ge1xuICBoZWlnaHQ6IGF1dG87XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG59XG5zZWxlY3Q6bm90KFttdWx0aXBsZV0pIHtcbiAgcGFkZGluZy10b3A6IDA7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xufVxuXG4uaXMtaW52YWxpZC1pbnB1dDpub3QoOmZvY3VzKSB7XG4gIGJvcmRlci1jb2xvcjogI2NjNGIzNztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y5ZWNlYTtcbn1cbi5pcy1pbnZhbGlkLWlucHV0Om5vdCg6Zm9jdXMpOjpwbGFjZWhvbGRlciB7XG4gIGNvbG9yOiAjY2M0YjM3O1xufVxuXG4uaXMtaW52YWxpZC1sYWJlbCB7XG4gIGNvbG9yOiAjY2M0YjM3O1xufVxuXG4uZm9ybS1lcnJvciB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIG1hcmdpbi10b3A6IC0wLjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGNvbG9yOiAjY2M0YjM3O1xufVxuLmZvcm0tZXJyb3IuaXMtdmlzaWJsZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uaGlkZSB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLmludmlzaWJsZSB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLnZpc2libGUge1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuaGlkZS1mb3Itc21hbGwtb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDBlbSksIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuc2hvdy1mb3Itc21hbGwtb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5oaWRlLWZvci1tZWRpdW0ge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5zaG93LWZvci1tZWRpdW0ge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgLmhpZGUtZm9yLW1lZGl1bS1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSksIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuc2hvdy1mb3ItbWVkaXVtLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuaGlkZS1mb3ItbGFyZ2Uge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gIC5zaG93LWZvci1sYXJnZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1heC13aWR0aDogNzQuOTk4NzVlbSkge1xuICAuaGlkZS1mb3ItbGFyZ2Utb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pLCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnNob3ctZm9yLWxhcmdlLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4uc2hvdy1mb3Itc3IsXG4uc2hvdy1vbi1mb2N1cyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICB3aWR0aDogMXB4ICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogMXB4ICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgb3ZlcmZsb3c6IGhpZGRlbiAhaW1wb3J0YW50O1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApICFpbXBvcnRhbnQ7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXAgIWltcG9ydGFudDtcbiAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5zaG93LW9uLWZvY3VzOmFjdGl2ZSwgLnNob3ctb24tZm9jdXM6Zm9jdXMge1xuICBwb3NpdGlvbjogc3RhdGljICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICBvdmVyZmxvdzogdmlzaWJsZSAhaW1wb3J0YW50O1xuICBjbGlwOiBhdXRvICFpbXBvcnRhbnQ7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWwgIWltcG9ydGFudDtcbn1cblxuLnNob3ctZm9yLWxhbmRzY2FwZSxcbi5oaWRlLWZvci1wb3J0cmFpdCB7XG4gIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSkge1xuICAuc2hvdy1mb3ItbGFuZHNjYXBlLFxuLmhpZGUtZm9yLXBvcnRyYWl0IHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAob3JpZW50YXRpb246IHBvcnRyYWl0KSB7XG4gIC5zaG93LWZvci1sYW5kc2NhcGUsXG4uaGlkZS1mb3ItcG9ydHJhaXQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4uaGlkZS1mb3ItbGFuZHNjYXBlLFxuLnNob3ctZm9yLXBvcnRyYWl0IHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpIHtcbiAgLmhpZGUtZm9yLWxhbmRzY2FwZSxcbi5zaG93LWZvci1wb3J0cmFpdCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAob3JpZW50YXRpb246IHBvcnRyYWl0KSB7XG4gIC5oaWRlLWZvci1sYW5kc2NhcGUsXG4uc2hvdy1mb3ItcG9ydHJhaXQge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLnNob3ctZm9yLWRhcmstbW9kZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5oaWRlLWZvci1kYXJrLW1vZGUge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKHByZWZlcnMtY29sb3Itc2NoZW1lOiBkYXJrKSB7XG4gIC5zaG93LWZvci1kYXJrLW1vZGUge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuaGlkZS1mb3ItZGFyay1tb2RlIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi5zaG93LWZvci1pZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbkBtZWRpYSBhbGwgYW5kICgtbXMtaGlnaC1jb250cmFzdDogbm9uZSksICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSB7XG4gIC5zaG93LWZvci1pZSB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5oaWRlLWZvci1pZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG4uc2hvdy1mb3Itc3RpY2t5IHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmlzLXN0dWNrIC5zaG93LWZvci1zdGlja3kge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmlzLXN0dWNrIC5oaWRlLWZvci1zdGlja3kge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uYWNjb3JkaW9uIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIGJhY2tncm91bmQ6ICNmZWZlZmU7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbn1cbi5hY2NvcmRpb25bZGlzYWJsZWRdIC5hY2NvcmRpb24tdGl0bGUge1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuXG4uYWNjb3JkaW9uLWl0ZW06Zmlyc3QtY2hpbGQgPiA6Zmlyc3QtY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiAwIDAgMCAwO1xufVxuLmFjY29yZGlvbi1pdGVtOmxhc3QtY2hpbGQgPiA6bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1yYWRpdXM6IDAgMCAwIDA7XG59XG5cbi5hY2NvcmRpb24tdGl0bGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAxLjI1cmVtIDFyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlNmU2ZTY7XG4gIGJvcmRlci1ib3R0b206IDA7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGNvbG9yOiAjMTc3OWJhO1xufVxuOmxhc3QtY2hpbGQ6bm90KC5pcy1hY3RpdmUpID4gLmFjY29yZGlvbi10aXRsZSB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZTZlNmU2O1xuICBib3JkZXItcmFkaXVzOiAwIDAgMCAwO1xufVxuLmFjY29yZGlvbi10aXRsZTpob3ZlciwgLmFjY29yZGlvbi10aXRsZTpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlNmU2ZTY7XG59XG4uYWNjb3JkaW9uLXRpdGxlOjpiZWZvcmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICByaWdodDogMXJlbTtcbiAgbWFyZ2luLXRvcDogLTAuNXJlbTtcbiAgY29udGVudDogXCIrXCI7XG59XG4uaXMtYWN0aXZlID4gLmFjY29yZGlvbi10aXRsZTo6YmVmb3JlIHtcbiAgY29udGVudDogXCLigJNcIjtcbn1cblxuLmFjY29yZGlvbi1jb250ZW50IHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcGFkZGluZzogMXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2U2ZTZlNjtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG46bGFzdC1jaGlsZCA+IC5hY2NvcmRpb24tY29udGVudDpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlNmU2ZTY7XG59XG5cbnRhYmxlIHtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG50aGVhZCxcbnRib2R5LFxudGZvb3Qge1xuICBib3JkZXI6IDFweCBzb2xpZCAjZjFmMWYxO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlO1xufVxuXG5jYXB0aW9uIHtcbiAgcGFkZGluZzogMC41cmVtIDAuNjI1cmVtIDAuNjI1cmVtO1xuICBmb250LXdlaWdodDogNjAwO1xufVxuXG50aGVhZCB7XG4gIGJhY2tncm91bmQ6ICNmOGY4Zjg7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuXG50Zm9vdCB7XG4gIGJhY2tncm91bmQ6ICNmMWYxZjE7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuXG50aGVhZCB0cixcbnRmb290IHRyIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG59XG50aGVhZCB0aCxcbnRoZWFkIHRkLFxudGZvb3QgdGgsXG50Zm9vdCB0ZCB7XG4gIHBhZGRpbmc6IDAuNXJlbSAwLjYyNXJlbSAwLjYyNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxudGJvZHkgdGgsXG50Ym9keSB0ZCB7XG4gIHBhZGRpbmc6IDAuNXJlbSAwLjYyNXJlbSAwLjYyNXJlbTtcbn1cblxudGJvZHkgdHI6bnRoLWNoaWxkKGV2ZW4pIHtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YxZjFmMTtcbn1cblxudGFibGUudW5zdHJpcGVkIHRib2R5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTtcbn1cbnRhYmxlLnVuc3RyaXBlZCB0Ym9keSB0ciB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZjFmMWYxO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICB0YWJsZS5zdGFjayB0aGVhZCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICB0YWJsZS5zdGFjayB0Zm9vdCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICB0YWJsZS5zdGFjayB0cixcbnRhYmxlLnN0YWNrIHRoLFxudGFibGUuc3RhY2sgdGQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG4gIHRhYmxlLnN0YWNrIHRkIHtcbiAgICBib3JkZXItdG9wOiAwO1xuICB9XG59XG5cbnRhYmxlLnNjcm9sbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3cteDogYXV0bztcbn1cblxudGFibGUuaG92ZXIgdGhlYWQgdHI6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjNmM2YzO1xufVxudGFibGUuaG92ZXIgdGZvb3QgdHI6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWNlY2VjO1xufVxudGFibGUuaG92ZXIgdGJvZHkgdHI6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjlmOWY5O1xufVxudGFibGUuaG92ZXI6bm90KC51bnN0cmlwZWQpIHRyOm50aC1vZi10eXBlKGV2ZW4pOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VjZWNlYztcbn1cblxuLnRhYmxlLXNjcm9sbCB7XG4gIG92ZXJmbG93LXg6IGF1dG87XG59XG5cbmh0bWwge1xuICBmb250LXNpemU6IDE1cHg7XG59XG5cbmJvZHkge1xuICBmb250LXNpemU6IDE1cHg7XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5tYWluLWNvbnRhaW5lciB7XG4gICAgcGFkZGluZy10b3A6IDExOHB4O1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5wYWdlLXRlbXBsYXRlLWZyb250IC5tYWluLWNvbnRhaW5lciB7XG4gICAgcGFkZGluZy10b3A6IDAgIWltcG9ydGFudDtcbiAgfVxufVxuXG4ucm93IC5jb250YWluZXIge1xuICBtYXgtd2lkdGg6IDg5MHB4O1xuICBtYXJnaW46IDAgYXV0bztcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnJvdyAuY29udGFpbmVyIHtcbiAgICBtYXgtd2lkdGg6IDEwMjRweDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAucm93IC5jb250YWluZXIge1xuICAgIG1heC13aWR0aDogMTIwMHB4O1xuICB9XG59XG4ucm93IC5jb250YWluZXIucGFkZGluZyB7XG4gIHBhZGRpbmc6IDAgMzBweDtcbn1cbi5yb3cuZnVsbC13aWR0aCAuY29udGFpbmVyIHtcbiAgbWF4LXdpZHRoOiBpbml0aWFsO1xufVxuXG4uZ3JpZCB7XG4gIG1hcmdpbi1yaWdodDogMzBweDtcbiAgbWFyZ2luLWxlZnQ6IDMwcHg7XG4gIGRpc3BsYXk6IGdyaWQ7XG59XG4uZ3JpZC5ibG9jayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLmdyaWQubm8tZ2FwIHtcbiAgY29sdW1uLWdhcDogMDtcbn1cbi5ncmlkLmdhcC0yIHtcbiAgY29sdW1uLWdhcDogMzBweDtcbn1cbi5ncmlkLmdhcC00IHtcbiAgY29sdW1uLWdhcDogY2FsYygzMHB4ICogMik7XG59XG4uZ3JpZC5tYXJnaW4tMiB7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKDMwcHggKiAyKTtcbiAgbWFyZ2luLXJpZ2h0OiBjYWxjKDMwcHggKiAyKTtcbn1cbi5ncmlkLm5vLW1hcmdpbixcbi5ncmlkIC5ncmlkIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cbi5ncmlkLmNvbC0yLCAuZ3JpZC5jb2wtMywgLmdyaWQuY29sLTQsIC5ncmlkLmNvbC02LCAuZ3JpZC5jb2wtMTIsIC5ncmlkLmNvbC0xLTMsIC5ncmlkLmNvbC0zLTEge1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG1pbm1heCgxMDAlLCBtYXgtY29udGVudCk7XG4gIGdyaWQtdGVtcGxhdGUtcm93czogYXV0bztcbn1cbi5ncmlkLnNtLWNvbC0zIHtcbiAgLW1zLWdyaWQtY29sdW1uczogMWZyIDE1cHggMWZyIDE1cHggMWZyO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgzLCAxZnIpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmdyaWQuY29sLTIge1xuICAgIC1tcy1ncmlkLWNvbHVtbnM6IDFmciAxNXB4IDFmcjtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xuICB9XG4gIC5ncmlkLmNvbC0zIHtcbiAgICAtbXMtZ3JpZC1jb2x1bW5zOiAxZnIgMTVweCAxZnIgMTVweCAxZnI7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTtcbiAgfVxuICAuZ3JpZC5jb2wtNCB7XG4gICAgLW1zLWdyaWQtY29sdW1uczogMWZyIDE1cHggMWZyIDE1cHggMWZyIDE1cHggMWZyO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDQsIDFmcik7XG4gIH1cbiAgLmdyaWQuY29sLTUge1xuICAgIC1tcy1ncmlkLWNvbHVtbnM6IDFmciAxNXB4IDFmciAxNXB4IDFmciAxNXB4IDFmciAxNXB4IDFmcjtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg1LCAxZnIpO1xuICB9XG4gIC5ncmlkLmNvbC02IHtcbiAgICAtbXMtZ3JpZC1jb2x1bW5zOiAxZnIgMTVweCAxZnIgMTVweCAxZnIgMTVweCAxZnIgMTVweCAxZnIgMTVweCAxZnI7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNiwgMWZyKTtcbiAgfVxuICAuZ3JpZC5jb2wtMTIge1xuICAgIC1tcy1ncmlkLWNvbHVtbnM6IDFmcjtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgfVxuICAuZ3JpZC5jb2wtMS0zIHtcbiAgICAtbXMtZ3JpZC1jb2x1bW5zOiAxZnIgMTVweCAyZnI7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMmZyO1xuICB9XG4gIC5ncmlkLmNvbC0xLTQge1xuICAgIC1tcy1ncmlkLWNvbHVtbnM6IDFmciAxNXB4IDNmcjtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAzZnI7XG4gIH1cbiAgLmdyaWQuY29sLTMtMSB7XG4gICAgLW1zLWdyaWQtY29sdW1uczogMmZyIDE1cHggMWZyO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMmZyIDFmcjtcbiAgfVxufVxuXG4uZ3JpZC5uby1nYXAuY29sLTMgPiBkaXY6bnRoLWNoaWxkKDIpIHtcbiAgLW1zLWdyaWQtY29sdW1uOiAyO1xufVxuLmdyaWQubm8tZ2FwLmNvbC0zID4gZGl2Om50aC1jaGlsZCgzKSB7XG4gIC1tcy1ncmlkLWNvbHVtbjogMztcbn1cbi5ncmlkLm5vLWdhcC5jb2wtNCA+IGRpdjpudGgtY2hpbGQoMikge1xuICAtbXMtZ3JpZC1jb2x1bW46IDI7XG59XG4uZ3JpZC5uby1nYXAuY29sLTQgPiBkaXY6bnRoLWNoaWxkKDMpIHtcbiAgLW1zLWdyaWQtY29sdW1uOiAzO1xufVxuLmdyaWQubm8tZ2FwLmNvbC00ID4gZGl2Om50aC1jaGlsZCg0KSB7XG4gIC1tcy1ncmlkLWNvbHVtbjogNDtcbn1cbi5ncmlkLm5vLWdhcC5jb2wtNSA+IGRpdjpudGgtY2hpbGQoMikge1xuICAtbXMtZ3JpZC1jb2x1bW46IDI7XG59XG4uZ3JpZC5uby1nYXAuY29sLTUgPiBkaXY6bnRoLWNoaWxkKDMpIHtcbiAgLW1zLWdyaWQtY29sdW1uOiAzO1xufVxuLmdyaWQubm8tZ2FwLmNvbC01ID4gZGl2Om50aC1jaGlsZCg0KSB7XG4gIC1tcy1ncmlkLWNvbHVtbjogNDtcbn1cbi5ncmlkLm5vLWdhcC5jb2wtNSA+IGRpdjpudGgtY2hpbGQoNSkge1xuICAtbXMtZ3JpZC1jb2x1bW46IDU7XG59XG4uZ3JpZC5uby1nYXAuY29sLTIgPiBkaXY6bnRoLWNoaWxkKDIpLCAuZ3JpZC5uby1nYXAuY29sLTIgPiBhc2lkZTpudGgtY2hpbGQoMiksIC5ncmlkLm5vLWdhcC5jb2wtMS0zID4gZGl2Om50aC1jaGlsZCgyKSwgLmdyaWQubm8tZ2FwLmNvbC0xLTMgPiBhc2lkZTpudGgtY2hpbGQoMiksIC5ncmlkLm5vLWdhcC5jb2wtMS00ID4gZGl2Om50aC1jaGlsZCgyKSwgLmdyaWQubm8tZ2FwLmNvbC0xLTQgPiBhc2lkZTpudGgtY2hpbGQoMiksIC5ncmlkLm5vLWdhcC5jb2wtMy0xID4gZGl2Om50aC1jaGlsZCgyKSwgLmdyaWQubm8tZ2FwLmNvbC0zLTEgPiBhc2lkZTpudGgtY2hpbGQoMikge1xuICAtbXMtZ3JpZC1jb2x1bW46IDI7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZ3JpZC5uby1nYXAuY29sLTIge1xuICAgIC1tcy1ncmlkLWNvbHVtbnM6IDFmciAxZnI7XG4gIH1cbiAgLmdyaWQubm8tZ2FwLmNvbC0zIHtcbiAgICAtbXMtZ3JpZC1jb2x1bW5zOiAxZnIgMWZyIDFmcjtcbiAgfVxuICAuZ3JpZC5uby1nYXAuY29sLTQge1xuICAgIC1tcy1ncmlkLWNvbHVtbnM6IDFmciAxZnIgMWZyIDFmcjtcbiAgfVxuICAuZ3JpZC5uby1nYXAuY29sLTUge1xuICAgIC1tcy1ncmlkLWNvbHVtbnM6IDFmciAxZnIgMWZyIDFmciAxZnI7XG4gIH1cbiAgLmdyaWQubm8tZ2FwLmNvbC02IHtcbiAgICAtbXMtZ3JpZC1jb2x1bW5zOiAxZnIgMWZyIDFmciAxZnIgMWZyIDFmcjtcbiAgfVxuICAuZ3JpZC5uby1nYXAuY29sLTEtMyB7XG4gICAgLW1zLWdyaWQtY29sdW1uczogMWZyIDJmcjtcbiAgfVxuICAuZ3JpZC5uby1nYXAuY29sLTEtNCB7XG4gICAgLW1zLWdyaWQtY29sdW1uczogMWZyIDNmcjtcbiAgfVxuICAuZ3JpZC5uby1nYXAuY29sLTMtMSB7XG4gICAgLW1zLWdyaWQtY29sdW1uczogMmZyIDFmcjtcbiAgfVxufVxuLmdyaWQuY29sLTMgPiBkaXY6bnRoLWNoaWxkKDIpIHtcbiAgLW1zLWdyaWQtY29sdW1uOiAzO1xufVxuLmdyaWQuY29sLTMgPiBkaXY6bnRoLWNoaWxkKDMpIHtcbiAgLW1zLWdyaWQtY29sdW1uOiA1O1xufVxuLmdyaWQuY29sLTQgPiBkaXY6bnRoLWNoaWxkKDIpIHtcbiAgLW1zLWdyaWQtY29sdW1uOiAzO1xufVxuLmdyaWQuY29sLTQgPiBkaXY6bnRoLWNoaWxkKDMpIHtcbiAgLW1zLWdyaWQtY29sdW1uOiA1O1xufVxuLmdyaWQuY29sLTQgPiBkaXY6bnRoLWNoaWxkKDQpIHtcbiAgLW1zLWdyaWQtY29sdW1uOiA3O1xufVxuLmdyaWQuY29sLTUgPiBkaXY6bnRoLWNoaWxkKDIpIHtcbiAgLW1zLWdyaWQtY29sdW1uOiAzO1xufVxuLmdyaWQuY29sLTUgPiBkaXY6bnRoLWNoaWxkKDMpIHtcbiAgLW1zLWdyaWQtY29sdW1uOiA1O1xufVxuLmdyaWQuY29sLTUgPiBkaXY6bnRoLWNoaWxkKDQpIHtcbiAgLW1zLWdyaWQtY29sdW1uOiA3O1xufVxuLmdyaWQuY29sLTUgPiBkaXY6bnRoLWNoaWxkKDUpIHtcbiAgLW1zLWdyaWQtY29sdW1uOiA5O1xufVxuLmdyaWQuY29sLTYgPiBkaXY6bnRoLWNoaWxkKDIpIHtcbiAgLW1zLWdyaWQtY29sdW1uOiAzO1xufVxuLmdyaWQuY29sLTYgPiBkaXY6bnRoLWNoaWxkKDMpIHtcbiAgLW1zLWdyaWQtY29sdW1uOiA1O1xufVxuLmdyaWQuY29sLTYgPiBkaXY6bnRoLWNoaWxkKDQpIHtcbiAgLW1zLWdyaWQtY29sdW1uOiA3O1xufVxuLmdyaWQuY29sLTYgPiBkaXY6bnRoLWNoaWxkKDUpIHtcbiAgLW1zLWdyaWQtY29sdW1uOiA5O1xufVxuLmdyaWQuY29sLTYgPiBkaXY6bnRoLWNoaWxkKDYpIHtcbiAgLW1zLWdyaWQtY29sdW1uOiAxMTtcbn1cbi5ncmlkLmNvbC0yID4gZGl2Om50aC1jaGlsZCgyKSwgLmdyaWQuY29sLTIgPiBhc2lkZTpudGgtY2hpbGQoMiksIC5ncmlkLmNvbC0xLTMgPiBkaXY6bnRoLWNoaWxkKDIpLCAuZ3JpZC5jb2wtMS0zID4gYXNpZGU6bnRoLWNoaWxkKDIpLCAuZ3JpZC5jb2wtMS00ID4gZGl2Om50aC1jaGlsZCgyKSwgLmdyaWQuY29sLTEtNCA+IGFzaWRlOm50aC1jaGlsZCgyKSwgLmdyaWQuY29sLTMtMSA+IGRpdjpudGgtY2hpbGQoMiksIC5ncmlkLmNvbC0zLTEgPiBhc2lkZTpudGgtY2hpbGQoMikge1xuICAtbXMtZ3JpZC1jb2x1bW46IDM7XG59XG5cbltkYXRhLXdoYXRpbnB1dD1tb3VzZV0gYTpmb2N1cywgYnV0dG9uOmZvY3VzIFtkYXRhLXdoYXRpbnB1dD10b3VjaF0gYTpmb2N1cyxcbmJ1dHRvbjpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmU7XG59XG5cbi5lbWJlZC1jb250YWluZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctYm90dG9tOiA1Ni4yNSU7XG4gIGhlaWdodDogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG4uZW1iZWQtY29udGFpbmVyIGVtYmVkLFxuLmVtYmVkLWNvbnRhaW5lciBpZnJhbWUsXG4uZW1iZWQtY29udGFpbmVyIG9iamVjdCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG5wID4gYSB7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG5cbnNwYW4uc3RhcnMge1xuICBjb2xvcjogI2ZmYjIwMDtcbn1cblxuLm1vZGVybi10aXRsZSB7XG4gIGZvbnQtZmFtaWx5OiBcIkNvbnRpbnV1bS1MaWdodFwiLCBcIkhlbHZldGljYSBOZXVlXCIsIHNhbnMtc2VyaWY7XG4gIGxldHRlci1zcGFjaW5nOiAxcHg7XG59XG4ubW9kZXJuLXRpdGxlLndoaXRlIHtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG4ubW9kZXJuLXRpdGxlLnB1cnBsZSB7XG4gIGNvbG9yOiAjNUUyMjQ2O1xufVxuLm1vZGVybi10aXRsZS5ncmVlbiB7XG4gIGNvbG9yOiAjQjJDOTBBO1xufVxuLm1vZGVybi10aXRsZS5jZW50ZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5wYXJhZ3JhcGgtdGl0bGUge1xuICBmb250LWZhbWlseTogXCJSYWxld2F5XCIsIFwiSGVsdmV0aWNhIE5ldWVcIiwgc2Fucy1zZXJpZjtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cbi5wYXJhZ3JhcGgtdGl0bGUud2hpdGUge1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cbi5wYXJhZ3JhcGgtdGl0bGUucHVycGxlIHtcbiAgY29sb3I6ICM1RTIyNDY7XG59XG4ucGFyYWdyYXBoLXRpdGxlLm1hZ2VudGEge1xuICBjb2xvcjogIzllMWM2Mjtcbn1cbi5wYXJhZ3JhcGgtdGl0bGUuZ3JlZW4ge1xuICBjb2xvcjogI0IyQzkwQTtcbn1cbi5wYXJhZ3JhcGgtdGl0bGUuYm9sZCB7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG4ucGFyYWdyYXBoLXRpdGxlLm5vd3JhcCB7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG4ucGFyYWdyYXBoLXRpdGxlLndyYXAge1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG59XG4ucGFyYWdyYXBoLXRpdGxlLmNlbnRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi5wYXJhZ3JhcGgtdGl0bGUuc21hbGwge1xuICBmb250LXNpemU6IDEuMzMzMzMzMzMzM3JlbTtcbn1cblxuLnBhcmFncmFwaC13aGl0ZSBwIHtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG5cbi5zaWRlYmFyIGgxLFxuLnNpZGViYXIgaDIsXG4uc2lkZWJhciBoMyxcbi5zaWRlYmFyIGg0LFxuLnNpZGViYXIgaDUsXG4uc2lkZWJhciBoNixcbi5lbnRyeS1jb250ZW50IGgxLFxuLmVudHJ5LWNvbnRlbnQgaDIsXG4uZW50cnktY29udGVudCBoMyxcbi5lbnRyeS1jb250ZW50IGg0LFxuLmVudHJ5LWNvbnRlbnQgaDUsXG4uZW50cnktY29udGVudCBoNiB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGNvbG9yOiAjNUUyMjQ2O1xufVxuXG5oMS53aGl0ZSxcbmgyLndoaXRlLFxuaDMud2hpdGUsXG5oNC53aGl0ZSxcbmg1LndoaXRlLFxuaDYud2hpdGUge1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cbmgxLnB1cnBsZSxcbmgyLnB1cnBsZSxcbmgzLnB1cnBsZSxcbmg0LnB1cnBsZSxcbmg1LnB1cnBsZSxcbmg2LnB1cnBsZSB7XG4gIGNvbG9yOiAjNUUyMjQ2O1xufVxuaDEuZ3JlZW4sXG5oMi5ncmVlbixcbmgzLmdyZWVuLFxuaDQuZ3JlZW4sXG5oNS5ncmVlbixcbmg2LmdyZWVuIHtcbiAgY29sb3I6ICNCMkM5MEE7XG59XG5oMS51cHBlcmNhc2UsXG5oMi51cHBlcmNhc2UsXG5oMy51cHBlcmNhc2UsXG5oNC51cHBlcmNhc2UsXG5oNS51cHBlcmNhc2UsXG5oNi51cHBlcmNhc2Uge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG5xIHtcbiAgcXVvdGVzOiBcIuKAnFwiIFwi4oCdXCIgXCLigJhcIiBcIuKAmVwiO1xufVxuXG5ibG9ja3F1b3RlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmb250LXdlaWdodDogNTAwO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5ibG9ja3F1b3RlOmJlZm9yZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAtMXJlbTtcbiAgbGVmdDogMDtcbiAgY29udGVudDogXCLigJxcIjtcbiAgZm9udC1zaXplOiA1LjMzMzMzMzMzMzNyZW07XG4gIGhlaWdodDogMnJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGZvbnQtZmFtaWx5OiBcIlJhbGV3YXlcIiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBzYW5zLXNlcmlmO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5cbi5wdXJwbGUtcm93IGJsb2NrcXVvdGUge1xuICBjb2xvcjogI2ZlZmVmZTtcbiAgbWFyZ2luLXRvcDogMnJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbn1cbi5wdXJwbGUtcm93IGJsb2NrcXVvdGUgcCB7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuLnB1cnBsZS1yb3cgYmxvY2txdW90ZTpiZWZvcmUge1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cblxuLmJ1dHRvbiB7XG4gIGNvbG9yOiAjZmVmZWZlO1xuICBmb250LWZhbWlseTogXCJSYWxld2F5XCIsIFwiSGVsdmV0aWNhIE5ldWVcIiwgc2Fucy1zZXJpZjtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzVFMjI0NjtcbiAgZm9udC1zaXplOiAxLjJyZW07XG4gIGxldHRlci1zcGFjaW5nOiAxcHg7XG4gIGJvcmRlci1yYWRpdXM6IDIwMHB4O1xufVxuLmJ1dHRvbi5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogMC44cmVtO1xufVxuLmJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM5ZTFjNjI7XG59XG4uYnV0dG9uLnRyYW5zcGFyZW50IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiAjNUUyMjQ2O1xufVxuLmJ1dHRvbi5tb2Rlcm4ge1xuICBmb250LWZhbWlseTogXCJSYWxld2F5XCIsIFwiSGVsdmV0aWNhIE5ldWVcIiwgc2Fucy1zZXJpZjtcbn1cbi5idXR0b24uYm9yZGVyIHtcbiAgYm9yZGVyOiAxcHggc29saWQgIzVFMjI0NjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiAjNUUyMjQ2O1xufVxuLmJ1dHRvbi5ib3JkZXI6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNUUyMjQ2O1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cbi5idXR0b24ubm8tYm9yZGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogbm9uZTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogMzAwO1xuICBsZXR0ZXItc3BhY2luZzogM3B4O1xufVxuLmJ1dHRvbi0td2hpdGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlO1xuICBjb2xvcjogIzVFMjI0NjtcbiAgYm9yZGVyOiAxcHggc29saWQgI2ZlZmVmZTtcbn1cblxuLm1vcmUtYnV0dG9uIHtcbiAgZm9udC1mYW1pbHk6IFwiUmFsZXdheVwiLCBcIkhlbHZldGljYSBOZXVlXCIsIHNhbnMtc2VyaWY7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGxldHRlci1zcGFjaW5nOiAzcHg7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMjtcbiAgcGFkZGluZy1sZWZ0OiAzcHg7XG59XG4ubW9yZS1idXR0b246YmVmb3JlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDNyZW07XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlOGU5ZWM7XG4gIHotaW5kZXg6IC0xO1xuICB0cmFuc2l0aW9uOiB3aWR0aCAwLjJzIGVhc2UtaW4tb3V0O1xufVxuLm1vcmUtYnV0dG9uOmhvdmVyOmJlZm9yZSB7XG4gIHdpZHRoOiA3cmVtO1xufVxuLm1vcmUtYnV0dG9uLm5vLWJhY2tncm91bmQ6YmVmb3JlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5tb3JlLWJ1dHRvbi5wdXJwbGUge1xuICBjb2xvcjogIzVFMjI0Njtcbn1cbi5tb3JlLWJ1dHRvbi5ncmF5IHtcbiAgY29sb3I6ICM0MDQ0NEQ7XG59XG5cbi53cC1ibG9jay1tZWRpYS10ZXh0IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAud3AtYmxvY2stbWVkaWEtdGV4dCB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgfVxufVxuXG4ud3AtYmxvY2staW1hZ2Uge1xuICBjbGVhcjogYm90aDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLndwLWJsb2NrLWltYWdlLmhpZGUtb24tbW9iaWxlIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLndwLWJsb2NrLWdhbGxlcnkge1xuICBtYXJnaW46IDA7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAud3AtYmxvY2stZ2FsbGVyeSB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgLndwLWJsb2NrLWdhbGxlcnkgLmJsb2Nrcy1nYWxsZXJ5LWl0ZW0ge1xuICAgIHdpZHRoOiBpbml0aWFsO1xuICAgIG1hcmdpbi1yaWdodDogaW5pdGlhbDtcbiAgfVxufVxuXG4uaW52aXNpYmxlLXNlcGFyYXRvciB7XG4gIGNsZWFyOiBib3RoO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi5hbGlnbmxlZnQge1xuICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmFsaWdubGVmdCB7XG4gICAgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDtcbiAgfVxufVxuXG4uYWxpZ25sZWZ0OmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4ud3AtYmxvY2stdGFibGUgdGhlYWQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNUUyMjQ2O1xufVxuLndwLWJsb2NrLXRhYmxlIHRoZWFkIHRkIHtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG4ud3AtYmxvY2stdGFibGUgdHI6bnRoLWNoaWxkKGV2ZW4pIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VhZGJlMTtcbn1cbi53cC1ibG9jay10YWJsZSB0ZDpudGgtY2hpbGQoMSkge1xuICB3aWR0aDogNzUlO1xuICBib3JkZXItcmlnaHQ6IDJweCBzb2xpZCAjZmVmZWZlO1xufVxuLndwLWJsb2NrLXRhYmxlIHRkOm50aC1jaGlsZCgyKSB7XG4gIHdpZHRoOiAyNSU7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuLndwLWJsb2NrLXRhYmxlIHRkIHtcbiAgY29sb3I6ICM1RTIyNDY7XG59XG5cbi5zdGVwcy1pdGVtIHtcbiAgZmxleC13cmFwOiBub3dyYXA7XG59XG4uc3RlcHMtaXRlbSAud3AtYmxvY2stY29sdW1uOm50aC1jaGlsZCgxKSB7XG4gIGZsZXgtYmFzaXM6IDMwJTtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xufVxuLnN0ZXBzLWl0ZW0gLndwLWJsb2NrLWNvbHVtbjpudGgtY2hpbGQoMikge1xuICBmbGV4LWJhc2lzOiA3MCU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuc3RlcHMtaXRlbSAud3AtYmxvY2stY29sdW1uOm50aC1jaGlsZCgxKSB7XG4gICAgZmxleC1iYXNpczogMjAlO1xuICB9XG4gIC5zdGVwcy1pdGVtIC53cC1ibG9jay1jb2x1bW46bnRoLWNoaWxkKDIpIHtcbiAgICBmbGV4LWJhc2lzOiA4MCU7XG4gIH1cbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLnNtYWxsLWltYWdlLWxlZnQgLndwLWJsb2NrLWNvbHVtbjpudGgtY2hpbGQoMSkge1xuICAgIGZsZXgtYmFzaXM6IDIwJTtcbiAgfVxuICAuc21hbGwtaW1hZ2UtbGVmdCAud3AtYmxvY2stY29sdW1uOm50aC1jaGlsZCgyKSB7XG4gICAgZmxleC1iYXNpczogODAlO1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5zbWFsbC1pbWFnZS1yaWdodCAud3AtYmxvY2stY29sdW1uOm50aC1jaGlsZCgyKSB7XG4gICAgZmxleC1iYXNpczogMjAlO1xuICB9XG4gIC5zbWFsbC1pbWFnZS1yaWdodCAud3AtYmxvY2stY29sdW1uOm50aC1jaGlsZCgxKSB7XG4gICAgZmxleC1iYXNpczogODAlO1xuICB9XG59XG5cbi53cC1ibG9jay1tZWRpYS10ZXh0IHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLndwLWJsb2NrLW1lZGlhLXRleHQgLndwLWJsb2NrLW1lZGlhLXRleHRfX2NvbnRlbnQge1xuICAgIHBhZGRpbmc6IDFyZW0gOCU7XG4gIH1cbn1cblxuLmJhZGdlIHtcbiAgd2lkdGg6IDEwMHB4O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmJhZGdlIHtcbiAgICB3aWR0aDogMTUwcHg7XG4gIH1cbn1cbi5iYWRnZS5hYnNvbHV0ZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbn1cbi5iYWRnZS5yb3RhdGUgaW1nIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtMTBkZWcpO1xufVxuXG5hLmFuY2hvci1saW5rIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAtMjUwcHg7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnNpdGUtdGl0bGUtYmFyIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi5zaXRlLXRpdGxlLWJhciAudGl0bGUtYmFyLXRpdGxlIHtcbiAgbWFyZ2luOiAxcmVtIGF1dG87XG4gIHdpZHRoOiA4LjY2NjY2NjY2NjdyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuc2l0ZS10aXRsZS1iYXIgLnRpdGxlLWJhci10aXRsZSB7XG4gICAgd2lkdGg6IDE1JTtcbiAgfVxufVxuXG4ucGFnZS10ZW1wbGF0ZS1wYWdlLXRoYW5reW91LW1pa3Jvc2l0ZSAuc2l0ZS10aXRsZS1iYXIge1xuICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xufVxuXG4udG9wLWJhciB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTQsIDI1NCwgMjU0LCAwLjgpO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMCAycmVtO1xuICB6LWluZGV4OiA5OTk5O1xuICB0b3A6IDA7XG4gIGhlaWdodDogMTE4cHg7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gIC50b3AtYmFyIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi50b3AtYmFyIC50b3AtYmFyLWxlZnQge1xuICBmbGV4OiAwIDEgYXV0bztcbiAgd2lkdGg6IDE1MHB4O1xuICBtYXJnaW46IDA7XG59XG4udG9wLWJhciAudG9wLWJhci1yaWdodCB7XG4gIHdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGZsZXgtZmxvdzogY29sdW1uO1xuICBoZWlnaHQ6IDcwcHg7XG59XG5cbmJvZHkubG9nZ2VkLWluIC50b3AtYmFyIHtcbiAgdG9wOiAzMnB4O1xufVxuXG4udG9wLWJhci1yaWdodCB1bCBsaSB1bCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5tb2JpbGUtbWVudSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5tb2JpbGUtbWVudS10b2dnbGUgLmZhLFxuLm1vYmlsZS1tZW51LXRvZ2dsZSAuZmEtYmFyczo6YmVmb3JlIHtcbiAgY29sb3I6ICM2ZDc1ODQ7XG59XG5cbi5oZWFkZXItY29udGFjdCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG59XG4uaGVhZGVyLWNvbnRhY3QgLnNvY2lhbC1kYXRhLFxuLmhlYWRlci1jb250YWN0IC5jb250YWN0LWRhdGEge1xuICBkaXNwbGF5OiBmbGV4O1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICBtYXJnaW46IDA7XG59XG4uaGVhZGVyLWNvbnRhY3QgLmNvbnRhY3QtZGF0YSB7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuLmhlYWRlci1jb250YWN0IC5jb250YWN0LWRhdGEgc3ZnIHBhdGgge1xuICB0cmFuc2l0aW9uOiBmaWxsIDAuMnMgZWFzZS1pbi1vdXQ7XG59XG4uaGVhZGVyLWNvbnRhY3QgLmNvbnRhY3QtZGF0YSBsaSB7XG4gIG1hcmdpbi1yaWdodDogMnJlbTtcbn1cbi5oZWFkZXItY29udGFjdCAuY29udGFjdC1kYXRhIGxpOmhvdmVyIHN2ZyBwYXRoIHtcbiAgZmlsbDogIzllMWM2Mjtcbn1cbi5oZWFkZXItY29udGFjdCAuY29udGFjdC1kYXRhIGEge1xuICBjb2xvcjogIzZENzU4NDtcbiAgZm9udC1mYW1pbHk6IFwiUmFsZXdheVwiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LXNpemU6IDEuMnJlbTtcbiAgZm9udC1zaXplOiBjbGFtcCgxcmVtLCAwLjk1cmVtICsgMC4yNXZ3LCAxLjA1cmVtKTtcbn1cbi5oZWFkZXItY29udGFjdCAuY29udGFjdC1kYXRhIHN2ZyB7XG4gIG1hcmdpbi1yaWdodDogMTBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmU7XG59XG4uaGVhZGVyLWNvbnRhY3QgLnNvY2lhbC1kYXRhIHtcbiAgZGlzcGxheTogZmxleDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi5oZWFkZXItY29udGFjdCAuc29jaWFsLWRhdGEgbGkge1xuICBtYXJnaW4tbGVmdDogMTBweDtcbn1cbi5oZWFkZXItY29udGFjdCAuc29jaWFsLWRhdGEgYSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG59XG4uaGVhZGVyLWNvbnRhY3QgLnNvY2lhbC1kYXRhIGEgcGF0aCB7XG4gIHRyYW5zaXRpb246IGZpbGwgMC4ycyBlYXNlLWluLW91dDtcbn1cbi5oZWFkZXItY29udGFjdCAuc29jaWFsLWRhdGEgYTpob3ZlciBwYXRoIHtcbiAgZmlsbDogIzllMWM2Mjtcbn1cbi5oZWFkZXItY29udGFjdCAuc29jaWFsLWRhdGEgc3ZnIHtcbiAgbWFyZ2luOiBhdXRvO1xufVxuXG4uZGVza3RvcC1tZW51IHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgbWFyZ2luOiAwO1xufVxuLmRlc2t0b3AtbWVudSAubWVudS1pdGVtIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuLmRlc2t0b3AtbWVudSAubWVudS1pdGVtLmN1cnJlbnQtbWVudS1pdGVtID4gYTphZnRlciwgLmRlc2t0b3AtbWVudSAubWVudS1pdGVtLmN1cnJlbnQtbWVudS1wYXJlbnQgPiBhOmFmdGVyIHtcbiAgd2lkdGg6IDUwcHg7XG59XG4uZGVza3RvcC1tZW51IC5tZW51LWl0ZW0gYSB7XG4gIHBhZGRpbmc6IDAgY2FsYygxICogKDF2dyArIDF2aCAtIDF2bWluKSk7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMnMgZWFzZS1pbi1vdXQ7XG4gIGNvbG9yOiAjNmQ3NTg0O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgZm9udC1zaXplOiBjbGFtcCgxcmVtLCAwLjk1cmVtICsgMC4yNXZ3LCAxLjI1cmVtKTtcbn1cbi5kZXNrdG9wLW1lbnUgLm1lbnUtaXRlbSBhOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzVFMjI0NjtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG4uZGVza3RvcC1tZW51IC5tZW51LWl0ZW0gYTphZnRlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgY29udGVudDogXCIgXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjOWUxYzYyO1xuICBoZWlnaHQ6IDFweDtcbiAgd2lkdGg6IDBweDtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHRvcDogMC41cmVtO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDtcbn1cbi5kZXNrdG9wLW1lbnUgLm1lbnUtaXRlbSBhOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiAjNkQ3NTg0O1xufVxuLmRlc2t0b3AtbWVudSAubWVudS1pdGVtIGE6aG92ZXI6YWZ0ZXIge1xuICB3aWR0aDogNTBweDtcbn1cbi5kZXNrdG9wLW1lbnUgLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLmRlc2t0b3AtbWVudSAuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQ6aG92ZXIgLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi5kZXNrdG9wLW1lbnUgLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5kZXNrdG9wLW1lbnUgLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDEwMCU7XG4gIHdpZHRoOiAzMDBweDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBkaXNwbGF5OiBub25lO1xufVxuLmRlc2t0b3AtbWVudSAuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgLmlzLWRyb3Bkb3duLXN1Ym1lbnUgYSB7XG4gIHBhZGRpbmc6IDAuNXJlbSAycmVtO1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLnNwbGlkZV9fYXJyb3cge1xuICBoZWlnaHQ6IDEwMHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi5zcGxpZGVfX2Fycm93IHN2ZyB7XG4gIGhlaWdodDogNjhweDtcbiAgd2lkdGg6IDM0cHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAtOXB4O1xuICBmaWxsOiAjOWUxYzYyO1xufVxuXG4uc3BsaWRlX19hcnJvdy0tcHJldiB7XG4gIGxlZnQ6IDA7XG59XG4uc3BsaWRlX19hcnJvdy0tbmV4dCB7XG4gIHJpZ2h0OiAwO1xufVxuYm9keSB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5tb2JpbGUtbWVudS10b2dnbGUge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuLm1vYmlsZS1tZW51LXRvZ2dsZSBzdmcge1xuICBvcGFjaXR5OiAwLjc1O1xufVxuXG4uc2xpZGVvdXQtbWVudSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIHdpZHRoOiAyNTZweDtcbiAgbWluLWhlaWdodDogMTAwdmg7XG4gIG92ZXJmbG93LXk6IHNjcm9sbDtcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICB6LWluZGV4OiAwO1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uc2xpZGVvdXQtbWVudS1sZWZ0IHtcbiAgbGVmdDogMDtcbn1cblxuLnNsaWRlb3V0LW1lbnUtcmlnaHQge1xuICByaWdodDogMDtcbn1cblxuLnNsaWRlb3V0LXBhbmVsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGO1xuICAvKiBBIGJhY2tncm91bmQtY29sb3IgaXMgcmVxdWlyZWQgKi9cbiAgbWluLWhlaWdodDogMTAwdmg7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAuc2xpZGVvdXQtcGFuZWwge1xuICAgIHdpbGwtY2hhbmdlOiB0cmFuc2Zvcm07XG4gIH1cbn1cblxuLnNsaWRlb3V0LW9wZW4sXG4uc2xpZGVvdXQtb3BlbiBib2R5LFxuLnNsaWRlb3V0LW9wZW4gLnNsaWRlb3V0LXBhbmVsIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLnNsaWRlb3V0LW9wZW4gLnNsaWRlb3V0LW1lbnUge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLnNsaWRlb3V0LXBhbmVsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uc2xpZGVvdXQtcGFuZWwtb3BlbjpiZWZvcmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgei1pbmRleDogOTk7XG59XG5cbiNtb2JpbGUtbWVudSB7XG4gIGJhY2tncm91bmQ6ICMzMjMxMzE7XG59XG5cbiNzaXRlLWNvbnRlbnQge1xuICBtaW4taGVpZ2h0OiAxMDB2aDtcbn1cblxuLm1vYmlsZS1tZW51LWJhcnMge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHJpZ2h0OiAxcmVtO1xuICB0b3A6IDNyZW07XG4gIHotaW5kZXg6IDEwMDtcbiAgaGVpZ2h0OiA1MHB4O1xuICB3aWR0aDogNTBweDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGZsZXgtZmxvdzogY29sdW1uO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NCwgMjU0LCAyNTQsIDAuNyk7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLm1vYmlsZS1tZW51LWJhcnMge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuLm1vYmlsZS1tZW51LWJhcnMgc3BhbiB7XG4gIGhlaWdodDogM3B4O1xuICB3aWR0aDogMzBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg2NCwgNjgsIDc3LCAwLjc1KTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0O1xuICBvcGFjaXR5OiAxO1xuICBtYXJnaW46IDAgYXV0bztcbn1cbi5tb2JpbGUtbWVudS1iYXJzIHNwYW46bnRoLWNoaWxkKDEpLCAubW9iaWxlLW1lbnUtYmFycyBzcGFuOm50aC1jaGlsZCgyKSB7XG4gIG1hcmdpbi1ib3R0b206IDdweDtcbn1cblxuLm1vYmlsZS1tZW51LWJhcnMuaXMtb3BlbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLm1vYmlsZS1tZW51LWJhcnMuaXMtb3BlbiBzcGFuIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBtYXJnaW4tbGVmdDogaW5pdGlhbDtcbiAgbWFyZ2luLXJpZ2h0OiBpbml0aWFsO1xuICB3aWR0aDogMzJweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTtcbn1cbi5tb2JpbGUtbWVudS1iYXJzLmlzLW9wZW4gc3BhbjpudGgtY2hpbGQoMSkge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZykgdHJhbnNsYXRlWSgtNTAlKTtcbiAgdG9wOiAyNnB4O1xuICBsZWZ0OiA4cHg7XG4gIHdpZHRoOiAzM3B4O1xufVxuLm1vYmlsZS1tZW51LWJhcnMuaXMtb3BlbiBzcGFuOm50aC1jaGlsZCgyKSB7XG4gIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZykgdHJhbnNsYXRlWSgtNTAlKTtcbiAgdG9wOiAzMXB4O1xuICBsZWZ0OiAxMHB4O1xuICB3aWR0aDogMzNweDtcbn1cbi5tb2JpbGUtbWVudS1iYXJzLmlzLW9wZW4gc3BhbjpudGgtY2hpbGQoMykge1xuICBvcGFjaXR5OiAwO1xufVxuXG4ubW9iaWxlLW1lbnUgLm1lbnUge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDFyZW0gMXJlbSA2cmVtO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBkaXNwbGF5OiBncmlkO1xufVxuLm1vYmlsZS1tZW51IHVsIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luLXRvcDogM3JlbTtcbn1cbi5tb2JpbGUtbWVudSAubWVudS5uZXN0ZWQge1xuICBwYWRkaW5nOiAxcmVtO1xufVxuLm1vYmlsZS1tZW51IC5tZW51LWl0ZW0gYSB7XG4gIHBhZGRpbmc6IDAuNXJlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgY29sb3I6ICNmZWZlZmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uZm9vdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzVFMjI0Njtcbn1cbi5mb290ZXIgLmZwLXRhYmxlQ2VsbCB7XG4gIHBhZGRpbmc6IDA7XG59XG4uZm9vdGVyIC5zb2NpYWwgc3ZnIHtcbiAgZGlzcGxheTogaW5saW5lO1xufVxuXG4uZm9vdGVyLWNvbnRhaW5lciB7XG4gIHBhZGRpbmctcmlnaHQ6IDAuNjY2NjY2NjY2N3JlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjY2NjY2NjY2NjdyZW07XG4gIG1heC13aWR0aDogNzVyZW07XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIHBhZGRpbmctYm90dG9tOiAzcmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmZvb3Rlci1jb250YWluZXIge1xuICAgIHBhZGRpbmctcmlnaHQ6IDFyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAxcmVtO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZm9vdGVyLWNvbnRhaW5lciB7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gIH1cbn1cblxuLmZvb3Rlci1ncmlkIC5pbmZvcm1hdGlvbnMge1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmZvb3Rlci1ncmlkIC5pbmZvcm1hdGlvbnMge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuLmZvb3Rlci1ncmlkIHtcbiAgcGFkZGluZzogMnJlbSAwO1xufVxuLmZvb3Rlci1ncmlkIHAge1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cbi5mb290ZXItZ3JpZCBoMyB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGZvbnQtc2l6ZTogMS42cmVtO1xufVxuLmZvb3Rlci1ncmlkIGg0IHtcbiAgZm9udC1zaXplOiAwLjkzMzMzMzMzMzNyZW07XG59XG4uZm9vdGVyLWdyaWQgcCxcbi5mb290ZXItZ3JpZCBsaSxcbi5mb290ZXItZ3JpZCBhIHtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG4uZm9vdGVyLWdyaWQgLmZhLXVsIHtcbiAgbWFyZ2luLWxlZnQ6IDEuNXJlbTtcbn1cblxuLmZvb3Rlci1jb3B5cmlnaHQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzIzMTMxO1xuICBwYWRkaW5nLWJvdHRvbTogNXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5mb290ZXItY29weXJpZ2h0IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgfVxufVxuXG4uY29weXJpZ2h0LWdyaWQge1xuICBwYWRkaW5nOiAycmVtIDA7XG59XG4uY29weXJpZ2h0LWdyaWQgLmNvcHlyaWdodCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmNvcHlyaWdodC1ncmlkIC5jb3B5cmlnaHQge1xuICAgIGp1c3RpZnktY29udGVudDogc3RhcnQ7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuLmNvcHlyaWdodC1ncmlkIC5jb3B5cmlnaHQgLmxvZ28ge1xuICBmbGV4OiAwIDEgNi42NjY2NjY2NjY3cmVtO1xuICBtYXJnaW4tcmlnaHQ6IDFyZW07XG59XG4uY29weXJpZ2h0LWdyaWQgLmNvcHlyaWdodCAuY29weXJpZ2h0LXRleHQge1xuICBkaXNwbGF5OiBmbGV4O1xufVxuLmNvcHlyaWdodC1ncmlkIC5mb290ZXItbWVudSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmNvcHlyaWdodC1ncmlkIC5mb290ZXItbWVudSB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgfVxufVxuLmNvcHlyaWdodC1ncmlkIC5mb290ZXItbWVudSB1bCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG4uY29weXJpZ2h0LWdyaWQgLmZvb3Rlci1tZW51IGxpIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuLmNvcHlyaWdodC1ncmlkIC5mb290ZXItbWVudSBsaTpub3QoOmxhc3QtY2hpbGQpIGEge1xuICBib3JkZXItcmlnaHQ6IHNvbGlkIDFweCAjZmVmZWZlO1xufVxuLmNvcHlyaWdodC1ncmlkIC5mb290ZXItbWVudSBhIHtcbiAgcGFkZGluZzogMCAxcmVtO1xufVxuLmNvcHlyaWdodC1ncmlkIHAsXG4uY29weXJpZ2h0LWdyaWQgbGksXG4uY29weXJpZ2h0LWdyaWQgYSxcbi5jb3B5cmlnaHQtZ3JpZCB1bCB7XG4gIGNvbG9yOiAjZmVmZWZlO1xuICBtYXJnaW46IDA7XG59XG5cbi5jYWxsLXVzIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB3aWR0aDogMzIwcHg7XG4gIHJpZ2h0OiAwO1xuICB6LWluZGV4OiAxMDE7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZWZlZmU7XG4gIHdpZHRoOiAxMDAlO1xuICBib3R0b206IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNCMkM5MEE7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UsIG9wYWNpdHkgMC40cyBlYXNlO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmNhbGwtdXMge1xuICAgIHdpZHRoOiAzMjBweDtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAyMHB4O1xuICB9XG59XG4uY2FsbC11czpub3QoLnJlYWR5KSB7XG4gIG9wYWNpdHk6IDA7XG59XG4uY2FsbC11cy5kaXNhYmxlZCB7XG4gIG9wYWNpdHk6IDA7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cbi5jYWxsLXVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiIFwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjRzIGVhc2UtaW4tb3V0O1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuY2FsbC11czpiZWZvcmUge1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDIwcHg7XG4gIH1cbn1cbi5jYWxsLXVzLnNsaWRldXA6YmVmb3JlIHtcbiAgYm94LXNoYWRvdzogMCAwIDQwcHggcmdiYSgxMCwgMTAsIDEwLCAwLjQpO1xufVxuLmNhbGwtdXMuYWN0aXZlIC5jYWxsLXVzLWNsb3NlLWJ1dHRvbiB7XG4gIG9wYWNpdHk6IDE7XG59XG4uY2FsbC11cyAuY2FsbC11cy1jbG9zZS1idXR0b24ge1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnMgZWFzZS1pbi1vdXQ7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZGlzcGxheTogZmxleDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbn1cbi5jYWxsLXVzIC5jYWxsLXVzLWNsb3NlLWJ1dHRvbiBzdmcge1xuICBtYXJnaW46IGF1dG87XG59XG4uY2FsbC11cyAuY2xvc2UtYnV0dG9uIHtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGVhc2UtaW4tb3V0O1xuICBtYXJnaW4tcmlnaHQ6IDFyZW07XG4gIG1hcmdpbi10b3A6IDEuM3JlbTtcbn1cbi5jYWxsLXVzIC5jbG9zZS1idXR0b24uaXMtdmlzaWJsZSB7XG4gIG9wYWNpdHk6IDE7XG59XG4uY2FsbC11cyAuY2xvc2UtYnV0dG9uIGkuZmEtdGltZXMge1xuICBmb250LXNpemU6IDEuNzMzMzMzMzMzM3JlbTtcbiAgY29sb3I6ICNmZWZlZmU7XG4gIHRyYW5zaXRpb246IGNvbG9yIDAuMnMgZWFzZS1pbi1vdXQ7XG59XG4uY2FsbC11cyAuY2xvc2UtYnV0dG9uIGkuZmEtdGltZXM6aG92ZXIge1xuICBjb2xvcjogI0IyQzkwQTtcbn1cbi5jYWxsLXVzICNjYWxsLXVzLW9wZW4ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG4uY2FsbC11cyAuYnV0dG9uIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDtcbiAgYm9yZGVyOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjOWUxYzYyO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMC41cmVtO1xuICBib3JkZXItcmFkaXVzOiAxMDBweDtcbiAgbWF4LXdpZHRoOiAxMy4zMzMzMzMzMzMzcmVtO1xuICBtYXJnaW46IDAgYXV0bztcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogMS4wNjY2NjY2NjY3cmVtO1xuICBmb250LXdlaWdodDogNzAwO1xuICBoZWlnaHQ6IDM3cHg7XG59XG4uY2FsbC11cyAuYnV0dG9uOmhvdmVyIHtcbiAgY29sb3I6ICNmZWZlZmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1RTIyNDY7XG59XG4uY2FsbC11cyAuY2FsbC11c19faGVhZGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xufVxuLmNhbGwtdXMgLmNhbGwtdXNfX2hlYWRlciBpLmZhLXBob25lIHtcbiAgZm9udC1zaXplOiAzNXB4O1xuICBsaW5lLWhlaWdodDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IDZweDtcbiAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xufVxuLmNhbGwtdXMgLmNhbGwtdXNfX3RpdGxlIHtcbiAgY29sb3I6ICNmZWZlZmU7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGZvbnQtc2l6ZTogMS4zMzMzMzMzMzMzcmVtO1xuICBwYWRkaW5nOiAxcmVtO1xuICBmb250LXdlaWdodDogODAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdpZHRoOiAxMDAlO1xuICBsZXR0ZXItc3BhY2luZzogMDtcbn1cbi5jYWxsLXVzIC5jYWxsLXVzX190aXRsZSBzdmcge1xuICBkaXNwbGF5OiBpbmxpbmU7XG4gIG1hcmdpbi1yaWdodDogMXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5jYWxsLXVzIC5jYWxsLXVzX190aXRsZSB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgfVxufVxuLmNhbGwtdXMgLmNhbGwtdXNfX2NvbnRlbnQge1xuICBwYWRkaW5nOiAxcmVtO1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAyZnI7XG4gIGdyaWQtdGVtcGxhdGUtYXJlYXM6IFwicHJvZmlsZSB0ZXh0XCIgXCJmb3JtIGZvcm1cIjtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5jYWxsLXVzIC5jYWxsLXVzX19jb250ZW50IHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAyZnIgNGZyO1xuICAgIGdyaWQtdGVtcGxhdGUtYXJlYXM6IFwicHJvZmlsZSB0ZXh0IGZvcm1cIjtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmNhbGwtdXMgLmNhbGwtdXNfX2NvbnRlbnQge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDJmcjtcbiAgICBncmlkLXRlbXBsYXRlLWFyZWFzOiBcInByb2ZpbGUgdGV4dFwiIFwiZm9ybSBmb3JtXCI7XG4gIH1cbn1cbi5jYWxsLXVzIC5jYWxsLXVzX19pbWFnZSB7XG4gIGdyaWQtYXJlYTogcHJvZmlsZTtcbiAgcGFkZGluZy1yaWdodDogMXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cbi5jYWxsLXVzIGltZyB7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbn1cbi5jYWxsLXVzIC5jYWxsLXVzX190ZXh0IHtcbiAgZ3JpZC1hcmVhOiB0ZXh0O1xufVxuLmNhbGwtdXMgLmNhbGwtdXNfX2Zvcm0ge1xuICBncmlkLWFyZWE6IGZvcm07XG4gIHdpZHRoOiAxMDAlO1xufVxuLmNhbGwtdXMgLmNhbGwtdXNfX3RleHQgcCB7XG4gIGxpbmUtaGVpZ2h0OiAxLjM7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgY29sb3I6ICNmZWZlZmU7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG5cbi5jYWxsLXVzLW92ZXJsYXkge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMTAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbiAgb3BhY2l0eTogMDtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDEwLCAxMCwgMTAsIDAuOCk7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuLmNhbGwtdXMtb3ZlcmxheS5zaG93IHtcbiAgb3BhY2l0eTogMC44O1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICBwb2ludGVyLWV2ZW50czogYWxsO1xufVxuLmNhbGwtdXMtb3ZlcmxheS5pcy1hY3RpdmUge1xuICBvcGFjaXR5OiAwLjg7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIHBvaW50ZXItZXZlbnRzOiBhbGw7XG59XG5cbi5wYWdlLXRlbXBsYXRlLW1pa3Jvc2l0ZS1kZW50YWx3ZWVrIC5jYWxsLXVzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzllMWM2Mjtcbn1cbi5wYWdlLXRlbXBsYXRlLW1pa3Jvc2l0ZS1kZW50YWx3ZWVrIC5jYWxsLXVzIC5idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjQjJDOTBBO1xuICBjb2xvcjogI2ZlZmVmZTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cbi5wYWdlLXRlbXBsYXRlLW1pa3Jvc2l0ZS1kZW50YWx3ZWVrIC5jYWxsLXVzIC5idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjQjZDQzAwO1xuICBib3JkZXItY29sb3I6ICNCNkNDMDA7XG59XG4ucGFnZS10ZW1wbGF0ZS1taWtyb3NpdGUtZGVudGFsd2VlayAuY2FsbC11cyBwIHtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG5cbi5icmVhZGNydW1icyB7XG4gIGNvbG9yOiAjNUUyMjQ2O1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBwYWRkaW5nLWJvdHRvbTogMC43cmVtO1xufVxuLmJyZWFkY3J1bWJzIGEge1xuICBjb2xvcjogIzVFMjI0Njtcbn1cbi5icmVhZGNydW1icyBzcGFuOm5vdCguYnJlYWRjcnVtYl9sYXN0KSBhIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLnBhZ2UtaGVhZGVyIHtcbiAgcGFkZGluZzogMXJlbSAzcmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjdmOGY4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG59XG4ucGFnZS1oZWFkZXIud2l0aC1pbWFnZSB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtY29sdW1uLWdhcDogMTVweDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gIGdyaWQtdGVtcGxhdGUtcm93czogYXV0byAxZnI7XG4gIHBhZGRpbmc6IDA7XG4gIGdyaWQtdGVtcGxhdGUtYXJlYXM6IFwiaW1hZ2VcIiBcInRpdGxlXCI7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAucGFnZS1oZWFkZXIud2l0aC1pbWFnZSB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTtcbiAgICBncmlkLXRlbXBsYXRlLXJvd3M6IGluaXRpYWw7XG4gICAgZ3JpZC10ZW1wbGF0ZS1hcmVhczogXCJ0aXRsZSBpbWFnZVwiO1xuICB9XG59XG4ucGFnZS1oZWFkZXIgLmhlYWRlci1pbWFnZSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGdyaWQtYXJlYTogaW1hZ2U7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAucGFnZS1oZWFkZXIgLmhlYWRlci1pbWFnZSB7XG4gICAgaGVpZ2h0OiAzMHJlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnBhZ2UtaGVhZGVyIC5oZWFkZXItaW1hZ2UgaW1nIHtcbiAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cbn1cbi5wYWdlLWhlYWRlciAudGl0bGUtY29udGFpbmVyIHtcbiAgaGVpZ2h0OiAxMDAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgcGFkZGluZzogMXJlbTtcbiAgZmxleC1mbG93OiBjb2x1bW47XG4gIGdyaWQtYXJlYTogdGl0bGU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAucGFnZS1oZWFkZXIgLnRpdGxlLWNvbnRhaW5lciB7XG4gICAgcGFkZGluZzogMCAzcmVtIDAgOHJlbTtcbiAgfVxufVxuLnBhZ2UtaGVhZGVyIC50aXRsZS1jb250YWluZXItZ2FsbGVyeSB7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG4ucGFnZS1oZWFkZXIgLnRpdGxlLWNvbnRhaW5lci1nYWxsZXJ5IC5icmVhZGNydW1icyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbn1cbi5wYWdlLWhlYWRlciBoMSB7XG4gIG1hcmdpbi1yaWdodDogMnJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLnRoYW5reW91LXBhZ2UtaGVhZGVyIHtcbiAgaGVpZ2h0OiAzMy4zMzMzMzMzMzMzcmVtO1xufVxuXG4uc2lkZWJhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlOGU5ZWM7XG4gIHBhZGRpbmc6IDJyZW0gMXJlbTtcbn1cbi5zaWRlYmFyIC5iYWRnZSB7XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG4gIHdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDtcbn1cbi5zaWRlYmFyIC5iYWRnZSBpbWcge1xuICB3aWR0aDogMTIwcHg7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMnMgZWFzZS1pbi1vdXQ7XG59XG4uc2lkZWJhciAuYmFkZ2UgaW1nOmhvdmVyIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjEpO1xufVxuQHN1cHBvcnRzIChwb3NpdGlvbjogc3RpY2t5KSB7XG4gIC5zaWRlYmFyIC5zaWRlYmFyLWZvcm0ge1xuICAgIHBvc2l0aW9uOiBzdGlja3kgIWltcG9ydGFudDtcbiAgICB3aWR0aDogaW5pdGlhbCAhaW1wb3J0YW50O1xuICB9XG59XG4uc2lkZWJhciAuc2lkZWJhci1iYW5uZXIge1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xufVxuLnNpZGViYXIgLnNpZGViYXItYmFubmVyIGltZyB7XG4gIHdpZHRoOiAxMDAlO1xufVxuLnNpZGViYXIgLnNpZGViYXItbGF0ZXN0LXBvc3RzIHtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbn1cbi5zaWRlYmFyIC5zaWRlYmFyLWxhdGVzdC1wb3N0cyAucG9zdC1pdGVtIHtcbiAgcGFkZGluZzogMXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y3ZjhmODtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cbi5zaWRlYmFyIC5zaWRlYmFyLWxhdGVzdC1wb3N0cyAudGl0bGUge1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xufVxuLnNpZGViYXIgLnNpZGViYXItbGF0ZXN0LXBvc3RzIC5idXR0b24ge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLnNpZGViYXIgLnNpZGViYXItbGF0ZXN0LXBvc3RzIC5pbWFnZSB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG4uc2lkZWJhciAuc2lkZWJhci1sYXRlc3QtcG9zdHMgLmNvbnRlbnQge1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG59XG4uc2lkZWJhciAuc2lkZWJhci1sYXRlc3QtcG9zdHMgLmJ1dHRvbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogNTAlO1xuICBtYXJnaW46IDAgMCAwIGF1dG87XG59XG4uc2lkZWJhciAuc2lkZWJhci1sYXRlc3QtcG9zdHMgLnRleHQgcCB7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIGNvbG9yOiAjNDA0NDREO1xufVxuXG4uVHVybktleUNSTSBmaWVsZHNldCB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG59XG5cbmlucHV0W3R5cGU9dGV4dF0ge1xuICBib3gtc2hhZG93OiBub25lO1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDEwMHB4O1xufVxuXG50ZXh0YXJlYSB7XG4gIGJvcmRlci1yYWRpdXM6IDIwcHg7XG59XG5cbi5pbnB1dGZpbGUge1xuICB3aWR0aDogMC4xcHg7XG4gIGhlaWdodDogMC4xcHg7XG4gIG9wYWNpdHk6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogLTE7XG59XG5cbi5pbnB1dGZpbGUgKyBsYWJlbCB7XG4gIGNvbG9yOiAjZmVmZWZlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgcGFkZGluZzogMC40cmVtIDFyZW07XG4gIHdpZHRoOiAxMDAlO1xuICBsaW5lLWhlaWdodDogMjtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMnMgZWFzZS1pbi1vdXQ7XG4gIGJvcmRlci1yYWRpdXM6IDEwMHB4O1xuICBmb250LXNpemU6IDAuOHJlbTtcbiAgcGFkZGluZzogMC41cmVtO1xuICBoZWlnaHQ6IDM3cHg7XG4gIGNvbG9yOiAjNTc1RDY4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4uaW5wdXRmaWxlICsgbGFiZWwgc3BhbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM5RTFDNjI7XG4gIHBhZGRpbmc6IDAuNWVtIDFlbTtcbiAgY29sb3I6ICNmZWZlZmU7XG4gIGJvcmRlci1yYWRpdXM6IDExMDBweDtcbiAgbWFyZ2luLXJpZ2h0OiAwLjVyZW07XG59XG5cbi5pbnB1dGZpbGU6Zm9jdXMgKyBsYWJlbCxcbi5pbnB1dGZpbGUgKyBsYWJlbDpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNFNTAwN0Q7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuXG4ubmYtZXJyb3IuZmllbGQtd3JhcCAubmYtZmllbGQtZWxlbWVudDo6YWZ0ZXIge1xuICB0b3A6IDRweCAhaW1wb3J0YW50O1xuICByaWdodDogOHB4ICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogMjhweCAhaW1wb3J0YW50O1xuICB3aWR0aDogMjhweCAhaW1wb3J0YW50O1xuICBsaW5lLWhlaWdodDogMjhweCAhaW1wb3J0YW50O1xuICBib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5uZi1wYXNzLmZpZWxkLXdyYXAgLm5mLWZpZWxkLWVsZW1lbnQ6YWZ0ZXIge1xuICB0b3A6IDRweCAhaW1wb3J0YW50O1xuICByaWdodDogOHB4ICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogMjhweCAhaW1wb3J0YW50O1xuICB3aWR0aDogMjhweCAhaW1wb3J0YW50O1xuICBsaW5lLWhlaWdodDogMjhweCAhaW1wb3J0YW50O1xufVxuXG4ubmYtZXJyb3ItbXNnLm5mLWVycm9yLWludmFsaWQtZW1haWwsXG4ubmYtZXJyb3ItbXNnLm5mLWVycm9yLWZpZWxkLWVycm9ycyxcbi5uZi1lcnJvci1tc2cubmYtZXJyb3ItcmVxdWlyZWQtZXJyb3Ige1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRTM0RDM0O1xuICBjb2xvcjogI2ZlZmVmZSAhaW1wb3J0YW50O1xuICBwYWRkaW5nOiAwLjJyZW0gMXJlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgYm9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5uZi1lcnJvci5saXN0aW1hZ2Utd3JhcCAubmYtZmllbGQtZWxlbWVudCB1bCxcbi5uZi1lcnJvciAubmluamEtZm9ybXMtZmllbGQge1xuICBib3JkZXI6IDFweCBzb2xpZCAjRTM0RDM0ICFpbXBvcnRhbnQ7XG59XG5cbi5uZi1lcnJvci1tc2cubmYtZXJyb3ItaW52YWxpZC1lbWFpbCxcbi5uZi1lcnJvci1tc2cubmYtZXJyb3ItcmVxdWlyZWQtZXJyb3Ige1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgei1pbmRleDogMztcbiAgcmlnaHQ6IDA7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuICBmb250LXNpemU6IDAuNzMzMzMzMzMzM3JlbTtcbiAgbWluLXdpZHRoOiAyMDBweDtcbiAgZmlsdGVyOiBkcm9wLXNoYWRvdygwIDJweCAycHggcmdiYSgxMCwgMTAsIDEwLCAwLjI1KSk7XG59XG4ubmYtZXJyb3ItbXNnLm5mLWVycm9yLWludmFsaWQtZW1haWw6OmFmdGVyLFxuLm5mLWVycm9yLW1zZy5uZi1lcnJvci1yZXF1aXJlZC1lcnJvcjo6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyLXRvcDogMTVweCBzb2xpZCAjRTM0RDM0O1xuICBib3JkZXItcmlnaHQ6IDE1cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDEwcHg7XG59XG5cbi5uZi1lcnJvci1tc2cubmYtZXJyb3ItZmllbGQtZXJyb3JzIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLm5mLWFmdGVyLWZpZWxkIC5uZi1lcnJvci1tc2cge1xuICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcbn1cblxuLmNhbGwtdXMgbmYtZmllbGQ6Zmlyc3QtY2hpbGQgLm5mLWVycm9yLW1zZy5uZi1lcnJvci1yZXF1aXJlZC1lcnJvciB7XG4gIHJpZ2h0OiAzcmVtO1xufVxuXG4uUmVzcG9uc2UgaW1nIHtcbiAgd2lkdGg6IDIwcHg7XG59XG5cbi5SZXNwb25zZUVycm9yIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2I0MTQyMTtcbiAgY29sb3I6ICNmZWZlZmU7XG4gIHBhZGRpbmc6IDAuNXJlbSAxcmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tdG9wOiAxcmVtO1xufVxuXG4uZm9ybS1rb3p0ZXMgaW5wdXQge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBib3JkZXItcmFkaXVzOiAxMDBweDtcbiAgYm9yZGVyOiBub25lO1xuICBib3gtc2hhZG93OiBub25lO1xufVxuLmZvcm0ta296dGVzIGlucHV0OmZvY3VzIHtcbiAgYm9yZGVyOiBub25lO1xufVxuLmZvcm0ta296dGVzIGlucHV0OjpwbGFjZWhvbGRlciB7XG4gIGNvbG9yOiAjOWZhMWE2O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmZvcm0ta296dGVzIGlucHV0IHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG4uZm9ybS1rb3p0ZXMgLklucHV0QmxvY2sge1xuICBtYXJnaW4tcmlnaHQ6IDFyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZm9ybS1rb3p0ZXMgLmdyaWQuY29sLTEtMyB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgYXV0bztcbiAgfVxufVxuLmZvcm0ta296dGVzIGlucHV0W3R5cGU9U3VibWl0XSB7XG4gIHBhZGRpbmc6IDAuNXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzllMWM2MjtcbiAgbGluZS1oZWlnaHQ6IDEuNDU7XG4gIGNvbG9yOiAjZmVmZWZlO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBtaW4td2lkdGg6IDIwMHB4O1xuICB3aWR0aDogMTAwJTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbWF4LXdpZHRoOiAyMDBweDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBmb250LXNpemU6IDEuMDY2NjY2NjY2N3JlbTtcbn1cbi5mb3JtLWtvenRlcyBpbnB1dFt0eXBlPVN1Ym1pdF06aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNUUyMjQ2O1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKipcXFxuICBCYXNpYyBNb2RhbCBTdHlsZXNcblxcKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4ubW9kYWwge1xuICBmb250LWZhbWlseTogLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBhdmVuaXIgbmV4dCwgYXZlbmlyLCBoZWx2ZXRpY2EgbmV1ZSwgaGVsdmV0aWNhLCB1YnVudHUsIHJvYm90bywgbm90bywgc2Vnb2UgdWksIGFyaWFsLCBzYW5zLXNlcmlmO1xufVxuXG4ubW9kYWxfX292ZXJsYXkge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgYmFja2dyb3VuZDogcmdiYSgxMCwgMTAsIDEwLCAwLjkpO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgei1pbmRleDogOTk5OTk5OTtcbn1cblxuLm1vZGFsX19jb250YWluZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBwYWRkaW5nOiAzMHB4O1xuICBtYXgtaGVpZ2h0OiAxMDB2aDtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBvdmVyZmxvdy15OiBhdXRvO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuLm1vZGFsX19jb250YWluZXIuaW5zdGFncmFtX19jb250YWluZXIge1xuICBtYXgtd2lkdGg6IDUwMHB4O1xufVxuXG4ubW9kYWxfX2hlYWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi5tb2RhbF9fdGl0bGUge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBmb250LXdlaWdodDogNjAwO1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjI1O1xuICBjb2xvcjogIzAwNDQ5ZTtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuLm1vZGFsX19jbG9zZSB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDA7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLm1vZGFsX19oZWFkZXIgLm1vZGFsX19jbG9zZTpiZWZvcmUge1xuICBjb250ZW50OiBcIuKclVwiO1xufVxuXG4ubW9kYWxfX2NvbnRlbnQge1xuICBtYXJnaW4tdG9wOiAycmVtO1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjgpO1xufVxuLm1vZGFsX19jb250ZW50IC5wb3N0LWRhdGEge1xuICBtYXgtd2lkdGg6IDY0MHB4O1xufVxuLm1vZGFsX19jb250ZW50IC5saWtlcywgLm1vZGFsX19jb250ZW50IC5jb21tZW50cywgLm1vZGFsX19jb250ZW50IC5mb2xsb3cge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGNvbG9yOiAjOWUxYzYyO1xuICBwYWRkaW5nOiAxcmVtIDA7XG59XG4ubW9kYWxfX2NvbnRlbnQgLmxpa2VzLCAubW9kYWxfX2NvbnRlbnQgLmNvbW1lbnRzIHtcbiAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKipcXFxuICBEZW1vIEFuaW1hdGlvbiBTdHlsZVxuXFwqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbkBrZXlmcmFtZXMgbW1mYWRlSW4ge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIHRvIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5Aa2V5ZnJhbWVzIG1tZmFkZU91dCB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cbkBrZXlmcmFtZXMgbW1zbGlkZUluIHtcbiAgZnJvbSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDE1JSk7XG4gIH1cbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxufVxuQGtleWZyYW1lcyBtbXNsaWRlT3V0IHtcbiAgZnJvbSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG4gIHRvIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwJSk7XG4gIH1cbn1cbi5taWNyb21vZGFsLXNsaWRlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLm1pY3JvbW9kYWwtc2xpZGUuaXMtb3BlbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4ubWljcm9tb2RhbC1zbGlkZVthcmlhLWhpZGRlbj1mYWxzZV0gLm1vZGFsX19vdmVybGF5IHtcbiAgYW5pbWF0aW9uOiBtbWZhZGVJbiAwLjNzIGN1YmljLWJlemllcigwLCAwLCAwLjIsIDEpO1xufVxuXG4ubWljcm9tb2RhbC1zbGlkZVthcmlhLWhpZGRlbj1mYWxzZV0gLm1vZGFsX19jb250YWluZXIge1xuICBhbmltYXRpb246IG1tc2xpZGVJbiAwLjNzIGN1YmljLWJlemllcigwLCAwLCAwLjIsIDEpO1xufVxuXG4ubWljcm9tb2RhbC1zbGlkZVthcmlhLWhpZGRlbj10cnVlXSAubW9kYWxfX292ZXJsYXkge1xuICBhbmltYXRpb246IG1tZmFkZU91dCAwLjNzIGN1YmljLWJlemllcigwLCAwLCAwLjIsIDEpO1xufVxuXG4ubWljcm9tb2RhbC1zbGlkZVthcmlhLWhpZGRlbj10cnVlXSAubW9kYWxfX2NvbnRhaW5lciB7XG4gIGFuaW1hdGlvbjogbW1zbGlkZU91dCAwLjNzIGN1YmljLWJlemllcigwLCAwLCAwLjIsIDEpO1xufVxuXG4ubWljcm9tb2RhbC1zbGlkZSAubW9kYWxfX2NvbnRhaW5lcixcbi5taWNyb21vZGFsLXNsaWRlIC5tb2RhbF9fb3ZlcmxheSB7XG4gIHdpbGwtY2hhbmdlOiB0cmFuc2Zvcm07XG59XG5cbltkYXRhLXdoYXRpbnB1dD1tb3VzZV0gYTpmb2N1cywgYnV0dG9uOmZvY3VzIFtkYXRhLXdoYXRpbnB1dD10b3VjaF0gYTpmb2N1cyxcbmJ1dHRvbjpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmU7XG59XG5cbi5hbmNob3Ige1xuICBkaXNwbGF5OiBibG9jaztcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogMTAwcHg7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuYW5jaG9yIHtcbiAgICB0b3A6IC0xMDBweDtcbiAgfVxufVxuXG4ucHJpY2UtY2hlY2sge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYThiYzBkO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4ucHJpY2UtY2hlY2s6YWZ0ZXIge1xuICBjb250ZW50OiBcIiBcIjtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNhOGJjMGQ7XG4gIHotaW5kZXg6IDE7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnByaWNlLWNoZWNrOmFmdGVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAucHJpY2UtY2hlY2sge1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIH1cbn1cbi5wcmljZS1jaGVjayAuSW5wdXRCbG9jayB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG4ucHJpY2UtY2hlY2sgLmltYWdlLWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5wcmljZS1jaGVjayAuaW1hZ2UtY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi5wcmljZS1jaGVjayAuaW1hZ2UtY29udGFpbmVyIGltZyB7XG4gIHdpZHRoOiAxMDAlO1xufVxuLnByaWNlLWNoZWNrIC50ZXh0LWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogY29sdW1uO1xuICBwYWRkaW5nOiAycmVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDI7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAucHJpY2UtY2hlY2sgLnRleHQtY29udGFpbmVyIHtcbiAgICB3aWR0aDogNTAlO1xuICAgIHBhZGRpbmctcmlnaHQ6IDEwJTtcbiAgfVxufVxuLnByaWNlLWNoZWNrIC50ZXh0LWNvbnRhaW5lci5mdWxsLXdpZHRoIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuLnByaWNlLWNoZWNrIC50ZXh0LWNvbnRhaW5lci1pbm5lciB7XG4gIHdpZHRoOiAxMDAlO1xufVxuLnByaWNlLWNoZWNrIHAge1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cbi5wcmljZS1jaGVjayB0ZXh0YXJlYSxcbi5wcmljZS1jaGVjayBpbnB1dFt0eXBlPXRleHRdIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTtcbiAgYm9yZGVyOiBub25lO1xuICBib3gtc2hhZG93OiBub25lO1xufVxuLnByaWNlLWNoZWNrIHRleHRhcmVhIHtcbiAgYm9yZGVyLXJhZGl1czogMTVweDtcbn1cbi5wcmljZS1jaGVjayBpbnB1dFt0eXBlPXRleHRdIHtcbiAgYm9yZGVyLXJhZGl1czogMTAwcHg7XG59XG4ucHJpY2UtY2hlY2sgaW5wdXRbdHlwZT1TdWJtaXRdIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzlFMUM2MjtcbiAgY29sb3I6ICNmZWZlZmU7XG4gIHBhZGRpbmc6IDAuNXJlbTtcbiAgd2lkdGg6IDEwMCU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYm9yZGVyOiBub25lO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMnMgZWFzZS1pbi1vdXQ7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGJvcmRlci1yYWRpdXM6IDEwMHB4O1xuICBoZWlnaHQ6IDM3cHg7XG59XG4ucHJpY2UtY2hlY2sgaW5wdXRbdHlwZT1TdWJtaXRdOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzVFMjI0NjtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG4ucHJpY2UtY2hlY2sgLmZpZWxkc2V0IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IG5vbmU7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG4ucHJpY2UtY2hlY2sgLmZpZWxkc2V0LWlubmVyIHtcbiAgZmxleC13cmFwOiB3cmFwO1xuICB3aWR0aDogMTAwJTtcbiAgZmxleDogMSAwIGNhbGMoNTAlIC0gMXJlbSk7XG4gIG1hcmdpbi1yaWdodDogMXJlbTtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAucHJpY2UtY2hlY2sgLmZpZWxkc2V0LWlubmVyIHtcbiAgICBmbGV4OiAxIDAgMTAwJTtcbiAgfVxufVxuLnByaWNlLWNoZWNrIC5JbnB1dEJsb2NrIHtcbiAgd2lkdGg6IDEwMCU7XG59XG4ucHJpY2UtY2hlY2sgLmlucHV0ZmlsZTpmb2N1cyArIGxhYmVsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzVFMjI0NjtcbiAgYm9yZGVyOiAxcHggc29saWQgIzVFMjI0NjtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG4ucHJpY2UtY2hlY2sgdGV4dGFyZWEge1xuICBoZWlnaHQ6IDE0MnB4O1xufVxuLnByaWNlLWNoZWNrLmJsb2NrLWl0ZW0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjQjZDQzAwO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnByaWNlLWNoZWNrLmJsb2NrLWl0ZW0ge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIH1cbn1cbi5wcmljZS1jaGVjay5ibG9jay1pdGVtIC5wYXJhZ3JhcGgtdGl0bGUge1xuICBmb250LXNpemU6IDEuMnJlbTtcbn1cbi5wcmljZS1jaGVjay5ibG9jay1pdGVtIC5pbWFnZS1jb250YWluZXIge1xuICBmbGV4OiAxIDEgNDAlO1xuICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xufVxuLnByaWNlLWNoZWNrLmJsb2NrLWl0ZW0gLmltYWdlLWNvbnRhaW5lciBpbWcge1xuICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuLm1hcHMtY29udGFpbmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLWJvdHRvbTogNzUlO1xuICBoZWlnaHQ6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG1heC13aWR0aDogMTAwJTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5tYXBzLWNvbnRhaW5lciB7XG4gICAgcGFkZGluZy1ib3R0b206IDI1JTtcbiAgfVxufVxuXG4ubWFwcy1jb250YWluZXIgZW1iZWQsXG4ubWFwcy1jb250YWluZXIgaWZyYW1lLFxuLm1hcHMtY29udGFpbmVyIG9iamVjdCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4ubGF0ZXN0LXBvc3RzIHtcbiAgcGFkZGluZzogM3JlbSAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRTBFMkU1O1xufVxuLmxhdGVzdC1wb3N0cyAubGF0ZXN0LXBvc3RzLWNhcm91c2VsLXdyYXBwZXIge1xuICBtaW4td2lkdGg6IDEwMCU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtYXgtd2lkdGg6IDc0Ljk5ODc1ZW0pIHtcbiAgLmxhdGVzdC1wb3N0cyAubGF0ZXN0LXBvc3RzLWNhcm91c2VsLXdyYXBwZXIge1xuICAgIHBhZGRpbmc6IDAgM3JlbTtcbiAgfVxufVxuLmxhdGVzdC1wb3N0cyAub3dsLWNhcm91c2VsIC5vd2wtc3RhZ2Uge1xuICBkaXNwbGF5OiBmbGV4O1xufVxuLmxhdGVzdC1wb3N0cyAub3dsLWNhcm91c2VsIC5vd2wtaXRlbSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXg6IDEgMCBhdXRvO1xufVxuLmxhdGVzdC1wb3N0cyAub3dsLW5hdiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgbGVmdDogLTJyZW07XG4gIHJpZ2h0OiAtMnJlbTtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xufVxuLmxhdGVzdC1wb3N0cyAub3dsLW5hdiBpIHtcbiAgZm9udC1zaXplOiAyLjY2NjY2NjY2NjdyZW07XG59XG4ubGF0ZXN0LXBvc3RzIC5vd2wtc3RhZ2Utb3V0ZXIge1xuICBwYWRkaW5nOiAxcmVtIDA7XG59XG4ubGF0ZXN0LXBvc3RzIC5vd2wtZG90cyB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZzogMXJlbSAwO1xufVxuLmxhdGVzdC1wb3N0cyAub3dsLWRvdHMgc3BhbiB7XG4gIHdpZHRoOiAxMHB4O1xuICBoZWlnaHQ6IDEwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNBNkFCQjU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDAuNHJlbTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xufVxuLmxhdGVzdC1wb3N0cyAub3dsLWRvdHMgLm93bC1kb3QuYWN0aXZlIHNwYW4ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNUUyMjQ2O1xufVxuLmxhdGVzdC1wb3N0cyAuc2xpZGUtaXRlbSB7XG4gIGJvcmRlci1yYWRpdXM6IDE1cHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMTBweCByZ2JhKDY0LCA2OCwgNzcsIDAuMik7XG59XG4ubGF0ZXN0LXBvc3RzIC5zbGlkZS1pdGVtIGEge1xuICBjb2xvcjogIzQwNDQ0RDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IGNvbHVtbjtcbn1cbi5sYXRlc3QtcG9zdHMgLnNsaWRlLWl0ZW0gLmltYWdlIHtcbiAgaGVpZ2h0OiAyMTBweDtcbn1cbi5sYXRlc3QtcG9zdHMgLnNsaWRlLWl0ZW0gLmltYWdlIGltZyB7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAxMDAlO1xufVxuLmxhdGVzdC1wb3N0cyAuc2xpZGUtaXRlbSAuY29udGVudCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogY29sdW1uO1xuICBwYWRkaW5nOiAxcmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlO1xuICB0ZXh0LWFsaWduOiByaWdodDtcbiAgZmxleDogMSAxIGF1dG87XG59XG4ubGF0ZXN0LXBvc3RzIC5zbGlkZS1pdGVtIC50ZXh0LFxuLmxhdGVzdC1wb3N0cyAuc2xpZGUtaXRlbSAudGl0bGUge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuLmxhdGVzdC1wb3N0cyAuc2xpZGUtaXRlbSAuYnV0dG9uIHtcbiAgYm9yZGVyOiAxcHggc29saWQgIzZENzU4NDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgY29sb3I6ICM0MDQ0NEQ7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luOiBhdXRvIDAgMCBhdXRvO1xufVxuLmxhdGVzdC1wb3N0cyAuc2xpZGUtaXRlbSAuYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzZENzU4NDtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG5cbiNicmVha2luZy1wb3B1cCB7XG4gIHotaW5kZXg6IDk5OTk5OTk7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgZGlzcGxheTogbm9uZTtcbn1cbiNicmVha2luZy1wb3B1cCAuYnJlYWtpbmctcG9wdXAtd3JhcHBlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZWZlZmU7XG4gIHBhZGRpbmc6IDMwcHg7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIHdpZHRoOiA5MCU7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gIHotaW5kZXg6IDk5OTk5OTk5O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgI2JyZWFraW5nLXBvcHVwIC5icmVha2luZy1wb3B1cC13cmFwcGVyIHtcbiAgICB3aWR0aDogODAwcHg7XG4gIH1cbn1cbiNicmVha2luZy1wb3B1cCBoMSwgI2JyZWFraW5nLXBvcHVwIGgyIHtcbiAgY29sb3I6ICMxMTExMTE7XG59XG4jYnJlYWtpbmctcG9wdXAgLmJyZWFraW5nLXBvcHVwLXdyYXBwZXIgcCB7XG4gIGxpbmUtaGVpZ2h0OiAxLjM7XG59XG4jYnJlYWtpbmctcG9wdXAgLmJyZWFraW5nLXBvcHVwLXdyYXBwZXIgYSB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuI2JyZWFraW5nLXBvcHVwIC5jbG9zZS1idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiBub25lO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMXJlbTtcbiAgcmlnaHQ6IDFyZW07XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbiNicmVha2luZy1wb3B1cCAuY2xvc2UtYnV0dG9uOmZvY3VzIHtcbiAgYm9yZGVyOiBub25lO1xuICBvdXRsaW5lOiBub25lO1xufVxuI2JyZWFraW5nLXBvcHVwIC5jbG9zZS1idXR0b24gc3ZnIHtcbiAgZmlsbDogIzExMTExMTtcbn1cbiNicmVha2luZy1wb3B1cCAuYnJlYWtpbmctcG9wdXAtb3ZlcmxheSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICB6LWluZGV4OiA5O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOCk7XG59XG5cbi5jb250YWN0LWJhciB7XG4gIHdpZHRoOiAxMDAlO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGJvdHRvbTogMDtcbiAgei1pbmRleDogMTAwMDAwMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5jb250YWN0LWJhciB7XG4gICAgdG9wOiAyNSU7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogaW5pdGlhbDtcbiAgICBib3R0b206IGluaXRpYWw7XG4gIH1cbn1cbi5jb250YWN0LWJhcjo6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KDk0LjMzZGVnLCAjZmY2OTYyIC0xMS43MiUsICNjYTBiNzIgMTA5LjAzJSk7XG4gIHotaW5kZXg6IC0xO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgLmNvbnRhY3QtYmFyOjphZnRlciB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuY29udGFjdC1iYXI6OmFmdGVyIHtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiBpbml0aWFsO1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAxNXB4O1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAxNXB4O1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAuY29udGFjdC1iYXIgLmJ1dHRvbnMtd3JhcHBlciB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KDk0LjMzZGVnLCAjZmY2OTYyIC0xMS43MiUsICNjYTBiNzIgMTA5LjAzJSk7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5jb250YWN0LWJhciAuYnV0dG9ucy13cmFwcGVyIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAuY29udGFjdC1iYXIgaDIge1xuICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIH1cbn1cbkBrZXlmcmFtZXMgbW92ZUxlZnQge1xuICAwJSB7XG4gICAgcmlnaHQ6IDA7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuICAxMDAlIHtcbiAgICByaWdodDogMTAwcHg7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuQGtleWZyYW1lcyBtb3ZlTGVmdEJhY2sge1xuICAwJSB7XG4gICAgcmlnaHQ6IDEwMHB4O1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbiAgMTAwJSB7XG4gICAgcmlnaHQ6IDA7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuQGtleWZyYW1lcyBtb3ZlUmlnaHQge1xuICAwJSB7XG4gICAgbGVmdDogMDtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG4gIDEwMCUge1xuICAgIGxlZnQ6IDEwMHB4O1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cbkBrZXlmcmFtZXMgbW92ZVJpZ2h0QmFjayB7XG4gIDAlIHtcbiAgICBsZWZ0OiAxMDBweDtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIDEwMCUge1xuICAgIGxlZnQ6IDA7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuLmNvbnRhY3QtYmFyIC5pY29ucy1sZWZ0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBhbmltYXRpb246IG1vdmVMZWZ0QmFjayAwLjNzIGZvcndhcmRzIGVhc2UtaW4tb3V0O1xufVxuLmNvbnRhY3QtYmFyIC5pY29ucy1yaWdodCB7XG4gIGFuaW1hdGlvbjogbW92ZUxlZnRCYWNrIDAuM3MgZm9yd2FyZHMgZWFzZS1pbi1vdXQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5jb250YWN0LWJhciBsaSB7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcyBlYXNlLWluLW91dCwgdHJhbnNmb3JtIDAuMTVzIGVhc2UtaW4tb3V0O1xuICBtYXJnaW46IDAgMC4yNXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5jb250YWN0LWJhciBsaSB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuY29udGFjdC1iYXIgbGk6aG92ZXIge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xNSk7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5jb250YWN0LWJhciBsaSxcbi5jb250YWN0LWJhciBidXR0b24ge1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gIH1cbn1cbi5jb250YWN0LWJhciBmaWVsZHNldCB7XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAuY29udGFjdC1iYXIgLlJlc3BvbnNlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAtNXJlbTtcbiAgfVxufVxuLmNvbnRhY3QtYmFyIC5SZXNwb25zZUVycm9yIHtcbiAgbWFyZ2luOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBib3JkZXItcmFkaXVzOiAxMDBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmMDAwMDtcbn1cbi5jb250YWN0LWJhciAuZGl2aWRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZWZlZmU7XG4gIHdpZHRoOiAxcHg7XG4gIHRvcDogMXJlbTtcbiAgYm90dG9tOiAxcmVtO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDEwMCU7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcyBlYXNlLWluLW91dDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgLmNvbnRhY3QtYmFyIC5kaXZpZGVyIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi5jb250YWN0LWJhciAuZm9ybS1vdmVyZmxvdyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgaGVpZ2h0OiAyMjBweDtcbiAgdG9wOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgei1pbmRleDogLTE7XG4gIHRyYW5zaXRpb246IHRvcCAwLjNzIGVhc2UtaW4tb3V0O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgLmNvbnRhY3QtYmFyIC5mb3JtLW92ZXJmbG93IHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoOTQuMzNkZWcsICNmZjY5NjIgLTExLjcyJSwgI2NhMGI3MiAxMDkuMDMlKTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmNvbnRhY3QtYmFyIC5mb3JtLW92ZXJmbG93IHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHRyYW5zaXRpb246IHdpZHRoIDAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgd2lkdGg6IDA7XG4gICAgYm90dG9tOiBpbml0aWFsO1xuICAgIGhlaWdodDogaW5pdGlhbDtcbiAgICB0b3A6IDFyZW07XG4gICAgbGVmdDogY2FsYygxMDAlICsgMXJlbSk7XG4gICAgei1pbmRleDogaW5pdGlhbDtcbiAgfVxufVxuLmNvbnRhY3QtYmFyIC5mb3JtLXdyYXBwZXIge1xuICB3aWR0aDogMTAwJTtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzIGVhc2UtaW4tb3V0O1xuICBwYWRkaW5nLXRvcDogMC41cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmNvbnRhY3QtYmFyIC5mb3JtLXdyYXBwZXIge1xuICAgIHBhZGRpbmctdG9wOiBpbml0aWFsO1xuICAgIHdpZHRoOiAyNDBweDtcbiAgfVxufVxuLmNvbnRhY3QtYmFyIGlucHV0IHtcbiAgaGVpZ2h0OiBpbml0aWFsO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NCwgMjU0LCAyNTQsIDAuOCk7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuY29udGFjdC1iYXIgaW5wdXQge1xuICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgfVxufVxuLmNvbnRhY3QtYmFyIGlucHV0OmZvY3VzIHtcbiAgYm9yZGVyOiBub25lO1xufVxuLmNvbnRhY3QtYmFyIGlucHV0W3R5cGU9dGV4dF0ge1xuICBoZWlnaHQ6IDQwcHg7XG59XG4uY29udGFjdC1iYXIgaW5wdXQ6OnBsYWNlaG9sZGVyIHtcbiAgY29sb3I6ICNlZDQzNzI7XG4gIGZvbnQtc2l6ZTogMS4wNjY2NjY2NjY3cmVtO1xuICBmb250LXdlaWdodDogNDAwO1xufVxuLmNvbnRhY3QtYmFyIC5JbnB1dEJsb2NrIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5jb250YWN0LWJhciAuSW5wdXRCbG9jayB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuLmNvbnRhY3QtYmFyIC5jb250YWN0LWJ1dHRvbi13cmFwcGVyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctcmlnaHQ6IDVweDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5jb250YWN0LWJhciAuY29udGFjdC1idXR0b24td3JhcHBlciB7XG4gICAgd2lkdGg6IGluaXRpYWw7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiBpbml0aWFsO1xuICB9XG59XG4uY29udGFjdC1iYXIgLmNvbnRhY3QtYnV0dG9uIHtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjNzIGVhc2UtaW4tb3V0O1xuICBsaW5lLWhlaWdodDogMi40O1xuICBoZWlnaHQ6IDQwcHg7XG4gIHdpZHRoOiAxMDAlO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmNvbnRhY3QtYmFyIC5jb250YWN0LWJ1dHRvbiB7XG4gICAgaGVpZ2h0OiAxNzZweDtcbiAgICBtYXJnaW46IDA7XG4gIH1cbn1cbi5jb250YWN0LWJhciAuY29udGFjdC1idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjQjZDQzAwO1xufVxuLmNvbnRhY3QtYmFyIC5jb250YWN0LWJ1dHRvbjpob3ZlciBzcGFuIHtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG4uY29udGFjdC1iYXIgLm1vYmlsZS1mb3JtLWJ1dHRvbiB7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xufVxuLmNvbnRhY3QtYmFyIC5zdWJtaXQtYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTtcbiAgY29sb3I6ICNlZDQzNzI7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHdpZHRoOiAxMDAlO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4zcyBlYXNlLWluLW91dDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5jb250YWN0LWJhciAuc3VibWl0LWJ1dHRvbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cbi5jb250YWN0LWJhciAuc3VibWl0LWJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNCNkNDMDA7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuLmNvbnRhY3QtYmFyIC5zdWJtaXQtYnV0dG9uLW1vYmlsZSB7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlO1xuICBjb2xvcjogI2VkNDM3MjtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuM3MgZWFzZS1pbi1vdXQ7XG4gIGhlaWdodDogNDBweCAhaW1wb3J0YW50O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmNvbnRhY3QtYmFyIC5zdWJtaXQtYnV0dG9uLW1vYmlsZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG4uY29udGFjdC1iYXIgaW5wdXQsXG4uY29udGFjdC1iYXIgLnN1Ym1pdC1idXR0b24ge1xuICBmb250LXNpemU6IDEuMTMzMzMzMzMzM3JlbTtcbiAgcGFkZGluZzogMC41cmVtIDFyZW07XG4gIGJvcmRlci1yYWRpdXM6IDIwMHB4O1xuICBsaW5lLWhlaWdodDogMS4yO1xufVxuLmNvbnRhY3QtYmFyLmlzLW9wZW5lZDo6YWZ0ZXIge1xuICBoZWlnaHQ6IDI4NXB4O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmNvbnRhY3QtYmFyLmlzLW9wZW5lZDo6YWZ0ZXIge1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB3aWR0aDogY2FsYygxMDAlICsgMjQwcHggKyAycmVtKTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmNvbnRhY3QtYmFyLmlzLW9wZW5lZCBsaSB7XG4gICAgb3BhY2l0eTogMC42O1xuICB9XG59XG4uY29udGFjdC1iYXIuaXMtb3BlbmVkIC5mb3JtLW92ZXJmbG93IHtcbiAgd2lkdGg6IDEwMCU7XG4gIHRvcDogLTIyMHB4O1xuICBwb2ludGVyLWV2ZW50czogYWxsO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmNvbnRhY3QtYmFyLmlzLW9wZW5lZCAuZm9ybS1vdmVyZmxvdyB7XG4gICAgaGVpZ2h0OiBpbml0aWFsO1xuICAgIHRvcDogMXJlbTtcbiAgICB3aWR0aDogMjQwcHg7XG4gIH1cbn1cbi5jb250YWN0LWJhci5pcy1vcGVuZWQgLmRpdmlkZXIsXG4uY29udGFjdC1iYXIuaXMtb3BlbmVkIC5mb3JtLXdyYXBwZXIge1xuICBvcGFjaXR5OiAxO1xufVxuLmNvbnRhY3QtYmFyLmlzLW9wZW5lZCAuY29udGFjdC1idXR0b24td3JhcHBlciB7XG4gIGZsZXg6IDEgMCAxMDAlO1xufVxuLmNvbnRhY3QtYmFyLmlzLW9wZW5lZCAubW9iaWxlLWZvcm0tYnV0dG9uIHtcbiAgcmlnaHQ6IDFyZW07XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMXJlbTtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbn1cbi5jb250YWN0LWJhci5pcy1vcGVuZWQgLmljb25zLWxlZnQsXG4uY29udGFjdC1iYXIuaXMtb3BlbmVkIC5pY29ucy1yaWdodCB7XG4gIHRyYW5zaXRpb246IG1hcmdpbiAwLjNzIGVhc2UtaW4tb3V0O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgLmNvbnRhY3QtYmFyLmlzLW9wZW5lZCAuaWNvbnMtbGVmdCB7XG4gICAgYW5pbWF0aW9uOiBtb3ZlTGVmdCAwLjNzIGZvcndhcmRzIGVhc2UtaW4tb3V0O1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAuY29udGFjdC1iYXIuaXMtb3BlbmVkIC5pY29ucy1yaWdodCB7XG4gICAgYW5pbWF0aW9uOiBtb3ZlTGVmdCAwLjNzIGZvcndhcmRzIGVhc2UtaW4tb3V0O1xuICB9XG59XG5cbi5jb250YWN0LWJhci1vdmVybGF5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxMCwgMTAsIDEwLCAwLjgpO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHotaW5kZXg6IDEwMDAwMDtcbiAgdG9wOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzIGVhc2UtaW4tb3V0O1xufVxuXG4uY29udGFjdC1iYXIuaXMtb3BlbmVkICsgLmNvbnRhY3QtYmFyLW92ZXJsYXkge1xuICBvcGFjaXR5OiAxO1xuICBwb2ludGVyLWV2ZW50czogYWxsO1xufVxuXG4ub2ZmZXIgc21hbGwge1xuICBtYXJnaW4tdG9wOiAxcmVtO1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi5vZmZlciBociB7XG4gIG1heC13aWR0aDogaW5pdGlhbDtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KDkwZGVnLCAjZmZmLCAjZmZmIDY1JSwgdHJhbnNwYXJlbnQgMCwgdHJhbnNwYXJlbnQpO1xuICBiYWNrZ3JvdW5kLXNpemU6IDIwcHggMXB4O1xuICBib3JkZXI6IG5vbmU7XG4gIGhlaWdodDogMXB4O1xufVxuXG50ZFtkYXRhLXJvdy1pbmRleD1cIjBcIl0ge1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAxNXB4O1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMTVweDtcbiAgYm9yZGVyLWJvdHRvbTogM3B4IHNvbGlkICNmZmYgIWltcG9ydGFudDtcbn1cblxudHIud3BkdC1jZWxsLXJvdzpsYXN0LWNoaWxkIHRkIHtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMTVweDtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDE1cHg7XG59XG5cbnRkW2RhdGEtY29sLWluZGV4PVwiMFwiXSB7XG4gIHdpZHRoOiAxMDBweCAhaW1wb3J0YW50O1xuICBib3JkZXItcmlnaHQtY29sb3I6IG5vbmUgIWltcG9ydGFudDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIHRkW2RhdGEtY29sLWluZGV4PVwiMFwiXSB7XG4gICAgd2lkdGg6IDIwMHB4ICFpbXBvcnRhbnQ7XG4gIH1cbn1cbnRkW2RhdGEtY29sLWluZGV4PVwiMFwiXS5tZXJnZWQtY2VsbCB7XG4gIHdpZHRoOiBpbml0aWFsICFpbXBvcnRhbnQ7XG59XG5cbi5wYWdlLXRlbXBsYXRlLWZyb250IC5tYWluLWdyaWQge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuc2l0ZS1mcm9udC1oZWFkZXIge1xuICAgIGhlaWdodDogMTAwdmg7XG4gIH1cbn1cbi5zaXRlLWZyb250LWhlYWRlciAuZnJvbnQtcGFnZS1yb3RhdG9yIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuLnNpdGUtZnJvbnQtaGVhZGVyIC5zcGxpZGVfX3RyYWNrLFxuLnNpdGUtZnJvbnQtaGVhZGVyIC5zcGxpZGVfX2xpc3QsXG4uc2l0ZS1mcm9udC1oZWFkZXIgLnNwbGlkZV9fc2xpZGUge1xuICBoZWlnaHQ6IDEwMCU7XG59XG4uc2l0ZS1mcm9udC1oZWFkZXIgLnNwbGlkZV9fcGFnaW5hdGlvbiB7XG4gIGJvdHRvbTogM3JlbTtcbn1cbi5zaXRlLWZyb250LWhlYWRlciAuc2xpZGUtaXRlbSB7XG4gIGhlaWdodDogMTAwJTtcbn1cbi5zaXRlLWZyb250LWhlYWRlciAudmlkZW8tY29udGVudCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5zaXRlLWZyb250LWhlYWRlciAudmlkZW8tY29udGVudCB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxufVxuLnNpdGUtZnJvbnQtaGVhZGVyIC52aWRlby1jb250ZW50OjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiIFwiO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgcmdiYSg5NCwgMzQsIDcwLCAwKSAwJSwgIzVlMjI0NiAxMDAlKTtcbiAgei1pbmRleDogNTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gIC5zaXRlLWZyb250LWhlYWRlciAudmlkZW8tY29udGVudDo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnNpdGUtZnJvbnQtaGVhZGVyIC52aWRlby1jb250ZW50IHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cbn1cbi5zaXRlLWZyb250LWhlYWRlciAudmlkZW8tY29udGVudCBhLFxuLnNpdGUtZnJvbnQtaGVhZGVyIC52aWRlby1jb250ZW50IGltZyB7XG4gIHdpZHRoOiAxMDAlO1xufVxuLnNpdGUtZnJvbnQtaGVhZGVyIC52aWRlby1jb250ZW50IHZpZGVvIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG4gIG9iamVjdC1wb3NpdGlvbjogdG9wIGNlbnRlcjtcbn1cbi5zaXRlLWZyb250LWhlYWRlciAudmlkZW8tY29udGVudCAucGF1c2UtYnV0dG9uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDlyZW07XG4gIHJpZ2h0OiAycmVtO1xuICBjb2xvcjogcmdiYSgyNTQsIDI1NCwgMjU0LCAwLjUpO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAuc2l0ZS1mcm9udC1oZWFkZXIgLnZpZGVvLWNvbnRlbnQgLnBhdXNlLWJ1dHRvbiB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG4uc2l0ZS1mcm9udC1oZWFkZXIgLnZpZGVvLWNvbnRlbnQgLnBhdXNlLWJ1dHRvbiAjcGF1c2UtYnV0dG9uIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBmb250LXNpemU6IDJyZW07XG59XG4uc2l0ZS1mcm9udC1oZWFkZXIgLnRleHQge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoMTI5LjdkZWcsICM3ZTFmNTQgMCUsICM1ZTIyNDYgMTAwJSk7XG4gIGJvcmRlci1yYWRpdXM6IDE1cHg7XG4gIHRvcDogLTJyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuc2l0ZS1mcm9udC1oZWFkZXIgLnRleHQge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgbWF4LXdpZHRoOiAzMy4zMzMzMzMzMzMzcmVtO1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICByaWdodDogMjUlO1xuICB9XG59XG4uc2l0ZS1mcm9udC1oZWFkZXIgLnRleHQgaDEge1xuICBsaW5lLWhlaWdodDogMS4yO1xufVxuLnNpdGUtZnJvbnQtaGVhZGVyIC50ZXh0IHVsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tbGVmdDogM3JlbTtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbn1cbi5zaXRlLWZyb250LWhlYWRlciAudGV4dCBzdmcge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IC0zcmVtO1xuICB0b3A6IC0wLjVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuc2l0ZS1mcm9udC1oZWFkZXIgLnRleHQgc3ZnIHtcbiAgICB0b3A6IC0wLjVyZW07XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLnNpdGUtZnJvbnQtaGVhZGVyIC50ZXh0IHN2ZyB7XG4gICAgdG9wOiBpbml0aWFsO1xuICB9XG59XG4uc2l0ZS1mcm9udC1oZWFkZXIgLnRleHQgLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgxMzBkZWcsICNmZjY5NjIgMCUsICNjYTBiNzIgMTAwJSk7XG4gIGZvbnQtc2l6ZTogMS4ycmVtO1xuICBwYWRkaW5nOiAwLjdyZW0gMnJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aWR0aDogMTAwJTtcbiAgYm9yZGVyLXJhZGl1czogMjAwcHg7XG4gIHRleHQtdHJhbnNmb3JtOiB1bnNldDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5zaXRlLWZyb250LWhlYWRlciAudGV4dCAuYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcbiAgICBmb250LXNpemU6IDEuMzMzMzMzMzMzM3JlbTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAuc2l0ZS1mcm9udC1oZWFkZXIgLnRleHQgLmJ1dHRvbiB7XG4gICAgZm9udC1zaXplOiAxLjZyZW07XG4gIH1cbn1cbi5zaXRlLWZyb250LWhlYWRlciAudGV4dCAuYnV0dG9uOmhvdmVyIHtcbiAgY29sb3I6ICNmZWZlZmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlZDQzNzI7XG59XG4uc2l0ZS1mcm9udC1oZWFkZXIgLmJhZGdlLXdyYXBwZXIge1xuICB6LWluZGV4OiAxMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5zaXRlLWZyb250LWhlYWRlciAuYmFkZ2Utd3JhcHBlciB7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAwO1xuICAgIHRvcDogMTFyZW07XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLnNpdGUtZnJvbnQtaGVhZGVyIC5iYWRnZS13cmFwcGVyIHtcbiAgICB0b3A6IDExcmVtO1xuICB9XG59XG4uc2l0ZS1mcm9udC1oZWFkZXIgLmJhZGdlLXdyYXBwZXIgLmJhZGdlIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuc2l0ZS1mcm9udC1oZWFkZXIgLmJhZGdlLXdyYXBwZXIgLmJhZGdlIHtcbiAgICB3aWR0aDogMjgwcHg7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLnNpdGUtZnJvbnQtaGVhZGVyIC5iYWRnZS13cmFwcGVyIC5iYWRnZSB7XG4gICAgd2lkdGg6IDM4MHB4O1xuICB9XG59XG4uc2l0ZS1mcm9udC1oZWFkZXIgLmZvcm0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDE4MiwgMjA0LCAwLCAwLjgpO1xuICB6LWluZGV4OiAxMDtcbn1cbi5zaXRlLWZyb250LWhlYWRlciAuZm9ybSBmb3JtIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cbi5zaXRlLWZyb250LWhlYWRlciAuZm9ybSAuYnV0dG9uIHtcbiAgYm9yZGVyLXJhZGl1czogMjAwcHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbn1cbi5zaXRlLWZyb250LWhlYWRlciAuZm9ybSBpbnB1dCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHBhZGRpbmc6IDAuM3JlbSAxcmVtO1xuICBsaW5lLWhlaWdodDogMS41NTtcbiAgYm9yZGVyOiBub25lO1xuICBmb250LXNpemU6IDEuMnJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5zaXRlLWZyb250LWhlYWRlciBmaWVsZHNldCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBnYXA6IDFyZW07XG4gIH1cbn1cbi5zaXRlLWZyb250LWhlYWRlciAuSW5wdXRCbG9jayB7XG4gIGZsZXg6IDEgMCBjYWxjKDI1JSAtIDFyZW0pO1xufVxuLnNpdGUtZnJvbnQtaGVhZGVyIC5mb3JtLWNvbnRlbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDI7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAuc2l0ZS1mcm9udC1oZWFkZXIgLklucHV0QmxvY2sge1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIH1cbn1cblxuLmRlbnRhbHdlZWstaGVhZGVyIHtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuLmRlbnRhbHdlZWstaGVhZGVyIC5iZy1pbWFnZSB7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xuICBvYmplY3QtcG9zaXRpb246IGNlbnRlcjtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbn1cbi5kZW50YWx3ZWVrLWhlYWRlciAubG9nbyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gIHdpZHRoOiAyNi42NjY2NjY2NjY3cmVtO1xufVxuXG4uZGVudGFsLWxvZ28ge1xuICBtYXJnaW46IDAgYXV0bztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgdG9wOiA0MCU7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG59XG5AbWVkaWEgYWxsIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IGFjdGl2ZSkgYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAuZGVudGFsLWxvZ28ge1xuICAgIHRvcDogYXV0bztcbiAgfVxufVxuLmRlbnRhbC1sb2dvIGltZyB7XG4gIHdpZHRoOiA3MCUgIWltcG9ydGFudDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5kZW50YWwtbG9nbyBpbWcge1xuICAgIHdpZHRoOiAzODRweCAhaW1wb3J0YW50O1xuICB9XG59XG4uZGVudGFsLWxvZ28gLmJ1dHRvbi1pbnRlcmVzdGVkIHtcbiAgcGFkZGluZzogMC41cmVtIDFyZW07XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgbWFyZ2luLXRvcDogMXJlbTtcbiAgZm9udC1mYW1pbHk6IFwiUm9ib3RvIFNsYWJcIiwgc2VyaWY7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiA5OTk5OTk5O1xuICBib3JkZXI6IDJweCBzb2xpZCAjN2QyNjU5O1xuICBjb2xvcjogIzdkMjY1OTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5kZW50YWwtbG9nbyAuYnV0dG9uLWludGVyZXN0ZWQge1xuICAgIGNvbG9yOiAjZmVmZWZlO1xuICAgIGJvcmRlcjogMnB4IHNvbGlkICNmZWZlZmU7XG4gIH1cbn1cblxuLml0ZW0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuaXRlbSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG4uaXRlbSAuZGVza3RvcC1pbWFnZSB7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAuaXRlbSAuZGVza3RvcC1pbWFnZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuaXRlbSAubW9iaWxlLWltYWdlIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi5pdGVtIC50aXRsZS1jb250YWluZXIge1xuICBwYWRkaW5nOiAxcmVtIDFyZW0gM3JlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLml0ZW0gLnRpdGxlLWNvbnRhaW5lci5kZW50YWwtd2Vlay10aXRsZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuaXRlbSAudGl0bGUtY29udGFpbmVyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEyMDBweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAxM3JlbTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgIHBhZGRpbmc6IDAgMnJlbTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuaXRlbSAudGl0bGUtY29udGFpbmVyIHtcbiAgICB3aWR0aDogMTIwMHB4O1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuaXRlbSAudGl0bGUtY29udGFpbmVyIC50aXRsZS1jb250YWluZXItaW5uZXIge1xuICAgIHdpZHRoOiA1MDBweDtcbiAgfVxufVxuLml0ZW0gLnRpdGxlLWNvbnRhaW5lciBoMixcbi5pdGVtIC50aXRsZS1jb250YWluZXIgaDMge1xuICBjb2xvcjogIzVFMjI0Njtcbn1cbi5pdGVtIC50aXRsZS1jb250YWluZXIgaDEsXG4uaXRlbSAudGl0bGUtY29udGFpbmVyIGgyIHtcbiAgZm9udC1zaXplOiAyMnB4O1xuICBsaW5lLWhlaWdodDogMS4zO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLml0ZW0gLnRpdGxlLWNvbnRhaW5lciBoMSxcbi5pdGVtIC50aXRsZS1jb250YWluZXIgaDIge1xuICAgIGZvbnQtc2l6ZTogMzJweDtcbiAgfVxufVxuLml0ZW0gLnRpdGxlLWNvbnRhaW5lciBoMyB7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cbi5pdGVtIC5idXR0b24ge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1RTIyNDY7XG59XG4uaXRlbSAuYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzdkMjY1OTtcbn1cbi5pdGVtIC5iYWRnZSB7XG4gIHotaW5kZXg6IDEwMDtcbn1cbi5pdGVtLm51bWJlci0xIC5iYWRnZSB7XG4gIHRvcDogMXJlbTtcbiAgcmlnaHQ6IDFyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuaXRlbS5udW1iZXItMSAuYmFkZ2Uge1xuICAgIHRvcDogaW5pdGlhbDtcbiAgICBib3R0b206IDI1cmVtO1xuICAgIHJpZ2h0OiA4JTtcbiAgfVxufVxuLml0ZW0ubnVtYmVyLTIgLmJhZGdlIHtcbiAgbGVmdDogMXJlbTtcbiAgdG9wOiAxcmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLml0ZW0ubnVtYmVyLTIgLmJhZGdlIHtcbiAgICBsZWZ0OiBpbml0aWFsO1xuICAgIHRvcDogaW5pdGlhbDtcbiAgICByaWdodDogOCU7XG4gICAgYm90dG9tOiAxMHJlbTtcbiAgfVxufVxuLml0ZW0ubnVtYmVyLTMgLmJhZGdlIHtcbiAgdG9wOiAxcmVtO1xuICByaWdodDogMXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5pdGVtLm51bWJlci0zIC5iYWRnZSB7XG4gICAgdG9wOiBpbml0aWFsO1xuICAgIHJpZ2h0OiAxMCU7XG4gICAgYm90dG9tOiAxNHJlbTtcbiAgfVxufVxuXG4uZnJvbnRwYWdlLWZvcm0ge1xuICBwYWRkaW5nOiAycmVtIDA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDE3OCwgMjAxLCAxMCwgMC44KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5mcm9udHBhZ2UtZm9ybSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IDI7XG4gICAgYm90dG9tOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG4uZnJvbnRwYWdlLWZvcm0gLklucHV0QmxvY2sge1xuICBmbG9hdDogbGVmdDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMzhweDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5mcm9udHBhZ2UtZm9ybSAuSW5wdXRCbG9jayB7XG4gICAgd2lkdGg6IDI1JTtcbiAgICBwYWRkaW5nOiAwIDAuNXJlbTtcbiAgfVxufVxuLmZyb250cGFnZS1mb3JtIC5yb3cge1xuICBtYXgtd2lkdGg6IDYyLjVyZW07XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuLmZyb250cGFnZS1mb3JtIC5mb3JtLXdyYXBwZXIge1xuICBkaXNwbGF5OiBmbGV4O1xufVxuLmZyb250cGFnZS1mb3JtIGgyIHtcbiAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgY29sb3I6ICNmZWZlZmU7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAtM3B4O1xufVxuLmZyb250cGFnZS1mb3JtIGgzIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgbGluZS1oZWlnaHQ6IDQycHg7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGZvbnQtc2l6ZTogMS4xcmVtO1xuICBsaW5lLWhlaWdodDogMS4zO1xuICBjb2xvcjogIzQwNDQ0RDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5mcm9udHBhZ2UtZm9ybSBoMyB7XG4gICAgY29sb3I6ICNmZWZlZmU7XG4gIH1cbn1cbi5mcm9udHBhZ2UtZm9ybSAubWVkaXVtLTgge1xuICBwYWRkaW5nOiAwO1xufVxuLmZyb250cGFnZS1mb3JtIGlucHV0IHtcbiAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xufVxuLmZyb250cGFnZS1mb3JtIGlucHV0W3R5cGU9dGV4dF0sXG4uZnJvbnRwYWdlLWZvcm0gaW5wdXRbdHlwZT1lbWFpbF0sXG4uZnJvbnRwYWdlLWZvcm0gaW5wdXRbdHlwZT10ZWxdIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTQsIDI1NCwgMjU0LCAwLjkpO1xuICBib3JkZXI6IG5vbmU7XG4gIGNvbG9yOiAjNDA0NDRkO1xuICBib3JkZXItcmFkaXVzOiAxMDBweDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5mcm9udHBhZ2UtZm9ybSBpbnB1dFt0eXBlPXRleHRdLFxuLmZyb250cGFnZS1mb3JtIGlucHV0W3R5cGU9ZW1haWxdLFxuLmZyb250cGFnZS1mb3JtIGlucHV0W3R5cGU9dGVsXSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuLmZyb250cGFnZS1mb3JtIGlucHV0W3R5cGU9dGV4dF06OnBsYWNlaG9sZGVyLFxuLmZyb250cGFnZS1mb3JtIGlucHV0W3R5cGU9ZW1haWxdOjpwbGFjZWhvbGRlcixcbi5mcm9udHBhZ2UtZm9ybSBpbnB1dFt0eXBlPXRlbF06OnBsYWNlaG9sZGVyIHtcbiAgY29sb3I6ICM2RDc1ODQ7XG59XG4uZnJvbnRwYWdlLWZvcm0gaW5wdXRbdHlwZT10ZXh0XTpmb2N1cyxcbi5mcm9udHBhZ2UtZm9ybSBpbnB1dFt0eXBlPWVtYWlsXTpmb2N1cyxcbi5mcm9udHBhZ2UtZm9ybSBpbnB1dFt0eXBlPXRlbF06Zm9jdXMge1xuICBib3gtc2hhZG93OiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlO1xufVxuLmZyb250cGFnZS1mb3JtIGlucHV0W3R5cGU9dGV4dF06aG92ZXIsXG4uZnJvbnRwYWdlLWZvcm0gaW5wdXRbdHlwZT1lbWFpbF06aG92ZXIsXG4uZnJvbnRwYWdlLWZvcm0gaW5wdXRbdHlwZT10ZWxdOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTtcbn1cbi5mcm9udHBhZ2UtZm9ybSBpbnB1dFt0eXBlPVN1Ym1pdF0ge1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMC40cmVtIDA7XG59XG4uZnJvbnRwYWdlLWZvcm0gLmZvcm1zIC5jb2x1bW5zIHtcbiAgcGFkZGluZzogMC4ycmVtO1xufVxuLmZyb250cGFnZS1mb3JtIC5mb3JtcyB7XG4gIGZsZXg6IDEgMCBhdXRvO1xufVxuLmZyb250cGFnZS1mb3JtIC5idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBoZWlnaHQ6IDM3cHg7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0O1xuICBib3JkZXI6IDFweCBzb2xpZCAjNkQ3NTg0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNkQ3NTg0O1xuICBib3JkZXItcmFkaXVzOiAxMDBweDtcbiAgZm9udC13ZWlnaHQ6IDgwMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5mcm9udHBhZ2UtZm9ybSAuYnV0dG9uIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG4uZnJvbnRwYWdlLWZvcm0gLmJ1dHRvbjpob3ZlciB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM1RTIyNDY7XG4gIGNvbG9yOiAjZmVmZWZlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNUUyMjQ2O1xufVxuXG4ubWljcm8tc2xpZGVyIHtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuLm1pY3JvLXNsaWRlciAuaG9tZS1zbGlkZXIsXG4ubWljcm8tc2xpZGVyIC5vd2wtc3RhZ2Utb3V0ZXIsXG4ubWljcm8tc2xpZGVyIC5vd2wtc3RhZ2UsXG4ubWljcm8tc2xpZGVyIC5vd2wtaXRlbSxcbi5taWNyby1zbGlkZXIgLnNsaWRlLWl0ZW0sXG4ubWljcm8tc2xpZGVyIC5zbGlkZS1jb250YWluZXIge1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbi5wcmVmYWNlIHtcbiAgcGFkZGluZzogM3JlbSAwO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxMDksIDExNywgMTMyLCAwLjg1KTtcbn1cbi5wcmVmYWNlIHAge1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cbi5wcmVmYWNlIC5wcmVmYWNlLXRleHQge1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xufVxuLnByZWZhY2UgLnByZWZhY2UtdGV4dCBwIHtcbiAgbGluZS1oZWlnaHQ6IDEuODtcbiAgZm9udC1zaXplOiAxNnB4O1xufVxuLnByZWZhY2UgLnByZWZhY2UtbGlzdCB7XG4gIG1hcmdpbjogMDtcbn1cbi5wcmVmYWNlIC5wcmVmYWNlLWxpc3QgLnByZWZhY2UtaXRlbSB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbi1ib3R0b206IDNyZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5wcmVmYWNlIC5wcmVmYWNlLWxpc3QgLnByZWZhY2UtaXRlbSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuICB9XG59XG4ucHJlZmFjZSAucHJlZmFjZS1saXN0IC5wcmVmYWNlLWl0ZW0gLnRleHQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIHBhZGRpbmctbGVmdDogODBweDtcbn1cbi5wcmVmYWNlIC5wcmVmYWNlLWxpc3QgLnByZWZhY2UtaXRlbSAuaW1hZ2Uge1xuICB3aWR0aDogNTBweDtcbiAgaGVpZ2h0OiA1MHB4O1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmbG9hdDogbGVmdDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbi5wcmVmYWNlIC5wcmVmYWNlLWxpc3QgLnByZWZhY2UtaXRlbSAuaW1hZ2UgaW1nIHtcbiAgd2lkdGg6IDUwcHg7XG59XG5cbi5hYm91dCB7XG4gIHBhZGRpbmc6IDRyZW0gMDtcbn1cbi5hYm91dCAucm93OmhvdmVyIC5pbWFnZS1jb250YWluZXIgaW1nIHtcbiAgZmlsdGVyOiBncmF5c2NhbGUoMCUpO1xufVxuLmFib3V0IC5yb3cucm9zYSB7XG4gIG1hcmdpbi1ib3R0b206IDNyZW07XG59XG4uYWJvdXQgLnRleHQtY29udGFpbmVyLFxuLmFib3V0IC5pbWFnZS1jb250YWluZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4uYWJvdXQgLmltYWdlLWNvbnRhaW5lciB7XG4gIHBhZGRpbmc6IDAgMXJlbTtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cbi5hYm91dCAuaW1hZ2UtY29udGFpbmVyIGgyIHtcbiAgZm9udC1zaXplOiAzMHB4O1xuICBsaW5lLWhlaWdodDogMS4yO1xuICBtYXJnaW4tYm90dG9tOiAzcmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4uYWJvdXQgLmltYWdlLWNvbnRhaW5lciBpbWcge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwIGF1dG87XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIHRyYW5zaXRpb246IGZpbHRlciAwLjJzIGVhc2UtaW4tb3V0O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmFib3V0IC5pbWFnZS1jb250YWluZXIgaW1nIHtcbiAgICBmaWx0ZXI6IGdyYXlzY2FsZSgxMDAlKTtcbiAgfVxufVxuLmFib3V0IC5pbWFnZS1jb250YWluZXIgLnRpdGxlIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xufVxuLmFib3V0IC5pbWFnZS1jb250YWluZXIgLnRpdGxlIHA6bnRoLWNoaWxkKDEpIHtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1zaXplOiAyMHB4O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuLmFib3V0IC5pbWFnZS1jb250YWluZXIgLnRpdGxlIHA6bnRoLWNoaWxkKDIpLFxuLmFib3V0IC5pbWFnZS1jb250YWluZXIgLnRpdGxlIHA6bnRoLWNoaWxkKDMpIHtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi5hYm91dCAuaW1hZ2UtY29udGFpbmVyIC50aXRsZS5ndW5uYXIgcCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi5hYm91dCAudGV4dC1jb250YWluZXIge1xuICBwYWRkaW5nOiAwIDFyZW07XG59XG5cbi5ob2xpZGF5IC5ob2xpZGF5LWhlYWRlciB7XG4gIHBhZGRpbmc6IDJyZW0gMDtcbn1cbi5ob2xpZGF5IC5ob2xpZGF5LXRpdGxlIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuLmhvbGlkYXkgLmhvbGlkYXktbGVhZCBwIHtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBsaW5lLWhlaWdodDogMjhweDtcbn1cbi5ob2xpZGF5IC5ob2xpZGF5LWNvbnRlbnQge1xuICBkaXNwbGF5OiBncmlkO1xuICBwYWRkaW5nOiAwIDAgMnJlbTtcbn1cbi5ob2xpZGF5IC5ob2xpZGF5LWNvbnRlbnQgLmNvbCB7XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG59XG4uaG9saWRheSAuaG9saWRheS1jb250ZW50IC5oZWFkZXIgLmltYWdlIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cbi5ob2xpZGF5IC5ob2xpZGF5LWNvbnRlbnQgLmhlYWRlciAuaW1hZ2UgaW1nIHtcbiAgd2lkdGg6IDUwJTtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmhvbGlkYXkgLmhvbGlkYXktY29udGVudCB7XG4gICAgZ3JpZC1jb2x1bW4tZ2FwOiAzMHB4O1xuICAgIC1tcy1ncmlkLWNvbHVtbnM6IDFmciAzMHB4IDFmciAzMHB4IDFmcjtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgzLCAxZnIpO1xuICB9XG4gIC5ob2xpZGF5IC5ob2xpZGF5LWNvbnRlbnQ6bnRoLWNoaWxkKDIpIHtcbiAgICAtbXMtZ3JpZC1jb2x1bW46IDI7XG4gIH1cbiAgLmhvbGlkYXkgLmhvbGlkYXktY29udGVudDpudGgtY2hpbGQoMykge1xuICAgIC1tcy1ncmlkLWNvbHVtbjogMztcbiAgfVxuICAuaG9saWRheSAuaG9saWRheS1jb250ZW50IC5jb2wge1xuICAgIG1hcmdpbi1ib3R0b206IGluaXRpYWw7XG4gIH1cbn1cblxuLmFqYW5sYXQge1xuICBwYWRkaW5nOiAzcmVtIDA7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxNDkuODVkZWcsICM3ZTFmNTQgMCUsICM1ZTIyNDYgNTUuMjElKSwgdXJsKFwiLi4vYXNzZXRzL2J1ZGFwZXN0L21kX3JlbGF4LWNvbnRhY3QtYmcuanBnXCIpLCAjZjVmNmY3O1xuICBiYWNrZ3JvdW5kLWJsZW5kLW1vZGU6IG5vcm1hbCwgbXVsdGlwbHksIGNvbG9yLCBub3JtYWwsIG5vcm1hbDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5hamFubGF0IHtcbiAgICBwYWRkaW5nOiA2cmVtIDA7XG4gIH1cbn1cbi5hamFubGF0X19jYXJkIC5wYXJhZ3JhcGgtdGl0bGUge1xuICBmb250LXNpemU6IDEuMnJlbTtcbn1cbi5hamFubGF0X19jYXJkIGltZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDAgYXV0bztcbn1cbi5hamFubGF0X19jYXJkIHAge1xuICBtYXgtd2lkdGg6IDQwY2g7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuLmFqYW5sYXRfX2hlYWRlciB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG4uYWphbmxhdCBwIHtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG4uYWphbmxhdCBzdHJvbmcge1xuICBjb2xvcjogI2ZlZmVmZTtcbiAgZm9udC13ZWlnaHQ6IDgwMDtcbn1cbi5hamFubGF0IGEge1xuICBjb2xvcjogIzgxY2ZmNDtcbiAgZm9udC13ZWlnaHQ6IDgwMDtcbn1cbi5hamFubGF0IC5wcmljZS1saXN0IHRoIHNwYW4ge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi5hamFubGF0IC5saW5lIHtcbiAgaGVpZ2h0OiAxcHg7XG4gIGJvcmRlci10b3A6IGRhc2hlZCAxcHggI2ZlZmVmZTtcbiAgbWFyZ2luOiAycmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmFqYW5sYXQgLmxpbmUge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmFqYW5sYXQgLm9mZmVyLTEge1xuICAgIHBhZGRpbmc6IDAgNHJlbTtcbiAgfVxufVxuLmFqYW5sYXQgdGFibGUge1xuICB0YWJsZS1sYXlvdXQ6IGF1dG8gIWltcG9ydGFudDtcbn1cbi5hamFubGF0IC53cERhdGFUYWJsZXNXcmFwcGVyIHRhYmxlLmhhcy1jb2x1bW5zLWhpZGRlbiBzcGFuLnJlc3BvbnNpdmVFeHBhbmRlciB7XG4gIG9wYWNpdHk6IDEgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZSAhaW1wb3J0YW50O1xuICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xufVxuLmFqYW5sYXQgdGFibGUuaGFzLWNvbHVtbnMtaGlkZGVuID4gdGJvZHkgPiB0ciA+IHRkID4gc3Bhbi5yZXNwb25zaXZlRXhwYW5kZXI6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lICFpbXBvcnRhbnQ7XG4gIGNvbnRlbnQ6IFwiK1wiICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjZmVmZWZlO1xuICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgd2lkdGg6IDI1cHg7XG4gIGhlaWdodDogMjVweDtcbiAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2E4YmMwZTtcbiAgZm9udC1zaXplOiA0MHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtZmFtaWx5OiBcIlJhbGV3YXlcIiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBzYW5zLXNlcmlmO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIGxpbmUtaGVpZ2h0OiAwLjY1O1xufVxuLmFqYW5sYXQgdGFibGUuaGFzLWNvbHVtbnMtaGlkZGVuID4gdGJvZHkgPiB0ci5kZXRhaWwtc2hvdyA+IHRkIHNwYW4ucmVzcG9uc2l2ZUV4cGFuZGVyOmFmdGVyIHtcbiAgY29udGVudDogXCItXCIgIWltcG9ydGFudDtcbiAgbGluZS1oZWlnaHQ6IDAuNDU7XG4gIGZvbnQtc2l6ZTogNDBweDtcbiAgd2lkdGg6IDI1cHg7XG4gIGhlaWdodDogMjVweDtcbiAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2E4YmMwZTtcbn1cbi5hamFubGF0IHRhYmxlLFxuLmFqYW5sYXQgdGJvZHksXG4uYWphbmxhdCB0aGVhZCxcbi5hamFubGF0IHRmb290IHtcbiAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG59XG4uYWphbmxhdCB0ZCxcbi5hamFubGF0IHRoIHtcbiAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IDE1cHggMTBweCAhaW1wb3J0YW50O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmFqYW5sYXQgdGQsXG4uYWphbmxhdCB0aCB7XG4gICAgcGFkZGluZzogN3B4IDEwcHggIWltcG9ydGFudDtcbiAgfVxufVxuLmFqYW5sYXQgdGgge1xuICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDtcbiAgZm9udC13ZWlnaHQ6IDgwMCAhaW1wb3J0YW50O1xuICBjb2xvcjogIzQwNDQ0ZCAhaW1wb3J0YW50O1xufVxuLmFqYW5sYXQgdHIge1xuICBib3JkZXItYm90dG9tOiBzb2xpZCAxcHggI2ZmZmZmZiAhaW1wb3J0YW50O1xufVxuLmFqYW5sYXQgdGQuY29sdW1uLTEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDdkN2Q3ICFpbXBvcnRhbnQ7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG4uYWphbmxhdCB0ZC5jb2x1bW4tMiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlMGUyZTUgIWltcG9ydGFudDtcbiAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7XG59XG4uYWphbmxhdCB0ZC5jb2x1bW4tMyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNiNmNjMDAgIWltcG9ydGFudDtcbiAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7XG4gIGZvbnQtd2VpZ2h0OiA4MDA7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuLmFqYW5sYXQgdGQuY29sdW1uLTQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjN2Y3ZjdmICFpbXBvcnRhbnQ7XG4gIHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50O1xuICBmb250LXdlaWdodDogODAwO1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cbi5hamFubGF0IC5jb2x1bW4tMSB7XG4gIHdpZHRoOiAzMCUgIWltcG9ydGFudDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLmFqYW5sYXQgLmNvbHVtbi0xIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDUwcHggIWltcG9ydGFudDtcbiAgfVxufVxuLmFqYW5sYXQgLmNvbHVtbi0xIC5yZXNwb25zaXZlRXhwYW5kZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiAxMHB4O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG59XG4uYWphbmxhdCAud3BEYXRhVGFibGVzV3JhcHBlciB0YWJsZS53cERhdGFUYWJsZSB0aCxcbi5hamFubGF0IC53cERhdGFUYWJsZXNXcmFwcGVyIHRhYmxlLndwRGF0YVRhYmxlIHRkIHtcbiAgd2hpdGUtc3BhY2U6IGluaXRpYWwgIWltcG9ydGFudDtcbn1cbi5hamFubGF0IC53cERhdGFUYWJsZXNXcmFwcGVyIGRpdi5kdC1idXR0b25zIHtcbiAgbWFyZ2luOiAwO1xufVxuLmFqYW5sYXQgLnBvd2VyZWRfYnlfbGluayB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cbi5hamFubGF0IC5yb3ctZGV0YWlsIHRkIHtcbiAgcGFkZGluZzogNXB4ICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICM5Nzk4OWIgIWltcG9ydGFudDtcbn1cbi5hamFubGF0IC5yb3ctZGV0YWlsIGxpIHtcbiAgcGFkZGluZzogMTBweCAxNXB4ICFpbXBvcnRhbnQ7XG59XG4uYWphbmxhdCAucm93LWRldGFpbCBsaTpudGgtY2hpbGQoMSkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2VjZWNlO1xufVxuLmFqYW5sYXQgLnJvdy1kZXRhaWwgbGk6bnRoLWNoaWxkKDIpIHtcbiAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2I3YjdiNztcbn1cbi5hamFubGF0IC5yb3ctZGV0YWlsIC5jb2x1bW4tMixcbi5hamFubGF0IC5yb3ctZGV0YWlsIC5jb2x1bW4tNCB7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG4uYWphbmxhdCAucm93LWRldGFpbCAuY29sdW1uLTIgLmNvbHVtblZhbHVlLFxuLmFqYW5sYXQgLnJvdy1kZXRhaWwgLmNvbHVtbi00IC5jb2x1bW5WYWx1ZSB7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IDA7XG59XG4uYWphbmxhdCAudGV4dC13cmFwcGVyIHtcbiAgb3JkZXI6IDE7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuYWphbmxhdCAudGV4dC13cmFwcGVyIHtcbiAgICBtYXJnaW46IDAgMnJlbSAycmVtO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYWphbmxhdCAudGV4dC13cmFwcGVyIHtcbiAgICBvcmRlcjogMjtcbiAgfVxufVxuLmFqYW5sYXQgLnRleHQtd3JhcHBlciBoMiB7XG4gIGNvbG9yOiAjZmVmZWZlO1xuICBmb250LXNpemU6IDEuNnJlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cbi5hamFubGF0IC50ZXh0LXdyYXBwZXIgcCB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbi50cmVhdG1lbnRzIHtcbiAgcGFkZGluZzogM3JlbSAwO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAudHJlYXRtZW50cyAuY29udGFpbmVyLnBhZGRpbmcge1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbn1cbi50cmVhdG1lbnRzLmRlbnRpc3Qge1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMGRlZywgcmdiYSgxNjYsIDE3MSwgMTgxLCAwLjgpLCByZ2JhKDE2NiwgMTcxLCAxODEsIDAuOCkpLCB1cmwoXCIuLi9hc3NldHMva2V6ZWxlc2VrLWJnLmpwZ1wiKTtcbn1cbi50cmVhdG1lbnRzLmRlbnRpc3QgaDIge1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cbi50cmVhdG1lbnRzLnBsYXN0aWsge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9hc3NldHMvcHJpem1hcy1iZy5qcGdcIik7XG59XG4udHJlYXRtZW50cy5wbGFzdGlrIGgyIHtcbiAgY29sb3I6ICM1ZTIyNDY7XG59XG4udHJlYXRtZW50cy5wbGFzdGlrIHAge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuLnRyZWF0bWVudHMucGxhc3RpayAuZWxlbWVudCB7XG4gIHdpZHRoOiAxMDAlO1xufVxuLnRyZWF0bWVudHMucGxhc3RpayAucHJpY2Uge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoOTIuMjNkZWcsICNiNmNjMDAgMCUsICNhOGJjMGUgMTAwJSk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAudHJlYXRtZW50cyB7XG4gICAgcGFkZGluZzogNnJlbSAwO1xuICB9XG59XG4udHJlYXRtZW50cyAuc3VidGl0bGUge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4udHJlYXRtZW50cyAudHJlYXRtZW50cy1zbGlkZXIge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuLnRyZWF0bWVudHMgLmNvbnRhaW5lciB7XG4gIHBhZGRpbmc6IDAgMzBweDtcbn1cbi50cmVhdG1lbnRzIC5rZXplbGVzZWstdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAzcmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnRyZWF0bWVudHMgLmtlemVsZXNlay10aXRsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgfVxufVxuLnRyZWF0bWVudHMgLm1pY3JvLWtlemVsZXNlay1zbGlkZXIge1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xufVxuLnRyZWF0bWVudHMgLm93bC1zdGFnZS1vdXRlciB7XG4gIHdpZHRoOiAxMDAlO1xufVxuLnRyZWF0bWVudHMgLm93bC1zdGFnZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG4udHJlYXRtZW50cyAub3dsLWl0ZW0ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4OiAxIDAgYXV0bztcbiAgaGVpZ2h0OiBpbml0aWFsO1xufVxuLnRyZWF0bWVudHMgLm93bC1kb3RzIHtcbiAgbWFyZ2luLXRvcDogMXJlbTtcbn1cbi50cmVhdG1lbnRzIC5vd2wtbmF2IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgei1pbmRleDogMTA7XG4gIHdpZHRoOiAxMDAlO1xuICB0b3A6IGluaXRpYWw7XG4gIHRvcDogMDtcbiAgbWFyZ2luLXRvcDogMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC50cmVhdG1lbnRzIC5vd2wtbmF2IHtcbiAgICBoZWlnaHQ6IDUwcHg7XG4gICAgdG9wOiA1MCUgIWltcG9ydGFudDtcbiAgICBib3R0b206IGluaXRpYWwgIWltcG9ydGFudDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIH1cbn1cbi50cmVhdG1lbnRzIC5vd2wtbmF2IC5vd2wtcHJldixcbi50cmVhdG1lbnRzIC5vd2wtbmF2IC5vd2wtbmV4dCB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgaGVpZ2h0OiA2MHB4O1xufVxuLnRyZWF0bWVudHMgLm93bC1uYXYgLm93bC1wcmV2IGksXG4udHJlYXRtZW50cyAub3dsLW5hdiAub3dsLW5leHQgaSB7XG4gIGNvbG9yOiAjNkQ3NTg0O1xuICBmb250LXNpemU6IDRyZW07XG4gIHRyYW5zaXRpb246IGNvbG9yIDAuMnMgZWFzZS1pbi1vdXQ7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAudHJlYXRtZW50cyAub3dsLW5hdiAub3dsLXByZXYgaSxcbi50cmVhdG1lbnRzIC5vd2wtbmF2IC5vd2wtbmV4dCBpIHtcbiAgICBjb2xvcjogIzVFMjI0NjtcbiAgfVxufVxuLnRyZWF0bWVudHMgLm93bC1uYXYgLm93bC1wcmV2OmhvdmVyIGksXG4udHJlYXRtZW50cyAub3dsLW5hdiAub3dsLW5leHQ6aG92ZXIgaSB7XG4gIGNvbG9yOiAjOWUxYzYyO1xufVxuLnRyZWF0bWVudHMgLm93bC1uYXYgLm93bC1wcmV2IHtcbiAgbGVmdDogMXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC50cmVhdG1lbnRzIC5vd2wtbmF2IC5vd2wtcHJldiB7XG4gICAgbGVmdDogMXJlbTtcbiAgfVxufVxuLnRyZWF0bWVudHMgLm93bC1uYXYgLm93bC1uZXh0IHtcbiAgcmlnaHQ6IDFyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAudHJlYXRtZW50cyAub3dsLW5hdiAub3dsLW5leHQge1xuICAgIHJpZ2h0OiAxcmVtO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAudHJlYXRtZW50cyAub3dsLW5hdiAub3dsLXByZXYge1xuICAgIGxlZnQ6IC0zcmVtO1xuICB9XG4gIC50cmVhdG1lbnRzIC5vd2wtbmF2IC5vd2wtbmV4dCB7XG4gICAgcmlnaHQ6IC0zcmVtO1xuICB9XG59XG4udHJlYXRtZW50cyAuZWxlbWVudCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZWZlZmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogY29sdW1uO1xuICBib3JkZXItcmFkaXVzOiAxNXB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBib3gtc2hhZG93OiAwcHggMHB4IDEwcHggcmdiYSg2NCwgNjgsIDc3LCAwLjIpO1xufVxuLnRyZWF0bWVudHMgLmVsZW1lbnRfX2NvbnRlbnQge1xuICBwYWRkaW5nOiAxcmVtO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IGNvbHVtbjtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuLnRyZWF0bWVudHMgLmVsZW1lbnRfX2NvbnRlbnQgaDMge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBjb2xvcjogIzllMWM2MjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBmb250LXNpemU6IDEuMzMzMzMzMzMzM3JlbTtcbiAgdGV4dC10cmFuc2Zvcm06IGluaXRpYWw7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAudHJlYXRtZW50cyAuZWxlbWVudF9fY29udGVudCBoMyB7XG4gICAgZm9udC1zaXplOiAxLjJyZW07XG4gIH1cbn1cbi50cmVhdG1lbnRzIC5pbWFnZSB7XG4gIGhlaWdodDogMjAwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgZmxleDogMSAwIDIwMHB4O1xufVxuLnRyZWF0bWVudHMgLmltYWdlOjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiIFwiO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAtNXB4O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDEwcHggcmdiYSg2NCwgNjgsIDc3LCAwLjIpO1xuICBoZWlnaHQ6IDVweDtcbn1cbi50cmVhdG1lbnRzIC5pbWFnZSBpbWcge1xuICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbn1cbi50cmVhdG1lbnRzIHAge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4udHJlYXRtZW50cyAucHJpY2Uge1xuICBtYXJnaW4tdG9wOiBhdXRvO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoOTMuNTZkZWcsICM5ZTFjNjIgMCUsICM3ZTFmNTQgMTAwJSk7XG4gIHBhZGRpbmc6IDFyZW07XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDE1cHg7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAxNXB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBmbGV4OiAxIDAgNzNweDtcbiAgaGVpZ2h0OiA3M3B4O1xufVxuLnRyZWF0bWVudHMgLnByaWNlIHAge1xuICBmb250LXNpemU6IDEuMzMzMzMzMzMzM3JlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBmb250LXdlaWdodDogNzAwO1xuICBjb2xvcjogI2ZlZmVmZTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGZvbnQtdmFyaWFudC1udW1lcmljOiBsaW5pbmctbnVtcztcbiAgZm9udC1mZWF0dXJlLXNldHRpbmdzOiBcImxudW1cIjtcbn1cbi50cmVhdG1lbnRzIC5wcmljZSBwIHNwYW4ge1xuICBmb250LXNpemU6IDEuMDY2NjY2NjY2N3JlbTtcbiAgZm9udC1mYW1pbHk6IExhdG8sIHNhbnMtc2VyaWY7XG59XG4udHJlYXRtZW50cyAua2V6ZWxlc2VrLWZvb3RlciBwIHtcbiAgZm9udC1zaXplOiAxMnB4O1xufVxuXG4udHJlYXRtZW50cy1ibG9jayAucHJpY2Uge1xuICBoZWlnaHQ6IDczcHg7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCg5Mi4yM2RlZywgI2I2Y2MwMCAwJSwgI2E4YmMwZSAxMDAlKTtcbn1cbi50cmVhdG1lbnRzLWJsb2NrIC5wcmljZSBwIHNwYW4ge1xuICBmb250LXNpemU6IDEuMDY2NjY2NjY2N3JlbTtcbiAgZm9udC1mYW1pbHk6IExhdG8sIHNhbnMtc2VyaWY7XG59XG4udHJlYXRtZW50cy1ibG9jayAuZWxlbWVudF9fY29udGVudCBoMyB7XG4gIGNvbG9yOiAjOWUxYzYyICFpbXBvcnRhbnQ7XG4gIHRleHQtdHJhbnNmb3JtOiBpbml0aWFsICFpbXBvcnRhbnQ7XG59XG4udHJlYXRtZW50cy1ibG9jayAuc3BsaWRlX19saXN0IHtcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG59XG4udHJlYXRtZW50cy1ibG9jayAuZWxlbWVudCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZWZlZmU7XG4gIGJvcmRlci1yYWRpdXM6IDE1cHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMTBweCByZ2JhKDY0LCA2OCwgNzcsIDAuMik7XG4gIGhlaWdodDogMTAwJTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cblxuLmd1bm5hci5yb3cge1xuICBwYWRkaW5nOiA2cmVtIDA7XG59XG4uZ3VubmFyLnJvdyBpbWcge1xuICB3aWR0aDogMTAwJTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBtYXgtd2lkdGg6IDM2MHB4O1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwIGF1dG8gMXJlbSBhdXRvO1xufVxuLmd1bm5hci5yb3cgLmltYWdlIHAge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtc2l6ZTogMS4wNjY2NjY2NjY3cmVtO1xufVxuLmd1bm5hci5yb3cgLnRleHQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG5cbi52aWRlbyB7XG4gIHBhZGRpbmc6IDNyZW0gMDtcbn1cbi52aWRlbyAudmlkZW8tcGxheWVyLS1jb250YWluZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4udmlkZW8gLnZpZGVvLXBsYXllci0tY29udGFpbmVyIC5pbm5lciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG59XG4udmlkZW8gLnZpZGVvLXBsYXllci0tY29udGFpbmVyIC5pbm5lci13cmFwIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uZGVudGFsLXdlZWsge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9hc3NldHMvZGVudGFsLXdlZWstYmcuanBnXCIpO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBmbGV4LWZsb3c6IGNvbHVtbjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nOiAzcmVtIDA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZGVudGFsLXdlZWsge1xuICAgIGZsZXgtZmxvdzogcm93O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgfVxufVxuLmRlbnRhbC13ZWVrX19jaXJjbGUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAtMjAlO1xuICBib3R0b206IC00MCU7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDgwJTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBib3JkZXI6IDJweCBzb2xpZCAjZmVmZWZlO1xuICB6LWluZGV4OiAyO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCByZ2JhKDE4MiwgMjA0LCAwLCAwLjcpLCByZ2JhKDEwOSwgMTE3LCAxMzIsIDAuNyksIHJnYmEoMTU4LCAyOCwgOTgsIDAuNykpO1xuICBkaXNwbGF5OiBub25lO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmRlbnRhbC13ZWVrX19jaXJjbGUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG4uZGVudGFsLXdlZWtfX3RpdGxlLCAuZGVudGFsLXdlZWtfX2Zvcm10aXRsZSB7XG4gIGZvbnQtZmFtaWx5OiBcIlJvYm90byBTbGFiXCIsIHNlcmlmO1xuICBjb2xvcjogI2ZlZmVmZTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG4gIGZvbnQtc2l6ZTogMjVweDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5kZW50YWwtd2Vla19fdGl0bGUsIC5kZW50YWwtd2Vla19fZm9ybXRpdGxlIHtcbiAgICBmb250LXNpemU6IDM1cHg7XG4gIH1cbn1cbi5kZW50YWwtd2Vla19fZm9ybXRpdGxlIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBmb250LXNpemU6IDI4cHg7XG59XG4uZGVudGFsLXdlZWtfX2Zvcm1maWVsZHMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG59XG4uZGVudGFsLXdlZWtfX2lucHV0IHtcbiAgYm9yZGVyOiAycHggc29saWQgI2ZlZmVmZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzdkMjY1OTtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICBib3JkZXItcmFkaXVzOiBpbml0aWFsO1xuICBwYWRkaW5nOiAxcmVtO1xuICBsaW5lLWhlaWdodDogMTAwJTtcbiAgaGVpZ2h0OiBpbml0aWFsO1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cbi5kZW50YWwtd2Vla19faW5wdXQ6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjN2QyNjU5O1xuICBib3JkZXI6IDJweCBzb2xpZCAjZmVmZWZlO1xufVxuLmRlbnRhbC13ZWVrX19zdWJtaXQge1xuICBmb250LWZhbWlseTogXCJSb2JvdG8gU2xhYlwiLCBzZXJpZjtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTtcbiAgY29sb3I6ICM0MDQ0NGQ7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgYm9yZGVyLXJhZGl1czogaW5pdGlhbDtcbiAgbGluZS1oZWlnaHQ6IDEwMCU7XG4gIHBhZGRpbmc6IDFyZW07XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgYm9yZGVyOiAycHggc29saWQgI2ZlZmVmZTtcbiAgd2lkdGg6IDEwMCU7XG59XG4uZGVudGFsLXdlZWsgLklucHV0QmxvY2sge1xuICB3aWR0aDogMTAwJTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5kZW50YWwtd2VlayAuSW5wdXRCbG9jayB7XG4gICAgd2lkdGg6IGNhbGMoNTAlIC0gMC41cmVtKTtcbiAgICBtYXJnaW46IDAgMC4yNXJlbTtcbiAgfVxufVxuLmRlbnRhbC13ZWVrIC5meXJlLWxvZ28ge1xuICBtYXJnaW46IDAgYXV0bztcbiAgcGFkZGluZy1ib3R0b206IDJyZW07XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4uZGVudGFsLXdlZWsgLmZ5cmUtbG9nbyBpbWcge1xuICB3aWR0aDogMTAwJTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5kZW50YWwtd2VlayAuZnlyZS1sb2dvIHtcbiAgICB3aWR0aDogNTEycHg7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiA1MTJweDtcbiAgfVxufVxuLmRlbnRhbC13ZWVrIC5meXJlLWxvZ28tbW9iaWxlIHtcbiAgbWFyZ2luOiAwIGF1dG87XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuZGVudGFsLXdlZWsgLmZ5cmUtbG9nby1tb2JpbGUge1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5kZW50YWwtd2VlayAuZnlyZS1sb2dvLW1vYmlsZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuLmRlbnRhbC13ZWVrIHAge1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cbi5kZW50YWwtd2VlayBwOmxhc3Qtb2YtdHlwZSB7XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG59XG4uZGVudGFsLXdlZWsgLmRvd25sb2FkLXBkZiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXItcmFkaXVzOiBpbml0aWFsO1xuICBib3JkZXI6IDJweCBzb2xpZCAjZmVmZWZlO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGZvbnQtZmFtaWx5OiBcIlJvYm90byBTbGFiXCIsIHNlcmlmO1xuICBmb250LXNpemU6IDIwcHg7XG59XG4uZGVudGFsLXdlZWsgLmRlbnRhbC13ZWVrLXRleHQge1xuICBwYWRkaW5nOiAycmVtIDNyZW0gM3JlbTtcbiAgZmxleDogMSAxIDEwMCU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZGVudGFsLXdlZWsgLmRlbnRhbC13ZWVrLXRleHQge1xuICAgIGZsZXg6IDEgMCAzNiU7XG4gIH1cbn1cbi5kZW50YWwtd2VlayAuZGVudGFsLXdlZWstZm9ybS1jb250YWluZXIge1xuICBmbGV4OiAxIDEgMTAwJTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAzO1xuICBwYWRkaW5nOiAwIDNyZW07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmRlbnRhbC13ZWVrIC5kZW50YWwtd2Vlay1mb3JtLWNvbnRhaW5lciB7XG4gICAgZmxleDogMSAwIDUwJTtcbiAgfVxufVxuXG4uZG9jdG9ycyB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgwZGVnLCAjOWUxYzYyLCAjOWUxYzYyKTtcbn1cbi5kb2N0b3JzIC5kYXRhLWNvbCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDMwcHg7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZG9jdG9ycyAuZGF0YS1jb2wge1xuICAgIHBhZGRpbmc6IDMwcHggOHJlbTtcbiAgfVxufVxuLmRvY3RvcnMgLmRhdGEtY29sIHAge1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cbi5kb2N0b3JzIC5kb2N0b3JzLWNvbnRhaW5lciB7XG4gIG1hcmdpbjogMDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiB3cmFwO1xuICBoZWlnaHQ6IDEwMCU7XG59XG4uZG9jdG9ycyAuZG9jdG9ycy1jb250YWluZXIgLmRvY3Rvci1pdGVtIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBwYWRkaW5nOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBmbGV4OiAwIDAgNTAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGp1c3RpZnktY29udGVudDogc3RyZXRjaDtcbiAgZmxleC1mbG93OiBjb2x1bW47XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuZG9jdG9ycyAuZG9jdG9ycy1jb250YWluZXIgLmRvY3Rvci1pdGVtIHtcbiAgICBmbGV4OiAxIDEgMzMuMzMlO1xuICAgIGZsZXgtZmxvdzogY29sdW1uO1xuICB9XG59XG4uZG9jdG9ycyAuZG9jdG9ycy1jb250YWluZXIgLmRvY3Rvci1pdGVtIGltZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmRvY3RvcnMgLmRvY3RvcnMtY29udGFpbmVyIC5kb2N0b3ItaXRlbSBpbWcge1xuICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgfVxufVxuLmRvY3RvcnMgLmRvY3RvcnMtY29udGFpbmVyIC5kb2N0b3ItaXRlbSAuZG9jdG9yLWRhdGEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg5NCwgMzQsIDcwLCAwLjg1KTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmRvY3RvcnMgLmRvY3RvcnMtY29udGFpbmVyIC5kb2N0b3ItaXRlbSAuZG9jdG9yLWRhdGEge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgei1pbmRleDogMTA7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnMgZWFzZS1vdXQ7XG4gICAgcGFkZGluZzogMXJlbTtcbiAgfVxufVxuLmRvY3RvcnMgLmRvY3RvcnMtY29udGFpbmVyIC5kb2N0b3ItaXRlbTpob3ZlciAuZG9jdG9yLWRhdGEge1xuICBvcGFjaXR5OiAxO1xufVxuLmRvY3RvcnMgLmRvY3RvcnMtY29udGFpbmVyIC5kb2N0b3ItaXRlbSAuZG9jdG9yLWRhdGEgaDMsXG4uZG9jdG9ycyAuZG9jdG9ycy1jb250YWluZXIgLmRvY3Rvci1pdGVtIC5kb2N0b3ItZGF0YSBwIHtcbiAgY29sb3I6ICNmZWZlZmU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgcGFkZGluZzogMC41cmVtO1xufVxuLmRvY3RvcnMgLmRvY3RvcnMtY29udGFpbmVyIC5kb2N0b3ItaXRlbSAuZG9jdG9yLWRhdGEgaDMge1xuICBmb250LXNpemU6IDFyZW07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG4uZG9jdG9ycyAuZG9jdG9ycy1jb250YWluZXIgLmRvY3Rvci1pdGVtIHAge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmRvY3RvcnMgLmRvY3RvcnMtY29udGFpbmVyIC5kb2N0b3ItaXRlbSAuZGF0YS1jb250ZW50IHtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIH1cbn1cblxuLmxhZWtuaSAuZnJvbnQtb3J2b3Nvay1jYXJvdXNlbCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1RTIyNDY7XG4gIHBhZGRpbmc6IDNyZW0gMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sYWVrbmkgLmZyb250LW9ydm9zb2stY2Fyb3VzZWwge1xuICAgIGJvcmRlci1yYWRpdXM6IDE1cHg7XG4gIH1cbn1cbi5sYWVrbmkgLmZyb250LW9ydm9zb2stY2Fyb3VzZWw6OmFmdGVyIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAjNWUyMjQ2IDAlLCB0cmFuc3BhcmVudCAyMCUsIHRyYW5zcGFyZW50IDgwJSwgIzVlMjI0NiAxMDAlKTtcbiAgY29udGVudDogXCIgXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgei1pbmRleDogMTtcbiAgb3BhY2l0eTogMC45NTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG4ubGFla25pIC5kb2N0b3ItdGl0bGUge1xuICBvcGFjaXR5OiAwO1xufVxuLmxhZWtuaSAuc3BsaWRlX19zbGlkZS5pcy12aXNpYmxlIC5kb2N0b3ItdGl0bGUge1xuICBvcGFjaXR5OiAxO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3M7XG59XG4ubGFla25pIC5zcGxpZGVfX2Fycm93IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgdG9wOiBpbml0aWFsO1xuICBib3R0b206IDFyZW07XG4gIHdpZHRoOiA0MHB4ICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogNDBweCAhaW1wb3J0YW50O1xuICB6LWluZGV4OiAyO1xufVxuLmxhZWtuaSAuc3BsaWRlX19hcnJvdyBzdmcge1xuICB3aWR0aDogMTAwJTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IGluaXRpYWw7XG4gIGZpbGw6ICNmZWZlZmU7XG4gIHN0cm9rZTogbm9uZSAhaW1wb3J0YW50O1xuICBmaWx0ZXI6IG5vbmUgIWltcG9ydGFudDtcbn1cbi5sYWVrbmkgLnNwbGlkZV9fYXJyb3ctLXByZXYge1xuICBsZWZ0OiAxcmVtO1xufVxuLmxhZWtuaSAuc3BsaWRlX19hcnJvdy0tbmV4dCB7XG4gIHJpZ2h0OiAxcmVtO1xufVxuXG4uZGVudGFsLWNsaW5pYyB7XG4gIHBhZGRpbmc6IDNyZW0gMDtcbn1cbi5kZW50YWwtY2xpbmljIC5waG90by1hY2NvcmRpb24ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cbi5kZW50YWwtY2xpbmljIC5taWNyb0FjY29yZGlvbiB7XG4gIHotaW5kZXg6IDE7XG4gIG1hcmdpbjogMDtcbiAgd2lkdGg6IDEwMCU7XG59XG4uZGVudGFsLWNsaW5pYyAubWljcm9BY2NvcmRpb24gbGkge1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDMwMHB4O1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuLmRlbnRhbC1jbGluaWMgLm1pY3JvQWNjb3JkaW9uIGxpIC5oZWFkaW5nIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjc2KTtcbiAgcGFkZGluZzogMCAyMHB4O1xuICBoZWlnaHQ6IDk4cHg7XG4gIHdpZHRoOiAyNjRweDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBjb2xvcjogIzY2NjtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogOThweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDEwM3B4O1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICB0cmFuc2l0aW9uOiBhbGwgMC43cyBlYXNlLWluIDBzO1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG4uZGVudGFsLWNsaW5pYyAubWljcm9BY2NvcmRpb24gbGkubWljcm9TbGlkZS1vcGVuIC5oZWFkaW5nIHtcbiAgbWFyZ2luLWxlZnQ6IC0yMDBweDtcbn1cbi5kZW50YWwtY2xpbmljIC5taWNyb0FjY29yZGlvbiBsaS5taWNyb1NsaWRlLWNsb3NlZCAuaGVhZGluZyB7XG4gIG1hcmdpbi1sZWZ0OiAtMTAzcHg7XG59XG4uZGVudGFsLWNsaW5pYyAubWljcm9BY2NvcmRpb24gbGkgLmRlc2NyaXB0aW9uIHtcbiAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgcGFkZGluZzogODBweCAyMHB4IDIwcHggMjBweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMGRlZywgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpIDUwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSk7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IGFsbCAwLjdzIGVhc2UtaW4gMHM7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBvcGFjaXR5OiAxO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmRlbnRhbC1jbGluaWMgLm1pY3JvQWNjb3JkaW9uIGxpIC5kZXNjcmlwdGlvbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuLmRlbnRhbC1jbGluaWMgLm1pY3JvQWNjb3JkaW9uIGxpLm1pY3JvU2xpZGUtb3BlbiAuZGVzY3JpcHRpb24ge1xuICBib3R0b206IDA7XG4gIG9wYWNpdHk6IDE7XG59XG4uZGVudGFsLWNsaW5pYyAubWljcm9BY2NvcmRpb24gbGkubWljcm9TbGlkZS1jbG9zZWQgLmRlc2NyaXB0aW9uIHtcbiAgYm90dG9tOiAtMjByZW07XG4gIG9wYWNpdHk6IDA7XG59XG4uZGVudGFsLWNsaW5pYyAubWljcm9BY2NvcmRpb24gbGkgLmRlc2NyaXB0aW9uIGgyIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXNpemU6IDIxcHg7XG4gIGNvbG9yOiAjNjY2O1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBwYWRkaW5nLWJvdHRvbTogNXB4O1xufVxuLmRlbnRhbC1jbGluaWMgLm1pY3JvQWNjb3JkaW9uIGxpIC5kZXNjcmlwdGlvbiBwIHtcbiAgbGluZS1oZWlnaHQ6IDEycHg7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogMS40ZW07XG4gIGNvbG9yOiAjNjY2O1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uc2VjdGlvbi1yZXZpZXcgLnRleHQtYW5pbWF0ZS0xIHtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDYwcHgpO1xuICB0cmFuc2l0aW9uOiBhbGwgMS4xcyAwLjhzIGN1YmljLWJlemllcigwLjE2NSwgMC44NCwgMC40NCwgMSk7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uc2VjdGlvbi1yZXZpZXcgLnRleHQtYW5pbWF0ZS0yIHtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDYwcHgpO1xuICB0cmFuc2l0aW9uOiBhbGwgMS4zcyAxLjFzIGN1YmljLWJlemllcigwLjE2NSwgMC44NCwgMC40NCwgMSk7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uc2VjdGlvbi1yZXZpZXcgLndwLWdyIHtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDYwcHgpO1xuICB0cmFuc2l0aW9uOiBhbGwgMS4zcyAwLjdzIGN1YmljLWJlemllcigwLjE2NSwgMC44NCwgMC40NCwgMSkgIWltcG9ydGFudDtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5zZWN0aW9uLXJldmlldy5pbi12aWV3IC53cC1ncixcbi5zZWN0aW9uLXJldmlldy5pbi12aWV3IC50ZXh0LWFuaW1hdGUtMSxcbi5zZWN0aW9uLXJldmlldy5pbi12aWV3IC50ZXh0LWFuaW1hdGUtMiB7XG4gIG9wYWNpdHk6IDE7XG4gIHRyYW5zZm9ybTogbm9uZTtcbn1cblxuLnNlY3Rpb24tcmV2aWV3IHtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHotaW5kZXg6IDEwMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLnNlY3Rpb24tcmV2aWV3IC5nb29nbGUtcmV2aWV3IHtcbiAgd2lkdGg6IDQ2LjY2NjY2NjY2NjdyZW07XG4gIGJvcmRlci1yYWRpdXM6IDUwcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJveC1zaGFkb3c6IDAgMCAyMHB4IHJnYmEoMTAsIDEwLCAxMCwgMC4yKTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxMDtcbn1cbi5zZWN0aW9uLXJldmlldyAuZ29vZ2xlLXJldmlldyAudGl0bGUge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuLnNlY3Rpb24tcmV2aWV3IC5nb29nbGUtcmV2aWV3IGgyIHtcbiAgY29sb3I6ICNmZWZlZmU7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGxldHRlci1zcGFjaW5nOiAwO1xuICBmb250LXNpemU6IDIuMTMzMzMzMzMzM3JlbTtcbn1cbi5zZWN0aW9uLXJldmlldyAuZ29vZ2xlLXJldmlldyA+IGRpdiB7XG4gIHBhZGRpbmc6IDJyZW07XG59XG4uc2VjdGlvbi1yZXZpZXcgLmdvb2dsZS1yZXZpZXcgc3ZnIHtcbiAgZGlzcGxheTogaW5saW5lO1xufVxuLnNlY3Rpb24tcmV2aWV3IC5nb29nbGUtcmV2aWV3IGltZyB7XG4gIGJvcmRlci1yYWRpdXM6IDUwJSAhaW1wb3J0YW50O1xufVxuLnNlY3Rpb24tcmV2aWV3IC5nb29nbGUtcmV2aWV3IC53aWRnZXQtd3JhcHBlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZWZlZmU7XG59XG5cbi5nb29nbGUtcmV2aWV3cyB7XG4gIHBhZGRpbmc6IDAgMCAzcmVtIDA7XG59XG4uZ29vZ2xlLXJldmlld3MgLm93bC1jYXJvdXNlbCAub3dsLXN0YWdlIHtcbiAgZGlzcGxheTogZmxleDtcbn1cbi5nb29nbGUtcmV2aWV3cyAub3dsLWNhcm91c2VsIC5vd2wtaXRlbSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXg6IDEgMCBhdXRvO1xufVxuLmdvb2dsZS1yZXZpZXdzIC5vd2wtbmF2IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICBsZWZ0OiAtMnJlbTtcbiAgcmlnaHQ6IC0ycmVtO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG59XG4uZ29vZ2xlLXJldmlld3MgLm93bC1uYXYgaSB7XG4gIGZvbnQtc2l6ZTogMi42NjY2NjY2NjY3cmVtO1xufVxuLmdvb2dsZS1yZXZpZXdzIC5vd2wtc3RhZ2Utb3V0ZXIge1xuICBwYWRkaW5nOiAxcmVtIDA7XG59XG4uZ29vZ2xlLXJldmlld3MgLm93bC1kb3RzIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nOiAxcmVtIDA7XG59XG4uZ29vZ2xlLXJldmlld3MgLm93bC1kb3RzIHNwYW4ge1xuICB3aWR0aDogMTBweDtcbiAgaGVpZ2h0OiAxMHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYTZhYmI1O1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwLjRyZW07XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbn1cbi5nb29nbGUtcmV2aWV3cyAub3dsLWRvdHMgLm93bC1kb3QuYWN0aXZlIHNwYW4ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNUUyMjQ2O1xufVxuLmdvb2dsZS1yZXZpZXdzIC5zbGlkZS1pdGVtIHtcbiAgYm9yZGVyLXJhZGl1czogMTVweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAxMHB4IHJnYmEoNjQsIDY4LCA3NywgMC4yKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTtcbn1cbi5nb29nbGUtcmV2aWV3cyAuc2xpZGUtaXRlbSBhIHtcbiAgY29sb3I6ICM0MDQ0NEQ7XG4gIGhlaWdodDogMTAwJTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiBjb2x1bW47XG59XG4uZ29vZ2xlLXJldmlld3MgLnNsaWRlLWl0ZW0gLmNvbnRlbnQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBhZGRpbmc6IDFyZW07XG4gIGZsZXg6IDEgMSBhdXRvO1xufVxuXG4ubW9kYWwtdmlkZW8gLmVtYmVkLWNvbnRhaW5lciB7XG4gIHdpZHRoOiA2MHZ3O1xufVxuXG4uY2xpbmljLXZpZGVvIC5lbWJlZC1jb250YWluZXIge1xuICBib3JkZXItcmFkaXVzOiAxNXB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAuY2xpbmljLXZpZGVvIC5jb250YWluZXIgLm1vZGFsLXRyaWdnZXItaW1hZ2Uge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmNsaW5pYy12aWRlbyAuY29udGFpbmVyIC5oaWRlLWZvci1kZXNrdG9wIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi5jbGluaWMtdmlkZW8gLmNvbnRhaW5lciBpbWcge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjJzIGVhc2UtaW4tb3V0O1xuICB3aWR0aDogNzAlO1xuICBtYXJnaW46IDAgYXV0bztcbiAgZGlzcGxheTogYmxvY2s7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuY2xpbmljLXZpZGVvIC5jb250YWluZXIgaW1nIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW46IGluaXRpYWw7XG4gICAgZGlzcGxheTogaW5pdGlhbDtcbiAgfVxuICAuY2xpbmljLXZpZGVvIC5jb250YWluZXIgaW1nOmhvdmVyIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMDcpO1xuICB9XG59XG4uY2xpbmljLXZpZGVvIC5jb250YWluZXIgLnRvdXIge1xuICBncmlkLWFyZWE6IHRvdXI7XG59XG4uY2xpbmljLXZpZGVvIC5jb250YWluZXIgLmRpc2NvdmVyIHtcbiAgZ3JpZC1hcmVhOiB0b3VydGl0bGU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuY2xpbmljLXZpZGVvIC5jb250YWluZXIgLnZpZGVvIHtcbiAgICBwYWRkaW5nOiAwIDEwcmVtO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuY2xpbmljLXZpZGVvIC5jb250YWluZXIgLnZpZGVvIHtcbiAgICBwYWRkaW5nOiAwIDEwcmVtO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5jbGluaWMtdmlkZW8gLmNvbnRhaW5lciAudmlkZW8ge1xuICAgIHBhZGRpbmc6IDAgMTByZW07XG4gIH1cbn1cbi5jbGluaWMtdmlkZW8gLmNvbnRhaW5lciBoMyB7XG4gIGZvbnQtd2VpZ2h0OiA4MDA7XG59XG4uY2xpbmljLXZpZGVvIC5jb250YWluZXIgLnZpZGVvLFxuLmNsaW5pYy12aWRlbyAuY29udGFpbmVyIC50b3VyLFxuLmNsaW5pYy12aWRlbyAuY29udGFpbmVyIC5kaXNjb3ZlciB7XG4gIGFsaWduLXNlbGY6IGNlbnRlcjtcbn1cblxuLmFib3V0LWJ1ZGFwZXN0IHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjdmOGY4O1xufVxuLmFib3V0LWJ1ZGFwZXN0IC5pbWFnZSxcbi5hYm91dC1idWRhcGVzdCAudGV4dC1jb250YWluZXIge1xuICB3aWR0aDogMTAwJTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5hYm91dC1idWRhcGVzdCAuaW1hZ2UsXG4uYWJvdXQtYnVkYXBlc3QgLnRleHQtY29udGFpbmVyIHtcbiAgICB3aWR0aDogNTAlO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuYWJvdXQtYnVkYXBlc3QgLmltYWdlIHtcbiAgICBvcmRlcjogMjtcbiAgfVxuICAuYWJvdXQtYnVkYXBlc3QgLnRleHQtY29udGFpbmVyIHtcbiAgICBvcmRlcjogMTtcbiAgfVxufVxuLmFib3V0LWJ1ZGFwZXN0IC50ZXh0LWlubmVyIHtcbiAgcGFkZGluZzogMnJlbSAxcmVtIDNyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYWJvdXQtYnVkYXBlc3QgLnRleHQtaW5uZXIge1xuICAgIHBhZGRpbmc6IDNyZW0gNXJlbTtcbiAgfVxufVxuLmFib3V0LWJ1ZGFwZXN0IGgzIHtcbiAgY29sb3I6ICM2RDc1ODQ7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGZvbnQtc2l6ZTogMzBweDtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbn1cbi5hYm91dC1idWRhcGVzdCAuaW1hZ2Uge1xuICBwYWRkaW5nOiA3cmVtIDA7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5hYm91dC1idWRhcGVzdCAuaW1hZ2Uge1xuICAgIHBhZGRpbmc6IDExcmVtIDA7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5hYm91dC1idWRhcGVzdCAuaW1hZ2Uge1xuICAgIHBhZGRpbmc6IDEzcmVtIDA7XG4gIH1cbn1cbi5hYm91dC1idWRhcGVzdCAuaW1hZ2UgaW1nIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG59XG4uYWJvdXQtYnVkYXBlc3QgLm93bC1pdGVtIHtcbiAgZGlzcGxheTogZmxleDtcbn1cbi5hYm91dC1idWRhcGVzdCAub3dsLWl0ZW0gLm93bC1pdGVtID4gZGl2IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleDogMSAwIGF1dG87XG59XG4uYWJvdXQtYnVkYXBlc3QgLm93bC1jYXJvdXNlbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5hYm91dC1idWRhcGVzdCAub3dsLWNhcm91c2VsIC5vd2wtc3RhZ2Uge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gIH1cbiAgLmFib3V0LWJ1ZGFwZXN0IC5vd2wtY2Fyb3VzZWwgLm93bC1pdGVtIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXg6IDEgMCBhdXRvO1xuICAgIGhlaWdodDogaW5pdGlhbDtcbiAgfVxufVxuLmFib3V0LWJ1ZGFwZXN0IC5vd2wtY2Fyb3VzZWwgLm93bC1uYXYge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGhlaWdodDogNTBweDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIG1hcmdpbjogMDtcbiAgdG9wOiAxMCU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYWJvdXQtYnVkYXBlc3QgLm93bC1jYXJvdXNlbCAub3dsLW5hdiB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgIHRvcDogNTAlO1xuICB9XG59XG4uYWJvdXQtYnVkYXBlc3QgLm93bC1jYXJvdXNlbCAub3dsLWl0ZW0gPiBkaXYge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmFib3V0LWJ1ZGFwZXN0IC5vd2wtY2Fyb3VzZWwgLm93bC1pdGVtID4gZGl2IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICB9XG59XG4uYWJvdXQtYnVkYXBlc3QgLm93bC1jYXJvdXNlbCAub3dsLXByZXYsXG4uYWJvdXQtYnVkYXBlc3QgLm93bC1jYXJvdXNlbCAub3dsLW5leHQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG59XG4uYWJvdXQtYnVkYXBlc3QgLm93bC1jYXJvdXNlbCAub3dsLXByZXY6aG92ZXIsXG4uYWJvdXQtYnVkYXBlc3QgLm93bC1jYXJvdXNlbCAub3dsLW5leHQ6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi5hYm91dC1idWRhcGVzdCAub3dsLWNhcm91c2VsIC5vd2wtcHJldiBpLFxuLmFib3V0LWJ1ZGFwZXN0IC5vd2wtY2Fyb3VzZWwgLm93bC1uZXh0IGkge1xuICBjb2xvcjogI2ZlZmVmZTtcbiAgZm9udC1zaXplOiA2MHB4O1xuICBsaW5lLWhlaWdodDogMTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5hYm91dC1idWRhcGVzdCAub3dsLWNhcm91c2VsIC5vd2wtcHJldiBpLFxuLmFib3V0LWJ1ZGFwZXN0IC5vd2wtY2Fyb3VzZWwgLm93bC1uZXh0IGkge1xuICAgIGNvbG9yOiAjODMzMDYyO1xuICB9XG59XG4uYWJvdXQtYnVkYXBlc3QgLm93bC1jYXJvdXNlbCAub3dsLXByZXYge1xuICBsZWZ0OiAycmVtO1xufVxuLmFib3V0LWJ1ZGFwZXN0IC5vd2wtY2Fyb3VzZWwgLm93bC1uZXh0IHtcbiAgcmlnaHQ6IDJyZW07XG59XG4uYWJvdXQtYnVkYXBlc3QgLm93bC1jYXJvdXNlbCAub3dsLW5leHQgaTpiZWZvcmUge1xuICBjb2xvcjogI2ZlZmVmZTtcbiAgdGV4dC1zaGFkb3c6IDAgMCAyMHB4IHJnYmEoMTAsIDEwLCAxMCwgMC44KTtcbn1cbi5hYm91dC1idWRhcGVzdCAub3dsLWNhcm91c2VsIC5vd2wtZG90cyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvdHRvbTogMXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5hYm91dC1idWRhcGVzdCAub3dsLWNhcm91c2VsIC5vd2wtZG90cyB7XG4gICAgd2lkdGg6IDUwJTtcbiAgICB0b3A6IGluaXRpYWw7XG4gICAgdHJhbnNmb3JtOiBpbml0aWFsO1xuICAgIGJvdHRvbTogMXJlbTtcbiAgfVxufVxuLmFib3V0LWJ1ZGFwZXN0IC5vd2wtY2Fyb3VzZWwgLm93bC1kb3Qgc3BhbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1RTIyNDY7XG59XG4uYWJvdXQtYnVkYXBlc3QgLm93bC1jYXJvdXNlbCAub3dsLWRvdDpob3ZlciBzcGFuLCAuYWJvdXQtYnVkYXBlc3QgLm93bC1jYXJvdXNlbCAub3dsLWRvdC5hY3RpdmUgc3BhbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNhOTNkN2U7XG4gIHdpZHRoOiAxNHB4O1xuICBoZWlnaHQ6IDE0cHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAycHg7XG59XG5cbi5mcm9udC1wYWdlLWNvbnRhY3Qge1xuICBwYWRkaW5nOiAzcmVtIDAgMDtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQtYXR0YWNobWVudDogZml4ZWQ7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZnJvbnQtcGFnZS1jb250YWN0IHtcbiAgICBwYWRkaW5nOiAzcmVtIDA7XG4gIH1cbn1cbi5mcm9udC1wYWdlLWNvbnRhY3QgLm5mLWZpZWxkLWNvbnRhaW5lciB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG4uZnJvbnQtcGFnZS1jb250YWN0IC5ncmlkIHtcbiAgZ3JpZC1jb2x1bW4tZ2FwOiA2cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLmZyb250LXBhZ2UtY29udGFjdCAuZ3JpZCB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG59XG4uZnJvbnQtcGFnZS1jb250YWN0IGZvcm0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4uZnJvbnQtcGFnZS1jb250YWN0IGZvcm06OmFmdGVyIHtcbiAgY29udGVudDogXCIgXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogLTExcmVtO1xuICBsZWZ0OiAtNnJlbTtcbiAgcmlnaHQ6IC02cmVtO1xuICBib3R0b206IC0xMHJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0IyQzkwQTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICB6LWluZGV4OiAtMTtcbiAgdHJhbnNmb3JtOiByb3RhdGUoN2RlZyk7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gIC5mcm9udC1wYWdlLWNvbnRhY3QgZm9ybTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuLmZyb250LXBhZ2UtY29udGFjdCAuZm9ybS13cmFwcGVyIHtcbiAgcGFkZGluZzogMnJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2I2Y2MwMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5mcm9udC1wYWdlLWNvbnRhY3QgLmZvcm0td3JhcHBlciB7XG4gICAgcGFkZGluZzogM3JlbSA2cmVtIDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgd2lkdGg6IGluaXRpYWw7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5mcm9udC1wYWdlLWNvbnRhY3QgLmZpZWxkcyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBnYXA6IDFyZW07XG4gIH1cbn1cbi5mcm9udC1wYWdlLWNvbnRhY3QgLmNvbCB7XG4gIGZsZXg6IDEgMCA1MCU7XG59XG4uZnJvbnQtcGFnZS1jb250YWN0IHRleHRhcmVhIHtcbiAgaGVpZ2h0OiA4OXB4O1xuICBib3JkZXItcmFkaXVzOiAxNXB4O1xufVxuLmZyb250LXBhZ2UtY29udGFjdCBpbnB1dFt0eXBlPXN1Ym1pdF0sXG4uZnJvbnQtcGFnZS1jb250YWN0IGlucHV0W3R5cGU9dGV4dF0sXG4uZnJvbnQtcGFnZS1jb250YWN0IGlucHV0W3R5cGU9ZW1haWxdLFxuLmZyb250LXBhZ2UtY29udGFjdCBpbnB1dFt0eXBlPXRlbF0ge1xuICBib3JkZXItcmFkaXVzOiAxMDBweDtcbn1cbi5mcm9udC1wYWdlLWNvbnRhY3QgaW5wdXRbdHlwZT10ZXh0XSxcbi5mcm9udC1wYWdlLWNvbnRhY3QgaW5wdXRbdHlwZT1lbWFpbF0sXG4uZnJvbnQtcGFnZS1jb250YWN0IGlucHV0W3R5cGU9dGVsXSxcbi5mcm9udC1wYWdlLWNvbnRhY3QgdGV4dGFyZWEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlO1xuICBib3JkZXI6IG5vbmU7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG4uZnJvbnQtcGFnZS1jb250YWN0IGlucHV0W3R5cGU9dGV4dF06OnBsYWNlaG9sZGVyLFxuLmZyb250LXBhZ2UtY29udGFjdCBpbnB1dFt0eXBlPWVtYWlsXTo6cGxhY2Vob2xkZXIsXG4uZnJvbnQtcGFnZS1jb250YWN0IGlucHV0W3R5cGU9dGVsXTo6cGxhY2Vob2xkZXIsXG4uZnJvbnQtcGFnZS1jb250YWN0IHRleHRhcmVhOjpwbGFjZWhvbGRlciB7XG4gIGNvbG9yOiAjNDA0NDRkO1xufVxuLmZyb250LXBhZ2UtY29udGFjdCAuZ2FsbGVyeS1jb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuZnJvbnQtcGFnZS1jb250YWN0IC5nYWxsZXJ5LWNvbnRhaW5lciB7XG4gICAgcGFkZGluZzogMCAycmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gIH1cbn1cbi5mcm9udC1wYWdlLWNvbnRhY3QgLmdhbGxlcnktY29udGFpbmVyIC5nYWxsZXJ5LWl0ZW0ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxleDogMSAxIGNhbGMoMzMuMzMlIC0gMXJlbSk7XG4gIG1hcmdpbjogMCAwLjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJvcmRlci1yYWRpdXM6IDE1cHg7XG59XG4uZnJvbnQtcGFnZS1jb250YWN0IC5nYWxsZXJ5LWNvbnRhaW5lciAuZ2FsbGVyeS1pdGVtIGltZyB7XG4gIGZsb2F0OiBsZWZ0O1xufVxuLmZyb250LXBhZ2UtY29udGFjdCAuZGF0YS1jb250YWluZXIgaDIge1xuICBsaW5lLWhlaWdodDogMS4zO1xufVxuLmZyb250LXBhZ2UtY29udGFjdCAuZGF0YS1jb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IGNvbHVtbjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5mcm9udC1wYWdlLWNvbnRhY3QgLmRhdGEtY29udGFpbmVyIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgZmxleC1mbG93OiByb3c7XG4gIH1cbn1cbi5mcm9udC1wYWdlLWNvbnRhY3QgcCB7XG4gIGNvbG9yOiAjNUUyMjQ2O1xufVxuLmZyb250LXBhZ2UtY29udGFjdCBoMiB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGNvbG9yOiAjZmVmZWZlO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtd2VpZ2h0OiA4MDA7XG4gIHBhZGRpbmc6IDAgM3JlbTtcbn1cbi5mcm9udC1wYWdlLWNvbnRhY3QgLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM5ZTFjNjI7XG4gIHdpZHRoOiAxMDAlO1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICBwYWRkaW5nOiAwLjVyZW07XG59XG4uZnJvbnQtcGFnZS1jb250YWN0IC5idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNUUyMjQ2O1xufVxuXG4jbWFwIHtcbiAgaGVpZ2h0OiAzMHZoO1xufVxuXG4uZmx5LWluIHtcbiAgcGFkZGluZzogM3JlbSAwO1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTQ5Ljg1ZGVnLCAjN2UxZjU0IDAlLCAjNWUyMjQ2IDU1LjIxJSksIHVybChcIi4uL2Fzc2V0cy9idWRhcGVzdC9tZF9yZWxheC1jb250YWN0LWJnLmpwZ1wiKSwgI2Y1ZjZmNztcbiAgYmFja2dyb3VuZC1ibGVuZC1tb2RlOiBub3JtYWwsIG11bHRpcGx5LCBjb2xvciwgbm9ybWFsLCBub3JtYWw7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZmx5LWluIHtcbiAgICBwYWRkaW5nOiA2cmVtIDA7XG4gIH1cbn1cbi5mbHktaW5fX2NhcmQgLnBhcmFncmFwaC10aXRsZSB7XG4gIGZvbnQtc2l6ZTogMS4ycmVtO1xufVxuLmZseS1pbl9fY2FyZCBpbWcge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwIGF1dG87XG59XG4uZmx5LWluX19jYXJkIHAge1xuICBtYXgtd2lkdGg6IDQwY2g7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuLmZseS1pbl9faGVhZGVyIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cbi5mbHktaW4gcCB7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuLmZseS1pbiAucHJpY2UtbGlzdCB0aCBzcGFuIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4uZmx5LWluIC5jb2x1bW4tMixcbi5mbHktaW4gLmNvbHVtbi0zIHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG4uZmx5LWluIC5jb2x1bW4tNCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5mbHktaW4gLnByaWNlcy5ncmlkIHtcbiAgICBtYXJnaW46IDA7XG4gIH1cbn1cbi5mbHktaW4gLmxpbmUge1xuICBoZWlnaHQ6IDFweDtcbiAgYm9yZGVyLXRvcDogZGFzaGVkIDFweCAjZmVmZWZlO1xuICBtYXJnaW46IDJyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZmx5LWluIC5saW5lIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi5mbHktaW4gLnRhYmxlLXdyYXBwZXIge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBib3gtc2hhZG93OiAwcHggMHB4IDEwcHggcmdiYSg2NCwgNjgsIDc3LCAwLjIpO1xuICBib3JkZXItcmFkaXVzOiAxNXB4O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLmZseS1pbiAudGFibGUtd3JhcHBlciB7XG4gICAgbWFyZ2luLWxlZnQ6IDJyZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAycmVtO1xuICAgIHdpZHRoOiA2NTBweDtcbiAgfVxufVxuLmZseS1pbiB0YWJsZSB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGJvcmRlcjogbm9uZTtcbiAgZm9udC1zaXplOiAwLjkzMzMzMzMzMzNyZW07XG59XG4uZmx5LWluIHRhYmxlIHRyIHtcbiAgYm9yZGVyOiBub25lO1xufVxuLmZseS1pbiB0aGVhZCB7XG4gIGJvcmRlcjogbm9uZTtcbn1cbi5mbHktaW4gdGhlYWQgdGgge1xuICBjb2xvcjogI2ZlZmVmZTtcbiAgcGFkZGluZzogMC41cmVtO1xuICBmb250LXdlaWdodDogNzAwO1xufVxuLmZseS1pbiB0aGVhZCB0ZCB7XG4gIHBhZGRpbmc6IDAuNXJlbTtcbn1cbi5mbHktaW4gdGhlYWQgdGguY29sdW1uLTEsXG4uZmx5LWluIHRoZWFkIHRoLmNvbHVtbi00IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzhhOTE5ZDtcbn1cbi5mbHktaW4gdGhlYWQgdGguY29sdW1uLTIsXG4uZmx5LWluIHRoZWFkIHRoLmNvbHVtbi0zIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzZkNzU4NDtcbiAgYm9yZGVyLWxlZnQ6IHNvbGlkIDFweCAjZmVmZWZlO1xufVxuLmZseS1pbiB0aGVhZCB0aC5jb2x1bW4tNCB7XG4gIGJvcmRlci1sZWZ0OiBzb2xpZCAxcHggI2ZlZmVmZTtcbn1cbi5mbHktaW4gdGhlYWQgdGggc3BhbiB7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG59XG4uZmx5LWluIHRoZWFkIHN2ZyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lO1xufVxuLmZseS1pbiB0Ym9keSB7XG4gIGJvcmRlcjogbm9uZTtcbn1cbi5mbHktaW4gdGJvZHkgdGQge1xuICBmb250LXdlaWdodDogNzAwO1xufVxuLmZseS1pbiB0Ym9keSB0ZDpmaXJzdC1jaGlsZCB7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG59XG4uZmx5LWluIHRib2R5IHRkLmNvbHVtbi0yLFxuLmZseS1pbiB0Ym9keSB0ZC5jb2x1bW4tMyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM5OTllYTk7XG4gIGNvbG9yOiAjZmVmZWZlO1xuICBmb250LXNpemU6IDEuMzMzMzMzMzMzM3JlbTtcbn1cbi5mbHktaW4gdGJvZHkgdGQuY29sdW1uLTIgc3Bhbixcbi5mbHktaW4gdGJvZHkgdGQuY29sdW1uLTMgc3BhbiB7XG4gIGZvbnQtc2l6ZTogMC45MzMzMzMzMzMzcmVtO1xufVxuLmZseS1pbiB0Ym9keSB0cjpudGgtY2hpbGQoZXZlbikgdGQuY29sdW1uLTEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjBmMWYyO1xufVxuLmZseS1pbiB0Ym9keSB0cjpudGgtY2hpbGQoZXZlbikgdGQuY29sdW1uLTIsXG4uZmx5LWluIHRib2R5IHRyOm50aC1jaGlsZChldmVuKSB0ZC5jb2x1bW4tMyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM4YTkxOWQ7XG59XG4uZmx5LWluIHRib2R5IHRkLmNvbHVtbi0zLFxuLmZseS1pbiB0Ym9keSB0ZC5jb2x1bW4tNCB7XG4gIGJvcmRlci1sZWZ0OiBzb2xpZCAxcHggI2ZlZmVmZTtcbn1cbi5mbHktaW4gdGJvZHkgdGQuY29sdW1uLTQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYjZjYzAwO1xuICBjb2xvcjogI2ZlZmVmZTtcbiAgZm9udC1zaXplOiAxLjMzMzMzMzMzMzNyZW07XG59XG4uZmx5LWluIHRib2R5IHRyOm50aC1jaGlsZChldmVuKSB0ZC5jb2x1bW4tNCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNhYWJlMDk7XG59XG4uZmx5LWluIC50YWJsZS1vdmVyZmxvdyB7XG4gIG92ZXJmbG93LXg6IGF1dG87XG4gIG9yZGVyOiAyO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmZseS1pbiAudGFibGUtb3ZlcmZsb3cge1xuICAgIG9yZGVyOiAxO1xuICB9XG59XG4uZmx5LWluIC50ZXh0LXdyYXBwZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIG9yZGVyOiAxO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLmZseS1pbiAudGV4dC13cmFwcGVyIHtcbiAgICBtYXJnaW46IDAgMnJlbSAycmVtO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZmx5LWluIC50ZXh0LXdyYXBwZXIge1xuICAgIG9yZGVyOiAyO1xuICB9XG59XG4uZmx5LWluIC50ZXh0LXdyYXBwZXIgaDIge1xuICBjb2xvcjogI2ZlZmVmZTtcbiAgZm9udC1zaXplOiAxLjZyZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG4uZmx5LWluIC50ZXh0LXdyYXBwZXIgcCB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbi5kdy1saWdodCB7XG4gIHBhZGRpbmc6IDNyZW0gMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5kdy1saWdodCB7XG4gICAgcGFkZGluZzogNnJlbSAwO1xuICB9XG59XG4uZHctbGlnaHQgcCB7XG4gIGZvbnQtc2l6ZTogMC45MzMzMzMzMzMzcmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLmR3LWxpZ2h0IC5ncmlkIHtcbiAgICBtYXJnaW4tbGVmdDogMnJlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IDJyZW07XG4gIH1cbiAgLmR3LWxpZ2h0IC5ncmlkIC5ncmlkIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbn1cbi5kdy1saWdodF9faGVhZGVyIHtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbn1cbi5kdy1saWdodF9faGVhZGVyIHAge1xuICBmb250LXNpemU6IDEuMDY2NjY2NjY2N3JlbTtcbn1cbi5kdy1saWdodCB1bCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG4uZHctbGlnaHQgaDMge1xuICBjb2xvcjogIzllMWM2MjtcbiAgZm9udC1zaXplOiAxLjJyZW07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5kdy1saWdodCBoMyBzcGFuIHtcbiAgY29sb3I6ICNmZWZlZmU7XG4gIHotaW5kZXg6IDE7XG4gIGxlZnQ6IC0yLjVyZW07XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDI2cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgZm9udC1zaXplOiAxLjA2NjY2NjY2NjdyZW07XG59XG4uZHctbGlnaHQgaDMgc3Bhbjo6YWZ0ZXIge1xuICBjb250ZW50OiBcIiBcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0IyQzkwQTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMjRweDtcbiAgaGVpZ2h0OiAyNHB4O1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIHotaW5kZXg6IC0xO1xufVxuLmR3LWxpZ2h0IGg0IHtcbiAgY29sb3I6ICM5ZTFjNjI7XG4gIGZvbnQtc2l6ZTogMS4wNjY2NjY2NjY3cmVtO1xuICBmb250LXdlaWdodDogNDAwO1xufVxuLmR3LWxpZ2h0IGxpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmb250LXNpemU6IDAuOTMzMzMzMzMzM3JlbTtcbn1cbi5kdy1saWdodCBsaTo6YWZ0ZXIge1xuICBjb250ZW50OiBcIiBcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA3cHg7XG4gIGxlZnQ6IC0xcmVtO1xuICB3aWR0aDogN3B4O1xuICBoZWlnaHQ6IDdweDtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjQjJDOTBBO1xufVxuLmR3LWxpZ2h0IC5kZW50YWwtd2Vlay1kZXNjcmlwdGlvbiAudGV4dCB7XG4gIG9yZGVyOiAyO1xuICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG59XG4uZHctbGlnaHQgLmRlbnRhbC13ZWVrLWRlc2NyaXB0aW9uIC5sb2dvIHtcbiAgb3JkZXI6IDE7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZHctbGlnaHQgLmRlbnRhbC13ZWVrLWRlc2NyaXB0aW9uIC50ZXh0LFxuLmR3LWxpZ2h0IC5kZW50YWwtd2Vlay1kZXNjcmlwdGlvbiAubG9nbyB7XG4gICAgb3JkZXI6IGluaXRpYWw7XG4gIH1cbn1cbi5kdy1saWdodCAudGV4dCB7XG4gIHBhZGRpbmc6IDFyZW0gMXJlbSAxcmVtIDMuNXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gIC5kdy1saWdodCAudGV4dCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgfVxufVxuLmR3LWxpZ2h0IC5sb2dvIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KDE0Mi4xOGRlZywgI2Y0ZjVmNyAwLjA0JSwgI2UwZTJlNSAxMDAuMDQlKTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gIC5kdy1saWdodCAubG9nbyB7XG4gICAgcGFkZGluZzogMXJlbTtcbiAgfVxufVxuLmR3LWxpZ2h0IC5sb2dvIGltZyB7XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG59XG4uZHctbGlnaHQgLnVwY29tbWluZyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNCMkM5MEE7XG4gIGNvbG9yOiAjZmVmZWZlO1xuICBmb250LXdlaWdodDogNzAwO1xuICBib3JkZXItcmFkaXVzOiAxMDBweDtcbiAgcGFkZGluZzogMC41cmVtIDJyZW07XG4gIGZvbnQtdmFyaWFudC1udW1lcmljOiBsaW5pbmctbnVtcztcbiAgZm9udC1mZWF0dXJlLXNldHRpbmdzOiBcImxudW1cIjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgLmR3LWxpZ2h0IC51cGNvbW1pbmcge1xuICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gIH1cbn1cbi5kdy1saWdodCAudXBjb21taW5nIHNwYW4ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAxLjQ2NjY2NjY2NjdyZW07XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5wZXRlci1neW9yZ3ktcXVvdGUgLndwLWJsb2NrLWNvbHVtbjpudGgtY2hpbGQoMSkge1xuICAgIGZsZXgtYmFzaXM6IDc1JTtcbiAgfVxuICAucGV0ZXItZ3lvcmd5LXF1b3RlIC53cC1ibG9jay1jb2x1bW46bnRoLWNoaWxkKDIpIHtcbiAgICBmbGV4LWJhc2lzOiAyNSU7XG4gIH1cbn1cblxuLmxlYWRlci1pbWFnZSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlOGU5ZWI7XG59XG5cbi5wYWdlLXRlbXBsYXRlLXBhZ2UtY29udGFjdCAjbWFwIHtcbiAgaGVpZ2h0OiAyNi42NjY2NjY2NjY3cmVtO1xuICB3aWR0aDogMTAwJTtcbn1cbi5wYWdlLXRlbXBsYXRlLXBhZ2UtY29udGFjdCAuZ3JpZCB7XG4gIGdyaWQtY29sdW1uLWdhcDogMDtcbn1cbi5wYWdlLXRlbXBsYXRlLXBhZ2UtY29udGFjdCAuZm9ybS1jb250YWN0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzllMWM2MjtcbiAgcGFkZGluZzogM3JlbTtcbn1cbi5wYWdlLXRlbXBsYXRlLXBhZ2UtY29udGFjdCAuZm9ybS1jb250YWN0IC5mb3JtLXRpdGxlIHtcbiAgZm9udC1zaXplOiAxLjMzMzMzMzMzMzNyZW07XG4gIGxldHRlci1zcGFjaW5nOiAwO1xuICBtYXJnaW4tYm90dG9tOiAzcmVtO1xuICBmb250LXdlaWdodDogNTAwO1xufVxuLnBhZ2UtdGVtcGxhdGUtcGFnZS1jb250YWN0IC5mb3JtLWNvbnRhY3QgdGV4dGFyZWEsXG4ucGFnZS10ZW1wbGF0ZS1wYWdlLWNvbnRhY3QgLmZvcm0tY29udGFjdCBpbnB1dFt0eXBlPXRlbF0sXG4ucGFnZS10ZW1wbGF0ZS1wYWdlLWNvbnRhY3QgLmZvcm0tY29udGFjdCBpbnB1dFt0eXBlPWVtYWlsXSxcbi5wYWdlLXRlbXBsYXRlLXBhZ2UtY29udGFjdCAuZm9ybS1jb250YWN0IGlucHV0W3R5cGU9dGV4dF0ge1xuICBiYWNrZ3JvdW5kOiAjZmVmZWZlO1xuICBib3JkZXI6IG5vbmU7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIGNvbG9yOiAjNUUyMjQ2O1xufVxuLnBhZ2UtdGVtcGxhdGUtcGFnZS1jb250YWN0IC5mb3JtLWNvbnRhY3QgdGV4dGFyZWE6OnBsYWNlaG9sZGVyLFxuLnBhZ2UtdGVtcGxhdGUtcGFnZS1jb250YWN0IC5mb3JtLWNvbnRhY3QgaW5wdXRbdHlwZT10ZWxdOjpwbGFjZWhvbGRlcixcbi5wYWdlLXRlbXBsYXRlLXBhZ2UtY29udGFjdCAuZm9ybS1jb250YWN0IGlucHV0W3R5cGU9ZW1haWxdOjpwbGFjZWhvbGRlcixcbi5wYWdlLXRlbXBsYXRlLXBhZ2UtY29udGFjdCAuZm9ybS1jb250YWN0IGlucHV0W3R5cGU9dGV4dF06OnBsYWNlaG9sZGVyIHtcbiAgY29sb3I6ICM1RTIyNDY7XG59XG4ucGFnZS10ZW1wbGF0ZS1wYWdlLWNvbnRhY3QgLmZvcm0tY29udGFjdCB0ZXh0YXJlYSB7XG4gIGhlaWdodDogMjUwcHg7XG59XG4ucGFnZS10ZW1wbGF0ZS1wYWdlLWNvbnRhY3QgLmZvcm0tY29udGFjdCBpbnB1dFt0eXBlPWJ1dHRvbl0ge1xuICBmbG9hdDogcmlnaHQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICNCMkM5MEE7XG59XG4ucGFnZS10ZW1wbGF0ZS1wYWdlLWNvbnRhY3QgLmZvcm0tY29udGFjdCAubmYtZm9ybS1maWVsZHMtcmVxdWlyZWQge1xuICBkaXNwbGF5OiBub25lO1xufVxuLnBhZ2UtdGVtcGxhdGUtcGFnZS1jb250YWN0IC5mb3JtLWNvbnRhY3QgLm5mLWZpZWxkLWNvbnRhaW5lciB7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbn1cbi5wYWdlLXRlbXBsYXRlLXBhZ2UtY29udGFjdCAucGFya2luZyB7XG4gIHBhZGRpbmc6IDNyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZWZlZmU7XG59XG4ucGFnZS10ZW1wbGF0ZS1wYWdlLWNvbnRhY3QgLnBhcmtpbmcgdGQsXG4ucGFnZS10ZW1wbGF0ZS1wYWdlLWNvbnRhY3QgLnBhcmtpbmcgdGgge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdpZHRoOiAzMy4zMyU7XG59XG4ucGFnZS10ZW1wbGF0ZS1wYWdlLWNvbnRhY3QgLnBhcmtpbmcgdGgge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNUUyMjQ2O1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cbi5wYWdlLXRlbXBsYXRlLXBhZ2UtY29udGFjdCAucGFya2luZyB0cjpsYXN0LWNoaWxkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzZENzU4NDtcbn1cbi5wYWdlLXRlbXBsYXRlLXBhZ2UtY29udGFjdCAucGFya2luZyB0cjpsYXN0LWNoaWxkIHRkIHtcbiAgY29sb3I6ICNmZWZlZmU7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGZvbnQtc2l6ZTogMnJlbTtcbn1cbi5wYWdlLXRlbXBsYXRlLXBhZ2UtY29udGFjdCAucmVjZXB0aW9uIHtcbiAgbWFyZ2luLXRvcDogMnJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5wYWdlLXRlbXBsYXRlLXBhZ2UtY29udGFjdCAucmVjZXB0aW9uIHtcbiAgICB3aWR0aDogODAlO1xuICB9XG59XG4ucGFnZS10ZW1wbGF0ZS1wYWdlLWNvbnRhY3QgLmFkZHJlc3Mge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNUUyMjQ2O1xuICBjb2xvcjogI2ZlZmVmZTtcbiAgcGFkZGluZzogM3JlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5wYWdlLXRlbXBsYXRlLXBhZ2UtY29udGFjdCAuYWRkcmVzcyB7XG4gICAgd2lkdGg6IDgwJTtcbiAgfVxufVxuLnBhZ2UtdGVtcGxhdGUtcGFnZS1jb250YWN0IC5hZGRyZXNzIC5hZGRyZXNzLXRpdGxlIHtcbiAgZm9udC1zaXplOiAxLjQ2NjY2NjY2NjdyZW07XG59XG4ucGFnZS10ZW1wbGF0ZS1wYWdlLWNvbnRhY3QgLmFkZHJlc3MgLmZhLXVsIHtcbiAgbWFyZ2luLWxlZnQ6IDEuNXJlbTtcbn1cbi5wYWdlLXRlbXBsYXRlLXBhZ2UtY29udGFjdCAuYWRkcmVzcyBhIHtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG5cbi5wYWdlLXRlbXBsYXRlLXBhZ2UtZ2FsbGVyeSAuZ2FsbGVyeS1ncmlkIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cbi5wYWdlLXRlbXBsYXRlLXBhZ2UtZ2FsbGVyeSAucGFnZS1oZWFkZXIge1xuICBmbGV4LWZsb3c6IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gIC5wYWdlLXRlbXBsYXRlLXBhZ2UtZ2FsbGVyeSAucGFnZS1oZWFkZXIgLnRpdGxlLWNvbnRhaW5lci1nYWxsZXJ5IHtcbiAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAucGFnZS10ZW1wbGF0ZS1wYWdlLWdhbGxlcnkgLnBhZ2UtaGVhZGVyIHtcbiAgICBmbGV4LWZsb3c6IHJvdztcbiAgfVxufVxuLnBhZ2UtdGVtcGxhdGUtcGFnZS1nYWxsZXJ5IC5idXR0b24tZ3JvdXAge1xuICBmbGV4LWZsb3c6IGNvbHVtbjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5wYWdlLXRlbXBsYXRlLXBhZ2UtZ2FsbGVyeSAuYnV0dG9uLWdyb3VwIHtcbiAgICBmbGV4LWZsb3c6IHJvdztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG4ucGFnZS10ZW1wbGF0ZS1wYWdlLWdhbGxlcnkgLmJ1dHRvbi1ncm91cCBidXR0b24ge1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtZmFtaWx5OiBcIlJhbGV3YXlcIiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDAuOTMzMzMzMzMzM3JlbTtcbiAgYm9yZGVyLXJhZGl1czogMXJlbTtcbiAgcGFkZGluZzogMC41cmVtIDFyZW07XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG59XG4ucGFnZS10ZW1wbGF0ZS1wYWdlLWdhbGxlcnkgLmJ1dHRvbi1ncm91cCBidXR0b24gaSB7XG4gIGZvbnQtc2l6ZTogMS4wNjY2NjY2NjY3cmVtO1xufVxuLnBhZ2UtdGVtcGxhdGUtcGFnZS1nYWxsZXJ5IC5idXR0b24tZ3JvdXAgYnV0dG9uLmlzLWNoZWNrZWQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNUUyMjQ2O1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cbi5wYWdlLXRlbXBsYXRlLXBhZ2UtZ2FsbGVyeSAuaW1hZ2VzLWdyaWQgLm1hc29ucnkge1xuICBtYXJnaW46IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAucGFnZS10ZW1wbGF0ZS1wYWdlLWdhbGxlcnkgLmdyaWQtc2l6ZXIge1xuICAgIHdpZHRoOiAzMy4zMyU7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5wYWdlLXRlbXBsYXRlLXBhZ2UtZ2FsbGVyeSAuZ3JpZC1zaXplciB7XG4gICAgd2lkdGg6IDIwJTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLnBhZ2UtdGVtcGxhdGUtcGFnZS1nYWxsZXJ5IC5tYXNvbnJ5LWl0ZW0ge1xuICAgIHdpZHRoOiAzMy4zMyU7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5wYWdlLXRlbXBsYXRlLXBhZ2UtZ2FsbGVyeSAubWFzb25yeS1pdGVtIHtcbiAgICB3aWR0aDogMjAlO1xuICB9XG59XG4ucGFnZS10ZW1wbGF0ZS1wYWdlLWdhbGxlcnkgLnZpZGVvLWl0ZW0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4ucGFnZS10ZW1wbGF0ZS1wYWdlLWdhbGxlcnkgLnZpZGVvLWl0ZW0gc3ZnIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgdHJhbnNsYXRlWSgtNTAlKSBzY2FsZSg3KTtcbn1cbi5wYWdlLXRlbXBsYXRlLXBhZ2UtZ2FsbGVyeSAudmlkZW8taXRlbSBwYXRoIHtcbiAgZmlsbDogI2ZlZmVmZTtcbiAgb3BhY2l0eTogMC41O1xufVxuXG4ubWFpbi1ncmlkIC5jb250ZW50IHtcbiAgcGFkZGluZzogMnJlbSAwO1xufVxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICBGYWN0b3J5IG9sZGFsb24gYXogaWtvbm9zIGZlbHNvcm9sw6FzXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuW2RhdGEtd2hhdGlucHV0PW1vdXNlXSAucmVhc29ucyAucmVhc29ucy1pdGVtOmhvdmVyIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAyO1xuICBib3gtc2hhZG93OiBub25lO1xufVxuXG4ucmVhc29ucyB7XG4gIHBhZGRpbmc6IDNyZW0gMDtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KDk1ZGVnLCAjQjJDOTBBLCAjNkQ3NTg0KTtcbn1cbi5yZWFzb25zIC5yZWFzb25zLWl0ZW1zIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAucmVhc29ucyAucmVhc29ucy1pdGVtcyB7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAucmVhc29ucyAucmVhc29ucy1pdGVtcyB7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIHBhZGRpbmc6IDAgNHJlbTtcbiAgfVxufVxuLnJlYXNvbnMgLnJlYXNvbnMtaXRlbSB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW46IDAgMXJlbTtcbiAgZmxleC1ncm93OiAxO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IGNvbHVtbjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTtcbiAgcGFkZGluZzogMXJlbSAxcmVtIDNyZW07XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLnJlYXNvbnMgLnJlYXNvbnMtaXRlbSB7XG4gICAgd2lkdGg6IGluaXRpYWw7XG4gICAgZmxleDogMSAwIGNhbGMoMzMuMzMlIC0gMnJlbSk7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5yZWFzb25zIC5yZWFzb25zLWl0ZW0ge1xuICAgIGZsZXg6IDEgMCBjYWxjKDIwJSAtIDJyZW0pO1xuICB9XG59XG5AbWVkaWEgYWxsIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IGFjdGl2ZSkgYW5kIChtYXgtd2lkdGg6IDEwMjNweCkge1xuICAucmVhc29ucyAucmVhc29ucy1pdGVtIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuQG1lZGlhIGFsbCBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSwgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgLnJlYXNvbnMgLnJlYXNvbnMtaXRlbSB7XG4gICAgd2lkdGg6IGNhbGMoMjAlIC0gMnJlbSk7XG4gIH1cbn1cbi5yZWFzb25zIC5yZWFzb25zLWl0ZW06aG92ZXIge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMjtcbiAgYm94LXNoYWRvdzogMCAwIDMwcHggcmdiYSgxMCwgMTAsIDEwLCAwLjUpO1xufVxuLnJlYXNvbnMgcCwgLnJlYXNvbnMgaDIge1xuICBjb2xvcjogIzQwNDQ0RDtcbn1cbi5yZWFzb25zIHAge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBmb250LXNpemU6IDAuNzg2NjY2NjY2N3JlbTtcbn1cbi5yZWFzb25zIC5yZWFzb25zLWl0ZW0taW5uZXIge1xuICBoZWlnaHQ6IDEwMCU7XG59XG4ucmVhc29ucyAuYnV0dG9uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDFyZW07XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjQjJDOTBBO1xuICBjb2xvcjogI2ZlZmVmZTtcbiAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgZm9udC1zaXplOiAwLjczMzMzMzMzMzNyZW07XG4gIHBhZGRpbmc6IDAuMnJlbSAwLjVyZW07XG59XG4ucmVhc29ucyAucmVhc29ucy1pdGVtLWltYWdlIHtcbiAgcGFkZGluZzogMCA0LjVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAucmVhc29ucyAucmVhc29ucy1pdGVtLWltYWdlIHtcbiAgICBwYWRkaW5nOiAwIDIuNXJlbTtcbiAgfVxufVxuLnJlYXNvbnMgLnJlYXNvbnMtaXRlbS1pbWFnZSBpbWcge1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDtcbiAgd2lkdGg6IDE1MHB4O1xuICBtYXJnaW46IDAgYXV0bztcbiAgZGlzcGxheTogYmxvY2s7XG59XG4ucmVhc29ucyAucmVhc29ucy1pdGVtLXRpdGxlIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnJlYXNvbnMgLnJlYXNvbnMtaXRlbS10aXRsZSB7XG4gICAgZm9udC1zaXplOiAwLjhyZW07XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnJlYXNvbnMgLnJlYXNvbnMtaXRlbS10aXRsZSB7XG4gICAgZm9udC1zaXplOiAxLjA2NjY2NjY2NjdyZW07XG4gIH1cbn1cblxuLmZhY3RvcnktY29udGVudCB7XG4gIG1heC13aWR0aDogOTYwcHggIWltcG9ydGFudDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLmZhY3RvcnktY29udGVudCB7XG4gICAgbWF4LXdpZHRoOiAxMDI0cHggIWltcG9ydGFudDtcbiAgfVxufVxuXG4uZGVudGFsLXdlZWstZm9ybSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM4MDFmNTU7XG4gIHBhZGRpbmc6IDNyZW0gMi41cmVtO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHdyYXA7XG59XG4uZGVudGFsLXdlZWstZm9ybSBwIHtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG4uZGVudGFsLXdlZWstZm9ybV9fdGV4dCB7XG4gIGZsZXg6IDEgMSBjYWxjKDYwJSAtIDFyZW0pO1xuICBtYXJnaW46IDAgMC41cmVtO1xufVxuLmRlbnRhbC13ZWVrLWZvcm1fX2Zvcm0ge1xuICBmbGV4OiAxIDEgY2FsYyg0MCUgLSAxcmVtKTtcbiAgbWFyZ2luOiAwIDAuNXJlbTtcbn1cbi5kZW50YWwtd2Vlay1mb3JtIC5JbnB1dEJsb2NrIHtcbiAgZmxleDogMSAwIDEwMCU7XG4gIG1hcmdpbjogMCAwLjVyZW07XG59XG4uZGVudGFsLXdlZWstZm9ybV9faW5wdXRbdHlwZT10ZXh0XSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLmRlbnRhbC13ZWVrLWZvcm1fX2lucHV0IHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgcGFkZGluZzogMXJlbSAycmVtO1xuICBoZWlnaHQ6IGluaXRpYWw7XG4gIGxpbmUtaGVpZ2h0OiBpbml0aWFsO1xuICBmb250LXNpemU6IDEuMDY2NjY2NjY2N3JlbTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG4uZGVudGFsLXdlZWstZm9ybV9faW5wdXQ6OnBsYWNlaG9sZGVyIHtcbiAgY29sb3I6ICNmZWZlZmU7XG4gIGZvbnQtc2l6ZTogMS4wNjY2NjY2NjY3cmVtO1xufVxuLmRlbnRhbC13ZWVrLWZvcm1fX2ZpZWxkc2V0IHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGZsZXgtd3JhcDogd3JhcDtcbn1cbi5kZW50YWwtd2Vlay1mb3JtX19yZXNwb25zZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkOTAwMDA7XG4gIGNvbG9yOiAjZmVmZWZlO1xuICB3aWR0aDogNTAlO1xuICBtYXJnaW46IDAgYXV0bztcbn1cblxuLnBhZ2UtaWQtMTE5OCB0ZDpudGgtY2hpbGQoMSkge1xuICB3aWR0aDogMzAlO1xufVxuLnBhZ2UtaWQtMTE5OCB0ZDpudGgtY2hpbGQoMikge1xuICB3aWR0aDogMjAlO1xufVxuLnBhZ2UtaWQtMTE5OCB0ZDpudGgtY2hpbGQoMykge1xuICB3aWR0aDogNTAlO1xufVxuXG4uYmxvZy1jb250YWluZXIgLmdyaWQge1xuICBncmlkLXRlbXBsYXRlLWFyZWFzOiBcImNvbnRlbnRcIiBcInNpZGViYXJcIjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ibG9nLWNvbnRhaW5lciAuZ3JpZCB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1hcmVhczogXCJzaWRlYmFyIGNvbnRlbnRcIjtcbiAgfVxufVxuLmJsb2ctY29udGFpbmVyIC5zaWRlYmFyIHtcbiAgZ3JpZC1hcmVhOiBzaWRlYmFyO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmJsb2ctY29udGFpbmVyIC5zaWRlYmFyIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDZyZW07XG4gIH1cbn1cbi5ibG9nLWNvbnRhaW5lciAuY29udGVudCB7XG4gIHBhZGRpbmctdG9wOiAwO1xuICBncmlkLWFyZWE6IGNvbnRlbnQ7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuYmxvZy1jb250YWluZXIgLmdyaWQtc2l6ZXIsXG4uYmxvZy1jb250YWluZXIgLm1hc29ucnktaXRlbSB7XG4gICAgd2lkdGg6IDMzLjMzJTtcbiAgfVxufVxuLmJsb2ctY29udGFpbmVyIC5ncmlkLWl0ZW0taW5uZXIge1xuICBwYWRkaW5nLWJvdHRvbTogNHJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ibG9nLWNvbnRhaW5lciAuZ3JpZC1pdGVtLWlubmVyOmhvdmVyIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7XG4gICAgei1pbmRleDogMTEwMDtcbiAgICBib3gtc2hhZG93OiAwIDAgMzBweCByZ2JhKDEwLCAxMCwgMTAsIDAuMSk7XG4gIH1cbn1cbi5ibG9nLWNvbnRhaW5lciAucG9zdC1saW5rIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNvbG9yOiAjNDA0NDREO1xufVxuLmJsb2ctY29udGFpbmVyIC5pbWFnZSB7XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmJsb2ctY29udGFpbmVyIC5lbnRyeSB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDFyZW0pO1xuICB9XG59XG4uYmxvZy1jb250YWluZXIgLmVudHJ5LWhlYWRlcixcbi5ibG9nLWNvbnRhaW5lciAuZW50cnktY29udGVudCB7XG4gIHBhZGRpbmc6IDAgMXJlbTtcbn1cbi5ibG9nLWNvbnRhaW5lciAuZW50cnktdGl0bGUgYSB7XG4gIGNvbG9yOiAjNDA0NDREO1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjJzIGVhc2UtaW4tb3V0O1xufVxuLmJsb2ctY29udGFpbmVyIC5lbnRyeS10aXRsZSBhOmhvdmVyIHtcbiAgY29sb3I6ICM1RTIyNDY7XG59XG4uYmxvZy1jb250YWluZXIgLnZpZXctbW9yZS1idXR0b24td3JhcHBlciB7XG4gIHBhZGRpbmc6IDAgMXJlbTtcbn1cblxuLnBhZ2UtdGVtcGxhdGUtcGFnZS1zdGVwcyAucGFnZS1oZWFkZXIud2l0aC1pbWFnZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4ucGFnZS10ZW1wbGF0ZS1wYWdlLXN0ZXBzIC5wYWdlLWhlYWRlci53aXRoLWltYWdlIC50aXRsZS1jb250YWluZXIge1xuICBwYWRkaW5nOiAxcmVtIDJyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAucGFnZS10ZW1wbGF0ZS1wYWdlLXN0ZXBzIC5wYWdlLWhlYWRlci53aXRoLWltYWdlIC50aXRsZS1jb250YWluZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiA2cmVtO1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICB3aWR0aDogNDAlO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAucGFnZS10ZW1wbGF0ZS1wYWdlLXN0ZXBzIC5wYWdlLWhlYWRlci53aXRoLWltYWdlIC5wYXJhZ3JhcGgtdGl0bGUge1xuICAgIGNvbG9yOiAjZmVmZWZlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnBhZ2UtdGVtcGxhdGUtcGFnZS1zdGVwcyAucGFnZS1oZWFkZXIud2l0aC1pbWFnZSBwIHtcbiAgICBjb2xvcjogI2ZlZmVmZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5zdGVwcy1yb3cge1xuICBwYWRkaW5nOiA2cmVtIDAgNHJlbTtcbn1cbi5zdGVwcy1yb3cgLnBhcmFncmFwaC10aXRsZSB7XG4gIGZvbnQtc2l6ZTogMS4ycmVtO1xufVxuLnN0ZXBzLXJvdyAucGFyYWdyYXBoLXRpdGxlIHNwYW4ge1xuICBjb2xvcjogIzllMWM2MjtcbiAgZm9udC1zaXplOiAxLjMzMzMzMzMzMzNyZW07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG4uc3RlcHMtcm93IHAge1xuICBmb250LXNpemU6IDAuOTMzMzMzMzMzM3JlbTtcbn1cbi5zdGVwcy1yb3cgLnN0ZXBzX19pdGVtIHtcbiAgZGlzcGxheTogZmxleDtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgZmxleC1mbG93OiBjb2x1bW47XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuc3RlcHMtcm93IC5zdGVwc19faXRlbSB7XG4gICAgZmxleC1mbG93OiByb3c7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5zdGVwcy1yb3cgLnN0ZXBzX19pdGVtOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cbi5zdGVwcy1yb3cgLnN0ZXBzX19pdGVtLWltYWdlIHtcbiAgZmxleDogMSAwIDMwJTtcbiAgcGFkZGluZzogMCA2MCUgMCAwO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnN0ZXBzLXJvdyAuc3RlcHNfX2l0ZW0taW1hZ2Uge1xuICAgIHBhZGRpbmc6IDAgMXJlbSAwIDJyZW07XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogLTJyZW07XG4gIH1cbn1cbi5zdGVwcy1yb3cgLnNsaWRlLXRvLWJ0biB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM5Y2ExYWI7XG4gIGNvbG9yOiAjZmVmZWZlO1xuICBwYWRkaW5nOiAwLjVyZW0gMXJlbTtcbiAgYm9yZGVyLXJhZGl1czogNTBweDtcbiAgZm9udC1zaXplOiAwLjkzMzMzMzMzMzNyZW07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuc3RlcHMtcm93IC5zbGlkZS10by1idG4ge1xuICAgIGZvbnQtc2l6ZTogMC44cmVtO1xuICB9XG59XG4uc3RlcHMtcm93IC5zbGlkZS10by1idG4gc3ZnIHtcbiAgbWFyZ2luLXJpZ2h0OiAwLjVyZW07XG4gIGRpc3BsYXk6IGlubGluZTtcbn1cblxuLmR3LWxpZ2h0LXJvdyB7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsICM5ZTFjNjIgMCUsIHJnYmEoMTU4LCAyOCwgOTgsIDApIDEwMCUpLCBsaW5lYXItZ3JhZGllbnQoMGRlZywgIzllMWM2MiwgIzllMWM2MiksIGxpbmVhci1ncmFkaWVudCgwZGVnLCAjMDAwMDAwLCAjMDAwMDAwKSwgdXJsKFwiLi4vYXNzZXRzL2J1ZGFwZXN0L21kX3JlbGF4LWNvbnRhY3QtYmcuanBnXCIpLCAjZjVmNmY3O1xuICBiYWNrZ3JvdW5kLWJsZW5kLW1vZGU6IG5vcm1hbCwgbXVsdGlwbHksIGNvbG9yLCBub3JtYWwsIG5vcm1hbDtcbn1cbi5kdy1saWdodC1yb3cgLnBhcmFncmFwaC10aXRsZSBzcGFuIHtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG4uZHctbGlnaHQtcm93X19oZWFkZXIgcCB7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuLmR3LWxpZ2h0LXJvdyAudGV4dCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZWZlZmU7XG59XG4uZHctbGlnaHQtcm93IC51cGNvbW1pbmcgYSB7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuXG4uaG90ZWxzLXJvdyB7XG4gIHBhZGRpbmc6IDZyZW0gMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Q5ZGJkZjtcbn1cbi5ob3RlbHMtcm93X19oZWFkZXIge1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xufVxuLmhvdGVscy1yb3dfX2hlYWRlciArIC5ncmlkIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4uaG90ZWxzLXJvdyAuY2Fyb3VzZWwtd3JhcHBlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgLmhvdGVscy1yb3cgLmNhcm91c2VsLXdyYXBwZXIge1xuICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICB9XG59XG4uaG90ZWxzLXJvdyAuaG90ZWxzLWNhcm91c2VsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLmhvdGVscy1yb3cgLmhvdGVscy1jYXJvdXNlbF9faXRlbSB7XG4gIHBhZGRpbmc6IDJyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZWZlZmU7XG4gIGJvcmRlci1yYWRpdXM6IDE1cHg7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMTBweCByZ2JhKDY0LCA2OCwgNzcsIDAuMik7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcbn1cbi5ob3RlbHMtcm93IC5ob3RlbHMtY2Fyb3VzZWxfX2hlYWRlciBwIHtcbiAgZm9udC1zaXplOiAwLjkzMzMzMzMzMzNyZW07XG59XG4uaG90ZWxzLXJvdyAuaG90ZWxzLWNhcm91c2VsX190aXRsZSB7XG4gIGZvbnQtc2l6ZTogMS4wNjY2NjY2NjY3cmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogaW5pdGlhbDtcbn1cbi5ob3RlbHMtcm93IC5ob3RlbHMtY2Fyb3VzZWxfX2dhbGxlcnkge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnIgMWZyO1xuICBncmlkLWdhcDogMXJlbTtcbn1cbi5ob3RlbHMtcm93IC5ob3RlbHMtY2Fyb3VzZWxfX2dhbGxlcnkgYSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuaG90ZWxzLXJvdyAuaG90ZWxzLWNhcm91c2VsX19nYWxsZXJ5IGEge1xuICAgIGhlaWdodDogMjMwcHg7XG4gIH1cbn1cbi5ob3RlbHMtcm93IC5ob3RlbHMtY2Fyb3VzZWxfX2dhbGxlcnkgaW1nIHtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuaG90ZWxzLXJvdyAuaG90ZWxzLWNhcm91c2VsX19nYWxsZXJ5IHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnIgMWZyO1xuICB9XG59XG4uaG90ZWxzLXJvdyAuaG90ZWxzLWNhcm91c2VsIC5vd2wtbmF2IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICB3aWR0aDogMTAwJTtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmhvdGVscy1yb3cgLmhvdGVscy1jYXJvdXNlbCAub3dsLW5hdiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgfVxufVxuLmhvdGVscy1yb3cgLmhvdGVscy1jYXJvdXNlbCAub3dsLW5hdiBidXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi5ob3RlbHMtcm93IC5ob3RlbHMtY2Fyb3VzZWwgLm93bC1uYXYgLm93bC1wcmV2IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAtMnJlbTtcbn1cbi5ob3RlbHMtcm93IC5ob3RlbHMtY2Fyb3VzZWwgLm93bC1uYXYgLm93bC1uZXh0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICByaWdodDogLTJyZW07XG59XG4uaG90ZWxzLXJvdyAuaG90ZWxzLWNhcm91c2VsIC5vd2wtc3RhZ2Uge1xuICBkaXNwbGF5OiBmbGV4O1xufVxuLmhvdGVscy1yb3cgLmhvdGVscy1jYXJvdXNlbCAub3dsLWl0ZW0ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4OiAxIDAgYXV0bztcbn1cblxuLmJ1ZGFwZXN0LXJvdyB7XG4gIHBhZGRpbmc6IDZyZW0gMDtcbn1cbi5idWRhcGVzdC1yb3cgLmdyaWQge1xuICBncmlkLWdhcDogNHJlbTtcbn1cbi5idWRhcGVzdC1yb3cgLmNvbnRhaW5lciB7XG4gIG1heC13aWR0aDogOTAwcHg7XG59XG4uYnVkYXBlc3Qtcm93IC50ZXh0IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xufVxuLmJ1ZGFwZXN0LXJvdyAubW9yZS1idG4ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjOWUxYzYyO1xuICBjb2xvcjogI2ZlZmVmZTtcbiAgcGFkZGluZzogMC41cmVtIDFyZW07XG4gIGJvcmRlci1yYWRpdXM6IDUwcHg7XG4gIGZvbnQtc2l6ZTogMC45MzMzMzMzMzMzcmVtO1xuICBmb250LXdlaWdodDogNzAwO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLmJ1ZGFwZXN0LXJvdyAubW9yZS1idG4ge1xuICAgIGZvbnQtc2l6ZTogMC44cmVtO1xuICB9XG59XG4uYnVkYXBlc3Qtcm93IC5tb3JlLWJ0biBzdmcge1xuICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IDFweDtcbn1cblxuLnBhZ2UtdGhhbmt5b3UgLm1haW4tZ3JpZCB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG4ucGFnZS10aGFua3lvdSAuaGVhZGVyIHtcbiAgaGVpZ2h0OiAxMy4zMzMzMzMzMzMzcmVtO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnBhZ2UtdGhhbmt5b3UgLmhlYWRlciB7XG4gICAgaGVpZ2h0OiAyMy43MzMzMzMzMzMzcmVtO1xuICB9XG59XG4ucGFnZS10aGFua3lvdSAuaGVhZGVyIGltZyB7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuLnBhZ2UtdGhhbmt5b3UgLmJhbm5lci13cmFwcGVyIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgcGFkZGluZzogMTByZW0gMnJlbSA0cmVtO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgZ2FwOiAycmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDlkYmRmO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4ucGFnZS10aGFua3lvdSAuYmFubmVyLXdyYXBwZXIgLmJhbm5lci1sZWZ0IHtcbiAgb3JkZXI6IDI7XG59XG4ucGFnZS10aGFua3lvdSAuYmFubmVyLXdyYXBwZXIgLmJhbm5lci1yaWdodCB7XG4gIG9yZGVyOiAzO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnBhZ2UtdGhhbmt5b3UgLmJhbm5lci13cmFwcGVyIHtcbiAgICBwYWRkaW5nOiA0cmVtIDhyZW07XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMmZyIDFmcjtcbiAgfVxuICAucGFnZS10aGFua3lvdSAuYmFubmVyLXdyYXBwZXIgLmJhbm5lci1sZWZ0IHtcbiAgICBvcmRlcjogMTtcbiAgfVxuICAucGFnZS10aGFua3lvdSAuYmFubmVyLXdyYXBwZXIgLnRleHQge1xuICAgIG9yZGVyOiAyO1xuICB9XG59XG4ucGFnZS10aGFua3lvdSAuYmFubmVyLXdyYXBwZXIgaDEge1xuICBjb2xvcjogIzdlMWY1NDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBmb250LXNpemU6IDIuMTMzMzMzMzMzM3JlbTtcbiAgaHlwaGVuczogYXV0bztcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDNlbTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDIzLjQzNzVlbSkge1xuICAucGFnZS10aGFua3lvdSAuYmFubmVyLXdyYXBwZXIgaDEge1xuICAgIGZvbnQtc2l6ZTogMS43MzMzMzMzMzMzcmVtO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAyMGVtKSB7XG4gIC5wYWdlLXRoYW5reW91IC5iYW5uZXItd3JhcHBlciBoMSB7XG4gICAgZm9udC1zaXplOiAxLjJyZW07XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5wYWdlLXRoYW5reW91IC5iYW5uZXItd3JhcHBlciBoMSB7XG4gICAgZm9udC1zaXplOiAyLjRyZW07XG4gIH1cbn1cbi5wYWdlLXRoYW5reW91IC5iYW5uZXItd3JhcHBlciAudGV4dC1pbm5lciBwIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBmb250LXNpemU6IDEuMzMzMzMzMzMzM3JlbTtcbiAgY29sb3I6ICM2ZDc1ODQ7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAucGFnZS10aGFua3lvdSAuYmFubmVyLXdyYXBwZXIgLnRleHQtaW5uZXIgcCB7XG4gICAgZm9udC1zaXplOiAxLjZyZW07XG4gIH1cbn1cbi5wYWdlLXRoYW5reW91IC5iYW5uZXItd3JhcHBlciBidXR0b24ge1xuICBmb250LXdlaWdodDogNzAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjOWNhMWFiO1xuICBtYXJnaW46IDAgYXV0bztcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNvbG9yOiAjZmVmZWZlO1xuICBwYWRkaW5nOiAwLjI2NjY2NjY2NjdyZW0gMS4zMzMzMzMzMzMzcmVtO1xuICBib3JkZXItcmFkaXVzOiAxMDBweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuLnBhZ2UtdGhhbmt5b3UgLmJhbm5lci13cmFwcGVyIC50ZXh0LWlubmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTtcbiAgcGFkZGluZzogMnJlbTtcbiAgYm9yZGVyLXJhZGl1czogMTVweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuICBib3gtc2hhZG93OiAwcHggMHB4IDMwcHggcmdiYSg2NCwgNjgsIDc3LCAwLjI1KTtcbiAgbGVmdDogMnJlbTtcbiAgcmlnaHQ6IDJyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAucGFnZS10aGFua3lvdSAuYmFubmVyLXdyYXBwZXIgLnRleHQtaW5uZXIge1xuICAgIGxlZnQ6IDUwJTtcbiAgICByaWdodDogaW5pdGlhbDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICB3aWR0aDogMzByZW07XG4gIH1cbn1cbi5wYWdlLXRoYW5reW91IC5iYW5uZXItd3JhcHBlciAuYmFubmVyLWhlYWRlciBoNCB7XG4gIGZvbnQtc2l6ZTogMS4wNjY2NjY2NjY3cmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGNvbG9yOiAjNDA0NDRkO1xufVxuLnBhZ2UtdGhhbmt5b3UgLmJhbm5lci13cmFwcGVyIC5iYW5uZXItY29udGFpbmVyIHtcbiAgYm9yZGVyLXJhZGl1czogMTVweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLWJvdHRvbTogNTYuMjUlO1xuICBoZWlnaHQ6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG1heC13aWR0aDogMTAwJTtcbn1cbi5wYWdlLXRoYW5reW91IC5iYW5uZXItd3JhcHBlciAuYmFubmVyLWNvbnRhaW5lciBpbWcge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gIC50aGFua3lvdS1rYW1wYW55IC5oZWFkZXIgaW1nIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG4udGhhbmt5b3Uta2FtcGFueSAudGV4dC1pbm5lciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDE1cHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1JSAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGxlZnQ6IDAgIWltcG9ydGFudDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDIzLjQzNzVlbSkge1xuICAudGhhbmt5b3Uta2FtcGFueSAudGV4dC1pbm5lciB7XG4gICAgd2lkdGg6IDMwcmVtO1xuICAgIG92ZXJmbG93OiBpbml0aWFsO1xuICAgIGxlZnQ6IDUwJSAhaW1wb3J0YW50O1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpICFpbXBvcnRhbnQ7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDIzLjQzNzVlbSkge1xuICAudGhhbmt5b3Uta2FtcGFueSAudGV4dC1pbm5lciB7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMjMuNDM3NWVtKSB7XG4gIC50aGFua3lvdS1rYW1wYW55IC5iYW5uZXItd3JhcHBlciB7XG4gICAgcGFkZGluZzogMThyZW0gMnJlbSA0cmVtICFpbXBvcnRhbnQ7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NC45OTg3NWVtKSB7XG4gIC50aGFua3lvdS1rYW1wYW55IC5iYW5uZXItd3JhcHBlciB7XG4gICAgcGFkZGluZzogMjhyZW0gMnJlbSA0cmVtICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi50aGFua3lvdS1rYW1wYW55IC5iZ2ltYWdlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgei1pbmRleDogLTE7XG4gIHdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBub25lO1xufVxuLnRoYW5reW91LWthbXBhbnkgLmJnaW1hZ2UubW9iaWwge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDIzLjQzNzVlbSkge1xuICAudGhhbmt5b3Uta2FtcGFueSAuYmdpbWFnZSB7XG4gICAgd2lkdGg6IDM4LjhyZW07XG4gIH1cbiAgLnRoYW5reW91LWthbXBhbnkgLmJnaW1hZ2UubW9iaWwge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLnRoYW5reW91LWthbXBhbnkgLmJnaW1hZ2UuZGVza3RvcCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cbi50aGFua3lvdS1rYW1wYW55IC50ZXh0LWlubmVyIHAsXG4udGhhbmt5b3Uta2FtcGFueSBoMSB7XG4gIGNvbG9yOiAjZmVmZWZlICFpbXBvcnRhbnQ7XG4gIGZvbnQtd2VpZ2h0OiA2MDAgIWltcG9ydGFudDtcbn1cbi50aGFua3lvdS1rYW1wYW55IGgxIHtcbiAgZm9udC13ZWlnaHQ6IDgwMCAhaW1wb3J0YW50O1xufVxuLnRoYW5reW91LWthbXBhbnkgYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2MzMDg2ZiAhaW1wb3J0YW50O1xufVxuXG4uc2luZ2xlLWNhc2Utc3R1ZHkgaDEge1xuICB0ZXh0LXRyYW5zZm9ybTogaW5pdGlhbDtcbn1cbi5zaW5nbGUtY2FzZS1zdHVkeSBibG9ja3F1b3RlIHAge1xuICBmb250LXNpemU6IDEuNDY2NjY2NjY2N3JlbTtcbiAgY29sb3I6ICM5RTFDNjI7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi5zaW5nbGUtY2FzZS1zdHVkeSBibG9ja3F1b3RlIHtcbiAgcGFkZGluZzogMCA0cmVtO1xufVxuLnNpbmdsZS1jYXNlLXN0dWR5IGJsb2NrcXVvdGU6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDQwcHg7XG4gIGhlaWdodDogNDBweDtcbiAgYmFja2dyb3VuZC1zaXplOiA0MHB4IDQwcHg7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUIzYVdSMGFEMGlNekVpSUdobGFXZG9kRDBpTWpJaUlIWnBaWGRDYjNnOUlqQWdNQ0F6TVNBeU1pSWdabWxzYkQwaWJtOXVaU0lnZUcxc2JuTTlJbWgwZEhBNkx5OTNkM2N1ZHpNdWIzSm5Mekl3TURBdmMzWm5JajRLUEhCaGRHZ2dhV1E5SWxabFkzUnZjaUlnWkQwaVRURXhMakV6TlRrZ01DNDFURGt1TXpRNU1pQTVMamc0TURBMVREa3VNak0yTVRRZ01UQXVORGN6TmtnNUxqZzBNRE0zU0RFeUxqa3dNalJXTWpFdU1UQTVOVWd4VmprdU9ERXhOakpNTXk0NE56WTNOaUF3TGpWSU1URXVNVE0xT1ZwTk1qZ3VNak16TlNBd0xqVk1Nall1TkRRMk9DQTVMamc0TURBMVRESTJMak16TXpnZ01UQXVORGN6TmtneU5pNDVNemhJTXpCV01qRXVNVEE1TlVneE9DNHdPVGMyVmprdU9ERXhOakpNTWpBdU9UYzBOQ0F3TGpWSU1qZ3VNak16TlZvaUlITjBjbTlyWlQwaUl6bEZNVU0yTWlJdlBnbzhMM04yWno0Syk7XG59XG4uc2luZ2xlLWNhc2Utc3R1ZHkgYmxvY2txdW90ZTo6YWZ0ZXIge1xuICBjb250ZW50OiBcIiBcIjtcbiAgYm90dG9tOiAwO1xuICByaWdodDogMDtcbiAgd2lkdGg6IDQwcHg7XG4gIGhlaWdodDogNDBweDtcbiAgYmFja2dyb3VuZC1zaXplOiA0MHB4IDQwcHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjNhV1IwYUQwaU16RWlJR2hsYVdkb2REMGlNaklpSUhacFpYZENiM2c5SWpBZ01DQXpNU0F5TWlJZ1ptbHNiRDBpYm05dVpTSWdlRzFzYm5NOUltaDBkSEE2THk5M2QzY3Vkek11YjNKbkx6SXdNREF2YzNabklqNEtQSEJoZEdnZ2FXUTlJbFpsWTNSdmNpSWdaRDBpVFRFNUxqZzJOREVnTWpFdU1UQTVORXd5TVM0Mk5UQTRJREV4TGpjeU9UTk1NakV1TnpZek9TQXhNUzR4TXpVNFRESXhMakUxT1RZZ01URXVNVE0xT0V3eE9DNHdPVGMySURFeExqRXpOVGhNTVRndU1EazNOaUF3TGpRNU9UZzNOVXd6TUNBd0xqUTVPVGczTkV3ek1DQXhNUzQzT1RjNFRESTNMakV5TXpJZ01qRXVNVEE1TkV3eE9TNDROalF4SURJeExqRXdPVFJhVFRJdU56WTJOU0F5TVM0eE1EazBURFF1TlRVek1pQXhNUzQzTWprelREUXVOalkyTWlBeE1TNHhNelU0VERRdU1EWXlJREV4TGpFek5UaE1NQzQ1T1RrNU9Ua2dNVEV1TVRNMU9Fd3dMams1T1RrNU9DQXdMalE1T1RnM04wd3hNaTQ1TURJMElEQXVORGs1T0RjMlRERXlMamt3TWpRZ01URXVOemszT0V3eE1DNHdNalUySURJeExqRXdPVFJNTWk0M05qWTFJREl4TGpFd09UUmFJaUJ6ZEhKdmEyVTlJaU01UlRGRE5qSWlMejRLUEM5emRtYytDZz09KTtcbn1cbi5zaW5nbGUtY2FzZS1zdHVkeSAjYmFndWV0dGVCb3gtc2xpZGVyIGltZyB7XG4gIG1heC13aWR0aDogNjUwcHggIWltcG9ydGFudDtcbn1cblxuLnBvc3QtdHlwZS1hcmNoaXZlLWNhc2Utc3R1ZHkgLm1haW4tY29udGFpbmVyIHtcbiAgcGFkZGluZy10b3A6IDA7XG59XG4ucG9zdC10eXBlLWFyY2hpdmUtY2FzZS1zdHVkeSAubWFzb25yeS1pdGVtIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAucG9zdC10eXBlLWFyY2hpdmUtY2FzZS1zdHVkeSAubWFzb25yeS1pdGVtIHtcbiAgICB3aWR0aDogY2FsYygzMy4zMzMzMyUgLSAxcmVtKTtcbiAgICBtYXJnaW46IDAgMC41cmVtIDFyZW07XG4gIH1cbn1cbi5wb3N0LXR5cGUtYXJjaGl2ZS1jYXNlLXN0dWR5IC5mb290ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNDA0NDREO1xufVxuXG4uYmxvY2staXRlbS5hbGlnbmZ1bGwge1xuICB3aWR0aDogMTAwdnc7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogNTAlO1xuICByaWdodDogNTAlO1xuICBtYXJnaW4tbGVmdDogLTUwdnc7XG4gIG1hcmdpbi1yaWdodDogLTUwdnc7XG59XG5cbi5neWlrIC5hY2NvcmRpb24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZThlOWVjO1xufVxuLmd5aWsgLmFjY29yZGlvbi1pdGVtLmlzLWFjdGl2ZSAuYWNjb3JkaW9uLXRpdGxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNlNmU2ZTY7XG4gIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNlNmU2ZTY7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZTZlNmU2O1xuICBib3JkZXItYm90dG9tOiAwO1xufVxuLmd5aWsgLmFjY29yZGlvbi1pdGVtLmlzLWFjdGl2ZSAuYWNjb3JkaW9uLWNvbnRlbnQge1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI2U2ZTZlNjtcbiAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI2U2ZTZlNjtcbiAgYm9yZGVyLXRvcDogMDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlNmU2ZTY7XG59XG4uZ3lpayAuYWNjb3JkaW9uLWl0ZW0uaXMtYWN0aXZlIC5hY2NvcmRpb24tdGl0bGU6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiLVwiO1xuICBtYXJnaW4tdG9wOiAtMC4zcmVtO1xufVxuLmd5aWsgLmFjY29yZGlvbi10aXRsZSB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgY29sb3I6ICM1RTIyNDY7XG4gIHBhZGRpbmctbGVmdDogM3JlbTtcbn1cbi5neWlrIC5hY2NvcmRpb24tdGl0bGU6OmJlZm9yZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgbGVmdDogMXJlbTtcbiAgbWFyZ2luLXRvcDogMDtcbiAgY29udGVudDogXCIrXCI7XG4gIGZvbnQtc2l6ZTogMi42NjY2NjY2NjY3cmVtO1xuICByaWdodDogaW5pdGlhbDtcbn1cblxuLnNsaWRlciB7XG4gIHdpZHRoOiAxMDAlO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnNsaWRlciAub3dsLXN0YWdlIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICB9XG4gIC5zbGlkZXIgLm93bC1pdGVtIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXg6IDEgMCBhdXRvO1xuICAgIGhlaWdodDogaW5pdGlhbDtcbiAgfVxufVxuLnNsaWRlciAuc2xpZGUge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IGNvbHVtbjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U4ZTllYztcbn1cbi5zbGlkZXIgLnNsaWRlIC5pbWFnZSB7XG4gIG9yZGVyOiAxO1xufVxuLnNsaWRlciAuc2xpZGUgLnRleHQge1xuICBvcmRlcjogMjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5zbGlkZXIgLnNsaWRlIHtcbiAgICBmbGV4LWZsb3c6IHJvdztcbiAgfVxuICAuc2xpZGVyIC5zbGlkZSAudGV4dCB7XG4gICAgb3JkZXI6IDE7XG4gIH1cbiAgLnNsaWRlciAuc2xpZGUgLmltYWdlIHtcbiAgICBvcmRlcjogMjtcbiAgfVxuICAuc2xpZGVyIC5zbGlkZSAuaW1hZ2UsXG4uc2xpZGVyIC5zbGlkZSAudGV4dCB7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxufVxuLnNsaWRlciAuc2xpZGUgLnRleHQge1xuICBwYWRkaW5nOiAxcmVtIDFyZW0gM3JlbTtcbn1cbi5zbGlkZXIgLnNsaWRlIC5pbWFnZSBpbWcge1xuICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbn1cbi5zbGlkZXIgLm93bC1kb3RzIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICBib3R0b206IDA7XG4gIHJpZ2h0OiAwO1xufVxuLnNsaWRlciAub3dsLWRvdHMgLm93bC1kb3Qgc3BhbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1RTIyNDY7XG59XG4uc2xpZGVyIC5vd2wtZG90cyAub3dsLWRvdC5hY3RpdmUgc3BhbiB7XG4gIHdpZHRoOiAxNHB4O1xuICBoZWlnaHQ6IDE0cHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAycHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICM5ZTFjNjI7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuc2xpZGVyIC5vd2wtZG90cyB7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxufVxuLnNsaWRlcjpob3ZlciAub3dsLW5hdiB7XG4gIG9wYWNpdHk6IDE7XG59XG4uc2xpZGVyIC5vd2wtbmF2IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiA1MCU7XG4gIHJpZ2h0OiAwO1xuICBtYXJnaW46IDA7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBlYXNlLWluLW91dDtcbiAgaGVpZ2h0OiA0MHB4O1xuICB0b3A6IDEwJTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5zbGlkZXIgLm93bC1uYXYge1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgfVxufVxuLnNsaWRlciAub3dsLW5hdjpob3ZlciBbY2xhc3MqPW93bC1dIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiAjNUUyMjQ2O1xufVxuLnNsaWRlciAub3dsLW5hdiBbY2xhc3MqPW93bC1dIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBmb250LXNpemU6IDJyZW07XG59XG4uc2xpZGVyIC5vd2wtbmF2IFtjbGFzcyo9b3dsLV0gaTo6YmVmb3JlIHtcbiAgZm9udC1zaXplOiAyLjY2NjY2NjY2NjdyZW07XG4gIGNvbG9yOiAjZmVmZWZlO1xuICB0ZXh0LXNoYWRvdzogMCAwIDIwcHggcmdiYSgxMCwgMTAsIDEwLCAwLjYpO1xufVxuLnNsaWRlciAub3dsLW5hdiAub3dsLXByZXYge1xuICBsZWZ0OiAxcmVtO1xufVxuLnNsaWRlciAub3dsLW5hdiAub3dsLW5leHQge1xuICByaWdodDogMXJlbTtcbn1cblxuLmltYWdlLWxlZnQtY29udGFpbmVyIC53cC1ibG9jay1jb2x1bW46bnRoLWNoaWxkKDEpIHtcbiAgZmxleC1iYXNpczogMTAwJTtcbiAgb3JkZXI6IDI7XG59XG4uaW1hZ2UtbGVmdC1jb250YWluZXIgLndwLWJsb2NrLWNvbHVtbjpudGgtY2hpbGQoMikge1xuICBmbGV4LWJhc2lzOiAxMDAlO1xuICBvcmRlcjogMTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5pbWFnZS1sZWZ0LWNvbnRhaW5lciAud3AtYmxvY2stY29sdW1uOm50aC1jaGlsZCgxKSB7XG4gICAgZmxleC1iYXNpczogMjUlO1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBvcmRlcjogMTtcbiAgfVxuICAuaW1hZ2UtbGVmdC1jb250YWluZXIgLndwLWJsb2NrLWNvbHVtbjpudGgtY2hpbGQoMikge1xuICAgIGZsZXgtYmFzaXM6IDc1JTtcbiAgICBvcmRlcjogMjtcbiAgfVxufSIsIi8qXG5UaGVtZSBOYW1lOiBGbGF0VGhlbWVcbkF1dGhvcjogTGFzemxvIExhcG9zXG5BdXRob3IgVVJJOiBsYXBvc2xhc3psby5jb21cbkRlc2NyaXB0aW9uOiBGbGF0VGhlbWVcblZlcnNpb246IDAuMVxuKi9cblxuQGltcG9ydCBcIm93bC5jYXJvdXNlbFwiO1xuQGltcG9ydCBcIm93bC50aGVtZS5kZWZhdWx0XCI7XG5AaW1wb3J0IFwiYmFndWV0dGVCb3hcIjtcbkBpbXBvcnQgXCJzY3NzXCI7IC8vIFJGUyBiZXTFsW3DqXJldCBzdMOtbHVzXG5AaW1wb3J0IFwic3BsaWRlLm1pblwiO1xuXG5AaW1wb3J0IFwiLi4vLi4vbm9kZV9tb2R1bGVzL3RhaWx3aW5kY3NzL2Jhc2VcIjtcbkBpbXBvcnQgXCIuLi8uLi9ub2RlX21vZHVsZXMvdGFpbHdpbmRjc3MvdXRpbGl0aWVzXCI7XG5cbkBpbXBvcnQgXCJmb3VuZGF0aW9uXCI7XG5cbi8vIEBpbXBvcnQgXCJnbG9iYWwvZm9udHNcIjtcbkBpbXBvcnQgXCJnbG9iYWwvc2V0dGluZ3NcIjtcbkBpbXBvcnQgXCJnbG9iYWwvY29sb3JzXCI7XG5AaW1wb3J0IFwiZ2xvYmFsL21hZGVudGEtc2V0dGluZ3NcIjtcbkBpbmNsdWRlIGZvdW5kYXRpb24tZ2xvYmFsLXN0eWxlcztcbkBpbmNsdWRlIGZvdW5kYXRpb24tZm9ybXM7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLWJ1dHRvbjtcbkBpbmNsdWRlIGZvdW5kYXRpb24tdHlwb2dyYXBoeTtcbkBpbmNsdWRlIGZvdW5kYXRpb24tYnV0dG9uLWdyb3VwO1xuQGluY2x1ZGUgZm91bmRhdGlvbi1jbG9zZS1idXR0b247XG5AaW5jbHVkZSBmb3VuZGF0aW9uLXJldmVhbDtcbkBpbmNsdWRlIGZvdW5kYXRpb24tdG9wLWJhcjtcbkBpbmNsdWRlIGZvdW5kYXRpb24tZm9ybXM7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLXZpc2liaWxpdHktY2xhc3NlcztcbkBpbmNsdWRlIGZvdW5kYXRpb24tYWNjb3JkaW9uO1xuQGluY2x1ZGUgZm91bmRhdGlvbi10YWJsZTtcblxuXG5cbi8vIEdMT0JBTFxuQGltcG9ydCBcImdsb2JhbC9sYXlvdXRcIjtcbkBpbXBvcnQgXCJnbG9iYWwvZ2xvYmFsXCI7XG5AaW1wb3J0IFwiZ2xvYmFsL3ZpZGVvLWVtYmVkXCI7XG5AaW1wb3J0IFwiZ2xvYmFsL3R5cG9cIjtcbkBpbXBvcnQgXCJnbG9iYWwvYnV0dG9uc1wiO1xuQGltcG9ydCBcImdsb2JhbC9ndXRlbmJlcmdcIjtcbkBpbXBvcnQgXCJnbG9iYWwvYmFkZ2VzXCI7XG5cblxuLy8gQ09NUE9ORU5UU1xuQGltcG9ydCBcImNvbXBvbmVudHMvYW5jaG9yXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9oZWFkZXJcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL3NwbGlkZVwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvbW9iaWxlLW1lbnVcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL2Zvb3RlclwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvY2FsbC11c1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvYnJlYWRjcnVtYnNcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL3BhZ2UtaGVhZGVyXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9zaWRlYmFyXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9mb3JtXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9taWNyb21vZGFsXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9saW5rc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvcHJpY2UtY2hlY2tcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL2dvb2dsZW1hcHNcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL2xhdGVzdGJsb2dcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL2JyZWFraW5nLXBvcHVwXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9jb250YWN0LWJhclwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvb2ZmZXJcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL2FsbG9uNC10YWJsZXNcIjtcblxuXG4vLyBQQUdFU1xuQGltcG9ydCBcInBhZ2VzL2Zyb250XCI7XG5AaW1wb3J0IFwibWljcm9zaXRlL2J1ZGFwZXN0L2ZseS1pblwiO1xuQGltcG9ydCBcIm1pY3Jvc2l0ZS9idWRhcGVzdC9kdy1saWdodFwiO1xuQGltcG9ydCBcInBhZ2VzL2Fib3V0XCI7XG5AaW1wb3J0IFwicGFnZXMvY29udGFjdFwiO1xuQGltcG9ydCBcInBhZ2VzL2dhbGxlcnlcIjtcbkBpbXBvcnQgXCJwYWdlcy9wYWdlXCI7XG5AaW1wb3J0IFwicGFnZXMvZ2FyYW5jaWFcIjtcbkBpbXBvcnQgXCJwYWdlcy9ibG9nXCI7XG5AaW1wb3J0IFwicGFnZXMvc3RlcHNcIjtcbkBpbXBvcnQgXCJwYWdlcy9wYWdlLXRoYW5reW91XCI7XG5AaW1wb3J0IFwicGFnZXMvY2FzZS1zdHVkeVwiO1xuXG5cbi8vIEJMT0NLU1xuQGltcG9ydCBcImJsb2Nrcy9nbG9iYWxcIjtcbkBpbXBvcnQgXCJibG9ja3MvZ3lpa1wiO1xuQGltcG9ydCBcImJsb2Nrcy9zbGlkZXJcIjtcbkBpbXBvcnQgXCJibG9ja3MvaW1hZ2UtbGVmdFwiO1xuIiwiLypcbiAqICBPd2wgQ2Fyb3VzZWwgLSBDb3JlXG4gKi9cbi5vd2wtY2Fyb3VzZWwge1xuXHRkaXNwbGF5OiBub25lO1xuXHR3aWR0aDogMTAwJTtcblx0LXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcblx0LyogcG9zaXRpb24gcmVsYXRpdmUgYW5kIHotaW5kZXggZml4IHdlYmtpdCByZW5kZXJpbmcgZm9udHMgaXNzdWUgKi9cblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHR6LWluZGV4OiAxO1xuXG5cdC5vd2wtc3RhZ2Uge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHQtbXMtdG91Y2gtYWN0aW9uOiBwYW4tWTtcblx0XHR0b3VjaC1hY3Rpb246IG1hbmlwdWxhdGlvbjtcblx0XHQtbW96LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsgLyogZml4IGZpcmVmb3ggYW5pbWF0aW9uIGdsaXRjaCAqL1xuXHR9XG5cblx0Lm93bC1zdGFnZTphZnRlciB7XG5cdFx0Y29udGVudDogXCIuXCI7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0Y2xlYXI6IGJvdGg7XG5cdFx0dmlzaWJpbGl0eTogaGlkZGVuO1xuXHRcdGxpbmUtaGVpZ2h0OiAwO1xuXHRcdGhlaWdodDogMDtcblx0fVxuXG5cdC5vd2wtc3RhZ2Utb3V0ZXIge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXHRcdC8qIGZpeCBmb3IgZmxhc2hpbmcgYmFja2dyb3VuZCAqL1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwcHgsIDBweCwgMHB4KTtcblx0fVxuXG5cdC5vd2wtd3JhcHBlcixcblx0Lm93bC1pdGVte1xuXHRcdC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuXHRcdC1tb3otYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuXHRcdC1tcy1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsMCwwKTtcblx0XHQtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwwLDApO1xuXHRcdC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsMCwwKTtcblx0fVxuXG5cdC5vd2wtaXRlbSB7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdG1pbi1oZWlnaHQ6IDFweDtcblx0XHRmbG9hdDogbGVmdDtcblx0XHQtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcblx0XHQtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuXHRcdC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZTtcblx0fVxuXHQub3dsLWl0ZW0gaW1nIHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHR3aWR0aDogMTAwJTtcblx0fVxuXG5cdC5vd2wtbmF2LmRpc2FibGVkLFxuXHQub3dsLWRvdHMuZGlzYWJsZWQge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdH1cblxuXHQub3dsLW5hdiAub3dsLXByZXYsXG5cdC5vd2wtbmF2IC5vd2wtbmV4dCxcblx0Lm93bC1kb3Qge1xuXHRcdGN1cnNvcjogcG9pbnRlcjtcblx0XHQtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuXHRcdC1raHRtbC11c2VyLXNlbGVjdDogbm9uZTtcblx0XHQtbW96LXVzZXItc2VsZWN0OiBub25lO1xuXHRcdC1tcy11c2VyLXNlbGVjdDogbm9uZTtcblx0XHR1c2VyLXNlbGVjdDogbm9uZTtcblx0fVxuXG5cdC5vd2wtbmF2IGJ1dHRvbi5vd2wtcHJldixcblx0Lm93bC1uYXYgYnV0dG9uLm93bC1uZXh0LFxuXHRidXR0b24ub3dsLWRvdCB7XG5cdFx0YmFja2dyb3VuZDogbm9uZTtcblx0XHRjb2xvcjogaW5oZXJpdDtcblx0XHRib3JkZXI6IG5vbmU7XG5cdFx0cGFkZGluZzowIWltcG9ydGFudDtcblx0XHRmb250OiBpbmhlcml0O1xuXHR9XG5cblx0Ji5vd2wtbG9hZGVkIHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0fVxuXG5cdCYub3dsLWxvYWRpbmcge1xuXHRcdG9wYWNpdHk6IDA7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdH1cblxuXHQmLm93bC1oaWRkZW4ge1xuXHRcdG9wYWNpdHk6IDA7XG5cdH1cblxuXHQmLm93bC1yZWZyZXNoIC5vd2wtaXRlbSB7XG5cdFx0dmlzaWJpbGl0eTogaGlkZGVuO1xuXHR9XG5cblx0Ji5vd2wtZHJhZyAub3dsLWl0ZW0ge1xuXHRcdHRvdWNoLWFjdGlvbjogcGFuLXk7XG5cdFx0LXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcblx0XHQtbW96LXVzZXItc2VsZWN0OiBub25lO1xuXHRcdC1tcy11c2VyLXNlbGVjdDogbm9uZTtcblx0XHR1c2VyLXNlbGVjdDogbm9uZTtcblx0fVxuXG5cdCYub3dsLWdyYWIge1xuXHRcdGN1cnNvcjogbW92ZTtcblx0XHRjdXJzb3I6IGdyYWI7XG5cdH1cblxuXHQmLm93bC1ydGwge1xuXHRcdGRpcmVjdGlvbjogcnRsO1xuXHR9XG5cblx0Ji5vd2wtcnRsIC5vd2wtaXRlbSB7XG5cdFx0ZmxvYXQ6IHJpZ2h0O1xuXHR9XG59XG5cbi8qIE5vIEpzICovXG4ubm8tanMgLm93bC1jYXJvdXNlbCB7XG5cdGRpc3BsYXk6IGJsb2NrO1xufVxuIiwiLypcbiAqICBPd2wgQ2Fyb3VzZWwgLSBBbmltYXRlIFBsdWdpblxuICovXG4ub3dsLWNhcm91c2Vse1xuXHQuYW5pbWF0ZWQge1xuXHRcdGFuaW1hdGlvbi1kdXJhdGlvbjogMTAwMG1zO1xuXHRcdGFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7XG5cdH1cblx0Lm93bC1hbmltYXRlZC1pbiB7XG5cdFx0ei1pbmRleDogMDtcblx0fVxuXHQub3dsLWFuaW1hdGVkLW91dCB7XG5cdFx0ei1pbmRleDogMTtcblx0fVxuXHQuZmFkZU91dCB7XG5cdFx0YW5pbWF0aW9uLW5hbWU6IGZhZGVPdXQ7XG5cdH1cbn1cblxuQGtleWZyYW1lcyBmYWRlT3V0IHtcblx0MCUge1xuXHRcdG9wYWNpdHk6IDE7XG5cdH1cblxuXHQxMDAlIHtcblx0XHRvcGFjaXR5OiAwO1xuXHR9XG59XG4iLCIvKlxuICogXHRPd2wgQ2Fyb3VzZWwgLSBBdXRvIEhlaWdodCBQbHVnaW5cbiAqL1xuXG4ub3dsLWhlaWdodCB7XG5cdHRyYW5zaXRpb246IGhlaWdodCA1MDBtcyBlYXNlLWluLW91dDtcbn1cbiIsIi8qXG4gKiBcdE93bCBDYXJvdXNlbCAtIExhenkgTG9hZCBQbHVnaW5cbiAqL1xuXG4ub3dsLWNhcm91c2VsIHtcblx0Lm93bC1pdGVtIHtcblx0XHQub3dsLWxhenkge1xuXHRcdFx0XHRvcGFjaXR5OiAwO1xuXHRcdFx0XHR0cmFuc2l0aW9uOiBvcGFjaXR5IDQwMG1zIGVhc2U7XG5cdFx0fVxuXG5cdFx0LyoqXG5cdFx0XHRUaGlzIGlzIGludHJvZHVjZWQgZHVlIHRvIGEgYnVnIGluIElFMTEgd2hlcmUgbGF6eSBsb2FkaW5nIGNvbWJpbmVkIHdpdGggYXV0b2hlaWdodCBwbHVnaW4gY2F1c2VzIGEgd3Jvbmdcblx0XHRcdGNhbGN1bGF0aW9uIG9mIHRoZSBoZWlnaHQgb2YgdGhlIG93bC1pdGVtIHRoYXQgYnJlYWtzIHBhZ2UgbGF5b3V0c1xuXHRcdCAqL1xuXHRcdC5vd2wtbGF6eVtzcmNePVwiXCJdLCAub3dsLWxhenk6bm90KFtzcmNdKSB7XG5cdFx0XHRtYXgtaGVpZ2h0OiAwO1xuXHRcdH1cblxuXHRcdGltZy5vd2wtbGF6eSB7XG5cdFx0XHR0cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkO1xuXHRcdH1cblx0fVxufVxuXG4iLCIkb3dsLWltYWdlLXBhdGg6IFwiXCIgIWRlZmF1bHQ7XG5cbi8qXG4gKiBcdE93bCBDYXJvdXNlbCAtIFZpZGVvIFBsdWdpblxuICovXG5cbi5vd2wtY2Fyb3VzZWx7XG5cdC5vd2wtdmlkZW8td3JhcHBlciB7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdGhlaWdodDogMTAwJTtcblx0XHRiYWNrZ3JvdW5kOiAjMDAwO1xuXHR9XG5cblx0Lm93bC12aWRlby1wbGF5LWljb24ge1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRoZWlnaHQ6IDgwcHg7XG5cdFx0d2lkdGg6IDgwcHg7XG5cdFx0bGVmdDogNTAlO1xuXHRcdHRvcDogNTAlO1xuXHRcdG1hcmdpbi1sZWZ0OiAtNDBweDtcblx0XHRtYXJnaW4tdG9wOiAtNDBweDtcblx0XHRiYWNrZ3JvdW5kOiB1cmwoXCIjeyRvd2wtaW1hZ2UtcGF0aH1vd2wudmlkZW8ucGxheS5wbmdcIikgbm8tcmVwZWF0O1xuXHRcdGN1cnNvcjogcG9pbnRlcjtcblx0XHR6LWluZGV4OiAxO1xuXHRcdC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuXHRcdHRyYW5zaXRpb246IHRyYW5zZm9ybSAxMDBtcyBlYXNlO1xuXHR9XG5cblx0Lm93bC12aWRlby1wbGF5LWljb246aG92ZXIge1xuXHRcdHRyYW5zZm9ybTogc2NhbGUoMS4zLCAxLjMpO1xuXHR9XG5cblx0Lm93bC12aWRlby1wbGF5aW5nIC5vd2wtdmlkZW8tdG4sXG5cdC5vd2wtdmlkZW8tcGxheWluZyAub3dsLXZpZGVvLXBsYXktaWNvbiB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0fVxuXG5cdC5vd2wtdmlkZW8tdG4ge1xuXHRcdG9wYWNpdHk6IDA7XG5cdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG5cdFx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG5cdFx0dHJhbnNpdGlvbjogb3BhY2l0eSA0MDBtcyBlYXNlO1xuXHR9XG5cblx0Lm93bC12aWRlby1mcmFtZSB7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdHotaW5kZXg6IDE7XG5cdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdHdpZHRoOiAxMDAlO1xuXHR9XG59XG4iLCIvKlxuICogXHREZWZhdWx0IHRoZW1lIC0gT3dsIENhcm91c2VsIENTUyBGaWxlXG4gKi9cblxuJGNvbG9yLWJhc2U6XHRcdFx0Izg2OTc5MSAhZGVmYXVsdDtcbiRjb2xvci13aGl0ZTpcdFx0XHQjRkZGICFkZWZhdWx0O1xuJGNvbG9yLWdyYXk6XHRcdFx0I0Q2RDZENiAhZGVmYXVsdDtcblxuLy9uYXZcblxuJG5hdi1jb2xvcjogXHRcdFx0JGNvbG9yLXdoaXRlICFkZWZhdWx0O1xuJG5hdi1jb2xvci1ob3ZlcjpcdFx0JGNvbG9yLXdoaXRlICFkZWZhdWx0O1xuJG5hdi1mb250LXNpemU6IFx0XHQxNHB4ICFkZWZhdWx0O1xuJG5hdi1yb3VuZGVkOiBcdFx0XHQzcHggIWRlZmF1bHQ7XG4kbmF2LW1hcmdpbjogXHRcdFx0NXB4ICFkZWZhdWx0O1xuJG5hdi1wYWRkaW5nOiBcdFx0XHQ0cHggN3B4ICFkZWZhdWx0O1xuJG5hdi1iYWNrZ3JvdW5kOiBcdFx0JGNvbG9yLWdyYXkgIWRlZmF1bHQ7XG4kbmF2LWJhY2tncm91bmQtaG92ZXI6XHQkY29sb3ItYmFzZSAhZGVmYXVsdDtcbiRuYXYtZGlzYWJsZWQtb3BhY2l0eTogXHQwLjUgIWRlZmF1bHQ7XG5cbi8vZG90c1xuXG4kZG90LXdpZHRoOlx0XHRcdFx0MTBweCAhZGVmYXVsdDtcbiRkb3QtaGVpZ2h0Olx0XHRcdDEwcHggIWRlZmF1bHQ7XG4kZG90LXJvdW5kZWQ6XHRcdFx0MzBweCAhZGVmYXVsdDtcbiRkb3QtbWFyZ2luOiBcdFx0XHQ1cHggN3B4ICFkZWZhdWx0O1xuJGRvdC1iYWNrZ3JvdW5kOlx0XHQkY29sb3ItZ3JheSAhZGVmYXVsdDtcbiRkb3QtYmFja2dyb3VuZC1hY3RpdmU6XHQkY29sb3ItYmFzZSAhZGVmYXVsdDtcblxuQGltcG9ydCAndGhlbWUnO1xuIiwiXG4ub3dsLXRoZW1lIHtcblx0Ly8gU3R5bGluZyBOZXh0IGFuZCBQcmV2IGJ1dHRvbnNcblx0Lm93bC1uYXYge1xuXHRcdG1hcmdpbi10b3A6IDEwcHg7XG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cblx0XHRbY2xhc3MqPSdvd2wtJ10ge1xuXHRcdFx0Y29sb3I6ICRuYXYtY29sb3I7XG5cdFx0XHRmb250LXNpemU6ICRuYXYtZm9udC1zaXplO1xuXHRcdFx0bWFyZ2luOiAkbmF2LW1hcmdpbjtcblx0XHRcdHBhZGRpbmc6ICRuYXYtcGFkZGluZztcblx0XHRcdGJhY2tncm91bmQ6ICRuYXYtYmFja2dyb3VuZDtcblx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdGN1cnNvcjogcG9pbnRlcjtcblx0XHRcdGJvcmRlci1yYWRpdXM6IDNweDtcblxuXHRcdFx0Jjpob3ZlciB7XG5cdFx0XHRcdGJhY2tncm91bmQ6ICRuYXYtYmFja2dyb3VuZC1ob3Zlcjtcblx0XHRcdFx0Y29sb3I6JG5hdi1jb2xvci1ob3Zlcjtcblx0XHRcdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRcdFx0fVxuXHRcdH1cblx0XHQuZGlzYWJsZWQge1xuXHRcdFx0b3BhY2l0eTogJG5hdi1kaXNhYmxlZC1vcGFjaXR5O1xuXHRcdFx0Y3Vyc29yOiBkZWZhdWx0O1xuXHRcdH1cblx0fVxuXG5cdC8vIFN0eWxpbmcgZG90c1xuXHQub3dsLW5hdi5kaXNhYmxlZCArIC5vd2wtZG90cyB7XG5cdFx0bWFyZ2luLXRvcDogMTBweDtcblx0fVxuXG5cdC5vd2wtZG90cyB7XG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cblx0XHQub3dsLWRvdCB7XG5cdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHR6b29tOiAxO1xuXHRcdFx0KmRpc3BsYXk6IGlubGluZTtcblxuXHRcdFx0c3BhbiB7XG5cdFx0XHRcdHdpZHRoOiAkZG90LXdpZHRoO1xuXHRcdFx0XHRoZWlnaHQ6ICRkb3QtaGVpZ2h0O1xuXHRcdFx0XHRtYXJnaW46ICRkb3QtbWFyZ2luO1xuXHRcdFx0XHRiYWNrZ3JvdW5kOiAkZG90LWJhY2tncm91bmQ7XG5cdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHQtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IHZpc2libGU7XG5cdFx0XHRcdHRyYW5zaXRpb246IG9wYWNpdHkgMjAwbXMgZWFzZTtcblx0XHRcdFx0Ym9yZGVyLXJhZGl1czogJGRvdC1yb3VuZGVkO1xuXHRcdFx0fVxuXG5cdFx0XHQmLmFjdGl2ZSxcblx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHRzcGFuIHtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kOiAkZG90LWJhY2tncm91bmQtYWN0aXZlO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG4iLCIvKiFcbiAqIGJhZ3VldHRlQm94LmpzXG4gKiBAYXV0aG9yICBmZWltb3NpXG4gKiBAdmVyc2lvbiAlJUlOSkVDVF9WRVJTSU9OJSVcbiAqIEB1cmwgaHR0cHM6Ly9naXRodWIuY29tL2ZlaW1vc2kvYmFndWV0dGVCb3guanNcbiAqL1xuXG4jYmFndWV0dGVCb3gtb3ZlcmxheSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB6LWluZGV4OiAxMDAwMDAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMyMjI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLDAsMCwuOCk7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAuNXMgZWFzZTtcblxuICAgICYudmlzaWJsZSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuXG4gICAgLmZ1bGwtaW1hZ2Uge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgIGZpZ3VyZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICAgICAgICBtYXJnaW46IDA7ICAgICAgLy8gbmVlZGVkIGZvciBtb2JpbGVcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTsgICAvLyBPcGVyYSAxMiBpbWFnZSBzdHJldGNoaW5nIGZpeFxuICAgICAgICB9XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIC8vIElFOCBmaXhcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuXG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCA4cHggcmdiYSgwLDAsMCwuNik7XG4gICAgICAgIH1cblxuICAgICAgICBmaWdjYXB0aW9uIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS44O1xuICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgICAgICAgICAgIGNvbG9yOiAjY2NjO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwwLDAsLjYpO1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7XG4gICAgICAgIH1cblxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgaGVpZ2h0OiA1MCU7XG4gICAgICAgICAgICB3aWR0aDogMXB4O1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0Oi0xcHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbiNiYWd1ZXR0ZUJveC1zbGlkZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB0cmFuc2l0aW9uOiBsZWZ0IC40cyBlYXNlLCB0cmFuc2Zvcm0gLjRzIGVhc2U7XG5cbiAgICAmLmJvdW5jZS1mcm9tLXJpZ2h0IHtcbiAgICAgICAgYW5pbWF0aW9uOiBib3VuY2VGcm9tUmlnaHQgLjRzIGVhc2Utb3V0O1xuICAgIH1cblxuICAgICYuYm91bmNlLWZyb20tbGVmdCB7XG4gICAgICAgIGFuaW1hdGlvbjogYm91bmNlRnJvbUxlZnQgLjRzIGVhc2Utb3V0O1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyBib3VuY2VGcm9tUmlnaHR7XG4gICAgMCUgeyBtYXJnaW4tbGVmdDogMDsgfVxuICAgIDUwJSB7IG1hcmdpbi1sZWZ0OiAtMzBweDsgfVxuICAgIDEwMCUgeyBtYXJnaW4tbGVmdDogMDsgfVxufVxuXG5Aa2V5ZnJhbWVzIGJvdW5jZUZyb21MZWZ0e1xuICAgIDAlIHsgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgICA1MCUgeyBtYXJnaW4tbGVmdDogMzBweDsgfVxuICAgIDEwMCUgeyBtYXJnaW4tbGVmdDogMDsgfVxufVxuXG4lYXJyb3ctYnV0dG9uIHtcbiAgICB0b3A6IDUwJTtcbiAgICB0b3A6IGNhbGMoNTAlIC0gMzBweCk7XG4gICAgd2lkdGg6IDQ0cHg7XG4gICAgaGVpZ2h0OiA2MHB4O1xufVxuXG4uYmFndWV0dGVCb3gtYnV0dG9uIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW46IDA7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDE1JTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzIzMjMyO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoNTAsNTAsNTAsLjUpO1xuICAgIGNvbG9yOiAjZGRkO1xuICAgIGZvbnQ6IDEuNmVtIHNhbnMtc2VyaWY7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAuNHMgZWFzZTtcblxuICAgICY6Zm9jdXMsXG4gICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoNTAsNTAsNTAsLjkpO1xuICAgIH1cblxuICAgICYjbmV4dC1idXR0b24ge1xuICAgICAgICBAZXh0ZW5kICVhcnJvdy1idXR0b247XG4gICAgICAgIHJpZ2h0OiAyJTtcbiAgICB9XG5cbiAgICAmI3ByZXZpb3VzLWJ1dHRvbiB7XG4gICAgICAgIEBleHRlbmQgJWFycm93LWJ1dHRvbjtcbiAgICAgICAgbGVmdDogMiU7XG4gICAgfVxuXG4gICAgJiNjbG9zZS1idXR0b24ge1xuICAgICAgICB0b3A6IDIwcHg7XG4gICAgICAgIHJpZ2h0OiAyJTtcbiAgICAgICAgcmlnaHQ6IGNhbGMoMiUgKyA2cHgpO1xuICAgICAgICB3aWR0aDogMzBweDtcbiAgICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgIH1cblxuICAgIC8vIEZpcmVmb3ggZml4XG4gICAgc3ZnIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB0b3A6IDA7XG4gICAgfVxufVxuXG4vKlxuICAgIFByZWxvYWRlclxuICAgIEJvcnJvd2VkIGZyb20gaHR0cDovL3RvYmlhc2FobGluLmNvbS9zcGlua2l0L1xuKi9cblxuLmJhZ3VldHRlQm94LXNwaW5uZXIge1xuICAgIHdpZHRoOiA0MHB4O1xuICAgIGhlaWdodDogNDBweDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICBtYXJnaW4tdG9wOiAtMjBweDtcbiAgICBtYXJnaW4tbGVmdDogLTIwcHg7XG59XG5cbi5iYWd1ZXR0ZUJveC1kb3VibGUtYm91bmNlMSxcbi5iYWd1ZXR0ZUJveC1kb3VibGUtYm91bmNlMiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIG9wYWNpdHk6IC42O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBhbmltYXRpb246IGJvdW5jZSAycyBpbmZpbml0ZSBlYXNlLWluLW91dDtcbn1cblxuLmJhZ3VldHRlQm94LWRvdWJsZS1ib3VuY2UyIHtcbiAgICBhbmltYXRpb24tZGVsYXk6IC0xcztcbn1cblxuQGtleWZyYW1lcyBib3VuY2Uge1xuICAgIDAlLCAxMDAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgICB9IDUwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgfVxufVxuIiwiLnNwbGlkZV9fY29udGFpbmVye2JveC1zaXppbmc6Ym9yZGVyLWJveDtwb3NpdGlvbjpyZWxhdGl2ZX0uc3BsaWRlX19saXN0ey13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTpoaWRkZW47YmFja2ZhY2UtdmlzaWJpbGl0eTpoaWRkZW47ZGlzcGxheTotbXMtZmxleGJveDtkaXNwbGF5OmZsZXg7aGVpZ2h0OjEwMCU7bWFyZ2luOjAhaW1wb3J0YW50O3BhZGRpbmc6MCFpbXBvcnRhbnQ7dHJhbnNmb3JtLXN0eWxlOnByZXNlcnZlLTNkfS5zcGxpZGUuaXMtaW5pdGlhbGl6ZWQ6bm90KC5pcy1hY3RpdmUpIC5zcGxpZGVfX2xpc3R7ZGlzcGxheTpibG9ja30uc3BsaWRlX19wYWdpbmF0aW9uey1tcy1mbGV4LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7ZGlzcGxheTotbXMtZmxleGJveDtkaXNwbGF5OmZsZXg7LW1zLWZsZXgtd3JhcDp3cmFwO2ZsZXgtd3JhcDp3cmFwOy1tcy1mbGV4LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7bWFyZ2luOjA7cG9pbnRlci1ldmVudHM6bm9uZX0uc3BsaWRlX19wYWdpbmF0aW9uIGxpe2Rpc3BsYXk6aW5saW5lLWJsb2NrO2xpbmUtaGVpZ2h0OjE7bGlzdC1zdHlsZS10eXBlOm5vbmU7bWFyZ2luOjA7cG9pbnRlci1ldmVudHM6YXV0b30uc3BsaWRlX19wcm9ncmVzc19fYmFye3dpZHRoOjB9LnNwbGlkZXtvdXRsaW5lOm5vbmU7cG9zaXRpb246cmVsYXRpdmU7dmlzaWJpbGl0eTpoaWRkZW59LnNwbGlkZS5pcy1pbml0aWFsaXplZCwuc3BsaWRlLmlzLXJlbmRlcmVke3Zpc2liaWxpdHk6dmlzaWJsZX0uc3BsaWRlX19zbGlkZXstd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6aGlkZGVuO2JhY2tmYWNlLXZpc2liaWxpdHk6aGlkZGVuO2JveC1zaXppbmc6Ym9yZGVyLWJveDstbXMtZmxleC1uZWdhdGl2ZTowO2ZsZXgtc2hyaW5rOjA7bGlzdC1zdHlsZS10eXBlOm5vbmUhaW1wb3J0YW50O21hcmdpbjowO291dGxpbmU6bm9uZTtwb3NpdGlvbjpyZWxhdGl2ZX0uc3BsaWRlX19zbGlkZSBpbWd7dmVydGljYWwtYWxpZ246Ym90dG9tfS5zcGxpZGVfX3NsaWRlcntwb3NpdGlvbjpyZWxhdGl2ZX0uc3BsaWRlX19zcGlubmVye2FuaW1hdGlvbjpzcGxpZGUtbG9hZGluZyAxcyBsaW5lYXIgaW5maW5pdGU7Ym9yZGVyOjJweCBzb2xpZCAjOTk5O2JvcmRlci1sZWZ0LWNvbG9yOnRyYW5zcGFyZW50O2JvcmRlci1yYWRpdXM6NTAlO2JvdHRvbTowO2NvbnRhaW46c3RyaWN0O2Rpc3BsYXk6aW5saW5lLWJsb2NrO2hlaWdodDoyMHB4O2xlZnQ6MDttYXJnaW46YXV0bztwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDowO3RvcDowO3dpZHRoOjIwcHh9LnNwbGlkZV9fdHJhY2t7b3ZlcmZsb3c6aGlkZGVuO3Bvc2l0aW9uOnJlbGF0aXZlO3otaW5kZXg6MH1Aa2V5ZnJhbWVzIHNwbGlkZS1sb2FkaW5nezAle3RyYW5zZm9ybTpyb3RhdGUoMCl9dG97dHJhbnNmb3JtOnJvdGF0ZSgxdHVybil9fS5zcGxpZGUtLWRyYWdnYWJsZT4uc3BsaWRlX19zbGlkZXI+LnNwbGlkZV9fdHJhY2ssLnNwbGlkZS0tZHJhZ2dhYmxlPi5zcGxpZGVfX3RyYWNrey13ZWJraXQtdG91Y2gtY2FsbG91dDpub25lOy13ZWJraXQtdXNlci1zZWxlY3Q6bm9uZTstbXMtdXNlci1zZWxlY3Q6bm9uZTt1c2VyLXNlbGVjdDpub25lfS5zcGxpZGUtLWZhZGU+LnNwbGlkZV9fc2xpZGVyPi5zcGxpZGVfX3RyYWNrPi5zcGxpZGVfX2xpc3QsLnNwbGlkZS0tZmFkZT4uc3BsaWRlX190cmFjaz4uc3BsaWRlX19saXN0e2Rpc3BsYXk6YmxvY2t9LnNwbGlkZS0tZmFkZT4uc3BsaWRlX19zbGlkZXI+LnNwbGlkZV9fdHJhY2s+LnNwbGlkZV9fbGlzdD4uc3BsaWRlX19zbGlkZSwuc3BsaWRlLS1mYWRlPi5zcGxpZGVfX3RyYWNrPi5zcGxpZGVfX2xpc3Q+LnNwbGlkZV9fc2xpZGV7bGVmdDowO29wYWNpdHk6MDtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDt6LWluZGV4OjB9LnNwbGlkZS0tZmFkZT4uc3BsaWRlX19zbGlkZXI+LnNwbGlkZV9fdHJhY2s+LnNwbGlkZV9fbGlzdD4uc3BsaWRlX19zbGlkZS5pcy1hY3RpdmUsLnNwbGlkZS0tZmFkZT4uc3BsaWRlX190cmFjaz4uc3BsaWRlX19saXN0Pi5zcGxpZGVfX3NsaWRlLmlzLWFjdGl2ZXtvcGFjaXR5OjE7cG9zaXRpb246cmVsYXRpdmU7ei1pbmRleDoxfS5zcGxpZGUtLXJ0bHtkaXJlY3Rpb246cnRsfS5zcGxpZGUtLXR0Yi5pcy1hY3RpdmU+LnNwbGlkZV9fc2xpZGVyPi5zcGxpZGVfX3RyYWNrPi5zcGxpZGVfX2xpc3QsLnNwbGlkZS0tdHRiLmlzLWFjdGl2ZT4uc3BsaWRlX190cmFjaz4uc3BsaWRlX19saXN0e2Rpc3BsYXk6YmxvY2t9LnNwbGlkZV9fYXJyb3d7LW1zLWZsZXgtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtiYWNrZ3JvdW5kOiNjY2M7Ym9yZGVyOjA7Ym9yZGVyLXJhZGl1czo1MCU7Y3Vyc29yOnBvaW50ZXI7ZGlzcGxheTotbXMtZmxleGJveDtkaXNwbGF5OmZsZXg7aGVpZ2h0OjJlbTstbXMtZmxleC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO29wYWNpdHk6Ljc7cGFkZGluZzowO3Bvc2l0aW9uOmFic29sdXRlO3RvcDo1MCU7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSk7d2lkdGg6MmVtO3otaW5kZXg6MX0uc3BsaWRlX19hcnJvdyBzdmd7ZmlsbDojMDAwO2hlaWdodDoxLjJlbTt3aWR0aDoxLjJlbX0uc3BsaWRlX19hcnJvdzpob3ZlcntvcGFjaXR5Oi45fS5zcGxpZGVfX2Fycm93OmZvY3Vze291dGxpbmU6bm9uZX0uc3BsaWRlX19hcnJvdy0tcHJldntsZWZ0OjFlbX0uc3BsaWRlX19hcnJvdy0tcHJldiBzdmd7dHJhbnNmb3JtOnNjYWxlWCgtMSl9LnNwbGlkZV9fYXJyb3ctLW5leHR7cmlnaHQ6MWVtfS5zcGxpZGVfX3BhZ2luYXRpb257Ym90dG9tOi41ZW07bGVmdDowO3BhZGRpbmc6MCAxZW07cG9zaXRpb246YWJzb2x1dGU7cmlnaHQ6MDt6LWluZGV4OjF9LnNwbGlkZV9fcGFnaW5hdGlvbl9fcGFnZXtiYWNrZ3JvdW5kOiNjY2M7Ym9yZGVyOjA7Ym9yZGVyLXJhZGl1czo1MCU7ZGlzcGxheTppbmxpbmUtYmxvY2s7aGVpZ2h0OjhweDttYXJnaW46M3B4O29wYWNpdHk6Ljc7cGFkZGluZzowO3RyYW5zaXRpb246dHJhbnNmb3JtIC4ycyBsaW5lYXI7d2lkdGg6OHB4fS5zcGxpZGVfX3BhZ2luYXRpb25fX3BhZ2UuaXMtYWN0aXZle2JhY2tncm91bmQ6I2ZmZjt0cmFuc2Zvcm06c2NhbGUoMS40KX0uc3BsaWRlX19wYWdpbmF0aW9uX19wYWdlOmhvdmVye2N1cnNvcjpwb2ludGVyO29wYWNpdHk6Ljl9LnNwbGlkZV9fcGFnaW5hdGlvbl9fcGFnZTpmb2N1c3tvdXRsaW5lOm5vbmV9LnNwbGlkZV9fcHJvZ3Jlc3NfX2JhcntiYWNrZ3JvdW5kOiNjY2M7aGVpZ2h0OjNweH0uc3BsaWRlLS1uYXY+LnNwbGlkZV9fc2xpZGVyPi5zcGxpZGVfX3RyYWNrPi5zcGxpZGVfX2xpc3Q+LnNwbGlkZV9fc2xpZGUsLnNwbGlkZS0tbmF2Pi5zcGxpZGVfX3RyYWNrPi5zcGxpZGVfX2xpc3Q+LnNwbGlkZV9fc2xpZGV7Ym9yZGVyOjNweCBzb2xpZCB0cmFuc3BhcmVudDtjdXJzb3I6cG9pbnRlcn0uc3BsaWRlLS1uYXY+LnNwbGlkZV9fc2xpZGVyPi5zcGxpZGVfX3RyYWNrPi5zcGxpZGVfX2xpc3Q+LnNwbGlkZV9fc2xpZGUuaXMtYWN0aXZlLC5zcGxpZGUtLW5hdj4uc3BsaWRlX190cmFjaz4uc3BsaWRlX19saXN0Pi5zcGxpZGVfX3NsaWRlLmlzLWFjdGl2ZXtib3JkZXI6M3B4IHNvbGlkICMwMDB9LnNwbGlkZS0tbmF2Pi5zcGxpZGVfX3NsaWRlcj4uc3BsaWRlX190cmFjaz4uc3BsaWRlX19saXN0Pi5zcGxpZGVfX3NsaWRlOmZvY3VzLC5zcGxpZGUtLW5hdj4uc3BsaWRlX190cmFjaz4uc3BsaWRlX19saXN0Pi5zcGxpZGVfX3NsaWRlOmZvY3Vze291dGxpbmU6bm9uZX0uc3BsaWRlLS1ydGw+LnNwbGlkZV9fYXJyb3dzIC5zcGxpZGVfX2Fycm93LS1wcmV2LC5zcGxpZGUtLXJ0bD4uc3BsaWRlX19zbGlkZXI+LnNwbGlkZV9fdHJhY2s+LnNwbGlkZV9fYXJyb3dzIC5zcGxpZGVfX2Fycm93LS1wcmV2LC5zcGxpZGUtLXJ0bD4uc3BsaWRlX190cmFjaz4uc3BsaWRlX19hcnJvd3MgLnNwbGlkZV9fYXJyb3ctLXByZXZ7bGVmdDphdXRvO3JpZ2h0OjFlbX0uc3BsaWRlLS1ydGw+LnNwbGlkZV9fYXJyb3dzIC5zcGxpZGVfX2Fycm93LS1wcmV2IHN2Zywuc3BsaWRlLS1ydGw+LnNwbGlkZV9fc2xpZGVyPi5zcGxpZGVfX3RyYWNrPi5zcGxpZGVfX2Fycm93cyAuc3BsaWRlX19hcnJvdy0tcHJldiBzdmcsLnNwbGlkZS0tcnRsPi5zcGxpZGVfX3RyYWNrPi5zcGxpZGVfX2Fycm93cyAuc3BsaWRlX19hcnJvdy0tcHJldiBzdmd7dHJhbnNmb3JtOnNjYWxlWCgxKX0uc3BsaWRlLS1ydGw+LnNwbGlkZV9fYXJyb3dzIC5zcGxpZGVfX2Fycm93LS1uZXh0LC5zcGxpZGUtLXJ0bD4uc3BsaWRlX19zbGlkZXI+LnNwbGlkZV9fdHJhY2s+LnNwbGlkZV9fYXJyb3dzIC5zcGxpZGVfX2Fycm93LS1uZXh0LC5zcGxpZGUtLXJ0bD4uc3BsaWRlX190cmFjaz4uc3BsaWRlX19hcnJvd3MgLnNwbGlkZV9fYXJyb3ctLW5leHR7bGVmdDoxZW07cmlnaHQ6YXV0b30uc3BsaWRlLS1ydGw+LnNwbGlkZV9fYXJyb3dzIC5zcGxpZGVfX2Fycm93LS1uZXh0IHN2Zywuc3BsaWRlLS1ydGw+LnNwbGlkZV9fc2xpZGVyPi5zcGxpZGVfX3RyYWNrPi5zcGxpZGVfX2Fycm93cyAuc3BsaWRlX19hcnJvdy0tbmV4dCBzdmcsLnNwbGlkZS0tcnRsPi5zcGxpZGVfX3RyYWNrPi5zcGxpZGVfX2Fycm93cyAuc3BsaWRlX19hcnJvdy0tbmV4dCBzdmd7dHJhbnNmb3JtOnNjYWxlWCgtMSl9LnNwbGlkZS0tdHRiPi5zcGxpZGVfX2Fycm93cyAuc3BsaWRlX19hcnJvdywuc3BsaWRlLS10dGI+LnNwbGlkZV9fc2xpZGVyPi5zcGxpZGVfX3RyYWNrPi5zcGxpZGVfX2Fycm93cyAuc3BsaWRlX19hcnJvdywuc3BsaWRlLS10dGI+LnNwbGlkZV9fdHJhY2s+LnNwbGlkZV9fYXJyb3dzIC5zcGxpZGVfX2Fycm93e2xlZnQ6NTAlO3RyYW5zZm9ybTp0cmFuc2xhdGUoLTUwJSl9LnNwbGlkZS0tdHRiPi5zcGxpZGVfX2Fycm93cyAuc3BsaWRlX19hcnJvdy0tcHJldiwuc3BsaWRlLS10dGI+LnNwbGlkZV9fc2xpZGVyPi5zcGxpZGVfX3RyYWNrPi5zcGxpZGVfX2Fycm93cyAuc3BsaWRlX19hcnJvdy0tcHJldiwuc3BsaWRlLS10dGI+LnNwbGlkZV9fdHJhY2s+LnNwbGlkZV9fYXJyb3dzIC5zcGxpZGVfX2Fycm93LS1wcmV2e3RvcDoxZW19LnNwbGlkZS0tdHRiPi5zcGxpZGVfX2Fycm93cyAuc3BsaWRlX19hcnJvdy0tcHJldiBzdmcsLnNwbGlkZS0tdHRiPi5zcGxpZGVfX3NsaWRlcj4uc3BsaWRlX190cmFjaz4uc3BsaWRlX19hcnJvd3MgLnNwbGlkZV9fYXJyb3ctLXByZXYgc3ZnLC5zcGxpZGUtLXR0Yj4uc3BsaWRlX190cmFjaz4uc3BsaWRlX19hcnJvd3MgLnNwbGlkZV9fYXJyb3ctLXByZXYgc3Zne3RyYW5zZm9ybTpyb3RhdGUoLTkwZGVnKX0uc3BsaWRlLS10dGI+LnNwbGlkZV9fYXJyb3dzIC5zcGxpZGVfX2Fycm93LS1uZXh0LC5zcGxpZGUtLXR0Yj4uc3BsaWRlX19zbGlkZXI+LnNwbGlkZV9fdHJhY2s+LnNwbGlkZV9fYXJyb3dzIC5zcGxpZGVfX2Fycm93LS1uZXh0LC5zcGxpZGUtLXR0Yj4uc3BsaWRlX190cmFjaz4uc3BsaWRlX19hcnJvd3MgLnNwbGlkZV9fYXJyb3ctLW5leHR7Ym90dG9tOjFlbTt0b3A6YXV0b30uc3BsaWRlLS10dGI+LnNwbGlkZV9fYXJyb3dzIC5zcGxpZGVfX2Fycm93LS1uZXh0IHN2Zywuc3BsaWRlLS10dGI+LnNwbGlkZV9fc2xpZGVyPi5zcGxpZGVfX3RyYWNrPi5zcGxpZGVfX2Fycm93cyAuc3BsaWRlX19hcnJvdy0tbmV4dCBzdmcsLnNwbGlkZS0tdHRiPi5zcGxpZGVfX3RyYWNrPi5zcGxpZGVfX2Fycm93cyAuc3BsaWRlX19hcnJvdy0tbmV4dCBzdmd7dHJhbnNmb3JtOnJvdGF0ZSg5MGRlZyl9LnNwbGlkZS0tdHRiPi5zcGxpZGVfX3BhZ2luYXRpb24sLnNwbGlkZS0tdHRiPi5zcGxpZGVfX3NsaWRlcj4uc3BsaWRlX19wYWdpbmF0aW9ue2JvdHRvbTowO2Rpc3BsYXk6LW1zLWZsZXhib3g7ZGlzcGxheTpmbGV4Oy1tcy1mbGV4LWRpcmVjdGlvbjpjb2x1bW47ZmxleC1kaXJlY3Rpb246Y29sdW1uO2xlZnQ6YXV0bztwYWRkaW5nOjFlbSAwO3JpZ2h0Oi41ZW07dG9wOjB9IiwiQHRhaWx3aW5kIGJhc2U7XG4iLCJAdGFpbHdpbmQgdXRpbGl0aWVzO1xuIiwiLyoqXG4gKiBGb3VuZGF0aW9uIGZvciBTaXRlc1xuICogVmVyc2lvbiA2LjcuNFxuICogaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuICogTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG4gKi9cblxuLy8gLS0tIERlcGVuZGVuY2llcyAtLS1cbkBpbXBvcnQgJ3ZlbmRvci9ub3JtYWxpemUnO1xuQGltcG9ydCAnLi4vX3ZlbmRvci9zYXNzeS1saXN0cy9zdHlsZXNoZWV0cy9oZWxwZXJzL21pc3NpbmctZGVwZW5kZW5jaWVzJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvaGVscGVycy90cnVlJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvZnVuY3Rpb25zL2NvbnRhaW4nO1xuQGltcG9ydCAnLi4vX3ZlbmRvci9zYXNzeS1saXN0cy9zdHlsZXNoZWV0cy9mdW5jdGlvbnMvcHVyZ2UnO1xuQGltcG9ydCAnLi4vX3ZlbmRvci9zYXNzeS1saXN0cy9zdHlsZXNoZWV0cy9mdW5jdGlvbnMvcmVtb3ZlJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvZnVuY3Rpb25zL3JlcGxhY2UnO1xuQGltcG9ydCAnLi4vX3ZlbmRvci9zYXNzeS1saXN0cy9zdHlsZXNoZWV0cy9mdW5jdGlvbnMvdG8tbGlzdCc7XG5cbi8vIC0tLSBTZXR0aW5ncyAtLS1cbi8vIGltcG9ydCB5b3VyIG93biBgc2V0dGluZ3NgIGhlcmUgb3Jcbi8vIGltcG9ydCBhbmQgbW9kaWZ5IHRoZSBkZWZhdWx0IHNldHRpbmdzIHRocm91Z2hcbi8vIEBpbXBvcnQgJ3NldHRpbmdzL3NldHRpbmdzJztcblxuLy8gLS0tIENvbXBvbmVudHMgLS0tXG4vLyBVdGlsaXRpZXNcbkBpbXBvcnQgJ3V0aWwvdXRpbCc7XG4vLyBHbG9iYWwgc3R5bGVzXG5AaW1wb3J0ICdnbG9iYWwnO1xuQGltcG9ydCAnZm9ybXMvZm9ybXMnO1xuQGltcG9ydCAndHlwb2dyYXBoeS90eXBvZ3JhcGh5JztcblxuLy8gR3JpZHNcbkBpbXBvcnQgJ2dyaWQvZ3JpZCc7XG5AaW1wb3J0ICd4eS1ncmlkL3h5LWdyaWQnO1xuLy8gR2VuZXJpYyBjb21wb25lbnRzXG5AaW1wb3J0ICdjb21wb25lbnRzL2J1dHRvbic7XG5AaW1wb3J0ICdjb21wb25lbnRzL2J1dHRvbi1ncm91cCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2Nsb3NlLWJ1dHRvbic7XG5AaW1wb3J0ICdjb21wb25lbnRzL2xhYmVsJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvcHJvZ3Jlc3MtYmFyJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvc2xpZGVyJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvc3dpdGNoJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdGFibGUnO1xuLy8gQmFzaWMgY29tcG9uZW50c1xuQGltcG9ydCAnY29tcG9uZW50cy9iYWRnZSc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2JyZWFkY3J1bWJzJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvY2FsbG91dCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2NhcmQnO1xuQGltcG9ydCAnY29tcG9uZW50cy9kcm9wZG93bic7XG5AaW1wb3J0ICdjb21wb25lbnRzL3BhZ2luYXRpb24nO1xuQGltcG9ydCAnY29tcG9uZW50cy90b29sdGlwJztcblxuLy8gQ29udGFpbmVyc1xuQGltcG9ydCAnY29tcG9uZW50cy9hY2NvcmRpb24nO1xuQGltcG9ydCAnY29tcG9uZW50cy9tZWRpYS1vYmplY3QnO1xuQGltcG9ydCAnY29tcG9uZW50cy9vcmJpdCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3Jlc3BvbnNpdmUtZW1iZWQnO1xuQGltcG9ydCAnY29tcG9uZW50cy90YWJzJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdGh1bWJuYWlsJztcbi8vIE1lbnUtYmFzZWQgY29udGFpbmVyc1xuQGltcG9ydCAnY29tcG9uZW50cy9tZW51JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbWVudS1pY29uJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYWNjb3JkaW9uLW1lbnUnO1xuQGltcG9ydCAnY29tcG9uZW50cy9kcmlsbGRvd24nO1xuQGltcG9ydCAnY29tcG9uZW50cy9kcm9wZG93bi1tZW51JztcblxuLy8gTGF5b3V0IGNvbXBvbmVudHNcbkBpbXBvcnQgJ2NvbXBvbmVudHMvb2ZmLWNhbnZhcyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3JldmVhbCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3N0aWNreSc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3RpdGxlLWJhcic7XG5AaW1wb3J0ICdjb21wb25lbnRzL3RvcC1iYXInO1xuXG4vLyBIZWxwZXJzXG5AaW1wb3J0ICdjb21wb25lbnRzL2Zsb2F0JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZmxleCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3Zpc2liaWxpdHknO1xuQGltcG9ydCAncHJvdG90eXBlL3Byb3RvdHlwZSc7XG5cblxuQG1peGluIGZvdW5kYXRpb24tZXZlcnl0aGluZyhcbiAgJGZsZXg6IHRydWUsXG4gICRwcm90b3R5cGU6IGZhbHNlLFxuICAkeHktZ3JpZDogJHh5LWdyaWRcbikge1xuICBAaWYgJGZsZXgge1xuICAgICRnbG9iYWwtZmxleGJveDogdHJ1ZSAhZ2xvYmFsO1xuICB9XG5cbiAgQGlmICR4eS1ncmlkIHtcbiAgICAkeHktZ3JpZDogdHJ1ZSAhZ2xvYmFsO1xuICB9XG5cbiAgLy8gR2xvYmFsIHN0eWxlc1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWdsb2JhbC1zdHlsZXM7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZm9ybXM7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdHlwb2dyYXBoeTtcblxuICAvLyBHcmlkc1xuICBAaWYgbm90ICRmbGV4IHtcbiAgICBAaW5jbHVkZSBmb3VuZGF0aW9uLWdyaWQ7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBpZiAkeHktZ3JpZCB7XG4gICAgICBAaW5jbHVkZSBmb3VuZGF0aW9uLXh5LWdyaWQtY2xhc3NlcztcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQGluY2x1ZGUgZm91bmRhdGlvbi1mbGV4LWdyaWQ7XG4gICAgfVxuICB9XG5cbiAgLy8gR2VuZXJpYyBjb21wb25lbnRzXG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tYnV0dG9uO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWJ1dHRvbi1ncm91cDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1jbG9zZS1idXR0b247XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tbGFiZWw7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tcHJvZ3Jlc3MtYmFyO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXNsaWRlcjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1zd2l0Y2g7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdGFibGU7XG4gIC8vIEJhc2ljIGNvbXBvbmVudHNcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1iYWRnZTtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1icmVhZGNydW1icztcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1jYWxsb3V0O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWNhcmQ7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZHJvcGRvd247XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tcGFnaW5hdGlvbjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10b29sdGlwO1xuXG4gIC8vIENvbnRhaW5lcnNcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1hY2NvcmRpb247XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tbWVkaWEtb2JqZWN0O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLW9yYml0O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXJlc3BvbnNpdmUtZW1iZWQ7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdGFicztcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10aHVtYm5haWw7XG4gIC8vIE1lbnUtYmFzZWQgY29udGFpbmVyc1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLW1lbnU7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tbWVudS1pY29uO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWFjY29yZGlvbi1tZW51O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWRyaWxsZG93bi1tZW51O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWRyb3Bkb3duLW1lbnU7XG5cbiAgLy8gTGF5b3V0IGNvbXBvbmVudHNcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1vZmYtY2FudmFzO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXJldmVhbDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1zdGlja3k7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdGl0bGUtYmFyO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXRvcC1iYXI7XG5cbiAgLy8gSGVscGVyc1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWZsb2F0LWNsYXNzZXM7XG4gIEBpZiAkZmxleCB7IEBpbmNsdWRlIGZvdW5kYXRpb24tZmxleC1jbGFzc2VzOyB9XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdmlzaWJpbGl0eS1jbGFzc2VzO1xuICBAaWYgJHByb3RvdHlwZSB7IEBpbmNsdWRlIGZvdW5kYXRpb24tcHJvdG90eXBlLWNsYXNzZXM7IH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBicmVha3BvaW50c1xuLy8vL1xuXG4vLy8gUGF0Y2ggdG8gZml4IGlzc3VlICMxMjA4MFxuJC16Zi1zaXplOiBudWxsO1xuXG4vLy8gQSBsaXN0IG9mIG5hbWVkIGJyZWFrcG9pbnRzLiBZb3UgY2FuIHVzZSB0aGVzZSB3aXRoIHRoZSBgYnJlYWtwb2ludCgpYCBtaXhpbiB0byBxdWlja2x5IGNyZWF0ZSBtZWRpYSBxdWVyaWVzLlxuLy8vIEB0eXBlIE1hcFxuJGJyZWFrcG9pbnRzOiAoXG4gIHNtYWxsOiAwLFxuICBtZWRpdW06IDY0MHB4LFxuICBsYXJnZTogMTAyNHB4LFxuICB4bGFyZ2U6IDEyMDBweCxcbiAgeHhsYXJnZTogMTQ0MHB4LFxuKSAhZGVmYXVsdDtcblxuLy8vIEEgbGlzdCBvZiBuYW1lZCBIaURQSSBicmVha3BvaW50cy4gWW91IGNhbiB1c2UgdGhlc2Ugd2l0aCB0aGUgYGJyZWFrcG9pbnQoKWAgbWl4aW4gdG8gcXVpY2tseSBjcmVhdGUgbWVkaWEgcXVlcmllcyBmb3IgcmVzb2x1dGlvbnMuXG4vLy8gVmFsdWVzIG11c3QgcmVwcmVzZW50IHRoZSBkZXZpY2UgcGl4ZWxzIC8gd2ViIHBpeGVscyByYXRpb24gYW5kIGJlIHVuaXRsZXNzIG9yIGluIERQUFguXG4vLy8gQHR5cGUgTWFwXG4kYnJlYWtwb2ludHMtaGlkcGk6IChcbiAgaGlkcGktMTogMSxcbiAgaGlkcGktMS01OiAxLjUsXG4gIGhpZHBpLTI6IDIsXG4gIHJldGluYTogMixcbiAgaGlkcGktMzogM1xuKSAhZGVmYXVsdDtcblxuLy8vIFRoZSBsYXJnZXN0IG5hbWVkIGJyZWFrcG9pbnQgaW4gd2hpY2ggdG8gaW5jbHVkZSBwcmludCBhcyBhIG1lZGlhIHR5cGVcbi8vLyBAdHlwZSBLZXl3b3JkXG4kcHJpbnQtYnJlYWtwb2ludDogbGFyZ2UgIWRlZmF1bHQ7XG5cbiQtemYtemVyby1icmVha3BvaW50OiBzbWFsbCAhZGVmYXVsdDtcblxuJC16Zi1icmVha3BvaW50cy1rZXlzOiBtYXAtdG8tbGlzdCgkYnJlYWtwb2ludHMsICdrZXlzJyk7XG5cbkBpZiBudGgobWFwLXZhbHVlcygkYnJlYWtwb2ludHMpLCAxKSAhPSAwIHtcbiAgQGVycm9yICdUaGUgZmlyc3Qga2V5IGluIHRoZSAkYnJlYWtwb2ludHMgbWFwIG11c3QgaGF2ZSBhIHZhbHVlIG9mIFwiMFwiLic7XG59XG5AZWxzZSB7XG4gICQtemYtemVyby1icmVha3BvaW50OiBudGgobWFwLWtleXMoJGJyZWFrcG9pbnRzKSwgMSk7XG59XG5cbi8vLyBBbGwgb2YgdGhlIG5hbWVzIGluIHRoaXMgbGlzdCB3aWxsIGJlIG91dHB1dCBhcyBjbGFzc2VzIGluIHlvdXIgQ1NTLCBsaWtlIGAuc21hbGwtMTJgLCBgLm1lZGl1bS02YCwgYW5kIHNvIG9uLiBFYWNoIHZhbHVlIGluIHRoaXMgbGlzdCBtdXN0IGFsc28gYmUgaW4gdGhlIGAkYnJlYWtwb2ludHNgIG1hcC5cbi8vLyBAdHlwZSBMaXN0XG4kYnJlYWtwb2ludC1jbGFzc2VzOiAoc21hbGwgbWVkaXVtIGxhcmdlKSAhZGVmYXVsdDtcblxuLy8vIEdlbmVyYXRlcyBhIG1lZGlhIHF1ZXJ5IHN0cmluZyBtYXRjaGluZyB0aGUgaW5wdXQgdmFsdWUuIFJlZmVyIHRvIHRoZSBkb2N1bWVudGF0aW9uIGZvciB0aGUgYGJyZWFrcG9pbnQoKWAgbWl4aW4gdG8gc2VlIHdoYXQgdGhlIHBvc3NpYmxlIGlucHV0cyBhcmUuXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR8TnVtYmVyfSAkdmFsIFtzbWFsbF0gLSBCcmVha3BvaW50IG5hbWUsIG9yIHB4LCByZW0sIG9yIGVtIHZhbHVlIHRvIHByb2Nlc3MuXG5AZnVuY3Rpb24gYnJlYWtwb2ludCgkdmFsOiAkLXpmLXplcm8tYnJlYWtwb2ludCkge1xuICAvLyBXZWIgc3RhbmRhcmQgUGl4ZWxzIHBlciBpbmNoLiAoMWRkcHggLyAkc3RkLXdlYi1kcGkpID0gMWRwaVxuICAvLyBTZWUgaHR0cHM6Ly93d3cudzMub3JnL1RSL2Nzcy12YWx1ZXMtMy8jYWJzb2x1dGUtbGVuZ3Roc1xuICAkc3RkLXdlYi1kcGk6IDk2O1xuXG4gIC8vIFNpemUgb3Iga2V5d29yZFxuICAkYnA6IG50aCgkdmFsLCAxKTtcbiAgLy8gVmFsdWUgb2YgdGhlIGZvbGxvd2luZyBicmVha3BvaW50XG4gICRicC1uZXh0OiBudWxsO1xuICAvLyBWYWx1ZSBmb3IgbWF4LXdpZHRoIG1lZGlhIHF1ZXJpZXNcbiAgJGJwLW1pbjogbnVsbDtcbiAgLy8gVmFsdWUgZm9yIG1pbi13aWR0aCBtZWRpYSBxdWVyaWVzXG4gICRicC1tYXg6IG51bGw7XG4gIC8vIERpcmVjdGlvbiBvZiBtZWRpYSBxdWVyeSAodXAsIGRvd24sIG9yIG9ubHkpXG4gICRkaXI6IGlmKGxlbmd0aCgkdmFsKSA+IDEsIG50aCgkdmFsLCAyKSwgdXApO1xuICAvLyBJZiBuYW1lZCwgbmFtZSBvZiB0aGUgYnJlYWtwb2ludFxuICAkbmFtZTogbnVsbDtcbiAgLy8gSWYgdGhlIGJyZWFrcG9pbnQgaXMgYSBIaURQSSBicmVha3BvaW50XG4gICRoaWRwaTogZmFsc2U7XG5cbiAgLy8gT3JpZW50YXRpb24gbWVkaWEgcXVlcmllcyBoYXZlIGEgdW5pcXVlIHN5bnRheFxuICBAaWYgJGJwID09ICdsYW5kc2NhcGUnIG9yICRicCA9PSAncG9ydHJhaXQnIHtcbiAgICBAcmV0dXJuICcob3JpZW50YXRpb246ICN7JGJwfSknO1xuICB9XG5cbiAgLy8gSWYgYSBicmVha3BvaW50IG5hbWUgaXMgZ2l2ZW4sIGdldCBpdHMgdmFsdWUgZnJvbSB0aGUgJGJyZWFrcG9pbnRzLyRicmVha3BvaW50cy1oaWRwaSBtYXAuXG4gIEBpZiB0eXBlLW9mKCRicCkgPT0gJ3N0cmluZycge1xuICAgIEBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsICRicCkge1xuICAgICAgJG5hbWU6ICRicDtcbiAgICAgICRicDogbWFwLWdldCgkYnJlYWtwb2ludHMsICRuYW1lKTtcbiAgICAgICRicC1uZXh0OiAtemYtbWFwLW5leHQoJGJyZWFrcG9pbnRzLCAkbmFtZSk7XG4gICAgfVxuICAgIEBlbHNlIGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cy1oaWRwaSwgJGJwKSB7XG4gICAgICAkbmFtZTogJGJwO1xuICAgICAgJGJwOiBtYXAtZ2V0KCRicmVha3BvaW50cy1oaWRwaSwgJG5hbWUpO1xuICAgICAgJGJwLW5leHQ6IC16Zi1tYXAtbmV4dC1udW1iZXIoJGJyZWFrcG9pbnRzLWhpZHBpLCAkYnApO1xuICAgICAgJGhpZHBpOiB0cnVlO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAkYnA6IDA7XG4gICAgICBAd2FybiAnYnJlYWtwb2ludCgpOiBcIiN7JHZhbH1cIiBpcyBub3QgZGVmaW5lZCBpbiB5b3VyIGAkYnJlYWtwb2ludHNgIG9yIGAkYnJlYWtwb2ludHMtaGlkcGlgIHNldHRpbmcuJztcbiAgICB9XG4gIH1cblxuICBAaWYgbm90ICRuYW1lIGFuZCAkZGlyID09ICdvbmx5JyB7XG4gICAgQHdhcm4gJ2JyZWFrcG9pbnQoKTogT25seSBuYW1lZCBtZWRpYSBxdWVyaWVzIGNhbiBoYXZlIGFuIGBvbmx5YCByYW5nZS4nO1xuICAgIEByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIC8vIE9ubHkgJ29ubHknIGFuZCAndXAnIGhhdmUgYSBtaW4gbGltaXQuXG4gIEBpZiAkZGlyID09ICdvbmx5JyBvciAkZGlyID09ICd1cCcge1xuICAgICRicC1taW46IGlmKCRoaWRwaSwgc3RyaXAtdW5pdCgkYnApLCAtemYtYnAtdG8tZW0oJGJwKSk7XG4gIH1cbiAgLy8gT25seSAnb25seScgYW5kICdkb3duJyBoYXZlIGEgbWF4IGxpbWl0LlxuICBAaWYgJGRpciA9PSAnb25seScgb3IgJGRpciA9PSAnZG93bicge1xuICAgIC8vIElmIHRoZSBicmVha3BvaW50IGlzIGEgdmFsdWUsIHVzZSBpdCBhcyBtYXggbGltaXQuXG4gICAgQGlmIG5vdCAkbmFtZSB7XG4gICAgICAkYnAtbWF4OiBpZigkaGlkcGksIHN0cmlwLXVuaXQoJGJwKSwgLXpmLWJwLXRvLWVtKCRicCkpO1xuICAgIH1cbiAgICAvLyBJZiB0aGUgYnJlYWtwb2ludCBpcyBuYW1lZCwgdGhlIG1heCBsaW1pdCBpcyB0aGUgZm9sbG93aW5nIGJyZWFrcG9pbnQgLSAxcHguXG4gICAgQGVsc2UgaWYgJGJwLW5leHQge1xuICAgICAgLy8gTWF4IHZhbHVlIGlzIDAuMnB4IHVuZGVyIHRoZSBuZXh0IGJyZWFrcG9pbnQgKDAuMDIgLyAxNiA9IDAuMDAxMjUpLlxuICAgICAgLy8gVXNlIGEgcHJlY2lzaW9uIHVuZGVyIDFweCB0byBzdXBwb3J0IGJyb3dzZXIgem9vbSwgYnV0IG5vdCB0byBsb3cgdG8gYXZvaWQgcm91bmRpbmcuXG4gICAgICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL2ZvdW5kYXRpb24vZm91bmRhdGlvbi1zaXRlcy9pc3N1ZXMvMTEzMTNcbiAgICAgICRicC1tYXg6IGlmKCRoaWRwaSwgJGJwLW5leHQgLSBkaXZpZGUoMSwgJHN0ZC13ZWItZHBpKSwgLXpmLWJwLXRvLWVtKCRicC1uZXh0KSAtIDAuMDAxMjUpO1xuICAgIH1cbiAgfVxuXG4gIC8vIEdlbmVyYXRlIHRoZSBtZWRpYSBxdWVyeSBzdHJpbmcgZnJvbSBtaW4gYW5kIG1heCBsaW1pdHMuXG4gIEBpZiAkaGlkcGkge1xuICAgIC8vIEdlbmVyYXRlIHZhbHVlcyBpbiBEUEkgaW5zdGVhZCBvZiBEUFBYIGZvciBhbiBJRTktMTEvT3BlcmEgbWluaSBjb21wYXRpYmlsaXR5LlxuICAgIC8vIFNlZSBodHRwczovL2Nhbml1c2UuY29tLyNmZWF0PWNzcy1tZWRpYS1yZXNvbHV0aW9uXG4gICAgJGJwLW1pbi1kcGk6IGlmKCRicC1taW4sICRicC1taW4gKiAkc3RkLXdlYi1kcGkgKiAxZHBpLCAkYnAtbWluKTtcbiAgICAkYnAtbWF4LWRwaTogaWYoJGJwLW1heCwgJGJwLW1heCAqICRzdGQtd2ViLWRwaSAqIDFkcGksICRicC1tYXgpO1xuICAgIEByZXR1cm4gemYtc3RyLWpvaW4oXG4gICAgICAtemYtYnAtam9pbigkYnAtbWluLCAkYnAtbWF4LCAnLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvJywgJy13ZWJraXQtbWF4LWRldmljZS1waXhlbC1yYXRpbycpLFxuICAgICAgLXpmLWJwLWpvaW4oJGJwLW1pbi1kcGksICRicC1tYXgtZHBpLCAnbWluLXJlc29sdXRpb24nLCAnbWF4LXJlc29sdXRpb24nKSxcbiAgICAgICcsICcpO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAcmV0dXJuIC16Zi1icC1qb2luKCRicC1taW4sICRicC1tYXgpO1xuICB9XG59XG5cbi8vLyBXcmFwcyBhIG1lZGlhIHF1ZXJ5IGFyb3VuZCB0aGUgY29udGVudCB5b3UgcHV0IGluc2lkZSB0aGUgbWl4aW4uIFRoaXMgbWl4aW4gYWNjZXB0cyBhIG51bWJlciBvZiB2YWx1ZXM6XG4vLy8gIC0gSWYgYSBzdHJpbmcgaXMgcGFzc2VkLCB0aGUgbWl4aW4gd2lsbCBsb29rIGZvciBpdCBpbiB0aGUgYCRicmVha3BvaW50c2AgYW5kIGAkYnJlYWtwb2ludHMtaGlkcGlgIG1hcHMsIGFuZCB1c2UgYSBtZWRpYSBxdWVyeSB0aGVyZS5cbi8vLyAgLSBJZiBhIHBpeGVsIHZhbHVlIGlzIHBhc3NlZCwgaXQgd2lsbCBiZSBjb252ZXJ0ZWQgdG8gYW4gZW0gdmFsdWUgdXNpbmcgYCRnbG9iYWwtZm9udC1zaXplYCBhcyB0aGUgYmFzZS5cbi8vLyAgLSBJZiBhIHJlbSB2YWx1ZSBpcyBwYXNzZWQsIHRoZSB1bml0IHdpbGwgYmUgY2hhbmdlZCB0byBlbS5cbi8vLyAgLSBJZiBhbiBlbSB2YWx1ZSBpcyBwYXNzZWQsIHRoZSB2YWx1ZSB3aWxsIGJlIHVzZWQgYXMtaXMuXG4vLy9cbi8vLyBJZiBtdWx0aXBsZSB2YWx1ZXMgYXJlIHBhc3NlZCwgdGhlIG1peGluIHdpbGwgZ2VuZXJhdGUgYSBtZWRpYSBxdWVyeSBmb3IgZWFjaCBvZiB0aGVtIGFzIGRlc2NyaWJlZCBhYm92ZS5cbi8vLyBTaW5jZSB0aGUgY29udGVudCBpcyBkdXBsaWNhdGVkIGZvciBlYWNoIGJyZWFrcG9pbnQsIHRoaXMgbWl4aW4gc2hvdWxkIG9ubHkgYmUgdXNlZCB3aXRoIHByb3BlcnRpZXMgdGhhdFxuLy8vIGNoYW5nZSBhY3Jvc3MgYnJlYWtwb2ludHMuXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR8TnVtYmVyfSAkdmFsdWVzLi4uIC0gQnJlYWtwb2ludCBuYW1lIG9yIHB4L3JlbS9lbSB2YWx1ZSB0byBwcm9jZXNzLlxuLy8vXG4vLy8gQG91dHB1dCBJZiB0aGUgYnJlYWtwb2ludCBpcyBcIjBweCBhbmQgbGFyZ2VyXCIsIG91dHB1dHMgdGhlIGNvbnRlbnQgYXMtaXMuIE90aGVyd2lzZSwgb3V0cHV0cyB0aGUgY29udGVudCB3cmFwcGVkIGluIGEgbWVkaWEgcXVlcnkuXG5AbWl4aW4gYnJlYWtwb2ludCgkdmFsdWVzLi4uKSB7XG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggbGVuZ3RoKCR2YWx1ZXMpIHtcbiAgICAkdmFsdWU6IG50aCgkdmFsdWVzLCAkaSk7XG4gICAgJHN0cjogYnJlYWtwb2ludCgkdmFsdWUpO1xuICAgICRicDogaW5kZXgoJC16Zi1icmVha3BvaW50cy1rZXlzLCBudGgoJHZhbHVlLCAxKSk7XG4gICAgJHBicDogaW5kZXgoJC16Zi1icmVha3BvaW50cy1rZXlzLCAkcHJpbnQtYnJlYWtwb2ludCk7XG4gICAgLy8gRGlyZWN0aW9uIG9mIG1lZGlhIHF1ZXJ5ICh1cCwgZG93biwgb3Igb25seSlcbiAgICAkZGlyOiBpZihsZW5ndGgoJHZhbHVlKSA+IDEsIG50aCgkdmFsdWUsIDIpLCB1cCk7XG5cbiAgICAkb2xkLXpmLXNpemU6IG51bGw7XG5cbiAgICAvLyBNYWtlIGJyZWFrcG9pbnQgc2l6ZSBhdmFpbGFibGUgYXMgYSB2YXJpYWJsZVxuICAgIEBpZiBnbG9iYWwtdmFyaWFibGUtZXhpc3RzKC16Zi1zaXplKSB7XG4gICAgICAkb2xkLXpmLXNpemU6ICQtemYtc2l6ZTtcbiAgICB9XG4gICAgJC16Zi1zaXplOiBudGgoJHZhbHVlLCAxKSAhZ2xvYmFsOyAvLyBnZXQgdGhlIGZpcnN0IHZhbHVlIHRvIGFjY291bnQgZm9yIGBvbmx5YCBhbmQgYGRvd25gIGtleXdvcmRzXG5cbiAgICAvLyBJZiAkc3RyIGlzIHN0aWxsIGFuIGVtcHR5IHN0cmluZywgbm8gbWVkaWEgcXVlcnkgaXMgbmVlZGVkXG4gICAgQGlmICRzdHIgPT0gJycge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuXG4gICAgLy8gT3RoZXJ3aXNlLCB3cmFwIHRoZSBjb250ZW50IGluIGEgbWVkaWEgcXVlcnlcbiAgICBAZWxzZSB7XG4gICAgICAvLyBGb3IgbmFtZWQgYnJlYWtwb2ludHMgbGVzcyB0aGFuIG9yIGVxdWFsIHRvICRwcmludC1icmVha3BvaW50LCBhZGQgcHJpbnQgdG8gdGhlIG1lZGlhIHR5cGVzXG4gICAgICAvLyBnZW5lcmF0ZSBwcmludCBpZiB0aGUgYnJlYWtwb2ludCBhZmZlY3RzIHRoZSBwcmludC1icmVha3BvaW50IChvciBzbWFsbGVyKS5cbiAgICAgIC8vIFRoaXMgbWVhbnMgdGhlIGN1cnJlbnQgY29uZGl0aW9uIG9ubHkgbmVlZHMgdG8gYmUgZXh0ZW5kZWQgc28gJ2Rvd24nIGFsd2F5cyBnZW5lcmF0ZXMgcHJpbnQuXG4gICAgICBAaWYgJGJwICE9IG51bGwgYW5kICgkYnAgPD0gJHBicCBvciAkZGlyID09IGRvd24pIHtcbiAgICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kICN7JHN0cn0ge1xuICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kICN7JHN0cn0ge1xuICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJC16Zi1zaXplOiAkb2xkLXpmLXNpemUgIWdsb2JhbDtcbiAgfVxufVxuXG4vLy8gQ29udmVydHMgdGhlIGJyZWFrcG9pbnRzIG1hcCB0byBhIFVSTC1lbmNvZGVkIHN0cmluZywgbGlrZSB0aGlzOiBga2V5MT12YWx1ZTEma2V5Mj12YWx1ZTJgLiBUaGUgdmFsdWUgaXMgdGhlbiBkcm9wcGVkIGludG8gdGhlIENTUyBmb3IgYSBzcGVjaWFsIGA8bWV0YT5gIHRhZywgd2hpY2ggaXMgcmVhZCBieSB0aGUgRm91bmRhdGlvbiBKYXZhU2NyaXB0LiBUaGlzIGlzIGhvdyB3ZSB0cmFuc2ZlciB2YWx1ZXMgZnJvbSBTYXNzIHRvIEphdmFTY3JpcHQsIHNvIHRoZXkgY2FuIGJlIGRlZmluZWQgaW4gb25lIHBsYWNlLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtNYXB9ICRtYXAgLSBNYXAgdG8gY29udmVydC5cbi8vL1xuLy8vIEByZXR1cm5zIHtTdHJpbmd9IEEgc3RyaW5nIGNvbnRhaW5pbmcgdGhlIG1hcCdzIGNvbnRlbnRzLlxuQGZ1bmN0aW9uIC16Zi1icC1zZXJpYWxpemUoJG1hcCkge1xuICAkc3RyOiAnJztcbiAgQGVhY2ggJGtleSwgJHZhbHVlIGluICRtYXAge1xuICAgICRzdHI6ICRzdHIgKyAka2V5ICsgJz0nICsgLXpmLWJwLXRvLWVtKCR2YWx1ZSkgKyAnJic7XG4gIH1cbiAgJHN0cjogc3RyLXNsaWNlKCRzdHIsIDEsIC0yKTtcblxuICBAcmV0dXJuICRzdHI7XG59XG5cbi8vLyBGaW5kIHRoZSBuZXh0IGtleSBpbiBhIG1hcC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TWFwfSAkbWFwIC0gTWFwIHRvIHRyYXZlcnNlLlxuLy8vIEBwYXJhbSB7TWl4ZWR9ICRrZXkgLSBLZXkgdG8gdXNlIGFzIGEgc3RhcnRpbmcgcG9pbnQuXG4vLy9cbi8vLyBAcmV0dXJucyB7TWl4ZWR9IFRoZSB2YWx1ZSBmb3IgdGhlIGtleSBhZnRlciBgJGtleWAsIGlmIGAka2V5YCB3YXMgZm91bmQuIElmIGAka2V5YCB3YXMgbm90IGZvdW5kLCBvciBgJGtleWAgd2FzIHRoZSBsYXN0IHZhbHVlIGluIHRoZSBtYXAsIHJldHVybnMgYG51bGxgLlxuQGZ1bmN0aW9uIC16Zi1tYXAtbmV4dCgkbWFwLCAka2V5KSB7XG5cbiAgLy8gU3RvcmUgdGhlIGtleXMgb2YgdGhlIG1hcCBhcyBhIGxpc3RcbiAgJHZhbHVlczogbWFwLWtleXMoJG1hcCk7XG5cbiAgJGk6IDA7XG5cbiAgLy8gSWYgdGhlIEtleSBFeGlzdHMsIEdldCB0aGUgaW5kZXggb2YgdGhlIGtleSB3aXRoaW4gdGhlIG1hcCBhbmQgYWRkIDEgdG8gaXQgZm9yIHRoZSBuZXh0IGJyZWFrcG9pbnQgaW4gdGhlIG1hcFxuICBAaWYgKG1hcC1oYXMta2V5KCRtYXAsICRrZXkpKSB7XG4gICAgJGk6IGluZGV4KCR2YWx1ZXMsICRrZXkpICsgMTtcbiAgfVxuXG4gIC8vIElmIHRoZSBrZXkgZG9lc24ndCBleGlzdCwgb3IgaXQncyB0aGUgbGFzdCBrZXkgaW4gdGhlIG1hcCwgcmV0dXJuIG51bGxcbiAgQGlmICgkaSA+IGxlbmd0aCgkbWFwKSBvciAkaSA9PSAwKSB7XG4gICAgQHJldHVybiBudWxsO1xuICB9XG4gIC8vIE90aGVyd2lzZSwgcmV0dXJuIHRoZSB2YWx1ZVxuICBAZWxzZSB7XG4gICAgQHJldHVybiBtYXAtZ2V0KCRtYXAsIG50aCgkdmFsdWVzLCAkaSkpO1xuICB9XG5cbn1cblxuLy8vIEZpbmQgdGhlIG5leHQgbnVtYmVyIGluIGEgbWFwLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtNYXB9ICRtYXAgLSBNYXAgdG8gdHJhdmVyc2UuXG4vLy8gQHBhcmFtIHtNaXhlZH0gJG51bWJlciAtIE51bWJlciB0byB1c2UgYXMgYSBzdGFydGluZyBwb2ludC5cbi8vL1xuLy8vIEByZXR1cm5zIHtNaXhlZH0gVGhlIG51bWJlciBmb2xsb3dpbmcgYCRudW1iZXJgLCBpZiBgJG51bWJlcmAgd2FzIGZvdW5kLiBJZiBgJG51bWJlcmAgd2FzIG5vdCBmb3VuZCwgb3IgYCRudW1iZXJgIHdhcyB0aGUgYmlnZ2VzdCBudW1iZXIgaW4gdGhlIG1hcCwgcmV0dXJucyBgbnVsbGAuXG5AZnVuY3Rpb24gLXpmLW1hcC1uZXh0LW51bWJlcigkbWFwLCAkbnVtYmVyKSB7XG5cbiAgJG5leHQtbnVtYmVyOiBudWxsO1xuXG4gIEBlYWNoICRrLCAkdiBpbiAkbWFwIHtcbiAgICBAaWYgdHlwZS1vZigkdikgPT0gJ251bWJlcicgYW5kICR2ID4gJG51bWJlciBhbmQgKCRuZXh0LW51bWJlciA9PSBudWxsIG9yICR2IDwgJG5leHQtbnVtYmVyKSB7XG4gICAgICAkbmV4dC1udW1iZXI6ICR2O1xuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gJG5leHQtbnVtYmVyO1xufVxuXG4vLy8gUmV0dXJuIGEgbGlzdCBvZiBvdXIgbmFtZWQgYnJlYWtwb2ludHMgbGVzcyB0aGFuICRrZXkuIFVzZWZ1bCBmb3IgZGVhbGluZyB3aXRoXG4vLy8gcmVzcG9uc2l2ZSBndXR0ZXJzIGZvciB0aGUgZ3JpZC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAka2V5IC0gS2V5IHRvIHVzZSBhcyBsYXN0IGJyZWFrcG9pbnQuXG4vLy9cbi8vLyBAcmV0dXJucyB7QXJyYXl9IFRoZSBsaXN0IG9mIGJyZWFrcG9pbnRzIHVwIHRvIGFuZC4gSWYgJGtleSBpcyBhdXRvLCByZXR1cm5zIGJyZWFrcG9pbnRzIGFib3ZlIHRoZSB6ZXJvXG5AZnVuY3Rpb24gLXpmLWJyZWFrcG9pbnRzLWxlc3MtdGhhbigka2V5KSB7XG4gICRsaXN0OiAoKTtcbiAgJGZvdW5kLWtleTogZmFsc2U7XG5cbiAgQGVhY2ggJG5hbWUgaW4gJC16Zi1icmVha3BvaW50cy1rZXlzIHtcbiAgICBAaWYgKCRuYW1lID09ICRrZXkpIHtcbiAgICAgICRmb3VuZC1rZXk6IHRydWU7XG4gICAgfVxuICAgIEBpZiBub3QgJGZvdW5kLWtleSB7XG4gICAgICAkbGlzdDogYXBwZW5kKCRsaXN0LCAkbmFtZSk7XG4gICAgfVxuICB9XG4gIEByZXR1cm4gJGxpc3Q7XG59XG5cbi8vLyBSZXR1cm4gYSBsaXN0IG9mIG91ciBuYW1lZCBicmVha3BvaW50cyBsZXNzIHRoYW4gJGtleS4gVXNlZnVsIGZvciBkZWFsaW5nIHdpdGhcbi8vLyByZXNwb25zaXZlIGd1dHRlcnMgZm9yIHRoZSBncmlkLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRicmVha3BvaW50IC0gYSBuYW1lZCBvciBub24tbmFtZWQgYnJlYWtwb2ludC5cbi8vL1xuLy8vIEByZXR1cm5zIHtBcnJheX0gVGhlIGxpc3Qgb2YgYnJlYWtwb2ludHMgdXAgdG8gYW5kLiBJZiAka2V5IGlzIGF1dG8sIHJldHVybnMgYnJlYWtwb2ludHMgYWJvdmUgdGhlIHplcm9cbkBmdW5jdGlvbiAtemYtY2xvc2VzdC1uYW1lZC1icmVha3BvaW50KCRicmVha3BvaW50KSB7XG4gICRsYXN0OiAkLXpmLXplcm8tYnJlYWtwb2ludDtcbiAgJGZvdW5kOiBmYWxzZTtcblxuICAkdmFsdWU6IHVuaXRsZXNzLWNhbGMoJGJyZWFrcG9pbnQsIDFweCk7XG4gIEBlYWNoICRrZXksICR2YWwgaW4gJGJyZWFrcG9pbnRzIHtcbiAgICBAaWYgbm90ICRmb3VuZCB7XG4gICAgICBAaWYgdW5pdGxlc3MtY2FsYygkdmFsKSA+ICR2YWx1ZSB7XG4gICAgICAgICRmb3VuZDogdHJ1ZTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAkbGFzdDogJGtleTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAcmV0dXJuICRsYXN0O1xufVxuXG4vLy8gR2V0IGEgdmFsdWUgZm9yIGEgYnJlYWtwb2ludCBmcm9tIGEgcmVzcG9uc2l2ZSBjb25maWcgbWFwIG9yIHNpbmdsZSB2YWx1ZS5cbi8vLyAtIElmIHRoZSBjb25maWcgaXMgYSBzaW5nbGUgdmFsdWUsIHJldHVybiBpdCByZWdhcmRsZXNzIG9mIGAkdmFsdWVgLlxuLy8vIC0gSWYgdGhlIGNvbmZpZyBpcyBhIG1hcCBhbmQgaGFzIHRoZSBrZXkgYCR2YWx1ZWAsIHRoZSBleGFjdCBicmVha3BvaW50IHZhbHVlIGlzIHJldHVybmVkLlxuLy8vIC0gSWYgdGhlIGNvbmZpZyBpcyBhIG1hcCBhbmQgZG9lcyAqbm90KiBoYXZlIHRoZSBicmVha3BvaW50LCB0aGUgdmFsdWUgbWF0Y2hpbmcgdGhlIG5leHQgbG93ZXN0IGJyZWFrcG9pbnQgaW4gdGhlIGNvbmZpZyBtYXAgaXMgcmV0dXJuZWQuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRtYXAgLSBSZXNwb25zaXZlIGNvbmZpZyBtYXAgb3Igc2luZ2xlIHZhbHVlLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHZhbHVlIC0gQnJlYWtwb2ludCBuYW1lIHRvIHVzZS5cbi8vL1xuLy8vIEByZXR1cm4ge01peGVkfSBUaGUgY29ycmVzcG9uZGluZyBicmVha3BvaW50IHZhbHVlLlxuQGZ1bmN0aW9uIC16Zi1nZXQtYnAtdmFsKCRtYXAsICR2YWx1ZSkge1xuICAvLyBJZiB0aGUgZ2l2ZW4gbWFwIGlzIGEgc2luZ2xlIHZhbHVlLCByZXR1cm4gaXRcbiAgQGlmIHR5cGUtb2YoJG1hcCkgPT0gJ251bWJlcicge1xuICAgIEByZXR1cm4gJG1hcDtcbiAgfVxuXG5cbiAgLy8gQ2hlY2sgaWYgdGhlIGJyZWFrcG9pbnQgbmFtZSBleGlzdHMgZ2xvYmFsbHlcbiAgQGlmIG5vdCBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsICR2YWx1ZSkge1xuICAgIEBpZiB0eXBlLW9mKCR2YWx1ZSkgPT0gJ251bWJlcicge1xuICAgICAgJHZhbHVlOiAtemYtY2xvc2VzdC1uYW1lZC1icmVha3BvaW50KCR2YWx1ZSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBAcmV0dXJuIG51bGw7XG4gICAgfVxuICB9XG4gIC8vIENoZWNrIGlmIHRoZSBicmVha3BvaW50IG5hbWUgZXhpc3RzIGluIHRoZSBsb2NhbCBjb25maWcgbWFwXG4gIEBlbHNlIGlmIG1hcC1oYXMta2V5KCRtYXAsICR2YWx1ZSkge1xuICAgIC8vIElmIGl0IGRvZXMsIGp1c3QgcmV0dXJuIHRoZSB2YWx1ZVxuICAgIEByZXR1cm4gbWFwLWdldCgkbWFwLCAkdmFsdWUpO1xuICB9XG4gIC8vIE90aGVyd2lzZSwgZmluZCB0aGUgbmV4dCBsb3dlc3QgYnJlYWtwb2ludCBhbmQgcmV0dXJuIHRoYXQgdmFsdWVcbiAgQGVsc2Uge1xuICAgICRhbmNob3I6IG51bGw7XG4gICAgJGZvdW5kOiBmYWxzZTtcblxuICAgIEBlYWNoICRrZXksICR2YWwgaW4gJGJyZWFrcG9pbnRzIHtcbiAgICAgIEBpZiBub3QgJGZvdW5kIHtcbiAgICAgICAgQGlmIG1hcC1oYXMta2V5KCRtYXAsICRrZXkpIHtcbiAgICAgICAgICAkYW5jaG9yOiAka2V5O1xuICAgICAgICB9XG4gICAgICAgIEBpZiAka2V5ID09ICR2YWx1ZSB7XG4gICAgICAgICAgJGZvdW5kOiB0cnVlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgQHJldHVybiBtYXAtZ2V0KCRtYXAsICRhbmNob3IpO1xuICB9XG59XG5cbi8vLyBSZXR1cm4gdGhlIGJlc3QgYnJlYWtwb2ludCB0byB1c2UgYWNjb3JkaW5nIHRvIHRoZSBjYWxsaW5nIGNvbnRleHQuIEl0IHJldHVybnMgaW4gb3JkZXI6XG4vLy8gMS4gdGhlIGdpdmVuIGAkdmFsdWVgIGFyZ3VtZW50IGlmIGl0IGlzIG5vdCBudWxsLlxuLy8vIDIuIHRoZSBnbG9iYWwgYnJlYWtwb2ludCBjb250ZXh0IGAkLXpmLXNpemVgIGlmIGl0IGlzIG5vdCBudWxsIChsaWtlIGlmIGNhbGxlZCBpbnNpZGUgdGhlbiBgYnJlYWtwb2ludCgpYCBtaXhpbilcbi8vLyAzLiB0aGUgZ2l2ZW4gYCRkZWZhdWx0YCBhcmd1bWVudC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHZhbHVlIFtudWxsXSAtIEJyZWFrcG9pbnQgdG8gdXNlIGluIHByaW9yaXR5IGlmIG5vbi1udWxsLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGRlZmF1bHQgW251bGxdIC0gQnJlYWtwb2ludCB0byB1c2UgYnkgZGVmYXVsdCBpZiBubyBvdGhlciB2YWx1ZSBjYW4gYmUgdXNlZC5cbi8vL1xuLy8vIEByZXR1cm4ge0tleXdvcmR9IFRoZSByZXNvbHZlZCBicmVha3BvaW50LlxuQGZ1bmN0aW9uIC16Zi1jdXJyZW50LWJyZWFrcG9pbnQoJHZhbHVlOiBudWxsLCAkZGVmYXVsdDogbnVsbCkge1xuICBAaWYgKCR2YWx1ZSAhPSBudWxsKSB7XG4gICAgQHJldHVybiAkdmFsdWU7XG4gIH1cbiAgQGVsc2UgaWYgKHZhcmlhYmxlLWV4aXN0cygtemYtc2l6ZSkgYW5kIHR5cGUtb2YoJC16Zi1zaXplKSAhPSAnbnVtYmVyJykgYW5kICQtemYtc2l6ZSAhPSBudWxsIHtcbiAgICBAcmV0dXJuICQtemYtc2l6ZTtcbiAgfVxuICBAZWxzZSB7XG4gICAgQHJldHVybiAkZGVmYXVsdDtcbiAgfVxufVxuXG4vLy8gUmV0dXJuIG1lZGlhIHF1ZXJ5IHN0cmluZyBmcm9tIHRoZSBnaXZlbiBtaW4gYW5kL29yIG1heCBsaW1pdHMuXG4vLy8gSWYgYSBsaW1pdCBpcyBlcXVhbCB0byBgbnVsbGAgb3IgYDBgLCBpdCBpcyBpZ25vcmVkLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRtaW4gWzBdIC0gTWluIG1lZGlhIHF1ZXJ5IGxpbWl0LlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkbWF4IFswXSAtIE1heCBtZWRpYSBxdWVyeSBsaW1pdC5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJG1pbi1uYW1lIFsnbWluLXdpZHRoJ10gLSBOYW1lIG9mIHRoZSBtaW4gbWVkaWEgcXVlcnkgbGltaXQuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRkZWxpbWl0ZXIgWydtYXgtd2lkdGgnXSAtIE5hbWUgb2YgdGhlIG1heCBtZWRpYSBxdWVyeSBsaW1pdC5cbi8vL1xuLy8vIEByZXR1cm5zIHtTdHJpbmd9IE1lZGlhIFF1ZXJ5IHN0cmluZy5cbkBmdW5jdGlvbiAtemYtYnAtam9pbihcbiAgJG1pbjogMCxcbiAgJG1heDogMCxcbiAgJG1pbi1uYW1lOiAnbWluLXdpZHRoJyxcbiAgJG1heC1uYW1lOiAnbWF4LXdpZHRoJ1xuKSB7XG4gIEByZXR1cm4gemYtc3RyLWpvaW4oXG4gICAgaWYoJG1pbiBhbmQgJG1pbiA+IDAsICcoI3skbWluLW5hbWV9OiAjeyRtaW59KScsIG51bGwpLFxuICAgIGlmKCRtYXggYW5kICRtYXggPiAwLCAnKCN7JG1heC1uYW1lfTogI3skbWF4fSknLCBudWxsKSxcbiAgICAnIGFuZCAnKTtcbn1cblxuJHNtYWxsLXVwOiAnJztcbiRzbWFsbC1vbmx5OiAnJztcblxuQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgc21hbGwpIHtcbiAgJHNtYWxsLXVwOiBzY3JlZW47XG4gICRzbWFsbC1vbmx5OiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludChzbWFsbCBvbmx5KX0nKTtcbn1cblxuJG1lZGl1bS11cDogJyc7XG4kbWVkaXVtLW9ubHk6ICcnO1xuXG5AaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCBtZWRpdW0pIHtcbiAgJG1lZGl1bS11cDogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtKX0nKTtcbiAgJG1lZGl1bS1vbmx5OiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludChtZWRpdW0gb25seSl9Jyk7XG59XG5cbiRsYXJnZS11cDogJyc7XG4kbGFyZ2Utb25seTogJyc7XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIGxhcmdlKSB7XG4gICRsYXJnZS11cDogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobGFyZ2UpfScpO1xuICAkbGFyZ2Utb25seTogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobGFyZ2Ugb25seSl9Jyk7XG59XG5cbiR4bGFyZ2UtdXA6ICcnO1xuJHhsYXJnZS1vbmx5OiAnJztcblxuQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgeGxhcmdlKSB7XG4gICR4bGFyZ2UtdXA6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KHhsYXJnZSl9Jyk7XG4gICR4bGFyZ2Utb25seTogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQoeGxhcmdlIG9ubHkpfScpO1xufVxuXG4keHhsYXJnZS11cDogJyc7XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIHh4bGFyZ2UpIHtcbiAgJHh4bGFyZ2UtdXA6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KHh4bGFyZ2UpfScpO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHJldmVhbFxuLy8vL1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIG9mIGEgbW9kYWwuXG4vLy8gQHR5cGUgQ29sb3JcbiRyZXZlYWwtYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB3aWR0aCBvZiBhIG1vZGFsLCB3aXRoIG5vIGNsYXNzIGFwcGxpZWQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcmV2ZWFsLXdpZHRoOiA2MDBweCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbWF4aW11bSB3aWR0aCBvZiBhIG1vZGFsLlxuLy8vIEB0eXBlIE51bWJlclxuJHJldmVhbC1tYXgtd2lkdGg6ICRnbG9iYWwtd2lkdGggIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgaW5zaWRlIGEgbW9kYWwuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcmV2ZWFsLXBhZGRpbmc6ICRnbG9iYWwtcGFkZGluZyAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm9yZGVyIGFyb3VuZCBhIG1vZGFsLlxuLy8vIEB0eXBlIE51bWJlclxuJHJldmVhbC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHJhZGl1cyBmb3IgbW9kYWwuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcmV2ZWFsLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vLyB6LWluZGV4IGZvciBtb2RhbHMuIFRoZSBvdmVybGF5IHVzZXMgdGhpcyB2YWx1ZSwgd2hpbGUgdGhlIG1vZGFsIGl0c2VsZiB1c2VzIHRoaXMgdmFsdWUgcGx1cyBvbmUuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcmV2ZWFsLXppbmRleDogMTAwNSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgbW9kYWwgb3ZlcmxheXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRyZXZlYWwtb3ZlcmxheS1iYWNrZ3JvdW5kOiByZ2JhKCRibGFjaywgMC40NSkgIWRlZmF1bHQ7XG5cblxuLy8gUGxhY2Vob2xkZXIgc2VsZWN0b3IgZm9yIG1lZGl1bS1hbmQtdXAgbW9kYWxzXG4vLyBQcmV2ZW50cyBkdXBsaWNhdGUgQ1NTIHdoZW4gZGVmaW5pbmcgbXVsdGlwbGUgUmV2ZWFsIHNpemVzXG4vLyBUaGlzIHNob3VsZCBiZSBpbiB0aGUgc2FtZSBicmVha3BvaW50IHRoZW4gYEBtaXhpbiByZXZlYWwtbW9kYWwtd2lkdGhgXG5AaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAlcmV2ZWFsLWNlbnRlcmVkIHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiBhdXRvO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICB9XG59XG5cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIG1vZGFsIG92ZXJsYXkuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhY2tncm91bmQgWyRyZXZlYWwtb3ZlcmxheS1iYWNrZ3JvdW5kXSAtIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIG92ZXJsYXkuXG5AbWl4aW4gcmV2ZWFsLW92ZXJsYXkoJGJhY2tncm91bmQ6ICRyZXZlYWwtb3ZlcmxheS1iYWNrZ3JvdW5kKSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkcmV2ZWFsLXppbmRleDtcblxuICBkaXNwbGF5OiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xufVxuXG4vLy8gQWRkcyBiYXNlIHN0eWxlcyBmb3IgYSBtb2RhbC5cbkBtaXhpbiByZXZlYWwtbW9kYWwtYmFzZSB7XG4gIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcbiAgei1pbmRleDogJHJldmVhbC16aW5kZXggKyAxO1xuICAvLyBXb3JrYXJvdW5kIGFuZHJvaWQgYnJvd3NlciB6LWluZGV4IGJ1Z1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG5cbiAgZGlzcGxheTogbm9uZTtcbiAgcGFkZGluZzogJHJldmVhbC1wYWRkaW5nO1xuXG4gIGJvcmRlcjogJHJldmVhbC1ib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICRyZXZlYWwtcmFkaXVzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcmV2ZWFsLWJhY2tncm91bmQ7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICBtaW4taGVpZ2h0OiAwO1xuICB9XG5cbiAgLy8gTWFrZSBzdXJlIHJvd3MgZG9uJ3QgaGF2ZSBhIG1pbi13aWR0aCBvbiB0aGVtXG4gIC5jb2x1bW4ge1xuICAgIG1pbi13aWR0aDogMDtcbiAgfVxuXG4gIC8vIFN0cmlwIG1hcmdpbnMgZnJvbSB0aGUgbGFzdCBpdGVtIGluIHRoZSBtb2RhbFxuICA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi8vLyBBZGp1c3RzIHRoZSB3aWR0aCBvZiBhIG1vZGFsLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkd2lkdGggLSBXaWR0aCBvZiB0aGUgbW9kYWwuIEdlbmVyYWxseSBhIHBlcmNlbnRhZ2UuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRtYXgtd2lkdGggWyRyZXZlYWwtbWF4LXdpZHRoXSAtIE1heGltdW0gd2lkdGggb2YgdGhlIG1vZGFsLlxuQG1peGluIHJldmVhbC1tb2RhbC13aWR0aChcbiAgJHdpZHRoOiAkcmV2ZWFsLXdpZHRoLFxuICAkbWF4LXdpZHRoOiAkcmV2ZWFsLW1heC13aWR0aFxuKSB7XG4gIC8vIEV4dGVuZHMgbXVzdCBiZSBtYWRlIG91dHNpZGUgb2YgYnJlYWtwb2ludHMgZm9yIGNvbXBhdGliaWxpdHkgd2l0aCBuZXdlciBTYXNzIHZlcnNpb25zIChsaWJzYXNzIHYzLjUpXG4gIEBleHRlbmQgJXJldmVhbC1jZW50ZXJlZDtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICB3aWR0aDogJHdpZHRoO1xuICAgIG1heC13aWR0aDogJG1heC13aWR0aDtcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIGZ1bGwtc2NyZWVuIG1vZGFsLCB3aGljaCBzdHJldGNoZXMgdGhlIGZ1bGwgd2lkdGggYW5kIGhlaWdodCBvZiB0aGUgd2luZG93LlxuQG1peGluIHJldmVhbC1tb2RhbC1mdWxsc2NyZWVuIHtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuXG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IG5vbmU7XG4gIGhlaWdodDogMTAwJTtcbiAgbWluLWhlaWdodDogMTAwJTtcbiAgbWFyZ2luLWxlZnQ6IDA7XG5cbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1yZXZlYWwge1xuXG4gIC8vLyBEaXNhYmxlcyB0aGUgc2Nyb2xsIHdoZW4gUmV2ZWFsIGlzIHNob3duIHRvIHByZXZlbnQgdGhlIGJhY2tncm91bmQgZnJvbSBzaGlmdGluZ1xuICBodG1sLmlzLXJldmVhbC1vcGVuIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgb3ZlcmZsb3cteTogaGlkZGVuO1xuXG4gICAgJi56Zi1oYXMtc2Nyb2xsIHtcbiAgICAgIG92ZXJmbG93LXk6IHNjcm9sbDtcbiAgICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgICB9XG5cbiAgICBib2R5IHsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzXG4gICAgICBvdmVyZmxvdy15OiBoaWRkZW47XG4gICAgfVxuICB9XG5cbiAgLy8gT3ZlcmxheVxuICAucmV2ZWFsLW92ZXJsYXkge1xuICAgIEBpbmNsdWRlIHJldmVhbC1vdmVybGF5O1xuICB9XG5cbiAgLy8gTW9kYWwgY29udGFpbmVyXG4gIC5yZXZlYWwge1xuICAgIEBpbmNsdWRlIHJldmVhbC1tb2RhbC1iYXNlO1xuICAgIEBpbmNsdWRlIHJldmVhbC1tb2RhbC13aWR0aCgkcmV2ZWFsLXdpZHRoKTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAxMDBweDtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG5cbiAgICAvLyBSZW1vdmUgcGFkZGluZ1xuICAgICYuY29sbGFwc2Uge1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICAvLyBTaXppbmcgY2xhc3Nlc1xuICAgICYudGlueSAgeyBAaW5jbHVkZSByZXZlYWwtbW9kYWwtd2lkdGgoMzAlKTsgfVxuICAgICYuc21hbGwgeyBAaW5jbHVkZSByZXZlYWwtbW9kYWwtd2lkdGgoNTAlKTsgfVxuICAgICYubGFyZ2UgeyBAaW5jbHVkZSByZXZlYWwtbW9kYWwtd2lkdGgoOTAlKTsgfVxuXG4gICAgLy8gRnVsbC1zY3JlZW4gbW9kZVxuICAgICYuZnVsbCB7XG4gICAgICBAaW5jbHVkZSByZXZlYWwtbW9kYWwtZnVsbHNjcmVlbjtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCQtemYtemVyby1icmVha3BvaW50IG9ubHkpIHtcbiAgICAgIEBpbmNsdWRlIHJldmVhbC1tb2RhbC1mdWxsc2NyZWVuO1xuICAgIH1cblxuICAgICYud2l0aG91dC1vdmVybGF5IHtcbiAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIHNhc3MtbGludDpkaXNhYmxlIG5vLXZlbmRvci1wcmVmaXhlc1xuXG5AbWl4aW4gZm91bmRhdGlvbi1ub3JtYWxpemUoKSB7XG4gIC8qISBub3JtYWxpemUuY3NzIHY4LjAuMCB8IE1JVCBMaWNlbnNlIHwgZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3MgKi9cblxuICAvLyBEb2N1bWVudFxuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC8vIDEuIENvcnJlY3QgdGhlIGxpbmUgaGVpZ2h0IGluIGFsbCBicm93c2Vycy5cbiAgLy8gMi4gUHJldmVudCBhZGp1c3RtZW50cyBvZiBmb250IHNpemUgYWZ0ZXIgb3JpZW50YXRpb24gY2hhbmdlcyBpbiBpT1MuXG5cbiAgaHRtbCB7XG4gICAgbGluZS1oZWlnaHQ6IDEuMTU7IC8vIDFcbiAgICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8vIDJcbiAgfVxuXG4gIC8vIFNlY3Rpb25zXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLy8gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gYWxsIGJyb3dzZXJzLlxuXG4gIGJvZHkge1xuICAgIG1hcmdpbjogMDtcbiAgfVxuXG4gIC8vIENvcnJlY3QgdGhlIGZvbnQgc2l6ZSBhbmQgbWFyZ2luIG9uIGBoMWAgZWxlbWVudHMgd2l0aGluIGBzZWN0aW9uYCBhbmRcbiAgLy8gYGFydGljbGVgIGNvbnRleHRzIGluIENocm9tZSwgRmlyZWZveCwgYW5kIFNhZmFyaS5cblxuICBoMSB7XG4gICAgZm9udC1zaXplOiAyZW07XG4gICAgbWFyZ2luOiAwLjY3ZW0gMDtcbiAgfVxuXG4gIC8vIEdyb3VwaW5nIGNvbnRlbnRcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAvLyAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBGaXJlZm94LlxuICAvLyAyLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlIGFuZCBJRS5cblxuICBociB7XG4gICAgYm94LXNpemluZzogY29udGVudC1ib3g7IC8vIDFcbiAgICBoZWlnaHQ6IDA7IC8vIDFcbiAgICBvdmVyZmxvdzogdmlzaWJsZTsgLy8gMlxuICB9XG5cbiAgLy8gMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAgLy8gMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuXG4gIHByZSB7XG4gICAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlOyAvLyAxXG4gICAgZm9udC1zaXplOiAxZW07IC8vIDJcbiAgfVxuXG4gIC8vIFRleHQtbGV2ZWwgc2VtYW50aWNzXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLy8gUmVtb3ZlIHRoZSBncmF5IGJhY2tncm91bmQgb24gYWN0aXZlIGxpbmtzIGluIElFIDEwLlxuXG4gIGEge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG5cbiAgLy8gMS4gUmVtb3ZlIHRoZSBib3R0b20gYm9yZGVyIGluIENocm9tZSA1Ny1cbiAgLy8gMi4gQWRkIHRoZSBjb3JyZWN0IHRleHQgZGVjb3JhdGlvbiBpbiBDaHJvbWUsIEVkZ2UsIElFLCBPcGVyYSwgYW5kIFNhZmFyaS5cblxuICBhYmJyW3RpdGxlXSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMDsgLy8gMVxuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDsgLy8gMlxuICB9XG5cbiAgLy8gQWRkIHRoZSBjb3JyZWN0IGZvbnQgd2VpZ2h0IGluIENocm9tZSwgRWRnZSwgYW5kIFNhZmFyaS5cblxuICBiLFxuICBzdHJvbmcge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG4gIH1cblxuICAvLyAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICAvLyAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG5cbiAgY29kZSxcbiAga2JkLFxuICBzYW1wIHtcbiAgICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7IC8vIDFcbiAgICBmb250LXNpemU6IDFlbTsgLy8gMlxuICB9XG5cbiAgLy8gQWRkIHRoZSBjb3JyZWN0IGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG5cbiAgc21hbGwge1xuICAgIGZvbnQtc2l6ZTogODAlO1xuICB9XG5cbiAgLy8gUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgZWxlbWVudHMgZnJvbSBhZmZlY3RpbmcgdGhlIGxpbmUgaGVpZ2h0IGluXG4gIC8vIGFsbCBicm93c2Vycy5cblxuICBzdWIsXG4gIHN1cCB7XG4gICAgZm9udC1zaXplOiA3NSU7XG4gICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgfVxuXG4gIHN1YiB7XG4gICAgYm90dG9tOiAtMC4yNWVtO1xuICB9XG5cbiAgc3VwIHtcbiAgICB0b3A6IC0wLjVlbTtcbiAgfVxuXG4gIC8vIEVtYmVkZGVkIGNvbnRlbnRcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAvLyBSZW1vdmUgdGhlIGJvcmRlciBvbiBpbWFnZXMgaW5zaWRlIGxpbmtzIGluIElFIDEwLlxuXG4gIGltZyB7XG4gICAgYm9yZGVyLXN0eWxlOiBub25lO1xuICB9XG5cbiAgLy8gRm9ybXNcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAvLyAxLiBDaGFuZ2UgdGhlIGZvbnQgc3R5bGVzIGluIGFsbCBicm93c2Vycy5cbiAgLy8gMi4gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gRmlyZWZveCBhbmQgU2FmYXJpLlxuXG4gIGJ1dHRvbixcbiAgaW5wdXQsXG4gIG9wdGdyb3VwLFxuICBzZWxlY3QsXG4gIHRleHRhcmVhIHtcbiAgICBmb250LWZhbWlseTogaW5oZXJpdDsgLy8gMVxuICAgIGZvbnQtc2l6ZTogMTAwJTsgLy8gMVxuICAgIGxpbmUtaGVpZ2h0OiAxLjE1OyAvLyAxXG4gICAgbWFyZ2luOiAwOyAvLyAyXG4gIH1cblxuICAvLyBTaG93IHRoZSBvdmVyZmxvdyBpbiBJRS5cbiAgLy8gMS4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZS5cblxuICBidXR0b24sXG4gIGlucHV0IHsgLy8gMVxuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICB9XG5cbiAgLy8gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBFZGdlLCBGaXJlZm94LCBhbmQgSUUuXG4gIC8vIDEuIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRmlyZWZveC5cblxuICBidXR0b24sXG4gIHNlbGVjdCB7IC8vIDFcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgfVxuXG4gIC8vIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG5cbiAgYnV0dG9uLFxuICBbdHlwZT1cImJ1dHRvblwiXSxcbiAgW3R5cGU9XCJyZXNldFwiXSxcbiAgW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xuICB9XG5cbiAgLy8gUmVtb3ZlIHRoZSBpbm5lciBib3JkZXIgYW5kIHBhZGRpbmcgaW4gRmlyZWZveC5cblxuICBidXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG4gIFt0eXBlPVwiYnV0dG9uXCJdOjotbW96LWZvY3VzLWlubmVyLFxuICBbdHlwZT1cInJlc2V0XCJdOjotbW96LWZvY3VzLWlubmVyLFxuICBbdHlwZT1cInN1Ym1pdFwiXTo6LW1vei1mb2N1cy1pbm5lciB7XG4gICAgYm9yZGVyLXN0eWxlOiBub25lO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cblxuICAvLyBSZXN0b3JlIHRoZSBmb2N1cyBzdHlsZXMgdW5zZXQgYnkgdGhlIHByZXZpb3VzIHJ1bGUuXG5cbiAgYnV0dG9uOi1tb3otZm9jdXNyaW5nLFxuICBbdHlwZT1cImJ1dHRvblwiXTotbW96LWZvY3VzcmluZyxcbiAgW3R5cGU9XCJyZXNldFwiXTotbW96LWZvY3VzcmluZyxcbiAgW3R5cGU9XCJzdWJtaXRcIl06LW1vei1mb2N1c3Jpbmcge1xuICAgIG91dGxpbmU6IDFweCBkb3R0ZWQgQnV0dG9uVGV4dDtcbiAgfVxuXG4gIC8vIENvcnJlY3QgdGhlIHBhZGRpbmcgaW4gRmlyZWZveC5cblxuICBmaWVsZHNldCB7XG4gICAgcGFkZGluZzogMC4zNWVtIDAuNzVlbSAwLjYyNWVtO1xuICB9XG5cbiAgLy8gMS4gQ29ycmVjdCB0aGUgdGV4dCB3cmFwcGluZyBpbiBFZGdlIGFuZCBJRS5cbiAgLy8gMi4gQ29ycmVjdCB0aGUgY29sb3IgaW5oZXJpdGFuY2UgZnJvbSBgZmllbGRzZXRgIGVsZW1lbnRzIGluIElFLlxuICAvLyAzLiBSZW1vdmUgdGhlIHBhZGRpbmcgc28gZGV2ZWxvcGVycyBhcmUgbm90IGNhdWdodCBvdXQgd2hlbiB0aGV5IHplcm8gb3V0XG4gIC8vICAgIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gYWxsIGJyb3dzZXJzLlxuXG4gIGxlZ2VuZCB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLy8gMVxuICAgIGNvbG9yOiBpbmhlcml0OyAvLyAyXG4gICAgZGlzcGxheTogdGFibGU7IC8vIDFcbiAgICBtYXgtd2lkdGg6IDEwMCU7IC8vIDFcbiAgICBwYWRkaW5nOiAwOyAvLyAzXG4gICAgd2hpdGUtc3BhY2U6IG5vcm1hbDsgLy8gMVxuICB9XG5cbiAgLy8gQWRkIHRoZSBjb3JyZWN0IHZlcnRpY2FsIGFsaWdubWVudCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cblxuICBwcm9ncmVzcyB7XG4gICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICB9XG5cbiAgLy8gUmVtb3ZlIHRoZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRSAxMCsuXG5cbiAgdGV4dGFyZWEge1xuICAgIG92ZXJmbG93OiBhdXRvO1xuICB9XG5cbiAgLy8gMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gSUUgMTAuXG4gIC8vIDIuIFJlbW92ZSB0aGUgcGFkZGluZyBpbiBJRSAxMC5cblxuICBbdHlwZT1cImNoZWNrYm94XCJdLFxuICBbdHlwZT1cInJhZGlvXCJdIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvLyAxXG4gICAgcGFkZGluZzogMDsgLy8gMlxuICB9XG5cbiAgLy8gQ29ycmVjdCB0aGUgY3Vyc29yIHN0eWxlIG9mIGluY3JlbWVudCBhbmQgZGVjcmVtZW50IGJ1dHRvbnMgaW4gQ2hyb21lLlxuXG4gIFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuICBbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG5cbiAgLy8gMS4gQ29ycmVjdCB0aGUgb2RkIGFwcGVhcmFuY2UgaW4gQ2hyb21lIGFuZCBTYWZhcmkuXG4gIC8vIDIuIENvcnJlY3QgdGhlIG91dGxpbmUgc3R5bGUgaW4gU2FmYXJpLlxuXG4gIFt0eXBlPVwic2VhcmNoXCJdIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLy8gMVxuICAgIG91dGxpbmUtb2Zmc2V0OiAtMnB4OyAvLyAyXG4gIH1cblxuICAvLyBSZW1vdmUgdGhlIGlubmVyIHBhZGRpbmcgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gbWFjT1MuXG5cbiAgW3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgfVxuXG4gIC8vIDEuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gIC8vIDIuIENoYW5nZSBmb250IHByb3BlcnRpZXMgdG8gYGluaGVyaXRgIGluIFNhZmFyaS5cblxuICA6Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLy8gMVxuICAgIGZvbnQ6IGluaGVyaXQ7IC8vIDJcbiAgfVxuXG4gIC8vIEludGVyYWN0aXZlXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLy8gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gRWRnZSwgSUUgMTArLCBhbmQgRmlyZWZveC5cblxuICBkZXRhaWxzIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIC8vIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGFsbCBicm93c2Vycy5cblxuICBzdW1tYXJ5IHtcbiAgICBkaXNwbGF5OiBsaXN0LWl0ZW07XG4gIH1cblxuICAvLyBNaXNjXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLy8gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTArLlxuXG4gIHRlbXBsYXRlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLy8gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTAuXG5cbiAgW2hpZGRlbl0ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAvLyBEaXNhYmxlIG91dGxpbmUgd2hlbiBpbnRlbnQgaXMgY2xlYXJseSBtb3VzZSBhbmQgdG91Y2hcbiAgW2RhdGEtd2hhdGludGVudD1cIm1vdXNlXCJdLFxuICBbZGF0YS13aGF0aW50ZW50PVwidG91Y2hcIl0sXG4gIFtkYXRhLXdoYXRpbnB1dD1cIm1vdXNlXCJdLFxuICBbZGF0YS13aGF0aW5wdXQ9XCJ0b3VjaFwiXSB7XG4gICAgKiwgKjpmb2N1cyB7XG4gICAgICBvdXRsaW5lOiBub25lO1xuICAgIH1cbiAgfVxuXG4gIC8vIERpc2FibGUgaU9TIGNhbGxvdXRzIHdoZW4gZHJhZ2dhYmxlIGlzIGZhbHNlXG4gIFtkcmFnZ2FibGU9ZmFsc2VdIHtcbiAgICAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7XG4gICAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLyBzYXNzLWxpbnQ6ZGlzYWJsZSBuby1jb2xvci1saXRlcmFscywgbm8tcXVhbGlmeWluZy1lbGVtZW50c1xuXG4vLy8vXG4vLy8gQGdyb3VwIGdsb2JhbFxuLy8vL1xuXG5AaW1wb3J0ICd1dGlsL3V0aWwnO1xuXG4vLy8gRm9udCBzaXplIGF0dHJpYnV0ZSBhcHBsaWVkIHRvIGA8aHRtbD5gIGFuZCBgPGJvZHk+YC4gV2UgdXNlIDEwMCUgYnkgZGVmYXVsdCBzbyB0aGUgdmFsdWUgaXMgaW5oZXJpdGVkIGZyb20gdGhlIHVzZXIncyBicm93c2VyIHNldHRpbmdzLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1mb250LXNpemU6IDEwMCUgIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgd2lkdGggb2YgeW91ciBzaXRlLiBVc2VkIGJ5IHRoZSBncmlkIHRvIGRldGVybWluZSByb3cgd2lkdGguXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLXdpZHRoOiByZW0tY2FsYygxMjAwKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbGluZSBoZWlnaHQgZm9yIGFsbCB0eXBlLiBgJGdsb2JhbC1saW5laGVpZ2h0YCBpcyAyNHB4IHdoaWxlIGAkZ2xvYmFsLWZvbnQtc2l6ZWAgaXMgMTZweFxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1saW5laGVpZ2h0OiAxLjUgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvcnMgdXNlZCBmb3IgYnV0dG9ucywgY2FsbG91dHMsIGxpbmtzLCBldGMuIFRoZXJlIG11c3QgYWx3YXlzIGJlIGEgY29sb3IgY2FsbGVkIGBwcmltYXJ5YC5cbi8vLyBAdHlwZSBNYXBcbiRmb3VuZGF0aW9uLXBhbGV0dGU6IChcbiAgcHJpbWFyeTogIzE3NzliYSxcbiAgc2Vjb25kYXJ5OiAjNzY3Njc2LFxuICBzdWNjZXNzOiAjM2FkYjc2LFxuICB3YXJuaW5nOiAjZmZhZTAwLFxuICBhbGVydDogI2NjNGIzNyxcbikgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2VkIGZvciBsaWdodCBncmF5IFVJIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kbGlnaHQtZ3JheTogI2U2ZTZlNiAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzZWQgZm9yIG1lZGl1bSBncmF5IFVJIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kbWVkaXVtLWdyYXk6ICNjYWNhY2EgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2VkIGZvciBkYXJrIGdyYXkgVUkgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRkYXJrLWdyYXk6ICM4YThhOGEgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2VkIGZvciBibGFjayB1aSBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJGJsYWNrOiAjMGEwYTBhICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNlZCBmb3Igd2hpdGUgdWkgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiR3aGl0ZTogI2ZlZmVmZSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGJvZHkuXG4vLy8gQHR5cGUgQ29sb3JcbiRib2R5LWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIFRleHQgY29sb3Igb2YgdGhlIGJvZHkuXG4vLy8gQHR5cGUgQ29sb3JcbiRib2R5LWZvbnQtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc3RhY2sgb2YgdGhlIGJvZHkuXG4vLy8gQHR5cGUgTGlzdFxuJGJvZHktZm9udC1mYW1pbHk6ICdIZWx2ZXRpY2EgTmV1ZScsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZiAhZGVmYXVsdDtcblxuLy8vIFNldCB0byBgdHJ1ZWAgdG8gZW5hYmxlIHNhZmUgcGFkZGluZyBvbiB0aGUgYm9keSBmb3Igbm9uLXJlY3Rhbmd1bGFyIGRldmljZXMgKGkuZS4gcGhvbmVzIHdpdGggbm90Y2hlcylcbi8vLyBAdHlwZSBCb29sZWFuXG4kYm9keS1zYWZlLXBhZGRpbmc6IGZhbHNlICFkZWZhdWx0O1xuXG4vLy8gU2V0IHRvIGB0cnVlYCB0byBlbmFibGUgYW50aWFsaWFzZWQgdHlwZSwgdXNpbmcgdGhlIGAtd2Via2l0LWZvbnQtc21vb3RoaW5nYCBhbmQgYC1tb3otb3N4LWZvbnQtc21vb3RoaW5nYCBDU1MgcHJvcGVydGllcy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kYm9keS1hbnRpYWxpYXNlZDogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBtYXJnaW4gb24gY29tcG9uZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtbWFyZ2luOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHZhbHVlIHVzZWQgZm9yIHBhZGRpbmcgb24gY29tcG9uZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtcGFkZGluZzogMXJlbSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBwb3NpdGlvbmluZyBvbiBjb21wb25lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1wb3NpdGlvbjogMXJlbSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCBmb250IHdlaWdodCB1c2VkIGZvciBub3JtYWwgdHlwZS5cbi8vLyBAdHlwZSBLZXl3b3JkIHwgTnVtYmVyXG4kZ2xvYmFsLXdlaWdodC1ub3JtYWw6IG5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCBmb250IHdlaWdodCB1c2VkIGZvciBib2xkIHR5cGUuXG4vLy8gQHR5cGUgS2V5d29yZCB8IE51bWJlclxuJGdsb2JhbC13ZWlnaHQtYm9sZDogYm9sZCAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBhbGwgZWxlbWVudHMgdGhhdCBoYXZlIGEgYm9yZGVyIHJhZGl1cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtcmFkaXVzOiAwICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHZhbHVlIHVzZWQgZm9yIGFsbCBtZW51IHN0eWxlcy4gQ2FuIGJlIG92ZXJ3cml0dGVuIGF0IGluZGl2aWR1YWwgbWVudSBjb21wb25lbnQgbGV2ZWwuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLW1lbnUtcGFkZGluZzogMC43cmVtIDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgdmFsdWUgdXNlZCBmb3IgYWxsIG1lbnUgc3R5bGVzLiBOZXN0ZWQgbWFyZ2luIGZvciBzdWJtZW51LlxuJGdsb2JhbC1tZW51LW5lc3RlZC1tYXJnaW46IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIHRoZSB0ZXh0IGRpcmVjdGlvbiBvZiB0aGUgQ1NTLiBDYW4gYmUgZWl0aGVyIGBsdHJgIG9yIGBydGxgLlxuLy8vIEB0eXBlIEtleXdvcmRcbiRnbG9iYWwtdGV4dC1kaXJlY3Rpb246IGx0ciAhZGVmYXVsdDtcblxuLy8vIEVuYWJsZXMgZmxleGJveCBmb3IgY29tcG9uZW50cyB0aGF0IHN1cHBvcnQgaXQuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGdsb2JhbC1mbGV4Ym94OiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gRW5hYmxlZCByZXNwb25zaXZlIGJyZWFrcG9pbnRzIGZvciBwcm90b3R5cGVzIGlmIGFwcGxpY2FibGVcbi8vLyBAdHlwZSBCb29sZWFuXG4kZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50czogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vLyBCdXR0b24gY3Vyc29yJ3MgdmFsdWUsIGBhdXRvYCBieSBkZWZhdWx0XG4vLy8gQHR5cGUgS2V5d29yZFxuJGdsb2JhbC1idXR0b24tY3Vyc29yOiBhdXRvICFkZWZhdWx0O1xuXG5AaWYgbm90IG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHByaW1hcnkpIHtcbiAgQGVycm9yICdJbiAkZm91bmRhdGlvbi1wYWxldHRlLCB5b3UgbXVzdCBoYXZlIGEgY29sb3IgbmFtZWQgXCJwcmltYXJ5XCIuJztcbn1cblxuLy8gSW50ZXJuYWwgdmFyaWFibGVzIHVzZWQgZm9yIHRleHQgZGlyZWN0aW9uXG4kZ2xvYmFsLWxlZnQ6IGlmKCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gcnRsLCByaWdodCwgbGVmdCk7XG4kZ2xvYmFsLXJpZ2h0OiBpZigkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09IHJ0bCwgbGVmdCwgcmlnaHQpO1xuXG4vLyBJbnRlcm5hbCB2YXJpYWJsZSB0aGF0IGNvbnRhaW5zIHRoZSBmbGV4IGp1c3RpZnlpbmcgb3B0aW9uc1xuJC16Zi1mbGV4LWp1c3RpZnk6IC16Zi1mbGV4LWp1c3RpZnkoJGdsb2JhbC10ZXh0LWRpcmVjdGlvbik7XG5cbi8vLyBHbG9iYWwgdG9sZXJhbmNlIGZvciBjb2xvciBwaWNrIGNvbnRyYXN0LlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1jb2xvci1waWNrLWNvbnRyYXN0LXRvbGVyYW5jZTogMCAhZGVmYXVsdDtcblxuLy8gSW50ZXJuYWwgdmFyaWFibGVzIHVzZWQgZm9yIGNvbG9yc1xuQGluY2x1ZGUgYWRkLWZvdW5kYXRpb24tY29sb3JzO1xuXG5AbWl4aW4gZm91bmRhdGlvbi1nbG9iYWwtc3R5bGVzIHtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1ub3JtYWxpemU7XG5cbiAgLy8gVGhlc2Ugc3R5bGVzIGFyZSBhcHBsaWVkIHRvIGEgPG1ldGE+IHRhZywgd2hpY2ggaXMgcmVhZCBieSB0aGUgRm91bmRhdGlvbiBKYXZhU2NyaXB0XG4gIC5mb3VuZGF0aW9uLW1xIHtcbiAgICBmb250LWZhbWlseTogJyN7LXpmLWJwLXNlcmlhbGl6ZSgkYnJlYWtwb2ludHMpfSc7XG4gIH1cblxuICBodG1sIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGZvbnQtc2l6ZTogJGdsb2JhbC1mb250LXNpemU7XG4gIH1cblxuICAvLyBTZXQgYm94LXNpemluZyBnbG9iYWxseSB0byBoYW5kbGUgcGFkZGluZyBhbmQgYm9yZGVyIHdpZHRoc1xuICAqLFxuICAqOjpiZWZvcmUsXG4gICo6OmFmdGVyIHtcbiAgICBib3gtc2l6aW5nOiBpbmhlcml0O1xuICB9XG5cbiAgLy8gRGVmYXVsdCBib2R5IHN0eWxlc1xuICBib2R5IHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgIEBpZiAoJGJvZHktc2FmZS1wYWRkaW5nKSB7XG4gICAgICAvLyB1c2luZyBlbnZpcm9ubWVudCB2YXJpYWJsZXMgdG8gYWNjb3VudCBmb3Igbm9uLXJlY3Rhbmd1bGFyIGRpc3BsYXlzIGUuZy4gcGhvbmVzIHdpdGggbm90Y2hlc1xuICAgICAgcGFkZGluZy10b3A6IGVudihzYWZlLWFyZWEtaW5zZXQtdG9wKTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IGVudihzYWZlLWFyZWEtaW5zZXQtcmlnaHQpO1xuICAgICAgcGFkZGluZy1ib3R0b206IGVudihzYWZlLWFyZWEtaW5zZXQtYm90dG9tKTtcbiAgICAgIHBhZGRpbmctbGVmdDogZW52KHNhZmUtYXJlYS1pbnNldC1sZWZ0KTtcbiAgICB9XG5cbiAgICBiYWNrZ3JvdW5kOiAkYm9keS1iYWNrZ3JvdW5kO1xuXG4gICAgZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5O1xuICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XG4gICAgbGluZS1oZWlnaHQ6ICRnbG9iYWwtbGluZWhlaWdodDtcbiAgICBjb2xvcjogJGJvZHktZm9udC1jb2xvcjtcblxuICAgIEBpZiAoJGJvZHktYW50aWFsaWFzZWQpIHtcbiAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkOyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXZlbmRvci1wcmVmaXhlc1xuICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby12ZW5kb3ItcHJlZml4ZXNcbiAgICB9XG4gIH1cblxuICBpbWcge1xuICAgIC8vIEdldCByaWQgb2YgZ2FwIHVuZGVyIGltYWdlcyBieSBtYWtpbmcgdGhlbSBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IGJ5IGRlZmF1bHRcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcblxuICAgIC8vIEdyaWQgZGVmYXVsdHMgdG8gZ2V0IGltYWdlcyBhbmQgZW1iZWRzIHRvIHdvcmsgcHJvcGVybHlcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIC1tcy1pbnRlcnBvbGF0aW9uLW1vZGU6IGJpY3ViaWM7XG4gIH1cblxuICAvLyBNYWtlIHN1cmUgdGV4dGFyZWEgdGFrZXMgb24gaGVpZ2h0IGF1dG9tYXRpY2FsbHlcbiAgdGV4dGFyZWEge1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtaW4taGVpZ2h0OiA1MHB4O1xuICAgIGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICB9XG5cbiAgLy8gTWFrZSBzZWxlY3QgZWxlbWVudHMgYXJlIDEwMCUgd2lkdGggYnkgZGVmYXVsdFxuICBzZWxlY3Qge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gIH1cblxuICAvLyBTdHlsZXMgR29vZ2xlIE1hcHMgYW5kIE1hcFF1ZXN0IGVtYmVkcyBwcm9wZXJseVxuICAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLWlkc1xuICAubWFwX2NhbnZhcyxcbiAgLm1xYS1kaXNwbGF5IHtcbiAgICBpbWcsXG4gICAgZW1iZWQsXG4gICAgb2JqZWN0IHtcbiAgICAgIG1heC13aWR0aDogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIC8vIFJlc2V0IDxidXR0b24+IHN0eWxlcyBjcmVhdGVkIGJ5IG1vc3QgYnJvd3NlcnNcbiAgYnV0dG9uIHtcbiAgICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG4gICAgcGFkZGluZzogMDtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgIGJvcmRlcjogMDtcbiAgICBib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBjdXJzb3I6ICRnbG9iYWwtYnV0dG9uLWN1cnNvcjtcbiAgfVxuXG4gIC8vIFByZXZlbnQgdGV4dCBvdmVyZmxvdyBvbiBwcmVcbiAgcHJlIHtcbiAgICBvdmVyZmxvdzogYXV0bztcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gIH1cblxuICAvLyBNYWtlIHJlc2V0IGluaGVyaXQgZm9udC1mYW1pbHkgaW5zdGVhZCBvZiBzZXR0aW5ncyBzYW5zLXNlcmlmXG4gIGJ1dHRvbixcbiAgaW5wdXQsXG4gIG9wdGdyb3VwLFxuICBzZWxlY3QsXG4gIHRleHRhcmVhIHtcbiAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIEludGVybmFsIGNsYXNzZXMgdG8gc2hvdy9oaWRlIGVsZW1lbnRzIGluIEphdmFTY3JpcHRcbiAgLmlzLXZpc2libGUge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuaXMtaGlkZGVuIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbiIsIlxuXG4kbGF5ZXItYm90dG9tOiAxMDA7XG4kbGF5ZXItbWlkZGxlOiA1MDA7XG4kbGF5ZXItaGlnaDogOTAwO1xuJGxheWVyLW1lbnU6IDEwMDA7XG4kbGF5ZXItdG9wOiAxMTAwO1xuXG4kZ2xvYmFsLWZvbnQtc2l6ZTogOTMuNzUlO1xuJGdsb2JhbC13ZWlnaHQtbGlnaHQ6IDMwMDtcbiRnbG9iYWwtd2VpZ2h0LW5vcm1hbDogNDAwO1xuJGdsb2JhbC13ZWlnaHQtYm9sZDogNjAwO1xuXG4kaGVhZGVyLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XG4kYm9keS1mb250LWZhbWlseTogXCJSYWxld2F5XCIsIFwiSGVsdmV0aWNhIE5ldWVcIiwgc2Fucy1zZXJpZjtcbiRoZWFkZXItZm9udC1mYW1pbHk6IFwiUmFsZXdheVwiLCBcIkhlbHZldGljYSBOZXVlXCIsIHNhbnMtc2VyaWY7XG4vLyAkaGVhZGVyLWZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseTtcbiRtb2Rlcm4tZm9udC1mYW1pbHk6IFwiQ29udGludXVtLUxpZ2h0XCIsIFwiSGVsdmV0aWNhIE5ldWVcIiwgc2Fucy1zZXJpZjtcbiRzbGFiLWZvbnQtZmFtaWx5OiBcIlJvYm90byBTbGFiXCIsIEdlb3JnaWEsIHNlcmlmO1xuJGJvZHktZm9udC1jb2xvcjogJGNvbG9yLWZvbnQ7XG5cbiRhbmNob3ItY29sb3I6ICRjb2xvci1wdXJwbGU7XG4kYW5jaG9yLWNvbG9yLWhvdmVyOiBzY2FsZS1jb2xvcigkYW5jaG9yLWNvbG9yLCAkbGlnaHRuZXNzOiAtMTQlKTtcblxuJG1vZGVybi1sZXR0ZXItc3BhY2luZzogMXB4O1xuXG4kYnJlYWtwb2ludHM6IChcbiAgc21hbGw6IDAsXG4gIG1lZGl1bTogNjQwcHgsXG4gIGxhcmdlOiAxMDI0cHgsXG4gIHhsYXJnZTogMTIwMHB4LFxuICB4eGxhcmdlOiAxNDQwcHgsXG4gIHh4eGxhcmdlOiAxNjAwcHgsXG4pO1xuXG4kaGVhZGVyLXN0eWxlczogKFxuICBzbWFsbDogKFxuICAgICdoMSc6ICgnZm9udC1zaXplJzogMjQpLFxuICAgICdoMic6ICgnZm9udC1zaXplJzogMjApLFxuICAgICdoMyc6ICgnZm9udC1zaXplJzogMTkpLFxuICAgICdoNCc6ICgnZm9udC1zaXplJzogMTgpLFxuICAgICdoNSc6ICgnZm9udC1zaXplJzogMTcpLFxuICAgICdoNic6ICgnZm9udC1zaXplJzogMTYpLFxuICApLFxuICBtZWRpdW06IChcbiAgICAnaDEnOiAoJ2ZvbnQtc2l6ZSc6IDM0KSxcbiAgICAnaDInOiAoJ2ZvbnQtc2l6ZSc6IDI4KSxcbiAgICAnaDMnOiAoJ2ZvbnQtc2l6ZSc6IDE4KSxcbiAgICAnaDQnOiAoJ2ZvbnQtc2l6ZSc6IDE2KSxcbiAgICAnaDUnOiAoJ2ZvbnQtc2l6ZSc6IDE0KSxcbiAgICAnaDYnOiAoJ2ZvbnQtc2l6ZSc6IDEyKSxcbiAgKSxcbik7XG5cblxuLy8gTEFZT1VUXG5cbiRncmlkLWdhcDogMzBweDtcbiRncmlkLWdhcC1oYWxmOiAxNXB4O1xuJGNvbnRhaW5lci13aWR0aDogMTIwMHB4O1xuXG4vLyA1My4gVGl0bGUgQmFyXG4vLyAtLS0tLS0tLS0tLS0tXG5cbiR0aXRsZWJhci1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kdGl0bGViYXItY29sb3I6ICRjb2xvci1mb250O1xuJHRpdGxlYmFyLXBhZGRpbmc6IDAuNXJlbTtcbiR0aXRsZWJhci10ZXh0LWZvbnQtd2VpZ2h0OiBib2xkO1xuJHRpdGxlYmFyLWljb24tY29sb3I6ICR3aGl0ZTtcbiR0aXRsZWJhci1pY29uLWNvbG9yLWhvdmVyOiAkbWVkaXVtLWdyYXk7XG4kdGl0bGViYXItaWNvbi1zcGFjaW5nOiAwLjI1cmVtO1xuXG4vLyA1NS4gVG9wIEJhclxuLy8gLS0tLS0tLS0tLS1cblxuJHRvcGJhci1wYWRkaW5nOiAwO1xuJHRvcGJhci1iYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiR0b3BiYXItc3VibWVudS1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kdG9wYmFyLXRpdGxlLXNwYWNpbmc6IDAuNXJlbSAxcmVtIDAuNXJlbSAwO1xuJHRvcGJhci1pbnB1dC13aWR0aDogMjAwcHg7XG4kdG9wYmFyLXVuc3RhY2stYnJlYWtwb2ludDogbGFyZ2U7XG5cbiRibG9ja3F1b3RlLWNvbG9yOiAkY29sb3ItcHVycGxlO1xuJGJsb2NrcXVvdGUtcGFkZGluZzogcmVtLWNhbGMoOSAyMCAwIDUwKTtcbiRibG9ja3F1b3RlLWJvcmRlcjogbm9uZTtcblxuXG4vLyA0Ny4gUmV2ZWFsXG4vLyAtLS0tLS0tLS0tXG5cbiRyZXZlYWwtYmFja2dyb3VuZDogJGNvbG9yLXB1cnBsZTtcbiRyZXZlYWwtd2lkdGg6IDkwMHB4O1xuJHJldmVhbC1tYXgtd2lkdGg6ICRnbG9iYWwtd2lkdGg7XG4kcmV2ZWFsLXBhZGRpbmc6ICRnbG9iYWwtcGFkZGluZztcbiRyZXZlYWwtYm9yZGVyOiBub25lO1xuJHJldmVhbC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJHJldmVhbC16aW5kZXg6IDk5OTk5OTk7XG4kcmV2ZWFsLW92ZXJsYXktYmFja2dyb3VuZDogcmdiYSgkY29sb3ItZ3JheSwgLjk1KTtcblxuXG4vLyAxNS4gQ2xvc2UgQnV0dG9uXG4vLyAtLS0tLS0tLS0tLS0tLS0tXG5cbiRjbG9zZWJ1dHRvbi1wb3NpdGlvbjogcmlnaHQgdG9wO1xuJGNsb3NlYnV0dG9uLW9mZnNldC1ob3Jpem9udGFsOiAoXG4gIHNtYWxsOiAwLjY2cmVtLFxuICBtZWRpdW06IDAsXG4pO1xuJGNsb3NlYnV0dG9uLW9mZnNldC12ZXJ0aWNhbDogKFxuICBzbWFsbDogMC4zM2VtLFxuICBtZWRpdW06IDAsXG4pO1xuJGNsb3NlYnV0dG9uLXNpemU6IChcbiAgc21hbGw6IDJlbSxcbiAgbWVkaXVtOiA0ZW0sXG4pO1xuJGNsb3NlYnV0dG9uLWxpbmVoZWlnaHQ6IC41O1xuJGNsb3NlYnV0dG9uLWNvbG9yOiAkd2hpdGU7XG4kY2xvc2VidXR0b24tY29sb3ItaG92ZXI6ICRibGFjaztcblxuLy8gMTcuIERyb3Bkb3duXG4vLyAtLS0tLS0tLS0tLS1cblxuJGRyb3Bkb3duLXBhZGRpbmc6IDFyZW07XG4kZHJvcGRvd24tYmFja2dyb3VuZDogJGJvZHktYmFja2dyb3VuZDtcbiRkcm9wZG93bi1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kZHJvcGRvd24tZm9udC1zaXplOiAxcmVtO1xuJGRyb3Bkb3duLXdpZHRoOiA0MDBweDtcbiRkcm9wZG93bi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJGRyb3Bkb3duLXNpemVzOiAoXG4gIHRpbnk6IDEwMHB4LFxuICBzbWFsbDogMjAwcHgsXG4gIGxhcmdlOiA0MDBweCxcbik7XG5cbi8vIDE4LiBEcm9wZG93biBNZW51XG4vLyAtLS0tLS0tLS0tLS0tLS0tLVxuXG4kZHJvcGRvd25tZW51LWFycm93czogdHJ1ZTtcbiRkcm9wZG93bm1lbnUtYXJyb3ctY29sb3I6ICRhbmNob3ItY29sb3I7XG4kZHJvcGRvd25tZW51LWFycm93LXNpemU6IDZweDtcbiRkcm9wZG93bm1lbnUtYXJyb3ctcGFkZGluZzogMS41cmVtO1xuJGRyb3Bkb3dubWVudS1taW4td2lkdGg6IDQwMHB4O1xuJGRyb3Bkb3dubWVudS1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kZHJvcGRvd25tZW51LXN1Ym1lbnUtYmFja2dyb3VuZDogJGRyb3Bkb3dubWVudS1iYWNrZ3JvdW5kO1xuJGRyb3Bkb3dubWVudS1wYWRkaW5nOiAuNXJlbSAxcmVtO1xuJGRyb3Bkb3dubWVudS1uZXN0ZWQtbWFyZ2luOiAwO1xuJGRyb3Bkb3dubWVudS1zdWJtZW51LXBhZGRpbmc6ICRkcm9wZG93bm1lbnUtcGFkZGluZztcbiRkcm9wZG93bm1lbnUtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuJGRyb3Bkb3duLW1lbnUtaXRlbS1jb2xvci1hY3RpdmU6ICRsaWdodC1ncmF5O1xuJGRyb3Bkb3duLW1lbnUtaXRlbS1iYWNrZ3JvdW5kLWFjdGl2ZTogdHJhbnNwYXJlbnQ7XG4iLCIvLyAgRm91bmRhdGlvblByZXNzIHNldHRpbmdzLlxuLy8gIEJhc2VkIG9uIEZvdW5kYXRpb24gZm9yIFNpdGVzIHY2LjQuM1xuLy8gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vL1xuLy8gIFRhYmxlIG9mIENvbnRlbnRzOlxuLy9cbi8vICAgMS4gR2xvYmFsXG4vLyAgIDIuIEJyZWFrcG9pbnRzXG4vLyAgIDMuIFRoZSBHcmlkXG4vLyAgIDQuIEJhc2UgVHlwb2dyYXBoeVxuLy8gICA1LiBUeXBvZ3JhcGh5IEhlbHBlcnNcbi8vICAgNi4gQWJpZGVcbi8vICAgNy4gQWNjb3JkaW9uXG4vLyAgIDguIEFjY29yZGlvbiBNZW51XG4vLyAgIDkuIEJhZGdlXG4vLyAgMTAuIEJyZWFkY3J1bWJzXG4vLyAgMTEuIEJ1dHRvblxuLy8gIDEyLiBCdXR0b24gR3JvdXBcbi8vICAxMy4gQ2FsbG91dFxuLy8gIDE0LiBDYXJkXG4vLyAgMTUuIENsb3NlIEJ1dHRvblxuLy8gIDE2LiBEcmlsbGRvd25cbi8vICAxNy4gRHJvcGRvd25cbi8vICAxOC4gRHJvcGRvd24gTWVudVxuLy8gIDE5LiBGbGV4Ym94IFV0aWxpdGllc1xuLy8gIDIwLiBGb3Jtc1xuLy8gIDIxLiBMYWJlbFxuLy8gIDIyLiBNZWRpYSBPYmplY3Rcbi8vICAyMy4gTWVudVxuLy8gIDI0LiBNZXRlclxuLy8gIDI1LiBPZmYtY2FudmFzXG4vLyAgMjYuIE9yYml0XG4vLyAgMjcuIFBhZ2luYXRpb25cbi8vICAyOC4gUHJvZ3Jlc3MgQmFyXG4vLyAgMjkuIFByb3RvdHlwZSBBcnJvd1xuLy8gIDMwLiBQcm90b3R5cGUgQm9yZGVyLUJveFxuLy8gIDMxLiBQcm90b3R5cGUgQm9yZGVyLU5vbmVcbi8vICAzMi4gUHJvdG90eXBlIEJvcmRlcmVkXG4vLyAgMzMuIFByb3RvdHlwZSBEaXNwbGF5XG4vLyAgMzQuIFByb3RvdHlwZSBGb250LVN0eWxpbmdcbi8vICAzNS4gUHJvdG90eXBlIExpc3QtU3R5bGUtVHlwZVxuLy8gIDM2LiBQcm90b3R5cGUgT3ZlcmZsb3dcbi8vICAzNy4gUHJvdG90eXBlIFBvc2l0aW9uXG4vLyAgMzguIFByb3RvdHlwZSBSb3VuZGVkXG4vLyAgMzkuIFByb3RvdHlwZSBTZXBhcmF0b3Jcbi8vICA0MC4gUHJvdG90eXBlIFNoYWRvd1xuLy8gIDQxLiBQcm90b3R5cGUgU2l6aW5nXG4vLyAgNDIuIFByb3RvdHlwZSBTcGFjaW5nXG4vLyAgNDMuIFByb3RvdHlwZSBUZXh0LURlY29yYXRpb25cbi8vICA0NC4gUHJvdG90eXBlIFRleHQtVHJhbnNmb3JtYXRpb25cbi8vICA0NS4gUHJvdG90eXBlIFRleHQtVXRpbGl0aWVzXG4vLyAgNDYuIFJlc3BvbnNpdmUgRW1iZWRcbi8vICA0Ny4gUmV2ZWFsXG4vLyAgNDguIFNsaWRlclxuLy8gIDQ5LiBTd2l0Y2hcbi8vICA1MC4gVGFibGVcbi8vICA1MS4gVGFic1xuLy8gIDUyLiBUaHVtYm5haWxcbi8vICA1My4gVGl0bGUgQmFyXG4vLyAgNTQuIFRvb2x0aXBcbi8vICA1NS4gVG9wIEJhclxuLy8gIDU2LiBYeSBHcmlkXG5cblxuLy8gMS4gR2xvYmFsXG4vLyAtLS0tLS0tLS1cblxuJGdsb2JhbC1mb250LXNpemU6IDEwMCU7XG4vLyAkZ2xvYmFsLXdpZHRoOiByZW0tY2FsYygxMjAwKTtcbi8vICRnbG9iYWwtd2lkdGg6IHJlbS1jYWxjKDE2MDApO1xuJGdsb2JhbC13aWR0aDogMTMwMHB4O1xuJGdsb2JhbC1saW5laGVpZ2h0OiAxLjU7XG4kZm91bmRhdGlvbi1wYWxldHRlOiAoXG4gICAgcHJpbWFyeTogIzE3NzliYSxcbiAgICBzZWNvbmRhcnk6ICM3Njc2NzYsXG4gICAgc3VjY2VzczogIzNhZGI3NixcbiAgICB3YXJuaW5nOiAjZmZhZTAwLFxuICAgIGFsZXJ0OiAjY2M0YjM3LFxuKTtcbiRsaWdodC1ncmF5OiAjZTZlNmU2O1xuJG1lZGl1bS1ncmF5OiAjY2FjYWNhO1xuJGRhcmstZ3JheTogIzhhOGE4YTtcbiRibGFjazogIzBhMGEwYTtcbiR3aGl0ZTogI2ZlZmVmZTtcbiRib2R5LWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRib2R5LWZvbnQtY29sb3I6ICRibGFjaztcbiRib2R5LWZvbnQtZmFtaWx5OiAtYXBwbGUtc3lzdGVtLCBCbGlua01hY1N5c3RlbUZvbnQsIFwiU2Vnb2UgVUlcIiwgXCJSb2JvdG9cIiwgXCJPeHlnZW5cIiwgXCJVYnVudHVcIiwgXCJDYW50YXJlbGxcIiwgXCJGaXJhIFNhbnNcIiwgXCJEcm9pZCBTYW5zXCIsIFwiSGVsdmV0aWNhIE5ldWVcIiwgc2Fucy1zZXJpZjtcbiRib2R5LWFudGlhbGlhc2VkOiB0cnVlO1xuJGdsb2JhbC1tYXJnaW46IDFyZW07XG4kZ2xvYmFsLXBhZGRpbmc6IDFyZW07XG4kZ2xvYmFsLXBvc2l0aW9uOiAxcmVtO1xuJGdsb2JhbC13ZWlnaHQtbGlnaHQ6IDMwMDtcbiRnbG9iYWwtd2VpZ2h0LW5vcm1hbDogbm9ybWFsO1xuJGdsb2JhbC13ZWlnaHQtYm9sZDogYm9sZDtcbiRnbG9iYWwtcmFkaXVzOiAwO1xuJGdsb2JhbC1tZW51LXBhZGRpbmc6IDAuN3JlbSAxcmVtO1xuJGdsb2JhbC1tZW51LW5lc3RlZC1tYXJnaW46IDFyZW07XG4kZ2xvYmFsLXRleHQtZGlyZWN0aW9uOiBsdHI7XG4kZ2xvYmFsLWZsZXhib3g6IHRydWU7XG4kZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50czogZmFsc2U7XG4kZ2xvYmFsLWJ1dHRvbi1jdXJzb3I6IGF1dG87XG4kZ2xvYmFsLWNvbG9yLXBpY2stY29udHJhc3QtdG9sZXJhbmNlOiAwO1xuJHByaW50LXRyYW5zcGFyZW50LWJhY2tncm91bmRzOiB0cnVlO1xuXG5AaW5jbHVkZSBhZGQtZm91bmRhdGlvbi1jb2xvcnM7XG5cbi8vIDIuIEJyZWFrcG9pbnRzXG4vLyAtLS0tLS0tLS0tLS0tLVxuXG4kYnJlYWtwb2ludHM6IChcbiAgICBzbWFsbDogMCxcbiAgICBtZWRpdW06IDY0MHB4LFxuICAgIGxhcmdlOiAxMDI0cHgsXG4gICAgeGxhcmdlOiAxMjAwcHgsXG4gICAgeHhsYXJnZTogMTQ0MHB4LFxuICAgIHh4eGxhcmdlOiAxNjAwcHgsXG4pO1xuJHByaW50LWJyZWFrcG9pbnQ6IGxhcmdlO1xuJGJyZWFrcG9pbnQtY2xhc3NlczogKHNtYWxsIG1lZGl1bSBsYXJnZSk7XG5cbi8vIDMuIFRoZSBHcmlkXG4vLyAtLS0tLS0tLS0tLVxuXG4kZ3JpZC1yb3ctd2lkdGg6ICRnbG9iYWwtd2lkdGg7XG4kZ3JpZC1jb2x1bW4tY291bnQ6IDEyO1xuJGdyaWQtY29sdW1uLWd1dHRlcjogKFxuICAgIHNtYWxsOiAyMHB4LFxuICAgIG1lZGl1bTogMzBweCxcbik7XG4kZ3JpZC1jb2x1bW4tYWxpZ24tZWRnZTogdHJ1ZTtcbiRncmlkLWNvbHVtbi1hbGlhczogJ2NvbHVtbnMnO1xuJGJsb2NrLWdyaWQtbWF4OiA4O1xuXG4vLyA0LiBCYXNlIFR5cG9ncmFwaHlcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kaGVhZGVyLWZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseTtcbiRoZWFkZXItZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWxpZ2h0O1xuJGhlYWRlci1mb250LXN0eWxlOiBub3JtYWw7XG4kZm9udC1mYW1pbHktbW9ub3NwYWNlOiBDb25zb2xhcywgJ0xpYmVyYXRpb24gTW9ubycsIENvdXJpZXIsIG1vbm9zcGFjZTtcbiRoZWFkZXItY29sb3I6IGluaGVyaXQ7XG4kaGVhZGVyLWxpbmVoZWlnaHQ6IDEuNDtcbiRoZWFkZXItbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuJGhlYWRlci1zdHlsZXM6IChcbiAgICBzbWFsbDogKFxuICAgICAgICAnaDEnOiAoJ2ZvbnQtc2l6ZSc6IDI0KSxcbiAgICAgICAgJ2gyJzogKCdmb250LXNpemUnOiAyMCksXG4gICAgICAgICdoMyc6ICgnZm9udC1zaXplJzogMTkpLFxuICAgICAgICAnaDQnOiAoJ2ZvbnQtc2l6ZSc6IDE4KSxcbiAgICAgICAgJ2g1JzogKCdmb250LXNpemUnOiAxNyksXG4gICAgICAgICdoNic6ICgnZm9udC1zaXplJzogMTYpLFxuICAgICksXG4gICAgbWVkaXVtOiAoXG4gICAgICAgICdoMSc6ICgnZm9udC1zaXplJzogNDgpLFxuICAgICAgICAnaDInOiAoJ2ZvbnQtc2l6ZSc6IDQwKSxcbiAgICAgICAgJ2gzJzogKCdmb250LXNpemUnOiAzMSksXG4gICAgICAgICdoNCc6ICgnZm9udC1zaXplJzogMjUpLFxuICAgICAgICAnaDUnOiAoJ2ZvbnQtc2l6ZSc6IDIwKSxcbiAgICAgICAgJ2g2JzogKCdmb250LXNpemUnOiAxNiksXG4gICAgKSxcbik7XG4kaGVhZGVyLXRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7XG4kc21hbGwtZm9udC1zaXplOiA4MCU7XG4kaGVhZGVyLXNtYWxsLWZvbnQtY29sb3I6ICRtZWRpdW0tZ3JheTtcbiRwYXJhZ3JhcGgtbGluZWhlaWdodDogMS42O1xuJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tOiAxcmVtO1xuJHBhcmFncmFwaC10ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5O1xuJGNvZGUtY29sb3I6ICRibGFjaztcbiRjb2RlLWZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktbW9ub3NwYWNlO1xuJGNvZGUtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcbiRjb2RlLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xuJGNvZGUtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuJGNvZGUtcGFkZGluZzogcmVtLWNhbGMoMiA1IDEpO1xuJGFuY2hvci1jb2xvcjogJHByaW1hcnktY29sb3I7XG4kYW5jaG9yLWNvbG9yLWhvdmVyOiBzY2FsZS1jb2xvcigkYW5jaG9yLWNvbG9yLCAkbGlnaHRuZXNzOiAtMTQlKTtcbiRhbmNob3ItdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuJGFuY2hvci10ZXh0LWRlY29yYXRpb24taG92ZXI6IG5vbmU7XG4kaHItd2lkdGg6ICRnbG9iYWwtd2lkdGg7XG4kaHItYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuJGhyLW1hcmdpbjogcmVtLWNhbGMoMjApIGF1dG87XG4kbGlzdC1saW5laGVpZ2h0OiAkcGFyYWdyYXBoLWxpbmVoZWlnaHQ7XG4kbGlzdC1tYXJnaW4tYm90dG9tOiAkcGFyYWdyYXBoLW1hcmdpbi1ib3R0b207XG4kbGlzdC1zdHlsZS10eXBlOiBkaXNjO1xuJGxpc3Qtc3R5bGUtcG9zaXRpb246IG91dHNpZGU7XG4kbGlzdC1zaWRlLW1hcmdpbjogMS4yNXJlbTtcbiRsaXN0LW5lc3RlZC1zaWRlLW1hcmdpbjogMS4yNXJlbTtcbiRkZWZubGlzdC1tYXJnaW4tYm90dG9tOiAxcmVtO1xuJGRlZm5saXN0LXRlcm0td2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuJGRlZm5saXN0LXRlcm0tbWFyZ2luLWJvdHRvbTogMC4zcmVtO1xuJGJsb2NrcXVvdGUtY29sb3I6ICRkYXJrLWdyYXk7XG4kYmxvY2txdW90ZS1wYWRkaW5nOiByZW0tY2FsYyg5IDIwIDAgMTkpO1xuJGJsb2NrcXVvdGUtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuJGNpdGUtZm9udC1zaXplOiByZW0tY2FsYygxMyk7XG4kY2l0ZS1jb2xvcjogJGRhcmstZ3JheTtcbiRjaXRlLXBzZXVkby1jb250ZW50OiAnXFwyMDE0IFxcMDAyMCc7XG4ka2V5c3Ryb2tlLWZvbnQ6ICRmb250LWZhbWlseS1tb25vc3BhY2U7XG4ka2V5c3Ryb2tlLWNvbG9yOiAkYmxhY2s7XG4ka2V5c3Ryb2tlLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xuJGtleXN0cm9rZS1wYWRkaW5nOiByZW0tY2FsYygyIDQgMCk7XG4ka2V5c3Ryb2tlLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kYWJici11bmRlcmxpbmU6IDFweCBkb3R0ZWQgJGJsYWNrO1xuXG4vLyA1LiBUeXBvZ3JhcGh5IEhlbHBlcnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kbGVhZC1mb250LXNpemU6ICRnbG9iYWwtZm9udC1zaXplICogMS4yNTtcbiRsZWFkLWxpbmVoZWlnaHQ6IDEuNjtcbiRzdWJoZWFkZXItbGluZWhlaWdodDogMS40O1xuJHN1YmhlYWRlci1jb2xvcjogJGRhcmstZ3JheTtcbiRzdWJoZWFkZXItZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcbiRzdWJoZWFkZXItbWFyZ2luLXRvcDogMC4ycmVtO1xuJHN1YmhlYWRlci1tYXJnaW4tYm90dG9tOiAwLjVyZW07XG4kc3RhdC1mb250LXNpemU6IDIuNXJlbTsiLCIkY29sb3ItZm9udDogIzQwNDQ0RDtcbiRjb2xvci1wdXJwbGU6ICM1RTIyNDY7XG4kY29sb3ItcHVycGxlLWxpZ2h0OiAjN2QyNjU5O1xuJGNvbG9yLW1hZ2VudGE6ICM5ZTFjNjI7XG4kY29sb3ItZ3JlZW46ICNCMkM5MEE7XG4kY29sb3ItZ3JlZW4taW50ZW5zZTogI0I2Q0MwMDtcbiRjb2xvci1ncmF5OiAjNkQ3NTg0O1xuJGNvbG9yLWdyYXktbGlnaHQ6ICNlOGU5ZWI7XG4kY29sb3ItZ3JheS1kYXJrOiAjMzIzMTMxO1xuJGNvbG9yLWdyZWVuLWJnOiAjZjRmNmU0O1xuJGNvbG9yLWdyYXktYmc6ICNmN2Y4Zjg7XG4kY29sb3ItZ3JheS1iZy1zZWNvbmQ6ICNlOGU5ZWM7XG4kY29sb3ItcHVycGxlLWJnOiAkY29sb3ItZ3JheS1saWdodDtcbi8vICRjb2xvci1wdXJwbGUtYmc6ICNmZGYwZjE7IC8vIHLDs3pzYXN6w61uXG4kY29sb3ItcHVycGxlLWJnLXNlY29uZDogI2VhZTFlNjtcbiRjb2xvci10YWJsZS1vZGQ6ICR3aGl0ZTtcbiRjb2xvci10YWJsZS1ldmVuOiAjZWFkYmUxO1xuJGNvbG9yLWFsZXJ0OiAjZDkwMDAwO1xuXG4kbWFkZW50YS1ncmF5OiAjNkQ3NTg0O1xuJGNvbG9yLWVzenRldGlrYS1mb250OiAjMmYzNjQzO1xuJGNvbG9yLWVzenRldGlrYS1ncmF5LWJnOiAjMzIzOTQ2O1xuXG4kY29sb3ItcHJpY2UtY2hlY2s6ICM4MDFmNTU7XG5cbiRjb2xvci1yZWQtbGlnaHQ6ICNFMzREMzQ7XG4kY29sb3ItcmVkLWZhZGU6ICNCRjNFMzE7XG4kY29sb3ItcmVkOiAjYjQxNDIxO1xuXG4kY29sb3ItbWFkZW50YS1ncmVlbi0xOiAjQjZDQzAwO1xuJGNvbG9yLW1hZGVudGEtZ3JlZW4tMjogI0E4QkMwRTtcbiRjb2xvci1tYWRlbnRhLWdyZWVuLTM6ICM5MEExMjQ7XG5cbiRjb2xvci1tYWRlbnRhLWdyYXktMTogIzZENzU4NDtcbiRjb2xvci1tYWRlbnRhLWdyYXktMjogI0E2QUJCNTtcbiRjb2xvci1tYWRlbnRhLWdyYXktMzogI0UwRTJFNTtcbiRjb2xvci1tYWRlbnRhLWdyYXktNDogI0Y0RjVGNztcblxuJGNvbG9yLW1hZGVudGEtZGFyay1ncmF5LTE6ICM0MDQ0NEQ7XG4kY29sb3ItbWFkZW50YS1kYXJrLWdyYXktMjogIzU3NUQ2ODtcblxuJGNvbG9yLW1hZGVudGEtbGlsYS0xOiAjNUUyMjQ2O1xuJGNvbG9yLW1hZGVudGEtbGlsYS0yOiAjN0UxRjU0O1xuJGNvbG9yLW1hZGVudGEtbGlsYS0zOiAjOUUxQzYyO1xuXG4kY29sb3ItbWFkZW50YS1tYWdlbnRhLTE6ICNFNTAwN0Q7XG4kY29sb3ItbWFkZW50YS1tYWdlbnRhLTI6ICNDQTBCNzI7XG5cbiRjb2xvci1tYWRlbnRhLXJlZC0xOiAjQjQzQzI4O1xuXG4kY29sb3ItYm9keS1mb250OiAkY29sb3ItbWFkZW50YS1kYXJrLWdyYXktMTsiLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZnVuY3Rpb25zXG4vLy8vXG5cbi8vIFBhdGNoIHRvIGZpeCBpc3N1ZSAjMTIwODBcbiQtemYtcGItdmFsdWU6IG51bGw7XG5cbi8vLyBDcmVhdGVzIGFuIGlubmVyIGJveC1zaGFkb3cgZm9yIG9ubHkgb25lIHNpZGVcbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpZGUgLSBTaWRlIHRoZSBzaGFkb3cgaXMgc3VwcG9zZWQgdG8gYXBwZWFyLiBDYW4gYmUgYHRvcGAsIGBsZWZ0YCwgYHJpZ2h0YCBvciBgYm90dG9tYC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHNpemUgLSBXaWR0aCBmb3IgdGhlIHRhcmdldCBzaWRlLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciAtIENvbG9yIG9mIHRoZSBzaGFkb3cuXG5AbWl4aW4gaW5uZXItc2lkZS1zaGFkb3coXG4gICRzaWRlOiBib3R0b20sXG4gICRzaXplOiAyMHB4LFxuICAkY29sb3I6IHJnYmEoJGJsYWNrLCAwLjI1KVxuKSB7XG5cbiAgJGhlbHBlcjogcm91bmQoJHNpemUgKiAwLjY1KTtcblxuICBAaWYgKCRzaWRlID09IHRvcCkge1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgJGhlbHBlciAkc2l6ZSAoLTEpKiRoZWxwZXIgJGNvbG9yO1xuICB9IEBlbHNlIGlmICgkc2lkZSA9PSBsZWZ0KSB7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgJGhlbHBlciAwICRzaXplICgtMSkqJGhlbHBlciAkY29sb3I7XG4gIH0gQGVsc2UgaWYgKCRzaWRlID09IHJpZ2h0KSB7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgKC0xKSokaGVscGVyIDAgJHNpemUgKC0xKSokaGVscGVyICRjb2xvcjtcbiAgfSBAZWxzZSBpZiAoJHNpZGUgPT0gYm90dG9tKSB7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAoLTEpKiRoZWxwZXIgJHNpemUgKC0xKSokaGVscGVyICRjb2xvcjtcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIENTUyB0cmlhbmdsZSwgd2hpY2ggY2FuIGJlIHVzZWQgZm9yIGRyb3Bkb3duIGFycm93cywgZHJvcGRvd24gcGlwcywgYW5kIG1vcmUuIFVzZSB0aGlzIG1peGluIGluc2lkZSBhIGAmOjpiZWZvcmVgIG9yIGAmOjphZnRlcmAgc2VsZWN0b3IsIHRvIGF0dGFjaCB0aGUgdHJpYW5nbGUgdG8gYW4gZXhpc3RpbmcgZWxlbWVudC5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkdHJpYW5nbGUtc2l6ZSAtIFdpZHRoIG9mIHRoZSB0cmlhbmdsZS5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkdHJpYW5nbGUtY29sb3IgLSBDb2xvciBvZiB0aGUgdHJpYW5nbGUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkdHJpYW5nbGUtZGlyZWN0aW9uIC0gRGlyZWN0aW9uIHRoZSB0cmlhbmdsZSBwb2ludHMuIENhbiBiZSBgdXBgLCBgcmlnaHRgLCBgZG93bmAsIG9yIGBsZWZ0YC5cbkBtaXhpbiBjc3MtdHJpYW5nbGUoXG4gICR0cmlhbmdsZS1zaXplLFxuICAkdHJpYW5nbGUtY29sb3IsXG4gICR0cmlhbmdsZS1kaXJlY3Rpb25cbikge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcblxuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItd2lkdGg6ICR0cmlhbmdsZS1zaXplO1xuXG4gIGNvbnRlbnQ6ICcnO1xuXG4gIEBpZiAoJHRyaWFuZ2xlLWRpcmVjdGlvbiA9PSBkb3duKSB7XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICBib3JkZXItY29sb3I6ICR0cmlhbmdsZS1jb2xvciB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgfVxuICBAaWYgKCR0cmlhbmdsZS1kaXJlY3Rpb24gPT0gdXApIHtcbiAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgJHRyaWFuZ2xlLWNvbG9yO1xuICB9XG4gIEBpZiAoJHRyaWFuZ2xlLWRpcmVjdGlvbiA9PSByaWdodCkge1xuICAgIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICR0cmlhbmdsZS1jb2xvcjtcbiAgfVxuICBAaWYgKCR0cmlhbmdsZS1kaXJlY3Rpb24gPT0gbGVmdCkge1xuICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgJHRyaWFuZ2xlLWNvbG9yIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICB9XG59XG5cbi8vLyBDcmVhdGVzIGEgbWVudSBpY29uIHdpdGggYSBzZXQgd2lkdGgsIGhlaWdodCwgbnVtYmVyIG9mIGJhcnMsIGFuZCBjb2xvcnMuIFRoZSBtaXhpbiB1c2VzIHRoZSBoZWlnaHQgb2YgdGhlIGljb24gYW5kIHRoZSB3ZWlnaHQgb2YgdGhlIGJhcnMgdG8gZGV0ZXJtaW5lIHNwYWNpbmcuIDxkaXYgY2xhc3M9XCJkb2NzLWV4YW1wbGUtYnVyZ2VyXCI+PC9kaXY+XG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgWyRibGFja10gLSBDb2xvciB0byB1c2UgZm9yIHRoZSBpY29uLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvci1ob3ZlciBbJGRhcmstZ3JheV0gLSBDb2xvciB0byB1c2Ugd2hlbiB0aGUgaWNvbiBpcyBob3ZlcmVkIG92ZXIuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR3aWR0aCBbMjBweF0gLSBXaWR0aCBvZiB0aGUgaWNvbi5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGhlaWdodCBbMTZweF0gLSBIZWlnaHQgb2YgdGhlIGljb24uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR3ZWlnaHQgWzJweF0gLSBIZWlnaHQgb2YgaW5kaXZpZHVhbCBiYXJzIGluIHRoZSBpY29uLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFycyBbM10gLSBOdW1iZXIgb2YgYmFycyBpbiB0aGUgaWNvbi5cbkBtaXhpbiBoYW1idXJnZXIoXG4gICRjb2xvcjogJGJsYWNrLFxuICAkY29sb3ItaG92ZXI6ICRkYXJrLWdyYXksXG4gICR3aWR0aDogMjBweCxcbiAgJGhlaWdodDogMTZweCxcbiAgJHdlaWdodDogMnB4LFxuICAkYmFyczogM1xuKSB7XG4gIC8vIGJveC1zaGFkb3cgQ1NTIG91dHB1dFxuICAkc2hhZG93OiAoKTtcbiAgJGhvdmVyLXNoYWRvdzogKCk7XG5cbiAgLy8gU3BhY2luZyBiZXR3ZWVuIGJhcnMgaXMgY2FsY3VsYXRlZCBiYXNlZCBvbiB0aGUgdG90YWwgaGVpZ2h0IG9mIHRoZSBpY29uIGFuZCB0aGUgd2VpZ2h0IG9mIGVhY2ggYmFyXG4gICRzcGFjaW5nOiBkaXZpZGUoJGhlaWdodCAtICgkd2VpZ2h0ICogJGJhcnMpLCAkYmFycyAtIDEpO1xuXG4gIEBpZiB1bml0KCRzcGFjaW5nKSA9PSAncHgnIHtcbiAgICAkc3BhY2luZzogZmxvb3IoJHNwYWNpbmcpO1xuICB9XG5cbiAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCAkYmFycyB7XG4gICAgJG9mZnNldDogKCR3ZWlnaHQgKyAkc3BhY2luZykgKiAoJGkgLSAxKTtcbiAgICAkc2hhZG93OiBhcHBlbmQoJHNoYWRvdywgMCAkb2Zmc2V0IDAgJGNvbG9yLCBjb21tYSk7XG4gIH1cblxuICAvLyBJY29uIGNvbnRhaW5lclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgd2lkdGg6ICR3aWR0aDtcbiAgaGVpZ2h0OiAkaGVpZ2h0O1xuICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgLy8gSWNvbiBiYXJzXG4gICY6OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG5cbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6ICR3ZWlnaHQ7XG5cbiAgICBiYWNrZ3JvdW5kOiAkY29sb3I7XG4gICAgYm94LXNoYWRvdzogJHNoYWRvdztcblxuICAgIGNvbnRlbnQ6ICcnO1xuICB9XG5cbiAgLy8gSG92ZXIgc3RhdGVcbiAgQGlmICRjb2xvci1ob3ZlciB7XG4gICAgLy8gR2VuZXJhdGUgQ1NTXG4gICAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCAkYmFycyB7XG4gICAgICAkb2Zmc2V0OiAoJHdlaWdodCArICRzcGFjaW5nKSAqICgkaSAtIDEpO1xuICAgICAgJGhvdmVyLXNoYWRvdzogYXBwZW5kKCRob3Zlci1zaGFkb3csIDAgJG9mZnNldCAwICRjb2xvci1ob3ZlciwgY29tbWEpO1xuICAgIH1cblxuICAgICY6aG92ZXI6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1ob3ZlcjtcbiAgICAgIGJveC1zaGFkb3c6ICRob3Zlci1zaGFkb3c7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIGEgZG93bndhcmQtZmFjaW5nIHRyaWFuZ2xlIGFzIGEgYmFja2dyb3VuZCBpbWFnZSB0byBhbiBlbGVtZW50LiBUaGUgaW1hZ2UgaXMgZm9ybWF0dGVkIGFzIGFuIFNWRywgbWFraW5nIGl0IGVhc3kgdG8gY2hhbmdlIHRoZSBjb2xvci4gQmVjYXVzZSBJbnRlcm5ldCBFeHBsb3JlciBkb2Vzbid0IHN1cHBvcnQgZW5jb2RlZCBTVkdzIGFzIGJhY2tncm91bmQgaW1hZ2VzLCBhIFBORyBmYWxsYmFjayBpcyBhbHNvIGluY2x1ZGVkLlxuLy8vIFRoZXJlIGFyZSB0d28gUE5HIGZhbGxiYWNrczogYSBibGFjayB0cmlhbmdsZSBhbmQgYSB3aGl0ZSB0cmlhbmdsZS4gVGhlIG9uZSB1c2VkIGRlcGVuZHMgb24gdGhlIGxpZ2h0bmVzcyBvZiB0aGUgaW5wdXQgY29sb3IuXG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgWyRibGFja10gLSBDb2xvciB0byB1c2UgZm9yIHRoZSB0cmlhbmdsZS5cbkBtaXhpbiBiYWNrZ3JvdW5kLXRyaWFuZ2xlKCRjb2xvcjogJGJsYWNrKSB7XG4gICRyZ2I6ICdyZ2IlMjgje3JvdW5kKHJlZCgkY29sb3IpKX0sICN7cm91bmQoZ3JlZW4oJGNvbG9yKSl9LCAje3JvdW5kKGJsdWUoJGNvbG9yKSl9JTI5JztcblxuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbDt1dGY4LDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZlcnNpb249XCIxLjFcIiB3aWR0aD1cIjMyXCIgaGVpZ2h0PVwiMjRcIiB2aWV3Qm94PVwiMCAwIDMyIDI0XCI+PHBvbHlnb24gcG9pbnRzPVwiMCwwIDMyLDAgMTYsMjRcIiBzdHlsZT1cImZpbGw6ICN7JHJnYn1cIj48L3BvbHlnb24+PC9zdmc+Jyk7XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMFxcMCkge1xuICAgIEBpZiBsaWdodG5lc3MoJGNvbG9yKSA8IDYwJSB7XG4gICAgICAvLyBXaGl0ZSB0cmlhbmdsZVxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUNBQUFBQVlDQVlBQUFDYlUvODBBQUFBR1hSRldIUlRiMlowZDJGeVpRQkJaRzlpWlNCSmJXRm5aVkpsWVdSNWNjbGxQQUFBQUlwSlJFRlVlTnJFa2NrTmdEQU1CQmZSa0V0ME9iUkJCZHNHWFVEZ21RZks0WGhIMm04Y3pRQUF5MjdSM3RzdzRRZmUyeDh1T082b1lMYjZHbE9vcjNHRitzd1VSQU9tVUorUnd0RUpzOVd2VEdFWXhCWHFJMU1RQVpoQ2ZVUUtSekRNVmorVHdyQUlWNmp2U1VFa1lBcjFMU2tjeVRCYi9WK0tZZlg3eEFldXNxM3NMRHRHSDNrRUdBQ1BXSWZsTlpmaFJRQUFBQUJKUlU1RXJrSmdnZz09Jyk7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIC8vIEJsYWNrIHRyaWFuZ2xlXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQ0FBQUFBWUNBWUFBQUNiVS84MEFBQUFHWFJGV0hSVGIyWjBkMkZ5WlFCQlpHOWlaU0JKYldGblpWSmxZV1I1Y2NsbFBBQUFBTUJKUkVGVWVOckVsbHNPaENBTVJWc3pDOUlselU3S0NtVkhUSnNvTVdZTVV0cHl2OUJnYnVYUUI1WlNkZ0JZWVk0eWNnQml2azhLWUZzUU1mTWlUVEJQNG8zblV6Q0t6T2FiTEpiTHkyL2czMWV2R2tBZ2luUjQvWmVnS0g1cVgzYkpDc2NBM3QweDNrZ081dFFGeWhoRmY1MHhScUZMYnlNVU5KUXpneWpHUy93Z0Nwdktxa1JCcHVXckU0VjlkKzFFNGRQVVhxSWcxMDdTUU9FLzJEUlF4TXdURHlnSUluVkRFVDlUM2xDb2ovNmovVkNtR2paT2wybEtwWjhBQXdEUVA3eklpbURHRlFBQUFBQkpSVTVFcmtKZ2dnPT0nKTtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFwcGxpZXMgdGhlIG1pY3JvIGNsZWFyZml4IGhhY2sgcG9wdWxhcml6ZWQgYnkgTmljb2xhcyBHYWxsYWdoZXIuIEluY2x1ZGUgdGhpcyBtaXhpbiBvbiBhIGNvbnRhaW5lciBpZiBpdHMgY2hpbGRyZW4gYXJlIGFsbCBmbG9hdGVkLCB0byBnaXZlIHRoZSBjb250YWluZXIgYSBwcm9wZXIgaGVpZ2h0LlxuLy8vIFRoZSBjbGVhcmZpeCBpcyBhdWdtZW50ZWQgd2l0aCBzcGVjaWZpYyBzdHlsZXMgdG8gcHJldmVudCBib3JkZXJzIGluIGZsZXhib3ggZW52aXJvbm1lbnRzXG4vLy8gQGxpbmsgaHR0cDovL25pY29sYXNnYWxsYWdoZXIuY29tL21pY3JvLWNsZWFyZml4LWhhY2svIE1pY3JvIENsZWFyZml4IEhhY2tcbi8vLyBAbGluayBodHRwOi8vZGFuaXNhZGVzaWduZXIuY29tL2Jsb2cvZmxleGJveC1jbGVhci1maXgtcHNldWRvLWVsZW1lbnRzLyBGbGV4Ym94IGZpeFxuQG1peGluIGNsZWFyZml4IHtcbiAgJjo6YmVmb3JlLFxuICAmOjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY29udGVudDogJyAnO1xuXG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBmbGV4LWJhc2lzOiAwO1xuICAgICAgb3JkZXI6IDE7XG4gICAgfVxuICB9XG5cbiAgJjo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG59XG5cbi8vLyBBZGRzIENTUyBmb3IgYSBcInF1YW50aXR5IHF1ZXJ5XCIgc2VsZWN0b3IgdGhhdCBhdXRvbWF0aWNhbGx5IHNpemVzIGVsZW1lbnRzIGJhc2VkIG9uIGhvdyBtYW55IHRoZXJlIGFyZSBpbnNpZGUgYSBjb250YWluZXIuXG4vLy8gQGxpbmsgaHR0cDovL2FsaXN0YXBhcnQuY29tL2FydGljbGUvcXVhbnRpdHktcXVlcmllcy1mb3ItY3NzIFF1YW50aXR5IFF1ZXJpZXMgZm9yIENTU1xuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRtYXggLSBNYXhpbXVtIG51bWJlciBvZiBpdGVtcyB0byBkZXRlY3QuIFRoZSBoaWdoZXIgdGhpcyBudW1iZXIgaXMsIHRoZSBtb3JlIENTUyB0aGF0J3MgcmVxdWlyZWQgdG8gY292ZXIgZWFjaCBudW1iZXIgb2YgaXRlbXMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZWxlbSBbbGldIC0gVGFnIHRvIHVzZSBmb3Igc2libGluZyBzZWxlY3RvcnMuXG5AbWl4aW4gYXV0by13aWR0aCgkbWF4LCAkZWxlbTogbGkpIHtcbiAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCAkbWF4IHtcbiAgICAmOm50aC1sYXN0LWNoaWxkKCN7JGl9KTpmaXJzdC1jaGlsZCxcbiAgICAmOm50aC1sYXN0LWNoaWxkKCN7JGl9KTpmaXJzdC1jaGlsZCB+ICN7JGVsZW19IHtcbiAgICAgIHdpZHRoOiBwZXJjZW50YWdlKGRpdmlkZSgxLCAkaSkpO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gUmVtb3ZlcyB0aGUgZm9jdXMgcmluZyBhcm91bmQgYW4gZWxlbWVudCB3aGVuIGEgbW91c2UgaW5wdXQgaXMgZGV0ZWN0ZWQuXG5AbWl4aW4gZGlzYWJsZS1tb3VzZS1vdXRsaW5lIHtcbiAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddICYge1xuICAgIG91dGxpbmU6IDA7XG4gIH1cbn1cblxuLy8vIE1ha2VzIGFuIGVsZW1lbnQgdmlzdWFsbHkgaGlkZGVuLCBidXQgc3RpbGwgYWNjZXNzaWJsZSB0byBrZXlib2FyZHMgYW5kIGFzc2lzdGl2ZSBkZXZpY2VzLlxuLy8vIEBsaW5rIGh0dHA6Ly9zbm9vay5jYS9hcmNoaXZlcy9odG1sX2FuZF9jc3MvaGlkaW5nLWNvbnRlbnQtZm9yLWFjY2Vzc2liaWxpdHkgSGlkaW5nIENvbnRlbnQgZm9yIEFjY2Vzc2liaWxpdHlcbi8vLyBAbGluayBodHRwOi8vaHVnb2dpcmF1ZGVsLmNvbS8yMDE2LzEwLzEzL2Nzcy1oaWRlLWFuZC1zZWVrL1xuLy8vXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkZW5mb3JjZSAtIElmIGB0cnVlYCwgdXNlIGAhaW1wb3J0YW50YCBvbiBhcHBsaWVkIHByb3BlcnRpZXNcbkBtaXhpbiBlbGVtZW50LWludmlzaWJsZShcbiAgJGVuZm9yY2U6IHRydWVcbikge1xuICAkaW1wb3J0YW50OiBpZigkZW5mb3JjZSwgJyFpbXBvcnRhbnQnLCBudWxsKTtcblxuICBwb3NpdGlvbjogYWJzb2x1dGUgI3skaW1wb3J0YW50fTtcbiAgd2lkdGg6IDFweCAjeyRpbXBvcnRhbnR9O1xuICBoZWlnaHQ6IDFweCAjeyRpbXBvcnRhbnR9O1xuICBwYWRkaW5nOiAwICN7JGltcG9ydGFudH07XG4gIG92ZXJmbG93OiBoaWRkZW4gI3skaW1wb3J0YW50fTtcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKSAjeyRpbXBvcnRhbnR9O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwICN7JGltcG9ydGFudH07XG4gIGJvcmRlcjogMCAjeyRpbXBvcnRhbnR9O1xufVxuXG4vLy8gUmV2ZXJzZXMgdGhlIENTUyBvdXRwdXQgY3JlYXRlZCBieSB0aGUgYGVsZW1lbnQtaW52aXNpYmxlKClgIG1peGluLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGVuZm9yY2UgLSBJZiBgdHJ1ZWAsIHVzZSBgIWltcG9ydGFudGAgb24gYXBwbGllZCBwcm9wZXJ0aWVzXG5AbWl4aW4gZWxlbWVudC1pbnZpc2libGUtb2ZmKFxuICAkZW5mb3JjZTogdHJ1ZVxuKSB7XG4gICRpbXBvcnRhbnQ6IGlmKCRlbmZvcmNlLCAnIWltcG9ydGFudCcsIG51bGwpO1xuXG4gIHBvc2l0aW9uOiBzdGF0aWMgI3skaW1wb3J0YW50fTtcbiAgd2lkdGg6IGF1dG8gI3skaW1wb3J0YW50fTtcbiAgaGVpZ2h0OiBhdXRvICN7JGltcG9ydGFudH07XG4gIG92ZXJmbG93OiB2aXNpYmxlICN7JGltcG9ydGFudH07XG4gIGNsaXA6IGF1dG8gI3skaW1wb3J0YW50fTtcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbCAjeyRpbXBvcnRhbnR9O1xufVxuXG4vLy8gVmVydGljYWxseSBjZW50ZXJzIHRoZSBlbGVtZW50IGluc2lkZSBvZiBpdHMgZmlyc3Qgbm9uLXN0YXRpYyBwYXJlbnQsXG4vLy8gQGxpbmsgaHR0cDovL3d3dy5zaXRlcG9pbnQuY29tL2NlbnRlcmluZy13aXRoLXNhc3MvIENlbnRlcmluZyBXaXRoIFNhc3NcbkBtaXhpbiB2ZXJ0aWNhbC1jZW50ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG59XG5cbi8vLyBIb3Jpem9udGFsbHkgY2VudGVycyB0aGUgZWxlbWVudCBpbnNpZGUgb2YgaXRzIGZpcnN0IG5vbi1zdGF0aWMgcGFyZW50LFxuLy8vIEBsaW5rIGh0dHA6Ly93d3cuc2l0ZXBvaW50LmNvbS9jZW50ZXJpbmctd2l0aC1zYXNzLyBDZW50ZXJpbmcgV2l0aCBTYXNzXG5AbWl4aW4gaG9yaXpvbnRhbC1jZW50ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xufVxuXG4vLy8gQWJzb2x1dGVseSBjZW50ZXJzIHRoZSBlbGVtZW50IGluc2lkZSBvZiBpdHMgZmlyc3Qgbm9uLXN0YXRpYyBwYXJlbnQsXG4vLy8gQGxpbmsgaHR0cDovL3d3dy5zaXRlcG9pbnQuY29tL2NlbnRlcmluZy13aXRoLXNhc3MvIENlbnRlcmluZyBXaXRoIFNhc3NcbkBtaXhpbiBhYnNvbHV0ZS1jZW50ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xufVxuXG4vLy8gSXRlcmF0ZXMgdGhyb3VnaCBicmVha3BvaW50cyBkZWZpbmVkIGluIGAkYnJlYWtwb2ludC1jbGFzc2VzYCBhbmQgcHJpbnRzIHRoZSBDU1MgaW5zaWRlIHRoZSBtaXhpbiBhdCBlYWNoIGJyZWFrcG9pbnQncyBtZWRpYSBxdWVyeS4gVXNlIHRoaXMgd2l0aCB0aGUgZ3JpZCwgb3IgYW55IG90aGVyIGNvbXBvbmVudCB0aGF0IGhhcyByZXNwb25zaXZlIGNsYXNzZXMuXG4vLy9cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRzbWFsbCBbdHJ1ZV0gLSBJZiBgZmFsc2VgLCB0aGUgbWl4aW4gd2lsbCBza2lwIHRoZSBgc21hbGxgIGJyZWFrcG9pbnQuIFVzZSB0aGlzIHdpdGggY29tcG9uZW50cyB0aGF0IGRvbid0IHByZWZpeCBjbGFzc2VzIHdpdGggYHNtYWxsLWAsIG9ubHkgYG1lZGl1bS1gIGFuZCB1cC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRhdXRvLWluc2VydC1icmVha3BvaW50cyBbdHJ1ZV0gLSBJZiBgZmFsc2VgLCB0aGUgbWl4aW4gd2lsbCBpdGVyYXRlIG92ZXIgYnJlYWtwb2ludHMgd2l0aG91dCBkb2luZyB0aGUgbWVkaWEgcXVlcnkgaXRzZWxmLiBVc2VmdWwgZm9yIG1vcmUgY29tcGxleCBtZWRpYSBxdWVyeSBnZW5lcmF0aW9uIGFzIGluIHRoZSBtYXJnaW4gZ3JpZC5cbkBtaXhpbiAtemYtZWFjaC1icmVha3BvaW50KFxuICAkc21hbGw6IHRydWUsXG4gICRhdXRvLWluc2VydC1icmVha3BvaW50czogdHJ1ZVxuKSB7XG4gIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQtaW4oYXV0bywgLXpmLWJvb2woJHNtYWxsKSwgLXpmLWJvb2woJGF1dG8taW5zZXJ0LWJyZWFrcG9pbnRzKSkge1xuICAgIEBjb250ZW50XG4gIH07XG59XG5cbi8vLyBJdGVyYXRlcyB3aXRoIGBAY29udGVudGAgdGhyb3VnaCB0aGUgZ2l2ZW4gbGlzdCBvZiBicmVha3BvaW50cyBgJGJyZWFrcG9pbnRzYC5cbi8vL1xuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfExpc3R9ICRicmVha3BvaW50cyBbYXV0b10gLSBCcmVha3BvaW50cyB0byBpdGVyYXRlcyBvbi4gSXQgY2FuIGJlIGEgYnJlYWtwb2ludCBuYW1lLCBsaXN0IG9mIGJyZWFrcG9pbnRzIG9yIGBhdXRvYCBmb3IgYWxsIGJyZWFrcG9pbnRzLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbnxOdWxsfSAkemVyby1icmVha3BvaW50IFtudWxsXSAtIFdoZXRoZXIgdGhlIHplcm8tYnJlYWtwb2ludCAob2Z0ZW4gYHNtYWxsYCkgbXVzdCBiZSBpbmNsdWRlZC4gSWYgYHRydWVgLCBpdCB3aWxsIGFsd2F5cyBiZSBhZGRlZCB0byB0aGUgbGlzdCBpZiBub3QgYWxyZWFkeSB0aGVyZS4gSWYgYGZhbHNlYCwgaXQgd2lsbCBhbHdheXMgYmUgcmVtb3ZlZC4gRG9lcyBub3RoaW5nIGJ5IGRlZmF1bHQuXG4vLy8gQHBhcmFtIHtCb29sZWFufEtleXdvcmR9ICRtZWRpYS1xdWVyaWVzIFt0cnVlXSAtIFdoZXRoZXIgbWVkaWEtcXVlcmllcyBtdXN0IGJlIGdlbmVyYXRlZC4gSWYgYGZvci1saXN0c2AsIG9ubHkgZ2VuZXJhdGUgbWVkaWEtcXVlcmllcyB3aGVuIGAkYnJlYWtwb2ludHNgIGlzIGEgbGlzdC5cbkBtaXhpbiAtemYtZWFjaC1icmVha3BvaW50LWluKFxuICAkYnJlYWtwb2ludHM6IGF1dG8sXG4gICR6ZXJvLWJyZWFrcG9pbnQ6IG51bGwsXG4gICRtZWRpYS1xdWVyaWVzOiB0cnVlXG4pIHtcbiAgJC1saXN0OiAoKTtcbiAgJC1icmVha3BvaW50cy1pcy1hLWxpc3Q6IHRydWU7XG5cbiAgLy8gUmV0cmlldmUgdGhlIGxpc3Qgb2YgYnJlYWtwb2ludChzKSB0byBpdGVyYXRlIG9uLlxuICBAaWYgJGJyZWFrcG9pbnRzID09IGF1dG8ge1xuICAgICQtbGlzdDogJGJyZWFrcG9pbnQtY2xhc3NlcztcbiAgfVxuICBAZWxzZSBpZiB0eXBlLW9mKCRicmVha3BvaW50cykgPT0gJ2xpc3QnIHtcbiAgICAkLWxpc3Q6ICRicmVha3BvaW50cztcbiAgfVxuICBAZWxzZSBpZiB0eXBlLW9mKCRicmVha3BvaW50cykgPT0gJ3N0cmluZycge1xuICAgICQtbGlzdDogKCRicmVha3BvaW50cyk7XG4gICAgJC1icmVha3BvaW50cy1pcy1hLWxpc3Q6IGZhbHNlO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAZXJyb3IgJ1dyb25nIHN5bnRheCBmb3IgXCIkYnJlYWtwb2ludHNcIiBpbiBcIi16Zi1lYWNoLWJyZWFrcG9pbnQtaW4oKVwiLiBHb3QgXCIjeyRicmVha3BvaW50c31cIiAoI3t0eXBlLW9mKCRicmVha3BvaW50cyl9KS4gRXhwZWN0ZWQgYSBicmVha3BvaW50IG5hbWUsIGEgbGlzdCBvZiBicmVha3BvaW50cyBvciBcImF1dG9cIic7XG4gIH1cblxuICAvLyBBZGQgb3IgcmVtb3ZlIHRoZSB6ZXJvIGJyZWFrcG9pbnQgYWNjb3JkaW5nIHRvIGAkemVyby1icmVha3BvaW50YFxuICBAaWYgJHplcm8tYnJlYWtwb2ludCA9PSB0cnVlIHtcbiAgICAkLWxpc3Q6IGpvaW4oKCQtemYtemVyby1icmVha3BvaW50KSwgc2wtcmVtb3ZlKCQtbGlzdCwgJC16Zi16ZXJvLWJyZWFrcG9pbnQpKTtcbiAgfVxuICBAZWxzZSBpZiAkemVyby1icmVha3BvaW50ID09IGZhbHNlIHtcbiAgICAkLWxpc3Q6IHNsLXJlbW92ZSgkLWxpc3QsICQtemYtemVyby1icmVha3BvaW50KTtcbiAgfVxuXG4gIC8vIEl0ZXJhdGUgb24gYnJlYWtwb2ludChzKVxuICBAZWFjaCAkYnAgaW4gJC1saXN0IHtcbiAgICAkb2xkLXpmLXNpemU6IG51bGw7XG4gICAgQGlmIGdsb2JhbC12YXJpYWJsZS1leGlzdHMoLXpmLXNpemUpIHtcbiAgICAgICRvbGQtemYtc2l6ZTogJC16Zi1zaXplO1xuICAgIH1cbiAgICAkLXpmLXNpemU6ICRicCAhZ2xvYmFsO1xuXG4gICAgQGlmICgkbWVkaWEtcXVlcmllcyA9PSB0cnVlIG9yICgkbWVkaWEtcXVlcmllcyA9PSAnZm9yLWxpc3RzJyBhbmQgJC1icmVha3BvaW50cy1pcy1hLWxpc3QpKSB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicCkge1xuICAgICAgICBAY29udGVudDtcbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuXG4gICAgJC16Zi1zaXplOiAkb2xkLXpmLXNpemUgIWdsb2JhbDtcbiAgfVxufVxuXG4vLy8gR2VuZXJhdGUgdGhlIGBAY29udGVudGAgcGFzc2VkIHRvIHRoZSBtaXhpbiB3aXRoIGEgdmFsdWUgYCQtemYtYnAtdmFsdWVgIHJlbGF0ZWQgdG8gYSBicmVha3BvaW50LCBkZXBlbmRpbmcgb24gdGhlIGAkbmFtZWAgcGFyYW1ldGVyOlxuLy8vIC0gRm9yIGEgc2luZ2xlIHZhbHVlLCBgJC16Zi1icC12YWx1ZWAgaXMgdGhpcyB2YWx1ZS5cbi8vLyAtIEZvciBhIGJyZWFrcG9pbnQgbmFtZSwgYCQtemYtYnAtdmFsdWVgIGlzIHRoZSBjb3JyZXNwb25kaW5nIGJyZWFrcG9pbnQgdmFsdWUgaW4gYCRtYXBgLlxuLy8vIC0gRm9yIFwiYXV0b1wiLCBgJC16Zi1icC12YWx1ZWAgaXMgdGhlIGNvcnJlc3BvbmRpbmcgYnJlYWtwb2ludCB2YWx1ZSBpbiBgJG1hcGAgYW5kIGlzIHBhc3NlZCB0byBgQGNvbnRlbnRgLCB3aGljaCBpcyBtYWRlIHJlc3BvbnNpdmUgZm9yIGVhY2ggYnJlYWtwb2ludCBvZiBgJG1hcGAuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8QXJyYXl8S2V5d29yZH0gJG5hbWUgW2F1dG9dIC0gU2luZ2xlIHZhbHVlLCBicmVha3BvaW50IG5hbWUsIG9yIGxpc3Qgb2YgYnJlYWtwb2ludCBuYW1lcyB0byB1c2UuIFwiYXV0b1wiIGJ5IGRlZmF1bHQuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkbWFwIC0gTWFwIG9mIGJyZWFrcG9pbnRzIGFuZCB2YWx1ZXMgb3Igc2luZ2xlIHZhbHVlIHRvIHVzZS5cbkBtaXhpbiAtemYtYnJlYWtwb2ludC12YWx1ZShcbiAgJG5hbWU6IGF1dG8sXG4gICRtYXA6IG51bGxcbikge1xuICBAaWYgJG5hbWUgPT0gYXV0byBhbmQgdHlwZS1vZigkbWFwKSA9PSAnbWFwJyB7XG4gICAgLy8gXCJhdXRvXCJcbiAgICBAZWFjaCAkaywgJHYgaW4gJG1hcCB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRrKSB7XG4gICAgICAgIEBpbmNsdWRlIC16Zi1icmVha3BvaW50LXZhbHVlKCR2LCAkbWFwKSB7XG4gICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIC8vIGJyZWFrcG9pbnQgbmFtZVxuICAgIEBpZiB0eXBlLW9mKCRuYW1lKSA9PSAnc3RyaW5nJyB7XG4gICAgICAkYnAtdmFsdWU6IC16Zi1nZXQtYnAtdmFsKCRtYXAsICRuYW1lKTtcbiAgICAgIEBpZiAkYnAtdmFsdWUgIT0gbnVsbCB7XG4gICAgICAgICRuYW1lOiAkYnAtdmFsdWU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gYnJlYWtwb2ludCB2YWx1ZVxuICAgICQtemYtYnAtdmFsdWU6ICRuYW1lICFnbG9iYWw7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG4vLy8gRm9udCBjb2xvciBvZiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBGb250IGNvbG9yIG9mIHBsYWNlaG9sZGVyIHRleHQgd2l0aGluIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtcGxhY2Vob2xkZXItY29sb3I6ICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgZmFtaWx5IG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIEZvbnRcbiRpbnB1dC1mb250LWZhbWlseTogaW5oZXJpdCAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc2l6ZSBvZiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRpbnB1dC1mb250LXNpemU6IHJlbS1jYWxjKDE2KSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgd2VpZ2h0IG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIEtleXdvcmRcbiRpbnB1dC1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuXG4vLy8gTGluZSBoZWlnaHQgb2YgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgS2V5d29yZFxuJGlucHV0LWxpbmUtaGVpZ2h0OiAkZ2xvYmFsLWxpbmVoZWlnaHQgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBmb2N1c2VkIG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtYmFja2dyb3VuZC1mb2N1czogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBkaXNhYmxlZCB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LWJhY2tncm91bmQtZGlzYWJsZWQ6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIGFyb3VuZCB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBCb3JkZXJcbiRpbnB1dC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgYXJvdW5kIGZvY3VzZWQgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1ib3JkZXItZm9jdXM6IDFweCBzb2xpZCAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBvZiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LXBhZGRpbmc6ICRmb3JtLXNwYWNpbmcgKiAwLjUgIWRlZmF1bHQ7XG5cbi8vLyBCb3ggc2hhZG93IGluc2lkZSB0ZXh0IGlucHV0cyB3aGVuIG5vdCBmb2N1c2VkLlxuLy8vIEB0eXBlIFNoYWRvd1xuJGlucHV0LXNoYWRvdzogaW5zZXQgMCAxcHggMnB4IHJnYmEoJGJsYWNrLCAwLjEpICFkZWZhdWx0O1xuXG4vLy8gQm94IHNoYWRvdyBvdXRzaWRlIHRleHQgaW5wdXRzIHdoZW4gZm9jdXNlZC5cbi8vLyBAdHlwZSBTaGFkb3dcbiRpbnB1dC1zaGFkb3ctZm9jdXM6IDAgMCA1cHggJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQ3Vyc29yIHRvIHVzZSB3aGVuIGhvdmVyaW5nIG92ZXIgYSBkaXNhYmxlZCB0ZXh0IGlucHV0LlxuLy8vIEB0eXBlIEN1cnNvclxuJGlucHV0LWN1cnNvci1kaXNhYmxlZDogbm90LWFsbG93ZWQgIWRlZmF1bHQ7XG5cbi8vLyBQcm9wZXJ0aWVzIHRvIHRyYW5zaXRpb24gb24gdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgVHJhbnNpdGlvblxuJGlucHV0LXRyYW5zaXRpb246IGJveC1zaGFkb3cgMC41cywgYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuXG4vLy8gRW5hYmxlcyB0aGUgdXAvZG93biBidXR0b25zIHRoYXQgQ2hyb21lIGFuZCBGaXJlZm94IGFkZCB0byBgPGlucHV0IHR5cGU9J251bWJlcic+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kaW5wdXQtbnVtYmVyLXNwaW5uZXJzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gUmFkaXVzIGZvciB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBCb3JkZXJcbiRpbnB1dC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIHJhZGl1cyBmb3IgZm9ybSBidXR0b25zLCBkZWZhdWx0ZWQgdG8gZ2xvYmFsLXJhZGl1cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRmb3JtLWJ1dHRvbi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG5AbWl4aW4gZm9ybS1lbGVtZW50IHtcbiAgJGhlaWdodDogKCRpbnB1dC1mb250LXNpemUgKiB1bml0bGVzcy1jYWxjKCRpbnB1dC1saW5lLWhlaWdodCkpICsgKGdldC1zaWRlKCRpbnB1dC1wYWRkaW5nLCAndG9wJykgKyBnZXQtc2lkZSgkaW5wdXQtcGFkZGluZywgJ2JvdHRvbScpKSAtIHJlbS1jYWxjKDEpO1xuXG4gIGRpc3BsYXk6IGJsb2NrO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAkaGVpZ2h0O1xuICBtYXJnaW46IDAgMCAkZm9ybS1zcGFjaW5nO1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZztcblxuICBib3JkZXI6ICRpbnB1dC1ib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICRpbnB1dC1yYWRpdXM7XG4gIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iYWNrZ3JvdW5kO1xuICBib3gtc2hhZG93OiAkaW5wdXQtc2hhZG93O1xuXG4gIGZvbnQtZmFtaWx5OiAkaW5wdXQtZm9udC1mYW1pbHk7XG4gIGZvbnQtc2l6ZTogJGlucHV0LWZvbnQtc2l6ZTtcbiAgZm9udC13ZWlnaHQ6ICRpbnB1dC1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRpbnB1dC1jb2xvcjtcblxuICBAaWYgaGFzLXZhbHVlKCRpbnB1dC10cmFuc2l0aW9uKSB7XG4gICAgdHJhbnNpdGlvbjogJGlucHV0LXRyYW5zaXRpb247XG4gIH1cblxuICAvLyBGb2N1cyBzdGF0ZVxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGJvcmRlcjogJGlucHV0LWJvcmRlci1mb2N1cztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmFja2dyb3VuZC1mb2N1cztcbiAgICBib3gtc2hhZG93OiAkaW5wdXQtc2hhZG93LWZvY3VzO1xuXG4gICAgQGlmIGhhcy12YWx1ZSgkaW5wdXQtdHJhbnNpdGlvbikge1xuICAgICAgdHJhbnNpdGlvbjogJGlucHV0LXRyYW5zaXRpb247XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0tdGV4dCB7XG4gIC8vIFRleHQgaW5wdXRzXG4gICN7dGV4dC1pbnB1dHMoKX0sXG4gIHRleHRhcmVhIHtcbiAgICBAaW5jbHVkZSBmb3JtLWVsZW1lbnQ7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgfVxuXG4gIC8vIFRleHQgYXJlYXNcbiAgdGV4dGFyZWEge1xuICAgIG1heC13aWR0aDogMTAwJTtcblxuICAgICZbcm93c10ge1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgIH1cbiAgfVxuXG4gIGlucHV0LFxuICB0ZXh0YXJlYSB7XG4gICAgLy8gRGlzYWJsZWQvcmVhZG9ubHkgc3RhdGVcbiAgICAmOmRpc2FibGVkLFxuICAgICZbcmVhZG9ubHldIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iYWNrZ3JvdW5kLWRpc2FibGVkO1xuICAgICAgY3Vyc29yOiAkaW5wdXQtY3Vyc29yLWRpc2FibGVkO1xuICAgIH1cbiAgfVxuXG4gIC8vIFJlc2V0IHN0eWxlcyBvbiBidXR0b24tbGlrZSBpbnB1dHNcbiAgW3R5cGU9J3N1Ym1pdCddLFxuICBbdHlwZT0nYnV0dG9uJ10ge1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgYm9yZGVyLXJhZGl1czogJGZvcm0tYnV0dG9uLXJhZGl1cztcbiAgfVxuXG4gIC8vIFJlc2V0IE5vcm1hbGl6ZSBzZXR0aW5nIGNvbnRlbnQtYm94IHRvIHNlYXJjaCBlbGVtZW50c1xuICBpbnB1dFt0eXBlPSdzZWFyY2gnXSB7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tcXVhbGlmeWluZy1lbGVtZW50c1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIH1cblxuICAvLyBOdW1iZXIgaW5wdXQgc3R5bGVzXG4gIFt0eXBlPSdudW1iZXInXSB7XG4gICAgQGlmIG5vdCAkaW5wdXQtbnVtYmVyLXNwaW5uZXJzIHtcbiAgICAgIC1tb3otYXBwZWFyYW5jZTogdGV4dGZpZWxkOyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXZlbmRvci1wcmVmaXhlc1xuXG4gICAgICAmOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuICAgICAgJjo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gICAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby12ZW5kb3ItcHJlZml4ZXNcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFBsYWNlaG9sZGVyIHRleHRcbiAgOjpwbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICRpbnB1dC1wbGFjZWhvbGRlci1jb2xvcjtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZvcm1zXG4vLy8vXG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0tY2hlY2tib3gge1xuICBbdHlwZT0nZmlsZSddLFxuICBbdHlwZT0nY2hlY2tib3gnXSxcbiAgW3R5cGU9J3JhZGlvJ10ge1xuICAgIG1hcmdpbjogMCAwICRmb3JtLXNwYWNpbmc7XG4gIH1cblxuICAvLyBTdHlsZXMgZm9yIGlucHV0L2xhYmVsIHNpYmxpbmdzXG4gIFt0eXBlPSdjaGVja2JveCddICsgbGFiZWwsXG4gIFt0eXBlPSdyYWRpbyddICsgbGFiZWwge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG5cbiAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAkZm9ybS1zcGFjaW5nICogMC41O1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAkZm9ybS1zcGFjaW5nO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAmW2Zvcl0ge1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cbiAgfVxuXG4gIC8vIFN0eWxlcyBmb3IgaW5wdXRzIGluc2lkZSBsYWJlbHNcbiAgbGFiZWwgPiBbdHlwZT0nY2hlY2tib3gnXSxcbiAgbGFiZWwgPiBbdHlwZT0ncmFkaW8nXSB7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICRmb3JtLXNwYWNpbmcgKiAwLjU7XG4gIH1cblxuICAvLyBOb3JtYWxpemUgZmlsZSBpbnB1dCB3aWR0aFxuICBbdHlwZT0nZmlsZSddIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZvcm1zXG4vLy8vXG5cbi8vLyBHbG9iYWwgc3BhY2luZyBmb3IgZm9ybSBlbGVtZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRmb3JtLXNwYWNpbmc6IHJlbS1jYWxjKDE2KSAhZGVmYXVsdDtcblxuQGltcG9ydCAndGV4dCc7XG5AaW1wb3J0ICdjaGVja2JveCc7XG5AaW1wb3J0ICdsYWJlbCc7XG5AaW1wb3J0ICdoZWxwLXRleHQnO1xuQGltcG9ydCAnaW5wdXQtZ3JvdXAnO1xuQGltcG9ydCAnZmllbGRzZXQnO1xuQGltcG9ydCAnc2VsZWN0JztcbkBpbXBvcnQgJ3JhbmdlJztcbkBpbXBvcnQgJ3Byb2dyZXNzJztcbkBpbXBvcnQgJ21ldGVyJztcbkBpbXBvcnQgJ2Vycm9yJztcblxuQG1peGluIGZvdW5kYXRpb24tZm9ybXMge1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWZvcm0tdGV4dDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1mb3JtLWNoZWNrYm94O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWZvcm0tbGFiZWw7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZm9ybS1oZWxwdGV4dDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1mb3JtLXByZXBvc3RmaXg7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZm9ybS1maWVsZHNldDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1mb3JtLXNlbGVjdDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1mb3JtLWVycm9yO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZvcm1zXG4vLy8vXG5cbi8vLyBDb2xvciBmb3IgZm9ybSBsYWJlbHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRmb3JtLWxhYmVsLWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgZm9yIGZvcm0gbGFiZWxzLlxuLy8vIEB0eXBlIE51bWJlclxuJGZvcm0tbGFiZWwtZm9udC1zaXplOiByZW0tY2FsYygxNCkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHdlaWdodCBmb3IgZm9ybSBsYWJlbHMuXG4vLy8gQHR5cGUgS2V5d29yZFxuJGZvcm0tbGFiZWwtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIExpbmUgaGVpZ2h0IGZvciBmb3JtIGxhYmVscy4gVGhlIGhpZ2hlciB0aGUgbnVtYmVyLCB0aGUgbW9yZSBzcGFjZSBiZXR3ZWVuIHRoZSBsYWJlbCBhbmQgaXRzIGlucHV0IGZpZWxkLlxuLy8vIEB0eXBlIE51bWJlclxuJGZvcm0tbGFiZWwtbGluZS1oZWlnaHQ6IDEuOCAhZGVmYXVsdDtcblxuQG1peGluIGZvcm0tbGFiZWwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwO1xuXG4gIGZvbnQtc2l6ZTogJGZvcm0tbGFiZWwtZm9udC1zaXplO1xuICBmb250LXdlaWdodDogJGZvcm0tbGFiZWwtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkZm9ybS1sYWJlbC1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRmb3JtLWxhYmVsLWNvbG9yO1xufVxuXG5AbWl4aW4gZm9ybS1sYWJlbC1taWRkbGUge1xuICAkaW5wdXQtYm9yZGVyLXdpZHRoOiBnZXQtYm9yZGVyLXZhbHVlKCRpbnB1dC1ib3JkZXIsIHdpZHRoKTtcblxuICBtYXJnaW46IDAgMCAkZm9ybS1zcGFjaW5nO1xuICBsaW5lLWhlaWdodDogJGdsb2JhbC1saW5laGVpZ2h0O1xuICBwYWRkaW5nOiAoJGZvcm0tc3BhY2luZyAqIDAuNSArIHJlbS1jYWxjKCRpbnB1dC1ib3JkZXItd2lkdGgpKSAwO1xufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLWxhYmVsIHtcbiAgbGFiZWwge1xuICAgIEBpbmNsdWRlIGZvcm0tbGFiZWw7XG5cbiAgICAmLm1pZGRsZSB7XG4gICAgICBAaW5jbHVkZSBmb3JtLWxhYmVsLW1pZGRsZTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG4vLy8gRGVmYXVsdCBjb2xvciBmb3IgaGVscCB0ZXh0LlxuLy8vIEB0eXBlIENvbG9yXG4kaGVscHRleHQtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBzaXplIGZvciBoZWxwIHRleHQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kaGVscHRleHQtZm9udC1zaXplOiByZW0tY2FsYygxMykgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgc3R5bGUgZm9yIGhlbHAgdGV4dC5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kaGVscHRleHQtZm9udC1zdHlsZTogaXRhbGljICFkZWZhdWx0O1xuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLWhlbHB0ZXh0IHtcbiAgLmhlbHAtdGV4dCB7XG4gICAgJG1hcmdpbi10b3A6ICgkZm9ybS1zcGFjaW5nICogMC41KSAqIC0xO1xuXG4gICAgbWFyZ2luLXRvcDogJG1hcmdpbi10b3A7XG4gICAgZm9udC1zaXplOiAkaGVscHRleHQtZm9udC1zaXplO1xuICAgIGZvbnQtc3R5bGU6ICRoZWxwdGV4dC1mb250LXN0eWxlO1xuICAgIGNvbG9yOiAkaGVscHRleHQtY29sb3I7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG4vLy8gQ29sb3Igb2YgbGFiZWxzIHByZWZpeGVkIHRvIGFuIGlucHV0LlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtcHJlZml4LWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIGxhYmVscyBwcmVmaXhlZCB0byBhbiBpbnB1dC5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LXByZWZpeC1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciBhcm91bmQgbGFiZWxzIHByZWZpeGVkIHRvIGFuIGlucHV0LlxuLy8vIEB0eXBlIEJvcmRlclxuJGlucHV0LXByZWZpeC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBMZWZ0L3JpZ2h0IHBhZGRpbmcgb2YgYW4gcHJlL3Bvc3RmaXhlZCBpbnB1dCBsYWJlbFxuJGlucHV0LXByZWZpeC1wYWRkaW5nOiAxcmVtICFkZWZhdWx0O1xuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLXByZXBvc3RmaXgge1xuICAkaGVpZ2h0OiAoJGlucHV0LWZvbnQtc2l6ZSAqICRpbnB1dC1saW5lLWhlaWdodCkgKyAoZ2V0LXNpZGUoJGlucHV0LXBhZGRpbmcsICd0b3AnKSArIGdldC1zaWRlKCRpbnB1dC1wYWRkaW5nLCAnYm90dG9tJykpIC0gcmVtLWNhbGMoMSk7XG5cbiAgLmlucHV0LWdyb3VwIHtcbiAgICBkaXNwbGF5OiBpZigkZ2xvYmFsLWZsZXhib3gsIGZsZXgsIHRhYmxlKTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tYm90dG9tOiAkZm9ybS1zcGFjaW5nO1xuXG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICB9XG5cbiAgICA+IDpmaXJzdC1jaGlsZCB7XG4gICAgICAmLCAmLmlucHV0LWdyb3VwLWJ1dHRvbiA+ICoge1xuICAgICAgICBib3JkZXItcmFkaXVzOiBpZigkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09IHJ0bCwgMCAkaW5wdXQtcmFkaXVzICRpbnB1dC1yYWRpdXMgMCwgJGlucHV0LXJhZGl1cyAwIDAgJGlucHV0LXJhZGl1cyk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgPiA6bGFzdC1jaGlsZCB7XG4gICAgICAmLCAmLmlucHV0LWdyb3VwLWJ1dHRvbiA+ICoge1xuICAgICAgICBib3JkZXItcmFkaXVzOiBpZigkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09IHJ0bCwgJGlucHV0LXJhZGl1cyAwIDAgJGlucHV0LXJhZGl1cywgMCAkaW5wdXQtcmFkaXVzICRpbnB1dC1yYWRpdXMgMCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJWlucHV0LWdyb3VwLWNoaWxkIHtcbiAgICBtYXJnaW46IDA7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAgIEBpZiBub3QgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIH1cbiAgfVxuXG4gIC5pbnB1dC1ncm91cC1sYWJlbCB7XG4gICAgQGV4dGVuZCAlaW5wdXQtZ3JvdXAtY2hpbGQ7XG4gICAgcGFkZGluZzogMCAkaW5wdXQtcHJlZml4LXBhZGRpbmc7XG4gICAgYm9yZGVyOiAkaW5wdXQtcHJlZml4LWJvcmRlcjtcbiAgICBiYWNrZ3JvdW5kOiAkaW5wdXQtcHJlZml4LWJhY2tncm91bmQ7XG5cbiAgICBjb2xvcjogJGlucHV0LXByZWZpeC1jb2xvcjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgd2lkdGg6IDElO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgIH1cblxuICAgIEBpZiBoYXMtdmFsdWUoJGlucHV0LXByZWZpeC1ib3JkZXIpIHtcbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItI3skZ2xvYmFsLXJpZ2h0fTogMDtcbiAgICAgIH1cblxuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLSN7JGdsb2JhbC1sZWZ0fTogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuaW5wdXQtZ3JvdXAtZmllbGQge1xuICAgIEBleHRlbmQgJWlucHV0LWdyb3VwLWNoaWxkO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGZsZXg6IDEgMSAwcHg7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgemVyby11bml0XG4gICAgICBtaW4td2lkdGg6IDA7XG4gICAgfVxuICB9XG5cbiAgLmlucHV0LWdyb3VwLWJ1dHRvbiB7XG4gICAgQGV4dGVuZCAlaW5wdXQtZ3JvdXAtY2hpbGQ7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIHdpZHRoOiAxJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICB9XG5cbiAgICBhLFxuICAgIGlucHV0LFxuICAgIGJ1dHRvbixcbiAgICBsYWJlbCB7XG4gICAgICBAZXh0ZW5kICVpbnB1dC1ncm91cC1jaGlsZDtcblxuICAgICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgaGVpZ2h0OiAkaGVpZ2h0O1xuICAgICAgfVxuICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgIGZvbnQtc2l6ZTogJGlucHV0LWZvbnQtc2l6ZTtcbiAgICB9XG4gIH1cblxuICAvLyBTcGVjaWZpY2l0eSBidW1wIG5lZWRlZCB0byBwcmV2ZW50IG92ZXJyaWRlIGJ5IGJ1dHRvbnNcbiAgQGlmIG5vdCAkZ2xvYmFsLWZsZXhib3gge1xuICAgIC5pbnB1dC1ncm91cCB7XG4gICAgICAuaW5wdXQtZ3JvdXAtYnV0dG9uIHtcbiAgICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgYXJvdW5kIGN1c3RvbSBmaWVsZHNldHMuXG4vLy8gQHR5cGUgQm9yZGVyXG4kZmllbGRzZXQtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGluc2lkZSBjdXN0b20gZmllbGRzZXRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGZpZWxkc2V0LXBhZGRpbmc6IHJlbS1jYWxjKDIwKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbWFyZ2luIGFyb3VuZCBjdXN0b20gZmllbGRzZXRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGZpZWxkc2V0LW1hcmdpbjogcmVtLWNhbGMoMTggMCkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgYmV0d2VlbiB0aGUgbGVnZW5kIHRleHQgYW5kIGZpZWxkc2V0IGJvcmRlci5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsZWdlbmQtcGFkZGluZzogcmVtLWNhbGMoMCAzKSAhZGVmYXVsdDtcblxuQG1peGluIGZpZWxkc2V0IHtcbiAgbWFyZ2luOiAkZmllbGRzZXQtbWFyZ2luO1xuICBwYWRkaW5nOiAkZmllbGRzZXQtcGFkZGluZztcbiAgYm9yZGVyOiAkZmllbGRzZXQtYm9yZGVyO1xuXG4gIGxlZ2VuZCB7XG4gICAgLy8gQ292ZXJzIHVwIHRoZSBmaWVsZHNldCdzIGJvcmRlciB0byBjcmVhdGUgYXJ0aWZpY2lhbCBwYWRkaW5nXG4gICAgbWFyZ2luOiAwO1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IHJlbS1jYWxjKC0zKTtcbiAgICBwYWRkaW5nOiAkbGVnZW5kLXBhZGRpbmc7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS1maWVsZHNldCB7XG4gIGZpZWxkc2V0IHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBib3JkZXI6IDA7XG4gIH1cblxuICBsZWdlbmQge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tYm90dG9tOiAkZm9ybS1zcGFjaW5nICogMC41O1xuICB9XG5cbiAgLmZpZWxkc2V0IHtcbiAgICBAaW5jbHVkZSBmaWVsZHNldDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZvcm1zXG4vLy8vXG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGZvciBzZWxlY3QgbWVudXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRzZWxlY3QtYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQ29sb3Igb2YgdGhlIGRyb3Bkb3duIHRyaWFuZ2xlIGluc2lkZSBzZWxlY3QgbWVudXMuIFNldCB0byBgdHJhbnNwYXJlbnRgIHRvIHJlbW92ZSBpdCBlbnRpcmVseS5cbi8vLyBAdHlwZSBDb2xvclxuJHNlbGVjdC10cmlhbmdsZS1jb2xvcjogJGRhcmstZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcmFkaXVzIGZvciBzZWxlY3QgbWVudXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRzZWxlY3QtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuQG1peGluIGZvcm0tc2VsZWN0IHtcbiAgJGhlaWdodDogKCRpbnB1dC1mb250LXNpemUgKiB1bml0bGVzcy1jYWxjKCRpbnB1dC1saW5lLWhlaWdodCkpICsgKGdldC1zaWRlKCRpbnB1dC1wYWRkaW5nLCAndG9wJykgKyBnZXQtc2lkZSgkaW5wdXQtcGFkZGluZywgJ2JvdHRvbScpKSAtIHJlbS1jYWxjKDEpO1xuXG4gIGhlaWdodDogJGhlaWdodDtcbiAgbWFyZ2luOiAwIDAgJGZvcm0tc3BhY2luZztcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmc7XG5cbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYm9yZGVyOiAkaW5wdXQtYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiAkc2VsZWN0LXJhZGl1cztcbiAgYmFja2dyb3VuZC1jb2xvcjogJHNlbGVjdC1iYWNrZ3JvdW5kO1xuXG4gIGZvbnQtZmFtaWx5OiAkaW5wdXQtZm9udC1mYW1pbHk7XG4gIGZvbnQtc2l6ZTogJGlucHV0LWZvbnQtc2l6ZTtcbiAgZm9udC13ZWlnaHQ6ICRpbnB1dC1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRpbnB1dC1jb2xvcjtcblxuICBAaWYgJHNlbGVjdC10cmlhbmdsZS1jb2xvciAhPSB0cmFuc3BhcmVudCB7XG4gICAgQGluY2x1ZGUgYmFja2dyb3VuZC10cmlhbmdsZSgkc2VsZWN0LXRyaWFuZ2xlLWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLW9yaWdpbjogY29udGVudC1ib3g7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogJGdsb2JhbC1yaWdodCAoLSRmb3JtLXNwYWNpbmcpIGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogOXB4IDZweDtcblxuICAgIHBhZGRpbmctI3skZ2xvYmFsLXJpZ2h0fTogKCRmb3JtLXNwYWNpbmcgKiAxLjUpO1xuICB9XG5cbiAgQGlmIGhhcy12YWx1ZSgkaW5wdXQtdHJhbnNpdGlvbikge1xuICAgIHRyYW5zaXRpb246ICRpbnB1dC10cmFuc2l0aW9uO1xuICB9XG5cbiAgLy8gRm9jdXMgc3RhdGVcbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBib3JkZXI6ICRpbnB1dC1ib3JkZXItZm9jdXM7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJhY2tncm91bmQtZm9jdXM7XG4gICAgYm94LXNoYWRvdzogJGlucHV0LXNoYWRvdy1mb2N1cztcblxuICAgIEBpZiBoYXMtdmFsdWUoJGlucHV0LXRyYW5zaXRpb24pIHtcbiAgICAgIHRyYW5zaXRpb246ICRpbnB1dC10cmFuc2l0aW9uO1xuICAgIH1cbiAgfVxuXG4gIC8vIERpc2FibGVkIHN0YXRlXG4gICY6ZGlzYWJsZWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iYWNrZ3JvdW5kLWRpc2FibGVkO1xuICAgIGN1cnNvcjogJGlucHV0LWN1cnNvci1kaXNhYmxlZDtcbiAgfVxuXG4gIC8vIEhpZGUgdGhlIGRyb3Bkb3duIGFycm93IHNob3duIGluIG5ld2VyIElFIHZlcnNpb25zXG4gICY6Oi1tcy1leHBhbmQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAmW211bHRpcGxlXSB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIH1cbiAgJjpub3QoW211bHRpcGxlXSkge1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0tc2VsZWN0IHtcbiAgc2VsZWN0IHtcbiAgICBAaW5jbHVkZSBmb3JtLXNlbGVjdDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGFiaWRlXG4vLy8vXG5cbi8vLyBTZXRzIGlmIGVycm9yIHN0eWxlcyBzaG91bGQgYmUgYWRkZWQgdG8gaW5wdXRzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRhYmlkZS1pbnB1dHM6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGlmIGVycm9yIHN0eWxlcyBzaG91bGQgYmUgYWRkZWQgdG8gbGFiZWxzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRhYmlkZS1sYWJlbHM6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIHRvIHVzZSBmb3IgaW52YWxpZCB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LWJhY2tncm91bmQtaW52YWxpZDogZ2V0LWNvbG9yKGFsZXJ0KSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHRvIHVzZSBmb3IgbGFiZWxzIG9mIGludmFsaWQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kZm9ybS1sYWJlbC1jb2xvci1pbnZhbGlkOiBnZXQtY29sb3IoYWxlcnQpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IGNvbG9yIGZvciBmb3JtIGVycm9yIHRleHQuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1lcnJvci1jb2xvcjogZ2V0LWNvbG9yKGFsZXJ0KSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBzaXplIGZvciBmb3JtIGVycm9yIHRleHQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kaW5wdXQtZXJyb3ItZm9udC1zaXplOiByZW0tY2FsYygxMikgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgd2VpZ2h0IGZvciBmb3JtIGVycm9yIHRleHQuXG4vLy8gQHR5cGUgS2V5d29yZFxuJGlucHV0LWVycm9yLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkICFkZWZhdWx0O1xuXG4vLy8gU3R5bGVzIHRoZSBiYWNrZ3JvdW5kIGFuZCBib3JkZXIgb2YgYW4gaW5wdXQgZmllbGQgdG8gaGF2ZSBhbiBlcnJvciBzdGF0ZS5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kIFskYWxlcnQtY29sb3JdIC0gQ29sb3IgdG8gdXNlIGZvciB0aGUgYmFja2dyb3VuZCBhbmQgYm9yZGVyLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFja2dyb3VuZC1saWdodGVuIFsxMCVdIC0gTGlnaHRuZXNzIGxldmVsIG9mIHRoZSBiYWNrZ3JvdW5kIGNvbG9yLlxuQG1peGluIGZvcm0taW5wdXQtZXJyb3IoXG4gICRiYWNrZ3JvdW5kOiAkaW5wdXQtYmFja2dyb3VuZC1pbnZhbGlkLFxuICAkYmFja2dyb3VuZC1saWdodGVuOiAxMCVcbikge1xuICAmOm5vdCg6Zm9jdXMpIHtcbiAgICBib3JkZXItY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIGJhY2tncm91bmQtY29sb3I6IG1peCgkYmFja2dyb3VuZCwgJHdoaXRlLCAkYmFja2dyb3VuZC1saWdodGVuKTtcblxuICAgICY6OnBsYWNlaG9sZGVyIHtcbiAgICAgIGNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgZXJyb3Igc3R5bGVzIHRvIGEgZm9ybSBlbGVtZW50LCB1c2luZyB0aGUgdmFsdWVzIGluIHRoZSBzZXR0aW5ncyBmaWxlLlxuQG1peGluIGZvcm0tZXJyb3Ige1xuICBkaXNwbGF5OiBub25lO1xuICBtYXJnaW4tdG9wOiAkZm9ybS1zcGFjaW5nICogLTAuNTtcbiAgbWFyZ2luLWJvdHRvbTogJGZvcm0tc3BhY2luZztcblxuICBmb250LXNpemU6ICRpbnB1dC1lcnJvci1mb250LXNpemU7XG4gIGZvbnQtd2VpZ2h0OiAkaW5wdXQtZXJyb3ItZm9udC13ZWlnaHQ7XG4gIGNvbG9yOiAkaW5wdXQtZXJyb3ItY29sb3I7XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0tZXJyb3Ige1xuICBAaWYgJGFiaWRlLWlucHV0cyB7XG4gICAgLy8gRXJyb3IgY2xhc3MgZm9yIGludmFsaWQgaW5wdXRzXG4gICAgLmlzLWludmFsaWQtaW5wdXQge1xuICAgICAgQGluY2x1ZGUgZm9ybS1pbnB1dC1lcnJvcjtcbiAgICB9XG4gIH1cblxuICBAaWYgJGFiaWRlLWxhYmVscyB7XG4gICAgLy8gRXJyb3IgY2xhc3MgZm9yIGxhYmVscyBvZiBpbnZhbGlkIG91dHB1dHNcbiAgICAuaXMtaW52YWxpZC1sYWJlbCB7XG4gICAgICBjb2xvcjogJGZvcm0tbGFiZWwtY29sb3ItaW52YWxpZDtcbiAgICB9XG4gIH1cblxuICAvLyBGb3JtIGVycm9yIGVsZW1lbnRcbiAgLmZvcm0tZXJyb3Ige1xuICAgIEBpbmNsdWRlIGZvcm0tZXJyb3I7XG5cbiAgICAmLmlzLXZpc2libGUge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgYnV0dG9uXG4vLy8vXG5cbi8vLyBGb250IGZhbWlseSBmb3IgYnV0dG9uIGVsZW1lbnRzLlxuLy8vIEB0eXBlIEZvbnRcbiRidXR0b24tZm9udC1mYW1pbHk6IGluaGVyaXQgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHdlaWdodCBmb3IgYnV0dG9uIGVsZW1lbnRzLlxuLy8vIElnbm9yZWQgaWYgbnVsbCAoZGVmYXVsdClcbi8vLyBAdHlwZSBGb250LVdlaWdodFxuJGJ1dHRvbi1mb250LXdlaWdodDogbnVsbCAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgaW5zaWRlIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTGlzdFxuJGJ1dHRvbi1wYWRkaW5nOiAwLjg1ZW0gMWVtICFkZWZhdWx0O1xuXG4vLy8gTWFyZ2luIGFyb3VuZCBidXR0b25zLlxuLy8vIEB0eXBlIExpc3RcbiRidXR0b24tbWFyZ2luOiAwIDAgJGdsb2JhbC1tYXJnaW4gMCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZmlsbCBmb3IgYnV0dG9ucy4gQ2FuIGVpdGhlciBiZSBgc29saWRgIG9yIGBob2xsb3dgLlxuLy8vIEB0eXBlIEtleXdvcmRcbiRidXR0b24tZmlsbDogc29saWQgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3IgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgQ29sb3JcbiRidXR0b24tYmFja2dyb3VuZDogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9uIGhvdmVyIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIENvbG9yXG4kYnV0dG9uLWJhY2tncm91bmQtaG92ZXI6IHNjYWxlLWNvbG9yKCRidXR0b24tYmFja2dyb3VuZCwgJGxpZ2h0bmVzczogLTE1JSkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IGNvbG9yIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIExpc3RcbiRidXR0b24tY29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIEFsdGVybmF0aXZlIGZvbnQgY29sb3IgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTGlzdFxuJGJ1dHRvbi1jb2xvci1hbHQ6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciByYWRpdXMgZm9yIGJ1dHRvbnMsIGRlZmF1bHRlZCB0byBnbG9iYWwtcmFkaXVzLlxuLy8vIEB0eXBlIE51bWJlclxuJGJ1dHRvbi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIGZvciBidXR0b25zLCB0cmFuc3BhcmVudCBieSBkZWZhdWx0XG4vLy8gQHR5cGUgTGlzdFxuJGJ1dHRvbi1ib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudCAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciB3aWR0aCBmb3IgaG9sbG93IG91dGxpbmUgYnV0dG9uc1xuLy8vIEB0eXBlIE51bWJlclxuJGJ1dHRvbi1ob2xsb3ctYm9yZGVyLXdpZHRoOiAxcHggIWRlZmF1bHQ7XG5cbi8vLyBTaXplcyBmb3IgYnV0dG9ucy5cbi8vLyBAdHlwZSBNYXBcbiRidXR0b24tc2l6ZXM6IChcbiAgdGlueTogMC42cmVtLFxuICBzbWFsbDogMC43NXJlbSxcbiAgZGVmYXVsdDogMC45cmVtLFxuICBsYXJnZTogMS4yNXJlbSxcbikgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvcmluZyBjbGFzc2VzLiBBIG1hcCBvZiBjbGFzc2VzIHRvIG91dHB1dCBpbiB5b3VyIENTUywgbGlrZSBgLnNlY29uZGFyeWAsIGAuc3VjY2Vzc2AsIGFuZCBzbyBvbi5cbi8vLyBAdHlwZSBNYXBcbiRidXR0b24tcGFsZXR0ZTogJGZvdW5kYXRpb24tcGFsZXR0ZSAhZGVmYXVsdDtcblxuLy8vIG9wYWNpdHkgZm9yIGEgZGlzYWJsZWQgYnV0dG9uLlxuLy8vIEB0eXBlIExpc3RcbiRidXR0b24tb3BhY2l0eS1kaXNhYmxlZDogMC4yNSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3IgbGlnaHRuZXNzIG9uIGhvdmVyIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIE51bWJlclxuJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyLWxpZ2h0bmVzczogLTIwJSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIGxpZ2h0bmVzcyBvbiBob3ZlciBmb3IgaG9sbG93IGJ1dHRvbnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYnV0dG9uLWhvbGxvdy1ob3Zlci1saWdodG5lc3M6IC01MCUgIWRlZmF1bHQ7XG5cbi8vIEludGVybmFsOiBmbGlwIGZyb20gbWFyZ2luLXJpZ2h0IHRvIG1hcmdpbi1sZWZ0IGZvciBkZWZhdWx0c1xuQGlmICRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gJ3J0bCcge1xuICAkYnV0dG9uLW1hcmdpbjogMCAwICRnbG9iYWwtbWFyZ2luICRnbG9iYWwtbWFyZ2luICFkZWZhdWx0O1xufVxuXG4vLy8gdHJhbnNpdGlvbnMgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTGlzdFxuJGJ1dHRvbi10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMjVzIGVhc2Utb3V0LCBjb2xvciAwLjI1cyBlYXNlLW91dCAhZGVmYXVsdDtcblxuLy8vIEFkZGl0aW9uYWwgcmVzcG9uc2l2ZSBjbGFzc2VzIGZvciAuZXhwYW5kZWRcbi8vLyBAdHlwZSBCb29sZWFuXG4kYnV0dG9uLXJlc3BvbnNpdmUtZXhwYW5kZWQ6IGZhbHNlICFkZWZhdWx0O1xuXG4vLyBUT0RPOiBEb2N1bWVudCBidXR0b24tYmFzZSgpIG1peGluXG5AbWl4aW4gYnV0dG9uLWJhc2Uge1xuICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgbWFyZ2luOiAkYnV0dG9uLW1hcmdpbjtcblxuICBAaWYgKHR5cGUtb2YoJGJ1dHRvbi1wYWRkaW5nKSA9PSAnbWFwJykge1xuICAgIEBlYWNoICRzaXplLCAkcGFkZGluZyBpbiAkYnV0dG9uLXBhZGRpbmcge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgICAgICBwYWRkaW5nOiAkcGFkZGluZztcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIHBhZGRpbmc6ICRidXR0b24tcGFkZGluZztcbiAgfVxuXG4gIGJvcmRlcjogJGJ1dHRvbi1ib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICRidXR0b24tcmFkaXVzO1xuICB0cmFuc2l0aW9uOiAkYnV0dG9uLXRyYW5zaXRpb247XG4gIGZvbnQtZmFtaWx5OiAkYnV0dG9uLWZvbnQtZmFtaWx5O1xuICBmb250LXNpemU6IG1hcC1nZXQoJGJ1dHRvbi1zaXplcywgZGVmYXVsdCk7XG4gIGZvbnQtd2VpZ2h0OiAkYnV0dG9uLWZvbnQtd2VpZ2h0O1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tdmVuZG9yLXByZWZpeGVzXG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLy8vIEV4cGFuZHMgYSBidXR0b24gdG8gbWFrZSBpdCBmdWxsLXdpZHRoLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGV4cGFuZCBbdHJ1ZV0gLSBTZXQgdG8gYHRydWVgIHRvIGVuYWJsZSB0aGUgZXhwYW5kIGJlaGF2aW9yLiBTZXQgdG8gYGZhbHNlYCB0byByZXZlcnNlIHRoaXMgYmVoYXZpb3IuXG5AbWl4aW4gYnV0dG9uLWV4cGFuZCgkZXhwYW5kOiB0cnVlKSB7XG4gIEBpZiAkZXhwYW5kIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbiAgQGVsc2Uge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogYXV0bztcbiAgICBtYXJnaW46ICRidXR0b24tbWFyZ2luO1xuICB9XG59XG5cbi8vLyBTZXRzIHRoZSBiYXNlIHN0eWxlcyBvZiBhIGhvbGxvdyBvciBjbGVhciBidXR0b24gZmlsbGluZyBhY2NvcmRpbmcgdG8gYCRmaWxsYC5cbi8vLyBTZWUgbWl4aW4gYGJ1dHRvbi1maWxsLXN0eWxlYCBmb3IgdGhlIGZpbGxpbmcgc3R5bGVzLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGZpbGwgWyRidXR0b24tZmlsbF0gLSBUeXBlIG9mIGZpbGxpbmcgYmV0d2VlbiBgaG9sbG93YCBhbmQgYGNsZWFyYC4gYHNvbGlkYCBoYXMgbm8gZWZmZWN0cy5cbkBtaXhpbiBidXR0b24tZmlsbChcbiAgJGZpbGw6ICRidXR0b24tZmlsbFxuKSB7XG4gIEBpZiAkZmlsbCA9PSBob2xsb3cge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3c7XG4gIH1cbiAgQGVsc2UgaWYgJGZpbGwgPT0gY2xlYXIge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1jbGVhcjtcbiAgfVxufVxuXG4vLy8gU2V0cyB0aGUgdmlzdWFsIHN0eWxlcyBvZiBhIHNvbGlkL2hvbGxvdy9jbGVhciBidXR0b24gZmlsbGluZyBhY2NvcmRpbmcgdG8gYCRmaWxsYC5cbi8vLyBTZWUgbWl4aW5zIGBidXR0b24tc3R5bGVgLCBgYnV0dG9uLWhvbGxvdy1zdHlsZWAgYW5kIGBidXR0b24tY2xlYXItc3R5bGVgIGZvciBlZmZlY3RzIG9mIHZpc3VhbCBzdHlsaW5nIHBhcmFtZXRlcnMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZmlsbCBbJGJ1dHRvbi1maWxsXSAtIFR5cGUgb2YgZmlsbGluZyBiZXR3ZWVuIGBob2xsb3dgIGFuZCBgY2xlYXJgLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kIFskYnV0dG9uLWJhY2tncm91bmRdIC0gLVxuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kLWhvdmVyIFskYnV0dG9uLWJhY2tncm91bmQtaG92ZXJdIC0gLVxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbJGJ1dHRvbi1jb2xvcl0gLSAtXG5AbWl4aW4gYnV0dG9uLWZpbGwtc3R5bGUoXG4gICRmaWxsOiAkYnV0dG9uLWZpbGwsXG4gICRiYWNrZ3JvdW5kOiAkYnV0dG9uLWJhY2tncm91bmQsXG4gICRiYWNrZ3JvdW5kLWhvdmVyOiAkYnV0dG9uLWJhY2tncm91bmQtaG92ZXIsXG4gICRjb2xvcjogJGJ1dHRvbi1jb2xvclxuKSB7XG4gIEBpZiAkZmlsbCA9PSBzb2xpZCB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLXN0eWxlKCRiYWNrZ3JvdW5kLCAkYmFja2dyb3VuZC1ob3ZlciwgJGNvbG9yKTtcbiAgfVxuICBAZWxzZSBpZiAkZmlsbCA9PSBob2xsb3cge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3ctc3R5bGUoJGJhY2tncm91bmQpO1xuICB9XG4gIEBlbHNlIGlmICRmaWxsID09IGNsZWFyIHtcbiAgICBAaW5jbHVkZSBidXR0b24tY2xlYXItc3R5bGUoJGJhY2tncm91bmQpO1xuICB9XG59XG5cbi8vLyBTZXRzIHRoZSB2aXN1YWwgc3R5bGUgb2YgYSBidXR0b24uXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhY2tncm91bmQgWyRidXR0b24tYmFja2dyb3VuZF0gLSBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBidXR0b24uXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhY2tncm91bmQtaG92ZXIgWyRidXR0b24tYmFja2dyb3VuZC1ob3Zlcl0gLSBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBidXR0b24gb24gaG92ZXIuIFNldCB0byBgYXV0b2AgdG8gaGF2ZSB0aGUgbWl4aW4gYXV0b21hdGljYWxseSBnZW5lcmF0ZSBhIGhvdmVyIGNvbG9yLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbJGJ1dHRvbi1jb2xvcl0gLSBUZXh0IGNvbG9yIG9mIHRoZSBidXR0b24uIFNldCB0byBgYXV0b2AgdG8gYXV0b21hdGljYWxseSBnZW5lcmF0ZSBhIGNvbG9yIGJhc2VkIG9uIHRoZSBiYWNrZ3JvdW5kIGNvbG9yLlxuQG1peGluIGJ1dHRvbi1zdHlsZShcbiAgJGJhY2tncm91bmQ6ICRidXR0b24tYmFja2dyb3VuZCxcbiAgJGJhY2tncm91bmQtaG92ZXI6ICRidXR0b24tYmFja2dyb3VuZC1ob3ZlcixcbiAgJGNvbG9yOiAkYnV0dG9uLWNvbG9yLFxuICAkYmFja2dyb3VuZC1ob3Zlci1saWdodG5lc3M6ICRidXR0b24tYmFja2dyb3VuZC1ob3Zlci1saWdodG5lc3Ncbikge1xuICBAaWYgJGNvbG9yID09IGF1dG8ge1xuICAgICRjb2xvcjogY29sb3ItcGljay1jb250cmFzdCgkYmFja2dyb3VuZCwgKCRidXR0b24tY29sb3IsICRidXR0b24tY29sb3ItYWx0KSk7XG4gIH1cblxuICBAaWYgJGJhY2tncm91bmQtaG92ZXIgPT0gYXV0byB7XG4gICAgJGJhY2tncm91bmQtaG92ZXI6IHNjYWxlLWNvbG9yKCRiYWNrZ3JvdW5kLCAkbGlnaHRuZXNzOiAkYmFja2dyb3VuZC1ob3Zlci1saWdodG5lc3MpO1xuICB9XG5cbiAgLy8gRGVmYXVsdCBhbmQgZGlzYWJsZWQgc3RhdGVzXG4gICYsXG4gICYuZGlzYWJsZWQsICZbZGlzYWJsZWRdLFxuICAmLmRpc2FibGVkOmhvdmVyLCAmW2Rpc2FibGVkXTpob3ZlcixcbiAgJi5kaXNhYmxlZDpmb2N1cywgJltkaXNhYmxlZF06Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkY29sb3I7XG4gIH1cblxuICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZC1ob3ZlcjtcbiAgICBjb2xvcjogJGNvbG9yO1xuICB9XG59XG5cbi8vLyBTZXRzIHRoZSBiYXNlIHN0eWxlcyBvZiBhIGhvbGxvdyBidXR0b24uXG4vLy8gU2VlIG1peGluIGBidXR0b24taG9sbG93LXN0eWxlYCBmb3IgdGhlIGZpbGxpbmcgc3R5bGVzLlxuQG1peGluIGJ1dHRvbi1ob2xsb3cge1xuICAmLCAmLmRpc2FibGVkLCAmW2Rpc2FibGVkXSB7XG4gICAgJiwgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8vIFNldHMgdGhlIHZpc3VhbCBzdHlsZSBvZiBhIGhvbGxvdyBidXR0b24uXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskYnV0dG9uLWJhY2tncm91bmRdIC0gVGV4dCBhbmQgYm9yZGVyIGNvbG9yIG9mIHRoZSBidXR0b24uXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGhvdmVyLWxpZ2h0bmVzcyBbJGJ1dHRvbi1ob2xsb3ctaG92ZXItbGlnaHRuZXNzXSAtIENvbG9yIGxpZ2h0bmVzcyBvbiBob3Zlci5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYm9yZGVyLXdpZHRoIFskYnV0dG9uLWhvbGxvdy1ib3JkZXItd2lkdGhdIC0gQm9yZGVyIHdpZHRoIG9mIHRoZSBidXR0b24uXG5AbWl4aW4gYnV0dG9uLWhvbGxvdy1zdHlsZShcbiAgJGNvbG9yOiAkYnV0dG9uLWJhY2tncm91bmQsXG4gICRob3Zlci1saWdodG5lc3M6ICRidXR0b24taG9sbG93LWhvdmVyLWxpZ2h0bmVzcyxcbiAgJGJvcmRlci13aWR0aDogJGJ1dHRvbi1ob2xsb3ctYm9yZGVyLXdpZHRoXG4pIHtcbiAgJGNvbG9yLWhvdmVyOiBzY2FsZS1jb2xvcigkY29sb3IsICRsaWdodG5lc3M6ICRob3Zlci1saWdodG5lc3MpO1xuXG4gIC8vIERlZmF1bHQgYW5kIGRpc2FibGVkIHN0YXRlc1xuICAmLFxuICAmLmRpc2FibGVkLCAmW2Rpc2FibGVkXSxcbiAgJi5kaXNhYmxlZDpob3ZlciwgJltkaXNhYmxlZF06aG92ZXIsXG4gICYuZGlzYWJsZWQ6Zm9jdXMsICZbZGlzYWJsZWRdOmZvY3VzIHtcbiAgICBib3JkZXI6ICRib3JkZXItd2lkdGggc29saWQgJGNvbG9yO1xuICAgIGNvbG9yOiAkY29sb3I7XG4gIH1cblxuICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6ICRjb2xvci1ob3ZlcjtcbiAgICBjb2xvcjogJGNvbG9yLWhvdmVyO1xuICB9XG59XG5cbi8vLyBTZXRzIHRoZSBiYXNlIHN0eWxlcyBvZiBhIGNsZWFyIGJ1dHRvbi5cbi8vLyBTZWUgbWl4aW4gYGJ1dHRvbi1jbGVhci1zdHlsZWAgZm9yIHRoZSBmaWxsaW5nIHN0eWxlcy5cbkBtaXhpbiBidXR0b24tY2xlYXIge1xuICAmLCAmLmRpc2FibGVkLCAmW2Rpc2FibGVkXSB7XG4gICAgJiwgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vLyBTZXRzIHRoZSB2aXN1YWwgc3R5bGUgb2YgYSBjbGVhciBidXR0b24uXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskYnV0dG9uLWJhY2tncm91bmRdIC0gVGV4dCBjb2xvciBvZiB0aGUgYnV0dG9uLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRob3Zlci1saWdodG5lc3MgWyRidXR0b24taG9sbG93LWhvdmVyLWxpZ2h0bmVzc10gLSBDb2xvciBsaWdodG5lc3Mgb24gaG92ZXIuXG5AbWl4aW4gYnV0dG9uLWNsZWFyLXN0eWxlKFxuICAkY29sb3I6ICRidXR0b24tYmFja2dyb3VuZCxcbiAgJGhvdmVyLWxpZ2h0bmVzczogJGJ1dHRvbi1ob2xsb3ctaG92ZXItbGlnaHRuZXNzXG4pIHtcbiAgJGNvbG9yLWhvdmVyOiBzY2FsZS1jb2xvcigkY29sb3IsICRsaWdodG5lc3M6ICRob3Zlci1saWdodG5lc3MpO1xuXG4gIC8vIERlZmF1bHQgYW5kIGRpc2FibGVkIHN0YXRlc1xuICAmLFxuICAmLmRpc2FibGVkLCAmW2Rpc2FibGVkXSxcbiAgJi5kaXNhYmxlZDpob3ZlciwgJltkaXNhYmxlZF06aG92ZXIsXG4gICYuZGlzYWJsZWQ6Zm9jdXMsICZbZGlzYWJsZWRdOmZvY3VzIHtcbiAgICBjb2xvcjogJGNvbG9yO1xuICB9XG5cbiAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgY29sb3I6ICRjb2xvci1ob3ZlcjtcbiAgfVxufVxuXG4vLy8gQWRkcyBkaXNhYmxlZCBzdHlsZXMgdG8gYSBidXR0b24gYnkgZmFkaW5nIHRoZSBlbGVtZW50IGFuZCByZXNldGluZyB0aGUgY3Vyc29yLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkb3BhY2l0eSBbJGJ1dHRvbi1vcGFjaXR5LWRpc2FibGVkXSAtIE9wYWNpdHkgb2YgdGhlIGRpc2FibGVkIGJ1dHRvbi5cbkBtaXhpbiBidXR0b24tZGlzYWJsZWQoXG4gICRvcGFjaXR5OiAkYnV0dG9uLW9wYWNpdHktZGlzYWJsZWRcbikge1xuICBvcGFjaXR5OiAkYnV0dG9uLW9wYWNpdHktZGlzYWJsZWQ7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG59XG5cbi8vLyBBZGRzIGEgZHJvcGRvd24gYXJyb3cgdG8gYSBidXR0b24uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRzaXplIFswLjRlbV0gLSBTaXplIG9mIHRoZSBhcnJvdy4gV2UgcmVjb21tZW5kIHVzaW5nIGFuIGBlbWAgdmFsdWUgc28gdGhlIHRyaWFuZ2xlIHNjYWxlcyB3aGVuIHVzZWQgaW5zaWRlIGRpZmZlcmVudCBzaXplcyBvZiBidXR0b25zLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbd2hpdGVdIC0gQ29sb3Igb2YgdGhlIGFycm93LlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkb2Zmc2V0IFskYnV0dG9uLXBhZGRpbmddIC0gRGlzdGFuY2UgYmV0d2VlbiB0aGUgYXJyb3cgYW5kIHRoZSB0ZXh0IG9mIHRoZSBidXR0b24uIERlZmF1bHRzIHRvIHdoYXRldmVyIHRoZSByaWdodCBwYWRkaW5nIG9mIGEgYnV0dG9uIGlzLlxuQG1peGluIGJ1dHRvbi1kcm9wZG93bihcbiAgJHNpemU6IDAuNGVtLFxuICAkY29sb3I6ICR3aGl0ZSxcbiAgJG9mZnNldDogZ2V0LXNpZGUoJGJ1dHRvbi1wYWRkaW5nLCByaWdodClcbikge1xuICAmOjphZnRlciB7XG4gICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCRzaXplLCAkY29sb3IsIGRvd24pO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IDAuNGVtOyAvLyBBbGlnbnMgdGhlIGFycm93IHdpdGggdGhlIHRleHQgb2YgdGhlIGJ1dHRvblxuXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZsb2F0OiAjeyRnbG9iYWwtcmlnaHR9O1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06ICRvZmZzZXQ7XG4gIH1cbn1cblxuLy8vIEFkZHMgYWxsIHN0eWxlcyBmb3IgYSBidXR0b24uIEZvciBtb3JlIGdyYW51bGFyIGNvbnRyb2wgb3ZlciBzdHlsZXMsIHVzZSB0aGUgaW5kaXZpZHVhbCBidXR0b24gbWl4aW5zLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGV4cGFuZCBbZmFsc2VdIC0gU2V0IHRvIGB0cnVlYCB0byBtYWtlIHRoZSBidXR0b24gZnVsbC13aWR0aC5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZCBbJGJ1dHRvbi1iYWNrZ3JvdW5kXSAtIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGJ1dHRvbi5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZC1ob3ZlciBbJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyXSAtIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGJ1dHRvbiBvbiBob3Zlci4gU2V0IHRvIGBhdXRvYCB0byBoYXZlIHRoZSBtaXhpbiBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlIGEgaG92ZXIgY29sb3IuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskYnV0dG9uLWNvbG9yXSAtIFRleHQgY29sb3Igb2YgdGhlIGJ1dHRvbi4gU2V0IHRvIGBhdXRvYCB0byBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlIGEgY29sb3IgYmFzZWQgb24gdGhlIGJhY2tncm91bmQgY29sb3IuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc3R5bGUgW3NvbGlkXSAtIFNldCB0byBgaG9sbG93YCB0byBjcmVhdGUgYSBob2xsb3cgYnV0dG9uLiBUaGUgY29sb3IgZGVmaW5lZCBpbiBgJGJhY2tncm91bmRgIHdpbGwgYmUgdXNlZCBhcyB0aGUgcHJpbWFyeSBjb2xvciBvZiB0aGUgYnV0dG9uLlxuQG1peGluIGJ1dHRvbihcbiAgJGV4cGFuZDogZmFsc2UsXG4gICRiYWNrZ3JvdW5kOiAkYnV0dG9uLWJhY2tncm91bmQsXG4gICRiYWNrZ3JvdW5kLWhvdmVyOiAkYnV0dG9uLWJhY2tncm91bmQtaG92ZXIsXG4gICRjb2xvcjogJGJ1dHRvbi1jb2xvcixcbiAgJHN0eWxlOiAkYnV0dG9uLWZpbGxcbikge1xuICBAaW5jbHVkZSBidXR0b24tYmFzZTtcbiAgQGluY2x1ZGUgYnV0dG9uLWZpbGwoJHN0eWxlKTtcbiAgQGluY2x1ZGUgYnV0dG9uLWZpbGwtc3R5bGUoJHN0eWxlLCAkYmFja2dyb3VuZCwgJGJhY2tncm91bmQtaG92ZXIsICRjb2xvcik7XG5cbiAgQGlmICRleHBhbmQge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1leHBhbmQ7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tYnV0dG9uIHtcbiAgLmJ1dHRvbiB7XG4gICAgQGluY2x1ZGUgYnV0dG9uKCRzdHlsZTogbm9uZSk7XG5cbiAgICAvLyBTaXplc1xuICAgIEBlYWNoICRzaXplLCAkdmFsdWUgaW4gbWFwLXJlbW92ZSgkYnV0dG9uLXNpemVzLCBkZWZhdWx0KSB7XG4gICAgICAmLiN7JHNpemV9IHtcbiAgICAgICAgZm9udC1zaXplOiAkdmFsdWU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5leHBhbmRlZCB7IEBpbmNsdWRlIGJ1dHRvbi1leHBhbmQ7IH1cblxuICAgIEBpZiAkYnV0dG9uLXJlc3BvbnNpdmUtZXhwYW5kZWQge1xuICAgICAgQGVhY2ggJHNpemUgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoI3skc2l6ZX0gb25seSkge1xuICAgICAgICAgICYuI3skc2l6ZX0tb25seS1leHBhbmRlZCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBidXR0b24tZXhwYW5kO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBAaWYgJHNpemUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoI3skc2l6ZX0gZG93bikge1xuICAgICAgICAgICAgJi4jeyRzaXplfS1kb3duLWV4cGFuZGVkIHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWV4cGFuZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCN7JHNpemV9KSB7XG4gICAgICAgICAgICAmLiN7JHNpemV9LWV4cGFuZGVkIHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWV4cGFuZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTb2xpZCwgaG9sbG93ICYgY2xlYXIgc3R5bGVzXG4gICAgQGVhY2ggJGZpbGxpbmcgaW4gKHNvbGlkIGhvbGxvdyBjbGVhcikge1xuICAgICAgJHNlbGVjdG9yOiBpZigkYnV0dG9uLWZpbGwgPT0gJGZpbGxpbmcsIG51bGwsICcuI3skZmlsbGluZ30nKTtcblxuICAgICAgJiN7JHNlbGVjdG9yfSB7XG4gICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1maWxsKCRmaWxsaW5nKTtcbiAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWZpbGwtc3R5bGUoJGZpbGxpbmcpO1xuXG4gICAgICAgIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGJ1dHRvbi1wYWxldHRlIHtcbiAgICAgICAgICAmLiN7JG5hbWV9IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1maWxsLXN0eWxlKCRmaWxsaW5nLCAkY29sb3IsIGF1dG8sIGF1dG8pO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIERpc2FibGVkIHN0YXRlXG4gICAgJi5kaXNhYmxlZCwgJltkaXNhYmxlZF0ge1xuICAgICAgQGluY2x1ZGUgYnV0dG9uLWRpc2FibGVkO1xuICAgIH1cblxuICAgIC8vIERyb3Bkb3duIGFycm93XG4gICAgJi5kcm9wZG93biB7XG4gICAgICBAaW5jbHVkZSBidXR0b24tZHJvcGRvd247XG5cbiAgICAgIEBpZiAkYnV0dG9uLWZpbGwgPT0gaG9sbG93IHtcbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6ICRidXR0b24tYmFja2dyb3VuZDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLmhvbGxvdywgJi5jbGVhciB7XG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAkYnV0dG9uLWJhY2tncm91bmQ7XG4gICAgICAgIH1cblxuICAgICAgICBAZWFjaCAkbmFtZSwgJGNvbG9yIGluICRidXR0b24tcGFsZXR0ZSB7XG4gICAgICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6ICRjb2xvcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBCdXR0b24gd2l0aCBkcm9wZG93biBhcnJvdyBvbmx5XG4gICAgJi5hcnJvdy1vbmx5OjphZnRlciB7XG4gICAgICB0b3A6IC0wLjFlbTtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogMDtcbiAgICB9XG4gIH1cblxuICBhLmJ1dHRvbiB7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tcXVhbGlmeWluZy1lbGVtZW50c1xuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbkBpbXBvcnQgJ21hdGgnO1xuXG4kY29udHJhc3Qtd2FybmluZ3M6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBQYXRjaCB0byBmaXggaXNzdWUgIzEyMDgwXG4kcHJpbWFyeS1jb2xvcjogbnVsbCAhZGVmYXVsdDtcbiRzZWNvbmRhcnktY29sb3I6IG51bGwgIWRlZmF1bHQ7XG4kd2FybmluZy1jb2xvcjogbnVsbCAhZGVmYXVsdDtcbiRhbGVydC1jb2xvcjogbnVsbCAhZGVmYXVsdDtcbiRzdWNjZXNzLWNvbG9yOiBudWxsICFkZWZhdWx0O1xuXG4vLy8vXG4vLy8gQGdyb3VwIGZ1bmN0aW9uc1xuLy8vL1xuXG4vLy8gQ2hlY2tzIHRoZSBsdW1pbmFuY2Ugb2YgYCRjb2xvcmAuXG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgLSBDb2xvciB0byBjaGVjayB0aGUgbHVtaW5hbmNlIG9mLlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gVGhlIGx1bWluYW5jZSBvZiBgJGNvbG9yYC5cbkBmdW5jdGlvbiBjb2xvci1sdW1pbmFuY2UoJGNvbG9yKSB7XG4gIC8vIEFkYXB0ZWQgZnJvbTogaHR0cHM6Ly9naXRodWIuY29tL0xlYVZlcm91L2NvbnRyYXN0LXJhdGlvL2Jsb2IvZ2gtcGFnZXMvY29sb3IuanNcbiAgLy8gRm9ybXVsYTogaHR0cDovL3d3dy53My5vcmcvVFIvMjAwOC9SRUMtV0NBRzIwLTIwMDgxMjExLyNyZWxhdGl2ZWx1bWluYW5jZWRlZlxuICAkcmdiYTogcmVkKCRjb2xvciksIGdyZWVuKCRjb2xvciksIGJsdWUoJGNvbG9yKTtcbiAgJHJnYmEyOiAoKTtcblxuICBAZm9yICRpIGZyb20gMSB0aHJvdWdoIDMge1xuICAgICRyZ2I6IG50aCgkcmdiYSwgJGkpO1xuICAgICRyZ2I6IGRpdmlkZSgkcmdiLCAyNTUpO1xuXG4gICAgJHJnYjogaWYoJHJnYiA8IDAuMDM5MjgsIGRpdmlkZSgkcmdiLCAxMi45MiksIHBvdyhkaXZpZGUoJHJnYiArIDAuMDU1LCAxLjA1NSksIDIuNCkpO1xuXG4gICAgJHJnYmEyOiBhcHBlbmQoJHJnYmEyLCAkcmdiKTtcbiAgfVxuXG4gIEByZXR1cm4gMC4yMTI2ICogbnRoKCRyZ2JhMiwgMSkgKyAwLjcxNTIgKiBudGgoJHJnYmEyLCAyKSArIDAuMDcyMiAqIG50aCgkcmdiYTIsIDMpO1xufVxuXG4vLy8gQ2hlY2tzIHRoZSBjb250cmFzdCByYXRpbyBvZiB0d28gY29sb3JzLlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yMSAtIEZpcnN0IGNvbG9yIHRvIGNvbXBhcmUuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yMiAtIFNlY29uZCBjb2xvciB0byBjb21wYXJlLlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gVGhlIGNvbnRyYXN0IHJhdGlvIG9mIHRoZSBjb21wYXJlZCBjb2xvcnMuXG5AZnVuY3Rpb24gY29sb3ItY29udHJhc3QoJGNvbG9yMSwgJGNvbG9yMikge1xuICAvLyBBZGFwdGVkIGZyb206IGh0dHBzOi8vZ2l0aHViLmNvbS9MZWFWZXJvdS9jb250cmFzdC1yYXRpby9ibG9iL2doLXBhZ2VzL2NvbG9yLmpzXG4gIC8vIEZvcm11bGE6IGh0dHA6Ly93d3cudzMub3JnL1RSLzIwMDgvUkVDLVdDQUcyMC0yMDA4MTIxMS8jY29udHJhc3QtcmF0aW9kZWZcbiAgJGx1bWluYW5jZTE6IGNvbG9yLWx1bWluYW5jZSgkY29sb3IxKSArIDAuMDU7XG4gICRsdW1pbmFuY2UyOiBjb2xvci1sdW1pbmFuY2UoJGNvbG9yMikgKyAwLjA1O1xuICAkcmF0aW86IGRpdmlkZSgkbHVtaW5hbmNlMSwgJGx1bWluYW5jZTIpO1xuXG4gIEBpZiAkbHVtaW5hbmNlMiA+ICRsdW1pbmFuY2UxIHtcbiAgICAkcmF0aW86IGRpdmlkZSgxLCAkcmF0aW8pO1xuICB9XG5cbiAgJHJhdGlvOiByb3VuZCgkcmF0aW8gKiAxMCkgKiAwLjE7XG5cbiAgQHJldHVybiAkcmF0aW87XG59XG5cbi8vLyBDaGVja3MgdGhlIGx1bWluYW5jZSBvZiBgJGJhc2VgLCBhbmQgcmV0dXJucyB0aGUgY29sb3IgZnJvbSBgJGNvbG9yc2AgKGxpc3Qgb2YgY29sb3JzKSB0aGF0IGhhcyB0aGUgbW9zdCBjb250cmFzdC5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYXNlIC0gQ29sb3IgdG8gY2hlY2sgbHVtaW5hbmNlLlxuLy8vIEBwYXJhbSB7TGlzdH0gJGNvbG9ycyBbKCR3aGl0ZSwgJGJsYWNrKV0gLSBDb2xvcnMgdG8gY29tcGFyZS5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHRvbGVyYW5jZSBbJGdsb2JhbC1jb2xvci1waWNrLWNvbnRyYXN0LXRvbGVyYW5jZV0gLSBDb250cmFzdCB0b2xlcmFuY2UuXG4vLy9cbi8vLyBAcmV0dXJucyB7Q29sb3J9IHRoZSBjb2xvciBmcm9tIGAkY29sb3JzYCAobGlzdCBvZiBjb2xvcnMpIHRoYXQgaGFzIHRoZSBtb3N0IGNvbnRyYXN0LlxuQGZ1bmN0aW9uIGNvbG9yLXBpY2stY29udHJhc3QoJGJhc2UsICRjb2xvcnM6ICgkd2hpdGUsICRibGFjayksICR0b2xlcmFuY2U6ICRnbG9iYWwtY29sb3ItcGljay1jb250cmFzdC10b2xlcmFuY2UpIHtcbiAgJGNvbnRyYXN0OiBjb2xvci1jb250cmFzdCgkYmFzZSwgbnRoKCRjb2xvcnMsIDEpKTtcbiAgJGJlc3Q6IG50aCgkY29sb3JzLCAxKTtcblxuICBAZm9yICRpIGZyb20gMiB0aHJvdWdoIGxlbmd0aCgkY29sb3JzKSB7XG4gICAgJGN1cnJlbnQtY29udHJhc3Q6IGNvbG9yLWNvbnRyYXN0KCRiYXNlLCBudGgoJGNvbG9ycywgJGkpKTtcbiAgICBAaWYgKCRjdXJyZW50LWNvbnRyYXN0IC0gJGNvbnRyYXN0ID4gJHRvbGVyYW5jZSkge1xuICAgICAgJGNvbnRyYXN0OiBjb2xvci1jb250cmFzdCgkYmFzZSwgbnRoKCRjb2xvcnMsICRpKSk7XG4gICAgICAkYmVzdDogbnRoKCRjb2xvcnMsICRpKTtcbiAgICB9XG4gIH1cblxuICBAaWYgKCRjb250cmFzdC13YXJuaW5ncyBhbmQgJGNvbnRyYXN0IDwgMykge1xuICAgIEB3YXJuICdDb250cmFzdCByYXRpbyBvZiAjeyRiZXN0fSBvbiAjeyRiYXNlfSBpcyBwcmV0dHkgYmFkLCBqdXN0ICN7JGNvbnRyYXN0fSc7XG4gIH1cblxuICBAcmV0dXJuICRiZXN0O1xufVxuXG4vLy8gU2NhbGVzIGEgY29sb3IgdG8gYmUgZGFya2VyIGlmIGl0J3MgbGlnaHQsIG9yIGxpZ2h0ZXIgaWYgaXQncyBkYXJrLiBVc2UgdGhpcyBmdW5jdGlvbiB0byB0aW50IGEgY29sb3IgYXBwcm9wcmlhdGUgdG8gaXRzIGxpZ2h0bmVzcy5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciAtIENvbG9yIHRvIHNjYWxlLlxuLy8vIEBwYXJhbSB7UGVyY2VudGFnZX0gJHNjYWxlIFs1JV0gLSBBbW91bnQgdG8gc2NhbGUgdXAgb3IgZG93bi5cbi8vLyBAcGFyYW0ge1BlcmNlbnRhZ2V9ICR0aHJlc2hvbGQgWzQwJV0gLSBUaHJlc2hvbGQgb2YgbGlnaHRuZXNzIHRvIGNoZWNrIGFnYWluc3QuXG4vLy9cbi8vLyBAcmV0dXJucyB7Q29sb3J9IEEgc2NhbGVkIGNvbG9yLlxuQGZ1bmN0aW9uIHNtYXJ0LXNjYWxlKCRjb2xvciwgJHNjYWxlOiA1JSwgJHRocmVzaG9sZDogNDAlKSB7XG4gIEBpZiBsaWdodG5lc3MoJGNvbG9yKSA+ICR0aHJlc2hvbGQge1xuICAgICRzY2FsZTogLSRzY2FsZTtcbiAgfVxuICBAcmV0dXJuIHNjYWxlLWNvbG9yKCRjb2xvciwgJGxpZ2h0bmVzczogJHNjYWxlKTtcbn1cblxuLy8vIEdldCBjb2xvciBmcm9tIGZvdW5kYXRpb24tcGFsZXR0ZVxuLy8vXG4vLy8gQHBhcmFtIHtrZXl9IGNvbG9yIGtleSBmcm9tIGZvdW5kYXRpb24tcGFsZXR0ZVxuLy8vXG4vLy8gQHJldHVybnMge0NvbG9yfSBjb2xvciBmcm9tIGZvdW5kYXRpb24tcGFsZXR0ZVxuQGZ1bmN0aW9uIGdldC1jb2xvcigka2V5KSB7XG4gIEBpZiBtYXAtaGFzLWtleSgkZm91bmRhdGlvbi1wYWxldHRlLCAka2V5KSB7XG4gICAgQHJldHVybiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsICRrZXkpO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAZXJyb3IgJ2dpdmVuICRrZXkgaXMgbm90IGF2YWlsYWJsZSBpbiAkZm91bmRhdGlvbi1wYWxldHRlJztcbiAgfVxufVxuXG4vLy8gVHJhbnNmZXJzIHRoZSBjb2xvcnMgaW4gdGhlIGAkZm91bmRhdGlvbi1wYWxldHRlYCBtYXAgaW50byB2YXJpYWJsZXMsIHN1Y2ggYXMgYCRwcmltYXJ5LWNvbG9yYCBhbmQgYCRzZWNvbmRhcnktY29sb3JgLiBDYWxsIHRoaXMgbWl4aW4gYmVsb3cgdGhlIEdsb2JhbCBzZWN0aW9uIG9mIHlvdXIgc2V0dGluZ3MgZmlsZSB0byBwcm9wZXJseSBtaWdyYXRlIHlvdXIgY29kZWJhc2UuXG5AbWl4aW4gYWRkLWZvdW5kYXRpb24tY29sb3JzKCkge1xuICBAaWYgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgcHJpbWFyeSkge1xuICAgICRwcmltYXJ5LWNvbG9yOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHByaW1hcnkpICFnbG9iYWw7XG4gIH0gQGVsc2Uge1xuICAgICRwcmltYXJ5LWNvbG9yOiAjMTc3OWJhICFnbG9iYWw7XG4gIH1cbiAgQGlmIG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHNlY29uZGFyeSkge1xuICAgICRzZWNvbmRhcnktY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgc2Vjb25kYXJ5KSAhZ2xvYmFsO1xuICB9IEBlbHNlIHtcbiAgICAkc2Vjb25kYXJ5LWNvbG9yOiAjNzY3Njc2ICFnbG9iYWw7XG4gIH1cbiAgQGlmIG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHN1Y2Nlc3MpIHtcbiAgICAkc3VjY2Vzcy1jb2xvcjogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBzdWNjZXNzKSAhZ2xvYmFsO1xuICB9IEBlbHNlIHtcbiAgICAkc3VjY2Vzcy1jb2xvcjogIzNhZGI3NiAhZ2xvYmFsO1xuICB9XG4gIEBpZiBtYXAtaGFzLWtleSgkZm91bmRhdGlvbi1wYWxldHRlLCB3YXJuaW5nKSB7XG4gICAgJHdhcm5pbmctY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgd2FybmluZykgIWdsb2JhbDtcbiAgfSBAZWxzZSB7XG4gICAgJHdhcm5pbmctY29sb3I6ICNmZmFlMDAgIWdsb2JhbDtcbiAgfVxuICBAaWYgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgYWxlcnQpIHtcbiAgICAkYWxlcnQtY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgYWxlcnQpICFnbG9iYWw7XG4gIH0gQGVsc2Uge1xuICAgICRhbGVydC1jb2xvcjogI2NjNGIzNyAhZ2xvYmFsO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgdHlwb2dyYXBoeS1iYXNlXG4vLy8vXG5cbi8vIEJhc2UgVHlwb2dyYXBoeVxuLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC1cbi8vIFRoZXNlIGFyZSBzdHlsZXMgYXBwbGllZCB0byBiYXNpYyBIVE1MIHRhZ3MsIGluY2x1ZGluZzpcbi8vICAgLSBQYXJhZ3JhcGhzIDxwPlxuLy8gICAtIEJvbGQvaXRhbGljcyA8Yj4gPHN0cm9uZz4gPGk+IDxlbT5cbi8vICAgLSBTbWFsbCB0ZXh0IDxzbWFsbD5cbi8vICAgLSBIZWFkaW5ncyA8aDE+LTxoNj5cbi8vICAgLSBBbmNob3JzIDxhPlxuLy8gICAtIERpdmlkZXJzIDxocj5cbi8vICAgLSBMaXN0cyA8dWw+IDxvbD4gPGRsPlxuLy8gICAtIEJsb2NrcXVvdGVzIDxibG9ja3F1b3RlPlxuLy8gICAtIENvZGUgYmxvY2tzIDxjb2RlPlxuLy8gICAtIEFiYnJldmlhdGlvbnMgPGFiYnI+XG4vLyAgIC0gQ2l0YXRpb25zIDxjaXRlPlxuLy8gICAtIEtleXN0cm9rZXMgPGtiZD5cblxuLy8vIEZvbnQgZmFtaWx5IGZvciBoZWFkZXIgZWxlbWVudHMuXG4vLy8gQHR5cGUgU3RyaW5nIHwgTGlzdFxuJGhlYWRlci1mb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHdlaWdodCBvZiBoZWFkZXJzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGhlYWRlci1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzdHlsZSAoZS5nLiBpdGFsaWNpemVkKSBvZiBoZWFkZXJzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGhlYWRlci1mb250LXN0eWxlOiBub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHN0YWNrIHVzZWQgZm9yIGVsZW1lbnRzIHRoYXQgdXNlIG1vbm9zcGFjZWQgdHlwZSwgc3VjaCBhcyBjb2RlIHNhbXBsZXNcbi8vLyBAdHlwZSBTdHJpbmcgfCBMaXN0XG4kZm9udC1mYW1pbHktbW9ub3NwYWNlOiBDb25zb2xhcywgJ0xpYmVyYXRpb24gTW9ubycsIENvdXJpZXIsIG1vbm9zcGFjZSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIGhlYWRlcnMuXG4vLy8gQHR5cGUgQ29sb3JcbiRoZWFkZXItY29sb3I6IGluaGVyaXQgIWRlZmF1bHQ7XG5cbi8vLyBMaW5lIGhlaWdodCBvZiBoZWFkZXJzLlxuLy8vIEB0eXBlIE51bWJlclxuJGhlYWRlci1saW5laGVpZ2h0OiAxLjQgIWRlZmF1bHQ7XG5cbi8vLyBCb3R0b20gbWFyZ2luIG9mIGhlYWRlcnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kaGVhZGVyLW1hcmdpbi1ib3R0b206IDAuNXJlbSAhZGVmYXVsdDtcblxuLy8vIFN0eWxlcyBmb3IgaGVhZGluZ3MgYXQgdmFyaW91cyBzY3JlZW4gc2l6ZXMuIEVhY2gga2V5IGlzIGEgYnJlYWtwb2ludCwgYW5kIGVhY2ggdmFsdWUgaXMgYSBtYXAgb2YgaGVhZGluZyBzdHlsZXMuXG4vLy8gQHR5cGUgTWFwXG4kaGVhZGVyLXN0eWxlczogKFxuICBzbWFsbDogKFxuICAgICdoMSc6ICgnZm9udC1zaXplJzogMjQpLFxuICAgICdoMic6ICgnZm9udC1zaXplJzogMjApLFxuICAgICdoMyc6ICgnZm9udC1zaXplJzogMTkpLFxuICAgICdoNCc6ICgnZm9udC1zaXplJzogMTgpLFxuICAgICdoNSc6ICgnZm9udC1zaXplJzogMTcpLFxuICAgICdoNic6ICgnZm9udC1zaXplJzogMTYpLFxuICApLFxuICBtZWRpdW06IChcbiAgICAnaDEnOiAoJ2ZvbnQtc2l6ZSc6IDQ4KSxcbiAgICAnaDInOiAoJ2ZvbnQtc2l6ZSc6IDQwKSxcbiAgICAnaDMnOiAoJ2ZvbnQtc2l6ZSc6IDMxKSxcbiAgICAnaDQnOiAoJ2ZvbnQtc2l6ZSc6IDI1KSxcbiAgICAnaDUnOiAoJ2ZvbnQtc2l6ZSc6IDIwKSxcbiAgICAnaDYnOiAoJ2ZvbnQtc2l6ZSc6IDE2KSxcbiAgKSxcbikgIWRlZmF1bHQ7XG5cbi8vICRoZWFkZXItc3R5bGVzIG1hcCBpcyBidWlsdCBmcm9tICRoZWFkZXItc2l6ZXMgaW4gb3JkZXIgdG8gZW5zdXJlIGRvd253YXJkIGNvbXBhdGliaWxpdHlcbi8vIHdoZW4gJGhlYWRlci1zaXplcyBpcyBkZXByZWNpYXRlZCwgJGhlYWRlci1zdHlsZXMgbmVlZHMgdG8gZ2V0ICFkZWZhdWx0IHZhbHVlcyBsaWtlIHNldHRpbmdzLnNjc3NcbkBmdW5jdGlvbiBidWlsZC1mcm9tLWhlYWRlci1zaXplcygkaGVhZGVyLXNpemVzKSB7XG4gIEB3YXJuICdOb3RlLCB0aGF0ICRoZWFkZXItc2l6ZXMgaGFzIGJlZW4gcmVwbGFjZWQgd2l0aCAkaGVhZGVyLXN0eWxlcy4gJGhlYWRlci1zaXplcyBzdGlsbCB3b3JrcywgYnV0IGl0IGlzIGdvaW5nIHRvIGJlIGRlcHJlY2lhdGVkLic7XG4gICRoZWFkZXItc3R5bGVzOiAoKTtcbiAgQGVhY2ggJHNpemUsICRoZWFkZXJzIGluICRoZWFkZXItc2l6ZXMge1xuICAgICRoZWFkZXItbWFwOiAoKTtcbiAgICBAZWFjaCAkaGVhZGVyLCAkZm9udC1zaXplIGluICRoZWFkZXJzIHtcbiAgICAgICRoZWFkZXItbWFwOiBtYXAtbWVyZ2UoJGhlYWRlci1tYXAsICgkaGVhZGVyOiAoJ2ZvbnQtc2l6ZSc6ICRmb250LXNpemUpKSk7XG4gICAgfVxuICAgICRoZWFkZXItc3R5bGVzOiBtYXAtbWVyZ2UoJGhlYWRlci1zdHlsZXMsICgkc2l6ZTogJGhlYWRlci1tYXApKTtcbiAgfVxuICBAcmV0dXJuICRoZWFkZXItc3R5bGVzO1xufVxuXG4vLyBJZiBpdCBleGlzdHMgJGhlYWRlcnMtc2l6ZXMgaXMgdXNlZCB0byBidWlsZCAkaGVhZGVyLXN0eWxlcy4gU2VlIHRoZSBkb2N1bWVudGF0aW9uLlxuQGlmIHZhcmlhYmxlLWV4aXN0cyhoZWFkZXItc2l6ZXMpIHtcbiAgJGhlYWRlci1zdHlsZXM6IGJ1aWxkLWZyb20taGVhZGVyLXNpemVzKCRoZWFkZXItc2l6ZXMpO1xufVxuXG4vLy8gVGV4dCByZW5kZXJpbmcgbWV0aG9kIG9mIGhlYWRlcnMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kaGVhZGVyLXRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgb2YgYDxzbWFsbD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJHNtYWxsLWZvbnQtc2l6ZTogODAlICFkZWZhdWx0O1xuXG4vLy8gQ29sb3Igb2YgYDxzbWFsbD5gIGVsZW1lbnRzIHdoZW4gcGxhY2VkIGluc2lkZSBoZWFkZXJzLlxuLy8vIEB0eXBlIENvbG9yXG4kaGVhZGVyLXNtYWxsLWZvbnQtY29sb3I6ICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIExpbmUgaGVpZ2h0IG9mIHRleHQgaW5zaWRlIGA8cD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJHBhcmFncmFwaC1saW5laGVpZ2h0OiAxLjYgIWRlZmF1bHQ7XG5cbi8vLyBCb3R0b20gbWFyZ2luIG9mIHBhcmFncmFwaHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcGFyYWdyYXBoLW1hcmdpbi1ib3R0b206IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IHJlbmRlcmluZyBtZXRob2QgZm9yIHBhcmFncmFwaCB0ZXh0LlxuLy8vIEB0eXBlIFN0cmluZ1xuJHBhcmFncmFwaC10ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5ICFkZWZhdWx0O1xuXG4vLy8gVXNlIHRoZSBgLmNvZGUtaW5saW5lYCBjb21wb25lbnQgYXMgZGVmYXVsdCBmb3IgYDxjb2RlPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGVuYWJsZS1jb2RlLWlubGluZTogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIGxpbmtzLlxuLy8vIEB0eXBlIENvbG9yXG4kYW5jaG9yLWNvbG9yOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIGxpbmtzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIENvbG9yXG4kYW5jaG9yLWNvbG9yLWhvdmVyOiBzY2FsZS1jb2xvcigkYW5jaG9yLWNvbG9yLCAkbGlnaHRuZXNzOiAtMTQlKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdGV4dCBkZWNvcmF0aW9uIGZvciBsaW5rcy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRhbmNob3ItdGV4dC1kZWNvcmF0aW9uOiBub25lICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB0ZXh0IGRlY29yYXRpb24gZm9yIGxpbmtzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGFuY2hvci10ZXh0LWRlY29yYXRpb24taG92ZXI6IG5vbmUgIWRlZmF1bHQ7XG5cbi8vLyBNYXhpbXVtIHdpZHRoIG9mIGEgZGl2aWRlci5cbi8vLyBAdHlwZSBOdW1iZXJcbiRoci13aWR0aDogJGdsb2JhbC13aWR0aCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm9yZGVyIGZvciBhIGRpdmlkZXIuXG4vLy8gQHR5cGUgTGlzdFxuJGhyLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbWFyZ2luIGZvciBhIGRpdmlkZXIuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGhyLW1hcmdpbjogcmVtLWNhbGMoMjApIGF1dG8gIWRlZmF1bHQ7XG5cbi8vLyBMaW5lIGhlaWdodCBmb3IgaXRlbXMgaW4gYSBsaXN0LlxuLy8vIEB0eXBlIE51bWJlclxuJGxpc3QtbGluZWhlaWdodDogJHBhcmFncmFwaC1saW5laGVpZ2h0ICFkZWZhdWx0O1xuXG4vLy8gQm90dG9tIG1hcmdpbiBmb3IgaXRlbXMgaW4gYSBsaXN0LlxuLy8vIEB0eXBlIE51bWJlclxuJGxpc3QtbWFyZ2luLWJvdHRvbTogJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tICFkZWZhdWx0O1xuXG4vLy8gQnVsbGV0IHR5cGUgdG8gdXNlIGZvciB1bm9yZGVyZWQgbGlzdHMgKGUuZy4sIGBzcXVhcmVgLCBgY2lyY2xlYCwgYGRpc2NgKS5cbi8vLyBAdHlwZSBTdHJpbmdcbiRsaXN0LXN0eWxlLXR5cGU6IGRpc2MgIWRlZmF1bHQ7XG5cbi8vLyBQb3NpdGlvbmluZyBmb3IgYnVsbGV0cyBvbiB1bm9yZGVyZWQgbGlzdCBpdGVtcy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRsaXN0LXN0eWxlLXBvc2l0aW9uOiBvdXRzaWRlICFkZWZhdWx0O1xuXG4vLy8gTGVmdCAob3IgcmlnaHQpIG1hcmdpbiBmb3IgbGlzdHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGlzdC1zaWRlLW1hcmdpbjogMS4yNXJlbSAhZGVmYXVsdDtcblxuLy8vIExlZnQgKG9yIHJpZ2h0KSBtYXJnaW4gZm9yIGEgbGlzdCBpbnNpZGUgYSBsaXN0LlxuLy8vIEB0eXBlIE51bWJlclxuJGxpc3QtbmVzdGVkLXNpZGUtbWFyZ2luOiAxLjI1cmVtICFkZWZhdWx0O1xuXG4vLy8gQm90dG9tIG1hcmdpbiBmb3IgYDxkbD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGRlZm5saXN0LW1hcmdpbi1ib3R0b206IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBGb250IHdlaWdodCBmb3IgYDxkdD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGRlZm5saXN0LXRlcm0td2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkICFkZWZhdWx0O1xuXG4vLy8gU3BhY2luZyBiZXR3ZWVuIGA8ZHQ+YCBhbmQgYDxkZD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGRlZm5saXN0LXRlcm0tbWFyZ2luLWJvdHRvbTogMC4zcmVtICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBvZiBgPGJsb2NrcXVvdGU+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBDb2xvclxuJGJsb2NrcXVvdGUtY29sb3I6ICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGluc2lkZSBhIGA8YmxvY2txdW90ZT5gIGVsZW1lbnQuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGJsb2NrcXVvdGUtcGFkZGluZzogcmVtLWNhbGMoOSAyMCAwIDE5KSAhZGVmYXVsdDtcblxuLy8vIFNpZGUgYm9yZGVyIGZvciBgPGJsb2NrcXVvdGU+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBMaXN0XG4kYmxvY2txdW90ZS1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBVc2UgdGhlIGAuY2l0ZS1ibG9ja2AgY29tcG9uZW50IGFzIGRlZmF1bHQgZm9yIGA8Y2l0ZT5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRlbmFibGUtY2l0ZS1ibG9jazogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgZmFtaWx5IGZvciBgPGtiZD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIFN0cmluZyB8IExpc3RcbiRrZXlzdHJva2UtZm9udDogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZSAhZGVmYXVsdDtcblxuLy8vIFRleHQgY29sb3IgZm9yIGA8a2JkPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRrZXlzdHJva2UtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3IgZm9yIGA8a2JkPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRrZXlzdHJva2UtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGZvciBgPGtiZD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRrZXlzdHJva2UtcGFkZGluZzogcmVtLWNhbGMoMiA0IDApICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIHJhZGl1cyBmb3IgYDxrYmQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4ka2V5c3Ryb2tlLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vLyBCb3R0b20gYm9yZGVyIHN0eWxlIGZvciBgPGFiYnI+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBMaXN0XG4kYWJici11bmRlcmxpbmU6IDFweCBkb3R0ZWQgJGJsYWNrICFkZWZhdWx0O1xuXG5AbWl4aW4gZm91bmRhdGlvbi10eXBvZ3JhcGh5LWJhc2Uge1xuICAvLyBUeXBvZ3JhcGh5IHJlc2V0c1xuICBkaXYsXG4gIGRsLFxuICBkdCxcbiAgZGQsXG4gIHVsLFxuICBvbCxcbiAgbGksXG4gIGgxLFxuICBoMixcbiAgaDMsXG4gIGg0LFxuICBoNSxcbiAgaDYsXG4gIHByZSxcbiAgZm9ybSxcbiAgcCxcbiAgYmxvY2txdW90ZSxcbiAgdGgsXG4gIHRkIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuXG4gIC8vIFBhcmFncmFwaHNcbiAgcCB7XG4gICAgbWFyZ2luLWJvdHRvbTogJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tO1xuXG4gICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgIGxpbmUtaGVpZ2h0OiAkcGFyYWdyYXBoLWxpbmVoZWlnaHQ7XG4gICAgdGV4dC1yZW5kZXJpbmc6ICRwYXJhZ3JhcGgtdGV4dC1yZW5kZXJpbmc7XG4gIH1cblxuICAvLyBFbXBoYXNpemVkIHRleHRcbiAgZW0sXG4gIGkge1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIFN0cm9uZyB0ZXh0XG4gIHN0cm9uZyxcbiAgYiB7XG4gICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG4gICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIH1cblxuICAvLyBTbWFsbCB0ZXh0XG4gIHNtYWxsIHtcbiAgICBmb250LXNpemU6ICRzbWFsbC1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIH1cblxuICAvLyBIZWFkaW5nc1xuICBoMSwgLmgxLFxuICBoMiwgLmgyLFxuICBoMywgLmgzLFxuICBoNCwgLmg0LFxuICBoNSwgLmg1LFxuICBoNiwgLmg2IHtcbiAgICBmb250LWZhbWlseTogJGhlYWRlci1mb250LWZhbWlseTtcbiAgICBmb250LXN0eWxlOiAkaGVhZGVyLWZvbnQtc3R5bGU7XG4gICAgZm9udC13ZWlnaHQ6ICRoZWFkZXItZm9udC13ZWlnaHQ7XG4gICAgY29sb3I6ICRoZWFkZXItY29sb3I7XG4gICAgdGV4dC1yZW5kZXJpbmc6ICRoZWFkZXItdGV4dC1yZW5kZXJpbmc7XG5cbiAgICBzbWFsbCB7XG4gICAgICBsaW5lLWhlaWdodDogMDtcbiAgICAgIGNvbG9yOiAkaGVhZGVyLXNtYWxsLWZvbnQtY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLy8gSGVhZGluZyBzdHlsZXNcbiAgQGVhY2ggJHNpemUsICRoZWFkZXJzIGluICRoZWFkZXItc3R5bGVzIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplKSB7XG4gICAgICBAZWFjaCAkaGVhZGVyLCAkaGVhZGVyLWRlZnMgaW4gJGhlYWRlcnMge1xuICAgICAgICAkZm9udC1zaXplLXRlbXA6IDFyZW07XG4gICAgICAgICN7JGhlYWRlcn0sIC4jeyRoZWFkZXJ9IHtcblxuICAgICAgICAgIEBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIGZvbnQtc2l6ZSkge1xuICAgICAgICAgICAgJGZvbnQtc2l6ZS10ZW1wOiByZW0tY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgZm9udC1zaXplKSk7XG4gICAgICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtdGVtcDtcbiAgICAgICAgICB9IEBlbHNlIGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgZnMpIHtcbiAgICAgICAgICAgICRmb250LXNpemUtdGVtcDogcmVtLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIGZzKSk7XG4gICAgICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtdGVtcDtcbiAgICAgICAgICB9IEBlbHNlIGlmICRzaXplID09ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS10ZW1wO1xuICAgICAgICAgIH1cbiAgICAgICAgICBAaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBsaW5lLWhlaWdodCkge1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHVuaXRsZXNzLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIGxpbmUtaGVpZ2h0KSwgJGZvbnQtc2l6ZS10ZW1wKTtcbiAgICAgICAgICB9IEBlbHNlIGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgbGgpIHtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB1bml0bGVzcy1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBsaCksICRmb250LXNpemUtdGVtcCk7XG4gICAgICAgICAgfSBAZWxzZSBpZiAkc2l6ZSA9PSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogdW5pdGxlc3MtY2FsYygkaGVhZGVyLWxpbmVoZWlnaHQsICRmb250LXNpemUtdGVtcCk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgQGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgbWFyZ2luLXRvcCkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIG1hcmdpbi10b3ApKTtcbiAgICAgICAgICB9IEBlbHNlIGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgbXQpIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBtdCkpO1xuICAgICAgICAgIH0gQGVsc2UgaWYgJHNpemUgPT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICB9XG4gICAgICAgICAgQGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgbWFyZ2luLWJvdHRvbSkge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIG1hcmdpbi1ib3R0b20pKTtcbiAgICAgICAgICB9IEBlbHNlIGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgbWIpIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBtYikpO1xuICAgICAgICAgIH0gQGVsc2UgaWYgJHNpemUgPT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoJGhlYWRlci1tYXJnaW4tYm90dG9tKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBMaW5rc1xuICBhIHtcbiAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgICBjb2xvcjogJGFuY2hvci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246ICRhbmNob3ItdGV4dC1kZWNvcmF0aW9uO1xuXG4gICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAkYW5jaG9yLWNvbG9yLWhvdmVyO1xuICAgICAgQGlmICRhbmNob3ItdGV4dC1kZWNvcmF0aW9uLWhvdmVyICE9ICRhbmNob3ItdGV4dC1kZWNvcmF0aW9uIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiAkYW5jaG9yLXRleHQtZGVjb3JhdGlvbi1ob3ZlcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpbWcge1xuICAgICAgYm9yZGVyOiAwO1xuICAgIH1cbiAgfVxuXG4gIC8vIEhvcml6b250YWwgcnVsZVxuICBociB7XG4gICAgY2xlYXI6IGJvdGg7XG5cbiAgICBtYXgtd2lkdGg6ICRoci13aWR0aDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgbWFyZ2luOiAkaHItbWFyZ2luO1xuXG4gICAgYm9yZGVyLXRvcDogMDtcbiAgICBib3JkZXItcmlnaHQ6IDA7XG4gICAgYm9yZGVyLWJvdHRvbTogJGhyLWJvcmRlcjtcbiAgICBib3JkZXItbGVmdDogMDtcbiAgfVxuXG4gIC8vIExpc3RzXG4gIHVsLFxuICBvbCxcbiAgZGwge1xuICAgIG1hcmdpbi1ib3R0b206ICRsaXN0LW1hcmdpbi1ib3R0b207XG4gICAgbGlzdC1zdHlsZS1wb3NpdGlvbjogJGxpc3Qtc3R5bGUtcG9zaXRpb247XG4gICAgbGluZS1oZWlnaHQ6ICRsaXN0LWxpbmVoZWlnaHQ7XG4gIH1cblxuICAvLyBMaXN0IGl0ZW1zXG4gIGxpIHtcbiAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gIH1cblxuICAvLyBVbm9yZGVyZWQgbGlzdHNcbiAgdWwge1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06ICRsaXN0LXNpZGUtbWFyZ2luO1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogJGxpc3Qtc3R5bGUtdHlwZTtcbiAgfVxuXG4gIC8vIE9yZGVyZWQgbGlzdHNcbiAgb2wge1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06ICRsaXN0LXNpZGUtbWFyZ2luO1xuICB9XG5cbiAgLy8gTmVzdGVkIHVub3JkZXJlZC9vcmRlcmVkIGxpc3RzXG4gIHVsLCBvbCB7XG4gICAgJiAmIHtcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06ICRsaXN0LW5lc3RlZC1zaWRlLW1hcmdpbjtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG5cbiAgLy8gRGVmaW5pdGlvbiBsaXN0c1xuICBkbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogJGRlZm5saXN0LW1hcmdpbi1ib3R0b207XG5cbiAgICBkdCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAkZGVmbmxpc3QtdGVybS1tYXJnaW4tYm90dG9tO1xuICAgICAgZm9udC13ZWlnaHQ6ICRkZWZubGlzdC10ZXJtLXdlaWdodDtcbiAgICB9XG4gIH1cblxuICAvLyBCbG9ja3F1b3Rlc1xuICBibG9ja3F1b3RlIHtcbiAgICBtYXJnaW46IDAgMCAkcGFyYWdyYXBoLW1hcmdpbi1ib3R0b207XG4gICAgcGFkZGluZzogJGJsb2NrcXVvdGUtcGFkZGluZztcbiAgICBib3JkZXItI3skZ2xvYmFsLWxlZnR9OiAkYmxvY2txdW90ZS1ib3JkZXI7XG5cbiAgICAmLCBwIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAkcGFyYWdyYXBoLWxpbmVoZWlnaHQ7XG4gICAgICBjb2xvcjogJGJsb2NrcXVvdGUtY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLy8gSW5saW5lIENpdGF0aW9uc1xuICBAaWYgKCRlbmFibGUtY2l0ZS1ibG9jayA9PSB0cnVlKSB7XG4gICAgY2l0ZSB7XG4gICAgICAvLyBFeHRlbmRpbmcgYSBjbGFzcyBpcyBub3QgcmVjb21tZW5kZWQuXG4gICAgICAvLyBUT0RPOiBCcmVhayB0aGUgdHlwb2dyYXBoeS1iYXNlL3R5cG9ncmFwaHktaGVscGVycyBzZXBhcmF0aW9uXG4gICAgICBAZXh0ZW5kICVjaXRlLWJsb2NrO1xuICAgIH1cbiAgfVxuXG4gIC8vIEFiYnJldmlhdGlvbnNcbiAgYWJiciwgYWJiclt0aXRsZV0ge1xuICAgIGJvcmRlci1ib3R0b206ICRhYmJyLXVuZGVybGluZTtcbiAgICBjdXJzb3I6IGhlbHA7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgLy8gRmlndXJlc1xuICBmaWd1cmUge1xuICAgIG1hcmdpbjogMDtcbiAgfVxuXG4gIC8vIENvZGVcbiAgQGlmICgkZW5hYmxlLWNvZGUtaW5saW5lID09IHRydWUpIHtcbiAgICBjb2RlIHtcbiAgICAgIEBleHRlbmQgJWNvZGUtaW5saW5lO1xuICAgIH1cbiAgfVxuXG4gIC8vIEtleXN0cm9rZXNcbiAga2JkIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogJGtleXN0cm9rZS1wYWRkaW5nO1xuXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGtleXN0cm9rZS1iYWNrZ3JvdW5kO1xuXG4gICAgZm9udC1mYW1pbHk6ICRrZXlzdHJva2UtZm9udDtcbiAgICBjb2xvcjogJGtleXN0cm9rZS1jb2xvcjtcblxuICAgIEBpZiBoYXMtdmFsdWUoJGtleXN0cm9rZS1yYWRpdXMpIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6ICRrZXlzdHJva2UtcmFkaXVzO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHR5cG9ncmFwaHktaGVscGVyc1xuLy8vL1xuXG4vLy8gRGVmYXVsdCBmb250IHNpemUgZm9yIGxlYWQgcGFyYWdyYXBocy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsZWFkLWZvbnQtc2l6ZTogJGdsb2JhbC1mb250LXNpemUgKiAxLjI1ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBsaW5lIGhlaWdodCBmb3IgbGVhZCBwYXJhZ3JhcGhzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGxlYWQtbGluZWhlaWdodDogMS42ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBsaW5lIGhlaWdodCBmb3Igc3ViaGVhZGVycy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzdWJoZWFkZXItbGluZWhlaWdodDogMS40ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IGNvbG9yIGZvciBzdWJoZWFkZXJzLlxuLy8vIEB0eXBlIENvbG9yXG4kc3ViaGVhZGVyLWNvbG9yOiAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHdlaWdodCBmb3Igc3ViaGVhZGVycy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRzdWJoZWFkZXItZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdG9wIG1hcmdpbiBmb3Igc3ViaGVhZGVycy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzdWJoZWFkZXItbWFyZ2luLXRvcDogMC4ycmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3R0b20gbWFyZ2luIGZvciBzdWJoZWFkZXJzLlxuLy8vIEB0eXBlIE51bWJlclxuJHN1YmhlYWRlci1tYXJnaW4tYm90dG9tOiAwLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgc2l6ZSBmb3Igc3RhdGlzdGljIG51bWJlcnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc3RhdC1mb250LXNpemU6IDIuNXJlbSAhZGVmYXVsdDtcblxuLy8vIFRleHQgY29sb3IgZm9yIGAuY2l0ZS1ibG9ja2AgY29tcG9uZW50LlxuLy8vIEB0eXBlIENvbG9yXG4kY2l0ZS1jb2xvcjogJGRhcmstZ3JheSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc2l6ZSBmb3IgYC5jaXRlLWJsb2NrYCBjb21wb25lbnQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kY2l0ZS1mb250LXNpemU6IHJlbS1jYWxjKDEzKSAhZGVmYXVsdDtcblxuLy8vIFBzZXVkbyBjb250ZW50IGZvciBgLmNpdGUtYmxvY2tgIGNvbXBvbmVudC5cbi8vLyBAdHlwZSBTdHJpbmdcbiRjaXRlLXBzZXVkby1jb250ZW50OiAnXFwyMDE0IFxcMDAyMCcgIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIG9mIGAuY29kZS1pbmxpbmVgIGFuZCBgLmNvZGUtYmxvY2tgIGNvbXBvbmVudHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRjb2RlLWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBGb250IGZhbWlseSBvZiBgLmNvZGUtaW5saW5lYCBhbmQgYC5jb2RlLWJsb2NrYCBjb21wb25lbnRzLlxuLy8vIEB0eXBlIFN0cmluZyB8IExpc3RcbiRjb2RlLWZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktbW9ub3NwYWNlICFkZWZhdWx0O1xuXG4vLy8gRm9udCB3ZWlnaHQgb2YgdGV4dCBpbiBgLmNvZGUtaW5saW5lYCBhbmQgYC5jb2RlLWJsb2NrYCBjb21wb25lbnRzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGNvZGUtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgYC5jb2RlLWlubGluZWAgYW5kIGAuY29kZS1ibG9ja2AgY29tcG9uZW50cy5cbi8vLyBAdHlwZSBDb2xvclxuJGNvZGUtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgYXJvdW5kIGAuY29kZS1pbmxpbmVgIGFuZCBgLmNvZGUtYmxvY2tgIGNvbXBvbmVudHMuXG4vLy8gQHR5cGUgTGlzdFxuJGNvZGUtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBhcm91bmQgdGV4dCBvZiB0aGUgYC5jb2RlLWlubGluZWAgY29tcG9uZW50LlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRjb2RlLXBhZGRpbmc6IHJlbS1jYWxjKDIgNSAxKSAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgYXJvdW5kIHRleHQgb2YgdGhlIGAuY29kZS1ibG9ja2AgY29tcG9uZW50LlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRjb2RlLWJsb2NrLXBhZGRpbmc6IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBNYXJnaW4gdW5kZXIgdGhlIGAuY29kZS1ibG9ja2AgY29tcG9uZW50LlxuLy8vIEB0eXBlIE51bWJlclxuJGNvZGUtYmxvY2stbWFyZ2luLWJvdHRvbTogMS41cmVtICFkZWZhdWx0O1xuXG5AbWl4aW4gY2l0ZS1ibG9jayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjb2xvcjogJGNpdGUtY29sb3I7XG4gIGZvbnQtc2l6ZTogJGNpdGUtZm9udC1zaXplO1xuXG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkY2l0ZS1wc2V1ZG8tY29udGVudDtcbiAgfVxufVxuXG4vLy8gQWRkIGJhc2ljIHN0eWxlcyBmb3IgYSBjb2RlIGhlbHBlci5cbi8vLyBTZWUgYGNvZGUtaW5saW5lYCBhbmQgYGNvZGUtYmxvY2tgIG1peGlucy5cbkBtaXhpbiBjb2RlLXN0eWxlIHtcbiAgYm9yZGVyOiAkY29kZS1ib3JkZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2RlLWJhY2tncm91bmQ7XG5cbiAgZm9udC1mYW1pbHk6ICRjb2RlLWZvbnQtZmFtaWx5O1xuICBmb250LXdlaWdodDogJGNvZGUtZm9udC13ZWlnaHQ7XG4gIGNvbG9yOiAkY29kZS1jb2xvcjtcbn1cblxuLy8vIE1ha2UgY29kZSBoZWxwZXIgZnJvbSB0aGUgYGNvZGUtc3R5bGVgIG1peGluIGlubGluZS5cbi8vLyBVc2VkIHRvIGdlbmVyYXRlIGAuY29kZS1pbmxpbmVgXG5AbWl4aW4gY29kZS1pbmxpbmUge1xuICBkaXNwbGF5OiBpbmxpbmU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuXG4gIHBhZGRpbmc6ICRjb2RlLXBhZGRpbmc7XG59XG5cbi8vLyBNYWtlIGNvZGUgaGVscGVyIGZyb20gdGhlIGBjb2RlLXN0eWxlYCBtaXhpbiBhIGJsb2NrLlxuLy8vIFVzZWQgdG8gZ2VuZXJhdGUgYC5jb2RlLWJsb2NrYFxuQG1peGluIGNvZGUtYmxvY2sge1xuICBkaXNwbGF5OiBibG9jaztcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIHdoaXRlLXNwYWNlOiBwcmU7XG5cbiAgcGFkZGluZzogJGNvZGUtYmxvY2stcGFkZGluZztcbiAgbWFyZ2luLWJvdHRvbTogJGNvZGUtYmxvY2stbWFyZ2luLWJvdHRvbTtcbn1cblxuQG1peGluIGZvdW5kYXRpb24tdHlwb2dyYXBoeS1oZWxwZXJzIHtcbiAgLy8gVXNlIHRvIGNyZWF0ZSBhIHN1YmhlYWRpbmcgdW5kZXIgYSBtYWluIGhlYWRlclxuICAvLyBNYWtlIHN1cmUgeW91IHBhaXIgdGhlIHR3byBlbGVtZW50cyBpbiBhIDxoZWFkZXI+IGVsZW1lbnQsIGxpa2UgdGhpczpcbiAgLy8gPGhlYWRlcj5cbiAgLy8gICA8aDE+SGVhZGluZzwvaDE+XG4gIC8vICAgPGgyPlN1YmhlYWRpbmc8L2gyPlxuICAvLyA8L2hlYWRlcj5cbiAgLnN1YmhlYWRlciB7XG4gICAgbWFyZ2luLXRvcDogJHN1YmhlYWRlci1tYXJnaW4tdG9wO1xuICAgIG1hcmdpbi1ib3R0b206ICRzdWJoZWFkZXItbWFyZ2luLWJvdHRvbTtcblxuICAgIGZvbnQtd2VpZ2h0OiAkc3ViaGVhZGVyLWZvbnQtd2VpZ2h0O1xuICAgIGxpbmUtaGVpZ2h0OiAkc3ViaGVhZGVyLWxpbmVoZWlnaHQ7XG4gICAgY29sb3I6ICRzdWJoZWFkZXItY29sb3I7XG4gIH1cblxuICAvLyBVc2UgdG8gc3R5bGUgYW4gaW50cm9kdWN0b3J5IGxlYWQsIGRlY2ssIGJsdXJiLCBldGMuXG4gIC5sZWFkIHtcbiAgICBmb250LXNpemU6ICRsZWFkLWZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogJGxlYWQtbGluZWhlaWdodDtcbiAgfVxuXG4gIC8vIFVzZSB0byBzdHlsZSBhIGxhcmdlIG51bWJlciB0byBkaXNwbGF5IGEgc3RhdGlzdGljXG4gIC5zdGF0IHtcbiAgICBmb250LXNpemU6ICRzdGF0LWZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogMTtcblxuICAgIHAgKyAmIHtcbiAgICAgIG1hcmdpbi10b3A6IC0xcmVtO1xuICAgIH1cbiAgfVxuXG4gIHVsLCBvbCB7XG4gICAgLy8gVXNlIHRvIHJlbW92ZSBudW1iZXJzIGZyb20gb3JkZXJlZCBsaXN0ICYgYnVsbGV0cyBmcm9tIHVub3JkZXJlZCBsaXN0XG4gICAgJi5uby1idWxsZXQge1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogMDtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgJWNpdGUtYmxvY2sge1xuICAgIEBpbmNsdWRlIGNpdGUtYmxvY2s7XG4gIH1cblxuICAuY2l0ZS1ibG9jayB7XG4gICAgQGV4dGVuZCAlY2l0ZS1ibG9jaztcbiAgfVxuXG4gICVjb2RlLWlubGluZSB7XG4gICAgQGluY2x1ZGUgY29kZS1zdHlsZTtcbiAgICBAaW5jbHVkZSBjb2RlLWlubGluZTtcbiAgfVxuXG4gIC5jb2RlLWlubGluZSB7XG4gICAgQGV4dGVuZCAlY29kZS1pbmxpbmU7XG4gIH1cblxuICAuY29kZS1ibG9jayB7XG4gICAgQGluY2x1ZGUgY29kZS1zdHlsZTtcbiAgICBAaW5jbHVkZSBjb2RlLWJsb2NrO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbkBtaXhpbiBmb3VuZGF0aW9uLXRleHQtYWxpZ25tZW50IHtcbiAgQGVhY2ggJHNpemUgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgICAgQGVhY2ggJGFsaWduIGluIChsZWZ0LCByaWdodCwgY2VudGVyLCBqdXN0aWZ5KSB7XG4gICAgICAgIEBpZiAkc2l6ZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICAgLiN7JHNpemV9LXRleHQtI3skYWxpZ259IHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246ICRhbGlnbjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgQGVsc2Uge1xuICAgICAgICAgIC50ZXh0LSN7JGFsaWdufSB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiAkYWxpZ247XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLyBJZiBgdHJ1ZWAsIGFsbCBlbGVtZW50cyB3aWxsIGhhdmUgdHJhbnNwYXJlbnQgYmFja2dyb3VuZHMgd2hlbiBwcmludGVkLCB0byBzYXZlIG9uIGluay5cbi8vLyBAdHlwZSBCb29sZWFuXG4vLy8gQGdyb3VwIGdsb2JhbFxuJHByaW50LXRyYW5zcGFyZW50LWJhY2tncm91bmRzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gSWYgYHRydWVgLCBkaXNwbGF5cyBuZXh0IHRvIGFsbCBsaW5rcyB0aGVpciBcImhyZWZcIiB3aGVuIHByaW50ZWQuXG4vLy8gQHR5cGUgQm9vbGVhblxuLy8vIEBncm91cCBnbG9iYWxcbiRwcmludC1ocmVmczogdHJ1ZSAhZGVmYXVsdDtcblxuLy8gc2Fzcy1saW50OmRpc2FibGUtYWxsXG5cbkBtaXhpbiBmb3VuZGF0aW9uLXByaW50LXN0eWxlcyB7XG4gIC5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG4gIEBtZWRpYSBwcmludCB7XG4gICAgKiB7XG4gICAgICAvLyBFbnN1cmUgYSBcImJsYWNrLW9uLXdoaXRlXCIgcHJpbnQgYnkgcmVtb3ZpbmcgYmFja2dyb3VuZHMsXG4gICAgICAvLyB1c2luZyBibGFjayB0ZXh0IGV2ZXJ5d2hlcmUgYW5kIGZvcmNpbmcgdGhlIGJyb3dzZXIgdG8gZWNvbm9taXplIGluay5cbiAgICAgIEBpZiAkcHJpbnQtdHJhbnNwYXJlbnQtYmFja2dyb3VuZHMge1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgICBjb2xvcjogYmxhY2sgIWltcG9ydGFudDsgLy8gQmxhY2sgcHJpbnRzIGZhc3RlcjogaDVicC5jb20vc1xuICAgICAgICBjb2xvci1hZGp1c3Q6IGVjb25vbXk7XG4gICAgICB9XG4gICAgICAvLyBPdGhlcndpc2UsIHByZXZlbnQgYW55IGVjb25vbXkgYnkgdGhlIGJyb3dzZXIuXG4gICAgICBAZWxzZSB7XG4gICAgICAgIGNvbG9yLWFkanVzdDogZXhhY3Q7XG4gICAgICB9XG5cbiAgICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIHRleHQtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfVxuICAgIC5oaWRlLWZvci1wcmludCB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG4gICAgdGFibGUuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50OyB9XG4gICAgdGhlYWQuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXAgIWltcG9ydGFudDsgfVxuICAgIHRib2R5LnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUtcm93LWdyb3VwICFpbXBvcnRhbnQ7IH1cbiAgICB0ci5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50OyB9XG4gICAgdGQuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7IH1cbiAgICB0aC5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDsgfVxuXG4gICAgLy8gRGlzcGxheSB0aGUgVVJMIG9mIGEgbGluayBhZnRlciB0aGUgdGV4dFxuICAgIGEsXG4gICAgYTp2aXNpdGVkIHsgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7fVxuICAgIEBpZiAkcHJpbnQtaHJlZnMge1xuICAgICAgYVtocmVmXTphZnRlciB7IGNvbnRlbnQ6ICcgKCcgYXR0cihocmVmKSAnKSc7IH1cbiAgICB9XG5cbiAgICAvLyBEb24ndCBkaXNwbGF5IHRoZSBVUkwgZm9yIGltYWdlcyBvciBKYXZhU2NyaXB0L2ludGVybmFsIGxpbmtzXG4gICAgLmlyIGE6YWZ0ZXIsXG4gICAgYVtocmVmXj0namF2YXNjcmlwdDonXTphZnRlcixcbiAgICBhW2hyZWZePScjJ106YWZ0ZXIgeyBjb250ZW50OiAnJzsgfVxuXG4gICAgLy8gRGlzcGxheSB3aGF0IGFuIGFiYnJldmlhdGlvbiBzdGFuZHMgZm9yIGFmdGVyIHRoZSB0ZXh0XG4gICAgYWJiclt0aXRsZV06YWZ0ZXIgeyBjb250ZW50OiAnICgnIGF0dHIodGl0bGUpICcpJzsgfVxuXG4gICAgLy8gUHJldmVudCBwYWdlIGJyZWFrcyBpbiB0aGUgbWlkZGxlIG9mIGEgYmxvY2txdW90ZSBvciBwcmVmb3JtYXR0ZWQgdGV4dCBibG9ja1xuICAgIHByZSxcbiAgICBibG9ja3F1b3RlIHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRkYXJrLWdyYXk7XG4gICAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7XG4gICAgfVxuXG4gICAgLy8gaDVicC5jb20vdFxuICAgIHRoZWFkIHsgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwOyB9XG5cbiAgICB0cixcbiAgICBpbWcgeyBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7IH1cblxuICAgIGltZyB7IG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50OyB9XG5cbiAgICBAcGFnZSB7IG1hcmdpbjogMC41Y207IH1cblxuICAgIHAsXG4gICAgaDIsXG4gICAgaDMge1xuICAgICAgb3JwaGFuczogMztcbiAgICAgIHdpZG93czogMztcbiAgICB9XG5cbiAgICAvLyBBdm9pZCBwYWdlIGJyZWFrcyBhZnRlciBhIGhlYWRpbmdcbiAgICBoMixcbiAgICBoMyB7IHBhZ2UtYnJlYWstYWZ0ZXI6IGF2b2lkOyB9XG5cbiAgICAvLyBIZWxwZXIgdG8gcmUtYWxsb3cgcGFnZSBicmVha3MgaW4gdGhlIG1pZGRsZSBvZiBjZXJ0YWluIGVsZW1lbnRzIChlLmcuIHByZSwgYmxvY2txdW90ZSwgdHIpXG4gICAgLnByaW50LWJyZWFrLWluc2lkZSB7XG4gICAgICBwYWdlLWJyZWFrLWluc2lkZTogYXV0bztcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBidXR0b24tZ3JvdXBcbi8vLy9cblxuLy8vIE1hcmdpbiBmb3IgYnV0dG9uIGdyb3Vwcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRidXR0b25ncm91cC1tYXJnaW46IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBNYXJnaW4gYmV0d2VlbiBidXR0b25zIGluIGEgYnV0dG9uIGdyb3VwLlxuLy8vIEB0eXBlIE51bWJlclxuJGJ1dHRvbmdyb3VwLXNwYWNpbmc6IDFweCAhZGVmYXVsdDtcblxuLy8vIFNlbGVjdG9yIGZvciB0aGUgYnV0dG9ucyBpbnNpZGUgYSBidXR0b24gZ3JvdXAuXG4vLy8gQHR5cGUgU3RyaW5nXG4kYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3I6ICcuYnV0dG9uJyAhZGVmYXVsdDtcblxuLy8vIE1heGltdW0gbnVtYmVyIG9mIGJ1dHRvbnMgdGhhdCBjYW4gYmUgaW4gYW4gZXZlbi13aWR0aCBidXR0b24gZ3JvdXAuIChPbmx5IG5lZWRlZCB3aGVuICRnbG9iYWwtZmxleGJveDogZmFsc2U7KVxuLy8vIEB0eXBlIE51bWJlclxuJGJ1dHRvbmdyb3VwLWV4cGFuZC1tYXg6IDYgIWRlZmF1bHQ7XG5cbi8vLyBEZXRlcm1pbmVzIGlmICRidXR0b24tcmFkaXVzIGlzIGFwcGxpZWQgdG8gZWFjaCBidXR0b24gb3IgdGhlIGJ1dHRvbiBncm91cCBhcyBhIHdob2xlLiBVc2UgJGdsb2JhbC1yYWRpdXMgaW4gX3NldHRpbmdzLnNjc3MgdG8gY2hhbmdlIHJhZGl1cy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kYnV0dG9uZ3JvdXAtcmFkaXVzLW9uLWVhY2g6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBBZGQgc3R5bGVzIGZvciBhIGJ1dHRvbiBncm91cCBjb250YWluZXIuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRjaGlsZC1zZWxlY3RvciBbJGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yXSAtIFNlbGVjdG9yIGZvciB0aGUgYnV0dG9ucyBpbnNpZGUgYSBidXR0b24gZ3JvdXAuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRzcGFjaW5nIFskYnV0dG9uZ3JvdXAtc3BhY2luZ10gLSBTcGFjaW5nIGJldHdlZW4gYnV0dG9ucyBpbiBhIGJ1dHRvbiBncm91cC5cbkBtaXhpbiBidXR0b24tZ3JvdXAoXG4gICRjaGlsZC1zZWxlY3RvcjogJGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yLFxuICAkc3BhY2luZzogJGJ1dHRvbmdyb3VwLXNwYWNpbmdcbikge1xuICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgbWFyZ2luLWJvdHRvbTogJGJ1dHRvbmdyb3VwLW1hcmdpbjtcblxuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICBmbGV4LWdyb3c6IDE7XG5cbiAgICAmOjpiZWZvcmUsXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogbm9uZTsgLy8gRGlzYWJsZSBjbGVhcmZpeFxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgZm9udC1zaXplOiAwO1xuICB9XG5cbiAgI3skY2hpbGQtc2VsZWN0b3J9IHtcbiAgICBtYXJnaW46IDA7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICRzcGFjaW5nO1xuICAgIG1hcmdpbi1ib3R0b206ICRzcGFjaW5nO1xuICAgIGZvbnQtc2l6ZTogbWFwLWdldCgkYnV0dG9uLXNpemVzLCBkZWZhdWx0KTtcblxuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgfVxuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAwO1xuICAgIH1cblxuICAgIEBpZiBub3QgJGJ1dHRvbmdyb3VwLXJhZGl1cy1vbi1lYWNoIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG5cbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItdG9wLSN7JGdsb2JhbC1sZWZ0fS1yYWRpdXM6ICRidXR0b24tcmFkaXVzO1xuICAgICAgICBib3JkZXItYm90dG9tLSN7JGdsb2JhbC1sZWZ0fS1yYWRpdXM6ICRidXR0b24tcmFkaXVzO1xuICAgICAgfVxuXG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItdG9wLSN7JGdsb2JhbC1yaWdodH0tcmFkaXVzOiAkYnV0dG9uLXJhZGl1cztcbiAgICAgICAgYm9yZGVyLWJvdHRvbS0jeyRnbG9iYWwtcmlnaHR9LXJhZGl1czogJGJ1dHRvbi1yYWRpdXM7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vLyBNYWtlIGJ1dHRvbnMgYm9uZGVkIHdpdGhvdXQgZ2FwIGJldHdlZW4gdGhlbS4gQm9yZGVycyBiZXR3ZWVuIGJ1dHRvbnMgYXJlIG1lcmdlZFxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkc2VsZWN0b3IgWyRidXR0b25ncm91cC1jaGlsZC1zZWxlY3Rvcl0gLSBTZWxlY3RvciBmb3IgdGhlIGJ1dHRvbnMgaW5zaWRlIGEgYnV0dG9uIGdyb3VwLlxuQG1peGluIGJ1dHRvbi1ncm91cC1uby1nYXBzKFxuICAkc2VsZWN0b3I6ICRidXR0b25ncm91cC1jaGlsZC1zZWxlY3RvcixcbiAgJGJvcmRlci13aWR0aDogJGJ1dHRvbi1ob2xsb3ctYm9yZGVyLXdpZHRoXG4pIHtcbiAgI3skc2VsZWN0b3J9IHtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogcmVtLWNhbGMoLSRib3JkZXItd2lkdGgpO1xuXG4gICAgKyAjeyRzZWxlY3Rvcn0ge1xuICAgICAgYm9yZGVyLSN7JGdsb2JhbC1sZWZ0fS1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vLyBDcmVhdGVzIGEgZnVsbC13aWR0aCBidXR0b24gZ3JvdXAsIG1ha2luZyBlYWNoIGJ1dHRvbiBlcXVhbCB3aWR0aC5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJHNlbGVjdG9yIFskYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3JdIC0gU2VsZWN0b3IgZm9yIHRoZSBidXR0b25zIGluc2lkZSBhIGJ1dHRvbiBncm91cC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHNwYWNpbmcgWyRidXR0b25ncm91cC1zcGFjaW5nXSAtIFNwYWNpbmcgYmV0d2VlbiBidXR0b25zIGluIGEgYnV0dG9uIGdyb3VwLlxuQG1peGluIGJ1dHRvbi1ncm91cC1leHBhbmQoXG4gICRzZWxlY3RvcjogJGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yLFxuICAkc3BhY2luZzogJGJ1dHRvbmdyb3VwLXNwYWNpbmcsXG4gICRjb3VudDogbnVsbFxuKSB7XG4gIEBpZiBub3QgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogLSRzcGFjaW5nO1xuXG4gICAgJjo6YmVmb3JlLFxuICAgICY6OmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IC8vIERpc2FibGUgY2xlYXJmaXhcbiAgICB9XG4gIH1cblxuICAjeyRzZWxlY3Rvcn0ge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleDogMSAxIDBweDsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSB6ZXJvLXVuaXRcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgLy8gT25lIGNoaWxkXG4gICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gI3skc3BhY2luZ30pO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIFR3byBvciBtb3JlIGNoaWxkcmVlblxuICAgICAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCAkYnV0dG9uZ3JvdXAtZXhwYW5kLW1heCB7XG4gICAgICAgICY6Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoI3skaX0pIHtcbiAgICAgICAgICAmLCAmOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKCN7JGl9KSB+ICN7JHNlbGVjdG9yfSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICB3aWR0aDogY2FsYygje3BlcmNlbnRhZ2UoZGl2aWRlKDEsICRpKSl9IC0gI3skc3BhY2luZ30pO1xuICAgICAgICAgICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICRzcGFjaW5nO1xuXG4gICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJHNwYWNpbmcgKiAtJGJ1dHRvbmdyb3VwLWV4cGFuZC1tYXg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vLyBTdGFja3MgdGhlIGJ1dHRvbnMgaW4gYSBidXR0b24gZ3JvdXAuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRzZWxlY3RvciBbJGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yXSAtIFNlbGVjdG9yIGZvciB0aGUgYnV0dG9ucyBpbnNpZGUgdGhlIGJ1dHRvbiBncm91cC5cbkBtaXhpbiBidXR0b24tZ3JvdXAtc3RhY2soXG4gICRzZWxlY3RvcjogJGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yXG4pIHtcbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICB9XG5cbiAgI3skc2VsZWN0b3J9IHtcbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICBAaWYgbm90ICRidXR0b25ncm91cC1yYWRpdXMtb24tZWFjaCB7XG4gICAgICBib3JkZXItcmFkaXVzOiAwO1xuXG4gICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLXRvcC0jeyRnbG9iYWwtbGVmdH0tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgICAgICAgYm9yZGVyLXRvcC0jeyRnbG9iYWwtcmlnaHR9LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gICAgICB9XG5cbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci1ib3R0b20tI3skZ2xvYmFsLWxlZnR9LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gICAgICAgIGJvcmRlci1ib3R0b20tI3skZ2xvYmFsLXJpZ2h0fS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLy8gVW4tc3RhY2tzIHRoZSBidXR0b25zIGluIGEgYnV0dG9uIGdyb3VwLlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkc2VsZWN0b3IgWyRidXR0b25ncm91cC1jaGlsZC1zZWxlY3Rvcl0gLSBTZWxlY3RvciBmb3IgdGhlIGJ1dHRvbnMgaW5zaWRlIHRoZSBidXR0b24gZ3JvdXAuXG5AbWl4aW4gYnV0dG9uLWdyb3VwLXVuc3RhY2soXG4gICRzZWxlY3RvcjogJGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yXG4pIHtcbiAgI3skc2VsZWN0b3J9IHtcbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICB9XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgIEBpZiBub3QgJGJ1dHRvbmdyb3VwLXJhZGl1cy1vbi1lYWNoIHtcbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItdG9wLSN7JGdsb2JhbC1sZWZ0fS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICAgICAgICBib3JkZXItdG9wLSN7JGdsb2JhbC1yaWdodH0tcmFkaXVzOiAwO1xuICAgICAgICBib3JkZXItYm90dG9tLSN7JGdsb2JhbC1sZWZ0fS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICAgICAgfVxuXG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItdG9wLSN7JGdsb2JhbC1yaWdodH0tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgICAgICAgYm9yZGVyLWJvdHRvbS0jeyRnbG9iYWwtcmlnaHR9LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gICAgICAgIGJvcmRlci1ib3R0b20tI3skZ2xvYmFsLWxlZnR9LXJhZGl1czogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1idXR0b24tZ3JvdXAge1xuICAuYnV0dG9uLWdyb3VwIHtcbiAgICBAaW5jbHVkZSBidXR0b24tZ3JvdXA7XG5cbiAgICAvLyBTaXplc1xuICAgIEBlYWNoICRzaXplLCAkdmFsdWUgaW4gbWFwLXJlbW92ZSgkYnV0dG9uLXNpemVzLCBkZWZhdWx0KSB7XG4gICAgICAmLiN7JHNpemV9ICN7JGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yfSB7XG4gICAgICAgIGZvbnQtc2l6ZTogJHZhbHVlO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEV2ZW4td2lkdGggR3JvdXBcbiAgICAmLmV4cGFuZGVkIHtcbiAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ncm91cC1leHBhbmQ7XG4gICAgfVxuXG4gICAgLy8gU29saWQsIGhvbGxvdyAmIGNsZWFyIHN0eWxlc1xuICAgIEBlYWNoICRmaWxsaW5nIGluIChzb2xpZCBob2xsb3cgY2xlYXIpIHtcbiAgICAgICRiYXNlLXNlbGVjdG9yOiBpZigkYnV0dG9uLWZpbGwgPT0gJGZpbGxpbmcsIG51bGwsICcuI3skZmlsbGluZ30nKTtcblxuICAgICAgJiN7JGJhc2Utc2VsZWN0b3J9IHtcbiAgICAgICAgLy8gRG8gbm90IGdlbmVyYXRlIGJ1dHRvbiBiYXNlIHN0eWxlcyBmb3IgdGhlIGRlZmF1bHQgZmlsbGluZ1xuICAgICAgICBAaWYoJGJ1dHRvbi1maWxsICE9ICRmaWxsaW5nKSB7XG4gICAgICAgICAgI3skYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3J9IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1maWxsKCRmaWxsaW5nKTtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1maWxsLXN0eWxlKCRmaWxsaW5nKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAZWFjaCAkbmFtZSwgJGNvbG9yIGluICRidXR0b24tcGFsZXR0ZSB7XG4gICAgICAgICAgJGluZGl2aWR1YWwtc2VsZWN0b3I6IGlmKCRidXR0b24tZmlsbCA9PSAkZmlsbGluZywgbnVsbCwgJyAjeyRidXR0b25ncm91cC1jaGlsZC1zZWxlY3Rvcn0uI3skbmFtZX0nKTtcblxuICAgICAgICAgICYuI3skbmFtZX0gI3skYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3J9LCAjeyRpbmRpdmlkdWFsLXNlbGVjdG9yfSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBidXR0b24tZmlsbC1zdHlsZSgkZmlsbGluZywgJGNvbG9yLCBhdXRvLCBhdXRvKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgIH1cblxuICAgICYubm8tZ2FwcyB7XG4gICAgICBAaW5jbHVkZSBidXR0b24tZ3JvdXAtbm8tZ2FwcztcbiAgICB9XG5cbiAgICAmLnN0YWNrZWQsXG4gICAgJi5zdGFja2VkLWZvci1zbWFsbCxcbiAgICAmLnN0YWNrZWQtZm9yLW1lZGl1bSB7XG4gICAgICBAaW5jbHVkZSBidXR0b24tZ3JvdXAtc3RhY2s7XG5cbiAgICAgICYuZXhwYW5kZWQge1xuICAgICAgICBAaW5jbHVkZSBidXR0b24tZ3JvdXAtZXhwYW5kO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuc3RhY2tlZC1mb3Itc21hbGwge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWdyb3VwLXVuc3RhY2s7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5zdGFja2VkLWZvci1tZWRpdW0ge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBAaW5jbHVkZSBidXR0b24tZ3JvdXAtdW5zdGFjaztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLnN0YWNrZWQtZm9yLXNtYWxsLmV4cGFuZGVkIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgICAjeyRidXR0b25ncm91cC1jaGlsZC1zZWxlY3Rvcn0ge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5zdGFja2VkLWZvci1tZWRpdW0uZXhwYW5kZWQge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgICAjeyRidXR0b25ncm91cC1jaGlsZC1zZWxlY3Rvcn0ge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgY2xvc2UtYnV0dG9uXG4vLy8vXG5cbi8vLyBEZWZhdWx0IHBvc2l0aW9uIG9mIHRoZSBjbG9zZSBidXR0b24uIFRoZSBmaXJzdCB2YWx1ZSBzaG91bGQgYmUgYHJpZ2h0YCBvciBgbGVmdGAsIGFuZCB0aGUgc2Vjb25kIHZhbHVlIHNob3VsZCBiZSBgdG9wYCBvciBgYm90dG9tYC5cbi8vLyBAdHlwZSBMaXN0XG4kY2xvc2VidXR0b24tcG9zaXRpb246IHJpZ2h0IHRvcCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgei1pbmRleCBmb3IgYSBjbG9zZSBidXR0b24uXG4vLy8gQHR5cGUgTnVtYmVyXG4kY2xvc2VidXR0b24tei1pbmRleDogMTAgIWRlZmF1bHQ7XG5cbi8vLyBCdXR0b24gc2l6ZSB0byB1c2UgYXMgZGVmYXVsdFxuLy8vIEB0eXBlIFN0cmluZ1xuLy8vIEBzZWUgJGNsb3NlYnV0dG9uLXNpemVcbi8vLyBAc2VlICRjbG9zZWJ1dHRvbi1vZmZzZXQtaG9yaXpvbnRhbFxuLy8vIEBzZWUgJGNsb3NlYnV0dG9uLW9mZnNldC12ZXJ0aWNhbFxuJGNsb3NlYnV0dG9uLWRlZmF1bHQtc2l6ZTogbWVkaXVtICFkZWZhdWx0O1xuXG4vLy8gUmlnaHQgKG9yIGxlZnQpIG9mZnNldChzKSBmb3IgYSBjbG9zZSBidXR0b24uXG4vLy8gQHR5cGUgTnVtYmVyfE1hcFxuJGNsb3NlYnV0dG9uLW9mZnNldC1ob3Jpem9udGFsOiAoXG4gIHNtYWxsOiAwLjY2cmVtLFxuICBtZWRpdW06IDFyZW0sXG4pICFkZWZhdWx0O1xuXG4vLy8gVG9wIChvciBib3R0b20pIG9mZnNldChzKSBmb3IgYSBjbG9zZSBidXR0b24uXG4vLy8gQHR5cGUgTnVtYmVyfE1hcFxuJGNsb3NlYnV0dG9uLW9mZnNldC12ZXJ0aWNhbDogKFxuICBzbWFsbDogMC4zM2VtLFxuICBtZWRpdW06IDAuNXJlbSxcbikgIWRlZmF1bHQ7XG5cbi8vLyBTaXplKHMpIG9mIHRoZSBjbG9zZSBidXR0b24uIFVzZWQgdG8gZ2VuZXJhdGUgc2l6aW5nIG1vZGlmaWVycy5cbi8vLyBAdHlwZSBOdW1iZXJ8TWFwXG4kY2xvc2VidXR0b24tc2l6ZTogKFxuICBzbWFsbDogMS41ZW0sXG4gIG1lZGl1bTogMmVtLFxuKSAhZGVmYXVsdDtcblxuLy8vIFRoZSBsaW5lLWhlaWdodCBvZiB0aGUgY2xvc2UgYnV0dG9uLiBJdCBhZmZlY3RzIHRoZSBzcGFjaW5nIG9mIHRoZSBlbGVtZW50LlxuLy8vIEB0eXBlIE51bWJlclxuJGNsb3NlYnV0dG9uLWxpbmVoZWlnaHQ6IDEgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIG9mIHRoZSBjbG9zZSBidXR0b24uXG4vLy8gQHR5cGUgQ29sb3JcbiRjbG9zZWJ1dHRvbi1jb2xvcjogJGRhcmstZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3Igb2YgdGhlIGNsb3NlIGJ1dHRvbiB3aGVuIGJlaW5nIGhvdmVyZWQgb24uXG4vLy8gQHR5cGUgQ29sb3JcbiRjbG9zZWJ1dHRvbi1jb2xvci1ob3ZlcjogJGJsYWNrICFkZWZhdWx0O1xuXG5cbi8vLyBHZXQgdGhlIHNpemUgYW5kIHBvc2l0aW9uIGZvciBhIGNsb3NlIGJ1dHRvbi4gSWYgdGhlIGlucHV0IHZhbHVlIGlzIGEgbnVtYmVyLCB0aGUgbnVtYmVyIGlzIHJldHVybmVkLiBJZiB0aGUgaW5wdXQgdmFsdWUgaXMgYSBjb25maWcgbWFwIGFuZCB0aGUgbWFwIGhhcyB0aGUga2V5IGAkc2l6ZWAsIHRoZSB2YWx1ZSBpcyByZXR1cm5lZC5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJHZhbHVlIC0gQSBudW1iZXIgb3IgbWFwIHRoYXQgcmVwcmVzZW50cyB0aGUgc2l6ZSBvciBwb3NpdGlvbiB2YWx1ZShzKSBvZiB0aGUgY2xvc2UgYnV0dG9uLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgLSBUaGUgc2l6ZSBvZiB0aGUgY2xvc2UgYnV0dG9uIHRvIHVzZS5cbi8vL1xuLy8vIEByZXR1cm4ge051bWJlcn0gVGhlIGdpdmVuIG51bWJlciBvciB0aGUgdmFsdWUgZm91bmQgaW4gdGhlIG1hcC5cbkBmdW5jdGlvbiAtemYtZ2V0LXNpemUtdmFsKCR2YWx1ZSwgJHNpemUpIHtcbiAgLy8gQ2hlY2sgaWYgdGhlIHZhbHVlIGlzIGEgbnVtYmVyXG4gIEBpZiB0eXBlLW9mKCR2YWx1ZSkgPT0gJ251bWJlcicge1xuICAgIC8vIElmIGl0IGlzLCBqdXN0IHJldHVybiB0aGUgbnVtYmVyXG4gICAgQHJldHVybiAkdmFsdWU7XG4gIH1cblxuICAvLyBDaGVjayBpZiB0aGUgc2l6ZSBuYW1lIGV4aXN0cyBpbiB0aGUgdmFsdWUgbWFwXG4gIEBlbHNlIGlmIG1hcC1oYXMta2V5KCR2YWx1ZSwgJHNpemUpIHtcbiAgICAvLyBJZiBpdCBkb2VzLCByZXR1cm4gdGhlIHZhbHVlXG4gICAgQHJldHVybiBtYXAtZ2V0KCR2YWx1ZSwgJHNpemUpO1xuICB9XG59XG5cbi8vLyBTZXRzIHRoZSBzaXplIGFuZCBwb3NpdGlvbiBvZiBhIGNsb3NlIGJ1dHRvbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIFttZWRpdW1dIC0gVGhlIHNpemUgdG8gdXNlLiBTZXQgdG8gYHNtYWxsYCB0byBjcmVhdGUgYSBzbWFsbCBjbG9zZSBidXR0b24uIFRoZSAnbWVkaXVtJyB2YWx1ZXMgZGVmaW5lZCBpbiBgJGNsb3NlYnV0dG9uLSpgIHZhcmlhYmxlcyB3aWxsIGJlIHVzZWQgYXMgdGhlIGRlZmF1bHQgc2l6ZSBhbmQgcG9zaXRpb24gb2YgdGhlIGNsb3NlIGJ1dHRvbi5cbkBtaXhpbiBjbG9zZS1idXR0b24tc2l6ZSgkc2l6ZSkge1xuICAkeDogbnRoKCRjbG9zZWJ1dHRvbi1wb3NpdGlvbiwgMSk7XG4gICR5OiBudGgoJGNsb3NlYnV0dG9uLXBvc2l0aW9uLCAyKTtcblxuICAjeyR4fTogLXpmLWdldC1zaXplLXZhbCgkY2xvc2VidXR0b24tb2Zmc2V0LWhvcml6b250YWwsICRzaXplKTtcbiAgI3skeX06IC16Zi1nZXQtc2l6ZS12YWwoJGNsb3NlYnV0dG9uLW9mZnNldC12ZXJ0aWNhbCwgJHNpemUpO1xuICBmb250LXNpemU6IC16Zi1nZXQtc2l6ZS12YWwoJGNsb3NlYnV0dG9uLXNpemUsICRzaXplKTtcbiAgbGluZS1oZWlnaHQ6IC16Zi1nZXQtc2l6ZS12YWwoJGNsb3NlYnV0dG9uLWxpbmVoZWlnaHQsICRzaXplKTtcbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIGNsb3NlIGJ1dHRvbiwgdXNpbmcgdGhlIHN0eWxlcyBpbiB0aGUgc2V0dGluZ3MgdmFyaWFibGVzLlxuQG1peGluIGNsb3NlLWJ1dHRvbiB7XG4gICR4OiBudGgoJGNsb3NlYnV0dG9uLXBvc2l0aW9uLCAxKTtcbiAgJHk6IG50aCgkY2xvc2VidXR0b24tcG9zaXRpb24sIDIpO1xuXG4gIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAkY2xvc2VidXR0b24tei1pbmRleDtcbiAgY29sb3I6ICRjbG9zZWJ1dHRvbi1jb2xvcjtcbiAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiAkY2xvc2VidXR0b24tY29sb3ItaG92ZXI7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tY2xvc2UtYnV0dG9uIHtcbiAgLmNsb3NlLWJ1dHRvbiB7XG4gICAgLy8gVXNlIGJ5IGRlZmF1bHQgdGhlIHBsYWNlaG9sZGVyIG9mIHRoZSBkZWZhdWx0IHNpemVcbiAgICBAZXh0ZW5kICV6Zi1jbG9zZS1idXR0b24tLSN7JGNsb3NlYnV0dG9uLWRlZmF1bHQtc2l6ZX07XG5cbiAgICBAaW5jbHVkZSBjbG9zZS1idXR0b247XG5cbiAgICAvLyBHZW5lcmF0ZSBhIHBsYWNlaG9sZGVyIGFuZCBhIGNsYXNzIGZvciBlYWNoIHNpemVcbiAgICBAZWFjaCAkbmFtZSwgJHNpemUgaW4gJGNsb3NlYnV0dG9uLXNpemUge1xuICAgICAgQGF0LXJvb3Qge1xuICAgICAgICAlemYtY2xvc2UtYnV0dG9uLS0jeyRuYW1lfSB7XG4gICAgICAgICAgQGluY2x1ZGUgY2xvc2UtYnV0dG9uLXNpemUoJG5hbWUpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYuI3skbmFtZX0ge1xuICAgICAgICBAZXh0ZW5kICV6Zi1jbG9zZS1idXR0b24tLSN7JG5hbWV9O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHRvcC1iYXJcbi8vLy9cblxuLy8vIFBhZGRpbmcgZm9yIHRoZSB0b3AgYmFyLlxuLy8vIEB0eXBlIE51bWJlclxuJHRvcGJhci1wYWRkaW5nOiAwLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGZvciB0aGUgdG9wIGJhci4gVGhpcyBjb2xvciBhbHNvIGNhc2NhZGVzIHRvIG1lbnVzIHdpdGhpbiB0aGUgdG9wIGJhci5cbi8vLyBAdHlwZSBDb2xvclxuJHRvcGJhci1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igc3VibWVudXMgd2l0aGluIHRoZSB0b3AgYmFyLiBVc2VmdWxsIGlmICR0b3BiYXItYmFja2dyb3VuZCBpcyB0cmFuc3BhcmVudC5cbi8vLyBAdHlwZSBDb2xvclxuJHRvcGJhci1zdWJtZW51LWJhY2tncm91bmQ6ICR0b3BiYXItYmFja2dyb3VuZCAhZGVmYXVsdDtcblxuLy8vIFNwYWNpbmcgZm9yIHRoZSB0b3AgYmFyIHRpdGxlLlxuLy8vIEB0eXBlIE51bWJlclxuJHRvcGJhci10aXRsZS1zcGFjaW5nOiAwLjVyZW0gMXJlbSAwLjVyZW0gMCAhZGVmYXVsdDtcblxuLy8vIE1heGltdW0gd2lkdGggb2YgYDxpbnB1dD5gIGVsZW1lbnRzIGluc2lkZSB0aGUgdG9wIGJhci5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0b3BiYXItaW5wdXQtd2lkdGg6IDIwMHB4ICFkZWZhdWx0O1xuXG4vLy8gQnJlYWtwb2ludCBhdCB3aGljaCB0b3AgYmFyIHN3aXRjaGVzIGZyb20gbW9iaWxlIHRvIGRlc2t0b3Agdmlldy5cbi8vLyBAdHlwZSBCcmVha3BvaW50XG4kdG9wYmFyLXVuc3RhY2stYnJlYWtwb2ludDogbWVkaXVtICFkZWZhdWx0O1xuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgdG9wIGJhciBjb250YWluZXIuXG5AbWl4aW4gdG9wLWJhci1jb250YWluZXIge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgfVxuXG4gIHBhZGRpbmc6ICR0b3BiYXItcGFkZGluZztcblxuICAmLFxuICB1bCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHRvcGJhci1iYWNrZ3JvdW5kO1xuICB9XG5cbiAgLy8gQ2hlY2sgaWYgJHRvcGJhci1iYWNrZ3JvdW5kIGlzIGRpZmZlcm50IGZyb20gJHRvcGJhci1iYWNrZ3JvdW5kLXN1Ym1lbnVcbiAgQGlmICgkdG9wYmFyLWJhY2tncm91bmQgIT0gJHRvcGJhci1zdWJtZW51LWJhY2tncm91bmQpIHtcbiAgICB1bCB1bCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdG9wYmFyLXN1Ym1lbnUtYmFja2dyb3VuZDtcbiAgICB9XG4gIH1cblxuICAvLyBSZXN0cmFpbiB3aWR0aCBvZiBpbnB1dHMgYnkgZGVmYXVsdCB0byBtYWtlIHRoZW0gZWFzaWVyIHRvIGFycmFuZ2VcbiAgaW5wdXQge1xuICAgIG1heC13aWR0aDogJHRvcGJhci1pbnB1dC13aWR0aDtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogMXJlbTtcbiAgfVxuXG4gIC8vIFRoZSBhYm92ZSBzdHlsZXMgc2hvdWxkbid0IGFwcGx5IHRvIGlucHV0IGdyb3VwIGZpZWxkc1xuICAuaW5wdXQtZ3JvdXAtZmllbGQge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAwO1xuICB9XG5cbiAgaW5wdXQuYnV0dG9uIHsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzXG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbn1cblxuLy8vIE1ha2VzIHNlY3Rpb25zIG9mIGEgdG9wIGJhciBzdGFjayBvbiB0b3Agb2YgZWFjaCBvdGhlci5cbkBtaXhpbiB0b3AtYmFyLXN0YWNrZWQge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG5cbiAgICAvLyBTdWItc2VjdGlvbnNcbiAgICAudG9wLWJhci1sZWZ0LFxuICAgIC50b3AtYmFyLXJpZ2h0IHtcbiAgICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgLy8gU3ViLXNlY3Rpb25zXG4gICAgLnRvcC1iYXItbGVmdCxcbiAgICAudG9wLWJhci1yaWdodCB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cbn1cblxuLy8vIFVuZG9lcyB0aGUgQ1NTIGFwcGxpZWQgYnkgdGhlIGB0b3AtYmFyLXN0YWNrZWQoKWAgbWl4aW4uXG5AbWl4aW4gdG9wLWJhci11bnN0YWNrIHtcbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG5cbiAgICAudG9wLWJhci1sZWZ0IHtcbiAgICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIH1cblxuICAgIC50b3AtYmFyLXJpZ2h0IHtcbiAgICAgIGZsZXg6IDAgMSBhdXRvO1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICAudG9wLWJhci1sZWZ0LFxuICAgIC50b3AtYmFyLXJpZ2h0IHtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi10b3AtYmFyIHtcbiAgLy8gVG9wIGJhciBjb250YWluZXJcbiAgLnRvcC1iYXIge1xuICAgIEBpbmNsdWRlIHRvcC1iYXItY29udGFpbmVyO1xuXG4gICAgLy8gU3RhY2sgb24gc21hbGwgc2NyZWVucyBieSBkZWZhdWx0XG4gICAgQGluY2x1ZGUgdG9wLWJhci1zdGFja2VkO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkdG9wYmFyLXVuc3RhY2stYnJlYWtwb2ludCkge1xuICAgICAgQGluY2x1ZGUgdG9wLWJhci11bnN0YWNrO1xuICAgIH1cblxuICAgIC8vIEdlbmVyYXRlIGNsYXNzZXMgZm9yIHN0YWNraW5nIG9uIGVhY2ggc2NyZWVuIHNpemUgKGRlZmluZWQgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcylcbiAgICBAZWFjaCAkc2l6ZSBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICAgIEBpZiAkc2l6ZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICYuc3RhY2tlZC1mb3ItI3skc2l6ZX0ge1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUgZG93bikge1xuICAgICAgICAgICAgQGluY2x1ZGUgdG9wLWJhci1zdGFja2VkO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFN1Yi1zZWN0aW9uc1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAudG9wLWJhci10aXRsZSB7XG4gICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICAgIG1hcmdpbjogJHRvcGJhci10aXRsZS1zcGFjaW5nO1xuICAgIH1cblxuICAgIC50b3AtYmFyLWxlZnQsXG4gICAgLnRvcC1iYXItcmlnaHQge1xuICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICAudG9wLWJhci10aXRsZSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHBhZGRpbmc6ICR0b3BiYXItdGl0bGUtc3BhY2luZztcblxuICAgICAgLm1lbnUtaWNvbiB7XG4gICAgICAgIGJvdHRvbTogMnB4O1xuICAgICAgfVxuICAgIH1cblxuICAgIC50b3AtYmFyLWxlZnQge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgfVxuXG4gICAgLnRvcC1iYXItcmlnaHQge1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8gSGlkZSBhbiBlbGVtZW50IGJ5IGRlZmF1bHQsIG9ubHkgZGlzcGxheWluZyBpdCBhYm92ZSBhIGNlcnRhaW4gc2NyZWVuIHNpemUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc2l6ZSAtIEJyZWFrcG9pbnQgdG8gdXNlLiAqKk11c3QgYmUgYSBicmVha3BvaW50IGRlZmluZWQgaW4gYCRicmVha3BvaW50c2AuKipcbkBtaXhpbiBzaG93LWZvcigkc2l6ZSkge1xuICAkc2l6ZTogbWFwLWdldCgkYnJlYWtwb2ludHMsICRzaXplKTtcbiAgLy8gTWF4IHZhbHVlIGlzIDAuMnB4IHVuZGVyIHRoZSBuZXh0IGJyZWFrcG9pbnQgKDAuMDIgLyAxNiA9IDAuMDAxMjUpLlxuICAvLyBVc2UgYSBwcmVjaXNpb24gdW5kZXIgMXB4IHRvIHN1cHBvcnQgYnJvd3NlciB6b29tLCBidXQgbm90IHRvIGxvdyB0byBhdm9pZCByb3VuZGluZy5cbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9mb3VuZGF0aW9uL2ZvdW5kYXRpb24tc2l0ZXMvaXNzdWVzLzExMzEzXG4gICRzaXplOiAtemYtYnAtdG8tZW0oJHNpemUpIC0gMC4wMDEyNTtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplIGRvd24pIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLy8vIEhpZGUgYW4gZWxlbWVudCBieSBkZWZhdWx0LCBvbmx5IGRpc3BsYXlpbmcgaXQgd2l0aGluIGEgY2VydGFpbiBicmVha3BvaW50LlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgLSBCcmVha3BvaW50IHRvIHVzZS4gKipNdXN0IGJlIGEgYnJlYWtwb2ludCBkZWZpbmVkIGluIGAkYnJlYWtwb2ludHNgLioqXG5AbWl4aW4gc2hvdy1mb3Itb25seSgkc2l6ZSkge1xuICAkbG93ZXItYm91bmQtc2l6ZTogbWFwLWdldCgkYnJlYWtwb2ludHMsICRzaXplKTtcbiAgJHVwcGVyLWJvdW5kLXNpemU6IC16Zi1tYXAtbmV4dCgkYnJlYWtwb2ludHMsICRzaXplKTtcblxuICAvLyBtb3JlIG9mdGVuIHRoYW4gbm90IHRoaXMgd2lsbCBiZSBjb3JyZWN0LCBqdXN0IG9uZSB0aW1lIHJvdW5kIHRoZSBsb29wIGl0IHdvbid0IHNvIHNldCBpbiBzY29wZSBoZXJlXG4gICRsb3dlci1ib3VuZDogLXpmLWJwLXRvLWVtKCRsb3dlci1ib3VuZC1zaXplKSAtIDAuMDAxMjU7XG4gIC8vIHRlc3QgYWN0dWFsIGxvd2VyLWJvdW5kLXNpemUsIGlmIDAgc2V0IGl0IHRvIDBlbVxuICBAaWYgc3RyaXAtdW5pdCgkbG93ZXItYm91bmQtc2l6ZSkgPT0gMCB7XG4gICAgJGxvd2VyLWJvdW5kOiAtemYtYnAtdG8tZW0oJGxvd2VyLWJvdW5kLXNpemUpO1xuICB9XG5cbiAgQGlmICR1cHBlci1ib3VuZC1zaXplID09IG51bGwge1xuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRsb3dlci1ib3VuZCkge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgJHVwcGVyLWJvdW5kOiAtemYtYnAtdG8tZW0oJHVwcGVyLWJvdW5kLXNpemUpO1xuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGxvd2VyLWJvdW5kKSwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkdXBwZXItYm91bmQpIHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cblxuXG4vLy8gU2hvdyBhbiBlbGVtZW50IGJ5IGRlZmF1bHQsIGFuZCBoaWRlIGl0IGFib3ZlIGEgY2VydGFpbiBzY3JlZW4gc2l6ZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIC0gQnJlYWtwb2ludCB0byB1c2UuICoqTXVzdCBiZSBhIGJyZWFrcG9pbnQgZGVmaW5lZCBpbiBgJGJyZWFrcG9pbnRzYC4qKlxuQG1peGluIGhpZGUtZm9yKCRzaXplKSB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUpIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLy8vIFNob3cgYW4gZWxlbWVudCBieSBkZWZhdWx0LCBhbmQgaGlkZSBpdCBhYm92ZSBhIGNlcnRhaW4gc2NyZWVuIHNpemUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc2l6ZSAtIEJyZWFrcG9pbnQgdG8gdXNlLiAqKk11c3QgYmUgYSBicmVha3BvaW50IGRlZmluZWQgaW4gYCRicmVha3BvaW50c2AuKipcbkBtaXhpbiBoaWRlLWZvci1vbmx5KCRzaXplKSB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUgb25seSkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi12aXNpYmlsaXR5LWNsYXNzZXMge1xuICAvLyBCYXNpYyBoaWRpbmcgY2xhc3Nlc1xuICAuaGlkZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmludmlzaWJsZSB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG4gIC52aXNpYmxlIHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG5cbiAgLy8gUmVzcG9uc2l2ZSB2aXNpYmlsaXR5IGNsYXNzZXNcbiAgQGVhY2ggJHNpemUgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgQGlmICRzaXplICE9ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgIC5oaWRlLWZvci0jeyRzaXplfSB7XG4gICAgICAgIEBpbmNsdWRlIGhpZGUtZm9yKCRzaXplKTtcbiAgICAgIH1cblxuICAgICAgLnNob3ctZm9yLSN7JHNpemV9IHtcbiAgICAgICAgQGluY2x1ZGUgc2hvdy1mb3IoJHNpemUpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5oaWRlLWZvci0jeyRzaXplfS1vbmx5IHtcbiAgICAgIEBpbmNsdWRlIGhpZGUtZm9yLW9ubHkoJHNpemUpO1xuICAgIH1cblxuICAgIC5zaG93LWZvci0jeyRzaXplfS1vbmx5IHtcbiAgICAgIEBpbmNsdWRlIHNob3ctZm9yLW9ubHkoJHNpemUpO1xuICAgIH1cbiAgfVxuXG4gIC8vIFNjcmVlbiByZWFkZXIgdmlzaWJpbGl0eSBjbGFzc2VzXG4gIC8vIE5lZWQgYSBcImhpZGUtZm9yLXNyXCIgY2xhc3M/IEFkZCBhcmlhLWhpZGRlbj0ndHJ1ZScgdG8gdGhlIGVsZW1lbnRcbiAgLnNob3ctZm9yLXNyLFxuICAuc2hvdy1vbi1mb2N1cyB7XG4gICAgQGluY2x1ZGUgZWxlbWVudC1pbnZpc2libGU7XG4gIH1cblxuICAvLyBPbmx5IGRpc3BsYXkgdGhlIGVsZW1lbnQgd2hlbiBpdCdzIGZvY3VzZWRcbiAgLnNob3ctb24tZm9jdXMge1xuICAgICY6YWN0aXZlLFxuICAgICY6Zm9jdXMge1xuICAgICAgQGluY2x1ZGUgZWxlbWVudC1pbnZpc2libGUtb2ZmO1xuICAgIH1cbiAgfVxuXG4gIC8vIExhbmRzY2FwZSBhbmQgcG9ydHJhaXQgdmlzaWJpbGl0eVxuICAuc2hvdy1mb3ItbGFuZHNjYXBlLFxuICAuaGlkZS1mb3ItcG9ydHJhaXQge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhbmRzY2FwZSkge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHBvcnRyYWl0KSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgLmhpZGUtZm9yLWxhbmRzY2FwZSxcbiAgLnNob3ctZm9yLXBvcnRyYWl0IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhbmRzY2FwZSkge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQocG9ydHJhaXQpIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgLy8gRGFyayBNb2RlIFZpc2liaWxpdHlcbiAgLnNob3ctZm9yLWRhcmstbW9kZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAuaGlkZS1mb3ItZGFyay1tb2RlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAocHJlZmVycy1jb2xvci1zY2hlbWU6IGRhcmspIHtcbiAgICAuc2hvdy1mb3ItZGFyay1tb2RlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5oaWRlLWZvci1kYXJrLW1vZGUge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIC8vIElFMTArIFZpc2liaWxpdHlcbiAgLnNob3ctZm9yLWllIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIEBtZWRpYSBhbGwgYW5kICgtbXMtaGlnaC1jb250cmFzdDogbm9uZSksICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSB7XG4gICAgLnNob3ctZm9yLWllIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5oaWRlLWZvci1pZSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgLy8gU3RpY2t5IFZpc2liaWxpdHlcbiAgLnNob3ctZm9yLXN0aWNreSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAuaXMtc3R1Y2sgLnNob3ctZm9yLXN0aWNreSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbiAgLmlzLXN0dWNrIC5oaWRlLWZvci1zdGlja3kge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBhY2NvcmRpb25cbi8vLy9cblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBvZiBhbiBhY2NvcmRpb24gZ3JvdXAuXG4vLy8gQHR5cGUgQ29sb3JcbiRhY2NvcmRpb24tYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gSWYgYHRydWVgLCBhZGRzIHBsdXMgYW5kIG1pbnVzIGljb25zIHRvIHRoZSBzaWRlIG9mIGVhY2ggYWNjb3JkaW9uIHRpdGxlLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRhY2NvcmRpb24tcGx1c21pbnVzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gQ29udGVudCBmb3IgdGhlIHBsdXMgaWNvbiB3aGVuIGAkYWNjb3JkaW9uLXBsdXNtaW51c2AgaXMgYHRydWVgXG4vLy8gQHR5cGUgU3RyaW5nXG4kYWNjb3JkaW9uLXBsdXMtY29udGVudDogJ1xcMDAyQicgIWRlZmF1bHQ7XG5cbi8vLyBDb250ZW50IGZvciB0aGUgbWludXMgaWNvbiB3aGVuIGAkYWNjb3JkaW9uLXBsdXNtaW51c2AgaXMgYHRydWVgXG4vLy8gQHR5cGUgU3RyaW5nXG4kYWNjb3JkaW9uLW1pbnVzLWNvbnRlbnQ6ICdcXDIwMTMnICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzaXplIG9mIGFjY29yZGlvbiB0aXRsZXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYWNjb3JkaW9uLXRpdGxlLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB0ZXh0IGNvbG9yIGZvciBpdGVtcyBpbiBhIE1lbnUuXG4vLy8gQHR5cGUgQ29sb3JcbiRhY2NvcmRpb24taXRlbS1jb2xvcjogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3Igb24gaG92ZXIgZm9yIGl0ZW1zIGluIGEgTWVudS5cbi8vLyBAdHlwZSBDb2xvclxuJGFjY29yZGlvbi1pdGVtLWJhY2tncm91bmQtaG92ZXI6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIG9mIGFuIGFjY29yZGlvbiBpdGVtLlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRhY2NvcmRpb24taXRlbS1wYWRkaW5nOiAxLjI1cmVtIDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3Igb2YgdGFiIGNvbnRlbnQuXG4vLy8gQHR5cGUgQ29sb3JcbiRhY2NvcmRpb24tY29udGVudC1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvcmRlciBjb2xvciBvZiB0YWIgY29udGVudC5cbi8vLyBAdHlwZSBDb2xvclxuJGFjY29yZGlvbi1jb250ZW50LWJvcmRlcjogMXB4IHNvbGlkICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB0ZXh0IGNvbG9yIG9mIHRhYiBjb250ZW50LlxuLy8vIEB0eXBlIENvbG9yXG4kYWNjb3JkaW9uLWNvbnRlbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgZm9yIHRhYiBjb250ZW50LlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRhY2NvcmRpb24tY29udGVudC1wYWRkaW5nOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGFuIGFjY29yZGlvbiBjb250YWluZXIuIEFwcGx5IHRoaXMgdG8gdGhlIHNhbWUgZWxlbWVudCB0aGF0IGdldHMgYGRhdGEtYWNjb3JkaW9uYC5cbkBtaXhpbiBhY2NvcmRpb24tY29udGFpbmVyIChcbiAgJGJhY2tncm91bmQ6ICRhY2NvcmRpb24tYmFja2dyb3VuZFxuKSB7XG4gIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IDA7XG4gIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG5cbiAgJltkaXNhYmxlZF0ge1xuICAgIC5hY2NvcmRpb24tdGl0bGUge1xuICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgYWNjb3JkaW9uIGl0ZW0uIEFwcGx5IHRoaXMgdG8gdGhlIGxpc3QgaXRlbSB3aXRoaW4gYW4gYWNjb3JkaW9uIHVsLlxuQG1peGluIGFjY29yZGlvbi1pdGVtIHtcbiAgJjpmaXJzdC1jaGlsZCA+IDpmaXJzdC1jaGlsZCB7XG4gICAgYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgJGdsb2JhbC1yYWRpdXMgMCAwO1xuICB9XG5cbiAgJjpsYXN0LWNoaWxkID4gOmxhc3QtY2hpbGQge1xuICAgIGJvcmRlci1yYWRpdXM6IDAgMCAkZ2xvYmFsLXJhZGl1cyAkZ2xvYmFsLXJhZGl1cztcbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHRoZSB0aXRsZSBvZiBhbiBhY2NvcmRpb24gaXRlbS4gQXBwbHkgdGhpcyB0byB0aGUgbGluayB3aXRoaW4gYW4gYWNjb3JkaW9uIGl0ZW0uXG5AbWl4aW4gYWNjb3JkaW9uLXRpdGxlIChcbiAgJHBhZGRpbmc6ICRhY2NvcmRpb24taXRlbS1wYWRkaW5nLFxuICAkZm9udC1zaXplOiAkYWNjb3JkaW9uLXRpdGxlLWZvbnQtc2l6ZSxcbiAgJGNvbG9yOiAkYWNjb3JkaW9uLWl0ZW0tY29sb3IsXG4gICRib3JkZXI6ICRhY2NvcmRpb24tY29udGVudC1ib3JkZXIsXG4gICRiYWNrZ3JvdW5kLWhvdmVyOiAkYWNjb3JkaW9uLWl0ZW0tYmFja2dyb3VuZC1ob3ZlclxuKSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6ICRwYWRkaW5nO1xuXG4gIGJvcmRlcjogJGJvcmRlcjtcbiAgYm9yZGVyLWJvdHRvbTogMDtcblxuICBmb250LXNpemU6ICRmb250LXNpemU7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogJGNvbG9yO1xuXG4gIDpsYXN0LWNoaWxkOm5vdCguaXMtYWN0aXZlKSA+ICYge1xuICAgIGJvcmRlci1ib3R0b206ICRib3JkZXI7XG4gICAgYm9yZGVyLXJhZGl1czogMCAwICRnbG9iYWwtcmFkaXVzICRnbG9iYWwtcmFkaXVzO1xuICB9XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQtaG92ZXI7XG4gIH1cblxuICBAaWYgJGFjY29yZGlvbi1wbHVzbWludXMge1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgICN7JGdsb2JhbC1yaWdodH06IDFyZW07XG4gICAgICBtYXJnaW4tdG9wOiAtMC41cmVtO1xuICAgICAgY29udGVudDogJGFjY29yZGlvbi1wbHVzLWNvbnRlbnQ7XG4gICAgfVxuXG4gICAgLmlzLWFjdGl2ZSA+ICY6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAkYWNjb3JkaW9uLW1pbnVzLWNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYWNjb3JkaW9uIGNvbnRlbnQuIEFwcGx5IHRoaXMgdG8gdGhlIGNvbnRlbnQgcGFuZSBiZWxvdyBhbiBhY2NvcmRpb24gaXRlbSdzIHRpdGxlLlxuQG1peGluIGFjY29yZGlvbi1jb250ZW50IChcbiAgJHBhZGRpbmc6ICRhY2NvcmRpb24tY29udGVudC1wYWRkaW5nLFxuICAkYm9yZGVyOiAkYWNjb3JkaW9uLWNvbnRlbnQtYm9yZGVyLFxuICAkYmFja2dyb3VuZDogJGFjY29yZGlvbi1jb250ZW50LWJhY2tncm91bmQsXG4gICRjb2xvcjogJGFjY29yZGlvbi1jb250ZW50LWNvbG9yXG4pIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcGFkZGluZzogJHBhZGRpbmc7XG5cbiAgYm9yZGVyOiAkYm9yZGVyO1xuICBib3JkZXItYm90dG9tOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcblxuICBjb2xvcjogJGNvbG9yO1xuXG4gIDpsYXN0LWNoaWxkID4gJjpsYXN0LWNoaWxkIHtcbiAgICBib3JkZXItYm90dG9tOiAkYm9yZGVyO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWFjY29yZGlvbiB7XG4gIC5hY2NvcmRpb24ge1xuICAgIEBpbmNsdWRlIGFjY29yZGlvbi1jb250YWluZXI7XG4gIH1cblxuICAuYWNjb3JkaW9uLWl0ZW0ge1xuICAgIEBpbmNsdWRlIGFjY29yZGlvbi1pdGVtO1xuICB9XG5cbiAgLmFjY29yZGlvbi10aXRsZSB7XG4gICAgQGluY2x1ZGUgYWNjb3JkaW9uLXRpdGxlO1xuICB9XG5cbiAgLmFjY29yZGlvbi1jb250ZW50IHtcbiAgICBAaW5jbHVkZSBhY2NvcmRpb24tY29udGVudDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLyBzYXNzLWxpbnQ6ZGlzYWJsZSBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzXG5cbi8vLy9cbi8vLyBAZ3JvdXAgdGFibGVcbi8vLy9cblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIHRhYmxlIGJhY2tncm91bmQuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWJsZS1iYWNrZ3JvdW5kOiAkd2hpdGUgICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBzY2FsZSBmb3IgZGFya2VuaW5nIHRoZSBzdHJpcGVkIHRhYmxlIHJvd3MgYW5kIHRoZSB0YWJsZSBib3JkZXIuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdGFibGUtY29sb3Itc2NhbGU6IDUlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBzdHlsZSBmb3IgdGFibGUgYm9yZGVyLlxuLy8vIEB0eXBlIExpc3RcbiR0YWJsZS1ib3JkZXI6IDFweCBzb2xpZCBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBmb3IgdGFibGUuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdGFibGUtcGFkZGluZzogcmVtLWNhbGMoOCAxMCAxMCkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHNjYWxlIGZvciBkYXJrZW5pbmcgdGhlIHRhYmxlIHJvd3Mgb24gaG92ZXIuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdGFibGUtaG92ZXItc2NhbGU6IDIlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBvZiBzdGFuZGFyZCByb3dzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIExpc3RcbiR0YWJsZS1yb3ctaG92ZXI6IGRhcmtlbigkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWhvdmVyLXNjYWxlKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3Igb2Ygc3RyaXBlZCByb3dzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIExpc3RcbiR0YWJsZS1yb3ctc3RyaXBlLWhvdmVyOiBkYXJrZW4oJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSArICR0YWJsZS1ob3Zlci1zY2FsZSkgIWRlZmF1bHQ7XG5cbi8vLyBJZiBgdHJ1ZWAsIHRhYmxlcyBhcmUgc3RyaXBlZCBieSBkZWZhdWx0IGFuZCBhbiAudW5zdHJpcGVkIGNsYXNzIGlzIGNyZWF0ZWQuIElmIGBmYWxzZWAsIGEgLnN0cmlwZWQgY2xhc3MgaXMgY3JlYXRlZC5cbi8vLyBAdHlwZSBCb29sZWFuXG4kdGFibGUtaXMtc3RyaXBlZDogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBmb3Igc3RyaXBlZCByb3dzLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFibGUtc3RyaXBlZC1iYWNrZ3JvdW5kOiBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdmFsdWUgZm9yIHNob3dpbmcgdGhlIHN0cmlwZSBvbiByb3dzIG9mIHRoZSB0YWJsZXMsIGV4Y2x1ZGluZyB0aGUgaGVhZGVyIGFuZCBmb290ZXIuIElmIGV2ZW4sIHRoZSBldmVuIHJvd3Mgd2lsbCBoYXZlIGEgYmFja2dyb3VuZCBjb2xvci4gSWYgb2RkLCB0aGUgb2RkIHJvd3Mgd2lsbCBoYXZlIGEgYmFja2dyb3VuZCBjb2xvci4gSWYgZW1wdHksIG9yIGFueSBvdGhlciB2YWx1ZSwgdGhlIHRhYmxlIHJvd3Mgd2lsbCBoYXZlIG5vIHN0cmlwaW5nLlxuLy8vIEB0eXBlIEtleXdvcmRcbiR0YWJsZS1zdHJpcGU6IGV2ZW4gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIGZvciBoZWFkZXIgYmFja2dyb3VuZC5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYmxlLWhlYWQtYmFja2dyb3VuZDogc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSAqIDAuNSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIG9mIGhlYWRlciByb3dzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIExpc3RcbiR0YWJsZS1oZWFkLXJvdy1ob3ZlcjogZGFya2VuKCR0YWJsZS1oZWFkLWJhY2tncm91bmQsICR0YWJsZS1ob3Zlci1zY2FsZSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIGZvciBmb290ZXIgYmFja2dyb3VuZC5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYmxlLWZvb3QtYmFja2dyb3VuZDogc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIG9mIGZvb3RlciByb3dzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIExpc3RcbiR0YWJsZS1mb290LXJvdy1ob3ZlcjogZGFya2VuKCR0YWJsZS1mb290LWJhY2tncm91bmQsICR0YWJsZS1ob3Zlci1zY2FsZSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgY29sb3IgZm9yIGhlYWRlci5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYmxlLWhlYWQtZm9udC1jb2xvcjogJGJvZHktZm9udC1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBjb2xvciBmb3IgZm9vdGVyLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFibGUtZm9vdC1mb250LWNvbG9yOiAkYm9keS1mb250LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB2YWx1ZSBmb3Igc2hvd2luZyB0aGUgaGVhZGVyIHdoZW4gdXNpbmcgc3RhY2tlZCB0YWJsZXMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJHNob3ctaGVhZGVyLWZvci1zdGFja2VkOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8vIEJyZWFrcG9pbnQgYXQgd2hpY2ggc3RhY2tlZCB0YWJsZSBzd2l0Y2hlcyBmcm9tIG1vYmlsZSB0byBkZXNrdG9wIHZpZXcuXG4vLy8gQHR5cGUgQnJlYWtwb2ludFxuJHRhYmxlLXN0YWNrLWJyZWFrcG9pbnQ6IG1lZGl1bSAhZGVmYXVsdDtcblxuQG1peGluIC16Zi10YWJsZS1zdHJpcGUoJHN0cmlwZTogJHRhYmxlLXN0cmlwZSkge1xuICB0ciB7XG4gICAgLy8gSWYgc3RyaXBlIGlzIHNldCB0byBldmVuLCBkYXJrZW4gdGhlIGV2ZW4gcm93cy5cbiAgICBAaWYgJHN0cmlwZSA9PSBldmVuIHtcbiAgICAgICY6bnRoLWNoaWxkKGV2ZW4pIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLXN0cmlwZWQtYmFja2dyb3VuZDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBJZiBzdHJpcGUgaXMgc2V0IHRvIG9kZCwgZGFya2VuIHRoZSBvZGQgcm93cy5cbiAgICBAZWxzZSBpZiAkc3RyaXBlID09IG9kZCB7XG4gICAgICAmOm50aC1jaGlsZChvZGQpIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLXN0cmlwZWQtYmFja2dyb3VuZDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1peGluIC16Zi10YWJsZS11bnN0cmlwZSgpIHtcbiAgdHIge1xuICAgIGJvcmRlci1ib3R0b206ICR0YWJsZS1ib3JkZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWJhY2tncm91bmQ7XG4gIH1cbn1cblxuQG1peGluIC16Zi10YWJsZS1jaGlsZHJlbi1zdHlsZXMoJHN0cmlwZTogJHRhYmxlLXN0cmlwZSwgJGlzLXN0cmlwZWQ6ICR0YWJsZS1pcy1zdHJpcGVkKSB7XG4gIHRoZWFkLFxuICB0Ym9keSxcbiAgdGZvb3Qge1xuICAgIGJvcmRlcjogJHRhYmxlLWJvcmRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtYmFja2dyb3VuZDtcbiAgfVxuXG4gIC8vIENhcHRpb25cbiAgY2FwdGlvbiB7XG4gICAgcGFkZGluZzogJHRhYmxlLXBhZGRpbmc7XG4gICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG4gIH1cblxuICAvLyBUYWJsZSBoZWFkXG4gIHRoZWFkIHtcbiAgICBiYWNrZ3JvdW5kOiAkdGFibGUtaGVhZC1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkdGFibGUtaGVhZC1mb250LWNvbG9yO1xuICB9XG5cbiAgLy8gVGFibGUgZm9vdFxuICB0Zm9vdCB7XG4gICAgYmFja2dyb3VuZDogJHRhYmxlLWZvb3QtYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJHRhYmxlLWZvb3QtZm9udC1jb2xvcjtcbiAgfVxuXG4gIC8vIFRhYmxlIGhlYWQgYW5kIGZvb3RcbiAgdGhlYWQsXG4gIHRmb290IHtcbiAgICAvLyBSb3dzIHdpdGhpbiBoZWFkIGFuZCBmb290XG4gICAgdHIge1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgfVxuXG4gICAgLy8gQ2VsbHMgd2l0aGluIGhlYWQgYW5kIGZvb3RcbiAgICB0aCxcbiAgICB0ZCB7XG4gICAgICBwYWRkaW5nOiAkdGFibGUtcGFkZGluZztcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuICAgICAgdGV4dC1hbGlnbjogI3skZ2xvYmFsLWxlZnR9O1xuICAgIH1cbiAgfVxuXG4gIC8vIFRhYmxlIHJvd3NcbiAgdGJvZHkge1xuICAgIHRoLFxuICAgIHRkIHtcbiAgICAgIHBhZGRpbmc6ICR0YWJsZS1wYWRkaW5nO1xuICAgIH1cbiAgfVxuXG4gIC8vIElmIHRhYmxlcyBhcmUgc3RyaXBlZFxuICBAaWYgJGlzLXN0cmlwZWQgPT0gdHJ1ZSB7XG4gICAgdGJvZHkge1xuICAgICAgQGluY2x1ZGUgLXpmLXRhYmxlLXN0cmlwZSgkc3RyaXBlKTtcbiAgICB9XG5cbiAgICAmLnVuc3RyaXBlZCB7XG4gICAgICB0Ym9keSB7XG4gICAgICAgIEBpbmNsdWRlIC16Zi10YWJsZS11bnN0cmlwZSgpO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtYmFja2dyb3VuZDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBJZiB0YWJsZXMgYXJlIG5vdCBzdHJpcGVkXG4gIEBlbHNlIGlmICRpcy1zdHJpcGVkID09IGZhbHNlIHtcbiAgICB0Ym9keSB7XG4gICAgICBAaW5jbHVkZSAtemYtdGFibGUtdW5zdHJpcGUoKTtcbiAgICB9XG5cbiAgICAmLnN0cmlwZWQge1xuICAgICAgdGJvZHkge1xuICAgICAgICBAaW5jbHVkZSAtemYtdGFibGUtc3RyaXBlKCRzdHJpcGUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyB0aGUgZ2VuZXJhbCBzdHlsZXMgZm9yIHRhYmxlcy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzdHJpcGUgWyR0YWJsZS1zdHJpcGVdIC0gVXNlcyBrZXl3b3JkcyBldmVuLCBvZGQsIG9yIG5vbmUgdG8gZGFya2VuIHJvd3Mgb2YgdGhlIHRhYmxlLiBUaGUgZGVmYXVsdCB2YWx1ZSBpcyBldmVuLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJG5lc3QgW2ZhbHNlXSAtIE5lZWRlZCBpZiB5b3Ugb25seSB3YW50IHRvIGFwcGx5IHRoaXMgdG8gYSBzcGVjaWZpYyB0YWJsZS5cbkBtaXhpbiB0YWJsZShcbiAgJHN0cmlwZTogJHRhYmxlLXN0cmlwZSxcbiAgJG5lc3Q6IGZhbHNlXG4pIHtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xuICBib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcblxuICBAaWYgJG5lc3Qge1xuICAgIEBpbmNsdWRlIC16Zi10YWJsZS1jaGlsZHJlbi1zdHlsZXMoJHN0cmlwZSk7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBhdC1yb290IHtcbiAgICAgIEBpbmNsdWRlIC16Zi10YWJsZS1jaGlsZHJlbi1zdHlsZXMoJHN0cmlwZSk7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIHRoZSBhYmlsaXR5IHRvIGhvcml6b250YWxseSBzY3JvbGwgdGhlIHRhYmxlIHdoZW4gdGhlIGNvbnRlbnQgb3ZlcmZsb3dzIGhvcml6b250YWxseS5cbkBtaXhpbiB0YWJsZS1zY3JvbGwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93LXg6IGF1dG87XG59XG5cbi8vLyBTbGlnaHRseSBkYXJrZW5zIHRoZSB0YWJsZSByb3dzIG9uIGhvdmVyLlxuQG1peGluIHRhYmxlLWhvdmVyIHtcbiAgdGhlYWQgdHIge1xuICAgIC8vRGFya2VucyB0aGUgdGFibGUgaGVhZGVyIHJvd3Mgb24gaG92ZXIuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtaGVhZC1yb3ctaG92ZXI7XG4gICAgfVxuICB9XG5cbiAgdGZvb3QgdHIge1xuICAgIC8vRGFya2VucyB0aGUgdGFibGUgZm9vdGVyIHJvd3Mgb24gaG92ZXIuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtZm9vdC1yb3ctaG92ZXI7XG4gICAgfVxuICB9XG5cbiAgdGJvZHkgdHIge1xuICAgIC8vRGFya2VucyB0aGUgbm9uLXN0cmlwZWQgdGFibGUgcm93cyBvbiBob3Zlci5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1yb3ctaG92ZXI7XG4gICAgfVxuICB9XG5cbiAgQGlmICR0YWJsZS1pcy1zdHJpcGVkID09IHRydWUge1xuICAgIC8vIERhcmtlbnMgdGhlIGV2ZW4gc3RyaXBlZCB0YWJsZSByb3dzLlxuICAgIEBpZigkdGFibGUtc3RyaXBlID09IGV2ZW4pIHtcbiAgICAgICY6bm90KC51bnN0cmlwZWQpIHRyOm50aC1vZi10eXBlKGV2ZW4pOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLXJvdy1zdHJpcGUtaG92ZXI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gRGFya2VucyB0aGUgb2RkIHN0cmlwZWQgdGFibGUgcm93cy5cbiAgICBAZWxzZSBpZigkdGFibGUtc3RyaXBlID09IG9kZCkge1xuICAgICAgJjpub3QoLnVuc3RyaXBlZCkgdHI6bnRoLW9mLXR5cGUob2RkKTpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1yb3ctc3RyaXBlLWhvdmVyO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBlbHNlIGlmICR0YWJsZS1pcy1zdHJpcGVkID09IGZhbHNlIHtcbiAgICAvLyBEYXJrZW5zIHRoZSBldmVuIHN0cmlwZWQgdGFibGUgcm93cy5cbiAgICBAaWYoJHRhYmxlLXN0cmlwZSA9PSBldmVuKSB7XG4gICAgICAmLnN0cmlwZWQgdHI6bnRoLW9mLXR5cGUoZXZlbik6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtcm93LXN0cmlwZS1ob3ZlcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBEYXJrZW5zIHRoZSBvZGQgc3RyaXBlZCB0YWJsZSByb3dzLlxuICAgIEBlbHNlIGlmKCR0YWJsZS1zdHJpcGUgPT0gb2RkKSB7XG4gICAgICAmLnN0cmlwZWQgdHI6bnRoLW9mLXR5cGUob2RkKTpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1yb3ctc3RyaXBlLWhvdmVyO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgc3RhY2tlZCB0YWJsZS4gVXNlZnVsIGZvciBzbWFsbC1zY3JlZW4gbGF5b3V0cy5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRoZWFkZXIgWyRzaG93LWhlYWRlci1mb3Itc3RhY2tlZF0gLSBTaG93IHRoZSBmaXJzdCB0aCBvZiBoZWFkZXIgd2hlbiBzdGFja2VkLlxuQG1peGluIHRhYmxlLXN0YWNrKCRoZWFkZXI6ICRzaG93LWhlYWRlci1mb3Itc3RhY2tlZCkge1xuICBAaWYgJGhlYWRlciB7XG4gICAgdGhlYWQge1xuICAgICAgdGgge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIHRoZWFkIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgdGZvb3Qge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICB0cixcbiAgdGgsXG4gIHRkIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIHRkIHtcbiAgICBib3JkZXItdG9wOiAwO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXRhYmxlKCRuZXN0OiBmYWxzZSkge1xuICB0YWJsZSB7XG4gICAgQGluY2x1ZGUgdGFibGUoJG5lc3Q6ICRuZXN0KTtcbiAgfVxuXG4gIHRhYmxlLnN0YWNrIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCR0YWJsZS1zdGFjay1icmVha3BvaW50IGRvd24pIHtcbiAgICAgIEBpbmNsdWRlIHRhYmxlLXN0YWNrO1xuICAgIH1cbiAgfVxuXG4gIHRhYmxlLnNjcm9sbCB7XG4gICAgQGluY2x1ZGUgdGFibGUtc2Nyb2xsO1xuICB9XG5cbiAgdGFibGUuaG92ZXIge1xuICAgIEBpbmNsdWRlIHRhYmxlLWhvdmVyO1xuICB9XG5cbiAgLnRhYmxlLXNjcm9sbCB7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcblxuICB9XG59XG4iLCJodG1sIHtcbiAgZm9udC1zaXplOiAxNXB4O1xufVxuXG5ib2R5IHtcbiAgZm9udC1zaXplOiAxNXB4O1xufVxuXG4ubWFpbi1jb250YWluZXIge1xuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgcGFkZGluZy10b3A6IDExOHB4O1xuICB9XG59XG5cbi5wYWdlLXRlbXBsYXRlLWZyb250IHtcbiAgLm1haW4tY29udGFpbmVyIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBwYWRkaW5nLXRvcDogMCAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuXG4ucm93IHtcbiAgLy8gZGlzcGxheTogZ3JpZDtcblxuICAuY29udGFpbmVyIHtcbiAgICBtYXgtd2lkdGg6IDg5MHB4O1xuICAgIG1hcmdpbjogMCBhdXRvO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgIG1heC13aWR0aDogMTAyNHB4O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSkge1xuICAgICAgbWF4LXdpZHRoOiAkY29udGFpbmVyLXdpZHRoO1xuICAgIH1cblxuICAgICYucGFkZGluZyB7XG4gICAgICBwYWRkaW5nOiAwICRncmlkLWdhcDtcbiAgICB9XG4gIH1cblxuICAmLmZ1bGwtd2lkdGgge1xuICAgIC5jb250YWluZXIge1xuICAgICAgbWF4LXdpZHRoOiBpbml0aWFsO1xuICAgIH1cbiAgfVxufVxuLmdyaWQge1xuICBtYXJnaW4tcmlnaHQ6ICRncmlkLWdhcDtcbiAgbWFyZ2luLWxlZnQ6ICRncmlkLWdhcDtcbiAgZGlzcGxheTogZ3JpZDtcbiAgLy8gY29sdW1uLWdhcDogMTVweDtcblxuICAmLmJsb2NrIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gICYubm8tZ2FwIHtcbiAgICBjb2x1bW4tZ2FwOiAwO1xuICB9XG5cbiAgJi5nYXAtMiB7XG4gICAgY29sdW1uLWdhcDogJGdyaWQtZ2FwO1xuICB9XG5cbiAgJi5nYXAtNCB7XG4gICAgY29sdW1uLWdhcDogY2FsYygjeyRncmlkLWdhcH0gKiAyKTtcbiAgfVxuXG4gICYubWFyZ2luLTIge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKCN7JGdyaWQtZ2FwfSAqIDIpO1xuICAgIG1hcmdpbi1yaWdodDogY2FsYygjeyRncmlkLWdhcH0gKiAyKTtcbiAgfVxuXG4gICYubm8tbWFyZ2luLFxuICAuZ3JpZCB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICB9XG5cbiAgJi5jb2wtMixcbiAgJi5jb2wtMyxcbiAgJi5jb2wtNCxcbiAgJi5jb2wtNixcbiAgJi5jb2wtMTIsXG4gICYuY29sLTEtMyxcbiAgJi5jb2wtMy0xIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG1pbm1heCgxMDAlLCBtYXgtY29udGVudCk7XG4gICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvO1xuICB9XG5cbiAgJi5zbS1jb2wtMyB7XG4gICAgLW1zLWdyaWQtY29sdW1uczogMWZyIDE1cHggMWZyIDE1cHggMWZyO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIDFmcik7XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgJi5jb2wtMiB7XG4gICAgICAtbXMtZ3JpZC1jb2x1bW5zOiAxZnIgMTVweCAxZnI7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xuICAgIH1cblxuICAgICYuY29sLTMge1xuICAgICAgLW1zLWdyaWQtY29sdW1uczogMWZyIDE1cHggMWZyIDE1cHggMWZyO1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTtcbiAgICB9XG5cbiAgICAmLmNvbC00IHtcbiAgICAgIC1tcy1ncmlkLWNvbHVtbnM6IDFmciAxNXB4IDFmciAxNXB4IDFmciAxNXB4IDFmcjtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDQsIDFmcik7XG4gICAgfVxuXG4gICAgJi5jb2wtNSB7XG4gICAgICAtbXMtZ3JpZC1jb2x1bW5zOiAxZnIgMTVweCAxZnIgMTVweCAxZnIgMTVweCAxZnIgMTVweCAxZnI7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg1LCAxZnIpO1xuICAgIH1cblxuICAgICYuY29sLTYge1xuICAgICAgLW1zLWdyaWQtY29sdW1uczogMWZyIDE1cHggMWZyIDE1cHggMWZyIDE1cHggMWZyIDE1cHggMWZyIDE1cHggMWZyO1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNiwgMWZyKTtcbiAgICB9XG5cbiAgICAmLmNvbC0xMiB7XG4gICAgICAtbXMtZ3JpZC1jb2x1bW5zOiAxZnI7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgICB9XG5cbiAgICAmLmNvbC0xLTMge1xuICAgICAgLW1zLWdyaWQtY29sdW1uczogMWZyIDE1cHggMmZyO1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMmZyO1xuICAgIH1cblxuICAgICYuY29sLTEtNCB7XG4gICAgICAtbXMtZ3JpZC1jb2x1bW5zOiAxZnIgMTVweCAzZnI7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAzZnI7XG4gICAgfVxuXG4gICAgJi5jb2wtMy0xIHtcbiAgICAgIC1tcy1ncmlkLWNvbHVtbnM6IDJmciAxNXB4IDFmcjtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMmZyIDFmcjtcbiAgICB9XG4gIH1cbn1cblxuLy8gRURHRSDDqXMgRVhQTE9SRVIgZ3JpZCBjb2x1bW4gcG96w61jacOzasOhbmFrIGEgamF2w610w6FzYVxuXG4uZ3JpZCB7XG4gICYubm8tZ2FwIHtcbiAgICAmLmNvbC0zIHtcbiAgICAgICYgPiBkaXYge1xuICAgICAgICAmOm50aC1jaGlsZCgyKSB7XG4gICAgICAgICAgLW1zLWdyaWQtY29sdW1uOiAyO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpudGgtY2hpbGQoMykge1xuICAgICAgICAgIC1tcy1ncmlkLWNvbHVtbjogMztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICYuY29sLTQge1xuICAgICAgJiA+IGRpdiB7XG4gICAgICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgICAtbXMtZ3JpZC1jb2x1bW46IDI7XG4gICAgICAgIH1cblxuICAgICAgICAmOm50aC1jaGlsZCgzKSB7XG4gICAgICAgICAgLW1zLWdyaWQtY29sdW1uOiAzO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpudGgtY2hpbGQoNCkge1xuICAgICAgICAgIC1tcy1ncmlkLWNvbHVtbjogNDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICYuY29sLTUge1xuICAgICAgJiA+IGRpdiB7XG4gICAgICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgICAtbXMtZ3JpZC1jb2x1bW46IDI7XG4gICAgICAgIH1cblxuICAgICAgICAmOm50aC1jaGlsZCgzKSB7XG4gICAgICAgICAgLW1zLWdyaWQtY29sdW1uOiAzO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpudGgtY2hpbGQoNCkge1xuICAgICAgICAgIC1tcy1ncmlkLWNvbHVtbjogNDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6bnRoLWNoaWxkKDUpIHtcbiAgICAgICAgICAtbXMtZ3JpZC1jb2x1bW46IDU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmNvbC0yLFxuICAgICYuY29sLTEtMyxcbiAgICAmLmNvbC0xLTQsXG4gICAgJi5jb2wtMy0xIHtcbiAgICAgICYgPiBkaXY6bnRoLWNoaWxkKDIpLFxuICAgICAgJiA+IGFzaWRlOm50aC1jaGlsZCgyKSB7XG4gICAgICAgIC1tcy1ncmlkLWNvbHVtbjogMjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAmLmNvbC0yIHtcbiAgICAgICAgLW1zLWdyaWQtY29sdW1uczogMWZyIDFmcjtcbiAgICAgIH1cblxuICAgICAgJi5jb2wtMyB7XG4gICAgICAgIC1tcy1ncmlkLWNvbHVtbnM6IDFmciAxZnIgMWZyO1xuICAgICAgfVxuXG4gICAgICAmLmNvbC00IHtcbiAgICAgICAgLW1zLWdyaWQtY29sdW1uczogMWZyIDFmciAxZnIgMWZyO1xuICAgICAgfVxuXG4gICAgICAmLmNvbC01IHtcbiAgICAgICAgLW1zLWdyaWQtY29sdW1uczogMWZyIDFmciAxZnIgMWZyIDFmcjtcbiAgICAgIH1cblxuICAgICAgJi5jb2wtNiB7XG4gICAgICAgIC1tcy1ncmlkLWNvbHVtbnM6IDFmciAxZnIgMWZyIDFmciAxZnIgMWZyO1xuICAgICAgfVxuXG4gICAgICAmLmNvbC0xLTMge1xuICAgICAgICAtbXMtZ3JpZC1jb2x1bW5zOiAxZnIgMmZyO1xuICAgICAgfVxuXG4gICAgICAmLmNvbC0xLTQge1xuICAgICAgICAtbXMtZ3JpZC1jb2x1bW5zOiAxZnIgM2ZyO1xuICAgICAgfVxuXG4gICAgICAmLmNvbC0zLTEge1xuICAgICAgICAtbXMtZ3JpZC1jb2x1bW5zOiAyZnIgMWZyO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYuY29sLTMge1xuICAgICYgPiBkaXYge1xuICAgICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgICAtbXMtZ3JpZC1jb2x1bW46IDM7XG4gICAgICB9XG5cbiAgICAgICY6bnRoLWNoaWxkKDMpIHtcbiAgICAgICAgLW1zLWdyaWQtY29sdW1uOiA1O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYuY29sLTQge1xuICAgICYgPiBkaXYge1xuICAgICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgICAtbXMtZ3JpZC1jb2x1bW46IDM7XG4gICAgICB9XG5cbiAgICAgICY6bnRoLWNoaWxkKDMpIHtcbiAgICAgICAgLW1zLWdyaWQtY29sdW1uOiA1O1xuICAgICAgfVxuXG4gICAgICAmOm50aC1jaGlsZCg0KSB7XG4gICAgICAgIC1tcy1ncmlkLWNvbHVtbjogNztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLmNvbC01IHtcbiAgICAmID4gZGl2IHtcbiAgICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgLW1zLWdyaWQtY29sdW1uOiAzO1xuICAgICAgfVxuXG4gICAgICAmOm50aC1jaGlsZCgzKSB7XG4gICAgICAgIC1tcy1ncmlkLWNvbHVtbjogNTtcbiAgICAgIH1cblxuICAgICAgJjpudGgtY2hpbGQoNCkge1xuICAgICAgICAtbXMtZ3JpZC1jb2x1bW46IDc7XG4gICAgICB9XG5cbiAgICAgICY6bnRoLWNoaWxkKDUpIHtcbiAgICAgICAgLW1zLWdyaWQtY29sdW1uOiA5O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYuY29sLTYge1xuICAgICYgPiBkaXYge1xuICAgICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgICAtbXMtZ3JpZC1jb2x1bW46IDM7XG4gICAgICB9XG5cbiAgICAgICY6bnRoLWNoaWxkKDMpIHtcbiAgICAgICAgLW1zLWdyaWQtY29sdW1uOiA1O1xuICAgICAgfVxuXG4gICAgICAmOm50aC1jaGlsZCg0KSB7XG4gICAgICAgIC1tcy1ncmlkLWNvbHVtbjogNztcbiAgICAgIH1cblxuICAgICAgJjpudGgtY2hpbGQoNSkge1xuICAgICAgICAtbXMtZ3JpZC1jb2x1bW46IDk7XG4gICAgICB9XG5cbiAgICAgICY6bnRoLWNoaWxkKDYpIHtcbiAgICAgICAgLW1zLWdyaWQtY29sdW1uOiAxMTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLmNvbC0yLFxuICAmLmNvbC0xLTMsXG4gICYuY29sLTEtNCxcbiAgJi5jb2wtMy0xIHtcbiAgICAmID4gZGl2Om50aC1jaGlsZCgyKSxcbiAgICAmID4gYXNpZGU6bnRoLWNoaWxkKDIpIHtcbiAgICAgIC1tcy1ncmlkLWNvbHVtbjogMztcbiAgICB9XG4gIH1cbn1cbiIsIltkYXRhLXdoYXRpbnB1dD1cIm1vdXNlXCJdIGE6Zm9jdXMsIGJ1dHRvbjpmb2N1c1xuW2RhdGEtd2hhdGlucHV0PVwidG91Y2hcIl0gYTpmb2N1cywgYnV0dG9uOmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTtcbn1cbiIsIiAgLmVtYmVkLWNvbnRhaW5lciB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogNTYuMjUlO1xuICAgICAgaGVpZ2h0OiAwO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuXG4gIC5lbWJlZC1jb250YWluZXIgZW1iZWQsXG4gIC5lbWJlZC1jb250YWluZXIgaWZyYW1lLFxuICAuZW1iZWQtY29udGFpbmVyIG9iamVjdCB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gIH0iLCJcbnAgPiBhIHtcbiAgICBmb250LXdlaWdodDogNjAwO1xufVxuXG5zcGFuLnN0YXJzIHtcbiAgY29sb3I6ICNmZmIyMDA7XG59XG5cbi5tb2Rlcm4tdGl0bGUge1xuICAgIGZvbnQtZmFtaWx5OiAkbW9kZXJuLWZvbnQtZmFtaWx5O1xuICAgIGxldHRlci1zcGFjaW5nOiAkbW9kZXJuLWxldHRlci1zcGFjaW5nO1xuXG4gICAgJi53aGl0ZSB7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgfVxuXG4gICAgJi5wdXJwbGUge1xuICAgICAgICBjb2xvcjogJGNvbG9yLXB1cnBsZTtcbiAgICB9XG5cbiAgICAmLmdyZWVuIHtcbiAgICAgICAgY29sb3I6ICRjb2xvci1ncmVlbjtcbiAgICB9XG5cbiAgICAvLyAmLmN1cnNpdmUge1xuICAgIC8vICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIC8vIH1cbiAgICAmLmNlbnRlciB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG59XG5cbi5wYXJhZ3JhcGgtdGl0bGUge1xuICAgIGZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXG4gICAgJi53aGl0ZSB7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgfVxuXG4gICAgJi5wdXJwbGUge1xuICAgICAgICBjb2xvcjogJGNvbG9yLXB1cnBsZTtcbiAgICB9XG4gICAgXG4gICAgJi5tYWdlbnRhIHtcbiAgICAgICAgY29sb3I6ICRjb2xvci1tYWdlbnRhO1xuICAgIH1cblxuICAgICYuZ3JlZW4ge1xuICAgICAgICBjb2xvcjogJGNvbG9yLWdyZWVuO1xuICAgIH1cblxuICAgICYuYm9sZCB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgfVxuXG4gICAgJi5ub3dyYXAge1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIH1cblxuICAgICYud3JhcCB7XG4gICAgICAgIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgICB9XG5cbiAgICAvLyAmLmN1cnNpdmUge1xuICAgIC8vICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIC8vIH1cbiAgICAmLmNlbnRlciB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG4gICAgJi5zbWFsbCB7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDIwKTtcbiAgICB9XG59XG5cblxuLnBhcmFncmFwaC13aGl0ZSB7XG4gICAgcCB7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgfVxufVxuXG4uc2lkZWJhcixcbi5lbnRyeS1jb250ZW50IHtcbiAgICBoMSxcbiAgICBoMixcbiAgICBoMyxcbiAgICBoNCxcbiAgICBoNSxcbiAgICBoNiB7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGNvbG9yOiAkY29sb3ItcHVycGxlO1xuICAgIH1cbn1cblxuaDEsXG5oMixcbmgzLFxuaDQsXG5oNSxcbmg2IHtcbiAgICAvLyBsZXR0ZXItc3BhY2luZzogMXB4O1xuXG4gICAgJi53aGl0ZSB7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgfVxuXG4gICAgJi5wdXJwbGUge1xuICAgICAgICBjb2xvcjogJGNvbG9yLXB1cnBsZTtcbiAgICB9XG5cbiAgICAmLmdyZWVuIHtcbiAgICAgICAgY29sb3I6ICRjb2xvci1ncmVlbjtcbiAgICB9XG5cbiAgICAmLnVwcGVyY2FzZSB7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgfVxuXG4gICAgLy8gJi5jdXJzaXZlIHtcbiAgICAvLyAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICAvLyB9XG59XG5cbnEge1xuICAgIHF1b3RlczogXCLigJxcIlwi4oCdXCJcIuKAmFwiXCLigJlcIjtcbn1cblxuYmxvY2txdW90ZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuXG4gICAgJjpiZWZvcmUge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogLTFyZW07XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIGNvbnRlbnQ6ICdcXDIwMWMnO1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDgwKTtcbiAgICAgICAgaGVpZ2h0OiByZW0tY2FsYygzMCk7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICBmb250LWZhbWlseTogJGhlYWRlci1mb250LWZhbWlseTtcbiAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIH1cbn1cblxuLnB1cnBsZS1yb3cgYmxvY2txdW90ZSB7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBtYXJnaW4tdG9wOiAycmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG5cbiAgICBwIHtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICB9XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgfVxufVxuIiwiXG5cbi5idXR0b24ge1xuICBjb2xvcjogJHdoaXRlO1xuICBmb250LWZhbWlseTogJGhlYWRlci1mb250LWZhbWlseTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXB1cnBsZTtcbiAgZm9udC1zaXplOiByZW0tY2FsYygxOCk7XG4gIGxldHRlci1zcGFjaW5nOiAxcHg7XG4gIGJvcmRlci1yYWRpdXM6IDIwMHB4O1xuICAmLnNtYWxsIHtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDEyKTtcbiAgfVxuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItbWFnZW50YTtcbiAgfVxuICAmLnRyYW5zcGFyZW50IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBjb2xvcjogJGNvbG9yLXB1cnBsZTtcbiAgfVxuXG4gICYubW9kZXJuIHtcbiAgICBmb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHk7XG4gIH1cbiAgJi5ib3JkZXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvci1wdXJwbGU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgY29sb3I6ICRjb2xvci1wdXJwbGU7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1wdXJwbGU7XG4gICAgICBjb2xvcjogJHdoaXRlO1xuICAgIH1cbiAgfVxuICAmLm5vLWJvcmRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDNweDtcbiAgfVxuXG4gICYtLXdoaXRlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgY29sb3I6ICRjb2xvci1wdXJwbGU7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJHdoaXRlO1xuICB9XG5cbn1cblxuLm1vcmUtYnV0dG9uIHtcbiAgZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBsZXR0ZXItc3BhY2luZzogM3B4O1xuICBmb250LXdlaWdodDogMzAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDI7XG4gIHBhZGRpbmctbGVmdDogM3B4O1xuICAmOmJlZm9yZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogM3JlbTtcbiAgICBjb250ZW50OiAnJztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItZ3JheS1iZy1zZWNvbmQ7XG4gICAgei1pbmRleDogLTE7XG4gICAgdHJhbnNpdGlvbjogd2lkdGggLjJzIGVhc2UtaW4tb3V0O1xuICB9XG4gICY6aG92ZXIge1xuICAgICY6YmVmb3JlIHtcbiAgICAgIHdpZHRoOiA3cmVtO1xuICAgIH1cbiAgfVxuICAmLm5vLWJhY2tncm91bmQge1xuICAgICY6YmVmb3JlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG4gICYucHVycGxlIHtcbiAgICBjb2xvcjogJGNvbG9yLXB1cnBsZTtcbiAgfVxuICAmLmdyYXkge1xuICAgIGNvbG9yOiAkY29sb3ItZm9udDtcbiAgfVxufVxuIiwiLy8gR1VURU5CRVJHIFNUWUxFU1xuXG4ud3AtYmxvY2stbWVkaWEtdGV4dCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgfVxufVxuXG4ud3AtYmxvY2staW1hZ2Uge1xuICBjbGVhcjogYm90aDtcblxuICAmLmhpZGUtb24tbW9iaWxlIHtcbiAgICBAaW5jbHVkZSBzaG93LWZvcihtZWRpdW0pO1xuICB9XG59XG5cbi53cC1ibG9jay1nYWxsZXJ5IHtcbiAgbWFyZ2luOiAwO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgfVxuXG4gIC5ibG9ja3MtZ2FsbGVyeS1pdGVtIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICB3aWR0aDogaW5pdGlhbDtcbiAgICAgIG1hcmdpbi1yaWdodDogaW5pdGlhbDtcbiAgICB9XG4gIH1cbn1cblxuLmludmlzaWJsZS1zZXBhcmF0b3Ige1xuICBjbGVhcjogYm90aDtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4uYWxpZ25sZWZ0IHtcbiAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmFsaWdubGVmdDphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBjbGVhcjogYm90aDtcbn1cblxuLndwLWJsb2NrLXRhYmxlIHtcbiAgdGhlYWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1wdXJwbGU7XG5cbiAgICB0ZCB7XG4gICAgICBjb2xvcjogJHdoaXRlO1xuICAgIH1cbiAgfVxuICB0cjpudGgtY2hpbGQoZXZlbikge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci10YWJsZS1ldmVuO1xuICB9XG4gIHRkOm50aC1jaGlsZCgxKSB7XG4gICAgd2lkdGg6IDc1JTtcbiAgICBib3JkZXItcmlnaHQ6IDJweCBzb2xpZCAkd2hpdGU7XG4gIH1cbiAgdGQ6bnRoLWNoaWxkKDIpIHtcbiAgICB3aWR0aDogMjUlO1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICB9XG4gIHRkIHtcbiAgICBjb2xvcjogJGNvbG9yLXB1cnBsZTtcbiAgfVxufVxuXG4uc3RlcHMtaXRlbSB7XG4gIGZsZXgtd3JhcDogbm93cmFwO1xuICAud3AtYmxvY2stY29sdW1uOm50aC1jaGlsZCgxKSB7XG4gICAgZmxleC1iYXNpczogMzAlO1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgfVxuICAud3AtYmxvY2stY29sdW1uOm50aC1jaGlsZCgyKSB7XG4gICAgZmxleC1iYXNpczogNzAlO1xuICB9XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAud3AtYmxvY2stY29sdW1uOm50aC1jaGlsZCgxKSB7XG4gICAgICBmbGV4LWJhc2lzOiAyMCU7XG4gICAgfVxuXG4gICAgLndwLWJsb2NrLWNvbHVtbjpudGgtY2hpbGQoMikge1xuICAgICAgZmxleC1iYXNpczogODAlO1xuICAgIH1cbiAgfVxufVxuXG4uc21hbGwtaW1hZ2UtbGVmdCB7XG4gIC8vIC53cC1ibG9jay1jb2x1bW46bnRoLWNoaWxkKDEpIHtcbiAgLy8gICAgIGZsZXgtYmFzaXM6IDMwJTtcbiAgLy8gICAgIG1hcmdpbi1yaWdodDogMDtcbiAgLy8gfVxuICAvLyAud3AtYmxvY2stY29sdW1uOm50aC1jaGlsZCgyKSB7XG4gIC8vICAgICBmbGV4LWJhc2lzOiA3MCU7XG4gIC8vIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIC53cC1ibG9jay1jb2x1bW46bnRoLWNoaWxkKDEpIHtcbiAgICAgIGZsZXgtYmFzaXM6IDIwJTtcbiAgICB9XG5cbiAgICAud3AtYmxvY2stY29sdW1uOm50aC1jaGlsZCgyKSB7XG4gICAgICBmbGV4LWJhc2lzOiA4MCU7XG4gICAgfVxuICB9XG59XG5cbi5zbWFsbC1pbWFnZS1yaWdodCB7XG4gIC8vIC53cC1ibG9jay1jb2x1bW46bnRoLWNoaWxkKDEpIHtcbiAgLy8gICAgIGZsZXgtYmFzaXM6IDMwJTtcbiAgLy8gICAgIG1hcmdpbi1yaWdodDogMDtcbiAgLy8gfVxuICAvLyAud3AtYmxvY2stY29sdW1uOm50aC1jaGlsZCgyKSB7XG4gIC8vICAgICBmbGV4LWJhc2lzOiA3MCU7XG4gIC8vIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIC53cC1ibG9jay1jb2x1bW46bnRoLWNoaWxkKDIpIHtcbiAgICAgIGZsZXgtYmFzaXM6IDIwJTtcbiAgICB9XG5cbiAgICAud3AtYmxvY2stY29sdW1uOm50aC1jaGlsZCgxKSB7XG4gICAgICBmbGV4LWJhc2lzOiA4MCU7XG4gICAgfVxuICB9XG59XG5cblxuLy8gTWVkaWEgJiBUZXh0IG1vYmlsZSB0ZXh0IHBhZGRpbmdcblxuLndwLWJsb2NrLW1lZGlhLXRleHQge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuXG4ud3AtYmxvY2stbWVkaWEtdGV4dCAud3AtYmxvY2stbWVkaWEtdGV4dF9fY29udGVudCB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgIHBhZGRpbmc6IDFyZW0gOCU7XG4gIH1cbn0iLCIuYmFkZ2Uge1xuICAgIHdpZHRoOiAxMDBweDtcbiAgICBcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIHdpZHRoOiAxNTBweDtcbiAgICB9XG5cbiAgICAmLmFic29sdXRlIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIH1cblxuICAgICYucm90YXRlIGltZyB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTEwZGVnKVxuICAgIH1cblxufSIsImEuYW5jaG9yLWxpbmsge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IC0yNTBweDtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuIiwiLnNpdGUtdGl0bGUtYmFyIHtcbiAgQGluY2x1ZGUgaGlkZS1mb3IobGFyZ2UpO1xuXG4gIC50aXRsZS1iYXItdGl0bGUge1xuICAgIG1hcmdpbjogMXJlbSBhdXRvO1xuICAgIHdpZHRoOiByZW0tY2FsYygxMzAsIDE1cHgpO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIHdpZHRoOiAxNSU7XG4gICAgfVxuICB9XG59XG5cbi5wYWdlLXRlbXBsYXRlLXBhZ2UtdGhhbmt5b3UtbWlrcm9zaXRlIC5zaXRlLXRpdGxlLWJhciB7XG4gIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG59XG4udG9wLWJhciB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkd2hpdGUsIDAuOCk7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwIDJyZW07XG4gIHotaW5kZXg6IDk5OTk7XG4gIHRvcDogMDtcbiAgaGVpZ2h0OiAxMThweDtcbiAgQGluY2x1ZGUgc2hvdy1mb3IobGFyZ2UpO1xuXG4gIC50b3AtYmFyLWxlZnQge1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuICAgIHdpZHRoOiAxNTBweDtcbiAgICBtYXJnaW46IDA7XG4gIH1cbiAgLnRvcC1iYXItcmlnaHQge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGZsZXgtZmxvdzogY29sdW1uO1xuICAgIGhlaWdodDogNzBweDtcbiAgfVxufVxuXG5ib2R5LmxvZ2dlZC1pbiAudG9wLWJhciB7XG4gIHRvcDogMzJweDtcbn1cblxuLy8gRml4IGZvciBkcm9wZG93biBtZW51IGhpZGUgb24gbG9hZFxuLnRvcC1iYXItcmlnaHQgdWwgbGkgdWwge1xuICBkaXNwbGF5OiBub25lO1xufVxuLm1vYmlsZS1tZW51IHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLm1vYmlsZS1tZW51LXRvZ2dsZSB7XG4gIC5mYSxcbiAgLmZhLWJhcnM6OmJlZm9yZSB7XG4gICAgY29sb3I6ICM2ZDc1ODQ7XG4gIH1cbn1cblxuLmhlYWRlci1jb250YWN0IHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgLy8gcGFkZGluZzogMXJlbSAwO1xuXG4gIC5zb2NpYWwtZGF0YSxcbiAgLmNvbnRhY3QtZGF0YSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgbWFyZ2luOiAwO1xuICB9XG5cbiAgLmNvbnRhY3QtZGF0YSB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG5cbiAgICBzdmcgcGF0aCB7XG4gICAgICB0cmFuc2l0aW9uOiBmaWxsIDAuMnMgZWFzZS1pbi1vdXQ7XG4gICAgfVxuXG4gICAgbGkge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAycmVtO1xuXG4gICAgICAmOmhvdmVyIHN2ZyBwYXRoIHtcbiAgICAgICAgZmlsbDogJGNvbG9yLW1hZ2VudGE7XG4gICAgICB9XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICBjb2xvcjogJG1hZGVudGEtZ3JheTtcbiAgICAgIGZvbnQtZmFtaWx5OiBcIlJhbGV3YXlcIiwgc2Fucy1zZXJpZjtcbiAgICAgIC8vIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE4KTtcbiAgICAgIGZvbnQtc2l6ZTogY2xhbXAoMXJlbSwgMC45NXJlbSArIDAuMjV2dywgMS4wNXJlbSk7XG4gICAgfVxuICAgIHN2ZyB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgfVxuICB9XG5cbiAgLnNvY2lhbC1kYXRhIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cblxuICAuc29jaWFsLWRhdGEgbGkge1xuICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICB9XG4gIC5zb2NpYWwtZGF0YSBhIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgIHBhdGgge1xuICAgICAgdHJhbnNpdGlvbjogZmlsbCAwLjJzIGVhc2UtaW4tb3V0O1xuICAgIH1cbiAgICAmOmhvdmVyIHBhdGgge1xuICAgICAgZmlsbDogJGNvbG9yLW1hZ2VudGE7XG4gICAgfVxuICB9XG4gIC5zb2NpYWwtZGF0YSBzdmcge1xuICAgIG1hcmdpbjogYXV0bztcbiAgfVxuXG4gIC8vIC5zb2NpYWwtZGF0YSB7XG4gIC8vICAgbWFyZ2luLXJpZ2h0OiBjYWxjKDEgKiAoMXZ3ICsgMXZoIC0gMXZtaW4pKTtcbiAgLy8gICAuc29jaWFsLWl0ZW06bm90KDpsYXN0LWNoaWxkKSB7XG4gIC8vICAgICBtYXJnaW4tcmlnaHQ6IDFyZW07XG4gIC8vICAgfVxuXG4gIC8vICAgYTpob3ZlciBpIHtcbiAgLy8gICAgIGNvbG9yOiAkY29sb3ItbWFnZW50YTtcbiAgLy8gICB9XG5cbiAgLy8gICBpIHtcbiAgLy8gICAgIGNvbG9yOiAkbWFkZW50YS1ncmF5O1xuICAvLyAgIH1cbiAgLy8gfVxufVxuXG4uZGVza3RvcC1tZW51IHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgbWFyZ2luOiAwO1xuXG4gIC5tZW51LWl0ZW0ge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICYuY3VycmVudC1tZW51LWl0ZW0gPiBhLFxuICAgICYuY3VycmVudC1tZW51LXBhcmVudCA+IGEge1xuICAgICAgJjphZnRlciB7XG4gICAgICAgIHdpZHRoOiA1MHB4O1xuICAgICAgfVxuICAgIH1cblxuICAgIGEge1xuICAgICAgcGFkZGluZzogMCBjYWxjKDEgKiAoMXZ3ICsgMXZoIC0gMXZtaW4pKTtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4ycyBlYXNlLWluLW91dDtcbiAgICAgIGNvbG9yOiAjNmQ3NTg0O1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgZm9udC1zaXplOiBjbGFtcCgxcmVtLCAwLjk1cmVtICsgMC4yNXZ3LCAxLjI1cmVtKTtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1wdXJwbGU7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgYTphZnRlciB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLW1hZ2VudGE7XG4gICAgICBoZWlnaHQ6IDFweDtcbiAgICAgIHdpZHRoOiAwcHg7XG4gICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgIHRvcDogMC41cmVtO1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XG4gICAgfVxuXG4gICAgYTpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGNvbG9yOiAkbWFkZW50YS1ncmF5O1xuICAgICAgJjphZnRlciB7XG4gICAgICAgIHdpZHRoOiA1MHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgJjpob3ZlciAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAmID4gYSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgfVxuXG4gICAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHRvcDogMTAwJTtcbiAgICAgIHdpZHRoOiAzMDBweDtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgICAmIGEge1xuICAgICAgICBwYWRkaW5nOiAwLjVyZW0gMnJlbTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIuc3BsaWRlX19hcnJvdyB7XG4gIGhlaWdodDogMTAwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXG4gIHN2ZyB7XG4gICAgaGVpZ2h0OiA2OHB4O1xuICAgIHdpZHRoOiAzNHB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IC05cHg7XG4gICAgZmlsbDogJGNvbG9yLW1hZ2VudGE7XG4gICAgLy8gZmlsdGVyOiBkcm9wLXNoYWRvdygwIDAgMnB4IHJnYmEoJGNvbG9yLWJsdWUtZGFyaywgMSkpO1xuICB9XG59XG5cbi5zcGxpZGVfX2Fycm93LS1wcmV2IHtcbiAgbGVmdDogMDtcblxuICBzdmcge1xuICAgIC8vIHJpZ2h0OiAzcHg7XG4gIH1cbn1cblxuLnNwbGlkZV9fYXJyb3ctLW5leHQge1xuICByaWdodDogMDtcblxuICBzdmcge1xuICAgIC8vIGxlZnQ6IDNweDtcbiAgfVxufVxuXG4uc3BsaWRlX19wYWdpbmF0aW9uX19wYWdlIHtcbiAgICAvLyBiYWNrZ3JvdW5kOiByZ2JhKCRjb2xvci1ibHVlLWxpZ2h0LCAxKVxufVxuXG4uc3BsaWRlX19wYWdpbmF0aW9uX19wYWdlLmlzLWFjdGl2ZSB7XG4gICAgLy8gYmFja2dyb3VuZDogcmdiYSgkY29sb3ItYmx1ZS1kYXJrLCAxKVxufSIsImJvZHkge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbn1cblxuLm1vYmlsZS1tZW51LXRvZ2dsZSB7XG4gICAgQGluY2x1ZGUgaGlkZS1mb3IobGFyZ2UpO1xuXG4gICAgc3ZnIHtcbiAgICAgICAgb3BhY2l0eTogMC43NTtcbiAgICB9XG59XG5cbi5zbGlkZW91dC1tZW51IHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICB3aWR0aDogMjU2cHg7XG4gICAgbWluLWhlaWdodDogMTAwdmg7XG4gICAgb3ZlcmZsb3cteTogc2Nyb2xsO1xuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgICB6LWluZGV4OiAwO1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5zbGlkZW91dC1tZW51LWxlZnQge1xuICAgIGxlZnQ6IDA7XG59XG5cbi5zbGlkZW91dC1tZW51LXJpZ2h0IHtcbiAgICByaWdodDogMDtcbn1cblxuLnNsaWRlb3V0LXBhbmVsIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGO1xuICAgIC8qIEEgYmFja2dyb3VuZC1jb2xvciBpcyByZXF1aXJlZCAqL1xuICAgIG1pbi1oZWlnaHQ6IDEwMHZoO1xuICAgIFxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgICAgd2lsbC1jaGFuZ2U6IHRyYW5zZm9ybTtcbiAgICB9XG59XG5cbi5zbGlkZW91dC1vcGVuLFxuLnNsaWRlb3V0LW9wZW4gYm9keSxcbi5zbGlkZW91dC1vcGVuIC5zbGlkZW91dC1wYW5lbCB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLnNsaWRlb3V0LW9wZW4gLnNsaWRlb3V0LW1lbnUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uc2xpZGVvdXQtcGFuZWw6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICAvLyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDApO1xuICAgIC8vIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC41cyBlYXNlLWluLW91dDtcbn1cblxuLnNsaWRlb3V0LXBhbmVsLW9wZW46YmVmb3JlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICAvLyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIC41KTtcbiAgICB6LWluZGV4OiA5OTtcbn1cblxuXG4jbW9iaWxlLW1lbnUge1xuICAgIGJhY2tncm91bmQ6ICRjb2xvci1ncmF5LWRhcms7XG59XG5cbiNzaXRlLWNvbnRlbnQge1xuICAgIG1pbi1oZWlnaHQ6IDEwMHZoO1xuICAgIC8vIG1pbi13aWR0aDogMTAwdnc7XG59XG5cbi5tb2JpbGUtbWVudS1iYXJzIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICByaWdodDogMXJlbTtcbiAgdG9wOiAzcmVtO1xuICAvLyAgIHBhZGRpbmc6IDEwcHg7XG4gIHotaW5kZXg6IDEwMDtcbiAgaGVpZ2h0OiA1MHB4O1xuICB3aWR0aDogNTBweDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGZsZXgtZmxvdzogY29sdW1uO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCR3aGl0ZSwgMC43KTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gIEBpbmNsdWRlIGhpZGUtZm9yKHhsYXJnZSk7XG5cbiAgc3BhbiB7XG4gICAgaGVpZ2h0OiAzcHg7XG4gICAgd2lkdGg6IDMwcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgjNDA0NDRELCAwLjc1KTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDtcbiAgICBvcGFjaXR5OiAxO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuXG4gICAgJjpudGgtY2hpbGQoMSksXG4gICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgbWFyZ2luLWJvdHRvbTogN3B4O1xuICAgIH1cbiAgfVxufVxuXG4ubW9iaWxlLW1lbnUtYmFycy5pcy1vcGVuIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cbiAgc3BhbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgbWFyZ2luLWxlZnQ6IGluaXRpYWw7XG4gICAgbWFyZ2luLXJpZ2h0OiBpbml0aWFsO1xuICAgIHdpZHRoOiAzMnB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgfVxuXG4gIHNwYW46bnRoLWNoaWxkKDEpIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZykgdHJhbnNsYXRlWSgtNTAlKTtcbiAgICB0b3A6IDI2cHg7XG4gICAgbGVmdDogOHB4O1xuICAgIHdpZHRoOiAzM3B4O1xufVxuXG4gIHNwYW46bnRoLWNoaWxkKDIpIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpIHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgdG9wOiAzMXB4O1xuICAgIGxlZnQ6IDEwcHg7XG4gICAgd2lkdGg6IDMzcHg7XG4gIH1cblxuICBzcGFuOm50aC1jaGlsZCgzKSB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG4ubW9iaWxlLW1lbnUge1xuICAgIC5tZW51IHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAxcmVtIDFyZW0gNnJlbTtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICB9XG5cbiAgICB1bCB7XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgIG1hcmdpbi10b3A6IDNyZW07XG4gICAgfVxuXG4gICAgLm1lbnUubmVzdGVkIHtcbiAgICAgICAgcGFkZGluZzogMXJlbTtcbiAgICB9XG5cbiAgICAubWVudS1pdGVtIGEge1xuICAgICAgICBwYWRkaW5nOiAuNXJlbTtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxufVxuIiwiLmZvb3RlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXB1cnBsZTtcblxuICAgIC8vIG1hcmdpbi10b3A6IHJlbS1jYWxjKDYwKTtcbiAgICAuZnAtdGFibGVDZWxsIHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICAuc29jaWFsIHN2ZyB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICB9XG59XG5cblxuLmZvb3Rlci1jb250YWluZXIge1xuICAgIEBpbmNsdWRlIHh5LWdyaWQtY29udGFpbmVyKCk7XG4gICAgcGFkZGluZy1ib3R0b206IDNyZW07XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIH1cbn1cblxuLmZvb3Rlci1ncmlkIHtcblxuICAgIC5pbmZvcm1hdGlvbnMge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5mb290ZXItZ3JpZCB7XG4gICAgcGFkZGluZzogcmVtLWNhbGMoMzApIDA7XG5cbiAgICBwIHtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICB9XG5cbiAgICBoMyB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjQpO1xuICAgIH1cblxuICAgIGg0IHtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4gICAgfVxuXG4gICAgcCxcbiAgICBsaSxcbiAgICBhIHtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICB9XG5cbiAgICAuZmEtdWwge1xuICAgICAgICBtYXJnaW4tbGVmdDogMS41cmVtO1xuICAgIH1cbn1cblxuLmZvb3Rlci1jb3B5cmlnaHQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1ncmF5LWRhcms7XG4gICAgcGFkZGluZy1ib3R0b206IDVyZW07XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIH1cbn1cblxuLmNvcHlyaWdodC1ncmlkIHtcbiAgICBwYWRkaW5nOiAycmVtIDA7XG5cbiAgICAuY29weXJpZ2h0IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3RhcnQ7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5sb2dvIHtcbiAgICAgICAgICAgIGZsZXg6IDAgMSByZW0tY2FsYygxMDApO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgLmNvcHlyaWdodC10ZXh0IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuZm9vdGVyLW1lbnUge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgICAgIH1cblxuICAgICAgICB1bCB7XG4gICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgbGkge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICAgICAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCkgYSB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiBzb2xpZCAxcHggJHdoaXRlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDFyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwLFxuICAgIGxpLFxuICAgIGEsXG4gICAgdWwge1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHh5LWdyaWRcbi8vLy9cblxuLy8vIENyZWF0ZSBndXR0ZXJzIGZvciBhIGNlbGwvY29udGFpbmVyLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtbWFyZ2luLWd1dHRlcnNdIC0gTWFwIG9yIHNpbmdsZSB2YWx1ZSBmb3IgZ3V0dGVycy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRndXR0ZXItdHlwZSBbbWFyZ2luXSAtIFR5cGUgb2YgZ3V0dGVyIHRvIG91dHB1dC4gQWNjZXB0cyBlaXRoZXIgbWFyZ2luIG9yIHBhZGRpbmcuXG4vLy8gQHBhcmFtIHtMaXN0fSAkZ3V0dGVyLXBvc2l0aW9uIFtyaWdodCBsZWZ0XSAtIFRoZSBwb3NpdGlvbiB0byBhcHBseSBndXR0ZXJzIHRvLiBBY2NlcHRzIGB0b3BgLCBgYm90dG9tYCwgYGxlZnRgLCBgcmlnaHRgIGluIGFueSBjb21iaW5hdGlvbi5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRuZWdhdGl2ZSBbZmFsc2VdIC0gV2hldGhlciB0byBhcHBseSB0aGUgZ3V0dGVyIGFzIGEgbmVnYXRpdmUgdmFsdWUuIENvbW1vbmx5IHVzZWQgZm9yIG5lc3RlZCBncmlkcy5cbkBtaXhpbiB4eS1ndXR0ZXJzKFxuICAkZ3V0dGVyczogJGdyaWQtbWFyZ2luLWd1dHRlcnMsXG4gICRndXR0ZXItdHlwZTogbWFyZ2luLFxuICAkZ3V0dGVyLXBvc2l0aW9uOiByaWdodCBsZWZ0LFxuICAkbmVnYXRpdmU6IGZhbHNlXG4pIHtcbiAgJG9wZXJhdG9yOiBpZigkbmVnYXRpdmUsICctJywgJycpO1xuXG4gIC8vIElmIHdlIGhhdmUgZGVjbGFyZWQgbmVnYXRpdmUgZ3V0dGVycywgZm9yY2UgdHlwZSB0byBgbWFyZ2luLlxuICAkZ3V0dGVyLXR5cGU6IGlmKCRuZWdhdGl2ZSwgJ21hcmdpbicsICRndXR0ZXItdHlwZSk7XG5cbiAgLy8gT3V0cHV0IG91ciBtYXJnaW4gZ3V0dGVycy5cbiAgQGlmICh0eXBlLW9mKCRndXR0ZXJzKSA9PSAnbWFwJykge1xuICAgIEBpbmNsdWRlIC16Zi1icmVha3BvaW50LXZhbHVlKGF1dG8sICRndXR0ZXJzKSB7XG4gICAgICAkZ3V0dGVyOiByZW0tY2FsYygkLXpmLWJwLXZhbHVlKSAqIDAuNTtcblxuICAgICAgLy8gTG9vcCB0aHJvdWdoIGVhY2ggZ3V0dGVyIHBvc2l0aW9uXG4gICAgICBAZWFjaCAkdmFsdWUgaW4gJGd1dHRlci1wb3NpdGlvbiB7XG4gICAgICAgICN7JGd1dHRlci10eXBlfS0jeyR2YWx1ZX06IHVucXVvdGUoXCIjeyRvcGVyYXRvcn0jeyRndXR0ZXJ9XCIpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAodHlwZS1vZigkZ3V0dGVycykgPT0gJ251bWJlcicpIHtcbiAgICAkZ3V0dGVyOiByZW0tY2FsYygkZ3V0dGVycykgKiAwLjU7XG5cbiAgICAvLyBMb29wIHRocm91Z2ggZWFjaCBndXR0ZXIgcG9zaXRpb25cbiAgICBAZWFjaCAkdmFsdWUgaW4gJGd1dHRlci1wb3NpdGlvbiB7XG4gICAgICAjeyRndXR0ZXItdHlwZX0tI3skdmFsdWV9OiB1bnF1b3RlKFwiI3skb3BlcmF0b3J9I3skZ3V0dGVyfVwiKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB4eS1ncmlkXG4vLy8vXG5cbi8vLyBDcmVhdGVzIGEgbWF4IHdpZHRoIGNvbnRhaW5lciwgZGVzaWduZWQgdG8gaG91c2UgeW91ciBncmlkIGNvbnRlbnQuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJHdpZHRoIFskZ3JpZC1jb250YWluZXJdIC0gYSB3aWR0aCB0byBsaW1pdCB0aGUgY29udGFpbmVyIHRvLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkcGFkZGluZyBbJGdyaWQtY29udGFpbmVyLXBhZGRpbmddIC0gcGFkZGluZ3Mgb2YgdGhlIGNvbnRhaW5lci5cbkBtaXhpbiB4eS1ncmlkLWNvbnRhaW5lcihcbiAgJHdpZHRoOiAkZ3JpZC1jb250YWluZXIsXG4gICRwYWRkaW5nOiAkZ3JpZC1jb250YWluZXItcGFkZGluZ1xuKSB7XG4gIEBpbmNsdWRlIHh5LWd1dHRlcnMoJGd1dHRlcnM6ICRwYWRkaW5nLCAkZ3V0dGVyLXR5cGU6IHBhZGRpbmcpO1xuXG4gIG1heC13aWR0aDogJHdpZHRoO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxuXG4vLy8gQ3JlYXRlcyBhIGNvbnRhaW5lciBmb3IgeW91ciBmbGV4IGNlbGxzLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZGlyZWN0aW9uIFtob3Jpem9udGFsXSAtIEVpdGhlciBob3Jpem9udGFsIG9yIHZlcnRpY2FsIGRpcmVjdGlvbiBvZiBjZWxscyB3aXRoaW4uXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkd3JhcCBbdHJ1ZV0gLSBJZiB0aGUgY2VsbHMgd2l0aGluIHNob3VsZCB3cmFwIG9yIG5vdC5cbkBtaXhpbiB4eS1ncmlkKFxuICAkZGlyZWN0aW9uOiBob3Jpem9udGFsLFxuICAkd3JhcDogdHJ1ZVxuKSB7XG4gICRkaXJlY3Rpb246IGlmKCRkaXJlY3Rpb24gPT0gJ2hvcml6b250YWwnLCByb3csIGNvbHVtbik7XG4gICR3cmFwOiBpZigkd3JhcCwgd3JhcCwgbm93cmFwKTtcblxuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6ICRkaXJlY3Rpb24gJHdyYXA7XG59XG4iLCIuY2FsbC11cyB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgd2lkdGg6IDMyMHB4O1xuICByaWdodDogMDtcbiAgei1pbmRleDogMTAxO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gIHdpZHRoOiAxMDAlO1xuICBib3R0b206IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1ncmVlbjtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSwgb3BhY2l0eSAwLjRzIGVhc2U7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgIHdpZHRoOiAzMjBweDtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAyMHB4O1xuICB9XG5cbiAgJjpub3QoLnJlYWR5KSB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gICYuZGlzYWJsZWQge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG5cbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjRzIGVhc2UtaW4tb3V0O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMjBweDtcbiAgICB9XG4gIH1cblxuICAmLnNsaWRldXA6YmVmb3JlIHtcbiAgICBib3gtc2hhZG93OiAwIDAgNDBweCByZ2JhKCRibGFjaywgMC40KTtcbiAgfVxuXG4gICYuYWN0aXZlIHtcbiAgICAuY2FsbC11cy1jbG9zZS1idXR0b24ge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG4gIH1cblxuICAuY2FsbC11cy1jbG9zZS1idXR0b24ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGVhc2UtaW4tb3V0O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMDtcblxuICAgIHN2ZyB7XG4gICAgICBtYXJnaW46IGF1dG87XG4gICAgfVxuICB9XG5cbiAgLmNsb3NlLWJ1dHRvbiB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnMgZWFzZS1pbi1vdXQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xuICAgIG1hcmdpbi10b3A6IDEuM3JlbTtcbiAgICAmLmlzLXZpc2libGUge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG5cbiAgICBpLmZhLXRpbWVzIHtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjYpO1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIHRyYW5zaXRpb246IGNvbG9yIDAuMnMgZWFzZS1pbi1vdXQ7XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICRjb2xvci1ncmVlbjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAjY2FsbC11cy1vcGVuIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cblxuICAuYnV0dG9uIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1tYWdlbnRhO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6IDAuNXJlbTtcbiAgICBib3JkZXItcmFkaXVzOiAxMDBweDtcbiAgICBtYXgtd2lkdGg6IHJlbS1jYWxjKDIwMCwgMTVweCk7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxNiwgMTVweCk7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBoZWlnaHQ6IDM3cHg7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItcHVycGxlO1xuICAgIH1cbiAgfVxuXG4gIC5jYWxsLXVzX19oZWFkZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cbiAgICBpLmZhLXBob25lIHtcbiAgICAgIGZvbnQtc2l6ZTogMzVweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgdG9wOiA2cHg7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG4gICAgfVxuICB9XG5cbiAgLmNhbGwtdXNfX3RpdGxlIHtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygyMCwgMTVweCk7XG4gICAgcGFkZGluZzogMXJlbTtcbiAgICBmb250LXdlaWdodDogODAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBsZXR0ZXItc3BhY2luZzogMDtcblxuICAgIHN2ZyB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDFyZW07XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB9XG4gIH1cblxuICAuY2FsbC11c19fY29udGVudCB7XG4gICAgcGFkZGluZzogMXJlbTtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDJmcjtcbiAgICBncmlkLXRlbXBsYXRlLWFyZWFzOlxuICAgICAgXCJwcm9maWxlIHRleHRcIlxuICAgICAgXCJmb3JtIGZvcm1cIjtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAyZnIgNGZyO1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1hcmVhczogXCJwcm9maWxlIHRleHQgZm9ybVwiO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDJmcjtcbiAgICAgIGdyaWQtdGVtcGxhdGUtYXJlYXM6XG4gICAgICAgIFwicHJvZmlsZSB0ZXh0XCJcbiAgICAgICAgXCJmb3JtIGZvcm1cIjtcbiAgICB9XG5cbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB9XG5cbiAgLmNhbGwtdXNfX2ltYWdlIHtcbiAgICBncmlkLWFyZWE6IHByb2ZpbGU7XG4gICAgcGFkZGluZy1yaWdodDogMXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICB9XG5cbiAgaW1nIHtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIH1cblxuICAuY2FsbC11c19fdGV4dCB7XG4gICAgZ3JpZC1hcmVhOiB0ZXh0O1xuICB9XG5cbiAgLmNhbGwtdXNfX2Zvcm0ge1xuICAgIGdyaWQtYXJlYTogZm9ybTtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIC5jYWxsLXVzX190ZXh0IHAge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICB9XG59XG5cbi5jYWxsLXVzLW92ZXJsYXkge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMTAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbiAgb3BhY2l0eTogMDtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRibGFjaywgMC44KTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG5cbiAgJi5zaG93IHtcbiAgICBvcGFjaXR5OiAwLjg7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICBwb2ludGVyLWV2ZW50czogYWxsO1xuICB9XG5cbiAgJi5pcy1hY3RpdmUge1xuICAgIG9wYWNpdHk6IDAuODtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIHBvaW50ZXItZXZlbnRzOiBhbGw7XG4gIH1cbn1cblxuLnBhZ2UtdGVtcGxhdGUtbWlrcm9zaXRlLWRlbnRhbHdlZWsgLmNhbGwtdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItbWFnZW50YTtcblxuICAuYnV0dG9uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItZ3JlZW47XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItZ3JlZW4taW50ZW5zZTtcbiAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yLWdyZWVuLWludGVuc2U7XG4gICAgfVxuICB9XG5cbiAgcCB7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgfVxufVxuIiwiLmJyZWFkY3J1bWJzIHtcbiAgY29sb3I6ICRjb2xvci1wdXJwbGU7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHBhZGRpbmctYm90dG9tOiAuN3JlbTtcbiAgYSB7XG4gICAgY29sb3I6ICRjb2xvci1wdXJwbGU7XG4gIH1cbiAgc3Bhbjpub3QoLmJyZWFkY3J1bWJfbGFzdCkgYSB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgfVxufVxuIiwiLnBhZ2UtaGVhZGVyIHtcbiAgcGFkZGluZzogMXJlbSAzcmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItZ3JheS1iZztcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuXG4gICYud2l0aC1pbWFnZSB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLWNvbHVtbi1nYXA6IDE1cHg7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvIDFmcjtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGdyaWQtdGVtcGxhdGUtYXJlYXM6XG4gICAgICAnaW1hZ2UnXG4gICAgICAndGl0bGUnO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTtcbiAgICAgIGdyaWQtdGVtcGxhdGUtcm93czogaW5pdGlhbDtcbiAgICAgIGdyaWQtdGVtcGxhdGUtYXJlYXM6ICd0aXRsZSBpbWFnZSc7XG4gICAgfVxuICB9XG5cbiAgLmhlYWRlci1pbWFnZSB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAvLyBoZWlnaHQ6IHJlbS1jYWxjKDE1MCk7XG4gICAgZ3JpZC1hcmVhOiBpbWFnZTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAvLyBoZWlnaHQ6IHJlbS1jYWxjKDI1MCk7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIGhlaWdodDogcmVtLWNhbGMoNDUwKTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBpbWcge1xuICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAudGl0bGUtY29udGFpbmVyIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBwYWRkaW5nOiAxcmVtO1xuICAgIGZsZXgtZmxvdzogY29sdW1uO1xuICAgIGdyaWQtYXJlYTogdGl0bGU7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBwYWRkaW5nOiAwIDNyZW0gMCA4cmVtO1xuICAgIH1cbiAgfVxuXG4gIC50aXRsZS1jb250YWluZXItZ2FsbGVyeSB7XG4gICAgZGlzcGxheTogZmxleDtcblxuICAgIC5icmVhZGNydW1icyB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICAgIH1cbiAgfVxuXG4gIGgxIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDJyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG5cbi50aGFua3lvdS1wYWdlLWhlYWRlciB7XG4gIGhlaWdodDogcmVtLWNhbGMoNTAwKTtcblxufVxuIiwiLnNpZGViYXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1ncmF5LWJnLXNlY29uZDtcbiAgICBwYWRkaW5nOiAycmVtIDFyZW07XG5cbiAgICAuYmFkZ2Uge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7XG4gICAgfVxuXG4gICAgLmJhZGdlIGltZyB7XG4gICAgICAgIHdpZHRoOiAxMjBweDtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjJzIGVhc2UtaW4tb3V0O1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5zaWRlYmFyLWZvcm0ge1xuICAgICAgICBAc3VwcG9ydHMocG9zaXRpb246IHN0aWNreSkge1xuICAgICAgICAgICAgcG9zaXRpb246IHN0aWNreSFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB3aWR0aDogaW5pdGlhbCFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuc2lkZWJhci1iYW5uZXIge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcblxuICAgICAgaW1nIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuc2lkZWJhci1sYXRlc3QtcG9zdHMge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcblxuICAgICAgLnBvc3QtaXRlbSB7XG4gICAgICAgIC8vIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIHBhZGRpbmc6IDFyZW07XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1ncmF5LWJnO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgfVxuXG4gICAgICAudGl0bGUge1xuICAgICAgICBAaW5jbHVkZSByZnMoMTgpO1xuICAgICAgfVxuXG4gICAgICAuYnV0dG9uIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICAgfVxuXG4gICAgICAuaW1hZ2Uge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgfVxuXG4gICAgICAuY29udGVudCB7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMTVweDtcbiAgICAgIH1cblxuICAgICAgLmJ1dHRvbiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICBtYXJnaW46IDAgMCAwIGF1dG87XG4gICAgICB9XG5cbiAgICAgIC50ZXh0IHAge1xuICAgICAgICBAaW5jbHVkZSByZnMoMTQpO1xuICAgICAgICBsaW5lLWhlaWdodDogMS40O1xuICAgICAgICBjb2xvcjogJGNvbG9yLWZvbnQ7XG4gICAgICB9XG4gICAgfVxuXG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBwcm9wZXJ0eS1ibGFja2xpc3QsIHNjc3MvZG9sbGFyLXZhcmlhYmxlLWRlZmF1bHRcblxuLy8gU0NTUyBSRlMgbWl4aW5cbi8vXG4vLyBBdXRvbWF0ZWQgcmVzcG9uc2l2ZSBmb250IHNpemVzXG4vL1xuLy8gTGljZW5zZWQgdW5kZXIgTUlUIChodHRwczovL2dpdGh1Yi5jb20vdHdicy9yZnMvYmxvYi92OC54L0xJQ0VOU0UpXG5cbi8vIENvbmZpZ3VyYXRpb25cblxuLy8gQmFzZSBmb250IHNpemVcbiRyZnMtYmFzZS1mb250LXNpemU6IDEuMjVyZW0gIWRlZmF1bHQ7XG4kcmZzLWZvbnQtc2l6ZS11bml0OiByZW0gIWRlZmF1bHQ7XG5cbkBpZiAkcmZzLWZvbnQtc2l6ZS11bml0ICE9IHJlbSBhbmQgJHJmcy1mb250LXNpemUtdW5pdCAhPSBweCB7XG4gIEBlcnJvciBcImAjeyRyZnMtZm9udC1zaXplLXVuaXR9YCBpcyBub3QgYSB2YWxpZCB1bml0IGZvciAkcmZzLWZvbnQtc2l6ZS11bml0LiBVc2UgYHB4YCBvciBgcmVtYC5cIjtcbn1cblxuLy8gQnJlYWtwb2ludCBhdCB3aGVyZSBmb250LXNpemUgc3RhcnRzIGRlY3JlYXNpbmcgaWYgc2NyZWVuIHdpZHRoIGlzIHNtYWxsZXJcbiRyZnMtYnJlYWtwb2ludDogMTIwMHB4ICFkZWZhdWx0O1xuJHJmcy1icmVha3BvaW50LXVuaXQ6IHB4ICFkZWZhdWx0O1xuXG5AaWYgJHJmcy1icmVha3BvaW50LXVuaXQgIT0gcHggYW5kICRyZnMtYnJlYWtwb2ludC11bml0ICE9IGVtIGFuZCAkcmZzLWJyZWFrcG9pbnQtdW5pdCAhPSByZW0ge1xuICBAZXJyb3IgXCJgI3skcmZzLWJyZWFrcG9pbnQtdW5pdH1gIGlzIG5vdCBhIHZhbGlkIHVuaXQgZm9yICRyZnMtYnJlYWtwb2ludC11bml0LiBVc2UgYHB4YCwgYGVtYCBvciBgcmVtYC5cIjtcbn1cblxuLy8gUmVzaXplIGZvbnQgc2l6ZSBiYXNlZCBvbiBzY3JlZW4gaGVpZ2h0IGFuZCB3aWR0aFxuJHJmcy10d28tZGltZW5zaW9uYWw6IGZhbHNlICFkZWZhdWx0O1xuXG4vLyBGYWN0b3Igb2YgZGVjcmVhc2VcbiRyZnMtZmFjdG9yOiAxMCAhZGVmYXVsdDtcblxuQGlmIHR5cGUtb2YoJHJmcy1mYWN0b3IpICE9IFwibnVtYmVyXCIgb3IgJHJmcy1mYWN0b3IgPD0gMSB7XG4gIEBlcnJvciBcImAjeyRyZnMtZmFjdG9yfWAgaXMgbm90IGEgdmFsaWQgICRyZnMtZmFjdG9yLCBpdCBtdXN0IGJlIGdyZWF0ZXIgdGhhbiAxLlwiO1xufVxuXG4vLyBHZW5lcmF0ZSBlbmFibGUgb3IgZGlzYWJsZSBjbGFzc2VzLiBQb3NzaWJpbGl0aWVzOiBmYWxzZSwgXCJlbmFibGVcIiBvciBcImRpc2FibGVcIlxuJHJmcy1jbGFzczogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vIDEgcmVtID0gJHJmcy1yZW0tdmFsdWUgcHhcbiRyZnMtcmVtLXZhbHVlOiAxNiAhZGVmYXVsdDtcblxuLy8gU2FmYXJpIGlmcmFtZSByZXNpemUgYnVnOiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9yZnMvaXNzdWVzLzE0XG4kcmZzLXNhZmFyaS1pZnJhbWUtcmVzaXplLWJ1Zy1maXg6IGZhbHNlICFkZWZhdWx0O1xuXG4vLyBEaXNhYmxlIFJGUyBieSBzZXR0aW5nICRlbmFibGUtcmVzcG9uc2l2ZS1mb250LXNpemVzIHRvIGZhbHNlXG4kZW5hYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplczogdHJ1ZSAhZGVmYXVsdDtcblxuLy8gQ2FjaGUgJHJmcy1iYXNlLWZvbnQtc2l6ZSB1bml0XG4kcmZzLWJhc2UtZm9udC1zaXplLXVuaXQ6IHVuaXQoJHJmcy1iYXNlLWZvbnQtc2l6ZSk7XG5cbkBmdW5jdGlvbiBkaXZpZGUoJGRpdmlkZW5kLCAkZGl2aXNvciwgJHByZWNpc2lvbjogMTApIHtcbiAgJHNpZ246IGlmKCRkaXZpZGVuZCA+IDAgYW5kICRkaXZpc29yID4gMCBvciAkZGl2aWRlbmQgPCAwIGFuZCAkZGl2aXNvciA8IDAsIDEsIC0xKTtcbiAgJGRpdmlkZW5kOiBhYnMoJGRpdmlkZW5kKTtcbiAgJGRpdmlzb3I6IGFicygkZGl2aXNvcik7XG4gIEBpZiAkZGl2aWRlbmQgPT0gMCB7XG4gICAgQHJldHVybiAwO1xuICB9XG4gIEBpZiAkZGl2aXNvciA9PSAwIHtcbiAgICBAZXJyb3IgXCJDYW5ub3QgZGl2aWRlIGJ5IDBcIjtcbiAgfVxuICAkcmVtYWluZGVyOiAkZGl2aWRlbmQ7XG4gICRyZXN1bHQ6IDA7XG4gICRmYWN0b3I6IDEwO1xuICBAd2hpbGUgKCRyZW1haW5kZXIgPiAwIGFuZCAkcHJlY2lzaW9uID49IDApIHtcbiAgICAkcXVvdGllbnQ6IDA7XG4gICAgQHdoaWxlICgkcmVtYWluZGVyID49ICRkaXZpc29yKSB7XG4gICAgICAkcmVtYWluZGVyOiAkcmVtYWluZGVyIC0gJGRpdmlzb3I7XG4gICAgICAkcXVvdGllbnQ6ICRxdW90aWVudCArIDE7XG4gICAgfVxuICAgICRyZXN1bHQ6ICRyZXN1bHQgKiAxMCArICRxdW90aWVudDtcbiAgICAkZmFjdG9yOiAkZmFjdG9yICogLjE7XG4gICAgJHJlbWFpbmRlcjogJHJlbWFpbmRlciAqIDEwO1xuICAgICRwcmVjaXNpb246ICRwcmVjaXNpb24gLSAxO1xuICAgIEBpZiAoJHByZWNpc2lvbiA8IDAgYW5kICRyZW1haW5kZXIgPj0gJGRpdmlzb3IgKiA1KSB7XG4gICAgICAkcmVzdWx0OiAkcmVzdWx0ICsgMTtcbiAgICB9XG4gIH1cbiAgJHJlc3VsdDogJHJlc3VsdCAqICRmYWN0b3IgKiAkc2lnbjtcbiAgJGRpdmlkZW5kLXVuaXQ6IHVuaXQoJGRpdmlkZW5kKTtcbiAgJGRpdmlzb3ItdW5pdDogdW5pdCgkZGl2aXNvcik7XG4gICR1bml0LW1hcDogKFxuICAgIFwicHhcIjogMXB4LFxuICAgIFwicmVtXCI6IDFyZW0sXG4gICAgXCJlbVwiOiAxZW0sXG4gICAgXCIlXCI6IDElXG4gICk7XG4gIEBpZiAoJGRpdmlkZW5kLXVuaXQgIT0gJGRpdmlzb3ItdW5pdCBhbmQgbWFwLWhhcy1rZXkoJHVuaXQtbWFwLCAkZGl2aWRlbmQtdW5pdCkpIHtcbiAgICAkcmVzdWx0OiAkcmVzdWx0ICogbWFwLWdldCgkdW5pdC1tYXAsICRkaXZpZGVuZC11bml0KTtcbiAgfVxuICBAcmV0dXJuICRyZXN1bHQ7XG59XG5cbi8vIFJlbW92ZSBweC11bml0IGZyb20gJHJmcy1iYXNlLWZvbnQtc2l6ZSBmb3IgY2FsY3VsYXRpb25zXG5AaWYgJHJmcy1iYXNlLWZvbnQtc2l6ZS11bml0ID09IFwicHhcIiB7XG4gICRyZnMtYmFzZS1mb250LXNpemU6IGRpdmlkZSgkcmZzLWJhc2UtZm9udC1zaXplLCAkcmZzLWJhc2UtZm9udC1zaXplICogMCArIDEpO1xufVxuQGVsc2UgaWYgJHJmcy1iYXNlLWZvbnQtc2l6ZS11bml0ID09IFwicmVtXCIge1xuICAkcmZzLWJhc2UtZm9udC1zaXplOiBkaXZpZGUoJHJmcy1iYXNlLWZvbnQtc2l6ZSwgZGl2aWRlKCRyZnMtYmFzZS1mb250LXNpemUgKiAwICsgMSwgJHJmcy1yZW0tdmFsdWUpKTtcbn1cblxuLy8gQ2FjaGUgJHJmcy1icmVha3BvaW50IHVuaXQgdG8gcHJldmVudCBtdWx0aXBsZSBjYWxsc1xuJHJmcy1icmVha3BvaW50LXVuaXQtY2FjaGU6IHVuaXQoJHJmcy1icmVha3BvaW50KTtcblxuLy8gUmVtb3ZlIHVuaXQgZnJvbSAkcmZzLWJyZWFrcG9pbnQgZm9yIGNhbGN1bGF0aW9uc1xuQGlmICRyZnMtYnJlYWtwb2ludC11bml0LWNhY2hlID09IFwicHhcIiB7XG4gICRyZnMtYnJlYWtwb2ludDogZGl2aWRlKCRyZnMtYnJlYWtwb2ludCwgJHJmcy1icmVha3BvaW50ICogMCArIDEpO1xufVxuQGVsc2UgaWYgJHJmcy1icmVha3BvaW50LXVuaXQtY2FjaGUgPT0gXCJyZW1cIiBvciAkcmZzLWJyZWFrcG9pbnQtdW5pdC1jYWNoZSA9PSBcImVtXCIge1xuICAkcmZzLWJyZWFrcG9pbnQ6IGRpdmlkZSgkcmZzLWJyZWFrcG9pbnQsIGRpdmlkZSgkcmZzLWJyZWFrcG9pbnQgKiAwICsgMSwgJHJmcy1yZW0tdmFsdWUpKTtcbn1cblxuLy8gSW50ZXJuYWwgbWl4aW4gdGhhdCBhZGRzIGRpc2FibGUgY2xhc3NlcyB0byB0aGUgc2VsZWN0b3IgaWYgbmVlZGVkLlxuQG1peGluIF9yZnMtZGlzYWJsZS1jbGFzcyB7XG4gIEBpZiAkcmZzLWNsYXNzID09IFwiZGlzYWJsZVwiIHtcbiAgICAvLyBBZGRpbmcgYW4gZXh0cmEgY2xhc3MgaW5jcmVhc2VzIHNwZWNpZmljaXR5LCB3aGljaCBwcmV2ZW50cyB0aGUgbWVkaWEgcXVlcnkgdG8gb3ZlcnJpZGUgdGhlIGZvbnQgc2l6ZVxuICAgICYsXG4gICAgLmRpc2FibGUtcmVzcG9uc2l2ZS1mb250LXNpemUgJixcbiAgICAmLmRpc2FibGUtcmVzcG9uc2l2ZS1mb250LXNpemUge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBJbnRlcm5hbCBtaXhpbiB0aGF0IGFkZHMgZW5hYmxlIGNsYXNzZXMgdG8gdGhlIHNlbGVjdG9yIGlmIG5lZWRlZC5cbkBtaXhpbiBfcmZzLWVuYWJsZS1jbGFzcyB7XG4gIEBpZiAkcmZzLWNsYXNzID09IFwiZW5hYmxlXCIge1xuICAgIC5lbmFibGUtcmVzcG9uc2l2ZS1mb250LXNpemUgJixcbiAgICAmLmVuYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vIEludGVybmFsIG1peGluIHVzZWQgdG8gZGV0ZXJtaW5lIHdoaWNoIG1lZGlhIHF1ZXJ5IG5lZWRzIHRvIGJlIHVzZWRcbkBtaXhpbiBfcmZzLW1lZGlhLXF1ZXJ5KCRtcS12YWx1ZSkge1xuICBAaWYgJHJmcy10d28tZGltZW5zaW9uYWwge1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAjeyRtcS12YWx1ZX0pLCAobWF4LWhlaWdodDogI3skbXEtdmFsdWV9KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAjeyRtcS12YWx1ZX0pIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLyBSZXNwb25zaXZlIGZvbnQgc2l6ZSBtaXhpblxuQG1peGluIHJmcygkZnMsICRpbXBvcnRhbnQ6IGZhbHNlKSB7XG4gIC8vIENhY2hlICRmcyB1bml0XG4gICRmcy11bml0OiBpZih0eXBlLW9mKCRmcykgPT0gXCJudW1iZXJcIiwgdW5pdCgkZnMpLCBmYWxzZSk7XG5cbiAgLy8gQWRkICFpbXBvcnRhbnQgc3VmZml4IGlmIG5lZWRlZFxuICAkcmZzLXN1ZmZpeDogaWYoJGltcG9ydGFudCwgXCIgIWltcG9ydGFudFwiLCBcIlwiKTtcblxuICAvLyBJZiAkZnMgaXNuJ3QgYSBudW1iZXIgKGxpa2UgaW5oZXJpdCkgb3IgJGZzIGhhcyBhIHVuaXQgKG5vdCBweCBvciByZW0sIGxpa2UgMS41ZW0pIG9yICQgaXMgMCwganVzdCBwcmludCB0aGUgdmFsdWVcbiAgQGlmIG5vdCAkZnMtdW5pdCBvciAkZnMtdW5pdCAhPSBcIlwiIGFuZCAkZnMtdW5pdCAhPSBcInB4XCIgYW5kICRmcy11bml0ICE9IFwicmVtXCIgb3IgJGZzID09IDAge1xuICAgIGZvbnQtc2l6ZTogI3skZnN9I3skcmZzLXN1ZmZpeH07XG4gIH1cbiAgQGVsc2Uge1xuICAgIC8vIFJlbW92ZSB1bml0IGZyb20gJGZzIGZvciBjYWxjdWxhdGlvbnNcbiAgICBAaWYgJGZzLXVuaXQgPT0gXCJweFwiIHtcbiAgICAgICRmczogZGl2aWRlKCRmcywgJGZzICogMCArIDEpO1xuICAgIH1cbiAgICBAZWxzZSBpZiAkZnMtdW5pdCA9PSBcInJlbVwiIHtcbiAgICAgICRmczogZGl2aWRlKCRmcywgZGl2aWRlKCRmcyAqIDAgKyAxLCAkcmZzLXJlbS12YWx1ZSkpO1xuICAgIH1cblxuICAgIC8vIFNldCBkZWZhdWx0IGZvbnQgc2l6ZVxuICAgICRyZnMtc3RhdGljOiBpZigkcmZzLWZvbnQtc2l6ZS11bml0ID09IHJlbSwgI3tkaXZpZGUoJGZzLCAkcmZzLXJlbS12YWx1ZSl9cmVtLCAjeyRmc31weCk7XG5cbiAgICAvLyBPbmx5IGFkZCB0aGUgbWVkaWEgcXVlcnkgaWYgdGhlIGZvbnQgc2l6ZSBpcyBiaWdnZXIgdGhhbiB0aGUgbWluaW11bSBmb250IHNpemVcbiAgICBAaWYgJGZzIDw9ICRyZnMtYmFzZS1mb250LXNpemUgb3Igbm90ICRlbmFibGUtcmVzcG9uc2l2ZS1mb250LXNpemVzIHtcbiAgICAgIGZvbnQtc2l6ZTogI3skcmZzLXN0YXRpY30jeyRyZnMtc3VmZml4fTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgLy8gQ2FsY3VsYXRlIHRoZSBtaW5pbXVtIGZvbnQgc2l6ZSBmb3IgJGZzXG4gICAgICAkZnMtbWluOiAkcmZzLWJhc2UtZm9udC1zaXplICsgZGl2aWRlKCRmcyAtICRyZnMtYmFzZS1mb250LXNpemUsICRyZnMtZmFjdG9yKTtcblxuICAgICAgLy8gQ2FsY3VsYXRlIGRpZmZlcmVuY2UgYmV0d2VlbiAkZnMgYW5kIHRoZSBtaW5pbXVtIGZvbnQgc2l6ZVxuICAgICAgJGZzLWRpZmY6ICRmcyAtICRmcy1taW47XG5cbiAgICAgIC8vIEJhc2UgZm9udC1zaXplIGZvcm1hdHRpbmdcbiAgICAgICRtaW4td2lkdGg6IGlmKCRyZnMtZm9udC1zaXplLXVuaXQgPT0gcmVtLCAje2RpdmlkZSgkZnMtbWluLCAkcmZzLXJlbS12YWx1ZSl9cmVtLCAjeyRmcy1taW59cHgpO1xuXG4gICAgICAvLyBVc2UgYHZtaW5gIGlmIHR3by1kaW1lbnNpb25hbCBpcyBlbmFibGVkXG4gICAgICAkdmFyaWFibGUtdW5pdDogaWYoJHJmcy10d28tZGltZW5zaW9uYWwsIHZtaW4sIHZ3KTtcblxuICAgICAgLy8gQ2FsY3VsYXRlIHRoZSB2YXJpYWJsZSB3aWR0aCBiZXR3ZWVuIDAgYW5kICRyZnMtYnJlYWtwb2ludFxuICAgICAgJHZhcmlhYmxlLXdpZHRoOiAje2RpdmlkZSgkZnMtZGlmZiAqIDEwMCwgJHJmcy1icmVha3BvaW50KX0jeyR2YXJpYWJsZS11bml0fTtcblxuICAgICAgLy8gU2V0IHRoZSBjYWxjdWxhdGVkIGZvbnQtc2l6ZVxuICAgICAgJHJmcy1mbHVpZDogY2FsYygjeyRtaW4td2lkdGh9ICsgI3skdmFyaWFibGUtd2lkdGh9KSAjeyRyZnMtc3VmZml4fTtcblxuICAgICAgLy8gQnJlYWtwb2ludCBmb3JtYXR0aW5nXG4gICAgICAkbXEtdmFsdWU6IGlmKCRyZnMtYnJlYWtwb2ludC11bml0ID09IHB4LCAjeyRyZnMtYnJlYWtwb2ludH1weCwgI3tkaXZpZGUoJHJmcy1icmVha3BvaW50LCAkcmZzLXJlbS12YWx1ZSl9I3skcmZzLWJyZWFrcG9pbnQtdW5pdH0pO1xuXG4gICAgICBAaW5jbHVkZSBfcmZzLWRpc2FibGUtY2xhc3Mge1xuICAgICAgICBmb250LXNpemU6ICN7JHJmcy1zdGF0aWN9I3skcmZzLXN1ZmZpeH07XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIF9yZnMtbWVkaWEtcXVlcnkoJG1xLXZhbHVlKSB7XG4gICAgICAgIEBpbmNsdWRlIF9yZnMtZW5hYmxlLWNsYXNzIHtcbiAgICAgICAgICBmb250LXNpemU6ICRyZnMtZmx1aWQ7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBJbmNsdWRlIHNhZmFyaSBpZnJhbWUgcmVzaXplIGZpeCBpZiBuZWVkZWRcbiAgICAgICAgbWluLXdpZHRoOiBpZigkcmZzLXNhZmFyaS1pZnJhbWUtcmVzaXplLWJ1Zy1maXgsICgwICogMXZ3KSwgbnVsbCk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIFRoZSBmb250LXNpemUgJiByZXNwb25zaXZlLWZvbnQtc2l6ZSBtaXhpbnMgdXNlIFJGUyB0byByZXNjYWxlIHRoZSBmb250IHNpemVcbkBtaXhpbiBmb250LXNpemUoJGZzLCAkaW1wb3J0YW50OiBmYWxzZSkge1xuICBAaW5jbHVkZSByZnMoJGZzLCAkaW1wb3J0YW50KTtcbn1cblxuQG1peGluIHJlc3BvbnNpdmUtZm9udC1zaXplKCRmcywgJGltcG9ydGFudDogZmFsc2UpIHtcbiAgQGluY2x1ZGUgcmZzKCRmcywgJGltcG9ydGFudCk7XG59XG4iLCIuVHVybktleUNSTSB7XG4gIGZpZWxkc2V0IHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICB9XG59XG5cbmlucHV0W3R5cGU9XCJ0ZXh0XCJdIHtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItcmFkaXVzOiAxMDBweDtcbn1cblxudGV4dGFyZWEge1xuICBib3JkZXItcmFkaXVzOiAyMHB4O1xufVxuXG4uaW5wdXRmaWxlIHtcbiAgd2lkdGg6IDAuMXB4O1xuICBoZWlnaHQ6IDAuMXB4O1xuICBvcGFjaXR5OiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IC0xO1xufVxuXG4uaW5wdXRmaWxlICsgbGFiZWwge1xuICBjb2xvcjogJHdoaXRlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBwYWRkaW5nOiAwLjRyZW0gMXJlbTtcbiAgd2lkdGg6IDEwMCU7XG4gIGxpbmUtaGVpZ2h0OiAyO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4ycyBlYXNlLWluLW91dDtcbiAgYm9yZGVyLXJhZGl1czogMTAwcHg7XG4gIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpO1xuICBwYWRkaW5nOiAwLjVyZW07XG4gIGhlaWdodDogMzdweDtcbiAgY29sb3I6ICRjb2xvci1tYWRlbnRhLWRhcmstZ3JheS0yO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgc3BhbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLW1hZGVudGEtbGlsYS0zO1xuICAgIHBhZGRpbmc6IDAuNWVtIDFlbTtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIGJvcmRlci1yYWRpdXM6IDExMDBweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTtcbiAgfVxufVxuXG4uaW5wdXRmaWxlOmZvY3VzICsgbGFiZWwsXG4uaW5wdXRmaWxlICsgbGFiZWw6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItbWFkZW50YS1tYWdlbnRhLTE7XG4gIGNvbG9yOiAkd2hpdGU7XG59XG5cbi5uZi1lcnJvci5maWVsZC13cmFwIC5uZi1maWVsZC1lbGVtZW50OjphZnRlciB7XG4gIHRvcDogNHB4ICFpbXBvcnRhbnQ7XG4gIHJpZ2h0OiA4cHggIWltcG9ydGFudDtcbiAgaGVpZ2h0OiAyOHB4ICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiAyOHB4ICFpbXBvcnRhbnQ7XG4gIGxpbmUtaGVpZ2h0OiAyOHB4ICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFpbXBvcnRhbnQ7XG59XG5cbi5uZi1wYXNzLmZpZWxkLXdyYXAgLm5mLWZpZWxkLWVsZW1lbnQ6YWZ0ZXIge1xuICB0b3A6IDRweCAhaW1wb3J0YW50O1xuICByaWdodDogOHB4ICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogMjhweCAhaW1wb3J0YW50O1xuICB3aWR0aDogMjhweCAhaW1wb3J0YW50O1xuICBsaW5lLWhlaWdodDogMjhweCAhaW1wb3J0YW50O1xufVxuXG4ubmYtZXJyb3ItbXNnLm5mLWVycm9yLWludmFsaWQtZW1haWwsXG4ubmYtZXJyb3ItbXNnLm5mLWVycm9yLWZpZWxkLWVycm9ycyxcbi5uZi1lcnJvci1tc2cubmYtZXJyb3ItcmVxdWlyZWQtZXJyb3Ige1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItcmVkLWxpZ2h0O1xuICBjb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IDAuMnJlbSAxcmVtO1xuICBmb250LXdlaWdodDogNjAwO1xuICBib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhaW1wb3J0YW50O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5uZi1lcnJvci5saXN0aW1hZ2Utd3JhcCAubmYtZmllbGQtZWxlbWVudCB1bCxcbi5uZi1lcnJvciAubmluamEtZm9ybXMtZmllbGQge1xuICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3ItcmVkLWxpZ2h0ICFpbXBvcnRhbnQ7XG59XG4ubmYtZXJyb3ItbXNnLm5mLWVycm9yLWludmFsaWQtZW1haWwsXG4ubmYtZXJyb3ItbXNnLm5mLWVycm9yLXJlcXVpcmVkLWVycm9yIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHotaW5kZXg6IDM7XG4gIHJpZ2h0OiAwO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgZm9udC1zaXplOiByZW0tY2FsYygxMSwgMTVweCk7XG4gIG1pbi13aWR0aDogMjAwcHg7XG4gIGZpbHRlcjogZHJvcC1zaGFkb3coMCAycHggMnB4IHJnYmEoJGJsYWNrLCAwLjI1KSk7XG5cbiAgJjo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlci10b3A6IDE1cHggc29saWQgJGNvbG9yLXJlZC1saWdodDtcbiAgICBib3JkZXItcmlnaHQ6IDE1cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAxMHB4O1xuICB9XG59XG5cbi5uZi1lcnJvci1tc2cubmYtZXJyb3ItZmllbGQtZXJyb3JzIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLm5mLWFmdGVyLWZpZWxkIC5uZi1lcnJvci1tc2cge1xuICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcbn1cblxuLmNhbGwtdXMge1xuICBuZi1maWVsZDpmaXJzdC1jaGlsZCB7XG4gICAgLm5mLWVycm9yLW1zZy5uZi1lcnJvci1yZXF1aXJlZC1lcnJvciB7XG4gICAgICByaWdodDogM3JlbTtcbiAgICB9XG4gIH1cbn1cblxuLlJlc3BvbnNlIGltZyB7XG4gIHdpZHRoOiAyMHB4O1xufVxuLlJlc3BvbnNlRXJyb3Ige1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItcmVkO1xuICBjb2xvcjogJHdoaXRlO1xuICAvLyAgIGJvcmRlci1yYWRpdXM6IDQwcHg7XG4gIHBhZGRpbmc6IDAuNXJlbSAxcmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tdG9wOiAxcmVtO1xufVxuXG4uZm9ybS1rb3p0ZXMge1xuICBpbnB1dCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICBib3JkZXItcmFkaXVzOiAxMDBweDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcblxuICAgICY6Zm9jdXMge1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgIH1cblxuICAgICY6OnBsYWNlaG9sZGVyIHtcbiAgICAgIGNvbG9yOiAjOWZhMWE2O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG5cbiAgLklucHV0QmxvY2sge1xuICAgIG1hcmdpbi1yaWdodDogMXJlbTtcbiAgfVxuXG4gIC5ncmlkLmNvbC0xLTMge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIGF1dG87XG4gICAgfVxuICB9XG5cbiAgaW5wdXRbdHlwZT1cIlN1Ym1pdFwiXSB7XG4gICAgcGFkZGluZzogMC41cmVtO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1tYWdlbnRhO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjQ1O1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBtaW4td2lkdGg6IDIwMHB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgbWF4LXdpZHRoOiAyMDBweDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcblxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXB1cnBsZTtcbiAgICB9XG4gIH1cbn1cbiIsIi8qKioqKioqKioqKioqKioqKioqKioqKioqKlxcXG4gIEJhc2ljIE1vZGFsIFN0eWxlc1xuXFwqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLm1vZGFsIHtcbiAgICBmb250LWZhbWlseTogLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBhdmVuaXIgbmV4dCwgYXZlbmlyLCBoZWx2ZXRpY2EgbmV1ZSwgaGVsdmV0aWNhLCB1YnVudHUsIHJvYm90bywgbm90bywgc2Vnb2UgdWksIGFyaWFsLCBzYW5zLXNlcmlmO1xufVxuXG4ubW9kYWxfX292ZXJsYXkge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgYmFja2dyb3VuZDogcmdiYSgkYmxhY2ssIDAuOSk7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHotaW5kZXg6IDk5OTk5OTk7XG59XG5cbi5tb2RhbF9fY29udGFpbmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIHBhZGRpbmc6IDMwcHg7XG4gICAgbWF4LWhlaWdodDogMTAwdmg7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBcbiAgICAmLmluc3RhZ3JhbV9fY29udGFpbmVyIHtcbiAgICAgICAgbWF4LXdpZHRoOiA1MDBweDtcbiAgICB9XG59XG5cbi5tb2RhbF9faGVhZGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLm1vZGFsX190aXRsZSB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI1O1xuICAgIGNvbG9yOiAjMDA0NDllO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbi5tb2RhbF9fY2xvc2Uge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogMDtcbiAgICBjdXJzb3I6cG9pbnRlcjtcbn1cblxuLm1vZGFsX19oZWFkZXIgLm1vZGFsX19jbG9zZTpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFwyNzE1XCI7XG59XG5cbi5tb2RhbF9fY29udGVudCB7XG4gICAgbWFyZ2luLXRvcDogMnJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgLjgpO1xuXG5cbiAgICAucG9zdC1kYXRhIHtcbiAgICAgICAgbWF4LXdpZHRoOiA2NDBweDtcbiAgICB9XG4gICAgLmxpa2VzLCAuY29tbWVudHMsIC5mb2xsb3cge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGNvbG9yOiAkY29sb3ItbWFnZW50YTtcbiAgICAgICAgcGFkZGluZzogMXJlbSAwO1xuICAgIH1cblxuICAgIC5saWtlcywgLmNvbW1lbnRzIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xuICAgIH1cbn1cblxuXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKlxcXG4gIERlbW8gQW5pbWF0aW9uIFN0eWxlXG5cXCoqKioqKioqKioqKioqKioqKioqKioqKioqL1xuQGtleWZyYW1lcyBtbWZhZGVJbiB7XG4gICAgZnJvbSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxuXG4gICAgdG8ge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyBtbWZhZGVPdXQge1xuICAgIGZyb20ge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgIH1cblxuICAgIHRvIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICB9XG59XG5cbkBrZXlmcmFtZXMgbW1zbGlkZUluIHtcbiAgICBmcm9tIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDE1JSk7XG4gICAgfVxuXG4gICAgdG8ge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIG1tc2xpZGVPdXQge1xuICAgIGZyb20ge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgfVxuXG4gICAgdG8ge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwJSk7XG4gICAgfVxufVxuXG4ubWljcm9tb2RhbC1zbGlkZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cblxuLm1pY3JvbW9kYWwtc2xpZGUuaXMtb3BlbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5taWNyb21vZGFsLXNsaWRlW2FyaWEtaGlkZGVuPVwiZmFsc2VcIl0gLm1vZGFsX19vdmVybGF5IHtcbiAgICBhbmltYXRpb246IG1tZmFkZUluIC4zcyBjdWJpYy1iZXppZXIoMC4wLCAwLjAsIDAuMiwgMSk7XG59XG5cbi5taWNyb21vZGFsLXNsaWRlW2FyaWEtaGlkZGVuPVwiZmFsc2VcIl0gLm1vZGFsX19jb250YWluZXIge1xuICAgIGFuaW1hdGlvbjogbW1zbGlkZUluIC4zcyBjdWJpYy1iZXppZXIoMCwgMCwgLjIsIDEpO1xufVxuXG4ubWljcm9tb2RhbC1zbGlkZVthcmlhLWhpZGRlbj1cInRydWVcIl0gLm1vZGFsX19vdmVybGF5IHtcbiAgICBhbmltYXRpb246IG1tZmFkZU91dCAuM3MgY3ViaWMtYmV6aWVyKDAuMCwgMC4wLCAwLjIsIDEpO1xufVxuXG4ubWljcm9tb2RhbC1zbGlkZVthcmlhLWhpZGRlbj1cInRydWVcIl0gLm1vZGFsX19jb250YWluZXIge1xuICAgIGFuaW1hdGlvbjogbW1zbGlkZU91dCAuM3MgY3ViaWMtYmV6aWVyKDAsIDAsIC4yLCAxKTtcbn1cblxuLm1pY3JvbW9kYWwtc2xpZGUgLm1vZGFsX19jb250YWluZXIsXG4ubWljcm9tb2RhbC1zbGlkZSAubW9kYWxfX292ZXJsYXkge1xuICAgIHdpbGwtY2hhbmdlOiB0cmFuc2Zvcm07XG59IiwiLy8gQXBwbHkgb3V0bGluZSBzdHlsZXMgb25seSB3aGVuIGlucHV0IG1ldGhvZCBpcyBrZXlib2FyZFxuLy8gcmVtb3ZlIDpmb2N1cyBzdHlsZSB2aWEgV2hhdCBJbnB1dCB1c2luZyBwcm9ncmVzc2l2ZSBlbmhhbmNlbWVudFxuLy8gc28gOmZvY3VzIGlzbid0IGxlZnQgYnJva2VuIGlmIEphdmFTY3JpcHQgZmFpbHNcblxuW2RhdGEtd2hhdGlucHV0PVwibW91c2VcIl0gYTpmb2N1cywgYnV0dG9uOmZvY3VzXG5bZGF0YS13aGF0aW5wdXQ9XCJ0b3VjaFwiXSBhOmZvY3VzLCBidXR0b246Zm9jdXMge1xuICBvdXRsaW5lOiBub25lO1xufVxuXG5cbi5hbmNob3Ige1xuICBkaXNwbGF5OiBibG9jaztcbiAgLy8gaGVpZ2h0OiAxMDBweDtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogMTAwcHg7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICB0b3A6IC0xMDBweDtcbiAgfVxufVxuIiwiLnByaWNlLWNoZWNrIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2E4YmMwZDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2E4YmMwZDtcbiAgICB6LWluZGV4OiAxO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgfVxuXG4gIC5JbnB1dEJsb2NrIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICB9XG5cbiAgLmltYWdlLWNvbnRhaW5lciB7XG4gICAgQGluY2x1ZGUgaGlkZS1mb3IobGFyZ2UpO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAyO1xuICAgIGltZyB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cblxuICAudGV4dC1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiBjb2x1bW47XG4gICAgcGFkZGluZzogMnJlbTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMjtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIHdpZHRoOiA1MCU7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxMCU7XG4gICAgfVxuXG4gICAgJi5mdWxsLXdpZHRoIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgfVxuICB9XG5cbiAgLnRleHQtY29udGFpbmVyLWlubmVyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIHAge1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gIH1cblxuICB0ZXh0YXJlYSxcbiAgaW5wdXRbdHlwZT1cInRleHRcIl0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAmOjpwbGFjZWhvbGRlciB7XG4gICAgfVxuICB9XG4gIHRleHRhcmVhIHtcbiAgICBib3JkZXItcmFkaXVzOiAxNXB4O1xuICB9XG4gIGlucHV0W3R5cGU9XCJ0ZXh0XCJdIHtcbiAgICBib3JkZXItcmFkaXVzOiAxMDBweDtcbiAgfVxuICBpbnB1dFt0eXBlPVwiU3VibWl0XCJdIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItbWFkZW50YS1saWxhLTM7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBwYWRkaW5nOiAwLjVyZW07XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMnMgZWFzZS1pbi1vdXQ7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBib3JkZXItcmFkaXVzOiAxMDBweDtcbiAgICBoZWlnaHQ6IDM3cHg7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1tYWRlbnRhLWxpbGEtMTtcbiAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgfVxuICB9XG5cbiAgLmZpZWxkc2V0IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG5cbiAgLmZpZWxkc2V0LWlubmVyIHtcbiAgICAvLyBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmbGV4OiAxIDAgY2FsYyg1MCUgLSAxcmVtKTtcbiAgICBtYXJnaW4tcmlnaHQ6IDFyZW07XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgIGZsZXg6IDEgMCAxMDAlO1xuICAgIH1cbiAgfVxuXG4gIC5JbnB1dEJsb2NrIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIC5pbnB1dGZpbGU6Zm9jdXMgKyBsYWJlbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLW1hZGVudGEtbGlsYS0xO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvci1tYWRlbnRhLWxpbGEtMTtcbiAgICBjb2xvcjogJHdoaXRlO1xuICB9XG5cbiAgdGV4dGFyZWEge1xuICAgIGhlaWdodDogMTQycHg7XG4gIH1cblxuICAmLmJsb2NrLWl0ZW0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1tYWRlbnRhLWdyZWVuLTE7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgLy8gbWFyZ2luLWxlZnQ6IGNhbGMoIC0xMDB2dyAvIDIgKyAxMDAlIC8gMiApO1xuICAgIC8vIG1hcmdpbi1yaWdodDogY2FsYyggLTEwMHZ3IC8gMiArIDEwMCUgLyAyICk7XG4gICAgLy8gbWF4LXdpZHRoOiAxMDB2dztcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgfVxuXG4gICAgLnBhcmFncmFwaC10aXRsZSB7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE4KTtcbiAgICB9XG5cbiAgICAuaW1hZ2UtY29udGFpbmVyIHtcbiAgICAgIGZsZXg6IDEgMSA0MCU7XG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuXG4gICAgICBpbWcge1xuICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBsYWJlbCB7XG4gICAgLy8gICBmb250LXNpemU6IHJlbS1jYWxjKDEyKTtcbiAgICAvLyAgIGhlaWdodDogNTFweDtcbiAgICAvLyAgIHBhZGRpbmc6IDAuNXJlbSAxcmVtIDAuNXJlbSA0cmVtO1xuICAgIC8vICAgbGluZS1oZWlnaHQ6IDEyMCU7XG4gICAgLy8gICBzcGFuIHtcbiAgICAvLyAgICAgZm9udC1zaXplOiByZW0tY2FsYygxMik7XG4gICAgLy8gICB9XG4gICAgLy8gfVxuICB9XG59IiwiLm1hcHMtY29udGFpbmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLWJvdHRvbTogNzUlO1xuICBoZWlnaHQ6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG1heC13aWR0aDogMTAwJTtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgcGFkZGluZy1ib3R0b206IDI1JTtcbiAgfVxufVxuXG4ubWFwcy1jb250YWluZXIgZW1iZWQsXG4ubWFwcy1jb250YWluZXIgaWZyYW1lLFxuLm1hcHMtY29udGFpbmVyIG9iamVjdCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuIiwiLmxhdGVzdC1wb3N0cyB7XG4gIHBhZGRpbmc6IDNyZW0gMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0UwRTJFNTtcblxuICAubGF0ZXN0LXBvc3RzLWNhcm91c2VsLXdyYXBwZXIge1xuICAgIG1pbi13aWR0aDogMTAwJTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Ugb25seSkge1xuICAgICAgcGFkZGluZzogMCAzcmVtO1xuICAgIH1cbiAgfVxuXG4gIC5vd2wtY2Fyb3VzZWwge1xuICBcdC5vd2wtc3RhZ2Uge1xuICBcdFx0ZGlzcGxheTogZmxleDtcbiAgXHR9XG4gIFx0Lm93bC1pdGVtIHtcbiAgXHRcdGRpc3BsYXk6IGZsZXg7XG4gIFx0XHRmbGV4OiAxIDAgYXV0bztcbiAgXHR9XG4gIH1cblxuICAub3dsLW5hdiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICBsZWZ0OiAtMnJlbTtcbiAgICByaWdodDogLTJyZW07XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cbiAgICBpIHtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoNDApO1xuICAgIH1cbiAgfVxuXG4gIC5vd2wtc3RhZ2Utb3V0ZXIge1xuICAgIHBhZGRpbmc6IDFyZW0gMDtcbiAgICAvLyBvdmVyZmxvdzogaW5pdGlhbDtcbiAgfVxuXG4gIC5vd2wtZG90cyB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBhZGRpbmc6IDFyZW0gMDtcbiAgICBzcGFuIHtcbiAgICAgIHdpZHRoOiAxMHB4O1xuICAgICAgaGVpZ2h0OiAxMHB4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0E2QUJCNTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWFyZ2luOiAuNHJlbTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICB9XG4gICAgLm93bC1kb3QuYWN0aXZlIHNwYW4ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXB1cnBsZVxuICAgIH1cbiAgfVxuXG4gIC5zbGlkZS1pdGVtIHtcbiAgICBib3JkZXItcmFkaXVzOiAxNXB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgYm94LXNoYWRvdzogMHB4IDBweCAxMHB4IHJnYmEoNjQsIDY4LCA3NywgMC4yKTtcblxuICAgIGEge1xuICAgICAgY29sb3I6ICRjb2xvci1mb250O1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZmxvdzogY29sdW1uO1xuICAgIH1cblxuICAgIC5pbWFnZSB7XG4gICAgICBoZWlnaHQ6IDIxMHB4O1xuXG4gICAgICBpbWcge1xuICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgIH1cbiAgICB9XG4gICAgLmNvbnRlbnQge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZmxvdzogY29sdW1uO1xuICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgZmxleDogMSAxIGF1dG87XG4gICAgfVxuXG4gICAgLnRleHQsXG4gICAgLnRpdGxlIHtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgfVxuXG4gICAgLmJ1dHRvbiB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3ItZ3JheTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICBjb2xvcjogJGNvbG9yLWZvbnQ7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luOiBhdXRvIDAgMCBhdXRvO1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1ncmF5O1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiI2JyZWFraW5nLXBvcHVwIHtcbiAgei1pbmRleDogOTk5OTk5OTtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBkaXNwbGF5OiBub25lO1xuXG4gIC5icmVha2luZy1wb3B1cC13cmFwcGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgcGFkZGluZzogMzBweDtcbiAgICB0b3A6IDUwJTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgd2lkdGg6IDkwJTtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgei1pbmRleDogOTk5OTk5OTk7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICB3aWR0aDogODAwcHg7XG4gICAgfVxuICB9XG5cbiAgaDEsIGgyIHtcbiAgICBjb2xvcjogIzExMTExMTtcbiAgfVxuXG4gIC5icmVha2luZy1wb3B1cC13cmFwcGVyIHAge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjNcbiAgfVxuXG4gIC5icmVha2luZy1wb3B1cC13cmFwcGVyIGEge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB9XG5cbiAgLmNsb3NlLWJ1dHRvbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyOm5vbmU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMXJlbTtcbiAgICByaWdodDogMXJlbTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cblxuICAuY2xvc2UtYnV0dG9uOmZvY3VzIHtcbiAgICBib3JkZXI6bm9uZTtcbiAgICBvdXRsaW5lOiBub25lO1xuICB9XG5cbiAgLmNsb3NlLWJ1dHRvbiBzdmcge1xuICAgIGZpbGw6ICMxMTExMTE7XG4gIH1cblxuICAuYnJlYWtpbmctcG9wdXAtb3ZlcmxheSB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDowO1xuICAgIGxlZnQ6MDtcbiAgICByaWdodDowO1xuICAgIGJvdHRvbTowO1xuICAgIHotaW5kZXg6IDk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLDAsMCwgLjgpO1xuICB9XG59XG4iLCIuY29udGFjdC1iYXIge1xuICAvLyBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoOTQuMzNkZWcsICNGRjY5NjIgLTExLjcyJSwgI0NBMEI3MiAxMDkuMDMlKTtcbiAgd2lkdGg6IDEwMCU7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgYm90dG9tOiAwO1xuICB6LWluZGV4OiAxMDAwMDAwO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICB0b3A6IDI1JTtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiBpbml0aWFsO1xuICAgIGJvdHRvbTogaW5pdGlhbDtcbiAgfVxuXG4gICY6OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KFxuICAgICAgOTQuMzNkZWcsXG4gICAgICAjZmY2OTYyIC0xMS43MiUsXG4gICAgICAjY2EwYjcyIDEwOS4wMyVcbiAgICApO1xuICAgIHotaW5kZXg6IC0xO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xuICAgIEBpbmNsdWRlIHNob3ctZm9yKGxhcmdlKTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIHRvcDogMDtcbiAgICAgIGJvdHRvbTogaW5pdGlhbDtcbiAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAxNXB4O1xuICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDE1cHg7XG4gICAgfVxuICB9XG5cbiAgLmJ1dHRvbnMtd3JhcHBlciB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KFxuICAgICAgICA5NC4zM2RlZyxcbiAgICAgICAgI2ZmNjk2MiAtMTEuNzIlLFxuICAgICAgICAjY2EwYjcyIDEwOS4wMyVcbiAgICAgICk7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB9XG4gIH1cblxuICBoMiB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyNCk7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgIH1cbiAgfVxuXG4gIEBrZXlmcmFtZXMgbW92ZUxlZnQge1xuICAgIDAlIHtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG5cbiAgICAxMDAlIHtcbiAgICAgIHJpZ2h0OiAxMDBweDtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxuICB9XG4gIEBrZXlmcmFtZXMgbW92ZUxlZnRCYWNrIHtcbiAgICAwJSB7XG4gICAgICByaWdodDogMTAwcHg7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgIH1cblxuICAgIDEwMCUge1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgIH1cbiAgfVxuICBAa2V5ZnJhbWVzIG1vdmVSaWdodCB7XG4gICAgMCUge1xuICAgICAgbGVmdDogMDtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICBsZWZ0OiAxMDBweDtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxuICB9XG4gIEBrZXlmcmFtZXMgbW92ZVJpZ2h0QmFjayB7XG4gICAgMCUge1xuICAgICAgbGVmdDogMTAwcHg7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgIH1cblxuICAgIDEwMCUge1xuICAgICAgbGVmdDogMDtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuICB9XG5cbiAgLmljb25zLWxlZnQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBhbmltYXRpb246IG1vdmVMZWZ0QmFjayAwLjNzIGZvcndhcmRzIGVhc2UtaW4tb3V0O1xuICB9XG4gIFxuICAuaWNvbnMtcmlnaHQge1xuICAgIGFuaW1hdGlvbjogbW92ZUxlZnRCYWNrIDAuM3MgZm9yd2FyZHMgZWFzZS1pbi1vdXQ7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG5cbiAgbGkge1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcyBlYXNlLWluLW91dCwgdHJhbnNmb3JtIDAuMTVzIGVhc2UtaW4tb3V0O1xuICAgIG1hcmdpbjogMCAwLjI1cmVtO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgbWFyZ2luOiAwO1xuXG4gICAgfVxuICAgIFxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICY6aG92ZXIge1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMTUpO1xuICAgICAgfVxuICAgIH1cblxuICB9XG5cbiAgbGksXG4gIGJ1dHRvbiB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICB9XG4gIH1cblxuICBmaWVsZHNldCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgfVxuXG4gIC5SZXNwb25zZSB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAtNXJlbTtcbiAgICB9XG4gIH1cblxuICAuUmVzcG9uc2VFcnJvciB7XG4gICAgbWFyZ2luOiAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgYm9yZGVyLXJhZGl1czogMTAwcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmMDAwMDtcbiAgfVxuXG4gIC5kaXZpZGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgd2lkdGg6IDFweDtcbiAgICB0b3A6IDFyZW07XG4gICAgYm90dG9tOiAxcmVtO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiBjYWxjKDEwMCUpO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzIGVhc2UtaW4tb3V0O1xuICAgIEBpbmNsdWRlIHNob3ctZm9yKGxhcmdlKTtcbiAgfVxuXG4gIC5mb3JtLW92ZXJmbG93IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICBoZWlnaHQ6IDIyMHB4O1xuICAgIHRvcDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB6LWluZGV4OiAtMTtcbiAgICB0cmFuc2l0aW9uOiB0b3AgMC4zcyBlYXNlLWluLW91dDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KFxuICAgICAgICA5NC4zM2RlZyxcbiAgICAgICAgI2ZmNjk2MiAtMTEuNzIlLFxuICAgICAgICAjY2EwYjcyIDEwOS4wMyVcbiAgICAgICk7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIHRyYW5zaXRpb246IHdpZHRoIDAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgICB3aWR0aDogMDtcbiAgICAgIGJvdHRvbTogaW5pdGlhbDtcbiAgICAgIGhlaWdodDogaW5pdGlhbDtcbiAgICAgIHRvcDogMXJlbTtcbiAgICAgIGxlZnQ6IGNhbGMoMTAwJSArIDFyZW0pO1xuICAgICAgei1pbmRleDogaW5pdGlhbDtcbiAgICB9XG4gIH1cblxuICAuZm9ybS13cmFwcGVyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcyBlYXNlLWluLW91dDtcbiAgICBwYWRkaW5nLXRvcDogMC41cmVtO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgcGFkZGluZy10b3A6IGluaXRpYWw7XG4gICAgICB3aWR0aDogMjQwcHg7XG4gICAgfVxuICB9XG5cbiAgaW5wdXQge1xuICAgIGhlaWdodDogaW5pdGlhbDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCR3aGl0ZSwgMC44KTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICAgIH1cblxuICAgICY6Zm9jdXMge1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgIH1cbiAgfVxuXG4gIGlucHV0W3R5cGU9XCJ0ZXh0XCJdIHtcbiAgICBoZWlnaHQ6IDQwcHg7XG4gIH1cblxuICBpbnB1dDo6cGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAjZWQ0MzcyO1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYsIDE1KTtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICB9XG5cbiAgLklucHV0QmxvY2sge1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgfVxuXG4gIC5jb250YWN0LWJ1dHRvbi13cmFwcGVyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nLXJpZ2h0OiA1cHg7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICB3aWR0aDogaW5pdGlhbDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiBpbml0aWFsO1xuICAgIH1cbiAgfVxuXG4gIC5jb250YWN0LWJ1dHRvbiB7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjNzIGVhc2UtaW4tb3V0O1xuICAgIGxpbmUtaGVpZ2h0OiAyLjQ7XG4gICAgaGVpZ2h0OiA0MHB4O1xuICAgIC8vIG1hcmdpbjogMCAxMHB4O1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgaGVpZ2h0OiAxNzZweDtcbiAgICAgIG1hcmdpbjogMDtcbiAgICB9XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNCNkNDMDA7XG5cbiAgICAgIHNwYW4ge1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5tb2JpbGUtZm9ybS1idXR0b24ge1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xuICB9XG5cbiAgLnN1Ym1pdC1idXR0b24ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICBjb2xvcjogI2VkNDM3MjtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjNzIGVhc2UtaW4tb3V0O1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjQjZDQzAwO1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICB9XG4gIH1cblxuICAuc3VibWl0LWJ1dHRvbi1tb2JpbGUge1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICBjb2xvcjogI2VkNDM3MjtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4zcyBlYXNlLWluLW91dDtcbiAgICBoZWlnaHQ6IDQwcHggIWltcG9ydGFudDtcbiAgICBAaW5jbHVkZSBoaWRlLWZvcihsYXJnZSk7XG4gIH1cblxuICBpbnB1dCxcbiAgLnN1Ym1pdC1idXR0b24ge1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTcsIDE1KTtcbiAgICBwYWRkaW5nOiAwLjVyZW0gMXJlbTtcbiAgICBib3JkZXItcmFkaXVzOiAyMDBweDtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICB9XG5cbiAgJi5pcy1vcGVuZWQ6OmFmdGVyIHtcbiAgICBoZWlnaHQ6IDI4NXB4O1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSArIDI0MHB4ICsgMnJlbSk7XG4gICAgfVxuICB9XG5cbiAgJi5pcy1vcGVuZWQge1xuICAgIC8vIHdpZHRoOiBjYWxjKDQwcHggKyAyNDBweCArIDJyZW0pO1xuICAgIGxpIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgb3BhY2l0eTogMC42O1xuICAgICAgfVxuICAgIH1cblxuICAgIC5mb3JtLW92ZXJmbG93IHtcbiAgICAgIC8vIGhlaWdodDogMjAwcHg7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHRvcDogLTIyMHB4O1xuICAgICAgcG9pbnRlci1ldmVudHM6IGFsbDtcblxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBoZWlnaHQ6IGluaXRpYWw7XG4gICAgICAgIHRvcDogMXJlbTtcbiAgICAgICAgd2lkdGg6IDI0MHB4O1xuICAgICAgfVxuICAgIH1cblxuICAgIC5kaXZpZGVyLFxuICAgIC5mb3JtLXdyYXBwZXIge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG5cbiAgICAuY29udGFjdC1idXR0b24td3JhcHBlciB7XG4gICAgICBmbGV4OiAxIDAgMTAwJTtcbiAgICAgIC8vIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB9XG5cbiAgICAubW9iaWxlLWZvcm0tYnV0dG9uIHtcbiAgICAgIHJpZ2h0OiAxcmVtO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogMXJlbTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgIH1cblxuICAgIC5pY29ucy1sZWZ0LFxuICAgIC5pY29ucy1yaWdodCB7XG4gICAgICB0cmFuc2l0aW9uOiBtYXJnaW4gMC4zcyBlYXNlLWluLW91dDtcbiAgICB9XG5cbiAgICAuaWNvbnMtbGVmdCB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICAgIGFuaW1hdGlvbjogbW92ZUxlZnQgMC4zcyBmb3J3YXJkcyBlYXNlLWluLW91dDtcbiAgICAgIH1cbiAgICB9XG4gICAgLmljb25zLXJpZ2h0IHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgICAgYW5pbWF0aW9uOiBtb3ZlTGVmdCAwLjNzIGZvcndhcmRzIGVhc2UtaW4tb3V0O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cbi5jb250YWN0LWJhci1vdmVybGF5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkYmxhY2ssIDAuOCk7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgei1pbmRleDogMTAwMDAwO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgZWFzZS1pbi1vdXQ7XG5cbn1cbi5jb250YWN0LWJhci5pcy1vcGVuZWQgKyAuY29udGFjdC1iYXItb3ZlcmxheSB7XG4gIG9wYWNpdHk6IDE7XG4gIHBvaW50ZXItZXZlbnRzOiBhbGw7XG59IiwiLm9mZmVyIHtcbiAgLy8gYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE0OS44NWRlZywgIzdlMWY1NCAwJSwgIzVlMjI0NiA1NS4yMSUpLFxuICAvLyAgIHVybChcIi4uL2Fzc2V0cy9idWRhcGVzdC9tZF9yZWxheC1jb250YWN0LWJnLmpwZ1wiKSwgI2Y1ZjZmNztcbiAgLy8gYmFja2dyb3VuZC1ibGVuZC1tb2RlOiBub3JtYWwsIG11bHRpcGx5LCBjb2xvciwgbm9ybWFsLCBub3JtYWw7XG5cbiAgc21hbGwge1xuICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICBociB7XG4gICAgbWF4LXdpZHRoOiBpbml0aWFsO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudChcbiAgICAgIDkwZGVnLFxuICAgICAgI2ZmZixcbiAgICAgICNmZmYgNjUlLFxuICAgICAgdHJhbnNwYXJlbnQgMCxcbiAgICAgIHRyYW5zcGFyZW50XG4gICAgKTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDIwcHggMXB4O1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBoZWlnaHQ6IDFweDtcbiAgfVxufVxuIiwidGRbZGF0YS1yb3ctaW5kZXg9XCIwXCJdIHtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAxNXB4O1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAxNXB4O1xuICAgIGJvcmRlci1ib3R0b206IDNweCBzb2xpZCAjZmZmICFpbXBvcnRhbnQ7XG59XG5cbnRyLndwZHQtY2VsbC1yb3c6bGFzdC1jaGlsZCB0ZCB7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMTVweDtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMTVweDtcbn1cblxudGRbZGF0YS1jb2wtaW5kZXg9XCIwXCJdIHtcbiAgd2lkdGg6IDEwMHB4ICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1yaWdodC1jb2xvcjogbm9uZSAhaW1wb3J0YW50O1xuICBcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIHdpZHRoOiAyMDBweCAhaW1wb3J0YW50O1xuICB9XG5cbiAgJi5tZXJnZWQtY2VsbCB7XG4gICAgd2lkdGg6IGluaXRpYWwgIWltcG9ydGFudDtcbiAgfVxufVxuIiwiLnBhZ2UtdGVtcGxhdGUtZnJvbnQgLm1haW4tZ3JpZCB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5zaXRlLWZyb250LWhlYWRlciB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICBoZWlnaHQ6IDEwMHZoO1xuICB9XG5cbiAgLmZyb250LXBhZ2Utcm90YXRvciB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cblxuICAuc3BsaWRlX190cmFjayxcbiAgLnNwbGlkZV9fbGlzdCxcbiAgLnNwbGlkZV9fc2xpZGUge1xuICAgIGhlaWdodDogMTAwJTtcbiAgfVxuXG4gIC5zcGxpZGVfX3BhZ2luYXRpb24ge1xuICAgIGJvdHRvbTogM3JlbTtcbiAgfVxuXG4gIC5zbGlkZS1pdGVtIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cblxuICAudmlkZW8tY29udGVudCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIH1cbiAgICAvLyBoZWlnaHQ6IHJlbS1jYWxjKDMwMCk7XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KFxuICAgICAgICA5MGRlZyxcbiAgICAgICAgcmdiYSgjNWUyMjQ2LCAwKSAwJSxcbiAgICAgICAgIzVlMjI0NiAxMDAlXG4gICAgICApO1xuICAgICAgei1pbmRleDogNTtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgQGluY2x1ZGUgc2hvdy1mb3IobGFyZ2UpO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICB9XG5cbiAgICBhLFxuICAgIGltZyB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICB2aWRlbyB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgb2JqZWN0LXBvc2l0aW9uOiB0b3AgY2VudGVyO1xuICAgIH1cblxuICAgIC5wYXVzZS1idXR0b24ge1xuICAgICAgQGluY2x1ZGUgc2hvdy1mb3IobGFyZ2UpO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA5cmVtO1xuICAgICAgcmlnaHQ6IDJyZW07XG4gICAgICBjb2xvcjogcmdiYSgkd2hpdGUsIDAuNSk7XG4gICAgICAjcGF1c2UtYnV0dG9uIHtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDMwKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAudGV4dCB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KDEyOS43ZGVnLCAjN2UxZjU0IDAlLCAjNWUyMjQ2IDEwMCUpO1xuICAgIGJvcmRlci1yYWRpdXM6IDE1cHg7XG4gICAgdG9wOiAtMnJlbTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgICBtYXgtd2lkdGg6IHJlbS1jYWxjKDUwMCk7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgIHJpZ2h0OiAyNSU7XG4gICAgfVxuXG4gICAgaDEge1xuICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICB9XG4gICAgdWwge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgbWFyZ2luLWxlZnQ6IDNyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICAgIH1cblxuICAgIHN2ZyB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OiAtM3JlbTtcbiAgICAgIHRvcDogLTAuNXJlbTtcblxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICB0b3A6IC0wLjVyZW07XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcbiAgICAgICAgdG9wOiBpbml0aWFsO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5idXR0b24ge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KDEzMGRlZywgI2ZmNjk2MiAwJSwgI2NhMGI3MiAxMDAlKTtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTgpO1xuICAgICAgcGFkZGluZzogMC43cmVtIDJyZW07XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDIwMHB4O1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVuc2V0O1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcblxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyMCk7XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSkge1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDI0KTtcbiAgICAgIH1cblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlZDQzNzI7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmJhZGdlLXdyYXBwZXIge1xuICAgIHotaW5kZXg6IDEwO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICByaWdodDogMDtcbiAgICAgIHRvcDogMTFyZW07XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4eGxhcmdlKSB7XG4gICAgICB0b3A6IDExcmVtO1xuICAgIH1cblxuICAgIC5iYWRnZSB7XG4gICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICB3aWR0aDogMjgwcHg7XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSkge1xuICAgICAgICB3aWR0aDogMzgwcHg7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmZvcm0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoI2I2Y2MwMCwgMC44KTtcbiAgICB6LWluZGV4OiAxMDtcblxuICAgIGZvcm0ge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgfVxuXG4gICAgLmJ1dHRvbiB7XG4gICAgICBib3JkZXItcmFkaXVzOiAyMDBweDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgaW5wdXQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIHBhZGRpbmc6IDAuM3JlbSAxcmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNTU7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE4KTtcbiAgICB9XG4gIH1cblxuICBmaWVsZHNldCB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgZ2FwOiAxcmVtO1xuICAgIH1cbiAgfVxuXG4gIC5JbnB1dEJsb2NrIHtcbiAgICBmbGV4OiAxIDAgY2FsYygyNSUgLSAxcmVtKTtcbiAgfVxuXG4gIC8vIC5mb3JtOjphZnRlciB7XG4gIC8vICAgY29udGVudDogXCIgXCI7XG4gIC8vICAgZGlzcGxheTogYmxvY2s7XG4gIC8vICAgcG9zaXRpb246IGFic29sdXRlO1xuICAvLyAgIHRvcDogLTRyZW07XG4gIC8vICAgbGVmdDogLTZyZW07XG4gIC8vICAgcmlnaHQ6IC04cmVtO1xuICAvLyAgIGJvdHRvbTogLThyZW07XG4gIC8vICAgdHJhbnNmb3JtOiByb3RhdGUoNWRlZyk7XG4gIC8vICAgei1pbmRleDogMTtcbiAgLy8gICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItbWFkZW50YS1ncmVlbi0xO1xuICAvLyAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gIC8vICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIC8vICAgQGluY2x1ZGUgc2hvdy1mb3IobGFyZ2UpO1xuICAvLyB9XG5cbiAgLmZvcm0tY29udGVudCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDI7XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgLklucHV0QmxvY2sge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICB9XG4gIH1cbn1cblxuLmRlbnRhbHdlZWstaGVhZGVyIHtcbiAgaGVpZ2h0OiAxMDAlO1xuICAuYmctaW1hZ2Uge1xuICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgIG9iamVjdC1wb3NpdGlvbjogY2VudGVyO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgfVxuXG4gIC5sb2dvIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgbGVmdDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgIHdpZHRoOiByZW0tY2FsYyg0MDAsIDE1KTtcbiAgfVxufVxuXG4uZGVudGFsLWxvZ28ge1xuICBtYXJnaW46IDAgYXV0bztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgdG9wOiA0MCU7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAvLyB0b3A6IGluaXRpYWw7XG4gICAgLy8gYm90dG9tOiA1MCU7XG4gICAgLy8gbGVmdDogNTAlO1xuICAgIC8vIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgfVxuXG4gIEBtZWRpYSBhbGwgYW5kICgtbXMtaGlnaC1jb250cmFzdDogbm9uZSksXG4gICAgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICB0b3A6IGF1dG87XG4gICAgLy8gYm90dG9tOiA0MCU7XG4gIH1cblxuICBpbWcge1xuICAgIHdpZHRoOiA3MCUgIWltcG9ydGFudDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICB3aWR0aDogMzg0cHggIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAuYnV0dG9uLWludGVyZXN0ZWQge1xuICAgIHBhZGRpbmc6IDAuNXJlbSAxcmVtO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICAgIGZvbnQtZmFtaWx5OiBcIlJvYm90byBTbGFiXCIsIHNlcmlmO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogOTk5OTk5OTtcbiAgICBib3JkZXI6IDJweCBzb2xpZCAkY29sb3ItcHVycGxlLWxpZ2h0O1xuICAgIGNvbG9yOiAkY29sb3ItcHVycGxlLWxpZ2h0O1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICBib3JkZXI6IDJweCBzb2xpZCAkd2hpdGU7XG4gICAgfVxuICB9XG59XG5cbi5pdGVtIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5kZXNrdG9wLWltYWdlIHtcbiAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgQGluY2x1ZGUgc2hvdy1mb3IobGFyZ2UpO1xuICB9XG5cbiAgLm1vYmlsZS1pbWFnZSB7XG4gICAgQGluY2x1ZGUgaGlkZS1mb3IobGFyZ2UpO1xuICB9XG5cbiAgLnRpdGxlLWNvbnRhaW5lciB7XG4gICAgcGFkZGluZzogMXJlbSAxcmVtIDNyZW07XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgJi5kZW50YWwtd2Vlay10aXRsZSB7XG4gICAgICBAaW5jbHVkZSBoaWRlLWZvcihsYXJnZSk7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXgtd2lkdGg6ICRjb250YWluZXItd2lkdGg7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3R0b206IDEzcmVtO1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgICAgcGFkZGluZzogMCAycmVtO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICB3aWR0aDogJGNvbnRhaW5lci13aWR0aDtcbiAgICB9XG5cbiAgICAudGl0bGUtY29udGFpbmVyLWlubmVyIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgd2lkdGg6IDUwMHB4O1xuICAgICAgfVxuICAgIH1cblxuICAgIGgyLFxuICAgIGgzIHtcbiAgICAgIGNvbG9yOiAkY29sb3ItcHVycGxlO1xuICAgIH1cblxuICAgIGgxLFxuICAgIGgyIHtcbiAgICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBmb250LXNpemU6IDMycHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaDMge1xuICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICB9XG4gIH1cblxuICAuYnV0dG9uIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXB1cnBsZTtcblxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXB1cnBsZS1saWdodDtcbiAgICB9XG4gIH1cblxuICAuYmFkZ2Uge1xuICAgIHotaW5kZXg6IDEwMDtcbiAgfVxuXG4gICYubnVtYmVyLTEgLmJhZGdlIHtcbiAgICB0b3A6IDFyZW07XG4gICAgcmlnaHQ6IDFyZW07XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgdG9wOiBpbml0aWFsO1xuICAgICAgYm90dG9tOiAyNXJlbTtcbiAgICAgIHJpZ2h0OiA4JTtcbiAgICB9XG4gIH1cblxuICAmLm51bWJlci0yIC5iYWRnZSB7XG4gICAgbGVmdDogMXJlbTtcbiAgICB0b3A6IDFyZW07XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgbGVmdDogaW5pdGlhbDtcbiAgICAgIHRvcDogaW5pdGlhbDtcbiAgICAgIHJpZ2h0OiA4JTtcbiAgICAgIGJvdHRvbTogMTByZW07XG4gICAgfVxuICB9XG4gICYubnVtYmVyLTMgLmJhZGdlIHtcbiAgICB0b3A6IDFyZW07XG4gICAgcmlnaHQ6IDFyZW07XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgdG9wOiBpbml0aWFsO1xuICAgICAgcmlnaHQ6IDEwJTtcbiAgICAgIGJvdHRvbTogMTRyZW07XG4gICAgfVxuICB9XG59XG5cbi5mcm9udHBhZ2UtZm9ybSB7XG4gIHBhZGRpbmc6IDJyZW0gMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLWdyZWVuLCAwLjgpO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogMjtcbiAgICBib3R0b206IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAuSW5wdXRCbG9jayB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICAvLyBwYWRkaW5nOiAwIDFyZW07XG4gICAgaGVpZ2h0OiAzOHB4O1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgd2lkdGg6IDI1JTtcbiAgICAgIHBhZGRpbmc6IDAgMC41cmVtO1xuICAgIH1cbiAgfVxuXG4gIC5yb3cge1xuICAgIG1heC13aWR0aDogNjIuNXJlbTtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgfVxuXG4gIC5mb3JtLXdyYXBwZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gIH1cblxuICBoMiB7XG4gICAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogLTNweDtcbiAgfVxuXG4gIGgzIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGxpbmUtaGVpZ2h0OiA0MnB4O1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgZm9udC1zaXplOiAxLjFyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuMztcblxuICAgIGNvbG9yOiAkY29sb3ItZm9udDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBjb2xvcjogJHdoaXRlO1xuICAgIH1cbiAgfVxuXG4gIC5tZWRpdW0tOCB7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuXG4gIGlucHV0IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDFyZW07XG4gIH1cblxuICBpbnB1dFt0eXBlPVwidGV4dFwiXSxcbiAgaW5wdXRbdHlwZT1cImVtYWlsXCJdLFxuICBpbnB1dFt0eXBlPVwidGVsXCJdIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCR3aGl0ZSwgMC45KTtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgY29sb3I6ICM0MDQ0NGQ7XG4gICAgYm9yZGVyLXJhZGl1czogMTAwcHg7XG4gICAgLy8gbWFyZ2luLWJvdHRvbTogMDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuXG4gICAgJjo6cGxhY2Vob2xkZXIge1xuICAgICAgY29sb3I6ICRjb2xvci1ncmF5O1xuICAgIH1cblxuICAgICY6Zm9jdXMge1xuICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJHdoaXRlLCAxKTtcbiAgICB9XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJHdoaXRlLCAxKTtcbiAgICB9XG4gIH1cblxuICBpbnB1dFt0eXBlPVwiU3VibWl0XCJdIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiAwLjRyZW0gMDtcbiAgfVxuXG4gIC5mb3JtcyAuY29sdW1ucyB7XG4gICAgcGFkZGluZzogMC4ycmVtO1xuICB9XG5cbiAgLmZvcm1zIHtcbiAgICBmbGV4OiAxIDAgYXV0bztcbiAgfVxuXG4gIC5idXR0b24ge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBoZWlnaHQ6IDM3cHg7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yLWdyYXk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWdyYXk7XG4gICAgYm9yZGVyLXJhZGl1czogMTAwcHg7XG4gICAgZm9udC13ZWlnaHQ6IDgwMDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3ItcHVycGxlO1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1wdXJwbGU7XG4gICAgfVxuICB9XG59XG5cbi5taWNyby1zbGlkZXIge1xuICAuaG9tZS1zbGlkZXIsXG4gIC5vd2wtc3RhZ2Utb3V0ZXIsXG4gIC5vd2wtc3RhZ2UsXG4gIC5vd2wtaXRlbSxcbiAgLnNsaWRlLWl0ZW0sXG4gIC5zbGlkZS1jb250YWluZXIge1xuICAgIGhlaWdodDogMTAwJTtcbiAgfVxuXG4gIGhlaWdodDogMTAwJTtcbn1cblxuLnByZWZhY2Uge1xuICBwYWRkaW5nOiAzcmVtIDA7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvci1ncmF5LCAwLjg1KTtcblxuICBwIHtcbiAgICBjb2xvcjogJHdoaXRlO1xuICB9XG5cbiAgLnByZWZhY2UtdGV4dCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcblxuICAgIHAge1xuICAgICAgbGluZS1oZWlnaHQ6IDEuODtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICB9XG4gIH1cblxuICAucHJlZmFjZS1saXN0IHtcbiAgICBtYXJnaW46IDA7XG5cbiAgICAucHJlZmFjZS1pdGVtIHtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG5cbiAgICAgIG1hcmdpbi1ib3R0b206IDNyZW07XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgICAgIH1cblxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAudGV4dCB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiA4MHB4O1xuICAgICAgfVxuXG4gICAgICAuaW1hZ2Uge1xuICAgICAgICB3aWR0aDogNTBweDtcbiAgICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgICBpbWcge1xuICAgICAgICAgIHdpZHRoOiA1MHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5hYm91dCB7XG4gIHBhZGRpbmc6IDRyZW0gMDtcblxuICAucm93OmhvdmVyIHtcbiAgICAuaW1hZ2UtY29udGFpbmVyIGltZyB7XG4gICAgICBmaWx0ZXI6IGdyYXlzY2FsZSgwJSk7XG4gICAgfVxuICB9XG5cbiAgLnJvdy5yb3NhIHtcbiAgICBtYXJnaW4tYm90dG9tOiAzcmVtO1xuICB9XG5cbiAgLnRleHQtY29udGFpbmVyLFxuICAuaW1hZ2UtY29udGFpbmVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cblxuICAuaW1hZ2UtY29udGFpbmVyIHtcbiAgICBwYWRkaW5nOiAwIDFyZW07XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcblxuICAgIGgyIHtcbiAgICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzcmVtO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cblxuICAgIGltZyB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgIHRyYW5zaXRpb246IGZpbHRlciAwLjJzIGVhc2UtaW4tb3V0O1xuXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIGZpbHRlcjogZ3JheXNjYWxlKDEwMCUpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC50aXRsZSB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuXG4gICAgICBwOm50aC1jaGlsZCgxKSB7XG4gICAgICAgIC8vIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIH1cblxuICAgICAgcDpudGgtY2hpbGQoMiksXG4gICAgICBwOm50aC1jaGlsZCgzKSB7XG4gICAgICAgIC8vIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB9XG5cbiAgICAgICYuZ3VubmFyIHAge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnRleHQtY29udGFpbmVyIHtcbiAgICBwYWRkaW5nOiAwIDFyZW07XG4gIH1cbn1cblxuLmhvbGlkYXkge1xuICAuaG9saWRheS1oZWFkZXIge1xuICAgIHBhZGRpbmc6IDJyZW0gMDtcbiAgfVxuICAuaG9saWRheS10aXRsZSB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIH1cbiAgLmhvbGlkYXktbGVhZCBwIHtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgbGluZS1oZWlnaHQ6IDI4cHg7XG4gIH1cbiAgLmhvbGlkYXktY29udGVudCB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBwYWRkaW5nOiAwIDAgMnJlbTtcblxuICAgIC5jb2wge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICB9XG4gICAgLmhlYWRlciB7XG4gICAgICAuaW1hZ2Uge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBncmlkLWNvbHVtbi1nYXA6IDMwcHg7XG4gICAgICAtbXMtZ3JpZC1jb2x1bW5zOiAxZnIgMzBweCAxZnIgMzBweCAxZnI7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgzLCAxZnIpO1xuXG4gICAgICAmOm50aC1jaGlsZCgyKSB7XG4gICAgICAgIC1tcy1ncmlkLWNvbHVtbjogMjtcbiAgICAgIH1cblxuICAgICAgJjpudGgtY2hpbGQoMykge1xuICAgICAgICAtbXMtZ3JpZC1jb2x1bW46IDM7XG4gICAgICB9XG5cbiAgICAgIC5jb2wge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiBpbml0aWFsO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uYWphbmxhdCB7XG4gIHBhZGRpbmc6IDNyZW0gMDtcbiAgLy8gYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgIzllMWM2MiAwJSwgcmdiYSgxNTgsIDI4LCA5OCwgMCkgMTAwJSksXG4gIC8vICAgbGluZWFyLWdyYWRpZW50KDBkZWcsICM5ZTFjNjIsICM5ZTFjNjIpLFxuICAvLyAgIGxpbmVhci1ncmFkaWVudCgwZGVnLCAjMDAwMDAwLCAjMDAwMDAwKSxcbiAgLy8gICB1cmwoXCIuLi9hc3NldHMvYnVkYXBlc3QvbWRfcmVsYXgtY29udGFjdC1iZy5qcGdcIiksICNmNWY2Zjc7XG4gIC8vIGJhY2tncm91bmQtYmxlbmQtbW9kZTogbm9ybWFsLCBtdWx0aXBseSwgY29sb3IsIG5vcm1hbCwgbm9ybWFsO1xuXG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxNDkuODVkZWcsICM3ZTFmNTQgMCUsICM1ZTIyNDYgNTUuMjElKSxcbiAgICB1cmwoXCIuLi9hc3NldHMvYnVkYXBlc3QvbWRfcmVsYXgtY29udGFjdC1iZy5qcGdcIiksICNmNWY2Zjc7XG4gIGJhY2tncm91bmQtYmxlbmQtbW9kZTogbm9ybWFsLCBtdWx0aXBseSwgY29sb3IsIG5vcm1hbCwgbm9ybWFsO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICBwYWRkaW5nOiA2cmVtIDA7XG4gIH1cblxuICAmX19jYXJkIC5wYXJhZ3JhcGgtdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTgsIDE1cHgpO1xuICB9XG5cbiAgJl9fY2FyZCB7XG4gICAgaW1nIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgfVxuXG4gICAgcCB7XG4gICAgICBtYXgtd2lkdGg6IDQwY2g7XG4gICAgICBtYXJnaW46IDAgYXV0bztcbiAgICB9XG4gIH1cblxuICAmX19oZWFkZXIge1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIH1cblxuICBwIHtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIC8vIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuXG4gIHN0cm9uZyB7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBmb250LXdlaWdodDogODAwO1xuICB9XG4gIGEge1xuICAgIGNvbG9yOiAjODFjZmY0O1xuICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG4gIH1cblxuICAucHJpY2UtbGlzdCB7XG4gICAgdGggc3BhbiB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gIH1cblxuICAubGluZSB7XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgYm9yZGVyLXRvcDogZGFzaGVkIDFweCAkd2hpdGU7XG4gICAgbWFyZ2luOiAycmVtO1xuICAgIEBpbmNsdWRlIGhpZGUtZm9yKGxhcmdlKTtcbiAgfVxuXG4gIC5vZmZlci0xIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBwYWRkaW5nOiAwIDRyZW07XG4gICAgfVxuICB9XG5cbiAgdGFibGUge1xuICAgIHRhYmxlLWxheW91dDogYXV0byAhaW1wb3J0YW50O1xuICB9XG5cbiAgLndwRGF0YVRhYmxlc1dyYXBwZXIgdGFibGUuaGFzLWNvbHVtbnMtaGlkZGVuIHNwYW4ucmVzcG9uc2l2ZUV4cGFuZGVyIHtcbiAgICBvcGFjaXR5OiAxICFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZSAhaW1wb3J0YW50O1xuICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuXG4gIHRhYmxlLmhhcy1jb2x1bW5zLWhpZGRlbiA+IHRib2R5ID4gdHIgPiB0ZCA+IHNwYW4ucmVzcG9uc2l2ZUV4cGFuZGVyOmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lICFpbXBvcnRhbnQ7XG4gICAgY29udGVudDogXCIrXCIgIWltcG9ydGFudDtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgd2lkdGg6IDI1cHg7XG4gICAgaGVpZ2h0OiAyNXB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2E4YmMwZTtcbiAgICBmb250LXNpemU6IDQwcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgIGxpbmUtaGVpZ2h0OiAwLjY1O1xuICB9XG5cbiAgdGFibGUuaGFzLWNvbHVtbnMtaGlkZGVuXG4gICAgPiB0Ym9keVxuICAgID4gdHIuZGV0YWlsLXNob3dcbiAgICA+IHRkXG4gICAgc3Bhbi5yZXNwb25zaXZlRXhwYW5kZXI6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiLVwiICFpbXBvcnRhbnQ7XG4gICAgbGluZS1oZWlnaHQ6IDAuNDU7XG4gICAgZm9udC1zaXplOiA0MHB4O1xuICAgIHdpZHRoOiAyNXB4O1xuICAgIGhlaWdodDogMjVweDtcbiAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNhOGJjMGU7XG4gIH1cblxuICB0YWJsZSxcbiAgdGJvZHksXG4gIHRoZWFkLFxuICB0Zm9vdCB7XG4gICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gIH1cblxuICB0ZCxcbiAgdGgge1xuICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDE1cHggMTBweCAhaW1wb3J0YW50O1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgcGFkZGluZzogN3B4IDEwcHggIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICB0aCB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7XG4gICAgZm9udC13ZWlnaHQ6IDgwMCAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAjNDA0NDRkICFpbXBvcnRhbnQ7XG4gIH1cblxuICB0ciB7XG4gICAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4ICNmZmZmZmYgIWltcG9ydGFudDtcbiAgfVxuXG4gIHRkLmNvbHVtbi0xIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDdkN2Q3ICFpbXBvcnRhbnQ7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgfVxuXG4gIC8vIHRyOm50aC1jaGlsZChvZGQpIHRkLmNvbHVtbi0xIHtcbiAgLy8gICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzVjNGM0ICFpbXBvcnRhbnQ7XG4gIC8vIH1cbiAgdGQuY29sdW1uLTIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlMGUyZTUgIWltcG9ydGFudDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDtcbiAgfVxuICAvLyB0cjpudGgtY2hpbGQob2RkKSB0ZC5jb2x1bW4tMiB7XG4gIC8vICAgYmFja2dyb3VuZC1jb2xvcjogI2NjY2ZkMyAhaW1wb3J0YW50O1xuICAvLyB9XG4gIHRkLmNvbHVtbi0zIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYjZjYzAwICFpbXBvcnRhbnQ7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7XG4gICAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgICBjb2xvcjogJHdoaXRlO1xuICB9XG4gIC8vIHRyOm50aC1jaGlsZChvZGQpIHRkLmNvbHVtbi0zIHtcbiAgLy8gICBiYWNrZ3JvdW5kLWNvbG9yOiAjYTdiODEwICFpbXBvcnRhbnQ7XG4gIC8vIH1cbiAgdGQuY29sdW1uLTQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM3ZjdmN2YgIWltcG9ydGFudDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDtcbiAgICBmb250LXdlaWdodDogODAwO1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gIH1cbiAgLy8gdHI6bnRoLWNoaWxkKG9kZCkgdGQuY29sdW1uLTQge1xuICAvLyAgIGJhY2tncm91bmQtY29sb3I6ICM3MTcwNzAgIWltcG9ydGFudDtcbiAgLy8gfVxuXG4gIC5jb2x1bW4tMSB7XG4gICAgd2lkdGg6IDMwJSAhaW1wb3J0YW50O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgcGFkZGluZy1sZWZ0OiA1MHB4ICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgLmNvbHVtbi0xIC5yZXNwb25zaXZlRXhwYW5kZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICBsZWZ0OiAxMHB4O1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgfVxuXG4gIC53cERhdGFUYWJsZXNXcmFwcGVyIHRhYmxlLndwRGF0YVRhYmxlIHRoLFxuICAud3BEYXRhVGFibGVzV3JhcHBlciB0YWJsZS53cERhdGFUYWJsZSB0ZCB7XG4gICAgd2hpdGUtc3BhY2U6IGluaXRpYWwgIWltcG9ydGFudDtcbiAgfVxuXG4gIC53cERhdGFUYWJsZXNXcmFwcGVyIGRpdi5kdC1idXR0b25zIHtcbiAgICBtYXJnaW46IDA7XG4gIH1cblxuICAucG93ZXJlZF9ieV9saW5rIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cblxuICAvLyBsZW55w61sw7NzIHN0w61sdXNva1xuXG4gIC5yb3ctZGV0YWlsIHtcbiAgICB0ZCB7XG4gICAgICBwYWRkaW5nOiA1cHggIWltcG9ydGFudDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICM5Nzk4OWIgIWltcG9ydGFudDtcbiAgICB9XG4gICAgbGkge1xuICAgICAgcGFkZGluZzogMTBweCAxNXB4ICFpbXBvcnRhbnQ7XG4gICAgICAvLyBjb2xvcjogJHdoaXRlO1xuICAgIH1cblxuICAgIGxpOm50aC1jaGlsZCgxKSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2VjZWNlO1xuICAgIH1cbiAgICBsaTpudGgtY2hpbGQoMikge1xuICAgICAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNiN2I3Yjc7XG4gICAgfVxuXG4gICAgLmNvbHVtbi0yLFxuICAgIC5jb2x1bW4tNCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuXG4gICAgICAuY29sdW1uVmFsdWUge1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC50ZXh0LXdyYXBwZXIge1xuICAgIC8vIGRpc3BsYXk6IGZsZXg7XG4gICAgLy8gZmxleC1mbG93OiBjb2x1bW47XG4gICAgLy8ganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgb3JkZXI6IDE7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgIG1hcmdpbjogMCAycmVtIDJyZW07XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgb3JkZXI6IDI7XG4gICAgfVxuXG4gICAgaDIge1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjQsIDE1cHgpO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB9XG5cbiAgICBwIHtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgfVxuICB9XG59XG5cbi50cmVhdG1lbnRzIHtcbiAgcGFkZGluZzogM3JlbSAwO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG5cbiAgLmNvbnRhaW5lci5wYWRkaW5nIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cbiAgfVxuXG4gICYuZGVudGlzdCB7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KFxuICAgICAgICAwZGVnLFxuICAgICAgICByZ2JhKDE2NiwgMTcxLCAxODEsIDAuOCksXG4gICAgICAgIHJnYmEoMTY2LCAxNzEsIDE4MSwgMC44KVxuICAgICAgKSxcbiAgICAgIHVybChcIi4uL2Fzc2V0cy9rZXplbGVzZWstYmcuanBnXCIpO1xuXG4gICAgaDIge1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICB9XG4gIH1cbiAgJi5wbGFzdGlrIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9hc3NldHMvcHJpem1hcy1iZy5qcGdcIik7XG5cbiAgICBoMiB7XG4gICAgICBjb2xvcjogIzVlMjI0NjtcbiAgICB9XG5cbiAgICAuZWxlbWVudF9fY29udGVudCBoMyB7XG4gICAgICAvLyB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIH1cblxuICAgIHAge1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB9XG5cbiAgICAuZWxlbWVudCB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAucHJpY2Uge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KDkyLjIzZGVnLCAjYjZjYzAwIDAlLCAjYThiYzBlIDEwMCUpO1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICBwYWRkaW5nOiA2cmVtIDA7XG4gIH1cbiAgLy8gbWF4LXdpZHRoOiAxMDAlO1xuXG4gIC5zdWJ0aXRsZSB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG5cbiAgLnRyZWF0bWVudHMtc2xpZGVyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICB9XG5cbiAgLmNvbnRhaW5lciB7XG4gICAgcGFkZGluZzogMCAzMHB4O1xuICB9XG5cbiAgLmtlemVsZXNlay10aXRsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogM3JlbTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgfVxuICB9XG5cbiAgLm1pY3JvLWtlemVsZXNlay1zbGlkZXIge1xuICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gIH1cblxuICAub3dsLXN0YWdlLW91dGVyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIC5vd2wtc3RhZ2Uge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gIH1cblxuICAub3dsLWl0ZW0ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleDogMSAwIGF1dG87XG4gICAgaGVpZ2h0OiBpbml0aWFsO1xuICB9XG5cbiAgLm93bC1kb3RzIHtcbiAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICB9XG5cbiAgLm93bC1uYXYge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHotaW5kZXg6IDEwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHRvcDogaW5pdGlhbDtcbiAgICB0b3A6IDA7XG4gICAgbWFyZ2luLXRvcDogMDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIGhlaWdodDogNTBweDtcbiAgICAgIHRvcDogNTAlICFpbXBvcnRhbnQ7XG4gICAgICBib3R0b206IGluaXRpYWwgIWltcG9ydGFudDtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICB9XG5cbiAgICAub3dsLXByZXYsXG4gICAgLm93bC1uZXh0IHtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBoZWlnaHQ6IDYwcHg7XG5cbiAgICAgIGkge1xuICAgICAgICBjb2xvcjogJGNvbG9yLWdyYXk7XG4gICAgICAgIGZvbnQtc2l6ZTogNHJlbTtcbiAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgMC4ycyBlYXNlLWluLW91dDtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgY29sb3I6ICRjb2xvci1wdXJwbGU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGkge1xuICAgICAgICAgIGNvbG9yOiAkY29sb3ItbWFnZW50YTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5vd2wtcHJldiB7XG4gICAgICBsZWZ0OiAxcmVtO1xuXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIGxlZnQ6IDFyZW07XG4gICAgICB9XG4gICAgfVxuXG4gICAgLm93bC1uZXh0IHtcbiAgICAgIHJpZ2h0OiAxcmVtO1xuXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIHJpZ2h0OiAxcmVtO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIC5vd2wtcHJldiB7XG4gICAgICAgIGxlZnQ6IC0zcmVtO1xuICAgICAgfVxuXG4gICAgICAub3dsLW5leHQge1xuICAgICAgICByaWdodDogLTNyZW07XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmVsZW1lbnQge1xuICAgIC8vIGhlaWdodDogNDYwcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiBjb2x1bW47XG4gICAgYm9yZGVyLXJhZGl1czogMTVweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGJveC1zaGFkb3c6IDBweCAwcHggMTBweCByZ2JhKDY0LCA2OCwgNzcsIDAuMik7XG4gIH1cblxuICAuZWxlbWVudF9fY29udGVudCB7XG4gICAgcGFkZGluZzogMXJlbTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogY29sdW1uO1xuICAgIGhlaWdodDogMTAwJTtcblxuICAgIGgzIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICBjb2xvcjogJGNvbG9yLW1hZ2VudGE7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDIwKTtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBpbml0aWFsO1xuXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxOCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmltYWdlIHtcbiAgICBoZWlnaHQ6IDIwMHB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGZsZXg6IDEgMCAyMDBweDtcblxuICAgICY6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBib3R0b206IC01cHg7XG4gICAgICBib3gtc2hhZG93OiAwcHggMHB4IDEwcHggcmdiYSg2NCwgNjgsIDc3LCAwLjIpO1xuICAgICAgaGVpZ2h0OiA1cHg7XG4gICAgfVxuXG4gICAgaW1nIHtcbiAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgfVxuICB9XG5cbiAgcCB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG5cbiAgLnByaWNlIHtcbiAgICAvLyBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbWFyZ2luLXRvcDogYXV0bztcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCg5My41NmRlZywgIzllMWM2MiAwJSwgIzdlMWY1NCAxMDAlKTtcbiAgICBwYWRkaW5nOiAxcmVtO1xuICAgIC8vIG1hcmdpbi10b3A6IGF1dG87XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMTVweDtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMTVweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGZsZXg6IDEgMCA3M3B4O1xuICAgIGhlaWdodDogNzNweDtcblxuICAgIHAge1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyMCk7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgIGZvbnQtdmFyaWFudC1udW1lcmljOiBsaW5pbmctbnVtcztcbiAgICAgIGZvbnQtZmVhdHVyZS1zZXR0aW5nczogXCJsbnVtXCI7XG5cbiAgICAgIHNwYW4ge1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcbiAgICAgICAgZm9udC1mYW1pbHk6IExhdG8sIHNhbnMtc2VyaWY7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmtlemVsZXNlay1mb290ZXIgcCB7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICB9XG59XG5cbi50cmVhdG1lbnRzLWJsb2NrIHtcbiAgLnByaWNlIHtcbiAgICBoZWlnaHQ6IDczcHg7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KDkyLjIzZGVnLCAjYjZjYzAwIDAlLCAjYThiYzBlIDEwMCUpO1xuXG4gICAgcCBzcGFuIHtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuICAgICAgZm9udC1mYW1pbHk6IExhdG8sIHNhbnMtc2VyaWY7XG4gICAgfVxuICB9XG5cbiAgLmVsZW1lbnRfX2NvbnRlbnQgaDMge1xuICAgIGNvbG9yOiAkY29sb3ItbWFnZW50YSAhaW1wb3J0YW50O1xuICAgIHRleHQtdHJhbnNmb3JtOiBpbml0aWFsICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuc3BsaWRlX19saXN0IHtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICB9XG5cbiAgLmVsZW1lbnQge1xuICAgIC8vIGhlaWdodDogNDYwcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgIGJvcmRlci1yYWRpdXM6IDE1cHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBib3gtc2hhZG93OiAwcHggMHB4IDEwcHggcmdiYSg2NCwgNjgsIDc3LCAwLjIpO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIH1cbn1cblxuLmd1bm5hci5yb3cge1xuICBwYWRkaW5nOiA2cmVtIDA7XG5cbiAgaW1nIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgbWF4LXdpZHRoOiAzNjBweDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDAgYXV0byAxcmVtIGF1dG87XG4gIH1cblxuICAuaW1hZ2Uge1xuICAgIHAge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNik7XG4gICAgfVxuICB9XG5cbiAgLnRleHQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiBjb2x1bW47XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIH1cbn1cblxuLnZpZGVvIHtcbiAgcGFkZGluZzogM3JlbSAwO1xuXG4gIC52aWRlby1wbGF5ZXItLWNvbnRhaW5lciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgLmlubmVyIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgfVxuXG4gICAgLmlubmVyLXdyYXAge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cbiAgfVxufVxuXG4vLyAub2ZmZXIge1xuLy8gICBwYWRkaW5nOiAzcmVtIDA7XG4vLyAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1ncmF5LWJnO1xuLy8gICAuY29udGFpbmVyIHtcbi8vICAgICBtYXJnaW46IDAgMXJlbTtcblxuLy8gICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbi8vICAgICAgIG1hcmdpbjogMCAzcmVtO1xuLy8gICAgIH1cbi8vICAgfVxuXG4vLyAgIC5wYXJhZ3JhcGgtdGl0bGUgaDIge1xuLy8gICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuLy8gICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxOCk7XG4vLyAgICAgfVxuLy8gICB9XG5cbi8vICAgLm9mZmVyLWl0ZW1zIHtcbi8vICAgICBkaXNwbGF5OiBmbGV4O1xuLy8gICAgIGZsZXgtZmxvdzogcm93O1xuLy8gICAgIGZsZXgtd3JhcDogd3JhcDtcbi8vICAgfVxuXG4vLyAgIC5vZmZlci1pdGVtIHtcbi8vICAgICBmbGV4OiAxIDEgMTAwJTtcbi8vICAgICBtYXJnaW46IDAgMC41cmVtO1xuXG4vLyAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbi8vICAgICAgIGZsZXg6IDEgMSBjYWxjKDMzLjMzJSAtIDFyZW0pO1xuLy8gICAgIH1cblxuLy8gICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbi8vICAgICAgIHdpZHRoOiBjYWxjKDIwJSAtIDFyZW0pO1xuLy8gICAgICAgZmxleDogMSAxIGNhbGMoMjAlIC0gMXJlbSk7XG4vLyAgICAgfVxuLy8gICB9XG5cbi8vICAgLm9mZmVyLWl0ZW06aG92ZXIge1xuLy8gICAgIGltZyB7XG4vLyAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMik7XG4vLyAgICAgfVxuLy8gICB9XG5cbi8vICAgLm9mZmVyLWl0ZW0taW1hZ2Uge1xuLy8gICAgIHBhZGRpbmc6IDAgM3JlbTtcblxuLy8gICAgIGltZyB7XG4vLyAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDtcbi8vICAgICAgIHdpZHRoOiAxNTBweDtcbi8vICAgICAgIG1hcmdpbjogMCBhdXRvO1xuLy8gICAgICAgZGlzcGxheTogYmxvY2s7XG4vLyAgICAgfVxuLy8gICB9XG5cbi8vICAgLm9mZmVyLWl0ZW0tdGl0bGUge1xuLy8gICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbi8vICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcblxuLy8gICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbi8vICAgICAgIGZvbnQtc2l6ZTogMS41dm1heDtcbi8vICAgICB9XG4vLyAgIH1cbi8vIH1cblxuLmRlbnRhbC13ZWVrIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vYXNzZXRzL2RlbnRhbC13ZWVrLWJnLmpwZ1wiKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogbGVmdCBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgZmxleC1mbG93OiBjb2x1bW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZzogM3JlbSAwO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICBmbGV4LWZsb3c6IHJvdztcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIH1cblxuICAmX19jaXJjbGUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogLTIwJTtcbiAgICBib3R0b206IC00MCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiA4MCU7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGJvcmRlcjogMnB4IHNvbGlkICR3aGl0ZTtcbiAgICB6LWluZGV4OiAyO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudChcbiAgICAgIHRvIGJvdHRvbSxcbiAgICAgIHJnYmEoI2I2Y2MwMCwgMC43KSxcbiAgICAgIHJnYmEoIzZkNzU4NCwgMC43KSxcbiAgICAgIHJnYmEoIzllMWM2MiwgMC43KVxuICAgICk7XG4gICAgZGlzcGxheTogbm9uZTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxuXG4gICZfX3RpdGxlLFxuICAmX19mb3JtdGl0bGUge1xuICAgIGZvbnQtZmFtaWx5OiBcIlJvYm90byBTbGFiXCIsIHNlcmlmO1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICBmb250LXNpemU6IDI1cHg7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIGZvbnQtc2l6ZTogMzVweDtcbiAgICB9XG4gIH1cblxuICAmX19mb3JtdGl0bGUge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBmb250LXNpemU6IDI4cHg7XG4gIH1cblxuICAmX19mb3JtZmllbGRzIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgfVxuXG4gICZfX2lucHV0IHtcbiAgICBib3JkZXI6IDJweCBzb2xpZCAkd2hpdGU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXB1cnBsZS1saWdodDtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gICAgYm9yZGVyLXJhZGl1czogaW5pdGlhbDtcbiAgICBwYWRkaW5nOiAxcmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxMDAlO1xuICAgIGhlaWdodDogaW5pdGlhbDtcbiAgICBjb2xvcjogJHdoaXRlO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItcHVycGxlLWxpZ2h0O1xuICAgICAgYm9yZGVyOiAycHggc29saWQgJHdoaXRlO1xuICAgIH1cbiAgfVxuXG4gICZfX3N1Ym1pdCB7XG4gICAgZm9udC1mYW1pbHk6IFwiUm9ib3RvIFNsYWJcIiwgc2VyaWY7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgY29sb3I6ICM0MDQ0NGQ7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IGluaXRpYWw7XG4gICAgbGluZS1oZWlnaHQ6IDEwMCU7XG4gICAgcGFkZGluZzogMXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gICAgYm9yZGVyOiAycHggc29saWQgJHdoaXRlO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLklucHV0QmxvY2sge1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIDAuNXJlbSk7XG4gICAgICBtYXJnaW46IDAgMC4yNXJlbTtcbiAgICB9XG4gIH1cblxuICAuZnlyZS1sb2dvIHtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBwYWRkaW5nLWJvdHRvbTogMnJlbTtcbiAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgaW1nIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIHdpZHRoOiA1MTJweDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgaGVpZ2h0OiA1MTJweDtcbiAgICB9XG5cbiAgICAmLW1vYmlsZSB7XG4gICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcCB7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgfVxuXG4gIHA6bGFzdC1vZi10eXBlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICB9XG5cbiAgLmRvd25sb2FkLXBkZiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXJhZGl1czogaW5pdGlhbDtcbiAgICBib3JkZXI6IDJweCBzb2xpZCAkd2hpdGU7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGZvbnQtZmFtaWx5OiBcIlJvYm90byBTbGFiXCIsIHNlcmlmO1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgfVxuXG4gIC5kZW50YWwtd2Vlay10ZXh0IHtcbiAgICBwYWRkaW5nOiAycmVtIDNyZW0gM3JlbTtcbiAgICBmbGV4OiAxIDEgMTAwJTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIGZsZXg6IDEgMCAzNiU7XG4gICAgfVxuICB9XG5cbiAgLmRlbnRhbC13ZWVrLWZvcm0tY29udGFpbmVyIHtcbiAgICBmbGV4OiAxIDEgMTAwJTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMztcbiAgICBwYWRkaW5nOiAwIDNyZW07XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWZsb3c6IGNvbHVtbjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgZmxleDogMSAwIDUwJTtcbiAgICB9XG4gIH1cbn1cblxuLmRvY3RvcnMge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoMGRlZywgIzllMWM2MiwgIzllMWM2Mik7XG4gIC5kYXRhLWNvbCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHBhZGRpbmc6ICRncmlkLWdhcDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIHBhZGRpbmc6ICRncmlkLWdhcCA4cmVtO1xuICAgIH1cblxuICAgIHAge1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICB9XG4gIH1cbiAgLmRvY3RvcnMtY29udGFpbmVyIHtcbiAgICBtYXJnaW46IDA7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWZsb3c6IHdyYXA7XG4gICAgaGVpZ2h0OiAxMDAlO1xuXG4gICAgLmRvY3Rvci1pdGVtIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICBmbGV4OiAwIDAgNTAlO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3RyZXRjaDtcbiAgICAgIGZsZXgtZmxvdzogY29sdW1uO1xuXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBmbGV4OiAxIDEgMzMuMzMlO1xuICAgICAgICBmbGV4LWZsb3c6IGNvbHVtbjtcbiAgICAgIH1cblxuICAgICAgaW1nIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuZG9jdG9yLWRhdGEge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3ItcHVycGxlLCAwLjg1KTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgIHotaW5kZXg6IDEwO1xuICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGVhc2Utb3V0O1xuICAgICAgICAgIHBhZGRpbmc6IDFyZW07XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJjpob3ZlciAuZG9jdG9yLWRhdGEge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgfVxuXG4gICAgICAuZG9jdG9yLWRhdGEgaDMsXG4gICAgICAuZG9jdG9yLWRhdGEgcCB7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgcGFkZGluZzogMC41cmVtO1xuICAgICAgfVxuXG4gICAgICAuZG9jdG9yLWRhdGEgaDMge1xuICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICB9XG5cbiAgICAgIHAge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgfVxuXG4gICAgICAuZGF0YS1jb250ZW50IHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4ubGFla25pIHtcbiAgLy8gLnNwbGlkZV9fc2xpZGUuaXMtYWN0aXZlIHtcbiAgLy8gICB0cmFuc2Zvcm06IHNjYWxlKDEpICFpbXBvcnRhbnQ7XG4gIC8vIH1cblxuICAuZnJvbnQtb3J2b3Nvay1jYXJvdXNlbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLW1hZGVudGEtbGlsYS0xO1xuICAgIHBhZGRpbmc6IDNyZW0gMDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgYm9yZGVyLXJhZGl1czogMTVweDtcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoXG4gICAgICAgIHRvIHJpZ2h0LFxuICAgICAgICAjNWUyMjQ2IDAlLFxuICAgICAgICB0cmFuc3BhcmVudCAyMCUsXG4gICAgICAgIHRyYW5zcGFyZW50IDgwJSxcbiAgICAgICAgIzVlMjI0NiAxMDAlXG4gICAgICApO1xuICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgICBvcGFjaXR5OiAwLjk1O1xuICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgLmRvY3Rvci10aXRsZSB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gIC5zcGxpZGVfX3NsaWRlLmlzLXZpc2libGUgLmRvY3Rvci10aXRsZSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3M7XG4gIH1cblxuICAuc3BsaWRlX19hcnJvdyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICB0b3A6IGluaXRpYWw7XG4gICAgYm90dG9tOiAxcmVtO1xuICAgIHdpZHRoOiA0MHB4ICFpbXBvcnRhbnQ7XG4gICAgaGVpZ2h0OiA0MHB4ICFpbXBvcnRhbnQ7XG4gICAgei1pbmRleDogMjtcblxuICAgIHN2ZyB7XG4gICAgICAvLyBoZWlnaHQ6IDEwM3B4O1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB0b3A6IGluaXRpYWw7XG4gICAgICBmaWxsOiAkd2hpdGU7XG4gICAgICBzdHJva2U6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIGZpbHRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIC5zcGxpZGVfX2Fycm93LS1wcmV2IHtcbiAgICBsZWZ0OiAxcmVtO1xuICB9XG4gIC5zcGxpZGVfX2Fycm93LS1uZXh0IHtcbiAgICByaWdodDogMXJlbTtcbiAgfVxufVxuXG4uZGVudGFsLWNsaW5pYyB7XG4gIHBhZGRpbmc6IDNyZW0gMDtcblxuICAucGhvdG8tYWNjb3JkaW9uIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB9XG5cbiAgLm1pY3JvQWNjb3JkaW9uIHtcbiAgICB6LWluZGV4OiAxO1xuICAgIG1hcmdpbjogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIC5taWNyb0FjY29yZGlvbiBsaSB7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlciAhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGhlaWdodDogMzAwcHg7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcblxuICAgIC5oZWFkaW5nIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43Nik7XG4gICAgICBwYWRkaW5nOiAwIDIwcHg7XG4gICAgICAvLyBtYXJnaW46IC0yMDdweCAwIDAgLTEwM3B4O1xuICAgICAgaGVpZ2h0OiA5OHB4O1xuICAgICAgd2lkdGg6IDI2NHB4O1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgIGNvbG9yOiAjNjY2O1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgIGxpbmUtaGVpZ2h0OiA5OHB4O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYm90dG9tOiAxMDNweDtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMC43cyBlYXNlLWluIDBzO1xuICAgICAgQGluY2x1ZGUgc2hvdy1mb3Ioc21hbGwpO1xuICAgIH1cblxuICAgICYubWljcm9TbGlkZS1vcGVuIC5oZWFkaW5nIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMjAwcHg7XG4gICAgfVxuXG4gICAgJi5taWNyb1NsaWRlLWNsb3NlZCAuaGVhZGluZyB7XG4gICAgICBtYXJnaW4tbGVmdDogLTEwM3B4O1xuICAgIH1cblxuICAgIC5kZXNjcmlwdGlvbiB7XG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgICAgcGFkZGluZzogODBweCAyMHB4IDIwcHggMjBweDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudChcbiAgICAgICAgMGRlZyxcbiAgICAgICAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpIDUwJSxcbiAgICAgICAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKVxuICAgICAgKTtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMC43cyBlYXNlLWluIDBzO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBvcGFjaXR5OiAxO1xuXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5taWNyb1NsaWRlLW9wZW4gLmRlc2NyaXB0aW9uIHtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuXG4gICAgJi5taWNyb1NsaWRlLWNsb3NlZCAuZGVzY3JpcHRpb24ge1xuICAgICAgYm90dG9tOiAtMjByZW07XG4gICAgICBvcGFjaXR5OiAwO1xuICAgIH1cblxuICAgIC5kZXNjcmlwdGlvbiB7XG4gICAgICBoMiB7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgICAgZm9udC1zaXplOiAyMXB4O1xuICAgICAgICBjb2xvcjogIzY2NjtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgLy8gbWFyZ2luOiAxNXB4IDI1cHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA1cHg7XG4gICAgICB9XG5cbiAgICAgIHAge1xuICAgICAgICBsaW5lLWhlaWdodDogMTJweDtcbiAgICAgICAgLy8gbWFyZ2luOiAxMHB4IDI1cHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICBsaW5lLWhlaWdodDogMS40ZW07XG4gICAgICAgIGNvbG9yOiAjNjY2O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uc2VjdGlvbi1yZXZpZXcgLnRleHQtYW5pbWF0ZS0xIHtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDYwcHgpO1xuICB0cmFuc2l0aW9uOiBhbGwgMS4xcyAwLjhzIGN1YmljLWJlemllcigwLjE2NSwgMC44NCwgMC40NCwgMSk7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLnNlY3Rpb24tcmV2aWV3IC50ZXh0LWFuaW1hdGUtMiB7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg2MHB4KTtcbiAgdHJhbnNpdGlvbjogYWxsIDEuM3MgMS4xcyBjdWJpYy1iZXppZXIoMC4xNjUsIDAuODQsIDAuNDQsIDEpO1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLnNlY3Rpb24tcmV2aWV3IC53cC1nciB7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg2MHB4KTtcbiAgdHJhbnNpdGlvbjogYWxsIDEuM3MgMC43cyBjdWJpYy1iZXppZXIoMC4xNjUsIDAuODQsIDAuNDQsIDEpICFpbXBvcnRhbnQ7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uc2VjdGlvbi1yZXZpZXcuaW4tdmlldyAud3AtZ3IsXG4uc2VjdGlvbi1yZXZpZXcuaW4tdmlldyAudGV4dC1hbmltYXRlLTEsXG4uc2VjdGlvbi1yZXZpZXcuaW4tdmlldyAudGV4dC1hbmltYXRlLTIge1xuICBvcGFjaXR5OiAxO1xuICB0cmFuc2Zvcm06IG5vbmU7XG59XG5cbi5zZWN0aW9uLXJldmlldyB7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB6LWluZGV4OiAxMDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAuZ29vZ2xlLXJldmlldyB7XG4gICAgd2lkdGg6IHJlbS1jYWxjKDcwMCk7XG4gICAgYm9yZGVyLXJhZGl1czogNTBweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGJveC1zaGFkb3c6IDAgMCAyMHB4IHJnYmEoJGJsYWNrLCAwLjIpO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAxMDtcblxuICAgIC50aXRsZSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB9XG5cbiAgICBoMiB7XG4gICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICBsZXR0ZXItc3BhY2luZzogMDtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMzIpO1xuICAgIH1cblxuICAgICYgPiBkaXYge1xuICAgICAgcGFkZGluZzogMnJlbTtcbiAgICB9XG5cbiAgICBzdmcge1xuICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgIH1cblxuICAgIGltZyB7XG4gICAgICBib3JkZXItcmFkaXVzOiA1MCUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAud2lkZ2V0LXdyYXBwZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgIH1cbiAgfVxufVxuXG4uZ29vZ2xlLXJldmlld3Mge1xuICBwYWRkaW5nOiAwIDAgM3JlbSAwO1xuICAvLyBiYWNrZ3JvdW5kLWNvbG9yOiAjZjlmYWZjO1xuXG4gIC5vd2wtY2Fyb3VzZWwge1xuICAgIC5vd2wtc3RhZ2Uge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICB9XG4gICAgLm93bC1pdGVtIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4OiAxIDAgYXV0bztcbiAgICB9XG4gIH1cblxuICAub3dsLW5hdiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICBsZWZ0OiAtMnJlbTtcbiAgICByaWdodDogLTJyZW07XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cbiAgICBpIHtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoNDApO1xuICAgIH1cbiAgfVxuXG4gIC5vd2wtc3RhZ2Utb3V0ZXIge1xuICAgIHBhZGRpbmc6IDFyZW0gMDtcbiAgICAvLyBvdmVyZmxvdzogaW5pdGlhbDtcbiAgfVxuXG4gIC5vd2wtZG90cyB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBhZGRpbmc6IDFyZW0gMDtcbiAgICBzcGFuIHtcbiAgICAgIHdpZHRoOiAxMHB4O1xuICAgICAgaGVpZ2h0OiAxMHB4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2E2YWJiNTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWFyZ2luOiAwLjRyZW07XG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgfVxuICAgIC5vd2wtZG90LmFjdGl2ZSBzcGFuIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1wdXJwbGU7XG4gICAgfVxuICB9XG5cbiAgLnNsaWRlLWl0ZW0ge1xuICAgIGJvcmRlci1yYWRpdXM6IDE1cHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBib3gtc2hhZG93OiAwcHggMHB4IDEwcHggcmdiYSg2NCwgNjgsIDc3LCAwLjIpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcblxuICAgIGEge1xuICAgICAgY29sb3I6ICRjb2xvci1mb250O1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZmxvdzogY29sdW1uO1xuICAgIH1cblxuICAgIC5jb250ZW50IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWZsb3c6IGNvbHVtbjtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIHBhZGRpbmc6IDFyZW07XG4gICAgICBmbGV4OiAxIDEgYXV0bztcbiAgICB9XG4gIH1cbn1cblxuLm1vZGFsLXZpZGVvIHtcbiAgLmVtYmVkLWNvbnRhaW5lciB7XG4gICAgd2lkdGg6IDYwdnc7XG4gIH1cbn1cblxuLmNsaW5pYy12aWRlbyB7XG4gIC5lbWJlZC1jb250YWluZXIge1xuICAgIGJvcmRlci1yYWRpdXM6IDE1cHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxuXG4gIC5jb250YWluZXIge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgfVxuXG4gICAgLm1vZGFsLXRyaWdnZXItaW1hZ2Uge1xuICAgICAgQGluY2x1ZGUgc2hvdy1mb3IobGFyZ2UpO1xuICAgIH1cblxuICAgIC5oaWRlLWZvci1kZXNrdG9wIHtcbiAgICAgIEBpbmNsdWRlIGhpZGUtZm9yKGxhcmdlKTtcbiAgICB9XG5cbiAgICBpbWcge1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMnMgZWFzZS1pbi1vdXQ7XG4gICAgICB3aWR0aDogNzAlO1xuICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1hcmdpbjogaW5pdGlhbDtcbiAgICAgICAgZGlzcGxheTogaW5pdGlhbDtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMDcpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnRvdXIge1xuICAgICAgZ3JpZC1hcmVhOiB0b3VyO1xuICAgIH1cblxuICAgIC5kaXNjb3ZlciB7XG4gICAgICBncmlkLWFyZWE6IHRvdXJ0aXRsZTtcbiAgICB9XG5cbiAgICAudmlkZW8ge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgcGFkZGluZzogMCAxMHJlbTtcbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBwYWRkaW5nOiAwIDEwcmVtO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgICAgcGFkZGluZzogMCAxMHJlbTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBoMyB7XG4gICAgICBmb250LXdlaWdodDogODAwO1xuICAgIH1cblxuICAgIC52aWRlbyxcbiAgICAudG91cixcbiAgICAuZGlzY292ZXIge1xuICAgICAgYWxpZ24tc2VsZjogY2VudGVyO1xuICAgIH1cbiAgfVxufVxuXG4uYWJvdXQtYnVkYXBlc3Qge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIC8vIHBhZGRpbmc6IDNyZW0gMDtcbiAgJGJ1ZGFwZXN0LWJnOiAkY29sb3ItcHVycGxlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItZ3JheS1iZztcblxuICAuaW1hZ2UsXG4gIC50ZXh0LWNvbnRhaW5lciB7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgd2lkdGg6IDUwJTtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIC5pbWFnZSB7XG4gICAgICBvcmRlcjogMjtcbiAgICB9XG5cbiAgICAudGV4dC1jb250YWluZXIge1xuICAgICAgb3JkZXI6IDE7XG4gICAgfVxuICB9XG5cbiAgLnRleHQtaW5uZXIge1xuICAgIHBhZGRpbmc6IDJyZW0gMXJlbSAzcmVtO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgcGFkZGluZzogM3JlbSA1cmVtO1xuICAgIH1cbiAgfVxuXG4gIGgzIHtcbiAgICBjb2xvcjogJGNvbG9yLWdyYXk7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICB9XG5cbiAgLmltYWdlIHtcbiAgICBwYWRkaW5nOiA3cmVtIDA7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBwYWRkaW5nOiAxMXJlbSAwO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIHBhZGRpbmc6IDEzcmVtIDA7XG4gICAgfVxuXG4gICAgaW1nIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgfVxuICB9XG5cbiAgLm93bC1pdGVtIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuXG4gICAgLm93bC1pdGVtID4gZGl2IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4OiAxIDAgYXV0bztcbiAgICB9XG4gIH1cblxuICAub3dsLWNhcm91c2VsIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAub3dsLXN0YWdlIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIH1cblxuICAgICAgLm93bC1pdGVtIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleDogMSAwIGF1dG87XG4gICAgICAgIGhlaWdodDogaW5pdGlhbDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAub3dsLW5hdiB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBoZWlnaHQ6IDUwcHg7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICB0b3A6IDEwJTtcblxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5vd2wtaXRlbSA+IGRpdiB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAub3dsLXByZXYsXG4gICAgLm93bC1uZXh0IHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIG1hcmdpbjogMDtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgfVxuXG4gICAgICBpIHtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgZm9udC1zaXplOiA2MHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMTtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgY29sb3I6IGxpZ2h0ZW4oJGJ1ZGFwZXN0LWJnLCAxMCUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLm93bC1wcmV2IHtcbiAgICAgIGxlZnQ6IDJyZW07XG4gICAgfVxuXG4gICAgLm93bC1uZXh0IHtcbiAgICAgIHJpZ2h0OiAycmVtO1xuXG4gICAgICBpOmJlZm9yZSB7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIHRleHQtc2hhZG93OiAwIDAgMjBweCByZ2JhKCRibGFjaywgMC44KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAub3dsLWRvdHMge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBib3R0b206IDFyZW07XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgIHRvcDogaW5pdGlhbDtcbiAgICAgICAgdHJhbnNmb3JtOiBpbml0aWFsO1xuICAgICAgICBib3R0b206IDFyZW07XG4gICAgICB9XG4gICAgfVxuXG4gICAgLm93bC1kb3Qge1xuICAgICAgc3BhbiB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRidWRhcGVzdC1iZztcbiAgICAgIH1cblxuICAgICAgJjpob3ZlciBzcGFuLFxuICAgICAgJi5hY3RpdmUgc3BhbiB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGxpZ2h0ZW4oJGJ1ZGFwZXN0LWJnLCAyMCUpO1xuICAgICAgICB3aWR0aDogMTRweDtcbiAgICAgICAgaGVpZ2h0OiAxNHB4O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRvcDogMnB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uZnJvbnQtcGFnZS1jb250YWN0IHtcbiAgcGFkZGluZzogM3JlbSAwIDA7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kLWF0dGFjaG1lbnQ6IGZpeGVkO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICBwYWRkaW5nOiAzcmVtIDA7XG4gIH1cblxuICAubmYtZmllbGQtY29udGFpbmVyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG5cbiAgLmdyaWQge1xuICAgIGdyaWQtY29sdW1uLWdhcDogNnJlbTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgbWFyZ2luOiAwO1xuICAgIH1cbiAgfVxuXG4gIGZvcm0ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICY6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IC0xMXJlbTtcbiAgICAgIGxlZnQ6IC02cmVtO1xuICAgICAgcmlnaHQ6IC02cmVtO1xuICAgICAgYm90dG9tOiAtMTByZW07XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItZ3JlZW47XG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICB6LWluZGV4OiAtMTtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKDdkZWcpO1xuXG4gICAgICBAaW5jbHVkZSBzaG93LWZvcihsYXJnZSk7XG4gICAgfVxuICB9XG5cbiAgLmZvcm0td3JhcHBlciB7XG4gICAgcGFkZGluZzogMnJlbTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYjZjYzAwO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgcGFkZGluZzogM3JlbSA2cmVtIDA7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIHdpZHRoOiBpbml0aWFsO1xuICAgIH1cbiAgfVxuXG4gIC5maWVsZHMge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBnYXA6IDFyZW07XG4gICAgfVxuICB9XG5cbiAgLmNvbCB7XG4gICAgZmxleDogMSAwIDUwJTtcbiAgfVxuXG4gIHRleHRhcmVhIHtcbiAgICBoZWlnaHQ6IDg5cHg7XG4gICAgYm9yZGVyLXJhZGl1czogMTVweDtcbiAgfVxuXG4gIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0sXG4gIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxuICBpbnB1dFt0eXBlPVwiZW1haWxcIl0sXG4gIGlucHV0W3R5cGU9XCJ0ZWxcIl0ge1xuICAgIGJvcmRlci1yYWRpdXM6IDEwMHB4O1xuICB9XG5cbiAgaW5wdXRbdHlwZT1cInRleHRcIl0sXG4gIGlucHV0W3R5cGU9XCJlbWFpbFwiXSxcbiAgaW5wdXRbdHlwZT1cInRlbFwiXSxcbiAgdGV4dGFyZWEge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJHdoaXRlLCAxKTtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICBib3gtc2hhZG93OiBub25lO1xuXG4gICAgJjo6cGxhY2Vob2xkZXIge1xuICAgICAgY29sb3I6ICM0MDQ0NGQ7XG4gICAgfVxuICB9XG5cbiAgLmdhbGxlcnktY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgcGFkZGluZzogMCAycmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICB9XG5cbiAgICAuZ2FsbGVyeS1pdGVtIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgZmxleDogMSAxIGNhbGMoMzMuMzMlIC0gMXJlbSk7XG4gICAgICBtYXJnaW46IDAgMC41cmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICBib3JkZXItcmFkaXVzOiAxNXB4O1xuXG4gICAgICBpbWcge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuZGF0YS1jb250YWluZXIgaDIge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG4gIH1cblxuICAuZGF0YS1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiBjb2x1bW47XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgZmxleC1mbG93OiByb3c7XG4gICAgfVxuICB9XG5cbiAgcCB7XG4gICAgY29sb3I6ICRjb2xvci1wdXJwbGU7XG4gIH1cblxuICBoMiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG4gICAgcGFkZGluZzogMCAzcmVtO1xuICB9XG5cbiAgLmJ1dHRvbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLW1hZ2VudGE7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgICBwYWRkaW5nOiAwLjVyZW07XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1wdXJwbGU7XG4gICAgfVxuICB9XG59XG5cbiNtYXAge1xuICBoZWlnaHQ6IDMwdmg7XG59XG4iLCIuZmx5LWluIHtcbiAgcGFkZGluZzogM3JlbSAwO1xuICAvLyBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCAjOWUxYzYyIDAlLCByZ2JhKDE1OCwgMjgsIDk4LCAwKSAxMDAlKSxcbiAgLy8gICBsaW5lYXItZ3JhZGllbnQoMGRlZywgIzllMWM2MiwgIzllMWM2MiksXG4gIC8vICAgbGluZWFyLWdyYWRpZW50KDBkZWcsICMwMDAwMDAsICMwMDAwMDApLFxuICAvLyAgIHVybChcIi4uL2Fzc2V0cy9idWRhcGVzdC9tZF9yZWxheC1jb250YWN0LWJnLmpwZ1wiKSwgI2Y1ZjZmNztcbiAgLy8gYmFja2dyb3VuZC1ibGVuZC1tb2RlOiBub3JtYWwsIG11bHRpcGx5LCBjb2xvciwgbm9ybWFsLCBub3JtYWw7XG5cbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTQ5Ljg1ZGVnLCAjN2UxZjU0IDAlLCAjNWUyMjQ2IDU1LjIxJSksXG4gICAgdXJsKFwiLi4vYXNzZXRzL2J1ZGFwZXN0L21kX3JlbGF4LWNvbnRhY3QtYmcuanBnXCIpLCAjZjVmNmY3O1xuICBiYWNrZ3JvdW5kLWJsZW5kLW1vZGU6IG5vcm1hbCwgbXVsdGlwbHksIGNvbG9yLCBub3JtYWwsIG5vcm1hbDtcblxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICBwYWRkaW5nOiA2cmVtIDA7XG4gIH1cblxuICAmX19jYXJkIC5wYXJhZ3JhcGgtdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTgsIDE1cHgpO1xuICB9XG5cbiAgJl9fY2FyZCB7XG4gICAgaW1nIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgfVxuXG4gICAgcCB7XG4gICAgICBtYXgtd2lkdGg6IDQwY2g7XG4gICAgICBtYXJnaW46IDAgYXV0b1xuICAgIH1cbiAgfVxuXG4gICZfX2hlYWRlciB7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgfVxuXG4gIHAge1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgLy8gdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG5cbiAgLnByaWNlLWxpc3Qge1xuICAgIHRoIHNwYW4ge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG5cbiAgLmNvbHVtbi0yLFxuICAuY29sdW1uLTMge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICB9XG5cbiAgLmNvbHVtbi00IHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cblxuICAucHJpY2VzLmdyaWQgIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICB9XG4gIH1cbiAgLmxpbmUge1xuICAgIGhlaWdodDogMXB4O1xuICAgIGJvcmRlci10b3A6IGRhc2hlZCAxcHggJHdoaXRlO1xuICAgIG1hcmdpbjogMnJlbTtcbiAgICBAaW5jbHVkZSBoaWRlLWZvcihsYXJnZSk7XG4gIH1cblxuICAudGFibGUtd3JhcHBlciB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBib3gtc2hhZG93OiAwcHggMHB4IDEwcHggcmdiYSg2NCwgNjgsIDc3LCAwLjIpO1xuICAgIGJvcmRlci1yYWRpdXM6IDE1cHg7XG4gICAgXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICBtYXJnaW4tbGVmdDogMnJlbTtcbiAgICAgIG1hcmdpbi1yaWdodDogMnJlbTtcbiAgICAgIHdpZHRoOiA2NTBweDtcbiAgICB9XG4gIH1cblxuICB0YWJsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxNCwgMTVweCk7XG5cbiAgICB0ciB7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgdGhlYWQge1xuICAgIGJvcmRlcjogbm9uZTtcblxuICAgIHRoIHtcbiAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICBwYWRkaW5nOiAwLjVyZW07XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgIH1cblxuICAgIHRkIHtcbiAgICAgIHBhZGRpbmc6IDAuNXJlbTtcbiAgICB9XG5cbiAgICB0aC5jb2x1bW4tMSxcbiAgICB0aC5jb2x1bW4tNCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjOGE5MTlkO1xuICAgIH1cbiAgICB0aC5jb2x1bW4tMixcbiAgICB0aC5jb2x1bW4tMyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNmQ3NTg0O1xuICAgICAgYm9yZGVyLWxlZnQ6IHNvbGlkIDFweCAkd2hpdGU7XG4gICAgfVxuXG4gICAgdGguY29sdW1uLTQge1xuICAgICAgYm9yZGVyLWxlZnQ6IHNvbGlkIDFweCAkd2hpdGU7XG4gICAgfVxuXG4gICAgdGggc3BhbiB7XG4gICAgICBmb250LXdlaWdodDogNDAwO1xuICAgIH1cblxuICAgIHN2ZyB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAvLyB0b3A6IDRweDtcbiAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICB9XG4gIH1cblxuICB0Ym9keSB7XG4gICAgYm9yZGVyOiBub25lO1xuXG4gICAgdGQge1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICB9XG5cbiAgICB0ZDpmaXJzdC1jaGlsZCB7XG4gICAgICBmb250LXdlaWdodDogNDAwO1xuICAgIH1cblxuICAgIHRkLmNvbHVtbi0yLFxuICAgIHRkLmNvbHVtbi0zIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICM5OTllYTk7XG4gICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyMCwgMTVweCk7XG5cbiAgICAgIHNwYW4ge1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0LCAxNXB4KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICB0cjpudGgtY2hpbGQoZXZlbikge1xuICAgICAgdGQuY29sdW1uLTEge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjBmMWYyO1xuICAgICAgfVxuICAgICAgdGQuY29sdW1uLTIsXG4gICAgICB0ZC5jb2x1bW4tMyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM4YTkxOWQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgdGQuY29sdW1uLTMsXG4gICAgdGQuY29sdW1uLTQge1xuICAgICAgYm9yZGVyLWxlZnQ6IHNvbGlkIDFweCAkd2hpdGU7XG4gICAgfVxuICAgIHRkLmNvbHVtbi00IHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNiNmNjMDA7XG4gICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyMCwgMTVweCk7XG4gICAgfVxuXG4gICAgdHI6bnRoLWNoaWxkKGV2ZW4pIHtcbiAgICAgIHRkLmNvbHVtbi00IHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2FhYmUwOTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAudGFibGUtb3ZlcmZsb3cge1xuICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgb3JkZXI6IDI7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBvcmRlcjogMTtcbiAgICB9XG4gIH1cblxuICAudGV4dC13cmFwcGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogY29sdW1uO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIG9yZGVyOiAxO1xuICAgIFxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgbWFyZ2luOiAwIDJyZW0gMnJlbTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBvcmRlcjogMjtcbiAgICB9XG5cbiAgICBoMiB7XG4gICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyNCwgMTVweCk7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIH1cblxuICAgIHAge1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB9XG4gIH1cbn1cbiIsIi5kdy1saWdodCB7XG4gIHBhZGRpbmc6IDNyZW0gMDtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgcGFkZGluZzogNnJlbSAwO1xuICB9XG5cbiAgcCB7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxNCwgMTVweCk7XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAuZ3JpZCB7XG4gICAgICBtYXJnaW4tbGVmdDogMnJlbTtcbiAgICAgIG1hcmdpbi1yaWdodDogMnJlbTtcbiAgICAgICYgLmdyaWQge1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICZfX2hlYWRlciB7XG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcblxuICAgIHAge1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNiwgMTVweCk7XG4gICAgfVxuICB9XG5cbiAgdWwge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIH1cblxuICBoMyB7XG4gICAgY29sb3I6ICM5ZTFjNjI7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxOCwgMTVweCk7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIHNwYW4ge1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgICBsZWZ0OiAtMi41cmVtO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgd2lkdGg6IDI2cHg7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBsaW5lLWhlaWdodDogMS40O1xuICAgICAgLy8gZm9udC1mYW1pbHk6ICRoZWFkZXItZm9udC1mYW1pbHk7XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNiwgMTVweCk7XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1ncmVlbjtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB3aWR0aDogMjRweDtcbiAgICAgICAgaGVpZ2h0OiAyNHB4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgIHotaW5kZXg6IC0xO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGg0IHtcbiAgICBjb2xvcjogIzllMWM2MjtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE2LCAxNXB4KTtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICB9XG5cbiAgbGkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0LCAxNXB4KTtcblxuICAgICY6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDdweDtcbiAgICAgIGxlZnQ6IC0xcmVtO1xuICAgICAgd2lkdGg6IDdweDtcbiAgICAgIGhlaWdodDogN3B4O1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWdyZWVuO1xuICAgIH1cbiAgfVxuXG4gIC5kZW50YWwtd2Vlay1kZXNjcmlwdGlvbiB7XG4gICAgLnRleHQge1xuICAgICAgb3JkZXI6IDI7XG4gICAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLmxvZ28ge1xuICAgICAgb3JkZXI6IDE7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgLnRleHQsXG4gICAgICAubG9nbyB7XG4gICAgICAgIG9yZGVyOiBpbml0aWFsO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC50ZXh0IHtcbiAgICBwYWRkaW5nOiAxcmVtIDFyZW0gMXJlbSAzLjVyZW07XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgIH1cbiAgfVxuXG4gIC5sb2dvIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KFxuICAgICAgMTQyLjE4ZGVnLFxuICAgICAgI2Y0ZjVmNyAwLjA0JSxcbiAgICAgICNlMGUyZTUgMTAwLjA0JVxuICAgICk7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICBwYWRkaW5nOiAxcmVtO1xuICAgIH1cblxuICAgIGltZyB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICAgIH1cbiAgfVxuXG4gIC51cGNvbW1pbmcge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1ncmVlbjtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgYm9yZGVyLXJhZGl1czogMTAwcHg7XG4gICAgcGFkZGluZzogMC41cmVtIDJyZW07XG4gICAgZm9udC12YXJpYW50LW51bWVyaWM6IGxpbmluZy1udW1zO1xuICAgIGZvbnQtZmVhdHVyZS1zZXR0aW5nczogXCJsbnVtXCI7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICB9XG5cbiAgICBzcGFuIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyMiwgMTVweCk7XG4gICAgfVxuICB9XG59XG4iLCIucGV0ZXItZ3lvcmd5LXF1b3RlIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkgeyBcbiAgICAgICAgLndwLWJsb2NrLWNvbHVtbjpudGgtY2hpbGQoMSkge1xuICAgICAgICAgICAgZmxleC1iYXNpczogNzUlXG4gICAgICAgIH1cbiAgICAgICAgLndwLWJsb2NrLWNvbHVtbjpudGgtY2hpbGQoMikge1xuICAgICAgICAgICAgZmxleC1iYXNpczogMjUlXG4gICAgXG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5sZWFkZXItaW1hZ2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvci1ncmF5LWxpZ2h0O1xufSIsIi5wYWdlLXRlbXBsYXRlLXBhZ2UtY29udGFjdCB7XG5cbiAgICAjbWFwIHtcbiAgICAgICAgaGVpZ2h0OiByZW0tY2FsYyg0MDApO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAuZ3JpZCB7XG4gICAgICAgIGdyaWQtY29sdW1uLWdhcDogMDtcbiAgICB9XG5cblxuICAgIC5mb3JtLWNvbnRhY3Qge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItbWFnZW50YTtcbiAgICAgICAgcGFkZGluZzogM3JlbTtcblxuICAgICAgICAuZm9ybS10aXRsZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDIwKTtcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAwO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogM3JlbTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgIH1cblxuICAgICAgICB0ZXh0YXJlYSxcbiAgICAgICAgaW5wdXRbdHlwZT0ndGVsJ10sXG4gICAgICAgIGlucHV0W3R5cGU9J2VtYWlsJ10sXG4gICAgICAgIGlucHV0W3R5cGU9J3RleHQnXSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKCR3aGl0ZSwgMSk7XG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICAgICAgY29sb3I6ICRjb2xvci1wdXJwbGU7XG5cbiAgICAgICAgICAgICY6OnBsYWNlaG9sZGVyIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGNvbG9yLXB1cnBsZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHRleHRhcmVhIHtcbiAgICAgICAgICAgIGhlaWdodDogMjUwcHg7O1xuICAgICAgICB9XG5cbiAgICAgICAgaW5wdXRbdHlwZT1cImJ1dHRvblwiXSB7XG4gICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItZ3JlZW47XG4gICAgICAgIH1cblxuICAgICAgICAubmYtZm9ybS1maWVsZHMtcmVxdWlyZWQge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5uZi1maWVsZC1jb250YWluZXIge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogLjVyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAucGFya2luZyB7XG4gICAgICAgIHBhZGRpbmc6IDNyZW07XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcblxuICAgICAgICB0ZCxcbiAgICAgICAgdGgge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgd2lkdGg6IDMzLjMzJTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1wdXJwbGU7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICB9XG5cbiAgICAgICAgdHI6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItZ3JheTtcblxuICAgICAgICAgICAgdGQge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDMwKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5yZWNlcHRpb24ge1xuICAgICAgICBtYXJnaW4tdG9wOiAycmVtO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICB3aWR0aDogODAlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmFkZHJlc3Mge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItcHVycGxlO1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICBwYWRkaW5nOiAzcmVtO1xuXG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIHdpZHRoOiA4MCU7XG4gICAgICAgIH1cblxuICAgICAgICAuYWRkcmVzcy10aXRsZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDIyKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5mYS11bCB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMS41cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiLnBhZ2UtdGVtcGxhdGUtcGFnZS1nYWxsZXJ5IHtcblxuICAgIC5nYWxsZXJ5LWdyaWQge1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgIH1cblxuICAgIC5wYWdlLWhlYWRlciB7XG4gICAgICAgIGZsZXgtZmxvdzogY29sdW1uO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgIC50aXRsZS1jb250YWluZXItZ2FsbGVyeSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBmbGV4LWZsb3c6IHJvdztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5idXR0b24tZ3JvdXAge1xuICAgICAgICBmbGV4LWZsb3c6IGNvbHVtbjtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBmbGV4LWZsb3c6IHJvdztcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICAgICAgICBmb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHk7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHJlbS1jYWxjKDE1KTtcbiAgICAgICAgICAgIHBhZGRpbmc6IC41cmVtIDFyZW07XG4gICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuXG4gICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE2KVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLmlzLWNoZWNrZWQge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1wdXJwbGU7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5pbWFnZXMtZ3JpZCB7XG5cbiAgICAgICAgLm1hc29ucnkge1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcblxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmdyaWQtc2l6ZXIge1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICB3aWR0aDogMzMuMzMlO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgd2lkdGg6IDIwJTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5tYXNvbnJ5LWl0ZW0ge1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICB3aWR0aDogMzMuMzMlO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgd2lkdGg6IDIwJTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC52aWRlby1pdGVtIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgIHN2ZyB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKSB0cmFuc2xhdGVZKC01MCUpIHNjYWxlKDcpO1xuICAgICAgICB9XG5cbiAgICAgICAgcGF0aCB7XG4gICAgICAgICAgICBmaWxsOiAkd2hpdGU7XG4gICAgICAgICAgICBvcGFjaXR5OiAuNTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi5tYWluLWdyaWQge1xuICAuY29udGVudCB7XG4gICAgcGFkZGluZzogMnJlbSAwO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAvLyBtYXgtd2lkdGg6IDc1MHB4O1xuICAgIH1cbiAgfVxufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgIEZhY3Rvcnkgb2xkYWxvbiBheiBpa29ub3MgZmVsc29yb2zDoXNcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5bZGF0YS13aGF0aW5wdXQ9XCJtb3VzZVwiXSAucmVhc29ucyAucmVhc29ucy1pdGVtOmhvdmVyIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAyO1xuICBib3gtc2hhZG93OiBub25lO1xufVxuXG4ucmVhc29ucyB7XG4gIHBhZGRpbmc6IDNyZW0gMDtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KDk1ZGVnLCAkY29sb3ItZ3JlZW4sICRjb2xvci1ncmF5KTtcblxuICAucmVhc29ucy1pdGVtcyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgIHBhZGRpbmc6IDAgNHJlbTtcbiAgICB9XG4gIH1cblxuICAucmVhc29ucy1pdGVtIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW46IDAgMXJlbTtcbiAgICBmbGV4LWdyb3c6IDE7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWZsb3c6IGNvbHVtbjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgIHBhZGRpbmc6IDFyZW0gMXJlbSAzcmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgdHJhbnNpdGlvbjogYWxsIC4ycyBlYXNlLWluLW91dDtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgd2lkdGg6IGluaXRpYWw7XG4gICAgICBmbGV4OiAxIDAgY2FsYygzMy4zMyUgLSAycmVtKTtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgZmxleDogMSAwIGNhbGMoMjAlIC0gMnJlbSk7XG4gICAgfVxuICAgIEBtZWRpYSBhbGwgYW5kICgtbXMtaGlnaC1jb250cmFzdDogbm9uZSksICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSBhbmQgKG1heC13aWR0aDogMTAyM3B4KSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gICAgQG1lZGlhIGFsbCBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSwgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgIHdpZHRoOiBjYWxjKDIwJSAtIDJyZW0pO1xuICAgIH1cbiAgfVxuXG4gIC5yZWFzb25zLWl0ZW06aG92ZXIge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xKTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMjtcbiAgICBib3gtc2hhZG93OiAwIDAgMzBweCByZ2JhKCRibGFjaywgLjUpO1xuICB9XG5cbiAgcCxoMiB7XG4gICAgY29sb3I6ICRjb2xvci1mb250O1xuICB9XG5cbiAgcCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDExLjgpO1xuICB9XG5cbiAgLnJlYXNvbnMtaXRlbS1pbm5lciB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG5cbiAgLmJ1dHRvbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMXJlbTtcbiAgICBsZWZ0OjUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1ncmVlbjtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxMSk7XG4gICAgcGFkZGluZzogLjJyZW0gLjVyZW07XG4gIH1cblxuICAucmVhc29ucy1pdGVtLWltYWdlIHtcbiAgICBwYWRkaW5nOiAwIDQuNXJlbTtcbiAgICBcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBwYWRkaW5nOiAwIDIuNXJlbTtcbiAgICB9XG5cbiAgICBpbWcge1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XG4gICAgICB3aWR0aDogMTUwcHg7XG4gICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxuXG4gIC5yZWFzb25zLWl0ZW0tdGl0bGUge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDEyKTtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuICAgIH1cbiAgfVxufVxuXG4uZmFjdG9yeS1jb250ZW50IHtcbiAgbWF4LXdpZHRoOiA5NjBweCFpbXBvcnRhbnQ7XG4gIFxuICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgIG1heC13aWR0aDogMTAyNHB4IWltcG9ydGFudDtcbiAgfVxufVxuXG4uZGVudGFsLXdlZWstZm9ybSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1wcmljZS1jaGVjaztcbiAgcGFkZGluZzogM3JlbSAyLjVyZW07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogd3JhcDtcblxuICBwIHtcbiAgICBjb2xvcjogJHdoaXRlO1xuICB9XG5cbiAgJl9fdGV4dCB7XG4gICAgZmxleDogMSAxIGNhbGMoNjAlIC0gMXJlbSk7XG4gICAgbWFyZ2luOiAwIDAuNXJlbTtcbiAgfVxuXG4gICZfX2Zvcm0ge1xuICAgIGZsZXg6IDEgMSBjYWxjKDQwJSAtIDFyZW0pO1xuICAgIG1hcmdpbjogMCAwLjVyZW07XG4gIH1cblxuICAuSW5wdXRCbG9jayB7XG4gICAgZmxleDogMSAwIDEwMCU7XG4gICAgbWFyZ2luOiAwIDAuNXJlbTtcbiAgfVxuXG4gICZfX2lucHV0W3R5cGU9XCJ0ZXh0XCJdIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxuXG4gICZfX2lucHV0IHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIHBhZGRpbmc6IDFyZW0gMnJlbTtcbiAgICBoZWlnaHQ6IGluaXRpYWw7XG4gICAgbGluZS1oZWlnaHQ6IGluaXRpYWw7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxNik7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcblxuICAgICY6OnBsYWNlaG9sZGVyIHtcbiAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcbiAgICB9XG4gIH1cbiAgJl9fZmllbGRzZXQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICB9XG5cbiAgJl9fcmVzcG9uc2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1hbGVydDtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIHdpZHRoOiA1MCU7XG4gICAgbWFyZ2luOjAgYXV0bztcbiAgfVxufVxuIiwiLnBhZ2UtaWQtMTE5OCB7XG4gICAgdGQ6bnRoLWNoaWxkKDEpIHtcbiAgICAgICAgd2lkdGg6IDMwJTtcbiAgICB9XG4gICAgdGQ6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgd2lkdGg6IDIwJTtcbiAgICB9XG4gICAgdGQ6bnRoLWNoaWxkKDMpIHtcbiAgICAgICAgd2lkdGg6IDUwJTtcbiAgICB9XG59IiwiLmJsb2ctY29udGFpbmVyIHtcblxuICAgIC5ncmlkIHtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1hcmVhczpcbiAgICAgICAgICAgICdjb250ZW50J1xuICAgICAgICAgICAgJ3NpZGViYXInO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtYXJlYXM6ICdzaWRlYmFyIGNvbnRlbnQnO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnNpZGViYXIge1xuICAgICAgICBncmlkLWFyZWE6IHNpZGViYXI7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiA2cmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmNvbnRlbnQge1xuICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgICAgZ3JpZC1hcmVhOiBjb250ZW50O1xuICAgIH1cblxuICAgIC5ncmlkLXNpemVyLFxuICAgIC5tYXNvbnJ5LWl0ZW0ge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgd2lkdGg6IDMzLjMzJTtcbiAgICAgICAgfVxuICAgIH1cblxuXG4gICAgLmdyaWQtaXRlbS1pbm5lciB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA0cmVtO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAuMnMgZWFzZS1pbi1vdXQ7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7XG4gICAgICAgICAgICAgICAgei1pbmRleDogJGxheWVyLXRvcDtcbiAgICAgICAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMzBweCByZ2JhKCRibGFjaywgLjEpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnBvc3QtbGluayB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBjb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiAgICB9XG5cbiAgICAuaW1hZ2Uge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAuZW50cnkge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDFyZW0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmVudHJ5LWhlYWRlcixcbiAgICAuZW50cnktY29udGVudCB7XG4gICAgICAgIHBhZGRpbmc6IDAgMXJlbTtcbiAgICB9XG5cbiAgICAuZW50cnktdGl0bGUgYSB7XG4gICAgICAgIGNvbG9yOiAkY29sb3ItZm9udDtcbiAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgLjJzIGVhc2UtaW4tb3V0O1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgY29sb3I6ICRjb2xvci1wdXJwbGVcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC52aWV3LW1vcmUtYnV0dG9uLXdyYXBwZXIge1xuICAgICAgICBwYWRkaW5nOiAwIDFyZW07XG5cbiAgICB9XG59IiwiLnBhZ2UtdGVtcGxhdGUtcGFnZS1zdGVwcyB7XG4gIC5wYWdlLWhlYWRlci53aXRoLWltYWdlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAudGl0bGUtY29udGFpbmVyIHtcbiAgICAgIHBhZGRpbmc6IDFyZW0gMnJlbTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiA2cmVtO1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICB3aWR0aDogNDAlO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIC5wYXJhZ3JhcGgtdGl0bGUge1xuICAgICAgICBjb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XG4gICAgICB9XG5cbiAgICAgIHAge1xuICAgICAgICBjb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIC5zdGVwcy1taW5pbWVudSB7XG4vLyAgIHBvc2l0aW9uOiBmaXhlZDtcbi8vICAgcmlnaHQ6IDA7XG4vLyAgIHRvcDogNDAlO1xuXG4vLyAgIEBpbmNsdWRlIHNob3ctZm9yKGxhcmdlKTtcblxuLy8gICB1bCB7XG4vLyAgICAgbGlzdC1zdHlsZTogbm9uZTtcbi8vICAgfVxuXG4vLyAgIGxpIHtcbi8vICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCM2ZDc1ODRiZiwgMC43NSk7XG4vLyAgICAgcGFkZGluZzogMC41cmVtIDFyZW07XG4vLyAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogNTBweDtcbi8vICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiA1MHB4O1xuLy8gICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG5cbi8vICAgICAmOmhvdmVyIHtcbi8vICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNiNmNjMDA7XG4vLyAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbi8vICAgICAgIHN2ZyB7XG4vLyAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbi8vICAgICAgIH1cbi8vICAgICB9XG4vLyAgIH1cblxuLy8gICBhIHtcbi8vICAgICBjb2xvcjogJHdoaXRlO1xuLy8gICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4vLyAgIH1cblxuLy8gICBzdmcge1xuLy8gICAgIG1hcmdpbi1yaWdodDogMC40cmVtO1xuLy8gICAgIC8vIHBvc2l0aW9uOiByZWxhdGl2ZTtcbi8vICAgICAvLyB0b3A6IDFweDtcbi8vICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4ycyBlYXNlO1xuLy8gICAgIGRpc3BsYXk6IGlubGluZTtcbi8vICAgfVxuLy8gfVxuXG4uc3RlcHMtcm93IHtcbiAgcGFkZGluZzogNnJlbSAwIDRyZW07XG5cbiAgLnBhcmFncmFwaC10aXRsZSB7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxOCwgMTVweCk7XG4gICAgc3BhbiB7XG4gICAgICBjb2xvcjogJGNvbG9yLW1hZ2VudGE7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDIwLCAxNXB4KTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgfVxuICB9XG5cbiAgcCB7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxNCwgMTVweCk7XG4gIH1cblxuICAuc3RlcHMge1xuICAgICZfX2l0ZW0ge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgICBmbGV4LWZsb3c6IGNvbHVtbjtcblxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBmbGV4LWZsb3c6IHJvdztcbiAgICAgIH1cblxuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi1pbWFnZSB7XG4gICAgICAgIGZsZXg6IDEgMCAzMCU7XG4gICAgICAgIHBhZGRpbmc6IDAgNjAlIDAgMDtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgcGFkZGluZzogMCAxcmVtIDAgMnJlbTtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgdG9wOiAtMnJlbTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5zbGlkZS10by1idG4ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM5Y2ExYWI7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBwYWRkaW5nOiAwLjVyZW0gMXJlbTtcbiAgICBib3JkZXItcmFkaXVzOiA1MHB4O1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTQsIDE1cHgpO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxMiwgMTVweCk7XG4gICAgfVxuXG4gICAgc3ZnIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMC41cmVtO1xuICAgICAgLy8gcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgLy8gdG9wOiAxcHg7XG4gICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgfVxuICB9XG59XG5cbi5kdy1saWdodC1yb3cge1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCAjOWUxYzYyIDAlLCByZ2JhKDE1OCwgMjgsIDk4LCAwKSAxMDAlKSxcbiAgICBsaW5lYXItZ3JhZGllbnQoMGRlZywgIzllMWM2MiwgIzllMWM2MiksXG4gICAgbGluZWFyLWdyYWRpZW50KDBkZWcsICMwMDAwMDAsICMwMDAwMDApLFxuICAgIHVybChcIi4uL2Fzc2V0cy9idWRhcGVzdC9tZF9yZWxheC1jb250YWN0LWJnLmpwZ1wiKSwgI2Y1ZjZmNztcbiAgYmFja2dyb3VuZC1ibGVuZC1tb2RlOiBub3JtYWwsIG11bHRpcGx5LCBjb2xvciwgbm9ybWFsLCBub3JtYWw7XG5cbiAgLnBhcmFncmFwaC10aXRsZSBzcGFuIHtcbiAgICBjb2xvcjogJHdoaXRlO1xuICB9XG5cbiAgJl9faGVhZGVyIHAge1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gIH1cblxuICAudGV4dCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICB9XG5cbiAgLnVwY29tbWluZyBhIHtcbiAgICBjb2xvcjogJHdoaXRlO1xuICB9XG59XG5cbi5ob3RlbHMtcm93IHtcbiAgcGFkZGluZzogNnJlbSAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDlkYmRmO1xuXG4gICZfX2hlYWRlciB7XG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgfVxuXG4gICZfX2hlYWRlciArIC5ncmlkIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIC5jYXJvdXNlbC13cmFwcGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIC5ob3RlbHMtY2Fyb3VzZWwge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICZfX2l0ZW0ge1xuICAgICAgcGFkZGluZzogMnJlbTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDE1cHg7XG4gICAgICBib3gtc2hhZG93OiAwcHggMHB4IDEwcHggcmdiYSg2NCwgNjgsIDc3LCAwLjIpO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgfVxuXG4gICAgJl9faGVhZGVyIHtcbiAgICAgIC8vICAgbWluLWhlaWdodDogMTVzMHB4O1xuXG4gICAgICBwIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNCwgMTVweCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJl9fdGl0bGUge1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNiwgMTVweCk7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogaW5pdGlhbDtcbiAgICB9XG5cbiAgICAmX19nYWxsZXJ5IHtcbiAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnIgMWZyO1xuICAgICAgZ3JpZC1nYXA6IDFyZW07XG4gICAgICAvLyBtYXgtaGVpZ2h0OiA0OTBweDtcblxuICAgICAgYSB7XG4gICAgICAgIC8vIGhlaWdodDogMTAwcHg7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgIGhlaWdodDogMjMwcHg7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgaW1nIHtcbiAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmciAxZnI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLm93bC1uYXYge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcblxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgfVxuXG4gICAgICBidXR0b246aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIH1cblxuICAgICAgLm93bC1wcmV2IHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBsZWZ0OiAtMnJlbTtcbiAgICAgIH1cbiAgICAgIC5vd2wtbmV4dCB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgcmlnaHQ6IC0ycmVtO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5vd2wtc3RhZ2Uge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICB9XG4gICAgLm93bC1pdGVtIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4OiAxIDAgYXV0bztcbiAgICB9XG4gIH1cbn1cblxuLmJ1ZGFwZXN0LXJvdyB7XG4gIHBhZGRpbmc6IDZyZW0gMDtcblxuICAuZ3JpZCB7XG4gICAgZ3JpZC1nYXA6IDRyZW07XG4gIH1cblxuICAuY29udGFpbmVyIHtcbiAgICBtYXgtd2lkdGg6IDkwMHB4O1xuICB9XG5cbiAgLnRleHQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgfVxuXG4gIC5tb3JlLWJ0biB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLW1hZ2VudGE7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBwYWRkaW5nOiAwLjVyZW0gMXJlbTtcbiAgICBib3JkZXItcmFkaXVzOiA1MHB4O1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTQsIDE1cHgpO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTIsIDE1cHgpO1xuICAgIH1cblxuICAgIHN2ZyB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHRvcDogMXB4O1xuICAgIH1cbiAgfVxufVxuIiwiLnBhZ2UtdGhhbmt5b3Uge1xuICAubWFpbi1ncmlkIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG5cbiAgLmhlYWRlciB7XG4gICAgaGVpZ2h0OiByZW0tY2FsYygyMDApO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBoZWlnaHQ6IHJlbS1jYWxjKDM1Nik7XG4gICAgfVxuICAgIGltZyB7XG4gICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgIH1cbiAgfVxuXG4gIC5iYW5uZXItd3JhcHBlciB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBwYWRkaW5nOiAxMHJlbSAycmVtIDRyZW07XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gICAgZ2FwOiAycmVtO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNkOWRiZGY7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgLmJhbm5lci1sZWZ0IHtcbiAgICAgIG9yZGVyOiAyO1xuICAgIH1cbiAgICAuYmFubmVyLXJpZ2h0IHtcbiAgICAgIG9yZGVyOiAzO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIHBhZGRpbmc6IDRyZW0gOHJlbTtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDJmciAxZnI7XG5cbiAgICAgIC5iYW5uZXItbGVmdCB7XG4gICAgICAgIG9yZGVyOiAxO1xuICAgICAgfVxuXG4gICAgICAudGV4dCB7XG4gICAgICAgIG9yZGVyOiAyO1xuICAgICAgfVxuICAgIH1cblxuICAgIGgxIHtcbiAgICAgIGNvbG9yOiAjN2UxZjU0O1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMzIpO1xuICAgICAgaHlwaGVuczogYXV0bztcbiAgICAgIGxldHRlci1zcGFjaW5nOiAwLjAzZW07XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoMzc1IGRvd24pIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyNik7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KDMyMCBkb3duKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTgpO1xuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMzYpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC50ZXh0LWlubmVyIHAge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyMCk7XG4gICAgICBjb2xvcjogIzZkNzU4NDtcblxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDI0KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBidXR0b24ge1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICM5Y2ExYWI7XG4gICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDQpIHJlbS1jYWxjKDIwKTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDEwMHB4O1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cblxuICAgIC50ZXh0LWlubmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgIHBhZGRpbmc6IDJyZW07XG4gICAgICBib3JkZXItcmFkaXVzOiAxNXB4O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gICAgICBib3gtc2hhZG93OiAwcHggMHB4IDMwcHggcmdiYSg2NCwgNjgsIDc3LCAwLjI1KTtcbiAgICAgIGxlZnQ6IDJyZW07XG4gICAgICByaWdodDogMnJlbTtcblxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIHJpZ2h0OiBpbml0aWFsO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgICAgd2lkdGg6IHJlbS1jYWxjKDQ1MCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmJhbm5lci1oZWFkZXIgaDQge1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNik7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBjb2xvcjogIzQwNDQ0ZDtcbiAgICB9XG4gICAgLmJhbm5lci1jb250YWluZXIge1xuICAgICAgYm9yZGVyLXJhZGl1czogMTVweDtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogNTYuMjUlO1xuICAgICAgaGVpZ2h0OiAwO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAuYmFubmVyLWNvbnRhaW5lciBpbWcge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgfVxuICB9XG59XG5cbi50aGFua3lvdS1rYW1wYW55IHtcbiAgLmhlYWRlciBpbWcge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG4gIC50ZXh0LWlubmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgIC8vIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICBib3JkZXItcmFkaXVzOiAxNXB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUlICFpbXBvcnRhbnQ7XG4gICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIC8vIGhlaWdodDogcmVtLWNhbGMoNTAwKTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogY29sdW1uO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGxlZnQ6IDAgIWltcG9ydGFudDtcbiAgICBcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KDM3NSkge1xuICAgICAgICB3aWR0aDogcmVtLWNhbGMoNDUwKTtcbiAgICAgICAgb3ZlcmZsb3c6IGluaXRpYWw7XG4gICAgICAgIGxlZnQ6IDUwJSAhaW1wb3J0YW50O1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoMzc1IGRvd24pIHtcbiAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgLmJhbm5lci13cmFwcGVyIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KDM3NSBkb3duKSB7XG4gICAgICBwYWRkaW5nOiAxOHJlbSAycmVtIDRyZW0gIWltcG9ydGFudDtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSBkb3duKSB7XG4gICAgICBwYWRkaW5nOiAyOHJlbSAycmVtIDRyZW0gIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAuYmdpbWFnZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICB6LWluZGV4OiAtMTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgJi5tb2JpbCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoMzc1KSB7XG4gICAgICAmLm1vYmlsIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICAgICYuZGVza3RvcCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgICAgd2lkdGg6IHJlbS1jYWxjKDU4Mik7XG4gICAgfVxuICB9XG5cbiAgLnRleHQtaW5uZXIgcCxcbiAgaDEge1xuICAgIGNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcbiAgICBmb250LXdlaWdodDogNjAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICBoMSB7XG4gICAgZm9udC13ZWlnaHQ6IDgwMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgYnV0dG9uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzMwODZmICFpbXBvcnRhbnQ7XG4gIH1cbn1cbiIsIi5zaW5nbGUtY2FzZS1zdHVkeSB7XG4gIGgxIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogaW5pdGlhbDtcbiAgfVxuXG4gIGJsb2NrcXVvdGUgcCB7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygyMik7XG4gICAgY29sb3I6ICRjb2xvci1tYWRlbnRhLWxpbGEtMztcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cblxuICBibG9ja3F1b3RlIHtcbiAgICBwYWRkaW5nOiAwIDRyZW07XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICB0b3A6IDA7XG4gICAgICB3aWR0aDogNDBweDtcbiAgICAgIGhlaWdodDogNDBweDtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogNDBweCA0MHB4O1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjNhV1IwYUQwaU16RWlJR2hsYVdkb2REMGlNaklpSUhacFpYZENiM2c5SWpBZ01DQXpNU0F5TWlJZ1ptbHNiRDBpYm05dVpTSWdlRzFzYm5NOUltaDBkSEE2THk5M2QzY3Vkek11YjNKbkx6SXdNREF2YzNabklqNEtQSEJoZEdnZ2FXUTlJbFpsWTNSdmNpSWdaRDBpVFRFeExqRXpOVGtnTUM0MVREa3VNelE1TWlBNUxqZzRNREExVERrdU1qTTJNVFFnTVRBdU5EY3pOa2c1TGpnME1ETTNTREV5TGprd01qUldNakV1TVRBNU5VZ3hWamt1T0RFeE5qSk1NeTQ0TnpZM05pQXdMalZJTVRFdU1UTTFPVnBOTWpndU1qTXpOU0F3TGpWTU1qWXVORFEyT0NBNUxqZzRNREExVERJMkxqTXpNemdnTVRBdU5EY3pOa2d5Tmk0NU16aElNekJXTWpFdU1UQTVOVWd4T0M0d09UYzJWamt1T0RFeE5qSk1NakF1T1RjME5DQXdMalZJTWpndU1qTXpOVm9pSUhOMGNtOXJaVDBpSXpsRk1VTTJNaUl2UGdvOEwzTjJaejRLKTtcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDQwcHggNDBweDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUIzYVdSMGFEMGlNekVpSUdobGFXZG9kRDBpTWpJaUlIWnBaWGRDYjNnOUlqQWdNQ0F6TVNBeU1pSWdabWxzYkQwaWJtOXVaU0lnZUcxc2JuTTlJbWgwZEhBNkx5OTNkM2N1ZHpNdWIzSm5Mekl3TURBdmMzWm5JajRLUEhCaGRHZ2dhV1E5SWxabFkzUnZjaUlnWkQwaVRURTVMamcyTkRFZ01qRXVNVEE1TkV3eU1TNDJOVEE0SURFeExqY3lPVE5NTWpFdU56WXpPU0F4TVM0eE16VTRUREl4TGpFMU9UWWdNVEV1TVRNMU9Fd3hPQzR3T1RjMklERXhMakV6TlRoTU1UZ3VNRGszTmlBd0xqUTVPVGczTlV3ek1DQXdMalE1T1RnM05Fd3pNQ0F4TVM0M09UYzRUREkzTGpFeU16SWdNakV1TVRBNU5Fd3hPUzQ0TmpReElESXhMakV3T1RSYVRUSXVOelkyTlNBeU1TNHhNRGswVERRdU5UVXpNaUF4TVM0M01qa3pURFF1TmpZMk1pQXhNUzR4TXpVNFREUXVNRFl5SURFeExqRXpOVGhNTUM0NU9UazVPVGtnTVRFdU1UTTFPRXd3TGprNU9UazVPQ0F3TGpRNU9UZzNOMHd4TWk0NU1ESTBJREF1TkRrNU9EYzJUREV5TGprd01qUWdNVEV1TnprM09Fd3hNQzR3TWpVMklESXhMakV3T1RSTU1pNDNOalkxSURJeExqRXdPVFJhSWlCemRISnZhMlU5SWlNNVJURkROaklpTHo0S1BDOXpkbWMrQ2c9PSk7XG4gICAgfVxuICB9XG5cbiAgI2JhZ3VldHRlQm94LXNsaWRlciBpbWcge1xuICAgIG1heC13aWR0aDogNjUwcHggIWltcG9ydGFudDtcbiAgfVxufVxuXG4ucG9zdC10eXBlLWFyY2hpdmUtY2FzZS1zdHVkeSB7XG4gIC5tYWluLWNvbnRhaW5lciB7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gIH1cblxuICAubWFzb25yeS1pdGVtIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgd2lkdGg6IGNhbGMoMzMuMzMzMzMlIC0gMXJlbSk7XG4gICAgICBtYXJnaW46IDAgMC41cmVtIDFyZW07XG4gICAgfVxuICB9XG5cbiAgLmZvb3RlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLW1hZGVudGEtZGFyay1ncmF5LTE7XG4gIH1cbn1cbiIsIi5ibG9jay1pdGVtIHtcbiAgJi5hbGlnbmZ1bGwge1xuICAgIHdpZHRoOiAxMDB2dztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNTAlO1xuICAgIHJpZ2h0OiA1MCU7XG4gICAgbWFyZ2luLWxlZnQ6IC01MHZ3O1xuICAgIG1hcmdpbi1yaWdodDogLTUwdnc7XG4gIH1cbn1cbiIsIi5neWlrIHtcblxuICAgIC5hY2NvcmRpb24ge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItZ3JheS1iZy1zZWNvbmQ7XG4gICAgfVxuXG4gICAgLmFjY29yZGlvbi1pdGVtIHtcblxuICAgICAgICAmLmlzLWFjdGl2ZSAuYWNjb3JkaW9uLXRpdGxlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI2U2ZTZlNjtcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNlNmU2ZTY7XG4gICAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2U2ZTZlNjtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICAgICAgJi5pcy1hY3RpdmUgLmFjY29yZGlvbi1jb250ZW50IHtcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI2U2ZTZlNjtcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNlNmU2ZTY7XG4gICAgICAgICAgICBib3JkZXItdG9wOiAwO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlNmU2ZTY7XG4gICAgICAgIH1cbiAgICAgICAgJi5pcy1hY3RpdmUgLmFjY29yZGlvbi10aXRsZTo6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICctJztcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IC0wLjNyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuYWNjb3JkaW9uLXRpdGxlIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNSk7XG4gICAgICAgIGNvbG9yOiAkY29sb3ItcHVycGxlO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDNyZW07XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICAgICAgbGVmdDogMXJlbTtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgICBjb250ZW50OiAnKyc7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDQwKTtcbiAgICAgICAgICAgIHJpZ2h0OmluaXRpYWw7XG4gICAgICAgIH1cbiAgICB9XG59IiwiLnNsaWRlciB7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICAub3dsLXN0YWdlLW91dGVyIHtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgLy8gbWF4LXdpZHRoOiA3NTBweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgLm93bC1zdGFnZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICB9XG4gICAgXG4gICAgICAgIC5vd2wtaXRlbSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleDogMSAwIGF1dG87XG4gICAgICAgICAgICBoZWlnaHQ6IGluaXRpYWw7XG4gICAgICAgIH1cbiAgICB9XG5cblxuICAgIC5zbGlkZSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZmxvdzogY29sdW1uO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItZ3JheS1iZy1zZWNvbmQ7XG5cbiAgICAgICAgLmltYWdlIHtcbiAgICAgICAgICAgIG9yZGVyOjE7XG4gICAgICAgIH1cbiAgICAgICAgLnRleHQge1xuICAgICAgICAgICAgb3JkZXI6MjtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBmbGV4LWZsb3c6IHJvdztcbiAgICAgICAgICAgIC50ZXh0IHtcbiAgICAgICAgICAgICAgICBvcmRlcjoxO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmltYWdlIHtcbiAgICAgICAgICAgICAgICBvcmRlcjoyO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmltYWdlLFxuICAgICAgICAgICAgLnRleHQge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICB9XG5cblxuICAgICAgICAudGV4dCB7XG4gICAgICAgICAgICBwYWRkaW5nOiAxcmVtIDFyZW0gM3JlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5pbWFnZSB7XG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5vd2wtZG90cyB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICByaWdodDowO1xuXG4gICAgICAgIC5vd2wtZG90IHNwYW4ge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXB1cnBsZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5vd2wtZG90LmFjdGl2ZSBzcGFuIHtcbiAgICAgICAgICAgIHdpZHRoOiAxNHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAxNHB4O1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgdG9wOjJweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1tYWdlbnRhO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICY6aG92ZXIge1xuICAgICAgICAub3dsLW5hdiB7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5vd2wtbmF2IHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBtYXJnaW46MDtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAuMnMgZWFzZS1pbi1vdXQ7XG4gICAgICAgIGhlaWdodDogNDBweDtcbiAgICAgICAgdG9wOiAxMCU7XG4gICAgICAgIFxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgIH1cblxuICAgICAgICAmOmhvdmVyIFtjbGFzcyo9J293bC0nXSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItcHVycGxlO1xuICAgICAgICB9XG5cbiAgICAgICAgJiBbY2xhc3MqPSdvd2wtJ10ge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygzMCk7XG5cbiAgICAgICAgICAgIGk6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYyg0MCk7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICB0ZXh0LXNoYWRvdzogMCAwIDIwcHggcmdiYSgkYmxhY2ssIC42KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5vd2wtcHJldiB7XG4gICAgICAgICAgICBsZWZ0OiAxcmVtO1xuICAgICAgICB9XG4gICAgICAgIC5vd2wtbmV4dCB7XG4gICAgICAgICAgICByaWdodDogMXJlbTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuIiwiLmltYWdlLWxlZnQtY29udGFpbmVyIHtcbiAgICAud3AtYmxvY2stY29sdW1uOm50aC1jaGlsZCgxKSB7XG4gICAgICAgIGZsZXgtYmFzaXM6IDEwMCU7XG4gICAgICAgIG9yZGVyOjI7XG4gICAgfVxuXG4gICAgLndwLWJsb2NrLWNvbHVtbjpudGgtY2hpbGQoMikge1xuICAgICAgICBmbGV4LWJhc2lzOiAxMDAlO1xuICAgICAgICBvcmRlcjoxO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIC53cC1ibG9jay1jb2x1bW46bnRoLWNoaWxkKDEpIHtcbiAgICAgICAgICAgIGZsZXgtYmFzaXM6IDI1JTtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICAgIG9yZGVyOjE7XG4gICAgICAgIH1cblxuICAgICAgICAud3AtYmxvY2stY29sdW1uOm50aC1jaGlsZCgyKSB7XG4gICAgICAgICAgICBmbGV4LWJhc2lzOiA3NSU7XG4gICAgICAgICAgICBvcmRlcjoyO1xuICAgICAgICB9XG4gICAgfVxufSJdfQ== */
