/*!**********************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??clonedRuleSet-2.use[1]!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-2.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-2.use[3]!./frontend/themes/white/assets/sass/inline.scss ***!
  \**********************************************************************************************************************************************************************************************************************************************************/
/*! 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;
}

*:not(dialog) {
  margin: 0;
  padding: 0;
}

* {
  box-sizing: border-box;
}

html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td {
  margin: 0;
  padding: 0;
  border: 0;
  vertical-align: baseline;
  background: transparent;
}

ol, ul {
  list-style: none;
}

button {
  border-radius: 0;
}

:root {
  interpolate-size: allow-keywords;
}

@font-face {
  font-family: "archivo";
  font-variation-settings: "wght" 500, "wdth" 100;
  src: url("/assets/white/fonts/archivo.woff2");
  font-display: swap;
  font-weight: 500;
}
@font-face {
  font-family: "archivo-bold";
  font-variation-settings: "wght" 700, "wdth" 100;
  src: url("/assets/white/fonts/archivo.woff2");
  font-display: swap;
  font-weight: 700;
}
@font-face {
  font-family: "archivo-black";
  font-variation-settings: "wght" 900, "wdth" 100;
  src: url("/assets/white/fonts/archivo.woff2");
  font-display: swap;
  font-weight: 900;
}
@font-face {
  font-family: "semibold-fallback";
  src: local(Arial);
  size-adjust: 100%;
  ascent-override: normal;
  descent-override: normal;
  line-gap-override: normal;
  font-weight: 700;
}
@font-face {
  font-family: "black-fallback";
  src: local(Arial Black);
  size-adjust: 98%;
  ascent-override: 82%;
  descent-override: 28%;
  line-gap-override: normal;
}
@font-face {
  font-family: "medium-fallback";
  src: local(Arial);
  size-adjust: 99%;
  ascent-override: normal;
  descent-override: normal;
  line-gap-override: normal;
}
@font-face {
  font-family: "Icomoon";
  src: url("/assets/white/fonts/icomoon/icomoon.woff2");
  font-display: block;
}
html {
  font-size: 10px;
  line-height: 1.5;
  font-family: "archivo", "medium-fallback", arial;
  color: #000;
}
@media (min-width: 1600px) {
  html {
    font-size: 11px;
  }
}

body {
  font-size: 15px;
  font-size: 1.5rem;
}

main {
  color: #000;
}

* {
  font-family: inherit;
  line-height: inherit;
  color: inherit;
}

b, strong {
  -webkit-font-smoothing: antialiased;
  font-family: "archivo-black", "black-fallback", arial;
}

i, em {
  font-family: "archivo", "medium-fallback", arial;
}

small {
  font-family: "archivo", "medium-fallback", arial;
  font-size: 1.2rem;
  line-height: 1.2rem;
  font-weight: 500;
  letter-spacing: -0.04em;
}

p {
  font-family: "archivo", "medium-fallback", arial;
  font-size: 1.5rem;
  line-height: 2rem;
  font-weight: 500;
  letter-spacing: -0.04em;
}

p.lead, .lead {
  font-family: "archivo-bold", "semibold-fallback", arial;
  font-size: 2rem;
  line-height: 2.6rem;
  font-weight: 600;
  letter-spacing: -0.04em;
}

h1, .like-h1 {
  display: block;
  font-family: "archivo-black", "black-fallback", arial;
  font-weight: 900;
  font-size: 3rem;
  line-height: 3.4rem;
  text-transform: uppercase;
  text-align: center;
  letter-spacing: -0.03em;
  word-spacing: 0.1em;
}
@media (min-width: 1260px) {
  h1, .like-h1 {
    font-size: 5.5rem;
    line-height: 5.8rem;
  }
}

h2, .like-h2 {
  display: block;
  font-family: "archivo-bold", "semibold-fallback", arial;
  font-size: 2rem;
  font-weight: 600;
  line-height: 2.5rem;
  text-align: center;
  letter-spacing: -0.03em;
}
@media (min-width: 1260px) {
  h2, .like-h2 {
    font-size: 3rem;
    line-height: 3.3rem;
  }
}

h3, .like-h3 {
  font-family: "archivo-black", "black-fallback", arial;
  font-size: 2.7rem;
  font-weight: 900;
  line-height: 2.7rem;
  text-transform: uppercase;
  letter-spacing: -0.04em;
  word-spacing: 0.1em;
}
@media (min-width: 1260px) {
  h3, .like-h3 {
    font-size: 4rem;
    line-height: 4rem;
    letter-spacing: -0.05em;
    word-spacing: 0.1em;
  }
}

h4, .like-h4 {
  font-family: "archivo-black", "black-fallback", arial;
  font-size: 1.8rem;
  font-weight: 900;
  line-height: 1.8rem;
  text-transform: uppercase;
  letter-spacing: -0.04em;
  word-spacing: 0.1em;
}
@media (min-width: 1260px) {
  h4, .like-h4 {
    font-size: 2.7rem;
    line-height: 3.3rem;
    letter-spacing: -0.05em;
    word-spacing: 0.1em;
  }
}

h5, .like-h5 {
  font-family: "archivo-bold", "semibold-fallback", arial;
  font-size: 1.5rem;
  font-weight: 600;
  line-height: 1.8rem;
  text-transform: uppercase;
  letter-spacing: -0.04em;
}

h6, .like-h6 {
  font-family: "archivo", "medium-fallback", arial;
  font-size: 1rem;
  font-weight: 900;
  line-height: 1.3rem;
  text-transform: uppercase;
  letter-spacing: -0.04em;
}

.headline-medium {
  font-family: "archivo-bold", "semibold-fallback", arial;
  text-transform: uppercase;
  font-size: 2.6rem;
  line-height: 1;
}
@media (min-width: 760px) {
  .headline-medium {
    font-size: 3rem;
  }
}
.headline-medium-section {
  font-family: "archivo-bold", "semibold-fallback", arial;
  font-size: 1.8rem;
}
@media (min-width: 760px) {
  .headline-medium-section {
    font-size: 2rem;
  }
}
.headline-big-section {
  font-family: "archivo-bold", "semibold-fallback", arial;
  font-size: 2.2rem;
}
@media (min-width: 760px) {
  .headline-big-section {
    font-size: 2.4rem;
  }
}
.headline-block {
  font-family: "archivo-bold", "semibold-fallback", arial;
  font-size: 1.4rem;
  text-transform: uppercase;
}
@media (min-width: 760px) {
  .headline-block {
    font-size: 1.5rem;
  }
}
.headline-all-caps {
  font-family: "archivo-bold", "semibold-fallback", arial;
  font-size: 1.4rem;
  text-transform: uppercase;
}
@media (min-width: 760px) {
  .headline-all-caps {
    font-size: 1.5rem;
  }
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  clip-path: inset(50%);
  border: 0;
}

.no-wrap {
  white-space: nowrap;
}

.homepage hr {
  border: 0 !important;
  height: 0.1rem !important;
  background-color: #b3b3b3 !important;
}

:root {
  --font-content: archivo, medium-fallback, arial;
  --font-bold: archivo-bold, semibold-fallback, arial;
  --font-extra-bold: archivo-black, black-fallback, arial;
  /* color palette */
  --white: #fff;
  --black: #000;
  --broken-white: #e7e7e6;
  --broken-white-light: #f5f5f3;
  --broken-white-dark: #f3f3f3;
  --blue: #13449b;
  --red: #cc0013;
  --green: #5daa35;
  --yellow: #ffc343;
  --orange: #fd8831;
  --purple: #881AD5;
  --sky: #bbdefb;
  --brown: #8B4513;
  --gray: #7d7d7d;
  --dark-gray: #444;
  --silver: #ccc;
  --magenta: #ff00ff;
  --error: #fc2e4e;
  --filter-blue: #13449b;
  --filter-red: #cc0013;
  --filter-green: #5daa35;
  --filter-yellow: #ffc343;
  --filter-orange: #fd8831;
  --filter-purple: #881AD5;
  --filter-sky: #bbdefb;
  --filter-black: #000;
  --filter-brown: #8B4513;
  --filter-white: #fff;
  --highlight-purple: #582c83;
  --highlight-purple-light: #9678d3;
  --highlight-blue: #25B0E9;
  --highlight-red: #FF2D43;
  --highlight-magenta: #9b004e;
  --highlight-cyan: #20b4c5;
  --highlight-yellow: #dad4bf;
}

body {
  background-color: #fff;
  margin: 0;
  --brand-color: #582c83;
  --brand-color-light: #9678d3;
}

a {
  text-decoration: none;
}
a[data-faux-link] {
  cursor: pointer;
}

main {
  box-sizing: border-box;
  overflow: initial;
}

.hidden {
  display: none;
}

.not-scrollable, .nav-no-scroll {
  overflow: hidden;
  width: 100%;
  height: 100%;
}

.not-overflowing {
  overflow: hidden;
}

.disable-overflow {
  overflow: hidden !important;
  touch-action: pan-y;
  overscroll-behavior: none;
}

.link {
  color: var(--brand-color);
  cursor: pointer;
}

@keyframes colorFade {
  to {
    background-color: #e7e7e6;
  }
}
.search-results .top, .wishlist .top {
  background-color: #e7e7e6;
  position: relative;
}
.search-results .wishlist-add:before, .wishlist .wishlist-add:before {
  content: "\e903";
  font-family: "icomoon";
  speak: none;
  font-style: normal;
  font-weight: 500;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  font-size: 2rem;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-weight: 700;
}
.search-results .wishlist-added:before, .wishlist .wishlist-added:before {
  content: "\e904";
  font-family: "icomoon";
  speak: none;
  font-style: normal;
  font-weight: 500;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  font-size: 2rem;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  color: var(--brand-color);
  font-weight: 700;
}
.search-results .wishlist-add, .search-results .wishlist-added, .search-results .wishlist-remove, .wishlist .wishlist-add, .wishlist .wishlist-added, .wishlist .wishlist-remove {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0.4rem;
}
.search-results .wishlist-add:before, .search-results .wishlist-added:before, .search-results .wishlist-remove:before, .wishlist .wishlist-add:before, .wishlist .wishlist-added:before, .wishlist .wishlist-remove:before {
  margin-inline-end: -0.25rem;
}
.search-results .wishlist-add:hover:before, .search-results .wishlist-added:hover:before, .search-results .wishlist-remove:hover:before, .wishlist .wishlist-add:hover:before, .wishlist .wishlist-added:hover:before, .wishlist .wishlist-remove:hover:before {
  color: var(--brand-color);
}
.search-results .wishlist-remove, .wishlist .wishlist-remove {
  padding-block: 1rem;
  padding-inline: 1rem;
  position: absolute;
  top: 0.75rem;
  right: 0.75rem;
}
.search-results .wishlist-remove:before, .wishlist .wishlist-remove:before {
  content: "\e610";
  font-family: "icomoon";
  speak: none;
  font-style: normal;
  font-weight: 500;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  font-size: 2rem;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-weight: 700;
  font-size: 1.6rem;
}
.search-results .boost-score, .wishlist .boost-score {
  width: 100%;
  float: left;
}
.search-results .product-count, .wishlist .product-count {
  text-transform: lowercase;
  margin-block: 0.5rem;
}
.search-results .name, .wishlist .name {
  font-family: "archivo", "medium-fallback", arial;
}
.search-results .serie, .search-results .artist, .wishlist .serie, .wishlist .artist {
  font-family: "archivo-black", "black-fallback", arial;
  word-spacing: 0.1em;
}

.wishlist .top {
  padding-block-start: 3.6rem;
}

.status, .empty-status {
  opacity: 0;
}
.search-results .status, .search-results .empty-status {
  width: -moz-fit-content;
  width: fit-content;
  margin-top: 3rem;
  max-width: 100%;
  --status-background: var(--brand-color);
  --status-color: #fff;
}
.search-results .status.status-8, .search-results .empty-status.status-8 {
  --status-background: #fff;
  --status-color: #000;
}
.search-results .status span, .search-results .empty-status span {
  display: inline-block;
  max-width: 100%;
  background-color: var(--status-background);
  color: var(--status-color);
  font-family: "archivo-bold", "semibold-fallback", arial;
  font-size: 1.1rem;
  line-height: 1.3rem;
  text-align: center;
  text-transform: uppercase;
  letter-spacing: 0.1rem;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  padding: 0.5rem;
}
@media (min-width: 480px) {
  .search-results .status span, .search-results .empty-status span {
    padding: 0.45rem 2rem;
  }
}
.search-results .status span.gallery-sales-label, .search-results .empty-status span.gallery-sales-label {
  display: inline-block;
}
.search-results .status span.blue, .search-results .empty-status span.blue {
  background-color: var(--brand-color);
  color: #fff;
}
.search-results.masonry .status.status-8, .search-results.masonry .empty-status.status-8 {
  --status-background: #e7e7e6;
  --status-color: #000;
}

.search-results .more-artist-link {
  color: #000;
  font-family: "archivo", "medium-fallback", arial;
  font-size: 1.1rem;
  letter-spacing: 0.11rem;
  cursor: pointer;
  text-decoration: underline;
  text-transform: uppercase;
  text-underline-position: from-font;
}

.plp-status-tooltip {
  background-color: #fff;
  box-shadow: 0 0 0.8rem rgba(0, 0, 0, 0.3);
  max-width: 26ch;
  padding: 0.5rem 0.75rem;
  font-size: 1.3rem;
}

.ui-tooltip.product-preview {
  position: absolute;
  display: inline-block;
  z-index: 161;
}
.ui-tooltip.product-preview img {
  max-height: 80vh;
  max-width: 50vw;
}

.ui-tooltip.compare-add-tooltip {
  display: inline-block;
  background-color: var(--brand-color);
  color: #fff;
  padding: 0.25rem 0.5rem;
  text-transform: uppercase;
  font-size: 1rem;
  position: fixed;
}
.ui-tooltip.compare-add-tooltip::after {
  content: "";
  display: block;
  border: 0.5rem solid transparent;
  border-left-color: var(--brand-color);
  position: absolute;
  right: -1rem;
  top: 0.5rem;
}

.search-results, .wishlist {
  display: grid;
  grid-template-rows: repeat(1, 1fr);
  grid-gap: 2rem;
  margin-bottom: 2rem;
}
.search-results .product-container, .wishlist .product-container {
  display: grid;
  grid-template-columns: 100%;
  grid-template-rows: minmax(0, 1fr) 11rem;
  cursor: pointer;
  border: 0.1rem solid transparent;
  line-height: 1.2;
  min-height: 100%;
}
@media (min-width: 480px) {
  .search-results .product-container, .wishlist .product-container {
    grid-template-rows: minmax(0, 1fr) 10rem;
  }
}
.search-results .product-container:has(.serie, .artist), .wishlist .product-container:has(.serie, .artist) {
  grid-template-rows: minmax(0, 1fr) 12rem;
}
@media (min-width: 480px) {
  .search-results .product-container:has(.serie, .artist), .wishlist .product-container:has(.serie, .artist) {
    grid-template-rows: minmax(0, 1fr) 11rem;
  }
}
.search-results .top, .wishlist .top {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.search-results .bottom, .wishlist .bottom {
  display: flex;
  font-size: 1.2rem;
  line-height: 1.3rem;
  padding: 1rem 0 0;
  gap: 0.5rem;
}
.search-results .bottom .info, .wishlist .bottom .info {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  overflow: hidden;
  text-overflow: ellipsis;
}
.artist-detail-container .search-results .bottom .info, .artist-detail-container .wishlist .bottom .info {
  justify-content: flex-start;
}
.artist-detail-container .search-results .bottom .info > *, .artist-detail-container .wishlist .bottom .info > * {
  margin-block: 0.5rem;
}
.search-results .bottom .actions, .wishlist .bottom .actions {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  gap: 0.25rem;
  min-width: 5.85rem;
  justify-content: flex-end;
}
.search-results .bottom .campaign, .wishlist .bottom .campaign {
  font-family: "archivo-bold", "semibold-fallback", arial;
  color: var(--brand-color);
}
.search-results .open-fs, .wishlist .open-fs {
  padding: 0.4rem;
  width: 2.8rem;
  height: 2.8rem;
  display: none;
  justify-content: center;
  align-items: center;
  overflow: hidden;
}
@media (min-width: 480px) {
  .search-results .open-fs, .wishlist .open-fs {
    display: flex;
  }
}
.search-results .open-fs:hover .svg-icon, .wishlist .open-fs:hover .svg-icon {
  color: var(--brand-color);
}
.search-results .open-fs svg.svg-icon, .wishlist .open-fs svg.svg-icon {
  all: revert;
  width: 2rem;
  height: 2rem;
}
.search-results wishlist-button, .wishlist wishlist-button {
  height: 2.8rem;
  width: 2.8rem;
  padding: 0.4rem;
}
.search-results .image-container, .wishlist .image-container {
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  margin: 0 1.6rem 3rem;
}
@media (min-width: 1260px) {
  .search-results .image-container, .wishlist .image-container {
    margin: 0 3rem 3rem;
  }
}
.search-results .image-container img.catalog-product-image, .wishlist .image-container img.catalog-product-image {
  width: 100%;
  height: auto;
  max-width: 100%;
  max-height: 40rem;
  -o-object-fit: contain;
     object-fit: contain;
  display: block;
  opacity: 0;
  transition: opacity 0.3s ease-in-out;
}
.search-results .image-container img.catalog-product-image.loaded, .wishlist .image-container img.catalog-product-image.loaded {
  opacity: 1;
}
.search-results .image-container video, .wishlist .image-container video {
  width: 100%;
  aspect-ratio: 704/372;
}
.search-results.masonry .image-container video, .wishlist.masonry .image-container video {
  aspect-ratio: revert;
}
.search-results .panorama .top, .wishlist .panorama .top {
  max-width: 100%;
}
.search-results .panorama .image-container, .wishlist .panorama .image-container {
  max-width: 100%;
}
.search-results .name, .wishlist .name {
  text-transform: lowercase;
}
.search-results .artist span, .wishlist .artist span {
  text-transform: uppercase;
}
.search-results .name, .search-results .artist span, .wishlist .name, .wishlist .artist span {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  display: inline-block;
  width: 100%;
}
.search-results .price.discounted > span:first-child, .wishlist .price.discounted > span:first-child {
  font-family: "archivo-bold", "semibold-fallback", arial;
  color: var(--brand-color);
}
.search-results .price.discounted + .campaign, .wishlist .price.discounted + .campaign {
  display: none;
}

.wishlist {
  grid-template-columns: repeat(auto-fill, minmax(24rem, 1fr));
}
.wishlist .product-container {
  padding: 0.3rem;
  margin-inline: -0.3rem;
}

.search-results {
  grid-template-columns: repeat(2, minmax(0rem, 1fr));
  align-items: stretch;
  grid-auto-flow: dense;
}
@media (max-width: 760px) {
  .search-results.single-column {
    grid-template-columns: 100%;
  }
}
.search-results.single-column .panorama {
  grid-column: span 1;
}
@media (min-width: 480px) {
  .search-results {
    grid-template-columns: repeat(2, minmax(0rem, 1fr));
  }
}
@media (min-width: 980px) {
  .search-results {
    grid-template-columns: repeat(3, minmax(0rem, 1fr));
  }
}
@media (min-width: 1260px) {
  .search-results {
    grid-template-columns: repeat(4, minmax(0rem, 1fr));
  }
}
@media (min-width: 1600px) {
  .search-results {
    grid-template-columns: repeat(5, minmax(0rem, 1fr));
  }
}
.search-results .square, .search-results .across, .search-results .upright, .search-results .panorama {
  grid-row: span 2;
}
.search-results .square, .search-results .across, .search-results .upright {
  grid-column: span 1;
}
.search-results .panorama {
  grid-column: span 1;
}
@media (min-width: 980px) {
  .search-results .panorama {
    grid-column: span 2;
  }
}

.search-results.masonry:not(.loading), .wishlist.masonry:not(.loading) {
  display: grid;
  gap: 2rem;
  grid-template-columns: repeat(1, minmax(0rem, 1fr));
}
@media (min-width: 480px) {
  .search-results.masonry:not(.loading), .wishlist.masonry:not(.loading) {
    grid-template-columns: repeat(2, minmax(0rem, 1fr));
  }
}
@media (min-width: 980px) {
  .search-results.masonry:not(.loading), .wishlist.masonry:not(.loading) {
    grid-template-columns: repeat(3, minmax(0rem, 1fr));
  }
}
@media (min-width: 1260px) {
  .search-results.masonry:not(.loading), .wishlist.masonry:not(.loading) {
    gap: 2.5rem;
    grid-template-columns: repeat(3, minmax(0rem, 1fr));
  }
}
@media (min-width: 1600px) {
  .search-results.masonry:not(.loading), .wishlist.masonry:not(.loading) {
    grid-template-columns: repeat(4, minmax(0rem, 1fr));
  }
}
.search-results.masonry.loading, .wishlist.masonry.loading {
  display: none;
}
.search-results.masonry .masonry-col, .wishlist.masonry .masonry-col {
  flex-grow: 1;
  width: 100%;
}
.search-results.masonry .masonry-col--2, .search-results.masonry .masonry-col--3, .search-results.masonry .masonry-col--4, .wishlist.masonry .masonry-col--2, .wishlist.masonry .masonry-col--3, .wishlist.masonry .masonry-col--4 {
  display: none;
}
@media (min-width: 480px) {
  .search-results.masonry .masonry-col--2, .wishlist.masonry .masonry-col--2 {
    display: block;
  }
}
@media (min-width: 980px) {
  .search-results.masonry .masonry-col--3, .wishlist.masonry .masonry-col--3 {
    display: block;
  }
}
@media (min-width: 1600px) {
  .search-results.masonry .masonry-col--4, .wishlist.masonry .masonry-col--4 {
    display: block;
  }
  .search-results.masonry .masonry-col, .wishlist.masonry .masonry-col {
    grid-template-columns: repeat(4, minmax(0rem, 1fr));
  }
}
.search-results.masonry .product-container, .wishlist.masonry .product-container {
  all: revert;
  display: grid;
  margin-bottom: 2rem;
  cursor: pointer;
  line-height: 1.5;
  grid-template-columns: 100%;
}
.search-results.masonry .image-container, .wishlist.masonry .image-container {
  margin: 0;
}
.search-results.masonry .image-container img, .wishlist.masonry .image-container img {
  all: revert;
  width: 100%;
  display: block;
  opacity: 0;
  transition: opacity 0.3s ease-in-out;
}
.search-results.masonry .image-container img.loaded, .wishlist.masonry .image-container img.loaded {
  opacity: 1;
}
.search-results.masonry .status, .search-results.masonry .empty-status, .wishlist.masonry .status, .wishlist.masonry .empty-status {
  margin: 0 0 1rem;
}

.block-tiles:not(.slick-initialized) {
  display: grid;
  gap: 2rem;
  margin: 2rem 0;
}
.block-tiles:not(.slick-initialized)[data-columns="1"] {
  grid-template-columns: repeat(1, auto);
}
.block-tiles:not(.slick-initialized)[data-columns="1"] > div {
  width: auto;
}
.block-tiles:not(.slick-initialized)[data-columns="2"] {
  grid-template-columns: repeat(2, auto);
}
.block-tiles:not(.slick-initialized)[data-columns="2"] > div {
  width: auto;
}
.block-tiles:not(.slick-initialized)[data-columns="3"] {
  grid-template-columns: repeat(3, auto);
}
.block-tiles:not(.slick-initialized)[data-columns="3"] > div {
  width: auto;
}
.block-tiles:not(.slick-initialized)[data-columns="4"] {
  grid-template-columns: repeat(4, auto);
}
.block-tiles:not(.slick-initialized)[data-columns="4"] > div {
  width: auto;
}
.block-tiles:not(.slick-initialized)[data-columns="5"] {
  grid-template-columns: repeat(5, auto);
  overflow: hidden;
}
.block-tiles:not(.slick-initialized)[data-columns="5"] > div {
  width: auto;
}
.block-tiles:not(.slick-initialized)[data-columns="6"] {
  grid-template-columns: repeat(6, auto);
  overflow: hidden;
}
.block-tiles:not(.slick-initialized)[data-columns="6"] > div {
  width: auto;
}
.block-tiles:not(.slick-initialized)[data-columns="7"] {
  grid-template-columns: repeat(7, auto);
  overflow: hidden;
}
.block-tiles:not(.slick-initialized)[data-columns="7"] > div {
  width: auto;
}
.block-tiles:not(.slick-initialized)[data-columns="8"] {
  grid-template-columns: repeat(8, auto);
  overflow: hidden;
}
.block-tiles:not(.slick-initialized)[data-columns="8"] > div {
  width: auto;
}
.block-tiles:not(.slick-initialized) .block-tile {
  margin: 0;
}

.block-tiles[data-overflow=slider]:not(.slick-initialized)[data-columns="1"] > *:nth-child(n+2) {
  display: none;
}
.block-tiles[data-overflow=slider]:not(.slick-initialized)[data-columns="2"] > *:nth-child(n+3) {
  display: none;
}
.block-tiles[data-overflow=slider]:not(.slick-initialized)[data-columns="3"] > *:nth-child(n+4) {
  display: none;
}
.block-tiles[data-overflow=slider]:not(.slick-initialized)[data-columns="4"] > *:nth-child(n+5) {
  display: none;
}
.block-tiles[data-overflow=slider]:not(.slick-initialized)[data-columns="5"] > *:nth-child(n+6) {
  display: none;
}
.block-tiles[data-overflow=slider]:not(.slick-initialized)[data-columns="6"] > *:nth-child(n+7) {
  display: none;
}
.block-tiles[data-overflow=slider]:not(.slick-initialized)[data-columns="7"] > *:nth-child(n+8) {
  display: none;
}
.block-tiles[data-overflow=slider]:not(.slick-initialized)[data-columns="8"] > *:nth-child(n+9) {
  display: none;
}

.block-tile {
  position: relative;
  display: inline-block;
}
.block-tile figure {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  width: 100%;
  height: 100%;
  box-sizing: border-box;
  overflow: hidden;
  color: #fff;
  aspect-ratio: 1;
  padding: 0.3rem 0.8rem;
}
@media (min-width: 1260px) {
  .block-tile figure {
    padding: 0.5rem 1rem;
  }
}
@supports not (aspect-ratio: 1/1) {
  .block-tile figure::before {
    float: left;
    padding-top: 100%;
    content: "";
  }
  .block-tile figure::after {
    display: block;
    content: "";
    clear: both;
  }
}
.block-tile picture {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}
.block-tile picture img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.block-tile video {
  width: 100%;
  height: 100%;
}

@media (max-width: 759px) {
  .hidden-xs {
    display: none !important;
  }
}
@media (min-width: 760px) and (max-width: 979px) {
  .hidden-sm {
    display: none !important;
  }
}
@media (min-width: 980px) and (max-width: 1259px) {
  .hidden-md {
    display: none !important;
  }
}
@media (min-width: 1260px) {
  .hidden-lg {
    display: none !important;
  }
}
component {
  display: none;
}

teaser-carousel {
  display: block;
  overflow: hidden;
  aspect-ratio: 1.26;
}
@media (min-width: 980px) {
  teaser-carousel {
    margin-top: -6.5rem;
  }
}
@media (min-width: 760px) {
  teaser-carousel {
    aspect-ratio: 2.35;
  }
}

.container {
  padding-left: 2rem;
  padding-right: 2rem;
}
@media (min-width: 760px) {
  .container {
    margin: auto;
    max-width: 100%;
    padding-left: 2rem;
    padding-right: 2rem;
  }
}
@media (min-width: 1260px) {
  .container {
    max-width: 1920px;
  }
}

svg.svg-icon {
  width: 1.8rem;
  height: 1.8rem;
}

div.video-teaser {
  display: block;
}
div.video-teaser.loading {
  display: none;
}

.cb {
  opacity: 0;
}

.checkout-page .logo {
  max-width: 21rem;
}

.catalog {
  padding-top: 1rem;
}

@media (min-width: 760px) {
  .search-container {
    display: grid;
    grid-template-columns: 25rem minmax(0, 1fr);
    gap: 1rem;
    margin-top: 4rem;
  }
  .search-container.no-filters {
    grid-template-columns: minmax(0, 1fr);
  }
}

.main-header {
  display: flex;
  flex-direction: column;
  min-height: 8.7rem;
}
.main-header .menu-holder {
  height: 100%;
  min-height: 4.6rem;
  position: relative;
  padding: 0.75rem 1rem;
}
.homepage .main-header .menu-holder .mobile-search-toggle {
  display: none;
}
.homepage .main-header .menu-holder .header-search-form.show-mobile {
  display: flex;
}
.main-header .menu-holder .search-wrapper {
  display: flex;
  width: 100%;
  padding: 0;
}
@media (min-width: 980px) {
  .main-header .menu-holder .search-wrapper {
    width: 13rem;
  }
}
.main-header .menu-holder > .search-wrapper {
  position: absolute;
  right: 0;
  bottom: -5.7rem;
  left: 0;
}
.homepage .main-header .menu-holder > .search-wrapper {
  position: unset;
}
@media (min-width: 980px) {
  .main-header .menu-holder > .search-wrapper {
    display: none;
  }
}
.main-header .menu-holder .header-search-form.show-mobile {
  display: none;
  width: 100%;
  height: 3.6rem;
  border-radius: 1.8rem;
  border: 0.1rem solid #000;
  padding: 1rem 2.5rem;
  margin: 1rem 0;
}
.main-header search-suggestions {
  display: flex;
  min-width: 100%;
  padding: 0;
  width: 13rem;
}
.main-header search-suggestions form {
  display: none !important;
}
.main-header .menu-toggle, .main-header .mobile-search-toggle {
  height: 3rem;
  width: 3rem;
}

main {
  min-height: 100vh;
}

footer {
  display: none;
}

.content-container {
  display: flex;
  flex-direction: column;
}

main.container {
  width: 100%;
  padding-top: 1rem;
}
@media (min-width: 980px) {
  main.container {
    padding-top: unset;
  }
}

.vertical-menu {
  display: none;
}

.sticky-footer {
  display: none;
}

[v-cloak] {
  display: none;
}

.column-switch svg {
  height: 2rem;
  width: 3rem;
  vertical-align: text-bottom;
  color: #000;
}

.livechat-placeholder {
  opacity: 1;
  visibility: visible;
  position: fixed;
  bottom: 10px;
  min-width: 279px;
  min-height: 257px;
  background-color: transparent;
  border: 0;
  overflow: hidden;
  left: 10px;
  pointer-events: none;
}

:is(.product-carousel picture, .product-container picture, .product-carousel .video-container, .product-container .image-container:has(video), picture.has-placeholder) {
  background-color: #d9d9d9;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg' viewBox='0 0 190 125'%3E%3Cpath fill='%23aeaeae' d='M0 0h190v125h-65V63H0z'%2F%3E%3C%2Fsvg%3E");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 5rem;
}
:is(.product-carousel picture, .product-container picture, .product-carousel .video-container, .product-container .image-container:has(video), picture.has-placeholder):not(.has-placeholder) > * {
  background-color: #fff;
}
:is(.product-carousel picture, .product-container picture, .product-carousel .video-container, .product-container .image-container:has(video), picture.has-placeholder) > img {
  display: block;
}

:not(.masonry) :is(.product-container picture, .product-container .image-container:has(video)) {
  background-color: #e7e7e6;
}
:not(.masonry) :is(.product-container picture, .product-container .image-container:has(video)) * {
  background-color: transparent;
}

picture.has-placeholder {
  display: inline-block;
}

.product-carousel .video-container {
  display: flex;
  margin-bottom: 0.9rem;
}

.product-carousel .video-container video {
  display: block;
}

/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2hpdGUvaW5saW5lLmNzcyIsIm1hcHBpbmdzIjoiOzs7QUFBQTtBQUVBOytFQUFBO0FBR0E7OztFQUFBO0FBS0E7RUFDRTtFQUNBO0FDRkY7O0FES0E7K0VBQUE7QUFHQTs7RUFBQTtBQUlBO0VBQ0U7QUNKRjs7QURPQTs7RUFBQTtBQUlBO0VBQ0U7QUNMRjs7QURRQTs7O0VBQUE7QUFLQTtFQUNFO0VBQ0E7QUNORjs7QURTQTsrRUFBQTtBQUdBOzs7RUFBQTtBQUtBO0VBQ0U7RUFDQTtFQUNBO0FDUkY7O0FEV0E7OztFQUFBO0FBS0E7RUFDRTtFQUNBO0FDVEY7O0FEWUE7K0VBQUE7QUFHQTs7RUFBQTtBQUlBO0VBQ0U7QUNYRjs7QURjQTs7O0VBQUE7QUFLQTtFQUNFO0VBQ0E7RUFDQTtVQUFBO0FDWkY7O0FEZUE7O0VBQUE7QUFJQTs7RUFFRTtBQ2JGOztBRGdCQTs7O0VBQUE7QUFLQTs7O0VBR0U7RUFDQTtBQ2RGOztBRGlCQTs7RUFBQTtBQUlBO0VBQ0U7QUNmRjs7QURrQkE7OztFQUFBO0FBS0E7O0VBRUU7RUFDQTtFQUNBO0VBQ0E7QUNoQkY7O0FEbUJBO0VBQ0U7QUNoQkY7O0FEbUJBO0VBQ0U7QUNoQkY7O0FEbUJBOytFQUFBO0FBR0E7O0VBQUE7QUFJQTtFQUNFO0FDbEJGOztBRHFCQTsrRUFBQTtBQUdBOzs7RUFBQTtBQUtBOzs7OztFQUtFO0VBQ0E7RUFDQTtFQUNBO0FDcEJGOztBRHVCQTs7O0VBQUE7QUFLQTtRQUNRO0VBQ047QUNyQkY7O0FEd0JBOzs7RUFBQTtBQUtBO1NBQ1M7RUFDUDtBQ3RCRjs7QUR5QkE7O0VBQUE7QUFJQTs7OztFQUlFO0FDdkJGOztBRDBCQTs7RUFBQTtBQUlBOzs7O0VBSUU7RUFDQTtBQ3hCRjs7QUQyQkE7O0VBQUE7QUFJQTs7OztFQUlFO0FDekJGOztBRDRCQTs7RUFBQTtBQUlBO0VBQ0U7QUMxQkY7O0FENkJBOzs7OztFQUFBO0FBT0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUMzQkY7O0FEOEJBOztFQUFBO0FBSUE7RUFDRTtBQzVCRjs7QUQrQkE7O0VBQUE7QUFJQTtFQUNFO0FDN0JGOztBRGdDQTs7O0VBQUE7QUFLQTs7RUFFRTtFQUNBO0FDOUJGOztBRGlDQTs7RUFBQTtBQUlBOztFQUVFO0FDL0JGOztBRGtDQTs7O0VBQUE7QUFLQTtFQUNFO0VBQ0E7QUNoQ0Y7O0FEbUNBOztFQUFBO0FBSUE7RUFDRTtBQ2pDRjs7QURvQ0E7OztFQUFBO0FBS0E7RUFDRTtFQUNBO0FDbENGOztBRHFDQTsrRUFBQTtBQUdBOztFQUFBO0FBSUE7RUFDRTtBQ3BDRjs7QUR1Q0E7O0VBQUE7QUFJQTtFQUNFO0FDckNGOztBRHdDQTsrRUFBQTtBQUdBOztFQUFBO0FBSUE7RUFDRTtBQ3ZDRjs7QUQwQ0E7O0VBQUE7QUFJQTtFQUNFO0FDeENGOztBQ25UQTtFQUNFO0VBQ0E7QURzVEY7O0FDblRBO0VBQ0U7QURzVEY7O0FDblRBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBRHNURjs7QUNuVEE7RUFDRTtBRHNURjs7QUNuVEE7RUFDRTtBRHNURjs7QUNuVEE7RUFDRTtBRHNURjs7QUU5VUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FGaVZGO0FFOVVBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBRmdWRjtBRTdVQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUYrVUY7QUU1VUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBRjhVRjtBRTNVQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBRjZVRjtBRTFVQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBRjRVRjtBRy9YQTtFQUNFO0VBQ0E7RUFDQTtBSGlZRjtBSXBZQTtFQUNFO0VBQ0E7RUFDQSxnRENIWTtFRElaLFdFSE07QU55WVI7QU9uWUU7RUhQRjtJQU1JO0VKd1lGO0FBQ0Y7O0FJcllBO0VBQ0UsZUNDMkI7RURBM0IsaUJDRmtCO0FMMFlwQjs7QUlyWUE7RUFDRSxXRWZNO0FOdVpSOztBSXJZQTtFQUNFO0VBQ0E7RUFDQTtBSndZRjs7QUlyWUE7RUFDRTtFQUNBLHFEQ3pCZ0I7QUxpYWxCOztBSXJZQTtFQUNFLGdEQy9CWTtBTHVhZDs7QUlyWUE7RUFDRSxnRENuQ1k7RURvQ1o7RUFDQTtFQUNBO0VBQ0E7QUp3WUY7O0FJcllBO0VJMkxFLGdESHJPWTtFR3NPWjtFQUNBO0VBQ0E7RUFDQTtBUjhNRjs7QUl6WUE7RUFDRSx1REM5Q1U7RUQrQ1Y7RUFDQTtFQUNBO0VBQ0E7QUo0WUY7O0FJellBO0VJa0dFO0VBQ0EscURIdkpnQjtFR3dKaEI7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QVIyU0Y7QU9wY0U7RUgrQ0Y7SUk0R0k7SUFDQTtFUjZTRjtBQUNGOztBSXZaQTtFSThHRTtFQUNBLHVESHhLVTtFR3lLVjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FSNlNGO0FPcGRFO0VIbURGO0lJdUhJO0lBQ0E7RVI4U0Y7QUFDRjs7QUluYUE7RUl3SEUscURIcExnQjtFR3FMaEI7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FSK1NGO0FPcGVFO0VIdURGO0lJZ0lJO0lBQ0E7SUFDQTtJQUNBO0VSaVRGO0FBQ0Y7O0FJamJBO0VJbUlFLHFESG5NZ0I7RUdvTWhCO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBUmtURjtBT3RmRTtFSDJERjtJSTJJSTtJQUNBO0lBQ0E7SUFDQTtFUm9URjtBQUNGOztBSS9iQTtFSThJRSx1REhuTlU7RUdvTlY7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBUnFURjs7QUlwY0E7RUlrSkUsZ0RINU5ZO0VHNk5aO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QVJzVEY7O0FJeGNFO0VJaURFLHVESC9IUTtFR2dJUjtFQVRGLGlCQVVnQztFQUM5QjtBUjJaSjtBT3ZoQkU7RUh3RUE7SUkyQ0UsZUFROEM7RVJnYWhEO0FBQ0Y7QUloZEU7RUlvREUsdURIdElRO0VHdUhWLGlCQWdCZ0M7QVIrWmxDO0FPaGlCRTtFSDRFQTtJSXVDRSxlQWM4QztFUm1haEQ7QUFDRjtBSXJkRTtFSXFERSx1REgzSVE7RUd1SFYsaUJBcUJnQztBUm1hbEM7QU96aUJFO0VIZ0ZBO0lJbUNFLGlCQW1COEM7RVJ1YWhEO0FBQ0Y7QUkxZEU7RUlzREUsdURIaEpRO0VHdUhWLGlCQTBCZ0M7RUFDOUI7QVJ1YUo7QU9uakJFO0VIb0ZBO0lJK0JFLGlCQXdCOEM7RVI0YWhEO0FBQ0Y7QUloZUU7RUlrREUsdURIaEpRO0VHdUhWLGlCQTBCZ0M7RUFDOUI7QVJpYko7QU83akJFO0VId0ZBO0lJMkJFLGlCQXdCOEM7RVJzYmhEO0FBQ0Y7O0FJcmVBO0VJeERFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBUmlpQkY7O0FJN2VBO0VBQ0U7QUpnZkY7O0FJN2VBO0VBQ0U7RUFDQTtFQUNBO0FKZ2ZGOztBUy9sQkE7RUFDRTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUlFO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBSUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7QVQwbUJKOztBU3RtQkE7RUFDRSxzQkhwQ007RUdxQ047RUFDQTtFQUNBO0FUeW1CRjs7QVN0bUJBO0VBQ0U7QVR5bUJGO0FTeG1CRTtFQUNFO0FUMG1CSjs7QVN0bUJBO0VBQ0U7RUFDQTtBVHltQkY7O0FTdG1CQTtFQUNFO0FUeW1CRjs7QVN0bUJBO0VBQ0U7RUFDQTtFQUNBO0FUeW1CRjs7QVN0bUJBO0VBQ0U7QVR5bUJGOztBU3RtQkE7RUFDRTtFQUNBO0VBQ0E7QVR5bUJGOztBU3RtQkE7RUFDRTtFQUNBO0FUeW1CRjs7QVVyckJBO0VBQ0U7SUFDRTtFVndyQkY7QUFDRjtBVXByQkU7RUFDRSx5QkpOVztFSU9YO0FWc3JCSjtBVWxyQkk7RUY4RUY7RUFLQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFRTFGSTtBVjhyQk47QVV6ckJJO0VGdUVGO0VBS0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUVuRkk7RUFDQTtBVnFzQk47QVVqc0JFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QVZtc0JKO0FVanNCSTtFQUNFO0FWbXNCTjtBVWhzQkk7RUFDRTtBVmtzQk47QVU5ckJFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBVmdzQko7QVU5ckJJO0VGMENGO0VBS0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUV0REk7RUFDQTtBVjBzQk47QVV0c0JFO0VBQ0U7RUFDQTtBVndzQko7QVVyc0JFO0VBQ0U7RUFDQTtBVnVzQko7QVVwc0JFO0VBQ0UsZ0RMbkVVO0FMeXdCZDtBVW5zQkU7RUFDRSxxRExyRWM7RUtzRWQ7QVZxc0JKOztBVWhzQkU7RUFDRTtBVm1zQko7O0FVL3JCQTtFQUNFO0FWa3NCRjtBVWpzQkU7RUFDRTtFQUFBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7QVZrc0JKO0FVaHNCSTtFQUNFO0VBQ0E7QVZrc0JOO0FVL3JCSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsdURMckdNO0VLc0dOO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUZFSjtFQUNBO0VFREk7QVZrc0JOO0FPeHlCRTtFRzBGRTtJQWNJO0VWb3NCTjtBQUNGO0FVbHNCTTtFQUNFO0FWb3NCUjtBVWpzQk07RUFDRTtFQUNBLFdKeEhBO0FOMnpCUjtBVTVyQkk7RUFDRTtFQUNBO0FWOHJCTjs7QVV2ckJFO0VBQ0UsV0p4SUk7RUl5SUosZ0RMMUlVO0VLMklWO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBVjByQko7O0FVdHJCQTtFQUNFLHNCSnJKTTtFSXNKTjtFQUNBO0VBQ0E7RUFDQTtBVnlyQkY7O0FXaDFCQTtFQUNFO0VBQ0E7RUFDQTtBWG0xQkY7QVdqMUJFO0VBQ0U7RUFDQTtBWG0xQko7O0FXLzBCQTtFQUNFO0VBQ0E7RUFDQSxXTGhCTTtFS2lCTjtFQUNBO0VBQ0E7RUFDQTtBWGsxQkY7QVdoMUJFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QVhrMUJKOztBVzkwQkE7RUFDRTtFQUNBO0VBQ0EsY0FwQ1c7RUFxQ1g7QVhpMUJGO0FXLzBCRTtFQUNFO0VBQ0E7RUFDQTtFQVVBO0VBQ0E7RUFDQTtFQUNBO0FYdzBCSjtBT3gzQkU7RUlnQ0E7SUFLSTtFWHUxQko7QUFDRjtBV3QxQkk7RUFDRTtBWHcxQk47QU9oNEJFO0VJdUNFO0lBR0k7RVgwMUJOO0FBQ0Y7QVdsMUJFO0VBQ0U7RUFDQTtFQUNBO0FYbzFCSjtBV2oxQkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FYbTFCSjtBV2oxQkk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QVhtMUJOO0FXbDFCTTtFQUNFO0FYbzFCUjtBV24xQlE7RUFDRTtBWHExQlY7QVdoMUJJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FYazFCTjtBVy8wQkk7RUFDRSx1RE4vRk07RU1nR047QVhpMUJOO0FXNzBCRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FYKzBCSjtBT3A3QkU7RUk4RkE7SUFVSTtFWGcxQko7QUFDRjtBVzkwQkk7RUFDRTtBWGcxQk47QVc5MEJJO0VBQ0U7RUFDQTtFQUNBO0FYZzFCTjtBVzUwQkU7RUhwR0UsY0FSTTtFQWNOLGFBZE07RUc4R047QVgrMEJKO0FXNTBCRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QVg4MEJKO0FPNzhCRTtFSTBIQTtJQU9JO0VYZzFCSjtBQUNGO0FXOTBCSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7S0FBQTtFQUNBO0VBQ0E7RUFDQTtBWGcxQk47QVcvMEJNO0VBQ0U7QVhpMUJSO0FXNzBCSTtFQUNFO0VBQ0E7QVgrMEJOO0FXMzBCRTtFQUNFO0FYNjBCSjtBV3owQkk7RUFDRTtBWDIwQk47QVd4MEJJO0VBQ0U7QVgwMEJOO0FXdDBCRTtFQUNFO0FYdzBCSjtBV3AwQkk7RUFDRTtBWHMwQk47QVdsMEJFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBWG8wQko7QVdoMEJJO0VBQ0UsdUROaE1NO0VNaU1OO0FYazBCTjtBVy96Qkk7RUFDRTtBWGkwQk47O0FXNXpCQTtFQUNFO0FYK3pCRjtBVzd6QkU7RUFDRTtFQUNBO0FYK3pCSjs7QVczekJBO0VBQ0U7RUFZQTtFQUNBO0FYbXpCRjtBT3BnQ0U7RUlzTUE7SUFFSTtFWGcwQko7QUFDRjtBVzl6Qkk7RUFDRTtBWGcwQk47QU90aENFO0VJNk1GO0lBZ0JJO0VYNnpCRjtBQUNGO0FPM2hDRTtFSTZNRjtJQW1CSTtFWCt6QkY7QUFDRjtBT2hpQ0U7RUk2TUY7SUFzQkk7RVhpMEJGO0FBQ0Y7QU9yaUNFO0VJNk1GO0lBeUJJO0VYbTBCRjtBQUNGO0FXajBCRTtFQUNFO0FYbTBCSjtBV2gwQkU7RUFDRTtBWGswQko7QVcvekJFO0VBQ0U7QVhpMEJKO0FPbmpDRTtFSWlQQTtJQUdJO0VYbTBCSjtBQUNGOztBVzl6QkU7RUFDRTtFQUNBO0VBQ0E7QVhpMEJKO0FPOWpDRTtFSTBQQTtJQUtJO0VYbTBCSjtBQUNGO0FPbmtDRTtFSTBQQTtJQVFJO0VYcTBCSjtBQUNGO0FPeGtDRTtFSTBQQTtJQVdJO0lBQ0E7RVh1MEJKO0FBQ0Y7QU85a0NFO0VJMFBBO0lBZUk7RVh5MEJKO0FBQ0Y7QVd0MEJFO0VBQ0U7QVh3MEJKO0FXcjBCRTtFQUNFO0VBQ0E7QVh1MEJKO0FXcDBCRTtFQUNFO0FYczBCSjtBTzdsQ0U7RUkyUkU7SUFDRTtFWHEwQko7QUFDRjtBT2xtQ0U7RUlpU0U7SUFDRTtFWG8wQko7QUFDRjtBT3ZtQ0U7RUl1U0U7SUFDRTtFWG0wQko7RVdqMEJFO0lBQ0U7RVhtMEJKO0FBQ0Y7QVdoMEJFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FYazBCSjtBVy96QkU7RUFDRTtBWGkwQko7QVcvekJJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBWGkwQk47QVdoMEJNO0VBQ0U7QVhrMEJSO0FXN3pCRTtFQUNFO0FYK3pCSjs7QVk5b0NBO0VBQ0U7RUFDQTtFQUNBO0FaaXBDRjtBWS9vQ0k7RUFDRTtBWmlwQ047QVk3b0NNO0VBQ0U7QVorb0NSO0FZcnBDSTtFQUNFO0FadXBDTjtBWW5wQ007RUFDRTtBWnFwQ1I7QVkzcENJO0VBQ0U7QVo2cENOO0FZenBDTTtFQUNFO0FaMnBDUjtBWWpxQ0k7RUFDRTtBWm1xQ047QVkvcENNO0VBQ0U7QVppcUNSO0FZdnFDSTtFQUNFO0VBRUU7QVp3cUNSO0FZdHFDTTtFQUNFO0Fad3FDUjtBWTlxQ0k7RUFDRTtFQUVFO0FaK3FDUjtBWTdxQ007RUFDRTtBWitxQ1I7QVlyckNJO0VBQ0U7RUFFRTtBWnNyQ1I7QVlwckNNO0VBQ0U7QVpzckNSO0FZNXJDSTtFQUNFO0VBRUU7QVo2ckNSO0FZM3JDTTtFQUNFO0FaNnJDUjtBWXpyQ0U7RUFDRTtBWjJyQ0o7O0FZcHJDTTtFQUNFO0FadXJDUjtBWXhyQ007RUFDRTtBWjByQ1I7QVkzckNNO0VBQ0U7QVo2ckNSO0FZOXJDTTtFQUNFO0FaZ3NDUjtBWWpzQ007RUFDRTtBWm1zQ1I7QVlwc0NNO0VBQ0U7QVpzc0NSO0FZdnNDTTtFQUNFO0FaeXNDUjtBWTFzQ007RUFDRTtBWjRzQ1I7O0FZdHNDQTtFQUNFO0VBQ0E7QVp5c0NGO0FZdnNDRTtFSkdBLGtCSUZvQjtFSkdwQixNSUg4QjtFSkk5QixRSUppQztFSktqQyxTSUxvQztFSk1wQyxPSU51QztFQUNyQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLFdOM0NJO0VNNENKO0VBQ0E7QVo2c0NKO0FPbnZDRTtFSzJCQTtJQWFJO0VaK3NDSjtBQUNGO0FZNXNDSTtFQUNFO0lBQ0U7SUFDQTtJQUNBO0VaOHNDTjtFWTNzQ0k7SUFDRTtJQUNBO0lBQ0E7RVo2c0NOO0FBQ0Y7QVl6c0NFO0VKN0JBLGtCSThCb0I7RUo3QnBCLE1JNkI4QjtFSjVCOUIsUUk0QmlDO0VKM0JqQyxTSTJCb0M7RUoxQnBDLE9JMEJ1QztBWitzQ3pDO0FZN3NDSTtFQUNFO0VBQ0E7RUFDQTtLQUFBO0FaK3NDTjtBWTVzQ0U7RUFDRTtFQUNBO0FaOHNDSjs7QUF6dkNBO0VhakJFO0lBQ0U7RWI4d0NGO0FBQ0Y7QUEzdkNBO0VhckJFO0lBQ0U7RWJteENGO0FBQ0Y7QUE1dkNBO0VhekJFO0lBQ0U7RWJ3eENGO0FBQ0Y7QUE3dkNBO0VhN0JFO0lBQ0U7RWI2eENGO0FBQ0Y7QUE5dkNBO0VBQ0U7QUFnd0NGOztBQTd2Q0E7RUFDRTtFQUNBO0VBQ0E7QUFnd0NGO0FPbHpDRTtFUCtDRjtJQUtJO0VBa3dDRjtBQUNGO0FPdnpDRTtFUCtDRjtJQVFJO0VBb3dDRjtBQUNGOztBQWp3Q0E7RUFDRTtFQUNBO0FBb3dDRjtBT2owQ0U7RVAyREY7SUFJSTtJQUNBO0lBQ0E7SUFDQTtFQXN3Q0Y7QUFDRjtBT3owQ0U7RVAyREY7SUFVSTtFQXd3Q0Y7QUFDRjs7QUFyd0NBO0VBQ0U7RUFDQTtBQXd3Q0Y7O0FBcndDQTtFQUNFO0FBd3dDRjtBQXR3Q0U7RUFDRTtBQXd3Q0o7O0FBcHdDQTtFQUNFO0FBdXdDRjs7QUFwd0NBO0VBQ0U7QUF1d0NGOztBQXB3Q0E7RUFDRTtBQXV3Q0Y7O0FPdDJDRTtFUGtHRjtJQUVJO0lBQ0E7SUFDQTtJQUNBO0VBdXdDRjtFQXR3Q0U7SUFDRTtFQXd3Q0o7QUFDRjs7QUFwd0NBO0VBQ0U7RUFDQTtFQUNBO0FBdXdDRjtBQXJ3Q0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBQXV3Q0o7QUFwd0NNO0VBQ0U7QUFzd0NSO0FBbndDTTtFQUNFO0FBcXdDUjtBQWp3Q0k7RUFDRTtFQUNBO0VBQ0E7QUFtd0NOO0FPejRDRTtFUG1JRTtJQUtJLFljM0ZZO0VkZzJDbEI7QUFDRjtBQWx3Q0k7RVE5R0Ysa0JSbUhzQjtFUWpIdEIsUVJpSG9FO0VRaEhwRSxlUmdIeUM7RVEvR3pDLE9SK0d5RDtBQW13QzNEO0FBdndDTTtFQUNFO0FBeXdDUjtBT3Y1Q0U7RVA0SUU7SUFPSTtFQXd3Q047QUFDRjtBQXJ3Q0k7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQXV3Q047QUFud0NFO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsWWN6SGdCO0FkODNDcEI7QUFud0NJO0VBQ0U7QUFxd0NOO0FBandDRTtFUTVKRSxZQVJNO0VBY04sV0FkTTtBUnk2Q1Y7O0FBaHdDQTtFQUNFO0FBbXdDRjs7QUFod0NBO0VBQ0U7QUFtd0NGOztBQWh3Q0E7RUFDRTtFQUNBO0FBbXdDRjs7QUFod0NBO0VBQ0U7RUFDQTtBQW13Q0Y7QU9wOENFO0VQK0xGO0lBSUk7RUFxd0NGO0FBQ0Y7O0FBbHdDQTtFQUNFO0FBcXdDRjs7QUFsd0NBO0VBQ0U7QUFxd0NGOztBQWx3Q0E7RUFDRTtBQXF3Q0Y7O0FBandDRTtFUW5NRSxZQUpTO0VBVVQsV0FkTTtFUjZNTjtFQUNBLFdNN05JO0FOaytDUjs7QUFqd0NBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQW93Q0Y7O0FBandDQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUFvd0NGO0FBbndDRTtFQUNFLHNCTXZQSTtBTjQvQ1I7QUFud0NFO0VBQ0U7QUFxd0NKOztBQWp3Q0E7RUFDRSx5Qk03UGE7QU5pZ0RmO0FBbndDRTtFQUNFO0FBcXdDSjs7QUFqd0NBO0VBQ0U7QUFvd0NGOztBQWp3Q0E7RUFDRTtFQUNBO0FBb3dDRjs7QUFqd0NBO0VBQ0U7QUFvd0NGLEMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly95dmVzX3plZC8uL25vZGVfbW9kdWxlcy9ub3JtYWxpemUuY3NzL25vcm1hbGl6ZS5jc3MiLCJ3ZWJwYWNrOi8veXZlc196ZWQvLi9mcm9udGVuZC90aGVtZXMvd2hpdGUvYXNzZXRzL3Nhc3MvaW5saW5lLnNjc3MiLCJ3ZWJwYWNrOi8veXZlc196ZWQvLi9mcm9udGVuZC90aGVtZXMvd2hpdGUvYXNzZXRzL3Nhc3MvYmFzZS9fcmVzZXQuc2NzcyIsIndlYnBhY2s6Ly95dmVzX3plZC8uL2Zyb250ZW5kL3RoZW1lcy93aGl0ZS9hc3NldHMvc2Fzcy9iYXNlL19mb250LWZhY2VzLnNjc3MiLCJ3ZWJwYWNrOi8veXZlc196ZWQvLi9mcm9udGVuZC90aGVtZXMvd2hpdGUvYXNzZXRzL3Nhc3MvYmFzZS9fZm9udC1pY29uLnNjc3MiLCJ3ZWJwYWNrOi8veXZlc196ZWQvLi9mcm9udGVuZC90aGVtZXMvd2hpdGUvYXNzZXRzL3Nhc3MvYmFzZS9fdHlwb2dyYXBoeS5zY3NzIiwid2VicGFjazovL3l2ZXNfemVkLy4vZnJvbnRlbmQvdGhlbWVzL3doaXRlL2Fzc2V0cy9zYXNzL2NvbmZpZy9fZm9udHMuc2NzcyIsIndlYnBhY2s6Ly95dmVzX3plZC8uL2Zyb250ZW5kL3RoZW1lcy93aGl0ZS9hc3NldHMvc2Fzcy9jb25maWcvX2NvbG9ycy5zY3NzIiwid2VicGFjazovL3l2ZXNfemVkLy4vZnJvbnRlbmQvdGhlbWVzL3doaXRlL2Fzc2V0cy9zYXNzL3V0aWxzL19yZXNwb25zaXZlLnNjc3MiLCJ3ZWJwYWNrOi8veXZlc196ZWQvLi9mcm9udGVuZC90aGVtZXMvd2hpdGUvYXNzZXRzL3Nhc3MvdXRpbHMvX3Nob3J0aGFuZHMuc2NzcyIsIndlYnBhY2s6Ly95dmVzX3plZC8uL2Zyb250ZW5kL3RoZW1lcy93aGl0ZS9hc3NldHMvc2Fzcy9sYXlvdXQvX21haW4uc2NzcyIsIndlYnBhY2s6Ly95dmVzX3plZC8uL2Zyb250ZW5kL3RoZW1lcy93aGl0ZS9hc3NldHMvc2Fzcy9jb21wb25lbnRzL19wcm9kdWN0LWdyaWQuc2NzcyIsIndlYnBhY2s6Ly95dmVzX3plZC8uL2Zyb250ZW5kL3RoZW1lcy93aGl0ZS9hc3NldHMvc2Fzcy9jb21wb25lbnRzL19wcm9kdWN0LWdyaWQtaW5saW5lLnNjc3MiLCJ3ZWJwYWNrOi8veXZlc196ZWQvLi9mcm9udGVuZC90aGVtZXMvd2hpdGUvYXNzZXRzL3Nhc3MvY29tcG9uZW50cy9fYmxvY2stdGlsZXMtaW5saW5lLnNjc3MiLCJ3ZWJwYWNrOi8veXZlc196ZWQvLi9mcm9udGVuZC90aGVtZXMvd2hpdGUvYXNzZXRzL3Nhc3MvZm9ya2VkL2Jvb3RzdHJhcC9taXhpbnMvX3Jlc3BvbnNpdmUtdmlzaWJpbGl0eS5zY3NzIiwid2VicGFjazovL3l2ZXNfemVkLy4vZnJvbnRlbmQvdGhlbWVzL3doaXRlL2Fzc2V0cy9zYXNzL2NvbmZpZy9fbWFpbi5zY3NzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qISBub3JtYWxpemUuY3NzIHY4LjAuMSB8IE1JVCBMaWNlbnNlIHwgZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3MgKi9cblxuLyogRG9jdW1lbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgbGluZSBoZWlnaHQgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gUHJldmVudCBhZGp1c3RtZW50cyBvZiBmb250IHNpemUgYWZ0ZXIgb3JpZW50YXRpb24gY2hhbmdlcyBpbiBpT1MuXG4gKi9cblxuaHRtbCB7XG4gIGxpbmUtaGVpZ2h0OiAxLjE1OyAvKiAxICovXG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLyogMiAqL1xufVxuXG4vKiBTZWN0aW9uc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuYm9keSB7XG4gIG1hcmdpbjogMDtcbn1cblxuLyoqXG4gKiBSZW5kZXIgdGhlIGBtYWluYCBlbGVtZW50IGNvbnNpc3RlbnRseSBpbiBJRS5cbiAqL1xuXG5tYWluIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgZm9udCBzaXplIGFuZCBtYXJnaW4gb24gYGgxYCBlbGVtZW50cyB3aXRoaW4gYHNlY3Rpb25gIGFuZFxuICogYGFydGljbGVgIGNvbnRleHRzIGluIENocm9tZSwgRmlyZWZveCwgYW5kIFNhZmFyaS5cbiAqL1xuXG5oMSB7XG4gIGZvbnQtc2l6ZTogMmVtO1xuICBtYXJnaW46IDAuNjdlbSAwO1xufVxuXG4vKiBHcm91cGluZyBjb250ZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIEZpcmVmb3guXG4gKiAyLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlIGFuZCBJRS5cbiAqL1xuXG5ociB7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94OyAvKiAxICovXG4gIGhlaWdodDogMDsgLyogMSAqL1xuICBvdmVyZmxvdzogdmlzaWJsZTsgLyogMiAqL1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxucHJlIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlOyAvKiAxICovXG4gIGZvbnQtc2l6ZTogMWVtOyAvKiAyICovXG59XG5cbi8qIFRleHQtbGV2ZWwgc2VtYW50aWNzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIG9uIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cbiAqL1xuXG5hIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi8qKlxuICogMS4gUmVtb3ZlIHRoZSBib3R0b20gYm9yZGVyIGluIENocm9tZSA1Ny1cbiAqIDIuIEFkZCB0aGUgY29ycmVjdCB0ZXh0IGRlY29yYXRpb24gaW4gQ2hyb21lLCBFZGdlLCBJRSwgT3BlcmEsIGFuZCBTYWZhcmkuXG4gKi9cblxuYWJiclt0aXRsZV0ge1xuICBib3JkZXItYm90dG9tOiBub25lOyAvKiAxICovXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyAvKiAyICovXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDsgLyogMiAqL1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBmb250IHdlaWdodCBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmkuXG4gKi9cblxuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5jb2RlLFxua2JkLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTsgLyogMSAqL1xuICBmb250LXNpemU6IDFlbTsgLyogMiAqL1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbnNtYWxsIHtcbiAgZm9udC1zaXplOiA4MCU7XG59XG5cbi8qKlxuICogUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgZWxlbWVudHMgZnJvbSBhZmZlY3RpbmcgdGhlIGxpbmUgaGVpZ2h0IGluXG4gKiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuc3ViLFxuc3VwIHtcbiAgZm9udC1zaXplOiA3NSU7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuc3ViIHtcbiAgYm90dG9tOiAtMC4yNWVtO1xufVxuXG5zdXAge1xuICB0b3A6IC0wLjVlbTtcbn1cblxuLyogRW1iZWRkZWQgY29udGVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGJvcmRlciBvbiBpbWFnZXMgaW5zaWRlIGxpbmtzIGluIElFIDEwLlxuICovXG5cbmltZyB7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcbn1cblxuLyogRm9ybXNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogMS4gQ2hhbmdlIHRoZSBmb250IHN0eWxlcyBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBGaXJlZm94IGFuZCBTYWZhcmkuXG4gKi9cblxuYnV0dG9uLFxuaW5wdXQsXG5vcHRncm91cCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7IC8qIDEgKi9cbiAgZm9udC1zaXplOiAxMDAlOyAvKiAxICovXG4gIGxpbmUtaGVpZ2h0OiAxLjE1OyAvKiAxICovXG4gIG1hcmdpbjogMDsgLyogMiAqL1xufVxuXG4vKipcbiAqIFNob3cgdGhlIG92ZXJmbG93IGluIElFLlxuICogMS4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZS5cbiAqL1xuXG5idXR0b24sXG5pbnB1dCB7IC8qIDEgKi9cbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBFZGdlLCBGaXJlZm94LCBhbmQgSUUuXG4gKiAxLiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEZpcmVmb3guXG4gKi9cblxuYnV0dG9uLFxuc2VsZWN0IHsgLyogMSAqL1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICovXG5cbmJ1dHRvbixcblt0eXBlPVwiYnV0dG9uXCJdLFxuW3R5cGU9XCJyZXNldFwiXSxcblt0eXBlPVwic3VibWl0XCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247XG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbm5lciBib3JkZXIgYW5kIHBhZGRpbmcgaW4gRmlyZWZveC5cbiAqL1xuXG5idXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cImJ1dHRvblwiXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwicmVzZXRcIl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cInN1Ym1pdFwiXTo6LW1vei1mb2N1cy1pbm5lciB7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgcGFkZGluZzogMDtcbn1cblxuLyoqXG4gKiBSZXN0b3JlIHRoZSBmb2N1cyBzdHlsZXMgdW5zZXQgYnkgdGhlIHByZXZpb3VzIHJ1bGUuXG4gKi9cblxuYnV0dG9uOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJidXR0b25cIl06LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cInJlc2V0XCJdOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJzdWJtaXRcIl06LW1vei1mb2N1c3Jpbmcge1xuICBvdXRsaW5lOiAxcHggZG90dGVkIEJ1dHRvblRleHQ7XG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgcGFkZGluZyBpbiBGaXJlZm94LlxuICovXG5cbmZpZWxkc2V0IHtcbiAgcGFkZGluZzogMC4zNWVtIDAuNzVlbSAwLjYyNWVtO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIHRleHQgd3JhcHBpbmcgaW4gRWRnZSBhbmQgSUUuXG4gKiAyLiBDb3JyZWN0IHRoZSBjb2xvciBpbmhlcml0YW5jZSBmcm9tIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gSUUuXG4gKiAzLiBSZW1vdmUgdGhlIHBhZGRpbmcgc28gZGV2ZWxvcGVycyBhcmUgbm90IGNhdWdodCBvdXQgd2hlbiB0aGV5IHplcm8gb3V0XG4gKiAgICBgZmllbGRzZXRgIGVsZW1lbnRzIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5sZWdlbmQge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvKiAxICovXG4gIGNvbG9yOiBpbmhlcml0OyAvKiAyICovXG4gIGRpc3BsYXk6IHRhYmxlOyAvKiAxICovXG4gIG1heC13aWR0aDogMTAwJTsgLyogMSAqL1xuICBwYWRkaW5nOiAwOyAvKiAzICovXG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7IC8qIDEgKi9cbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgdmVydGljYWwgYWxpZ25tZW50IGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuICovXG5cbnByb2dyZXNzIHtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUgMTArLlxuICovXG5cbnRleHRhcmVhIHtcbiAgb3ZlcmZsb3c6IGF1dG87XG59XG5cbi8qKlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gSUUgMTAuXG4gKiAyLiBSZW1vdmUgdGhlIHBhZGRpbmcgaW4gSUUgMTAuXG4gKi9cblxuW3R5cGU9XCJjaGVja2JveFwiXSxcblt0eXBlPVwicmFkaW9cIl0ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvKiAxICovXG4gIHBhZGRpbmc6IDA7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBjdXJzb3Igc3R5bGUgb2YgaW5jcmVtZW50IGFuZCBkZWNyZW1lbnQgYnV0dG9ucyBpbiBDaHJvbWUuXG4gKi9cblxuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBvZGQgYXBwZWFyYW5jZSBpbiBDaHJvbWUgYW5kIFNhZmFyaS5cbiAqIDIuIENvcnJlY3QgdGhlIG91dGxpbmUgc3R5bGUgaW4gU2FmYXJpLlxuICovXG5cblt0eXBlPVwic2VhcmNoXCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7IC8qIDEgKi9cbiAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGlubmVyIHBhZGRpbmcgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gbWFjT1MuXG4gKi9cblxuW3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAqIDIuIENoYW5nZSBmb250IHByb3BlcnRpZXMgdG8gYGluaGVyaXRgIGluIFNhZmFyaS5cbiAqL1xuXG46Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8qIDEgKi9cbiAgZm9udDogaW5oZXJpdDsgLyogMiAqL1xufVxuXG4vKiBJbnRlcmFjdGl2ZVxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIEVkZ2UsIElFIDEwKywgYW5kIEZpcmVmb3guXG4gKi9cblxuZGV0YWlscyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbnN1bW1hcnkge1xuICBkaXNwbGF5OiBsaXN0LWl0ZW07XG59XG5cbi8qIE1pc2NcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTArLlxuICovXG5cbnRlbXBsYXRlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMC5cbiAqL1xuXG5baGlkZGVuXSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4iLCIkZm9udEZvbGRlcjogJy9hc3NldHMvd2hpdGUvZm9udHMvJztcblxuQGNoYXJzZXQgXCJ1dGYtOFwiO1xuXG4kbWFuaWZlc3Q6IGlubGluZTtcblxuQGltcG9ydCBcImNvbmZpZy9tYWluXCI7XG5AaW1wb3J0IFwiY29uZmlnL2NvbG9yc1wiO1xuQGltcG9ydCBcImNvbmZpZy9mb250c1wiO1xuXG5AaW1wb3J0IFwidXRpbHMvc2hvcnRoYW5kc1wiO1xuQGltcG9ydCBcInV0aWxzL3Jlc3BvbnNpdmVcIjtcblxuQGltcG9ydCBcIm5vcm1hbGl6ZS5jc3Mvbm9ybWFsaXplXCI7XG5cbkBpbXBvcnQgXCJiYXNlL3Jlc2V0XCI7XG5AaW1wb3J0IFwiYmFzZS9mb250LWZhY2VzXCI7XG5AaW1wb3J0IFwiYmFzZS9mb250LWljb25cIjtcbkBpbXBvcnQgXCJiYXNlL3R5cG9ncmFwaHlcIjtcblxuQGltcG9ydCBcImxheW91dC9tYWluXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9wcm9kdWN0LWdyaWRcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL3Byb2R1Y3QtZ3JpZC1pbmxpbmVcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL2Jsb2NrLXRpbGVzLWlubGluZVwiO1xuQGltcG9ydCBcIi4vZm9ya2VkL2Jvb3RzdHJhcC9taXhpbnMvX3Jlc3BvbnNpdmUtdmlzaWJpbGl0eVwiO1xuXG4kc2NyZWVuLXhzLW1pbjogbWFwLWdldCgkYnJlYWtwb2ludHMsIHBob25lKSAhZGVmYXVsdDtcbiRzY3JlZW4tc20tbWluOiBtYXAtZ2V0KCRicmVha3BvaW50cywgdGFibGV0KSAhZGVmYXVsdDtcbiRzY3JlZW4tbWQtbWluOiBtYXAtZ2V0KCRicmVha3BvaW50cywgdGFibGV0LWxhbmRzY2FwZSkgIWRlZmF1bHQ7XG4kc2NyZWVuLWxnLW1pbjogbWFwLWdldCgkYnJlYWtwb2ludHMsIGRlc2t0b3ApICFkZWZhdWx0O1xuJHNjcmVlbi14cy1tYXg6ICgkc2NyZWVuLXNtLW1pbiAtIDEpICFkZWZhdWx0O1xuJHNjcmVlbi1zbS1tYXg6ICgkc2NyZWVuLW1kLW1pbiAtIDEpICFkZWZhdWx0O1xuJHNjcmVlbi1tZC1tYXg6ICgkc2NyZWVuLWxnLW1pbiAtIDEpICFkZWZhdWx0O1xuXG5AbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1pbnZpc2liaWxpdHkoJy5oaWRkZW4teHMnKTtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1zbS1tYXgpIHtcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1pbnZpc2liaWxpdHkoJy5oaWRkZW4tc20nKTtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1tZC1tYXgpIHtcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1pbnZpc2liaWxpdHkoJy5oaWRkZW4tbWQnKTtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCcuaGlkZGVuLWxnJyk7XG59XG5cbmNvbXBvbmVudCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbnRlYXNlci1jYXJvdXNlbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBhc3BlY3QtcmF0aW86IDEuMjY7XG4gIEBpbmNsdWRlIG1pbi13aWR0aCh0YWJsZXQtbGFuZHNjYXBlKSB7XG4gICAgbWFyZ2luLXRvcDogLTYuNXJlbTtcbiAgfVxuICBAaW5jbHVkZSBtaW4td2lkdGgodGFibGV0KSB7XG4gICAgYXNwZWN0LXJhdGlvOiAyLjM1O1xuICB9XG59XG5cbi5jb250YWluZXIge1xuICBwYWRkaW5nLWxlZnQ6IDJyZW07XG4gIHBhZGRpbmctcmlnaHQ6IDJyZW07XG4gIEBpbmNsdWRlIG1pbi13aWR0aCh0YWJsZXQpIHtcbiAgICBtYXJnaW46IGF1dG87XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmctbGVmdDogMnJlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAycmVtO1xuICB9XG4gIEBpbmNsdWRlIG1pbi13aWR0aChkZXNrdG9wKSB7XG4gICAgbWF4LXdpZHRoOiBtYXBfZ2V0KCRicmVha3BvaW50cywgZGVza3RvcC1leHRyYS13aWRlKTtcbiAgfVxufVxuXG5zdmcuc3ZnLWljb24ge1xuICB3aWR0aDogMS44cmVtO1xuICBoZWlnaHQ6IDEuOHJlbTtcbn1cblxuZGl2LnZpZGVvLXRlYXNlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuXG4gICYubG9hZGluZyB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4uY2Ige1xuICBvcGFjaXR5OiAwO1xufVxuXG4uY2hlY2tvdXQtcGFnZSAubG9nbyB7XG4gIG1heC13aWR0aDogMjFyZW07XG59XG5cbi5jYXRhbG9nIHtcbiAgcGFkZGluZy10b3A6IDFyZW07XG59XG5cbi5zZWFyY2gtY29udGFpbmVyIHtcbiAgQGluY2x1ZGUgbWluLXdpZHRoKHRhYmxldCkge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAyNXJlbSBtaW5tYXgoMCwgMWZyKTtcbiAgICBnYXA6IDFyZW07XG4gICAgbWFyZ2luLXRvcDogNHJlbTtcbiAgICAmLm5vLWZpbHRlcnMge1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBtaW5tYXgoMCwgMWZyKTtcbiAgICB9XG4gIH1cbn1cblxuLm1haW4taGVhZGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgbWluLWhlaWdodDogOC43cmVtO1xuXG4gIC5tZW51LWhvbGRlciB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG1pbi1oZWlnaHQ6IDQuNnJlbTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZzogMC43NXJlbSAxcmVtO1xuXG4gICAgLmhvbWVwYWdlICYge1xuICAgICAgLm1vYmlsZS1zZWFyY2gtdG9nZ2xlIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cblxuICAgICAgLmhlYWRlci1zZWFyY2gtZm9ybS5zaG93LW1vYmlsZSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnNlYXJjaC13cmFwcGVyIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBAaW5jbHVkZSBtaW4td2lkdGgoJG1vYmlsZS1kZXNrdG9wLWJyZWFrcG9pbnQpIHtcbiAgICAgICAgd2lkdGg6ICRzZWFyY2gtZm9ybS13aWR0aDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICA+IC5zZWFyY2gtd3JhcHBlciB7XG4gICAgICAuaG9tZXBhZ2UgJiB7XG4gICAgICAgIHBvc2l0aW9uOiB1bnNldDtcbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgcG9zaXRpb24oYWJzb2x1dGUsICRib3R0b206IC01LjdyZW0sICRsZWZ0OiAwLCAkcmlnaHQ6IDApO1xuICAgICAgQGluY2x1ZGUgbWluLXdpZHRoKHRhYmxldC1sYW5kc2NhcGUpIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuaGVhZGVyLXNlYXJjaC1mb3JtLnNob3ctbW9iaWxlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMy42cmVtO1xuICAgICAgYm9yZGVyLXJhZGl1czogMS44cmVtO1xuICAgICAgYm9yZGVyOiAwLjFyZW0gc29saWQgJGJsYWNrO1xuICAgICAgcGFkZGluZzogMXJlbSAyLjVyZW07XG4gICAgICBtYXJnaW46IDFyZW0gMDtcbiAgICB9XG4gIH1cblxuICBzZWFyY2gtc3VnZ2VzdGlvbnMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgbWluLXdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgd2lkdGg6ICRzZWFyY2gtZm9ybS13aWR0aDtcblxuICAgIGZvcm0ge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIC5tZW51LXRvZ2dsZSwgLm1vYmlsZS1zZWFyY2gtdG9nZ2xlIHtcbiAgICBAaW5jbHVkZSBzaXplKDNyZW0pO1xuICB9XG59XG5cbm1haW4ge1xuICBtaW4taGVpZ2h0OiAxMDB2aDtcbn1cblxuZm9vdGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmNvbnRlbnQtY29udGFpbmVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cblxubWFpbi5jb250YWluZXIge1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZy10b3A6IDFyZW07XG4gIEBpbmNsdWRlIG1pbi13aWR0aCgkbW9iaWxlLWRlc2t0b3AtYnJlYWtwb2ludCkge1xuICAgIHBhZGRpbmctdG9wOiB1bnNldDtcbiAgfVxufVxuXG4udmVydGljYWwtbWVudSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5zdGlja3ktZm9vdGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuW3YtY2xvYWtdIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmNvbHVtbi1zd2l0Y2gge1xuICBzdmcge1xuICAgIEBpbmNsdWRlIHNpemUoM3JlbSAycmVtKTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdGV4dC1ib3R0b207XG4gICAgY29sb3I6ICRibGFjaztcbiAgfVxufVxuXG4ubGl2ZWNoYXQtcGxhY2Vob2xkZXIge1xuICBvcGFjaXR5OiAxO1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGJvdHRvbTogMTBweDtcbiAgbWluLXdpZHRoOiAyNzlweDtcbiAgbWluLWhlaWdodDogMjU3cHg7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGxlZnQ6IDEwcHg7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG46aXMoLnByb2R1Y3QtY2Fyb3VzZWwgcGljdHVyZSwgLnByb2R1Y3QtY29udGFpbmVyIHBpY3R1cmUsIC5wcm9kdWN0LWNhcm91c2VsIC52aWRlby1jb250YWluZXIsIC5wcm9kdWN0LWNvbnRhaW5lciAuaW1hZ2UtY29udGFpbmVyOmhhcyh2aWRlbyksIHBpY3R1cmUuaGFzLXBsYWNlaG9sZGVyKSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkOWQ5ZDk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmcgeG1sbnM9J2h0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2Zycgdmlld0JveD0nMCAwIDE5MCAxMjUnJTNFJTNDcGF0aCBmaWxsPSclMjNhZWFlYWUnIGQ9J00wIDBoMTkwdjEyNWgtNjVWNjNIMHonJTJGJTNFJTNDJTJGc3ZnJTNFXCIpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogNXJlbTtcbiAgJjpub3QoLmhhcy1wbGFjZWhvbGRlcikgPiAqIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gIH1cbiAgPiBpbWcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5cbjpub3QoLm1hc29ucnkpIDppcygucHJvZHVjdC1jb250YWluZXIgcGljdHVyZSwgLnByb2R1Y3QtY29udGFpbmVyIC5pbWFnZS1jb250YWluZXI6aGFzKHZpZGVvKSkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJva2VuLXdoaXRlO1xuICAqIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxufVxuXG5waWN0dXJlLmhhcy1wbGFjZWhvbGRlciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLnByb2R1Y3QtY2Fyb3VzZWwgLnZpZGVvLWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIG1hcmdpbi1ib3R0b206IDAuOXJlbTtcbn1cblxuLnByb2R1Y3QtY2Fyb3VzZWwgLnZpZGVvLWNvbnRhaW5lciB2aWRlbyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufSIsIio6bm90KGRpYWxvZykge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG59XG5cbioge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG5odG1sLCBib2R5LCBkaXYsIHNwYW4sIGFwcGxldCwgb2JqZWN0LCBpZnJhbWUsIGgxLCBoMiwgaDMsIGg0LCBoNSwgaDYsIHAsIGJsb2NrcXVvdGUsIHByZSwgYSwgYWJiciwgYWNyb255bSwgYWRkcmVzcywgYmlnLCBjaXRlLCBjb2RlLCBkZWwsIGRmbiwgZW0sIGZvbnQsIGltZywgaW5zLCBrYmQsIHEsIHMsIHNhbXAsIHNtYWxsLCBzdHJpa2UsIHN0cm9uZywgc3ViLCBzdXAsIHR0LCB2YXIsIGIsIHUsIGksIGNlbnRlciwgZGwsIGR0LCBkZCwgb2wsIHVsLCBsaSwgZmllbGRzZXQsIGZvcm0sIGxhYmVsLCBsZWdlbmQsIHRhYmxlLCBjYXB0aW9uLCB0Ym9keSwgdGZvb3QsIHRoZWFkLCB0ciwgdGgsIHRkIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IDA7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG59XG5cbm9sLCB1bCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cbmJ1dHRvbiB7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG5cbjpyb290IHtcbiAgaW50ZXJwb2xhdGUtc2l6ZTogYWxsb3cta2V5d29yZHM7XG59IiwiJGZvbnQtcGF0aDogJyN7JGZvbnRGb2xkZXJ9YXJjaGl2by53b2ZmMic7XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ2FyY2hpdm8nO1xuICBmb250LXZhcmlhdGlvbi1zZXR0aW5nczogXCJ3Z2h0XCIgNTAwLCBcIndkdGhcIiAxMDA7XG4gIHNyYzogdXJsKCRmb250LXBhdGgpO1xuICBmb250LWRpc3BsYXk6IHN3YXA7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG59XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ2FyY2hpdm8tYm9sZCc7XG4gIGZvbnQtdmFyaWF0aW9uLXNldHRpbmdzOiBcIndnaHRcIiA3MDAsIFwid2R0aFwiIDEwMDtcbiAgc3JjOiB1cmwoJGZvbnQtcGF0aCk7XG4gIGZvbnQtZGlzcGxheTogc3dhcDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnYXJjaGl2by1ibGFjayc7XG4gIGZvbnQtdmFyaWF0aW9uLXNldHRpbmdzOiBcIndnaHRcIiA5MDAsIFwid2R0aFwiIDEwMDtcbiAgc3JjOiB1cmwoJGZvbnQtcGF0aCk7XG4gIGZvbnQtZGlzcGxheTogc3dhcDtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbn1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnc2VtaWJvbGQtZmFsbGJhY2snO1xuICBzcmM6IGxvY2FsKEFyaWFsKTtcbiAgc2l6ZS1hZGp1c3Q6IDEwMCU7XG4gIGFzY2VudC1vdmVycmlkZTogbm9ybWFsO1xuICBkZXNjZW50LW92ZXJyaWRlOiBub3JtYWw7XG4gIGxpbmUtZ2FwLW92ZXJyaWRlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ2JsYWNrLWZhbGxiYWNrJztcbiAgc3JjOiBsb2NhbChBcmlhbCBCbGFjayk7XG4gIHNpemUtYWRqdXN0OiA5OCU7XG4gIGFzY2VudC1vdmVycmlkZTogODIlO1xuICBkZXNjZW50LW92ZXJyaWRlOiAyOCU7XG4gIGxpbmUtZ2FwLW92ZXJyaWRlOiBub3JtYWw7XG59XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ21lZGl1bS1mYWxsYmFjayc7XG4gIHNyYzogbG9jYWwoQXJpYWwpO1xuICBzaXplLWFkanVzdDogOTklO1xuICBhc2NlbnQtb3ZlcnJpZGU6IG5vcm1hbDtcbiAgZGVzY2VudC1vdmVycmlkZTogbm9ybWFsO1xuICBsaW5lLWdhcC1vdmVycmlkZTogbm9ybWFsO1xufSIsIkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ0ljb21vb24nO1xuICBzcmM6IHVybCgnI3skZm9udEZvbGRlcn1pY29tb29uL2ljb21vb24ud29mZjInKTtcbiAgZm9udC1kaXNwbGF5OiBibG9jaztcbn0iLCJodG1sIHtcbiAgZm9udC1zaXplOiAxMHB4O1xuICBsaW5lLWhlaWdodDogMS41O1xuICBmb250LWZhbWlseTogJGZvbnQtY29udGVudDtcbiAgY29sb3I6ICRibGFjaztcbiAgQGluY2x1ZGUgbWluLXdpZHRoKGRlc2t0b3Atd2lkZSkge1xuICAgIGZvbnQtc2l6ZTogMTFweDtcbiAgfVxufVxuXG5ib2R5IHtcbiAgZm9udC1zaXplOiAkZGVmYXVsdC1mb250LXNpemUtYWJzb2x1dGU7XG4gIGZvbnQtc2l6ZTogJGRlZmF1bHQtZm9udC1zaXplO1xufVxuXG5tYWluIHtcbiAgY29sb3I6ICRibGFjaztcbn1cblxuKiB7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgY29sb3I6IGluaGVyaXQ7XG59XG5cbmIsIHN0cm9uZyB7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICBmb250LWZhbWlseTogJGZvbnQtZXh0cmEtYm9sZDtcbn1cblxuaSwgZW0ge1xuICBmb250LWZhbWlseTogJGZvbnQtY29udGVudC1pdGFsaWM7XG59XG5cbnNtYWxsIHtcbiAgZm9udC1mYW1pbHk6ICRmb250LW1lZGl1bTtcbiAgZm9udC1zaXplOiAxLjJyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjJyZW07XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGxldHRlci1zcGFjaW5nOiAtMC4wNGVtO1xufVxuXG5wIHtcbiAgQGluY2x1ZGUgcGFyYWdyYXBoO1xufVxuXG5wLmxlYWQsIC5sZWFkIHtcbiAgZm9udC1mYW1pbHk6ICRmb250LWJvbGQ7XG4gIGZvbnQtc2l6ZTogMnJlbTtcbiAgbGluZS1oZWlnaHQ6IDIuNnJlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IC0wLjA0ZW07XG59XG5cbmgxLCAubGlrZS1oMSB7XG4gIEBpbmNsdWRlIGgtMTtcbn1cblxuaDIsIC5saWtlLWgyIHtcbiAgQGluY2x1ZGUgaC0yO1xufVxuXG5oMywgLmxpa2UtaDMge1xuICBAaW5jbHVkZSBoLTM7XG59XG5cbmg0LCAubGlrZS1oNCB7XG4gIEBpbmNsdWRlIGgtNDtcbn1cblxuaDUsIC5saWtlLWg1IHtcbiAgQGluY2x1ZGUgaC01O1xufVxuXG5oNiwgLmxpa2UtaDYge1xuICBAaW5jbHVkZSBoLTY7XG59XG5cbi5oZWFkbGluZSB7XG4gICYtbWVkaXVtIHtcbiAgICBAaW5jbHVkZSBoZWFkbGluZShtZWRpdW0pO1xuICB9XG5cbiAgJi1tZWRpdW0tc2VjdGlvbiB7XG4gICAgQGluY2x1ZGUgaGVhZGxpbmUobWVkaXVtLXNlY3Rpb24pO1xuICB9XG5cbiAgJi1iaWctc2VjdGlvbiB7XG4gICAgQGluY2x1ZGUgaGVhZGxpbmUoYmlnLXNlY3Rpb24pO1xuICB9XG5cbiAgJi1ibG9jayB7XG4gICAgQGluY2x1ZGUgaGVhZGxpbmUoYmxvY2spO1xuICB9XG5cbiAgJi1hbGwtY2FwcyB7XG4gICAgQGluY2x1ZGUgaGVhZGxpbmUoYmxvY2spO1xuICB9XG59XG5cbi5zci1vbmx5IHtcbiAgQGluY2x1ZGUgc3Itb25seSgpO1xufVxuXG4ubm8td3JhcCB7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi5ob21lcGFnZSBociB7XG4gIGJvcmRlcjogMCAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IDAuMXJlbSAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGVuKCRibGFjaywgNzAlKSAhaW1wb3J0YW50O1xufSIsIiRmb250LW1lZGl1bTogJ2FyY2hpdm8nLCAnbWVkaXVtLWZhbGxiYWNrJywgYXJpYWw7XG4kZm9udC1ib2xkOiAnYXJjaGl2by1ib2xkJywgJ3NlbWlib2xkLWZhbGxiYWNrJywgYXJpYWw7XG4kZm9udC1leHRyYS1ib2xkOiAnYXJjaGl2by1ibGFjaycsICdibGFjay1mYWxsYmFjaycsIGFyaWFsO1xuJGZvbnQtaWNvbjogJ2ljb21vb24nO1xuXG4kZm9udC1oZWFkZXJzOiAkZm9udC1ib2xkO1xuJGZvbnQtY29udGVudDogJGZvbnQtbWVkaXVtO1xuJGZvbnQtY29udGVudC1ib2xkOiAkZm9udC1ib2xkO1xuJGZvbnQtY29udGVudC1pdGFsaWM6ICRmb250LW1lZGl1bTtcblxuJGRlZmF1bHQtZm9udC1zaXplOiAxLjVyZW07XG4vLyBzdHlsZWxpbnQtZGlzYWJsZVxuJGRlZmF1bHQtZm9udC1zaXplLWFic29sdXRlOiAxNXB4O1xuLy8gc3R5bGVsaW50LWVuYWJsZVxuXG4kZm9udC1zaXplLWNhcnQtcHJvZHVjdC1kZXNjcmlwdGlvbjogMC44cmVtO1xuXG4vLyBsaW5lIGhlaWdodHNcbiRsaW5lLWhlaWdodC1zZW86IDEuMzc1cmVtO1xuXG4kaWNvbnM6IChcbiAgICAgICAgcmlnaHQtYXJyb3c6IFwiXFxlOTRjXCIsXG4gICAgICAgIGxlZnQtYXJyb3c6IFwiXFxlOTRiXCIsXG4gICAgICAgIGRlbGV0ZS1maWxsZWQ6IFwiXFxlOTM2XCIsXG4gICAgICAgIGNyb3NzOiBcIlxcZTk0NVwiLFxuICAgICAgICBjbG9zZS1ib2xkOiBcIlxcZTk0OFwiLFxuICAgICAgICBzdWNjZXNzLWNpcmNsZTogXCJcXGU5NDlcIixcbiAgICAgICAgYnVsYjogXCJcXGU5NGFcIixcbiAgICAgICAgbGluazogXCJcXGU5NDZcIixcbiAgICAgICAgc2hhcmU6IFwiXFxlOTQ3XCIsXG4gICAgICAgIHNlY3VyaXR5OiBcIlxcZTkzM1wiLFxuICAgICAgICBxdWFsaXR5OiBcIlxcZTkzNFwiLFxuICAgICAgICByZXR1cm4xOiBcIlxcZTkzNVwiLFxuICAgICAgICBhcjogXCJcXGU5NDRcIixcbiAgICAgICAgZnM6IFwiXFxlOTQzXCIsXG4gICAgICAgIHN0YXItZW1wdHk6ICdcXGU5ZDcnLFxuICAgICAgICBjb2x1bW4xLWZpbGxlZDogJ1xcZTkzZicsXG4gICAgICAgIGNvbHVtbjE6ICdcXGU5NDAnLFxuICAgICAgICBjb2x1bW4yLWZpbGxlZDogJ1xcZTk0MScsXG4gICAgICAgIGNvbHVtbjI6ICdcXGU5NDInLFxuICAgICAgICBleWU6ICdcXGU5Y2UnLFxuICAgICAgICBwZW5jaWw6ICdcXGU5MTYnLFxuICAgICAgICB3cml0ZTogJ1xcZTkxNicsXG4gICAgICAgIGVkaXQ6ICdcXGU5MTYnLFxuICAgICAgICBmaWx0ZXI6ICdcXGU5MTUnLFxuICAgICAgICBmdW5uZWw6ICdcXGU5MTUnLFxuICAgICAgICBqYWhyZS1nYXJhbnRpZTogJ1xcZTkzOScsXG4gICAgICAgIGZhcmJicmlsbGFuejogJ1xcZTkzYScsXG4gICAgICAgIHJldHVybjI6ICdcXGU5M2InLFxuICAgICAgICBwaG9uZS1taW5pOiAnXFxlOTI5JyxcbiAgICAgICAgcGluOiAnXFxlOTJhJyxcbiAgICAgICAgcGhvbmUtbWluaS1lbXB0eTogJ1xcZTkyYicsXG4gICAgICAgIHBob25lLWVtcHR5OiAnXFxlOTJjJyxcbiAgICAgICAgaGVhcnQtbWluaS1lbXB0eTogJ1xcZTkyZCcsXG4gICAgICAgIGFycm93LWxlZnQtY2lyY2xlMjogJ1xcZTkyZScsXG4gICAgICAgIGFycm93LXJpZ2h0LWNpcmNsZTIyOiAnXFxlOTJmJyxcbiAgICAgICAgYXJyb3ctcmlnaHQtY2lyY2xlMjogJ1xcZTkzMCcsXG4gICAgICAgIGF1ZGlvLXBhdXNlOiAnXFxlOTMxJyxcbiAgICAgICAgYXVkaW8xLW9mZi1wYXRoMTogJ1xcZTkzMicsXG4gICAgICAgIGF1ZGlvMS1vZmYtcGF0aDI6ICdcXGU5MzMnLFxuICAgICAgICBhdWRpbzEtb2ZmLXBhdGgzOiAnXFxlOTM0JyxcbiAgICAgICAgYXVkaW8xLW9mZi1wYXRoNDogJ1xcZTkzNScsXG4gICAgICAgIGF1ZGlvMS1vZmYtcGF0aDU6ICdcXGU5MzYnLFxuICAgICAgICBhdWRpbzItb2ZmOiAnXFxlOTM3JyxcbiAgICAgICAgYXVkaW8yLXBhdXNlOiAnXFxlOTM4JyxcbiAgICAgICAgc3RlcDEtYWN0aXZlOiAnXFxlOTIxJyxcbiAgICAgICAgc3RlcDEtaW5hY3RpdmU6ICdcXGU5MjInLFxuICAgICAgICBzdGVwMi1hY3RpdmU6ICdcXGU5MjMnLFxuICAgICAgICBzdGVwMi1pbmFjdGl2ZTogJ1xcZTkyNCcsXG4gICAgICAgIHN0ZXAzLWFjdGl2ZTogJ1xcZTkyNScsXG4gICAgICAgIHN0ZXAzLWluYWN0aXZlOiAnXFxlOTI2JyxcbiAgICAgICAgc3RlcDQtYWN0aXZlOiAnXFxlOTI3JyxcbiAgICAgICAgc3RlcDQtaW5hY3RpdmU6ICdcXGU5MjgnLFxuICAgICAgICBlZGl0LWZpbGw6ICdcXGU5MWQnLFxuICAgICAgICBpbmZvLWZpbGw6ICdcXGU5MWUnLFxuICAgICAgICBwbHVzLWZpbGw6ICdcXGU5MWYnLFxuICAgICAgICBzdGVwLWNoZWNrOiAnXFxlOTIwJyxcbiAgICAgICAgaGFtYnVyZ2VyOiAnXFxlOTE3JyxcbiAgICAgICAgYXJyb3ctbGVmdC1jaXJjbGU6ICdcXGU5MTgnLFxuICAgICAgICBhcnJvdy1sZWZ0OiAnXFxlOTE5JyxcbiAgICAgICAgYXJyb3ctcmlnaHQtY2lyY2xlOiAnXFxlOTFhJyxcbiAgICAgICAgYXJyb3ctcmlnaHQ6ICdcXGU5MWInLFxuICAgICAgICBidWJibGUtZmlsbDogJ1xcZTkxYycsXG4gICAgICAgIGJ1YmJsZTogJ1xcZTkzYycsXG4gICAgICAgIGNoZWNrLW1pbmk6ICdcXGU5M2QnLFxuICAgICAgICBzZWFyY2g6ICdcXGU5MTQnLFxuICAgICAgICBsdW1hcy1sb2dvOiAnXFxlOTAwJyxcbiAgICAgICAgYWNjb3VudDogJ1xcZTkwMScsXG4gICAgICAgIGNhcnQ6ICdcXGU5MDInLFxuICAgICAgICBoZWFydC1lbXB0eTogJ1xcZTkwMycsXG4gICAgICAgIGhlYXJ0LWZpbGxlZDogJ1xcZTkwNCcsXG4gICAgICAgIHBob25lLWZpbGxlZDogJ1xcZTkwNScsXG4gICAgICAgIHBpbi1maWxsZWQ6ICdcXGU5MDYnLFxuICAgICAgICByZXR1cm4tZmlsbGVkOiAnXFxlOTA3JyxcbiAgICAgICAgdHJ1Y2syOiAnXFxlOTA4JyxcbiAgICAgICAgaGVhcnQ6ICdcXGU5MDknLFxuICAgICAgICBsaWtlOiAnXFxlOTA5JyxcbiAgICAgICAgbG92ZTogJ1xcZTkwOScsXG4gICAgICAgIGZhdm9yaXRlOiAnXFxlOTA5JyxcbiAgICAgICAgcmV0dXJuLWZvb3RlcjogJ1xcZTkwYScsXG4gICAgICAgIHJldHVybjogJ1xcZTkwYicsXG4gICAgICAgIHRydWNrOiAnXFxlOTBjJyxcbiAgICAgICAgcGhvbmUtZm9vdGVyOiAnXFxlOTBkJyxcbiAgICAgICAgdHJ1Y2stZm9vdGVyOiAnXFxlOTBlJyxcbiAgICAgICAgYXJ0LXNlY3VyaXR5LWZvb3RlcjogJ1xcZTkwZicsXG4gICAgICAgIGVtYWlsOiAnXFxlNjAwJyxcbiAgICAgICAgbG9jYWxfcGluOiAnXFxlNjAxJyxcbiAgICAgICAgZHJvcGRvd246ICdcXGU2MDInLFxuICAgICAgICBjaGVjazogJ1xcZTYwMycsXG4gICAgICAgIGxvZ2luOiAnXFxlNjA0JyxcbiAgICAgICAgZmFjZWJvb2s6ICdcXGU2MDUnLFxuICAgICAgICBnb29nbGVwbHVzOiAnXFxlNjA2JyxcbiAgICAgICAgcGludGVyZXN0OiAnXFxlNjA3JyxcbiAgICAgICAgdHdpdHRlcjogJ1xcZTYwOCcsXG4gICAgICAgIGluc3RhZ3JhbTogJ1xcZTYwOScsXG4gICAgICAgIHBob25lOiAnXFxlNjBhJyxcbiAgICAgICAgaW5mbzogJ1xcZTYwYycsXG4gICAgICAgIHNob3BwaW5nX2NhcnQ6ICdcXGU2MGQnLFxuICAgICAgICBiYWNrOiAnXFxlNjBlJyxcbiAgICAgICAgZm9yd2FyZDogJ1xcZTYwZicsXG4gICAgICAgIGNsb3NlOiAnXFxlNjEwJyxcbiAgICAgICAgbGVzczogJ1xcZTYxMScsXG4gICAgICAgIG1vcmU6ICdcXGU2MTInLFxuICAgICAgICBtYWduaWZ5aW5nX2dsYXNzOiAnXFxlNjEzJyxcbiAgICAgICAgZXJyb3I6ICdcXGU2MTQnLFxuICAgICAgICBzYWZlOiAnXFxlNjE1JyxcbiAgICAgICAgbWludXM6ICdcXGU2MTYnLFxuICAgICAgICBwbHVzOiAnXFxlNjE3JyxcbiAgICAgICAgY2hlY2tvdXQtbGVzczogJ1xcZTkxMCcsXG4gICAgICAgIGNoZWNrb3V0LW1vcmU6ICdcXGU5MTEnLFxuICAgICAgICBzcGlubmVyOiAnXFxlOTEyJyxcbiAgICAgICAgd2hhdHNhcHA6ICdcXGU5MTMnLFxuICAgICAgICBhcnQtZmluZGVyOiAnXFxlOTNlJyxcbiAgICAgICAgY29pbi1kb2xsYXI6ICdcXGU5NGInXG4pO1xuXG4kaWNvbnMtbWFwcGVkOiAoXG4gICAgICAgIHdhcnJhbnR5OiAnamFocmUtZ2FyYW50aWUnLFxuICAgICAgICBiYWxhbmNlOiAnZmFyYmJyaWxsYW56J1xuKTtcbiIsIiR3aGl0ZTogI2ZmZjtcbiRibGFjazogIzAwMDtcbiRicm9rZW4td2hpdGU6ICNlN2U3ZTY7XG4kYnJva2VuLXdoaXRlLWxpZ2h0OiAjZjVmNWYzO1xuJGJyb2tlbi13aGl0ZS1kYXJrOiAjZjNmM2YzO1xuXG4kbGF5b3V0LWJsb2NrOiAkYnJva2VuLXdoaXRlO1xuJHBhZ2UtYmFja2dyb3VuZDogJHdoaXRlO1xuJHBhZ2UtYmFja2dyb3VuZC1saWdodDogJHBhZ2UtYmFja2dyb3VuZDtcbiRkYXJrZXItZWxlbWVudHM6ICM0NDQ7XG4kZGFyay1lbGVtZW50czogIzU2NTY1NjtcbiRsaWdodC1ncmF5LWVsZW1lbnRzOiAjNjE2MTYxO1xuJGdyYXktZWxlbWVudHM6ICMyMjI7XG4kZGFya2VyLXRleHQ6ICMyMjIyMjI7XG4kZGFyay10ZXh0OiAjODM4MzgzO1xuJGdyYXktdGV4dDogIzlCOUI5QjtcbiRncmF5LWJhY2tncm91bmQ6ICRicm9rZW4td2hpdGU7XG4kZ3JheS1iYWNrZ3JvdW5kLWxpZ2h0OiAjZjJmMmYyO1xuJG9wYXF1ZS1ncmF5OiByZ2JhKDAsIDAsIDAsIC4zKTtcbiRwcm9kdWN0LWJhY2tncm91bmQ6ICRicm9rZW4td2hpdGU7XG4kaGVhZGVyLWJvdHRvbS1ib3JkZXI6ICM5Nzk3OTc7XG4kaGVhZGVyLWJvdHRvbS1ib3JkZXI6ICMyMjIyMjI7XG5cbiRibHVlOiAjMTM0NDliO1xuJHJlZDogI2NjMDAxMztcbiRncmVlbjogIzVkYWEzNTtcbiR5ZWxsb3c6ICNmZmMzNDM7XG4kb3JhbmdlOiAjZmQ4ODMxO1xuJHB1cnBsZTogIzg4MUFENTtcbiRza3k6ICNiYmRlZmI7XG4kYnJvd246ICM4QjQ1MTM7XG4kZ3JheTogIzdkN2Q3ZDtcbiRkYXJrLWdyYXk6ICM0NDQ7XG4kc2lsdmVyOiAjY2NjO1xuJG1hZ2VudGE6ICNmZjAwZmY7XG5cbiRoaWdobGlnaHQtY29sb3JzOiAoXG4gICAgICAgIGhpZ2hsaWdodC1wdXJwbGU6ICM1ODJjODMsXG4gICAgICAgIGhpZ2hsaWdodC1wdXJwbGUtbGlnaHQ6ICM5Njc4ZDMsXG4gICAgICAgIGhpZ2hsaWdodC1ibHVlOiAjMjVCMEU5LFxuICAgICAgICBoaWdobGlnaHQtcmVkOiAjRkYyRDQzLFxuICAgICAgICBoaWdobGlnaHQtbWFnZW50YTogIzliMDA0ZSxcbiAgICAgICAgaGlnaGxpZ2h0LWN5YW46ICMyMGI0YzUsXG4gICAgICAgIGhpZ2hsaWdodC15ZWxsb3c6ICNkYWQ0YmYsXG4pO1xuXG4kaGlnaGxpZ2h0LXB1cnBsZTogbWFwLWdldCgkaGlnaGxpZ2h0LWNvbG9ycywgaGlnaGxpZ2h0LXB1cnBsZSk7XG4kaGlnaGxpZ2h0LXB1cnBsZS1saWdodDogbWFwLWdldCgkaGlnaGxpZ2h0LWNvbG9ycywgaGlnaGxpZ2h0LXB1cnBsZS1saWdodCk7XG4kaGlnaGxpZ2h0LWJsdWU6IG1hcC1nZXQoJGhpZ2hsaWdodC1jb2xvcnMsIGhpZ2hsaWdodC1ibHVlKTtcbiRoaWdobGlnaHQtcmVkOiBtYXAtZ2V0KCRoaWdobGlnaHQtY29sb3JzLCBoaWdobGlnaHQtcmVkKTtcbiRoaWdobGlnaHQtbWFnZW50YTogbWFwLWdldCgkaGlnaGxpZ2h0LWNvbG9ycywgaGlnaGxpZ2h0LW1hZ2VudGEpO1xuJGhpZ2hsaWdodC1jeWFuOiBtYXAtZ2V0KCRoaWdobGlnaHQtY29sb3JzLCBoaWdobGlnaHQtY3lhbik7XG4kaGlnaGxpZ2h0LXllbGxvdzogbWFwLWdldCgkaGlnaGxpZ2h0LWNvbG9ycywgaGlnaGxpZ2h0LXllbGxvdyk7XG4kZXJyb3I6ICNmYzJlNGU7XG5cbiRhY3Rpb24tYmFubmVyLWRlZmF1bHQ6ICNmM2Y0ZjY7XG5cbiRib2R5LWJhY2tncm91bmQtY29sb3I6ICRwYWdlLWJhY2tncm91bmQ7XG4kaW5wdXQtYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuJGJvcmRlci1jb2xvcjogJGdyYXk7XG5cbiRoZWFkZXItYmFja2dyb3VuZC1jb2xvcjogJGxheW91dC1ibG9jaztcbiRoZWFkZXItdGV4dC1jb2xvci1kYXJrOiAkZGFyay10ZXh0O1xuXG4kZm9vdGVyLWJhY2tncm91bmQtY29sb3I6ICRicm9rZW4td2hpdGU7XG4kZm9vdGVyLXRleHQtY29sb3I6ICRibGFjaztcbiRmb290ZXItaWNvbi1jb2xvcjogJGJsYWNrO1xuXG4kcHJvZHVjdC1jYXJkLWJhY2tncm91bmQ6ICRicm9rZW4td2hpdGU7XG5cbiRwYWdpbmF0aW9uLWFjdGl2ZS1jb2xvcjogJGJsYWNrO1xuJHBhZ2luYXRpb24tZ2FwLWNvbG9yOiAkcGFnZS1iYWNrZ3JvdW5kO1xuXG4kcGRwLWNvbnRlbnQtYmFja2dyb3VuZDogJHBhZ2UtYmFja2dyb3VuZDtcbiRwZHAtcHJldmlldy1iYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tIHJpZ2h0LCAjYzljM2MyIDEwJSwgI2U4ZTdlNiA1MCUpO1xuXG4kY29sb3ItZ3JpZC1ib3JkZXI6ICRncmF5LXRleHQ7XG4kY29sb3ItbGF5b3V0LWdyaWQtYm9yZGVyLXJpZ2h0LWNvbHVtbjogJGdyYXk7XG4kY2hlY2tvdXQtYm9keTogJHBhZ2UtYmFja2dyb3VuZDtcblxuLy8gVGFibGVzXG4kY29sb3ItdGFibGUtdGV4dDogJHdoaXRlO1xuJGNvbG9yLXRhYmxlLWJvcmRlcjogJHNpbHZlcjtcbiRjb2xvci10YWJzLXRhYmxlOiAkd2hpdGU7XG4kY29sb3ItdGFibGUtcm93LXNlcGFyYXRvcjogJGRhcmstdGV4dDtcblxuLy8gRm9udFxuJGNvbG9yLWh5cGVybGluazogdmFyKC0tYnJhbmQtY29sb3IpO1xuXG4vLyBDb250ZW50XG4kY29sb3ItZnJlZS1zaGlwcGluZzogJGdyZWVuO1xuXG4kZmlsdGVyLWNvbG9yczogKFxuICBmaWx0ZXItYmx1ZTogJGJsdWUsXG4gIGZpbHRlci1yZWQ6ICRyZWQsXG4gIGZpbHRlci1ncmVlbjogJGdyZWVuLFxuICBmaWx0ZXIteWVsbG93OiAkeWVsbG93LFxuICBmaWx0ZXItb3JhbmdlOiAkb3JhbmdlLFxuICBmaWx0ZXItcHVycGxlOiAkcHVycGxlLFxuICBmaWx0ZXItc2t5OiAgJHNreSxcbiAgZmlsdGVyLWJsYWNrOiAkYmxhY2ssXG4gIGZpbHRlci1icm93bjogJGJyb3duLFxuICBmaWx0ZXItd2hpdGU6ICR3aGl0ZSxcbik7XG5cbiRwb3B1cC1vdmVybGF5OiByZ2JhKCRibGFjaywgMC41KTtcbiRsb2FkZXItb3ZlcmxheTogcmdiYSgkYmxhY2ssIDAuNSk7XG5cbiRsaWdodC1ncmVlbi1iYWNrZ3JvdW5kOiByZ2JhKDIzNCwgMjQ2LCAyMzQsIDAuODcpO1xuIiwiQGltcG9ydCAnLi4vY29uZmlnL21haW4nO1xuXG5AbWl4aW4gbWluLXdpZHRoKCRrZXkpIHtcbiAgJHNpemU6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAka2V5KTtcbiAgQGlmICRzaXplID09IG51bGwge1xuICAgICRzaXplOiAka2V5O1xuICB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2l6ZSkge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbkBtaXhpbiBtYXgtd2lkdGgoJGtleSkge1xuICAkc2l6ZTogbWFwLWdldCgkYnJlYWtwb2ludHMsICRrZXkpO1xuICBAaWYgJHNpemUgPT0gbnVsbCB7XG4gICAgJHNpemU6ICRrZXk7XG4gIH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6ICRzaXplKSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuQG1peGluIHJhbmdlLXdpZHRoKCRtaW4sICRtYXgpIHtcbiAgJHNpemUtbWluOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJG1pbik7XG4gIEBpZiAkc2l6ZS1taW4gPT0gbnVsbCB7XG4gICAgJHNpemUtbWluOiAka2V5O1xuICB9XG5cbiAgJHNpemUtbWF4OiBtYXAtZ2V0KCRicmVha3BvaW50cywgJG1heCk7XG4gIEBpZiAkc2l6ZS1tYXggPT0gbnVsbCB7XG4gICAgJHNpemUtbWF4OiAka2V5O1xuICB9XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzaXplLW1pbikgYW5kIChtYXgtd2lkdGg6ICRzaXplLW1heCkge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbkBtaXhpbiBoYXNIb3ZlcigpIHtcbiAgQG1lZGlhIChob3ZlcjogaG92ZXIpIGFuZCAocG9pbnRlcjogZmluZSkge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbkBtaXhpbiBkaXNwbGF5LW1pbi1zY3JlZW4oJGtleSkge1xuICBkaXNwbGF5OiBub25lO1xuICBAaW5jbHVkZSBtaW4td2lkdGgoJGtleSkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5cbkBtaXhpbiBkaXNwbGF5LW1heC1zY3JlZW4oJGtleSkge1xuICBkaXNwbGF5OiBub25lO1xuICBAaW5jbHVkZSBtYXgtd2lkdGgoJGtleSkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5cbkBtaXhpbiBjbGVhcmZpeCB7XG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbn1cbiIsIkBtaXhpbiBkaXNwbGF5LWZsZXgge1xuICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgZGlzcGxheTogLW1vei1ib3g7XG4gIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xuICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG5cbkBtaXhpbiBkaXNwbGF5LWZsZXgtY2VudGVyZWQge1xuICBAaW5jbHVkZSBkaXNwbGF5LWZsZXgoKTtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuQG1peGluIHNpemUoJHZhbHVlKSB7XG4gICR3aWR0aDogbnRoKCR2YWx1ZSwgMSk7XG4gICRoZWlnaHQ6ICR3aWR0aDtcblxuICBAaWYgbGVuZ3RoKCR2YWx1ZSkgPiAxIHtcbiAgICAkaGVpZ2h0OiBudGgoJHZhbHVlLCAyKTtcbiAgfVxuXG4gIEBpZiBpcy1zaXplKCRoZWlnaHQpIHtcbiAgICBoZWlnaHQ6ICRoZWlnaHQ7XG4gIH0gQGVsc2Uge1xuICAgIEB3YXJuIFwiYCN7JGhlaWdodH1gIGlzIG5vdCBhIHZhbGlkIGxlbmd0aCBmb3IgYCRoZWlnaHRgLlwiO1xuICB9XG5cbiAgQGlmIGlzLXNpemUoJHdpZHRoKSB7XG4gICAgd2lkdGg6ICR3aWR0aDtcbiAgfSBAZWxzZSB7XG4gICAgQHdhcm4gXCJgI3skd2lkdGh9YCBpcyBub3QgYSB2YWxpZCBsZW5ndGggZm9yIHRoZSBgJHdpZHRoYC5cIjtcbiAgfVxufVxuXG5AbWl4aW4gcG9zaXRpb24oJHBvc2l0aW9uLCAkdG9wOiBudWxsLCAkcmlnaHQ6IG51bGwsICRib3R0b206IG51bGwsICRsZWZ0OiBudWxsKSB7XG4gIHBvc2l0aW9uOiAkcG9zaXRpb247XG4gIHRvcDogJHRvcDtcbiAgcmlnaHQ6ICRyaWdodDtcbiAgYm90dG9tOiAkYm90dG9tO1xuICBsZWZ0OiAkbGVmdDtcbn1cbkBtaXhpbiBzci1vbmx5KCkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMXB4O1xuICBwYWRkaW5nOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBjbGlwLXBhdGg6IGluc2V0KDUwJSk7XG4gIGJvcmRlcjogMDtcbn1cblxuQG1peGluIGJvcmRlcigkY29vcmRpbmF0ZXM6IDAgMCAwIDAsICRzdHlsZTogc29saWQsICRjb2xvcjogdHJhbnNwYXJlbnQpIHtcbiAgJHRvcDogbnRoKCRjb29yZGluYXRlcywgMSk7XG4gICRyaWdodDogbnRoKCRjb29yZGluYXRlcywgMik7XG4gICRib3R0b206IG50aCgkY29vcmRpbmF0ZXMsIDMpO1xuICAkbGVmdDogbnRoKCRjb29yZGluYXRlcywgNCk7XG5cbiAgQGlmIG5vdCh1bml0bGVzcygkdG9wKSkge1xuICAgIGJvcmRlci10b3A6ICR0b3AgJHN0eWxlICRjb2xvcjtcbiAgfVxuICBAaWYgbm90KHVuaXRsZXNzKCRyaWdodCkpIHtcbiAgICBib3JkZXItcmlnaHQ6ICRyaWdodCAkc3R5bGUgJGNvbG9yO1xuICB9XG4gIEBpZiBub3QodW5pdGxlc3MoJGJvdHRvbSkpIHtcbiAgICBib3JkZXItYm90dG9tOiAkYm90dG9tICRzdHlsZSAkY29sb3I7XG4gIH1cbiAgQGlmIG5vdCh1bml0bGVzcygkbGVmdCkpIHtcbiAgICBib3JkZXItbGVmdDogJGxlZnQgJHN0eWxlICRjb2xvcjtcbiAgfVxufVxuXG5AbWl4aW4gbG9hZGluZygpIHtcbiAgQGluY2x1ZGUgaWNvbihzcGlubmVyKTtcbiAgYW5pbWF0aW9uOiBsb2FkaW5nLXJvdGF0ZSAxcyBsaW5lYXIgaW5maW5pdGU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuQG1peGluIG1hcmdpbi1zaWRlKCR2YWx1ZSkge1xuICBtYXJnaW4tbGVmdDogI3skdmFsdWV9O1xuICBtYXJnaW4tcmlnaHQ6ICN7JHZhbHVlfTtcbn1cblxuQG1peGluIGljb24tY29udGVudCgka2V5KSB7XG4gICRjaGFyOiBtYXBfZ2V0KCRpY29ucywgJGtleSk7XG4gIEBpZiAoJGNoYXIgPT0gbnVsbCkge1xuICAgIEBkZWJ1ZyBcIicjeyRrZXl9JyBpcyBub3QgZGVmaW5lZCBpbiAkaWNvbnNcIjtcbiAgfVxuICBjb250ZW50OiBcIiN7JGNoYXJ9XCI7XG59XG5cbkBtaXhpbiBpY29uKCRrZXkpIHtcbiAgQGluY2x1ZGUgaWNvbi1jb250ZW50KCRrZXkpO1xuICBmb250LWZhbWlseTogJ2ljb21vb24nO1xuICBzcGVhazogbm9uZTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNTAwO1xuICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBmb250LXNpemU6IDJyZW07XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xufVxuXG5AbWl4aW4gYW50aWFsaWFzZWQge1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbn1cblxuQG1peGluIGJyZWFrLWluc2lkZSgpIHtcbiAgLXdlYmtpdC1jb2x1bW4tYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xuICBicmVhay1pbnNpZGU6IGF2b2lkO1xufVxuXG5AbWl4aW4gcmVzcG9uc2l2ZS1mb250LXNpemUoJGRlZmF1bHQtZm9udC1zaXplLCAkbWluLXdpZHRoLCAkZm9udC1zaXplKSB7XG4gIGZvbnQtc2l6ZTogJGRlZmF1bHQtZm9udC1zaXplO1xuICBAaW5jbHVkZSBtaW4td2lkdGgoJG1pbi13aWR0aCkge1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcbiAgfVxufVxuXG5AbWl4aW4gaGVhZGxpbmUoJHR5cGUpIHtcbiAgQGlmICR0eXBlID09IG1lZGl1bSB7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LWJvbGQ7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBAaW5jbHVkZSByZXNwb25zaXZlLWZvbnQtc2l6ZSgyLjZyZW0sIHRhYmxldCwgM3JlbSk7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gIH1cblxuICBAaWYgJHR5cGUgPT0gbWVkaXVtLXNlY3Rpb24ge1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1ib2xkO1xuICAgIEBpbmNsdWRlIHJlc3BvbnNpdmUtZm9udC1zaXplKDEuOHJlbSwgdGFibGV0LCAycmVtKTtcbiAgfVxuXG4gIEBpZiAkdHlwZSA9PSBiaWctc2VjdGlvbiB7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LWJvbGQ7XG4gICAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1mb250LXNpemUoMi4ycmVtLCB0YWJsZXQsIDIuNHJlbSk7XG4gIH1cblxuICBAaWYgJHR5cGUgPT0gYmxvY2sge1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1ib2xkO1xuICAgIEBpbmNsdWRlIHJlc3BvbnNpdmUtZm9udC1zaXplKDEuNHJlbSwgdGFibGV0LCAxLjVyZW0pO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIH1cbn1cblxuQG1peGluIGgtMSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LWZhbWlseTogJGZvbnQtZXh0cmEtYm9sZDtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgZm9udC1zaXplOiAzcmVtO1xuICBsaW5lLWhlaWdodDogMy40cmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGxldHRlci1zcGFjaW5nOiAtMC4wM2VtO1xuICB3b3JkLXNwYWNpbmc6IDAuMWVtO1xuICBAaW5jbHVkZSBtaW4td2lkdGgoZGVza3RvcCkge1xuICAgIGZvbnQtc2l6ZTogNS41cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiA1LjhyZW07XG4gIH1cbn1cblxuQG1peGluIGgtMiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LWZhbWlseTogJGZvbnQtYm9sZDtcbiAgZm9udC1zaXplOiAycmVtO1xuICBmb250LXdlaWdodDogNjAwO1xuICBsaW5lLWhlaWdodDogMi41cmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGxldHRlci1zcGFjaW5nOiAtMC4wM2VtO1xuXG4gIEBpbmNsdWRlIG1pbi13aWR0aChkZXNrdG9wKSB7XG4gICAgZm9udC1zaXplOiAzcmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAzLjNyZW07XG4gIH1cbn1cbkBtaXhpbiBoLTMge1xuICBmb250LWZhbWlseTogJGZvbnQtZXh0cmEtYm9sZDtcbiAgZm9udC1zaXplOiAyLjdyZW07XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIGxpbmUtaGVpZ2h0OiAyLjdyZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGxldHRlci1zcGFjaW5nOiAtMC4wNGVtO1xuICB3b3JkLXNwYWNpbmc6IDAuMWVtO1xuICBAaW5jbHVkZSBtaW4td2lkdGgoZGVza3RvcCkge1xuICAgIGZvbnQtc2l6ZTogNHJlbTtcbiAgICBsaW5lLWhlaWdodDogNHJlbTtcbiAgICBsZXR0ZXItc3BhY2luZzogLTAuMDVlbTtcbiAgICB3b3JkLXNwYWNpbmc6IDAuMWVtO1xuICB9XG59XG5AbWl4aW4gaC00IHtcbiAgZm9udC1mYW1pbHk6ICRmb250LWV4dHJhLWJvbGQ7XG4gIGZvbnQtc2l6ZTogMS44cmVtO1xuICBmb250LXdlaWdodDogOTAwO1xuICBsaW5lLWhlaWdodDogMS44cmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBsZXR0ZXItc3BhY2luZzogLTAuMDRlbTtcbiAgd29yZC1zcGFjaW5nOiAwLjFlbTtcbiAgQGluY2x1ZGUgbWluLXdpZHRoKGRlc2t0b3ApIHtcbiAgICBmb250LXNpemU6IDIuN3JlbTtcbiAgICBsaW5lLWhlaWdodDogMy4zcmVtO1xuICAgIGxldHRlci1zcGFjaW5nOiAtMC4wNWVtO1xuICAgIHdvcmQtc3BhY2luZzogMC4xZW07XG4gIH1cbn1cbkBtaXhpbiBoLTUge1xuICBmb250LWZhbWlseTogJGZvbnQtYm9sZDtcbiAgZm9udC1zaXplOiAxLjVyZW07XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjhyZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGxldHRlci1zcGFjaW5nOiAtMC4wNGVtO1xufVxuQG1peGluIGgtNiB7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1tZWRpdW07XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgbGluZS1oZWlnaHQ6IDEuM3JlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgbGV0dGVyLXNwYWNpbmc6IC0wLjA0ZW07XG59XG5cbkBtaXhpbiBwYXJhZ3JhcGgge1xuICBmb250LWZhbWlseTogJGZvbnQtbWVkaXVtO1xuICBmb250LXNpemU6IDEuNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDJyZW07XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGxldHRlci1zcGFjaW5nOiAtMC4wNGVtO1xufVxuIiwiOnJvb3Qge1xuICAtLWZvbnQtY29udGVudDogI3skZm9udC1jb250ZW50fTtcbiAgLS1mb250LWJvbGQ6ICN7JGZvbnQtY29udGVudC1ib2xkfTtcbiAgLS1mb250LWV4dHJhLWJvbGQ6ICN7JGZvbnQtZXh0cmEtYm9sZH07XG5cbiAgLyogY29sb3IgcGFsZXR0ZSAqL1xuICAtLXdoaXRlOiAjeyR3aGl0ZX07XG4gIC0tYmxhY2s6ICN7JGJsYWNrfTtcbiAgLS1icm9rZW4td2hpdGU6ICN7JGJyb2tlbi13aGl0ZX07XG4gIC0tYnJva2VuLXdoaXRlLWxpZ2h0OiAjeyRicm9rZW4td2hpdGUtbGlnaHR9O1xuICAtLWJyb2tlbi13aGl0ZS1kYXJrOiAjeyRicm9rZW4td2hpdGUtZGFya307XG4gIC0tYmx1ZTogI3skYmx1ZX07XG4gIC0tcmVkOiAjeyRyZWR9O1xuICAtLWdyZWVuOiAjeyRncmVlbn07XG4gIC0teWVsbG93OiAjeyR5ZWxsb3d9O1xuICAtLW9yYW5nZTogI3skb3JhbmdlfTtcbiAgLS1wdXJwbGU6ICN7JHB1cnBsZX07XG4gIC0tc2t5OiAjeyRza3l9O1xuICAtLWJyb3duOiAjeyRicm93bn07XG4gIC0tZ3JheTogI3skZ3JheX07XG4gIC0tZGFyay1ncmF5OiAjeyRkYXJrLWdyYXl9O1xuICAtLXNpbHZlcjogI3skc2lsdmVyfTtcbiAgLS1tYWdlbnRhOiAjeyRtYWdlbnRhfTtcbiAgLS1lcnJvcjogI3skZXJyb3J9O1xuXG4gIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGZpbHRlci1jb2xvcnMge1xuICAgICRmaWx0ZXItbmFtZTogc3RyLXNsaWNlKCRuYW1lLCA4KTtcbiAgICAtLWZpbHRlci0jeyRmaWx0ZXItbmFtZX06ICN7JGNvbG9yfTtcbiAgfVxuICBAZWFjaCAkbmFtZSwgJGNvbG9yIGluICRoaWdobGlnaHQtY29sb3JzIHtcbiAgICAkaGlnaGxpZ2h0LW5hbWU6IHN0ci1zbGljZSgkbmFtZSwgMTEpO1xuICAgIC0taGlnaGxpZ2h0LSN7JGhpZ2hsaWdodC1uYW1lfTogI3skY29sb3J9O1xuICB9XG59XG5cbmJvZHkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYm9keS1iYWNrZ3JvdW5kLWNvbG9yO1xuICBtYXJnaW46IDA7XG4gIC0tYnJhbmQtY29sb3I6ICN7JGhpZ2hsaWdodC1wdXJwbGV9O1xuICAtLWJyYW5kLWNvbG9yLWxpZ2h0OiAjeyRoaWdobGlnaHQtcHVycGxlLWxpZ2h0fTtcbn1cblxuYSB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgJltkYXRhLWZhdXgtbGlua10ge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxufVxuXG5tYWluIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgb3ZlcmZsb3c6IGluaXRpYWw7XG59XG5cbi5oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ubm90LXNjcm9sbGFibGUsIC5uYXYtbm8tc2Nyb2xsIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuLm5vdC1vdmVyZmxvd2luZyB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5kaXNhYmxlLW92ZXJmbG93IHtcbiAgb3ZlcmZsb3c6IGhpZGRlbiAhaW1wb3J0YW50O1xuICB0b3VjaC1hY3Rpb246IHBhbi15O1xuICBvdmVyc2Nyb2xsLWJlaGF2aW9yOiBub25lO1xufVxuXG4ubGluayB7XG4gIGNvbG9yOiB2YXIoLS1icmFuZC1jb2xvcik7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbiIsIkBrZXlmcmFtZXMgY29sb3JGYWRlIHtcbiAgdG8ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRwcm9kdWN0LWNhcmQtYmFja2dyb3VuZDtcbiAgfVxufVxuXG4uc2VhcmNoLXJlc3VsdHMsIC53aXNobGlzdCB7XG4gIC50b3Age1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRwcm9kdWN0LWNhcmQtYmFja2dyb3VuZDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cblxuICAud2lzaGxpc3QtYWRkIHtcbiAgICAmOmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSBpY29uKGhlYXJ0LWVtcHR5KTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgfVxuICB9XG5cbiAgLndpc2hsaXN0LWFkZGVkIHtcbiAgICAmOmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSBpY29uKGhlYXJ0LWZpbGxlZCk7XG4gICAgICBjb2xvcjogdmFyKC0tYnJhbmQtY29sb3IpO1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICB9XG4gIH1cblxuICAud2lzaGxpc3QtYWRkLCAud2lzaGxpc3QtYWRkZWQsIC53aXNobGlzdC1yZW1vdmUge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBwYWRkaW5nOiAwLjRyZW07XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICBtYXJnaW4taW5saW5lLWVuZDogLTAuMjVyZW07XG4gICAgfVxuXG4gICAgJjpob3ZlcjpiZWZvcmUge1xuICAgICAgY29sb3I6IHZhcigtLWJyYW5kLWNvbG9yKTtcbiAgICB9XG4gIH1cblxuICAud2lzaGxpc3QtcmVtb3ZlIHtcbiAgICBwYWRkaW5nLWJsb2NrOiAxcmVtO1xuICAgIHBhZGRpbmctaW5saW5lOiAxcmVtO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDAuNzVyZW07XG4gICAgcmlnaHQ6IDAuNzVyZW07XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSBpY29uKGNsb3NlKTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICB9XG4gIH1cblxuICAuYm9vc3Qtc2NvcmUge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG5cbiAgLnByb2R1Y3QtY291bnQge1xuICAgIHRleHQtdHJhbnNmb3JtOiBsb3dlcmNhc2U7XG4gICAgbWFyZ2luLWJsb2NrOiAwLjVyZW07XG4gIH1cblxuICAubmFtZSB7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LWNvbnRlbnQ7XG4gIH1cblxuICAuc2VyaWUsIC5hcnRpc3Qge1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1leHRyYS1ib2xkO1xuICAgIHdvcmQtc3BhY2luZzogMC4xZW07XG4gIH1cbn1cblxuLndpc2hsaXN0IHtcbiAgLnRvcCB7XG4gICAgcGFkZGluZy1ibG9jay1zdGFydDogMy42cmVtO1xuICB9XG59XG5cbi5zdGF0dXMsIC5lbXB0eS1zdGF0dXMge1xuICBvcGFjaXR5OiAwO1xuICAuc2VhcmNoLXJlc3VsdHMgJiAge1xuICAgIHdpZHRoOiBmaXQtY29udGVudDtcbiAgICBtYXJnaW4tdG9wOiAzcmVtO1xuICAgIG1heC13aWR0aDogMTAwJTtcblxuICAgIC0tc3RhdHVzLWJhY2tncm91bmQ6IHZhcigtLWJyYW5kLWNvbG9yKTtcbiAgICAtLXN0YXR1cy1jb2xvcjogI3skd2hpdGV9O1xuXG4gICAgJi5zdGF0dXMtOCB7XG4gICAgICAtLXN0YXR1cy1iYWNrZ3JvdW5kOiAjeyR3aGl0ZX07XG4gICAgICAtLXN0YXR1cy1jb2xvcjogI3skYmxhY2t9O1xuICAgIH1cblxuICAgIHNwYW4ge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc3RhdHVzLWJhY2tncm91bmQpO1xuICAgICAgY29sb3I6IHZhcigtLXN0YXR1cy1jb2xvcik7XG4gICAgICBmb250LWZhbWlseTogJGZvbnQtYm9sZDtcbiAgICAgIGZvbnQtc2l6ZTogMS4xcmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuM3JlbTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBsZXR0ZXItc3BhY2luZzogMC4xcmVtO1xuICAgICAgQGluY2x1ZGUgYW50aWFsaWFzZWQ7XG4gICAgICBwYWRkaW5nOiAuNXJlbTtcbiAgICAgIEBpbmNsdWRlIG1pbi13aWR0aChwaG9uZS1sYW5kc2NhcGUpIHtcbiAgICAgICAgcGFkZGluZzogMC40NXJlbSAycmVtO1xuICAgICAgfVxuXG4gICAgICAmLmdhbGxlcnktc2FsZXMtbGFiZWwge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB9XG5cbiAgICAgICYuYmx1ZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJyYW5kLWNvbG9yKTtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuc2VhcmNoLXJlc3VsdHMubWFzb25yeSAmIHtcblxuICAgICYuc3RhdHVzLTgge1xuICAgICAgLS1zdGF0dXMtYmFja2dyb3VuZDogI3skYnJva2VuLXdoaXRlfTtcbiAgICAgIC0tc3RhdHVzLWNvbG9yOiAjeyRibGFja307XG4gICAgfVxuICB9XG5cbn1cblxuLnNlYXJjaC1yZXN1bHRzIHtcbiAgLm1vcmUtYXJ0aXN0LWxpbmsge1xuICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LW1lZGl1bTtcbiAgICBmb250LXNpemU6IDEuMXJlbTtcbiAgICBsZXR0ZXItc3BhY2luZzogMC4xMXJlbTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB0ZXh0LXVuZGVybGluZS1wb3NpdGlvbjogZnJvbS1mb250O1xuICB9XG59XG5cbi5wbHAtc3RhdHVzLXRvb2x0aXAge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gIGJveC1zaGFkb3c6IDAgMCAuOHJlbSAkb3BhcXVlLWdyYXk7XG4gIG1heC13aWR0aDogMjZjaDtcbiAgcGFkZGluZzogLjVyZW0gLjc1cmVtO1xuICBmb250LXNpemU6IDEuM3JlbTtcbn0iLCIkY29sdW1uLWdhcDogMnJlbTtcblxuLnVpLXRvb2x0aXAucHJvZHVjdC1wcmV2aWV3IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHotaW5kZXg6IG1hcC1nZXQoJHotaW5kZXgsIGZzLWJyb3dzZXItdG9vbHRpcCk7XG5cbiAgaW1nIHtcbiAgICBtYXgtaGVpZ2h0OiA4MHZoO1xuICAgIG1heC13aWR0aDogNTB2dztcbiAgfVxufVxuXG4udWktdG9vbHRpcC5jb21wYXJlLWFkZC10b29sdGlwIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icmFuZC1jb2xvcik7XG4gIGNvbG9yOiAkd2hpdGU7XG4gIHBhZGRpbmc6IC4yNXJlbSAuNXJlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBwb3NpdGlvbjogZml4ZWQ7XG5cbiAgJjo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGJvcmRlcjogLjVyZW0gc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWxlZnQtY29sb3I6IHZhcigtLWJyYW5kLWNvbG9yKTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IC0xcmVtO1xuICAgIHRvcDogLjVyZW07XG4gIH1cbn1cblxuLnNlYXJjaC1yZXN1bHRzLCAud2lzaGxpc3Qge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLXJvd3M6IHJlcGVhdCgxLCAxZnIpO1xuICBncmlkLWdhcDogJGNvbHVtbi1nYXA7XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG5cbiAgLnByb2R1Y3QtY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMTAwJTtcbiAgICBncmlkLXRlbXBsYXRlLXJvd3M6IG1pbm1heCgwLCAxZnIpIDExcmVtO1xuICAgIEBpbmNsdWRlIG1pbi13aWR0aChwaG9uZS1sYW5kc2NhcGUpIHtcbiAgICAgIGdyaWQtdGVtcGxhdGUtcm93czogbWlubWF4KDAsIDFmcikgMTByZW07XG4gICAgfVxuICAgICY6aGFzKC5zZXJpZSwgLmFydGlzdCkge1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBtaW5tYXgoMCwgMWZyKSAxMnJlbTtcbiAgICAgIEBpbmNsdWRlIG1pbi13aWR0aChwaG9uZS1sYW5kc2NhcGUpIHtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBtaW5tYXgoMCwgMWZyKSAxMXJlbTtcbiAgICAgIH1cbiAgICB9XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGJvcmRlcjogMC4xcmVtIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgbWluLWhlaWdodDogMTAwJTtcbiAgfVxuXG4gIC50b3Age1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBnYXA6IDFyZW07XG4gIH1cblxuICAuYm90dG9tIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjNyZW07XG4gICAgcGFkZGluZzogMXJlbSAwIDA7XG4gICAgZ2FwOiAwLjVyZW07XG5cbiAgICAuaW5mbyB7XG4gICAgICBmbGV4OiAxO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICAuYXJ0aXN0LWRldGFpbC1jb250YWluZXIgJiB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgICAgPiAqIHtcbiAgICAgICAgICBtYXJnaW4tYmxvY2s6IC41cmVtO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmFjdGlvbnMge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgIGdhcDogMC4yNXJlbTtcbiAgICAgIG1pbi13aWR0aDogNS44NXJlbTtcbiAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgfVxuXG4gICAgLmNhbXBhaWduIHtcbiAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1jb250ZW50LWJvbGQ7XG4gICAgICBjb2xvcjogdmFyKC0tYnJhbmQtY29sb3IpO1xuICAgIH1cbiAgfVxuXG4gIC5vcGVuLWZzIHtcbiAgICBwYWRkaW5nOiAwLjRyZW07XG4gICAgd2lkdGg6IDIuOHJlbTtcbiAgICBoZWlnaHQ6IDIuOHJlbTtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgIEBpbmNsdWRlIG1pbi13aWR0aChwaG9uZS1sYW5kc2NhcGUpIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgfVxuXG4gICAgJjpob3ZlciAuc3ZnLWljb24ge1xuICAgICAgY29sb3I6IHZhcigtLWJyYW5kLWNvbG9yKTtcbiAgICB9XG4gICAgc3ZnLnN2Zy1pY29uIHtcbiAgICAgIGFsbDogcmV2ZXJ0O1xuICAgICAgd2lkdGg6IDJyZW07XG4gICAgICBoZWlnaHQ6IDJyZW07XG4gICAgfVxuICB9XG5cbiAgd2lzaGxpc3QtYnV0dG9uIHtcbiAgICBAaW5jbHVkZSBzaXplKDIuOHJlbSk7XG4gICAgcGFkZGluZzogMC40cmVtO1xuICB9XG5cbiAgLmltYWdlLWNvbnRhaW5lciB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBtYXJnaW46IDAgMS42cmVtIDNyZW07XG4gICAgQGluY2x1ZGUgbWluLXdpZHRoKGRlc2t0b3ApIHtcbiAgICAgIG1hcmdpbjogMCAzcmVtIDNyZW07XG4gICAgfVxuXG4gICAgaW1nLmNhdGFsb2ctcHJvZHVjdC1pbWFnZSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgIG1heC1oZWlnaHQ6IDQwcmVtO1xuICAgICAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcyBlYXNlLWluLW91dDtcbiAgICAgICYubG9hZGVkIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICB2aWRlbyB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGFzcGVjdC1yYXRpbzogNzA0LzM3MjtcbiAgICB9XG4gIH1cblxuICAmLm1hc29ucnkgLmltYWdlLWNvbnRhaW5lciB2aWRlbyB7XG4gICAgYXNwZWN0LXJhdGlvOiByZXZlcnQ7XG4gIH1cbiAgXG4gIC5wYW5vcmFtYSB7XG4gICAgLnRvcCB7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgLmltYWdlLWNvbnRhaW5lciB7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG5cbiAgLm5hbWUge1xuICAgIHRleHQtdHJhbnNmb3JtOiBsb3dlcmNhc2U7XG4gIH1cblxuICAuYXJ0aXN0IHtcbiAgICBzcGFuIHtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgfVxuICB9XG5cbiAgLm5hbWUsIC5hcnRpc3Qgc3BhbiB7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIC5wcmljZS5kaXNjb3VudGVkIHtcbiAgICA+IHNwYW46Zmlyc3QtY2hpbGQge1xuICAgICAgZm9udC1mYW1pbHk6ICRmb250LWJvbGQ7XG4gICAgICBjb2xvcjogdmFyKC0tYnJhbmQtY29sb3IpO1xuICAgIH1cblxuICAgICsgLmNhbXBhaWduIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbi53aXNobGlzdCB7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZmlsbCwgbWlubWF4KDI0cmVtLCAxZnIpKTtcblxuICAucHJvZHVjdC1jb250YWluZXIge1xuICAgIHBhZGRpbmc6IC4zcmVtO1xuICAgIG1hcmdpbi1pbmxpbmU6IC0uM3JlbTtcbiAgfVxufVxuXG4uc2VhcmNoLXJlc3VsdHMge1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCBtaW5tYXgoMHJlbSwgMWZyKSk7XG5cbiAgJi5zaW5nbGUtY29sdW1uIHtcbiAgICBAaW5jbHVkZSBtYXgtd2lkdGgodGFibGV0KSB7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IGNhbGMoMTAwJSk7XG4gICAgfVxuXG4gICAgLnBhbm9yYW1hIHtcbiAgICAgIGdyaWQtY29sdW1uOiBzcGFuIDE7XG4gICAgfVxuICB9XG5cbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gIGdyaWQtYXV0by1mbG93OiBkZW5zZTtcbiAgQGluY2x1ZGUgbWluLXdpZHRoKHBob25lLWxhbmRzY2FwZSkge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIG1pbm1heCgwcmVtLCAxZnIpKTtcbiAgfVxuICBAaW5jbHVkZSBtaW4td2lkdGgodGFibGV0LWxhbmRzY2FwZSkge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIG1pbm1heCgwcmVtLCAxZnIpKTtcbiAgfVxuICBAaW5jbHVkZSBtaW4td2lkdGgoZGVza3RvcCkge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDQsIG1pbm1heCgwcmVtLCAxZnIpKTtcbiAgfVxuICBAaW5jbHVkZSBtaW4td2lkdGgoZGVza3RvcC13aWRlKSB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNSwgbWlubWF4KDByZW0sIDFmcikpO1xuICB9XG5cbiAgLnNxdWFyZSwgLmFjcm9zcywgLnVwcmlnaHQsIC5wYW5vcmFtYSB7XG4gICAgZ3JpZC1yb3c6IHNwYW4gMjtcbiAgfVxuXG4gIC5zcXVhcmUsIC5hY3Jvc3MsIC51cHJpZ2h0IHtcbiAgICBncmlkLWNvbHVtbjogc3BhbiAxO1xuICB9XG5cbiAgLnBhbm9yYW1hIHtcbiAgICBncmlkLWNvbHVtbjogc3BhbiAxO1xuICAgIEBpbmNsdWRlIG1pbi13aWR0aCh0YWJsZXQtbGFuZHNjYXBlKSB7XG4gICAgICBncmlkLWNvbHVtbjogc3BhbiAyO1xuICAgIH1cbiAgfVxufVxuXG4uc2VhcmNoLXJlc3VsdHMubWFzb25yeSwgLndpc2hsaXN0Lm1hc29ucnkge1xuICAmOm5vdCgubG9hZGluZykge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ2FwOiAycmVtO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDEsIG1pbm1heCgwcmVtLCAxZnIpKTtcbiAgICBAaW5jbHVkZSBtaW4td2lkdGgocGhvbmUtbGFuZHNjYXBlKSB7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCBtaW5tYXgoMHJlbSwgMWZyKSk7XG4gICAgfVxuICAgIEBpbmNsdWRlIG1pbi13aWR0aCh0YWJsZXQtbGFuZHNjYXBlKSB7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgzLCBtaW5tYXgoMHJlbSwgMWZyKSk7XG4gICAgfVxuICAgIEBpbmNsdWRlIG1pbi13aWR0aChkZXNrdG9wKSB7XG4gICAgICBnYXA6IDIuNXJlbTtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIG1pbm1heCgwcmVtLCAxZnIpKTtcbiAgICB9XG4gICAgQGluY2x1ZGUgbWluLXdpZHRoKGRlc2t0b3Atd2lkZSkge1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNCwgbWlubWF4KDByZW0sIDFmcikpO1xuICAgIH1cbiAgfVxuXG4gICYubG9hZGluZyB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC5tYXNvbnJ5LWNvbCB7XG4gICAgZmxleC1ncm93OiAxO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLm1hc29ucnktY29sLS0yLCAubWFzb25yeS1jb2wtLTMsIC5tYXNvbnJ5LWNvbC0tNCB7XG4gICAgZGlzcGxheTogbm9uZVxuICB9XG5cbiAgQGluY2x1ZGUgbWluLXdpZHRoKHBob25lLWxhbmRzY2FwZSkge1xuICAgIC5tYXNvbnJ5LWNvbC0tMiB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBtaW4td2lkdGgodGFibGV0LWxhbmRzY2FwZSkge1xuICAgIC5tYXNvbnJ5LWNvbC0tMyB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBtaW4td2lkdGgoZGVza3RvcC13aWRlKSB7XG4gICAgLm1hc29ucnktY29sLS00IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgICAubWFzb25yeS1jb2wge1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNCwgbWlubWF4KDByZW0sIDFmcikpO1xuICAgIH1cbiAgfVxuXG4gIC5wcm9kdWN0LWNvbnRhaW5lciB7XG4gICAgYWxsOiByZXZlcnQ7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBsaW5lLWhlaWdodDogMS41O1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMTAwJTtcbiAgfVxuXG4gIC5pbWFnZS1jb250YWluZXIge1xuICAgIG1hcmdpbjogMDtcblxuICAgIGltZyB7XG4gICAgICBhbGw6IHJldmVydDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzIGVhc2UtaW4tb3V0O1xuICAgICAgJi5sb2FkZWQge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5zdGF0dXMsIC5lbXB0eS1zdGF0dXMge1xuICAgIG1hcmdpbjogMCAwIDFyZW07XG4gIH1cbn0iLCIuYmxvY2stdGlsZXM6bm90KC5zbGljay1pbml0aWFsaXplZCkge1xuICBkaXNwbGF5OiBncmlkO1xuICBnYXA6IDJyZW07XG4gIG1hcmdpbjogMnJlbSAwO1xuICBAZm9yICRjb2x1bW4gZnJvbSAxIHRocm91Z2ggOCB7XG4gICAgJltkYXRhLWNvbHVtbnM9XCIjeyRjb2x1bW59XCJdIHtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KCN7JGNvbHVtbn0sIGF1dG8pO1xuICAgICAgQGlmICRjb2x1bW4gPiA0IHtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIH1cbiAgICAgID4gZGl2IHtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5ibG9jay10aWxlIHtcbiAgICBtYXJnaW46IDA7XG4gIH1cbn1cblxuLmJsb2NrLXRpbGVzW2RhdGEtb3ZlcmZsb3c9XCJzbGlkZXJcIl06bm90KC5zbGljay1pbml0aWFsaXplZCkge1xuICBAZm9yICRjb2x1bW4gZnJvbSAxIHRocm91Z2ggOCB7XG4gICAgJltkYXRhLWNvbHVtbnM9XCIjeyRjb2x1bW59XCJdIHtcbiAgICAgID4gKjpudGgtY2hpbGQobisjeyRjb2x1bW4rMX0pIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmJsb2NrLXRpbGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICBmaWd1cmUge1xuICAgIEBpbmNsdWRlIHBvc2l0aW9uKGFic29sdXRlLCAwLCAwLCAwLCAwKTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgYXNwZWN0LXJhdGlvOiAxO1xuICAgIHBhZGRpbmc6IC4zcmVtIDAuOHJlbTtcbiAgICBAaW5jbHVkZSBtaW4td2lkdGgoZGVza3RvcCkge1xuICAgICAgcGFkZGluZzogLjVyZW0gMXJlbTtcbiAgICB9XG5cbiAgICAvLyBGYWxsYmFjayBmb3IgU2FmYXJpID49IDE0XG4gICAgQHN1cHBvcnRzIG5vdCAoYXNwZWN0LXJhdGlvOiAxIC8gMSkge1xuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHBhZGRpbmctdG9wOiAxMDAlO1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgfVxuXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBjbGVhcjogYm90aDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwaWN0dXJlIHtcbiAgICBAaW5jbHVkZSBwb3NpdGlvbihhYnNvbHV0ZSwgMCwgMCwgMCwgMCk7XG5cbiAgICBpbWcge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICB9XG4gIH1cbiAgdmlkZW8ge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgfVxufSIsIi8vIFJlc3BvbnNpdmUgdXRpbGl0aWVzXG5cbi8vXG4vLyBNb3JlIGVhc2lseSBpbmNsdWRlIGFsbCB0aGUgc3RhdGVzIGZvciByZXNwb25zaXZlLXV0aWxpdGllcy5sZXNzLlxuLy8gW2NvbnZlcnRlcl0gJHBhcmVudCBoYWNrXG5AbWl4aW4gcmVzcG9uc2l2ZS12aXNpYmlsaXR5KCRwYXJlbnQpIHtcbiAgI3skcGFyZW50fSB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxuICB0YWJsZSN7JHBhcmVudH0gIHsgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDsgfVxuICB0ciN7JHBhcmVudH0gICAgIHsgZGlzcGxheTogdGFibGUtcm93ICFpbXBvcnRhbnQ7IH1cbiAgdGgjeyRwYXJlbnR9LFxuICB0ZCN7JHBhcmVudH0gICAgIHsgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XG59XG5cbi8vIFtjb252ZXJ0ZXJdICRwYXJlbnQgaGFja1xuQG1peGluIHJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCRwYXJlbnQpIHtcbiAgI3skcGFyZW50fSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG4iLCIkaW1hZ2UtZm9sZGVyOiAnL2Fzc2V0cy93aGl0ZS9pbWFnZXMvJztcblxuLy8gc3R5bGVsaW50LWRpc2FibGVcbiRicmVha3BvaW50czogKFxuICBwaG9uZTogMzIwcHgsXG4gIHBob25lLWxhbmRzY2FwZTogNDgwcHgsXG4gIHRhYmxldDogNzYwcHgsXG4gIHRhYmxldC1sYW5kc2NhcGU6IDk4MHB4LFxuICBzaXRlLWhlYWRlci1kZXNrdG9wOiAxMDI0cHgsXG4gIGRlc2t0b3A6IDEyNjBweCxcbiAgc2NyZWVuLXNpemUtMTM4MDogMTM4MHB4LFxuICBkZXNrdG9wLXdpZGU6IDE2MDBweCxcbiAgZGVza3RvcC1leHRyYS13aWRlOiAxOTIwcHgsXG4pO1xuLy8gc3R5bGVsaW50LWVuYWJsZVxuXG4kei1pbmRleDogKFxuICBwcm9kdWN0LWNhcm91c2VsOiAxMCxcbiAgc2xpZGVzLW5hdmlnYXRvcjogMTAsXG4gIGFyLXBvcHVwOiAxMSxcbiAgcHJldmlldy10aHVtYm5haWxzOiAxMSxcbiAgcGFnZS1vdmVybGF5OiAxMixcbiAgc3RpY2t5LWZvb3RlcjogMTMsXG4gIGZsb2F0aW5nLXRydXN0cGlsb3Q6IDEzLFxuICBmaWx0ZXJzOiAxNSxcbiAgc2VjdXJlZC1wYWdlOiAxNyxcbiAgbmF2OiAyMCxcbiAgbmF2LW1vYmlsZTogMzAsXG4gIGhlYWRlcjogMzMsXG4gIGFnZW50LW1lbnU6IDM0LFxuICBhdXRvY29tcGxldGU6IDM1LFxuICBzZWFyY2gtc3VnZ2VzdGlvbnM6IDM1LFxuICBzdG9jay1zZWFyY2gtY29tbWVudDogMzYsXG4gIGNvb2tpZS1ub3RpZmljYXRpb246IDUwLFxuICBidG4tYmFjay10b3A6IDEwMCxcbiAgc3RpY2t5LWZpbHRlcnMtbW9iaWxlOiAxMDEsXG4gIGNvbmZpZ3VyYXRvcjogMTIwLFxuICBwb3B1cDogMTUwLFxuICBwZHAtcG9wdXA6IDE1MCxcbiAgZnMtYnJvd3NlcjogMTYwLFxuICBjb21wYXJpc29uLXdhbGw6IDE2MCxcbiAgZnMtYnJvd3Nlci10b29sdGlwOiAxNjEsXG4gIGFkZC10by1jYXJ0LW92ZXJsYXk6IDE2MSxcbiAgbWVzc2FnZXM6IDEwMDAsXG4gIGxvYWRpbmctb3ZlcmxheTogOTk5LFxuICBnb29nbGUtYXV0b2NvbXBsZXRlLWRyb3Bkb3duOiAxMDAwMTAsXG4pO1xuXG4kbW9iaWxlLWRlc2t0b3AtYnJlYWtwb2ludDogdGFibGV0LWxhbmRzY2FwZTtcbiRzcGMtYnJlYWtwb2ludDogdGFibGV0O1xuJHRlYXNlci1ndXR0ZXI6IDJyZW07XG4kYm9vdHN0cmFwLWdyaWQtZ3V0dGVyLXdpZHRoOiAycmVtO1xuJHNlYXJjaC1mb3JtLXdpZHRoOiAxM3JlbTtcbiRibG9ja3Mtc3BhY2luZzogM3JlbTtcbiRoZWFkZXItaGVpZ2h0OiA4cmVtO1xuJGhlYWRlci1oZWlnaHQtYmFubmVyOiAkaGVhZGVyLWhlaWdodCArIDIuNHJlbTtcbiRzdGlja3ktaGVhZGVyLWhlaWdodDogNi40cmVtO1xuXG4vLyBwZHBcbiRwcmV2aWV3LWltYWdlLXNpemU6IDUwcmVtO1xuJHByZXZpZXctaW1hZ2UtbWF4LXdpZHRoOiA2MXJlbTtcbiRwcmV2aWV3LWltYWdlLW1heC1oZWlnaHQtbW9iaWxlOiA1MHZoO1xuJHByZXZpZXctaW1hZ2UtbWF4LWhlaWdodDogNjB2aDtcbiRtb2JpbGUtdGFibGV0LWJyZWFrcG9pbnQ6IHRhYmxldDtcbiRtb2JpbGUtZGVza3RvcC1icmVha3BvaW50OiB0YWJsZXQtbGFuZHNjYXBlO1xuJHBkcC1zaWRlYmFyLWNvbnRlbnQtbWF4LXdpZHRoOiAzNnJlbTtcbiRjb25maWd1cmF0b3ItaW1hZ2Utc2l6ZTogNTVyZW07XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=*/