/*! 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;
}

/* Slider */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0;
}
.slick-list:focus {
  outline: none;
}
.slick-list.draggable {
  cursor: pointer;
  cursor: grab;
}
.slick-list.dragging {
  cursor: grabbing;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.slick-track:before, .slick-track:after {
  content: "";
  display: table;
}
.slick-track:after {
  clear: both;
}
.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none;
}
[dir=rtl] .slick-slide {
  float: right;
}
.slick-slide img {
  display: block;
}
.slick-slide.slick-loading img {
  display: none;
}
.slick-slide.dragging img {
  pointer-events: none;
}
.slick-initialized .slick-slide {
  display: block;
}
.slick-loading .slick-slide {
  visibility: hidden;
}
.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
  display: none;
}

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);
  }
}
html {
  box-sizing: border-box;
  -webkit-text-size-adjust: 100%;
}

*,
*:before,
*:after {
  box-sizing: inherit;
}

* {
  max-height: 1000000px;
}

:root {
  --primary-color: #003A5D;
  --secondary-color: #D7282F;
}

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: none;
}

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: #2D2D2D;
  background: #fff;
  font: 16px/1.7 "Libre Franklin", "Oswald", "Arial", "Helvetica Neue", "Helvetica", sans-serif;
  min-width: 320px;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  margin: 0;
}
@media (min-width: 768px) {
  body {
    font-size: 16px;
    line-height: 1.75;
  }
}
@media (min-width: 1440px) {
  body {
    font-size: 18px;
    line-height: 1.6;
  }
}

img {
  max-width: 100%;
  height: auto;
  vertical-align: top;
  display: inline-block;
}

.gm-style img {
  max-width: none;
}

iframe {
  max-width: 100%;
}

.resize-active * {
  transition: none !important;
}

.clearfix:after {
  content: "";
  display: block;
  clear: both;
}

.ellipsis {
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
}

.df-row {
  display: flex;
  flex-wrap: wrap;
  margin: 0 -20px;
}
@media (min-width: 360px) {
  .df-row .col-ph-1 {
    flex: 1 0 calc(8.3333333333% * 1);
    max-width: calc(8.3333333333% * 1);
  }
}
@media (min-width: 360px) {
  .df-row .col-ph-2 {
    flex: 1 0 calc(8.3333333333% * 2);
    max-width: calc(8.3333333333% * 2);
  }
}
@media (min-width: 360px) {
  .df-row .col-ph-3 {
    flex: 1 0 calc(8.3333333333% * 3);
    max-width: calc(8.3333333333% * 3);
  }
}
@media (min-width: 360px) {
  .df-row .col-ph-4 {
    flex: 1 0 calc(8.3333333333% * 4);
    max-width: calc(8.3333333333% * 4);
  }
}
@media (min-width: 360px) {
  .df-row .col-ph-5 {
    flex: 1 0 calc(8.3333333333% * 5);
    max-width: calc(8.3333333333% * 5);
  }
}
@media (min-width: 360px) {
  .df-row .col-ph-6 {
    flex: 1 0 calc(8.3333333333% * 6);
    max-width: calc(8.3333333333% * 6);
  }
}
@media (min-width: 360px) {
  .df-row .col-ph-7 {
    flex: 1 0 calc(8.3333333333% * 7);
    max-width: calc(8.3333333333% * 7);
  }
}
@media (min-width: 360px) {
  .df-row .col-ph-8 {
    flex: 1 0 calc(8.3333333333% * 8);
    max-width: calc(8.3333333333% * 8);
  }
}
@media (min-width: 360px) {
  .df-row .col-ph-9 {
    flex: 1 0 calc(8.3333333333% * 9);
    max-width: calc(8.3333333333% * 9);
  }
}
@media (min-width: 360px) {
  .df-row .col-ph-10 {
    flex: 1 0 calc(8.3333333333% * 10);
    max-width: calc(8.3333333333% * 10);
  }
}
@media (min-width: 360px) {
  .df-row .col-ph-11 {
    flex: 1 0 calc(8.3333333333% * 11);
    max-width: calc(8.3333333333% * 11);
  }
}
@media (min-width: 360px) {
  .df-row .col-ph-12 {
    flex: 1 0 calc(8.3333333333% * 12);
    max-width: calc(8.3333333333% * 12);
  }
}
@media (min-width: 360px) {
  .df-row .col-offset-ph-0 {
    margin-left: calc(8.3333333333% * 0);
  }
}
@media (min-width: 360px) {
  .df-row .col-offset-ph-1 {
    margin-left: calc(8.3333333333% * 1);
  }
}
@media (min-width: 360px) {
  .df-row .col-offset-ph-2 {
    margin-left: calc(8.3333333333% * 2);
  }
}
@media (min-width: 360px) {
  .df-row .col-offset-ph-3 {
    margin-left: calc(8.3333333333% * 3);
  }
}
@media (min-width: 360px) {
  .df-row .col-offset-ph-4 {
    margin-left: calc(8.3333333333% * 4);
  }
}
@media (min-width: 360px) {
  .df-row .col-offset-ph-5 {
    margin-left: calc(8.3333333333% * 5);
  }
}
@media (min-width: 360px) {
  .df-row .col-offset-ph-6 {
    margin-left: calc(8.3333333333% * 6);
  }
}
@media (min-width: 360px) {
  .df-row .col-offset-ph-7 {
    margin-left: calc(8.3333333333% * 7);
  }
}
@media (min-width: 360px) {
  .df-row .col-offset-ph-8 {
    margin-left: calc(8.3333333333% * 8);
  }
}
@media (min-width: 360px) {
  .df-row .col-offset-ph-9 {
    margin-left: calc(8.3333333333% * 9);
  }
}
@media (min-width: 360px) {
  .df-row .col-offset-ph-10 {
    margin-left: calc(8.3333333333% * 10);
  }
}
@media (min-width: 360px) {
  .df-row .col-offset-ph-11 {
    margin-left: calc(8.3333333333% * 11);
  }
}
@media (min-width: 768px) {
  .df-row .col-sm-1 {
    flex: 1 0 calc(8.3333333333% * 1);
    max-width: calc(8.3333333333% * 1);
  }
}
@media (min-width: 768px) {
  .df-row .col-sm-2 {
    flex: 1 0 calc(8.3333333333% * 2);
    max-width: calc(8.3333333333% * 2);
  }
}
@media (min-width: 768px) {
  .df-row .col-sm-3 {
    flex: 1 0 calc(8.3333333333% * 3);
    max-width: calc(8.3333333333% * 3);
  }
}
@media (min-width: 768px) {
  .df-row .col-sm-4 {
    flex: 1 0 calc(8.3333333333% * 4);
    max-width: calc(8.3333333333% * 4);
  }
}
@media (min-width: 768px) {
  .df-row .col-sm-5 {
    flex: 1 0 calc(8.3333333333% * 5);
    max-width: calc(8.3333333333% * 5);
  }
}
@media (min-width: 768px) {
  .df-row .col-sm-6 {
    flex: 1 0 calc(8.3333333333% * 6);
    max-width: calc(8.3333333333% * 6);
  }
}
@media (min-width: 768px) {
  .df-row .col-sm-7 {
    flex: 1 0 calc(8.3333333333% * 7);
    max-width: calc(8.3333333333% * 7);
  }
}
@media (min-width: 768px) {
  .df-row .col-sm-8 {
    flex: 1 0 calc(8.3333333333% * 8);
    max-width: calc(8.3333333333% * 8);
  }
}
@media (min-width: 768px) {
  .df-row .col-sm-9 {
    flex: 1 0 calc(8.3333333333% * 9);
    max-width: calc(8.3333333333% * 9);
  }
}
@media (min-width: 768px) {
  .df-row .col-sm-10 {
    flex: 1 0 calc(8.3333333333% * 10);
    max-width: calc(8.3333333333% * 10);
  }
}
@media (min-width: 768px) {
  .df-row .col-sm-11 {
    flex: 1 0 calc(8.3333333333% * 11);
    max-width: calc(8.3333333333% * 11);
  }
}
@media (min-width: 768px) {
  .df-row .col-sm-12 {
    flex: 1 0 calc(8.3333333333% * 12);
    max-width: calc(8.3333333333% * 12);
  }
}
@media (min-width: 768px) {
  .df-row .col-offset-sm-0 {
    margin-left: calc(8.3333333333% * 0);
  }
}
@media (min-width: 768px) {
  .df-row .col-offset-sm-1 {
    margin-left: calc(8.3333333333% * 1);
  }
}
@media (min-width: 768px) {
  .df-row .col-offset-sm-2 {
    margin-left: calc(8.3333333333% * 2);
  }
}
@media (min-width: 768px) {
  .df-row .col-offset-sm-3 {
    margin-left: calc(8.3333333333% * 3);
  }
}
@media (min-width: 768px) {
  .df-row .col-offset-sm-4 {
    margin-left: calc(8.3333333333% * 4);
  }
}
@media (min-width: 768px) {
  .df-row .col-offset-sm-5 {
    margin-left: calc(8.3333333333% * 5);
  }
}
@media (min-width: 768px) {
  .df-row .col-offset-sm-6 {
    margin-left: calc(8.3333333333% * 6);
  }
}
@media (min-width: 768px) {
  .df-row .col-offset-sm-7 {
    margin-left: calc(8.3333333333% * 7);
  }
}
@media (min-width: 768px) {
  .df-row .col-offset-sm-8 {
    margin-left: calc(8.3333333333% * 8);
  }
}
@media (min-width: 768px) {
  .df-row .col-offset-sm-9 {
    margin-left: calc(8.3333333333% * 9);
  }
}
@media (min-width: 768px) {
  .df-row .col-offset-sm-10 {
    margin-left: calc(8.3333333333% * 10);
  }
}
@media (min-width: 768px) {
  .df-row .col-offset-sm-11 {
    margin-left: calc(8.3333333333% * 11);
  }
}
@media (min-width: 1440px) {
  .df-row .col-md-1 {
    flex: 1 0 calc(8.3333333333% * 1);
    max-width: calc(8.3333333333% * 1);
  }
}
@media (min-width: 1440px) {
  .df-row .col-md-2 {
    flex: 1 0 calc(8.3333333333% * 2);
    max-width: calc(8.3333333333% * 2);
  }
}
@media (min-width: 1440px) {
  .df-row .col-md-3 {
    flex: 1 0 calc(8.3333333333% * 3);
    max-width: calc(8.3333333333% * 3);
  }
}
@media (min-width: 1440px) {
  .df-row .col-md-4 {
    flex: 1 0 calc(8.3333333333% * 4);
    max-width: calc(8.3333333333% * 4);
  }
}
@media (min-width: 1440px) {
  .df-row .col-md-5 {
    flex: 1 0 calc(8.3333333333% * 5);
    max-width: calc(8.3333333333% * 5);
  }
}
@media (min-width: 1440px) {
  .df-row .col-md-6 {
    flex: 1 0 calc(8.3333333333% * 6);
    max-width: calc(8.3333333333% * 6);
  }
}
@media (min-width: 1440px) {
  .df-row .col-md-7 {
    flex: 1 0 calc(8.3333333333% * 7);
    max-width: calc(8.3333333333% * 7);
  }
}
@media (min-width: 1440px) {
  .df-row .col-md-8 {
    flex: 1 0 calc(8.3333333333% * 8);
    max-width: calc(8.3333333333% * 8);
  }
}
@media (min-width: 1440px) {
  .df-row .col-md-9 {
    flex: 1 0 calc(8.3333333333% * 9);
    max-width: calc(8.3333333333% * 9);
  }
}
@media (min-width: 1440px) {
  .df-row .col-md-10 {
    flex: 1 0 calc(8.3333333333% * 10);
    max-width: calc(8.3333333333% * 10);
  }
}
@media (min-width: 1440px) {
  .df-row .col-md-11 {
    flex: 1 0 calc(8.3333333333% * 11);
    max-width: calc(8.3333333333% * 11);
  }
}
@media (min-width: 1440px) {
  .df-row .col-md-12 {
    flex: 1 0 calc(8.3333333333% * 12);
    max-width: calc(8.3333333333% * 12);
  }
}
@media (min-width: 1440px) {
  .df-row .col-offset-md-0 {
    margin-left: calc(8.3333333333% * 0);
  }
}
@media (min-width: 1440px) {
  .df-row .col-offset-md-1 {
    margin-left: calc(8.3333333333% * 1);
  }
}
@media (min-width: 1440px) {
  .df-row .col-offset-md-2 {
    margin-left: calc(8.3333333333% * 2);
  }
}
@media (min-width: 1440px) {
  .df-row .col-offset-md-3 {
    margin-left: calc(8.3333333333% * 3);
  }
}
@media (min-width: 1440px) {
  .df-row .col-offset-md-4 {
    margin-left: calc(8.3333333333% * 4);
  }
}
@media (min-width: 1440px) {
  .df-row .col-offset-md-5 {
    margin-left: calc(8.3333333333% * 5);
  }
}
@media (min-width: 1440px) {
  .df-row .col-offset-md-6 {
    margin-left: calc(8.3333333333% * 6);
  }
}
@media (min-width: 1440px) {
  .df-row .col-offset-md-7 {
    margin-left: calc(8.3333333333% * 7);
  }
}
@media (min-width: 1440px) {
  .df-row .col-offset-md-8 {
    margin-left: calc(8.3333333333% * 8);
  }
}
@media (min-width: 1440px) {
  .df-row .col-offset-md-9 {
    margin-left: calc(8.3333333333% * 9);
  }
}
@media (min-width: 1440px) {
  .df-row .col-offset-md-10 {
    margin-left: calc(8.3333333333% * 10);
  }
}
@media (min-width: 1440px) {
  .df-row .col-offset-md-11 {
    margin-left: calc(8.3333333333% * 11);
  }
}
.df-row [class*=col-] {
  padding: 0 20px;
}

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: 1440px) {
  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: 1440px) {
  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;
  }
}
h1,
.h1,
h2,
.h2,
h3,
.h3,
h4,
.h4,
h5,
.h5,
h6,
.h6,
.h {
  font-family: "Oswald", "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 {
  font-size: 1.875rem;
  line-height: 1.3333333333;
  font-weight: 500;
  text-transform: uppercase;
  color: #003A5D;
  letter-spacing: -0.025em;
}
@media (min-width: 768px) {
  h2 {
    font-size: 3rem;
  }
}
@media (min-width: 1440px) {
  h2 {
    font-size: 3.75rem;
  }
}

@media (min-width: 768px) {
  p {
    margin: 0 0 28px;
  }
}
@media (min-width: 1440px) {
  p {
    margin: 0 0 33px;
  }
}

a {
  color: #003A5D;
  text-decoration: none;
}
a:hover, a:focus {
  color: #000;
  text-decoration: none;
}

.buffer a {
  text-decoration: underline;
  color: #D7282F;
}

.buffer a:hover {
  text-decoration: underline;
  color: #003A5D;
}

a[href*="mailto:"] {
  word-wrap: break-word;
}

.heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 1rem;
}
@media (min-width: 768px) {
  .heading {
    margin-bottom: 1.5rem;
  }
}
@media (min-width: 1440px) {
  .heading {
    margin-bottom: 2.25rem;
  }
}
.heading h2 {
  margin: 0;
}
.heading .btn {
  display: none;
}
@media (min-width: 768px) {
  .heading .btn {
    display: inline-block;
  }
}

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 {
  min-width: 100px;
  padding: 0.625rem 0.8125rem;
}

input[type=text].lgInput,
input[type=email].lgInput {
  -webkit-appearance: none;
  -webkit-border-radius: 0;
  padding: 0.625rem 0.8125rem;
  font-size: 0.875rem;
  line-height: 18px;
  font-family: "Libre Franklin", "Oswald", "Arial", "Helvetica Neue", "Helvetica", sans-serif;
  box-sizing: border-box;
  border: 1px solid #fff;
  border-radius: 0;
  font-weight: 400;
}

@media (min-width: 768px) {
  input[type=text].lgInput,
  input[type=email].lgInput  {
    padding: 0.625rem 1.6875rem;
    font-size: 0.875rem;
  }
}

@media (min-width: 1440px) {
  input[type=text].lgInput,
  input[type=email].lgInput  {
    font-size: 1.125rem;
    padding: 0.625rem 3.0625rem;
  }
}

input[type=text].lgInput:not(textarea),
input[type=email].lgInput:not(textarea) {
  height: 4.0625rem;
}

@media (min-width: 768px) {
  input[type=text].lgInput:not(textarea),
  input[type=email].lgInput:not(textarea) {
    height: 5.4375rem;
  }
}

input[type=text].lgInput:focus,
input[type=email].lgInput:focus {
  outline: none;
  border-color: #000;
}

input[type=text].lgInput::-webkit-input-placeholder,
input[type=email].lgInput::-webkit-input-placeholder {
  color: #2D2D2D;
}

input[type=text].lgInput::-moz-placeholder,
input[type=email].lgInput::-moz-placeholder {
  opacity: 1;
  color: #2D2D2D;
}

input[type=text].lgInput:-moz-placeholder,
input[type=email].lgInput:-moz-placeholder {
  color: #2D2D2D;
}

input[type=text].lgInput:-ms-input-placeholder,
input[type=email].lgInput:-ms-input-placeholder {
  color: #2D2D2D;
}

input[type=text].lgInput.placeholder,
input[type=email].lgInput.placeholder {
  color: #2D2D2D;
}


input[type=search]::-webkit-search-cancel-button {
  -webkit-appearance: none;
}

textarea {
  resize: vertical;
  vertical-align: top;
  overflow: auto;
}

button,
button.btn,
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: 4.0625rem;
  padding: 1.125rem 2.75rem;
  font-size: 0.875rem;
  line-height: 1;
  color: #fff;
  background: #003A5D;
  font-weight: 700;
  border-width: 1px;
  border-style: solid;
  border-color: #000;
  border-radius: 0;
  cursor: pointer;
  transition: all 0.5s;
}
@media (min-width: 768px) {
  button,
  button.btn,
  input[type=button],
  input[type=reset],
  input[type=file],
  input[type=submit] {
    font-size: 1.125rem;
    height: 5.4375rem;
  }
}
button:hover, button:focus,
button.btn:hover,
button.btn:focus,
input[type=button]:hover,
input[type=button]:focus,
input[type=reset]:hover,
input[type=reset]:focus,
input[type=file]:hover,
input[type=file]:focus,
input[type=submit]:hover,
input[type=submit]:focus {
  background: rgba(0, 58, 93, 0.8);
  color: #fff;
}

.buffer button,
.buffer button.btn,
.buffer input[type=button],
.buffer input[type=reset],
.buffer input[type=file],
.buffer input[type=submit] {
  padding: .5rem;
  height: auto;
}


noscript {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  margin: 0;
  font-size: 14px;
  color: #f8f9fa;
  background: #003A5D;
  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;
}

.visually-hidden,
.hidden {
  position: absolute;
  left: -9999px;
  top: auto;
  width: 1px;
  height: 1px;
  overflow: hidden;
}

[id=header] {
  position: relative;
  background-color: #fff;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  top: 0;
  z-index: 200;
  /*transition: 0.4s all;*/
  padding: 1.25rem 0;
}
@media (min-width: 768px) {
  [id=header] {
    padding: 1.125rem 0rem 0.9375rem 0rem;
  }
}
@media (min-width: 1440px) {
  [id=header] {
    padding: 1.5625rem 0rem;
  }
}
[id=header].fixed-position {
  box-shadow: 0rem 0.1875rem 0.375rem rgba(0, 0, 0, 0.16);
  padding: 1.0625rem 1.3rem;
  position: fixed;
}
@media (min-width: 768px) {
  [id=header].fixed-position .logo {
    width: 14.125rem;
  }

  [id=header].fixed-position {
    padding: 1.0625rem 2.5rem;
  }
}
.nav-active [id=header] {
  padding: 0;
}

.logo {
  width: 10.875rem;
  transition: 0.4s all;
}
@media (min-width: 768px) {
  .logo {
    width: 17.6875rem;
  }
}
@media (min-width: 1440px) {
  .logo {
    width: 21.125rem;
  }
}
.nav-active .logo {
  display: none;
}
.logo img {
  width: 100%;
}

.nav-inner {
  margin-left: auto;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 1.25rem;
}
.nav-active .nav-inner svg path {
  fill: #fff;
}

.navbar-holder {
  display: flex;
  align-items: center;
}

.soc-list-holder {
  display: none;
  align-items: center;
  justify-content: flex-end;
  font-size: 0;
}
@media (min-width: 1440px) {
  .soc-list-holder {
    display: flex;
  }
}
@media (min-width: 1440px) {
  .soc-list-holder .search-opener {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 2.75rem;
    height: 2.75rem;
  }
}
.soc-list-holder .soc-list {
  padding-top: 0.125rem;
  padding-bottom: 0.125rem;
}

.search-opener {
  transition: 0.4s all;
}
.search-opener:hover {
  opacity: 0.5;
}

.soc-list {
  display: flex;
  align-items: center;
  list-style: none;
  gap: 0.3125rem;
  padding: 0;
  margin: 0;
  border-right: 1px solid #a2a9ad;
  padding-right: 1.0625rem;
  margin-right: 1.0625rem;
}
.soc-list a {
  display: flex;
  align-items: center;
  justify-content: center;
  transition: 0.4s all;
  min-width: 2.75rem;
  min-height: 2.75rem;
}
.soc-list a:hover, .soc-list a:focus {
  opacity: 0.5;
}


.nav-holder {
  opacity: 0;
  pointer-events: none;
  visibility: hidden;
  background-color: #003A5D;
  position: fixed;
  height: 100vh;
  width: 100vw;
  z-index: 12;
  padding-top: 100px;
  color: #fff;
  inset: 0;
}
.nav-holder .scroll-wrapper {
  height: calc(100svh - 100px);
  overflow-y: auto;
  overflow-x: hidden;
}
.nav-holder--inner {
  position: absolute;
  top: 0;
  right: 0;
  margin-left: auto;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 1.375rem;
  z-index: 10;
}
@media (min-width: 768px) {
  .nav-holder--inner {
    gap: 2.5rem;
  }
}
.nav-active .nav-holder {
  opacity: 1;
  pointer-events: all;
  visibility: visible;
}
.nav-holder .container {
  position: relative;
  height: calc(100svh - 100px);
}
.nav-holder .grid {
  grid-template-columns: 1fr;
  align-items: center;
  height: calc(100svh - 100px);
}
@media (min-width: 768px) {
  .nav-holder .grid {
    grid-template-columns: 204px 1fr;
  }
}
@media (min-width: 1440px) {
  .nav-holder .grid {
    grid-template-columns: 266px 1fr;
  }
}
.nav-holder .h1 {
  line-height: 1;
  font-size: 2.25rem;
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: -0.025em;
  margin-bottom: 1.5rem;
  margin-left: auto;
  margin-right: 26px;
}
@media (min-width: 768px) {
  .nav-holder .h1 {
    font-size: 3.75rem;
    margin-bottom: 2.1875rem;
  }
}
@media (min-width: 1440px) {
  .nav-holder .h1 {
    max-width: 580px;
    font-size: 5rem;
    margin-bottom: 1.375rem;
  }
}
@media (orientation: landscape) and (max-width: 1439px) {
  .nav-holder .h1 {
    font-size: 2.5rem;
  }
}
.nav-holder .btn-holder {
  display: flex;
  justify-content: flex-end;
  flex-direction: column;
  gap: 1.125rem;
  z-index: 3;
  max-width: 280px;
  padding-bottom: 1.25rem;
}
@media (min-width: 768px) {
  .nav-holder .btn-holder {
    position: absolute;
    bottom: 2.3125rem;
    right: 1.25rem;
    margin-top: auto;
    margin: auto 0 0 0;
    right: 0;
    gap: 1.25rem;
    max-width: none;
    grid-column: 1/4;
    padding-bottom: auto;
  }
}
@media (min-width: 1440px) {
  .nav-holder .btn-holder {
    right: 0.5625rem;
    gap: 2.8125rem;
    flex-direction: row;
  }
}
@media (orientation: landscape) and (max-width: 1439px) {
  .nav-holder .btn-holder {
    position: static;
    max-width: 18.75rem;
    margin-left: auto;
  }
}
@media (min-width: 768px) {
  .nav-holder .btn-holder--mobile {
    display: none;
  }
}
@media (max-width: 767px) {
  .nav-holder .btn-holder--desktop {
    display: none;
  }
}
.nav-holder .btn {
  font-family: "Oswald", "Arial", "Helvetica Neue", "Helvetica", sans-serif;
  text-transform: uppercase;
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  gap: 0.625rem;
  width: 100%;
  border: 0;
  line-height: 1;
  padding: 0.75rem 1.125rem 0.75rem;
  font-weight: 400;
}
@media (min-width: 768px) {
  .nav-holder .btn {
    padding: 0.9375rem 1.125rem 0.9375rem;
    min-width: 20rem;
  }
}
.nav-holder .text-holder {
  display: none;
}
@media (min-width: 768px) {
  .nav-holder .text-holder {
    display: block;
    margin-right: -1.875rem;
    padding-left: 2.4375rem;
  }
}
@media (min-width: 1440px) {
  .nav-holder .text-holder {
    margin-right: 0;
    padding-left: 0;
  }
}
.nav-holder .soc-list-holder {
  display: flex;
}
.nav-holder .soc-list-holder .search-opener {
  width: 1.5rem;
}

#navbar {
  position: relative;
  padding: 1.25rem 0;
  margin-bottom: 2.1875rem;
  z-index: 10;
}
@media (min-width: 768px) {
  #navbar {
    margin-left: -1.6875rem;
    margin-bottom: 0;
  }
}
@media (min-width: 1440px) {
  #navbar {
    margin: 0;
  }
}
#navbar > ul {
  position: relative;
  list-style: none;
  margin: 0;
  padding: 0;
  color: #fff;
}
#navbar > ul > li.active-link {
  margin-bottom: 1.25rem;
  background-color: #276582;
}
#navbar > ul > li > a {
  display: block;
  font-family: "Oswald", "Arial", "Helvetica Neue", "Helvetica", sans-serif;
  color: inherit;
  text-transform: uppercase;
  padding-left: 1.25rem;
  font-size: 2.25rem;
  font-weight: 500;
  letter-spacing: -0.025em;
  line-height: 1.4;
  transition: 0.4s all;
}
@media (min-width: 768px) {
  #navbar > ul > li > a {
    padding: 0.0625rem 0rem 0.125rem 1.25rem;
  }
}
@media (min-width: 1440px) {
  #navbar > ul > li > a {
    font-size: 2.5rem;
    padding: 0rem 0rem 0rem 1.25rem;
  }
}
@media (orientation: landscape) and (max-width: 1439px) {
  #navbar > ul > li > a {
    font-size: 1.875rem;
  }
}
@media (min-width: 768px) {
  #navbar > ul > li > a:hover {
    background-color: rgba(255, 255, 255, 0.21);
  }
}
#navbar > ul > li.sub-nav-active > a, #navbar > ul > li:hover > a {
  background-color: rgba(255, 255, 255, 0.21);
}
#navbar > ul > li.sub-nav-active > .sub-nav, #navbar > ul > li:hover > .sub-nav {
  opacity: 1;
  pointer-events: all;
}
#navbar > ul > li .sub-nav {
  top: 0;
  left: 100%;
  padding-left: 20px;
  line-height: 2.3;
  z-index: 1;
}
@media (min-width: 768px) {
  #navbar > ul > li .sub-nav {
    font-size: 1.25rem;
    position: absolute;
    opacity: 0;
    padding-left: 0;
    width: max-content;
    pointer-events: none;
    background-color: #36647f;
    transition: 0.4s all;
  }
}
@media (min-width: 768px) {
  #navbar > ul > li .sub-nav .bg-decor {
    position: fixed;
    content: "";
    width: 100vw;
    height: 100vh;
    right: 0;
    top: 0;
    bottom: 0;
    bottom: 0;
    background: inherit;
    z-index: -1;
  }
}
#navbar > ul > li .sub-nav:after {
  top: 0;
}
@media (max-width: 767px) {
  #navbar > ul > li .sub-nav:after {
    left: -1.25rem;
  }
}
#navbar > ul > li .sub-nav > ul {
  list-style: none;
  margin: 0;
  padding: 0;
  font-size: 1rem;
  max-height: 600px;
  padding-top: 1.25rem;
  padding-bottom: 1.25rem;
  overflow-y: auto;
}
@media (min-width: 768px) {
  #navbar > ul > li .sub-nav > ul {
    width: 90vw;
  }
}
@media (min-width: 768px) {
  #navbar > ul > li .sub-nav > ul > li {
    padding: 0 0 0 1.8125rem;
  }
}
@media (min-width: 1440px) {
  #navbar > ul > li .sub-nav > ul > li {
    padding: 0 0 0 2.9375rem;
  }
}
#navbar > ul > li .sub-nav > ul > li.sub-nav-active a {
  background-color: #66899e;
}
#navbar > ul > li .sub-nav > ul a {
  display: inline-block;
  width: 26.25rem;
  color: #fff;
  line-height: 1.4;
  padding: 0.625rem 1.25rem;
}
#navbar > ul > li .sub-nav > ul a:hover {
  background-color: #66899e;
}

body.nav-active {
  overflow: hidden;
}

[id=wrapper] {
  display: flex;
  flex-direction: column;
  width: 100%;
  min-height: 100vh;
  padding: 1.25rem;
}
@media (min-width: 768px) {
  [id=wrapper] {
    padding: 1.875rem;
  }
}
@media (min-width: 1440px) {
  [id=wrapper] {
    padding: 0 2.5rem 2.5rem;
  }
  [id="wrapper"].popup-active {
    padding: 2.5rem;
  }
}

[id=main] {
  flex-grow: 1;
}

.container {
  width: 100%;
  margin: 0 auto;
  padding: 0 1.25rem;
}
@media (min-width: 768px) {
  .container {
    padding: 0 1.875rem;
    max-width: 710px;
  }
}
@media (min-width: 1440px) {
  .container {
    padding: 0 6.125rem;
    max-width: 1356px;
  }
}

.accordion {
  list-style: none;
}
.accordion > li {
  margin-block: 10px;
}
.accordion > li > a {
  display: block;
  text-align: left;
}
.accordion .js-acc-hidden {
  visibility: hidden;
}

.burger-holder {
  position: relative;
}
.burger-holder .burger-drop {
  position: absolute;
  top: 100%;
  left: 0;
  width: 300px;
  background: #fff;
  border: 1px solid #000;
  padding: 20px;
  visibility: hidden;
}
.burger-holder .burger-drop button {
  transition: none;
}
.burger-holder.burger-active .burger-drop {
  visibility: visible;
}

.popup-holder {
  position: relative;
}
.popup-holder .popup {
  position: absolute;
  top: 100%;
  left: 0;
  width: 300px;
  background: #fff;
  border: 1px solid #000;
  padding: 20px;
  visibility: hidden;
}
.popup-holder .popup button {
  transition: none;
}
.popup-holder.popup-active .popup {
  visibility: visible;
}

.open-close {
  position: relative;
}
.open-close .slide {
  width: 300px;
  background: #fff;
  border: 1px solid #000;
  padding: 20px;
}
.open-close .js-slide-hidden {
  visibility: hidden;
}

.line-box {
  width: 600px;
}
.line-box .mask {
  overflow: hidden;
}
.line-box .line {
  width: 99999px;
  display: flex;
}
.line-box .line > * {
  flex: 0 0 auto;
}

/*!
 * tabbyjs v12.0.3
 * Lightweight, accessible vanilla JS toggle tabs.
 * (c) 2019 Chris Ferdinandi
 * MIT License
 * http://github.com/cferdinandi/tabby
 */
/**
 * The tablist
 */
[role=tablist] {
  border-bottom: 1px solid lightgray;
  list-style: none;
  margin: 0;
  padding: 0;
}

[role=tablist] * {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

/**
 * The tablist item
 */
@media (min-width: 30em) {
  [role=tablist] li {
    display: inline-block;
  }
}
/**
 * The tabs
 */
[role=tab] {
  border: 1px solid transparent;
  border-top-color: lightgray;
  display: block;
  padding: 0.5em 1em;
  text-decoration: none;
  /**
     * Active tab styling
     */
  /**
     * Tabs on hover
     */
}

@media (min-width: 30em) {
  [role=tab] {
    border-top-color: transparent;
    border-top-left-radius: 0.5em;
    border-top-right-radius: 0.5em;
    display: inline-block;
    margin-bottom: -1px;
  }
}
[role=tab][aria-selected=true] {
  background-color: lightgray;
}

@media (min-width: 30em) {
  [role=tab][aria-selected=true] {
    background-color: transparent;
    border: 1px solid lightgray;
    border-bottom-color: #ffffff;
  }
}
[role=tab]:hover:not([aria-selected=true]) {
  background-color: #f7f7f7;
}

@media (min-width: 30em) {
  [role=tab]:hover:not([aria-selected=true]) {
    border: 1px solid lightgray;
  }
}
/**
 * [hidden] fallback for IE10 and lower
 */
[hidden] {
  display: none;
}

.grid {
  display: grid;
}

.animated-block {
  opacity: 0;
  transform: translateY(100px);
  transition: ease-in-out 0.5s all 0.1s;
}

.in-viewport .animated-block {
  opacity: 1;
  transform: translate(0);
}

sub, sup {
  font-size: 67%;
}

.banner-area {
  min-height: 400px;
  position: relative;
}

.banner-title {
  position: absolute;
  bottom: 0;
  z-index: 1;
}

.section-heading-img {
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-size: cover;
  min-height: 400px;
  position: relative;
  overflow: hidden;
}

.section-heading-img:after {
    content: "";
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    position: absolute;
    background: linear-gradient(90deg, rgba(0, 0, 0, 0.65) 50%, transparent);
}

.banner-area .container,
.main-content .container {
  padding-left: 3rem;
  padding-right: 3rem;
}
@media (max-width: 767px) {
  .main-content .container {
    padding-left: 0.5rem;
    padding-right: 0.5rem;
  }
}
.banner-area h1 {
  color: #ffffff;
  text-transform: none;
  font-weight: 600;
  font-size: 2rem;
  line-height: 2.75rem;
  margin: 0 0 2.5rem;
}

@media (min-width: 768px) {
  .banner-area h1 {
    font-size: 3.5rem;
    line-height: 3.75rem;
  }
}

.banner-title::after {
    content: "";
    background-color: #D7282F;
    display: block;
    margin: 1rem 0 0;
    width: 6.125rem;
    height: .55rem;
}

.main-content {
  padding: 2rem 0;
}

h2.newsie-titler {
  font-family: "Libre Franklin", "Oswald", "Arial", "Helvetica Neue", "Helvetica", sans-serif;
  font-weight: bold;
  font-size: 2.2rem;
  text-transform: none;
}


[id=footer] {
  background: #003A5D;
  color: #fff;
}
[id=footer] h2 {
  text-transform: uppercase;
  line-height: 1.1;
  font-weight: 500;
  color: #fff;
  margin-bottom: 2.5rem;
  text-align: center;
}
@media (min-width: 768px) {
  [id=footer] h2 {
    margin-bottom: 1.25rem;
    text-align: left;
    font-size: 3.75rem;
    margin-bottom: 2.25rem;
  }
}
@media (min-width: 1440px) {
  [id=footer] h2 {
    font-size: 3.75rem;
  }
}
[id=footer] a {
  color: inherit;
}
[id=footer] .location-tabs {
  position: relative;
  padding: 3.4375rem 0rem 1.875rem 0rem;
  z-index: 1;
}
@media (min-width: 768px) {
  [id=footer] .location-tabs {
    display: grid;
    grid-template-columns: 1fr;
    padding: 5rem 0rem 4.0625rem 0rem;
  }
}
@media (min-width: 1440px) {
  [id=footer] .location-tabs {
    padding: 5.875rem 0rem 6.875rem 0rem;
    grid-template-columns: 1fr 408px;
  }
}
[id=footer] .tab-content {
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  gap: 1.375rem;
  font-size: 1;
  line-height: 1.55555;
}
@media (min-width: 768px) {
  [id=footer] .tab-content {
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(4, auto);
    gap: 2.25rem 5.125rem;
    max-width: 580px;
    font-size: 1.125rem;
  }
}
@media (min-width: 1440px) {
  [id=footer] .tab-content {
    grid-template-columns: repeat(3, 1fr);
    gap: 47px 25px;
    max-width: none;
  }
}
[id=footer] .tab-content .contact-box {
  text-align: center;
  height: max-content;
}
@media (min-width: 768px) {
  [id=footer] .tab-content .contact-box {
    text-align: left;
    max-width: 230px;
  }
}
@media (min-width: 1440px) {
  [id=footer] .tab-content .contact-box {
    max-width: none;
  }
}
[id=footer] .tab-content .contact-box.active h6,
[id=footer] .tab-content .contact-box.active .h6 {
  color: #D7282F;
}
@media (min-width: 768px) and (max-width: 1439px) {
  [id=footer] .tab-content .contact-box:nth-child(4) {
    grid-row: 4/5;
  }
}
@media (min-width: 768px) and (max-width: 1439px) {
  [id=footer] .tab-content .contact-box:nth-child(1) {
    grid-column: 2/3;
    grid-row: 1/2;
  }
}
@media (min-width: 768px) and (max-width: 1439px) {
  [id=footer] .tab-content .contact-box:nth-child(2) {
    grid-column: 1/2;
    grid-row: 1/2;
  }
}
@media (min-width: 768px) and (max-width: 1439px) {
  [id=footer] .tab-content .contact-box:nth-child(5) {
    grid-row: 3/4;
  }
}
[id=footer] .tab-content h6,
[id=footer] .tab-content .h6 {
  text-transform: uppercase;
  font-weight: 500;
  font-size: inherit;
  margin: 0;
}
[id=footer] .tab-content address {
  font-family: "Libre Franklin", "Oswald", "Arial", "Helvetica Neue", "Helvetica", sans-serif;
  font-style: normal;
  margin: 0;
}
[id=footer] .tab-content p {
  font-family: "Libre Franklin", "Oswald", "Arial", "Helvetica Neue", "Helvetica", sans-serif;
  margin-bottom: 0;
}
[id=footer] .tab-content a {
  transition: 0.4s all;
}
[id=footer] .tab-content a:hover {
  color: #D7282F;
}
[id=footer] .tabset {
  position: relative;
  width: 16.875rem;
  padding-top: 0.8125rem;
  margin-left: auto;
  margin-right: auto;
  font-family: "Libre Franklin", "Oswald", "Arial", "Helvetica Neue", "Helvetica", sans-serif;
  font-size: 0;
  z-index: 1;
}
@media (min-width: 768px) {
  [id=footer] .tabset {
    position: absolute;
    width: 25.8125rem;
    right: 0%;
    top: 34%;
  }
}
@media (min-width: 1440px) {
  [id=footer] .tabset {
    position: relative;
    width: 27.8125rem;
    padding-top: 0;
    top: -0.625rem;
    right: 2.375rem;
  }
}
[id=footer] .tabset img {
  min-width: 16.875rem;
}
@media (min-width: 1440px) {
  [id=footer] .tabset img {
    position: absolute;
    right: 0;
    top: 0;
    width: 27.8125rem;
    z-index: -1;
  }
}
[id=footer] .tabset a {
  position: absolute;
  color: transparent;
  transition: 0.4s all;
  font-size: 0;
  font-weight: 600;
}
[id=footer] .tabset a span {
  position: relative;
  font-size: 0.875rem;
  left: 1.125rem;
  top: 5px;
}
@media (min-width: 768px) {
  [id=footer] .tabset a span {
    position: static;
    font-size: 1.125rem;
  }
}
[id=footer] .tabset a svg {
  position: absolute;
  left: 0;
  top: 0;
  width: 0.875rem;
}
@media (min-width: 768px) {
  [id=footer] .tabset a svg {
    top: 102%;
    width: 1.375rem;
  }
}
[id=footer] .tabset a.active {
  color: #fff;
}
[id=footer] .tabset a.active .bg-white-path {
  fill: #fff;
}
[id=footer] .tabset a:first-child {
  top: 73%;
  left: 17%;
  z-index: 2;
}
@media (min-width: 1440px) {
  [id=footer] .tabset a:first-child {
    top: 70%;
    left: 16%;
  }
}
[id=footer] .tabset a:nth-child(2) {
  top: 44%;
  left: 57%;
}
@media (min-width: 1440px) {
  [id=footer] .tabset a:nth-child(2) {
    top: 43%;
    left: 56%;
  }
}
[id=footer] .tabset a:nth-child(3) {
  left: 56%;
  top: 20%;
}
@media (min-width: 1440px) {
  [id=footer] .tabset a:nth-child(3) {
    left: 58%;
    top: 15%;
  }
}
[id=footer] .tabset a:nth-child(5) {
  top: 15%;
  left: 57%;
}
[id=footer] .tabset a:last-child {
  top: 60%;
  left: 34%;
}
@media (min-width: 1440px) {
  [id=footer] .tabset a:last-child {
    top: 59%;
    left: 34%;
  }
}

.footer-bottom .inner {
  position: relative;
  background-color: #fff;
  display: flex;
  align-items: center;
  z-index: 1;
}
@media (max-width: 767px) {
  .footer-bottom .inner {
    padding: 0.625rem 0rem 0rem 0rem;
  }
}
.footer-bottom .footer-nav-holder {
  position: relative;
  width: 100%;
}
@media (min-width: 768px) {
  .footer-bottom .footer-nav-holder {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex: 1;
    padding: 0rem 1.25rem 0rem 0.9375rem;
    width: auto;
  }
}
@media (min-width: 1440px) {
  .footer-bottom .footer-nav-holder {
    padding: 0rem 2.25rem 0rem 2.5rem;
    margin: 0;
  }
}
.footer-bottom .footer-nav {
  font-family: "Montserrat", "Oswald", "Arial", "Helvetica Neue", "Helvetica", sans-serif;
}
.footer-bottom .footer-nav ul {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  font-size: 0.875rem;
  line-height: 1.4285714286;
  color: #003A5D;
  font-weight: 700;
}
@media (max-width: 767px) {
  .footer-bottom .footer-nav ul {
    justify-content: center;
    font-size: 0.8125rem;
  }
}
.footer-bottom .footer-nav ul li + li:before {
  content: "|";
  padding: 0rem 0.75rem;
}
@media (max-width: 767px) {
  .footer-bottom .footer-nav ul li + li:before {
    padding: 0rem 0.6875rem;
  }
}
.footer-bottom .footer-nav ul a {
  transition: 0.4s all;
}
.footer-bottom .footer-nav ul a:hover {
  color: #D7282F;
}
.footer-bottom .soc-list {
  padding: 0;
  border: 0;
  margin: 0;
  font-size: 0;
}
@media (max-width: 767px) {
  .footer-bottom .soc-list {
    justify-content: center;
    padding-top: 0.9375rem;
  }
}
.footer-bottom .soc-list a:hover path {
  fill: #D7282F;
}
.footer-bottom .soc-list svg {
  max-width: 25px;
}
.footer-bottom .soc-list svg path {
  transition: 0.4s all;
}
.footer-bottom .back-to-top {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.5rem;
  height: 2.5rem;
  background-color: #D7282F;
  font-size: 0;
  position: absolute;
  left: 100%;
  bottom: 0;
  transition: 0.4s all;
}
@media (min-width: 768px) {
  .footer-bottom .back-to-top {
    position: static;
    width: 4.1875rem;
    height: 4.1875rem;
  }
}
.footer-bottom .back-to-top:hover {
  opacity: 85%;
}
.footer-bottom .back-to-top svg {
  display: block;
  transform: rotate(-90deg);
}
@media (max-width: 767px) {
  .footer-bottom .back-to-top svg {
    width: 11.67px;
  }
}

.btn {
  display: inline-block;
  padding: 0.875rem 2.0625rem 0.875rem 2.0625rem;
  font-size: 0.875rem;
  font-family: "Libre Franklin", "Oswald", "Arial", "Helvetica Neue", "Helvetica", sans-serif;
  text-align: center;
  line-height: 1;
  vertical-align: top;
  transition: all 0.5s;
  font-weight: 800;
  border-style: solid;
  border-color: transparent;
  border-width: 1px;
  border-radius: 0;
}
@media (min-width: 768px) {
  .btn {
    padding: 1.125rem 2.75rem;
    font-size: 1rem;
  }
}
.btn-default {
  color: #fff;
  background: #000;
  border-color: #000;
}
.btn-default:hover {
  color: #000;
  background: #fff;
  border-color: #000;
}
.btn-primary {
  color: #fff;
  background: #003A5D;
  border-color: #003A5D;
}
.btn-primary:hover {
  color: #fff;
  background: rgba(0, 58, 93, 0.8);
  border-color: rgba(0, 58, 93, 0.8);
}
.btn-primary-outline {
  color: #003A5D;
  background: transparent;
  border-color: #003A5D;
}
.btn-primary-outline:hover {
  color: #fff;
  background: #003A5D;
  border-color: rgba(0, 58, 93, 0.8);
}
.btn-danger {
  color: #fff;
  background: #D7282F;
  border-color: #D7282F;
}
.btn-danger:hover {
  color: #fff;
  background: rgba(215, 40, 47, 0.8);
  border-color: rgba(215, 40, 47, 0.8);
}
.btn-light {
  color: #fff;
  background: rgba(255, 255, 255, 0.4);
  border-color: rgba(255, 255, 255, 0.4);
}
.btn-light svg path {
  transition: 0.4s all;
}
.btn-light:hover {
  color: #D7282F;
  background: #fff;
  border-color: #fff;
}
.btn-light:hover svg path {
  fill: #D7282F;
}
.btn-light-outline {
  color: #fff;
  background: transparent;
  border-color: #fff;
}
.btn-light-outline:hover {
  color: #D7282F;
  background: #fff;
  border-color: #fff;
}
.btn-secondary {
  color: #fff;
  background: #6c757d;
  border-color: #6c757d;
}
.btn-secondary:hover {
  color: #fff;
  background: rgba(108, 117, 125, 0.1);
  border-color: #6c757d;
}
.btn-sm {
  padding: 5px 10px;
  font-size: 12px;
  line-height: 14px;
  border-radius: 0;
}
.btn-lg {
  padding: 20px 40px;
  font-size: 18px;
  line-height: 20px;
  border-radius: 0;
}

.btn-group {
  margin: 0 -0.3125rem -0.625rem;
  display: flex;
  flex-wrap: wrap;
}
.btn-group .btn {
  margin: 0 0.3125rem 0.625rem;
}

.alert-holder {
  overflow: hidden;
}

.alert-bar {
  height: 0;
  overflow: hidden;
  transition: 0.4s all;
  margin: -1.25rem -1.25rem 0 -1.25rem;
}
@media (min-width: 768px) {
  .alert-bar {
    margin: -1.875rem -1.875rem 0 -1.875rem;
  }
}
@media (min-width: 1440px) {
  .alert-bar {
    margin: -2.5rem -2.5rem 0 -2.5rem;
  }
}
.alert-bar.popup-active {
  transform: translateY(0);
  position: relative;
  z-index: 100;
  height: 110px;
}
@media (min-width: 576px) {
  .alert-bar.popup-active {
    height: 93px;
  }
}
@media (min-width: 1440px) {
  .alert-bar.popup-active {
    height: 60px;
  }
}
.alert-bar.popup-active .inner {
  transform: none;
}
.alert-bar .inner {
  width: 100%;
  transform: translateY(-100%);
  display: flex !important;
  align-items: center;
  justify-content: space-between;
  transition: max-height 0.3s ease-in-out;
  background: #003A5D;
  color: #fff;
  position: relative;
  padding: 0.625rem 1.25rem;
  font-size: 1rem;
  line-height: 1.3;
  font-weight: 600;
  top: 0;
  transition: 0.4s all;
}
@media (min-width: 768px) {
  .alert-bar .inner {
    padding: 0.625rem 3.75rem 0.625rem 4.625rem;
  }
}
.alert-bar .alert-close {
  background: transparent;
  border: 0;
  width: 0.875rem;
  height: 0.875rem;
  color: #003A5D;
  cursor: pointer;
  padding: 0;
}
@media (min-width: 768px) {
  .alert-bar .alert-close {
    right: 1.125rem;
    top: 1.375rem;
  }
}
@media (min-width: 1440px) {
  .alert-bar .alert-close {
    top: 2.1875rem;
    right: 1.5625rem;
    width: 2.75rem;
    height: 2.75rem;
  }
}
.alert-bar .alert-close svg {
  width: 0.875rem;
  height: 0.875rem;
}
.alert-bar .alert-close:hover {
  opacity: 0.8;
}
.alert-bar .text {
  text-align: center;
  padding: 0.3125rem 0.625rem 0.3125rem;
}
@media (min-width: 768px) {
  .alert-bar .text {
    padding: 0.9375rem 0.625rem 1.125rem;
    text-align: left;
  }
}
@media (min-width: 1440px) {
  .alert-bar .text {
    padding: 0;
  }
}
.alert-bar .text p {
  margin: 0;
  font-size: 0.75rem;
  line-height: 1.33;
}
@media (min-width: 768px) {
  .alert-bar .text p {
    max-width: 300px;
    font-size: 0.8125rem;
  }
}
@media (min-width: 1440px) {
  .alert-bar .text p {
    max-width: none;
    font-size: 1.0625rem;
  }
}
.alert-bar .text p a {
  color: #fff;
  text-decoration: underline;
}
.alert-bar .text p a:hover {
  color: #D7282F;
  text-decoration: none;
}
@media (min-width: 768px) {
  .alert-bar .text-wrap {
    display: flex;
    align-items: center;
    width: 100%;
    justify-content: center;
    column-gap: 1.375rem;
  }
}
.alert-bar .icon-holder {
  min-width: 1.25rem;
  height: 1.25rem;
  animation: pulse 1.5s infinite;
  border-radius: 50%;
}
@media (min-width: 768px) {
  .alert-bar .icon-holder {
    left: 1.5rem;
    min-width: 1.4375rem;
    height: 1.4375rem;
  }
}
@media (min-width: 1440px) {
  .alert-bar .icon-holder {
    min-width: 1.75rem;
    height: 1.75rem;
  }
}
.alert-bar .icon-holder .svg-icon {
  border-radius: 50%;
  width: 100%;
  height: 100%;
}
.alert-bar .icon-holder .svg-icon path {
  fill: #fff;
}
.alert-bar .btn {
  font-size: 0.875rem;
  padding: 0.75rem 1.25rem;
}
@media (max-width: 767px) {
  .alert-bar .btn {
    margin-top: 10px;
    font-size: 12px;
  }
}

.alert-bar-close .alert-bar {
  max-height: 0;
  transition: max-height 0.3s ease-in-out;
}

@keyframes pulse {
  0% {
    box-shadow: 0 0 0 0 white;
  }
  70% {
    box-shadow: 0 0 0 10px rgba(255, 255, 255, 0);
  }
  100% {
    box-shadow: 0 0 0 50px rgba(255, 255, 255, 0);
  }
}
.subscribe-active {
  overflow: hidden;
}

.subscribe-block {
  position: fixed;
  width: 100vw;
  /*height: 100vh;*/
  z-index: 30000;
  opacity: 0;
  bottom: 0;
  pointer-events: none;
  transition: 1s opacity;
}
.subscribe-active .subscribe-block {
  opacity: 1;
  pointer-events: all;
}
.subscribe-active .subscribe-block .grid-holder {
  animation-name: move;
  animation-duration: 2.5s;
  animation-iteration-count: 1;
  animation-fill-mode: forwards;
}
.subscribe-block:after {
  content: "";
  position: fixed;
  width: 100vw;
  height: 100vh;
  left: 0;
  right: 0;
  top: 0;
  background-color: rgba(0, 57, 92, 0.9);
  z-index: 10000;
  pointer-events: none;
}
.subscribe-block .inner {
  position: absolute;
  inset: 0;
  z-index: 20000;
}
.subscribe-block .card-holder {
  display: grid;
  grid-template-columns: repeat(1, 203px);
  position: absolute;
  bottom: 0;
  right: 20px;
  z-index: 6;
}
@media (min-width: 768px) {
  .subscribe-block .card-holder {
    grid-template-columns: repeat(1, 316px);
  }
}
@media (min-width: 1440px) {
  .subscribe-block .card-holder {
    grid-template-columns: repeat(1, 372px);
  }
}
.subscribe-block .card-icon-copy {
  background-color: #fff;
  text-align: center;
  padding: 1.5625rem 2.5rem 1.25rem;
  color: #003A5D;
}
@media (min-width: 768px) {
  .subscribe-block .card-icon-copy {
    padding: 3.125rem 3.75rem 2rem 3.75rem;
  }
}
@media (min-width: 1440px) {
  .subscribe-block .card-icon-copy {
    padding: 3.75rem;
  }
}
.subscribe-block .card-icon-copy--icon {
  margin-bottom: 8px;
}
@media (min-width: 768px) {
  .subscribe-block .card-icon-copy--icon {
    margin-bottom: 1.125rem;
    height: 3.5rem;
  }
}
@media (min-width: 1440px) {
  .subscribe-block .card-icon-copy--icon {
    margin-bottom: 2.3125rem;
    height: auto;
  }
}
.subscribe-block .card-icon-copy h3 {
  text-transform: uppercase;
  font-size: 1rem;
  line-height: 1.2;
  font-weight: 400;
  margin-bottom: 1.4375rem;
  letter-spacing: -0.025em;
}
@media (min-width: 768px) {
  .subscribe-block .card-icon-copy h3 {
    font-size: 1.25rem;
    margin-bottom: 1.875rem;
  }
}
@media (min-width: 1440px) {
  .subscribe-block .card-icon-copy h3 {
    margin-bottom: 1.4375rem;
    font-size: 1.875rem;
  }
}
/*.subscribe-block .card-icon-copy:last-child {
  background-color: #D7282F;
  color: #fff;
}
.subscribe-block .card-icon-copy:last-child svg path {
  fill: #fff;
}
@media (min-width: 1440px) {
  .subscribe-block .card-icon-copy:last-child svg {
    width: 5.25rem;
  }
}*/
.subscribe-block .card-icon-copy svg {
  width: 2.375rem;
  height: auto;
}
@media (min-width: 768px) {
  .subscribe-block .card-icon-copy svg {
    width: 3.5rem;
  }
}
@media (min-width: 1440px) {
  .subscribe-block .card-icon-copy svg {
    width: 4.375rem;
  }
}
.subscribe-block .card-icon-copy .btn {
  width: 100%;
  max-width: 126px;
  padding: 0.6875rem 0.6875rem;
}
@media (min-width: 768px) {
  .subscribe-block .card-icon-copy .btn {
    max-width: 145px;
    width: 100%;
    padding: 0.8125rem 0.6875rem;
  }
}
@media (min-width: 1440px) {
  .subscribe-block .card-icon-copy .btn {
    max-width: 180px;
    padding: 1.125rem 2.75rem;
  }
}
.subscribe-block .close {
  position: absolute;
  left: 0;
  bottom: calc(100% + 10px);
  background: transparent;
  border: 0;
  padding: 0;
  height: auto;
  width: 20px;
  height: 20px;
  font-size: 0;
  line-height: 0;
}
@media (min-width: 768px) {
  .subscribe-block .close {
    width: 30px;
    height: 30px;
    bottom: calc(100% + 10px);
  }
}
@media (min-width: 1440px) {
  .subscribe-block .close {
    width: 40px;
    height: 40px;
  }
}
.subscribe-block .close:hover {
  transform: rotate(360deg);
}
.subscribe-block .close svg {
  width: 100%;
  height: auto;
}
.subscribe-block .close path {
  fill: #fff;
}

#lightbox-search {
  width: 100vw;
  height: 100vh;
  display: flex !important;
  align-items: center;
  justify-content: center;
  background-color: rgba(0, 57, 92, 0.5);
  position: fixed;
  top: 0;
  left: 0;
}
#lightbox-search form {
  position: relative;
  width: 100%;
  max-width: 19.375rem;
  padding: 0 20px;
  margin: 0 auto;
}
@media (min-width: 576px) {
  #lightbox-search form {
    max-width: 37.375rem;
  }
}
@media (min-width: 1440px) {
  #lightbox-search form {
    max-width: 55rem;
  }
}
#lightbox-search form label {
  display: block;
}
#lightbox-search form input[type=search] {
  width: 100%;
  background-color: #fff;
  height: 4.0625rem;
  border: 0;
  padding: 0.8125rem;
  color: #003A5D;
  font-size: 1.125rem;
  font-family: "Libre Franklin", "Oswald", "Arial", "Helvetica Neue", "Helvetica", sans-serif;
  padding-right: 2.5rem;
  font-weight: 700;
}
@media (min-width: 768px) {
  #lightbox-search form input[type=search] {
    font-size: 1.75rem;
    height: 5.8125rem;
    padding-right: 2.8125rem;
    padding-left: 2.0625rem;
  }
}
@media (min-width: 1440px) {
  #lightbox-search form input[type=search] {
    font-size: 2.125rem;
    height: 5.8125rem;
    padding-right: 4.375rem;
  }
}
#lightbox-search form input[type=search]::-webkit-input-placeholder {
  color: #003A5D;
}
#lightbox-search form input[type=search]::-moz-placeholder {
  opacity: 1;
  color: #003A5D;
}
#lightbox-search form input[type=search]:-moz-placeholder {
  color: #003A5D;
}
#lightbox-search form input[type=search]:-ms-input-placeholder {
  color: #003A5D;
}
#lightbox-search form input[type=search].placeholder {
  color: #003A5D;
}
#lightbox-search form button {
  padding: 0;
  position: absolute;
  top: 50%;
  right: 1.875rem;
  width: 1.4375rem;
  transform: translateY(-50%);
  background: transparent;
  height: auto;
  border: 0;
  transition: 0.4s all;
}
@media (min-width: 768px) {
  #lightbox-search form button {
    width: 33px;
  }
}
@media (min-width: 1440px) {
  #lightbox-search form button {
    right: 42px;
  }
}
#lightbox-search form button svg {
  width: 100%;
}
#lightbox-search form button:hover, #lightbox-search form button:focus {
  opacity: 0.5;
}
#lightbox-search .fancybox-close {
  display: flex;
  align-items: center;
  justify-content: center;
  position: fixed;
  width: 3.75rem;
  height: 3.75rem;
  right: 0;
  top: 0;
  z-index: 1;
  transition: 0.4s all;
  background-color: #D7282F;
  font-size: 0;
}
@media (min-width: 768px) {
  #lightbox-search .fancybox-close {
    width: 4.5rem;
    height: 4.5rem;
  }
}
#lightbox-search .fancybox-close svg {
  width: 1.0625rem;
  height: 1.0625rem;
  display: block;
}
@media (min-width: 768px) {
  #lightbox-search .fancybox-close svg {
    width: 1.25rem;
    height: 1.25rem;
  }
}
#lightbox-search .fancybox-close:hover {
  opacity: 0.5;
}

.fancybox-close-small {
  display: none !important;
}

.nav-opener {
  background-color: #D7282F;
  text-transform: uppercase;
  width: 5.25rem;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  text-transform: uppercase;
  font-size: 1rem;
  font-family: "Oswald", "Arial", "Helvetica Neue", "Helvetica", sans-serif;
  line-height: 0.9;
  height: 2.5rem;
  cursor: pointer;
  transition: 0.4s opacity;
}
@media (min-width: 768px) {
  .nav-opener {
    font-size: 1.375rem;
    width: 8.75rem;
    height: 4.375rem;
  }
}
.nav-opener:hover {
  opacity: 0.8;
}
.nav-active .nav-opener {
  width: 3.75rem;
  height: 3.75rem;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media (min-width: 768px) {
  .nav-active .nav-opener {
    width: 4.5rem;
    height: 4.5rem;
  }
}
.nav-active .nav-opener button {
  margin: 0;
}
.nav-active .nav-opener .copy {
  display: none;
}
.nav-opener button {
  position: relative;
  line-height: 0;
  background: transparent;
  border: none;
  background-color: #fff;
  border-radius: 0;
  width: 1.125rem;
  height: 1.125rem;
  background-color: transparent;
  padding: 0;
  margin-left: 0.375rem;
}
@media (min-width: 768px) {
  .nav-opener button {
    width: 1.6875rem;
    height: 1.125rem;
    margin-left: 1.125rem;
  }
}
.nav-opener button:before, .nav-opener button:after,
.nav-opener button span {
  transition: transform 0.5s ease-in-out, opacity 0.5s ease-in-out;
  background: #fff;
  position: absolute;
  width: 100%;
  top: 0;
  left: 0;
  height: 0.125rem;
  border-radius: 1.25rem;
  opacity: 1;
}
.nav-opener button:before {
  top: 0;
}
.nav-opener button:after {
  bottom: 0;
  top: auto;
}
.nav-opener button span {
  top: calc(50% - 1px);
}
.nav-opener button:before, .nav-opener button:after {
  content: "";
}
.nav-opener button:hover:before, .nav-opener button:hover:after,
.nav-opener button:hover span {
  opacity: 0.7;
}
.nav-active .nav-opener button span {
  opacity: 0;
}
.nav-active .nav-opener button:before {
  top: calc(50% - 1px);
  transform: rotate(-45deg);
}
.nav-active .nav-opener button:after {
  top: calc(50% - 1px);
  transform: rotate(45deg);
}

.section-hero {
  position: relative;
  overflow: hidden;
  z-index: 2;
  box-shadow: 0 263px 49px -60px rgba(0, 0, 0, 0.1);
}
@media (min-width: 768px) {
  .section-hero {
    box-shadow: 0 155px 49px -60px rgba(0, 0, 0, 0.05);
  }
}
.section-hero .hero-inner {
  position: relative;
  color: #fff;
  padding-top: 9.375rem;
  padding-bottom: 6.75rem;
  min-height: 60vh;
  text-align: center;
  z-index: 1;
}
@media (min-width: 768px) {
  .section-hero .hero-inner {
    min-height: 37.0625rem;
    padding-top: 11.25rem;
    padding-bottom: 10.8125rem;
    text-align: left;
  }
}
@media (min-width: 1440px) {
  .section-hero .hero-inner {
    min-height: 40.625rem;
    padding-top: 10.875rem;
    padding-bottom: 15.4375rem;
  }
}
.section-hero .hero-inner::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(0, 0, 0, 0.65) 50%, transparent);
  z-index: 1;
}
.section-hero .hero-inner .hero-text {
  position: relative;
  max-width: 17.5rem;
  margin: 0 auto;
  z-index: 3;
}
@media (min-width: 768px) {
  .section-hero .hero-inner .hero-text {
    max-width: 30rem;
    margin: 0;
  }
}
@media (min-width: 1440px) {
  .section-hero .hero-inner .hero-text {
    max-width: 38.4375rem;
  }
}
.section-hero .hero-inner .hero-text p {
  color: rgba(255, 255, 255, 0.7);
}
@media (min-width: 1440px) {
  .section-hero .hero-inner .hero-text p {
    margin-bottom: 2.5rem;
  }
}
.section-hero .hero-inner h1 {
  line-height: 1;
  font-size: 2.25rem;
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: -0.025em;
  margin-bottom: 1.5rem;
}
@media (min-width: 768px) {
  .section-hero .hero-inner h1 {
    font-size: 3.75rem;
    margin-bottom: 2.1875rem;
  }
}
@media (min-width: 1440px) {
  .section-hero .hero-inner h1 {
    font-size: 5rem;
    margin-bottom: 1.375rem;
  }
}
.section-hero .btn {
  padding-inline: 2.1875rem;
}
.section-hero .bg-video-holder {
  position: absolute;
  background-size: cover;
  background-position: 67%;
  inset: 0;
}
@media (min-width: 768px) {
  .section-hero .bg-video-holder {
    background-position: center;
  }
}
.section-hero .bg-video-holder video {
  position: absolute;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: none;
}
@media (min-width: 768px) {
  .section-hero .bg-video-holder video {
    display: block;
  }
}

.img-carousel {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 100%;
}
.img-carousel .slick-list,
.img-carousel .slick-track {
  height: 100%;
}
.img-carousel .img {
  position: relative;
}
.img-carousel .img::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(0, 58, 93, 0.45) 50%, transparent);
  z-index: 1;
}
.img-carousel .img img {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  object-fit: cover;
  object-position: center bottom;
}

.block-icon-text {
  position: relative;
  margin-top: -1.375rem;
  z-index: 2;
}
@media (min-width: 768px) {
  .block-icon-text {
    margin-top: -3.625rem;
  }
}
@media (min-width: 1440px) {
  .block-icon-text {
    margin-top: -9.6875rem;
  }
}
.block-icon-text .inner {
  background-color: #fff;
  padding-bottom: 0.25rem;
}
.block-icon-text .grid {
  display: block;
  box-shadow: 0 0 0 0 rgba(0, 0, 0, 0.05);
}
@media (min-width: 768px) {
  .block-icon-text .grid {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
  }
}
@media (min-width: 1440px) {
  .block-icon-text .grid {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
  }
}

.card-icon-text {
  text-align: center;
  font-size: 1.25rem;
  font-family: "Libre Franklin", "Oswald", "Arial", "Helvetica Neue", "Helvetica", sans-serif;
  color: #003A5D;
  padding: 1.6875rem 0.625rem;
  display: block;
  transition: 0.4s all;
}
@media (min-width: 768px) {
  .card-icon-text {
    width: 33.3333333333%;
    padding: 1.875rem 0.9375rem;
  }
}
@media (min-width: 1440px) {
  .card-icon-text {
    width: 100%;
    padding: 3.625rem 2.5rem;
  }
}
.card-icon-text:hover {
  background-color: #F5F5F5;
  box-shadow: 0.1875rem 0.1875rem 0.375rem rgba(0, 0, 0, 0.16);
  color: #003A5D;
}
.card-icon-text--icon {
  display: block;
  margin-bottom: 1.625rem;
  max-height: 5.4375rem;
}
.card-icon-text {
  font-weight: 700;
  font-family: "Libre Franklin", "Oswald", "Arial", "Helvetica Neue", "Helvetica", sans-serif;
  font-size: 1.25rem;
  line-height: 1.2;
  margin-bottom: 0;
  letter-spacing: -0.025em;
}

.section-news {
  position: relative;
  background-color: #fff;
  padding: 2.1875rem 0rem 2.8125rem 0rem;
  z-index: 1;
}
@media (min-width: 768px) {
  .section-news {
    padding: 1.375rem 0rem 2.8125rem 0rem;
  }
}
@media (min-width: 1440px) {
  .section-news {
    padding: 3.3125rem 0rem 4.6875rem 0rem;
  }
}
.section-news .article-box {
  display: grid;
  grid-template-columns: 1fr;
  gap: 15px;
}
@media (min-width: 768px) {
  .section-news .article-box {
    gap: 15px;
  }
}
@media (min-width: 1440px) {
  .section-news .article-box {
    grid-template-columns: 1fr 22.5rem;
    gap: 90px;
  }
}
@media (min-width: 768px) {
  .section-news .article-box .col:last-child {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 0rem 0.625rem;
  }
}
@media (min-width: 1440px) {
  .section-news .article-box .col:last-child {
    display: block;
  }
}
.section-news .btn-holder {
  text-align: center;
  padding-top: 1.5625rem;
}
@media (min-width: 768px) {
  .section-news .btn-holder {
    display: none;
  }
}

.card {
  position: relative;
  padding: 0.625rem 0rem 0rem;
}
@media (min-width: 768px) {
  .card {
    padding: 1.25rem 0rem 0.3125rem 0rem;
  }
}
@media (min-width: 1440px) {
  .card {
    max-width: 20.4375rem;
    padding: 1.25rem 0rem 0.9375rem 0rem;
  }
}
.card:hover img {
  transform: scale(1.05);
}
.card:hover a {
  color: #D7282F;
}
.card-lg {
  max-width: none;
  padding: 0;
}
.card-lg .card--time {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  position: absolute;
  left: 0;
  top: 0;
  background-color: #D7282F;
  color: #fff;
  padding: 0.625rem;
  text-align: center;
  font-weight: 700;
  font-size: 0.75rem;
  line-height: 1.2;
  text-transform: uppercase;
  width: 4.375rem;
  height: 4.375rem;
  z-index: 1;
}
@media (min-width: 768px) {
  .card-lg .card--time {
    width: 7.25rem;
    height: 6.625rem;
    font-size: 1rem;
  }
}
.card-lg .card--time .date {
  font-size: 36px;
  font-weight: 500;
  font-family: "Oswald", "Arial", "Helvetica Neue", "Helvetica", sans-serif;
  line-height: 1;
}
@media (min-width: 768px) {
  .card-lg .card--time .date {
    font-size: 3.125rem;
  }
}
.card-lg .card--img {
  position: relative;
}
@media (max-width: 767px) {
  .card-lg .card--img {
    height: 292px;
  }
}
@media (max-width: 767px) {
  .card-lg .card--img img {
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    top: 0;
    left: 0;
  }
}
.card-lg .card--content {
  padding: 1.25rem 0rem 0rem;
}
@media (min-width: 768px) {
  .card-lg .card--content {
    padding: 1.6875rem 0rem 0rem;
  }
}
@media (min-width: 1440px) {
  .card-lg .card--content {
    padding: 2.8125rem 0rem 0rem;
  }
}
.card-lg .card--content h5,
.card-lg .card--content .h5 {
  text-transform: uppercase;
  letter-spacing: -0.022em;
  font-family: "Oswald", "Arial", "Helvetica Neue", "Helvetica", sans-serif;
  line-height: 1.2307692308;
  font-size: 1.25rem;
  font-weight: 500;
}
@media (min-width: 768px) {
  .card-lg .card--content h5,
  .card-lg .card--content .h5 {
    font-size: 1.5rem;
  }
}
@media (min-width: 1440px) {
  .card-lg .card--content h5,
  .card-lg .card--content .h5 {
    font-size: 1.625rem;
  }
}
.card-lg .card--content p {
  margin-bottom: 0.75rem;
}
@media (min-width: 768px) {
  .card-lg .card--content p {
    margin-bottom: 1.6875rem;
  }
}
.card a {
  transition: 0.4s all;
}
.card--img {
  overflow: hidden;
}
.card--img img {
  transition: 0.4s all;
}
.card--time {
  display: block;
  color: #D7282F;
  font-weight: 700;
  text-transform: uppercase;
  font-size: 1rem;
  margin-bottom: 0.5rem;
}
.card--content h5,
.card--content .h5 {
  font-size: 1.125rem;
  line-height: 1.2631578947;
  color: #003A5D;
  font-family: "Libre Franklin", "Oswald", "Arial", "Helvetica Neue", "Helvetica", sans-serif;
}
@media (min-width: 1440px) {
  .card--content h5,
  .card--content .h5 {
    font-size: 1.1875rem;
  }
}
.card--content h5 a,
.card--content .h5 a {
  color: inherit;
}

.read-more {
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  text-transform: uppercase;
  color: #D7282F;
  font-weight: 700;
  line-height: 1;
  font-family: "Oswald", "Arial", "Helvetica Neue", "Helvetica", sans-serif;
  letter-spacing: -0.022em;
  transition: 0.4s all;
}
@media (min-width: 1440px) {
  .read-more {
    font-size: 1.0625rem;
    line-height: 1.4117647059;
  }
}
.read-more:hover {
  color: #003A5D !important;
}
.read-more:hover .icon-arrow-right {
  background-color: #003A5D;
}
.read-more .icon-arrow-right {
  width: 1rem;
  height: 1rem;
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
  font-size: 0;
  margin-left: 0.5625rem;
  background-color: #D7282F;
  transition: 0.4s all;
}
@media (min-width: 1440px) {
  .read-more .icon-arrow-right {
    width: 1.25rem;
    height: 1.25rem;
    margin-left: 0.8125rem;
  }
}

.form-box {
  background-color: #E7E9EB;
  padding: 1.875rem 0rem 2.1875rem;
}
@media (min-width: 768px) {
  .form-box {
    padding: 3.3125rem 0rem 3.4375rem;
  }
}
.form-box form {
  grid-template-columns: 1fr;
  grid-gap: 0.875rem;
}
@media (min-width: 768px) {
  .form-box form {
    grid-gap: 0;
    grid-template-columns: 1fr 12.5rem;
  }
}
.form-box form input {
  width: 100%;
}

.section-copy-img {
  padding: 2.875rem 0rem 3.3125rem 0rem;
  background: rgba(162, 169, 173, 0.14);
}
@media (min-width: 768px) {
  .section-copy-img {
    padding: 1.75rem 0rem 2.5rem 0rem;
  }
}
@media (min-width: 1440px) {
  .section-copy-img {
    padding: 5rem 0rem 5.625rem 0rem;
  }
}
.section-copy-img h2 {
  margin-bottom: 0.25rem;
}
@media (min-width: 768px) {
  .section-copy-img h2 {
    margin-bottom: 0.875rem;
  }
}
@media (min-width: 1440px) {
  .section-copy-img h2 {
    margin-bottom: 1.25rem;
  }
}
.section-copy-img .grid {
  position: relative;
  grid-template-columns: 1fr;
  grid-gap: 15px;
  align-items: center;
}
@media (min-width: 768px) {
  .section-copy-img .grid {
    grid-gap: 20px;
  }
}
@media (min-width: 1440px) {
  .section-copy-img .grid {
    grid-template-columns: 570px 1fr;
    grid-gap: 67px;
  }
}
.section-copy-img .content-box {
  order: 1;
}
@media (min-width: 1440px) {
  .section-copy-img .content-box {
    order: 0;
  }
}
.section-copy-img .img-box {
  position: relative;
  padding-top: 84%;
}
@media (min-width: 768px) {
  .section-copy-img .img-box {
    padding-top: 57%;
  }
}
@media (min-width: 1440px) {
  .section-copy-img .img-box {
    margin-right: -19%;
    padding-top: 111%;
  }
}
.section-copy-img .img-box img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInZlbmRvcnMvX25vcm1hbGl6ZS5zY3NzIiwidmVuZG9ycy9fc2xpY2suc2NzcyIsInZlbmRvcnMvX2ZhbmN5Ym94LnNjc3MiLCJiYXNlL19iYXNlLnNjc3MiLCJhYnN0cmFjdHMvX3ZhcmlhYmxlcy5zY3NzIiwiYWJzdHJhY3RzL19tZWRpYS5zY3NzIiwiYmFzZS9faGVscGVycy5zY3NzIiwiYWJzdHJhY3RzL19taXhpbnMuc2NzcyIsImFic3RyYWN0cy9fZnVuY3Rpb25zLnNjc3MiLCJiYXNlL190eXBvZ3JhcGh5LnNjc3MiLCJiYXNlL19mb3Jtcy5zY3NzIiwiYmFzZS9fd2ViX2FjY2Vzc2liaWxpdHkuc2NzcyIsImxheW91dC9faGVhZGVyLnNjc3MiLCJjb21wb25lbnRzL19tYWluLW5hdi5zY3NzIiwibGF5b3V0L19jb21tb24uc2NzcyIsImxheW91dC9fZm9vdGVyLnNjc3MiLCJjb21wb25lbnRzL19idXR0b24uc2NzcyIsImNvbXBvbmVudHMvX2FsZXJ0LWJhci5zY3NzIiwiY29tcG9uZW50cy9fc3Vic2NyaWJlLnNjc3MiLCJjb21wb25lbnRzL19zZWFyY2gtbGlnaHRib3guc2NzcyIsImNvbXBvbmVudHMvX25hdi1vcGVuZXIuc2NzcyIsImNvbXBvbmVudHMvX3NlY3Rpb24taGVyby5zY3NzIiwiY29tcG9uZW50cy9fYmxvY2staWNvbi10ZXh0LnNjc3MiLCJjb21wb25lbnRzL19zZWN0aW9uLW5ld3Muc2NzcyIsImNvbXBvbmVudHMvX2Zvcm0tYm94LnNjc3MiLCJjb21wb25lbnRzL19zZWN0aW9uLWNvcHktaW1nLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7QUFFQTtBQUFBO0FBR0E7QUFBQTtBQUFBO0FBQUE7QUFLQTtFQUNJO0FBQ0E7RUFDQTtBQUNBOzs7QUFHSjtBQUFBO0FBR0E7QUFBQTtBQUFBO0FBSUE7RUFDSTs7O0FBR0o7QUFBQTtBQUFBO0FBSUE7RUFDSTs7O0FBR0o7QUFBQTtBQUFBO0FBQUE7QUFLQTtFQUNJO0VBQ0E7OztBQUdKO0FBQUE7QUFHQTtBQUFBO0FBQUE7QUFBQTtBQUtBO0VBQ0k7QUFDQTtFQUNBO0FBQ0E7RUFDQTtBQUNBOzs7QUFHSjtBQUFBO0FBQUE7QUFBQTtBQUtBO0VBQ0k7QUFDQTtFQUNBO0FBQ0E7OztBQUdKO0FBQUE7QUFHQTtBQUFBO0FBQUE7QUFJQTtFQUNJOzs7QUFHSjtBQUFBO0FBQUE7QUFBQTtBQUtBO0VBQ0k7QUFDQTtFQUNBO0FBQ0E7RUFDQTtBQUNBOzs7QUFHSjtBQUFBO0FBQUE7QUFJQTtBQUFBO0VBRUk7OztBQUdKO0FBQUE7QUFBQTtBQUFBO0FBS0E7QUFBQTtBQUFBO0VBR0k7QUFDQTtFQUNBO0FBQ0E7OztBQUdKO0FBQUE7QUFBQTtBQUlBO0VBQ0k7OztBQUdKO0FBQUE7QUFBQTtBQUFBO0FBS0E7QUFBQTtFQUVJO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtFQUNJOzs7QUFHSjtFQUNJOzs7QUFHSjtBQUFBO0FBR0E7QUFBQTtBQUFBO0FBSUE7RUFDSTs7O0FBR0o7QUFBQTtBQUdBO0FBQUE7QUFBQTtBQUFBO0FBS0E7QUFBQTtBQUFBO0FBQUE7QUFBQTtFQUtJO0FBQ0E7RUFDQTtBQUNBO0VBQ0E7QUFDQTtFQUNBO0FBQ0E7OztBQUdKO0FBQUE7QUFBQTtBQUFBO0FBS0E7QUFBQTtBQUVJO0VBQ0E7OztBQUdKO0FBQUE7QUFBQTtBQUFBO0FBS0E7QUFBQTtBQUVJO0VBQ0E7OztBQUdKO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQUFBO0VBSUk7OztBQUdKO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQUFBO0VBSUk7RUFDQTs7O0FBR0o7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBQUE7RUFJSTs7O0FBR0o7QUFBQTtBQUFBO0FBSUE7RUFDSTs7O0FBR0o7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBT0E7RUFDSTtBQUNBO0VBQ0E7QUFDQTtFQUNBO0FBQ0E7RUFDQTtBQUNBO0VBQ0E7QUFDQTtFQUNBO0FBQ0E7OztBQUdKO0FBQUE7QUFBQTtBQUlBO0VBQ0k7OztBQUdKO0FBQUE7QUFBQTtBQUlBO0VBQ0k7OztBQUdKO0FBQUE7QUFBQTtBQUFBO0FBS0E7QUFBQTtFQUVJO0FBQ0E7RUFDQTtBQUNBOzs7QUFHSjtBQUFBO0FBQUE7QUFJQTtBQUFBO0VBRUk7OztBQUdKO0FBQUE7QUFBQTtBQUFBO0FBS0E7RUFDSTtBQUNBO0VBQ0E7QUFDQTs7O0FBR0o7QUFBQTtBQUFBO0FBSUE7RUFDSTs7O0FBR0o7QUFBQTtBQUFBO0FBQUE7QUFLQTtFQUNJO0FBQ0E7RUFDQTtBQUNBOzs7QUFHSjtBQUFBO0FBR0E7QUFBQTtBQUFBO0FBSUE7RUFDSTs7O0FBR0o7QUFBQTtBQUFBO0FBSUE7RUFDSTs7O0FBR0o7QUFBQTtBQUdBO0FBQUE7QUFBQTtBQUlBO0VBQ0k7OztBQUdKO0FBQUE7QUFBQTtBQUlBO0VBQ0k7OztBQ3pYSjtBQUVBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTs7QUFHSjtFQUNJO0VBQ0E7O0FBR0o7RUFDSTs7O0FBR1I7QUFBQTtFQUVJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBRUk7RUFDQTs7QUFHSjtFQUNJOztBQUdKO0VBQ0k7OztBQUdSO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7O0FBQ0E7RUFDSTs7QUFFSjtFQUNJOztBQUVKO0VBQ0k7O0FBR0o7RUFDSTs7QUFHSjtFQUNJOztBQUdKO0VBQ0k7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7OztBQUdSO0VBQ0k7OztBQ3JHSjtFQUNDOzs7QUFHQztFQUNEOzs7QUFHQztFQUNEO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdDO0VBQ0Q7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHQztFQUNEOzs7QUFHQztBQUFBO0FBQUE7QUFBQTtFQUlEO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdDO0VBQ0Q7RUFDQTs7O0FBR0M7RUFDRDtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHQztFQUNEO0VBQ0E7OztBQUdDO0FBQUE7QUFBQTtBQUFBO0VBSUQ7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHQztBQUFBO0FBQUE7QUFBQTtFQUlEO0VBQ0E7RUFDQTs7O0FBR0M7RUFDRDtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0M7RUFDRDtFQUNBOzs7QUFHQztFQUNEO0VBQ0E7RUFDQTtFQUNBOzs7QUFHQztFQUNEOzs7QUFHQztFQUNEO0FBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHQztFQUNEO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0M7QUFBQTtBQUFBO0FBQUE7RUFJRDs7O0FBR0M7RUFDRDtFQUNBOzs7QUFHQztFQUNEOzs7QUFHQztFQUNEOzs7QUFHQztFQUNEO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHQztFQUNEO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHQztFQUNEOzs7QUFHQztFQUNEOzs7QUFHQztBQUFBO0VBRUQ7RUFDQTs7O0FBR0M7RUFDRDtFQUNBOzs7QUFHQztFQUNEOzs7QUFHQztBQUFBO0VBRUQ7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHQztFQUNEOzs7QUFHQztBQUFBO0FBQUE7QUFBQTtFQUlEO0VBQ0E7RUFDQTtFQUNBOzs7QUFHQztFQUNEOzs7QUFHQztFQUNEOzs7QUFHQztFQUNEOzs7QUFHQztBQUFBO0VBRUQ7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0M7QUFDQTtFQUNEO0VBQ0E7RUFDQTs7O0FBR0M7RUFDRDtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHQztFQUNEO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdDO0FBRUE7RUFDRDtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHQztBQUFBO0FBQUE7RUFHRDs7O0FBR0M7RUFDRDs7O0FBR0M7RUFDRDs7O0FBR0M7RUFDRDs7O0FBR0M7QUFBQTtFQUVEO0VBQ0E7RUFDQTs7O0FBR0M7QUFDQTtFQUNEOzs7QUFHQztFQUNEO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdDO0VBQ0Q7RUFDQTs7O0FBR0M7QUFBQTtFQUVEOzs7QUFHQztBQUFBO0VBRUQ7OztBQUdDO0VBQ0Q7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdDO0FBRUE7RUFDRDtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHQztFQUNEO0VBQ0E7OztBQUdDO0VBQ0Q7RUFDQTtFQUNBO0VBQ0E7OztBQUdDO0VBQ0Q7OztBQUdDO0FBQUE7RUFFRDs7O0FBR0M7QUFFQTtFQUNEO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0M7RUFDRDs7O0FBR0M7RUFDRDtFQUNBO0VBQ0E7OztBQUdDO0VBQ0Q7RUFDQTtFQUNBOzs7QUFHQztBQUVBO0VBQ0Q7RUFRQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHQztFQUNEO0lBQ0M7OztBQUlBO0VBQ0Q7OztBQUdDO0VBQ0Q7RUFDQTtFQUNBOzs7QUFHQztBQUFBO0FBQUE7RUFHRDtFQUNBOzs7QUFHQztFQUNEO0VBQ0E7OztBQUdDO0FBRUE7RUFDRDtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHQztFQUNEO0lBQ0M7OztBQUlBO0FBRUE7RUFDRDs7O0FBR0M7QUFFQTtFQUNEO0VBQ0E7OztBQUdDO0VBQ0Q7RUFDQTs7O0FBR0M7RUFDRDtFQUNBOzs7QUFHQztBQUVBO0FBQUE7RUFFRDtFQUNBOzs7QUFHQztFQUNEOzs7QUFHQztBQUVBO0VBQ0Q7RUFDQTs7O0FBR0M7RUFDRDtFQUNBOzs7QUFHQztFQUNEO0VBQ0E7OztBQUdDO0FBRUE7RUFDRDtFQUNBO0VBQ0E7OztBQUdDO0VBQ0Q7RUFDQTtFQUNBOzs7QUFHQztFQUNEO0VBQ0E7RUFDQTs7O0FBR0M7QUFFQTtFQUNEO0VBQ0E7OztBQUdDO0VBQ0Q7RUFDQTs7O0FBR0M7RUFDRDtFQUNBOzs7QUFHQztBQUVBO0VBQ0Q7OztBQUdDO0VBQ0Q7OztBQUdDO0VBQ0Q7OztBQUdDO0FBQ0E7RUFDRDtJQUNDO0lBQ0E7O0VBR0Q7SUFDQzs7RUFHRDtJQUNDOztFQUdEO0lBQ0M7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTs7RUFHRDtJQUNDO0lBQ0E7O0VBR0Q7SUFDQztNQUNDO01BQ0E7Ozs7QUFJRDtBQUVBO0VBQ0Q7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0M7RUFDRDtFQUNBO0VBQ0E7RUFDQTs7O0FBR0M7RUFDRDtFQUNBOzs7QUFHQztFQUNEO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHQztBQUFBO0VBRUQ7OztBQUdDO0VBQ0Q7OztBQUdDO0VBQ0Q7OztBQUdDO0VBQ0Q7OztBQUdDO0VBQ0Q7OztBQUdDO0VBQ0Q7OztBQUdDO0VBQ0Q7OztBQUdDO0VBQ0Q7OztBQUdDO0VBQ0Q7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHQztFQUNEOzs7QUFHQztFQUNEO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFQztBQUVBO0VBQ0Q7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdDO0VBQ0Q7RUFDQTs7O0FBR0M7RUFDRDs7O0FBR0M7RUFDRDs7O0FBR0M7RUFDRDtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHQztFQUNEOzs7QUFHQztFQUNEOzs7QUFHQztFQUNEO0VBQ0E7RUFDQTs7O0FBR0M7RUFDRDtFQUNBOzs7QUFHQztFQUNEO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0M7RUFDRDtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0M7RUFDRDs7O0FBR0M7RUFDRDs7O0FBR0M7QUFDQTtFQUNEO0lBQ0M7O0VBR0Q7SUFDQzs7RUFHRDtJQUNDOzs7QUMxM0JGO0VBQ0k7RUFDQTs7O0FBR0o7QUFBQTtBQUFBO0VBR0k7OztBQUdKO0VBQ0k7OztBQUlKO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtFQVlJOzs7QUFHSjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtFQW1CSTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7OztBQUdKO0FBQUE7RUFFSTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtFQUNBOzs7QUFHSjtBQUFBO0VBRUk7OztBQUdKO0FBQUE7QUFBQTtBQUFBO0VBSUk7RUFDQTs7O0FBR0o7RUFDSTs7O0FBTUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7QUFHSjtFQUNJOzs7QUFJUjtFQUNJO0VBQ0E7OztBQUdKO0VBQ0ksT0NuQmM7RURvQmQsWUM3R0k7RUQ4R0o7RUFDQSxXQ1BhO0VEUWI7RUFDQTtFQUNBOztBRThjQTtFRnJkSjtJQVVRLFdDckJTO0lEc0JULGFDckJXOzs7QUMrZGY7RUZyZEo7SUFlRSxXQzdCcUI7SUQ4QmYsYUM3QmlCOzs7O0FEa0N6QjtFQUNJO0VBQ0E7RUFDQTtFQUNBOzs7QUFJSjtFQUNJOzs7QUFHSjtFQUNJOzs7QUFHSjtFQUNJOzs7QUc3SUE7RUFDSTtFQUNBO0VBQ0E7OztBQXNEUjtFQUNJO0VBQ0E7RUFDQTs7O0FBR0o7RUFFQztFQUNHO0VBQ0E7O0FEeWZBO0VFclBRO0lBRVE7SUFDQTs7O0FGa1BoQjtFRXJQUTtJQUVRO0lBQ0E7OztBRmtQaEI7RUVyUFE7SUFFUTtJQUNBOzs7QUZrUGhCO0VFclBRO0lBRVE7SUFDQTs7O0FGa1BoQjtFRXJQUTtJQUVRO0lBQ0E7OztBRmtQaEI7RUVyUFE7SUFFUTtJQUNBOzs7QUZrUGhCO0VFclBRO0lBRVE7SUFDQTs7O0FGa1BoQjtFRXJQUTtJQUVRO0lBQ0E7OztBRmtQaEI7RUVyUFE7SUFFUTtJQUNBOzs7QUZrUGhCO0VFclBRO0lBRVE7SUFDQTs7O0FGa1BoQjtFRXJQUTtJQUVRO0lBQ0E7OztBRmtQaEI7RUVyUFE7SUFFUTtJQUNBOzs7QUZrUGhCO0VFNU9RO0lBRVE7OztBRjBPaEI7RUU1T1E7SUFFUTs7O0FGME9oQjtFRTVPUTtJQUVROzs7QUYwT2hCO0VFNU9RO0lBRVE7OztBRjBPaEI7RUU1T1E7SUFFUTs7O0FGME9oQjtFRTVPUTtJQUVROzs7QUYwT2hCO0VFNU9RO0lBRVE7OztBRjBPaEI7RUU1T1E7SUFFUTs7O0FGME9oQjtFRTVPUTtJQUVROzs7QUYwT2hCO0VFNU9RO0lBRVE7OztBRjBPaEI7RUU1T1E7SUFFUTs7O0FGME9oQjtFRTVPUTtJQUVROzs7QUYwT2hCO0VFclBRO0lBRVE7SUFDQTs7O0FGa1BoQjtFRXJQUTtJQUVRO0lBQ0E7OztBRmtQaEI7RUVyUFE7SUFFUTtJQUNBOzs7QUZrUGhCO0VFclBRO0lBRVE7SUFDQTs7O0FGa1BoQjtFRXJQUTtJQUVRO0lBQ0E7OztBRmtQaEI7RUVyUFE7SUFFUTtJQUNBOzs7QUZrUGhCO0VFclBRO0lBRVE7SUFDQTs7O0FGa1BoQjtFRXJQUTtJQUVRO0lBQ0E7OztBRmtQaEI7RUVyUFE7SUFFUTtJQUNBOzs7QUZrUGhCO0VFclBRO0lBRVE7SUFDQTs7O0FGa1BoQjtFRXJQUTtJQUVRO0lBQ0E7OztBRmtQaEI7RUVyUFE7SUFFUTtJQUNBOzs7QUZrUGhCO0VFNU9RO0lBRVE7OztBRjBPaEI7RUU1T1E7SUFFUTs7O0FGME9oQjtFRTVPUTtJQUVROzs7QUYwT2hCO0VFNU9RO0lBRVE7OztBRjBPaEI7RUU1T1E7SUFFUTs7O0FGME9oQjtFRTVPUTtJQUVROzs7QUYwT2hCO0VFNU9RO0lBRVE7OztBRjBPaEI7RUU1T1E7SUFFUTs7O0FGME9oQjtFRTVPUTtJQUVROzs7QUYwT2hCO0VFNU9RO0lBRVE7OztBRjBPaEI7RUU1T1E7SUFFUTs7O0FGME9oQjtFRTVPUTtJQUVROzs7QUYwT2hCO0VFclBRO0lBRVE7SUFDQTs7O0FGa1BoQjtFRXJQUTtJQUVRO0lBQ0E7OztBRmtQaEI7RUVyUFE7SUFFUTtJQUNBOzs7QUZrUGhCO0VFclBRO0lBRVE7SUFDQTs7O0FGa1BoQjtFRXJQUTtJQUVRO0lBQ0E7OztBRmtQaEI7RUVyUFE7SUFFUTtJQUNBOzs7QUZrUGhCO0VFclBRO0lBRVE7SUFDQTs7O0FGa1BoQjtFRXJQUTtJQUVRO0lBQ0E7OztBRmtQaEI7RUVyUFE7SUFFUTtJQUNBOzs7QUZrUGhCO0VFclBRO0lBRVE7SUFDQTs7O0FGa1BoQjtFRXJQUTtJQUVRO0lBQ0E7OztBRmtQaEI7RUVyUFE7SUFFUTtJQUNBOzs7QUZrUGhCO0VFNU9RO0lBRVE7OztBRjBPaEI7RUU1T1E7SUFFUTs7O0FGME9oQjtFRTVPUTtJQUVROzs7QUYwT2hCO0VFNU9RO0lBRVE7OztBRjBPaEI7RUU1T1E7SUFFUTs7O0FG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Qjs7QVdtTzNCO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsT1hqU0k7RVdrU0o7O0FWa1FDO0VVMVFGO0lBV0U7SUFDQTs7O0FBS0M7RUFDQztFQUNBOztBVnVQRjtFVXpQQztJQUtFOzs7QUFNSjtFQUNDOztBQUVBO0VBQ0MsT1h0VEM7O0FXNFRMO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7O0FWZ09FO0VVcE9IO0lBT0U7SUFDQTs7O0FBS0M7RUFDQyxNWDFVQzs7QVcrVUo7RUFDQzs7QUFFQTtFQUNDOztBQUtIO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLGtCWDlWSTtFVytWSjtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBVjZMRTtFVXhNSDtJQWNFO0lBQ0E7SUFDQTs7O0FBR0Q7RUFDQzs7QUFHRDtFQUNDO0VBQ0E7O0FWK0tDO0VVakxGO0lBS0U7Ozs7QUN2Wko7RUFDQztFQUNBO0VBQ0E7RUFDQSxhWmlGMkI7RVloRjNCO0VBQ0EsYVorTGlCO0VZOUxqQjtFQUNBO0VBQ0E7RUFRQztFQUNBO0VBQ0EsY1p3S2lCO0VZdktqQixlWndLa0I7O0FDdVloQjtFV25rQko7SUFZRSxTWm1MWTtJWWxMWixXWnFMYzs7O0FZM0tmO0VBQ0MsT1pyQk07RVlzQk4sWVpYTTtFWVlOLGNaWk07O0FZY047RUFDQyxPWmZLO0VZZ0JMLFlaM0JLO0VZNEJMLGNaakJLOztBWXFCUDtFQUNDLE9aakNNO0VZa0NOLFlaTks7RVlPTCxjWlBLOztBWVNMO0VBQ0MsT1p0Q0s7RVl1Q0wsWVorSzRCO0VZOUs1QixjWjhLNEI7O0FZMUs5QjtFQUNDLE9aakJLO0VZa0JMO0VBQ0EsY1puQks7O0FZcUJMO0VBQ0MsT1psREs7RVltREwsWVp2Qkk7RVl3QkosY1prSzRCOztBWTlKOUI7RUFDQyxPWnpETTtFWTBETixZWjFCSTtFWTJCSixjWjNCSTs7QVk2Qko7RUFDQyxPWjlESztFWStETCxZWmdLMkI7RVkvSjNCLGNaK0oyQjs7QVkzSjdCO0VBQ0MsT1pyRU07RVlzRU47RUFDQTs7QUFHQztFQUNDOztBQUlG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RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLGtCbkJuTkk7RW1Cb05KOztBbEI0VUU7RWtCdFZIO0lBYUU7SUFDQTtJQUNBOzs7O0FDL1BIO0VBQ0M7RUFDQTs7QW5Cb2tCRztFbUJ0a0JKO0lBS0U7OztBQUdEO0VBQ0M7RUFDQTs7QW5CNGpCRTtFbUI5akJIO0lBS0U7SUFDQTs7O0FBR0Q7RUFDQzs7O0FDbEJIO0VBQ0M7RUFDQTs7QXBCb2tCRztFb0J0a0JKO0lBS0U7OztBcEJpa0JFO0VvQnRrQko7SUFTRTs7O0FBR0Q7RUFDQzs7QXBCeWpCRTtFb0IxakJIO0lBSUU7OztBcEJzakJDO0VvQjFqQkg7SUFRRTs7O0FBSUY7RUFDQztFQUNBO0VBQ0E7RUFDQTs7QXBCMGlCRTtFb0I5aUJIO0lBT0U7OztBcEJ1aUJDO0VvQjlpQkg7SUFXRTtJQUNBOzs7QUFJRjtFQUNDOztBcEI2aEJFO0VvQjloQkg7SUFJRTs7O0FBSUY7RUFDQztFQUNBOztBcEJvaEJFO0VvQnRoQkg7SUFLRTs7O0FwQmloQkM7RW9CdGhCSDtJQVNFO0lBQ0E7OztBQUdEO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBIiwic291cmNlc0NvbnRlbnQiOlsiLyohIG5vcm1hbGl6ZS5jc3MgdjguMC4xIHwgTUlUIExpY2Vuc2UgfCBnaXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzcyAqL1xuXG4vKiBEb2N1bWVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBsaW5lIGhlaWdodCBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBQcmV2ZW50IGFkanVzdG1lbnRzIG9mIGZvbnQgc2l6ZSBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2VzIGluIGlPUy5cbiAqL1xuXG5odG1sIHtcbiAgICBsaW5lLWhlaWdodDogMS4xNTtcbiAgICAvKiAxICovXG4gICAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xuICAgIC8qIDIgKi9cbn1cblxuLyogU2VjdGlvbnNcbiAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gICAqIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2Vycy5cbiAgICovXG5cbmJvZHkge1xuICAgIG1hcmdpbjogMDtcbn1cblxuLyoqXG4gICAqIFJlbmRlciB0aGUgYG1haW5gIGVsZW1lbnQgY29uc2lzdGVudGx5IGluIElFLlxuICAgKi9cblxubWFpbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qKlxuICAgKiBDb3JyZWN0IHRoZSBmb250IHNpemUgYW5kIG1hcmdpbiBvbiBgaDFgIGVsZW1lbnRzIHdpdGhpbiBgc2VjdGlvbmAgYW5kXG4gICAqIGBhcnRpY2xlYCBjb250ZXh0cyBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBTYWZhcmkuXG4gICAqL1xuXG5oMSB7XG4gICAgZm9udC1zaXplOiAyZW07XG4gICAgbWFyZ2luOiAwLjY3ZW0gMDtcbn1cblxuLyogR3JvdXBpbmcgY29udGVudFxuICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAgICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gRmlyZWZveC5cbiAgICogMi4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZSBhbmQgSUUuXG4gICAqL1xuXG5ociB7XG4gICAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gICAgLyogMSAqL1xuICAgIGhlaWdodDogMDtcbiAgICAvKiAxICovXG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgLyogMiAqL1xufVxuXG4vKipcbiAgICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAgICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICAgKi9cblxucHJlIHtcbiAgICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7XG4gICAgLyogMSAqL1xuICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgIC8qIDIgKi9cbn1cblxuLyogVGV4dC1sZXZlbCBzZW1hbnRpY3NcbiAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gICAqIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIG9uIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cbiAgICovXG5cbmEge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4vKipcbiAgICogMS4gUmVtb3ZlIHRoZSBib3R0b20gYm9yZGVyIGluIENocm9tZSA1Ny1cbiAgICogMi4gQWRkIHRoZSBjb3JyZWN0IHRleHQgZGVjb3JhdGlvbiBpbiBDaHJvbWUsIEVkZ2UsIElFLCBPcGVyYSwgYW5kIFNhZmFyaS5cbiAgICovXG5cbmFiYnJbdGl0bGVdIHtcbiAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgIC8qIDEgKi9cbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAvKiAyICovXG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkO1xuICAgIC8qIDIgKi9cbn1cblxuLyoqXG4gICAqIEFkZCB0aGUgY29ycmVjdCBmb250IHdlaWdodCBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmkuXG4gICAqL1xuXG5iLFxuc3Ryb25nIHtcbiAgICBmb250LXdlaWdodDogYm9sZGVyO1xufVxuXG4vKipcbiAgICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAgICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICAgKi9cblxuY29kZSxcbmtiZCxcbnNhbXAge1xuICAgIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTtcbiAgICAvKiAxICovXG4gICAgZm9udC1zaXplOiAxZW07XG4gICAgLyogMiAqL1xufVxuXG4vKipcbiAgICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gICAqL1xuXG5zbWFsbCB7XG4gICAgZm9udC1zaXplOiA4MCU7XG59XG5cbi8qKlxuICAgKiBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBlbGVtZW50cyBmcm9tIGFmZmVjdGluZyB0aGUgbGluZSBoZWlnaHQgaW5cbiAgICogYWxsIGJyb3dzZXJzLlxuICAgKi9cblxuc3ViLFxuc3VwIHtcbiAgICBmb250LXNpemU6IDc1JTtcbiAgICBsaW5lLWhlaWdodDogMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5zdWIge1xuICAgIGJvdHRvbTogLTAuMjVlbTtcbn1cblxuc3VwIHtcbiAgICB0b3A6IC0wLjVlbTtcbn1cblxuLyogRW1iZWRkZWQgY29udGVudFxuICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAgICogUmVtb3ZlIHRoZSBib3JkZXIgb24gaW1hZ2VzIGluc2lkZSBsaW5rcyBpbiBJRSAxMC5cbiAgICovXG5cbmltZyB7XG4gICAgYm9yZGVyLXN0eWxlOiBub25lO1xufVxuXG4vKiBGb3Jtc1xuICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAgICogMS4gQ2hhbmdlIHRoZSBmb250IHN0eWxlcyBpbiBhbGwgYnJvd3NlcnMuXG4gICAqIDIuIFJlbW92ZSB0aGUgbWFyZ2luIGluIEZpcmVmb3ggYW5kIFNhZmFyaS5cbiAgICovXG5cbmJ1dHRvbixcbmlucHV0LFxub3B0Z3JvdXAsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gICAgLyogMSAqL1xuICAgIGZvbnQtc2l6ZTogMTAwJTtcbiAgICAvKiAxICovXG4gICAgbGluZS1oZWlnaHQ6IDEuMTU7XG4gICAgLyogMSAqL1xuICAgIG1hcmdpbjogMDtcbiAgICAvKiAyICovXG59XG5cbi8qKlxuICAgKiBTaG93IHRoZSBvdmVyZmxvdyBpbiBJRS5cbiAgICogMS4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZS5cbiAgICovXG5cbmJ1dHRvbixcbmlucHV0IHtcbiAgICAvKiAxICovXG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbi8qKlxuICAgKiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEVkZ2UsIEZpcmVmb3gsIGFuZCBJRS5cbiAgICogMS4gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBGaXJlZm94LlxuICAgKi9cblxuYnV0dG9uLFxuc2VsZWN0IHtcbiAgICAvKiAxICovXG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG5cbi8qKlxuICAgKiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICAgKi9cblxuYnV0dG9uLFxuW3R5cGU9XCJidXR0b25cIl0sXG5bdHlwZT1cInJlc2V0XCJdLFxuW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xufVxuXG4vKipcbiAgICogUmVtb3ZlIHRoZSBpbm5lciBib3JkZXIgYW5kIHBhZGRpbmcgaW4gRmlyZWZveC5cbiAgICovXG5cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwiYnV0dG9uXCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJyZXNldFwiXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwic3VibWl0XCJdOjotbW96LWZvY3VzLWlubmVyIHtcbiAgICBib3JkZXItc3R5bGU6IG5vbmU7XG4gICAgcGFkZGluZzogMDtcbn1cblxuLyoqXG4gICAqIFJlc3RvcmUgdGhlIGZvY3VzIHN0eWxlcyB1bnNldCBieSB0aGUgcHJldmlvdXMgcnVsZS5cbiAgICovXG5cbmJ1dHRvbjotbW96LWZvY3VzcmluZyxcblt0eXBlPVwiYnV0dG9uXCJdOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJyZXNldFwiXTotbW96LWZvY3VzcmluZyxcblt0eXBlPVwic3VibWl0XCJdOi1tb3otZm9jdXNyaW5nIHtcbiAgICBvdXRsaW5lOiAxcHggZG90dGVkIEJ1dHRvblRleHQ7XG59XG5cbi8qKlxuICAgKiBDb3JyZWN0IHRoZSBwYWRkaW5nIGluIEZpcmVmb3guXG4gICAqL1xuXG5maWVsZHNldCB7XG4gICAgcGFkZGluZzogMC4zNWVtIDAuNzVlbSAwLjYyNWVtO1xufVxuXG4vKipcbiAgICogMS4gQ29ycmVjdCB0aGUgdGV4dCB3cmFwcGluZyBpbiBFZGdlIGFuZCBJRS5cbiAgICogMi4gQ29ycmVjdCB0aGUgY29sb3IgaW5oZXJpdGFuY2UgZnJvbSBgZmllbGRzZXRgIGVsZW1lbnRzIGluIElFLlxuICAgKiAzLiBSZW1vdmUgdGhlIHBhZGRpbmcgc28gZGV2ZWxvcGVycyBhcmUgbm90IGNhdWdodCBvdXQgd2hlbiB0aGV5IHplcm8gb3V0XG4gICAqICAgIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gYWxsIGJyb3dzZXJzLlxuICAgKi9cblxubGVnZW5kIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIC8qIDEgKi9cbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAvKiAyICovXG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgLyogMSAqL1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAvKiAxICovXG4gICAgcGFkZGluZzogMDtcbiAgICAvKiAzICovXG4gICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgICAvKiAxICovXG59XG5cbi8qKlxuICAgKiBBZGQgdGhlIGNvcnJlY3QgdmVydGljYWwgYWxpZ25tZW50IGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuICAgKi9cblxucHJvZ3Jlc3Mge1xuICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuLyoqXG4gICAqIFJlbW92ZSB0aGUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUgMTArLlxuICAgKi9cblxudGV4dGFyZWEge1xuICAgIG92ZXJmbG93OiBhdXRvO1xufVxuXG4vKipcbiAgICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gSUUgMTAuXG4gICAqIDIuIFJlbW92ZSB0aGUgcGFkZGluZyBpbiBJRSAxMC5cbiAgICovXG5cblt0eXBlPVwiY2hlY2tib3hcIl0sXG5bdHlwZT1cInJhZGlvXCJdIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIC8qIDEgKi9cbiAgICBwYWRkaW5nOiAwO1xuICAgIC8qIDIgKi9cbn1cblxuLyoqXG4gICAqIENvcnJlY3QgdGhlIGN1cnNvciBzdHlsZSBvZiBpbmNyZW1lbnQgYW5kIGRlY3JlbWVudCBidXR0b25zIGluIENocm9tZS5cbiAgICovXG5cblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICAgIGhlaWdodDogYXV0bztcbn1cblxuLyoqXG4gICAqIDEuIENvcnJlY3QgdGhlIG9kZCBhcHBlYXJhbmNlIGluIENocm9tZSBhbmQgU2FmYXJpLlxuICAgKiAyLiBDb3JyZWN0IHRoZSBvdXRsaW5lIHN0eWxlIGluIFNhZmFyaS5cbiAgICovXG5cblt0eXBlPVwic2VhcmNoXCJdIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDtcbiAgICAvKiAxICovXG4gICAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7XG4gICAgLyogMiAqL1xufVxuXG4vKipcbiAgICogUmVtb3ZlIHRoZSBpbm5lciBwYWRkaW5nIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIG1hY09TLlxuICAgKi9cblxuW3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLyoqXG4gICAqIDEuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gICAqIDIuIENoYW5nZSBmb250IHByb3BlcnRpZXMgdG8gYGluaGVyaXRgIGluIFNhZmFyaS5cbiAgICovXG5cbjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xuICAgIC8qIDEgKi9cbiAgICBmb250OiBpbmhlcml0O1xuICAgIC8qIDIgKi9cbn1cblxuLyogSW50ZXJhY3RpdmVcbiAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gRWRnZSwgSUUgMTArLCBhbmQgRmlyZWZveC5cbiAgICovXG5cbmRldGFpbHMge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKlxuICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBhbGwgYnJvd3NlcnMuXG4gICAqL1xuXG5zdW1tYXJ5IHtcbiAgICBkaXNwbGF5OiBsaXN0LWl0ZW07XG59XG5cbi8qIE1pc2NcbiAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwKy5cbiAgICovXG5cbnRlbXBsYXRlIHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuXG4vKipcbiAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTAuXG4gICAqL1xuXG5baGlkZGVuXSB7XG4gICAgZGlzcGxheTogbm9uZTtcbn0iLCIvKiBTbGlkZXIgKi9cblxuLnNsaWNrLXNsaWRlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xuICAgIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLWtodG1sLXVzZXItc2VsZWN0OiBub25lO1xuICAgIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgIC1tcy10b3VjaC1hY3Rpb246IHBhbi15O1xuICAgIHRvdWNoLWFjdGlvbjogcGFuLXk7XG4gICAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi5zbGljay1saXN0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgICY6Zm9jdXMge1xuICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgIH1cblxuICAgICYuZHJhZ2dhYmxlIHtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBjdXJzb3I6IGdyYWI7XG4gICAgfVxuXG4gICAgJi5kcmFnZ2luZyB7XG4gICAgICAgIGN1cnNvcjogZ3JhYmJpbmc7XG4gICAgfVxufVxuLnNsaWNrLXNsaWRlciAuc2xpY2stdHJhY2ssXG4uc2xpY2stc2xpZGVyIC5zbGljay1saXN0IHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbn1cblxuLnNsaWNrLXRyYWNrIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDA7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuXG4gICAgJjpiZWZvcmUsXG4gICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIH1cblxuICAgICY6YWZ0ZXIge1xuICAgICAgICBjbGVhcjogYm90aDtcbiAgICB9XG5cbiAgICAuc2xpY2stbG9hZGluZyAmIHtcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIH1cbn1cbi5zbGljay1zbGlkZSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG1pbi1oZWlnaHQ6IDFweDtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICB9XG4gICAgaW1nIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICAgICYuc2xpY2stbG9hZGluZyBpbWcge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgICYuZHJhZ2dpbmcgaW1nIHtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgfVxuXG4gICAgLnNsaWNrLWluaXRpYWxpemVkICYge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAuc2xpY2stbG9hZGluZyAmIHtcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIH1cblxuICAgIC5zbGljay12ZXJ0aWNhbCAmIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgfVxufVxuLnNsaWNrLWFycm93LnNsaWNrLWhpZGRlbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbn0iLCJib2R5LmNvbXBlbnNhdGUtZm9yLXNjcm9sbGJhciB7XG5cdG92ZXJmbG93OiBoaWRkZW47XG4gIH1cbiAgXG4gIC5mYW5jeWJveC1hY3RpdmUge1xuXHRoZWlnaHQ6IGF1dG87XG4gIH1cbiAgXG4gIC5mYW5jeWJveC1pcy1oaWRkZW4ge1xuXHRsZWZ0OiAtOTk5OXB4O1xuXHRtYXJnaW46IDA7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuXHR0b3A6IC05OTk5cHg7XG5cdHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxuICBcbiAgLmZhbmN5Ym94LWNvbnRhaW5lciB7XG5cdC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuXHRoZWlnaHQ6IDEwMCU7XG5cdGxlZnQ6IDA7XG5cdG91dGxpbmU6IG5vbmU7XG5cdHBvc2l0aW9uOiBmaXhlZDtcblx0LXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcblx0dG9wOiAwO1xuXHQtbXMtdG91Y2gtYWN0aW9uOiBtYW5pcHVsYXRpb247XG5cdHRvdWNoLWFjdGlvbjogbWFuaXB1bGF0aW9uO1xuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG5cdHdpZHRoOiAxMDAlO1xuXHR6LWluZGV4OiA5OTk5MjtcbiAgfVxuICBcbiAgLmZhbmN5Ym94LWNvbnRhaW5lciAqIHtcblx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcbiAgfVxuICBcbiAgLmZhbmN5Ym94LW91dGVyLFxuICAuZmFuY3lib3gtaW5uZXIsXG4gIC5mYW5jeWJveC1iZyxcbiAgLmZhbmN5Ym94LXN0YWdlIHtcblx0Ym90dG9tOiAwO1xuXHRsZWZ0OiAwO1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHJpZ2h0OiAwO1xuXHR0b3A6IDA7XG4gIH1cbiAgXG4gIC5mYW5jeWJveC1vdXRlciB7XG5cdC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcblx0b3ZlcmZsb3cteTogYXV0bztcbiAgfVxuICBcbiAgLmZhbmN5Ym94LWJnIHtcblx0YmFja2dyb3VuZDogcmdiKDMwLCAzMCwgMzApO1xuXHRvcGFjaXR5OiAwO1xuXHR0cmFuc2l0aW9uLWR1cmF0aW9uOiBpbmhlcml0O1xuXHR0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5O1xuXHR0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKC40NywgMCwgLjc0LCAuNzEpO1xuICB9XG4gIFxuICAuZmFuY3lib3gtaXMtb3BlbiAuZmFuY3lib3gtYmcge1xuXHRvcGFjaXR5OiAuOTtcblx0dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllciguMjIsIC42MSwgLjM2LCAxKTtcbiAgfVxuICBcbiAgLmZhbmN5Ym94LWluZm9iYXIsXG4gIC5mYW5jeWJveC10b29sYmFyLFxuICAuZmFuY3lib3gtY2FwdGlvbixcbiAgLmZhbmN5Ym94LW5hdmlnYXRpb24gLmZhbmN5Ym94LWJ1dHRvbiB7XG5cdGRpcmVjdGlvbjogbHRyO1xuXHRvcGFjaXR5OiAwO1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHRyYW5zaXRpb246IG9wYWNpdHkgLjI1cyBlYXNlLCB2aXNpYmlsaXR5IDBzIGVhc2UgLjI1cztcblx0dmlzaWJpbGl0eTogaGlkZGVuO1xuXHR6LWluZGV4OiA5OTk5NztcbiAgfVxuICBcbiAgLmZhbmN5Ym94LXNob3ctaW5mb2JhciAuZmFuY3lib3gtaW5mb2JhcixcbiAgLmZhbmN5Ym94LXNob3ctdG9vbGJhciAuZmFuY3lib3gtdG9vbGJhcixcbiAgLmZhbmN5Ym94LXNob3ctY2FwdGlvbiAuZmFuY3lib3gtY2FwdGlvbixcbiAgLmZhbmN5Ym94LXNob3ctbmF2IC5mYW5jeWJveC1uYXZpZ2F0aW9uIC5mYW5jeWJveC1idXR0b24ge1xuXHRvcGFjaXR5OiAxO1xuXHR0cmFuc2l0aW9uOiBvcGFjaXR5IC4yNXMgZWFzZSAwcywgdmlzaWJpbGl0eSAwcyBlYXNlIDBzO1xuXHR2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG4gIFxuICAuZmFuY3lib3gtaW5mb2JhciB7XG5cdGNvbG9yOiAjY2NjO1xuXHRmb250LXNpemU6IDEzcHg7XG5cdC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IHN1YnBpeGVsLWFudGlhbGlhc2VkO1xuXHRoZWlnaHQ6IDQ0cHg7XG5cdGxlZnQ6IDA7XG5cdGxpbmUtaGVpZ2h0OiA0NHB4O1xuXHRtaW4td2lkdGg6IDQ0cHg7XG5cdG1peC1ibGVuZC1tb2RlOiBkaWZmZXJlbmNlO1xuXHRwYWRkaW5nOiAwIDEwcHg7XG5cdHBvaW50ZXItZXZlbnRzOiBub25lO1xuXHR0b3A6IDA7XG5cdC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZTtcblx0LXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcblx0LW1vei11c2VyLXNlbGVjdDogbm9uZTtcblx0LW1zLXVzZXItc2VsZWN0OiBub25lO1xuXHR1c2VyLXNlbGVjdDogbm9uZTtcbiAgfVxuICBcbiAgLmZhbmN5Ym94LXRvb2xiYXIge1xuXHRyaWdodDogMDtcblx0dG9wOiAwO1xuICB9XG4gIFxuICAuZmFuY3lib3gtc3RhZ2Uge1xuXHRkaXJlY3Rpb246IGx0cjtcblx0b3ZlcmZsb3c6IHZpc2libGU7XG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcblx0ei1pbmRleDogOTk5OTQ7XG4gIH1cbiAgXG4gIC5mYW5jeWJveC1pcy1vcGVuIC5mYW5jeWJveC1zdGFnZSB7XG5cdG92ZXJmbG93OiBoaWRkZW47XG4gIH1cbiAgXG4gIC5mYW5jeWJveC1zbGlkZSB7XG5cdC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuXHQvKiBVc2luZyB3aXRob3V0IHByZWZpeCB3b3VsZCBicmVhayBJRTExICovXG5cdGRpc3BsYXk6IG5vbmU7XG5cdGhlaWdodDogMTAwJTtcblx0bGVmdDogMDtcblx0b3V0bGluZTogbm9uZTtcblx0b3ZlcmZsb3c6IGF1dG87XG5cdC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcblx0cGFkZGluZzogNDRweDtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdHRvcDogMDtcblx0dHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuXHR3aGl0ZS1zcGFjZTogbm9ybWFsO1xuXHR3aWR0aDogMTAwJTtcblx0ei1pbmRleDogOTk5OTQ7XG4gIH1cbiAgXG4gIC5mYW5jeWJveC1zbGlkZTo6YmVmb3JlIHtcblx0Y29udGVudDogJyc7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0Zm9udC1zaXplOiAwO1xuXHRoZWlnaHQ6IDEwMCU7XG5cdHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cdHdpZHRoOiAwO1xuICB9XG4gIFxuICAuZmFuY3lib3gtaXMtc2xpZGluZyAuZmFuY3lib3gtc2xpZGUsXG4gIC5mYW5jeWJveC1zbGlkZS0tcHJldmlvdXMsXG4gIC5mYW5jeWJveC1zbGlkZS0tY3VycmVudCxcbiAgLmZhbmN5Ym94LXNsaWRlLS1uZXh0IHtcblx0ZGlzcGxheTogYmxvY2s7XG4gIH1cbiAgXG4gIC5mYW5jeWJveC1zbGlkZS0taW1hZ2Uge1xuXHRvdmVyZmxvdzogaGlkZGVuO1xuXHRwYWRkaW5nOiA0NHB4IDA7XG4gIH1cbiAgXG4gIC5mYW5jeWJveC1zbGlkZS0taW1hZ2U6OmJlZm9yZSB7XG5cdGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgXG4gIC5mYW5jeWJveC1zbGlkZS0taHRtbCB7XG5cdHBhZGRpbmc6IDZweDtcbiAgfVxuICBcbiAgLmZhbmN5Ym94LWNvbnRlbnQge1xuXHRiYWNrZ3JvdW5kOiAjZmZmO1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdG1hcmdpbjogMDtcblx0bWF4LXdpZHRoOiAxMDAlO1xuXHRvdmVyZmxvdzogYXV0bztcblx0LXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuXHRwYWRkaW5nOiA0NHB4O1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHRleHQtYWxpZ246IGxlZnQ7XG5cdHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIH1cbiAgXG4gIC5mYW5jeWJveC1zbGlkZS0taW1hZ2UgLmZhbmN5Ym94LWNvbnRlbnQge1xuXHRhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoLjUsIDAsIC4xNCwgMSk7XG5cdC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuXHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcblx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0YmFja2dyb3VuZC1zaXplOiAxMDAlIDEwMCU7XG5cdGxlZnQ6IDA7XG5cdG1heC13aWR0aDogbm9uZTtcblx0b3ZlcmZsb3c6IHZpc2libGU7XG5cdHBhZGRpbmc6IDA7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0dG9wOiAwO1xuXHQtbXMtdHJhbnNmb3JtLW9yaWdpbjogdG9wIGxlZnQ7XG5cdHRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0O1xuXHR0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG5cdC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG5cdC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG5cdC1tcy11c2VyLXNlbGVjdDogbm9uZTtcblx0dXNlci1zZWxlY3Q6IG5vbmU7XG5cdHotaW5kZXg6IDk5OTk1O1xuICB9XG4gIFxuICAuZmFuY3lib3gtY2FuLXpvb21PdXQgLmZhbmN5Ym94LWNvbnRlbnQge1xuXHRjdXJzb3I6IHpvb20tb3V0O1xuICB9XG4gIFxuICAuZmFuY3lib3gtY2FuLXpvb21JbiAuZmFuY3lib3gtY29udGVudCB7XG5cdGN1cnNvcjogem9vbS1pbjtcbiAgfVxuICBcbiAgLmZhbmN5Ym94LWNhbi1zd2lwZSAuZmFuY3lib3gtY29udGVudCxcbiAgLmZhbmN5Ym94LWNhbi1wYW4gLmZhbmN5Ym94LWNvbnRlbnQge1xuXHRjdXJzb3I6IC13ZWJraXQtZ3JhYjtcblx0Y3Vyc29yOiBncmFiO1xuICB9XG4gIFxuICAuZmFuY3lib3gtaXMtZ3JhYmJpbmcgLmZhbmN5Ym94LWNvbnRlbnQge1xuXHRjdXJzb3I6IC13ZWJraXQtZ3JhYmJpbmc7XG5cdGN1cnNvcjogZ3JhYmJpbmc7XG4gIH1cbiAgXG4gIC5mYW5jeWJveC1jb250YWluZXIgW2RhdGEtc2VsZWN0YWJsZT0ndHJ1ZSddIHtcblx0Y3Vyc29yOiB0ZXh0O1xuICB9XG4gIFxuICAuZmFuY3lib3gtaW1hZ2UsXG4gIC5mYW5jeWJveC1zcGFjZWJhbGwge1xuXHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcblx0Ym9yZGVyOiAwO1xuXHRoZWlnaHQ6IDEwMCU7XG5cdGxlZnQ6IDA7XG5cdG1hcmdpbjogMDtcblx0bWF4LWhlaWdodDogbm9uZTtcblx0bWF4LXdpZHRoOiBub25lO1xuXHRwYWRkaW5nOiAwO1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHRvcDogMDtcblx0LXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcblx0LW1vei11c2VyLXNlbGVjdDogbm9uZTtcblx0LW1zLXVzZXItc2VsZWN0OiBub25lO1xuXHR1c2VyLXNlbGVjdDogbm9uZTtcblx0d2lkdGg6IDEwMCU7XG4gIH1cbiAgXG4gIC5mYW5jeWJveC1zcGFjZWJhbGwge1xuXHR6LWluZGV4OiAxO1xuICB9XG4gIFxuICAuZmFuY3lib3gtc2xpZGUtLXZpZGVvIC5mYW5jeWJveC1jb250ZW50LFxuICAuZmFuY3lib3gtc2xpZGUtLW1hcCAuZmFuY3lib3gtY29udGVudCxcbiAgLmZhbmN5Ym94LXNsaWRlLS1wZGYgLmZhbmN5Ym94LWNvbnRlbnQsXG4gIC5mYW5jeWJveC1zbGlkZS0taWZyYW1lIC5mYW5jeWJveC1jb250ZW50IHtcblx0aGVpZ2h0OiAxMDAlO1xuXHRvdmVyZmxvdzogdmlzaWJsZTtcblx0cGFkZGluZzogMDtcblx0d2lkdGg6IDEwMCU7XG4gIH1cbiAgXG4gIC5mYW5jeWJveC1zbGlkZS0tdmlkZW8gLmZhbmN5Ym94LWNvbnRlbnQge1xuXHRiYWNrZ3JvdW5kOiAjMDAwO1xuICB9XG4gIFxuICAuZmFuY3lib3gtc2xpZGUtLW1hcCAuZmFuY3lib3gtY29udGVudCB7XG5cdGJhY2tncm91bmQ6ICNlNWUzZGY7XG4gIH1cbiAgXG4gIC5mYW5jeWJveC1zbGlkZS0taWZyYW1lIC5mYW5jeWJveC1jb250ZW50IHtcblx0YmFja2dyb3VuZDogI2ZmZjtcbiAgfVxuICBcbiAgLmZhbmN5Ym94LXZpZGVvLFxuICAuZmFuY3lib3gtaWZyYW1lIHtcblx0YmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG5cdGJvcmRlcjogMDtcblx0ZGlzcGxheTogYmxvY2s7XG5cdGhlaWdodDogMTAwJTtcblx0bWFyZ2luOiAwO1xuXHRvdmVyZmxvdzogaGlkZGVuO1xuXHRwYWRkaW5nOiAwO1xuXHR3aWR0aDogMTAwJTtcbiAgfVxuICBcbiAgLyogRml4IGlPUyAqL1xuICAuZmFuY3lib3gtaWZyYW1lIHtcblx0bGVmdDogMDtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR0b3A6IDA7XG4gIH1cbiAgXG4gIC5mYW5jeWJveC1lcnJvciB7XG5cdGJhY2tncm91bmQ6ICNmZmY7XG5cdGN1cnNvcjogZGVmYXVsdDtcblx0bWF4LXdpZHRoOiA0MDBweDtcblx0cGFkZGluZzogNDBweDtcblx0d2lkdGg6IDEwMCU7XG4gIH1cbiAgXG4gIC5mYW5jeWJveC1lcnJvciBwIHtcblx0Y29sb3I6ICM0NDQ7XG5cdGZvbnQtc2l6ZTogMTZweDtcblx0bGluZS1oZWlnaHQ6IDIwcHg7XG5cdG1hcmdpbjogMDtcblx0cGFkZGluZzogMDtcbiAgfVxuICBcbiAgLyogQnV0dG9ucyAqL1xuICBcbiAgLmZhbmN5Ym94LWJ1dHRvbiB7XG5cdGJhY2tncm91bmQ6IHJnYmEoMzAsIDMwLCAzMCwgLjYpO1xuXHRib3JkZXI6IDA7XG5cdGJvcmRlci1yYWRpdXM6IDA7XG5cdGJveC1zaGFkb3c6IG5vbmU7XG5cdGN1cnNvcjogcG9pbnRlcjtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRoZWlnaHQ6IDQ0cHg7XG5cdG1hcmdpbjogMDtcblx0cGFkZGluZzogMTBweDtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHR0cmFuc2l0aW9uOiBjb2xvciAuMnM7XG5cdHZlcnRpY2FsLWFsaWduOiB0b3A7XG5cdHZpc2liaWxpdHk6IGluaGVyaXQ7XG5cdHdpZHRoOiA0NHB4O1xuICB9XG4gIFxuICAuZmFuY3lib3gtYnV0dG9uLFxuICAuZmFuY3lib3gtYnV0dG9uOnZpc2l0ZWQsXG4gIC5mYW5jeWJveC1idXR0b246bGluayB7XG5cdGNvbG9yOiAjY2NjO1xuICB9XG4gIFxuICAuZmFuY3lib3gtYnV0dG9uOmhvdmVyIHtcblx0Y29sb3I6ICNmZmY7XG4gIH1cbiAgXG4gIC5mYW5jeWJveC1idXR0b246Zm9jdXMge1xuXHRvdXRsaW5lOiBub25lO1xuICB9XG4gIFxuICAuZmFuY3lib3gtYnV0dG9uLmZhbmN5Ym94LWZvY3VzIHtcblx0b3V0bGluZTogMXB4IGRvdHRlZDtcbiAgfVxuICBcbiAgLmZhbmN5Ym94LWJ1dHRvbltkaXNhYmxlZF0sXG4gIC5mYW5jeWJveC1idXR0b25bZGlzYWJsZWRdOmhvdmVyIHtcblx0Y29sb3I6ICM4ODg7XG5cdGN1cnNvcjogZGVmYXVsdDtcblx0b3V0bGluZTogbm9uZTtcbiAgfVxuICBcbiAgLyogRml4IElFMTEgKi9cbiAgLmZhbmN5Ym94LWJ1dHRvbiBkaXYge1xuXHRoZWlnaHQ6IDEwMCU7XG4gIH1cbiAgXG4gIC5mYW5jeWJveC1idXR0b24gc3ZnIHtcblx0ZGlzcGxheTogYmxvY2s7XG5cdGhlaWdodDogMTAwJTtcblx0b3ZlcmZsb3c6IHZpc2libGU7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0d2lkdGg6IDEwMCU7XG4gIH1cbiAgXG4gIC5mYW5jeWJveC1idXR0b24gc3ZnIHBhdGgge1xuXHRmaWxsOiBjdXJyZW50Q29sb3I7XG5cdHN0cm9rZS13aWR0aDogMDtcbiAgfVxuICBcbiAgLmZhbmN5Ym94LWJ1dHRvbi0tcGxheSBzdmc6bnRoLWNoaWxkKDIpLFxuICAuZmFuY3lib3gtYnV0dG9uLS1mc2VudGVyIHN2ZzpudGgtY2hpbGQoMikge1xuXHRkaXNwbGF5OiBub25lO1xuICB9XG4gIFxuICAuZmFuY3lib3gtYnV0dG9uLS1wYXVzZSBzdmc6bnRoLWNoaWxkKDEpLFxuICAuZmFuY3lib3gtYnV0dG9uLS1mc2V4aXQgc3ZnOm50aC1jaGlsZCgxKSB7XG5cdGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgXG4gIC5mYW5jeWJveC1wcm9ncmVzcyB7XG5cdGJhY2tncm91bmQ6ICNmZjUyNjg7XG5cdGhlaWdodDogMnB4O1xuXHRsZWZ0OiAwO1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHJpZ2h0OiAwO1xuXHR0b3A6IDA7XG5cdC1tcy10cmFuc2Zvcm06IHNjYWxlWCgwKTtcblx0dHJhbnNmb3JtOiBzY2FsZVgoMCk7XG5cdC1tcy10cmFuc2Zvcm0tb3JpZ2luOiAwO1xuXHR0cmFuc2Zvcm0tb3JpZ2luOiAwO1xuXHR0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07XG5cdHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG5cdHotaW5kZXg6IDk5OTk4O1xuICB9XG4gIFxuICAvKiBDbG9zZSBidXR0b24gb24gdGhlIHRvcCByaWdodCBjb3JuZXIgb2YgaHRtbCBjb250ZW50ICovXG4gIFxuICAuZmFuY3lib3gtY2xvc2Utc21hbGwge1xuXHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcblx0Ym9yZGVyOiAwO1xuXHRib3JkZXItcmFkaXVzOiAwO1xuXHRjb2xvcjogI2NjYztcblx0Y3Vyc29yOiBwb2ludGVyO1xuXHRvcGFjaXR5OiAuODtcblx0cGFkZGluZzogOHB4O1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHJpZ2h0OiAtMTJweDtcblx0dG9wOiAtNDRweDtcblx0ei1pbmRleDogNDAxO1xuICB9XG4gIFxuICAuZmFuY3lib3gtY2xvc2Utc21hbGw6aG92ZXIge1xuXHRjb2xvcjogI2ZmZjtcblx0b3BhY2l0eTogMTtcbiAgfVxuICBcbiAgLmZhbmN5Ym94LXNsaWRlLS1odG1sIC5mYW5jeWJveC1jbG9zZS1zbWFsbCB7XG5cdGNvbG9yOiBjdXJyZW50Q29sb3I7XG5cdHBhZGRpbmc6IDEwcHg7XG5cdHJpZ2h0OiAwO1xuXHR0b3A6IDA7XG4gIH1cbiAgXG4gIC5mYW5jeWJveC1zbGlkZS0taW1hZ2UuZmFuY3lib3gtaXMtc2NhbGluZyAuZmFuY3lib3gtY29udGVudCB7XG5cdG92ZXJmbG93OiBoaWRkZW47XG4gIH1cbiAgXG4gIC5mYW5jeWJveC1pcy1zY2FsaW5nIC5mYW5jeWJveC1jbG9zZS1zbWFsbCxcbiAgLmZhbmN5Ym94LWlzLXpvb21hYmxlLmZhbmN5Ym94LWNhbi1wYW4gLmZhbmN5Ym94LWNsb3NlLXNtYWxsIHtcblx0ZGlzcGxheTogbm9uZTtcbiAgfVxuICBcbiAgLyogTmF2aWdhdGlvbiBhcnJvd3MgKi9cbiAgXG4gIC5mYW5jeWJveC1uYXZpZ2F0aW9uIC5mYW5jeWJveC1idXR0b24ge1xuXHRiYWNrZ3JvdW5kLWNsaXA6IGNvbnRlbnQtYm94O1xuXHRoZWlnaHQ6IDEwMHB4O1xuXHRvcGFjaXR5OiAwO1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHRvcDogY2FsYyg1MCUgLSA1MHB4KTtcblx0d2lkdGg6IDcwcHg7XG4gIH1cbiAgXG4gIC5mYW5jeWJveC1uYXZpZ2F0aW9uIC5mYW5jeWJveC1idXR0b24gZGl2IHtcblx0cGFkZGluZzogN3B4O1xuICB9XG4gIFxuICAuZmFuY3lib3gtbmF2aWdhdGlvbiAuZmFuY3lib3gtYnV0dG9uLS1hcnJvd19sZWZ0IHtcblx0bGVmdDogMDtcblx0bGVmdDogZW52KHNhZmUtYXJlYS1pbnNldC1sZWZ0KTtcblx0cGFkZGluZzogMzFweCAyNnB4IDMxcHggNnB4O1xuICB9XG4gIFxuICAuZmFuY3lib3gtbmF2aWdhdGlvbiAuZmFuY3lib3gtYnV0dG9uLS1hcnJvd19yaWdodCB7XG5cdHBhZGRpbmc6IDMxcHggNnB4IDMxcHggMjZweDtcblx0cmlnaHQ6IDA7XG5cdHJpZ2h0OiBlbnYoc2FmZS1hcmVhLWluc2V0LXJpZ2h0KTtcbiAgfVxuICBcbiAgLyogQ2FwdGlvbiAqL1xuICBcbiAgLmZhbmN5Ym94LWNhcHRpb24ge1xuXHRiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gdG9wLFxuXHRcdHJnYmEoMCwgMCwgMCwgLjg1KSAwJSxcblx0XHRyZ2JhKDAsIDAsIDAsIC4zKSA1MCUsXG5cdFx0cmdiYSgwLCAwLCAwLCAuMTUpIDY1JSxcblx0XHRyZ2JhKDAsIDAsIDAsIC4wNzUpIDc1LjUlLFxuXHRcdHJnYmEoMCwgMCwgMCwgLjAzNykgODIuODUlLFxuXHRcdHJnYmEoMCwgMCwgMCwgLjAxOSkgODglLFxuXHRcdHJnYmEoMCwgMCwgMCwgMCkgMTAwJSk7XG5cdGJvdHRvbTogMDtcblx0Y29sb3I6ICNlZWU7XG5cdGZvbnQtc2l6ZTogMTRweDtcblx0Zm9udC13ZWlnaHQ6IDQwMDtcblx0bGVmdDogMDtcblx0bGluZS1oZWlnaHQ6IDEuNTtcblx0cGFkZGluZzogNzVweCA0NHB4IDI1cHggNDRweDtcblx0cG9pbnRlci1ldmVudHM6IG5vbmU7XG5cdHJpZ2h0OiAwO1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdHotaW5kZXg6IDk5OTk2O1xuICB9XG4gIFxuICBAc3VwcG9ydHMgKHBhZGRpbmc6IG1heCgwcHgpKSB7XG5cdC5mYW5jeWJveC1jYXB0aW9uIHtcblx0XHRwYWRkaW5nOiA3NXB4IG1heCg0NHB4LCBlbnYoc2FmZS1hcmVhLWluc2V0LXJpZ2h0KSkgbWF4KDI1cHgsIGVudihzYWZlLWFyZWEtaW5zZXQtYm90dG9tKSkgbWF4KDQ0cHgsIGVudihzYWZlLWFyZWEtaW5zZXQtbGVmdCkpO1xuXHR9XG4gIH1cbiAgXG4gIC5mYW5jeWJveC1jYXB0aW9uLS1zZXBhcmF0ZSB7XG5cdG1hcmdpbi10b3A6IC01MHB4O1xuICB9XG4gIFxuICAuZmFuY3lib3gtY2FwdGlvbl9fYm9keSB7XG5cdG1heC1oZWlnaHQ6IDUwdmg7XG5cdG92ZXJmbG93OiBhdXRvO1xuXHRwb2ludGVyLWV2ZW50czogYWxsO1xuICB9XG4gIFxuICAuZmFuY3lib3gtY2FwdGlvbiBhLFxuICAuZmFuY3lib3gtY2FwdGlvbiBhOmxpbmssXG4gIC5mYW5jeWJveC1jYXB0aW9uIGE6dmlzaXRlZCB7XG5cdGNvbG9yOiAjY2NjO1xuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cbiAgXG4gIC5mYW5jeWJveC1jYXB0aW9uIGE6aG92ZXIge1xuXHRjb2xvcjogI2ZmZjtcblx0dGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIH1cbiAgXG4gIC8qIExvYWRpbmcgaW5kaWNhdG9yICovXG4gIFxuICAuZmFuY3lib3gtbG9hZGluZyB7XG5cdGFuaW1hdGlvbjogZmFuY3lib3gtcm90YXRlIDFzIGxpbmVhciBpbmZpbml0ZTtcblx0YmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG5cdGJvcmRlcjogNHB4IHNvbGlkICM4ODg7XG5cdGJvcmRlci1ib3R0b20tY29sb3I6ICNmZmY7XG5cdGJvcmRlci1yYWRpdXM6IDUwJTtcblx0aGVpZ2h0OiA1MHB4O1xuXHRsZWZ0OiA1MCU7XG5cdG1hcmdpbjogLTI1cHggMCAwIC0yNXB4O1xuXHRvcGFjaXR5OiAuNztcblx0cGFkZGluZzogMDtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR0b3A6IDUwJTtcblx0d2lkdGg6IDUwcHg7XG5cdHotaW5kZXg6IDk5OTk5O1xuICB9XG4gIFxuICBAa2V5ZnJhbWVzIGZhbmN5Ym94LXJvdGF0ZSB7XG5cdDEwMCUge1xuXHRcdHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG5cdH1cbiAgfVxuICBcbiAgLyogVHJhbnNpdGlvbiBlZmZlY3RzICovXG4gIFxuICAuZmFuY3lib3gtYW5pbWF0ZWQge1xuXHR0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAsIDAsIC4yNSwgMSk7XG4gIH1cbiAgXG4gIC8qIHRyYW5zaXRpb25FZmZlY3Q6IHNsaWRlICovXG4gIFxuICAuZmFuY3lib3gtZngtc2xpZGUuZmFuY3lib3gtc2xpZGUtLXByZXZpb3VzIHtcblx0b3BhY2l0eTogMDtcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7XG4gIH1cbiAgXG4gIC5mYW5jeWJveC1meC1zbGlkZS5mYW5jeWJveC1zbGlkZS0tbmV4dCB7XG5cdG9wYWNpdHk6IDA7XG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7XG4gIH1cbiAgXG4gIC5mYW5jeWJveC1meC1zbGlkZS5mYW5jeWJveC1zbGlkZS0tY3VycmVudCB7XG5cdG9wYWNpdHk6IDE7XG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIH1cbiAgXG4gIC8qIHRyYW5zaXRpb25FZmZlY3Q6IGZhZGUgKi9cbiAgXG4gIC5mYW5jeWJveC1meC1mYWRlLmZhbmN5Ym94LXNsaWRlLS1wcmV2aW91cyxcbiAgLmZhbmN5Ym94LWZ4LWZhZGUuZmFuY3lib3gtc2xpZGUtLW5leHQge1xuXHRvcGFjaXR5OiAwO1xuXHR0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKC4xOSwgMSwgLjIyLCAxKTtcbiAgfVxuICBcbiAgLmZhbmN5Ym94LWZ4LWZhZGUuZmFuY3lib3gtc2xpZGUtLWN1cnJlbnQge1xuXHRvcGFjaXR5OiAxO1xuICB9XG4gIFxuICAvKiB0cmFuc2l0aW9uRWZmZWN0OiB6b29tLWluLW91dCAqL1xuICBcbiAgLmZhbmN5Ym94LWZ4LXpvb20taW4tb3V0LmZhbmN5Ym94LXNsaWRlLS1wcmV2aW91cyB7XG5cdG9wYWNpdHk6IDA7XG5cdHRyYW5zZm9ybTogc2NhbGUzZCgxLjUsIDEuNSwgMS41KTtcbiAgfVxuICBcbiAgLmZhbmN5Ym94LWZ4LXpvb20taW4tb3V0LmZhbmN5Ym94LXNsaWRlLS1uZXh0IHtcblx0b3BhY2l0eTogMDtcblx0dHJhbnNmb3JtOiBzY2FsZTNkKC41LCAuNSwgLjUpO1xuICB9XG4gIFxuICAuZmFuY3lib3gtZngtem9vbS1pbi1vdXQuZmFuY3lib3gtc2xpZGUtLWN1cnJlbnQge1xuXHRvcGFjaXR5OiAxO1xuXHR0cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XG4gIH1cbiAgXG4gIC8qIHRyYW5zaXRpb25FZmZlY3Q6IHJvdGF0ZSAqL1xuICBcbiAgLmZhbmN5Ym94LWZ4LXJvdGF0ZS5mYW5jeWJveC1zbGlkZS0tcHJldmlvdXMge1xuXHRvcGFjaXR5OiAwO1xuXHQtbXMtdHJhbnNmb3JtOiByb3RhdGUoLTM2MGRlZyk7XG5cdHRyYW5zZm9ybTogcm90YXRlKC0zNjBkZWcpO1xuICB9XG4gIFxuICAuZmFuY3lib3gtZngtcm90YXRlLmZhbmN5Ym94LXNsaWRlLS1uZXh0IHtcblx0b3BhY2l0eTogMDtcblx0LW1zLXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG5cdHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gIH1cbiAgXG4gIC5mYW5jeWJveC1meC1yb3RhdGUuZmFuY3lib3gtc2xpZGUtLWN1cnJlbnQge1xuXHRvcGFjaXR5OiAxO1xuXHQtbXMtdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG5cdHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICB9XG4gIFxuICAvKiB0cmFuc2l0aW9uRWZmZWN0OiBjaXJjdWxhciAqL1xuICBcbiAgLmZhbmN5Ym94LWZ4LWNpcmN1bGFyLmZhbmN5Ym94LXNsaWRlLS1wcmV2aW91cyB7XG5cdG9wYWNpdHk6IDA7XG5cdHRyYW5zZm9ybTogc2NhbGUzZCgwLCAwLCAwKSB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7XG4gIH1cbiAgXG4gIC5mYW5jeWJveC1meC1jaXJjdWxhci5mYW5jeWJveC1zbGlkZS0tbmV4dCB7XG5cdG9wYWNpdHk6IDA7XG5cdHRyYW5zZm9ybTogc2NhbGUzZCgwLCAwLCAwKSB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcbiAgfVxuICBcbiAgLmZhbmN5Ym94LWZ4LWNpcmN1bGFyLmZhbmN5Ym94LXNsaWRlLS1jdXJyZW50IHtcblx0b3BhY2l0eTogMTtcblx0dHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpIHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB9XG4gIFxuICAvKiB0cmFuc2l0aW9uRWZmZWN0OiB0dWJlICovXG4gIFxuICAuZmFuY3lib3gtZngtdHViZS5mYW5jeWJveC1zbGlkZS0tcHJldmlvdXMge1xuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKSBzY2FsZSguMSkgc2tldygtMTBkZWcpO1xuICB9XG4gIFxuICAuZmFuY3lib3gtZngtdHViZS5mYW5jeWJveC1zbGlkZS0tbmV4dCB7XG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCkgc2NhbGUoLjEpIHNrZXcoMTBkZWcpO1xuICB9XG4gIFxuICAuZmFuY3lib3gtZngtdHViZS5mYW5jeWJveC1zbGlkZS0tY3VycmVudCB7XG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCkgc2NhbGUoMSk7XG4gIH1cbiAgXG4gIC8qIFN0eWxpbmcgZm9yIFNtYWxsLVNjcmVlbiBEZXZpY2VzICovXG4gIEBtZWRpYSBhbGwgYW5kIChtYXgtaGVpZ2h0OiA1NzZweCkge1xuXHQuZmFuY3lib3gtc2xpZGUge1xuXHRcdHBhZGRpbmctbGVmdDogNnB4O1xuXHRcdHBhZGRpbmctcmlnaHQ6IDZweDtcblx0fVxuICBcblx0LmZhbmN5Ym94LXNsaWRlLS1pbWFnZSB7XG5cdFx0cGFkZGluZzogNnB4IDA7XG5cdH1cbiAgXG5cdC5mYW5jeWJveC1jbG9zZS1zbWFsbCB7XG5cdFx0cmlnaHQ6IC02cHg7XG5cdH1cbiAgXG5cdC5mYW5jeWJveC1zbGlkZS0taW1hZ2UgLmZhbmN5Ym94LWNsb3NlLXNtYWxsIHtcblx0XHRiYWNrZ3JvdW5kOiAjNGU0ZTRlO1xuXHRcdGNvbG9yOiAjZjJmNGY2O1xuXHRcdGhlaWdodDogMzZweDtcblx0XHRvcGFjaXR5OiAxO1xuXHRcdHBhZGRpbmc6IDZweDtcblx0XHRyaWdodDogMDtcblx0XHR0b3A6IDA7XG5cdFx0d2lkdGg6IDM2cHg7XG5cdH1cbiAgXG5cdC5mYW5jeWJveC1jYXB0aW9uIHtcblx0XHRwYWRkaW5nLWxlZnQ6IDEycHg7XG5cdFx0cGFkZGluZy1yaWdodDogMTJweDtcblx0fVxuICBcblx0QHN1cHBvcnRzIChwYWRkaW5nOiBtYXgoMHB4KSkge1xuXHRcdC5mYW5jeWJveC1jYXB0aW9uIHtcblx0XHRcdHBhZGRpbmctbGVmdDogbWF4KDEycHgsIGVudihzYWZlLWFyZWEtaW5zZXQtbGVmdCkpO1xuXHRcdFx0cGFkZGluZy1yaWdodDogbWF4KDEycHgsIGVudihzYWZlLWFyZWEtaW5zZXQtcmlnaHQpKTtcblx0XHR9XG5cdH1cbiAgfVxuICAvKiBTaGFyZSAqL1xuICBcbiAgLmZhbmN5Ym94LXNoYXJlIHtcblx0YmFja2dyb3VuZDogI2Y0ZjRmNDtcblx0Ym9yZGVyLXJhZGl1czogM3B4O1xuXHRtYXgtd2lkdGg6IDkwJTtcblx0cGFkZGluZzogMzBweDtcblx0dGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG4gIFxuICAuZmFuY3lib3gtc2hhcmUgaDEge1xuXHRjb2xvcjogIzIyMjtcblx0Zm9udC1zaXplOiAzNXB4O1xuXHRmb250LXdlaWdodDogNzAwO1xuXHRtYXJnaW46IDAgMCAyMHB4IDA7XG4gIH1cbiAgXG4gIC5mYW5jeWJveC1zaGFyZSBwIHtcblx0bWFyZ2luOiAwO1xuXHRwYWRkaW5nOiAwO1xuICB9XG4gIFxuICAuZmFuY3lib3gtc2hhcmVfX2J1dHRvbiB7XG5cdGJvcmRlcjogMDtcblx0Ym9yZGVyLXJhZGl1czogM3B4O1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdGZvbnQtc2l6ZTogMTRweDtcblx0Zm9udC13ZWlnaHQ6IDcwMDtcblx0bGluZS1oZWlnaHQ6IDQwcHg7XG5cdG1hcmdpbjogMCA1cHggMTBweCA1cHg7XG5cdG1pbi13aWR0aDogMTMwcHg7XG5cdHBhZGRpbmc6IDAgMTVweDtcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHR0cmFuc2l0aW9uOiBhbGwgLjJzO1xuXHQtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuXHQtbW96LXVzZXItc2VsZWN0OiBub25lO1xuXHQtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG5cdHVzZXItc2VsZWN0OiBub25lO1xuXHR3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB9XG4gIFxuICAuZmFuY3lib3gtc2hhcmVfX2J1dHRvbjp2aXNpdGVkLFxuICAuZmFuY3lib3gtc2hhcmVfX2J1dHRvbjpsaW5rIHtcblx0Y29sb3I6ICNmZmY7XG4gIH1cbiAgXG4gIC5mYW5jeWJveC1zaGFyZV9fYnV0dG9uOmhvdmVyIHtcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG4gIFxuICAuZmFuY3lib3gtc2hhcmVfX2J1dHRvbi0tZmIge1xuXHRiYWNrZ3JvdW5kOiAjM2I1OTk4O1xuICB9XG4gIFxuICAuZmFuY3lib3gtc2hhcmVfX2J1dHRvbi0tZmI6aG92ZXIge1xuXHRiYWNrZ3JvdW5kOiAjMzQ0ZTg2O1xuICB9XG4gIFxuICAuZmFuY3lib3gtc2hhcmVfX2J1dHRvbi0tcHQge1xuXHRiYWNrZ3JvdW5kOiAjYmQwODFkO1xuICB9XG4gIFxuICAuZmFuY3lib3gtc2hhcmVfX2J1dHRvbi0tcHQ6aG92ZXIge1xuXHRiYWNrZ3JvdW5kOiAjYWEwNzE5O1xuICB9XG4gIFxuICAuZmFuY3lib3gtc2hhcmVfX2J1dHRvbi0tdHcge1xuXHRiYWNrZ3JvdW5kOiAjMWRhMWYyO1xuICB9XG4gIFxuICAuZmFuY3lib3gtc2hhcmVfX2J1dHRvbi0tdHc6aG92ZXIge1xuXHRiYWNrZ3JvdW5kOiAjMGQ5NWU4O1xuICB9XG4gIFxuICAuZmFuY3lib3gtc2hhcmVfX2J1dHRvbiBzdmcge1xuXHRoZWlnaHQ6IDI1cHg7XG5cdG1hcmdpbi1yaWdodDogN3B4O1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHRvcDogLTFweDtcblx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcblx0d2lkdGg6IDI1cHg7XG4gIH1cbiAgXG4gIC5mYW5jeWJveC1zaGFyZV9fYnV0dG9uIHN2ZyBwYXRoIHtcblx0ZmlsbDogI2ZmZjtcbiAgfVxuICBcbiAgLmZhbmN5Ym94LXNoYXJlX19pbnB1dCB7XG5cdGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuXHRib3JkZXI6IDA7XG5cdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZDdkN2Q3O1xuXHRib3JkZXItcmFkaXVzOiAwO1xuXHRjb2xvcjogIzVkNWI1Yjtcblx0Zm9udC1zaXplOiAxNHB4O1xuXHRtYXJnaW46IDEwcHggMCAwIDA7XG5cdG91dGxpbmU6IG5vbmU7XG5cdHBhZGRpbmc6IDEwcHggMTVweDtcblx0d2lkdGg6IDEwMCU7XG4gIH1cbiAgLyogVGh1bWJzICovXG4gIFxuICAuZmFuY3lib3gtdGh1bWJzIHtcblx0YmFja2dyb3VuZDogI2RkZDtcblx0Ym90dG9tOiAwO1xuXHRkaXNwbGF5OiBub25lO1xuXHRtYXJnaW46IDA7XG5cdC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcblx0LW1zLW92ZXJmbG93LXN0eWxlOiAtbXMtYXV0b2hpZGluZy1zY3JvbGxiYXI7XG5cdHBhZGRpbmc6IDJweCAycHggNHB4IDJweDtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHRyaWdodDogMDtcblx0LXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKDAsIDAsIDAsIDApO1xuXHR0b3A6IDA7XG5cdHdpZHRoOiAyMTJweDtcblx0ei1pbmRleDogOTk5OTU7XG4gIH1cbiAgXG4gIC5mYW5jeWJveC10aHVtYnMteCB7XG5cdG92ZXJmbG93LXg6IGF1dG87XG5cdG92ZXJmbG93LXk6IGhpZGRlbjtcbiAgfVxuICBcbiAgLmZhbmN5Ym94LXNob3ctdGh1bWJzIC5mYW5jeWJveC10aHVtYnMge1xuXHRkaXNwbGF5OiBibG9jaztcbiAgfVxuICBcbiAgLmZhbmN5Ym94LXNob3ctdGh1bWJzIC5mYW5jeWJveC1pbm5lciB7XG5cdHJpZ2h0OiAyMTJweDtcbiAgfVxuICBcbiAgLmZhbmN5Ym94LXRodW1ic19fbGlzdCB7XG5cdGZvbnQtc2l6ZTogMDtcblx0aGVpZ2h0OiAxMDAlO1xuXHRsaXN0LXN0eWxlOiBub25lO1xuXHRtYXJnaW46IDA7XG5cdG92ZXJmbG93LXg6IGhpZGRlbjtcblx0b3ZlcmZsb3cteTogYXV0bztcblx0cGFkZGluZzogMDtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cdHdpZHRoOiAxMDAlO1xuICB9XG4gIFxuICAuZmFuY3lib3gtdGh1bWJzLXggLmZhbmN5Ym94LXRodW1ic19fbGlzdCB7XG5cdG92ZXJmbG93OiBoaWRkZW47XG4gIH1cbiAgXG4gIC5mYW5jeWJveC10aHVtYnMteSAuZmFuY3lib3gtdGh1bWJzX19saXN0Ojotd2Via2l0LXNjcm9sbGJhciB7XG5cdHdpZHRoOiA3cHg7XG4gIH1cbiAgXG4gIC5mYW5jeWJveC10aHVtYnMteSAuZmFuY3lib3gtdGh1bWJzX19saXN0Ojotd2Via2l0LXNjcm9sbGJhci10cmFjayB7XG5cdGJhY2tncm91bmQ6ICNmZmY7XG5cdGJvcmRlci1yYWRpdXM6IDEwcHg7XG5cdGJveC1zaGFkb3c6IGluc2V0IDAgMCA2cHggcmdiYSgwLCAwLCAwLCAuMyk7XG4gIH1cbiAgXG4gIC5mYW5jeWJveC10aHVtYnMteSAuZmFuY3lib3gtdGh1bWJzX19saXN0Ojotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XG5cdGJhY2tncm91bmQ6ICMyYTJhMmE7XG5cdGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gIH1cbiAgXG4gIC5mYW5jeWJveC10aHVtYnNfX2xpc3QgYSB7XG5cdC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuXHRiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG5cdGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgLjEpO1xuXHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuXHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuXHRjdXJzb3I6IHBvaW50ZXI7XG5cdGZsb2F0OiBsZWZ0O1xuXHRoZWlnaHQ6IDc1cHg7XG5cdG1hcmdpbjogMnB4O1xuXHRtYXgtaGVpZ2h0OiBjYWxjKDEwMCUgLSA4cHgpO1xuXHRtYXgtd2lkdGg6IGNhbGMoNTAlIC0gNHB4KTtcblx0b3V0bGluZTogbm9uZTtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0cGFkZGluZzogMDtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHQtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuXHR3aWR0aDogMTAwcHg7XG4gIH1cbiAgXG4gIC5mYW5jeWJveC10aHVtYnNfX2xpc3QgYTo6YmVmb3JlIHtcblx0Ym9yZGVyOiA2cHggc29saWQgI2ZmNTI2ODtcblx0Ym90dG9tOiAwO1xuXHRjb250ZW50OiAnJztcblx0bGVmdDogMDtcblx0b3BhY2l0eTogMDtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHRyaWdodDogMDtcblx0dG9wOiAwO1xuXHR0cmFuc2l0aW9uOiBhbGwgLjJzIGN1YmljLWJlemllciguMjUsIC40NiwgLjQ1LCAuOTQpO1xuXHR6LWluZGV4OiA5OTk5MTtcbiAgfVxuICBcbiAgLmZhbmN5Ym94LXRodW1ic19fbGlzdCBhOmZvY3VzOjpiZWZvcmUge1xuXHRvcGFjaXR5OiAuNTtcbiAgfVxuICBcbiAgLmZhbmN5Ym94LXRodW1ic19fbGlzdCBhLmZhbmN5Ym94LXRodW1icy1hY3RpdmU6OmJlZm9yZSB7XG5cdG9wYWNpdHk6IDE7XG4gIH1cbiAgXG4gIC8qIFN0eWxpbmcgZm9yIFNtYWxsLVNjcmVlbiBEZXZpY2VzICovXG4gIEBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDU3NnB4KSB7XG5cdC5mYW5jeWJveC10aHVtYnMge1xuXHRcdHdpZHRoOiAxMTBweDtcblx0fVxuICBcblx0LmZhbmN5Ym94LXNob3ctdGh1bWJzIC5mYW5jeWJveC1pbm5lciB7XG5cdFx0cmlnaHQ6IDExMHB4O1xuXHR9XG4gIFxuXHQuZmFuY3lib3gtdGh1bWJzX19saXN0IGEge1xuXHRcdG1heC13aWR0aDogY2FsYygxMDAlIC0gMTBweCk7XG5cdH1cbiAgfSIsIkB1c2UgJy4uL2Fic3RyYWN0cy8nIGFzICo7XG5cbmh0bWwge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xufVxuXG4qLFxuKjpiZWZvcmUsXG4qOmFmdGVyIHtcbiAgICBib3gtc2l6aW5nOiBpbmhlcml0O1xufVxuXG4qIHtcbiAgICBtYXgtaGVpZ2h0OiAxMDAwMDAwcHg7XG59XG5cbi8vLSBIVE1MNSBkaXNwbGF5LXJvbGUgcmVzZXQgZm9yIG9sZGVyIGJyb3dzZXJzXG5tYWluLFxuYXJ0aWNsZSxcbmFzaWRlLFxuZGV0YWlscyxcbmZpZ2NhcHRpb24sXG5maWd1cmUsXG5mb290ZXIsXG5oZWFkZXIsXG5oZ3JvdXAsXG5tZW51LFxubmF2LFxuc2VjdGlvbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG59XG5cbnVsLFxub2wsXG5kbCxcbnAsXG5oMSxcbmgyLFxuaDMsXG5oNCxcbmg1LFxuaDYsXG5hZGRyZXNzLFxuZm9ybSxcbnRhYmxlLFxuYmxvY2txdW90ZSxcbmFwcGxldCxcbmVtYmVkLFxub2JqZWN0LFxuaWZyYW1lLFxuZnJhbWVzZXQge1xuICAgIG1hcmdpbjogMCAwICR2ZXJ0aWNhbC1yaHl0aG07XG59XG5cbmJsb2NrcXVvdGUge1xuICAgIGJvcmRlci1sZWZ0OiA0cHggc29saWQgJGdyYXk7XG4gICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xufVxuXG50YWJsZSB7XG4gICAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbn1cblxudGgsXG50ZCB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJGdyYXk7XG4gICAgcGFkZGluZzogM3B4O1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbn1cblxudGgge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG51bCxcbm9sIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG59XG5cbnVsIHVsLFxudWwgb2wsXG5vbCB1bCxcbm9sIG9sIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgbWFyZ2luOiAwO1xufVxuXG51bCB7XG4gICAgbGlzdC1zdHlsZS10eXBlOiBkaXNjO1xufVxuXG5kbCB7XG4gICAgQGV4dGVuZCAlY2xlYXJmaXggIW9wdGlvbmFsO1xuXG4gICAgZHQge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgY2xlYXI6IGxlZnQ7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuM2VtO1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICB9XG5cbiAgICBkZCB7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgfVxufVxuXG5wcmUge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBvdmVyZmxvdzogYXV0bztcbn1cblxuYm9keSB7XG4gICAgY29sb3I6ICRiYXNlLXRleHQtY29sb3I7XG4gICAgYmFja2dyb3VuZDogJGJhc2UtYmFja2dyb3VuZC1ib2R5O1xuICAgIGZvbnQ6ICN7JGZvbnQtc2l6ZS1zbX0vI3skbGluZS1oZWlnaHQtc219ICRiYXNlLWZvbnQtZmFtaWx5O1xuICAgIG1pbi13aWR0aDogJGJhc2UtbWluLXdpZHRoO1xuICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gICAgbWFyZ2luOiAwO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoJ+KJpXRhYmxldCcpIHtcbiAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2U7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgICB9XG5cblx0QGluY2x1ZGUgbWVkaWEoJz49ZGVza3RvcCcpIHtcblx0XHRmb250LXNpemU6ICRmb250LXNpemUtYmFzZS1sYWdyZTtcbiAgICAgICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlLWxhZ3JlO1xuXHR9XG59XG5cbi8vIGFkYXB0aXZlIGltYWdlc1xuaW1nIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4vLyBnb29nbGUgbWFwIGZpeFxuLmdtLXN0eWxlIGltZyB7XG4gICAgbWF4LXdpZHRoOiBub25lO1xufVxuXG5pZnJhbWUge1xuICAgIG1heC13aWR0aDogMTAwJTtcbn1cblxuLnJlc2l6ZS1hY3RpdmUgKiB7XG4gICAgdHJhbnNpdGlvbjogbm9uZSAhaW1wb3J0YW50O1xufSIsIi8vIENvbG9yc1xuLy8gQ29sb3IgY2FsY3VsYXRvciAtIGh0dHA6Ly9yYXpvcmphbS5naXRodWIuaW8vc2Fzc2NvbG91cmZ1bmN0aW9uY2FsY3VsYXRvci9cbi8vIENvbG9yIG5hbWVzIC0gaHR0cDovL25hbWUtb2YtY29sb3IuY29tL1xuLy8gQ29sb3Igc3lzdGVtXG5cbkB1c2UgXCJzYXNzOm1hcFwiO1xuQHVzZSBcInNhc3M6Y29sb3JcIjtcblxuJHdoaXRlOiAjZmZmICFkZWZhdWx0O1xuJGdyYXk6ICNkZGQgIWRlZmF1bHQ7XG4kZ3JheS0xMDA6ICNmOGY5ZmEgIWRlZmF1bHQ7XG4kZ3JheS0yMDA6ICNlOWVjZWYgIWRlZmF1bHQ7XG4kZ3JheS0zMDA6ICNkZWUyZTYgIWRlZmF1bHQ7XG4kZ3JheS00MDA6ICNjZWQ0ZGEgIWRlZmF1bHQ7XG4kZ3JheS01MDA6ICNhZGI1YmQgIWRlZmF1bHQ7XG4kZ3JheS02MDA6ICM2Yzc1N2QgIWRlZmF1bHQ7XG4kZ3JheS03MDA6ICM0OTUwNTcgIWRlZmF1bHQ7XG4kZ3JheS04MDA6ICMzNDNhNDAgIWRlZmF1bHQ7XG4kZ3JheS05MDA6ICMyMTI1MjkgIWRlZmF1bHQ7XG4kYmxhY2s6ICMwMDAgIWRlZmF1bHQ7XG5cbiRncmF5czogKFxuICAgICkgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdFxuJGdyYXlzOiBtYXAubWVyZ2UoKFwiMTAwXCI6ICRncmF5LTEwMCxcbiAgICAgICAgICAgIFwiMjAwXCI6ICRncmF5LTIwMCxcbiAgICAgICAgICAgIFwiMzAwXCI6ICRncmF5LTMwMCxcbiAgICAgICAgICAgIFwiNDAwXCI6ICRncmF5LTQwMCxcbiAgICAgICAgICAgIFwiNTAwXCI6ICRncmF5LTUwMCxcbiAgICAgICAgICAgIFwiNjAwXCI6ICRncmF5LTYwMCxcbiAgICAgICAgICAgIFwiNzAwXCI6ICRncmF5LTcwMCxcbiAgICAgICAgICAgIFwiODAwXCI6ICRncmF5LTgwMCxcbiAgICAgICAgICAgIFwiOTAwXCI6ICRncmF5LTkwMCApLFxuICAgICAgICAkZ3JheXNcbik7XG5cbiRibHVlOiAjMDAzQTVEICFkZWZhdWx0O1xuJGluZGlnbzogIzY2MTBmMiAhZGVmYXVsdDtcbiRwdXJwbGU6ICM2ZjQyYzEgIWRlZmF1bHQ7XG4kcGluazogI2U4M2U4YyAhZGVmYXVsdDtcbiRyZWQ6ICNENzI4MkYgIWRlZmF1bHQ7XG4kb3JhbmdlOiAjZmQ3ZTE0ICFkZWZhdWx0O1xuJHllbGxvdzogI2ZmYzEwNyAhZGVmYXVsdDtcbiRncmVlbjogIzI4YTc0NSAhZGVmYXVsdDtcbiR0ZWFsOiAjMjBjOTk3ICFkZWZhdWx0O1xuJGN5YW46ICMxN2EyYjggIWRlZmF1bHQ7XG5cbiRjb2xvcnM6ICgpICFkZWZhdWx0O1xuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNjc3MvZG9sbGFyLXZhcmlhYmxlLWRlZmF1bHRcbiRjb2xvcnM6IG1hcC5tZXJnZShcblx0XHQoXCJibHVlXCI6ICRibHVlLFxuICAgICAgICAgICAgXCJpbmRpZ29cIjogJGluZGlnbyxcbiAgICAgICAgICAgIFwicHVycGxlXCI6ICRwdXJwbGUsXG4gICAgICAgICAgICBcInBpbmtcIjogJHBpbmssXG4gICAgICAgICAgICBcInJlZFwiOiAkcmVkLFxuICAgICAgICAgICAgXCJvcmFuZ2VcIjogJG9yYW5nZSxcbiAgICAgICAgICAgIFwieWVsbG93XCI6ICR5ZWxsb3csXG4gICAgICAgICAgICBcImdyZWVuXCI6ICRncmVlbixcbiAgICAgICAgICAgIFwidGVhbFwiOiAkdGVhbCxcbiAgICAgICAgICAgIFwiY3lhblwiOiAkY3lhbixcbiAgICAgICAgICAgIFwid2hpdGVcIjogJHdoaXRlLFxuICAgICAgICAgICAgXCJncmF5XCI6ICRncmF5LTYwMCxcbiAgICAgICAgICAgIFwiZ3JheS1kYXJrXCI6ICRncmF5LTgwMCApLFxuICAgICAgICAkY29sb3JzXG4pO1xuXG4kcHJpbWFyeTogJGJsdWUgIWRlZmF1bHQ7XG4kc2Vjb25kYXJ5OiAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kc3VjY2VzczogJGdyZWVuICFkZWZhdWx0O1xuJGluZm86ICRjeWFuICFkZWZhdWx0O1xuJHdhcm5pbmc6ICR5ZWxsb3cgIWRlZmF1bHQ7XG4kZGFuZ2VyOiAkcmVkICFkZWZhdWx0O1xuJGxpZ2h0OiAkZ3JheS0xMDAgIWRlZmF1bHQ7XG4kZGFyazogJGdyYXktODAwICFkZWZhdWx0O1xuXG4kdGhlbWUtY29sb3JzOiAoKSAhZGVmYXVsdDtcblxuJHRoZW1lLWNvbG9yczogbWFwLm1lcmdlKChcInByaW1hcnlcIjogJHByaW1hcnksXG4gICAgICAgICAgICBcInNlY29uZGFyeVwiOiAkc2Vjb25kYXJ5LFxuICAgICAgICAgICAgXCJzdWNjZXNzXCI6ICRzdWNjZXNzLFxuICAgICAgICAgICAgXCJpbmZvXCI6ICRpbmZvLFxuICAgICAgICAgICAgXCJ3YXJuaW5nXCI6ICR3YXJuaW5nLFxuICAgICAgICAgICAgXCJkYW5nZXJcIjogJGRhbmdlcixcbiAgICAgICAgICAgIFwibGlnaHRcIjogJGxpZ2h0LFxuICAgICAgICAgICAgXCJkYXJrXCI6ICRkYXJrICksXG4gICAgICAgICR0aGVtZS1jb2xvcnNcbik7XG5cbi8vIGZvbnRzIG5hbWVcbiRiYXNlLWZvbnQtc2Fucy1zZXJpZjogJ09zd2FsZCcgLCAnQXJpYWwnLCAnSGVsdmV0aWNhIE5ldWUnLCAnSGVsdmV0aWNhJywgc2Fucy1zZXJpZjtcbiRzZWNvbmRhcnktZm9udC1zYW5zLXNlcmlmOiAnTGlicmUgRnJhbmtsaW4nICwgJGJhc2UtZm9udC1zYW5zLXNlcmlmO1xuJG1vbnRzZXJyYXQtZm9udC1zYW5zLXNlcmlmOiAnTW9udHNlcnJhdCcgLCAkYmFzZS1mb250LXNhbnMtc2VyaWY7XG4kYmFzZS1mb250LXNlcmlmOiAnVGltZXMgTmV3IFJvbWFuJywgJ1RpbWVzJywgJ0Jhc2tlcnZpbGxlJywgJ0dlb3JnaWEnLCBzZXJpZjtcblxuJGJhc2UtZm9udDogJHNlY29uZGFyeS1mb250LXNhbnMtc2VyaWY7XG5cbi8vIEJvZHlcbiRiYXNlLXRleHQtY29sb3I6ICMyRDJEMkQgIWRlZmF1bHQ7XG4kYmFzZS1iYWNrZ3JvdW5kLWJvZHk6ICR3aGl0ZSAhZGVmYXVsdDtcbiRiYXNlLWJhY2tncm91bmQtZm9vdGVyOiAkcHJpbWFyeSAhZGVmYXVsdDtcblxuJGZvbnQtc2l6ZS1iYXNlLWxhZ3JlOiAxOHB4ICFkZWZhdWx0O1xuJGxpbmUtaGVpZ2h0LWJhc2UtbGFncmU6IDEuNiAhZGVmYXVsdDtcblxuJGZvbnQtc2l6ZS1iYXNlOiAxNnB4ICFkZWZhdWx0O1xuJGxpbmUtaGVpZ2h0LWJhc2U6IDEuNzUgIWRlZmF1bHQ7XG5cbiRmb250LXNpemUtc206IDE0cHggIWRlZmF1bHQ7XG4kbGluZS1oZWlnaHQtc206IDEuNyAhZGVmYXVsdDtcblxuXG4kYmFzZS1mb250LWZhbWlseTogJGJhc2UtZm9udCAhZGVmYXVsdDtcbiRiYXNlLW1pbi13aWR0aDogMzIwcHg7XG5cbi8vIGJhc2UgdmFyaWFibGVzXG4kYmFzZS1yYWRpdXM6IDA7XG4kYmFzZS1yYWRpdXMtc21hbGw6IDA7XG5cbi8vIGNvbnRhaW5lciBzZXR0aW5nc1xuJG1heC13aWR0aC1jZW50ZXItY29udGFpbmVyOiAxMjAwcHg7XG4kZ3V0dGVyOiAyMHB4O1xuJHBhZGRpbmctY29udGFpbmVyOiAwICRndXR0ZXI7XG5cbi8vICR1bml0LWludGVydmFsczogKFxuLy8gICAgICdweCc6IDAuMDIsXG4vLyAgICAgJ2VtJzogMC4wMSxcbi8vICAgICAncmVtJzogMC4xLFxuLy8gICAgICcnOiAwXG4vLyApO1xuXG4vLyBncmlkIHNpc3RlbVxuJGdyaWQ6IChcbiAgICBwaDogJ3Bob25lJyxcbiAgICBzbTogJ3RhYmxldCcsXG4gICAgbWQ6ICdkZXNrdG9wJ1xuKTtcblxuLy8gZm9udCB3ZWlnaHRcbiR0aGluOiAxMDA7XG4kbGlnaHQtZm9udDogMzAwO1xuJG5vcm1hbDogNDAwO1xuJG1lZGl1bTogNTAwO1xuJHNlbWlib2xkOiA2MDA7XG4kYm9sZDogNzAwO1xuJGV4dHJhOiA4MDA7XG4kYmxhY2stZm9udDogOTAwO1xuXG4vLyBkZWZhdWx0IG1hcmdpbnNcbiR2ZXJ0aWNhbC1yaHl0aG06ICRmb250LXNpemUtYmFzZSArIDQ7XG4kd2lkZ2V0LW1hcmdpbjogMjBweDtcblxuJHJlbS1iYXNlOiAxNnB4ICFkZWZhdWx0O1xuXG4vLyBMaWtzXG4kYmFzZS1saW5rLWNvbG9yOiAkYmx1ZTtcbiRiYXNlLWxpbmstaG92ZXItY29sb3I6ICRibGFjaztcbiR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4kdGV4dC1kZWNvcmF0aW9uLWhvdmVyOiBub25lO1xuXG4vLyBIZWFkZXJzIHNpemVcbiR0aXRsZS1wYWxldHRlOiAoXG4gICAgbW9iaWxlOiAoJ2gxJzogMjAsXG4gICAgICAgICdoMic6IDE2LFxuICAgICAgICAnaDMnOiAxNSxcbiAgICAgICAgJ2g0JzogMTQsXG4gICAgICAgICdoNSc6IDE0LFxuICAgICAgICAnaDYnOiAxNCksXG4gICAgdGFibGV0OiAoJ2gxJzogNDAsXG4gICAgICAgICdoMic6IDMwLFxuICAgICAgICAnaDMnOiAyOCxcbiAgICAgICAgJ2g0JzogMjAsXG4gICAgICAgICdoNSc6IDE4LFxuICAgICAgICAnaDYnOiAxNiksXG4gICAgZGVza3RvcDogKCdoMSc6IDQwLFxuICAgICAgICAnaDInOiAzMCxcbiAgICAgICAgJ2gzJzogMjgsXG4gICAgICAgICdoNCc6IDIwLFxuICAgICAgICAnaDUnOiAxOCxcbiAgICAgICAgJ2g2JzogMTYpLFxuICAgIHdpZGVzY3JlZW46ICgnaDEnOiA0MCxcbiAgICAgICAgJ2gyJzogMzAsXG4gICAgICAgICdoMyc6IDI4LFxuICAgICAgICAnaDQnOiAyMCxcbiAgICAgICAgJ2g1JzogMTgsXG4gICAgICAgICdoNic6IDE2KVxuKTtcblxuLy8gaGVhZGluZ3Mgc3R5bGVcbiRoZWFkaW5ncy1mb250LWZhbWlseTogJGJhc2UtZm9udC1zYW5zLXNlcmlmICFkZWZhdWx0O1xuJGhlYWRpbmdzLWNvbG9yOiBpbmhlcml0ICFkZWZhdWx0O1xuXG4vLyBCdXR0b25zXG4kYnRuLWJvcmRlci13aWR0aDogMXB4ICFkZWZhdWx0O1xuJGJ0bi1ib3JkZXItcmFkaXVzOiAwICFkZWZhdWx0O1xuJGJ0bi1ib3JkZXItcmFkaXVzLXNtOiBjYWxjKCRidG4tYm9yZGVyLXJhZGl1cyAvIDIpICFkZWZhdWx0O1xuJGJ0bi1ib3JkZXItcmFkaXVzLWxnOiBjYWxjKCRidG4tYm9yZGVyLXJhZGl1cyAqIDIpICFkZWZhdWx0O1xuJGJ0bi1wYWRkaW5nOiAxLjEyNXJlbSAyLjc1cmVtICFkZWZhdWx0O1xuJGJ0bi1wYWRkaW5nLXNtOiA1cHggMTBweCAhZGVmYXVsdDtcbiRidG4tcGFkZGluZy1sZzogMjBweCA0MHB4ICFkZWZhdWx0O1xuJGJ0bi1mb250LXNpemU6IDFyZW0gIWRlZmF1bHQ7XG4kYnRuLWZvbnQtc2l6ZS1zbTogMTJweCAhZGVmYXVsdDtcbiRidG4tZm9udC1zaXplLWxnOiAxOHB4ICFkZWZhdWx0O1xuJGJ0bi1saW5lLWhlaWdodDogMTtcbiRidG4tbGluZS1oZWlnaHQtc206ICRidG4tZm9udC1zaXplLXNtICsgMjtcbiRidG4tbGluZS1oZWlnaHQtbGc6ICRidG4tZm9udC1zaXplLWxnICsgMjtcblxuLy8gYnRuIGRlZmF1bHRcbiRidG4tY29sb3ItZGVmYXVsdDogJHdoaXRlICFkZWZhdWx0O1xuJGJ0bi1iYWNrZ3JvdW5kLWRlZmF1bHQ6ICRibGFjayAhZGVmYXVsdDtcbiRidG4tYm9yZGVyLWNvbG9yLWRlZmF1bHQ6ICRidG4tYmFja2dyb3VuZC1kZWZhdWx0ICFkZWZhdWx0O1xuXG4vLyBob3ZlclxuJGJ0bi1ob3Zlci1jb2xvci1kZWZhdWx0OiAkYnRuLWJhY2tncm91bmQtZGVmYXVsdCAhZGVmYXVsdDtcbiRidG4taG92ZXItYmFja2dyb3VuZC1kZWZhdWx0OiAkYnRuLWNvbG9yLWRlZmF1bHQgIWRlZmF1bHQ7XG4kYnRuLWhvdmVyLWJvcmRlci1jb2xvci1kZWZhdWx0OiAkYnRuLWJhY2tncm91bmQtZGVmYXVsdCAhZGVmYXVsdDtcblxuLy8gYnRuIHByaW1hcnlcbiRidG4tY29sb3ItcHJpbWFyeTogJHdoaXRlICFkZWZhdWx0O1xuJGJ0bi1iYWNrZ3JvdW5kLXByaW1hcnk6ICRwcmltYXJ5ICFkZWZhdWx0O1xuJGJ0bi1ib3JkZXItY29sb3ItcHJpbWFyeTogJHByaW1hcnkgIWRlZmF1bHQ7XG4vLyBob3ZlclxuJGJ0bi1ob3Zlci1jb2xvci1wcmltYXJ5OiAkd2hpdGUgIWRlZmF1bHQ7XG4kYnRuLWhvdmVyLWJhY2tncm91bmQtcHJpbWFyeTogcmdiYSgkY29sb3I6ICRwcmltYXJ5LCAkYWxwaGE6IDgwJSkgIWRlZmF1bHQ7XG4kYnRuLWhvdmVyLWJvcmRlci1jb2xvci1wcmltYXJ5OiAkYnRuLWhvdmVyLWJhY2tncm91bmQtcHJpbWFyeSAhZGVmYXVsdDtcblxuLy8gYnRuIGRhbmdlclxuJGJ0bi1jb2xvci1kYW5nZXI6ICR3aGl0ZSAhZGVmYXVsdDtcbiRidG4tYmFja2dyb3VuZC1kYW5nZXI6ICRkYW5nZXIgIWRlZmF1bHQ7XG4kYnRuLWJvcmRlci1jb2xvci1kYW5nZXI6ICRkYW5nZXIgIWRlZmF1bHQ7XG4vLyBob3ZlclxuJGJ0bi1ob3Zlci1jb2xvci1kYW5nZXI6ICR3aGl0ZSAhZGVmYXVsdDtcbiRidG4taG92ZXItYmFja2dyb3VuZC1kYW5nZXI6IHJnYmEoJGNvbG9yOiAkZGFuZ2VyLCAkYWxwaGE6IDgwJSkgIWRlZmF1bHQ7XG4kYnRuLWhvdmVyLWJvcmRlci1jb2xvci1kYW5nZXI6ICRidG4taG92ZXItYmFja2dyb3VuZC1kYW5nZXIgIWRlZmF1bHQ7XG5cbi8vIGJ0biBzZWNvbmRhcnlcbiRidG4tY29sb3Itc2Vjb25kYXJ5OiAkd2hpdGUgIWRlZmF1bHQ7XG4kYnRuLWJhY2tncm91bmQtc2Vjb25kYXJ5OiAkc2Vjb25kYXJ5ICFkZWZhdWx0O1xuJGJ0bi1ib3JkZXItY29sb3Itc2Vjb25kYXJ5OiAkc2Vjb25kYXJ5ICFkZWZhdWx0O1xuLy8gaG92ZXJcbiRidG4taG92ZXItY29sb3Itc2Vjb25kYXJ5OiAkd2hpdGUgIWRlZmF1bHQ7XG4kYnRuLWhvdmVyLWJhY2tncm91bmQtc2Vjb25kYXJ5OiByZ2JhKCRjb2xvcjogJHNlY29uZGFyeSwgJGFscGhhOiAxMCUpICFkZWZhdWx0O1xuJGJ0bi1ob3Zlci1ib3JkZXItY29sb3Itc2Vjb25kYXJ5OiAkc2Vjb25kYXJ5ICFkZWZhdWx0O1xuXG4vLyBGb3Jtc1xuJGlucHV0LWZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlOyAvLyBmb250IHNpemUgZm9yIGZvcm1zIGVsZW1lbnRzXG4kaW5wdXQtbGluZS1oZWlnaHQ6ICRpbnB1dC1mb250LXNpemUgKyAyOyAvLyBsaW5lIGhlaWdodCBmb3IgZm9ybXMgZWxlbWVudHNcbiRpbnB1dC1mb250LWZhbWlseTogJGJhc2UtZm9udDtcbiRpbnB1dC1wYWRkaW5nLXZlcnRpY2FsOiAxMHB4ICFkZWZhdWx0OyAvLyBwYWRkaW5nIGZvciBmb3JtcyBlbGVtZW50c1xuJGlucHV0LXBhZGRpbmctaG9yaXpvbnRhbDogMjBweCAhZGVmYXVsdDsgLy8gcGFkZGluZyBmb3IgZm9ybXMgZWxlbWVudHNcbiRpbnB1dC1wYWRkaW5nOiAkaW5wdXQtcGFkZGluZy12ZXJ0aWNhbCAkaW5wdXQtcGFkZGluZy1ob3Jpem9udGFsICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci13aWR0aDogMXB4ICFkZWZhdWx0OyAvLyBib3JkZXIgaW5wdXQncyB3aWR0aFxuJGlucHV0LWJvcmRlcjogJGlucHV0LWJvcmRlci13aWR0aCBzb2xpZCAkd2hpdGUgIWRlZmF1bHQ7IC8vIGJvcmRlciBmb3IgZm9ybXMgZWxlbWVudHNcbiRpbnB1dC1ib3JkZXItcmFkaXVzOiAwICFkZWZhdWx0OyAvLyBib3JkZXIgcmFkaXVzIGZvciBmb3JtcyBlbGVtZW50c1xuJGlucEg6ICRpbnB1dC1ib3JkZXItd2lkdGggKyAyICogJGlucHV0LXBhZGRpbmctdmVydGljYWwgKyAkaW5wdXQtbGluZS1oZWlnaHQ7XG4kaW5wdXQtaGVpZ2h0OiAoXG4gICAgMiAqICgkaW5wdXQtYm9yZGVyLXdpZHRoICsgJGlucHV0LXBhZGRpbmctdmVydGljYWwpICsgJGlucHV0LWxpbmUtaGVpZ2h0KSAhZGVmYXVsdDsgLy8gaGVpZ2h0IGZvciBmb3JtcyBlbGVtZW50c1xuLy9zdWJtaXRcbiRzdWJtaXQtYmFja2dyb3VuZDogJGJ0bi1iYWNrZ3JvdW5kLWRlZmF1bHQ7XG4kc3VibWl0LWNvbG9yOiAkYnRuLWNvbG9yLWRlZmF1bHQ7XG4kc3VibWl0LWhlaWdodDogJGlucHV0LWhlaWdodDtcbiRzdWJtaXQtYm9yZGVyLXdpZHRoOiAkYnRuLWJvcmRlci13aWR0aDtcbiRzdWJtaXQtYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiRzdWJtaXQtYm9yZGVyLWNvbG9yOiAkYnRuLWJvcmRlci1jb2xvci1kZWZhdWx0O1xuJHN1Ym1pdC1wYWRkaW5nOiAkYnRuLXBhZGRpbmc7XG4kc3VibWl0LWZvbnQtc2l6ZTogJGlucHV0LWZvbnQtc2l6ZTtcbiRzdWJtaXQtbGluZS1oZWlnaHQ6ICRidG4tbGluZS1oZWlnaHQ7XG4kc3VibWl0LXJhZGl1czogJGJ0bi1ib3JkZXItcmFkaXVzO1xuLy8gc3VibWl0IGhvdmVyXG4kc3VibWl0LWhvdmVyLWJhY2tncm91bmQ6ICRidG4taG92ZXItYmFja2dyb3VuZC1wcmltYXJ5OyAvLyBzdWJtaXQgYmFja2dyb3VuZCBob3ZlclxuJHN1Ym1pdC1ob3Zlci1jb2xvcjogJGJ0bi1ob3Zlci1jb2xvci1wcmltYXJ5OyAvLyBzdWJtaXQgY29sb3IgaG92ZXJcbiRzdWJtaXQtaG92ZXItYm9yZGVyLWNvbG9yOiAkYnRuLWhvdmVyLWJhY2tncm91bmQtcHJpbWFyeTsgLy8gc3VibWl0IGNvbG9yIGhvdmVyXG5cbi8vZm9jdXNcbiRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3I6ICRibGFjayAhZGVmYXVsdDsgLy8gYm9yZGVyIGNvbG9yIGZvciBmb3JtcyBlbGVtZW50c1xuLy9wbGFjZWhvbGRlclxuJHBsYWNlaG9sZGVyLWNvbG9yOiAjMkQyRDJEICFkZWZhdWx0O1xuLy8gc2VsZWN0XG4kc2VsZWN0LWhlaWdodDogJGlucHV0LWhlaWdodDtcbiRzZWxlY3QtYm9yZGVyOiAkaW5wdXQtYm9yZGVyO1xuJHNlbGVjdC1ib3JkZXItcmFkaXVzOiAkaW5wdXQtYm9yZGVyLXJhZGl1cztcbiRzZWxlY3QtcGFkZGluZzogJGlucHV0LXBhZGRpbmc7XG4kc2VsZWN0LWZvbnQtc2l6ZTogJGlucHV0LWZvbnQtc2l6ZTtcbiRzZWxlY3QtbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodDtcblxuLy8gYW5pbWF0aW9uIHNwZWVkXG4kYW5pbWF0aW9uLXNwZWVkOiAwLjVzOyIsIi8vICAgICBfICAgICAgICAgICAgXyAgICAgICAgICAgXyAgICAgICAgICAgICAgICAgICAgICAgICAgIF8gX1xuLy8gICAgKF8pICAgICAgICAgIHwgfCAgICAgICAgIHwgfCAgICAgICAgICAgICAgICAgICAgICAgICB8IChfKVxuLy8gICAgIF8gXyBfXyAgIF9fX3wgfF8gICBfICBfX3wgfCBfX18gICBfIF9fIF9fXyAgIF9fXyAgX198IHxfICBfXyBfXG4vLyAgICB8IHwgJ18gXFwgLyBfX3wgfCB8IHwgfC8gX2AgfC8gXyBcXCB8ICdfIGAgXyBcXCAvIF8gXFwvIF9gIHwgfC8gX2AgfFxuLy8gICAgfCB8IHwgfCB8IChfX3wgfCB8X3wgfCAoX3wgfCAgX18vIHwgfCB8IHwgfCB8ICBfXy8gKF98IHwgfCAoX3wgfFxuLy8gICAgfF98X3wgfF98XFxfX198X3xcXF9fLF98XFxfXyxffFxcX19ffCB8X3wgfF98IHxffFxcX19ffFxcX18sX3xffFxcX18sX3xcbi8vXG4vLyAgICAgIFNpbXBsZSwgZWxlZ2FudCBhbmQgbWFpbnRhaW5hYmxlIG1lZGlhIHF1ZXJpZXMgaW4gU2Fzc1xuLy8gICAgICAgICAgICAgICAgICAgICAgICB2Mi4wLjBcbi8vXG4vLyAgICAgICAgaHR0cHM6Ly9lZHVhcmRvYm91Y2FzLmdpdGh1Yi5pby9pbmNsdWRlLW1lZGlhXG4vL1xuLy8gICAgICAgICBBdXRob3JzOiBFZHVhcmRvIEJvdWNhcyAoQGVkdWFyZG9ib3VjYXMpXG4vLyAgICAgICAgICAgICAgICAgIEtpdHR5IEdpcmF1ZGVsIChAa2l0dHlnaXJhdWRlbClcbi8vXG4vLyAgICAgIFRoaXMgcHJvamVjdCBpcyBsaWNlbnNlZCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIE1JVCBsaWNlbnNlXG5AY2hhcnNldCBcIlVURi04XCI7XG5cbi8vLy9cbi8vLyBpbmNsdWRlLW1lZGlhIGxpYnJhcnkgcHVibGljIGNvbmZpZ3VyYXRpb25cbi8vLyBAYXV0aG9yIEVkdWFyZG8gQm91Y2FzXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLy9cbkB1c2UgJ3Nhc3M6bWF0aCc7XG5AdXNlICdzYXNzOm1hcCc7XG5AdXNlICdzYXNzOmxpc3QnO1xuQHVzZSAnc2FzczpzdHJpbmcnO1xuQHVzZSAnc2FzczptZXRhJztcblxuLy8vXG4vLy8gQ3JlYXRlcyBhIGxpc3Qgb2YgZ2xvYmFsIGJyZWFrcG9pbnRzXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gQ3JlYXRlcyBhIHNpbmdsZSBicmVha3BvaW50IHdpdGggdGhlIGxhYmVsIGBwaG9uZWBcbi8vLyAgJGJyZWFrcG9pbnRzOiAoJ3Bob25lJzogMzIwcHgpO1xuLy8vXG4vLy8gXG4kYnJlYWtwb2ludHM6IChcbiAgJ3Bob25lJzogMzIwcHgsXG4gICd0YWJsZXQnOiA3NjhweCxcbiAgJ2Rlc2t0b3AnOiAxMDI0cHgsXG4pICFkZWZhdWx0O1xuXG4vLy9cbi8vLyBDcmVhdGVzIGEgbGlzdCBvZiBzdGF0aWMgZXhwcmVzc2lvbnMgb3IgbWVkaWEgdHlwZXNcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBDcmVhdGVzIGEgc2luZ2xlIG1lZGlhIHR5cGUgKHNjcmVlbilcbi8vLyAgJG1lZGlhLWV4cHJlc3Npb25zOiAoJ3NjcmVlbic6ICdzY3JlZW4nKTtcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBDcmVhdGVzIGEgc3RhdGljIGV4cHJlc3Npb24gd2l0aCBsb2dpY2FsIGRpc2p1bmN0aW9uIChPUiBvcGVyYXRvcilcbi8vLyAgJG1lZGlhLWV4cHJlc3Npb25zOiAoXG4vLy8gICAgJ3JldGluYTJ4JzogJygtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpLCAobWluLXJlc29sdXRpb246IDE5MmRwaSknXG4vLy8gICk7XG4vLy9cbiRtZWRpYS1leHByZXNzaW9uczogKFxuICAnc2NyZWVuJzogJ3NjcmVlbicsXG4gICdwcmludCc6ICdwcmludCcsXG4gICdoYW5kaGVsZCc6ICdoYW5kaGVsZCcsXG4gICdsYW5kc2NhcGUnOiAnKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpJyxcbiAgJ3BvcnRyYWl0JzogJyhvcmllbnRhdGlvbjogcG9ydHJhaXQpJyxcbiAgJ3JldGluYTJ4JzpcbiAgICAnKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMiksIChtaW4tcmVzb2x1dGlvbjogMTkyZHBpKSwgKG1pbi1yZXNvbHV0aW9uOiAyZHBweCknLFxuICAncmV0aW5hM3gnOlxuICAgICcoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAzKSwgKG1pbi1yZXNvbHV0aW9uOiAzNTBkcGkpLCAobWluLXJlc29sdXRpb246IDNkcHB4KScsXG4pICFkZWZhdWx0O1xuXG4vLy9cbi8vLyBEZWZpbmVzIGEgbnVtYmVyIHRvIGJlIGFkZGVkIG9yIHN1YnRyYWN0ZWQgZnJvbSBlYWNoIHVuaXQgd2hlbiBkZWNsYXJpbmcgYnJlYWtwb2ludHMgd2l0aCBleGNsdXNpdmUgaW50ZXJ2YWxzXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gSW50ZXJ2YWwgZm9yIHBpeGVscyBpcyBkZWZpbmVkIGFzIGAxYCBieSBkZWZhdWx0XG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+MTI4cHgnKSB7fVxuLy8vXG4vLy8gIC8qIEdlbmVyYXRlczogKi9cbi8vLyAgQG1lZGlhIChtaW4td2lkdGg6IDEyOXB4KSB7fVxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIEludGVydmFsIGZvciBlbXMgaXMgZGVmaW5lZCBhcyBgMC4wMWAgYnkgZGVmYXVsdFxuLy8vICBAaW5jbHVkZSBtZWRpYSgnPjIwZW0nKSB7fVxuLy8vXG4vLy8gIC8qIEdlbmVyYXRlczogKi9cbi8vLyAgQG1lZGlhIChtaW4td2lkdGg6IDIwLjAxZW0pIHt9XG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gSW50ZXJ2YWwgZm9yIHJlbXMgaXMgZGVmaW5lZCBhcyBgMC4xYCBieSBkZWZhdWx0LCB0byBiZSB1c2VkIHdpdGggYGZvbnQtc2l6ZTogNjIuNSU7YFxuLy8vICBAaW5jbHVkZSBtZWRpYSgnPjIuMHJlbScpIHt9XG4vLy9cbi8vLyAgLyogR2VuZXJhdGVzOiAqL1xuLy8vICBAbWVkaWEgKG1pbi13aWR0aDogMi4xcmVtKSB7fVxuLy8vXG4kdW5pdC1pbnRlcnZhbHM6IChcbiAgJ3B4JzogMSxcbiAgJ2VtJzogMC4wMSxcbiAgJ3JlbSc6IDAuMSxcbiAgJyc6IDAsXG4pICFkZWZhdWx0O1xuXG4vLy9cbi8vLyBEZWZpbmVzIHdoZXRoZXIgc3VwcG9ydCBmb3IgbWVkaWEgcXVlcmllcyBpcyBhdmFpbGFibGUsIHVzZWZ1bCBmb3IgY3JlYXRpbmcgc2VwYXJhdGUgc3R5bGVzaGVldHNcbi8vLyBmb3IgYnJvd3NlcnMgdGhhdCBkb24ndCBzdXBwb3J0IG1lZGlhIHF1ZXJpZXMuXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gRGlzYWJsZXMgc3VwcG9ydCBmb3IgbWVkaWEgcXVlcmllc1xuLy8vICAkaW0tbWVkaWEtc3VwcG9ydDogZmFsc2U7XG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbi8vLyAgICAuZm9vIHtcbi8vLyAgICAgIGNvbG9yOiB0b21hdG87XG4vLy8gICAgfVxuLy8vICB9XG4vLy9cbi8vLyAgLyogR2VuZXJhdGVzOiAqL1xuLy8vICAuZm9vIHtcbi8vLyAgICBjb2xvcjogdG9tYXRvO1xuLy8vICB9XG4vLy9cbiRpbS1tZWRpYS1zdXBwb3J0OiB0cnVlICFkZWZhdWx0O1xuXG4vLy9cbi8vLyBTZWxlY3RzIHdoaWNoIGJyZWFrcG9pbnQgdG8gZW11bGF0ZSB3aGVuIHN1cHBvcnQgZm9yIG1lZGlhIHF1ZXJpZXMgaXMgZGlzYWJsZWQuIE1lZGlhIHF1ZXJpZXMgdGhhdCBzdGFydCBhdCBvclxuLy8vIGludGVyY2VwdCB0aGUgYnJlYWtwb2ludCB3aWxsIGJlIGRpc3BsYXllZCwgYW55IG90aGVycyB3aWxsIGJlIGlnbm9yZWQuXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gVGhpcyBtZWRpYSBxdWVyeSB3aWxsIHNob3cgYmVjYXVzZSBpdCBpbnRlcmNlcHRzIHRoZSBzdGF0aWMgYnJlYWtwb2ludFxuLy8vICAkaW0tbWVkaWEtc3VwcG9ydDogZmFsc2U7XG4vLy8gICRpbS1uby1tZWRpYS1icmVha3BvaW50OiAnZGVza3RvcCc7XG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbi8vLyAgICAuZm9vIHtcbi8vLyAgICAgIGNvbG9yOiB0b21hdG87XG4vLy8gICAgfVxuLy8vICB9XG4vLy9cbi8vLyAgLyogR2VuZXJhdGVzOiAqL1xuLy8vICAuZm9vIHtcbi8vLyAgICBjb2xvcjogdG9tYXRvO1xuLy8vICB9XG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gVGhpcyBtZWRpYSBxdWVyeSB3aWxsIE5PVCBzaG93IGJlY2F1c2UgaXQgZG9lcyBub3QgaW50ZXJjZXB0IHRoZSBkZXNrdG9wIGJyZWFrcG9pbnRcbi8vLyAgJGltLW1lZGlhLXN1cHBvcnQ6IGZhbHNlO1xuLy8vICAkaW0tbm8tbWVkaWEtYnJlYWtwb2ludDogJ3RhYmxldCc7XG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+PWRlc2t0b3AnKSB7XG4vLy8gICAgLmZvbyB7XG4vLy8gICAgICBjb2xvcjogdG9tYXRvO1xuLy8vICAgIH1cbi8vLyAgfVxuLy8vXG4vLy8gIC8qIE5vIG91dHB1dCAqL1xuLy8vXG4kaW0tbm8tbWVkaWEtYnJlYWtwb2ludDogJ2Rlc2t0b3AnICFkZWZhdWx0O1xuXG4vLy9cbi8vLyBTZWxlY3RzIHdoaWNoIG1lZGlhIGV4cHJlc3Npb25zIGFyZSBhbGxvd2VkIGluIGFuIGV4cHJlc3Npb24gZm9yIGl0IHRvIGJlIHVzZWQgd2hlbiBtZWRpYSBxdWVyaWVzXG4vLy8gYXJlIG5vdCBzdXBwb3J0ZWQuXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gVGhpcyBtZWRpYSBxdWVyeSB3aWxsIHNob3cgYmVjYXVzZSBpdCBpbnRlcmNlcHRzIHRoZSBzdGF0aWMgYnJlYWtwb2ludCBhbmQgY29udGFpbnMgb25seSBhY2NlcHRlZCBtZWRpYSBleHByZXNzaW9uc1xuLy8vICAkaW0tbWVkaWEtc3VwcG9ydDogZmFsc2U7XG4vLy8gICRpbS1uby1tZWRpYS1icmVha3BvaW50OiAnZGVza3RvcCc7XG4vLy8gICRpbS1uby1tZWRpYS1leHByZXNzaW9uczogKCdzY3JlZW4nKTtcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0JywgJ3NjcmVlbicpIHtcbi8vLyAgICAuZm9vIHtcbi8vLyAgICAgIGNvbG9yOiB0b21hdG87XG4vLy8gICAgfVxuLy8vICB9XG4vLy9cbi8vLyAgIC8qIEdlbmVyYXRlczogKi9cbi8vLyAgIC5mb28ge1xuLy8vICAgICBjb2xvcjogdG9tYXRvO1xuLy8vICAgfVxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFRoaXMgbWVkaWEgcXVlcnkgd2lsbCBOT1Qgc2hvdyBiZWNhdXNlIGl0IGludGVyY2VwdHMgdGhlIHN0YXRpYyBicmVha3BvaW50IGJ1dCBjb250YWlucyBhIG1lZGlhIGV4cHJlc3Npb24gdGhhdCBpcyBub3QgYWNjZXB0ZWRcbi8vLyAgJGltLW1lZGlhLXN1cHBvcnQ6IGZhbHNlO1xuLy8vICAkaW0tbm8tbWVkaWEtYnJlYWtwb2ludDogJ2Rlc2t0b3AnO1xuLy8vICAkaW0tbm8tbWVkaWEtZXhwcmVzc2lvbnM6ICgnc2NyZWVuJyk7XG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcsICdyZXRpbmEyeCcpIHtcbi8vLyAgICAuZm9vIHtcbi8vLyAgICAgIGNvbG9yOiB0b21hdG87XG4vLy8gICAgfVxuLy8vICB9XG4vLy9cbi8vLyAgLyogTm8gb3V0cHV0ICovXG4vLy9cbiRpbS1uby1tZWRpYS1leHByZXNzaW9uczogKCdzY3JlZW4nLCAncG9ydHJhaXQnLCAnbGFuZHNjYXBlJykgIWRlZmF1bHQ7XG5cbi8vLy9cbi8vLyBDcm9zcy1lbmdpbmUgbG9nZ2luZyBlbmdpbmVcbi8vLyBAYXV0aG9yIEtpdHR5IEdpcmF1ZGVsXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8vXG5cbi8vL1xuLy8vIExvZyBhIG1lc3NhZ2UgZWl0aGVyIHdpdGggYEBlcnJvcmAgaWYgc3VwcG9ydGVkXG4vLy8gZWxzZSB3aXRoIGBAd2FybmAsIHVzaW5nIGBmZWF0dXJlLWV4aXN0cygnYXQtZXJyb3InKWBcbi8vLyB0byBkZXRlY3Qgc3VwcG9ydC5cbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkbWVzc2FnZSAtIE1lc3NhZ2UgdG8gbG9nXG4vLy9cbkBmdW5jdGlvbiBpbS1sb2coJG1lc3NhZ2UpIHtcbiAgQGlmIG1ldGEuZmVhdHVyZS1leGlzdHMoJ2F0LWVycm9yJykge1xuICAgIEBlcnJvciAkbWVzc2FnZTtcbiAgfSBAZWxzZSB7XG4gICAgQHdhcm4gJG1lc3NhZ2U7XG4gICAgJF86IG5vb3AoKTtcbiAgfVxuXG4gIEByZXR1cm4gJG1lc3NhZ2U7XG59XG5cbi8vL1xuLy8vIFdyYXBwZXIgbWl4aW4gZm9yIHRoZSBsb2cgZnVuY3Rpb24gc28gaXQgY2FuIGJlIHVzZWQgd2l0aCBhIG1vcmUgZnJpZW5kbHlcbi8vLyBBUEkgdGhhbiBgQGlmIGltLWxvZygnLi4nKSB7fWAgb3IgYCRfOiBpbS1sb2coJy4uJylgLiBCYXNpY2FsbHksIHVzZSB0aGUgZnVuY3Rpb25cbi8vLyB3aXRoaW4gZnVuY3Rpb25zIGJlY2F1c2UgaXQgaXMgbm90IHBvc3NpYmxlIHRvIGluY2x1ZGUgYSBtaXhpbiBpbiBhIGZ1bmN0aW9uXG4vLy8gYW5kIHVzZSB0aGUgbWl4aW4gZXZlcnl3aGVyZSBlbHNlIGJlY2F1c2UgaXQncyBtdWNoIG1vcmUgZWxlZ2FudC5cbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkbWVzc2FnZSAtIE1lc3NhZ2UgdG8gbG9nXG4vLy9cbkBtaXhpbiBsb2coJG1lc3NhZ2UpIHtcbiAgQGlmIGltLWxvZygkbWVzc2FnZSkge1xuICB9XG59XG5cbi8vL1xuLy8vIEZ1bmN0aW9uIHdpdGggbm8gYEByZXR1cm5gIGNhbGxlZCBuZXh0IHRvIGBAd2FybmAgaW4gU2FzcyAzLjNcbi8vLyB0byB0cmlnZ2VyIGEgY29tcGlsaW5nIGVycm9yIGFuZCBzdG9wIHRoZSBwcm9jZXNzLlxuLy8vXG5AZnVuY3Rpb24gbm9vcCgpIHtcbn1cblxuLy8vXG4vLy8gRGV0ZXJtaW5lcyB3aGV0aGVyIGEgbGlzdCBvZiBjb25kaXRpb25zIGlzIGludGVyY2VwdGVkIGJ5IHRoZSBzdGF0aWMgYnJlYWtwb2ludC5cbi8vL1xuLy8vIEBwYXJhbSB7QXJnbGlzdH0gICAkY29uZGl0aW9ucyAgLSBNZWRpYSBxdWVyeSBjb25kaXRpb25zXG4vLy9cbi8vLyBAcmV0dXJuIHtCb29sZWFufSAtIFJldHVybnMgdHJ1ZSBpZiB0aGUgY29uZGl0aW9ucyBhcmUgaW50ZXJjZXB0ZWQgYnkgdGhlIHN0YXRpYyBicmVha3BvaW50XG4vLy9cbkBmdW5jdGlvbiBpbS1pbnRlcmNlcHRzLXN0YXRpYy1icmVha3BvaW50KCRjb25kaXRpb25zLi4uKSB7XG4gICRuby1tZWRpYS1icmVha3BvaW50LXZhbHVlOiBtYXAuZ2V0KCRicmVha3BvaW50cywgJGltLW5vLW1lZGlhLWJyZWFrcG9pbnQpO1xuXG4gIEBpZiBub3QgJG5vLW1lZGlhLWJyZWFrcG9pbnQtdmFsdWUge1xuICAgIEBpZiBpbS1sb2coJ2AjeyRpbS1uby1tZWRpYS1icmVha3BvaW50fWAgaXMgbm90IGEgdmFsaWQgYnJlYWtwb2ludC4nKSB7XG4gICAgfVxuICB9XG5cbiAgQGVhY2ggJGNvbmRpdGlvbiBpbiAkY29uZGl0aW9ucyB7XG4gICAgQGlmIG5vdCBtYXAuaGFzLWtleSgkbWVkaWEtZXhwcmVzc2lvbnMsICRjb25kaXRpb24pIHtcbiAgICAgICRvcGVyYXRvcjogZ2V0LWV4cHJlc3Npb24tb3BlcmF0b3IoJGNvbmRpdGlvbik7XG4gICAgICAkcHJlZml4OiBnZXQtZXhwcmVzc2lvbi1wcmVmaXgoJG9wZXJhdG9yKTtcbiAgICAgICR2YWx1ZTogZ2V0LWV4cHJlc3Npb24tdmFsdWUoJGNvbmRpdGlvbiwgJG9wZXJhdG9yKTtcblxuICAgICAgQGlmICgkcHJlZml4ID09ICdtYXgnIGFuZCAkdmFsdWUgPD0gJG5vLW1lZGlhLWJyZWFrcG9pbnQtdmFsdWUpIG9yXG4gICAgICAgICgkcHJlZml4ID09ICdtaW4nIGFuZCAkdmFsdWUgPiAkbm8tbWVkaWEtYnJlYWtwb2ludC12YWx1ZSlcbiAgICAgIHtcbiAgICAgICAgQHJldHVybiBmYWxzZTtcbiAgICAgIH1cbiAgICB9IEBlbHNlIGlmIG5vdCBsaXN0LmluZGV4KCRpbS1uby1tZWRpYS1leHByZXNzaW9ucywgJGNvbmRpdGlvbikge1xuICAgICAgQHJldHVybiBmYWxzZTtcbiAgICB9XG4gIH1cblxuICBAcmV0dXJuIHRydWU7XG59XG5cbi8vLy9cbi8vLyBQYXJzaW5nIGVuZ2luZVxuLy8vIEBhdXRob3IgS2l0dHkgR2lyYXVkZWxcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLy9cblxuLy8vXG4vLy8gR2V0IG9wZXJhdG9yIG9mIGFuIGV4cHJlc3Npb25cbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkZXhwcmVzc2lvbiAtIEV4cHJlc3Npb24gdG8gZXh0cmFjdCBvcGVyYXRvciBmcm9tXG4vLy9cbi8vLyBAcmV0dXJuIHtTdHJpbmd9IC0gQW55IG9mIGA+PWAsIGA+YCwgYDw9YCwgYDxgLCBg4omlYCwgYOKJpGBcbi8vL1xuQGZ1bmN0aW9uIGdldC1leHByZXNzaW9uLW9wZXJhdG9yKCRleHByZXNzaW9uKSB7XG4gIEBlYWNoICRvcGVyYXRvciBpbiAoJz49JywgJz4nLCAnPD0nLCAnPCcsICfiiaUnLCAn4omkJykge1xuICAgIEBpZiBzdHJpbmcuaW5kZXgoJGV4cHJlc3Npb24sICRvcGVyYXRvcikge1xuICAgICAgQHJldHVybiAkb3BlcmF0b3I7XG4gICAgfVxuICB9XG5cbiAgLy8gSXQgaXMgbm90IHBvc3NpYmxlIHRvIGluY2x1ZGUgYSBtaXhpbiBpbnNpZGUgYSBmdW5jdGlvbiwgc28gd2UgaGF2ZSB0b1xuICAvLyByZWx5IG9uIHRoZSBgaW0tbG9nKC4uKWAgZnVuY3Rpb24gcmF0aGVyIHRoYW4gdGhlIGBsb2coLi4pYCBtaXhpbi4gQmVjYXVzZVxuICAvLyBmdW5jdGlvbnMgY2Fubm90IGJlIGNhbGxlZCBhbnl3aGVyZSBpbiBTYXNzLCB3ZSBuZWVkIHRvIGhhY2sgdGhlIGNhbGwgaW5cbiAgLy8gYSBkdW1teSB2YXJpYWJsZSwgc3VjaCBhcyBgJF9gLiBJZiBhbnlib2R5IGV2ZXIgcmFpc2UgYSBzY29waW5nIGlzc3VlIHdpdGhcbiAgLy8gU2FzcyAzLjMsIGNoYW5nZSB0aGlzIGxpbmUgaW4gYEBpZiBpbS1sb2coLi4pIHt9YCBpbnN0ZWFkLlxuICAkXzogaW0tbG9nKCdObyBvcGVyYXRvciBmb3VuZCBpbiBgI3skZXhwcmVzc2lvbn1gLicpO1xufVxuXG4vLy9cbi8vLyBHZXQgZGltZW5zaW9uIG9mIGFuIGV4cHJlc3Npb24sIGJhc2VkIG9uIGEgZm91bmQgb3BlcmF0b3Jcbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkZXhwcmVzc2lvbiAtIEV4cHJlc3Npb24gdG8gZXh0cmFjdCBkaW1lbnNpb24gZnJvbVxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkb3BlcmF0b3IgLSBPcGVyYXRvciBmcm9tIGAkZXhwcmVzc2lvbmBcbi8vL1xuLy8vIEByZXR1cm4ge1N0cmluZ30gLSBgd2lkdGhgIG9yIGBoZWlnaHRgIChvciBwb3RlbnRpYWxseSBhbnl0aGluZyBlbHNlKVxuLy8vXG5AZnVuY3Rpb24gZ2V0LWV4cHJlc3Npb24tZGltZW5zaW9uKCRleHByZXNzaW9uLCAkb3BlcmF0b3IpIHtcbiAgJG9wZXJhdG9yLWluZGV4OiBzdHJpbmcuaW5kZXgoJGV4cHJlc3Npb24sICRvcGVyYXRvcik7XG4gICRwYXJzZWQtZGltZW5zaW9uOiBzdHJpbmcuc2xpY2UoJGV4cHJlc3Npb24sIDAsICRvcGVyYXRvci1pbmRleCAtIDEpO1xuICAkZGltZW5zaW9uOiAnd2lkdGgnO1xuXG4gIEBpZiBzdHJpbmcubGVuZ3RoKCRwYXJzZWQtZGltZW5zaW9uKSA+IDAge1xuICAgICRkaW1lbnNpb246ICRwYXJzZWQtZGltZW5zaW9uO1xuICB9XG5cbiAgQHJldHVybiAkZGltZW5zaW9uO1xufVxuXG4vLy9cbi8vLyBHZXQgZGltZW5zaW9uIHByZWZpeCBiYXNlZCBvbiBhbiBvcGVyYXRvclxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRvcGVyYXRvciAtIE9wZXJhdG9yXG4vLy9cbi8vLyBAcmV0dXJuIHtTdHJpbmd9IC0gYG1pbmAgb3IgYG1heGBcbi8vL1xuQGZ1bmN0aW9uIGdldC1leHByZXNzaW9uLXByZWZpeCgkb3BlcmF0b3IpIHtcbiAgQHJldHVybiBpZihsaXN0LmluZGV4KCgnPCcsICc8PScsICfiiaQnKSwgJG9wZXJhdG9yKSwgJ21heCcsICdtaW4nKTtcbn1cblxuLy8vXG4vLy8gR2V0IHZhbHVlIG9mIGFuIGV4cHJlc3Npb24sIGJhc2VkIG9uIGEgZm91bmQgb3BlcmF0b3Jcbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkZXhwcmVzc2lvbiAtIEV4cHJlc3Npb24gdG8gZXh0cmFjdCB2YWx1ZSBmcm9tXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRvcGVyYXRvciAtIE9wZXJhdG9yIGZyb20gYCRleHByZXNzaW9uYFxuLy8vXG4vLy8gQHJldHVybiB7TnVtYmVyfSAtIEEgbnVtZXJpYyB2YWx1ZVxuLy8vXG5AZnVuY3Rpb24gZ2V0LWV4cHJlc3Npb24tdmFsdWUoJGV4cHJlc3Npb24sICRvcGVyYXRvcikge1xuICAkb3BlcmF0b3ItaW5kZXg6IHN0cmluZy5pbmRleCgkZXhwcmVzc2lvbiwgJG9wZXJhdG9yKTtcbiAgJHZhbHVlOiBzdHJpbmcuc2xpY2UoJGV4cHJlc3Npb24sICRvcGVyYXRvci1pbmRleCArIHN0cmluZy5sZW5ndGgoJG9wZXJhdG9yKSk7XG5cbiAgQGlmIG1hcC5oYXMta2V5KCRicmVha3BvaW50cywgJHZhbHVlKSB7XG4gICAgJHZhbHVlOiBtYXAuZ2V0KCRicmVha3BvaW50cywgJHZhbHVlKTtcbiAgfSBAZWxzZSB7XG4gICAgJHZhbHVlOiB0by1udW1iZXIoJHZhbHVlKTtcbiAgfVxuXG4gICRpbnRlcnZhbDogbWFwLmdldCgkdW5pdC1pbnRlcnZhbHMsIG1hdGgudW5pdCgkdmFsdWUpKTtcblxuICBAaWYgbm90ICRpbnRlcnZhbCB7XG4gICAgLy8gSXQgaXMgbm90IHBvc3NpYmxlIHRvIGluY2x1ZGUgYSBtaXhpbiBpbnNpZGUgYSBmdW5jdGlvbiwgc28gd2UgaGF2ZSB0b1xuICAgIC8vIHJlbHkgb24gdGhlIGBpbS1sb2coLi4pYCBmdW5jdGlvbiByYXRoZXIgdGhhbiB0aGUgYGxvZyguLilgIG1peGluLiBCZWNhdXNlXG4gICAgLy8gZnVuY3Rpb25zIGNhbm5vdCBiZSBjYWxsZWQgYW55d2hlcmUgaW4gU2Fzcywgd2UgbmVlZCB0byBoYWNrIHRoZSBjYWxsIGluXG4gICAgLy8gYSBkdW1teSB2YXJpYWJsZSwgc3VjaCBhcyBgJF9gLiBJZiBhbnlib2R5IGV2ZXIgcmFpc2UgYSBzY29waW5nIGlzc3VlIHdpdGhcbiAgICAvLyBTYXNzIDMuMywgY2hhbmdlIHRoaXMgbGluZSBpbiBgQGlmIGltLWxvZyguLikge31gIGluc3RlYWQuXG4gICAgJF86IGltLWxvZygnVW5rbm93biB1bml0IGAje21hdGgudW5pdCgkdmFsdWUpfWAuJyk7XG4gIH1cblxuICBAaWYgJG9wZXJhdG9yID09ICc+JyB7XG4gICAgJHZhbHVlOiAkdmFsdWUgKyAkaW50ZXJ2YWw7XG4gIH0gQGVsc2UgaWYgJG9wZXJhdG9yID09ICc8JyB7XG4gICAgJHZhbHVlOiAkdmFsdWUgLSAkaW50ZXJ2YWw7XG4gIH1cblxuICBAcmV0dXJuICR2YWx1ZTtcbn1cblxuLy8vXG4vLy8gUGFyc2UgYW4gZXhwcmVzc2lvbiB0byByZXR1cm4gYSB2YWxpZCBtZWRpYS1xdWVyeSBleHByZXNzaW9uXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGV4cHJlc3Npb24gLSBFeHByZXNzaW9uIHRvIHBhcnNlXG4vLy9cbi8vLyBAcmV0dXJuIHtTdHJpbmd9IC0gVmFsaWQgbWVkaWEgcXVlcnlcbi8vL1xuQGZ1bmN0aW9uIHBhcnNlLWV4cHJlc3Npb24oJGV4cHJlc3Npb24pIHtcbiAgLy8gSWYgaXQgaXMgcGFydCBvZiAkbWVkaWEtZXhwcmVzc2lvbnMsIGl0IGhhcyBubyBvcGVyYXRvclxuICAvLyB0aGVuIHRoZXJlIGlzIG5vIG5lZWQgdG8gZ28gYW55IGZ1cnRoZXIsIGp1c3QgcmV0dXJuIHRoZSB2YWx1ZVxuICBAaWYgbWFwLmhhcy1rZXkoJG1lZGlhLWV4cHJlc3Npb25zLCAkZXhwcmVzc2lvbikge1xuICAgIEByZXR1cm4gbWFwLmdldCgkbWVkaWEtZXhwcmVzc2lvbnMsICRleHByZXNzaW9uKTtcbiAgfVxuXG4gICRvcGVyYXRvcjogZ2V0LWV4cHJlc3Npb24tb3BlcmF0b3IoJGV4cHJlc3Npb24pO1xuICAkZGltZW5zaW9uOiBnZXQtZXhwcmVzc2lvbi1kaW1lbnNpb24oJGV4cHJlc3Npb24sICRvcGVyYXRvcik7XG4gICRwcmVmaXg6IGdldC1leHByZXNzaW9uLXByZWZpeCgkb3BlcmF0b3IpO1xuICAkdmFsdWU6IGdldC1leHByZXNzaW9uLXZhbHVlKCRleHByZXNzaW9uLCAkb3BlcmF0b3IpO1xuXG4gIEByZXR1cm4gJygjeyRwcmVmaXh9LSN7JGRpbWVuc2lvbn06ICN7JHZhbHVlfSknO1xufVxuXG4vLy9cbi8vLyBTbGljZSBgJGxpc3RgIGJldHdlZW4gYCRzdGFydGAgYW5kIGAkZW5kYCBpbmRleGVzXG4vLy9cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TGlzdH0gJGxpc3QgLSBMaXN0IHRvIHNsaWNlXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRzdGFydCBbMV0gLSBTdGFydCBpbmRleFxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkZW5kIFtsZW5ndGgoJGxpc3QpXSAtIEVuZCBpbmRleFxuLy8vXG4vLy8gQHJldHVybiB7TGlzdH0gU2xpY2VkIGxpc3Rcbi8vL1xuQGZ1bmN0aW9uIHNsaWNlKCRsaXN0LCAkc3RhcnQ6IDEsICRlbmQ6IGxpc3QubGVuZ3RoKCRsaXN0KSkge1xuICBAaWYgbGlzdC5sZW5ndGgoJGxpc3QpIDwgMSBvciAkc3RhcnQgPiAkZW5kIHtcbiAgICBAcmV0dXJuICgpO1xuICB9XG5cbiAgJHJlc3VsdDogKCk7XG5cbiAgQGZvciAkaSBmcm9tICRzdGFydCB0aHJvdWdoICRlbmQge1xuICAgICRyZXN1bHQ6IGxpc3QuYXBwZW5kKCRyZXN1bHQsIGxpc3QubnRoKCRsaXN0LCAkaSksIGNvbW1hKTtcbiAgfVxuXG4gIEByZXR1cm4gJHJlc3VsdDtcbn1cblxuLy8vL1xuLy8vIFN0cmluZyB0byBudW1iZXIgY29udmVydGVyXG4vLy8gQGF1dGhvciBLaXR0eSBHaXJhdWRlbFxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vL1xuXG4vLy9cbi8vLyBDYXN0cyBhIHN0cmluZyBpbnRvIGEgbnVtYmVyXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZyB8IE51bWJlcn0gJHZhbHVlIC0gVmFsdWUgdG8gYmUgcGFyc2VkXG4vLy9cbi8vLyBAcmV0dXJuIHtOdW1iZXJ9XG4vLy9cblxuQGZ1bmN0aW9uIHRvLW51bWJlcigkdmFsdWUpIHtcbiAgQGlmIG1ldGEudHlwZS1vZigkdmFsdWUpID09ICdudW1iZXInIHtcbiAgICBAcmV0dXJuICR2YWx1ZTtcbiAgfSBAZWxzZSBpZiBtZXRhLnR5cGUtb2YoJHZhbHVlKSAhPSAnc3RyaW5nJyB7XG4gICAgJF86IGltLWxvZygnVmFsdWUgZm9yIGB0by1udW1iZXJgIHNob3VsZCBiZSBhIG51bWJlciBvciBhIHN0cmluZy4nKTtcbiAgfVxuXG4gICRmaXJzdC1jaGFyYWN0ZXI6IHN0cmluZy5zbGljZSgkdmFsdWUsIDEsIDEpO1xuICAkcmVzdWx0OiAwO1xuICAkZGlnaXRzOiAwO1xuICAkbWludXM6ICgkZmlyc3QtY2hhcmFjdGVyID09ICctJyk7XG4gICRudW1iZXJzOiAoXG4gICAgJzAnOiAwLFxuICAgICcxJzogMSxcbiAgICAnMic6IDIsXG4gICAgJzMnOiAzLFxuICAgICc0JzogNCxcbiAgICAnNSc6IDUsXG4gICAgJzYnOiA2LFxuICAgICc3JzogNyxcbiAgICAnOCc6IDgsXG4gICAgJzknOiA5LFxuICApO1xuXG4gIC8vIFJlbW92ZSArLy0gc2lnbiBpZiBwcmVzZW50IGF0IGZpcnN0IGNoYXJhY3RlclxuICBAaWYgKCRmaXJzdC1jaGFyYWN0ZXIgPT0gJysnIG9yICRmaXJzdC1jaGFyYWN0ZXIgPT0gJy0nKSB7XG4gICAgJHZhbHVlOiBzdHJpbmcuc2xpY2UoJHZhbHVlLCAyKTtcbiAgfVxuXG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggc3RyaW5nLmxlbmd0aCgkdmFsdWUpIHtcbiAgICAkY2hhcmFjdGVyOiBzdHJpbmcuc2xpY2UoJHZhbHVlLCAkaSwgJGkpO1xuXG4gICAgQGlmIG5vdChsaXN0LmluZGV4KG1hcC5rZXlzKCRudW1iZXJzKSwgJGNoYXJhY3Rlcikgb3IgJGNoYXJhY3RlciA9PSAnLicpIHtcbiAgICAgIEByZXR1cm4gdG8tbGVuZ3RoKGlmKCRtaW51cywgLSRyZXN1bHQsICRyZXN1bHQpLCBzdHJpbmcuc2xpY2UoJHZhbHVlLCAkaSkpO1xuICAgIH1cblxuICAgIEBpZiAkY2hhcmFjdGVyID09ICcuJyB7XG4gICAgICAkZGlnaXRzOiAxO1xuICAgIH0gQGVsc2UgaWYgJGRpZ2l0cyA9PSAwIHtcbiAgICAgICRyZXN1bHQ6ICRyZXN1bHQgKiAxMCArIG1hcC5nZXQoJG51bWJlcnMsICRjaGFyYWN0ZXIpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgJGRpZ2l0czogJGRpZ2l0cyAqIDEwO1xuICAgICAgJHJlc3VsdDogJHJlc3VsdCArIG1hdGguZGl2KG1hcC5nZXQoJG51bWJlcnMsICRjaGFyYWN0ZXIpLCAkZGlnaXRzKTtcbiAgICB9XG4gIH1cblxuICBAcmV0dXJuIGlmKCRtaW51cywgLSRyZXN1bHQsICRyZXN1bHQpO1xufVxuXG4vLy9cbi8vLyBBZGQgYCR1bml0YCB0byBgJHZhbHVlYFxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR2YWx1ZSAtIFZhbHVlIHRvIGFkZCB1bml0IHRvXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICR1bml0IC0gU3RyaW5nIHJlcHJlc2VudGF0aW9uIG9mIHRoZSB1bml0XG4vLy9cbi8vLyBAcmV0dXJuIHtOdW1iZXJ9IC0gYCR2YWx1ZWAgZXhwcmVzc2VkIGluIGAkdW5pdGBcbi8vL1xuQGZ1bmN0aW9uIHRvLWxlbmd0aCgkdmFsdWUsICR1bml0KSB7XG4gICR1bml0czogKFxuICAgICdweCc6IDFweCxcbiAgICAnY20nOiAxY20sXG4gICAgJ21tJzogMW1tLFxuICAgICclJzogMSUsXG4gICAgJ2NoJzogMWNoLFxuICAgICdwYyc6IDFwYyxcbiAgICAnaW4nOiAxaW4sXG4gICAgJ2VtJzogMWVtLFxuICAgICdyZW0nOiAxcmVtLFxuICAgICdwdCc6IDFwdCxcbiAgICAnZXgnOiAxZXgsXG4gICAgJ3Z3JzogMXZ3LFxuICAgICd2aCc6IDF2aCxcbiAgICAndm1pbic6IDF2bWluLFxuICAgICd2bWF4JzogMXZtYXgsXG4gICk7XG5cbiAgQGlmIG5vdCBsaXN0LmluZGV4KG1hcC5rZXlzKCR1bml0cyksICR1bml0KSB7XG4gICAgJF86IGltLWxvZygnSW52YWxpZCB1bml0IGAjeyR1bml0fWAuJyk7XG4gIH1cblxuICBAcmV0dXJuICR2YWx1ZSAqIG1hcC5nZXQoJHVuaXRzLCAkdW5pdCk7XG59XG5cbi8vL1xuLy8vIFRoaXMgbWl4aW4gYWltcyBhdCByZWRlZmluaW5nIHRoZSBjb25maWd1cmF0aW9uIGp1c3QgZm9yIHRoZSBzY29wZSBvZlxuLy8vIHRoZSBjYWxsLiBJdCBpcyBoZWxwZnVsIHdoZW4gaGF2aW5nIGEgY29tcG9uZW50IG5lZWRpbmcgYW4gZXh0ZW5kZWRcbi8vLyBjb25maWd1cmF0aW9uIHN1Y2ggYXMgY3VzdG9tIGJyZWFrcG9pbnRzIChyZWZlcnJlZCB0byBhcyB0d2Vha3BvaW50cylcbi8vLyBmb3IgaW5zdGFuY2UuXG4vLy9cbi8vLyBAYXV0aG9yIEtpdHR5IEdpcmF1ZGVsXG4vLy9cbi8vLyBAcGFyYW0ge01hcH0gJHR3ZWFrcG9pbnRzIFsoKV0gLSBNYXAgb2YgdHdlYWtwb2ludHMgdG8gYmUgbWVyZ2VkIHdpdGggYCRicmVha3BvaW50c2Bcbi8vLyBAcGFyYW0ge01hcH0gJHR3ZWFrLW1lZGlhLWV4cHJlc3Npb25zIFsoKV0gLSBNYXAgb2YgdHdlYWtlZCBtZWRpYSBleHByZXNzaW9ucyB0byBiZSBtZXJnZWQgd2l0aCBgJG1lZGlhLWV4cHJlc3Npb25gXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gRXh0ZW5kIHRoZSBnbG9iYWwgYnJlYWtwb2ludHMgd2l0aCBhIHR3ZWFrcG9pbnRcbi8vLyAgQGluY2x1ZGUgbWVkaWEtY29udGV4dCgoJ2N1c3RvbSc6IDY3OHB4KSkge1xuLy8vICAgIC5mb28ge1xuLy8vICAgICAgQGluY2x1ZGUgbWVkaWEoJz5waG9uZScsICc8PWN1c3RvbScpIHtcbi8vLyAgICAgICAvLyAuLi5cbi8vLyAgICAgIH1cbi8vLyAgICB9XG4vLy8gIH1cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBFeHRlbmQgdGhlIGdsb2JhbCBtZWRpYSBleHByZXNzaW9ucyB3aXRoIGEgY3VzdG9tIG9uZVxuLy8vICBAaW5jbHVkZSBtZWRpYS1jb250ZXh0KCR0d2Vhay1tZWRpYS1leHByZXNzaW9uczogKCdhbGwnOiAnYWxsJykpIHtcbi8vLyAgICAuZm9vIHtcbi8vLyAgICAgIEBpbmNsdWRlIG1lZGlhKCdhbGwnLCAnPnBob25lJykge1xuLy8vICAgICAgIC8vIC4uLlxuLy8vICAgICAgfVxuLy8vICAgIH1cbi8vLyAgfVxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIEV4dGVuZCBib3RoIGNvbmZpZ3VyYXRpb24gbWFwc1xuLy8vICBAaW5jbHVkZSBtZWRpYS1jb250ZXh0KCgnY3VzdG9tJzogNjc4cHgpLCAoJ2FsbCc6ICdhbGwnKSkge1xuLy8vICAgIC5mb28ge1xuLy8vICAgICAgQGluY2x1ZGUgbWVkaWEoJ2FsbCcsICc+cGhvbmUnLCAnPD1jdXN0b20nKSB7XG4vLy8gICAgICAgLy8gLi4uXG4vLy8gICAgICB9XG4vLy8gICAgfVxuLy8vICB9XG4vLy9cbkBtaXhpbiBtZWRpYS1jb250ZXh0KCR0d2Vha3BvaW50czogKCksICR0d2Vhay1tZWRpYS1leHByZXNzaW9uczogKCkpIHtcbiAgLy8gU2F2ZSBnbG9iYWwgY29uZmlndXJhdGlvblxuICAkZ2xvYmFsLWJyZWFrcG9pbnRzOiAkYnJlYWtwb2ludHM7XG4gICRnbG9iYWwtbWVkaWEtZXhwcmVzc2lvbnM6ICRtZWRpYS1leHByZXNzaW9ucztcblxuICAvLyBVcGRhdGUgZ2xvYmFsIGNvbmZpZ3VyYXRpb25cbiAgJGJyZWFrcG9pbnRzOiBtYXAubWVyZ2UoJGJyZWFrcG9pbnRzLCAkdHdlYWtwb2ludHMpICFnbG9iYWw7XG4gICRtZWRpYS1leHByZXNzaW9uczogbWFwLm1lcmdlKCRtZWRpYS1leHByZXNzaW9ucywgJHR3ZWFrLW1lZGlhLWV4cHJlc3Npb25zKSAhZ2xvYmFsO1xuXG4gIEBjb250ZW50O1xuXG4gIC8vIFJlc3RvcmUgZ2xvYmFsIGNvbmZpZ3VyYXRpb25cbiAgJGJyZWFrcG9pbnRzOiAkZ2xvYmFsLWJyZWFrcG9pbnRzICFnbG9iYWw7XG4gICRtZWRpYS1leHByZXNzaW9uczogJGdsb2JhbC1tZWRpYS1leHByZXNzaW9ucyAhZ2xvYmFsO1xufVxuXG4vLy8vXG4vLy8gaW5jbHVkZS1tZWRpYSBwdWJsaWMgZXhwb3NlZCBBUElcbi8vLyBAYXV0aG9yIEVkdWFyZG8gQm91Y2FzXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLy9cblxuLy8vXG4vLy8gR2VuZXJhdGVzIGEgbWVkaWEgcXVlcnkgYmFzZWQgb24gYSBsaXN0IG9mIGNvbmRpdGlvbnNcbi8vL1xuLy8vIEBwYXJhbSB7QXJnbGlzdH0gICAkY29uZGl0aW9ucyAgLSBNZWRpYSBxdWVyeSBjb25kaXRpb25zXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gV2l0aCBhIHNpbmdsZSBzZXQgYnJlYWtwb2ludFxuLy8vICBAaW5jbHVkZSBtZWRpYSgnPnBob25lJykgeyB9XG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gV2l0aCB0d28gc2V0IGJyZWFrcG9pbnRzXG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+cGhvbmUnLCAnPD10YWJsZXQnKSB7IH1cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBXaXRoIGN1c3RvbSB2YWx1ZXNcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz49MzU4cHgnLCAnPDg1MHB4JykgeyB9XG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gV2l0aCBzZXQgYnJlYWtwb2ludHMgd2l0aCBjdXN0b20gdmFsdWVzXG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+ZGVza3RvcCcsICc8PTEzNTBweCcpIHsgfVxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFdpdGggYSBzdGF0aWMgZXhwcmVzc2lvblxuLy8vICBAaW5jbHVkZSBtZWRpYSgncmV0aW5hMngnKSB7IH1cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBNaXhpbmcgZXZlcnl0aGluZ1xuLy8vICBAaW5jbHVkZSBtZWRpYSgnPj0zNTBweCcsICc8dGFibGV0JywgJ3JldGluYTN4JykgeyB9XG4vLy9cbkBtaXhpbiBtZWRpYSgkY29uZGl0aW9ucy4uLikge1xuICBAaWYgKCRpbS1tZWRpYS1zdXBwb3J0IGFuZCBsaXN0Lmxlbmd0aCgkY29uZGl0aW9ucykgPT0gMCkgb3JcbiAgICAobm90ICRpbS1tZWRpYS1zdXBwb3J0IGFuZCBpbS1pbnRlcmNlcHRzLXN0YXRpYy1icmVha3BvaW50KCRjb25kaXRpb25zLi4uKSlcbiAge1xuICAgIEBjb250ZW50O1xuICB9IEBlbHNlIGlmICgkaW0tbWVkaWEtc3VwcG9ydCBhbmQgbGlzdC5sZW5ndGgoJGNvbmRpdGlvbnMpID4gMCkge1xuICAgIEBtZWRpYSAje3N0cmluZy51bnF1b3RlKHBhcnNlLWV4cHJlc3Npb24obGlzdC5udGgoJGNvbmRpdGlvbnMsIDEpKSl9IHtcbiAgICAgIC8vIFJlY3Vyc2l2ZSBjYWxsXG4gICAgICBAaW5jbHVkZSBtZWRpYShzbGljZSgkY29uZGl0aW9ucywgMikuLi4pIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJAdXNlICcuLi9hYnN0cmFjdHMvJyBhcyAqO1xuXG4vLyBsaXN0IHJlc2V0XG5cbiVsaXN0cmVzZXQge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cbi8vIGNsZWFyZml4XG4lY2xlYXJmaXgge1xuICAgICY6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGNsZWFyOiBib3RoO1xuICAgIH1cbn1cblxuLmNsZWFyZml4IHtcbiAgICBAZXh0ZW5kICVjbGVhcmZpeDtcbn1cblxuLy8gdHJhbnNpdGlvblxuJXRyYW5zaXRpb24ge1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xufVxuXG4vLyBqdXN0aWZ5IG5hdlxuJWp1c3RpZnkge1xuICAgIHRleHQtYWxpZ246IGp1c3RpZnk7XG4gICAgZm9udC1zaXplOiAxcHg7XG4gICAgbGluZS1oZWlnaHQ6IDA7XG5cbiAgICA+ICoge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlO1xuICAgICAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gICAgfVxuXG4gICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgIH1cbn1cblxuJWJnQ292ZXIge1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG59XG5cbiVhYnNvbHV0ZUNvdmVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xufVxuXG4vLy8gKiBIZWxwZXIgY2xhc3MgdG8gdHJ1bmNhdGUgYW5kIGFkZCBlbGxpcHNpcyB0byBhIHN0cmluZyB0b28gbG9uZyBmb3IgaXQgdG8gZml0XG4vLy8gKiBvbiBhIHNpbmdsZSBsaW5lLlxuLy8vICogMS4gUHJldmVudCBjb250ZW50IGZyb20gd3JhcHBpbmcsIGZvcmNpbmcgaXQgb24gYSBzaW5nbGUgbGluZS5cbi8vLyAqIDIuIEFkZCBlbGxpcHNpcyBhdCB0aGUgZW5kIG9mIHRoZSBsaW5lLlxuXG4uZWxsaXBzaXMge1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLmRmLXJvdyB7XG4gICAgLy8gQGluY2x1ZGUgYWRkLXBhcmFtcygpO1xuXHRkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBtYXJnaW46IDAgKC0kZ3V0dGVyKTtcbiAgICBAaW5jbHVkZSBmbGV4LWdyaWQoKTtcblxuICAgIFtjbGFzcyo9XCJjb2wtXCJdIHtcbiAgICAgICAgcGFkZGluZzogMCAkZ3V0dGVyO1xuICAgIH1cbn0iLCJAdXNlIFwiLi92YXJpYWJsZXNcIiBhcyAqO1xuQHVzZSBcIi4vbWVkaWFcIiBhcyAqO1xuQHVzZSAnc2FzczpsaXN0Jztcbi8vIEBmb3J3YXJkICd+aW5jbHVkZS1tZWRpYS9kaXN0L2luY2x1ZGUtbWVkaWEnO1xuXG4vLyB2ZXJ0aWNhbCBhbGlnbiBlbCBpbnNpZGUgcGFyZW50IHdpdGggZml4ZWQgaGVpZ2h0L21pbi1oZWlnaHRcbi8vIHVzYWdlXG4vLyBodG1sIC0gLnBhcmVudD4uY2hpbGRcbi8vIHNjc3MgLSBAaW5jbHVkZSB2LWFsaWduO1xuLy8gICAgIG9yIEBpbmNsdWRlIHYtYWxpZ24oMjUwcHgpO1xuLy8gICAgIG9yIEBpbmNsdWRlIHYtYWxpZ24oMjUwcHgsIGJvdHRvbSwgYmVmb3JlKTtcbi8vXG5AbWl4aW4gdi1hbGlnbigkdmEtaGVpZ2h0OiAxMDAlLCAkdmEtZGlyZWN0aW9uOiBtaWRkbGUsICR2YS1wc2V1ZG86IGFmdGVyKSB7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAmOiN7JHZhLXBzZXVkb30ge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogJHZhLWRpcmVjdGlvbjtcbiAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgIG1pbi1oZWlnaHQ6ICR2YS1oZWlnaHQ7XG4gICAgfVxuXG4gICAgPioge1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiAkdmEtZGlyZWN0aW9uO1xuICAgICAgICBtYXgtd2lkdGg6IDk5JTtcbiAgICB9XG59XG5cbi8vIHZlcnRpY2FsIGFsaWduIGEgcGFpciBvZiBjaGlsZCBlbCBpbnNpZGUgcGFyZW50XG4vLyB1c2FnZcOnXG4vLyBodG1sIC0gLnBvc3Q+LmltYWdlKy50ZXh0XG4vLyBzY3NzIC0gQGluY2x1ZGUgdi1hbGlnbi1wYWlyKGltYWdlLCB0ZXh0KTtcbi8vICAgICBvciBAaW5jbHVkZSB2LWFsaWduLXBhaXIoaW1hZ2UsIHRleHQsIGJvdHRvbSk7XG4vLyAgICAgb3IgQGluY2x1ZGUgdi1hbGlnbi1wYWlyKGltYWdlLCB0ZXh0LCBtaWRkbGUsIDIwMHB4KTtcbi8vXG5AbWl4aW4gdi1hbGlnbi1wYWlyKCRjaGlsZC1uYW1lMSwgJGNoaWxkLW5hbWUyLCAkdmFsaWduOiBtaWRkbGUsICR3aWR0aDE6IGF1dG8sICR3aWR0aDI6IGF1dG8pIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcblxuICAgIC4jeyRjaGlsZC1uYW1lMX0ge1xuICAgICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogJHZhbGlnbjtcbiAgICAgICAgd2lkdGg6ICR3aWR0aDE7XG4gICAgfVxuXG4gICAgLiN7JGNoaWxkLW5hbWUyfSB7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiAkdmFsaWduO1xuICAgICAgICB3aWR0aDogJHdpZHRoMjtcbiAgICB9XG59XG5cbi8vIHZlcnRpY2FsIGFsaWduIGVsXG4vLyB1c2FnZTogQGluY2x1ZGUgdmVydGljYWwtYWxpZ24tZWw7XG4vL1xuQG1peGluIHZlcnRpY2FsLWFsaWduLWVsIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xufVxuXG4vLy8gTWl4aW4gaGVscGluZyBkZWZpbmluZyBib3RoIGB3aWR0aGAgYW5kIGBoZWlnaHRgIHNpbXVsdGFuZW91c2x5LlxuLy8vXG4vLy8gQGF1dGhvciBIdWdvIEdpcmF1ZGVsXG4vLy9cbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vXG4vLy8gQHBhcmFtIHtMZW5ndGh9ICR3aWR0aCAtIEVsZW1lbnTigJlzIGB3aWR0aGBcbi8vLyBAcGFyYW0ge0xlbmd0aH0gJGhlaWdodCAoJHdpZHRoKSAtIEVsZW1lbnTigJlzIGBoZWlnaHRgXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gVXNhZ2Vcbi8vLyAgIC5mb28ge1xuLy8vICAgICBAaW5jbHVkZSBzaXplKDEwZW0pO1xuLy8vICAgfVxuLy8vXG4vLy8gICAuYmFyIHtcbi8vLyAgICAgQGluY2x1ZGUgc2l6ZSgxMDAlLCAxMGVtKTtcbi8vLyAgIH1cbi8vL1xuLy8vIEBleGFtcGxlIGNzcyAtIENTUyBvdXRwdXRcbi8vLyAgIC5mb28ge1xuLy8vICAgICB3aWR0aDogMTBlbTtcbi8vLyAgICAgaGVpZ2h0OiAxMGVtO1xuLy8vICAgfVxuLy8vXG4vLy8gICAuYmFyIHtcbi8vLyAgICAgd2lkdGg6IDEwMCU7XG4vLy8gICAgIGhlaWdodDogMTBlbTtcbi8vLyAgIH1cbi8vL1xuQG1peGluIHNpemUoJHdpZHRoLCAkaGVpZ2h0OiAkd2lkdGgpIHtcbiAgICB3aWR0aDogJHdpZHRoO1xuICAgIGhlaWdodDogJGhlaWdodDtcbn1cblxuLy8vIGZvbnQtc21vdGhpbmdcbi8vLyBAaW5jbHVkZSBmb250LXNtb290aGluZyhvbik7XG4vLy8gQGluY2x1ZGUgZm9udC1zbW9vdGhpbmcob2ZmKTtcbkBtaXhpbiBmb250LXNtb290aGluZygkdmFsdWU6IG9uKSB7XG4gICAgQGlmICR2YWx1ZSA9PW9uIHtcbiAgICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gICAgfVxuXG4gICAgQGVsc2Uge1xuICAgICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBzdWJwaXhlbC1hbnRpYWxpYXNlZDtcbiAgICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGF1dG87XG4gICAgfVxufVxuXG5cbi8vLyBIaWRlcyB0aGUgdGV4dCBpbiBhbiBlbGVtZW50LCBjb21tb25seSB1c2VkIHRvIHNob3cgYW4gaW1hZ2UuIFNvbWUgZWxlbWVudHMgd2lsbCBuZWVkIGJsb2NrLWxldmVsIHN0eWxlcyBhcHBsaWVkLlxuLy8vXG4vLy8gQGxpbmsgaHR0cDovL3plbGRtYW4uY29tLzIwMTIvMDMvMDEvcmVwbGFjaW5nLXRoZS05OTk5cHgtaGFjay1uZXctaW1hZ2UtcmVwbGFjZW1lbnRcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBVc2FnZVxuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBAaW5jbHVkZSBoaWRlLXRleHQ7XG4vLy8gICB9XG4vLy9cbi8vLyBAZXhhbXBsZSBjc3MgLSBDU1MgT3V0cHV0XG4vLy8gICAuZWxlbWVudCB7XG4vLy8gICAgIG92ZXJmbG93OiBoaWRkZW47XG4vLy8gICAgIHRleHQtaW5kZW50OiAxMDElO1xuLy8vICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuLy8vICAgfVxuLy8vXG5AbWl4aW4gaGlkZS10ZXh0IHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHRleHQtaW5kZW50OiAxMDElO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cblxuLy8vIENyZWF0ZXMgYSB2aXN1YWwgdHJpYW5nbGUuXG4vLy8gTWl4aW4gdGFrZXMgKCRzaXplLCAkY29sb3IsICRkaXJlY3Rpb24pXG4vLy8gVGhlICRzaXplIGFyZ3VtZW50IGNhbiB0YWtlIG9uZSBvciB0d28gdmFsdWVz4oCUd2lkdGggaGVpZ2h0LlxuLy8vIFRoZSAkY29sb3IgYXJndW1lbnQgY2FuIHRha2Ugb25lIG9yIHR3b1xuLy8vIHZhbHVlc+KAlGZvcmVncm91bmQtY29sb3IgYmFja2dyb3VuZC1jb2xvci5cbi8vL1xuLy8vIEBhdXRob3IgaHR0cDovL2JvdXJib24uaW8vZG9jcy8jdHJpYW5nbGVcbi8vL1xuLy8vICRkaXJlY3Rpb246XG4vLy8gdXAsIGRvd24sIGxlZnQsIHJpZ2h0LCB1cC1yaWdodCwgdXAtbGVmdCwgZG93bi1yaWdodCwgZG93bi1sZWZ0XG4vLy8gQGV4YW1wbGUgc2NzcyAtIFVzYWdlXG4vLy8gICBAaW5jbHVkZSB0cmlhbmdsZSgxMnB4LCBncmF5LCBkb3duKTtcbi8vLyAgIEBpbmNsdWRlIHRyaWFuZ2xlKDEycHggNnB4LCBncmF5IGJsdWUsIHVwLWxlZnQpO1xuLy8vXG5AbWl4aW4gdHJpYW5nbGUoJHNpemUsICRjb2xvciwgJGRpcmVjdGlvbikge1xuICAgICR3aWR0aDogbnRoKCRzaXplLCAxKTtcbiAgICAkaGVpZ2h0OiBudGgoJHNpemUsIGxlbmd0aCgkc2l6ZSkpO1xuICAgICRmb3JlZ3JvdW5kLWNvbG9yOiBudGgoJGNvbG9yLCAxKTtcbiAgICAkYmFja2dyb3VuZC1jb2xvcjogaWYobGVuZ3RoKCRjb2xvcik9PTIsIG50aCgkY29sb3IsIDIpLCB0cmFuc3BhcmVudCk7XG4gICAgaGVpZ2h0OiAwO1xuICAgIHdpZHRoOiAwO1xuXG4gICAgQGlmICgkZGlyZWN0aW9uID09dXApIG9yICgkZGlyZWN0aW9uID09ZG93bikgb3IgKCRkaXJlY3Rpb24gPT1yaWdodCkgb3IgKCRkaXJlY3Rpb24gPT1sZWZ0KSB7XG4gICAgICAgICR3aWR0aDogJHdpZHRoIC8gMjtcbiAgICAgICAgJGhlaWdodDogaWYobGVuZ3RoKCRzaXplKSA+IDEsICRoZWlnaHQsICRoZWlnaHQvMik7XG5cbiAgICAgICAgQGlmICRkaXJlY3Rpb24gPT11cCB7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAkaGVpZ2h0IHNvbGlkICRmb3JlZ3JvdW5kLWNvbG9yO1xuICAgICAgICAgICAgYm9yZGVyLWxlZnQ6ICR3aWR0aCBzb2xpZCAkYmFja2dyb3VuZC1jb2xvcjtcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogJHdpZHRoIHNvbGlkICRiYWNrZ3JvdW5kLWNvbG9yO1xuICAgICAgICB9XG5cbiAgICAgICAgQGVsc2UgaWYgJGRpcmVjdGlvbiA9PXJpZ2h0IHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206ICR3aWR0aCBzb2xpZCAkYmFja2dyb3VuZC1jb2xvcjtcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAkaGVpZ2h0IHNvbGlkICRmb3JlZ3JvdW5kLWNvbG9yO1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogJHdpZHRoIHNvbGlkICRiYWNrZ3JvdW5kLWNvbG9yO1xuICAgICAgICB9XG5cbiAgICAgICAgQGVsc2UgaWYgJGRpcmVjdGlvbiA9PWRvd24ge1xuICAgICAgICAgICAgYm9yZGVyLWxlZnQ6ICR3aWR0aCBzb2xpZCAkYmFja2dyb3VuZC1jb2xvcjtcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogJHdpZHRoIHNvbGlkICRiYWNrZ3JvdW5kLWNvbG9yO1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogJGhlaWdodCBzb2xpZCAkZm9yZWdyb3VuZC1jb2xvcjtcbiAgICAgICAgfVxuXG4gICAgICAgIEBlbHNlIGlmICRkaXJlY3Rpb24gPT1sZWZ0IHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206ICR3aWR0aCBzb2xpZCAkYmFja2dyb3VuZC1jb2xvcjtcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogJGhlaWdodCBzb2xpZCAkZm9yZWdyb3VuZC1jb2xvcjtcbiAgICAgICAgICAgIGJvcmRlci10b3A6ICR3aWR0aCBzb2xpZCAkYmFja2dyb3VuZC1jb2xvcjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBlbHNlIGlmICgkZGlyZWN0aW9uID09dXAtcmlnaHQpIG9yICgkZGlyZWN0aW9uID09dXAtbGVmdCkge1xuICAgICAgICBib3JkZXItdG9wOiAkaGVpZ2h0IHNvbGlkICRmb3JlZ3JvdW5kLWNvbG9yO1xuXG4gICAgICAgIEBpZiAkZGlyZWN0aW9uID09dXAtcmlnaHQge1xuICAgICAgICAgICAgYm9yZGVyLWxlZnQ6ICR3aWR0aCBzb2xpZCAkYmFja2dyb3VuZC1jb2xvcjtcbiAgICAgICAgfVxuXG4gICAgICAgIEBlbHNlIGlmICRkaXJlY3Rpb24gPT11cC1sZWZ0IHtcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogJHdpZHRoIHNvbGlkICRiYWNrZ3JvdW5kLWNvbG9yO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGVsc2UgaWYgKCRkaXJlY3Rpb24gPT1kb3duLXJpZ2h0KSBvciAoJGRpcmVjdGlvbiA9PWRvd24tbGVmdCkge1xuICAgICAgICBib3JkZXItYm90dG9tOiAkaGVpZ2h0IHNvbGlkICRmb3JlZ3JvdW5kLWNvbG9yO1xuXG4gICAgICAgIEBpZiAkZGlyZWN0aW9uID09ZG93bi1yaWdodCB7XG4gICAgICAgICAgICBib3JkZXItbGVmdDogJHdpZHRoIHNvbGlkICRiYWNrZ3JvdW5kLWNvbG9yO1xuICAgICAgICB9XG5cbiAgICAgICAgQGVsc2UgaWYgJGRpcmVjdGlvbiA9PWRvd24tbGVmdCB7XG4gICAgICAgICAgICBib3JkZXItcmlnaHQ6ICR3aWR0aCBzb2xpZCAkYmFja2dyb3VuZC1jb2xvcjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBlbHNlIGlmICgkZGlyZWN0aW9uID09aW5zZXQtdXApIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkYmFja2dyb3VuZC1jb2xvciAkYmFja2dyb3VuZC1jb2xvciAkZm9yZWdyb3VuZC1jb2xvcjtcbiAgICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICAgICAgYm9yZGVyLXdpZHRoOiAkaGVpZ2h0ICR3aWR0aDtcbiAgICB9XG5cbiAgICBAZWxzZSBpZiAoJGRpcmVjdGlvbiA9PWluc2V0LWRvd24pIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkZm9yZWdyb3VuZC1jb2xvciAkYmFja2dyb3VuZC1jb2xvciAkYmFja2dyb3VuZC1jb2xvcjtcbiAgICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICAgICAgYm9yZGVyLXdpZHRoOiAkaGVpZ2h0ICR3aWR0aDtcbiAgICB9XG5cbiAgICBAZWxzZSBpZiAoJGRpcmVjdGlvbiA9PWluc2V0LXJpZ2h0KSB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGJhY2tncm91bmQtY29sb3IgJGJhY2tncm91bmQtY29sb3IgJGJhY2tncm91bmQtY29sb3IgJGZvcmVncm91bmQtY29sb3I7XG4gICAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgICAgIGJvcmRlci13aWR0aDogJHdpZHRoICRoZWlnaHQ7XG4gICAgfVxuXG4gICAgQGVsc2UgaWYgKCRkaXJlY3Rpb24gPT1pbnNldC1sZWZ0KSB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGJhY2tncm91bmQtY29sb3IgJGZvcmVncm91bmQtY29sb3IgJGJhY2tncm91bmQtY29sb3IgJGJhY2tncm91bmQtY29sb3I7XG4gICAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgICAgIGJvcmRlci13aWR0aDogJHdpZHRoICRoZWlnaHQ7XG4gICAgfVxufVxuXG5cbi8vLyBBbmltYXRlIGNzcyBwcm9wZXJ0aWVzXG4vLyB1c2FnZVxuLy8gc2NzcyAtIEBpbmNsdWRlIGFuaW1hdGUoY29sb3IpO1xuLy8gICAgIG9yIEBpbmNsdWRlIGFuaW1hdGUoY29sb3Igd2lkdGgpO1xuLy8gICAgIG9yIEBpbmNsdWRlIGFuaW1hdGUoY29sb3Igd2lkdGgsIDFzLCBsaW5lYXIpO1xuLy9cblxuQG1peGluIGFuaW1hdGUoJHByb3BlcnRpZXMsICRkdXJhdGlvbjogJGFuaW1hdGlvbi1zcGVlZCwgJGVhc2luZzogZWFzZS1pbi1vdXQpIHtcbiAgICAkbGlzdDogKCk7XG5cbiAgICBAZWFjaCAkcHJvcCBpbiAkcHJvcGVydGllcyB7XG4gICAgICAgICRzdHI6ICN7JHByb3B9ICN7JGR1cmF0aW9ufSAjeyRlYXNpbmd9O1xuICAgICAgICAkbGlzdDogbGlzdC5qb2luKCRsaXN0LCAjeyRzdHJ9LCBjb21tYSk7XG4gICAgfVxuXG4gICAgdHJhbnNpdGlvbjogJGxpc3Q7XG59XG5cblxuLy8vIE1peGluIGZvciBzdHlsaW5nIGZvcm0tcGxhY2Vob2xkZXJzXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFVzYWdlXG4vLy8gICBAaW5jbHVkZSBwbGFjZWhvbGRlciB7XG4vLy8gICAgY29sb3I6ICMzMzM7XG4vLy8gICB9XG4vLy9cbi8vLyAgIGlucHV0W3R5cGU9J3RleHQnXSxcbi8vLyAgIGlucHV0W3R5cGU9J3RlbCddLFxuLy8vICAgaW5wdXRbdHlwZT0nZW1haWwnXSB7XG4vLy8gICAgIEBpbmNsdWRlIHBsYWNlaG9sZGVyIHtcbi8vLyAgICAgIGNvbG9yOiByZWQ7XG4vLy8gICAgIH1cbi8vLyAgIH1cblxuQG1peGluIHBsYWNlaG9sZGVyIHtcbiAgICAmOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuXG4gICAgJjo6LW1vei1wbGFjZWhvbGRlciB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIEBjb250ZW50O1xuICAgIH1cblxuICAgICY6LW1vei1wbGFjZWhvbGRlciB7XG4gICAgICAgIEBjb250ZW50O1xuICAgIH1cblxuICAgICY6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuXG4gICAgJi5wbGFjZWhvbGRlciB7XG4gICAgICAgIEBjb250ZW50O1xuICAgIH1cbn1cblxuLy8vIEZvbnQtc2l6ZSBweCB0byByZW0gY2FsY1xuLy8vIEBleGFtcGxlIHNjc3MgLSBVc2FnZVxuLy8vIHNlbGVjdG9yIHtcbi8vLyAgICBAaW5jbHVkZSByZW0tZm9udC1zaXplKDE2cHgpO1xuLy8vIH1cblxuQG1peGluIHJlbS1mb250LXNpemUoJHB4LXNpemUpIHtcbiAgICBmb250LXNpemU6ICRweC1zaXplO1xuICAgIGZvbnQtc2l6ZTogKCRweC1zaXplIC8gMTBweCkgKyByZW07XG59XG5cbi8vZm9udC1mYWNlXG5AbWl4aW4gZm9udC1mYWNlKCRmb250LW5hbWUsICRmb250LXBhdGgsICR3ZWlnaHQsICRzdHlsZSkge1xuICAgIEBmb250LWZhY2Uge1xuICAgICAgICBmb250LWZhbWlseTogJyN7JGZvbnQtbmFtZX0nO1xuICAgICAgICBzcmM6IHVybCgnZm9udHMvI3skZm9udC1wYXRofS53b2ZmMicpIGZvcm1hdCgnd29mZicpO1xuICAgICAgICBmb250LXdlaWdodDogJHdlaWdodDtcbiAgICAgICAgZm9udC1zdHlsZTogJHN0eWxlO1xuICAgIH1cbn1cblxuXG4vLyBAbWl4aW4gYWRkLXBhcmFtcygpIHtcblxuLy8gICAgIEBlYWNoICR2YWwsXG4vLyAgICAgJG1lZGlhIGluICRncmlkIHtcbi8vICAgICAgICAgJi5kZi1yci0jeyR2YWx9IHtcbi8vICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKCfiiaUnICsgJG1lZGlhKSB7XG4vLyAgICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xuLy8gICAgICAgICAgICAgfVxuLy8gICAgICAgICB9XG5cbi8vICAgICAgICAgJi5kZi1haWMtI3skdmFsfSB7XG4vLyAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYSgn4omlJyArICRtZWRpYSkge1xuLy8gICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4vLyAgICAgICAgICAgICB9XG4vLyAgICAgICAgIH1cbi8vICAgICB9XG4vLyB9XG5cbi8vIGZsZXggZ3JpZFxuQG1peGluIGZsZXgtZ3JpZCgpIHtcbiAgICBAZWFjaCAkdmFsLFxuICAgICRtZWRpYSBpbiAkZ3JpZCB7XG4gICAgICAgIEBmb3IgJGd1dHRlciBmcm9tIDEgdGhyb3VnaCAxMiB7XG4gICAgICAgICAgICAuY29sLSN7JHZhbH0tI3skZ3V0dGVyfSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoJ+KJpScgKyAkbWVkaWEpIHtcbiAgICAgICAgICAgICAgICAgICAgZmxleDogMSAwIGNhbGMoMTAwJSAvIDEyICogI3skZ3V0dGVyfSk7XG4gICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogY2FsYygxMDAlIC8gMTIgKiAjeyRndXR0ZXJ9KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAZm9yICRndXR0ZXIgZnJvbSAwIHRocm91Z2ggMTEge1xuICAgICAgICAgICAgLmNvbC1vZmZzZXQtI3skdmFsfS0jeyRndXR0ZXJ9IHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYSgn4omlJyArICRtZWRpYSkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogY2FsYygxMDAlIC8gMTIgKiAjeyRndXR0ZXJ9KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbkBtaXhpbiB2LWNlbnRlcigkbWluLWhlaWdodDogNDAwcHgpIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuXG4gICAgPioge1xuICAgICAgICBtaW4taGVpZ2h0OiAkbWluLWhlaWdodDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbn1cblxuLy8gb2JqZWN0IGZpdCBmb3IgaW1hZ2VcbkBtaXhpbiBpbWctc2NhbGUge1xuICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgIG9iamVjdC1wb3NpdGlvbjogY2VudGVyO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbn1cblxuLy8gQG1peGluIHNjcm9sbC1jdXN0b20oJHdpZHRoOiA4cHgsICRoZWlnaHQ6IDhweCwgJHNjcm9sbC1iZzogI2U5ZTllOSwgJHNjcm9sbC1zbGlkZXItYmc6ICNhMWE1YWQpIHtcbkBtaXhpbiBzY3JvbGwtY3VzdG9tKCR3aWR0aDogNXB4LCAkaGVpZ2h0OiA1cHgsICRzY3JvbGwtYmc6ICNmZmYsICRzY3JvbGwtc2xpZGVyLWJnOiByZ2JhKCNCNEI0QjQsIDEpKSB7XG4gICAgOjotd2Via2l0LXNjcm9sbGJhciB7XG4gICAgICAgIHdpZHRoOiAkd2lkdGg7XG4gICAgICAgIGhlaWdodDogJGhlaWdodDtcbiAgICAgICAgYmFja2dyb3VuZDogJHNjcm9sbC1iZztcbiAgICAgICAgYm9yZGVyLXJhZGl1czogY2FsYygjeyR3aWR0aH0gLyAyKTtcbiAgICAgICAgbWFyZ2luOiAwIDZweCAwIDA7XG4gICAgfVxuICAgIFxuICAgIDo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2sge1xuICAgICAgICBib3JkZXItcmFkaXVzOiBjYWxjKCN7JHdpZHRofSAvIDIpO1xuICAgICAgICAvLyBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL3RyYWNrLmpwZykgdG9wIGNlbnRlciByZXBlYXQteTtcbiAgICB9XG4gICAgXG4gICAgOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XG4gICAgICAgIHdpZHRoOiAkd2lkdGg7XG4gICAgICAgIGhlaWdodDogNDBweDtcbiAgICAgICAgYmFja2dyb3VuZDogJHNjcm9sbC1zbGlkZXItYmc7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IGNhbGMoI3skd2lkdGh9IC8gMik7XG4gICAgfVxufSIsIkB1c2UgXCIuL3ZhcmlhYmxlc1wiIGFzICo7XG5AdXNlIFwiLi9tZWRpYVwiIGFzICo7XG5AdXNlIFwic2FzczptYXRoXCI7XG5cbkBtaXhpbiB0aXRsZS1zaXplKCRzeW1ib2wpIHtcblxuICAgIEBlYWNoICRtZWRpYSxcbiAgICAkdGl0bGVzLXNpemUgaW4gJHRpdGxlLXBhbGV0dGUge1xuICAgICAgICBAaWYgJG1lZGlhID09bW9iaWxlIHtcblxuICAgICAgICAgICAgQGVhY2ggJHRpdGxlLFxuICAgICAgICAgICAgJHNpemUgaW4gJHRpdGxlcy1zaXplIHtcblxuICAgICAgICAgICAgICAgICN7JHRpdGxlfSxcbiAgICAgICAgICAgICAgICAuI3skdGl0bGV9IHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAkc2l6ZSArIHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBlbHNlIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKCN7JHN5bWJvbH0jeyRtZWRpYX0pIHtcblxuICAgICAgICAgICAgICAgIEBlYWNoICR0aXRsZSxcbiAgICAgICAgICAgICAgICAkc2l6ZSBpbiAkdGl0bGVzLXNpemUge1xuXG4gICAgICAgICAgICAgICAgICAgICN7JHRpdGxlfSxcbiAgICAgICAgICAgICAgICAgICAgLiN7JHRpdGxlfSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6ICRzaXplICsgcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vXG4vLyBAZnVuY3Rpb25zXG4vL1xuXG4vLyBDT05WRVJUIFRPIFJFTVxuQGZ1bmN0aW9uIGNvbnZlcnQtdG8tcmVtKCR2YWx1ZSwgJGJhc2UtdmFsdWU6ICRyZW0tYmFzZSkge1xuXHQkcmF0aW86ICBtYXRoLmRpdigkdmFsdWUgLCAkYmFzZS12YWx1ZSk7XG5cbiAgLy8g0LzQvdC+0LbQuNC80L4g0LLQttC1INC90LAgMXJlbVxuICBAcmV0dXJuICRyYXRpbyAqIDFyZW07XG59XG5cbi8vIFJFTSBDQUxDXG5cbi8vIE5ldyBTeW50YXgsIGFsbG93cyB0byBvcHRpb25hbGx5IGNhbGN1bGF0ZSBvbiBhIGRpZmZlcmVudCBiYXNlIHZhbHVlIHRvIGNvdW50ZXIgY29tcG91bmRpbmcgZWZmZWN0IG9mIHJlbSdzLlxuLy8gQ2FsbCB3aXRoIDEsIDIsIDMgb3IgNCBwYXJhbWV0ZXJzLCAncHgnIGlzIG5vdCByZXF1aXJlZCBidXQgc3VwcG9ydGVkOlxuLy9cbi8vICAgcmVtLWNhbGMoMTAgMjAgMzBweCA0MCk7XG4vL1xuLy8gU3BhY2UgZGVsaW1pdGVkLCBpZiB5b3Ugd2FudCB0byBkZWxpbWl0IHVzaW5nIGNvbW1hJ3MsIHdyYXAgaXQgaW4gYW5vdGhlciBwYWlyIG9mIGJyYWNrZXRzXG4vL1xuLy8gICByZW0tY2FsYygoMTAsIDIwLCAzMCwgNDBweCkpO1xuLy9cbi8vIE9wdGlvbmFsbHkgY2FsbCB3aXRoIGEgZGlmZmVyZW50IGJhc2UgKGVnOiA4cHgpIHRvIGNhbGN1bGF0ZSByZW0uXG4vL1xuLy8gICByZW0tY2FsYygxNnB4IDMycHggNDhweCwgOHB4KTtcbi8vXG4vLyBJZiB5b3UgcmVxdWlyZSB0byBjb21tYSBzZXBhcmF0ZSB5b3VyIGxpc3Rcbi8vXG4vLyAgIHJlbS1jYWxjKCgxNnB4LCAzMnB4LCA0OCksIDhweCk7XG5cbkBmdW5jdGlvbiByZW0tY2FsYygkdmFsdWVzLCAkYmFzZS12YWx1ZTogJHJlbS1iYXNlKSB7XG4gICAgJG1heDogbGVuZ3RoKCR2YWx1ZXMpO1xuXG4gICAgQGlmICRtYXggPT0xIHtcbiAgICAgICAgQHJldHVybiBjb252ZXJ0LXRvLXJlbShudGgoJHZhbHVlcywgMSksICRiYXNlLXZhbHVlKTtcbiAgICB9XG5cbiAgICAkcmVtVmFsdWVzOiAoXG4gICAgKTtcblxuQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkbWF4IHtcbiAgICAkcmVtVmFsdWVzOiBhcHBlbmQoJHJlbVZhbHVlcywgY29udmVydC10by1yZW0obnRoKCR2YWx1ZXMsICRpKSwgJGJhc2UtdmFsdWUpKTtcbn1cblxuQHJldHVybiAkcmVtVmFsdWVzO1xufVxuXG5AZnVuY3Rpb24gZW0tY2FsYygkdmFsdWVzLCAkYmFzZS12YWx1ZTogJHJlbS1iYXNlKSB7XG4gICAgJHJlbVZhbHVlczogcmVtLWNhbGMoJHZhbHVlcywgJGJhc2UtdmFsdWU6ICRyZW0tYmFzZSk7XG5cbiAgICAkbWF4OiBsZW5ndGgoJHJlbVZhbHVlcyk7XG5cbiAgICBAaWYgJG1heCA9PTEge1xuICAgICAgICBAcmV0dXJuIHN0cmlwLXVuaXQobnRoKCRyZW1WYWx1ZXMsIDEpKSAqIDFlbTtcbiAgICB9XG5cbiAgICAkZW1WYWx1ZXM6IChcbiAgICApO1xuXG5AZm9yICRpIGZyb20gMSB0aHJvdWdoICRtYXgge1xuICAgICRlbVZhbHVlczogYXBwZW5kKCRlbVZhbHVlcywgc3RyaXAtdW5pdChudGgoJHJlbVZhbHVlcywgJGkpKSAqIDFlbSk7XG59XG5cbkByZXR1cm4gJGVtVmFsdWVzO1xufSIsIi8vIFR5cG9ncmFwaHlcbkB1c2UgJy4uL2Fic3RyYWN0cy8nIGFzICo7XG5cbkBpbmNsdWRlIHRpdGxlLXNpemUoJ+KJpScpO1xuXG5oMSxcbi5oMSxcbmgyLFxuLmgyLFxuaDMsXG4uaDMsXG5oNCxcbi5oNCxcbmg1LFxuLmg1LFxuaDYsXG4uaDYsXG4uaCB7XG4gICAgZm9udC1mYW1pbHk6ICRoZWFkaW5ncy1mb250LWZhbWlseTtcbiAgICBjb2xvcjogJGhlYWRpbmdzLWNvbG9yO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIG1hcmdpbjogMCAwIDEwcHg7XG5cbiAgICBAaW5jbHVkZSBtZWRpYSgn4omldGFibGV0Jykge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIH1cbn1cblxuaDIge1xuXHRmb250LXNpemU6IHJlbS1jYWxjKDMwcHgpO1xuXHRsaW5lLWhlaWdodDogY2FsYyg4MCAvIDYwKTtcblx0Zm9udC13ZWlnaHQ6IDUwMDtcblx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0Y29sb3I6ICRwcmltYXJ5O1xuXHRsZXR0ZXItc3BhY2luZzogLS4wMjVlbTtcblxuXHRAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XG5cdFx0Zm9udC1zaXplOiByZW0tY2FsYyg0OHB4KTtcblx0fVxuXG5cdEBpbmNsdWRlIG1lZGlhKCc+PWRlc2t0b3AnKSB7XG5cdFx0Zm9udC1zaXplOiByZW0tY2FsYyg2MHB4KTtcblx0fVxufVxuXG5wIHtcblx0QGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuXHRcdG1hcmdpbjogMCAwIDI4cHg7XG5cdH1cblxuXHRAaW5jbHVkZSBtZWRpYSgnPj1kZXNrdG9wJykge1xuXHRcdG1hcmdpbjogMCAwIDMzcHg7XG5cdH1cbn1cblxuYSB7XG4gICAgY29sb3I6ICRiYXNlLWxpbmstY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiAkdGV4dC1kZWNvcmF0aW9uO1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICRiYXNlLWxpbmstaG92ZXItY29sb3I7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogJHRleHQtZGVjb3JhdGlvbi1ob3ZlcjtcbiAgICB9XG59XG5cbmFbaHJlZio9XCJtYWlsdG86XCJdIHtcbiAgICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG59XG5cbi5oZWFkaW5nIHtcblx0ZGlzcGxheTogZmxleDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXHRtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxNnB4KTtcblxuXHRAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XG5cdFx0bWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjRweCk7XG5cdH1cblxuXHRAaW5jbHVkZSBtZWRpYSgnPj1kZXNrdG9wJykge1xuXHRcdG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDM2cHgpO1xuXHR9XG5cblx0aDIge1xuXHRcdG1hcmdpbjogMDtcblx0fVxuXG5cblx0LmJ0biB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblxuXHRcdEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcblx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHR9XG5cdH1cbn0iLCJAdXNlICcuLi9hYnN0cmFjdHMvJyBhcyAqO1xuXG4vLyBmb3Jtc1xuZm9ybSxcbmZpZWxkc2V0IHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBib3JkZXItc3R5bGU6IG5vbmU7XG59XG5cbmlucHV0W3R5cGU9J3RleHQnXSxcbmlucHV0W3R5cGU9J3RlbCddLFxuaW5wdXRbdHlwZT0nZW1haWwnXSxcbmlucHV0W3R5cGU9J3NlYXJjaCddLFxuaW5wdXRbdHlwZT0ncGFzc3dvcmQnXSxcbmlucHV0W3R5cGU9J3VybCddLFxuLy8gaW5wdXRbdHlwZT0nZGF0ZSddLFxudGV4dGFyZWEge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDA7XG4gICAgcGFkZGluZzogcmVtLWNhbGMoMTBweCAxM3B4KTtcblx0XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxNHB4KTtcbiAgICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0O1xuICAgIGZvbnQtZmFtaWx5OiAkaW5wdXQtZm9udC1mYW1pbHk7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBib3JkZXI6ICRpbnB1dC1ib3JkZXI7XG4gICAgYm9yZGVyLXJhZGl1czogJGlucHV0LWJvcmRlci1yYWRpdXM7XG5cdGZvbnQtZmFtaWx5OiAkYmFzZS1mb250O1xuXHRmb250LXdlaWdodDogNDAwO1xuXG5cdEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcblx0XHRwYWRkaW5nOiByZW0tY2FsYygxMHB4IDI3cHgpO1xuXHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMTRweCk7XG5cdH1cblxuXHRAaW5jbHVkZSBtZWRpYSgnPj1kZXNrdG9wJykge1xuXHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMThweCk7XG5cdFx0cGFkZGluZzogcmVtLWNhbGMoMTBweCA0OXB4KTtcblx0fVxuXG4gICAgJjpub3QodGV4dGFyZWEpIHtcblx0XHRoZWlnaHQ6IHJlbS1jYWxjKDY1cHgpO1xuXG5cdFx0QGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuXHRcdFx0aGVpZ2h0OiByZW0tY2FsYyg4N3B4KTtcblx0XHR9XG4gICAgfVxuXG4gICAgJjpmb2N1cyB7XG4gICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvcjtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBwbGFjZWhvbGRlciB7XG4gICAgICAgIGNvbG9yOiAkcGxhY2Vob2xkZXItY29sb3I7XG4gICAgfVxufVxuXG5pbnB1dFt0eXBlPSdzZWFyY2gnXTo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbiB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4vLyBpbnB1dFt0eXBlPVwic2VhcmNoXCJdIHtcbi8vICAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7XG4vLyB9XG5cbnRleHRhcmVhIHtcbiAgICByZXNpemU6IHZlcnRpY2FsO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG59XG5cbmJ1dHRvbixcbmJ1dHRvbi5idG4sXG5pbnB1dFt0eXBlPSdidXR0b24nXSxcbmlucHV0W3R5cGU9J3Jlc2V0J10sXG5pbnB1dFt0eXBlPSdmaWxlJ10sXG5pbnB1dFt0eXBlPSdzdWJtaXQnXSB7XG4gICAgQGluY2x1ZGUgYW5pbWF0ZShiYWNrZ3JvdW5kKTtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAwO1xuICAgIGhlaWdodDogcmVtLWNhbGMoNjVweCk7XG4gICAgcGFkZGluZzogJHN1Ym1pdC1wYWRkaW5nO1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTRweCk7XG4gICAgbGluZS1oZWlnaHQ6ICRzdWJtaXQtbGluZS1oZWlnaHQ7XG4gICAgY29sb3I6ICRzdWJtaXQtY29sb3I7XG4gICAgYmFja2dyb3VuZDogJHByaW1hcnk7XG5cdGZvbnQtd2VpZ2h0OiA3MDA7XG5cblx0QGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuXHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMThweCk7XG5cdFx0aGVpZ2h0OiByZW0tY2FsYyg4N3B4KTtcblx0fVxuXG4gICAgYm9yZGVyOiB7XG4gICAgICAgIHdpZHRoOiAkc3VibWl0LWJvcmRlci13aWR0aDtcbiAgICAgICAgc3R5bGU6ICRzdWJtaXQtYm9yZGVyLXN0eWxlO1xuICAgICAgICBjb2xvcjogJHN1Ym1pdC1ib3JkZXItY29sb3I7XG4gICAgICAgIHJhZGl1czogJHN1Ym1pdC1yYWRpdXM7XG4gICAgfVxuXG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHRyYW5zaXRpb246IGFsbCAkYW5pbWF0aW9uLXNwZWVkO1xuXG4gICAgJjpob3Zlcixcblx0Jjpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRzdWJtaXQtaG92ZXItYmFja2dyb3VuZDtcbiAgICAgICAgY29sb3I6ICRzdWJtaXQtaG92ZXItY29sb3I7XG4gICAgfVxufSIsIkB1c2UgJy4uL2Fic3RyYWN0cy8nIGFzICo7XG5cbm5vc2NyaXB0IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICB0b3A6IDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBjb2xvcjogJGxpZ2h0O1xuICAgIGJhY2tncm91bmQ6ICRwcmltYXJ5O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IDVweCAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB6LWluZGV4OiA5OTk5OTtcbn1cblxuLmFjY2Vzc2liaWxpdHkge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAtMjAwdnc7XG4gICAgdG9wOiBhdXRvO1xuICAgIHdpZHRoOiAxcHg7XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICY6Zm9jdXMge1xuICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgIH1cbn1cblxuLnZpc3VhbGx5LWhpZGRlbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IC05OTk5cHg7XG4gICAgdG9wOiBhdXRvO1xuICAgIHdpZHRoOiAxcHg7XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbn0iLCIvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gVGhpcyBmaWxlIGNvbnRhaW5zIGFsbCBzdHlsZXMgcmVsYXRlZCB0byB0aGUgaGVhZGVyIG9mIHRoZSBzaXRlXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuQHVzZSBcIi4uL2Fic3RyYWN0cy9cIiBhcyAqO1xuXG5baWQ9XCJoZWFkZXJcIl0ge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcblx0bGVmdDogMCAhaW1wb3J0YW50O1xuXHRyaWdodDogMCAhaW1wb3J0YW50O1xuXHR3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuXHR0b3A6IDA7XG5cdHotaW5kZXg6IDIwMDtcblx0dHJhbnNpdGlvbjogMC40cyBhbGw7XG5cdHBhZGRpbmc6IHJlbS1jYWxjKDIwcHgpO1xuXG5cdEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuXHRcdHBhZGRpbmc6IHJlbS1jYWxjKDE4cHggMzBweCAxNXB4IDMwcHgpO1xuXHR9XG5cblx0QGluY2x1ZGUgbWVkaWEoXCI+PWRlc2t0b3BcIikge1xuXHRcdHBhZGRpbmc6IHJlbS1jYWxjKDI1cHggNDBweCk7XG5cdH1cblxuXHQmLmZpeGVkLXBvc2l0aW9uIHtcblx0XHRib3gtc2hhZG93OiByZW0tY2FsYygwcHggM3B4IDZweCkgcmdiYSgwLCAwLCAwLCAwLjE2KTtcblx0XHRwYWRkaW5nOiByZW0tY2FsYygxN3B4IDIwcHgpO1xuXHRcdHBvc2l0aW9uOiBmaXhlZDtcblxuXHRcdC5sb2dvIHtcblx0XHRcdEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuXHRcdFx0XHR3aWR0aDogcmVtLWNhbGMoMjI2cHgpO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC5uYXYtYWN0aXZlICYge1xuXHRcdHBhZGRpbmc6IDA7XG5cdH1cbn1cblxuLmxvZ28ge1xuXHR3aWR0aDogcmVtLWNhbGMoMTc0cHgpO1xuXHR0cmFuc2l0aW9uOiAwLjRzIGFsbDtcblxuXHRAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcblx0XHR3aWR0aDogcmVtLWNhbGMoMjgzcHgpO1xuXHR9XG5cblx0QGluY2x1ZGUgbWVkaWEoXCI+PWRlc2t0b3BcIikge1xuXHRcdHdpZHRoOiByZW0tY2FsYygzMzhweCk7XG5cdH1cblxuXHQubmF2LWFjdGl2ZSAmIHtcblx0XHRkaXNwbGF5OiBub25lO1xuXHR9XG5cblx0aW1nIHtcblx0XHR3aWR0aDogMTAwJTtcblx0fVxufVxuXG4ubmF2LWlubmVyIHtcblx0bWFyZ2luLWxlZnQ6IGF1dG87XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5cdGdhcDogcmVtLWNhbGMoNDBweCk7XG5cblx0Lm5hdi1hY3RpdmUgJiB7XG5cdFx0c3ZnIHtcblx0XHRcdHBhdGgge1xuXHRcdFx0XHRmaWxsOiAkd2hpdGU7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cbi5uYXZiYXItaG9sZGVyIHtcblx0ZGlzcGxheTogZmxleDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLnNvYy1saXN0LWhvbGRlciB7XG5cdGRpc3BsYXk6IG5vbmU7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5cdGZvbnQtc2l6ZTogMDtcblxuXHRAaW5jbHVkZSBtZWRpYShcIj49ZGVza3RvcFwiKSB7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0fVxuXG5cdC5zZWFyY2gtb3BlbmVyIHtcblx0XHRAaW5jbHVkZSBtZWRpYShcIj49ZGVza3RvcFwiKSB7XG5cdFx0XHR3aWR0aDogcmVtLWNhbGMoMjRweCk7XG5cdFx0fVxuXHR9XG5cblx0LnNvYy1saXN0IHtcblx0XHRwYWRkaW5nLXRvcDogcmVtLWNhbGMoMnB4KTtcblx0XHRwYWRkaW5nLWJvdHRvbTogcmVtLWNhbGMoMnB4KTtcblx0fVxufVxuXG4uc2VhcmNoLW9wZW5lciB7XG5cdHRyYW5zaXRpb246IC40cyBhbGw7XG5cdFxuXHQmOmhvdmVyIHtcblx0XHRvcGFjaXR5OiAuNTtcblx0fVxufVxuXG4uc29jLWxpc3Qge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRsaXN0LXN0eWxlOiBub25lO1xuXHRnYXA6IHJlbS1jYWxjKDIycHgpO1xuXHRwYWRkaW5nOiAwO1xuXHRtYXJnaW46IDA7XG5cdGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNhMmE5YWQ7XG5cdHBhZGRpbmctcmlnaHQ6IHJlbS1jYWxjKDI3cHgpO1xuXHRtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKDI3cHgpO1xuXG5cdGEge1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdHRyYW5zaXRpb246IC40cyBhbGw7XG5cblx0XHQmOmhvdmVyLFxuXHRcdCY6Zm9jdXMge1xuXHRcdFx0b3BhY2l0eTogMC41O1xuXHRcdH1cblx0fVxufVxuIiwiQHVzZSBcIi4uL2Fic3RyYWN0cy9cIiBhcyAqO1xuXG4ubmF2LWhvbGRlciB7XG5cdG9wYWNpdHk6IDA7XG5cdHBvaW50ZXItZXZlbnRzOiBub25lO1xuXHR2aXNpYmlsaXR5OiBoaWRkZW47XG5cdGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5O1xuXHRwb3NpdGlvbjogZml4ZWQ7XG5cdGhlaWdodDogMTAwdmg7XG5cdHdpZHRoOiAxMDB2dztcblx0ei1pbmRleDogMTI7XG5cdGNvbG9yOiAkd2hpdGU7XG5cdGluc2V0OiAwO1xuXG5cdC5zY3JvbGwtd3JhcHBlciB7XG5cdFx0QGluY2x1ZGUgbWVkaWEoJ2xhbmRzY2FwZScsXCI8ZGVza3RvcFwiKSB7XG5cdFx0XHRvdmVyZmxvdy15OiBhdXRvO1xuXHRcdFx0b3ZlcmZsb3cteDogaGlkZGVuO1xuXHRcdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdFx0d2lkdGg6IDEwMHZ3O1xuXHRcdH1cblx0XHRcblx0XHRAaW5jbHVkZSBtZWRpYShcIjx0YWJsZXRcIikge1xuXHRcdFx0b3ZlcmZsb3cteTogYXV0bztcblx0XHRcdGhlaWdodDogMTAwJTtcblx0XHRcdHdpZHRoOiAxMDB2dztcblx0XHRcdHBhZGRpbmctYm90dG9tOiByZW0tY2FsYygyNXB4KTtcblx0XHR9XG5cdH1cblxuXHQmLS1pbm5lciB7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHRvcDogMDtcblx0XHRyaWdodDogMDtcblx0XHRtYXJnaW4tbGVmdDogYXV0bztcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0anVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcblx0XHRnYXA6IHJlbS1jYWxjKDIycHgpO1xuXHRcdHotaW5kZXg6IDU7XG5cblx0XHRAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcblx0XHRcdGdhcDogcmVtLWNhbGMoNDBweCk7XG5cdFx0fVxuXHR9XG5cblx0Lm5hdi1hY3RpdmUgJiB7XG5cdFx0b3BhY2l0eTogMTtcblx0XHRwb2ludGVyLWV2ZW50czogYWxsO1xuXHRcdHZpc2liaWxpdHk6IHZpc2libGU7XG5cdH1cblxuXHQuY29udGFpbmVyIHtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0bWluLWhlaWdodDogMTAwdmg7XG5cdH1cblxuXHQuZ3JpZCB7XG5cdFx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG5cdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRwYWRkaW5nLXRvcDogMTIwcHg7XG5cblx0XHRAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcblx0XHRcdGdyaWQtdGVtcGxhdGUtY29sdW1uczogMjA0cHggMWZyO1xuXHRcdH1cblxuXHRcdEBpbmNsdWRlIG1lZGlhKFwiPj1kZXNrdG9wXCIpIHtcblx0XHRcdGdyaWQtdGVtcGxhdGUtY29sdW1uczogMjY2cHggMWZyO1xuXHRcdH1cblx0fVxuXG5cdC5oMSB7XG5cdFx0bGluZS1oZWlnaHQ6IDE7XG5cdFx0Zm9udC1zaXplOiByZW0tY2FsYygzNnB4KTtcblx0XHRmb250LXdlaWdodDogNTAwO1xuXHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdFx0bGV0dGVyLXNwYWNpbmc6IC0wLjAyNWVtO1xuXHRcdG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDI0cHgpO1xuXHRcdG1hcmdpbi1sZWZ0OiBhdXRvO1xuXHRcdG1hcmdpbi1yaWdodDogMjZweDtcblxuXHRcdEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuXHRcdFx0Zm9udC1zaXplOiByZW0tY2FsYyg2MHB4KTtcblx0XHRcdG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDM1cHgpO1xuXHRcdH1cblxuXHRcdEBpbmNsdWRlIG1lZGlhKFwiPj0xNDQwcHhcIikge1xuXHRcdFx0bWF4LXdpZHRoOiA1ODBweDtcblx0XHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoODBweCk7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiByZW0tY2FsYygyMnB4KTtcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBtZWRpYSgnbGFuZHNjYXBlJyxcIjxkZXNrdG9wXCIpIHtcblx0XHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoNDBweCk7XG5cdFx0fVxuXHR9XG5cblx0LmJ0bi1ob2xkZXIge1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0anVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcblx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRcdGdhcDogcmVtLWNhbGMoMThweCk7XG5cdFx0bWFyZ2luOiAwIHJlbS1jYWxjKC0yMHB4KTtcblx0XHR6LWluZGV4OiAzO1xuXG5cdFx0QGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRib3R0b206IHJlbS1jYWxjKDM3cHgpO1xuXHRcdFx0cmlnaHQ6IHJlbS1jYWxjKDIwcHgpO1xuXHRcdFx0bWFyZ2luLXRvcDogYXV0bztcblx0XHRcdG1hcmdpbjogYXV0byAwIDAgMDtcblx0XHRcdHJpZ2h0OiAwO1xuXHRcdFx0Z2FwOnJlbS1jYWxjKCAyMHB4KTtcblx0XHRcdGJvdHRvbTogcmVtLWNhbGMoMjRweCk7XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgbWVkaWEoXCI+PWRlc2t0b3BcIikge1xuXHRcdFx0cmlnaHQ6IHJlbS1jYWxjKDlweCk7XG5cdFx0XHRnYXA6IHJlbS1jYWxjKDQ1cHgpO1xuXHRcdFx0Ym90dG9tOiByZW0tY2FsYygzN3B4KTtcblx0XHRcdGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgbWVkaWEoJ2xhbmRzY2FwZScsXCI8ZGVza3RvcFwiKSB7XG5cdFx0XHRwb3NpdGlvbjogc3RhdGljO1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjBweCk7XG5cdFx0XHRtYXgtd2lkdGg6IHJlbS1jYWxjKDMwMHB4KTtcblx0XHRcdG1hcmdpbi1sZWZ0OiBhdXRvO1xuXHRcdH1cblx0fVxuXG5cdC5idG4ge1xuXHRcdGZvbnQtZmFtaWx5OiAkYmFzZS1mb250LXNhbnMtc2VyaWY7XG5cdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0XHRkaXNwbGF5OiBpbmxpbmUtZmxleDtcblx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblx0XHRnYXA6IHJlbS1jYWxjKDEwcHgpO1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdGJvcmRlcjogMDtcblx0XHRsaW5lLWhlaWdodDogMTtcblx0XHRwYWRkaW5nOiByZW0tY2FsYygxMnB4IDE4cHggMTJweCk7XG5cdFx0Zm9udC13ZWlnaHQ6IDQwMDtcblxuXHRcdEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcblx0XHRcdHBhZGRpbmc6IHJlbS1jYWxjKDE1cHggMThweCAxNXB4KTtcblx0XHRcdG1pbi13aWR0aDogcmVtLWNhbGMoMzIwcHgpO1xuXHRcdH1cblx0fVxuXG5cdC50ZXh0LWhvbGRlciB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblxuXHRcdEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKC0zMHB4KTtcblx0XHRcdHBhZGRpbmctbGVmdDogcmVtLWNhbGMoMzlweCk7XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgbWVkaWEoXCI+PWRlc2t0b3BcIikge1xuXHRcdFx0bWFyZ2luLXJpZ2h0OiAwO1xuXHRcdFx0cGFkZGluZy1sZWZ0OiAwO1xuXHRcdH1cblx0fVxuXG5cdC5zb2MtbGlzdC1ob2xkZXIge1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cblx0XHQuc2VhcmNoLW9wZW5lciB7XG5cdFx0XHR3aWR0aDogcmVtLWNhbGMoMjRweCk7XG5cdFx0fVxuXHR9XG59XG5cbiNuYXZiYXIge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDM1cHgpO1xuXG5cdEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuXHRcdG1hcmdpbi1sZWZ0OiByZW0tY2FsYygtMjdweCk7XG5cdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0fVxuXG5cdEBpbmNsdWRlIG1lZGlhKFwiPj1kZXNrdG9wXCIpIHtcblx0XHRtYXJnaW46IDA7XG5cdH1cblxuXHQ+IHVsIHtcblx0XHRsaXN0LXN0eWxlOiBub25lO1xuXHRcdG1hcmdpbjogMDtcblx0XHRwYWRkaW5nOiAwO1xuXHRcdGNvbG9yOiAkd2hpdGU7XG5cblx0XHQ+IGxpIHtcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuXHRcdFx0Ji5hY3RpdmUtbGluayB7XG5cdFx0XHRcdG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDIwcHgpO1xuXHRcdFx0fVxuXG5cdFx0XHQ+IGEge1xuXHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdFx0Zm9udC1mYW1pbHk6ICRiYXNlLWZvbnQtc2Fucy1zZXJpZjtcblx0XHRcdFx0Y29sb3I6IGluaGVyaXQ7XG5cdFx0XHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdFx0XHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMzZweCk7XG5cdFx0XHRcdGZvbnQtd2VpZ2h0OiA1MDA7XG5cdFx0XHRcdGxldHRlci1zcGFjaW5nOiAtMC4wMjVlbTtcblx0XHRcdFx0bGluZS1oZWlnaHQ6IGNhbGMoNTYgLyA0MCk7XG5cdFx0XHRcdHRyYW5zaXRpb246IDAuNHMgYWxsO1xuXG5cdFx0XHRcdEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuXHRcdFx0XHRcdHBhZGRpbmc6IHJlbS1jYWxjKDFweCAwcHggMnB4IDIwcHgpO1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0QGluY2x1ZGUgbWVkaWEoXCI+PWRlc2t0b3BcIikge1xuXHRcdFx0XHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoNDBweCk7XG5cdFx0XHRcdFx0cGFkZGluZzogcmVtLWNhbGMoMHB4IDBweCAwcHggMjBweCk7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHRAaW5jbHVkZSBtZWRpYSgnbGFuZHNjYXBlJyxcIjxkZXNrdG9wXCIpIHtcblx0XHRcdFx0XHRmb250LXNpemU6IHJlbS1jYWxjKDMwcHgpO1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0Jjpob3ZlciB7XG5cdFx0XHRcdFx0QGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuXHRcdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3I6ICNmZmYsICRhbHBoYTogMjElKTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cblx0XHQ+IGxpIHtcblx0XHRcdCYuc3ViLW5hdi1hY3RpdmUsXG5cdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0PiBhIHtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvcjogI2ZmZiwgJGFscGhhOiAyMSUpO1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0PiB1bCB7XG5cdFx0XHRcdFx0b3BhY2l0eTogMTtcblx0XHRcdFx0XHRwb2ludGVyLWV2ZW50czogYWxsO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdD4gdWwge1xuXHRcdFx0XHR0b3A6IDA7XG5cdFx0XHRcdGxlZnQ6IDEwMCU7XG5cdFx0XHRcdGxpc3Qtc3R5bGU6IG5vbmU7XG5cdFx0XHRcdG1hcmdpbjogMDtcblx0XHRcdFx0cGFkZGluZzogMDtcblx0XHRcdFx0Zm9udC1zaXplOiByZW0tY2FsYygxNnB4KTtcblx0XHRcdFx0bGluZS1oZWlnaHQ6IGNhbGMoNDYgLyAyMCk7XG5cdFx0XHRcdHdpZHRoOiBtYXgtY29udGVudDtcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogIzM2NjQ3Zjtcblx0XHRcdFx0ei1pbmRleDogMTtcblxuXHRcdFx0XHRAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcblx0XHRcdFx0XHRmb250LXNpemU6IHJlbS1jYWxjKDIwcHgpO1xuXHRcdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0XHRvcGFjaXR5OiAwO1xuXHRcdFx0XHRcdHBvaW50ZXItZXZlbnRzOiBub25lO1xuXHRcdFx0XHRcdHRyYW5zaXRpb246IDAuNHMgYWxsO1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0JjpiZWZvcmUsXG5cdFx0XHRcdCY6YWZ0ZXIge1xuXHRcdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0XHRjb250ZW50OiBcIlwiO1xuXHRcdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0XHRcdGhlaWdodDogMTAwJTtcblx0XHRcdFx0XHRsZWZ0OiBhdXRvO1xuXHRcdFx0XHRcdHJpZ2h0OiAtMjBweDtcblx0XHRcdFx0XHRib3R0b206IDA7XG5cdFx0XHRcdFx0YmFja2dyb3VuZDogaW5oZXJpdDtcblx0XHRcdFx0XHR6LWluZGV4OiAtMTtcblxuXHRcdFx0XHRcdEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuXHRcdFx0XHRcdFx0d2lkdGg6IDEwMHZ3O1xuXHRcdFx0XHRcdFx0aGVpZ2h0OiAxMDB2aDtcblx0XHRcdFx0XHRcdHJpZ2h0OiBhdXRvO1xuXHRcdFx0XHRcdFx0bGVmdDogMDtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQmOmFmdGVyIHtcblx0XHRcdFx0XHR0b3A6IDA7XG5cblx0XHRcdFx0XHRAaW5jbHVkZSBtZWRpYShcIjx0YWJsZXRcIikge1xuXHRcdFx0XHRcdFx0bGVmdDogcmVtLWNhbGMoLTIwcHgpO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXG5cdFx0XHRcdD4gbGkge1xuXHRcdFx0XHRcdEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuXHRcdFx0XHRcdFx0cGFkZGluZzogMCAwIDAgcmVtLWNhbGMoMjlweCk7XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0QGluY2x1ZGUgbWVkaWEoXCI+PWRlc2t0b3BcIikge1xuXHRcdFx0XHRcdFx0cGFkZGluZzogMCAwIDAgcmVtLWNhbGMoNDdweCk7XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0Ji5zdWItbmF2LWFjdGl2ZSB7XG5cdFx0XHRcdFx0XHRhIHtcblx0XHRcdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogIzY2ODk5ZTtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblxuXHRcdFx0XHRhIHtcblx0XHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdFx0XHRtaW4td2lkdGg6IDIyOHB4O1xuXHRcdFx0XHRcdGNvbG9yOiAkd2hpdGU7XG5cdFx0XHRcdFx0cGFkZGluZzogcmVtLWNhbGMoMHB4IDIwcHgpO1xuXG5cdFx0XHRcdFx0Jjpob3ZlciB7XG5cdFx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjNjY4OTllO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuIiwiLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIFRoaXMgZmlsZSBjb250YWlucyBhbGwgc3R5bGVzIHJlbGF0ZWQgdG8gdGhlIGNvbW1vbiBsYXlvdXQgb2YgdGhlIHNpdGVcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5AdXNlICcuLi9hYnN0cmFjdHMvJyBhcyAqO1xuXG5ib2R5IHtcblx0Ji5uYXYtYWN0aXZlIHtcblx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXHR9XG59XG5cbltpZD1cIndyYXBwZXJcIl0ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtaW4taGVpZ2h0OiAxMDB2aDtcblx0cGFkZGluZzogcmVtLWNhbGMoMjBweCk7XG5cblx0QGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuXHRcdHBhZGRpbmc6IHJlbS1jYWxjKDMwcHgpO1xuXHR9XG5cdFxuXHRAaW5jbHVkZSBtZWRpYSgnPj1kZXNrdG9wJykge1xuXHRcdHBhZGRpbmc6IHJlbS1jYWxjKDQwcHgpO1xuXHR9XG59XG5cbltpZD1cIm1haW5cIl0ge1xuICAgIGZsZXgtZ3JvdzogMTtcbn1cblxuLmNvbnRhaW5lciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luOiAwIGF1dG87XG5cdG1heC13aWR0aDogMzIwcHg7XG5cdHBhZGRpbmc6IDAgcmVtLWNhbGMoMjBweCk7XG5cblx0QGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuXHRcdHBhZGRpbmc6IDAgcmVtLWNhbGMoMzBweCk7XG5cdFx0bWF4LXdpZHRoOiA3MTBweDtcblx0fVxuXHRcblx0QGluY2x1ZGUgbWVkaWEoJz49ZGVza3RvcCcpIHtcblx0XHRwYWRkaW5nOiAwICByZW0tY2FsYyg5OHB4KTtcblx0XHRtYXgtd2lkdGg6IDEzNTZweDtcblx0fVxufVxuXG4uYWNjb3JkaW9uIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuXG4gICAgPmxpIHtcbiAgICAgICAgbWFyZ2luLWJsb2NrOiAxMHB4O1xuXG4gICAgICAgID5hIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5qcy1hY2MtaGlkZGVuIHtcbiAgICAgICAgLy8gZm9yIHdlYiBhY2Nlc3NpYmlsaXR5IDogdmlzaWJpbGl0eTogaGlkZGVuOyBvciBkaXNwbGF5OiBub25lICsga2V5ZnJhbWVcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIH1cbn1cblxuLmJ1cmdlci1ob2xkZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIC5idXJnZXItZHJvcCB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAxMDAlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB3aWR0aDogMzAwcHg7XG4gICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgIzAwMDtcbiAgICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgICAgLy8gZm9yIHdlYiBhY2Nlc3NpYmlsaXR5IDogdmlzaWJpbGl0eTogaGlkZGVuOyBvciBkaXNwbGF5OiBub25lICsga2V5ZnJhbWVcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuXG4gICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICAmLmJ1cmdlci1hY3RpdmUge1xuICAgICAgICAuYnVyZ2VyLWRyb3Age1xuICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgfVxuXG4gICAgfVxufVxuXG4ucG9wdXAtaG9sZGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAucG9wdXAge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMTAwJTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgd2lkdGg6IDMwMHB4O1xuICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICMwMDA7XG4gICAgICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgICAgIC8vIGZvciB3ZWIgYWNjZXNzaWJpbGl0eSA6IHZpc2liaWxpdHk6IGhpZGRlbjsgb3IgZGlzcGxheTogbm9uZSArIGtleWZyYW1lXG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcblxuICAgICAgICBidXR0b24ge1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgJi5wb3B1cC1hY3RpdmUge1xuICAgICAgICAucG9wdXAge1xuICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgfVxuXG4gICAgfVxufVxuXG4ub3Blbi1jbG9zZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgLnNsaWRlIHtcbiAgICAgICAgd2lkdGg6IDMwMHB4O1xuICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICMwMDA7XG4gICAgICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgfVxuXG4gICAgLmpzLXNsaWRlLWhpZGRlbiB7XG4gICAgICAgIC8vIGZvciB3ZWIgYWNjZXNzaWJpbGl0eSA6IHZpc2liaWxpdHk6IGhpZGRlbjsgb3IgZGlzcGxheTogbm9uZSArIGtleWZyYW1lXG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB9XG59XG5cblxuLmxpbmUtYm94IHtcbiAgICB3aWR0aDogNjAwcHg7XG5cbiAgICAubWFzayB7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgfVxuXG4gICAgLmxpbmUge1xuICAgICAgICB3aWR0aDogOTk5OTlweDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcblxuICAgICAgICA+KiB7XG4gICAgICAgICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICAgICAgfVxuICAgIH1cbn1cblxuXG5cblxuLyohXG4gKiB0YWJieWpzIHYxMi4wLjNcbiAqIExpZ2h0d2VpZ2h0LCBhY2Nlc3NpYmxlIHZhbmlsbGEgSlMgdG9nZ2xlIHRhYnMuXG4gKiAoYykgMjAxOSBDaHJpcyBGZXJkaW5hbmRpXG4gKiBNSVQgTGljZW5zZVxuICogaHR0cDovL2dpdGh1Yi5jb20vY2ZlcmRpbmFuZGkvdGFiYnlcbiAqL1xuXG4vKipcbiAqIFRoZSB0YWJsaXN0XG4gKi9cbltyb2xlPVwidGFibGlzdFwiXSB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBsaWdodGdyYXk7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbn1cblxuW3JvbGU9XCJ0YWJsaXN0XCJdICoge1xuICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuLyoqXG4gKiBUaGUgdGFibGlzdCBpdGVtXG4gKi9cbkBtZWRpYSAobWluLXdpZHRoOiAzMGVtKSB7XG4gIFtyb2xlPVwidGFibGlzdFwiXSBsaSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB9XG59XG5cbi8qKlxuICogVGhlIHRhYnNcbiAqL1xuW3JvbGU9XCJ0YWJcIl0ge1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXRvcC1jb2xvcjogbGlnaHRncmF5O1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMC41ZW0gMWVtO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIC8qKlxuICAgICAqIEFjdGl2ZSB0YWIgc3R5bGluZ1xuICAgICAqL1xuICAvKipcbiAgICAgKiBUYWJzIG9uIGhvdmVyXG4gICAgICovXG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAzMGVtKSB7XG4gIFtyb2xlPVwidGFiXCJdIHtcbiAgICBib3JkZXItdG9wLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwLjVlbTtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMC41ZW07XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbi1ib3R0b206IC0xcHg7XG4gIH1cbn1cblxuW3JvbGU9XCJ0YWJcIl1bYXJpYS1zZWxlY3RlZD1cInRydWVcIl0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGdyYXk7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAzMGVtKSB7XG4gIFtyb2xlPVwidGFiXCJdW2FyaWEtc2VsZWN0ZWQ9XCJ0cnVlXCJdIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCBsaWdodGdyYXk7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogI2ZmZmZmZjtcbiAgfVxufVxuXG5bcm9sZT1cInRhYlwiXTpob3Zlcjpub3QoW2FyaWEtc2VsZWN0ZWQ9XCJ0cnVlXCJdKSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmN2Y3Zjc7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAzMGVtKSB7XG4gIFtyb2xlPVwidGFiXCJdOmhvdmVyOm5vdChbYXJpYS1zZWxlY3RlZD1cInRydWVcIl0pIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCBsaWdodGdyYXk7XG4gIH1cbn1cblxuLyoqXG4gKiBbaGlkZGVuXSBmYWxsYmFjayBmb3IgSUUxMCBhbmQgbG93ZXJcbiAqL1xuW2hpZGRlbl0ge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uZ3JpZCB7XG5cdGRpc3BsYXk6IGdyaWQ7XG59XG5cbi5hbmltYXRlZC1ibG9jayB7XG5cdG9wYWNpdHk6IDA7XG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDBweCk7XG5cdHRyYW5zaXRpb246IGVhc2UtaW4tb3V0IC41cyBhbGwgLjFzO1xufVxuXG4uaW4tdmlld3BvcnQge1xuXHQuYW5pbWF0ZWQtYmxvY2sge1xuXHRcdG9wYWNpdHk6IDE7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUoMCk7XG5cdH1cbn1cblxuc3ViLCBzdXAge1xuICAgIGZvbnQtc2l6ZTogNjclO1xufSIsIi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBUaGlzIGZpbGUgY29udGFpbnMgYWxsIHN0eWxlcyByZWxhdGVkIHRvIHRoZSBmb290ZXIgb2YgdGhlIHNpdGVcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5AdXNlIFwiLi4vYWJzdHJhY3RzL1wiIGFzICo7XG5cbltpZD1cImZvb3RlclwiXSB7XG5cdGJhY2tncm91bmQ6ICRiYXNlLWJhY2tncm91bmQtZm9vdGVyO1xuXHRjb2xvcjogJHdoaXRlO1xuXG5cdGgyIHtcblx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRcdGxpbmUtaGVpZ2h0OiBjYWxjKDY2IC8gNjApO1xuXHRcdGZvbnQtd2VpZ2h0OiA1MDA7XG5cdFx0Y29sb3I6ICR3aGl0ZTtcblx0XHRtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg0MHB4KTtcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cblx0XHRAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcblx0XHRcdG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDIwcHgpO1xuXHRcdFx0dGV4dC1hbGlnbjogbGVmdDtcblx0XHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoNjBweCk7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiByZW0tY2FsYygzNnB4KTtcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBtZWRpYShcIj49ZGVza3RvcFwiKSB7XG5cdFx0XHRmb250LXNpemU6IHJlbS1jYWxjKDYwcHgpO1xuXHRcdH1cblx0fVxuXG5cdGEge1xuXHRcdGNvbG9yOiBpbmhlcml0O1xuXHR9XG5cblx0LmxvY2F0aW9uLXRhYnMge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRwYWRkaW5nOiByZW0tY2FsYyg1NXB4IDBweCAzMHB4IDBweCk7XG5cdFx0ei1pbmRleDogMTtcblxuXHRcdEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuXHRcdFx0ZGlzcGxheTogZ3JpZDtcblx0XHRcdGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuXHRcdFx0cGFkZGluZzogcmVtLWNhbGMoODBweCAwcHggNjVweCAwcHgpO1xuXHRcdH1cblxuXHRcdEBpbmNsdWRlIG1lZGlhKFwiPj1kZXNrdG9wXCIpIHtcblx0XHRcdHBhZGRpbmc6IHJlbS1jYWxjKDk0cHggMHB4IDExMHB4IDBweCk7XG5cdFx0XHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciA0MDhweDtcblx0XHR9XG5cdH1cblxuXHQudGFiLWNvbnRlbnQge1xuXHRcdGRpc3BsYXk6IGdyaWQ7XG5cdFx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMSwgMWZyKTtcblx0XHRnYXA6IHJlbS1jYWxjKDIycHgpO1xuXHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMThweCk7XG5cdFx0bGluZS1oZWlnaHQ6IDEuNTU1NTU7XG5cblx0XHRAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcblx0XHRcdGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7XG5cdFx0XHRncmlkLXRlbXBsYXRlLXJvd3M6IHJlcGVhdCg0LCBhdXRvKTtcblx0XHRcdGdhcDogcmVtLWNhbGMoMzZweCA4MnB4KTtcblx0XHRcdG1heC13aWR0aDogNTgwcHg7XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgbWVkaWEoXCI+PWRlc2t0b3BcIikge1xuXHRcdFx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTtcblx0XHRcdGdhcDogNDdweCAyNXB4O1xuXHRcdFx0bWF4LXdpZHRoOiBub25lO1xuXHRcdH1cblxuXHRcdC5jb250YWN0LWJveCB7XG5cdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0XHRoZWlnaHQ6IG1heC1jb250ZW50O1xuXG5cdFx0XHRAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcblx0XHRcdFx0dGV4dC1hbGlnbjogbGVmdDtcblx0XHRcdFx0bWF4LXdpZHRoOiAyMzBweDtcblx0XHRcdH1cblxuXHRcdFx0QGluY2x1ZGUgbWVkaWEoXCI+PWRlc2t0b3BcIikge1xuXHRcdFx0XHRtYXgtd2lkdGg6IG5vbmU7XG5cdFx0XHR9XG5cblx0XHRcdCYuYWN0aXZlIHtcblx0XHRcdFx0aDYge1xuXHRcdFx0XHRcdGNvbG9yOiAkcmVkO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdCY6bnRoLWNoaWxkKDQpIHtcblx0XHRcdFx0QGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiLCBcIjxkZXNrdG9wXCIpIHtcblx0XHRcdFx0XHRncmlkLXJvdzogNCAvIDU7XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0JjpudGgtY2hpbGQoMSkge1xuXHRcdFx0XHRAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIsIFwiPGRlc2t0b3BcIikge1xuXHRcdFx0XHRcdGdyaWQtY29sdW1uOiAyIC8gMztcblx0XHRcdFx0XHRncmlkLXJvdzogMSAvIDI7XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0JjpudGgtY2hpbGQoMikge1xuXHRcdFx0XHRAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIsIFwiPGRlc2t0b3BcIikge1xuXHRcdFx0XHRcdGdyaWQtY29sdW1uOiAxIC8gMjtcblx0XHRcdFx0XHRncmlkLXJvdzogMSAvIDI7XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0JjpudGgtY2hpbGQoNSkge1xuXHRcdFx0XHRAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIsIFwiPGRlc2t0b3BcIikge1xuXHRcdFx0XHRcdGdyaWQtcm93OiAzIC8gNDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblxuXHRcdGg2IHtcblx0XHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdFx0XHRmb250LXdlaWdodDogNTAwO1xuXHRcdFx0Zm9udC1zaXplOiBpbmhlcml0O1xuXHRcdFx0bWFyZ2luOiAwO1xuXHRcdH1cblxuXHRcdGFkZHJlc3Mge1xuXHRcdFx0Zm9udC1mYW1pbHk6ICRzZWNvbmRhcnktZm9udC1zYW5zLXNlcmlmO1xuXHRcdFx0Zm9udC1zdHlsZTogbm9ybWFsO1xuXHRcdFx0bWFyZ2luOiAwO1xuXHRcdH1cblxuXHRcdHAge1xuXHRcdFx0Zm9udC1mYW1pbHk6ICRzZWNvbmRhcnktZm9udC1zYW5zLXNlcmlmO1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0XHR9XG5cblx0XHRhIHtcblx0XHRcdHRyYW5zaXRpb246IDAuNHMgYWxsO1xuXG5cdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0Y29sb3I6ICRyZWQ7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0LnRhYnNldCB7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdHdpZHRoOiByZW0tY2FsYygyNzBweCk7XG5cdFx0cGFkZGluZy10b3A6IHJlbS1jYWxjKDEzcHgpO1xuXHRcdG1hcmdpbi1sZWZ0OiBhdXRvO1xuXHRcdG1hcmdpbi1yaWdodDogYXV0bztcblx0XHRmb250LWZhbWlseTogJHNlY29uZGFyeS1mb250LXNhbnMtc2VyaWY7XG5cdFx0Zm9udC1zaXplOiAwO1xuXHRcdHotaW5kZXg6IDE7XG5cblx0XHRAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdHdpZHRoOiByZW0tY2FsYyg0MTNweCk7XG5cdFx0XHRyaWdodDogMCU7XG5cdFx0XHR0b3A6IDM0JTtcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBtZWRpYShcIj49ZGVza3RvcFwiKSB7XG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHR3aWR0aDogcmVtLWNhbGMoNDQ1cHgpO1xuXHRcdFx0cGFkZGluZy10b3A6IDA7XG5cdFx0XHR0b3A6IHJlbS1jYWxjKC0xMHB4KTtcblx0XHRcdHJpZ2h0OiByZW0tY2FsYygzOHB4KTtcblx0XHR9XG5cblx0XHRpbWcge1xuXHRcdFx0bWluLXdpZHRoOiByZW0tY2FsYygyNzBweCk7XG5cblx0XHRcdEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuXHRcdFx0fVxuXG5cdFx0XHRAaW5jbHVkZSBtZWRpYShcIj49ZGVza3RvcFwiKSB7XG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0cmlnaHQ6IDA7XG5cdFx0XHRcdHRvcDogMDtcblx0XHRcdFx0d2lkdGg6IHJlbS1jYWxjKDQ0NXB4KTtcblx0XHRcdFx0ei1pbmRleDogLTE7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0YSB7XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRjb2xvcjogdHJhbnNwYXJlbnQ7XG5cdFx0XHR0cmFuc2l0aW9uOiAwLjRzIGFsbDtcblx0XHRcdGZvbnQtc2l6ZTogMDtcblx0XHRcdGZvbnQtd2VpZ2h0OiA2MDA7XG5cblx0XHRcdHNwYW4ge1xuXHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMTRweCk7XG5cdFx0XHRcdGxlZnQ6IHJlbS1jYWxjKDE4cHgpO1xuXHRcdFx0XHR0b3A6IDVweDtcblxuXHRcdFx0XHRAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcblx0XHRcdFx0XHRwb3NpdGlvbjogc3RhdGljO1xuXHRcdFx0XHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMThweCk7XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0c3ZnIHtcblx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHRsZWZ0OiAwO1xuXHRcdFx0XHR0b3A6IDA7XG5cdFx0XHRcdHdpZHRoOiByZW0tY2FsYygxNHB4KTtcblxuXHRcdFx0XHRAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcblx0XHRcdFx0XHR0b3A6IDEwMiU7XG5cdFx0XHRcdFx0d2lkdGg6IHJlbS1jYWxjKDIycHgpO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdCYuYWN0aXZlIHtcblx0XHRcdFx0Y29sb3I6ICR3aGl0ZTtcblxuXHRcdFx0XHQuYmctd2hpdGUtcGF0aCB7XG5cdFx0XHRcdFx0ZmlsbDogJHdoaXRlO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdCY6Zmlyc3QtY2hpbGQge1xuXHRcdFx0XHR0b3A6IDczJTtcblx0XHRcdFx0bGVmdDogMTclO1xuXHRcdFx0XHR6LWluZGV4OiAyO1xuXG5cdFx0XHRcdEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0QGluY2x1ZGUgbWVkaWEoXCI+PWRlc2t0b3BcIikge1xuXHRcdFx0XHRcdHRvcDogNzAlO1xuXHRcdFx0XHRcdGxlZnQ6IDE2JTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHQmOm50aC1jaGlsZCgyKSB7XG5cdFx0XHRcdHRvcDogNDQlO1xuXHRcdFx0XHRsZWZ0OiA1NyU7XG5cblx0XHRcdFx0QGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHRAaW5jbHVkZSBtZWRpYShcIj49ZGVza3RvcFwiKSB7XG5cdFx0XHRcdFx0dG9wOiA0MyU7XG5cdFx0XHRcdFx0bGVmdDogNTYlO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdCY6bnRoLWNoaWxkKDMpIHtcblx0XHRcdFx0bGVmdDogNTYlO1xuXHRcdFx0XHR0b3A6IDIwJTtcblxuXHRcdFx0XHRAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcblx0XHRcdFx0fVxuXG5cdFx0XHRcdEBpbmNsdWRlIG1lZGlhKFwiPj1kZXNrdG9wXCIpIHtcblx0XHRcdFx0XHRsZWZ0OiA1OCU7XG5cdFx0XHRcdFx0dG9wOiAxNSU7XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0JjpudGgtY2hpbGQoNSkge1xuXHRcdFx0XHR0b3A6IDE1JTtcblx0XHRcdFx0bGVmdDogNTclO1xuXHRcdFx0fVxuXG5cdFx0XHQmOmxhc3QtY2hpbGQge1xuXHRcdFx0XHR0b3A6IDYwJTtcblx0XHRcdFx0bGVmdDogMzQlO1xuXG5cdFx0XHRcdEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0QGluY2x1ZGUgbWVkaWEoXCI+PWRlc2t0b3BcIikge1xuXHRcdFx0XHRcdHRvcDogNTklO1xuXHRcdFx0XHRcdGxlZnQ6IDM0JTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuXG4uZm9vdGVyLWJvdHRvbSB7XG5cdC5pbm5lciB7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0ei1pbmRleDogMTtcblxuXHRcdEBpbmNsdWRlIG1lZGlhKFwiPHRhYmxldFwiKSB7XG5cdFx0XHRwYWRkaW5nOiByZW0tY2FsYygxMHB4IDBweCAwcHggMHB4KTtcblx0XHR9XG5cdH1cblxuXHQuZm9vdGVyLW5hdi1ob2xkZXIge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHR3aWR0aDogMTAwJTtcblxuXHRcdEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cdFx0XHRmbGV4OiAxO1xuXHRcdFx0cGFkZGluZzogcmVtLWNhbGMoMHB4IDIwcHggMHB4IDE1cHgpO1xuXHRcdFx0d2lkdGg6IGF1dG87XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgbWVkaWEoXCI+PWRlc2t0b3BcIikge1xuXHRcdFx0cGFkZGluZzogcmVtLWNhbGMoMHB4IDM2cHggMHB4IDQwcHgpO1xuXHRcdFx0bWFyZ2luOiAwO1xuXHRcdH1cblx0fVxuXG5cdC5mb290ZXItbmF2IHtcblx0XHRmb250LWZhbWlseTogJG1vbnRzZXJyYXQtZm9udC1zYW5zLXNlcmlmO1xuXG5cdFx0dWwge1xuXHRcdFx0bGlzdC1zdHlsZTogbm9uZTtcblx0XHRcdHBhZGRpbmc6IDA7XG5cdFx0XHRtYXJnaW46IDA7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0Zm9udC1zaXplOiByZW0tY2FsYygxNHB4KTtcblx0XHRcdGxpbmUtaGVpZ2h0OiBjYWxjKDIwIC8gMTQpO1xuXHRcdFx0Y29sb3I6ICRwcmltYXJ5O1xuXHRcdFx0Zm9udC13ZWlnaHQ6IDcwMDtcblxuXHRcdFx0QGluY2x1ZGUgbWVkaWEoXCI8dGFibGV0XCIpIHtcblx0XHRcdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdFx0XHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMTNweCk7XG5cdFx0XHR9XG5cblx0XHRcdGxpIHtcblx0XHRcdFx0KyBsaSB7XG5cdFx0XHRcdFx0JjpiZWZvcmUge1xuXHRcdFx0XHRcdFx0Y29udGVudDogXCJ8XCI7XG5cdFx0XHRcdFx0XHRwYWRkaW5nOiByZW0tY2FsYygwcHggMTJweCk7XG5cblx0XHRcdFx0XHRcdEBpbmNsdWRlIG1lZGlhKFwiPHRhYmxldFwiKSB7XG5cdFx0XHRcdFx0XHRcdHBhZGRpbmc6IHJlbS1jYWxjKDBweCAxMXB4KTtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0YSB7XG5cdFx0XHRcdHRyYW5zaXRpb246IDAuNHMgYWxsO1xuXG5cdFx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHRcdGNvbG9yOiAkcmVkO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0LnNvYy1saXN0IHtcblx0XHRwYWRkaW5nOiAwO1xuXHRcdGJvcmRlcjogMDtcblx0XHRtYXJnaW46IDA7XG5cdFx0Zm9udC1zaXplOiAwO1xuXG5cdFx0QGluY2x1ZGUgbWVkaWEoXCI8dGFibGV0XCIpIHtcblx0XHRcdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHRcdFx0cGFkZGluZy10b3A6IHJlbS1jYWxjKDE1cHgpO1xuXHRcdH1cblxuXHRcdGEge1xuXHRcdFx0Jjpob3ZlciB7XG5cdFx0XHRcdHBhdGgge1xuXHRcdFx0XHRcdGZpbGw6ICRyZWQ7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cblx0XHRzdmcge1xuXHRcdFx0bWF4LXdpZHRoOiAyNXB4O1xuXG5cdFx0XHRwYXRoIHtcblx0XHRcdFx0dHJhbnNpdGlvbjogMC40cyBhbGw7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0LmJhY2stdG8tdG9wIHtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdFx0d2lkdGg6IHJlbS1jYWxjKDQwcHgpO1xuXHRcdGhlaWdodDogcmVtLWNhbGMoNDBweCk7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJHJlZDtcblx0XHRmb250LXNpemU6IDA7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdGxlZnQ6IDEwMCU7XG5cdFx0Ym90dG9tOiAwO1xuXHRcdHRyYW5zaXRpb246IDAuNHMgYWxsO1xuXG5cdFx0QGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG5cdFx0XHRwb3NpdGlvbjogc3RhdGljO1xuXHRcdFx0d2lkdGg6IHJlbS1jYWxjKDY3cHgpO1xuXHRcdFx0aGVpZ2h0OiByZW0tY2FsYyg2N3B4KTtcblx0XHR9XG5cblx0XHQmOmhvdmVyIHtcblx0XHRcdG9wYWNpdHk6IDg1JTtcblx0XHR9XG5cblx0XHRzdmcge1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHR0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuXG5cdFx0XHRAaW5jbHVkZSBtZWRpYShcIjx0YWJsZXRcIikge1xuXHRcdFx0XHR3aWR0aDogMTEuNjdweDtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cbiIsIi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBUaGlzIGZpbGUgY29udGFpbnMgYWxsIHN0eWxlcyByZWxhdGVkIHRvIHRoZSBidXR0b24gY29tcG9uZW50LlxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbkB1c2UgXCIuLi9hYnN0cmFjdHMvXCIgYXMgKjtcblxuLmJ0biB7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0cGFkZGluZzogcmVtLWNhbGMoMTRweCAzM3B4IDE0cHggMzNweCk7XG5cdGZvbnQtc2l6ZTogcmVtLWNhbGMoMTRweCk7XG5cdGZvbnQtZmFtaWx5OiAkc2Vjb25kYXJ5LWZvbnQtc2Fucy1zZXJpZjtcblx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRsaW5lLWhlaWdodDogJGJ0bi1saW5lLWhlaWdodDtcblx0dmVydGljYWwtYWxpZ246IHRvcDtcblx0dHJhbnNpdGlvbjogYWxsICRhbmltYXRpb24tc3BlZWQ7XG5cdGZvbnQtd2VpZ2h0OiA4MDA7XG5cblx0QGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG5cdFx0cGFkZGluZzogJGJ0bi1wYWRkaW5nO1xuXHRcdGZvbnQtc2l6ZTogJGJ0bi1mb250LXNpemU7XG5cdH1cblxuXHRib3JkZXI6IHtcblx0XHRzdHlsZTogc29saWQ7XG5cdFx0Y29sb3I6IHRyYW5zcGFyZW50O1xuXHRcdHdpZHRoOiAkYnRuLWJvcmRlci13aWR0aDtcblx0XHRyYWRpdXM6ICRidG4tYm9yZGVyLXJhZGl1cztcblx0fVxuXG5cdCYtZGVmYXVsdCB7XG5cdFx0Y29sb3I6ICRidG4tY29sb3ItZGVmYXVsdDtcblx0XHRiYWNrZ3JvdW5kOiAkYnRuLWJhY2tncm91bmQtZGVmYXVsdDtcblx0XHRib3JkZXItY29sb3I6ICRidG4tYm9yZGVyLWNvbG9yLWRlZmF1bHQ7XG5cblx0XHQmOmhvdmVyIHtcblx0XHRcdGNvbG9yOiAkYnRuLWhvdmVyLWNvbG9yLWRlZmF1bHQ7XG5cdFx0XHRiYWNrZ3JvdW5kOiAkYnRuLWhvdmVyLWJhY2tncm91bmQtZGVmYXVsdDtcblx0XHRcdGJvcmRlci1jb2xvcjogJGJ0bi1ob3Zlci1ib3JkZXItY29sb3ItZGVmYXVsdDtcblx0XHR9XG5cdH1cblxuXHQmLXByaW1hcnkge1xuXHRcdGNvbG9yOiAkYnRuLWNvbG9yLXByaW1hcnk7XG5cdFx0YmFja2dyb3VuZDogJGJ0bi1iYWNrZ3JvdW5kLXByaW1hcnk7XG5cdFx0Ym9yZGVyLWNvbG9yOiAkYnRuLWJvcmRlci1jb2xvci1wcmltYXJ5O1xuXG5cdFx0Jjpob3ZlciB7XG5cdFx0XHRjb2xvcjogJGJ0bi1ob3Zlci1jb2xvci1wcmltYXJ5O1xuXHRcdFx0YmFja2dyb3VuZDogJGJ0bi1ob3Zlci1iYWNrZ3JvdW5kLXByaW1hcnk7XG5cdFx0XHRib3JkZXItY29sb3I6ICRidG4taG92ZXItYm9yZGVyLWNvbG9yLXByaW1hcnk7XG5cdFx0fVxuXHR9XG5cblx0Ji1wcmltYXJ5LW91dGxpbmUge1xuXHRcdGNvbG9yOiAkcHJpbWFyeTtcblx0XHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcblx0XHRib3JkZXItY29sb3I6ICRidG4tYm9yZGVyLWNvbG9yLXByaW1hcnk7XG5cblx0XHQmOmhvdmVyIHtcblx0XHRcdGNvbG9yOiAkd2hpdGU7XG5cdFx0XHRiYWNrZ3JvdW5kOiAkYnRuLWJhY2tncm91bmQtcHJpbWFyeTtcblx0XHRcdGJvcmRlci1jb2xvcjogJGJ0bi1ob3Zlci1ib3JkZXItY29sb3ItcHJpbWFyeTtcblx0XHR9XG5cdH1cblxuXHQmLWRhbmdlciB7XG5cdFx0Y29sb3I6ICRidG4tY29sb3ItZGFuZ2VyO1xuXHRcdGJhY2tncm91bmQ6ICRidG4tYmFja2dyb3VuZC1kYW5nZXI7XG5cdFx0Ym9yZGVyLWNvbG9yOiAkYnRuLWJvcmRlci1jb2xvci1kYW5nZXI7XG5cblx0XHQmOmhvdmVyIHtcblx0XHRcdGNvbG9yOiAkYnRuLWhvdmVyLWNvbG9yLWRhbmdlcjtcblx0XHRcdGJhY2tncm91bmQ6ICRidG4taG92ZXItYmFja2dyb3VuZC1kYW5nZXI7XG5cdFx0XHRib3JkZXItY29sb3I6ICRidG4taG92ZXItYm9yZGVyLWNvbG9yLWRhbmdlcjtcblx0XHR9XG5cdH1cblxuXHQmLWxpZ2h0IHtcblx0XHRjb2xvcjogJHdoaXRlO1xuXHRcdGJhY2tncm91bmQ6IHJnYmEoJGNvbG9yOiAjZmZmLCAkYWxwaGE6IDQwJSk7XG5cdFx0Ym9yZGVyLWNvbG9yOiByZ2JhKCRjb2xvcjogI2ZmZiwgJGFscGhhOiA0MCUpO1xuXG5cdFx0c3ZnIHtcblx0XHRcdHBhdGgge1xuXHRcdFx0XHR0cmFuc2l0aW9uOiAuNHMgYWxsO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdCY6aG92ZXIge1xuXHRcdFx0Y29sb3I6ICRyZWQ7XG5cdFx0XHRiYWNrZ3JvdW5kOiAkd2hpdGU7XG5cdFx0XHRib3JkZXItY29sb3I6ICR3aGl0ZTtcblxuXHRcdFx0c3ZnIHtcblx0XHRcdFx0cGF0aCB7XG5cdFx0XHRcdFx0ZmlsbDogJHJlZDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdCYtbGlnaHQtb3V0bGluZSB7XG5cdFx0Y29sb3I6ICR3aGl0ZTtcblx0XHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcblx0XHRib3JkZXItY29sb3I6ICR3aGl0ZTtcblxuXHRcdCY6aG92ZXIge1xuXHRcdFx0Y29sb3I6ICRyZWQ7XG5cdFx0XHRiYWNrZ3JvdW5kOiAkd2hpdGU7XG5cdFx0XHRib3JkZXItY29sb3I6ICR3aGl0ZTtcblx0XHR9XG5cdH1cblxuXHQmLXNlY29uZGFyeSB7XG5cdFx0Y29sb3I6ICRidG4tY29sb3Itc2Vjb25kYXJ5O1xuXHRcdGJhY2tncm91bmQ6ICRidG4tYmFja2dyb3VuZC1zZWNvbmRhcnk7XG5cdFx0Ym9yZGVyLWNvbG9yOiAkYnRuLWJvcmRlci1jb2xvci1zZWNvbmRhcnk7XG5cblx0XHQmOmhvdmVyIHtcblx0XHRcdGNvbG9yOiAkYnRuLWhvdmVyLWNvbG9yLXNlY29uZGFyeTtcblx0XHRcdGJhY2tncm91bmQ6ICRidG4taG92ZXItYmFja2dyb3VuZC1zZWNvbmRhcnk7XG5cdFx0XHRib3JkZXItY29sb3I6ICRidG4taG92ZXItYm9yZGVyLWNvbG9yLXNlY29uZGFyeTtcblx0XHR9XG5cdH1cblxuXHQmLXNtIHtcblx0XHRwYWRkaW5nOiAkYnRuLXBhZGRpbmctc207XG5cdFx0Zm9udC1zaXplOiAkYnRuLWZvbnQtc2l6ZS1zbTtcblx0XHRsaW5lLWhlaWdodDogJGJ0bi1saW5lLWhlaWdodC1zbTtcblx0XHRib3JkZXItcmFkaXVzOiAkYnRuLWJvcmRlci1yYWRpdXMtc207XG5cdH1cblxuXHQmLWxnIHtcblx0XHRwYWRkaW5nOiAkYnRuLXBhZGRpbmctbGc7XG5cdFx0Zm9udC1zaXplOiAkYnRuLWZvbnQtc2l6ZS1sZztcblx0XHRsaW5lLWhlaWdodDogJGJ0bi1saW5lLWhlaWdodC1sZztcblx0XHRib3JkZXItcmFkaXVzOiAkYnRuLWJvcmRlci1yYWRpdXMtbGc7XG5cdH1cbn1cblxuLmJ0bi1ncm91cCB7XG5cdG1hcmdpbjogMCByZW0tY2FsYygtNXB4KSByZW0tY2FsYygtMTBweCk7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGZsZXgtd3JhcDogd3JhcDtcblxuXHQuYnRuIHtcblx0XHRtYXJnaW46IDAgcmVtLWNhbGMoNXB4KSByZW0tY2FsYygxMHB4KTtcblx0fVxufVxuIiwiQHVzZSBcIi4uL2Fic3RyYWN0cy9cIiBhcyAqO1xuXG4uYWxlcnQtaG9sZGVyIHtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLmFsZXJ0LWJhciB7XG5cdGhlaWdodDogMDtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0dHJhbnNpdGlvbjogLjRzIGFsbDtcblx0bWFyZ2luOiAtMS4yNXJlbSAtMS4yNXJlbSAwIC0xLjI1cmVtO1xuXG5cdEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcblx0XHRtYXJnaW46IC0xLjg3NXJlbSAtMS44NzVyZW0gMCAtMS44NzVyZW07XG5cdH1cblxuXHRAaW5jbHVkZSBtZWRpYSgnPj1kZXNrdG9wJykge1xuXHRcdG1hcmdpbjogLTIuNXJlbSAtMi41cmVtIDAgLTIuNXJlbTtcblx0fVxuXG5cdCYucG9wdXAtYWN0aXZlIHtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdHotaW5kZXg6IDEwMDtcblx0XHRoZWlnaHQ6IDExMHB4O1xuXG5cdFx0QGluY2x1ZGUgbWVkaWEoJz49NTc2cHgnKSB7XG5cdFx0XHRoZWlnaHQ6IDkzcHg7XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgbWVkaWEoJz49ZGVza3RvcCcpIHtcblx0XHRcdGhlaWdodDogNjBweDtcblx0XHR9XG5cblx0XHQuaW5uZXIge1xuXHRcdFx0dHJhbnNmb3JtOiBub25lO1xuXHRcdH1cblx0fVxuXG5cdC5pbm5lciB7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTtcblx0XHRkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XG5cdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cdFx0dHJhbnNpdGlvbjogbWF4LWhlaWdodCAwLjNzIGVhc2UtaW4tb3V0O1xuXHRcdGJhY2tncm91bmQ6ICRwcmltYXJ5O1xuXHRcdGNvbG9yOiAkd2hpdGU7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdHBhZGRpbmc6IHJlbS1jYWxjKDEwcHggMjBweCk7XG5cdFx0Zm9udC1zaXplOiByZW0tY2FsYygxNnB4KTtcblx0XHRsaW5lLWhlaWdodDogMS4zO1xuXHRcdGZvbnQtd2VpZ2h0OiA2MDA7XG5cdFx0dG9wOiAwO1xuXHRcdHRyYW5zaXRpb246IC40cyBhbGw7XG5cdFxuXHRcdEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuXHRcdFx0cGFkZGluZzogcmVtLWNhbGMoMTBweCA2MHB4IDEwcHggNzRweCk7XG5cdFx0fVxuXG5cdFx0XG5cdH1cblxuXHQuYWxlcnQtY2xvc2Uge1xuXHRcdGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuXHRcdGJvcmRlcjogMDtcblx0XHR3aWR0aDogcmVtLWNhbGMoMTRweCk7XG5cdFx0aGVpZ2h0OiByZW0tY2FsYygxNHB4KTtcblx0XHRjb2xvcjogJHByaW1hcnk7XG5cdFx0Y3Vyc29yOiBwb2ludGVyO1xuXHRcdHBhZGRpbmc6IDA7XG5cblx0XHRAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcblx0XHRcdHJpZ2h0OiByZW0tY2FsYygxOHB4KTtcblx0XHRcdHRvcDogcmVtLWNhbGMoMjJweCk7XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgbWVkaWEoXCI+PWRlc2t0b3BcIikge1xuXHRcdFx0dG9wOiByZW0tY2FsYygzNXB4KTtcblx0XHRcdHJpZ2h0OiByZW0tY2FsYygyNXB4KTtcblx0XHR9XG5cblx0XHRzdmcge1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0fVxuXG5cdFx0Jjpob3ZlciB7XG5cdFx0XHRvcGFjaXR5OiAwLjg7XG5cdFx0fVxuXHR9XG5cblx0LnRleHQge1xuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRwYWRkaW5nOiByZW0tY2FsYyg1cHggMTBweCA1cHgpO1xuXG5cdFx0QGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG5cdFx0XHRwYWRkaW5nOiByZW0tY2FsYygxNXB4IDEwcHggMThweCk7XG5cdFx0XHR0ZXh0LWFsaWduOiBsZWZ0O1xuXHRcdH1cblxuXHRcdEBpbmNsdWRlIG1lZGlhKFwiPj1kZXNrdG9wXCIpIHtcblx0XHRcdHBhZGRpbmc6IDA7XG5cdFx0fVxuXG5cdFx0cCB7XG5cdFx0XHRtYXJnaW46IDA7XG5cdFx0XHRmb250LXNpemU6IHJlbS1jYWxjKDEycHgpO1xuXHRcdFx0bGluZS1oZWlnaHQ6IDEuMzM7XG5cblx0XHRcdEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuXHRcdFx0XHRtYXgtd2lkdGg6IDMwMHB4O1xuXHRcdFx0XHRmb250LXNpemU6IHJlbS1jYWxjKDEzcHgpO1xuXHRcdFx0fVxuXHRcdFx0XG5cdFx0XHRAaW5jbHVkZSBtZWRpYSgnPj13aWRlc2NyZWVuJykge1xuXHRcdFx0XHRtYXgtd2lkdGg6IG5vbmU7XG5cdFx0XHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMTdweCk7XG5cdFx0XHR9XG5cblx0XHRcdGEge1xuXHRcdFx0XHRjb2xvcjogJHByaW1hcnk7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0LnRleHQtd3JhcCB7XG5cdFx0QGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdFx0XHRjb2x1bW4tZ2FwOiByZW0tY2FsYygyMnB4KTtcblx0XHR9XG5cdH1cblxuXHQuaWNvbi1ob2xkZXIge1xuXHRcdG1pbi13aWR0aDogcmVtLWNhbGMoMjBweCk7XG5cdFx0aGVpZ2h0OiByZW0tY2FsYygyMHB4KTtcblx0XHRhbmltYXRpb246IHB1bHNlIDEuNXMgaW5maW5pdGU7XG5cdFx0Ym9yZGVyLXJhZGl1czogNTAlO1xuXG5cdFx0QGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG5cdFx0XHRsZWZ0OiByZW0tY2FsYygyNHB4KTtcblx0XHRcdG1pbi13aWR0aDogcmVtLWNhbGMoMjNweCk7XG5cdFx0XHRoZWlnaHQ6IHJlbS1jYWxjKDIzcHgpO1xuXHRcdH1cblxuXHRcdEBpbmNsdWRlIG1lZGlhKFwiPj1kZXNrdG9wXCIpIHtcblx0XHRcdG1pbi13aWR0aDogcmVtLWNhbGMoMjhweCk7XG5cdFx0XHRoZWlnaHQ6IHJlbS1jYWxjKDI4cHgpO1xuXHRcdH1cblxuXHRcdC5zdmctaWNvbiB7XG5cdFx0XHRib3JkZXItcmFkaXVzOiA1MCU7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdGhlaWdodDogMTAwJTtcblxuXHRcdFx0cGF0aCB7XG5cdFx0XHRcdGZpbGw6ICR3aGl0ZTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQuYnRuIHtcblx0XHRmb250LXNpemU6IHJlbS1jYWxjKDE0cHgpO1xuXHRcdHBhZGRpbmc6IHJlbS1jYWxjKDEycHggMjBweCk7XG5cblx0XHRAaW5jbHVkZSBtZWRpYSgnPHRhYmxldCcpIHtcblx0XHRcdG1hcmdpbi10b3A6IDEwcHg7XG5cdFx0XHRmb250LXNpemU6IDEycHg7XG5cdFx0fVxuXHR9XG59XG5cbi5hbGVydC1iYXItY2xvc2Uge1xuXHQuYWxlcnQtYmFyIHtcblx0XHRtYXgtaGVpZ2h0OiAwO1xuXHRcdHRyYW5zaXRpb246IG1heC1oZWlnaHQgMC4zcyBlYXNlLWluLW91dDtcblx0fVxufVxuXG5Aa2V5ZnJhbWVzIHB1bHNlIHtcblx0MCUge1xuXHRcdGJveC1zaGFkb3c6IDAgMCAwIDAgcmdiYSgkd2hpdGUsIDEpO1xuXHR9XG5cdDcwJSB7XG5cdFx0Ym94LXNoYWRvdzogMCAwIDAgMTBweCByZ2JhKCR3aGl0ZSwgMCk7XG5cdH1cblx0MTAwJSB7XG5cdFx0Ym94LXNoYWRvdzogMCAwIDAgNTBweCByZ2JhKCR3aGl0ZSwgMCk7XG5cdH1cbn1cbiIsIkB1c2UgXCIuLi9hYnN0cmFjdHMvXCIgYXMgKjtcblxuLnN1YnNjcmliZS1hY3RpdmUge1xuXHRvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uc3Vic2NyaWJlLWJsb2NrIHtcblx0cG9zaXRpb246IGZpeGVkO1xuXHR3aWR0aDogMTAwdnc7XG5cdGhlaWdodDogMTAwdmg7XG5cdHotaW5kZXg6IDMwMDAwO1xuXHRvcGFjaXR5OiAwO1xuXHR0b3A6IDA7XG5cdHBvaW50ZXItZXZlbnRzOiBub25lO1xuXHR0cmFuc2l0aW9uOiAxcyBvcGFjaXR5O1xuXG5cdC5zdWJzY3JpYmUtYWN0aXZlICYge1xuXHRcdG9wYWNpdHk6IDE7XG5cdFx0cG9pbnRlci1ldmVudHM6IGFsbDtcblxuXHRcdC5ncmlkLWhvbGRlciB7XG5cdFx0XHRhbmltYXRpb24tbmFtZTogbW92ZTtcblx0XHRcdGFuaW1hdGlvbi1kdXJhdGlvbjogMi41cztcblx0XHRcdGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IDE7XG5cdFx0XHRhbmltYXRpb24tZmlsbC1tb2RlOiBmb3J3YXJkcztcblx0XHR9XG5cdH1cblxuXHQmOmFmdGVyIHtcblx0XHRjb250ZW50OiBcIlwiO1xuXHRcdHBvc2l0aW9uOiBmaXhlZDtcblx0XHR3aWR0aDogMTAwdnc7XG5cdFx0aGVpZ2h0OiAxMDB2aDtcblx0XHRsZWZ0OiAwO1xuXHRcdHJpZ2h0OiAwO1xuXHRcdHRvcDogMDtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvcjogIzAwMzk1YywgJGFscGhhOiAwLjkpO1xuXHRcdHotaW5kZXg6IDEwMDAwO1xuXHRcdHBvaW50ZXItZXZlbnRzOiBub25lO1xuXHR9XG5cblx0LmlubmVyIHtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0aW5zZXQ6IDA7XG5cdFx0ei1pbmRleDogMjAwMDA7XG5cdH1cblxuXHQuY2FyZC1ob2xkZXIge1xuXHRcdGRpc3BsYXk6IGdyaWQ7XG5cdFx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMSwyMDNweCk7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdGJvdHRvbTogMDtcblx0XHRyaWdodDogMjBweDtcblx0XHR6LWluZGV4OiA2O1xuXG5cdFx0QGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuXHRcdFx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwzMTZweCk7XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgbWVkaWEoJz49ZGVza3RvcCcpIHtcblx0XHRcdGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsMzcycHgpO1xuXHRcdH1cblx0fVxuXG5cdC5jYXJkLWljb24tY29weSB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRwYWRkaW5nOiByZW0tY2FsYygyNXB4IDQwcHggMjBweCk7XG5cdFx0Y29sb3I6ICRwcmltYXJ5O1xuXG5cdFx0QGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuXHRcdFx0cGFkZGluZzogcmVtLWNhbGMoNTBweCA2MHB4IDMycHggNjBweCk7XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgbWVkaWEoJz49ZGVza3RvcCcpIHtcblx0XHRcdHBhZGRpbmc6IHJlbS1jYWxjKDYwcHgpO1xuXHRcdH1cblxuXHRcdCYtLWljb24ge1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogOHB4O1xuXG5cdFx0XHRAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XG5cdFx0XHRcdG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDE4cHgpO1xuXHRcdFx0XHRoZWlnaHQ6IHJlbS1jYWxjKDU2cHgpO1xuXHRcdFx0fVxuXHRcdFx0QGluY2x1ZGUgbWVkaWEoJz49ZGVza3RvcCcpIHtcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMzdweCk7XG5cdFx0XHRcdGhlaWdodDogYXV0bztcblx0XHRcdH1cblx0XHR9XG5cblx0XHRoMyB7XG5cdFx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRcdFx0Zm9udC1zaXplOiByZW0tY2FsYygxNnB4KTtcblx0XHRcdGxpbmUtaGVpZ2h0OiBjYWxjKDM2IC8gMzApO1xuXHRcdFx0Zm9udC13ZWlnaHQ6IDQwMDtcblx0XHRcdG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDIzcHgpO1xuXHRcdFx0bGV0dGVyLXNwYWNpbmc6IC0uMDI1ZW07XG5cblx0XHRcdEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcblx0XHRcdFx0Zm9udC1zaXplOiByZW0tY2FsYygyMHB4KTtcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMzBweCk7XG5cdFx0XHR9XG5cblx0XHRcdEBpbmNsdWRlIG1lZGlhKCc+PWRlc2t0b3AnKSB7XG5cdFx0XHRcdG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDIzcHgpO1xuXHRcdFx0XHRmb250LXNpemU6IHJlbS1jYWxjKDMwcHgpO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdCY6bGFzdC1jaGlsZCB7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkcmVkO1xuXHRcdFx0Y29sb3I6ICR3aGl0ZTtcblxuXHRcdFx0c3ZnIHtcblx0XHRcdFx0cGF0aCB7XG5cdFx0XHRcdFx0ZmlsbDogJHdoaXRlO1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0QGluY2x1ZGUgbWVkaWEoJz49ZGVza3RvcCcpIHtcblx0XHRcdFx0XHR3aWR0aDogcmVtLWNhbGMoODRweCk7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cblx0XHRzdmcge1xuXHRcdFx0d2lkdGg6IHJlbS1jYWxjKDM4cHgpO1xuXHRcdFx0aGVpZ2h0OiBhdXRvO1xuXG5cdFx0XHRAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XG5cdFx0XHRcdHdpZHRoOiByZW0tY2FsYyg1NnB4KTtcblx0XHRcdH1cblxuXHRcdFx0QGluY2x1ZGUgbWVkaWEoJz49ZGVza3RvcCcpIHtcblx0XHRcdFx0d2lkdGg6IHJlbS1jYWxjKDcwcHgpO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC5idG4ge1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRtYXgtd2lkdGg6IDEyNnB4O1xuXHRcdFx0cGFkZGluZzogcmVtLWNhbGMoMTFweCAxMXB4KTtcblxuXHRcdFx0QGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuXHRcdFx0XHRtYXgtd2lkdGg6IDE0NXB4O1xuXHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0cGFkZGluZzogcmVtLWNhbGMoMTNweCAxMXB4KTtcblx0XHRcdH1cblxuXHRcdFx0QGluY2x1ZGUgbWVkaWEoJz49ZGVza3RvcCcpIHtcblx0XHRcdFx0bWF4LXdpZHRoOiAxODBweDtcblx0XHRcdFx0cGFkZGluZzogJGJ0bi1wYWRkaW5nO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC5jbG9zZSB7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdGxlZnQ6IDA7XG5cdFx0Ym90dG9tOiBjYWxjKDEwMCUgKyAxMHB4KTtcblx0XHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcblx0XHRib3JkZXI6IDA7XG5cdFx0cGFkZGluZzogMDtcblx0XHRoZWlnaHQ6IGF1dG87XG5cdFx0d2lkdGg6IDIwcHg7XG5cdFx0aGVpZ2h0OiAyMHB4O1xuXHRcdGZvbnQtc2l6ZTogMDtcblx0XHRsaW5lLWhlaWdodDogMDtcblxuXHRcdEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcblx0XHRcdHdpZHRoOiAzMHB4O1xuXHRcdFx0aGVpZ2h0OiAzMHB4O1xuXHRcdFx0Ym90dG9tOiBjYWxjKDEwMCUgKyAxMHB4KTtcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBtZWRpYSgnPj1kZXNrdG9wJykge1xuXHRcdFx0Ym90dG9tOiBjYWxjKDEwMCUgKyA1cHgpO1xuXHRcdFx0d2lkdGg6IDQwcHg7XG5cdFx0XHRoZWlnaHQ6IDQwcHg7XG5cdFx0fVxuXG5cdFx0Jjpob3ZlciB7XG5cdFx0XHR0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuXHRcdH1cblxuXHRcdHN2ZyB7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdGhlaWdodDogYXV0bztcblx0XHR9XG5cblx0XHRwYXRoIHtcblx0XHRcdGZpbGw6ICR3aGl0ZTtcblx0XHR9XG5cdH1cbn1cbiIsIkB1c2UgXCIuLi9hYnN0cmFjdHMvXCIgYXMgKjtcblxuI2xpZ2h0Ym94LXNlYXJjaCB7XG5cdHdpZHRoOiAxMDB2dztcblx0aGVpZ2h0OiAxMDB2aDtcblx0ZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0YmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3I6ICMwMDM5NUMsICRhbHBoYTogMC41KTtcblx0cG9zaXRpb246IGZpeGVkO1xuXHR0b3A6IDA7XG5cdGxlZnQ6IDA7XG5cblx0Zm9ybSB7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdG1heC13aWR0aDogcmVtLWNhbGMoMzEwcHgpO1xuXHRcdHBhZGRpbmc6ICRwYWRkaW5nLWNvbnRhaW5lcjtcblx0XHRtYXJnaW46IDAgYXV0bztcblxuXHRcdEBpbmNsdWRlIG1lZGlhKFwiPj01NzZweFwiKSB7XG5cdFx0XHRtYXgtd2lkdGg6IHJlbS1jYWxjKDU5OHB4KTtcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBtZWRpYShcIj49ZGVza3RvcFwiKSB7XG5cdFx0XHRtYXgtd2lkdGg6IHJlbS1jYWxjKDg4MHB4KTtcblx0XHR9XG5cblx0XHRsYWJlbCB7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHR9XG5cblx0XHRpbnB1dFt0eXBlPVwic2VhcmNoXCJdIHtcblx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuXHRcdFx0aGVpZ2h0OiByZW0tY2FsYyg2NXB4KTtcblx0XHRcdGJvcmRlcjogMDtcblx0XHRcdHBhZGRpbmc6IHJlbS1jYWxjKDEzcHgpO1xuXHRcdFx0Y29sb3I6ICRwcmltYXJ5O1xuXHRcdFx0Zm9udC1zaXplOiByZW0tY2FsYygxOHB4KTtcblx0XHRcdGZvbnQtZmFtaWx5OiAkc2Vjb25kYXJ5LWZvbnQtc2Fucy1zZXJpZjtcblx0XHRcdHBhZGRpbmctcmlnaHQ6IHJlbS1jYWxjKDQwcHgpO1xuXHRcdFx0Zm9udC13ZWlnaHQ6IDcwMDtcblxuXHRcdFx0QGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG5cdFx0XHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMjhweCk7XG5cdFx0XHRcdGhlaWdodDogcmVtLWNhbGMoOTNweCk7XG5cdFx0XHRcdHBhZGRpbmctcmlnaHQ6IHJlbS1jYWxjKDQ1cHgpO1xuXHRcdFx0XHRwYWRkaW5nLWxlZnQ6IHJlbS1jYWxjKDMzcHgpO1xuXHRcdFx0fVxuXG5cdFx0XHRAaW5jbHVkZSBtZWRpYShcIj49ZGVza3RvcFwiKSB7XG5cdFx0XHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMzRweCk7XG5cdFx0XHRcdGhlaWdodDogcmVtLWNhbGMoOTNweCk7XG5cdFx0XHRcdHBhZGRpbmctcmlnaHQ6IHJlbS1jYWxjKDcwcHgpO1xuXHRcdFx0fVxuXG5cdFx0XHRAaW5jbHVkZSBwbGFjZWhvbGRlciB7XG5cdFx0XHRcdGNvbG9yOiAkcHJpbWFyeTtcblx0XHRcdH1cblx0XHR9XG5cblx0XHRidXR0b24ge1xuXHRcdFx0cGFkZGluZzogMDtcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdHRvcDogNTAlO1xuXHRcdFx0cmlnaHQ6IHJlbS1jYWxjKDMwcHgpO1xuXHRcdFx0d2lkdGg6IHJlbS1jYWxjKDIzcHgpO1xuXHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuXHRcdFx0YmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG5cdFx0XHRoZWlnaHQ6IGF1dG87XG5cdFx0XHRib3JkZXI6IDA7XG5cdFx0XHR0cmFuc2l0aW9uOiAwLjRzIGFsbDtcblxuXHRcdFx0QGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG5cdFx0XHRcdHdpZHRoOiAzM3B4O1xuXHRcdFx0fVxuXG5cdFx0XHRAaW5jbHVkZSBtZWRpYShcIj49ZGVza3RvcFwiKSB7XG5cdFx0XHRcdHJpZ2h0OiA0MnB4O1xuXHRcdFx0fVxuXG5cdFx0XHRzdmcge1xuXHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdH1cblxuXHRcdFx0Jjpob3Zlcixcblx0XHRcdCY6Zm9jdXMge1xuXHRcdFx0XHRvcGFjaXR5OiAwLjU7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0LmZhbmN5Ym94LWNsb3NlIHtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdFx0cG9zaXRpb246IGZpeGVkO1xuXHRcdHdpZHRoOiByZW0tY2FsYyg2MHB4KTtcblx0XHRoZWlnaHQ6IHJlbS1jYWxjKDYwcHgpO1xuXHRcdHJpZ2h0OiAwO1xuXHRcdHRvcDogMDtcblx0XHR6LWluZGV4OiAxO1xuXHRcdHRyYW5zaXRpb246IDAuNHMgYWxsO1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICRyZWQ7XG5cdFx0Zm9udC1zaXplOiAwO1xuXG5cdFx0QGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG5cdFx0XHR3aWR0aDogcmVtLWNhbGMoNzJweCk7XG5cdFx0XHRoZWlnaHQ6IHJlbS1jYWxjKDcycHgpO1xuXHRcdH1cblxuXHRcdHN2ZyB7XG5cdFx0XHR3aWR0aDogcmVtLWNhbGMoMTdweCk7XG5cdFx0XHRoZWlnaHQ6IHJlbS1jYWxjKDE3cHgpO1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cblx0XHRcdEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuXHRcdFx0XHR3aWR0aDogcmVtLWNhbGMoMjBweCk7XG5cdFx0XHRcdGhlaWdodDogcmVtLWNhbGMoMjBweCk7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Jjpob3ZlciB7XG5cdFx0XHRvcGFjaXR5OiAwLjU7XG5cdFx0fVxuXHR9XG59XG5cbi5mYW5jeWJveC1jbG9zZS1zbWFsbCB7XG5cdGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cbiIsIkB1c2UgXCIuLi9hYnN0cmFjdHMvXCIgYXMgKjtcblxuLm5hdi1vcGVuZXIge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkcmVkO1xuXHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHR3aWR0aDogcmVtLWNhbGMoODRweCk7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHRjb2xvcjogJHdoaXRlO1xuXHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRmb250LXNpemU6IHJlbS1jYWxjKDE2cHgpO1xuXHRmb250LWZhbWlseTogJGJhc2UtZm9udC1zYW5zLXNlcmlmO1xuXHRsaW5lLWhlaWdodDogMC45O1xuXHRoZWlnaHQ6IHJlbS1jYWxjKDQwcHgpO1xuXHRjdXJzb3I6IHBvaW50ZXI7XG5cdHRyYW5zaXRpb246IC40cyBvcGFjaXR5O1xuXG5cdEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuXHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMjJweCk7XG5cdFx0d2lkdGg6IHJlbS1jYWxjKDE0MHB4KTtcblx0XHRoZWlnaHQ6IHJlbS1jYWxjKDcwcHgpO1xuXHR9XG5cblx0Jjpob3ZlciB7XG5cdFx0b3BhY2l0eTogLjg7XG5cdH1cblxuXHQubmF2LWFjdGl2ZSAmIHtcblx0XHR3aWR0aDogcmVtLWNhbGMoNjBweCk7XG5cdFx0aGVpZ2h0OiByZW0tY2FsYyg2MHB4KTtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cblx0XHRAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcblx0XHRcdHdpZHRoOiByZW0tY2FsYyg3MnB4KTtcblx0XHRcdGhlaWdodDogcmVtLWNhbGMoNzJweCk7XG5cdFx0fVxuXG5cdFx0YnV0dG9uIHtcblx0XHRcdG1hcmdpbjogMDtcblx0XHR9XG5cblx0XHQuY29weSB7XG5cdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdH1cblx0fVxuXG5cdGJ1dHRvbiB7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdGxpbmUtaGVpZ2h0OiAwO1xuXHRcdGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuXHRcdGJvcmRlcjogbm9uZTtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG5cdFx0Ym9yZGVyLXJhZGl1czogMDtcblx0XHR3aWR0aDogcmVtLWNhbGMoMThweCk7XG5cdFx0aGVpZ2h0OiByZW0tY2FsYygxOHB4KTtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblx0XHRwYWRkaW5nOiAwO1xuXHRcdG1hcmdpbi1sZWZ0OiByZW0tY2FsYyg2cHgpO1xuXG5cdFx0QGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG5cdFx0XHR3aWR0aDogcmVtLWNhbGMoMjdweCk7XG5cdFx0XHRoZWlnaHQ6IHJlbS1jYWxjKDE4cHgpO1xuXHRcdFx0bWFyZ2luLWxlZnQ6IHJlbS1jYWxjKDE4cHgpO1xuXHRcdH1cblxuXHRcdEBpbmNsdWRlIG1lZGlhKFwiPj1kZXNrdG9wXCIpIHtcblx0XHR9XG5cblx0XHQmOmJlZm9yZSxcblx0XHQmOmFmdGVyLFxuXHRcdHNwYW4ge1xuXHRcdFx0QGluY2x1ZGUgYW5pbWF0ZSh0cmFuc2Zvcm0gb3BhY2l0eSk7XG5cdFx0XHRiYWNrZ3JvdW5kOiAkd2hpdGU7XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdHRvcDogMDtcblx0XHRcdGxlZnQ6IDA7XG5cdFx0XHRoZWlnaHQ6IHJlbS1jYWxjKDJweCk7XG5cdFx0XHRib3JkZXItcmFkaXVzOiByZW0tY2FsYygyMHB4KTtcblx0XHRcdG9wYWNpdHk6IDE7XG5cdFx0fVxuXG5cdFx0JjpiZWZvcmUge1xuXHRcdFx0dG9wOiAwO1xuXHRcdH1cblxuXHRcdCY6YWZ0ZXIge1xuXHRcdFx0Ym90dG9tOiAwO1xuXHRcdFx0dG9wOiBhdXRvO1xuXHRcdH1cblxuXHRcdHNwYW4ge1xuXHRcdFx0dG9wOiBjYWxjKDUwJSAtIDFweCk7XG5cdFx0fVxuXG5cdFx0JjpiZWZvcmUsXG5cdFx0JjphZnRlciB7XG5cdFx0XHRjb250ZW50OiBcIlwiO1xuXHRcdH1cblxuXHRcdCY6aG92ZXIge1xuXHRcdFx0JjpiZWZvcmUsXG5cdFx0XHQmOmFmdGVyLFxuXHRcdFx0c3BhbiB7XG5cdFx0XHRcdG9wYWNpdHk6IDAuNztcblx0XHRcdH1cblx0XHR9XG5cblx0XHQubmF2LWFjdGl2ZSAmIHtcblx0XHRcdHNwYW4ge1xuXHRcdFx0XHRvcGFjaXR5OiAwO1xuXHRcdFx0fVxuXG5cdFx0XHQmOmJlZm9yZSB7XG5cdFx0XHRcdHRvcDogY2FsYyg1MCUgLSAxcHgpO1xuXHRcdFx0XHR0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuXHRcdFx0fVxuXG5cdFx0XHQmOmFmdGVyIHtcblx0XHRcdFx0dG9wOiBjYWxjKDUwJSAtIDFweCk7XG5cblx0XHRcdFx0dHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuIiwiQHVzZSBcIi4uL2Fic3RyYWN0cy9cIiBhcyAqO1xuXG4uc2VjdGlvbi1oZXJvIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRvdmVyZmxvdzogaGlkZGVuO1xuXHR6LWluZGV4OiAyO1xuXHRib3gtc2hhZG93OiAwIDI2M3B4IDQ5cHggLTYwcHggcmdiYSgwLCAwLCAwLCAwLjEpO1xuXG5cdEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcblx0XHRib3gtc2hhZG93OiAwIDE1NXB4IDQ5cHggLTYwcHggcmdiYSgwLCAwLCAwLCAwLjA1KTtcblx0fVxuXG5cdC5oZXJvLWlubmVyIHtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0Y29sb3I6ICR3aGl0ZTtcblx0XHRwYWRkaW5nLXRvcDogcmVtLWNhbGMoMTUwcHgpO1xuXHRcdHBhZGRpbmctYm90dG9tOiByZW0tY2FsYygxMDhweCk7XG5cdFx0bWluLWhlaWdodDogNjB2aDtcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0ei1pbmRleDogMTtcblxuXHRcdEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcblx0XHRcdG1pbi1oZWlnaHQ6IHJlbS1jYWxjKDU5M3B4KTtcblx0XHRcdHBhZGRpbmctdG9wOiByZW0tY2FsYygxODBweCk7XG5cdFx0XHRwYWRkaW5nLWJvdHRvbTogcmVtLWNhbGMoMTczcHgpO1xuXHRcdFx0dGV4dC1hbGlnbjogbGVmdDtcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBtZWRpYSgnPj0xNDQwcHgnKSB7XG5cdFx0XHRtaW4taGVpZ2h0OiByZW0tY2FsYyg4MTBweCk7XG4gICAgICAgIFx0cGFkZGluZy10b3A6IHJlbS1jYWxjKDMxOHB4KTtcblx0XHRcdHBhZGRpbmctYm90dG9tOiByZW0tY2FsYygzMTFweCk7XG5cdFx0fVxuXG5cdFx0Jjo6YmVmb3JlIHtcblx0XHRcdGNvbnRlbnQ6ICcnO1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0aW5zZXQ6IDA7XG5cdFx0XHRiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoOTBkZWcgLCByZ2JhKCRjb2xvcjogIzAwM0E1RCwgJGFscGhhOiAuNDUpIDUwJSwgdHJhbnNwYXJlbnQpO1xuXHRcdFx0ei1pbmRleDogMTtcblx0XHR9XG5cblx0XHQuY29udGFpbmVyIHtcblx0XHRcdEBpbmNsdWRlIG1lZGlhKCc+PTE0NDBweCcpIHtcblx0XHRcdFx0bWF4LXdpZHRoOiA2OSU7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Lmhlcm8tdGV4dCB7XG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRtYXgtd2lkdGg6IHJlbS1jYWxjKDI4MHB4KTtcblx0XHRcdG1hcmdpbjogMCBhdXRvO1xuXHRcdFx0ei1pbmRleDogMztcblxuXHRcdFx0QGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuXHRcdFx0XHRtYXgtd2lkdGg6IHJlbS1jYWxjKDQ4MHB4KTtcblx0XHRcdFx0bWFyZ2luOiAwO1xuXHRcdFx0fVxuXG5cdFx0XHRAaW5jbHVkZSBtZWRpYSgnPj0xNDQwcHgnKSB7XG5cdFx0XHRcdG1heC13aWR0aDogcmVtLWNhbGMoNjE1cHgpO1xuXHRcdFx0fVxuXG5cdFx0XHRwIHtcblx0XHRcdFx0Y29sb3I6IHJnYmEoJGNvbG9yOiAkd2hpdGUsICRhbHBoYTogLjcpO1xuXHRcdFx0XHRAaW5jbHVkZSBtZWRpYSgnPj0xNDQwcHgnKSB7XG5cdFx0XHRcdFx0bWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoNDBweCk7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cblx0XHRoMSB7XG5cdFx0XHRsaW5lLWhlaWdodDogMTtcblx0XHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMzZweCk7XG5cdFx0XHRmb250LXdlaWdodDogNTAwO1xuXHRcdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0XHRcdGxldHRlci1zcGFjaW5nOiAtLjAyNWVtO1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjRweCk7XG5cblx0XHRcdEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcblx0XHRcdFx0Zm9udC1zaXplOiByZW0tY2FsYyg2MHB4KTtcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMzVweCk7XG5cdFx0XHR9XG5cblx0XHRcdEBpbmNsdWRlIG1lZGlhKCc+PTE0NDBweCcpIHtcblx0XHRcdFx0Zm9udC1zaXplOiByZW0tY2FsYyg4MHB4KTtcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjJweCk7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0LmJ0biB7XG5cdFx0cGFkZGluZy1pbmxpbmU6IHJlbS1jYWxjKDM1cHgpO1xuXHR9XG5cblx0LmJnLXZpZGVvLWhvbGRlciB7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG5cdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogNjclO1xuXHRcdGluc2V0OiAwO1xuXG5cdFx0QGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuXHRcdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuXHRcdH1cblxuXHRcdHZpZGVvIHtcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdFx0b2JqZWN0LWZpdDogY292ZXI7XG5cdFx0XHRvYmplY3QtcG9zaXRpb246IGNlbnRlcjtcblx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cblx0XHRcdEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcblx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cbi5pbWctY2Fyb3VzZWwge1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHRvcDogMDtcblx0Ym90dG9tOiAwO1xuXHRsZWZ0OiAwO1xuXHR3aWR0aDogMTAwJTtcblxuXHQuc2xpY2stbGlzdCxcblx0LnNsaWNrLXRyYWNrIHtcblx0XHRoZWlnaHQ6IDEwMCU7XG5cdH1cblxuXHQuaW1nIHtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cblx0XHQmOjpiZWZvcmUge1xuXHRcdFx0Y29udGVudDogJyc7XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRpbnNldDogMDtcblx0XHRcdGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg5MGRlZyAsIHJnYmEoJGNvbG9yOiAjMDAzQTVELCAkYWxwaGE6IC40NSkgNTAlLCB0cmFuc3BhcmVudCk7XG5cdFx0XHR6LWluZGV4OiAxO1xuXHRcdH1cblxuXHRcdGltZyB7XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdGhlaWdodDogMTAwJTtcblx0XHRcdGxlZnQ6IDA7XG5cdFx0XHR0b3A6IDA7XG5cdFx0XHRvYmplY3QtZml0OiBjb3Zlcjtcblx0XHRcdG9iamVjdC1wb3NpdGlvbjogIGNlbnRlciBib3R0b207XG5cdFx0fVxuXHR9XG59XG4iLCJAdXNlIFwiLi4vYWJzdHJhY3RzL1wiIGFzICo7XG5cbi5ibG9jay1pY29uLXRleHQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0bWFyZ2luLXRvcDogcmVtLWNhbGMoLTIycHgpO1xuICAgIHotaW5kZXg6IDI7XG5cblx0QGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuXHRcdG1hcmdpbi10b3A6IHJlbS1jYWxjKC01OHB4KTtcblx0fVxuXG5cdEBpbmNsdWRlIG1lZGlhKCc+PWRlc2t0b3AnKSB7XG5cdFx0bWFyZ2luLXRvcDogcmVtLWNhbGMoLTE1NXB4KTtcblx0fVxuXG5cdC5pbm5lciB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuXHRcdHBhZGRpbmctYm90dG9tOiByZW0tY2FsYyg0cHgpO1xuXHR9XG5cblx0LmdyaWQge1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdGJveC1zaGFkb3c6IDAgMCAwIDAgcmdiYSgkY29sb3I6ICMwMDAwMDAsICRhbHBoYTogNSUpO1xuXG5cdFx0QGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGZsZXgtd3JhcDogd3JhcDtcblx0XHRcdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHRcdH1cblxuXHRcdEBpbmNsdWRlIG1lZGlhKCc+PWRlc2t0b3AnKSB7XG5cdFx0XHRkaXNwbGF5OiBncmlkO1xuXHRcdFx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNSwgMWZyKTtcblx0XHR9XG5cdH1cbn1cblxuLmNhcmQtaWNvbi10ZXh0IHtcblx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRmb250LXNpemU6IHJlbS1jYWxjKDIwcHgpO1xuXHRmb250LWZhbWlseTogJHNlY29uZGFyeS1mb250LXNhbnMtc2VyaWY7XG5cdGNvbG9yOiAkcHJpbWFyeTtcblx0cGFkZGluZzogcmVtLWNhbGMoMjdweCAxMHB4KTtcbiAgICBkaXNwbGF5OiBibG9jaztcblx0dHJhbnNpdGlvbjogLjRzIGFsbDtcblxuXHRAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XG5cdFx0d2lkdGg6IGNhbGMoMTAwJSAvIDMpO1xuXHRcdHBhZGRpbmc6IHJlbS1jYWxjKDMwcHggMTVweCk7XG5cdH1cblxuXHRAaW5jbHVkZSBtZWRpYSgnPj1kZXNrdG9wJykge1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdHBhZGRpbmc6IHJlbS1jYWxjKDU4cHggNDBweCk7XG5cdH1cblxuXHQmOmhvdmVyIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjRjVGNUY1O1xuXHRcdGJveC1zaGFkb3c6IHJlbS1jYWxjKDNweCkgcmVtLWNhbGMoM3B4KSByZW0tY2FsYyg2cHgpIHJnYmEoJGNvbG9yOiAjMDAwMDAwLCAkYWxwaGE6IDE2JSk7XG5cdFx0Y29sb3I6ICRwcmltYXJ5O1xuXHR9XG5cblx0Ji0taWNvbiB7XG5cdFx0bWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMzNweCk7XG5cdFx0bWF4LWhlaWdodDogcmVtLWNhbGMoODdweCk7XG5cdH1cblxuXHRoNiB7XG5cdFx0Zm9udC13ZWlnaHQ6IDcwMDtcblx0XHRmb250LWZhbWlseTogJHNlY29uZGFyeS1mb250LXNhbnMtc2VyaWY7XG5cdFx0Zm9udC1zaXplOiByZW0tY2FsYygyMHB4KTtcblx0XHRsaW5lLWhlaWdodDogY2FsYygyNCAvIDIwKTtcblx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHRcdGxldHRlci1zcGFjaW5nOiAtLjAyNWVtO1xuXHR9XG59IiwiQHVzZSBcIi4uL2Fic3RyYWN0cy9cIiBhcyAqO1xuXG4uc2VjdGlvbi1uZXdzIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG5cdHBhZGRpbmc6IHJlbS1jYWxjKDM1cHggMHB4IDQ1cHggMHB4KTtcblx0ei1pbmRleDogMTtcblxuXHRAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcblx0XHRwYWRkaW5nOiByZW0tY2FsYygyMnB4IDBweCA0NXB4IDBweCk7XG5cdH1cblxuXHRAaW5jbHVkZSBtZWRpYShcIj49ZGVza3RvcFwiKSB7XG5cdFx0cGFkZGluZzogcmVtLWNhbGMoNTNweCAwcHggNzVweCAwcHgpO1xuXHR9XG5cblx0LmFydGljbGUtYm94IHtcblx0XHRkaXNwbGF5OiBncmlkO1xuXHRcdGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuXHRcdGdhcDogMTVweDtcblxuXHRcdEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuXHRcdFx0Z2FwOiAxNXB4O1xuXHRcdH1cblxuXHRcdEBpbmNsdWRlIG1lZGlhKFwiPj1kZXNrdG9wXCIpIHtcblx0XHRcdGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIHJlbS1jYWxjKDM2MHB4KTtcblx0XHRcdGdhcDogOTBweDtcblx0XHR9XG5cblx0XHQuY29sIHtcblx0XHRcdCY6bGFzdC1jaGlsZCB7XG5cdFx0XHRcdEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuXHRcdFx0XHRcdGRpc3BsYXk6IGdyaWQ7XG5cdFx0XHRcdFx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTtcblx0XHRcdFx0XHRnYXA6IHJlbS1jYWxjKDBweCAxMHB4KTtcblx0XHRcdFx0fVxuXG5cdFx0XHRcdEBpbmNsdWRlIG1lZGlhKFwiPj1kZXNrdG9wXCIpIHtcblx0XHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC5idG4taG9sZGVyIHtcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0cGFkZGluZy10b3A6IHJlbS1jYWxjKDI1cHgpO1xuXG5cdFx0QGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuXHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHR9XG5cdH1cbn1cblxuLmNhcmQge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHBhZGRpbmc6IHJlbS1jYWxjKDEwcHggMHB4IDBweCk7XG5cblx0QGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuXHRcdHBhZGRpbmc6IHJlbS1jYWxjKDIwcHggMHB4IDVweCAwcHgpO1xuXHR9XG5cblx0QGluY2x1ZGUgbWVkaWEoXCI+PWRlc2t0b3BcIikge1xuXHRcdG1heC13aWR0aDogcmVtLWNhbGMoMzI3cHgpO1xuXHRcdHBhZGRpbmc6IHJlbS1jYWxjKDIwcHggMHB4IDE1cHggMHB4KTtcblx0fVxuXG5cdCY6aG92ZXIge1xuXHRcdGltZyB7XG5cdFx0XHR0cmFuc2Zvcm06IHNjYWxlKDEuMDUpO1xuXHRcdH1cblxuXHRcdGEge1xuXHRcdFx0Y29sb3I6ICRyZWQ7XG5cdFx0fVxuXHR9XG5cblx0Ji1sZyB7XG5cdFx0bWF4LXdpZHRoOiBub25lO1xuXHRcdHBhZGRpbmc6IDA7XG5cblx0XHQuY2FyZC0tdGltZSB7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdGxlZnQ6IDA7XG5cdFx0XHR0b3A6IDA7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkcmVkO1xuXHRcdFx0Y29sb3I6ICR3aGl0ZTtcblx0XHRcdHBhZGRpbmc6IHJlbS1jYWxjKDEwcHgpO1xuXHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdFx0Zm9udC13ZWlnaHQ6IDcwMDtcblx0XHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMTJweCk7XG5cdFx0XHRsaW5lLWhlaWdodDogMS4yO1xuXHRcdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0XHRcdHdpZHRoOiByZW0tY2FsYyg3MHB4KTtcblx0XHRcdGhlaWdodDogcmVtLWNhbGMoNzBweCk7XG5cdFx0XHR6LWluZGV4OiAxO1xuXG5cdFx0XHRAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcblx0XHRcdFx0d2lkdGg6IHJlbS1jYWxjKDExNnB4KTtcblx0XHRcdFx0aGVpZ2h0OiByZW0tY2FsYygxMDZweCk7XG5cdFx0XHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMTZweCk7XG5cdFx0XHR9XG5cblx0XHRcdC5kYXRlIHtcblx0XHRcdFx0Zm9udC1zaXplOiAzNnB4O1xuXHRcdFx0XHRmb250LXdlaWdodDogNTAwO1xuXHRcdFx0XHRmb250LWZhbWlseTogJGJhc2UtZm9udC1zYW5zLXNlcmlmO1xuXHRcdFx0XHRsaW5lLWhlaWdodDogMTtcblxuXHRcdFx0XHRAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcblx0XHRcdFx0XHRmb250LXNpemU6IHJlbS1jYWxjKDUwcHgpO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0LmNhcmQtLWltZyB7XG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cblx0XHRcdEBpbmNsdWRlIG1lZGlhKFwiPHRhYmxldFwiKSB7XG5cdFx0XHRcdGhlaWdodDogMjkycHg7XG5cdFx0XHR9XG5cblx0XHRcdGltZyB7XG5cdFx0XHRcdEBpbmNsdWRlIG1lZGlhKFwiPHRhYmxldFwiKSB7XG5cdFx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0XHRcdGhlaWdodDogMTAwJTtcblx0XHRcdFx0XHRvYmplY3QtZml0OiBjb3Zlcjtcblx0XHRcdFx0XHRvYmplY3QtcG9zaXRpb246IGNlbnRlcjtcblx0XHRcdFx0XHR0b3A6IDA7XG5cdFx0XHRcdFx0bGVmdDogMDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC5jYXJkLS1jb250ZW50IHtcblx0XHRcdHBhZGRpbmc6IHJlbS1jYWxjKDIwcHggMHB4IDBweCk7XG5cblx0XHRcdEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuXHRcdFx0XHRwYWRkaW5nOiByZW0tY2FsYygyN3B4IDBweCAwcHgpO1xuXHRcdFx0fVxuXG5cdFx0XHRAaW5jbHVkZSBtZWRpYShcIj49ZGVza3RvcFwiKSB7XG5cdFx0XHRcdHBhZGRpbmc6IHJlbS1jYWxjKDQ1cHggMHB4IDBweCk7XG5cdFx0XHR9XG5cblx0XHRcdGg1IHtcblx0XHRcdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0XHRcdFx0bGV0dGVyLXNwYWNpbmc6IC0wLjAyMmVtO1xuXHRcdFx0XHRmb250LWZhbWlseTogJGJhc2UtZm9udC1zYW5zLXNlcmlmO1xuXHRcdFx0XHRsaW5lLWhlaWdodDogY2FsYygzMiAvIDI2KTtcblx0XHRcdFx0Zm9udC1zaXplOiByZW0tY2FsYygyMHB4KTtcblx0XHRcdFx0Zm9udC13ZWlnaHQ6IDUwMDtcblxuXHRcdFx0XHRAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcblx0XHRcdFx0XHRmb250LXNpemU6IHJlbS1jYWxjKDI0cHgpO1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0QGluY2x1ZGUgbWVkaWEoXCI+PWRlc2t0b3BcIikge1xuXHRcdFx0XHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMjZweCk7XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0cCB7XG5cdFx0XHRcdG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDEycHgpO1xuXG5cdFx0XHRcdEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuXHRcdFx0XHRcdG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDI3cHgpO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0YSB7XG5cdFx0dHJhbnNpdGlvbjogLjRzIGFsbDtcblx0fVxuXG5cdCYtLWltZyB7XG5cdFx0b3ZlcmZsb3c6IGhpZGRlbjtcblxuXHRcdGltZyB7XG5cdFx0XHR0cmFuc2l0aW9uOiAuNHMgYWxsO1xuXHRcdH1cblx0fVxuXG5cdCYtLXRpbWUge1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdGNvbG9yOiAkcmVkO1xuXHRcdGZvbnQtd2VpZ2h0OiA3MDA7XG5cdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0XHRmb250LXNpemU6IHJlbS1jYWxjKDE2cHgpO1xuXHRcdG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDhweCk7XG5cdH1cblxuXHQmLS1jb250ZW50IHtcblx0XHRoNSB7XG5cdFx0XHRmb250LXNpemU6IHJlbS1jYWxjKDE4cHgpO1xuXHRcdFx0bGluZS1oZWlnaHQ6IGNhbGMoMjQgLyAxOSk7XG5cdFx0XHRjb2xvcjogJHByaW1hcnk7XG5cdFx0XHRmb250LWZhbWlseTogJHNlY29uZGFyeS1mb250LXNhbnMtc2VyaWY7XG5cblx0XHRcdEBpbmNsdWRlIG1lZGlhKCc+PWRlc2t0b3AnKSB7XG5cdFx0XHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMTlweCk7XG5cdFx0XHR9XG5cblx0XHRcdGEge1xuXHRcdFx0XHRjb2xvcjogaW5oZXJpdDtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cblxuLnJlYWQtbW9yZSB7XG5cdGRpc3BsYXk6IGlubGluZS1mbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG5cdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdGNvbG9yOiAkcmVkO1xuXHRmb250LXdlaWdodDogNzAwO1xuXHRsaW5lLWhlaWdodDogMTtcblx0Zm9udC1mYW1pbHk6ICRiYXNlLWZvbnQtc2Fucy1zZXJpZjtcblx0bGV0dGVyLXNwYWNpbmc6IC0wLjAyMmVtO1xuXHR0cmFuc2l0aW9uOiAuNHMgYWxsO1xuXG5cdEBpbmNsdWRlIG1lZGlhKFwiPj1kZXNrdG9wXCIpIHtcblx0XHRmb250LXNpemU6IHJlbS1jYWxjKDE3cHgpO1xuXHRcdGxpbmUtaGVpZ2h0OiBjYWxjKDI0IC8gMTcpO1xuXHR9XG5cblx0Jjpob3ZlciB7XG5cdFx0Y29sb3I6ICRwcmltYXJ5ICFpbXBvcnRhbnQ7XG5cblx0XHQuaWNvbi1hcnJvdy1yaWdodCB7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeTtcblx0XHR9XG5cdH1cblxuXHQuaWNvbi1hcnJvdy1yaWdodCB7XG5cdFx0d2lkdGg6IHJlbS1jYWxjKDE2cHgpO1xuXHRcdGhlaWdodDogcmVtLWNhbGMoMTZweCk7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHRcdGxpbmUtaGVpZ2h0OiAxO1xuXHRcdGZvbnQtc2l6ZTogMDtcblx0XHRtYXJnaW4tbGVmdDogcmVtLWNhbGMoOXB4KTtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkcmVkO1xuXHRcdHRyYW5zaXRpb246IC40cyBhbGw7XG5cblx0XHRAaW5jbHVkZSBtZWRpYShcIj49ZGVza3RvcFwiKSB7XG5cdFx0XHR3aWR0aDogcmVtLWNhbGMoMjBweCk7XG5cdFx0XHRoZWlnaHQ6IHJlbS1jYWxjKDIwcHgpO1xuXHRcdFx0bWFyZ2luLWxlZnQ6IHJlbS1jYWxjKDEzcHgpO1xuXHRcdH1cblx0fVxufVxuIiwiQHVzZSBcIi4uL2Fic3RyYWN0cy9cIiBhcyAqO1xuXG4uZm9ybS1ib3gge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAjRTdFOUVCO1xuXHRwYWRkaW5nOiByZW0tY2FsYygzMHB4IDBweCAzNXB4KTtcblxuXHRAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XG5cdFx0cGFkZGluZzogcmVtLWNhbGMoNTNweCAwcHggNTVweCk7XG5cdH1cblxuXHRmb3JtIHtcblx0XHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcblx0XHRncmlkLWdhcDogcmVtLWNhbGMoMTRweCk7XG5cdFx0XG5cdFx0QGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuXHRcdFx0Z3JpZC1nYXA6IDA7XG5cdFx0XHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciByZW0tY2FsYygyMDBweCk7XG5cdFx0fVxuXG5cdFx0aW5wdXQge1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0fVxuXHR9XG59IiwiQHVzZSBcIi4uL2Fic3RyYWN0cy9cIiBhcyAqO1xuXG4uc2VjdGlvbi1jb3B5LWltZyB7XG5cdHBhZGRpbmc6IHJlbS1jYWxjKDQ2cHggMHB4IDUzcHggMHB4KTtcblx0YmFja2dyb3VuZDogcmdiYSgxNjIsIDE2OSwgMTczLCAuMTQpO1xuXG5cdEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcblx0XHRwYWRkaW5nOiByZW0tY2FsYygyOHB4IDBweCA0MHB4IDBweCk7XG5cdH1cblxuXHRAaW5jbHVkZSBtZWRpYSgnPj1kZXNrdG9wJykge1xuXHRcdHBhZGRpbmc6IHJlbS1jYWxjKDgwcHggMHB4IDkwcHggMHB4KTtcblx0fVxuXG5cdGgyIHtcblx0XHRtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg0cHgpO1xuXG5cdFx0QGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTRweCk7XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgbWVkaWEoJz49ZGVza3RvcCcpIHtcblx0XHRcdG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDIwcHgpO1xuXHRcdH1cblx0fVxuXG5cdC5ncmlkIHtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG5cdFx0Z3JpZC1nYXA6IDE1cHg7XG5cdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblxuXHRcdEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcblx0XHRcdGdyaWQtZ2FwOiAyMHB4O1xuXHRcdH1cblxuXHRcdEBpbmNsdWRlIG1lZGlhKCc+PWRlc2t0b3AnKSB7XG5cdFx0XHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDU3MHB4IDFmcjtcblx0XHRcdGdyaWQtZ2FwOiA2N3B4O1xuXHRcdH1cblx0fVxuXG5cdC5jb250ZW50LWJveCB7XG5cdFx0b3JkZXI6IDE7XG5cblx0XHRAaW5jbHVkZSBtZWRpYSgnPj1kZXNrdG9wJykge1xuXHRcdFx0b3JkZXI6IDA7XG5cdFx0fVxuXHR9XG5cblx0LmltZy1ib3gge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRwYWRkaW5nLXRvcDogODQlO1xuXG5cdFx0QGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuXHRcdFx0cGFkZGluZy10b3A6IDU3JTtcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBtZWRpYSgnPj1kZXNrdG9wJykge1xuXHRcdFx0bWFyZ2luLXJpZ2h0OiAtMTklO1xuXHRcdFx0cGFkZGluZy10b3A6IDExMSU7XG5cdFx0fVxuXG5cdFx0aW1nIHtcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdHRvcDogMDtcblx0XHRcdGxlZnQ6IDA7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdGhlaWdodDogMTAwJTtcblx0XHRcdG9iamVjdC1maXQ6IGNvdmVyO1xuXHRcdH1cblx0fVxufSJdLCJmaWxlIjoic3R5bGUuY3NzIn0= */
