/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
/* Document
   ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
  line-height: 1.15;
  /* 1 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
}

/* Sections
     ========================================================================== */
/**
   * Remove the margin in all browsers.
   */
body {
  margin: 0;
}

/**
   * Render the `main` element consistently in IE.
   */
main {
  display: block;
}

/**
   * Correct the font size and margin on `h1` elements within `section` and
   * `article` contexts in Chrome, Firefox, and Safari.
   */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/* Grouping content
     ========================================================================== */
/**
   * 1. Add the correct box sizing in Firefox.
   * 2. Show the overflow in Edge and IE.
   */
hr {
  box-sizing: content-box;
  /* 1 */
  height: 0;
  /* 1 */
  overflow: visible;
  /* 2 */
}

/**
   * 1. Correct the inheritance and scaling of font size in all browsers.
   * 2. Correct the odd `em` font sizing in all browsers.
   */
pre {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
}

/* Text-level semantics
     ========================================================================== */
/**
   * Remove the gray background on active links in IE 10.
   */
a {
  background-color: transparent;
}

/**
   * 1. Remove the bottom border in Chrome 57-
   * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
   */
abbr[title] {
  border-bottom: none;
  /* 1 */
  text-decoration: underline;
  /* 2 */
  text-decoration: underline dotted;
  /* 2 */
}

/**
   * Add the correct font weight in Chrome, Edge, and Safari.
   */
b,
strong {
  font-weight: bolder;
}

/**
   * 1. Correct the inheritance and scaling of font size in all browsers.
   * 2. Correct the odd `em` font sizing in all browsers.
   */
code,
kbd,
samp {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
}

/**
   * Add the correct font size in all browsers.
   */
small {
  font-size: 80%;
}

/**
   * Prevent `sub` and `sup` elements from affecting the line height in
   * all browsers.
   */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
     ========================================================================== */
/**
   * Remove the border on images inside links in IE 10.
   */
img {
  border-style: none;
}

/* Forms
     ========================================================================== */
/**
   * 1. Change the font styles in all browsers.
   * 2. Remove the margin in Firefox and Safari.
   */
button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  /* 1 */
  font-size: 100%;
  /* 1 */
  line-height: 1.15;
  /* 1 */
  margin: 0;
  /* 2 */
}

/**
   * Show the overflow in IE.
   * 1. Show the overflow in Edge.
   */
button,
input {
  /* 1 */
  overflow: visible;
}

/**
   * Remove the inheritance of text transform in Edge, Firefox, and IE.
   * 1. Remove the inheritance of text transform in Firefox.
   */
button,
select {
  /* 1 */
  text-transform: none;
}

/**
   * Correct the inability to style clickable types in iOS and Safari.
   */
button,
[type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button;
}

/**
   * Remove the inner border and padding in Firefox.
   */
button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
   * Restore the focus styles unset by the previous rule.
   */
button:-moz-focusring,
[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
   * Correct the padding in Firefox.
   */
fieldset {
  padding: 0.35em 0.75em 0.625em;
}

/**
   * 1. Correct the text wrapping in Edge and IE.
   * 2. Correct the color inheritance from `fieldset` elements in IE.
   * 3. Remove the padding so developers are not caught out when they zero out
   *    `fieldset` elements in all browsers.
   */
legend {
  box-sizing: border-box;
  /* 1 */
  color: inherit;
  /* 2 */
  display: table;
  /* 1 */
  max-width: 100%;
  /* 1 */
  padding: 0;
  /* 3 */
  white-space: normal;
  /* 1 */
}

/**
   * Add the correct vertical alignment in Chrome, Firefox, and Opera.
   */
progress {
  vertical-align: baseline;
}

/**
   * Remove the default vertical scrollbar in IE 10+.
   */
textarea {
  overflow: auto;
}

/**
   * 1. Add the correct box sizing in IE 10.
   * 2. Remove the padding in IE 10.
   */
[type=checkbox],
[type=radio] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */
}

/**
   * Correct the cursor style of increment and decrement buttons in Chrome.
   */
[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}

/**
   * 1. Correct the odd appearance in Chrome and Safari.
   * 2. Correct the outline style in Safari.
   */
[type=search] {
  -webkit-appearance: textfield;
  /* 1 */
  outline-offset: -2px;
  /* 2 */
}

/**
   * Remove the inner padding in Chrome and Safari on macOS.
   */
[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
   * 1. Correct the inability to style clickable types in iOS and Safari.
   * 2. Change font properties to `inherit` in Safari.
   */
::-webkit-file-upload-button {
  -webkit-appearance: button;
  /* 1 */
  font: inherit;
  /* 2 */
}

/* Interactive
     ========================================================================== */
/*
   * Add the correct display in Edge, IE 10+, and Firefox.
   */
details {
  display: block;
}

/*
   * Add the correct display in all browsers.
   */
summary {
  display: list-item;
}

/* Misc
     ========================================================================== */
/**
   * Add the correct display in IE 10+.
   */
template {
  display: none;
}

/**
   * Add the correct display in IE 10.
   */
[hidden] {
  display: none;
}

@font-face {
  font-family: "Albert";
  src: url("../fonts/AlbertSans-Regular.woff2") format("woff2"), url("../fonts/AlbertSans-Regular.woff") format("woff");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Albert";
  src: url("../fonts/AlbertSans-Medium.woff2") format("woff2"), url("../fonts/AlbertSans-Medium.woff") format("woff");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "denk_one";
  src: url("../fonts/denkone-regular-webfont.woff2") format("woff2"), url("../fonts/denkone-regular-webfont.woff") format("woff");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
body.compensate-for-scrollbar {
  overflow: hidden;
}

.fancybox-active {
  height: auto;
}

.fancybox-is-hidden {
  left: -9999px;
  margin: 0;
  position: absolute !important;
  top: -9999px;
  visibility: hidden;
}

.fancybox-container {
  -webkit-backface-visibility: hidden;
  height: 100%;
  left: 0;
  outline: none;
  position: fixed;
  -webkit-tap-highlight-color: transparent;
  top: 0;
  -ms-touch-action: manipulation;
  touch-action: manipulation;
  transform: translateZ(0);
  width: 100%;
  z-index: 99992;
}

.fancybox-container * {
  box-sizing: border-box;
}

.fancybox-outer,
.fancybox-inner,
.fancybox-bg,
.fancybox-stage {
  bottom: 0;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
}

.fancybox-outer {
  -webkit-overflow-scrolling: touch;
  overflow-y: auto;
}

.fancybox-bg {
  background: rgb(30, 30, 30);
  opacity: 0;
  transition-duration: inherit;
  transition-property: opacity;
  transition-timing-function: cubic-bezier(0.47, 0, 0.74, 0.71);
}

.fancybox-is-open .fancybox-bg {
  opacity: 0.9;
  transition-timing-function: cubic-bezier(0.22, 0.61, 0.36, 1);
}

.fancybox-infobar,
.fancybox-toolbar,
.fancybox-caption,
.fancybox-navigation .fancybox-button {
  direction: ltr;
  opacity: 0;
  position: absolute;
  transition: opacity 0.25s ease, visibility 0s ease 0.25s;
  visibility: hidden;
  z-index: 99997;
}

.fancybox-show-infobar .fancybox-infobar,
.fancybox-show-toolbar .fancybox-toolbar,
.fancybox-show-caption .fancybox-caption,
.fancybox-show-nav .fancybox-navigation .fancybox-button {
  opacity: 1;
  transition: opacity 0.25s ease 0s, visibility 0s ease 0s;
  visibility: visible;
}

.fancybox-infobar {
  color: #ccc;
  font-size: 13px;
  -webkit-font-smoothing: subpixel-antialiased;
  height: 44px;
  left: 0;
  line-height: 44px;
  min-width: 44px;
  mix-blend-mode: difference;
  padding: 0 10px;
  pointer-events: none;
  top: 0;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.fancybox-toolbar {
  right: 0;
  top: 0;
}

.fancybox-stage {
  direction: ltr;
  overflow: visible;
  transform: translateZ(0);
  z-index: 99994;
}

.fancybox-is-open .fancybox-stage {
  overflow: hidden;
}

.fancybox-slide {
  -webkit-backface-visibility: hidden;
  /* Using without prefix would break IE11 */
  display: none;
  height: 100%;
  left: 0;
  outline: none;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  padding: 44px;
  position: absolute;
  text-align: center;
  top: 0;
  transition-property: transform, opacity;
  white-space: normal;
  width: 100%;
  z-index: 99994;
}

.fancybox-slide::before {
  content: "";
  display: inline-block;
  font-size: 0;
  height: 100%;
  vertical-align: middle;
  width: 0;
}

.fancybox-is-sliding .fancybox-slide,
.fancybox-slide--previous,
.fancybox-slide--current,
.fancybox-slide--next {
  display: block;
}

.fancybox-slide--image {
  overflow: hidden;
  padding: 44px 0;
}

.fancybox-slide--image::before {
  display: none;
}

.fancybox-slide--html {
  padding: 6px;
}

.fancybox-content {
  background: #fff;
  display: inline-block;
  margin: 0;
  max-width: 100%;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  padding: 44px;
  position: relative;
  text-align: left;
  vertical-align: middle;
}

.fancybox-slide--image .fancybox-content {
  animation-timing-function: cubic-bezier(0.5, 0, 0.14, 1);
  -webkit-backface-visibility: hidden;
  background: transparent;
  background-repeat: no-repeat;
  background-size: 100% 100%;
  left: 0;
  max-width: none;
  overflow: visible;
  padding: 0;
  position: absolute;
  top: 0;
  -ms-transform-origin: top left;
  transform-origin: top left;
  transition-property: transform, opacity;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  z-index: 99995;
}

.fancybox-can-zoomOut .fancybox-content {
  cursor: zoom-out;
}

.fancybox-can-zoomIn .fancybox-content {
  cursor: zoom-in;
}

.fancybox-can-swipe .fancybox-content,
.fancybox-can-pan .fancybox-content {
  cursor: -webkit-grab;
  cursor: grab;
}

.fancybox-is-grabbing .fancybox-content {
  cursor: -webkit-grabbing;
  cursor: grabbing;
}

.fancybox-container [data-selectable=true] {
  cursor: text;
}

.fancybox-image,
.fancybox-spaceball {
  background: transparent;
  border: 0;
  height: 100%;
  left: 0;
  margin: 0;
  max-height: none;
  max-width: none;
  padding: 0;
  position: absolute;
  top: 0;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  width: 100%;
}

.fancybox-spaceball {
  z-index: 1;
}

.fancybox-slide--video .fancybox-content,
.fancybox-slide--map .fancybox-content,
.fancybox-slide--pdf .fancybox-content,
.fancybox-slide--iframe .fancybox-content {
  height: 100%;
  overflow: visible;
  padding: 0;
  width: 100%;
}

.fancybox-slide--video .fancybox-content {
  background: #000;
}

.fancybox-slide--map .fancybox-content {
  background: #e5e3df;
}

.fancybox-slide--iframe .fancybox-content {
  background: #fff;
}

.fancybox-video,
.fancybox-iframe {
  background: transparent;
  border: 0;
  display: block;
  height: 100%;
  margin: 0;
  overflow: hidden;
  padding: 0;
  width: 100%;
}

/* Fix iOS */
.fancybox-iframe {
  left: 0;
  position: absolute;
  top: 0;
}

.fancybox-error {
  background: #fff;
  cursor: default;
  max-width: 400px;
  padding: 40px;
  width: 100%;
}

.fancybox-error p {
  color: #444;
  font-size: 16px;
  line-height: 20px;
  margin: 0;
  padding: 0;
}

/* Buttons */
.fancybox-button {
  background: rgba(30, 30, 30, 0.6);
  border: 0;
  border-radius: 0;
  box-shadow: none;
  cursor: pointer;
  display: inline-block;
  height: 44px;
  margin: 0;
  padding: 10px;
  position: relative;
  transition: color 0.2s;
  vertical-align: top;
  visibility: inherit;
  width: 44px;
}

.fancybox-button,
.fancybox-button:visited,
.fancybox-button:link {
  color: #ccc;
}

.fancybox-button:hover {
  color: #fff;
}

.fancybox-button:focus {
  outline: none;
}

.fancybox-button.fancybox-focus {
  outline: 1px dotted;
}

.fancybox-button[disabled],
.fancybox-button[disabled]:hover {
  color: #888;
  cursor: default;
  outline: none;
}

/* Fix IE11 */
.fancybox-button div {
  height: 100%;
}

.fancybox-button svg {
  display: block;
  height: 100%;
  overflow: visible;
  position: relative;
  width: 100%;
}

.fancybox-button svg path {
  fill: currentColor;
  stroke-width: 0;
}

.fancybox-button--play svg:nth-child(2),
.fancybox-button--fsenter svg:nth-child(2) {
  display: none;
}

.fancybox-button--pause svg:nth-child(1),
.fancybox-button--fsexit svg:nth-child(1) {
  display: none;
}

.fancybox-progress {
  background: #ff5268;
  height: 2px;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  -ms-transform: scaleX(0);
  transform: scaleX(0);
  -ms-transform-origin: 0;
  transform-origin: 0;
  transition-property: transform;
  transition-timing-function: linear;
  z-index: 99998;
}

/* Close button on the top right corner of html content */
.fancybox-close-small {
  background: transparent;
  border: 0;
  border-radius: 0;
  color: #ccc;
  cursor: pointer;
  opacity: 0.8;
  padding: 8px;
  position: absolute;
  right: -12px;
  top: -44px;
  z-index: 401;
}

.fancybox-close-small:hover {
  color: #fff;
  opacity: 1;
}

.fancybox-slide--html .fancybox-close-small {
  color: currentColor;
  padding: 10px;
  right: 0;
  top: 0;
}

.fancybox-slide--image.fancybox-is-scaling .fancybox-content {
  overflow: hidden;
}

.fancybox-is-scaling .fancybox-close-small,
.fancybox-is-zoomable.fancybox-can-pan .fancybox-close-small {
  display: none;
}

/* Navigation arrows */
.fancybox-navigation .fancybox-button {
  background-clip: content-box;
  height: 100px;
  opacity: 0;
  position: absolute;
  top: calc(50% - 50px);
  width: 70px;
}

.fancybox-navigation .fancybox-button div {
  padding: 7px;
}

.fancybox-navigation .fancybox-button--arrow_left {
  left: 0;
  left: env(safe-area-inset-left);
  padding: 31px 26px 31px 6px;
}

.fancybox-navigation .fancybox-button--arrow_right {
  padding: 31px 6px 31px 26px;
  right: 0;
  right: env(safe-area-inset-right);
}

/* Caption */
.fancybox-caption {
  background: linear-gradient(to top, rgba(0, 0, 0, 0.85) 0%, rgba(0, 0, 0, 0.3) 50%, rgba(0, 0, 0, 0.15) 65%, rgba(0, 0, 0, 0.075) 75.5%, rgba(0, 0, 0, 0.037) 82.85%, rgba(0, 0, 0, 0.019) 88%, rgba(0, 0, 0, 0) 100%);
  bottom: 0;
  color: #eee;
  font-size: 14px;
  font-weight: 400;
  left: 0;
  line-height: 1.5;
  padding: 75px 44px 25px 44px;
  pointer-events: none;
  right: 0;
  text-align: center;
  z-index: 99996;
}

@supports (padding: max(0px)) {
  .fancybox-caption {
    padding: 75px max(44px, env(safe-area-inset-right)) max(25px, env(safe-area-inset-bottom)) max(44px, env(safe-area-inset-left));
  }
}
.fancybox-caption--separate {
  margin-top: -50px;
}

.fancybox-caption__body {
  max-height: 50vh;
  overflow: auto;
  pointer-events: all;
}

.fancybox-caption a,
.fancybox-caption a:link,
.fancybox-caption a:visited {
  color: #ccc;
  text-decoration: none;
}

.fancybox-caption a:hover {
  color: #fff;
  text-decoration: underline;
}

/* Loading indicator */
.fancybox-loading {
  animation: fancybox-rotate 1s linear infinite;
  background: transparent;
  border: 4px solid #888;
  border-bottom-color: #fff;
  border-radius: 50%;
  height: 50px;
  left: 50%;
  margin: -25px 0 0 -25px;
  opacity: 0.7;
  padding: 0;
  position: absolute;
  top: 50%;
  width: 50px;
  z-index: 99999;
}

@keyframes fancybox-rotate {
  100% {
    transform: rotate(360deg);
  }
}
/* Transition effects */
.fancybox-animated {
  transition-timing-function: cubic-bezier(0, 0, 0.25, 1);
}

/* transitionEffect: slide */
.fancybox-fx-slide.fancybox-slide--previous {
  opacity: 0;
  transform: translate3d(-100%, 0, 0);
}

.fancybox-fx-slide.fancybox-slide--next {
  opacity: 0;
  transform: translate3d(100%, 0, 0);
}

.fancybox-fx-slide.fancybox-slide--current {
  opacity: 1;
  transform: translate3d(0, 0, 0);
}

/* transitionEffect: fade */
.fancybox-fx-fade.fancybox-slide--previous,
.fancybox-fx-fade.fancybox-slide--next {
  opacity: 0;
  transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
}

.fancybox-fx-fade.fancybox-slide--current {
  opacity: 1;
}

/* transitionEffect: zoom-in-out */
.fancybox-fx-zoom-in-out.fancybox-slide--previous {
  opacity: 0;
  transform: scale3d(1.5, 1.5, 1.5);
}

.fancybox-fx-zoom-in-out.fancybox-slide--next {
  opacity: 0;
  transform: scale3d(0.5, 0.5, 0.5);
}

.fancybox-fx-zoom-in-out.fancybox-slide--current {
  opacity: 1;
  transform: scale3d(1, 1, 1);
}

/* transitionEffect: rotate */
.fancybox-fx-rotate.fancybox-slide--previous {
  opacity: 0;
  -ms-transform: rotate(-360deg);
  transform: rotate(-360deg);
}

.fancybox-fx-rotate.fancybox-slide--next {
  opacity: 0;
  -ms-transform: rotate(360deg);
  transform: rotate(360deg);
}

.fancybox-fx-rotate.fancybox-slide--current {
  opacity: 1;
  -ms-transform: rotate(0deg);
  transform: rotate(0deg);
}

/* transitionEffect: circular */
.fancybox-fx-circular.fancybox-slide--previous {
  opacity: 0;
  transform: scale3d(0, 0, 0) translate3d(-100%, 0, 0);
}

.fancybox-fx-circular.fancybox-slide--next {
  opacity: 0;
  transform: scale3d(0, 0, 0) translate3d(100%, 0, 0);
}

.fancybox-fx-circular.fancybox-slide--current {
  opacity: 1;
  transform: scale3d(1, 1, 1) translate3d(0, 0, 0);
}

/* transitionEffect: tube */
.fancybox-fx-tube.fancybox-slide--previous {
  transform: translate3d(-100%, 0, 0) scale(0.1) skew(-10deg);
}

.fancybox-fx-tube.fancybox-slide--next {
  transform: translate3d(100%, 0, 0) scale(0.1) skew(10deg);
}

.fancybox-fx-tube.fancybox-slide--current {
  transform: translate3d(0, 0, 0) scale(1);
}

/* Styling for Small-Screen Devices */
@media all and (max-height: 576px) {
  .fancybox-slide {
    padding-left: 6px;
    padding-right: 6px;
  }
  .fancybox-slide--image {
    padding: 6px 0;
  }
  .fancybox-close-small {
    right: -6px;
  }
  .fancybox-slide--image .fancybox-close-small {
    background: #4e4e4e;
    color: #f2f4f6;
    height: 36px;
    opacity: 1;
    padding: 6px;
    right: 0;
    top: 0;
    width: 36px;
  }
  .fancybox-caption {
    padding-left: 12px;
    padding-right: 12px;
  }
  @supports (padding: max(0px)) {
    .fancybox-caption {
      padding-left: max(12px, env(safe-area-inset-left));
      padding-right: max(12px, env(safe-area-inset-right));
    }
  }
}
/* Share */
.fancybox-share {
  background: #f4f4f4;
  border-radius: 3px;
  max-width: 90%;
  padding: 30px;
  text-align: center;
}

.fancybox-share h1 {
  color: #222;
  font-size: 35px;
  font-weight: 700;
  margin: 0 0 20px 0;
}

.fancybox-share p {
  margin: 0;
  padding: 0;
}

.fancybox-share__button {
  border: 0;
  border-radius: 3px;
  display: inline-block;
  font-size: 14px;
  font-weight: 700;
  line-height: 40px;
  margin: 0 5px 10px 5px;
  min-width: 130px;
  padding: 0 15px;
  text-decoration: none;
  transition: all 0.2s;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  white-space: nowrap;
}

.fancybox-share__button:visited,
.fancybox-share__button:link {
  color: #fff;
}

.fancybox-share__button:hover {
  text-decoration: none;
}

.fancybox-share__button--fb {
  background: #3b5998;
}

.fancybox-share__button--fb:hover {
  background: #344e86;
}

.fancybox-share__button--pt {
  background: #bd081d;
}

.fancybox-share__button--pt:hover {
  background: #aa0719;
}

.fancybox-share__button--tw {
  background: #1da1f2;
}

.fancybox-share__button--tw:hover {
  background: #0d95e8;
}

.fancybox-share__button svg {
  height: 25px;
  margin-right: 7px;
  position: relative;
  top: -1px;
  vertical-align: middle;
  width: 25px;
}

.fancybox-share__button svg path {
  fill: #fff;
}

.fancybox-share__input {
  background: transparent;
  border: 0;
  border-bottom: 1px solid #d7d7d7;
  border-radius: 0;
  color: #5d5b5b;
  font-size: 14px;
  margin: 10px 0 0 0;
  outline: none;
  padding: 10px 15px;
  width: 100%;
}

/* Thumbs */
.fancybox-thumbs {
  background: #ddd;
  bottom: 0;
  display: none;
  margin: 0;
  -webkit-overflow-scrolling: touch;
  -ms-overflow-style: -ms-autohiding-scrollbar;
  padding: 2px 2px 4px 2px;
  position: absolute;
  right: 0;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  top: 0;
  width: 212px;
  z-index: 99995;
}

.fancybox-thumbs-x {
  overflow-x: auto;
  overflow-y: hidden;
}

.fancybox-show-thumbs .fancybox-thumbs {
  display: block;
}

.fancybox-show-thumbs .fancybox-inner {
  right: 212px;
}

.fancybox-thumbs__list {
  font-size: 0;
  height: 100%;
  list-style: none;
  margin: 0;
  overflow-x: hidden;
  overflow-y: auto;
  padding: 0;
  position: absolute;
  position: relative;
  white-space: nowrap;
  width: 100%;
}

.fancybox-thumbs-x .fancybox-thumbs__list {
  overflow: hidden;
}

.fancybox-thumbs-y .fancybox-thumbs__list::-webkit-scrollbar {
  width: 7px;
}

.fancybox-thumbs-y .fancybox-thumbs__list::-webkit-scrollbar-track {
  background: #fff;
  border-radius: 10px;
  box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);
}

.fancybox-thumbs-y .fancybox-thumbs__list::-webkit-scrollbar-thumb {
  background: #2a2a2a;
  border-radius: 10px;
}

.fancybox-thumbs__list a {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  background-color: rgba(0, 0, 0, 0.1);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  cursor: pointer;
  float: left;
  height: 75px;
  margin: 2px;
  max-height: calc(100% - 8px);
  max-width: calc(50% - 4px);
  outline: none;
  overflow: hidden;
  padding: 0;
  position: relative;
  -webkit-tap-highlight-color: transparent;
  width: 100px;
}

.fancybox-thumbs__list a::before {
  border: 6px solid #ff5268;
  bottom: 0;
  content: "";
  left: 0;
  opacity: 0;
  position: absolute;
  right: 0;
  top: 0;
  transition: all 0.2s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  z-index: 99991;
}

.fancybox-thumbs__list a:focus::before {
  opacity: 0.5;
}

.fancybox-thumbs__list a.fancybox-thumbs-active::before {
  opacity: 1;
}

/* Styling for Small-Screen Devices */
@media all and (max-width: 576px) {
  .fancybox-thumbs {
    width: 110px;
  }
  .fancybox-show-thumbs .fancybox-inner {
    right: 110px;
  }
  .fancybox-thumbs__list a {
    max-width: calc(100% - 10px);
  }
}
/**
 * Swiper 14.0.1
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * https://swiperjs.com
 *
 * Copyright 2014-2026 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: June 29, 2026
 */
:root {
  --swiper-theme-color: #007aff;
}

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

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

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

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

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

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

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

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

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

.swiper-autoheight,
.swiper-autoheight .swiper-slide {
  height: auto;
}

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

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

.swiper-3d.swiper-css-mode .swiper-wrapper {
  perspective: 1200px;
}

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

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

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

.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-bottom,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top {
  height: 100%;
  left: 0;
  pointer-events: none;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 10;
}
.swiper-3d .swiper-slide-shadow {
  background: rgba(0, 0, 0, 0.1490196078);
}
.swiper-3d .swiper-slide-shadow-left {
  background-image: linear-gradient(270deg, rgba(0, 0, 0, 0.5019607843), rgba(0, 0, 0, 0));
}
.swiper-3d .swiper-slide-shadow-right {
  background-image: linear-gradient(90deg, rgba(0, 0, 0, 0.5019607843), rgba(0, 0, 0, 0));
}
.swiper-3d .swiper-slide-shadow-top {
  background-image: linear-gradient(0deg, rgba(0, 0, 0, 0.5019607843), rgba(0, 0, 0, 0));
}
.swiper-3d .swiper-slide-shadow-bottom {
  background-image: linear-gradient(180deg, rgba(0, 0, 0, 0.5019607843), rgba(0, 0, 0, 0));
}

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

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

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

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

@keyframes swiper-preloader-spin {
  0% {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(1turn);
  }
}
.swiper-virtual .swiper-slide {
  -webkit-backface-visibility: hidden;
  transform: translateZ(0);
}

.swiper-virtual.swiper-css-mode .swiper-wrapper:after {
  content: "";
  left: 0;
  pointer-events: none;
  position: absolute;
  top: 0;
}

.swiper-virtual.swiper-css-mode.swiper-horizontal .swiper-wrapper:after {
  height: 1px;
  width: var(--swiper-virtual-size);
}

.swiper-virtual.swiper-css-mode.swiper-vertical .swiper-wrapper:after {
  height: var(--swiper-virtual-size);
  width: 1px;
}

:root {
  --swiper-navigation-size: 44px;
}

.swiper-button-next,
.swiper-button-prev {
  align-items: center;
  color: var(--swiper-navigation-color, var(--swiper-theme-color));
  cursor: pointer;
  display: flex;
  height: var(--swiper-navigation-size);
  justify-content: center;
  position: absolute;
  width: var(--swiper-navigation-size);
  z-index: 10;
}
.swiper-button-next.swiper-button-disabled,
.swiper-button-prev.swiper-button-disabled {
  cursor: auto;
  opacity: 0.35;
  pointer-events: none;
}
.swiper-button-next.swiper-button-hidden,
.swiper-button-prev.swiper-button-hidden {
  cursor: auto;
  opacity: 0;
  pointer-events: none;
}
.swiper-navigation-disabled .swiper-button-next,
.swiper-navigation-disabled .swiper-button-prev {
  display: none !important;
}
.swiper-button-next ::slotted(svg),
.swiper-button-next svg,
.swiper-button-prev ::slotted(svg),
.swiper-button-prev svg {
  height: 100%;
  object-fit: contain;
  transform-origin: center;
  width: 100%;
  fill: currentColor;
  pointer-events: none;
}

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

.swiper-button-next,
.swiper-button-prev {
  margin-top: calc(0px - var(--swiper-navigation-size) / 2);
  top: var(--swiper-navigation-top-offset, 50%);
}

.swiper-button-prev {
  left: var(--swiper-navigation-sides-offset, 4px);
  right: auto;
}
.swiper-button-prev .swiper-navigation-icon,
.swiper-button-prev ::slotted(.swiper-navigation-icon) {
  transform: rotate(180deg);
}

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

.swiper-horizontal .swiper-button-next,
.swiper-horizontal .swiper-button-prev,
.swiper-horizontal ~ .swiper-button-next,
.swiper-horizontal ~ .swiper-button-prev {
  margin-left: 0;
  margin-top: calc(0px - var(--swiper-navigation-size) / 2);
  top: var(--swiper-navigation-top-offset, 50%);
}
.swiper-horizontal.swiper-rtl .swiper-button-next, .swiper-horizontal.swiper-rtl ~ .swiper-button-next, .swiper-horizontal ~ .swiper-button-prev,
.swiper-horizontal .swiper-button-prev {
  left: var(--swiper-navigation-sides-offset, 4px);
  right: auto;
}
.swiper-horizontal.swiper-rtl .swiper-button-prev, .swiper-horizontal.swiper-rtl ~ .swiper-button-prev, .swiper-horizontal ~ .swiper-button-next,
.swiper-horizontal .swiper-button-next {
  left: auto;
  right: var(--swiper-navigation-sides-offset, 4px);
}
.swiper-horizontal.swiper-rtl .swiper-button-next .swiper-navigation-icon,
.swiper-horizontal.swiper-rtl .swiper-button-next ::slotted(.swiper-navigation-icon), .swiper-horizontal.swiper-rtl ~ .swiper-button-next .swiper-navigation-icon,
.swiper-horizontal.swiper-rtl ~ .swiper-button-next ::slotted(.swiper-navigation-icon), .swiper-horizontal ~ .swiper-button-prev .swiper-navigation-icon,
.swiper-horizontal ~ .swiper-button-prev ::slotted(.swiper-navigation-icon),
.swiper-horizontal .swiper-button-prev .swiper-navigation-icon,
.swiper-horizontal .swiper-button-prev ::slotted(.swiper-navigation-icon) {
  transform: rotate(180deg);
}
.swiper-horizontal.swiper-rtl .swiper-button-prev .swiper-navigation-icon,
.swiper-horizontal.swiper-rtl .swiper-button-prev ::slotted(.swiper-navigation-icon), .swiper-horizontal.swiper-rtl ~ .swiper-button-prev .swiper-navigation-icon,
.swiper-horizontal.swiper-rtl ~ .swiper-button-prev ::slotted(.swiper-navigation-icon) {
  transform: rotate(0deg);
}

.swiper-vertical .swiper-button-next,
.swiper-vertical .swiper-button-prev,
.swiper-vertical ~ .swiper-button-next,
.swiper-vertical ~ .swiper-button-prev {
  left: var(--swiper-navigation-top-offset, 50%);
  margin-left: calc(0px - var(--swiper-navigation-size) / 2);
  margin-top: 0;
  right: auto;
}
.swiper-vertical .swiper-button-prev,
.swiper-vertical ~ .swiper-button-prev {
  bottom: auto;
  top: var(--swiper-navigation-sides-offset, 4px);
}
.swiper-vertical .swiper-button-prev .swiper-navigation-icon,
.swiper-vertical .swiper-button-prev ::slotted(.swiper-navigation-icon),
.swiper-vertical ~ .swiper-button-prev .swiper-navigation-icon,
.swiper-vertical ~ .swiper-button-prev ::slotted(.swiper-navigation-icon) {
  transform: rotate(-90deg);
}
.swiper-vertical .swiper-button-next,
.swiper-vertical ~ .swiper-button-next {
  bottom: var(--swiper-navigation-sides-offset, 4px);
  top: auto;
}
.swiper-vertical .swiper-button-next .swiper-navigation-icon,
.swiper-vertical .swiper-button-next ::slotted(.swiper-navigation-icon),
.swiper-vertical ~ .swiper-button-next .swiper-navigation-icon,
.swiper-vertical ~ .swiper-button-next ::slotted(.swiper-navigation-icon) {
  transform: rotate(90deg);
}

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

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

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

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

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

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

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

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

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

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

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

.swiper-scrollbar {
  background: var(--swiper-scrollbar-bg-color, rgba(0, 0, 0, 0.1019607843));
  border-radius: var(--swiper-scrollbar-border-radius, 10px);
  position: relative;
  touch-action: none;
}
.swiper-scrollbar.swiper-scrollbar-disabled, .swiper-scrollbar-disabled > .swiper-scrollbar {
  display: none !important;
}
.swiper-scrollbar.swiper-scrollbar-horizontal, .swiper-horizontal > .swiper-scrollbar {
  bottom: var(--swiper-scrollbar-bottom, 4px);
  height: var(--swiper-scrollbar-size, 4px);
  left: var(--swiper-scrollbar-sides-offset, 1%);
  position: absolute;
  top: var(--swiper-scrollbar-top, auto);
  width: calc(100% - var(--swiper-scrollbar-sides-offset, 1%) * 2);
  z-index: 50;
}
.swiper-scrollbar.swiper-scrollbar-vertical, .swiper-vertical > .swiper-scrollbar {
  height: calc(100% - var(--swiper-scrollbar-sides-offset, 1%) * 2);
  left: var(--swiper-scrollbar-left, auto);
  position: absolute;
  right: var(--swiper-scrollbar-right, 4px);
  top: var(--swiper-scrollbar-sides-offset, 1%);
  width: var(--swiper-scrollbar-size, 4px);
  z-index: 50;
}

.swiper-scrollbar-drag {
  background: var(--swiper-scrollbar-drag-bg-color, rgba(0, 0, 0, 0.5019607843));
  border-radius: var(--swiper-scrollbar-border-radius, 10px);
  height: 100%;
  left: 0;
  position: relative;
  top: 0;
  width: 100%;
}

.swiper-scrollbar-cursor-drag {
  cursor: move;
}

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

.swiper-zoom-container {
  align-items: center;
  display: flex;
  height: 100%;
  justify-content: center;
  text-align: center;
  width: 100%;
}
.swiper-zoom-container > canvas,
.swiper-zoom-container > img,
.swiper-zoom-container > svg {
  max-height: 100%;
  max-width: 100%;
  object-fit: contain;
}

.swiper-slide-zoomed {
  cursor: move;
  touch-action: none;
}

.swiper .swiper-notification {
  left: 0;
  opacity: 0;
  pointer-events: none;
  position: absolute;
  top: 0;
  z-index: -1000;
}

.swiper-free-mode > .swiper-wrapper {
  margin: 0 auto;
  transition-timing-function: ease-out;
}

.swiper-grid > .swiper-wrapper {
  flex-wrap: wrap;
}

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

.swiper-fade.swiper-free-mode .swiper-slide {
  transition-timing-function: ease-out;
}
.swiper-fade .swiper-slide {
  pointer-events: none;
  transition-property: opacity;
}
.swiper-fade .swiper-slide .swiper-slide {
  pointer-events: none;
}
.swiper-fade .swiper-slide-active {
  pointer-events: auto;
}
.swiper-fade .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}

.swiper.swiper-cube {
  overflow: visible;
}

.swiper-cube .swiper-slide {
  backface-visibility: hidden;
  height: 100%;
  pointer-events: none;
  transform-origin: 0 0;
  visibility: hidden;
  width: 100%;
  z-index: 1;
}
.swiper-cube .swiper-slide .swiper-slide {
  pointer-events: none;
}
.swiper-cube.swiper-rtl .swiper-slide {
  transform-origin: 100% 0;
}
.swiper-cube .swiper-slide-active, .swiper-cube .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}
.swiper-cube .swiper-slide-active,
.swiper-cube .swiper-slide-next,
.swiper-cube .swiper-slide-prev {
  pointer-events: auto;
  visibility: visible;
}
.swiper-cube .swiper-cube-shadow {
  bottom: 0;
  height: 100%;
  left: 0;
  opacity: 0.6;
  position: absolute;
  width: 100%;
  z-index: 0;
}
.swiper-cube .swiper-cube-shadow:before {
  background: #000;
  bottom: 0;
  content: "";
  filter: blur(50px);
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
}

.swiper-cube .swiper-slide-next + .swiper-slide {
  pointer-events: auto;
  visibility: visible;
}

.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-bottom,
.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-left,
.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-right,
.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-top {
  backface-visibility: hidden;
  z-index: 0;
}

.swiper.swiper-flip {
  overflow: visible;
}

.swiper-flip .swiper-slide {
  backface-visibility: hidden;
  pointer-events: none;
  z-index: 1;
}
.swiper-flip .swiper-slide .swiper-slide {
  pointer-events: none;
}
.swiper-flip .swiper-slide-active, .swiper-flip .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}

.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-bottom,
.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-left,
.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-right,
.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-top {
  backface-visibility: hidden;
  z-index: 0;
}

.swiper-creative .swiper-slide {
  backface-visibility: hidden;
  overflow: hidden;
  transition-property: transform, opacity, height;
}

.swiper.swiper-cards {
  overflow: visible;
}

.swiper-cards .swiper-slide {
  backface-visibility: hidden;
  overflow: hidden;
  transform-origin: center bottom;
}

html {
  box-sizing: border-box;
  -webkit-text-size-adjust: 100%;
}

*,
*:before,
*:after {
  box-sizing: inherit;
}

* {
  max-height: 1000000px;
}

main,
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
}

ul,
ol,
dl,
p,
h1,
h2,
h3,
h4,
h5,
h6,
address,
form,
table,
blockquote,
applet,
embed,
object,
iframe,
frameset {
  margin: 0 0 20px;
}

blockquote {
  border-left: 4px solid #ddd;
  padding-left: 10px;
  margin-left: 0;
}

table {
  border-collapse: collapse;
}

th,
td {
  border: 1px solid #ddd;
  padding: 3px;
  text-align: left;
  vertical-align: top;
}

th {
  text-align: center;
  vertical-align: middle;
}

ul,
ol {
  padding-left: 20px;
}

ul ul,
ul ol,
ol ul,
ol ol {
  padding-left: 20px;
  margin: 0;
}

ul {
  list-style-type: disc;
}

dl dt {
  float: left;
  clear: left;
  padding-right: 0.3em;
  font-weight: bold;
}
dl dd {
  overflow: hidden;
}

pre {
  max-width: 100%;
  overflow: auto;
}

body {
  color: #fff;
  background: #0d0a11;
  font: 16px/1.2 "Albert", "Arial", "Helvetica Neue", "Helvetica", sans-serif;
  min-width: 360px;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  margin: 0;
}
@media (min-width: 992px) {
  body {
    font-size: 18px;
    line-height: 1.2;
  }
}

img {
  max-width: 100%;
  height: auto;
  vertical-align: top;
  display: inline-block;
}

.gm-style img {
  max-width: none;
}

@media (max-width: 991.98px) {
  iframe {
    width: 100%;
  }
}

.resize-active * {
  transition: none !important;
}

.clearfix:after, dl:after {
  content: "";
  display: block;
  clear: both;
}

.ellipsis {
  white-space: nowrap;
  /* 1 */
  text-overflow: ellipsis;
  /* 2 */
  overflow: hidden;
}

h1,
.h1 {
  font-size: 20px;
}

h2,
.h2 {
  font-size: 16px;
}

h3,
.h3 {
  font-size: 15px;
}

h4,
.h4 {
  font-size: 14px;
}

h5,
.h5 {
  font-size: 14px;
}

h6,
.h6 {
  font-size: 14px;
}

@media (min-width: 768px) {
  h1,
  .h1 {
    font-size: 40px;
  }
  h2,
  .h2 {
    font-size: 30px;
  }
  h3,
  .h3 {
    font-size: 28px;
  }
  h4,
  .h4 {
    font-size: 20px;
  }
  h5,
  .h5 {
    font-size: 18px;
  }
  h6,
  .h6 {
    font-size: 16px;
  }
}
@media (min-width: 992px) {
  h1,
  .h1 {
    font-size: 40px;
  }
  h2,
  .h2 {
    font-size: 48px;
  }
  h3,
  .h3 {
    font-size: 28px;
  }
  h4,
  .h4 {
    font-size: 20px;
  }
  h5,
  .h5 {
    font-size: 18px;
  }
  h6,
  .h6 {
    font-size: 16px;
  }
}
@media (min-width: 1200px) {
  h1,
  .h1 {
    font-size: 60px;
  }
  h2,
  .h2 {
    font-size: 60px;
  }
  h3,
  .h3 {
    font-size: 28px;
  }
  h4,
  .h4 {
    font-size: 20px;
  }
  h5,
  .h5 {
    font-size: 18px;
  }
  h6,
  .h6 {
    font-size: 16px;
  }
}
h1,
.h1,
h2,
.h2,
h3,
.h3,
h4,
.h4,
h5,
.h5,
h6,
.h6,
.h {
  font-family: "Albert", "Arial", "Helvetica Neue", "Helvetica", sans-serif;
  color: inherit;
  font-weight: bold;
  margin: 0 0 10px;
}
@media (min-width: 768px) {
  h1,
  .h1,
  h2,
  .h2,
  h3,
  .h3,
  h4,
  .h4,
  h5,
  .h5,
  h6,
  .h6,
  .h {
    margin-bottom: 20px;
  }
}

h2 {
  margin: 0 0 0.5em;
  font-weight: 400;
  font-size: 30px;
  line-height: 1;
  text-transform: uppercase;
  font-family: "denk_one", "Arial", "Helvetica Neue", "Helvetica", sans-serif;
}
@media (min-width: 768px) {
  h2 {
    font-size: calc(30px + 18 * (100vw - 768px) / 432);
  }
}
@media (min-width: 1200px) {
  h2 {
    font-size: 48px;
  }
}

h3 {
  margin: 0 0 1em;
  text-transform: uppercase;
  font-weight: 800;
  font-size: calc(22px + 10 * (100vw - 360px) / 840);
  line-height: 1;
  font-family: "denk_one", "Arial", "Helvetica Neue", "Helvetica", sans-serif;
}
@media (min-width: 1200px) {
  h3 {
    font-size: 32px;
  }
}

h4 {
  margin: 0 0 0.9em;
  font-weight: 400;
  font-size: 18px;
  font-family: "denk_one", "Arial", "Helvetica Neue", "Helvetica", sans-serif;
  line-height: 1.2;
  text-transform: uppercase;
}

p {
  margin: 0 0 1em;
}

a {
  color: #007bff;
  text-decoration: none;
}
a:hover, a:focus {
  color: #000;
  text-decoration: none;
}

a[href*="mailto:"] {
  word-wrap: break-word;
}

form,
fieldset {
  margin: 0;
  padding: 0;
  border-style: none;
}

input[type=text],
input[type=tel],
input[type=email],
input[type=search],
input[type=password],
input[type=url],
textarea {
  -webkit-appearance: none;
  -webkit-border-radius: 0;
  padding: 10px 20px;
  font-size: 16px;
  line-height: 18px;
  font-family: "Albert", "Arial", "Helvetica Neue", "Helvetica", sans-serif;
  box-sizing: border-box;
  border: 1px solid #000;
  border-radius: 0;
}
input[type=text]:not(textarea),
input[type=tel]:not(textarea),
input[type=email]:not(textarea),
input[type=search]:not(textarea),
input[type=password]:not(textarea),
input[type=url]:not(textarea),
textarea:not(textarea) {
  height: 40px;
}
input[type=text]:focus,
input[type=tel]:focus,
input[type=email]:focus,
input[type=search]:focus,
input[type=password]:focus,
input[type=url]:focus,
textarea:focus {
  outline: none;
  border-color: #000;
}
input[type=text]::-webkit-input-placeholder,
input[type=tel]::-webkit-input-placeholder,
input[type=email]::-webkit-input-placeholder,
input[type=search]::-webkit-input-placeholder,
input[type=password]::-webkit-input-placeholder,
input[type=url]::-webkit-input-placeholder,
textarea::-webkit-input-placeholder {
  color: #ddd;
}
input[type=text]::-moz-placeholder,
input[type=tel]::-moz-placeholder,
input[type=email]::-moz-placeholder,
input[type=search]::-moz-placeholder,
input[type=password]::-moz-placeholder,
input[type=url]::-moz-placeholder,
textarea::-moz-placeholder {
  opacity: 1;
  color: #ddd;
}
input[type=text]:-moz-placeholder,
input[type=tel]:-moz-placeholder,
input[type=email]:-moz-placeholder,
input[type=search]:-moz-placeholder,
input[type=password]:-moz-placeholder,
input[type=url]:-moz-placeholder,
textarea:-moz-placeholder {
  color: #ddd;
}
input[type=text]:-ms-input-placeholder,
input[type=tel]:-ms-input-placeholder,
input[type=email]:-ms-input-placeholder,
input[type=search]:-ms-input-placeholder,
input[type=password]:-ms-input-placeholder,
input[type=url]:-ms-input-placeholder,
textarea:-ms-input-placeholder {
  color: #ddd;
}
input[type=text].placeholder,
input[type=tel].placeholder,
input[type=email].placeholder,
input[type=search].placeholder,
input[type=password].placeholder,
input[type=url].placeholder,
textarea.placeholder {
  color: #ddd;
}

input[type=search]::-webkit-search-cancel-button {
  -webkit-appearance: none;
}

textarea {
  resize: vertical;
  vertical-align: top;
  overflow: auto;
}

button,
input[type=button],
input[type=reset],
input[type=file],
input[type=submit] {
  transition: background 0.5s ease-in-out;
  -webkit-appearance: none;
  -webkit-border-radius: 0;
  height: 40px;
  padding: 20px 19px;
  font-size: 16px;
  line-height: 22px;
  color: #c847a4;
  background: linear-gradient(to bottom, #f1be2b 0%, #f35d1b 100%);
  border-width: 1px;
  border-style: solid;
  border-color: linear-gradient(to bottom, #f1be2b 0%, #f35d1b 100%);
  border-radius: 9px;
  cursor: pointer;
  transition: all 0.5s;
}
button:hover,
input[type=button]:hover,
input[type=reset]:hover,
input[type=file]:hover,
input[type=submit]:hover {
  background: #c847a4;
  color: linear-gradient(to bottom, #f1be2b 0%, #f35d1b 100%);
}

noscript {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  margin: 0;
  font-size: 14px;
  color: #000;
  background: #ff8f8f;
  display: block;
  padding: 5px 0;
  text-align: center;
  z-index: 99999;
}

.accessibility {
  position: absolute;
  left: -200vw;
  top: auto;
  width: 1px;
  height: 1px;
  overflow: hidden;
}
.accessibility:focus {
  position: static;
  width: auto;
  height: auto;
}

.hidden {
  position: absolute;
  left: -9999px;
  top: auto;
  width: 1px;
  height: 1px;
  overflow: hidden;
}

[id=header] {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 99;
}

.header-holder {
  display: flex;
  justify-content: space-between;
}

.logo {
  width: 150px;
  min-width: 150px;
  margin-right: 20px;
  position: relative;
}
@media (min-width: 768px) {
  .logo {
    width: 180px;
    min-width: 180px;
  }
}
@media (min-width: 992px) {
  .logo {
    width: 200px;
    min-width: 200px;
  }
}
@media (min-width: 1200px) {
  .logo {
    width: 375px;
    min-width: 375px;
    margin-left: 2.2%;
  }
}
.logo:after {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  left: 60%;
  transform: translateX(-50%);
  background-image: url("../images/logo-shadow.png");
  background-repeat: no-repeat;
  width: 700px;
  height: 300px;
  background-size: contain;
  background-position: 50% 0;
  pointer-events: none;
}
@media (min-width: 768px) {
  .logo:after {
    width: 800px;
    height: 350px;
  }
}
@media (min-width: 992px) {
  .logo:after {
    width: 850px;
    height: 350px;
  }
}
@media (min-width: 1200px) {
  .logo:after {
    width: 1190px;
    height: 453px;
  }
}

[id=nav] {
  margin: 20px 3% 20px 0;
}
@media (min-width: 768px) {
  [id=nav] {
    margin: 35px 3% 20px 0;
  }
}
@media (min-width: 1200px) {
  [id=nav] {
    margin: 52px 6% 20px 0;
  }
}

.nav-drop {
  transition: all 0.5s ease-in-out;
  background: rgba(13, 10, 17, 0.95);
  color: #5a5981;
  position: fixed;
  top: 0;
  left: 0;
  bottom: 0;
  width: 100%;
  padding: 10px 15px;
  text-transform: uppercase;
  transition: transform 0.5s;
  transform: translateX(-100%);
  display: flex;
  align-items: center;
  justify-content: center;
}
@media (min-width: 768px) {
  .nav-drop {
    width: auto;
    padding: 0;
    position: static;
    opacity: 1;
    visibility: visible;
    background: none;
    transform: none;
  }
}
@media (max-width: 767.98px) {
  .nav-drop {
    font-size: 20px;
  }
}
.nav-active .nav-drop {
  transform: translateX(0);
}
.nav-drop ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
@media (min-width: 768px) {
  .nav-drop ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    align-items: center;
    margin: 0 -10px;
  }
}
@media (min-width: 992px) {
  .nav-drop ul {
    margin: 0 -20px;
  }
}
@media (min-width: 1200px) {
  .nav-drop ul {
    margin: 0 -35px;
  }
}
.nav-drop li {
  list-style: none;
  padding: 14px 0;
  text-align: center;
}
@media (min-width: 768px) {
  .nav-drop li {
    padding: 0 10px;
  }
}
@media (min-width: 992px) {
  .nav-drop li {
    padding: 0 25px;
  }
}
.nav-drop li:last-child a:after {
  opacity: 1;
  visibility: visible;
  left: -7px;
  right: -7px;
  background: #f1be2b;
}
.nav-drop li.active a {
  color: #fff;
}
.nav-drop li.active a:after {
  opacity: 1;
  visibility: visible;
  left: -7px;
  right: -7px;
}
.nav-drop a {
  position: relative;
  color: #fff;
  font-size: 20px;
  line-height: 1.2;
  text-transform: uppercase;
}
@media (min-width: 768px) {
  .nav-drop a {
    font-size: 18px;
  }
}
.nav-drop a:after {
  pointer-events: none;
  position: absolute;
  content: "";
  left: 5px;
  right: 5px;
  bottom: -8px;
  height: 1px;
  background: #c847a4;
  opacity: 0;
  visibility: hidden;
  transition: 0.5s;
}
.nav-drop a:hover:after {
  opacity: 1;
  visibility: visible;
  left: -5px;
  right: -5px;
}

.nav-opener {
  position: relative;
  width: 30px;
  height: 30px;
  font-size: 0;
  line-height: 0;
  float: right;
  z-index: 10;
}
@media (min-width: 768px) {
  .nav-opener {
    display: none;
  }
}
.nav-opener:before, .nav-opener:after,
.nav-opener span {
  transition: transform 0.5s ease-in-out, opacity 0.5s ease-in-out;
  background: #c847a4;
  position: absolute;
  top: 50%;
  left: 15%;
  right: 15%;
  height: 3px;
  border-radius: 3px;
  transform: translateY(-50%);
}
.nav-opener:before, .nav-opener:after {
  content: "";
}
.nav-opener:before {
  transform: translateY(-9px);
}
.nav-opener:after {
  transform: translateY(6px);
}
.nav-opener:hover:before, .nav-opener:hover:after,
.nav-opener:hover span {
  background-color: #c847a4;
}
.nav-active .nav-opener span {
  opacity: 0;
  transform: rotate(45deg);
}
.nav-active .nav-opener:before {
  transform: rotate(45deg) translateY(0);
}
.nav-active .nav-opener:after {
  transform: rotate(-45deg) translateY(0);
}

:root {
  --swiper-theme-color: #c847a4;
  --swiper-pagination-bullet-inactive-color: #201933;
  --swiper-pagination-bullet-inactive-opacity: 1;
  --swiper-pagination-top: call(100% + 10px);
}

[id=wrapper] {
  position: relative;
  display: flex;
  flex-direction: column;
  width: 100%;
  background-color: #0d0a11;
  min-height: 100vh;
  overflow: hidden;
}

main {
  flex-grow: 1;
}
.approved main {
  display: flex;
}

.container {
  width: 100%;
  max-width: 1640px;
  padding: 0 20px;
  margin: 0 auto;
}

.list-dott {
  margin: 0;
  padding: 0;
  list-style: none;
  font-size: 19px;
  line-height: 1.25;
  text-transform: uppercase;
}
@media (min-width: 768px) {
  .list-dott {
    font-size: 24px;
  }
}
.list-dott > li {
  padding-left: 26px;
  position: relative;
}
.list-dott > li:before {
  content: "";
  position: absolute;
  left: 0;
  top: 8px;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #c847a4;
}
@media (min-width: 768px) {
  .list-dott > li:before {
    top: 10px;
    width: 11px;
    height: 11px;
  }
}

.btn-item {
  position: absolute;
  top: 100%;
  right: 30px;
  padding: 8px 23px 10px;
  text-align: center;
  line-height: 22px;
  transition: all 0.5s;
  color: #fff;
  background: linear-gradient(to top, #772a83 0%, #d23a82 100%);
  box-shadow: 0 0 3px rgba(33, 33, 44, 0.3);
  text-shadow: 0 1px 0 #2a4325;
  border-color: #b735ca;
  font-size: 18px;
  font-family: "Albert", "Arial", "Helvetica Neue", "Helvetica", sans-serif;
  font-weight: normal;
  border-style: solid;
  border-color: transparent;
  border-width: 1px;
  border-radius: 0 0 9px 9px;
}
.btn-item:hover {
  color: #fff;
  background: linear-gradient(to top, #6c2853 0%, #6c2853 100%);
}

.list-check {
  margin: 0;
  padding: 0;
  list-style: none;
  text-align: left;
}
.list-check > li {
  position: relative;
  padding: 0 0 5px 22px;
}
.list-check > li:before {
  content: "";
  position: absolute;
  left: 0;
  top: 5px;
  width: 14px;
  height: 11px;
  background-image: url("../images/check.png");
  background-size: contain;
  background-position: 0 0;
  background-repeat: no-repeat;
}

[id=footer] {
  position: relative;
  color: rgba(108, 94, 123, 0.5);
  font-size: 14px;
  padding: 93px 0 40px;
}
[id=footer] a {
  color: inherit;
  transition: color 0.5s;
}
[id=footer] a:hover {
  color: #fff;
}
[id=footer] .container {
  position: relative;
  z-index: 1;
}

.footer-text {
  max-width: 700px;
  text-align: center;
  margin: 0 auto 45px;
}
.footer-text p {
  margin: 0 0 1.2em;
}

.footer-menu {
  margin: 0 0 18px;
  padding: 0;
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  color: rgba(108, 94, 123, 0.5);
}
.footer-menu > li:before {
  content: "|";
  margin: 0 5px;
}
.footer-menu > li:first-child:before {
  display: none;
}
.footer-menu a {
  color: rgba(108, 94, 123, 0.5);
}
.footer-menu a:hover {
  text-decoration: underline;
}

.footer-list {
  margin: 0;
  padding: 0;
  list-style: none;
  text-align: center;
  display: flex;
  text-align: left;
  justify-content: space-around;
  flex-wrap: wrap;
}
@media (min-width: 1200px) {
  .footer-list {
    padding: 0 10%;
  }
}
.footer-list > li {
  width: 260px;
  padding: 0 10px 20px;
}
@media (min-width: 992px) {
  .footer-list > li {
    width: 300px;
  }
}

.footer-list-item {
  display: flex;
  align-items: center;
  color: #bfbfbf;
  font-weight: 400;
  font-size: 12px;
  line-height: 1.2;
}
.footer-list-item h5 {
  margin: 0;
  text-transform: uppercase;
  font-weight: 400;
  font-size: 12px;
  line-height: 1.2;
  color: inherit;
}
.footer-list-item__icon {
  margin-right: 20px;
  width: 60px;
  min-width: 60px;
}
@media (max-width: 767.98px) {
  .footer-list-item__icon {
    text-align: right;
  }
}
.footer-list-item p {
  margin: 0;
}

.btn.btn {
  display: inline-block;
  padding: 20px 19px;
  text-align: center;
  line-height: 22px;
  vertical-align: top;
  transition: all 0.5s;
  height: auto;
  text-transform: uppercase;
  min-width: 312px;
  letter-spacing: 0.1em;
  width: 100%;
  font-size: 18px;
  font-family: "Albert", "Arial", "Helvetica Neue", "Helvetica", sans-serif;
  font-weight: normal;
  border-style: solid;
  border-color: transparent;
  border-width: 1px;
  border-radius: 9px;
}
@media (min-width: 768px) {
  .btn.btn {
    min-width: 230px;
    width: auto;
  }
}
@media (min-width: 992px) {
  .btn.btn {
    min-width: 314px;
  }
}
.btn.btn--default {
  color: #904702;
  background: linear-gradient(to bottom, #f1be2b 0%, #f35d1b 100%);
  border-color: linear-gradient(to bottom, #f1be2b 0%, #f35d1b 100%);
  box-shadow: 0 1px 0 #fb1f1f;
}
.btn.btn--default:hover {
  color: #904702;
  background: linear-gradient(to top, #f1be2b 0%, #f35d1b 100%);
  border-color: linear-gradient(to bottom, #f1be2b 0%, #f35d1b 100%);
}
.btn.btn--primary {
  color: #fff;
  background: linear-gradient(to top, #772a83 0%, #d23a82 100%);
  box-shadow: 0 0 3px rgba(33, 33, 44, 0.3);
  text-shadow: 0 1px 0 #2a4325;
  border-color: #b735ca;
}
.btn.btn--primary:hover {
  color: #fff;
  background: linear-gradient(to top, #6c2853 0%, #6c2853 100%);
}
.btn.btn--secondary {
  color: #66d1d6;
  background: #0d0a11;
  box-shadow: 0 0 20px rgba(46, 208, 206, 0.7);
  text-shadow: 0 0 20px rgba(46, 208, 206, 0.3);
  border-color: #66d1d6;
  text-transform: none;
}
.btn.btn--secondary:hover {
  color: #fff;
  background: #0d0a11;
  border-color: #66d1d6;
}
.btn.btn--sm {
  padding: 5px 10px;
  font-size: 12px;
  line-height: 14px;
  border-radius: 4.5px;
}
.btn.btn--lg {
  padding: 15px 20px 26px;
  font-size: 18px;
  line-height: 26px;
  border-radius: 18px;
  min-width: 256px;
}
@media (min-width: 576px) {
  .btn.btn--lg {
    font-size: 24px;
  }
}

.btn-group {
  margin: 0 -5px -10px;
  display: flex;
  flex-wrap: wrap;
}
.btn-group .btn {
  margin: 0 5px 10px;
}

.section-hero {
  position: relative;
  display: flex;
  align-items: flex-end;
  padding: 35px 0 0;
  margin-bottom: -40px;
}
@media (min-width: 768px) {
  .section-hero {
    margin-bottom: 57px;
  }
}
.section-hero:before {
  content: "";
  z-index: 3;
  position: absolute;
  left: 0;
  right: 0;
  height: 120px;
  bottom: 0;
  background: linear-gradient(to bottom, rgba(200, 71, 164, 0) 0%, rgb(0, 0, 0) 100%);
}
@media (min-width: 768px) {
  .section-hero:before {
    display: none;
  }
}
@media (min-width: 768px) {
  .section-hero:after {
    content: "";
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translateX(-50%);
    background-image: url("../images/hero-decor-01.png");
    background-repeat: no-repeat;
    background-position: 50% 0;
    background-size: contain;
    width: 120%;
    height: 637px;
    pointer-events: none;
  }
}
@media (min-width: 1200px) {
  .section-hero:after {
    width: 1379px;
  }
}
.section-hero__bg {
  display: none;
}
@media (min-width: 768px) {
  .section-hero__bg {
    position: absolute;
    inset: 0;
    display: block;
  }
}
.section-hero__bg img {
  max-width: none;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 100%;
}
.section-hero .container {
  position: relative;
  z-index: 1;
}
@media (min-width: 768px) {
  .section-hero__holder {
    display: flex;
    justify-content: space-between;
    flex-direction: row-reverse;
    align-items: center;
    padding: 0 7.4% 0 3.3%;
  }
}
.section-hero__image {
  margin: 0 -20px;
}
@media (min-width: 768px) {
  .section-hero__image {
    margin: 0;
    padding-top: 4vw;
  }
}
@media (min-width: 1600px) {
  .section-hero__image {
    padding: 0;
  }
}
.section-hero__content {
  position: relative;
  z-index: 1;
  width: 100%;
  text-align: center;
  padding: 50px 0 10px;
}
@media (min-width: 768px) {
  .section-hero__content {
    max-width: 420px;
    padding: calc(60px + 90 * (100vw - 768px) / 432) 0 10px 0;
    margin: 0 0 0 -2%;
  }
}
@media (min-width: 1200px) {
  .section-hero__content {
    margin-left: calc(-2% + -8 * (100vw - 1200px) / 400);
    padding: calc(50px + 100 * (100vw - 1200px) / 400) 0 20px 0;
  }
}
@media (min-width: 1600px) {
  .section-hero__content {
    margin: 0 0 0 -10%;
    padding: 150px 0 20px 0;
  }
}
.section-hero__text {
  margin: 0 0 2em;
}

.section-options {
  position: relative;
  z-index: 3;
}
@media (min-width: 1200px) {
  .section-options .swiper-wrapper {
    display: flex;
    margin: 0 -13px;
  }
}
.section-options .swiper {
  width: 100%;
  height: 100%;
  padding: 0 0 40px;
}
@media (min-width: 1200px) {
  .section-options .swiper {
    padding: 0;
  }
}
@media (min-width: 1200px) {
  .section-options .swiper * {
    box-sizing: border-box;
  }
}
@media (min-width: 1200px) {
  .section-options .swiper-slide {
    padding: 0 13px;
    width: 33.3333333333%;
    display: flex;
  }
}

.option {
  position: relative;
  display: flex;
  margin: 33px auto 0;
  justify-content: flex-end;
  width: 100%;
  max-width: 522px;
  min-height: 100px;
}
@media (min-width: 576px) {
  .option {
    min-height: 123px;
  }
}
@media (min-width: 1200px) {
  .option {
    max-width: none;
    margin: 33px 0 0;
  }
}
.option__hold {
  position: absolute;
  inset: 0;
  background-image: url("../images/bg-option.jpg");
  background-color: #201933;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: 50% 0%;
  border-radius: 9px;
  overflow: hidden;
}
.option__img {
  width: 50%;
  height: 100%;
}
@media (min-width: 576px) {
  .option__img {
    width: 238px;
  }
}
@media (min-width: 1200px) {
  .option__img {
    width: 50%;
  }
}
@media (min-width: 1600px) {
  .option__img {
    width: 238px;
  }
}
.option__img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  background-image: url("../images/option-mask.png");
  mask-image: url("../images/option-mask.png");
  mask-size: cover;
  mask-repeat: no-repeat;
  mask-position: 100% 0;
}
.option__content {
  position: relative;
  width: 50%;
  margin-top: -20px;
  text-align: center;
  padding: 0 5px;
}
@media (min-width: 576px) {
  .option__content {
    width: 280px;
    margin-top: -32px;
  }
}
@media (min-width: 1200px) {
  .option__content {
    width: calc(200px + 100 * (100vw - 1200px) / 400);
    margin-top: calc((17px + 15 * (100vw - 1200px) / 400) * -1);
  }
}
@media (min-width: 1600px) {
  .option__content {
    width: 280px;
    margin-top: -32px;
  }
}
@media (min-width: 576px) {
  .option__title {
    font-size: 48px;
  }
}
@media (min-width: 1200px) {
  .option__title {
    font-size: calc(25px + 23 * (100vw - 1200px) / 400);
  }
}
@media (min-width: 1600px) {
  .option__title {
    font-size: 48px;
  }
}

.section-text {
  padding: 30px 0;
  position: relative;
  z-index: 3;
}
@media (min-width: 768px) {
  .section-text {
    padding: 50px 0;
  }
}
@media (min-width: 992px) {
  .section-text {
    padding: 82px 0 65px;
  }
}

.text-block {
  text-align: center;
}
@media (min-width: 768px) {
  .text-block {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0 6%;
  }
}
.text-block h2 {
  margin: 0;
}
.text-block p {
  margin: 0;
}
.text-block__title {
  margin-bottom: 20px;
}
@media (min-width: 768px) {
  .text-block__title {
    width: 40%;
    margin-bottom: 0;
    padding: 0 10px;
  }
}
@media (min-width: 768px) {
  .text-block__content {
    width: 55%;
    padding: 0 10px;
  }
}

.section-video {
  position: relative;
  z-index: 2;
  margin: 0 0 30px;
}
@media (min-width: 768px) {
  .section-video {
    margin: 0 0 80px;
  }
}
.section-video video {
  display: block;
  width: 100%;
  height: auto;
  border: 0;
}

.video-wrapper {
  position: relative;
}
.video-wrapper:after {
  content: "";
  position: absolute;
  z-index: -1;
  inset: -14% -17% -41%;
  background-image: url("../images/video-bg.png");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50% 50%;
}

.section-actor {
  position: relative;
  padding: 30px 0 0;
  margin-bottom: 30px;
}
@media (min-width: 768px) {
  .section-actor {
    padding: 79px 0 0;
    margin-bottom: 50px;
  }
}
.section-actor__visual {
  position: absolute;
  inset: auto 0 0;
  text-align: center;
  display: none;
}
@media (min-width: 768px) {
  .section-actor__visual {
    display: block;
    inset: 0 -999px;
  }
}
.section-actor__visual img {
  max-width: none;
  width: 100%;
}
@media (min-width: 768px) {
  .section-actor__visual img {
    height: 100%;
    width: auto;
  }
}

.actor-box {
  position: relative;
  text-align: center;
}
@media (min-width: 768px) {
  .actor-box {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
  }
}
@media (min-width: 992px) {
  .actor-box {
    align-items: center;
  }
}
.actor-box .list-dott {
  padding-top: 30px;
  padding-bottom: 50px;
  display: inline-block;
  vertical-align: top;
  text-align: left;
}
.actor-box__content {
  padding: 0 3% 20px;
}
@media (min-width: 768px) {
  .actor-box__content {
    width: 45%;
  }
}
@media (min-width: 992px) {
  .actor-box__content {
    width: 40%;
  }
}
@media (min-width: 1600px) {
  .actor-box__content {
    width: 39%;
    padding: 0 7% 20px;
  }
}
.actor-box__img {
  margin: 0 -20px;
}
@media (min-width: 768px) {
  .actor-box__img {
    width: 55%;
    margin: 0;
  }
}
@media (min-width: 1600px) {
  .actor-box__img {
    width: 60%;
    padding: 0 5.4% 0 0;
  }
}
@media (max-width: 767.98px) {
  .actor-box__img img {
    max-width: none;
    width: 100%;
  }
}

.section-options + .section-control {
  margin-top: -213px;
}
@media (min-width: 768px) {
  .section-options + .section-control {
    margin-top: -246px;
  }
}
@media (min-width: 992px) {
  .section-options + .section-control {
    margin-top: -300px;
  }
}
@media (min-width: 1200px) {
  .section-options + .section-control {
    margin-top: -207px;
  }
}
@media (min-width: 1600px) {
  .section-options + .section-control {
    margin-top: -210px;
  }
}

.section-control {
  position: relative;
  padding: 240px 0 0;
}
@media (min-width: 768px) {
  .section-control {
    padding: 360px 0 100px;
  }
}
@media (min-width: 992px) {
  .section-control {
    padding: 360px 0 60px;
  }
}
@media (min-width: 1200px) {
  .section-control {
    padding: 360px 0 100px;
  }
}
@media (min-width: 1600px) {
  .section-control {
    padding: 360px 0 200px;
  }
}
.section-control__visual {
  display: none;
}
@media (min-width: 768px) {
  .section-control__visual {
    text-align: center;
    position: absolute;
    inset: 0 -999px;
    display: block;
    padding-top: 300px;
  }
}
@media (min-width: 1200px) {
  .section-control__visual {
    padding-top: 0;
  }
}
.section-control__visual img {
  max-width: none;
  height: 100%;
}

.control-box {
  position: relative;
}
@media (min-width: 768px) {
  .control-box {
    display: flex;
    flex-direction: row-reverse;
    align-items: center;
    padding: 0 20px 0 0;
  }
}
@media (min-width: 992px) {
  .control-box {
    padding: 0 10% 0 0;
  }
}
.control-box__editor {
  margin: 0 -20px;
  margin-top: -120px;
}
@media (min-width: 768px) {
  .control-box__editor {
    margin: 0 10px 0 0;
    max-width: 120px;
  }
}
@media (min-width: 992px) {
  .control-box__editor {
    margin: 0 43px 0 0;
    padding: 43px 0 0;
  }
}
@media (min-width: 1200px) {
  .control-box__editor {
    max-width: none;
  }
}
@media (max-width: 767.98px) {
  .control-box__editor img {
    max-width: none;
    width: 100%;
  }
}
.control-box__content {
  text-align: center;
  padding: 0 3%;
  position: relative;
  z-index: 2;
}
@media (min-width: 768px) {
  .control-box__content {
    padding: 0;
    width: 400px;
    min-width: 400px;
  }
}
.control-box .list-dott {
  padding-top: 30px;
  padding-bottom: 50px;
  display: inline-block;
  vertical-align: top;
  text-align: left;
}

.section-full-image {
  position: relative;
  padding: 50px 0 0;
}
@media (min-width: 768px) {
  .section-full-image {
    padding: 125px 0 155px;
  }
}
.section-full-image__visual {
  position: absolute;
  inset: auto 0 0;
  text-align: center;
}
@media (min-width: 768px) {
  .section-full-image__visual {
    inset: 0 -999px;
  }
}
.section-full-image__visual img {
  max-width: none;
  width: 100%;
}
@media (min-width: 768px) {
  .section-full-image__visual img {
    height: 100%;
    width: auto;
  }
}

.full-image {
  position: relative;
}
@media (min-width: 768px) {
  .full-image {
    display: flex;
    align-items: center;
  }
}
.full-image__content {
  position: relative;
  text-align: center;
  padding: 0 5%;
}
@media (min-width: 768px) {
  .full-image__content {
    width: 640px;
    margin-right: -80px;
  }
}
@media (min-width: 992px) {
  .full-image__content {
    margin-right: -113px;
  }
}

.section-full-image + .section-image-line {
  margin-top: -1px;
}
@media (min-width: 768px) {
  .section-full-image + .section-image-line {
    margin-top: -155px;
  }
}

.section-image-line {
  position: relative;
}
.section-image-line:after {
  content: "";
  position: absolute;
  top: calc(100% - 1px);
  left: 50%;
  transform: translateX(-50%);
  width: 1552px;
  height: 556px;
  background-size: contain;
  background-position: 50% 0;
  background-image: url("../images/decor-02.png");
  pointer-events: none;
}

.image-line {
  margin: 0 -32px;
  padding: 0;
  list-style: none;
  display: flex;
  justify-content: center;
  position: relative;
  z-index: 1;
}
@media (min-width: 576px) {
  .image-line {
    margin: 0 -37px;
  }
}
@media (min-width: 768px) {
  .image-line {
    margin: 0;
  }
}
@media (max-width: 767.98px) {
  .image-line > li:first-child .image-line-item, .image-line > li:last-child .image-line-item {
    z-index: -1;
  }
}
@media (max-width: 575.98px) {
  .image-line > li:first-child .image-line-item__title {
    padding-left: 23px;
  }
}
@media (max-width: 767.98px) {
  .image-line > li:first-child .image-line-item__title {
    padding-left: 25px;
  }
}
@media (max-width: 575.98px) {
  .image-line > li:last-child .image-line-item__title {
    padding-right: 8px;
  }
}

.image-line-item {
  position: relative;
}
.image-line-item__hold {
  overflow: hidden;
  transform: skewX(-9deg);
}
.image-line-item__visual {
  transform: skewX(9deg);
  margin: 0 -25px;
}
.image-line-item__title {
  position: absolute;
  left: -5px;
  right: -5px;
  bottom: 0;
  font-size: 9px;
  line-height: 1;
  text-align: center;
  background: linear-gradient(to right, rgba(31, 31, 31, 0.9) 10%, rgba(31, 31, 31, 0.05) 100%);
  text-transform: uppercase;
  color: #fff;
  font-family: "denk_one", "Arial", "Helvetica Neue", "Helvetica", sans-serif;
  padding: 10px 5px;
  transform: skewX(9deg);
}
@media (min-width: 576px) {
  .image-line-item__title {
    left: -10px;
    right: -10px;
    font-size: 14px;
    padding: 20px 5px;
  }
}
@media (min-width: 768px) {
  .image-line-item__title {
    font-size: 16px;
  }
}
@media (min-width: 992px) {
  .image-line-item__title {
    font-size: 20px;
  }
}
@media (min-width: 1200px) {
  .image-line-item__title {
    font-size: 24px;
  }
}

.section-heading {
  padding: 120px 0 10px;
  text-align: center;
  position: relative;
}
@media (min-width: 768px) {
  .section-heading {
    padding: 120px 0 60px;
  }
}
@media (min-width: 1200px) {
  .section-heading {
    padding: 210px 0 60px;
  }
}
.section-heading:after {
  content: "";
  position: absolute;
  left: 50%;
  top: 0;
  transform: translateX(-50%);
  width: 2000px;
  height: 690px;
  background-image: url("../images/decor-05.png");
  background-repeat: no-repeat;
  background-position: 50% 0;
  background-size: contain;
}
@media (min-width: 1200px) {
  .section-heading:after {
    width: 2560px;
  }
}
.section-heading .container {
  position: relative;
  z-index: 1;
}
.section-heading__text {
  max-width: 670px;
  margin: 0 auto;
}
.section-heading h2 {
  margin: 0 0 0.3em;
}

.section-posts {
  position: relative;
  z-index: 1;
  padding: 20px 15px;
}
.section-posts:after {
  content: "";
  position: absolute;
  z-index: -1;
  transform: translateX(-50%);
  left: 50%;
  bottom: -290px;
  width: 2000px;
  height: 749px;
  background-image: url("../images/decor-04.png");
  background-position: 50% 0;
  background-size: contain;
  background-repeat: no-repeat;
}
@media (min-width: 992px) {
  .section-posts:after {
    bottom: -160px;
    width: 2560px;
  }
}

.list-posts {
  margin: 0;
  padding: 0;
  list-style: none;
}

.item-post {
  margin-bottom: 82px;
  display: grid;
  grid-template-columns: 50% 50%;
  grid-template-rows: repeat(2, 1fr) auto;
  grid-template-areas: "first second" "first third" "content content";
}
@media (min-width: 992px) {
  .item-post {
    grid-template-columns: 23.5% 27% 49.5%;
    grid-template-rows: repeat(2, 1fr);
    grid-template-areas: "first second content" "first third content";
  }
}
.item-post__visual {
  display: flex;
}
.item-post__visual > a {
  display: flex;
  width: 100%;
}
.item-post__visual img {
  max-width: none;
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 9px;
}
.item-post__content-hold {
  width: 100%;
  position: relative;
  background: #201933;
  border-radius: 0 0 9px 9px;
}
.item-post__content-visual > a {
  display: block;
}
.item-post__content-visual img {
  max-width: none;
  width: 100%;
}
@media (max-width: 991.98px) {
  .item-post__content-visual img {
    border-radius: 9px 9px 0 0;
  }
}
.item-post__text {
  background: #201933;
  border-radius: 0 0 9px 9px;
  padding: 20px;
}
@media (min-width: 992px) {
  .item-post__text {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    font-size: 14px;
  }
}
@media (min-width: 1200px) {
  .item-post__text {
    font-size: 18px;
    min-height: 206px;
  }
}
@media (min-width: 1600px) {
  .item-post__text {
    padding: 30px;
  }
}

.first-box {
  grid-area: first;
  padding: 0 5px 5px 0;
}
@media (min-width: 992px) {
  .first-box {
    padding: 0 5px 0 0;
  }
}

.second-box {
  grid-area: second;
  padding: 0 0 5px 5px;
}
@media (min-width: 992px) {
  .second-box {
    padding: 0 5px 5px;
  }
}

.third-box {
  grid-area: third;
  padding: 5px 0 5px 5px;
}
@media (min-width: 992px) {
  .third-box {
    padding: 5px 5px 0;
  }
}

.item-post__content {
  display: flex;
  grid-area: content;
  padding: 5px 0 0;
}
@media (min-width: 992px) {
  .item-post__content {
    padding: 0 0 0 5px;
  }
}

.section-join {
  position: relative;
  padding: 120px 0 0;
}
@media (min-width: 768px) {
  .section-join {
    padding: 120px 0 34px;
  }
}
@media (min-width: 1200px) {
  .section-join {
    padding: 210px 0 34px;
  }
}
.section-join:after {
  content: "";
  position: absolute;
  left: 50%;
  top: 0;
  transform: translateX(-50%);
  width: 2000px;
  height: 690px;
  background-image: url("../images/decor-05.png");
  background-repeat: no-repeat;
  background-position: 50% 0;
  background-size: contain;
}
@media (min-width: 1200px) {
  .section-join:after {
    width: 2560px;
  }
}
.section-join .container {
  position: relative;
  z-index: 2;
}
.section-join__visual {
  width: 50%;
  display: inline-block;
  vertical-align: bottom;
  margin-left: -4px;
}
@media (min-width: 768px) {
  .section-join__visual {
    position: absolute;
    display: block;
    margin-left: 0;
    z-index: 1;
    bottom: 0;
    left: 50%;
    width: 456px;
  }
}
@media (min-width: 768px) {
  .section-join__visual--left {
    transform: translateX(-140%);
  }
}
@media (min-width: 768px) {
  .section-join__visual--right {
    transform: translateX(44%);
  }
}

.join-heading {
  text-align: center;
  margin: 0 0 33px;
}

.rating {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 20px;
  font-size: 16px;
}

.join-box {
  max-width: 458px;
  margin: 0 auto;
  width: 100%;
  border: 1px solid #3c3653;
  background: rgba(32, 25, 51, 0.9);
  border-radius: 9px;
  padding: 15px;
  text-align: center;
}
@media (min-width: 576px) {
  .join-box {
    padding: 40px 66px;
  }
}
.join-box__hold {
  background-image: url("../images/decor-06.png");
  background-repeat: no-repeat;
  background-position: 0 0;
  background-size: 100% auto;
}
.join-box__text {
  padding: 15px 30px;
}
.join-box .list-check {
  display: inline-block;
  vertical-align: top;
  font-size: 16px;
}
.join-box__description {
  font-size: 14px;
  max-width: 200px;
  margin: 0 auto;
  padding: 17px 0 6px;
}
.join-box mark {
  background: none;
  color: #fee209;
}
@media (max-width: 575.98px) {
  .join-box .btn {
    min-width: 100%;
  }
}
.join-box--form {
  max-width: 542px;
}
@media (min-width: 576px) {
  .join-box--form {
    padding: 45px 50px 35px;
  }
}
.join-box--form h3 {
  margin: 0 0 0.6em;
  font-size: 24px;
  line-height: 1.3333333333;
}
.join-box--form h3 mark {
  color: #e62077;
}

.price-box {
  display: flex;
  margin: 0 0 10px;
  padding: 24px 10px 5px;
  align-items: baseline;
  justify-content: center;
  font-family: "denk_one", "Arial", "Helvetica Neue", "Helvetica", sans-serif;
  border: 1px solid #62527f;
  border-radius: 9px;
}
.price-box .inc {
  font-size: 48px;
  line-height: 48px;
}
.price-box .month {
  font-size: 14px;
  line-height: 48px;
  color: #f1be2b;
}

.payment {
  padding: 21px 0 0;
}
.payment__title {
  display: block;
  margin: 0 0 14px;
  font-size: 12px;
  text-align: center;
}

.list-payments {
  margin: 0 0 10px;
  padding: 0;
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 6px;
}
.list-payments img {
  border-radius: 3px;
}

.list-partners {
  margin: 0 0 9px;
  padding: 0;
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 6px;
}
.list-partners img {
  border-radius: 3px;
}

.form-row {
  margin: 0 0 38px;
  text-align: left;
}
@media (min-width: 768px) {
  .form-row {
    max-width: 470px;
  }
}

.custom-radio {
  display: flex;
  position: relative;
  min-height: 72px;
  overflow: hidden;
  cursor: pointer;
  text-align: left;
  font-size: 16px;
}
.custom-radio + .custom-radio {
  margin-top: 10px;
}
.custom-radio input {
  position: absolute;
  opacity: 0;
  visibility: hidden;
}
.custom-radio input:checked + .custom-radio__content {
  border-color: #ab3379;
  color: #fff;
  background: linear-gradient(to right, #c13782 1%, #38214a 100%);
}
.custom-radio input:checked + .custom-radio__content:after {
  border-color: #fff;
}
.custom-radio__content {
  padding: 5px 20px 5px 60px;
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  background: #322744;
  border: 1px solid #322744;
  border-radius: 9px;
  color: #776b8a;
}
@media (min-width: 576px) {
  .custom-radio__content {
    padding-left: 75px;
  }
}
.custom-radio__content:after {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 19px;
  width: 15px;
  height: 15px;
  border-radius: 50%;
  border: 2px solid #8268a3;
  content: "";
}
@media (min-width: 576px) {
  .custom-radio__content:after {
    left: 31px;
  }
}

.section-gallery {
  padding: 20px 0 15px;
  position: relative;
  z-index: 1;
}
.section-gallery:after {
  content: "";
  position: absolute;
  z-index: -1;
  transform: translateX(-50%);
  left: 50%;
  bottom: -290px;
  width: 2000px;
  height: 749px;
  background-image: url("../images/decor-04.png");
  background-position: 50% 0;
  background-size: contain;
  background-repeat: no-repeat;
}
@media (min-width: 992px) {
  .section-gallery:after {
    bottom: -160px;
    width: 2560px;
  }
}

.list-gallery {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-wrap: wrap;
}
@media (min-width: 768px) {
  .list-gallery {
    margin: 0 -10px;
  }
}
@media (min-width: 992px) {
  .list-gallery {
    margin: 0 -15px;
  }
}
@media (min-width: 1200px) {
  .list-gallery {
    margin: 0 -20px;
  }
}
@media (min-width: 1600px) {
  .list-gallery {
    margin: 0 -30px;
  }
}
.list-gallery > li {
  margin-bottom: 70px;
  display: flex;
}
@media (min-width: 768px) {
  .list-gallery > li {
    width: 50%;
    padding: 0 10px;
  }
}
@media (min-width: 992px) {
  .list-gallery > li {
    padding: 0 15px;
    margin-bottom: 90px;
  }
}
@media (min-width: 1200px) {
  .list-gallery > li {
    padding: 0 20px;
  }
}
@media (min-width: 1600px) {
  .list-gallery > li {
    padding: 0 30px;
    margin-bottom: 121px;
  }
}

.item-gallery {
  text-align: center;
  position: relative;
  background: #201933;
  border-radius: 0 0 9px 9px;
}
.item-gallery__visual {
  position: relative;
  overflow: hidden;
  padding-top: 56%;
  width: 100%;
}
.item-gallery__visual img {
  position: absolute;
  top: 0;
  left: 0;
  max-width: none;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 50%;
}
.item-gallery__body {
  background: #201933;
  border-radius: 0 0 9px 9px;
  padding: 20px;
}
@media (min-width: 992px) {
  .item-gallery__body {
    font-size: 14px;
  }
}
@media (min-width: 1200px) {
  .item-gallery__body {
    font-size: 18px;
  }
}
@media (min-width: 1600px) {
  .item-gallery__body {
    padding: 30px;
  }
}

.section-benefits {
  position: relative;
}
.section-benefits:after {
  content: "";
  position: absolute;
  top: calc(100% - 1px);
  left: 50%;
  transform: translateX(-50%);
  width: 1552px;
  height: 556px;
  background-size: contain;
  background-position: 50% 0;
  background-image: url("../images/decor-02.png");
  pointer-events: none;
}

.list-benefits {
  margin: 0 -32px;
  padding: 0;
  list-style: none;
  display: flex;
  justify-content: center;
  position: relative;
  z-index: 1;
}
@media (min-width: 576px) {
  .list-benefits {
    margin: 0 -37px;
  }
}
@media (min-width: 768px) {
  .list-benefits {
    margin: 0;
  }
}
.list-benefits > li {
  max-width: 296px;
  width: 100%;
}
@media (max-width: 767.98px) {
  .list-benefits > li:first-child .item-benefist, .list-benefits > li:last-child .item-benefist {
    z-index: -1;
  }
}
@media (max-width: 575.98px) {
  .list-benefits > li:first-child .item-benefist__title {
    padding-left: 23px;
  }
}
@media (max-width: 767.98px) {
  .list-benefits > li:first-child .item-benefist__title {
    padding-left: 25px;
  }
}
@media (max-width: 575.98px) {
  .list-benefits > li:last-child .item-benefist__title {
    padding-right: 8px;
  }
}
.list-benefits > li:nth-child(odd) .item-benefist__hold {
  background: #2f1b3e;
}

.item-benefist {
  position: relative;
  display: flex;
  max-width: 296px;
  width: 100%;
  height: 115px;
}
@media (min-width: 576px) {
  .item-benefist {
    height: 160px;
  }
}
@media (min-width: 768px) {
  .item-benefist {
    height: 200px;
  }
}
@media (min-width: 992px) {
  .item-benefist {
    height: 230px;
  }
}
.item-benefist__hold {
  width: 100%;
  padding-top: 20px;
  padding-bottom: 33px;
  overflow: hidden;
  transform: skewX(-9deg);
  background: #38214a;
}
@media (min-width: 768px) {
  .item-benefist__hold {
    padding-top: 33px;
  }
}
.item-benefist__icon-wrap {
  transform: skewX(9deg);
  margin: 0 -25px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.item-benefist__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  padding: 9px;
  border-radius: 50%;
  background: #472457;
}
@media (min-width: 576px) {
  .item-benefist__icon {
    width: 50px;
    height: 50px;
    padding: 15px;
  }
}
@media (min-width: 768px) {
  .item-benefist__icon {
    width: 80px;
    height: 80px;
  }
}
@media (min-width: 992px) {
  .item-benefist__icon {
    width: 104px;
    height: 104px;
  }
}
.item-benefist__title {
  position: absolute;
  left: -5px;
  right: -5px;
  bottom: 0;
  font-size: 9px;
  line-height: 1;
  text-align: center;
  background: linear-gradient(to right, rgba(188, 54, 128, 0.95) 10%, rgba(188, 54, 128, 0) 100%);
  text-transform: uppercase;
  color: #fff;
  font-family: "denk_one", "Arial", "Helvetica Neue", "Helvetica", sans-serif;
  padding: 10px 5px;
  transform: skewX(9deg);
}
@media (min-width: 576px) {
  .item-benefist__title {
    left: -10px;
    right: -10px;
    font-size: 14px;
    padding: 20px 5px;
  }
}
@media (min-width: 768px) {
  .item-benefist__title {
    font-size: 16px;
  }
}
@media (min-width: 992px) {
  .item-benefist__title {
    font-size: 20px;
  }
}
@media (min-width: 1200px) {
  .item-benefist__title {
    font-size: 24px;
  }
}
@media (min-width: 768px) {
  .item-benefist__title br {
    display: none;
  }
}

.section-action {
  position: relative;
  padding: 58px 0 0;
}

.action-content {
  text-align: center;
}
.action-content__text {
  max-width: 800px;
  margin: 0 auto;
  padding: 2.6em 0 1.4em;
}
.action-content__button-wrap {
  display: flex;
  justify-content: center;
  flex-direction: column;
  gap: 20px;
}
@media (min-width: 768px) {
  .action-content__button-wrap {
    flex-direction: row;
  }
}

.section-info {
  position: relative;
  display: flex;
  align-items: center;
  min-height: 80vh;
  padding: 390px 0 50px;
}
@media (min-width: 768px) {
  .section-info {
    padding: 461px 0 50px;
  }
}
.section-info--check .info-block:after {
  background-image: url("../images/shadow-2.png");
}
.section-info--check .info-block__hold:after {
  background-image: url("../images/img-app-02.png");
}
.section-info--check .info-block mark {
  color: #1ff23d;
}
.section-info--check .info-block a {
  color: #1ff23d;
}

.info-block {
  text-align: center;
  position: relative;
}
.info-block:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translate(-50%, 42%);
  width: 632px;
  height: 357px;
  background-image: url("../images/shadow-1.png");
  background-size: contain;
  background-position: 50% 0;
  background-repeat: no-repeat;
}
.info-block__hold {
  position: relative;
  z-index: 1;
  max-width: 642px;
  width: 100%;
  margin: 0 auto;
  background: rgba(34, 26, 51, 0.9);
  border-radius: 9px;
  border: 1px solid #3c3653;
}
.info-block__hold:before {
  content: "";
  position: absolute;
  z-index: -1;
  left: 50%;
  top: -333px;
  transform: translateX(-50%);
  width: 1449px;
  height: 618px;
  background-image: url("../images/bg-app.png");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50% 0;
}
.info-block__hold:after {
  content: "";
  position: absolute;
  z-index: -1;
  left: 50%;
  top: -270px;
  transform: translateX(-50%);
  width: 600px;
  height: 418px;
  background-image: url("../images/img-app-01.png");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50% 0;
}
@media (min-width: 768px) {
  .info-block__hold:after {
    width: 756px;
    height: 525px;
    top: -339px;
  }
}
.info-block__bg {
  padding: 10px 30px 14px;
  background: rgba(34, 26, 51, 0.9);
  border-radius: 9px;
}
.info-block__icon {
  text-align: center;
}
.info-block__content {
  padding: 3px 0;
}
@media (min-width: 768px) {
  .info-block__content {
    padding: 3px 45px;
  }
}
.info-block h1 {
  margin: 0;
  text-transform: uppercase;
  font-size: 24px;
  line-height: 1;
  font-family: "denk_one", "Arial", "Helvetica Neue", "Helvetica", sans-serif;
}
.info-block mark {
  color: #e9226d;
  background: none;
}
.info-block__footer {
  margin-top: 23px;
  font-size: 14px;
  line-height: 1;
}
.info-block a {
  color: #f1be2b;
  text-decoration: underline;
  text-transform: uppercase;
}
.info-block a:hover {
  text-decoration: none;
}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInZlbmRvcnMvX25vcm1hbGl6ZS5zY3NzIiwidmVuZG9ycy9fZm9udHMuc2NzcyIsInZlbmRvcnMvX2ZhbmN5Ym94LnNjc3MiLCJ2ZW5kb3JzL19zd2lwZXIuc2NzcyIsImJhc2UvX2Jhc2Uuc2NzcyIsImFic3RyYWN0cy9fdmFyaWFibGVzLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvaW5jbHVkZS1tZWRpYS9kaXN0L19pbmNsdWRlLW1lZGlhLnNjc3MiLCJiYXNlL19oZWxwZXJzLnNjc3MiLCJhYnN0cmFjdHMvX2Z1bmN0aW9ucy5zY3NzIiwiYmFzZS9fdHlwb2dyYXBoeS5zY3NzIiwiYmFzZS9fZm9ybXMuc2NzcyIsImFic3RyYWN0cy9fbWl4aW5zLnNjc3MiLCJiYXNlL193ZWJfYWNjZXNzaWJpbGl0eS5zY3NzIiwibGF5b3V0L19oZWFkZXIuc2NzcyIsImxheW91dC9fY29tbW9uLnNjc3MiLCJsYXlvdXQvX2Zvb3Rlci5zY3NzIiwiY29tcG9uZW50cy9fYnV0dG9uLnNjc3MiLCJjb21wb25lbnRzL19zZWN0aW9uLWhlcm8uc2NzcyIsImNvbXBvbmVudHMvX3NlY3Rpb24tb3B0aW9ucy5zY3NzIiwiY29tcG9uZW50cy9fc2VjdGlvbi10ZXh0LnNjc3MiLCJjb21wb25lbnRzL19zZWN0aW9uLXZpZGVvLnNjc3MiLCJjb21wb25lbnRzL19zZWN0aW9uLWFjdG9yLnNjc3MiLCJjb21wb25lbnRzL19zZWN0aW9uLWNvbnRyb2wuc2NzcyIsImNvbXBvbmVudHMvX3NlY3Rpb24tZnVsbC1pbWFnZS5zY3NzIiwiY29tcG9uZW50cy9fc2VjdGlvbi1pbWFnZS1saW5lLnNjc3MiLCJjb21wb25lbnRzL19zZWN0aW9uLWhlYWRpbmcuc2NzcyIsImNvbXBvbmVudHMvX3NlY3Rpb24tcG9zdHMuc2NzcyIsImNvbXBvbmVudHMvX3NlY3Rpb24tam9pbi5zY3NzIiwiY29tcG9uZW50cy9fc2VjdGlvbi1nYWxsZXJ5LnNjc3MiLCJjb21wb25lbnRzL19zZWN0aW9uLWJlbmVmaXRzLnNjc3MiLCJjb21wb25lbnRzL19zZWN0aW9uLWFjdGlvbi5zY3NzIiwiY29tcG9uZW50cy9fc2VjdGlvbi1pbmZvLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7QUFFQTtBQUFBO0FBR0E7QUFBQTtBQUFBO0FBQUE7QUFLQTtFQUNJO0FBQ0E7RUFDQTtBQUNBOzs7QUFHSjtBQUFBO0FBR0E7QUFBQTtBQUFBO0FBSUE7RUFDSTs7O0FBR0o7QUFBQTtBQUFBO0FBSUE7RUFDSTs7O0FBR0o7QUFBQTtBQUFBO0FBQUE7QUFLQTtFQUNJO0VBQ0E7OztBQUdKO0FBQUE7QUFHQTtBQUFBO0FBQUE7QUFBQTtBQUtBO0VBQ0k7QUFDQTtFQUNBO0FBQ0E7RUFDQTtBQUNBOzs7QUFHSjtBQUFBO0FBQUE7QUFBQTtBQUtBO0VBQ0k7QUFDQTtFQUNBO0FBQ0E7OztBQUdKO0FBQUE7QUFHQTtBQUFBO0FBQUE7QUFJQTtFQUNJOzs7QUFHSjtBQUFBO0FBQUE7QUFBQTtBQUtBO0VBQ0k7QUFDQTtFQUNBO0FBQ0E7RUFDQTtBQUNBOzs7QUFHSjtBQUFBO0FBQUE7QUFJQTtBQUFBO0VBRUk7OztBQUdKO0FBQUE7QUFBQTtBQUFBO0FBS0E7QUFBQTtBQUFBO0VBR0k7QUFDQTtFQUNBO0FBQ0E7OztBQUdKO0FBQUE7QUFBQTtBQUlBO0VBQ0k7OztBQUdKO0FBQUE7QUFBQTtBQUFBO0FBS0E7QUFBQTtFQUVJO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtFQUNJOzs7QUFHSjtFQUNJOzs7QUFHSjtBQUFBO0FBR0E7QUFBQTtBQUFBO0FBSUE7RUFDSTs7O0FBR0o7QUFBQTtBQUdBO0FBQUE7QUFBQTtBQUFBO0FBS0E7QUFBQTtBQUFBO0FBQUE7QUFBQTtFQUtJO0FBQ0E7RUFDQTtBQUNBO0VBQ0E7QUFDQTtFQUNBO0FBQ0E7OztBQUdKO0FBQUE7QUFBQTtBQUFBO0FBS0E7QUFBQTtBQUVJO0VBQ0E7OztBQUdKO0FBQUE7QUFBQTtBQUFBO0FBS0E7QUFBQTtBQUVJO0VBQ0E7OztBQUdKO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQUFBO0VBSUk7OztBQUdKO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQUFBO0VBSUk7RUFDQTs7O0FBR0o7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBQUE7RUFJSTs7O0FBR0o7QUFBQTtBQUFBO0FBSUE7RUFDSTs7O0FBR0o7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBT0E7RUFDSTtBQUNBO0VBQ0E7QUFDQTtFQUNBO0FBQ0E7RUFDQTtBQUNBO0VBQ0E7QUFDQTtFQUNBO0FBQ0E7OztBQUdKO0FBQUE7QUFBQTtBQUlBO0VBQ0k7OztBQUdKO0FBQUE7QUFBQTtBQUlBO0VBQ0k7OztBQUdKO0FBQUE7QUFBQTtBQUFBO0FBS0E7QUFBQTtFQUVJO0FBQ0E7RUFDQTtBQUNBOzs7QUFHSjtBQUFBO0FBQUE7QUFJQTtBQUFBO0VBRUk7OztBQUdKO0FBQUE7QUFBQTtBQUFBO0FBS0E7RUFDSTtBQUNBO0VBQ0E7QUFDQTs7O0FBR0o7QUFBQTtBQUFBO0FBSUE7RUFDSTs7O0FBR0o7QUFBQTtBQUFBO0FBQUE7QUFLQTtFQUNJO0FBQ0E7RUFDQTtBQUNBOzs7QUFHSjtBQUFBO0FBR0E7QUFBQTtBQUFBO0FBSUE7RUFDSTs7O0FBR0o7QUFBQTtBQUFBO0FBSUE7RUFDSTs7O0FBR0o7QUFBQTtBQUdBO0FBQUE7QUFBQTtBQUlBO0VBQ0k7OztBQUdKO0FBQUE7QUFBQTtBQUlBO0VBQ0k7OztBQ3pYSjtFQUNJO0VBQ0EsS0FDSTtFQUVKO0VBQ0E7RUFDQTs7QUFHSjtFQUNJO0VBQ0EsS0FDSTtFQUVKO0VBQ0E7RUFDQTs7QUFHSjtFQUNJO0VBQ0EsS0FDSTtFQUVKO0VBQ0E7RUFDQTs7QUMzQko7RUFDSTs7O0FBR0o7RUFDSTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTs7O0FBR0o7QUFBQTtBQUFBO0FBQUE7RUFJSTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtFQUNBOzs7QUFHSjtBQUFBO0FBQUE7QUFBQTtFQUlJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7QUFBQTtBQUFBO0FBQUE7RUFJSTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTs7O0FBR0o7RUFDSTtBQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdKO0FBQUE7QUFBQTtBQUFBO0VBSUk7OztBQUdKO0VBQ0k7RUFDQTs7O0FBR0o7RUFDSTs7O0FBR0o7RUFDSTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTs7O0FBR0o7RUFDSTs7O0FBR0o7QUFBQTtFQUVJO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTs7O0FBR0o7RUFDSTs7O0FBR0o7QUFBQTtFQUVJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTs7O0FBR0o7QUFBQTtBQUFBO0FBQUE7RUFJSTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTs7O0FBR0o7RUFDSTs7O0FBR0o7RUFDSTs7O0FBR0o7QUFBQTtFQUVJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdKO0FBQ0E7RUFDSTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtBQUVBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7QUFBQTtBQUFBO0VBR0k7OztBQUdKO0VBQ0k7OztBQUdKO0VBQ0k7OztBQUdKO0VBQ0k7OztBQUdKO0FBQUE7RUFFSTtFQUNBO0VBQ0E7OztBQUdKO0FBQ0E7RUFDSTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7OztBQUdKO0FBQUE7RUFFSTs7O0FBR0o7QUFBQTtFQUVJOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtBQUVBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtFQUNJOzs7QUFHSjtBQUFBO0VBRUk7OztBQUdKO0FBRUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7OztBQUdKO0VBQ0k7RUFDQTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTs7O0FBR0o7QUFFQTtFQUNJO0VBUUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtJQUNJOzs7QUFJUjtFQUNJOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTs7O0FBR0o7QUFBQTtBQUFBO0VBR0k7RUFDQTs7O0FBR0o7RUFDSTtFQUNBOzs7QUFHSjtBQUVBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtJQUNJOzs7QUFJUjtBQUVBO0VBQ0k7OztBQUdKO0FBRUE7RUFDSTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTs7O0FBR0o7QUFFQTtBQUFBO0VBRUk7RUFDQTs7O0FBR0o7RUFDSTs7O0FBR0o7QUFFQTtFQUNJO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTs7O0FBR0o7RUFDSTtFQUNBOzs7QUFHSjtBQUVBO0VBQ0k7RUFDQTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7OztBQUdKO0FBRUE7RUFDSTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTs7O0FBR0o7QUFFQTtFQUNJOzs7QUFHSjtFQUNJOzs7QUFHSjtFQUNJOzs7QUFHSjtBQUNBO0VBQ0k7SUFDSTtJQUNBOztFQUdKO0lBQ0k7O0VBR0o7SUFDSTs7RUFHSjtJQUNJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7O0VBR0o7SUFDSTtJQUNBOztFQUdKO0lBQ0k7TUFDSTtNQUNBOzs7O0FBS1o7QUFFQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7QUFBQTtFQUVJOzs7QUFHSjtFQUNJOzs7QUFHSjtFQUNJOzs7QUFHSjtFQUNJOzs7QUFHSjtFQUNJOzs7QUFHSjtFQUNJOzs7QUFHSjtFQUNJOzs7QUFHSjtFQUNJOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7QUFFQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7OztBQUdKO0VBQ0k7OztBQUdKO0VBQ0k7OztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTs7O0FBR0o7RUFDSTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7OztBQUdKO0VBQ0k7OztBQUdKO0FBQ0E7RUFDSTtJQUNJOztFQUdKO0lBQ0k7O0VBR0o7SUFDSTs7O0FDOTNCUjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBWUE7RUFDSTs7O0FBRUo7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVKO0VBQ0k7OztBQUVKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBSUE7RUFDQTs7O0FBRUo7QUFBQTtBQUFBO0VBR0k7OztBQUVKO0VBQ0k7OztBQUVKO0VBQ0k7OztBQUVKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFSjtFQUNJOzs7QUFFSjtBQUFBO0VBRUk7OztBQUVKO0VBQ0k7RUFDQTs7O0FBRUo7RUFDSTtFQUNBOzs7QUFFSjtFQUNJOzs7QUFFSjtFQUNJOzs7QUFFSjtFQUNJOztBQUNBO0FBQUE7RUFFSTs7O0FBSUo7RUFDSTtFQUNBO0VBQ0E7O0FBQ0E7RUFDSTs7QUFHUjtFQUNJOztBQUdBO0VBQ0k7O0FBRUo7RUFDSTtFQUNBOztBQUVKO0VBQ0k7O0FBSUo7RUFDSTs7QUFFSjtFQUNJO0VBQ0E7O0FBRUo7RUFDSTs7QUFJSjtFQUNJOztBQUVKO0VBQ0k7O0FBSUo7RUFDSTtFQUNBO0VBQ0E7O0FBRUo7RUFDSTtFQUNBOztBQUlKO0VBQ0k7O0FBRUo7RUFDSTtFQUNBO0VBQ0E7O0FBSUo7RUFDSTs7QUFFSjtFQUNJO0VBQ0E7RUFDQTs7O0FBS1I7QUFBQTtBQUFBO0FBQUE7QUFBQTtFQUtJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVKO0VBQ0k7O0FBRUo7RUFDSTs7QUFFSjtFQUNJOztBQUVKO0VBQ0k7O0FBRUo7RUFDSTs7O0FBR1I7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBSUE7QUFBQTtFQUNJOzs7QUFHUjtFQUNJOzs7QUFFSjtFQUNJOzs7QUFFSjtFQUNJO0lBQ0k7O0VBRUo7SUFDSTs7O0FBR1I7RUFDSTtFQUNBOzs7QUFHQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUlKO0VBQ0k7RUFDQTs7O0FBSUo7RUFDSTtFQUNBOzs7QUFHUjtFQUNJOzs7QUFFSjtBQUFBO0VBRUk7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUNBO0FBQUE7RUFDSTtFQUNBO0VBQ0E7O0FBRUo7QUFBQTtFQUNJO0VBQ0E7RUFDQTs7QUFFSjtBQUFBO0VBQ0k7O0FBRUo7QUFBQTtBQUFBO0FBQUE7RUFFSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdSO0VBQ0k7OztBQUVKO0FBQUE7RUFFSTtFQUNBOzs7QUFFSjtFQUNJO0VBQ0E7O0FBQ0E7QUFBQTtFQUVJOzs7QUFHUjtFQUNJO0VBQ0E7OztBQUdBO0FBQUE7QUFBQTtBQUFBO0VBSUk7RUFDQTtFQUNBOztBQUVKO0FBQUE7RUFJSTtFQUNBOztBQUVKO0FBQUE7RUFJSTtFQUNBOztBQU1BO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtFQUVJOztBQUtKO0FBQUE7QUFBQTtFQUVJOzs7QUFLUjtBQUFBO0FBQUE7QUFBQTtFQUlJO0VBQ0E7RUFDQTtFQUNBOztBQUVKO0FBQUE7RUFFSTtFQUNBOztBQUNBO0FBQUE7QUFBQTtBQUFBO0VBRUk7O0FBR1I7QUFBQTtFQUVJO0VBQ0E7O0FBQ0E7QUFBQTtBQUFBO0FBQUE7RUFFSTs7O0FBSVo7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUNBO0VBQ0k7O0FBRUo7RUFFSTs7O0FBR1I7QUFBQTtBQUFBO0FBQUE7RUFJSTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUo7RUFDSTtFQUNBOztBQUNBO0VBQ0k7RUFDQTs7QUFFSjtBQUFBO0VBRUk7O0FBRUo7RUFDSTs7QUFFSjtFQUNJOztBQUVKO0VBQ0k7O0FBRUo7RUFDSTs7O0FBR1I7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUlBO0VBQ0E7O0FBSUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVKO0VBQ0k7O0FBRUo7RUFDSTs7O0FBR1I7RUFDSTtFQUNBOzs7QUFFSjtBQUFBO0VBRUk7RUFDQTtFQUNBO0VBQ0E7O0FBQ0E7QUFBQTtFQUNJO0VBQ0E7O0FBRUo7QUFBQTtFQUNJO0VBQ0E7RUFDQTs7QUFDQTtBQUFBO0VBQ0k7RUFDQSxZQUNJOzs7QUFPWjtBQUFBO0VBQ0k7O0FBRUo7QUFBQTtFQUNJO0VBQ0E7RUFDQTs7QUFDQTtBQUFBO0VBQ0ksWUFDSTs7O0FBS2hCO0VBR0ksWUFDSTs7O0FBR1I7RUFDSTs7O0FBRUo7RUFDSTtFQUNBOztBQUNBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFSjtFQUNJOztBQUVKO0VBSUk7RUFDQTtFQUNBO0VBQ0E7O0FBRUo7RUFJSTtFQUNBO0VBQ0E7RUFDQTs7O0FBR1I7RUFDSTs7O0FBRUo7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7QUFDQTtFQUVJOztBQUVKO0VBRUk7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUo7RUFFSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR1I7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUo7RUFDSTs7O0FBRUo7RUFDSTs7O0FBRUo7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBQ0E7QUFBQTtBQUFBO0VBR0k7RUFDQTtFQUNBOzs7QUFHUjtFQUNJO0VBQ0E7OztBQUVKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFSjtFQUNJO0VBQ0E7OztBQUVKO0VBQ0k7OztBQUVKO0VBQ0k7RUFDQTs7O0FBSUk7RUFDSTs7QUFHUjtFQUNJO0VBQ0E7O0FBQ0E7RUFDSTs7QUFHUjtFQUNJOztBQUNBO0VBQ0k7OztBQUlaO0VBQ0k7OztBQUdBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBQ0E7RUFDSTs7QUFHUjtFQUNJOztBQUdBO0VBRUk7O0FBR1I7QUFBQTtBQUFBO0VBR0k7RUFDQTs7QUFFSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUNBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBS1I7RUFDSTtFQUNBOzs7QUFJSjtBQUFBO0FBQUE7QUFBQTtFQUlJO0VBQ0E7OztBQUdSO0VBQ0k7OztBQUdBO0VBQ0k7RUFDQTtFQUNBOztBQUNBO0VBQ0k7O0FBSUo7RUFFSTs7O0FBS1I7QUFBQTtBQUFBO0FBQUE7RUFJSTtFQUNBOzs7QUFJSjtFQUNJO0VBQ0E7RUFDQTs7O0FBR1I7RUFDSTs7O0FBR0E7RUFDSTtFQUNBO0VBQ0E7OztBQzF2QlI7RUFDSTtFQUNBOzs7QUFHSjtBQUFBO0FBQUE7RUFHSTs7O0FBR0o7RUFDSTs7O0FBSUo7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFB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O0VBQ0EsYVY2Q0M7RVU1Q0Q7RUFDQTtFQUNBOztBQUdKO0VBQ0k7RUFDQTtFQUNBOztBVG1jSjtFU3RjQTtJQU1ROzs7QUFJUjtFQUNJOzs7QUMvR1I7RUFDSTtFQUNBLFNYd01VO0VXdk1WO0VBQ0EsYVgrTWM7RVc5TWQ7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFZSSxXWHlMUTtFV3hMUixhWHlFSTtFV3hFSjtFQUlBO0VBQ0E7RUFDQSxjWHNLVztFV3JLWCxlWHNLWTs7QUNvV2hCO0VVMWlCSjtJQWNRO0lBQ0E7OztBVjJoQko7RVUxaUJKO0lBbUJROzs7QUFnQko7RUFDSSxPWE9BO0VXTkEsWVhvTGlCO0VXbkxqQixjWG1MaUI7RVdsTGpCOztBQUVBO0VBQ0ksT1hDSjtFV0FJLFlYd0xtQjtFV3ZMbkIsY1g2S2E7O0FXektyQjtFQUNJLE9YL0NBO0VXZ0RBLFlYMkxpQjtFVzFMakI7RUFDQTtFQUNBLGNYeUxtQjs7QVd2TG5CO0VBQ0ksT1h0REo7RVd1REksWVh3TG1COztBV3BMM0I7RUFDSSxPWDJMYztFVzFMZCxZWG5ERztFV29ESDtFQUNBO0VBQ0EsY1h5THFCO0VXeExyQjs7QUFFQTtFQUNJLE9YcEVKO0VXcUVJLFlYM0REO0VXNERDLGNYdUx1Qjs7QVduTC9CO0VBQ0ksU1hpSVM7RVdoSVQsV1htSVc7RVdsSVgsYVhxSWE7RVdwSWIsZVh1SGU7O0FXcEhuQjtFQUNJLFNYMkhTO0VXMUhUO0VBQ0EsYVgrSGE7RVc5SGIsZVhpSGU7RVdoSGY7O0FWa2RKO0VVdmRBO0lBUVEsV1h1SE87Ozs7QVdsSG5CO0VBQ0k7RUFDQTtFQUNBOztBQUVBO0VBQ0k7OztBQ3pHUjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FYd2lCQTtFVzdpQko7SUFRUTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBWDBoQko7RVdsaUJBO0lBZVE7OztBWG1oQlI7RVcvZ0JBO0lBRVE7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lB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O0lBRVE7Ozs7QUN2TGhCO0VBQ0k7RUFDQTs7O0FBR0o7RUFDSTs7QUFFQTtFQUNJO0VBQ0E7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBOztBeEIyaEJKO0V3Qi9oQkE7SUFPUTs7OztBQ3JCWjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0F6QndpQkE7RXlCN2lCSjtJQVFROzs7QUFLSTtFQUNJOztBQUlBO0VBQ0k7O0FBSVI7RUFDSSxPMUJtQlI7O0EwQmhCSTtFQUNJLE8xQmVSOzs7QTBCVFI7RUFDSTtFQUNBOztBQUVBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0F6Qm9kUjtFeUJoZUk7SUFlUTtJQUNBO0lBQ0E7OztBQUlaO0VBQ0k7RUFDQTtFQUNBOztBQUdKO0VBQ0k7O0FBR0o7RUFDSTs7QXpCZ2NKO0V5QmpjQTtJQUlROzs7QUFJUjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsYTFCcEJNOztBMEJ1QlY7RUFDSSxPMUJ0RkY7RTBCdUZFOztBQUdKO0VBQ0k7RUFDQTtFQUNBOztBQUdKO0VBQ0ksTzFCL0ZDO0UwQmdHRDtFQUNBOztBQUVBO0VBQ0kiLCJmaWxlIjoic3R5bGUuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLyohIG5vcm1hbGl6ZS5jc3MgdjguMC4xIHwgTUlUIExpY2Vuc2UgfCBnaXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzcyAqL1xuXG4vKiBEb2N1bWVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBsaW5lIGhlaWdodCBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBQcmV2ZW50IGFkanVzdG1lbnRzIG9mIGZvbnQgc2l6ZSBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2VzIGluIGlPUy5cbiAqL1xuXG5odG1sIHtcbiAgICBsaW5lLWhlaWdodDogMS4xNTtcbiAgICAvKiAxICovXG4gICAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xuICAgIC8qIDIgKi9cbn1cblxuLyogU2VjdGlvbnNcbiAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gICAqIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2Vycy5cbiAgICovXG5cbmJvZHkge1xuICAgIG1hcmdpbjogMDtcbn1cblxuLyoqXG4gICAqIFJlbmRlciB0aGUgYG1haW5gIGVsZW1lbnQgY29uc2lzdGVudGx5IGluIElFLlxuICAgKi9cblxubWFpbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qKlxuICAgKiBDb3JyZWN0IHRoZSBmb250IHNpemUgYW5kIG1hcmdpbiBvbiBgaDFgIGVsZW1lbnRzIHdpdGhpbiBgc2VjdGlvbmAgYW5kXG4gICAqIGBhcnRpY2xlYCBjb250ZXh0cyBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBTYWZhcmkuXG4gICAqL1xuXG5oMSB7XG4gICAgZm9udC1zaXplOiAyZW07XG4gICAgbWFyZ2luOiAwLjY3ZW0gMDtcbn1cblxuLyogR3JvdXBpbmcgY29udGVudFxuICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAgICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gRmlyZWZveC5cbiAgICogMi4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZSBhbmQgSUUuXG4gICAqL1xuXG5ociB7XG4gICAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gICAgLyogMSAqL1xuICAgIGhlaWdodDogMDtcbiAgICAvKiAxICovXG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgLyogMiAqL1xufVxuXG4vKipcbiAgICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAgICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICAgKi9cblxucHJlIHtcbiAgICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7XG4gICAgLyogMSAqL1xuICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgIC8qIDIgKi9cbn1cblxuLyogVGV4dC1sZXZlbCBzZW1hbnRpY3NcbiAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gICAqIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIG9uIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cbiAgICovXG5cbmEge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4vKipcbiAgICogMS4gUmVtb3ZlIHRoZSBib3R0b20gYm9yZGVyIGluIENocm9tZSA1Ny1cbiAgICogMi4gQWRkIHRoZSBjb3JyZWN0IHRleHQgZGVjb3JhdGlvbiBpbiBDaHJvbWUsIEVkZ2UsIElFLCBPcGVyYSwgYW5kIFNhZmFyaS5cbiAgICovXG5cbmFiYnJbdGl0bGVdIHtcbiAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgIC8qIDEgKi9cbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAvKiAyICovXG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkO1xuICAgIC8qIDIgKi9cbn1cblxuLyoqXG4gICAqIEFkZCB0aGUgY29ycmVjdCBmb250IHdlaWdodCBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmkuXG4gICAqL1xuXG5iLFxuc3Ryb25nIHtcbiAgICBmb250LXdlaWdodDogYm9sZGVyO1xufVxuXG4vKipcbiAgICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAgICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICAgKi9cblxuY29kZSxcbmtiZCxcbnNhbXAge1xuICAgIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTtcbiAgICAvKiAxICovXG4gICAgZm9udC1zaXplOiAxZW07XG4gICAgLyogMiAqL1xufVxuXG4vKipcbiAgICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gICAqL1xuXG5zbWFsbCB7XG4gICAgZm9udC1zaXplOiA4MCU7XG59XG5cbi8qKlxuICAgKiBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBlbGVtZW50cyBmcm9tIGFmZmVjdGluZyB0aGUgbGluZSBoZWlnaHQgaW5cbiAgICogYWxsIGJyb3dzZXJzLlxuICAgKi9cblxuc3ViLFxuc3VwIHtcbiAgICBmb250LXNpemU6IDc1JTtcbiAgICBsaW5lLWhlaWdodDogMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5zdWIge1xuICAgIGJvdHRvbTogLTAuMjVlbTtcbn1cblxuc3VwIHtcbiAgICB0b3A6IC0wLjVlbTtcbn1cblxuLyogRW1iZWRkZWQgY29udGVudFxuICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAgICogUmVtb3ZlIHRoZSBib3JkZXIgb24gaW1hZ2VzIGluc2lkZSBsaW5rcyBpbiBJRSAxMC5cbiAgICovXG5cbmltZyB7XG4gICAgYm9yZGVyLXN0eWxlOiBub25lO1xufVxuXG4vKiBGb3Jtc1xuICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAgICogMS4gQ2hhbmdlIHRoZSBmb250IHN0eWxlcyBpbiBhbGwgYnJvd3NlcnMuXG4gICAqIDIuIFJlbW92ZSB0aGUgbWFyZ2luIGluIEZpcmVmb3ggYW5kIFNhZmFyaS5cbiAgICovXG5cbmJ1dHRvbixcbmlucHV0LFxub3B0Z3JvdXAsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gICAgLyogMSAqL1xuICAgIGZvbnQtc2l6ZTogMTAwJTtcbiAgICAvKiAxICovXG4gICAgbGluZS1oZWlnaHQ6IDEuMTU7XG4gICAgLyogMSAqL1xuICAgIG1hcmdpbjogMDtcbiAgICAvKiAyICovXG59XG5cbi8qKlxuICAgKiBTaG93IHRoZSBvdmVyZmxvdyBpbiBJRS5cbiAgICogMS4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZS5cbiAgICovXG5cbmJ1dHRvbixcbmlucHV0IHtcbiAgICAvKiAxICovXG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbi8qKlxuICAgKiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEVkZ2UsIEZpcmVmb3gsIGFuZCBJRS5cbiAgICogMS4gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBGaXJlZm94LlxuICAgKi9cblxuYnV0dG9uLFxuc2VsZWN0IHtcbiAgICAvKiAxICovXG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG5cbi8qKlxuICAgKiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICAgKi9cblxuYnV0dG9uLFxuW3R5cGU9XCJidXR0b25cIl0sXG5bdHlwZT1cInJlc2V0XCJdLFxuW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xufVxuXG4vKipcbiAgICogUmVtb3ZlIHRoZSBpbm5lciBib3JkZXIgYW5kIHBhZGRpbmcgaW4gRmlyZWZveC5cbiAgICovXG5cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwiYnV0dG9uXCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJyZXNldFwiXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwic3VibWl0XCJdOjotbW96LWZvY3VzLWlubmVyIHtcbiAgICBib3JkZXItc3R5bGU6IG5vbmU7XG4gICAgcGFkZGluZzogMDtcbn1cblxuLyoqXG4gICAqIFJlc3RvcmUgdGhlIGZvY3VzIHN0eWxlcyB1bnNldCBieSB0aGUgcHJldmlvdXMgcnVsZS5cbiAgICovXG5cbmJ1dHRvbjotbW96LWZvY3VzcmluZyxcblt0eXBlPVwiYnV0dG9uXCJdOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJyZXNldFwiXTotbW96LWZvY3VzcmluZyxcblt0eXBlPVwic3VibWl0XCJdOi1tb3otZm9jdXNyaW5nIHtcbiAgICBvdXRsaW5lOiAxcHggZG90dGVkIEJ1dHRvblRleHQ7XG59XG5cbi8qKlxuICAgKiBDb3JyZWN0IHRoZSBwYWRkaW5nIGluIEZpcmVmb3guXG4gICAqL1xuXG5maWVsZHNldCB7XG4gICAgcGFkZGluZzogMC4zNWVtIDAuNzVlbSAwLjYyNWVtO1xufVxuXG4vKipcbiAgICogMS4gQ29ycmVjdCB0aGUgdGV4dCB3cmFwcGluZyBpbiBFZGdlIGFuZCBJRS5cbiAgICogMi4gQ29ycmVjdCB0aGUgY29sb3IgaW5oZXJpdGFuY2UgZnJvbSBgZmllbGRzZXRgIGVsZW1lbnRzIGluIElFLlxuICAgKiAzLiBSZW1vdmUgdGhlIHBhZGRpbmcgc28gZGV2ZWxvcGVycyBhcmUgbm90IGNhdWdodCBvdXQgd2hlbiB0aGV5IHplcm8gb3V0XG4gICAqICAgIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gYWxsIGJyb3dzZXJzLlxuICAgKi9cblxubGVnZW5kIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIC8qIDEgKi9cbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAvKiAyICovXG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgLyogMSAqL1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAvKiAxICovXG4gICAgcGFkZGluZzogMDtcbiAgICAvKiAzICovXG4gICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgICAvKiAxICovXG59XG5cbi8qKlxuICAgKiBBZGQgdGhlIGNvcnJlY3QgdmVydGljYWwgYWxpZ25tZW50IGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuICAgKi9cblxucHJvZ3Jlc3Mge1xuICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuLyoqXG4gICAqIFJlbW92ZSB0aGUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUgMTArLlxuICAgKi9cblxudGV4dGFyZWEge1xuICAgIG92ZXJmbG93OiBhdXRvO1xufVxuXG4vKipcbiAgICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gSUUgMTAuXG4gICAqIDIuIFJlbW92ZSB0aGUgcGFkZGluZyBpbiBJRSAxMC5cbiAgICovXG5cblt0eXBlPVwiY2hlY2tib3hcIl0sXG5bdHlwZT1cInJhZGlvXCJdIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIC8qIDEgKi9cbiAgICBwYWRkaW5nOiAwO1xuICAgIC8qIDIgKi9cbn1cblxuLyoqXG4gICAqIENvcnJlY3QgdGhlIGN1cnNvciBzdHlsZSBvZiBpbmNyZW1lbnQgYW5kIGRlY3JlbWVudCBidXR0b25zIGluIENocm9tZS5cbiAgICovXG5cblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICAgIGhlaWdodDogYXV0bztcbn1cblxuLyoqXG4gICAqIDEuIENvcnJlY3QgdGhlIG9kZCBhcHBlYXJhbmNlIGluIENocm9tZSBhbmQgU2FmYXJpLlxuICAgKiAyLiBDb3JyZWN0IHRoZSBvdXRsaW5lIHN0eWxlIGluIFNhZmFyaS5cbiAgICovXG5cblt0eXBlPVwic2VhcmNoXCJdIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDtcbiAgICAvKiAxICovXG4gICAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7XG4gICAgLyogMiAqL1xufVxuXG4vKipcbiAgICogUmVtb3ZlIHRoZSBpbm5lciBwYWRkaW5nIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIG1hY09TLlxuICAgKi9cblxuW3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLyoqXG4gICAqIDEuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gICAqIDIuIENoYW5nZSBmb250IHByb3BlcnRpZXMgdG8gYGluaGVyaXRgIGluIFNhZmFyaS5cbiAgICovXG5cbjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xuICAgIC8qIDEgKi9cbiAgICBmb250OiBpbmhlcml0O1xuICAgIC8qIDIgKi9cbn1cblxuLyogSW50ZXJhY3RpdmVcbiAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gRWRnZSwgSUUgMTArLCBhbmQgRmlyZWZveC5cbiAgICovXG5cbmRldGFpbHMge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKlxuICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBhbGwgYnJvd3NlcnMuXG4gICAqL1xuXG5zdW1tYXJ5IHtcbiAgICBkaXNwbGF5OiBsaXN0LWl0ZW07XG59XG5cbi8qIE1pc2NcbiAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwKy5cbiAgICovXG5cbnRlbXBsYXRlIHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuXG4vKipcbiAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTAuXG4gICAqL1xuXG5baGlkZGVuXSB7XG4gICAgZGlzcGxheTogbm9uZTtcbn0iLCJAZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogXCJBbGJlcnRcIjtcbiAgICBzcmM6XG4gICAgICAgIHVybChcIi4uL2ZvbnRzL0FsYmVydFNhbnMtUmVndWxhci53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSxcbiAgICAgICAgdXJsKFwiLi4vZm9udHMvQWxiZXJ0U2Fucy1SZWd1bGFyLndvZmZcIikgZm9ybWF0KFwid29mZlwiKTtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LWRpc3BsYXk6IHN3YXA7XG59XG5cbkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiBcIkFsYmVydFwiO1xuICAgIHNyYzpcbiAgICAgICAgdXJsKFwiLi4vZm9udHMvQWxiZXJ0U2Fucy1NZWRpdW0ud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksXG4gICAgICAgIHVybChcIi4uL2ZvbnRzL0FsYmVydFNhbnMtTWVkaXVtLndvZmZcIikgZm9ybWF0KFwid29mZlwiKTtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LWRpc3BsYXk6IHN3YXA7XG59XG5cbkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiBcImRlbmtfb25lXCI7XG4gICAgc3JjOlxuICAgICAgICB1cmwoXCIuLi9mb250cy9kZW5rb25lLXJlZ3VsYXItd2ViZm9udC53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSxcbiAgICAgICAgdXJsKFwiLi4vZm9udHMvZGVua29uZS1yZWd1bGFyLXdlYmZvbnQud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtZGlzcGxheTogc3dhcDtcbn1cbiIsImJvZHkuY29tcGVuc2F0ZS1mb3Itc2Nyb2xsYmFyIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uZmFuY3lib3gtYWN0aXZlIHtcbiAgICBoZWlnaHQ6IGF1dG87XG59XG5cbi5mYW5jeWJveC1pcy1oaWRkZW4ge1xuICAgIGxlZnQ6IC05OTk5cHg7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICAgIHRvcDogLTk5OTlweDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi5mYW5jeWJveC1jb250YWluZXIge1xuICAgIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBsZWZ0OiAwO1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgdG9wOiAwO1xuICAgIC1tcy10b3VjaC1hY3Rpb246IG1hbmlwdWxhdGlvbjtcbiAgICB0b3VjaC1hY3Rpb246IG1hbmlwdWxhdGlvbjtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgei1pbmRleDogOTk5OTI7XG59XG5cbi5mYW5jeWJveC1jb250YWluZXIgKiB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuLmZhbmN5Ym94LW91dGVyLFxuLmZhbmN5Ym94LWlubmVyLFxuLmZhbmN5Ym94LWJnLFxuLmZhbmN5Ym94LXN0YWdlIHtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDA7XG4gICAgdG9wOiAwO1xufVxuXG4uZmFuY3lib3gtb3V0ZXIge1xuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xufVxuXG4uZmFuY3lib3gtYmcge1xuICAgIGJhY2tncm91bmQ6IHJnYigzMCwgMzAsIDMwKTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IGluaGVyaXQ7XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eTtcbiAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKC40NywgMCwgLjc0LCAuNzEpO1xufVxuXG4uZmFuY3lib3gtaXMtb3BlbiAuZmFuY3lib3gtYmcge1xuICAgIG9wYWNpdHk6IC45O1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoLjIyLCAuNjEsIC4zNiwgMSk7XG59XG5cbi5mYW5jeWJveC1pbmZvYmFyLFxuLmZhbmN5Ym94LXRvb2xiYXIsXG4uZmFuY3lib3gtY2FwdGlvbixcbi5mYW5jeWJveC1uYXZpZ2F0aW9uIC5mYW5jeWJveC1idXR0b24ge1xuICAgIGRpcmVjdGlvbjogbHRyO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgLjI1cyBlYXNlLCB2aXNpYmlsaXR5IDBzIGVhc2UgLjI1cztcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgei1pbmRleDogOTk5OTc7XG59XG5cbi5mYW5jeWJveC1zaG93LWluZm9iYXIgLmZhbmN5Ym94LWluZm9iYXIsXG4uZmFuY3lib3gtc2hvdy10b29sYmFyIC5mYW5jeWJveC10b29sYmFyLFxuLmZhbmN5Ym94LXNob3ctY2FwdGlvbiAuZmFuY3lib3gtY2FwdGlvbixcbi5mYW5jeWJveC1zaG93LW5hdiAuZmFuY3lib3gtbmF2aWdhdGlvbiAuZmFuY3lib3gtYnV0dG9uIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgLjI1cyBlYXNlIDBzLCB2aXNpYmlsaXR5IDBzIGVhc2UgMHM7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbn1cblxuLmZhbmN5Ym94LWluZm9iYXIge1xuICAgIGNvbG9yOiAjY2NjO1xuICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBzdWJwaXhlbC1hbnRpYWxpYXNlZDtcbiAgICBoZWlnaHQ6IDQ0cHg7XG4gICAgbGVmdDogMDtcbiAgICBsaW5lLWhlaWdodDogNDRweDtcbiAgICBtaW4td2lkdGg6IDQ0cHg7XG4gICAgbWl4LWJsZW5kLW1vZGU6IGRpZmZlcmVuY2U7XG4gICAgcGFkZGluZzogMCAxMHB4O1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIHRvcDogMDtcbiAgICAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7XG4gICAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAgIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcbn1cblxuLmZhbmN5Ym94LXRvb2xiYXIge1xuICAgIHJpZ2h0OiAwO1xuICAgIHRvcDogMDtcbn1cblxuLmZhbmN5Ym94LXN0YWdlIHtcbiAgICBkaXJlY3Rpb246IGx0cjtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gICAgei1pbmRleDogOTk5OTQ7XG59XG5cbi5mYW5jeWJveC1pcy1vcGVuIC5mYW5jeWJveC1zdGFnZSB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLmZhbmN5Ym94LXNsaWRlIHtcbiAgICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAvKiBVc2luZyB3aXRob3V0IHByZWZpeCB3b3VsZCBicmVhayBJRTExICovXG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbGVmdDogMDtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIG92ZXJmbG93OiBhdXRvO1xuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgICBwYWRkaW5nOiA0NHB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgdG9wOiAwO1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHotaW5kZXg6IDk5OTk0O1xufVxuXG4uZmFuY3lib3gtc2xpZGU6OmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZvbnQtc2l6ZTogMDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB3aWR0aDogMDtcbn1cblxuLmZhbmN5Ym94LWlzLXNsaWRpbmcgLmZhbmN5Ym94LXNsaWRlLFxuLmZhbmN5Ym94LXNsaWRlLS1wcmV2aW91cyxcbi5mYW5jeWJveC1zbGlkZS0tY3VycmVudCxcbi5mYW5jeWJveC1zbGlkZS0tbmV4dCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5mYW5jeWJveC1zbGlkZS0taW1hZ2Uge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcGFkZGluZzogNDRweCAwO1xufVxuXG4uZmFuY3lib3gtc2xpZGUtLWltYWdlOjpiZWZvcmUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5mYW5jeWJveC1zbGlkZS0taHRtbCB7XG4gICAgcGFkZGluZzogNnB4O1xufVxuXG4uZmFuY3lib3gtY29udGVudCB7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luOiAwO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBvdmVyZmxvdzogYXV0bztcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gICAgcGFkZGluZzogNDRweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4uZmFuY3lib3gtc2xpZGUtLWltYWdlIC5mYW5jeWJveC1jb250ZW50IHtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoLjUsIDAsIC4xNCwgMSk7XG4gICAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgMTAwJTtcbiAgICBsZWZ0OiAwO1xuICAgIG1heC13aWR0aDogbm9uZTtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgLW1zLXRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0O1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0O1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAgIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgIHotaW5kZXg6IDk5OTk1O1xufVxuXG4uZmFuY3lib3gtY2FuLXpvb21PdXQgLmZhbmN5Ym94LWNvbnRlbnQge1xuICAgIGN1cnNvcjogem9vbS1vdXQ7XG59XG5cbi5mYW5jeWJveC1jYW4tem9vbUluIC5mYW5jeWJveC1jb250ZW50IHtcbiAgICBjdXJzb3I6IHpvb20taW47XG59XG5cbi5mYW5jeWJveC1jYW4tc3dpcGUgLmZhbmN5Ym94LWNvbnRlbnQsXG4uZmFuY3lib3gtY2FuLXBhbiAuZmFuY3lib3gtY29udGVudCB7XG4gICAgY3Vyc29yOiAtd2Via2l0LWdyYWI7XG4gICAgY3Vyc29yOiBncmFiO1xufVxuXG4uZmFuY3lib3gtaXMtZ3JhYmJpbmcgLmZhbmN5Ym94LWNvbnRlbnQge1xuICAgIGN1cnNvcjogLXdlYmtpdC1ncmFiYmluZztcbiAgICBjdXJzb3I6IGdyYWJiaW5nO1xufVxuXG4uZmFuY3lib3gtY29udGFpbmVyIFtkYXRhLXNlbGVjdGFibGU9J3RydWUnXSB7XG4gICAgY3Vyc29yOiB0ZXh0O1xufVxuXG4uZmFuY3lib3gtaW1hZ2UsXG4uZmFuY3lib3gtc3BhY2ViYWxsIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IDA7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIG1heC1oZWlnaHQ6IG5vbmU7XG4gICAgbWF4LXdpZHRoOiBub25lO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAgIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgIHdpZHRoOiAxMDAlO1xufVxuXG4uZmFuY3lib3gtc3BhY2ViYWxsIHtcbiAgICB6LWluZGV4OiAxO1xufVxuXG4uZmFuY3lib3gtc2xpZGUtLXZpZGVvIC5mYW5jeWJveC1jb250ZW50LFxuLmZhbmN5Ym94LXNsaWRlLS1tYXAgLmZhbmN5Ym94LWNvbnRlbnQsXG4uZmFuY3lib3gtc2xpZGUtLXBkZiAuZmFuY3lib3gtY29udGVudCxcbi5mYW5jeWJveC1zbGlkZS0taWZyYW1lIC5mYW5jeWJveC1jb250ZW50IHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgcGFkZGluZzogMDtcbiAgICB3aWR0aDogMTAwJTtcbn1cblxuLmZhbmN5Ym94LXNsaWRlLS12aWRlbyAuZmFuY3lib3gtY29udGVudCB7XG4gICAgYmFja2dyb3VuZDogIzAwMDtcbn1cblxuLmZhbmN5Ym94LXNsaWRlLS1tYXAgLmZhbmN5Ym94LWNvbnRlbnQge1xuICAgIGJhY2tncm91bmQ6ICNlNWUzZGY7XG59XG5cbi5mYW5jeWJveC1zbGlkZS0taWZyYW1lIC5mYW5jeWJveC1jb250ZW50IHtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xufVxuXG4uZmFuY3lib3gtdmlkZW8sXG4uZmFuY3lib3gtaWZyYW1lIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IDA7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG1hcmdpbjogMDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG59XG5cbi8qIEZpeCBpT1MgKi9cbi5mYW5jeWJveC1pZnJhbWUge1xuICAgIGxlZnQ6IDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbn1cblxuLmZhbmN5Ym94LWVycm9yIHtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICBtYXgtd2lkdGg6IDQwMHB4O1xuICAgIHBhZGRpbmc6IDQwcHg7XG4gICAgd2lkdGg6IDEwMCU7XG59XG5cbi5mYW5jeWJveC1lcnJvciBwIHtcbiAgICBjb2xvcjogIzQ0NDtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG59XG5cbi8qIEJ1dHRvbnMgKi9cblxuLmZhbmN5Ym94LWJ1dHRvbiB7XG4gICAgYmFja2dyb3VuZDogcmdiYSgzMCwgMzAsIDMwLCAuNik7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGhlaWdodDogNDRweDtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMTBweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdHJhbnNpdGlvbjogY29sb3IgLjJzO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgdmlzaWJpbGl0eTogaW5oZXJpdDtcbiAgICB3aWR0aDogNDRweDtcbn1cblxuLmZhbmN5Ym94LWJ1dHRvbixcbi5mYW5jeWJveC1idXR0b246dmlzaXRlZCxcbi5mYW5jeWJveC1idXR0b246bGluayB7XG4gICAgY29sb3I6ICNjY2M7XG59XG5cbi5mYW5jeWJveC1idXR0b246aG92ZXIge1xuICAgIGNvbG9yOiAjZmZmO1xufVxuXG4uZmFuY3lib3gtYnV0dG9uOmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xufVxuXG4uZmFuY3lib3gtYnV0dG9uLmZhbmN5Ym94LWZvY3VzIHtcbiAgICBvdXRsaW5lOiAxcHggZG90dGVkO1xufVxuXG4uZmFuY3lib3gtYnV0dG9uW2Rpc2FibGVkXSxcbi5mYW5jeWJveC1idXR0b25bZGlzYWJsZWRdOmhvdmVyIHtcbiAgICBjb2xvcjogIzg4ODtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgb3V0bGluZTogbm9uZTtcbn1cblxuLyogRml4IElFMTEgKi9cbi5mYW5jeWJveC1idXR0b24gZGl2IHtcbiAgICBoZWlnaHQ6IDEwMCU7XG59XG5cbi5mYW5jeWJveC1idXR0b24gc3ZnIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlO1xufVxuXG4uZmFuY3lib3gtYnV0dG9uIHN2ZyBwYXRoIHtcbiAgICBmaWxsOiBjdXJyZW50Q29sb3I7XG4gICAgc3Ryb2tlLXdpZHRoOiAwO1xufVxuXG4uZmFuY3lib3gtYnV0dG9uLS1wbGF5IHN2ZzpudGgtY2hpbGQoMiksXG4uZmFuY3lib3gtYnV0dG9uLS1mc2VudGVyIHN2ZzpudGgtY2hpbGQoMikge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5mYW5jeWJveC1idXR0b24tLXBhdXNlIHN2ZzpudGgtY2hpbGQoMSksXG4uZmFuY3lib3gtYnV0dG9uLS1mc2V4aXQgc3ZnOm50aC1jaGlsZCgxKSB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cblxuLmZhbmN5Ym94LXByb2dyZXNzIHtcbiAgICBiYWNrZ3JvdW5kOiAjZmY1MjY4O1xuICAgIGhlaWdodDogMnB4O1xuICAgIGxlZnQ6IDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAwO1xuICAgIHRvcDogMDtcbiAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZVgoMCk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZVgoMCk7XG4gICAgLW1zLXRyYW5zZm9ybS1vcmlnaW46IDA7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogMDtcbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgICB6LWluZGV4OiA5OTk5ODtcbn1cblxuLyogQ2xvc2UgYnV0dG9uIG9uIHRoZSB0b3AgcmlnaHQgY29ybmVyIG9mIGh0bWwgY29udGVudCAqL1xuXG4uZmFuY3lib3gtY2xvc2Utc21hbGwge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogMDtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGNvbG9yOiAjY2NjO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBvcGFjaXR5OiAuODtcbiAgICBwYWRkaW5nOiA4cHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAtMTJweDtcbiAgICB0b3A6IC00NHB4O1xuICAgIHotaW5kZXg6IDQwMTtcbn1cblxuLmZhbmN5Ym94LWNsb3NlLXNtYWxsOmhvdmVyIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBvcGFjaXR5OiAxO1xufVxuXG4uZmFuY3lib3gtc2xpZGUtLWh0bWwgLmZhbmN5Ym94LWNsb3NlLXNtYWxsIHtcbiAgICBjb2xvcjogY3VycmVudENvbG9yO1xuICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgcmlnaHQ6IDA7XG4gICAgdG9wOiAwO1xufVxuXG4uZmFuY3lib3gtc2xpZGUtLWltYWdlLmZhbmN5Ym94LWlzLXNjYWxpbmcgLmZhbmN5Ym94LWNvbnRlbnQge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5mYW5jeWJveC1pcy1zY2FsaW5nIC5mYW5jeWJveC1jbG9zZS1zbWFsbCxcbi5mYW5jeWJveC1pcy16b29tYWJsZS5mYW5jeWJveC1jYW4tcGFuIC5mYW5jeWJveC1jbG9zZS1zbWFsbCB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cblxuLyogTmF2aWdhdGlvbiBhcnJvd3MgKi9cblxuLmZhbmN5Ym94LW5hdmlnYXRpb24gLmZhbmN5Ym94LWJ1dHRvbiB7XG4gICAgYmFja2dyb3VuZC1jbGlwOiBjb250ZW50LWJveDtcbiAgICBoZWlnaHQ6IDEwMHB4O1xuICAgIG9wYWNpdHk6IDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogY2FsYyg1MCUgLSA1MHB4KTtcbiAgICB3aWR0aDogNzBweDtcbn1cblxuLmZhbmN5Ym94LW5hdmlnYXRpb24gLmZhbmN5Ym94LWJ1dHRvbiBkaXYge1xuICAgIHBhZGRpbmc6IDdweDtcbn1cblxuLmZhbmN5Ym94LW5hdmlnYXRpb24gLmZhbmN5Ym94LWJ1dHRvbi0tYXJyb3dfbGVmdCB7XG4gICAgbGVmdDogMDtcbiAgICBsZWZ0OiBlbnYoc2FmZS1hcmVhLWluc2V0LWxlZnQpO1xuICAgIHBhZGRpbmc6IDMxcHggMjZweCAzMXB4IDZweDtcbn1cblxuLmZhbmN5Ym94LW5hdmlnYXRpb24gLmZhbmN5Ym94LWJ1dHRvbi0tYXJyb3dfcmlnaHQge1xuICAgIHBhZGRpbmc6IDMxcHggNnB4IDMxcHggMjZweDtcbiAgICByaWdodDogMDtcbiAgICByaWdodDogZW52KHNhZmUtYXJlYS1pbnNldC1yaWdodCk7XG59XG5cbi8qIENhcHRpb24gKi9cblxuLmZhbmN5Ym94LWNhcHRpb24ge1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byB0b3AsXG4gICAgICAgICAgICByZ2JhKDAsIDAsIDAsIC44NSkgMCUsXG4gICAgICAgICAgICByZ2JhKDAsIDAsIDAsIC4zKSA1MCUsXG4gICAgICAgICAgICByZ2JhKDAsIDAsIDAsIC4xNSkgNjUlLFxuICAgICAgICAgICAgcmdiYSgwLCAwLCAwLCAuMDc1KSA3NS41JSxcbiAgICAgICAgICAgIHJnYmEoMCwgMCwgMCwgLjAzNykgODIuODUlLFxuICAgICAgICAgICAgcmdiYSgwLCAwLCAwLCAuMDE5KSA4OCUsXG4gICAgICAgICAgICByZ2JhKDAsIDAsIDAsIDApIDEwMCUpO1xuICAgIGJvdHRvbTogMDtcbiAgICBjb2xvcjogI2VlZTtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBsZWZ0OiAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgcGFkZGluZzogNzVweCA0NHB4IDI1cHggNDRweDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICByaWdodDogMDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgei1pbmRleDogOTk5OTY7XG59XG5cbkBzdXBwb3J0cyAocGFkZGluZzogbWF4KDBweCkpIHtcbiAgICAuZmFuY3lib3gtY2FwdGlvbiB7XG4gICAgICAgIHBhZGRpbmc6IDc1cHggbWF4KDQ0cHgsIGVudihzYWZlLWFyZWEtaW5zZXQtcmlnaHQpKSBtYXgoMjVweCwgZW52KHNhZmUtYXJlYS1pbnNldC1ib3R0b20pKSBtYXgoNDRweCwgZW52KHNhZmUtYXJlYS1pbnNldC1sZWZ0KSk7XG4gICAgfVxufVxuXG4uZmFuY3lib3gtY2FwdGlvbi0tc2VwYXJhdGUge1xuICAgIG1hcmdpbi10b3A6IC01MHB4O1xufVxuXG4uZmFuY3lib3gtY2FwdGlvbl9fYm9keSB7XG4gICAgbWF4LWhlaWdodDogNTB2aDtcbiAgICBvdmVyZmxvdzogYXV0bztcbiAgICBwb2ludGVyLWV2ZW50czogYWxsO1xufVxuXG4uZmFuY3lib3gtY2FwdGlvbiBhLFxuLmZhbmN5Ym94LWNhcHRpb24gYTpsaW5rLFxuLmZhbmN5Ym94LWNhcHRpb24gYTp2aXNpdGVkIHtcbiAgICBjb2xvcjogI2NjYztcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5mYW5jeWJveC1jYXB0aW9uIGE6aG92ZXIge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuXG4vKiBMb2FkaW5nIGluZGljYXRvciAqL1xuXG4uZmFuY3lib3gtbG9hZGluZyB7XG4gICAgYW5pbWF0aW9uOiBmYW5jeWJveC1yb3RhdGUgMXMgbGluZWFyIGluZmluaXRlO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogNHB4IHNvbGlkICM4ODg7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogI2ZmZjtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgaGVpZ2h0OiA1MHB4O1xuICAgIGxlZnQ6IDUwJTtcbiAgICBtYXJnaW46IC0yNXB4IDAgMCAtMjVweDtcbiAgICBvcGFjaXR5OiAuNztcbiAgICBwYWRkaW5nOiAwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICB3aWR0aDogNTBweDtcbiAgICB6LWluZGV4OiA5OTk5OTtcbn1cblxuQGtleWZyYW1lcyBmYW5jeWJveC1yb3RhdGUge1xuICAgIDEwMCUge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgIH1cbn1cblxuLyogVHJhbnNpdGlvbiBlZmZlY3RzICovXG5cbi5mYW5jeWJveC1hbmltYXRlZCB7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLCAwLCAuMjUsIDEpO1xufVxuXG4vKiB0cmFuc2l0aW9uRWZmZWN0OiBzbGlkZSAqL1xuXG4uZmFuY3lib3gtZngtc2xpZGUuZmFuY3lib3gtc2xpZGUtLXByZXZpb3VzIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xufVxuXG4uZmFuY3lib3gtZngtc2xpZGUuZmFuY3lib3gtc2xpZGUtLW5leHQge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcbn1cblxuLmZhbmN5Ym94LWZ4LXNsaWRlLmZhbmN5Ym94LXNsaWRlLS1jdXJyZW50IHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG59XG5cbi8qIHRyYW5zaXRpb25FZmZlY3Q6IGZhZGUgKi9cblxuLmZhbmN5Ym94LWZ4LWZhZGUuZmFuY3lib3gtc2xpZGUtLXByZXZpb3VzLFxuLmZhbmN5Ym94LWZ4LWZhZGUuZmFuY3lib3gtc2xpZGUtLW5leHQge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllciguMTksIDEsIC4yMiwgMSk7XG59XG5cbi5mYW5jeWJveC1meC1mYWRlLmZhbmN5Ym94LXNsaWRlLS1jdXJyZW50IHtcbiAgICBvcGFjaXR5OiAxO1xufVxuXG4vKiB0cmFuc2l0aW9uRWZmZWN0OiB6b29tLWluLW91dCAqL1xuXG4uZmFuY3lib3gtZngtem9vbS1pbi1vdXQuZmFuY3lib3gtc2xpZGUtLXByZXZpb3VzIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjUsIDEuNSwgMS41KTtcbn1cblxuLmZhbmN5Ym94LWZ4LXpvb20taW4tb3V0LmZhbmN5Ym94LXNsaWRlLS1uZXh0IHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCguNSwgLjUsIC41KTtcbn1cblxuLmZhbmN5Ym94LWZ4LXpvb20taW4tb3V0LmZhbmN5Ym94LXNsaWRlLS1jdXJyZW50IHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcbn1cblxuLyogdHJhbnNpdGlvbkVmZmVjdDogcm90YXRlICovXG5cbi5mYW5jeWJveC1meC1yb3RhdGUuZmFuY3lib3gtc2xpZGUtLXByZXZpb3VzIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgtMzYwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMzYwZGVnKTtcbn1cblxuLmZhbmN5Ym94LWZ4LXJvdGF0ZS5mYW5jeWJveC1zbGlkZS0tbmV4dCB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xufVxuXG4uZmFuY3lib3gtZngtcm90YXRlLmZhbmN5Ym94LXNsaWRlLS1jdXJyZW50IHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbn1cblxuLyogdHJhbnNpdGlvbkVmZmVjdDogY2lyY3VsYXIgKi9cblxuLmZhbmN5Ym94LWZ4LWNpcmN1bGFyLmZhbmN5Ym94LXNsaWRlLS1wcmV2aW91cyB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMCwgMCwgMCkgdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xufVxuXG4uZmFuY3lib3gtZngtY2lyY3VsYXIuZmFuY3lib3gtc2xpZGUtLW5leHQge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAsIDAsIDApIHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xufVxuXG4uZmFuY3lib3gtZngtY2lyY3VsYXIuZmFuY3lib3gtc2xpZGUtLWN1cnJlbnQge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpIHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xufVxuXG4vKiB0cmFuc2l0aW9uRWZmZWN0OiB0dWJlICovXG5cbi5mYW5jeWJveC1meC10dWJlLmZhbmN5Ym94LXNsaWRlLS1wcmV2aW91cyB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCkgc2NhbGUoLjEpIHNrZXcoLTEwZGVnKTtcbn1cblxuLmZhbmN5Ym94LWZ4LXR1YmUuZmFuY3lib3gtc2xpZGUtLW5leHQge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCkgc2NhbGUoLjEpIHNrZXcoMTBkZWcpO1xufVxuXG4uZmFuY3lib3gtZngtdHViZS5mYW5jeWJveC1zbGlkZS0tY3VycmVudCB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKSBzY2FsZSgxKTtcbn1cblxuLyogU3R5bGluZyBmb3IgU21hbGwtU2NyZWVuIERldmljZXMgKi9cbkBtZWRpYSBhbGwgYW5kIChtYXgtaGVpZ2h0OiA1NzZweCkge1xuICAgIC5mYW5jeWJveC1zbGlkZSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogNnB4O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiA2cHg7XG4gICAgfVxuXG4gICAgLmZhbmN5Ym94LXNsaWRlLS1pbWFnZSB7XG4gICAgICAgIHBhZGRpbmc6IDZweCAwO1xuICAgIH1cblxuICAgIC5mYW5jeWJveC1jbG9zZS1zbWFsbCB7XG4gICAgICAgIHJpZ2h0OiAtNnB4O1xuICAgIH1cblxuICAgIC5mYW5jeWJveC1zbGlkZS0taW1hZ2UgLmZhbmN5Ym94LWNsb3NlLXNtYWxsIHtcbiAgICAgICAgYmFja2dyb3VuZDogIzRlNGU0ZTtcbiAgICAgICAgY29sb3I6ICNmMmY0ZjY7XG4gICAgICAgIGhlaWdodDogMzZweDtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgcGFkZGluZzogNnB4O1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICB3aWR0aDogMzZweDtcbiAgICB9XG5cbiAgICAuZmFuY3lib3gtY2FwdGlvbiB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMTJweDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMTJweDtcbiAgICB9XG5cbiAgICBAc3VwcG9ydHMgKHBhZGRpbmc6IG1heCgwcHgpKSB7XG4gICAgICAgIC5mYW5jeWJveC1jYXB0aW9uIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogbWF4KDEycHgsIGVudihzYWZlLWFyZWEtaW5zZXQtbGVmdCkpO1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogbWF4KDEycHgsIGVudihzYWZlLWFyZWEtaW5zZXQtcmlnaHQpKTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLyogU2hhcmUgKi9cblxuLmZhbmN5Ym94LXNoYXJlIHtcbiAgICBiYWNrZ3JvdW5kOiAjZjRmNGY0O1xuICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICBtYXgtd2lkdGg6IDkwJTtcbiAgICBwYWRkaW5nOiAzMHB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLmZhbmN5Ym94LXNoYXJlIGgxIHtcbiAgICBjb2xvcjogIzIyMjtcbiAgICBmb250LXNpemU6IDM1cHg7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBtYXJnaW46IDAgMCAyMHB4IDA7XG59XG5cbi5mYW5jeWJveC1zaGFyZSBwIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbn1cblxuLmZhbmN5Ym94LXNoYXJlX19idXR0b24ge1xuICAgIGJvcmRlcjogMDtcbiAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGxpbmUtaGVpZ2h0OiA0MHB4O1xuICAgIG1hcmdpbjogMCA1cHggMTBweCA1cHg7XG4gICAgbWluLXdpZHRoOiAxMzBweDtcbiAgICBwYWRkaW5nOiAwIDE1cHg7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIHRyYW5zaXRpb246IGFsbCAuMnM7XG4gICAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAgIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4uZmFuY3lib3gtc2hhcmVfX2J1dHRvbjp2aXNpdGVkLFxuLmZhbmN5Ym94LXNoYXJlX19idXR0b246bGluayB7XG4gICAgY29sb3I6ICNmZmY7XG59XG5cbi5mYW5jeWJveC1zaGFyZV9fYnV0dG9uOmhvdmVyIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5mYW5jeWJveC1zaGFyZV9fYnV0dG9uLS1mYiB7XG4gICAgYmFja2dyb3VuZDogIzNiNTk5ODtcbn1cblxuLmZhbmN5Ym94LXNoYXJlX19idXR0b24tLWZiOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiAjMzQ0ZTg2O1xufVxuXG4uZmFuY3lib3gtc2hhcmVfX2J1dHRvbi0tcHQge1xuICAgIGJhY2tncm91bmQ6ICNiZDA4MWQ7XG59XG5cbi5mYW5jeWJveC1zaGFyZV9fYnV0dG9uLS1wdDpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogI2FhMDcxOTtcbn1cblxuLmZhbmN5Ym94LXNoYXJlX19idXR0b24tLXR3IHtcbiAgICBiYWNrZ3JvdW5kOiAjMWRhMWYyO1xufVxuXG4uZmFuY3lib3gtc2hhcmVfX2J1dHRvbi0tdHc6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6ICMwZDk1ZTg7XG59XG5cbi5mYW5jeWJveC1zaGFyZV9fYnV0dG9uIHN2ZyB7XG4gICAgaGVpZ2h0OiAyNXB4O1xuICAgIG1hcmdpbi1yaWdodDogN3B4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IC0xcHg7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB3aWR0aDogMjVweDtcbn1cblxuLmZhbmN5Ym94LXNoYXJlX19idXR0b24gc3ZnIHBhdGgge1xuICAgIGZpbGw6ICNmZmY7XG59XG5cbi5mYW5jeWJveC1zaGFyZV9faW5wdXQge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogMDtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2Q3ZDdkNztcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGNvbG9yOiAjNWQ1YjViO1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBtYXJnaW46IDEwcHggMCAwIDA7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBwYWRkaW5nOiAxMHB4IDE1cHg7XG4gICAgd2lkdGg6IDEwMCU7XG59XG5cbi8qIFRodW1icyAqL1xuXG4uZmFuY3lib3gtdGh1bWJzIHtcbiAgICBiYWNrZ3JvdW5kOiAjZGRkO1xuICAgIGJvdHRvbTogMDtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIG1hcmdpbjogMDtcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gICAgLW1zLW92ZXJmbG93LXN0eWxlOiAtbXMtYXV0b2hpZGluZy1zY3JvbGxiYXI7XG4gICAgcGFkZGluZzogMnB4IDJweCA0cHggMnB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMDtcbiAgICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XG4gICAgdG9wOiAwO1xuICAgIHdpZHRoOiAyMTJweDtcbiAgICB6LWluZGV4OiA5OTk5NTtcbn1cblxuLmZhbmN5Ym94LXRodW1icy14IHtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgIG92ZXJmbG93LXk6IGhpZGRlbjtcbn1cblxuLmZhbmN5Ym94LXNob3ctdGh1bWJzIC5mYW5jeWJveC10aHVtYnMge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uZmFuY3lib3gtc2hvdy10aHVtYnMgLmZhbmN5Ym94LWlubmVyIHtcbiAgICByaWdodDogMjEycHg7XG59XG5cbi5mYW5jeWJveC10aHVtYnNfX2xpc3Qge1xuICAgIGZvbnQtc2l6ZTogMDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBtYXJnaW46IDA7XG4gICAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgcGFkZGluZzogMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgd2lkdGg6IDEwMCU7XG59XG5cbi5mYW5jeWJveC10aHVtYnMteCAuZmFuY3lib3gtdGh1bWJzX19saXN0IHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uZmFuY3lib3gtdGh1bWJzLXkgLmZhbmN5Ym94LXRodW1ic19fbGlzdDo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICAgIHdpZHRoOiA3cHg7XG59XG5cbi5mYW5jeWJveC10aHVtYnMteSAuZmFuY3lib3gtdGh1bWJzX19saXN0Ojotd2Via2l0LXNjcm9sbGJhci10cmFjayB7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMCA2cHggcmdiYSgwLCAwLCAwLCAuMyk7XG59XG5cbi5mYW5jeWJveC10aHVtYnMteSAuZmFuY3lib3gtdGh1bWJzX19saXN0Ojotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XG4gICAgYmFja2dyb3VuZDogIzJhMmEyYTtcbiAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xufVxuXG4uZmFuY3lib3gtdGh1bWJzX19saXN0IGEge1xuICAgIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIC4xKTtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgaGVpZ2h0OiA3NXB4O1xuICAgIG1hcmdpbjogMnB4O1xuICAgIG1heC1oZWlnaHQ6IGNhbGMoMTAwJSAtIDhweCk7XG4gICAgbWF4LXdpZHRoOiBjYWxjKDUwJSAtIDRweCk7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgd2lkdGg6IDEwMHB4O1xufVxuXG4uZmFuY3lib3gtdGh1bWJzX19saXN0IGE6OmJlZm9yZSB7XG4gICAgYm9yZGVyOiA2cHggc29saWQgI2ZmNTI2ODtcbiAgICBib3R0b206IDA7XG4gICAgY29udGVudDogJyc7XG4gICAgbGVmdDogMDtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMDtcbiAgICB0b3A6IDA7XG4gICAgdHJhbnNpdGlvbjogYWxsIC4ycyBjdWJpYy1iZXppZXIoLjI1LCAuNDYsIC40NSwgLjk0KTtcbiAgICB6LWluZGV4OiA5OTk5MTtcbn1cblxuLmZhbmN5Ym94LXRodW1ic19fbGlzdCBhOmZvY3VzOjpiZWZvcmUge1xuICAgIG9wYWNpdHk6IC41O1xufVxuXG4uZmFuY3lib3gtdGh1bWJzX19saXN0IGEuZmFuY3lib3gtdGh1bWJzLWFjdGl2ZTo6YmVmb3JlIHtcbiAgICBvcGFjaXR5OiAxO1xufVxuXG4vKiBTdHlsaW5nIGZvciBTbWFsbC1TY3JlZW4gRGV2aWNlcyAqL1xuQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogNTc2cHgpIHtcbiAgICAuZmFuY3lib3gtdGh1bWJzIHtcbiAgICAgICAgd2lkdGg6IDExMHB4O1xuICAgIH1cblxuICAgIC5mYW5jeWJveC1zaG93LXRodW1icyAuZmFuY3lib3gtaW5uZXIge1xuICAgICAgICByaWdodDogMTEwcHg7XG4gICAgfVxuXG4gICAgLmZhbmN5Ym94LXRodW1ic19fbGlzdCBhIHtcbiAgICAgICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAxMHB4KTtcbiAgICB9XG59IiwiLyoqXG4gKiBTd2lwZXIgMTQuMC4xXG4gKiBNb3N0IG1vZGVybiBtb2JpbGUgdG91Y2ggc2xpZGVyIGFuZCBmcmFtZXdvcmsgd2l0aCBoYXJkd2FyZSBhY2NlbGVyYXRlZCB0cmFuc2l0aW9uc1xuICogaHR0cHM6Ly9zd2lwZXJqcy5jb21cbiAqXG4gKiBDb3B5cmlnaHQgMjAxNC0yMDI2IFZsYWRpbWlyIEtoYXJsYW1waWRpXG4gKlxuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlXG4gKlxuICogUmVsZWFzZWQgb246IEp1bmUgMjksIDIwMjZcbiAqL1xuXG46cm9vdCB7XG4gICAgLS1zd2lwZXItdGhlbWUtY29sb3I6ICMwMDdhZmY7XG59XG46aG9zdCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAxO1xufVxuLnN3aXBlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwYWRkaW5nOiAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAxO1xufVxuLnN3aXBlci12ZXJ0aWNhbCA+IC5zd2lwZXItd3JhcHBlciB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cbi5zd2lwZXItd3JhcHBlciB7XG4gICAgYm94LXNpemluZzogaW5pdGlhbDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtO1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiB2YXIoXG4gICAgICAgIC0tc3dpcGVyLXdyYXBwZXItdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb24sXG4gICAgICAgIGluaXRpYWxcbiAgICApO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHotaW5kZXg6IDE7XG59XG4uc3dpcGVyLWFuZHJvaWQgLnN3aXBlci1zbGlkZSxcbi5zd2lwZXItaW9zIC5zd2lwZXItc2xpZGUsXG4uc3dpcGVyLXdyYXBwZXIge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbn1cbi5zd2lwZXItaG9yaXpvbnRhbCB7XG4gICAgdG91Y2gtYWN0aW9uOiBwYW4teTtcbn1cbi5zd2lwZXItdmVydGljYWwge1xuICAgIHRvdWNoLWFjdGlvbjogcGFuLXg7XG59XG4uc3dpcGVyLXNsaWRlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTtcbiAgICB3aWR0aDogMTAwJTtcbn1cbi5zd2lwZXItc2xpZGUtaW52aXNpYmxlLWJsYW5rIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG4uc3dpcGVyLWF1dG9oZWlnaHQsXG4uc3dpcGVyLWF1dG9oZWlnaHQgLnN3aXBlci1zbGlkZSB7XG4gICAgaGVpZ2h0OiBhdXRvO1xufVxuLnN3aXBlci1hdXRvaGVpZ2h0IC5zd2lwZXItd3JhcHBlciB7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBoZWlnaHQ7XG59XG4uc3dpcGVyLWJhY2tmYWNlLWhpZGRlbiAuc3dpcGVyLXNsaWRlIHtcbiAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xufVxuLnN3aXBlci0zZC5zd2lwZXItY3NzLW1vZGUgLnN3aXBlci13cmFwcGVyIHtcbiAgICBwZXJzcGVjdGl2ZTogMTIwMHB4O1xufVxuLnN3aXBlci0zZCAuc3dpcGVyLXdyYXBwZXIge1xuICAgIHRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2Q7XG59XG4uc3dpcGVyLTNkIHtcbiAgICBwZXJzcGVjdGl2ZTogMTIwMHB4O1xuICAgIC5zd2lwZXItY3ViZS1zaGFkb3csXG4gICAgLnN3aXBlci1zbGlkZSB7XG4gICAgICAgIHRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2Q7XG4gICAgfVxufVxuLnN3aXBlci1jc3MtbW9kZSB7XG4gICAgPiAuc3dpcGVyLXdyYXBwZXIge1xuICAgICAgICBvdmVyZmxvdzogYXV0bztcbiAgICAgICAgc2Nyb2xsYmFyLXdpZHRoOiBub25lO1xuICAgICAgICAtbXMtb3ZlcmZsb3ctc3R5bGU6IG5vbmU7XG4gICAgICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgPiAuc3dpcGVyLXdyYXBwZXIgPiAuc3dpcGVyLXNsaWRlIHtcbiAgICAgICAgc2Nyb2xsLXNuYXAtYWxpZ246IHN0YXJ0IHN0YXJ0O1xuICAgIH1cbiAgICAmLnN3aXBlci1ob3Jpem9udGFsIHtcbiAgICAgICAgPiAuc3dpcGVyLXdyYXBwZXIge1xuICAgICAgICAgICAgc2Nyb2xsLXNuYXAtdHlwZTogeCBtYW5kYXRvcnk7XG4gICAgICAgIH1cbiAgICAgICAgPiAuc3dpcGVyLXdyYXBwZXIgPiAuc3dpcGVyLXNsaWRlOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IHZhcigtLXN3aXBlci1zbGlkZXMtb2Zmc2V0LWJlZm9yZSk7XG4gICAgICAgICAgICBzY3JvbGwtbWFyZ2luLWlubGluZS1zdGFydDogdmFyKC0tc3dpcGVyLXNsaWRlcy1vZmZzZXQtYmVmb3JlKTtcbiAgICAgICAgfVxuICAgICAgICA+IC5zd2lwZXItd3JhcHBlciA+IC5zd2lwZXItc2xpZGU6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBtYXJnaW4taW5saW5lLWVuZDogdmFyKC0tc3dpcGVyLXNsaWRlcy1vZmZzZXQtYWZ0ZXIpO1xuICAgICAgICB9XG4gICAgfVxuICAgICYuc3dpcGVyLXZlcnRpY2FsIHtcbiAgICAgICAgPiAuc3dpcGVyLXdyYXBwZXIge1xuICAgICAgICAgICAgc2Nyb2xsLXNuYXAtdHlwZTogeSBtYW5kYXRvcnk7XG4gICAgICAgIH1cbiAgICAgICAgPiAuc3dpcGVyLXdyYXBwZXIgPiAuc3dpcGVyLXNsaWRlOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgIG1hcmdpbi1ibG9jay1zdGFydDogdmFyKC0tc3dpcGVyLXNsaWRlcy1vZmZzZXQtYmVmb3JlKTtcbiAgICAgICAgICAgIHNjcm9sbC1tYXJnaW4tYmxvY2stc3RhcnQ6IHZhcigtLXN3aXBlci1zbGlkZXMtb2Zmc2V0LWJlZm9yZSk7XG4gICAgICAgIH1cbiAgICAgICAgPiAuc3dpcGVyLXdyYXBwZXIgPiAuc3dpcGVyLXNsaWRlOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgbWFyZ2luLWJsb2NrLWVuZDogdmFyKC0tc3dpcGVyLXNsaWRlcy1vZmZzZXQtYWZ0ZXIpO1xuICAgICAgICB9XG4gICAgfVxuICAgICYuc3dpcGVyLWZyZWUtbW9kZSB7XG4gICAgICAgID4gLnN3aXBlci13cmFwcGVyIHtcbiAgICAgICAgICAgIHNjcm9sbC1zbmFwLXR5cGU6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgICAgPiAuc3dpcGVyLXdyYXBwZXIgPiAuc3dpcGVyLXNsaWRlIHtcbiAgICAgICAgICAgIHNjcm9sbC1zbmFwLWFsaWduOiBub25lO1xuICAgICAgICB9XG4gICAgfVxuICAgICYuc3dpcGVyLWNlbnRlcmVkIHtcbiAgICAgICAgPiAuc3dpcGVyLXdyYXBwZXI6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgICAgIG9yZGVyOiA5OTk5O1xuICAgICAgICB9XG4gICAgICAgID4gLnN3aXBlci13cmFwcGVyID4gLnN3aXBlci1zbGlkZSB7XG4gICAgICAgICAgICBzY3JvbGwtc25hcC1hbGlnbjogY2VudGVyIGNlbnRlcjtcbiAgICAgICAgICAgIHNjcm9sbC1zbmFwLXN0b3A6IGFsd2F5cztcbiAgICAgICAgfVxuICAgIH1cbiAgICAmLnN3aXBlci1jZW50ZXJlZC5zd2lwZXItaG9yaXpvbnRhbCB7XG4gICAgICAgID4gLnN3aXBlci13cmFwcGVyID4gLnN3aXBlci1zbGlkZTpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICBtYXJnaW4taW5saW5lLXN0YXJ0OiB2YXIoLS1zd2lwZXItY2VudGVyZWQtb2Zmc2V0LWJlZm9yZSk7XG4gICAgICAgIH1cbiAgICAgICAgPiAuc3dpcGVyLXdyYXBwZXI6YmVmb3JlIHtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDFweDtcbiAgICAgICAgICAgIHdpZHRoOiB2YXIoLS1zd2lwZXItY2VudGVyZWQtb2Zmc2V0LWFmdGVyKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmLnN3aXBlci1jZW50ZXJlZC5zd2lwZXItdmVydGljYWwge1xuICAgICAgICA+IC5zd2lwZXItd3JhcHBlciA+IC5zd2lwZXItc2xpZGU6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgbWFyZ2luLWJsb2NrLXN0YXJ0OiB2YXIoLS1zd2lwZXItY2VudGVyZWQtb2Zmc2V0LWJlZm9yZSk7XG4gICAgICAgIH1cbiAgICAgICAgPiAuc3dpcGVyLXdyYXBwZXI6YmVmb3JlIHtcbiAgICAgICAgICAgIGhlaWdodDogdmFyKC0tc3dpcGVyLWNlbnRlcmVkLW9mZnNldC1hZnRlcik7XG4gICAgICAgICAgICBtaW4td2lkdGg6IDFweDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgfVxufVxuLnN3aXBlci0zZCB7XG4gICAgLnN3aXBlci1zbGlkZS1zaGFkb3csXG4gICAgLnN3aXBlci1zbGlkZS1zaGFkb3ctYm90dG9tLFxuICAgIC5zd2lwZXItc2xpZGUtc2hhZG93LWxlZnQsXG4gICAgLnN3aXBlci1zbGlkZS1zaGFkb3ctcmlnaHQsXG4gICAgLnN3aXBlci1zbGlkZS1zaGFkb3ctdG9wIHtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB6LWluZGV4OiAxMDtcbiAgICB9XG4gICAgLnN3aXBlci1zbGlkZS1zaGFkb3cge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjMDAwMDAwMjY7XG4gICAgfVxuICAgIC5zd2lwZXItc2xpZGUtc2hhZG93LWxlZnQge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoMjcwZGVnLCAjMDAwMDAwODAsICMwMDAwKTtcbiAgICB9XG4gICAgLnN3aXBlci1zbGlkZS1zaGFkb3ctcmlnaHQge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsICMwMDAwMDA4MCwgIzAwMDApO1xuICAgIH1cbiAgICAuc3dpcGVyLXNsaWRlLXNoYWRvdy10b3Age1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoMGRlZywgIzAwMDAwMDgwLCAjMDAwMCk7XG4gICAgfVxuICAgIC5zd2lwZXItc2xpZGUtc2hhZG93LWJvdHRvbSB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsICMwMDAwMDA4MCwgIzAwMDApO1xuICAgIH1cbn1cbi5zd2lwZXItbGF6eS1wcmVsb2FkZXIge1xuICAgIGJvcmRlcjogNHB4IHNvbGlkIHZhcigtLXN3aXBlci1wcmVsb2FkZXItY29sb3IsIHZhcigtLXN3aXBlci10aGVtZS1jb2xvcikpO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBib3JkZXItdG9wOiA0cHggc29saWQgIzAwMDA7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBoZWlnaHQ6IDQycHg7XG4gICAgbGVmdDogNTAlO1xuICAgIG1hcmdpbi1sZWZ0OiAtMjFweDtcbiAgICBtYXJnaW4tdG9wOiAtMjFweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogNTAlO1xuICAgIHdpZHRoOiA0MnB4O1xuICAgIHotaW5kZXg6IDEwO1xufVxuLnN3aXBlci13YXRjaC1wcm9ncmVzcyAuc3dpcGVyLXNsaWRlLXZpc2libGUsXG4uc3dpcGVyOm5vdCguc3dpcGVyLXdhdGNoLXByb2dyZXNzKSB7XG4gICAgLnN3aXBlci1sYXp5LXByZWxvYWRlciB7XG4gICAgICAgIGFuaW1hdGlvbjogc3dpcGVyLXByZWxvYWRlci1zcGluIDFzIGxpbmVhciBpbmZpbml0ZTtcbiAgICB9XG59XG4uc3dpcGVyLWxhenktcHJlbG9hZGVyLXdoaXRlIHtcbiAgICAtLXN3aXBlci1wcmVsb2FkZXItY29sb3I6ICNmZmY7XG59XG4uc3dpcGVyLWxhenktcHJlbG9hZGVyLWJsYWNrIHtcbiAgICAtLXN3aXBlci1wcmVsb2FkZXItY29sb3I6ICMwMDA7XG59XG5Aa2V5ZnJhbWVzIHN3aXBlci1wcmVsb2FkZXItc3BpbiB7XG4gICAgMCUge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICB9XG4gICAgdG8ge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxdHVybik7XG4gICAgfVxufVxuLnN3aXBlci12aXJ0dWFsIC5zd2lwZXItc2xpZGUge1xuICAgIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbn1cbi5zd2lwZXItdmlydHVhbC5zd2lwZXItY3NzLW1vZGUge1xuICAgIC5zd2lwZXItd3JhcHBlcjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICB9XG59XG4uc3dpcGVyLXZpcnR1YWwuc3dpcGVyLWNzcy1tb2RlLnN3aXBlci1ob3Jpem9udGFsIHtcbiAgICAuc3dpcGVyLXdyYXBwZXI6YWZ0ZXIge1xuICAgICAgICBoZWlnaHQ6IDFweDtcbiAgICAgICAgd2lkdGg6IHZhcigtLXN3aXBlci12aXJ0dWFsLXNpemUpO1xuICAgIH1cbn1cbi5zd2lwZXItdmlydHVhbC5zd2lwZXItY3NzLW1vZGUuc3dpcGVyLXZlcnRpY2FsIHtcbiAgICAuc3dpcGVyLXdyYXBwZXI6YWZ0ZXIge1xuICAgICAgICBoZWlnaHQ6IHZhcigtLXN3aXBlci12aXJ0dWFsLXNpemUpO1xuICAgICAgICB3aWR0aDogMXB4O1xuICAgIH1cbn1cbjpyb290IHtcbiAgICAtLXN3aXBlci1uYXZpZ2F0aW9uLXNpemU6IDQ0cHg7XG59XG4uc3dpcGVyLWJ1dHRvbi1uZXh0LFxuLnN3aXBlci1idXR0b24tcHJldiB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBjb2xvcjogdmFyKC0tc3dpcGVyLW5hdmlnYXRpb24tY29sb3IsIHZhcigtLXN3aXBlci10aGVtZS1jb2xvcikpO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGhlaWdodDogdmFyKC0tc3dpcGVyLW5hdmlnYXRpb24tc2l6ZSk7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiB2YXIoLS1zd2lwZXItbmF2aWdhdGlvbi1zaXplKTtcbiAgICB6LWluZGV4OiAxMDtcbiAgICAmLnN3aXBlci1idXR0b24tZGlzYWJsZWQge1xuICAgICAgICBjdXJzb3I6IGF1dG87XG4gICAgICAgIG9wYWNpdHk6IDAuMzU7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIH1cbiAgICAmLnN3aXBlci1idXR0b24taGlkZGVuIHtcbiAgICAgICAgY3Vyc29yOiBhdXRvO1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB9XG4gICAgLnN3aXBlci1uYXZpZ2F0aW9uLWRpc2FibGVkICYge1xuICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIDo6c2xvdHRlZChzdmcpLFxuICAgIHN2ZyB7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgZmlsbDogY3VycmVudENvbG9yO1xuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB9XG59XG4uc3dpcGVyLWJ1dHRvbi1sb2NrIHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuLnN3aXBlci1idXR0b24tbmV4dCxcbi5zd2lwZXItYnV0dG9uLXByZXYge1xuICAgIG1hcmdpbi10b3A6IGNhbGMoMHB4IC0gdmFyKC0tc3dpcGVyLW5hdmlnYXRpb24tc2l6ZSkgLyAyKTtcbiAgICB0b3A6IHZhcigtLXN3aXBlci1uYXZpZ2F0aW9uLXRvcC1vZmZzZXQsIDUwJSk7XG59XG4uc3dpcGVyLWJ1dHRvbi1wcmV2IHtcbiAgICBsZWZ0OiB2YXIoLS1zd2lwZXItbmF2aWdhdGlvbi1zaWRlcy1vZmZzZXQsIDRweCk7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgLnN3aXBlci1uYXZpZ2F0aW9uLWljb24sXG4gICAgOjpzbG90dGVkKC5zd2lwZXItbmF2aWdhdGlvbi1pY29uKSB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gICAgfVxufVxuLnN3aXBlci1idXR0b24tbmV4dCB7XG4gICAgbGVmdDogYXV0bztcbiAgICByaWdodDogdmFyKC0tc3dpcGVyLW5hdmlnYXRpb24tc2lkZXMtb2Zmc2V0LCA0cHgpO1xufVxuLnN3aXBlci1ob3Jpem9udGFsIHtcbiAgICAuc3dpcGVyLWJ1dHRvbi1uZXh0LFxuICAgIC5zd2lwZXItYnV0dG9uLXByZXYsXG4gICAgfiAuc3dpcGVyLWJ1dHRvbi1uZXh0LFxuICAgIH4gLnN3aXBlci1idXR0b24tcHJldiB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICBtYXJnaW4tdG9wOiBjYWxjKDBweCAtIHZhcigtLXN3aXBlci1uYXZpZ2F0aW9uLXNpemUpIC8gMik7XG4gICAgICAgIHRvcDogdmFyKC0tc3dpcGVyLW5hdmlnYXRpb24tdG9wLW9mZnNldCwgNTAlKTtcbiAgICB9XG4gICAgJi5zd2lwZXItcnRsIC5zd2lwZXItYnV0dG9uLW5leHQsXG4gICAgJi5zd2lwZXItcnRsIH4gLnN3aXBlci1idXR0b24tbmV4dCxcbiAgICAmIH4gLnN3aXBlci1idXR0b24tcHJldixcbiAgICAuc3dpcGVyLWJ1dHRvbi1wcmV2IHtcbiAgICAgICAgbGVmdDogdmFyKC0tc3dpcGVyLW5hdmlnYXRpb24tc2lkZXMtb2Zmc2V0LCA0cHgpO1xuICAgICAgICByaWdodDogYXV0bztcbiAgICB9XG4gICAgJi5zd2lwZXItcnRsIC5zd2lwZXItYnV0dG9uLXByZXYsXG4gICAgJi5zd2lwZXItcnRsIH4gLnN3aXBlci1idXR0b24tcHJldixcbiAgICAmIH4gLnN3aXBlci1idXR0b24tbmV4dCxcbiAgICAuc3dpcGVyLWJ1dHRvbi1uZXh0IHtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgcmlnaHQ6IHZhcigtLXN3aXBlci1uYXZpZ2F0aW9uLXNpZGVzLW9mZnNldCwgNHB4KTtcbiAgICB9XG4gICAgJi5zd2lwZXItcnRsIC5zd2lwZXItYnV0dG9uLW5leHQsXG4gICAgJi5zd2lwZXItcnRsIH4gLnN3aXBlci1idXR0b24tbmV4dCxcbiAgICAmIH4gLnN3aXBlci1idXR0b24tcHJldixcbiAgICAuc3dpcGVyLWJ1dHRvbi1wcmV2IHtcbiAgICAgICAgLnN3aXBlci1uYXZpZ2F0aW9uLWljb24sXG4gICAgICAgIDo6c2xvdHRlZCguc3dpcGVyLW5hdmlnYXRpb24taWNvbikge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmLnN3aXBlci1ydGwgLnN3aXBlci1idXR0b24tcHJldixcbiAgICAmLnN3aXBlci1ydGwgfiAuc3dpcGVyLWJ1dHRvbi1wcmV2IHtcbiAgICAgICAgLnN3aXBlci1uYXZpZ2F0aW9uLWljb24sXG4gICAgICAgIDo6c2xvdHRlZCguc3dpcGVyLW5hdmlnYXRpb24taWNvbikge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgICAgIH1cbiAgICB9XG59XG4uc3dpcGVyLXZlcnRpY2FsIHtcbiAgICAuc3dpcGVyLWJ1dHRvbi1uZXh0LFxuICAgIC5zd2lwZXItYnV0dG9uLXByZXYsXG4gICAgfiAuc3dpcGVyLWJ1dHRvbi1uZXh0LFxuICAgIH4gLnN3aXBlci1idXR0b24tcHJldiB7XG4gICAgICAgIGxlZnQ6IHZhcigtLXN3aXBlci1uYXZpZ2F0aW9uLXRvcC1vZmZzZXQsIDUwJSk7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDBweCAtIHZhcigtLXN3aXBlci1uYXZpZ2F0aW9uLXNpemUpIC8gMik7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgIH1cbiAgICAuc3dpcGVyLWJ1dHRvbi1wcmV2LFxuICAgIH4gLnN3aXBlci1idXR0b24tcHJldiB7XG4gICAgICAgIGJvdHRvbTogYXV0bztcbiAgICAgICAgdG9wOiB2YXIoLS1zd2lwZXItbmF2aWdhdGlvbi1zaWRlcy1vZmZzZXQsIDRweCk7XG4gICAgICAgIC5zd2lwZXItbmF2aWdhdGlvbi1pY29uLFxuICAgICAgICA6OnNsb3R0ZWQoLnN3aXBlci1uYXZpZ2F0aW9uLWljb24pIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLnN3aXBlci1idXR0b24tbmV4dCxcbiAgICB+IC5zd2lwZXItYnV0dG9uLW5leHQge1xuICAgICAgICBib3R0b206IHZhcigtLXN3aXBlci1uYXZpZ2F0aW9uLXNpZGVzLW9mZnNldCwgNHB4KTtcbiAgICAgICAgdG9wOiBhdXRvO1xuICAgICAgICAuc3dpcGVyLW5hdmlnYXRpb24taWNvbixcbiAgICAgICAgOjpzbG90dGVkKC5zd2lwZXItbmF2aWdhdGlvbi1pY29uKSB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gICAgICAgIH1cbiAgICB9XG59XG4uc3dpcGVyLXBhZ2luYXRpb24ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcztcbiAgICB6LWluZGV4OiAxMDtcbiAgICAmLnN3aXBlci1wYWdpbmF0aW9uLWhpZGRlbiB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxuICAgICYuc3dpcGVyLXBhZ2luYXRpb24tZGlzYWJsZWQsXG4gICAgLnN3aXBlci1wYWdpbmF0aW9uLWRpc2FibGVkID4gJiB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG59XG4uc3dpcGVyLWhvcml6b250YWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cyxcbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLnN3aXBlci1wYWdpbmF0aW9uLWhvcml6b250YWwsXG4uc3dpcGVyLXBhZ2luYXRpb24tY3VzdG9tLFxuLnN3aXBlci1wYWdpbmF0aW9uLWZyYWN0aW9uIHtcbiAgICBib3R0b206IHZhcigtLXN3aXBlci1wYWdpbmF0aW9uLWJvdHRvbSwgOHB4KTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tdG9wLCBhdXRvKTtcbiAgICB3aWR0aDogMTAwJTtcbn1cbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMge1xuICAgIGZvbnQtc2l6ZTogMDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMC4zMyk7XG4gICAgfVxuICAgIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlLFxuICAgIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlLW1haW4ge1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIH1cbiAgICAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWFjdGl2ZS1wcmV2IHtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwLjY2KTtcbiAgICB9XG4gICAgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUtcHJldi1wcmV2IHtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwLjMzKTtcbiAgICB9XG4gICAgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUtbmV4dCB7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMC42Nik7XG4gICAgfVxuICAgIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlLW5leHQtbmV4dCB7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMC4zMyk7XG4gICAgfVxufVxuLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWluYWN0aXZlLWNvbG9yLCAjMDAwKTtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYm9yZGVyLXJhZGl1cywgNTAlKTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgaGVpZ2h0OiB2YXIoXG4gICAgICAgIC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWhlaWdodCxcbiAgICAgICAgdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LXNpemUsIDhweClcbiAgICApO1xuICAgIG9wYWNpdHk6IHZhcigtLXN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1pbmFjdGl2ZS1vcGFjaXR5LCAwLjIpO1xuICAgIHdpZHRoOiB2YXIoXG4gICAgICAgIC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LXdpZHRoLFxuICAgICAgICB2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtc2l6ZSwgOHB4KVxuICAgICk7XG4gICAgYnV0dG9uICYge1xuICAgICAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICB9XG4gICAgLnN3aXBlci1wYWdpbmF0aW9uLWNsaWNrYWJsZSAmIHtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cbiAgICAmOm9ubHktY2hpbGQge1xuICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUge1xuICAgIGJhY2tncm91bmQ6IHZhcigtLXN3aXBlci1wYWdpbmF0aW9uLWNvbG9yLCB2YXIoLS1zd2lwZXItdGhlbWUtY29sb3IpKTtcbiAgICBvcGFjaXR5OiB2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtb3BhY2l0eSwgMSk7XG59XG4uc3dpcGVyLXBhZ2luYXRpb24tdmVydGljYWwuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cyxcbi5zd2lwZXItdmVydGljYWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cyB7XG4gICAgbGVmdDogdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tbGVmdCwgYXV0byk7XG4gICAgcmlnaHQ6IHZhcigtLXN3aXBlci1wYWdpbmF0aW9uLXJpZ2h0LCA4cHgpO1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTUwJSwgMCk7XG4gICAgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtYXJnaW46IHZhcigtLXN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC12ZXJ0aWNhbC1nYXAsIDZweCkgMDtcbiAgICB9XG4gICAgJi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMge1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICB3aWR0aDogOHB4O1xuICAgICAgICAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHRyYW5zaXRpb246XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMnMsXG4gICAgICAgICAgICAgICAgdG9wIDAuMnM7XG4gICAgICAgIH1cbiAgICB9XG59XG4uc3dpcGVyLWhvcml6b250YWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cyxcbi5zd2lwZXItcGFnaW5hdGlvbi1ob3Jpem9udGFsLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMge1xuICAgIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQge1xuICAgICAgICBtYXJnaW46IDAgdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWhvcml6b250YWwtZ2FwLCA0cHgpO1xuICAgIH1cbiAgICAmLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyB7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgICAgICAgICAgIHRyYW5zaXRpb246XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMnMsXG4gICAgICAgICAgICAgICAgbGVmdCAwLjJzO1xuICAgICAgICB9XG4gICAgfVxufVxuLnN3aXBlci1ob3Jpem9udGFsLnN3aXBlci1ydGxcbiAgICA+IC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWNcbiAgICAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgICB0cmFuc2l0aW9uOlxuICAgICAgICB0cmFuc2Zvcm0gMC4ycyxcbiAgICAgICAgcmlnaHQgMC4ycztcbn1cbi5zd2lwZXItcGFnaW5hdGlvbi1mcmFjdGlvbiB7XG4gICAgY29sb3I6IHZhcigtLXN3aXBlci1wYWdpbmF0aW9uLWZyYWN0aW9uLWNvbG9yLCBpbmhlcml0KTtcbn1cbi5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2JhciB7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXItYmctY29sb3IsICMwMDAwMDA0MCk7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIC5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci1maWxsIHtcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tY29sb3IsIHZhcigtLXN3aXBlci10aGVtZS1jb2xvcikpO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IHRvcDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICAgIC5zd2lwZXItcnRsICYgLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLWZpbGwge1xuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCB0b3A7XG4gICAgfVxuICAgICYuc3dpcGVyLXBhZ2luYXRpb24taG9yaXpvbnRhbCxcbiAgICAmLnN3aXBlci1wYWdpbmF0aW9uLXZlcnRpY2FsLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLW9wcG9zaXRlLFxuICAgIC5zd2lwZXItaG9yaXpvbnRhbCA+ICYsXG4gICAgLnN3aXBlci12ZXJ0aWNhbCA+ICYuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXItb3Bwb3NpdGUge1xuICAgICAgICBoZWlnaHQ6IHZhcigtLXN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLXNpemUsIDRweCk7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICAgICYuc3dpcGVyLXBhZ2luYXRpb24taG9yaXpvbnRhbC5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci1vcHBvc2l0ZSxcbiAgICAmLnN3aXBlci1wYWdpbmF0aW9uLXZlcnRpY2FsLFxuICAgIC5zd2lwZXItaG9yaXpvbnRhbCA+ICYuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXItb3Bwb3NpdGUsXG4gICAgLnN3aXBlci12ZXJ0aWNhbCA+ICYge1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgd2lkdGg6IHZhcigtLXN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLXNpemUsIDRweCk7XG4gICAgfVxufVxuLnN3aXBlci1wYWdpbmF0aW9uLWxvY2sge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG4uc3dpcGVyLXNjcm9sbGJhciB7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tc3dpcGVyLXNjcm9sbGJhci1iZy1jb2xvciwgIzAwMDAwMDFhKTtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1zd2lwZXItc2Nyb2xsYmFyLWJvcmRlci1yYWRpdXMsIDEwcHgpO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3VjaC1hY3Rpb246IG5vbmU7XG4gICAgJi5zd2lwZXItc2Nyb2xsYmFyLWRpc2FibGVkLFxuICAgIC5zd2lwZXItc2Nyb2xsYmFyLWRpc2FibGVkID4gJiB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gICAgJi5zd2lwZXItc2Nyb2xsYmFyLWhvcml6b250YWwsXG4gICAgLnN3aXBlci1ob3Jpem9udGFsID4gJiB7XG4gICAgICAgIGJvdHRvbTogdmFyKC0tc3dpcGVyLXNjcm9sbGJhci1ib3R0b20sIDRweCk7XG4gICAgICAgIGhlaWdodDogdmFyKC0tc3dpcGVyLXNjcm9sbGJhci1zaXplLCA0cHgpO1xuICAgICAgICBsZWZ0OiB2YXIoLS1zd2lwZXItc2Nyb2xsYmFyLXNpZGVzLW9mZnNldCwgMSUpO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogdmFyKC0tc3dpcGVyLXNjcm9sbGJhci10b3AsIGF1dG8pO1xuICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gdmFyKC0tc3dpcGVyLXNjcm9sbGJhci1zaWRlcy1vZmZzZXQsIDElKSAqIDIpO1xuICAgICAgICB6LWluZGV4OiA1MDtcbiAgICB9XG4gICAgJi5zd2lwZXItc2Nyb2xsYmFyLXZlcnRpY2FsLFxuICAgIC5zd2lwZXItdmVydGljYWwgPiAmIHtcbiAgICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSB2YXIoLS1zd2lwZXItc2Nyb2xsYmFyLXNpZGVzLW9mZnNldCwgMSUpICogMik7XG4gICAgICAgIGxlZnQ6IHZhcigtLXN3aXBlci1zY3JvbGxiYXItbGVmdCwgYXV0byk7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcmlnaHQ6IHZhcigtLXN3aXBlci1zY3JvbGxiYXItcmlnaHQsIDRweCk7XG4gICAgICAgIHRvcDogdmFyKC0tc3dpcGVyLXNjcm9sbGJhci1zaWRlcy1vZmZzZXQsIDElKTtcbiAgICAgICAgd2lkdGg6IHZhcigtLXN3aXBlci1zY3JvbGxiYXItc2l6ZSwgNHB4KTtcbiAgICAgICAgei1pbmRleDogNTA7XG4gICAgfVxufVxuLnN3aXBlci1zY3JvbGxiYXItZHJhZyB7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tc3dpcGVyLXNjcm9sbGJhci1kcmFnLWJnLWNvbG9yLCAjMDAwMDAwODApO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXN3aXBlci1zY3JvbGxiYXItYm9yZGVyLXJhZGl1cywgMTBweCk7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMDtcbiAgICB3aWR0aDogMTAwJTtcbn1cbi5zd2lwZXItc2Nyb2xsYmFyLWN1cnNvci1kcmFnIHtcbiAgICBjdXJzb3I6IG1vdmU7XG59XG4uc3dpcGVyLXNjcm9sbGJhci1sb2NrIHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuLnN3aXBlci16b29tLWNvbnRhaW5lciB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgPiBjYW52YXMsXG4gICAgPiBpbWcsXG4gICAgPiBzdmcge1xuICAgICAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG4gICAgfVxufVxuLnN3aXBlci1zbGlkZS16b29tZWQge1xuICAgIGN1cnNvcjogbW92ZTtcbiAgICB0b3VjaC1hY3Rpb246IG5vbmU7XG59XG4uc3dpcGVyIC5zd2lwZXItbm90aWZpY2F0aW9uIHtcbiAgICBsZWZ0OiAwO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICB6LWluZGV4OiAtMTAwMDtcbn1cbi5zd2lwZXItZnJlZS1tb2RlID4gLnN3aXBlci13cmFwcGVyIHtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG59XG4uc3dpcGVyLWdyaWQgPiAuc3dpcGVyLXdyYXBwZXIge1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbn1cbi5zd2lwZXItZ3JpZC1jb2x1bW4gPiAuc3dpcGVyLXdyYXBwZXIge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgZmxleC13cmFwOiB3cmFwO1xufVxuLnN3aXBlci1mYWRlIHtcbiAgICAmLnN3aXBlci1mcmVlLW1vZGUge1xuICAgICAgICAuc3dpcGVyLXNsaWRlIHtcbiAgICAgICAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAuc3dpcGVyLXNsaWRlIHtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHk7XG4gICAgICAgIC5zd2lwZXItc2xpZGUge1xuICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLnN3aXBlci1zbGlkZS1hY3RpdmUge1xuICAgICAgICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgICAgICAgJiAuc3dpcGVyLXNsaWRlLWFjdGl2ZSB7XG4gICAgICAgICAgICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgICAgICAgfVxuICAgIH1cbn1cbi5zd2lwZXIuc3dpcGVyLWN1YmUge1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuLnN3aXBlci1jdWJlIHtcbiAgICAuc3dpcGVyLXNsaWRlIHtcbiAgICAgICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiAwIDA7XG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIC5zd2lwZXItc2xpZGUge1xuICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi5zd2lwZXItcnRsIC5zd2lwZXItc2xpZGUge1xuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiAxMDAlIDA7XG4gICAgfVxuICAgIC5zd2lwZXItc2xpZGUtYWN0aXZlIHtcbiAgICAgICAgJixcbiAgICAgICAgJiAuc3dpcGVyLXNsaWRlLWFjdGl2ZSB7XG4gICAgICAgICAgICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgICAgICAgfVxuICAgIH1cbiAgICAuc3dpcGVyLXNsaWRlLWFjdGl2ZSxcbiAgICAuc3dpcGVyLXNsaWRlLW5leHQsXG4gICAgLnN3aXBlci1zbGlkZS1wcmV2IHtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgfVxuICAgIC5zd2lwZXItY3ViZS1zaGFkb3cge1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgb3BhY2l0eTogMC42O1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB6LWluZGV4OiAwO1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjMDAwO1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIGZpbHRlcjogYmx1cig1MHB4KTtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgfVxuICAgIH1cbn1cbi5zd2lwZXItY3ViZSB7XG4gICAgLnN3aXBlci1zbGlkZS1uZXh0ICsgLnN3aXBlci1zbGlkZSB7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIH1cbn1cbi5zd2lwZXItY3ViZSB7XG4gICAgLnN3aXBlci1zbGlkZS1zaGFkb3ctY3ViZS5zd2lwZXItc2xpZGUtc2hhZG93LWJvdHRvbSxcbiAgICAuc3dpcGVyLXNsaWRlLXNoYWRvdy1jdWJlLnN3aXBlci1zbGlkZS1zaGFkb3ctbGVmdCxcbiAgICAuc3dpcGVyLXNsaWRlLXNoYWRvdy1jdWJlLnN3aXBlci1zbGlkZS1zaGFkb3ctcmlnaHQsXG4gICAgLnN3aXBlci1zbGlkZS1zaGFkb3ctY3ViZS5zd2lwZXItc2xpZGUtc2hhZG93LXRvcCB7XG4gICAgICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgei1pbmRleDogMDtcbiAgICB9XG59XG4uc3dpcGVyLnN3aXBlci1mbGlwIHtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cbi5zd2lwZXItZmxpcCB7XG4gICAgLnN3aXBlci1zbGlkZSB7XG4gICAgICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIC5zd2lwZXItc2xpZGUge1xuICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLnN3aXBlci1zbGlkZS1hY3RpdmUge1xuICAgICAgICAmLFxuICAgICAgICAmIC5zd2lwZXItc2xpZGUtYWN0aXZlIHtcbiAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICAgICAgICB9XG4gICAgfVxufVxuLnN3aXBlci1mbGlwIHtcbiAgICAuc3dpcGVyLXNsaWRlLXNoYWRvdy1mbGlwLnN3aXBlci1zbGlkZS1zaGFkb3ctYm90dG9tLFxuICAgIC5zd2lwZXItc2xpZGUtc2hhZG93LWZsaXAuc3dpcGVyLXNsaWRlLXNoYWRvdy1sZWZ0LFxuICAgIC5zd2lwZXItc2xpZGUtc2hhZG93LWZsaXAuc3dpcGVyLXNsaWRlLXNoYWRvdy1yaWdodCxcbiAgICAuc3dpcGVyLXNsaWRlLXNoYWRvdy1mbGlwLnN3aXBlci1zbGlkZS1zaGFkb3ctdG9wIHtcbiAgICAgICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICB6LWluZGV4OiAwO1xuICAgIH1cbn1cbi5zd2lwZXItY3JlYXRpdmUge1xuICAgIC5zd2lwZXItc2xpZGUge1xuICAgICAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eSwgaGVpZ2h0O1xuICAgIH1cbn1cbi5zd2lwZXIuc3dpcGVyLWNhcmRzIHtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cbi5zd2lwZXItY2FyZHMge1xuICAgIC5zd2lwZXItc2xpZGUge1xuICAgICAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBib3R0b207XG4gICAgfVxufVxuIiwiaHRtbCB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG59XG5cbiosXG4qOmJlZm9yZSxcbio6YWZ0ZXIge1xuICAgIGJveC1zaXppbmc6IGluaGVyaXQ7XG59XG5cbioge1xuICAgIG1heC1oZWlnaHQ6IDEwMDAwMDBweDtcbn1cblxuLy8tIEhUTUw1IGRpc3BsYXktcm9sZSByZXNldCBmb3Igb2xkZXIgYnJvd3NlcnNcbm1haW4sXG5hcnRpY2xlLFxuYXNpZGUsXG5kZXRhaWxzLFxuZmlnY2FwdGlvbixcbmZpZ3VyZSxcbmZvb3RlcixcbmhlYWRlcixcbmhncm91cCxcbm1lbnUsXG5uYXYsXG5zZWN0aW9uIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbn1cblxudWwsXG5vbCxcbmRsLFxucCxcbmgxLFxuaDIsXG5oMyxcbmg0LFxuaDUsXG5oNixcbmFkZHJlc3MsXG5mb3JtLFxudGFibGUsXG5ibG9ja3F1b3RlLFxuYXBwbGV0LFxuZW1iZWQsXG5vYmplY3QsXG5pZnJhbWUsXG5mcmFtZXNldCB7XG4gICAgbWFyZ2luOiAwIDAgJHZlcnRpY2FsLXJoeXRobTtcbn1cblxuYmxvY2txdW90ZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDRweCBzb2xpZCAkZ3JheTtcbiAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG59XG5cbnRhYmxlIHtcbiAgICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xufVxuXG50aCxcbnRkIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkZ3JheTtcbiAgICBwYWRkaW5nOiAzcHg7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xufVxuXG50aCB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbnVsLFxub2wge1xuICAgIHBhZGRpbmctbGVmdDogMjBweDtcbn1cblxudWwgdWwsXG51bCBvbCxcbm9sIHVsLFxub2wgb2wge1xuICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICBtYXJnaW46IDA7XG59XG5cbnVsIHtcbiAgICBsaXN0LXN0eWxlLXR5cGU6IGRpc2M7XG59XG5cbmRsIHtcbiAgICBAZXh0ZW5kICVjbGVhcmZpeDtcblxuICAgIGR0IHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIGNsZWFyOiBsZWZ0O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjNlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgfVxuXG4gICAgZGQge1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIH1cbn1cblxucHJlIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG59XG5cbmJvZHkge1xuICAgIGNvbG9yOiAkYmFzZS10ZXh0LWNvbG9yO1xuICAgIGJhY2tncm91bmQ6ICRiYXNlLWJhY2tncm91bmQtYm9keTtcbiAgICBmb250OiAjeyRmb250LXNpemUtYmFzZX0vI3skbGluZS1oZWlnaHQtYmFzZX0gJGJhc2UtZm9udC1mYW1pbHk7XG4gICAgbWluLXdpZHRoOiAkYmFzZS1taW4td2lkdGg7XG4gICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgICBtYXJnaW46IDA7XG5cbiAgICBAaW5jbHVkZSBtZWRpYSgn4omlZGVza3RvcCcpIHtcbiAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2UtbGFncmU7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZS1sYWdyZTtcbiAgICB9XG59XG5cbi8vIGFkYXB0aXZlIGltYWdlc1xuaW1nIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4vLyBnb29nbGUgbWFwIGZpeFxuLmdtLXN0eWxlIGltZyB7XG4gICAgbWF4LXdpZHRoOiBub25lO1xufVxuXG5pZnJhbWUge1xuICAgIEBpbmNsdWRlIG1lZGlhKCc8ZGVza3RvcCcpIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxufVxuXG4ucmVzaXplLWFjdGl2ZSAqIHtcbiAgICB0cmFuc2l0aW9uOiBub25lICFpbXBvcnRhbnQ7XG59IiwiLy8gQ29sb3JzXG4vLyBDb2xvciBjYWxjdWxhdG9yIC0gaHR0cDovL3Jhem9yamFtLmdpdGh1Yi5pby9zYXNzY29sb3VyZnVuY3Rpb25jYWxjdWxhdG9yL1xuLy8gQ29sb3IgbmFtZXMgLSBodHRwOi8vbmFtZS1vZi1jb2xvci5jb20vXG4vLyBDb2xvciBzeXN0ZW1cblxuJHdoaXRlOiAjZmZmICFkZWZhdWx0O1xuJGdyYXk6ICNkZGQgIWRlZmF1bHQ7XG4kZ3JheS0xMDA6ICNiZmJmYmY7IC8vXG4kZ3JheS0yMDA6ICNlOWVjZWYgIWRlZmF1bHQ7XG4kZ3JheS0zMDA6ICNkZWUyZTYgIWRlZmF1bHQ7XG4kZ3JheS00MDA6ICNjZWQ0ZGEgIWRlZmF1bHQ7XG4kZ3JheS01MDA6ICMyYjNkNDQgIWRlZmF1bHQ7XG4kZ3JheS02MDA6ICMxYjJkMzQgIWRlZmF1bHQ7XG4kZ3JheS03MDA6ICM2ZTczN2IgIWRlZmF1bHQ7XG4kZ3JheS04MDA6ICMxNjE2MTYgIWRlZmF1bHQ7XG4kZ3JheS05MDA6ICMwZDBhMTE7IC8vXG4kYmxhY2s6ICMwMDAgIWRlZmF1bHQ7XG5cbiRncmF5czogKCkgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdFxuJGdyYXlzOiBtYXAtbWVyZ2UoXG4gICAgKFxuICAgICAgICBcIjEwMFwiOiAkZ3JheS0xMDAsXG4gICAgICAgIFwiMjAwXCI6ICRncmF5LTIwMCxcbiAgICAgICAgXCIzMDBcIjogJGdyYXktMzAwLFxuICAgICAgICBcIjQwMFwiOiAkZ3JheS00MDAsXG4gICAgICAgIFwiNTAwXCI6ICRncmF5LTUwMCxcbiAgICAgICAgXCI2MDBcIjogJGdyYXktNjAwLFxuICAgICAgICBcIjcwMFwiOiAkZ3JheS03MDAsXG4gICAgICAgIFwiODAwXCI6ICRncmF5LTgwMCxcbiAgICAgICAgXCI5MDBcIjogJGdyYXktOTAwLFxuICAgICksXG4gICAgJGdyYXlzXG4pO1xuXG4kYmx1ZTogIzAwN2JmZiAhZGVmYXVsdDtcbiRpbmRpZ286ICMyMjE4MzggIWRlZmF1bHQ7XG4kcHVycGxlOiAjNWE1OTgxICFkZWZhdWx0O1xuJHBpbms6ICNjODQ3YTQ7IC8vXG4kcmVkOiAjZTkyMjZkOyAvL1xuJG9yYW5nZTogI2YzNWQxYiAhZGVmYXVsdDtcbiR5ZWxsb3c6ICNmMWJlMmI7IC8vXG4keWVsbG93LTE6ICNmZWUyMDk7IC8vXG4kZ3JlZW46ICMxZmYyM2Q7IC8vXG4kdGVhbDogIzY1YzE0YSAhZGVmYXVsdDtcbiRjeWFuOiAjNDRjM2MyICFkZWZhdWx0O1xuJGJyYXVuOiAjOTA0NzAyICFkZWZhdWx0O1xuJGJyYXVuLTEwMDogIzk2Nzc3MiAhZGVmYXVsdDtcbiR2aW9sZXQ6ICMyMDE5MzM7IC8vXG5cbiRjb2xvcnM6ICgpICFkZWZhdWx0O1xuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNjc3MvZG9sbGFyLXZhcmlhYmxlLWRlZmF1bHRcbiRjb2xvcnM6IG1hcC1tZXJnZShcbiAgICAoXG4gICAgICAgIFwiYmx1ZVwiOiAkYmx1ZSxcbiAgICAgICAgXCJpbmRpZ29cIjogJGluZGlnbyxcbiAgICAgICAgXCJwdXJwbGVcIjogJHB1cnBsZSxcbiAgICAgICAgXCJwaW5rXCI6ICRwaW5rLFxuICAgICAgICBcInJlZFwiOiAkcmVkLFxuICAgICAgICBcIm9yYW5nZVwiOiAkb3JhbmdlLFxuICAgICAgICBcInllbGxvd1wiOiAkeWVsbG93LFxuICAgICAgICBcImdyZWVuXCI6ICRncmVlbixcbiAgICAgICAgXCJ0ZWFsXCI6ICR0ZWFsLFxuICAgICAgICBcImN5YW5cIjogJGN5YW4sXG4gICAgICAgIFwid2hpdGVcIjogJHdoaXRlLFxuICAgICAgICBcImdyYXlcIjogJGdyYXktNjAwLFxuICAgICAgICBcImdyYXktZGFya1wiOiAkZ3JheS04MDAsXG4gICAgKSxcbiAgICAkY29sb3JzXG4pO1xuXG4kcHJpbWFyeTogJGJsdWUgIWRlZmF1bHQ7XG4kc2Vjb25kYXJ5OiAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kc3VjY2VzczogJGdyZWVuICFkZWZhdWx0O1xuJGluZm86ICRjeWFuICFkZWZhdWx0O1xuJHdhcm5pbmc6ICR5ZWxsb3cgIWRlZmF1bHQ7XG4kZGFuZ2VyOiAkcmVkICFkZWZhdWx0O1xuJGxpZ2h0OiAkZ3JheS0xMDAgIWRlZmF1bHQ7XG4kZGFyazogJGdyYXktODAwICFkZWZhdWx0O1xuXG4kdGhlbWUtY29sb3JzOiAoKSAhZGVmYXVsdDtcbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzY3NzL2RvbGxhci12YXJpYWJsZS1kZWZhdWx0XG4kdGhlbWUtY29sb3JzOiBtYXAtbWVyZ2UoXG4gICAgKFxuICAgICAgICBcInByaW1hcnlcIjogJHByaW1hcnksXG4gICAgICAgIFwic2Vjb25kYXJ5XCI6ICRzZWNvbmRhcnksXG4gICAgICAgIFwic3VjY2Vzc1wiOiAkc3VjY2VzcyxcbiAgICAgICAgXCJpbmZvXCI6ICRpbmZvLFxuICAgICAgICBcIndhcm5pbmdcIjogJHdhcm5pbmcsXG4gICAgICAgIFwiZGFuZ2VyXCI6ICRkYW5nZXIsXG4gICAgICAgIFwibGlnaHRcIjogJGxpZ2h0LFxuICAgICAgICBcImRhcmtcIjogJGRhcmssXG4gICAgKSxcbiAgICAkdGhlbWUtY29sb3JzXG4pO1xuXG4vLyBmb250cyBuYW1lXG4kYmFzZS1mb250LXNhbnMtc2VyaWY6IFwiQXJpYWxcIiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBcIkhlbHZldGljYVwiLCBzYW5zLXNlcmlmO1xuJGJhc2UtZm9udC1zZXJpZjogXCJUaW1lcyBOZXcgUm9tYW5cIiwgXCJUaW1lc1wiLCBcIkJhc2tlcnZpbGxlXCIsIFwiR2VvcmdpYVwiLCBzZXJpZjtcblxuJGJhc2UtZm9udDogXCJBbGJlcnRcIiwgJGJhc2UtZm9udC1zYW5zLXNlcmlmO1xuJGJhc2UtZm9udC0xOiBcImRlbmtfb25lXCIsICRiYXNlLWZvbnQtc2Fucy1zZXJpZjtcbiRpY29uczogXCJpY29tb29uXCI7XG5cbi8vIEJvZHlcbiRiYXNlLXRleHQtY29sb3I6ICR3aGl0ZTsgLy9cbiRiYXNlLWJhY2tncm91bmQtY29sb3I6ICRncmF5LTkwMDsgLy9cbiRiYXNlLWJhY2tncm91bmQtYm9keTogJGdyYXktOTAwICFkZWZhdWx0O1xuJGJhc2UtYmFja2dyb3VuZC1mb290ZXI6ICRiYXNlLWJhY2tncm91bmQtYm9keSAhZGVmYXVsdDtcbiRmb250LXNpemUtYmFzZTogMTZweCAhZGVmYXVsdDtcbiRsaW5lLWhlaWdodC1iYXNlOiAxLjIgIWRlZmF1bHQ7XG4kZm9udC1zaXplLWJhc2UtbGFncmU6IDE4cHggIWRlZmF1bHQ7XG4kbGluZS1oZWlnaHQtYmFzZS1sYWdyZTogMS4yICFkZWZhdWx0O1xuJGJhc2UtZm9udC1mYW1pbHk6ICRiYXNlLWZvbnQgIWRlZmF1bHQ7XG4kYmFzZS1taW4td2lkdGg6IDM2MHB4O1xuXG4vLyBiYXNlIHZhcmlhYmxlc1xuJGJhc2UtcmFkaXVzOiAwO1xuJGJhc2UtcmFkaXVzLXNtYWxsOiAwO1xuXG4vLyBjb250YWluZXIgc2V0dGluZ3NcbiRtYXgtd2lkdGgtY2VudGVyLWNvbnRhaW5lcjogMTY0MHB4O1xuJGd1dHRlcjogMjBweDtcbiRwYWRkaW5nLWNvbnRhaW5lcjogMCAkZ3V0dGVyO1xuXG4kdW5pdC1pbnRlcnZhbHM6IChcbiAgICBcInB4XCI6IDAuMDIsXG4gICAgXCJlbVwiOiAwLjAxLFxuICAgIFwicmVtXCI6IDAuMSxcbiAgICBcIlwiOiAwLFxuKTtcblxuLy8gZ3JpZCBzaXN0ZW1cbiRncmlkOiAoXG4gICAgcGg6IFwicGhvbmVcIixcbiAgICBzbTogXCJ0YWJsZXRcIixcbiAgICBtZDogXCJkZXNrdG9wXCIsXG4pO1xuXG4vLyBmb250IHdlaWdodFxuJHRoaW46IDEwMDtcbiRsaWdodC1mb250OiAzMDA7XG4kbm9ybWFsOiA0MDA7XG4kbWVkaXVtOiA1MDA7XG4kc2VtaWJvbGQ6IDYwMDtcbiRib2xkOiA3MDA7XG4kZXh0cmE6IDgwMDtcbiRibGFjay1mb250OiA5MDA7XG5cbi8vIGRlZmF1bHQgbWFyZ2luc1xuJHZlcnRpY2FsLXJoeXRobTogJGZvbnQtc2l6ZS1iYXNlICsgNDtcbiR3aWRnZXQtbWFyZ2luOiAyMHB4O1xuXG4vLyBMaWtzXG4kYmFzZS1saW5rLWNvbG9yOiAkYmx1ZTtcbiRiYXNlLWxpbmstaG92ZXItY29sb3I6ICRibGFjaztcbiR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4kdGV4dC1kZWNvcmF0aW9uLWhvdmVyOiBub25lO1xuXG4vLyBIZWFkZXJzIHNpemVcbiR0aXRsZS1wYWxldHRlOiAoXG4gICAgbW9iaWxlOiAoXG4gICAgICAgIFwiaDFcIjogMjAsXG4gICAgICAgIFwiaDJcIjogMTYsXG4gICAgICAgIFwiaDNcIjogMTUsXG4gICAgICAgIFwiaDRcIjogMTQsXG4gICAgICAgIFwiaDVcIjogMTQsXG4gICAgICAgIFwiaDZcIjogMTQsXG4gICAgKSxcbiAgICB0YWJsZXQ6IChcbiAgICAgICAgXCJoMVwiOiA0MCxcbiAgICAgICAgXCJoMlwiOiAzMCxcbiAgICAgICAgXCJoM1wiOiAyOCxcbiAgICAgICAgXCJoNFwiOiAyMCxcbiAgICAgICAgXCJoNVwiOiAxOCxcbiAgICAgICAgXCJoNlwiOiAxNixcbiAgICApLFxuICAgIGRlc2t0b3A6IChcbiAgICAgICAgXCJoMVwiOiA0MCxcbiAgICAgICAgXCJoMlwiOiA0OCxcbiAgICAgICAgXCJoM1wiOiAyOCxcbiAgICAgICAgXCJoNFwiOiAyMCxcbiAgICAgICAgXCJoNVwiOiAxOCxcbiAgICAgICAgXCJoNlwiOiAxNixcbiAgICApLFxuICAgIHdpZGVzY3JlZW46IChcbiAgICAgICAgXCJoMVwiOiA2MCxcbiAgICAgICAgXCJoMlwiOiA2MCxcbiAgICAgICAgXCJoM1wiOiAyOCxcbiAgICAgICAgXCJoNFwiOiAyMCxcbiAgICAgICAgXCJoNVwiOiAxOCxcbiAgICAgICAgXCJoNlwiOiAxNixcbiAgICApLFxuKTtcblxuLy8gaGVhZGluZ3Mgc3R5bGVcbiRoZWFkaW5ncy1mb250LWZhbWlseTogJGJhc2UtZm9udC1mYW1pbHk7XG4kaGVhZGluZ3MtY29sb3I6IGluaGVyaXQgIWRlZmF1bHQ7XG5cbi8vIEJ1dHRvbnNcbiRidG4tYm9yZGVyLXdpZHRoOiAxcHggIWRlZmF1bHQ7XG4kYnRuLWJvcmRlci1yYWRpdXM6IDlweCAhZGVmYXVsdDtcbiRidG4tYm9yZGVyLXJhZGl1cy1zbTogY2FsYygkYnRuLWJvcmRlci1yYWRpdXMgLyAyKSAhZGVmYXVsdDtcbiRidG4tYm9yZGVyLXJhZGl1cy1sZzogY2FsYygkYnRuLWJvcmRlci1yYWRpdXMgKiAyKSAhZGVmYXVsdDtcblxuJGJ0bi1wYWRkaW5nOiAyMHB4IDE5cHggIWRlZmF1bHQ7XG4kYnRuLXBhZGRpbmctdGFibGV0OiAyMHB4IDE5cHggIWRlZmF1bHQ7XG4kYnRuLXBhZGRpbmctZGVza3RvcDogMjBweCAxOXB4ICFkZWZhdWx0O1xuXG4kYnRuLXBhZGRpbmctc206IDVweCAxMHB4ICFkZWZhdWx0O1xuJGJ0bi1wYWRkaW5nLWxnOiAxNXB4IDIwcHggMjZweCAhZGVmYXVsdDtcbiRidG4tZm9udC1zaXplOiAxOHB4ICFkZWZhdWx0O1xuJGJ0bi1mb250LXNpemUtc206IDEycHggIWRlZmF1bHQ7XG4kYnRuLWZvbnQtc2l6ZS1sZzogMjRweCAhZGVmYXVsdDtcbiRidG4tbGluZS1oZWlnaHQ6ICRidG4tZm9udC1zaXplICsgNDtcbiRidG4tbGluZS1oZWlnaHQtc206ICRidG4tZm9udC1zaXplLXNtICsgMjtcbiRidG4tbGluZS1oZWlnaHQtbGc6ICRidG4tZm9udC1zaXplLWxnICsgMjtcblxuLy8gYnRuIGRlZmF1bHRcbiRidG4tY29sb3ItZGVmYXVsdDogJGJyYXVuICFkZWZhdWx0O1xuJGJ0bi1iYWNrZ3JvdW5kLWRlZmF1bHQ6IGxpbmVhci1ncmFkaWVudChcbiAgICB0byBib3R0b20sXG4gICAgJHllbGxvdyAwJSxcbiAgICAkb3JhbmdlIDEwMCVcbikgIWRlZmF1bHQ7XG4kYnRuLWJvcmRlci1jb2xvci1kZWZhdWx0OiAkYnRuLWJhY2tncm91bmQtZGVmYXVsdCAhZGVmYXVsdDtcbiRidG4tc2hhZG93LWRlZmF1bHQ6IDAgMXB4IDAgI2ZiMWYxZiAhZGVmYXVsdDtcblxuLy8gaG92ZXJcbiRidG4taG92ZXItY29sb3ItZGVmYXVsdDogJGJyYXVuICFkZWZhdWx0O1xuJGJ0bi1ob3Zlci1iYWNrZ3JvdW5kLWRlZmF1bHQ6IGxpbmVhci1ncmFkaWVudChcbiAgICB0byB0b3AsXG4gICAgJHllbGxvdyAwJSxcbiAgICAkb3JhbmdlIDEwMCVcbikgIWRlZmF1bHQ7XG4kYnRuLWhvdmVyLWJvcmRlci1jb2xvci1kZWZhdWx0OiAkYnRuLWJhY2tncm91bmQtZGVmYXVsdCAhZGVmYXVsdDtcbiRidG4taG92ZXItc2hhZG93LWRlZmF1bHQ6IDAgLTFweCAwICNmYjFmMWYgIWRlZmF1bHQ7XG5cbi8vIGJ0biBwcmltYXJ5XG4kYnRuLWNvbG9yLXByaW1hcnk6ICR3aGl0ZTsgLy9cbiRidG4tYmFja2dyb3VuZC1wcmltYXJ5OiBsaW5lYXItZ3JhZGllbnQodG8gdG9wLCAjNzcyYTgzIDAlLCAjZDIzYTgyIDEwMCUpOyAvL1xuJGJ0bi1ib3JkZXItY29sb3ItcHJpbWFyeTogI2I3MzVjYTsgLy9cbi8vIGhvdmVyXG4kYnRuLWhvdmVyLWNvbG9yLXByaW1hcnk6ICR3aGl0ZTsgLy9cbiRidG4taG92ZXItYmFja2dyb3VuZC1wcmltYXJ5OiBsaW5lYXItZ3JhZGllbnQoXG4gICAgdG8gdG9wLFxuICAgICM2YzI4NTMgMCUsXG4gICAgIzZjMjg1MyAxMDAlXG4pOyAvL1xuJGJ0bi1ob3Zlci1ib3JkZXItY29sb3ItcHJpbWFyeTogIzY2ZDFkNjsgLy9cblxuLy8gYnRuIHNlY29uZGFyeVxuJGJ0bi1jb2xvci1zZWNvbmRhcnk6ICM2NmQxZDY7IC8vXG4kYnRuLWJhY2tncm91bmQtc2Vjb25kYXJ5OiAkZ3JheS05MDA7IC8vXG4kYnRuLWJvcmRlci1jb2xvci1zZWNvbmRhcnk6ICM2NmQxZDY7IC8vXG4vLyBob3ZlclxuJGJ0bi1ob3Zlci1jb2xvci1zZWNvbmRhcnk6ICR3aGl0ZSAhZGVmYXVsdDtcbiRidG4taG92ZXItYmFja2dyb3VuZC1zZWNvbmRhcnk6ICRncmF5LTkwMDsgLy9cbiRidG4taG92ZXItYm9yZGVyLWNvbG9yLXNlY29uZGFyeTogIzY2ZDFkNjsgLy9cblxuLy8gRm9ybXNcbiRpbnB1dC1mb250LXNpemU6ICRmb250LXNpemUtYmFzZTsgLy8gZm9udCBzaXplIGZvciBmb3JtcyBlbGVtZW50c1xuJGlucHV0LWxpbmUtaGVpZ2h0OiAkaW5wdXQtZm9udC1zaXplICsgMjsgLy8gbGluZSBoZWlnaHQgZm9yIGZvcm1zIGVsZW1lbnRzXG4kaW5wdXQtZm9udC1mYW1pbHk6ICRiYXNlLWZvbnQ7XG4kaW5wdXQtcGFkZGluZy12ZXJ0aWNhbDogMTBweCAhZGVmYXVsdDsgLy8gcGFkZGluZyBmb3IgZm9ybXMgZWxlbWVudHNcbiRpbnB1dC1wYWRkaW5nLWhvcml6b250YWw6IDIwcHggIWRlZmF1bHQ7IC8vIHBhZGRpbmcgZm9yIGZvcm1zIGVsZW1lbnRzXG4kaW5wdXQtcGFkZGluZzogJGlucHV0LXBhZGRpbmctdmVydGljYWwgJGlucHV0LXBhZGRpbmctaG9yaXpvbnRhbCAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItd2lkdGg6IDFweCAhZGVmYXVsdDsgLy8gYm9yZGVyIGlucHV0J3Mgd2lkdGhcbiRpbnB1dC1ib3JkZXI6ICRpbnB1dC1ib3JkZXItd2lkdGggc29saWQgJGJsYWNrICFkZWZhdWx0OyAvLyBib3JkZXIgZm9yIGZvcm1zIGVsZW1lbnRzXG4kaW5wdXQtYm9yZGVyLXJhZGl1czogMCAhZGVmYXVsdDsgLy8gYm9yZGVyIHJhZGl1cyBmb3IgZm9ybXMgZWxlbWVudHNcbiRpbnBIOiAkaW5wdXQtYm9yZGVyLXdpZHRoICsgMiAqICRpbnB1dC1wYWRkaW5nLXZlcnRpY2FsICsgJGlucHV0LWxpbmUtaGVpZ2h0O1xuJGlucHV0LWhlaWdodDogKFxuICAgIDIgKiAoJGlucHV0LWJvcmRlci13aWR0aCArICRpbnB1dC1wYWRkaW5nLXZlcnRpY2FsKSArICRpbnB1dC1saW5lLWhlaWdodFxuKSAhZGVmYXVsdDsgLy8gaGVpZ2h0IGZvciBmb3JtcyBlbGVtZW50c1xuLy9zdWJtaXRcbiRzdWJtaXQtYmFja2dyb3VuZDogJGJ0bi1iYWNrZ3JvdW5kLWRlZmF1bHQ7XG4kc3VibWl0LWNvbG9yOiAkcGluaztcbiRzdWJtaXQtaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0O1xuJHN1Ym1pdC1ib3JkZXItd2lkdGg6ICRidG4tYm9yZGVyLXdpZHRoO1xuJHN1Ym1pdC1ib3JkZXItc3R5bGU6IHNvbGlkO1xuJHN1Ym1pdC1ib3JkZXItY29sb3I6ICRidG4tYm9yZGVyLWNvbG9yLWRlZmF1bHQ7XG4kc3VibWl0LXBhZGRpbmc6ICRidG4tcGFkZGluZztcbiRzdWJtaXQtZm9udC1zaXplOiAkaW5wdXQtZm9udC1zaXplO1xuJHN1Ym1pdC1saW5lLWhlaWdodDogJGJ0bi1saW5lLWhlaWdodDtcbiRzdWJtaXQtcmFkaXVzOiAkYnRuLWJvcmRlci1yYWRpdXM7XG4vLyBzdWJtaXQgaG92ZXJcbiRzdWJtaXQtaG92ZXItYmFja2dyb3VuZDogJHN1Ym1pdC1jb2xvcjsgLy8gc3VibWl0IGJhY2tncm91bmQgaG92ZXJcbiRzdWJtaXQtaG92ZXItY29sb3I6ICRzdWJtaXQtYmFja2dyb3VuZDsgLy8gc3VibWl0IGNvbG9yIGhvdmVyXG4kc3VibWl0LWhvdmVyLWJvcmRlci1jb2xvcjogJHN1Ym1pdC1iYWNrZ3JvdW5kOyAvLyBzdWJtaXQgY29sb3IgaG92ZXJcblxuLy9mb2N1c1xuJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvcjogJGJsYWNrICFkZWZhdWx0OyAvLyBib3JkZXIgY29sb3IgZm9yIGZvcm1zIGVsZW1lbnRzXG4vL3BsYWNlaG9sZGVyXG4kcGxhY2Vob2xkZXItY29sb3I6ICRncmF5ICFkZWZhdWx0O1xuLy8gc2VsZWN0XG4kc2VsZWN0LWhlaWdodDogJGlucHV0LWhlaWdodDtcbiRzZWxlY3QtYm9yZGVyOiAkaW5wdXQtYm9yZGVyO1xuJHNlbGVjdC1ib3JkZXItcmFkaXVzOiAkaW5wdXQtYm9yZGVyLXJhZGl1cztcbiRzZWxlY3QtcGFkZGluZzogJGlucHV0LXBhZGRpbmc7XG4kc2VsZWN0LWZvbnQtc2l6ZTogJGlucHV0LWZvbnQtc2l6ZTtcbiRzZWxlY3QtbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodDtcblxuLy8gYW5pbWF0aW9uIHNwZWVkXG4kYW5pbWF0aW9uLXNwZWVkOiAwLjVzO1xuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG4vLyAgICAgXyAgICAgICAgICAgIF8gICAgICAgICAgIF8gICAgICAgICAgICAgICAgICAgICAgICAgICBfIF9cbi8vICAgIChfKSAgICAgICAgICB8IHwgICAgICAgICB8IHwgICAgICAgICAgICAgICAgICAgICAgICAgfCAoXylcbi8vICAgICBfIF8gX18gICBfX198IHxfICAgXyAgX198IHwgX19fICAgXyBfXyBfX18gICBfX18gIF9ffCB8XyAgX18gX1xuLy8gICAgfCB8ICdfIFxcIC8gX198IHwgfCB8IHwvIF9gIHwvIF8gXFwgfCAnXyBgIF8gXFwgLyBfIFxcLyBfYCB8IHwvIF9gIHxcbi8vICAgIHwgfCB8IHwgfCAoX198IHwgfF98IHwgKF98IHwgIF9fLyB8IHwgfCB8IHwgfCAgX18vIChffCB8IHwgKF98IHxcbi8vICAgIHxffF98IHxffFxcX19ffF98XFxfXyxffFxcX18sX3xcXF9fX3wgfF98IHxffCB8X3xcXF9fX3xcXF9fLF98X3xcXF9fLF98XG4vL1xuLy8gICAgICBTaW1wbGUsIGVsZWdhbnQgYW5kIG1haW50YWluYWJsZSBtZWRpYSBxdWVyaWVzIGluIFNhc3Ncbi8vICAgICAgICAgICAgICAgICAgICAgICAgdjEuNC45XG4vL1xuLy8gICAgICAgIGh0dHBzOi8vZWR1YXJkb2JvdWNhcy5naXRodWIuaW8vaW5jbHVkZS1tZWRpYVxuLy9cbi8vICAgICAgICAgQXV0aG9yczogRWR1YXJkbyBCb3VjYXMgKEBlZHVhcmRvYm91Y2FzKVxuLy8gICAgICAgICAgICAgICAgICBLaXR0eSBHaXJhdWRlbCAoQGtpdHR5Z2lyYXVkZWwpXG4vL1xuLy8gICAgICBUaGlzIHByb2plY3QgaXMgbGljZW5zZWQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBNSVQgbGljZW5zZVxuLy8vL1xuLy8vIGluY2x1ZGUtbWVkaWEgbGlicmFyeSBwdWJsaWMgY29uZmlndXJhdGlvblxuLy8vIEBhdXRob3IgRWR1YXJkbyBCb3VjYXNcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vL1xuXG5cbi8vL1xuLy8vIENyZWF0ZXMgYSBsaXN0IG9mIGdsb2JhbCBicmVha3BvaW50c1xuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIENyZWF0ZXMgYSBzaW5nbGUgYnJlYWtwb2ludCB3aXRoIHRoZSBsYWJlbCBgcGhvbmVgXG4vLy8gICRicmVha3BvaW50czogKCdwaG9uZSc6IDMyMHB4KTtcbi8vL1xuJGJyZWFrcG9pbnRzOiAoXG4gICdwaG9uZSc6IDMyMHB4LFxuICAndGFibGV0JzogNzY4cHgsXG4gICdkZXNrdG9wJzogMTAyNHB4XG4pICFkZWZhdWx0O1xuXG5cbi8vL1xuLy8vIENyZWF0ZXMgYSBsaXN0IG9mIHN0YXRpYyBleHByZXNzaW9ucyBvciBtZWRpYSB0eXBlc1xuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIENyZWF0ZXMgYSBzaW5nbGUgbWVkaWEgdHlwZSAoc2NyZWVuKVxuLy8vICAkbWVkaWEtZXhwcmVzc2lvbnM6ICgnc2NyZWVuJzogJ3NjcmVlbicpO1xuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIENyZWF0ZXMgYSBzdGF0aWMgZXhwcmVzc2lvbiB3aXRoIGxvZ2ljYWwgZGlzanVuY3Rpb24gKE9SIG9wZXJhdG9yKVxuLy8vICAkbWVkaWEtZXhwcmVzc2lvbnM6IChcbi8vLyAgICAncmV0aW5hMngnOiAnKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMiksIChtaW4tcmVzb2x1dGlvbjogMTkyZHBpKSdcbi8vLyAgKTtcbi8vL1xuJG1lZGlhLWV4cHJlc3Npb25zOiAoXG4gICdzY3JlZW4nOiAnc2NyZWVuJyxcbiAgJ3ByaW50JzogJ3ByaW50JyxcbiAgJ2hhbmRoZWxkJzogJ2hhbmRoZWxkJyxcbiAgJ2xhbmRzY2FwZSc6ICcob3JpZW50YXRpb246IGxhbmRzY2FwZSknLFxuICAncG9ydHJhaXQnOiAnKG9yaWVudGF0aW9uOiBwb3J0cmFpdCknLFxuICAncmV0aW5hMngnOiAnKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMiksIChtaW4tcmVzb2x1dGlvbjogMTkyZHBpKSwgKG1pbi1yZXNvbHV0aW9uOiAyZHBweCknLFxuICAncmV0aW5hM3gnOiAnKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMyksIChtaW4tcmVzb2x1dGlvbjogMzUwZHBpKSwgKG1pbi1yZXNvbHV0aW9uOiAzZHBweCknXG4pICFkZWZhdWx0O1xuXG5cbi8vL1xuLy8vIERlZmluZXMgYSBudW1iZXIgdG8gYmUgYWRkZWQgb3Igc3VidHJhY3RlZCBmcm9tIGVhY2ggdW5pdCB3aGVuIGRlY2xhcmluZyBicmVha3BvaW50cyB3aXRoIGV4Y2x1c2l2ZSBpbnRlcnZhbHNcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBJbnRlcnZhbCBmb3IgcGl4ZWxzIGlzIGRlZmluZWQgYXMgYDFgIGJ5IGRlZmF1bHRcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz4xMjhweCcpIHt9XG4vLy9cbi8vLyAgLyogR2VuZXJhdGVzOiAqL1xuLy8vICBAbWVkaWEgKG1pbi13aWR0aDogMTI5cHgpIHt9XG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gSW50ZXJ2YWwgZm9yIGVtcyBpcyBkZWZpbmVkIGFzIGAwLjAxYCBieSBkZWZhdWx0XG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+MjBlbScpIHt9XG4vLy9cbi8vLyAgLyogR2VuZXJhdGVzOiAqL1xuLy8vICBAbWVkaWEgKG1pbi13aWR0aDogMjAuMDFlbSkge31cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBJbnRlcnZhbCBmb3IgcmVtcyBpcyBkZWZpbmVkIGFzIGAwLjFgIGJ5IGRlZmF1bHQsIHRvIGJlIHVzZWQgd2l0aCBgZm9udC1zaXplOiA2Mi41JTtgXG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+Mi4wcmVtJykge31cbi8vL1xuLy8vICAvKiBHZW5lcmF0ZXM6ICovXG4vLy8gIEBtZWRpYSAobWluLXdpZHRoOiAyLjFyZW0pIHt9XG4vLy9cbiR1bml0LWludGVydmFsczogKFxuICAncHgnOiAxLFxuICAnZW0nOiAwLjAxLFxuICAncmVtJzogMC4xLFxuICAnJzogMFxuKSAhZGVmYXVsdDtcblxuLy8vXG4vLy8gRGVmaW5lcyB3aGV0aGVyIHN1cHBvcnQgZm9yIG1lZGlhIHF1ZXJpZXMgaXMgYXZhaWxhYmxlLCB1c2VmdWwgZm9yIGNyZWF0aW5nIHNlcGFyYXRlIHN0eWxlc2hlZXRzXG4vLy8gZm9yIGJyb3dzZXJzIHRoYXQgZG9uJ3Qgc3VwcG9ydCBtZWRpYSBxdWVyaWVzLlxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIERpc2FibGVzIHN1cHBvcnQgZm9yIG1lZGlhIHF1ZXJpZXNcbi8vLyAgJGltLW1lZGlhLXN1cHBvcnQ6IGZhbHNlO1xuLy8vICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XG4vLy8gICAgLmZvbyB7XG4vLy8gICAgICBjb2xvcjogdG9tYXRvO1xuLy8vICAgIH1cbi8vLyAgfVxuLy8vXG4vLy8gIC8qIEdlbmVyYXRlczogKi9cbi8vLyAgLmZvbyB7XG4vLy8gICAgY29sb3I6IHRvbWF0bztcbi8vLyAgfVxuLy8vXG4kaW0tbWVkaWEtc3VwcG9ydDogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vXG4vLy8gU2VsZWN0cyB3aGljaCBicmVha3BvaW50IHRvIGVtdWxhdGUgd2hlbiBzdXBwb3J0IGZvciBtZWRpYSBxdWVyaWVzIGlzIGRpc2FibGVkLiBNZWRpYSBxdWVyaWVzIHRoYXQgc3RhcnQgYXQgb3Jcbi8vLyBpbnRlcmNlcHQgdGhlIGJyZWFrcG9pbnQgd2lsbCBiZSBkaXNwbGF5ZWQsIGFueSBvdGhlcnMgd2lsbCBiZSBpZ25vcmVkLlxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFRoaXMgbWVkaWEgcXVlcnkgd2lsbCBzaG93IGJlY2F1c2UgaXQgaW50ZXJjZXB0cyB0aGUgc3RhdGljIGJyZWFrcG9pbnRcbi8vLyAgJGltLW1lZGlhLXN1cHBvcnQ6IGZhbHNlO1xuLy8vICAkaW0tbm8tbWVkaWEtYnJlYWtwb2ludDogJ2Rlc2t0b3AnO1xuLy8vICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XG4vLy8gICAgLmZvbyB7XG4vLy8gICAgICBjb2xvcjogdG9tYXRvO1xuLy8vICAgIH1cbi8vLyAgfVxuLy8vXG4vLy8gIC8qIEdlbmVyYXRlczogKi9cbi8vLyAgLmZvbyB7XG4vLy8gICAgY29sb3I6IHRvbWF0bztcbi8vLyAgfVxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFRoaXMgbWVkaWEgcXVlcnkgd2lsbCBOT1Qgc2hvdyBiZWNhdXNlIGl0IGRvZXMgbm90IGludGVyY2VwdCB0aGUgZGVza3RvcCBicmVha3BvaW50XG4vLy8gICRpbS1tZWRpYS1zdXBwb3J0OiBmYWxzZTtcbi8vLyAgJGltLW5vLW1lZGlhLWJyZWFrcG9pbnQ6ICd0YWJsZXQnO1xuLy8vICBAaW5jbHVkZSBtZWRpYSgnPj1kZXNrdG9wJykge1xuLy8vICAgIC5mb28ge1xuLy8vICAgICAgY29sb3I6IHRvbWF0bztcbi8vLyAgICB9XG4vLy8gIH1cbi8vL1xuLy8vICAvKiBObyBvdXRwdXQgKi9cbi8vL1xuJGltLW5vLW1lZGlhLWJyZWFrcG9pbnQ6ICdkZXNrdG9wJyAhZGVmYXVsdDtcblxuLy8vXG4vLy8gU2VsZWN0cyB3aGljaCBtZWRpYSBleHByZXNzaW9ucyBhcmUgYWxsb3dlZCBpbiBhbiBleHByZXNzaW9uIGZvciBpdCB0byBiZSB1c2VkIHdoZW4gbWVkaWEgcXVlcmllc1xuLy8vIGFyZSBub3Qgc3VwcG9ydGVkLlxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFRoaXMgbWVkaWEgcXVlcnkgd2lsbCBzaG93IGJlY2F1c2UgaXQgaW50ZXJjZXB0cyB0aGUgc3RhdGljIGJyZWFrcG9pbnQgYW5kIGNvbnRhaW5zIG9ubHkgYWNjZXB0ZWQgbWVkaWEgZXhwcmVzc2lvbnNcbi8vLyAgJGltLW1lZGlhLXN1cHBvcnQ6IGZhbHNlO1xuLy8vICAkaW0tbm8tbWVkaWEtYnJlYWtwb2ludDogJ2Rlc2t0b3AnO1xuLy8vICAkaW0tbm8tbWVkaWEtZXhwcmVzc2lvbnM6ICgnc2NyZWVuJyk7XG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcsICdzY3JlZW4nKSB7XG4vLy8gICAgLmZvbyB7XG4vLy8gICAgICBjb2xvcjogdG9tYXRvO1xuLy8vICAgIH1cbi8vLyAgfVxuLy8vXG4vLy8gICAvKiBHZW5lcmF0ZXM6ICovXG4vLy8gICAuZm9vIHtcbi8vLyAgICAgY29sb3I6IHRvbWF0bztcbi8vLyAgIH1cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBUaGlzIG1lZGlhIHF1ZXJ5IHdpbGwgTk9UIHNob3cgYmVjYXVzZSBpdCBpbnRlcmNlcHRzIHRoZSBzdGF0aWMgYnJlYWtwb2ludCBidXQgY29udGFpbnMgYSBtZWRpYSBleHByZXNzaW9uIHRoYXQgaXMgbm90IGFjY2VwdGVkXG4vLy8gICRpbS1tZWRpYS1zdXBwb3J0OiBmYWxzZTtcbi8vLyAgJGltLW5vLW1lZGlhLWJyZWFrcG9pbnQ6ICdkZXNrdG9wJztcbi8vLyAgJGltLW5vLW1lZGlhLWV4cHJlc3Npb25zOiAoJ3NjcmVlbicpO1xuLy8vICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnLCAncmV0aW5hMngnKSB7XG4vLy8gICAgLmZvbyB7XG4vLy8gICAgICBjb2xvcjogdG9tYXRvO1xuLy8vICAgIH1cbi8vLyAgfVxuLy8vXG4vLy8gIC8qIE5vIG91dHB1dCAqL1xuLy8vXG4kaW0tbm8tbWVkaWEtZXhwcmVzc2lvbnM6ICgnc2NyZWVuJywgJ3BvcnRyYWl0JywgJ2xhbmRzY2FwZScpICFkZWZhdWx0O1xuXG4vLy8vXG4vLy8gQ3Jvc3MtZW5naW5lIGxvZ2dpbmcgZW5naW5lXG4vLy8gQGF1dGhvciBLaXR0eSBHaXJhdWRlbFxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vL1xuXG5cbi8vL1xuLy8vIExvZyBhIG1lc3NhZ2UgZWl0aGVyIHdpdGggYEBlcnJvcmAgaWYgc3VwcG9ydGVkXG4vLy8gZWxzZSB3aXRoIGBAd2FybmAsIHVzaW5nIGBmZWF0dXJlLWV4aXN0cygnYXQtZXJyb3InKWBcbi8vLyB0byBkZXRlY3Qgc3VwcG9ydC5cbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkbWVzc2FnZSAtIE1lc3NhZ2UgdG8gbG9nXG4vLy9cbkBmdW5jdGlvbiBpbS1sb2coJG1lc3NhZ2UpIHtcbiAgQGlmIGZlYXR1cmUtZXhpc3RzKCdhdC1lcnJvcicpIHtcbiAgICBAZXJyb3IgJG1lc3NhZ2U7XG4gIH0gQGVsc2Uge1xuICAgIEB3YXJuICRtZXNzYWdlO1xuICAgICRfOiBub29wKCk7XG4gIH1cblxuICBAcmV0dXJuICRtZXNzYWdlO1xufVxuXG5cbi8vL1xuLy8vIFdyYXBwZXIgbWl4aW4gZm9yIHRoZSBsb2cgZnVuY3Rpb24gc28gaXQgY2FuIGJlIHVzZWQgd2l0aCBhIG1vcmUgZnJpZW5kbHlcbi8vLyBBUEkgdGhhbiBgQGlmIGltLWxvZygnLi4nKSB7fWAgb3IgYCRfOiBpbS1sb2coJy4uJylgLiBCYXNpY2FsbHksIHVzZSB0aGUgZnVuY3Rpb25cbi8vLyB3aXRoaW4gZnVuY3Rpb25zIGJlY2F1c2UgaXQgaXMgbm90IHBvc3NpYmxlIHRvIGluY2x1ZGUgYSBtaXhpbiBpbiBhIGZ1bmN0aW9uXG4vLy8gYW5kIHVzZSB0aGUgbWl4aW4gZXZlcnl3aGVyZSBlbHNlIGJlY2F1c2UgaXQncyBtdWNoIG1vcmUgZWxlZ2FudC5cbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkbWVzc2FnZSAtIE1lc3NhZ2UgdG8gbG9nXG4vLy9cbkBtaXhpbiBsb2coJG1lc3NhZ2UpIHtcbiAgQGlmIGltLWxvZygkbWVzc2FnZSkge31cbn1cblxuXG4vLy9cbi8vLyBGdW5jdGlvbiB3aXRoIG5vIGBAcmV0dXJuYCBjYWxsZWQgbmV4dCB0byBgQHdhcm5gIGluIFNhc3MgMy4zXG4vLy8gdG8gdHJpZ2dlciBhIGNvbXBpbGluZyBlcnJvciBhbmQgc3RvcCB0aGUgcHJvY2Vzcy5cbi8vL1xuQGZ1bmN0aW9uIG5vb3AoKSB7fVxuXG4vLy9cbi8vLyBEZXRlcm1pbmVzIHdoZXRoZXIgYSBsaXN0IG9mIGNvbmRpdGlvbnMgaXMgaW50ZXJjZXB0ZWQgYnkgdGhlIHN0YXRpYyBicmVha3BvaW50LlxuLy8vXG4vLy8gQHBhcmFtIHtBcmdsaXN0fSAgICRjb25kaXRpb25zICAtIE1lZGlhIHF1ZXJ5IGNvbmRpdGlvbnNcbi8vL1xuLy8vIEByZXR1cm4ge0Jvb2xlYW59IC0gUmV0dXJucyB0cnVlIGlmIHRoZSBjb25kaXRpb25zIGFyZSBpbnRlcmNlcHRlZCBieSB0aGUgc3RhdGljIGJyZWFrcG9pbnRcbi8vL1xuQGZ1bmN0aW9uIGltLWludGVyY2VwdHMtc3RhdGljLWJyZWFrcG9pbnQoJGNvbmRpdGlvbnMuLi4pIHtcbiAgJG5vLW1lZGlhLWJyZWFrcG9pbnQtdmFsdWU6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkaW0tbm8tbWVkaWEtYnJlYWtwb2ludCk7XG5cbiAgQGlmIG5vdCAkbm8tbWVkaWEtYnJlYWtwb2ludC12YWx1ZSB7XG4gICAgQGlmIGltLWxvZygnYCN7JGltLW5vLW1lZGlhLWJyZWFrcG9pbnR9YCBpcyBub3QgYSB2YWxpZCBicmVha3BvaW50LicpIHt9XG4gIH1cblxuICBAZWFjaCAkY29uZGl0aW9uIGluICRjb25kaXRpb25zIHtcbiAgICBAaWYgbm90IG1hcC1oYXMta2V5KCRtZWRpYS1leHByZXNzaW9ucywgJGNvbmRpdGlvbikge1xuICAgICAgJG9wZXJhdG9yOiBnZXQtZXhwcmVzc2lvbi1vcGVyYXRvcigkY29uZGl0aW9uKTtcbiAgICAgICRwcmVmaXg6IGdldC1leHByZXNzaW9uLXByZWZpeCgkb3BlcmF0b3IpO1xuICAgICAgJHZhbHVlOiBnZXQtZXhwcmVzc2lvbi12YWx1ZSgkY29uZGl0aW9uLCAkb3BlcmF0b3IpO1xuXG4gICAgICBAaWYgKCRwcmVmaXggPT0gJ21heCcgYW5kICR2YWx1ZSA8PSAkbm8tbWVkaWEtYnJlYWtwb2ludC12YWx1ZSkgb3JcbiAgICAgICAgICAoJHByZWZpeCA9PSAnbWluJyBhbmQgJHZhbHVlID4gJG5vLW1lZGlhLWJyZWFrcG9pbnQtdmFsdWUpIHtcbiAgICAgICAgQHJldHVybiBmYWxzZTtcbiAgICAgIH1cbiAgICB9IEBlbHNlIGlmIG5vdCBpbmRleCgkaW0tbm8tbWVkaWEtZXhwcmVzc2lvbnMsICRjb25kaXRpb24pIHtcbiAgICAgIEByZXR1cm4gZmFsc2U7XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiB0cnVlO1xufVxuXG4vLy8vXG4vLy8gUGFyc2luZyBlbmdpbmVcbi8vLyBAYXV0aG9yIEtpdHR5IEdpcmF1ZGVsXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8vXG5cblxuLy8vXG4vLy8gR2V0IG9wZXJhdG9yIG9mIGFuIGV4cHJlc3Npb25cbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkZXhwcmVzc2lvbiAtIEV4cHJlc3Npb24gdG8gZXh0cmFjdCBvcGVyYXRvciBmcm9tXG4vLy9cbi8vLyBAcmV0dXJuIHtTdHJpbmd9IC0gQW55IG9mIGA+PWAsIGA+YCwgYDw9YCwgYDxgLCBg4omlYCwgYOKJpGBcbi8vL1xuQGZ1bmN0aW9uIGdldC1leHByZXNzaW9uLW9wZXJhdG9yKCRleHByZXNzaW9uKSB7XG4gIEBlYWNoICRvcGVyYXRvciBpbiAoJz49JywgJz4nLCAnPD0nLCAnPCcsICfiiaUnLCAn4omkJykge1xuICAgIEBpZiBzdHItaW5kZXgoJGV4cHJlc3Npb24sICRvcGVyYXRvcikge1xuICAgICAgQHJldHVybiAkb3BlcmF0b3I7XG4gICAgfVxuICB9XG5cbiAgLy8gSXQgaXMgbm90IHBvc3NpYmxlIHRvIGluY2x1ZGUgYSBtaXhpbiBpbnNpZGUgYSBmdW5jdGlvbiwgc28gd2UgaGF2ZSB0b1xuICAvLyByZWx5IG9uIHRoZSBgaW0tbG9nKC4uKWAgZnVuY3Rpb24gcmF0aGVyIHRoYW4gdGhlIGBsb2coLi4pYCBtaXhpbi4gQmVjYXVzZVxuICAvLyBmdW5jdGlvbnMgY2Fubm90IGJlIGNhbGxlZCBhbnl3aGVyZSBpbiBTYXNzLCB3ZSBuZWVkIHRvIGhhY2sgdGhlIGNhbGwgaW5cbiAgLy8gYSBkdW1teSB2YXJpYWJsZSwgc3VjaCBhcyBgJF9gLiBJZiBhbnlib2R5IGV2ZXIgcmFpc2UgYSBzY29waW5nIGlzc3VlIHdpdGhcbiAgLy8gU2FzcyAzLjMsIGNoYW5nZSB0aGlzIGxpbmUgaW4gYEBpZiBpbS1sb2coLi4pIHt9YCBpbnN0ZWFkLlxuICAkXzogaW0tbG9nKCdObyBvcGVyYXRvciBmb3VuZCBpbiBgI3skZXhwcmVzc2lvbn1gLicpO1xufVxuXG5cbi8vL1xuLy8vIEdldCBkaW1lbnNpb24gb2YgYW4gZXhwcmVzc2lvbiwgYmFzZWQgb24gYSBmb3VuZCBvcGVyYXRvclxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRleHByZXNzaW9uIC0gRXhwcmVzc2lvbiB0byBleHRyYWN0IGRpbWVuc2lvbiBmcm9tXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRvcGVyYXRvciAtIE9wZXJhdG9yIGZyb20gYCRleHByZXNzaW9uYFxuLy8vXG4vLy8gQHJldHVybiB7U3RyaW5nfSAtIGB3aWR0aGAgb3IgYGhlaWdodGAgKG9yIHBvdGVudGlhbGx5IGFueXRoaW5nIGVsc2UpXG4vLy9cbkBmdW5jdGlvbiBnZXQtZXhwcmVzc2lvbi1kaW1lbnNpb24oJGV4cHJlc3Npb24sICRvcGVyYXRvcikge1xuICAkb3BlcmF0b3ItaW5kZXg6IHN0ci1pbmRleCgkZXhwcmVzc2lvbiwgJG9wZXJhdG9yKTtcbiAgJHBhcnNlZC1kaW1lbnNpb246IHN0ci1zbGljZSgkZXhwcmVzc2lvbiwgMCwgJG9wZXJhdG9yLWluZGV4IC0gMSk7XG4gICRkaW1lbnNpb246ICd3aWR0aCc7XG5cbiAgQGlmIHN0ci1sZW5ndGgoJHBhcnNlZC1kaW1lbnNpb24pID4gMCB7XG4gICAgJGRpbWVuc2lvbjogJHBhcnNlZC1kaW1lbnNpb247XG4gIH1cblxuICBAcmV0dXJuICRkaW1lbnNpb247XG59XG5cblxuLy8vXG4vLy8gR2V0IGRpbWVuc2lvbiBwcmVmaXggYmFzZWQgb24gYW4gb3BlcmF0b3Jcbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkb3BlcmF0b3IgLSBPcGVyYXRvclxuLy8vXG4vLy8gQHJldHVybiB7U3RyaW5nfSAtIGBtaW5gIG9yIGBtYXhgXG4vLy9cbkBmdW5jdGlvbiBnZXQtZXhwcmVzc2lvbi1wcmVmaXgoJG9wZXJhdG9yKSB7XG4gIEByZXR1cm4gaWYoaW5kZXgoKCc8JywgJzw9JywgJ+KJpCcpLCAkb3BlcmF0b3IpLCAnbWF4JywgJ21pbicpO1xufVxuXG5cbi8vL1xuLy8vIEdldCB2YWx1ZSBvZiBhbiBleHByZXNzaW9uLCBiYXNlZCBvbiBhIGZvdW5kIG9wZXJhdG9yXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGV4cHJlc3Npb24gLSBFeHByZXNzaW9uIHRvIGV4dHJhY3QgdmFsdWUgZnJvbVxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkb3BlcmF0b3IgLSBPcGVyYXRvciBmcm9tIGAkZXhwcmVzc2lvbmBcbi8vL1xuLy8vIEByZXR1cm4ge051bWJlcn0gLSBBIG51bWVyaWMgdmFsdWVcbi8vL1xuQGZ1bmN0aW9uIGdldC1leHByZXNzaW9uLXZhbHVlKCRleHByZXNzaW9uLCAkb3BlcmF0b3IpIHtcbiAgJG9wZXJhdG9yLWluZGV4OiBzdHItaW5kZXgoJGV4cHJlc3Npb24sICRvcGVyYXRvcik7XG4gICR2YWx1ZTogc3RyLXNsaWNlKCRleHByZXNzaW9uLCAkb3BlcmF0b3ItaW5kZXggKyBzdHItbGVuZ3RoKCRvcGVyYXRvcikpO1xuXG4gIEBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsICR2YWx1ZSkge1xuICAgICR2YWx1ZTogbWFwLWdldCgkYnJlYWtwb2ludHMsICR2YWx1ZSk7XG4gIH0gQGVsc2Uge1xuICAgICR2YWx1ZTogdG8tbnVtYmVyKCR2YWx1ZSk7XG4gIH1cblxuICAkaW50ZXJ2YWw6IG1hcC1nZXQoJHVuaXQtaW50ZXJ2YWxzLCB1bml0KCR2YWx1ZSkpO1xuXG4gIEBpZiBub3QgJGludGVydmFsIHtcbiAgICAvLyBJdCBpcyBub3QgcG9zc2libGUgdG8gaW5jbHVkZSBhIG1peGluIGluc2lkZSBhIGZ1bmN0aW9uLCBzbyB3ZSBoYXZlIHRvXG4gICAgLy8gcmVseSBvbiB0aGUgYGltLWxvZyguLilgIGZ1bmN0aW9uIHJhdGhlciB0aGFuIHRoZSBgbG9nKC4uKWAgbWl4aW4uIEJlY2F1c2VcbiAgICAvLyBmdW5jdGlvbnMgY2Fubm90IGJlIGNhbGxlZCBhbnl3aGVyZSBpbiBTYXNzLCB3ZSBuZWVkIHRvIGhhY2sgdGhlIGNhbGwgaW5cbiAgICAvLyBhIGR1bW15IHZhcmlhYmxlLCBzdWNoIGFzIGAkX2AuIElmIGFueWJvZHkgZXZlciByYWlzZSBhIHNjb3BpbmcgaXNzdWUgd2l0aFxuICAgIC8vIFNhc3MgMy4zLCBjaGFuZ2UgdGhpcyBsaW5lIGluIGBAaWYgaW0tbG9nKC4uKSB7fWAgaW5zdGVhZC5cbiAgICAkXzogaW0tbG9nKCdVbmtub3duIHVuaXQgYCN7dW5pdCgkdmFsdWUpfWAuJyk7XG4gIH1cblxuICBAaWYgJG9wZXJhdG9yID09ICc+JyB7XG4gICAgJHZhbHVlOiAkdmFsdWUgKyAkaW50ZXJ2YWw7XG4gIH0gQGVsc2UgaWYgJG9wZXJhdG9yID09ICc8JyB7XG4gICAgJHZhbHVlOiAkdmFsdWUgLSAkaW50ZXJ2YWw7XG4gIH1cblxuICBAcmV0dXJuICR2YWx1ZTtcbn1cblxuXG4vLy9cbi8vLyBQYXJzZSBhbiBleHByZXNzaW9uIHRvIHJldHVybiBhIHZhbGlkIG1lZGlhLXF1ZXJ5IGV4cHJlc3Npb25cbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkZXhwcmVzc2lvbiAtIEV4cHJlc3Npb24gdG8gcGFyc2Vcbi8vL1xuLy8vIEByZXR1cm4ge1N0cmluZ30gLSBWYWxpZCBtZWRpYSBxdWVyeVxuLy8vXG5AZnVuY3Rpb24gcGFyc2UtZXhwcmVzc2lvbigkZXhwcmVzc2lvbikge1xuICAvLyBJZiBpdCBpcyBwYXJ0IG9mICRtZWRpYS1leHByZXNzaW9ucywgaXQgaGFzIG5vIG9wZXJhdG9yXG4gIC8vIHRoZW4gdGhlcmUgaXMgbm8gbmVlZCB0byBnbyBhbnkgZnVydGhlciwganVzdCByZXR1cm4gdGhlIHZhbHVlXG4gIEBpZiBtYXAtaGFzLWtleSgkbWVkaWEtZXhwcmVzc2lvbnMsICRleHByZXNzaW9uKSB7XG4gICAgQHJldHVybiBtYXAtZ2V0KCRtZWRpYS1leHByZXNzaW9ucywgJGV4cHJlc3Npb24pO1xuICB9XG5cbiAgJG9wZXJhdG9yOiBnZXQtZXhwcmVzc2lvbi1vcGVyYXRvcigkZXhwcmVzc2lvbik7XG4gICRkaW1lbnNpb246IGdldC1leHByZXNzaW9uLWRpbWVuc2lvbigkZXhwcmVzc2lvbiwgJG9wZXJhdG9yKTtcbiAgJHByZWZpeDogZ2V0LWV4cHJlc3Npb24tcHJlZml4KCRvcGVyYXRvcik7XG4gICR2YWx1ZTogZ2V0LWV4cHJlc3Npb24tdmFsdWUoJGV4cHJlc3Npb24sICRvcGVyYXRvcik7XG5cbiAgQHJldHVybiAnKCN7JHByZWZpeH0tI3skZGltZW5zaW9ufTogI3skdmFsdWV9KSc7XG59XG5cbi8vL1xuLy8vIFNsaWNlIGAkbGlzdGAgYmV0d2VlbiBgJHN0YXJ0YCBhbmQgYCRlbmRgIGluZGV4ZXNcbi8vL1xuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtMaXN0fSAkbGlzdCAtIExpc3QgdG8gc2xpY2Vcbi8vLyBAcGFyYW0ge051bWJlcn0gJHN0YXJ0IFsxXSAtIFN0YXJ0IGluZGV4XG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRlbmQgW2xlbmd0aCgkbGlzdCldIC0gRW5kIGluZGV4XG4vLy9cbi8vLyBAcmV0dXJuIHtMaXN0fSBTbGljZWQgbGlzdFxuLy8vXG5AZnVuY3Rpb24gc2xpY2UoJGxpc3QsICRzdGFydDogMSwgJGVuZDogbGVuZ3RoKCRsaXN0KSkge1xuICBAaWYgbGVuZ3RoKCRsaXN0KSA8IDEgb3IgJHN0YXJ0ID4gJGVuZCB7XG4gICAgQHJldHVybiAoKTtcbiAgfVxuXG4gICRyZXN1bHQ6ICgpO1xuXG4gIEBmb3IgJGkgZnJvbSAkc3RhcnQgdGhyb3VnaCAkZW5kIHtcbiAgICAkcmVzdWx0OiBhcHBlbmQoJHJlc3VsdCwgbnRoKCRsaXN0LCAkaSkpO1xuICB9XG5cbiAgQHJldHVybiAkcmVzdWx0O1xufVxuXG4vLy8vXG4vLy8gU3RyaW5nIHRvIG51bWJlciBjb252ZXJ0ZXJcbi8vLyBAYXV0aG9yIEtpdHR5IEdpcmF1ZGVsXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8vXG5cblxuLy8vXG4vLy8gQ2FzdHMgYSBzdHJpbmcgaW50byBhIG51bWJlclxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmcgfCBOdW1iZXJ9ICR2YWx1ZSAtIFZhbHVlIHRvIGJlIHBhcnNlZFxuLy8vXG4vLy8gQHJldHVybiB7TnVtYmVyfVxuLy8vXG5AZnVuY3Rpb24gdG8tbnVtYmVyKCR2YWx1ZSkge1xuICBAaWYgdHlwZS1vZigkdmFsdWUpID09ICdudW1iZXInIHtcbiAgICBAcmV0dXJuICR2YWx1ZTtcbiAgfSBAZWxzZSBpZiB0eXBlLW9mKCR2YWx1ZSkgIT0gJ3N0cmluZycge1xuICAgICRfOiBpbS1sb2coJ1ZhbHVlIGZvciBgdG8tbnVtYmVyYCBzaG91bGQgYmUgYSBudW1iZXIgb3IgYSBzdHJpbmcuJyk7XG4gIH1cblxuICAkZmlyc3QtY2hhcmFjdGVyOiBzdHItc2xpY2UoJHZhbHVlLCAxLCAxKTtcbiAgJHJlc3VsdDogMDtcbiAgJGRpZ2l0czogMDtcbiAgJG1pbnVzOiAoJGZpcnN0LWNoYXJhY3RlciA9PSAnLScpO1xuICAkbnVtYmVyczogKCcwJzogMCwgJzEnOiAxLCAnMic6IDIsICczJzogMywgJzQnOiA0LCAnNSc6IDUsICc2JzogNiwgJzcnOiA3LCAnOCc6IDgsICc5JzogOSk7XG5cbiAgLy8gUmVtb3ZlICsvLSBzaWduIGlmIHByZXNlbnQgYXQgZmlyc3QgY2hhcmFjdGVyXG4gIEBpZiAoJGZpcnN0LWNoYXJhY3RlciA9PSAnKycgb3IgJGZpcnN0LWNoYXJhY3RlciA9PSAnLScpIHtcbiAgICAkdmFsdWU6IHN0ci1zbGljZSgkdmFsdWUsIDIpO1xuICB9XG5cbiAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCBzdHItbGVuZ3RoKCR2YWx1ZSkge1xuICAgICRjaGFyYWN0ZXI6IHN0ci1zbGljZSgkdmFsdWUsICRpLCAkaSk7XG5cbiAgICBAaWYgbm90IChpbmRleChtYXAta2V5cygkbnVtYmVycyksICRjaGFyYWN0ZXIpIG9yICRjaGFyYWN0ZXIgPT0gJy4nKSB7XG4gICAgICBAcmV0dXJuIHRvLWxlbmd0aChpZigkbWludXMsIC0kcmVzdWx0LCAkcmVzdWx0KSwgc3RyLXNsaWNlKCR2YWx1ZSwgJGkpKVxuICAgIH1cblxuICAgIEBpZiAkY2hhcmFjdGVyID09ICcuJyB7XG4gICAgICAkZGlnaXRzOiAxO1xuICAgIH0gQGVsc2UgaWYgJGRpZ2l0cyA9PSAwIHtcbiAgICAgICRyZXN1bHQ6ICRyZXN1bHQgKiAxMCArIG1hcC1nZXQoJG51bWJlcnMsICRjaGFyYWN0ZXIpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgJGRpZ2l0czogJGRpZ2l0cyAqIDEwO1xuICAgICAgJHJlc3VsdDogJHJlc3VsdCArIG1hcC1nZXQoJG51bWJlcnMsICRjaGFyYWN0ZXIpIC8gJGRpZ2l0cztcbiAgICB9XG4gIH1cblxuICBAcmV0dXJuIGlmKCRtaW51cywgLSRyZXN1bHQsICRyZXN1bHQpO1xufVxuXG5cbi8vL1xuLy8vIEFkZCBgJHVuaXRgIHRvIGAkdmFsdWVgXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJHZhbHVlIC0gVmFsdWUgdG8gYWRkIHVuaXQgdG9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJHVuaXQgLSBTdHJpbmcgcmVwcmVzZW50YXRpb24gb2YgdGhlIHVuaXRcbi8vL1xuLy8vIEByZXR1cm4ge051bWJlcn0gLSBgJHZhbHVlYCBleHByZXNzZWQgaW4gYCR1bml0YFxuLy8vXG5AZnVuY3Rpb24gdG8tbGVuZ3RoKCR2YWx1ZSwgJHVuaXQpIHtcbiAgJHVuaXRzOiAoJ3B4JzogMXB4LCAnY20nOiAxY20sICdtbSc6IDFtbSwgJyUnOiAxJSwgJ2NoJzogMWNoLCAncGMnOiAxcGMsICdpbic6IDFpbiwgJ2VtJzogMWVtLCAncmVtJzogMXJlbSwgJ3B0JzogMXB0LCAnZXgnOiAxZXgsICd2dyc6IDF2dywgJ3ZoJzogMXZoLCAndm1pbic6IDF2bWluLCAndm1heCc6IDF2bWF4KTtcblxuICBAaWYgbm90IGluZGV4KG1hcC1rZXlzKCR1bml0cyksICR1bml0KSB7XG4gICAgJF86IGltLWxvZygnSW52YWxpZCB1bml0IGAjeyR1bml0fWAuJyk7XG4gIH1cblxuICBAcmV0dXJuICR2YWx1ZSAqIG1hcC1nZXQoJHVuaXRzLCAkdW5pdCk7XG59XG5cbi8vL1xuLy8vIFRoaXMgbWl4aW4gYWltcyBhdCByZWRlZmluaW5nIHRoZSBjb25maWd1cmF0aW9uIGp1c3QgZm9yIHRoZSBzY29wZSBvZlxuLy8vIHRoZSBjYWxsLiBJdCBpcyBoZWxwZnVsIHdoZW4gaGF2aW5nIGEgY29tcG9uZW50IG5lZWRpbmcgYW4gZXh0ZW5kZWRcbi8vLyBjb25maWd1cmF0aW9uIHN1Y2ggYXMgY3VzdG9tIGJyZWFrcG9pbnRzIChyZWZlcnJlZCB0byBhcyB0d2Vha3BvaW50cylcbi8vLyBmb3IgaW5zdGFuY2UuXG4vLy9cbi8vLyBAYXV0aG9yIEtpdHR5IEdpcmF1ZGVsXG4vLy9cbi8vLyBAcGFyYW0ge01hcH0gJHR3ZWFrcG9pbnRzIFsoKV0gLSBNYXAgb2YgdHdlYWtwb2ludHMgdG8gYmUgbWVyZ2VkIHdpdGggYCRicmVha3BvaW50c2Bcbi8vLyBAcGFyYW0ge01hcH0gJHR3ZWFrLW1lZGlhLWV4cHJlc3Npb25zIFsoKV0gLSBNYXAgb2YgdHdlYWtlZCBtZWRpYSBleHByZXNzaW9ucyB0byBiZSBtZXJnZWQgd2l0aCBgJG1lZGlhLWV4cHJlc3Npb25gXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gRXh0ZW5kIHRoZSBnbG9iYWwgYnJlYWtwb2ludHMgd2l0aCBhIHR3ZWFrcG9pbnRcbi8vLyAgQGluY2x1ZGUgbWVkaWEtY29udGV4dCgoJ2N1c3RvbSc6IDY3OHB4KSkge1xuLy8vICAgIC5mb28ge1xuLy8vICAgICAgQGluY2x1ZGUgbWVkaWEoJz5waG9uZScsICc8PWN1c3RvbScpIHtcbi8vLyAgICAgICAvLyAuLi5cbi8vLyAgICAgIH1cbi8vLyAgICB9XG4vLy8gIH1cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBFeHRlbmQgdGhlIGdsb2JhbCBtZWRpYSBleHByZXNzaW9ucyB3aXRoIGEgY3VzdG9tIG9uZVxuLy8vICBAaW5jbHVkZSBtZWRpYS1jb250ZXh0KCR0d2Vhay1tZWRpYS1leHByZXNzaW9uczogKCdhbGwnOiAnYWxsJykpIHtcbi8vLyAgICAuZm9vIHtcbi8vLyAgICAgIEBpbmNsdWRlIG1lZGlhKCdhbGwnLCAnPnBob25lJykge1xuLy8vICAgICAgIC8vIC4uLlxuLy8vICAgICAgfVxuLy8vICAgIH1cbi8vLyAgfVxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIEV4dGVuZCBib3RoIGNvbmZpZ3VyYXRpb24gbWFwc1xuLy8vICBAaW5jbHVkZSBtZWRpYS1jb250ZXh0KCgnY3VzdG9tJzogNjc4cHgpLCAoJ2FsbCc6ICdhbGwnKSkge1xuLy8vICAgIC5mb28ge1xuLy8vICAgICAgQGluY2x1ZGUgbWVkaWEoJ2FsbCcsICc+cGhvbmUnLCAnPD1jdXN0b20nKSB7XG4vLy8gICAgICAgLy8gLi4uXG4vLy8gICAgICB9XG4vLy8gICAgfVxuLy8vICB9XG4vLy9cbkBtaXhpbiBtZWRpYS1jb250ZXh0KCR0d2Vha3BvaW50czogKCksICR0d2Vhay1tZWRpYS1leHByZXNzaW9uczogKCkpIHtcbiAgLy8gU2F2ZSBnbG9iYWwgY29uZmlndXJhdGlvblxuICAkZ2xvYmFsLWJyZWFrcG9pbnRzOiAkYnJlYWtwb2ludHM7XG4gICRnbG9iYWwtbWVkaWEtZXhwcmVzc2lvbnM6ICRtZWRpYS1leHByZXNzaW9ucztcblxuICAvLyBVcGRhdGUgZ2xvYmFsIGNvbmZpZ3VyYXRpb25cbiAgJGJyZWFrcG9pbnRzOiBtYXAtbWVyZ2UoJGJyZWFrcG9pbnRzLCAkdHdlYWtwb2ludHMpICFnbG9iYWw7XG4gICRtZWRpYS1leHByZXNzaW9uczogbWFwLW1lcmdlKCRtZWRpYS1leHByZXNzaW9ucywgJHR3ZWFrLW1lZGlhLWV4cHJlc3Npb25zKSAhZ2xvYmFsO1xuXG4gIEBjb250ZW50O1xuXG4gIC8vIFJlc3RvcmUgZ2xvYmFsIGNvbmZpZ3VyYXRpb25cbiAgJGJyZWFrcG9pbnRzOiAkZ2xvYmFsLWJyZWFrcG9pbnRzICFnbG9iYWw7XG4gICRtZWRpYS1leHByZXNzaW9uczogJGdsb2JhbC1tZWRpYS1leHByZXNzaW9ucyAhZ2xvYmFsO1xufVxuXG4vLy8vXG4vLy8gaW5jbHVkZS1tZWRpYSBwdWJsaWMgZXhwb3NlZCBBUElcbi8vLyBAYXV0aG9yIEVkdWFyZG8gQm91Y2FzXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLy9cblxuXG4vLy9cbi8vLyBHZW5lcmF0ZXMgYSBtZWRpYSBxdWVyeSBiYXNlZCBvbiBhIGxpc3Qgb2YgY29uZGl0aW9uc1xuLy8vXG4vLy8gQHBhcmFtIHtBcmdsaXN0fSAgICRjb25kaXRpb25zICAtIE1lZGlhIHF1ZXJ5IGNvbmRpdGlvbnNcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBXaXRoIGEgc2luZ2xlIHNldCBicmVha3BvaW50XG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+cGhvbmUnKSB7IH1cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBXaXRoIHR3byBzZXQgYnJlYWtwb2ludHNcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz5waG9uZScsICc8PXRhYmxldCcpIHsgfVxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFdpdGggY3VzdG9tIHZhbHVlc1xuLy8vICBAaW5jbHVkZSBtZWRpYSgnPj0zNThweCcsICc8ODUwcHgnKSB7IH1cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBXaXRoIHNldCBicmVha3BvaW50cyB3aXRoIGN1c3RvbSB2YWx1ZXNcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz5kZXNrdG9wJywgJzw9MTM1MHB4JykgeyB9XG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gV2l0aCBhIHN0YXRpYyBleHByZXNzaW9uXG4vLy8gIEBpbmNsdWRlIG1lZGlhKCdyZXRpbmEyeCcpIHsgfVxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIE1peGluZyBldmVyeXRoaW5nXG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+PTM1MHB4JywgJzx0YWJsZXQnLCAncmV0aW5hM3gnKSB7IH1cbi8vL1xuQG1peGluIG1lZGlhKCRjb25kaXRpb25zLi4uKSB7XG4gIEBpZiAoJGltLW1lZGlhLXN1cHBvcnQgYW5kIGxlbmd0aCgkY29uZGl0aW9ucykgPT0gMCkgb3JcbiAgICAgIChub3QgJGltLW1lZGlhLXN1cHBvcnQgYW5kIGltLWludGVyY2VwdHMtc3RhdGljLWJyZWFrcG9pbnQoJGNvbmRpdGlvbnMuLi4pKSB7XG4gICAgQGNvbnRlbnQ7XG4gIH0gQGVsc2UgaWYgKCRpbS1tZWRpYS1zdXBwb3J0IGFuZCBsZW5ndGgoJGNvbmRpdGlvbnMpID4gMCkge1xuICAgIEBtZWRpYSAje3VucXVvdGUocGFyc2UtZXhwcmVzc2lvbihudGgoJGNvbmRpdGlvbnMsIDEpKSl9IHtcbiAgICAgIC8vIFJlY3Vyc2l2ZSBjYWxsXG4gICAgICBAaW5jbHVkZSBtZWRpYShzbGljZSgkY29uZGl0aW9ucywgMikuLi4pIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBsaXN0IHJlc2V0XG4lbGlzdHJlc2V0IHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4vLyBjbGVhcmZpeFxuJWNsZWFyZml4IHtcbiAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGNsZWFyOiBib3RoO1xuICAgIH1cbn1cblxuLmNsZWFyZml4IHtcbiAgICBAZXh0ZW5kICVjbGVhcmZpeDtcbn1cblxuLy8gdHJhbnNpdGlvblxuJXRyYW5zaXRpb24ge1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xufVxuXG4vLyBqdXN0aWZ5IG5hdlxuJWp1c3RpZnkge1xuICAgIHRleHQtYWxpZ246IGp1c3RpZnk7XG4gICAgZm9udC1zaXplOiAxcHg7XG4gICAgbGluZS1oZWlnaHQ6IDA7XG5cbiAgICA+ICoge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlO1xuICAgICAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gICAgfVxuXG4gICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgfVxufVxuXG4lYmdDb3ZlciB7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbn1cblxuJWFic29sdXRlQ292ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG59XG5cbi8vLyAqIEhlbHBlciBjbGFzcyB0byB0cnVuY2F0ZSBhbmQgYWRkIGVsbGlwc2lzIHRvIGEgc3RyaW5nIHRvbyBsb25nIGZvciBpdCB0byBmaXRcbi8vLyAqIG9uIGEgc2luZ2xlIGxpbmUuXG4vLy8gKiAxLiBQcmV2ZW50IGNvbnRlbnQgZnJvbSB3cmFwcGluZywgZm9yY2luZyBpdCBvbiBhIHNpbmdsZSBsaW5lLlxuLy8vICogMi4gQWRkIGVsbGlwc2lzIGF0IHRoZSBlbmQgb2YgdGhlIGxpbmUuXG5cbi5lbGxpcHNpcyB7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAvKiAxICovXG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgLyogMiAqL1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG59XG4iLCIvLy8gY29sb3JzIGJsYWNrICYgd2hpdGVcbi8vLyBAZXhhbXBsZSBzY3NzIC0gVXNhZ2Vcbi8vLyAgIC5teS1jbGFzcyB7XG4vLy8gICAgIGJhY2tncm91bmQ6IGJsYWNrKDAuMTUpO1xuLy8vICAgICBjb2xvcjogd2hpdGUoMC45KTtcbi8vLyAgIH1cbkBmdW5jdGlvbiBibGFjaygkb3BhY2l0eSkge1xuICAgIEByZXR1cm4gcmdiYShibGFjaywgJG9wYWNpdHkpO1xufVxuXG5AZnVuY3Rpb24gd2hpdGUoJG9wYWNpdHkpIHtcbiAgICBAcmV0dXJuIHJnYmEod2hpdGUsICRvcGFjaXR5KTtcbn1cblxuQG1peGluIHRpdGxlLXNpemUoJHN5bWJvbCkge1xuXG4gICAgQGVhY2ggJG1lZGlhLFxuICAgICR0aXRsZXMtc2l6ZSBpbiAkdGl0bGUtcGFsZXR0ZSB7XG4gICAgICAgIEBpZiAkbWVkaWEgPT1tb2JpbGUge1xuXG4gICAgICAgICAgICBAZWFjaCAkdGl0bGUsXG4gICAgICAgICAgICAkc2l6ZSBpbiAkdGl0bGVzLXNpemUge1xuXG4gICAgICAgICAgICAgICAgI3skdGl0bGV9LFxuICAgICAgICAgICAgICAgIC4jeyR0aXRsZX0ge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6ICRzaXplICsgcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgQGVsc2Uge1xuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoI3skc3ltYm9sfSN7JG1lZGlhfSkge1xuXG4gICAgICAgICAgICAgICAgQGVhY2ggJHRpdGxlLFxuICAgICAgICAgICAgICAgICRzaXplIGluICR0aXRsZXMtc2l6ZSB7XG5cbiAgICAgICAgICAgICAgICAgICAgI3skdGl0bGV9LFxuICAgICAgICAgICAgICAgICAgICAuI3skdGl0bGV9IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogJHNpemUgKyBweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy9cbi8vIEBmdW5jdGlvbnNcbi8vXG5cbi8vIFNUUklQIFVOSVRcbi8vIEl0IHN0cmlwcyB0aGUgdW5pdCBvZiBtZWFzdXJlIGFuZCByZXR1cm5zIGl0XG5AZnVuY3Rpb24gc3RyaXAtdW5pdCgkbnVtKSB7XG4gICAgQHJldHVybiAkbnVtIC8gKCRudW0gKiAwICsgMSk7XG59XG5cbi8vIENPTlZFUlQgVE8gUkVNXG5AZnVuY3Rpb24gY29udmVydC10by1yZW0oJHZhbHVlLCAkYmFzZS12YWx1ZTogJHJlbS1iYXNlKSB7XG4gICAgJHZhbHVlOiBzdHJpcC11bml0KCR2YWx1ZSkgLyBzdHJpcC11bml0KCRiYXNlLXZhbHVlKSAqIDFyZW07XG5cbiAgICBAaWYgKCR2YWx1ZSA9PTByZW0pIHtcbiAgICAgICAgJHZhbHVlOiAwO1xuICAgIH1cblxuICAgIC8vIFR1cm4gMHJlbSBpbnRvIDBcbiAgICBAcmV0dXJuICR2YWx1ZTtcbn1cblxuLy8gUkVNIENBTENcblxuLy8gTmV3IFN5bnRheCwgYWxsb3dzIHRvIG9wdGlvbmFsbHkgY2FsY3VsYXRlIG9uIGEgZGlmZmVyZW50IGJhc2UgdmFsdWUgdG8gY291bnRlciBjb21wb3VuZGluZyBlZmZlY3Qgb2YgcmVtJ3MuXG4vLyBDYWxsIHdpdGggMSwgMiwgMyBvciA0IHBhcmFtZXRlcnMsICdweCcgaXMgbm90IHJlcXVpcmVkIGJ1dCBzdXBwb3J0ZWQ6XG4vL1xuLy8gICByZW0tY2FsYygxMCAyMCAzMHB4IDQwKTtcbi8vXG4vLyBTcGFjZSBkZWxpbWl0ZWQsIGlmIHlvdSB3YW50IHRvIGRlbGltaXQgdXNpbmcgY29tbWEncywgd3JhcCBpdCBpbiBhbm90aGVyIHBhaXIgb2YgYnJhY2tldHNcbi8vXG4vLyAgIHJlbS1jYWxjKCgxMCwgMjAsIDMwLCA0MHB4KSk7XG4vL1xuLy8gT3B0aW9uYWxseSBjYWxsIHdpdGggYSBkaWZmZXJlbnQgYmFzZSAoZWc6IDhweCkgdG8gY2FsY3VsYXRlIHJlbS5cbi8vXG4vLyAgIHJlbS1jYWxjKDE2cHggMzJweCA0OHB4LCA4cHgpO1xuLy9cbi8vIElmIHlvdSByZXF1aXJlIHRvIGNvbW1hIHNlcGFyYXRlIHlvdXIgbGlzdFxuLy9cbi8vICAgcmVtLWNhbGMoKDE2cHgsIDMycHgsIDQ4KSwgOHB4KTtcblxuQGZ1bmN0aW9uIHJlbS1jYWxjKCR2YWx1ZXMsICRiYXNlLXZhbHVlOiAkcmVtLWJhc2UpIHtcbiAgICAkbWF4OiBsZW5ndGgoJHZhbHVlcyk7XG5cbiAgICBAaWYgJG1heCA9PTEge1xuICAgICAgICBAcmV0dXJuIGNvbnZlcnQtdG8tcmVtKG50aCgkdmFsdWVzLCAxKSwgJGJhc2UtdmFsdWUpO1xuICAgIH1cblxuICAgICRyZW1WYWx1ZXM6IChcbiAgICApO1xuXG5AZm9yICRpIGZyb20gMSB0aHJvdWdoICRtYXgge1xuICAgICRyZW1WYWx1ZXM6IGFwcGVuZCgkcmVtVmFsdWVzLCBjb252ZXJ0LXRvLXJlbShudGgoJHZhbHVlcywgJGkpLCAkYmFzZS12YWx1ZSkpO1xufVxuXG5AcmV0dXJuICRyZW1WYWx1ZXM7XG59XG5cbkBmdW5jdGlvbiBlbS1jYWxjKCR2YWx1ZXMsICRiYXNlLXZhbHVlOiAkcmVtLWJhc2UpIHtcbiAgICAkcmVtVmFsdWVzOiByZW0tY2FsYygkdmFsdWVzLCAkYmFzZS12YWx1ZTogJHJlbS1iYXNlKTtcblxuICAgICRtYXg6IGxlbmd0aCgkcmVtVmFsdWVzKTtcblxuICAgIEBpZiAkbWF4ID09MSB7XG4gICAgICAgIEByZXR1cm4gc3RyaXAtdW5pdChudGgoJHJlbVZhbHVlcywgMSkpICogMWVtO1xuICAgIH1cblxuICAgICRlbVZhbHVlczogKFxuICAgICk7XG5cbkBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJG1heCB7XG4gICAgJGVtVmFsdWVzOiBhcHBlbmQoJGVtVmFsdWVzLCBzdHJpcC11bml0KG50aCgkcmVtVmFsdWVzLCAkaSkpICogMWVtKTtcbn1cblxuQHJldHVybiAkZW1WYWx1ZXM7XG59XG5cbi8vLyBjb2xvcnMgYmxhY2sgJiB3aGl0ZVxuLy8vIEBleGFtcGxlIHNjc3MgLSBVc2FnZVxuLy8vICAgLm15LWNsYXNzIHtcbi8vLyAgICAgYmFja2dyb3VuZDogYmxhY2soMC4xNSk7XG4vLy8gICAgIGNvbG9yOiB3aGl0ZSgwLjkpO1xuLy8vICAgfVxuQGZ1bmN0aW9uIGJsYWNrKCRvcGFjaXR5KSB7XG4gICAgQHJldHVybiByZ2JhKGJsYWNrLCAkb3BhY2l0eSk7XG59XG5cbkBmdW5jdGlvbiB3aGl0ZSgkb3BhY2l0eSkge1xuICAgIEByZXR1cm4gcmdiYSh3aGl0ZSwgJG9wYWNpdHkpO1xufVxuXG4iLCIvLyBUeXBvZ3JhcGh5XG5cbkBpbmNsdWRlIHRpdGxlLXNpemUoXCLiiaVcIik7XG5cbmgxLFxuLmgxLFxuaDIsXG4uaDIsXG5oMyxcbi5oMyxcbmg0LFxuLmg0LFxuaDUsXG4uaDUsXG5oNixcbi5oNixcbi5oIHtcbiAgICBmb250LWZhbWlseTogJGhlYWRpbmdzLWZvbnQtZmFtaWx5O1xuICAgIGNvbG9yOiAkaGVhZGluZ3MtY29sb3I7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgbWFyZ2luOiAwIDAgMTBweDtcblxuICAgIEBpbmNsdWRlIG1lZGlhKFwi4omldGFibGV0XCIpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICB9XG59XG5cbmgyIHtcbiAgICBtYXJnaW46IDAgMCAwLjVlbTtcbiAgICBmb250LXdlaWdodDogJG5vcm1hbDtcbiAgICBmb250LXNpemU6IDMwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LWZhbWlseTogJGJhc2UtZm9udC0xO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoXCLiiaV0YWJsZXRcIikge1xuICAgICAgICBmb250LXNpemU6IGNhbGMoMzBweCArICg0OCAtIDMwKSAqICgoMTAwdncgLSA3NjhweCkgLyAoMTIwMCAtIDc2OCkpKTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIuKJpXdpZGVzY3JlZW5cIikge1xuICAgICAgICBmb250LXNpemU6IDQ4cHg7XG4gICAgfVxufVxuXG5oMyB7XG4gICAgbWFyZ2luOiAwIDAgMWVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC13ZWlnaHQ6ICRleHRyYTtcbiAgICBmb250LXNpemU6IGNhbGMoMjJweCArICgzMiAtIDIyKSAqICgoMTAwdncgLSAzNjBweCkgLyAoMTIwMCAtIDM2MCkpKTtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBmb250LWZhbWlseTogJGJhc2UtZm9udC0xO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoXCLiiaV3aWRlc2NyZWVuXCIpIHtcbiAgICAgICAgZm9udC1zaXplOiAzMnB4O1xuICAgIH1cbn1cblxuaDQge1xuICAgIG1hcmdpbjogMCAwIDAuOWVtO1xuICAgIGZvbnQtd2VpZ2h0OiAkbm9ybWFsO1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICBmb250LWZhbWlseTogJGJhc2UtZm9udC0xO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxucCB7XG4gICAgbWFyZ2luOiAwIDAgMWVtO1xufVxuXG5hIHtcbiAgICBjb2xvcjogJGJhc2UtbGluay1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246ICR0ZXh0LWRlY29yYXRpb247XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgICBjb2xvcjogJGJhc2UtbGluay1ob3Zlci1jb2xvcjtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiAkdGV4dC1kZWNvcmF0aW9uLWhvdmVyO1xuICAgIH1cbn1cblxuYVtocmVmKj1cIm1haWx0bzpcIl0ge1xuICAgIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbn1cbiIsIi8vIGZvcm1zXG5mb3JtLFxuZmllbGRzZXQge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJvcmRlci1zdHlsZTogbm9uZTtcbn1cblxuaW5wdXRbdHlwZT0ndGV4dCddLFxuaW5wdXRbdHlwZT0ndGVsJ10sXG5pbnB1dFt0eXBlPSdlbWFpbCddLFxuaW5wdXRbdHlwZT0nc2VhcmNoJ10sXG5pbnB1dFt0eXBlPSdwYXNzd29yZCddLFxuaW5wdXRbdHlwZT0ndXJsJ10sXG4vLyBpbnB1dFt0eXBlPSdkYXRlJ10sXG50ZXh0YXJlYSB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMDtcbiAgICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZztcbiAgICBmb250LXNpemU6ICRpbnB1dC1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodDtcbiAgICBmb250LWZhbWlseTogJGlucHV0LWZvbnQtZmFtaWx5O1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgYm9yZGVyOiAkaW5wdXQtYm9yZGVyO1xuICAgIGJvcmRlci1yYWRpdXM6ICRpbnB1dC1ib3JkZXItcmFkaXVzO1xuXG4gICAgJjpub3QodGV4dGFyZWEpIHtcbiAgICAgICAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0O1xuICAgIH1cblxuICAgICY6Zm9jdXMge1xuICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICBib3JkZXItY29sb3I6ICRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3I7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgcGxhY2Vob2xkZXIge1xuICAgICAgICBjb2xvcjogJHBsYWNlaG9sZGVyLWNvbG9yO1xuICAgIH1cbn1cblxuaW5wdXRbdHlwZT0nc2VhcmNoJ106Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLy8gaW5wdXRbdHlwZT1cInNlYXJjaFwiXSB7XG4vLyAgIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkO1xuLy8gfVxuXG50ZXh0YXJlYSB7XG4gICAgcmVzaXplOiB2ZXJ0aWNhbDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgIG92ZXJmbG93OiBhdXRvO1xufVxuXG5idXR0b24sXG5pbnB1dFt0eXBlPSdidXR0b24nXSxcbmlucHV0W3R5cGU9J3Jlc2V0J10sXG5pbnB1dFt0eXBlPSdmaWxlJ10sXG5pbnB1dFt0eXBlPSdzdWJtaXQnXSB7XG4gICAgQGluY2x1ZGUgYW5pbWF0ZShiYWNrZ3JvdW5kKTtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAwO1xuICAgIGhlaWdodDogJHN1Ym1pdC1oZWlnaHQ7XG4gICAgcGFkZGluZzogJHN1Ym1pdC1wYWRkaW5nO1xuICAgIGZvbnQtc2l6ZTogJHN1Ym1pdC1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6ICRzdWJtaXQtbGluZS1oZWlnaHQ7XG4gICAgY29sb3I6ICRzdWJtaXQtY29sb3I7XG4gICAgYmFja2dyb3VuZDogJHN1Ym1pdC1iYWNrZ3JvdW5kO1xuXG4gICAgYm9yZGVyOiB7XG4gICAgICAgIHdpZHRoOiAkc3VibWl0LWJvcmRlci13aWR0aDtcbiAgICAgICAgc3R5bGU6ICRzdWJtaXQtYm9yZGVyLXN0eWxlO1xuICAgICAgICBjb2xvcjogJHN1Ym1pdC1ib3JkZXItY29sb3I7XG4gICAgICAgIHJhZGl1czogJHN1Ym1pdC1yYWRpdXM7XG4gICAgfVxuXG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHRyYW5zaXRpb246IGFsbCAkYW5pbWF0aW9uLXNwZWVkO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRzdWJtaXQtaG92ZXItYmFja2dyb3VuZDtcbiAgICAgICAgY29sb3I6ICRzdWJtaXQtaG92ZXItY29sb3I7XG4gICAgfVxufSIsIi8vIHZlcnRpY2FsIGFsaWduIGVsIGluc2lkZSBwYXJlbnQgd2l0aCBmaXhlZCBoZWlnaHQvbWluLWhlaWdodFxuLy8gdXNhZ2Vcbi8vIGh0bWwgLSAucGFyZW50Pi5jaGlsZFxuLy8gc2NzcyAtIEBpbmNsdWRlIHYtYWxpZ247XG4vLyAgICAgb3IgQGluY2x1ZGUgdi1hbGlnbigyNTBweCk7XG4vLyAgICAgb3IgQGluY2x1ZGUgdi1hbGlnbigyNTBweCwgYm90dG9tLCBiZWZvcmUpO1xuLy9cbkBtaXhpbiB2LWFsaWduKCR2YS1oZWlnaHQ6IDEwMCUsICR2YS1kaXJlY3Rpb246IG1pZGRsZSwgJHZhLXBzZXVkbzogYWZ0ZXIpIHtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICY6I3skdmEtcHNldWRvfSB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiAkdmEtZGlyZWN0aW9uO1xuICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgbWluLWhlaWdodDogJHZhLWhlaWdodDtcbiAgICB9XG5cbiAgICA+KiB7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgdmVydGljYWwtYWxpZ246ICR2YS1kaXJlY3Rpb247XG4gICAgICAgIG1heC13aWR0aDogOTklO1xuICAgIH1cbn1cblxuLy8gdmVydGljYWwgYWxpZ24gYSBwYWlyIG9mIGNoaWxkIGVsIGluc2lkZSBwYXJlbnRcbi8vIHVzYWdlXG4vLyBodG1sIC0gLnBvc3Q+LmltYWdlKy50ZXh0XG4vLyBzY3NzIC0gQGluY2x1ZGUgdi1hbGlnbi1wYWlyKGltYWdlLCB0ZXh0KTtcbi8vICAgICBvciBAaW5jbHVkZSB2LWFsaWduLXBhaXIoaW1hZ2UsIHRleHQsIGJvdHRvbSk7XG4vLyAgICAgb3IgQGluY2x1ZGUgdi1hbGlnbi1wYWlyKGltYWdlLCB0ZXh0LCBtaWRkbGUsIDIwMHB4KTtcbi8vXG5AbWl4aW4gdi1hbGlnbi1wYWlyKCRjaGlsZC1uYW1lMSwgJGNoaWxkLW5hbWUyLCAkdmFsaWduOiBtaWRkbGUsICR3aWR0aDE6IGF1dG8sICR3aWR0aDI6IGF1dG8pIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcblxuICAgIC4jeyRjaGlsZC1uYW1lMX0ge1xuICAgICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogJHZhbGlnbjtcbiAgICAgICAgd2lkdGg6ICR3aWR0aDE7XG4gICAgfVxuXG4gICAgLiN7JGNoaWxkLW5hbWUyfSB7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiAkdmFsaWduO1xuICAgICAgICB3aWR0aDogJHdpZHRoMjtcbiAgICB9XG59XG5cbi8vIHZlcnRpY2FsIGFsaWduIGVsXG4vLyB1c2FnZTogQGluY2x1ZGUgdmVydGljYWwtYWxpZ24tZWw7XG4vL1xuQG1peGluIHZlcnRpY2FsLWFsaWduLWVsIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xufVxuXG4vLy8gTWl4aW4gaGVscGluZyBkZWZpbmluZyBib3RoIGB3aWR0aGAgYW5kIGBoZWlnaHRgIHNpbXVsdGFuZW91c2x5LlxuLy8vXG4vLy8gQGF1dGhvciBIdWdvIEdpcmF1ZGVsXG4vLy9cbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vXG4vLy8gQHBhcmFtIHtMZW5ndGh9ICR3aWR0aCAtIEVsZW1lbnTigJlzIGB3aWR0aGBcbi8vLyBAcGFyYW0ge0xlbmd0aH0gJGhlaWdodCAoJHdpZHRoKSAtIEVsZW1lbnTigJlzIGBoZWlnaHRgXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gVXNhZ2Vcbi8vLyAgIC5mb28ge1xuLy8vICAgICBAaW5jbHVkZSBzaXplKDEwZW0pO1xuLy8vICAgfVxuLy8vXG4vLy8gICAuYmFyIHtcbi8vLyAgICAgQGluY2x1ZGUgc2l6ZSgxMDAlLCAxMGVtKTtcbi8vLyAgIH1cbi8vL1xuLy8vIEBleGFtcGxlIGNzcyAtIENTUyBvdXRwdXRcbi8vLyAgIC5mb28ge1xuLy8vICAgICB3aWR0aDogMTBlbTtcbi8vLyAgICAgaGVpZ2h0OiAxMGVtO1xuLy8vICAgfVxuLy8vXG4vLy8gICAuYmFyIHtcbi8vLyAgICAgd2lkdGg6IDEwMCU7XG4vLy8gICAgIGhlaWdodDogMTBlbTtcbi8vLyAgIH1cbi8vL1xuQG1peGluIHNpemUoJHdpZHRoLCAkaGVpZ2h0OiAkd2lkdGgpIHtcbiAgICB3aWR0aDogJHdpZHRoO1xuICAgIGhlaWdodDogJGhlaWdodDtcbn1cblxuLy8vIGZvbnQtc21vdGhpbmdcbi8vLyBAaW5jbHVkZSBmb250LXNtb290aGluZyhvbik7XG4vLy8gQGluY2x1ZGUgZm9udC1zbW9vdGhpbmcob2ZmKTtcbkBtaXhpbiBmb250LXNtb290aGluZygkdmFsdWU6IG9uKSB7XG4gICAgQGlmICR2YWx1ZSA9PW9uIHtcbiAgICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gICAgfVxuXG4gICAgQGVsc2Uge1xuICAgICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBzdWJwaXhlbC1hbnRpYWxpYXNlZDtcbiAgICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGF1dG87XG4gICAgfVxufVxuXG5cbi8vLyBIaWRlcyB0aGUgdGV4dCBpbiBhbiBlbGVtZW50LCBjb21tb25seSB1c2VkIHRvIHNob3cgYW4gaW1hZ2UuIFNvbWUgZWxlbWVudHMgd2lsbCBuZWVkIGJsb2NrLWxldmVsIHN0eWxlcyBhcHBsaWVkLlxuLy8vXG4vLy8gQGxpbmsgaHR0cDovL3plbGRtYW4uY29tLzIwMTIvMDMvMDEvcmVwbGFjaW5nLXRoZS05OTk5cHgtaGFjay1uZXctaW1hZ2UtcmVwbGFjZW1lbnRcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBVc2FnZVxuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBAaW5jbHVkZSBoaWRlLXRleHQ7XG4vLy8gICB9XG4vLy9cbi8vLyBAZXhhbXBsZSBjc3MgLSBDU1MgT3V0cHV0XG4vLy8gICAuZWxlbWVudCB7XG4vLy8gICAgIG92ZXJmbG93OiBoaWRkZW47XG4vLy8gICAgIHRleHQtaW5kZW50OiAxMDElO1xuLy8vICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuLy8vICAgfVxuLy8vXG5AbWl4aW4gaGlkZS10ZXh0IHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHRleHQtaW5kZW50OiAxMDElO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cblxuLy8vIENyZWF0ZXMgYSB2aXN1YWwgdHJpYW5nbGUuXG4vLy8gTWl4aW4gdGFrZXMgKCRzaXplLCAkY29sb3IsICRkaXJlY3Rpb24pXG4vLy8gVGhlICRzaXplIGFyZ3VtZW50IGNhbiB0YWtlIG9uZSBvciB0d28gdmFsdWVz4oCUd2lkdGggaGVpZ2h0LlxuLy8vIFRoZSAkY29sb3IgYXJndW1lbnQgY2FuIHRha2Ugb25lIG9yIHR3b1xuLy8vIHZhbHVlc+KAlGZvcmVncm91bmQtY29sb3IgYmFja2dyb3VuZC1jb2xvci5cbi8vL1xuLy8vIEBhdXRob3IgaHR0cDovL2JvdXJib24uaW8vZG9jcy8jdHJpYW5nbGVcbi8vL1xuLy8vICRkaXJlY3Rpb246XG4vLy8gdXAsIGRvd24sIGxlZnQsIHJpZ2h0LCB1cC1yaWdodCwgdXAtbGVmdCwgZG93bi1yaWdodCwgZG93bi1sZWZ0XG4vLy8gQGV4YW1wbGUgc2NzcyAtIFVzYWdlXG4vLy8gICBAaW5jbHVkZSB0cmlhbmdsZSgxMnB4LCBncmF5LCBkb3duKTtcbi8vLyAgIEBpbmNsdWRlIHRyaWFuZ2xlKDEycHggNnB4LCBncmF5IGJsdWUsIHVwLWxlZnQpO1xuLy8vXG5AbWl4aW4gdHJpYW5nbGUoJHNpemUsICRjb2xvciwgJGRpcmVjdGlvbikge1xuICAgICR3aWR0aDogbnRoKCRzaXplLCAxKTtcbiAgICAkaGVpZ2h0OiBudGgoJHNpemUsIGxlbmd0aCgkc2l6ZSkpO1xuICAgICRmb3JlZ3JvdW5kLWNvbG9yOiBudGgoJGNvbG9yLCAxKTtcbiAgICAkYmFja2dyb3VuZC1jb2xvcjogaWYobGVuZ3RoKCRjb2xvcik9PTIsIG50aCgkY29sb3IsIDIpLCB0cmFuc3BhcmVudCk7XG4gICAgaGVpZ2h0OiAwO1xuICAgIHdpZHRoOiAwO1xuXG4gICAgQGlmICgkZGlyZWN0aW9uID09dXApIG9yICgkZGlyZWN0aW9uID09ZG93bikgb3IgKCRkaXJlY3Rpb24gPT1yaWdodCkgb3IgKCRkaXJlY3Rpb24gPT1sZWZ0KSB7XG4gICAgICAgICR3aWR0aDogJHdpZHRoIC8gMjtcbiAgICAgICAgJGhlaWdodDogaWYobGVuZ3RoKCRzaXplKSA+IDEsICRoZWlnaHQsICRoZWlnaHQvMik7XG5cbiAgICAgICAgQGlmICRkaXJlY3Rpb24gPT11cCB7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAkaGVpZ2h0IHNvbGlkICRmb3JlZ3JvdW5kLWNvbG9yO1xuICAgICAgICAgICAgYm9yZGVyLWxlZnQ6ICR3aWR0aCBzb2xpZCAkYmFja2dyb3VuZC1jb2xvcjtcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogJHdpZHRoIHNvbGlkICRiYWNrZ3JvdW5kLWNvbG9yO1xuICAgICAgICB9XG5cbiAgICAgICAgQGVsc2UgaWYgJGRpcmVjdGlvbiA9PXJpZ2h0IHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206ICR3aWR0aCBzb2xpZCAkYmFja2dyb3VuZC1jb2xvcjtcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAkaGVpZ2h0IHNvbGlkICRmb3JlZ3JvdW5kLWNvbG9yO1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogJHdpZHRoIHNvbGlkICRiYWNrZ3JvdW5kLWNvbG9yO1xuICAgICAgICB9XG5cbiAgICAgICAgQGVsc2UgaWYgJGRpcmVjdGlvbiA9PWRvd24ge1xuICAgICAgICAgICAgYm9yZGVyLWxlZnQ6ICR3aWR0aCBzb2xpZCAkYmFja2dyb3VuZC1jb2xvcjtcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogJHdpZHRoIHNvbGlkICRiYWNrZ3JvdW5kLWNvbG9yO1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogJGhlaWdodCBzb2xpZCAkZm9yZWdyb3VuZC1jb2xvcjtcbiAgICAgICAgfVxuXG4gICAgICAgIEBlbHNlIGlmICRkaXJlY3Rpb24gPT1sZWZ0IHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206ICR3aWR0aCBzb2xpZCAkYmFja2dyb3VuZC1jb2xvcjtcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogJGhlaWdodCBzb2xpZCAkZm9yZWdyb3VuZC1jb2xvcjtcbiAgICAgICAgICAgIGJvcmRlci10b3A6ICR3aWR0aCBzb2xpZCAkYmFja2dyb3VuZC1jb2xvcjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBlbHNlIGlmICgkZGlyZWN0aW9uID09dXAtcmlnaHQpIG9yICgkZGlyZWN0aW9uID09dXAtbGVmdCkge1xuICAgICAgICBib3JkZXItdG9wOiAkaGVpZ2h0IHNvbGlkICRmb3JlZ3JvdW5kLWNvbG9yO1xuXG4gICAgICAgIEBpZiAkZGlyZWN0aW9uID09dXAtcmlnaHQge1xuICAgICAgICAgICAgYm9yZGVyLWxlZnQ6ICR3aWR0aCBzb2xpZCAkYmFja2dyb3VuZC1jb2xvcjtcbiAgICAgICAgfVxuXG4gICAgICAgIEBlbHNlIGlmICRkaXJlY3Rpb24gPT11cC1sZWZ0IHtcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogJHdpZHRoIHNvbGlkICRiYWNrZ3JvdW5kLWNvbG9yO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGVsc2UgaWYgKCRkaXJlY3Rpb24gPT1kb3duLXJpZ2h0KSBvciAoJGRpcmVjdGlvbiA9PWRvd24tbGVmdCkge1xuICAgICAgICBib3JkZXItYm90dG9tOiAkaGVpZ2h0IHNvbGlkICRmb3JlZ3JvdW5kLWNvbG9yO1xuXG4gICAgICAgIEBpZiAkZGlyZWN0aW9uID09ZG93bi1yaWdodCB7XG4gICAgICAgICAgICBib3JkZXItbGVmdDogJHdpZHRoIHNvbGlkICRiYWNrZ3JvdW5kLWNvbG9yO1xuICAgICAgICB9XG5cbiAgICAgICAgQGVsc2UgaWYgJGRpcmVjdGlvbiA9PWRvd24tbGVmdCB7XG4gICAgICAgICAgICBib3JkZXItcmlnaHQ6ICR3aWR0aCBzb2xpZCAkYmFja2dyb3VuZC1jb2xvcjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBlbHNlIGlmICgkZGlyZWN0aW9uID09aW5zZXQtdXApIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkYmFja2dyb3VuZC1jb2xvciAkYmFja2dyb3VuZC1jb2xvciAkZm9yZWdyb3VuZC1jb2xvcjtcbiAgICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICAgICAgYm9yZGVyLXdpZHRoOiAkaGVpZ2h0ICR3aWR0aDtcbiAgICB9XG5cbiAgICBAZWxzZSBpZiAoJGRpcmVjdGlvbiA9PWluc2V0LWRvd24pIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkZm9yZWdyb3VuZC1jb2xvciAkYmFja2dyb3VuZC1jb2xvciAkYmFja2dyb3VuZC1jb2xvcjtcbiAgICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICAgICAgYm9yZGVyLXdpZHRoOiAkaGVpZ2h0ICR3aWR0aDtcbiAgICB9XG5cbiAgICBAZWxzZSBpZiAoJGRpcmVjdGlvbiA9PWluc2V0LXJpZ2h0KSB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGJhY2tncm91bmQtY29sb3IgJGJhY2tncm91bmQtY29sb3IgJGJhY2tncm91bmQtY29sb3IgJGZvcmVncm91bmQtY29sb3I7XG4gICAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgICAgIGJvcmRlci13aWR0aDogJHdpZHRoICRoZWlnaHQ7XG4gICAgfVxuXG4gICAgQGVsc2UgaWYgKCRkaXJlY3Rpb24gPT1pbnNldC1sZWZ0KSB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGJhY2tncm91bmQtY29sb3IgJGZvcmVncm91bmQtY29sb3IgJGJhY2tncm91bmQtY29sb3IgJGJhY2tncm91bmQtY29sb3I7XG4gICAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgICAgIGJvcmRlci13aWR0aDogJHdpZHRoICRoZWlnaHQ7XG4gICAgfVxufVxuXG5cbi8vLyBBbmltYXRlIGNzcyBwcm9wZXJ0aWVzXG4vLyB1c2FnZVxuLy8gc2NzcyAtIEBpbmNsdWRlIGFuaW1hdGUoY29sb3IpO1xuLy8gICAgIG9yIEBpbmNsdWRlIGFuaW1hdGUoY29sb3Igd2lkdGgpO1xuLy8gICAgIG9yIEBpbmNsdWRlIGFuaW1hdGUoY29sb3Igd2lkdGgsIDFzLCBsaW5lYXIpO1xuLy9cbiRhbmltYXRpb24tc3BlZWQ6IDAuM3MgIWRlZmF1bHQ7XG5cbkBtaXhpbiBhbmltYXRlKCRwcm9wZXJ0aWVzLCAkZHVyYXRpb246ICRhbmltYXRpb24tc3BlZWQsICRlYXNpbmc6IGVhc2UtaW4tb3V0KSB7XG4gICAgJGxpc3Q6ICgpO1xuXG4gICAgQGVhY2ggJHByb3AgaW4gJHByb3BlcnRpZXMge1xuICAgICAgICAkc3RyOiAjeyRwcm9wfSAjeyRkdXJhdGlvbn0gI3skZWFzaW5nfTtcbiAgICAgICAgJGxpc3Q6IGpvaW4oJGxpc3QsICN7JHN0cn0sIGNvbW1hKTtcbiAgICB9XG5cbiAgICB0cmFuc2l0aW9uOiAkbGlzdDtcbn1cblxuXG4vLy8gTWl4aW4gZm9yIHN0eWxpbmcgZm9ybS1wbGFjZWhvbGRlcnNcbi8vLyBAZXhhbXBsZSBzY3NzIC0gVXNhZ2Vcbi8vLyAgIEBpbmNsdWRlIHBsYWNlaG9sZGVyIHtcbi8vLyAgICBjb2xvcjogIzMzMztcbi8vLyAgIH1cbi8vL1xuLy8vICAgaW5wdXRbdHlwZT0ndGV4dCddLFxuLy8vICAgaW5wdXRbdHlwZT0ndGVsJ10sXG4vLy8gICBpbnB1dFt0eXBlPSdlbWFpbCddIHtcbi8vLyAgICAgQGluY2x1ZGUgcGxhY2Vob2xkZXIge1xuLy8vICAgICAgY29sb3I6IHJlZDtcbi8vLyAgICAgfVxuLy8vICAgfVxuXG5AbWl4aW4gcGxhY2Vob2xkZXIge1xuICAgICY6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgICAgICBAY29udGVudDtcbiAgICB9XG5cbiAgICAmOjotbW96LXBsYWNlaG9sZGVyIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuXG4gICAgJjotbW96LXBsYWNlaG9sZGVyIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuXG4gICAgJjotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgICAgICBAY29udGVudDtcbiAgICB9XG5cbiAgICAmLnBsYWNlaG9sZGVyIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgfVxufVxuXG4vLy8gRm9udC1zaXplIHB4IHRvIHJlbSBjYWxjXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFVzYWdlXG4vLy8gc2VsZWN0b3Ige1xuLy8vICAgIEBpbmNsdWRlIHJlbS1mb250LXNpemUoMTZweCk7XG4vLy8gfVxuXG5AbWl4aW4gcmVtLWZvbnQtc2l6ZSgkcHgtc2l6ZSkge1xuICAgIGZvbnQtc2l6ZTogJHB4LXNpemU7XG4gICAgZm9udC1zaXplOiAoJHB4LXNpemUgLyAxMHB4KSArIHJlbTtcbn1cblxuLy9mb250LWZhY2VcbkBtaXhpbiBmb250LWZhY2UoJGZvbnQtbmFtZSwgJGZvbnQtcGF0aCwgJHdlaWdodCwgJHN0eWxlKSB7XG4gICAgQGZvbnQtZmFjZSB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAnI3skZm9udC1uYW1lfSc7XG4gICAgICAgIHNyYzogdXJsKCdmb250cy8jeyRmb250LXBhdGh9LndvZmYyJykgZm9ybWF0KCd3b2ZmJyksXG4gICAgICAgIHVybCgnZm9udHMvI3skZm9udC1wYXRofS53b2ZmJykgZm9ybWF0KCd3b2ZmJyk7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkd2VpZ2h0O1xuICAgICAgICBmb250LXN0eWxlOiAkc3R5bGU7XG4gICAgfVxufVxuXG4vLyBCdXR0b24gc2l6ZXNcbkBtaXhpbiBidXR0b24tY29sb3IoJGJ0bi1iYWNrZ3JvdW5kLCAkYnRuLWNvbG9yLCAkYnRuLWJvcmRlciwgJGJ0bi1ob3Zlci1iYWNrZ3JvdW5kLCAkYnRuLWhvdmVyLWJvcmRlciwgJGJ0bi1ob3Zlci1jb2xvcikge1xuICAgIGJhY2tncm91bmQ6ICRidG4tYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJGJ0bi1jb2xvcjtcbiAgICBib3JkZXI6ICRidG4tYm9yZGVyO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRidG4taG92ZXItYmFja2dyb3VuZDtcbiAgICAgICAgY29sb3I6ICRidG4taG92ZXItY29sb3I7XG4gICAgICAgIGJvcmRlcjogJGJ0bi1ob3Zlci1ib3JkZXI7XG4gICAgfVxufVxuXG5AbWl4aW4gYWRkLXBhcmFtcygpIHtcblxuICAgIEBlYWNoICR2YWwsXG4gICAgJG1lZGlhIGluICRncmlkIHtcbiAgICAgICAgJi5kZi1yci0jeyR2YWx9IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKCfiiaUnICsgJG1lZGlhKSB7XG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5kZi1haWMtI3skdmFsfSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYSgn4omlJyArICRtZWRpYSkge1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vIGZsZXggZ3JpZFxuQG1peGluIGZsZXgtZ3JpZCgpIHtcblxuICAgIEBlYWNoICR2YWwsXG4gICAgJG1lZGlhIGluICRncmlkIHtcbiAgICAgICAgQGZvciAkZ3V0dGVyIGZyb20gMSB0aHJvdWdoIDEyIHtcbiAgICAgICAgICAgIC5jb2wtI3skdmFsfS0jeyRndXR0ZXJ9IHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYSgn4omlJyArICRtZWRpYSkge1xuICAgICAgICAgICAgICAgICAgICBmbGV4OiAxIDAgY2FsYygxMDAlIC8gMTIgKiAjeyRndXR0ZXJ9KTtcbiAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLyAxMiAqICN7JGd1dHRlcn0pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBmb3IgJGd1dHRlciBmcm9tIDAgdGhyb3VnaCAxMSB7XG4gICAgICAgICAgICAuY29sLW9mZnNldC0jeyR2YWx9LSN7JGd1dHRlcn0ge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKCfiiaUnICsgJG1lZGlhKSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDEwMCUgLyAxMiAqICN7JGd1dHRlcn0pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuQG1peGluIHYtY2VudGVyKCRtaW4taGVpZ2h0OiA0MDBweCkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG5cbiAgICA+KiB7XG4gICAgICAgIG1pbi1oZWlnaHQ6ICRtaW4taGVpZ2h0O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxufSIsIm5vc2NyaXB0IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICB0b3A6IDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBjb2xvcjogIzAwMDtcbiAgICBiYWNrZ3JvdW5kOiAjZmY4ZjhmO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IDVweCAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB6LWluZGV4OiA5OTk5OTtcbn1cblxuLmFjY2Vzc2liaWxpdHkge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAtMjAwdnc7XG4gICAgdG9wOiBhdXRvO1xuICAgIHdpZHRoOiAxcHg7XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICY6Zm9jdXMge1xuICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgIH1cbn1cblxuLmhpZGRlbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IC05OTk5cHg7XG4gICAgdG9wOiBhdXRvO1xuICAgIHdpZHRoOiAxcHg7XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbn0iLCIvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gVGhpcyBmaWxlIGNvbnRhaW5zIGFsbCBzdHlsZXMgcmVsYXRlZCB0byB0aGUgaGVhZGVyIG9mIHRoZSBzaXRlXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuW2lkPVwiaGVhZGVyXCJdIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgei1pbmRleDogOTk7XG59XG5cbi5oZWFkZXItaG9sZGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcbn1cblxuLmxvZ28ge1xuICAgIHdpZHRoOiAxNTBweDtcbiAgICBtaW4td2lkdGg6IDE1MHB4O1xuICAgIG1hcmdpbi1yaWdodDogMjBweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIuKJpXRhYmxldFwiKSB7XG4gICAgICAgIHdpZHRoOiAxODBweDtcbiAgICAgICAgbWluLXdpZHRoOiAxODBweDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIuKJpWRlc2t0b3BcIikge1xuICAgICAgICB3aWR0aDogMjAwcHg7XG4gICAgICAgIG1pbi13aWR0aDogMjAwcHg7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEoXCLiiaV3aWRlc2NyZWVuXCIpIHtcbiAgICAgICAgd2lkdGg6IDM3NXB4O1xuICAgICAgICBtaW4td2lkdGg6IDM3NXB4O1xuICAgICAgICBtYXJnaW4tbGVmdDogMi4yJTtcbiAgICB9XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB6LWluZGV4OiAtMTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiA2MCU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1hZ2VzL2xvZ28tc2hhZG93LnBuZ1wiKTtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgd2lkdGg6IDcwMHB4O1xuICAgICAgICBoZWlnaHQ6IDMwMHB4O1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSAwO1xuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIuKJpXRhYmxldFwiKSB7XG4gICAgICAgICAgICB3aWR0aDogODAwcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDM1MHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCLiiaVkZXNrdG9wXCIpIHtcbiAgICAgICAgICAgIHdpZHRoOiA4NTBweDtcbiAgICAgICAgICAgIGhlaWdodDogMzUwcHg7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIuKJpXdpZGVzY3JlZW5cIikge1xuICAgICAgICAgICAgd2lkdGg6IDExOTBweDtcbiAgICAgICAgICAgIGhlaWdodDogNDUzcHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbltpZD1cIm5hdlwiXSB7XG4gICAgbWFyZ2luOiAyMHB4IDMlIDIwcHggMDtcblxuICAgIEBpbmNsdWRlIG1lZGlhKFwi4omldGFibGV0XCIpIHtcbiAgICAgICAgbWFyZ2luOiAzNXB4IDMlIDIwcHggMDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIuKJpXdpZGVzY3JlZW5cIikge1xuICAgICAgICBtYXJnaW46IDUycHggNiUgMjBweCAwO1xuICAgIH1cbn1cblxuLm5hdi1kcm9wIHtcbiAgICBAaW5jbHVkZSBhbmltYXRlKGFsbCk7XG5cbiAgICBiYWNrZ3JvdW5kOiByZ2JhKCRiYXNlLWJhY2tncm91bmQtY29sb3IsIDAuOTUpO1xuICAgIGNvbG9yOiAkcHVycGxlO1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBib3R0b206IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogMTBweCAxNXB4O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtICRhbmltYXRpb24tc3BlZWQ7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIuKJpXRhYmxldFwiKSB7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEoXCI8dGFibGV0XCIpIHtcbiAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgIH1cblxuICAgIC5uYXYtYWN0aXZlICYge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gICAgfVxuXG4gICAgdWwge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCLiiaV0YWJsZXRcIikge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgbWFyZ2luOiAwIC0xMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCLiiaVkZXNrdG9wXCIpIHtcbiAgICAgICAgICAgIG1hcmdpbjogMCAtMjBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwi4omld2lkZXNjcmVlblwiKSB7XG4gICAgICAgICAgICBtYXJnaW46IDAgLTM1cHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBsaSB7XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgIHBhZGRpbmc6IDE0cHggMDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwi4omldGFibGV0XCIpIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwi4omlZGVza3RvcFwiKSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDI1cHg7XG4gICAgICAgIH1cblxuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IC03cHg7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAtN3B4O1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkeWVsbG93O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG5cbiAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogLTdweDtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IC03cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwi4omldGFibGV0XCIpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgbGVmdDogNXB4O1xuICAgICAgICAgICAgcmlnaHQ6IDVweDtcbiAgICAgICAgICAgIGJvdHRvbTogLThweDtcbiAgICAgICAgICAgIGhlaWdodDogMXB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJHBpbms7XG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogJGFuaW1hdGlvbi1zcGVlZDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICAgICAgICAgIGxlZnQ6IC01cHg7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IC01cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5uYXYtb3BlbmVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDMwcHg7XG4gICAgaGVpZ2h0OiAzMHB4O1xuICAgIGZvbnQtc2l6ZTogMDtcbiAgICBsaW5lLWhlaWdodDogMDtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgei1pbmRleDogMTA7XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIuKJpXRhYmxldFwiKSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgJjpiZWZvcmUsXG4gICAgJjphZnRlcixcbiAgICBzcGFuIHtcbiAgICAgICAgQGluY2x1ZGUgYW5pbWF0ZSh0cmFuc2Zvcm0gb3BhY2l0eSk7XG4gICAgICAgIGJhY2tncm91bmQ6ICRwaW5rO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICBsZWZ0OiAxNSU7XG4gICAgICAgIHJpZ2h0OiAxNSU7XG4gICAgICAgIGhlaWdodDogM3B4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICB9XG5cbiAgICAmOmJlZm9yZSxcbiAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICB9XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtOXB4KTtcbiAgICB9XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDZweCk7XG4gICAgfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICAgICY6YmVmb3JlLFxuICAgICAgICAmOmFmdGVyLFxuICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwaW5rO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLm5hdi1hY3RpdmUgJiB7XG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKSB0cmFuc2xhdGVZKDApO1xuICAgICAgICB9XG5cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpIHRyYW5zbGF0ZVkoMCk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gVGhpcyBmaWxlIGNvbnRhaW5zIGFsbCBzdHlsZXMgcmVsYXRlZCB0byB0aGUgY29tbW9uIGxheW91dCBvZiB0aGUgc2l0ZVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbjpyb290IHtcbiAgICAtLXN3aXBlci10aGVtZS1jb2xvcjogI2M4NDdhNDtcbiAgICAtLXN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1pbmFjdGl2ZS1jb2xvcjogIzIwMTkzMztcbiAgICAtLXN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1pbmFjdGl2ZS1vcGFjaXR5OiAxO1xuICAgIC0tc3dpcGVyLXBhZ2luYXRpb24tdG9wOiBjYWxsKDEwMCUgKyAxMHB4KTtcbn1cbltpZD1cIndyYXBwZXJcIl0ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhc2UtYmFja2dyb3VuZC1jb2xvcjtcbiAgICBtaW4taGVpZ2h0OiAxMDB2aDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG5tYWluIHtcbiAgICBmbGV4LWdyb3c6IDE7XG5cbiAgICAuYXBwcm92ZWQgJiB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgfVxufVxuXG4uY29udGFpbmVyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXgtd2lkdGg6ICRtYXgtd2lkdGgtY2VudGVyLWNvbnRhaW5lcjtcbiAgICBwYWRkaW5nOiAkcGFkZGluZy1jb250YWluZXI7XG4gICAgbWFyZ2luOiAwIGF1dG87XG59XG5cbi5saXN0LWRvdHQge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgZm9udC1zaXplOiAxOXB4O1xuICAgIGxpbmUtaGVpZ2h0OiBjYWxjKDMwIC8gMjQpO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIuKJpXRhYmxldFwiKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICB9XG5cbiAgICA+IGxpIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAyNnB4O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICB0b3A6IDhweDtcbiAgICAgICAgICAgIHdpZHRoOiA4cHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDhweDtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRwaW5rO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIuKJpXRhYmxldFwiKSB7XG4gICAgICAgICAgICAgICAgdG9wOiAxMHB4O1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMXB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTFweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmJ0bi1pdGVtIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAxMDAlO1xuICAgIHJpZ2h0OiAzMHB4O1xuICAgIHBhZGRpbmc6IDhweCAyM3B4IDEwcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGxpbmUtaGVpZ2h0OiAkYnRuLWxpbmUtaGVpZ2h0O1xuICAgIHRyYW5zaXRpb246IGFsbCAkYW5pbWF0aW9uLXNwZWVkO1xuICAgIGNvbG9yOiAkYnRuLWNvbG9yLXByaW1hcnk7XG4gICAgYmFja2dyb3VuZDogJGJ0bi1iYWNrZ3JvdW5kLXByaW1hcnk7XG4gICAgYm94LXNoYWRvdzogMCAwIDNweCByZ2JhKDMzLCAzMywgNDQsIDAuMyk7XG4gICAgdGV4dC1zaGFkb3c6IDAgMXB4IDAgIzJhNDMyNTtcbiAgICBib3JkZXItY29sb3I6ICRidG4tYm9yZGVyLWNvbG9yLXByaW1hcnk7XG4gICAgZm9udDoge1xuICAgICAgICBzaXplOiAkYnRuLWZvbnQtc2l6ZTtcbiAgICAgICAgZmFtaWx5OiAkYmFzZS1mb250O1xuICAgICAgICB3ZWlnaHQ6IG5vcm1hbDtcbiAgICB9XG4gICAgYm9yZGVyOiB7XG4gICAgICAgIHN0eWxlOiBzb2xpZDtcbiAgICAgICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICB3aWR0aDogJGJ0bi1ib3JkZXItd2lkdGg7XG4gICAgICAgIHJhZGl1czogMCAwICRidG4tYm9yZGVyLXJhZGl1cyAkYnRuLWJvcmRlci1yYWRpdXM7XG4gICAgfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAkYnRuLWhvdmVyLWNvbG9yLXByaW1hcnk7XG4gICAgICAgIGJhY2tncm91bmQ6ICRidG4taG92ZXItYmFja2dyb3VuZC1wcmltYXJ5O1xuICAgIH1cbn1cblxuLmxpc3QtY2hlY2sge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcblxuICAgID4gbGkge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHBhZGRpbmc6IDAgMCA1cHggMjJweDtcblxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHRvcDogNXB4O1xuICAgICAgICAgICAgd2lkdGg6IDE0cHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDExcHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvY2hlY2sucG5nXCIpO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAwO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIltpZD1cImZvb3RlclwiXSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGNvbG9yOiByZ2JhKCM2YzVlN2IsIDAuNSk7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIHBhZGRpbmc6IDkzcHggMCA0MHB4O1xuXG4gICAgYSB7XG4gICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciAkYW5pbWF0aW9uLXNwZWVkO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5jb250YWluZXIge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgfVxufVxuXG4uZm9vdGVyLXRleHQge1xuICAgIG1heC13aWR0aDogNzAwcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG1hcmdpbjogMCBhdXRvIDQ1cHg7XG5cbiAgICBwIHtcbiAgICAgICAgbWFyZ2luOiAwIDAgMS4yZW07XG4gICAgfVxufVxuXG4uZm9vdGVyLW1lbnUge1xuICAgIG1hcmdpbjogMCAwIDE4cHg7XG4gICAgcGFkZGluZzogMDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGNvbG9yOiByZ2JhKCM2YzVlN2IsIDAuNSk7XG5cbiAgICA+IGxpIHtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogXCJ8XCI7XG4gICAgICAgICAgICBtYXJnaW46IDAgNXB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIGEge1xuICAgICAgICBjb2xvcjogcmdiYSgjNmM1ZTdiLCAwLjUpO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5mb290ZXItbGlzdCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xuICAgIGZsZXgtd3JhcDogd3JhcDtcblxuICAgIEBpbmNsdWRlIG1lZGlhKFwi4omld2lkZXNjcmVlblwiKSB7XG4gICAgICAgIHBhZGRpbmc6IDAgMTAlO1xuICAgIH1cblxuICAgID4gbGkge1xuICAgICAgICB3aWR0aDogMjYwcHg7XG4gICAgICAgIHBhZGRpbmc6IDAgMTBweCAyMHB4O1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwi4omlZGVza3RvcFwiKSB7XG4gICAgICAgICAgICB3aWR0aDogMzAwcHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5mb290ZXItbGlzdC1pdGVtIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgY29sb3I6ICRncmF5LTEwMDtcbiAgICBmb250LXdlaWdodDogJG5vcm1hbDtcbiAgICBmb250LXNpemU6IDEycHg7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjtcblxuICAgIGg1IHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBmb250LXdlaWdodDogJG5vcm1hbDtcbiAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB9XG5cbiAgICAmX19pY29uIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICAgICAgICB3aWR0aDogNjBweDtcbiAgICAgICAgbWluLXdpZHRoOiA2MHB4O1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPHRhYmxldFwiKSB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHAge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgfVxufVxuIiwiLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIFRoaXMgZmlsZSBjb250YWlucyBhbGwgc3R5bGVzIHJlbGF0ZWQgdG8gdGhlIGJ1dHRvbiBjb21wb25lbnQuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLmJ0bi5idG4ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwYWRkaW5nOiAkYnRuLXBhZGRpbmc7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGxpbmUtaGVpZ2h0OiAkYnRuLWxpbmUtaGVpZ2h0O1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgdHJhbnNpdGlvbjogYWxsICRhbmltYXRpb24tc3BlZWQ7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgbWluLXdpZHRoOiAzMTJweDtcbiAgICBsZXR0ZXItc3BhY2luZzogMC4xZW07XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIuKJpXRhYmxldFwiKSB7XG4gICAgICAgIG1pbi13aWR0aDogMjMwcHg7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhKFwi4omlZGVza3RvcFwiKSB7XG4gICAgICAgIG1pbi13aWR0aDogMzE0cHg7XG4gICAgfVxuXG4gICAgZm9udDoge1xuICAgICAgICBzaXplOiAkYnRuLWZvbnQtc2l6ZTtcbiAgICAgICAgZmFtaWx5OiAkYmFzZS1mb250O1xuICAgICAgICB3ZWlnaHQ6IG5vcm1hbDtcbiAgICB9XG5cbiAgICBib3JkZXI6IHtcbiAgICAgICAgc3R5bGU6IHNvbGlkO1xuICAgICAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIHdpZHRoOiAkYnRuLWJvcmRlci13aWR0aDtcbiAgICAgICAgcmFkaXVzOiAkYnRuLWJvcmRlci1yYWRpdXM7XG4gICAgfVxuXG4gICAgJi0tZGVmYXVsdCB7XG4gICAgICAgIGNvbG9yOiAkYnRuLWNvbG9yLWRlZmF1bHQ7XG4gICAgICAgIGJhY2tncm91bmQ6ICRidG4tYmFja2dyb3VuZC1kZWZhdWx0O1xuICAgICAgICBib3JkZXItY29sb3I6ICRidG4tYm9yZGVyLWNvbG9yLWRlZmF1bHQ7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMXB4IDAgI2ZiMWYxZjtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiAkYnRuLWhvdmVyLWNvbG9yLWRlZmF1bHQ7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkYnRuLWhvdmVyLWJhY2tncm91bmQtZGVmYXVsdDtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGJ0bi1ob3Zlci1ib3JkZXItY29sb3ItZGVmYXVsdDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtLXByaW1hcnkge1xuICAgICAgICBjb2xvcjogJGJ0bi1jb2xvci1wcmltYXJ5O1xuICAgICAgICBiYWNrZ3JvdW5kOiAkYnRuLWJhY2tncm91bmQtcHJpbWFyeTtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDNweCByZ2JhKDMzLCAzMywgNDQsIDAuMyk7XG4gICAgICAgIHRleHQtc2hhZG93OiAwIDFweCAwICMyYTQzMjU7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGJ0bi1ib3JkZXItY29sb3ItcHJpbWFyeTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiAkYnRuLWhvdmVyLWNvbG9yLXByaW1hcnk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkYnRuLWhvdmVyLWJhY2tncm91bmQtcHJpbWFyeTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtLXNlY29uZGFyeSB7XG4gICAgICAgIGNvbG9yOiAkYnRuLWNvbG9yLXNlY29uZGFyeTtcbiAgICAgICAgYmFja2dyb3VuZDogJGJ0bi1iYWNrZ3JvdW5kLXNlY29uZGFyeTtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDIwcHggcmdiYSg0NiwgMjA4LCAyMDYsIDAuNyk7XG4gICAgICAgIHRleHQtc2hhZG93OiAwIDAgMjBweCByZ2JhKDQ2LCAyMDgsIDIwNiwgMC4zKTtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkYnRuLWJvcmRlci1jb2xvci1zZWNvbmRhcnk7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgY29sb3I6ICRidG4taG92ZXItY29sb3Itc2Vjb25kYXJ5O1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJGJ0bi1ob3Zlci1iYWNrZ3JvdW5kLXNlY29uZGFyeTtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGJ0bi1ob3Zlci1ib3JkZXItY29sb3Itc2Vjb25kYXJ5O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi0tc20ge1xuICAgICAgICBwYWRkaW5nOiAkYnRuLXBhZGRpbmctc207XG4gICAgICAgIGZvbnQtc2l6ZTogJGJ0bi1mb250LXNpemUtc207XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAkYnRuLWxpbmUtaGVpZ2h0LXNtO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAkYnRuLWJvcmRlci1yYWRpdXMtc207XG4gICAgfVxuXG4gICAgJi0tbGcge1xuICAgICAgICBwYWRkaW5nOiAkYnRuLXBhZGRpbmctbGc7XG4gICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6ICRidG4tbGluZS1oZWlnaHQtbGc7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6ICRidG4tYm9yZGVyLXJhZGl1cy1sZztcbiAgICAgICAgbWluLXdpZHRoOiAyNTZweDtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIuKJpXBob25lXCIpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGJ0bi1mb250LXNpemUtbGc7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5idG4tZ3JvdXAge1xuICAgIG1hcmdpbjogMCAtNXB4IC0xMHB4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuXG4gICAgLmJ0biB7XG4gICAgICAgIG1hcmdpbjogMCA1cHggMTBweDtcbiAgICB9XG59XG4iLCIuc2VjdGlvbi1oZXJvIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gICAgcGFkZGluZzogMzVweCAwIDA7XG4gICAgbWFyZ2luLWJvdHRvbTogLTQwcHg7XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIuKJpXRhYmxldFwiKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDU3cHg7XG4gICAgfVxuXG4gICAgJjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICB6LWluZGV4OiAzO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBoZWlnaHQ6IDEyMHB4O1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudChcbiAgICAgICAgICAgIHRvIGJvdHRvbSxcbiAgICAgICAgICAgIHJnYmEoMjAwLCA3MSwgMTY0LCAwKSAwJSxcbiAgICAgICAgICAgIHJnYmEoMCwgMCwgMCwgMSkgMTAwJVxuICAgICAgICApO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwi4omldGFibGV0XCIpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCLiiaV0YWJsZXRcIikge1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMTAwJTtcbiAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy9oZXJvLWRlY29yLTAxLnBuZ1wiKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgMDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICAgICAgICAgIHdpZHRoOiAxMjAlO1xuICAgICAgICAgICAgaGVpZ2h0OiA2MzdweDtcbiAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCLiiaV3aWRlc2NyZWVuXCIpIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMzc5cHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19iZyB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCLiiaV0YWJsZXRcIikge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgaW5zZXQ6IDA7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICAgICAgb2JqZWN0LXBvc2l0aW9uOiA1MCUgMTAwJTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5jb250YWluZXIge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgfVxuXG4gICAgJl9faG9sZGVyIHtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCLiiaV0YWJsZXRcIikge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDcuNCUgMCAzLjMlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9faW1hZ2Uge1xuICAgICAgICBtYXJnaW46IDAgY2FsYygkd2lkZ2V0LW1hcmdpbiAqIC0xKTtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIuKJpXRhYmxldFwiKSB7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogNHZ3O1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCLiiaV4bFwiKSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fY29udGVudCB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgcGFkZGluZzogNTBweCAwIDEwcHg7XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCLiiaV0YWJsZXRcIikge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiA0MjBweDtcbiAgICAgICAgICAgIHBhZGRpbmc6IGNhbGMoNjBweCArICgxNTAgLSA2MCkgKiAoKDEwMHZ3IC0gNzY4cHgpIC8gKDEyMDAgLSA3NjgpKSlcbiAgICAgICAgICAgICAgICAwIDEwcHggMDtcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIDAgLTIlO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCLiiaV3aWRlc2NyZWVuXCIpIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBjYWxjKFxuICAgICAgICAgICAgICAgIC0yJSArICgtMTAgLSAoLTIpKSAqICgoMTAwdncgLSAxMjAwcHgpIC8gKDE2MDAgLSAxMjAwKSlcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgICBwYWRkaW5nOiBjYWxjKFxuICAgICAgICAgICAgICAgICAgICA1MHB4ICsgKDE1MCAtIDUwKSAqICgoMTAwdncgLSAxMjAwcHgpIC8gKDE2MDAgLSAxMjAwKSlcbiAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgMCAyMHB4IDA7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIuKJpXhsXCIpIHtcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIDAgLTEwJTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDE1MHB4IDAgMjBweCAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fdGV4dCB7XG4gICAgICAgIG1hcmdpbjogMCAwIDJlbTtcbiAgICB9XG59XG4iLCIuc2VjdGlvbi1vcHRpb25zIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMztcblxuICAgIC5zd2lwZXItd3JhcHBlciB7XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwi4omld2lkZXNjcmVlblwiKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgbWFyZ2luOiAwIC0xM3B4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnN3aXBlciB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIHBhZGRpbmc6IDAgMCA0MHB4O1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwi4omld2lkZXNjcmVlblwiKSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgKiB7XG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIuKJpXdpZGVzY3JlZW5cIikge1xuICAgICAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuc3dpcGVyLXNsaWRlIHtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCLiiaV3aWRlc2NyZWVuXCIpIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMTNweDtcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLyAzKTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5vcHRpb24ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIG1hcmdpbjogMzNweCBhdXRvIDA7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXgtd2lkdGg6IDUyMnB4O1xuICAgIG1pbi1oZWlnaHQ6IDEwMHB4O1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoXCLiiaVwaG9uZVwiKSB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDEyM3B4O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhKFwi4omld2lkZXNjcmVlblwiKSB7XG4gICAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgICAgbWFyZ2luOiAzM3B4IDAgMDtcbiAgICB9XG5cbiAgICAmX19ob2xkIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBpbnNldDogMDtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1hZ2VzL2JnLW9wdGlvbi5qcGdcIik7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR2aW9sZXQ7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSAwJTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogOXB4O1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIH1cblxuICAgICZfX2ltZyB7XG4gICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIuKJpXBob25lXCIpIHtcbiAgICAgICAgICAgIHdpZHRoOiAyMzhweDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwi4omld2lkZXNjcmVlblwiKSB7XG4gICAgICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCLiiaV4bFwiKSB7XG4gICAgICAgICAgICB3aWR0aDogMjM4cHg7XG4gICAgICAgIH1cblxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy9vcHRpb24tbWFzay5wbmdcIik7XG4gICAgICAgICAgICBtYXNrLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvb3B0aW9uLW1hc2sucG5nXCIpO1xuICAgICAgICAgICAgbWFzay1zaXplOiBjb3ZlcjtcbiAgICAgICAgICAgIG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgICBtYXNrLXBvc2l0aW9uOiAxMDAlIDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19jb250ZW50IHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICBtYXJnaW4tdG9wOiAtMjBweDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBwYWRkaW5nOiAwIDVweDtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCLiiaVwaG9uZVwiKSB7XG4gICAgICAgICAgICB3aWR0aDogMjgwcHg7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAtMzJweDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwi4omld2lkZXNjcmVlblwiKSB7XG4gICAgICAgICAgICB3aWR0aDogY2FsYyhcbiAgICAgICAgICAgICAgICAyMDBweCArICgzMDAgLSAyMDApICogKCgxMDB2dyAtIDEyMDBweCkgLyAoMTYwMCAtIDEyMDApKVxuICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IGNhbGMoXG4gICAgICAgICAgICAgICAgKDE3cHggKyAoMzIgLSAxNykgKiAoKDEwMHZ3IC0gMTIwMHB4KSAvICgxNjAwIC0gMTIwMCkpKSAqIC0xXG4gICAgICAgICAgICApO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCLiiaV4bFwiKSB7XG4gICAgICAgICAgICB3aWR0aDogMjgwcHg7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAtMzJweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX3RpdGxlIHtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCLiiaVwaG9uZVwiKSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDQ4cHg7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIuKJpXdpZGVzY3JlZW5cIikge1xuICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKFxuICAgICAgICAgICAgICAgIDI1cHggKyAoNDggLSAyNSkgKiAoKDEwMHZ3IC0gMTIwMHB4KSAvICgxNjAwIC0gMTIwMCkpXG4gICAgICAgICAgICApO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCLiiaV4bFwiKSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDQ4cHg7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIuc2VjdGlvbi10ZXh0IHtcbiAgICBwYWRkaW5nOiAzMHB4IDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDM7XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIuKJpXRhYmxldFwiKSB7XG4gICAgICAgIHBhZGRpbmc6IDUwcHggMDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIuKJpWRlc2t0b3BcIikge1xuICAgICAgICBwYWRkaW5nOiA4MnB4IDAgNjVweDtcbiAgICB9XG59XG5cbi50ZXh0LWJsb2NrIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIuKJpXRhYmxldFwiKSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgcGFkZGluZzogMCA2JTtcbiAgICB9XG5cbiAgICBoMiB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICB9XG5cbiAgICBwIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgIH1cblxuICAgICZfX3RpdGxlIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIuKJpXRhYmxldFwiKSB7XG4gICAgICAgICAgICB3aWR0aDogNDAlO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2NvbnRlbnQge1xuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIuKJpXRhYmxldFwiKSB7XG4gICAgICAgICAgICB3aWR0aDogNTUlO1xuICAgICAgICAgICAgcGFkZGluZzogMCAxMHB4O1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiLnNlY3Rpb24tdmlkZW8ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAyO1xuICAgIG1hcmdpbjogMCAwIDMwcHg7XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIuKJpXRhYmxldFwiKSB7XG4gICAgICAgIG1hcmdpbjogMCAwIDgwcHg7XG4gICAgfVxuXG4gICAgdmlkZW8ge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgIH1cbn1cblxuLnZpZGVvLXdyYXBwZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICY6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHotaW5kZXg6IC0xO1xuICAgICAgICBpbnNldDogLTE0JSAtMTclIC00MSU7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy92aWRlby1iZy5wbmdcIik7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDUwJTtcbiAgICB9XG59XG4iLCIuc2VjdGlvbi1hY3RvciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmc6IDMwcHggMCAwO1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIuKJpXRhYmxldFwiKSB7XG4gICAgICAgIHBhZGRpbmc6IDc5cHggMCAwO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA1MHB4O1xuICAgIH1cblxuICAgICZfX3Zpc3VhbCB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgaW5zZXQ6IGF1dG8gMCAwO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCLiiaV0YWJsZXRcIikge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBpbnNldDogMCAtOTk5cHg7XG4gICAgICAgIH1cblxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwi4omldGFibGV0XCIpIHtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5hY3Rvci1ib3gge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIuKJpXRhYmxldFwiKSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhKFwi4omlZGVza3RvcFwiKSB7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgfVxuXG4gICAgLmxpc3QtZG90dCB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAzMHB4O1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogNTBweDtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIH1cblxuICAgICZfX2NvbnRlbnQge1xuICAgICAgICBwYWRkaW5nOiAwIDMlIDIwcHg7XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCLiiaV0YWJsZXRcIikge1xuICAgICAgICAgICAgd2lkdGg6IDQ1JTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwi4omlZGVza3RvcFwiKSB7XG4gICAgICAgICAgICB3aWR0aDogNDAlO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCLiiaV4bFwiKSB7XG4gICAgICAgICAgICB3aWR0aDogMzklO1xuICAgICAgICAgICAgcGFkZGluZzogMCA3JSAyMHB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9faW1nIHtcbiAgICAgICAgbWFyZ2luOiAwIGNhbGMoJHdpZGdldC1tYXJnaW4gKiAtMSk7XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCLiiaV0YWJsZXRcIikge1xuICAgICAgICAgICAgd2lkdGg6IDU1JTtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwi4omleGxcIikge1xuICAgICAgICAgICAgd2lkdGg6IDYwJTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgNS40JSAwIDA7XG4gICAgICAgIH1cblxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI8dGFibGV0XCIpIHtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIuc2VjdGlvbi1vcHRpb25zICsgLnNlY3Rpb24tY29udHJvbCB7XG4gICAgbWFyZ2luLXRvcDogLTIxM3B4O1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoXCLiiaV0YWJsZXRcIikge1xuICAgICAgICBtYXJnaW4tdG9wOiAtMjQ2cHg7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEoXCLiiaVkZXNrdG9wXCIpIHtcbiAgICAgICAgbWFyZ2luLXRvcDogLTMwMHB4O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhKFwi4omld2lkZXNjcmVlblwiKSB7XG4gICAgICAgIG1hcmdpbi10b3A6IC0yMDdweDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIuKJpXhsXCIpIHtcbiAgICAgICAgbWFyZ2luLXRvcDogLTIxMHB4O1xuICAgIH1cbn1cblxuLnNlY3Rpb24tY29udHJvbCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmc6IDI0MHB4IDAgMDtcblxuICAgIEBpbmNsdWRlIG1lZGlhKFwi4omldGFibGV0XCIpIHtcbiAgICAgICAgcGFkZGluZzogMzYwcHggMCAxMDBweDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIuKJpWRlc2t0b3BcIikge1xuICAgICAgICBwYWRkaW5nOiAzNjBweCAwIDYwcHg7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEoXCLiiaV3aWRlc2NyZWVuXCIpIHtcbiAgICAgICAgcGFkZGluZzogMzYwcHggMCAxMDBweDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIuKJpXhsXCIpIHtcbiAgICAgICAgcGFkZGluZzogMzYwcHggMCAyMDBweDtcbiAgICB9XG5cbiAgICAmX192aXN1YWwge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwi4omldGFibGV0XCIpIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGluc2V0OiAwIC05OTlweDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDMwMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCLiiaV3aWRlc2NyZWVuXCIpIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmNvbnRyb2wtYm94IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIuKJpXRhYmxldFwiKSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgcGFkZGluZzogMCAyMHB4IDAgMDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIuKJpWRlc2t0b3BcIikge1xuICAgICAgICBwYWRkaW5nOiAwIDEwJSAwIDA7XG4gICAgfVxuXG4gICAgJl9fZWRpdG9yIHtcbiAgICAgICAgbWFyZ2luOiAwIGNhbGMoJHdpZGdldC1tYXJnaW4gKiAtMSk7XG4gICAgICAgIG1hcmdpbi10b3A6IC0xMjBweDtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIuKJpXRhYmxldFwiKSB7XG4gICAgICAgICAgICBtYXJnaW46IDAgMTBweCAwIDA7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDEyMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCLiiaVkZXNrdG9wXCIpIHtcbiAgICAgICAgICAgIG1hcmdpbjogMCA0M3B4IDAgMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDQzcHggMCAwO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCLiiaV3aWRlc2NyZWVuXCIpIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIjx0YWJsZXRcIikge1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2NvbnRlbnQge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIHBhZGRpbmc6IDAgMyU7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgei1pbmRleDogMjtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIuKJpXRhYmxldFwiKSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgd2lkdGg6IDQwMHB4O1xuICAgICAgICAgICAgbWluLXdpZHRoOiA0MDBweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5saXN0LWRvdHQge1xuICAgICAgICBwYWRkaW5nLXRvcDogMzBweDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDUwcHg7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB9XG59XG4iLCIuc2VjdGlvbi1mdWxsLWltYWdlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZzogNTBweCAwIDA7XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIuKJpXRhYmxldFwiKSB7XG4gICAgICAgIHBhZGRpbmc6IDEyNXB4IDAgMTU1cHg7XG4gICAgfVxuXG4gICAgJl9fdmlzdWFsIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBpbnNldDogYXV0byAwIDA7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIuKJpXRhYmxldFwiKSB7XG4gICAgICAgICAgICBpbnNldDogMCAtOTk5cHg7XG4gICAgICAgIH1cblxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwi4omldGFibGV0XCIpIHtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5mdWxsLWltYWdlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIuKJpXRhYmxldFwiKSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgfVxuXG4gICAgJl9fY29udGVudCB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBwYWRkaW5nOiAwIDUlO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwi4omldGFibGV0XCIpIHtcbiAgICAgICAgICAgIHdpZHRoOiA2NDBweDtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogLTgwcHg7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIuKJpWRlc2t0b3BcIikge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMTEzcHg7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIuc2VjdGlvbi1mdWxsLWltYWdlICsgLnNlY3Rpb24taW1hZ2UtbGluZSB7XG4gICAgbWFyZ2luLXRvcDogLTFweDtcblxuICAgIEBpbmNsdWRlIG1lZGlhKFwi4omldGFibGV0XCIpIHtcbiAgICAgICAgbWFyZ2luLXRvcDogLTE1NXB4O1xuICAgIH1cbn1cblxuLnNlY3Rpb24taW1hZ2UtbGluZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiBjYWxjKDEwMCUgLSAxcHgpO1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAgICAgd2lkdGg6IDE1NTJweDtcbiAgICAgICAgaGVpZ2h0OiA1NTZweDtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgMDtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1hZ2VzL2RlY29yLTAyLnBuZ1wiKTtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgfVxufVxuXG4uaW1hZ2UtbGluZSB7XG4gICAgbWFyZ2luOiAwIC0zMnB4O1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAxO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoXCLiiaVwaG9uZVwiKSB7XG4gICAgICAgIG1hcmdpbjogMCAtMzdweDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIuKJpXRhYmxldFwiKSB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICB9XG5cbiAgICA+IGxpIHtcbiAgICAgICAgJjpmaXJzdC1jaGlsZCxcbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIC5pbWFnZS1saW5lLWl0ZW0ge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPHRhYmxldFwiKSB7XG4gICAgICAgICAgICAgICAgICAgIHotaW5kZXg6IC0xO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgLmltYWdlLWxpbmUtaXRlbV9fdGl0bGUge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPHBob25lXCIpIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAyM3B4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPHRhYmxldFwiKSB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMjVweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgLmltYWdlLWxpbmUtaXRlbV9fdGl0bGUge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPHBob25lXCIpIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogOHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmltYWdlLWxpbmUtaXRlbSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgJl9faG9sZCB7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIHRyYW5zZm9ybTogc2tld1goLTlkZWcpO1xuICAgIH1cblxuICAgICZfX3Zpc3VhbCB7XG4gICAgICAgIHRyYW5zZm9ybTogc2tld1goOWRlZyk7XG4gICAgICAgIG1hcmdpbjogMCAtMjVweDtcbiAgICB9XG5cbiAgICAmX190aXRsZSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogLTVweDtcbiAgICAgICAgcmlnaHQ6IC01cHg7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgZm9udC1zaXplOiA5cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudChcbiAgICAgICAgICAgIHRvIHJpZ2h0LFxuICAgICAgICAgICAgcmdiYSgzMSwgMzEsIDMxLCAwLjkpIDEwJSxcbiAgICAgICAgICAgIHJnYmEoMzEsIDMxLCAzMSwgMC4wNSkgMTAwJVxuICAgICAgICApO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICBmb250LWZhbWlseTogJGJhc2UtZm9udC0xO1xuICAgICAgICBwYWRkaW5nOiAxMHB4IDVweDtcbiAgICAgICAgdHJhbnNmb3JtOiBza2V3WCg5ZGVnKTtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIuKJpXBob25lXCIpIHtcbiAgICAgICAgICAgIGxlZnQ6IC0xMHB4O1xuICAgICAgICAgICAgcmlnaHQ6IC0xMHB4O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgcGFkZGluZzogMjBweCA1cHg7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIuKJpXRhYmxldFwiKSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIuKJpWRlc2t0b3BcIikge1xuICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCLiiaV3aWRlc2NyZWVuXCIpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi5zZWN0aW9uLWhlYWRpbmcge1xuICAgIHBhZGRpbmc6IDEyMHB4IDAgMTBweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoXCLiiaV0YWJsZXRcIikge1xuICAgICAgICBwYWRkaW5nOiAxMjBweCAwIDYwcHg7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEoXCLiiaV3aWRlc2NyZWVuXCIpIHtcbiAgICAgICAgcGFkZGluZzogMjEwcHggMCA2MHB4O1xuICAgIH1cblxuICAgICY6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgICAgIHdpZHRoOiAyMDAwcHg7XG4gICAgICAgIGhlaWdodDogNjkwcHg7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy9kZWNvci0wNS5wbmdcIik7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSAwO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCLiiaV3aWRlc2NyZWVuXCIpIHtcbiAgICAgICAgICAgIHdpZHRoOiAyNTYwcHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuY29udGFpbmVyIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgIH1cblxuICAgICZfX3RleHQge1xuICAgICAgICBtYXgtd2lkdGg6IDY3MHB4O1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICB9XG5cbiAgICBoMiB7XG4gICAgICAgIG1hcmdpbjogMCAwIDAuM2VtO1xuICAgIH1cbn1cbiIsIi5zZWN0aW9uLXBvc3RzIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMTtcbiAgICBwYWRkaW5nOiAyMHB4IDE1cHg7XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB6LWluZGV4OiAtMTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIGJvdHRvbTogLTI5MHB4O1xuICAgICAgICB3aWR0aDogMjAwMHB4O1xuICAgICAgICBoZWlnaHQ6IDc0OXB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvZGVjb3ItMDQucG5nXCIpO1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgMDtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwi4omlZGVza3RvcFwiKSB7XG4gICAgICAgICAgICBib3R0b206IC0xNjBweDtcbiAgICAgICAgICAgIHdpZHRoOiAyNTYwcHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5saXN0LXBvc3RzIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4uaXRlbS1wb3N0IHtcbiAgICBtYXJnaW4tYm90dG9tOiA4MnB4O1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiA1MCUgNTAlO1xuICAgIGdyaWQtdGVtcGxhdGUtcm93czogcmVwZWF0KDIsIDFmcikgYXV0bztcbiAgICBncmlkLXRlbXBsYXRlLWFyZWFzOiBcImZpcnN0IHNlY29uZFwiIFwiZmlyc3QgdGhpcmRcIiBcImNvbnRlbnQgY29udGVudFwiO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoXCLiiaVkZXNrdG9wXCIpIHtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAyMy41JSAyNyUgNDkuNSU7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtcm93czogcmVwZWF0KDIsIDFmcik7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtYXJlYXM6IFwiZmlyc3Qgc2Vjb25kIGNvbnRlbnRcIiBcImZpcnN0IHRoaXJkIGNvbnRlbnRcIjtcbiAgICB9XG5cbiAgICAmX192aXN1YWwge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICA+IGEge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA5cHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19jb250ZW50LWhvbGQge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBiYWNrZ3JvdW5kOiAkdmlvbGV0O1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwIDAgOXB4IDlweDtcbiAgICB9XG5cbiAgICAmX19jb250ZW50LXZpc3VhbCB7XG4gICAgICAgID4gYSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI8ZGVza3RvcFwiKSB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogOXB4IDlweCAwIDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX190ZXh0IHtcbiAgICAgICAgYmFja2dyb3VuZDogJHZpb2xldDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMCAwIDlweCA5cHg7XG4gICAgICAgIHBhZGRpbmc6IDIwcHg7XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCLiiaVkZXNrdG9wXCIpIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwi4omld2lkZXNjcmVlblwiKSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiAyMDZweDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwi4omleGxcIikge1xuICAgICAgICAgICAgcGFkZGluZzogMzBweDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmZpcnN0LWJveCB7XG4gICAgZ3JpZC1hcmVhOiBmaXJzdDtcbiAgICBwYWRkaW5nOiAwIDVweCA1cHggMDtcblxuICAgIEBpbmNsdWRlIG1lZGlhKFwi4omlZGVza3RvcFwiKSB7XG4gICAgICAgIHBhZGRpbmc6IDAgNXB4IDAgMDtcbiAgICB9XG59XG5cbi5zZWNvbmQtYm94IHtcbiAgICBncmlkLWFyZWE6IHNlY29uZDtcbiAgICBwYWRkaW5nOiAwIDAgNXB4IDVweDtcblxuICAgIEBpbmNsdWRlIG1lZGlhKFwi4omlZGVza3RvcFwiKSB7XG4gICAgICAgIHBhZGRpbmc6IDAgNXB4IDVweDtcbiAgICB9XG59XG5cbi50aGlyZC1ib3gge1xuICAgIGdyaWQtYXJlYTogdGhpcmQ7XG4gICAgcGFkZGluZzogNXB4IDAgNXB4IDVweDtcblxuICAgIEBpbmNsdWRlIG1lZGlhKFwi4omlZGVza3RvcFwiKSB7XG4gICAgICAgIHBhZGRpbmc6IDVweCA1cHggMDtcbiAgICB9XG59XG5cbi5pdGVtLXBvc3RfX2NvbnRlbnQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZ3JpZC1hcmVhOiBjb250ZW50O1xuICAgIHBhZGRpbmc6IDVweCAwIDA7XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIuKJpWRlc2t0b3BcIikge1xuICAgICAgICBwYWRkaW5nOiAwIDAgMCA1cHg7XG4gICAgfVxufVxuIiwiLnNlY3Rpb24tam9pbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmc6IDEyMHB4IDAgMDtcblxuICAgIEBpbmNsdWRlIG1lZGlhKFwi4omldGFibGV0XCIpIHtcbiAgICAgICAgcGFkZGluZzogMTIwcHggMCAzNHB4O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhKFwi4omld2lkZXNjcmVlblwiKSB7XG4gICAgICAgIHBhZGRpbmc6IDIxMHB4IDAgMzRweDtcbiAgICB9XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgICAgICB3aWR0aDogMjAwMHB4O1xuICAgICAgICBoZWlnaHQ6IDY5MHB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvZGVjb3ItMDUucG5nXCIpO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgMDtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwi4omld2lkZXNjcmVlblwiKSB7XG4gICAgICAgICAgICB3aWR0aDogMjU2MHB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmNvbnRhaW5lciB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgei1pbmRleDogMjtcbiAgICB9XG5cbiAgICAmX192aXN1YWwge1xuICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtNHB4O1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwi4omldGFibGV0XCIpIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgd2lkdGg6IDQ1NnB4O1xuICAgICAgICB9XG4gICAgICAgICYtLWxlZnQge1xuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCLiiaV0YWJsZXRcIikge1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTQwJSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJi0tcmlnaHQge1xuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCLiiaV0YWJsZXRcIikge1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg0NCUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uam9pbi1oZWFkaW5nIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbWFyZ2luOiAwIDAgMzNweDtcbn1cblxuLnJhdGluZyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGdhcDogMjBweDtcbiAgICBmb250LXNpemU6IDE2cHg7XG59XG5cbi5qb2luLWJveCB7XG4gICAgbWF4LXdpZHRoOiA0NThweDtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjM2MzNjUzO1xuICAgIGJhY2tncm91bmQ6IHJnYmEoJHZpb2xldCwgMC45KTtcbiAgICBib3JkZXItcmFkaXVzOiA5cHg7XG4gICAgcGFkZGluZzogMTVweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIuKJpXBob25lXCIpIHtcbiAgICAgICAgcGFkZGluZzogNDBweCA2NnB4O1xuICAgIH1cblxuICAgICZfX2hvbGQge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvZGVjb3ItMDYucG5nXCIpO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDA7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJSBhdXRvO1xuICAgIH1cblxuICAgICZfX3RleHQge1xuICAgICAgICBwYWRkaW5nOiAxNXB4IDMwcHg7XG4gICAgfVxuXG4gICAgLmxpc3QtY2hlY2sge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICB9XG5cbiAgICAmX19kZXNjcmlwdGlvbiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgbWF4LXdpZHRoOiAyMDBweDtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIHBhZGRpbmc6IDE3cHggMCA2cHg7XG4gICAgfVxuXG4gICAgbWFyayB7XG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgIGNvbG9yOiAkeWVsbG93LTE7XG4gICAgfVxuXG4gICAgLmJ0biB7XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPHBob25lXCIpIHtcbiAgICAgICAgICAgIG1pbi13aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtLWZvcm0ge1xuICAgICAgICBtYXgtd2lkdGg6IDU0MnB4O1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwi4omlcGhvbmVcIikge1xuICAgICAgICAgICAgcGFkZGluZzogNDVweCA1MHB4IDM1cHg7XG4gICAgICAgIH1cblxuICAgICAgICBoMyB7XG4gICAgICAgICAgICBtYXJnaW46IDAgMCAwLjZlbTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiBjYWxjKDMyIC8gMjQpO1xuXG4gICAgICAgICAgICBtYXJrIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogI2U2MjA3NztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnByaWNlLWJveCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBtYXJnaW46IDAgMCAxMHB4O1xuICAgIHBhZGRpbmc6IDE0cHggMTBweCA1cHg7XG4gICAgYWxpZ24taXRlbXM6IGJhc2VsaW5lO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGZvbnQtZmFtaWx5OiAkYmFzZS1mb250LTE7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzYyNTI3ZjtcbiAgICBib3JkZXItcmFkaXVzOiA5cHg7XG5cbiAgICAuaW5jIHtcbiAgICAgICAgZm9udC1zaXplOiA0OHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogNDhweDtcbiAgICB9XG5cbiAgICAubW9udGgge1xuICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiA0OHB4O1xuICAgICAgICBjb2xvcjogJHllbGxvdztcbiAgICB9XG59XG5cbi5wYXltZW50IHtcbiAgICBwYWRkaW5nOiAyMXB4IDAgMDtcblxuICAgICZfX3RpdGxlIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbjogMCAwIDE0cHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cbn1cblxuLmxpc3QtcGF5bWVudHMge1xuICAgIG1hcmdpbjogMCAwIDEwcHg7XG4gICAgcGFkZGluZzogMDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGdhcDogNnB4O1xuXG4gICAgaW1nIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgIH1cbn1cblxuLmxpc3QtcGFydG5lcnMge1xuICAgIG1hcmdpbjogMCAwIDlweDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgZ2FwOiA2cHg7XG5cbiAgICBpbWcge1xuICAgICAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgfVxufVxuXG4uZm9ybS1yb3cge1xuICAgIG1hcmdpbjogMCAwIDM4cHg7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcblxuICAgIEBpbmNsdWRlIG1lZGlhKFwi4omldGFibGV0XCIpIHtcbiAgICAgICAgbWF4LXdpZHRoOiA0NzBweDtcbiAgICB9XG59XG5cbi5jdXN0b20tcmFkaW8ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1pbi1oZWlnaHQ6IDcycHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBmb250LXNpemU6IDE2cHg7XG5cbiAgICArIC5jdXN0b20tcmFkaW8ge1xuICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgIH1cblxuICAgIGlucHV0IHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG5cbiAgICAgICAgJjpjaGVja2VkIHtcbiAgICAgICAgICAgICsgLmN1c3RvbS1yYWRpb19fY29udGVudCB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjYWIzMzc5O1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KFxuICAgICAgICAgICAgICAgICAgICB0byByaWdodCxcbiAgICAgICAgICAgICAgICAgICAgcmdiYSgjYzEzNzgyLCAxKSAxJSxcbiAgICAgICAgICAgICAgICAgICAgcmdiYSgjMzgyMTRhLCAxKSAxMDAlXG4gICAgICAgICAgICAgICAgKTtcblxuICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19jb250ZW50IHtcbiAgICAgICAgcGFkZGluZzogNXB4IDIwcHggNXB4IDYwcHg7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQ6IHJnYmEoIzMyMjc0NCwgMSk7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoIzMyMjc0NCwgMSk7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDlweDtcbiAgICAgICAgY29sb3I6ICM3NzZiOGE7XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCLiiaVwaG9uZVwiKSB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDc1cHg7XG4gICAgICAgIH1cblxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICAgICAgbGVmdDogMTlweDtcbiAgICAgICAgICAgIHdpZHRoOiAxNXB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAxNXB4O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgYm9yZGVyOiAycHggc29saWQgIzgyNjhhMztcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwi4omlcGhvbmVcIikge1xuICAgICAgICAgICAgICAgIGxlZnQ6IDMxcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIuc2VjdGlvbi1nYWxsZXJ5IHtcbiAgICBwYWRkaW5nOiAyMHB4IDAgMTVweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMTtcblxuICAgICY6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHotaW5kZXg6IC0xO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgYm90dG9tOiAtMjkwcHg7XG4gICAgICAgIHdpZHRoOiAyMDAwcHg7XG4gICAgICAgIGhlaWdodDogNzQ5cHg7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy9kZWNvci0wNC5wbmdcIik7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSAwO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCLiiaVkZXNrdG9wXCIpIHtcbiAgICAgICAgICAgIGJvdHRvbTogLTE2MHB4O1xuICAgICAgICAgICAgd2lkdGg6IDI1NjBweDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmxpc3QtZ2FsbGVyeSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcblxuICAgIEBpbmNsdWRlIG1lZGlhKFwi4omldGFibGV0XCIpIHtcbiAgICAgICAgbWFyZ2luOiAwIC0xMHB4O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhKFwi4omlZGVza3RvcFwiKSB7XG4gICAgICAgIG1hcmdpbjogMCAtMTVweDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIuKJpXdpZGVzY3JlZW5cIikge1xuICAgICAgICBtYXJnaW46IDAgLTIwcHg7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEoXCLiiaV4bFwiKSB7XG4gICAgICAgIG1hcmdpbjogMCAtMzBweDtcbiAgICB9XG5cbiAgICA+IGxpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNzBweDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIuKJpXRhYmxldFwiKSB7XG4gICAgICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICAgICAgcGFkZGluZzogMCAxMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCLiiaVkZXNrdG9wXCIpIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMTVweDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDkwcHg7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIuKJpXdpZGVzY3JlZW5cIikge1xuICAgICAgICAgICAgcGFkZGluZzogMCAyMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCLiiaV4bFwiKSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDMwcHg7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMjFweDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLml0ZW0tZ2FsbGVyeSB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBiYWNrZ3JvdW5kOiAkdmlvbGV0O1xuICAgIGJvcmRlci1yYWRpdXM6IDAgMCA5cHggOXB4O1xuXG4gICAgJl9fdmlzdWFsIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBwYWRkaW5nLXRvcDogNTYlO1xuICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgICAgICBvYmplY3QtcG9zaXRpb246IDUwJSA1MCU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19ib2R5IHtcbiAgICAgICAgYmFja2dyb3VuZDogJHZpb2xldDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMCAwIDlweCA5cHg7XG4gICAgICAgIHBhZGRpbmc6IDIwcHg7XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCLiiaVkZXNrdG9wXCIpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwi4omld2lkZXNjcmVlblwiKSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIuKJpXhsXCIpIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDMwcHg7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIuc2VjdGlvbi1iZW5lZml0cyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiBjYWxjKDEwMCUgLSAxcHgpO1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAgICAgd2lkdGg6IDE1NTJweDtcbiAgICAgICAgaGVpZ2h0OiA1NTZweDtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgMDtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1hZ2VzL2RlY29yLTAyLnBuZ1wiKTtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgfVxufVxuXG4ubGlzdC1iZW5lZml0cyB7XG4gICAgbWFyZ2luOiAwIC0zMnB4O1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAxO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoXCLiiaVwaG9uZVwiKSB7XG4gICAgICAgIG1hcmdpbjogMCAtMzdweDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIuKJpXRhYmxldFwiKSB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICB9XG5cbiAgICA+IGxpIHtcbiAgICAgICAgbWF4LXdpZHRoOiAyOTZweDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgJjpmaXJzdC1jaGlsZCxcbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIC5pdGVtLWJlbmVmaXN0IHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIjx0YWJsZXRcIikge1xuICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiAtMTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgIC5pdGVtLWJlbmVmaXN0X190aXRsZSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI8cGhvbmVcIikge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDIzcHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI8dGFibGV0XCIpIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAyNXB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAuaXRlbS1iZW5lZmlzdF9fdGl0bGUge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPHBob25lXCIpIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogOHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICY6bnRoLWNoaWxkKG9kZCkge1xuICAgICAgICAgICAgLml0ZW0tYmVuZWZpc3RfX2hvbGQge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICMyZjFiM2U7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5pdGVtLWJlbmVmaXN0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBtYXgtd2lkdGg6IDI5NnB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTE1cHg7XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIuKJpXBob25lXCIpIHtcbiAgICAgICAgaGVpZ2h0OiAxNjBweDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIuKJpXRhYmxldFwiKSB7XG4gICAgICAgIGhlaWdodDogMjAwcHg7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEoXCLiiaVkZXNrdG9wXCIpIHtcbiAgICAgICAgaGVpZ2h0OiAyMzBweDtcbiAgICB9XG5cbiAgICAmX19ob2xkIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHBhZGRpbmctdG9wOiAyMHB4O1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMzNweDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgdHJhbnNmb3JtOiBza2V3WCgtOWRlZyk7XG4gICAgICAgIGJhY2tncm91bmQ6ICMzODIxNGE7XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCLiiaV0YWJsZXRcIikge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDMzcHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19pY29uLXdyYXAge1xuICAgICAgICB0cmFuc2Zvcm06IHNrZXdYKDlkZWcpO1xuICAgICAgICBtYXJnaW46IDAgLTI1cHg7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIH1cblxuICAgICZfX2ljb24ge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICAgIGhlaWdodDogNDBweDtcbiAgICAgICAgcGFkZGluZzogOXB4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgIGJhY2tncm91bmQ6ICM0NzI0NTc7XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCLiiaVwaG9uZVwiKSB7XG4gICAgICAgICAgICB3aWR0aDogNTBweDtcbiAgICAgICAgICAgIGhlaWdodDogNTBweDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDE1cHg7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIuKJpXRhYmxldFwiKSB7XG4gICAgICAgICAgICB3aWR0aDogODBweDtcbiAgICAgICAgICAgIGhlaWdodDogODBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwi4omlZGVza3RvcFwiKSB7XG4gICAgICAgICAgICB3aWR0aDogMTA0cHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwNHB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fdGl0bGUge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGxlZnQ6IC01cHg7XG4gICAgICAgIHJpZ2h0OiAtNXB4O1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIGZvbnQtc2l6ZTogOXB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoXG4gICAgICAgICAgICB0byByaWdodCxcbiAgICAgICAgICAgIHJnYmEoI2JjMzY4MCwgMC45NSkgMTAlLFxuICAgICAgICAgICAgcmdiYSgjYmMzNjgwLCAwKSAxMDAlXG4gICAgICAgICk7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkYmFzZS1mb250LTE7XG4gICAgICAgIHBhZGRpbmc6IDEwcHggNXB4O1xuICAgICAgICB0cmFuc2Zvcm06IHNrZXdYKDlkZWcpO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwi4omlcGhvbmVcIikge1xuICAgICAgICAgICAgbGVmdDogLTEwcHg7XG4gICAgICAgICAgICByaWdodDogLTEwcHg7XG4gICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICBwYWRkaW5nOiAyMHB4IDVweDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwi4omldGFibGV0XCIpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwi4omlZGVza3RvcFwiKSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIuKJpXdpZGVzY3JlZW5cIikge1xuICAgICAgICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgYnIge1xuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCLiiaV0YWJsZXRcIikge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIuc2VjdGlvbi1hY3Rpb24ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nOiA1OHB4IDAgMDtcbn1cblxuLmFjdGlvbi1jb250ZW50IHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAmX190ZXh0IHtcbiAgICAgICAgbWF4LXdpZHRoOiA4MDBweDtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIHBhZGRpbmc6IDIuNmVtIDAgMS40ZW07XG4gICAgfVxuXG4gICAgJl9fYnV0dG9uLXdyYXAge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgZ2FwOiAyMHB4O1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwi4omldGFibGV0XCIpIHtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIuc2VjdGlvbi1pbmZvIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIG1pbi1oZWlnaHQ6IDgwdmg7XG4gICAgcGFkZGluZzogMzkwcHggMCA1MHB4O1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoXCLiiaV0YWJsZXRcIikge1xuICAgICAgICBwYWRkaW5nOiA0NjFweCAwIDUwcHg7XG4gICAgfVxuXG4gICAgJi0tY2hlY2sge1xuICAgICAgICAuaW5mby1ibG9jayB7XG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvc2hhZG93LTIucG5nXCIpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmX19ob2xkIHtcbiAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1hZ2VzL2ltZy1hcHAtMDIucG5nXCIpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgbWFyayB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRncmVlbjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRncmVlbjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmluZm8tYmxvY2sge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgNDIlKTtcbiAgICAgICAgd2lkdGg6IDYzMnB4O1xuICAgICAgICBoZWlnaHQ6IDM1N3B4O1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvc2hhZG93LTEucG5nXCIpO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSAwO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIH1cblxuICAgICZfX2hvbGQge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIG1heC13aWR0aDogNjQycHg7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgYmFja2dyb3VuZDogcmdiYSgjMjIxYTMzLCAwLjkpO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA5cHg7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICMzYzM2NTM7XG5cbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHotaW5kZXg6IC0xO1xuICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgdG9wOiAtMzMzcHg7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgICAgICAgICB3aWR0aDogMTQ0OXB4O1xuICAgICAgICAgICAgaGVpZ2h0OiA2MThweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy9iZy1hcHAucG5nXCIpO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgei1pbmRleDogLTE7XG4gICAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgICB0b3A6IC0yNzBweDtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAgICAgICAgIHdpZHRoOiA2MDBweDtcbiAgICAgICAgICAgIGhlaWdodDogNDE4cHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvaW1nLWFwcC0wMS5wbmdcIik7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDA7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwi4omldGFibGV0XCIpIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogNzU2cHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA1MjVweDtcbiAgICAgICAgICAgICAgICB0b3A6IC0zMzlweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAmX19iZyB7XG4gICAgICAgIHBhZGRpbmc6IDEwcHggMzBweCAxNHB4O1xuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKCMyMjFhMzMsIDAuOSk7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDlweDtcbiAgICB9XG5cbiAgICAmX19pY29uIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cblxuICAgICZfX2NvbnRlbnQge1xuICAgICAgICBwYWRkaW5nOiAzcHggMDtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIuKJpXRhYmxldFwiKSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAzcHggNDVweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGgxIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBmb250LXNpemU6IDI0cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICBmb250LWZhbWlseTogJGJhc2UtZm9udC0xO1xuICAgIH1cblxuICAgIG1hcmsge1xuICAgICAgICBjb2xvcjogJHJlZDtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICB9XG5cbiAgICAmX19mb290ZXIge1xuICAgICAgICBtYXJnaW4tdG9wOiAyM3B4O1xuICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIH1cblxuICAgIGEge1xuICAgICAgICBjb2xvcjogJHllbGxvdztcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG59XG4iXX0= */
