/*! 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.
 */
@import url("https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,300;0,400;0,700;1,300;1,400&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,400;0,500;0,700;1,400;1,500&display=swap");
html {
  line-height: 1.15;
  /* 1 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
}

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

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

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

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

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

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

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

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

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

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

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

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

/* http://meyerweb.com/eric/tools/css/reset/ 
   v2.0 | 20110126
   License: none (public domain)
*/
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, 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,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block;
}

body {
  line-height: 1;
}

ol, ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after,
q:before, q:after {
  content: "";
  content: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

* {
  box-sizing: content-box;
}

:root {
  --color-1: #004b55;
  --color-2: #00C8AA;
  --color-3: #f0f5f6;
  --white: white;
  --black: black;
  --gray: rgb(127, 127, 127);
  --primary-color: var(--color-1);
  --secondary-color: var(--color-2);
  --bg-color: var(--color-3);
  --font-color: #000000;
  --button-color: var(--primary-color);
  --button-active-color: var(--secondary-color);
  --container-width: 67rem;
  --margin-5: 2rem;
  --margin-7: 4rem;
  --margin-8: 5rem;
  --margin-large: var(--margin-7);
  --side-margin: 1.5rem;
  --inner-margin: 1rem;
  --column-gap: 3rem;
  --ff: "Montserrat", sans-serif;
  --font-size: 18px;
  --fs-5: 1rem;
  --fs-6: 1.8rem;
  --fs-8: 2.5rem;
  --fs-9: 3rem;
  --font-weight-3: 300;
  --fw-normal: 500;
  --fw-bold: 700;
  --line-height: 1.75;
  --line-height-heading: 1.33;
  --band-900: 6rem;
  --bp-small: 700px;
  --tablet: var(--bp-small);
}

@media screen and (min-width: 800px) {
  :root {
    --fs-8: 3.3rem;
    --fs-9: 4rem;
  }
  .col-2 h1 {
    --fs-9: 2.5rem;
  }
}
* {
  box-sizing: border-box;
}

html {
  position: relative;
  width: 100%;
  font-family: var(--ff);
  font-size: var(--font-size);
  font-weight: var(--fw-normal);
  line-height: 1.75;
  color: var(--font-color);
  box-sizing: border-box;
  background-color: var(--bg-color);
}

body {
  position: relative;
  line-height: 1.75;
  margin-top: 5rem;
}

.colored {
  background-color: var(--primary-color);
  color: white;
}
.colored svg path {
  fill: currentColor;
}

#sprite {
  display: none;
}

.text p {
  margin-bottom: 1.2rem;
}
.text ul {
  list-style: unset;
  padding-left: 1.3rem;
  margin-bottom: 1rem;
}
.text ol {
  list-style: decimal;
  padding-left: 1.3rem;
  margin-bottom: 1rem;
}
.text h1,
.text h2 {
  font-size: 1.2rem;
  margin-top: 3rem;
  margin-bottom: 0.5rem;
}
.text h3, .text h4 {
  margin-top: 3rem;
  margin-bottom: 0.5rem;
}
.text a {
  color: var(--secondary-color);
}
.text a:hover {
  text-decoration: underline;
}
.text img {
  max-width: 100%;
}

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

h1,
.h1 {
  font-size: var(--fs-8);
  font-weight: var(--fw-bold);
  line-height: var(--line-height-heading);
  line-height: 1.2;
  overflow: hidden;
}

h2,
.h2 {
  font-size: var(--fs-6);
  font-weight: var(--fw-bold);
  line-height: var(--line-height-heading);
}
h2-2,
.h2-2 {
  font-weight: var(--fw-normal);
}

.h2-2 {
  font-size: var(--fs-6);
  font-weight: var(--fw-normal);
  line-height: var(--line-height-heading);
}

h3,
.h3,
h4,
.h4 {
  font-size: var(--fs-5);
  font-weight: var(--fw-bold);
  line-height: var(--line-height-heading);
}

.subtitle {
  font-size: var(--fs-5);
}
.subtitle span {
  color: var(--secondary-color);
}

strong {
  font-weight: var(--fw-bold);
}

hr {
  width: 100%;
  height: 1px;
  border-top: 1px solid #000;
}

.intro {
  display: block;
  margin: 0 auto;
  max-width: 40rem;
  margin-bottom: 4rem;
  padding-inline: var(--side-margin);
}

@media screen and (min-width: 700px) {
  .intro {
    margin-bottom: 8rem;
  }
}
:root {
  --section-margin: 3rem;
}

@media screen and (min-width: 700px) {
  :root {
    --section-margin: 8rem;
  }
}
.cc_section .pagelink {
  display: flex;
  justify-content: center;
  margin-top: var(--section-margin);
}

.split {
  position: relative;
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  margin-block: 1rem;
}
.split__image {
  position: relative;
  width: 100%;
  margin-bottom: var(--side-margin);
  display: grid;
  place-content: center;
}
.split__image img {
  object-fit: contain;
  width: 100%;
  height: 100%;
  max-width: 24rem;
  max-height: 24rem;
}
.split__icon {
  position: relative;
  display: flex;
  place-content: center;
}
.split__icon svg {
  max-width: 15rem;
}
.split__text {
  display: flex;
  flex-direction: column;
  align-items: start;
  place-content: center;
  padding: var(--inner-margin);
}
@media screen and (min-width: 700px) {
  .split {
    grid-template-columns: repeat(2, 1fr);
  }
  .split__image {
    margin-bottom: unset;
  }
}

.segment.header-image {
  margin-top: var(--margin-8);
}
.segment.header-image img {
  width: 100%;
}

.pagination {
  position: relative;
  display: flex;
  gap: 0.5rem;
  flex-direction: row;
  flex-wrap: wrap;
  grid-template-columns: 1fr;
  justify-content: center;
}
.pagination li {
  transition: all 0.3s ease;
  width: 3rem;
  height: 3rem;
  border-radius: 50%;
  padding: 0.5rem;
  display: flex;
  justify-content: center;
  align-items: center;
  aspect-ratio: 1;
  background-color: white;
  color: var(--primary-color);
  font-weight: 700;
  cursor: pointer;
}
.pagination li.active, .pagination li[aria-current=true], .pagination li:hover {
  background-color: var(--primary-color);
  color: white;
}

.pagewidth {
  padding-left: 1rem;
  padding-right: 1rem;
}

/* --- Some container definitions --- */
.container, .cnt {
  max-width: var(--container-width);
  margin-inline: auto;
  overflow: hidden;
}
.container.border, .cnt.border {
  border-bottom: 1px solid gray;
}
.container--block, .cnt--block {
  margin-bottom: 2rem;
  padding-block: 2rem;
}
.container--large, .cnt--large {
  position: relative;
  max-width: 80rem;
}
.container--small, .cnt--small {
  max-width: 50rem;
}

.cc_section .container {
  padding-block: var(--section-margin);
}

.segment {
  --segment-space: 3rem;
  margin-top: var(--segment-space);
  margin-bottom: var(--segment-space);
}
.segment--border {
  padding-bottom: var(--segment-space);
  border-bottom: 1px solid var(--font-color);
}
.segment--colored {
  background-color: var(--primary-color);
  color: white;
  padding-top: var(--segment-space);
  padding-bottom: var(--segment-space);
}
.segment--colored-secondary {
  color: var(--font-color);
  background-color: var(--secondary-color);
  padding-top: var(--segment-space);
  padding-bottom: var(--segment-space);
}
@media screen and (min-width: 67rem) {
  .segment--large {
    --segment-space: 6rem;
  }
}

.block {
  display: block;
}

/* --- Some column default --- */
.col {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--column-gap);
}
.col img {
  object-fit: contain;
  width: 100%;
}

@media screen and (min-width: 67rem) {
  .col__duo {
    grid-template-columns: repeat(2, 1fr);
  }
  .col__trio {
    grid-template-columns: repeat(3, 1fr);
  }
}
.text-padding, .tp {
  padding-inline: var(--side-margin);
}
@media screen and (min-width: 78rem) {
  .text-padding, .tp {
    padding-inline: 0;
  }
}

.goldsnit {
  display: grid;
  grid-template-columns: 1fr;
}
.goldsnit__title {
  padding-right: 2rem;
  font-size: 1.5rem;
  margin-bottom: 1rem;
}
.goldsnit__body p {
  margin-bottom: 1.2rem;
}
.goldsnit__body ul {
  list-style: unset;
  padding-left: 1.3rem;
  margin-bottom: 1rem;
}
.goldsnit__body ol {
  list-style: decimal;
  padding-left: 1.3rem;
  margin-bottom: 1rem;
}
.goldsnit__body h1,
.goldsnit__body h2 {
  font-size: 1.2rem;
  margin-top: 3rem;
  margin-bottom: 0.5rem;
}
.goldsnit__body h3, .goldsnit__body h4 {
  margin-top: 3rem;
  margin-bottom: 0.5rem;
}
.goldsnit__body a {
  color: var(--secondary-color);
}
.goldsnit__body a:hover {
  text-decoration: underline;
}
.goldsnit__body img {
  max-width: 100%;
}

@media screen and (min-width: 700px) {
  .goldsnit {
    grid-template-columns: 1fr 3fr;
  }
  .goldsnit__title {
    padding-right: 2rem;
    font-size: 1rem;
  }
}
.container--padded {
  padding-left: 1rem;
  padding-right: 1rem;
}

@media screen and (min-width: 79rem) {
  .container--padded {
    padding-left: 0;
    padding-right: 0;
  }
}
.title {
  position: relative;
  display: inline-block;
  margin-bottom: 4rem;
}
.title::after {
  content: "";
  position: absolute;
  width: 2rem;
  height: 0.5rem;
  background-color: var(--secondary-color);
  left: 0;
  bottom: -2rem;
  border-radius: 0 0.2em 0 0.2em;
}

@media screen and (min-width: 700px) {
  .title {
    position: relative;
    display: block;
    margin-bottom: 3rem;
    max-width: 20rem;
    margin: 0 auto 4rem auto;
    text-align: center;
  }
  .title::after {
    content: "";
    display: flex;
    position: absolute;
    bottom: -2rem;
    left: 50%;
    transform: translate(-50%);
    width: 2rem;
    height: 0.5rem;
    border-radius: 0 0.2em 0 0.2em;
    background-color: var(--secondary-color);
  }
}
.topbar {
  display: grid;
  position: fixed;
  grid-template-columns: 1fr auto;
  align-content: center;
  top: 0;
  left: 0;
  width: 100%;
  height: 5rem;
  z-index: 100;
  background-color: white;
  padding-inline: var(--side-margin);
}
.topbar .topbar-logo {
  position: relative;
  display: grid;
  height: 100%;
  align-items: center;
}
.topbar .topbar-logo img {
  display: block;
  height: 1.8rem;
}
.topbar .btn-navigation-open {
  display: flex;
  align-items: center;
}
.topbar .hamburger {
  position: relative;
  display: grid;
  align-content: space-between;
  height: 1.4rem;
  width: 1.4rem;
  cursor: pointer;
}
.topbar .hamburger span {
  display: block;
  background-color: black;
  height: 5px;
  border: none;
  width: 100%;
  border-radius: 0.5rem 0 0.5rem 0;
}

@media screen and (min-width: 700px) {
  .topbar .logo img {
    height: 2.5rem;
  }
  :root {
    --section-margin: 8rem;
  }
}
.header--default {
  padding-block: 3rem;
  --fs-9: 2rem;
}
.header--default h1 {
  padding-inline: var(--side-margin);
}

@media screen and (min-width: 700px) {
  .header--default {
    --fs-9: 2.5rem;
  }
  .header--default h1 {
    padding-inline: 0;
  }
}
:root {
  --banner-height: 30rem;
  --banner-half-height: 15rem;
  --banner-margin: 2rem;
}

.banner-outer {
  background: linear-gradient(to right, var(--primary-color), var(--primary-color) 50%, var(--secondary-color) 50%, var(--secondary-color));
}

.banner {
  position: relative;
  background-color: var(--secondary-color);
  height: var(--banner-height);
}

.banner__top {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  height: 100%;
  width: calc(100% - var(--banner-half-height));
  background-color: var(--primary-color);
  border-radius: 0 20rem 20rem 0;
}

.banner__image {
  isolation: isolate;
  position: absolute;
  right: 2rem;
  top: 0;
  height: var(--banner-height);
  width: var(--banner-height);
}
.banner__image img {
  position: relative;
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 50%;
}
.banner__image::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: var(--banner-height);
  height: var(--banner-height);
  background-color: #fff;
  border-radius: 50%;
  opacity: 0.8;
  mask-image: url(/site/templates/resources/circle.svg);
  mask-size: 100%;
  mask-position: -15rem 50%;
  mask-repeat: block no-repeat;
  -webkit-mask-image: url(/site/templates/resources/circle.svg);
  -webkit-mask-size: 100%;
  -webkit-mask-position: -15rem 50%;
  -webkit-mask-repeat: no-repeat;
}

.banner__text {
  position: absolute;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 2rem;
  left: 0;
  top: 0;
  width: 50%;
  width: 45%;
  height: 100%;
  padding-left: 2rem;
}

:root {
  --bv-height: 40rem;
  --bv-overlap: 10rem;
  --bv-offset: 9rem;
  --bv-color: var(--white);
}

.bv {
  background-color: var(--secondary-color);
  color: var(--bv-color);
  position: relative;
  display: grid;
  grid-template-rows: 28rem minmax(14rem, auto);
  overflow: hidden;
}
.bv .img-wrap {
  position: relative;
  border-radius: 0 0 50vw 50vw;
  overflow: hidden;
  z-index: 2;
}
.bv .img-wrap img {
  position: relative;
  object-fit: cover;
  width: 100%;
  height: 100%;
}
.bv .img-wrap::after {
  content: "";
  position: absolute;
  display: block;
  width: 100%;
  bottom: var(--bv-overlap);
  left: 0;
  width: 100vw;
  width: 100%;
  aspect-ratio: 1;
  transform: translateY(100%);
  z-index: 100;
  border-radius: 50%;
  background-color: var(--white);
  opacity: 0.5;
}
.bv .img-wrap::after .bv .subtitle {
  margin: 2rem 0;
}
.bv .img-wrap::after .bv[data-inverted=true] {
  --primary-color: var(--color-2);
  --secondary-color: var(--color-1);
  color: var(--black);
}
.bv .img-wrap::after .bv p.subtitle {
  margin: 4rem 0 0 0;
}
.bv .img-wrap::after .col .bv {
  --bv-height: 22rem;
  --primary-color: var(--color-2);
  --secondary-color: var(--color-1);
  --bv-color: var(--black);
  --bv-overlap: 10rem;
  --bv-offset: 5rem;
}
.bv .img-wrap::after .col .bv p.subtitle {
  margin-top: 1rem;
}
.bv .text-wrap {
  position: relative;
  display: grid;
}
.bv .text-wrap::before {
  content: "";
  position: absolute;
  background-color: var(--primary-color);
  top: calc(-1 * var(--bv-overlap));
  height: calc(100% + var(--bv-overlap));
  width: 100%;
  border-radius: 50vw 50vw 0 0;
  z-index: 0;
}
.bv .text-wrap .inner {
  position: relative;
  z-index: 1;
  padding-inline: var(--side-margin);
  padding-block: 4rem;
}

.bv .subtitle {
  margin: 2rem 0;
}
.bv[data-inverted=true] {
  --primary-color: var(--color-2);
  --secondary-color: var(--color-1);
  color: var(--black);
}
.bv p.subtitle {
  margin: 4rem 0 0 0;
  margin-top: 1rem;
}

.col .bv {
  --bv-height: 22rem;
  --primary-color: var(--color-2);
  --secondary-color: var(--color-1);
  --bv-color: var(--black);
  --bv-overlap: 10rem;
  --bv-offset: 5rem;
}

.col .bv p.subtitle {
  margin-top: 1rem;
}

@media screen and (min-width: 800px) {
  .bv {
    --bv-overlap: 18rem;
    position: relative;
    display: grid;
    grid-template-rows: unset;
    grid-template-columns: calc(50% - var(--bv-overlap) / 2 + var(--bv-offset)) calc(50% + var(--bv-overlap) / 2 - var(--bv-offset));
    grid-template-columns: calc(50% + var(--bv-offset) - var(--bv-overlap) / 2) calc(50% - var(--bv-offset) + var(--bv-overlap) / 2);
    height: var(--bv-height);
  }
  .bv .img-wrap {
    position: relative;
    order: 2;
    height: 100%;
    overflow: hidden;
    border-radius: var(--bv-height) 0 0 var(--bv-height);
    overflow: hidden;
  }
  .bv .img-wrap::after {
    content: "";
    position: absolute;
    display: block;
    top: 0;
    left: var(--bv-overlap);
    width: var(--bv-height);
    height: var(--bv-height);
    transform: unset;
    transform: translateX(-100%);
    border-radius: 50%;
    background-color: var(--white);
  }
  .bv .text-wrap {
    place-items: center start;
  }
  .bv .text-wrap::before {
    content: "";
    position: absolute;
    top: 0;
    left: unset;
    right: calc(-1 * var(--bv-overlap));
    width: calc(100% + var(--bv-overlap));
    height: 100%;
    border-radius: 0 var(--bv-height) var(--bv-height) 0;
    background-color: var(--primary-color);
  }
  .bv .text-wrap .inner {
    position: absolute;
    max-width: 53rem;
    width: calc(100% + var(--bv-overlap));
    right: calc(-1 * var(--bv-overlap));
    z-index: 20;
    padding-inline: var(--side-margin) var(--bv-overlap);
  }
  .bv .text-wrap .inner h1 {
    max-width: 30rem;
  }
  .bv .text-wrap .inner p {
    padding-right: 4rem;
  }
}
.bv h1 + p {
  margin-top: 2rem;
}

.iconlist {
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  gap: var(--margin-5);
  margin-block: var(--margin-5);
}
.iconlist__item {
  display: grid;
  justify-items: center;
  text-align: center;
  gap: 1rem;
}
.iconlist__icon {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 3rem;
  height: 3rem;
  border-radius: 50%;
  background-color: white;
  background-image: url(/site/templates/resources/icons/transport.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 2rem;
  padding: 1rem;
}

@media screen and (min-width: 700px) {
  .iconlist {
    grid-template-columns: repeat(2, 1fr);
  }
  .iconlist__item {
    display: grid;
    grid-template-columns: auto 1fr;
    justify-items: start;
    text-align: left;
    gap: 1rem;
  }
}
.image-intro {
  position: relative;
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--column-gap);
}
.image-intro img {
  width: 100%;
}
.image-intro__text {
  font-weight: var(--fw-bold);
}

@media screen and (min-width: 67rem) {
  .image-intro {
    grid-template-columns: 3fr 2fr;
  }
}
.team-members {
  display: flex;
  gap: 3rem;
  flex-wrap: wrap;
  justify-content: center;
}
.team-members > * {
  flex: 1 1 18rem;
}
@media screen and (min-width: 67rem) {
  .team-members {
    padding-inline: 0;
  }
}

.member {
  position: relative;
  display: grid;
  grid-template-rows: 5fr 2fr 1fr;
  grid-template-rows: 22rem 10rem auto;
  background-color: #fff;
  background-color: var(--white);
  max-width: 21rem;
}
.member h2,
.member h3,
.member h4 {
  font-size: var(--fs-5);
}
.member__image {
  height: auto;
  overflow: hidden;
}
.member__image img {
  transition: all 4s ease;
  object-fit: cover;
  width: 100%;
  height: 100%;
}
.member__image:hover img {
  transform-origin: center;
  transform: scale(1.2);
}
.member__text {
  padding: 1.5rem;
}
.member__footer {
  padding-inline: 2rem;
  display: flex;
  justify-content: start;
  gap: 1rem;
  padding-bottom: 1.5rem;
}

.swiper-team .member {
  max-width: none;
}

.cv img {
  margin-bottom: 2rem;
}
.cv__tel {
  display: block;
  margin-bottom: 1rem;
}

:root {
  --bullet-size: 7rem;
}

.bullets {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  justify-content: start;
  gap: 2rem;
  padding-inline: var(--side-margin);
}

@media screen and (min-width: 600px) {
  .bullets {
    flex-direction: row;
    justify-content: center;
  }
}
@media screen and (min-width: 1300px) {
  .bullets {
    justify-content: space-between;
    justify-content: space-around;
  }
}
.bullet {
  position: relative;
  display: flex;
  gap: 2rem;
  justify-content: start;
}
.bullet h2,
.bullet h3,
.bullet h4,
.bullet h5 {
  line-height: 1.5;
  font-size: var(--fs-5);
}
.bullet__icon-wrap {
  transition: all 0.5s ease-in-out;
  display: flex;
  place-content: center;
  border-radius: 50%;
  background-color: white;
  width: var(--bullet-size);
  height: var(--bullet-size);
  padding: 0.5rem;
  aspect-ratio: 1/1;
}
.bullet__caption {
  transition: all 0.5s ease-in-out;
  display: flex;
  justify-content: center;
  flex-direction: column;
  align-items: left;
  text-align: left;
}

@media screen and (min-width: 600px) {
  :root {
    --bullet-size: 9.5rem;
  }
  .bullet {
    position: relative;
    display: flex;
    gap: 2rem;
    justify-content: start;
    flex-direction: column;
    align-items: center;
  }
  .bullet h2,
  .bullet h3,
  .bullet h4,
  .bullet h5 {
    line-height: 1.5;
    font-size: var(--fs-5);
  }
  .bullet__icon-wrap {
    transition: all 0.5s ease-in-out;
    display: flex;
    place-content: center;
    border-radius: 50%;
    background-color: white;
    width: var(--bullet-size);
    height: var(--bullet-size);
    padding: 0.5rem;
    aspect-ratio: 1/1;
  }
  .bullet__caption {
    transition: all 0.5s ease-in-out;
    display: flex;
    justify-content: center;
    flex-direction: column;
    align-items: left;
    text-align: left;
  }
  .bullet__icon-wrap {
    width: var(--bullet-size);
    height: var(--bullet-size);
  }
  .bullet__caption {
    text-align: center;
    align-items: center;
    max-width: 11rem;
  }
}
.filter-bullets {
  --bullet-size: 4rem;
  display: grid;
  gap: 2rem;
  grid-template-columns: repeat(1, 1fr);
}
@media screen and (min-width: 600px) {
  .filter-bullets {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media screen and (min-width: 800px) {
  .filter-bullets {
    grid-template-columns: repeat(3, 1fr);
  }
}
.filter-bullets .filter-bullet {
  transition: all 1.3s ease-in-out;
  position: relative;
  display: flex;
  gap: 2rem;
  justify-content: start;
  color: var(--gray);
}
.filter-bullets .filter-bullet h2,
.filter-bullets .filter-bullet h3,
.filter-bullets .filter-bullet h4,
.filter-bullets .filter-bullet h5 {
  line-height: 1.5;
  font-size: var(--fs-5);
}
.filter-bullets .filter-bullet__icon-wrap {
  transition: all 0.5s ease-in-out;
  display: flex;
  place-content: center;
  border-radius: 50%;
  background-color: white;
  width: var(--bullet-size);
  height: var(--bullet-size);
  padding: 0.5rem;
  aspect-ratio: 1/1;
}
.filter-bullets .filter-bullet__caption {
  transition: all 0.5s ease-in-out;
  display: flex;
  justify-content: center;
  flex-direction: column;
  align-items: left;
  text-align: left;
}
.filter-bullets .filter-bullet svg {
  filter: grayscale(100%);
  opacity: 0.3;
}
.filter-bullets .filter-bullet:hover, .filter-bullets .filter-bullet.active {
  color: inherit;
}
.filter-bullets .filter-bullet:hover svg, .filter-bullets .filter-bullet.active svg {
  filter: grayscale(0);
  opacity: 1;
}
.filter-bullets .filter-bullet .bullet__caption {
  text-align: left;
}

.logo-bullet {
  padding: 1.1rem;
}

.logo {
  position: relative;
  display: flex;
  height: 9rem;
  padding: 1rem;
}
.logo img, .logo svg {
  height: 100%;
}

.logo--square, .logo--disc {
  display: flex;
  aspect-ratio: 1/1;
  background-color: white;
}
.logo--square img, .logo--disc img {
  object-fit: contain;
  width: 100%;
}

.logo--disc {
  border-radius: 50%;
}

.quote {
  padding: var(--segment-space);
}
.quote__title {
  margin-bottom: 2rem;
  color: var(--secondary-color);
}
.quote__organisation {
  margin-top: 2rem;
  font-style: italic;
}

.segment--colored-secondary .quote__title {
  color: var(--font-color);
}

:root {
  --icon-color: var(--primary-color);
}

.icon-strip {
  display: flex;
  flex-direction: row;
  gap: 1rem;
}

.icon {
  position: relative;
  display: block;
  background-color: var(--primary-color);
  height: 2.7rem;
  width: 2.7rem;
  padding: 0.5rem;
  border-radius: 50%;
  transition: all 0.25s ease-in-out;
  margin-top: 0.3rem;
}
.icon:after {
  content: "";
  display: block;
  background-color: var(--white);
  height: 100%;
  width: 100%;
}
.icon:hover {
  background-color: var(--secondary-color);
}
.icon--mail::after {
  mask-image: url(/src/svg/cleaned/mail.svg);
  -webkit-mask-image: url(/src/svg/cleaned/mail.svg);
}
.icon--linkedin:after {
  mask-image: url(/src/svg/cleaned/linkedin.svg);
  -webkit-mask-image: url(/src/svg/cleaned/linkedin.svg);
}

.strip {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 2rem;
}

.bv address p a {
  display: block;
}

.duocol .icon-strip {
  margin-top: var(--margin-7);
}

.topper .backlink {
  display: block;
  padding: var(--margin-8) 0;
}
.topper .backlink::before {
  content: "< ";
}
.topper .h2-2 {
  font-weight: var(--fw-normal);
}

.offcanvas {
  position: fixed;
  top: 0;
  right: 0;
  width: 30%;
  min-width: 20rem;
  height: 100vh;
  background-color: var(--secondary-color);
  z-index: 10000;
  transition: all 0.3s ease-in-out;
  transform: translateX(110%);
}

.offcanvas[data-isopen=true] {
  transform: translateX(0);
}

.offcanvas[data-isopen=false] {
  transform: translateX(110%);
}

.navigation {
  display: grid;
  position: relative;
  height: 100%;
  grid-template-rows: 5rem 1fr;
}
.navigation .navigation__top {
  display: grid;
  justify-content: end;
  align-items: center;
  margin-right: 2rem;
}
.navigation .navigation__top .btn-navigation-close {
  display: grid;
  position: relative;
  width: 2rem;
  height: 2rem;
  align-content: center;
  cursor: pointer;
}
.navigation .navigation__top .btn-navigation-close::before {
  content: "";
  display: block;
  height: 7px;
  width: 2rem;
  border-radius: 0 0.35rem 0 0.35rem;
  grid-area: 1/1;
  transform-origin: center;
  transform: rotate(-45deg);
  background-color: black;
}
.navigation .navigation__top .btn-navigation-close::after {
  content: "";
  display: block;
  height: 7px;
  width: 2rem;
  border-radius: 0.35rem 0 0.35rem 0;
  grid-area: 1/1;
  transform-origin: center;
  transform: rotate(45deg);
  background-color: black;
}
.navigation .menu {
  height: 100%;
  font-size: 1.6rem;
  font-weight: var(--fw-bold);
  padding: 4rem;
}
.navigation .menu li {
  margin-bottom: 0.8rem;
}
.navigation .menu li a {
  transition: all 0.2s ease-out;
  display: inline-block;
}
.navigation .menu li a:hover {
  transform: translateX(5%);
}

.text address p {
  margin: 0;
}

.pagelink {
  margin-top: 0;
}
@media screen and (min-width: 700px) {
  .pagelink {
    margin-top: var(--segment-space);
    text-align: center;
  }
}

.swiper-references .bv {
  --bv-height: 22rem;
  --primary-color: var(--color-2);
  --secondary-color: var(--color-1);
  --bv-color: var(--black);
  --bv-overlap: 10rem;
  --bv-offset: 5rem;
}

.btn-wrap {
  position: relative;
  display: flex;
  gap: 1rem;
  height: 5rem;
  z-index: 10;
  top: 40%;
  justify-content: start;
  margin-top: 1rem;
  margin: 1rem auto;
  max-width: var(--container-width);
}
@media screen and (min-width: 85rem) {
  .btn-wrap {
    position: absolute;
    justify-content: space-between;
    width: 100%;
    max-width: none;
  }
}

.swiper-btn {
  position: relative;
  background-color: #fff;
  height: 3.5rem;
  width: 3.5rem;
  padding: 0.7rem;
  border-radius: 50%;
  z-index: 1000;
  cursor: pointer;
}
.swiper-btn svg path {
  fill: var(--primary-color);
}
.swiper-btn--prev {
  left: 0;
  transform: scaleX(-1);
}
.swiper-btn--next {
  right: 0;
}

.blogs {
  position: relative;
  display: grid;
  gap: 2rem;
  grid-template-columns: repeat(auto-fit, minmax(18rem, 1fr));
}

.blog {
  flex: 1 1 33%;
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: 2rem;
  background-color: var(--secondary-color);
  min-height: 22rem;
  transition: all 0.2s ease-in-out;
}
.blog__date {
  border-bottom: 1px solid currentColor;
  padding-bottom: 1rem;
  margin-bottom: 1rem;
}
.blog h2 {
  line-height: 1.7rem;
  font-size: 1.6rem;
  margin-bottom: auto;
  word-break: break-word;
}
.blog__subtitle {
  line-height: 1.3rem;
  margin-bottom: auto;
}
.blog .auteurs {
  margin-top: 1rem;
  font-style: italic;
}
.blog .auteur {
  font-style: italic;
  line-height: 1.3rem;
}
.blog .auteur span {
  display: block;
}
.blog:hover {
  background-color: var(--primary-color);
  color: white;
}

@media screen and (min-width: 50rem) {
  .blog {
    max-width: 30rem;
  }
}
.tmpl-blog {
  --container-width: 50rem;
}

.thumbnail {
  display: flex;
  position: relative;
  color: currentColor;
  margin-top: 0.5rem;
}
.thumbnail img {
  position: relative;
  object-fit: cover;
  width: 3rem;
  height: 3rem;
  border-radius: 50%;
}
.thumbnail p {
  font-size: 0.8rem;
  display: flex;
  gap: 0.5rem;
  padding: 0 1rem;
  align-items: center;
  text-decoration: none;
}

.thumbnails ul {
  display: grid;
  justify-content: start;
  grid-template-columns: repeat(2, 1fr);
  list-style: none;
  padding: 0;
  margin: 0;
}
.thumbnails h2 {
  margin-bottom: 1rem;
}

.footer {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 4rem;
  margin-top: 10rem;
  text-align: center;
  align-items: center;
}
.footer .footer-logo svg {
  width: 3rem;
}
.footer p {
  max-width: 20rem;
}
.footer .bottom-strip {
  position: relative;
  width: 100%;
  background-color: var(--white);
  padding-block: 2rem;
}
.footer .bottom-strip ul {
  display: flex;
  flex-direction: column;
  justify-content: center;
  font-size: 0.7rem;
  gap: 2rem;
  justify-content: center;
}
.footer a:hover {
  text-decoration: underline;
}

@media screen and (min-width: 700px) {
  .footer .bottom-strip {
    padding-block: unset;
    height: 7rem;
  }
  .footer .bottom-strip ul {
    height: 100%;
    display: flex;
    flex-direction: row;
    align-items: center;
    font-size: 0.7rem;
    gap: 2rem;
    margin-right: 2rem;
  }
}
.filter {
  --primary-color-fontcolor: white;
  --filter-top-margin: 25rem;
}

.filter__topics {
  display: inline-flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  font-size: 0.8rem;
}
.filter__topics span {
  background-color: black;
  color: white;
  border-radius: 0.5rem;
}

@media screen and (min-width: 600px) {
  .filter__topics {
    font-size: 1rem;
  }
}
.topics-container {
  display: grid;
  position: relative;
  padding: 0 1rem;
  background-color: var(--primary-color);
  grid-template-columns: 1fr;
  grid-template-rows: 1fr;
  overflow: hidden;
}

.topic {
  position: relative;
  grid-row-start: 1;
  grid-column-start: 1;
  top: 0;
  left: 0;
  width: 100%;
  height: var(--filter-top-margin);
  display: grid;
  gap: 1rem;
  padding: 1rem 0;
  line-height: 1.3;
  border-bottom: 1px solid white;
  background-color: var(--primary-color);
  z-index: 1;
  color: var(--primary-color-fontcolor);
  margin-top: calc(-1 * var(--filter-top-margin));
}
.topic[data-state=active] {
  margin-top: 0;
}
.topic fieldset {
  position: relative;
}
.topic label {
  display: inline-block;
  margin-left: 0.5rem;
}
.topic input:disabled {
  opacity: 0.2;
}
.topic h2 {
  font-size: 1.2rem;
}
.topic fieldset {
  overflow-y: auto;
}
.topic fieldset legend {
  display: none;
}
.topic fieldset::-webkit-scrollbar-track {
  background-color: #F5F5F5;
}
.topic fieldset::-webkit-scrollbar {
  width: 22px;
  background-color: #F5F5F5;
  margin-right: 2rem;
}
.topic fieldset::-webkit-scrollbar-thumb {
  background-color: var(--secondary-color);
}

@media screen and (min-width: 800px) {
  .filter {
    --filter-top-margin: 20rem;
  }
  .topic {
    grid-template-columns: 13rem 1fr;
    padding: 2rem;
    line-height: 1.3;
    transition: all 0.3s ease-in-out;
  }
}
.topic__list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-template-columns: repeat(auto-fit, minmax(15rem, 1fr));
}
.topic__list div span {
  display: inline-block;
}

.button,
button {
  display: inline-block;
  background-color: var(--button-color);
  color: var(--white);
  font-weight: var(--fw-bold);
  padding: 0.8em 1.5em;
  border-radius: 2.5em;
  margin-block: 1em;
  cursor: pointer;
  box-shadow: none;
  border: none;
  transition: all 0.25s ease;
}
.button:hover, .button[data-state=active], .button.active,
button:hover,
button[data-state=active],
button.active {
  background-color: var(--button-active-color);
}
.button--inverse, .colored .button, .bv .button,
button--inverse,
.colored button,
.bv button {
  --button-color: var(--secondary-color);
  --button-active-color: var(--primary-color);
}
.button--hollow,
button--hollow {
  border: 1px solid white;
}
.button--small,
button--small {
  font-size: 0.8em;
}
.button .amount,
button .amount {
  display: none;
  font-size: 0.7em;
  background-color: var(--secondary-color);
  padding: 0.2rem;
  transform: translateX(30%);
  aspect-ratio: 1/1;
  width: 1rem;
}
.button .amount.active,
button .amount.active {
  display: inline-block;
}

.tmpl-home .bv h1 {
  font-size: var(--fs-9);
}

.tmpl-home .bv h1 + p.subtitle {
  margin: 4rem 0 0 0;
}

.tmpl-team_member .icon-strip {
  margin-bottom: 2rem;
}

.tmpl-reference .bullets {
  display: grid;
  grid-template-columns: repeat(1, 1fr);
}

@media screen and (min-width: 700px) {
  .tmpl-reference .bullets {
    grid-template-columns: repeat(3, 1fr);
  }
  .tmpl-reference .bullets .bullet .bullet__caption {
    max-width: none;
  }
}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIjEtYmFzZS9fbm9ybWFsaXplLnNjc3MiLCIxLWJhc2UvX3NldHRpbmdzLnNjc3MiLCIxLWJhc2UvX3Jlc2V0LnNjc3MiLCIxLWJhc2UvX2Jhc2Uuc2NzcyIsIjEtYmFzZS9fbGF5b3V0cy5zY3NzIiwiMS1iYXNlL190eXBvLnNjc3MiLCIyLWNvbXBvbmVudHMvX3RvcGJhci5zY3NzIiwiMi1jb21wb25lbnRzL19oZWFkZXIuc2NzcyIsIjItY29tcG9uZW50cy9iYW5uZXIuc2NzcyIsIjItY29tcG9uZW50cy9fYnJhbmQtdmlzdWFsLnNjc3MiLCIyLWNvbXBvbmVudHMvaWNvbmxpc3Quc2NzcyIsIjItY29tcG9uZW50cy9faW1hZ2UtaW50cm8uc2NzcyIsIjItY29tcG9uZW50cy9fdGVhbS5zY3NzIiwiMi1jb21wb25lbnRzL19maWx0ZXItYnVsbGV0cy5zY3NzIiwiMi1jb21wb25lbnRzL19sb2dvLnNjc3MiLCIyLWNvbXBvbmVudHMvX3F1b3RlLnNjc3MiLCIyLWNvbXBvbmVudHMvX21pc2Muc2NzcyIsIjItY29tcG9uZW50cy9fYmxvZ3Muc2NzcyIsIjItY29tcG9uZW50cy9fdGh1bWJuYWlsLnNjc3MiLCIyLWNvbXBvbmVudHMvX2Zvb3Rlci5zY3NzIiwiMi1jb21wb25lbnRzL19maWx0ZXJzLnNjc3MiLCIyLWNvbXBvbmVudHMvX2J1dHRvbnMuc2NzcyIsIjMtdGVtcGxhdGVzL3RlbXBsYXRlcy1kaXIuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtBQUVBO0FBQUE7QUFHQTtBQUFBO0FBQUE7QUFBQTtBQ0xRO0FBQ0E7QURTUjtFQUNFO0FBQ0E7RUFDQTtBQUNBOzs7QUFHRjtBQUFBO0FBR0E7QUFBQTtBQUFBO0FBSUE7RUFDRTs7O0FBR0Y7QUFBQTtBQUFBO0FBSUE7RUFDRTs7O0FBR0Y7QUFBQTtBQUFBO0FBQUE7QUFLQTtFQUNFO0VBQ0E7OztBQUdGO0FBQUE7QUFHQTtBQUFBO0FBQUE7QUFBQTtBQUtBO0VBQ0U7QUFDQTtFQUNBO0FBQ0E7RUFDQTtBQUNBOzs7QUFHRjtBQUFBO0FBQUE7QUFBQTtBQUtBO0VBQ0U7QUFDQTtFQUNBO0FBQ0E7OztBQUdGO0FBQUE7QUFHQTtBQUFBO0FBQUE7QUFJQTtFQUNFOzs7QUFHRjtBQUFBO0FBQUE7QUFBQTtBQUtBO0VBQ0U7QUFDQTtFQUNBO0FBQ0E7RUFDQTtBQUNBOzs7QUFHRjtBQUFBO0FBQUE7QUFJQTtBQUFBO0VBRUU7OztBQUdGO0FBQUE7QUFBQTtBQUFBO0FBS0E7QUFBQTtBQUFBO0VBR0U7QUFDQTtFQUNBO0FBQ0E7OztBQUdGO0FBQUE7QUFBQTtBQUlBO0VBQ0U7OztBQUdGO0FBQUE7QUFBQTtBQUFBO0FBS0E7QUFBQTtFQUVFO0VBQ0E7RUFDQTtFQUNBOzs7QUFHRjtFQUNFOzs7QUFHRjtFQUNFOzs7QUFHRjtBQUFBO0FBR0E7QUFBQTtBQUFBO0FBSUE7RUFDRTs7O0FBR0Y7QUFBQTtBQUdBO0FBQUE7QUFBQTtBQUFBO0FBS0E7QUFBQTtBQUFBO0FBQUE7QUFBQTtFQUtFO0FBQ0E7RUFDQTtBQUNBO0VBQ0E7QUFDQTtFQUNBO0FBQ0E7OztBQUdGO0FBQUE7QUFBQTtBQUFBO0FBS0E7QUFBQTtBQUVFO0VBQ0E7OztBQUdGO0FBQUE7QUFBQTtBQUFBO0FBS0E7QUFBQTtBQUVFO0VBQ0E7OztBQUdGO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQUFBO0VBSUU7OztBQUdGO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQUFBO0VBSUU7RUFDQTs7O0FBR0Y7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBQUE7RUFJRTs7O0FBR0Y7QUFBQTtBQUFBO0FBSUE7RUFDRTs7O0FBR0Y7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBT0E7RUFDRTtBQUNBO0VBQ0E7QUFDQTtFQUNBO0FBQ0E7RUFDQTtBQUNBO0VBQ0E7QUFDQTtFQUNBO0FBQ0E7OztBQUdGO0FBQUE7QUFBQTtBQUlBO0VBQ0U7OztBQUdGO0FBQUE7QUFBQTtBQUlBO0VBQ0U7OztBQUdGO0FBQUE7QUFBQTtBQUFBO0FBS0E7QUFBQTtFQUVFO0FBQ0E7RUFDQTtBQUNBOzs7QUFHRjtBQUFBO0FBQUE7QUFJQTtBQUFBO0VBRUU7OztBQUdGO0FBQUE7QUFBQTtBQUFBO0FBS0E7RUFDRTtBQUNBO0VBQ0E7QUFDQTs7O0FBR0Y7QUFBQTtBQUFBO0FBSUE7RUFDRTs7O0FBR0Y7QUFBQTtBQUFBO0FBQUE7QUFLQTtFQUNFO0FBQ0E7RUFDQTtBQUNBOzs7QUFHRjtBQUFBO0FBR0E7QUFBQTtBQUFBO0FBSUE7RUFDRTs7O0FBR0Y7QUFBQTtBQUFBO0FBSUE7RUFDRTs7O0FBR0Y7QUFBQTtBQUdBO0FBQUE7QUFBQTtBQUlBO0VBQ0U7OztBQUdGO0FBQUE7QUFBQTtBQUlBO0VBQ0U7OztBRXpYRjtBQUFBO0FBQUE7QUFBQTtBQUtBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0VBYUM7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFRDtBQUNBO0FBQUE7RUFFQzs7O0FBRUQ7RUFDQzs7O0FBRUQ7RUFDQzs7O0FBRUQ7RUFDQzs7O0FBRUQ7QUFBQTtFQUVDO0VBQ0E7OztBQUVEO0VBQ0M7RUFDQTs7O0FBRUQ7RUFDQzs7O0FEM0NEO0VBRUk7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUVBO0VBQ0E7RUFFQTtFQUNBO0VBR0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUdBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFHQTtFQUdBO0VBQ0E7OztBQUtKO0VBQ0k7SUFDSTtJQUNBOztFQUdBO0lBQ0k7OztBRWxFWjtFQUNJOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBSUo7RUFDSTtFQUNBO0VBQ0E7OztBQUlKO0VBRUk7RUFDQTs7QUFHSTtFQUNJOzs7QUFLWjtFQUNJOzs7QUFNQTtFQUNJOztBQUdKO0VBQ0k7RUFDQTtFQUNBOztBQUdKO0VBQ0k7RUFDQTtFQUNBOztBQUdKO0FBQUE7RUFFSTtFQUNBO0VBQ0E7O0FBR0o7RUFDSTtFQUNBOztBQUdKO0VBQ0k7O0FBQ0E7RUFDSTs7QUFJUjtFQUNJOzs7QUFVUjtFQUNJO0VBQ0E7OztBQUdKO0FBQUE7RUFFSTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtBQUFBO0VBRUk7RUFDQTtFQUNBOztBQUVBO0FBQUE7RUFDSTs7O0FBSVI7RUFDSTtFQUNBO0VBQ0E7OztBQUdKO0FBQUE7QUFBQTtBQUFBO0VBSUk7RUFDQTtFQUNBOzs7QUFHSjtFQUNJOztBQUVBO0VBQ0k7OztBQUlSO0VBQ0k7OztBQUdKO0VBQ0k7RUFDQTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBRmhGQTtFRW9GQTtJQUNJOzs7QUFJUjtFQUNJOzs7QUFHSjtFQUNJO0lBQ0k7OztBQWNKO0VBQ0k7RUFDQTtFQUNBOzs7QUFRUjtFQUNJO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0k7RUFDQTtFQUNBO0VBRUE7RUFDQTs7QUFFQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBSVI7RUFDSTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTs7QUFJUjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBSUE7O0FBR0o7RUE1Q0o7SUE2Q1E7O0VBRUE7SUFDSTs7OztBQVFaO0VBQ0k7O0FBQ0E7RUFDSTs7O0FBT1I7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFDQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQU9BOztBQU5BO0VBR0k7RUFDQTs7O0FDclJaO0VBSkk7RUFDQTs7O0FBUUo7QUFDQTtFQUNJO0VBQ0E7RUFDQTs7QUFFQTtFQUNJOztBQUdKO0VBQ0k7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7O0FBR0o7RUFDSTs7O0FBTUo7RUFDSTs7O0FBS1I7RUFDSTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTtFQUNBOztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7QUFHSjtFQUNJO0lBQ0k7Ozs7QUFNWjtFQUNJOzs7QUFHSjtBQUNBO0VBQ0k7RUFDQTtFQUNBOztBQUNBO0VBQ0k7RUFDQTs7O0FBSVI7RUFFUTtJQUNJOztFQUdKO0lBQ0k7OztBQUtaO0VBQ0k7O0FBQ0E7RUFGSjtJQUdROzs7O0FBSVI7RUFDSTtFQUNBOztBQUVBO0VBQ0k7RUFDQTtFQUNBOztBRDFFSjtFQUNJOztBQUdKO0VBQ0k7RUFDQTtFQUNBOztBQUdKO0VBQ0k7RUFDQTtFQUNBOztBQUdKO0FBQUE7RUFFSTtFQUNBO0VBQ0E7O0FBR0o7RUFDSTtFQUNBOztBQUdKO0VBQ0k7O0FBQ0E7RUFDSTs7QUFJUjtFQUNJOzs7QUNnRFI7RUFDSTtJQUNJOztFQUVBO0lBQ0k7SUFDQTs7O0FBS1o7RUF4SUk7RUFDQTs7O0FBMklKO0VBRUk7SUFDSTtJQUNBOzs7QUNsSlI7RUFDSTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFJUjtFQUVJO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBOztFQUNBO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7OztBQ25DWjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNJO0VBQ0E7O0FBSVI7RUFDSTtFQUNBOztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUNBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFLWjtFQUlZO0lBQ0k7O0VBSVo7SUFDSTs7O0FDM0RKO0VBQ0k7RUFDQTs7QUFDQTtFQUNJOzs7QUFLWjtFQUVRO0lBQ0k7O0VBQ0E7SUFDSTs7O0FDVmhCO0VBQ0k7RUFDQTtFQUNBOzs7QUFHSjtFQUNJOzs7QUFRSjtFQUNJO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQSxPQXJDWTtFQXNDWjtFQUNBO0VBQ0E7O0FBQ0E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUVBO0VBQ0E7RUFFQTtFQUNBO0VBRUE7RUFDQTs7O0FBSVI7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLGNBckZZOzs7QUNIaEI7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNJO0VBQ0E7RUFDQTtFQUNBOztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQStCQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7O0FBbENJO0VBQ0k7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7O0FBR0o7RUFDSTs7QUFJUjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHSjtFQUNJOztBQWNaO0VBQ0k7RUFDQTs7QUFFQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7O0FBTVI7RUFDSTs7QUFHSjtFQUNJO0VBQ0E7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7OztBQUlSO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtFQUNJOzs7QUFHSjtFQUVJO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7O0VBRUE7SUFDSTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7O0VBRUE7SUFDSTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBOztFQUlSO0lBQ0k7O0VBRUE7SUFDSTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7O0VBR0o7SUFDSTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBRUE7O0VBRUE7SUFDSTs7RUFFSjtJQUNJOzs7QUFRcEI7RUFDSTs7O0FDM01KO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBSVI7RUFDSTtJQUNJOztFQUVBO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7SUFDQTs7O0FDdENaO0VBRUk7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTs7QUFHSjtFQUNJOzs7QUFJUjtFQUVJO0lBQ0k7OztBQ25CUjtFQUNJO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0k7O0FBRUo7RUFUSjtJQVVROzs7O0FBSVI7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFDQTtBQUFBO0FBQUE7RUFHSTs7QUFHSjtFQUNJO0VBQ0E7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7QUFJQTtFQUNJO0VBQ0E7O0FBS1o7RUFDSTs7QUFJSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUlSO0VBQ0k7OztBQUlBO0VBQ0k7O0FBRUo7RUFDSTtFQUNBOzs7QUN2RVI7RUFDSTs7O0FBNERKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtFQUNJO0lBQ0k7SUFDQTs7O0FBSVI7RUFDSTtJQUNJO0lBQ0E7OztBQU1SO0VBL0VJO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0FBQUE7QUFBQTtBQUFBO0VBSUk7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBb0RSO0VBRUk7SUFDSTs7RUFHSjtJQXpGQTtJQUNBO0lBQ0E7SUFDQTtJQWlDSTtJQUNBOztFQWhDSjtBQUFBO0FBQUE7QUFBQTtJQUlJO0lBQ0E7O0VBR0o7SUFDSTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7O0VBR0o7SUFDSTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7O0VBUUE7SUFDSTtJQUNBOztFQUdKO0lBQ0k7SUFDQTtJQUNBOzs7QUErQ1o7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7QUFDQTtFQUxKO0lBTVE7OztBQUVKO0VBUko7SUFTUTs7O0FBRUo7RUFDSTtFQTFHSjtFQUNBO0VBQ0E7RUFDQTtFQXlHSTs7QUF2R0o7QUFBQTtBQUFBO0FBQUE7RUFJSTtFQUNBOztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQThFQTtFQUNJO0VBQ0E7O0FBRUo7RUFFSTs7QUFDQTtFQUNJO0VBQ0E7O0FBR1I7RUFDSTs7O0FBS1o7RUFDSTs7O0FDdElKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7O0FBQ0E7RUFDSTs7O0FBSVI7RUFDSTtFQUNBO0VBQ0E7O0FBQ0E7RUFDSTtFQUNBOzs7QUFJUjtFQUVJOzs7QUN2Qko7RUFDSTs7QUFFQTtFQUNJO0VBQ0E7O0FBR0o7RUFDSTtFQUNBOzs7QUFLSjtFQUNJOzs7QUNoQlI7RUFDSTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUNBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHSjtFQUNJOztBQUlBO0VBQ0k7RUFDQTs7QUFLSjtFQUNJO0VBQ0E7OztBQUtaO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7OztBQUdKO0VBQ0k7OztBQU1BO0VBQ0k7RUFDQTs7QUFFQTtFQUNJOztBQUlSO0VBQ0k7OztBQUlSO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7OztBQUlKO0VBQ0k7OztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7O0FBQ0E7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7QUFHQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFDQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFJWjtFQUNJO0VBQ0E7RUFDQTtFQUNBOztBQUNBO0VBQ0k7O0FBQ0E7RUFDSTtFQUNBOztBQUNBO0VBQ0k7OztBQVFoQjtFQUNJOzs7QUFJUjtFQUNJOztBQUNBO0VBRko7SUFHUTtJQUNBOzs7O0FBTUo7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdSO0VBQ0k7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7O0FBRUE7RUFkSjtJQWVRO0lBQ0E7SUFDQTtJQUNBOzs7O0FBSVI7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVJO0VBQ0k7O0FBSVI7RUFDSTtFQUNBOztBQUdKO0VBQ0k7OztBQ3RPUjtFQUNJO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHQTtFQUNJO0VBQ0E7RUFDQTs7QUFFSjtFQUNJO0VBQ0E7RUFDQTtFQUNBOztBQUVKO0VBQ0k7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7O0FBR0o7RUFDSTtFQUNBOztBQUNBO0VBQ0k7O0FBSVI7RUFDSTtFQUNBOzs7QUFJUjtFQUNJO0lBQ0k7OztBQUlSO0VBQ0k7OztBQzdESjtFQUNJO0VBQ0E7RUFDQTtFQUNBOztBQUNBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTs7O0FBS0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUo7RUFDSTs7O0FDakNSO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0k7RUFDSTs7QUFJUjtFQUNJOztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7O0FBQ0E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBSVI7RUFDSTs7O0FBS1I7RUFFUTtJQUNJO0lBQ0E7O0VBQ0E7SUFDSTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTs7O0FDcERoQjtFQUNJO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7OztBQUlSO0VBQ0k7SUFDSTs7O0FBSVI7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTs7QUFFQTtFQUNJOztBQUdKO0VBQ0k7O0FBR0o7RUFDSTtFQUNBOztBQUdKO0VBQ0k7O0FBR0o7RUFDSTs7QUFHSjtFQUNJOztBQUVBO0VBQ0k7O0FBR0o7RUFFSTs7QUFHSjtFQUNJO0VBQ0E7RUFDQTs7QUFHSjtFQUNJOzs7QUFNWjtFQUVJO0lBQ0k7O0VBR0o7SUFDSTtJQUNBO0lBQ0E7SUFFQTs7O0FBSVI7RUFDSTtFQUNBO0VBQ0E7O0FBR0k7RUFDSTs7O0FDeEhaO0FBQUE7RUFFSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0FBQUE7QUFBQTtBQUFBO0VBR0k7O0FBR0o7QUFBQTtBQUFBO0FBQUE7RUFHSTtFQUNBOztBQUdKO0FBQUE7RUFDSTs7QUFHSjtBQUFBO0VBQ0k7O0FBR0o7QUFBQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUNBO0FBQUE7RUFDSTs7O0FDN0NaO0VBQ0k7OztBQUlBO0VBQ0k7OztBQUtKO0VBQ0k7OztBQUtKO0VBQ0k7RUFDQTs7O0FBSVI7RUFHUTtJQUNJOztFQUVJO0lBQ0kiLCJmaWxlIjoibWFpbi5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIvKiEgbm9ybWFsaXplLmNzcyB2OC4wLjEgfCBNSVQgTGljZW5zZSB8IGdpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzICovXG5cbi8qIERvY3VtZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGxpbmUgaGVpZ2h0IGluIGFsbCBicm93c2Vycy5cbiAqIDIuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW4gaU9TLlxuICovXG5cbmh0bWwge1xuICBsaW5lLWhlaWdodDogMS4xNTtcbiAgLyogMSAqL1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG4gIC8qIDIgKi9cbn1cblxuLyogU2VjdGlvbnNcbiAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gICAqIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2Vycy5cbiAgICovXG5cbmJvZHkge1xuICBtYXJnaW46IDA7XG59XG5cbi8qKlxuICAgKiBSZW5kZXIgdGhlIGBtYWluYCBlbGVtZW50IGNvbnNpc3RlbnRseSBpbiBJRS5cbiAgICovXG5cbm1haW4ge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLyoqXG4gICAqIENvcnJlY3QgdGhlIGZvbnQgc2l6ZSBhbmQgbWFyZ2luIG9uIGBoMWAgZWxlbWVudHMgd2l0aGluIGBzZWN0aW9uYCBhbmRcbiAgICogYGFydGljbGVgIGNvbnRleHRzIGluIENocm9tZSwgRmlyZWZveCwgYW5kIFNhZmFyaS5cbiAgICovXG5cbmgxIHtcbiAgZm9udC1zaXplOiAyZW07XG4gIG1hcmdpbjogMC42N2VtIDA7XG59XG5cbi8qIEdyb3VwaW5nIGNvbnRlbnRcbiAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gICAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIEZpcmVmb3guXG4gICAqIDIuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UgYW5kIElFLlxuICAgKi9cblxuaHIge1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgLyogMSAqL1xuICBoZWlnaHQ6IDA7XG4gIC8qIDEgKi9cbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIC8qIDIgKi9cbn1cblxuLyoqXG4gICAqIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gICAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAgICovXG5cbnByZSB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTtcbiAgLyogMSAqL1xuICBmb250LXNpemU6IDFlbTtcbiAgLyogMiAqL1xufVxuXG4vKiBUZXh0LWxldmVsIHNlbWFudGljc1xuICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAgICogUmVtb3ZlIHRoZSBncmF5IGJhY2tncm91bmQgb24gYWN0aXZlIGxpbmtzIGluIElFIDEwLlxuICAgKi9cblxuYSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4vKipcbiAgICogMS4gUmVtb3ZlIHRoZSBib3R0b20gYm9yZGVyIGluIENocm9tZSA1Ny1cbiAgICogMi4gQWRkIHRoZSBjb3JyZWN0IHRleHQgZGVjb3JhdGlvbiBpbiBDaHJvbWUsIEVkZ2UsIElFLCBPcGVyYSwgYW5kIFNhZmFyaS5cbiAgICovXG5cbmFiYnJbdGl0bGVdIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgLyogMSAqL1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgLyogMiAqL1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7XG4gIC8qIDIgKi9cbn1cblxuLyoqXG4gICAqIEFkZCB0aGUgY29ycmVjdCBmb250IHdlaWdodCBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmkuXG4gICAqL1xuXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcbn1cblxuLyoqXG4gICAqIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gICAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAgICovXG5cbmNvZGUsXG5rYmQsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlO1xuICAvKiAxICovXG4gIGZvbnQtc2l6ZTogMWVtO1xuICAvKiAyICovXG59XG5cbi8qKlxuICAgKiBBZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAgICovXG5cbnNtYWxsIHtcbiAgZm9udC1zaXplOiA4MCU7XG59XG5cbi8qKlxuICAgKiBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBlbGVtZW50cyBmcm9tIGFmZmVjdGluZyB0aGUgbGluZSBoZWlnaHQgaW5cbiAgICogYWxsIGJyb3dzZXJzLlxuICAgKi9cblxuc3ViLFxuc3VwIHtcbiAgZm9udC1zaXplOiA3NSU7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuc3ViIHtcbiAgYm90dG9tOiAtMC4yNWVtO1xufVxuXG5zdXAge1xuICB0b3A6IC0wLjVlbTtcbn1cblxuLyogRW1iZWRkZWQgY29udGVudFxuICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAgICogUmVtb3ZlIHRoZSBib3JkZXIgb24gaW1hZ2VzIGluc2lkZSBsaW5rcyBpbiBJRSAxMC5cbiAgICovXG5cbmltZyB7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcbn1cblxuLyogRm9ybXNcbiAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gICAqIDEuIENoYW5nZSB0aGUgZm9udCBzdHlsZXMgaW4gYWxsIGJyb3dzZXJzLlxuICAgKiAyLiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBGaXJlZm94IGFuZCBTYWZhcmkuXG4gICAqL1xuXG5idXR0b24sXG5pbnB1dCxcbm9wdGdyb3VwLFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgLyogMSAqL1xuICBmb250LXNpemU6IDEwMCU7XG4gIC8qIDEgKi9cbiAgbGluZS1oZWlnaHQ6IDEuMTU7XG4gIC8qIDEgKi9cbiAgbWFyZ2luOiAwO1xuICAvKiAyICovXG59XG5cbi8qKlxuICAgKiBTaG93IHRoZSBvdmVyZmxvdyBpbiBJRS5cbiAgICogMS4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZS5cbiAgICovXG5cbmJ1dHRvbixcbmlucHV0IHtcbiAgLyogMSAqL1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxuLyoqXG4gICAqIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRWRnZSwgRmlyZWZveCwgYW5kIElFLlxuICAgKiAxLiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEZpcmVmb3guXG4gICAqL1xuXG5idXR0b24sXG5zZWxlY3Qge1xuICAvKiAxICovXG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuXG4vKipcbiAgICogQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAgICovXG5cbmJ1dHRvbixcblt0eXBlPVwiYnV0dG9uXCJdLFxuW3R5cGU9XCJyZXNldFwiXSxcblt0eXBlPVwic3VibWl0XCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247XG59XG5cbi8qKlxuICAgKiBSZW1vdmUgdGhlIGlubmVyIGJvcmRlciBhbmQgcGFkZGluZyBpbiBGaXJlZm94LlxuICAgKi9cblxuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJidXR0b25cIl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cInJlc2V0XCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJzdWJtaXRcIl06Oi1tb3otZm9jdXMtaW5uZXIge1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi8qKlxuICAgKiBSZXN0b3JlIHRoZSBmb2N1cyBzdHlsZXMgdW5zZXQgYnkgdGhlIHByZXZpb3VzIHJ1bGUuXG4gICAqL1xuXG5idXR0b246LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cImJ1dHRvblwiXTotbW96LWZvY3VzcmluZyxcblt0eXBlPVwicmVzZXRcIl06LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cInN1Ym1pdFwiXTotbW96LWZvY3VzcmluZyB7XG4gIG91dGxpbmU6IDFweCBkb3R0ZWQgQnV0dG9uVGV4dDtcbn1cblxuLyoqXG4gICAqIENvcnJlY3QgdGhlIHBhZGRpbmcgaW4gRmlyZWZveC5cbiAgICovXG5cbmZpZWxkc2V0IHtcbiAgcGFkZGluZzogMC4zNWVtIDAuNzVlbSAwLjYyNWVtO1xufVxuXG4vKipcbiAgICogMS4gQ29ycmVjdCB0aGUgdGV4dCB3cmFwcGluZyBpbiBFZGdlIGFuZCBJRS5cbiAgICogMi4gQ29ycmVjdCB0aGUgY29sb3IgaW5oZXJpdGFuY2UgZnJvbSBgZmllbGRzZXRgIGVsZW1lbnRzIGluIElFLlxuICAgKiAzLiBSZW1vdmUgdGhlIHBhZGRpbmcgc28gZGV2ZWxvcGVycyBhcmUgbm90IGNhdWdodCBvdXQgd2hlbiB0aGV5IHplcm8gb3V0XG4gICAqICAgIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gYWxsIGJyb3dzZXJzLlxuICAgKi9cblxubGVnZW5kIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLyogMSAqL1xuICBjb2xvcjogaW5oZXJpdDtcbiAgLyogMiAqL1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgLyogMSAqL1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIC8qIDEgKi9cbiAgcGFkZGluZzogMDtcbiAgLyogMyAqL1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICAvKiAxICovXG59XG5cbi8qKlxuICAgKiBBZGQgdGhlIGNvcnJlY3QgdmVydGljYWwgYWxpZ25tZW50IGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuICAgKi9cblxucHJvZ3Jlc3Mge1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbi8qKlxuICAgKiBSZW1vdmUgdGhlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFIDEwKy5cbiAgICovXG5cbnRleHRhcmVhIHtcbiAgb3ZlcmZsb3c6IGF1dG87XG59XG5cbi8qKlxuICAgKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBJRSAxMC5cbiAgICogMi4gUmVtb3ZlIHRoZSBwYWRkaW5nIGluIElFIDEwLlxuICAgKi9cblxuW3R5cGU9XCJjaGVja2JveFwiXSxcblt0eXBlPVwicmFkaW9cIl0ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAvKiAxICovXG4gIHBhZGRpbmc6IDA7XG4gIC8qIDIgKi9cbn1cblxuLyoqXG4gICAqIENvcnJlY3QgdGhlIGN1cnNvciBzdHlsZSBvZiBpbmNyZW1lbnQgYW5kIGRlY3JlbWVudCBidXR0b25zIGluIENocm9tZS5cbiAgICovXG5cblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi8qKlxuICAgKiAxLiBDb3JyZWN0IHRoZSBvZGQgYXBwZWFyYW5jZSBpbiBDaHJvbWUgYW5kIFNhZmFyaS5cbiAgICogMi4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXG4gICAqL1xuXG5bdHlwZT1cInNlYXJjaFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkO1xuICAvKiAxICovXG4gIG91dGxpbmUtb2Zmc2V0OiAtMnB4O1xuICAvKiAyICovXG59XG5cbi8qKlxuICAgKiBSZW1vdmUgdGhlIGlubmVyIHBhZGRpbmcgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gbWFjT1MuXG4gICAqL1xuXG5bdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLyoqXG4gICAqIDEuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gICAqIDIuIENoYW5nZSBmb250IHByb3BlcnRpZXMgdG8gYGluaGVyaXRgIGluIFNhZmFyaS5cbiAgICovXG5cbjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbiAgLyogMSAqL1xuICBmb250OiBpbmhlcml0O1xuICAvKiAyICovXG59XG5cbi8qIEludGVyYWN0aXZlXG4gICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIEVkZ2UsIElFIDEwKywgYW5kIEZpcmVmb3guXG4gICAqL1xuXG5kZXRhaWxzIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qXG4gICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGFsbCBicm93c2Vycy5cbiAgICovXG5cbnN1bW1hcnkge1xuICBkaXNwbGF5OiBsaXN0LWl0ZW07XG59XG5cbi8qIE1pc2NcbiAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwKy5cbiAgICovXG5cbnRlbXBsYXRlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyoqXG4gICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwLlxuICAgKi9cblxuW2hpZGRlbl0ge1xuICBkaXNwbGF5OiBub25lO1xufSIsIkBpbXBvcnQgdXJsKCdodHRwczovL2ZvbnRzLmdvb2dsZWFwaXMuY29tL2NzczI/ZmFtaWx5PU1vbnRzZXJyYXQ6aXRhbCx3Z2h0QDAsMzAwOzAsNDAwOzAsNzAwOzEsMzAwOzEsNDAwJmRpc3BsYXk9c3dhcCcpO1xuQGltcG9ydCB1cmwoJ2h0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzMj9mYW1pbHk9TW9udHNlcnJhdDppdGFsLHdnaHRAMCw0MDA7MCw1MDA7MCw3MDA7MSw0MDA7MSw1MDAmZGlzcGxheT1zd2FwJyk7XG5cbiRicC1zbWFsbDogNzAwcHg7XG4kY29udGFpbmVyLXdpZHRoOiA2N3JlbTtcblxuOnJvb3Qge1xuICAgIC8vIENPTE9SUyAvL1xuICAgIC0tY29sb3ItMTogIzAwNGI1NTtcbiAgICAtLWNvbG9yLTI6ICMwMEM4QUE7XG4gICAgLS1jb2xvci0zOiAjZjBmNWY2O1xuICAgIC0td2hpdGU6IHdoaXRlO1xuICAgIC0tYmxhY2s6IGJsYWNrO1xuICAgIC0tZ3JheTogcmdiKDEyNywgMTI3LCAxMjcpO1xuXG4gICAgLS1wcmltYXJ5LWNvbG9yOiB2YXIoLS1jb2xvci0xKTtcbiAgICAtLXNlY29uZGFyeS1jb2xvcjogdmFyKC0tY29sb3ItMik7O1xuXG4gICAgLS1iZy1jb2xvcjogdmFyKC0tY29sb3ItMyk7XG4gICAgLS1mb250LWNvbG9yOiAjMDAwMDAwO1xuXG4gICAgLS1idXR0b24tY29sb3I6IHZhcigtLXByaW1hcnktY29sb3IpO1xuICAgIC0tYnV0dG9uLWFjdGl2ZS1jb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWNvbG9yKTtcblxuICAgIC8vIExBWU9VVFMgLy9cbiAgICAtLWNvbnRhaW5lci13aWR0aDogI3skY29udGFpbmVyLXdpZHRofTsgLy8gMTM0NCAvIDIwXG4gICAgLS1tYXJnaW4tNTogMnJlbTtcbiAgICAtLW1hcmdpbi03OiA0cmVtO1xuICAgIC0tbWFyZ2luLTg6IDVyZW07XG4gICAgLS1tYXJnaW4tbGFyZ2U6IHZhcigtLW1hcmdpbi03KTtcbiAgICAtLXNpZGUtbWFyZ2luOiAxLjVyZW07XG4gICAgLS1pbm5lci1tYXJnaW46IDFyZW07XG4gICAgXG4gICAgLS1jb2x1bW4tZ2FwOiAzcmVtO1xuXG4gICAgLy8gVFlQRSAvL1xuICAgIC0tZmY6ICdNb250c2VycmF0Jywgc2Fucy1zZXJpZjtcbiAgICAtLWZvbnQtc2l6ZTogMThweDtcbiAgICAtLWZzLTU6IDFyZW07XG4gICAgLS1mcy02OiAxLjhyZW07XG4gICAgLS1mcy04OiAyLjVyZW07IFxuICAgIC0tZnMtOTogM3JlbTsgLy8gNTAgLyAyMFxuICAgIC0tZm9udC13ZWlnaHQtMzogMzAwOyBcbiAgICAtLWZ3LW5vcm1hbDogNTAwO1xuICAgIC0tZnctYm9sZDogNzAwO1xuXG4gICAgLS1saW5lLWhlaWdodDogMS43NTtcbiAgICAtLWxpbmUtaGVpZ2h0LWhlYWRpbmc6IDEuMzM7XG5cbiAgICAvLyBCYW5kZGRzXG4gICAgLS1iYW5kLTkwMDogNnJlbTtcblxuICAgIC8vIEJyZWFrcG9pbnRcbiAgICAtLWJwLXNtYWxsOiA3MDBweDtcbiAgICAtLXRhYmxldDogdmFyKC0tYnAtc21hbGwpO1xuXG59XG5cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODAwcHgpIHtcbiAgICA6cm9vdCB7XG4gICAgICAgIC0tZnMtODogMy4zcmVtOyAvLyA1MCAvIDIwICBcbiAgICAgICAgLS1mcy05OiA0cmVtO1xuICAgIH1cbiAgICAuY29sLTIge1xuICAgICAgICBoMSB7XG4gICAgICAgICAgICAtLWZzLTk6IDIuNXJlbTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuQG1peGluIGJyZWFrKCRzaXplKSB7XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJHNpemUpIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgfVxufSIsIi8qIGh0dHA6Ly9tZXllcndlYi5jb20vZXJpYy90b29scy9jc3MvcmVzZXQvIFxuICAgdjIuMCB8IDIwMTEwMTI2XG4gICBMaWNlbnNlOiBub25lIChwdWJsaWMgZG9tYWluKVxuKi9cblxuaHRtbCwgYm9keSwgZGl2LCBzcGFuLCBhcHBsZXQsIG9iamVjdCwgaWZyYW1lLFxuaDEsIGgyLCBoMywgaDQsIGg1LCBoNiwgcCwgYmxvY2txdW90ZSwgcHJlLFxuYSwgYWJiciwgYWNyb255bSwgYWRkcmVzcywgYmlnLCBjaXRlLCBjb2RlLFxuZGVsLCBkZm4sIGVtLCBpbWcsIGlucywga2JkLCBxLCBzLCBzYW1wLFxuc21hbGwsIHN0cmlrZSwgc3Ryb25nLCBzdWIsIHN1cCwgdHQsIHZhcixcbmIsIHUsIGksIGNlbnRlcixcbmRsLCBkdCwgZGQsIG9sLCB1bCwgbGksXG5maWVsZHNldCwgZm9ybSwgbGFiZWwsIGxlZ2VuZCxcbnRhYmxlLCBjYXB0aW9uLCB0Ym9keSwgdGZvb3QsIHRoZWFkLCB0ciwgdGgsIHRkLFxuYXJ0aWNsZSwgYXNpZGUsIGNhbnZhcywgZGV0YWlscywgZW1iZWQsIFxuZmlndXJlLCBmaWdjYXB0aW9uLCBmb290ZXIsIGhlYWRlciwgaGdyb3VwLCBcbm1lbnUsIG5hdiwgb3V0cHV0LCBydWJ5LCBzZWN0aW9uLCBzdW1tYXJ5LFxudGltZSwgbWFyaywgYXVkaW8sIHZpZGVvIHtcblx0bWFyZ2luOiAwO1xuXHRwYWRkaW5nOiAwO1xuXHRib3JkZXI6IDA7XG5cdGZvbnQtc2l6ZTogMTAwJTtcblx0Zm9udDogaW5oZXJpdDtcblx0dmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuLyogSFRNTDUgZGlzcGxheS1yb2xlIHJlc2V0IGZvciBvbGRlciBicm93c2VycyAqL1xuYXJ0aWNsZSwgYXNpZGUsIGRldGFpbHMsIGZpZ2NhcHRpb24sIGZpZ3VyZSwgXG5mb290ZXIsIGhlYWRlciwgaGdyb3VwLCBtZW51LCBuYXYsIHNlY3Rpb24ge1xuXHRkaXNwbGF5OiBibG9jaztcbn1cbmJvZHkge1xuXHRsaW5lLWhlaWdodDogMTtcbn1cbm9sLCB1bCB7XG5cdGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5ibG9ja3F1b3RlLCBxIHtcblx0cXVvdGVzOiBub25lO1xufVxuYmxvY2txdW90ZTpiZWZvcmUsIGJsb2NrcXVvdGU6YWZ0ZXIsXG5xOmJlZm9yZSwgcTphZnRlciB7XG5cdGNvbnRlbnQ6ICcnO1xuXHRjb250ZW50OiBub25lO1xufVxudGFibGUge1xuXHRib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuXHRib3JkZXItc3BhY2luZzogMDtcbn1cbioge1xuXHRib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbn0iLCIqIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG5odG1sIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZm9udC1mYW1pbHk6IHZhcigtLWZmKTtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZSk7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZ3LW5vcm1hbCk7XG4gICAgbGluZS1oZWlnaHQ6IDEuNzU7XG4gICAgY29sb3I6IHZhcigtLWZvbnQtY29sb3IpO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmctY29sb3IpO1xufVxuXG5cbmJvZHkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsaW5lLWhlaWdodDogMS43NTtcbiAgICBtYXJnaW4tdG9wOiA1cmVtO1xufVxuXG5cbi5jb2xvcmVkIHtcblxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXByaW1hcnktY29sb3IpO1xuICAgIGNvbG9yOiB3aGl0ZTtcblxuICAgIHN2ZyB7XG4gICAgICAgIHBhdGgge1xuICAgICAgICAgICAgZmlsbDogY3VycmVudENvbG9yOyAvLyB3ZXJrdCBub2cgbmlldFxuICAgICAgICB9XG4gICAgfVxufVxuXG4jc3ByaXRlIHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuXG5cbkBtaXhpbiB0ZXh0KCkge1xuXG4gICAgcCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEuMnJlbTtcbiAgICB9XG5cbiAgICB1bCB7XG4gICAgICAgIGxpc3Qtc3R5bGU6IHVuc2V0O1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDEuM3JlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICB9XG5cbiAgICBvbCB7XG4gICAgICAgIGxpc3Qtc3R5bGU6IGRlY2ltYWw7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMS4zcmVtO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgIH1cblxuICAgIGgxLFxuICAgIGgyIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgICAgIG1hcmdpbi10b3A6IDNyZW07XG4gICAgICAgIG1hcmdpbi1ib3R0b206IC41cmVtO1xuICAgIH1cblxuICAgIGgzLCBoNCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDNyZW07XG4gICAgICAgIG1hcmdpbi1ib3R0b206IC41cmVtO1xuICAgIH1cbiAgICBcbiAgICBhIHtcbiAgICAgICAgY29sb3I6IHZhcigtLXNlY29uZGFyeS1jb2xvcik7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBpbWcge1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgfVxufVxuXG4udGV4dCB7XG4gICAgQGluY2x1ZGUgdGV4dDtcbn1cblxuXG5cbmEge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuaDEsXG4uaDEge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZnMtOCk7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZ3LWJvbGQpO1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1oZWFkaW5nKTtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbmgyLFxuLmgyIHtcbiAgICBmb250LXNpemU6IHZhcigtLWZzLTYpO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mdy1ib2xkKTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtaGVhZGluZyk7XG5cbiAgICAmLTIge1xuICAgICAgICBmb250LXdlaWdodDogdmFyKC0tZnctbm9ybWFsKTtcbiAgICB9XG59XG5cbi5oMi0yIHtcbiAgICBmb250LXNpemU6IHZhcigtLWZzLTYpO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mdy1ub3JtYWwpO1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1oZWFkaW5nKTtcbn1cblxuaDMsXG4uaDMsXG5oNCxcbi5oNCB7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mcy01KTtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZnctYm9sZCk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWhlYWRpbmcpO1xufVxuXG4uc3VidGl0bGUge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZnMtNSk7XG5cbiAgICBzcGFuIHtcbiAgICAgICAgY29sb3I6IHZhcigtLXNlY29uZGFyeS1jb2xvcik7XG4gICAgfVxufVxuXG5zdHJvbmcge1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mdy1ib2xkKTtcbn1cblxuaHIge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMXB4O1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjMDAwO1xufVxuXG4uaW50cm8ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIG1heC13aWR0aDogNDByZW07XG4gICAgbWFyZ2luLWJvdHRvbTogNHJlbTtcbiAgICBwYWRkaW5nLWlubGluZTogdmFyKC0tc2lkZS1tYXJnaW4pO1xufVxuXG5AaW5jbHVkZSBicmVhaygkYnAtc21hbGwpIHtcbiAgICAuaW50cm8ge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA4cmVtO1xuICAgIH1cbn1cblxuOnJvb3Qge1xuICAgIC0tc2VjdGlvbi1tYXJnaW46IDNyZW07XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6JGJwLXNtYWxsKSB7XG4gICAgOnJvb3Qge1xuICAgICAgICAtLXNlY3Rpb24tbWFyZ2luOiA4cmVtO1xuICAgIH1cbn1cblxuLmNjX3NlY3Rpb24ge1xuXG4gICAgLy8gLmNvbnRhaW5lciB7XG4gICAgLy8gICAgIHBhZGRpbmctYmxvY2s6IHZhcigtLXNlY3Rpb24tbWFyZ2luKTtcblxuICAgIC8vICAgICAvLyAmLnNwbGl0IHtcbiAgICAvLyAgICAgLy8gICAgIHBhZGRpbmctYmxvY2s6IDlyZW07XG4gICAgLy8gICAgIC8vIH1cbiAgICAvLyB9XG5cbiAgICAucGFnZWxpbmsge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgbWFyZ2luLXRvcDogdmFyKC0tc2VjdGlvbi1tYXJnaW4pO1xuICAgIH1cbn1cblxuXG5cbi8vIEhvcml6b250YWwgY29sdW1uIHNwbGl0dGVyXG5cbi5zcGxpdCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMSwgMWZyKTtcbiAgICBtYXJnaW4tYmxvY2s6IDFyZW07XG5cbiAgICAmX19pbWFnZSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNpZGUtbWFyZ2luKTtcblxuICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICBwbGFjZS1jb250ZW50OiBjZW50ZXI7XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIG1heC13aWR0aDogMjRyZW07XG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiAyNHJlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2ljb24ge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIHBsYWNlLWNvbnRlbnQ6IGNlbnRlcjtcblxuICAgICAgICBzdmcge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAxNXJlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX3RleHQge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBhbGlnbi1pdGVtczogc3RhcnQ7XG4gICAgICAgIHBsYWNlLWNvbnRlbnQ6IGNlbnRlcjtcblxuXG5cbiAgICAgICAgcGFkZGluZzogdmFyKC0taW5uZXItbWFyZ2luKTtcbiAgICB9XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiRicC1zbWFsbCkge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xuXG4gICAgICAgICZfX2ltYWdlIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHVuc2V0O1xuICAgICAgICB9XG4gICAgfVxuXG59XG5cbi8vIHF1aWNrZml4XG5cbi5zZWdtZW50LmhlYWRlci1pbWFnZSB7XG4gICAgbWFyZ2luLXRvcDogdmFyKC0tbWFyZ2luLTgpO1xuICAgIGltZyB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbn1cblxuXG4vLyBQQUdJTkFUSU9OXG5cbi5wYWdpbmF0aW9uIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBnYXA6IC41cmVtO1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGxpIHtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlO1xuICAgICAgICB3aWR0aDogM3JlbTtcbiAgICAgICAgaGVpZ2h0OiAzcmVtO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgIHBhZGRpbmc6IC41cmVtO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgYXNwZWN0LXJhdGlvOiAxO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICAgICAgY29sb3I6IHZhcigtLXByaW1hcnktY29sb3IpO1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAmLmFjdGl2ZSAsXG4gICAgICAgICZbYXJpYS1jdXJyZW50PXRydWVdLFxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICB2YXIoLS1wcmltYXJ5LWNvbG9yKTtcbiAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgfVxuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxufVxuIiwiXG5AbWl4aW4gcGFnZXdpZHRoKCl7XG4gICAgcGFkZGluZy1sZWZ0OiAxcmVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IDFyZW07XG59XG5cbi5wYWdld2lkdGgge1xuICAgIEBpbmNsdWRlIHBhZ2V3aWR0aCgpO1xufVxuXG5cbi8qIC0tLSBTb21lIGNvbnRhaW5lciBkZWZpbml0aW9ucyAtLS0gKi9cbi5jb250YWluZXIsIC5jbnQge1xuICAgIG1heC13aWR0aDogdmFyKC0tY29udGFpbmVyLXdpZHRoKTtcbiAgICBtYXJnaW4taW5saW5lOiBhdXRvO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgXG4gICAgJi5ib3JkZXIge1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgZ3JheTtcbiAgICB9XG5cbiAgICAmLS1ibG9jayB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgICAgIHBhZGRpbmctYmxvY2s6IDJyZW07XG4gICAgfVxuXG4gICAgJi0tbGFyZ2Uge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG1heC13aWR0aDogODByZW07XG4gICAgfVxuXG4gICAgJi0tc21hbGwge1xuICAgICAgICBtYXgtd2lkdGg6IDUwcmVtO1xuICAgIH1cbn1cblxuLmNjX3NlY3Rpb24ge1xuXG4gICAgLmNvbnRhaW5lciB7XG4gICAgICAgIHBhZGRpbmctYmxvY2s6IHZhcigtLXNlY3Rpb24tbWFyZ2luKTtcbiAgICB9XG59XG5cblxuLnNlZ21lbnQge1xuICAgIC0tc2VnbWVudC1zcGFjZTogM3JlbTtcbiAgICBtYXJnaW4tdG9wOiB2YXIoLS1zZWdtZW50LXNwYWNlKTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zZWdtZW50LXNwYWNlKTtcblxuICAgICYtLWJvcmRlciB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1zZWdtZW50LXNwYWNlKTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWZvbnQtY29sb3IpO1xuICAgIH1cblxuICAgICYtLWNvbG9yZWQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1wcmltYXJ5LWNvbG9yKTtcbiAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICBwYWRkaW5nLXRvcDogdmFyKC0tc2VnbWVudC1zcGFjZSk7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1zZWdtZW50LXNwYWNlKTtcbiAgICB9XG5cbiAgICAmLS1jb2xvcmVkLXNlY29uZGFyeSB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1mb250LWNvbG9yKTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWNvbG9yKTtcbiAgICAgICAgcGFkZGluZy10b3A6IHZhcigtLXNlZ21lbnQtc3BhY2UpO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tc2VnbWVudC1zcGFjZSk7XG4gICAgfVxuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJGNvbnRhaW5lci13aWR0aCkge1xuICAgICAgICAmLS1sYXJnZSB7XG4gICAgICAgICAgICAtLXNlZ21lbnQtc3BhY2U6IDZyZW07XG4gICAgICAgIH1cbiAgICB9XG59XG5cblxuLmJsb2NrIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbn1cblxuLyogLS0tIFNvbWUgY29sdW1uIGRlZmF1bHQgLS0tICovXG4uY29sIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICAgIGdhcDogdmFyKC0tY29sdW1uLWdhcCk7IFxuICAgIGltZyB7XG4gICAgICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJGNvbnRhaW5lci13aWR0aCkge1xuICAgIC5jb2wge1xuICAgICAgICAmX19kdW8ge1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyICk7XG4gICAgICAgIH1cbiAgICBcbiAgICAgICAgJl9fdHJpbyB7XG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgzLCAxZnIgKTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnRleHQtcGFkZGluZywgLnRwIHtcbiAgICBwYWRkaW5nLWlubGluZTogdmFyKC0tc2lkZS1tYXJnaW4pO1xuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc4cmVtKSB7XG4gICAgICAgIHBhZGRpbmctaW5saW5lOiAwO1xuICAgIH1cbn1cblxuLmdvbGRzbml0IHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuXG4gICAgJl9fdGl0bGUge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAycmVtO1xuICAgICAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICB9XG5cbiAgICAmX19ib2R5IHtcblxuICAgICAgICBAaW5jbHVkZSB0ZXh0KCk7XG4gICAgfVxuXG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6JGJwLXNtYWxsKSB7XG4gICAgLmdvbGRzbml0IHtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgM2ZyO1xuXG4gICAgICAgICZfX3RpdGxlIHtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDJyZW07XG4gICAgICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5jb250YWluZXItLXBhZGRlZCB7XG4gICAgQGluY2x1ZGUgcGFnZXdpZHRoKCk7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc5cmVtKSB7XG5cbiAgICAuY29udGFpbmVyLS1wYWRkZWQge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgfVxufVxuXG4iLCIudGl0bGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLWJvdHRvbTogNHJlbTtcbiAgICBcbiAgICAmOjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6Jyc7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgd2lkdGg6IDJyZW07XG4gICAgICAgIGhlaWdodDogMC41cmVtO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zZWNvbmRhcnktY29sb3IpO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBib3R0b206IC0ycmVtO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwIC4yZW0gMCAuMmVtICA7XG4gICAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3MDBweCkge1xuICAgIFxuICAgIC50aXRsZSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDNyZW07XG4gICAgICAgIG1heC13aWR0aDogMjByZW07XG4gICAgICAgIG1hcmdpbjogMCBhdXRvIDRyZW0gYXV0bztcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OicnO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGJvdHRvbTogLTJyZW07XG4gICAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlKTtcbiAgICAgICAgICAgIHdpZHRoOiAycmVtO1xuICAgICAgICAgICAgaGVpZ2h0OiAwLjVyZW07XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwIC4yZW0gMCAuMmVtICA7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zZWNvbmRhcnktY29sb3IpO1xuICAgICAgICAgICAgXG4gICAgICAgIH1cbiAgICB9XG5cbn1cblxuIiwiXG4udG9wYmFyIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciBhdXRvO1xuICAgIGFsaWduLWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDVyZW07XG4gICAgei1pbmRleDogMTAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuXG4gICAgcGFkZGluZy1pbmxpbmU6IHZhcigtLXNpZGUtbWFyZ2luKTtcblxuICAgIC50b3BiYXItbG9nbyB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGhlaWdodDogMS44cmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmJ0bi1uYXZpZ2F0aW9uLW9wZW4ge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIH1cblxuICAgIC5oYW1idXJnZXIge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgIGFsaWduLWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47ICAgIFxuICAgICAgICBoZWlnaHQ6IDEuNHJlbTtcbiAgICAgICAgd2lkdGg6IDEuNHJlbTtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogYmxhY2s7XG4gICAgICAgICAgICBoZWlnaHQ6IDVweDtcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMC41cmVtIDAgMC41cmVtIDA7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6JGJwLXNtYWxsKSB7XG5cbiAgICAudG9wYmFyIHtcbiAgICAgICAgLmxvZ28ge1xuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDIuNXJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICA6cm9vdCB7XG4gICAgICAgIC0tc2VjdGlvbi1tYXJnaW46IDhyZW07XG4gICAgfVxufSIsIi5oZWFkZXIge1xuICAgICYtLWRlZmF1bHQge1xuICAgICAgICBwYWRkaW5nLWJsb2NrOiAzcmVtO1xuICAgICAgICAtLWZzLTk6IDJyZW07XG4gICAgICAgIGgxIHtcbiAgICAgICAgICAgIHBhZGRpbmctaW5saW5lOiB2YXIoLS1zaWRlLW1hcmdpbilcbiAgICAgICAgfVxuICAgIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJGJwLXNtYWxsKSB7XG4gICAgLmhlYWRlciB7XG4gICAgICAgICYtLWRlZmF1bHQge1xuICAgICAgICAgICAgLS1mcy05OiAyLjVyZW07XG4gICAgICAgICAgICBoMSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1pbmxpbmU6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59IiwiLy8gQkFOTkVSIC8vYmxvY2tcblxuJGJhbm5lci1oZWlnaHQ6IDMwcmVtO1xuJGJhbm5lci1tYXJnaW46IDJyZW07XG5cbjpyb290IHtcbiAgICAtLWJhbm5lci1oZWlnaHQ6IDMwcmVtO1xuICAgIC0tYmFubmVyLWhhbGYtaGVpZ2h0OiAxNXJlbTtcbiAgICAtLWJhbm5lci1tYXJnaW46IDJyZW07XG59ICAgXG5cbi5iYW5uZXItb3V0ZXIge1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudChcbiAgICB0byByaWdodCxcbiAgICB2YXIoLS1wcmltYXJ5LWNvbG9yKSxcbiAgICB2YXIoLS1wcmltYXJ5LWNvbG9yKSA1MCUsXG4gICAgdmFyKC0tc2Vjb25kYXJ5LWNvbG9yKSA1MCUgLFxuICAgIHZhcigtLXNlY29uZGFyeS1jb2xvcikpO1xufVxuXG4uYmFubmVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWNvbG9yKTtcbiAgICBoZWlnaHQ6IHZhcigtLWJhbm5lci1oZWlnaHQpO1xufVxuXG4uYmFubmVyX190b3Age1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBjb250ZW50OiAnJztcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIHZhcigtLWJhbm5lci1oYWxmLWhlaWdodCkpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXByaW1hcnktY29sb3IpO1xuICAgIGJvcmRlci1yYWRpdXM6IDAgMjByZW0gMjByZW0gMDtcbn1cblxuLmJhbm5lcl9faW1hZ2Uge1xuICAgIGlzb2xhdGlvbjogaXNvbGF0ZTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6ICRiYW5uZXItbWFyZ2luO1xuICAgIHRvcDogMDtcbiAgICBoZWlnaHQ6IHZhcigtLWJhbm5lci1oZWlnaHQpO1xuICAgIHdpZHRoOiB2YXIoLS1iYW5uZXItaGVpZ2h0KTtcbiAgICBpbWcge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgfVxuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OicnO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgd2lkdGg6IHZhcigtLWJhbm5lci1oZWlnaHQpO1xuICAgICAgICBoZWlnaHQ6IHZhcigtLWJhbm5lci1oZWlnaHQpO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgIG9wYWNpdHk6IC44O1xuXG4gICAgICAgIG1hc2staW1hZ2U6IHVybCgvc2l0ZS90ZW1wbGF0ZXMvcmVzb3VyY2VzL2NpcmNsZS5zdmcpO1xuICAgICAgICBtYXNrLXNpemU6IDEwMCU7XG4gICAgICAgIC8vIG1hc2stcG9zaXRpb246IC0xM3JlbSA1MCU7XG4gICAgICAgIG1hc2stcG9zaXRpb246IGNhbGMoICggLTEgKiAkYmFubmVyLWhlaWdodCAvIDIpKSA1MCU7XG4gICAgICAgIG1hc2stcmVwZWF0OmJsb2NrIG5vLXJlcGVhdDtcblxuICAgICAgICAtd2Via2l0LW1hc2staW1hZ2U6IHVybCgvc2l0ZS90ZW1wbGF0ZXMvcmVzb3VyY2VzL2NpcmNsZS5zdmcpO1xuICAgICAgICAtd2Via2l0LW1hc2stc2l6ZTogMTAwJTtcbiAgICAgICAgLy8gLXdlYmtpdC1tYXNrLXBvc2l0aW9uOiAtMTNyZW0gNTAlOyAvLzE1cmVtIC0gMnJlbVxuICAgICAgICAtd2Via2l0LW1hc2stcG9zaXRpb246IGNhbGMoICggLTEgKiAkYmFubmVyLWhlaWdodCAvIDIpKSA1MCU7IC8vMTVyZW0gLSAycmVtXG4gICAgICAgIC13ZWJraXQtbWFzay1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICB9XG59XG5cbi5iYW5uZXJfX3RleHQgeyBcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGdhcDogMnJlbTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDtcbiAgICB3aWR0aDogNTAlO1xuICAgIHdpZHRoOiA0NSU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHBhZGRpbmctbGVmdDogJGJhbm5lci1tYXJnaW47XG59IiwiOnJvb3Qge1xuICAgIC0tYnYtaGVpZ2h0OiA0MHJlbTtcbiAgICAtLWJ2LW92ZXJsYXA6IDEwcmVtO1xuICAgIC0tYnYtb2Zmc2V0OiA5cmVtO1xuICAgIC0tYnYtY29sb3I6IHZhcigtLXdoaXRlKTtcbn1cblxuLmJ2IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zZWNvbmRhcnktY29sb3IpO1xuICAgIGNvbG9yOiB2YXIoLS1idi1jb2xvcik7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiAyOHJlbSBtaW5tYXgoMTRyZW0sIGF1dG8pO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAuaW1nLXdyYXAge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAgMCA1MHZ3IDUwdnc7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIHotaW5kZXg6IDI7XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBib3R0b206IHZhcigtLWJ2LW92ZXJsYXApO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDB2dztcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgICAgICAuYnYge1xuICAgICAgICAgICAgICAgIC5zdWJ0aXRsZSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMnJlbSAwO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICZbZGF0YS1pbnZlcnRlZD1cInRydWVcIl0ge1xuICAgICAgICAgICAgICAgICAgICAtLXByaW1hcnktY29sb3I6IHZhcigtLWNvbG9yLTIpO1xuICAgICAgICAgICAgICAgICAgICAtLXNlY29uZGFyeS1jb2xvcjogdmFyKC0tY29sb3ItMSk7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1ibGFjayk7IC8vIFRPRE86IG5vdCBnb29kICBcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBwLnN1YnRpdGxlIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiA0cmVtIDAgMCAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmNvbCAuYnYge1xuICAgICAgICAgICAgICAgIC0tYnYtaGVpZ2h0OiAyMnJlbTtcbiAgICAgICAgICAgICAgICAtLXByaW1hcnktY29sb3I6IHZhcigtLWNvbG9yLTIpO1xuICAgICAgICAgICAgICAgIC0tc2Vjb25kYXJ5LWNvbG9yOiB2YXIoLS1jb2xvci0xKTtcbiAgICAgICAgICAgICAgICAtLWJ2LWNvbG9yOiB2YXIoLS1ibGFjayk7XG4gICAgICAgICAgICAgICAgLS1idi1vdmVybGFwOiAxMHJlbTtcbiAgICAgICAgICAgICAgICAtLWJ2LW9mZnNldDogNXJlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmNvbCAuYnYgcC5zdWJ0aXRsZSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgYXNwZWN0LXJhdGlvOiAxO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMCUpO1xuICAgICAgICAgICAgei1pbmRleDogMTAwO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13aGl0ZSk7XG4gICAgICAgICAgICBvcGFjaXR5OiAuNTtcbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgLnRleHQtd3JhcCB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1wcmltYXJ5LWNvbG9yKTtcbiAgICAgICAgICAgIHRvcDogY2FsYygtMSAqIHZhcigtLWJ2LW92ZXJsYXApKTtcbiAgICAgICAgICAgIGhlaWdodDogY2FsYygxMDAlICsgdmFyKC0tYnYtb3ZlcmxhcCkpO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MHZ3IDUwdncgMCAwO1xuICAgICAgICAgICAgei1pbmRleDogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5pbm5lciB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgICAgcGFkZGluZy1pbmxpbmU6IHZhcigtLXNpZGUtbWFyZ2luKTtcbiAgICAgICAgICAgIHBhZGRpbmctYmxvY2s6IDRyZW07XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5idiB7XG4gICAgLnN1YnRpdGxlIHtcbiAgICAgICAgbWFyZ2luOiAycmVtIDA7XG4gICAgfVxuXG4gICAgJltkYXRhLWludmVydGVkPVwidHJ1ZVwiXSB7XG4gICAgICAgIC0tcHJpbWFyeS1jb2xvcjogdmFyKC0tY29sb3ItMik7XG4gICAgICAgIC0tc2Vjb25kYXJ5LWNvbG9yOiB2YXIoLS1jb2xvci0xKTtcbiAgICAgICAgY29sb3I6IHZhcigtLWJsYWNrKTsgLy8gVE9ETzogbm90IGdvb2QgIFxuICAgIH1cblxuICAgIHAuc3VidGl0bGUge1xuICAgICAgICBtYXJnaW46IDRyZW0gMCAwIDA7XG4gICAgICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgfVxufVxuXG4uY29sIC5idiB7XG4gICAgLS1idi1oZWlnaHQ6IDIycmVtO1xuICAgIC0tcHJpbWFyeS1jb2xvcjogdmFyKC0tY29sb3ItMik7XG4gICAgLS1zZWNvbmRhcnktY29sb3I6IHZhcigtLWNvbG9yLTEpO1xuICAgIC0tYnYtY29sb3I6IHZhcigtLWJsYWNrKTtcbiAgICAtLWJ2LW92ZXJsYXA6IDEwcmVtO1xuICAgIC0tYnYtb2Zmc2V0OiA1cmVtO1xufVxuXG4uY29sIC5idiBwLnN1YnRpdGxlIHtcbiAgICBtYXJnaW4tdG9wOiAxcmVtO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOjgwMHB4KSB7XG5cbiAgICAuYnYge1xuICAgICAgICAtLWJ2LW92ZXJsYXA6IDE4cmVtO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtcm93czogdW5zZXQ7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogY2FsYyg1MCUgLSAodmFyKC0tYnYtb3ZlcmxhcCkgLyAyKSArIHZhcigtLWJ2LW9mZnNldCkpIGNhbGMoNTAlICsgKHZhcigtLWJ2LW92ZXJsYXApIC8gMikgLSB2YXIoLS1idi1vZmZzZXQpKTtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBjYWxjKDUwJSArIHZhcigtLWJ2LW9mZnNldCkgLSAodmFyKC0tYnYtb3ZlcmxhcCkgLyAyKSkgY2FsYyg1MCUgLSB2YXIoLS1idi1vZmZzZXQpICsgKHZhcigtLWJ2LW92ZXJsYXApIC8gMikpO1xuICAgICAgICBoZWlnaHQ6IHZhcigtLWJ2LWhlaWdodCk7XG5cbiAgICAgICAgLmltZy13cmFwIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIG9yZGVyOiAyO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJ2LWhlaWdodCkgMCAwIHZhcigtLWJ2LWhlaWdodCk7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICBsZWZ0OiB2YXIoLS1idi1vdmVybGFwKTtcbiAgICAgICAgICAgICAgICB3aWR0aDogdmFyKC0tYnYtaGVpZ2h0KTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IHZhcigtLWJ2LWhlaWdodCk7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB1bnNldDtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13aGl0ZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAudGV4dC13cmFwIHtcbiAgICAgICAgICAgIHBsYWNlLWl0ZW1zOiBjZW50ZXIgc3RhcnQ7XG5cbiAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICBsZWZ0OiB1bnNldDtcbiAgICAgICAgICAgICAgICByaWdodDogY2FsYygtMSAqIHZhcigtLWJ2LW92ZXJsYXApKTtcbiAgICAgICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlICsgdmFyKC0tYnYtb3ZlcmxhcCkpO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwIHZhcigtLWJ2LWhlaWdodCkgdmFyKC0tYnYtaGVpZ2h0KSAwO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXByaW1hcnktY29sb3IpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuaW5uZXIge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDUzcmVtOyAvLzY2OXB4O1xuICAgICAgICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgKyB2YXIoLS1idi1vdmVybGFwKSk7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IGNhbGMoLTEgKiB2YXIoLS1idi1vdmVybGFwKSk7XG4gICAgICAgICAgICAgICAgei1pbmRleDogMjA7XG5cbiAgICAgICAgICAgICAgICBwYWRkaW5nLWlubGluZTogdmFyKC0tc2lkZS1tYXJnaW4pIHZhcigtLWJ2LW92ZXJsYXApO1xuXG4gICAgICAgICAgICAgICAgaDEge1xuICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDMwcmVtO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogNHJlbTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cblxuLmJ2IGgxK3Age1xuICAgIG1hcmdpbi10b3A6IDJyZW07XG59IiwiLmljb25saXN0IHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDEsIDFmcik7XG4gICAgZ2FwOiB2YXIoLS1tYXJnaW4tNSk7XG4gICAgbWFyZ2luLWJsb2NrOiB2YXIoLS1tYXJnaW4tNSk7XG5cbiAgICAmX19pdGVtIHtcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAganVzdGlmeS1pdGVtczogY2VudGVyO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGdhcDogMXJlbTtcbiAgICB9XG5cbiAgICAmX19pY29uIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIHdpZHRoOiAzcmVtO1xuICAgICAgICBoZWlnaHQ6IDNyZW07XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgvc2l0ZS90ZW1wbGF0ZXMvcmVzb3VyY2VzL2ljb25zL3RyYW5zcG9ydC5zdmcpO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMnJlbTtcbiAgICAgICAgcGFkZGluZzogMXJlbTtcbiAgICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRicC1zbWFsbCApIHtcbiAgICAuaWNvbmxpc3Qge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xuXG4gICAgICAgICZfX2l0ZW0ge1xuICAgICAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogYXV0byAgMWZyO1xuICAgICAgICAgICAganVzdGlmeS1pdGVtczogc3RhcnQ7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgZ2FwOiAxcmVtO1xuICAgICAgICB9XG4gICAgfVxufSIsIi5pbWFnZS1pbnRybyB7XG4gICAgXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gICAgZ2FwOiB2YXIoLS1jb2x1bW4tZ2FwKTsgXG4gICAgXG4gICAgaW1nIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICAgIFxuICAgICZfX3RleHQge1xuICAgICAgICBmb250LXdlaWdodDogdmFyKC0tZnctYm9sZCk7XG4gICAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkY29udGFpbmVyLXdpZHRoKSB7XG5cbiAgICAuaW1hZ2UtaW50cm8ge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDNmciAyZnI7XG4gICAgfVxuXG59IiwiLnRlYW0tbWVtYmVycyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBnYXA6IDNyZW07XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gICAgPiAqIHtcbiAgICAgICAgZmxleDogMSAxIDE4cmVtO1xuICAgIH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkY29udGFpbmVyLXdpZHRoKSB7XG4gICAgICAgIHBhZGRpbmctaW5saW5lOiAwO1xuICAgIH1cbn1cblxuLm1lbWJlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiA1ZnIgMmZyIDFmcjtcbiAgICBncmlkLXRlbXBsYXRlLXJvd3M6IDIycmVtIDEwcmVtIGF1dG87XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13aGl0ZSk7XG4gICAgbWF4LXdpZHRoOiAyMXJlbTtcbiAgICBoMixcbiAgICBoMyxcbiAgICBoNCB7XG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZnMtNSk7XG4gICAgfVxuXG4gICAgJl9faW1hZ2Uge1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIFxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDRzIGVhc2U7XG4gICAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4yKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX3RleHQge1xuICAgICAgICBwYWRkaW5nOiAxLjVyZW07XG4gICAgfVxuXG5cbiAgICAmX19mb290ZXIge1xuICAgICAgICBwYWRkaW5nLWlubGluZTogMnJlbTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzdGFydDtcbiAgICAgICAgZ2FwOiAxcmVtO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMS41cmVtO1xuICAgIH1cbn1cblxuLnN3aXBlci10ZWFtIC5tZW1iZXIge1xuICAgIG1heC13aWR0aDogbm9uZTtcbn1cblxuLmN2IHtcbiAgICBpbWcge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICAgIH1cbiAgICAmX190ZWwge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICB9XG59IiwiOnJvb3Qge1xuICAgIC0tYnVsbGV0LXNpemU6IDdyZW07XG59XG5cbi8vID09PSBCdWxsZXQgTUlYSU4gPT09IC8vXG5cbkBtaXhpbiBidWxsZXQoJGRpcmVjdGlvbjogJ2hvcml6b250YWwnKSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZ2FwOiAycmVtO1xuICAgIGp1c3RpZnktY29udGVudDogc3RhcnQ7XG5cbiAgICBoMixcbiAgICBoMyxcbiAgICBoNCxcbiAgICBoNSB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZnMtNSk7XG4gICAgfVxuXG4gICAgJl9faWNvbi13cmFwIHtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZS1pbi1vdXQ7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIHBsYWNlLWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICAgICAgd2lkdGg6IHZhcigtLWJ1bGxldC1zaXplKTtcbiAgICAgICAgaGVpZ2h0OiB2YXIoLS1idWxsZXQtc2l6ZSk7XG4gICAgICAgIHBhZGRpbmc6IDAuNXJlbTtcbiAgICAgICAgYXNwZWN0LXJhdGlvOiAxIC8gMTtcbiAgICB9XG5cbiAgICAmX19jYXB0aW9uIHtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZS1pbi1vdXQ7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBhbGlnbi1pdGVtczogbGVmdDtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB9XG5cbiAgICBAaWYgJGRpcmVjdGlvbiA9PSAndmVydGljYWwnIHtcblxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgICZfX2ljb24td3JhcCB7XG4gICAgICAgICAgICB3aWR0aDogdmFyKC0tYnVsbGV0LXNpemUpO1xuICAgICAgICAgICAgaGVpZ2h0OiB2YXIoLS1idWxsZXQtc2l6ZSk7XG4gICAgICAgIH1cblxuICAgICAgICAmX19jYXB0aW9uIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDExcmVtO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyA9PT0gQnVsbGV0cyA9PT0gLy9cblxuLmJ1bGxldHMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAganVzdGlmeS1jb250ZW50OiBzdGFydDtcbiAgICBnYXA6IDJyZW07XG4gICAgcGFkZGluZy1pbmxpbmU6IHZhcigtLXNpZGUtbWFyZ2luKTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDo2MDBweCkge1xuICAgIC5idWxsZXRzIHtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOjEzMDBweCkge1xuICAgIC5idWxsZXRzIHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDtcbiAgICB9XG59XG5cbi8vID09PSBCdWxsZXQgPT09IC8vXG5cbi5idWxsZXQge1xuICAgIEBpbmNsdWRlIGJ1bGxldCgkZGlyZWN0aW9uOiAnaG9yaXpvbnRhbCcpO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOjYwMHB4KSB7XG5cbiAgICA6cm9vdCB7XG4gICAgICAgIC0tYnVsbGV0LXNpemU6IDkuNXJlbTtcbiAgICB9XG5cbiAgICAuYnVsbGV0IHtcbiAgICAgICAgQGluY2x1ZGUgYnVsbGV0KCRkaXJlY3Rpb246ICd2ZXJ0aWNhbCcpO1xuICAgIH1cbn1cblxuLmZpbHRlci1idWxsZXRzIHtcbiAgICAtLWJ1bGxldC1zaXplOiA0cmVtO1xuICAgIGRpc3BsYXk6IGdyaWQ7ICBcbiAgICBnYXA6IDJyZW07XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMSwgMWZyKTtcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MDBweCkge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xuICAgIH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MDBweCkge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgzLCAxZnIpO1xuICAgIH1cbiAgICAuZmlsdGVyLWJ1bGxldCB7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAxLjNzIGVhc2UtaW4tb3V0O1xuICAgICAgICBAaW5jbHVkZSBidWxsZXQoJGRpcmVjdGlvbjogJ2hvcml6b250YWwnKTtcbiAgICAgICAgY29sb3I6IHZhcigtLWdyYXkpO1xuICAgICAgICBzdmcge1xuICAgICAgICAgICAgZmlsdGVyOiBncmF5c2NhbGUoMTAwJSk7XG4gICAgICAgICAgICBvcGFjaXR5OiAuMztcbiAgICAgICAgfVxuICAgICAgICAmOmhvdmVyLFxuICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgZmlsdGVyOiBncmF5c2NhbGUoMCk7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuYnVsbGV0X19jYXB0aW9uIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5sb2dvLWJ1bGxldCB7XG4gICAgcGFkZGluZzogMS4xcmVtO1xufSIsIlxuLmxvZ28ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGhlaWdodDogOXJlbTtcbiAgICBwYWRkaW5nOiAxcmVtO1xuICAgIGltZywgc3ZnICB7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICB9XG59XG5cbi5sb2dvLS1zcXVhcmUge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYXNwZWN0LXJhdGlvOiAxIC8gMSA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgaW1nIHtcbiAgICAgICAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfTtcbn1cblxuLmxvZ28tLWRpc2Mge1xuICAgIEBleHRlbmQgLmxvZ28tLXNxdWFyZTtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG59XG4iLCIucXVvdGUge1xuICAgIHBhZGRpbmc6IHZhcigtLXNlZ21lbnQtc3BhY2UpO1xuXG4gICAgJl9fdGl0bGUge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICAgICAgICBjb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWNvbG9yKTtcbiAgICB9XG5cbiAgICAmX19vcmdhbmlzYXRpb24ge1xuICAgICAgICBtYXJnaW4tdG9wOiAycmVtO1xuICAgICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgfVxufVxuXG4uc2VnbWVudC0tY29sb3JlZC1zZWNvbmRhcnkge1xuICAgIC5xdW90ZV9fdGl0bGUge1xuICAgICAgICBjb2xvcjogdmFyKC0tZm9udC1jb2xvcik7XG4gICAgfVxufSIsIjpyb290IHtcbiAgICAtLWljb24tY29sb3I6IHZhcigtLXByaW1hcnktY29sb3IpO1xufVxuXG4uaWNvbi1zdHJpcCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGdhcDogMXJlbTtcbn1cblxuLmljb24ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1wcmltYXJ5LWNvbG9yKTtcbiAgICBoZWlnaHQ6IDIuN3JlbTtcbiAgICB3aWR0aDogMi43cmVtO1xuICAgIHBhZGRpbmc6IC41cmVtO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjI1cyBlYXNlLWluLW91dDtcbiAgICBtYXJnaW4tdG9wOiAuM3JlbTtcbiAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDonJztcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXdoaXRlKTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWNvbG9yKTtcbiAgICB9XG4gICAgXG4gICAgJi0tbWFpbCB7XG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgIG1hc2staW1hZ2U6IHVybCgvc3JjL3N2Zy9jbGVhbmVkL21haWwuc3ZnKTtcbiAgICAgICAgICAgIC13ZWJraXQtbWFzay1pbWFnZTogdXJsKC9zcmMvc3ZnL2NsZWFuZWQvbWFpbC5zdmcpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi0tbGlua2VkaW4ge1xuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIG1hc2staW1hZ2U6IHVybCgvc3JjL3N2Zy9jbGVhbmVkL2xpbmtlZGluLnN2Zyk7XG4gICAgICAgICAgICAtd2Via2l0LW1hc2staW1hZ2U6IHVybCgvc3JjL3N2Zy9jbGVhbmVkL2xpbmtlZGluLnN2Zyk7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5zdHJpcCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgZ2FwOiAycmVtO1xufVxuXG4uYnYgYWRkcmVzcyBwIGEge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uZHVvY29sIC5pY29uLXN0cmlwIHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoLS1tYXJnaW4tNyk7XG59XG5cbi50b3BwZXIge1xuXG4gICAgLy9tYXJnaW4tYm90dG9tOiB2YXIoLS1tYXJnaW4tOCk7XG4gICAgLmJhY2tsaW5rIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBhZGRpbmc6IHZhcigtLW1hcmdpbi04KSAwO1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiAnPCAnO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmgyLTIge1xuICAgICAgICBmb250LXdlaWdodDogdmFyKC0tZnctbm9ybWFsKTtcbiAgICB9XG59XG5cbi5vZmZjYW52YXMge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgd2lkdGg6IDMwJTtcbiAgICBtaW4td2lkdGg6IDIwcmVtO1xuICAgIGhlaWdodDogMTAwdmg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWNvbG9yKTtcbiAgICB6LWluZGV4OiAxMDAwMDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2UtaW4tb3V0O1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMTAlKTtcbn1cblxuLm9mZmNhbnZhc1tkYXRhLWlzb3Blbj10cnVlXSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xufVxuXG5cbi5vZmZjYW52YXNbZGF0YS1pc29wZW49ZmFsc2VdIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTEwJSk7XG59XG5cbi5uYXZpZ2F0aW9uIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiA1cmVtIDFmcjtcbiAgICAubmF2aWdhdGlvbl9fdG9wIHtcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBlbmQ7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMnJlbTtcblxuXG4gICAgICAgIC5idG4tbmF2aWdhdGlvbi1jbG9zZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgd2lkdGg6IDJyZW07XG4gICAgICAgICAgICBoZWlnaHQ6IDJyZW07XG4gICAgICAgICAgICBhbGlnbi1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7O1xuICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDdweDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMnJlbTtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwIDAuMzVyZW0gMCAwLjM1cmVtIDtcbiAgICAgICAgICAgICAgICBncmlkLWFyZWE6IDEgLyAxO1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGJsYWNrO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIGhlaWdodDogN3B4O1xuICAgICAgICAgICAgICAgIHdpZHRoOiAycmVtO1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDAuMzVyZW0gMCAwLjM1cmVtIDA7XG4gICAgICAgICAgICAgICAgZ3JpZC1hcmVhOiAxIC8gMTtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGJsYWNrO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC5tZW51IHtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWZ3LWJvbGQpO1xuICAgICAgICBwYWRkaW5nOiA0cmVtO1xuICAgICAgICBsaSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAuOHJlbTtcbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAuMnMgZWFzZS1vdXQ7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNSUpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnRleHQgYWRkcmVzcyB7XG4gICAgcCB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICB9XG59XG5cbi5wYWdlbGluayB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkYnAtc21hbGwpIHtcbiAgICAgICAgbWFyZ2luLXRvcDogdmFyKC0tc2VnbWVudC1zcGFjZSk7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG5cbn1cblxuLnN3aXBlci1yZWZlcmVuY2VzIHtcbiAgICAuYnYge1xuICAgICAgICAtLWJ2LWhlaWdodDogMjJyZW07XG4gICAgICAgIC0tcHJpbWFyeS1jb2xvcjogdmFyKC0tY29sb3ItMik7XG4gICAgICAgIC0tc2Vjb25kYXJ5LWNvbG9yOiB2YXIoLS1jb2xvci0xKTtcbiAgICAgICAgLS1idi1jb2xvcjogdmFyKC0tYmxhY2spO1xuICAgICAgICAtLWJ2LW92ZXJsYXA6IDEwcmVtO1xuICAgICAgICAtLWJ2LW9mZnNldDogNXJlbTtcbiAgICB9XG59XG4uYnRuLXdyYXAge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGdhcDogMXJlbTtcbiAgICAvLyB3aWR0aDogdmFyKC0tY29udGFpbmVyLXdpZHRoKTtcbiAgICBoZWlnaHQ6IDVyZW07XG4gICAgei1pbmRleDogMTA7XG4gICAgdG9wOjQwJTtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHN0YXJ0O1xuICAgIG1hcmdpbi10b3A6IDFyZW07XG5cbiAgICBtYXJnaW46IDFyZW0gYXV0bztcbiAgICBtYXgtd2lkdGg6IHZhcigtLWNvbnRhaW5lci13aWR0aCk7XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NXJlbSkge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICB9XG59XG5cbi5zd2lwZXItYnRuIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICBoZWlnaHQ6IDMuNXJlbTtcbiAgICB3aWR0aDogMy41cmVtO1xuICAgIHBhZGRpbmc6IC43cmVtO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICB6LWluZGV4OiAxMDAwO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBzdmcge1xuICAgICAgICBwYXRoIHtcbiAgICAgICAgICAgIGZpbGw6IHZhcigtLXByaW1hcnktY29sb3IpO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgICYtLXByZXYge1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlWCgtMSk7XG5cbiAgICB9XG4gICAgJi0tbmV4dCB7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgIH1cbn1cblxuIiwiLmJsb2dzIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBnYXA6IDJyZW07XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maXQgICwgbWlubWF4KDE4cmVtLCAxZnIpKTtcbn1cblxuLmJsb2cge1xuICAgIGZsZXg6IDEgMSAzMyU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgcGFkZGluZzogMnJlbTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zZWNvbmRhcnktY29sb3IpO1xuICAgIG1pbi1oZWlnaHQ6IDIycmVtO1xuICAgIHRyYW5zaXRpb246IGFsbCAuMnMgZWFzZS1pbi1vdXQ7XG5cblxuICAgICZfX2RhdGUge1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgY3VycmVudENvbG9yO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICB9XG4gICAgaDIge1xuICAgICAgICBsaW5lLWhlaWdodDogMS43cmVtO1xuICAgICAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogYXV0bztcbiAgICAgICAgd29yZC1icmVhazogYnJlYWstd29yZDtcbiAgICB9XG4gICAgJl9fc3VidGl0bGUge1xuICAgICAgICBsaW5lLWhlaWdodDogMS4zcmVtO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiBhdXRvO1xuICAgIH1cblxuICAgIC5hdXRldXJzIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIH1cblxuICAgIC5hdXRldXIge1xuICAgICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjNyZW07XG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmOmhvdmVye1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1wcmltYXJ5LWNvbG9yKTtcbiAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTByZW0pIHtcbiAgICAuYmxvZyB7XG4gICAgICAgIG1heC13aWR0aDogMzByZW07XG4gICAgfVxufVxuXG4udG1wbC1ibG9nIHtcbiAgICAtLWNvbnRhaW5lci13aWR0aDogNTByZW07XG59XG4iLCIudGh1bWJuYWlsIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBjb2xvcjogY3VycmVudENvbG9yO1xuICAgIG1hcmdpbi10b3A6IDAuNXJlbTtcbiAgICBpbWcge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICB3aWR0aDogM3JlbTtcbiAgICAgICAgaGVpZ2h0OiAzcmVtO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgfVxuICAgIHAge1xuICAgICAgICBmb250LXNpemU6IDAuOHJlbTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZ2FwOiAwLjVyZW07XG4gICAgICAgIHBhZGRpbmc6IDAgMXJlbTtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgLy8gY29sb3I6IHZhcigtLWZvbnQtY29sb3IpO2BcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cbn1cblxuLnRodW1ibmFpbHMge1xuICAgIHVsIHtcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzdGFydDtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgIH1cbiAgICBoMiB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206ICAxcmVtO1xuICAgIH1cbn0iLCIuZm9vdGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGdhcDogNHJlbTtcbiAgICBtYXJnaW4tdG9wOiAxMHJlbTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlciA7XG5cbiAgICAuZm9vdGVyLWxvZ28ge1xuICAgICAgICBzdmcge1xuICAgICAgICAgICAgd2lkdGg6IDNyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwIHtcbiAgICAgICAgbWF4LXdpZHRoOiAyMHJlbTtcbiAgICB9XG5cbiAgICAuYm90dG9tLXN0cmlwIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0td2hpdGUpO1xuICAgICAgICBwYWRkaW5nLWJsb2NrOiAycmVtO1xuICAgICAgICB1bCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgZm9udC1zaXplOiAwLjdyZW07XG4gICAgICAgICAgICBnYXA6IDJyZW07XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGE6aG92ZXIge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICB9XG5cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJGJwLXNtYWxsKSB7XG4gICAgLmZvb3RlciB7XG4gICAgICAgIC5ib3R0b20tc3RyaXAge1xuICAgICAgICAgICAgcGFkZGluZy1ibG9jazogdW5zZXQ7XG4gICAgICAgICAgICBoZWlnaHQ6IDdyZW07XG4gICAgICAgICAgICB1bCB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMC43cmVtO1xuICAgICAgICAgICAgICAgIGdhcDogMnJlbTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDJyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59IiwiLmZpbHRlciB7XG4gICAgLS1wcmltYXJ5LWNvbG9yLWZvbnRjb2xvcjogd2hpdGU7XG4gICAgLS1maWx0ZXItdG9wLW1hcmdpbjogMjVyZW07XG59XG5cbi5maWx0ZXJfX3RvcGljcyB7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGdhcDogMC41cmVtO1xuICAgIGZvbnQtc2l6ZTogMC44cmVtO1xuXG4gICAgc3BhbiB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGJsYWNrO1xuICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IC41cmVtO1xuICAgIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjAwcHgpIHtcbiAgICAuZmlsdGVyX190b3BpY3Mge1xuICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgfVxufVxuXG4udG9waWNzLWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZzogMCAxcmVtO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXByaW1hcnktY29sb3IpO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICAgIGdyaWQtdGVtcGxhdGUtcm93czogMWZyO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi50b3BpYyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGdyaWQtcm93LXN0YXJ0OiAxO1xuICAgIGdyaWQtY29sdW1uLXN0YXJ0OiAxO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogdmFyKC0tZmlsdGVyLXRvcC1tYXJnaW4pO1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ2FwOiAxcmVtO1xuICAgIHBhZGRpbmc6IDFyZW0gMDtcbiAgICBsaW5lLWhlaWdodDogMS4zO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB3aGl0ZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1wcmltYXJ5LWNvbG9yKTtcbiAgICB6LWluZGV4OiAxO1xuICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWNvbG9yLWZvbnRjb2xvcik7XG5cbiAgICBtYXJnaW4tdG9wOiBjYWxjKC0xICogdmFyKC0tZmlsdGVyLXRvcC1tYXJnaW4pKTtcblxuICAgICZbZGF0YS1zdGF0ZT0nYWN0aXZlJ10ge1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgIH1cblxuICAgIGZpZWxkc2V0IHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIH1cblxuICAgIGxhYmVsIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBtYXJnaW4tbGVmdDogLjVyZW07XG4gICAgfVxuXG4gICAgaW5wdXQ6ZGlzYWJsZWQge1xuICAgICAgICBvcGFjaXR5OiAuMjtcbiAgICB9XG5cbiAgICBoMiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgIH1cblxuICAgIGZpZWxkc2V0IHtcbiAgICAgICAgb3ZlcmZsb3cteTogYXV0bztcblxuICAgICAgICBsZWdlbmQge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNrIHtcbiAgICAgICAgICAgIC8vIC13ZWJraXQtYm94LXNoYWRvdzogaW5zZXQgMCAwIDZweCBwaW5rO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0Y1RjVGNTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgICAgICAgICAgIHdpZHRoOiAyMnB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0Y1RjVGNTtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMnJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXNlY29uZGFyeS1jb2xvcik7XG4gICAgICAgIH1cblxuICAgIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODAwcHgpIHtcbiAgICBcbiAgICAuZmlsdGVyIHtcbiAgICAgICAgLS1maWx0ZXItdG9wLW1hcmdpbjogMjByZW07XG4gICAgfVxuXG4gICAgLnRvcGljIHtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxM3JlbSAxZnI7XG4gICAgICAgIHBhZGRpbmc6IDJyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG4gICAgICAgIC8vIG92ZXJmbG93LXk6IHNjcm9sbDtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlLWluLW91dDtcbiAgICB9XG59XG5cbi50b3BpY19fbGlzdCB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZml0LCBtaW5tYXgoMTVyZW0sIDFmcikpO1xuXG4gICAgZGl2IHtcbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIH1cbiAgICB9XG59IiwiXG4uYnV0dG9uLFxuYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnV0dG9uLWNvbG9yKTtcbiAgICBjb2xvcjogdmFyKC0td2hpdGUpO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mdy1ib2xkKTtcbiAgICBwYWRkaW5nOiAuOGVtIDEuNWVtO1xuICAgIGJvcmRlci1yYWRpdXM6IDIuNWVtO1xuICAgIG1hcmdpbi1ibG9jazogMWVtO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4yNTBzIGVhc2U7XG5cbiAgICAmOmhvdmVyLFxuICAgICZbZGF0YS1zdGF0ZT0nYWN0aXZlJ10sXG4gICAgJi5hY3RpdmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1idXR0b24tYWN0aXZlLWNvbG9yKTtcbiAgICB9XG5cbiAgICAmLS1pbnZlcnNlLFxuICAgIC5jb2xvcmVkICYsXG4gICAgLmJ2ICYge1xuICAgICAgICAtLWJ1dHRvbi1jb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWNvbG9yKTtcbiAgICAgICAgLS1idXR0b24tYWN0aXZlLWNvbG9yOiB2YXIoLS1wcmltYXJ5LWNvbG9yKTtcbiAgICB9XG5cbiAgICAmLS1ob2xsb3cge1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB3aGl0ZTtcbiAgICB9XG5cbiAgICAmLS1zbWFsbCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMC44ZW07XG4gICAgfVxuXG4gICAgLmFtb3VudCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIGZvbnQtc2l6ZTogLjdlbTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWNvbG9yKTtcbiAgICAgICAgcGFkZGluZzogLjJyZW07XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgzMCUpO1xuICAgICAgICBhc3BlY3QtcmF0aW86IDEgLyAxO1xuICAgICAgICB3aWR0aDogMXJlbTtcbiAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiLnRtcGwtaG9tZSAuYnYgaDEge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZnMtOSk7XG59XG5cbi50bXBsLWhvbWUgLmJ2IHtcbiAgICBoMSArIHAuc3VidGl0bGUge1xuICAgICAgICBtYXJnaW46IDRyZW0gMCAwIDA7XG4gICAgfVxufVxuXG4udG1wbC10ZWFtX21lbWJlciB7XG4gICAgLmljb24tc3RyaXAge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICAgIH1cbn1cblxuLnRtcGwtcmVmZXJlbmNlIHtcbiAgICAuYnVsbGV0cyB7XG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDEsIDFmcik7XG4gICAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiRicC1zbWFsbCkge1xuXG4gICAgLnRtcGwtcmVmZXJlbmNlIHtcbiAgICAgICAgLmJ1bGxldHMge1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTtcbiAgICAgICAgICAgIC5idWxsZXQge1xuICAgICAgICAgICAgICAgIC5idWxsZXRfX2NhcHRpb24ge1xuICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufSJdfQ== */
