/*
 0   -  600 : Phone 400/16 < 37.5em
 600 -  900 : Tablet 600/16 < 56.25em
 900 - 1200 : Tablet landscape 600/16 < 75em
1200 -      : Desktop 1200/16 > 75em

*/
:root {
  --vh100: calc(100vh);
  --vh100-once: calc(100vh);
  --scrollbar-width: 0;
  --site-padding: 2.1rem;
  --footer-height: 20.8125rem;
  --font-size-90: 5.625rem;
  --font-size-70: 3.125rem;
  --font-size-60: 3.75rem;
  --font-size-50: 3.125rem;
  --font-size-45: 2.8125rem;
  --font-size-40: 2.5rem;
  --font-size-30: 1.875rem;
  --font-size-18: 1.125rem;
  --font-size-14: 0.875rem; }
  @media (max-width: 600px) {
    :root {
      --footer-height: 35.625rem;
      --vh100: calc(100dvh);
      --vh100-once: calc(100dvh);
      --site-padding: 0.9375rem; } }

/*! 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.2;
  -webkit-text-size-adjust: 100%; }

/* 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;
  height: 1px;
  width: 100%;
  border: none;
  overflow: visible; }

/**
 * 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;
  font-size: 1em; }

/* 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;
  text-decoration: underline;
  text-decoration: underline dotted; }

/**
 * 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;
  font-size: 1em; }

/**
 * 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;
  font-size: 100%;
  line-height: 1.15;
  margin: 0; }

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

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select {
  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;
  color: inherit;
  display: table;
  max-width: 100%;
  padding: 0;
  white-space: normal; }

/**
 * 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;
  padding: 0; }

/**
 * 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;
  outline-offset: -2px; }

/**
 * 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;
  font: inherit; }

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

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

html {
  box-sizing: border-box; }

a,
a:visited {
  text-decoration: none;
  color: inherit; }

ul li {
  list-style-type: none; }

h1, h2, h3, h4, h5, h6 {
  font-size: inherit;
  font-weight: normal;
  margin: 0; }

button {
  background-color: transparent;
  outline: none;
  border: none;
  cursor: pointer; }

@font-face {
  font-family: 'BasicCommercial LT Com';
  src: url("../fonts/subset-BasicCommercialLTCom-Bold.woff2") format("woff2"), url("../fonts/subset-BasicCommercialLTCom-Bold.woff") format("woff");
  font-weight: bold;
  font-style: normal;
  font-display: swap; }

@font-face {
  font-family: 'BasicCommercial LT Com';
  src: url("../fonts/subset-BasicCommercialLTCom-Lt.woff2") format("woff2"), url("../fonts/subset-BasicCommercialLTCom-Lt.woff") format("woff");
  font-weight: 300;
  font-style: normal;
  font-display: swap; }

html {
  font-family: 'BasicCommercial LT Com';
  font-size: 16px;
  background-color: #F2E9DA; }
  html body {
    min-height: 100svh;
    position: relative;
    opacity: 0;
    transition: .2s ease-in-out; }
    html body.ready {
      opacity: 1; }
    html body.menu-active .top-col .top-left svg,
    html body.menu-active .top-col .top-left svg *,
    html body.menu-active .top-col .top-right svg,
    html body.menu-active .top-col .top-right svg * {
      fill: #F2E9DA !important; }
    html body.menu-active .bottom-col .bottom-left svg,
    html body.menu-active .bottom-col .bottom-left svg *,
    html body.menu-active .bottom-col .bottom-right svg,
    html body.menu-active .bottom-col .bottom-right svg * {
      fill: #F2E9DA !important; }

* {
  color: #3A2E29; }
  *::selection {
    background-color: #3A2E29;
    color: #F2E9DA; }

.italic {
  font-style: italic; }

.upper {
  text-transform: uppercase; }

.lower {
  text-transform: lowercase; }

.cap {
  text-transform: capitalize; }

.underline {
  text-decoration: underline; }

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

.text-justify {
  text-align: justify; }

.text-left {
  text-align: left; }

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

.m0-auto {
  margin: 0 auto; }

.flex {
  display: flex; }

.flex-center {
  display: flex;
  align-items: center; }

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

.flex-between-center {
  display: flex;
  justify-content: space-between;
  align-items: center; }

.flex-center-center {
  display: flex;
  justify-content: center;
  align-items: center; }

.flex-col {
  display: flex;
  flex-direction: column; }

.flex-col-center {
  display: flex;
  flex-direction: column;
  align-items: center; }

.flex-col-between-center {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: center; }

.flex-break {
  flex: 1 0 100%;
  height: 0; }

.grid {
  display: grid; }

.grid-12 {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  grid-column-gap: var(--col-gap); }

.overlay-fadein {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  opacity: 0;
  transition: opacity 0.2s ease-in-out;
  pointer-events: none;
  z-index: 0; }

.overlay-left {
  position: fixed;
  top: 0;
  left: 0;
  bottom: 0;
  transform: translateX(-100%);
  transition: transform 0.3s ease-out;
  pointer-events: none;
  z-index: 5; }
  .overlay-left.transform-x0 {
    transform: translateX(0); }

@media only screen and (max-width: 62.5em) {
  .overlay-right {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    transform: translateX(100%);
    transition: transform 0.3s ease-out;
    pointer-events: none;
    z-index: 5; } }

.overlay-fadein.show {
  opacity: 1;
  z-index: 10; }

.transform-x0 {
  transform: translateX(0); }

.transformed-y {
  transform: translateY(150px);
  transition: transform .7s ease-in-out, opacity .7s ease-in; }
  .transformed-y.unrevealed {
    transition: transform .7s ease-in-out, opacity .7s ease-in; }
  .transformed-y.transform-0 {
    transform: translateY(0); }

.sequential > div {
  transform: translateY(150px);
  opacity: 0;
  transition: transform .7s ease-in-out, opacity .7s ease-in; }
  .sequential > div.show.transform-0 {
    transform: translateY(0);
    opacity: 1; }

.events-none {
  pointer-events: none; }

.events-auto {
  pointer-events: auto; }

.overflowY-hidden {
  overflow-y: hidden; }

.events-none.overflowY-hidden {
  overflow-y: auto; }
  @media only screen and (max-width: 62.5em) {
    .events-none.overflowY-hidden {
      pointer-events: none;
      overflow: hidden; } }

.scroll-cont {
  overflow: unset;
  height: auto; }
  @media only screen and (min-width: 37.5em) {
    .scroll-cont {
      overflow: hidden;
      height: var(--vh100); } }
  @media only screen and (min-width: 62.5em) {
    .scroll-cont {
      overflow: hidden;
      width: 100%; } }

.scroll-inner {
  padding-right: var(--scrollbar-width);
  overflow-y: scroll;
  height: var(--vh100);
  display: flex;
  flex-direction: column;
  width: calc(100% + var(--scrollbar-width)); }

.scrollbar-measure {
  width: 100px;
  height: 100px;
  overflow: scroll;
  position: absolute;
  top: -9999px; }

.sticky {
  position: sticky; }

.hidden-title {
  opacity: 0;
  height: 0;
  margin: 0; }

.invisible {
  visibility: hidden; }

.nodisplay {
  display: none; }

.hidden {
  opacity: 0; }

.show {
  opacity: 1; }

.unrevealed {
  opacity: 0;
  transition: opacity .5s ease-in; }
  .unrevealed.show {
    opacity: 1; }

@media only screen and (max-width: 37.5em) {
  .mobile-hidden {
    display: none; } }

@media only screen and (max-width: 62.5em) {
  .tablet-hidden {
    display: none !important; } }

@media only screen and (max-width: 75em) {
  .tablet-land-hidden {
    display: none !important; } }

.mobile-only {
  display: none; }
  @media only screen and (max-width: 37.5em) {
    .mobile-only {
      display: block; } }

.tablet-only {
  display: none; }
  @media only screen and (max-width: 62.5em) {
    .tablet-only {
      display: block; } }

.tablet-land-only {
  display: none; }
  @media only screen and (max-width: 75em) {
    .tablet-land-only {
      display: block; } }

/* Slider */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
  -khtml-user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent; }

.slick-list {
  position: relative;
  display: block;
  overflow: hidden;
  margin: 0;
  padding: 0; }

.slick-list:focus {
  outline: none; }

.slick-list.dragging {
  cursor: pointer;
  cursor: hand; }

.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;
  top: 0;
  left: 0;
  display: block;
  margin-left: auto;
  margin-right: auto; }

.slick-track:before,
.slick-track:after {
  display: table;
  content: ''; }

.slick-track:after {
  clear: both; }

.slick-loading .slick-track {
  visibility: hidden; }

.slick-slide {
  display: none;
  float: left;
  height: 100%;
  min-height: 1px; }

[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; }

.slick-slider.hover .city-multicard-cont {
  opacity: .5; }
  .slick-slider.hover .city-multicard-cont.over {
    opacity: 1; }

.slick-slide {
  outline: none;
  height: inherit; }

.slick-disabled {
  display: none !important; }

.slick-track {
  margin-left: calc(var(--main-pad-lr) - 1rem);
  display: flex; }

@media only screen and (max-width: 62.5em) {
  .slick-track {
    margin-left: calc(var(--main-pad-lr) - .8rem); } }

@media only screen and (max-width: 37.5em) {
  .slick-track {
    margin-left: unset; } }

/*!
 * Hamburgers
 * @description Tasty CSS-animated hamburgers
 * @author Jonathan Suh @jonsuh
 * @site https://jonsuh.com/hamburgers
 * @link https://github.com/jonsuh/hamburgers
 */
.hamburger {
  padding: 16px 14px;
  display: inline-block;
  cursor: pointer;
  transition-property: opacity, filter;
  transition-duration: 0.15s;
  transition-timing-function: linear;
  font: inherit;
  color: inherit;
  text-transform: none;
  background-color: transparent;
  border: 0;
  margin: 0;
  overflow: visible; }
  .hamburger.is-active .hamburger-inner,
  .hamburger.is-active .hamburger-inner::before,
  .hamburger.is-active .hamburger-inner::after {
    background-color: #FFF; }

.hamburger-box {
  width: 20px;
  height: 15px;
  display: inline-block;
  position: relative; }

.hamburger-inner {
  display: block;
  top: 50%;
  margin-top: -0.5px; }
  .hamburger-inner, .hamburger-inner::before, .hamburger-inner::after {
    width: 20px;
    height: 1px;
    background-color: #FFF;
    border-radius: 4px;
    position: absolute;
    transition-property: transform;
    transition-duration: 0.15s;
    transition-timing-function: ease; }
  .hamburger-inner::before, .hamburger-inner::after {
    content: "";
    display: block; }
  .hamburger-inner::before {
    top: -7px; }
  .hamburger-inner::after {
    bottom: -7px; }

/*
   * 3DXY
   */
.hamburger--3dxy .hamburger-box {
  perspective: 40px; }

.hamburger--3dxy .hamburger-inner {
  transition: transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1); }
  .hamburger--3dxy .hamburger-inner::before, .hamburger--3dxy .hamburger-inner::after {
    transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1); }

.hamburger--3dxy.is-active .hamburger-inner {
  background-color: transparent !important;
  transform: rotateX(180deg) rotateY(180deg); }
  .hamburger--3dxy.is-active .hamburger-inner::before {
    transform: translate3d(0, 7px, 0) rotate(45deg); }
  .hamburger--3dxy.is-active .hamburger-inner::after {
    transform: translate3d(0, -7px, 0) rotate(-45deg); }

.top-col {
  display: flex;
  justify-content: space-between;
  padding: var(--site-padding) var(--site-padding) 0;
  position: fixed;
  right: 0;
  left: 0;
  top: 0;
  z-index: 4;
  pointer-events: none; }
  @media (max-width: 600px) {
    .top-col {
      background: #f2e9da;
      padding-bottom: 1rem; }
      .home .top-col {
        background: none; }
      .menu-active .top-col {
        background: none; } }
  .top-col .top-left {
    pointer-events: auto; }
    .top-col .top-left svg {
      width: 39px;
      height: auto; }
      @media (max-width: 1180px) {
        .top-col .top-left svg {
          width: 31px;
          height: auto; } }
  .top-col .top-right {
    pointer-events: auto; }
    .top-col .top-right svg {
      width: 45px;
      height: auto; }
      @media (max-width: 1180px) {
        .top-col .top-right svg {
          width: 36px;
          height: auto; } }

.bottom-col {
  display: flex;
  justify-content: space-between;
  padding: 0 var(--site-padding) var(--site-padding);
  position: fixed;
  right: 0;
  left: 0;
  bottom: 0;
  z-index: 4; }
  @media (max-width: 1180px) {
    .bottom-col {
      background-color: #F2E9DA;
      padding-top: 1rem; }
      .home .bottom-col {
        background-color: transparent; }
      .menu-active .bottom-col {
        background-color: #3A2E29; } }
  .bottom-col .bottom-left svg {
    width: 136px;
    height: auto; }
    @media (max-width: 1180px) {
      .bottom-col .bottom-left svg {
        width: 107px;
        height: auto; } }
  .bottom-col .bottom-right svg {
    width: 48px;
    height: auto; }
    @media (max-width: 1180px) {
      .bottom-col .bottom-right svg {
        width: 38px;
        height: 45px; } }

.main-navigation {
  opacity: 0;
  pointer-events: none;
  position: fixed;
  inset: 0;
  background: #3A2E29;
  z-index: 3;
  padding: 0 var(--site-padding); }
  .main-navigation.active {
    opacity: 1;
    pointer-events: auto; }
  .main-navigation .menu-menu-1-container {
    margin-top: 11.67rem;
    display: flex;
    justify-content: flex-end; }
    @media (max-width: 1180px) {
      .main-navigation .menu-menu-1-container {
        justify-content: flex-start; } }
  .main-navigation .menu {
    font-size: clamp(32px, 9vh, 90px);
    letter-spacing: -0.028em;
    line-height: 1.2em;
    text-transform: uppercase; }
    @media (max-width: 1180px) {
      .main-navigation .menu {
        font-size: 2.5rem;
        width: 100%; } }
    .main-navigation .menu li {
      color: #F2E9DA;
      counter-increment: menu-counter;
      display: flex;
      justify-content: space-between; }
      .main-navigation .menu li::after {
        content: counter(menu-counter, decimal-leading-zero);
        font-size: 1em;
        margin-left: 2.15em;
        letter-spacing: normal; }
        @media (max-width: 1180px) {
          .main-navigation .menu li::after {
            margin-left: 0; } }

.menu-btn {
  position: fixed;
  top: 0;
  z-index: 4;
  color: #F2E9DA;
  font-size: var(--font-size-18);
  text-transform: uppercase;
  padding-left: var(--site-padding);
  margin-top: 15.6rem;
  letter-spacing: .048em;
  cursor: pointer;
  opacity: 1;
  visibility: visible;
  transition: opacity .2s ease-in-out, visibility .2s ease-in-out; }
  @media (max-width: 1180px) {
    .menu-btn {
      margin-top: 9rem; } }
  @media (max-width: 600px) {
    .menu-btn {
      margin-top: 8rem;
      font-size: 1rem; } }
  .menu-btn.is-hidden-scroll:not(.active) {
    opacity: 0;
    visibility: hidden;
    pointer-events: none; }
  .menu-btn.active::after {
    content: "x";
    margin-left: 0.35em;
    display: inline-block; }

body:not(.home) .menu-btn {
  color: #3A2E29; }
  body:not(.home) .menu-btn.active {
    color: #F2E9DA; }

body:not(.home) .top-col .top-left svg,
body:not(.home) .top-col .top-left svg *,
body:not(.home) .top-col .top-right svg,
body:not(.home) .top-col .top-right svg * {
  fill: #3A2E29 !important; }

body:not(.home) .bottom-col .bottom-left svg,
body:not(.home) .bottom-col .bottom-left svg *,
body:not(.home) .bottom-col .bottom-right svg,
body:not(.home) .bottom-col .bottom-right svg * {
  fill: #3A2E29 !important; }

.site-footer {
  display: none;
  height: var(--footer-height);
  position: absolute;
  bottom: 0;
  background: #3A2E29;
  right: 0;
  left: 0;
  transform: translateY(var(--footer-offset, 100%));
  padding: var(--site-padding) var(--site-padding) 0;
  display: flex;
  z-index: 4; }
  @media (max-width: 600px) {
    .site-footer {
      flex-flow: column; } }
  .site-footer .left-col {
    width: 50%;
    display: flex;
    flex-flow: column;
    justify-content: space-between;
    padding-bottom: var(--site-padding); }
    @media (max-width: 1180px) {
      .site-footer .left-col {
        width: 30%; }
        .site-footer .left-col svg {
          width: 88px;
          height: auto; } }
    @media (max-width: 600px) {
      .site-footer .left-col {
        margin-bottom: 1.3rem; }
        .site-footer .left-col svg {
          width: 88px;
          height: auto; } }
    .site-footer .left-col .taousanis-logo {
      opacity: 0; }
      @media (max-width: 1180px) {
        .site-footer .left-col .taousanis-logo svg {
          width: 107px;
          height: auto; } }
      @media (max-width: 600px) {
        .site-footer .left-col .taousanis-logo {
          position: absolute;
          bottom: var(--site-padding);
          left: var(--site-padding); } }
      .site-footer .left-col .taousanis-logo.show {
        opacity: 1; }
      .site-footer .left-col .taousanis-logo a {
        display: inline-block; }
  .site-footer .right-col {
    display: flex;
    width: 50%;
    color: #F2E9DA;
    font-size: 1.125rem;
    letter-spacing: .048em;
    line-height: 1.5rem;
    justify-content: space-between; }
    @media (max-width: 1180px) {
      .site-footer .right-col {
        width: 70%; } }
    @media (max-width: 600px) {
      .site-footer .right-col {
        flex-flow: column;
        font-size: 1rem; } }
    .site-footer .right-col .first-col {
      flex-flow: column;
      display: flex;
      max-width: 241px;
      color: #F2E9DA;
      justify-content: space-between;
      padding-bottom: var(--site-padding); }
      @media (max-width: 1180px) {
        .site-footer .right-col .first-col {
          margin-right: 1rem; } }
      @media (max-width: 600px) {
        .site-footer .right-col .first-col {
          margin-right: 0;
          margin-bottom: 1.2rem; } }
      .site-footer .right-col .first-col .first-col-top .menu li {
        color: #F2E9DA;
        font-size: var(--font-size-30);
        text-transform: uppercase;
        line-height: 1.2em;
        letter-spacing: .048em; }
        @media (max-width: 1180px) {
          .site-footer .right-col .first-col .first-col-top .menu li {
            font-size: 1.125rem; } }
        @media (max-width: 600px) {
          .site-footer .right-col .first-col .first-col-top .menu li {
            font-size: 1.5625rem; } }
      .site-footer .right-col .first-col .first-col-bottom {
        color: #F2E9DA; }
        @media (max-width: 600px) {
          .site-footer .right-col .first-col .first-col-bottom {
            display: none; } }
        .site-footer .right-col .first-col .first-col-bottom a {
          font-size: var(--font-size-14);
          text-transform: uppercase;
          letter-spacing: .048em;
          line-height: 1.2em; }
          @media (max-width: 1180px) {
            .site-footer .right-col .first-col .first-col-bottom a {
              font-size: .75rem; } }
    .site-footer .right-col .second-col {
      display: flex;
      flex-flow: column;
      color: #F2E9DA;
      justify-content: space-between;
      padding-bottom: var(--site-padding); }
      @media (max-width: 600px) {
        .site-footer .right-col .second-col {
          margin-bottom: 0rem; } }
      .site-footer .right-col .second-col .second-col-top {
        color: #F2E9DA; }
        @media (max-width: 600px) {
          .site-footer .right-col .second-col .second-col-top {
            font-size: 1rem;
            margin-bottom: 2rem; } }
        .site-footer .right-col .second-col .second-col-top a {
          text-transform: uppercase; }
      .site-footer .right-col .second-col .second-col-bottom p {
        color: #F2E9DA;
        font-size: var(--font-size-14);
        text-transform: uppercase;
        letter-spacing: .048em;
        line-height: 1.2em; }
        @media (max-width: 1180px) {
          .site-footer .right-col .second-col .second-col-bottom p {
            font-size: .75rem;
            margin-bottom: .4rem; } }
    .site-footer .right-col .third-col {
      display: flex;
      flex-flow: column;
      color: #F2E9DA;
      justify-content: space-between;
      padding-bottom: var(--site-padding); }
      .site-footer .right-col .third-col p {
        color: #F2E9DA; }
        @media (max-width: 1180px) {
          .site-footer .right-col .third-col p {
            font-size: .75rem; } }
      .site-footer .right-col .third-col .taousanis-c {
        opacity: 0;
        text-align: right; }
        @media (max-width: 1180px) {
          .site-footer .right-col .third-col .taousanis-c svg {
            width: 38px;
            height: auto; } }
        @media (max-width: 600px) {
          .site-footer .right-col .third-col .taousanis-c {
            position: absolute;
            right: var(--site-padding);
            bottom: var(--site-padding); } }
        .site-footer .right-col .third-col .taousanis-c.show {
          opacity: 1; }

.homepage-main .quote-cnt {
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  text-align: center;
  pointer-events: none; }
  .homepage-main .quote-cnt p {
    font-size: var(--font-size-18);
    letter-spacing: 1em;
    text-transform: uppercase;
    color: #F2E9DA;
    pointer-events: none; }
    @media (max-width: 600px) {
      .homepage-main .quote-cnt p {
        font-size: 0.875rem; } }

.homepage-main .img-cnt {
  height: var(--vh100);
  background-color: #3A2E29;
  pointer-events: none;
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  z-index: -1;
  overflow: hidden;
  filter: brightness(0.8); }
  @media (max-width: 600px) {
    .homepage-main .img-cnt {
      height: var(--vh100-once); } }
  .homepage-main .img-cnt video,
  .homepage-main .img-cnt img,
  .homepage-main .img-cnt .wistia-video,
  .homepage-main .img-cnt .wistia-video iframe {
    width: 100%;
    height: 100%;
    display: block; }
  .homepage-main .img-cnt video,
  .homepage-main .img-cnt img {
    object-fit: cover; }
  .homepage-main .img-cnt video,
  .homepage-main .img-cnt .wistia-video,
  .homepage-main .img-cnt .wistia-video iframe {
    position: absolute;
    inset: 0; }
  .homepage-main .img-cnt .wistia-video {
    z-index: 0;
    pointer-events: none;
    overflow: hidden; }
  .homepage-main .img-cnt .wistia-video iframe {
    border: 0;
    pointer-events: none;
    top: 50%;
    left: 50%;
    width: 100vw;
    height: 56.25vw;
    min-width: 177.78vh;
    min-height: 100vh;
    transform: translate(-50%, -50%) scale(1.14);
    transform-origin: center center;
    will-change: transform; }
    @media (max-width: 600px) {
      .homepage-main .img-cnt .wistia-video iframe {
        width: 177.78vh;
        height: 100vh;
        min-width: 100vw;
        min-height: 100vh;
        transform: translate(-50%, -50%) scale(1.38); } }
  .homepage-main .img-cnt img {
    position: absolute;
    inset: 0;
    z-index: 0; }

.team-main {
  padding-bottom: 5rem; }
  .team-main .parent-taxonomy-content {
    display: flex;
    margin-top: 10rem;
    margin-left: 13rem;
    margin-right: 7rem;
    position: relative;
    margin-bottom: 37px; }
    @media (max-width: 1180px) {
      .team-main .parent-taxonomy-content {
        flex-flow: column;
        margin-top: 13rem;
        margin-left: var(--site-padding);
        margin-right: var(--site-padding); } }
    @media (max-width: 600px) {
      .team-main .parent-taxonomy-content {
        margin-top: 8rem; } }
  .team-main .left-col {
    width: 33%;
    position: relative; }
    @media (max-width: 1180px) {
      .team-main .left-col {
        width: 100%; } }
    .team-main .left-col .sticky-wrapper {
      position: sticky;
      top: 13.8125rem;
      transition: opacity .2s ease-in-out; }
    .team-main .left-col .current-taxonomy-title {
      font-size: var(--font-size-70);
      letter-spacing: -0.011em;
      line-height: 1.2em;
      margin-top: 3.8rem;
      padding-right: 5rem;
      margin-bottom: 1rem;
      text-transform: uppercase;
      font-weight: 600; }
      @media (max-width: 600px) {
        .team-main .left-col .current-taxonomy-title {
          font-size: var(--font-size-40); } }
  .team-main .right-col {
    width: 67%;
    position: relative;
    padding-bottom: 300px; }
    @media (max-width: 1180px) {
      .team-main .right-col {
        width: 100%;
        padding-bottom: 100px; } }
    .team-main .right-col .team-by-cnt {
      display: flex;
      gap: 1rem; }
      @media (max-width: 600px) {
        .team-main .right-col .team-by-cnt {
          flex-flow: column; } }
      .team-main .right-col .team-by-cnt .person-cnt {
        width: calc(33.3% - 0.6875rem);
        position: relative; }
        @media (max-width: 600px) {
          .team-main .right-col .team-by-cnt .person-cnt {
            width: 100%; } }
        .team-main .right-col .team-by-cnt .person-cnt img {
          width: 100%;
          height: 100%;
          object-fit: cover;
          display: block; }
        .team-main .right-col .team-by-cnt .person-cnt .info {
          position: absolute;
          bottom: 0;
          color: #F2E9DA;
          padding: 1rem;
          font-size: 25px;
          text-transform: uppercase;
          letter-spacing: .045em;
          line-height: 1.2em;
          opacity: 0; }
          @media (max-width: 1180px) {
            .team-main .right-col .team-by-cnt .person-cnt .info {
              opacity: 1; } }
          .team-main .right-col .team-by-cnt .person-cnt .info .name {
            font-weight: 600;
            color: #F2E9DA; }
          .team-main .right-col .team-by-cnt .person-cnt .info .position {
            color: #F2E9DA; }
        @media (hover: hover) {
          .team-main .right-col .team-by-cnt .person-cnt:hover .info {
            opacity: 1; } }

.contact-main {
  padding-bottom: 5rem; }
  .contact-main .parent-taxonomy-content {
    display: flex;
    margin-top: 10rem;
    margin-right: 7rem;
    position: relative;
    margin-bottom: 37px;
    margin-left: 12rem;
    justify-content: space-between; }
    @media (max-width: 1180px) {
      .contact-main .parent-taxonomy-content {
        flex-flow: column;
        margin-top: 13rem;
        margin-left: var(--site-padding);
        margin-right: var(--site-padding); } }
    @media (max-width: 600px) {
      .contact-main .parent-taxonomy-content {
        margin-top: 9rem; } }
  .contact-main .left-col {
    max-width: 450px;
    position: relative;
    margin-bottom: 3rem; }
    .contact-main .left-col .sticky-wrapper {
      position: sticky;
      top: 14.4rem;
      transition: opacity .2s ease-in-out; }
    .contact-main .left-col .current-taxonomy-title {
      font-size: var(--font-size-70);
      letter-spacing: -0.011em;
      line-height: 0.95em;
      margin-top: 4.4rem;
      margin-bottom: 1rem;
      text-transform: uppercase;
      transition: opacity .2s ease-in-out;
      max-width: 475px;
      padding-right: 2rem;
      font-weight: 600; }
      @media (max-width: 600px) {
        .contact-main .left-col .current-taxonomy-title {
          font-size: var(--font-size-40); } }
    .contact-main .left-col .content {
      font-size: var(--font-size-18);
      letter-spacing: .048em;
      text-transform: uppercase;
      line-height: 1.5em;
      max-width: 480px;
      padding-right: 2rem; }
      @media (max-width: 600px) {
        .contact-main .left-col .content {
          font-size: 1rem;
          padding-right: 0; } }
  .contact-main .right-col {
    justify-content: space-between;
    width: 67%;
    position: relative;
    padding-bottom: 300px;
    display: flex;
    flex-flow: wrap;
    margin-top: 4.5rem; }
    @media (max-width: 1180px) {
      .contact-main .right-col {
        width: 100%;
        padding-bottom: 100px; } }
    .contact-main .right-col .address-info {
      width: 33%;
      padding-right: 2rem;
      margin-bottom: 3rem; }
      .contact-main .right-col .address-info h2 {
        font-size: var(--font-size-40);
        margin-bottom: 1rem;
        letter-spacing: -0.011em;
        line-height: 1.2em;
        margin-top: 2rem;
        font-weight: 600; }
        @media (max-width: 600px) {
          .contact-main .right-col .address-info h2 {
            font-size: 1.5625rem; } }
        .contact-main .right-col .address-info h2:first-child {
          margin-top: 0; }
      .contact-main .right-col .address-info p, .contact-main .right-col .address-info a {
        font-size: 1.125rem;
        letter-spacing: .048em;
        line-height: 1.2em;
        display: inline-block; }
        @media (max-width: 600px) {
          .contact-main .right-col .address-info p, .contact-main .right-col .address-info a {
            font-size: 1rem; } }
    .contact-main .right-col .contact-form-cnt {
      width: 67%;
      min-width: 648px; }
      @media (max-width: 600px) {
        .contact-main .right-col .contact-form-cnt {
          width: 100%;
          min-width: 100%; } }
      .contact-main .right-col .contact-form-cnt .nf-form-cont .nf-form-fields-required {
        display: none !important; }
      .contact-main .right-col .contact-form-cnt .nf-form-cont .nf-form-title {
        margin: 0 0 3.5rem; }
        .contact-main .right-col .contact-form-cnt .nf-form-cont .nf-form-title h1,
        .contact-main .right-col .contact-form-cnt .nf-form-cont .nf-form-title h2,
        .contact-main .right-col .contact-form-cnt .nf-form-cont .nf-form-title h3 {
          margin: 0;
          font-size: var(--font-size-40);
          letter-spacing: 0.048em;
          line-height: 1.2em;
          text-transform: uppercase;
          margin-bottom: 2rem;
          font-weight: 600; }
          @media (max-width: 600px) {
            .contact-main .right-col .contact-form-cnt .nf-form-cont .nf-form-title h1,
            .contact-main .right-col .contact-form-cnt .nf-form-cont .nf-form-title h2,
            .contact-main .right-col .contact-form-cnt .nf-form-cont .nf-form-title h3 {
              font-size: 1.5625rem; } }
      .contact-main .right-col .contact-form-cnt .nf-form-cont .nf-form-content {
        max-width: none;
        padding: 0;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        grid-column-gap: 1.5rem;
        grid-row-gap: 2rem; }
        .contact-main .right-col .contact-form-cnt .nf-form-cont .nf-form-content .nf-field-container {
          margin: 0; }
          .contact-main .right-col .contact-form-cnt .nf-form-cont .nf-form-content .nf-field-container.textarea-container, .contact-main .right-col .contact-form-cnt .nf-form-cont .nf-form-content .nf-field-container.submit-container, .contact-main .right-col .contact-form-cnt .nf-form-cont .nf-form-content .nf-field-container.html-container {
            grid-column: 1 / -1; }
        .contact-main .right-col .contact-form-cnt .nf-form-cont .nf-form-content .nf-field-label,
        .contact-main .right-col .contact-form-cnt .nf-form-cont .nf-form-content .field-wrap label,
        .contact-main .right-col .contact-form-cnt .nf-form-cont .nf-form-content .list-label,
        .contact-main .right-col .contact-form-cnt .nf-form-cont .nf-form-content .ninja-forms-req-symbol,
        .contact-main .right-col .contact-form-cnt .nf-form-cont .nf-form-content .nf-error-required-error,
        .contact-main .right-col .contact-form-cnt .nf-form-cont .nf-form-content .nf-error-msg {
          display: none; }
        .contact-main .right-col .contact-form-cnt .nf-form-cont .nf-form-content input:not([type='button']):not([type='submit']),
        .contact-main .right-col .contact-form-cnt .nf-form-cont .nf-form-content select,
        .contact-main .right-col .contact-form-cnt .nf-form-cont .nf-form-content textarea {
          width: 100%;
          padding: 0 0 0.5rem;
          background: transparent;
          border: 0;
          border-bottom: 1px solid rgba(44, 36, 34, 0.45);
          border-radius: 0;
          box-shadow: none;
          font-size: var(--font-size-18);
          letter-spacing: 0.048em;
          line-height: 1.2em;
          text-transform: uppercase;
          color: #2c2422;
          appearance: none;
          margin-bottom: 1rem; }
          .contact-main .right-col .contact-form-cnt .nf-form-cont .nf-form-content input:not([type='button']):not([type='submit']):focus,
          .contact-main .right-col .contact-form-cnt .nf-form-cont .nf-form-content select:focus,
          .contact-main .right-col .contact-form-cnt .nf-form-cont .nf-form-content textarea:focus {
            outline: none;
            border-bottom-color: #2c2422; }
        .contact-main .right-col .contact-form-cnt .nf-form-cont .nf-form-content textarea {
          min-height: 121px;
          resize: vertical; }
        .contact-main .right-col .contact-form-cnt .nf-form-cont .nf-form-content input::placeholder,
        .contact-main .right-col .contact-form-cnt .nf-form-cont .nf-form-content textarea::placeholder {
          color: #2c2422;
          opacity: 1;
          text-transform: uppercase; }
        .contact-main .right-col .contact-form-cnt .nf-form-cont .nf-form-content .submit-wrap .nf-field-element {
          width: auto; }
        .contact-main .right-col .contact-form-cnt .nf-form-cont .nf-form-content .submit-wrap input[type='button'],
        .contact-main .right-col .contact-form-cnt .nf-form-cont .nf-form-content .submit-wrap input[type='submit'],
        .contact-main .right-col .contact-form-cnt .nf-form-cont .nf-form-content .submit-wrap button {
          background: transparent;
          border: 1px solid rgba(44, 36, 34, 0.45);
          border-radius: 0;
          color: #2c2422;
          font-size: var(--font-size-18);
          letter-spacing: 0.048em;
          text-transform: uppercase;
          line-height: 1;
          padding: 1rem;
          transition: background-color .2s ease, color .2s ease, border-color .2s ease; }
          .contact-main .right-col .contact-form-cnt .nf-form-cont .nf-form-content .submit-wrap input[type='button']:hover, .contact-main .right-col .contact-form-cnt .nf-form-cont .nf-form-content .submit-wrap input[type='button']:focus,
          .contact-main .right-col .contact-form-cnt .nf-form-cont .nf-form-content .submit-wrap input[type='submit']:hover,
          .contact-main .right-col .contact-form-cnt .nf-form-cont .nf-form-content .submit-wrap input[type='submit']:focus,
          .contact-main .right-col .contact-form-cnt .nf-form-cont .nf-form-content .submit-wrap button:hover,
          .contact-main .right-col .contact-form-cnt .nf-form-cont .nf-form-content .submit-wrap button:focus {
            background: #2c2422;
            color: #f5f0e6;
            border-color: #2c2422;
            outline: none; }
    .contact-main .right-col .contact-map-cnt {
      width: 100%;
      margin-top: 4rem; }
      .contact-main .right-col .contact-map-cnt .map-desktop,
      .contact-main .right-col .contact-map-cnt .map-mobile {
        width: 100%; }
      .contact-main .right-col .contact-map-cnt .map-mobile {
        display: none; }
      .contact-main .right-col .contact-map-cnt svg,
      .contact-main .right-col .contact-map-cnt img {
        width: 100%;
        height: auto;
        display: block; }
      @media (max-width: 600px) {
        .contact-main .right-col .contact-map-cnt {
          margin-top: 2.5rem; }
          .contact-main .right-col .contact-map-cnt .map-desktop {
            display: none; }
          .contact-main .right-col .contact-map-cnt .map-mobile {
            display: block; } }

.category-main .parent-taxonomy-content {
  display: flex;
  margin-top: 10rem;
  margin-left: 13rem;
  margin-right: 7rem;
  position: relative;
  height: calc(var(--vh100) - 12.4rem);
  margin-bottom: 37px; }
  @media (max-width: 1180px) {
    .category-main .parent-taxonomy-content {
      flex-flow: column;
      margin-top: 13rem;
      margin-left: var(--site-padding);
      margin-right: var(--site-padding);
      height: calc(var(--vh100) - 21rem); } }
  @media (max-width: 600px) {
    .category-main .parent-taxonomy-content {
      margin-top: 10rem;
      height: calc(var(--vh100) - 15rem); } }

.category-main .left-col {
  width: 33%;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0; }
  @media (max-width: 1180px) {
    .category-main .left-col {
      width: 100%;
      position: relative;
      margin-bottom: 2rem; } }
  .category-main .left-col .sticky-wrapper {
    position: sticky;
    top: 11.3125rem; }
  .category-main .left-col .current-taxonomy-title {
    padding-top: 4.3rem;
    margin-bottom: 1.54rem;
    line-height: 0.95em;
    font-size: var(--font-size-18);
    text-transform: uppercase;
    letter-spacing: .048em; }
    @media (max-width: 1180px) {
      .category-main .left-col .current-taxonomy-title {
        display: none; } }
  .category-main .left-col .titles-wrapper {
    font-size: var(--font-size-30);
    text-transform: uppercase;
    letter-spacing: .061em;
    cursor: pointer; }
    .category-main .left-col .titles-wrapper li.active {
      font-size: var(--font-size-70);
      letter-spacing: -0.011em;
      line-height: 1.2em;
      font-weight: 600; }

.category-main .right-col {
  width: 67%;
  position: absolute;
  bottom: 0;
  top: 0;
  right: 0;
  height: 100%; }
  @media (max-width: 1180px) {
    .category-main .right-col {
      width: 100%;
      position: relative; } }
  .category-main .right-col .images-wrapper {
    position: relative;
    height: 100%; }
    .category-main .right-col .images-wrapper .img-cnt {
      height: 100%;
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      opacity: 0;
      pointer-events: none; }
      .category-main .right-col .images-wrapper .img-cnt.active {
        opacity: 1;
        pointer-events: auto; }
      .category-main .right-col .images-wrapper .img-cnt img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        display: block; }

.category-main.is-subcategory {
  padding-bottom: 7rem; }
  .category-main.is-subcategory .left-col {
    position: relative; }
  .category-main.is-subcategory .right-col {
    position: relative; }
    .category-main.is-subcategory .right-col .change-grid {
      position: absolute;
      top: -101px;
      display: flex;
      gap: 1rem; }
      @media (max-width: 1180px) {
        .category-main.is-subcategory .right-col .change-grid {
          display: none; } }
      @media (max-width: 600px) {
        .category-main.is-subcategory .right-col .change-grid {
          display: flex;
          position: fixed;
          top: 33px;
          left: 50%;
          transform: translate(-50%, 0%);
          z-index: 4; }
          .menu-active .category-main.is-subcategory .right-col .change-grid {
            display: none; }
          .category-main.is-subcategory .right-col .change-grid .three-col {
            display: none; } }
      .category-main.is-subcategory .right-col .change-grid .one-col {
        display: none;
        background: #3A2E29;
        width: 25px;
        height: 25px;
        cursor: pointer; }
        @media (max-width: 600px) {
          .category-main.is-subcategory .right-col .change-grid .one-col {
            display: block; } }
      .category-main.is-subcategory .right-col .change-grid .two-col, .category-main.is-subcategory .right-col .change-grid .three-col {
        cursor: pointer; }
        .category-main.is-subcategory .right-col .change-grid .two-col svg, .category-main.is-subcategory .right-col .change-grid .three-col svg {
          pointer-events: none; }
  .category-main.is-subcategory .sticky-wrapper {
    top: 13.875rem; }
  .category-main.is-subcategory .parent-taxonomy-content {
    height: 100%; }
  .category-main.is-subcategory .current-taxonomy-title {
    padding-top: 2rem;
    margin-bottom: 1.54rem;
    line-height: 0.95em;
    font-size: var(--font-size-18);
    text-transform: uppercase;
    letter-spacing: .048em;
    word-break: break-all;
    padding-right: 1rem; }
    @media (max-width: 1180px) {
      .category-main.is-subcategory .current-taxonomy-title {
        display: none; } }
    @media (max-width: 600px) {
      .category-main.is-subcategory .current-taxonomy-title {
        display: none; } }
  .category-main.is-subcategory .projects-wrapper {
    display: flex;
    flex-flow: wrap;
    gap: 1rem; }
    @media (max-width: 600px) {
      .category-main.is-subcategory .projects-wrapper[data-col='1'] .img-cnt {
        width: 100%; } }
    .category-main.is-subcategory .projects-wrapper[data-col='2'] .img-cnt {
      width: calc(50% - 0.5rem); }
    .category-main.is-subcategory .projects-wrapper[data-col='3'] .img-cnt {
      width: calc(33.3% - 0.6875rem); }
    .category-main.is-subcategory .projects-wrapper .img-cnt {
      width: calc(33.3% - 0.6875rem);
      position: relative; }
      @media (max-width: 1180px) {
        .category-main.is-subcategory .projects-wrapper .img-cnt {
          display: flex;
          flex-flow: column; }
          .category-main.is-subcategory .projects-wrapper .img-cnt a {
            display: block;
            aspect-ratio: 1 / 1;
            overflow: hidden; } }
      @media (max-width: 600px) {
        .category-main.is-subcategory .projects-wrapper .img-cnt {
          width: calc(50% - 0.5rem); } }
      .category-main.is-subcategory .projects-wrapper .img-cnt img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        display: block;
        aspect-ratio: 1 / 1; }
      .category-main.is-subcategory .projects-wrapper .img-cnt .title {
        font-size: var(--font-size-30);
        color: #F2E9DA;
        position: absolute;
        bottom: 0;
        left: 0;
        right: 0;
        padding-left: .5rem;
        padding-right: .5rem;
        padding-bottom: .5rem;
        text-transform: uppercase;
        opacity: 0; }
        @media (max-width: 1180px) {
          .category-main.is-subcategory .projects-wrapper .img-cnt .title {
            padding-left: 0;
            position: relative;
            opacity: 1;
            pointer-events: auto;
            color: #3A2E29;
            font-size: 1.125rem;
            padding-bottom: 0;
            padding-top: .5rem; } }
        @media (max-width: 600px) {
          .category-main.is-subcategory .projects-wrapper .img-cnt .title {
            font-size: 1rem; } }
      @media (hover: hover) {
        .category-main.is-subcategory .projects-wrapper .img-cnt:hover img {
          filter: brightness(0.6); }
        .category-main.is-subcategory .projects-wrapper .img-cnt:hover .title {
          opacity: 1; } }

.single-main {
  padding-bottom: 5rem; }
  .single-main .parent-taxonomy-content {
    display: flex;
    margin-top: 10rem;
    margin-left: 13rem;
    margin-right: 7rem;
    position: relative;
    margin-bottom: 37px; }
    @media (max-width: 1180px) {
      .single-main .parent-taxonomy-content {
        flex-flow: column;
        margin-top: 13rem;
        margin-left: var(--site-padding);
        margin-right: var(--site-padding); } }
    @media (max-width: 600px) {
      .single-main .parent-taxonomy-content {
        margin-top: 10rem; } }
  .single-main .left-col {
    width: 33%;
    position: relative; }
    @media (max-width: 1180px) {
      .single-main .left-col {
        width: 100%; } }
    .single-main .left-col .sticky-wrapper {
      position: sticky;
      top: 14.4rem; }
      @media (max-width: 1180px) {
        .single-main .left-col .sticky-wrapper {
          margin-bottom: 3rem; } }
    .single-main .left-col .current-taxonomy-title {
      font-size: var(--font-size-70);
      letter-spacing: -0.011em;
      line-height: 0.95em;
      margin-top: 0;
      padding-right: 5rem;
      margin-bottom: 1rem;
      font-weight: 600;
      margin-top: 4.4rem;
      hyphens: auto;
      overflow-wrap: break-word;
      text-transform: uppercase; }
      @media (max-width: 600px) {
        .single-main .left-col .current-taxonomy-title {
          font-size: var(--font-size-40); } }
    .single-main .left-col .content {
      font-size: var(--font-size-18);
      letter-spacing: .048em;
      text-transform: uppercase;
      line-height: 1.5em;
      padding-right: 5rem; }
      @media (max-width: 600px) {
        .single-main .left-col .content {
          font-size: 1rem;
          line-height: 1.3em;
          padding-right: 0; } }
      @media screen and (max-width: 660px) {
        .single-main .left-col .content.has-mobile-drawer {
          overflow: hidden;
          transition: max-height .25s ease-in-out; } }
    .single-main .left-col .content-drawer-toggle {
      display: none;
      background: transparent;
      color: #3A2E29;
      text-transform: uppercase;
      letter-spacing: .048em;
      line-height: 1.5em;
      padding: .6rem .9rem;
      margin-top: .8rem;
      font-size: 1rem;
      padding: 0;
      text-decoration: underline;
      margin-top: 1.5rem; }
      @media screen and (max-width: 660px) {
        .single-main .left-col .content-drawer-toggle {
          display: inline-block; } }
  .single-main .right-col {
    width: 67%;
    position: relative; }
    @media (max-width: 1180px) {
      .single-main .right-col {
        width: 100%; } }
    .single-main .right-col .hero-image {
      margin-bottom: 1rem;
      height: calc(var(--vh100) - 12.5rem);
      cursor: pointer; }
      .single-main .right-col .hero-image img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        aspect-ratio: 4 / 3;
        display: block; }
  .single-main .gallery-cnt {
    display: flex;
    flex-flow: wrap;
    gap: 1rem; }
    .single-main .gallery-cnt .img-cnt {
      width: calc(50% - .5rem);
      cursor: pointer; }
      @media (max-width: 600px) {
        .single-main .gallery-cnt .img-cnt {
          width: 100%; } }
      .single-main .gallery-cnt .img-cnt img {
        width: 100%;
        height: 100%;
        display: block;
        object-fit: cover;
        aspect-ratio: 1 / 1; }
  .single-main .lightbox {
    position: fixed;
    inset: 0;
    background: #3A2E29;
    z-index: 9999;
    display: flex;
    align-items: center;
    justify-content: center; }
    .single-main .lightbox[aria-hidden='true'] {
      display: none; }
    .single-main .lightbox .lightbox-close {
      position: absolute;
      top: 2rem;
      right: 2rem;
      background: none;
      border: none;
      cursor: pointer;
      padding: 0;
      line-height: 0; }
    .single-main .lightbox .lightbox-prev,
    .single-main .lightbox .lightbox-next {
      position: absolute;
      top: 50%;
      transform: translateY(-50%);
      background: none;
      border: none;
      cursor: pointer;
      padding: 0;
      line-height: 0; }
    .single-main .lightbox .lightbox-prev {
      left: 2rem; }
      @media (max-width: 600px) {
        .single-main .lightbox .lightbox-prev {
          left: var(--site-padding); }
          .single-main .lightbox .lightbox-prev svg {
            width: auto;
            height: 32px; } }
    .single-main .lightbox .lightbox-next {
      right: 2rem; }
      @media (max-width: 600px) {
        .single-main .lightbox .lightbox-next {
          right: var(--site-padding); }
          .single-main .lightbox .lightbox-next svg {
            width: auto;
            height: 32px; } }
    .single-main .lightbox .lightbox-img-wrap {
      max-width: 80%;
      display: flex;
      flex-direction: column;
      align-items: center; }
    .single-main .lightbox .lightbox-img {
      max-width: 100%;
      min-height: 89vh;
      max-height: 89vh;
      object-fit: contain;
      display: block; }
    .single-main .lightbox .lightbox-counter {
      color: #c4c0bb;
      font-size: var(--font-size-18);
      letter-spacing: .048em;
      margin-top: 1rem;
      margin-bottom: 0; }

.history-main {
  padding-bottom: 5rem; }
  .history-main .parent-taxonomy-content {
    display: flex;
    flex-flow: column;
    margin-top: 10rem;
    margin-left: 13rem;
    margin-right: 7rem;
    position: relative;
    margin-bottom: 37px; }
    @media (max-width: 1180px) {
      .history-main .parent-taxonomy-content {
        flex-flow: column;
        margin-top: 13rem;
        margin-left: var(--site-padding);
        margin-right: var(--site-padding); } }
    @media (max-width: 600px) {
      .history-main .parent-taxonomy-content {
        margin-top: 9rem; } }
  .history-main .first-section {
    display: flex; }
    @media (max-width: 1180px) {
      .history-main .first-section {
        flex-flow: column; } }
    .history-main .first-section.is-second-section-active .sticky-wrapper {
      opacity: 0;
      pointer-events: none; }
  .history-main .second-section {
    display: flex; }
  .history-main .left-col {
    width: 33%;
    position: relative; }
    @media (max-width: 1180px) {
      .history-main .left-col {
        margin-bottom: 2rem;
        width: 100%; } }
    .history-main .left-col .sticky-wrapper {
      position: sticky;
      top: 14.1875rem;
      transition: opacity .2s ease-in-out; }
    .history-main .left-col .current-taxonomy-title {
      font-size: var(--font-size-70);
      letter-spacing: -0.011em;
      line-height: .95em;
      margin-top: 0;
      padding-right: 5rem;
      margin-bottom: 1rem;
      text-transform: uppercase;
      transition: opacity .2s ease-in-out;
      font-weight: 600;
      margin-top: 4.2rem; }
      @media (max-width: 600px) {
        .history-main .left-col .current-taxonomy-title {
          padding-right: 0;
          font-size: var(--font-size-40); } }
      .history-main .left-col .current-taxonomy-title.trusted-by {
        position: absolute;
        top: 0;
        display: none; }
    .history-main .left-col .content {
      font-size: var(--font-size-18);
      letter-spacing: .048em;
      text-transform: uppercase;
      line-height: 1.5em;
      padding-right: 5rem; }
      @media (max-width: 600px) {
        .history-main .left-col .content {
          font-size: 1rem;
          padding-right: 0; } }
    .history-main .left-col.trust-cnt-active .current-taxonomy-title {
      opacity: 0;
      pointer-events: none;
      display: none; }
      .history-main .left-col.trust-cnt-active .current-taxonomy-title.trusted-by {
        opacity: 1;
        display: inline-block;
        margin-top: 0; }
    .history-main .left-col.trust-cnt-active .content {
      opacity: 0;
      pointer-events: none; }
  .history-main .right-col {
    width: 67%;
    position: relative;
    padding-bottom: 300px; }
    @media (max-width: 1180px) {
      .history-main .right-col {
        width: 100%;
        padding-bottom: 100px; } }
    .history-main .right-col .hero-image {
      margin-bottom: 3rem;
      height: calc(var(--vh100) - 12.3rem); }
      .history-main .right-col .hero-image img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        aspect-ratio: 4 / 3;
        display: block; }
    .history-main .right-col .main-content {
      max-width: 65%;
      margin-bottom: 19.0625rem; }
      @media (max-width: 1180px) {
        .history-main .right-col .main-content {
          margin-bottom: 6rem; } }
      @media (max-width: 600px) {
        .history-main .right-col .main-content {
          max-width: 100%; } }
      .history-main .right-col .main-content h1 {
        font-size: var(--font-size-40);
        margin-bottom: 1rem;
        line-height: 0.95em;
        font-weight: 600; }
        @media (max-width: 600px) {
          .history-main .right-col .main-content h1 {
            font-size: 1.5625rem; } }
      .history-main .right-col .main-content p {
        margin-bottom: 1rem;
        font-size: var(--font-size-18);
        letter-spacing: .045em;
        line-height: 1.5rem; }
        @media (max-width: 600px) {
          .history-main .right-col .main-content p {
            font-size: 1rem; } }
      .history-main .right-col .main-content img {
        width: 100%;
        height: auto;
        display: block;
        margin-bottom: 1rem; }
      .history-main .right-col .main-content a {
        border: 1px solid #000;
        padding: .8rem 1.3rem;
        display: inline-block;
        margin-top: 1rem;
        margin-bottom: 1rem;
        font-size: var(--font-size-18);
        letter-spacing: .048em;
        line-height: 1.2em; }
    .history-main .right-col .trusted-by-mobile {
      display: none;
      margin-bottom: 3rem;
      font-size: var(--font-size-45);
      font-weight: 600; }
      @media (max-width: 1180px) {
        .history-main .right-col .trusted-by-mobile {
          display: block; } }
      @media (max-width: 600px) {
        .history-main .right-col .trusted-by-mobile {
          font-size: 1.5625rem; } }
    .history-main .right-col .trusted-by-cnt {
      display: flex;
      flex-flow: wrap;
      gap: 3.67rem 1rem; }
      @media (max-width: 600px) {
        .history-main .right-col .trusted-by-cnt {
          gap: 1rem 1rem; } }
      .history-main .right-col .trusted-by-cnt .group-cnt {
        width: calc(25% - 0.75rem);
        font-size: var(--font-size-18); }
        .history-main .right-col .trusted-by-cnt .group-cnt .letter {
          margin-bottom: 1.5rem;
          font-weight: bold; }
        @media (max-width: 600px) {
          .history-main .right-col .trusted-by-cnt .group-cnt {
            width: calc(20% - 0.8rem);
            cursor: pointer; }
            .history-main .right-col .trusted-by-cnt .group-cnt .companies-list {
              display: none; }
            .history-main .right-col .trusted-by-cnt .group-cnt .letter {
              margin-bottom: 0;
              font-size: 1rem;
              font-weight: 400;
              line-height: 1.2em;
              text-transform: uppercase; }
            .history-main .right-col .trusted-by-cnt .group-cnt.is-active .letter {
              text-decoration: underline;
              text-underline-offset: .2em; } }
    .history-main .right-col .trusted-by-mobile-panel {
      display: none; }
      @media (max-width: 600px) {
        .history-main .right-col .trusted-by-mobile-panel {
          display: flex;
          gap: 1rem;
          padding-top: 2rem;
          margin-top: 2rem;
          border-top: 1px solid rgba(58, 46, 41, 0.45); } }
      .history-main .right-col .trusted-by-mobile-panel[hidden] {
        display: none; }
    .history-main .right-col .trusted-by-mobile-letter {
      margin: 0;
      font-size: 1.125rem;
      line-height: 1.2em;
      text-transform: uppercase;
      width: 4rem;
      flex: 0 0 4rem; }
    .history-main .right-col .trusted-by-mobile-companies {
      font-size: 1rem;
      letter-spacing: .048em;
      line-height: 1.3em;
      text-transform: uppercase; }
      .history-main .right-col .trusted-by-mobile-companies p,
      .history-main .right-col .trusted-by-mobile-companies div {
        margin-top: 0;
        margin-bottom: .5rem; }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWV0YXN0eWxlLmNzcyIsInNvdXJjZXMiOlsibWV0YXN0eWxlLnNjc3MiLCJhYnN0cmFjdHMvX21peGlucy5zY3NzIiwiYWJzdHJhY3RzL192YXJpYWJsZXMuc2NzcyIsImJhc2UvX25vcm1hbGl6ZS5zY3NzIiwiYmFzZS9fdHlwb2dyYXBoeS5zY3NzIiwiYmFzZS9fYmFzZS5zY3NzIiwiYmFzZS9fbW9kdWxlcy5zY3NzIiwiYmFzZS9fdXRpbGl0aWVzLnNjc3MiLCJjb21wb25lbnRzL3NsaWNrL19zbGljay5zY3NzIiwiY29tcG9uZW50cy9oYW1idXJnZXJzL2hhbWJ1cmdlcnMuc2NzcyIsImNvbXBvbmVudHMvaGFtYnVyZ2Vycy9fYmFzZS5zY3NzIiwiY29tcG9uZW50cy9oYW1idXJnZXJzL3R5cGVzL18zZHh5LnNjc3MiLCJsYXlvdXQvX2hlYWRlci5zY3NzIiwibGF5b3V0L19mb290ZXIuc2NzcyIsImxheW91dC9fZnJvbnQtcGFnZS5zY3NzIiwibGF5b3V0L19hYm91dC5zY3NzIiwibGF5b3V0L19jb250YWN0LnNjc3MiLCJsYXlvdXQvX3BvbGljeS5zY3NzIiwibGF5b3V0L19lcnJvci5zY3NzIiwibGF5b3V0L19jYXRlZ29yeS5zY3NzIiwibGF5b3V0L19zaW5nbGUuc2NzcyIsImxheW91dC9faGlzdG9yeS5zY3NzIl0sInNvdXJjZXNDb250ZW50IjpbIkBpbXBvcnQgJ2Fic3RyYWN0cy9taXhpbnMnO1xuQGltcG9ydCAnYWJzdHJhY3RzL3ZhcmlhYmxlcyc7XG5cbi8vQkFTRVxuQGltcG9ydCAnYmFzZS9ub3JtYWxpemUnO1xuQGltcG9ydCAnYmFzZS90eXBvZ3JhcGh5JztcbkBpbXBvcnQgJ2Jhc2UvYmFzZSc7XG5AaW1wb3J0ICdiYXNlL21vZHVsZXMnO1xuXG4vL1VUSUxTXG5AaW1wb3J0ICdiYXNlL3V0aWxpdGllcyc7XG5cbi8vQ09NUE9ORU5UU1xuQGltcG9ydCAnY29tcG9uZW50cy9zbGljay9zbGljayc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2hhbWJ1cmdlcnMvaGFtYnVyZ2Vycyc7XG4vLyBAaW1wb3J0IFwiY29tcG9uZW50cy9oYW1idXJnZXJzL2Jhc2VcIjtcbi8vIEBpbXBvcnQgXCJjb21wb25lbnRzL2hhbWJ1cmdlcnMvdHlwZXMvM2R4eVwiO1xuXG4vL0xBWU9VVFxuQGltcG9ydCAnbGF5b3V0L2hlYWRlcic7XG5AaW1wb3J0ICdsYXlvdXQvZm9vdGVyJztcbkBpbXBvcnQgJ2xheW91dC9mcm9udC1wYWdlJztcbkBpbXBvcnQgJ2xheW91dC9hYm91dCc7XG5AaW1wb3J0ICdsYXlvdXQvY29udGFjdCc7XG5AaW1wb3J0ICdsYXlvdXQvcG9saWN5JztcbkBpbXBvcnQgJ2xheW91dC9lcnJvcic7XG5AaW1wb3J0ICdsYXlvdXQvY2F0ZWdvcnknO1xuQGltcG9ydCAnbGF5b3V0L3NpbmdsZSc7XG5AaW1wb3J0ICdsYXlvdXQvaGlzdG9yeSc7XG4iLCIvLyBNRURJQSBRVUVSWSBNQU5BR0VSXG4vKlxuIDAgICAtICA2MDAgOiBQaG9uZSA0MDAvMTYgPCAzNy41ZW1cbiA2MDAgLSAgOTAwIDogVGFibGV0IDYwMC8xNiA8IDU2LjI1ZW1cbiA5MDAgLSAxMjAwIDogVGFibGV0IGxhbmRzY2FwZSA2MDAvMTYgPCA3NWVtXG4xMjAwIC0gICAgICA6IERlc2t0b3AgMTIwMC8xNiA+IDc1ZW1cblxuKi9cblxuQG1peGluIG1pbigkYnJlYWtwb2ludCkge1xuICAgIEBpZiAkYnJlYWtwb2ludD09NDAwIHtcbiAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAyNWVtKSB7XG4gICAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAkYnJlYWtwb2ludD09NjAwIHtcbiAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzNy41ZW0pIHtcbiAgICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGlmICRicmVha3BvaW50PT04MDAge1xuICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDUwZW0pIHtcbiAgICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGlmICRicmVha3BvaW50PT0xMDAwIHtcbiAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2Mi41ZW0pIHtcbiAgICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGlmICRicmVha3BvaW50PT0xMTAwIHtcbiAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2OC43NWVtKSB7XG4gICAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAkYnJlYWtwb2ludD09MTIwMCB7XG4gICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgJGJyZWFrcG9pbnQ9PTEzMDAge1xuICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgxLjI1ZW0pIHtcbiAgICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGlmICRicmVha3BvaW50PT0xNjAwIHtcbiAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDBlbSkge1xuICAgICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vbWF4IChkZXNrdG9wIGZpcnN0KVxuQG1peGluIG1heCgkYnJlYWtwb2ludCkge1xuICAgIEBpZiAkYnJlYWtwb2ludD09NDAwIHtcbiAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAyNWVtKSB7XG4gICAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAkYnJlYWtwb2ludD09NjAwIHtcbiAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzNy41ZW0pIHtcbiAgICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGlmICRicmVha3BvaW50PT1tb2JpbGUge1xuICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM3LjVlbSkge1xuICAgICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgJGJyZWFrcG9pbnQ9PTcwMCB7XG4gICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDMuNzVlbSkge1xuICAgICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgJGJyZWFrcG9pbnQ9PTgwMCB7XG4gICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTBlbSkge1xuICAgICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgJGJyZWFrcG9pbnQ9PTkwMCB7XG4gICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTYuMjVlbSkge1xuICAgICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICB9XG5cblxuICAgIEBpZiAkYnJlYWtwb2ludD09OTAwbGFuZCB7XG4gICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTYuMjVlbSkgYW5kIChvcmllbnRhdGlvbjpsYW5kc2NhcGUpIHtcbiAgICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGlmICRicmVha3BvaW50PT0xMDAwIHtcbiAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2Mi41ZW0pIHtcbiAgICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIEBpZiAkYnJlYWtwb2ludD09dGFibGV0IHtcbiAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2Mi41ZW0pIHtcbiAgICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGlmICRicmVha3BvaW50PT0xMTAwIHtcbiAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2OC43NWVtKSB7XG4gICAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAkYnJlYWtwb2ludD09MTIwMCB7XG4gICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzVlbSkge1xuICAgICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgJGJyZWFrcG9pbnQ9PXRhYmxhbmQge1xuICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc1ZW0pIHtcbiAgICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGlmICRicmVha3BvaW50PT0xMzAwIHtcbiAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4MS4yNWVtKSB7XG4gICAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAkYnJlYWtwb2ludD09MTQwMCB7XG4gICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogODcuNWVtKSB7XG4gICAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAkYnJlYWtwb2ludD09MTYwMCB7XG4gICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAwZW0pIHtcbiAgICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGlmICRicmVha3BvaW50PT0xODAwIHtcbiAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMTIuNWVtKSB7XG4gICAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy9iZXR3ZWVuIChzcGVjaWFsIG9jY2FzaW9ucylcbkBtaXhpbiBiZXR3ZWVuKCRicG1pbiwgJGJwbWF4KSB7XG4gICAgQGlmICRicG1pbj09NjAwIGFuZCAkYnBtYXg9PTgwMCB7XG4gICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzcuNWVtKSBhbmQgKG1heC13aWR0aDogNTBlbSkge1xuICAgICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgJGJwbWluPT02MDAgYW5kICRicG1heD09OTAwIHtcbiAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzNy41ZW0pIGFuZCAobWF4LXdpZHRoOiA1Ni4yNWVtKSB7XG4gICAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAkYnBtaW49PTYwMCBhbmQgJGJwbWF4PT0xMDAwIHtcbiAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzNy41ZW0pIGFuZCAobWF4LXdpZHRoOiA2Mi41ZW0pIHtcbiAgICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGlmICRicG1pbj09ODAwIGFuZCAkYnBtYXg9PTEwMDAge1xuICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDUwZW0pIGFuZCAobWF4LXdpZHRoOiA2Mi41ZW0pIHtcbiAgICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vL3dpZHRoICYgaGVpZ2h0IHF1ZXJpZXNcbkBtaXhpbiBtaW5XbWF4SCgkd21pbiwgJGhtYXgpIHtcbiAgICBAaWYgJHdtaW49PTEwMDAgYW5kICRobWF4ID09IDgwMCB7XG4gICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjIuNWVtKSBhbmQgKG1heC1oZWlnaHQ6IDUwZW0pIHtcbiAgICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICB9XG4gICAgfVxufVxuXG5AbWl4aW4gbGFuZHNjYXBlKCRobWF4KSB7XG4gICAgQGlmICRobWF4PT02MDAge1xuICAgICAgICBAbWVkaWEgKG1heC1oZWlnaHQ6IDM3LjVlbSkgYW5kIChvcmllbnRhdGlvbjogbGFuZHNjYXBlKSAge1xuICAgICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICB9XG59XG5cblxuQG1peGluIGZvci1zbWFsbC1tb2JpbGUge1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAzNTFweCkgeyBAY29udGVudDsgfVxufVxuXG5AbWl4aW4gZm9yLW1vYmlsZSB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDYwMHB4KSB7IEBjb250ZW50OyB9XG59XG5cbkBtaXhpbiBmb3ItbW9iaWxlLWxhbmRzY2FwZSB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDkwMHB4KSBhbmQgKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpIHsgQGNvbnRlbnQ7IH1cbn1cblxuQG1peGluIGZvci10YWJsZXQtcG9ydHJhaXQge1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMTgwcHgpIHsgQGNvbnRlbnQ7IH1cbn1cblxuQG1peGluIGZvci10YWJsZXQtbGFuZHNjYXBlIHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogMTIwMHB4KSB7IEBjb250ZW50OyB9XG59XG5cbkBtaXhpbiBmb3ItbWVkaXVtLWxhcHRvcCB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDE1MDBweCkgeyBAY29udGVudDsgfVxufVxuXG5AbWl4aW4gZm9yLWRlc2t0b3Age1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxODAwcHgpIHsgQGNvbnRlbnQ7IH1cbn1cblxuQG1peGluIGZvci1iaWctZGVza3RvcCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDE4MDFweCkgeyBAY29udGVudDsgfVxufVxuIiwiLy9ST09UIFZBUklBQkxFU1xuOnJvb3Qge1xuICAgIC0tdmgxMDA6IGNhbGMoMTAwdmgpO1xuICAgIC0tdmgxMDAtb25jZTogY2FsYygxMDB2aCk7XG4gICAgLS1zY3JvbGxiYXItd2lkdGg6IDA7XG5cbiAgICAtLXNpdGUtcGFkZGluZzogMi4xcmVtO1xuICAgIC0tZm9vdGVyLWhlaWdodDogMjAuODEyNXJlbTtcblxuICAgIC0tZm9udC1zaXplLTkwOiA1LjYyNXJlbTtcbiAgICAtLWZvbnQtc2l6ZS03MDogMy4xMjVyZW07IC8vNTBweFxuICAgIC0tZm9udC1zaXplLTYwOiAzLjc1cmVtO1xuICAgIC0tZm9udC1zaXplLTUwOiAzLjEyNXJlbTtcbiAgICAtLWZvbnQtc2l6ZS00NTogMi44MTI1cmVtO1xuICAgIC0tZm9udC1zaXplLTQwOiAyLjVyZW07XG4gICAgLS1mb250LXNpemUtMzA6IDEuODc1cmVtO1xuICAgIC0tZm9udC1zaXplLTE4OiAxLjEyNXJlbTtcbiAgICAtLWZvbnQtc2l6ZS0xNDogMC44NzVyZW07XG5cbiAgICBAaW5jbHVkZSBmb3ItbW9iaWxlIHtcbiAgICAgICAgLS1mb290ZXItaGVpZ2h0OiAzNS42MjVyZW07XG4gICAgICAgIC0tdmgxMDA6IGNhbGMoMTAwZHZoKTtcbiAgICAgICAgLS12aDEwMC1vbmNlOiBjYWxjKDEwMGR2aCk7XG5cbiAgICAgICAgLS1zaXRlLXBhZGRpbmc6IDAuOTM3NXJlbTtcbiAgICB9XG5cbn1cblxuXG4vL0NPTE9SU1xuJGJsYWNrOiAjMDAwO1xuJHdoaXRlOiAjRkZGO1xuJGJhY2tncm91bmQtY29sb3I6ICNGMkU5REE7XG4kZm9vdGVyLWNvbG9yOiAjM0EyRTI5O1xuIiwiLyohIG5vcm1hbGl6ZS5jc3MgdjguMC4xIHwgTUlUIExpY2Vuc2UgfCBnaXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzcyAqL1xuXG4vKiBEb2N1bWVudFxuXHQgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBsaW5lIGhlaWdodCBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBQcmV2ZW50IGFkanVzdG1lbnRzIG9mIGZvbnQgc2l6ZSBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2VzIGluIGlPUy5cbiAqL1xuXG5odG1sIHtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTtcbn1cblxuLyogU2VjdGlvbnNcblx0ID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogUmVtb3ZlIHRoZSBtYXJnaW4gaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbmJvZHkge1xuICAgIG1hcmdpbjogMDtcbn1cblxuLyoqXG4gKiBSZW5kZXIgdGhlIGBtYWluYCBlbGVtZW50IGNvbnNpc3RlbnRseSBpbiBJRS5cbiAqL1xuXG5tYWluIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBmb250IHNpemUgYW5kIG1hcmdpbiBvbiBgaDFgIGVsZW1lbnRzIHdpdGhpbiBgc2VjdGlvbmAgYW5kXG4gKiBgYXJ0aWNsZWAgY29udGV4dHMgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgU2FmYXJpLlxuICovXG5cbmgxIHtcbiAgICBmb250LXNpemU6IDJlbTtcbiAgICBtYXJnaW46IDAuNjdlbSAwO1xufVxuXG4vKiBHcm91cGluZyBjb250ZW50XG5cdCA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIEZpcmVmb3guXG4gKiAyLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlIGFuZCBJRS5cbiAqL1xuXG5ociB7XG4gICAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxucHJlIHtcbiAgICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7XG4gICAgZm9udC1zaXplOiAxZW07XG59XG5cbi8qIFRleHQtbGV2ZWwgc2VtYW50aWNzXG5cdCA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIG9uIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cbiAqL1xuXG5hIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLyoqXG4gKiAxLiBSZW1vdmUgdGhlIGJvdHRvbSBib3JkZXIgaW4gQ2hyb21lIDU3LVxuICogMi4gQWRkIHRoZSBjb3JyZWN0IHRleHQgZGVjb3JhdGlvbiBpbiBDaHJvbWUsIEVkZ2UsIElFLCBPcGVyYSwgYW5kIFNhZmFyaS5cbiAqL1xuXG5hYmJyW3RpdGxlXSB7XG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7XG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgd2VpZ2h0IGluIENocm9tZSwgRWRnZSwgYW5kIFNhZmFyaS5cbiAqL1xuXG5iLFxuc3Ryb25nIHtcbiAgICBmb250LXdlaWdodDogYm9sZGVyO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuY29kZSxcbmtiZCxcbnNhbXAge1xuICAgIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTtcbiAgICBmb250LXNpemU6IDFlbTtcbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5zbWFsbCB7XG4gICAgZm9udC1zaXplOiA4MCU7XG59XG5cbi8qKlxuICogUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgZWxlbWVudHMgZnJvbSBhZmZlY3RpbmcgdGhlIGxpbmUgaGVpZ2h0IGluXG4gKiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuc3ViLFxuc3VwIHtcbiAgICBmb250LXNpemU6IDc1JTtcbiAgICBsaW5lLWhlaWdodDogMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5zdWIge1xuICAgIGJvdHRvbTogLTAuMjVlbTtcbn1cblxuc3VwIHtcbiAgICB0b3A6IC0wLjVlbTtcbn1cblxuLyogRW1iZWRkZWQgY29udGVudFxuXHQgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGJvcmRlciBvbiBpbWFnZXMgaW5zaWRlIGxpbmtzIGluIElFIDEwLlxuICovXG5cbmltZyB7XG4gICAgYm9yZGVyLXN0eWxlOiBub25lO1xufVxuXG4vKiBGb3Jtc1xuXHQgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiAxLiBDaGFuZ2UgdGhlIGZvbnQgc3R5bGVzIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIFJlbW92ZSB0aGUgbWFyZ2luIGluIEZpcmVmb3ggYW5kIFNhZmFyaS5cbiAqL1xuXG5idXR0b24sXG5pbnB1dCxcbm9wdGdyb3VwLFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICAgIGZvbnQtc2l6ZTogMTAwJTtcbiAgICBsaW5lLWhlaWdodDogMS4xNTtcbiAgICBtYXJnaW46IDA7XG59XG5cbi8qKlxuICogU2hvdyB0aGUgb3ZlcmZsb3cgaW4gSUUuXG4gKiAxLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlLlxuICovXG5cbmJ1dHRvbixcbmlucHV0IHtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEVkZ2UsIEZpcmVmb3gsIGFuZCBJRS5cbiAqIDEuIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRmlyZWZveC5cbiAqL1xuXG5idXR0b24sXG5zZWxlY3Qge1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gKi9cblxuYnV0dG9uLFxuW3R5cGU9J2J1dHRvbiddLFxuW3R5cGU9J3Jlc2V0J10sXG5bdHlwZT0nc3VibWl0J10ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5uZXIgYm9yZGVyIGFuZCBwYWRkaW5nIGluIEZpcmVmb3guXG4gKi9cblxuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9J2J1dHRvbiddOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9J3Jlc2V0J106Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT0nc3VibWl0J106Oi1tb3otZm9jdXMtaW5uZXIge1xuICAgIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgICBwYWRkaW5nOiAwO1xufVxuXG4vKipcbiAqIFJlc3RvcmUgdGhlIGZvY3VzIHN0eWxlcyB1bnNldCBieSB0aGUgcHJldmlvdXMgcnVsZS5cbiAqL1xuXG5idXR0b246LW1vei1mb2N1c3JpbmcsXG5bdHlwZT0nYnV0dG9uJ106LW1vei1mb2N1c3JpbmcsXG5bdHlwZT0ncmVzZXQnXTotbW96LWZvY3VzcmluZyxcblt0eXBlPSdzdWJtaXQnXTotbW96LWZvY3VzcmluZyB7XG4gICAgb3V0bGluZTogMXB4IGRvdHRlZCBCdXR0b25UZXh0O1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIHBhZGRpbmcgaW4gRmlyZWZveC5cbiAqL1xuXG5maWVsZHNldCB7XG4gICAgcGFkZGluZzogMC4zNWVtIDAuNzVlbSAwLjYyNWVtO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIHRleHQgd3JhcHBpbmcgaW4gRWRnZSBhbmQgSUUuXG4gKiAyLiBDb3JyZWN0IHRoZSBjb2xvciBpbmhlcml0YW5jZSBmcm9tIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gSUUuXG4gKiAzLiBSZW1vdmUgdGhlIHBhZGRpbmcgc28gZGV2ZWxvcGVycyBhcmUgbm90IGNhdWdodCBvdXQgd2hlbiB0aGV5IHplcm8gb3V0XG4gKlx0XHRgZmllbGRzZXRgIGVsZW1lbnRzIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5sZWdlbmQge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgdmVydGljYWwgYWxpZ25tZW50IGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuICovXG5cbnByb2dyZXNzIHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRSAxMCsuXG4gKi9cblxudGV4dGFyZWEge1xuICAgIG92ZXJmbG93OiBhdXRvO1xufVxuXG4vKipcbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIElFIDEwLlxuICogMi4gUmVtb3ZlIHRoZSBwYWRkaW5nIGluIElFIDEwLlxuICovXG5cblt0eXBlPSdjaGVja2JveCddLFxuW3R5cGU9J3JhZGlvJ10ge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgcGFkZGluZzogMDtcbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBjdXJzb3Igc3R5bGUgb2YgaW5jcmVtZW50IGFuZCBkZWNyZW1lbnQgYnV0dG9ucyBpbiBDaHJvbWUuXG4gKi9cblxuW3R5cGU9J251bWJlciddOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuW3R5cGU9J251bWJlciddOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgICBoZWlnaHQ6IGF1dG87XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgb2RkIGFwcGVhcmFuY2UgaW4gQ2hyb21lIGFuZCBTYWZhcmkuXG4gKiAyLiBDb3JyZWN0IHRoZSBvdXRsaW5lIHN0eWxlIGluIFNhZmFyaS5cbiAqL1xuXG5bdHlwZT0nc2VhcmNoJ10ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkO1xuICAgIG91dGxpbmUtb2Zmc2V0OiAtMnB4O1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBtYWNPUy5cbiAqL1xuXG5bdHlwZT0nc2VhcmNoJ106Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICogMi4gQ2hhbmdlIGZvbnQgcHJvcGVydGllcyB0byBgaW5oZXJpdGAgaW4gU2FmYXJpLlxuICovXG5cbjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xuICAgIGZvbnQ6IGluaGVyaXQ7XG59XG5cbi8qIEludGVyYWN0aXZlXG5cdCA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gRWRnZSwgSUUgMTArLCBhbmQgRmlyZWZveC5cbiAqL1xuXG5kZXRhaWxzIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbn1cblxuLypcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5zdW1tYXJ5IHtcbiAgICBkaXNwbGF5OiBsaXN0LWl0ZW07XG59XG5cbi8qIE1pc2Ncblx0ID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTArLlxuICovXG5cbnRlbXBsYXRlIHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwLlxuICovXG5cbltoaWRkZW5dIHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuXG4vL0NVU1RPTSBOT1JNQUxJWkVcbiosXG4qOjphZnRlcixcbio6OmJlZm9yZSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYm94LXNpemluZzogaW5oZXJpdDtcbn1cblxuaHRtbCB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuYSxcbmE6dmlzaXRlZCB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGNvbG9yOiBpbmhlcml0O1xufVxuXG51bCBsaSB7XG4gICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xufVxuXG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg2IHtcbiAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBtYXJnaW46IDA7XG59XG5cbmJ1dHRvbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xufVxuIiwiLy8gLy8gVFlQT0dSQVBIWVxuLy8gQGZvbnQtZmFjZSB7XG4vLyAgICAgZm9udC1mYW1pbHk6ICdNYWJyeSBQcm8nO1xuLy8gICAgIHNyYzogdXJsKC4uL2ZvbnRzL01hYnJ5UHJvLVJlZ3VsYXIud29mZjIpIGZvcm1hdCgnd29mZjInKSxcbi8vICAgICAgICAgdXJsKC4uL2ZvbnRzL01hYnJ5UHJvLVJlZ3VsYXIud29mZikgZm9ybWF0KCd3b2ZmJyk7XG4vLyAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbi8vICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4vLyAgICAgZm9udC1kaXNwbGF5OiBzd2FwO1xuLy8gfVxuXG5cbi8vIEBmb250LWZhY2Uge1xuLy8gICAgIGZvbnQtZmFtaWx5OiAnTWFicnkgUHJvJztcbi8vICAgICBzcmM6IHVybCguLi9mb250cy9NYWJyeVByby1Cb2xkLndvZmYyKSBmb3JtYXQoJ3dvZmYyJyksXG4vLyAgICAgICAgIHVybCguLi9mb250cy9NYWJyeVByby1Cb2xkLndvZmYpIGZvcm1hdCgnd29mZicpO1xuLy8gICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbi8vICAgICBmb250LXdlaWdodDogNzAwO1xuLy8gICAgIGZvbnQtZGlzcGxheTogc3dhcDtcbi8vIH1cblxuLy8gQGZvbnQtZmFjZSB7XG4vLyAgICAgZm9udC1mYW1pbHk6ICdDRiBHYXJhbW9uZCc7XG4vLyAgICAgLy8gc3JjOiB1cmwoLi4vZm9udHMvQ0ZHYXJhbW9uZC1SZWd1bGFyLndvZmYyKSBmb3JtYXQoJ3dvZmYyJyksXG4vLyAgICAgLy8gICAgIHVybCguLi9mb250cy9DRkdhcmFtb25kLVJlZ3VsYXIud29mZikgZm9ybWF0KCd3b2ZmJyk7XG4vLyAgICAgc3JjOiB1cmwoLi4vZm9udHMvQ0YtR2FyYW1vbmQtUmcud29mZjIpIGZvcm1hdCgnd29mZjInKSxcbi8vICAgICAgICAgdXJsKC4uL2ZvbnRzL0NGLUdhcmFtb25kLVJnLndvZmYpIGZvcm1hdCgnd29mZicpO1xuLy8gICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbi8vICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuLy8gICAgIGZvbnQtZGlzcGxheTogc3dhcDtcbi8vIH1cblxuXG5AZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogJ0Jhc2ljQ29tbWVyY2lhbCBMVCBDb20nO1xuICAgIHNyYzogdXJsKCcuLi9mb250cy9zdWJzZXQtQmFzaWNDb21tZXJjaWFsTFRDb20tQm9sZC53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcbiAgICAgICAgdXJsKCcuLi9mb250cy9zdWJzZXQtQmFzaWNDb21tZXJjaWFsTFRDb20tQm9sZC53b2ZmJykgZm9ybWF0KCd3b2ZmJyk7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtZGlzcGxheTogc3dhcDtcbn1cblxuQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6ICdCYXNpY0NvbW1lcmNpYWwgTFQgQ29tJztcbiAgICBzcmM6IHVybCgnLi4vZm9udHMvc3Vic2V0LUJhc2ljQ29tbWVyY2lhbExUQ29tLUx0LndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxuICAgICAgICB1cmwoJy4uL2ZvbnRzL3N1YnNldC1CYXNpY0NvbW1lcmNpYWxMVENvbS1MdC53b2ZmJykgZm9ybWF0KCd3b2ZmJyk7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC1kaXNwbGF5OiBzd2FwO1xufSIsImh0bWwge1xyXG4gICAgZm9udC1mYW1pbHk6ICdCYXNpY0NvbW1lcmNpYWwgTFQgQ29tJztcclxuICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kLWNvbG9yO1xyXG5cclxuICAgIGJvZHkge1xyXG4gICAgICAgIG1pbi1oZWlnaHQ6IDEwMHN2aDtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICB0cmFuc2l0aW9uOiAuMnMgZWFzZS1pbi1vdXQ7XHJcblxyXG4gICAgICAgICYucmVhZHkge1xyXG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi5tZW51LWFjdGl2ZSB7XHJcbiAgICAgICAgICAgIC50b3AtY29sIHtcclxuICAgICAgICAgICAgICAgIC50b3AtbGVmdCxcclxuICAgICAgICAgICAgICAgIC50b3AtcmlnaHQge1xyXG4gICAgICAgICAgICAgICAgICAgIHN2ZyxcclxuICAgICAgICAgICAgICAgICAgICBzdmcgKiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw6ICRiYWNrZ3JvdW5kLWNvbG9yICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vc3Ryb2tlOiAkZm9vdGVyLWNvbG9yICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAuYm90dG9tLWNvbCB7XHJcbiAgICAgICAgICAgICAgICAuYm90dG9tLWxlZnQsXHJcbiAgICAgICAgICAgICAgICAuYm90dG9tLXJpZ2h0IHtcclxuICAgICAgICAgICAgICAgICAgICBzdmcsXHJcbiAgICAgICAgICAgICAgICAgICAgc3ZnICoge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmaWxsOiAkYmFja2dyb3VuZC1jb2xvciAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAvL3N0cm9rZTogJGZvb3Rlci1jb2xvciAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuKiB7XHJcbiAgICBjb2xvcjogJGZvb3Rlci1jb2xvcjtcclxuXHJcbiAgICAmOjpzZWxlY3Rpb24ge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRmb290ZXItY29sb3I7XHJcbiAgICAgICAgY29sb3I6ICRiYWNrZ3JvdW5kLWNvbG9yO1xyXG4gICAgfVxyXG59IiwiIiwiLy9VVElMSVRJRVNcbi8vdGV4dCBvcHRpb25zXG4uaXRhbGljIHtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cbi51cHBlciB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLmxvd2VyIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbG93ZXJjYXNlO1xufVxuXG4uY2FwIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbn1cblxuLnVuZGVybGluZSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG5cbi50ZXh0LWNlbnRlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4udGV4dC1qdXN0aWZ5IHtcbiAgICB0ZXh0LWFsaWduOiBqdXN0aWZ5O1xufVxuXG4udGV4dC1sZWZ0IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4udGV4dC1yaWdodCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG5cblxuLy9sYXlvdXQgb3B0aW9uc1xuLm0wLWF1dG8ge1xuICAgIG1hcmdpbjogMCBhdXRvO1xufVxuXG4vLyAuaGFsZi1wYWdlIHtcbi8vICAgICBAaW5jbHVkZSBtaW4oMTAwMCkge1xuLy8gICAgICAgICB3aWR0aDogY2FsYyg1MCUpO1xuLy8gICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4vLyAgICAgICAgIHRvcDogMS40cmVtO1xuLy8gICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIC8vIHJpZ2h0OiAkbWFpbi1wYWRkaW5nLUxSLW07XG4vLyAgICAgfVxuLy8gfVxuXG4uZmxleCB7XG4gICAgZGlzcGxheTogZmxleDtcbn1cblxuLmZsZXgtY2VudGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi5mbGV4LWJldHdlZW4ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xufVxuXG4uZmxleC1iZXR3ZWVuLWNlbnRlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLmZsZXgtY2VudGVyLWNlbnRlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4uZmxleC1jb2wge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cblxuLmZsZXgtY29sLWNlbnRlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi5mbGV4LWNvbC1iZXR3ZWVuLWNlbnRlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4uZmxleC1icmVhayB7XG4gICAgZmxleDogMSAwIDEwMCU7XG4gICAgaGVpZ2h0OiAwO1xufVxuXG4uZ3JpZCB7XG4gICAgZGlzcGxheTogZ3JpZDtcbn1cblxuLmdyaWQtMTIge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMTIsIDFmcik7XG4gICAgZ3JpZC1jb2x1bW4tZ2FwOiB2YXIoLS1jb2wtZ2FwKTtcbn1cblxuLy9vdmVybGF5c1xuLm92ZXJsYXktZmFkZWluIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdG9wOiAwIDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC8vIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnMgZWFzZS1pbi1vdXQ7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgei1pbmRleDogMDtcbn1cblxuLm92ZXJsYXktbGVmdCB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogMDsgLy8kaGVhZGVyLWhlaWdodC1zbTtcbiAgICBsZWZ0OiAwO1xuICAgIC8vIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzIGVhc2Utb3V0O1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIHotaW5kZXg6IDU7XG5cbiAgICAmLnRyYW5zZm9ybS14MCB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICB9XG59XG5cblxuLm92ZXJsYXktcmlnaHQge1xuXG4gICAgQGluY2x1ZGUgbWF4KDEwMDApIHtcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICB0b3A6IDA7IC8vJGhlYWRlci1oZWlnaHQtc207XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3MgZWFzZS1vdXQ7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICB6LWluZGV4OiA1O1xuICAgIH1cbn1cblxuLm92ZXJsYXktZmFkZWluLnNob3cge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgei1pbmRleDogMTA7XG59XG5cbi50cmFuc2Zvcm0teDAge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbn1cblxuLnRyYW5zZm9ybWVkLXkge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxNTBweCk7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC43cyBlYXNlLWluLW91dCwgb3BhY2l0eSAuN3MgZWFzZS1pbjtcbiAgICBcbiAgICAmLnVucmV2ZWFsZWQge1xuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjdzIGVhc2UtaW4tb3V0LCBvcGFjaXR5IC43cyBlYXNlLWluO1xuICAgIH1cbiAgICAmLnRyYW5zZm9ybS0wIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIH1cbn1cblxuLnNlcXVlbnRpYWwgPiBkaXYge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxNTBweCk7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjdzIGVhc2UtaW4tb3V0LCBvcGFjaXR5IC43cyBlYXNlLWluO1xuXG4gICAgJi5zaG93LnRyYW5zZm9ybS0wIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgIH1cbn1cblxuLmV2ZW50cyB7XG4gICAgJi1ub25lIHtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgfVxuXG4gICAgJi1hdXRvIHtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gICAgfVxufVxuXG4ub3ZlcmZsb3dZLWhpZGRlbiB7XG4gICAgb3ZlcmZsb3cteTogaGlkZGVuO1xufVxuXG4uZXZlbnRzLW5vbmUub3ZlcmZsb3dZLWhpZGRlbiB7XG4gICAgLy8gcG9pbnRlci1ldmVudHM6IGF1dG87XG4gICAgb3ZlcmZsb3cteTogYXV0bztcblxuICAgIEBpbmNsdWRlIG1heCgxMDAwKSB7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIH1cbn1cblxuLy9zY3JvbGxzXG4uc2Nyb2xsIHtcbiAgICAmLWNvbnQge1xuICAgICAgICBvdmVyZmxvdzogdW5zZXQ7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgXG4gICAgICAgIEBpbmNsdWRlIG1pbig2MDApIHtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICBoZWlnaHQ6IHZhcigtLXZoMTAwKTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1pbigxMDAwKSB7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLWlubmVyIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogdmFyKC0tc2Nyb2xsYmFyLXdpZHRoKTtcbiAgICAgICAgb3ZlcmZsb3cteTogc2Nyb2xsO1xuICAgICAgICBoZWlnaHQ6IHZhcigtLXZoMTAwKTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSArIHZhcigtLXNjcm9sbGJhci13aWR0aCkpO1xuICAgIH1cbn1cblxuLnNjcm9sbGJhci1tZWFzdXJlIHtcblx0d2lkdGg6IDEwMHB4O1xuXHRoZWlnaHQ6IDEwMHB4O1xuXHRvdmVyZmxvdzogc2Nyb2xsO1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHRvcDogLTk5OTlweDtcbn1cblxuLnN0aWNreSB7XG4gICAgcG9zaXRpb246IHN0aWNreTtcbiAgICAvLyB0b3A6ICRoZWFkZXItaGVpZ2h0LWw7XG4gICAgLy8gYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXdoaXRlO1xuXG4gICAgLy8gQGluY2x1ZGUgbWF4KDYwMCkge1xuICAgIC8vICAgICBwb3NpdGlvbjogdW5zZXQ7XG4gICAgLy8gfVxufVxuXG5cbi8vdmlzaWJpbGl0eVxuLmhpZGRlbi10aXRsZSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgbWFyZ2luOiAwO1xufVxuXG4uaW52aXNpYmxlIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi5ub2Rpc3BsYXkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5oaWRkZW4ge1xuICAgIG9wYWNpdHk6IDA7XG59XG5cbi5zaG93IHtcbiAgICBvcGFjaXR5OiAxO1xufVxuXG4udW5yZXZlYWxlZCB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IC41cyBlYXNlLWluO1xuXG4gICAgJi5zaG93IHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG59XG5cbi8vbWVkaWEgcXVlcmllZCBzdHlsZXNcbi5tb2JpbGUtaGlkZGVuIHtcbiAgICBAaW5jbHVkZSBtYXgoNjAwKSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxufVxuXG4udGFibGV0LWhpZGRlbiB7XG4gICAgQGluY2x1ZGUgbWF4KDEwMDApIHtcbiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbn1cblxuLnRhYmxldC1sYW5kLWhpZGRlbiB7XG4gICAgQGluY2x1ZGUgbWF4KDEyMDApIHtcbiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbn1cblxuLm1vYmlsZS1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgQGluY2x1ZGUgbWF4KDYwMCkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG59XG5cbi50YWJsZXQtb25seSB7XG4gICAgZGlzcGxheTogbm9uZTtcblxuICAgIEBpbmNsdWRlIG1heCgxMDAwKSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbn1cbi50YWJsZXQtbGFuZC1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgQGluY2x1ZGUgbWF4KDEyMDApIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxufSIsIi8vU0xJQ0sgQ1NTIGZpbGVcbi8qIFNsaWRlciAqL1xuLnNsaWNrLXNsaWRlclxue1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cbiAgICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAgICAgIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICAgIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgICAgICAgIHVzZXItc2VsZWN0OiBub25lO1xuXG4gICAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xuICAgIC1raHRtbC11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAtbXMtdG91Y2gtYWN0aW9uOiBwYW4teTtcbiAgICAgICAgdG91Y2gtYWN0aW9uOiBwYW4teTtcbiAgICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4uc2xpY2stbGlzdFxue1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbn1cbi5zbGljay1saXN0OmZvY3VzXG57XG4gICAgb3V0bGluZTogbm9uZTtcbn1cbi5zbGljay1saXN0LmRyYWdnaW5nXG57XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGN1cnNvcjogaGFuZDtcbn1cblxuLnNsaWNrLXNsaWRlciAuc2xpY2stdHJhY2ssXG4uc2xpY2stc2xpZGVyIC5zbGljay1saXN0XG57XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgICAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbn1cblxuLnNsaWNrLXRyYWNrXG57XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuXG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxuLnNsaWNrLXRyYWNrOmJlZm9yZSxcbi5zbGljay10cmFjazphZnRlclxue1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuXG4gICAgY29udGVudDogJyc7XG59XG4uc2xpY2stdHJhY2s6YWZ0ZXJcbntcbiAgICBjbGVhcjogYm90aDtcbn1cbi5zbGljay1sb2FkaW5nIC5zbGljay10cmFja1xue1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLnNsaWNrLXNsaWRlXG57XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBmbG9hdDogbGVmdDtcblxuICAgIGhlaWdodDogMTAwJTtcbiAgICBtaW4taGVpZ2h0OiAxcHg7XG59XG5bZGlyPSdydGwnXSAuc2xpY2stc2xpZGVcbntcbiAgICBmbG9hdDogcmlnaHQ7XG59XG4uc2xpY2stc2xpZGUgaW1nXG57XG4gICAgZGlzcGxheTogYmxvY2s7XG59XG4uc2xpY2stc2xpZGUuc2xpY2stbG9hZGluZyBpbWdcbntcbiAgICBkaXNwbGF5OiBub25lO1xufVxuLnNsaWNrLXNsaWRlLmRyYWdnaW5nIGltZ1xue1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuLnNsaWNrLWluaXRpYWxpemVkIC5zbGljay1zbGlkZVxue1xuICAgIGRpc3BsYXk6IGJsb2NrO1xufVxuLnNsaWNrLWxvYWRpbmcgLnNsaWNrLXNsaWRlXG57XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuLnNsaWNrLXZlcnRpY2FsIC5zbGljay1zbGlkZVxue1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgaGVpZ2h0OiBhdXRvO1xuXG4gICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG59XG4uc2xpY2stYXJyb3cuc2xpY2staGlkZGVuIHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuXG5cblxuLy9TTElDSyBPVkVSUklERVNcbi5zbGljayB7XG4gICAgXG4gICAgJi1zbGlkZXIuaG92ZXIgLmNpdHktbXVsdGljYXJkLWNvbnQge1xuICAgICAgICBvcGFjaXR5OiAuNTtcblxuICAgICAgICAmLm92ZXIge1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAmLXNsaWRlIHtcbiAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgaGVpZ2h0OiBpbmhlcml0O1xuICAgIH1cblxuICAgICYtZGlzYWJsZWQge1xuICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIFxuICAgICYtdHJhY2sge1xuICAgICAgICBtYXJnaW4tbGVmdDogY2FsYyh2YXIoLS1tYWluLXBhZC1scikgLSAxcmVtKTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtYXgodGFibGV0KSB7XG4gICAgICAgICYtdHJhY2sge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGNhbGModmFyKC0tbWFpbi1wYWQtbHIpIC0gLjhyZW0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWF4KG1vYmlsZSkge1xuICAgICAgICAmLXRyYWNrIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB1bnNldDtcbiAgICAgICAgfVxuICAgIH1cbn0iLCJAY2hhcnNldCBcIlVURi04XCI7XG4vKiFcbiAqIEhhbWJ1cmdlcnNcbiAqIEBkZXNjcmlwdGlvbiBUYXN0eSBDU1MtYW5pbWF0ZWQgaGFtYnVyZ2Vyc1xuICogQGF1dGhvciBKb25hdGhhbiBTdWggQGpvbnN1aFxuICogQHNpdGUgaHR0cHM6Ly9qb25zdWguY29tL2hhbWJ1cmdlcnNcbiAqIEBsaW5rIGh0dHBzOi8vZ2l0aHViLmNvbS9qb25zdWgvaGFtYnVyZ2Vyc1xuICovXG5cbi8vIFNldHRpbmdzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuJGhhbWJ1cmdlci1wYWRkaW5nLXggICAgICAgICAgIDogMTRweCAhZGVmYXVsdDtcbiRoYW1idXJnZXItcGFkZGluZy15ICAgICAgICAgICA6IDE2cHggIWRlZmF1bHQ7XG4kaGFtYnVyZ2VyLWxheWVyLXdpZHRoICAgICAgICAgOiAyMHB4ICFkZWZhdWx0O1xuJGhhbWJ1cmdlci1sYXllci1oZWlnaHQgICAgICAgIDogMXB4ICFkZWZhdWx0O1xuJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nICAgICAgIDogNnB4ICFkZWZhdWx0O1xuJGhhbWJ1cmdlci1sYXllci1jb2xvciAgICAgICAgIDogJHdoaXRlICFkZWZhdWx0O1xuJGhhbWJ1cmdlci1sYXllci1ib3JkZXItcmFkaXVzIDogNHB4ICFkZWZhdWx0O1xuJGhhbWJ1cmdlci1ob3Zlci1vcGFjaXR5ICAgICAgIDogMC43ICFkZWZhdWx0O1xuJGhhbWJ1cmdlci1hY3RpdmUtbGF5ZXItY29sb3IgIDogJGhhbWJ1cmdlci1sYXllci1jb2xvciAhZGVmYXVsdDtcbiRoYW1idXJnZXItYWN0aXZlLWhvdmVyLW9wYWNpdHk6ICRoYW1idXJnZXItaG92ZXItb3BhY2l0eSAhZGVmYXVsdDtcblxuXG4vLyBUbyB1c2UgQ1NTIGZpbHRlcnMgYXMgdGhlIGhvdmVyIGVmZmVjdCBpbnN0ZWFkIG9mIG9wYWNpdHksXG4vLyBzZXQgJGhhbWJ1cmdlci1ob3Zlci11c2UtZmlsdGVyIGFzIHRydWUgYW5kXG4vLyBjaGFuZ2UgdGhlIHZhbHVlIG9mICRoYW1idXJnZXItaG92ZXItZmlsdGVyIGFjY29yZGluZ2x5LlxuJGhhbWJ1cmdlci1ob3Zlci11c2UtZmlsdGVyICAgOiBmYWxzZSAhZGVmYXVsdDtcbiRoYW1idXJnZXItaG92ZXItZmlsdGVyICAgICAgIDogb3BhY2l0eSg1MCUpICFkZWZhdWx0O1xuJGhhbWJ1cmdlci1hY3RpdmUtaG92ZXItZmlsdGVyOiAkaGFtYnVyZ2VyLWhvdmVyLWZpbHRlciAhZGVmYXVsdDtcblxuLy8gVHlwZXMgKFJlbW92ZSBvciBjb21tZW50IG91dCB3aGF0IHlvdSBkb27igJl0IG5lZWQpXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuJGhhbWJ1cmdlci10eXBlczogKFxuICAzZHgsXG4gIDNkeC1yLFxuICAzZHksXG4gIDNkeS1yLFxuICAzZHh5LFxuICAzZHh5LXIsXG4gIGFycm93LFxuICBhcnJvdy1yLFxuICBhcnJvd2FsdCxcbiAgYXJyb3dhbHQtcixcbiAgYXJyb3d0dXJuLFxuICBhcnJvd3R1cm4tcixcbiAgYm9yaW5nLFxuICBjb2xsYXBzZSxcbiAgY29sbGFwc2UtcixcbiAgZWxhc3RpYyxcbiAgZWxhc3RpYy1yLFxuICBlbXBoYXRpYyxcbiAgZW1waGF0aWMtcixcbiAgbWludXMsXG4gIHNsaWRlcixcbiAgc2xpZGVyLXIsXG4gIHNwaW4sXG4gIHNwaW4tcixcbiAgc3ByaW5nLFxuICBzcHJpbmctcixcbiAgc3RhbmQsXG4gIHN0YW5kLXIsXG4gIHNxdWVlemUsXG4gIHZvcnRleCxcbiAgdm9ydGV4LXJcbikgIWRlZmF1bHQ7XG5cbi8vIEJhc2UgSGFtYnVyZ2VyIChXZSBuZWVkIHRoaXMpXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuQGltcG9ydCBcImJhc2VcIjtcblxuLy8gSGFtYnVyZ2VyIHR5cGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gQGltcG9ydCBcInR5cGVzLzNkeFwiO1xuLy8gQGltcG9ydCBcInR5cGVzLzNkeC1yXCI7XG4vLyBAaW1wb3J0IFwidHlwZXMvM2R5XCI7XG4vLyBAaW1wb3J0IFwidHlwZXMvM2R5LXJcIjtcbkBpbXBvcnQgXCJ0eXBlcy8zZHh5XCI7XG4vLyBAaW1wb3J0IFwidHlwZXMvM2R4eS1yXCI7XG4vLyBAaW1wb3J0IFwidHlwZXMvYXJyb3dcIjtcbi8vIEBpbXBvcnQgXCJ0eXBlcy9hcnJvdy1yXCI7XG4vLyBAaW1wb3J0IFwidHlwZXMvYXJyb3dhbHRcIjtcbi8vIEBpbXBvcnQgXCJ0eXBlcy9hcnJvd2FsdC1yXCI7XG4vLyBAaW1wb3J0IFwidHlwZXMvYXJyb3d0dXJuXCI7XG4vLyBAaW1wb3J0IFwidHlwZXMvYXJyb3d0dXJuLXJcIjtcbi8vIEBpbXBvcnQgXCJ0eXBlcy9ib3JpbmdcIjtcbi8vIEBpbXBvcnQgXCJ0eXBlcy9jb2xsYXBzZVwiO1xuLy8gQGltcG9ydCBcInR5cGVzL2NvbGxhcHNlLXJcIjtcbi8vIEBpbXBvcnQgXCJ0eXBlcy9lbGFzdGljXCI7XG4vLyBAaW1wb3J0IFwidHlwZXMvZWxhc3RpYy1yXCI7XG4vLyBAaW1wb3J0IFwidHlwZXMvZW1waGF0aWNcIjtcbi8vIEBpbXBvcnQgXCJ0eXBlcy9lbXBoYXRpYy1yXCI7XG4vLyBAaW1wb3J0IFwidHlwZXMvbWludXNcIjtcbi8vIEBpbXBvcnQgXCJ0eXBlcy9zbGlkZXJcIjtcbi8vIEBpbXBvcnQgXCJ0eXBlcy9zbGlkZXItclwiO1xuLy8gQGltcG9ydCBcInR5cGVzL3NwaW5cIjtcbi8vIEBpbXBvcnQgXCJ0eXBlcy9zcGluLXJcIjtcbi8vIEBpbXBvcnQgXCJ0eXBlcy9zcHJpbmdcIjtcbi8vIEBpbXBvcnQgXCJ0eXBlcy9zcHJpbmctclwiO1xuLy8gQGltcG9ydCBcInR5cGVzL3N0YW5kXCI7XG4vLyBAaW1wb3J0IFwidHlwZXMvc3RhbmQtclwiO1xuLy8gQGltcG9ydCBcInR5cGVzL3NxdWVlemVcIjtcbi8vIEBpbXBvcnQgXCJ0eXBlcy92b3J0ZXhcIjtcbi8vIEBpbXBvcnQgXCJ0eXBlcy92b3J0ZXgtclwiO1xuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gQ29va2luZyB1cCBhZGRpdGlvbmFsIHR5cGVzOlxuLy9cbi8vIFRoZSBTYXNzIGZvciBlYWNoIGhhbWJ1cmdlciB0eXBlIHNob3VsZCBiZSBuZXN0ZWRcbi8vIGluc2lkZSBhbiBAaWYgZGlyZWN0aXZlIHRvIGNoZWNrIHdoZXRoZXIgb3Igbm90XG4vLyBpdCBleGlzdHMgaW4gJGhhbWJ1cmdlci10eXBlcyBzbyBvbmx5IHRoZSBDU1MgZm9yXG4vLyBpbmNsdWRlZCB0eXBlcyBhcmUgZ2VuZXJhdGVkLlxuLy9cbi8vIGUuZy4gaGFtYnVyZ2Vycy90eXBlcy9fbmV3LXR5cGUuc2Nzc1xuLy9cbi8vIEBpZiBpbmRleCgkaGFtYnVyZ2VyLXR5cGVzLCBuZXctdHlwZSkge1xuLy8gICAuaGFtYnVyZ2VyLS1uZXctdHlwZSB7XG4vLyAgICAgLi4uXG4vLyAgIH1cbi8vIH1cbiIsIi8vIEhhbWJ1cmdlclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi5oYW1idXJnZXIge1xuICBwYWRkaW5nOiAkaGFtYnVyZ2VyLXBhZGRpbmcteSAkaGFtYnVyZ2VyLXBhZGRpbmcteDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eSwgZmlsdGVyO1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjE1cztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcblxuICAvLyBOb3JtYWxpemUgKDxidXR0b24+KVxuICBmb250OiBpbmhlcml0O1xuICBjb2xvcjogaW5oZXJpdDtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDA7XG4gIG1hcmdpbjogMDtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG5cbiAgLy8gJjpob3ZlciB7XG4gIC8vICAgQGlmICRoYW1idXJnZXItaG92ZXItdXNlLWZpbHRlciA9PSB0cnVlIHtcbiAgLy8gICAgIGZpbHRlcjogJGhhbWJ1cmdlci1ob3Zlci1maWx0ZXI7XG4gIC8vICAgfVxuICAvLyAgIEBlbHNlIHtcbiAgLy8gICAgIG9wYWNpdHk6ICRoYW1idXJnZXItaG92ZXItb3BhY2l0eTtcbiAgLy8gICB9XG4gIC8vIH1cblxuICAmLmlzLWFjdGl2ZSB7XG4gICAgLy8gJjpob3ZlciB7XG4gICAgLy8gICBAaWYgJGhhbWJ1cmdlci1ob3Zlci11c2UtZmlsdGVyID09IHRydWUge1xuICAgIC8vICAgICBmaWx0ZXI6ICRoYW1idXJnZXItYWN0aXZlLWhvdmVyLWZpbHRlcjtcbiAgICAvLyAgIH1cbiAgICAvLyAgIEBlbHNlIHtcbiAgICAvLyAgICAgb3BhY2l0eTogJGhhbWJ1cmdlci1hY3RpdmUtaG92ZXItb3BhY2l0eTtcbiAgICAvLyAgIH1cbiAgICAvLyB9XG5cbiAgICAuaGFtYnVyZ2VyLWlubmVyLFxuICAgIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSxcbiAgICAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaGFtYnVyZ2VyLWFjdGl2ZS1sYXllci1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLmhhbWJ1cmdlci1ib3gge1xuICB3aWR0aDogJGhhbWJ1cmdlci1sYXllci13aWR0aDtcbiAgaGVpZ2h0OiAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCAqIDMgKyAkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcgKiAyO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmhhbWJ1cmdlci1pbm5lciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB0b3A6IDUwJTtcbiAgbWFyZ2luLXRvcDogJGhhbWJ1cmdlci1sYXllci1oZWlnaHQgLyAtMjtcblxuICAmLFxuICAmOjpiZWZvcmUsXG4gICY6OmFmdGVyIHtcbiAgICB3aWR0aDogJGhhbWJ1cmdlci1sYXllci13aWR0aDtcbiAgICBoZWlnaHQ6ICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRoYW1idXJnZXItbGF5ZXItY29sb3I7XG4gICAgYm9yZGVyLXJhZGl1czogJGhhbWJ1cmdlci1sYXllci1ib3JkZXItcmFkaXVzO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4xNXM7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2U7XG4gIH1cblxuICAmOjpiZWZvcmUsXG4gICY6OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgJjo6YmVmb3JlIHtcbiAgICB0b3A6ICgkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcgKyAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCkgKiAtMTtcbiAgfVxuXG4gICY6OmFmdGVyIHtcbiAgICBib3R0b206ICgkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcgKyAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCkgKiAtMTtcbiAgfVxufVxuIiwiQGlmIGluZGV4KCRoYW1idXJnZXItdHlwZXMsIDNkeHkpIHtcbiAgLypcbiAgICogM0RYWVxuICAgKi9cbiAgLmhhbWJ1cmdlci0tM2R4eSB7XG4gICAgLmhhbWJ1cmdlci1ib3gge1xuICAgICAgcGVyc3BlY3RpdmU6ICRoYW1idXJnZXItbGF5ZXItd2lkdGggKiAyO1xuICAgIH1cblxuICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTVzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKSxcbiAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3IgMHMgMC4xcyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSk7XG5cbiAgICAgICY6OmJlZm9yZSxcbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDBzIDAuMXMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZVgoMTgwZGVnKSByb3RhdGVZKDE4MGRlZyk7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0ICsgJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nLCAwKSByb3RhdGUoNDVkZWcpO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgKCRoYW1idXJnZXItbGF5ZXItaGVpZ2h0ICsgJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nKSAqIC0xLCAwKSByb3RhdGUoLTQ1ZGVnKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLnRvcC1jb2wge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgIHBhZGRpbmc6IHZhcigtLXNpdGUtcGFkZGluZykgdmFyKC0tc2l0ZS1wYWRkaW5nKSAwO1xyXG4gICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgcmlnaHQ6IDA7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgei1pbmRleDogNDtcclxuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG5cclxuICAgIEBpbmNsdWRlIGZvci1tb2JpbGUge1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICNmMmU5ZGE7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDFyZW07XHJcblxyXG4gICAgICAgIC5ob21lICYge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLm1lbnUtYWN0aXZlICYge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAudG9wLWxlZnQge1xyXG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xyXG5cclxuICAgICAgICBzdmcge1xyXG4gICAgICAgICAgICB3aWR0aDogMzlweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG5cclxuICAgICAgICAgICAgQGluY2x1ZGUgZm9yLXRhYmxldC1wb3J0cmFpdCB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMzFweDtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAudG9wLXJpZ2h0IHtcclxuICAgICAgICBwb2ludGVyLWV2ZW50czogYXV0bztcclxuICAgICAgICBcclxuICAgICAgICBzdmcge1xyXG4gICAgICAgICAgICB3aWR0aDogNDVweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICAgICAgICBcclxuICAgICAgICAgICAgQGluY2x1ZGUgZm9yLXRhYmxldC1wb3J0cmFpdCB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMzZweDtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLmJvdHRvbS1jb2wge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgIHBhZGRpbmc6IDAgdmFyKC0tc2l0ZS1wYWRkaW5nKSB2YXIoLS1zaXRlLXBhZGRpbmcpO1xyXG4gICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgcmlnaHQ6IDA7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgei1pbmRleDogNDtcclxuICAgIC8vdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAuMXMgZWFzZS1pbi1vdXQ7XHJcblxyXG4gICAgQGluY2x1ZGUgZm9yLXRhYmxldC1wb3J0cmFpdCB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQtY29sb3I7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IDFyZW07XHJcblxyXG4gICAgICAgIC5ob21lICYge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5tZW51LWFjdGl2ZSAmIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGZvb3Rlci1jb2xvcjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmJvdHRvbS1sZWZ0IHtcclxuICAgICAgICBzdmcge1xyXG4gICAgICAgICAgICB3aWR0aDogMTM2cHg7XHJcbiAgICAgICAgICAgIGhlaWdodDogYXV0bzsgXHJcblxyXG4gICAgICAgICAgICBAaW5jbHVkZSBmb3ItdGFibGV0LXBvcnRyYWl0IHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDdweDtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuYm90dG9tLXJpZ2h0IHtcclxuICAgICAgICBzdmcge1xyXG4gICAgICAgICAgICB3aWR0aDogNDhweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG5cclxuICAgICAgICAgICAgQGluY2x1ZGUgZm9yLXRhYmxldC1wb3J0cmFpdCB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMzhweDtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogNDVweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvLyAmLnNob3cge1xyXG4gICAgLy8gICAgIC8vIHotaW5kZXg6IDM7XHJcbiAgICAvLyAgICAgLy8gYmFja2dyb3VuZC1jb2xvcjogIzNBMkUyOTtcclxuICAgIC8vIH1cclxuXHJcbiAgICAvLyAmLm1vYmlsZS12aWV3IHtcclxuICAgIC8vICAgICAvLyB6LWluZGV4OiAzO1xyXG4gICAgLy8gICAgIC8vIGJhY2tncm91bmQtY29sb3I6ICMzQTJFMjk7XHJcbiAgICAvLyB9XHJcbiAgICBcclxufVxyXG5cclxuXHJcblxyXG4ubWFpbi1uYXZpZ2F0aW9uIHtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICAgIC8vIHRyYW5zaXRpb246IG9wYWNpdHkgLjJzIGVhc2UtaW4tb3V0O1xyXG4gICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgaW5zZXQ6IDA7XHJcbiAgICBiYWNrZ3JvdW5kOiAkZm9vdGVyLWNvbG9yO1xyXG4gICAgei1pbmRleDogMztcclxuICAgIHBhZGRpbmc6IDAgdmFyKC0tc2l0ZS1wYWRkaW5nKTtcclxuXHJcbiAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICBwb2ludGVyLWV2ZW50czogYXV0bztcclxuICAgIH1cclxuXHJcbiAgICAubWVudS1tZW51LTEtY29udGFpbmVyIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAxMS42N3JlbTtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGZvci10YWJsZXQtcG9ydHJhaXQge1xyXG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5tZW51IHtcclxuICAgICAgICAvLyByZXNwb25zaXZlIGJ5IHNjcmVlbiBoZWlnaHQsIG1heCA5MHB4XHJcbiAgICAgICAgZm9udC1zaXplOiBjbGFtcCgzMnB4LCA5dmgsIDkwcHgpO1xyXG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wMjhlbTtcclxuICAgICAgICBsaW5lLWhlaWdodDogMS4yZW07XHJcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgZm9yLXRhYmxldC1wb3J0cmFpdCB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMi41cmVtO1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGxpIHtcclxuICAgICAgICAgICAgY29sb3I6ICRiYWNrZ3JvdW5kLWNvbG9yO1xyXG4gICAgICAgICAgICBjb3VudGVyLWluY3JlbWVudDogbWVudS1jb3VudGVyO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblxyXG4gICAgICAgICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICBjb250ZW50OiBjb3VudGVyKG1lbnUtY291bnRlciwgZGVjaW1hbC1sZWFkaW5nLXplcm8pO1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxZW07IC8vIGZvbGxvd3MgcmVzcG9uc2l2ZSBtZW51IGZvbnQtc2l6ZVxyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDIuMTVlbTtcclxuICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XHJcblxyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgZm9yLXRhYmxldC1wb3J0cmFpdCB7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5tZW51LWJ0biB7XHJcbiAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICB0b3A6IDA7XHJcbiAgICB6LWluZGV4OiA0O1xyXG4gICAgY29sb3I6ICRiYWNrZ3JvdW5kLWNvbG9yO1xyXG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtMTgpO1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgIHBhZGRpbmctbGVmdDogdmFyKC0tc2l0ZS1wYWRkaW5nKTtcclxuICAgIG1hcmdpbi10b3A6IDE1LjZyZW07XHJcbiAgICBsZXR0ZXItc3BhY2luZzogLjA0OGVtO1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgb3BhY2l0eTogMTtcclxuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XHJcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4ycyBlYXNlLWluLW91dCwgdmlzaWJpbGl0eSAuMnMgZWFzZS1pbi1vdXQ7XHJcblxyXG4gICAgQGluY2x1ZGUgZm9yLXRhYmxldC1wb3J0cmFpdCB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogOXJlbTtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBmb3ItbW9iaWxlIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiA4cmVtO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcclxuICAgIH1cclxuXHJcbiAgICAmLmlzLWhpZGRlbi1zY3JvbGw6bm90KC5hY3RpdmUpIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcclxuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICAgIH1cclxuXHJcbiAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgICAgICBjb250ZW50OiBcInhcIjtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDAuMzVlbTtcclxuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuYm9keTpub3QoLmhvbWUpIHtcclxuXHJcbiAgICAubWVudS1idG4ge1xyXG4gICAgICAgIGNvbG9yOiAkZm9vdGVyLWNvbG9yO1xyXG5cclxuICAgICAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkYmFja2dyb3VuZC1jb2xvcjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLnRvcC1jb2wge1xyXG4gICAgICAgIC50b3AtbGVmdCxcclxuICAgICAgICAudG9wLXJpZ2h0IHtcclxuICAgICAgICAgICAgc3ZnLFxyXG4gICAgICAgICAgICBzdmcgKiB7XHJcbiAgICAgICAgICAgICAgICBmaWxsOiAkZm9vdGVyLWNvbG9yICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICAvL3N0cm9rZTogJGZvb3Rlci1jb2xvciAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5ib3R0b20tY29sIHtcclxuICAgICAgICAuYm90dG9tLWxlZnQsXHJcbiAgICAgICAgLmJvdHRvbS1yaWdodCB7XHJcbiAgICAgICAgICAgIHN2ZyxcclxuICAgICAgICAgICAgc3ZnICoge1xyXG4gICAgICAgICAgICAgICAgZmlsbDogJGZvb3Rlci1jb2xvciAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgLy9zdHJva2U6ICRmb290ZXItY29sb3IgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuIiwiLnNpdGUtZm9vdGVyIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICBoZWlnaHQ6IHZhcigtLWZvb3Rlci1oZWlnaHQpO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgYmFja2dyb3VuZDogIzNBMkUyOTtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSh2YXIoLS1mb290ZXItb2Zmc2V0LCAxMDAlKSk7XHJcbiAgICBwYWRkaW5nOiB2YXIoLS1zaXRlLXBhZGRpbmcpIHZhcigtLXNpdGUtcGFkZGluZykgMDtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICB6LWluZGV4OiA0O1xyXG5cclxuICAgIEBpbmNsdWRlIGZvci1tb2JpbGUge1xyXG4gICAgICAgIGZsZXgtZmxvdzogY29sdW1uO1xyXG4gICAgfVxyXG5cclxuICAgIC5sZWZ0LWNvbCB7XHJcbiAgICAgICAgd2lkdGg6IDUwJTtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGZsZXgtZmxvdzogY29sdW1uO1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tc2l0ZS1wYWRkaW5nKTtcclxuICAgICAgICBcclxuICAgICAgICBAaW5jbHVkZSBmb3ItdGFibGV0LXBvcnRyYWl0IHtcclxuICAgICAgICAgICAgd2lkdGg6IDMwJTtcclxuICAgICAgICAgICAgXHJcbiAgICAgICAgICAgIHN2ZyB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogODhweDtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGluY2x1ZGUgZm9yLW1vYmlsZSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEuM3JlbTtcclxuXHJcbiAgICAgICAgICAgIHN2ZyB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogODhweDtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLnRhb3VzYW5pcy1sb2dvIHtcclxuICAgICAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAgICAgLy8gcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcblxyXG4gICAgICAgICAgICBAaW5jbHVkZSBmb3ItdGFibGV0LXBvcnRyYWl0IHtcclxuICAgICAgICAgICAgICAgIHN2ZyB7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwN3B4O1xyXG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgQGluY2x1ZGUgZm9yLW1vYmlsZSB7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICBib3R0b206IHZhcigtLXNpdGUtcGFkZGluZyk7XHJcbiAgICAgICAgICAgICAgICBsZWZ0OiB2YXIoLS1zaXRlLXBhZGRpbmcpO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAmLnNob3cge1xyXG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgYSB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLnJpZ2h0LWNvbCB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICB3aWR0aDogNTAlO1xyXG4gICAgICAgIGNvbG9yOiAkYmFja2dyb3VuZC1jb2xvcjtcclxuICAgICAgICBmb250LXNpemU6IDEuMTI1cmVtO1xyXG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAuMDQ4ZW07XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNXJlbTtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGZvci10YWJsZXQtcG9ydHJhaXQge1xyXG4gICAgICAgICAgICB3aWR0aDogNzAlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGluY2x1ZGUgZm9yLW1vYmlsZSB7XHJcbiAgICAgICAgICAgIGZsZXgtZmxvdzogY29sdW1uO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDFyZW07IFxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmZpcnN0LWNvbCB7XHJcbiAgICAgICAgICAgIGZsZXgtZmxvdzogY29sdW1uO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDI0MXB4O1xyXG4gICAgICAgICAgICBjb2xvcjogJGJhY2tncm91bmQtY29sb3I7XHJcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IHZhcigtLXNpdGUtcGFkZGluZyk7XHJcblxyXG4gICAgICAgICAgICBAaW5jbHVkZSBmb3ItdGFibGV0LXBvcnRyYWl0IHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMXJlbTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgQGluY2x1ZGUgZm9yLW1vYmlsZSB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjJyZW07XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5maXJzdC1jb2wtdG9wIHtcclxuICAgICAgICAgICAgICAgIC5tZW51IHtcclxuICAgICAgICAgICAgICAgICAgICBsaSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYmFja2dyb3VuZC1jb2xvcjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtMzApO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS4yZW07XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAuMDQ4ZW07XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBmb3ItdGFibGV0LXBvcnRyYWl0IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZvci1tb2JpbGUge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjU2MjVyZW07XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5maXJzdC1jb2wtYm90dG9tIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAkYmFja2dyb3VuZC1jb2xvcjtcclxuXHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBmb3ItbW9iaWxlIHtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0xNCk7XHJcbiAgICAgICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogLjA0OGVtO1xyXG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjJlbTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZm9yLXRhYmxldC1wb3J0cmFpdCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogLjc1cmVtO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLnNlY29uZC1jb2wge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBmbGV4LWZsb3c6IGNvbHVtbjtcclxuICAgICAgICAgICAgY29sb3I6ICRiYWNrZ3JvdW5kLWNvbG9yO1xyXG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1zaXRlLXBhZGRpbmcpO1xyXG5cclxuICAgICAgICAgICAgQGluY2x1ZGUgZm9yLW1vYmlsZSB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwcmVtO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAuc2Vjb25kLWNvbC10b3Age1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICRiYWNrZ3JvdW5kLWNvbG9yO1xyXG5cclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZvci1tb2JpbGUge1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5zZWNvbmQtY29sLWJvdHRvbSB7XHJcbiAgICAgICAgICAgICAgICBwIHtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJhY2tncm91bmQtY29sb3I7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtMTQpO1xyXG4gICAgICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC4wNDhlbTtcclxuICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS4yZW07XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZvci10YWJsZXQtcG9ydHJhaXQge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IC43NXJlbTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogLjRyZW07XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAudGhpcmQtY29sIHtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgZmxleC1mbG93OiBjb2x1bW47XHJcbiAgICAgICAgICAgIGNvbG9yOiAkYmFja2dyb3VuZC1jb2xvcjtcclxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tc2l0ZS1wYWRkaW5nKTtcclxuXHJcbiAgICAgICAgICAgIHAge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICRiYWNrZ3JvdW5kLWNvbG9yO1xyXG5cclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZvci10YWJsZXQtcG9ydHJhaXQge1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogLjc1cmVtO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAudGFvdXNhbmlzLWMge1xyXG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAgICAgICAgIC8vIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XHJcblxyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgZm9yLXRhYmxldC1wb3J0cmFpdCB7XHJcbiAgICAgICAgICAgICAgICAgICAgc3ZnIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDM4cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgZm9yLW1vYmlsZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiB2YXIoLS1zaXRlLXBhZGRpbmcpO1xyXG4gICAgICAgICAgICAgICAgICAgIGJvdHRvbTogdmFyKC0tc2l0ZS1wYWRkaW5nKTtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAmLnNob3cge1xyXG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn0iLCIuaG9tZXBhZ2UtbWFpbiB7XHJcblxyXG4gICAgLnF1b3RlLWNudCB7XHJcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgIGxlZnQ6IDUwJTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcblxyXG4gICAgICAgIHAge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0xOCk7XHJcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAxZW07XHJcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkYmFja2dyb3VuZC1jb2xvcjtcclxuICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcblxyXG4gICAgICAgICAgICBAaW5jbHVkZSBmb3ItbW9iaWxlIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmltZy1jbnQge1xyXG4gICAgICAgIGhlaWdodDogdmFyKC0tdmgxMDApO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMzQTJFMjk7XHJcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICByaWdodDogMDtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICB6LWluZGV4OiAtMTtcclxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgIGZpbHRlcjogYnJpZ2h0bmVzcygwLjgpO1xyXG5cclxuICAgICAgICBAaW5jbHVkZSBmb3ItbW9iaWxlIHtcclxuICAgICAgICAgICAgaGVpZ2h0OiB2YXIoLS12aDEwMC1vbmNlKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHZpZGVvLFxyXG4gICAgICAgIGltZyxcclxuICAgICAgICAud2lzdGlhLXZpZGVvLFxyXG4gICAgICAgIC53aXN0aWEtdmlkZW8gaWZyYW1lIHtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICB2aWRlbyxcclxuICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHZpZGVvLFxyXG4gICAgICAgIC53aXN0aWEtdmlkZW8sXHJcbiAgICAgICAgLndpc3RpYS12aWRlbyBpZnJhbWUge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIGluc2V0OiAwO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLndpc3RpYS12aWRlbyB7XHJcbiAgICAgICAgICAgIHotaW5kZXg6IDA7XHJcbiAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLndpc3RpYS12aWRlbyBpZnJhbWUge1xyXG4gICAgICAgICAgICBib3JkZXI6IDA7XHJcbiAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG4gICAgICAgICAgICB0b3A6IDUwJTtcclxuICAgICAgICAgICAgbGVmdDogNTAlO1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwdnc7XHJcbiAgICAgICAgICAgIGhlaWdodDogNTYuMjV2dztcclxuICAgICAgICAgICAgbWluLXdpZHRoOiAxNzcuNzh2aDtcclxuICAgICAgICAgICAgbWluLWhlaWdodDogMTAwdmg7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHNjYWxlKDEuMTQpO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgY2VudGVyO1xyXG4gICAgICAgICAgICB3aWxsLWNoYW5nZTogdHJhbnNmb3JtO1xyXG5cclxuICAgICAgICAgICAgQGluY2x1ZGUgZm9yLW1vYmlsZSB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTc3Ljc4dmg7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMHZoO1xyXG4gICAgICAgICAgICAgICAgbWluLXdpZHRoOiAxMDB2dztcclxuICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDEwMHZoO1xyXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgc2NhbGUoMS4zOCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgaW5zZXQ6IDA7XHJcbiAgICAgICAgICAgIHotaW5kZXg6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5cclxuIiwiLnRlYW0tbWFpbiB7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogNXJlbTtcclxuXHJcbiAgICAucGFyZW50LXRheG9ub215LWNvbnRlbnQge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMTByZW07XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDEzcmVtO1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogN3JlbTtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzdweDtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgZm9yLXRhYmxldC1wb3J0cmFpdCB7XHJcbiAgICAgICAgICAgIGZsZXgtZmxvdzogY29sdW1uO1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxM3JlbTtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHZhcigtLXNpdGUtcGFkZGluZyk7XHJcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogdmFyKC0tc2l0ZS1wYWRkaW5nKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGZvci1tb2JpbGUge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA4cmVtO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAubGVmdC1jb2wge1xyXG4gICAgICAgIHdpZHRoOiAzMyU7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgICAgICBAaW5jbHVkZSBmb3ItdGFibGV0LXBvcnRyYWl0IHtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuc3RpY2t5LXdyYXBwZXIge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogc3RpY2t5O1xyXG4gICAgICAgICAgICB0b3A6IDEzLjgxMjVyZW07XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgLjJzIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmN1cnJlbnQtdGF4b25vbXktdGl0bGUge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS03MCk7XHJcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wMTFlbTtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMmVtO1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAzLjhyZW07XHJcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDVyZW07XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XHJcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgICAgICAgIC8vIHRyYW5zaXRpb246IG9wYWNpdHkgLjJzIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xyXG5cclxuICAgICAgICAgICAgLy8gQGluY2x1ZGUgZm9yLWJpZy1kZXNrdG9wIHtcclxuICAgICAgICAgICAgLy8gICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLTcwKTtcclxuICAgICAgICAgICAgLy8gfVxyXG5cclxuICAgICAgICAgICAgLy8gQGluY2x1ZGUgZm9yLW1lZGl1bS1sYXB0b3Age1xyXG4gICAgICAgICAgICAvLyAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtNDUpO1xyXG4gICAgICAgICAgICAvLyAgICAgcGFkZGluZy10b3A6IDEuNHJlbTtcclxuICAgICAgICAgICAgLy8gfVxyXG5cclxuICAgICAgICAgICAgQGluY2x1ZGUgZm9yLW1vYmlsZSB7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS00MCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgfVxyXG5cclxuICAgIC5yaWdodC1jb2wge1xyXG4gICAgICAgIHdpZHRoOiA2NyU7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAzMDBweDtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgZm9yLXRhYmxldC1wb3J0cmFpdCB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTAwcHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAudGVhbS1ieS1jbnQge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBnYXA6IDFyZW07XHJcblxyXG4gICAgICAgICAgICBAaW5jbHVkZSBmb3ItbW9iaWxlIHtcclxuICAgICAgICAgICAgICAgIGZsZXgtZmxvdzogY29sdW1uO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAucGVyc29uLWNudCB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogY2FsYygzMy4zJSAtIDAuNjg3NXJlbSk7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgZm9yLW1vYmlsZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgLmluZm8ge1xyXG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRiYWNrZ3JvdW5kLWNvbG9yO1xyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDFyZW07XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyNXB4O1xyXG4gICAgICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC4wNDVlbTtcclxuICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS4yZW07XHJcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZm9yLXRhYmxldC1wb3J0cmFpdCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICAubmFtZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYmFja2dyb3VuZC1jb2xvcjtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIC5wb3NpdGlvbiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYmFja2dyb3VuZC1jb2xvcjtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgQG1lZGlhKGhvdmVyOmhvdmVyKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC5pbmZvIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9IFxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgIH1cclxufSIsIi5jb250YWN0LW1haW4ge1xyXG4gICAgcGFkZGluZy1ib3R0b206IDVyZW07XHJcblxyXG4gICAgLnBhcmVudC10YXhvbm9teS1jb250ZW50IHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDEwcmVtO1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogN3JlbTtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzdweDtcclxuICAgICAgICBtYXJnaW4tbGVmdDogMTJyZW07XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cclxuICAgICAgICBAaW5jbHVkZSBmb3ItdGFibGV0LXBvcnRyYWl0IHtcclxuICAgICAgICAgICAgZmxleC1mbG93OiBjb2x1bW47XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDEzcmVtO1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogdmFyKC0tc2l0ZS1wYWRkaW5nKTtcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zaXRlLXBhZGRpbmcpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGluY2x1ZGUgZm9yLW1vYmlsZSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDlyZW07XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5sZWZ0LWNvbCB7XHJcbiAgICAgICAgLy8gd2lkdGg6IDQwJTtcclxuICAgICAgICBtYXgtd2lkdGg6IDQ1MHB4O1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAzcmVtO1xyXG5cclxuICAgICAgICAuc3RpY2t5LXdyYXBwZXIge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogc3RpY2t5O1xyXG4gICAgICAgICAgICB0b3A6IDE0LjRyZW07XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgLjJzIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmN1cnJlbnQtdGF4b25vbXktdGl0bGUge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS03MCk7XHJcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wMTFlbTtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDAuOTVlbTtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogNC40cmVtO1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xyXG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4ycyBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiA0NzVweDtcclxuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMnJlbTtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuXHJcbiAgICAgICAgICAgIC8vIEBpbmNsdWRlIGZvci1iaWctZGVza3RvcCB7XHJcbiAgICAgICAgICAgIC8vICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS03MCk7XHJcbiAgICAgICAgICAgIC8vIH1cclxuXHJcbiAgICAgICAgICAgIC8vIEBpbmNsdWRlIGZvci1tZWRpdW0tbGFwdG9wIHtcclxuICAgICAgICAgICAgLy8gICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLTQ1KTtcclxuICAgICAgICAgICAgLy8gICAgIHBhZGRpbmctdG9wOiAxLjNyZW07XHJcbiAgICAgICAgICAgIC8vICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xyXG4gICAgICAgICAgICAvLyB9XHJcblxyXG4gICAgICAgICAgICBAaW5jbHVkZSBmb3ItbW9iaWxlIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLTQwKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmNvbnRlbnQge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0xOCk7XHJcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAuMDQ4ZW07XHJcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjVlbTtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiA0ODBweDtcclxuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMnJlbTtcclxuXHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGZvci1tb2JpbGUge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICB9XHJcblxyXG4gICAgLnJpZ2h0LWNvbCB7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgICAgIHdpZHRoOiA2NyU7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAzMDBweDtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGZsZXgtZmxvdzogd3JhcDtcclxuICAgICAgICBtYXJnaW4tdG9wOiA0LjVyZW07XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGZvci10YWJsZXQtcG9ydHJhaXQge1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDEwMHB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmFkZHJlc3MtaW5mbyB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAzMyU7XHJcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDJyZW07XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDNyZW07XHJcblxyXG4gICAgICAgICAgICBoMiB7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS00MCk7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xyXG4gICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAxMWVtO1xyXG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMmVtO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMnJlbTtcclxuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcblxyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgZm9yLW1vYmlsZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjU2MjVyZW07XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgcCwgYSB7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuMTI1cmVtO1xyXG4gICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC4wNDhlbTtcclxuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjJlbTtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBmb3ItbW9iaWxlIHtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDFyZW07XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5jb250YWN0LWZvcm0tY250IHtcclxuICAgICAgICAgICAgd2lkdGg6IDY3JTtcclxuICAgICAgICAgICAgbWluLXdpZHRoOiA2NDhweDtcclxuXHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGZvci1tb2JpbGUge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICBtaW4td2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5uZi1mb3JtLWNvbnQge1xyXG4gICAgICAgICAgICAgICAgLm5mLWZvcm0tZmllbGRzLXJlcXVpcmVkIHtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAubmYtZm9ybS10aXRsZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwIDAgMy41cmVtO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICBoMSxcclxuICAgICAgICAgICAgICAgICAgICBoMixcclxuICAgICAgICAgICAgICAgICAgICBoMyB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtNDApO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMC4wNDhlbTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMmVtO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZm9yLW1vYmlsZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuNTYyNXJlbTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAubmYtZm9ybS1jb250ZW50IHtcclxuICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICAgICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCBtaW5tYXgoMCwgMWZyKSk7XHJcbiAgICAgICAgICAgICAgICAgICAgZ3JpZC1jb2x1bW4tZ2FwOiAxLjVyZW07XHJcbiAgICAgICAgICAgICAgICAgICAgZ3JpZC1yb3ctZ2FwOiAycmVtO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAubmYtZmllbGQtY29udGFpbmVyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgJi50ZXh0YXJlYS1jb250YWluZXIsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICYuc3VibWl0LWNvbnRhaW5lcixcclxuICAgICAgICAgICAgICAgICAgICAgICAgJi5odG1sLWNvbnRhaW5lciB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBncmlkLWNvbHVtbjogMSAvIC0xO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICAubmYtZmllbGQtbGFiZWwsXHJcbiAgICAgICAgICAgICAgICAgICAgLmZpZWxkLXdyYXAgbGFiZWwsXHJcbiAgICAgICAgICAgICAgICAgICAgLmxpc3QtbGFiZWwsXHJcbiAgICAgICAgICAgICAgICAgICAgLm5pbmphLWZvcm1zLXJlcS1zeW1ib2wsXHJcbiAgICAgICAgICAgICAgICAgICAgLm5mLWVycm9yLXJlcXVpcmVkLWVycm9yLFxyXG4gICAgICAgICAgICAgICAgICAgIC5uZi1lcnJvci1tc2cge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgaW5wdXQ6bm90KFt0eXBlPSdidXR0b24nXSk6bm90KFt0eXBlPSdzdWJtaXQnXSksXHJcbiAgICAgICAgICAgICAgICAgICAgc2VsZWN0LFxyXG4gICAgICAgICAgICAgICAgICAgIHRleHRhcmVhIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMCAwLjVyZW07XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXI6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDQ0LCAzNiwgMzQsIDAuNDUpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0xOCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjA0OGVtO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS4yZW07XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjMmMyNDIyO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBhcHBlYXJhbmNlOiBub25lO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvdXRsaW5lOiBub25lO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogIzJjMjQyMjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgdGV4dGFyZWEge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OiAxMjFweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcmVzaXplOiB2ZXJ0aWNhbDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIGlucHV0OjpwbGFjZWhvbGRlcixcclxuICAgICAgICAgICAgICAgICAgICB0ZXh0YXJlYTo6cGxhY2Vob2xkZXIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogIzJjMjQyMjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIC5zdWJtaXQtd3JhcCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC5uZi1maWVsZC1lbGVtZW50IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICBpbnB1dFt0eXBlPSdidXR0b24nXSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgaW5wdXRbdHlwZT0nc3VibWl0J10sXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJ1dHRvbiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoNDQsIDM2LCAzNCwgMC40NSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICMyYzI0MjI7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0xOCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMC4wNDhlbTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDFyZW07XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIC4ycyBlYXNlLCBjb2xvciAuMnMgZWFzZSwgYm9yZGVyLWNvbG9yIC4ycyBlYXNlO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6aG92ZXIsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmZvY3VzIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjMmMyNDIyO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjZjVmMGU2O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogIzJjMjQyMjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvdXRsaW5lOiBub25lO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmNvbnRhY3QtbWFwLWNudCB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA0cmVtO1xyXG5cclxuICAgICAgICAgICAgLm1hcC1kZXNrdG9wLFxyXG4gICAgICAgICAgICAubWFwLW1vYmlsZSB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLm1hcC1tb2JpbGUge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgc3ZnLFxyXG4gICAgICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgQGluY2x1ZGUgZm9yLW1vYmlsZSB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAyLjVyZW07XHJcblxyXG4gICAgICAgICAgICAgICAgLm1hcC1kZXNrdG9wIHtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIC5tYXAtbW9iaWxlIHtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufSIsIiIsIiIsIlxyXG4uY2F0ZWdvcnktbWFpbiB7XHJcbiAgICAucGFyZW50LXRheG9ub215LWNvbnRlbnQge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMTByZW07XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDEzcmVtO1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogN3JlbTtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgaGVpZ2h0OiBjYWxjKHZhcigtLXZoMTAwKSAtIDEyLjRyZW0pO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDM3cHg7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGZvci10YWJsZXQtcG9ydHJhaXQge1xyXG4gICAgICAgICAgICBmbGV4LWZsb3c6IGNvbHVtbjtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMTNyZW07XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1zaXRlLXBhZGRpbmcpO1xyXG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXNpdGUtcGFkZGluZyk7XHJcbiAgICAgICAgICAgIGhlaWdodDogY2FsYyh2YXIoLS12aDEwMCkgLSAyMXJlbSk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAaW5jbHVkZSBmb3ItbW9iaWxlIHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMTByZW07XHJcbiAgICAgICAgICAgIGhlaWdodDogY2FsYyh2YXIoLS12aDEwMCkgLSAxNXJlbSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5sZWZ0LWNvbCB7XHJcbiAgICAgICAgd2lkdGg6IDMzJTtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgYm90dG9tOiAwO1xyXG5cclxuICAgICAgICBAaW5jbHVkZSBmb3ItdGFibGV0LXBvcnRyYWl0IHtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5zdGlja3ktd3JhcHBlciB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBzdGlja3k7XHJcbiAgICAgICAgICAgIHRvcDogMTEuMzEyNXJlbTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5jdXJyZW50LXRheG9ub215LXRpdGxlIHtcclxuICAgICAgICAgICAgcGFkZGluZy10b3A6IDQuM3JlbTtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMS41NHJlbTtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDAuOTVlbTtcclxuICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtMTgpO1xyXG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogLjA0OGVtO1xyXG5cclxuICAgICAgICAgICAgQGluY2x1ZGUgZm9yLXRhYmxldC1wb3J0cmFpdCB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAudGl0bGVzLXdyYXBwZXIge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0zMCk7XHJcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAuMDYxZW07XHJcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuXHJcbiAgICAgICAgICAgIGxpIHtcclxuICAgICAgICAgICAgICAgICYuYWN0aXZlIHtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS03MCk7XHJcbiAgICAgICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAxMWVtO1xyXG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjJlbTtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAvLyBAaW5jbHVkZSBmb3ItYmlnLWRlc2t0b3Age1xyXG4gICAgICAgICAgICAgICAgICAgIC8vICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS03MCk7XHJcbiAgICAgICAgICAgICAgICAgICAgLy8gfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICAvLyBAaW5jbHVkZSBmb3ItbWVkaXVtLWxhcHRvcCB7XHJcbiAgICAgICAgICAgICAgICAgICAgLy8gICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLTQ1KTtcclxuICAgICAgICAgICAgICAgICAgICAvLyB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLnJpZ2h0LWNvbCB7XHJcbiAgICAgICAgd2lkdGg6IDY3JTtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgYm90dG9tOiAwO1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICByaWdodDogMDtcclxuICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGZvci10YWJsZXQtcG9ydHJhaXQge1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmltYWdlcy13cmFwcGVyIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcblxyXG4gICAgICAgICAgICAuaW1nLWNudCB7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICAvLyB0cmFuc2l0aW9uOiBvcGFjaXR5IC4ycyBlYXNlLWluLW91dDtcclxuXHJcbiAgICAgICAgICAgICAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAgICAgICAgICAgICBwb2ludGVyLWV2ZW50czogYXV0bztcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLmlzLXN1YmNhdGVnb3J5IHtcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogN3JlbTtcclxuXHJcbiAgICAgICAgLmxlZnQtY29sIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLnJpZ2h0LWNvbCB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAgICAgICAgIC5jaGFuZ2UtZ3JpZCB7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICB0b3A6IC0xMDFweDtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgICAgICBnYXA6IDFyZW07XHJcblxyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgZm9yLXRhYmxldC1wb3J0cmFpdCB7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBmb3ItbW9iaWxlIHtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgICAgICAgICAgICAgICAgICB0b3A6IDMzcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogNTAlO1xyXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDAlKTtcclxuICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiA0O1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAubWVudS1hY3RpdmUgJiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICAudGhyZWUtY29sIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgLm9uZS1jb2wge1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGZvb3Rlci1jb2xvcjtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMjVweDtcclxuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDI1cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBmb3ItbW9iaWxlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIC50d28tY29sLCAudGhyZWUtY29sIHtcclxuICAgICAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIHN2ZyB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLnN0aWNreS13cmFwcGVyIHtcclxuICAgICAgICAgICAgdG9wOiAxMy44NzVyZW07XHJcbiAgICAgICAgfVxyXG4gICAgICAgIFxyXG4gICAgICAgIC5wYXJlbnQtdGF4b25vbXktY29udGVudCB7XHJcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5jdXJyZW50LXRheG9ub215LXRpdGxlIHtcclxuICAgICAgICAgICAgLy8gZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtNzApO1xyXG4gICAgICAgICAgICAvLyBsZXR0ZXItc3BhY2luZzogLTAuMDExZW07XHJcbiAgICAgICAgICAgIC8vIGxpbmUtaGVpZ2h0OiAwLjk1ZW07XHJcbiAgICAgICAgICAgIC8vIG1hcmdpbi10b3A6IDA7XHJcbiAgICAgICAgICAgIC8vIHBhZGRpbmctdG9wOiAwO1xyXG4gICAgICAgICAgICAvLyBmb250LXdlaWdodDogNjAwO1xyXG4gICAgICAgICAgICAvLyBtYXJnaW4tdG9wOiAzLjlyZW07XHJcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAycmVtO1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjU0cmVtO1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMC45NWVtO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0xOCk7XHJcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAuMDQ4ZW07XHJcbiAgICAgICAgICAgIHdvcmQtYnJlYWs6IGJyZWFrLWFsbDtcclxuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMXJlbTtcclxuXHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGZvci10YWJsZXQtcG9ydHJhaXQge1xyXG4gICAgICAgICAgICAgICAgLy8gZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICAvLyBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgICAgICAgICAgLy8gcGFkZGluZy10b3A6IDA7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBAaW5jbHVkZSBmb3ItbW9iaWxlIHtcclxuICAgICAgICAgICAgICAgIC8vIG1hcmdpbi10b3A6IC45cmVtO1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLy8gQGluY2x1ZGUgZm9yLWJpZy1kZXNrdG9wIHtcclxuICAgICAgICAgICAgLy8gICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLTcwKTtcclxuICAgICAgICAgICAgLy8gfVxyXG5cclxuICAgICAgICAgICAgLy8gQGluY2x1ZGUgZm9yLW1lZGl1bS1sYXB0b3Age1xyXG4gICAgICAgICAgICAvLyAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtNDUpO1xyXG4gICAgICAgICAgICAvLyAgICAgcGFkZGluZy10b3A6IDEuMzEyNXJlbTtcclxuICAgICAgICAgICAgLy8gfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLnByb2plY3RzLXdyYXBwZXIge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBmbGV4LWZsb3c6IHdyYXA7XHJcbiAgICAgICAgICAgIGdhcDogMXJlbTtcclxuXHJcbiAgICAgICAgICAgICZbZGF0YS1jb2w9JzEnXSB7XHJcbiAgICAgICAgICAgICAgICAuaW1nLWNudCB7XHJcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZm9yLW1vYmlsZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJltkYXRhLWNvbD0nMiddIHtcclxuICAgICAgICAgICAgICAgIC5pbWctY250IHtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogY2FsYyg1MCUgLSAwLjVyZW0pO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAmW2RhdGEtY29sPSczJ10ge1xyXG4gICAgICAgICAgICAgICAgLmltZy1jbnQge1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiBjYWxjKDMzLjMlIC0gMC42ODc1cmVtKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLmltZy1jbnQge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoMzMuMyUgLSAwLjY4NzVyZW0pO1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZvci10YWJsZXQtcG9ydHJhaXQge1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgICAgICAgICAgZmxleC1mbG93OiBjb2x1bW47XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgICAgICAgICAgYXNwZWN0LXJhdGlvOiAxIC8gMTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgZm9yLW1vYmlsZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gMC41cmVtKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICAgICAgYXNwZWN0LXJhdGlvOiAxIC8gMTtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAudGl0bGUge1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLTMwKTtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJhY2tncm91bmQtY29sb3I7XHJcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogLjVyZW07XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogLjVyZW07XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IC41cmVtO1xyXG4gICAgICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAgICAgICAgICAgICAvLyB0cmFuc2l0aW9uOiBvcGFjaXR5IC4ycyBlYXNlLWluLW91dDtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZm9yLXRhYmxldC1wb3J0cmFpdCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwb2ludGVyLWV2ZW50czogYXV0bztcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRmb290ZXItY29sb3I7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogLjVyZW07XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIG1pbi1oZWlnaHQ6IDIuOGVtO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZm9yLW1vYmlsZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgQG1lZGlhKGhvdmVyOmhvdmVyKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWx0ZXI6IGJyaWdodG5lc3MoMC42KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgLnRpdGxlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn0iLCJcclxuLnNpbmdsZS1tYWluIHtcclxuICAgIHBhZGRpbmctYm90dG9tOiA1cmVtO1xyXG5cclxuICAgIC5wYXJlbnQtdGF4b25vbXktY29udGVudCB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBtYXJnaW4tdG9wOiAxMHJlbTtcclxuICAgICAgICBtYXJnaW4tbGVmdDogMTNyZW07XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiA3cmVtO1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAzN3B4O1xyXG5cclxuICAgICAgICBAaW5jbHVkZSBmb3ItdGFibGV0LXBvcnRyYWl0IHtcclxuICAgICAgICAgICAgZmxleC1mbG93OiBjb2x1bW47XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDEzcmVtO1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogdmFyKC0tc2l0ZS1wYWRkaW5nKTtcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zaXRlLXBhZGRpbmcpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGluY2x1ZGUgZm9yLW1vYmlsZSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDEwcmVtO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAubGVmdC1jb2wge1xyXG4gICAgICAgIHdpZHRoOiAzMyU7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgICAgICBAaW5jbHVkZSBmb3ItdGFibGV0LXBvcnRyYWl0IHtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuc3RpY2t5LXdyYXBwZXIge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogc3RpY2t5O1xyXG4gICAgICAgICAgICB0b3A6IDE0LjRyZW07XHJcblxyXG4gICAgICAgICAgICBAaW5jbHVkZSBmb3ItdGFibGV0LXBvcnRyYWl0IHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDNyZW07XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5jdXJyZW50LXRheG9ub215LXRpdGxlIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtNzApO1xyXG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDExZW07XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAwLjk1ZW07XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDVyZW07XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDQuNHJlbTtcclxuICAgICAgICAgICAgaHlwaGVuczogYXV0bztcclxuICAgICAgICAgICAgb3ZlcmZsb3ctd3JhcDogYnJlYWstd29yZDtcclxuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuXHJcbiAgICAgICAgICAgIC8vIEBpbmNsdWRlIGZvci1iaWctZGVza3RvcCB7XHJcbiAgICAgICAgICAgIC8vICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS03MCk7XHJcbiAgICAgICAgICAgIC8vIH1cclxuXHJcbiAgICAgICAgICAgIC8vIEBpbmNsdWRlIGZvci1tZWRpdW0tbGFwdG9wIHtcclxuICAgICAgICAgICAgLy8gICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLTQ1KTtcclxuICAgICAgICAgICAgLy8gfVxyXG5cclxuICAgICAgICAgICAgQGluY2x1ZGUgZm9yLW1vYmlsZSB7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS00MCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5jb250ZW50IHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtMTgpO1xyXG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogLjA0OGVtO1xyXG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS41ZW07XHJcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDVyZW07XHJcblxyXG4gICAgICAgICAgICBAaW5jbHVkZSBmb3ItbW9iaWxlIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcclxuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjNlbTtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY2MHB4KSB7XHJcbiAgICAgICAgICAgICAgICAmLmhhcy1tb2JpbGUtZHJhd2VyIHtcclxuICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IG1heC1oZWlnaHQgLjI1cyBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmNvbnRlbnQtZHJhd2VyLXRvZ2dsZSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgICAgICBjb2xvcjogIzNBMkUyOTtcclxuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC4wNDhlbTtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNWVtO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAuNnJlbSAuOXJlbTtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogLjhyZW07XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcclxuICAgICAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDEuNXJlbTtcclxuXHJcbiAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY2MHB4KSB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLnJpZ2h0LWNvbCB7XHJcbiAgICAgICAgd2lkdGg6IDY3JTtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGZvci10YWJsZXQtcG9ydHJhaXQge1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5oZXJvLWltYWdlIHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcclxuICAgICAgICAgICAgaGVpZ2h0OiBjYWxjKHZhcigtLXZoMTAwKSAtIDEyLjVyZW0pO1xyXG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcblxyXG4gICAgICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcclxuICAgICAgICAgICAgICAgIGFzcGVjdC1yYXRpbzogNCAvIDM7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuZ2FsbGVyeS1jbnQge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgZmxleC1mbG93OiB3cmFwO1xyXG4gICAgICAgIGdhcDogMXJlbTtcclxuXHJcbiAgICAgICAgLmltZy1jbnQge1xyXG4gICAgICAgICAgICB3aWR0aDogY2FsYyg1MCUgLSAuNXJlbSk7XHJcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuXHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGZvci1tb2JpbGUge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XHJcbiAgICAgICAgICAgICAgICBhc3BlY3QtcmF0aW86IDEgLyAxO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5saWdodGJveCB7XHJcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgICAgIGluc2V0OiAwO1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICMzQTJFMjk7XHJcbiAgICAgICAgei1pbmRleDogOTk5OTtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblxyXG4gICAgICAgICZbYXJpYS1oaWRkZW49J3RydWUnXSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAubGlnaHRib3gtY2xvc2Uge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIHRvcDogMnJlbTtcclxuICAgICAgICAgICAgcmlnaHQ6IDJyZW07XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XHJcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5saWdodGJveC1wcmV2LFxyXG4gICAgICAgIC5saWdodGJveC1uZXh0IHtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICB0b3A6IDUwJTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDA7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAubGlnaHRib3gtcHJldiB7XHJcbiAgICAgICAgICAgIGxlZnQ6IDJyZW07XHJcblxyXG4gICAgICAgICAgICBAaW5jbHVkZSBmb3ItbW9iaWxlIHtcclxuICAgICAgICAgICAgICAgIGxlZnQ6IHZhcigtLXNpdGUtcGFkZGluZyk7XHJcblxyXG4gICAgICAgICAgICAgICAgc3ZnIHtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogYXV0bztcclxuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDMycHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5saWdodGJveC1uZXh0IHtcclxuICAgICAgICAgICAgcmlnaHQ6IDJyZW07XHJcblxyXG4gICAgICAgICAgICBAaW5jbHVkZSBmb3ItbW9iaWxlIHtcclxuICAgICAgICAgICAgICAgIHJpZ2h0OiB2YXIoLS1zaXRlLXBhZGRpbmcpO1xyXG5cclxuICAgICAgICAgICAgICAgIHN2ZyB7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAzMnB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAubGlnaHRib3gtaW1nLXdyYXAge1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDgwJTtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5saWdodGJveC1pbWcge1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDg5dmg7XHJcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IDg5dmg7XHJcbiAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmxpZ2h0Ym94LWNvdW50ZXIge1xyXG4gICAgICAgICAgICBjb2xvcjogI2M0YzBiYjtcclxuICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtMTgpO1xyXG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogLjA0OGVtO1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxcmVtO1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufSIsIi5oaXN0b3J5LW1haW4ge1xyXG4gICAgcGFkZGluZy1ib3R0b206IDVyZW07XHJcblxyXG4gICAgLnBhcmVudC10YXhvbm9teS1jb250ZW50IHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGZsZXgtZmxvdzogY29sdW1uO1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDEwcmVtO1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxM3JlbTtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDdyZW07XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDM3cHg7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGZvci10YWJsZXQtcG9ydHJhaXQge1xyXG4gICAgICAgICAgICBmbGV4LWZsb3c6IGNvbHVtbjtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMTNyZW07XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1zaXRlLXBhZGRpbmcpO1xyXG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXNpdGUtcGFkZGluZyk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAaW5jbHVkZSBmb3ItbW9iaWxlIHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogOXJlbTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmZpcnN0LXNlY3Rpb24ge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGZvci10YWJsZXQtcG9ydHJhaXQge1xyXG4gICAgICAgICAgICBmbGV4LWZsb3c6IGNvbHVtbjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYuaXMtc2Vjb25kLXNlY3Rpb24tYWN0aXZlIHtcclxuICAgICAgICAgICAgLnN0aWNreS13cmFwcGVyIHtcclxuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuc2Vjb25kLXNlY3Rpb24ge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICB9XHJcblxyXG4gICAgLmxlZnQtY29sIHtcclxuICAgICAgICB3aWR0aDogMzMlO1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgZm9yLXRhYmxldC1wb3J0cmFpdCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLnN0aWNreS13cmFwcGVyIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IHN0aWNreTtcclxuICAgICAgICAgICAgdG9wOiAxNC4xODc1cmVtO1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4ycyBlYXNlLWluLW91dDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5jdXJyZW50LXRheG9ub215LXRpdGxlIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtNzApO1xyXG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDExZW07XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAuOTVlbTtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcclxuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogNXJlbTtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcclxuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAuMnMgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDQuMnJlbTtcclxuXHJcbiAgICAgICAgICAgIC8vIEBpbmNsdWRlIGZvci1iaWctZGVza3RvcCB7XHJcbiAgICAgICAgICAgIC8vICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS03MCk7XHJcbiAgICAgICAgICAgIC8vIH1cclxuXHJcbiAgICAgICAgICAgIC8vIEBpbmNsdWRlIGZvci1tZWRpdW0tbGFwdG9wIHtcclxuICAgICAgICAgICAgLy8gICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLTQ1KTtcclxuICAgICAgICAgICAgLy8gICAgIHBhZGRpbmctdG9wOiAxLjVyZW07XHJcbiAgICAgICAgICAgIC8vIH1cclxuXHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGZvci1tb2JpbGUge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLTQwKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBcclxuICAgICAgICAgICAgJi50cnVzdGVkLWJ5IHtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcblxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuY29udGVudCB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLTE4KTtcclxuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC4wNDhlbTtcclxuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNWVtO1xyXG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA1cmVtO1xyXG5cclxuICAgICAgICAgICAgQGluY2x1ZGUgZm9yLW1vYmlsZSB7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDFyZW07XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLnRydXN0LWNudC1hY3RpdmUge1xyXG4gICAgICAgICAgICAuY3VycmVudC10YXhvbm9teS10aXRsZSB7XHJcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG5cclxuICAgICAgICAgICAgICAgICYudHJ1c3RlZC1ieSB7XHJcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLmNvbnRlbnQge1xyXG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5yaWdodC1jb2wge1xyXG4gICAgICAgIHdpZHRoOiA2NyU7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAzMDBweDtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgZm9yLXRhYmxldC1wb3J0cmFpdCB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTAwcHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuaGVyby1pbWFnZSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDNyZW07XHJcbiAgICAgICAgICAgIGhlaWdodDogY2FsYyh2YXIoLS12aDEwMCkgLSAxMi4zcmVtKTtcclxuXHJcbiAgICAgICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xyXG4gICAgICAgICAgICAgICAgYXNwZWN0LXJhdGlvOiA0IC8gMztcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAubWFpbi1jb250ZW50IHtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiA2NSU7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE5LjA2MjVyZW07XHJcblxyXG4gICAgICAgICAgICBAaW5jbHVkZSBmb3ItdGFibGV0LXBvcnRyYWl0IHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDZyZW07XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGZvci1tb2JpbGUge1xyXG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBoMSB7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS00MCk7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xyXG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDAuOTVlbTtcclxuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcblxyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgZm9yLW1vYmlsZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjU2MjVyZW07XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIHAge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLTE4KTtcclxuICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAuMDQ1ZW07XHJcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS41cmVtO1xyXG5cclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZvci1tb2JpbGUge1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRibGFjaztcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IC44cmVtIDEuM3JlbTtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDFyZW07XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtMTgpO1xyXG4gICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC4wNDhlbTtcclxuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjJlbTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLnRydXN0ZWQtYnktbW9iaWxlIHtcclxuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogM3JlbTtcclxuICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtNDUpO1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xyXG5cclxuICAgICAgICAgICAgQGluY2x1ZGUgZm9yLXRhYmxldC1wb3J0cmFpdCB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgQGluY2x1ZGUgZm9yLW1vYmlsZSB7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuNTYyNXJlbTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLnRydXN0ZWQtYnktY250IHtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgZmxleC1mbG93OiB3cmFwO1xyXG4gICAgICAgICAgICBnYXA6IDMuNjdyZW0gMXJlbTtcclxuXHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGZvci1tb2JpbGUge1xyXG4gICAgICAgICAgICAgICAgZ2FwOiAxcmVtIDFyZW07XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5ncm91cC1jbnQge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoMjUlIC0gMC43NXJlbSk7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0xOCk7XHJcblxyXG4gICAgICAgICAgICAgICAgLmxldHRlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZvci1tb2JpbGUge1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiBjYWxjKDIwJSAtIDAuOHJlbSk7XHJcbiAgICAgICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAuY29tcGFuaWVzLWxpc3Qge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAubGV0dGVyIHtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xyXG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjJlbTtcclxuICAgICAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICYuaXMtYWN0aXZlIHtcclxuICAgICAgICAgICAgICAgICAgICAubGV0dGVyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtdW5kZXJsaW5lLW9mZnNldDogLjJlbTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC50cnVzdGVkLWJ5LW1vYmlsZS1wYW5lbCB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcblxyXG4gICAgICAgICAgICBAaW5jbHVkZSBmb3ItbW9iaWxlIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgICAgICBnYXA6IDFyZW07XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMnJlbTtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDJyZW07XHJcbiAgICAgICAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSg1OCwgNDYsIDQxLCAwLjQ1KTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJltoaWRkZW5dIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC50cnVzdGVkLWJ5LW1vYmlsZS1sZXR0ZXIge1xyXG4gICAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjJlbTtcclxuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgICAgICAgd2lkdGg6IDRyZW07XHJcbiAgICAgICAgICAgIGZsZXg6IDAgMCA0cmVtO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLnRydXN0ZWQtYnktbW9iaWxlLWNvbXBhbmllcyB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcclxuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC4wNDhlbTtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuM2VtO1xyXG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG5cclxuICAgICAgICAgICAgcCxcclxuICAgICAgICAgICAgZGl2IHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAuNXJlbTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbn0iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFDQ0E7Ozs7OztFQU1FO0FDTkYsQUFBQSxLQUFLLENBQUM7RUFDRixPQUFPLENBQUEsWUFBQztFQUNSLFlBQVksQ0FBQSxZQUFDO0VBQ2IsaUJBQWlCLENBQUEsRUFBQztFQUVsQixjQUFjLENBQUEsT0FBQztFQUNmLGVBQWUsQ0FBQSxXQUFDO0VBRWhCLGNBQWMsQ0FBQSxTQUFDO0VBQ2YsY0FBYyxDQUFBLFNBQUM7RUFDZixjQUFjLENBQUEsUUFBQztFQUNmLGNBQWMsQ0FBQSxTQUFDO0VBQ2YsY0FBYyxDQUFBLFVBQUM7RUFDZixjQUFjLENBQUEsT0FBQztFQUNmLGNBQWMsQ0FBQSxTQUFDO0VBQ2YsY0FBYyxDQUFBLFNBQUM7RUFDZixjQUFjLENBQUEsU0FBQyxHQVVsQjtFRHNMRyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7SUNoTjVCLEFBQUEsS0FBSyxDQUFDO01BbUJFLGVBQWUsQ0FBQSxVQUFDO01BQ2hCLE9BQU8sQ0FBQSxhQUFDO01BQ1IsWUFBWSxDQUFBLGFBQUM7TUFFYixjQUFjLENBQUEsVUFBQyxHQUd0Qjs7QUMzQkQsNEVBQTRFO0FBRTVFOytFQUMrRTtBQUUvRTs7O0dBR0c7QUFFSCxBQUFBLElBQUksQ0FBQztFQUNELFdBQVcsRUFBRSxHQUFHO0VBQ2hCLHdCQUF3QixFQUFFLElBQUksR0FDakM7O0FBRUQ7K0VBQytFO0FBRS9FOztHQUVHO0FBRUgsQUFBQSxJQUFJLENBQUM7RUFDRCxNQUFNLEVBQUUsQ0FBQyxHQUNaOztBQUVEOztHQUVHO0FBRUgsQUFBQSxJQUFJLENBQUM7RUFDRCxPQUFPLEVBQUUsS0FBSyxHQUNqQjs7QUFFRDs7O0dBR0c7QUFFSCxBQUFBLEVBQUUsQ0FBQztFQUNDLFNB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 */
