@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;400;500;700&display=swap");
.pseudo {
  content: "";
  display: block;
  position: absolute;
}

.wide {
  max-width: 100%;
}

.text-black {
  color: var(--black) !important;
}
.text-white, .background-black {
  color: var(--white) !important;
}

.background-black {
  background: #1A1A18 !important;
}
.background-white {
  background: var(--white) !important;
}
.background-cappuccino {
  background: #90644C !important;
}
.background-red {
  background: var(--red) !important;
}
.background-blue {
  background: var(--blue) !important;
}
.background-yellow {
  background: var(--yellow) !important;
}
.background-off-white {
  background: var(--off-white) !important;
}

.hidden {
  display: none !important;
  visibility: hidden;
}

.clearfix:before {
  display: table;
  content: " ";
}
.clearfix:after {
  display: table;
  content: " ";
  clear: both;
}

.inline {
  display: inline;
}

@media (max-width: 1023px) {
  .padded {
    padding: 0 30px;
  }
  .desktop-up,
  .desktop-only {
    display: none !important;
  }
  .tablet-down {
    display: block !important;
  }
}
@media (max-width: 767px) {
  .tablet-only,
  .hide-for-mobile {
    display: none !important;
  }
}
@media (min-width: 768px) {
  .mobile-only,
  .hide-for-tablet {
    display: none !important;
  }
}
@media (min-width: 1024px) {
  .tablet-down,
  .tablet-only,
  .hide-for-desktop {
    display: none !important;
  }
  .desktop-up {
    display: block !important;
  }
}
:root {
  --site-width: 100vw;
  --middle-grey: #999;
  --darkbrown: #262626;
  --off-white: #E1EFEE;
  --light-grey: #e4e4e4;
  --red: #FE4823;
  --blue: #4D97BF;
  --yellow: #F8F3CD;
  --orange: #EDA312;
  --green: #3C8596;
  --purple: #EB4BD1;
  --banner-grey: #9d8f8c;
  --banner-red: #FF461E;
  --white: #fff;
  --black: #000;
  --off-black: #222;
  --gray: #aaa;
  --load-more-background: #000;
  --extension-home-slides: #000;
  --extension-content-grid: #000;
  --plyr-color-main: #fff;
  --plyr-video-control-color-hover: #999;
  --plyr-video-control-background-hover: transparent;
  --plyr-menu-arrow-size: 20px;
  --col-1: calc(var(--site-width) / 12);
  --col-2: calc(var(--col-1) * 2);
  --col-3: calc(var(--col-1) * 3);
  --col-4: calc(var(--col-1) * 4);
  --col-5: calc(var(--col-1) * 5);
  --col-6: calc(var(--col-1) * 6);
  --col-7: calc(var(--col-1) * 7);
  --col-8: calc(var(--col-1) * 8);
  --col-9: calc(var(--col-1) * 9);
  --col-10: calc(var(--col-1) * 10);
  --col-11: calc(var(--col-1) * 11);
  --scrollbar: calc(100vw - 100%);
  --section-margin: 2.875rem;
  --section-margin-double: 5.75rem;
  --font-size-s: 1.25rem;
  --line-height-s: 1.25;
  --font-size-m: 1.875rem;
  --line-height-m: 1.2;
  --font-size-l: 2.5rem;
  --line-height-l: 1;
  --font-size-xl: 3.125rem;
  --line-height-xl: 1;
  --font-size-xxl: 3.75rem;
  --line-height-xxl: 1;
  --letter-spacing-s: 0;
  --letter-spacing-m: 0;
  --letter-spacing-l: 0;
  --letter-spacing-xl: 0;
  --letter-spacing-xxl: 0;
  --phc-black-af: #171717;
  --phc-white-af: #FAFAFA;
  --phc-paper: #FAFAF6;
  --phc-egg: #EAEADA;
  --phc-teal: #D1DEDE;
  --phc-teal-washout: #242C2C;
  --phc-gray: #879292;
  --phc-gray-washout: #505656;
  --phc-ocean: #4EA5C4;
  --phc-bg: var(--phc-paper);
  --phc-fg: var(--phc-black-af);
  --phc-muted: var(--phc-gray-washout);
  --phc-rule: var(--phc-teal);
  --phc-accent: var(--phc-ocean);
  --phc-page-width: 90rem;
  --phc-root: 1rem;
  --phc-menu-bg: rgba(209, 222, 222, 0.7);
  --phc-menu-fg: var(--phc-teal-washout);
  --phc-menu-fg-active: var(--phc-white-af);
  --phc-menu-bg-fallback: rgba(209, 222, 222, 0.7);
  --phc-contrast-bg: var(--phc-teal-washout);
  --phc-contrast-fg: var(--phc-paper);
  --phc-contrast-muted: var(--phc-gray);
}

.phc-theme-dark {
  --phc-bg: var(--phc-black-af);
  --phc-fg: var(--phc-white-af);
  --phc-muted: var(--phc-gray);
  --phc-rule: var(--phc-teal-washout);
  --phc-menu-bg: rgba(36, 44, 44, 0.7);
  --phc-menu-bg-fallback: rgba(36, 44, 44, 0.7);
  --phc-menu-fg: var(--phc-gray);
  --phc-contrast-bg: var(--phc-egg);
  --phc-contrast-fg: var(--phc-black-af);
  --phc-contrast-muted: var(--phc-gray-washout);
}

@media (max-width: 1919px) {
  :root {
    --site-width: 100vw;
  }
}
/*! Flickity v2.2.1
https://flickity.metafizzy.co
---------------------------------------------- */
/* draggable */
/* ---- flickity-button ---- */
/* ---- previous/next buttons ---- */
/* right to left */
/* ---- page dots ---- */
.flickity-enabled {
  position: relative;
}
.flickity-enabled:focus {
  outline: none;
}

.flickity-viewport {
  overflow: hidden;
  position: relative;
  height: 100%;
}

.flickity-slider {
  position: absolute;
  width: 100%;
  height: 100%;
}

.flickity-enabled.is-draggable {
  -webkit-tap-highlight-color: transparent;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
}
.flickity-enabled.is-draggable .flickity-viewport {
  cursor: move;
  cursor: grab;
}
.flickity-enabled.is-draggable .flickity-viewport.is-pointer-down {
  cursor: grabbing;
}

.flickity-button {
  position: absolute;
  background: hsla(0, 0%, 100%, 0.75);
  border: none;
  color: #333;
}
.flickity-button:hover {
  background: white;
  cursor: pointer;
}
.flickity-button:focus {
  outline: none;
  box-shadow: 0 0 0 5px #19F;
}
.flickity-button:active {
  opacity: 0.6;
}
.flickity-button:disabled {
  opacity: 0.3;
  cursor: auto;
  pointer-events: none;
}

.flickity-button-icon {
  fill: currentColor;
}

.flickity-prev-next-button {
  top: 50%;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  transform: translateY(-50%);
}
.flickity-prev-next-button .flickity-button-icon {
  position: absolute;
  left: 20%;
  top: 20%;
  width: 60%;
  height: 60%;
}

.flickity-prev-next-button.previous {
  left: 10px;
}

.flickity-prev-next-button.next {
  right: 10px;
}

.flickity-rtl .flickity-prev-next-button.previous {
  left: auto;
  right: 10px;
}
.flickity-rtl .flickity-prev-next-button.next {
  right: auto;
  left: 10px;
}
.flickity-rtl .flickity-page-dots {
  direction: rtl;
}

.flickity-page-dots {
  position: absolute;
  width: 100%;
  bottom: -25px;
  padding: 0;
  margin: 0;
  list-style: none;
  text-align: center;
  line-height: 1;
}
.flickity-page-dots .dot {
  display: inline-block;
  width: 10px;
  height: 10px;
  margin: 0 8px;
  background: #333;
  border-radius: 50%;
  opacity: 0.25;
  cursor: pointer;
}
.flickity-page-dots .dot.is-selected {
  opacity: 1;
}

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

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

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

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

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

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

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

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

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

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

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

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

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

@font-face {
  font-family: "Inter";
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url("../fonts/Inter-Light.woff2?v=3.19") format("woff2"), url("../fonts/Inter-Light.woff?v=3.19") format("woff");
}
@font-face {
  font-family: "Inter";
  font-style: italic;
  font-weight: 300;
  font-display: swap;
  src: url("../fonts/Inter-LightItalic.woff2?v=3.19") format("woff2"), url("../fonts/Inter-LightItalic.woff?v=3.19") format("woff");
}
@font-face {
  font-family: "Inter";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../fonts/Inter-Regular.woff2?v=3.19") format("woff2"), url("../fonts/Inter-Regular.woff?v=3.19") format("woff");
}
@font-face {
  font-family: "Inter";
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url("../fonts/Inter-RegularItalic.woff2?v=3.19") format("woff2"), url("../fonts/Inter-RegularItalic.woff?v=3.19") format("woff");
}
@font-face {
  font-family: "Inter";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("../fonts/Inter-Medium.woff2?v=3.19") format("woff2"), url("../fonts/Inter-Medium.woff?v=3.19") format("woff");
}
@font-face {
  font-family: "Inter";
  font-style: italic;
  font-weight: 500;
  font-display: swap;
  src: url("../fonts/Inter-MediumItalic.woff2?v=3.19") format("woff2"), url("../fonts/Inter-MediumItalic.woff?v=3.19") format("woff");
}
@font-face {
  font-family: "Inter";
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("../fonts/Inter-SemiBold.woff2?v=3.19") format("woff2"), url("../fonts/Inter-SemiBold.woff?v=3.19") format("woff");
}
@font-face {
  font-family: "Inter";
  font-style: italic;
  font-weight: 600;
  font-display: swap;
  src: url("../fonts/Inter-SemiBoldItalic.woff2?v=3.19") format("woff2"), url("../fonts/Inter-SemiBoldItalic.woff?v=3.19") format("woff");
}
@font-face {
  font-family: "Suisse Intl";
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url("../fonts/suisse/SuisseIntl-Light.woff2") format("woff2"), url("../fonts/suisse/SuisseIntl-Light.woff") format("woff");
}
@font-face {
  font-family: "Suisse Intl";
  font-style: italic;
  font-weight: 300;
  font-display: swap;
  src: url("../fonts/suisse/SuisseIntl-LightItalic.woff2") format("woff2"), url("../fonts/suisse/SuisseIntl-LightItalic.woff") format("woff");
}
@font-face {
  font-family: "Suisse Intl";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../fonts/suisse/SuisseIntl-Regular.woff2") format("woff2"), url("../fonts/suisse/SuisseIntl-Regular.woff") format("woff");
}
@font-face {
  font-family: "Suisse Intl";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("../fonts/suisse/SuisseIntl-Medium.woff2") format("woff2"), url("../fonts/suisse/SuisseIntl-Medium.woff") format("woff");
}
@font-face {
  font-family: "Suisse Intl";
  font-style: italic;
  font-weight: 500;
  font-display: swap;
  src: url("../fonts/suisse/SuisseIntl-MediumItalic.woff2") format("woff2"), url("../fonts/suisse/SuisseIntl-MediumItalic.woff") format("woff");
}
@font-face {
  font-family: "Suisse Intl";
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("../fonts/suisse/SuisseIntl-SemiBold.woff2") format("woff2"), url("../fonts/suisse/SuisseIntl-SemiBold.woff") format("woff");
}
@font-face {
  font-family: "Suisse Intl";
  font-style: italic;
  font-weight: 600;
  font-display: swap;
  src: url("../fonts/suisse/SuisseIntl-SemiBoldItalic.woff2") format("woff2"), url("../fonts/suisse/SuisseIntl-SemiBoldItalic.woff") format("woff");
}
.grid-desktop {
  display: none !important;
  position: fixed;
  top: 0;
  width: var(--site-width);
  left: calc((100vw - (var(--site-width)) - (100vw - 100%)) / 2);
  height: 100%;
  display: block;
  z-index: 1200;
  pointer-events: none;
}
.grid-desktop.off {
  opacity: 0;
}
.grid-desktop__col {
  float: left;
  display: block;
  height: 100%;
  width: calc((var(--site-width)) / 12);
  border-right: 1px solid #777;
  opacity: 0.1;
}
.grid-desktop__col:first-child {
  width: 30px;
  border-left: 1px solid #777;
}
.grid-desktop__col:nth-child(2) {
  width: calc((var(--site-width)) / 12 - 30px);
}
.grid-desktop__col:nth-child(13) {
  width: calc((var(--site-width)) / 12 - 30px);
}
.grid-desktop__col:last-child {
  width: 30px;
  border-right: 1px solid #777;
}

.wrapper {
  width: 100%;
  position: relative;
}
.wrapper.blur {
  pointer-events: none;
}
.wrapper {
  transition: filter 0.4s ease-out;
}

.container {
  display: flex;
  flex-wrap: wrap;
}

.col {
  width: 8.33%;
}
.col-1 {
  width: 8.33%;
}
.col-2 {
  width: 16.66%;
}
.col-3 {
  width: 25%;
}
.col-4 {
  width: 33.33%;
}
.col-5 {
  width: 41.65%;
}
.col-6 {
  width: 50%;
}
.col-7 {
  width: 58.33%;
}
.col-8 {
  width: 66.66%;
}
.col-9 {
  width: 75%;
}
.col-10 {
  width: 83.33%;
}
.col-11 {
  width: 91.66%;
}
.col-12 {
  width: 100%;
}

.offset-1 {
  margin-left: 8.33%;
}
.offset-2 {
  margin-left: 16.66%;
}
.offset-3 {
  margin-left: 25%;
}
.offset-4 {
  margin-left: 33.33%;
}
.offset-5 {
  margin-left: 41.65%;
}
.offset-6 {
  margin-left: 50%;
}
.offset-7 {
  margin-left: 58.33%;
}
.offset-8 {
  margin-left: 66.66%;
}
.offset-9 {
  margin-left: 75%;
}
.offset-10 {
  margin-left: 83.33%;
}
.offset-11 {
  margin-left: 91.66%;
}
.offset-12 {
  margin-left: 100%;
}

.total-cols-md-1 > * {
  width: 100%;
}
.total-cols-md-2 > * {
  width: 50%;
}
.total-cols-md-3 > * {
  width: 33.333%;
}
.total-cols-md-12 > *, .total-cols-md-11 > *, .total-cols-md-11 > *, .total-cols-md-10 > *, .total-cols-md-9 > *, .total-cols-md-8 > *, .total-cols-md-7 > *, .total-cols-md-6 > *, .total-cols-md-5 > *, .total-cols-md-4 > * {
  width: 25%;
}

@media (max-width: 767px) {
  .total-cols-sm-1 > * {
    width: 100%;
  }
  .total-cols-sm-2 > * {
    width: 50%;
  }
  .total-cols-sm-2 > *:first-child:last-child {
    width: 100%;
  }
  .total-cols-sm-3 > * {
    width: 33.333%;
  }
  .total-cols-sm-3 > *:first-child:last-child {
    width: 100%;
  }
  .total-cols-sm-4 > * {
    width: 25%;
  }
  .total-cols-sm-4 > *:first-child:last-child {
    width: 100%;
  }
}
@media (max-width: 1023px) {
  .col-1, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-10, .col-11, .col-12 {
    width: 100%;
  }
  .offset-1, .offset-2, .offset-3, .offset-4, .offset-5, .offset-6, .offset-7, .offset-8, .offset-9, .offset-10, .offset-11, .offset-12 {
    margin-left: 0;
  }
  .col-m-1 {
    width: 8.33%;
  }
  .col-m-2 {
    width: 16.66%;
  }
  .col-m-3 {
    width: 25%;
  }
  .col-m-4 {
    width: 33.33%;
  }
  .col-m-5 {
    width: 41.65%;
  }
  .col-m-6 {
    width: 50%;
  }
  .col-m-7 {
    width: 58.33%;
  }
  .col-m-8 {
    width: 66.66%;
  }
  .col-m-9 {
    width: 75%;
  }
  .col-m-10 {
    width: 83.33%;
  }
  .col-m-11 {
    width: 91.66%;
  }
  .col-m-12 {
    width: 100%;
  }
  .offset-m-1 {
    margin-left: 8.33%;
  }
  .offset-m-2 {
    margin-left: 16.66%;
  }
  .offset-m-3 {
    margin-left: 25%;
  }
  .offset-m-4 {
    margin-left: 33.33%;
  }
  .offset-m-5 {
    margin-left: 41.65%;
  }
  .offset-m-6 {
    margin-left: 50%;
  }
  .offset-m-7 {
    margin-left: 58.33%;
  }
  .offset-m-8 {
    margin-left: 66.66%;
  }
  .offset-m-9 {
    margin-left: 75%;
  }
  .offset-m-10 {
    margin-left: 83.33%;
  }
  .offset-m-11 {
    margin-left: 91.66%;
  }
  .offset-m-12 {
    margin-left: 100%;
  }
}
html {
  box-sizing: border-box;
  font-size: 100%;
}
@media (min-width: 1440px) {
  html {
    font-size: calc(0.703em + 0.33vw);
  }
}
html {
  -webkit-text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
}
html.old {
  font-size: 16px;
  font-size: calc(14px + 0.33vw);
}
@media (min-width: 768px) {
  html.old {
    font-size: calc(12px + 0.33vw);
  }
}
html.old {
  --phc-root: 16px;
}

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

body {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: antialiased;
  margin: 0;
  padding: 0;
  font-family: "Inter", Helvetica, "Helvetica Neue", Arial;
  font-weight: 500;
  line-height: var(--line-height-s);
  letter-spacing: var(--letter-spacing-s);
  font-feature-settings: "tnum" 1;
  font-feature-settings: "frac" 1;
  font-feature-settings: "case" 1;
  font-feature-settings: "ccmp" 1;
  font-feature-settings: "dlig" 1;
  font-feature-settings: "numr" 1;
  font-feature-settings: "dnom" 1;
  font-feature-settings: "sups" 1;
  font-feature-settings: "subs" 1;
  font-feature-settings: "cvXX" 1;
}

::-moz-selection {
  background: #b3d4fc;
  text-shadow: none;
}

::selection {
  background: #b3d4fc;
  text-shadow: none;
}

a {
  color: var(--black);
  text-decoration: none;
}
a:hover {
  color: var(--middle-grey);
}

audio {
  vertical-align: middle;
}

canvas {
  vertical-align: middle;
}

img {
  vertical-align: middle;
}

video {
  vertical-align: middle;
}

fieldset {
  margin: 0;
  padding: 0;
  border: 0;
}

textarea {
  resize: vertical;
}

ol:first-child,
ul:first-child {
  margin-top: 0;
}
ol:last-child,
ul:last-child {
  margin-top: 0;
}
ol li,
ul li {
  font-weight: normal;
  font-size: var(--font-size-m);
  line-height: var(--line-height-m);
  letter-spacing: var(--letter-spacing-m);
}
ol li + li,
ul li + li {
  margin-top: 15px;
}
@media (max-width: 767px) {
  ol li,
  ul li {
    font-size: var(--font-size-s);
    line-height: var(--line-height-s);
    letter-spacing: var(--letter-spacing-s);
    padding-left: 13px;
  }
}

ul {
  padding-left: 0;
  list-style-type: none;
}
ul > li {
  text-indent: -1px;
  padding-left: 12px;
  position: relative;
}
ul > li:before {
  content: "—";
  position: absolute;
  left: 0;
}
@media (min-width: 1024px) {
  ul > li {
    padding-left: 18px;
  }
}

ol {
  list-style: none;
  counter-reset: peterhainer-custom-counter;
}
ol li {
  position: relative;
  counter-increment: peterhainer-custom-counter;
}
ol li:before {
  content: counter(peterhainer-custom-counter);
  position: absolute;
  transform: translateX(-40px);
  width: 40px;
  text-align: center;
}

.section-wrapper {
  width: 100%;
  display: block;
}
.section-wrapper--red {
  background-color: var(--red);
}
.section-wrapper--black {
  color: var(--white);
  background-color: var(--black);
}
.section-wrapper--grey {
  background-color: var(--middle-grey);
  color: var(--white);
}

.main .background-cappuccino a,
.main .background-cappuccino a > *,
.background-cappuccino a,
.background-cappuccino a > * {
  color: var(--white);
}

.section-container {
  margin: 0 auto;
  display: block;
  max-width: var(--site-width);
}
.section-container--full {
  width: 100%;
  max-width: 100%;
  padding: 0;
}

main {
  display: flex;
  flex-direction: column;
  flex-flow: wrap;
}

.article-main {
  margin: 0px auto 0px;
  max-width: var(--site-width);
}

.headless {
  padding-top: 130px;
}

.arrow-link:after {
  content: "→";
  position: relative;
  display: inline-block;
  margin-left: 10px;
  transition: margin 0.2s ease-out;
}
@media (hover: hover) {
  .arrow-link:hover {
    text-decoration: none;
  }
  .arrow-link:hover:after {
    margin-left: 20px;
  }
}

small {
  display: inline-block;
  font-size: var(--font-size-s);
  line-height: var(--line-height-s);
  letter-spacing: var(--letter-spacing-s);
}

.main .intro-section__call a:hover {
  text-decoration: none;
}
.main .text-white, .main .background-black {
  color: #fff;
}
.main a:not([class*=phc-]) {
  color: var(--middle-grey);
  text-decoration: none;
}
.main h2 a {
  text-decoration: none;
  color: var(--middle-grey);
}
.main h2 a:hover {
  text-decoration: underline;
}
.main table a,
.main h1 a,
.main h2 a,
.main h3 a,
.main h4 a,
.main p a {
  text-decoration: none;
  color: var(--middle-grey);
}
.main table a:hover,
.main h1 a:hover,
.main h2 a:hover,
.main h3 a:hover,
.main h4 a:hover,
.main p a:hover {
  text-decoration: underline;
}
.main table a.arrow-link:hover,
.main h1 a.arrow-link:hover,
.main h2 a.arrow-link:hover,
.main h3 a.arrow-link:hover,
.main h4 a.arrow-link:hover,
.main p a.arrow-link:hover {
  text-decoration: none;
}

a[href^=tel] {
  color: inherit;
  text-decoration: none;
}

.kerning-25 {
  letter-spacing: -0.025em;
}

.type-s {
  font-size: var(--font-size-s) !important;
  line-height: var(--line-height-s) !important;
  letter-spacing: var(--letter-spacing-s) !important;
}

.type-m {
  font-size: var(--font-size-m) !important;
  line-height: var(--line-height-m) !important;
  letter-spacing: var(--letter-spacing-m) !important;
}

.type-l {
  font-size: var(--font-size-l) !important;
  line-height: var(--line-height-l) !important;
  letter-spacing: var(--letter-spacing-l) !important;
}

.type-xl {
  font-size: var(--font-size-xl) !important;
  line-height: var(--line-height-xl) !important;
  letter-spacing: var(--letter-spacing-xl) !important;
}

.type-xxl {
  font-size: var(--font-size-xxl) !important;
  line-height: var(--line-height-xxl) !important;
  letter-spacing: var(--letter-spacing-xxl) !important;
}

.phc-theme-bright,
.phc-theme-dark {
  background-color: var(--phc-bg);
  color: var(--phc-fg);
}

h1 {
  font-family: "Suisse Intl", sans-serif;
  font-size: calc(4 * var(--phc-root));
  font-weight: 300;
  line-height: calc(4.125 * var(--phc-root));
  letter-spacing: -0.05em;
  font-feature-settings: "salt" 1;
  margin: 0 0 1.25rem;
}

h2 {
  font-family: "Suisse Intl", sans-serif;
  font-size: calc(2.625 * var(--phc-root));
  font-weight: 400;
  line-height: calc(2.75 * var(--phc-root));
  letter-spacing: -0.02em;
  font-feature-settings: "salt" 1;
  margin: 0 0 1.25rem;
}

h3 {
  font-family: "Suisse Intl", sans-serif;
  font-size: calc(1.75 * var(--phc-root));
  font-weight: 500;
  line-height: calc(2.25 * var(--phc-root));
  letter-spacing: 0;
  font-feature-settings: "salt" 1;
  margin: 0 0 1.25rem;
}

h4,
h5,
h6 {
  font-family: "Suisse Intl", sans-serif;
  font-size: calc(1.375 * var(--phc-root));
  font-weight: 400;
  line-height: calc(1.5 * var(--phc-root));
  letter-spacing: 0;
  font-feature-settings: "salt" 1;
  margin: 0 0 1.25rem;
}

p {
  font-family: "Suisse Intl", sans-serif;
  font-size: calc(1.375 * var(--phc-root));
  font-weight: 400;
  line-height: calc(1.5 * var(--phc-root));
  letter-spacing: 0;
  font-feature-settings: "salt" 1;
  margin: 0 0 1.25rem;
}

small {
  font-family: "Suisse Intl", sans-serif;
  font-size: calc(1 * var(--phc-root));
  font-weight: 500;
  line-height: calc(1.125 * var(--phc-root));
  letter-spacing: 0;
  font-feature-settings: "salt" 1;
}

.old {
  background-color: var(--white);
  color: var(--black);
}
.old h1:not([class*=text-phc-]) {
  font-weight: 600;
  font-size: var(--font-size-xl);
  line-height: var(--line-height-xl);
  letter-spacing: var(--letter-spacing-xl);
  margin: 0;
  font-weight: normal;
}
.old h2:not([class*=text-phc-]),
.old h3:not([class*=text-phc-]),
.old h4:not([class*=text-phc-]),
.old h5:not([class*=text-phc-]),
.old h6:not([class*=text-phc-]) {
  font-weight: 600;
}
.old p:not([class*=text-phc-]) {
  margin-top: 0;
  font-weight: 500;
  font-size: var(--font-size-m);
  line-height: var(--line-height-m);
  letter-spacing: var(--letter-spacing-m);
  margin-bottom: var(--section-margin);
}
.old .main h1 {
  font-size: var(--font-size-xl);
  line-height: var(--line-height-xl);
  letter-spacing: var(--letter-spacing-xl);
}
.old .main h2 {
  font-size: var(--font-size-l);
  line-height: var(--line-height-l);
  letter-spacing: var(--letter-spacing-l);
}
.old .main h3 {
  font-size: var(--font-size-m);
  line-height: var(--line-height-m);
  letter-spacing: var(--letter-spacing-m);
}
.old .main h4 {
  font-size: var(--font-size-s);
  line-height: var(--line-height-s);
  letter-spacing: var(--letter-spacing-s);
}
.old .main h1, .old .main h2, .old .main h3, .old .main h4 {
  margin: 0;
  font-weight: 600;
  margin-bottom: calc(var(--section-margin) / 2);
}
@media (max-width: 1023px) {
  .old .main p {
    font-weight: normal;
    font-size: var(--font-size-m);
    line-height: var(--line-height-m);
    letter-spacing: var(--letter-spacing-m);
    margin-bottom: 30px;
  }
  .old .main h1 {
    margin: 0;
    font-weight: normal;
    margin: 0 0 var(--section-margin);
  }
  .old .main.main--contact.main--article h1 {
    font-size: var(--font-size-l);
    line-height: var(--line-height-l);
    letter-spacing: var(--letter-spacing-l);
  }
  .old .main:not(.main--contact) h1 br {
    display: none;
  }
  .old .main h2 {
    font-size: var(--font-size-l);
    line-height: var(--line-height-l);
    letter-spacing: var(--letter-spacing-l);
    margin: 0;
    font-weight: normal;
    margin: 0 0px 40px;
  }
  .old .main h3 {
    font-family: "Inter", Helvetica, "Helvetica Neue", Arial;
    font-weight: normal;
    font-size: var(--font-size-m);
    line-height: var(--line-height-m);
    letter-spacing: var(--letter-spacing-m);
    margin-bottom: 40px;
    margin-top: 0;
  }
}
@media (max-width: 767px) {
  .old .main h1,
  .old .main p {
    margin-bottom: calc(var(--section-margin) / 2);
  }
}
@media (max-width: 767px) {
  .old .main p,
  .old p {
    font-size: var(--font-size-s);
    line-height: var(--line-height-s);
    letter-spacing: var(--letter-spacing-s);
  }
}

.menu-burger {
  position: fixed;
  top: 20px;
  right: 32px;
  z-index: 500;
  width: 2.8125rem;
  height: 2.125rem;
  cursor: pointer;
  mix-blend-mode: difference;
}
.admin-bar .menu-burger {
  top: 32px;
}
.menu-burger.active {
  mix-blend-mode: normal;
}
@media (hover: hover) {
  .menu-burger:hover .menu-burger__bar--1 > svg {
    transform: translate(0, -5px);
  }
  .menu-burger:hover .menu-burger__bar--2 > svg {
    transform: translate(0, 5px);
  }
  .menu-burger.active:hover .menu-burger__bar--1 > svg {
    transform: translate(0, -10px);
  }
  .menu-burger.active:hover .menu-burger__bar--2 > svg {
    transform: translate(0, 10px);
  }
}
@media (min-width: 768px) {
  .menu-burger {
    top: 32px;
    right: 64px;
  }
}
.menu-burger__bar {
  transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
  position: absolute;
  width: 2.8125rem;
  height: 0.625rem;
  background: var(--black);
  background: var(--white);
}
.active .menu-burger__bar {
  background: var(--white);
  width: 3.75rem;
}
.menu-burger__bar--1 {
  top: 0;
}
.menu-burger__bar--2 {
  top: 1.4375rem;
}
.active .menu-burger__bar--1 {
  transform: translate(0, 0.625rem);
}
.active .menu-burger__bar--2 {
  transform: translate(0, -0.625rem);
}
@media (min-width: 1920px) {
  .menu-burger__bar.active svg path {
    fill: var(--white) !important;
  }
}
.menu-burger.reverse {
  mix-blend-mode: normal;
  filter: invert(1);
}
.menu-burger.reverse .menu-burger__bar {
  background: var(--black);
}

.background--dark svg path {
  fill: var(--white) !important;
}
.background--light svg path {
  fill: var(--black) !important;
}

.main-logo img {
  display: block;
  width: 5rem;
  opacity: 0;
  transition: opacity 0.2s ease-out;
  pointer-events: initial;
  position: absolute;
  z-index: 500;
}
@media (min-width: 768px) {
  .main-logo img {
    width: 9.5625rem;
  }
}
.main-logo .home-only {
  top: 35px;
  left: 35px;
  opacity: 0;
}
body.home .main-logo .home-only {
  opacity: 1;
}
.main-logo .active-only {
  position: fixed;
  top: 70px;
  left: 60px;
  width: 5.625rem;
  filter: invert(1);
}
body.home .main-logo.on-menu .home-only,
.main-logo.on-menu .home-only {
  opacity: 0;
  transition: opacity 0.2s ease-out;
}
.main-logo.on-menu .active-only {
  opacity: 1;
  transition: opacity 0.2s ease-out 0.25s;
}

.main-menu__container__overlay {
  position: fixed;
  right: 0;
  left: 0;
  top: 0;
  transform: translateY(-100%);
  background-color: rgba(0, 0, 0, 0.7);
  color: #fff;
  z-index: 450;
  text-align: left;
  padding: 6.25rem 1.25rem 1.875rem;
  width: 100%;
  transition: transform 0.4s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.main-menu__container__overlay-bg {
  opacity: 0;
  position: fixed;
  right: 0;
  left: 0;
  top: 0;
  bottom: 0;
  z-index: 400;
  background-color: rgba(0, 0, 0, 0);
  backdrop-filter: blur(10px);
  transition: opacity 0.4s cubic-bezier(0.215, 0.61, 0.355, 1);
  top: -100vh;
  pointer-events: none;
}
.main-menu__container.active .main-menu__container__overlay {
  transform: translateY(0%);
}
.main-menu__container.active .main-menu__container__overlay-bg {
  opacity: 1;
  top: 0;
  pointer-events: all;
}
.main-menu__filter-list {
  display: none;
}
.show-grid-container .main-menu__filter-list {
  display: block;
}
.main-menu__list {
  list-style-type: none;
  margin: 0;
  padding: 0;
  line-height: 1;
  text-align: right;
  padding: 9.375rem 0 0;
}
.show-grid-container .main-menu__list {
  display: none;
}
@media (min-width: 768px) {
  .main-menu__list {
    padding: 9.375rem 1.875rem 0;
  }
}
.main-menu__item {
  padding: 0;
  margin: 0;
  display: block;
  font-size: 4.6875rem;
  font-weight: 600;
  line-height: 1;
}
.main-menu__item sub {
  top: -0.25em;
  bottom: auto;
}
.main-menu__item:before {
  display: none;
}
.main-menu__item--two-line {
  font-size: 2.5rem;
  line-height: 1;
}
.main-menu__container .filter-menu-item, .main-menu__link {
  text-decoration: none;
  color: var(--white);
  transition: all 0.3s ease-out;
  position: relative;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
}
@media (hover: hover) {
  .main-menu__container .filter-menu-item:hover, .main-menu__link:hover {
    color: var(--middle-grey);
  }
}
@media (max-width: 1023px) {
  .main-menu__container .filter-menu-item, .main-menu__link {
    display: block;
  }
}
.main-menu__container .filter-menu-item.active {
  color: var(--middle-grey);
}

body.headless .menu-burger path {
  fill: var(--black);
}
body.headless .menu-burger.active path {
  fill: var(--white);
}
body.headless .main-logo path {
  fill: var(--black);
}
body.headless .main-logo.on-menu path {
  fill: var(--white);
}

@media (min-width: 1024px) {
  .main-menu__container__overlay {
    padding: 1.5625rem 0 3.125rem 3.125rem;
    font-size: 3.125rem;
  }
  .main-menu__container .filter-menu-item,
  .main-menu__item {
    line-height: 1;
  }
}
@media (max-width: 1023px) {
  .main-menu__container .filter-menu-item,
  .main-menu__item {
    line-height: 1.1;
    padding: 0;
    font-size: var(--font-size-l);
  }
  .main-menu__item--two-line {
    font-size: 1.25rem;
    line-height: 1;
  }
  .grid-desktop {
    left: 0;
    opacity: 0.1;
    z-index: 1200;
    margin: 0 1.25rem;
    width: 100%;
    border-left: 1px solid #777;
    border-right: 1px solid #777;
  }
  .grid-desktop.off {
    opacity: 0;
  }
  .grid-desktop__col {
    display: none;
  }
}
@media (max-width: 349px) {
  .main-menu__container .filter-menu-item,
  .main-menu__item {
    font-size: var(--font-size-xl);
  }
}
.phc-menu {
  position: fixed;
  right: 0;
  bottom: calc(1.25 * var(--phc-root));
  left: 0;
  z-index: 100;
  display: flex;
  justify-content: center;
  padding: 0 calc(1.25 * var(--phc-root));
  pointer-events: none;
}
.phc-menu__bar {
  pointer-events: auto;
  position: relative;
  width: 100%;
  max-width: var(--phc-page-width);
  height: calc(4.375 * var(--phc-root));
  display: block;
  overflow: hidden;
  border-radius: calc(2.1875 * var(--phc-root));
  transform: translateX(0);
  transition: width 0.4s ease, max-width 0.4s ease, transform 0.4s ease;
}
.phc-menu .phc-glass-canvas {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0;
  width: 100%;
  height: 100%;
  border-radius: inherit;
  pointer-events: none;
}
.phc-menu__inner {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  gap: calc(1 * var(--phc-root));
  width: 100%;
  height: 100%;
  padding: 0 calc(1 * var(--phc-root));
}
.phc-menu__logo {
  flex: 0 0 auto;
  width: calc(2 * var(--phc-root));
  height: calc(2 * var(--phc-root));
  padding: 0;
  border: 0;
  background-color: var(--phc-menu-fg);
  mask: url("../images/h-logo.svg") center/contain no-repeat;
  -webkit-mask: url("../images/h-logo.svg") center/contain no-repeat;
  cursor: pointer;
}
.phc-menu__item {
  flex: 1 0 0;
  min-width: 0;
  color: var(--phc-menu-fg);
  text-align: center;
  text-decoration: none;
  cursor: pointer;
}
.phc-menu__item.active {
  color: var(--phc-menu-fg-active);
}
@media (hover: hover) {
  .phc-menu__item:hover {
    color: var(--phc-menu-fg-active);
  }
}
.phc-menu__linkedin {
  flex: 0 0 auto;
  width: calc(2.5 * var(--phc-root));
  height: calc(2.5 * var(--phc-root));
}
.phc-menu__linkedin img {
  display: block;
  width: 100%;
  height: 100%;
}

.phc-menu[data-glass=webgl] .phc-menu__bar,
.phc-menu[data-glass=plain] .phc-menu__bar {
  background-color: var(--phc-menu-bg-fallback);
  box-shadow: inset 1px 1px 0 rgba(255, 255, 255, 0.55), inset -1px -1px 0 rgba(0, 0, 0, 0.25);
}

.phc-menu[data-glass=webgl].phc-menu--glass-ready .phc-menu__bar {
  background-color: transparent;
}

.phc-menu--min .phc-menu__bar {
  width: calc(4.375 * var(--phc-root));
  max-width: calc(4.375 * var(--phc-root));
  transform: translateX(var(--phc-menu-shift, 0px));
}
.phc-menu--min .phc-menu__inner {
  padding: 0;
  justify-content: center;
}
.phc-menu--min .phc-menu__item,
.phc-menu--min .phc-menu__linkedin {
  display: none;
}

@media (max-width: 767px) {
  .phc-menu__logo, .phc-menu__linkedin {
    display: none;
  }
  .phc-menu__bar {
    height: calc(3.25 * var(--phc-root));
    border-radius: calc(1.625 * var(--phc-root));
  }
  .phc-menu__inner {
    gap: calc(0.5 * var(--phc-root));
    padding: 0 calc(0.5 * var(--phc-root));
  }
  .phc-menu__item {
    flex: 1 1 auto;
    white-space: nowrap;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    display: flex;
    align-items: center;
    justify-content: center;
    align-self: stretch;
  }
  .phc-menu--min .phc-menu__bar {
    width: calc(3.25 * var(--phc-root));
    max-width: calc(3.25 * var(--phc-root));
  }
  .phc-menu .phc-menu__item {
    font-size: calc(var(--phc-menu-item-size, 12) / 16 * var(--phc-root));
    line-height: 1.2;
  }
}
.footer {
  background: var(--black);
  padding: 3.125rem 2rem 2rem;
}
@media (min-width: 768px) {
  .footer {
    padding: 3.125rem 2.8125rem 2rem;
  }
}
@media (min-width: 768px) {
  .footer__inner {
    max-width: 50%;
    margin-left: auto;
  }
}
.footer p {
  color: var(--white);
  margin-bottom: 1.125rem;
  font-weight: 600;
  line-height: 1;
}
.footer p:last-child {
  margin-bottom: 0;
}
.footer a {
  color: var(--white);
}
.footer__logo {
  filter: invert(1);
}
.footer__logo__img {
  max-width: 7rem;
}
.footer__logo {
  margin-bottom: 4.375rem;
}
@media (max-width: 767px) {
  .footer__logo {
    display: flex;
    justify-content: center;
    margin-bottom: 2.5rem;
  }
}
.footer__wysiwyg {
  margin-top: 1.5rem;
}
.footer__wysiwyg:last-child {
  margin-top: 2rem;
}
@media (min-width: 768px) {
  .footer__wysiwyg {
    margin-top: 2.8125rem;
  }
  .footer__wysiwyg:last-child {
    margin-top: 5.3125rem;
  }
}

.phc-footer {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: space-between;
  row-gap: 2.5rem;
  width: 100%;
  padding: 2.5rem;
  background-color: var(--phc-contrast-bg);
  color: var(--phc-contrast-fg);
}
.phc-footer__mark {
  display: none;
  flex: 0 0 100%;
  height: calc(5 * var(--phc-root));
  margin-bottom: 2.5rem;
  background-color: var(--phc-contrast-fg);
  mask: url("../images/h-logo.svg") center/contain no-repeat;
  -webkit-mask: url("../images/h-logo.svg") center/contain no-repeat;
}
.phc-footer__bio {
  display: flex;
  flex-direction: column;
  flex: 0 1 39.3125rem;
  gap: 0.625rem;
  min-width: 0;
}
.phc-footer__bio p {
  margin: 0;
}
.phc-footer__linkedin {
  flex: 0 0 auto;
  width: 3.375rem;
  height: 3.375rem;
}
.phc-footer__linkedin img {
  display: block;
  width: 100%;
  height: 100%;
}
.phc-footer__links {
  display: flex;
  flex: 0 0 auto;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.625rem;
}
.phc-footer__link {
  color: inherit;
  text-decoration: none;
}
@media (hover: hover) {
  .phc-footer__link:hover {
    color: inherit;
  }
}
.phc-footer__copyright {
  flex: 1 0 100%;
  margin: 0;
  color: var(--phc-contrast-muted);
}

.phc-has-menu .phc-footer {
  padding-bottom: 11rem;
}

@media (max-width: 767px) {
  .phc-footer {
    padding: 1.25rem;
  }
  .phc-footer__mark {
    display: block;
  }
  .phc-footer__bio {
    flex-basis: 100%;
  }
  .phc-has-menu .phc-footer {
    padding-bottom: 16rem;
  }
}
[type=text], [type=password], [type=date], [type=datetime], [type=datetime-local], [type=month], [type=week], [type=email], [type=number], [type=search], [type=tel], [type=time], [type=url], [type=color],
input,
textarea {
  display: block;
  box-sizing: border-box;
  margin-bottom: 16px;
  font-size: 1.6rem !important;
  padding: 5px 0;
  border: none;
  border-radius: 0;
  background-color: transparent;
  box-shadow: none;
  border-bottom: 1px solid var(--black);
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  line-height: 1.2;
  transition: all 0.25s ease-out;
}
[type=text]:focus, [type=password]:focus, [type=date]:focus, [type=datetime]:focus, [type=datetime-local]:focus, [type=month]:focus, [type=week]:focus, [type=email]:focus, [type=number]:focus, [type=search]:focus, [type=tel]:focus, [type=time]:focus, [type=url]:focus, [type=color]:focus,
input:focus,
textarea:focus {
  outline: 0;
  border: none;
  background-color: transparent;
  box-shadow: none;
}

textarea {
  max-width: 100%;
  resize: none;
}
textarea[rows] {
  height: auto;
}

input:disabled,
input[readonly],
textarea[readonly] {
  cursor: not-allowed;
}

[type=submit],
[type=button] {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

input[type=search] {
  box-sizing: border-box;
}

[type=number] {
  -moz-appearance: textfield;
}
[type=number]::-webkit-inner-spin-button, [type=number]::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

label {
  font-size: 1.2rem;
  text-transform: uppercase;
}

.button {
  display: block;
  background: var(--middle-grey);
  color: var(--white);
  padding: 20px;
  font-weight: 900;
  outline: 0;
  text-decoration: none;
}
.button:hover, .button:active {
  outline: 0;
}
.button {
  transition: all 0.2s ease-out;
  cursor: pointer;
}
@media (min-width: 1024px) {
  .button {
    font-size: var(--font-size-s);
  }
}
.phc-block {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 2.5rem;
  width: 100%;
  padding: 2.5rem;
  color: var(--phc-fg);
}
.phc-block__row {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  gap: 1.25rem;
  width: 100%;
}
.phc-block__label {
  flex: 0 0 auto;
  min-width: 26.25rem;
  max-width: 26.25rem;
}
.phc-block__en {
  flex: 1 0 0;
  min-width: 28.125rem;
}
.phc-block__jp {
  flex: 1 0 0;
  min-width: 28.125rem;
}
.phc-block__title {
  flex: 1 0 0;
  min-width: 25rem;
  max-width: calc(100% - 20.625rem);
  margin: 0;
}
.phc-block__figure {
  display: flex;
  flex: 1 0 0;
  flex-direction: column;
  gap: 1.25rem;
  min-width: 25rem;
  max-width: 28.125rem;
}
.phc-block__figure-value {
  margin: 0;
}
.phc-block__figure-caption p {
  margin: 0;
}
.phc-block__label--muted {
  color: var(--phc-muted);
}
.phc-block__intro {
  flex: 1 0 0;
  min-width: 33.125rem;
}
.phc-block__intro--jp {
  flex-basis: 100%;
  margin-left: 27.5rem;
  max-width: calc(100% - 27.5rem);
}
.phc-block__link {
  display: inline-flex;
  align-items: center;
  gap: 0.625rem;
  color: inherit;
  text-decoration: none;
}
.phc-block__link img {
  display: block;
  width: 2.5rem;
  height: 2.5rem;
}
.phc-block__detail {
  flex: 1 0 0;
  min-width: 19.375rem;
}
.phc-block__detail p {
  margin: 0;
}
.phc-block__label > :last-child, .phc-block__en > :last-child, .phc-block__jp > :last-child {
  margin-bottom: 0;
}
.phc-block__rule {
  width: 100%;
  margin: 0.625rem 0 0;
  border: 0;
  border-top: 1px solid var(--phc-rule);
}
.phc-block__rule--gray {
  border-top-color: var(--phc-gray);
}
.phc-block__rule--white {
  border-top-color: var(--phc-white-af);
}
.phc-block__rule--black {
  border-top-color: var(--phc-black-af);
}

@media (max-width: 767px) {
  .phc-block {
    padding: 1.25rem;
    gap: 1.25rem;
  }
  .phc-block__title, .phc-block__figure, .phc-block__detail, .phc-block__label, .phc-block__en, .phc-block__jp, .phc-block__intro {
    flex: 1 1 100%;
    min-width: 100%;
    max-width: 100%;
  }
  .phc-block__intro--jp {
    margin-left: 0;
  }
}
.phc-block--experience,
.phc-block--profile-intro {
  gap: 1.25rem;
}

.phc-block__row--entry {
  row-gap: 0.25rem;
}

.phc-block--divider {
  padding-top: 0;
  padding-bottom: 0;
}
.phc-block--divider .phc-block__rule {
  margin-bottom: 0.625rem;
}

.phc-block--details {
  gap: 1.25rem;
  padding-top: 0;
}

.phc-back {
  width: 100%;
  padding: 2.5rem;
  color: var(--phc-fg);
}
.phc-back__link {
  display: inline-block;
  color: var(--phc-fg);
  text-decoration: none;
}
@media (hover: hover) {
  .phc-back__link:hover {
    color: var(--phc-fg);
  }
}

.phc-back--float {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 10;
  width: auto;
}

@media (max-width: 767px) {
  .phc-back {
    padding: 1.25rem;
  }
}
.phc-arrow {
  display: inline-block;
  transition: transform 0.2s ease-out;
}

@media (hover: hover) {
  a:hover .phc-arrow {
    transform: translateX(0.375rem);
  }
  a:hover .phc-arrow--back {
    transform: translateX(-0.375rem);
  }
}
@media (prefers-reduced-motion: reduce) {
  .phc-arrow {
    transition: none;
  }
}
.phc-related {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  gap: 1.25rem;
  width: 100%;
  padding: 2.5rem;
  background-color: var(--phc-contrast-bg);
  color: var(--phc-contrast-fg);
}
.phc-related__heading {
  width: 100%;
  margin: 0;
}
.phc-related__card {
  position: relative;
  display: flex;
  flex: 1 0 0;
  align-items: flex-end;
  aspect-ratio: 1440/720;
  min-width: 27.5rem;
  min-height: 13.75rem;
  padding: 1.25rem;
  overflow: hidden;
}
.phc-related__image {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.phc-related__caption {
  position: relative;
  margin: 0;
  color: var(--phc-white-af);
}
.phc-related__client {
  display: block;
}

@media (max-width: 767px) {
  .phc-related {
    padding: 1.25rem;
  }
  .phc-related__card {
    flex: 1 1 100%;
    min-width: 100%;
  }
}
.intro-section-container {
  display: block;
  max-width: var(--site-width);
  margin: 0 auto;
}

.intro-section {
  max-width: var(--site-width);
  display: block;
  min-height: calc((var(--site-width)) / 3);
  padding: 40px 0 65px;
  display: flex;
  justify-content: flex-start;
}
.intro-section__left-col {
  width: var(--col-4);
  margin-right: var(--col-1);
  margin-left: var(--col-1);
  padding: 0;
}
.intro-section__right-col {
  width: var(--col-5);
  margin-right: var(--col-1);
}
.intro-section__h1 {
  margin-top: 0;
  margin-bottom: 40px;
}
.intro-section__text {
  font-family: "Inter", Helvetica, "Helvetica Neue", Arial;
  font-weight: normal;
  font-size: var(--font-size-l);
  line-height: var(--line-height-l);
  letter-spacing: var(--letter-spacing-l);
  margin-bottom: var(--section-margin);
}
.intro-section__call {
  font-family: "Inter", Helvetica, "Helvetica Neue", Arial;
  font-weight: normal;
  font-size: var(--font-size-m);
  line-height: var(--line-height-m);
  letter-spacing: var(--letter-spacing-m);
  color: var(--middle-grey);
  display: inline-block;
  margin-bottom: 50;
}
.intro-section__call a {
  color: var(--middle-grey);
  text-decoration: none;
}
@media (hover: hover) {
  .intro-section__call:hover .intro-section__arrow {
    margin-left: 20px;
  }
}

.intro-section__arrow {
  display: inline-block;
  transition: margin-left 0.2s ease-out;
  margin-left: 10px;
}

.arrow-sliding-right {
  display: inline;
  transition: margin 0.2s ease-out;
}

.flow-block {
  background: #F1F1F1;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
  display: none;
  opacity: 0;
  transition: opacity 0.7s;
  overflow: hidden;
}
.flow-block .arrow-sliding-right {
  margin-left: 0px;
  margin-right: 0.5rem;
}
@media (hover: hover) {
  .flow-block:hover .arrow-sliding-right {
    margin-left: 0.5rem;
    margin-right: 0px;
  }
}
.flow-block--no-link .arrow-sliding-right {
  display: none;
}

.intro-section__text--middle-grey {
  color: var(--middle-grey);
}

@media (max-width: 1023px) {
  .intro-section {
    display: block;
    padding: 30px 1.25rem 0;
  }
  .intro-section__left-col {
    width: 100%;
    margin: 0;
  }
  .intro-section__right-col {
    width: 100%;
    padding-bottom: var(--section-margin);
  }
  .intro-section__h1 {
    font-size: var(--font-size-l);
    line-height: var(--line-height-l);
    letter-spacing: var(--letter-spacing-l);
    margin-left: 0;
    padding-left: 0;
  }
  .intro-section__text {
    font-size: var(--font-size-l);
    line-height: var(--line-height-l);
    letter-spacing: var(--letter-spacing-l);
    margin-bottom: calc(var(--section-margin) / 2);
  }
  .intro-section__call {
    font-size: var(--font-size-m);
    line-height: var(--line-height-m);
    letter-spacing: var(--letter-spacing-m);
  }
}
@media (max-width: 767px) {
  .intro-section {
    display: block;
    padding-top: 0;
  }
}
.section-wrapper--50 {
  width: 50%;
}

.article-paragraph-block--cols {
  display: flex;
  flex-direction: row;
}
.article-paragraph-block--cols img {
  width: 100%;
}
.article-paragraph-block--cols .col {
  width: 100%;
}
.article-paragraph-block--cols .col--video {
  position: relative;
  overflow: hidden;
}
.article-paragraph-block--cols .col--video iframe {
  height: 101% !important;
}
@media (max-width: 767px) {
  .article-paragraph-block--cols--2 {
    display: block;
  }
}
@media (min-width: 768px) {
  .article-paragraph-block--cols--2 .col {
    width: 50%;
  }
}
@media (min-width: 768px) {
  .article-paragraph-block--cols--2.article-paragraph-block--two-col-style-2-1 .col:first-child {
    width: 66.6666666667%;
  }
  .article-paragraph-block--cols--2.article-paragraph-block--two-col-style-2-1 .col:last-child {
    width: 33.3333333333%;
  }
  .article-paragraph-block--cols--2.article-paragraph-block--two-col-style-2-1 .col--video:last-child iframe {
    top: 50% !important;
    left: 50% !important;
    width: 200% !important;
    height: 101% !important;
    transform: translate(-50%, -50%);
  }
  .article-paragraph-block--cols--2.article-paragraph-block--two-col-style-2-1 .col--image:last-child img {
    -o-object-fit: cover;
       object-fit: cover;
    height: 100%;
  }
  .article-paragraph-block--cols--2.article-paragraph-block--two-col-style-1-2 .col:first-child {
    width: 33.3333333333%;
  }
  .article-paragraph-block--cols--2.article-paragraph-block--two-col-style-1-2 .col:last-child {
    width: 66.6666666667%;
  }
  .article-paragraph-block--cols--2.article-paragraph-block--two-col-style-1-2 .col--video:first-child iframe {
    top: 50% !important;
    left: 50% !important;
    width: 200% !important;
    height: 101% !important;
    transform: translate(-50%, -50%);
  }
  .article-paragraph-block--cols--2.article-paragraph-block--two-col-style-1-2 .col--image:first-child img {
    -o-object-fit: cover;
       object-fit: cover;
    height: 100%;
  }
}
@media (max-width: 767px) {
  .article-paragraph-block--cols--3 {
    display: block;
  }
}
@media (min-width: 768px) {
  .article-paragraph-block--cols--3 .col {
    width: 50%;
  }
  .article-paragraph-block--cols--3 .col--video iframe {
    top: 50% !important;
    left: 50% !important;
    width: 200% !important;
    height: 101% !important;
    transform: translate(-50%, -50%);
  }
}
@media (max-width: 767px) {
  .article-paragraph-block--cols--4 {
    flex-flow: wrap;
  }
}
.article-paragraph-block--cols--4 .col {
  width: 50%;
}
@media (min-width: 768px) {
  .article-paragraph-block--cols--4 .col {
    width: 25%;
  }
}
@media (max-width: 767px) {
  .article-paragraph-block--cols--5 {
    display: block;
  }
}
@media (min-width: 768px) {
  .article-paragraph-block--cols--5 .col {
    width: 20%;
  }
}

.section-wrapper--template-2.section-wrapper--spacer {
  padding-top: 2.0833333333%;
}
.section-wrapper--template-2 .article-paragraph-block--cols {
  padding-left: 2.0833333333%;
  padding-right: 2.0833333333%;
}
@media (min-width: 768px) {
  .section-wrapper--template-2 .article-paragraph-block--cols .col {
    padding-left: 1.0416666667%;
    padding-right: 1.0416666667%;
  }
  .section-wrapper--template-2 .article-paragraph-block--cols .col:first-child {
    padding-left: 0;
  }
  .section-wrapper--template-2 .article-paragraph-block--cols .col:last-child {
    padding-right: 0;
  }
}
.section-wrapper--template-3.section-wrapper--spacer {
  padding-top: 4.1666666667%;
}
.section-wrapper--template-3 .article-paragraph-block--cols {
  padding-left: 4.1666666667%;
  padding-right: 4.1666666667%;
}
@media (min-width: 768px) {
  .section-wrapper--template-3 .article-paragraph-block--cols .col {
    padding-left: 2.0833333333%;
    padding-right: 2.0833333333%;
  }
  .section-wrapper--template-3 .article-paragraph-block--cols .col:first-child {
    padding-left: 0;
  }
  .section-wrapper--template-3 .article-paragraph-block--cols .col:last-child {
    padding-right: 0;
  }
}
.section-wrapper--template-4.section-wrapper--spacer {
  padding-top: 8.3333333333%;
}
.section-wrapper--template-4 .article-paragraph-block--cols {
  padding-left: 8.3333333333%;
  padding-right: 8.3333333333%;
}
@media (min-width: 768px) {
  .section-wrapper--template-4 .article-paragraph-block--cols .col {
    padding-left: 4.1666666667%;
    padding-right: 4.1666666667%;
  }
  .section-wrapper--template-4 .article-paragraph-block--cols .col--image {
    padding-left: 2.0833333333%;
    padding-right: 2.0833333333%;
  }
  .section-wrapper--template-4 .article-paragraph-block--cols .col:first-child {
    padding-left: 0;
  }
  .section-wrapper--template-4 .article-paragraph-block--cols .col:last-child {
    padding-right: 0;
  }
}

.paragraph-block {
  display: flex;
}

.paragraph-block__leftcol h5,
.paragraph-block__leftcol h4,
.paragraph-block__leftcol h3,
.paragraph-block__leftcol h2,
.paragraph-block__rightcol h5,
.paragraph-block__rightcol h4,
.paragraph-block__rightcol h3,
.paragraph-block__rightcol h2 {
  font-family: "Inter", Helvetica, "Helvetica Neue", Arial;
  font-weight: normal;
  font-size: var(--font-size-l);
  line-height: var(--line-height-l);
  letter-spacing: var(--letter-spacing-l);
  margin-bottom: 5px;
}
.paragraph-block__leftcol h5:first-child,
.paragraph-block__leftcol h4:first-child,
.paragraph-block__leftcol h3:first-child,
.paragraph-block__leftcol h2:first-child,
.paragraph-block__rightcol h5:first-child,
.paragraph-block__rightcol h4:first-child,
.paragraph-block__rightcol h3:first-child,
.paragraph-block__rightcol h2:first-child {
  margin-top: 0;
}

.paragraph-block__leftcol figure {
  margin: 0;
}
.paragraph-block__leftcol figure figcaption {
  margin-top: 10px;
}
.paragraph-block__leftcol figure figcaption, .paragraph-block__leftcol figure figcaption p {
  font-size: var(--font-size-s);
  line-height: var(--line-height-s);
  letter-spacing: var(--letter-spacing-s);
}
.paragraph-block__leftcol figure figcaption i {
  font-weight: normal;
  font-style: normal;
  color: var(--middle-grey);
}
.paragraph-block__leftcol figure figcaption b {
  font-weight: normal;
  font-style: normal;
  color: var(--middle-grey);
}
.section-wrapper--black .paragraph-block__leftcol h5,
.section-wrapper--black .paragraph-block__leftcol h4,
.section-wrapper--black .paragraph-block__leftcol h3,
.section-wrapper--black .paragraph-block__leftcol h2 {
  color: var(--white);
}
@media (min-width: 1024px) {
  .paragraph-block__leftcol {
    width: var(--col-3);
    margin-left: var(--col-1);
    padding-right: 30px;
    margin-bottom: 0px;
  }
}
@media (max-width: 767px) {
  .article-paragraph-block--paragraph_cols .paragraph-block__leftcol {
    margin-bottom: var(--section-margin);
  }
  .paragraph-block__leftcol--number_field {
    margin-bottom: var(--section-margin);
  }
}
.paragraph-block__leftcol img {
  width: 100%;
  height: auto;
}

.paragraph-block__rightcol h5,
.paragraph-block__rightcol h4,
.paragraph-block__rightcol h2 {
  margin-bottom: 10px;
}
.paragraph-block__rightcol h4,
.paragraph-block__rightcol h3 {
  font-size: var(--font-size-m);
  line-height: var(--line-height-m);
  letter-spacing: var(--letter-spacing-m);
}
.paragraph-block__rightcol h3 {
  margin-bottom: 20px;
}
.paragraph-block__rightcol h4 {
  text-decoration: underline;
}
@media (min-width: 1024px) {
  .paragraph-block__rightcol {
    width: var(--col-7);
  }
}
.paragraph-block__rightcol > p:last-child {
  margin-bottom: 0;
}
.paragraph-block__rightcol img {
  width: 100%;
  height: auto;
}
.paragraph-block__rightcol .large-numbers-wrapper {
  display: flex;
  justify-content: space-around;
}
@media (max-width: 767px) {
  .paragraph-block__rightcol .large-numbers-wrapper {
    margin-bottom: -15px;
  }
}
.paragraph-block__rightcol .large-number-wrapper {
  display: block;
}
@media (min-width: 1024px) {
  .paragraph-block__rightcol .large-number-wrapper {
    width: 50%;
  }
}
@media (max-width: 767px) {
  .paragraph-block__rightcol .large-number-wrapper {
    margin: 0;
  }
}

.paragraph-block__rightcol--image {
  margin-bottom: var(--section-margin);
}

.large-number {
  display: block;
  padding: 0;
  margin: 0;
  font-family: "chap-light";
  font-size: 230px;
  line-height: 230px;
  color: var(--middle-grey);
  vertical-align: bottom;
  letter-spacing: -17px;
  margin: 0 0 8px;
  position: relative;
  top: -20px;
}
.is-mac .large-number {
  position: static;
  top: auto;
}
@media (max-width: 1023px) {
  .large-number {
    margin-top: 0;
  }
}
.background-red .large-number, .section-wrapper--red .large-number {
  color: var(--white);
}
.large-number--number {
  font-variant-numeric: lining-nums;
}
.large-number--percent {
  font-size: 120px;
  line-height: 153px;
  vertical-align: bottom;
}
.is-mac .large-number--percent {
  line-height: 176px;
}
.large-number__caption, .large-number__caption p {
  font-size: var(--font-size-s);
  line-height: var(--line-height-s);
  letter-spacing: var(--letter-spacing-s);
}
.large-number__caption {
  display: block;
  margin-top: -45px;
}
.large-number__caption i {
  font-weight: normal;
  font-style: normal;
  color: var(--middle-grey);
}
.large-number__caption b {
  font-weight: normal;
  font-style: normal;
  color: var(--middle-grey);
}
@media (max-width: 767px) {
  .large-number {
    font-size: 115px;
    line-height: 115px;
    letter-spacing: -7px;
    text-align: right;
    display: block;
  }
  .large-number--percent {
    font-size: 60px;
    line-height: 74px;
  }
  .is-mac .large-number--percent {
    line-height: 88px;
  }
  .large-number__caption {
    margin-top: 0;
    position: relative;
    top: -30px;
    padding-left: 10%;
    text-align: right;
    font-size: var(--font-size-s);
    line-height: var(--line-height-s);
    letter-spacing: var(--letter-spacing-s);
  }
  .is-mac .large-number__caption {
    top: -24px;
  }
  .large-number__caption br {
    display: none;
  }
  .large-number-wrapper:first-child .large-number {
    text-align: left;
  }
  .large-number-wrapper:first-child .large-number__caption {
    padding-left: 0;
    padding-right: 10%;
    text-align: left;
  }
}
@media (max-width: 349px) {
  .large-number {
    font-size: 85px;
    line-height: 102px;
  }
}

.article-main.red {
  background-color: #dd4925;
  padding: 20px 0;
}

.intro-section-container.red {
  background-color: #dd4925 !important;
  min-height: auto;
}

.table-plain__cell {
  padding: 0px 30px 35px 0;
  font-size: var(--font-size-m);
  line-height: var(--line-height-m);
  letter-spacing: var(--letter-spacing-m);
  vertical-align: top;
  padding: 20px 20px;
}
@media (max-width: 767px) {
  .table-plain__cell {
    font-size: var(--font-size-s);
    line-height: var(--line-height-s);
    letter-spacing: var(--letter-spacing-s);
  }
}

.table-plain--row-separators .table-plain__cell {
  border-bottom: 2px solid var(--black);
}
@media (min-width: 769px) {
  .table-plain--row-separators .table-plain__cell:last-child {
    border-bottom: none;
  }
}
.background-black .table-plain--row-separators .table-plain__cell {
  border-color: var(--white);
}
@media (max-width: 767px) {
  .table-plain--row-separators .table-plain__col:nth-last-child(-n+2) .table-plain__cell:last-child() {
    border-bottom: none;
  }
}

.article-image {
  width: 100%;
  position: relative;
}
.article-image img {
  width: 100%;
  height: auto;
  opacity: 0;
  transition: opacity 0.38s ease-out 0.1s, transform 3s cubic-bezier(0.215, 0.61, 0.355, 1) 0.1s;
}
.article-image img.lazyloaded {
  opacity: 1;
}
.article-image figure {
  margin: 0;
}
.article-image figure figcaption {
  font-size: var(--font-size-s);
  line-height: var(--line-height-s);
  width: 66%;
  margin-top: 0.5rem;
}
@media (max-width: 767px) {
  .article-image figure figcaption {
    width: 100%;
    margin: 0.5rem 20px 0;
  }
}

.article-image.article-image--margin-bottom {
  margin-bottom: var(--section-margin);
}
.article-image.article-image--margin-bottom .background:not(.background-white) {
  margin-bottom: 0;
}
@media (max-width: 767px) {
  .article-image.article-image--margin-bottom {
    margin-bottom: 0;
  }
}

.article-image-callout {
  font-size: var(--font-size-m);
  line-height: var(--line-height-m);
  letter-spacing: var(--letter-spacing-m);
  position: absolute;
  color: var(--white);
  top: 30px;
  left: 30px;
  z-index: 300;
  display: inline-block;
}

.article-image-callout--bottom {
  top: auto;
  bottom: 30px;
  top: auto;
  bottom: 24px;
  line-height: var(--line-height-m);
}

.article-image--left {
  padding-right: calc((100vw - (100vw - 100%) - var(--site-width)) / 2 + var(--site-width) / 12);
}
.article-image--left .article-image-callout {
  left: calc((100vw - (100vw - 100%) - var(--site-width)) / 2 + var(--col-1));
  padding-right: calc((100vw - (100vw - 100%) - var(--site-width)) / 2 + var(--site-width) / 12 + 30px);
}

.article-image--right {
  padding-left: calc((100vw - (100vw - 100%) - var(--site-width)) / 2 + var(--site-width) / 12);
}
.article-image--right .article-image-callout {
  left: calc((100vw - (100vw - 100%) - var(--site-width)) / 2 + var(--col-1) + 30px);
}

.article-image--center {
  padding-left: calc((100vw - (100vw - 100%) - var(--site-width)) / 2);
  padding-right: calc((100vw - (100vw - 100%) - var(--site-width)) / 2);
}
.article-image--center .article-image-callout {
  padding-left: calc((100vw - (100vw - 100%) - var(--site-width)) / 2);
  padding-right: calc((100vw - (100vw - 100%) - var(--site-width)) / 2 + 30px);
}

.article-image--text-column {
  padding-left: var(--col-3);
  padding-right: var(--col-1);
}
.article-image--text-column .article-image-callout {
  left: calc((100vw - (100vw - 100%) - var(--site-width)) / 2 + var(--col-3) + 30px);
  right: calc(30px + var(--col-1));
}

.article-image--text-column-wide {
  padding-left: var(--col-1);
  padding-right: var(--col-1);
}
.article-image--text-column-wide .article-image-callout {
  left: calc((100vw - (100vw - 100%) - var(--site-width)) / 2 + var(--col-1) + 30px);
  right: calc(30px + var(--col-1));
}

.article-image--slim-margin {
  padding-left: 30px;
  padding-right: 30px;
}
.article-image--slim-margin .article-image-callout {
  left: 60px;
}

.article-image--margin {
  padding-left: var(--col-1);
  padding-right: var(--col-1);
}
.article-image--margin .article-image-callout {
  left: calc(var(--col-1) + 30px);
}

@media (max-width: 767px) {
  .article-image .article-image-callout {
    left: calc((100vw - (100vw - 100%) - var(--site-width)) / 2 + 20px);
    font-size: var(--font-size-s);
    line-height: var(--line-height-s);
    letter-spacing: var(--letter-spacing-s);
  }
}
.article-slide {
  display: flex;
  width: 100%;
}
.article-slide.alt {
  flex-direction: row-reverse;
}
.article-slide__text {
  margin-left: var(--col-1);
  padding-right: 30px;
  width: var(--col-3);
  position: relative;
}
.article-slide__text h2 {
  margin-top: 0;
  margin-bottom: 32px;
  font-size: var(--font-size-m);
  line-height: var(--line-height-m);
  letter-spacing: var(--letter-spacing-m);
}
.article-slide__text p {
  font-size: var(--font-size-s);
  line-height: var(--line-height-s);
  letter-spacing: var(--letter-spacing-s);
}
.article-slide__p--bottom {
  position: absolute;
  bottom: 0;
  left: 0;
  margin-bottom: 0;
}
.background-cappuccino .article-slide__p--bottom a {
  color: var(--black);
}
.article-slide__image {
  width: var(--col-8);
  height: 100%;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  padding-bottom: 37.5%;
}
.article-slide__image-mobile {
  display: none;
  max-width: 100%;
  margin-bottom: 15px;
  margin-top: -15px;
}

@media (max-width: 1023px) {
  .article-slide {
    display: block;
    padding: 0 30px;
  }
}
@media (max-width: 1023px) and (max-width: 767px) {
  .article-slide {
    padding: 0 1.25rem;
  }
}
@media (max-width: 1023px) {
  .article-slide.alt {
    flex-direction: row;
  }
  .article-slide__text {
    margin-left: 0;
    margin-bottom: 30px;
    width: 100%;
    padding-right: 0px;
  }
  .article-slide__p--bottom {
    position: relative;
    bottom: 0;
    left: 0;
    margin-bottom: 0;
  }
  .article-slide__image {
    display: none;
  }
  .flickity-page-dots {
    width: auto;
    position: relative;
    bottom: -15px;
    text-align: center;
    margin-left: 0;
  }
  .flickity-page-dots .dot {
    background-color: var(--gray);
    margin-left: 10px;
    margin-right: 10px;
    padding: 0;
  }
}
@media (max-width: 1023px) {
  .article-slide__image-mobile {
    display: block;
    height: auto;
    width: 100%;
  }
  .article-slide__image {
    display: none;
  }
}
.vimeo-player > div {
  position: static !important;
}

.content-grid {
  background: var(--extension-content-grid);
}

.wrapper-grid-filter {
  width: 100%;
  position: sticky;
  top: -1px;
  z-index: 300;
}

.grid-filter-container {
  max-width: var(--site-width);
  margin: 0 auto;
}

.grid-filter__line-container {
  padding: 32px 12rem 32px 40px;
  margin: 0 auto;
  background-repeat: no-repeat;
  background-color: rgba(0, 0, 0, 0.66);
  backdrop-filter: blur(8px);
  font-size: 2.1875rem;
  line-height: 1;
  letter-spacing: 1;
  font-weight: 600;
  display: flex;
  justify-content: space-between;
}
.grid-filter__line-container a {
  padding-left: 0ex;
  cursor: pointer;
  display: inline;
  color: var(--middle-grey);
  text-decoration: none;
}
@media (hover: hover) {
  .grid-filter__line-container a:hover {
    text-decoration: underline;
  }
}
.grid-filter__line-container a.active {
  color: var(--white);
}
@media (max-width: 1279px) {
  .grid-filter__line-container {
    font-size: var(--font-size-m);
    letter-spacing: var(--letter-spacing-m);
  }
}
@media (max-width: 350px) {
  .grid-filter__line-container {
    font-size: var(--font-size-m);
    line-height: var(--line-height-m);
    letter-spacing: var(--letter-spacing-m);
  }
}

.grid-filter-container.sticky {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
}

.grid-filter__select-container {
  display: none;
}

.grid-toggle {
  position: fixed;
  bottom: 0px;
  left: 3px;
  font-size: var(--font-size-s);
  letter-spacing: var(--letter-spacing-s);
  cursor: pointer;
  display: none;
}

.related-articles-container {
  display: block;
  font-family: "Inter", Helvetica, "Helvetica Neue", Arial;
  font-size: var(--font-size-l);
  line-height: var(--line-height-l);
  letter-spacing: var(--letter-spacing-l);
}
.related-articles-container--heading {
  height: 106px;
  padding-top: 40px;
  padding: 40px 18px;
  margin-bottom: 0;
}
@media (max-width: 1023px) {
  .related-articles-container--heading {
    padding: 18px 20px 18px;
    height: auto;
  }
}

.section-wrapper--related-articles-header .related-articles-container {
  margin-left: var(--col-1);
}

@media (min-width: 768px) {
  .section-wrapper--related-articles:not(.dont-hide-last-article) .flow-block:nth-child(4) {
    display: none;
  }
}
.section-wrapper--related-articles .flow-block.active:nth-child(7n+3) .flow-block-bg--square,
.section-wrapper--related-articles .flow-block .flow-block-bg {
  display: block;
}
@media (max-width: 767px) {
  .section-wrapper--related-articles .flow-block:nth-child(4) {
    display: inline-block;
  }
}

.flow-container {
  display: flex;
  flex-wrap: wrap;
  max-width: var(--site-width);
  margin: 0 auto;
}

.flow-block__video-container {
  pointer-events: none;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
}

@media (min-width: 768px) {
  .col-size-two-col .flow-block {
    width: 50% !important;
  }
  .col-size-two-col .flow-block.active .dummy {
    margin-top: 100% !important;
  }
  .col-size-three-col .flow-block {
    width: 33.333% !important;
  }
  .col-size-three-col .flow-block.active .dummy {
    margin-top: 100% !important;
  }
}
.flow-block-bg {
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  opacity: 0;
  transition: opacity 0.38s ease-out 0.1s, transform 3s cubic-bezier(0.215, 0.61, 0.355, 1) 0.1s;
}

.flow-block-bg--rectangle {
  display: none;
}

.flow-block-h2 {
  transform: translateY(100%);
  opacity: 0;
  z-index: 50;
  transition: opacity 1s ease-out 0.5s, transform 1s cubic-bezier(0.215, 0.61, 0.355, 1) 0.5s;
}
.image-lazyloaded .flow-block-h2 {
  transform: translateY(0%);
  opacity: 1;
}

.flow-block-bg.lazyloaded {
  opacity: 1;
}

.flow-block-category {
  display: none;
}
.flow-block-category.active {
  display: block;
}
.flow-block-category__page {
  display: none;
  height: 0;
}
.flow-block-category__page.active {
  display: flex;
  height: auto;
}

.flow-block-h2 {
  font-size: var(--font-size-l);
  line-height: var(--line-height-l);
  letter-spacing: var(--letter-spacing-l);
  font-weight: normal;
  color: #fff;
  display: block;
  padding: 40px;
  margin: 0;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0));
  background-repeat: no-repeat;
  background-size: cover;
  font-weight: 500;
  letter-spacing: -0.025em;
}
.shadow-1 .flow-block-h2 {
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0));
}
.shadow-2 .flow-block-h2 {
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0));
}
.shadow-3 .flow-block-h2 {
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.3), rgba(0, 0, 0, 0));
}
.shadow-4 .flow-block-h2 {
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.4), rgba(0, 0, 0, 0));
}
.shadow-5 .flow-block-h2 {
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.flow-block--bottom.shadow-1 .flow-block-h2 {
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.1));
}
.flow-block--bottom.shadow-2 .flow-block-h2 {
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.2));
}
.flow-block--bottom.shadow-3 .flow-block-h2 {
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.3));
}
.flow-block--bottom.shadow-4 .flow-block-h2 {
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.4));
}
.flow-block--bottom.shadow-5 .flow-block-h2 {
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.5));
}
.flow-block--null .flow-block-h2 {
  top: auto;
  bottom: 0;
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0));
}
.flow-block--bottom .flow-block-h2 {
  top: auto;
  bottom: 0;
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0));
}

.flow-block.active {
  opacity: 1;
  display: inline-block;
  transition-delay: opacity 0.6s;
  width: 33.33%;
}
.flow-block.active .dummy {
  margin-top: 50%;
  margin-top: 100%;
}
.flow-block.active {
  width: 100%;
}
.flow-block.active .flow-block__video-container > div {
  padding: 100% 0 0 0 !important;
}
.flow-block.active .flow-block__video-container > div > iframe {
  width: 180% !important;
  transform: translateX(-50%) !important;
  left: 50% !important;
}
@media (min-width: 768px) {
  .flow-block.active {
    width: 50%;
  }
  .flow-block.active:nth-child(3n+1) {
    width: 100%;
  }
  .flow-block.active:nth-child(3n+1) .flow-block-bg--square {
    display: none;
  }
  .flow-block.active:nth-child(3n+1) .flow-block-bg--rectangle {
    display: block;
  }
  .flow-block.active:nth-child(3n+1) .dummy {
    margin-top: 50%;
  }
}

.load-more-container {
  max-width: var(--site-width);
  background-color: var(--load-more-background);
  margin: 0 auto;
  height: 100px;
  font-family: "Inter", Helvetica, "Helvetica Neue", Arial;
  font-size: var(--font-size-l);
  line-height: var(--line-height-l);
  letter-spacing: var(--letter-spacing-l);
  align-items: center;
  color: white;
  transition: all 0.4s;
  cursor: pointer;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}
@media (hover: hover) {
  .load-more-container:hover {
    color: #666;
  }
}

.load-more-button {
  text-align: center;
  width: 100%;
  height: 100%;
  padding-top: 30px;
}

@media (max-width: 1023px) {
  .grid-filter__line-container {
    display: none;
    position: relative;
  }
  .grid-filter__select-container {
    padding: 18px 20px;
    display: block;
    max-width: 100%;
    margin: 0 auto;
    width: 100%;
    font-family: "Inter", Helvetica, "Helvetica Neue", Arial;
    font-size: var(--font-size-m);
    letter-spacing: var(--letter-spacing-m);
    position: sticky;
    position: -webkit-sticky;
    top: 0;
    z-index: 300;
    background-color: rgba(0, 0, 0, 0.6);
    backdrop-filter: blur(8px);
  }
}
@media (max-width: 1023px) and (max-width: 349px) {
  .grid-filter__select-container {
    font-size: var(--font-size-m);
    line-height: var(--line-height-m);
    letter-spacing: var(--letter-spacing-m);
    height: 70px;
  }
}
@media (max-width: 1023px) and (min-width: 768px) {
  .grid-filter__select-container {
    padding-left: 30px;
  }
}
@media (max-width: 1023px) and (min-width: 1024px) {
  .grid-filter__select-container {
    padding-left: 40px;
  }
}
@media (max-width: 1023px) {
  .grid-filter__select {
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    background: transparent;
    pointer-events: none;
    border: 0;
    font-family: "Inter", Helvetica, "Helvetica Neue", Arial;
    font-size: var(--font-size-m);
    letter-spacing: var(--letter-spacing-m);
    padding-left: 0;
    color: var(--white);
    outline: none;
    cursor: pointer;
  }
}
@media (max-width: 1023px) and (max-width: 349px) {
  .grid-filter__select {
    font-size: var(--font-size-m);
    line-height: var(--line-height-m);
    letter-spacing: var(--letter-spacing-m);
  }
}
@media (max-width: 1023px) {
  .grid-filter__text__prefix {
    color: var(--middle-grey);
  }
  .wrapper.blur .grid-filter__text {
    pointer-events: none;
  }
  .grid-filter__option {
    -webkit-appearance: none;
    background: #fff;
    border: 0;
    color: var(--middle-grey);
    width: 100%;
  }
  .flow-block {
    padding: 0px;
  }
  .flow-block-h2 {
    font-size: var(--font-size-s);
    line-height: var(--line-height-s);
    letter-spacing: var(--letter-spacing-s);
    padding: 30px;
  }
  .article .flow-container {
    display: block;
  }
  .article .flow-block--1-3 {
    width: 100%;
    flex-grow: 3;
    margin-bottom: -30px;
    border: 30px solid black;
  }
  .article .flow-block-h2 {
    font-size: var(--font-size-m);
    line-height: var(--line-height-m);
    letter-spacing: var(--letter-spacing-m);
  }
  .related-articles-container {
    font-size: var(--font-size-m);
    letter-spacing: var(--letter-spacing-m);
    margin-left: 0;
    margin-right: 0;
    padding-left: 0;
    color: black;
    background-color: white;
  }
  .section-wrapper--related-articles-header {
    margin-bottom: 30px;
  }
  .section-wrapper--related-articles-header .related-articles-container {
    margin-left: 1.25rem;
  }
  .load-more-container {
    font-size: var(--font-size-m);
    letter-spacing: var(--letter-spacing-m);
  }
}
.hidden_tmp_select {
  display: none;
}

@media (max-width: 767px) {
  .flow-block-h2 {
    font-size: var(--font-size-s);
    line-height: var(--line-height-s);
    letter-spacing: var(--letter-spacing-s);
    padding: 20px;
  }
  .load-more-container {
    height: 75px;
  }
  .load-more-button {
    padding-top: 0;
    line-height: 75px;
    font-size: var(--font-size-m);
    letter-spacing: var(--letter-spacing-m);
  }
}
.content-grid--phc .flow-block,
.content-grid--phc .flow-block:nth-child(3n+1) {
  width: 100%;
}
@media (min-width: 768px) {
  .content-grid--phc .flow-block-category--everything .flow-block,
  .content-grid--phc .flow-block-category--everything .flow-block:nth-child(3n+1) {
    width: 50%;
  }
  .content-grid--phc .flow-block-category--everything .flow-block .flow-block-bg--square,
  .content-grid--phc .flow-block-category--everything .flow-block:nth-child(3n+1) .flow-block-bg--square {
    display: block;
  }
  .content-grid--phc .flow-block-category--everything .flow-block .flow-block-bg--rectangle,
  .content-grid--phc .flow-block-category--everything .flow-block:nth-child(3n+1) .flow-block-bg--rectangle {
    display: none;
  }
  .content-grid--phc .flow-block-category--everything .flow-block .dummy,
  .content-grid--phc .flow-block-category--everything .flow-block:nth-child(3n+1) .dummy {
    margin-top: 100%;
  }
  .content-grid--phc .flow-block-category:not(.flow-block-category--everything) .flow-block,
  .content-grid--phc .flow-block-category:not(.flow-block-category--everything) .flow-block:nth-child(3n+1) {
    width: 100%;
  }
  .content-grid--phc .flow-block-category:not(.flow-block-category--everything) .flow-block .flow-block-bg--square,
  .content-grid--phc .flow-block-category:not(.flow-block-category--everything) .flow-block:nth-child(3n+1) .flow-block-bg--square {
    display: none;
  }
  .content-grid--phc .flow-block-category:not(.flow-block-category--everything) .flow-block .flow-block-bg--rectangle,
  .content-grid--phc .flow-block-category:not(.flow-block-category--everything) .flow-block:nth-child(3n+1) .flow-block-bg--rectangle {
    display: block;
  }
  .content-grid--phc .flow-block-category:not(.flow-block-category--everything) .flow-block .dummy,
  .content-grid--phc .flow-block-category:not(.flow-block-category--everything) .flow-block:nth-child(3n+1) .dummy {
    margin-top: 50%;
  }
}
@media (max-width: 767px) {
  .content-grid--phc .flow-block-category--everything .flow-block .flow-block-bg--square,
  .content-grid--phc .flow-block-category--everything .flow-block:nth-child(3n+1) .flow-block-bg--square {
    display: none;
  }
  .content-grid--phc .flow-block-category--everything .flow-block .flow-block-bg--rectangle,
  .content-grid--phc .flow-block-category--everything .flow-block:nth-child(3n+1) .flow-block-bg--rectangle {
    display: block;
  }
  .content-grid--phc .flow-block-category--everything .flow-block .dummy,
  .content-grid--phc .flow-block-category--everything .flow-block:nth-child(3n+1) .dummy {
    margin-top: 50%;
  }
  .content-grid--phc .flow-block-category:not(.flow-block-category--everything) .flow-block .flow-block-bg--square,
  .content-grid--phc .flow-block-category:not(.flow-block-category--everything) .flow-block:nth-child(3n+1) .flow-block-bg--square {
    display: block;
  }
  .content-grid--phc .flow-block-category:not(.flow-block-category--everything) .flow-block .flow-block-bg--rectangle,
  .content-grid--phc .flow-block-category:not(.flow-block-category--everything) .flow-block:nth-child(3n+1) .flow-block-bg--rectangle {
    display: none;
  }
  .content-grid--phc .flow-block-category:not(.flow-block-category--everything) .flow-block .dummy,
  .content-grid--phc .flow-block-category:not(.flow-block-category--everything) .flow-block:nth-child(3n+1) .dummy {
    margin-top: 100%;
  }
}
.content-grid--phc .flow-block-h2 {
  padding: 1.25rem;
}

.wrapper-hero-slides {
  background-color: var(--extension-home-slides);
}

.hero-slides {
  position: relative;
  margin: 0 auto;
  max-width: var(--site-width);
  width: 100%;
  background-color: var(--black);
}
.hero-slides .plyr__controls {
  display: none;
}
.hero-slides-container {
  position: relative;
  width: 100%;
  background-color: var(--black);
  overflow: hidden;
}

.hero {
  width: 100%;
  position: relative;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  overflow: hidden;
  padding-bottom: calc((var(--site-width)) * 0.5625);
}
@media (max-width: 1023px) {
  .hero {
    padding-bottom: 0px;
  }
  .hero:before {
    display: block;
    content: "";
    padding-bottom: 56.25%;
    width: 0px;
  }
}
@media (max-width: 1023px) and (max-width: 767px) {
  .hero:before {
    padding-bottom: 118.5%;
  }
}
.hero--video {
  padding-bottom: 0;
}
a > .hero--video {
  pointer-events: none;
}
@media (max-width: 1023px) {
  .hero--video:before {
    padding-bottom: 0;
  }
}
.hero__caption {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
}

.hero-article__caption {
  position: absolute;
  left: 1.25rem;
  right: 1.25rem;
  bottom: 30px;
  color: var(--white);
  font-size: var(--font-size-l);
  line-height: var(--line-height-l);
  letter-spacing: var(--letter-spacing-l);
}
@media (min-width: 1024px) {
  .hero-article__caption {
    bottom: 40px;
    left: var(--col-1);
    right: var(--col-2);
  }
}
.hero-article__img {
  width: 100%;
  height: auto;
}

.hero-video__caption {
  position: absolute;
  left: 1.25rem;
  right: 1.25rem;
  bottom: 20px;
  color: var(--white);
  font-size: var(--font-size-m);
  line-height: var(--line-height-m);
  letter-spacing: var(--letter-spacing-m);
}
@media (max-width: 1023px) {
  .hero-video__caption {
    font-size: var(--font-size-s);
    line-height: var(--line-height-s);
    letter-spacing: var(--letter-spacing-s);
  }
  .hero-video__caption br {
    display: none;
  }
}
@media (min-width: 1024px) {
  .hero-video__caption {
    bottom: 40px;
    font-size: var(--font-size-l);
    line-height: var(--line-height-l);
    letter-spacing: var(--letter-spacing-l);
    left: var(--col-1);
    right: var(--col-1);
  }
}

.tagline {
  left: var(--col-1);
  right: var(--col-1);
}

.center-tagline .tagline {
  top: auto;
  bottom: 20px;
  left: 1.25rem;
}
@media (min-width: 768px) {
  .center-tagline .tagline {
    position: absolute;
    left: 50%;
    top: 50%;
    bottom: auto;
    width: var(--col-10);
    transform: translate(-50%, -50%);
    text-align: center;
  }
}

.bottom-tagline .tagline {
  top: auto;
  bottom: 20px;
  left: 1.25rem;
}
@media (min-width: 768px) {
  .bottom-tagline .tagline {
    bottom: 40px;
    left: var(--col-1);
  }
}

.top-tagline .tagline {
  top: auto;
  bottom: 20px;
  left: 1.25rem;
}
@media (min-width: 768px) {
  .top-tagline .tagline {
    top: 145px;
    left: var(--col-1);
  }
}

.hero-slide {
  position: absolute;
  z-index: 100;
  top: 0px;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  margin: auto;
  opacity: 0;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}
.hero-slide {
  transition: opacity 0.38s ease-out 0.1s, transform 3s cubic-bezier(0.215, 0.61, 0.355, 1) 0.1s;
}
.hero-slide.active {
  opacity: 1;
  z-index: 110;
}
.hero-slide__img {
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  width: 100%;
  height: 100%;
  display: block;
  opacity: 0;
  -o-object-fit: cover;
     object-fit: cover;
  position: absolute;
  transition: opacity 0.38s ease-out 0.1s, transform 3s cubic-bezier(0.215, 0.61, 0.355, 1) 0.1s;
}
.hero-slide__img.lazyloaded {
  opacity: 1;
}
.hero-slide__img--desktop {
  display: none;
}
@media (min-width: 768px) {
  .hero-slide__img {
    position: absolute;
    height: 100%;
  }
  .hero-slide__img--mobile {
    display: none;
  }
  .hero-slide__img--desktop {
    display: block;
  }
}

.hero--hasthumbnails .bottom-tagline .tagline {
  bottom: 44px;
}
@media (min-width: 768px) {
  .hero--hasthumbnails .bottom-tagline .tagline {
    bottom: 45px;
    left: 1.25rem;
  }
}
@media (min-width: 769px) {
  .hero--hasthumbnails .bottom-tagline .tagline {
    bottom: 80px;
    left: var(--col-1);
  }
}

.hero--hasthumbnails .top-tagline .tagline {
  bottom: 50px;
}

.hero--hasthumbnails .center-tagline .tagline {
  bottom: 50px;
}
@media (min-width: 768px) {
  .hero--hasthumbnails .center-tagline .tagline {
    bottom: auto;
    bottom: top;
  }
}

.hero-slide-link {
  display: inline-block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 199;
}
.hero-slide-link .tagline::after {
  content: "→";
  padding-left: 5px;
  padding-right: 15px;
  transition: all 0.2s ease-out;
}
.hero-slide-link .tagline:hover::after {
  padding-left: 15px;
  padding-right: 5px;
}

.tagline {
  display: inline-block;
  color: white;
  background-color: transparent;
  font-family: "Inter", Helvetica, "Helvetica Neue", Arial;
  font-size: var(--font-size-l);
  line-height: var(--line-height-l);
  letter-spacing: var(--letter-spacing-l);
  transition: height 1s;
  text-align: left;
  top: 0;
  left: 0;
  position: absolute;
}
@media (max-width: 1023px) {
  .tagline {
    font-size: var(--font-size-m);
    line-height: var(--line-height-m);
    letter-spacing: var(--letter-spacing-m);
  }
  .tagline-container {
    width: 100%;
    height: 89vh;
    max-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
  }
  .tagline {
    font-size: var(--font-size-m);
    line-height: var(--line-height-m);
    letter-spacing: var(--letter-spacing-m);
    text-align: left;
    left: 1.25rem;
  }
}

.slides-thumbnails {
  position: absolute;
  z-index: 150;
  bottom: 44px;
  left: 50%;
  left: 33.33%;
  right: 33.33%;
  display: none;
  justify-content: center;
  max-width: var(--col-4);
  min-height: 100px;
}
@media (min-width: 1024px) {
  .slides-thumbnails:hover .slides-thumbnail__img {
    bottom: 0;
  }
}

.hero--hasthumbnails .slides-thumbnails {
  display: flex;
}

.slides-thumbnail {
  width: calc(((var(--col-4)) -16px) / 3);
  height: auto;
  flex: 1;
  margin: 0 4px;
  display: block;
  position: relative;
  border-bottom: 2px solid #fff;
  overflow: hidden;
  opacity: 1;
}
.slides-thumbnail:first-child {
  margin-left: 0;
}
.slides-thumbnail:last-child {
  margin-right: 0;
}
.slides-thumbnail:after {
  position: absolute;
  content: "";
  border-bottom: 8px solid #fff;
  display: block;
  bottom: 0;
  left: 0;
  width: 0px;
}
.slides-thumbnail__img {
  background-size: cover;
  width: 100%;
  height: auto;
  display: block;
  position: absolute;
  bottom: -100%;
  cursor: pointer;
  left: 0;
  right: 0;
  transition: bottom 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
  opacity: 1;
}
@media (max-width: 768px) {
  .slides-thumbnail__img {
    display: none;
  }
}
.slides-thumbnail:before {
  content: "";
  position: absolute;
  bottom: 0;
  width: 100%;
  display: block;
  margin: 0 auto;
}
.slides-thumbnail.active:after {
  width: 100%;
  transition: width 4.5s linear;
}
.slides-thumbnail-1 img {
  transition-delay: 0s;
}
.slides-thumbnail-2 img {
  transition-delay: 0.07s;
}
.slides-thumbnail-3 img {
  transition-delay: 0.14s;
}

@media (max-width: 768px) {
  .slides-thumbnails {
    left: 1.25rem;
    right: 1.25rem;
    bottom: 1.25rem;
    width: calc(100vw - 2 * 1.25rem);
    max-width: 100%;
  }
}
@media (max-width: 767px) {
  .slides-thumbnail__img {
    display: none;
  }
}
/*
  Plugin markup for GDPR popup


<div class="cli-bar-container cli-style-v2">
<div class="cli-bar-header">We use cookies</div>
<div class="cli-bar-message">We use cookies to offer you a better experience and analyze site traffic. For more detailed information, view our <a href="/privacy-policy-website/" class="arrow-link">Privacy policy</a></div>
<div class="cli-bar-buttons">
[cookie_reject][cookie_button]
</div>
</div>
*/
#cookie-law-info-bar {
  background: var(--black) !important;
  color: var(--white) !important;
  padding: var(--section-margin) !important;
  bottom: var(--section-margin) !important;
  left: var(--section-margin) !important;
  text-align: left;
}
#cookie-law-info-bar br {
  display: none;
}
#cookie-law-info-bar .cli-bar-header {
  font-weight: normal;
  font-size: var(--font-size-m);
  line-height: var(--line-height-m);
  letter-spacing: var(--letter-spacing-m);
  margin-bottom: 10px;
  margin-top: 0;
}
#cookie-law-info-bar .cli-bar-message {
  line-height: 16px;
}
#cookie-law-info-bar .cli-bar-message a {
  color: var(--middle-grey);
  text-decoration: none;
}
@media (hover: hover) {
  #cookie-law-info-bar .cli-bar-message a:hover {
    text-decoration: none;
  }
}
#cookie-law-info-bar .cli_action_button {
  text-transform: uppercase;
  line-height: 40px;
  border: 1px solid white;
  font-size: var(--font-size-s);
  margin: 24px 0 0 !important;
  width: 46%;
  text-align: center;
  border-radius: 0;
  padding: 4px 16px;
}
#cookie-law-info-bar .cli_action_button:first-of-type {
  margin-right: 8% !important;
}
@media (max-width: 767px) {
  #cookie-law-info-bar {
    bottom: 0 !important;
    left: 0 !important;
    width: 100% !important;
  }
  #cookie-law-info-bar .cli-bar-buttons {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    flex-direction: column-reverse;
  }
  #cookie-law-info-bar .cli_action_button {
    width: 100%;
  }
  #cookie-law-info-bar .cli_action_button:first-of-type {
    margin-right: 0 !important;
  }
}

.text-phc-pagefigures {
  font-family: "Suisse Intl", sans-serif;
  font-size: calc(8 * var(--phc-root));
  font-weight: 600;
  line-height: calc(9.875 * var(--phc-root));
  letter-spacing: -0.05em;
  font-feature-settings: "salt" 1;
}
.text-phc-pagefigures p,
.text-phc-pagefigures li,
.text-phc-pagefigures blockquote {
  font: inherit;
  letter-spacing: inherit;
}

.text-phc-pagefiguressupport {
  font-family: "Suisse Intl", sans-serif;
  font-size: calc(6 * var(--phc-root));
  font-weight: 600;
  line-height: calc(6.125 * var(--phc-root));
  letter-spacing: -0.05em;
  font-feature-settings: "salt" 1;
}
.text-phc-pagefiguressupport p,
.text-phc-pagefiguressupport li,
.text-phc-pagefiguressupport blockquote {
  font: inherit;
  letter-spacing: inherit;
}

.text-phc-title-regular {
  font-family: "Suisse Intl", sans-serif;
  font-size: calc(4 * var(--phc-root));
  font-weight: 300;
  line-height: calc(4.125 * var(--phc-root));
  letter-spacing: -0.05em;
  font-feature-settings: "salt" 1;
}
.text-phc-title-regular p,
.text-phc-title-regular li,
.text-phc-title-regular blockquote {
  font: inherit;
  letter-spacing: inherit;
}

.text-phc-title-profile {
  font-family: "Suisse Intl", sans-serif;
  font-size: calc(2.625 * var(--phc-root));
  font-weight: 400;
  line-height: calc(2.75 * var(--phc-root));
  letter-spacing: -0.02em;
  font-feature-settings: "salt" 1;
}
.text-phc-title-profile p,
.text-phc-title-profile li,
.text-phc-title-profile blockquote {
  font: inherit;
  letter-spacing: inherit;
}

.text-phc-footerlinkage {
  font-family: "Suisse Intl", sans-serif;
  font-size: calc(1.75 * var(--phc-root));
  font-weight: 500;
  line-height: calc(2.25 * var(--phc-root));
  letter-spacing: 0;
  font-feature-settings: "salt" 1;
}
.text-phc-footerlinkage p,
.text-phc-footerlinkage li,
.text-phc-footerlinkage blockquote {
  font: inherit;
  letter-spacing: inherit;
}

.text-phc-standard {
  font-family: "Suisse Intl", sans-serif;
  font-size: calc(1.375 * var(--phc-root));
  font-weight: 400;
  line-height: calc(1.5 * var(--phc-root));
  letter-spacing: 0;
  font-feature-settings: "salt" 1;
}
.text-phc-standard p,
.text-phc-standard li,
.text-phc-standard blockquote {
  font: inherit;
  letter-spacing: inherit;
}

.text-phc-smalltype {
  font-family: "Suisse Intl", sans-serif;
  font-size: calc(1 * var(--phc-root));
  font-weight: 500;
  line-height: calc(1.125 * var(--phc-root));
  letter-spacing: 0;
  font-feature-settings: "salt" 1;
}
.text-phc-smalltype p,
.text-phc-smalltype li,
.text-phc-smalltype blockquote {
  font: inherit;
  letter-spacing: inherit;
}

.text-phc-standard-jp {
  font-family: "Noto Sans JP", sans-serif;
  font-size: calc(1.125 * var(--phc-root));
  font-weight: 400;
  line-height: calc(1.5 * var(--phc-root));
  letter-spacing: -0.04em;
  font-feature-settings: "salt" 1;
}
.text-phc-standard-jp p,
.text-phc-standard-jp li,
.text-phc-standard-jp blockquote {
  font: inherit;
  letter-spacing: inherit;
}

.text-phc-smalltype-jp {
  font-family: "Noto Sans JP", sans-serif;
  font-size: calc(0.875 * var(--phc-root));
  font-weight: 500;
  line-height: calc(1.125 * var(--phc-root));
  letter-spacing: -0.02em;
  font-feature-settings: "salt" 1;
}
.text-phc-smalltype-jp p,
.text-phc-smalltype-jp li,
.text-phc-smalltype-jp blockquote {
  font: inherit;
  letter-spacing: inherit;
}

.text-phc-smallbold {
  font-family: "Suisse Intl", sans-serif;
  font-size: calc(1.5 * var(--phc-root));
  font-weight: 500;
  line-height: calc(1.625 * var(--phc-root));
  letter-spacing: 0;
  font-feature-settings: "salt" 1;
}
.text-phc-smallbold p,
.text-phc-smallbold li,
.text-phc-smallbold blockquote {
  font: inherit;
  letter-spacing: inherit;
}/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIm1haW4uY3NzIiwiYmFzZS9fZm9udHMuc2NzcyIsInV0aWxzL3V0aWwuc2NzcyIsInV0aWxzL19taXhpbnMuc2NzcyIsInZlbmRvci9pbmNsdWRlLW1lZGlhLnNjc3MiLCJfdmFyaWFibGVzLnNjc3MiLCJ2ZW5kb3IvZmxpY2tpdHkuc2NzcyIsImJhc2UvX3Jlc2V0LnNjc3MiLCJiYXNlL19ncmlkLnNjc3MiLCJiYXNlL19iYXNlLnNjc3MiLCJiYXNlL190eXBvZ3JhcGh5LnNjc3MiLCJiYXNlL190eXBvZ3JhcGh5LWxlZ2FjeS5zY3NzIiwiYmFzZS9faGVhZGVyLnNjc3MiLCJiYXNlL19tZW51LnNjc3MiLCJiYXNlL19mb290ZXIuc2NzcyIsImJhc2UvX2Zvb3Rlci1yZWRlc2lnbi5zY3NzIiwiZm9ybXMvX3RleHQuc2NzcyIsImZvcm1zL19idXR0b24uc2NzcyIsImNvbXBvbmVudHMvX2Jsb2Nrcy5zY3NzIiwiY29tcG9uZW50cy9fYXJyb3cuc2NzcyIsImNvbXBvbmVudHMvX2Jsb2NrLXJlbGF0ZWQuc2NzcyIsImNvbXBvbmVudHMvX2ludHJvLXNlY3Rpb24uc2NzcyIsImNvbXBvbmVudHMvX2ZsZXhpYmxlLWNvbnRlbnQuc2NzcyIsImNvbXBvbmVudHMvX2NvbnRlbnQtZ3JpZC5zY3NzIiwiY29tcG9uZW50cy9fY29udGVudC1ncmlkLXJlZGVzaWduLnNjc3MiLCJjb21wb25lbnRzL19oZXJvLnNjc3MiLCJjb21wb25lbnRzL19jb29raWUtY29uc2VudC5zY3NzIiwiY29tcG9uZW50cy9fdGV4dC1zdHlsZXMuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxnQkFBZ0I7QUNDUixzR0FBQTtBQ0lSO0VDSEUsV0FEdUQ7RUFFdkQsY0FGc0I7RUFHdEIsa0JBSG1DO0FIS3JDOztBRUdBO0VBQ0UsZUFBQTtBRkFGOztBRUlFO0VBQ0UsOEJBQUE7QUZESjtBRUdFO0VBQ0UsOEJBQUE7QUZESjs7QUVNRTtFQUNFLDhCQUFBO0FGSEo7QUVPRTtF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c0JKO0FRaHNCRTtFQUNFLG1CQUFBO0FSa3NCSjtBUS9yQkU7RUFDRSxtQkFBQTtBUmlzQko7QVE5ckJFO0VBQ0UsaUJBQUE7QVJnc0JKOztBUTNyQkk7RUFDRSxXQUFBO0FSOHJCTjtBUTFyQkk7RUFDRSxVQUFBO0FSNHJCTjtBUXhyQkk7RUFDRSxjQUFBO0FSMHJCTjtBUTdxQkk7RUFDRSxVQUFBO0FSK3FCTjs7QUkvVEk7RUl4V0U7SUFDRSxXQUFBO0VSMnFCTjtFUXZxQkk7SUFDRSxVQUFBO0VSeXFCTjtFUXZxQk07SUFDRSxXQUFBO0VSeXFCUjtFUXBxQkk7SUFDRSxjQUFBO0VSc3FCTjtFUXBxQk07SUFDRSxXQUFBO0VSc3FCUjtFUWpxQkk7SUFDRSxVQUFBO0VSbXFCTjtFUWpxQk07SUFDRSxXQUFBO0VSbXFCUjtBQUNGO0FJdlZJO0VJcFVBO0lBWUUsV0FBQTtFUm1wQko7RVE5b0JFO0lBWUUsY0FBQTtFUnFvQko7RVFqb0JBO0lBQ0UsWUFBQTtFUm1vQkY7RVFob0JBO0lBQ0UsYUFBQTtFUmtvQkY7RVEvbkJBO0lBQ0UsVUFBQTtFUmlvQkY7RVE5bkJBO0lBQ0UsYUFBQTtFUmdvQkY7RVE3bkJBO0lBQ0UsYUFBQTtFUituQkY7RVE1bkJBO0lBQ0UsVUFBQTtFUjhuQkY7RVEzbkJBO0lBQ0UsYUFBQTtFUjZuQkY7RVExbkJBO0lBQ0UsYUFBQTtFUjRuQkY7RVF6bkJBO0lBQ0UsVUFBQTtFUjJuQkY7RVF4bkJBO0lBQ0UsYUFBQTtFUjBuQkY7RVF2bkJBO0lBQ0UsYUFBQTtFUnluQkY7RVF0bkJBO0lBQ0UsV0FBQTtFUnduQkY7RVFybkJBO0lBQ0Usa0JBQUE7RVJ1bkJGO0VRcG5CQTtJQUNFLG1CQUFBO0VSc25CRjtFUW5uQkE7SUFDRSxnQkFBQTtFUnFuQkY7RVFsbkJBO0lBQ0UsbUJBQUE7RVJvbkJGO0VRam5CQTtJQUNFLG1CQUFBO0VSbW5CRjtFUWhuQkE7SUFDRSxnQkFBQTtFUmtuQkY7RVEvbUJBO0lBQ0UsbUJBQUE7RVJpbkJGO0VROW1CQTtJQUNFLG1CQUFBO0VSZ25CRjtFUTdtQkE7SUFDRSxnQkFBQTtFUittQkY7RVE1bUJBO0lBQ0UsbUJBQUE7RVI4bUJGO0VRM21CQTtJQUNFLG1CQUFBO0VSNm1CRjtFUTFtQkE7SUFDRSxpQkFBQTtFUjRtQkY7QUFDRjtBU3A5QkE7RUFDRSxzQkFBQTtFQU1BLGVBQUE7QVRpOUJGO0FJM2FJO0VLN2lCSjtJQWtCSSxpQ0FBQTtFVDA4QkY7QUFDRjtBUzc5QkE7RUFxQkUsOEJBQUE7RUFDQSxtQ0FBQTtBVDI4QkY7QVN6OEJFO0VBQ0UsZUFBQTtFQUNBLDhCQUFBO0FUMjhCSjtBSXhiSTtFS3JoQkY7SUFLSSw4QkFBQTtFVDQ4Qko7QUFDRjtBU2w5QkU7RUFhRSxnQkFBQTtBVHc4Qko7O0FTcDhCQTs7O0VBR0UsbUJBQUE7QVR1OEJGOztBU3A4QkE7RUFDRSxtQ0FBQTtFQUNBLG9DQUFBO0VBQ0EsU0FBQTtFQUNBLFVBQUE7RUFDQSx3REFBQTtFQUNBLGdCQUFBO0VBQ0EsaUNBQUE7RUFDQSx1Q0FBQTtFQUlBLCtCQUFBO0VBQ0EsK0JBQUE7RUFDQSwrQkFBQTtFQUNBLCtCQUFBO0VBQ0EsK0JBQUE7RUFDQSwrQkFBQTtFQUNBLCtCQUFBO0VBQ0EsK0JBQUE7RUFDQSwrQkFBQTtFQUNBLCtCQUFBO0FUbzhCRjs7QVM1N0JBO0VBQ0UsbUJBQUE7RUFDQSxpQkFBQTtBVCs3QkY7O0FTajhCQTtFQUNFLG1CQUFBO0VBQ0EsaUJBQUE7QVQrN0JGOztBUzU3QkE7RUFDRSxtQkFBQTtFQUNBLHFCQUFBO0FUKzdCRjtBUzc3QkU7RUFDRSx5QkFBQTtBVCs3Qko7O0FTMzdCQTtFQUNFLHNCQUFBO0FUODdCRjs7QVMzN0JBO0VBQ0Usc0JBQUE7QVQ4N0JGOztBUzM3QkE7RUFDRSxzQkFBQTtBVDg3QkY7O0FTMzdCQTtFQUNFLHNCQUFBO0FUODdCRjs7QVMzN0JBO0VBQ0UsU0FBQTtFQUNBLFVBQUE7RUFDQSxTQUFBO0FUODdCRjs7QVMzN0JBO0VBQ0UsZ0JBQUE7QVQ4N0JGOztBU3o3QkU7O0VBQ0UsYUFBQTtBVDY3Qko7QVMxN0JFOztFQUNFLGFBQUE7QVQ2N0JKO0FTMTdCRTs7RUFDRSxtQkFBQTtFQUNBLDZCQUFBO0VBQ0EsaUNBQUE7RUFDQSx1Q0FBQTtBVDY3Qko7QVMxN0JFOztFQUNFLGdCQUFBO0FUNjdCSjtBSXRoQkk7RUtuYUE7O0lBQ0UsNkJBQUE7SUFDQSxpQ0FBQTtJQUNBLHVDQUFBO0lBQ0Esa0JBQUE7RVQ2N0JKO0FBQ0Y7O0FTejdCQTtFQUNFLGVBQUE7RUFDQSxxQkFBQTtBVDQ3QkY7QVMxN0JFO0VBQ0UsaUJBQUE7RUFDQSxrQkFBQTtFQUNBLGtCQUFBO0FUNDdCSjtBUzE3Qkk7RUFDRSxZQUFBO0VBQ0Esa0JBQUE7RUFDQSxPQUFBO0FUNDdCTjtBSTlpQkk7RUt0WkY7SUFZSSxrQkFBQTtFVDQ3Qko7QUFDRjs7QVN4N0JBO0VBQ0UsZ0JBQUE7RUFDQSx5Q0FBQTtBVDI3QkY7QVN6N0JFO0VBQ0Usa0JBQUE7RUFDQSw2Q0FBQTtBVDI3Qko7QVN6N0JJO0VBQ0UsNENBQUE7RUFDQSxrQkFBQTtFQUNBLDRCQUFBO0VBQ0EsV0FBQTtFQUNBLGtCQUFBO0FUMjdCTjs7QVNyN0JBO0VBQ0UsV0FBQTtFQUNBLGNBQUE7QVR3N0JGO0FTdDdCRTtFQUNFLDRCQUFBO0FUdzdCSjtBU3I3QkU7RUFDRSxtQkFBQTtFQUNBLDhCQUFBO0FUdTdCSjtBU3A3QkU7RUFDRSxvQ0FBQTtFQUNBLG1CQUFBO0FUczdCSjs7QVMvNkJFOzs7O0VBRUUsbUJBQUE7QVRvN0JKOztBUzc2QkE7RUFDRSxjQUFBO0VBQ0EsY0FBQTtFQUNBLDRCQUFBO0FUZzdCRjtBUzk2QkU7RUFDRSxXQUFBO0VBQ0EsZUFBQTtFQUNBLFVBQUE7QVRnN0JKOztBUzU2QkE7RUFDRSxhQUFBO0VBQ0Esc0JBQUE7RUFDQSxlQUFBO0FUKzZCRjs7QVM1NkJBO0VBQ0Usb0JBQUE7RUFDQSw0QkFBQTtBVCs2QkY7O0FTNTZCQTtFQUNFLGtCQUFBO0FUKzZCRjs7QVMzNkJFO0VBQ0UsWUFBQTtFQUNBLGtCQUFBO0VBQ0EscUJBQUE7RUFDQSxpQkFBQTtFQUNBLGdDQUFBO0FUODZCSjtBUzM2QkU7RUFDRTtJQUNFLHFCQUFBO0VUNjZCSjtFUzM2Qkk7SUFDRSxpQkFBQTtFVDY2Qk47QUFDRjs7QVN4NkJBO0VBQ0UscUJBQUE7RUFDQSw2QkFBQTtFQUNBLGlDQUFBO0VBQ0EsdUNBQUE7QVQyNkJGOztBU3A2Qk07RUFDRSxxQkFBQTtBVHU2QlI7QVNsNkJFO0VBQ0UsV0FBQTtBVG82Qko7QVMzNUJFO0VBQ0UseUJBQUE7RUFDQSxxQkFBQTtBVDY1Qko7QVN2NUJJO0VBQ0UscUJBQUE7RUFDQSx5QkFBQTtBVHk1Qk47QVN2NUJNO0VBQ0UsMEJBQUE7QVR5NUJSO0FTOTRCSTs7Ozs7O0VBQ0UscUJBQUE7RUFDQSx5QkFBQTtBVHE1Qk47QVNuNUJNOzs7Ozs7RUFDRSwwQkFBQTtBVDA1QlI7QVN0NUJROzs7Ozs7RUFDRSxxQkFBQTtBVDY1QlY7O0FTejRCQTtFQUNFLGNBQUE7RUFDQSxxQkFBQTtBVDQ0QkY7O0FTeDRCQTtFQUNFLHdCSjdWYztBTHd1Q2hCOztBU3g0QkE7RUFDRSx3Q0FBQTtFQUNBLDRDQUFBO0VBQ0Esa0RBQUE7QVQyNEJGOztBU3o0QkE7RUFDRSx3Q0FBQTtFQUNBLDRDQUFBO0VBQ0Esa0RBQUE7QVQ0NEJGOztBUzE0QkE7RUFDRSx3Q0FBQTtFQUNBLDRDQUFBO0VBQ0Esa0RBQUE7QVQ2NEJGOztBUzM0QkE7RUFDRSx5Q0FBQTtFQUNBLDZDQUFBO0VBQ0EsbURBQUE7QVQ4NEJGOztBUzU0QkE7RUFDRSwwQ0FBQTtFQUNBLDhDQUFBO0VBQ0Esb0RBQUE7QVQrNEJGOztBVXR2Q0E7O0VBRUUsK0JBQUE7RUFDQSxvQkFBQTtBVnl2Q0Y7O0FVdHZDQTtFUERFLHNDQUFBO0VBQ0Esb0NBQUE7RUFDQSxnQkFBQTtFQUNBLDBDQUFBO0VBQ0EsdUJBQUE7RUFDQSwrQkFBQTtFT0RBLG1CQUFBO0FWNnZDRjs7QVUxdkNBO0VQUEUsc0NBQUE7RUFDQSx3Q0FBQTtFQUNBLGdCQUFBO0VBQ0EseUNBQUE7RUFDQSx1QkFBQTtFQUNBLCtCQUFBO0VPS0EsbUJBQUE7QVZpd0NGOztBVTl2Q0E7RVBiRSxzQ0FBQTtFQUNBLHVDQUFBO0VBQ0EsZ0JBQUE7RUFDQSx5Q0FBQTtFQUNBLGlCQUFBO0VBQ0EsK0JBQUE7RU9XQSxtQkFBQTtBVnF3Q0Y7O0FVbHdDQTs7O0VQbkJFLHNDQUFBO0VBQ0Esd0NBQUE7RUFDQSxnQkFBQTtFQUNBLHdDQUFBO0VBQ0EsaUJBQUE7RUFDQSwrQkFBQTtFT21CQSxtQkFBQTtBVnl3Q0Y7O0FVdHdDQTtFUDNCRSxzQ0FBQTtFQUNBLHdDQUFBO0VBQ0EsZ0JBQUE7RUFDQSx3Q0FBQTtFQUNBLGlCQUFBO0VBQ0EsK0JBQUE7RU95QkEsbUJBQUE7QVY2d0NGOztBVTF3Q0E7RVBqQ0Usc0NBQUE7RUFDQSxvQ0FBQTtFQUNBLGdCQUFBO0VBQ0EsMENBQUE7RUFDQSxpQkFBQTtFQUNBLCtCQUFBO0FIK3lDRjs7QVc1ekNBO0VBU0UsOEJBQUE7RUFDQSxtQkFBQTtBWHV6Q0Y7QVdyekNFO0VBQ0UsZ0JBQUE7RUFDQSw4QkFBQTtFQUNBLGtDQUFBO0VBQ0Esd0NBQUE7RUFDQSxTQUFBO0VBQ0EsbUJBQUE7QVh1ekNKO0FXcHpDRTs7Ozs7RUFLRSxnQkFBQTtBWHN6Q0o7QVduekNFO0VBQ0UsYUFBQTtFQUNBLGdCQUFBO0VBQ0EsNkJBQUE7RUFDQSxpQ0FBQTtFQUNBLHVDQUFBO0VBQ0Esb0NBQUE7QVhxekNKO0FXanpDSTtFQUNFLDhCQUFBO0VBQ0Esa0NBQUE7RUFDQSx3Q0FBQTtBWG16Q047QVdoekNJO0VBQ0UsNkJBQUE7RUFDQSxpQ0FBQTtFQUNBLHVDQUFBO0FYa3pDTjtBVy95Q0k7RUFDRSw2QkFBQTtFQUNBLGlDQUFBO0VBQ0EsdUNBQUE7QVhpekNOO0FXOXlDSTtFQUNFLDZCQUFBO0VBQ0EsaUNBQUE7RUFDQSx1Q0FBQTtBWGd6Q047QVc3eUNJO0VBQ0UsU0FBQTtFQUNBLGdCQUFBO0VBQ0EsOENBQUE7QVgreUNOO0FJcjFCSTtFT3RkRTtJQUNFLG1CQUFBO0lBQ0EsNkJBQUE7SUFDQSxpQ0FBQTtJQUNBLHVDQUFBO0lBQ0EsbUJBQUE7RVg4eUNOO0VXM3lDSTtJQUNFLFNBQUE7SUFDQSxtQkFBQTtJQUNBLGlDQUFBO0VYNnlDTjtFV3h5Q007SUFDRSw2QkFBQTtJQUNBLGlDQUFBO0lBQ0EsdUNBQUE7RVgweUNSO0VXcHlDUTtJQUNFLGFBQUE7RVhzeUNWO0VXanlDSTtJQUNFLDZCQUFBO0lBQ0EsaUNBQUE7SUFDQSx1Q0FBQTtJQUVBLFNBQUE7SUFDQSxtQkFBQTtJQUNBLGtCQUFBO0VYa3lDTjtFVy94Q0k7SUFDRSx3REFBQTtJQUNBLG1CQUFBO0lBQ0EsNkJBQUE7SUFDQSxpQ0FBQTtJQUNBLHVDQUFBO0lBQ0EsbUJBQUE7SUFDQSxhQUFBO0VYaXlDTjtBQUNGO0FJNTNCSTtFT2phRTs7SUFFRSw4Q0FBQTtFWGd5Q047QUFDRjtBSWw0Qkk7RU96WkE7O0lBRUUsNkJBQUE7SUFDQSxpQ0FBQTtJQUNBLHVDQUFBO0VYOHhDSjtBQUNGOztBWXY3Q0E7RUFDRSxlQUFBO0VBQ0EsU0FBQTtFQUNBLFdBQUE7RUFDQSxZQUFBO0VBRUEsZ0JBQUE7RUFDQSxnQkFBQTtFQUNBLGVBQUE7RUFFQSwwQkFBQTtBWnc3Q0Y7QVl0N0NFO0VBQ0UsU0FBQTtBWnc3Q0o7QVlyN0NFO0VBQ0Usc0JBQUE7QVp1N0NKO0FZcDdDRTtFQUVJO0lBQ0UsNkJBQUE7RVpxN0NOO0VZbDdDSTtJQUNFLDRCQUFBO0VabzdDTjtFWS82Q0k7SUFDRSw4QkFBQTtFWmk3Q047RVk5NkNJO0lBQ0UsNkJBQUE7RVpnN0NOO0FBQ0Y7QUl6NkJJO0VRN2lCSjtJQTJDSSxTQUFBO0lBQ0EsV0FBQTtFWis2Q0Y7QUFDRjtBWXo2Q0U7RUFFRSx3REFBQTtFQUNBLGtCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxnQkFBQTtFQUVBLHdCQUFBO0VBQ0Esd0JBQUE7QVp5NkNKO0FZdjZDSTtFQUNFLHdCQUFBO0VBQ0EsY0FBQTtBWnk2Q047QVloNkNJO0VBQ0UsTUFBQTtBWms2Q047QVkvNUNJO0VBQ0UsY0FBQTtBWmk2Q047QVk3NUNNO0VBQ0UsaUNBQUE7QVorNUNSO0FZNTVDTTtFQUNFLGtDQUFBO0FaODVDUjtBSXY4Qkk7RVFsY007SUFDRSw2QkFBQTtFWjQ0Q1Y7QUFDRjtBWXI0Q0U7RUFDRSxzQkFBQTtFQUNBLGlCQUFBO0FadTRDSjtBWXI0Q0k7RUFDRSx3QkFBQTtBWnU0Q047O0FZLzNDTTtFQUNFLDZCQUFBO0FaazRDUjtBWTMzQ007RUFDRSw2QkFBQTtBWjYzQ1I7O0FZbjNDRTtFQUNFLGNBQUE7RUFDQSxXQUFBO0VBRUEsVUFBQTtFQUNBLGlDQUFBO0VBQ0EsdUJBQUE7RUFFQSxrQkFBQTtFQUNBLFlBQUE7QVpvM0NKO0FJcCtCSTtFUXpaRjtJQVlJLGdCQUFBO0VacTNDSjtBQUNGO0FZbDNDRTtFQUNFLFNBQUE7RUFDQSxVQUFBO0VBQ0EsVUFBQTtBWm8zQ0o7QVlsM0NJO0VBQ0UsVUFBQTtBWm8zQ047QVloM0NFO0VBQ0UsZUFBQTtFQUNBLFNBQUE7RUFDQSxVQUFBO0VBQ0EsZUFBQTtFQUNBLGlCQUFBO0FaazNDSjtBWTcyQ0k7O0VBRUUsVUFBQTtFQUNBLGlDQUFBO0FaKzJDTjtBWTUyQ0k7RUFDRSxVQUFBO0VBQ0EsdUNBQUE7QVo4MkNOOztBWXIyQ0k7RUFDRSxlQUFBO0VBQ0EsUUFBQTtFQUNBLE9BQUE7RUFDQSxNQUFBO0VBQ0EsNEJBQUE7RUFDQSxvQ0FBQTtFQUNBLFdBQUE7RUFDQSxZQUFBO0VBQ0EsZ0JBQUE7RUFDQSxpQ0FBQTtFQUNBLFdBQUE7RUFDQSw4REFBQTtBWncyQ047QVl0MkNJO0VBQ0UsVUFBQTtFQUNBLGVBQUE7RUFDQSxRQUFBO0VBQ0EsT0FBQTtFQUNBLE1BQUE7RUFDQSxTQUFBO0VBQ0EsWUFBQTtFQUNBLGtDQUFBO0VBQ0EsMkJBQUE7RUFDQSw0REFBQTtFQUNBLFdBQUE7RUFDQSxvQkFBQTtBWncyQ047QVluMkNJO0VBQ0UseUJBQUE7QVpxMkNOO0FZbjJDSTtFQUNFLFVBQUE7RUFDQSxNQUFBO0VBQ0EsbUJBQUE7QVpxMkNOO0FZajJDRTtFQUNFLGFBQUE7QVptMkNKO0FZbDJDSTtFQUNFLGNBQUE7QVpvMkNOO0FZajJDRTtFQUNFLHFCQUFBO0VBQ0EsU0FBQTtFQUNBLFVBQUE7RUFDQSxjQUFBO0VBQ0EsaUJBQUE7RUFDQSxxQkFBQTtBWm0yQ0o7QVlqMkNJO0VBQ0UsYUFBQTtBWm0yQ047QUl2akNJO0VRclRGO0lBYUksNEJBQUE7RVptMkNKO0FBQ0Y7QVloMkNFO0VBQ0UsVUFBQTtFQUNBLFNBQUE7RUFDQSxjQUFBO0VBQ0Esb0JBQUE7RUFDQSxnQkFBQTtFQUNBLGNBQUE7QVprMkNKO0FZaDJDSTtFQUNFLFlBQUE7RUFDQSxZQUFBO0FaazJDTjtBWS8xQ0k7RUFDRSxhQUFBO0FaaTJDTjtBWTcxQ0U7RUFDRSxpQkFBQTtFQUNBLGNBQUE7QVorMUNKO0FZNzFDRTtFQUVFLHFCQUFBO0VBQ0EsbUJBQUE7RUFDQSw2QkFBQTtFQUNBLGtCQUFBO0VBQ0EseUJBQUE7RUFDQSxzQkFBQTtFQUVBLGlCQUFBO0FaODFDSjtBWTUxQ0k7RUFDRTtJQUNFLHlCQUFBO0VaODFDTjtBQUNGO0FJOWxDSTtFUTlRRjtJQWtCSSxjQUFBO0VaODFDSjtBQUNGO0FZMTFDSTtFQUNFLHlCQUFBO0FaNDFDTjs7QVluMUNJO0VBQ0Usa0JBQUE7QVpzMUNOO0FZbDFDTTtFQUNFLGtCQUFBO0FabzFDUjtBWTkwQ0k7RUFDRSxrQkFBQTtBWmcxQ047QVk1MENNO0VBQ0Usa0JBQUE7QVo4MENSOztBSW5uQ0k7RVFuTkY7SUFDRSxzQ0FBQTtJQUNBLG1CQUFBO0VaMDBDRjtFWXYwQ0E7O0lBRUUsY0FBQTtFWnkwQ0Y7QUFDRjtBSTluQ0k7RVF2TUY7O0lBRUUsZ0JBQUE7SUFDQSxVQUFBO0lBQ0EsNkJBQUE7RVp3MENGO0VZcjBDQTtJQUNFLGtCQUFBO0lBQ0EsY0FBQTtFWnUwQ0Y7RVlwMENBO0lBQ0UsT0FBQTtJQUNBLFlBQUE7SUFDQSxhQUFBO0lBQ0EsaUJBQUE7SUFDQSxXQUFBO0lBQ0EsMkJBQUE7SUFDQSw0QkFBQTtFWnMwQ0Y7RVluMENBO0lBQ0UsVUFBQTtFWnEwQ0Y7RVlsMENBO0lBQ0UsYUFBQTtFWm8wQ0Y7QUFDRjtBSXpwQ0k7RVF0S0Y7O0lBRUUsOEJBQUE7RVprMENGO0FBQ0Y7QWFwckRBO0VBQ0UsZUFBQTtFQUNBLFFBQUE7RUFDQSxvQ0FoQmU7RUFpQmYsT0FBQTtFQUNBLFlBQUE7RUFDQSxhQUFBO0VBTUEsdUJBQUE7RUFDQSx1Q0FBQTtFQUlBLG9CQUFBO0FiOHFERjtBYTFxREU7RUFDRSxvQkFBQTtFQUNBLGtCQUFBO0VBQ0EsV0FBQTtFQUNBLGdDQUFBO0VBQ0EscUNBeENjO0VBeUNkLGNBQUE7RUFDQSxnQkFBQTtFQU1BLDZDQTNDYztFQWdEZCx3QkFBQTtFQUNBLHFFQUFBO0FibXFESjtBYXBwREU7RUFDRSxrQkFBQTtFQUNBLE1BQUE7RUFDQSxPQUFBO0VBQ0EsVUFBQTtFQUNBLFdBQUE7RUFDQSxZQUFBO0VBQ0Esc0JBQUE7RUFDQSxvQkFBQTtBYnNwREo7QWFscERFO0VBQ0Usa0JBQUE7RUFDQSxVQUFBO0VBQ0EsYUFBQTtFQUNBLG1CQUFBO0VBQ0EsOEJBcEZlO0VBcUZmLFdBQUE7RUFDQSxZQUFBO0VBQ0Esb0NBQUE7QWJvcERKO0FhL29ERTtFQUNFLGNBQUE7RUFDQSxnQ0E1Rlk7RUE2RlosaUNBN0ZZO0VBOEZaLFVBQUE7RUFDQSxTQUFBO0VBQ0Esb0NBQUE7RUFDQSwwREFBQTtFQUNBLGtFQUFBO0VBQ0EsZUFBQTtBYmlwREo7QWE5b0RFO0VBQ0UsV0FBQTtFQUNBLFlBQUE7RUFDQSx5QkFBQTtFQUNBLGtCQUFBO0VBQ0EscUJBQUE7RUFDQSxlQUFBO0FiZ3BESjtBYTlvREk7RUFDRSxnQ0FBQTtBYmdwRE47QWE3b0RJO0VBQ0U7SUFDRSxnQ0FBQTtFYitvRE47QUFDRjtBYTNvREU7RUFDRSxjQUFBO0VBQ0Esa0NBNUhZO0VBNkhaLG1DQTdIWTtBYjB3RGhCO0FhM29ESTtFQUNFLGNBQUE7RUFDQSxXQUFBO0VBQ0EsWUFBQTtBYjZvRE47O0FhbG9ERTs7RUFDRSw2Q0FBQTtFQUNBLDRGQUNFO0FicW9ETjs7QWF6bkRBO0VBQ0UsNkJBQUE7QWI0bkRGOztBYXptREU7RUFDRSxvQ0FwTGM7RUFxTGQsd0NBckxjO0VBc0xkLGlEQUFBO0FiNG1ESjtBYXJtREU7RUFDRSxVQUFBO0VBQ0EsdUJBQUE7QWJ1bURKO0FhbG1ERTs7RUFFRSxhQUFBO0Fib21ESjs7QUl2d0NJO0VTalZBO0lBRUUsYUFBQTtFYjJsREo7RWF4bERFO0lBQ0Usb0NBN01tQjtJQThNbkIsNENBN01tQjtFYnV5RHZCO0VhdmxERTtJQUNFLGdDQUFBO0lBQ0Esc0NBQUE7RWJ5bERKO0VhdGxERTtJQUlFLGNBQUE7SUFLQSxtQkFBQTtJQU9BLFlBQUE7SUFDQSxnQkFBQTtJQUNBLHVCQUFBO0lBS0EsYUFBQTtJQUNBLG1CQUFBO0lBQ0EsdUJBQUE7SUFDQSxtQkFBQTtFYnVrREo7RWFoa0RBO0lBQ0UsbUNBeFBxQjtJQXlQckIsdUNBelBxQjtFYjJ6RHZCO0VhMWpEQTtJQUNFLHFFQUFBO0lBSUEsZ0JBQUE7RWJ5akRGO0FBQ0Y7QWNyMURBO0VBQ0Usd0JBQUE7RUFDQSwyQkFBQTtBZHUxREY7QUk1eUNJO0VVN2lCSjtJQUtJLGdDQUFBO0VkdzFERjtBQUNGO0FJanpDSTtFVXJpQkY7SUFFSSxjQUFBO0lBQ0EsaUJBQUE7RWR3MURKO0FBQ0Y7QWNyMURFO0VBQ0UsbUJBQUE7RUFDQSx1QkFBQTtFQUNBLGdCQUFBO0VBQ0EsY0FBQTtBZHUxREo7QWNyMURJO0VBQ0UsZ0JBQUE7QWR1MUROO0FjbjFERTtFQUNFLG1CQUFBO0FkcTFESjtBY2wxREU7RUFDRSxpQkFBQTtBZG8xREo7QWNsMURJO0VBQ0UsZUFBQTtBZG8xRE47QWN4MURFO0VBT0UsdUJBQUE7QWRvMURKO0FJNTBDSTtFVS9nQkY7SUFVSSxhQUFBO0lBQ0EsdUJBQUE7SUFDQSxxQkFBQTtFZHExREo7QUFDRjtBY2wxREU7RUFDRSxrQkFBQTtBZG8xREo7QWNsMURJO0VBQ0UsZ0JBQUE7QWRvMUROO0FJejFDSTtFVS9mRjtJQVFJLHFCQUFBO0VkbzFESjtFY2wxREk7SUFDRSxxQkFBQTtFZG8xRE47QUFDRjs7QWV0NERBO0VBQ0UsYUFBQTtFQUNBLGVBQUE7RUFDQSx1QkFBQTtFQUNBLDhCQUFBO0VBQ0EsZVZZa0I7RVVQbEIsV0FBQTtFQUtBLGVBQUE7RUFDQSx3Q0FBQTtFQUNBLDZCQUFBO0FmaTRERjtBZXozREU7RUFDRSxhQUFBO0VBQ0EsY0FBQTtFQUNBLGlDQUFBO0VBQ0EscUJWWmdCO0VVYWhCLHdDQUFBO0VBQ0EsMERBQUE7RUFDQSxrRUFBQTtBZjIzREo7QWV4M0RFO0VBQ0UsYUFBQTtFQUNBLHNCQUFBO0VBQ0Esb0JBQUE7RUFDQSxhQUFBO0VBQ0EsWUFBQTtBZjAzREo7QWV4M0RJO0VBQ0UsU0FBQTtBZjAzRE47QWV0M0RFO0VBQ0UsY0FBQTtFQUNBLGVBbkRjO0VBb0RkLGdCQXBEYztBZjQ2RGxCO0FldDNESTtFQUNFLGNBQUE7RUFDQSxXQUFBO0VBQ0EsWUFBQTtBZnczRE47QWU3MkRFO0VBQ0UsYUFBQTtFQUNBLGNBQUE7RUFDQSxzQkFBQTtFQUNBLHVCQUFBO0VBQ0EsYUFBQTtBZisyREo7QWU1MkRFO0VBQ0UsY0FBQTtFQUNBLHFCQUFBO0FmODJESjtBZTUyREk7RUFDRTtJQUNFLGNBQUE7RWY4MkROO0FBQ0Y7QWV6MkRFO0VBQ0UsY0FBQTtFQUNBLFNBQUE7RUFDQSxnQ0FBQTtBZjIyREo7O0FlcDJEQTtFQUNFLHFCQUFBO0FmdTJERjs7QUluNkNJO0VXaGNGO0lBQ0UsZ0JWNUdZO0VMbTlEZDtFZXIyREU7SUFDRSxjQUFBO0VmdTJESjtFZXAyREU7SUFDRSxnQkFBQTtFZnMyREo7RWVoMkRBO0lBQ0UscUJBQUE7RWZrMkRGO0FBQ0Y7QWdCNzdEQTs7O0VBakNFLGNBQUE7RUFDQSxzQkFBQTtFQUNBLG1CQUFBO0VBQ0EsNEJBQUE7RUFDQSxjQUFBO0VBRUEsWUFBQTtFQUNBLGdCQUFBO0VBQ0EsNkJBQUE7RUFDQSxnQkFBQTtFQUNBLHFDQUFBO0VBTUEsd0JBQUE7S0FBQSxxQkFBQTtVQUFBLGdCQUFBO0VBRUEsZ0JBQUE7RUFFQSw4QkFBQTtBaEIyOURGO0FnQng5REU7OztFQUNFLFVBQUE7RUFDQSxZQUFBO0VBQ0EsNkJBQUE7RUFDQSxnQkFBQTtBaEI0OURKOztBZ0IvOERBO0VBQ0UsZUFBQTtFQUNBLFlBQUE7QWhCazlERjtBZ0JoOURFO0VBQ0UsWUFBQTtBaEJrOURKOztBZ0I3OERBOzs7RUFJRSxtQkFBQTtBaEIrOERGOztBZ0IzOERBOztFQUVFLHdCQUFBO0tBQUEscUJBQUE7VUFBQSxnQkFBQTtBaEI4OERGOztBZ0J6OERBO0VBQ0Usc0JBQUE7QWhCNDhERjs7QWdCeDhEQTtFQUVFLDBCQUFBO0FoQjA4REY7QWdCeDhERTtFQUVFLHdCQUFBO0VBQ0EsU0FBQTtBaEJ5OERKOztBZ0IvN0RBO0VBQ0UsaUJBQUE7RUFFQSx5QkFBQTtBaEJpOERGOztBaUIzaEVBO0VBRUUsY0FBQTtFQUNBLDhCQUFBO0VBQ0EsbUJBQUE7RUFDQSxhQUFBO0VBQ0EsZ0JBQUE7RUFDQSxVQUFBO0VBRUEscUJBQUE7QWpCNGhFRjtBaUIxaEVFO0VBRUUsVUFBQTtBakIyaEVKO0FpQnhpRUE7RUFnQkUsNkJBQUE7RUFFQSxlQUFBO0FqQjBoRUY7QUloZ0RJO0VhNWlCSjtJQXFCSSw2QkFBQTtFakIyaEVGO0FBQ0Y7QWtCcmlFQTtFQUNFLGFBQUE7RUFDQSxzQkFBQTtFQUNBLHVCQUFBO0VBQ0EsV2JRa0I7RWFIbEIsV0FBQTtFQUNBLGVBQUE7RUFDQSxvQkFBQTtBbEJtaUVGO0FrQmppRUU7RUFDRSxhQUFBO0VBQ0EsZUFBQTtFQUNBLHVCQUFBO0VBQ0EsWWJOWTtFYU9aLFdBQUE7QWxCbWlFSjtBa0IxaEVFO0VBQ0UsY0FBQTtFQUNBLG1CYmhCb0I7RWFpQnBCLG1CYmpCb0I7QUw2aUV4QjtBa0J6aEVFO0VBQ0UsV0FBQTtFQUNBLG9CYnJCbUI7QUxnakV2QjtBa0J4aEVFO0VBQ0UsV0FBQTtFQUNBLG9CYjFCbUI7QUxvakV2QjtBa0JwaEVFO0VBQ0UsV0FBQTtFQUNBLGdCYmhDaUI7RWFpQ2pCLGlDQUFBO0VBQ0EsU0FBQTtBbEJzaEVKO0FrQmpoRUU7RUFDRSxhQUFBO0VBQ0EsV0FBQTtFQUNBLHNCQUFBO0VBQ0EsWWJoRFk7RWFpRFosZ0JiNUNpQjtFYTZDakIsb0JiL0NtQjtBTGtrRXZCO0FrQmhoRUU7RUFDRSxTQUFBO0FsQmtoRUo7QWtCOWdFSTtFQUNFLFNBQUE7QWxCZ2hFTjtBa0IxZ0VFO0VBQ0UsdUJBQUE7QWxCNGdFSjtBa0J0Z0VFO0VBQ0UsV0FBQTtFQUNBLG9CYnBFa0I7QUw0a0V0QjtBa0IvL0RFO0VBQ0UsZ0JBQUE7RUFDQSxvQkFBQTtFQUNBLCtCQUFBO0FsQmlnRUo7QWtCcC9ERTtFQUNFLG9CQUFBO0VBQ0EsbUJBQUE7RUFDQSxhQUFBO0VBQ0EsY0FBQTtFQUNBLHFCQUFBO0FsQnMvREo7QWtCcC9ESTtFQUNFLGNBQUE7RUFDQSxhQUFBO0VBQ0EsY0FBQTtBbEJzL0ROO0FrQi8rREU7RUFDRSxXQUFBO0VBQ0Esb0JibEhtQjtBTG1tRXZCO0FrQjkrREk7RUFDRSxTQUFBO0FsQmcvRE47QWtCcitESTtFQUNFLGdCQUFBO0FsQnUrRE47QWtCaCtERTtFQUNFLFdBQUE7RUFDQSxvQkFBQTtFQUNBLFNBQUE7RUFHQSxxQ0FBQTtBbEJnK0RKO0FrQno5REU7RUFDRSxpQ0FBQTtBbEIyOURKO0FrQng5REU7RUFDRSxxQ0FBQTtBbEIwOURKO0FrQnY5REU7RUFDRSxxQ0FBQTtBbEJ5OURKOztBSXZtREk7RWMzV0Y7SUFHRSxnQmJuTVk7SWFvTVosWWI5S1k7RUxrb0VkO0VrQmw5REU7SUFPRSxjQUFBO0lBQ0EsZUFBQTtJQUNBLGVBQUE7RWxCODhESjtFa0IxOERFO0lBQ0UsY0FBQTtFbEI0OERKO0FBQ0Y7QWtCcjhEQTs7RUFFRSxZYnhNYztBTCtvRWhCOztBa0JwOERBO0VBQ0UsZ0JBQUE7QWxCdThERjs7QWtCLzdEQTtFQUNFLGNBQUE7RUFDQSxpQkFBQTtBbEJrOERGO0FrQmg4REU7RUFDRSx1QkFBQTtBbEJrOERKOztBa0J6N0RBO0VBQ0UsWWJuT2M7RWFvT2QsY0FBQTtBbEI0N0RGOztBa0J0N0RBO0VBQ0UsV0FBQTtFQUNBLGViN09rQjtFYThPbEIsb0JBQUE7QWxCeTdERjtBa0J2N0RFO0VBQ0UscUJBQUE7RUFDQSxvQkFBQTtFQUNBLHFCQUFBO0FsQnk3REo7QWtCdjdESTtFQUNFO0lBQ0Usb0JBQUE7RWxCeTdETjtBQUNGOztBa0I3NkRBO0VBQ0Usa0JBQUE7RUFDQSxNQUFBO0VBQ0EsT0FBQTtFQUNBLFdBQUE7RUFDQSxXQUFBO0FsQmc3REY7O0FJbnFESTtFY3pRRjtJQUNFLGdCYm5TWTtFTG10RWQ7QUFDRjtBbUJ2c0VBO0VBRUUscUJBQUE7RUFDQSxtQ0FBQTtBbkJ3c0VGOztBbUJuc0VBO0VBQ0U7SUFDRSwrQkFBQTtFbkJzc0VGO0VtQmpzRUE7SUFDRSxnQ0FBQTtFbkJtc0VGO0FBQ0Y7QW1CaHNFQTtFQUNFO0lBQ0UsZ0JBQUE7RW5Ca3NFRjtBQUNGO0FvQjl0RUE7RUFDRSxhQUFBO0VBQ0EsZUFBQTtFQUNBLHVCQUFBO0VBQ0EsWWZVYztFZUxkLFdBQUE7RUFDQSxlZkdrQjtFZUNsQix3Q0FBQTtFQUNBLDZCQUFBO0FwQnl0RUY7QW9CdnRFRTtFQUNFLFdBQUE7RUFDQSxTQUFBO0FwQnl0RUo7QW9CdHRFRTtFQUNFLGtCQUFBO0VBQ0EsYUFBQTtFQUNBLFdBQUE7RUFDQSxxQkFBQTtFQUNBLHNCQUFBO0VBQ0Esa0JBL0JtQjtFQWdDbkIsb0JBL0JzQjtFQWdDdEIsZ0JmaEJZO0VlaUJaLGdCQUFBO0FwQnd0RUo7QW9CbnRFRTtFQUNFLGtCQUFBO0VBQ0EsUUFBQTtFQUNBLFdBQUE7RUFDQSxZQUFBO0VBQ0Esb0JBQUE7S0FBQSxpQkFBQTtBcEJxdEVKO0FvQjlzRUU7RUFDRSxrQkFBQTtFQUNBLFNBQUE7RUFDQSwwQkFBQTtBcEJndEVKO0FvQjdzRUU7RUFDRSxjQUFBO0FwQitzRUo7O0FJbnVESTtFZ0J2ZUY7SUFDRSxnQmZyRVk7RUxteEVkO0VvQjVzRUU7SUFDRSxjQUFBO0lBQ0EsZUFBQTtFcEI4c0VKO0FBQ0Y7QXFCenhFQTtFQUNFLGNBQUE7RUFDQSw0QkFBQTtFQUNBLGNBQUE7QXJCMnhFRjs7QXFCeHhFQTtFQUNFLDRCQUFBO0VBQ0EsY0FBQTtFQUNBLHlDQUFBO0VBQ0Esb0JBQUE7RUFDQSxhQUFBO0VBQ0EsMkJBQUE7QXJCMnhFRjtBcUJ6eEVFO0VBQ0UsbUJBQUE7RUFDQSwwQkFBQTtFQUNBLHlCQUFBO0VBQ0EsVUFBQTtBckIyeEVKO0FxQnh4RUU7RUFDRSxtQkFBQTtFQUNBLDBCQUFBO0FyQjB4RUo7QXFCdnhFRTtFQUNFLGFBQUE7RUFDQSxtQkFBQTtBckJ5eEVKO0FxQnR4RUU7RUFDRSx3REFBQTtFQUNBLG1CQUFBO0VBQ0EsNkJBQUE7RUFDQSxpQ0FBQTtFQUNBLHVDQUFBO0VBQ0Esb0NBQUE7QXJCd3hFSjtBcUJyeEVFO0VBQ0Usd0RBQUE7RUFDQSxtQkFBQTtFQUNBLDZCQUFBO0VBQ0EsaUNBQUE7RUFDQSx1Q0FBQTtFQUNBLHlCQUFBO0VBQ0EscUJBQUE7RUFFQSxpQkFBQTtBckJzeEVKO0FxQnJ4RUk7RUFDRSx5QkFBQTtFQUNBLHFCQUFBO0FyQnV4RU47QXFCcHhFSTtFQUVJO0lBQ0UsaUJBQUE7RXJCcXhFUjtBQUNGOztBcUIvd0VBO0VBQ0UscUJBQUE7RUFDQSxxQ0FBQTtFQUNBLGlCQUFBO0FyQmt4RUY7O0FxQi93RUE7RUFDRSxlQUFBO0VBQ0EsZ0NBQUE7QXJCa3hFRjs7QXFCL3dFQTtFQUNFLG1CQUFBO0VBQ0EsMkJBQUE7RUFDQSw0QkFBQTtFQUNBLHNCQUFBO0VBQ0Esa0JBQUE7RUFDQSxhQUFBO0VBQ0EsVUFBQTtFQUNBLHdCQUFBO0VBQ0EsZ0JBQUE7QXJCa3hFRjtBcUJoeEVFO0VBQ0UsZ0JBQUE7RUFDQSxvQkFBQTtBckJreEVKO0FxQi93RUU7RUFFSTtJQUNFLG1CQUFBO0lBQ0EsaUJBQUE7RXJCZ3hFTjtBQUNGO0FxQjV3RUk7RUFDRSxhQUFBO0FyQjh3RU47O0FxQnp3RUE7RUFDRSx5QkFBQTtBckI0d0VGOztBSTUwREk7RWlCMWJGO0lBQ0UsY0FBQTtJQUNBLHVCQUFBO0VyQjB3RUY7RXFCdndFQTtJQUNFLFdBQUE7SUFDQSxTQUFBO0VyQnl3RUY7RXFCdHdFQTtJQUNFLFdBQUE7SUFDQSxxQ0FBQTtFckJ3d0VGO0VxQnJ3RUE7SUFDRSw2QkFBQTtJQUNBLGlDQUFBO0lBQ0EsdUNBQUE7SUFDQSxjQUFBO0lBQ0EsZUFBQTtFckJ1d0VGO0VxQnB3RUE7SUFDRSw2QkFBQTtJQUNBLGlDQUFBO0lBQ0EsdUNBQUE7SUFDQSw4Q0FBQTtFckJzd0VGO0VxQm53RUE7SUFDRSw2QkFBQTtJQUNBLGlDQUFBO0lBQ0EsdUNBQUE7RXJCcXdFRjtBQUNGO0FJNzJESTtFaUJuWkY7SUFDRSxjQUFBO0lBQ0EsY0FBQTtFckJtd0VGO0FBQ0Y7QXNCejVFRTtFQUNFLFVBQUE7QXRCMjVFSjs7QXNCcDVFRTtFQUNFLGFBQUE7RUFDQSxtQkFBQTtBdEJ1NUVKO0FzQnI1RUk7RUFDRSxXQUFBO0F0QnU1RU47QXNCcjVFSTtFQUNFLFdBQUE7QXRCdTVFTjtBc0JyNUVNO0VBQ0Usa0JBQUE7RUFDQSxnQkFBQTtBdEJ1NUVSO0FzQnI1RVE7RUFDRSx1QkFBQTtBdEJ1NUVWO0FJeDRESTtFa0IxZ0JBO0lBR0ksY0FBQTtFdEJtNUVOO0FBQ0Y7QUk3NERJO0VrQnJnQkU7SUFFSSxVQUFBO0V0Qm81RVI7QUFDRjtBSWw1REk7RWtCN2ZRO0lBQ0UscUJBQUE7RXRCazVFWjtFc0JoNUVVO0lBQ0UscUJBQUE7RXRCazVFWjtFc0IvNEVZO0lBQ0UsbUJBQUE7SUFDQSxvQkFBQTtJQUNBLHNCQUFBO0lBQ0EsdUJBQUE7SUFDQSxnQ0FBQTtFdEJpNUVkO0VzQjc0RVk7SUFDRSxvQkFBQTtPQUFBLGlCQUFBO0lBQ0EsWUFBQTtFdEIrNEVkO0VzQnY0RVU7SUFDRSxxQkFBQTtFdEJ5NEVaO0VzQnY0RVU7SUFDRSxxQkFBQTtFdEJ5NEVaO0VzQnI0RVk7SUFDRSxtQkFBQTtJQUNBLG9CQUFBO0lBQ0Esc0JBQUE7SUFDQSx1QkFBQTtJQUNBLGdDQUFBO0V0QnU0RWQ7RXNCbjRFWTtJQUNFLG9CQUFBO09BQUEsaUJBQUE7SUFDQSxZQUFBO0V0QnE0RWQ7QUFDRjtBSXQ3REk7RWtCeGNBO0lBRUksY0FBQTtFdEJnNEVOO0FBQ0Y7QUkzN0RJO0VrQnBjRTtJQUVJLFVBQUE7RXRCaTRFUjtFc0I5M0VVO0lBQ0UsbUJBQUE7SUFDQSxvQkFBQTtJQUNBLHNCQUFBO0lBQ0EsdUJBQUE7SUFDQSxnQ0FBQTtFdEJnNEVaO0FBQ0Y7QUl2OERJO0VrQm5iQTtJQUVJLGVBQUE7RXRCNDNFTjtBQUNGO0FzQjMzRU07RUFDRSxVQUFBO0F0QjYzRVI7QUkvOERJO0VrQi9hRTtJQUdJLFVBQUE7RXRCKzNFUjtBQUNGO0FJcDlESTtFa0J2YUE7SUFFSSxjQUFBO0V0QjYzRU47QUFDRjtBSXo5REk7RWtCbmFFO0lBRUksVUFBQTtFdEI4M0VSO0FBQ0Y7O0FzQmozRUk7RUFDRSwwQkFKWTtBdEJ3M0VsQjtBc0JqM0VJO0VBRUUsMkJBVFk7RUFVWiw0QkFWWTtBdEI0M0VsQjtBSXQrREk7RWtCellJO0lBQ0UsMkJBYlE7SUFjUiw0QkFkUTtFdEJnNEVoQjtFc0JoM0VRO0lBQ0UsZUFBQTtFdEJrM0VWO0VzQmgzRVE7SUFDRSxnQkFBQTtFdEJrM0VWO0FBQ0Y7QXNCeDJFSTtFQUNFLDBCQUpZO0F0QjgyRWxCO0FzQnYyRUk7RUFDRSwyQkFSWTtFQVNaLDRCQVRZO0F0QmszRWxCO0FJei9ESTtFa0I3V0k7SUFDRSwyQkFaUTtJQWFSLDRCQWJRO0V0QnMzRWhCO0VzQnYyRVE7SUFDRSxlQUFBO0V0QnkyRVY7RXNCdjJFUTtJQUNFLGdCQUFBO0V0QnkyRVY7QUFDRjtBc0I5MUVJO0VBQ0UsMEJBTFk7QXRCcTJFbEI7QXNCNzFFSTtFQUVFLDJCQVZZO0VBV1osNEJBWFk7QXRCeTJFbEI7QUk1Z0VJO0VrQi9VSTtJQUNFLDJCQWRRO0lBZVIsNEJBZlE7RXRCNjJFaEI7RXNCNTFFUTtJQUNFLDJCQWpCUztJQWtCVCw0QkFsQlM7RXRCZzNFbkI7RXNCMzFFUTtJQUNFLGVBQUE7RXRCNjFFVjtFc0IzMUVRO0lBQ0UsZ0JBQUE7RXRCNjFFVjtBQUNGOztBc0J0MUVBO0VBQ0UsYUFBQTtBdEJ5MUVGOztBc0JuMUVFOzs7Ozs7OztFQUlFLHdEQUFBO0VBQ0EsbUJBQUE7RUFDQSw2QkFBQTtFQUNBLGlDQUFBO0VBQ0EsdUNBQUE7RUFDQSxrQkFBQTtBdEIwMUVKO0FzQngxRUk7Ozs7Ozs7O0VBQ0UsYUFBQTtBdEJpMkVOOztBc0IxMUVFO0VBQ0UsU0FBQTtBdEI2MUVKO0FzQjMxRUk7RUFDRSxnQkFBQTtBdEI2MUVOO0FzQjExRU07RUFDRSw2QkFBQTtFQUNBLGlDQUFBO0VBQ0EsdUNBQUE7QXRCNDFFUjtBc0J6MUVNO0VBQ0UsbUJBQUE7RUFDQSxrQkFBQTtFQUNBLHlCQUFBO0F0QjIxRVI7QXNCeDFFTTtFQUNFLG1CQUFBO0VBQ0Esa0JBQUE7RUFDQSx5QkFBQTtBdEIwMUVSO0FzQm4xRUk7Ozs7RUFJRSxtQkFBQTtBdEJxMUVOO0FJdGxFSTtFa0JsU0o7SUF3Q0ksbUJBQUE7SUFDQSx5QkFBQTtJQUNBLG1CQUFBO0lBQ0Esa0JBQUE7RXRCbzFFRjtBQUNGO0FJOWxFSTtFa0JuUEE7SUFDRSxvQ0FBQTtFdEJvMUVKO0VzQmoxRUU7SUFDRSxvQ0FBQTtFdEJtMUVKO0FBQ0Y7QXNCaDFFRTtFQUNFLFdBQUE7RUFDQSxZQUFBO0F0QmsxRUo7O0FzQjUwRUU7OztFQUdFLG1CQUFBO0F0QiswRUo7QXNCNTBFRTs7RUFFRSw2QkFBQTtFQUNBLGlDQUFBO0VBQ0EsdUNBQUE7QXRCODBFSjtBc0IzMEVFO0VBQ0UsbUJBQUE7QXRCNjBFSjtBc0IxMEVFO0VBQ0UsMEJBQUE7QXRCNDBFSjtBSTVuRUk7RWtCcE9KO0lBd0JJLG1CQUFBO0V0QjQwRUY7QUFDRjtBc0J6MEVJO0VBQ0UsZ0JBQUE7QXRCMjBFTjtBc0J2MEVFO0VBQ0UsV0FBQTtFQUNBLFlBQUE7QXRCeTBFSjtBc0J0MEVFO0VBQ0UsYUFBQTtFQUNBLDZCQUFBO0F0QncwRUo7QUk1b0VJO0VrQjlMRjtJQUtJLG9CQUFBO0V0QnkwRUo7QUFDRjtBc0J0MEVFO0VBQ0UsY0FBQTtBdEJ3MEVKO0FJcHBFSTtFa0JyTEY7SUFJSSxVQUFBO0V0QnkwRUo7QUFDRjtBSXpwRUk7RWtCckxGO0lBUUksU0FBQTtFdEIwMEVKO0FBQ0Y7O0FzQnQwRUE7RUFDRSxvQ0FBQTtBdEJ5MEVGOztBc0J0MEVBO0VBQ0UsY0FBQTtFQUNBLFVBQUE7RUFDQSxTQUFBO0VBQ0EseUJBQUE7RUFDQSxnQkFBQTtFQUNBLGtCQUFBO0VBQ0EseUJBQUE7RUFDQSxzQkFBQTtFQUNBLHFCQUFBO0VBQ0EsZUFBQTtFQUVBLGtCQUFBO0VBQ0EsVUFBQTtBdEJ3MEVGO0FzQnQwRUU7RUFDRSxnQkFBQTtFQUNBLFNBQUE7QXRCdzBFSjtBSXJyRUk7RWtCcEtKO0lBcUJJLGFBQUE7RXRCdzBFRjtBQUNGO0FzQnIwRUU7RUFFRSxtQkFBQTtBdEJzMEVKO0FzQm4wRUU7RUFDRSxpQ0FBQTtBdEJxMEVKO0FzQmwwRUU7RUFDRSxnQkFBQTtFQUNBLGtCQUFBO0VBQ0Esc0JBQUE7QXRCbzBFSjtBc0JsMEVJO0VBQ0Usa0JBQUE7QXRCbzBFTjtBc0I5ekVJO0VBQ0UsNkJBQUE7RUFDQSxpQ0FBQTtFQUNBLHVDQUFBO0F0QmcwRU47QXNCcjBFRTtFQVFFLGNBQUE7RUFDQSxpQkFBQTtBdEJnMEVKO0FzQjl6RUk7RUFDRSxtQkFBQTtFQUNBLGtCQUFBO0VBQ0EseUJBQUE7QXRCZzBFTjtBc0I3ekVJO0VBQ0UsbUJBQUE7RUFDQSxrQkFBQTtFQUNBLHlCQUFBO0F0Qit6RU47QUkzdEVJO0VrQnBLSjtJQXFFSSxnQkFBQTtJQUNBLGtCQUFBO0lBQ0Esb0JBQUE7SUFDQSxpQkFBQTtJQUNBLGNBQUE7RXRCOHpFRjtFc0I1ekVFO0lBQ0UsZUFBQTtJQUNBLGlCQUFBO0V0Qjh6RUo7RXNCNXpFSTtJQUNFLGlCQUFBO0V0Qjh6RU47RXNCMXpFRTtJQUNFLGFBQUE7SUFDQSxrQkFBQTtJQUNBLFVBQUE7SUFDQSxpQkFBQTtJQUNBLGlCQUFBO0lBRUEsNkJBQUE7SUFDQSxpQ0FBQTtJQUNBLHVDQUFBO0V0QjJ6RUo7RXNCenpFSTtJQUNFLFVBQUE7RXRCMnpFTjtFc0J4ekVJO0lBQ0UsYUFBQTtFdEIwekVOO0VzQnR6RUU7SUFDRSxnQkFBQTtFdEJ3ekVKO0VzQnR6RUk7SUFDRSxlQUFBO0lBQ0Esa0JBQUE7SUFDQSxnQkFBQTtFdEJ3ekVOO0FBQ0Y7QUlud0VJO0VrQnBLSjtJQW9ISSxlQUFBO0lBQ0Esa0JBQUE7RXRCdXpFRjtBQUNGOztBc0JuekVBO0VBQ0UseUJBQUE7RUFFQSxlQUFBO0F0QnF6RUY7O0FzQjF5RUE7RUFDRSxvQ0FBQTtFQUVBLGdCQUFBO0F0QjR5RUY7O0FzQnp5RUE7RUFDRSx3QkFBQTtFQUNBLDZCQUFBO0VBQ0EsaUNBQUE7RUFDQSx1Q0FBQTtFQUNBLG1CQUFBO0VBQ0Esa0JBQUE7QXRCNHlFRjtBSTV4RUk7RWtCdEJKO0lBU0ksNkJBQUE7SUFDQSxpQ0FBQTtJQUNBLHVDQUFBO0V0QjZ5RUY7QUFDRjs7QXNCenlFRTtFQUNFLHFDQUFBO0F0QjR5RUo7QUl2eUVJO0VrQkZFO0lBQ0UsbUJBQUE7RXRCNHlFTjtBQUNGO0FzQnp5RUk7RUFDRSwwQkFBQTtBdEIyeUVOO0FJL3lFSTtFa0JZSTtJQUNFLG1CQUFBO0V0QnN5RVI7QUFDRjs7QXNCaHlFQTtFQUNFLFdBQUE7RUFDQSxrQkFBQTtBdEJteUVGO0FzQmp5RUU7RUFDRSxXQUFBO0VBQ0EsWUFBQTtFQUNBLFVBQUE7RW5CdGlCRiw4RkFBQTtBSDAwRkY7QXNCaHlFSTtFQUNFLFVBQUE7QXRCa3lFTjtBc0I5eEVFO0VBQ0UsU0FBQTtBdEJneUVKO0FzQjl4RUk7RUFDRSw2QkFBQTtFQUNBLGlDQUFBO0VBQ0EsVUFBQTtFQUNBLGtCQUFBO0F0Qmd5RU47QUkzMEVJO0VrQnVDQTtJQU9JLFdBQUE7SUFDQSxxQkFBQTtFdEJpeUVOO0FBQ0Y7O0FzQnp4RUE7RUFDRSxvQ0FBQTtBdEI0eEVGO0FzQjF4RUU7RUFDRSxnQkFBQTtBdEI0eEVKO0FJeDFFSTtFa0J3REo7SUFRSSxnQkFBQTtFdEI0eEVGO0FBQ0Y7O0FzQnp4RUE7RUFDRSw2QkFBQTtFQUNBLGlDQUFBO0VBQ0EsdUNBQUE7RUFDQSxrQkFBQTtFQUNBLG1CQUFBO0VBQ0EsU0FBQTtFQUNBLFVBQUE7RUFDQSxZQUFBO0VBQ0EscUJBQUE7QXRCNHhFRjs7QXNCenhFQTtFQUNFLFNBQUE7RUFDQSxZQUFBO0VBQ0EsU0FBQTtFQUNBLFlBQUE7RUFDQSxpQ0FBQTtBdEI0eEVGOztBc0J6eEVBO0VBQ0UsOEZBQUE7QXRCNHhFRjtBc0IxeEVFO0VBQ0UsMkVBQUE7RUFDQSxxR0FBQTtBdEI0eEVKOztBc0J4eEVBO0VBQ0UsNkZBQUE7QXRCMnhFRjtBc0J6eEVFO0VBQ0Usa0ZBQUE7QXRCMnhFSjs7QXNCdnhFQTtFQUNFLG9FQUFBO0VBQ0EscUVBQUE7QXRCMHhFRjtBc0J4eEVFO0VBQ0Usb0VBQUE7RUFDQSw0RUFBQTtBdEIweEVKOztBc0J0eEVBO0VBQ0UsMEJBQUE7RUFDQSwyQkFBQTtBdEJ5eEVGO0FzQnZ4RUU7RUFDRSxrRkFBQTtFQUNBLGdDQUFBO0F0Qnl4RUo7O0FzQnJ4RUE7RUFDRSwwQkFBQTtFQUNBLDJCQUFBO0F0Qnd4RUY7QXNCdHhFRTtFQUNFLGtGQUFBO0VBQ0EsZ0NBQUE7QXRCd3hFSjs7QXNCcHhFQTtFQUNFLGtCQUFBO0VBQ0EsbUJBQUE7QXRCdXhFRjtBc0JyeEVFO0VBQ0UsVUFBQTtBdEJ1eEVKOztBc0JueEVBO0VBQ0UsMEJBQUE7RUFDQSwyQkFBQTtBdEJzeEVGO0FzQnB4RUU7RUFDRSwrQkFBQTtBdEJzeEVKOztBSTM2RUk7RWtCMkpBO0lBQ0UsbUVBQUE7SUFFQSw2QkFBQTtJQUNBLGlDQUFBO0lBQ0EsdUNBQUE7RXRCbXhFSjtBQUNGO0FzQi93RUE7RUFDRSxhQUFBO0VBQ0EsV0FBQTtBdEJpeEVGO0FzQjl3RUU7RUFDRSwyQkFBQTtBdEJneEVKO0FzQjd3RUU7RUFDRSx5QkFBQTtFQUNBLG1CQUFBO0VBQ0EsbUJBQUE7RUFDQSxrQkFBQTtBdEIrd0VKO0FzQjd3RUk7RUFDRSxhQUFBO0VBQ0EsbUJBQUE7RUFDQSw2QkFBQTtFQUNBLGlDQUFBO0VBQ0EsdUNBQUE7QXRCK3dFTjtBc0I1d0VJO0VBQ0UsNkJBQUE7RUFDQSxpQ0FBQTtFQUNBLHVDQUFBO0F0Qjh3RU47QXNCMXdFRTtFQUNFLGtCQUFBO0VBQ0EsU0FBQTtFQUNBLE9BQUE7RUFDQSxnQkFBQTtBdEI0d0VKO0FzQjF3RUk7RUFDRSxtQkFBQTtBdEI0d0VOO0FzQnh3RUU7RUFDRSxtQkFBQTtFQUNBLFlBQUE7RUFDQSwyQkFBQTtFQUNBLDRCQUFBO0VBQ0Esc0JBQUE7RUFHQSxxQkFBQTtBdEJ3d0VKO0FzQnJ3RUU7RUFDRSxhQUFBO0VBQ0EsZUFBQTtFQUNBLG1CQUFBO0VBQ0EsaUJBQUE7QXRCdXdFSjs7QUlwK0VJO0VrQm9PRjtJQUNFLGNBQUE7SUFDQSxlQUFBO0V0Qm93RUY7QUFDRjtBSTMrRUk7RWtCb09GO0lBS0ksa0JBQUE7RXRCc3dFSjtBQUNGO0FJaC9FSTtFa0I0T0E7SUFDRSxtQkFBQTtFdEJ1d0VKO0VzQnB3RUU7SUFDRSxjQUFBO0lBQ0EsbUJBQUE7SUFDQSxXQUFBO0lBQ0Esa0JBQUE7RXRCc3dFSjtFc0Jud0VFO0lBQ0Usa0JBQUE7SUFDQSxTQUFBO0lBQ0EsT0FBQTtJQUNBLGdCQUFBO0V0QnF3RUo7RXNCbHdFRTtJQUNFLGFBQUE7RXRCb3dFSjtFc0Jod0VBO0lBQ0UsV0FBQTtJQUNBLGtCQUFBO0lBQ0EsYUFBQTtJQUNBLGtCQUFBO0lBQ0EsY0FBQTtFdEJrd0VGO0VzQmh3RUU7SUFDRSw2QkFBQTtJQUNBLGlCQUFBO0lBQ0Esa0JBQUE7SUFDQSxVQUFBO0V0Qmt3RUo7QUFDRjtBSWpoRkk7RWtCcVJBO0lBQ0UsY0FBQTtJQUNBLFlBQUE7SUFDQSxXQUFBO0V0Qit2RUo7RXNCNXZFRTtJQUNFLGFBQUE7RXRCOHZFSjtBQUNGO0FzQnp2RUU7RUFDRSwyQkFBQTtBdEIydkVKOztBdUIza0dBO0VBQ0UseUNBQUE7QXZCOGtHRjs7QXVCM2tHQTtFQUNFLFdBQUE7RUFDQSxnQkFBQTtFQUNBLFNBQUE7RUFDQSxZQUFBO0F2QjhrR0Y7O0F1QjFrR0E7RUFDRSw0QkFBQTtFQUNBLGNBQUE7QXZCNmtHRjs7QXVCMWtHQTtFQUNFLDZCQUFBO0VBQ0EsY0FBQTtFQUNBLDRCQUFBO0VBQ0EscUNBQUE7RUFDQSwwQkFBQTtFQUVBLG9CQUFBO0VBQ0EsY0FBQTtFQUNBLGlCQUFBO0VBQ0EsZ0JBQUE7RUFFQSxhQUFBO0VBQ0EsOEJBQUE7QXZCMmtHRjtBdUJ6a0dFO0VBQ0UsaUJBQUE7RUFDQSxlQUFBO0VBQ0EsZUFBQTtFQUNBLHlCQUFBO0VBQ0EscUJBQUE7QXZCMmtHSjtBdUJ6a0dJO0VBQ0U7SUFDRSwwQkFBQTtFdkIya0dOO0FBQ0Y7QXVCdmtHRTtFQUNFLG1CQUFBO0F2QnlrR0o7QUkza0ZJO0VtQjVoQko7SUFrQ0ksNkJBQUE7SUFDQSx1Q0FBQTtFdkJ5a0dGO0FBQ0Y7QUlqbEZJO0VtQjVoQko7SUF1Q0ksNkJBQUE7SUFDQSxpQ0FBQTtJQUNBLHVDQUFBO0V2QjBrR0Y7QUFDRjs7QXVCdmtHQTtFQUNFLGVBQUE7RUFDQSxNQUFBO0VBQ0EsT0FBQTtFQUNBLFFBQUE7QXZCMGtHRjs7QXVCdmtHQTtFQUNFLGFBQUE7QXZCMGtHRjs7QXVCdmtHQTtFQUNFLGVBQUE7RUFDQSxXQUFBO0VBQ0EsU0FBQTtFQUNBLDZCQUFBO0VBQ0EsdUNBQUE7RUFDQSxlQUFBO0VBQ0EsYUFBQTtBdkIwa0dGOztBdUJ2a0dBO0VBQ0UsY0FBQTtFQUNBLHdEQUFBO0VBQ0EsNkJBQUE7RUFDQSxpQ0FBQTtFQUNBLHVDQUFBO0F2QjBrR0Y7QXVCeGtHRTtFQUNFLGFBQUE7RUFDQSxpQkFBQTtFQUVBLGtCQUFBO0VBQ0EsZ0JBQUE7QXZCeWtHSjtBSTNuRkk7RW1CbmRGO0lBUUksdUJBQUE7SUFDQSxZQUFBO0V2QjBrR0o7QUFDRjs7QXVCcGtHRTtFQUNFLHlCQUFBO0F2QnVrR0o7O0FJcm9GSTtFbUJ6Ykk7SUFDRSxhQUFBO0V2QmtrR1I7QUFDRjtBdUI1akdJOztFQUVFLGNBQUE7QXZCOGpHTjtBSS9vRkk7RW1CMWFFO0lBQ0UscUJBQUE7RXZCNGpHTjtBQUNGOztBdUJ2akdBO0VBQ0UsYUFBQTtFQUNBLGVBQUE7RUFDQSw0QkFBQTtFQUNBLGNBQUE7QXZCMGpHRjs7QXVCdGpHRTtFQUNFLG9CQUFBO0VBQ0Esa0JBQUE7RUFDQSxNQUFBO0VBQ0EsU0FBQTtFQUNBLFFBQUE7RUFDQSxPQUFBO0F2QnlqR0o7O0FJcHFGSTtFbUIvWUE7SUFDRSxxQkFBQTtFdkJ1akdKO0V1QnBqR007SUFDRSwyQkFBQTtFdkJzakdSO0V1Qi9pR0U7SUFDRSx5QkFBQTtFdkJpakdKO0V1QjlpR007SUFDRSwyQkFBQTtFdkJnakdSO0FBQ0Y7QXVCemlHQTtFQUNFLDJCQUFBO0VBQ0EsNEJBQUE7RUFDQSxzQkFBQTtFQUNBLGtCQUFBO0VBQ0EsTUFBQTtFQUNBLE9BQUE7RUFDQSxRQUFBO0VBQ0EsU0FBQTtFQUNBLFVBQUE7RXBCOUpBLDhGQUFBO0FIMHNHRjs7QXVCaGlHQTtFQUNFLGFBQUE7QXZCbWlHRjs7QXVCaGlHQTtFQUNFLDJCQUFBO0VBQ0EsVUFBQTtFQUNBLFdBQUE7RXBCN0tBLDJGQUFBO0FIaXRHRjtBdUJoaUdFO0VBQ0UseUJBQUE7RUFDQSxVQUFBO0F2QmtpR0o7O0F1QjloR0E7RUFDRSxVQUFBO0F2QmlpR0Y7O0F1QjloR0E7RUFDRSxhQUFBO0F2QmlpR0Y7QXVCL2hHRTtFQUNFLGNBQUE7QXZCaWlHSjtBdUI5aEdFO0VBQ0UsYUFBQTtFQUNBLFNBQUE7QXZCZ2lHSjtBdUI5aEdJO0VBQ0UsYUFBQTtFQUNBLFlBQUE7QXZCZ2lHTjs7QXVCMWhHQTtFQUNFLDZCQUFBO0VBQ0EsaUNBQUE7RUFDQSx1Q0FBQTtFQUNBLG1CQUFBO0VBQ0EsV0FBQTtFQUNBLGNBQUE7RUFDQSxhQUFBO0VBQ0EsU0FBQTtFQUNBLGtCQUFBO0VBQ0EsTUFBQTtFQUNBLE9BQUE7RUFDQSxRQUFBO0VBQ0EsZ0ZBQUE7RUFDQSw0QkFBQTtFQUNBLHNCQUFBO0VBRUEsZ0JBQUE7RUFDQSx3QmxCbFFjO0FMOHhHaEI7QXVCemhHRTtFQUNFLGtGQUFBO0F2QjJoR0o7QXVCeGhHRTtFQUNFLGtGQUFBO0F2QjBoR0o7QXVCdmhHRTtFQUNFLGtGQUFBO0F2QnloR0o7QXVCdGhHRTtFQUNFLGtGQUFBO0F2QndoR0o7QXVCcmhHRTtFQUNFLGtGQUFBO0F2QnVoR0o7QXVCbmhHRTtFQUNFLGtGQUFBO0F2QnFoR0o7QXVCbGhHRTtFQUNFLGtGQUFBO0F2Qm9oR0o7QXVCamhHRTtFQUNFLGtGQUFBO0F2Qm1oR0o7QXVCaGhHRTtFQUNFLGtGQUFBO0F2QmtoR0o7QXVCL2dHRTtFQUNFLGtGQUFBO0F2QmloR0o7QXVCOWdHRTtFQUNFLFNBQUE7RUFDQSxTQUFBO0VBQ0EsZ0ZBQUE7QXZCZ2hHSjtBdUI3Z0dFO0VBQ0UsU0FBQTtFQUNBLFNBQUE7RUFDQSxnRkFBQTtBdkIrZ0dKOztBdUIzZ0dBO0VBQ0UsVUFBQTtFQUNBLHFCQUFBO0VBQ0EsOEJBQUE7RUFDQSxhQUFBO0F2QjhnR0Y7QXVCNWdHRTtFQUNFLGVBQUE7RUFDQSxnQkFBQTtBdkI4Z0dKO0F1QnRoR0E7RUFZRSxXQUFBO0F2QjZnR0Y7QXVCMWdHSTtFQUNFLDhCQUFBO0F2QjRnR047QXVCMWdHTTtFQUVFLHNCQUFBO0VBQ0Esc0NBQUE7RUFDQSxvQkFBQTtBdkIyZ0dSO0FJbnpGSTtFbUI5T0o7SUE2QkksVUFBQTtFdkJ3Z0dGO0V1QnRnR0U7SUFDRSxXQUFBO0V2QndnR0o7RXVCdGdHSTtJQUNFLGFBQUE7RXZCd2dHTjtFdUJyZ0dJO0lBQ0UsY0FBQTtFdkJ1Z0dOO0V1QnBnR0k7SUFDRSxlQUFBO0V2QnNnR047QUFDRjs7QXVCOS9GQTtFQUNFLDRCQUFBO0VBQ0EsNkNBQUE7RUFDQSxjQUFBO0VBQ0EsYUFBQTtFQUNBLHdEQUFBO0VBQ0EsNkJBQUE7RUFDQSxpQ0FBQTtFQUNBLHVDQUFBO0VBQ0EsbUJBQUE7RUFDQSxZQUFBO0VBQ0Esb0JBQUE7RUFDQSxlQUFBO0VBRUEseUJBQUE7S0FBQSxzQkFBQTtVQUFBLGlCQUFBO0F2QmdnR0Y7QXVCOS9GRTtFQUNFO0lBQ0UsV0FBQTtFdkJnZ0dKO0FBQ0Y7O0F1QjUvRkE7RUFDRSxrQkFBQTtFQUNBLFdBQUE7RUFDQSxZQUFBO0VBQ0EsaUJBQUE7QXZCKy9GRjs7QUloMkZJO0VtQnpKRjtJQUNFLGFBQUE7SUFDQSxrQkFBQTtFdkI2L0ZGO0V1QjEvRkE7SUFDRSxrQkFBQTtJQUNBLGNBQUE7SUFDQSxlQUFBO0lBQ0EsY0FBQTtJQUNBLFdBQUE7SUFDQSx3REFBQTtJQUNBLDZCQUFBO0lBQ0EsdUNBQUE7SUFDQSxnQkFBQTtJQUNBLHdCQUFBO0lBQ0EsTUFBQTtJQUNBLFlBQUE7SUFDQSxvQ0FBQTtJQUNBLDBCQUFBO0V2QjQvRkY7QUFDRjtBSXYzRkk7RW1CcEpGO0lBaUJJLDZCQUFBO0lBQ0EsaUNBQUE7SUFDQSx1Q0FBQTtJQUNBLFlBQUE7RXZCOC9GSjtBQUNGO0FJLzNGSTtFbUJwSkY7SUF1Qkksa0JBQUE7RXZCZ2dHSjtBQUNGO0FJcDRGSTtFbUJwSkY7SUEwQkksa0JBQUE7RXZCa2dHSjtBQUNGO0FJejRGSTtFbUJ0SEY7SUFDRSx3QkFBQTtPQUFBLHFCQUFBO1lBQUEsZ0JBQUE7SUFDQSx1QkFBQTtJQUNBLG9CQUFBO0lBRUEsU0FBQTtJQUNBLHdEQUFBO0lBQ0EsNkJBQUE7SUFDQSx1Q0FBQTtJQUNBLGVBQUE7SUFDQSxtQkFBQTtJQUVBLGFBQUE7SUFDQSxlQUFBO0V2QmdnR0Y7QUFDRjtBSXg1Rkk7RW1CdEhGO0lBZ0JJLDZCQUFBO0lBQ0EsaUNBQUE7SUFDQSx1Q0FBQTtFdkJrZ0dKO0FBQ0Y7QUkvNUZJO0VtQi9GQTtJQUNFLHlCQUFBO0V2QmlnR0o7RXVCOS9GRTtJQUNFLG9CQUFBO0V2QmdnR0o7RXVCei9GQTtJQUNFLHdCQUFBO0lBQ0EsZ0JBQUE7SUFDQSxTQUFBO0lBQ0EseUJBQUE7SUFDQSxXQUFBO0V2QjIvRkY7RXVCeC9GQTtJQUNFLFlBQUE7RXZCMC9GRjtFdUJ0L0ZBO0lBQ0UsNkJBQUE7SUFDQSxpQ0FBQTtJQUNBLHVDQUFBO0lBRUEsYUFBQTtFdkJ1L0ZGO0V1Qm4vRkU7SUFDRSxjQUFBO0V2QnEvRko7RXVCbC9GRTtJQUNFLFdBQUE7SUFDQSxZQUFBO0lBQ0Esb0JBQUE7SUFDQSx3QkFBQTtFdkJvL0ZKO0V1QmovRkU7SUFDRSw2QkFBQTtJQUNBLGlDQUFBO0lBQ0EsdUNBQUE7RXZCbS9GSjtFdUIvK0ZBO0lBQ0UsNkJBQUE7SUFDQSx1Q0FBQTtJQUNBLGNBQUE7SUFDQSxlQUFBO0lBQ0EsZUFBQTtJQUNBLFlBQUE7SUFDQSx1QkFBQTtFdkJpL0ZGO0V1QjkrRkE7SUFDRSxtQkFBQTtFdkJnL0ZGO0V1QjkrRkU7SUFDRSxvQmxCOWdCVTtFTDgvR2Q7RXVCMytGQTtJQUNFLDZCQUFBO0lBQ0EsdUNBQUE7RXZCNitGRjtBQUNGO0F1QjErRkE7RUFDRSxhQUFBO0F2QjQrRkY7O0FJMzlGSTtFbUJiRjtJQUNFLDZCQUFBO0lBQ0EsaUNBQUE7SUFDQSx1Q0FBQTtJQUVBLGFBQUE7RXZCMitGRjtFdUJwK0ZBO0lBQ0UsWUFBQTtFdkJzK0ZGO0V1Qm4rRkE7SUFDRSxjQUFBO0lBQ0EsaUJBQUE7SUFDQSw2QkFBQTtJQUNBLHVDQUFBO0V2QnErRkY7QUFDRjtBd0J4K0dFOztFQUVFLFdBQUE7QXhCMCtHSjtBSWovRkk7RW9CbmZBOztJQUVFLFVBQUE7RXhCdStHSjtFd0JoaEhBOztJQUNFLGNBQUE7RXhCbWhIRjtFd0JoaEhBOztJQUNFLGFBQUE7RXhCbWhIRjtFd0JoaEhBOztJQUNFLGdCQUFBO0V4Qm1oSEY7RXdCNytHRTs7SUFFRSxXQUFBO0V4QisrR0o7RXdCbGhIQTs7SUFDRSxhQUFBO0V4QnFoSEY7RXdCbGhIQTs7SUFDRSxjQUFBO0V4QnFoSEY7RXdCbGhIQTs7SUFDRSxlQUFBO0V4QnFoSEY7QUFDRjtBSW5oR0k7RW9CNWdCRjs7SUFDRSxhQUFBO0V4Qm1pSEY7RXdCaGlIQTs7SUFDRSxjQUFBO0V4Qm1pSEY7RXdCaGlIQTs7SUFDRSxlQUFBO0V4Qm1pSEY7RXdCMWpIQTs7SUFDRSxjQUFBO0V4QjZqSEY7RXdCMWpIQTs7SUFDRSxhQUFBO0V4QjZqSEY7RXdCMWpIQTs7SUFDRSxnQkFBQTtFeEI2akhGO0FBQ0Y7QXdCMy9HRTtFQUNFLGdCbkJ4RVk7QUxxa0hoQjs7QXlCN2xIQTtFQUNFLDhDQUFBO0F6QmdtSEY7O0F5QjdsSEE7RUFDRSxrQkFBQTtFQUNBLGNBQUE7RUFDQSw0QkFBQTtFQUNBLFdBQUE7RUFDQSw4QkFBQTtBekJnbUhGO0F5QjlsSEU7RUFDRSxhQUFBO0F6QmdtSEo7QXlCN2xIRTtFQUNFLGtCQUFBO0VBQ0EsV0FBQTtFQUNBLDhCQUFBO0VBQ0EsZ0JBQUE7QXpCK2xISjs7QXlCMWxIQTtFQUNFLFdBQUE7RUFDQSxrQkFBQTtFQUNBLDJCQUFBO0VBQ0EsNEJBQUE7RUFDQSxzQkFBQTtFQUNBLGdCQUFBO0VBRUEsa0RBQUE7QXpCNGxIRjtBSS9rR0k7RXFCcmhCSjtJQWFJLG1CQUFBO0V6QjJsSEY7RXlCemxIRTtJQUNFLGNBQUE7SUFDQSxXQUFBO0lBQ0Esc0JBQUE7SUFDQSxVQUFBO0V6QjJsSEo7QUFDRjtBSTFsR0k7RXFCdGdCQTtJQU9JLHNCQUFBO0V6QjZsSE47QUFDRjtBeUJ6bEhFO0VBQ0UsaUJBQUE7QXpCMmxISjtBeUJ4bEhJO0VBQ0Usb0JBQUE7QXpCMGxITjtBSXJtR0k7RXFCbGZBO0lBRUksaUJBQUE7RXpCeWxITjtBQUNGO0F5QnBsSEU7RUFDRSxrQkFBQTtFQUNBLE1BQUE7RUFDQSxPQUFBO0VBQ0EsU0FBQTtFQUNBLFFBQUE7QXpCc2xISjs7QXlCaGxIRTtFQUNFLGtCQUFBO0VBQ0EsYXBCOUVZO0VvQitFWixjcEIvRVk7RW9CZ0ZaLFlBQUE7RUFDQSxtQkFBQTtFQUNBLDZCQUFBO0VBQ0EsaUNBQUE7RUFDQSx1Q0FBQTtBekJtbEhKO0FJNW5HSTtFcUIvZEY7SUFZSSxZQUFBO0lBSUEsa0JBQUE7SUFDQSxtQkFBQTtFekJnbEhKO0FBQ0Y7QXlCN2tIRTtFQUNFLFdBQUE7RUFDQSxZQUFBO0F6QitrSEo7O0F5QjNrSEE7RUFDRSxrQkFBQTtFQUNBLGFwQnpHYztFb0IwR2QsY3BCMUdjO0VvQjJHZCxZQUFBO0VBQ0EsbUJBQUE7RUFDQSw2QkFBQTtFQUNBLGlDQUFBO0VBQ0EsdUNBQUE7QXpCOGtIRjtBSWxwR0k7RXFCcGNKO0lBWUksNkJBQUE7SUFDQSxpQ0FBQTtJQUNBLHVDQUFBO0V6QjhrSEY7RXlCNWtIRTtJQUNFLGFBQUE7RXpCOGtISjtBQUNGO0FJNXBHSTtFcUJwY0o7SUFzQkksWUFBQTtJQUNBLDZCQUFBO0lBQ0EsaUNBQUE7SUFDQSx1Q0FBQTtJQUNBLGtCQUFBO0lBQ0EsbUJBQUE7RXpCOGtIRjtBQUNGOztBeUJ6a0hBO0VBQ0Usa0JBQUE7RUFDQSxtQkFBQTtBekI0a0hGOztBeUJ4a0hFO0VBQ0UsU0FBQTtFQUNBLFlBQUE7RUFDQSxhcEJqSlk7QUw0dEhoQjtBSWpyR0k7RXFCN1pGO0lBT0ksa0JBQUE7SUFDQSxTQUFBO0lBQ0EsUUFBQTtJQUNBLFlBQUE7SUFDQSxvQkFBQTtJQUNBLGdDQUFBO0lBQ0Esa0JBQUE7RXpCMmtISjtBQUNGOztBeUJya0hFO0VBQ0UsU0FBQTtFQUNBLFlBQUE7RUFDQSxhcEJyS1k7QUw2dUhoQjtBSWxzR0k7RXFCellGO0lBTUksWUFBQTtJQUVBLGtCQUFBO0V6QndrSEo7QUFDRjs7QXlCbmtIRTtFQUNFLFNBQUE7RUFDQSxZQUFBO0VBQ0EsYXBCbkxZO0FMeXZIaEI7QUk5c0dJO0VxQjNYRjtJQU1JLFVBQUE7SUFFQSxrQkFBQTtFekJza0hKO0FBQ0Y7O0F5QmxrSEE7RUFDRSxrQkFBQTtFQUNBLFlBQUE7RUFDQSxRQUFBO0VBQ0EsUUFBQTtFQUNBLFNBQUE7RUFDQSxPQUFBO0VBQ0EsV0FBQTtFQUNBLFlBQUE7RUFDQSxVQUFBO0VBQ0EsNEJBQUE7RUFDQSwyQkFBQTtFQUNBLHNCQUFBO0F6QnFrSEY7QXlCamxIQTtFdEI3SkUsOEZBQUE7QUhpdkhGO0F5QjdqSEU7RUFDRSxVQUFBO0VBRUEsWUFBQTtBekI4akhKO0F5QjFqSEU7RUFDRSxNQUFBO0VBQ0EsT0FBQTtFQUNBLFNBQUE7RUFDQSxRQUFBO0VBQ0EsV0FBQTtFQUNBLFlBQUE7RUFDQSxjQUFBO0VBQ0EsVUFBQTtFQUNBLG9CQUFBO0tBQUEsaUJBQUE7RUFDQSxrQkFBQTtFdEJyTUYsOEZBQUE7QUhrd0hGO0F5QnhqSEk7RUFDRSxVQUFBO0F6QjBqSE47QXlCdGpISTtFQUNFLGFBQUE7QXpCd2pITjtBSTd2R0k7RXFCcFRBO0lBR0Usa0JBQUE7SUFDQSxZQUFBO0V6QmtqSEo7RXlCaGpISTtJQUNFLGFBQUE7RXpCa2pITjtFeUIvaUhJO0lBQ0UsY0FBQTtFekJpakhOO0FBQ0Y7O0F5QjNpSEU7RUFFRSxZQUFBO0F6QjZpSEo7QUk3d0dJO0VxQmxTRjtJQUtJLFlBQUE7SUFDQSxhcEIvUVU7RUw2ekhkO0FBQ0Y7QUlueEdJO0VxQmxTRjtJQVVJLFlBQUE7SUFDQSxrQkFBQTtFekIraUhKO0FBQ0Y7O0F5QjFpSEU7RUFDRSxZQUFBO0F6QjZpSEo7O0F5QnhpSEU7RUFDRSxZQUFBO0F6QjJpSEo7QUlqeUdJO0VxQjNRRjtJQUlJLFlBQUE7SUFDQSxXQUFBO0V6QjRpSEo7QUFDRjs7QXlCeGlIQTtFQUNFLHFCQUFBO0VBQ0Esa0JBQUE7RUFDQSxNQUFBO0VBQ0EsT0FBQTtFQUNBLFdBQUE7RUFDQSxZQUFBO0VBQ0EsWUFBQTtBekIyaUhGO0F5QnppSEU7RUFDRSxZQUFBO0VBQ0EsaUJBQUE7RUFDQSxtQkFBQTtFQUNBLDZCQUFBO0F6QjJpSEo7QXlCdmlIRTtFQUNFLGtCQUFBO0VBQ0Esa0JBQUE7QXpCeWlISjs7QXlCcmlIQTtFQUdFLHFCQUFBO0VBQ0EsWUFBQTtFQUNBLDZCQUFBO0VBQ0Esd0RBQUE7RUFDQSw2QkFBQTtFQUNBLGlDQUFBO0VBQ0EsdUNBQUE7RUFDQSxxQkFBQTtFQUNBLGdCQUFBO0VBQ0EsTUFBQTtFQUNBLE9BQUE7RUFDQSxrQkFBQTtBekJzaUhGO0FJMTBHSTtFcUIxT0o7SUF3QkksNkJBQUE7SUFDQSxpQ0FBQTtJQUNBLHVDQUFBO0V6QmdpSEY7RXlCM2hIRTtJQUNFLFdBQUE7SUFDQSxZQUFBO0lBQ0EsaUJBQUE7SUFDQSxhQUFBO0lBQ0EsbUJBQUE7SUFDQSx1QkFBQTtJQUNBLGtCQUFBO0lBQ0EsTUFBQTtJQUNBLE9BQUE7SUFDQSxRQUFBO0V6QjZoSEo7RXlCdGtIRjtJQTRDSSw2QkFBQTtJQUNBLGlDQUFBO0lBQ0EsdUNBQUE7SUFDQSxnQkFBQTtJQUNBLGFwQmpYWTtFTDg0SGQ7QUFDRjs7QXlCMWhIQTtFQUNFLGtCQUFBO0VBQ0EsWUFBQTtFQUNBLFlBQUE7RUFDQSxTQUFBO0VBQ0EsWUFBQTtFQUNBLGFBQUE7RUFDQSxhQUFBO0VBQ0EsdUJBQUE7RUFDQSx1QkFBQTtFQUNBLGlCQUFBO0F6QjZoSEY7QUlqM0dJO0VxQnhLRTtJQUNFLFNBQUE7RXpCNGhITjtBQUNGOztBeUJ2aEhBO0VBQ0UsYUFBQTtBekIwaEhGOztBeUJ2aEhBO0VBQ0UsdUNBQUE7RUFDQSxZQUFBO0VBQ0EsT0FBQTtFQUNBLGFBQUE7RUFDQSxjQUFBO0VBQ0Esa0JBQUE7RUFDQSw2QkFBQTtFQUNBLGdCQUFBO0VBQ0EsVUFBQTtBekIwaEhGO0F5QnhoSEU7RUFDRSxjQUFBO0F6QjBoSEo7QXlCdmhIRTtFQUNFLGVBQUE7QXpCeWhISjtBeUJ0aEhFO0VBQ0Usa0JBQUE7RUFDQSxXQUFBO0VBQ0EsNkJBQUE7RUFDQSxjQUFBO0VBQ0EsU0FBQTtFQUNBLE9BQUE7RUFDQSxVQUFBO0F6QndoSEo7QXlCcmhIRTtFQUNFLHNCQUFBO0VBQ0EsV0FBQTtFQUNBLFlBQUE7RUFDQSxjQUFBO0VBQ0Esa0JBQUE7RUFDQSxhQUFBO0VBQ0EsZUFBQTtFQUVBLE9BQUE7RUFDQSxRQUFBO0VBQ0EsMkRBQUE7RUFDQSxVQUFBO0F6QnNoSEo7QUlsNkdJO0VxQmhJRjtJQWVJLGFBQUE7RXpCdWhISjtBQUNGO0F5QmxoSEU7RUFDRSxXQUFBO0VBQ0Esa0JBQUE7RUFDQSxTQUFBO0VBQ0EsV0FBQTtFQUNBLGNBQUE7RUFDQSxjQUFBO0F6Qm9oSEo7QXlCaGhISTtFQUNFLFdBQUE7RUFDQSw2QkFBQTtBekJraEhOO0F5QjdnSEk7RUFDRSxvQkFBQTtBekIrZ0hOO0F5QjFnSEk7RUFDRSx1QkFBQTtBekI0Z0hOO0F5QnZnSEk7RUFDRSx1QkFBQTtBekJ5Z0hOOztBSTU3R0k7RXFCdEVGO0lBRUUsYXBCdmVZO0lvQndlWixjcEJ4ZVk7SW9CeWVaLGVwQnplWTtJb0IwZVosZ0NBQUE7SUFDQSxlQUFBO0V6QnFnSEY7QUFDRjtBSXQ4R0k7RXFCeERGO0lBQ0UsYUFBQTtFekJpZ0hGO0FBQ0Y7QTBCeC9IQTs7Ozs7Ozs7Ozs7Q0FBQTtBQWNBO0VBQ0UsbUNBQUE7RUFDQSw4QkFBQTtFQUNBLHlDQUFBO0VBQ0Esd0NBQUE7RUFDQSxzQ0FBQTtFQUVBLGdCQUFBO0ExQnUvSEY7QTBCci9IRTtFQUNFLGFBQUE7QTFCdS9ISjtBMEJwL0hFO0VBQ0UsbUJBQUE7RUFDQSw2QkFBQTtFQUNBLGlDQUFBO0VBQ0EsdUNBQUE7RUFDQSxtQkFBQTtFQUNBLGFBQUE7QTFCcy9ISjtBMEJuL0hFO0VBQ0UsaUJBQUE7QTFCcS9ISjtBMEJwL0hJO0VBQ0UseUJBQUE7RUFDQSxxQkFBQTtBMUJzL0hOO0EwQnAvSE07RUFDRTtJQUNFLHFCQUFBO0UxQnMvSFI7QUFDRjtBMEJsL0hFO0VBQ0UseUJBQUE7RUFDQSxpQkFBQTtFQUNBLHVCQUFBO0VBQ0EsNkJBQUE7RUFDQSwyQkFBQTtFQUNBLFVBQUE7RUFDQSxrQkFBQTtFQUNBLGdCQUFBO0VBQ0EsaUJBQUE7QTFCby9ISjtBMEJqL0hJO0VBQ0UsMkJBQUE7QTFCbS9ITjtBSXBnSEk7RXNCL2hCSjtJQXFESSxvQkFBQTtJQUNBLGtCQUFBO0lBQ0Esc0JBQUE7RTFCay9IRjtFMEJoL0hFO0lBQ0UsYUFBQTtJQUNBLDhCQUFBO0lBQ0EsZUFBQTtJQUNBLDhCQUFBO0UxQmsvSEo7RTBCLytIRTtJQUNFLFdBQUE7RTFCaS9ISjtFMEIvK0hJO0lBQ0UsMEJBQUE7RTFCaS9ITjtBQUNGOztBMkJ4aUlFO0V4QkhBLHNDQUFBO0VBQ0Esb0NBQUE7RUFDQSxnQkFBQTtFQUNBLDBDQUFBO0VBQ0EsdUJBQUE7RUFDQSwrQkFBQTtBSCtpSUY7QTJCMWlJSTs7O0VBR0UsYUFBQTtFQUNBLHVCQUFBO0EzQjRpSU47O0EyQnZqSUU7RXhCSEEsc0NBQUE7RUFDQSxvQ0FBQTtFQUNBLGdCQUFBO0VBQ0EsMENBQUE7RUFDQSx1QkFBQTtFQUNBLCtCQUFBO0FIOGpJRjtBMkJ6aklJOzs7RUFHRSxhQUFBO0VBQ0EsdUJBQUE7QTNCMmpJTjs7QTJCdGtJRTtFeEJIQSxzQ0FBQTtFQUNBLG9DQUFBO0VBQ0EsZ0JBQUE7RUFDQSwwQ0FBQTtFQUNBLHVCQUFBO0VBQ0EsK0JBQUE7QUg2a0lGO0EyQnhrSUk7OztFQUdFLGFBQUE7RUFDQSx1QkFBQTtBM0Iwa0lOOztBMkJybElFO0V4QkhBLHNDQUFBO0VBQ0Esd0NBQUE7RUFDQSxnQkFBQTtFQUNBLHlDQUFBO0VBQ0EsdUJBQUE7RUFDQSwrQkFBQTtBSDRsSUY7QTJCdmxJSTs7O0VBR0UsYUFBQTtFQUNBLHVCQUFBO0EzQnlsSU47O0EyQnBtSUU7RXhCSEEsc0NBQUE7RUFDQSx1Q0FBQTtFQUNBLGdCQUFBO0VBQ0EseUNBQUE7RUFDQSxpQkFBQTtFQUNBLCtCQUFBO0FIMm1JRjtBMkJ0bUlJOzs7RUFHRSxhQUFBO0VBQ0EsdUJBQUE7QTNCd21JTjs7QTJCbm5JRTtFeEJIQSxzQ0FBQTtFQUNBLHdDQUFBO0VBQ0EsZ0JBQUE7RUFDQSx3Q0FBQTtFQUNBLGlCQUFBO0VBQ0EsK0JBQUE7QUgwbklGO0EyQnJuSUk7OztFQUdFLGFBQUE7RUFDQSx1QkFBQTtBM0J1bklOOztBMkJsb0lFO0V4QkhBLHNDQUFBO0VBQ0Esb0NBQUE7RUFDQSxnQkFBQTtFQUNBLDBDQUFBO0VBQ0EsaUJBQUE7RUFDQSwrQkFBQTtBSHlvSUY7QTJCcG9JSTs7O0VBR0UsYUFBQTtFQUNBLHVCQUFBO0EzQnNvSU47O0EyQmpwSUU7RXhCSEEsdUNBQUE7RUFDQSx3Q0FBQTtFQUNBLGdCQUFBO0VBQ0Esd0NBQUE7RUFDQSx1QkFBQTtFQUNBLCtCQUFBO0FId3BJRjtBMkJucElJOzs7RUFHRSxhQUFBO0VBQ0EsdUJBQUE7QTNCcXBJTjs7QTJCaHFJRTtFeEJIQSx1Q0FBQTtFQUNBLHdDQUFBO0VBQ0EsZ0JBQUE7RUFDQSwwQ0FBQTtFQUNBLHVCQUFBO0VBQ0EsK0JBQUE7QUh1cUlGO0EyQmxxSUk7OztFQUdFLGFBQUE7RUFDQSx1QkFBQTtBM0JvcUlOOztBMkIvcUlFO0V4QkhBLHNDQUFBO0VBQ0Esc0NBQUE7RUFDQSxnQkFBQTtFQUNBLDBDQUFBO0VBQ0EsaUJBQUE7RUFDQSwrQkFBQTtBSHNySUY7QTJCanJJSTs7O0VBR0UsYUFBQTtFQUNBLHVCQUFBO0EzQm1ySU4iLCJmaWxlIjoibWFpbi5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyJAY2hhcnNldCBcIlVURi04XCI7XG5AaW1wb3J0IHVybChcImh0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzMj9mYW1pbHk9Tm90bytTYW5zK0pQOndnaHRAMzAwOzQwMDs1MDA7NzAwJmRpc3BsYXk9c3dhcFwiKTtcbi5wc2V1ZG8ge1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xufVxuXG4ud2lkZSB7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cblxuLnRleHQtYmxhY2sge1xuICBjb2xvcjogdmFyKC0tYmxhY2spICFpbXBvcnRhbnQ7XG59XG4udGV4dC13aGl0ZSwgLmJhY2tncm91bmQtYmxhY2sge1xuICBjb2xvcjogdmFyKC0td2hpdGUpICFpbXBvcnRhbnQ7XG59XG5cbi5iYWNrZ3JvdW5kLWJsYWNrIHtcbiAgYmFja2dyb3VuZDogIzFBMUExOCAhaW1wb3J0YW50O1xufVxuLmJhY2tncm91bmQtd2hpdGUge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS13aGl0ZSkgIWltcG9ydGFudDtcbn1cbi5iYWNrZ3JvdW5kLWNhcHB1Y2Npbm8ge1xuICBiYWNrZ3JvdW5kOiAjOTA2NDRDICFpbXBvcnRhbnQ7XG59XG4uYmFja2dyb3VuZC1yZWQge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1yZWQpICFpbXBvcnRhbnQ7XG59XG4uYmFja2dyb3VuZC1ibHVlIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tYmx1ZSkgIWltcG9ydGFudDtcbn1cbi5iYWNrZ3JvdW5kLXllbGxvdyB7XG4gIGJhY2tncm91bmQ6IHZhcigtLXllbGxvdykgIWltcG9ydGFudDtcbn1cbi5iYWNrZ3JvdW5kLW9mZi13aGl0ZSB7XG4gIGJhY2tncm91bmQ6IHZhcigtLW9mZi13aGl0ZSkgIWltcG9ydGFudDtcbn1cblxuLmhpZGRlbiB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4uY2xlYXJmaXg6YmVmb3JlIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNvbnRlbnQ6IFwiIFwiO1xufVxuLmNsZWFyZml4OmFmdGVyIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNvbnRlbnQ6IFwiIFwiO1xuICBjbGVhcjogYm90aDtcbn1cblxuLmlubGluZSB7XG4gIGRpc3BsYXk6IGlubGluZTtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDEwMjNweCkge1xuICAucGFkZGVkIHtcbiAgICBwYWRkaW5nOiAwIDMwcHg7XG4gIH1cbiAgLmRlc2t0b3AtdXAsXG4gIC5kZXNrdG9wLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuICAudGFibGV0LWRvd24ge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAudGFibGV0LW9ubHksXG4gIC5oaWRlLWZvci1tb2JpbGUge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5tb2JpbGUtb25seSxcbiAgLmhpZGUtZm9yLXRhYmxldCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIC50YWJsZXQtZG93bixcbiAgLnRhYmxldC1vbmx5LFxuICAuaGlkZS1mb3ItZGVza3RvcCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG4gIC5kZXNrdG9wLXVwIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG46cm9vdCB7XG4gIC0tc2l0ZS13aWR0aDogMTAwdnc7XG4gIC0tbWlkZGxlLWdyZXk6ICM5OTk7XG4gIC0tZGFya2Jyb3duOiAjMjYyNjI2O1xuICAtLW9mZi13aGl0ZTogI0UxRUZFRTtcbiAgLS1saWdodC1ncmV5OiAjZTRlNGU0O1xuICAtLXJlZDogI0ZFNDgyMztcbiAgLS1ibHVlOiAjNEQ5N0JGO1xuICAtLXllbGxvdzogI0Y4RjNDRDtcbiAgLS1vcmFuZ2U6ICNFREEzMTI7XG4gIC0tZ3JlZW46ICMzQzg1OTY7XG4gIC0tcHVycGxlOiAjRUI0QkQxO1xuICAtLWJhbm5lci1ncmV5OiAjOWQ4ZjhjO1xuICAtLWJhbm5lci1yZWQ6ICNGRjQ2MUU7XG4gIC0td2hpdGU6ICNmZmY7XG4gIC0tYmxhY2s6ICMwMDA7XG4gIC0tb2ZmLWJsYWNrOiAjMjIyO1xuICAtLWdyYXk6ICNhYWE7XG4gIC0tbG9hZC1tb3JlLWJhY2tncm91bmQ6ICMwMDA7XG4gIC0tZXh0ZW5zaW9uLWhvbWUtc2xpZGVzOiAjMDAwO1xuICAtLWV4dGVuc2lvbi1jb250ZW50LWdyaWQ6ICMwMDA7XG4gIC0tcGx5ci1jb2xvci1tYWluOiAjZmZmO1xuICAtLXBseXItdmlkZW8tY29udHJvbC1jb2xvci1ob3ZlcjogIzk5OTtcbiAgLS1wbHlyLXZpZGVvLWNvbnRyb2wtYmFja2dyb3VuZC1ob3ZlcjogdHJhbnNwYXJlbnQ7XG4gIC0tcGx5ci1tZW51LWFycm93LXNpemU6IDIwcHg7XG4gIC0tY29sLTE6IGNhbGModmFyKC0tc2l0ZS13aWR0aCkgLyAxMik7XG4gIC0tY29sLTI6IGNhbGModmFyKC0tY29sLTEpICogMik7XG4gIC0tY29sLTM6IGNhbGModmFyKC0tY29sLTEpICogMyk7XG4gIC0tY29sLTQ6IGNhbGModmFyKC0tY29sLTEpICogNCk7XG4gIC0tY29sLTU6IGNhbGModmFyKC0tY29sLTEpICogNSk7XG4gIC0tY29sLTY6IGNhbGModmFyKC0tY29sLTEpICogNik7XG4gIC0tY29sLTc6IGNhbGModmFyKC0tY29sLTEpICogNyk7XG4gIC0tY29sLTg6IGNhbGModmFyKC0tY29sLTEpICogOCk7XG4gIC0tY29sLTk6IGNhbGModmFyKC0tY29sLTEpICogOSk7XG4gIC0tY29sLTEwOiBjYWxjKHZhcigtLWNvbC0xKSAqIDEwKTtcbiAgLS1jb2wtMTE6IGNhbGModmFyKC0tY29sLTEpICogMTEpO1xuICAtLXNjcm9sbGJhcjogY2FsYygxMDB2dyAtIDEwMCUpO1xuICAtLXNlY3Rpb24tbWFyZ2luOiAyLjg3NXJlbTtcbiAgLS1zZWN0aW9uLW1hcmdpbi1kb3VibGU6IDUuNzVyZW07XG4gIC0tZm9udC1zaXplLXM6IDEuMjVyZW07XG4gIC0tbGluZS1oZWlnaHQtczogMS4yNTtcbiAgLS1mb250LXNpemUtbTogMS44NzVyZW07XG4gIC0tbGluZS1oZWlnaHQtbTogMS4yO1xuICAtLWZvbnQtc2l6ZS1sOiAyLjVyZW07XG4gIC0tbGluZS1oZWlnaHQtbDogMTtcbiAgLS1mb250LXNpemUteGw6IDMuMTI1cmVtO1xuICAtLWxpbmUtaGVpZ2h0LXhsOiAxO1xuICAtLWZvbnQtc2l6ZS14eGw6IDMuNzVyZW07XG4gIC0tbGluZS1oZWlnaHQteHhsOiAxO1xuICAtLWxldHRlci1zcGFjaW5nLXM6IDA7XG4gIC0tbGV0dGVyLXNwYWNpbmctbTogMDtcbiAgLS1sZXR0ZXItc3BhY2luZy1sOiAwO1xuICAtLWxldHRlci1zcGFjaW5nLXhsOiAwO1xuICAtLWxldHRlci1zcGFjaW5nLXh4bDogMDtcbiAgLS1waGMtYmxhY2stYWY6ICMxNzE3MTc7XG4gIC0tcGhjLXdoaXRlLWFmOiAjRkFGQUZBO1xuICAtLXBoYy1wYXBlcjogI0ZBRkFGNjtcbiAgLS1waGMtZWdnOiAjRUFFQURBO1xuICAtLXBoYy10ZWFsOiAjRDFERURFO1xuICAtLXBoYy10ZWFsLXdhc2hvdXQ6ICMyNDJDMkM7XG4gIC0tcGhjLWdyYXk6ICM4NzkyOTI7XG4gIC0tcGhjLWdyYXktd2FzaG91dDogIzUwNTY1NjtcbiAgLS1waGMtb2NlYW46ICM0RUE1QzQ7XG4gIC0tcGhjLWJnOiB2YXIoLS1waGMtcGFwZXIpO1xuICAtLXBoYy1mZzogdmFyKC0tcGhjLWJsYWNrLWFmKTtcbiAgLS1waGMtbXV0ZWQ6IHZhcigtLXBoYy1ncmF5LXdhc2hvdXQpO1xuICAtLXBoYy1ydWxlOiB2YXIoLS1waGMtdGVhbCk7XG4gIC0tcGhjLWFjY2VudDogdmFyKC0tcGhjLW9jZWFuKTtcbiAgLS1waGMtcGFnZS13aWR0aDogOTByZW07XG4gIC0tcGhjLXJvb3Q6IDFyZW07XG4gIC0tcGhjLW1lbnUtYmc6IHJnYmEoMjA5LCAyMjIsIDIyMiwgMC43KTtcbiAgLS1waGMtbWVudS1mZzogdmFyKC0tcGhjLXRlYWwtd2FzaG91dCk7XG4gIC0tcGhjLW1lbnUtZmctYWN0aXZlOiB2YXIoLS1waGMtd2hpdGUtYWYpO1xuICAtLXBoYy1tZW51LWJnLWZhbGxiYWNrOiByZ2JhKDIwOSwgMjIyLCAyMjIsIDAuNyk7XG4gIC0tcGhjLWNvbnRyYXN0LWJnOiB2YXIoLS1waGMtdGVhbC13YXNob3V0KTtcbiAgLS1waGMtY29udHJhc3QtZmc6IHZhcigtLXBoYy1wYXBlcik7XG4gIC0tcGhjLWNvbnRyYXN0LW11dGVkOiB2YXIoLS1waGMtZ3JheSk7XG59XG5cbi5waGMtdGhlbWUtZGFyayB7XG4gIC0tcGhjLWJnOiB2YXIoLS1waGMtYmxhY2stYWYpO1xuICAtLXBoYy1mZzogdmFyKC0tcGhjLXdoaXRlLWFmKTtcbiAgLS1waGMtbXV0ZWQ6IHZhcigtLXBoYy1ncmF5KTtcbiAgLS1waGMtcnVsZTogdmFyKC0tcGhjLXRlYWwtd2FzaG91dCk7XG4gIC0tcGhjLW1lbnUtYmc6IHJnYmEoMzYsIDQ0LCA0NCwgMC43KTtcbiAgLS1waGMtbWVudS1iZy1mYWxsYmFjazogcmdiYSgzNiwgNDQsIDQ0LCAwLjcpO1xuICAtLXBoYy1tZW51LWZnOiB2YXIoLS1waGMtZ3JheSk7XG4gIC0tcGhjLWNvbnRyYXN0LWJnOiB2YXIoLS1waGMtZWdnKTtcbiAgLS1waGMtY29udHJhc3QtZmc6IHZhcigtLXBoYy1ibGFjay1hZik7XG4gIC0tcGhjLWNvbnRyYXN0LW11dGVkOiB2YXIoLS1waGMtZ3JheS13YXNob3V0KTtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDE5MTlweCkge1xuICA6cm9vdCB7XG4gICAgLS1zaXRlLXdpZHRoOiAxMDB2dztcbiAgfVxufVxuLyohIEZsaWNraXR5IHYyLjIuMVxuaHR0cHM6Ly9mbGlja2l0eS5tZXRhZml6enkuY29cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIGRyYWdnYWJsZSAqL1xuLyogLS0tLSBmbGlja2l0eS1idXR0b24gLS0tLSAqL1xuLyogLS0tLSBwcmV2aW91cy9uZXh0IGJ1dHRvbnMgLS0tLSAqL1xuLyogcmlnaHQgdG8gbGVmdCAqL1xuLyogLS0tLSBwYWdlIGRvdHMgLS0tLSAqL1xuLmZsaWNraXR5LWVuYWJsZWQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4uZmxpY2tpdHktZW5hYmxlZDpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmU7XG59XG5cbi5mbGlja2l0eS12aWV3cG9ydCB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4uZmxpY2tpdHktc2xpZGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4uZmxpY2tpdHktZW5hYmxlZC5pcy1kcmFnZ2FibGUge1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHVzZXItc2VsZWN0OiBub25lO1xufVxuLmZsaWNraXR5LWVuYWJsZWQuaXMtZHJhZ2dhYmxlIC5mbGlja2l0eS12aWV3cG9ydCB7XG4gIGN1cnNvcjogbW92ZTtcbiAgY3Vyc29yOiAtd2Via2l0LWdyYWI7XG4gIGN1cnNvcjogZ3JhYjtcbn1cbi5mbGlja2l0eS1lbmFibGVkLmlzLWRyYWdnYWJsZSAuZmxpY2tpdHktdmlld3BvcnQuaXMtcG9pbnRlci1kb3duIHtcbiAgY3Vyc29yOiAtd2Via2l0LWdyYWJiaW5nO1xuICBjdXJzb3I6IGdyYWJiaW5nO1xufVxuXG4uZmxpY2tpdHktYnV0dG9uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBiYWNrZ3JvdW5kOiBoc2xhKDAsIDAlLCAxMDAlLCAwLjc1KTtcbiAgYm9yZGVyOiBub25lO1xuICBjb2xvcjogIzMzMztcbn1cbi5mbGlja2l0eS1idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuLmZsaWNraXR5LWJ1dHRvbjpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmU7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDVweCAjMTlGO1xufVxuLmZsaWNraXR5LWJ1dHRvbjphY3RpdmUge1xuICBvcGFjaXR5OiAwLjY7XG59XG4uZmxpY2tpdHktYnV0dG9uOmRpc2FibGVkIHtcbiAgb3BhY2l0eTogMC4zO1xuICBjdXJzb3I6IGF1dG87XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG4uZmxpY2tpdHktYnV0dG9uLWljb24ge1xuICBmaWxsOiBjdXJyZW50Q29sb3I7XG59XG5cbi5mbGlja2l0eS1wcmV2LW5leHQtYnV0dG9uIHtcbiAgdG9wOiA1MCU7XG4gIHdpZHRoOiA0NHB4O1xuICBoZWlnaHQ6IDQ0cHg7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xufVxuLmZsaWNraXR5LXByZXYtbmV4dC1idXR0b24gLmZsaWNraXR5LWJ1dHRvbi1pY29uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAyMCU7XG4gIHRvcDogMjAlO1xuICB3aWR0aDogNjAlO1xuICBoZWlnaHQ6IDYwJTtcbn1cblxuLmZsaWNraXR5LXByZXYtbmV4dC1idXR0b24ucHJldmlvdXMge1xuICBsZWZ0OiAxMHB4O1xufVxuXG4uZmxpY2tpdHktcHJldi1uZXh0LWJ1dHRvbi5uZXh0IHtcbiAgcmlnaHQ6IDEwcHg7XG59XG5cbi5mbGlja2l0eS1ydGwgLmZsaWNraXR5LXByZXYtbmV4dC1idXR0b24ucHJldmlvdXMge1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogMTBweDtcbn1cbi5mbGlja2l0eS1ydGwgLmZsaWNraXR5LXByZXYtbmV4dC1idXR0b24ubmV4dCB7XG4gIHJpZ2h0OiBhdXRvO1xuICBsZWZ0OiAxMHB4O1xufVxuLmZsaWNraXR5LXJ0bCAuZmxpY2tpdHktcGFnZS1kb3RzIHtcbiAgZGlyZWN0aW9uOiBydGw7XG59XG5cbi5mbGlja2l0eS1wYWdlLWRvdHMge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xuICBib3R0b206IC0yNXB4O1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG4uZmxpY2tpdHktcGFnZS1kb3RzIC5kb3Qge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxMHB4O1xuICBoZWlnaHQ6IDEwcHg7XG4gIG1hcmdpbjogMCA4cHg7XG4gIGJhY2tncm91bmQ6ICMzMzM7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgb3BhY2l0eTogMC4yNTtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuLmZsaWNraXR5LXBhZ2UtZG90cyAuZG90LmlzLXNlbGVjdGVkIHtcbiAgb3BhY2l0eTogMTtcbn1cblxuLyohIG5vcm1hbGl6ZS5jc3MgdjguMC4xIHwgTUlUIExpY2Vuc2UgfCBnaXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzcyAqL1xuLyogRG9jdW1lbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGxpbmUgaGVpZ2h0IGluIGFsbCBicm93c2Vycy5cbiAqIDIuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW4gaU9TLlxuICovXG5odG1sIHtcbiAgbGluZS1oZWlnaHQ6IDEuMTU7IC8qIDEgKi9cbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvKiAyICovXG59XG5cbi8qIFNlY3Rpb25zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cbmJvZHkge1xuICBtYXJnaW46IDA7XG59XG5cbi8qKlxuICogUmVuZGVyIHRoZSBgbWFpbmAgZWxlbWVudCBjb25zaXN0ZW50bHkgaW4gSUUuXG4gKi9cbm1haW4ge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBmb250IHNpemUgYW5kIG1hcmdpbiBvbiBgaDFgIGVsZW1lbnRzIHdpdGhpbiBgc2VjdGlvbmAgYW5kXG4gKiBgYXJ0aWNsZWAgY29udGV4dHMgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgU2FmYXJpLlxuICovXG5oMSB7XG4gIGZvbnQtc2l6ZTogMmVtO1xuICBtYXJnaW46IDAuNjdlbSAwO1xufVxuXG4vKiBHcm91cGluZyBjb250ZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBGaXJlZm94LlxuICogMi4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZSBhbmQgSUUuXG4gKi9cbmhyIHtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7IC8qIDEgKi9cbiAgaGVpZ2h0OiAwOyAvKiAxICovXG4gIG92ZXJmbG93OiB2aXNpYmxlOyAvKiAyICovXG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAqL1xucHJlIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlOyAvKiAxICovXG4gIGZvbnQtc2l6ZTogMWVtOyAvKiAyICovXG59XG5cbi8qIFRleHQtbGV2ZWwgc2VtYW50aWNzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBvbiBhY3RpdmUgbGlua3MgaW4gSUUgMTAuXG4gKi9cbmEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLyoqXG4gKiAxLiBSZW1vdmUgdGhlIGJvdHRvbSBib3JkZXIgaW4gQ2hyb21lIDU3LVxuICogMi4gQWRkIHRoZSBjb3JyZWN0IHRleHQgZGVjb3JhdGlvbiBpbiBDaHJvbWUsIEVkZ2UsIElFLCBPcGVyYSwgYW5kIFNhZmFyaS5cbiAqL1xuYWJiclt0aXRsZV0ge1xuICBib3JkZXItYm90dG9tOiBub25lOyAvKiAxICovXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyAvKiAyICovXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDsgLyogMiAqL1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBmb250IHdlaWdodCBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmkuXG4gKi9cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogYm9sZGVyO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cbmNvZGUsXG5rYmQsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlOyAvKiAxICovXG4gIGZvbnQtc2l6ZTogMWVtOyAvKiAyICovXG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cbnNtYWxsIHtcbiAgZm9udC1zaXplOiA4MCU7XG59XG5cbi8qKlxuICogUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgZWxlbWVudHMgZnJvbSBhZmZlY3RpbmcgdGhlIGxpbmUgaGVpZ2h0IGluXG4gKiBhbGwgYnJvd3NlcnMuXG4gKi9cbnN1YixcbnN1cCB7XG4gIGZvbnQtc2l6ZTogNzUlO1xuICBsaW5lLWhlaWdodDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbnN1YiB7XG4gIGJvdHRvbTogLTAuMjVlbTtcbn1cblxuc3VwIHtcbiAgdG9wOiAtMC41ZW07XG59XG5cbi8qIEVtYmVkZGVkIGNvbnRlbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIFJlbW92ZSB0aGUgYm9yZGVyIG9uIGltYWdlcyBpbnNpZGUgbGlua3MgaW4gSUUgMTAuXG4gKi9cbmltZyB7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcbn1cblxuLyogRm9ybXNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIDEuIENoYW5nZSB0aGUgZm9udCBzdHlsZXMgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gRmlyZWZveCBhbmQgU2FmYXJpLlxuICovXG5idXR0b24sXG5pbnB1dCxcbm9wdGdyb3VwLFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICBmb250LWZhbWlseTogaW5oZXJpdDsgLyogMSAqL1xuICBmb250LXNpemU6IDEwMCU7IC8qIDEgKi9cbiAgbGluZS1oZWlnaHQ6IDEuMTU7IC8qIDEgKi9cbiAgbWFyZ2luOiAwOyAvKiAyICovXG59XG5cbi8qKlxuICogU2hvdyB0aGUgb3ZlcmZsb3cgaW4gSUUuXG4gKiAxLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlLlxuICovXG5idXR0b24sXG5pbnB1dCB7IC8qIDEgKi9cbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBFZGdlLCBGaXJlZm94LCBhbmQgSUUuXG4gKiAxLiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEZpcmVmb3guXG4gKi9cbmJ1dHRvbixcbnNlbGVjdCB7IC8qIDEgKi9cbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAqL1xuYnV0dG9uLFxuW3R5cGU9YnV0dG9uXSxcblt0eXBlPXJlc2V0XSxcblt0eXBlPXN1Ym1pdF0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGlubmVyIGJvcmRlciBhbmQgcGFkZGluZyBpbiBGaXJlZm94LlxuICovXG5idXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1idXR0b25dOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9cmVzZXRdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9c3VibWl0XTo6LW1vei1mb2N1cy1pbm5lciB7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgcGFkZGluZzogMDtcbn1cblxuLyoqXG4gKiBSZXN0b3JlIHRoZSBmb2N1cyBzdHlsZXMgdW5zZXQgYnkgdGhlIHByZXZpb3VzIHJ1bGUuXG4gKi9cbmJ1dHRvbjotbW96LWZvY3VzcmluZyxcblt0eXBlPWJ1dHRvbl06LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1yZXNldF06LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1zdWJtaXRdOi1tb3otZm9jdXNyaW5nIHtcbiAgb3V0bGluZTogMXB4IGRvdHRlZCBCdXR0b25UZXh0O1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIHBhZGRpbmcgaW4gRmlyZWZveC5cbiAqL1xuZmllbGRzZXQge1xuICBwYWRkaW5nOiAwLjM1ZW0gMC43NWVtIDAuNjI1ZW07XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgdGV4dCB3cmFwcGluZyBpbiBFZGdlIGFuZCBJRS5cbiAqIDIuIENvcnJlY3QgdGhlIGNvbG9yIGluaGVyaXRhbmNlIGZyb20gYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBJRS5cbiAqIDMuIFJlbW92ZSB0aGUgcGFkZGluZyBzbyBkZXZlbG9wZXJzIGFyZSBub3QgY2F1Z2h0IG91dCB3aGVuIHRoZXkgemVybyBvdXRcbiAqICAgIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5sZWdlbmQge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvKiAxICovXG4gIGNvbG9yOiBpbmhlcml0OyAvKiAyICovXG4gIGRpc3BsYXk6IHRhYmxlOyAvKiAxICovXG4gIG1heC13aWR0aDogMTAwJTsgLyogMSAqL1xuICBwYWRkaW5nOiAwOyAvKiAzICovXG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7IC8qIDEgKi9cbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgdmVydGljYWwgYWxpZ25tZW50IGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuICovXG5wcm9ncmVzcyB7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFIDEwKy5cbiAqL1xudGV4dGFyZWEge1xuICBvdmVyZmxvdzogYXV0bztcbn1cblxuLyoqXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBJRSAxMC5cbiAqIDIuIFJlbW92ZSB0aGUgcGFkZGluZyBpbiBJRSAxMC5cbiAqL1xuW3R5cGU9Y2hlY2tib3hdLFxuW3R5cGU9cmFkaW9dIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLyogMSAqL1xuICBwYWRkaW5nOiAwOyAvKiAyICovXG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgY3Vyc29yIHN0eWxlIG9mIGluY3JlbWVudCBhbmQgZGVjcmVtZW50IGJ1dHRvbnMgaW4gQ2hyb21lLlxuICovXG5bdHlwZT1udW1iZXJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuW3R5cGU9bnVtYmVyXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBvZGQgYXBwZWFyYW5jZSBpbiBDaHJvbWUgYW5kIFNhZmFyaS5cbiAqIDIuIENvcnJlY3QgdGhlIG91dGxpbmUgc3R5bGUgaW4gU2FmYXJpLlxuICovXG5bdHlwZT1zZWFyY2hdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7IC8qIDEgKi9cbiAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGlubmVyIHBhZGRpbmcgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gbWFjT1MuXG4gKi9cblt0eXBlPXNlYXJjaF06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAqIDIuIENoYW5nZSBmb250IHByb3BlcnRpZXMgdG8gYGluaGVyaXRgIGluIFNhZmFyaS5cbiAqL1xuOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvKiAxICovXG4gIGZvbnQ6IGluaGVyaXQ7IC8qIDIgKi9cbn1cblxuLyogSW50ZXJhY3RpdmVcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gRWRnZSwgSUUgMTArLCBhbmQgRmlyZWZveC5cbiAqL1xuZGV0YWlscyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5zdW1tYXJ5IHtcbiAgZGlzcGxheTogbGlzdC1pdGVtO1xufVxuXG4vKiBNaXNjXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMCsuXG4gKi9cbnRlbXBsYXRlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMC5cbiAqL1xuW2hpZGRlbl0ge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwiSW50ZXJcIjtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogMzAwO1xuICBmb250LWRpc3BsYXk6IHN3YXA7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvSW50ZXItTGlnaHQud29mZjI/dj0zLjE5XCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCIuLi9mb250cy9JbnRlci1MaWdodC53b2ZmP3Y9My4xOVwiKSBmb3JtYXQoXCJ3b2ZmXCIpO1xufVxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcIkludGVyXCI7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgZm9udC1kaXNwbGF5OiBzd2FwO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL0ludGVyLUxpZ2h0SXRhbGljLndvZmYyP3Y9My4xOVwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSwgdXJsKFwiLi4vZm9udHMvSW50ZXItTGlnaHRJdGFsaWMud29mZj92PTMuMTlcIikgZm9ybWF0KFwid29mZlwiKTtcbn1cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJJbnRlclwiO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtZGlzcGxheTogc3dhcDtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9JbnRlci1SZWd1bGFyLndvZmYyP3Y9My4xOVwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSwgdXJsKFwiLi4vZm9udHMvSW50ZXItUmVndWxhci53b2ZmP3Y9My4xOVwiKSBmb3JtYXQoXCJ3b2ZmXCIpO1xufVxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcIkludGVyXCI7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1kaXNwbGF5OiBzd2FwO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL0ludGVyLVJlZ3VsYXJJdGFsaWMud29mZjI/dj0zLjE5XCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCIuLi9mb250cy9JbnRlci1SZWd1bGFySXRhbGljLndvZmY/dj0zLjE5XCIpIGZvcm1hdChcIndvZmZcIik7XG59XG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwiSW50ZXJcIjtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNTAwO1xuICBmb250LWRpc3BsYXk6IHN3YXA7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvSW50ZXItTWVkaXVtLndvZmYyP3Y9My4xOVwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSwgdXJsKFwiLi4vZm9udHMvSW50ZXItTWVkaXVtLndvZmY/dj0zLjE5XCIpIGZvcm1hdChcIndvZmZcIik7XG59XG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwiSW50ZXJcIjtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBmb250LXdlaWdodDogNTAwO1xuICBmb250LWRpc3BsYXk6IHN3YXA7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvSW50ZXItTWVkaXVtSXRhbGljLndvZmYyP3Y9My4xOVwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSwgdXJsKFwiLi4vZm9udHMvSW50ZXItTWVkaXVtSXRhbGljLndvZmY/dj0zLjE5XCIpIGZvcm1hdChcIndvZmZcIik7XG59XG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwiSW50ZXJcIjtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNjAwO1xuICBmb250LWRpc3BsYXk6IHN3YXA7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvSW50ZXItU2VtaUJvbGQud29mZjI/dj0zLjE5XCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCIuLi9mb250cy9JbnRlci1TZW1pQm9sZC53b2ZmP3Y9My4xOVwiKSBmb3JtYXQoXCJ3b2ZmXCIpO1xufVxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcIkludGVyXCI7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgZm9udC1kaXNwbGF5OiBzd2FwO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL0ludGVyLVNlbWlCb2xkSXRhbGljLndvZmYyP3Y9My4xOVwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSwgdXJsKFwiLi4vZm9udHMvSW50ZXItU2VtaUJvbGRJdGFsaWMud29mZj92PTMuMTlcIikgZm9ybWF0KFwid29mZlwiKTtcbn1cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJTdWlzc2UgSW50bFwiO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGZvbnQtZGlzcGxheTogc3dhcDtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9zdWlzc2UvU3Vpc3NlSW50bC1MaWdodC53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSwgdXJsKFwiLi4vZm9udHMvc3Vpc3NlL1N1aXNzZUludGwtTGlnaHQud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpO1xufVxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcIlN1aXNzZSBJbnRsXCI7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgZm9udC1kaXNwbGF5OiBzd2FwO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL3N1aXNzZS9TdWlzc2VJbnRsLUxpZ2h0SXRhbGljLndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCIuLi9mb250cy9zdWlzc2UvU3Vpc3NlSW50bC1MaWdodEl0YWxpYy53b2ZmXCIpIGZvcm1hdChcIndvZmZcIik7XG59XG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwiU3Vpc3NlIEludGxcIjtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LWRpc3BsYXk6IHN3YXA7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvc3Vpc3NlL1N1aXNzZUludGwtUmVndWxhci53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSwgdXJsKFwiLi4vZm9udHMvc3Vpc3NlL1N1aXNzZUludGwtUmVndWxhci53b2ZmXCIpIGZvcm1hdChcIndvZmZcIik7XG59XG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwiU3Vpc3NlIEludGxcIjtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNTAwO1xuICBmb250LWRpc3BsYXk6IHN3YXA7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvc3Vpc3NlL1N1aXNzZUludGwtTWVkaXVtLndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCIuLi9mb250cy9zdWlzc2UvU3Vpc3NlSW50bC1NZWRpdW0ud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpO1xufVxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcIlN1aXNzZSBJbnRsXCI7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgZm9udC1kaXNwbGF5OiBzd2FwO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL3N1aXNzZS9TdWlzc2VJbnRsLU1lZGl1bUl0YWxpYy53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSwgdXJsKFwiLi4vZm9udHMvc3Vpc3NlL1N1aXNzZUludGwtTWVkaXVtSXRhbGljLndvZmZcIikgZm9ybWF0KFwid29mZlwiKTtcbn1cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJTdWlzc2UgSW50bFwiO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGZvbnQtZGlzcGxheTogc3dhcDtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9zdWlzc2UvU3Vpc3NlSW50bC1TZW1pQm9sZC53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSwgdXJsKFwiLi4vZm9udHMvc3Vpc3NlL1N1aXNzZUludGwtU2VtaUJvbGQud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpO1xufVxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcIlN1aXNzZSBJbnRsXCI7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgZm9udC1kaXNwbGF5OiBzd2FwO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL3N1aXNzZS9TdWlzc2VJbnRsLVNlbWlCb2xkSXRhbGljLndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCIuLi9mb250cy9zdWlzc2UvU3Vpc3NlSW50bC1TZW1pQm9sZEl0YWxpYy53b2ZmXCIpIGZvcm1hdChcIndvZmZcIik7XG59XG4uZ3JpZC1kZXNrdG9wIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgd2lkdGg6IHZhcigtLXNpdGUtd2lkdGgpO1xuICBsZWZ0OiBjYWxjKCgxMDB2dyAtICh2YXIoLS1zaXRlLXdpZHRoKSkgLSAoMTAwdncgLSAxMDAlKSkgLyAyKTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgei1pbmRleDogMTIwMDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG4uZ3JpZC1kZXNrdG9wLm9mZiB7XG4gIG9wYWNpdHk6IDA7XG59XG4uZ3JpZC1kZXNrdG9wX19jb2wge1xuICBmbG9hdDogbGVmdDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IGNhbGMoKHZhcigtLXNpdGUtd2lkdGgpKSAvIDEyKTtcbiAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIzc3NztcbiAgb3BhY2l0eTogMC4xO1xufVxuLmdyaWQtZGVza3RvcF9fY29sOmZpcnN0LWNoaWxkIHtcbiAgd2lkdGg6IDMwcHg7XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIzc3Nztcbn1cbi5ncmlkLWRlc2t0b3BfX2NvbDpudGgtY2hpbGQoMikge1xuICB3aWR0aDogY2FsYygodmFyKC0tc2l0ZS13aWR0aCkpIC8gMTIgLSAzMHB4KTtcbn1cbi5ncmlkLWRlc2t0b3BfX2NvbDpudGgtY2hpbGQoMTMpIHtcbiAgd2lkdGg6IGNhbGMoKHZhcigtLXNpdGUtd2lkdGgpKSAvIDEyIC0gMzBweCk7XG59XG4uZ3JpZC1kZXNrdG9wX19jb2w6bGFzdC1jaGlsZCB7XG4gIHdpZHRoOiAzMHB4O1xuICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjNzc3O1xufVxuXG4ud3JhcHBlciB7XG4gIHdpZHRoOiAxMDAlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4ud3JhcHBlci5ibHVyIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG4ud3JhcHBlciB7XG4gIHRyYW5zaXRpb246IGZpbHRlciAwLjRzIGVhc2Utb3V0O1xufVxuXG4uY29udGFpbmVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xufVxuXG4uY29sIHtcbiAgd2lkdGg6IDguMzMlO1xufVxuLmNvbC0xIHtcbiAgd2lkdGg6IDguMzMlO1xufVxuLmNvbC0yIHtcbiAgd2lkdGg6IDE2LjY2JTtcbn1cbi5jb2wtMyB7XG4gIHdpZHRoOiAyNSU7XG59XG4uY29sLTQge1xuICB3aWR0aDogMzMuMzMlO1xufVxuLmNvbC01IHtcbiAgd2lkdGg6IDQxLjY1JTtcbn1cbi5jb2wtNiB7XG4gIHdpZHRoOiA1MCU7XG59XG4uY29sLTcge1xuICB3aWR0aDogNTguMzMlO1xufVxuLmNvbC04IHtcbiAgd2lkdGg6IDY2LjY2JTtcbn1cbi5jb2wtOSB7XG4gIHdpZHRoOiA3NSU7XG59XG4uY29sLTEwIHtcbiAgd2lkdGg6IDgzLjMzJTtcbn1cbi5jb2wtMTEge1xuICB3aWR0aDogOTEuNjYlO1xufVxuLmNvbC0xMiB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4ub2Zmc2V0LTEge1xuICBtYXJnaW4tbGVmdDogOC4zMyU7XG59XG4ub2Zmc2V0LTIge1xuICBtYXJnaW4tbGVmdDogMTYuNjYlO1xufVxuLm9mZnNldC0zIHtcbiAgbWFyZ2luLWxlZnQ6IDI1JTtcbn1cbi5vZmZzZXQtNCB7XG4gIG1hcmdpbi1sZWZ0OiAzMy4zMyU7XG59XG4ub2Zmc2V0LTUge1xuICBtYXJnaW4tbGVmdDogNDEuNjUlO1xufVxuLm9mZnNldC02IHtcbiAgbWFyZ2luLWxlZnQ6IDUwJTtcbn1cbi5vZmZzZXQtNyB7XG4gIG1hcmdpbi1sZWZ0OiA1OC4zMyU7XG59XG4ub2Zmc2V0LTgge1xuICBtYXJnaW4tbGVmdDogNjYuNjYlO1xufVxuLm9mZnNldC05IHtcbiAgbWFyZ2luLWxlZnQ6IDc1JTtcbn1cbi5vZmZzZXQtMTAge1xuICBtYXJnaW4tbGVmdDogODMuMzMlO1xufVxuLm9mZnNldC0xMSB7XG4gIG1hcmdpbi1sZWZ0OiA5MS42NiU7XG59XG4ub2Zmc2V0LTEyIHtcbiAgbWFyZ2luLWxlZnQ6IDEwMCU7XG59XG5cbi50b3RhbC1jb2xzLW1kLTEgPiAqIHtcbiAgd2lkdGg6IDEwMCU7XG59XG4udG90YWwtY29scy1tZC0yID4gKiB7XG4gIHdpZHRoOiA1MCU7XG59XG4udG90YWwtY29scy1tZC0zID4gKiB7XG4gIHdpZHRoOiAzMy4zMzMlO1xufVxuLnRvdGFsLWNvbHMtbWQtMTIgPiAqLCAudG90YWwtY29scy1tZC0xMSA+ICosIC50b3RhbC1jb2xzLW1kLTExID4gKiwgLnRvdGFsLWNvbHMtbWQtMTAgPiAqLCAudG90YWwtY29scy1tZC05ID4gKiwgLnRvdGFsLWNvbHMtbWQtOCA+ICosIC50b3RhbC1jb2xzLW1kLTcgPiAqLCAudG90YWwtY29scy1tZC02ID4gKiwgLnRvdGFsLWNvbHMtbWQtNSA+ICosIC50b3RhbC1jb2xzLW1kLTQgPiAqIHtcbiAgd2lkdGg6IDI1JTtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC50b3RhbC1jb2xzLXNtLTEgPiAqIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAudG90YWwtY29scy1zbS0yID4gKiB7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxuICAudG90YWwtY29scy1zbS0yID4gKjpmaXJzdC1jaGlsZDpsYXN0LWNoaWxkIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAudG90YWwtY29scy1zbS0zID4gKiB7XG4gICAgd2lkdGg6IDMzLjMzMyU7XG4gIH1cbiAgLnRvdGFsLWNvbHMtc20tMyA+ICo6Zmlyc3QtY2hpbGQ6bGFzdC1jaGlsZCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgLnRvdGFsLWNvbHMtc20tNCA+ICoge1xuICAgIHdpZHRoOiAyNSU7XG4gIH1cbiAgLnRvdGFsLWNvbHMtc20tNCA+ICo6Zmlyc3QtY2hpbGQ6bGFzdC1jaGlsZCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiAxMDIzcHgpIHtcbiAgLmNvbC0xLCAuY29sLTIsIC5jb2wtMywgLmNvbC00LCAuY29sLTUsIC5jb2wtNiwgLmNvbC03LCAuY29sLTgsIC5jb2wtOSwgLmNvbC0xMCwgLmNvbC0xMSwgLmNvbC0xMiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgLm9mZnNldC0xLCAub2Zmc2V0LTIsIC5vZmZzZXQtMywgLm9mZnNldC00LCAub2Zmc2V0LTUsIC5vZmZzZXQtNiwgLm9mZnNldC03LCAub2Zmc2V0LTgsIC5vZmZzZXQtOSwgLm9mZnNldC0xMCwgLm9mZnNldC0xMSwgLm9mZnNldC0xMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbiAgLmNvbC1tLTEge1xuICAgIHdpZHRoOiA4LjMzJTtcbiAgfVxuICAuY29sLW0tMiB7XG4gICAgd2lkdGg6IDE2LjY2JTtcbiAgfVxuICAuY29sLW0tMyB7XG4gICAgd2lkdGg6IDI1JTtcbiAgfVxuICAuY29sLW0tNCB7XG4gICAgd2lkdGg6IDMzLjMzJTtcbiAgfVxuICAuY29sLW0tNSB7XG4gICAgd2lkdGg6IDQxLjY1JTtcbiAgfVxuICAuY29sLW0tNiB7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxuICAuY29sLW0tNyB7XG4gICAgd2lkdGg6IDU4LjMzJTtcbiAgfVxuICAuY29sLW0tOCB7XG4gICAgd2lkdGg6IDY2LjY2JTtcbiAgfVxuICAuY29sLW0tOSB7XG4gICAgd2lkdGg6IDc1JTtcbiAgfVxuICAuY29sLW0tMTAge1xuICAgIHdpZHRoOiA4My4zMyU7XG4gIH1cbiAgLmNvbC1tLTExIHtcbiAgICB3aWR0aDogOTEuNjYlO1xuICB9XG4gIC5jb2wtbS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgLm9mZnNldC1tLTEge1xuICAgIG1hcmdpbi1sZWZ0OiA4LjMzJTtcbiAgfVxuICAub2Zmc2V0LW0tMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDE2LjY2JTtcbiAgfVxuICAub2Zmc2V0LW0tMyB7XG4gICAgbWFyZ2luLWxlZnQ6IDI1JTtcbiAgfVxuICAub2Zmc2V0LW0tNCB7XG4gICAgbWFyZ2luLWxlZnQ6IDMzLjMzJTtcbiAgfVxuICAub2Zmc2V0LW0tNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDQxLjY1JTtcbiAgfVxuICAub2Zmc2V0LW0tNiB7XG4gICAgbWFyZ2luLWxlZnQ6IDUwJTtcbiAgfVxuICAub2Zmc2V0LW0tNyB7XG4gICAgbWFyZ2luLWxlZnQ6IDU4LjMzJTtcbiAgfVxuICAub2Zmc2V0LW0tOCB7XG4gICAgbWFyZ2luLWxlZnQ6IDY2LjY2JTtcbiAgfVxuICAub2Zmc2V0LW0tOSB7XG4gICAgbWFyZ2luLWxlZnQ6IDc1JTtcbiAgfVxuICAub2Zmc2V0LW0tMTAge1xuICAgIG1hcmdpbi1sZWZ0OiA4My4zMyU7XG4gIH1cbiAgLm9mZnNldC1tLTExIHtcbiAgICBtYXJnaW4tbGVmdDogOTEuNjYlO1xuICB9XG4gIC5vZmZzZXQtbS0xMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDEwMCU7XG4gIH1cbn1cbmh0bWwge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBmb250LXNpemU6IDEwMCU7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTQ0MHB4KSB7XG4gIGh0bWwge1xuICAgIGZvbnQtc2l6ZTogY2FsYygwLjcwM2VtICsgMC4zM3Z3KTtcbiAgfVxufVxuaHRtbCB7XG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG59XG5odG1sLm9sZCB7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgZm9udC1zaXplOiBjYWxjKDE0cHggKyAwLjMzdncpO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIGh0bWwub2xkIHtcbiAgICBmb250LXNpemU6IGNhbGMoMTJweCArIDAuMzN2dyk7XG4gIH1cbn1cbmh0bWwub2xkIHtcbiAgLS1waGMtcm9vdDogMTZweDtcbn1cblxuKixcbio6YmVmb3JlLFxuKjphZnRlciB7XG4gIGJveC1zaXppbmc6IGluaGVyaXQ7XG59XG5cbmJvZHkge1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGZvbnQtZmFtaWx5OiBcIkludGVyXCIsIEhlbHZldGljYSwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBBcmlhbDtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXMpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tbGV0dGVyLXNwYWNpbmctcyk7XG4gIGZvbnQtZmVhdHVyZS1zZXR0aW5nczogXCJ0bnVtXCIgMTtcbiAgZm9udC1mZWF0dXJlLXNldHRpbmdzOiBcImZyYWNcIiAxO1xuICBmb250LWZlYXR1cmUtc2V0dGluZ3M6IFwiY2FzZVwiIDE7XG4gIGZvbnQtZmVhdHVyZS1zZXR0aW5nczogXCJjY21wXCIgMTtcbiAgZm9udC1mZWF0dXJlLXNldHRpbmdzOiBcImRsaWdcIiAxO1xuICBmb250LWZlYXR1cmUtc2V0dGluZ3M6IFwibnVtclwiIDE7XG4gIGZvbnQtZmVhdHVyZS1zZXR0aW5nczogXCJkbm9tXCIgMTtcbiAgZm9udC1mZWF0dXJlLXNldHRpbmdzOiBcInN1cHNcIiAxO1xuICBmb250LWZlYXR1cmUtc2V0dGluZ3M6IFwic3Vic1wiIDE7XG4gIGZvbnQtZmVhdHVyZS1zZXR0aW5nczogXCJjdlhYXCIgMTtcbn1cblxuOjpzZWxlY3Rpb24ge1xuICBiYWNrZ3JvdW5kOiAjYjNkNGZjO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cblxuYSB7XG4gIGNvbG9yOiB2YXIoLS1ibGFjayk7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbmE6aG92ZXIge1xuICBjb2xvcjogdmFyKC0tbWlkZGxlLWdyZXkpO1xufVxuXG5hdWRpbyB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbmNhbnZhcyB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbmltZyB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbnZpZGVvIHtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuZmllbGRzZXQge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogMDtcbn1cblxudGV4dGFyZWEge1xuICByZXNpemU6IHZlcnRpY2FsO1xufVxuXG5vbDpmaXJzdC1jaGlsZCxcbnVsOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cbm9sOmxhc3QtY2hpbGQsXG51bDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cbm9sIGxpLFxudWwgbGkge1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1tKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LW0pO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tbGV0dGVyLXNwYWNpbmctbSk7XG59XG5vbCBsaSArIGxpLFxudWwgbGkgKyBsaSB7XG4gIG1hcmdpbi10b3A6IDE1cHg7XG59XG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgb2wgbGksXG4gIHVsIGxpIHtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1zKTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtcyk7XG4gICAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWxldHRlci1zcGFjaW5nLXMpO1xuICAgIHBhZGRpbmctbGVmdDogMTNweDtcbiAgfVxufVxuXG51bCB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xufVxudWwgPiBsaSB7XG4gIHRleHQtaW5kZW50OiAtMXB4O1xuICBwYWRkaW5nLWxlZnQ6IDEycHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbnVsID4gbGk6YmVmb3JlIHtcbiAgY29udGVudDogXCLigJRcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICB1bCA+IGxpIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDE4cHg7XG4gIH1cbn1cblxub2wge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBjb3VudGVyLXJlc2V0OiBwZXRlcmhhaW5lci1jdXN0b20tY291bnRlcjtcbn1cbm9sIGxpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBjb3VudGVyLWluY3JlbWVudDogcGV0ZXJoYWluZXItY3VzdG9tLWNvdW50ZXI7XG59XG5vbCBsaTpiZWZvcmUge1xuICBjb250ZW50OiBjb3VudGVyKHBldGVyaGFpbmVyLWN1c3RvbS1jb3VudGVyKTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTQwcHgpO1xuICB3aWR0aDogNDBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uc2VjdGlvbi13cmFwcGVyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLnNlY3Rpb24td3JhcHBlci0tcmVkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tcmVkKTtcbn1cbi5zZWN0aW9uLXdyYXBwZXItLWJsYWNrIHtcbiAgY29sb3I6IHZhcigtLXdoaXRlKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmxhY2spO1xufVxuLnNlY3Rpb24td3JhcHBlci0tZ3JleSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1pZGRsZS1ncmV5KTtcbiAgY29sb3I6IHZhcigtLXdoaXRlKTtcbn1cblxuLm1haW4gLmJhY2tncm91bmQtY2FwcHVjY2lubyBhLFxuLm1haW4gLmJhY2tncm91bmQtY2FwcHVjY2lubyBhID4gKixcbi5iYWNrZ3JvdW5kLWNhcHB1Y2Npbm8gYSxcbi5iYWNrZ3JvdW5kLWNhcHB1Y2Npbm8gYSA+ICoge1xuICBjb2xvcjogdmFyKC0td2hpdGUpO1xufVxuXG4uc2VjdGlvbi1jb250YWluZXIge1xuICBtYXJnaW46IDAgYXV0bztcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1heC13aWR0aDogdmFyKC0tc2l0ZS13aWR0aCk7XG59XG4uc2VjdGlvbi1jb250YWluZXItLWZ1bGwge1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwO1xufVxuXG5tYWluIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZmxleC1mbG93OiB3cmFwO1xufVxuXG4uYXJ0aWNsZS1tYWluIHtcbiAgbWFyZ2luOiAwcHggYXV0byAwcHg7XG4gIG1heC13aWR0aDogdmFyKC0tc2l0ZS13aWR0aCk7XG59XG5cbi5oZWFkbGVzcyB7XG4gIHBhZGRpbmctdG9wOiAxMzBweDtcbn1cblxuLmFycm93LWxpbms6YWZ0ZXIge1xuICBjb250ZW50OiBcIuKGklwiO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gIHRyYW5zaXRpb246IG1hcmdpbiAwLjJzIGVhc2Utb3V0O1xufVxuQG1lZGlhIChob3ZlcjogaG92ZXIpIHtcbiAgLmFycm93LWxpbms6aG92ZXIge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuICAuYXJyb3ctbGluazpob3ZlcjphZnRlciB7XG4gICAgbWFyZ2luLWxlZnQ6IDIwcHg7XG4gIH1cbn1cblxuc21hbGwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXMpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtcyk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1sZXR0ZXItc3BhY2luZy1zKTtcbn1cblxuLm1haW4gLmludHJvLXNlY3Rpb25fX2NhbGwgYTpob3ZlciB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbi5tYWluIC50ZXh0LXdoaXRlLCAubWFpbiAuYmFja2dyb3VuZC1ibGFjayB7XG4gIGNvbG9yOiAjZmZmO1xufVxuLm1haW4gYTpub3QoW2NsYXNzKj1waGMtXSkge1xuICBjb2xvcjogdmFyKC0tbWlkZGxlLWdyZXkpO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG4ubWFpbiBoMiBhIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjb2xvcjogdmFyKC0tbWlkZGxlLWdyZXkpO1xufVxuLm1haW4gaDIgYTpob3ZlciB7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuLm1haW4gdGFibGUgYSxcbi5tYWluIGgxIGEsXG4ubWFpbiBoMiBhLFxuLm1haW4gaDMgYSxcbi5tYWluIGg0IGEsXG4ubWFpbiBwIGEge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGNvbG9yOiB2YXIoLS1taWRkbGUtZ3JleSk7XG59XG4ubWFpbiB0YWJsZSBhOmhvdmVyLFxuLm1haW4gaDEgYTpob3Zlcixcbi5tYWluIGgyIGE6aG92ZXIsXG4ubWFpbiBoMyBhOmhvdmVyLFxuLm1haW4gaDQgYTpob3Zlcixcbi5tYWluIHAgYTpob3ZlciB7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuLm1haW4gdGFibGUgYS5hcnJvdy1saW5rOmhvdmVyLFxuLm1haW4gaDEgYS5hcnJvdy1saW5rOmhvdmVyLFxuLm1haW4gaDIgYS5hcnJvdy1saW5rOmhvdmVyLFxuLm1haW4gaDMgYS5hcnJvdy1saW5rOmhvdmVyLFxuLm1haW4gaDQgYS5hcnJvdy1saW5rOmhvdmVyLFxuLm1haW4gcCBhLmFycm93LWxpbms6aG92ZXIge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbmFbaHJlZl49dGVsXSB7XG4gIGNvbG9yOiBpbmhlcml0O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5rZXJuaW5nLTI1IHtcbiAgbGV0dGVyLXNwYWNpbmc6IC0wLjAyNWVtO1xufVxuXG4udHlwZS1zIHtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtcykgIWltcG9ydGFudDtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXMpICFpbXBvcnRhbnQ7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1sZXR0ZXItc3BhY2luZy1zKSAhaW1wb3J0YW50O1xufVxuXG4udHlwZS1tIHtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtbSkgIWltcG9ydGFudDtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LW0pICFpbXBvcnRhbnQ7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1sZXR0ZXItc3BhY2luZy1tKSAhaW1wb3J0YW50O1xufVxuXG4udHlwZS1sIHtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtbCkgIWltcG9ydGFudDtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWwpICFpbXBvcnRhbnQ7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1sZXR0ZXItc3BhY2luZy1sKSAhaW1wb3J0YW50O1xufVxuXG4udHlwZS14bCB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXhsKSAhaW1wb3J0YW50O1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQteGwpICFpbXBvcnRhbnQ7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1sZXR0ZXItc3BhY2luZy14bCkgIWltcG9ydGFudDtcbn1cblxuLnR5cGUteHhsIHtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUteHhsKSAhaW1wb3J0YW50O1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQteHhsKSAhaW1wb3J0YW50O1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tbGV0dGVyLXNwYWNpbmcteHhsKSAhaW1wb3J0YW50O1xufVxuXG4ucGhjLXRoZW1lLWJyaWdodCxcbi5waGMtdGhlbWUtZGFyayB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXBoYy1iZyk7XG4gIGNvbG9yOiB2YXIoLS1waGMtZmcpO1xufVxuXG5oMSB7XG4gIGZvbnQtZmFtaWx5OiBcIlN1aXNzZSBJbnRsXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogY2FsYyg0ICogdmFyKC0tcGhjLXJvb3QpKTtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgbGluZS1oZWlnaHQ6IGNhbGMoNC4xMjUgKiB2YXIoLS1waGMtcm9vdCkpO1xuICBsZXR0ZXItc3BhY2luZzogLTAuMDVlbTtcbiAgZm9udC1mZWF0dXJlLXNldHRpbmdzOiBcInNhbHRcIiAxO1xuICBtYXJnaW46IDAgMCAxLjI1cmVtO1xufVxuXG5oMiB7XG4gIGZvbnQtZmFtaWx5OiBcIlN1aXNzZSBJbnRsXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogY2FsYygyLjYyNSAqIHZhcigtLXBoYy1yb290KSk7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiBjYWxjKDIuNzUgKiB2YXIoLS1waGMtcm9vdCkpO1xuICBsZXR0ZXItc3BhY2luZzogLTAuMDJlbTtcbiAgZm9udC1mZWF0dXJlLXNldHRpbmdzOiBcInNhbHRcIiAxO1xuICBtYXJnaW46IDAgMCAxLjI1cmVtO1xufVxuXG5oMyB7XG4gIGZvbnQtZmFtaWx5OiBcIlN1aXNzZSBJbnRsXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogY2FsYygxLjc1ICogdmFyKC0tcGhjLXJvb3QpKTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgbGluZS1oZWlnaHQ6IGNhbGMoMi4yNSAqIHZhcigtLXBoYy1yb290KSk7XG4gIGxldHRlci1zcGFjaW5nOiAwO1xuICBmb250LWZlYXR1cmUtc2V0dGluZ3M6IFwic2FsdFwiIDE7XG4gIG1hcmdpbjogMCAwIDEuMjVyZW07XG59XG5cbmg0LFxuaDUsXG5oNiB7XG4gIGZvbnQtZmFtaWx5OiBcIlN1aXNzZSBJbnRsXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogY2FsYygxLjM3NSAqIHZhcigtLXBoYy1yb290KSk7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiBjYWxjKDEuNSAqIHZhcigtLXBoYy1yb290KSk7XG4gIGxldHRlci1zcGFjaW5nOiAwO1xuICBmb250LWZlYXR1cmUtc2V0dGluZ3M6IFwic2FsdFwiIDE7XG4gIG1hcmdpbjogMCAwIDEuMjVyZW07XG59XG5cbnAge1xuICBmb250LWZhbWlseTogXCJTdWlzc2UgSW50bFwiLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IGNhbGMoMS4zNzUgKiB2YXIoLS1waGMtcm9vdCkpO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogY2FsYygxLjUgKiB2YXIoLS1waGMtcm9vdCkpO1xuICBsZXR0ZXItc3BhY2luZzogMDtcbiAgZm9udC1mZWF0dXJlLXNldHRpbmdzOiBcInNhbHRcIiAxO1xuICBtYXJnaW46IDAgMCAxLjI1cmVtO1xufVxuXG5zbWFsbCB7XG4gIGZvbnQtZmFtaWx5OiBcIlN1aXNzZSBJbnRsXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogY2FsYygxICogdmFyKC0tcGhjLXJvb3QpKTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgbGluZS1oZWlnaHQ6IGNhbGMoMS4xMjUgKiB2YXIoLS1waGMtcm9vdCkpO1xuICBsZXR0ZXItc3BhY2luZzogMDtcbiAgZm9udC1mZWF0dXJlLXNldHRpbmdzOiBcInNhbHRcIiAxO1xufVxuXG4ub2xkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0td2hpdGUpO1xuICBjb2xvcjogdmFyKC0tYmxhY2spO1xufVxuLm9sZCBoMTpub3QoW2NsYXNzKj10ZXh0LXBoYy1dKSB7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXhsKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXhsKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWxldHRlci1zcGFjaW5nLXhsKTtcbiAgbWFyZ2luOiAwO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xufVxuLm9sZCBoMjpub3QoW2NsYXNzKj10ZXh0LXBoYy1dKSxcbi5vbGQgaDM6bm90KFtjbGFzcyo9dGV4dC1waGMtXSksXG4ub2xkIGg0Om5vdChbY2xhc3MqPXRleHQtcGhjLV0pLFxuLm9sZCBoNTpub3QoW2NsYXNzKj10ZXh0LXBoYy1dKSxcbi5vbGQgaDY6bm90KFtjbGFzcyo9dGV4dC1waGMtXSkge1xuICBmb250LXdlaWdodDogNjAwO1xufVxuLm9sZCBwOm5vdChbY2xhc3MqPXRleHQtcGhjLV0pIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtbSk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1tKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWxldHRlci1zcGFjaW5nLW0pO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zZWN0aW9uLW1hcmdpbik7XG59XG4ub2xkIC5tYWluIGgxIHtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUteGwpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQteGwpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tbGV0dGVyLXNwYWNpbmcteGwpO1xufVxuLm9sZCAubWFpbiBoMiB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWwpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtbCk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1sZXR0ZXItc3BhY2luZy1sKTtcbn1cbi5vbGQgLm1haW4gaDMge1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1tKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LW0pO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tbGV0dGVyLXNwYWNpbmctbSk7XG59XG4ub2xkIC5tYWluIGg0IHtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtcyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1zKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWxldHRlci1zcGFjaW5nLXMpO1xufVxuLm9sZCAubWFpbiBoMSwgLm9sZCAubWFpbiBoMiwgLm9sZCAubWFpbiBoMywgLm9sZCAubWFpbiBoNCB7XG4gIG1hcmdpbjogMDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbWFyZ2luLWJvdHRvbTogY2FsYyh2YXIoLS1zZWN0aW9uLW1hcmdpbikgLyAyKTtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiAxMDIzcHgpIHtcbiAgLm9sZCAubWFpbiBwIHtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLW0pO1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1tKTtcbiAgICBsZXR0ZXItc3BhY2luZzogdmFyKC0tbGV0dGVyLXNwYWNpbmctbSk7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgfVxuICAub2xkIC5tYWluIGgxIHtcbiAgICBtYXJnaW46IDA7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBtYXJnaW46IDAgMCB2YXIoLS1zZWN0aW9uLW1hcmdpbik7XG4gIH1cbiAgLm9sZCAubWFpbi5tYWluLS1jb250YWN0Lm1haW4tLWFydGljbGUgaDEge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWwpO1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1sKTtcbiAgICBsZXR0ZXItc3BhY2luZzogdmFyKC0tbGV0dGVyLXNwYWNpbmctbCk7XG4gIH1cbiAgLm9sZCAubWFpbjpub3QoLm1haW4tLWNvbnRhY3QpIGgxIGJyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5vbGQgLm1haW4gaDIge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWwpO1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1sKTtcbiAgICBsZXR0ZXItc3BhY2luZzogdmFyKC0tbGV0dGVyLXNwYWNpbmctbCk7XG4gICAgbWFyZ2luOiAwO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgbWFyZ2luOiAwIDBweCA0MHB4O1xuICB9XG4gIC5vbGQgLm1haW4gaDMge1xuICAgIGZvbnQtZmFtaWx5OiBcIkludGVyXCIsIEhlbHZldGljYSwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBBcmlhbDtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLW0pO1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1tKTtcbiAgICBsZXR0ZXItc3BhY2luZzogdmFyKC0tbGV0dGVyLXNwYWNpbmctbSk7XG4gICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLm9sZCAubWFpbiBoMSxcbiAgLm9sZCAubWFpbiBwIHtcbiAgICBtYXJnaW4tYm90dG9tOiBjYWxjKHZhcigtLXNlY3Rpb24tbWFyZ2luKSAvIDIpO1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLm9sZCAubWFpbiBwLFxuICAub2xkIHAge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXMpO1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1zKTtcbiAgICBsZXR0ZXItc3BhY2luZzogdmFyKC0tbGV0dGVyLXNwYWNpbmctcyk7XG4gIH1cbn1cblxuLm1lbnUtYnVyZ2VyIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDIwcHg7XG4gIHJpZ2h0OiAzMnB4O1xuICB6LWluZGV4OiA1MDA7XG4gIHdpZHRoOiAyLjgxMjVyZW07XG4gIGhlaWdodDogMi4xMjVyZW07XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgbWl4LWJsZW5kLW1vZGU6IGRpZmZlcmVuY2U7XG59XG4uYWRtaW4tYmFyIC5tZW51LWJ1cmdlciB7XG4gIHRvcDogMzJweDtcbn1cbi5tZW51LWJ1cmdlci5hY3RpdmUge1xuICBtaXgtYmxlbmQtbW9kZTogbm9ybWFsO1xufVxuQG1lZGlhIChob3ZlcjogaG92ZXIpIHtcbiAgLm1lbnUtYnVyZ2VyOmhvdmVyIC5tZW51LWJ1cmdlcl9fYmFyLS0xID4gc3ZnIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNXB4KTtcbiAgfVxuICAubWVudS1idXJnZXI6aG92ZXIgLm1lbnUtYnVyZ2VyX19iYXItLTIgPiBzdmcge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDVweCk7XG4gIH1cbiAgLm1lbnUtYnVyZ2VyLmFjdGl2ZTpob3ZlciAubWVudS1idXJnZXJfX2Jhci0tMSA+IHN2ZyB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTEwcHgpO1xuICB9XG4gIC5tZW51LWJ1cmdlci5hY3RpdmU6aG92ZXIgLm1lbnUtYnVyZ2VyX19iYXItLTIgPiBzdmcge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDEwcHgpO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLm1lbnUtYnVyZ2VyIHtcbiAgICB0b3A6IDMycHg7XG4gICAgcmlnaHQ6IDY0cHg7XG4gIH1cbn1cbi5tZW51LWJ1cmdlcl9fYmFyIHtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDIuODEyNXJlbTtcbiAgaGVpZ2h0OiAwLjYyNXJlbTtcbiAgYmFja2dyb3VuZDogdmFyKC0tYmxhY2spO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS13aGl0ZSk7XG59XG4uYWN0aXZlIC5tZW51LWJ1cmdlcl9fYmFyIHtcbiAgYmFja2dyb3VuZDogdmFyKC0td2hpdGUpO1xuICB3aWR0aDogMy43NXJlbTtcbn1cbi5tZW51LWJ1cmdlcl9fYmFyLS0xIHtcbiAgdG9wOiAwO1xufVxuLm1lbnUtYnVyZ2VyX19iYXItLTIge1xuICB0b3A6IDEuNDM3NXJlbTtcbn1cbi5hY3RpdmUgLm1lbnUtYnVyZ2VyX19iYXItLTEge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwLjYyNXJlbSk7XG59XG4uYWN0aXZlIC5tZW51LWJ1cmdlcl9fYmFyLS0yIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTAuNjI1cmVtKTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxOTIwcHgpIHtcbiAgLm1lbnUtYnVyZ2VyX19iYXIuYWN0aXZlIHN2ZyBwYXRoIHtcbiAgICBmaWxsOiB2YXIoLS13aGl0ZSkgIWltcG9ydGFudDtcbiAgfVxufVxuLm1lbnUtYnVyZ2VyLnJldmVyc2Uge1xuICBtaXgtYmxlbmQtbW9kZTogbm9ybWFsO1xuICBmaWx0ZXI6IGludmVydCgxKTtcbn1cbi5tZW51LWJ1cmdlci5yZXZlcnNlIC5tZW51LWJ1cmdlcl9fYmFyIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tYmxhY2spO1xufVxuXG4uYmFja2dyb3VuZC0tZGFyayBzdmcgcGF0aCB7XG4gIGZpbGw6IHZhcigtLXdoaXRlKSAhaW1wb3J0YW50O1xufVxuLmJhY2tncm91bmQtLWxpZ2h0IHN2ZyBwYXRoIHtcbiAgZmlsbDogdmFyKC0tYmxhY2spICFpbXBvcnRhbnQ7XG59XG5cbi5tYWluLWxvZ28gaW1nIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiA1cmVtO1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnMgZWFzZS1vdXQ7XG4gIHBvaW50ZXItZXZlbnRzOiBpbml0aWFsO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDUwMDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAubWFpbi1sb2dvIGltZyB7XG4gICAgd2lkdGg6IDkuNTYyNXJlbTtcbiAgfVxufVxuLm1haW4tbG9nbyAuaG9tZS1vbmx5IHtcbiAgdG9wOiAzNXB4O1xuICBsZWZ0OiAzNXB4O1xuICBvcGFjaXR5OiAwO1xufVxuYm9keS5ob21lIC5tYWluLWxvZ28gLmhvbWUtb25seSB7XG4gIG9wYWNpdHk6IDE7XG59XG4ubWFpbi1sb2dvIC5hY3RpdmUtb25seSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiA3MHB4O1xuICBsZWZ0OiA2MHB4O1xuICB3aWR0aDogNS42MjVyZW07XG4gIGZpbHRlcjogaW52ZXJ0KDEpO1xufVxuYm9keS5ob21lIC5tYWluLWxvZ28ub24tbWVudSAuaG9tZS1vbmx5LFxuLm1haW4tbG9nby5vbi1tZW51IC5ob21lLW9ubHkge1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnMgZWFzZS1vdXQ7XG59XG4ubWFpbi1sb2dvLm9uLW1lbnUgLmFjdGl2ZS1vbmx5IHtcbiAgb3BhY2l0eTogMTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGVhc2Utb3V0IDAuMjVzO1xufVxuXG4ubWFpbi1tZW51X19jb250YWluZXJfX292ZXJsYXkge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC43KTtcbiAgY29sb3I6ICNmZmY7XG4gIHotaW5kZXg6IDQ1MDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgcGFkZGluZzogNi4yNXJlbSAxLjI1cmVtIDEuODc1cmVtO1xuICB3aWR0aDogMTAwJTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuNHMgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG59XG4ubWFpbi1tZW51X19jb250YWluZXJfX292ZXJsYXktYmcge1xuICBvcGFjaXR5OiAwO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgei1pbmRleDogNDAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDApO1xuICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoMTBweCk7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC40cyBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcbiAgdG9wOiAtMTAwdmg7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuLm1haW4tbWVudV9fY29udGFpbmVyLmFjdGl2ZSAubWFpbi1tZW51X19jb250YWluZXJfX292ZXJsYXkge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCUpO1xufVxuLm1haW4tbWVudV9fY29udGFpbmVyLmFjdGl2ZSAubWFpbi1tZW51X19jb250YWluZXJfX292ZXJsYXktYmcge1xuICBvcGFjaXR5OiAxO1xuICB0b3A6IDA7XG4gIHBvaW50ZXItZXZlbnRzOiBhbGw7XG59XG4ubWFpbi1tZW51X19maWx0ZXItbGlzdCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4uc2hvdy1ncmlkLWNvbnRhaW5lciAubWFpbi1tZW51X19maWx0ZXItbGlzdCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLm1haW4tbWVudV9fbGlzdCB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBsaW5lLWhlaWdodDogMTtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIHBhZGRpbmc6IDkuMzc1cmVtIDAgMDtcbn1cbi5zaG93LWdyaWQtY29udGFpbmVyIC5tYWluLW1lbnVfX2xpc3Qge1xuICBkaXNwbGF5OiBub25lO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5tYWluLW1lbnVfX2xpc3Qge1xuICAgIHBhZGRpbmc6IDkuMzc1cmVtIDEuODc1cmVtIDA7XG4gIH1cbn1cbi5tYWluLW1lbnVfX2l0ZW0ge1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6IDQuNjg3NXJlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG4ubWFpbi1tZW51X19pdGVtIHN1YiB7XG4gIHRvcDogLTAuMjVlbTtcbiAgYm90dG9tOiBhdXRvO1xufVxuLm1haW4tbWVudV9faXRlbTpiZWZvcmUge1xuICBkaXNwbGF5OiBub25lO1xufVxuLm1haW4tbWVudV9faXRlbS0tdHdvLWxpbmUge1xuICBmb250LXNpemU6IDIuNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG4ubWFpbi1tZW51X19jb250YWluZXIgLmZpbHRlci1tZW51LWl0ZW0sIC5tYWluLW1lbnVfX2xpbmsge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGNvbG9yOiB2YXIoLS13aGl0ZSk7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2Utb3V0O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG59XG5AbWVkaWEgKGhvdmVyOiBob3Zlcikge1xuICAubWFpbi1tZW51X19jb250YWluZXIgLmZpbHRlci1tZW51LWl0ZW06aG92ZXIsIC5tYWluLW1lbnVfX2xpbms6aG92ZXIge1xuICAgIGNvbG9yOiB2YXIoLS1taWRkbGUtZ3JleSk7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiAxMDIzcHgpIHtcbiAgLm1haW4tbWVudV9fY29udGFpbmVyIC5maWx0ZXItbWVudS1pdGVtLCAubWFpbi1tZW51X19saW5rIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuLm1haW4tbWVudV9fY29udGFpbmVyIC5maWx0ZXItbWVudS1pdGVtLmFjdGl2ZSB7XG4gIGNvbG9yOiB2YXIoLS1taWRkbGUtZ3JleSk7XG59XG5cbmJvZHkuaGVhZGxlc3MgLm1lbnUtYnVyZ2VyIHBhdGgge1xuICBmaWxsOiB2YXIoLS1ibGFjayk7XG59XG5ib2R5LmhlYWRsZXNzIC5tZW51LWJ1cmdlci5hY3RpdmUgcGF0aCB7XG4gIGZpbGw6IHZhcigtLXdoaXRlKTtcbn1cbmJvZHkuaGVhZGxlc3MgLm1haW4tbG9nbyBwYXRoIHtcbiAgZmlsbDogdmFyKC0tYmxhY2spO1xufVxuYm9keS5oZWFkbGVzcyAubWFpbi1sb2dvLm9uLW1lbnUgcGF0aCB7XG4gIGZpbGw6IHZhcigtLXdoaXRlKTtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAubWFpbi1tZW51X19jb250YWluZXJfX292ZXJsYXkge1xuICAgIHBhZGRpbmc6IDEuNTYyNXJlbSAwIDMuMTI1cmVtIDMuMTI1cmVtO1xuICAgIGZvbnQtc2l6ZTogMy4xMjVyZW07XG4gIH1cbiAgLm1haW4tbWVudV9fY29udGFpbmVyIC5maWx0ZXItbWVudS1pdGVtLFxuICAubWFpbi1tZW51X19pdGVtIHtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDEwMjNweCkge1xuICAubWFpbi1tZW51X19jb250YWluZXIgLmZpbHRlci1tZW51LWl0ZW0sXG4gIC5tYWluLW1lbnVfX2l0ZW0ge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjE7XG4gICAgcGFkZGluZzogMDtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1sKTtcbiAgfVxuICAubWFpbi1tZW51X19pdGVtLS10d28tbGluZSB7XG4gICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICB9XG4gIC5ncmlkLWRlc2t0b3Age1xuICAgIGxlZnQ6IDA7XG4gICAgb3BhY2l0eTogMC4xO1xuICAgIHotaW5kZXg6IDEyMDA7XG4gICAgbWFyZ2luOiAwIDEuMjVyZW07XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjNzc3O1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICM3Nzc7XG4gIH1cbiAgLmdyaWQtZGVza3RvcC5vZmYge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbiAgLmdyaWQtZGVza3RvcF9fY29sIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogMzQ5cHgpIHtcbiAgLm1haW4tbWVudV9fY29udGFpbmVyIC5maWx0ZXItbWVudS1pdGVtLFxuICAubWFpbi1tZW51X19pdGVtIHtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS14bCk7XG4gIH1cbn1cbi5waGMtbWVudSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogY2FsYygxLjI1ICogdmFyKC0tcGhjLXJvb3QpKTtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMTAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgcGFkZGluZzogMCBjYWxjKDEuMjUgKiB2YXIoLS1waGMtcm9vdCkpO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cbi5waGMtbWVudV9fYmFyIHtcbiAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogdmFyKC0tcGhjLXBhZ2Utd2lkdGgpO1xuICBoZWlnaHQ6IGNhbGMoNC4zNzUgKiB2YXIoLS1waGMtcm9vdCkpO1xuICBkaXNwbGF5OiBibG9jaztcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYm9yZGVyLXJhZGl1czogY2FsYygyLjE4NzUgKiB2YXIoLS1waGMtcm9vdCkpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIHRyYW5zaXRpb246IHdpZHRoIDAuNHMgZWFzZSwgbWF4LXdpZHRoIDAuNHMgZWFzZSwgdHJhbnNmb3JtIDAuNHMgZWFzZTtcbn1cbi5waGMtbWVudSAucGhjLWdsYXNzLWNhbnZhcyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBib3JkZXItcmFkaXVzOiBpbmhlcml0O1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cbi5waGMtbWVudV9faW5uZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDE7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogY2FsYygxICogdmFyKC0tcGhjLXJvb3QpKTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgcGFkZGluZzogMCBjYWxjKDEgKiB2YXIoLS1waGMtcm9vdCkpO1xufVxuLnBoYy1tZW51X19sb2dvIHtcbiAgZmxleDogMCAwIGF1dG87XG4gIHdpZHRoOiBjYWxjKDIgKiB2YXIoLS1waGMtcm9vdCkpO1xuICBoZWlnaHQ6IGNhbGMoMiAqIHZhcigtLXBoYy1yb290KSk7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tcGhjLW1lbnUtZmcpO1xuICBtYXNrOiB1cmwoXCIuLi9pbWFnZXMvaC1sb2dvLnN2Z1wiKSBjZW50ZXIvY29udGFpbiBuby1yZXBlYXQ7XG4gIC13ZWJraXQtbWFzazogdXJsKFwiLi4vaW1hZ2VzL2gtbG9nby5zdmdcIikgY2VudGVyL2NvbnRhaW4gbm8tcmVwZWF0O1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG4ucGhjLW1lbnVfX2l0ZW0ge1xuICBmbGV4OiAxIDAgMDtcbiAgbWluLXdpZHRoOiAwO1xuICBjb2xvcjogdmFyKC0tcGhjLW1lbnUtZmcpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuLnBoYy1tZW51X19pdGVtLmFjdGl2ZSB7XG4gIGNvbG9yOiB2YXIoLS1waGMtbWVudS1mZy1hY3RpdmUpO1xufVxuQG1lZGlhIChob3ZlcjogaG92ZXIpIHtcbiAgLnBoYy1tZW51X19pdGVtOmhvdmVyIHtcbiAgICBjb2xvcjogdmFyKC0tcGhjLW1lbnUtZmctYWN0aXZlKTtcbiAgfVxufVxuLnBoYy1tZW51X19saW5rZWRpbiB7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICB3aWR0aDogY2FsYygyLjUgKiB2YXIoLS1waGMtcm9vdCkpO1xuICBoZWlnaHQ6IGNhbGMoMi41ICogdmFyKC0tcGhjLXJvb3QpKTtcbn1cbi5waGMtbWVudV9fbGlua2VkaW4gaW1nIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbi5waGMtbWVudVtkYXRhLWdsYXNzPXdlYmdsXSAucGhjLW1lbnVfX2Jhcixcbi5waGMtbWVudVtkYXRhLWdsYXNzPXBsYWluXSAucGhjLW1lbnVfX2JhciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXBoYy1tZW51LWJnLWZhbGxiYWNrKTtcbiAgYm94LXNoYWRvdzogaW5zZXQgMXB4IDFweCAwIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41NSksIGluc2V0IC0xcHggLTFweCAwIHJnYmEoMCwgMCwgMCwgMC4yNSk7XG59XG5cbi5waGMtbWVudVtkYXRhLWdsYXNzPXdlYmdsXS5waGMtbWVudS0tZ2xhc3MtcmVhZHkgLnBoYy1tZW51X19iYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLnBoYy1tZW51LS1taW4gLnBoYy1tZW51X19iYXIge1xuICB3aWR0aDogY2FsYyg0LjM3NSAqIHZhcigtLXBoYy1yb290KSk7XG4gIG1heC13aWR0aDogY2FsYyg0LjM3NSAqIHZhcigtLXBoYy1yb290KSk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCh2YXIoLS1waGMtbWVudS1zaGlmdCwgMHB4KSk7XG59XG4ucGhjLW1lbnUtLW1pbiAucGhjLW1lbnVfX2lubmVyIHtcbiAgcGFkZGluZzogMDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG4ucGhjLW1lbnUtLW1pbiAucGhjLW1lbnVfX2l0ZW0sXG4ucGhjLW1lbnUtLW1pbiAucGhjLW1lbnVfX2xpbmtlZGluIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5waGMtbWVudV9fbG9nbywgLnBoYy1tZW51X19saW5rZWRpbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAucGhjLW1lbnVfX2JhciB7XG4gICAgaGVpZ2h0OiBjYWxjKDMuMjUgKiB2YXIoLS1waGMtcm9vdCkpO1xuICAgIGJvcmRlci1yYWRpdXM6IGNhbGMoMS42MjUgKiB2YXIoLS1waGMtcm9vdCkpO1xuICB9XG4gIC5waGMtbWVudV9faW5uZXIge1xuICAgIGdhcDogY2FsYygwLjUgKiB2YXIoLS1waGMtcm9vdCkpO1xuICAgIHBhZGRpbmc6IDAgY2FsYygwLjUgKiB2YXIoLS1waGMtcm9vdCkpO1xuICB9XG4gIC5waGMtbWVudV9faXRlbSB7XG4gICAgZmxleDogMSAxIGF1dG87XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICBtaW4td2lkdGg6IDA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbiAgfVxuICAucGhjLW1lbnUtLW1pbiAucGhjLW1lbnVfX2JhciB7XG4gICAgd2lkdGg6IGNhbGMoMy4yNSAqIHZhcigtLXBoYy1yb290KSk7XG4gICAgbWF4LXdpZHRoOiBjYWxjKDMuMjUgKiB2YXIoLS1waGMtcm9vdCkpO1xuICB9XG4gIC5waGMtbWVudSAucGhjLW1lbnVfX2l0ZW0ge1xuICAgIGZvbnQtc2l6ZTogY2FsYyh2YXIoLS1waGMtbWVudS1pdGVtLXNpemUsIDEyKSAvIDE2ICogdmFyKC0tcGhjLXJvb3QpKTtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICB9XG59XG4uZm9vdGVyIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tYmxhY2spO1xuICBwYWRkaW5nOiAzLjEyNXJlbSAycmVtIDJyZW07XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmZvb3RlciB7XG4gICAgcGFkZGluZzogMy4xMjVyZW0gMi44MTI1cmVtIDJyZW07XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZm9vdGVyX19pbm5lciB7XG4gICAgbWF4LXdpZHRoOiA1MCU7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIH1cbn1cbi5mb290ZXIgcCB7XG4gIGNvbG9yOiB2YXIoLS13aGl0ZSk7XG4gIG1hcmdpbi1ib3R0b206IDEuMTI1cmVtO1xuICBmb250LXdlaWdodDogNjAwO1xuICBsaW5lLWhlaWdodDogMTtcbn1cbi5mb290ZXIgcDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi5mb290ZXIgYSB7XG4gIGNvbG9yOiB2YXIoLS13aGl0ZSk7XG59XG4uZm9vdGVyX19sb2dvIHtcbiAgZmlsdGVyOiBpbnZlcnQoMSk7XG59XG4uZm9vdGVyX19sb2dvX19pbWcge1xuICBtYXgtd2lkdGg6IDdyZW07XG59XG4uZm9vdGVyX19sb2dvIHtcbiAgbWFyZ2luLWJvdHRvbTogNC4zNzVyZW07XG59XG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmZvb3Rlcl9fbG9nbyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBtYXJnaW4tYm90dG9tOiAyLjVyZW07XG4gIH1cbn1cbi5mb290ZXJfX3d5c2l3eWcge1xuICBtYXJnaW4tdG9wOiAxLjVyZW07XG59XG4uZm9vdGVyX193eXNpd3lnOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiAycmVtO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5mb290ZXJfX3d5c2l3eWcge1xuICAgIG1hcmdpbi10b3A6IDIuODEyNXJlbTtcbiAgfVxuICAuZm9vdGVyX193eXNpd3lnOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi10b3A6IDUuMzEyNXJlbTtcbiAgfVxufVxuXG4ucGhjLWZvb3RlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcm93LWdhcDogMi41cmVtO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMi41cmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1waGMtY29udHJhc3QtYmcpO1xuICBjb2xvcjogdmFyKC0tcGhjLWNvbnRyYXN0LWZnKTtcbn1cbi5waGMtZm9vdGVyX19tYXJrIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgZmxleDogMCAwIDEwMCU7XG4gIGhlaWdodDogY2FsYyg1ICogdmFyKC0tcGhjLXJvb3QpKTtcbiAgbWFyZ2luLWJvdHRvbTogMi41cmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1waGMtY29udHJhc3QtZmcpO1xuICBtYXNrOiB1cmwoXCIuLi9pbWFnZXMvaC1sb2dvLnN2Z1wiKSBjZW50ZXIvY29udGFpbiBuby1yZXBlYXQ7XG4gIC13ZWJraXQtbWFzazogdXJsKFwiLi4vaW1hZ2VzL2gtbG9nby5zdmdcIikgY2VudGVyL2NvbnRhaW4gbm8tcmVwZWF0O1xufVxuLnBoYy1mb290ZXJfX2JpbyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGZsZXg6IDAgMSAzOS4zMTI1cmVtO1xuICBnYXA6IDAuNjI1cmVtO1xuICBtaW4td2lkdGg6IDA7XG59XG4ucGhjLWZvb3Rlcl9fYmlvIHAge1xuICBtYXJnaW46IDA7XG59XG4ucGhjLWZvb3Rlcl9fbGlua2VkaW4ge1xuICBmbGV4OiAwIDAgYXV0bztcbiAgd2lkdGg6IDMuMzc1cmVtO1xuICBoZWlnaHQ6IDMuMzc1cmVtO1xufVxuLnBoYy1mb290ZXJfX2xpbmtlZGluIGltZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuLnBoYy1mb290ZXJfX2xpbmtzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleDogMCAwIGF1dG87XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBnYXA6IDAuNjI1cmVtO1xufVxuLnBoYy1mb290ZXJfX2xpbmsge1xuICBjb2xvcjogaW5oZXJpdDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuQG1lZGlhIChob3ZlcjogaG92ZXIpIHtcbiAgLnBoYy1mb290ZXJfX2xpbms6aG92ZXIge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICB9XG59XG4ucGhjLWZvb3Rlcl9fY29weXJpZ2h0IHtcbiAgZmxleDogMSAwIDEwMCU7XG4gIG1hcmdpbjogMDtcbiAgY29sb3I6IHZhcigtLXBoYy1jb250cmFzdC1tdXRlZCk7XG59XG5cbi5waGMtaGFzLW1lbnUgLnBoYy1mb290ZXIge1xuICBwYWRkaW5nLWJvdHRvbTogMTFyZW07XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAucGhjLWZvb3RlciB7XG4gICAgcGFkZGluZzogMS4yNXJlbTtcbiAgfVxuICAucGhjLWZvb3Rlcl9fbWFyayB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbiAgLnBoYy1mb290ZXJfX2JpbyB7XG4gICAgZmxleC1iYXNpczogMTAwJTtcbiAgfVxuICAucGhjLWhhcy1tZW51IC5waGMtZm9vdGVyIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTZyZW07XG4gIH1cbn1cblt0eXBlPXRleHRdLCBbdHlwZT1wYXNzd29yZF0sIFt0eXBlPWRhdGVdLCBbdHlwZT1kYXRldGltZV0sIFt0eXBlPWRhdGV0aW1lLWxvY2FsXSwgW3R5cGU9bW9udGhdLCBbdHlwZT13ZWVrXSwgW3R5cGU9ZW1haWxdLCBbdHlwZT1udW1iZXJdLCBbdHlwZT1zZWFyY2hdLCBbdHlwZT10ZWxdLCBbdHlwZT10aW1lXSwgW3R5cGU9dXJsXSwgW3R5cGU9Y29sb3JdLFxuaW5wdXQsXG50ZXh0YXJlYSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBtYXJnaW4tYm90dG9tOiAxNnB4O1xuICBmb250LXNpemU6IDEuNnJlbSAhaW1wb3J0YW50O1xuICBwYWRkaW5nOiA1cHggMDtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJsYWNrKTtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMjVzIGVhc2Utb3V0O1xufVxuW3R5cGU9dGV4dF06Zm9jdXMsIFt0eXBlPXBhc3N3b3JkXTpmb2N1cywgW3R5cGU9ZGF0ZV06Zm9jdXMsIFt0eXBlPWRhdGV0aW1lXTpmb2N1cywgW3R5cGU9ZGF0ZXRpbWUtbG9jYWxdOmZvY3VzLCBbdHlwZT1tb250aF06Zm9jdXMsIFt0eXBlPXdlZWtdOmZvY3VzLCBbdHlwZT1lbWFpbF06Zm9jdXMsIFt0eXBlPW51bWJlcl06Zm9jdXMsIFt0eXBlPXNlYXJjaF06Zm9jdXMsIFt0eXBlPXRlbF06Zm9jdXMsIFt0eXBlPXRpbWVdOmZvY3VzLCBbdHlwZT11cmxdOmZvY3VzLCBbdHlwZT1jb2xvcl06Zm9jdXMsXG5pbnB1dDpmb2N1cyxcbnRleHRhcmVhOmZvY3VzIHtcbiAgb3V0bGluZTogMDtcbiAgYm9yZGVyOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cblxudGV4dGFyZWEge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHJlc2l6ZTogbm9uZTtcbn1cbnRleHRhcmVhW3Jvd3NdIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG5pbnB1dDpkaXNhYmxlZCxcbmlucHV0W3JlYWRvbmx5XSxcbnRleHRhcmVhW3JlYWRvbmx5XSB7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG59XG5cblt0eXBlPXN1Ym1pdF0sXG5bdHlwZT1idXR0b25dIHtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuaW5wdXRbdHlwZT1zZWFyY2hdIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuW3R5cGU9bnVtYmVyXSB7XG4gIC1tb3otYXBwZWFyYW5jZTogdGV4dGZpZWxkO1xufVxuW3R5cGU9bnVtYmVyXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbiwgW3R5cGU9bnVtYmVyXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgbWFyZ2luOiAwO1xufVxuXG5sYWJlbCB7XG4gIGZvbnQtc2l6ZTogMS4ycmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4uYnV0dG9uIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJhY2tncm91bmQ6IHZhcigtLW1pZGRsZS1ncmV5KTtcbiAgY29sb3I6IHZhcigtLXdoaXRlKTtcbiAgcGFkZGluZzogMjBweDtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgb3V0bGluZTogMDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuLmJ1dHRvbjpob3ZlciwgLmJ1dHRvbjphY3RpdmUge1xuICBvdXRsaW5lOiAwO1xufVxuLmJ1dHRvbiB7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIC5idXR0b24ge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXMpO1xuICB9XG59XG4ucGhjLWJsb2NrIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIGdhcDogMi41cmVtO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMi41cmVtO1xuICBjb2xvcjogdmFyKC0tcGhjLWZnKTtcbn1cbi5waGMtYmxvY2tfX3JvdyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIGdhcDogMS4yNXJlbTtcbiAgd2lkdGg6IDEwMCU7XG59XG4ucGhjLWJsb2NrX19sYWJlbCB7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICBtaW4td2lkdGg6IDI2LjI1cmVtO1xuICBtYXgtd2lkdGg6IDI2LjI1cmVtO1xufVxuLnBoYy1ibG9ja19fZW4ge1xuICBmbGV4OiAxIDAgMDtcbiAgbWluLXdpZHRoOiAyOC4xMjVyZW07XG59XG4ucGhjLWJsb2NrX19qcCB7XG4gIGZsZXg6IDEgMCAwO1xuICBtaW4td2lkdGg6IDI4LjEyNXJlbTtcbn1cbi5waGMtYmxvY2tfX3RpdGxlIHtcbiAgZmxleDogMSAwIDA7XG4gIG1pbi13aWR0aDogMjVyZW07XG4gIG1heC13aWR0aDogY2FsYygxMDAlIC0gMjAuNjI1cmVtKTtcbiAgbWFyZ2luOiAwO1xufVxuLnBoYy1ibG9ja19fZmlndXJlIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleDogMSAwIDA7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGdhcDogMS4yNXJlbTtcbiAgbWluLXdpZHRoOiAyNXJlbTtcbiAgbWF4LXdpZHRoOiAyOC4xMjVyZW07XG59XG4ucGhjLWJsb2NrX19maWd1cmUtdmFsdWUge1xuICBtYXJnaW46IDA7XG59XG4ucGhjLWJsb2NrX19maWd1cmUtY2FwdGlvbiBwIHtcbiAgbWFyZ2luOiAwO1xufVxuLnBoYy1ibG9ja19fbGFiZWwtLW11dGVkIHtcbiAgY29sb3I6IHZhcigtLXBoYy1tdXRlZCk7XG59XG4ucGhjLWJsb2NrX19pbnRybyB7XG4gIGZsZXg6IDEgMCAwO1xuICBtaW4td2lkdGg6IDMzLjEyNXJlbTtcbn1cbi5waGMtYmxvY2tfX2ludHJvLS1qcCB7XG4gIGZsZXgtYmFzaXM6IDEwMCU7XG4gIG1hcmdpbi1sZWZ0OiAyNy41cmVtO1xuICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDI3LjVyZW0pO1xufVxuLnBoYy1ibG9ja19fbGluayB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IDAuNjI1cmVtO1xuICBjb2xvcjogaW5oZXJpdDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuLnBoYy1ibG9ja19fbGluayBpbWcge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDIuNXJlbTtcbiAgaGVpZ2h0OiAyLjVyZW07XG59XG4ucGhjLWJsb2NrX19kZXRhaWwge1xuICBmbGV4OiAxIDAgMDtcbiAgbWluLXdpZHRoOiAxOS4zNzVyZW07XG59XG4ucGhjLWJsb2NrX19kZXRhaWwgcCB7XG4gIG1hcmdpbjogMDtcbn1cbi5waGMtYmxvY2tfX2xhYmVsID4gOmxhc3QtY2hpbGQsIC5waGMtYmxvY2tfX2VuID4gOmxhc3QtY2hpbGQsIC5waGMtYmxvY2tfX2pwID4gOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLnBoYy1ibG9ja19fcnVsZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW46IDAuNjI1cmVtIDAgMDtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tcGhjLXJ1bGUpO1xufVxuLnBoYy1ibG9ja19fcnVsZS0tZ3JheSB7XG4gIGJvcmRlci10b3AtY29sb3I6IHZhcigtLXBoYy1ncmF5KTtcbn1cbi5waGMtYmxvY2tfX3J1bGUtLXdoaXRlIHtcbiAgYm9yZGVyLXRvcC1jb2xvcjogdmFyKC0tcGhjLXdoaXRlLWFmKTtcbn1cbi5waGMtYmxvY2tfX3J1bGUtLWJsYWNrIHtcbiAgYm9yZGVyLXRvcC1jb2xvcjogdmFyKC0tcGhjLWJsYWNrLWFmKTtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5waGMtYmxvY2sge1xuICAgIHBhZGRpbmc6IDEuMjVyZW07XG4gICAgZ2FwOiAxLjI1cmVtO1xuICB9XG4gIC5waGMtYmxvY2tfX3RpdGxlLCAucGhjLWJsb2NrX19maWd1cmUsIC5waGMtYmxvY2tfX2RldGFpbCwgLnBoYy1ibG9ja19fbGFiZWwsIC5waGMtYmxvY2tfX2VuLCAucGhjLWJsb2NrX19qcCwgLnBoYy1ibG9ja19faW50cm8ge1xuICAgIGZsZXg6IDEgMSAxMDAlO1xuICAgIG1pbi13aWR0aDogMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cbiAgLnBoYy1ibG9ja19faW50cm8tLWpwIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxufVxuLnBoYy1ibG9jay0tZXhwZXJpZW5jZSxcbi5waGMtYmxvY2stLXByb2ZpbGUtaW50cm8ge1xuICBnYXA6IDEuMjVyZW07XG59XG5cbi5waGMtYmxvY2tfX3Jvdy0tZW50cnkge1xuICByb3ctZ2FwOiAwLjI1cmVtO1xufVxuXG4ucGhjLWJsb2NrLS1kaXZpZGVyIHtcbiAgcGFkZGluZy10b3A6IDA7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xufVxuLnBoYy1ibG9jay0tZGl2aWRlciAucGhjLWJsb2NrX19ydWxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMC42MjVyZW07XG59XG5cbi5waGMtYmxvY2stLWRldGFpbHMge1xuICBnYXA6IDEuMjVyZW07XG4gIHBhZGRpbmctdG9wOiAwO1xufVxuXG4ucGhjLWJhY2sge1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMi41cmVtO1xuICBjb2xvcjogdmFyKC0tcGhjLWZnKTtcbn1cbi5waGMtYmFja19fbGluayB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgY29sb3I6IHZhcigtLXBoYy1mZyk7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbkBtZWRpYSAoaG92ZXI6IGhvdmVyKSB7XG4gIC5waGMtYmFja19fbGluazpob3ZlciB7XG4gICAgY29sb3I6IHZhcigtLXBoYy1mZyk7XG4gIH1cbn1cblxuLnBoYy1iYWNrLS1mbG9hdCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxMDtcbiAgd2lkdGg6IGF1dG87XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAucGhjLWJhY2sge1xuICAgIHBhZGRpbmc6IDEuMjVyZW07XG4gIH1cbn1cbi5waGMtYXJyb3cge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjJzIGVhc2Utb3V0O1xufVxuXG5AbWVkaWEgKGhvdmVyOiBob3Zlcikge1xuICBhOmhvdmVyIC5waGMtYXJyb3cge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwLjM3NXJlbSk7XG4gIH1cbiAgYTpob3ZlciAucGhjLWFycm93LS1iYWNrIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTAuMzc1cmVtKTtcbiAgfVxufVxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgLnBoYy1hcnJvdyB7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgfVxufVxuLnBoYy1yZWxhdGVkIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgZ2FwOiAxLjI1cmVtO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMi41cmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1waGMtY29udHJhc3QtYmcpO1xuICBjb2xvcjogdmFyKC0tcGhjLWNvbnRyYXN0LWZnKTtcbn1cbi5waGMtcmVsYXRlZF9faGVhZGluZyB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW46IDA7XG59XG4ucGhjLXJlbGF0ZWRfX2NhcmQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXg6IDEgMCAwO1xuICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gIGFzcGVjdC1yYXRpbzogMTQ0MC83MjA7XG4gIG1pbi13aWR0aDogMjcuNXJlbTtcbiAgbWluLWhlaWdodDogMTMuNzVyZW07XG4gIHBhZGRpbmc6IDEuMjVyZW07XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4ucGhjLXJlbGF0ZWRfX2ltYWdlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBpbnNldDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG59XG4ucGhjLXJlbGF0ZWRfX2NhcHRpb24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbjogMDtcbiAgY29sb3I6IHZhcigtLXBoYy13aGl0ZS1hZik7XG59XG4ucGhjLXJlbGF0ZWRfX2NsaWVudCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLnBoYy1yZWxhdGVkIHtcbiAgICBwYWRkaW5nOiAxLjI1cmVtO1xuICB9XG4gIC5waGMtcmVsYXRlZF9fY2FyZCB7XG4gICAgZmxleDogMSAxIDEwMCU7XG4gICAgbWluLXdpZHRoOiAxMDAlO1xuICB9XG59XG4uaW50cm8tc2VjdGlvbi1jb250YWluZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWF4LXdpZHRoOiB2YXIoLS1zaXRlLXdpZHRoKTtcbiAgbWFyZ2luOiAwIGF1dG87XG59XG5cbi5pbnRyby1zZWN0aW9uIHtcbiAgbWF4LXdpZHRoOiB2YXIoLS1zaXRlLXdpZHRoKTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1pbi1oZWlnaHQ6IGNhbGMoKHZhcigtLXNpdGUtd2lkdGgpKSAvIDMpO1xuICBwYWRkaW5nOiA0MHB4IDAgNjVweDtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xufVxuLmludHJvLXNlY3Rpb25fX2xlZnQtY29sIHtcbiAgd2lkdGg6IHZhcigtLWNvbC00KTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1jb2wtMSk7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoLS1jb2wtMSk7XG4gIHBhZGRpbmc6IDA7XG59XG4uaW50cm8tc2VjdGlvbl9fcmlnaHQtY29sIHtcbiAgd2lkdGg6IHZhcigtLWNvbC01KTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1jb2wtMSk7XG59XG4uaW50cm8tc2VjdGlvbl9faDEge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiA0MHB4O1xufVxuLmludHJvLXNlY3Rpb25fX3RleHQge1xuICBmb250LWZhbWlseTogXCJJbnRlclwiLCBIZWx2ZXRpY2EsIFwiSGVsdmV0aWNhIE5ldWVcIiwgQXJpYWw7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWwpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtbCk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1sZXR0ZXItc3BhY2luZy1sKTtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc2VjdGlvbi1tYXJnaW4pO1xufVxuLmludHJvLXNlY3Rpb25fX2NhbGwge1xuICBmb250LWZhbWlseTogXCJJbnRlclwiLCBIZWx2ZXRpY2EsIFwiSGVsdmV0aWNhIE5ldWVcIiwgQXJpYWw7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLW0pO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtbSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1sZXR0ZXItc3BhY2luZy1tKTtcbiAgY29sb3I6IHZhcigtLW1pZGRsZS1ncmV5KTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tYm90dG9tOiA1MDtcbn1cbi5pbnRyby1zZWN0aW9uX19jYWxsIGEge1xuICBjb2xvcjogdmFyKC0tbWlkZGxlLWdyZXkpO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5AbWVkaWEgKGhvdmVyOiBob3Zlcikge1xuICAuaW50cm8tc2VjdGlvbl9fY2FsbDpob3ZlciAuaW50cm8tc2VjdGlvbl9fYXJyb3cge1xuICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xuICB9XG59XG5cbi5pbnRyby1zZWN0aW9uX19hcnJvdyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdHJhbnNpdGlvbjogbWFyZ2luLWxlZnQgMC4ycyBlYXNlLW91dDtcbiAgbWFyZ2luLWxlZnQ6IDEwcHg7XG59XG5cbi5hcnJvdy1zbGlkaW5nLXJpZ2h0IHtcbiAgZGlzcGxheTogaW5saW5lO1xuICB0cmFuc2l0aW9uOiBtYXJnaW4gMC4ycyBlYXNlLW91dDtcbn1cblxuLmZsb3ctYmxvY2sge1xuICBiYWNrZ3JvdW5kOiAjRjFGMUYxO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogbm9uZTtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjdzO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuLmZsb3ctYmxvY2sgLmFycm93LXNsaWRpbmctcmlnaHQge1xuICBtYXJnaW4tbGVmdDogMHB4O1xuICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTtcbn1cbkBtZWRpYSAoaG92ZXI6IGhvdmVyKSB7XG4gIC5mbG93LWJsb2NrOmhvdmVyIC5hcnJvdy1zbGlkaW5nLXJpZ2h0IHtcbiAgICBtYXJnaW4tbGVmdDogMC41cmVtO1xuICAgIG1hcmdpbi1yaWdodDogMHB4O1xuICB9XG59XG4uZmxvdy1ibG9jay0tbm8tbGluayAuYXJyb3ctc2xpZGluZy1yaWdodCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5pbnRyby1zZWN0aW9uX190ZXh0LS1taWRkbGUtZ3JleSB7XG4gIGNvbG9yOiB2YXIoLS1taWRkbGUtZ3JleSk7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMDIzcHgpIHtcbiAgLmludHJvLXNlY3Rpb24ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IDMwcHggMS4yNXJlbSAwO1xuICB9XG4gIC5pbnRyby1zZWN0aW9uX19sZWZ0LWNvbCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luOiAwO1xuICB9XG4gIC5pbnRyby1zZWN0aW9uX19yaWdodC1jb2wge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1zZWN0aW9uLW1hcmdpbik7XG4gIH1cbiAgLmludHJvLXNlY3Rpb25fX2gxIHtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1sKTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtbCk7XG4gICAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWxldHRlci1zcGFjaW5nLWwpO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxuICAuaW50cm8tc2VjdGlvbl9fdGV4dCB7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtbCk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWwpO1xuICAgIGxldHRlci1zcGFjaW5nOiB2YXIoLS1sZXR0ZXItc3BhY2luZy1sKTtcbiAgICBtYXJnaW4tYm90dG9tOiBjYWxjKHZhcigtLXNlY3Rpb24tbWFyZ2luKSAvIDIpO1xuICB9XG4gIC5pbnRyby1zZWN0aW9uX19jYWxsIHtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1tKTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtbSk7XG4gICAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWxldHRlci1zcGFjaW5nLW0pO1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmludHJvLXNlY3Rpb24ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICB9XG59XG4uc2VjdGlvbi13cmFwcGVyLS01MCB7XG4gIHdpZHRoOiA1MCU7XG59XG5cbi5hcnRpY2xlLXBhcmFncmFwaC1ibG9jay0tY29scyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG59XG4uYXJ0aWNsZS1wYXJhZ3JhcGgtYmxvY2stLWNvbHMgaW1nIHtcbiAgd2lkdGg6IDEwMCU7XG59XG4uYXJ0aWNsZS1wYXJhZ3JhcGgtYmxvY2stLWNvbHMgLmNvbCB7XG4gIHdpZHRoOiAxMDAlO1xufVxuLmFydGljbGUtcGFyYWdyYXBoLWJsb2NrLS1jb2xzIC5jb2wtLXZpZGVvIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuLmFydGljbGUtcGFyYWdyYXBoLWJsb2NrLS1jb2xzIC5jb2wtLXZpZGVvIGlmcmFtZSB7XG4gIGhlaWdodDogMTAxJSAhaW1wb3J0YW50O1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5hcnRpY2xlLXBhcmFncmFwaC1ibG9jay0tY29scy0tMiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuYXJ0aWNsZS1wYXJhZ3JhcGgtYmxvY2stLWNvbHMtLTIgLmNvbCB7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5hcnRpY2xlLXBhcmFncmFwaC1ibG9jay0tY29scy0tMi5hcnRpY2xlLXBhcmFncmFwaC1ibG9jay0tdHdvLWNvbC1zdHlsZS0yLTEgLmNvbDpmaXJzdC1jaGlsZCB7XG4gICAgd2lkdGg6IDY2LjY2NjY2NjY2NjclO1xuICB9XG4gIC5hcnRpY2xlLXBhcmFncmFwaC1ibG9jay0tY29scy0tMi5hcnRpY2xlLXBhcmFncmFwaC1ibG9jay0tdHdvLWNvbC1zdHlsZS0yLTEgLmNvbDpsYXN0LWNoaWxkIHtcbiAgICB3aWR0aDogMzMuMzMzMzMzMzMzMyU7XG4gIH1cbiAgLmFydGljbGUtcGFyYWdyYXBoLWJsb2NrLS1jb2xzLS0yLmFydGljbGUtcGFyYWdyYXBoLWJsb2NrLS10d28tY29sLXN0eWxlLTItMSAuY29sLS12aWRlbzpsYXN0LWNoaWxkIGlmcmFtZSB7XG4gICAgdG9wOiA1MCUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiA1MCUgIWltcG9ydGFudDtcbiAgICB3aWR0aDogMjAwJSAhaW1wb3J0YW50O1xuICAgIGhlaWdodDogMTAxJSAhaW1wb3J0YW50O1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICB9XG4gIC5hcnRpY2xlLXBhcmFncmFwaC1ibG9jay0tY29scy0tMi5hcnRpY2xlLXBhcmFncmFwaC1ibG9jay0tdHdvLWNvbC1zdHlsZS0yLTEgLmNvbC0taW1hZ2U6bGFzdC1jaGlsZCBpbWcge1xuICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgIGhlaWdodDogMTAwJTtcbiAgfVxuICAuYXJ0aWNsZS1wYXJhZ3JhcGgtYmxvY2stLWNvbHMtLTIuYXJ0aWNsZS1wYXJhZ3JhcGgtYmxvY2stLXR3by1jb2wtc3R5bGUtMS0yIC5jb2w6Zmlyc3QtY2hpbGQge1xuICAgIHdpZHRoOiAzMy4zMzMzMzMzMzMzJTtcbiAgfVxuICAuYXJ0aWNsZS1wYXJhZ3JhcGgtYmxvY2stLWNvbHMtLTIuYXJ0aWNsZS1wYXJhZ3JhcGgtYmxvY2stLXR3by1jb2wtc3R5bGUtMS0yIC5jb2w6bGFzdC1jaGlsZCB7XG4gICAgd2lkdGg6IDY2LjY2NjY2NjY2NjclO1xuICB9XG4gIC5hcnRpY2xlLXBhcmFncmFwaC1ibG9jay0tY29scy0tMi5hcnRpY2xlLXBhcmFncmFwaC1ibG9jay0tdHdvLWNvbC1zdHlsZS0xLTIgLmNvbC0tdmlkZW86Zmlyc3QtY2hpbGQgaWZyYW1lIHtcbiAgICB0b3A6IDUwJSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IDUwJSAhaW1wb3J0YW50O1xuICAgIHdpZHRoOiAyMDAlICFpbXBvcnRhbnQ7XG4gICAgaGVpZ2h0OiAxMDElICFpbXBvcnRhbnQ7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gIH1cbiAgLmFydGljbGUtcGFyYWdyYXBoLWJsb2NrLS1jb2xzLS0yLmFydGljbGUtcGFyYWdyYXBoLWJsb2NrLS10d28tY29sLXN0eWxlLTEtMiAuY29sLS1pbWFnZTpmaXJzdC1jaGlsZCBpbWcge1xuICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgIGhlaWdodDogMTAwJTtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5hcnRpY2xlLXBhcmFncmFwaC1ibG9jay0tY29scy0tMyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuYXJ0aWNsZS1wYXJhZ3JhcGgtYmxvY2stLWNvbHMtLTMgLmNvbCB7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxuICAuYXJ0aWNsZS1wYXJhZ3JhcGgtYmxvY2stLWNvbHMtLTMgLmNvbC0tdmlkZW8gaWZyYW1lIHtcbiAgICB0b3A6IDUwJSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IDUwJSAhaW1wb3J0YW50O1xuICAgIHdpZHRoOiAyMDAlICFpbXBvcnRhbnQ7XG4gICAgaGVpZ2h0OiAxMDElICFpbXBvcnRhbnQ7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAuYXJ0aWNsZS1wYXJhZ3JhcGgtYmxvY2stLWNvbHMtLTQge1xuICAgIGZsZXgtZmxvdzogd3JhcDtcbiAgfVxufVxuLmFydGljbGUtcGFyYWdyYXBoLWJsb2NrLS1jb2xzLS00IC5jb2wge1xuICB3aWR0aDogNTAlO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5hcnRpY2xlLXBhcmFncmFwaC1ibG9jay0tY29scy0tNCAuY29sIHtcbiAgICB3aWR0aDogMjUlO1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmFydGljbGUtcGFyYWdyYXBoLWJsb2NrLS1jb2xzLS01IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5hcnRpY2xlLXBhcmFncmFwaC1ibG9jay0tY29scy0tNSAuY29sIHtcbiAgICB3aWR0aDogMjAlO1xuICB9XG59XG5cbi5zZWN0aW9uLXdyYXBwZXItLXRlbXBsYXRlLTIuc2VjdGlvbi13cmFwcGVyLS1zcGFjZXIge1xuICBwYWRkaW5nLXRvcDogMi4wODMzMzMzMzMzJTtcbn1cbi5zZWN0aW9uLXdyYXBwZXItLXRlbXBsYXRlLTIgLmFydGljbGUtcGFyYWdyYXBoLWJsb2NrLS1jb2xzIHtcbiAgcGFkZGluZy1sZWZ0OiAyLjA4MzMzMzMzMzMlO1xuICBwYWRkaW5nLXJpZ2h0OiAyLjA4MzMzMzMzMzMlO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5zZWN0aW9uLXdyYXBwZXItLXRlbXBsYXRlLTIgLmFydGljbGUtcGFyYWdyYXBoLWJsb2NrLS1jb2xzIC5jb2wge1xuICAgIHBhZGRpbmctbGVmdDogMS4wNDE2NjY2NjY3JTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjA0MTY2NjY2NjclO1xuICB9XG4gIC5zZWN0aW9uLXdyYXBwZXItLXRlbXBsYXRlLTIgLmFydGljbGUtcGFyYWdyYXBoLWJsb2NrLS1jb2xzIC5jb2w6Zmlyc3QtY2hpbGQge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxuICAuc2VjdGlvbi13cmFwcGVyLS10ZW1wbGF0ZS0yIC5hcnRpY2xlLXBhcmFncmFwaC1ibG9jay0tY29scyAuY29sOmxhc3QtY2hpbGQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gIH1cbn1cbi5zZWN0aW9uLXdyYXBwZXItLXRlbXBsYXRlLTMuc2VjdGlvbi13cmFwcGVyLS1zcGFjZXIge1xuICBwYWRkaW5nLXRvcDogNC4xNjY2NjY2NjY3JTtcbn1cbi5zZWN0aW9uLXdyYXBwZXItLXRlbXBsYXRlLTMgLmFydGljbGUtcGFyYWdyYXBoLWJsb2NrLS1jb2xzIHtcbiAgcGFkZGluZy1sZWZ0OiA0LjE2NjY2NjY2NjclO1xuICBwYWRkaW5nLXJpZ2h0OiA0LjE2NjY2NjY2NjclO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5zZWN0aW9uLXdyYXBwZXItLXRlbXBsYXRlLTMgLmFydGljbGUtcGFyYWdyYXBoLWJsb2NrLS1jb2xzIC5jb2wge1xuICAgIHBhZGRpbmctbGVmdDogMi4wODMzMzMzMzMzJTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyLjA4MzMzMzMzMzMlO1xuICB9XG4gIC5zZWN0aW9uLXdyYXBwZXItLXRlbXBsYXRlLTMgLmFydGljbGUtcGFyYWdyYXBoLWJsb2NrLS1jb2xzIC5jb2w6Zmlyc3QtY2hpbGQge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxuICAuc2VjdGlvbi13cmFwcGVyLS10ZW1wbGF0ZS0zIC5hcnRpY2xlLXBhcmFncmFwaC1ibG9jay0tY29scyAuY29sOmxhc3QtY2hpbGQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gIH1cbn1cbi5zZWN0aW9uLXdyYXBwZXItLXRlbXBsYXRlLTQuc2VjdGlvbi13cmFwcGVyLS1zcGFjZXIge1xuICBwYWRkaW5nLXRvcDogOC4zMzMzMzMzMzMzJTtcbn1cbi5zZWN0aW9uLXdyYXBwZXItLXRlbXBsYXRlLTQgLmFydGljbGUtcGFyYWdyYXBoLWJsb2NrLS1jb2xzIHtcbiAgcGFkZGluZy1sZWZ0OiA4LjMzMzMzMzMzMzMlO1xuICBwYWRkaW5nLXJpZ2h0OiA4LjMzMzMzMzMzMzMlO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5zZWN0aW9uLXdyYXBwZXItLXRlbXBsYXRlLTQgLmFydGljbGUtcGFyYWdyYXBoLWJsb2NrLS1jb2xzIC5jb2wge1xuICAgIHBhZGRpbmctbGVmdDogNC4xNjY2NjY2NjY3JTtcbiAgICBwYWRkaW5nLXJpZ2h0OiA0LjE2NjY2NjY2NjclO1xuICB9XG4gIC5zZWN0aW9uLXdyYXBwZXItLXRlbXBsYXRlLTQgLmFydGljbGUtcGFyYWdyYXBoLWJsb2NrLS1jb2xzIC5jb2wtLWltYWdlIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDIuMDgzMzMzMzMzMyU7XG4gICAgcGFkZGluZy1yaWdodDogMi4wODMzMzMzMzMzJTtcbiAgfVxuICAuc2VjdGlvbi13cmFwcGVyLS10ZW1wbGF0ZS00IC5hcnRpY2xlLXBhcmFncmFwaC1ibG9jay0tY29scyAuY29sOmZpcnN0LWNoaWxkIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cbiAgLnNlY3Rpb24td3JhcHBlci0tdGVtcGxhdGUtNCAuYXJ0aWNsZS1wYXJhZ3JhcGgtYmxvY2stLWNvbHMgLmNvbDpsYXN0LWNoaWxkIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICB9XG59XG5cbi5wYXJhZ3JhcGgtYmxvY2sge1xuICBkaXNwbGF5OiBmbGV4O1xufVxuXG4ucGFyYWdyYXBoLWJsb2NrX19sZWZ0Y29sIGg1LFxuLnBhcmFncmFwaC1ibG9ja19fbGVmdGNvbCBoNCxcbi5wYXJhZ3JhcGgtYmxvY2tfX2xlZnRjb2wgaDMsXG4ucGFyYWdyYXBoLWJsb2NrX19sZWZ0Y29sIGgyLFxuLnBhcmFncmFwaC1ibG9ja19fcmlnaHRjb2wgaDUsXG4ucGFyYWdyYXBoLWJsb2NrX19yaWdodGNvbCBoNCxcbi5wYXJhZ3JhcGgtYmxvY2tfX3JpZ2h0Y29sIGgzLFxuLnBhcmFncmFwaC1ibG9ja19fcmlnaHRjb2wgaDIge1xuICBmb250LWZhbWlseTogXCJJbnRlclwiLCBIZWx2ZXRpY2EsIFwiSGVsdmV0aWNhIE5ldWVcIiwgQXJpYWw7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWwpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtbCk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1sZXR0ZXItc3BhY2luZy1sKTtcbiAgbWFyZ2luLWJvdHRvbTogNXB4O1xufVxuLnBhcmFncmFwaC1ibG9ja19fbGVmdGNvbCBoNTpmaXJzdC1jaGlsZCxcbi5wYXJhZ3JhcGgtYmxvY2tfX2xlZnRjb2wgaDQ6Zmlyc3QtY2hpbGQsXG4ucGFyYWdyYXBoLWJsb2NrX19sZWZ0Y29sIGgzOmZpcnN0LWNoaWxkLFxuLnBhcmFncmFwaC1ibG9ja19fbGVmdGNvbCBoMjpmaXJzdC1jaGlsZCxcbi5wYXJhZ3JhcGgtYmxvY2tfX3JpZ2h0Y29sIGg1OmZpcnN0LWNoaWxkLFxuLnBhcmFncmFwaC1ibG9ja19fcmlnaHRjb2wgaDQ6Zmlyc3QtY2hpbGQsXG4ucGFyYWdyYXBoLWJsb2NrX19yaWdodGNvbCBoMzpmaXJzdC1jaGlsZCxcbi5wYXJhZ3JhcGgtYmxvY2tfX3JpZ2h0Y29sIGgyOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cblxuLnBhcmFncmFwaC1ibG9ja19fbGVmdGNvbCBmaWd1cmUge1xuICBtYXJnaW46IDA7XG59XG4ucGFyYWdyYXBoLWJsb2NrX19sZWZ0Y29sIGZpZ3VyZSBmaWdjYXB0aW9uIHtcbiAgbWFyZ2luLXRvcDogMTBweDtcbn1cbi5wYXJhZ3JhcGgtYmxvY2tfX2xlZnRjb2wgZmlndXJlIGZpZ2NhcHRpb24sIC5wYXJhZ3JhcGgtYmxvY2tfX2xlZnRjb2wgZmlndXJlIGZpZ2NhcHRpb24gcCB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXMpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtcyk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1sZXR0ZXItc3BhY2luZy1zKTtcbn1cbi5wYXJhZ3JhcGgtYmxvY2tfX2xlZnRjb2wgZmlndXJlIGZpZ2NhcHRpb24gaSB7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgY29sb3I6IHZhcigtLW1pZGRsZS1ncmV5KTtcbn1cbi5wYXJhZ3JhcGgtYmxvY2tfX2xlZnRjb2wgZmlndXJlIGZpZ2NhcHRpb24gYiB7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgY29sb3I6IHZhcigtLW1pZGRsZS1ncmV5KTtcbn1cbi5zZWN0aW9uLXdyYXBwZXItLWJsYWNrIC5wYXJhZ3JhcGgtYmxvY2tfX2xlZnRjb2wgaDUsXG4uc2VjdGlvbi13cmFwcGVyLS1ibGFjayAucGFyYWdyYXBoLWJsb2NrX19sZWZ0Y29sIGg0LFxuLnNlY3Rpb24td3JhcHBlci0tYmxhY2sgLnBhcmFncmFwaC1ibG9ja19fbGVmdGNvbCBoMyxcbi5zZWN0aW9uLXdyYXBwZXItLWJsYWNrIC5wYXJhZ3JhcGgtYmxvY2tfX2xlZnRjb2wgaDIge1xuICBjb2xvcjogdmFyKC0td2hpdGUpO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAucGFyYWdyYXBoLWJsb2NrX19sZWZ0Y29sIHtcbiAgICB3aWR0aDogdmFyKC0tY29sLTMpO1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1jb2wtMSk7XG4gICAgcGFkZGluZy1yaWdodDogMzBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAuYXJ0aWNsZS1wYXJhZ3JhcGgtYmxvY2stLXBhcmFncmFwaF9jb2xzIC5wYXJhZ3JhcGgtYmxvY2tfX2xlZnRjb2wge1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNlY3Rpb24tbWFyZ2luKTtcbiAgfVxuICAucGFyYWdyYXBoLWJsb2NrX19sZWZ0Y29sLS1udW1iZXJfZmllbGQge1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNlY3Rpb24tbWFyZ2luKTtcbiAgfVxufVxuLnBhcmFncmFwaC1ibG9ja19fbGVmdGNvbCBpbWcge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4ucGFyYWdyYXBoLWJsb2NrX19yaWdodGNvbCBoNSxcbi5wYXJhZ3JhcGgtYmxvY2tfX3JpZ2h0Y29sIGg0LFxuLnBhcmFncmFwaC1ibG9ja19fcmlnaHRjb2wgaDIge1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xufVxuLnBhcmFncmFwaC1ibG9ja19fcmlnaHRjb2wgaDQsXG4ucGFyYWdyYXBoLWJsb2NrX19yaWdodGNvbCBoMyB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLW0pO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtbSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1sZXR0ZXItc3BhY2luZy1tKTtcbn1cbi5wYXJhZ3JhcGgtYmxvY2tfX3JpZ2h0Y29sIGgzIHtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbn1cbi5wYXJhZ3JhcGgtYmxvY2tfX3JpZ2h0Y29sIGg0IHtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIC5wYXJhZ3JhcGgtYmxvY2tfX3JpZ2h0Y29sIHtcbiAgICB3aWR0aDogdmFyKC0tY29sLTcpO1xuICB9XG59XG4ucGFyYWdyYXBoLWJsb2NrX19yaWdodGNvbCA+IHA6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG4ucGFyYWdyYXBoLWJsb2NrX19yaWdodGNvbCBpbWcge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuLnBhcmFncmFwaC1ibG9ja19fcmlnaHRjb2wgLmxhcmdlLW51bWJlcnMtd3JhcHBlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5wYXJhZ3JhcGgtYmxvY2tfX3JpZ2h0Y29sIC5sYXJnZS1udW1iZXJzLXdyYXBwZXIge1xuICAgIG1hcmdpbi1ib3R0b206IC0xNXB4O1xuICB9XG59XG4ucGFyYWdyYXBoLWJsb2NrX19yaWdodGNvbCAubGFyZ2UtbnVtYmVyLXdyYXBwZXIge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgLnBhcmFncmFwaC1ibG9ja19fcmlnaHRjb2wgLmxhcmdlLW51bWJlci13cmFwcGVyIHtcbiAgICB3aWR0aDogNTAlO1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLnBhcmFncmFwaC1ibG9ja19fcmlnaHRjb2wgLmxhcmdlLW51bWJlci13cmFwcGVyIHtcbiAgICBtYXJnaW46IDA7XG4gIH1cbn1cblxuLnBhcmFncmFwaC1ibG9ja19fcmlnaHRjb2wtLWltYWdlIHtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc2VjdGlvbi1tYXJnaW4pO1xufVxuXG4ubGFyZ2UtbnVtYmVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgZm9udC1mYW1pbHk6IFwiY2hhcC1saWdodFwiO1xuICBmb250LXNpemU6IDIzMHB4O1xuICBsaW5lLWhlaWdodDogMjMwcHg7XG4gIGNvbG9yOiB2YXIoLS1taWRkbGUtZ3JleSk7XG4gIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG4gIGxldHRlci1zcGFjaW5nOiAtMTdweDtcbiAgbWFyZ2luOiAwIDAgOHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogLTIwcHg7XG59XG4uaXMtbWFjIC5sYXJnZS1udW1iZXIge1xuICBwb3NpdGlvbjogc3RhdGljO1xuICB0b3A6IGF1dG87XG59XG5AbWVkaWEgKG1heC13aWR0aDogMTAyM3B4KSB7XG4gIC5sYXJnZS1udW1iZXIge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cbn1cbi5iYWNrZ3JvdW5kLXJlZCAubGFyZ2UtbnVtYmVyLCAuc2VjdGlvbi13cmFwcGVyLS1yZWQgLmxhcmdlLW51bWJlciB7XG4gIGNvbG9yOiB2YXIoLS13aGl0ZSk7XG59XG4ubGFyZ2UtbnVtYmVyLS1udW1iZXIge1xuICBmb250LXZhcmlhbnQtbnVtZXJpYzogbGluaW5nLW51bXM7XG59XG4ubGFyZ2UtbnVtYmVyLS1wZXJjZW50IHtcbiAgZm9udC1zaXplOiAxMjBweDtcbiAgbGluZS1oZWlnaHQ6IDE1M3B4O1xuICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xufVxuLmlzLW1hYyAubGFyZ2UtbnVtYmVyLS1wZXJjZW50IHtcbiAgbGluZS1oZWlnaHQ6IDE3NnB4O1xufVxuLmxhcmdlLW51bWJlcl9fY2FwdGlvbiwgLmxhcmdlLW51bWJlcl9fY2FwdGlvbiBwIHtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtcyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1zKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWxldHRlci1zcGFjaW5nLXMpO1xufVxuLmxhcmdlLW51bWJlcl9fY2FwdGlvbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tdG9wOiAtNDVweDtcbn1cbi5sYXJnZS1udW1iZXJfX2NhcHRpb24gaSB7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgY29sb3I6IHZhcigtLW1pZGRsZS1ncmV5KTtcbn1cbi5sYXJnZS1udW1iZXJfX2NhcHRpb24gYiB7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgY29sb3I6IHZhcigtLW1pZGRsZS1ncmV5KTtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAubGFyZ2UtbnVtYmVyIHtcbiAgICBmb250LXNpemU6IDExNXB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxMTVweDtcbiAgICBsZXR0ZXItc3BhY2luZzogLTdweDtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICAubGFyZ2UtbnVtYmVyLS1wZXJjZW50IHtcbiAgICBmb250LXNpemU6IDYwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDc0cHg7XG4gIH1cbiAgLmlzLW1hYyAubGFyZ2UtbnVtYmVyLS1wZXJjZW50IHtcbiAgICBsaW5lLWhlaWdodDogODhweDtcbiAgfVxuICAubGFyZ2UtbnVtYmVyX19jYXB0aW9uIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IC0zMHB4O1xuICAgIHBhZGRpbmctbGVmdDogMTAlO1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXMpO1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1zKTtcbiAgICBsZXR0ZXItc3BhY2luZzogdmFyKC0tbGV0dGVyLXNwYWNpbmctcyk7XG4gIH1cbiAgLmlzLW1hYyAubGFyZ2UtbnVtYmVyX19jYXB0aW9uIHtcbiAgICB0b3A6IC0yNHB4O1xuICB9XG4gIC5sYXJnZS1udW1iZXJfX2NhcHRpb24gYnIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLmxhcmdlLW51bWJlci13cmFwcGVyOmZpcnN0LWNoaWxkIC5sYXJnZS1udW1iZXIge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gIH1cbiAgLmxhcmdlLW51bWJlci13cmFwcGVyOmZpcnN0LWNoaWxkIC5sYXJnZS1udW1iZXJfX2NhcHRpb24ge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMCU7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDM0OXB4KSB7XG4gIC5sYXJnZS1udW1iZXIge1xuICAgIGZvbnQtc2l6ZTogODVweDtcbiAgICBsaW5lLWhlaWdodDogMTAycHg7XG4gIH1cbn1cblxuLmFydGljbGUtbWFpbi5yZWQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGQ0OTI1O1xuICBwYWRkaW5nOiAyMHB4IDA7XG59XG5cbi5pbnRyby1zZWN0aW9uLWNvbnRhaW5lci5yZWQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGQ0OTI1ICFpbXBvcnRhbnQ7XG4gIG1pbi1oZWlnaHQ6IGF1dG87XG59XG5cbi50YWJsZS1wbGFpbl9fY2VsbCB7XG4gIHBhZGRpbmc6IDBweCAzMHB4IDM1cHggMDtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtbSk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1tKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWxldHRlci1zcGFjaW5nLW0pO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICBwYWRkaW5nOiAyMHB4IDIwcHg7XG59XG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLnRhYmxlLXBsYWluX19jZWxsIHtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1zKTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtcyk7XG4gICAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWxldHRlci1zcGFjaW5nLXMpO1xuICB9XG59XG5cbi50YWJsZS1wbGFpbi0tcm93LXNlcGFyYXRvcnMgLnRhYmxlLXBsYWluX19jZWxsIHtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkIHZhcigtLWJsYWNrKTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjlweCkge1xuICAudGFibGUtcGxhaW4tLXJvdy1zZXBhcmF0b3JzIC50YWJsZS1wbGFpbl9fY2VsbDpsYXN0LWNoaWxkIHtcbiAgICBib3JkZXItYm90dG9tOiBub25lO1xuICB9XG59XG4uYmFja2dyb3VuZC1ibGFjayAudGFibGUtcGxhaW4tLXJvdy1zZXBhcmF0b3JzIC50YWJsZS1wbGFpbl9fY2VsbCB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0td2hpdGUpO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC50YWJsZS1wbGFpbi0tcm93LXNlcGFyYXRvcnMgLnRhYmxlLXBsYWluX19jb2w6bnRoLWxhc3QtY2hpbGQoLW4rMikgLnRhYmxlLXBsYWluX19jZWxsOmxhc3QtY2hpbGQoKSB7XG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgfVxufVxuXG4uYXJ0aWNsZS1pbWFnZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4uYXJ0aWNsZS1pbWFnZSBpbWcge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMzhzIGVhc2Utb3V0IDAuMXMsIHRyYW5zZm9ybSAzcyBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKSAwLjFzO1xufVxuLmFydGljbGUtaW1hZ2UgaW1nLmxhenlsb2FkZWQge1xuICBvcGFjaXR5OiAxO1xufVxuLmFydGljbGUtaW1hZ2UgZmlndXJlIHtcbiAgbWFyZ2luOiAwO1xufVxuLmFydGljbGUtaW1hZ2UgZmlndXJlIGZpZ2NhcHRpb24ge1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1zKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXMpO1xuICB3aWR0aDogNjYlO1xuICBtYXJnaW4tdG9wOiAwLjVyZW07XG59XG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmFydGljbGUtaW1hZ2UgZmlndXJlIGZpZ2NhcHRpb24ge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbjogMC41cmVtIDIwcHggMDtcbiAgfVxufVxuXG4uYXJ0aWNsZS1pbWFnZS5hcnRpY2xlLWltYWdlLS1tYXJnaW4tYm90dG9tIHtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc2VjdGlvbi1tYXJnaW4pO1xufVxuLmFydGljbGUtaW1hZ2UuYXJ0aWNsZS1pbWFnZS0tbWFyZ2luLWJvdHRvbSAuYmFja2dyb3VuZDpub3QoLmJhY2tncm91bmQtd2hpdGUpIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAuYXJ0aWNsZS1pbWFnZS5hcnRpY2xlLWltYWdlLS1tYXJnaW4tYm90dG9tIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi5hcnRpY2xlLWltYWdlLWNhbGxvdXQge1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1tKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LW0pO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tbGV0dGVyLXNwYWNpbmctbSk7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY29sb3I6IHZhcigtLXdoaXRlKTtcbiAgdG9wOiAzMHB4O1xuICBsZWZ0OiAzMHB4O1xuICB6LWluZGV4OiAzMDA7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLmFydGljbGUtaW1hZ2UtY2FsbG91dC0tYm90dG9tIHtcbiAgdG9wOiBhdXRvO1xuICBib3R0b206IDMwcHg7XG4gIHRvcDogYXV0bztcbiAgYm90dG9tOiAyNHB4O1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtbSk7XG59XG5cbi5hcnRpY2xlLWltYWdlLS1sZWZ0IHtcbiAgcGFkZGluZy1yaWdodDogY2FsYygoMTAwdncgLSAoMTAwdncgLSAxMDAlKSAtIHZhcigtLXNpdGUtd2lkdGgpKSAvIDIgKyB2YXIoLS1zaXRlLXdpZHRoKSAvIDEyKTtcbn1cbi5hcnRpY2xlLWltYWdlLS1sZWZ0IC5hcnRpY2xlLWltYWdlLWNhbGxvdXQge1xuICBsZWZ0OiBjYWxjKCgxMDB2dyAtICgxMDB2dyAtIDEwMCUpIC0gdmFyKC0tc2l0ZS13aWR0aCkpIC8gMiArIHZhcigtLWNvbC0xKSk7XG4gIHBhZGRpbmctcmlnaHQ6IGNhbGMoKDEwMHZ3IC0gKDEwMHZ3IC0gMTAwJSkgLSB2YXIoLS1zaXRlLXdpZHRoKSkgLyAyICsgdmFyKC0tc2l0ZS13aWR0aCkgLyAxMiArIDMwcHgpO1xufVxuXG4uYXJ0aWNsZS1pbWFnZS0tcmlnaHQge1xuICBwYWRkaW5nLWxlZnQ6IGNhbGMoKDEwMHZ3IC0gKDEwMHZ3IC0gMTAwJSkgLSB2YXIoLS1zaXRlLXdpZHRoKSkgLyAyICsgdmFyKC0tc2l0ZS13aWR0aCkgLyAxMik7XG59XG4uYXJ0aWNsZS1pbWFnZS0tcmlnaHQgLmFydGljbGUtaW1hZ2UtY2FsbG91dCB7XG4gIGxlZnQ6IGNhbGMoKDEwMHZ3IC0gKDEwMHZ3IC0gMTAwJSkgLSB2YXIoLS1zaXRlLXdpZHRoKSkgLyAyICsgdmFyKC0tY29sLTEpICsgMzBweCk7XG59XG5cbi5hcnRpY2xlLWltYWdlLS1jZW50ZXIge1xuICBwYWRkaW5nLWxlZnQ6IGNhbGMoKDEwMHZ3IC0gKDEwMHZ3IC0gMTAwJSkgLSB2YXIoLS1zaXRlLXdpZHRoKSkgLyAyKTtcbiAgcGFkZGluZy1yaWdodDogY2FsYygoMTAwdncgLSAoMTAwdncgLSAxMDAlKSAtIHZhcigtLXNpdGUtd2lkdGgpKSAvIDIpO1xufVxuLmFydGljbGUtaW1hZ2UtLWNlbnRlciAuYXJ0aWNsZS1pbWFnZS1jYWxsb3V0IHtcbiAgcGFkZGluZy1sZWZ0OiBjYWxjKCgxMDB2dyAtICgxMDB2dyAtIDEwMCUpIC0gdmFyKC0tc2l0ZS13aWR0aCkpIC8gMik7XG4gIHBhZGRpbmctcmlnaHQ6IGNhbGMoKDEwMHZ3IC0gKDEwMHZ3IC0gMTAwJSkgLSB2YXIoLS1zaXRlLXdpZHRoKSkgLyAyICsgMzBweCk7XG59XG5cbi5hcnRpY2xlLWltYWdlLS10ZXh0LWNvbHVtbiB7XG4gIHBhZGRpbmctbGVmdDogdmFyKC0tY29sLTMpO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1jb2wtMSk7XG59XG4uYXJ0aWNsZS1pbWFnZS0tdGV4dC1jb2x1bW4gLmFydGljbGUtaW1hZ2UtY2FsbG91dCB7XG4gIGxlZnQ6IGNhbGMoKDEwMHZ3IC0gKDEwMHZ3IC0gMTAwJSkgLSB2YXIoLS1zaXRlLXdpZHRoKSkgLyAyICsgdmFyKC0tY29sLTMpICsgMzBweCk7XG4gIHJpZ2h0OiBjYWxjKDMwcHggKyB2YXIoLS1jb2wtMSkpO1xufVxuXG4uYXJ0aWNsZS1pbWFnZS0tdGV4dC1jb2x1bW4td2lkZSB7XG4gIHBhZGRpbmctbGVmdDogdmFyKC0tY29sLTEpO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1jb2wtMSk7XG59XG4uYXJ0aWNsZS1pbWFnZS0tdGV4dC1jb2x1bW4td2lkZSAuYXJ0aWNsZS1pbWFnZS1jYWxsb3V0IHtcbiAgbGVmdDogY2FsYygoMTAwdncgLSAoMTAwdncgLSAxMDAlKSAtIHZhcigtLXNpdGUtd2lkdGgpKSAvIDIgKyB2YXIoLS1jb2wtMSkgKyAzMHB4KTtcbiAgcmlnaHQ6IGNhbGMoMzBweCArIHZhcigtLWNvbC0xKSk7XG59XG5cbi5hcnRpY2xlLWltYWdlLS1zbGltLW1hcmdpbiB7XG4gIHBhZGRpbmctbGVmdDogMzBweDtcbiAgcGFkZGluZy1yaWdodDogMzBweDtcbn1cbi5hcnRpY2xlLWltYWdlLS1zbGltLW1hcmdpbiAuYXJ0aWNsZS1pbWFnZS1jYWxsb3V0IHtcbiAgbGVmdDogNjBweDtcbn1cblxuLmFydGljbGUtaW1hZ2UtLW1hcmdpbiB7XG4gIHBhZGRpbmctbGVmdDogdmFyKC0tY29sLTEpO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1jb2wtMSk7XG59XG4uYXJ0aWNsZS1pbWFnZS0tbWFyZ2luIC5hcnRpY2xlLWltYWdlLWNhbGxvdXQge1xuICBsZWZ0OiBjYWxjKHZhcigtLWNvbC0xKSArIDMwcHgpO1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmFydGljbGUtaW1hZ2UgLmFydGljbGUtaW1hZ2UtY2FsbG91dCB7XG4gICAgbGVmdDogY2FsYygoMTAwdncgLSAoMTAwdncgLSAxMDAlKSAtIHZhcigtLXNpdGUtd2lkdGgpKSAvIDIgKyAyMHB4KTtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1zKTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtcyk7XG4gICAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWxldHRlci1zcGFjaW5nLXMpO1xuICB9XG59XG4uYXJ0aWNsZS1zbGlkZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHdpZHRoOiAxMDAlO1xufVxuLmFydGljbGUtc2xpZGUuYWx0IHtcbiAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xufVxuLmFydGljbGUtc2xpZGVfX3RleHQge1xuICBtYXJnaW4tbGVmdDogdmFyKC0tY29sLTEpO1xuICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xuICB3aWR0aDogdmFyKC0tY29sLTMpO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4uYXJ0aWNsZS1zbGlkZV9fdGV4dCBoMiB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDMycHg7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLW0pO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtbSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1sZXR0ZXItc3BhY2luZy1tKTtcbn1cbi5hcnRpY2xlLXNsaWRlX190ZXh0IHAge1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1zKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXMpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tbGV0dGVyLXNwYWNpbmctcyk7XG59XG4uYXJ0aWNsZS1zbGlkZV9fcC0tYm90dG9tIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG4uYmFja2dyb3VuZC1jYXBwdWNjaW5vIC5hcnRpY2xlLXNsaWRlX19wLS1ib3R0b20gYSB7XG4gIGNvbG9yOiB2YXIoLS1ibGFjayk7XG59XG4uYXJ0aWNsZS1zbGlkZV9faW1hZ2Uge1xuICB3aWR0aDogdmFyKC0tY29sLTgpO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgcGFkZGluZy1ib3R0b206IDM3LjUlO1xufVxuLmFydGljbGUtc2xpZGVfX2ltYWdlLW1vYmlsZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgbWFyZ2luLXRvcDogLTE1cHg7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMDIzcHgpIHtcbiAgLmFydGljbGUtc2xpZGUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IDAgMzBweDtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDEwMjNweCkgYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5hcnRpY2xlLXNsaWRlIHtcbiAgICBwYWRkaW5nOiAwIDEuMjVyZW07XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiAxMDIzcHgpIHtcbiAgLmFydGljbGUtc2xpZGUuYWx0IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICB9XG4gIC5hcnRpY2xlLXNsaWRlX190ZXh0IHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmctcmlnaHQ6IDBweDtcbiAgfVxuICAuYXJ0aWNsZS1zbGlkZV9fcC0tYm90dG9tIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuICAuYXJ0aWNsZS1zbGlkZV9faW1hZ2Uge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLmZsaWNraXR5LXBhZ2UtZG90cyB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJvdHRvbTogLTE1cHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG4gIC5mbGlja2l0eS1wYWdlLWRvdHMgLmRvdCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ3JheSk7XG4gICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiAxMDIzcHgpIHtcbiAgLmFydGljbGUtc2xpZGVfX2ltYWdlLW1vYmlsZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIC5hcnRpY2xlLXNsaWRlX19pbWFnZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuLnZpbWVvLXBsYXllciA+IGRpdiB7XG4gIHBvc2l0aW9uOiBzdGF0aWMgIWltcG9ydGFudDtcbn1cblxuLmNvbnRlbnQtZ3JpZCB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWV4dGVuc2lvbi1jb250ZW50LWdyaWQpO1xufVxuXG4ud3JhcHBlci1ncmlkLWZpbHRlciB7XG4gIHdpZHRoOiAxMDAlO1xuICBwb3NpdGlvbjogc3RpY2t5O1xuICB0b3A6IC0xcHg7XG4gIHotaW5kZXg6IDMwMDtcbn1cblxuLmdyaWQtZmlsdGVyLWNvbnRhaW5lciB7XG4gIG1heC13aWR0aDogdmFyKC0tc2l0ZS13aWR0aCk7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuXG4uZ3JpZC1maWx0ZXJfX2xpbmUtY29udGFpbmVyIHtcbiAgcGFkZGluZzogMzJweCAxMnJlbSAzMnB4IDQwcHg7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNjYpO1xuICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoOHB4KTtcbiAgZm9udC1zaXplOiAyLjE4NzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBsZXR0ZXItc3BhY2luZzogMTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xufVxuLmdyaWQtZmlsdGVyX19saW5lLWNvbnRhaW5lciBhIHtcbiAgcGFkZGluZy1sZWZ0OiAwZXg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZGlzcGxheTogaW5saW5lO1xuICBjb2xvcjogdmFyKC0tbWlkZGxlLWdyZXkpO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5AbWVkaWEgKGhvdmVyOiBob3Zlcikge1xuICAuZ3JpZC1maWx0ZXJfX2xpbmUtY29udGFpbmVyIGE6aG92ZXIge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB9XG59XG4uZ3JpZC1maWx0ZXJfX2xpbmUtY29udGFpbmVyIGEuYWN0aXZlIHtcbiAgY29sb3I6IHZhcigtLXdoaXRlKTtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiAxMjc5cHgpIHtcbiAgLmdyaWQtZmlsdGVyX19saW5lLWNvbnRhaW5lciB7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtbSk7XG4gICAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWxldHRlci1zcGFjaW5nLW0pO1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogMzUwcHgpIHtcbiAgLmdyaWQtZmlsdGVyX19saW5lLWNvbnRhaW5lciB7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtbSk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LW0pO1xuICAgIGxldHRlci1zcGFjaW5nOiB2YXIoLS1sZXR0ZXItc3BhY2luZy1tKTtcbiAgfVxufVxuXG4uZ3JpZC1maWx0ZXItY29udGFpbmVyLnN0aWNreSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbn1cblxuLmdyaWQtZmlsdGVyX19zZWxlY3QtY29udGFpbmVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmdyaWQtdG9nZ2xlIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBib3R0b206IDBweDtcbiAgbGVmdDogM3B4O1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1zKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWxldHRlci1zcGFjaW5nLXMpO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5yZWxhdGVkLWFydGljbGVzLWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LWZhbWlseTogXCJJbnRlclwiLCBIZWx2ZXRpY2EsIFwiSGVsdmV0aWNhIE5ldWVcIiwgQXJpYWw7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWwpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtbCk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1sZXR0ZXItc3BhY2luZy1sKTtcbn1cbi5yZWxhdGVkLWFydGljbGVzLWNvbnRhaW5lci0taGVhZGluZyB7XG4gIGhlaWdodDogMTA2cHg7XG4gIHBhZGRpbmctdG9wOiA0MHB4O1xuICBwYWRkaW5nOiA0MHB4IDE4cHg7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5AbWVkaWEgKG1heC13aWR0aDogMTAyM3B4KSB7XG4gIC5yZWxhdGVkLWFydGljbGVzLWNvbnRhaW5lci0taGVhZGluZyB7XG4gICAgcGFkZGluZzogMThweCAyMHB4IDE4cHg7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG59XG5cbi5zZWN0aW9uLXdyYXBwZXItLXJlbGF0ZWQtYXJ0aWNsZXMtaGVhZGVyIC5yZWxhdGVkLWFydGljbGVzLWNvbnRhaW5lciB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoLS1jb2wtMSk7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuc2VjdGlvbi13cmFwcGVyLS1yZWxhdGVkLWFydGljbGVzOm5vdCguZG9udC1oaWRlLWxhc3QtYXJ0aWNsZSkgLmZsb3ctYmxvY2s6bnRoLWNoaWxkKDQpIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG4uc2VjdGlvbi13cmFwcGVyLS1yZWxhdGVkLWFydGljbGVzIC5mbG93LWJsb2NrLmFjdGl2ZTpudGgtY2hpbGQoN24rMykgLmZsb3ctYmxvY2stYmctLXNxdWFyZSxcbi5zZWN0aW9uLXdyYXBwZXItLXJlbGF0ZWQtYXJ0aWNsZXMgLmZsb3ctYmxvY2sgLmZsb3ctYmxvY2stYmcge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAuc2VjdGlvbi13cmFwcGVyLS1yZWxhdGVkLWFydGljbGVzIC5mbG93LWJsb2NrOm50aC1jaGlsZCg0KSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB9XG59XG5cbi5mbG93LWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgbWF4LXdpZHRoOiB2YXIoLS1zaXRlLXdpZHRoKTtcbiAgbWFyZ2luOiAwIGF1dG87XG59XG5cbi5mbG93LWJsb2NrX192aWRlby1jb250YWluZXIge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IDA7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29sLXNpemUtdHdvLWNvbCAuZmxvdy1ibG9jayB7XG4gICAgd2lkdGg6IDUwJSAhaW1wb3J0YW50O1xuICB9XG4gIC5jb2wtc2l6ZS10d28tY29sIC5mbG93LWJsb2NrLmFjdGl2ZSAuZHVtbXkge1xuICAgIG1hcmdpbi10b3A6IDEwMCUgIWltcG9ydGFudDtcbiAgfVxuICAuY29sLXNpemUtdGhyZWUtY29sIC5mbG93LWJsb2NrIHtcbiAgICB3aWR0aDogMzMuMzMzJSAhaW1wb3J0YW50O1xuICB9XG4gIC5jb2wtc2l6ZS10aHJlZS1jb2wgLmZsb3ctYmxvY2suYWN0aXZlIC5kdW1teSB7XG4gICAgbWFyZ2luLXRvcDogMTAwJSAhaW1wb3J0YW50O1xuICB9XG59XG4uZmxvdy1ibG9jay1iZyB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zOHMgZWFzZS1vdXQgMC4xcywgdHJhbnNmb3JtIDNzIGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpIDAuMXM7XG59XG5cbi5mbG93LWJsb2NrLWJnLS1yZWN0YW5nbGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uZmxvdy1ibG9jay1oMiB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAlKTtcbiAgb3BhY2l0eTogMDtcbiAgei1pbmRleDogNTA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMXMgZWFzZS1vdXQgMC41cywgdHJhbnNmb3JtIDFzIGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpIDAuNXM7XG59XG4uaW1hZ2UtbGF6eWxvYWRlZCAuZmxvdy1ibG9jay1oMiB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwJSk7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5mbG93LWJsb2NrLWJnLmxhenlsb2FkZWQge1xuICBvcGFjaXR5OiAxO1xufVxuXG4uZmxvdy1ibG9jay1jYXRlZ29yeSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4uZmxvdy1ibG9jay1jYXRlZ29yeS5hY3RpdmUge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi5mbG93LWJsb2NrLWNhdGVnb3J5X19wYWdlIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgaGVpZ2h0OiAwO1xufVxuLmZsb3ctYmxvY2stY2F0ZWdvcnlfX3BhZ2UuYWN0aXZlIHtcbiAgZGlzcGxheTogZmxleDtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4uZmxvdy1ibG9jay1oMiB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWwpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtbCk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1sZXR0ZXItc3BhY2luZy1sKTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgY29sb3I6ICNmZmY7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiA0MHB4O1xuICBtYXJnaW46IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgcmdiYSgwLCAwLCAwLCAwKSwgcmdiYSgwLCAwLCAwLCAwKSk7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGxldHRlci1zcGFjaW5nOiAtMC4wMjVlbTtcbn1cbi5zaGFkb3ctMSAuZmxvdy1ibG9jay1oMiB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHJnYmEoMCwgMCwgMCwgMC4xKSwgcmdiYSgwLCAwLCAwLCAwKSk7XG59XG4uc2hhZG93LTIgLmZsb3ctYmxvY2staDIge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCByZ2JhKDAsIDAsIDAsIDAuMiksIHJnYmEoMCwgMCwgMCwgMCkpO1xufVxuLnNoYWRvdy0zIC5mbG93LWJsb2NrLWgyIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgcmdiYSgwLCAwLCAwLCAwLjMpLCByZ2JhKDAsIDAsIDAsIDApKTtcbn1cbi5zaGFkb3ctNCAuZmxvdy1ibG9jay1oMiB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHJnYmEoMCwgMCwgMCwgMC40KSwgcmdiYSgwLCAwLCAwLCAwKSk7XG59XG4uc2hhZG93LTUgLmZsb3ctYmxvY2staDIge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCByZ2JhKDAsIDAsIDAsIDAuNSksIHJnYmEoMCwgMCwgMCwgMCkpO1xufVxuLmZsb3ctYmxvY2stLWJvdHRvbS5zaGFkb3ctMSAuZmxvdy1ibG9jay1oMiB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHJnYmEoMCwgMCwgMCwgMCksIHJnYmEoMCwgMCwgMCwgMC4xKSk7XG59XG4uZmxvdy1ibG9jay0tYm90dG9tLnNoYWRvdy0yIC5mbG93LWJsb2NrLWgyIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgcmdiYSgwLCAwLCAwLCAwKSwgcmdiYSgwLCAwLCAwLCAwLjIpKTtcbn1cbi5mbG93LWJsb2NrLS1ib3R0b20uc2hhZG93LTMgLmZsb3ctYmxvY2staDIge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCByZ2JhKDAsIDAsIDAsIDApLCByZ2JhKDAsIDAsIDAsIDAuMykpO1xufVxuLmZsb3ctYmxvY2stLWJvdHRvbS5zaGFkb3ctNCAuZmxvdy1ibG9jay1oMiB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHJnYmEoMCwgMCwgMCwgMCksIHJnYmEoMCwgMCwgMCwgMC40KSk7XG59XG4uZmxvdy1ibG9jay0tYm90dG9tLnNoYWRvdy01IC5mbG93LWJsb2NrLWgyIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgcmdiYSgwLCAwLCAwLCAwKSwgcmdiYSgwLCAwLCAwLCAwLjUpKTtcbn1cbi5mbG93LWJsb2NrLS1udWxsIC5mbG93LWJsb2NrLWgyIHtcbiAgdG9wOiBhdXRvO1xuICBib3R0b206IDA7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHJnYmEoMCwgMCwgMCwgMCksIHJnYmEoMCwgMCwgMCwgMCkpO1xufVxuLmZsb3ctYmxvY2stLWJvdHRvbSAuZmxvdy1ibG9jay1oMiB7XG4gIHRvcDogYXV0bztcbiAgYm90dG9tOiAwO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCByZ2JhKDAsIDAsIDAsIDApLCByZ2JhKDAsIDAsIDAsIDApKTtcbn1cblxuLmZsb3ctYmxvY2suYWN0aXZlIHtcbiAgb3BhY2l0eTogMTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB0cmFuc2l0aW9uLWRlbGF5OiBvcGFjaXR5IDAuNnM7XG4gIHdpZHRoOiAzMy4zMyU7XG59XG4uZmxvdy1ibG9jay5hY3RpdmUgLmR1bW15IHtcbiAgbWFyZ2luLXRvcDogNTAlO1xuICBtYXJnaW4tdG9wOiAxMDAlO1xufVxuLmZsb3ctYmxvY2suYWN0aXZlIHtcbiAgd2lkdGg6IDEwMCU7XG59XG4uZmxvdy1ibG9jay5hY3RpdmUgLmZsb3ctYmxvY2tfX3ZpZGVvLWNvbnRhaW5lciA+IGRpdiB7XG4gIHBhZGRpbmc6IDEwMCUgMCAwIDAgIWltcG9ydGFudDtcbn1cbi5mbG93LWJsb2NrLmFjdGl2ZSAuZmxvdy1ibG9ja19fdmlkZW8tY29udGFpbmVyID4gZGl2ID4gaWZyYW1lIHtcbiAgd2lkdGg6IDE4MCUgIWltcG9ydGFudDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpICFpbXBvcnRhbnQ7XG4gIGxlZnQ6IDUwJSAhaW1wb3J0YW50O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5mbG93LWJsb2NrLmFjdGl2ZSB7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxuICAuZmxvdy1ibG9jay5hY3RpdmU6bnRoLWNoaWxkKDNuKzEpIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAuZmxvdy1ibG9jay5hY3RpdmU6bnRoLWNoaWxkKDNuKzEpIC5mbG93LWJsb2NrLWJnLS1zcXVhcmUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLmZsb3ctYmxvY2suYWN0aXZlOm50aC1jaGlsZCgzbisxKSAuZmxvdy1ibG9jay1iZy0tcmVjdGFuZ2xlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICAuZmxvdy1ibG9jay5hY3RpdmU6bnRoLWNoaWxkKDNuKzEpIC5kdW1teSB7XG4gICAgbWFyZ2luLXRvcDogNTAlO1xuICB9XG59XG5cbi5sb2FkLW1vcmUtY29udGFpbmVyIHtcbiAgbWF4LXdpZHRoOiB2YXIoLS1zaXRlLXdpZHRoKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbG9hZC1tb3JlLWJhY2tncm91bmQpO1xuICBtYXJnaW46IDAgYXV0bztcbiAgaGVpZ2h0OiAxMDBweDtcbiAgZm9udC1mYW1pbHk6IFwiSW50ZXJcIiwgSGVsdmV0aWNhLCBcIkhlbHZldGljYSBOZXVlXCIsIEFyaWFsO1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1sKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWwpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tbGV0dGVyLXNwYWNpbmctbCk7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuNHM7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG59XG5AbWVkaWEgKGhvdmVyOiBob3Zlcikge1xuICAubG9hZC1tb3JlLWNvbnRhaW5lcjpob3ZlciB7XG4gICAgY29sb3I6ICM2NjY7XG4gIH1cbn1cblxuLmxvYWQtbW9yZS1idXR0b24ge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBhZGRpbmctdG9wOiAzMHB4O1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTAyM3B4KSB7XG4gIC5ncmlkLWZpbHRlcl9fbGluZS1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG4gIC5ncmlkLWZpbHRlcl9fc2VsZWN0LWNvbnRhaW5lciB7XG4gICAgcGFkZGluZzogMThweCAyMHB4O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmb250LWZhbWlseTogXCJJbnRlclwiLCBIZWx2ZXRpY2EsIFwiSGVsdmV0aWNhIE5ldWVcIiwgQXJpYWw7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtbSk7XG4gICAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWxldHRlci1zcGFjaW5nLW0pO1xuICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgcG9zaXRpb246IC13ZWJraXQtc3RpY2t5O1xuICAgIHRvcDogMDtcbiAgICB6LWluZGV4OiAzMDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjYpO1xuICAgIGJhY2tkcm9wLWZpbHRlcjogYmx1cig4cHgpO1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogMTAyM3B4KSBhbmQgKG1heC13aWR0aDogMzQ5cHgpIHtcbiAgLmdyaWQtZmlsdGVyX19zZWxlY3QtY29udGFpbmVyIHtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1tKTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtbSk7XG4gICAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWxldHRlci1zcGFjaW5nLW0pO1xuICAgIGhlaWdodDogNzBweDtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDEwMjNweCkgYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5ncmlkLWZpbHRlcl9fc2VsZWN0LWNvbnRhaW5lciB7XG4gICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogMTAyM3B4KSBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIC5ncmlkLWZpbHRlcl9fc2VsZWN0LWNvbnRhaW5lciB7XG4gICAgcGFkZGluZy1sZWZ0OiA0MHB4O1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogMTAyM3B4KSB7XG4gIC5ncmlkLWZpbHRlcl9fc2VsZWN0IHtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGJvcmRlcjogMDtcbiAgICBmb250LWZhbWlseTogXCJJbnRlclwiLCBIZWx2ZXRpY2EsIFwiSGVsdmV0aWNhIE5ldWVcIiwgQXJpYWw7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtbSk7XG4gICAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWxldHRlci1zcGFjaW5nLW0pO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBjb2xvcjogdmFyKC0td2hpdGUpO1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogMTAyM3B4KSBhbmQgKG1heC13aWR0aDogMzQ5cHgpIHtcbiAgLmdyaWQtZmlsdGVyX19zZWxlY3Qge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLW0pO1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1tKTtcbiAgICBsZXR0ZXItc3BhY2luZzogdmFyKC0tbGV0dGVyLXNwYWNpbmctbSk7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiAxMDIzcHgpIHtcbiAgLmdyaWQtZmlsdGVyX190ZXh0X19wcmVmaXgge1xuICAgIGNvbG9yOiB2YXIoLS1taWRkbGUtZ3JleSk7XG4gIH1cbiAgLndyYXBwZXIuYmx1ciAuZ3JpZC1maWx0ZXJfX3RleHQge1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB9XG4gIC5ncmlkLWZpbHRlcl9fb3B0aW9uIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICBib3JkZXI6IDA7XG4gICAgY29sb3I6IHZhcigtLW1pZGRsZS1ncmV5KTtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAuZmxvdy1ibG9jayB7XG4gICAgcGFkZGluZzogMHB4O1xuICB9XG4gIC5mbG93LWJsb2NrLWgyIHtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1zKTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtcyk7XG4gICAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWxldHRlci1zcGFjaW5nLXMpO1xuICAgIHBhZGRpbmc6IDMwcHg7XG4gIH1cbiAgLmFydGljbGUgLmZsb3ctY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICAuYXJ0aWNsZSAuZmxvdy1ibG9jay0tMS0zIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmbGV4LWdyb3c6IDM7XG4gICAgbWFyZ2luLWJvdHRvbTogLTMwcHg7XG4gICAgYm9yZGVyOiAzMHB4IHNvbGlkIGJsYWNrO1xuICB9XG4gIC5hcnRpY2xlIC5mbG93LWJsb2NrLWgyIHtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1tKTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtbSk7XG4gICAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWxldHRlci1zcGFjaW5nLW0pO1xuICB9XG4gIC5yZWxhdGVkLWFydGljbGVzLWNvbnRhaW5lciB7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtbSk7XG4gICAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWxldHRlci1zcGFjaW5nLW0pO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgY29sb3I6IGJsYWNrO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICB9XG4gIC5zZWN0aW9uLXdyYXBwZXItLXJlbGF0ZWQtYXJ0aWNsZXMtaGVhZGVyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICB9XG4gIC5zZWN0aW9uLXdyYXBwZXItLXJlbGF0ZWQtYXJ0aWNsZXMtaGVhZGVyIC5yZWxhdGVkLWFydGljbGVzLWNvbnRhaW5lciB7XG4gICAgbWFyZ2luLWxlZnQ6IDEuMjVyZW07XG4gIH1cbiAgLmxvYWQtbW9yZS1jb250YWluZXIge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLW0pO1xuICAgIGxldHRlci1zcGFjaW5nOiB2YXIoLS1sZXR0ZXItc3BhY2luZy1tKTtcbiAgfVxufVxuLmhpZGRlbl90bXBfc2VsZWN0IHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5mbG93LWJsb2NrLWgyIHtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1zKTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtcyk7XG4gICAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWxldHRlci1zcGFjaW5nLXMpO1xuICAgIHBhZGRpbmc6IDIwcHg7XG4gIH1cbiAgLmxvYWQtbW9yZS1jb250YWluZXIge1xuICAgIGhlaWdodDogNzVweDtcbiAgfVxuICAubG9hZC1tb3JlLWJ1dHRvbiB7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gICAgbGluZS1oZWlnaHQ6IDc1cHg7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtbSk7XG4gICAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWxldHRlci1zcGFjaW5nLW0pO1xuICB9XG59XG4uY29udGVudC1ncmlkLS1waGMgLmZsb3ctYmxvY2ssXG4uY29udGVudC1ncmlkLS1waGMgLmZsb3ctYmxvY2s6bnRoLWNoaWxkKDNuKzEpIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbnRlbnQtZ3JpZC0tcGhjIC5mbG93LWJsb2NrLWNhdGVnb3J5LS1ldmVyeXRoaW5nIC5mbG93LWJsb2NrLFxuICAuY29udGVudC1ncmlkLS1waGMgLmZsb3ctYmxvY2stY2F0ZWdvcnktLWV2ZXJ5dGhpbmcgLmZsb3ctYmxvY2s6bnRoLWNoaWxkKDNuKzEpIHtcbiAgICB3aWR0aDogNTAlO1xuICB9XG4gIC5jb250ZW50LWdyaWQtLXBoYyAuZmxvdy1ibG9jay1jYXRlZ29yeS0tZXZlcnl0aGluZyAuZmxvdy1ibG9jayAuZmxvdy1ibG9jay1iZy0tc3F1YXJlLFxuICAuY29udGVudC1ncmlkLS1waGMgLmZsb3ctYmxvY2stY2F0ZWdvcnktLWV2ZXJ5dGhpbmcgLmZsb3ctYmxvY2s6bnRoLWNoaWxkKDNuKzEpIC5mbG93LWJsb2NrLWJnLS1zcXVhcmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG4gIC5jb250ZW50LWdyaWQtLXBoYyAuZmxvdy1ibG9jay1jYXRlZ29yeS0tZXZlcnl0aGluZyAuZmxvdy1ibG9jayAuZmxvdy1ibG9jay1iZy0tcmVjdGFuZ2xlLFxuICAuY29udGVudC1ncmlkLS1waGMgLmZsb3ctYmxvY2stY2F0ZWdvcnktLWV2ZXJ5dGhpbmcgLmZsb3ctYmxvY2s6bnRoLWNoaWxkKDNuKzEpIC5mbG93LWJsb2NrLWJnLS1yZWN0YW5nbGUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLmNvbnRlbnQtZ3JpZC0tcGhjIC5mbG93LWJsb2NrLWNhdGVnb3J5LS1ldmVyeXRoaW5nIC5mbG93LWJsb2NrIC5kdW1teSxcbiAgLmNvbnRlbnQtZ3JpZC0tcGhjIC5mbG93LWJsb2NrLWNhdGVnb3J5LS1ldmVyeXRoaW5nIC5mbG93LWJsb2NrOm50aC1jaGlsZCgzbisxKSAuZHVtbXkge1xuICAgIG1hcmdpbi10b3A6IDEwMCU7XG4gIH1cbiAgLmNvbnRlbnQtZ3JpZC0tcGhjIC5mbG93LWJsb2NrLWNhdGVnb3J5Om5vdCguZmxvdy1ibG9jay1jYXRlZ29yeS0tZXZlcnl0aGluZykgLmZsb3ctYmxvY2ssXG4gIC5jb250ZW50LWdyaWQtLXBoYyAuZmxvdy1ibG9jay1jYXRlZ29yeTpub3QoLmZsb3ctYmxvY2stY2F0ZWdvcnktLWV2ZXJ5dGhpbmcpIC5mbG93LWJsb2NrOm50aC1jaGlsZCgzbisxKSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgLmNvbnRlbnQtZ3JpZC0tcGhjIC5mbG93LWJsb2NrLWNhdGVnb3J5Om5vdCguZmxvdy1ibG9jay1jYXRlZ29yeS0tZXZlcnl0aGluZykgLmZsb3ctYmxvY2sgLmZsb3ctYmxvY2stYmctLXNxdWFyZSxcbiAgLmNvbnRlbnQtZ3JpZC0tcGhjIC5mbG93LWJsb2NrLWNhdGVnb3J5Om5vdCguZmxvdy1ibG9jay1jYXRlZ29yeS0tZXZlcnl0aGluZykgLmZsb3ctYmxvY2s6bnRoLWNoaWxkKDNuKzEpIC5mbG93LWJsb2NrLWJnLS1zcXVhcmUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLmNvbnRlbnQtZ3JpZC0tcGhjIC5mbG93LWJsb2NrLWNhdGVnb3J5Om5vdCguZmxvdy1ibG9jay1jYXRlZ29yeS0tZXZlcnl0aGluZykgLmZsb3ctYmxvY2sgLmZsb3ctYmxvY2stYmctLXJlY3RhbmdsZSxcbiAgLmNvbnRlbnQtZ3JpZC0tcGhjIC5mbG93LWJsb2NrLWNhdGVnb3J5Om5vdCguZmxvdy1ibG9jay1jYXRlZ29yeS0tZXZlcnl0aGluZykgLmZsb3ctYmxvY2s6bnRoLWNoaWxkKDNuKzEpIC5mbG93LWJsb2NrLWJnLS1yZWN0YW5nbGUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG4gIC5jb250ZW50LWdyaWQtLXBoYyAuZmxvdy1ibG9jay1jYXRlZ29yeTpub3QoLmZsb3ctYmxvY2stY2F0ZWdvcnktLWV2ZXJ5dGhpbmcpIC5mbG93LWJsb2NrIC5kdW1teSxcbiAgLmNvbnRlbnQtZ3JpZC0tcGhjIC5mbG93LWJsb2NrLWNhdGVnb3J5Om5vdCguZmxvdy1ibG9jay1jYXRlZ29yeS0tZXZlcnl0aGluZykgLmZsb3ctYmxvY2s6bnRoLWNoaWxkKDNuKzEpIC5kdW1teSB7XG4gICAgbWFyZ2luLXRvcDogNTAlO1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmNvbnRlbnQtZ3JpZC0tcGhjIC5mbG93LWJsb2NrLWNhdGVnb3J5LS1ldmVyeXRoaW5nIC5mbG93LWJsb2NrIC5mbG93LWJsb2NrLWJnLS1zcXVhcmUsXG4gIC5jb250ZW50LWdyaWQtLXBoYyAuZmxvdy1ibG9jay1jYXRlZ29yeS0tZXZlcnl0aGluZyAuZmxvdy1ibG9jazpudGgtY2hpbGQoM24rMSkgLmZsb3ctYmxvY2stYmctLXNxdWFyZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAuY29udGVudC1ncmlkLS1waGMgLmZsb3ctYmxvY2stY2F0ZWdvcnktLWV2ZXJ5dGhpbmcgLmZsb3ctYmxvY2sgLmZsb3ctYmxvY2stYmctLXJlY3RhbmdsZSxcbiAgLmNvbnRlbnQtZ3JpZC0tcGhjIC5mbG93LWJsb2NrLWNhdGVnb3J5LS1ldmVyeXRoaW5nIC5mbG93LWJsb2NrOm50aC1jaGlsZCgzbisxKSAuZmxvdy1ibG9jay1iZy0tcmVjdGFuZ2xlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICAuY29udGVudC1ncmlkLS1waGMgLmZsb3ctYmxvY2stY2F0ZWdvcnktLWV2ZXJ5dGhpbmcgLmZsb3ctYmxvY2sgLmR1bW15LFxuICAuY29udGVudC1ncmlkLS1waGMgLmZsb3ctYmxvY2stY2F0ZWdvcnktLWV2ZXJ5dGhpbmcgLmZsb3ctYmxvY2s6bnRoLWNoaWxkKDNuKzEpIC5kdW1teSB7XG4gICAgbWFyZ2luLXRvcDogNTAlO1xuICB9XG4gIC5jb250ZW50LWdyaWQtLXBoYyAuZmxvdy1ibG9jay1jYXRlZ29yeTpub3QoLmZsb3ctYmxvY2stY2F0ZWdvcnktLWV2ZXJ5dGhpbmcpIC5mbG93LWJsb2NrIC5mbG93LWJsb2NrLWJnLS1zcXVhcmUsXG4gIC5jb250ZW50LWdyaWQtLXBoYyAuZmxvdy1ibG9jay1jYXRlZ29yeTpub3QoLmZsb3ctYmxvY2stY2F0ZWdvcnktLWV2ZXJ5dGhpbmcpIC5mbG93LWJsb2NrOm50aC1jaGlsZCgzbisxKSAuZmxvdy1ibG9jay1iZy0tc3F1YXJlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICAuY29udGVudC1ncmlkLS1waGMgLmZsb3ctYmxvY2stY2F0ZWdvcnk6bm90KC5mbG93LWJsb2NrLWNhdGVnb3J5LS1ldmVyeXRoaW5nKSAuZmxvdy1ibG9jayAuZmxvdy1ibG9jay1iZy0tcmVjdGFuZ2xlLFxuICAuY29udGVudC1ncmlkLS1waGMgLmZsb3ctYmxvY2stY2F0ZWdvcnk6bm90KC5mbG93LWJsb2NrLWNhdGVnb3J5LS1ldmVyeXRoaW5nKSAuZmxvdy1ibG9jazpudGgtY2hpbGQoM24rMSkgLmZsb3ctYmxvY2stYmctLXJlY3RhbmdsZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAuY29udGVudC1ncmlkLS1waGMgLmZsb3ctYmxvY2stY2F0ZWdvcnk6bm90KC5mbG93LWJsb2NrLWNhdGVnb3J5LS1ldmVyeXRoaW5nKSAuZmxvdy1ibG9jayAuZHVtbXksXG4gIC5jb250ZW50LWdyaWQtLXBoYyAuZmxvdy1ibG9jay1jYXRlZ29yeTpub3QoLmZsb3ctYmxvY2stY2F0ZWdvcnktLWV2ZXJ5dGhpbmcpIC5mbG93LWJsb2NrOm50aC1jaGlsZCgzbisxKSAuZHVtbXkge1xuICAgIG1hcmdpbi10b3A6IDEwMCU7XG4gIH1cbn1cbi5jb250ZW50LWdyaWQtLXBoYyAuZmxvdy1ibG9jay1oMiB7XG4gIHBhZGRpbmc6IDEuMjVyZW07XG59XG5cbi53cmFwcGVyLWhlcm8tc2xpZGVzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZXh0ZW5zaW9uLWhvbWUtc2xpZGVzKTtcbn1cblxuLmhlcm8tc2xpZGVzIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW46IDAgYXV0bztcbiAgbWF4LXdpZHRoOiB2YXIoLS1zaXRlLXdpZHRoKTtcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJsYWNrKTtcbn1cbi5oZXJvLXNsaWRlcyAucGx5cl9fY29udHJvbHMge1xuICBkaXNwbGF5OiBub25lO1xufVxuLmhlcm8tc2xpZGVzLWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJsYWNrKTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLmhlcm8ge1xuICB3aWR0aDogMTAwJTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBhZGRpbmctYm90dG9tOiBjYWxjKCh2YXIoLS1zaXRlLXdpZHRoKSkgKiAwLjU2MjUpO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDEwMjNweCkge1xuICAuaGVybyB7XG4gICAgcGFkZGluZy1ib3R0b206IDBweDtcbiAgfVxuICAuaGVybzpiZWZvcmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcGFkZGluZy1ib3R0b206IDU2LjI1JTtcbiAgICB3aWR0aDogMHB4O1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogMTAyM3B4KSBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmhlcm86YmVmb3JlIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTE4LjUlO1xuICB9XG59XG4uaGVyby0tdmlkZW8ge1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbn1cbmEgPiAuaGVyby0tdmlkZW8ge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiAxMDIzcHgpIHtcbiAgLmhlcm8tLXZpZGVvOmJlZm9yZSB7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gIH1cbn1cbi5oZXJvX19jYXB0aW9uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgcmlnaHQ6IDA7XG59XG5cbi5oZXJvLWFydGljbGVfX2NhcHRpb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDEuMjVyZW07XG4gIHJpZ2h0OiAxLjI1cmVtO1xuICBib3R0b206IDMwcHg7XG4gIGNvbG9yOiB2YXIoLS13aGl0ZSk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWwpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtbCk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1sZXR0ZXItc3BhY2luZy1sKTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgLmhlcm8tYXJ0aWNsZV9fY2FwdGlvbiB7XG4gICAgYm90dG9tOiA0MHB4O1xuICAgIGxlZnQ6IHZhcigtLWNvbC0xKTtcbiAgICByaWdodDogdmFyKC0tY29sLTIpO1xuICB9XG59XG4uaGVyby1hcnRpY2xlX19pbWcge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4uaGVyby12aWRlb19fY2FwdGlvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMS4yNXJlbTtcbiAgcmlnaHQ6IDEuMjVyZW07XG4gIGJvdHRvbTogMjBweDtcbiAgY29sb3I6IHZhcigtLXdoaXRlKTtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtbSk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1tKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWxldHRlci1zcGFjaW5nLW0pO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDEwMjNweCkge1xuICAuaGVyby12aWRlb19fY2FwdGlvbiB7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtcyk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXMpO1xuICAgIGxldHRlci1zcGFjaW5nOiB2YXIoLS1sZXR0ZXItc3BhY2luZy1zKTtcbiAgfVxuICAuaGVyby12aWRlb19fY2FwdGlvbiBiciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAuaGVyby12aWRlb19fY2FwdGlvbiB7XG4gICAgYm90dG9tOiA0MHB4O1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWwpO1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1sKTtcbiAgICBsZXR0ZXItc3BhY2luZzogdmFyKC0tbGV0dGVyLXNwYWNpbmctbCk7XG4gICAgbGVmdDogdmFyKC0tY29sLTEpO1xuICAgIHJpZ2h0OiB2YXIoLS1jb2wtMSk7XG4gIH1cbn1cblxuLnRhZ2xpbmUge1xuICBsZWZ0OiB2YXIoLS1jb2wtMSk7XG4gIHJpZ2h0OiB2YXIoLS1jb2wtMSk7XG59XG5cbi5jZW50ZXItdGFnbGluZSAudGFnbGluZSB7XG4gIHRvcDogYXV0bztcbiAgYm90dG9tOiAyMHB4O1xuICBsZWZ0OiAxLjI1cmVtO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jZW50ZXItdGFnbGluZSAudGFnbGluZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0b3A6IDUwJTtcbiAgICBib3R0b206IGF1dG87XG4gICAgd2lkdGg6IHZhcigtLWNvbC0xMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG59XG5cbi5ib3R0b20tdGFnbGluZSAudGFnbGluZSB7XG4gIHRvcDogYXV0bztcbiAgYm90dG9tOiAyMHB4O1xuICBsZWZ0OiAxLjI1cmVtO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5ib3R0b20tdGFnbGluZSAudGFnbGluZSB7XG4gICAgYm90dG9tOiA0MHB4O1xuICAgIGxlZnQ6IHZhcigtLWNvbC0xKTtcbiAgfVxufVxuXG4udG9wLXRhZ2xpbmUgLnRhZ2xpbmUge1xuICB0b3A6IGF1dG87XG4gIGJvdHRvbTogMjBweDtcbiAgbGVmdDogMS4yNXJlbTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAudG9wLXRhZ2xpbmUgLnRhZ2xpbmUge1xuICAgIHRvcDogMTQ1cHg7XG4gICAgbGVmdDogdmFyKC0tY29sLTEpO1xuICB9XG59XG5cbi5oZXJvLXNsaWRlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxMDA7XG4gIHRvcDogMHB4O1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiBhdXRvO1xuICBvcGFjaXR5OiAwO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG59XG4uaGVyby1zbGlkZSB7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zOHMgZWFzZS1vdXQgMC4xcywgdHJhbnNmb3JtIDNzIGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpIDAuMXM7XG59XG4uaGVyby1zbGlkZS5hY3RpdmUge1xuICBvcGFjaXR5OiAxO1xuICB6LWluZGV4OiAxMTA7XG59XG4uaGVyby1zbGlkZV9faW1nIHtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBib3R0b206IDA7XG4gIHJpZ2h0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgb3BhY2l0eTogMDtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjM4cyBlYXNlLW91dCAwLjFzLCB0cmFuc2Zvcm0gM3MgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSkgMC4xcztcbn1cbi5oZXJvLXNsaWRlX19pbWcubGF6eWxvYWRlZCB7XG4gIG9wYWNpdHk6IDE7XG59XG4uaGVyby1zbGlkZV9faW1nLS1kZXNrdG9wIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuaGVyby1zbGlkZV9faW1nIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG4gIC5oZXJvLXNsaWRlX19pbWctLW1vYmlsZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAuaGVyby1zbGlkZV9faW1nLS1kZXNrdG9wIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuXG4uaGVyby0taGFzdGh1bWJuYWlscyAuYm90dG9tLXRhZ2xpbmUgLnRhZ2xpbmUge1xuICBib3R0b206IDQ0cHg7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmhlcm8tLWhhc3RodW1ibmFpbHMgLmJvdHRvbS10YWdsaW5lIC50YWdsaW5lIHtcbiAgICBib3R0b206IDQ1cHg7XG4gICAgbGVmdDogMS4yNXJlbTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OXB4KSB7XG4gIC5oZXJvLS1oYXN0aHVtYm5haWxzIC5ib3R0b20tdGFnbGluZSAudGFnbGluZSB7XG4gICAgYm90dG9tOiA4MHB4O1xuICAgIGxlZnQ6IHZhcigtLWNvbC0xKTtcbiAgfVxufVxuXG4uaGVyby0taGFzdGh1bWJuYWlscyAudG9wLXRhZ2xpbmUgLnRhZ2xpbmUge1xuICBib3R0b206IDUwcHg7XG59XG5cbi5oZXJvLS1oYXN0aHVtYm5haWxzIC5jZW50ZXItdGFnbGluZSAudGFnbGluZSB7XG4gIGJvdHRvbTogNTBweDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuaGVyby0taGFzdGh1bWJuYWlscyAuY2VudGVyLXRhZ2xpbmUgLnRhZ2xpbmUge1xuICAgIGJvdHRvbTogYXV0bztcbiAgICBib3R0b206IHRvcDtcbiAgfVxufVxuXG4uaGVyby1zbGlkZS1saW5rIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgei1pbmRleDogMTk5O1xufVxuLmhlcm8tc2xpZGUtbGluayAudGFnbGluZTo6YWZ0ZXIge1xuICBjb250ZW50OiBcIuKGklwiO1xuICBwYWRkaW5nLWxlZnQ6IDVweDtcbiAgcGFkZGluZy1yaWdodDogMTVweDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG59XG4uaGVyby1zbGlkZS1saW5rIC50YWdsaW5lOmhvdmVyOjphZnRlciB7XG4gIHBhZGRpbmctbGVmdDogMTVweDtcbiAgcGFkZGluZy1yaWdodDogNXB4O1xufVxuXG4udGFnbGluZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgY29sb3I6IHdoaXRlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgZm9udC1mYW1pbHk6IFwiSW50ZXJcIiwgSGVsdmV0aWNhLCBcIkhlbHZldGljYSBOZXVlXCIsIEFyaWFsO1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1sKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWwpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tbGV0dGVyLXNwYWNpbmctbCk7XG4gIHRyYW5zaXRpb246IGhlaWdodCAxcztcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG59XG5AbWVkaWEgKG1heC13aWR0aDogMTAyM3B4KSB7XG4gIC50YWdsaW5lIHtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1tKTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtbSk7XG4gICAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWxldHRlci1zcGFjaW5nLW0pO1xuICB9XG4gIC50YWdsaW5lLWNvbnRhaW5lciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiA4OXZoO1xuICAgIG1heC1oZWlnaHQ6IDEwMHZoO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gIH1cbiAgLnRhZ2xpbmUge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLW0pO1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1tKTtcbiAgICBsZXR0ZXItc3BhY2luZzogdmFyKC0tbGV0dGVyLXNwYWNpbmctbSk7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBsZWZ0OiAxLjI1cmVtO1xuICB9XG59XG5cbi5zbGlkZXMtdGh1bWJuYWlscyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTUwO1xuICBib3R0b206IDQ0cHg7XG4gIGxlZnQ6IDUwJTtcbiAgbGVmdDogMzMuMzMlO1xuICByaWdodDogMzMuMzMlO1xuICBkaXNwbGF5OiBub25lO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgbWF4LXdpZHRoOiB2YXIoLS1jb2wtNCk7XG4gIG1pbi1oZWlnaHQ6IDEwMHB4O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAuc2xpZGVzLXRodW1ibmFpbHM6aG92ZXIgLnNsaWRlcy10aHVtYm5haWxfX2ltZyB7XG4gICAgYm90dG9tOiAwO1xuICB9XG59XG5cbi5oZXJvLS1oYXN0aHVtYm5haWxzIC5zbGlkZXMtdGh1bWJuYWlscyB7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG5cbi5zbGlkZXMtdGh1bWJuYWlsIHtcbiAgd2lkdGg6IGNhbGMoKCh2YXIoLS1jb2wtNCkpIC0xNnB4KSAvIDMpO1xuICBoZWlnaHQ6IGF1dG87XG4gIGZsZXg6IDE7XG4gIG1hcmdpbjogMCA0cHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjZmZmO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBvcGFjaXR5OiAxO1xufVxuLnNsaWRlcy10aHVtYm5haWw6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tbGVmdDogMDtcbn1cbi5zbGlkZXMtdGh1bWJuYWlsOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG59XG4uc2xpZGVzLXRodW1ibmFpbDphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY29udGVudDogXCJcIjtcbiAgYm9yZGVyLWJvdHRvbTogOHB4IHNvbGlkICNmZmY7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAwcHg7XG59XG4uc2xpZGVzLXRodW1ibmFpbF9faW1nIHtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAtMTAwJTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgdHJhbnNpdGlvbjogYm90dG9tIDAuM3MgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG4gIG9wYWNpdHk6IDE7XG59XG5AbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLnNsaWRlcy10aHVtYm5haWxfX2ltZyB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuLnNsaWRlcy10aHVtYm5haWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwIGF1dG87XG59XG4uc2xpZGVzLXRodW1ibmFpbC5hY3RpdmU6YWZ0ZXIge1xuICB3aWR0aDogMTAwJTtcbiAgdHJhbnNpdGlvbjogd2lkdGggNC41cyBsaW5lYXI7XG59XG4uc2xpZGVzLXRodW1ibmFpbC0xIGltZyB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDBzO1xufVxuLnNsaWRlcy10aHVtYm5haWwtMiBpbWcge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwLjA3cztcbn1cbi5zbGlkZXMtdGh1bWJuYWlsLTMgaW1nIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMC4xNHM7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAuc2xpZGVzLXRodW1ibmFpbHMge1xuICAgIGxlZnQ6IDEuMjVyZW07XG4gICAgcmlnaHQ6IDEuMjVyZW07XG4gICAgYm90dG9tOiAxLjI1cmVtO1xuICAgIHdpZHRoOiBjYWxjKDEwMHZ3IC0gMiAqIDEuMjVyZW0pO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5zbGlkZXMtdGh1bWJuYWlsX19pbWcge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbi8qXG4gIFBsdWdpbiBtYXJrdXAgZm9yIEdEUFIgcG9wdXBcblxuXG48ZGl2IGNsYXNzPVwiY2xpLWJhci1jb250YWluZXIgY2xpLXN0eWxlLXYyXCI+XG48ZGl2IGNsYXNzPVwiY2xpLWJhci1oZWFkZXJcIj5XZSB1c2UgY29va2llczwvZGl2PlxuPGRpdiBjbGFzcz1cImNsaS1iYXItbWVzc2FnZVwiPldlIHVzZSBjb29raWVzIHRvIG9mZmVyIHlvdSBhIGJldHRlciBleHBlcmllbmNlIGFuZCBhbmFseXplIHNpdGUgdHJhZmZpYy4gRm9yIG1vcmUgZGV0YWlsZWQgaW5mb3JtYXRpb24sIHZpZXcgb3VyIDxhIGhyZWY9XCIvcHJpdmFjeS1wb2xpY3ktd2Vic2l0ZS9cIiBjbGFzcz1cImFycm93LWxpbmtcIj5Qcml2YWN5IHBvbGljeTwvYT48L2Rpdj5cbjxkaXYgY2xhc3M9XCJjbGktYmFyLWJ1dHRvbnNcIj5cbltjb29raWVfcmVqZWN0XVtjb29raWVfYnV0dG9uXVxuPC9kaXY+XG48L2Rpdj5cbiovXG4jY29va2llLWxhdy1pbmZvLWJhciB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWJsYWNrKSAhaW1wb3J0YW50O1xuICBjb2xvcjogdmFyKC0td2hpdGUpICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IHZhcigtLXNlY3Rpb24tbWFyZ2luKSAhaW1wb3J0YW50O1xuICBib3R0b206IHZhcigtLXNlY3Rpb24tbWFyZ2luKSAhaW1wb3J0YW50O1xuICBsZWZ0OiB2YXIoLS1zZWN0aW9uLW1hcmdpbikgIWltcG9ydGFudDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cbiNjb29raWUtbGF3LWluZm8tYmFyIGJyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbiNjb29raWUtbGF3LWluZm8tYmFyIC5jbGktYmFyLWhlYWRlciB7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLW0pO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtbSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1sZXR0ZXItc3BhY2luZy1tKTtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgbWFyZ2luLXRvcDogMDtcbn1cbiNjb29raWUtbGF3LWluZm8tYmFyIC5jbGktYmFyLW1lc3NhZ2Uge1xuICBsaW5lLWhlaWdodDogMTZweDtcbn1cbiNjb29raWUtbGF3LWluZm8tYmFyIC5jbGktYmFyLW1lc3NhZ2UgYSB7XG4gIGNvbG9yOiB2YXIoLS1taWRkbGUtZ3JleSk7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbkBtZWRpYSAoaG92ZXI6IGhvdmVyKSB7XG4gICNjb29raWUtbGF3LWluZm8tYmFyIC5jbGktYmFyLW1lc3NhZ2UgYTpob3ZlciB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG59XG4jY29va2llLWxhdy1pbmZvLWJhciAuY2xpX2FjdGlvbl9idXR0b24ge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBsaW5lLWhlaWdodDogNDBweDtcbiAgYm9yZGVyOiAxcHggc29saWQgd2hpdGU7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXMpO1xuICBtYXJnaW46IDI0cHggMCAwICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiA0NiU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgcGFkZGluZzogNHB4IDE2cHg7XG59XG4jY29va2llLWxhdy1pbmZvLWJhciAuY2xpX2FjdGlvbl9idXR0b246Zmlyc3Qtb2YtdHlwZSB7XG4gIG1hcmdpbi1yaWdodDogOCUgIWltcG9ydGFudDtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAjY29va2llLWxhdy1pbmZvLWJhciB7XG4gICAgYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogMCAhaW1wb3J0YW50O1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgI2Nvb2tpZS1sYXctaW5mby1iYXIgLmNsaS1iYXItYnV0dG9ucyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcbiAgfVxuICAjY29va2llLWxhdy1pbmZvLWJhciAuY2xpX2FjdGlvbl9idXR0b24ge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gICNjb29raWUtbGF3LWluZm8tYmFyIC5jbGlfYWN0aW9uX2J1dHRvbjpmaXJzdC1vZi10eXBlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgfVxufVxuXG4udGV4dC1waGMtcGFnZWZpZ3VyZXMge1xuICBmb250LWZhbWlseTogXCJTdWlzc2UgSW50bFwiLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IGNhbGMoOCAqIHZhcigtLXBoYy1yb290KSk7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGxpbmUtaGVpZ2h0OiBjYWxjKDkuODc1ICogdmFyKC0tcGhjLXJvb3QpKTtcbiAgbGV0dGVyLXNwYWNpbmc6IC0wLjA1ZW07XG4gIGZvbnQtZmVhdHVyZS1zZXR0aW5nczogXCJzYWx0XCIgMTtcbn1cbi50ZXh0LXBoYy1wYWdlZmlndXJlcyBwLFxuLnRleHQtcGhjLXBhZ2VmaWd1cmVzIGxpLFxuLnRleHQtcGhjLXBhZ2VmaWd1cmVzIGJsb2NrcXVvdGUge1xuICBmb250OiBpbmhlcml0O1xuICBsZXR0ZXItc3BhY2luZzogaW5oZXJpdDtcbn1cblxuLnRleHQtcGhjLXBhZ2VmaWd1cmVzc3VwcG9ydCB7XG4gIGZvbnQtZmFtaWx5OiBcIlN1aXNzZSBJbnRsXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogY2FsYyg2ICogdmFyKC0tcGhjLXJvb3QpKTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbGluZS1oZWlnaHQ6IGNhbGMoNi4xMjUgKiB2YXIoLS1waGMtcm9vdCkpO1xuICBsZXR0ZXItc3BhY2luZzogLTAuMDVlbTtcbiAgZm9udC1mZWF0dXJlLXNldHRpbmdzOiBcInNhbHRcIiAxO1xufVxuLnRleHQtcGhjLXBhZ2VmaWd1cmVzc3VwcG9ydCBwLFxuLnRleHQtcGhjLXBhZ2VmaWd1cmVzc3VwcG9ydCBsaSxcbi50ZXh0LXBoYy1wYWdlZmlndXJlc3N1cHBvcnQgYmxvY2txdW90ZSB7XG4gIGZvbnQ6IGluaGVyaXQ7XG4gIGxldHRlci1zcGFjaW5nOiBpbmhlcml0O1xufVxuXG4udGV4dC1waGMtdGl0bGUtcmVndWxhciB7XG4gIGZvbnQtZmFtaWx5OiBcIlN1aXNzZSBJbnRsXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogY2FsYyg0ICogdmFyKC0tcGhjLXJvb3QpKTtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgbGluZS1oZWlnaHQ6IGNhbGMoNC4xMjUgKiB2YXIoLS1waGMtcm9vdCkpO1xuICBsZXR0ZXItc3BhY2luZzogLTAuMDVlbTtcbiAgZm9udC1mZWF0dXJlLXNldHRpbmdzOiBcInNhbHRcIiAxO1xufVxuLnRleHQtcGhjLXRpdGxlLXJlZ3VsYXIgcCxcbi50ZXh0LXBoYy10aXRsZS1yZWd1bGFyIGxpLFxuLnRleHQtcGhjLXRpdGxlLXJlZ3VsYXIgYmxvY2txdW90ZSB7XG4gIGZvbnQ6IGluaGVyaXQ7XG4gIGxldHRlci1zcGFjaW5nOiBpbmhlcml0O1xufVxuXG4udGV4dC1waGMtdGl0bGUtcHJvZmlsZSB7XG4gIGZvbnQtZmFtaWx5OiBcIlN1aXNzZSBJbnRsXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogY2FsYygyLjYyNSAqIHZhcigtLXBoYy1yb290KSk7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiBjYWxjKDIuNzUgKiB2YXIoLS1waGMtcm9vdCkpO1xuICBsZXR0ZXItc3BhY2luZzogLTAuMDJlbTtcbiAgZm9udC1mZWF0dXJlLXNldHRpbmdzOiBcInNhbHRcIiAxO1xufVxuLnRleHQtcGhjLXRpdGxlLXByb2ZpbGUgcCxcbi50ZXh0LXBoYy10aXRsZS1wcm9maWxlIGxpLFxuLnRleHQtcGhjLXRpdGxlLXByb2ZpbGUgYmxvY2txdW90ZSB7XG4gIGZvbnQ6IGluaGVyaXQ7XG4gIGxldHRlci1zcGFjaW5nOiBpbmhlcml0O1xufVxuXG4udGV4dC1waGMtZm9vdGVybGlua2FnZSB7XG4gIGZvbnQtZmFtaWx5OiBcIlN1aXNzZSBJbnRsXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogY2FsYygxLjc1ICogdmFyKC0tcGhjLXJvb3QpKTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgbGluZS1oZWlnaHQ6IGNhbGMoMi4yNSAqIHZhcigtLXBoYy1yb290KSk7XG4gIGxldHRlci1zcGFjaW5nOiAwO1xuICBmb250LWZlYXR1cmUtc2V0dGluZ3M6IFwic2FsdFwiIDE7XG59XG4udGV4dC1waGMtZm9vdGVybGlua2FnZSBwLFxuLnRleHQtcGhjLWZvb3RlcmxpbmthZ2UgbGksXG4udGV4dC1waGMtZm9vdGVybGlua2FnZSBibG9ja3F1b3RlIHtcbiAgZm9udDogaW5oZXJpdDtcbiAgbGV0dGVyLXNwYWNpbmc6IGluaGVyaXQ7XG59XG5cbi50ZXh0LXBoYy1zdGFuZGFyZCB7XG4gIGZvbnQtZmFtaWx5OiBcIlN1aXNzZSBJbnRsXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogY2FsYygxLjM3NSAqIHZhcigtLXBoYy1yb290KSk7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiBjYWxjKDEuNSAqIHZhcigtLXBoYy1yb290KSk7XG4gIGxldHRlci1zcGFjaW5nOiAwO1xuICBmb250LWZlYXR1cmUtc2V0dGluZ3M6IFwic2FsdFwiIDE7XG59XG4udGV4dC1waGMtc3RhbmRhcmQgcCxcbi50ZXh0LXBoYy1zdGFuZGFyZCBsaSxcbi50ZXh0LXBoYy1zdGFuZGFyZCBibG9ja3F1b3RlIHtcbiAgZm9udDogaW5oZXJpdDtcbiAgbGV0dGVyLXNwYWNpbmc6IGluaGVyaXQ7XG59XG5cbi50ZXh0LXBoYy1zbWFsbHR5cGUge1xuICBmb250LWZhbWlseTogXCJTdWlzc2UgSW50bFwiLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IGNhbGMoMSAqIHZhcigtLXBoYy1yb290KSk7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGxpbmUtaGVpZ2h0OiBjYWxjKDEuMTI1ICogdmFyKC0tcGhjLXJvb3QpKTtcbiAgbGV0dGVyLXNwYWNpbmc6IDA7XG4gIGZvbnQtZmVhdHVyZS1zZXR0aW5nczogXCJzYWx0XCIgMTtcbn1cbi50ZXh0LXBoYy1zbWFsbHR5cGUgcCxcbi50ZXh0LXBoYy1zbWFsbHR5cGUgbGksXG4udGV4dC1waGMtc21hbGx0eXBlIGJsb2NrcXVvdGUge1xuICBmb250OiBpbmhlcml0O1xuICBsZXR0ZXItc3BhY2luZzogaW5oZXJpdDtcbn1cblxuLnRleHQtcGhjLXN0YW5kYXJkLWpwIHtcbiAgZm9udC1mYW1pbHk6IFwiTm90byBTYW5zIEpQXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogY2FsYygxLjEyNSAqIHZhcigtLXBoYy1yb290KSk7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiBjYWxjKDEuNSAqIHZhcigtLXBoYy1yb290KSk7XG4gIGxldHRlci1zcGFjaW5nOiAtMC4wNGVtO1xuICBmb250LWZlYXR1cmUtc2V0dGluZ3M6IFwic2FsdFwiIDE7XG59XG4udGV4dC1waGMtc3RhbmRhcmQtanAgcCxcbi50ZXh0LXBoYy1zdGFuZGFyZC1qcCBsaSxcbi50ZXh0LXBoYy1zdGFuZGFyZC1qcCBibG9ja3F1b3RlIHtcbiAgZm9udDogaW5oZXJpdDtcbiAgbGV0dGVyLXNwYWNpbmc6IGluaGVyaXQ7XG59XG5cbi50ZXh0LXBoYy1zbWFsbHR5cGUtanAge1xuICBmb250LWZhbWlseTogXCJOb3RvIFNhbnMgSlBcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiBjYWxjKDAuODc1ICogdmFyKC0tcGhjLXJvb3QpKTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgbGluZS1oZWlnaHQ6IGNhbGMoMS4xMjUgKiB2YXIoLS1waGMtcm9vdCkpO1xuICBsZXR0ZXItc3BhY2luZzogLTAuMDJlbTtcbiAgZm9udC1mZWF0dXJlLXNldHRpbmdzOiBcInNhbHRcIiAxO1xufVxuLnRleHQtcGhjLXNtYWxsdHlwZS1qcCBwLFxuLnRleHQtcGhjLXNtYWxsdHlwZS1qcCBsaSxcbi50ZXh0LXBoYy1zbWFsbHR5cGUtanAgYmxvY2txdW90ZSB7XG4gIGZvbnQ6IGluaGVyaXQ7XG4gIGxldHRlci1zcGFjaW5nOiBpbmhlcml0O1xufVxuXG4udGV4dC1waGMtc21hbGxib2xkIHtcbiAgZm9udC1mYW1pbHk6IFwiU3Vpc3NlIEludGxcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiBjYWxjKDEuNSAqIHZhcigtLXBoYy1yb290KSk7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGxpbmUtaGVpZ2h0OiBjYWxjKDEuNjI1ICogdmFyKC0tcGhjLXJvb3QpKTtcbiAgbGV0dGVyLXNwYWNpbmc6IDA7XG4gIGZvbnQtZmVhdHVyZS1zZXR0aW5nczogXCJzYWx0XCIgMTtcbn1cbi50ZXh0LXBoYy1zbWFsbGJvbGQgcCxcbi50ZXh0LXBoYy1zbWFsbGJvbGQgbGksXG4udGV4dC1waGMtc21hbGxib2xkIGJsb2NrcXVvdGUge1xuICBmb250OiBpbmhlcml0O1xuICBsZXR0ZXItc3BhY2luZzogaW5oZXJpdDtcbn0iLCIvLyA0MDAgYWRkZWQgZm9yIHRoZSByZWRlc2lnbjogdGhlIEphcGFuZXNlIGNvbHVtbidzIFN0YW5kYXJkIEpQIHRva2VuIGlzIFJlZ3VsYXIuXG5AaW1wb3J0IHVybCgnaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3MyP2ZhbWlseT1Ob3RvK1NhbnMrSlA6d2dodEAzMDA7NDAwOzUwMDs3MDAmZGlzcGxheT1zd2FwJyk7XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ0ludGVyJztcbiAgZm9udC1zdHlsZTogIG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgZm9udC1kaXNwbGF5OiBzd2FwO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL0ludGVyLUxpZ2h0LndvZmYyP3Y9My4xOVwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSxcbiAgICAgICB1cmwoXCIuLi9mb250cy9JbnRlci1MaWdodC53b2ZmP3Y9My4xOVwiKSBmb3JtYXQoXCJ3b2ZmXCIpO1xufVxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnSW50ZXInO1xuICBmb250LXN0eWxlOiAgaXRhbGljO1xuICBmb250LXdlaWdodDogMzAwO1xuICBmb250LWRpc3BsYXk6IHN3YXA7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvSW50ZXItTGlnaHRJdGFsaWMud29mZjI/dj0zLjE5XCIpIGZvcm1hdChcIndvZmYyXCIpLFxuICAgICAgIHVybChcIi4uL2ZvbnRzL0ludGVyLUxpZ2h0SXRhbGljLndvZmY/dj0zLjE5XCIpIGZvcm1hdChcIndvZmZcIik7XG59XG5cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnSW50ZXInO1xuICBmb250LXN0eWxlOiAgbm9ybWFsO1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LWRpc3BsYXk6IHN3YXA7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvSW50ZXItUmVndWxhci53b2ZmMj92PTMuMTlcIikgZm9ybWF0KFwid29mZjJcIiksXG4gICAgICAgdXJsKFwiLi4vZm9udHMvSW50ZXItUmVndWxhci53b2ZmP3Y9My4xOVwiKSBmb3JtYXQoXCJ3b2ZmXCIpO1xufVxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnSW50ZXInO1xuICBmb250LXN0eWxlOiAgaXRhbGljO1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LWRpc3BsYXk6IHN3YXA7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvSW50ZXItUmVndWxhckl0YWxpYy53b2ZmMj92PTMuMTlcIikgZm9ybWF0KFwid29mZjJcIiksXG4gICAgICAgdXJsKFwiLi4vZm9udHMvSW50ZXItUmVndWxhckl0YWxpYy53b2ZmP3Y9My4xOVwiKSBmb3JtYXQoXCJ3b2ZmXCIpO1xufVxuXG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ0ludGVyJztcbiAgZm9udC1zdHlsZTogIG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgZm9udC1kaXNwbGF5OiBzd2FwO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL0ludGVyLU1lZGl1bS53b2ZmMj92PTMuMTlcIikgZm9ybWF0KFwid29mZjJcIiksXG4gICAgICAgdXJsKFwiLi4vZm9udHMvSW50ZXItTWVkaXVtLndvZmY/dj0zLjE5XCIpIGZvcm1hdChcIndvZmZcIik7XG59XG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdJbnRlcic7XG4gIGZvbnQtc3R5bGU6ICBpdGFsaWM7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGZvbnQtZGlzcGxheTogc3dhcDtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9JbnRlci1NZWRpdW1JdGFsaWMud29mZjI/dj0zLjE5XCIpIGZvcm1hdChcIndvZmYyXCIpLFxuICAgICAgIHVybChcIi4uL2ZvbnRzL0ludGVyLU1lZGl1bUl0YWxpYy53b2ZmP3Y9My4xOVwiKSBmb3JtYXQoXCJ3b2ZmXCIpO1xufVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdJbnRlcic7XG4gIGZvbnQtc3R5bGU6ICBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGZvbnQtZGlzcGxheTogc3dhcDtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9JbnRlci1TZW1pQm9sZC53b2ZmMj92PTMuMTlcIikgZm9ybWF0KFwid29mZjJcIiksXG4gICAgICAgdXJsKFwiLi4vZm9udHMvSW50ZXItU2VtaUJvbGQud29mZj92PTMuMTlcIikgZm9ybWF0KFwid29mZlwiKTtcbn1cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ0ludGVyJztcbiAgZm9udC1zdHlsZTogIGl0YWxpYztcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgZm9udC1kaXNwbGF5OiBzd2FwO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL0ludGVyLVNlbWlCb2xkSXRhbGljLndvZmYyP3Y9My4xOVwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSxcbiAgICAgICB1cmwoXCIuLi9mb250cy9JbnRlci1TZW1pQm9sZEl0YWxpYy53b2ZmP3Y9My4xOVwiKSBmb3JtYXQoXCJ3b2ZmXCIpO1xufVxuXG5cbi8vIFN1aXNzZSBJbnRsLCBsYWlkIG91dCB0byBtaXJyb3IgSW50ZXIgYWJvdmUgd2VpZ2h0IGZvciB3ZWlnaHQuIFRoZSBsaWNlbnNlZFxuLy8gZmlsZXMgY2Fycnkgbm8gdmVyc2lvbiwgc28gdGhlcmUgaXMgbm8gY2FjaGUtYnVzdGluZyBxdWVyeSBvbiB0aGVzZS5cbi8vXG4vLyBPbmUgZ2FwIGFnYWluc3QgSW50ZXI6IHRoZSBsaWNlbmNlIHBhY2sgaGFzIG5vIFJlZ3VsYXIgSXRhbGljLCBzbyBpdGFsaWMgYXRcbi8vIHdlaWdodCA0MDAgZmFsbHMgYmFjayB0byBhIGJyb3dzZXItc3ludGhlc2lzZWQgb2JsaXF1ZS4gRXZlcnkgb3RoZXIgd2VpZ2h0XG4vLyBoYXMgYSByZWFsIGl0YWxpYy4gV29ydGggYXNraW5nIHRoZSBmb3VuZHJ5IGZvciB0aGF0IGN1dCBpZiBib2R5IGNvcHkgZW5kcyB1cFxuLy8gaW4gU3Vpc3NlIGFuZCB1c2VzIGVtcGhhc2lzLlxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdTdWlzc2UgSW50bCc7XG4gIGZvbnQtc3R5bGU6ICBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGZvbnQtZGlzcGxheTogc3dhcDtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9zdWlzc2UvU3Vpc3NlSW50bC1MaWdodC53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSxcbiAgICAgICB1cmwoXCIuLi9mb250cy9zdWlzc2UvU3Vpc3NlSW50bC1MaWdodC53b2ZmXCIpIGZvcm1hdChcIndvZmZcIik7XG59XG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdTdWlzc2UgSW50bCc7XG4gIGZvbnQtc3R5bGU6ICBpdGFsaWM7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGZvbnQtZGlzcGxheTogc3dhcDtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9zdWlzc2UvU3Vpc3NlSW50bC1MaWdodEl0YWxpYy53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSxcbiAgICAgICB1cmwoXCIuLi9mb250cy9zdWlzc2UvU3Vpc3NlSW50bC1MaWdodEl0YWxpYy53b2ZmXCIpIGZvcm1hdChcIndvZmZcIik7XG59XG5cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnU3Vpc3NlIEludGwnO1xuICBmb250LXN0eWxlOiAgbm9ybWFsO1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LWRpc3BsYXk6IHN3YXA7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvc3Vpc3NlL1N1aXNzZUludGwtUmVndWxhci53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSxcbiAgICAgICB1cmwoXCIuLi9mb250cy9zdWlzc2UvU3Vpc3NlSW50bC1SZWd1bGFyLndvZmZcIikgZm9ybWF0KFwid29mZlwiKTtcbn1cblxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdTdWlzc2UgSW50bCc7XG4gIGZvbnQtc3R5bGU6ICBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGZvbnQtZGlzcGxheTogc3dhcDtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9zdWlzc2UvU3Vpc3NlSW50bC1NZWRpdW0ud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksXG4gICAgICAgdXJsKFwiLi4vZm9udHMvc3Vpc3NlL1N1aXNzZUludGwtTWVkaXVtLndvZmZcIikgZm9ybWF0KFwid29mZlwiKTtcbn1cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ1N1aXNzZSBJbnRsJztcbiAgZm9udC1zdHlsZTogIGl0YWxpYztcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgZm9udC1kaXNwbGF5OiBzd2FwO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL3N1aXNzZS9TdWlzc2VJbnRsLU1lZGl1bUl0YWxpYy53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSxcbiAgICAgICB1cmwoXCIuLi9mb250cy9zdWlzc2UvU3Vpc3NlSW50bC1NZWRpdW1JdGFsaWMud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpO1xufVxuXG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ1N1aXNzZSBJbnRsJztcbiAgZm9udC1zdHlsZTogIG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgZm9udC1kaXNwbGF5OiBzd2FwO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL3N1aXNzZS9TdWlzc2VJbnRsLVNlbWlCb2xkLndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLFxuICAgICAgIHVybChcIi4uL2ZvbnRzL3N1aXNzZS9TdWlzc2VJbnRsLVNlbWlCb2xkLndvZmZcIikgZm9ybWF0KFwid29mZlwiKTtcbn1cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ1N1aXNzZSBJbnRsJztcbiAgZm9udC1zdHlsZTogIGl0YWxpYztcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgZm9udC1kaXNwbGF5OiBzd2FwO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL3N1aXNzZS9TdWlzc2VJbnRsLVNlbWlCb2xkSXRhbGljLndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLFxuICAgICAgIHVybChcIi4uL2ZvbnRzL3N1aXNzZS9TdWlzc2VJbnRsLVNlbWlCb2xkSXRhbGljLndvZmZcIikgZm9ybWF0KFwid29mZlwiKTtcbn1cbiIsIi8vIFV0aWxzIGFuZCBkZXBlbmRlbmNpZXNcbkBpbXBvcnQgJ3VuaXQnO1xuQGltcG9ydCAnbWl4aW5zJztcblxuLy8gRW5hYmxlIEBleHRlbmQgLnBzZXVkbztcbi5wc2V1ZG8ge1xuICBAaW5jbHVkZSBwc2V1ZG87XG59XG5cbi53aWRlIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG4udGV4dCB7XG4gICYtYmxhY2sge1xuICAgIGNvbG9yOiB2YXIoLS1ibGFjaykgIWltcG9ydGFudDtcbiAgfVxuICAmLXdoaXRlIHtcbiAgICBjb2xvcjogdmFyKC0td2hpdGUpICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmJhY2tncm91bmQge1xuICAmLWJsYWNrIHtcbiAgICBiYWNrZ3JvdW5kOiMxQTFBMTggIWltcG9ydGFudDtcblxuICAgIEBleHRlbmQgLnRleHQtd2hpdGU7XG4gIH1cbiAgJi13aGl0ZSB7XG4gICAgYmFja2dyb3VuZDogdmFyKC0td2hpdGUpICFpbXBvcnRhbnQ7XG4gIH1cbiAgJi1jYXBwdWNjaW5vIHtcbiAgICBiYWNrZ3JvdW5kOiAjOTA2NDRDICFpbXBvcnRhbnQ7XG4gIH1cbiAgJi1yZWQge1xuICAgIGJhY2tncm91bmQ6IHZhcigtLXJlZCkgIWltcG9ydGFudDtcbiAgfVxuICAmLWJsdWUge1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWJsdWUpICFpbXBvcnRhbnQ7XG4gIH1cbiAgJi15ZWxsb3cge1xuICAgIGJhY2tncm91bmQ6IHZhcigtLXllbGxvdykgIWltcG9ydGFudDtcbiAgfVxuICAmLW9mZi13aGl0ZSB7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tb2ZmLXdoaXRlKSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLmNsZWFyZml4IHtcbiAgJjpiZWZvcmUge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNvbnRlbnQ6IFwiIFwiO1xuICB9XG5cbiAgJjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY29udGVudDogXCIgXCI7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbn1cblxuLmlubGluZSB7XG4gIGRpc3BsYXk6IGlubGluZTtcbn1cblxuQGluY2x1ZGUgbWVkaWEoJzxkZXNrdG9wJykge1xuICAucGFkZGVkIHtcbiAgICBwYWRkaW5nOiAwIDMwcHg7XG4gIH1cblxuICAuZGVza3RvcC11cCxcbiAgLmRlc2t0b3Atb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG4gIC50YWJsZXQtZG93biB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AaW5jbHVkZSBtZWRpYSgnPHRhYmxldCcpIHtcbiAgLnRhYmxldC1vbmx5LFxuICAuaGlkZS1mb3ItbW9iaWxlIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbkBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbiAgLm1vYmlsZS1vbmx5LFxuICAuaGlkZS1mb3ItdGFibGV0IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbkBpbmNsdWRlIG1lZGlhKCc+PWRlc2t0b3AnKSB7XG4gIC50YWJsZXQtZG93bixcbiAgLnRhYmxldC1vbmx5LFxuICAuaGlkZS1mb3ItZGVza3RvcCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG4gIC5kZXNrdG9wLXVwIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG4iLCIvLyBVc2UgdG8gbWFrZSBwc2V1ZG8tZWxlbWVudHMgXCJyZWFsXCJcbkBtaXhpbiBwc2V1ZG8oJGRpc3BsYXk6IGJsb2NrLCAkcG9zOiBhYnNvbHV0ZSwgJGNvbnRlbnQ6ICcnKXtcbiAgY29udGVudDogJGNvbnRlbnQ7XG4gIGRpc3BsYXk6ICRkaXNwbGF5O1xuICBwb3NpdGlvbjogJHBvcztcbn1cblxuLy8gQXBwbHkgb25lIG9mIHRoZSByZWRlc2lnbiB0eXBlIHRva2VucywgZS5nLiBAaW5jbHVkZSBwaGMtdHlwZSh0aXRsZS1yZWd1bGFyKS5cbi8vXG4vLyBUaGUgbWFwIGhvbGRzIHRoZSBkZXNpZ24ncyBweCB2YWx1ZXMgYW5kIHBoYy1sZW4gY29udmVydHMgdGhlbSBhZ2FpbnN0XG4vLyAtLXBoYy1yb290LCBzbyB0eXBlIHNjYWxlcyB3aXRoIHRoZSByZWFkZXIncyBicm93c2VyIHNldHRpbmcgb24gdGhlIHBhZ2VzIHRoZVxuLy8gcmVkZXNpZ24gb3ducy4gVGhlIG9sZCBwYWdlcyBwaW4gdGhlIHJvb3QgdG8gdGhlIHZpZXdwb3J0IGluc3RlYWQsIGFuZCBob2xkXG4vLyAtLXBoYy1yb290IGZsYXQg4oCUIHNlZSB1dGlscy9fdW5pdC5zY3NzIOKAlCBzbyB0aGUgY2hyb21lIHRoZXkgc2hhcmUgd2l0aCB0aGVcbi8vIHJlZGVzaWduIHJlbmRlcnMgYXQgb25lIHNpemUgZXZlcnl3aGVyZS5cbi8vXG4vLyBMaW5lIGhlaWdodCBpcyBhIGxlbmd0aCByYXRoZXIgdGhhbiBhIHJhdGlvIHNvIGl0IG1hdGNoZXMgRmlnbWEgZXhhY3RseSBhbmRcbi8vIHNjYWxlcyB3aXRoIHRoZSB0ZXh0LiBUcmFja2luZyBpcyBlbSwgd2hpY2ggc2NhbGVzIG9uIGl0cyBvd24uXG4vLyBcInNhbHRcIiBpcyBJbnRlcidzIHN0eWxpc3RpYyBhbHRlcm5hdGVzLCB3aGljaCB0aGUgZGVzaWduIGhhcyBzd2l0Y2hlZCBvbi5cbkBtaXhpbiBwaGMtdHlwZSgkbmFtZSkge1xuICAkdG9rZW46IG1hcC1nZXQoJHBoYy10eXBlLCAkbmFtZSk7XG5cbiAgQGlmICR0b2tlbiA9PSBudWxsIHtcbiAgICBAZXJyb3IgJ1Vua25vd24gdHlwZSB0b2tlbiBcIiN7JG5hbWV9XCIuIEF2YWlsYWJsZTogI3ttYXAta2V5cygkcGhjLXR5cGUpfS4nO1xuICB9XG5cbiAgZm9udC1mYW1pbHk6IG1hcC1nZXQoJHRva2VuLCBmYW1pbHkpO1xuICBmb250LXNpemU6IHBoYy1sZW4obWFwLWdldCgkdG9rZW4sIHNpemUpKTtcbiAgZm9udC13ZWlnaHQ6IG1hcC1nZXQoJHRva2VuLCB3ZWlnaHQpO1xuICBsaW5lLWhlaWdodDogcGhjLWxlbihtYXAtZ2V0KCR0b2tlbiwgbGluZSkpO1xuICBsZXR0ZXItc3BhY2luZzogbWFwLWdldCgkdG9rZW4sIHRyYWNraW5nKTtcbiAgZm9udC1mZWF0dXJlLXNldHRpbmdzOiAnc2FsdCcgMTtcbn1cblxuQG1peGluIHpvb21GYWRlSW5UcmFuc2l0aW9uKCkge1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMzhzIGVhc2Utb3V0IDAuMXMsIHRyYW5zZm9ybSAzcyBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKSAwLjFzO1xufVxuXG5AbWl4aW4gZmFkZUFuZFNsaWRlSW5UcmFuc2l0aW9uKCkge1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDFzIGVhc2Utb3V0IDAuNXMsIHRyYW5zZm9ybSAxcyBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKSAwLjVzO1xufVxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG4vLyAgICAgXyAgICAgICAgICAgIF8gICAgICAgICAgIF8gICAgICAgICAgICAgICAgICAgICAgICAgICBfIF9cbi8vICAgIChfKSAgICAgICAgICB8IHwgICAgICAgICB8IHwgICAgICAgICAgICAgICAgICAgICAgICAgfCAoXylcbi8vICAgICBfIF8gX18gICBfX198IHxfICAgXyAgX198IHwgX19fICAgXyBfXyBfX18gICBfX18gIF9ffCB8XyAgX18gX1xuLy8gICAgfCB8ICdfIFxcIC8gX198IHwgfCB8IHwvIF9gIHwvIF8gXFwgfCAnXyBgIF8gXFwgLyBfIFxcLyBfYCB8IHwvIF9gIHxcbi8vICAgIHwgfCB8IHwgfCAoX198IHwgfF98IHwgKF98IHwgIF9fLyB8IHwgfCB8IHwgfCAgX18vIChffCB8IHwgKF98IHxcbi8vICAgIHxffF98IHxffFxcX19ffF98XFxfXyxffFxcX18sX3xcXF9fX3wgfF98IHxffCB8X3xcXF9fX3xcXF9fLF98X3xcXF9fLF98XG4vL1xuLy8gICAgICBTaW1wbGUsIGVsZWdhbnQgYW5kIG1haW50YWluYWJsZSBtZWRpYSBxdWVyaWVzIGluIFNhc3Ncbi8vICAgICAgICAgICAgICAgICAgICAgICAgdjEuNC45XG4vL1xuLy8gICAgICAgIGh0dHBzOi8vZWR1YXJkb2JvdWNhcy5naXRodWIuaW8vaW5jbHVkZS1tZWRpYVxuLy9cbi8vICAgICAgICAgQXV0aG9yczogRWR1YXJkbyBCb3VjYXMgKEBlZHVhcmRvYm91Y2FzKVxuLy8gICAgICAgICAgICAgICAgICBIdWdvIEdpcmF1ZGVsIChAaHVnb2dpcmF1ZGVsKVxuLy9cbi8vICAgICAgVGhpcyBwcm9qZWN0IGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgTUlUIGxpY2Vuc2Vcbi8vLy9cbi8vLyBpbmNsdWRlLW1lZGlhIGxpYnJhcnkgcHVibGljIGNvbmZpZ3VyYXRpb25cbi8vLyBAYXV0aG9yIEVkdWFyZG8gQm91Y2FzXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLy9cblxuXG4vLy9cbi8vLyBDcmVhdGVzIGEgbGlzdCBvZiBnbG9iYWwgYnJlYWtwb2ludHNcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBDcmVhdGVzIGEgc2luZ2xlIGJyZWFrcG9pbnQgd2l0aCB0aGUgbGFiZWwgYHBob25lYFxuLy8vICAkYnJlYWtwb2ludHM6ICgncGhvbmUnOiAzMjBweCk7XG4vLy9cbiRicmVha3BvaW50czogKFxuICAncGhvbmUnOiAzMjBweCxcbiAgJ3RhYmxldCc6IDc2OHB4LFxuICAnZGVza3RvcCc6IDEwMjRweFxuKSAhZGVmYXVsdDtcblxuXG4vLy9cbi8vLyBDcmVhdGVzIGEgbGlzdCBvZiBzdGF0aWMgZXhwcmVzc2lvbnMgb3IgbWVkaWEgdHlwZXNcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBDcmVhdGVzIGEgc2luZ2xlIG1lZGlhIHR5cGUgKHNjcmVlbilcbi8vLyAgJG1lZGlhLWV4cHJlc3Npb25zOiAoJ3NjcmVlbic6ICdzY3JlZW4nKTtcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBDcmVhdGVzIGEgc3RhdGljIGV4cHJlc3Npb24gd2l0aCBsb2dpY2FsIGRpc2p1bmN0aW9uIChPUiBvcGVyYXRvcilcbi8vLyAgJG1lZGlhLWV4cHJlc3Npb25zOiAoXG4vLy8gICAgJ3JldGluYTJ4JzogJygtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpLCAobWluLXJlc29sdXRpb246IDE5MmRwaSknXG4vLy8gICk7XG4vLy9cbiRtZWRpYS1leHByZXNzaW9uczogKFxuICAnc2NyZWVuJzogJ3NjcmVlbicsXG4gICdwcmludCc6ICdwcmludCcsXG4gICdoYW5kaGVsZCc6ICdoYW5kaGVsZCcsXG4gICdsYW5kc2NhcGUnOiAnKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpJyxcbiAgJ3BvcnRyYWl0JzogJyhvcmllbnRhdGlvbjogcG9ydHJhaXQpJyxcbiAgJ3JldGluYTJ4JzogJygtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpLCAobWluLXJlc29sdXRpb246IDE5MmRwaSksIChtaW4tcmVzb2x1dGlvbjogMmRwcHgpJyxcbiAgJ3JldGluYTN4JzogJygtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDMpLCAobWluLXJlc29sdXRpb246IDM1MGRwaSksIChtaW4tcmVzb2x1dGlvbjogM2RwcHgpJ1xuKSAhZGVmYXVsdDtcblxuXG4vLy9cbi8vLyBEZWZpbmVzIGEgbnVtYmVyIHRvIGJlIGFkZGVkIG9yIHN1YnRyYWN0ZWQgZnJvbSBlYWNoIHVuaXQgd2hlbiBkZWNsYXJpbmcgYnJlYWtwb2ludHMgd2l0aCBleGNsdXNpdmUgaW50ZXJ2YWxzXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gSW50ZXJ2YWwgZm9yIHBpeGVscyBpcyBkZWZpbmVkIGFzIGAxYCBieSBkZWZhdWx0XG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+MTI4cHgnKSB7fVxuLy8vXG4vLy8gIC8qIEdlbmVyYXRlczogKi9cbi8vLyAgQG1lZGlhIChtaW4td2lkdGg6IDEyOXB4KSB7fVxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIEludGVydmFsIGZvciBlbXMgaXMgZGVmaW5lZCBhcyBgMC4wMWAgYnkgZGVmYXVsdFxuLy8vICBAaW5jbHVkZSBtZWRpYSgnPjIwZW0nKSB7fVxuLy8vXG4vLy8gIC8qIEdlbmVyYXRlczogKi9cbi8vLyAgQG1lZGlhIChtaW4td2lkdGg6IDIwLjAxZW0pIHt9XG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gSW50ZXJ2YWwgZm9yIHJlbXMgaXMgZGVmaW5lZCBhcyBgMC4xYCBieSBkZWZhdWx0LCB0byBiZSB1c2VkIHdpdGggYGZvbnQtc2l6ZTogNjIuNSU7YFxuLy8vICBAaW5jbHVkZSBtZWRpYSgnPjIuMHJlbScpIHt9XG4vLy9cbi8vLyAgLyogR2VuZXJhdGVzOiAqL1xuLy8vICBAbWVkaWEgKG1pbi13aWR0aDogMi4xcmVtKSB7fVxuLy8vXG4kdW5pdC1pbnRlcnZhbHM6IChcbiAgJ3B4JzogMSxcbiAgJ2VtJzogMC4wMSxcbiAgJ3JlbSc6IDAuMSxcbiAgJyc6IDBcbikgIWRlZmF1bHQ7XG5cbi8vL1xuLy8vIERlZmluZXMgd2hldGhlciBzdXBwb3J0IGZvciBtZWRpYSBxdWVyaWVzIGlzIGF2YWlsYWJsZSwgdXNlZnVsIGZvciBjcmVhdGluZyBzZXBhcmF0ZSBzdHlsZXNoZWV0c1xuLy8vIGZvciBicm93c2VycyB0aGF0IGRvbid0IHN1cHBvcnQgbWVkaWEgcXVlcmllcy5cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBEaXNhYmxlcyBzdXBwb3J0IGZvciBtZWRpYSBxdWVyaWVzXG4vLy8gICRpbS1tZWRpYS1zdXBwb3J0OiBmYWxzZTtcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuLy8vICAgIC5mb28ge1xuLy8vICAgICAgY29sb3I6IHRvbWF0bztcbi8vLyAgICB9XG4vLy8gIH1cbi8vL1xuLy8vICAvKiBHZW5lcmF0ZXM6ICovXG4vLy8gIC5mb28ge1xuLy8vICAgIGNvbG9yOiB0b21hdG87XG4vLy8gIH1cbi8vL1xuJGltLW1lZGlhLXN1cHBvcnQ6IHRydWUgIWRlZmF1bHQ7XG5cbi8vL1xuLy8vIFNlbGVjdHMgd2hpY2ggYnJlYWtwb2ludCB0byBlbXVsYXRlIHdoZW4gc3VwcG9ydCBmb3IgbWVkaWEgcXVlcmllcyBpcyBkaXNhYmxlZC4gTWVkaWEgcXVlcmllcyB0aGF0IHN0YXJ0IGF0IG9yXG4vLy8gaW50ZXJjZXB0IHRoZSBicmVha3BvaW50IHdpbGwgYmUgZGlzcGxheWVkLCBhbnkgb3RoZXJzIHdpbGwgYmUgaWdub3JlZC5cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBUaGlzIG1lZGlhIHF1ZXJ5IHdpbGwgc2hvdyBiZWNhdXNlIGl0IGludGVyY2VwdHMgdGhlIHN0YXRpYyBicmVha3BvaW50XG4vLy8gICRpbS1tZWRpYS1zdXBwb3J0OiBmYWxzZTtcbi8vLyAgJGltLW5vLW1lZGlhLWJyZWFrcG9pbnQ6ICdkZXNrdG9wJztcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuLy8vICAgIC5mb28ge1xuLy8vICAgICAgY29sb3I6IHRvbWF0bztcbi8vLyAgICB9XG4vLy8gIH1cbi8vL1xuLy8vICAvKiBHZW5lcmF0ZXM6ICovXG4vLy8gIC5mb28ge1xuLy8vICAgIGNvbG9yOiB0b21hdG87XG4vLy8gIH1cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBUaGlzIG1lZGlhIHF1ZXJ5IHdpbGwgTk9UIHNob3cgYmVjYXVzZSBpdCBkb2VzIG5vdCBpbnRlcmNlcHQgdGhlIGRlc2t0b3AgYnJlYWtwb2ludFxuLy8vICAkaW0tbWVkaWEtc3VwcG9ydDogZmFsc2U7XG4vLy8gICRpbS1uby1tZWRpYS1icmVha3BvaW50OiAndGFibGV0Jztcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz49ZGVza3RvcCcpIHtcbi8vLyAgICAuZm9vIHtcbi8vLyAgICAgIGNvbG9yOiB0b21hdG87XG4vLy8gICAgfVxuLy8vICB9XG4vLy9cbi8vLyAgLyogTm8gb3V0cHV0ICovXG4vLy9cbiRpbS1uby1tZWRpYS1icmVha3BvaW50OiAnZGVza3RvcCcgIWRlZmF1bHQ7XG5cbi8vL1xuLy8vIFNlbGVjdHMgd2hpY2ggbWVkaWEgZXhwcmVzc2lvbnMgYXJlIGFsbG93ZWQgaW4gYW4gZXhwcmVzc2lvbiBmb3IgaXQgdG8gYmUgdXNlZCB3aGVuIG1lZGlhIHF1ZXJpZXNcbi8vLyBhcmUgbm90IHN1cHBvcnRlZC5cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBUaGlzIG1lZGlhIHF1ZXJ5IHdpbGwgc2hvdyBiZWNhdXNlIGl0IGludGVyY2VwdHMgdGhlIHN0YXRpYyBicmVha3BvaW50IGFuZCBjb250YWlucyBvbmx5IGFjY2VwdGVkIG1lZGlhIGV4cHJlc3Npb25zXG4vLy8gICRpbS1tZWRpYS1zdXBwb3J0OiBmYWxzZTtcbi8vLyAgJGltLW5vLW1lZGlhLWJyZWFrcG9pbnQ6ICdkZXNrdG9wJztcbi8vLyAgJGltLW5vLW1lZGlhLWV4cHJlc3Npb25zOiAoJ3NjcmVlbicpO1xuLy8vICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnLCAnc2NyZWVuJykge1xuLy8vICAgIC5mb28ge1xuLy8vICAgICAgY29sb3I6IHRvbWF0bztcbi8vLyAgICB9XG4vLy8gIH1cbi8vL1xuLy8vICAgLyogR2VuZXJhdGVzOiAqL1xuLy8vICAgLmZvbyB7XG4vLy8gICAgIGNvbG9yOiB0b21hdG87XG4vLy8gICB9XG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gVGhpcyBtZWRpYSBxdWVyeSB3aWxsIE5PVCBzaG93IGJlY2F1c2UgaXQgaW50ZXJjZXB0cyB0aGUgc3RhdGljIGJyZWFrcG9pbnQgYnV0IGNvbnRhaW5zIGEgbWVkaWEgZXhwcmVzc2lvbiB0aGF0IGlzIG5vdCBhY2NlcHRlZFxuLy8vICAkaW0tbWVkaWEtc3VwcG9ydDogZmFsc2U7XG4vLy8gICRpbS1uby1tZWRpYS1icmVha3BvaW50OiAnZGVza3RvcCc7XG4vLy8gICRpbS1uby1tZWRpYS1leHByZXNzaW9uczogKCdzY3JlZW4nKTtcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0JywgJ3JldGluYTJ4Jykge1xuLy8vICAgIC5mb28ge1xuLy8vICAgICAgY29sb3I6IHRvbWF0bztcbi8vLyAgICB9XG4vLy8gIH1cbi8vL1xuLy8vICAvKiBObyBvdXRwdXQgKi9cbi8vL1xuJGltLW5vLW1lZGlhLWV4cHJlc3Npb25zOiAoJ3NjcmVlbicsICdwb3J0cmFpdCcsICdsYW5kc2NhcGUnKSAhZGVmYXVsdDtcblxuLy8vL1xuLy8vIENyb3NzLWVuZ2luZSBsb2dnaW5nIGVuZ2luZVxuLy8vIEBhdXRob3IgSHVnbyBHaXJhdWRlbFxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vL1xuXG5cbi8vL1xuLy8vIExvZyBhIG1lc3NhZ2UgZWl0aGVyIHdpdGggYEBlcnJvcmAgaWYgc3VwcG9ydGVkXG4vLy8gZWxzZSB3aXRoIGBAd2FybmAsIHVzaW5nIGBmZWF0dXJlLWV4aXN0cygnYXQtZXJyb3InKWBcbi8vLyB0byBkZXRlY3Qgc3VwcG9ydC5cbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkbWVzc2FnZSAtIE1lc3NhZ2UgdG8gbG9nXG4vLy9cbkBmdW5jdGlvbiBpbS1sb2coJG1lc3NhZ2UpIHtcbiAgQGlmIGZlYXR1cmUtZXhpc3RzKCdhdC1lcnJvcicpIHtcbiAgICBAZXJyb3IgJG1lc3NhZ2U7XG4gIH0gQGVsc2Uge1xuICAgIEB3YXJuICRtZXNzYWdlO1xuICAgICRfOiBub29wKCk7XG4gIH1cblxuICBAcmV0dXJuICRtZXNzYWdlO1xufVxuXG5cbi8vL1xuLy8vIFdyYXBwZXIgbWl4aW4gZm9yIHRoZSBsb2cgZnVuY3Rpb24gc28gaXQgY2FuIGJlIHVzZWQgd2l0aCBhIG1vcmUgZnJpZW5kbHlcbi8vLyBBUEkgdGhhbiBgQGlmIGltLWxvZygnLi4nKSB7fWAgb3IgYCRfOiBpbS1sb2coJy4uJylgLiBCYXNpY2FsbHksIHVzZSB0aGUgZnVuY3Rpb25cbi8vLyB3aXRoaW4gZnVuY3Rpb25zIGJlY2F1c2UgaXQgaXMgbm90IHBvc3NpYmxlIHRvIGluY2x1ZGUgYSBtaXhpbiBpbiBhIGZ1bmN0aW9uXG4vLy8gYW5kIHVzZSB0aGUgbWl4aW4gZXZlcnl3aGVyZSBlbHNlIGJlY2F1c2UgaXQncyBtdWNoIG1vcmUgZWxlZ2FudC5cbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkbWVzc2FnZSAtIE1lc3NhZ2UgdG8gbG9nXG4vLy9cbkBtaXhpbiBsb2coJG1lc3NhZ2UpIHtcbiAgQGlmIGltLWxvZygkbWVzc2FnZSkge31cbn1cblxuXG4vLy9cbi8vLyBGdW5jdGlvbiB3aXRoIG5vIGBAcmV0dXJuYCBjYWxsZWQgbmV4dCB0byBgQHdhcm5gIGluIFNhc3MgMy4zXG4vLy8gdG8gdHJpZ2dlciBhIGNvbXBpbGluZyBlcnJvciBhbmQgc3RvcCB0aGUgcHJvY2Vzcy5cbi8vL1xuQGZ1bmN0aW9uIG5vb3AoKSB7fVxuXG4vLy9cbi8vLyBEZXRlcm1pbmVzIHdoZXRoZXIgYSBsaXN0IG9mIGNvbmRpdGlvbnMgaXMgaW50ZXJjZXB0ZWQgYnkgdGhlIHN0YXRpYyBicmVha3BvaW50LlxuLy8vXG4vLy8gQHBhcmFtIHtBcmdsaXN0fSAgICRjb25kaXRpb25zICAtIE1lZGlhIHF1ZXJ5IGNvbmRpdGlvbnNcbi8vL1xuLy8vIEByZXR1cm4ge0Jvb2xlYW59IC0gUmV0dXJucyB0cnVlIGlmIHRoZSBjb25kaXRpb25zIGFyZSBpbnRlcmNlcHRlZCBieSB0aGUgc3RhdGljIGJyZWFrcG9pbnRcbi8vL1xuQGZ1bmN0aW9uIGltLWludGVyY2VwdHMtc3RhdGljLWJyZWFrcG9pbnQoJGNvbmRpdGlvbnMuLi4pIHtcbiAgJG5vLW1lZGlhLWJyZWFrcG9pbnQtdmFsdWU6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkaW0tbm8tbWVkaWEtYnJlYWtwb2ludCk7XG5cbiAgQGlmIG5vdCAkbm8tbWVkaWEtYnJlYWtwb2ludC12YWx1ZSB7XG4gICAgQGlmIGltLWxvZygnYCN7JGltLW5vLW1lZGlhLWJyZWFrcG9pbnR9YCBpcyBub3QgYSB2YWxpZCBicmVha3BvaW50LicpIHt9XG4gIH1cblxuICBAZWFjaCAkY29uZGl0aW9uIGluICRjb25kaXRpb25zIHtcbiAgICBAaWYgbm90IG1hcC1oYXMta2V5KCRtZWRpYS1leHByZXNzaW9ucywgJGNvbmRpdGlvbikge1xuICAgICAgJG9wZXJhdG9yOiBnZXQtZXhwcmVzc2lvbi1vcGVyYXRvcigkY29uZGl0aW9uKTtcbiAgICAgICRwcmVmaXg6IGdldC1leHByZXNzaW9uLXByZWZpeCgkb3BlcmF0b3IpO1xuICAgICAgJHZhbHVlOiBnZXQtZXhwcmVzc2lvbi12YWx1ZSgkY29uZGl0aW9uLCAkb3BlcmF0b3IpO1xuXG4gICAgICBAaWYgKCRwcmVmaXggPT0gJ21heCcgYW5kICR2YWx1ZSA8PSAkbm8tbWVkaWEtYnJlYWtwb2ludC12YWx1ZSkgb3JcbiAgICAgICAgICAoJHByZWZpeCA9PSAnbWluJyBhbmQgJHZhbHVlID4gJG5vLW1lZGlhLWJyZWFrcG9pbnQtdmFsdWUpIHtcbiAgICAgICAgQHJldHVybiBmYWxzZTtcbiAgICAgIH1cbiAgICB9IEBlbHNlIGlmIG5vdCBpbmRleCgkaW0tbm8tbWVkaWEtZXhwcmVzc2lvbnMsICRjb25kaXRpb24pIHtcbiAgICAgIEByZXR1cm4gZmFsc2U7XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiB0cnVlO1xufVxuXG4vLy8vXG4vLy8gUGFyc2luZyBlbmdpbmVcbi8vLyBAYXV0aG9yIEh1Z28gR2lyYXVkZWxcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLy9cblxuXG4vLy9cbi8vLyBHZXQgb3BlcmF0b3Igb2YgYW4gZXhwcmVzc2lvblxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRleHByZXNzaW9uIC0gRXhwcmVzc2lvbiB0byBleHRyYWN0IG9wZXJhdG9yIGZyb21cbi8vL1xuLy8vIEByZXR1cm4ge1N0cmluZ30gLSBBbnkgb2YgYD49YCwgYD5gLCBgPD1gLCBgPGAsIGDiiaVgLCBg4omkYFxuLy8vXG5AZnVuY3Rpb24gZ2V0LWV4cHJlc3Npb24tb3BlcmF0b3IoJGV4cHJlc3Npb24pIHtcbiAgQGVhY2ggJG9wZXJhdG9yIGluICgnPj0nLCAnPicsICc8PScsICc8JywgJ+KJpScsICfiiaQnKSB7XG4gICAgQGlmIHN0ci1pbmRleCgkZXhwcmVzc2lvbiwgJG9wZXJhdG9yKSB7XG4gICAgICBAcmV0dXJuICRvcGVyYXRvcjtcbiAgICB9XG4gIH1cblxuICAvLyBJdCBpcyBub3QgcG9zc2libGUgdG8gaW5jbHVkZSBhIG1peGluIGluc2lkZSBhIGZ1bmN0aW9uLCBzbyB3ZSBoYXZlIHRvXG4gIC8vIHJlbHkgb24gdGhlIGBpbS1sb2coLi4pYCBmdW5jdGlvbiByYXRoZXIgdGhhbiB0aGUgYGxvZyguLilgIG1peGluLiBCZWNhdXNlXG4gIC8vIGZ1bmN0aW9ucyBjYW5ub3QgYmUgY2FsbGVkIGFueXdoZXJlIGluIFNhc3MsIHdlIG5lZWQgdG8gaGFjayB0aGUgY2FsbCBpblxuICAvLyBhIGR1bW15IHZhcmlhYmxlLCBzdWNoIGFzIGAkX2AuIElmIGFueWJvZHkgZXZlciByYWlzZSBhIHNjb3BpbmcgaXNzdWUgd2l0aFxuICAvLyBTYXNzIDMuMywgY2hhbmdlIHRoaXMgbGluZSBpbiBgQGlmIGltLWxvZyguLikge31gIGluc3RlYWQuXG4gICRfOiBpbS1sb2coJ05vIG9wZXJhdG9yIGZvdW5kIGluIGAjeyRleHByZXNzaW9ufWAuJyk7XG59XG5cblxuLy8vXG4vLy8gR2V0IGRpbWVuc2lvbiBvZiBhbiBleHByZXNzaW9uLCBiYXNlZCBvbiBhIGZvdW5kIG9wZXJhdG9yXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGV4cHJlc3Npb24gLSBFeHByZXNzaW9uIHRvIGV4dHJhY3QgZGltZW5zaW9uIGZyb21cbi8vLyBAcGFyYW0ge1N0cmluZ30gJG9wZXJhdG9yIC0gT3BlcmF0b3IgZnJvbSBgJGV4cHJlc3Npb25gXG4vLy9cbi8vLyBAcmV0dXJuIHtTdHJpbmd9IC0gYHdpZHRoYCBvciBgaGVpZ2h0YCAob3IgcG90ZW50aWFsbHkgYW55dGhpbmcgZWxzZSlcbi8vL1xuQGZ1bmN0aW9uIGdldC1leHByZXNzaW9uLWRpbWVuc2lvbigkZXhwcmVzc2lvbiwgJG9wZXJhdG9yKSB7XG4gICRvcGVyYXRvci1pbmRleDogc3RyLWluZGV4KCRleHByZXNzaW9uLCAkb3BlcmF0b3IpO1xuICAkcGFyc2VkLWRpbWVuc2lvbjogc3RyLXNsaWNlKCRleHByZXNzaW9uLCAwLCAkb3BlcmF0b3ItaW5kZXggLSAxKTtcbiAgJGRpbWVuc2lvbjogJ3dpZHRoJztcblxuICBAaWYgc3RyLWxlbmd0aCgkcGFyc2VkLWRpbWVuc2lvbikgPiAwIHtcbiAgICAkZGltZW5zaW9uOiAkcGFyc2VkLWRpbWVuc2lvbjtcbiAgfVxuXG4gIEByZXR1cm4gJGRpbWVuc2lvbjtcbn1cblxuXG4vLy9cbi8vLyBHZXQgZGltZW5zaW9uIHByZWZpeCBiYXNlZCBvbiBhbiBvcGVyYXRvclxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRvcGVyYXRvciAtIE9wZXJhdG9yXG4vLy9cbi8vLyBAcmV0dXJuIHtTdHJpbmd9IC0gYG1pbmAgb3IgYG1heGBcbi8vL1xuQGZ1bmN0aW9uIGdldC1leHByZXNzaW9uLXByZWZpeCgkb3BlcmF0b3IpIHtcbiAgQHJldHVybiBpZihpbmRleCgoJzwnLCAnPD0nLCAn4omkJyksICRvcGVyYXRvciksICdtYXgnLCAnbWluJyk7XG59XG5cblxuLy8vXG4vLy8gR2V0IHZhbHVlIG9mIGFuIGV4cHJlc3Npb24sIGJhc2VkIG9uIGEgZm91bmQgb3BlcmF0b3Jcbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkZXhwcmVzc2lvbiAtIEV4cHJlc3Npb24gdG8gZXh0cmFjdCB2YWx1ZSBmcm9tXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRvcGVyYXRvciAtIE9wZXJhdG9yIGZyb20gYCRleHByZXNzaW9uYFxuLy8vXG4vLy8gQHJldHVybiB7TnVtYmVyfSAtIEEgbnVtZXJpYyB2YWx1ZVxuLy8vXG5AZnVuY3Rpb24gZ2V0LWV4cHJlc3Npb24tdmFsdWUoJGV4cHJlc3Npb24sICRvcGVyYXRvcikge1xuICAkb3BlcmF0b3ItaW5kZXg6IHN0ci1pbmRleCgkZXhwcmVzc2lvbiwgJG9wZXJhdG9yKTtcbiAgJHZhbHVlOiBzdHItc2xpY2UoJGV4cHJlc3Npb24sICRvcGVyYXRvci1pbmRleCArIHN0ci1sZW5ndGgoJG9wZXJhdG9yKSk7XG5cbiAgQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgJHZhbHVlKSB7XG4gICAgJHZhbHVlOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJHZhbHVlKTtcbiAgfSBAZWxzZSB7XG4gICAgJHZhbHVlOiB0by1udW1iZXIoJHZhbHVlKTtcbiAgfVxuXG4gICRpbnRlcnZhbDogbWFwLWdldCgkdW5pdC1pbnRlcnZhbHMsIHVuaXQoJHZhbHVlKSk7XG5cbiAgQGlmIG5vdCAkaW50ZXJ2YWwge1xuICAgIC8vIEl0IGlzIG5vdCBwb3NzaWJsZSB0byBpbmNsdWRlIGEgbWl4aW4gaW5zaWRlIGEgZnVuY3Rpb24sIHNvIHdlIGhhdmUgdG9cbiAgICAvLyByZWx5IG9uIHRoZSBgaW0tbG9nKC4uKWAgZnVuY3Rpb24gcmF0aGVyIHRoYW4gdGhlIGBsb2coLi4pYCBtaXhpbi4gQmVjYXVzZVxuICAgIC8vIGZ1bmN0aW9ucyBjYW5ub3QgYmUgY2FsbGVkIGFueXdoZXJlIGluIFNhc3MsIHdlIG5lZWQgdG8gaGFjayB0aGUgY2FsbCBpblxuICAgIC8vIGEgZHVtbXkgdmFyaWFibGUsIHN1Y2ggYXMgYCRfYC4gSWYgYW55Ym9keSBldmVyIHJhaXNlIGEgc2NvcGluZyBpc3N1ZSB3aXRoXG4gICAgLy8gU2FzcyAzLjMsIGNoYW5nZSB0aGlzIGxpbmUgaW4gYEBpZiBpbS1sb2coLi4pIHt9YCBpbnN0ZWFkLlxuICAgICRfOiBpbS1sb2coJ1Vua25vd24gdW5pdCBgI3t1bml0KCR2YWx1ZSl9YC4nKTtcbiAgfVxuXG4gIEBpZiAkb3BlcmF0b3IgPT0gJz4nIHtcbiAgICAkdmFsdWU6ICR2YWx1ZSArICRpbnRlcnZhbDtcbiAgfSBAZWxzZSBpZiAkb3BlcmF0b3IgPT0gJzwnIHtcbiAgICAkdmFsdWU6ICR2YWx1ZSAtICRpbnRlcnZhbDtcbiAgfVxuXG4gIEByZXR1cm4gJHZhbHVlO1xufVxuXG5cbi8vL1xuLy8vIFBhcnNlIGFuIGV4cHJlc3Npb24gdG8gcmV0dXJuIGEgdmFsaWQgbWVkaWEtcXVlcnkgZXhwcmVzc2lvblxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRleHByZXNzaW9uIC0gRXhwcmVzc2lvbiB0byBwYXJzZVxuLy8vXG4vLy8gQHJldHVybiB7U3RyaW5nfSAtIFZhbGlkIG1lZGlhIHF1ZXJ5XG4vLy9cbkBmdW5jdGlvbiBwYXJzZS1leHByZXNzaW9uKCRleHByZXNzaW9uKSB7XG4gIC8vIElmIGl0IGlzIHBhcnQgb2YgJG1lZGlhLWV4cHJlc3Npb25zLCBpdCBoYXMgbm8gb3BlcmF0b3JcbiAgLy8gdGhlbiB0aGVyZSBpcyBubyBuZWVkIHRvIGdvIGFueSBmdXJ0aGVyLCBqdXN0IHJldHVybiB0aGUgdmFsdWVcbiAgQGlmIG1hcC1oYXMta2V5KCRtZWRpYS1leHByZXNzaW9ucywgJGV4cHJlc3Npb24pIHtcbiAgICBAcmV0dXJuIG1hcC1nZXQoJG1lZGlhLWV4cHJlc3Npb25zLCAkZXhwcmVzc2lvbik7XG4gIH1cblxuICAkb3BlcmF0b3I6IGdldC1leHByZXNzaW9uLW9wZXJhdG9yKCRleHByZXNzaW9uKTtcbiAgJGRpbWVuc2lvbjogZ2V0LWV4cHJlc3Npb24tZGltZW5zaW9uKCRleHByZXNzaW9uLCAkb3BlcmF0b3IpO1xuICAkcHJlZml4OiBnZXQtZXhwcmVzc2lvbi1wcmVmaXgoJG9wZXJhdG9yKTtcbiAgJHZhbHVlOiBnZXQtZXhwcmVzc2lvbi12YWx1ZSgkZXhwcmVzc2lvbiwgJG9wZXJhdG9yKTtcblxuICBAcmV0dXJuICcoI3skcHJlZml4fS0jeyRkaW1lbnNpb259OiAjeyR2YWx1ZX0pJztcbn1cblxuLy8vXG4vLy8gU2xpY2UgYCRsaXN0YCBiZXR3ZWVuIGAkc3RhcnRgIGFuZCBgJGVuZGAgaW5kZXhlc1xuLy8vXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge0xpc3R9ICRsaXN0IC0gTGlzdCB0byBzbGljZVxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkc3RhcnQgWzFdIC0gU3RhcnQgaW5kZXhcbi8vLyBAcGFyYW0ge051bWJlcn0gJGVuZCBbbGVuZ3RoKCRsaXN0KV0gLSBFbmQgaW5kZXhcbi8vL1xuLy8vIEByZXR1cm4ge0xpc3R9IFNsaWNlZCBsaXN0XG4vLy9cbkBmdW5jdGlvbiBzbGljZSgkbGlzdCwgJHN0YXJ0OiAxLCAkZW5kOiBsZW5ndGgoJGxpc3QpKSB7XG4gIEBpZiBsZW5ndGgoJGxpc3QpIDwgMSBvciAkc3RhcnQgPiAkZW5kIHtcbiAgICBAcmV0dXJuICgpO1xuICB9XG5cbiAgJHJlc3VsdDogKCk7XG5cbiAgQGZvciAkaSBmcm9tICRzdGFydCB0aHJvdWdoICRlbmQge1xuICAgICRyZXN1bHQ6IGFwcGVuZCgkcmVzdWx0LCBudGgoJGxpc3QsICRpKSk7XG4gIH1cblxuICBAcmV0dXJuICRyZXN1bHQ7XG59XG5cbi8vLy9cbi8vLyBTdHJpbmcgdG8gbnVtYmVyIGNvbnZlcnRlclxuLy8vIEBhdXRob3IgSHVnbyBHaXJhdWRlbFxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vL1xuXG5cbi8vL1xuLy8vIENhc3RzIGEgc3RyaW5nIGludG8gYSBudW1iZXJcbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nIHwgTnVtYmVyfSAkdmFsdWUgLSBWYWx1ZSB0byBiZSBwYXJzZWRcbi8vL1xuLy8vIEByZXR1cm4ge051bWJlcn1cbi8vL1xuQGZ1bmN0aW9uIHRvLW51bWJlcigkdmFsdWUpIHtcbiAgQGlmIHR5cGUtb2YoJHZhbHVlKSA9PSAnbnVtYmVyJyB7XG4gICAgQHJldHVybiAkdmFsdWU7XG4gIH0gQGVsc2UgaWYgdHlwZS1vZigkdmFsdWUpICE9ICdzdHJpbmcnIHtcbiAgICAkXzogaW0tbG9nKCdWYWx1ZSBmb3IgYHRvLW51bWJlcmAgc2hvdWxkIGJlIGEgbnVtYmVyIG9yIGEgc3RyaW5nLicpO1xuICB9XG5cbiAgJGZpcnN0LWNoYXJhY3Rlcjogc3RyLXNsaWNlKCR2YWx1ZSwgMSwgMSk7XG4gICRyZXN1bHQ6IDA7XG4gICRkaWdpdHM6IDA7XG4gICRtaW51czogKCRmaXJzdC1jaGFyYWN0ZXIgPT0gJy0nKTtcbiAgJG51bWJlcnM6ICgnMCc6IDAsICcxJzogMSwgJzInOiAyLCAnMyc6IDMsICc0JzogNCwgJzUnOiA1LCAnNic6IDYsICc3JzogNywgJzgnOiA4LCAnOSc6IDkpO1xuXG4gIC8vIFJlbW92ZSArLy0gc2lnbiBpZiBwcmVzZW50IGF0IGZpcnN0IGNoYXJhY3RlclxuICBAaWYgKCRmaXJzdC1jaGFyYWN0ZXIgPT0gJysnIG9yICRmaXJzdC1jaGFyYWN0ZXIgPT0gJy0nKSB7XG4gICAgJHZhbHVlOiBzdHItc2xpY2UoJHZhbHVlLCAyKTtcbiAgfVxuXG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggc3RyLWxlbmd0aCgkdmFsdWUpIHtcbiAgICAkY2hhcmFjdGVyOiBzdHItc2xpY2UoJHZhbHVlLCAkaSwgJGkpO1xuXG4gICAgQGlmIG5vdCAoaW5kZXgobWFwLWtleXMoJG51bWJlcnMpLCAkY2hhcmFjdGVyKSBvciAkY2hhcmFjdGVyID09ICcuJykge1xuICAgICAgQHJldHVybiB0by1sZW5ndGgoaWYoJG1pbnVzLCAtJHJlc3VsdCwgJHJlc3VsdCksIHN0ci1zbGljZSgkdmFsdWUsICRpKSlcbiAgICB9XG5cbiAgICBAaWYgJGNoYXJhY3RlciA9PSAnLicge1xuICAgICAgJGRpZ2l0czogMTtcbiAgICB9IEBlbHNlIGlmICRkaWdpdHMgPT0gMCB7XG4gICAgICAkcmVzdWx0OiAkcmVzdWx0ICogMTAgKyBtYXAtZ2V0KCRudW1iZXJzLCAkY2hhcmFjdGVyKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgICRkaWdpdHM6ICRkaWdpdHMgKiAxMDtcbiAgICAgICRyZXN1bHQ6ICRyZXN1bHQgKyBtYXAtZ2V0KCRudW1iZXJzLCAkY2hhcmFjdGVyKSAvICRkaWdpdHM7XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiBpZigkbWludXMsIC0kcmVzdWx0LCAkcmVzdWx0KTtcbn1cblxuXG4vLy9cbi8vLyBBZGQgYCR1bml0YCB0byBgJHZhbHVlYFxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR2YWx1ZSAtIFZhbHVlIHRvIGFkZCB1bml0IHRvXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICR1bml0IC0gU3RyaW5nIHJlcHJlc2VudGF0aW9uIG9mIHRoZSB1bml0XG4vLy9cbi8vLyBAcmV0dXJuIHtOdW1iZXJ9IC0gYCR2YWx1ZWAgZXhwcmVzc2VkIGluIGAkdW5pdGBcbi8vL1xuQGZ1bmN0aW9uIHRvLWxlbmd0aCgkdmFsdWUsICR1bml0KSB7XG4gICR1bml0czogKCdweCc6IDFweCwgJ2NtJzogMWNtLCAnbW0nOiAxbW0sICclJzogMSUsICdjaCc6IDFjaCwgJ3BjJzogMXBjLCAnaW4nOiAxaW4sICdlbSc6IDFlbSwgJ3JlbSc6IDFyZW0sICdwdCc6IDFwdCwgJ2V4JzogMWV4LCAndncnOiAxdncsICd2aCc6IDF2aCwgJ3ZtaW4nOiAxdm1pbiwgJ3ZtYXgnOiAxdm1heCk7XG5cbiAgQGlmIG5vdCBpbmRleChtYXAta2V5cygkdW5pdHMpLCAkdW5pdCkge1xuICAgICRfOiBpbS1sb2coJ0ludmFsaWQgdW5pdCBgI3skdW5pdH1gLicpO1xuICB9XG5cbiAgQHJldHVybiAkdmFsdWUgKiBtYXAtZ2V0KCR1bml0cywgJHVuaXQpO1xufVxuXG4vLy9cbi8vLyBUaGlzIG1peGluIGFpbXMgYXQgcmVkZWZpbmluZyB0aGUgY29uZmlndXJhdGlvbiBqdXN0IGZvciB0aGUgc2NvcGUgb2Zcbi8vLyB0aGUgY2FsbC4gSXQgaXMgaGVscGZ1bCB3aGVuIGhhdmluZyBhIGNvbXBvbmVudCBuZWVkaW5nIGFuIGV4dGVuZGVkXG4vLy8gY29uZmlndXJhdGlvbiBzdWNoIGFzIGN1c3RvbSBicmVha3BvaW50cyAocmVmZXJyZWQgdG8gYXMgdHdlYWtwb2ludHMpXG4vLy8gZm9yIGluc3RhbmNlLlxuLy8vXG4vLy8gQGF1dGhvciBIdWdvIEdpcmF1ZGVsXG4vLy9cbi8vLyBAcGFyYW0ge01hcH0gJHR3ZWFrcG9pbnRzIFsoKV0gLSBNYXAgb2YgdHdlYWtwb2ludHMgdG8gYmUgbWVyZ2VkIHdpdGggYCRicmVha3BvaW50c2Bcbi8vLyBAcGFyYW0ge01hcH0gJHR3ZWFrLW1lZGlhLWV4cHJlc3Npb25zIFsoKV0gLSBNYXAgb2YgdHdlYWtlZCBtZWRpYSBleHByZXNzaW9ucyB0byBiZSBtZXJnZWQgd2l0aCBgJG1lZGlhLWV4cHJlc3Npb25gXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gRXh0ZW5kIHRoZSBnbG9iYWwgYnJlYWtwb2ludHMgd2l0aCBhIHR3ZWFrcG9pbnRcbi8vLyAgQGluY2x1ZGUgbWVkaWEtY29udGV4dCgoJ2N1c3RvbSc6IDY3OHB4KSkge1xuLy8vICAgIC5mb28ge1xuLy8vICAgICAgQGluY2x1ZGUgbWVkaWEoJz5waG9uZScsICc8PWN1c3RvbScpIHtcbi8vLyAgICAgICAvLyAuLi5cbi8vLyAgICAgIH1cbi8vLyAgICB9XG4vLy8gIH1cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBFeHRlbmQgdGhlIGdsb2JhbCBtZWRpYSBleHByZXNzaW9ucyB3aXRoIGEgY3VzdG9tIG9uZVxuLy8vICBAaW5jbHVkZSBtZWRpYS1jb250ZXh0KCR0d2Vhay1tZWRpYS1leHByZXNzaW9uczogKCdhbGwnOiAnYWxsJykpIHtcbi8vLyAgICAuZm9vIHtcbi8vLyAgICAgIEBpbmNsdWRlIG1lZGlhKCdhbGwnLCAnPnBob25lJykge1xuLy8vICAgICAgIC8vIC4uLlxuLy8vICAgICAgfVxuLy8vICAgIH1cbi8vLyAgfVxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIEV4dGVuZCBib3RoIGNvbmZpZ3VyYXRpb24gbWFwc1xuLy8vICBAaW5jbHVkZSBtZWRpYS1jb250ZXh0KCgnY3VzdG9tJzogNjc4cHgpLCAoJ2FsbCc6ICdhbGwnKSkge1xuLy8vICAgIC5mb28ge1xuLy8vICAgICAgQGluY2x1ZGUgbWVkaWEoJ2FsbCcsICc+cGhvbmUnLCAnPD1jdXN0b20nKSB7XG4vLy8gICAgICAgLy8gLi4uXG4vLy8gICAgICB9XG4vLy8gICAgfVxuLy8vICB9XG4vLy9cbkBtaXhpbiBtZWRpYS1jb250ZXh0KCR0d2Vha3BvaW50czogKCksICR0d2Vhay1tZWRpYS1leHByZXNzaW9uczogKCkpIHtcbiAgLy8gU2F2ZSBnbG9iYWwgY29uZmlndXJhdGlvblxuICAkZ2xvYmFsLWJyZWFrcG9pbnRzOiAkYnJlYWtwb2ludHM7XG4gICRnbG9iYWwtbWVkaWEtZXhwcmVzc2lvbnM6ICRtZWRpYS1leHByZXNzaW9ucztcblxuICAvLyBVcGRhdGUgZ2xvYmFsIGNvbmZpZ3VyYXRpb25cbiAgJGJyZWFrcG9pbnRzOiBtYXAtbWVyZ2UoJGJyZWFrcG9pbnRzLCAkdHdlYWtwb2ludHMpICFnbG9iYWw7XG4gICRtZWRpYS1leHByZXNzaW9uczogbWFwLW1lcmdlKCRtZWRpYS1leHByZXNzaW9ucywgJHR3ZWFrLW1lZGlhLWV4cHJlc3Npb25zKSAhZ2xvYmFsO1xuXG4gIEBjb250ZW50O1xuXG4gIC8vIFJlc3RvcmUgZ2xvYmFsIGNvbmZpZ3VyYXRpb25cbiAgJGJyZWFrcG9pbnRzOiAkZ2xvYmFsLWJyZWFrcG9pbnRzICFnbG9iYWw7XG4gICRtZWRpYS1leHByZXNzaW9uczogJGdsb2JhbC1tZWRpYS1leHByZXNzaW9ucyAhZ2xvYmFsO1xufVxuXG4vLy8vXG4vLy8gaW5jbHVkZS1tZWRpYSBwdWJsaWMgZXhwb3NlZCBBUElcbi8vLyBAYXV0aG9yIEVkdWFyZG8gQm91Y2FzXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLy9cblxuXG4vLy9cbi8vLyBHZW5lcmF0ZXMgYSBtZWRpYSBxdWVyeSBiYXNlZCBvbiBhIGxpc3Qgb2YgY29uZGl0aW9uc1xuLy8vXG4vLy8gQHBhcmFtIHtBcmdsaXN0fSAgICRjb25kaXRpb25zICAtIE1lZGlhIHF1ZXJ5IGNvbmRpdGlvbnNcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBXaXRoIGEgc2luZ2xlIHNldCBicmVha3BvaW50XG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+cGhvbmUnKSB7IH1cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBXaXRoIHR3byBzZXQgYnJlYWtwb2ludHNcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz5waG9uZScsICc8PXRhYmxldCcpIHsgfVxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFdpdGggY3VzdG9tIHZhbHVlc1xuLy8vICBAaW5jbHVkZSBtZWRpYSgnPj0zNThweCcsICc8ODUwcHgnKSB7IH1cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBXaXRoIHNldCBicmVha3BvaW50cyB3aXRoIGN1c3RvbSB2YWx1ZXNcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz5kZXNrdG9wJywgJzw9MTM1MHB4JykgeyB9XG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gV2l0aCBhIHN0YXRpYyBleHByZXNzaW9uXG4vLy8gIEBpbmNsdWRlIG1lZGlhKCdyZXRpbmEyeCcpIHsgfVxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIE1peGluZyBldmVyeXRoaW5nXG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+PTM1MHB4JywgJzx0YWJsZXQnLCAncmV0aW5hM3gnKSB7IH1cbi8vL1xuQG1peGluIG1lZGlhKCRjb25kaXRpb25zLi4uKSB7XG4gIEBpZiAoJGltLW1lZGlhLXN1cHBvcnQgYW5kIGxlbmd0aCgkY29uZGl0aW9ucykgPT0gMCkgb3JcbiAgICAgIChub3QgJGltLW1lZGlhLXN1cHBvcnQgYW5kIGltLWludGVyY2VwdHMtc3RhdGljLWJyZWFrcG9pbnQoJGNvbmRpdGlvbnMuLi4pKSB7XG4gICAgQGNvbnRlbnQ7XG4gIH0gQGVsc2UgaWYgKCRpbS1tZWRpYS1zdXBwb3J0IGFuZCBsZW5ndGgoJGNvbmRpdGlvbnMpID4gMCkge1xuICAgIEBtZWRpYSAje3VucXVvdGUocGFyc2UtZXhwcmVzc2lvbihudGgoJGNvbmRpdGlvbnMsIDEpKSl9IHtcbiAgICAgIC8vIFJlY3Vyc2l2ZSBjYWxsXG4gICAgICBAaW5jbHVkZSBtZWRpYShzbGljZSgkY29uZGl0aW9ucywgMikuLi4pIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBTYXNzIFZhcmlhYmxlc1xuJGhlcm8tcHJvcG9ydGlvbmFsLXBhZGRpbmc6IDU2LjI1JTsgLy8gOS8xNlxuJG1vYmlsZS1tYXJnaW46IHJlbS1jYWxjKDIwcHgpO1xuXG4kdGlnaHQta2VybmluZzogLTAuMDI1ZW07XG5cbi8vIFJlZGVzaWduIHR5cGUgdG9rZW5zLCBuYW1lZCBhZnRlciB0aGUgRmlnbWEgdmFyaWFibGVzIHNvIHRoZSB0d28gc3RheVxuLy8gY29tcGFyYWJsZS4gRmlnbWEgcmVwb3J0cyBsZXR0ZXItc3BhY2luZyBhcyBhIHBlcmNlbnRhZ2Ugb2YgdGhlIGZvbnQgc2l6ZSDigJRcbi8vIGl0cyAtNSBvbiBhIDY0cHggdGl0bGUgcmVuZGVycyBhcyAtMy4ycHgg4oCUIHNvIHRob3NlIGJlY29tZSBlbSBoZXJlIGFuZCBzdGF5XG4vLyBjb3JyZWN0IGlmIGEgc2l6ZSBldmVyIGNoYW5nZXMuXG4vLyBFdmVyeSByZWRlc2lnbiBzdHlsZSBnb2VzIHRocm91Z2ggdGhlc2UsIHNvIHN3aXRjaGluZyB0aGUgTGF0aW4gZmFjZSBhY3Jvc3Ncbi8vIHRoZSB3aG9sZSBkZXNpZ24gaXMgYSBvbmUtbGluZSBjaGFuZ2UgaGVyZSByYXRoZXIgdGhhbiBhIGh1bnQgdGhyb3VnaCB0aGVcbi8vIHN0eWxlc2hlZXRzIOKAlCBwb2ludCAkcGhjLWZvbnQgYXQgJHBoYy1mb250LXN1aXNzZSBhbmQgZXZlcnl0aGluZyBmb2xsb3dzLlxuLy8gKFRoZSBAZm9udC1mYWNlIGJsb2NrcyBpbiBiYXNlL19mb250cy5zY3NzIGFyZSBub3QgYWZmZWN0ZWQ7IHRoZXkgbmFtZSB0aGVcbi8vIGZhbWlseSBlYWNoIGZpbGUgYWN0dWFsbHkgcHJvdmlkZXMuKVxuJHBoYy1mb250LXN1aXNzZTogJ1N1aXNzZSBJbnRsJywgc2Fucy1zZXJpZjtcbiRwaGMtZm9udC1pbnRlcjogJ0ludGVyJywgc2Fucy1zZXJpZjtcbiRwaGMtZm9udDogJHBoYy1mb250LXN1aXNzZTtcbiRwaGMtZm9udC1qcDogJ05vdG8gU2FucyBKUCcsIHNhbnMtc2VyaWY7XG5cbi8vIEJsb2NrIHNwYWNpbmcgYW5kIGNvbHVtbiB3aWR0aHMsIGZyb20gdGhlIEZpZ21hIGNvbXBvbmVudC4gcmVtIHRocm91Z2hvdXQgc29cbi8vIHRoZSB3aG9sZSBncmlkIHNjYWxlcyB3aXRoIHRoZSByZWFkZXIncyBiYXNlIGZvbnQgc2l6ZSByYXRoZXIgdGhhbiBvbmx5IHRoZVxuLy8gdGV4dCBpbnNpZGUgaXQsIHdoaWNoIHdvdWxkIG90aGVyd2lzZSBidXJzdCBpdHMgY29sdW1ucyB3aGVuIHRleHQgZ3Jvd3MuXG4kcGhjLWJsb2NrLXBhZGRpbmc6IHJlbS1jYWxjKDQwcHgpO1xuJHBoYy1ibG9jay1nYXA6IHJlbS1jYWxjKDIwcHgpO1xuJHBoYy1ibG9jay1yb3ctZ2FwOiByZW0tY2FsYyg0MHB4KTtcbiRwaGMtYmxvY2stbGFiZWwtd2lkdGg6IHJlbS1jYWxjKDQyMHB4KTtcbiRwaGMtYmxvY2stY29sdW1uLW1pbjogcmVtLWNhbGMoNDUwcHgpO1xuJHBoYy1ibG9jay1kZXRhaWwtbWluOiByZW0tY2FsYygzMTBweCk7XG4kcGhjLWJsb2NrLXdpZGUtbWluOiByZW0tY2FsYyg0MDBweCk7XG4kcGhjLWJsb2NrLWludHJvLW1pbjogcmVtLWNhbGMoNTMwcHgpOyAgLy8gdGhlIHByb2ZpbGUgc3RhdGVtZW50LCB3aGljaCBydW5zIGF0IHRpdGxlIHNpemVcblxuLy8gS2V5cyBtYXRjaCB0aGUgLnRleHQtcGhjLSogdXRpbGl0eSBjbGFzcyBuYW1lcyBnZW5lcmF0ZWQgaW5cbi8vIGNvbXBvbmVudHMvX3RleHQtc3R5bGVzLnNjc3MsIHNvIHRoZSBtYXAgaXMgdGhlIG9ubHkgcGxhY2UgdGhlc2UgYXJlIGRlZmluZWQuXG4kcGhjLXR5cGU6IChcbiAgcGFnZWZpZ3VyZXM6ICAgICAgICAoc2l6ZTogMTI4cHgsIGxpbmU6IDE1OHB4LCB3ZWlnaHQ6IDYwMCwgdHJhY2tpbmc6IC0wLjA1ZW0sIGZhbWlseTogJHBoYy1mb250KSxcbiAgcGFnZWZpZ3VyZXNzdXBwb3J0OiAoc2l6ZTogIDk2cHgsIGxpbmU6ICA5OHB4LCB3ZWlnaHQ6IDYwMCwgdHJhY2tpbmc6IC0wLjA1ZW0sIGZhbWlseTogJHBoYy1mb250KSxcbiAgdGl0bGUtcmVndWxhcjogICAgICAoc2l6ZTogIDY0cHgsIGxpbmU6ICA2NnB4LCB3ZWlnaHQ6IDMwMCwgdHJhY2tpbmc6IC0wLjA1ZW0sIGZhbWlseTogJHBoYy1mb250KSxcbiAgdGl0bGUtcHJvZmlsZTogICAgICAoc2l6ZTogIDQycHgsIGxpbmU6ICA0NHB4LCB3ZWlnaHQ6IDQwMCwgdHJhY2tpbmc6IC0wLjAyZW0sIGZhbWlseTogJHBoYy1mb250KSxcbiAgZm9vdGVybGlua2FnZTogICAgICAoc2l6ZTogIDI4cHgsIGxpbmU6ICAzNnB4LCB3ZWlnaHQ6IDUwMCwgdHJhY2tpbmc6ICAgICAgIDAsIGZhbWlseTogJHBoYy1mb250KSxcbiAgc3RhbmRhcmQ6ICAgICAgICAgICAoc2l6ZTogIDIycHgsIGxpbmU6ICAyNHB4LCB3ZWlnaHQ6IDQwMCwgdHJhY2tpbmc6ICAgICAgIDAsIGZhbWlseTogJHBoYy1mb250KSxcbiAgc21hbGx0eXBlOiAgICAgICAgICAoc2l6ZTogIDE2cHgsIGxpbmU6ICAxOHB4LCB3ZWlnaHQ6IDUwMCwgdHJhY2tpbmc6ICAgICAgIDAsIGZhbWlseTogJHBoYy1mb250KSxcbiAgc3RhbmRhcmQtanA6ICAgICAgICAoc2l6ZTogIDE4cHgsIGxpbmU6ICAyNHB4LCB3ZWlnaHQ6IDQwMCwgdHJhY2tpbmc6IC0wLjA0ZW0sIGZhbWlseTogJHBoYy1mb250LWpwKSxcbiAgc21hbGx0eXBlLWpwOiAgICAgICAoc2l6ZTogIDE0cHgsIGxpbmU6ICAxOHB4LCB3ZWlnaHQ6IDUwMCwgdHJhY2tpbmc6IC0wLjAyZW0sIGZhbWlseTogJHBoYy1mb250LWpwKSxcblxuICAvLyBGaWdtYSBjYWxscyB0aGlzIEZSV0Rfc21hbGxfYm9sZC4gSXQgd2FzIG5vdCBhbW9uZyB0aGUgZXhwb3J0ZWQgdGV4dFxuICAvLyBzdHlsZXMsIGFuZCBpdCBpcyB0aGUgb25lIHN0eWxlIHRoZSBkZXNpZ24gc2V0cyBpbiBTdWlzc2UgcmF0aGVyIHRoYW4gdGhlXG4gIC8vIGJvZHkgZmFjZSDigJQgbm93IHRoYXQgdGhlIGxpY2Vuc2VkIGZpbGVzIGFyZSBoZXJlLCBpdCB1c2VzIHRoZW0uXG4gIHNtYWxsYm9sZDogICAgICAgICAgKHNpemU6ICAyNHB4LCBsaW5lOiAgMjZweCwgd2VpZ2h0OiA1MDAsIHRyYWNraW5nOiAgICAgICAwLCBmYW1pbHk6ICRwaGMtZm9udC1zdWlzc2UpXG4pO1xuXG4vLyBDU1MgdmFyaWFibGVzXG46cm9vdCB7XG4gIC0tc2l0ZS13aWR0aDogMTAwdnc7XG4gIC0tbWlkZGxlLWdyZXk6ICM5OTk7XG4gIC0tZGFya2Jyb3duOiAjMjYyNjI2O1xuICAtLW9mZi13aGl0ZTogI0UxRUZFRTtcbiAgLS1saWdodC1ncmV5OiAjZTRlNGU0O1xuICAtLXJlZDogI0ZFNDgyMztcbiAgLS1ibHVlOiAjNEQ5N0JGO1xuICAtLXllbGxvdzogI0Y4RjNDRDtcbiAgLS1vcmFuZ2U6ICNFREEzMTI7XG4gIC0tZ3JlZW46ICMzQzg1OTY7XG4gIC0tcHVycGxlOiAjRUI0QkQxO1xuICAtLWJhbm5lci1ncmV5OiAjOWQ4ZjhjO1xuICAtLWJhbm5lci1yZWQ6ICNGRjQ2MUU7XG4gIC0td2hpdGU6ICNmZmY7XG4gIC0tYmxhY2s6ICMwMDA7XG4gIC0tb2ZmLWJsYWNrOiAjMjIyO1xuICAtLWdyYXk6ICNhYWE7XG4gIC0tbG9hZC1tb3JlLWJhY2tncm91bmQ6ICMwMDA7XG4gIC0tZXh0ZW5zaW9uLWhvbWUtc2xpZGVzOiAjMDAwO1xuICAtLWV4dGVuc2lvbi1jb250ZW50LWdyaWQ6ICMwMDA7XG4gIC0tcGx5ci1jb2xvci1tYWluOiAjZmZmO1xuICAtLXBseXItdmlkZW8tY29udHJvbC1jb2xvci1ob3ZlcjogIzk5OTtcbiAgLS1wbHlyLXZpZGVvLWNvbnRyb2wtYmFja2dyb3VuZC1ob3ZlcjogdHJhbnNwYXJlbnQ7XG4gIC0tcGx5ci1tZW51LWFycm93LXNpemU6IDIwcHg7XG4gIC0tY29sLTE6IGNhbGModmFyKC0tc2l0ZS13aWR0aCkgLyAxMik7XG4gIC0tY29sLTI6IGNhbGModmFyKC0tY29sLTEpICogMik7XG4gIC0tY29sLTM6IGNhbGModmFyKC0tY29sLTEpICogMyk7XG4gIC0tY29sLTQ6IGNhbGModmFyKC0tY29sLTEpICogNCk7XG4gIC0tY29sLTU6IGNhbGModmFyKC0tY29sLTEpICogNSk7XG4gIC0tY29sLTY6IGNhbGModmFyKC0tY29sLTEpICogNik7XG4gIC0tY29sLTc6IGNhbGModmFyKC0tY29sLTEpICogNyk7XG4gIC0tY29sLTg6IGNhbGModmFyKC0tY29sLTEpICogOCk7XG4gIC0tY29sLTk6IGNhbGModmFyKC0tY29sLTEpICogOSk7XG4gIC0tY29sLTEwOiBjYWxjKHZhcigtLWNvbC0xKSAqIDEwKTtcbiAgLS1jb2wtMTE6IGNhbGModmFyKC0tY29sLTEpICogMTEpO1xuICAtLXNjcm9sbGJhcjogY2FsYygxMDB2dyAtIDEwMCUpO1xuICAtLXNlY3Rpb24tbWFyZ2luOiAje3JlbS1jYWxjKDQ2cHgpfTtcbiAgLS1zZWN0aW9uLW1hcmdpbi1kb3VibGU6ICN7cmVtLWNhbGMoOTJweCl9O1xuICAtLWZvbnQtc2l6ZS1zOiAje3JlbS1jYWxjKDIwcHgpfTtcbiAgLS1saW5lLWhlaWdodC1zOiAxLjI1OyAvLyA1MC80MFxuICAtLWZvbnQtc2l6ZS1tOiAje3JlbS1jYWxjKDMwcHgpfTtcbiAgLS1saW5lLWhlaWdodC1tOiAxLjI7IC8vIDcyLzYwXG4gIC0tZm9udC1zaXplLWw6ICN7cmVtLWNhbGMoNDBweCl9O1xuICAtLWxpbmUtaGVpZ2h0LWw6IDE7IC8vIDgwLzgwXG4gIC0tZm9udC1zaXplLXhsOiAje3JlbS1jYWxjKDUwcHgpfTtcbiAgLS1saW5lLWhlaWdodC14bDogMTsgLy8gMTAwLzEwMFxuICAtLWZvbnQtc2l6ZS14eGw6ICN7cmVtLWNhbGMoNjBweCl9O1xuICAtLWxpbmUtaGVpZ2h0LXh4bDogMTsgLy8gMTIwLzEyMFxuICAtLWxldHRlci1zcGFjaW5nLXM6IDA7XG4gIC0tbGV0dGVyLXNwYWNpbmctbTogMDtcbiAgLS1sZXR0ZXItc3BhY2luZy1sOiAwO1xuICAtLWxldHRlci1zcGFjaW5nLXhsOiAwO1xuICAtLWxldHRlci1zcGFjaW5nLXh4bDogMDtcblxuICAvLyBSZWRlc2lnbiBwYWxldHRlLCBmcm9tIHRoZSBGaWdtYSB2YXJpYWJsZXMuIEtlcHQgYXBhcnQgZnJvbSB0aGUgY29sb3Vyc1xuICAvLyBhYm92ZSwgd2hpY2ggZXhpc3RpbmcgcGFnZXMgc3RpbGwgdXNlIOKAlCBub3RoaW5nIGhlcmUgb3ZlcnJpZGVzIHRob3NlLlxuICAtLXBoYy1ibGFjay1hZjogIzE3MTcxNztcbiAgLS1waGMtd2hpdGUtYWY6ICNGQUZBRkE7XG4gIC0tcGhjLXBhcGVyOiAjRkFGQUY2O1xuICAtLXBoYy1lZ2c6ICNFQUVBREE7XG4gIC0tcGhjLXRlYWw6ICNEMURFREU7XG4gIC0tcGhjLXRlYWwtd2FzaG91dDogIzI0MkMyQztcbiAgLS1waGMtZ3JheTogIzg3OTI5MjtcbiAgLS1waGMtZ3JheS13YXNob3V0OiAjNTA1NjU2O1xuICAtLXBoYy1vY2VhbjogIzRFQTVDNDtcblxuICAvLyBSb2xlcywgc28gYnJpZ2h0L2RhcmsgY2FuIGJlIHN3aXRjaGVkIGJ5IHJlYXNzaWduaW5nIHRoZXNlIGFsb25lLlxuICAtLXBoYy1iZzogdmFyKC0tcGhjLXBhcGVyKTtcbiAgLS1waGMtZmc6IHZhcigtLXBoYy1ibGFjay1hZik7XG4gIC0tcGhjLW11dGVkOiB2YXIoLS1waGMtZ3JheS13YXNob3V0KTtcbiAgLS1waGMtcnVsZTogdmFyKC0tcGhjLXRlYWwpO1xuICAtLXBoYy1hY2NlbnQ6IHZhcigtLXBoYy1vY2Vhbik7XG5cbiAgLS1waGMtcGFnZS13aWR0aDogI3tyZW0tY2FsYygxNDQwcHgpfTtcblxuICAvLyBXaGF0IHBoYy1sZW4oKSBtZWFzdXJlcyBhZ2FpbnN0LiBPbmUgcmVtIGhlcmUsIHNvIHRoZSByZWRlc2lnbidzIG93biBwYWdlc1xuICAvLyBzY2FsZSB3aXRoIHRoZSByZWFkZXIncyBicm93c2VyIHNldHRpbmc7IGJhc2UvX2Jhc2Uuc2NzcyBwaW5zIGl0IG9uIHRoZSBvbGRcbiAgLy8gb25lcywgd2hvc2Ugcm9vdCBpcyB0aWVkIHRvIHRoZSB2aWV3cG9ydCBpbnN0ZWFkLiBTZWUgdXRpbHMvX3VuaXQuc2Nzcy5cbiAgLS1waGMtcm9vdDogMXJlbTtcblxuICAvLyBUaGUgbWVudSBiYXIgaXMgdHJhbnNsdWNlbnQg4oCUIDcwJSBpbiB0aGUgZGVzaWduLCB3aGljaCBpcyB3aGF0IG1ha2VzIHRoZVxuICAvLyBcImdsYXNzXCIgd29yayBvbmNlIGl0IGlzIGJsdXJyZWQuIEtlcHQgYXMgbGl0ZXJhbCByZ2JhIGJlY2F1c2UgdGhlIHBhbGV0dGVcbiAgLy8gYWJvdmUgaXMgaGV4IGFuZCBjYW5ub3QgY2FycnkgYW4gYWxwaGEuXG4gIC0tcGhjLW1lbnUtYmc6IHJnYmEoMjA5LCAyMjIsIDIyMiwgMC43KTsgICAvLyBQSEMgVGVhbFxuICAtLXBoYy1tZW51LWZnOiB2YXIoLS1waGMtdGVhbC13YXNob3V0KTtcbiAgLS1waGMtbWVudS1mZy1hY3RpdmU6IHZhcigtLXBoYy13aGl0ZS1hZik7XG5cbiAgLy8gV2hhdCB0aGUgYmFyIGlzIGZpbGxlZCB3aXRoIHdoZXJlIHRoZSByZWZyYWN0aW9uIGNhbm5vdCBydW4uIFRoZSBjb21wb25lbnRcbiAgLy8gY2xlYXJzIGl0cyB0aW50IHRoZXJlLCBvbiB0aGUgYXNzdW1wdGlvbiB0aGF0IGEgYmx1ciBpcyBzdGFuZGluZyBpbiBmb3IgaXQsXG4gIC8vIHdoaWNoIGxlYXZlcyBub3RoaW5nIGF0IGFsbCBiZWhpbmQgdGhlIG1lbnUgaW4gYSBicm93c2VyIHRoYXQgZHJhd3Mgbm8gYmx1clxuICAvLyBlaXRoZXIuXG4gIC8vXG4gIC8vIFRoZSBzYW1lIHZhbHVlIGFzIGFib3ZlLCBiZWNhdXNlIGEgZ3JvdW5kIG9wYXF1ZSBlbm91Z2ggdG8gc3Vydml2ZSBubyBibHVyXG4gIC8vIGlzIG9wYXF1ZSBlbm91Z2ggdG8gaGlkZSBvbmUgd2hlcmUgaXQgZG9lcyB3b3JrLiBJdCBpcyBuYW1lZCBzZXBhcmF0ZWx5IHNvXG4gIC8vIGl0IGNhbiBiZSByYWlzZWQgb24gaXRzIG93biBpZiBzb21lIGJyb3dzZXIgdHVybnMgb3V0IHRvIG5lZWQgaXQg4oCUIHRoZVxuICAvLyB0cmFkZSBpcyBsZWdpYmlsaXR5IHdpdGhvdXQgYSBibHVyIGFnYWluc3QgYmVpbmcgYWJsZSB0byBzZWUgdGhlIGJsdXIgd2l0aFxuICAvLyBvbmUsIGFuZCBvbmx5IHRoaXMgbGluZSBoYXMgdG8gY2hhbmdlIHRvIG1vdmUgYWxvbmcgaXQuXG4gIC8vXG4gIC8vIFdyaXR0ZW4gb3V0IHJhdGhlciB0aGFuIHZhcigtLXBoYy1tZW51LWJnKTogYSB2YXIoKSBpbnNpZGUgYSBjdXN0b21cbiAgLy8gcHJvcGVydHkgaXMgcmVzb2x2ZWQgb24gdGhlIGVsZW1lbnQgdGhhdCBkZWNsYXJlcyBpdCwgc28gcG9pbnRpbmcgYXQgdGhlXG4gIC8vIG9uZSBhYm92ZSB3b3VsZCBmaXggdGhpcyB0byB0aGUgYnJpZ2h0IHZhbHVlIGhlcmUgb24gOnJvb3QgYW5kIGhhbmQgdGhlXG4gIC8vIGRhcmsgcGFnZXMgdGhlIHdyb25nIGNvbG91ciBieSBpbmhlcml0YW5jZS5cbiAgLS1waGMtbWVudS1iZy1mYWxsYmFjazogcmdiYSgyMDksIDIyMiwgMjIyLCAwLjcpOyAgIC8vIFBIQyBUZWFsXG5cbiAgLy8gQSBzdXJmYWNlIHRoYXQgZGVsaWJlcmF0ZWx5IHJ1bnMgb3Bwb3NpdGUgdG8gdGhlIHBhZ2UgaXQgc2l0cyBvbjogYSBsaWdodFxuICAvLyBwYWdlIGdldHMgYSBkYXJrIGJhbmQsIGEgZGFyayBwYWdlIGdldHMgdGhlIGVnZyBvbmUuIFRoZSBmb290ZXIgYW5kIHRoZVxuICAvLyBNb3JlLWZyb20tY2F0ZWdvcnkgYmxvY2sgYm90aCB1c2UgaXQsIHdoaWNoIGlzIHdoeSBpdCBpcyBvbmUgc2V0IG9mIHJvbGVzXG4gIC8vIHJhdGhlciB0aGFuIGEgcGFpciBwZXIgY29tcG9uZW50LlxuICAtLXBoYy1jb250cmFzdC1iZzogdmFyKC0tcGhjLXRlYWwtd2FzaG91dCk7XG4gIC0tcGhjLWNvbnRyYXN0LWZnOiB2YXIoLS1waGMtcGFwZXIpO1xuICAtLXBoYy1jb250cmFzdC1tdXRlZDogdmFyKC0tcGhjLWdyYXkpO1xufVxuXG4vLyBEYXJrIGlzIGEgcGFnZS1sZXZlbCBzd2l0Y2g6IG9ubHkgdGhlIHJvbGVzIGNoYW5nZSwgbmV2ZXIgdGhlIHBhbGV0dGUuXG4ucGhjLXRoZW1lLWRhcmsge1xuICAtLXBoYy1iZzogdmFyKC0tcGhjLWJsYWNrLWFmKTtcbiAgLS1waGMtZmc6IHZhcigtLXBoYy13aGl0ZS1hZik7XG4gIC0tcGhjLW11dGVkOiB2YXIoLS1waGMtZ3JheSk7XG4gIC0tcGhjLXJ1bGU6IHZhcigtLXBoYy10ZWFsLXdhc2hvdXQpO1xuXG4gIC0tcGhjLW1lbnUtYmc6IHJnYmEoMzYsIDQ0LCA0NCwgMC43KTsgICAgICAvLyBQSEMgVGVhbCBXYXNob3V0XG4gIC0tcGhjLW1lbnUtYmctZmFsbGJhY2s6IHJnYmEoMzYsIDQ0LCA0NCwgMC43KTtcbiAgLS1waGMtbWVudS1mZzogdmFyKC0tcGhjLWdyYXkpO1xuXG4gIC0tcGhjLWNvbnRyYXN0LWJnOiB2YXIoLS1waGMtZWdnKTtcbiAgLS1waGMtY29udHJhc3QtZmc6IHZhcigtLXBoYy1ibGFjay1hZik7XG4gIC0tcGhjLWNvbnRyYXN0LW11dGVkOiB2YXIoLS1waGMtZ3JheS13YXNob3V0KTtcbn1cblxuQGluY2x1ZGUgbWVkaWEoJzxkZXNrdG9wLXh4bCcpIHtcbiAgOnJvb3Qge1xuICAgIC0tc2l0ZS13aWR0aDogMTAwdnc7XG4gICAgLy8gLS1jb2wtMTogY2FsYyh2YXIoLS1zaXRlLXdpZHRoKSAvIDEyKTtcbiAgICAvLyAtLWNvbC0yOiBjYWxjKHZhcigtLWNvbC0xKSAqIDIpO1xuICAgIC8vIC0tY29sLTM6IGNhbGModmFyKC0tY29sLTEpICogMyk7XG4gICAgLy8gLS1jb2wtNDogY2FsYyh2YXIoLS1jb2wtMSkgKiA0KTtcbiAgICAvLyAtLWNvbC01OiBjYWxjKHZhcigtLWNvbC0xKSAqIDUpO1xuICAgIC8vIC0tY29sLTY6IGNhbGModmFyKC0tY29sLTEpICogNik7XG4gICAgLy8gLS1jb2wtNzogY2FsYyh2YXIoLS1jb2wtMSkgKiA3KTtcbiAgICAvLyAtLWNvbC04OiBjYWxjKHZhcigtLWNvbC0xKSAqIDgpO1xuICAgIC8vIC0tY29sLTk6IGNhbGModmFyKC0tY29sLTEpKSogOSk7XG4gICAgLy8gLS1jb2wtMTA6IGNhbGModmFyKC0tY29sLTEpICogMTApO1xuICAgIC8vIC0tY29sLTExOiBjYWxjKHZhcigtLWNvbC0xKSAqIDExKTtcbiAgfVxufVxuIiwiLyohIEZsaWNraXR5IHYyLjIuMVxuaHR0cHM6Ly9mbGlja2l0eS5tZXRhZml6enkuY29cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIGRyYWdnYWJsZSAqL1xuLyogLS0tLSBmbGlja2l0eS1idXR0b24gLS0tLSAqL1xuLyogLS0tLSBwcmV2aW91cy9uZXh0IGJ1dHRvbnMgLS0tLSAqL1xuLyogcmlnaHQgdG8gbGVmdCAqL1xuLyogLS0tLSBwYWdlIGRvdHMgLS0tLSAqL1xuLmZsaWNraXR5LWVuYWJsZWQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gIH1cbn1cbi5mbGlja2l0eS12aWV3cG9ydCB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuLmZsaWNraXR5LXNsaWRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbn1cbi5mbGlja2l0eS1lbmFibGVkLmlzLWRyYWdnYWJsZSB7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC5mbGlja2l0eS12aWV3cG9ydCB7XG4gICAgY3Vyc29yOiBtb3ZlO1xuICAgIGN1cnNvcjogLXdlYmtpdC1ncmFiO1xuICAgIGN1cnNvcjogZ3JhYjtcbiAgfVxuICAuZmxpY2tpdHktdmlld3BvcnQuaXMtcG9pbnRlci1kb3duIHtcbiAgICBjdXJzb3I6IC13ZWJraXQtZ3JhYmJpbmc7XG4gICAgY3Vyc29yOiBncmFiYmluZztcbiAgfVxufVxuLmZsaWNraXR5LWJ1dHRvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYmFja2dyb3VuZDogaHNsYSgwLCAwJSwgMTAwJSwgMC43NSk7XG4gIGJvcmRlcjogbm9uZTtcbiAgY29sb3I6ICMzMzM7XG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIDVweCAjMTlGO1xuICB9XG4gICY6YWN0aXZlIHtcbiAgICBvcGFjaXR5OiAwLjY7XG4gIH1cbiAgJjpkaXNhYmxlZCB7XG4gICAgb3BhY2l0eTogMC4zO1xuICAgIGN1cnNvcjogYXV0bztcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgfVxufVxuLmZsaWNraXR5LWJ1dHRvbi1pY29uIHtcbiAgZmlsbDogY3VycmVudENvbG9yO1xufVxuLmZsaWNraXR5LXByZXYtbmV4dC1idXR0b24ge1xuICB0b3A6IDUwJTtcbiAgd2lkdGg6IDQ0cHg7XG4gIGhlaWdodDogNDRweDtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIC5mbGlja2l0eS1idXR0b24taWNvbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDIwJTtcbiAgICB0b3A6IDIwJTtcbiAgICB3aWR0aDogNjAlO1xuICAgIGhlaWdodDogNjAlO1xuICB9XG59XG4uZmxpY2tpdHktcHJldi1uZXh0LWJ1dHRvbi5wcmV2aW91cyB7XG4gIGxlZnQ6IDEwcHg7XG59XG4uZmxpY2tpdHktcHJldi1uZXh0LWJ1dHRvbi5uZXh0IHtcbiAgcmlnaHQ6IDEwcHg7XG59XG4uZmxpY2tpdHktcnRsIHtcbiAgLmZsaWNraXR5LXByZXYtbmV4dC1idXR0b24ucHJldmlvdXMge1xuICAgIGxlZnQ6IGF1dG87XG4gICAgcmlnaHQ6IDEwcHg7XG4gIH1cbiAgLmZsaWNraXR5LXByZXYtbmV4dC1idXR0b24ubmV4dCB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMTBweDtcbiAgfVxuICAuZmxpY2tpdHktcGFnZS1kb3RzIHtcbiAgICBkaXJlY3Rpb246IHJ0bDtcbiAgfVxufVxuLmZsaWNraXR5LXBhZ2UtZG90cyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvdHRvbTogLTI1cHg7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBsaW5lLWhlaWdodDogMTtcblxuICAuZG90IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IDEwcHg7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIG1hcmdpbjogMCA4cHg7XG4gICAgYmFja2dyb3VuZDogIzMzMztcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgb3BhY2l0eTogMC4yNTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cbiAgLmRvdC5pcy1zZWxlY3RlZCB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuIiwiLyohIG5vcm1hbGl6ZS5jc3MgdjguMC4xIHwgTUlUIExpY2Vuc2UgfCBnaXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzcyAqL1xuXG4vKiBEb2N1bWVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBsaW5lIGhlaWdodCBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBQcmV2ZW50IGFkanVzdG1lbnRzIG9mIGZvbnQgc2l6ZSBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2VzIGluIGlPUy5cbiAqL1xuXG5odG1sIHtcbiAgbGluZS1oZWlnaHQ6IDEuMTU7IC8qIDEgKi9cbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvKiAyICovXG59XG5cbi8qIFNlY3Rpb25zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5ib2R5IHtcbiAgbWFyZ2luOiAwO1xufVxuXG4vKipcbiAqIFJlbmRlciB0aGUgYG1haW5gIGVsZW1lbnQgY29uc2lzdGVudGx5IGluIElFLlxuICovXG5cbm1haW4ge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBmb250IHNpemUgYW5kIG1hcmdpbiBvbiBgaDFgIGVsZW1lbnRzIHdpdGhpbiBgc2VjdGlvbmAgYW5kXG4gKiBgYXJ0aWNsZWAgY29udGV4dHMgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgU2FmYXJpLlxuICovXG5cbmgxIHtcbiAgZm9udC1zaXplOiAyZW07XG4gIG1hcmdpbjogMC42N2VtIDA7XG59XG5cbi8qIEdyb3VwaW5nIGNvbnRlbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gRmlyZWZveC5cbiAqIDIuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UgYW5kIElFLlxuICovXG5cbmhyIHtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7IC8qIDEgKi9cbiAgaGVpZ2h0OiAwOyAvKiAxICovXG4gIG92ZXJmbG93OiB2aXNpYmxlOyAvKiAyICovXG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5wcmUge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7IC8qIDEgKi9cbiAgZm9udC1zaXplOiAxZW07IC8qIDIgKi9cbn1cblxuLyogVGV4dC1sZXZlbCBzZW1hbnRpY3NcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogUmVtb3ZlIHRoZSBncmF5IGJhY2tncm91bmQgb24gYWN0aXZlIGxpbmtzIGluIElFIDEwLlxuICovXG5cbmEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLyoqXG4gKiAxLiBSZW1vdmUgdGhlIGJvdHRvbSBib3JkZXIgaW4gQ2hyb21lIDU3LVxuICogMi4gQWRkIHRoZSBjb3JyZWN0IHRleHQgZGVjb3JhdGlvbiBpbiBDaHJvbWUsIEVkZ2UsIElFLCBPcGVyYSwgYW5kIFNhZmFyaS5cbiAqL1xuXG5hYmJyW3RpdGxlXSB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7IC8qIDEgKi9cbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IC8qIDIgKi9cbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkOyAvKiAyICovXG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgd2VpZ2h0IGluIENocm9tZSwgRWRnZSwgYW5kIFNhZmFyaS5cbiAqL1xuXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbmNvZGUsXG5rYmQsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlOyAvKiAxICovXG4gIGZvbnQtc2l6ZTogMWVtOyAvKiAyICovXG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuc21hbGwge1xuICBmb250LXNpemU6IDgwJTtcbn1cblxuLyoqXG4gKiBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBlbGVtZW50cyBmcm9tIGFmZmVjdGluZyB0aGUgbGluZSBoZWlnaHQgaW5cbiAqIGFsbCBicm93c2Vycy5cbiAqL1xuXG5zdWIsXG5zdXAge1xuICBmb250LXNpemU6IDc1JTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5zdWIge1xuICBib3R0b206IC0wLjI1ZW07XG59XG5cbnN1cCB7XG4gIHRvcDogLTAuNWVtO1xufVxuXG4vKiBFbWJlZGRlZCBjb250ZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIFJlbW92ZSB0aGUgYm9yZGVyIG9uIGltYWdlcyBpbnNpZGUgbGlua3MgaW4gSUUgMTAuXG4gKi9cblxuaW1nIHtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xufVxuXG4vKiBGb3Jtc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiAxLiBDaGFuZ2UgdGhlIGZvbnQgc3R5bGVzIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIFJlbW92ZSB0aGUgbWFyZ2luIGluIEZpcmVmb3ggYW5kIFNhZmFyaS5cbiAqL1xuXG5idXR0b24sXG5pbnB1dCxcbm9wdGdyb3VwLFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICBmb250LWZhbWlseTogaW5oZXJpdDsgLyogMSAqL1xuICBmb250LXNpemU6IDEwMCU7IC8qIDEgKi9cbiAgbGluZS1oZWlnaHQ6IDEuMTU7IC8qIDEgKi9cbiAgbWFyZ2luOiAwOyAvKiAyICovXG59XG5cbi8qKlxuICogU2hvdyB0aGUgb3ZlcmZsb3cgaW4gSUUuXG4gKiAxLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlLlxuICovXG5cbmJ1dHRvbixcbmlucHV0IHsgLyogMSAqL1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEVkZ2UsIEZpcmVmb3gsIGFuZCBJRS5cbiAqIDEuIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRmlyZWZveC5cbiAqL1xuXG5idXR0b24sXG5zZWxlY3QgeyAvKiAxICovXG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gKi9cblxuYnV0dG9uLFxuW3R5cGU9XCJidXR0b25cIl0sXG5bdHlwZT1cInJlc2V0XCJdLFxuW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGlubmVyIGJvcmRlciBhbmQgcGFkZGluZyBpbiBGaXJlZm94LlxuICovXG5cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwiYnV0dG9uXCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJyZXNldFwiXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwic3VibWl0XCJdOjotbW96LWZvY3VzLWlubmVyIHtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xuICBwYWRkaW5nOiAwO1xufVxuXG4vKipcbiAqIFJlc3RvcmUgdGhlIGZvY3VzIHN0eWxlcyB1bnNldCBieSB0aGUgcHJldmlvdXMgcnVsZS5cbiAqL1xuXG5idXR0b246LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cImJ1dHRvblwiXTotbW96LWZvY3VzcmluZyxcblt0eXBlPVwicmVzZXRcIl06LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cInN1Ym1pdFwiXTotbW96LWZvY3VzcmluZyB7XG4gIG91dGxpbmU6IDFweCBkb3R0ZWQgQnV0dG9uVGV4dDtcbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBwYWRkaW5nIGluIEZpcmVmb3guXG4gKi9cblxuZmllbGRzZXQge1xuICBwYWRkaW5nOiAwLjM1ZW0gMC43NWVtIDAuNjI1ZW07XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgdGV4dCB3cmFwcGluZyBpbiBFZGdlIGFuZCBJRS5cbiAqIDIuIENvcnJlY3QgdGhlIGNvbG9yIGluaGVyaXRhbmNlIGZyb20gYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBJRS5cbiAqIDMuIFJlbW92ZSB0aGUgcGFkZGluZyBzbyBkZXZlbG9wZXJzIGFyZSBub3QgY2F1Z2h0IG91dCB3aGVuIHRoZXkgemVybyBvdXRcbiAqICAgIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbmxlZ2VuZCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIDEgKi9cbiAgY29sb3I6IGluaGVyaXQ7IC8qIDIgKi9cbiAgZGlzcGxheTogdGFibGU7IC8qIDEgKi9cbiAgbWF4LXdpZHRoOiAxMDAlOyAvKiAxICovXG4gIHBhZGRpbmc6IDA7IC8qIDMgKi9cbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDsgLyogMSAqL1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCB2ZXJ0aWNhbCBhbGlnbm1lbnQgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG4gKi9cblxucHJvZ3Jlc3Mge1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRSAxMCsuXG4gKi9cblxudGV4dGFyZWEge1xuICBvdmVyZmxvdzogYXV0bztcbn1cblxuLyoqXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBJRSAxMC5cbiAqIDIuIFJlbW92ZSB0aGUgcGFkZGluZyBpbiBJRSAxMC5cbiAqL1xuXG5bdHlwZT1cImNoZWNrYm94XCJdLFxuW3R5cGU9XCJyYWRpb1wiXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIDEgKi9cbiAgcGFkZGluZzogMDsgLyogMiAqL1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGN1cnNvciBzdHlsZSBvZiBpbmNyZW1lbnQgYW5kIGRlY3JlbWVudCBidXR0b25zIGluIENocm9tZS5cbiAqL1xuXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIG9kZCBhcHBlYXJhbmNlIGluIENocm9tZSBhbmQgU2FmYXJpLlxuICogMi4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXG4gKi9cblxuW3R5cGU9XCJzZWFyY2hcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLyogMSAqL1xuICBvdXRsaW5lLW9mZnNldDogLTJweDsgLyogMiAqL1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBtYWNPUy5cbiAqL1xuXG5bdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICogMi4gQ2hhbmdlIGZvbnQgcHJvcGVydGllcyB0byBgaW5oZXJpdGAgaW4gU2FmYXJpLlxuICovXG5cbjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLyogMSAqL1xuICBmb250OiBpbmhlcml0OyAvKiAyICovXG59XG5cbi8qIEludGVyYWN0aXZlXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gRWRnZSwgSUUgMTArLCBhbmQgRmlyZWZveC5cbiAqL1xuXG5kZXRhaWxzIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGxpc3QtaXRlbTtcbn1cblxuLyogTWlzY1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMCsuXG4gKi9cblxudGVtcGxhdGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwLlxuICovXG5cbltoaWRkZW5dIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbiIsIlxuLmdyaWQtZGVza3RvcCB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIHdpZHRoOiB2YXIoLS1zaXRlLXdpZHRoKTtcbiAgbGVmdDogY2FsYygoKDEwMHZ3IC0gKHZhcigtLXNpdGUtd2lkdGgpKSkgLSAoMTAwdncgLSAxMDAlKSkgLyAyKTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgei1pbmRleDogMTIwMDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG5cbiAgJi5vZmYge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cblxuICAmX19jb2wge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB3aWR0aDogY2FsYygodmFyKC0tc2l0ZS13aWR0aCkpLzEyKTtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjNzc3O1xuICAgIG9wYWNpdHk6IDAuMTtcbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjNzc3O1xuICAgIH1cbiAgICAmOm50aC1jaGlsZCgyKSB7XG4gICAgICB3aWR0aDogY2FsYygoKHZhcigtLXNpdGUtd2lkdGgpKS8xMikgLSAzMHB4KTtcbiAgICB9XG4gICAgJjpudGgtY2hpbGQoMTMpIHtcbiAgICAgIHdpZHRoOiBjYWxjKCgodmFyKC0tc2l0ZS13aWR0aCkpLzEyKSAtIDMwcHgpO1xuICAgIH1cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgd2lkdGg6IDMwcHg7XG4gICAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjNzc3O1xuICAgIH1cbiAgfVxufVxuXG4ud3JhcHBlciB7XG4gIHdpZHRoOiAxMDAlO1xuXG4gIC8vIFNvIHRoZSBmbG9hdGluZyBcIkJhY2sgdG8gcG9ydGZvbGlvXCIgbWVhc3VyZXMgZnJvbSB0aGUgdG9wIG9mIHRoZSBwYWdlJ3NcbiAgLy8gY29udGVudCByYXRoZXIgdGhhbiBmcm9tIHRoZSB2aWV3cG9ydCDigJQgaXQgc2hvdWxkIHNjcm9sbCBhd2F5IHdpdGggdGhlXG4gIC8vIGhlcm8gaXQgc2l0cyBvbiwgbm90IGZvbGxvdyB0aGUgcmVhZGVyIGRvd24gdGhlIHBhZ2UuXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAmLmJsdXIge1xuICAgIC8vIGZpbHRlcjogYmx1cig4cHgpO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB9XG5cbiAgdHJhbnNpdGlvbjogZmlsdGVyIDAuNHMgZWFzZS1vdXQ7XG59XG5cbi5jb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG59XG5cbi5jb2wge1xuICB3aWR0aDogOC4zMyU7XG5cbiAgJi0xIHtcbiAgICB3aWR0aDogOC4zMyU7XG4gIH1cblxuICAmLTIge1xuICAgIHdpZHRoOiAxNi42NiU7XG4gIH1cblxuICAmLTMge1xuICAgIHdpZHRoOiAyNSU7XG4gIH1cblxuICAmLTQge1xuICAgIHdpZHRoOiAzMy4zMyU7XG4gIH1cblxuICAmLTUge1xuICAgIHdpZHRoOiA0MS42NSU7XG4gIH1cblxuICAmLTYge1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cblxuICAmLTcge1xuICAgIHdpZHRoOiA1OC4zMyU7XG4gIH1cblxuICAmLTgge1xuICAgIHdpZHRoOiA2Ni42NiU7XG4gIH1cblxuICAmLTkge1xuICAgIHdpZHRoOiA3NSU7XG4gIH1cblxuICAmLTEwIHtcbiAgICB3aWR0aDogODMuMzMlO1xuICB9XG5cbiAgJi0xMSB7XG4gICAgd2lkdGg6IDkxLjY2JTtcbiAgfVxuXG4gICYtMTIge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5cbi5vZmZzZXQge1xuICAmLTEge1xuICAgIG1hcmdpbi1sZWZ0OiA4LjMzJTtcbiAgfVxuXG4gICYtMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDE2LjY2JTtcbiAgfVxuXG4gICYtMyB7XG4gICAgbWFyZ2luLWxlZnQ6IDI1JTtcbiAgfVxuXG4gICYtNCB7XG4gICAgbWFyZ2luLWxlZnQ6IDMzLjMzJTtcbiAgfVxuXG4gICYtNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDQxLjY1JTtcbiAgfVxuXG4gICYtNiB7XG4gICAgbWFyZ2luLWxlZnQ6IDUwJTtcbiAgfVxuXG4gICYtNyB7XG4gICAgbWFyZ2luLWxlZnQ6IDU4LjMzJTtcbiAgfVxuXG4gICYtOCB7XG4gICAgbWFyZ2luLWxlZnQ6IDY2LjY2JTtcbiAgfVxuXG4gICYtOSB7XG4gICAgbWFyZ2luLWxlZnQ6IDc1JTtcbiAgfVxuXG4gICYtMTAge1xuICAgIG1hcmdpbi1sZWZ0OiA4My4zMyU7XG4gIH1cblxuICAmLTExIHtcbiAgICBtYXJnaW4tbGVmdDogOTEuNjYlO1xuICB9XG5cbiAgJi0xMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDEwMCU7XG4gIH1cbn1cbi50b3RhbC1jb2xzLW1kIHtcbiAgJi0xIHtcbiAgICA+ICoge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG4gICYtMiB7XG4gICAgPiAqIHtcbiAgICAgIHdpZHRoOiA1MCU7XG4gICAgfVxuICB9XG4gICYtMyB7XG4gICAgPiAqIHtcbiAgICAgIHdpZHRoOiAzMy4zMzMlO1xuICAgIH1cbiAgfVxuICAmLTEyLFxuICAmLTExLFxuICAmLTExLFxuICAmLTEwLFxuICAmLTksXG4gICYtOCxcbiAgJi03LFxuICAmLTYsXG4gICYtNSxcbiAgJi00IHtcbiAgICA+ICoge1xuICAgICAgd2lkdGg6IDI1JTtcbiAgICB9XG4gIH1cbn1cblxuQGluY2x1ZGUgbWVkaWEoJzx0YWJsZXQnKSB7XG4gIC50b3RhbC1jb2xzLXNtIHtcbiAgICAmLTEge1xuICAgICAgPiAqIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgfVxuICAgICYtMiB7XG4gICAgICA+ICoge1xuICAgICAgICB3aWR0aDogNTAlO1xuXG4gICAgICAgICY6Zmlyc3QtY2hpbGQ6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgJi0zIHtcbiAgICAgID4gKiB7XG4gICAgICAgIHdpZHRoOiAzMy4zMzMlO1xuXG4gICAgICAgICY6Zmlyc3QtY2hpbGQ6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgJi00IHtcbiAgICAgID4gKiB7XG4gICAgICAgIHdpZHRoOiAyNSU7XG5cbiAgICAgICAgJjpmaXJzdC1jaGlsZDpsYXN0LWNoaWxkIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AaW5jbHVkZSBtZWRpYSgnPGRlc2t0b3AnKSB7XG4gIC5jb2wge1xuICAgICYtMSxcbiAgICAmLTIsXG4gICAgJi0zLFxuICAgICYtNCxcbiAgICAmLTUsXG4gICAgJi02LFxuICAgICYtNyxcbiAgICAmLTgsXG4gICAgJi05LFxuICAgICYtMTAsXG4gICAgJi0xMSxcbiAgICAmLTEyIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxuXG4gIC5vZmZzZXQge1xuICAgICYtMSxcbiAgICAmLTIsXG4gICAgJi0zLFxuICAgICYtNCxcbiAgICAmLTUsXG4gICAgJi02LFxuICAgICYtNyxcbiAgICAmLTgsXG4gICAgJi05LFxuICAgICYtMTAsXG4gICAgJi0xMSxcbiAgICAmLTEyIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cbiAgfVxuXG4gIC5jb2wtbS0xIHtcbiAgICB3aWR0aDogOC4zMyU7XG4gIH1cblxuICAuY29sLW0tMiB7XG4gICAgd2lkdGg6IDE2LjY2JTtcbiAgfVxuXG4gIC5jb2wtbS0zIHtcbiAgICB3aWR0aDogMjUlO1xuICB9XG5cbiAgLmNvbC1tLTQge1xuICAgIHdpZHRoOiAzMy4zMyU7XG4gIH1cblxuICAuY29sLW0tNSB7XG4gICAgd2lkdGg6IDQxLjY1JTtcbiAgfVxuXG4gIC5jb2wtbS02IHtcbiAgICB3aWR0aDogNTAlO1xuICB9XG5cbiAgLmNvbC1tLTcge1xuICAgIHdpZHRoOiA1OC4zMyU7XG4gIH1cblxuICAuY29sLW0tOCB7XG4gICAgd2lkdGg6IDY2LjY2JTtcbiAgfVxuXG4gIC5jb2wtbS05IHtcbiAgICB3aWR0aDogNzUlO1xuICB9XG5cbiAgLmNvbC1tLTEwIHtcbiAgICB3aWR0aDogODMuMzMlO1xuICB9XG5cbiAgLmNvbC1tLTExIHtcbiAgICB3aWR0aDogOTEuNjYlO1xuICB9XG5cbiAgLmNvbC1tLTEyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIC5vZmZzZXQtbS0xIHtcbiAgICBtYXJnaW4tbGVmdDogOC4zMyU7XG4gIH1cblxuICAub2Zmc2V0LW0tMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDE2LjY2JTtcbiAgfVxuXG4gIC5vZmZzZXQtbS0zIHtcbiAgICBtYXJnaW4tbGVmdDogMjUlO1xuICB9XG5cbiAgLm9mZnNldC1tLTQge1xuICAgIG1hcmdpbi1sZWZ0OiAzMy4zMyU7XG4gIH1cblxuICAub2Zmc2V0LW0tNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDQxLjY1JTtcbiAgfVxuXG4gIC5vZmZzZXQtbS02IHtcbiAgICBtYXJnaW4tbGVmdDogNTAlO1xuICB9XG5cbiAgLm9mZnNldC1tLTcge1xuICAgIG1hcmdpbi1sZWZ0OiA1OC4zMyU7XG4gIH1cblxuICAub2Zmc2V0LW0tOCB7XG4gICAgbWFyZ2luLWxlZnQ6IDY2LjY2JTtcbiAgfVxuXG4gIC5vZmZzZXQtbS05IHtcbiAgICBtYXJnaW4tbGVmdDogNzUlO1xuICB9XG5cbiAgLm9mZnNldC1tLTEwIHtcbiAgICBtYXJnaW4tbGVmdDogODMuMzMlO1xuICB9XG5cbiAgLm9mZnNldC1tLTExIHtcbiAgICBtYXJnaW4tbGVmdDogOTEuNjYlO1xuICB9XG5cbiAgLm9mZnNldC1tLTEyIHtcbiAgICBtYXJnaW4tbGVmdDogMTAwJTtcbiAgfVxufVxuIiwiaHRtbCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cbiAgLy8gMTAwJSBob25vdXJzIHdoYXRldmVyIGJhc2Ugc2l6ZSB0aGUgcmVhZGVyIGhhcyBzZXQgaW4gdGhlaXIgYnJvd3NlciwgYW5kXG4gIC8vIGV2ZXJ5IHJlbSBpbiB0aGUgcmVkZXNpZ24gc2NhbGVzIHdpdGggaXQuIFRoZSBvbGQgZGVzaWduIGluc3RlYWQgcGlubmVkIHRoZVxuICAvLyByb290IHRvIHRoZSB2aWV3cG9ydCwgd2hpY2ggbWVhbnQgYSByZW0gZHJpZnRlZCB3aXRoIHdpbmRvdyB3aWR0aCBhbmQgbm9cbiAgLy8gYW1vdW50IG9mIHpvb21pbmcgY2hhbmdlZCB0aGUgdHlwZSDigJQgc28gdGhhdCBzdGF5cyB3aXRoIHRoZSBvbGQgcGFnZXMgb25seS5cbiAgZm9udC1zaXplOiAxMDAlO1xuXG4gIC8vIFBhc3QgdGhlIGRlc2lnbidzIG93biAxNDQwIGNhbnZhcyB0aGUgdHlwZSBhbmQgdGhlIGxheW91dCBncm93IHdpdGggdGhlXG4gIC8vIHdpbmRvdywgc28gYSB2ZXJ5IHdpZGUgc2NyZWVuIGlzIG5vdCBqdXN0IG1vcmUgd2hpdGVzcGFjZS4gQmVsb3cgMTQ0MCBpdFxuICAvLyBzdGF5cyBmbGF0LCB3aGljaCBrZWVwcyBtb2JpbGUgYXQgdGhlIHNhbWUgc2l6ZXMgYXMgZGVza3RvcCBhcyBpbnRlbmRlZC5cbiAgLy9cbiAgLy8gMC43MDNlbSArIDAuMzN2dyBpcyBleGFjdGx5IDFyZW0gYXQgMTQ0MCwgc28gdGhlIGRlc2lnbiBzdGlsbCBtYXRjaGVzIGl0c1xuICAvLyBjYW52YXMgdG8gdGhlIHBpeGVsLiBJdCBpcyBlbSByYXRoZXIgdGhhbiByZW0gb24gcHVycG9zZTogaW4gZm9udC1zaXplIG9uXG4gIC8vIHRoZSByb290IGVsZW1lbnQgcmVtIHJlc29sdmVzIHRvIHRoZSBpbml0aWFsIDE2cHggYW5kIHdvdWxkIHRocm93IGF3YXkgdGhlXG4gIC8vIHJlYWRlcidzIG93biBzZXR0aW5nLCB3aGVyZWFzIGVtIGluaGVyaXRzIGl0LlxuICBAaW5jbHVkZSBtZWRpYSgnPj1kZXNrdG9wLXhsJykge1xuICAgIGZvbnQtc2l6ZTogY2FsYygwLjcwM2VtICsgMC4zM3Z3KTtcbiAgfVxuXG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG5cbiAgJi5vbGQge1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBmb250LXNpemU6IGNhbGMoMTRweCArIC4zM3Z3KTtcblxuICAgIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbiAgICAgIGZvbnQtc2l6ZTogY2FsYygxMnB4ICsgLjMzdncpO1xuICAgIH1cblxuICAgIC8vIFRoZSBtZW51LCBmb290ZXIgYW5kIGJhY2sgbGluayBhcmUgdGhlIHJlZGVzaWduJ3MgaGVyZSB0b28sIGFuZCB0aGV5IGFyZVxuICAgIC8vIGZpeGVkIHRvIHRoZSB3aW5kb3cgcmF0aGVyIHRoYW4gdG8gdGhpcyBwYWdlIOKAlCBzbyB0aGV5IG11c3Qgbm90IGZvbGxvd1xuICAgIC8vIHRoaXMgcm9vdCwgb3IgdGhlIGJhciB3b3VsZCBjaGFuZ2Ugc2l6ZSBhcyB0aGUgcmVhZGVyIG1vdmVzIGJldHdlZW4gYW5cbiAgICAvLyBvbGQgcGFnZSBhbmQgYSByZWJ1aWx0IG9uZS4gSGVsZCBhdCBhIGZsYXQgMTZweCwgd2hpY2ggY29zdHMgbm90aGluZzpcbiAgICAvLyB0aGUgcm9vdCBhYm92ZSBhbHJlYWR5IGlnbm9yZXMgdGhlIHJlYWRlcidzIHNldHRpbmcuIFNlZSB1dGlscy9fdW5pdC5zY3NzLlxuICAgIC0tcGhjLXJvb3Q6IDE2cHg7XG4gIH1cbn1cblxuKixcbio6YmVmb3JlLFxuKjphZnRlciB7XG4gIGJveC1zaXppbmc6IGluaGVyaXQ7XG59XG5cbmJvZHkge1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGZvbnQtZmFtaWx5OiBcIkludGVyXCIsIEhlbHZldGljYSwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBBcmlhbDtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXMpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tbGV0dGVyLXNwYWNpbmctcyk7XG5cbiAgLy8gU3VwcG9ydGVkIEludGVyIGZlYXR1cmVzOiB0bnVtLCBmcmFjLCBjYXNlLCBjY21wLCBkbGlnLCBudW1yLCBkbm9tLCBzdXBzLCBzdWJzLCBjdlhYXG4gIC8vIGZvbnQtZmVhdHVyZS1zZXR0aW5nczogXCJzczAzXCIgMSwgXCJjdlhYXCIgMTtcbiAgZm9udC1mZWF0dXJlLXNldHRpbmdzOiBcInRudW1cIiAxO1xuICBmb250LWZlYXR1cmUtc2V0dGluZ3M6IFwiZnJhY1wiIDE7XG4gIGZvbnQtZmVhdHVyZS1zZXR0aW5nczogXCJjYXNlXCIgMTtcbiAgZm9udC1mZWF0dXJlLXNldHRpbmdzOiBcImNjbXBcIiAxO1xuICBmb250LWZlYXR1cmUtc2V0dGluZ3M6IFwiZGxpZ1wiIDE7XG4gIGZvbnQtZmVhdHVyZS1zZXR0aW5nczogXCJudW1yXCIgMTtcbiAgZm9udC1mZWF0dXJlLXNldHRpbmdzOiAgXCJkbm9tXCIgMTtcbiAgZm9udC1mZWF0dXJlLXNldHRpbmdzOiBcInN1cHNcIiAxO1xuICBmb250LWZlYXR1cmUtc2V0dGluZ3M6IFwic3Vic1wiIDE7XG4gIGZvbnQtZmVhdHVyZS1zZXR0aW5nczogXCJjdlhYXCIgMTtcbiAgLy8gZm9udC1mZWF0dXJlLXNldHRpbmdzOiBcInRudW1cIiAxLCBcImZyYWNcIiAxLCBcImNhc2VcIiAxLCBcImNjbXBcIiAxLCBcImRsaWdcIiAxLCBcIm51bXJcIiAxLCBcImRub21cIiAxLCBcInN1cHNcIiAxLCBcInN1YnNcIiAxLCBcImN2WFhcIjtcbiAgLy8gZm9udC12YXJpYW50LWFsdGVybmF0ZXM6IHN0eWxlc2V0KHNzMDEpOyAvKiBTdHlsaXN0aWMgc2V0IDEgb24sIGhpZ2gtbGV2ZWwgKi9cbn1cblxuLy8gSGVhZGluZyBhbmQgcGFyYWdyYXBoIGRlZmF1bHRzIG5vdyBsaXZlIGluIGJhc2UvX3R5cG9ncmFwaHkuc2Nzcywgd2l0aCB0aGVcbi8vIHByZS1yZWRlc2lnbiB2ZXJzaW9ucyBrZXB0IGluIGJhc2UvX3R5cG9ncmFwaHktbGVnYWN5LnNjc3MgdW5kZXIgYm9keS5vbGQuXG5cbjo6c2VsZWN0aW9uIHtcbiAgYmFja2dyb3VuZDogI2IzZDRmYztcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG5cbmEge1xuICBjb2xvcjogdmFyKC0tYmxhY2spO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgJjpob3ZlciB7XG4gICAgY29sb3I6IHZhcigtLW1pZGRsZS1ncmV5KTtcbiAgfVxufVxuXG5hdWRpbyB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbmNhbnZhcyB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbmltZyB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbnZpZGVvIHtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuZmllbGRzZXQge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogMDtcbn1cblxudGV4dGFyZWEge1xuICByZXNpemU6IHZlcnRpY2FsO1xufVxuXG5vbCxcbnVsIHtcbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxuXG4gICY6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxuXG4gIGxpIHtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLW0pO1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1tKTtcbiAgICBsZXR0ZXItc3BhY2luZzogdmFyKC0tbGV0dGVyLXNwYWNpbmctbSk7XG4gIH1cblxuICBsaStsaSB7XG4gICAgbWFyZ2luLXRvcDogMTVweDtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhKCc8dGFibGV0Jykge1xuICAgIGxpIHtcbiAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXMpO1xuICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXMpO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWxldHRlci1zcGFjaW5nLXMpO1xuICAgICAgcGFkZGluZy1sZWZ0OiAxM3B4O1xuICAgIH1cbiAgfVxufVxuXG51bCB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuXG4gID4gbGkge1xuICAgIHRleHQtaW5kZW50OiAtMXB4O1xuICAgIHBhZGRpbmctbGVmdDogMTJweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlxcMjAxNFwiO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogMDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYSgnPj1kZXNrdG9wJykge1xuICAgICAgcGFkZGluZy1sZWZ0OiAxOHB4O1xuICAgIH1cbiAgfVxufVxuXG5vbCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGNvdW50ZXItcmVzZXQ6IHBldGVyaGFpbmVyLWN1c3RvbS1jb3VudGVyO1xuXG4gIGxpIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgY291bnRlci1pbmNyZW1lbnQ6IHBldGVyaGFpbmVyLWN1c3RvbS1jb3VudGVyO1xuXG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogY291bnRlcihwZXRlcmhhaW5lci1jdXN0b20tY291bnRlcik7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTQwcHgpO1xuICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuICB9XG59XG5cbi8vIERlZmluZXMgc2VjdGlvbi13cmFwcGVyIGFuZCB0aGUgY29sb3IgYXR0cmlidXRlc1xuLnNlY3Rpb24td3JhcHBlciB7XG4gIHdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBibG9jaztcblxuICAmLS1yZWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXJlZCk7XG4gIH1cblxuICAmLS1ibGFjayB7XG4gICAgY29sb3I6IHZhcigtLXdoaXRlKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ibGFjayk7XG4gIH1cblxuICAmLS1ncmV5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1taWRkbGUtZ3JleSk7XG4gICAgY29sb3I6IHZhcigtLXdoaXRlKTtcbiAgfVxufVxuXG4ubWFpbiAuYmFja2dyb3VuZC1jYXBwdWNjaW5vLFxuLmJhY2tncm91bmQtY2FwcHVjY2lubyB7XG5cbiAgYSxcbiAgYSA+ICoge1xuICAgIGNvbG9yOiB2YXIoLS13aGl0ZSk7XG4gIH1cbn1cblxuXG5cblxuLnNlY3Rpb24tY29udGFpbmVyIHtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXgtd2lkdGg6IHZhcigtLXNpdGUtd2lkdGgpO1xuXG4gICYtLWZ1bGwge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG59XG5cbm1haW4ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBmbGV4LWZsb3c6IHdyYXA7XG59XG5cbi5hcnRpY2xlLW1haW4ge1xuICBtYXJnaW46IDBweCBhdXRvIDBweDtcbiAgbWF4LXdpZHRoOiB2YXIoLS1zaXRlLXdpZHRoKTtcbn1cblxuLmhlYWRsZXNzIHtcbiAgcGFkZGluZy10b3A6IDEzMHB4O1xufVxuXG4uYXJyb3ctbGluayB7XG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXFwyMTkyXCI7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICB0cmFuc2l0aW9uOiBtYXJnaW4gMC4ycyBlYXNlLW91dDtcbiAgfVxuXG4gIEBtZWRpYSAoaG92ZXI6IGhvdmVyKSB7XG4gICAgJjpob3ZlciB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBtYXJnaW4tbGVmdDogMjBweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuc21hbGwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXMpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtcyk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1sZXR0ZXItc3BhY2luZy1zKTtcbn1cblxuXG4ubWFpbiB7XG4gIC5pbnRyby1zZWN0aW9uX19jYWxsIHtcbiAgICBhIHtcbiAgICAgICY6aG92ZXIge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnRleHQtd2hpdGUge1xuICAgIGNvbG9yOiAjZmZmO1xuICB9XG5cbiAgLy8gR3JleSBpcyB0aGUgb2xkIGRlc2lnbidzIGxpbmsgY29sb3VyLCBhbmQgaXQgaXMgc2V0IGhlcmUgd2l0aCBhbiBlbGVtZW50XG4gIC8vIGluc2lkZSBhIGNsYXNzIOKAlCB3aGljaCBvdXRyYW5rcyBhIHBsYWluIGNsYXNzLCBzbyBpdCB3YXMgcmVhY2hpbmcgcGFzdFxuICAvLyAucGhjLWJsb2NrX19saW5rJ3MgYGNvbG9yOiBpbmhlcml0YCBhbmQgZ3JleWluZyB0aGUgcmVkZXNpZ24ncyBsaW5rcyB0b28uXG4gIC8vIFRoZSByZWRlc2lnbiB0YWtlcyBpdHMgaW5rIGZyb20gdGhlIHBhZ2Ugcm9sZXMsIHNvIHRoaXMgc3RlcHMgYXNpZGUgZm9yXG4gIC8vIGFueXRoaW5nIGNhcnJ5aW5nIGEgcGhjLSBjbGFzcywgdGhlIHNhbWUgd2F5IHRoZSBsZWdhY3kgdHlwZSBydWxlcyBzdGVwXG4gIC8vIGFzaWRlIGZvciB0aGUgdGV4dC1waGMtKiB1dGlsaXRpZXMuXG4gIGE6bm90KFtjbGFzcyo9J3BoYy0nXSkge1xuICAgIGNvbG9yOiB2YXIoLS1taWRkbGUtZ3JleSk7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgLy8gVGhlIGhlYWRpbmcgc2l6ZXMgdGhhdCB1c2VkIHRvIHNpdCBoZXJlIGFyZSBpbiBiYXNlL190eXBvZ3JhcGh5LWxlZ2FjeS5zY3NzXG4gIC8vIHVuZGVyIGJvZHkub2xkLiBMaW5rIHN0eWxpbmcgaW5zaWRlIGhlYWRpbmdzIHN0YXlzLCBzaW5jZSBpdCBpcyBub3QgdHlwZS5cbiAgaDIge1xuICAgIGEge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgY29sb3I6IHZhcigtLW1pZGRsZS1ncmV5KTtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHRhYmxlLFxuICBoMSxcbiAgaDIsXG4gIGgzLFxuICBoNCxcbiAgcCB7XG4gICAgYSB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICBjb2xvcjogdmFyKC0tbWlkZGxlLWdyZXkpO1xuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICB9XG5cbiAgICAgICYuYXJyb3ctbGluayB7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFRoZSByZXNwb25zaXZlIGhlYWRpbmcgYW5kIHBhcmFncmFwaCBzaXplcyB0aGF0IHVzZWQgdG8gc2l0IGhlcmUgbW92ZWQgdG9cbiAgLy8gYmFzZS9fdHlwb2dyYXBoeS1sZWdhY3kuc2NzcyB1bmRlciBib2R5Lm9sZCwgYWxvbmcgd2l0aCB0aGUgcmVzdCBvZiB0aGVcbiAgLy8gcHJlLXJlZGVzaWduIHR5cGUuXG59XG5cbi8vIEBpbmNsdWRlIG1lZGlhKCc8ZGVza3RvcCcpIHtcbi8vICAgLm1haW4ge1xuLy8gICAgIHBhZGRpbmctdG9wOiB2YXIoLS1zZWN0aW9uLW1hcmdpbik7XG4vLyAgIH1cbi8vIH1cblxuXG5cbi8vIFJlbW92ZSB0ZWxlcGhvbmUgZm9ybWF0dGluZ1xuYVtocmVmXj1cInRlbFwiXSB7XG4gIGNvbG9yOiBpbmhlcml0O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cblxuLmtlcm5pbmctMjUge1xuICBsZXR0ZXItc3BhY2luZzogJHRpZ2h0LWtlcm5pbmc7XG59XG5cbi50eXBlLXMge1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1zKSAhaW1wb3J0YW50O1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtcykgIWltcG9ydGFudDtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWxldHRlci1zcGFjaW5nLXMpICFpbXBvcnRhbnQ7XG59XG4udHlwZS1tIHtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtbSkgIWltcG9ydGFudDtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LW0pICFpbXBvcnRhbnQ7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1sZXR0ZXItc3BhY2luZy1tKSAhaW1wb3J0YW50O1xufVxuLnR5cGUtbCB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWwpICFpbXBvcnRhbnQ7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1sKSAhaW1wb3J0YW50O1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tbGV0dGVyLXNwYWNpbmctbCkgIWltcG9ydGFudDtcbn1cbi50eXBlLXhsIHtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUteGwpICFpbXBvcnRhbnQ7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC14bCkgIWltcG9ydGFudDtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWxldHRlci1zcGFjaW5nLXhsKSAhaW1wb3J0YW50O1xufVxuLnR5cGUteHhsIHtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUteHhsKSAhaW1wb3J0YW50O1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQteHhsKSAhaW1wb3J0YW50O1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tbGV0dGVyLXNwYWNpbmcteHhsKSAhaW1wb3J0YW50O1xufVxuIiwiLy8gRGVmYXVsdCB0eXBvZ3JhcGh5IOKAlCB0aGUgcmVkZXNpZ24uXG4vL1xuLy8gUGxhaW4gZWxlbWVudHMgY2FycnkgdGhlIHJlZGVzaWduJ3MgdHlwZSwgc28gY29udGVudCB3cml0dGVuIGluIHRoZSBlZGl0b3Jcbi8vIGxvb2tzIHJpZ2h0IHdpdGhvdXQgYW55b25lIHJlYWNoaW5nIGZvciBhIGNsYXNzLiBUaGUgLnRleHQtcGhjLSogdXRpbGl0aWVzXG4vLyBhcmUgc2luZ2xlIGNsYXNzZXMgYW5kIHRoZXNlIGFyZSBiYXJlIGVsZW1lbnRzLCBzbyBhIHV0aWxpdHkgYWx3YXlzIHdpbnNcbi8vIHdoZXJlIGEgc3BlY2lmaWMgc3R5bGUgaXMgd2FudGVkLlxuLy9cbi8vIFBhZ2VzIHRoYXQgaGF2ZSBub3QgbW92ZWQgdG8gdGhlIHJlZGVzaWduIGNhcnJ5IGBvbGRgIG9uIHRoZSBib2R5IGFuZCBnZXRcbi8vIGJhc2UvX3R5cG9ncmFwaHktbGVnYWN5LnNjc3MgaW5zdGVhZC5cbi8vXG4vLyBIZWFkaW5ncyBiZWxvdyBoMSBhcmUgYSBqdWRnZW1lbnQgY2FsbDogdGhlIGRlc2lnbiBuYW1lcyBzdHlsZXMgYnkgcm9sZVxuLy8gKFRpdGxlX1JlZ3VsYXIsIFRpdGxlX1Byb2ZpbGUpIHJhdGhlciB0aGFuIGJ5IGhlYWRpbmcgbGV2ZWwsIHNvIHRoZXNlIGFyZVxuLy8gbWFwcGVkIHRvIHRoZSBuZWFyZXN0IGVxdWl2YWxlbnQgYW5kIGFyZSB3b3J0aCByZXZpc2l0aW5nIG9uY2UgdGhlIHJlZGVzaWduZWRcbi8vIHBhZ2VzIHNob3cgd2hpY2ggbGV2ZWxzIGFjdHVhbGx5IGdldCB1c2VkLlxuXG4kcGhjLXR5cGUtbWFyZ2luOiAkcGhjLWJsb2NrLWdhcDtcblxuLy8gQSByZWRlc2lnbiBwYWdlIHRha2VzIGl0cyBncm91bmQgYW5kIGluayBmcm9tIHRoZSByb2xlIHZhcmlhYmxlcywgc28gYnJpZ2h0XG4vLyBhbmQgZGFyayBhcmUgdGhlIHNhbWUgc3R5bGVzaGVldCB3aXRoIGZvdXIgdmFsdWVzIHN3YXBwZWQuIExlZ2FjeSBwYWdlcyBhcmVcbi8vIHVudG91Y2hlZCDigJQgbmVpdGhlciBjbGFzcyBpcyBwcmVzZW50IG9uIHRoZW0uXG4ucGhjLXRoZW1lLWJyaWdodCxcbi5waGMtdGhlbWUtZGFyayB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXBoYy1iZyk7XG4gIGNvbG9yOiB2YXIoLS1waGMtZmcpO1xufVxuXG5oMSB7XG4gIEBpbmNsdWRlIHBoYy10eXBlKHRpdGxlLXJlZ3VsYXIpO1xuXG4gIG1hcmdpbjogMCAwICRwaGMtdHlwZS1tYXJnaW47XG59XG5cbmgyIHtcbiAgQGluY2x1ZGUgcGhjLXR5cGUodGl0bGUtcHJvZmlsZSk7XG5cbiAgbWFyZ2luOiAwIDAgJHBoYy10eXBlLW1hcmdpbjtcbn1cblxuaDMge1xuICBAaW5jbHVkZSBwaGMtdHlwZShmb290ZXJsaW5rYWdlKTtcblxuICBtYXJnaW46IDAgMCAkcGhjLXR5cGUtbWFyZ2luO1xufVxuXG5oNCxcbmg1LFxuaDYge1xuICBAaW5jbHVkZSBwaGMtdHlwZShzdGFuZGFyZCk7XG5cbiAgbWFyZ2luOiAwIDAgJHBoYy10eXBlLW1hcmdpbjtcbn1cblxucCB7XG4gIEBpbmNsdWRlIHBoYy10eXBlKHN0YW5kYXJkKTtcblxuICBtYXJnaW46IDAgMCAkcGhjLXR5cGUtbWFyZ2luO1xufVxuXG5zbWFsbCB7XG4gIEBpbmNsdWRlIHBoYy10eXBlKHNtYWxsdHlwZSk7XG59XG5cbi8vIEphcGFuZXNlIGlzIGRlbGliZXJhdGVseSBub3Qga2V5ZWQgb2ZmIDpsYW5nIGhlcmUuIGA6bGFuZyhqYSkgcGAgd291bGQgYmUgYVxuLy8gcHNldWRvLWNsYXNzIHBsdXMgYW4gZWxlbWVudCAoMCwxLDEpIGFuZCB3b3VsZCBxdWlldGx5IG91dHJhbmsgZXZlcnlcbi8vIC50ZXh0LXBoYy0qIHV0aWxpdHkgKDAsMSwwKS4gSmFwYW5lc2UgY29weSBjYXJyaWVzIHRleHQtcGhjLXN0YW5kYXJkLWpwXG4vLyBleHBsaWNpdGx5IGluc3RlYWQuXG4iLCIvLyBUeXBvZ3JhcGh5IGZyb20gYmVmb3JlIHRoZSByZWRlc2lnbi5cbi8vXG4vLyBUaGVzZSBhcmUgdGhlIGhlYWRpbmcgYW5kIHBhcmFncmFwaCBydWxlcyB0aGF0IHVzZWQgdG8gc2l0IGluIGJhc2UvX2Jhc2Uuc2Nzc1xuLy8gYXMgcGxhaW4gZWxlbWVudHMuIFRoZXkgYXJlIHVuY2hhbmdlZCBhcGFydCBmcm9tIGJlaW5nIHNjb3BlZCB0byBgLm9sZGAsXG4vLyB3aGljaCBmdW5jdGlvbnMucGhwIHB1dHMgb24gZXZlcnkgcGFnZSB0aGF0IGhhcyBub3Qgb3B0ZWQgaW50byB0aGUgcmVkZXNpZ24g4oCUXG4vLyBzbyB0aGV5IHN0aWxsIGFwcGx5IGV4YWN0bHkgd2hlcmUgdGhleSBhbHdheXMgZGlkLCBhbmQgbm93aGVyZSBlbHNlLlxuLy9cbi8vIFBhZ2VzIG1vdmUgYWNyb3NzIG9uZSBhdCBhIHRpbWUgYnkgdGlja2luZyBcIlVzZSByZWRlc2lnbiBsYXlvdXRcIiwgYXQgd2hpY2hcbi8vIHBvaW50IGJhc2UvX3R5cG9ncmFwaHkuc2NzcyB0YWtlcyBvdmVyLiBPbmNlIG5vdGhpbmcgaXMgbGVmdCBvbiB0aGUgb2xkIHR5cGUsXG4vLyB0aGlzIGZpbGUgZ29lcy5cbi8vXG4vLyBUaGUgOm5vdCgpIG9uIHRoZSBiYXJlIGVsZW1lbnRzIGJlbG93IGlzIHdoYXQgbGV0cyB0aGUgbWVudSwgZm9vdGVyIGFuZCBiYWNrXG4vLyBsaW5rIGJlIHRoZSByZWRlc2lnbidzIG9uIGEgcGFnZSB3aG9zZSBjb250ZW50IGlzIG5vdC4gVGhvc2UgY2FycnkgdGV4dC1waGMtKlxuLy8gdXRpbGl0aWVzLCBhbmQgYSB1dGlsaXR5IGlzIG9uZSBjbGFzcyDigJQgd2hpY2ggYC5vbGQgcGAgb3V0cmFua3MsIGJlaW5nIGFcbi8vIGNsYXNzIGFuZCBhbiBlbGVtZW50LiBSYXRoZXIgdGhhbiBmaWdodCB0aGF0IHdpdGggbW9yZSBzcGVjaWZpY2l0eSwgdGhlIG9sZFxuLy8gcnVsZXMgc2ltcGx5IGRlY2xpbmUgdG8gY2xhaW0gYW55dGhpbmcgYSB1dGlsaXR5IGhhcyBhbHJlYWR5IHNwb2tlbiBmb3IuXG5cbi5vbGQge1xuICAvLyBUaGUgZ3JvdW5kIHRoZXNlIHBhZ2VzIGFsd2F5cyBhc3N1bWVkIGJ1dCBuZXZlciBkZWNsYXJlZC4gTm90aGluZyBzaG93ZWQgaXRcbiAgLy8gd2hpbGUgdGhlIG9sZCBoZWFkZXIgd2FzIHBpbm5lZCBvdmVyIGNvbnRlbnQgdGhhdCBzdGFydGVkIGF0IHRoZSB0b3Agb2YgdGhlXG4gIC8vIHdpbmRvdzsgdGhlIGJhY2sgbGluayBub3cgb3BlbnMgYSBiYW5kIG9mIGJhcmUgY2FudmFzIGFib3ZlIHRoZSBjb250ZW50LFxuICAvLyBhbmQgYmFyZSBjYW52YXMgaXMgd2hhdGV2ZXIgdGhlIHJlYWRlcidzIGJyb3dzZXIgZGVjaWRlcyDigJQgd2hpdGUgaW4gYSBsaWdodFxuICAvLyBvbmUsIG5lYXItYmxhY2sgaW4gYSBkYXJrIG9uZSwgd2hpY2ggcHV0IGRhcmsgaW5rIG9uIGEgZGFyayBmaWVsZC5cbiAgLy9cbiAgLy8gV2hpdGUgcmF0aGVyIHRoYW4gdGhlIHJlZGVzaWduJ3MgUGFwZXI6IGl0IGlzIHdoYXQgdGhlIHJlc3Qgb2YgdGhpc1xuICAvLyBzdHlsZXNoZWV0IHdhcyBkcmF3biBhZ2FpbnN0LlxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13aGl0ZSk7XG4gIGNvbG9yOiB2YXIoLS1ibGFjayk7XG5cbiAgaDE6bm90KFtjbGFzcyo9J3RleHQtcGhjLSddKSB7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS14bCk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXhsKTtcbiAgICBsZXR0ZXItc3BhY2luZzogdmFyKC0tbGV0dGVyLXNwYWNpbmcteGwpO1xuICAgIG1hcmdpbjogMDtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICB9XG5cbiAgaDI6bm90KFtjbGFzcyo9J3RleHQtcGhjLSddKSxcbiAgaDM6bm90KFtjbGFzcyo9J3RleHQtcGhjLSddKSxcbiAgaDQ6bm90KFtjbGFzcyo9J3RleHQtcGhjLSddKSxcbiAgaDU6bm90KFtjbGFzcyo9J3RleHQtcGhjLSddKSxcbiAgaDY6bm90KFtjbGFzcyo9J3RleHQtcGhjLSddKSB7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgfVxuXG4gIHA6bm90KFtjbGFzcyo9J3RleHQtcGhjLSddKSB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLW0pO1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1tKTtcbiAgICBsZXR0ZXItc3BhY2luZzogdmFyKC0tbGV0dGVyLXNwYWNpbmctbSk7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc2VjdGlvbi1tYXJnaW4pO1xuICB9XG5cbiAgLm1haW4ge1xuICAgIGgxIHtcbiAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXhsKTtcbiAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC14bCk7XG4gICAgICBsZXR0ZXItc3BhY2luZzogdmFyKC0tbGV0dGVyLXNwYWNpbmcteGwpO1xuICAgIH1cblxuICAgIGgyIHtcbiAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWwpO1xuICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWwpO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWxldHRlci1zcGFjaW5nLWwpO1xuICAgIH1cblxuICAgIGgzIHtcbiAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLW0pO1xuICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LW0pO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWxldHRlci1zcGFjaW5nLW0pO1xuICAgIH1cblxuICAgIGg0IHtcbiAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXMpO1xuICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXMpO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWxldHRlci1zcGFjaW5nLXMpO1xuICAgIH1cblxuICAgIGgxLGgyLGgzLGg0IHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICBtYXJnaW4tYm90dG9tOiBjYWxjKHZhcigtLXNlY3Rpb24tbWFyZ2luKSAvIDIpO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhKCc8ZGVza3RvcCcpIHtcbiAgICAgIHAge1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1tKTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LW0pO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogdmFyKC0tbGV0dGVyLXNwYWNpbmctbSk7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgICB9XG5cbiAgICAgIGgxIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICBtYXJnaW46IDAgMCB2YXIoLS1zZWN0aW9uLW1hcmdpbik7XG4gICAgICB9XG5cbiAgICAgIC8vIE1ha2UgZm9udCBzbWFsbGVyIGZvciBjb250YWN0IGFydGljbGVzIHNvIHRpdGxlcyBhbmQgbmFtZXMgY2FuIGZpdFxuICAgICAgJi5tYWluLS1jb250YWN0Lm1haW4tLWFydGljbGUge1xuICAgICAgICBoMSB7XG4gICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtbCk7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWwpO1xuICAgICAgICAgIGxldHRlci1zcGFjaW5nOiB2YXIoLS1sZXR0ZXItc3BhY2luZy1sKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmOm5vdCgubWFpbi0tY29udGFjdCkge1xuICAgICAgICBoMSB7XG4gICAgICAgICAgYnIge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgaDIge1xuICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1sKTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWwpO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogdmFyKC0tbGV0dGVyLXNwYWNpbmctbCk7XG5cbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICBtYXJnaW46IDAgMHB4IDQwcHg7XG4gICAgICB9XG5cbiAgICAgIGgzIHtcbiAgICAgICAgZm9udC1mYW1pbHk6IFwiSW50ZXJcIiwgSGVsdmV0aWNhLCBcIkhlbHZldGljYSBOZXVlXCIsIEFyaWFsO1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1tKTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LW0pO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogdmFyKC0tbGV0dGVyLXNwYWNpbmctbSk7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEoJzx0YWJsZXQnKSB7XG4gICAgICBoMSxcbiAgICAgIHAge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiBjYWxjKHZhcigtLXNlY3Rpb24tbWFyZ2luKSAvIDIpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhKCc8dGFibGV0Jykge1xuICAgIC5tYWluIHAsXG4gICAgcCB7XG4gICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1zKTtcbiAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1zKTtcbiAgICAgIGxldHRlci1zcGFjaW5nOiB2YXIoLS1sZXR0ZXItc3BhY2luZy1zKTtcbiAgICB9XG4gIH1cbn1cbiIsIi5tZW51LWJ1cmdlciB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAyMHB4O1xuICByaWdodDogMzJweDtcbiAgei1pbmRleDogNTAwO1xuXG4gIHdpZHRoOiByZW0tY2FsYyg0NXB4KTtcbiAgaGVpZ2h0OiByZW0tY2FsYygzNHB4KTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuXG4gIG1peC1ibGVuZC1tb2RlOiBkaWZmZXJlbmNlO1xuXG4gIC5hZG1pbi1iYXIgJiB7XG4gICAgdG9wOiAzMnB4O1xuICB9XG5cbiAgJi5hY3RpdmUge1xuICAgIG1peC1ibGVuZC1tb2RlOiBub3JtYWw7XG4gIH1cblxuICBAbWVkaWEgKGhvdmVyOiBob3Zlcikge1xuICAgICY6aG92ZXIge1xuICAgICAgLm1lbnUtYnVyZ2VyX19iYXItLTE+c3ZnIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTVweCk7XG4gICAgICB9XG5cbiAgICAgIC5tZW51LWJ1cmdlcl9fYmFyLS0yPnN2ZyB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDVweCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5hY3RpdmU6aG92ZXIge1xuICAgICAgLm1lbnUtYnVyZ2VyX19iYXItLTE+c3ZnIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTEwcHgpO1xuICAgICAgfVxuXG4gICAgICAubWVudS1idXJnZXJfX2Jhci0tMj5zdmcge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAxMHB4KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XG4gICAgdG9wOiAzMnB4O1xuICAgIHJpZ2h0OiA2NHB4O1xuICB9XG5cbiAgLy8gQGluY2x1ZGUgbWVkaWEoJz49ZGVza3RvcC14eGwnKSB7XG4gIC8vICAgcmlnaHQ6IGNhbGMoKChyZW0tY2FsYygzMHB4KSArIDEwMHZ3IC0gKDEwMHZ3IC0gMTAwJSkgLSB2YXIoLS1zaXRlLXdpZHRoKSkvMikpO1xuICAvLyB9XG5cbiAgJl9fYmFyIHtcbiAgICAkcDogJjtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IHJlbS1jYWxjKDQ1cHgpO1xuICAgIGhlaWdodDogcmVtLWNhbGMoMTBweCk7XG5cbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1ibGFjayk7XG4gICAgYmFja2dyb3VuZDogdmFyKC0td2hpdGUpO1xuXG4gICAgLmFjdGl2ZSAmIHtcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLXdoaXRlKTtcbiAgICAgIHdpZHRoOiByZW0tY2FsYyg2MHB4KTtcbiAgICB9XG4gICAgLy8gdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMzhzIGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xuXG4gICAgLy8gc3ZnIHtcbiAgICAvLyAgIG1peC1ibGVuZC1tb2RlOiBvdmVybGF5O1xuICAgIC8vICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMzhzIGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xuICAgIC8vIH1cblxuICAgICYtLTEge1xuICAgICAgdG9wOiAwO1xuICAgIH1cblxuICAgICYtLTIge1xuICAgICAgdG9wOiByZW0tY2FsYygyM3B4KTtcbiAgICB9XG5cbiAgICAuYWN0aXZlICYge1xuICAgICAgJi0tMSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIHJlbS1jYWxjKDEwcHgpKTtcbiAgICAgIH1cblxuICAgICAgJi0tMiB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIHJlbS1jYWxjKC0xMHB4KSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEoJz49ZGVza3RvcC14eGwnKSB7XG5cbiAgICAgIC8vIC5tZW51LWJ1cmdlci5hY3RpdmUgJiB7XG5cbiAgICAgIC8vICAgJi0tMSB7XG4gICAgICAvLyAgICAgdG9wOiAzMnB4O1xuICAgICAgLy8gICB9XG5cbiAgICAgIC8vICAgJi0tMiB7XG4gICAgICAvLyAgICAgdG9wOiA1MnB4O1xuICAgICAgLy8gICB9XG4gICAgICAvLyB9XG5cblxuICAgICAgJi5hY3RpdmUge1xuXG4gICAgICAgIHN2ZyB7XG4gICAgICAgICAgcGF0aCB7XG4gICAgICAgICAgICBmaWxsOiB2YXIoLS13aGl0ZSkgIWltcG9ydGFudDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuXG4gICYucmV2ZXJzZSB7XG4gICAgbWl4LWJsZW5kLW1vZGU6IG5vcm1hbDtcbiAgICBmaWx0ZXI6IGludmVydCgxKTtcblxuICAgIC5tZW51LWJ1cmdlcl9fYmFyIHtcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJsYWNrKTtcbiAgICB9XG4gIH1cbn1cblxuLmJhY2tncm91bmQge1xuICAmLS1kYXJrIHtcbiAgICBzdmcge1xuICAgICAgcGF0aCB7XG4gICAgICAgIGZpbGw6IHZhcigtLXdoaXRlKSAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYtLWxpZ2h0IHtcbiAgICBzdmcge1xuICAgICAgcGF0aCB7XG4gICAgICAgIGZpbGw6IHZhcigtLWJsYWNrKSAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cbi8vIEhlYWRlciBMb2dvXG4ubWFpbi1sb2dvIHtcblxuICBpbWcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiByZW0tY2FsYyg4MHB4KTtcblxuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGVhc2Utb3V0O1xuICAgIHBvaW50ZXItZXZlbnRzOiBpbml0aWFsO1xuXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IDUwMDtcblxuICAgIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbiAgICAgIHdpZHRoOiByZW0tY2FsYygxNTNweCk7XG4gICAgfVxuICB9XG5cbiAgLmhvbWUtb25seSB7XG4gICAgdG9wOiAzNXB4O1xuICAgIGxlZnQ6IDM1cHg7XG4gICAgb3BhY2l0eTogMDtcblxuICAgIGJvZHkuaG9tZSAmIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuICB9XG5cbiAgLmFjdGl2ZS1vbmx5IHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdG9wOiA3MHB4O1xuICAgIGxlZnQ6IDYwcHg7XG4gICAgd2lkdGg6IHJlbS1jYWxjKDkwcHgpO1xuICAgIGZpbHRlcjogaW52ZXJ0KDEpO1xuICB9XG5cbiAgJi5vbi1tZW51IHtcblxuICAgIGJvZHkuaG9tZSAmIC5ob21lLW9ubHksXG4gICAgLmhvbWUtb25seSB7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGVhc2Utb3V0O1xuICAgIH1cblxuICAgIC5hY3RpdmUtb25seSB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGVhc2Utb3V0IDAuMjVzO1xuICAgIH1cbiAgfVxufVxuXG4vLyBIZWFkZXIgTWVudVxuLm1haW4tbWVudSB7XG4gICRwOiAmO1xuICAmX19jb250YWluZXIge1xuICAgICZfX292ZXJsYXkge1xuICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgdG9wOiAwO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwwLDAsMC43KTtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgei1pbmRleDogNDUwO1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDEwMHB4ICRtb2JpbGUtbWFyZ2luIDMwcHgpO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC40cyBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcbiAgICB9XG4gICAgJl9fb3ZlcmxheS1iZyB7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgdG9wOiAwO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgei1pbmRleDogNDAwO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLDAsMCwwKTtcbiAgICAgIGJhY2tkcm9wLWZpbHRlcjogYmx1cigxMHB4KTtcbiAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC40cyBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcbiAgICAgIHRvcDogLTEwMHZoO1xuICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgJl9fY29udGFpbmVyLmFjdGl2ZSB7XG4gICAgI3skcH1fX2NvbnRhaW5lcl9fb3ZlcmxheSB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCUpO1xuICAgIH1cbiAgICAjeyRwfV9fY29udGFpbmVyX19vdmVybGF5LWJnIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB0b3A6IDA7XG4gICAgICBwb2ludGVyLWV2ZW50czogYWxsO1xuICAgIH1cbiAgfVxuXG4gICZfX2ZpbHRlci1saXN0IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIC5zaG93LWdyaWQtY29udGFpbmVyICYge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG4gICZfX2xpc3Qge1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICBwYWRkaW5nOiByZW0tY2FsYygxNTBweCAwIDApO1xuXG4gICAgLnNob3ctZ3JpZC1jb250YWluZXIgJiB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbiAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDE1MHB4IDMwcHggMCk7XG4gICAgfVxuICB9XG5cbiAgJl9faXRlbSB7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW46IDA7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYyg3NXB4KTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuXG4gICAgc3ViIHtcbiAgICAgIHRvcDogLTAuMjVlbTtcbiAgICAgIGJvdHRvbTogYXV0bztcbiAgICB9XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuXG4gICZfX2l0ZW0tLXR3by1saW5lIHtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDQwcHgpO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICB9XG4gICZfX2NvbnRhaW5lciAuZmlsdGVyLW1lbnUtaXRlbSxcbiAgJl9fbGluayB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGNvbG9yOiB2YXIoLS13aGl0ZSk7XG4gICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlLW91dDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAgIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcblxuICAgIEBtZWRpYSAoaG92ZXI6IGhvdmVyKSB7XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6IHZhcigtLW1pZGRsZS1ncmV5KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYSgnPGRlc2t0b3AnKSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gIH1cblxuICAmX19jb250YWluZXIgLmZpbHRlci1tZW51LWl0ZW0ge1xuICAgICYuYWN0aXZlIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1taWRkbGUtZ3JleSk7XG4gICAgfVxuICB9XG5cbn1cblxuLy8gRml4IGZvciBoZWFkbGVzc1xuYm9keS5oZWFkbGVzcyB7XG4gIC5tZW51LWJ1cmdlciB7XG4gICAgcGF0aCB7XG4gICAgICBmaWxsOiB2YXIoLS1ibGFjayk7XG4gICAgfVxuXG4gICAgJi5hY3RpdmUge1xuICAgICAgcGF0aCB7XG4gICAgICAgIGZpbGw6IHZhcigtLXdoaXRlKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAubWFpbi1sb2dvIHtcbiAgICBwYXRoIHtcbiAgICAgIGZpbGw6IHZhcigtLWJsYWNrKTtcbiAgICB9XG5cbiAgICAmLm9uLW1lbnUge1xuICAgICAgcGF0aCB7XG4gICAgICAgIGZpbGw6IHZhcigtLXdoaXRlKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQGluY2x1ZGUgbWVkaWEoJz49ZGVza3RvcCcpIHtcblxuICAubWFpbi1tZW51X19jb250YWluZXJfX292ZXJsYXkge1xuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDI1cHggMCA1MHB4IDUwJSk7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYyg1MHB4KTtcbiAgfVxuXG4gIC5tYWluLW1lbnVfX2NvbnRhaW5lciAuZmlsdGVyLW1lbnUtaXRlbSxcbiAgLm1haW4tbWVudV9faXRlbSB7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gIH1cbn1cblxuQGluY2x1ZGUgbWVkaWEoJzxkZXNrdG9wJykge1xuICAubWFpbi1tZW51X19jb250YWluZXIgLmZpbHRlci1tZW51LWl0ZW0sXG4gIC5tYWluLW1lbnVfX2l0ZW0ge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjE7XG4gICAgcGFkZGluZzogMDtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1sKTtcbiAgfVxuXG4gIC5tYWluLW1lbnVfX2l0ZW0tLXR3by1saW5lIHtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDIwcHgpO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICB9XG5cbiAgLmdyaWQtZGVza3RvcCB7XG4gICAgbGVmdDogMDtcbiAgICBvcGFjaXR5OiAwLjE7XG4gICAgei1pbmRleDogMTIwMDtcbiAgICBtYXJnaW46IDAgJG1vYmlsZS1tYXJnaW47XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjNzc3O1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICM3Nzc7XG4gIH1cblxuICAuZ3JpZC1kZXNrdG9wLm9mZiB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gIC5ncmlkLWRlc2t0b3BfX2NvbCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG5AaW5jbHVkZSBtZWRpYSgnPG1vYmlsZS1sJykge1xuXG4gIC5tYWluLW1lbnVfX2NvbnRhaW5lciAuZmlsdGVyLW1lbnUtaXRlbSxcbiAgLm1haW4tbWVudV9faXRlbSB7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUteGwpO1xuICB9XG59XG4iLCIvLyBUaGUgcmVkZXNpZ24ncyBtZW51OiBhIHRyYW5zbHVjZW50IHBpbGwgcGlubmVkIHRvIHRoZSBib3R0b20gb2YgdGhlIHNjcmVlbi5cbi8vXG4vLyBJdCByZXBsYWNlcyB0aGUgYnVyZ2VyIGFuZCBpdHMgZnVsbC1zY3JlZW4gb3ZlcmxheS4gRmlsdGVyaW5nIHN0aWxsIHdvcmtzIHRoZVxuLy8gc2FtZSB3YXkg4oCUIHRoZSBpdGVtcyBjYXJyeSB0aGUgc2FtZSBkYXRhLWdyaWQtZmlsdGVyIGF0dHJpYnV0ZXMgdGhlIG9sZCBtZW51XG4vLyB1c2VkLCBzbyB0aGUgZ3JpZCBzY3JpcHQgbmVlZHMgbm8gY2hhbmdlcy5cblxuLy8gcGhjLWxlbiByYXRoZXIgdGhhbiByZW0tY2FsYzogdGhlIGJhciBpcyBmaXhlZCB0byB0aGUgd2luZG93IGFuZCBzaXRzIG9uXG4vLyBldmVyeSBwYWdlLCBpbmNsdWRpbmcgb25lcyB3aG9zZSByb290IGZvbnQgc2l6ZSBpcyB0aWVkIHRvIHRoZSB2aWV3cG9ydCwgYW5kXG4vLyBpdCB3b3VsZCBiZSBwbGFpbmx5IHdyb25nIGZvciBpdCB0byBjaGFuZ2Ugc2l6ZSBhcyB0aGUgcmVhZGVyIG1vdmVzIGJldHdlZW5cbi8vIHRoZW0uIHV0aWxzL191bml0LnNjc3MgZXhwbGFpbnMgd2hhdCAtLXBoYy1yb290IGlzIGRvaW5nLlxuJHBoYy1tZW51LWhlaWdodDogcGhjLWxlbig3MHB4KTtcbiRwaGMtbWVudS1pbnNldDogcGhjLWxlbigyMHB4KTtcbiRwaGMtbWVudS1wYWRkaW5nOiBwaGMtbGVuKDE2cHgpO1xuJHBoYy1tZW51LWljb246IHBoYy1sZW4oNDBweCk7XG4kcGhjLW1lbnUtbG9nbzogcGhjLWxlbigzMnB4KTtcbiRwaGMtbWVudS1yYWRpdXM6IHBoYy1sZW4oMzVweCk7ICAgLy8gaGFsZiB0aGUgYmFyIGhlaWdodDogYSBwaWxsIHdoZW4gd2lkZSwgYSBjaXJjbGUgd2hlbiBzcXVhcmVcblxuLy8gU2hvcnRlciBvbiBhIHBob25lLiBUaGUgY29tcG9uZW50J3MgTW9iaWxlIHZhcmlhbnQgaXMgOTAsIGJ1dCB0aGF0IGlzIGZvciB0aGVcbi8vIHR3byByb3dzIG9mIGNhdGVnb3JpZXMgaXQgd2FzIGRyYXduIHdpdGgg4oCUIG9uZSByb3cgZG9lcyBub3QgbmVlZCB0aGUgaGVpZ2h0LFxuLy8gYW5kIGEgYmFyIHRoaXMgZGVlcCBhY3Jvc3MgdGhlIGJvdHRvbSBvZiBhIHBob25lIHNjcmVlbiB0YWtlcyBhIGxvdCBvZiB3aGF0XG4vLyB0aGVyZSBpcyB0byBsb29rIGF0LiBSYWRpdXMgc3RheXMgaGFsZiBvZiBpdCwgc28gaXQgaXMgc3RpbGwgYSBwaWxsLlxuJHBoYy1tZW51LWhlaWdodC1tb2JpbGU6IHBoYy1sZW4oNTJweCk7XG4kcGhjLW1lbnUtcmFkaXVzLW1vYmlsZTogcGhjLWxlbigyNnB4KTtcblxuLnBoYy1tZW51IHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAkcGhjLW1lbnUtaW5zZXQ7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDEwMDtcbiAgZGlzcGxheTogZmxleDtcblxuICAvLyBDZW50cmVkLiBSaWdodC1hbGlnbmluZyBpdCBtYWRlIHRoZSBjb2xsYXBzZSBwaXZvdCBvbiB0aGUgcmlnaHQgZWRnZSwgYnV0XG4gIC8vIG9uY2UgdGhlIHZpZXdwb3J0IGlzIHdpZGVyIHRoYW4gdGhlIDE0NDAgY2FwIGl0IGxlZnQgdW5ldmVuIG1hcmdpbnMg4oCUIDMycHhcbiAgLy8gb25lIHNpZGUgYWdhaW5zdCAyMHB4IHRoZSBvdGhlciDigJQgd2hpY2ggaXMgZmFyIG1vcmUgbm90aWNlYWJsZSBhdCByZXN0IHRoYW5cbiAgLy8gdGhlIHNsaWRlIGlzIGluIG1vdGlvbi4gUHJlc2VudGF0aW9uIG1vZGUgbW92ZXMgaXQgcmlnaHQgb24gaXRzIG93bi5cbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHBhZGRpbmc6IDAgJHBoYy1tZW51LWluc2V0O1xuXG4gIC8vIFRoZSBiYXIgaXMgY2VudHJlZCBpbnNpZGUgYSBmdWxsLXdpZHRoIHN0cmlwLCBzbyB0aGUgZW1wdHkgc3BhY2UgZWl0aGVyXG4gIC8vIHNpZGUgbXVzdCBub3Qgc3dhbGxvdyBjbGlja3MgbWVhbnQgZm9yIHRoZSBwYWdlIGJlaGluZCBpdC5cbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG5cbiAgLy8gVGhlIGdsYXNzIGNvbnRhaW5lci4gSXQgaG9sZHMgYSBzaW5nbGUgY2hpbGQsIHdoaWNoIGlzIHdoYXQgbGlxdWlkLXdlYlxuICAvLyBuZWVkcyBpbiBvcmRlciB0byB3cmFwIGl0LCBzbyB0aGUgcm93IGl0c2VsZiBsaXZlcyBvbmUgbGV2ZWwgaW4uXG4gICZfX2JhciB7XG4gICAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC13aWR0aDogdmFyKC0tcGhjLXBhZ2Utd2lkdGgpO1xuICAgIGhlaWdodDogJHBoYy1tZW51LWhlaWdodDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgLy8gSGFsZiB0aGUgaGVpZ2h0LCBzbyB0aGUgc2FtZSB2YWx1ZSBpcyBhIHBpbGwgd2hpbGUgdGhlIGJhciBpcyB3aWRlIGFuZCBhXG4gICAgLy8gdHJ1ZSBjaXJjbGUgb25jZSBpdCBpcyBzcXVhcmUuIE5vdGhpbmcgdG8gYW5pbWF0ZSwgd2hpY2ggaXMgdGhlIHBvaW50OlxuICAgIC8vIGludGVycG9sYXRpbmcgYmV0d2VlbiBhIGxlbmd0aCBhbmQgNTAlIGlzIHdoYXQgdG9yZSB0aGUgY29ybmVycyBvbiB0aGVcbiAgICAvLyB3YXkgaW4gYW5kIG91dC5cbiAgICBib3JkZXItcmFkaXVzOiAkcGhjLW1lbnUtcmFkaXVzO1xuXG4gICAgLy8gdHJhbnNmb3JtIHJhdGhlciB0aGFuIGEgY2hhbmdlIG9mIGFsaWdubWVudCwgc28gdGhlIG1vdmUgdG8gdGhlIGNvcm5lclxuICAgIC8vIHR3ZWVucyB3aXRoIHRoZSByZXNpemUgaW5zdGVhZCBvZiBqdW1waW5nIGZpcnN0LiBtZW51LmpzIG1lYXN1cmVzIHRoZVxuICAgIC8vIGRpc3RhbmNlIGludG8gLS1waGMtbWVudS1zaGlmdC5cbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gICAgdHJhbnNpdGlvbjogd2lkdGggMC40cyBlYXNlLCBtYXgtd2lkdGggMC40cyBlYXNlLCB0cmFuc2Zvcm0gMC40cyBlYXNlO1xuXG4gICAgLy8gTm8gYmFja2Ryb3AtZmlsdGVyIGFuZCBubyBiYWNrZ3JvdW5kIGhlcmUuIFRoZSBjb21wb25lbnQgcGFpbnRzIGl0cyBvd25cbiAgICAvLyBncm91bmQgZnJvbSBpdHMgdGludCBhdHRyaWJ1dGUgYW5kIGZhbGxzIGJhY2sgdG8gaXRzIG93biBibHVyIHdoZXJlIHRoZVxuICAgIC8vIHJlZnJhY3Rpb24gY2Fubm90IHJ1biwgc28gYW55dGhpbmcgc2V0IGhlcmUgd291bGQgc2l0IG9uIHRvcCBvZiB0aGF0IGFuZFxuICAgIC8vIGZsYXR0ZW4gaXQuXG4gIH1cblxuICAvLyBUaGUgV2ViR0wgZ2xhc3MsIHdoZW4gdGhhdCBpcyB0aGUgb25lIGluIHVzZSDigJQgc2VlIFBIQ19NRU5VX0dMQVNTLiBJdCBmaWxsc1xuICAvLyB0aGUgYmFyLCB1bmRlciB0aGUgcm93IGFuZCBvdmVyIHRoZSBncm91bmQgdGhlIHN0eWxlc2hlZXQgcGFpbnRzLCB3aGljaCBpc1xuICAvLyB3aGF0IHNob3dzIHVudGlsIGl0IGhhcyBkcmF3biBpdHMgZmlyc3QgZnJhbWUgYW5kIGlmIGl0IG5ldmVyIGRvZXMuXG4gIC8vXG4gIC8vIEJlaGluZCBhIGNsYXNzIHJhdGhlciB0aGFuIGEgcGxhaW4gcnVsZTogdGhlIGNsYXNzIG9ubHkgZ29lcyBvbiBvbmNlIHRoZVxuICAvLyBjb250ZXh0IGlzIHVwIGFuZCB0aGUgcHJvZ3JhbSBoYXMgbGlua2VkLCBzbyBhIGJyb3dzZXIgd2l0aG91dCBXZWJHTCBpc1xuICAvLyBsZWZ0IHdpdGggdGhlIGJhciBpdCB3b3VsZCBoYXZlIGhhZCBhbnl3YXkuXG4gIC5waGMtZ2xhc3MtY2FudmFzIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYm9yZGVyLXJhZGl1czogaW5oZXJpdDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgfVxuXG4gIC8vIFRoZSByb3cgaXRzZWxmLiBBYm92ZSB0aGUgbGl0IGVkZ2UgYW5kIHdoYXRldmVyIHRoZSBnbGFzcyBsYXlzIGRvd24uXG4gICZfX2lubmVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ2FwOiAkcGhjLW1lbnUtcGFkZGluZztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgcGFkZGluZzogMCAkcGhjLW1lbnUtcGFkZGluZztcbiAgfVxuXG4gIC8vIE1hc2tlZCByYXRoZXIgdGhhbiBhbiA8aW1nPiBzbyB0aGUgbWFyayB0YWtlcyBpdHMgY29sb3VyIGZyb20gdGhlIGJhciBhbmRcbiAgLy8gZm9sbG93cyBicmlnaHQgYW5kIGRhcmsgd2l0aG91dCBhIHNlY29uZCBmaWxlLlxuICAmX19sb2dvIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogJHBoYy1tZW51LWxvZ287XG4gICAgaGVpZ2h0OiAkcGhjLW1lbnUtbG9nbztcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJvcmRlcjogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1waGMtbWVudS1mZyk7XG4gICAgbWFzazogdXJsKCcuLi9pbWFnZXMvaC1sb2dvLnN2ZycpIGNlbnRlciAvIGNvbnRhaW4gbm8tcmVwZWF0O1xuICAgIC13ZWJraXQtbWFzazogdXJsKCcuLi9pbWFnZXMvaC1sb2dvLnN2ZycpIGNlbnRlciAvIGNvbnRhaW4gbm8tcmVwZWF0O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxuXG4gICZfX2l0ZW0ge1xuICAgIGZsZXg6IDEgMCAwO1xuICAgIG1pbi13aWR0aDogMDtcbiAgICBjb2xvcjogdmFyKC0tcGhjLW1lbnUtZmcpO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgJi5hY3RpdmUge1xuICAgICAgY29sb3I6IHZhcigtLXBoYy1tZW51LWZnLWFjdGl2ZSk7XG4gICAgfVxuXG4gICAgQG1lZGlhIChob3ZlcjogaG92ZXIpIHtcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBjb2xvcjogdmFyKC0tcGhjLW1lbnUtZmctYWN0aXZlKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmX19saW5rZWRpbiB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6ICRwaGMtbWVudS1pY29uO1xuICAgIGhlaWdodDogJHBoYy1tZW51LWljb247XG5cbiAgICBpbWcge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICB9XG4gIH1cbn1cblxuLy8gVGhlIHR3byBnbGFzc2VzIHRoYXQgYXJlIG5vdCB0aGUgY29tcG9uZW50IGdldCB0aGVpciBncm91bmQgZnJvbSBoZXJlIHJhdGhlclxuLy8gdGhhbiBmcm9tIGEgc2hhZG93IHRyZWUsIHNpbmNlIHRoZXkgaGF2ZSBub25lLiBUaGUgcGxhaW4gb25lIGtlZXBzIGl0OyB0aGVcbi8vIFdlYkdMIG9uZSBkcmF3cyBpdHMgb3duIHJlZnJhY3Rpb24gb3ZlciB0aGUgdG9wIG9mIGl0LCBhbmQgdGhlIGdyb3VuZCBpcyB3aGF0XG4vLyBzdGFuZHMgaW4gdW50aWwgdGhlIGZpcnN0IGZyYW1lIGxhbmRzLlxuLnBoYy1tZW51W2RhdGEtZ2xhc3M9XCJ3ZWJnbFwiXSxcbi5waGMtbWVudVtkYXRhLWdsYXNzPVwicGxhaW5cIl0ge1xuICAucGhjLW1lbnVfX2JhciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tcGhjLW1lbnUtYmctZmFsbGJhY2spO1xuICAgIGJveC1zaGFkb3c6XG4gICAgICBpbnNldCAxcHggMXB4IDAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjU1KSxcbiAgICAgIGluc2V0IC0xcHggLTFweCAwIHJnYmEoMCwgMCwgMCwgMC4yNSk7XG4gIH1cbn1cblxuLy8gT25jZSB0aGUgc2hhZGVyIGlzIHJ1bm5pbmcsIGl0cyBvd24gdGludCBpcyBvbiB0b3Agb2YgdGhhdCBncm91bmQgYW5kIHRoZSB0d29cbi8vIHdvdWxkIGNvbXBvdW5kLiBUaGUgZWRnZSBzdGF5czogdGhlIHNoYWRlciBkcmF3cyBubyByaW0gYXQgdGhlIGludGVuc2l0aWVzXG4vLyB0aGlzIGlzIHNldCB0bywgYW5kIHRoZSBiYXIgc3RpbGwgd2FudHMgb25lLlxuLy9cbi8vIFRoZSBhdHRyaWJ1dGUgaXMgY2FycmllZCBoZXJlIHRvbywgYW5kIG5vdCBmb3Igc2hvdyDigJQgW2RhdGEtZ2xhc3NdIGNvdW50cyBhc1xuLy8gYSBjbGFzcywgc28gdGhlIHJ1bGUgYWJvdmUgaXMgdGhyZWUgb2YgdGhlbSBhbmQgYSBiYXJlIC5waGMtbWVudS0tZ2xhc3MtcmVhZHlcbi8vIHdvdWxkIGJlIHR3byBhbmQgbG9zZS5cbi5waGMtbWVudVtkYXRhLWdsYXNzPVwid2ViZ2xcIl0ucGhjLW1lbnUtLWdsYXNzLXJlYWR5IC5waGMtbWVudV9fYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi8vIFRoZSBmYWxsYmFjayBiYXIg4oCUIGl0cyBncm91bmQgYW5kIGl0cyBlZGdlIOKAlCBpcyBpbiBtZW51LmpzLCBpbiB0aGUgc3R5bGVzaGVldFxuLy8gdGhhdCBnZXRzIGluamVjdGVkIGludG8gdGhlIGNvbXBvbmVudCdzIHNoYWRvdyB0cmVlLlxuLy9cbi8vIEl0IHdhcyBicmllZmx5IGhlcmUgaW5zdGVhZCwgYmVoaW5kIEBzdXBwb3J0cyBub3QgKGJhY2tkcm9wLWZpbHRlcjogdXJsKOKApikpLFxuLy8gb24gdGhlIHJlYXNvbmluZyB0aGF0IGEgcnVsZSBpbiB0aGUgc3R5bGVzaGVldCBkb2VzIG5vdCBkZXBlbmQgb24gdGhlXG4vLyBjb21wb25lbnQgaGF2aW5nIHJ1bi4gVGhhdCBkb2VzIG5vdCB3b3JrOiBAc3VwcG9ydHMgYXNrcyB3aGV0aGVyIGEgdmFsdWVcbi8vIHBhcnNlcywgbm90IHdoZXRoZXIgaXQgZG9lcyBhbnl0aGluZywgYW5kIGJvdGggRmlyZWZveCBhbmQgU2FmYXJpIHBhcnNlXG4vLyB1cmwoKSBwZXJmZWN0bHkgd2VsbCBhcyBhIGZpbHRlciByZWZlcmVuY2Ugd2hpbGUgcmVuZGVyaW5nIG5vdGhpbmcgZnJvbSBpdC5cbi8vIEJvdGggYW5zd2VyZWQgXCJzdXBwb3J0ZWRcIiBhbmQgc2tpcHBlZCB0aGUgYmxvY2ssIHdoaWNoIGlzIHdoeSBuZWl0aGVyIG9mIHRoZW1cbi8vIGhhZCBhIGdyb3VuZC4gT25seSBqYXZhc2NyaXB0IGNhbiB0ZWxsIHRoZSBkaWZmZXJlbmNlLCBhbmQgdGhlIGNvbXBvbmVudFxuLy8gYWxyZWFkeSBkb2VzIOKAlCBzZWUgaXRzIGRldGVjdFN1cHBvcnQsIGFuZCAuZmFsbGJhY2stYmx1ci5cblxuLy8gUHJlc2VudGF0aW9uIG1vZGU6IHRoZSBiYXIgY29sbGFwc2VzIHRvIGEgY2lyY2xlIGluIHRoZSBib3R0b20gcmlnaHQgc28gdGhlXG4vLyB3b3JrIGNhbiBiZSBzaG93biB3aXRob3V0IGl0IHJ1bm5pbmcgYWNyb3NzIHRoZSBwYWdlLiBQcmVzc2luZyB0aGUgbG9nbyBhZ2FpblxuLy8g4oCUIG9yIEVzY2FwZSDigJQgYnJpbmdzIGl0IGJhY2suXG4ucGhjLW1lbnUtLW1pbiB7XG4gIC5waGMtbWVudV9fYmFyIHtcbiAgICB3aWR0aDogJHBoYy1tZW51LWhlaWdodDtcbiAgICBtYXgtd2lkdGg6ICRwaGMtbWVudS1oZWlnaHQ7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKHZhcigtLXBoYy1tZW51LXNoaWZ0LCAwcHgpKTtcblxuICAgIC8vIE5vIGJvcmRlci1yYWRpdXMgaGVyZSBvbiBwdXJwb3NlLiBUaGUgYmFyIGFscmVhZHkgY2FycmllcyBoYWxmIGl0cyBvd25cbiAgICAvLyBoZWlnaHQsIHdoaWNoIGlzIGEgY2lyY2xlIG9uY2UgaXQgaXMgc3F1YXJlLCBzbyB0aGUgY29ybmVycyBzdGF5IHJpZ2h0XG4gICAgLy8gdGhlIHdob2xlIHdheSB0aHJvdWdoIGluc3RlYWQgb2YgYmVpbmcgaW50ZXJwb2xhdGVkLlxuICB9XG5cbiAgLnBoYy1tZW51X19pbm5lciB7XG4gICAgcGFkZGluZzogMDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgfVxuXG4gIC8vIEhpZGRlbiByYXRoZXIgdGhhbiByZW1vdmVkLCBzbyB0aGUgYmFyIGtlZXBzIGl0cyBsYXlvdXQgYW5kIHRoZSBjb2xsYXBzZVxuICAvLyBzdGF5cyBhIGNoYW5nZSBvZiBzaGFwZSByYXRoZXIgdGhhbiBhIHJlYnVpbGQuXG4gIC5waGMtbWVudV9faXRlbSxcbiAgLnBoYy1tZW51X19saW5rZWRpbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4vLyBPbiBhIHBob25lIHRoZSBjYXRlZ29yaWVzIGdldCB0aGUgYmFyIHRvIHRoZW1zZWx2ZXMsIG9uIG9uZSByb3cuXG4vL1xuLy8gVGhlIG1hcmsgYW5kIHRoZSBMaW5rZWRJbiBsaW5rIGFyZSB0aGUgdHdvIHRoaW5ncyB0aGF0IGNhbiBnbzogb25lIGlzIGEgbGlua1xuLy8gaG9tZSB0aGF0IHRoZSBjYXRlZ29yaWVzIGFscmVhZHkgb2ZmZXIsIHRoZSBvdGhlciBpcyByZXBlYXRlZCBpbiB0aGUgZm9vdGVyLlxuLy8gS2VlcGluZyB0aGVtIHdhcyB3aGF0IHB1c2hlZCB0aGUgZmlsdGVycyBvbnRvIGEgc2Vjb25kIGxpbmUsIGFuZCBhIGJhciB0d29cbi8vIHJvd3MgZGVlcCBvdmVyIHRoZSBib3R0b20gb2YgYSBwaG9uZSBzY3JlZW4gaXMgYSBsb3Qgb2YgdGhlIHBhZ2UuXG5AaW5jbHVkZSBtZWRpYSgnPHRhYmxldCcpIHtcbiAgLnBoYy1tZW51IHtcbiAgICAmX19sb2dvLFxuICAgICZfX2xpbmtlZGluIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgJl9fYmFyIHtcbiAgICAgIGhlaWdodDogJHBoYy1tZW51LWhlaWdodC1tb2JpbGU7XG4gICAgICBib3JkZXItcmFkaXVzOiAkcGhjLW1lbnUtcmFkaXVzLW1vYmlsZTtcbiAgICB9XG5cbiAgICAmX19pbm5lciB7XG4gICAgICBnYXA6IHBoYy1sZW4oOHB4KTtcbiAgICAgIHBhZGRpbmc6IDAgcGhjLWxlbig4cHgpO1xuICAgIH1cblxuICAgICZfX2l0ZW0ge1xuICAgICAgLy8gRnJvbSB0aGUgd2lkdGggb2YgdGhlIG5hbWUgb3V0d2FyZHMsIHNoYXJpbmcgd2hhdCBpcyBsZWZ0IG92ZXIg4oCUXG4gICAgICAvLyByYXRoZXIgdGhhbiBhbiBlcXVhbCBzaGFyZSBlYWNoLCB3aGljaCBnYXZlIFwiQWxsXCIgdGhlIHNhbWUgcm9vbSBhc1xuICAgICAgLy8gXCJJbnRlcmFjdGl2ZVwiIGFuZCBjdXQgdGhlIGxvbmcgb25lcyBvZmYuXG4gICAgICBmbGV4OiAxIDEgYXV0bztcblxuICAgICAgLy8gQW5kIHRoZXkgbmV2ZXIgd3JhcDogYSBuYW1lIGJyZWFraW5nIGluIHR3byBpcyB3aGF0IGEgc2Vjb25kIHJvdyBsb29rc1xuICAgICAgLy8gbGlrZSBmcm9tIHRoZSBvdXRzaWRlLCB3aGljaCBpcyB0aGUgdGhpbmcgYmVpbmcgZml4ZWQgaGVyZS4gSWYgdGhlXG4gICAgICAvLyBuYW1lcyBvdXRncm93IHRoZSByb3csIHRoZSBzaXplIGJlbG93IGlzIHRoZSBjb250cm9sIGZvciBpdC5cbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgICAgIC8vIFdoYXQgaGFwcGVucyB3aGVuIHRoYXQgY29udHJvbCBpcyBzZXQgdG9vIGhpZ2gsIG9yIHRoZSBuYW1lcyBhcmVcbiAgICAgIC8vIGxvbmdlciB0aGFuIGFueSBzZXR0aW5nIGNhbiBzYXZlLiBXaXRob3V0IHRoZXNlIHRoZSB0ZXh0IGtlZXBzIGl0c1xuICAgICAgLy8gZnVsbCB3aWR0aCB3aGlsZSB0aGUgYm94IHNocmlua3MgYW5kIHJ1bnMgaW50byBpdHMgbmVpZ2hib3Vyczsgd2l0aFxuICAgICAgLy8gdGhlbSBpdCBlbmRzIGluIGFuIGVsbGlwc2lzLCB3aGljaCByZWFkcyBhcyBcInRvbyBiaWdcIiByYXRoZXIgdGhhbiBhc1xuICAgICAgLy8gYSByZW5kZXJpbmcgZmF1bHQuXG4gICAgICBtaW4td2lkdGg6IDA7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG5cbiAgICAgIC8vIFRoZSB3aG9sZSBkZXB0aCBvZiB0aGUgYmFyIGlzIHRoZSB0YXJnZXQsIG5vdCB0aGUgbGluZSBvZiB0ZXh0LiBBXG4gICAgICAvLyB0d2VsdmUgcGl4ZWwgd29yZCBpcyBhIHNtYWxsIHRoaW5nIHRvIGhpdCB3aXRoIGEgdGh1bWIsIGFuZCB0aGUgYmFyXG4gICAgICAvLyBnZXR0aW5nIHNob3J0ZXIgd291bGQgb3RoZXJ3aXNlIG1ha2UgaXQgc21hbGxlciBhZ2Fpbi5cbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBhbGlnbi1zZWxmOiBzdHJldGNoO1xuICAgIH1cbiAgfVxuXG4gIC8vIFByZXNlbnRhdGlvbiBtb2RlIGNhbm5vdCBiZSByZWFjaGVkIGZyb20gYSBwaG9uZSDigJQgdGhlIG1hcmsgdGhhdCB0b2dnbGVzIGl0XG4gIC8vIGlzIGhpZGRlbiBhYm92ZSDigJQgYnV0IHRoZSB3aW5kb3cgY2FuIGJlIG5hcnJvd2VkIHdoaWxlIGl0IGlzIG9uLCBhbmQgdGhlblxuICAvLyB0aGUgY2lyY2xlIGhhcyB0byBiZSBhIGNpcmNsZSBhdCB0aGlzIGhlaWdodCByYXRoZXIgdGhhbiB0aGUgb3RoZXIgb25lLlxuICAucGhjLW1lbnUtLW1pbiAucGhjLW1lbnVfX2JhciB7XG4gICAgd2lkdGg6ICRwaGMtbWVudS1oZWlnaHQtbW9iaWxlO1xuICAgIG1heC13aWR0aDogJHBoYy1tZW51LWhlaWdodC1tb2JpbGU7XG4gIH1cblxuICAvLyBUd28gY2xhc3NlcyBvbiBwdXJwb3NlLiBUaGUgaXRlbXMgY2FycnkgLnRleHQtcGhjLXN0YW5kYXJkLCBhbmQgYSB1dGlsaXR5XG4gIC8vIGlzIGEgc2luZ2xlIGNsYXNzIGltcG9ydGVkIGFmdGVyIHRoaXMgZmlsZSDigJQgc28gYSBzaW5nbGUgY2xhc3MgaGVyZSB3b3VsZFxuICAvLyBsb3NlIHRvIGl0LiBUaGlzIGlzIHRoZSBvbmUgcGxhY2UgdGhlIHV0aWxpdHkgaXMgZGVsaWJlcmF0ZWx5IG92ZXJydWxlZDpcbiAgLy8gdGhlIHNpemUgaGFzIHRvIGFuc3dlciB0byB0aGUgd2lkdGggb2YgYSBwaG9uZSBhbmQgdG8gbmFtZXMgdGhlIGNsaWVudCBjYW5cbiAgLy8gY2hhbmdlLCB3aGljaCBubyBmaXhlZCB0b2tlbiBjYW4uXG4gIC5waGMtbWVudSAucGhjLW1lbnVfX2l0ZW0ge1xuICAgIGZvbnQtc2l6ZTogY2FsYyh2YXIoLS1waGMtbWVudS1pdGVtLXNpemUsIDEyKSAvIDE2ICogdmFyKC0tcGhjLXJvb3QpKTtcblxuICAgIC8vIEEgcmF0aW8gcmF0aGVyIHRoYW4gdGhlIHRva2VuJ3MgZml4ZWQgbGluZSwgd2hpY2ggd2FzIHNldCBhZ2FpbnN0IDIycHhcbiAgICAvLyBhbmQgd291bGQgc2l0IHRoZSB0ZXh0IG9mZi1jZW50cmUgb25jZSBpdCBpcyBzbWFsbGVyIHRoYW4gdGhhdC5cbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICB9XG59XG4iLCIuZm9vdGVyIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tYmxhY2spO1xuICBwYWRkaW5nOiByZW0tY2FsYyg1MHB4IDMycHggMzJweCk7XG5cbiAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDUwcHggNDVweCAzMnB4KTtcbiAgfVxuXG4gICZfX2lubmVyIHtcbiAgICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XG4gICAgICBtYXgtd2lkdGg6IDUwJTtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIH1cbiAgfVxuXG4gIHAge1xuICAgIGNvbG9yOiB2YXIoLS13aGl0ZSk7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMThweCk7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBsaW5lLWhlaWdodDogMTtcblxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgfVxuXG4gIGEge1xuICAgIGNvbG9yOiB2YXIoLS13aGl0ZSk7XG4gIH1cblxuICAmX19sb2dvIHtcbiAgICBmaWx0ZXI6IGludmVydCgxKTtcblxuICAgICZfX2ltZyB7XG4gICAgICBtYXgtd2lkdGg6IDdyZW07XG4gICAgfVxuXG4gICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoNzBweCk7XG5cbiAgICBAaW5jbHVkZSBtZWRpYSgnPHRhYmxldCcpIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDQwcHgpO1xuICAgIH1cbiAgfVxuXG4gICZfX3d5c2l3eWcge1xuICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDI0cHgpO1xuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDMycHgpO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbiAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDQ1cHgpO1xuXG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tdG9wOiByZW0tY2FsYyg4NXB4KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIFRoZSByZWRlc2lnbidzIGZvb3RlcjogYSBiaW8gaW4gYm90aCBsYW5ndWFnZXMsIGEgTGlua2VkSW4gbGluaywgYW5kIHRoZVxuLy8gY29weXJpZ2h0IGxpbmUgYmVuZWF0aC4gSXQga2VlcHMgaXRzIG93biBncm91bmQgaW4gYm90aCBjb2xvdXIgc2NoZW1lcyByYXRoZXJcbi8vIHRoYW4gdGFraW5nIHRoZSBwYWdlJ3MsIHdoaWNoIGlzIHdoeSBpdCBoYXMgaXRzIG93biByb2xlIHZhcmlhYmxlcy5cblxuJHBoYy1mb290ZXItYmlvLW1pbjogcmVtLWNhbGMoNTYwcHgpO1xuJHBoYy1mb290ZXItYmlvLXdpZHRoOiByZW0tY2FsYyg2MjlweCk7XG4kcGhjLWZvb3Rlci1pY29uOiByZW0tY2FsYyg1NHB4KTtcblxuLnBoYy1mb290ZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIHJvdy1nYXA6ICRwaGMtYmxvY2stcm93LWdhcDtcblxuICAvLyBGdWxsIGJsZWVkLCB1bmxpa2UgdGhlIGJsb2NrcyBhYm92ZSBpdCDigJQgdGhlIGZvb3RlciBpcyBhIGJhbmQgYWNyb3NzIHRoZVxuICAvLyBib3R0b20gb2YgdGhlIHBhZ2UgcmF0aGVyIHRoYW4gYW5vdGhlciBjb2x1bW4gb2YgY29udGVudCwgc28gaXQgaXMgbm90IGhlbGRcbiAgLy8gdG8gdGhlIDE0NDAgcGFnZSB3aWR0aC4gVGhlIG1lbnUgc3RpbGwgaXMuXG4gIHdpZHRoOiAxMDAlO1xuXG4gIC8vIDQwIGFsbCByb3VuZCBpcyB3aGF0IHRoZSBGb290ZXJzIGNvbXBvbmVudCBoYXM6IGl0cyBjb3B5cmlnaHQgc2l0cyA0MCBhYm92ZVxuICAvLyB0aGUgYm90dG9tIGVkZ2UuIFRoZSBleHRyYSByb29tIHVuZGVybmVhdGggaXMgZm9yIHRoZSBtZW51IGJhciwgYW5kIGJlbG9uZ3NcbiAgLy8gdG8gdGhlIHBhZ2VzIHRoYXQgaGF2ZSBvbmUg4oCUIHNlZSAucGhjLWhhcy1tZW51IGJlbG93LlxuICBwYWRkaW5nOiAkcGhjLWJsb2NrLXBhZGRpbmc7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXBoYy1jb250cmFzdC1iZyk7XG4gIGNvbG9yOiB2YXIoLS1waGMtY29udHJhc3QtZmcpO1xuXG4gIC8vIFRoZSBtYXJrLCB3aGljaCB0aGUgRm9vdGVycyBjb21wb25lbnQgY2FycmllcyBvbmx5IGluIGl0cyBNb2JpbGUgdmFyaWFudHMg4oCUXG4gIC8vIHRoZSBkZXNrdG9wIGZvb3RlciBvcGVucyBzdHJhaWdodCBpbnRvIHRoZSBiaW8uIE1hc2tlZCByYXRoZXIgdGhhbiBhbiA8aW1nPlxuICAvLyBzbyBpdCB0YWtlcyB0aGUgYmFuZCdzIG93biBpbmsgYW5kIHdvcmtzIGluIGJvdGggc2NoZW1lcyBmcm9tIG9uZSBmaWxlLlxuICAvLyBBIGZ1bGwtd2lkdGggYmFuZCB3aXRoIHRoZSBnbHlwaCBjZW50cmVkIGluc2lkZSBpdCBieSB0aGUgbWFzaywgcmF0aGVyIHRoYW5cbiAgLy8gYW4gODAtd2lkZSBib3ggY2VudHJlZCBieSBtYXJnaW5zIOKAlCB0aGUgZm9vdGVyIGlzIGEgd3JhcHBpbmcgZmxleCByb3csIHNvIGFcbiAgLy8gZnVsbCBiYXNpcyBpcyB3aGF0IHB1dHMgdGhlIG1hcmsgb24gYSBsaW5lIG9mIGl0cyBvd24uXG4gICZfX21hcmsge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgZmxleDogMCAwIDEwMCU7XG4gICAgaGVpZ2h0OiBwaGMtbGVuKDgwcHgpO1xuICAgIG1hcmdpbi1ib3R0b206ICRwaGMtYmxvY2stcm93LWdhcDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1waGMtY29udHJhc3QtZmcpO1xuICAgIG1hc2s6IHVybCgnLi4vaW1hZ2VzL2gtbG9nby5zdmcnKSBjZW50ZXIgLyBjb250YWluIG5vLXJlcGVhdDtcbiAgICAtd2Via2l0LW1hc2s6IHVybCgnLi4vaW1hZ2VzL2gtbG9nby5zdmcnKSBjZW50ZXIgLyBjb250YWluIG5vLXJlcGVhdDtcbiAgfVxuXG4gICZfX2JpbyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGZsZXg6IDAgMSAkcGhjLWZvb3Rlci1iaW8td2lkdGg7XG4gICAgZ2FwOiByZW0tY2FsYygxMHB4KTtcbiAgICBtaW4td2lkdGg6IDA7XG5cbiAgICBwIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICB9XG4gIH1cblxuICAmX19saW5rZWRpbiB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6ICRwaGMtZm9vdGVyLWljb247XG4gICAgaGVpZ2h0OiAkcGhjLWZvb3Rlci1pY29uO1xuXG4gICAgaW1nIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgfVxuICB9XG5cbiAgLy8gU2hvd24gaW5zdGVhZCBvZiB0aGUgaWNvbiBvbmNlIGEgcHJvZmlsZSBhZGRyZXNzIGlzIHNldCwgc2luY2Ugb25lIGxpbmsgb25cbiAgLy8gaXRzIG93biByZWFkcyBiZXR0ZXIgYXMgYSBtYXJrIGFuZCB0d28gcmVhZCBiZXR0ZXIgYXMgYSBzaG9ydCBsaXN0LlxuICAvLyBUaGUgY29sdW1uIGFscmVhZHkgaHVncyBpdHMgd2lkZXN0IGxpbmsg4oCUIHRoZSBiYXNpcyBpcyBhdXRvLCBzbyBpdHMgd2lkdGhcbiAgLy8gaXMgaG93ZXZlciB3aWRlIFwiTGlua2VkSW4g4oaSXCIgaGFwcGVucyB0byBiZSDigJQgYW5kIGl0IGtlZXBzIGl0cyBwbGFjZSBhdCB0aGVcbiAgLy8gZW5kIG9mIHRoZSBmb290ZXIncyByb3cuIE9ubHkgd2hhdCBoYXBwZW5zIGluc2lkZSBpdCBjaGFuZ2VzIGhlcmU6IHRoZVxuICAvLyBsaW5rcyBzdGFydCB0b2dldGhlciBvbiB0aGUgbGVmdCByYXRoZXIgdGhhbiBiZWluZyBwdXNoZWQgcmlnaHQsIHNvIHRoZWlyXG4gIC8vIGxhYmVscyBsaW5lIHVwIGFuZCB0aGUgYXJyb3dzIGZhbGwgd2hlcmUgdGhlIHdvcmRzIGVuZC5cbiAgJl9fbGlua3Mge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICBnYXA6IHJlbS1jYWxjKDEwcHgpO1xuICB9XG5cbiAgJl9fbGluayB7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgQG1lZGlhIChob3ZlcjogaG92ZXIpIHtcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBUaGUgY29weXJpZ2h0IHNpdHMgb24gaXRzIG93biBsaW5lIHVuZGVyIGJvdGgsIGhlbmNlIHRoZSBmdWxsLXdpZHRoIGJhc2lzLlxuICAmX19jb3B5cmlnaHQge1xuICAgIGZsZXg6IDEgMCAxMDAlO1xuICAgIG1hcmdpbjogMDtcbiAgICBjb2xvcjogdmFyKC0tcGhjLWNvbnRyYXN0LW11dGVkKTtcbiAgfVxufVxuXG4vLyBSb29tIGZvciB0aGUgYmFyLCB3aGljaCBpcyBmaXhlZCBvdmVyIHRoZSBmb290IG9mIHRoZSBwYWdlIGFuZCB3b3VsZFxuLy8gb3RoZXJ3aXNlIHNpdCBvbiB0aGUgY29weXJpZ2h0LiBPbmx5IG9uIHRoZSBwYWdlcyB0aGF0IGhhdmUgb25lIOKAlCBldmVyeXdoZXJlXG4vLyBlbHNlIHRoaXMgd2FzIGEgYmFuZCBvZiBlbXB0eSBncm91bmQgdGhlIGRlc2lnbiBuZXZlciBhc2tlZCBmb3IuXG4ucGhjLWhhcy1tZW51IC5waGMtZm9vdGVyIHtcbiAgcGFkZGluZy1ib3R0b206IHJlbS1jYWxjKDE3NnB4KTtcbn1cblxuQGluY2x1ZGUgbWVkaWEoJzx0YWJsZXQnKSB7XG4gIC5waGMtZm9vdGVyIHtcbiAgICBwYWRkaW5nOiAkbW9iaWxlLW1hcmdpbjtcblxuICAgICZfX21hcmsge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgJl9fYmlvIHtcbiAgICAgIGZsZXgtYmFzaXM6IDEwMCU7XG4gICAgfVxuICB9XG5cbiAgLy8gRGVjbGFyZWQgYWZ0ZXIgdGhlIHNob3J0aGFuZCBhYm92ZSwgYW5kIG1hdGNoaW5nIHRoZSBjbGFzcyB0aGUgc2hvcnRoYW5kXG4gIC8vIGRvZXMgbm90LCBzbyBpdCBzdXJ2aXZlcyBpdC5cbiAgLnBoYy1oYXMtbWVudSAucGhjLWZvb3RlciB7XG4gICAgcGFkZGluZy1ib3R0b206IHJlbS1jYWxjKDI1NnB4KTtcbiAgfVxufVxuIiwiQG1peGluIGZvcm0tZWxlbWVudCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBtYXJnaW4tYm90dG9tOiAxNnB4O1xuICBmb250LXNpemU6IDEuNnJlbSAhaW1wb3J0YW50O1xuICBwYWRkaW5nOiA1cHggMDtcblxuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3gtc2hhZG93OiBub25lO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYmxhY2spO1xuXG4gIC8vIGZvbnQtZmFtaWx5OiAkaW5wdXQtZm9udC1mYW1pbHk7XG4gIC8vIGZvbnQtc2l6ZTogJHNtYWxsLWZvbnQtc2l6ZTtcbiAgLy8gZm9udC13ZWlnaHQ6ICRpbnB1dC1mb250LXdlaWdodDtcbiAgLy8gY29sb3I6ICRpbnB1dC1jb2xvcjtcbiAgYXBwZWFyYW5jZTogbm9uZTtcblxuICBsaW5lLWhlaWdodDogMS4yO1xuXG4gIHRyYW5zaXRpb246IGFsbCAwLjI1cyBlYXNlLW91dDtcblxuICAvLyBGb2N1cyBzdGF0ZVxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiAwO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIC8vIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkcHJpbWFyeS1jb2xvcjtcbiAgfVxufVxuXG4vLyBUZXh0IGlucHV0c1xuW3R5cGU9XCJ0ZXh0XCJdLCBbdHlwZT1cInBhc3N3b3JkXCJdLCBbdHlwZT1cImRhdGVcIl0sIFt0eXBlPVwiZGF0ZXRpbWVcIl0sIFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl0sIFt0eXBlPVwibW9udGhcIl0sIFt0eXBlPVwid2Vla1wiXSwgW3R5cGU9XCJlbWFpbFwiXSwgW3R5cGU9XCJudW1iZXJcIl0sIFt0eXBlPVwic2VhcmNoXCJdLCBbdHlwZT1cInRlbFwiXSwgW3R5cGU9XCJ0aW1lXCJdLCBbdHlwZT1cInVybFwiXSwgW3R5cGU9XCJjb2xvclwiXSxcbmlucHV0LFxudGV4dGFyZWEge1xuICBAaW5jbHVkZSBmb3JtLWVsZW1lbnQ7XG59XG5cbi8vIFRleHQgYXJlYXNcbnRleHRhcmVhIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICByZXNpemU6IG5vbmU7XG5cbiAgJltyb3dzXSB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG59XG5cbi8vIERpc2FibGVkL3JlYWRvbmx5IHN0YXRlXG5pbnB1dDpkaXNhYmxlZCxcbmlucHV0W3JlYWRvbmx5XSxcbnRleHRhcmVhW3JlYWRvbmx5XSB7XG4gIC8vIGJhY2tncm91bmQtY29sb3I6ICNDQ0M7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG59XG5cbi8vIFJlc2V0IHN0eWxlcyBvbiBidXR0b24tbGlrZSBpbnB1dHNcblt0eXBlPSdzdWJtaXQnXSxcblt0eXBlPSdidXR0b24nXSB7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIC8vIGJvcmRlci1yYWRpdXM6ICRmb3JtLWJ1dHRvbi1yYWRpdXM7XG59XG5cbi8vIFJlc2V0IE5vcm1hbGl6ZSBzZXR0aW5nIGNvbnRlbnQtYm94IHRvIHNlYXJjaCBlbGVtZW50c1xuaW5wdXRbdHlwZT0nc2VhcmNoJ10ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4vLyBOdW1iZXIgaW5wdXQgc3R5bGVzXG5bdHlwZT0nbnVtYmVyJ10ge1xuICAvLyBAaWYgbm90ICRpbnB1dC1udW1iZXItc3Bpbm5lcnMge1xuICAtbW96LWFwcGVhcmFuY2U6IHRleHRmaWVsZDtcblxuICAmOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuICAmOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgbWFyZ2luOiAwO1xuICB9XG4gIC8vIH1cbn1cblxuLy8gUGxhY2Vob2xkZXIgdGV4dFxuOjpwbGFjZWhvbGRlciB7XG4gIC8vIGNvbG9yOiAkaW5wdXQtcGxhY2Vob2xkZXItY29sb3I7XG59XG5cbmxhYmVsIHtcbiAgZm9udC1zaXplOiAxLjJyZW07XG4gIC8vIGNvbG9yOiByZ2JhKCRjb2xvci1ibGFjaywgMC42KTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cbiIsIlxuLmJ1dHRvbiB7XG4gICRidG46ICY7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1taWRkbGUtZ3JleSk7XG4gIGNvbG9yOiB2YXIoLS13aGl0ZSk7XG4gIHBhZGRpbmc6IDIwcHg7XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIG91dGxpbmU6IDA7XG5cbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICY6aG92ZXIsXG4gICY6YWN0aXZlIHtcbiAgICBvdXRsaW5lOiAwO1xuICB9XG5cbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG5cbiAgY3Vyc29yOiBwb2ludGVyO1xuXG4gIEBpbmNsdWRlIG1lZGlhKCc+PWRlc2t0b3AnKSB7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtcyk7XG4gIH1cblxuICBAbWVkaWEgKGhvdmVyOiBob3Zlcikge1xuICAgICY6aG92ZXIge1xuXG4gICAgfVxuICB9XG4gICY6YWN0aXZlIHtcblxuICB9XG5cblxufVxuIiwiLy8gU2hhcmVkIGJlZCBmb3IgdGhlIHJlZGVzaWduIGJsb2Nrcy5cbi8vXG4vLyBFdmVyeSBibG9jayBpbiB0aGUgbmV3IHBhZ2UgdGVtcGxhdGUgaXMgdGhlIHNhbWUgdGhyZWUgY29sdW1ucyDigJQgYSBmaXhlZFxuLy8gbGFiZWwsIHRoZW4gRW5nbGlzaCBhbmQgSmFwYW5lc2Ugc2lkZSBieSBzaWRlLiBXaWR0aHMgY29tZSBzdHJhaWdodCBmcm9tIHRoZVxuLy8gRmlnbWEgY29tcG9uZW50OiA0MjAgKyAyMCArIDQ1MCArIDIwICsgNDUwIGZpbGxzIHRoZSAxMzYwcHggaW5zaWRlIGEgMTQ0MHB4XG4vLyBwYWdlJ3MgNDBweCBwYWRkaW5nLCBzbyB0aGUgdGhyZWUgY29sdW1ucyBsYW5kIGV4YWN0bHkgb24gdGhlIHBhZ2Ugd2lkdGguXG4vL1xuLy8gVGhlIEphcGFuZXNlIGNvbHVtbiBpcyBhbHdheXMgbGFpZCBvdXQsIGV2ZW4gd2l0aCBub3RoaW5nIGluIGl0LCBzbyBhIHBhZ2Vcbi8vIGhhbGYtdHJhbnNsYXRlZCBkb2VzIG5vdCByZWZsb3cgYXMgY29weSBhcnJpdmVzLlxuXG4vLyBTcGFjaW5nIGFuZCBjb2x1bW4gd2lkdGhzIGxpdmUgaW4gX3ZhcmlhYmxlcy5zY3NzIHdpdGggdGhlIHJlc3Qgb2YgdGhlXG4vLyByZWRlc2lnbiB0b2tlbnMsIHNvIGJhc2UvX3R5cG9ncmFwaHkuc2NzcyBjYW4gc2hhcmUgdGhlbS5cblxuLnBoYy1ibG9jayB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBnYXA6ICRwaGMtYmxvY2stcm93LWdhcDtcblxuICAvLyBGdWxsIGJsZWVkLCBsaWtlIHRoZSBmb290ZXIuIFRoZSBjb2x1bW5zIGFyZSByZW0sIHNvIHBhc3QgdGhlIGRlc2lnbidzIDE0NDBcbiAgLy8gY2FudmFzIHRoZXkgd2lkZW4gd2l0aCB0aGUgcm9vdCBmb250IHNpemUgcmF0aGVyIHRoYW4gdGhlIHBhZ2UgZW5kaW5nIGluIGFcbiAgLy8gYmFuZCBvZiB3aGl0ZXNwYWNlIOKAlCBzZWUgYmFzZS9fYmFzZS5zY3NzIGZvciB3aGVyZSB0aGF0IHNjYWxpbmcgc3RhcnRzLlxuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogJHBoYy1ibG9jay1wYWRkaW5nO1xuICBjb2xvcjogdmFyKC0tcGhjLWZnKTtcblxuICAmX19yb3cge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgIGdhcDogJHBoYy1ibG9jay1nYXA7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAvLyBUaGVzZSBjYXJyeSBnZW9tZXRyeSBvbmx5LiBUeXBlIGNvbWVzIGZyb20gYSAudGV4dC1waGMtKiB1dGlsaXR5IGFwcGxpZWRcbiAgLy8gYWxvbmdzaWRlIHRoZW0gaW4gdGhlIG1hcmt1cCwgc28gYSBibG9jayBjYW4gcmVzdHlsZSBpdHMgY29weSB3aXRob3V0XG4gIC8vIHRvdWNoaW5nIHRoZSBjb2x1bW4gd2lkdGhzIHRoYXQga2VlcCB0aGUgcGFnZSBhbGlnbmVkLlxuICAvL1xuICAvLyBUaGUgbGFiZWwgbmV2ZXIgZmxleGVzIOKAlCBpdCBpcyB3aGF0IGhvbGRzIHRoZSByZWFkaW5nIGNvbHVtbnMgaW4gcGxhY2UgYWxsXG4gIC8vIHRoZSB3YXkgZG93biB0aGUgcGFnZS5cbiAgJl9fbGFiZWwge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIG1pbi13aWR0aDogJHBoYy1ibG9jay1sYWJlbC13aWR0aDtcbiAgICBtYXgtd2lkdGg6ICRwaGMtYmxvY2stbGFiZWwtd2lkdGg7XG4gIH1cblxuICAmX19lbiB7XG4gICAgZmxleDogMSAwIDA7XG4gICAgbWluLXdpZHRoOiAkcGhjLWJsb2NrLWNvbHVtbi1taW47XG4gIH1cblxuICAmX19qcCB7XG4gICAgZmxleDogMSAwIDA7XG4gICAgbWluLXdpZHRoOiAkcGhjLWJsb2NrLWNvbHVtbi1taW47XG4gIH1cblxuICAvLyBUaGUgcGFnZSB0aXRsZS4gVGhlIGRlc2lnbiBzZXRzIGl0IGJlc2lkZSBhIDMxMHB4IGNvbHVtbiB0aGF0IGlzIGVtcHR5IGluXG4gIC8vIHRoaXMgYmxvY2ssIHNvIHRoZSBtYXgtd2lkdGggcmVwcm9kdWNlcyB0aGUgcG9pbnQgd2hlcmUgaXQgd3JhcHMgd2l0aG91dFxuICAvLyBuZWVkaW5nIGEgcGxhY2Vob2xkZXIgZWxlbWVudCB0byBob2xkIHRoYXQgc3BhY2UuXG4gICZfX3RpdGxlIHtcbiAgICBmbGV4OiAxIDAgMDtcbiAgICBtaW4td2lkdGg6ICRwaGMtYmxvY2std2lkZS1taW47XG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAjeyRwaGMtYmxvY2stZGV0YWlsLW1pbiArICRwaGMtYmxvY2stZ2FwfSk7XG4gICAgbWFyZ2luOiAwO1xuICB9XG5cbiAgLy8gQSBmaWd1cmUgYW5kIGl0cyBjYXB0aW9uOiBvbmUgbGFyZ2UgbnVtYmVyLCB0aGVuIHRoZSBzYW1lIG5vdGUgaW4gYm90aFxuICAvLyBsYW5ndWFnZXMgb24gY29uc2VjdXRpdmUgbGluZXMuXG4gICZfX2ZpZ3VyZSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4OiAxIDAgMDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGdhcDogJHBoYy1ibG9jay1nYXA7XG4gICAgbWluLXdpZHRoOiAkcGhjLWJsb2NrLXdpZGUtbWluO1xuICAgIG1heC13aWR0aDogJHBoYy1ibG9jay1jb2x1bW4tbWluO1xuICB9XG5cbiAgJl9fZmlndXJlLXZhbHVlIHtcbiAgICBtYXJnaW46IDA7XG4gIH1cblxuICAmX19maWd1cmUtY2FwdGlvbiB7XG4gICAgcCB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgfVxuICB9XG5cbiAgLy8gVGhlIHByb2ZpbGUgcGFnZSBzZXRzIGl0cyBsYWJlbHMgcXVpZXRlciB0aGFuIHRoZSBhcnRpY2xlIGJsb2NrcyBkbyDigJRcbiAgLy8gc21hbGx0eXBlIGluIHRoZSBtdXRlZCByb2xlIHJhdGhlciB0aGFuIHN0YW5kYXJkIGluIHRoZSBmb3JlZ3JvdW5kLlxuICAmX19sYWJlbC0tbXV0ZWQge1xuICAgIGNvbG9yOiB2YXIoLS1waGMtbXV0ZWQpO1xuICB9XG5cbiAgLy8gVGhlIHByb2ZpbGUncyBvcGVuaW5nIHN0YXRlbWVudCwgd2hpY2ggcnVucyBhdCB0aXRsZSBzaXplIHJhdGhlciB0aGFuIGJvZHlcbiAgLy8gc2l6ZS4gSXRzIG1pbmltdW0gaXMgd2lkZXIgdGhhbiBhIHJlYWRpbmcgY29sdW1uIHNvIGl0IGRvZXMgbm90IGJyZWFrIGludG9cbiAgLy8gYSBuYXJyb3cgcmliYm9uIGJlZm9yZSB0aGUgcm93IHdyYXBzLlxuICAmX19pbnRybyB7XG4gICAgZmxleDogMSAwIDA7XG4gICAgbWluLXdpZHRoOiAkcGhjLWJsb2NrLWludHJvLW1pbjtcbiAgfVxuXG4gIC8vIFRoZSBKYXBhbmVzZSBoYWxmIG9mIHRoYXQgc3RhdGVtZW50IHJlYWRzIGFzIHRoZSBzYW1lIHBhc3NhZ2UgaW4gdGhlIG90aGVyXG4gIC8vIGxhbmd1YWdlLCBub3QgYXMgYSBzZWNvbmQgcGFyYWdyYXBoLCBzbyBpdCBrZWVwcyB0aGUgRW5nbGlzaCBjb2x1bW4gcmF0aGVyXG4gIC8vIHRoYW4gZHJvcHBpbmcgdG8gdGhlIGZ1bGwgcGFnZSB3aWR0aC4gQm90aCBpbnRyb3MgYXJlIHdpZGVyIHRoYW4gaGFsZiB0aGVcbiAgLy8gcm93LCBzbyB0aGV5IHdlcmUgYWx3YXlzIGdvaW5nIHRvIHNpdCBvbiBzZXBhcmF0ZSBsaW5lcyDigJQgdGhpcyBpbmRlbnRzIHRoZVxuICAvLyBzZWNvbmQgb25lIGJ5IHRoZSBsYWJlbCBjb2x1bW4gYW5kIGNhcHMgaXQgYXQgd2hhdCBpcyBsZWZ0LCB3aGljaCBpcyB0aGVcbiAgLy8gd2lkdGggdGhlIEVuZ2xpc2ggdG9vayBvbiB0aGUgbGluZSBhYm92ZS5cbiAgJl9faW50cm8tLWpwIHtcbiAgICBmbGV4LWJhc2lzOiAxMDAlO1xuICAgIG1hcmdpbi1sZWZ0OiAkcGhjLWJsb2NrLWxhYmVsLXdpZHRoICsgJHBoYy1ibG9jay1nYXA7XG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAjeyRwaGMtYmxvY2stbGFiZWwtd2lkdGggKyAkcGhjLWJsb2NrLWdhcH0pO1xuICB9XG5cbiAgLy8gQSBzaW5nbGUgcHJvbWluZW50IGxpbmsg4oCUIHRoZSBMaW5rZWRJbiByb3cgdW5kZXIgdGhlIHByb2ZpbGUgc3RhdGVtZW50LlxuICAvL1xuICAvLyBObyBob3ZlciBjb2xvdXIuIEl0IHVzZWQgdG8gZGltIHRvIHRoZSBtdXRlZCByb2xlLCB3aGljaCBpcyB0aGUgd3JvbmcgbW92ZVxuICAvLyBmb3IgdGhpcyBvbmU6IGF0IGZvb3RlcmxpbmthZ2UgaXQgaXMgdGhlIGxhcmdlc3QgdGhpbmcgb24gdGhlIHJvdywgYW5kXG4gIC8vIGRyYWluaW5nIGl0IG9uIGFwcHJvYWNoIHJlYWRzIGFzIGdvaW5nIG91dCByYXRoZXIgdGhhbiBsaWdodGluZyB1cC4gSXRzXG4gIC8vIGFycm93IGxlYW5zIGluc3RlYWQsIHdoaWNoIGlzIHdoYXQgZXZlcnkgb3RoZXIgbGluayBpbiB0aGUgcmVkZXNpZ24gZG9lcy5cbiAgLy9cbiAgLy8gTm90aGluZyB0byBzd2l0Y2ggb2ZmIHBlciBzY2hlbWUsIGFuZCBubyA6bm90KCkgdG8gY2Fycnkg4oCUIHRoZSBydWxlIHNpbXBseVxuICAvLyBpcyBub3QgaGVyZSwgc28gYnJpZ2h0IGFuZCBkYXJrIGJvdGggZ2V0IHRoZSBpbmsgdGhleSBpbmhlcml0IGZyb20gdGhlXG4gIC8vIGJsb2NrIGFuZCBrZWVwIGl0LlxuICAmX19saW5rIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogcmVtLWNhbGMoMTBweCk7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgaW1nIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgd2lkdGg6IHJlbS1jYWxjKDQwcHgpO1xuICAgICAgaGVpZ2h0OiByZW0tY2FsYyg0MHB4KTtcbiAgICB9XG4gIH1cblxuICAvLyBEZXRhaWwgY2VsbHMgYXJlIG5hcnJvd2VyIHRoYW4gcmVhZGluZyBjb2x1bW5zIOKAlCB0aGUgZGVzaWduIGdpdmVzIHRoZW1cbiAgLy8gMzEwcHggYWdhaW5zdCB0aGUgNDUwcHggYm9keSBjb3B5IGdldHMsIHNpbmNlIHRoZXkgaG9sZCBsYWJlbHMgYW5kIG5hbWVzXG4gIC8vIHJhdGhlciB0aGFuIHNlbnRlbmNlcy5cbiAgJl9fZGV0YWlsIHtcbiAgICBmbGV4OiAxIDAgMDtcbiAgICBtaW4td2lkdGg6ICRwaGMtYmxvY2stZGV0YWlsLW1pbjtcblxuICAgIC8vIEEgdGVybSBhbmQgaXRzIHZhbHVlIGFyZSBjb25zZWN1dGl2ZSBsaW5lcywgbm90IHNwYWNlZCBwYXJhZ3JhcGhzLlxuICAgIHAge1xuICAgICAgbWFyZ2luOiAwO1xuICAgIH1cbiAgfVxuXG4gIC8vIEVkaXRvciBjb3B5IGNhcnJpZXMgYSB0cmFpbGluZyBtYXJnaW4gb24gaXRzIGxhc3QgcGFyYWdyYXBoLCB3aGljaCBsYW5kcyBvblxuICAvLyB0b3Agb2YgdGhlIGdhcHMgc2V0IGFib3ZlIGluc3RlYWQgb2YgcmVwbGFjaW5nIHRoZW0uIFNpZGUgYnkgc2lkZSB0aGF0IGp1c3RcbiAgLy8gcGFkcyB0aGUgYm90dG9tIG9mIGEgY29sdW1uOyBzdGFja2VkIG9uIG1vYmlsZSBpdCBkb3VibGVzIHRoZSBzcGFjZSBiZXR3ZWVuXG4gIC8vIEVuZ2xpc2ggYW5kIEphcGFuZXNlLiBTcGFjaW5nIGJldHdlZW4gcGFydHMgb2YgYSBibG9jayBpcyB0aGUgZ2FwJ3Mgam9iLlxuICAmX19sYWJlbCxcbiAgJl9fZW4sXG4gICZfX2pwIHtcbiAgICA+IDpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG5cbiAgLy8gVGhlIGRlc2lnbiBjbG9zZXMgYSBkZXRhaWxzIGJsb2NrIHdpdGggYSBydWxlLiBJdHMgY29sb3VyIGZvbGxvd3MgdGhlXG4gIC8vIGJyaWdodC9kYXJrIHJvbGUgcmF0aGVyIHRoYW4gYmVpbmcgZml4ZWQsIHNpbmNlIHRoZSBGaWdtYSBsaWJyYXJ5IGNhcnJpZXNcbiAgLy8gd2hpdGUsIGdyZXkgYW5kIGJsYWNrIHZhcmlhbnRzIGZvciBleGFjdGx5IHRoYXQgcmVhc29uLlxuICAmX19ydWxlIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW46IHJlbS1jYWxjKDEwcHgpIDAgMDtcbiAgICBib3JkZXI6IDA7XG4gICAgLy8gQSBoYWlybGluZSBzdGF5cyBhIGhhaXJsaW5lIOKAlCB0aGlzIGlzIHRoZSBvbmUgbGVuZ3RoIHRoYXQgc2hvdWxkIG5vdFxuICAgIC8vIHNjYWxlIHdpdGggdGhlIHJlYWRlcidzIGZvbnQgc2l6ZS5cbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tcGhjLXJ1bGUpO1xuICB9XG5cbiAgLy8gVGhlIHRocmVlIHRoZSBMaW5lIGNvbXBvbmVudCBjb21lcyBpbiwgc3RyYWlnaHQgb2ZmIHRoZSBGaWdtYSB2YXJpYWJsZXMuXG4gIC8vIE5hbWVkIHJhdGhlciB0aGFuIHJvbGUtYmFzZWQgb24gcHVycG9zZTogYSBydWxlIHRoYXQgY2xvc2VzIGEgYmxvY2sgYmVsb25nc1xuICAvLyB0byB0aGUgcGFnZSBhbmQgZm9sbG93cyAtLXBoYy1ydWxlIGFib3ZlLCBidXQgdGhlIERpdmlkZXIgYmxvY2sgaXMgY2hvc2VuXG4gIC8vIGFnYWluc3QgdGhlIHR3byBibG9ja3MgaXQgc2VwYXJhdGVzLCB3aGljaCBpcyBhIHBlci1kaXZpZGVyIGRlY2lzaW9uLlxuICAmX19ydWxlLS1ncmF5IHtcbiAgICBib3JkZXItdG9wLWNvbG9yOiB2YXIoLS1waGMtZ3JheSk7XG4gIH1cblxuICAmX19ydWxlLS13aGl0ZSB7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogdmFyKC0tcGhjLXdoaXRlLWFmKTtcbiAgfVxuXG4gICZfX3J1bGUtLWJsYWNrIHtcbiAgICBib3JkZXItdG9wLWNvbG9yOiB2YXIoLS1waGMtYmxhY2stYWYpO1xuICB9XG59XG5cbi8vIEJlbG93IHRhYmxldCB0aGUgZGVzaWduIHN0YWNrcyBldmVyeXRoaW5nIGZ1bGwgd2lkdGguIFdpdGhvdXQgdGhpcyB0aGVcbi8vIG1pbi13aWR0aHMgYWJvdmUgd291bGQgcHVzaCB0aGUgcm93IHdpZGVyIHRoYW4gdGhlIHNjcmVlbi5cbkBpbmNsdWRlIG1lZGlhKCc8dGFibGV0Jykge1xuICAucGhjLWJsb2NrIHtcbiAgICAvLyBUaGUgdGhlbWUncyBvd24gZ3V0dGVyIHJhdGhlciB0aGFuIGEgcHggdmFsdWUsIHNvIHRoZSBibG9ja3MgbGluZSB1cCB3aXRoXG4gICAgLy8gZXZlcnl0aGluZyBlbHNlIG9uIHRoZSBwYWdlIGF0IG1vYmlsZSB3aWR0aHMuXG4gICAgcGFkZGluZzogJG1vYmlsZS1tYXJnaW47XG4gICAgZ2FwOiAkcGhjLWJsb2NrLWdhcDtcblxuICAgICZfX3RpdGxlLFxuICAgICZfX2ZpZ3VyZSxcbiAgICAmX19kZXRhaWwsXG4gICAgJl9fbGFiZWwsXG4gICAgJl9fZW4sXG4gICAgJl9fanAsXG4gICAgJl9faW50cm8ge1xuICAgICAgZmxleDogMSAxIDEwMCU7XG4gICAgICBtaW4td2lkdGg6IDEwMCU7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgLy8gU3RhY2tlZCBmdWxsIHdpZHRoLCB0aGVyZSBpcyBubyBsYWJlbCBjb2x1bW4gdG8gY2xlYXIuXG4gICAgJl9faW50cm8tLWpwIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cbiAgfVxufVxuXG4vLyBUaGUgcHJvZmlsZSdzIHJvd3Mgc2l0IGNsb3NlciB0b2dldGhlciB0aGFuIGEgcmVhZGluZyBibG9jaydzIOKAlCBlYWNoIGVudHJ5IGlzXG4vLyBhIGNvdXBsZSBvZiBzaG9ydCBsaW5lcyByYXRoZXIgdGhhbiBhIHBhcmFncmFwaCwgc28gNHB4IGJldHdlZW4gdGhlIGNvbHVtbnNcbi8vIG9mIG9uZSBlbnRyeSBhbmQgMjBweCBiZXR3ZWVuIGVudHJpZXMuXG4ucGhjLWJsb2NrLS1leHBlcmllbmNlLFxuLnBoYy1ibG9jay0tcHJvZmlsZS1pbnRybyB7XG4gIGdhcDogJHBoYy1ibG9jay1nYXA7XG59XG5cbi5waGMtYmxvY2tfX3Jvdy0tZW50cnkge1xuICByb3ctZ2FwOiByZW0tY2FsYyg0cHgpO1xufVxuXG4vLyBBIHJ1bGUgc3RhbmRpbmcgb24gaXRzIG93biBiZXR3ZWVuIHR3byBibG9ja3MuIFRoZSBEaXZpZGVyIGNvbXBvbmVudCBpcyBhXG4vLyAxNDAwIGxpbmUgaW5zaWRlIHRoZSAxNDQwIHBhZ2Ug4oCUIHRoZSBwYWdlIG1hcmdpbnMsIG5vIG1vcmUg4oCUIHNpdHRpbmcgaW4gYSBib3hcbi8vIDIwIHRhbGwgd2l0aCB0aGUgbGluZSBhY3Jvc3MgdGhlIG1pZGRsZS4gU28gdGhpcyBrZWVwcyB0aGUgc2lkZSBwYWRkaW5nIHRoYXRcbi8vIGxpbmVzIGl0IHVwIHdpdGggZXZlcnkgb3RoZXIgYmxvY2sgYW5kIGRyb3BzIHRoZSB2ZXJ0aWNhbCwgbGVhdmluZyB0aGUgcnVsZSdzXG4vLyBvd24gdGVuIGFib3ZlIGFuZCB0ZW4gYmVsb3cgdG8gYmUgdGhlIHdob2xlIGhlaWdodCBvZiBpdC5cbi5waGMtYmxvY2stLWRpdmlkZXIge1xuICBwYWRkaW5nLXRvcDogMDtcbiAgcGFkZGluZy1ib3R0b206IDA7XG5cbiAgLnBoYy1ibG9ja19fcnVsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTBweCk7XG4gIH1cbn1cblxuLy8gRGV0YWlscyBzaXRzIGZsdXNoIHVuZGVyIHRoZSBibG9jayBhYm92ZSBpdCBhbmQgY2xvc2VzIHdpdGggaXRzIG93biBydWxlLCBzb1xuLy8gaXQgY2FycmllcyBubyB0b3AgcGFkZGluZyBhbmQgdGlnaHRlciByb3cgc3BhY2luZyB0aGFuIGEgcmVhZGluZyBibG9jay5cbi8vXG4vLyBEZWNsYXJlZCBhZnRlciB0aGUgbWVkaWEgcXVlcnkgb24gcHVycG9zZTogdGhhdCBibG9jayBzZXRzIGBwYWRkaW5nYCBhcyBhXG4vLyBzaG9ydGhhbmQsIHdoaWNoIHdvdWxkIG90aGVyd2lzZSBwdXQgdGhlIHRvcCBwYWRkaW5nIGJhY2sgYXQgbW9iaWxlIHdpZHRocy5cbi5waGMtYmxvY2stLWRldGFpbHMge1xuICBnYXA6ICRwaGMtYmxvY2stZ2FwO1xuICBwYWRkaW5nLXRvcDogMDtcbn1cblxuLy8gXCJCYWNrIHRvIHBvcnRmb2xpb1wiLiBTaXRzIG9uIHRoZSBwYWdlJ3Mgb3duIGdyb3VuZCByYXRoZXIgdGhhbiBhIGJsb2NrJ3MsIHNvXG4vLyBpdCB0YWtlcyB0aGUgcGFnZSByb2xlcyBhbmQgbWF0Y2hlcyB0aGUgcGFkZGluZyB0aGUgYmxvY2tzIHVzZSDigJQgaXQgcmVhZHMgYXNcbi8vIHBhcnQgb2YgdGhlIHBhZ2UgZnVybml0dXJlIHJhdGhlciB0aGFuIGFzIGNvbnRlbnQuXG4ucGhjLWJhY2sge1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogJHBoYy1ibG9jay1wYWRkaW5nO1xuICBjb2xvcjogdmFyKC0tcGhjLWZnKTtcblxuICAmX19saW5rIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgY29sb3I6IHZhcigtLXBoYy1mZyk7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgQG1lZGlhIChob3ZlcjogaG92ZXIpIHtcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBjb2xvcjogdmFyKC0tcGhjLWZnKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxufVxuXG4vLyBUaGUgY29weSBhdCB0aGUgdG9wIG9mIHRoZSBwYWdlIGZsb2F0cyBpbiB0aGUgY29ybmVyIG9mIHdoYXRldmVyIG9wZW5zIGl0IOKAlFxuLy8gYSBoZXJvLCBvciB0aGUgZmlyc3QgaW1hZ2Ugb24gYSBwYWdlIHN0aWxsIG9uIHRoZSBvbGQgZGVzaWduIOKAlCByYXRoZXIgdGhhblxuLy8gdGFraW5nIGEgcm93IG9mIGl0cyBvd24gYWJvdmUgaXQuIFRoZSBwcm9maWxlIGRlc2lnbiBmbG9hdHMgaXQgaW4gdGhlIGJvdHRvbVxuLy8gY29ybmVyIG9mIGl0cyBoZXJvIGF0IDQwIGZyb20gdGhlIGVkZ2U7IHRoaXMgaXMgdGhlIHNhbWUgaW5zZXQsIGF0IHRoZSB0b3AuXG4vL1xuLy8gUG9zaXRpb25lZCBhZ2FpbnN0IC53cmFwcGVyLCB3aGljaCBzdGFydHMgd2hlcmUgdGhlIHBhZ2UncyBjb250ZW50IGRvZXMuXG4ucGhjLWJhY2stLWZsb2F0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDEwO1xuICB3aWR0aDogYXV0bztcbn1cblxuQGluY2x1ZGUgbWVkaWEoJzx0YWJsZXQnKSB7XG4gIC5waGMtYmFjayB7XG4gICAgcGFkZGluZzogJG1vYmlsZS1tYXJnaW47XG4gIH1cbn1cbiIsIi8vIFRoZSBhcnJvd3MgdGhhdCB0cmFpbCBhIGxpbmsg4oCUIFwiUHJvZmlsZSDihpJcIiwgXCJMaW5rZWRJbiDihpJcIiDigJQgYW5kIHRoZSBvbmUgdGhhdFxuLy8gbGVhZHMgXCLihpAgQmFjayB0byBwb3J0Zm9saW9cIi5cbi8vXG4vLyBUaGV5IGxlYW4gYXdheSBmcm9tIHRoZWlyIGxhYmVsIHdoaWxlIHRoZSBsaW5rIGlzIGhvdmVyZWQsIHdoaWNoIGlzIHRoZSBtb3ZlXG4vLyAuYXJyb3ctbGluayBhbHJlYWR5IG1ha2VzIGluIHRoZSBncmlkOiB0ZW4gcGl4ZWxzLCB0d28gdGVudGhzIG9mIGEgc2Vjb25kLFxuLy8gZWFzaW5nIG91dC5cbi8vXG4vLyBBIHRyYW5zZm9ybSByYXRoZXIgdGhhbiB0aGUgbWFyZ2luIHRoYXQgb25lIGFuaW1hdGVzLiBUaGUgbWFyZ2luIGdyb3dzIHRoZVxuLy8gbGluaydzIG93biBib3gsIHNvIHRoZSB0YXJnZXQgbW92ZXMgd2hpbGUgdGhlIHBvaW50ZXIgaXMgb24gaXRzIHdheSB0byBpdCDigJRcbi8vIGhhcm1sZXNzIHdoZXJlIHRoZSBncmlkIHVzZXMgaXQsIGJ1dCB0aGUgZm9vdGVyJ3MgbGlua3MgYXJlIHJpZ2h0LWFsaWduZWQgaW5cbi8vIGEgY29sdW1uLCBhbmQgdGhlcmUgdGhlIGdyb3d0aCBwdXNoZXMgdGhlIGxhYmVsIHNpZGV3YXlzIHVuZGVyIHRoZSBjdXJzb3IuXG4vLyBBIHRyYW5zZm9ybSBhbHNvIHN0YXlzIG9mZiB0aGUgbGF5b3V0IGFsdG9nZXRoZXIuXG5cbiRwaGMtYXJyb3ctdHJhdmVsOiByZW0tY2FsYyg2cHgpO1xuXG4ucGhjLWFycm93IHtcbiAgLy8gQSBzcGFuIGlzIGlubGluZSwgYW5kIGlubGluZSBib3hlcyBjYW5ub3QgYmUgdHJhbnNmb3JtZWQuXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMnMgZWFzZS1vdXQ7XG59XG5cbi8vIE9ubHkgd2hlcmUgdGhlcmUgaXMgYSBwb2ludGVyIHRvIGhvdmVyIHdpdGguIE9uIGEgdG91Y2ggc2NyZWVuIHRoZSBhcnJvd1xuLy8gd291bGQgb3RoZXJ3aXNlIHN0aWNrIGluIGl0cyBtb3ZlZCBwb3NpdGlvbiBhZnRlciBhIHRhcC5cbkBtZWRpYSAoaG92ZXI6IGhvdmVyKSB7XG4gIGE6aG92ZXIgLnBoYy1hcnJvdyB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKCRwaGMtYXJyb3ctdHJhdmVsKTtcbiAgfVxuXG4gIC8vIFRoZSBiYWNrIGFycm93IGxlYWRzIGl0cyBsYWJlbCBpbnN0ZWFkIG9mIHRyYWlsaW5nIGl0LCBzbyBhd2F5IGlzIHRoZVxuICAvLyBvdGhlciB3YXkuXG4gIGE6aG92ZXIgLnBoYy1hcnJvdy0tYmFjayB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0kcGhjLWFycm93LXRyYXZlbCk7XG4gIH1cbn1cblxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgLnBoYy1hcnJvdyB7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgfVxufVxuIiwiLy8gXCJNb3JlIGZyb20gdGhpcyBjYXRlZ29yeVwiIOKAlCBhIGhlYWRpbmcgb3ZlciBhIHJvdyBvZiBpbWFnZSBjYXJkcy5cbi8vXG4vLyBUaGUgY2FyZHMga2VlcCB0aGUgZGVzaWduJ3MgMjoxIHByb3BvcnRpb24gYW5kIHNpdCB0aHJlZSB0byBhIHJvdyBhdCBmdWxsXG4vLyB3aWR0aCwgZHJvcHBpbmcgdG8gdHdvIGFuZCB0aGVuIG9uZSBhcyB0aGUgcm93IG5hcnJvd3MuIFRoZWlyIG1pbmltdW0gd2lkdGhcbi8vIGlzIHdoYXQgZHJpdmVzIHRoYXQsIHNvIG5vIGJyZWFrcG9pbnRzIGFyZSBuZWVkZWQgdW50aWwgdGhlIHNpbmdsZS1jb2x1bW5cbi8vIGNhc2UgYXQgbW9iaWxlLlxuXG4kcGhjLXJlbGF0ZWQtY2FyZC1taW46IHJlbS1jYWxjKDQ0MHB4KTtcbiRwaGMtcmVsYXRlZC1jYXJkLWhlaWdodDogcmVtLWNhbGMoMjIwcHgpO1xuXG4ucGhjLXJlbGF0ZWQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBnYXA6ICRwaGMtYmxvY2stZ2FwO1xuXG4gIC8vIEZ1bGwgYmxlZWQsIG1hdGNoaW5nIHRoZSBmb290ZXIgYW5kIHRoZSBvdGhlciBibG9ja3Mg4oCUIHRoaXMgb25lIGlzIGEgYmFuZFxuICAvLyBhY3Jvc3MgdGhlIHBhZ2UgcmF0aGVyIHRoYW4gYSBjb2x1bW4gb2YgcmVhZGluZyBtYXR0ZXIsIHNvIGEgY2VudHJlZCBjYXBcbiAgLy8gd291bGQgbGVhdmUgaXRzIGdyb3VuZCBzdG9wcGluZyBzaG9ydCBvZiB0aGUgZWRnZXMuXG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAkcGhjLWJsb2NrLXBhZGRpbmc7XG5cbiAgLy8gU2FtZSBjb250cmFzdGluZyBiYW5kIGFzIHRoZSBmb290ZXIsIHNvIHRoaXMgYmxvY2sgcmVhZHMgYXMgYSBicmVhayBmcm9tXG4gIC8vIHRoZSBwYWdlIHJhdGhlciB0aGFuIHBhcnQgb2YgaXQg4oCUIGxpZ2h0IG9uIGEgZGFyayBwYWdlLCBkYXJrIG9uIGEgbGlnaHQgb25lLlxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1waGMtY29udHJhc3QtYmcpO1xuICBjb2xvcjogdmFyKC0tcGhjLWNvbnRyYXN0LWZnKTtcblxuICAmX19oZWFkaW5nIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW46IDA7XG4gIH1cblxuICAmX19jYXJkIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4OiAxIDAgMDtcbiAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gICAgYXNwZWN0LXJhdGlvOiAxNDQwIC8gNzIwO1xuICAgIG1pbi13aWR0aDogJHBoYy1yZWxhdGVkLWNhcmQtbWluO1xuICAgIG1pbi1oZWlnaHQ6ICRwaGMtcmVsYXRlZC1jYXJkLWhlaWdodDtcbiAgICBwYWRkaW5nOiAkcGhjLWJsb2NrLWdhcDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG5cbiAgLy8gVGhlIGltYWdlIGlzIHRoZSBjYXJkJ3MgYmFja2dyb3VuZCwgc28gaXQgc2l0cyBiZWhpbmQgdGhlIGNhcHRpb24gcmF0aGVyXG4gIC8vIHRoYW4gaW4gdGhlIGZsb3cuIG9iamVjdC1maXQga2VlcHMgdGhlIGNyb3AgY2VudHJlZCBhdCBhbnkgY2FyZCBzaXplLlxuICAmX19pbWFnZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGluc2V0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgfVxuXG4gIC8vIFRoZSBjYXB0aW9uIHNpdHMgb24gYSBwaG90b2dyYXBoLCBzbyBpdCBmb2xsb3dzIHRoZSBpbWFnZSByYXRoZXIgdGhhbiB0aGVcbiAgLy8gcGFnZTogZWFjaCBwcm9qZWN0IGNhcnJpZXMgaXRzIG93biBsaWdodC1vci1kYXJrIGNob2ljZSBhcyBhIHRleHQtd2hpdGUgb3JcbiAgLy8gdGV4dC1ibGFjayBjbGFzcywgdGhlIHNhbWUgb25lIHRoZSBjb250ZW50IGdyaWQgcmVhZHMuIFRoaXMgaXMgb25seSB0aGVcbiAgLy8gZmFsbGJhY2sgZm9yIGEgcHJvamVjdCB0aGF0IGhhcyBuZXZlciBiZWVuIHNldC5cbiAgJl9fY2FwdGlvbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbjogMDtcbiAgICBjb2xvcjogdmFyKC0tcGhjLXdoaXRlLWFmKTtcbiAgfVxuXG4gICZfX2NsaWVudCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxuQGluY2x1ZGUgbWVkaWEoJzx0YWJsZXQnKSB7XG4gIC5waGMtcmVsYXRlZCB7XG4gICAgcGFkZGluZzogJG1vYmlsZS1tYXJnaW47XG5cbiAgICAmX19jYXJkIHtcbiAgICAgIGZsZXg6IDEgMSAxMDAlO1xuICAgICAgbWluLXdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxufVxuIiwiXG4uaW50cm8tc2VjdGlvbi1jb250YWluZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWF4LXdpZHRoOiB2YXIoLS1zaXRlLXdpZHRoKTtcbiAgbWFyZ2luOiAwIGF1dG87XG59XG5cbi5pbnRyby1zZWN0aW9uIHtcbiAgbWF4LXdpZHRoOiB2YXIoLS1zaXRlLXdpZHRoKTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1pbi1oZWlnaHQ6IGNhbGMoKHZhcigtLXNpdGUtd2lkdGgpKS8zKTtcbiAgcGFkZGluZzogNDBweCAwIDY1cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblxuICAmX19sZWZ0LWNvbCB7XG4gICAgd2lkdGg6IHZhcigtLWNvbC00KTtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLWNvbC0xKTtcbiAgICBtYXJnaW4tbGVmdDogdmFyKC0tY29sLTEpO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cblxuICAmX19yaWdodC1jb2wge1xuICAgIHdpZHRoOiB2YXIoLS1jb2wtNSk7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1jb2wtMSk7XG4gIH1cblxuICAmX19oMSB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICB9XG5cbiAgJl9fdGV4dCB7XG4gICAgZm9udC1mYW1pbHk6IFwiSW50ZXJcIiwgSGVsdmV0aWNhLCBcIkhlbHZldGljYSBOZXVlXCIsIEFyaWFsO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtbCk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWwpO1xuICAgIGxldHRlci1zcGFjaW5nOiB2YXIoLS1sZXR0ZXItc3BhY2luZy1sKTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zZWN0aW9uLW1hcmdpbik7XG4gIH1cblxuICAmX19jYWxsIHtcbiAgICBmb250LWZhbWlseTogXCJJbnRlclwiLCBIZWx2ZXRpY2EsIFwiSGVsdmV0aWNhIE5ldWVcIiwgQXJpYWw7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1tKTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtbSk7XG4gICAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWxldHRlci1zcGFjaW5nLW0pO1xuICAgIGNvbG9yOiB2YXIoLS1taWRkbGUtZ3JleSk7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICAgbWFyZ2luLWJvdHRvbTogNTA7XG4gICAgYSB7XG4gICAgICBjb2xvcjogdmFyKC0tbWlkZGxlLWdyZXkpO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cblxuICAgIEBtZWRpYSAoaG92ZXI6aG92ZXIpIHtcbiAgICAgICY6aG92ZXIge1xuICAgICAgICAuaW50cm8tc2VjdGlvbl9fYXJyb3cge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5pbnRyby1zZWN0aW9uX19hcnJvdyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdHJhbnNpdGlvbjogbWFyZ2luLWxlZnQgMC4ycyBlYXNlLW91dDtcbiAgbWFyZ2luLWxlZnQ6IDEwcHg7XG59XG5cbi5hcnJvdy1zbGlkaW5nLXJpZ2h0IHtcbiAgZGlzcGxheTogaW5saW5lO1xuICB0cmFuc2l0aW9uOiBtYXJnaW4gMC4ycyBlYXNlLW91dDtcbn1cblxuLmZsb3ctYmxvY2sge1xuICBiYWNrZ3JvdW5kOiAjRjFGMUYxO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogbm9uZTtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjdzO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gIC5hcnJvdy1zbGlkaW5nLXJpZ2h0IHtcbiAgICBtYXJnaW4tbGVmdDogMHB4O1xuICAgIG1hcmdpbi1yaWdodDogcmVtLWNhbGMoOHB4KTtcbiAgfVxuXG4gIEBtZWRpYSAoaG92ZXI6aG92ZXIpIHtcbiAgICAmOmhvdmVyIHtcbiAgICAgIC5hcnJvdy1zbGlkaW5nLXJpZ2h0IHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IHJlbS1jYWxjKDhweCk7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAmLS1uby1saW5rIHtcbiAgICAuYXJyb3ctc2xpZGluZy1yaWdodCB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4uaW50cm8tc2VjdGlvbl9fdGV4dC0tbWlkZGxlLWdyZXkge1xuICBjb2xvcjogdmFyKC0tbWlkZGxlLWdyZXkpO1xufVxuXG5cbkBpbmNsdWRlIG1lZGlhKCc8ZGVza3RvcCcpIHtcblxuICAuaW50cm8tc2VjdGlvbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogMzBweCAkbW9iaWxlLW1hcmdpbiAwO1xuICB9XG5cbiAgLmludHJvLXNlY3Rpb25fX2xlZnQtY29sIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW46IDA7XG4gIH1cblxuICAuaW50cm8tc2VjdGlvbl9fcmlnaHQtY29sIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tc2VjdGlvbi1tYXJnaW4pO1xuICB9XG5cbiAgLmludHJvLXNlY3Rpb25fX2gxIHtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1sKTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtbCk7XG4gICAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWxldHRlci1zcGFjaW5nLWwpO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxuXG4gIC5pbnRyby1zZWN0aW9uX190ZXh0IHtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1sKTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtbCk7XG4gICAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWxldHRlci1zcGFjaW5nLWwpO1xuICAgIG1hcmdpbi1ib3R0b206IGNhbGModmFyKC0tc2VjdGlvbi1tYXJnaW4pIC8gMik7XG4gIH1cblxuICAuaW50cm8tc2VjdGlvbl9fY2FsbCB7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtbSk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LW0pO1xuICAgIGxldHRlci1zcGFjaW5nOiB2YXIoLS1sZXR0ZXItc3BhY2luZy1tKTtcbiAgfVxufVxuXG5AaW5jbHVkZSBtZWRpYSgnPHRhYmxldCcpIHtcblxuICAuaW50cm8tc2VjdGlvbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gIH1cbn1cbiIsIi8vIFN1Yi1zZWN0aW9ucyBvZiB0aGUgRmxleGlibGUgQ29udGVudFxuXG5cbi8vIFNwZWNpZmljIHJ1bGVzIGZvciBzZWN0aW9uLXdyYXBwZXJcbi5zZWN0aW9uLXdyYXBwZXIge1xuICAkcDogJjtcblxuICAmLS01MCB7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxufVxuXG5cbi5hcnRpY2xlLXBhcmFncmFwaC1ibG9jayB7XG4gICRhcGI6ICY7XG4gICYtLWNvbHMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcblxuICAgIGltZyB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gICAgLmNvbCB7XG4gICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgJi0tdmlkZW8ge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAgICAgaWZyYW1lIHtcbiAgICAgICAgICBoZWlnaHQ6IDEwMSUgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICYtLTIge1xuXG4gICAgICBAaW5jbHVkZSBtZWRpYSgnPHRhYmxldCcpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgICAuY29sIHtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLyAyKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgICAgICAmI3skYXBifS0tdHdvLWNvbC1zdHlsZS0yLTEge1xuICAgICAgICAgIC5jb2wge1xuICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLyAzICogMik7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC8gMyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmLS12aWRlbzpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgaWZyYW1lIHtcbiAgICAgICAgICAgICAgICB0b3A6IDUwJSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIGxlZnQ6IDUwJSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIHdpZHRoOiAyMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDElICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYtLWltYWdlOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYjeyRhcGJ9LS10d28tY29sLXN0eWxlLTEtMiB7XG4gICAgICAgICAgLmNvbCB7XG4gICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAvIDMpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAvIDMgKiAyKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi0tdmlkZW86Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgICBpZnJhbWUge1xuICAgICAgICAgICAgICAgIHRvcDogNTAlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgbGVmdDogNTAlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDIwMCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMSUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJi0taW1hZ2U6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICYtLTMge1xuICAgICAgQGluY2x1ZGUgbWVkaWEoJzx0YWJsZXQnKSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgICAgLmNvbCB7XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbiAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC8gMik7XG5cbiAgICAgICAgICAmLS12aWRlbyB7XG4gICAgICAgICAgICBpZnJhbWUge1xuICAgICAgICAgICAgICB0b3A6IDUwJSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBsZWZ0OiA1MCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgd2lkdGg6IDIwMCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgaGVpZ2h0OiAxMDElICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICYtLTQge1xuICAgICAgQGluY2x1ZGUgbWVkaWEoJzx0YWJsZXQnKSB7XG4gICAgICAgIGZsZXgtZmxvdzogd3JhcDtcbiAgICAgIH1cbiAgICAgIC5jb2wge1xuICAgICAgICB3aWR0aDogY2FsYygxMDAlIC8gMik7XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbiAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC8gNCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLS01e1xuICAgICAgQGluY2x1ZGUgbWVkaWEoJzx0YWJsZXQnKSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgICAgLmNvbCB7XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbiAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC8gNSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi5zZWN0aW9uLXdyYXBwZXIge1xuICAkcDogJjtcbiAgJGNvbHM6IFwiLmFydGljbGUtcGFyYWdyYXBoLWJsb2NrLS1jb2xzXCI7XG5cbiAgJi0tdGVtcGxhdGUtMiB7XG4gICAgJGZ1bGxfbWFyZ2luOiBjYWxjKDEwMCUgLyAxMiAvIDQpO1xuICAgICRoYWxmX21hcmdpbjogY2FsYyg1MCUgLyAxMiAvIDQpO1xuXG4gICAgJiN7JHB9LS1zcGFjZXIge1xuICAgICAgcGFkZGluZy10b3A6ICRmdWxsLW1hcmdpbjtcbiAgICB9XG5cbiAgICAjeyRjb2xzfSB7XG5cbiAgICAgIHBhZGRpbmctbGVmdDogJGZ1bGxfbWFyZ2luO1xuICAgICAgcGFkZGluZy1yaWdodDogJGZ1bGxfbWFyZ2luO1xuXG4gICAgICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XG4gICAgICAgIC5jb2wge1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogJGhhbGZfbWFyZ2luO1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6ICRoYWxmX21hcmdpbjtcblxuICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLS10ZW1wbGF0ZS0zIHtcbiAgICAkZnVsbF9tYXJnaW46IGNhbGMoMTAwJSAvIDEyIC8gMik7XG4gICAgJGhhbGZfbWFyZ2luOiBjYWxjKDUwJSAvIDEyIC8gMik7XG5cbiAgICAmI3skcH0tLXNwYWNlciB7XG4gICAgICBwYWRkaW5nLXRvcDogJGZ1bGwtbWFyZ2luO1xuICAgIH1cblxuICAgICN7JGNvbHN9IHtcbiAgICAgIHBhZGRpbmctbGVmdDogJGZ1bGxfbWFyZ2luO1xuICAgICAgcGFkZGluZy1yaWdodDogJGZ1bGxfbWFyZ2luO1xuXG4gICAgICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XG4gICAgICAgIC5jb2wge1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogJGhhbGZfbWFyZ2luO1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6ICRoYWxmX21hcmdpbjtcblxuICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLS10ZW1wbGF0ZS00IHtcbiAgICAkZnVsbF9tYXJnaW46IGNhbGMoMTAwJSAvIDEyKTtcbiAgICAkaGFsZl9tYXJnaW46IGNhbGMoNTAlIC8gMTIpO1xuICAgICRxdWFydGVyX21hcmdpbjogY2FsYygyNSUgLyAxMik7IC8vIFVzZWQgZm9yIGltYWdlc1xuXG4gICAgJiN7JHB9LS1zcGFjZXIge1xuICAgICAgcGFkZGluZy10b3A6ICRmdWxsLW1hcmdpbjtcbiAgICB9XG5cbiAgICAjeyRjb2xzfSB7XG5cbiAgICAgIHBhZGRpbmctbGVmdDogJGZ1bGxfbWFyZ2luO1xuICAgICAgcGFkZGluZy1yaWdodDogJGZ1bGxfbWFyZ2luO1xuXG4gICAgICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XG4gICAgICAgIC5jb2wge1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogJGhhbGZfbWFyZ2luO1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6ICRoYWxmX21hcmdpbjtcblxuICAgICAgICAgICYtLWltYWdlIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogJHF1YXJ0ZXJfbWFyZ2luO1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogJHF1YXJ0ZXJfbWFyZ2luO1xuICAgICAgICAgIH1cblxuICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLnBhcmFncmFwaC1ibG9jayB7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG5cbi5wYXJhZ3JhcGgtYmxvY2tfX2xlZnRjb2wsXG4ucGFyYWdyYXBoLWJsb2NrX19yaWdodGNvbCB7XG5cbiAgaDUsXG4gIGg0LFxuICBoMyxcbiAgaDIge1xuICAgIGZvbnQtZmFtaWx5OiBcIkludGVyXCIsIEhlbHZldGljYSwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBBcmlhbDtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWwpO1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1sKTtcbiAgICBsZXR0ZXItc3BhY2luZzogdmFyKC0tbGV0dGVyLXNwYWNpbmctbCk7XG4gICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuXG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgIH1cbiAgfVxufVxuXG4ucGFyYWdyYXBoLWJsb2NrX19sZWZ0Y29sIHtcblxuICBmaWd1cmUge1xuICAgIG1hcmdpbjogMDtcblxuICAgIGZpZ2NhcHRpb24ge1xuICAgICAgbWFyZ2luLXRvcDogMTBweDtcblxuICAgICAgLy8gSW4gY2FzZSBvZiBXWVNJV1lHIG5lc3RlZCBwYXJhZ3JhcGhcbiAgICAgICYsIHAge1xuICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1zKTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXMpO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogdmFyKC0tbGV0dGVyLXNwYWNpbmctcyk7XG4gICAgICB9XG5cbiAgICAgIGkge1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1taWRkbGUtZ3JleSk7XG4gICAgICB9XG5cbiAgICAgIGIge1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1taWRkbGUtZ3JleSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnNlY3Rpb24td3JhcHBlci0tYmxhY2sgJiB7XG5cbiAgICBoNSxcbiAgICBoNCxcbiAgICBoMyxcbiAgICBoMiB7XG4gICAgICBjb2xvcjogdmFyKC0td2hpdGUpO1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhKCc+PWRlc2t0b3AnKSB7XG4gICAgd2lkdGg6IHZhcigtLWNvbC0zKTtcbiAgICBtYXJnaW4tbGVmdDogdmFyKC0tY29sLTEpO1xuICAgIHBhZGRpbmctcmlnaHQ6IDMwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMHB4O1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEoJzx0YWJsZXQnKSB7XG4gICAgLmFydGljbGUtcGFyYWdyYXBoLWJsb2NrLS1wYXJhZ3JhcGhfY29scyAmIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNlY3Rpb24tbWFyZ2luKTtcbiAgICB9XG5cbiAgICAmLS1udW1iZXJfZmllbGQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc2VjdGlvbi1tYXJnaW4pO1xuICAgIH1cbiAgfVxuXG4gIGltZyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG59XG5cbi5wYXJhZ3JhcGgtYmxvY2tfX3JpZ2h0Y29sIHtcblxuICBoNSxcbiAgaDQsXG4gIGgyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICB9XG5cbiAgaDQsXG4gIGgzIHtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1tKTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtbSk7XG4gICAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWxldHRlci1zcGFjaW5nLW0pO1xuICB9XG5cbiAgaDMge1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIH1cblxuICBoNCB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYSgnPj1kZXNrdG9wJykge1xuICAgIHdpZHRoOiB2YXIoLS1jb2wtNyk7XG4gIH1cblxuICA+IHAge1xuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgfVxuXG4gIGltZyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG5cbiAgLmxhcmdlLW51bWJlcnMtd3JhcHBlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDtcblxuICAgIEBpbmNsdWRlIG1lZGlhKCc8dGFibGV0Jykge1xuICAgICAgbWFyZ2luLWJvdHRvbTogLTE1cHg7XG4gICAgfVxuICB9XG5cbiAgLmxhcmdlLW51bWJlci13cmFwcGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcblxuICAgIEBpbmNsdWRlIG1lZGlhKCc+PWRlc2t0b3AnKSB7XG4gICAgICB3aWR0aDogNTAlO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhKCc8dGFibGV0Jykge1xuICAgICAgbWFyZ2luOiAwO1xuICAgIH1cbiAgfVxufVxuXG4ucGFyYWdyYXBoLWJsb2NrX19yaWdodGNvbC0taW1hZ2Uge1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zZWN0aW9uLW1hcmdpbik7XG59XG5cbi5sYXJnZS1udW1iZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xuICBmb250LWZhbWlseTogXCJjaGFwLWxpZ2h0XCI7XG4gIGZvbnQtc2l6ZTogMjMwcHg7XG4gIGxpbmUtaGVpZ2h0OiAyMzBweDtcbiAgY29sb3I6IHZhcigtLW1pZGRsZS1ncmV5KTtcbiAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbiAgbGV0dGVyLXNwYWNpbmc6IC0xN3B4O1xuICBtYXJnaW46IDAgMCA4cHg7XG5cbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IC0yMHB4O1xuXG4gIC5pcy1tYWMgJiB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICB0b3A6IGF1dG87XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYSgnPGRlc2t0b3AnKSB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxuXG4gIC8vIE1ha2UgbGFyZ2UtbnVtYmVyIHdoaXRlIGlmIG9uIGEgcmVkIGJhY2tncm91bmRcbiAgLmJhY2tncm91bmQtcmVkICYsXG4gIC5zZWN0aW9uLXdyYXBwZXItLXJlZCAmIHtcbiAgICBjb2xvcjogdmFyKC0td2hpdGUpO1xuICB9XG5cbiAgJi0tbnVtYmVyIHtcbiAgICBmb250LXZhcmlhbnQtbnVtZXJpYzogbGluaW5nLW51bXM7XG4gIH1cblxuICAmLS1wZXJjZW50IHtcbiAgICBmb250LXNpemU6IDEyMHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxNTNweDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuXG4gICAgLmlzLW1hYyAmIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxNzZweDtcbiAgICB9XG4gIH1cblxuICAmX19jYXB0aW9uIHtcbiAgICAvLyBJbiBjYXNlIG9mIFdZU0lXWUcgcGFyYWdyYXBoc1xuICAgICYsIHAge1xuICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtcyk7XG4gICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtcyk7XG4gICAgICBsZXR0ZXItc3BhY2luZzogdmFyKC0tbGV0dGVyLXNwYWNpbmctcyk7XG4gICAgfVxuXG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLXRvcDogLTQ1cHg7XG5cbiAgICBpIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICBjb2xvcjogdmFyKC0tbWlkZGxlLWdyZXkpO1xuICAgIH1cblxuICAgIGIge1xuICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgIGNvbG9yOiB2YXIoLS1taWRkbGUtZ3JleSk7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEoJzx0YWJsZXQnKSB7XG4gICAgZm9udC1zaXplOiAxMTVweDtcbiAgICBsaW5lLWhlaWdodDogMTE1cHg7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC03cHg7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAmLS1wZXJjZW50IHtcbiAgICAgIGZvbnQtc2l6ZTogNjBweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiA3NHB4O1xuXG4gICAgICAuaXMtbWFjICYge1xuICAgICAgICBsaW5lLWhlaWdodDogODhweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmX19jYXB0aW9uIHtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB0b3A6IC0zMHB4O1xuICAgICAgcGFkZGluZy1sZWZ0OiAxMCU7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcblxuICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtcyk7XG4gICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtcyk7XG4gICAgICBsZXR0ZXItc3BhY2luZzogdmFyKC0tbGV0dGVyLXNwYWNpbmctcyk7XG5cbiAgICAgIC5pcy1tYWMgJiB7XG4gICAgICAgIHRvcDogLTI0cHg7XG4gICAgICB9XG5cbiAgICAgIGJyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAubGFyZ2UtbnVtYmVyLXdyYXBwZXI6Zmlyc3QtY2hpbGQgJiB7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuXG4gICAgICAmX19jYXB0aW9uIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxMCU7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEoJzxtb2JpbGUtbCcpIHtcbiAgICBmb250LXNpemU6IDg1cHg7XG4gICAgbGluZS1oZWlnaHQ6IDEwMnB4O1xuICB9XG59XG5cblxuLmFydGljbGUtbWFpbi5yZWQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGQ0OTI1O1xuICAvLyBjb2xvcjogd2hpdGU7XG4gIHBhZGRpbmc6IDIwcHggMDtcblxuICAvLyBwIHtcbiAgLy8gICBjb2xvcjogd2hpdGU7XG4gIC8vIH1cblxuICAvLyBoMyB7XG4gIC8vICAgY29sb3I6IHdoaXRlO1xuICAvLyB9XG59XG5cbi5pbnRyby1zZWN0aW9uLWNvbnRhaW5lci5yZWQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGQ0OTI1ICFpbXBvcnRhbnQ7XG4gIC8vIGNvbG9yOiB3aGl0ZSAhaW1wb3J0YW50O1xuICBtaW4taGVpZ2h0OiBhdXRvO1xufVxuXG4udGFibGUtcGxhaW5fX2NlbGwge1xuICBwYWRkaW5nOiAwcHggMzBweCAzNXB4IDA7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLW0pO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtbSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1sZXR0ZXItc3BhY2luZy1tKTtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgcGFkZGluZzogMjBweCAyMHB4O1xuXG4gIEBpbmNsdWRlIG1lZGlhKCc8dGFibGV0Jykge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXMpO1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1zKTtcbiAgICBsZXR0ZXItc3BhY2luZzogdmFyKC0tbGV0dGVyLXNwYWNpbmctcyk7XG4gIH1cbn1cblxuLnRhYmxlLXBsYWluLS1yb3ctc2VwYXJhdG9ycyB7XG4gIC50YWJsZS1wbGFpbl9fY2VsbCB7XG4gICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkIHZhcigtLWJsYWNrKTtcblxuICAgIEBpbmNsdWRlIG1lZGlhKCc+dGFibGV0Jykge1xuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuYmFja2dyb3VuZC1ibGFjayAmIHtcbiAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0td2hpdGUpO1xuICAgIH1cbiAgfVxuXG4gIC8vIFRoaXMgaGlkZXMgdGhlIGxhc3QgYm9yZGVyIGluIHRoZSBsYXN0IHR3byBjb2x1bW5zIG9ubHlcbiAgQGluY2x1ZGUgbWVkaWEoJzx0YWJsZXQnKSB7XG4gICAgLnRhYmxlLXBsYWluX19jb2w6bnRoLWxhc3QtY2hpbGQoLW4rMikge1xuICAgICAgLnRhYmxlLXBsYWluX19jZWxsIHtcbiAgICAgICAgJjpsYXN0LWNoaWxkKCkge1xuICAgICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmFydGljbGUtaW1hZ2Uge1xuICB3aWR0aDogMTAwJTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIGltZyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG9wYWNpdHk6IDA7XG5cbiAgICBAaW5jbHVkZSB6b29tRmFkZUluVHJhbnNpdGlvbjtcblxuICAgICYubGF6eWxvYWRlZCB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgIH1cbiAgfVxuXG4gIGZpZ3VyZSB7XG4gICAgbWFyZ2luOiAwO1xuXG4gICAgZmlnY2FwdGlvbiB7XG4gICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1zKTtcbiAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1zKTtcbiAgICAgIHdpZHRoOiA2NiU7XG4gICAgICBtYXJnaW4tdG9wOiAwLjVyZW07XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhKCc8dGFibGV0Jykge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWFyZ2luOiAwLjVyZW0gMjBweCAwO1xuXG4gICAgICB9XG4gICAgfVxuICB9XG5cblxufVxuXG4uYXJ0aWNsZS1pbWFnZS5hcnRpY2xlLWltYWdlLS1tYXJnaW4tYm90dG9tIHtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc2VjdGlvbi1tYXJnaW4pO1xuXG4gIC5iYWNrZ3JvdW5kOm5vdCguYmFja2dyb3VuZC13aGl0ZSkge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYSgnPHRhYmxldCcpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi5hcnRpY2xlLWltYWdlLWNhbGxvdXQge1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1tKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LW0pO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tbGV0dGVyLXNwYWNpbmctbSk7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY29sb3I6IHZhcigtLXdoaXRlKTtcbiAgdG9wOiAzMHB4O1xuICBsZWZ0OiAzMHB4O1xuICB6LWluZGV4OiAzMDA7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLmFydGljbGUtaW1hZ2UtY2FsbG91dC0tYm90dG9tIHtcbiAgdG9wOiBhdXRvO1xuICBib3R0b206IDMwcHg7XG4gIHRvcDogYXV0bztcbiAgYm90dG9tOiAyNHB4O1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtbSk7XG59XG5cbi5hcnRpY2xlLWltYWdlLS1sZWZ0IHtcbiAgcGFkZGluZy1yaWdodDogY2FsYygoKDEwMHZ3IC0gKDEwMHZ3IC0gMTAwJSkgLSB2YXIoLS1zaXRlLXdpZHRoKSkvMikgKyB2YXIoLS1zaXRlLXdpZHRoKSAvIDEyKTtcblxuICAuYXJ0aWNsZS1pbWFnZS1jYWxsb3V0IHtcbiAgICBsZWZ0OiBjYWxjKCgoMTAwdncgLSAoMTAwdncgLSAxMDAlKSAtIHZhcigtLXNpdGUtd2lkdGgpKS8yKSArIHZhcigtLWNvbC0xKSk7XG4gICAgcGFkZGluZy1yaWdodDogY2FsYygoKDEwMHZ3IC0gKDEwMHZ3IC0gMTAwJSkgLSB2YXIoLS1zaXRlLXdpZHRoKSkvMikgKyB2YXIoLS1zaXRlLXdpZHRoKSAvIDEyICsgMzBweCk7XG4gIH1cbn1cblxuLmFydGljbGUtaW1hZ2UtLXJpZ2h0IHtcbiAgcGFkZGluZy1sZWZ0OiBjYWxjKCgoMTAwdncgLSAoMTAwdncgLSAxMDAlKSAtIHZhcigtLXNpdGUtd2lkdGgpKS8yKSArIHZhcigtLXNpdGUtd2lkdGgpIC8gMTIpO1xuXG4gIC5hcnRpY2xlLWltYWdlLWNhbGxvdXQge1xuICAgIGxlZnQ6IGNhbGMoKCgxMDB2dyAtICgxMDB2dyAtIDEwMCUpIC0gdmFyKC0tc2l0ZS13aWR0aCkpLzIpICsgdmFyKC0tY29sLTEpICsgKDMwcHgpKTtcbiAgfVxufVxuXG4uYXJ0aWNsZS1pbWFnZS0tY2VudGVyIHtcbiAgcGFkZGluZy1sZWZ0OiBjYWxjKCgoMTAwdncgLSAoMTAwdncgLSAxMDAlKSAtIHZhcigtLXNpdGUtd2lkdGgpKS8yKSk7XG4gIHBhZGRpbmctcmlnaHQ6IGNhbGMoKCgxMDB2dyAtICgxMDB2dyAtIDEwMCUpIC0gdmFyKC0tc2l0ZS13aWR0aCkpLzIpKTtcblxuICAuYXJ0aWNsZS1pbWFnZS1jYWxsb3V0IHtcbiAgICBwYWRkaW5nLWxlZnQ6IGNhbGMoKCgxMDB2dyAtICgxMDB2dyAtIDEwMCUpIC0gdmFyKC0tc2l0ZS13aWR0aCkpLzIpKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiBjYWxjKCgoMTAwdncgLSAoMTAwdncgLSAxMDAlKSAtIHZhcigtLXNpdGUtd2lkdGgpKS8yKSArIDMwcHgpO1xuICB9XG59XG5cbi5hcnRpY2xlLWltYWdlLS10ZXh0LWNvbHVtbiB7XG4gIHBhZGRpbmctbGVmdDogdmFyKC0tY29sLTMpO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1jb2wtMSk7XG5cbiAgLmFydGljbGUtaW1hZ2UtY2FsbG91dCB7XG4gICAgbGVmdDogY2FsYygoKDEwMHZ3IC0gKDEwMHZ3IC0gMTAwJSkgLSB2YXIoLS1zaXRlLXdpZHRoKSkvMikgKyB2YXIoLS1jb2wtMykgKyAoMzBweCkpO1xuICAgIHJpZ2h0OiBjYWxjKDMwcHggKyB2YXIoLS1jb2wtMSkpO1xuICB9XG59XG5cbi5hcnRpY2xlLWltYWdlLS10ZXh0LWNvbHVtbi13aWRlIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoLS1jb2wtMSk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhcigtLWNvbC0xKTtcblxuICAuYXJ0aWNsZS1pbWFnZS1jYWxsb3V0IHtcbiAgICBsZWZ0OiBjYWxjKCgoMTAwdncgLSAoMTAwdncgLSAxMDAlKSAtIHZhcigtLXNpdGUtd2lkdGgpKS8yKSArIHZhcigtLWNvbC0xKSArICgzMHB4KSk7XG4gICAgcmlnaHQ6IGNhbGMoMzBweCArIHZhcigtLWNvbC0xKSk7XG4gIH1cbn1cblxuLmFydGljbGUtaW1hZ2UtLXNsaW0tbWFyZ2luIHtcbiAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xuXG4gIC5hcnRpY2xlLWltYWdlLWNhbGxvdXQge1xuICAgIGxlZnQ6IDYwcHg7XG4gIH1cbn1cblxuLmFydGljbGUtaW1hZ2UtLW1hcmdpbiB7XG4gIHBhZGRpbmctbGVmdDogdmFyKC0tY29sLTEpO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1jb2wtMSk7XG5cbiAgLmFydGljbGUtaW1hZ2UtY2FsbG91dCB7XG4gICAgbGVmdDogY2FsYyh2YXIoLS1jb2wtMSkgKyAoMzBweCkpO1xuICB9XG59XG5cbkBpbmNsdWRlIG1lZGlhKCc8dGFibGV0Jykge1xuICAuYXJ0aWNsZS1pbWFnZSB7XG4gICAgLmFydGljbGUtaW1hZ2UtY2FsbG91dCB7XG4gICAgICBsZWZ0OiBjYWxjKCgoMTAwdncgLSAoMTAwdncgLSAxMDAlKSAtIHZhcigtLXNpdGUtd2lkdGgpKS8yKSArICgyMHB4KSk7XG5cbiAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXMpO1xuICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXMpO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWxldHRlci1zcGFjaW5nLXMpO1xuICAgIH1cbiAgfVxufVxuXG4uYXJ0aWNsZS1zbGlkZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHdpZHRoOiAxMDAlO1xuICAvLyBoZWlnaHQ6IDUwMHB4O1xuXG4gICYuYWx0IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG4gIH1cblxuICAmX190ZXh0IHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKC0tY29sLTEpO1xuICAgIHBhZGRpbmctcmlnaHQ6IDMwcHg7XG4gICAgd2lkdGg6IHZhcigtLWNvbC0zKTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICBoMiB7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMzJweDtcbiAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLW0pO1xuICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LW0pO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWxldHRlci1zcGFjaW5nLW0pO1xuICAgIH1cblxuICAgIHAge1xuICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtcyk7XG4gICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtcyk7XG4gICAgICBsZXR0ZXItc3BhY2luZzogdmFyKC0tbGV0dGVyLXNwYWNpbmctcyk7XG4gICAgfVxuICB9XG5cbiAgJl9fcC0tYm90dG9tIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgIC5iYWNrZ3JvdW5kLWNhcHB1Y2Npbm8gJiBhIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1ibGFjayk7XG4gICAgfVxuICB9XG5cbiAgJl9faW1hZ2Uge1xuICAgIHdpZHRoOiB2YXIoLS1jb2wtOCk7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgLy8gcGFkZGluZy1ib3R0b206IDU2LjI1JTtcbiAgICAvLyBwYWRkaW5nLWJvdHRvbTogMzUlOyAvLyBHZXRzIHJvdWdobHkgMTY6OSBkdWUgdG8gaXQgbm90IGJlaW5nIGluIGEgY29sdW1uXG4gICAgcGFkZGluZy1ib3R0b206IGNhbGMoNTYuMjUlICogOC8xMik7XG4gIH1cblxuICAmX19pbWFnZS1tb2JpbGUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgbWFyZ2luLXRvcDogLTE1cHg7XG4gIH1cbn1cblxuXG5AaW5jbHVkZSBtZWRpYSgnPGRlc2t0b3AnKSB7XG5cbiAgLmFydGljbGUtc2xpZGUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IDAgMzBweDtcblxuICAgIEBpbmNsdWRlIG1lZGlhKCc8dGFibGV0Jykge1xuICAgICAgcGFkZGluZzogMCAkbW9iaWxlLW1hcmdpbjtcbiAgICB9XG5cbiAgICAmLmFsdCB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIH1cblxuICAgICZfX3RleHQge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwcHg7XG4gICAgfVxuXG4gICAgJl9fcC0tYm90dG9tIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cblxuICAgICZfX2ltYWdlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgLmZsaWNraXR5LXBhZ2UtZG90cyB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJvdHRvbTogLTE1cHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuXG4gICAgLmRvdCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ncmF5KTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG4gIH1cbn1cblxuQGluY2x1ZGUgbWVkaWEoJzxkZXNrdG9wJykge1xuICAuYXJ0aWNsZS1zbGlkZSB7XG4gICAgJl9faW1hZ2UtbW9iaWxlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgJl9faW1hZ2Uge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuLnZpbWVvLXBsYXllciB7XG4gID4gZGl2IHtcbiAgICBwb3NpdGlvbjogc3RhdGljICFpbXBvcnRhbnQ7XG4gIH1cbn1cbiIsIi5jb250ZW50LWdyaWQge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1leHRlbnNpb24tY29udGVudC1ncmlkKTtcbn1cblxuLndyYXBwZXItZ3JpZC1maWx0ZXIge1xuICB3aWR0aDogMTAwJTtcbiAgcG9zaXRpb246IHN0aWNreTtcbiAgdG9wOiAtMXB4O1xuICB6LWluZGV4OiAzMDA7XG59XG5cblxuLmdyaWQtZmlsdGVyLWNvbnRhaW5lciB7XG4gIG1heC13aWR0aDogdmFyKC0tc2l0ZS13aWR0aCk7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuXG4uZ3JpZC1maWx0ZXJfX2xpbmUtY29udGFpbmVyIHtcbiAgcGFkZGluZzogMzJweCAxMnJlbSAzMnB4IDQwcHg7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLDAuNjYpO1xuICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoOHB4KTtcblxuICBmb250LXNpemU6IHJlbS1jYWxjKDM1cHgpO1xuICBsaW5lLWhlaWdodDogMTtcbiAgbGV0dGVyLXNwYWNpbmc6IDE7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG5cbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXG4gIGEge1xuICAgIHBhZGRpbmctbGVmdDogMGV4O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgY29sb3I6IHZhcigtLW1pZGRsZS1ncmV5KTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICBAbWVkaWEgKGhvdmVyOiBob3Zlcikge1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGEuYWN0aXZlIHtcbiAgICBjb2xvcjogdmFyKC0td2hpdGUpO1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEoJzxkZXNrdG9wLWwnKSB7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtbSk7XG4gICAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWxldHRlci1zcGFjaW5nLW0pO1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEoJzw9bW9iaWxlLWwnKSB7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtbSk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LW0pO1xuICAgIGxldHRlci1zcGFjaW5nOiB2YXIoLS1sZXR0ZXItc3BhY2luZy1tKTtcbiAgfVxufVxuXG4uZ3JpZC1maWx0ZXItY29udGFpbmVyLnN0aWNreSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbn1cblxuLmdyaWQtZmlsdGVyX19zZWxlY3QtY29udGFpbmVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmdyaWQtdG9nZ2xlIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBib3R0b206IDBweDtcbiAgbGVmdDogM3B4O1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1zKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWxldHRlci1zcGFjaW5nLXMpO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5yZWxhdGVkLWFydGljbGVzLWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LWZhbWlseTogXCJJbnRlclwiLCBIZWx2ZXRpY2EsIFwiSGVsdmV0aWNhIE5ldWVcIiwgQXJpYWw7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWwpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtbCk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1sZXR0ZXItc3BhY2luZy1sKTtcblxuICAmLS1oZWFkaW5nIHtcbiAgICBoZWlnaHQ6IDEwNnB4O1xuICAgIHBhZGRpbmctdG9wOiA0MHB4O1xuXG4gICAgcGFkZGluZzogNDBweCAxOHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICBAaW5jbHVkZSBtZWRpYSgnPGRlc2t0b3AnKSB7XG4gICAgICBwYWRkaW5nOiAxOHB4IDIwcHggMThweDtcbiAgICAgIGhlaWdodDogYXV0bztcblxuICAgIH1cbiAgfVxufVxuXG4uc2VjdGlvbi13cmFwcGVyLS1yZWxhdGVkLWFydGljbGVzLWhlYWRlciB7XG4gIC5yZWxhdGVkLWFydGljbGVzLWNvbnRhaW5lciB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhcigtLWNvbC0xKTtcbiAgfVxufVxuXG4uc2VjdGlvbi13cmFwcGVyLS1yZWxhdGVkLWFydGljbGVzIHtcblxuICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XG4gICAgJjpub3QoLmRvbnQtaGlkZS1sYXN0LWFydGljbGUpIHtcbiAgICAgIC5mbG93LWJsb2NrIHtcbiAgICAgICAgJjpudGgtY2hpbGQoNCkge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuZmxvdy1ibG9jayB7XG4gICAgJi5hY3RpdmU6bnRoLWNoaWxkKDduKzMpIC5mbG93LWJsb2NrLWJnLS1zcXVhcmUsXG4gICAgLmZsb3ctYmxvY2stYmcge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgLy8gU2hvdyBmb3IgbW9iaWxlIGFuZCB0YWJsZXRcbiAgICBAaW5jbHVkZSBtZWRpYSgnPHRhYmxldCcpIHtcbiAgICAgICY6bnRoLWNoaWxkKDQpIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uZmxvdy1jb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIG1heC13aWR0aDogdmFyKC0tc2l0ZS13aWR0aCk7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuXG4uZmxvdy1ibG9jayB7XG4gICZfX3ZpZGVvLWNvbnRhaW5lciB7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgbGVmdDogMDtcbiAgfVxufVxuXG5AaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XG4gIC5jb2wtc2l6ZS10d28tY29sIHtcbiAgICAuZmxvdy1ibG9jayB7XG4gICAgICB3aWR0aDogNTAlICFpbXBvcnRhbnQ7XG5cbiAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgLmR1bW15IHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuY29sLXNpemUtdGhyZWUtY29sIHtcbiAgICAuZmxvdy1ibG9jayB7XG4gICAgICB3aWR0aDogMzMuMzMzJSAhaW1wb3J0YW50O1xuXG4gICAgICAmLmFjdGl2ZSB7XG4gICAgICAgIC5kdW1teSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gIH1cbn1cblxuLmZsb3ctYmxvY2stYmcge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBvcGFjaXR5OiAwO1xuICBAaW5jbHVkZSB6b29tRmFkZUluVHJhbnNpdGlvbjtcbn1cblxuXG4vLyAuZmxvdy1ibG9jay1iZy0tc3F1YXJlIHtcbi8vICAgZGlzcGxheTogbm9uZTtcbi8vIH1cblxuLy8gLmZsb3ctYmxvY2stYmctLXJlY3RhbmdsZSB7XG4vLyAgIGRpc3BsYXk6IGJsb2NrO1xuLy8gfVxuLmZsb3ctYmxvY2stYmctLXJlY3RhbmdsZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5mbG93LWJsb2NrLWgyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMCUpO1xuICBvcGFjaXR5OiAwO1xuICB6LWluZGV4OiA1MDtcblxuICBAaW5jbHVkZSBmYWRlQW5kU2xpZGVJblRyYW5zaXRpb24oKTtcblxuICAuaW1hZ2UtbGF6eWxvYWRlZCAmIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCUpO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuLmZsb3ctYmxvY2stYmcubGF6eWxvYWRlZCB7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5mbG93LWJsb2NrLWNhdGVnb3J5IHtcbiAgZGlzcGxheTogbm9uZTtcblxuICAmLmFjdGl2ZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAmX19wYWdlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIGhlaWdodDogMDtcblxuICAgICYuYWN0aXZlIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgfVxuICB9XG59XG5cblxuLmZsb3ctYmxvY2staDIge1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1sKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWwpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tbGV0dGVyLXNwYWNpbmctbCk7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGNvbG9yOiAjZmZmO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogNDBweDtcbiAgbWFyZ2luOiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHJnYmEoMCwgMCwgMCwgMCksIHJnYmEoMCwgMCwgMCwgMCkpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuXG4gIGZvbnQtd2VpZ2h0OiA1MDA7IC8vIDYwMCBhY2NvcmRpbmcgdG8gZGVzaWduP1xuICBsZXR0ZXItc3BhY2luZzogJHRpZ2h0LWtlcm5pbmc7XG5cbiAgLy8gTm9ybWFsIHNoYWRvd3NcbiAgLnNoYWRvdy0xICYge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHJnYmEoMCwgMCwgMCwgLjEpLCByZ2JhKDAsIDAsIDAsIDApKTtcbiAgfVxuXG4gIC5zaGFkb3ctMiAmIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCByZ2JhKDAsIDAsIDAsIC4yKSwgcmdiYSgwLCAwLCAwLCAwKSk7XG4gIH1cblxuICAuc2hhZG93LTMgJiB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgcmdiYSgwLCAwLCAwLCAuMyksIHJnYmEoMCwgMCwgMCwgMCkpO1xuICB9XG5cbiAgLnNoYWRvdy00ICYge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHJnYmEoMCwgMCwgMCwgLjQpLCByZ2JhKDAsIDAsIDAsIDApKTtcbiAgfVxuXG4gIC5zaGFkb3ctNSAmIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCByZ2JhKDAsIDAsIDAsIC41KSwgcmdiYSgwLCAwLCAwLCAwKSk7XG4gIH1cblxuICAvLyBCb3R0b20gU2hhZG93c1xuICAuZmxvdy1ibG9jay0tYm90dG9tLnNoYWRvdy0xICYge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHJnYmEoMCwgMCwgMCwgMCksIHJnYmEoMCwgMCwgMCwgLjEpKTtcbiAgfVxuXG4gIC5mbG93LWJsb2NrLS1ib3R0b20uc2hhZG93LTIgJiB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgcmdiYSgwLCAwLCAwLCAwKSwgcmdiYSgwLCAwLCAwLCAuMikpO1xuICB9XG5cbiAgLmZsb3ctYmxvY2stLWJvdHRvbS5zaGFkb3ctMyAmIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCByZ2JhKDAsIDAsIDAsIDApLCByZ2JhKDAsIDAsIDAsIC4zKSk7XG4gIH1cblxuICAuZmxvdy1ibG9jay0tYm90dG9tLnNoYWRvdy00ICYge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHJnYmEoMCwgMCwgMCwgMCksIHJnYmEoMCwgMCwgMCwgLjQpKTtcbiAgfVxuXG4gIC5mbG93LWJsb2NrLS1ib3R0b20uc2hhZG93LTUgJiB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgcmdiYSgwLCAwLCAwLCAwKSwgcmdiYSgwLCAwLCAwLCAuNSkpO1xuICB9XG5cbiAgLmZsb3ctYmxvY2stLW51bGwgJiB7XG4gICAgdG9wOiBhdXRvO1xuICAgIGJvdHRvbTogMDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCByZ2JhKDAsIDAsIDAsIDApLCByZ2JhKDAsIDAsIDAsIDApKTtcbiAgfVxuXG4gIC5mbG93LWJsb2NrLS1ib3R0b20gJiB7XG4gICAgdG9wOiBhdXRvO1xuICAgIGJvdHRvbTogMDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCByZ2JhKDAsIDAsIDAsIDApLCByZ2JhKDAsIDAsIDAsIDApKTtcbiAgfVxufVxuXG4uZmxvdy1ibG9jay5hY3RpdmUge1xuICBvcGFjaXR5OiAxO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHRyYW5zaXRpb24tZGVsYXk6IG9wYWNpdHkgLjZzO1xuICB3aWR0aDogMzMuMzMlO1xuXG4gIC5kdW1teSB7XG4gICAgbWFyZ2luLXRvcDogNTAlO1xuICAgIG1hcmdpbi10b3A6IDEwMCU7XG4gIH1cblxuICAvLyB3aWR0aDogNTAlO1xuICB3aWR0aDogMTAwJTsgLy8gQmVjYXVzZSA1MCUgaXMgdG9vIHNtYWxsIGZvciB0aGUgdGV4dFxuXG4gIC5mbG93LWJsb2NrX192aWRlby1jb250YWluZXIge1xuICAgID4gZGl2IHtcbiAgICAgIHBhZGRpbmc6IDEwMCUgMCAwIDAgIWltcG9ydGFudDtcblxuICAgICAgPiBpZnJhbWUge1xuXG4gICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgKiAxLjgpICFpbXBvcnRhbnQ7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKSAhaW1wb3J0YW50O1xuICAgICAgICBsZWZ0OiA1MCUgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XG5cbiAgICB3aWR0aDogNTAlO1xuXG4gICAgJjpudGgtY2hpbGQoM24rMSkge1xuICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgIC5mbG93LWJsb2NrLWJnLS1zcXVhcmUge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuXG4gICAgICAuZmxvdy1ibG9jay1iZy0tcmVjdGFuZ2xlIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG5cbiAgICAgIC5kdW1teSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDUwJTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4vLyBMb2FkIE1vcmVcblxuLmxvYWQtbW9yZS1jb250YWluZXIge1xuICBtYXgtd2lkdGg6IHZhcigtLXNpdGUtd2lkdGgpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1sb2FkLW1vcmUtYmFja2dyb3VuZCk7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBoZWlnaHQ6IDEwMHB4O1xuICBmb250LWZhbWlseTogXCJJbnRlclwiLCBIZWx2ZXRpY2EsIFwiSGVsdmV0aWNhIE5ldWVcIiwgQXJpYWw7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWwpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtbCk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1sZXR0ZXItc3BhY2luZy1sKTtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgY29sb3I6IHdoaXRlO1xuICB0cmFuc2l0aW9uOiBhbGwgMC40cztcbiAgY3Vyc29yOiBwb2ludGVyO1xuXG4gIHVzZXItc2VsZWN0OiBub25lO1xuXG4gIEBtZWRpYSAoaG92ZXI6IGhvdmVyKSB7XG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogIzY2NjtcbiAgICB9XG4gIH1cbn1cblxuLmxvYWQtbW9yZS1idXR0b24ge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBhZGRpbmctdG9wOiAzMHB4O1xufVxuXG5cbkBpbmNsdWRlIG1lZGlhKCc8ZGVza3RvcCcpIHtcblxuICAuZ3JpZC1maWx0ZXJfX2xpbmUtY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxuXG4gIC5ncmlkLWZpbHRlcl9fc2VsZWN0LWNvbnRhaW5lciB7XG4gICAgcGFkZGluZzogMThweCAyMHB4O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmb250LWZhbWlseTogXCJJbnRlclwiLCBIZWx2ZXRpY2EsIFwiSGVsdmV0aWNhIE5ldWVcIiwgQXJpYWw7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtbSk7XG4gICAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWxldHRlci1zcGFjaW5nLW0pO1xuICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgcG9zaXRpb246IC13ZWJraXQtc3RpY2t5O1xuICAgIHRvcDogMDtcbiAgICB6LWluZGV4OiAzMDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLDAsMCwwLjYpO1xuICAgIGJhY2tkcm9wLWZpbHRlcjogYmx1cig4cHgpO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoJzxtb2JpbGUtbCcpIHtcbiAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLW0pO1xuICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LW0pO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWxldHRlci1zcGFjaW5nLW0pO1xuICAgICAgaGVpZ2h0OiBjYWxjKDM0cHggKyAxOHB4ICsgMThweCk7XG4gICAgfVxuICAgIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMzBweDtcbiAgICB9XG4gICAgQGluY2x1ZGUgbWVkaWEoJz49ZGVza3RvcCcpIHtcbiAgICAgIHBhZGRpbmctbGVmdDogNDBweDtcbiAgICB9XG4gIH1cblxuICAuZ3JpZC1maWx0ZXJfX3NlbGVjdCB7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcblxuICAgIGJvcmRlcjogMDtcbiAgICBmb250LWZhbWlseTogXCJJbnRlclwiLCBIZWx2ZXRpY2EsIFwiSGVsdmV0aWNhIE5ldWVcIiwgQXJpYWw7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtbSk7XG4gICAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWxldHRlci1zcGFjaW5nLW0pO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBjb2xvcjogdmFyKC0td2hpdGUpO1xuICAgIC8vIHBhZGRpbmctcmlnaHQ6IDI2cHg7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICBAaW5jbHVkZSBtZWRpYSgnPG1vYmlsZS1sJykge1xuICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtbSk7XG4gICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtbSk7XG4gICAgICBsZXR0ZXItc3BhY2luZzogdmFyKC0tbGV0dGVyLXNwYWNpbmctbSk7XG4gICAgfVxuICB9XG5cbiAgLmdyaWQtZmlsdGVyX190ZXh0IHtcbiAgICAmX19wcmVmaXgge1xuICAgICAgY29sb3I6IHZhcigtLW1pZGRsZS1ncmV5KTtcbiAgICB9XG5cbiAgICAud3JhcHBlci5ibHVyICYge1xuICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgfVxuICB9XG5cblxuXG5cbiAgLmdyaWQtZmlsdGVyX19vcHRpb24ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgIGJvcmRlcjogMDtcbiAgICBjb2xvcjogdmFyKC0tbWlkZGxlLWdyZXkpO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLmZsb3ctYmxvY2sge1xuICAgIHBhZGRpbmc6IDBweDtcbiAgfVxuXG5cbiAgLmZsb3ctYmxvY2staDIge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXMpO1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1zKTtcbiAgICBsZXR0ZXItc3BhY2luZzogdmFyKC0tbGV0dGVyLXNwYWNpbmctcyk7XG5cbiAgICBwYWRkaW5nOiAzMHB4O1xuICB9XG5cbiAgLmFydGljbGUge1xuICAgIC5mbG93LWNvbnRhaW5lciB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAuZmxvdy1ibG9jay0tMS0zIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgZmxleC1ncm93OiAzO1xuICAgICAgbWFyZ2luLWJvdHRvbTogLTMwcHg7XG4gICAgICBib3JkZXI6IDMwcHggc29saWQgYmxhY2s7XG4gICAgfVxuXG4gICAgLmZsb3ctYmxvY2staDIge1xuICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtbSk7XG4gICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtbSk7XG4gICAgICBsZXR0ZXItc3BhY2luZzogdmFyKC0tbGV0dGVyLXNwYWNpbmctbSk7XG4gICAgfVxuICB9XG5cbiAgLnJlbGF0ZWQtYXJ0aWNsZXMtY29udGFpbmVyIHtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1tKTtcbiAgICBsZXR0ZXItc3BhY2luZzogdmFyKC0tbGV0dGVyLXNwYWNpbmctbSk7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBjb2xvcjogYmxhY2s7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gIH1cblxuICAuc2VjdGlvbi13cmFwcGVyLS1yZWxhdGVkLWFydGljbGVzLWhlYWRlciB7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcblxuICAgIC5yZWxhdGVkLWFydGljbGVzLWNvbnRhaW5lciB7XG4gICAgICBtYXJnaW4tbGVmdDogJG1vYmlsZS1tYXJnaW47XG4gICAgfVxuICB9XG5cblxuICAubG9hZC1tb3JlLWNvbnRhaW5lciB7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtbSk7XG4gICAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWxldHRlci1zcGFjaW5nLW0pO1xuICB9XG59XG5cbi5oaWRkZW5fdG1wX3NlbGVjdCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbkBpbmNsdWRlIG1lZGlhKCc8dGFibGV0Jykge1xuICAuZmxvdy1ibG9jay1oMiB7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtcyk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXMpO1xuICAgIGxldHRlci1zcGFjaW5nOiB2YXIoLS1sZXR0ZXItc3BhY2luZy1zKTtcblxuICAgIHBhZGRpbmc6IDIwcHg7XG5cbiAgICAvLyAuZmxvdy1ibG9jay0tYm90dG9tICYge1xuICAgIC8vICAgcGFkZGluZzogMjBweCAxMHB4IDEwcHg7XG4gICAgLy8gfVxuICB9XG5cbiAgLmxvYWQtbW9yZS1jb250YWluZXIge1xuICAgIGhlaWdodDogNzVweDtcbiAgfVxuXG4gIC5sb2FkLW1vcmUtYnV0dG9uIHtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgICBsaW5lLWhlaWdodDogNzVweDtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1tKTtcbiAgICBsZXR0ZXItc3BhY2luZzogdmFyKC0tbGV0dGVyLXNwYWNpbmctbSk7XG4gIH1cbn1cbiIsIi8vIEdyaWQgc2hhcGVzIGZvciB0aGUgcmVkZXNpZ24uXG4vL1xuLy8gVGhlIG9yaWdpbmFsIGdyaWQgbWl4ZXMgc2hhcGVzIOKAlCBldmVyeSB0aGlyZCBwaWVjZSBydW5zIGZ1bGwgd2lkdGggYW5kIHdpZGUsXG4vLyB0aGUgcmVzdCBhcmUgaGFsZi13aWR0aCBzcXVhcmVzLiBUaGUgcmVkZXNpZ24gZHJvcHMgdGhlIG1peDogYSB2aWV3IGlzIGVpdGhlclxuLy8gYWxsIHNxdWFyZXMgb3IgYWxsIHdpZGVzLCBhbmQgd2hpY2ggb25lIGl0IGlzIGZsaXBzIGJldHdlZW4gYnJlYWtwb2ludHMuXG4vL1xuLy8gICAgICAgICAgICAgICAgICAgICAgICBkZXNrdG9wIC8gdGFibGV0ICAgICBtb2JpbGVcbi8vICAgU2hvdyBhbGwgICAgICAgICAgICAgc3F1YXJlICAgICAgICAgICAgICAgd2lkZVxuLy8gICBBIGNhdGVnb3J5IHNlbGVjdGVkICB3aWRlICAgICAgICAgICAgICAgICBzcXVhcmVcbi8vXG4vLyBUaGUgaW52ZXJzaW9uIGlzIGRlbGliZXJhdGUg4oCUIHNlZSB0aGUgY2xpZW50J3Mgbm90ZXMgb24gdGhlIGZlZWQuIEV2ZXJ5dGhpbmdcbi8vIGhlcmUgaXMgc2NvcGVkIHRvIC5jb250ZW50LWdyaWQtLXBoYywgc28gdGhlIG9yaWdpbmFsIGdyaWQgaXMgdW50b3VjaGVkIG9uXG4vLyBwYWdlcyB0aGF0IGhhdmUgbm90IG1vdmVkIGFjcm9zcy5cbi8vXG4vLyBUaGUgc2hhcGUgaXRzZWxmIGlzIHRoZSB0aGVtZSdzIGV4aXN0aW5nIHBhZGRpbmctaGFjazogLmR1bW15IGF0IDEwMCUgdG9wXG4vLyBtYXJnaW4gZ2l2ZXMgYSBzcXVhcmUsIDUwJSBnaXZlcyB0aGUgMjoxIHdpZGUsIGFuZCB0aGUgdHdvIGJhY2tncm91bmQgbGF5ZXJzXG4vLyBhcmUgc3dhcHBlZCB0byBtYXRjaCBzbyB0aGUgcmlnaHQgY3JvcCBpcyB1c2VkLlxuXG5AbWl4aW4gcGhjLWdyaWQtc3F1YXJlIHtcbiAgLmZsb3ctYmxvY2stYmctLXNxdWFyZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAuZmxvdy1ibG9jay1iZy0tcmVjdGFuZ2xlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLmR1bW15IHtcbiAgICBtYXJnaW4tdG9wOiAxMDAlO1xuICB9XG59XG5cbkBtaXhpbiBwaGMtZ3JpZC13aWRlIHtcbiAgLmZsb3ctYmxvY2stYmctLXNxdWFyZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC5mbG93LWJsb2NrLWJnLS1yZWN0YW5nbGUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgLmR1bW15IHtcbiAgICBtYXJnaW4tdG9wOiA1MCU7XG4gIH1cbn1cblxuLmNvbnRlbnQtZ3JpZC0tcGhjIHtcblxuICAvLyBUaGUgbnRoLWNoaWxkIHJ1bGUgaW4gdGhlIG9yaWdpbmFsIGdyaWQgaXMgd2hhdCBjcmVhdGVzIHRoZSBtaXhlZCBwYXR0ZXJuLFxuICAvLyBzbyBpdCBoYXMgdG8gYmUgb3ZlcnJpZGRlbiByYXRoZXIgdGhhbiBtZXJlbHkgYWRkZWQgdG8uXG4gIC5mbG93LWJsb2NrLFxuICAuZmxvdy1ibG9jazpudGgtY2hpbGQoM24rMSkge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuXG4gICAgLy8gU2hvdyBhbGw6IHNxdWFyZXMsIHR3byB0byBhIHJvdy5cbiAgICAuZmxvdy1ibG9jay1jYXRlZ29yeS0tZXZlcnl0aGluZyAuZmxvdy1ibG9jayxcbiAgICAuZmxvdy1ibG9jay1jYXRlZ29yeS0tZXZlcnl0aGluZyAuZmxvdy1ibG9jazpudGgtY2hpbGQoM24rMSkge1xuICAgICAgd2lkdGg6IDUwJTtcblxuICAgICAgQGluY2x1ZGUgcGhjLWdyaWQtc3F1YXJlO1xuICAgIH1cblxuICAgIC8vIEEgY2F0ZWdvcnk6IHdpZGVzLCBvbmUgdG8gYSByb3cuXG4gICAgLmZsb3ctYmxvY2stY2F0ZWdvcnk6bm90KC5mbG93LWJsb2NrLWNhdGVnb3J5LS1ldmVyeXRoaW5nKSAuZmxvdy1ibG9jayxcbiAgICAuZmxvdy1ibG9jay1jYXRlZ29yeTpub3QoLmZsb3ctYmxvY2stY2F0ZWdvcnktLWV2ZXJ5dGhpbmcpIC5mbG93LWJsb2NrOm50aC1jaGlsZCgzbisxKSB7XG4gICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgQGluY2x1ZGUgcGhjLWdyaWQtd2lkZTtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYSgnPHRhYmxldCcpIHtcblxuICAgIC8vIE1vYmlsZSBpbnZlcnRzIGJvdGg6IHNob3cgYWxsIGdvZXMgd2lkZSwgYSBjYXRlZ29yeSBnb2VzIHNxdWFyZS4gRWl0aGVyXG4gICAgLy8gd2F5IGVhY2ggcGllY2UgdGFrZXMgdGhlIGZ1bGwgd2lkdGguXG4gICAgLmZsb3ctYmxvY2stY2F0ZWdvcnktLWV2ZXJ5dGhpbmcgLmZsb3ctYmxvY2ssXG4gICAgLmZsb3ctYmxvY2stY2F0ZWdvcnktLWV2ZXJ5dGhpbmcgLmZsb3ctYmxvY2s6bnRoLWNoaWxkKDNuKzEpIHtcbiAgICAgIEBpbmNsdWRlIHBoYy1ncmlkLXdpZGU7XG4gICAgfVxuXG4gICAgLmZsb3ctYmxvY2stY2F0ZWdvcnk6bm90KC5mbG93LWJsb2NrLWNhdGVnb3J5LS1ldmVyeXRoaW5nKSAuZmxvdy1ibG9jayxcbiAgICAuZmxvdy1ibG9jay1jYXRlZ29yeTpub3QoLmZsb3ctYmxvY2stY2F0ZWdvcnktLWV2ZXJ5dGhpbmcpIC5mbG93LWJsb2NrOm50aC1jaGlsZCgzbisxKSB7XG4gICAgICBAaW5jbHVkZSBwaGMtZ3JpZC1zcXVhcmU7XG4gICAgfVxuICB9XG5cbiAgLy8gQ2FyZCBjYXB0aW9ucyBjYXJyeSB0ZXh0LXBoYy1zdGFuZGFyZCBmcm9tIHRoZSBjYXJkIHRlbXBsYXRlLCBzbyBvbmx5IHRoZWlyXG4gIC8vIHNwYWNpbmcgaXMgc2V0IGhlcmUg4oCUIHRoZSBvcmlnaW5hbCBncmlkJ3MgNDBweCBpcyBmYXIgdG9vIG11Y2ggb25jZSB0aGVcbiAgLy8gY2FwdGlvbiBzaXRzIGluIHRoZSBjb3JuZXIgb2YgdGhlIGltYWdlIHJhdGhlciB0aGFuIHRpdGxpbmcgaXQuXG4gIC8vXG4gIC8vIFRoZSBjb2xvdXIgaXMgbGVmdCBhbG9uZSB0b286IGl0IGNvbWVzIGZyb20gdGhlIHRleHQtd2hpdGUgLyB0ZXh0LWJsYWNrXG4gIC8vIGNsYXNzIGVhY2ggcHJvamVjdCBjYXJyaWVzLCBjaG9zZW4gYWdhaW5zdCB0aGF0IHByb2plY3QncyBvd24gaW1hZ2UuXG4gIC5mbG93LWJsb2NrLWgyIHtcbiAgICBwYWRkaW5nOiAkcGhjLWJsb2NrLWdhcDtcbiAgfVxufVxuIiwiLndyYXBwZXItaGVyby1zbGlkZXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1leHRlbnNpb24taG9tZS1zbGlkZXMpO1xufVxuXG4uaGVyby1zbGlkZXMge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBtYXgtd2lkdGg6IHZhcigtLXNpdGUtd2lkdGgpO1xuICB3aWR0aDogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmxhY2spO1xuXG4gIC5wbHlyX19jb250cm9scyB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gICYtY29udGFpbmVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmxhY2spO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIH1cblxufVxuXG4uaGVybyB7XG4gIHdpZHRoOiAxMDAlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgLy8gaGVpZ2h0OiBjYWxjKCh2YXIoLS1zaXRlLXdpZHRoKSkgKiAoMS4xODUpKTtcbiAgcGFkZGluZy1ib3R0b206IGNhbGMoKHZhcigtLXNpdGUtd2lkdGgpKSAqICg5LzE2KSk7XG5cblxuXG4gIEBpbmNsdWRlIG1lZGlhKCc8ZGVza3RvcCcpIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMHB4O1xuXG4gICAgJjpiZWZvcmUge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgcGFkZGluZy1ib3R0b206IDU2LjI1JTtcbiAgICAgIHdpZHRoOiAwcHg7XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhKCc8dGFibGV0Jykge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTE4LjUlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYtLXZpZGVvIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcblxuICAgIC8vIFJlbW92ZSBwb2ludGVyLWV2ZW50cyBpZiB3ZSBoYXZlIGEgYW5jaG9yIHRhZyB3cmFwcGVyXG4gICAgYSA+ICYge1xuICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgfVxuXG4gICAgJjpiZWZvcmUge1xuICAgICAgQGluY2x1ZGUgbWVkaWEoJzxkZXNrdG9wJykge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgfVxuXG4gICZfX2NhcHRpb24ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBib3R0b206IDA7XG4gICAgcmlnaHQ6IDA7XG5cbiAgfVxufVxuXG4uaGVyby1hcnRpY2xlIHtcbiAgJl9fY2FwdGlvbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6ICRtb2JpbGUtbWFyZ2luO1xuICAgIHJpZ2h0OiAkbW9iaWxlLW1hcmdpbjtcbiAgICBib3R0b206IDMwcHg7XG4gICAgY29sb3I6IHZhcigtLXdoaXRlKTtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1sKTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtbCk7XG4gICAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWxldHRlci1zcGFjaW5nLWwpO1xuXG5cbiAgICBAaW5jbHVkZSBtZWRpYSgnPj1kZXNrdG9wJykge1xuICAgICAgYm90dG9tOiA0MHB4O1xuICAgICAgLy8gZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUteHhsKTtcbiAgICAgIC8vIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC14eGwpO1xuICAgICAgLy8gbGV0dGVyLXNwYWNpbmc6IHZhcigtLWxldHRlci1zcGFjaW5nLXh4bCk7XG4gICAgICBsZWZ0OiB2YXIoLS1jb2wtMSk7XG4gICAgICByaWdodDogdmFyKC0tY29sLTIpO1xuICAgIH1cbiAgfVxuXG4gICZfX2ltZyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG59XG5cbi5oZXJvLXZpZGVvX19jYXB0aW9uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAkbW9iaWxlLW1hcmdpbjtcbiAgcmlnaHQ6ICRtb2JpbGUtbWFyZ2luO1xuICBib3R0b206IDIwcHg7XG4gIGNvbG9yOiB2YXIoLS13aGl0ZSk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLW0pO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtbSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1sZXR0ZXItc3BhY2luZy1tKTtcblxuXG4gIEBpbmNsdWRlIG1lZGlhKCc8ZGVza3RvcCcpIHtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1zKTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtcyk7XG4gICAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWxldHRlci1zcGFjaW5nLXMpO1xuXG4gICAgYnIge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYSgnPj1kZXNrdG9wJykge1xuICAgIGJvdHRvbTogNDBweDtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1sKTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtbCk7XG4gICAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWxldHRlci1zcGFjaW5nLWwpO1xuICAgIGxlZnQ6IHZhcigtLWNvbC0xKTtcbiAgICByaWdodDogdmFyKC0tY29sLTEpO1xuICB9XG59XG5cblxuXG4udGFnbGluZSB7XG4gIGxlZnQ6IHZhcigtLWNvbC0xKTtcbiAgcmlnaHQ6IHZhcigtLWNvbC0xKTtcbn1cblxuLmNlbnRlci10YWdsaW5lIHtcbiAgLnRhZ2xpbmUge1xuICAgIHRvcDogYXV0bztcbiAgICBib3R0b206IDIwcHg7XG4gICAgbGVmdDogJG1vYmlsZS1tYXJnaW47XG5cbiAgICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XG5cbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgYm90dG9tOiBhdXRvO1xuICAgICAgd2lkdGg6IHZhcigtLWNvbC0xMCk7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgIH1cbiAgfVxufVxuXG4uYm90dG9tLXRhZ2xpbmUge1xuICAudGFnbGluZSB7XG4gICAgdG9wOiBhdXRvO1xuICAgIGJvdHRvbTogMjBweDtcbiAgICBsZWZ0OiAkbW9iaWxlLW1hcmdpbjtcblxuICAgIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbiAgICAgIGJvdHRvbTogNDBweDtcbiAgICAgIC8vIGxlZnQ6IHZhcigtLWNvbC0xKTtcbiAgICAgIGxlZnQ6IHZhcigtLWNvbC0xKVxuICAgIH1cbiAgfVxufVxuXG4udG9wLXRhZ2xpbmUge1xuICAudGFnbGluZSB7XG4gICAgdG9wOiBhdXRvO1xuICAgIGJvdHRvbTogMjBweDtcbiAgICBsZWZ0OiAkbW9iaWxlLW1hcmdpbjtcblxuICAgIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbiAgICAgIHRvcDogMTQ1cHg7XG4gICAgICAvLyBsZWZ0OiB2YXIoLS1jb2wtMSk7XG4gICAgICBsZWZ0OiB2YXIoLS1jb2wtMSlcbiAgICB9XG4gIH1cbn1cblxuLmhlcm8tc2xpZGUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDEwMDtcbiAgdG9wOiAwcHg7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW46IGF1dG87XG4gIG9wYWNpdHk6IDA7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcblxuICBAaW5jbHVkZSBtZWRpYSgnPj1kZXNrdG9wJykge31cblxuXG5cblxuICBAaW5jbHVkZSB6b29tRmFkZUluVHJhbnNpdGlvbjtcblxuXG5cbiAgJi5hY3RpdmUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLy8gdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICB6LWluZGV4OiAxMTA7XG4gIH1cblxuXG4gICZfX2ltZyB7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBvcGFjaXR5OiAwO1xuICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcblxuXG4gICAgQGluY2x1ZGUgem9vbUZhZGVJblRyYW5zaXRpb247XG5cbiAgICAmLmxhenlsb2FkZWQge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIC8vIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgfVxuXG4gICAgJi0tZGVza3RvcCB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbiAgICAvLyB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7XG5cbiAgICAmX19pbWcge1xuICAgICAgLy8gdHJhbnNmb3JtOiBzY2FsZSgxLjEpO1xuXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG5cbiAgICAgICYtLW1vYmlsZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG5cbiAgICAgICYtLWRlc2t0b3Age1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmhlcm8tLWhhc3RodW1ibmFpbHMgLmJvdHRvbS10YWdsaW5lIHtcbiAgLnRhZ2xpbmUge1xuXG4gICAgYm90dG9tOiA0NHB4O1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgICAgYm90dG9tOiA0NXB4O1xuICAgICAgbGVmdDogJG1vYmlsZS1tYXJnaW47XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEoJz50YWJsZXQnKSB7XG4gICAgICBib3R0b206IDgwcHg7XG4gICAgICBsZWZ0OiB2YXIoLS1jb2wtMSlcbiAgICB9XG4gIH1cbn1cblxuLmhlcm8tLWhhc3RodW1ibmFpbHMgLnRvcC10YWdsaW5lIHtcbiAgLnRhZ2xpbmUge1xuICAgIGJvdHRvbTogNTBweDtcbiAgfVxufVxuXG4uaGVyby0taGFzdGh1bWJuYWlscyAuY2VudGVyLXRhZ2xpbmUge1xuICAudGFnbGluZSB7XG4gICAgYm90dG9tOiA1MHB4O1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgICAgYm90dG9tOiBhdXRvO1xuICAgICAgYm90dG9tOiB0b3A7XG4gICAgfVxuICB9XG59XG5cbi5oZXJvLXNsaWRlLWxpbmsge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB6LWluZGV4OiAxOTk7XG5cbiAgLnRhZ2xpbmU6OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIuKGklwiO1xuICAgIHBhZGRpbmctbGVmdDogNXB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gICAgdHJhbnNpdGlvbjogYWxsIC4ycyBlYXNlLW91dDtcblxuICB9XG5cbiAgLnRhZ2xpbmU6aG92ZXI6OmFmdGVyIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gICAgcGFkZGluZy1yaWdodDogNXB4O1xuICB9XG59XG5cbi50YWdsaW5lIHtcbiAgJHA6ICY7XG4gIC8vIGN1cnNvcjogcG9pbnRlcjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBjb2xvcjogd2hpdGU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBmb250LWZhbWlseTogXCJJbnRlclwiLCBIZWx2ZXRpY2EsIFwiSGVsdmV0aWNhIE5ldWVcIiwgQXJpYWw7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWwpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtbCk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1sZXR0ZXItc3BhY2luZy1sKTtcbiAgdHJhbnNpdGlvbjogaGVpZ2h0IDFzO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcblxuICAvLyAmX19hcnJvdyB7XG4gIC8vICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAvLyAgIHBhZGRpbmctcmlnaHQ6IDBweDtcbiAgLy8gfVxuXG5cbiAgQGluY2x1ZGUgbWVkaWEoJzxkZXNrdG9wJykge1xuXG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtbSk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LW0pO1xuICAgIGxldHRlci1zcGFjaW5nOiB2YXIoLS1sZXR0ZXItc3BhY2luZy1tKTtcbiAgICAvLyBiciB7XG4gICAgLy8gICBkaXNwbGF5OiBub25lO1xuICAgIC8vIH1cblxuICAgICYtY29udGFpbmVyIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiA4OXZoO1xuICAgICAgbWF4LWhlaWdodDogMTAwdmg7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgIH1cblxuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLW0pO1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1tKTtcbiAgICBsZXR0ZXItc3BhY2luZzogdmFyKC0tbGV0dGVyLXNwYWNpbmctbSk7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBsZWZ0OiAkbW9iaWxlLW1hcmdpbjtcbiAgfVxufVxuXG4uc2xpZGVzLXRodW1ibmFpbHMge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDE1MDtcbiAgYm90dG9tOiA0NHB4O1xuICBsZWZ0OiA1MCU7XG4gIGxlZnQ6IDMzLjMzJTtcbiAgcmlnaHQ6IDMzLjMzJTtcbiAgZGlzcGxheTogbm9uZTtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIG1heC13aWR0aDogdmFyKC0tY29sLTQpO1xuICBtaW4taGVpZ2h0OiAxMDBweDtcblxuICBAaW5jbHVkZSBtZWRpYSgnPj1kZXNrdG9wJykge1xuICAgICY6aG92ZXIge1xuICAgICAgLnNsaWRlcy10aHVtYm5haWxfX2ltZyB7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmhlcm8tLWhhc3RodW1ibmFpbHMgLnNsaWRlcy10aHVtYm5haWxzIHtcbiAgZGlzcGxheTogZmxleDtcbn1cblxuLnNsaWRlcy10aHVtYm5haWwge1xuICB3aWR0aDogY2FsYygoKHZhcigtLWNvbC00KSkgLTE2cHgpIC8gMyk7XG4gIGhlaWdodDogYXV0bztcbiAgZmxleDogMTtcbiAgbWFyZ2luOiAwIDRweDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICNmZmY7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG9wYWNpdHk6IDE7XG5cbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cblxuICAmOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgfVxuXG4gICY6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGJvcmRlci1ib3R0b206IDhweCBzb2xpZCAjZmZmO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAwcHg7XG4gIH1cblxuICAmX19pbWcge1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IC0xMDAlO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAvLyBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICB0cmFuc2l0aW9uOiBib3R0b20gMC4zcyBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcbiAgICBvcGFjaXR5OiAxO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoJzw9dGFibGV0Jykge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuXG5cbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgfVxuXG4gICYuYWN0aXZlIHtcbiAgICAmOmFmdGVyIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgdHJhbnNpdGlvbjogd2lkdGggNC41cyBsaW5lYXI7XG4gICAgfVxuICB9XG5cbiAgJi0xIHtcbiAgICBpbWcge1xuICAgICAgdHJhbnNpdGlvbi1kZWxheTogMHM7XG4gICAgfVxuICB9XG5cbiAgJi0yIHtcbiAgICBpbWcge1xuICAgICAgdHJhbnNpdGlvbi1kZWxheTogMC4wN3M7XG4gICAgfVxuICB9XG5cbiAgJi0zIHtcbiAgICBpbWcge1xuICAgICAgdHJhbnNpdGlvbi1kZWxheTogMC4xNHM7XG4gICAgfVxuICB9XG59XG5cbkBpbmNsdWRlIG1lZGlhKCc8PXRhYmxldCcpIHtcblxuICAuc2xpZGVzLXRodW1ibmFpbHMge1xuICAgIC8vIGRpc3BsYXk6IG5vbmU7XG4gICAgbGVmdDogJG1vYmlsZS1tYXJnaW47XG4gICAgcmlnaHQ6ICRtb2JpbGUtbWFyZ2luO1xuICAgIGJvdHRvbTogJG1vYmlsZS1tYXJnaW47XG4gICAgd2lkdGg6IGNhbGMoMTAwdncgLSAoMiAqICN7JG1vYmlsZS1tYXJnaW59KSk7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG5cblxuXG59XG5cbkBpbmNsdWRlIG1lZGlhKCc8dGFibGV0Jykge1xuICAuc2xpZGVzLXRodW1ibmFpbF9faW1nIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG4iLCIvKlxuICBQbHVnaW4gbWFya3VwIGZvciBHRFBSIHBvcHVwXG5cblxuPGRpdiBjbGFzcz1cImNsaS1iYXItY29udGFpbmVyIGNsaS1zdHlsZS12MlwiPlxuPGRpdiBjbGFzcz1cImNsaS1iYXItaGVhZGVyXCI+V2UgdXNlIGNvb2tpZXM8L2Rpdj5cbjxkaXYgY2xhc3M9XCJjbGktYmFyLW1lc3NhZ2VcIj5XZSB1c2UgY29va2llcyB0byBvZmZlciB5b3UgYSBiZXR0ZXIgZXhwZXJpZW5jZSBhbmQgYW5hbHl6ZSBzaXRlIHRyYWZmaWMuIEZvciBtb3JlIGRldGFpbGVkIGluZm9ybWF0aW9uLCB2aWV3IG91ciA8YSBocmVmPVwiL3ByaXZhY3ktcG9saWN5LXdlYnNpdGUvXCIgY2xhc3M9XCJhcnJvdy1saW5rXCI+UHJpdmFjeSBwb2xpY3k8L2E+PC9kaXY+XG48ZGl2IGNsYXNzPVwiY2xpLWJhci1idXR0b25zXCI+XG5bY29va2llX3JlamVjdF1bY29va2llX2J1dHRvbl1cbjwvZGl2PlxuPC9kaXY+XG4qL1xuXG4vLyBPdmVycmlkZXMgZm9yIEdEUFIgQ29va2llIHBvcHVwXG4jY29va2llLWxhdy1pbmZvLWJhciB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWJsYWNrKSAhaW1wb3J0YW50O1xuICBjb2xvcjogdmFyKC0td2hpdGUpICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IHZhcigtLXNlY3Rpb24tbWFyZ2luKSAhaW1wb3J0YW50O1xuICBib3R0b206IHZhcigtLXNlY3Rpb24tbWFyZ2luKSAhaW1wb3J0YW50O1xuICBsZWZ0OiB2YXIoLS1zZWN0aW9uLW1hcmdpbikgIWltcG9ydGFudDtcblxuICB0ZXh0LWFsaWduOiBsZWZ0O1xuXG4gIGJyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLmNsaS1iYXItaGVhZGVyIHtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLW0pO1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1tKTtcbiAgICBsZXR0ZXItc3BhY2luZzogdmFyKC0tbGV0dGVyLXNwYWNpbmctbSk7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG5cbiAgLmNsaS1iYXItbWVzc2FnZSB7XG4gICAgbGluZS1oZWlnaHQ6IDE2cHg7XG4gICAgYSB7XG4gICAgICBjb2xvcjogdmFyKC0tbWlkZGxlLWdyZXkpO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgICBAbWVkaWEoaG92ZXI6IGhvdmVyKSB7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAuY2xpX2FjdGlvbl9idXR0b24ge1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgbGluZS1oZWlnaHQ6IDQwcHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgd2hpdGU7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtcyk7XG4gICAgbWFyZ2luOiAyNHB4IDAgMCAhaW1wb3J0YW50O1xuICAgIHdpZHRoOiA0NiU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgcGFkZGluZzogNHB4IDE2cHg7XG5cblxuICAgICY6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDglICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEoJzx0YWJsZXQnKSB7XG4gICAgYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogMCAhaW1wb3J0YW50O1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG5cbiAgICAuY2xpLWJhci1idXR0b25zIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7XG4gICAgfVxuXG4gICAgLmNsaV9hY3Rpb25fYnV0dG9uIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAmOmZpcnN0LW9mLXR5cGUge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIFRleHQgc3R5bGUgdXRpbGl0aWVzIOKAlCBvbmUgY2xhc3MgcGVyIEZpZ21hIHRleHQgc3R5bGUsIGFwcGxpZWQgaW4gbWFya3VwOlxuLy9cbi8vICAgPGRpdiBjbGFzcz1cInBoYy1ibG9ja19fbGFiZWwgdGV4dC1waGMtc3RhbmRhcmRcIj5cbi8vXG4vLyBUaGUgbGF5b3V0IGNsYXNzZXMgaGFuZGxlIHdpZHRocyBhbmQgZmxvdzsgdGhlc2UgaGFuZGxlIHR5cGUuIEtlZXBpbmcgdGhlbVxuLy8gYXBhcnQgbWVhbnMgYSBibG9jayBjYW4gY2hhbmdlIGl0cyB0eXBlIHdpdGhvdXQgdG91Y2hpbmcgaXRzIGdlb21ldHJ5LlxuLy9cbi8vIEdlbmVyYXRlZCBmcm9tIHRoZSAkcGhjLXR5cGUgbWFwIHJhdGhlciB0aGFuIHdyaXR0ZW4gb3V0LCBzbyBhIGNsYXNzIGFuZCBpdHNcbi8vIHRva2VuIGNhbm5vdCBkcmlmdCBhcGFydC4gQWRkIGEgdG9rZW4gdGhlcmUgYW5kIGl0cyB1dGlsaXR5IGFwcGVhcnMgaGVyZS5cbi8vXG4vLyBUaHJlZSBkZWxpYmVyYXRlIGRpZmZlcmVuY2VzIGZyb20gdGhlIHN0eWxlcyBleHBvcnRlZCBvdXQgb2YgRmlnbWE6XG4vL1xuLy8gICBsZXR0ZXItc3BhY2luZyAgVGhlIGV4cG9ydCB1c2VkIHBlcmNlbnRhZ2VzICgtNSUpLiBDU1MgbGV0dGVyLXNwYWNpbmcgZG9lc1xuLy8gICAgICAgICAgICAgICAgICAgbm90IGFjY2VwdCBwZXJjZW50YWdlcywgc28gYnJvd3NlcnMgZHJvcCB0aGUgZGVjbGFyYXRpb25cbi8vICAgICAgICAgICAgICAgICAgIGVudGlyZWx5IGFuZCB0aGUgdHJhY2tpbmcgaXMgc2lsZW50bHkgbG9zdC4gZW0gaXMgdGhlXG4vLyAgICAgICAgICAgICAgICAgICBlcXVpdmFsZW50IHVuaXQg4oCUIC01JSBvZiB0aGUgZm9udCBzaXplIGlzIC0wLjA1ZW0uXG4vL1xuLy8gICBsaW5lLWhlaWdodCAgICAgVGhlIGV4cG9ydCB1c2VkIGEgZmxhdCAxLjIsIHdoaWNoIGlzIG5vdCB3aGF0IGFueSBvZiB0aGVzZVxuLy8gICAgICAgICAgICAgICAgICAgc3R5bGVzIGlzIHNldCB0byBpbiBGaWdtYS4gUmVhbCB2YWx1ZXMgcmFuZ2UgZnJvbSAxLjAyXG4vLyAgICAgICAgICAgICAgICAgICAocGFnZWZpZ3VyZXNzdXBwb3J0KSB0byAxLjMzIChzdGFuZGFyZC1qcCk7IG9uIHRoZSA2NHB4XG4vLyAgICAgICAgICAgICAgICAgICB0aXRsZSwgMS4yIGdpdmVzIDc2LjhweCBhZ2FpbnN0IHRoZSBkZXNpZ24ncyA2NnB4LlxuLy9cbi8vICAgZm9udC13ZWlnaHQgICAgIFRoZSBleHBvcnQgYXNrZWQgZm9yIDcwMCBvbiBwYWdlZmlndXJlcyxcbi8vICAgICAgICAgICAgICAgICAgIHBhZ2VmaWd1cmVzc3VwcG9ydCBhbmQgZm9vdGVybGlua2FnZS4gRmlnbWEgcmVwb3J0cyB0aG9zZVxuLy8gICAgICAgICAgICAgICAgICAgYXMgU2VtaSBCb2xkICg2MDApLCBhbmQgdGhlIHRoZW1lIHNoaXBzIG5vIEludGVyIEJvbGQsIHNvXG4vLyAgICAgICAgICAgICAgICAgICA3MDAgd291bGQgaGF2ZSB0aGUgYnJvd3NlciBzeW50aGVzaXNlIG9uZS5cblxuQGVhY2ggJG5hbWUsICR0b2tlbiBpbiAkcGhjLXR5cGUge1xuICAudGV4dC1waGMtI3skbmFtZX0ge1xuICAgIEBpbmNsdWRlIHBoYy10eXBlKCRuYW1lKTtcblxuICAgIC8vIEVkaXRvciBjb3B5IGFycml2ZXMgd3JhcHBlZCBpbiA8cD4sIGFuZCBiYXNlL19iYXNlLnNjc3Mgc2V0cyB0eXBlIG9uIHRoZVxuICAgIC8vIGJhcmUgYHBgIGVsZW1lbnQuIEEgcnVsZSBvbiB0aGUgZWxlbWVudCBpdHNlbGYgYWx3YXlzIGJlYXRzIGEgc2l6ZSBtZXJlbHlcbiAgICAvLyBpbmhlcml0ZWQgZnJvbSBhbiBhbmNlc3Rvciwgc28gYXBwbHlpbmcgdGhpcyBjbGFzcyB0byBhIHdyYXBwZXIgaXMgbm90XG4gICAgLy8gZW5vdWdoIOKAlCBpdCBoYXMgdG8gcmVhY2ggdGhlIGVsZW1lbnRzIGhvbGRpbmcgdGhlIHRleHQuXG4gICAgcCxcbiAgICBsaSxcbiAgICBibG9ja3F1b3RlIHtcbiAgICAgIGZvbnQ6IGluaGVyaXQ7XG4gICAgICBsZXR0ZXItc3BhY2luZzogaW5oZXJpdDtcbiAgICB9XG4gIH1cbn1cbiJdfQ== */
