@charset "UTF-8";
/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */
/**
 * 1. Set default font family to sans-serif.
 * 2. Prevent iOS and IE text size adjust after device orientation change,
 *    without disabling user zoom.
 */
@import url(https://fonts.googleapis.com/css?family=Playfair+Display:400,700);
html {
  font-family: sans-serif;
  /* 1 */
  -ms-text-size-adjust: 100%;
  /* 2 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
}

/**
 * Remove default margin.
 */
body {
  margin: 0;
}

/* HTML5 display definitions
   ========================================================================== */
/**
 * Correct `block` display not defined for any HTML5 element in IE 8/9.
 * Correct `block` display not defined for `details` or `summary` in IE 10/11
 * and Firefox.
 * Correct `block` display not defined for `main` in IE 11.
 */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
  display: block;
}

/**
 * 1. Correct `inline-block` display not defined in IE 8/9.
 * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.
 */
audio,
canvas,
progress,
video {
  display: inline-block;
  /* 1 */
  vertical-align: baseline;
  /* 2 */
}

/*
 * Prevent modern browsers from displaying `audio` without controls.
 * Remove excess height in iOS 5 devices.
 */
audio:not([controls]) {
  display: none;
  height: 0;
}

/*
 * Address `[hidden]` styling not present in IE 8/9/10.
 * Hide the `template` element in IE 8/9/10/11, Safari, and Firefox < 22.
 */
[hidden],
template {
  display: none;
}

/* Links
   ========================================================================== */
/**
 * Remove the gray background color from active links in IE 10.
 */
a {
  background-color: transparent;
}

/**
 * Improve readability of focused elements when they are also in an
 * active/hover state.
 */
a:active,
a:hover {
  outline: 0;
}

/* Text-level semantics
   ========================================================================== */
/**
 * Address styling not present in IE 8/9/10/11, Safari, and Chrome.
 */
abbr[title] {
  border-bottom: 1px dotted;
}

/**
 * Address style set to `bolder` in Firefox 4+, Safari, and Chrome.
 */
b,
strong {
  font-weight: bold;
}

/**
 * Address styling not present in Safari and Chrome.
 */
dfn {
  font-style: italic;
}

/**
 * Address variable `h1` font-size and margin within `section` and `article`
 * contexts in Firefox 4+, Safari, and Chrome.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/**
 * Address styling not present in IE 8/9.
 */
mark {
  background: #ff0;
  color: #000;
}

/**
 * Address inconsistent and variable font size in all browsers.
 */
small {
  font-size: 80%;
}

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

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

/* Embedded content
   ========================================================================== */
/**
 * Remove border when inside `a` element in IE 8/9/10.
 */
img {
  border: 0;
}

/**
 * Correct overflow not hidden in IE 8/9/10/11.
 */
svg:not(:root) {
  overflow: hidden;
}

/* Grouping content
   ========================================================================== */
/**
 * Address margin not present in IE 8/9 and Safari.
 */
figure {
  margin: 1em 40px;
}

/**
 * Address differences between Firefox and other browsers.
 */
hr {
  -moz-box-sizing: content-box;
  box-sizing: content-box;
  height: 0;
}

/**
 * Contain overflow in all browsers.
 */
pre {
  overflow: auto;
}

/**
 * Address odd `em`-unit font size rendering in all browsers.
 */
code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  font-size: 1em;
}

/* Forms
   ========================================================================== */
/**
 * Known limitation: by default, Chrome and Safari on OS X allow very limited
 * styling of `select`, unless a `border` property is set.
 */
/**
 * 1. Correct color not being inherited.
 *    Known issue: affects color of disabled elements.
 * 2. Correct font properties not being inherited.
 * 3. Address margins set differently in Firefox 4+, Safari, and Chrome.
 */
button,
input,
optgroup,
select,
textarea {
  color: inherit;
  /* 1 */
  font: inherit;
  /* 2 */
  margin: 0;
  /* 3 */
}

/**
 * Address `overflow` set to `hidden` in IE 8/9/10/11.
 */
button {
  overflow: visible;
}

/**
 * Address inconsistent `text-transform` inheritance for `button` and `select`.
 * All other form control elements do not inherit `text-transform` values.
 * Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera.
 * Correct `select` style inheritance in Firefox.
 */
button,
select {
  text-transform: none;
}

/**
 * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
 *    and `video` controls.
 * 2. Correct inability to style clickable `input` types in iOS.
 * 3. Improve usability and consistency of cursor style between image-type
 *    `input` and others.
 */
button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  /* 2 */
  cursor: pointer;
  /* 3 */
}

/**
 * Re-set default cursor for disabled elements.
 */
button[disabled],
html input[disabled] {
  cursor: default;
}

/**
 * Remove inner padding and border in Firefox 4+.
 */
button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

/**
 * Address Firefox 4+ setting `line-height` on `input` using `!important` in
 * the UA stylesheet.
 */
input {
  line-height: normal;
}

/**
 * It's recommended that you don't attempt to style these elements.
 * Firefox's implementation doesn't respect box-sizing, padding, or width.
 *
 * 1. Address box sizing set to `content-box` in IE 8/9/10.
 * 2. Remove excess padding in IE 8/9/10.
 */
input[type="checkbox"],
input[type="radio"] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */
}

/**
 * Fix the cursor style for Chrome's increment/decrement buttons. For certain
 * `font-size` values of the `input`, it causes the cursor style of the
 * decrement button to change from `default` to `text`.
 */
input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Address `appearance` set to `searchfield` in Safari and Chrome.
 * 2. Address `box-sizing` set to `border-box` in Safari and Chrome.
 */
input[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  box-sizing: content-box;
  /* 2 */
}

/**
 * Remove inner padding and search cancel button in Safari and Chrome on OS X.
 * Safari (but not Chrome) clips the cancel button when the search input has
 * padding (and `textfield` appearance).
 */
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * Define consistent border, margin, and padding.
 */
fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}

/**
 * 1. Correct `color` not being inherited in IE 8/9/10/11.
 * 2. Remove padding so people aren't caught out if they zero out fieldsets.
 */
legend {
  border: 0;
  /* 1 */
  padding: 0;
  /* 2 */
}

/**
 * Remove default vertical scrollbar in IE 8/9/10/11.
 */
textarea {
  overflow: auto;
}

/**
 * Don't inherit the `font-weight` (applied by a rule above).
 * NOTE: the default cannot safely be changed in Chrome and Safari on OS X.
 */
optgroup {
  font-weight: bold;
}

/* Tables
   ========================================================================== */
/**
 * Remove most spacing between table cells.
 */
table {
  border-collapse: collapse;
  border-spacing: 0;
}

th,
td {
  padding: 0;
}

h1.pn16-heading-logo span, .pn16-icon span, .pn16-overlay-nav a span, .pn16-overlay-share .pn16-overlay-share__toggler span, .pn16-overlay-share .pn16-overlay-share__list a span, .pn16-main-logo span, .pn16-search-wrapper .pn16-search-toggler > span, .pn16-main-nav-info .pn16-main-nav-info__logo span, .pn16-footer-credits .pn16-footer-credits__logo span, .pn16-chessboard-item-image em, .pn16-chessboard-item-video em {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
}

.pn16-show-on-desktop-block {
  display: none;
}
@media (min-width: 48em) {
  .pn16-show-on-desktop-block {
    display: block;
  }
}

@font-face {
  font-family: 'IcoMoon';
  src: url(../font/IcoMoon/IcoMoon.eot?yfq04h);
  src: url(../font/IcoMoon/IcoMoon.eot?yfq04h#iefix) format("embedded-opentype"), url(../font/IcoMoon/IcoMoon.ttf?yfq04h) format("truetype"), url(../font/IcoMoon/IcoMoon.woff?yfq04h) format("woff"), url(../font/IcoMoon/IcoMoon.svg?yfq04h#icomoon) format("svg");
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: 'BrandonGrotesque';
  src: url(../font/BrandonGrotesque/BrandonGrotesque-Regular.eot?#iefix) format("embedded-opentype"), url(../font/BrandonGrotesque/BrandonGrotesque-Regular.otf) format("otf"), url(../font/BrandonGrotesque/BrandonGrotesque-Regular.woff) format("woff"), url(../font/BrandonGrotesque/BrandonGrotesque-Regular.ttf) format("truetype"), url(../font/BrandonGrotesque/BrandonGrotesque-Regular.svg#BrandonGrotesque-Regular) format("svg");
  font-weight: 400;
  font-style: normal;
}
@font-face {
  font-family: 'BrandonGrotesque';
  src: url(../font/BrandonGrotesque/BrandonGrotesque-Medium.eot?#iefix) format("embedded-opentype"), url(../font/BrandonGrotesque/BrandonGrotesque-Medium.otf) format("otf"), url(../font/BrandonGrotesque/BrandonGrotesque-Medium.woff) format("woff"), url(../font/BrandonGrotesque/BrandonGrotesque-Medium.ttf) format("truetype"), url(../font/BrandonGrotesque/BrandonGrotesque-Medium.svg#BrandonGrotesque-Medium) format("svg");
  font-weight: 500;
  font-style: normal;
}
@font-face {
  font-family: 'BrandonGrotesque';
  src: url(../font/BrandonGrotesque/BrandonGrotesque-Bold.eot?#iefix) format("embedded-opentype"), url(../font/BrandonGrotesque/BrandonGrotesque-Bold.otf) format("otf"), url(../font/BrandonGrotesque/BrandonGrotesque-Bold.woff) format("woff"), url(../font/BrandonGrotesque/BrandonGrotesque-Bold.ttf) format("truetype"), url(../font/BrandonGrotesque/BrandonGrotesque-Bold.svg#BrandonGrotesque-Bold) format("svg");
  font-weight: 700;
  font-style: normal;
}
h1, h2, h3, h4, h5, h6 {
  margin: 0;
  padding: 0;
  font-weight: normal;
}

h1.pn16-heading-logo {
  display: inline-block;
  height: 73px;
  width: 194px;
  margin: 0 auto;
  background-color: transparent;
  background-image: url("../img/heading-logo.png");
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-size: cover;
}
@media (min-width: 48em) {
  h1.pn16-heading-logo {
    height: 112px;
    width: 296px;
  }
}
html.pn16-lang-it h1.pn16-heading-logo {
  background-image: url("../img/heading-logo.png");
}
html.pn16-lang-en h1.pn16-heading-logo {
  background-image: url("../img/heading-logo-en.png");
}
html.pn16-lang-de h1.pn16-heading-logo {
  background-image: url("../img/heading-logo-de.png");
}
h1.pn16-heading-A {
  margin-bottom: 1em;
  color: #0a2414;
  font-family: "Playfair Display", serif;
  font-weight: normal;
  font-size: 35px;
  font-size: 2.19rem;
}
@media (min-width: 48em) {
  h1.pn16-heading-A {
    font-size: 40px;
    font-size: 2.5rem;
  }
}

h2.pn16-heading-A {
  color: #0a2414;
  font-family: "Playfair Display", serif;
  font-weight: normal;
  font-size: 30px;
  font-size: 1.88rem;
}
h2.pn16-heading-B {
  color: #a67556;
  font-family: "Playfair Display", serif;
  font-weight: normal;
  font-size: 120px;
  font-size: 7.5rem;
}
@media (min-width: 48em) {
  h2.pn16-heading-B {
    font-size: 140px;
    font-size: 8.75rem;
  }
}

h3.pn16-heading-A {
  margin-bottom: 0.3em;
  color: #0a2414;
  font-family: "Playfair Display", serif;
  font-weight: 700;
  font-size: 20px;
  font-size: 1.25rem;
}
@media (min-width: 48em) {
  h3.pn16-heading-A {
    font-size: 23px;
    font-size: 1.44rem;
  }
}

h4.pn16-heading-A {
  color: #0a2414;
  font-family: "BrandonGrotesque", "Helvetica Neue", "Helvetica", "Roboto", "Arial", sans-serif;
  font-weight: 500;
  font-size: 18px;
  font-size: 1.13rem;
}
@media (min-width: 48em) {
  h4.pn16-heading-A {
    font-size: 20px;
    font-size: 1.25rem;
  }
}

h5.pn16-heading-A {
  margin-bottom: 0.5em;
  color: #a67556;
  font-family: "BrandonGrotesque", "Helvetica Neue", "Helvetica", "Roboto", "Arial", sans-serif;
  font-weight: 500;
  font-size: 14px;
  font-size: 0.88rem;
  text-transform: uppercase;
}

.pn16-awarded-items-intro .pn16-heading-A {
  position: relative;
  padding-top: 10px;
  padding-bottom: 20px;
}
.pn16-awarded-items-intro .pn16-heading-A:after {
  position: absolute;
  bottom: 0;
  left: 50%;
  display: inline-block;
  height: 1px;
  width: 50px;
  margin-left: -25px;
  background-color: #1a1724;
  content: '';
}

.pn16-overlay-video-description > div, .pn16-jury-item .pn16-jury-item__text, .pn16-service-body, .pn16-cover .pn16-cover__body, .pn16-textsheet .pn16-textsheet__body, .pn16-search .pn16-search__results li {
  color: #0a2414;
  font-family: "BrandonGrotesque", "Helvetica Neue", "Helvetica", "Roboto", "Arial", sans-serif;
  font-size: 20px;
  font-size: 1.25rem;
}

.pn16-overlay-video-description > div > p:first-child, .pn16-jury-item .pn16-jury-item__text > p:first-child, .pn16-service-body > p:first-child, .pn16-textsheet .pn16-textsheet__body > p:first-child {
  text-indent: 2.19em;
}

.pn16-cover .pn16-cover__body > p:first-child:first-letter {
  float: left;
  padding-right: 15px;
  color: #a67556;
  font-family: "Playfair Display", serif;
  font-weight: normal;
  font-size: 60px;
  font-size: 3.75rem;
  line-height: 0.85em;
}

.pn16-timeline .pn16-timeline-item .pn16-timeline-item__text > div, .pn16-cover .pn16-cover__body {
  padding: 0.94em;
}
@media (min-width: 48em) {
  .pn16-timeline .pn16-timeline-item .pn16-timeline-item__text > div, .pn16-cover .pn16-cover__body {
    max-width: 60%;
    padding: 0;
  }
}

.pn16-overlay-video-description > div > p:first-child, .pn16-cover .pn16-cover__body > p:first-child, .pn16-textsheet .pn16-textsheet__body > p:first-child, .pn16-overlay-video-description > div > ul:first-child, .pn16-cover .pn16-cover__body > ul:first-child, .pn16-textsheet .pn16-textsheet__body > ul:first-child, .pn16-overlay-video-description > div > ol:first-child, .pn16-cover .pn16-cover__body > ol:first-child, .pn16-textsheet .pn16-textsheet__body > ol:first-child {
  margin-top: 0;
}
.pn16-overlay-video-description > div > p:last-child, .pn16-cover .pn16-cover__body > p:last-child, .pn16-textsheet .pn16-textsheet__body > p:last-child, .pn16-overlay-video-description > div > ul:last-child, .pn16-cover .pn16-cover__body > ul:last-child, .pn16-textsheet .pn16-textsheet__body > ul:last-child, .pn16-overlay-video-description > div > ol:last-child, .pn16-cover .pn16-cover__body > ol:last-child, .pn16-textsheet .pn16-textsheet__body > ol:last-child {
  margin-bottom: 0;
}

.pn16-overlay-video-description > div a, .pn16-cover .pn16-cover__body a, .pn16-textsheet .pn16-textsheet__body a {
  color: #a67556;
  text-decoration: none;
}
html.no-touch .pn16-overlay-video-description > div a, html.no-touch .pn16-cover .pn16-cover__body a, .pn16-cover html.no-touch .pn16-cover__body a, html.no-touch .pn16-textsheet .pn16-textsheet__body a, .pn16-textsheet html.no-touch .pn16-textsheet__body a {
  -webkit-transition: color 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96);
  -moz-transition: color 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96);
  transition: color 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96);
}
html.no-touch .pn16-overlay-video-description > div a:hover, html.no-touch .pn16-cover .pn16-cover__body a:hover, .pn16-cover html.no-touch .pn16-cover__body a:hover, html.no-touch .pn16-textsheet .pn16-textsheet__body a:hover, .pn16-textsheet html.no-touch .pn16-textsheet__body a:hover {
  color: inherit;
}

.pn16-cta.pn16-cta--A:after, .pn16-cta.pn16-cta--B:after, .pn16-cta.pn16-cta--E:after, .pn16-chessboard-item-image span:after {
  content: '\f178';
}

.pn16-cta.pn16-cta--C:before, .pn16-cta.pn16-cta--D:before, .pn16-cta.pn16-cta--noarrow:before {
  content: '\f175';
}

.pn16-overlay-nav .pn16-overlay-nav__next:before {
  content: '\f054';
}

.pn16-select-replacement .pn16-select-replacement__trigger:after, .pn16-language-wrapper .pn16-language-toggler:after {
  content: '\f078';
}

.pn16-overlay-nav .pn16-overlay-nav__prev:before {
  content: '\f053';
}

.pn16-search-wrapper .pn16-search-toggler:before {
  content: '\f002';
}

.pn16-overlay .pn16-overlay__toolbar.pn16-active .pn16-overlay-share__toggler:before, .pn16-overlay-nav .pn16-overlay-nav__close:before, html.pn16-search-open .pn16-search-wrapper .pn16-search-toggler:before {
  content: '\f00d';
}

.pn16-overlay-share .pn16-overlay-share__toggler:before {
  content: '\f1e0';
}

.pn16-play-video:after, .pn16-overlay-video:after, .galleryOverlay .galleryCarousel .galleryCarousel__item .galleryCarousel__item__content.galleryCarousel__item__content--has-video .galleryCarousel__item__image .fakePlaybtn:after, .pn16-chessboard-item-video:after {
  content: '\f04b';
}

.pn16-icon.pn16-icon-facebook:before, .pn16-overlay-share .pn16-overlay-share__facebook:before {
  content: '\f230';
}

.pn16-icon.pn16-icon-twitter:before, .pn16-overlay-share .pn16-overlay-share__twitter:before {
  content: '\f099';
}

.pn16-icon.pn16-icon-instagram:before {
  content: '\f16d';
}

.pn16-icon {
  display: inline-block;
  color: #1a1724;
}
.pn16-icon:before {
  font-family: "IcoMoon";
}

.pn16-play-video, .pn16-overlay-video, .galleryOverlay .galleryCarousel .galleryCarousel__item .galleryCarousel__item__content.galleryCarousel__item__content--has-video .galleryCarousel__item__image .fakePlaybtn, .pn16-chessboard-item-video {
  position: relative;
}
.pn16-play-video:after, .pn16-overlay-video:after, .galleryOverlay .galleryCarousel .galleryCarousel__item .galleryCarousel__item__content.galleryCarousel__item__content--has-video .galleryCarousel__item__image .fakePlaybtn:after, .pn16-chessboard-item-video:after {
  position: absolute;
  top: 50%;
  right: 0;
  bottom: 0;
  left: 50%;
  display: inline-block;
  height: 60px;
  width: 60px;
  transform: translate(-50%, -50%);
  font-family: "IcoMoon";
  color: #ffffff;
  font-size: 60px;
  font-size: 3.75rem;
  line-height: 60px;
  text-align: center;
  border-radius: 50%;
  pointer-events: none;
}

.pn16-separator {
  display: block;
  margin: 0;
  margin-top: 0.94em;
  margin-bottom: 2.63em;
  border: none;
}
.pn16-separator:after {
  display: inline-block;
  height: 1px;
  width: 50px;
  margin: 0 auto;
  background-color: #1a1724;
  content: '';
}
.pn16-separator.pn16-separator--alternate:after {
  background-color: #a67556;
}

@-webkit-keyframes spinner {
  from {
    -webkit-transform: rotate(0);
  }
  to {
    -webkit-transform: rotate(360deg);
  }
}
@-moz-keyframes spinner {
  from {
    -moz-transform: rotate(0);
  }
  to {
    -moz-transform: rotate(360deg);
  }
}
@keyframes spinner {
  from {
    -webkit-transform: rotate(0);
    -moz-transform: rotate(0);
    -ms-transform: rotate(0);
    -o-transform: rotate(0);
    transform: rotate(0);
  }
  to {
    -webkit-transform: rotate(360deg);
    -moz-transform: rotate(360deg);
    -ms-transform: rotate(360deg);
    -o-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
body.pn16-overlay-loading {
  position: relative;
  overflow: hidden;
}
body.pn16-overlay-loading:before {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 193;
  display: block;
  height: 100%;
  width: 100%;
  background-color: #ffffff;
  content: '';
}
body.pn16-overlay-loading:after {
  position: fixed;
  top: 50%;
  right: 0;
  bottom: 0;
  left: 50%;
  z-index: 194;
  display: inline-block;
  height: 50px;
  width: 90px;
  margin: -25px 0 0 -45px;
  background-image: url("../img/preloader.gif");
  background-position: 50% 50%;
  background-repeat: no-repeat;
  content: "";
}

body.pn16-overlay-nooverflow {
  overflow: hidden;
}

body.pn16-overlay-transition-loading .pn16-overlay__media, body.pn16-overlay-transition-loading .pn16-overlay__text, body.pn16-overlay-transition-loading .pn16-overlay__timeline {
  opacity: 0;
  visibility: hidden;
}

body.pn16-overlay-success {
  overflow: hidden;
}
body.pn16-overlay-success .pn16-overlay-wrapper {
  opacity: 1;
  visibility: visible;
}

.pn16-overlay-wrapper {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 195;
  background-color: #ffffff;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: opacity 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96), visibility 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96);
  -moz-transition: opacity 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96), visibility 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96);
  transition: opacity 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96), visibility 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96);
}

.pn16-overlay {
  -webkit-transition: all 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96);
  -moz-transition: all 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96);
  transition: all 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96);
  height: 100%;
  overflow: hidden;
  overflow-y: auto;
}
html.touch .pn16-overlay {
  -webkit-overflow-scrolling: touch;
}
@media (min-width: 48em) {
  .pn16-overlay {
    height: auto;
    padding-top: 0;
    overflow: visible;
    overflow-y: visible;
  }
}
.pn16-overlay .pn16-overlay__inner {
  position: relative;
}
@media (min-width: 48em) {
  .pn16-overlay .pn16-overlay__inner {
    width: 100%;
    height: auto;
  }
  .pn16-overlay .pn16-overlay__inner::after {
    clear: both;
    content: "";
    display: table;
  }
}
.pn16-overlay .pn16-overlay__media, .pn16-overlay .pn16-overlay__text, .pn16-overlay .pn16-overlay__timeline {
  background-color: #ffffff;
  -webkit-transition: opacity 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96), visibility 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96);
  -moz-transition: opacity 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96), visibility 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96);
  transition: opacity 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96), visibility 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96);
}
@media (min-width: 48em) {
  .pn16-overlay .pn16-overlay__media, .pn16-overlay .pn16-overlay__text, .pn16-overlay .pn16-overlay__timeline {
    width: 50%;
    height: auto;
    float: left;
  }
}
.pn16-overlay .pn16-overlay__media {
  background-color: #0a2414;
}
@media (min-width: 48em) {
  .pn16-overlay .pn16-overlay__media {
    height: 100vh;
  }
}
@media (min-width: 48em) {
  .pn16-overlay .pn16-overlay__text {
    padding-top: 70px;
  }
}
.pn16-overlay .pn16-overlay__text > div {
  padding: 1.88em 0.94em;
}
@media (min-width: 48em) {
  .pn16-overlay .pn16-overlay__text > div {
    padding: 15%;
  }
}
@media (min-width: 48em) {
  .pn16-overlay .pn16-overlay__timeline {
    padding-top: 70px;
  }
}
.pn16-overlay .pn16-overlay__timeline > div {
  padding: 1.88em 0.94em;
}
@media (min-width: 48em) {
  .pn16-overlay .pn16-overlay__timeline > div {
    padding: 5% 15%;
  }
}
@media (min-width: 48em) {
  .pn16-overlay .pn16-overlay__scroll.pn16-scrollable {
    overflow: hidden;
    overflow-y: auto;
  }
}
@media (min-width: 48em) {
  .pn16-overlay .pn16-overlay__scroll.pn16-valign {
    position: relative;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%);
  }
}
.pn16-overlay .pn16-overlay__toolbar {
  position: absolute;
  top: 0;
  right: 0;
  -webkit-transition: opacity 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96), visibility 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96);
  -moz-transition: opacity 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96), visibility 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96);
  transition: opacity 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96), visibility 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96);
}
@media (min-width: 48em) {
  .pn16-overlay .pn16-overlay__toolbar {
    position: fixed;
    right: 15px;
    width: 50px;
    height: 100%;
  }
}
.pn16-overlay .pn16-overlay__toolbar.pn16-hidden {
  opacity: 0;
  visibility: hidden;
}
.pn16-overlay .pn16-overlay__toolbar > div {
  width: 50px;
  float: right;
  background-color: #ffffff;
}
@media (min-width: 48em) {
  .pn16-overlay .pn16-overlay__toolbar > div {
    width: auto;
    float: none;
    position: relative;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%);
  }
}
.pn16-overlay .pn16-overlay__toolbar.pn16-active .pn16-overlay-nav {
  height: 0;
  opacity: 0;
  overflow: hidden;
  visibility: hidden;
}
.pn16-overlay .pn16-overlay__toolbar.pn16-active .pn16-overlay-share__list {
  height: auto;
  opacity: 1;
  overflow: visible;
  visibility: visible;
}

.pn16-overlay-image, .pn16-overlay-video {
  	/*
  	   1,1  per aspect ratio 1:1
  	   16,9 per aspect ratio 16:9 
  	   4,3  per aspect ratio 4:3 etc
      */
  position: relative;
  background-color: transparent;
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-size: cover;
}
.pn16-overlay-image:before, .pn16-overlay-video:before {
  display: block;
  width: 100%;
  padding-top: 111%;
  content: "";
}
.pn16-overlay-image > *:first-child, .pn16-overlay-video > *:first-child {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}
@media (min-width: 48em) {
  .pn16-overlay-image, .pn16-overlay-video {
    height: 100%;
    width: 100%;
  }
}

.pn16-overlay-video {
  position: relative;
  display: block;
}

.pn16-overlay-streamvideo {
  	/*
  	   1,1  per aspect ratio 1:1
  	   16,9 per aspect ratio 16:9 
  	   4,3  per aspect ratio 4:3 etc
      */
  position: relative;
}
.pn16-overlay-streamvideo:before {
  display: block;
  width: 100%;
  padding-top: 56.5%;
  content: "";
}
.pn16-overlay-streamvideo > *:first-child {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}
@media (min-width: 48em) {
  .pn16-overlay-streamvideo {
    position: relative;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%);
  }
}
.pn16-overlay-streamvideo embed, .pn16-overlay-streamvideo iframe {
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
}

.pn16-overlay-nav a, .pn16-overlay-share .pn16-overlay-share__toggler, .pn16-overlay-share .pn16-overlay-share__list a {
  display: block;
  height: 50px;
  width: 50px;
  text-align: center;
  text-decoration: none;
}
.pn16-overlay-nav a:before, .pn16-overlay-share .pn16-overlay-share__toggler:before, .pn16-overlay-share .pn16-overlay-share__list a:before {
  display: block;
  height: inherit;
  width: inherit;
  font-family: "IcoMoon";
  font-size: 16px;
  font-size: 1rem;
  font-weight: normal;
  line-height: 50px;
}
html.no-touch .pn16-overlay-nav a, .pn16-overlay-nav html.no-touch a, html.no-touch .pn16-overlay-share .pn16-overlay-share__toggler, .pn16-overlay-share html.no-touch .pn16-overlay-share__toggler, html.no-touch .pn16-overlay-share .pn16-overlay-share__list a, .pn16-overlay-share .pn16-overlay-share__list html.no-touch a {
  -webkit-transition: color 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96), background-color 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96);
  -moz-transition: color 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96), background-color 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96);
  transition: color 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96), background-color 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96);
}

.pn16-overlay-nav {
  height: auto;
  opacity: 1;
  overflow: visible;
  visibility: visible;
  -webkit-transition: opacity 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96), visibility 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96);
  -moz-transition: opacity 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96), visibility 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96);
  transition: opacity 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96), visibility 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96);
}
.pn16-overlay-nav ul {
  margin-top: 0;
  margin-bottom: 0;
  padding-left: 0;
  list-style: none;
}
.pn16-overlay-nav a {
  color: #0a2414;
}
html.no-touch .pn16-overlay-nav a:hover {
  color: #ffffff;
  background-color: #0a2414;
}

.pn16-overlay-share ul {
  margin-top: 0;
  margin-bottom: 0;
  padding-left: 0;
  list-style: none;
}
.pn16-overlay-share .pn16-overlay-share__toggler {
  color: #a67556;
}
html.no-touch .pn16-overlay-share .pn16-overlay-share__toggler:hover {
  color: #ffffff;
  background-color: #a67556;
}
.pn16-overlay-share .pn16-overlay-share__list {
  height: 0;
  opacity: 0;
  overflow: hidden;
  visibility: hidden;
  -webkit-transition: all 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96);
  -moz-transition: all 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96);
  transition: all 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96);
}
.pn16-overlay-share .pn16-overlay-share__list a {
  color: #0a2414;
}
html.no-touch .pn16-overlay-share .pn16-overlay-share__list a:hover {
  color: #ffffff;
  background-color: #0a2414;
}

.pn16-overlay-cite {
  text-align: center;
}

.pn16-yt-embed {
  position: relative;
  height: 0;
  padding-top: 30px;
  padding-bottom: 56.25%;
  overflow: hidden;
}
.pn16-yt-embed iframe, .pn16-yt-embed object, .pn16-yt-embed embed {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
}

.pn16-overlay-wrapper .pn16-overlay {
  height: 100%;
  padding-top: 55px;
}
@media (min-width: 48em) {
  .pn16-overlay-wrapper .pn16-overlay {
    padding-top: 0;
  }
}
@media (min-width: 48em) {
  .pn16-overlay-wrapper .pn16-overlay .pn16-overlay__inner {
    height: 100%;
  }
}
@media (min-width: 48em) {
  .pn16-overlay-wrapper .pn16-overlay .pn16-overlay__media, .pn16-overlay-wrapper .pn16-overlay .pn16-overlay__text, .pn16-overlay-wrapper .pn16-overlay .pn16-overlay__timeline {
    height: 100%;
  }
}
@media (min-width: 48em) {
  .pn16-overlay-wrapper .pn16-overlay .pn16-overlay__text {
    overflow: hidden;
    overflow-y: auto;
  }
}
@media (min-width: 48em) {
  .pn16-overlay-wrapper .pn16-overlay .pn16-overlay__timeline > div {
    height: 100%;
  }
}
@media (min-width: 48em) {
  .pn16-overlay-wrapper .pn16-overlay .pn16-overlay__timeline iframe {
    height: 100% !important;
  }
}
@media (min-width: 48em) {
  .pn16-overlay-wrapper .pn16-overlay .pn16-yt-embed {
    position: relative;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%);
  }
}
.pn16-overlay-wrapper .pn16-overlay .pn16-overlay__toolbar {
  position: absolute;
}

.galleryOverlay {
  position: fixed;
  z-index: 190;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  min-height: 100%;
  max-height: 100%;
  background-color: #fff;
  visibility: hidden;
  opacity: 0;
  pointer-events: none;
  transition: all .4s linear 0s;
}
.galleryOverlay * {
  outline: none !important;
}
.galleryOverlay.visible {
  visibility: visible;
  opacity: 1;
  pointer-events: all;
  transition: all .4s linear 0s;
}
.galleryOverlay .pn16-overlay .pn16-overlay__toolbar {
  top: 50%;
  transform: translateY(-50%);
}
.galleryOverlay .slick-dots {
  display: none;
}
.galleryOverlay .js-pn16-ajax-content {
  height: 100%;
  min-height: 100%;
}
.galleryOverlay .js-pn16-ajax-content .pn16-overlay {
  height: 100%;
  min-height: 100%;
}
.galleryOverlay .js-pn16-ajax-content .pn16-overlay .pn16-overlay__inner {
  height: 100%;
  min-height: 100%;
}
.galleryOverlay .galleryTitle {
  position: relative;
  top: 120px;
  text-align: center;
  color: #a67556;
  font-family: "BrandonGrotesque", "Helvetica Neue", "Helvetica", "Roboto", "Arial", sans-serif;
  font-weight: 500;
  font-size: 14px;
  font-size: 0.88rem;
  text-transform: uppercase;
}
.galleryOverlay .galleryCarousel {
  height: 100%;
  min-height: 100%;
  padding-top: 160px;
  padding-bottom: 0;
}
.galleryOverlay .galleryCarousel .galleryCarousel__item {
  overflow: hidden;
}
.galleryOverlay .galleryCarousel .galleryCarousel__item .galleryCarousel__item__content {
  position: relative;
  width: 80%;
  margin: 0 auto;
  max-width: 740px;
}
.galleryOverlay .galleryCarousel .galleryCarousel__item .galleryCarousel__item__content:before {
  display: block;
  content: '';
  width: 100%;
  padding-bottom: 56.27%;
}
.galleryOverlay .galleryCarousel .galleryCarousel__item .galleryCarousel__item__content iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.galleryOverlay .galleryCarousel .galleryCarousel__item .galleryCarousel__item__content iframe[src=''] {
  display: none;
}
.galleryOverlay .galleryCarousel .galleryCarousel__item .galleryCarousel__item__content.galleryCarousel__item__content--has-video {
  cursor: pointer;
}
.galleryOverlay .galleryCarousel .galleryCarousel__item .galleryCarousel__item__content.galleryCarousel__item__content--has-video .galleryCarousel__item__image .fakePlaybtn {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
}
.galleryOverlay .galleryCarousel .galleryCarousel__item .galleryCarousel__item__content .galleryCarousel__item__image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
}
@media (min-width: 48em) {
  .galleryOverlay .galleryCarousel .galleryCarousel__item .galleryCarousel__item__content .galleryCarousel__item__image {
    background-position: center center;
  }
}
.galleryOverlay .galleryCarousel .galleryCarousel__item .galleryCarousel__item__description {
  display: none;
}
.galleryOverlay .galleryCarousel .galleryCarousel__item.galleryCarousel__item--double .galleryCarousel__item__content {
  width: 100%;
  margin-left: 0;
  float: left;
  max-width: none;
}
@media (min-width: 48em) {
  .galleryOverlay .galleryCarousel .galleryCarousel__item.galleryCarousel__item--double .galleryCarousel__item__content {
    width: 54%;
  }
}
.galleryOverlay .galleryCarousel .galleryCarousel__item.galleryCarousel__item--double .galleryCarousel__item__content .galleryCarousel__item__image {
  background-position: center center;
}
@media (min-width: 48em) {
  .galleryOverlay .galleryCarousel .galleryCarousel__item.galleryCarousel__item--double .galleryCarousel__item__content .galleryCarousel__item__image {
    background-position: center right;
  }
}
.galleryOverlay .galleryCarousel .galleryCarousel__item.galleryCarousel__item--double .pn16-overlay__text {
  width: 100%;
  padding-left: 20px;
  padding-right: 20px;
}
.galleryOverlay .galleryCarousel .galleryCarousel__item.galleryCarousel__item--double .pn16-overlay__text > div {
  padding: 0;
}
@media (min-width: 48em) {
  .galleryOverlay .galleryCarousel .galleryCarousel__item.galleryCarousel__item--double .pn16-overlay__text {
    padding-left: 0;
    padding-right: 0;
  }
}
.galleryOverlay .galleryCarousel .galleryCarousel__item.galleryCarousel__item--double .pn16-heading-A {
  text-align: center;
  padding-top: 40px;
}
@media (min-width: 48em) {
  .galleryOverlay .galleryCarousel .galleryCarousel__item.galleryCarousel__item--double .pn16-heading-A {
    padding-top: 0;
    text-align: left;
  }
}
.galleryOverlay .galleryCarousel .galleryCarousel__item.galleryCarousel__item--double .galleryCarousel__item__description {
  display: block;
  width: 100%;
  padding-left: 0;
  padding-right: 0;
  float: left;
}
@media (min-width: 48em) {
  .galleryOverlay .galleryCarousel .galleryCarousel__item.galleryCarousel__item--double .galleryCarousel__item__description {
    width: calc(50% - 200px);
    padding-left: 100px;
  }
}
.galleryOverlay .galleryFooterCarousel {
  display: none;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  max-height: 100px;
  height: 100px;
  padding: 0;
  text-align: center;
}
@media (min-width: 48em) {
  .galleryOverlay .galleryFooterCarousel {
    display: block;
  }
}
.galleryOverlay .galleryFooterCarousel .customSlider {
  width: auto;
  height: 100px;
  position: relative;
  overflow: hidden;
  left: 0;
  transition: all .4s ease-in-out 0s;
}
.galleryOverlay .galleryFooterCarousel .galleryCarousel__item {
  display: inline-block;
  margin: 0 auto;
  width: auto;
  height: 100px;
  float: left;
  position: relative;
}
.galleryOverlay .galleryFooterCarousel .galleryCarousel__item.currentThumb:before {
  content: '';
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.6);
}
.galleryOverlay .galleryFooterCarousel .galleryCarousel__item.currentThumb:after {
  content: '';
  display: block;
  position: absolute;
  width: 100%;
  height: 2px;
  left: 0;
  bottom: 0;
  background-color: #a67556;
}
.galleryOverlay .galleryFooterCarousel .galleryCarousel__item .galleryCarousel__item__content {
  width: 100%;
  margin: 0 auto;
}
.galleryOverlay .galleryFooterCarousel .galleryCarousel__item .galleryCarousel__item__content img {
  width: auto;
  height: 100px;
}

.pn16-cta.pn16-cta--A, .pn16-cta.pn16-cta--E {
  display: inline-block;
  padding-top: 0.31em;
  padding-bottom: 0.31em;
  color: #a67556;
  font-family: "BrandonGrotesque", "Helvetica Neue", "Helvetica", "Roboto", "Arial", sans-serif;
  font-weight: 500;
  font-size: 14px;
  font-size: 0.88rem;
  text-decoration: none;
}
html.no-touch .pn16-cta.pn16-cta--A:hover {
  color: #0a2414;
}
html.no-touch .pn16-cta.pn16-cta--E:hover {
  color: #ffffff;
}
.pn16-cta.pn16-cta--B {
  display: inline-block;
  color: inherit;
  text-decoration: none;
}
html.no-touch .pn16-cta.pn16-cta--B:hover {
  color: #a67556;
}
.pn16-cta.pn16-cta--B:after {
  color: #a67556;
  vertical-align: middle;
}
.pn16-cta.pn16-cta--A:after, .pn16-cta.pn16-cta--B:after, .pn16-cta.pn16-cta--E:after {
  display: inline-block;
  padding-left: 12px;
  font-family: "IcoMoon";
  font-size: 18px;
  font-size: 1.13rem;
  font-weight: normal;
  position: relative;
  top: 3px;
}
html.no-touch .pn16-cta.pn16-cta--A, html.no-touch .pn16-cta.pn16-cta--B, html.no-touch .pn16-cta.pn16-cta--E {
  -webkit-transition: color 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96);
  -moz-transition: color 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96);
  transition: color 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96);
}
html.no-touch .pn16-cta.pn16-cta--A:after, html.no-touch .pn16-cta.pn16-cta--B:after, html.no-touch .pn16-cta.pn16-cta--E:after {
  -webkit-transition: -webkit-transform 0.25s cubic-bezier(0.46, 0.03, 0.52, 0.96);
  -moz-transition: -moz-transform 0.25s cubic-bezier(0.46, 0.03, 0.52, 0.96);
  transition: transform 0.25s cubic-bezier(0.46, 0.03, 0.52, 0.96);
}
html.no-touch .pn16-cta.pn16-cta--A:hover:after, html.no-touch .pn16-cta.pn16-cta--B:hover:after, html.no-touch .pn16-cta.pn16-cta--E:hover:after {
  -webkit-transform: translateX(50%);
  -moz-transform: translateX(50%);
  -ms-transform: translateX(50%);
  -o-transform: translateX(50%);
  transform: translateX(50%);
}
.pn16-cta.pn16-cta--C, .pn16-cta.pn16-cta--D, .pn16-cta.pn16-cta--noarrow {
  position: relative;
  display: inline-block;
  text-decoration: none;
}
.pn16-cta.pn16-cta--C:before, .pn16-cta.pn16-cta--D:before, .pn16-cta.pn16-cta--noarrow:before {
  position: absolute;
  top: 15px;
  left: -20px;
  font-family: "IcoMoon";
  color: #a67556;
  font-size: 18px;
  font-size: 1.13rem;
  font-weight: normal;
  vertical-align: top;
}
html.no-touch .pn16-cta.pn16-cta--C, html.no-touch .pn16-cta.pn16-cta--D, html.no-touch .pn16-cta.pn16-cta--noarrow {
  -webkit-transition: color 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96);
  -moz-transition: color 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96);
  transition: color 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96);
}
html.no-touch .pn16-cta.pn16-cta--C:before, html.no-touch .pn16-cta.pn16-cta--D:before, html.no-touch .pn16-cta.pn16-cta--noarrow:before {
  -webkit-transition: -webkit-transform 0.25s cubic-bezier(0.46, 0.03, 0.52, 0.96);
  -moz-transition: -moz-transform 0.25s cubic-bezier(0.46, 0.03, 0.52, 0.96);
  transition: transform 0.25s cubic-bezier(0.46, 0.03, 0.52, 0.96);
}
html.no-touch .pn16-cta.pn16-cta--C:hover, html.no-touch .pn16-cta.pn16-cta--D:hover, html.no-touch .pn16-cta.pn16-cta--noarrow:hover {
  color: #a67556;
}
html.no-touch .pn16-cta.pn16-cta--C:hover:before, html.no-touch .pn16-cta.pn16-cta--D:hover:before, html.no-touch .pn16-cta.pn16-cta--noarrow:hover:before {
  -webkit-transform: translateY(100%);
  -moz-transform: translateY(100%);
  -ms-transform: translateY(100%);
  -o-transform: translateY(100%);
  transform: translateY(100%);
}
.pn16-cta.pn16-cta--C {
  color: #ffffff;
}
.pn16-cta.pn16-cta--D {
  color: #0a2414;
}
.pn16-cta.pn16-cta--noarrow {
  color: #ffffff;
}
.pn16-cta.pn16-cta--noarrow:before {
  display: none;
}
.pn16-cta.pn16-cta--F {
  position: relative;
  display: inline-block;
  padding-top: 35px;
  padding-bottom: 35px;
  color: #a67556;
  font-family: "BrandonGrotesque", "Helvetica Neue", "Helvetica", "Roboto", "Arial", sans-serif;
  font-weight: 500;
  font-size: 14px;
  font-size: 0.88rem;
  text-decoration: none;
  -webkit-transition: color 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96);
  -moz-transition: color 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96);
  transition: color 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96);
}
.pn16-cta.pn16-cta--F:before, .pn16-cta.pn16-cta--F:after {
  position: absolute;
  left: 50%;
  display: block;
  height: 1px;
  width: 50px;
  margin-left: -25px;
  background-color: #a67556;
  content: '';
  -webkit-transition: background-color 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96);
  -moz-transition: background-color 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96);
  transition: background-color 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96);
}
.pn16-cta.pn16-cta--F:before {
  top: 20px;
}
.pn16-cta.pn16-cta--F:after {
  bottom: 20px;
}
html.no-touch .pn16-cta.pn16-cta--F:hover {
  color: #0a2414;
}
html.no-touch .pn16-cta.pn16-cta--F:hover:before, html.no-touch .pn16-cta.pn16-cta--F:hover:after {
  background-color: #0a2414;
}

.pn16-search-form .pn16-search-form__input:focus {
  outline: 0;
}

input::-webkit-input-placeholder, textarea::-webkit-input-placeholder {
  color: #dcddde;
}
input::-moz-placeholder, textarea::-moz-placeholder {
  color: #dcddde;
}
input:-moz-placeholder, textarea:-moz-placeholder {
  color: #dcddde;
}
input:-ms-input-placeholder, textarea:-ms-input-placeholder {
  color: #dcddde;
}

.pn16-placeholder {
  color: #dcddde;
}

.pn16-select-replacement {
  position: relative;
  display: inline-block;
  height: 50px;
  width: 210px;
  color: #a67556;
  font-family: "BrandonGrotesque", "Helvetica Neue", "Helvetica", "Roboto", "Arial", sans-serif;
  font-weight: 500;
  text-align: left;
  background-color: #ffffff;
}
.pn16-select-replacement .pn16-select-replacement__trigger {
  height: inherit;
  width: inherit;
  padding: 15px;
  font-size: 14px;
  font-size: 0.88rem;
  font-weight: 700;
  border-top: 1px solid #a67556;
  border-bottom: 1px solid #a67556;
}
.pn16-select-replacement .pn16-select-replacement__trigger:after {
  display: inline-block;
  height: 50px;
  position: absolute;
  top: 0;
  right: 15px;
  font-family: "IcoMoon";
  color: #a67556;
  font-size: 12px;
  font-size: 0.75rem;
  font-weight: normal;
  line-height: 50px;
  -webkit-transition: all 0.65s cubic-bezier(0.65, 0.05, 0.36, 1);
  -moz-transition: all 0.65s cubic-bezier(0.65, 0.05, 0.36, 1);
  transition: all 0.65s cubic-bezier(0.65, 0.05, 0.36, 1);
}
html.no-touch .pn16-select-replacement .pn16-select-replacement__trigger {
  cursor: pointer;
  -webkit-transition: color 0.65s cubic-bezier(0.65, 0.05, 0.36, 1), background-color 0.65s cubic-bezier(0.65, 0.05, 0.36, 1);
  -moz-transition: color 0.65s cubic-bezier(0.65, 0.05, 0.36, 1), background-color 0.65s cubic-bezier(0.65, 0.05, 0.36, 1);
  transition: color 0.65s cubic-bezier(0.65, 0.05, 0.36, 1), background-color 0.65s cubic-bezier(0.65, 0.05, 0.36, 1);
}
html.no-touch .pn16-select-replacement .pn16-select-replacement__trigger:hover {
  color: #ffffff;
  background-color: #a67556;
}
html.no-touch .pn16-select-replacement .pn16-select-replacement__trigger:hover:after {
  color: #ffffff;
}
.pn16-select-replacement .pn16-select-replacement__list {
  position: absolute;
  top: 50px;
  left: 0;
  z-index: 100;
  width: 100%;
  max-height: 240px;
  font-size: 13px;
  font-size: 0.81rem;
  background-color: #ffffff;
  overflow: hidden;
  overflow-y: auto;
  pointer-events: none;
}
html.js .pn16-select-replacement .pn16-select-replacement__list {
  opacity: 0;
  -webkit-transition: opacity 0.65s cubic-bezier(0.65, 0.05, 0.36, 1);
  -moz-transition: opacity 0.65s cubic-bezier(0.65, 0.05, 0.36, 1);
  transition: opacity 0.65s cubic-bezier(0.65, 0.05, 0.36, 1);
}
.pn16-select-replacement .pn16-select-replacement__list ul {
  margin-top: 0;
  margin-bottom: 0;
  padding-left: 0;
  list-style: none;
}
.pn16-select-replacement .pn16-select-replacement__list li {
  border-bottom: 1px solid #a67556;
}
.pn16-select-replacement .pn16-select-replacement__list a {
  display: block;
  padding: 13px 15px;
  color: #a67556;
  text-decoration: none;
}
html.no-touch .pn16-select-replacement .pn16-select-replacement__list a {
  cursor: pointer;
  -webkit-transition: color 0.65s cubic-bezier(0.65, 0.05, 0.36, 1), background-color 0.65s cubic-bezier(0.65, 0.05, 0.36, 1);
  -moz-transition: color 0.65s cubic-bezier(0.65, 0.05, 0.36, 1), background-color 0.65s cubic-bezier(0.65, 0.05, 0.36, 1);
  transition: color 0.65s cubic-bezier(0.65, 0.05, 0.36, 1), background-color 0.65s cubic-bezier(0.65, 0.05, 0.36, 1);
}
html.no-touch .pn16-select-replacement .pn16-select-replacement__list a:hover {
  color: #ffffff;
  background-color: #a67556;
}
.pn16-select-replacement.pn16-open .pn16-select-replacement__trigger:after {
  -webkit-transform: rotate(-180deg);
  -moz-transform: rotate(-180deg);
  -ms-transform: rotate(-180deg);
  -o-transform: rotate(-180deg);
  transform: rotate(-180deg);
}
.pn16-select-replacement.pn16-open .pn16-select-replacement__list {
  pointer-events: all;
}
html.js .pn16-select-replacement.pn16-open .pn16-select-replacement__list {
  opacity: 1;
}

.pn16-quote {
  position: relative;
  margin: 0 0 -0.5em 0;
  padding-top: 0.3em;
  color: #0a2414;
  font-family: "Playfair Display", serif;
  font-style: italic;
  font-weight: normal;
  font-size: 18px;
  font-size: 1.13rem;
  line-height: 35px;
  line-height: 2.19rem;
  text-align: left;
}
.pn16-quote > p {
  display: inline;
  margin: 0;
}
.pn16-quote:before, .pn16-quote:after {
  font-size: 3em;
  line-height: 0.1em;
  vertical-align: -0.2em;
}
.pn16-quote:before {
  content: '“';
}
.pn16-quote:after {
  margin-left: -0.2em;
  content: '”';
}

@media (min-width: 48em) {
  html.js .pn16-scroll-fx-container {
    opacity: 0;
  }
}
@media (min-width: 48em) {
  html.js .pn16-scroll-fx-container.pn16-ready {
    opacity: 1;
  }
}
@media (min-width: 48em) {
  .pn16-scroll-fx-container .pn16-scroll-fx-image .pn16-scroll-fx-image-wrapper {
    height: 100%;
    width: 100%;
    overflow: hidden;
  }
}
.pn16-scroll-fx-container .pn16-scroll-fx-image .pn16-scroll-fx-image-wrapper__inner {
  height: 100%;
  width: 100%;
}
@media (min-width: 48em) {
  .pn16-scroll-fx-container .pn16-scroll-fx-image .pn16-scroll-fx-image-wrapper__inner {
    -webkit-transform: translateY(100%);
    -moz-transform: translateY(100%);
    -ms-transform: translateY(100%);
    -o-transform: translateY(100%);
    transform: translateY(100%);
    -webkit-transition: -webkit-transform 2.25s cubic-bezier(0.08, 0.82, 0.17, 1) 0s, opacity 1.13s cubic-bezier(0.08, 0.82, 0.17, 1) 0s;
    -moz-transition: -moz-transform 2.25s cubic-bezier(0.08, 0.82, 0.17, 1) 0s, opacity 1.13s cubic-bezier(0.08, 0.82, 0.17, 1) 0s;
    transition: transform 2.25s cubic-bezier(0.08, 0.82, 0.17, 1) 0s, opacity 1.13s cubic-bezier(0.08, 0.82, 0.17, 1) 0s;
    opacity: 0;
  }
}
@media (min-width: 48em) {
  .pn16-scroll-fx-container .pn16-scroll-fx-text {
    -webkit-transform: translateY(70%);
    -moz-transform: translateY(70%);
    -ms-transform: translateY(70%);
    -o-transform: translateY(70%);
    transform: translateY(70%);
    opacity: 0;
    -webkit-transition: -webkit-transform 2.25s cubic-bezier(0.08, 0.82, 0.17, 1) 0.35s, opacity 1.13s cubic-bezier(0.08, 0.82, 0.17, 1) 0.35s;
    -moz-transition: -moz-transform 2.25s cubic-bezier(0.08, 0.82, 0.17, 1) 0.35s, opacity 1.13s cubic-bezier(0.08, 0.82, 0.17, 1) 0.35s;
    transition: transform 2.25s cubic-bezier(0.08, 0.82, 0.17, 1) 0.35s, opacity 1.13s cubic-bezier(0.08, 0.82, 0.17, 1) 0.35s;
  }
}
@media (min-width: 48em) {
  .pn16-scroll-fx-container.pn16-scroll-fx--reveal .pn16-scroll-fx-image-wrapper__inner {
    -webkit-transform: translateY(0);
    -moz-transform: translateY(0);
    -ms-transform: translateY(0);
    -o-transform: translateY(0);
    transform: translateY(0);
    opacity: 1;
  }
}
@media (min-width: 48em) {
  .pn16-scroll-fx-container.pn16-scroll-fx--reveal .pn16-scroll-fx-text {
    -webkit-transform: translateY(0);
    -moz-transform: translateY(0);
    -ms-transform: translateY(0);
    -o-transform: translateY(0);
    transform: translateY(0);
    opacity: 1;
  }
}

.pn16-cookie-policy-alert {
  position: fixed;
  bottom: 0;
  left: 0;
  z-index: 199;
  width: 100%;
  padding: 20px 0;
  background-color: #dcddde;
}
@media (min-width: 48em) {
  .pn16-cookie-policy-alert .pn16-cookie-policy-alert__wrapper {
    display: table;
    width: 100%;
  }
}
@media (min-width: 48em) {
  .pn16-cookie-policy-alert .pn16-cookie-policy-alert__wrapper > div {
    display: table-cell;
    vertical-align: middle;
  }
}
.pn16-cookie-policy-alert .pn16-cookie-policy-alert__wrapper > div:last-child {
  padding-top: 15px;
  text-align: center;
}
@media (min-width: 48em) {
  .pn16-cookie-policy-alert .pn16-cookie-policy-alert__wrapper > div:last-child {
    padding-left: 10%;
    padding-top: 0;
    text-align: left;
  }
}
.pn16-cookie-policy-alert p {
  margin: 0;
  color: #0a2414;
  font-family: "BrandonGrotesque", "Helvetica Neue", "Helvetica", "Roboto", "Arial", sans-serif;
  font-weight: 400;
  font-size: 15px;
  font-size: 0.94rem;
  overflow: hidden;
}
.pn16-cookie-policy-alert a {
  color: #a67556;
  text-decoration: none;
}
html.no-touch .pn16-cookie-policy-alert a {
  -webkit-transition: color 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96);
  -moz-transition: color 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96);
  transition: color 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96);
}
html.no-touch .pn16-cookie-policy-alert a:hover {
  color: #0a2414;
}
.pn16-cookie-policy-alert .pn16-cookie-policy-alert-confirm {
  position: relative;
  display: inline-block;
  padding-top: 15px;
  padding-bottom: 15px;
  font-family: "BrandonGrotesque", "Helvetica Neue", "Helvetica", "Roboto", "Arial", sans-serif;
  font-weight: 500;
  font-size: 14px;
  font-size: 0.88rem;
}
.pn16-cookie-policy-alert .pn16-cookie-policy-alert-confirm:before, .pn16-cookie-policy-alert .pn16-cookie-policy-alert-confirm:after {
  position: absolute;
  left: 50%;
  height: 1px;
  width: 50px;
  margin-left: -25px;
  background-color: #a67556;
  content: '';
}
html.no-touch .pn16-cookie-policy-alert .pn16-cookie-policy-alert-confirm:before, html.no-touch .pn16-cookie-policy-alert .pn16-cookie-policy-alert-confirm:after {
  -webkit-transition: background-color 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96);
  -moz-transition: background-color 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96);
  transition: background-color 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96);
}
.pn16-cookie-policy-alert .pn16-cookie-policy-alert-confirm:before {
  top: 0;
}
.pn16-cookie-policy-alert .pn16-cookie-policy-alert-confirm:after {
  bottom: 0;
}
html.no-touch .pn16-cookie-policy-alert .pn16-cookie-policy-alert-confirm:hover:before, html.no-touch .pn16-cookie-policy-alert .pn16-cookie-policy-alert-confirm:hover:after {
  background-color: #0a2414;
}

.home-overlay {
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 999999;
}

.home-overlay__background {
  position: absolute;
  z-index: 1;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background-color: rgba(11, 11, 11, 0.8);
}

.home-overlay__content {
  	/*
  	   1,1  per aspect ratio 1:1
  	   16,9 per aspect ratio 16:9 
  	   4,3  per aspect ratio 4:3 etc
      */
  position: relative;
  position: absolute;
  z-index: 2;
  width: 94%;
  height: auto;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.home-overlay__content:before {
  display: block;
  width: 100%;
  padding-top: 56.25%;
  content: "";
}
.home-overlay__content > *:first-child {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}
@media screen and (min-width: 1024px) {
  .home-overlay__content {
    width: 70%;
  }
}

.home-overlay__closer {
  position: absolute;
  display: inline;
  z-index: 10;
  top: -50px;
  left: auto;
  right: 0;
  bottom: auto;
  color: #fff;
  opacity: .65;
  font-size: 40px;
  text-decoration: none;
  transition: opacity .25s linear 0s;
}
.home-overlay__closer:hover {
  opacity: 1;
}

.home-overlay__iframe {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}

html {
  box-sizing: border-box;
}

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

html, body {
  height: 100%;
  color: #000000;
  font-family: "Helvetica Neue", "Helvetica", "Roboto", "Arial", sans-serif;
  font-weight: normal;
  background-color: #ffffff;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

::-moz-selection {
  color: #ffffff;
  background: #a67556;
}

::selection {
  color: #ffffff;
  background: #a67556;
}

html.pn16-blocked-scroll body {
  position: relative;
  overflow: hidden;
}
html.pn16-blocked-scroll body:before {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 193;
  display: block;
  height: 100%;
  width: 100%;
  background-color: transparent;
  content: '';
}

html.pn16-main-nav-open {
  background-color: #1b4f33;
}
@media (min-width: 48em) {
  html.pn16-main-nav-open {
    background-color: #ffffff;
  }
}
html.pn16-main-nav-open .pn16-content {
  opacity: 0;
  visibility: hidden;
}
@media (min-width: 48em) {
  html.pn16-main-nav-open .pn16-content {
    opacity: 1;
    visibility: visible;
  }
}

html.pn16-search-open {
  background-color: #ffffff;
}
@media (min-width: 48em) {
  html.pn16-search-open {
    background-color: #ffffff;
  }
}
html.pn16-search-open .pn16-content {
  opacity: 0;
  visibility: hidden;
}
@media (min-width: 48em) {
  html.pn16-search-open .pn16-content {
    opacity: 1;
    visibility: visible;
  }
}

html.js body .pn16-site {
  opacity: 0;
  visibility: hidden;
  -webkit-transition: opacity 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96), visibility 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96);
  -moz-transition: opacity 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96), visibility 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96);
  transition: opacity 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96), visibility 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96);
}
html.js body.pn16-loaded .pn16-site {
  opacity: 1;
  visibility: visible;
}

.pn16-site {
  display: table;
  height: 100%;
  width: 100%;
  table-layout: fixed;
}

.pn16-content {
  height: inherit;
  padding-top: 55px;
}
@media (min-width: 48em) {
  .pn16-content {
    padding-top: 0;
  }
}

.pn16-wrapper {
  max-width: 73.13em;
  margin: 0 auto;
  padding-right: 1em;
  padding-left: 1em;
}
.pn16-wrapper.pn16-wrapper--alternate {
  max-width: 58.13em;
}

.pn16-is-mobile-sentinel {
  display: block;
  height: 0;
  overflow: hidden;
}
@media (min-width: 48em) {
  .pn16-is-mobile-sentinel {
    display: none;
  }
}

.pn16-header {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 198;
  width: 100%;
}

.pn16-header-inner {
  height: 55px;
  background-color: #ffffff;
}
.pn16-header-inner::after {
  clear: both;
  content: "";
  display: table;
}
@media (min-width: 48em) {
  .pn16-header-inner {
    height: 70px;
    width: 50%;
    margin-left: 50%;
  }
}

.pn16-header-block {
  display: inline-block;
}
.pn16-header-block::after {
  clear: both;
  content: "";
  display: table;
}
.pn16-header-block:first-child {
  float: left;
}
.pn16-header-block:last-child {
  float: right;
}

.pn16-main-logo {
  display: block;
  height: 55px;
  width: 199px;
  background-color: transparent;
  background-image: url("../img/main-logo.png");
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-size: 175px 27px;
}
@media (min-width: 48em) {
  .pn16-main-logo {
    height: 70px;
    width: 260px;
    background-size: 220px 35px;
  }
}

.pn16-live-trigger-wrapper, .pn16-language-wrapper {
  display: none;
}
@media (min-width: 1313px) {
  .pn16-live-trigger-wrapper, .pn16-language-wrapper {
    display: inline-block;
    height: 70px;
    padding-right: 1.38em;
  }
}

.pn16-live-trigger-wrapper .pn16-live-trigger, .pn16-language-wrapper .pn16-language-toggler, .pn16-search-wrapper .pn16-search-toggler {
  line-height: 55px;
  vertical-align: top;
}
@media (min-width: 48em) {
  .pn16-live-trigger-wrapper .pn16-live-trigger, .pn16-language-wrapper .pn16-language-toggler, .pn16-search-wrapper .pn16-search-toggler {
    line-height: 70px;
  }
}

.pn16-live-trigger-wrapper.pn16-cloned {
  position: fixed;
  top: 75px;
  left: 0;
  display: inline-block;
  margin-left: 20px;
}
@media (min-width: 48em) {
  .pn16-live-trigger-wrapper.pn16-cloned {
    left: 50%;
  }
}
@media (min-width: 1313px) {
  .pn16-live-trigger-wrapper.pn16-cloned {
    display: none;
  }
}
.pn16-live-trigger-wrapper .pn16-live-trigger {
  display: inline-block;
  height: inherit;
  color: #ffffff;
  font-family: "BrandonGrotesque", "Helvetica Neue", "Helvetica", "Roboto", "Arial", sans-serif;
  font-weight: 500;
  font-size: 14px;
  font-size: 0.88rem;
  text-decoration: none;
}
@media (min-width: 1313px) {
  .pn16-live-trigger-wrapper .pn16-live-trigger {
    color: #0a2414;
  }
}
html.no-touch .pn16-live-trigger-wrapper .pn16-live-trigger {
  -webkit-transition: color 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96);
  -moz-transition: color 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96);
  transition: color 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96);
}
html.no-touch .pn16-live-trigger-wrapper .pn16-live-trigger:hover {
  color: #a67556;
}

.pn16-language-wrapper {
  position: relative;
}
.pn16-language-wrapper.pn16-cloned {
  position: fixed;
  top: 75px;
  right: 20px;
  display: inline-block;
}
@media (min-width: 1313px) {
  .pn16-language-wrapper.pn16-cloned {
    display: none;
  }
}
.pn16-language-wrapper .pn16-language-toggler {
  display: inline-block;
  height: inherit;
  color: #ffffff;
  font-family: "BrandonGrotesque", "Helvetica Neue", "Helvetica", "Roboto", "Arial", sans-serif;
  font-weight: 500;
  font-size: 14px;
  font-size: 0.88rem;
  text-decoration: none;
}
.pn16-language-wrapper .pn16-language-toggler:after {
  display: inline-block;
  margin-left: 6px;
  font-family: "IcoMoon";
  font-size: 14px;
  font-size: 0.88rem;
  -webkit-transition: -webkit-transform 0.45s cubic-bezier(0.46, 0.03, 0.52, 0.96);
  -moz-transition: -moz-transform 0.45s cubic-bezier(0.46, 0.03, 0.52, 0.96);
  transition: transform 0.45s cubic-bezier(0.46, 0.03, 0.52, 0.96);
}
html.pn16-language-open .pn16-language-wrapper .pn16-language-toggler:after {
  -webkit-transform: rotate(-180deg);
  -moz-transform: rotate(-180deg);
  -ms-transform: rotate(-180deg);
  -o-transform: rotate(-180deg);
  transform: rotate(-180deg);
}
@media (min-width: 1313px) {
  .pn16-language-wrapper .pn16-language-toggler {
    color: #0a2414;
  }
}
html.no-touch .pn16-language-wrapper .pn16-language-toggler {
  -webkit-transition: color 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96);
  -moz-transition: color 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96);
  transition: color 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96);
}
html.no-touch .pn16-language-wrapper .pn16-language-toggler:hover {
  color: #a67556;
}
.pn16-language-wrapper .pn16-language {
  position: absolute;
  top: 55px;
  left: -40px;
  z-index: 197;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: opacity 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96), visibility 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96);
  -moz-transition: opacity 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96), visibility 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96);
  transition: opacity 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96), visibility 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96);
}
@media (min-width: 1313px) {
  .pn16-language-wrapper .pn16-language {
    top: 62px;
  }
}
html.pn16-language-open .pn16-language-wrapper .pn16-language {
  opacity: 1;
  visibility: visible;
}
.pn16-language-wrapper .pn16-language ul {
  margin-top: 0;
  margin-bottom: 0;
  padding-left: 0;
  list-style: none;
  font-family: "BrandonGrotesque", "Helvetica Neue", "Helvetica", "Roboto", "Arial", sans-serif;
  font-weight: 500;
  font-size: 14px;
  font-size: 0.88rem;
}
.pn16-language-wrapper .pn16-language li {
  text-align: center;
}
.pn16-language-wrapper .pn16-language a {
  display: block;
  height: 35px;
  width: 90px;
  color: #ffffff;
  line-height: 35px;
  text-decoration: none;
  background-color: transparent;
}
@media (min-width: 1313px) {
  .pn16-language-wrapper .pn16-language a {
    background-color: #1b4f33;
  }
}
html.no-touch .pn16-language-wrapper .pn16-language a {
  -webkit-transition: color 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96), background-color 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96);
  -moz-transition: color 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96), background-color 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96);
  transition: color 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96), background-color 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96);
}
html.no-touch .pn16-language-wrapper .pn16-language a:hover {
  color: #a67556;
}
@media (min-width: 1313px) {
  html.no-touch .pn16-language-wrapper .pn16-language a:hover {
    color: #1b4f33;
    background-color: #a67556;
  }
}

.pn16-search-wrapper {
  display: inline-block;
  height: 55px;
  padding-right: 0.56em;
}
@media (min-width: 48em) {
  .pn16-search-wrapper {
    height: 70px;
    padding-right: 1.38em;
  }
}
.pn16-search-wrapper .pn16-search-toggler {
  display: inline-block;
  min-width: 17px;
  height: inherit;
  text-align: center;
  vertical-align: top;
}
.pn16-search-wrapper .pn16-search-toggler:before {
  display: inline-block;
  color: #0a2414;
  font-family: "IcoMoon";
  font-size: 18px;
  font-size: 1.13rem;
  -webkit-transform: scaleX(-1);
  -moz-transform: scaleX(-1);
  -ms-transform: scaleX(-1);
  -o-transform: scaleX(-1);
  transform: scaleX(-1);
}
html.pn16-search-open .pn16-search-wrapper .pn16-search-toggler:before {
  color: #a67556;
}
html.no-touch .pn16-search-wrapper .pn16-search-toggler:before {
  -webkit-transition: color 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96);
  -moz-transition: color 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96);
  transition: color 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96);
}
html.no-touch .pn16-search-wrapper .pn16-search-toggler:hover:before {
  color: #a67556;
}

.pn16-main-nav-wrapper {
  display: inline-block;
  height: 55px;
}
@media (min-width: 48em) {
  .pn16-main-nav-wrapper {
    height: 70px;
  }
}

.pn16-main-nav-toggler {
  display: inline-block;
  height: 55px;
  min-width: 79px;
  padding-right: 12px;
  padding-left: 12px;
  color: #ffffff;
  font-size: 15px;
  font-size: 0.94rem;
  font-family: "BrandonGrotesque", "Helvetica Neue", "Helvetica", "Roboto", "Arial", sans-serif;
  font-weight: 500;
  line-height: 55px;
  text-align: center;
  text-decoration: none;
  text-transform: uppercase;
  vertical-align: top;
  background-color: #1b4f33;
}
@media (min-width: 48em) {
  .pn16-main-nav-toggler {
    height: 70px;
    line-height: 70px;
  }
}
@media (min-width: 900px) {
  .pn16-main-nav-toggler {
    min-width: 115px;
    padding-right: 30px;
    padding-left: 30px;
  }
}
html.no-touch .pn16-main-nav-toggler {
  -webkit-transition: color 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96);
  -moz-transition: color 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96);
  transition: color 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96);
}
html.no-touch .pn16-main-nav-toggler:hover {
  color: #a67556;
}
.pn16-main-nav-toggler span.pn16-default {
  display: block;
}
html.pn16-main-nav-open .pn16-main-nav-toggler span.pn16-default {
  display: none;
}
.pn16-main-nav-toggler span.pn16-alternate {
  display: none;
}
html.pn16-main-nav-open .pn16-main-nav-toggler span.pn16-alternate {
  display: block;
}

.pn16-main-nav, .pn16-search {
  position: fixed;
  top: 55px;
  right: 0;
  bottom: 0;
  z-index: 196;
  width: 100%;
  padding-right: 20px;
  padding-left: 20px;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: opacity 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96), visibility 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96);
  -moz-transition: opacity 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96), visibility 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96);
  transition: opacity 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96), visibility 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96);
}
@media (min-width: 48em) {
  .pn16-main-nav, .pn16-search {
    padding-right: 8%;
    padding-left: 8%;
  }
}
@media (min-width: 48em) {
  .pn16-main-nav, .pn16-search {
    top: 70px;
    width: 50%;
  }
}

.pn16-main-nav {
  padding-top: 5em;
  background-color: #1b4f33;
}
@media (min-width: 48em) {
  .pn16-main-nav {
    padding-top: 4.69em;
  }
}
html.pn16-main-nav-open .pn16-main-nav {
  opacity: 1;
  visibility: visible;
}
.pn16-main-nav .pn16-main-nav__inner {
  height: 100%;
  overflow: hidden;
  overflow-y: auto;
}
@media (min-width: 48em) {
  .pn16-main-nav .pn16-main-nav__inner::-webkit-scrollbar {
    display: none;
  }
}
.pn16-main-nav .pn16-main-nav__menu ul {
  margin-top: 0;
  margin-bottom: 0;
  padding-left: 0;
  list-style: none;
}
.pn16-main-nav .pn16-main-nav__menu li {
  margin-top: 0.13em;
}
@media (min-width: 48em) {
  .pn16-main-nav .pn16-main-nav__menu li {
    margin-top: 0.31em;
  }
}
.pn16-main-nav .pn16-main-nav__menu li:first-child {
  margin-top: 0;
}
.pn16-main-nav .pn16-main-nav__menu a {
  display: block;
  padding: 0.19em 0;
  color: #ffffff;
  font-family: "Playfair Display", serif;
  font-size: 30px;
  font-size: 1.88rem;
  text-decoration: none;
}
@media (min-width: 48em) {
  .pn16-main-nav .pn16-main-nav__menu a {
    font-size: 40px;
    font-size: 2.5rem;
  }
}
html.no-touch .pn16-main-nav .pn16-main-nav__menu a {
  -webkit-transition: color 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96);
  -moz-transition: color 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96);
  transition: color 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96);
}
html.no-touch .pn16-main-nav .pn16-main-nav__menu a:hover {
  color: #a67556;
}

.pn16-main-nav-info {
  margin-top: 40px;
  color: #ffffff;
  text-align: center;
}
@media (min-width: 48em) {
  .pn16-main-nav-info {
    margin-top: 75px;
  }
}
@media (min-width: 48em) {
  .pn16-main-nav-info {
    text-align: left;
  }
}
.pn16-main-nav-info p {
  display: block;
  margin: 0;
  font-family: "Playfair Display", serif;
  font-style: italic;
  font-size: 15px;
  font-size: 0.94rem;
}
@media (min-width: 48em) {
  .pn16-main-nav-info p {
    font-size: 18px;
    font-size: 1.13rem;
  }
}
.pn16-main-nav-info .pn16-main-nav-info__logo {
  height: 20px;
  width: 90px;
  display: inline-block;
  margin-top: 15px;
  text-decoration: none;
  background-color: transparent;
  background-image: url("../img/alternate-logo-2.png");
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-size: cover;
}
@media (min-width: 48em) {
  .pn16-main-nav-info .pn16-main-nav-info__logo {
    height: 34px;
    width: 151px;
  }
}

.pn16-main-nav-socials {
  margin-top: 20px;
  font-size: 17px;
  font-size: 1.06rem;
}
@media (min-width: 860px) {
  .pn16-main-nav-socials {
    margin-top: 40px;
  }
}
.pn16-main-nav-socials ul {
  margin-top: 0;
  margin-bottom: 0;
  padding-left: 0;
  list-style: none;
  text-align: center;
}
@media (min-width: 860px) {
  .pn16-main-nav-socials ul {
    margin-left: -5px;
    text-align: left;
  }
}
.pn16-main-nav-socials li {
  display: inline-block;
  padding-right: 3px;
  padding-left: 3px;
}
.pn16-main-nav-socials a {
  display: block;
  padding: 5px 3px;
  color: #a67556;
  text-decoration: none;
}
html.no-touch .pn16-main-nav-socials a {
  -webkit-transition: color 0.85s cubic-bezier(0.46, 0.03, 0.52, 0.96);
  -moz-transition: color 0.85s cubic-bezier(0.46, 0.03, 0.52, 0.96);
  transition: color 0.85s cubic-bezier(0.46, 0.03, 0.52, 0.96);
}
html.no-touch .pn16-main-nav-socials a:hover {
  color: #ffffff;
}

.pn16-footer {
  display: table-row;
  height: 1px;
  -webkit-transition: opacity 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96), visibility 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96);
  -moz-transition: opacity 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96), visibility 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96);
  transition: opacity 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96), visibility 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96);
}
html.pn16-main-nav-open .pn16-footer {
  opacity: 0;
  visibility: hidden;
}
html.pn16-search-open .pn16-footer {
  opacity: 0;
  visibility: hidden;
}

@media (min-width: 860px) {
  .pn16-footer-item {
    display: inline-block;
    float: left;
    width: 100%;
  }
  .pn16-footer-item:last-of-type {
    float: right;
  }
  .pn16-footer-item.nofull {
    width: auto;
  }
}

@media (min-width: 860px) {
  .pn16-footer-primary::after, .pn16-footer-secondary::after {
    clear: both;
    content: "";
    display: table;
  }
}

.pn16-footer-primary {
  padding-top: 26px;
  padding-bottom: 26px;
  background-color: #1b4f33;
}

.pn16-footer-secondary {
  padding-top: 22px;
  padding-bottom: 22px;
}

.pn16-footer-primary-nav {
  display: none;
}
@media (min-width: 860px) {
  .pn16-footer-primary-nav {
    display: inline-block;
    padding-top: 3px;
    width: 100%;
  }
}
.pn16-footer-primary-nav ul {
  margin-top: 0;
  margin-bottom: 0;
  padding-left: 0;
  list-style: none;
  width: 100%;
  text-align: center;
  margin-bottom: 20px;
}
.pn16-footer-primary-nav li {
  position: relative;
  display: inline-block;
  padding-left: 22px;
}
.pn16-footer-primary-nav li:before {
  position: absolute;
  top: 0;
  left: 6px;
  color: #a67556;
  font-size: 20px;
  content: '•';
}
.pn16-footer-primary-nav li:first-child {
  padding-left: 0;
}
.pn16-footer-primary-nav li:first-child:before {
  display: none;
}
.pn16-footer-primary-nav a {
  color: #ffffff;
  text-decoration: none;
  font-family: "Playfair Display", serif;
  font-size: 16px;
  font-size: 1rem;
}
html.no-touch .pn16-footer-primary-nav a {
  -webkit-transition: color 0.85s cubic-bezier(0.46, 0.03, 0.52, 0.96);
  -moz-transition: color 0.85s cubic-bezier(0.46, 0.03, 0.52, 0.96);
  transition: color 0.85s cubic-bezier(0.46, 0.03, 0.52, 0.96);
}
html.no-touch .pn16-footer-primary-nav a:hover {
  color: #a67556;
}

.pn16-footer-credits {
  color: #ffffff;
  text-align: center;
}
@media (min-width: 860px) {
  .pn16-footer-credits {
    text-align: center;
  }
}
.pn16-footer-credits p {
  margin: 0;
  font-family: "Playfair Display", serif;
  font-style: italic;
  font-size: 15px;
  font-size: 0.94rem;
}
@media (min-width: 860px) {
  .pn16-footer-credits p {
    font-size: 14px;
    font-size: 0.88rem;
    display: inline-block;
    vertical-align: middle;
    margin-bottom: 8px;
  }
}
.pn16-footer-credits .pn16-footer-credits__logo {
  height: 23px;
  width: 100px;
  display: inline-block;
  margin: 12px auto 0 auto;
  text-decoration: none;
  background-color: transparent;
  background-image: url("../img/alternate-logo-2.png");
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-size: contain;
}
@media (min-width: 860px) {
  .pn16-footer-credits .pn16-footer-credits__logo {
    height: 37px;
    width: 162px;
    margin: 0 0 0 13px;
    vertical-align: middle;
  }
}

.pn16-footer-secondary-nav {
  font-family: "BrandonGrotesque", "Helvetica Neue", "Helvetica", "Roboto", "Arial", sans-serif;
  font-weight: 500;
  font-size: 12px;
  font-size: 0.75rem;
  text-align: center;
  text-transform: uppercase;
}
@media (min-width: 860px) {
  .pn16-footer-secondary-nav {
    padding-top: 3px;
  }
}
@media (min-width: 860px) {
  .pn16-footer-secondary-nav p, .pn16-footer-secondary-nav nav {
    display: inline-block;
  }
}
.pn16-footer-secondary-nav p {
  margin: 0;
}
.pn16-footer-secondary-nav ul {
  margin-top: 0;
  margin-bottom: 0;
  padding-left: 0;
  list-style: none;
}
@media (min-width: 860px) {
  .pn16-footer-secondary-nav ul {
    display: inline-block;
  }
}
.pn16-footer-secondary-nav ul li {
  position: relative;
  display: inline-block;
  padding-left: 15px;
}
@media (min-width: 860px) {
  .pn16-footer-secondary-nav ul li {
    padding-left: 25px;
  }
}
.pn16-footer-secondary-nav ul li:before {
  position: absolute;
  top: 0;
  left: 4px;
  color: #1a1724;
  font-size: 15px;
  font-size: 0.94rem;
  content: '•';
}
@media (min-width: 860px) {
  .pn16-footer-secondary-nav ul li:before {
    left: 10px;
  }
}
.pn16-footer-secondary-nav ul li:first-child {
  padding-left: 0;
}
@media (min-width: 860px) {
  .pn16-footer-secondary-nav ul li:first-child {
    padding-left: 25px;
  }
}
.pn16-footer-secondary-nav ul li:first-child:before {
  display: none;
}
@media (min-width: 860px) {
  .pn16-footer-secondary-nav ul li:first-child:before {
    display: inline-block;
  }
}
.pn16-footer-secondary-nav p, .pn16-footer-secondary-nav a {
  display: inline-block;
  padding: 3px 0;
  color: #a67556;
}
.pn16-footer-secondary-nav a {
  text-decoration: none;
}
html.no-touch .pn16-footer-secondary-nav a {
  -webkit-transition: color 0.85s cubic-bezier(0.46, 0.03, 0.52, 0.96);
  -moz-transition: color 0.85s cubic-bezier(0.46, 0.03, 0.52, 0.96);
  transition: color 0.85s cubic-bezier(0.46, 0.03, 0.52, 0.96);
}
html.no-touch .pn16-footer-secondary-nav a:hover {
  color: #1b4f33;
}

.pn16-footer-socials {
  padding-top: 20px;
  font-size: 17px;
  font-size: 1.06rem;
}
@media (min-width: 860px) {
  .pn16-footer-socials {
    padding-top: 0;
  }
}
.pn16-footer-socials ul {
  margin-top: 0;
  margin-bottom: 0;
  padding-left: 0;
  list-style: none;
  text-align: center;
}
@media (min-width: 860px) {
  .pn16-footer-socials ul {
    margin-right: -3px;
    text-align: left;
  }
}
.pn16-footer-socials li {
  display: inline-block;
  padding-right: 3px;
  padding-left: 3px;
}
.pn16-footer-socials a {
  display: block;
  padding: 5px 3px;
  color: #a67556;
  text-decoration: none;
}
html.no-touch .pn16-footer-socials a {
  -webkit-transition: color 0.85s cubic-bezier(0.46, 0.03, 0.52, 0.96);
  -moz-transition: color 0.85s cubic-bezier(0.46, 0.03, 0.52, 0.96);
  transition: color 0.85s cubic-bezier(0.46, 0.03, 0.52, 0.96);
}
html.no-touch .pn16-footer-socials a:hover {
  color: #1b4f33;
}

.pn16-awarded-items-intro--homepagefix {
  margin-top: 120px;
}
@media (min-width: 48em) {
  .pn16-awarded-items-intro {
    	/*
    	   1,1  per aspect ratio 1:1
    	   16,9 per aspect ratio 16:9 
    	   4,3  per aspect ratio 4:3 etc
        */
    position: relative;
  }
  .pn16-awarded-items-intro:before {
    display: block;
    width: 100%;
    padding-top: 13.88%;
    content: "";
  }
  .pn16-awarded-items-intro > *:first-child {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
  }
}
@media (min-width: 48em) {
  .pn16-awarded-items-intro .pn16-awarded-items-intro__title {
    height: 100%;
  }
}
.pn16-awarded-items-intro .pn16-heading-A {
  color: #a67556;
  text-align: center;
}
@media (min-width: 48em) {
  .pn16-awarded-items-intro .pn16-heading-A {
    position: relative;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%);
  }
}
.pn16-awarded-items-intro .pn16-heading-A--homepagefix:after {
  bottom: 20px;
}

.pn16-awarded-item {
  margin-bottom: 40px;
}
@media (min-width: 48em) {
  .pn16-awarded-item {
    margin-bottom: 0;
  }
  .pn16-awarded-item::after {
    clear: both;
    content: "";
    display: table;
  }
}
@media (min-width: 48em) {
  .pn16-awarded-item .pn16-awarded-item__media, .pn16-awarded-item .pn16-awarded-item__text {
    float: left;
    width: 50%;
  }
}
.pn16-awarded-item .pn16-awarded-item__text > div {
  padding: 1.88em 0.94em;
}
@media (min-width: 48em) {
  .pn16-awarded-item .pn16-awarded-item__text > div {
    max-width: 28.13em;
    padding: 2.81em 1.25em;
    box-sizing: content-box;
  }
}
@media (min-width: 48em) {
  .pn16-awarded-item:nth-child(2n+2) {
    direction: rtl;
  }
}
@media (min-width: 48em) {
  .pn16-awarded-item:nth-child(2n+2) .pn16-awarded-item__media, .pn16-awarded-item:nth-child(2n+2) .pn16-awarded-item__text {
    float: right;
    direction: ltr;
  }
}
@media (min-width: 48em) {
  .pn16-awarded-item:nth-child(2n+2) .pn16-awarded-item__text > div {
    float: right;
  }
}

.pn16-awarded-tail {
  padding-bottom: 40px;
}
@media (min-width: 48em) {
  .pn16-awarded-tail {
    padding-bottom: 0;
    position: relative;
  }
}
.pn16-awarded-tail .pn16-awarded-tail__text {
  padding: 1.88em 0.94em;
}
@media (min-width: 48em) {
  .pn16-awarded-tail .pn16-awarded-tail__text {
    position: absolute;
    top: 0;
    left: 0;
    padding-top: 3.13em;
    margin-right: 37.5%;
    margin-left: 37.5%;
    padding-bottom: 1.25em;
    box-sizing: content-box;
  }
}

@media (min-width: 48em) {
  .pn16-floating-images::after {
    clear: both;
    content: "";
    display: table;
  }
}
@media (min-width: 48em) {
  .pn16-floating-images .pn16-floating-images__item {
    width: 50%;
    float: left;
  }
}
@media (min-width: 48em) {
  .pn16-floating-images .pn16-floating-images__item:nth-child(1) .pn16-floating-image {
    margin-left: 25%;
  }
}
.pn16-floating-images .pn16-floating-images__item:nth-child(2) {
  display: none;
}
@media (min-width: 48em) {
  .pn16-floating-images .pn16-floating-images__item:nth-child(2) {
    display: block;
  }
}
@media (min-width: 48em) {
  .pn16-floating-images .pn16-floating-images__item:nth-child(2) .pn16-floating-image {
    margin-top: 25%;
    margin-left: 25%;
  }
}

.pn16-floating-image {
  display: block;
}
@media (min-width: 48em) {
  .pn16-floating-image {
    width: 50%;
  }
}
.pn16-floating-image .pn16-floating-image__inner {
  	/*
  	   1,1  per aspect ratio 1:1
  	   16,9 per aspect ratio 16:9 
  	   4,3  per aspect ratio 4:3 etc
      */
  position: relative;
}
.pn16-floating-image .pn16-floating-image__inner:before {
  display: block;
  width: 100%;
  padding-top: 111%;
  content: "";
}
.pn16-floating-image .pn16-floating-image__inner > *:first-child {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}
.pn16-floating-image .pn16-floating-image__viewer {
  height: 100%;
  width: 100%;
  background-color: transparent;
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-size: cover;
}
.pn16-floating-image.pn16-floating-image--alternate .pn16-floating-image__inner span {
  display: block;
  height: 100%;
  width: 100%;
}
.pn16-floating-image.pn16-floating-image--alternate .pn16-floating-image__inner em {
  display: block;
  position: relative;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  transform: translateY(-50%);
  color: #ffffff;
  font-family: "Playfair Display", serif;
  font-style: normal;
  font-weight: normal;
  font-size: 45px;
  font-size: 2.81rem;
  text-align: center;
}

html.no-touch a.pn16-floating-image .pn16-floating-image__inner span {
  -webkit-transition: background-color 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96);
  -moz-transition: background-color 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96);
  transition: background-color 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96);
}
html.no-touch a.pn16-floating-image .pn16-floating-image__inner:hover span {
  background-color: rgba(26, 23, 36, 0.6);
}

.pn16-awarded-list ul {
  margin-top: 0;
  margin-bottom: 0;
  padding-left: 0;
  list-style: none;
}
.pn16-awarded-list li {
  margin-top: 2.81em;
}
.pn16-awarded-list li:first-child {
  margin-top: 0;
}
.pn16-awarded-list .pn16-awarded-list__image {
  margin: 0.63em 0 0 0;
  display: inline-block;
}
.pn16-awarded-list .pn16-awarded-list__image img {
  width: 50%;
}

@media (min-width: 48em) {
  .pn16-jury-items::after {
    clear: both;
    content: "";
    display: table;
  }
}

.pn16-jury-item {
  margin-bottom: 40px;
}
@media (min-width: 48em) {
  .pn16-jury-item {
    float: left;
    width: 50%;
    margin-bottom: 0;
  }
  .pn16-jury-item::after {
    clear: both;
    content: "";
    display: table;
  }
}
@media (min-width: 48em) {
  .pn16-jury-item:nth-child(2n+1) {
    clear: left;
  }
}
@media (min-width: 48em) {
  .pn16-jury-item:nth-child(2) {
    margin-top: 13.88%;
  }
}
@media (min-width: 48em) {
  .pn16-jury-item.pn16-jury-item--B .pn16-chessboard-mere:nth-child(1) {
    margin-top: 27.75%;
  }
}
@media (min-width: 48em) {
  .pn16-jury-item.pn16-jury-item--C .pn16-chessboard-mere:nth-child(1) {
    margin-left: 25%;
  }
}
.pn16-jury-item .pn16-jury-item__title {
  padding-top: 0.94em;
  padding-right: 0.94em;
  padding-left: 0.94em;
}
@media (min-width: 48em) {
  .pn16-jury-item .pn16-jury-item__title {
    padding-top: 16%;
  }
}
.pn16-jury-item .pn16-jury-item__text {
  max-width: 80%;
  padding-right: 0.94em;
  padding-bottom: 1.88em;
  padding-left: 0.94em;
}
@media (min-width: 48em) {
  .pn16-jury-item .pn16-jury-item__text {
    padding-bottom: 0.94em;
  }
}

.pn16-service {
  padding-top: 70px;
  padding-bottom: 70px;
}
.pn16-service.pn16-service--alternate {
  padding-bottom: 0;
}
@media (min-width: 48em) {
  .pn16-service {
    padding-top: 140px;
    padding-bottom: 160px;
  }
}

.pn16-service-header {
  text-align: center;
}

.pn16-service-body {
  overflow-wrap: break-word;
  word-wrap: break-word;
  word-break: break-all;
}
.pn16-service-body ul {
  padding-left: 0;
  list-style: none;
}
.pn16-service-body ul li {
  position: relative;
  padding-left: 30px;
}
.pn16-service-body ul li:before {
  position: absolute;
  top: 0;
  left: 0;
  color: #a67556;
  content: '•';
}
.pn16-service-body p {
  overflow-wrap: normal;
  word-wrap: normal;
  word-break: normal;
  text-align: justify;
}

.pn16-timeline {
  position: relative;
  padding-top: 100px;
}
@media (min-width: 48em) {
  .pn16-timeline {
    padding-top: 130px;
  }
}
.pn16-timeline .pn16-timeline__header {
  text-align: center;
}
.pn16-timeline .pn16-timeline-nav {
  position: fixed;
  top: 170px;
  right: 0;
  bottom: 160px;
  z-index: 189;
  display: none;
  width: 90px;
  overflow: hidden;
}
@media (min-width: 48em) {
  .pn16-timeline .pn16-timeline-nav {
    display: inline-block;
  }
}
.pn16-timeline .pn16-timeline-nav nav {
  position: relative;
  height: 100%;
  width: 100%;
}
.pn16-timeline .pn16-timeline-nav ul {
  position: absolute;
  top: 0;
  right: 0;
  margin-top: 0;
  margin-bottom: 0;
  padding-left: 0;
  list-style: none;
}
.pn16-timeline .pn16-timeline-nav li {
  height: 15px;
  margin-top: 2px;
  text-align: right;
}
.pn16-timeline .pn16-timeline-nav li.pn16-dummy {
  position: relative;
}
.pn16-timeline .pn16-timeline-nav li.pn16-dummy:before {
  position: absolute;
  top: 50%;
  right: 0;
  display: block;
  height: 1px;
  width: 15px;
  background-color: #a67556;
  content: '';
}
.pn16-timeline .pn16-timeline-nav li.pn16-current a {
  width: 30px;
  cursor: default;
}
.pn16-timeline .pn16-timeline-nav li.pn16-current a:before {
  width: 30px;
}
.pn16-timeline .pn16-timeline-nav li.pn16-current a:before, .pn16-timeline .pn16-timeline-nav li.pn16-current a:after {
  background-color: #1a1724;
}
.pn16-timeline .pn16-timeline-nav li.pn16-current a span, .pn16-timeline .pn16-timeline-nav li.pn16-current a:after {
  opacity: 1;
}
.pn16-timeline .pn16-timeline-nav a {
  position: relative;
  display: inline-block;
  height: inherit;
  width: 80px;
  color: #1a1724;
  font-family: "BrandonGrotesque", "Helvetica Neue", "Helvetica", "Roboto", "Arial", sans-serif;
  font-weight: 500;
  font-size: 12px;
  font-size: 0.75rem;
  text-decoration: none;
}
html.no-touch .pn16-timeline .pn16-timeline-nav a {
  -webkit-transition: width 0.35s cubic-bezier(0.46, 0.03, 0.52, 0.96);
  -moz-transition: width 0.35s cubic-bezier(0.46, 0.03, 0.52, 0.96);
  transition: width 0.35s cubic-bezier(0.46, 0.03, 0.52, 0.96);
}
.pn16-timeline .pn16-timeline-nav a span {
  position: absolute;
  top: 0;
  left: -35px;
  opacity: 0;
}
html.no-touch .pn16-timeline .pn16-timeline-nav a span {
  -webkit-transition: opacity 0.35s cubic-bezier(0.46, 0.03, 0.52, 0.96);
  -moz-transition: opacity 0.35s cubic-bezier(0.46, 0.03, 0.52, 0.96);
  transition: opacity 0.35s cubic-bezier(0.46, 0.03, 0.52, 0.96);
}
.pn16-timeline .pn16-timeline-nav a:before {
  position: absolute;
  top: 50%;
  right: 0;
  display: block;
  height: 1px;
  width: 15px;
  background-color: #a67556;
  content: '';
}
html.no-touch .pn16-timeline .pn16-timeline-nav a:before {
  -webkit-transition: background-color 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96);
  -moz-transition: background-color 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96);
  transition: background-color 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96);
}
.pn16-timeline .pn16-timeline-nav a:after {
  position: absolute;
  top: 6px;
  left: -3px;
  display: inline-block;
  height: 6px;
  width: 6px;
  background-color: #a67556;
  border-radius: 50%;
  content: '';
  opacity: 0;
}
html.no-touch .pn16-timeline .pn16-timeline-nav a:after {
  -webkit-transition: opacity 0.35s cubic-bezier(0.46, 0.03, 0.52, 0.96);
  -moz-transition: opacity 0.35s cubic-bezier(0.46, 0.03, 0.52, 0.96);
  transition: opacity 0.35s cubic-bezier(0.46, 0.03, 0.52, 0.96);
}
html.no-touch .pn16-timeline .pn16-timeline-nav a:hover {
  width: 30px;
}
html.no-touch .pn16-timeline .pn16-timeline-nav a:hover:before {
  width: inherit;
}
html.no-touch .pn16-timeline .pn16-timeline-nav a:hover:before, html.no-touch .pn16-timeline .pn16-timeline-nav a:hover:after {
  background-color: #1a1724;
}
html.no-touch .pn16-timeline .pn16-timeline-nav a:hover span, html.no-touch .pn16-timeline .pn16-timeline-nav a:hover:after {
  opacity: 1;
}
.pn16-timeline .pn16-timeline-items {
  position: relative;
  z-index: 1;
}
.pn16-timeline .pn16-timeline-item {
  padding-bottom: 3.13em;
}
.pn16-timeline .pn16-timeline-item:before {
  display: block;
  height: 55px;
  margin-top: -55px;
  content: '';
}
@media (min-width: 48em) {
  .pn16-timeline .pn16-timeline-item:before {
    height: 70px;
    margin-top: -70px;
  }
}
@media (min-width: 48em) {
  .pn16-timeline .pn16-timeline-item {
    padding-bottom: 4.38em;
  }
}
.pn16-timeline .pn16-timeline-item .pn16-timeline-item__age {
  text-align: center;
  position: relative;
  z-index: 189;
}
.pn16-timeline .pn16-timeline-item .pn16-timeline-item__content {
  position: relative;
  z-index: 188;
  margin-top: -30px;
}
.pn16-timeline .pn16-timeline-item .pn16-timeline-item__content::after {
  clear: both;
  content: "";
  display: table;
}
@media (min-width: 48em) {
  .pn16-timeline .pn16-timeline-item .pn16-timeline-item__content {
    margin-top: -40px;
  }
}
@media (min-width: 48em) {
  .pn16-timeline .pn16-timeline-item .pn16-timeline-item__media, .pn16-timeline .pn16-timeline-item .pn16-timeline-item__text {
    width: 50%;
    float: left;
  }
}
.pn16-timeline .pn16-timeline-item .pn16-timeline-item__text {
  padding-top: 1.88em;
}
@media (min-width: 48em) {
  .pn16-timeline .pn16-timeline-item .pn16-timeline-item__text {
    padding-top: 5em;
    padding-right: 0.94em;
    padding-left: 0.94em;
  }
}

.pn16-contact .pn16-contact__details {
  margin-top: 3.13em;
  margin-bottom: 2.5em;
}
@media (min-width: 48em) {
  .pn16-contact .pn16-contact__details::after {
    clear: both;
    content: "";
    display: table;
  }
}
.pn16-contact .pn16-contact__text {
  padding-top: 0.94em;
}
@media (min-width: 48em) {
  .pn16-contact .pn16-contact__text {
    float: left;
    width: 33.3%;
    padding-top: 0;
    padding-right: 0.94em;
  }
}
.pn16-contact .pn16-contact__text:first-child {
  padding-top: 0;
}
@media (min-width: 48em) {
  .pn16-contact .pn16-contact__text:last-child {
    padding-right: 0;
  }
}
.pn16-contact .pn16-contact__text a {
  color: #0a2414;
  text-decoration: none;
}
html.no-touch .pn16-contact .pn16-contact__text a {
  -webkit-transition: color 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96);
  -moz-transition: color 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96);
  transition: color 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96);
}
html.no-touch .pn16-contact .pn16-contact__text a:hover {
  color: #a67556;
}
.pn16-contact .pn16-contact__map {
  text-align: center;
}
.pn16-contact .pn16-contact__map figure {
  margin: 1.25em 0;
}
.pn16-contact .pn16-contact__map img {
  max-width: 100%;
}

@media (min-width: 48em) {
  .pn16-press::after {
    clear: both;
    content: "";
    display: table;
  }
}
@media (min-width: 48em) {
  .pn16-press .pn16-press__media, .pn16-press .pn16-press__text {
    float: left;
    width: 50%;
  }
}
.pn16-press .pn16-press__header {
  padding-top: 4.38em;
  text-align: center;
}
@media (min-width: 48em) {
  .pn16-press .pn16-press__header {
    padding-top: 140px;
  }
}
.pn16-press .pn16-press__body {
  padding: 1.88em 0;
}
.pn16-press .pn16-press__form fieldset {
  display: inline-block;
  margin: 0;
  padding: 0;
  border: 0;
}
.pn16-press .pn16-press__filter {
  text-align: center;
}
.pn16-press .pn16-press__results {
  max-width: 37.5em;
  margin: 3.75em auto;
  padding: 0 3.13em;
}

.pn16-package {
  margin-top: 15px;
  text-align: center;
  	/*
  	   1,1  per aspect ratio 1:1
  	   16,9 per aspect ratio 16:9 
  	   4,3  per aspect ratio 4:3 etc
      */
  position: relative;
  background-color: #1b4f33;
}
@media (min-width: 48em) {
  .pn16-package {
    width: 75%;
    margin-top: 0;
  }
}
.pn16-package:before {
  display: block;
  width: 100%;
  padding-top: 33.33%;
  content: "";
}
.pn16-package > *:first-child {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}
.pn16-package .pn16-package__inner {
  height: 100%;
}
.pn16-package .pn16-package__inner > div {
  display: inline-block;
  text-align: left;
  position: relative;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  transform: translateY(-50%);
}

.pn16-404 {
  display: table;
  height: 100%;
  width: 100%;
  background-color: #e6e7e8;
}
.pn16-404 .pn16-404__inner {
  display: table-cell;
  text-align: center;
  vertical-align: middle;
}
.pn16-404 .pn16-404__message {
  padding-right: 15px;
  padding-left: 15px;
  text-transform: uppercase;
}
.pn16-404 .pn16-404__message a {
  color: #0a2414;
  text-decoration: none;
}

.section--manos-blancas .pn16-press__text {
  padding-left: 30px;
  padding-right: 30px;
}
@media (min-width: 48em) {
  .section--manos-blancas .pn16-press__text {
    padding-left: 0;
    padding-right: 0;
  }
}
@media (min-width: 48em) {
  .section--manos-blancas .pn16-press__header {
    max-width: 410px;
    margin: 0 auto;
  }
}
.section--manos-blancas .manosBlancasLogo {
  margin: 30px auto 40px;
}
@media (min-width: 48em) {
  .section--manos-blancas .pn16-press__body {
    max-width: 410px;
    margin: 0 auto;
  }
}
.section--manos-blancas .pn16-cta--B {
  color: #fff;
}

@media (min-width: 48em) {
  .pn16-viewer::after {
    clear: both;
    content: "";
    display: table;
  }
}
@media (min-width: 48em) {
  .pn16-viewer .pn16-viewer__item {
    width: 50%;
    float: left;
  }
}

.pn16-pola {
  	/*
  	   1,1  per aspect ratio 1:1
  	   16,9 per aspect ratio 16:9 
  	   4,3  per aspect ratio 4:3 etc
      */
  position: relative;
}
.pn16-pola:before {
  display: block;
  width: 100%;
  padding-top: 111%;
  content: "";
}
.pn16-pola > *:first-child {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}
.pn16-pola > div {
  background-color: transparent;
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-size: cover;
}

.pn16-cover {
  padding-top: 40px;
  padding-bottom: 20px;
}
@media (min-width: 48em) {
  .pn16-cover {
    padding-top: 140px;
    padding-bottom: 70px;
  }
}
@media (min-width: 48em) {
  .pn16-cover.pn16-cover--alternate {
    padding-top: 40%;
  }
}
.pn16-cover .pn16-cover__header {
  padding-bottom: 1.88em;
  text-align: center;
}
.pn16-cover .pn16-cover__body {
  margin: 0 auto;
}
@media (min-width: 48em) {
  .pn16-cover.pn16-cover--alternate .pn16-cover__body {
    padding-top: 15%;
  }
}

.pn16-chessboard {
  position: relative;
}
@media (min-width: 48em) {
  .pn16-chessboard.pn16-chessboard--master {
    	/*
    	   1,1  per aspect ratio 1:1
    	   16,9 per aspect ratio 16:9 
    	   4,3  per aspect ratio 4:3 etc
        */
    position: relative;
  }
  .pn16-chessboard.pn16-chessboard--master:before {
    display: block;
    width: 100%;
    padding-top: 111%;
    content: "";
  }
  .pn16-chessboard.pn16-chessboard--master > *:first-child {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
  }
}
@media (min-width: 48em) {
  .pn16-chessboard.pn16-chessboard--master .pn16-chessboard-item:nth-child(1) {
    left: 0;
    top: 0;
  }
  .pn16-chessboard.pn16-chessboard--master .pn16-chessboard-item:nth-child(2) {
    left: 50%;
    top: 25%;
  }
  .pn16-chessboard.pn16-chessboard--master .pn16-chessboard-item:nth-child(3) {
    left: 75%;
    top: 0%;
  }
  .pn16-chessboard.pn16-chessboard--master .pn16-chessboard-item:nth-child(4) {
    left: 25%;
    top: 50%;
  }
  .pn16-chessboard.pn16-chessboard--master .pn16-chessboard-item:nth-child(5) {
    left: 0%;
    top: 75%;
  }
  .pn16-chessboard.pn16-chessboard--master .pn16-chessboard-item:nth-child(6) {
    left: 25%;
    top: 75%;
  }
  .pn16-chessboard.pn16-chessboard--master .pn16-chessboard-item:nth-child(7) {
    left: 50%;
    top: 75%;
  }
  .pn16-chessboard.pn16-chessboard--master .pn16-chessboard-item:nth-child(8) {
    left: 0;
    top: 100%;
  }
  .pn16-chessboard.pn16-chessboard--master .pn16-chessboard-item:nth-child(9) {
    left: 25%;
    top: 100%;
  }
}
@media (min-width: 48em) {
  .pn16-chessboard.pn16-chessboard--servant {
    	/*
    	   1,1  per aspect ratio 1:1
    	   16,9 per aspect ratio 16:9 
    	   4,3  per aspect ratio 4:3 etc
        */
    position: relative;
  }
  .pn16-chessboard.pn16-chessboard--servant:before {
    display: block;
    width: 100%;
    padding-top: 83.25%;
    content: "";
  }
  .pn16-chessboard.pn16-chessboard--servant > *:first-child {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
  }
}
@media (min-width: 48em) {
  .pn16-chessboard.pn16-chessboard--alternate {
    	/*
    	   1,1  per aspect ratio 1:1
    	   16,9 per aspect ratio 16:9 
    	   4,3  per aspect ratio 4:3 etc
        */
    position: relative;
  }
  .pn16-chessboard.pn16-chessboard--alternate:before {
    display: block;
    width: 100%;
    padding-top: 55.5%;
    content: "";
  }
  .pn16-chessboard.pn16-chessboard--alternate > *:first-child {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
  }
}
.pn16-chessboard.pn16-chessboard--fancy {
  width: 50%;
}
@media (min-width: 48em) {
  .pn16-chessboard.pn16-chessboard--fancy .pn16-chessboard-item:nth-child(1) {
    left: 0;
    top: 0;
  }
  .pn16-chessboard.pn16-chessboard--fancy .pn16-chessboard-item:nth-child(2) {
    left: 25%;
    top: 0%;
  }
}
@media (min-width: 48em) {
  .pn16-chessboard.pn16-chessboard--A .pn16-chessboard-item:nth-child(1) {
    left: 50%;
    top: 0;
  }
  .pn16-chessboard.pn16-chessboard--A .pn16-chessboard-item:nth-child(2) {
    left: 25%;
    margin-top: 27.75%;
  }
  .pn16-chessboard.pn16-chessboard--A .pn16-chessboard-item:nth-child(3) {
    left: 0%;
    margin-top: 55.5%;
  }
}
@media (min-width: 48em) {
  .pn16-chessboard.pn16-chessboard--B .pn16-chessboard-item:nth-child(1) {
    left: 0;
    top: 0;
  }
  .pn16-chessboard.pn16-chessboard--B .pn16-chessboard-item:nth-child(2) {
    left: 50%;
    top: 0%;
  }
  .pn16-chessboard.pn16-chessboard--B .pn16-chessboard-item:nth-child(3) {
    left: 75%;
    top: 0%;
  }
  .pn16-chessboard.pn16-chessboard--B .pn16-chessboard-item:nth-child(4) {
    left: 75%;
    margin-top: 27.75%;
  }
}
@media (min-width: 48em) {
  .pn16-chessboard.pn16-chessboard--C .pn16-chessboard-item:nth-child(1) {
    left: 0;
    top: 0;
  }
  .pn16-chessboard.pn16-chessboard--C .pn16-chessboard-item:nth-child(2) {
    left: 25%;
    top: 0%;
  }
  .pn16-chessboard.pn16-chessboard--C .pn16-chessboard-item:nth-child(3) {
    left: 50%;
    top: 0%;
  }
  .pn16-chessboard.pn16-chessboard--C .pn16-chessboard-item:nth-child(4) {
    left: 25%;
    margin-top: 55.5%;
  }
}
@media (min-width: 48em) {
  .pn16-chessboard.pn16-chessboard--D .pn16-chessboard-item:nth-child(1) {
    left: 0;
    top: 0;
  }
  .pn16-chessboard.pn16-chessboard--D .pn16-chessboard-item:nth-child(2) {
    left: 50%;
    margin-top: 27.75%;
  }
  .pn16-chessboard.pn16-chessboard--D .pn16-chessboard-item:nth-child(3) {
    left: 75%;
    margin-top: 27.75%;
  }
  .pn16-chessboard.pn16-chessboard--D .pn16-chessboard-item:nth-child(4) {
    left: 50%;
    margin-top: 55.5%;
  }
}
@media (min-width: 48em) {
  .pn16-chessboard.pn16-chessboard--E .pn16-chessboard-item:nth-child(1) {
    left: 50%;
    top: 0;
  }
  .pn16-chessboard.pn16-chessboard--E .pn16-chessboard-item:nth-child(2) {
    left: 0;
    top: 0;
  }
  .pn16-chessboard.pn16-chessboard--E .pn16-chessboard-item:nth-child(3) {
    left: 25%;
    margin-top: 27.75%;
  }
  .pn16-chessboard.pn16-chessboard--E .pn16-chessboard-item:nth-child(4) {
    left: 0;
    margin-top: 27.75%;
  }
  .pn16-chessboard.pn16-chessboard--E .pn16-chessboard-item:nth-child(5) {
    left: 25%;
    top: 0;
  }
}
@media (min-width: 48em) {
  .pn16-chessboard.pn16-chessboard--F .pn16-chessboard-item:nth-child(1) {
    left: 0;
    top: 0;
  }
  .pn16-chessboard.pn16-chessboard--F .pn16-chessboard-item:nth-child(2) {
    left: 25%;
    top: 0;
  }
  .pn16-chessboard.pn16-chessboard--F .pn16-chessboard-item:nth-child(3) {
    left: 75%;
    top: 0;
  }
  .pn16-chessboard.pn16-chessboard--F .pn16-chessboard-item:nth-child(4) {
    left: 0;
    margin-top: 27.75%;
  }
  .pn16-chessboard.pn16-chessboard--F .pn16-chessboard-item:nth-child(5) {
    left: 50%;
    margin-top: 27.75%;
  }
}
@media (min-width: 48em) {
  .pn16-chessboard.pn16-chessboard--G .pn16-chessboard-item:nth-child(1) {
    left: 0;
    top: 0;
  }
  .pn16-chessboard.pn16-chessboard--G .pn16-chessboard-item:nth-child(2) {
    left: 25%;
    top: 0;
  }
  .pn16-chessboard.pn16-chessboard--G .pn16-chessboard-item:nth-child(3) {
    left: 50%;
    top: 0;
  }
  .pn16-chessboard.pn16-chessboard--G .pn16-chessboard-item:nth-child(4) {
    left: 75%;
    top: 0;
  }
  .pn16-chessboard.pn16-chessboard--G .pn16-chessboard-item:nth-child(5) {
    left: 0;
    margin-top: 27.75%;
  }
  .pn16-chessboard.pn16-chessboard--G .pn16-chessboard-item:nth-child(6) {
    left: 25%;
    margin-top: 27.75%;
  }
  .pn16-chessboard.pn16-chessboard--G .pn16-chessboard-item:nth-child(7) {
    left: 50%;
    margin-top: 27.75%;
  }
  .pn16-chessboard.pn16-chessboard--G .pn16-chessboard-item:nth-child(8) {
    left: 75%;
    margin-top: 27.75%;
  }
}
@media (min-width: 48em) {
  .pn16-chessboard.pn16-chessboard--H .pn16-chessboard-item:nth-child(1) {
    left: 0;
    top: 0;
  }
  .pn16-chessboard.pn16-chessboard--H .pn16-chessboard-item:nth-child(2) {
    left: 25%;
    top: 0;
  }
  .pn16-chessboard.pn16-chessboard--H .pn16-chessboard-item:nth-child(3) {
    left: 75%;
    top: 0;
  }
  .pn16-chessboard.pn16-chessboard--H .pn16-chessboard-item:nth-child(4) {
    left: 0;
    margin-top: 27.75%;
  }
  .pn16-chessboard.pn16-chessboard--H .pn16-chessboard-item:nth-child(5) {
    left: 25%;
    margin-top: 27.75%;
  }
  .pn16-chessboard.pn16-chessboard--H .pn16-chessboard-item:nth-child(6) {
    left: 50%;
    margin-top: 27.75%;
  }
  .pn16-chessboard.pn16-chessboard--H .pn16-chessboard-item:nth-child(7) {
    left: 0;
    margin-top: 55.5%;
  }
  .pn16-chessboard.pn16-chessboard--H .pn16-chessboard-item:nth-child(8) {
    left: 50%;
    margin-top: 55.5%;
  }
  .pn16-chessboard.pn16-chessboard--H .pn16-chessboard-item:nth-child(9) {
    left: 75%;
    margin-top: 55.5%;
  }
}
@media (min-width: 48em) {
  .pn16-chessboard.pn16-chessboard--I .pn16-chessboard-item:nth-child(1) {
    left: 0;
    top: 0;
  }
  .pn16-chessboard.pn16-chessboard--I .pn16-chessboard-item:nth-child(2) {
    left: 50%;
    top: 0;
  }
  .pn16-chessboard.pn16-chessboard--I .pn16-chessboard-item:nth-child(3) {
    left: 75%;
    margin-top: 27.75%;
  }
  .pn16-chessboard.pn16-chessboard--I .pn16-chessboard-item:nth-child(4) {
    left: 50%;
    margin-top: 27.75%;
  }
  .pn16-chessboard.pn16-chessboard--I .pn16-chessboard-item:nth-child(5) {
    left: 75%;
    top: 0;
  }
}
@media (min-width: 48em) {
  .pn16-chessboard.pn16-chessboard--fotovideo .pn16-chessboard-item:nth-child(1) {
    left: 0;
    top: 0;
  }
  .pn16-chessboard.pn16-chessboard--fotovideo .pn16-chessboard-item:nth-child(2) {
    left: 25%;
    top: 0;
  }
  .pn16-chessboard.pn16-chessboard--fotovideo .pn16-chessboard-item:nth-child(3) {
    left: 50%;
    top: 0;
  }
  .pn16-chessboard.pn16-chessboard--fotovideo .pn16-chessboard-item:nth-child(4) {
    left: 75%;
    top: 0;
  }
  .pn16-chessboard.pn16-chessboard--fotovideo .pn16-chessboard-item:nth-child(5) {
    left: 0;
    margin-top: 27.75%;
  }
  .pn16-chessboard.pn16-chessboard--fotovideo .pn16-chessboard-item:nth-child(6) {
    left: 25%;
    margin-top: 27.75%;
  }
  .pn16-chessboard.pn16-chessboard--fotovideo .pn16-chessboard-item:nth-child(7) {
    left: 50%;
    margin-top: 27.75%;
  }
  .pn16-chessboard.pn16-chessboard--fotovideo .pn16-chessboard-item:nth-child(8) {
    left: 75%;
    margin-top: 27.75%;
  }
  .pn16-chessboard.pn16-chessboard--fotovideo .pn16-chessboard-item:nth-child(9) {
    left: 0;
    margin-top: 55.5%;
  }
  .pn16-chessboard.pn16-chessboard--fotovideo .pn16-chessboard-item:nth-child(10) {
    left: 25%;
    margin-top: 55.5%;
  }
  .pn16-chessboard.pn16-chessboard--fotovideo .pn16-chessboard-item:nth-child(11) {
    left: 50%;
    margin-top: 55.5%;
  }
  .pn16-chessboard.pn16-chessboard--fotovideo .pn16-chessboard-item:nth-child(12) {
    left: 75%;
    margin-top: 55.5%;
  }
}
@media (min-width: 48em) {
  .pn16-chessboard.pn16-chessboard--manosblancas .pn16-chessboard-item:nth-child(1) {
    left: 0;
    top: 0;
    width: 50%;
  }
  .pn16-chessboard.pn16-chessboard--manosblancas .pn16-chessboard-item:nth-child(2) {
    left: 50%;
    top: 0;
  }
  .pn16-chessboard.pn16-chessboard--manosblancas .pn16-chessboard-item:nth-child(3) {
    left: 75%;
    top: 0;
  }
  .pn16-chessboard.pn16-chessboard--manosblancas .pn16-chessboard-item:nth-child(4) {
    left: 50%;
    margin-top: 27.75%;
  }
  .pn16-chessboard.pn16-chessboard--manosblancas .pn16-chessboard-item:nth-child(5) {
    left: 75%;
    margin-top: 27.75%;
  }
  .pn16-chessboard.pn16-chessboard--manosblancas .pn16-chessboard-item:nth-child(6) {
    left: 0;
    margin-top: 55.5%;
  }
  .pn16-chessboard.pn16-chessboard--manosblancas .pn16-chessboard-item:nth-child(7) {
    left: 25%;
    margin-top: 55.5%;
  }
  .pn16-chessboard.pn16-chessboard--manosblancas .pn16-chessboard-item:nth-child(8) {
    left: 50%;
    margin-top: 55.5%;
  }
  .pn16-chessboard.pn16-chessboard--manosblancas .pn16-chessboard-item:nth-child(9) {
    left: 75%;
    margin-top: 55.5%;
  }
}

@media (min-width: 48em) {
  .pn16-chessboard-item {
    position: absolute;
    width: 50%;
  }
}
@media (min-width: 48em) {
  .pn16-chessboard-item.pn16-chessboard-item--A {
    width: 50%;
  }
}
@media (min-width: 48em) {
  .pn16-chessboard-item.pn16-chessboard-item--B {
    width: 25%;
  }
}
.pn16-chessboard-item .pn16-chessboard-item__inner {
  display: block;
  	/*
  	   1,1  per aspect ratio 1:1
  	   16,9 per aspect ratio 16:9 
  	   4,3  per aspect ratio 4:3 etc
      */
  position: relative;
}
.pn16-chessboard-item .pn16-chessboard-item__inner:before {
  display: block;
  width: 100%;
  padding-top: 111%;
  content: "";
}
.pn16-chessboard-item .pn16-chessboard-item__inner > *:first-child {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}

.pn16-chessboard-item-logo {
  background-color: #ffffff;
  background-image: url("../img/chessboard-item-logo.png");
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-size: 80% auto;
}

.pn16-chessboard-item-image {
  position: relative;
  background-color: transparent;
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-size: cover;
}
html.no-touch .pn16-chessboard-item-image:hover:after {
  background-color: rgba(26, 23, 36, 0.6);
}
.pn16-chessboard-item-image span {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  background-color: rgba(26, 23, 36, 0);
}
html.no-touch .pn16-chessboard-item-image span {
  -webkit-transition: background-color 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96);
  -moz-transition: background-color 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96);
  transition: background-color 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96);
}
.pn16-chessboard-item-image span:after {
  position: absolute;
  right: 55px;
  bottom: 20px;
  color: #ffffff;
  font-family: "IcoMoon";
  font-size: 18px;
  font-size: 1.13rem;
  opacity: 0;
}
html.no-touch .pn16-chessboard-item-image span:after {
  -webkit-transition: right 0.45s cubic-bezier(0.46, 0.03, 0.52, 0.96), opacity 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96) 0.15s;
  -moz-transition: right 0.45s cubic-bezier(0.46, 0.03, 0.52, 0.96), opacity 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96) 0.15s;
  transition: right 0.45s cubic-bezier(0.46, 0.03, 0.52, 0.96), opacity 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96) 0.15s;
}
html.no-touch .pn16-chessboard-item-image:hover span {
  background-color: rgba(26, 23, 36, 0.6);
}
html.no-touch .pn16-chessboard-item-image:hover span:after {
  right: 20px;
  opacity: 1;
}

.pn16-chessboard-item-video {
  background-color: transparent;
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-size: cover;
}

.pn16-chessboard-item-tint.pn16-chessboard-item-tint--A {
  background-color: #d1d3d4;
}
.pn16-chessboard-item-tint.pn16-chessboard-item-tint--B {
  background-color: #1b4f33;
}
.pn16-chessboard-item-tint.pn16-chessboard-item-tint--C {
  background-color: #e6e7e8;
}
.pn16-chessboard-item-tint.pn16-chessboard-item-tint--D {
  background-color: #a67556;
}
.pn16-chessboard-item-tint.pn16-chessboard-item-tint--E {
  background-color: #ffffff;
}

@media (min-width: 48em) {
  .pn16-chessboard-mere {
    float: left;
  }
}
.pn16-chessboard-mere.pn16-chessboard-mere--media {
  	/*
  	   1,1  per aspect ratio 1:1
  	   16,9 per aspect ratio 16:9 
  	   4,3  per aspect ratio 4:3 etc
      */
  position: relative;
}
.pn16-chessboard-mere.pn16-chessboard-mere--media:before {
  display: block;
  width: 100%;
  padding-top: 111%;
  content: "";
}
.pn16-chessboard-mere.pn16-chessboard-mere--media > *:first-child {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}
@media (min-width: 48em) {
  .pn16-chessboard-mere.pn16-chessboard-mere--media {
    width: 25%;
  }
}
.pn16-chessboard-mere.pn16-chessboard-mere--media a, .pn16-chessboard-mere.pn16-chessboard-mere--media span {
  display: block;
  height: 100%;
  width: 100%;
  background-color: transparent;
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-size: cover;
}
@media (min-width: 48em) {
  .pn16-chessboard-mere.pn16-chessboard-mere--text {
    width: 50%;
  }
}

.pn16-textsheet .pn16-textsheet__header {
  margin-bottom: 1.88em;
}
.pn16-textsheet .pn16-cta {
  margin-top: 0.94em;
}

.pn16-search {
  padding-top: 1.56em;
  background-color: #ffffff;
}
@media (min-width: 48em) {
  .pn16-search {
    padding-top: 4.69em;
  }
}
html.pn16-search-open .pn16-search {
  opacity: 1;
  visibility: visible;
}
.pn16-search .pn16-search__qty {
  display: block;
  margin-top: 15px;
  margin-bottom: 40px;
  color: #0a2414;
  font-family: "BrandonGrotesque", "Helvetica Neue", "Helvetica", "Roboto", "Arial", sans-serif;
  font-weight: 500;
  font-size: 14px;
  font-size: 0.88rem;
}
.pn16-search .pn16-search__results ul {
  margin-top: 0;
  margin-bottom: 0;
  padding-left: 0;
  list-style: none;
}
.pn16-search .pn16-search__results li {
  margin-top: 40px;
  padding-top: 40px;
  border-top: 1px solid #e6e7e8;
}
.pn16-search .pn16-search__results li:first-child {
  margin-top: 0;
  padding-top: 0;
  border-top: none;
}
.pn16-search .pn16-search__results li p {
  margin-top: 0;
  margin-bottom: 0;
}
.pn16-search .pn16-search__results a {
  color: inherit;
  text-decoration: none;
}
html.no-touch .pn16-search .pn16-search__results a {
  -webkit-transition: color 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96);
  -moz-transition: color 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96);
  transition: color 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96);
}
html.no-touch .pn16-search .pn16-search__results a:hover {
  color: #a67556;
}
.pn16-search .pn16-search__results.pn16-scrollable {
  overflow: hidden;
  overflow-y: auto;
}
@media (min-width: 48em) {
  .pn16-search .pn16-search__results.pn16-scrollable::-webkit-scrollbar {
    display: none;
  }
}

.pn16-search-form fieldset {
  margin: 0;
  padding: 0;
  border: 0px solid transparent;
}
.pn16-search-form .pn16-search-form__input {
  display: block;
  width: 100%;
  padding: 15px 0;
  color: #0a2414;
  font-family: "Playfair Display", serif;
  font-weight: normal;
  font-size: 30px;
  font-size: 1.88rem;
  border: none;
  border-bottom: 1px solid #a67556;
  border-radius: 0;
  -webkit-appearance: none;
}

.pn16-video-viewer {
  	/*
  	   1,1  per aspect ratio 1:1
  	   16,9 per aspect ratio 16:9 
  	   4,3  per aspect ratio 4:3 etc
      */
  position: relative;
  overflow: hidden;
}
.pn16-video-viewer:before {
  display: block;
  width: 100%;
  padding-top: 111%;
  content: "";
}
.pn16-video-viewer > *:first-child {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}
@media (min-width: 48em) {
  .pn16-video-viewer {
    	/*
    	   1,1  per aspect ratio 1:1
    	   16,9 per aspect ratio 16:9 
    	   4,3  per aspect ratio 4:3 etc
        */
    position: static;
    height: 100vh;
  }
  .pn16-video-viewer:before {
    display: none;
    width: auto;
    padding-top: 0;
  }
  .pn16-video-viewer > *:first-child {
    position: static;
  }
}
@media (min-width: 48em) {
  .pn16-video-viewer .pn16-video-viewer__inner {
    height: 100%;
  }
}
.pn16-video-viewer .pn16-video-viewer__inner > div {
  position: relative;
}
@media (min-width: 48em) {
  .pn16-video-viewer .pn16-video-viewer__inner > div {
    height: 100%;
    overflow: hidden;
  }
}
.pn16-video-viewer .pn16-video-viewer__media {
  height: 100%;
  width: 100%;
}
@media (min-width: 48em) {
  .pn16-video-viewer .pn16-video-viewer__media {
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: 189;
    height: auto;
    width: auto;
    min-width: 100%;
    min-height: 100%;
    -webkit-transform: translateX(-50%) translateY(-50%);
    -moz-transform: translateX(-50%) translateY(-50%);
    -ms-transform: translateX(-50%) translateY(-50%);
    -o-transform: translateX(-50%) translateY(-50%);
    transform: translateX(-50%) translateY(-50%);
  }
}
.pn16-video-viewer .pn16-video-viewer__overlay {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 190;
  display: none;
  height: 100%;
  width: 100%;
  background-color: rgba(0, 0, 0, 0.4);
}
@media (min-width: 48em) {
  .pn16-video-viewer .pn16-video-viewer__overlay {
    display: block;
  }
}
.pn16-video-viewer .pn16-video-viewer__body {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 191;
  height: 100%;
  width: 100%;
  padding: 15px;
  padding-top: 70px;
  display: none;
  opacity: 0;
  visibility: hidden;
}
@media (min-width: 48em) {
  .pn16-video-viewer .pn16-video-viewer__body {
    display: block;
    opacity: 1;
    visibility: visible;
  }
}
@media (min-width: 48em) {
  .pn16-video-viewer .pn16-video-viewer__body {
    padding: 15px 50px;
    padding-top: 15px;
  }
}
.pn16-video-viewer .pn16-video-viewer__body .pn16-video-viewer-sheet {
  position: relative;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  transform: translateY(-50%);
  text-align: center;
}

.pn16-video-viewer-sheet > p {
  margin: 0;
  color: #ffffff;
  font-family: "Playfair Display", serif;
  font-style: italic;
  font-weight: normal;
  font-size: 18px;
  font-size: 1.13rem;
  line-height: 34px;
  line-height: 2.13rem;
}
@media (min-width: 48em) {
  .pn16-video-viewer-sheet > p {
    font-size: 22px;
    font-size: 1.38rem;
    line-height: 38px;
    line-height: 2.38rem;
  }
}
.pn16-video-viewer-sheet > p:before, .pn16-video-viewer-sheet > p:after {
  font-size: 2.5em;
  font-style: normal;
  line-height: 0.1em;
  vertical-align: -0.2em;
}
.pn16-video-viewer-sheet > p:before {
  margin-right: 0.1em;
  content: '“';
}
.pn16-video-viewer-sheet > p:after {
  margin-left: 0.1em;
  content: '”';
}
.pn16-video-viewer-sheet span {
  position: relative;
  display: block;
  padding-top: 40px;
  color: #ffffff;
  font-family: "Playfair Display", serif;
  font-weight: 700;
  font-size: 18px;
  font-size: 1.13rem;
}
@media (min-width: 48em) {
  .pn16-video-viewer-sheet span {
    padding-top: 60px;
  }
}
.pn16-video-viewer-sheet span:before {
  position: absolute;
  top: 20px;
  left: 50%;
  display: inline-block;
  height: 1px;
  width: 50px;
  margin-left: -25px;
  background-color: #ffffff;
  content: '';
}
@media (min-width: 48em) {
  .pn16-video-viewer-sheet span:before {
    top: 30px;
  }
}
@media (min-width: 48em) {
  .pn16-video-viewer-sheet span {
    font-size: 22px;
    font-size: 1.38rem;
  }
}
.pn16-video-viewer-sheet span small {
  font-size: 12px;
  font-size: 0.75rem;
}

.pn16-video-viewer-cta {
  position: absolute;
  bottom: 25px;
  left: 0;
  width: 100%;
  text-align: center;
  text-transform: uppercase;
}

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

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0;
}
.slick-list:focus {
  outline: none;
}
.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
}
.slick-track:before, .slick-track:after {
  content: "";
  display: table;
}
.slick-track:after {
  clear: both;
}
.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none;
}
[dir="rtl"] .slick-slide {
  float: right;
}
.slick-slide img {
  display: block;
}
.slick-slide.slick-loading img {
  display: none;
}
.slick-slide.dragging img {
  pointer-events: none;
}
.slick-initialized .slick-slide {
  display: block;
}
.slick-loading .slick-slide {
  visibility: hidden;
}
.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
  display: none;
}

.slick-slider {
  padding-bottom: 40px;
}

.slick-list {
  padding-right: 40px;
}

.slick-dots {
  position: absolute;
  bottom: 5px;
  left: 0;
  z-index: 189;
  margin-top: 0;
  margin-bottom: 0;
  padding-left: 0;
  list-style: none;
  width: 100%;
  text-align: center;
}
.slick-dots li {
  display: inline-block;
  margin: 0 7px;
}
.slick-dots li button {
  display: inline-block;
  height: 12px;
  width: 12px;
  color: transparent;
  font-size: 0;
  line-height: 0;
  background-color: #e6e7e8;
  border: none;
  border-radius: 50%;
  cursor: pointer;
  outline: none;
  -webkit-transition: background-color 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96);
  -moz-transition: background-color 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96);
  transition: background-color 0.65s cubic-bezier(0.46, 0.03, 0.52, 0.96);
}
.slick-dots li.slick-active button {
  background-color: #0a2414;
}
html.no-touch .slick-dots li:hover button {
  background-color: #0a2414;
}
.slick-dots li.slick-active button {
  cursor: default;
}



/*# sourceMappingURL=data:application/json;charset=utf8;base64,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QzZCdkMsSUFBVSxFc0M3QjhCLENBQUM7RUFDM0MsT0FBTyxFdkNvQlUsR0FBa0I7RUwrQnRDLFVBQVUsRUFBRSxDQUFDO0VBQ2IsYUFBYSxFQUFFLENBQUM7RUFDaEIsWUFBWSxFQUFFLENBQUM7RUFFZixVQUFVLEVBQUUsSUFBSTtFNENuRGIsS0FBSyxFQUFFLElBQUk7RUFDWCxVQUFVLEVBQUUsTUFBTTs7QUFFbEIsY0FBRztFQUVDLE9BQU8sRUFBRSxZQUFZO0VBQ3JCLE1BQU0sRUFBRSxLQUFLOztBQUViLHFCQUFPO0VBRUgsT0FBTyxFQUFFLFlBQVk7RXhDVTdCLE1BQU0sRUFQQyxJQUFNO0VBYWIsS0FBSyxFQWJFLElBQU07RXdDQ0wsS0FBSyxFQUFFLFdBQVc7RUFDbEIsU0FBUyxFQUFFLENBQUM7RUFDWixXQUFXLEVBQUUsQ0FBQztFQUVkLGdCQUFnQixFdkM5QnBCLE9BQU87RXVDK0JILE1BQU0sRUFBRSxJQUFJO0VBQ1osYUFBYSxFQUFFLEdBQUc7RUFFbEIsTUFBTSxFQUFFLE9BQU87RUFDZixPQUFPLEVBQUUsSUFBSTtFckNSakIsa0JBQW9CLEVBQUUsMkRBQU07RUFJNUIsZUFBaUIsRUFBRSwyREFBTTtFQVl6QixVQUFZLEVBQUUsMkRBQU07O0FxQ0ZwQixrQ0FBc0I7RUFFbEIsZ0JBQWdCLEV2QzdDbkIsT0FBTzs7QXVDbURKLHlDQUFlO0VBRVgsZ0JBQWdCLEV2Q3JEdkIsT0FBTzs7QXVDMkRSLGtDQUFzQjtFQUVsQixNQUFNLEVBQUUsT0FBTyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9tb2R1bGFyaXplZC1ub3JtYWxpemUtc2Nzcy9fbm9ybWFsaXplLnNjc3MiLCIuLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL21vZHVsYXJpemVkLW5vcm1hbGl6ZS1zY3NzL2Jhc2UvX2h0bWwuc2NzcyIsImJhc2UvX2ZvbnRzLnNjc3MiLCIuLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL21vZHVsYXJpemVkLW5vcm1hbGl6ZS1zY3NzL2Jhc2UvX2JvZHkuc2NzcyIsIi4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvbW9kdWxhcml6ZWQtbm9ybWFsaXplLXNjc3MvaHRtbDUvX2Jsb2Nrcy5zY3NzIiwiLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9tb2R1bGFyaXplZC1ub3JtYWxpemUtc2Nzcy9odG1sNS9faW5saW5lLWJsb2Nrcy5zY3NzIiwiLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9tb2R1bGFyaXplZC1ub3JtYWxpemUtc2Nzcy9odG1sNS9fYXVkaW8uc2NzcyIsIi4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvbW9kdWxhcml6ZWQtbm9ybWFsaXplLXNjc3MvaHRtbDUvX2hpZGRlbi5zY3NzIiwiLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9tb2R1bGFyaXplZC1ub3JtYWxpemUtc2Nzcy9saW5rcy9fZml4LWJhY2tncm91bmQuc2NzcyIsIi4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvbW9kdWxhcml6ZWQtbm9ybWFsaXplLXNjc3MvbGlua3MvX2ZpeC1vdXRsaW5lLnNjc3MiLCIuLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL21vZHVsYXJpemVkLW5vcm1hbGl6ZS1zY3NzL3RleHQtbGV2ZWwvX2FiYnIuc2NzcyIsIi4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvbW9kdWxhcml6ZWQtbm9ybWFsaXplLXNjc3MvdGV4dC1sZXZlbC9fZml4LWJvbGRlci5zY3NzIiwiLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9tb2R1bGFyaXplZC1ub3JtYWxpemUtc2Nzcy90ZXh0LWxldmVsL19kZm4uc2NzcyIsIi4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvbW9kdWxhcml6ZWQtbm9ybWFsaXplLXNjc3MvdGV4dC1sZXZlbC9faGVhZGluZ3Muc2NzcyIsIi4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvbW9kdWxhcml6ZWQtbm9ybWFsaXplLXNjc3MvdGV4dC1sZXZlbC9fbWFyay5zY3NzIiwiLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9tb2R1bGFyaXplZC1ub3JtYWxpemUtc2Nzcy90ZXh0LWxldmVsL19zbWFsbC5zY3NzIiwiLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9tb2R1bGFyaXplZC1ub3JtYWxpemUtc2Nzcy90ZXh0LWxldmVsL19zdWItYW5kLXN1cC5zY3NzIiwiLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9tb2R1bGFyaXplZC1ub3JtYWxpemUtc2Nzcy9lbWJlZC9faW1nLnNjc3MiLCIuLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL21vZHVsYXJpemVkLW5vcm1hbGl6ZS1zY3NzL2VtYmVkL19zdmcuc2NzcyIsIi4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvbW9kdWxhcml6ZWQtbm9ybWFsaXplLXNjc3MvZ3JvdXBpbmcvX2ZpZ3VyZS5zY3NzIiwiLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9tb2R1bGFyaXplZC1ub3JtYWxpemUtc2Nzcy9ncm91cGluZy9faHIuc2NzcyIsIi4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvbW9kdWxhcml6ZWQtbm9ybWFsaXplLXNjc3MvZ3JvdXBpbmcvX3ByZS5zY3NzIiwiLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9tb2R1bGFyaXplZC1ub3JtYWxpemUtc2Nzcy9ncm91cGluZy9fZml4LW1vbm9zcGFjZS5zY3NzIiwiLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9tb2R1bGFyaXplZC1ub3JtYWxpemUtc2Nzcy9mb3Jtcy9fZml4LWZvbnQuc2NzcyIsIi4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvbW9kdWxhcml6ZWQtbm9ybWFsaXplLXNjc3MvZm9ybXMvX2ZpeC1vdmVyZmxvdy5zY3NzIiwiLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9tb2R1bGFyaXplZC1ub3JtYWxpemUtc2Nzcy9mb3Jtcy9fZml4LXRleHQtdHJhbnNmb3JtLnNjc3MiLCIuLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL21vZHVsYXJpemVkLW5vcm1hbGl6ZS1zY3NzL2Zvcm1zL19idXR0b25zLnNjc3MiLCIuLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL21vZHVsYXJpemVkLW5vcm1hbGl6ZS1zY3NzL2Zvcm1zL19kaXNhYmxlZC5zY3NzIiwiLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9tb2R1bGFyaXplZC1ub3JtYWxpemUtc2Nzcy9mb3Jtcy9fZml4LWZvY3VzLWlubmVyLnNjc3MiLCIuLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL21vZHVsYXJpemVkLW5vcm1hbGl6ZS1zY3NzL2Zvcm1zL19maXgtbGluZS1oZWlnaHQuc2NzcyIsIi4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvbW9kdWxhcml6ZWQtbm9ybWFsaXplLXNjc3MvZm9ybXMvX2NoZWNrYm94LWFuZC1yYWRpby5zY3NzIiwiLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9tb2R1bGFyaXplZC1ub3JtYWxpemUtc2Nzcy9mb3Jtcy9fbnVtYmVyLnNjc3MiLCIuLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL21vZHVsYXJpemVkLW5vcm1hbGl6ZS1zY3NzL2Zvcm1zL19zZWFyY2guc2NzcyIsIi4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvbW9kdWxhcml6ZWQtbm9ybWFsaXplLXNjc3MvZm9ybXMvX2ZpZWxkc2V0LnNjc3MiLCIuLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL21vZHVsYXJpemVkLW5vcm1hbGl6ZS1zY3NzL2Zvcm1zL19sZWdlbmQuc2NzcyIsIi4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvbW9kdWxhcml6ZWQtbm9ybWFsaXplLXNjc3MvZm9ybXMvX3RleHRhcmVhLnNjc3MiLCIuLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL21vZHVsYXJpemVkLW5vcm1hbGl6ZS1zY3NzL2Zvcm1zL19vcHRncm91cC5zY3NzIiwiLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9tb2R1bGFyaXplZC1ub3JtYWxpemUtc2Nzcy90YWJsZXMvX2ZpeC1jZWxsLXNwYWNpbmcuc2NzcyIsImhlbHBlcnMvX3V0aWxzLnNjc3MiLCJoZWxwZXJzL19yZXNwb25zaXZlLnNjc3MiLCIuLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL2JyZWFrcG9pbnQtc2Fzcy9zdHlsZXNoZWV0cy9fYnJlYWtwb2ludC5zY3NzIiwiYmFzZS9fdHlwb2dyYXBoeS5zY3NzIiwiLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9ib3VyYm9uL2FwcC9hc3NldHMvc3R5bGVzaGVldHMvYWRkb25zL19zaXplLnNjc3MiLCJiYXNlL19zZXR0aW5ncy5zY3NzIiwiLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9ib3VyYm9uL2FwcC9hc3NldHMvc3R5bGVzaGVldHMvYWRkb25zL19wb3NpdGlvbi5zY3NzIiwiLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9ib3VyYm9uL2FwcC9hc3NldHMvc3R5bGVzaGVldHMvYWRkb25zL19wcmVmaXhlci5zY3NzIiwiY29tcG9uZW50cy9faWNvbnMuc2NzcyIsImNvbXBvbmVudHMvX3NlcGFyYXRvcnMuc2NzcyIsIi4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvYm91cmJvbi9hcHAvYXNzZXRzL3N0eWxlc2hlZXRzL2NzczMvX2tleWZyYW1lcy5zY3NzIiwiY29tcG9uZW50cy9fb3ZlcmxheXMuc2NzcyIsIi4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvYm91cmJvbi9hcHAvYXNzZXRzL3N0eWxlc2hlZXRzL2FkZG9ucy9fY2xlYXJmaXguc2NzcyIsImNvbXBvbmVudHMvX2dhbGxlcnlPdmVybGF5LnNjc3MiLCJjb21wb25lbnRzL19jdGFzLnNjc3MiLCIuLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL2JvdXJib24vYXBwL2Fzc2V0cy9zdHlsZXNoZWV0cy9jc3MzL190cmFuc2l0aW9uLnNjc3MiLCJjb21wb25lbnRzL19mb3Jtcy5zY3NzIiwiLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9ib3VyYm9uL2FwcC9hc3NldHMvc3R5bGVzaGVldHMvY3NzMy9fcGxhY2Vob2xkZXIuc2NzcyIsImNvbXBvbmVudHMvX3F1b3Rlcy5zY3NzIiwiY29tcG9uZW50cy9fc2Nyb2xsZnguc2NzcyIsImNvbXBvbmVudHMvX2Nvb2tpZS1wb2xpY3ktYWxlcnQuc2NzcyIsImNvbXBvbmVudHMvX2hvbWUtb3ZlcmxheS5zY3NzIiwibGF5b3V0L19iYXNlLnNjc3MiLCIuLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL2JvdXJib24vYXBwL2Fzc2V0cy9zdHlsZXNoZWV0cy9jc3MzL19zZWxlY3Rpb24uc2NzcyIsImxheW91dC9fYm9keS5zY3NzIiwibGF5b3V0L19oZWFkZXIuc2NzcyIsImxheW91dC9fZm9vdGVyLnNjc3MiLCJwYWdlcy9fYXdhcmRlZC5zY3NzIiwicGFnZXMvX2p1cnkuc2NzcyIsInBhZ2VzL19zZXJ2aWNlLnNjc3MiLCIuLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL2JvdXJib24vYXBwL2Fzc2V0cy9zdHlsZXNoZWV0cy9hZGRvbnMvX3dvcmQtd3JhcC5zY3NzIiwicGFnZXMvX3RpbWVsaW5lLnNjc3MiLCJwYWdlcy9fY29udGFjdC5zY3NzIiwicGFnZXMvX3ByZXNzLnNjc3MiLCJwYWdlcy9fNDA0LnNjc3MiLCJwYWdlcy9fbWFub3MtYmxhbmNhcy5zY3NzIiwidGVtcGxhdGUvX3ZpZXdlci5zY3NzIiwidGVtcGxhdGUvX3BvbGEuc2NzcyIsInRlbXBsYXRlL19jb3Zlci5zY3NzIiwidGVtcGxhdGUvX2NoZXNzYm9hcmQuc2NzcyIsInRlbXBsYXRlL190ZXh0c2hlZXQuc2NzcyIsInRlbXBsYXRlL19zZWFyY2guc2NzcyIsInRlbXBsYXRlL192aWRlby12aWV3ZXIuc2NzcyIsIi4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvc2xpY2stY2Fyb3VzZWwvc2xpY2svc2xpY2suc2NzcyIsInZlbmRvci9fc2xpY2suc2NzcyJdLCJuYW1lcyI6W10sImZpbGUiOiJtYWluLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIi8qISBub3JtYWxpemUuY3NzIHYzLjAuMyB8IE1JVCBMaWNlbnNlIHwgZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3MgKi9cblxuQGltcG9ydCAnYmFzZS9odG1sJztcbkBpbXBvcnQgJ2Jhc2UvYm9keSc7XG5cblxuLyogSFRNTDUgZGlzcGxheSBkZWZpbml0aW9uc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuQGltcG9ydCAnaHRtbDUvYmxvY2tzJztcbkBpbXBvcnQgJ2h0bWw1L2lubGluZS1ibG9ja3MnO1xuQGltcG9ydCAnaHRtbDUvYXVkaW8nO1xuQGltcG9ydCAnaHRtbDUvaGlkZGVuJztcblxuXG4vKiBMaW5rc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuQGltcG9ydCAnbGlua3MvZml4LWJhY2tncm91bmQnO1xuQGltcG9ydCAnbGlua3MvZml4LW91dGxpbmUnO1xuXG5cbi8qIFRleHQtbGV2ZWwgc2VtYW50aWNzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG5AaW1wb3J0ICd0ZXh0LWxldmVsL2FiYnInO1xuQGltcG9ydCAndGV4dC1sZXZlbC9maXgtYm9sZGVyJztcbkBpbXBvcnQgJ3RleHQtbGV2ZWwvZGZuJztcbkBpbXBvcnQgJ3RleHQtbGV2ZWwvaGVhZGluZ3MnO1xuQGltcG9ydCAndGV4dC1sZXZlbC9tYXJrJztcbkBpbXBvcnQgJ3RleHQtbGV2ZWwvc21hbGwnO1xuQGltcG9ydCAndGV4dC1sZXZlbC9zdWItYW5kLXN1cCc7XG5cblxuLyogRW1iZWRkZWQgY29udGVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuQGltcG9ydCAnZW1iZWQvaW1nJztcbkBpbXBvcnQgJ2VtYmVkL3N2Zyc7XG5cblxuLyogR3JvdXBpbmcgY29udGVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuQGltcG9ydCAnZ3JvdXBpbmcvZmlndXJlJztcbkBpbXBvcnQgJ2dyb3VwaW5nL2hyJztcbkBpbXBvcnQgJ2dyb3VwaW5nL3ByZSc7XG5AaW1wb3J0ICdncm91cGluZy9maXgtbW9ub3NwYWNlJztcblxuXG4vKiBGb3Jtc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBLbm93biBsaW1pdGF0aW9uOiBieSBkZWZhdWx0LCBDaHJvbWUgYW5kIFNhZmFyaSBvbiBPUyBYIGFsbG93IHZlcnkgbGltaXRlZFxuICogc3R5bGluZyBvZiBgc2VsZWN0YCwgdW5sZXNzIGEgYGJvcmRlcmAgcHJvcGVydHkgaXMgc2V0LlxuICovXG5cbkBpbXBvcnQgJ2Zvcm1zL2ZpeC1mb250JztcbkBpbXBvcnQgJ2Zvcm1zL2ZpeC1vdmVyZmxvdyc7XG5AaW1wb3J0ICdmb3Jtcy9maXgtdGV4dC10cmFuc2Zvcm0nO1xuQGltcG9ydCAnZm9ybXMvYnV0dG9ucyc7XG5AaW1wb3J0ICdmb3Jtcy9kaXNhYmxlZCc7XG5AaW1wb3J0ICdmb3Jtcy9maXgtZm9jdXMtaW5uZXInO1xuQGltcG9ydCAnZm9ybXMvZml4LWxpbmUtaGVpZ2h0JztcbkBpbXBvcnQgJ2Zvcm1zL2NoZWNrYm94LWFuZC1yYWRpbyc7XG5AaW1wb3J0ICdmb3Jtcy9udW1iZXInO1xuQGltcG9ydCAnZm9ybXMvc2VhcmNoJztcbkBpbXBvcnQgJ2Zvcm1zL2ZpZWxkc2V0JztcbkBpbXBvcnQgJ2Zvcm1zL2xlZ2VuZCc7XG5AaW1wb3J0ICdmb3Jtcy90ZXh0YXJlYSc7XG5AaW1wb3J0ICdmb3Jtcy9vcHRncm91cCc7XG5cblxuLyogVGFibGVzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG5AaW1wb3J0ICd0YWJsZXMvZml4LWNlbGwtc3BhY2luZyc7XG4iLCIvKipcbiAqIDEuIFNldCBkZWZhdWx0IGZvbnQgZmFtaWx5IHRvIHNhbnMtc2VyaWYuXG4gKiAyLiBQcmV2ZW50IGlPUyBhbmQgSUUgdGV4dCBzaXplIGFkanVzdCBhZnRlciBkZXZpY2Ugb3JpZW50YXRpb24gY2hhbmdlLFxuICogICAgd2l0aG91dCBkaXNhYmxpbmcgdXNlciB6b29tLlxuICovXG5cbmh0bWwge1xuICBmb250LWZhbWlseTogc2Fucy1zZXJpZjsgLyogMSAqL1xuICAtbXMtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLyogMiAqL1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8qIDIgKi9cbn1cbiIsIlxuQGltcG9ydCB1cmwoaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3M/ZmFtaWx5PVBsYXlmYWlyK0Rpc3BsYXk6NDAwLDcwMCk7XG4vL0BpbXBvcnQgdXJsKGh0dHBzOi8vbWF4Y2RuLmJvb3RzdHJhcGNkbi5jb20vZm9udC1hd2Vzb21lLzQuNS4wL2Nzcy9mb250LWF3ZXNvbWUubWluLmNzcyk7XG5cbkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAnSWNvTW9vbic7XG4gICAgc3JjOiB1cmwoI3skZm9udHMtcGF0aH1JY29Nb29uL0ljb01vb24uZW90P3lmcTA0aCk7XG4gICAgc3JjOiB1cmwoI3skZm9udHMtcGF0aH1JY29Nb29uL0ljb01vb24uZW90P3lmcTA0aCNpZWZpeCkgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLFxuICAgICAgICAgdXJsKCN7JGZvbnRzLXBhdGh9SWNvTW9vbi9JY29Nb29uLnR0Zj95ZnEwNGgpIGZvcm1hdCgndHJ1ZXR5cGUnKSxcbiAgICAgICAgIHVybCgjeyRmb250cy1wYXRofUljb01vb24vSWNvTW9vbi53b2ZmP3lmcTA0aCkgZm9ybWF0KCd3b2ZmJyksXG4gICAgICAgICB1cmwoI3skZm9udHMtcGF0aH1JY29Nb29uL0ljb01vb24uc3ZnP3lmcTA0aCNpY29tb29uKSBmb3JtYXQoJ3N2ZycpO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG5AZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogJ0JyYW5kb25Hcm90ZXNxdWUnO1xuICAgIHNyYzogdXJsKCN7JGZvbnRzLXBhdGh9QnJhbmRvbkdyb3Rlc3F1ZS9CcmFuZG9uR3JvdGVzcXVlLVJlZ3VsYXIuZW90PyNpZWZpeCkgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLCAgXG4gICAgICAgdXJsKCN7JGZvbnRzLXBhdGh9QnJhbmRvbkdyb3Rlc3F1ZS9CcmFuZG9uR3JvdGVzcXVlLVJlZ3VsYXIub3RmKSBmb3JtYXQoJ290ZicpLCBcbiAgICAgICB1cmwoI3skZm9udHMtcGF0aH1CcmFuZG9uR3JvdGVzcXVlL0JyYW5kb25Hcm90ZXNxdWUtUmVndWxhci53b2ZmKSBmb3JtYXQoJ3dvZmYnKSxcbiAgICAgICB1cmwoI3skZm9udHMtcGF0aH1CcmFuZG9uR3JvdGVzcXVlL0JyYW5kb25Hcm90ZXNxdWUtUmVndWxhci50dGYpIGZvcm1hdCgndHJ1ZXR5cGUnKSwgXG4gICAgICAgdXJsKCN7JGZvbnRzLXBhdGh9QnJhbmRvbkdyb3Rlc3F1ZS9CcmFuZG9uR3JvdGVzcXVlLVJlZ3VsYXIuc3ZnI0JyYW5kb25Hcm90ZXNxdWUtUmVndWxhcikgZm9ybWF0KCdzdmcnKTtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6ICdCcmFuZG9uR3JvdGVzcXVlJztcbiAgICBzcmM6IHVybCgjeyRmb250cy1wYXRofUJyYW5kb25Hcm90ZXNxdWUvQnJhbmRvbkdyb3Rlc3F1ZS1NZWRpdW0uZW90PyNpZWZpeCkgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLCAgXG4gICAgICAgdXJsKCN7JGZvbnRzLXBhdGh9QnJhbmRvbkdyb3Rlc3F1ZS9CcmFuZG9uR3JvdGVzcXVlLU1lZGl1bS5vdGYpIGZvcm1hdCgnb3RmJyksIFxuICAgICAgIHVybCgjeyRmb250cy1wYXRofUJyYW5kb25Hcm90ZXNxdWUvQnJhbmRvbkdyb3Rlc3F1ZS1NZWRpdW0ud29mZikgZm9ybWF0KCd3b2ZmJyksIFxuICAgICAgIHVybCgjeyRmb250cy1wYXRofUJyYW5kb25Hcm90ZXNxdWUvQnJhbmRvbkdyb3Rlc3F1ZS1NZWRpdW0udHRmKSBmb3JtYXQoJ3RydWV0eXBlJyksIFxuICAgICAgIHVybCgjeyRmb250cy1wYXRofUJyYW5kb25Hcm90ZXNxdWUvQnJhbmRvbkdyb3Rlc3F1ZS1NZWRpdW0uc3ZnI0JyYW5kb25Hcm90ZXNxdWUtTWVkaXVtKSBmb3JtYXQoJ3N2ZycpO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG5AZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogJ0JyYW5kb25Hcm90ZXNxdWUnO1xuICAgIHNyYzogdXJsKCN7JGZvbnRzLXBhdGh9QnJhbmRvbkdyb3Rlc3F1ZS9CcmFuZG9uR3JvdGVzcXVlLUJvbGQuZW90PyNpZWZpeCkgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLCAgXG4gICAgICAgdXJsKCN7JGZvbnRzLXBhdGh9QnJhbmRvbkdyb3Rlc3F1ZS9CcmFuZG9uR3JvdGVzcXVlLUJvbGQub3RmKSBmb3JtYXQoJ290ZicpLFxuICAgICAgIHVybCgjeyRmb250cy1wYXRofUJyYW5kb25Hcm90ZXNxdWUvQnJhbmRvbkdyb3Rlc3F1ZS1Cb2xkLndvZmYpIGZvcm1hdCgnd29mZicpLCBcbiAgICAgICB1cmwoI3skZm9udHMtcGF0aH1CcmFuZG9uR3JvdGVzcXVlL0JyYW5kb25Hcm90ZXNxdWUtQm9sZC50dGYpIGZvcm1hdCgndHJ1ZXR5cGUnKSwgXG4gICAgICAgdXJsKCN7JGZvbnRzLXBhdGh9QnJhbmRvbkdyb3Rlc3F1ZS9CcmFuZG9uR3JvdGVzcXVlLUJvbGQuc3ZnI0JyYW5kb25Hcm90ZXNxdWUtQm9sZCkgZm9ybWF0KCdzdmcnKTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuLy8gZm9udCBzdGFja3NcbiRkZWZhdWx0LWZvbnQtc3RhY2s6ICRoZWx2ZXRpY2E7XG4kYnJhbmRvbmdyb3Rlc3F1ZTogJ0JyYW5kb25Hcm90ZXNxdWUnLCAkaGVsdmV0aWNhO1xuJHBsYXlmYWlyZGlzcGxheTogJ1BsYXlmYWlyIERpc3BsYXknLCBzZXJpZjtcbi8vJGljb24tZm9udDogJ0ZvbnRBd2Vzb21lJztcbiRpY29uLWZvbnQ6ICdJY29Nb29uJztcbiIsIi8qKlxuICogUmVtb3ZlIGRlZmF1bHQgbWFyZ2luLlxuICovXG5cbmJvZHkge1xuICBtYXJnaW46IDA7XG59XG4iLCIvKipcbiAqIENvcnJlY3QgYGJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGZvciBhbnkgSFRNTDUgZWxlbWVudCBpbiBJRSA4LzkuXG4gKiBDb3JyZWN0IGBibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBmb3IgYGRldGFpbHNgIG9yIGBzdW1tYXJ5YCBpbiBJRSAxMC8xMVxuICogYW5kIEZpcmVmb3guXG4gKiBDb3JyZWN0IGBibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBmb3IgYG1haW5gIGluIElFIDExLlxuICovXG5cbmFydGljbGUsXG5hc2lkZSxcbmRldGFpbHMsXG5maWdjYXB0aW9uLFxuZmlndXJlLFxuZm9vdGVyLFxuaGVhZGVyLFxuaGdyb3VwLFxubWFpbixcbm1lbnUsXG5uYXYsXG5zZWN0aW9uLFxuc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuIiwiLyoqXG4gKiAxLiBDb3JyZWN0IGBpbmxpbmUtYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgaW4gSUUgOC85LlxuICogMi4gTm9ybWFsaXplIHZlcnRpY2FsIGFsaWdubWVudCBvZiBgcHJvZ3Jlc3NgIGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuICovXG5cbmF1ZGlvLFxuY2FudmFzLFxucHJvZ3Jlc3MsXG52aWRlbyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jazsgLyogMSAqL1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IC8qIDIgKi9cbn1cbiIsIi8qXG4gKiBQcmV2ZW50IG1vZGVybiBicm93c2VycyBmcm9tIGRpc3BsYXlpbmcgYGF1ZGlvYCB3aXRob3V0IGNvbnRyb2xzLlxuICogUmVtb3ZlIGV4Y2VzcyBoZWlnaHQgaW4gaU9TIDUgZGV2aWNlcy5cbiAqL1xuXG5hdWRpbzpub3QoW2NvbnRyb2xzXSkge1xuICBkaXNwbGF5OiBub25lO1xuICBoZWlnaHQ6IDA7XG59XG4iLCIvKlxuICogQWRkcmVzcyBgW2hpZGRlbl1gIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gSUUgOC85LzEwLlxuICogSGlkZSB0aGUgYHRlbXBsYXRlYCBlbGVtZW50IGluIElFIDgvOS8xMC8xMSwgU2FmYXJpLCBhbmQgRmlyZWZveCA8IDIyLlxuICovXG5cbltoaWRkZW5dLFxudGVtcGxhdGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuIiwiLyoqXG4gKiBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBjb2xvciBmcm9tIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cbiAqL1xuXG5hIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4iLCIvKipcbiAqIEltcHJvdmUgcmVhZGFiaWxpdHkgb2YgZm9jdXNlZCBlbGVtZW50cyB3aGVuIHRoZXkgYXJlIGFsc28gaW4gYW5cbiAqIGFjdGl2ZS9ob3ZlciBzdGF0ZS5cbiAqL1xuXG5hOmFjdGl2ZSxcbmE6aG92ZXIge1xuICBvdXRsaW5lOiAwO1xufVxuIiwiLyoqXG4gKiBBZGRyZXNzIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gSUUgOC85LzEwLzExLCBTYWZhcmksIGFuZCBDaHJvbWUuXG4gKi9cblxuYWJiclt0aXRsZV0ge1xuICBib3JkZXItYm90dG9tOiAxcHggZG90dGVkO1xufVxuIiwiLyoqXG4gKiBBZGRyZXNzIHN0eWxlIHNldCB0byBgYm9sZGVyYCBpbiBGaXJlZm94IDQrLCBTYWZhcmksIGFuZCBDaHJvbWUuXG4gKi9cblxuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuIiwiLyoqXG4gKiBBZGRyZXNzIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gU2FmYXJpIGFuZCBDaHJvbWUuXG4gKi9cblxuZGZuIHtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuIiwiLyoqXG4gKiBBZGRyZXNzIHZhcmlhYmxlIGBoMWAgZm9udC1zaXplIGFuZCBtYXJnaW4gd2l0aGluIGBzZWN0aW9uYCBhbmQgYGFydGljbGVgXG4gKiBjb250ZXh0cyBpbiBGaXJlZm94IDQrLCBTYWZhcmksIGFuZCBDaHJvbWUuXG4gKi9cblxuaDEge1xuICBmb250LXNpemU6IDJlbTtcbiAgbWFyZ2luOiAwLjY3ZW0gMDtcbn1cbiIsIi8qKlxuICogQWRkcmVzcyBzdHlsaW5nIG5vdCBwcmVzZW50IGluIElFIDgvOS5cbiAqL1xuXG5tYXJrIHtcbiAgYmFja2dyb3VuZDogI2ZmMDtcbiAgY29sb3I6ICMwMDA7XG59XG4iLCIvKipcbiAqIEFkZHJlc3MgaW5jb25zaXN0ZW50IGFuZCB2YXJpYWJsZSBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbnNtYWxsIHtcbiAgZm9udC1zaXplOiA4MCU7XG59XG4iLCIvKipcbiAqIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGFmZmVjdGluZyBgbGluZS1oZWlnaHRgIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5zdWIsXG5zdXAge1xuICBmb250LXNpemU6IDc1JTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5zdXAge1xuICB0b3A6IC0wLjVlbTtcbn1cblxuc3ViIHtcbiAgYm90dG9tOiAtMC4yNWVtO1xufVxuIiwiLyoqXG4gKiBSZW1vdmUgYm9yZGVyIHdoZW4gaW5zaWRlIGBhYCBlbGVtZW50IGluIElFIDgvOS8xMC5cbiAqL1xuXG5pbWcge1xuICBib3JkZXI6IDA7XG59XG4iLCIvKipcbiAqIENvcnJlY3Qgb3ZlcmZsb3cgbm90IGhpZGRlbiBpbiBJRSA4LzkvMTAvMTEuXG4gKi9cblxuc3ZnOm5vdCg6cm9vdCkge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuIiwiLyoqXG4gKiBBZGRyZXNzIG1hcmdpbiBub3QgcHJlc2VudCBpbiBJRSA4LzkgYW5kIFNhZmFyaS5cbiAqL1xuXG5maWd1cmUge1xuICBtYXJnaW46IDFlbSA0MHB4O1xufVxuIiwiLyoqXG4gKiBBZGRyZXNzIGRpZmZlcmVuY2VzIGJldHdlZW4gRmlyZWZveCBhbmQgb3RoZXIgYnJvd3NlcnMuXG4gKi9cblxuaHIge1xuICAtbW96LWJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgaGVpZ2h0OiAwO1xufVxuIiwiLyoqXG4gKiBDb250YWluIG92ZXJmbG93IGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5wcmUge1xuICBvdmVyZmxvdzogYXV0bztcbn1cbiIsIi8qKlxuICogQWRkcmVzcyBvZGQgYGVtYC11bml0IGZvbnQgc2l6ZSByZW5kZXJpbmcgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbmNvZGUsXG5rYmQsXG5wcmUsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlO1xuICBmb250LXNpemU6IDFlbTtcbn1cbiIsIi8qKlxuICogMS4gQ29ycmVjdCBjb2xvciBub3QgYmVpbmcgaW5oZXJpdGVkLlxuICogICAgS25vd24gaXNzdWU6IGFmZmVjdHMgY29sb3Igb2YgZGlzYWJsZWQgZWxlbWVudHMuXG4gKiAyLiBDb3JyZWN0IGZvbnQgcHJvcGVydGllcyBub3QgYmVpbmcgaW5oZXJpdGVkLlxuICogMy4gQWRkcmVzcyBtYXJnaW5zIHNldCBkaWZmZXJlbnRseSBpbiBGaXJlZm94IDQrLCBTYWZhcmksIGFuZCBDaHJvbWUuXG4gKi9cblxuYnV0dG9uLFxuaW5wdXQsXG5vcHRncm91cCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgY29sb3I6IGluaGVyaXQ7IC8qIDEgKi9cbiAgZm9udDogaW5oZXJpdDsgLyogMiAqL1xuICBtYXJnaW46IDA7IC8qIDMgKi9cbn1cbiIsIi8qKlxuICogQWRkcmVzcyBgb3ZlcmZsb3dgIHNldCB0byBgaGlkZGVuYCBpbiBJRSA4LzkvMTAvMTEuXG4gKi9cblxuYnV0dG9uIHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG4iLCIvKipcbiAqIEFkZHJlc3MgaW5jb25zaXN0ZW50IGB0ZXh0LXRyYW5zZm9ybWAgaW5oZXJpdGFuY2UgZm9yIGBidXR0b25gIGFuZCBgc2VsZWN0YC5cbiAqIEFsbCBvdGhlciBmb3JtIGNvbnRyb2wgZWxlbWVudHMgZG8gbm90IGluaGVyaXQgYHRleHQtdHJhbnNmb3JtYCB2YWx1ZXMuXG4gKiBDb3JyZWN0IGBidXR0b25gIHN0eWxlIGluaGVyaXRhbmNlIGluIEZpcmVmb3gsIElFIDgvOS8xMC8xMSwgYW5kIE9wZXJhLlxuICogQ29ycmVjdCBgc2VsZWN0YCBzdHlsZSBpbmhlcml0YW5jZSBpbiBGaXJlZm94LlxuICovXG5cbmJ1dHRvbixcbnNlbGVjdCB7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuIiwiLyoqXG4gKiAxLiBBdm9pZCB0aGUgV2ViS2l0IGJ1ZyBpbiBBbmRyb2lkIDQuMC4qIHdoZXJlICgyKSBkZXN0cm95cyBuYXRpdmUgYGF1ZGlvYFxuICogICAgYW5kIGB2aWRlb2AgY29udHJvbHMuXG4gKiAyLiBDb3JyZWN0IGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgYGlucHV0YCB0eXBlcyBpbiBpT1MuXG4gKiAzLiBJbXByb3ZlIHVzYWJpbGl0eSBhbmQgY29uc2lzdGVuY3kgb2YgY3Vyc29yIHN0eWxlIGJldHdlZW4gaW1hZ2UtdHlwZVxuICogICAgYGlucHV0YCBhbmQgb3RoZXJzLlxuICovXG5cbmJ1dHRvbixcbmh0bWwgaW5wdXRbdHlwZT1cImJ1dHRvblwiXSwgLyogMSAqL1xuaW5wdXRbdHlwZT1cInJlc2V0XCJdLFxuaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvKiAyICovXG4gIGN1cnNvcjogcG9pbnRlcjsgLyogMyAqL1xufVxuIiwiLyoqXG4gKiBSZS1zZXQgZGVmYXVsdCBjdXJzb3IgZm9yIGRpc2FibGVkIGVsZW1lbnRzLlxuICovXG5cbmJ1dHRvbltkaXNhYmxlZF0sXG5odG1sIGlucHV0W2Rpc2FibGVkXSB7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cbiIsIi8qKlxuICogUmVtb3ZlIGlubmVyIHBhZGRpbmcgYW5kIGJvcmRlciBpbiBGaXJlZm94IDQrLlxuICovXG5cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcbmlucHV0OjotbW96LWZvY3VzLWlubmVyIHtcbiAgYm9yZGVyOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuIiwiLyoqXG4gKiBBZGRyZXNzIEZpcmVmb3ggNCsgc2V0dGluZyBgbGluZS1oZWlnaHRgIG9uIGBpbnB1dGAgdXNpbmcgYCFpbXBvcnRhbnRgIGluXG4gKiB0aGUgVUEgc3R5bGVzaGVldC5cbiAqL1xuXG5pbnB1dCB7XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG59XG4iLCIvKipcbiAqIEl0J3MgcmVjb21tZW5kZWQgdGhhdCB5b3UgZG9uJ3QgYXR0ZW1wdCB0byBzdHlsZSB0aGVzZSBlbGVtZW50cy5cbiAqIEZpcmVmb3gncyBpbXBsZW1lbnRhdGlvbiBkb2Vzbid0IHJlc3BlY3QgYm94LXNpemluZywgcGFkZGluZywgb3Igd2lkdGguXG4gKlxuICogMS4gQWRkcmVzcyBib3ggc2l6aW5nIHNldCB0byBgY29udGVudC1ib3hgIGluIElFIDgvOS8xMC5cbiAqIDIuIFJlbW92ZSBleGNlc3MgcGFkZGluZyBpbiBJRSA4LzkvMTAuXG4gKi9cblxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLFxuaW5wdXRbdHlwZT1cInJhZGlvXCJdIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLyogMSAqL1xuICBwYWRkaW5nOiAwOyAvKiAyICovXG59XG4iLCIvKipcbiAqIEZpeCB0aGUgY3Vyc29yIHN0eWxlIGZvciBDaHJvbWUncyBpbmNyZW1lbnQvZGVjcmVtZW50IGJ1dHRvbnMuIEZvciBjZXJ0YWluXG4gKiBgZm9udC1zaXplYCB2YWx1ZXMgb2YgdGhlIGBpbnB1dGAsIGl0IGNhdXNlcyB0aGUgY3Vyc29yIHN0eWxlIG9mIHRoZVxuICogZGVjcmVtZW50IGJ1dHRvbiB0byBjaGFuZ2UgZnJvbSBgZGVmYXVsdGAgdG8gYHRleHRgLlxuICovXG5cbmlucHV0W3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG5pbnB1dFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuIiwiLyoqXG4gKiAxLiBBZGRyZXNzIGBhcHBlYXJhbmNlYCBzZXQgdG8gYHNlYXJjaGZpZWxkYCBpbiBTYWZhcmkgYW5kIENocm9tZS5cbiAqIDIuIEFkZHJlc3MgYGJveC1zaXppbmdgIHNldCB0byBgYm9yZGVyLWJveGAgaW4gU2FmYXJpIGFuZCBDaHJvbWUuXG4gKi9cblxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkOyAvKiAxICovXG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94OyAvKiAyICovXG59XG5cbi8qKlxuICogUmVtb3ZlIGlubmVyIHBhZGRpbmcgYW5kIHNlYXJjaCBjYW5jZWwgYnV0dG9uIGluIFNhZmFyaSBhbmQgQ2hyb21lIG9uIE9TIFguXG4gKiBTYWZhcmkgKGJ1dCBub3QgQ2hyb21lKSBjbGlwcyB0aGUgY2FuY2VsIGJ1dHRvbiB3aGVuIHRoZSBzZWFyY2ggaW5wdXQgaGFzXG4gKiBwYWRkaW5nIChhbmQgYHRleHRmaWVsZGAgYXBwZWFyYW5jZSkuXG4gKi9cblxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbixcbmlucHV0W3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG4iLCIvKipcbiAqIERlZmluZSBjb25zaXN0ZW50IGJvcmRlciwgbWFyZ2luLCBhbmQgcGFkZGluZy5cbiAqL1xuXG5maWVsZHNldCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjMGMwYzA7XG4gIG1hcmdpbjogMCAycHg7XG4gIHBhZGRpbmc6IDAuMzVlbSAwLjYyNWVtIDAuNzVlbTtcbn1cbiIsIi8qKlxuICogMS4gQ29ycmVjdCBgY29sb3JgIG5vdCBiZWluZyBpbmhlcml0ZWQgaW4gSUUgOC85LzEwLzExLlxuICogMi4gUmVtb3ZlIHBhZGRpbmcgc28gcGVvcGxlIGFyZW4ndCBjYXVnaHQgb3V0IGlmIHRoZXkgemVybyBvdXQgZmllbGRzZXRzLlxuICovXG5cbmxlZ2VuZCB7XG4gIGJvcmRlcjogMDsgLyogMSAqL1xuICBwYWRkaW5nOiAwOyAvKiAyICovXG59XG4iLCIvKipcbiAqIFJlbW92ZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRSA4LzkvMTAvMTEuXG4gKi9cblxudGV4dGFyZWEge1xuICBvdmVyZmxvdzogYXV0bztcbn1cbiIsIi8qKlxuICogRG9uJ3QgaW5oZXJpdCB0aGUgYGZvbnQtd2VpZ2h0YCAoYXBwbGllZCBieSBhIHJ1bGUgYWJvdmUpLlxuICogTk9URTogdGhlIGRlZmF1bHQgY2Fubm90IHNhZmVseSBiZSBjaGFuZ2VkIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIE9TIFguXG4gKi9cblxub3B0Z3JvdXAge1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cbiIsIi8qKlxuICogUmVtb3ZlIG1vc3Qgc3BhY2luZyBiZXR3ZWVuIHRhYmxlIGNlbGxzLlxuICovXG5cbnRhYmxlIHtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgYm9yZGVyLXNwYWNpbmc6IDA7XG59XG5cbnRoLFxudGQge1xuICBwYWRkaW5nOiAwO1xufVxuIiwiXG4ldmlzdWFsbHloaWRkZW4ge1xuICAgIGJvcmRlcjogMDtcbiAgICBjbGlwOiByZWN0KDAgMCAwIDApO1xuICAgIGhlaWdodDogMXB4O1xuICAgIG1hcmdpbjogLTFweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxcHg7XG59XG5cbkBtaXhpbiB2ZXJ0aWNhbC1hbGlnbigkcmVzZXQ6ZmFsc2UpIHtcblxuXHRAaWYgJHJlc2V0ID09IGZhbHNlIHtcblxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRvcDogNTAlO1xuXHQgIFxuICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0odHJhbnNsYXRlWSgtNTAlKSk7XG5cbiAgICB9IEBlbHNlIHtcblxuICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgICAgICB0b3A6IGF1dG87XG5cdCAgXG4gICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybSh0cmFuc2xhdGVZKDApKTtcblxuICAgIH1cblxufVxuXG5AbWl4aW4gcmVtKCRwcm9wZXJ0eSwgJHB4LXZhbHVlcykge1xuXG4gICAgJGJhc2VsaW5lLXJlbTogMTZweCAvIDFyZW0gKiAxOyAgXG4gICAgI3skcHJvcGVydHl9OiAkcHgtdmFsdWVzO1xuICBcbiAgICBAaWYgdHlwZS1vZigkcHgtdmFsdWVzKSA9PSBcIm51bWJlclwiIHtcblxuICAgICAgICAjeyRwcm9wZXJ0eX06ICRweC12YWx1ZXMgLyAkYmFzZWxpbmUtcmVtO1xuXG4gICAgfSBAZWxzZSB7XG5cbiAgICAgICAgJHJlbS12YWx1ZXM6ICgpO1xuXG4gICAgICAgIEBlYWNoICR2YWx1ZSBpbiAkcHgtdmFsdWVzIHtcblxuICAgICAgICAgICAgQGlmICR2YWx1ZSA9PSAwIG9yIHR5cGUtb2YoICR2YWx1ZSApICE9IFwibnVtYmVyXCIge1xuXG4gICAgICAgICAgICAgICAgJHJlbS12YWx1ZXM6IGFwcGVuZCgkcmVtLXZhbHVlcywgJHZhbHVlKTtcblxuICAgICAgICAgICAgfSBAZWxzZSB7XG5cbiAgICAgICAgICAgICAgICAkcmVtLXZhbHVlczogYXBwZW5kKCRyZW0tdmFsdWVzLCAkdmFsdWUgLyAkYmFzZWxpbmUtcmVtKTtcblxuICAgICAgICAgICAgfSBcblxuICAgICAgICB9XG5cbiAgICAgICAgI3skcHJvcGVydHl9OiAkcmVtLXZhbHVlcztcblxuICAgIH1cblxufVxuXG5AbWl4aW4gYmFzZS1saXN0IHtcblxuXHRtYXJnaW4tdG9wOiAwO1xuXHRtYXJnaW4tYm90dG9tOiAwO1xuXHRwYWRkaW5nLWxlZnQ6IDA7XG5cblx0bGlzdC1zdHlsZTogbm9uZTtcblxufVxuXG5AbWl4aW4gaW5saW5lLWRsIHtcblxuXHRtYXJnaW46IDA7XG5cblx0ZHQsIGRkIHtcblxuXHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRmbG9hdDogbGVmdDtcblx0XHRtYXJnaW46IDA7XG5cblx0fVxuXG5cdGR0IHtcblxuXHRcdGNsZWFyOiBib3RoO1xuXG5cdH1cblxufVxuXG5AbWl4aW4gYmFzZS1saW5rKCRsaW5rLWNvbG9yLCAkbGluay1jb2xvci1ob3Zlcikge1xuXG5cdGNvbG9yOiAkbGluay1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uIChjb2xvciAwLjI1cyBsaW5lYXIpO1xuXG4gICAgJjpob3ZlciwgJjphY3RpdmUge1xuXG4gICAgICAgIGNvbG9yOiAkbGluay1jb2xvci1ob3ZlcjtcblxuICAgIH1cblxufVxuXG5AbWl4aW4gYXNwZWN0LXJhdGlvKCR3aWR0aDpmYWxzZSwgJGhlaWdodDpmYWxzZSkge1xuXG5cdC8qXG5cdCAgIDEsMSAgcGVyIGFzcGVjdCByYXRpbyAxOjFcblx0ICAgMTYsOSBwZXIgYXNwZWN0IHJhdGlvIDE2OjkgXG5cdCAgIDQsMyAgcGVyIGFzcGVjdCByYXRpbyA0OjMgZXRjXG4gICAgKi9cblxuICAgIEBpZiAkd2lkdGggPT0gZmFsc2UgYW5kICRoZWlnaHQgPT0gZmFsc2Uge1xuXG4gICAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XG5cbiAgICAgICAgJjpiZWZvcmUge1xuXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMDtcblxuICAgICAgICB9XG5cbiAgICAgICAgPiAqOmZpcnN0LWNoaWxkIHtcblxuICAgICAgICAgICAgQGluY2x1ZGUgcG9zaXRpb24oc3RhdGljLCBudWxsIG51bGwgbnVsbCBudWxsKTtcblxuICAgICAgICB9XG5cbiAgICB9IEBlbHNlIHtcblxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgJjpiZWZvcmUge1xuXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgcGFkZGluZy10b3A6ICgkaGVpZ2h0IC8gJHdpZHRoKSAqIDEwMCU7XG5cbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG5cbiAgICAgICAgfVxuXG4gICAgICAgID4gKjpmaXJzdC1jaGlsZCB7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIHBvc2l0aW9uKGFic29sdXRlLCAwIDAgMCAwKTtcblxuICAgICAgICB9XHRcdFxuXG4gICAgfVxuXG59XG5cbkBtaXhpbiBjZW50ZXItaW1hZ2UoJHJlc2V0OmZhbHNlKSB7XG5cblx0QGlmICRyZXNldCA9PSBmYWxzZSB7XG5cblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuXHRcdCY6YmVmb3JlIHtcblxuXHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0aGVpZ2h0OiAxMDAlO1xuXG5cdFx0XHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXG5cdFx0XHRjb250ZW50OiAnJztcblxuXHRcdH1cblxuXHR9IEBlbHNlIHtcblxuXHRcdHRleHQtYWxpZ246IGxlZnQ7XG5cdFx0d2hpdGUtc3BhY2U6IG5vcm1hbDtcblxuXHRcdCY6YmVmb3JlIHtcblxuXHRcdFx0ZGlzcGxheTogbm9uZTtcblxuXHRcdH1cblxuXHR9XG5cdFxufVxuXG5cbkBtaXhpbiByYXRpbygkdywkaCkge1xuICAgIEBpZiAkdyA9PSAwICB7XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9QGVsc2Uge1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogKCRoLyR3KSoxMDAlO1xuICAgICAgICB9XG4gICAgfVxufSIsIlxuLiN7JHNpdGUtbmFtZXNwYWNlfXNob3ctb24tZGVza3RvcC1ibG9jayB7XG5cbiAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkZGVza3RvcCl7XG5cbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICB9ICAgIFxuXG59IiwiLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBEZWZhdWx0IFZhcmlhYmxlc1xuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4kQnJlYWtwb2ludC1TZXR0aW5nczogKFxuICAnZGVmYXVsdCBtZWRpYSc6IGFsbCxcbiAgJ2RlZmF1bHQgZmVhdHVyZSc6IG1pbi13aWR0aCxcbiAgJ2RlZmF1bHQgcGFpcic6IHdpZHRoLFxuXG4gICdmb3JjZSBhbGwgbWVkaWEgdHlwZSc6IGZhbHNlLFxuICAndG8gZW1zJzogZmFsc2UsXG4gICd0cmFuc2Zvcm0gcmVzb2x1dGlvbnMnOiB0cnVlLFxuXG4gICdubyBxdWVyaWVzJzogZmFsc2UsXG4gICdubyBxdWVyeSBmYWxsYmFja3MnOiBmYWxzZSxcblxuICAnYmFzZSBmb250IHNpemUnOiAxNnB4LFxuXG4gICdsZWdhY3kgc3ludGF4JzogZmFsc2Vcbik7XG5cbiRicmVha3BvaW50OiAoKSAhZGVmYXVsdDtcblxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBJbXBvcnRzXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbkBpbXBvcnQgXCJicmVha3BvaW50L3NldHRpbmdzXCI7XG5AaW1wb3J0ICdicmVha3BvaW50L2NvbnRleHQnO1xuQGltcG9ydCAnYnJlYWtwb2ludC9oZWxwZXJzJztcbkBpbXBvcnQgJ2JyZWFrcG9pbnQvcGFyc2Vycyc7XG5AaW1wb3J0ICdicmVha3BvaW50L25vLXF1ZXJ5JztcblxuQGltcG9ydCAnYnJlYWtwb2ludC9yZXNwb25kLXRvJztcblxuQGltcG9ydCBcImJyZWFrcG9pbnQvbGVnYWN5LXNldHRpbmdzXCI7XG5cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gQnJlYWtwb2ludCBNaXhpblxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5cbkBtaXhpbiBicmVha3BvaW50KCRxdWVyeSwgJG5vLXF1ZXJ5OiBmYWxzZSkge1xuICBAaW5jbHVkZSBsZWdhY3ktc2V0dGluZ3Mtd2FybmluZztcblxuICAvLyBSZXNldCBjb250ZXh0c1xuICBAaW5jbHVkZSBwcml2YXRlLWJyZWFrcG9pbnQtcmVzZXQtY29udGV4dHMoKTtcblxuICAkYnJlYWtwb2ludDogYnJlYWtwb2ludCgkcXVlcnksIGZhbHNlKTtcblxuICAkcXVlcnktc3RyaW5nOiBtYXAtZ2V0KCRicmVha3BvaW50LCAncXVlcnknKTtcbiAgJHF1ZXJ5LWZhbGxiYWNrOiBtYXAtZ2V0KCRicmVha3BvaW50LCAnZmFsbGJhY2snKTtcblxuICAkcHJpdmF0ZS1icmVha3BvaW50LWNvbnRleHQtaG9sZGVyOiBtYXAtZ2V0KCRicmVha3BvaW50LCAnY29udGV4dCBob2xkZXInKSAhZ2xvYmFsO1xuICAkcHJpdmF0ZS1icmVha3BvaW50LXF1ZXJ5LWNvdW50OiBtYXAtZ2V0KCRicmVha3BvaW50LCAncXVlcnkgY291bnQnKSAhZ2xvYmFsO1xuXG4gIC8vIEFsbG93IGZvciBhbiBhcy1uZWVkZWQgb3ZlcnJpZGUgb3IgdXNhZ2Ugb2Ygbm8gcXVlcnkgZmFsbGJhY2suXG4gIEBpZiAkbm8tcXVlcnkgIT0gZmFsc2Uge1xuICAgICRxdWVyeS1mYWxsYmFjazogJG5vLXF1ZXJ5O1xuICB9XG5cbiAgQGlmICRxdWVyeS1mYWxsYmFjayAhPSBmYWxzZSB7XG4gICAgJGNvbnRleHQtc2V0dGVyOiBwcml2YXRlLWJyZWFrcG9pbnQtc2V0LWNvbnRleHQoJ25vLXF1ZXJ5JywgJHF1ZXJ5LWZhbGxiYWNrKTtcbiAgfVxuXG4gIC8vIFByaW50IE91dCBRdWVyeSBTdHJpbmdcbiAgQGlmIG5vdCBicmVha3BvaW50LWdldCgnbm8gcXVlcmllcycpIHtcbiAgICBAbWVkaWEgI3skcXVlcnktc3RyaW5nfSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cblxuICBAaWYgYnJlYWtwb2ludC1nZXQoJ25vIHF1ZXJ5IGZhbGxiYWNrcycpICE9IGZhbHNlIG9yIGJyZWFrcG9pbnQtZ2V0KCdubyBxdWVyaWVzJykgPT0gdHJ1ZSB7XG5cbiAgICAkdHlwZTogdHlwZS1vZihicmVha3BvaW50LWdldCgnbm8gcXVlcnkgZmFsbGJhY2tzJykpO1xuICAgICRwcmludDogZmFsc2U7XG5cbiAgICBAaWYgKCR0eXBlID09ICdib29sJykge1xuICAgICAgJHByaW50OiB0cnVlO1xuICAgIH1cbiAgICBAZWxzZSBpZiAoJHR5cGUgPT0gJ3N0cmluZycpIHtcbiAgICAgIEBpZiAkcXVlcnktZmFsbGJhY2sgPT0gYnJlYWtwb2ludC1nZXQoJ25vIHF1ZXJ5IGZhbGxiYWNrcycpIHtcbiAgICAgICAgJHByaW50OiB0cnVlO1xuICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSBpZiAoJHR5cGUgPT0gJ2xpc3QnKSB7XG4gICAgICBAZWFjaCAkd3JhcHBlciBpbiBicmVha3BvaW50LWdldCgnbm8gcXVlcnkgZmFsbGJhY2tzJykge1xuICAgICAgICBAaWYgJHF1ZXJ5LWZhbGxiYWNrID09ICR3cmFwcGVyIHtcbiAgICAgICAgICAkcHJpbnQ6IHRydWU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBXcml0ZSBGYWxsYmFja1xuICAgIEBpZiAoJHF1ZXJ5LWZhbGxiYWNrICE9IGZhbHNlKSBhbmQgKCRwcmludCA9PSB0cnVlKSB7XG4gICAgICAkdHlwZS1mYWxsYmFjazogdHlwZS1vZigkcXVlcnktZmFsbGJhY2spO1xuXG4gICAgICBAaWYgKCR0eXBlLWZhbGxiYWNrICE9ICdib29sJykge1xuICAgICAgICAjeyRxdWVyeS1mYWxsYmFja30gJiB7XG4gICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgcHJpdmF0ZS1icmVha3BvaW50LXJlc2V0LWNvbnRleHRzKCk7XG59XG5cblxuQG1peGluIG1xKCRxdWVyeSwgJG5vLXF1ZXJ5OiBmYWxzZSkge1xuICBAaW5jbHVkZSBicmVha3BvaW50KCRxdWVyeSwgJG5vLXF1ZXJ5KSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cbiIsIlxuaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7XG5cblx0bWFyZ2luOiAwO1xuXHRwYWRkaW5nOiAwO1xuXG5cdGZvbnQtd2VpZ2h0OiBub3JtYWw7XG5cbn1cblxuaDEge1xuXG4gICAgJi4jeyRzaXRlLW5hbWVzcGFjZX1oZWFkaW5nLWxvZ28ge1xuXG4gICAgICAgICRoZWFkaW5nLWxvZ28td2lkdGg6IDE5NHB4O1xuICAgICAgICAkaGVhZGluZy1sb2dvLWhlaWdodDogNzNweDtcbiAgICAgICAgJGhlYWRpbmctbG9nby13aWR0aC1kZXNrdG9wOiAyOTZweDtcbiAgICAgICAgJGhlYWRpbmctbG9nby1oZWlnaHQtZGVza3RvcDogMTEycHg7XG5cbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBAaW5jbHVkZSBzaXplKCRoZWFkaW5nLWxvZ28td2lkdGggJGhlYWRpbmctbG9nby1oZWlnaHQpO1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgLy9tYXJnaW4tYm90dG9tOiBlbSgxMCk7XG5cbiAgICAgICAgYmFja2dyb3VuZDoge1xuICAgICAgICAgICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgaW1hZ2U6IHVybCgkaW1hZ2VzLXBhdGggKyAnaGVhZGluZy1sb2dvLnBuZycpO1xuICAgICAgICAgICAgcG9zaXRpb246IDUwJSA1MCU7XG4gICAgICAgICAgICByZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgICAgIHNpemU6IGNvdmVyO1xuICAgICAgICB9XG5cbiAgICAgICAgc3BhbiB7XG5cbiAgICAgICAgICAgIEBleHRlbmQgJXZpc3VhbGx5aGlkZGVuO1xuXG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRkZXNrdG9wKXtcblxuICAgICAgICAgICAgQGluY2x1ZGUgc2l6ZSgkaGVhZGluZy1sb2dvLXdpZHRoLWRlc2t0b3AgJGhlYWRpbmctbG9nby1oZWlnaHQtZGVza3RvcCk7XG5cbiAgICAgICAgfVxuXG4gICAgICAgIGh0bWwucG4xNi1sYW5nLWl0ICYge1xuXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJGltYWdlcy1wYXRoICsgJ2hlYWRpbmctbG9nby5wbmcnKTtcblxuICAgICAgICB9XG5cbiAgICAgICAgaHRtbC5wbjE2LWxhbmctZW4gJiB7XG5cbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgkaW1hZ2VzLXBhdGggKyAnaGVhZGluZy1sb2dvLWVuLnBuZycpO1xuXG4gICAgICAgIH1cblxuICAgIH1cblxuICAgICYuI3skc2l0ZS1uYW1lc3BhY2V9aGVhZGluZy1BIHtcblxuICAgICAgICBtYXJnaW4tYm90dG9tOiAxZW07XG5cbiAgICAgICAgY29sb3I6ICRncmVlbjE7XG4gICAgICAgIGZvbnQ6IHtcbiAgICAgICAgICAgIGZhbWlseTogJHBsYXlmYWlyZGlzcGxheTtcbiAgICAgICAgICAgIHdlaWdodDogbm9ybWFsO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIHJlbSgnZm9udC1zaXplJywgMzVweCk7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkZGVza3RvcCl7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIHJlbSgnZm9udC1zaXplJywgNDBweCk7XG5cbiAgICAgICAgfVxuXG4gICAgfVxuXG59XG5cbmgyIHtcblxuICAgICYuI3skc2l0ZS1uYW1lc3BhY2V9aGVhZGluZy1BIHtcblxuICAgICAgICBjb2xvcjogJGdyZWVuMTtcbiAgICAgICAgZm9udDoge1xuICAgICAgICAgICAgZmFtaWx5OiAkcGxheWZhaXJkaXNwbGF5O1xuICAgICAgICAgICAgd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgcmVtKCdmb250LXNpemUnLCAzMHB4KTtcbiAgICAgICAgXG4gICAgfVxuXG4gICAgJi4jeyRzaXRlLW5hbWVzcGFjZX1oZWFkaW5nLUIge1xuXG4gICAgICAgIGNvbG9yOiAkYnJvd247XG4gICAgICAgIGZvbnQ6IHtcbiAgICAgICAgICAgIGZhbWlseTogJHBsYXlmYWlyZGlzcGxheTtcbiAgICAgICAgICAgIHdlaWdodDogbm9ybWFsO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIHJlbSgnZm9udC1zaXplJywgMTIwcHgpO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGRlc2t0b3Ape1xuXG4gICAgICAgICAgICBAaW5jbHVkZSByZW0oJ2ZvbnQtc2l6ZScsIDE0MHB4KTtcblxuICAgICAgICB9XG4gICAgICAgIFxuICAgIH1cbiAgICBcbn1cblxuaDMge1xuXG4gICAgJi4jeyRzaXRlLW5hbWVzcGFjZX1oZWFkaW5nLUEge1xuXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDAuM2VtO1xuXG4gICAgICAgIGNvbG9yOiAkZ3JlZW4xO1xuICAgICAgICBmb250OiB7XG4gICAgICAgICAgICBmYW1pbHk6ICRwbGF5ZmFpcmRpc3BsYXk7XG4gICAgICAgICAgICB3ZWlnaHQ6IDcwMDtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSByZW0oJ2ZvbnQtc2l6ZScsIDIwcHgpO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGRlc2t0b3Ape1xuXG4gICAgICAgICAgICBAaW5jbHVkZSByZW0oJ2ZvbnQtc2l6ZScsIDIzcHgpO1xuXG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgfVxuICAgIFxufVxuXG5oNCB7XG5cbiAgICAmLiN7JHNpdGUtbmFtZXNwYWNlfWhlYWRpbmctQSB7XG5cbiAgICAgICAgY29sb3I6ICRncmVlbjE7XG4gICAgICAgIGZvbnQ6IHtcbiAgICAgICAgICAgIGZhbWlseTogJGJyYW5kb25ncm90ZXNxdWU7XG4gICAgICAgICAgICB3ZWlnaHQ6IDUwMDtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSByZW0oJ2ZvbnQtc2l6ZScsIDE4cHgpO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGRlc2t0b3Ape1xuXG4gICAgICAgICAgICBAaW5jbHVkZSByZW0oJ2ZvbnQtc2l6ZScsIDIwcHgpO1xuXG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgfVxuICAgIFxufVxuXG5oNSB7XG5cbiAgICAmLiN7JHNpdGUtbmFtZXNwYWNlfWhlYWRpbmctQSB7XG5cbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMC41ZW07XG5cbiAgICAgICAgY29sb3I6ICRicm93bjtcbiAgICAgICAgZm9udDoge1xuICAgICAgICAgICAgZmFtaWx5OiAkYnJhbmRvbmdyb3Rlc3F1ZTtcbiAgICAgICAgICAgIHdlaWdodDogNTAwO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIHJlbSgnZm9udC1zaXplJywgMTRweCk7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIFxuICAgIH1cbiAgICBcbn1cblxuJWhlYWRpbmctZnJpbGwtQSB7XG5cbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICBwYWRkaW5nLXRvcDogMTBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcblxuICAgICY6YWZ0ZXIge1xuXG4gICAgICAgIEBpbmNsdWRlIHBvc2l0aW9uKGFic29sdXRlLCBudWxsIG51bGwgMCA1MCUpO1xuXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgQGluY2x1ZGUgc2l6ZSg1MHB4IDFweCk7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtMjVweDtcblxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XG5cbiAgICAgICAgY29udGVudDogJyc7XG5cbiAgICB9XG5cbn1cblxuJXRleHQtQSB7XG5cbiAgICBjb2xvcjogJGdyZWVuMTtcbiAgICBmb250OiB7XG4gICAgICAgIGZhbWlseTogJGJyYW5kb25ncm90ZXNxdWU7XG4gICAgfVxuICAgIEBpbmNsdWRlIHJlbSgnZm9udC1zaXplJywgMjBweCk7XG5cbn1cblxuJXRleHQtZnJpbGwtQSB7XG5cbiAgICA+IHAge1xuXG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xuXG4gICAgICAgICAgICB0ZXh0LWluZGVudDogZW0oMzUpO1xuXG4gICAgICAgIH1cblxuICAgIH1cblxufVxuXG4ldGV4dC1kcm9wY2FwIHtcblxuICAgID4gcCB7XG5cbiAgICAgICAgJjpmaXJzdC1jaGlsZDpmaXJzdC1sZXR0ZXIge1xuXG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG5cbiAgICAgICAgICAgIGNvbG9yOiAkYnJvd247XG4gICAgICAgICAgICBmb250OiB7XG4gICAgICAgICAgICAgICAgZmFtaWx5OiAkcGxheWZhaXJkaXNwbGF5O1xuICAgICAgICAgICAgICAgIHdlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQGluY2x1ZGUgcmVtKCdmb250LXNpemUnLCA2MHB4KTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAwLjg1ZW07XG5cbiAgICAgICAgfVxuXG4gICAgfVxuXG59XG5cbiV0ZXh0LXdpZHRoLWxpbWl0ZXIge1xuXG4gICAgcGFkZGluZzogZW0oMTUpO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkZGVza3RvcCl7XG5cbiAgICAgICAgbWF4LXdpZHRoOiA2MCU7XG4gICAgICAgIC8vbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICB9XG5cbn1cblxuJXRleHQtcmVzZXQtY2hpbGRzIHtcblxuICAgID4gcCwgPiB1bCwgPiBvbCB7XG5cbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG5cbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG5cbiAgICAgICAgfVxuXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG5cbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAgICAgfVxuXG4gICAgfVxuXG59XG5cbiV0ZXh0LW5vcm1hbGl6ZS1saW5rcyB7XG5cbiAgICBhIHtcblxuICAgICAgICBjb2xvcjogJGJyb3duO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICAgICAgaHRtbC5uby10b3VjaCAmIHtcblxuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihjb2xvciAwLjY1cyAkZWFzZS1pbi1vdXQtcXVhZCk7XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuXG4gICAgICAgICAgICAgICAgY29sb3I6IGluaGVyaXQ7XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICB9XG5cbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8vIFNldHMgdGhlIGB3aWR0aGAgYW5kIGBoZWlnaHRgIG9mIHRoZSBlbGVtZW50LlxuLy8vXG4vLy8gQHBhcmFtIHtMaXN0fSAkc2l6ZVxuLy8vICAgQSBsaXN0IG9mIGF0IG1vc3QgMiBzaXplIHZhbHVlcy5cbi8vL1xuLy8vICAgSWYgdGhlcmUgaXMgb25seSBhIHNpbmdsZSB2YWx1ZSBpbiBgJHNpemVgIGl0IGlzIHVzZWQgZm9yIGJvdGggd2lkdGggYW5kIGhlaWdodC4gQWxsIHVuaXRzIGFyZSBzdXBwb3J0ZWQuXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gVXNhZ2Vcbi8vLyAgIC5maXJzdC1lbGVtZW50IHtcbi8vLyAgICAgQGluY2x1ZGUgc2l6ZSgyZW0pO1xuLy8vICAgfVxuLy8vXG4vLy8gICAuc2Vjb25kLWVsZW1lbnQge1xuLy8vICAgICBAaW5jbHVkZSBzaXplKGF1dG8gMTBlbSk7XG4vLy8gICB9XG4vLy9cbi8vLyBAZXhhbXBsZSBjc3MgLSBDU1MgT3V0cHV0XG4vLy8gICAuZmlyc3QtZWxlbWVudCB7XG4vLy8gICAgIHdpZHRoOiAyZW07XG4vLy8gICAgIGhlaWdodDogMmVtO1xuLy8vICAgfVxuLy8vXG4vLy8gICAuc2Vjb25kLWVsZW1lbnQge1xuLy8vICAgICB3aWR0aDogYXV0bztcbi8vLyAgICAgaGVpZ2h0OiAxMGVtO1xuLy8vICAgfVxuLy8vXG4vLy8gQHRvZG8gUmVmYWN0b3IgaW4gNS4wLjAgdG8gdXNlIGEgY29tbWEtc2VwYXJhdGVkIGFyZ3VtZW50XG5cbkBtaXhpbiBzaXplKCR2YWx1ZSkge1xuICAkd2lkdGg6IG50aCgkdmFsdWUsIDEpO1xuICAkaGVpZ2h0OiAkd2lkdGg7XG5cbiAgQGlmIGxlbmd0aCgkdmFsdWUpID4gMSB7XG4gICAgJGhlaWdodDogbnRoKCR2YWx1ZSwgMik7XG4gIH1cblxuICBAaWYgaXMtc2l6ZSgkaGVpZ2h0KSB7XG4gICAgaGVpZ2h0OiAkaGVpZ2h0O1xuICB9IEBlbHNlIHtcbiAgICBAd2FybiBcImAjeyRoZWlnaHR9YCBpcyBub3QgYSB2YWxpZCBsZW5ndGggZm9yIHRoZSBgJGhlaWdodGAgcGFyYW1ldGVyIGluIHRoZSBgc2l6ZWAgbWl4aW4uXCI7XG4gIH1cblxuICBAaWYgaXMtc2l6ZSgkd2lkdGgpIHtcbiAgICB3aWR0aDogJHdpZHRoO1xuICB9IEBlbHNlIHtcbiAgICBAd2FybiBcImAjeyR3aWR0aH1gIGlzIG5vdCBhIHZhbGlkIGxlbmd0aCBmb3IgdGhlIGAkd2lkdGhgIHBhcmFtZXRlciBpbiB0aGUgYHNpemVgIG1peGluLlwiO1xuICB9XG59XG4iLCJcbi8vIENvbG9yc1xuJGRlZmF1bHQtY29sb3I6ICMwMDAwMDA7XG4kZGVmYXVsdC1iYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuJGJsYWNrOiAjMWExNzI0O1xuJGJyb3duOiAjYTY3NTU2O1xuJGdyZWVuMTogIzBhMjQxNDtcbiRncmVlbjI6ICMxYjRmMzM7XG4kZ3JleTE6ICNlNmU3ZTg7XG4kZ3JleTI6ICNkY2RkZGU7XG4kZ3JleTM6ICNkMWQzZDQ7XG5cbi8vIFBhdGhzXG4kaW1hZ2VzLXBhdGg6IFwiLi4vaW1nL1wiO1xuJGZvbnRzLXBhdGg6IFwiLi4vZm9udC9cIjtcblxuLy8gU2l6ZXNcbiRoZWFkZXItaGVpZ2h0OiA1NXB4O1xuJGhlYWRlci1oZWlnaHQtZGVza3RvcDogNzBweDtcbiRjaGVzc2JvYXJkLXJhdGlvOiAxLjExO1xuXG4vLyBNaXNjXG4kc2l0ZS1uYW1lc3BhY2U6IFwicG4xNi1cIjtcblxuLy8gWi1pbmRleHNcbiRiYXNlLXotaW5kZXg6IDEwMDtcbiRjb29raWUtcG9saWN5LWFsZXJ0LXotaW5kZXg6ICRiYXNlLXotaW5kZXggKyA5OTtcbiRoZWFkZXItei1pbmRleDogJGJhc2Utei1pbmRleCArIDk4O1xuJGhlYWRlci1pdGVtLXotaW5kZXg6ICRiYXNlLXotaW5kZXggKyA5NztcbiRsYW5ndWFnZS1uYXYtei1pbmRleDogJGJhc2Utei1pbmRleCArIDk3O1xuJG1haW4tbmF2LXotaW5kZXg6ICRiYXNlLXotaW5kZXggKyA5NjtcbiRtYWluLW5hdi1maXgtei1pbmRleDogJGJhc2Utei1pbmRleCArIDk1O1xuJG92ZXJsYXktei1pbmRleDogJGJhc2Utei1pbmRleCArIDk1O1xuJG92ZXJsYXktd3JhcHBlci16LWluZGV4OiAkYmFzZS16LWluZGV4ICsgOTU7XG4kc3Bpbm5lci16LWluZGV4OiAkYmFzZS16LWluZGV4ICsgOTQ7XG4kY2xvZy16LWluZGV4OiAkYmFzZS16LWluZGV4ICsgOTM7XG4kc2xpY2stZG90cy16LWluZGV4OiAkYmFzZS16LWluZGV4ICsgODk7IFxuJHRpbWVsaW5lLW5hdi16LWluZGV4OiAkYmFzZS16LWluZGV4ICsgODk7XG4kdGltZWxpbmUtaXRlbS10aXRsZS16LWluZGV4OiAkYmFzZS16LWluZGV4ICsgODk7XG4kdGltZWxpbmUtaXRlbS16LWluZGV4OiAkYmFzZS16LWluZGV4ICsgODg7IFxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG4vLy8gUHJvdmlkZXMgYSBxdWljayBtZXRob2QgZm9yIHNldHRpbmcgYW4gZWxlbWVudOKAmXMgcG9zaXRpb24uIFVzZSBhIGBudWxsYCB2YWx1ZSB0byDigJxza2lw4oCdIGEgc2lkZS5cbi8vL1xuLy8vIEBwYXJhbSB7UG9zaXRpb259ICRwb3NpdGlvbiBbcmVsYXRpdmVdXG4vLy8gICBBIENTUyBwb3NpdGlvbiB2YWx1ZVxuLy8vXG4vLy8gQHBhcmFtIHtBcmdsaXN0fSAkY29vcmRpbmF0ZXMgW251bGwgbnVsbCBudWxsIG51bGxdXG4vLy8gICBMaXN0IG9mIHZhbHVlcyB0aGF0IGNvcnJlc3BvbmQgdG8gdGhlIDQtdmFsdWUgc3ludGF4IGZvciB0aGUgZWRnZXMgb2YgYSBib3hcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBVc2FnZVxuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBAaW5jbHVkZSBwb3NpdGlvbihhYnNvbHV0ZSwgMCBudWxsIG51bGwgMTBlbSk7XG4vLy8gICB9XG4vLy9cbi8vLyBAZXhhbXBsZSBjc3MgLSBDU1MgT3V0cHV0XG4vLy8gICAuZWxlbWVudCB7XG4vLy8gICAgIGxlZnQ6IDEwZW07XG4vLy8gICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbi8vLyAgICAgdG9wOiAwO1xuLy8vICAgfVxuLy8vXG4vLy8gQHJlcXVpcmUge2Z1bmN0aW9ufSBpcy1sZW5ndGhcbi8vLyBAcmVxdWlyZSB7ZnVuY3Rpb259IHVucGFja1xuXG5AbWl4aW4gcG9zaXRpb24oJHBvc2l0aW9uOiByZWxhdGl2ZSwgJGNvb3JkaW5hdGVzOiBudWxsIG51bGwgbnVsbCBudWxsKSB7XG4gIEBpZiB0eXBlLW9mKCRwb3NpdGlvbikgPT0gbGlzdCB7XG4gICAgJGNvb3JkaW5hdGVzOiAkcG9zaXRpb247XG4gICAgJHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxuXG4gICRjb29yZGluYXRlczogdW5wYWNrKCRjb29yZGluYXRlcyk7XG5cbiAgJG9mZnNldHM6IChcbiAgICB0b3A6ICAgIG50aCgkY29vcmRpbmF0ZXMsIDEpLFxuICAgIHJpZ2h0OiAgbnRoKCRjb29yZGluYXRlcywgMiksXG4gICAgYm90dG9tOiBudGgoJGNvb3JkaW5hdGVzLCAzKSxcbiAgICBsZWZ0OiAgIG50aCgkY29vcmRpbmF0ZXMsIDQpXG4gICk7XG5cbiAgcG9zaXRpb246ICRwb3NpdGlvbjtcblxuICBAZWFjaCAkb2Zmc2V0LCAkdmFsdWUgaW4gJG9mZnNldHMge1xuICAgIEBpZiBpcy1sZW5ndGgoJHZhbHVlKSB7XG4gICAgICAjeyRvZmZzZXR9OiAkdmFsdWU7XG4gICAgfVxuICB9XG59XG4iLCJAY2hhcnNldCBcIlVURi04XCI7XG5cbi8vLyBBIG1peGluIGZvciBnZW5lcmF0aW5nIHZlbmRvciBwcmVmaXhlcyBvbiBub24tc3RhbmRhcmRpemVkIHByb3BlcnRpZXMuXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJHByb3BlcnR5XG4vLy8gICBQcm9wZXJ0eSB0byBwcmVmaXhcbi8vL1xuLy8vIEBwYXJhbSB7Kn0gJHZhbHVlXG4vLy8gICBWYWx1ZSB0byB1c2Vcbi8vL1xuLy8vIEBwYXJhbSB7TGlzdH0gJHByZWZpeGVzXG4vLy8gICBQcmVmaXhlcyB0byBkZWZpbmVcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBVc2FnZVxuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBAaW5jbHVkZSBwcmVmaXhlcihib3JkZXItcmFkaXVzLCAxMHB4LCB3ZWJraXQgbXMgc3BlYyk7XG4vLy8gICB9XG4vLy9cbi8vLyBAZXhhbXBsZSBjc3MgLSBDU1MgT3V0cHV0XG4vLy8gICAuZWxlbWVudCB7XG4vLy8gICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMTBweDtcbi8vLyAgICAgLW1vei1ib3JkZXItcmFkaXVzOiAxMHB4O1xuLy8vICAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuLy8vICAgfVxuLy8vXG4vLy8gQHJlcXVpcmUge3ZhcmlhYmxlfSAkcHJlZml4LWZvci13ZWJraXRcbi8vLyBAcmVxdWlyZSB7dmFyaWFibGV9ICRwcmVmaXgtZm9yLW1vemlsbGFcbi8vLyBAcmVxdWlyZSB7dmFyaWFibGV9ICRwcmVmaXgtZm9yLW1pY3Jvc29mdFxuLy8vIEByZXF1aXJlIHt2YXJpYWJsZX0gJHByZWZpeC1mb3Itb3BlcmFcbi8vLyBAcmVxdWlyZSB7dmFyaWFibGV9ICRwcmVmaXgtZm9yLXNwZWNcblxuQG1peGluIHByZWZpeGVyKCRwcm9wZXJ0eSwgJHZhbHVlLCAkcHJlZml4ZXMpIHtcbiAgQGVhY2ggJHByZWZpeCBpbiAkcHJlZml4ZXMge1xuICAgIEBpZiAkcHJlZml4ID09IHdlYmtpdCB7XG4gICAgICBAaWYgJHByZWZpeC1mb3Itd2Via2l0IHtcbiAgICAgICAgLXdlYmtpdC0jeyRwcm9wZXJ0eX06ICR2YWx1ZTtcbiAgICAgIH1cbiAgICB9IEBlbHNlIGlmICRwcmVmaXggPT0gbW96IHtcbiAgICAgIEBpZiAkcHJlZml4LWZvci1tb3ppbGxhIHtcbiAgICAgICAgLW1vei0jeyRwcm9wZXJ0eX06ICR2YWx1ZTtcbiAgICAgIH1cbiAgICB9IEBlbHNlIGlmICRwcmVmaXggPT0gbXMge1xuICAgICAgQGlmICRwcmVmaXgtZm9yLW1pY3Jvc29mdCB7XG4gICAgICAgIC1tcy0jeyRwcm9wZXJ0eX06ICR2YWx1ZTtcbiAgICAgIH1cbiAgICB9IEBlbHNlIGlmICRwcmVmaXggPT0gbyB7XG4gICAgICBAaWYgJHByZWZpeC1mb3Itb3BlcmEge1xuICAgICAgICAtby0jeyRwcm9wZXJ0eX06ICR2YWx1ZTtcbiAgICAgIH1cbiAgICB9IEBlbHNlIGlmICRwcmVmaXggPT0gc3BlYyB7XG4gICAgICBAaWYgJHByZWZpeC1mb3Itc3BlYyB7XG4gICAgICAgICN7JHByb3BlcnR5fTogJHZhbHVlO1xuICAgICAgfVxuICAgIH0gQGVsc2UgIHtcbiAgICAgIEB3YXJuIFwiVW5yZWNvZ25pemVkIHByZWZpeDogI3skcHJlZml4fVwiO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gZGlzYWJsZS1wcmVmaXgtZm9yLWFsbCgpIHtcbiAgJHByZWZpeC1mb3Itd2Via2l0OiAgICBmYWxzZSAhZ2xvYmFsO1xuICAkcHJlZml4LWZvci1tb3ppbGxhOiAgIGZhbHNlICFnbG9iYWw7XG4gICRwcmVmaXgtZm9yLW1pY3Jvc29mdDogZmFsc2UgIWdsb2JhbDtcbiAgJHByZWZpeC1mb3Itb3BlcmE6ICAgICBmYWxzZSAhZ2xvYmFsO1xuICAkcHJlZml4LWZvci1zcGVjOiAgICAgIGZhbHNlICFnbG9iYWw7XG59XG4iLCJcbiVpY29uLWxvbmctYXJyb3ctcmlnaHQge1xuXG4gICAgY29udGVudDogJ1xcZjE3OCc7XG5cbn1cblxuJWljb24tbG9uZy1hcnJvdy1kb3duIHtcblxuICAgIGNvbnRlbnQ6ICdcXGYxNzUnO1xuXG59XG5cbiVpY29uLWFycm93LXVwIHtcblxuICAgIGNvbnRlbnQ6ICdcXGYwNzcnO1xuXG59XG5cbiVpY29uLWFycm93LXJpZ2h0IHtcblxuICAgIGNvbnRlbnQ6ICdcXGYwNTQnO1xuXG59XG5cbiVpY29uLWFycm93LWRvd24ge1xuXG4gICAgY29udGVudDogJ1xcZjA3OCc7XG5cbn1cblxuJWljb24tYXJyb3ctbGVmdCB7XG5cbiAgICBjb250ZW50OiAnXFxmMDUzJztcblxufVxuXG4laWNvbi1tYWduaWZpZXIge1xuXG4gICAgY29udGVudDogJ1xcZjAwMic7XG5cbn1cblxuJWljb24tY2xvc2Uge1xuXG4gICAgY29udGVudDogJ1xcZjAwZCc7XG5cbn1cblxuJWljb24tc2hhcmUge1xuXG4gICAgY29udGVudDogJ1xcZjFlMCc7XG5cbn1cblxuJWljb24tcGxheS12aWRlbyB7XG5cbiAgICBjb250ZW50OiAnXFxmMDRiJztcblxufVxuXG4laWNvbi1mYWNlYm9vayB7XG5cbiAgICBjb250ZW50OiAnXFxmMjMwJztcblxufVxuXG4laWNvbi10d2l0dGVyIHtcblxuICAgIGNvbnRlbnQ6ICdcXGYwOTknO1xuXG59XG5cbiVpY29uLWluc3RhZ3JhbSB7XG5cbiAgICBjb250ZW50OiAnXFxmMTZkJztcblxufVxuXG4laWNvbi1zcGlubmVyIHtcblxuICAgIGNvbnRlbnQ6ICdcXGYxY2UnO1xuXG59XG5cbi4jeyRzaXRlLW5hbWVzcGFjZX1pY29uIHtcblxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAgIGNvbG9yOiAkYmxhY2s7XG5cbiAgICBzcGFuIHtcblxuICAgICAgICBAZXh0ZW5kICV2aXN1YWxseWhpZGRlbjtcblxuICAgIH1cblxuICAgICY6YmVmb3JlIHtcbiAgICAgICAgXG4gICAgICAgIGZvbnQtZmFtaWx5OiAkaWNvbi1mb250O1xuXG4gICAgfVxuXG4gICAgJi4jeyRzaXRlLW5hbWVzcGFjZX1pY29uLWZhY2Vib29rIHtcblxuICAgICAgICAmOmJlZm9yZSB7XG5cbiAgICAgICAgICAgIC8vY29udGVudDogJ1xcZjIzMCc7XG4gICAgICAgICAgICBAZXh0ZW5kICVpY29uLWZhY2Vib29rO1xuXG4gICAgICAgIH1cblxuICAgIH1cblxuICAgICYuI3skc2l0ZS1uYW1lc3BhY2V9aWNvbi10d2l0dGVyIHtcblxuICAgICAgICAmOmJlZm9yZSB7XG5cbiAgICAgICAgICAgIC8vY29udGVudDogJ1xcZjA5OSc7XG4gICAgICAgICAgICBAZXh0ZW5kICVpY29uLXR3aXR0ZXI7XG5cbiAgICAgICAgfVxuICAgICAgICBcbiAgICB9XG5cbiAgICAmLiN7JHNpdGUtbmFtZXNwYWNlfWljb24taW5zdGFncmFtIHtcblxuICAgICAgICAmOmJlZm9yZSB7XG5cbiAgICAgICAgICAgIC8vY29udGVudDogJ1xcZjE2ZCc7XG4gICAgICAgICAgICBAZXh0ZW5kICVpY29uLWluc3RhZ3JhbTtcblxuICAgICAgICB9XG4gICAgICAgIFxuICAgIH1cblxufVxuXG4uI3skc2l0ZS1uYW1lc3BhY2V9cGxheS12aWRlbyB7XG5cbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAmOmFmdGVyIHtcblxuICAgICAgICBAaW5jbHVkZSBwb3NpdGlvbihhYnNvbHV0ZSwgNTAlIDAgMCA1MCUpO1xuXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgQGluY2x1ZGUgc2l6ZSg2MHB4KTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwtNTAlKTtcblxuICAgICAgICBmb250LWZhbWlseTogJGljb24tZm9udDtcbiAgICAgICAgQGV4dGVuZCAlaWNvbi1wbGF5LXZpZGVvO1xuICAgICAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICAgICAgQGluY2x1ZGUgcmVtKCdmb250LXNpemUnLCA2MHB4KTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDYwcHg7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICAvL2JvcmRlcjogMnB4IHNvbGlkICNmZmZmZmY7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG5cbiAgICAgICAgLy9jb250ZW50OiAnXFxmMDRiJztcblxuICAgIH1cblxufSIsIlxuLiN7JHNpdGUtbmFtZXNwYWNlfXNlcGFyYXRvciB7XG5cbiAgICBkaXNwbGF5OiBibG9jazsgICBcbiAgICBtYXJnaW46IDA7XG4gICAgbWFyZ2luLXRvcDogZW0oMTUpO1xuICAgIG1hcmdpbi1ib3R0b206IGVtKDQyKTtcblxuICAgIGJvcmRlcjogbm9uZTtcblxuICAgICY6YWZ0ZXIge1xuXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgQGluY2x1ZGUgc2l6ZSg1MHB4IDFweCk7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRibGFjaztcblxuICAgICAgICBjb250ZW50OiAnJztcblxuICAgIH1cblxuICAgICYuI3skc2l0ZS1uYW1lc3BhY2V9c2VwYXJhdG9yLS1hbHRlcm5hdGUge1xuXG4gICAgICAgICY6YWZ0ZXIge1xuXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJvd247XG5cbiAgICAgICAgfVxuXG4gICAgfVxuXG59IiwiLy8gQWRkcyBrZXlmcmFtZXMgYmxvY2tzIGZvciBzdXBwb3J0ZWQgcHJlZml4ZXMsIHJlbW92aW5nIHJlZHVuZGFudCBwcmVmaXhlcyBpbiB0aGUgYmxvY2sncyBjb250ZW50XG5AbWl4aW4ga2V5ZnJhbWVzKCRuYW1lKSB7XG4gICRvcmlnaW5hbC1wcmVmaXgtZm9yLXdlYmtpdDogICAgJHByZWZpeC1mb3Itd2Via2l0O1xuICAkb3JpZ2luYWwtcHJlZml4LWZvci1tb3ppbGxhOiAgICRwcmVmaXgtZm9yLW1vemlsbGE7XG4gICRvcmlnaW5hbC1wcmVmaXgtZm9yLW1pY3Jvc29mdDogJHByZWZpeC1mb3ItbWljcm9zb2Z0O1xuICAkb3JpZ2luYWwtcHJlZml4LWZvci1vcGVyYTogICAgICRwcmVmaXgtZm9yLW9wZXJhO1xuICAkb3JpZ2luYWwtcHJlZml4LWZvci1zcGVjOiAgICAgICRwcmVmaXgtZm9yLXNwZWM7XG5cbiAgQGlmICRvcmlnaW5hbC1wcmVmaXgtZm9yLXdlYmtpdCB7XG4gICAgQGluY2x1ZGUgZGlzYWJsZS1wcmVmaXgtZm9yLWFsbCgpO1xuICAgICRwcmVmaXgtZm9yLXdlYmtpdDogdHJ1ZSAhZ2xvYmFsO1xuICAgIEAtd2Via2l0LWtleWZyYW1lcyAjeyRuYW1lfSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cblxuICBAaWYgJG9yaWdpbmFsLXByZWZpeC1mb3ItbW96aWxsYSB7XG4gICAgQGluY2x1ZGUgZGlzYWJsZS1wcmVmaXgtZm9yLWFsbCgpO1xuICAgICRwcmVmaXgtZm9yLW1vemlsbGE6IHRydWUgIWdsb2JhbDtcbiAgICBALW1vei1rZXlmcmFtZXMgI3skbmFtZX0ge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG5cbiAgJHByZWZpeC1mb3Itd2Via2l0OiAgICAkb3JpZ2luYWwtcHJlZml4LWZvci13ZWJraXQgICAgIWdsb2JhbDtcbiAgJHByZWZpeC1mb3ItbW96aWxsYTogICAkb3JpZ2luYWwtcHJlZml4LWZvci1tb3ppbGxhICAgIWdsb2JhbDtcbiAgJHByZWZpeC1mb3ItbWljcm9zb2Z0OiAkb3JpZ2luYWwtcHJlZml4LWZvci1taWNyb3NvZnQgIWdsb2JhbDtcbiAgJHByZWZpeC1mb3Itb3BlcmE6ICAgICAkb3JpZ2luYWwtcHJlZml4LWZvci1vcGVyYSAgICAgIWdsb2JhbDtcbiAgJHByZWZpeC1mb3Itc3BlYzogICAgICAkb3JpZ2luYWwtcHJlZml4LWZvci1zcGVjICAgICAgIWdsb2JhbDtcblxuICBAaWYgJG9yaWdpbmFsLXByZWZpeC1mb3Itc3BlYyB7XG4gICAgQGtleWZyYW1lcyAjeyRuYW1lfSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cbiIsIlxuJG92ZXJsYXktdG9vbGJhci1zaXplOiA1MHB4O1xuXG5AaW5jbHVkZSBrZXlmcmFtZXMoc3Bpbm5lcikge1xuICAgIGZyb20ge1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0ocm90YXRlKDApKTtcbiAgICB9XG4gICAgdG8ge1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0ocm90YXRlKDM2MGRlZykpO1xuICAgIH1cbn1cblxuYm9keS4jeyRzaXRlLW5hbWVzcGFjZX1vdmVybGF5LWxvYWRpbmcge1xuXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgLy9AaW5jbHVkZSBicmVha3BvaW50KCRkZXNrdG9wKXtcblxuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAvL31cblxuICAgICY6YmVmb3JlIHtcblxuICAgICAgICBAaW5jbHVkZSBwb3NpdGlvbihmaXhlZCwgMCAwIDAgMCk7XG4gICAgICAgIHotaW5kZXg6ICRjbG9nLXotaW5kZXg7XG5cbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIEBpbmNsdWRlIHNpemUoMTAwJSk7XG5cbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcblxuICAgICAgICAvL29wYWNpdHk6IDAuNDtcbiAgICAgICAgY29udGVudDogJyc7XG5cbiAgICB9XG5cbiAgICAmOmFmdGVyIHtcblxuICAgICAgICBAaW5jbHVkZSBwb3NpdGlvbihmaXhlZCwgNTAlIDAgMCA1MCUpO1xuICAgICAgICB6LWluZGV4OiAkc3Bpbm5lci16LWluZGV4O1xuXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgLy9AaW5jbHVkZSBzaXplKDUwcHgpO1xuICAgICAgICAvL21hcmdpbjogLTI1cHggMCAwIC0yNXB4O1xuICAgICAgICBAaW5jbHVkZSBzaXplKDkwcHggNTBweCk7XG4gICAgICAgIG1hcmdpbjogLTI1cHggMCAwIC00NXB4O1xuXG4gICAgICAgIGJhY2tncm91bmQ6IHtcbiAgICAgICAgICAgIGltYWdlOiB1cmwoJGltYWdlcy1wYXRoICsgJ3ByZWxvYWRlci5naWYnKTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiA1MCUgNTAlO1xuICAgICAgICAgICAgcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIH1cblxuICAgICAgICBjb250ZW50OiAnJ1xuXG4gICAgICAgIC8vIGNvbG9yOiAkZ3JlZW4xO1xuICAgICAgICAvLyBmb250LWZhbWlseTogJGljb24tZm9udDtcbiAgICAgICAgLy8gbGluZS1oZWlnaHQ6IDUwcHg7XG4gICAgICAgIC8vIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgLy8gQGV4dGVuZCAlaWNvbi1zcGlubmVyO1xuXG4gICAgICAgIC8vIGJhY2tncm91bmQtY29sb3I6ICRncmV5MTtcbiAgICAgICAgLy8gYm9yZGVyOiAxcHggc29saWQgJGdyZXkyO1xuICAgICAgICAvLyBib3JkZXItcmFkaXVzOiA1MCU7XG5cbiAgICAgICAgLy8gQGluY2x1ZGUgYW5pbWF0aW9uKHNwaW5uZXIgMC41NXMgbGluZWFyIGluZmluaXRlKTtcblxuICAgICAgICAvLyBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcblxuICAgIH1cblxufVxuXG5ib2R5LnBuMTYtb3ZlcmxheS1ub292ZXJmbG93IHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG5ib2R5LiN7JHNpdGUtbmFtZXNwYWNlfW92ZXJsYXktdHJhbnNpdGlvbi1sb2FkaW5nIHtcblxuICAgIC4jeyRzaXRlLW5hbWVzcGFjZX1vdmVybGF5X19tZWRpYSwgLiN7JHNpdGUtbmFtZXNwYWNlfW92ZXJsYXlfX3RleHQsIC4jeyRzaXRlLW5hbWVzcGFjZX1vdmVybGF5X190aW1lbGluZSB7XG5cbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuXG4gICAgfVxuXG59XG5cbmJvZHkuI3skc2l0ZS1uYW1lc3BhY2V9b3ZlcmxheS1zdWNjZXNzIHtcblxuICAgIC8vQGluY2x1ZGUgYnJlYWtwb2ludCgkZGVza3RvcCl7XG5cbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgIC8vfVxuXG4gICAgLiN7JHNpdGUtbmFtZXNwYWNlfW92ZXJsYXktd3JhcHBlciB7XG5cbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcblxuICAgIH1cblxufVxuXG4uI3skc2l0ZS1uYW1lc3BhY2V9b3ZlcmxheS13cmFwcGVyIHtcblxuICAgIEBpbmNsdWRlIHBvc2l0aW9uKGZpeGVkLCAwIDAgMCAwKTtcbiAgICB6LWluZGV4OiAkb3ZlcmxheS13cmFwcGVyLXotaW5kZXg7XG5cbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuXG4gICAgb3BhY2l0eTogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG5cbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKG9wYWNpdHkgMC42NXMgJGVhc2UtaW4tb3V0LXF1YWQsIHZpc2liaWxpdHkgMC42NXMgJGVhc2UtaW4tb3V0LXF1YWQpO1xuXG59XG5cbi4jeyRzaXRlLW5hbWVzcGFjZX1vdmVybGF5IHtcblxuICAgIC8vZGlyZWN0aW9uOiBsdHI7IC8qIGltcG9ydGFudGUhISEgKi8gICAgXG5cbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCAwLjY1cyAkZWFzZS1pbi1vdXQtcXVhZCk7IFxuXG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIC8vcGFkZGluZy10b3A6ICRoZWFkZXItaGVpZ2h0O1xuXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBvdmVyZmxvdy15OiBhdXRvOyAgICBcblxuICAgIGh0bWwudG91Y2ggJiB7XG5cbiAgICAgICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuXG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkZGVza3RvcCl7XG5cbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBwYWRkaW5nLXRvcDogMDtcblxuICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICAgICAgb3ZlcmZsb3cteTogdmlzaWJsZTtcbiAgICAgICAgLy8td2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogYXV0bztcblxuICAgIH1cblxuICAgIC4jeyRzaXRlLW5hbWVzcGFjZX1vdmVybGF5X19pbm5lciB7XG5cbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyAgICAgICAgXG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkZGVza3RvcCl7XG5cbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvOyAvLyBTZSBpbiBwYWdlLCBpbiBvdmVybGF5IHZlZGkgYSBmb25kbyBzY3NzXG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuXG4gICAgICAgIH1cblxuICAgIH1cblxuICAgIC4jeyRzaXRlLW5hbWVzcGFjZX1vdmVybGF5X19tZWRpYSwgLiN7JHNpdGUtbmFtZXNwYWNlfW92ZXJsYXlfX3RleHQsIC4jeyRzaXRlLW5hbWVzcGFjZX1vdmVybGF5X190aW1lbGluZSB7XG5cbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcblxuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKG9wYWNpdHkgMC42NXMgJGVhc2UtaW4tb3V0LXF1YWQsIHZpc2liaWxpdHkgMC42NXMgJGVhc2UtaW4tb3V0LXF1YWQpO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGRlc2t0b3Ape1xuXG4gICAgICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvOyAvLyBTZSBpbiBwYWdlLCBpbiBvdmVybGF5IHZlZGkgYSBmb25kbyBzY3NzXG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcblxuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICAuI3skc2l0ZS1uYW1lc3BhY2V9b3ZlcmxheV9fbWVkaWEge1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGRlc2t0b3Ape1xuXG4gICAgICAgICAgICBoZWlnaHQ6IDEwMHZoO1xuXG4gICAgICAgIH1cblxuICAgICAgICAvL2JhY2tncm91bmQtY29sb3I6ICMwMDAwMDA7IC8qIGJlY2F1c2Ugb2YgWVQgYmFja2dyb3VuZC1jb2xvciAqL1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JlZW4xO1xuXG4gICAgfVxuXG4gICAgLiN7JHNpdGUtbmFtZXNwYWNlfW92ZXJsYXlfX3RleHQge1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGRlc2t0b3Ape1xuXG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogJGhlYWRlci1oZWlnaHQtZGVza3RvcDtcblxuICAgICAgICB9XG5cbiAgICAgICAgPiBkaXYge1xuXG4gICAgICAgICAgICBwYWRkaW5nOiBlbSgzMCkgZW0oMTUpO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRkZXNrdG9wKXtcblxuICAgICAgICAgICAgICAgIC8vaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDE1JTtcblxuICAgICAgICAgICAgICAgIC8vQGluY2x1ZGUgdmVydGljYWwtYWxpZ24oKTtcblxuICAgICAgICAgICAgfSAgICAgICAgICAgIFxuXG4gICAgICAgIH1cblxuICAgIH1cblxuICAgIC4jeyRzaXRlLW5hbWVzcGFjZX1vdmVybGF5X190aW1lbGluZSB7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkZGVza3RvcCl7XG5cbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAkaGVhZGVyLWhlaWdodC1kZXNrdG9wO1xuXG4gICAgICAgIH1cblxuICAgICAgICA+IGRpdiB7XG5cbiAgICAgICAgICAgIHBhZGRpbmc6IGVtKDMwKSBlbSgxNSk7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGRlc2t0b3Ape1xuXG4gICAgICAgICAgICAgICAgLy9oZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogNSUgMTUlO1xuXG4gICAgICAgICAgICAgICAgLy9AaW5jbHVkZSB2ZXJ0aWNhbC1hbGlnbigpO1xuXG4gICAgICAgICAgICB9ICAgICAgICAgICAgXG5cbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgLiN7JHNpdGUtbmFtZXNwYWNlfW92ZXJsYXlfX3Njcm9sbCB7XG5cbiAgICAgICAgJi4jeyRzaXRlLW5hbWVzcGFjZX1zY3JvbGxhYmxlIHtcblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkZGVza3RvcCl7XG5cbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgICAgIG92ZXJmbG93LXk6IGF1dG87XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgJi4jeyRzaXRlLW5hbWVzcGFjZX12YWxpZ24ge1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRkZXNrdG9wKXtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHZlcnRpY2FsLWFsaWduKCk7XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICAuI3skc2l0ZS1uYW1lc3BhY2V9b3ZlcmxheV9fdG9vbGJhciB7XG5cbiAgICAgICAgQGluY2x1ZGUgcG9zaXRpb24oYWJzb2x1dGUsIDAgMCBudWxsIG51bGwpO1xuXG4gICAgICAgIC8vZGlzcGxheTogbm9uZTsgLy8gU2UgaW4gcGFnZSwgaW4gb3ZlcmxheSB2ZWRpIGEgZm9uZG8gc2Nzc1xuICAgICAgICAvL0BpbmNsdWRlIHNpemUoMTAwJSk7XG4gICAgICAgIC8vcGFkZGluZy10b3A6IDUwJSAqICRjaGVzc2JvYXJkLXJhdGlvO1xuXG4gICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24ob3BhY2l0eSAwLjY1cyAkZWFzZS1pbi1vdXQtcXVhZCwgdmlzaWJpbGl0eSAwLjY1cyAkZWFzZS1pbi1vdXQtcXVhZCk7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkZGVza3RvcCl7XG5cbiAgICAgICAgICAgIHBvc2l0aW9uOiBmaXhlZDsgLy8gQUFBQUFcbiAgICAgICAgICAgIHJpZ2h0OiAxNXB4O1xuXG4gICAgICAgICAgICB3aWR0aDogJG92ZXJsYXktdG9vbGJhci1zaXplO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgLy9wYWRkaW5nLXRvcDogMDtcblxuICAgICAgICB9XG5cbiAgICAgICAgJi4jeyRzaXRlLW5hbWVzcGFjZX1oaWRkZW4ge1xuXG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuXG4gICAgICAgIH1cblxuICAgICAgICA+IGRpdiB7XG5cbiAgICAgICAgICAgIHdpZHRoOiAkb3ZlcmxheS10b29sYmFyLXNpemU7XG4gICAgICAgICAgICAvL21hcmdpbi10b3A6IC0xMDBweDtcbiAgICAgICAgICAgIGZsb2F0OiByaWdodDtcblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkZGVza3RvcCl7XG5cbiAgICAgICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgICAgICAvL21hcmdpbi10b3A6IDA7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSB2ZXJ0aWNhbC1hbGlnbjtcblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuXG4gICAgICAgIH1cblxuICAgICAgICAmLiN7JHNpdGUtbmFtZXNwYWNlfWFjdGl2ZSB7XG5cbiAgICAgICAgICAgIC8vID4gZGl2IHtcblxuICAgICAgICAgICAgLy8gICAgIG1hcmdpbi10b3A6IC03NXB4O1xuXG4gICAgICAgICAgICAvLyAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkZGVza3RvcCl7XG5cbiAgICAgICAgICAgIC8vICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAvLyAgICAgfVxuXG4gICAgICAgICAgICAvLyB9XG5cbiAgICAgICAgICAgIC4jeyRzaXRlLW5hbWVzcGFjZX1vdmVybGF5LW5hdiB7XG5cbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDA7XG5cbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC4jeyRzaXRlLW5hbWVzcGFjZX1vdmVybGF5LXNoYXJlX19saXN0IHtcblxuICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcblxuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuI3skc2l0ZS1uYW1lc3BhY2V9b3ZlcmxheS1zaGFyZV9fdG9nZ2xlciB7XG5cbiAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG5cbiAgICAgICAgICAgICAgICAgICAgLy9jb250ZW50OiAnXFxmMDBkJztcbiAgICAgICAgICAgICAgICAgICAgQGV4dGVuZCAlaWNvbi1jbG9zZTtcblxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgIH1cblxufVxuXG4uI3skc2l0ZS1uYW1lc3BhY2V9b3ZlcmxheS1pbWFnZSwgLiN7JHNpdGUtbmFtZXNwYWNlfW92ZXJsYXktdmlkZW8ge1xuXG4gICAgQGluY2x1ZGUgYXNwZWN0LXJhdGlvKDEsJGNoZXNzYm9hcmQtcmF0aW8pOyBcblxuICAgIGJhY2tncm91bmQ6IHtcbiAgICAgICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBwb3NpdGlvbjogNTAlIDUwJTtcbiAgICAgICAgcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIHNpemU6IGNvdmVyO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGRlc2t0b3Ape1xuXG4gICAgICAgIEBpbmNsdWRlIHNpemUoMTAwJSk7XG5cbiAgICB9XG5cbn1cblxuLiN7JHNpdGUtbmFtZXNwYWNlfW92ZXJsYXktdmlkZW8ge1xuXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICBAZXh0ZW5kIC4jeyRzaXRlLW5hbWVzcGFjZX1wbGF5LXZpZGVvO1xuXG59XG5cbi4jeyRzaXRlLW5hbWVzcGFjZX1vdmVybGF5LXN0cmVhbXZpZGVvIHtcblxuICAgIEBpbmNsdWRlIGFzcGVjdC1yYXRpbygxLjc3LCAxKTtcblxuICAgIC8vbWFyZ2luLXRvcDogJGhlYWRlci1oZWlnaHQ7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRkZXNrdG9wKXtcblxuICAgICAgICAvL21hcmdpbi10b3A6IDA7XG5cbiAgICAgICAgQGluY2x1ZGUgdmVydGljYWwtYWxpZ247XG5cbiAgICB9XG5cbiAgICBlbWJlZCwgaWZyYW1lIHtcblxuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICB9XG5cbn1cblxuJW92ZXJsYXktdG9vbGJhci1idXR0b24ge1xuXG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgQGluY2x1ZGUgc2l6ZSgkb3ZlcmxheS10b29sYmFyLXNpemUpO1xuXG4gICAgdGV4dDoge1xuICAgICAgICBhbGlnbjogY2VudGVyO1xuICAgICAgICBkZWNvcmF0aW9uOiBub25lO1xuICAgIH1cblxuICAgICY6YmVmb3JlIHtcblxuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgQGluY2x1ZGUgc2l6ZShpbmhlcml0KTtcblxuICAgICAgICBmb250LWZhbWlseTogJGljb24tZm9udDtcbiAgICAgICAgQGluY2x1ZGUgcmVtKCdmb250LXNpemUnLCAxNnB4KTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgbGluZS1oZWlnaHQ6ICRvdmVybGF5LXRvb2xiYXItc2l6ZTtcblxuICAgIH1cblxuICAgIGh0bWwubm8tdG91Y2ggJiB7XG5cbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihjb2xvciAwLjY1cyAkZWFzZS1pbi1vdXQtcXVhZCwgYmFja2dyb3VuZC1jb2xvciAwLjY1cyAkZWFzZS1pbi1vdXQtcXVhZCk7XG5cbiAgICB9XG5cbiAgICBzcGFuIHtcblxuICAgICAgICBAZXh0ZW5kICV2aXN1YWxseWhpZGRlbjtcblxuICAgIH1cblxufVxuXG4uI3skc2l0ZS1uYW1lc3BhY2V9b3ZlcmxheS1uYXYge1xuXG4gICAgaGVpZ2h0OiBhdXRvO1xuXG4gICAgb3BhY2l0eTogMTtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuXG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbihvcGFjaXR5IDAuNjVzICRlYXNlLWluLW91dC1xdWFkLCB2aXNpYmlsaXR5IDAuNjVzICRlYXNlLWluLW91dC1xdWFkKTtcblxuICAgIHVsIHtcblxuICAgICAgICBAaW5jbHVkZSBiYXNlLWxpc3Q7XG5cbiAgICB9XG5cbiAgICBhIHtcblxuICAgICAgICBAZXh0ZW5kICVvdmVybGF5LXRvb2xiYXItYnV0dG9uO1xuXG4gICAgICAgIGNvbG9yOiAkZ3JlZW4xO1xuXG4gICAgICAgIGh0bWwubm8tdG91Y2ggJiB7XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuXG4gICAgICAgICAgICAgICAgY29sb3I6ICNmZmZmZmY7XG5cbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JlZW4xO1xuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgLiN7JHNpdGUtbmFtZXNwYWNlfW92ZXJsYXktbmF2X19wcmV2IHtcblxuICAgICAgICAmOmJlZm9yZSB7XG5cbiAgICAgICAgICAgIC8vY29udGVudDogJ1xcZjA1Myc7XG4gICAgICAgICAgICBAZXh0ZW5kICVpY29uLWFycm93LWxlZnQ7XG5cbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgLiN7JHNpdGUtbmFtZXNwYWNlfW92ZXJsYXktbmF2X19uZXh0IHtcblxuICAgICAgICAmOmJlZm9yZSB7XG5cbiAgICAgICAgICAgIC8vY29udGVudDogJ1xcZjA1NCc7XG4gICAgICAgICAgICBAZXh0ZW5kICVpY29uLWFycm93LXJpZ2h0O1xuXG4gICAgICAgIH1cblxuICAgIH1cblxuICAgIC4jeyRzaXRlLW5hbWVzcGFjZX1vdmVybGF5LW5hdl9fY2xvc2Uge1xuXG4gICAgICAgICY6YmVmb3JlIHtcblxuICAgICAgICAgICAgLy9jb250ZW50OiAnXFxmMDBkJztcbiAgICAgICAgICAgIEBleHRlbmQgJWljb24tY2xvc2U7XG5cbiAgICAgICAgfVxuXG4gICAgfVxuXG59XG5cbi4jeyRzaXRlLW5hbWVzcGFjZX1vdmVybGF5LXNoYXJlIHtcblxuICAgIHVsIHtcblxuICAgICAgICBAaW5jbHVkZSBiYXNlLWxpc3Q7XG5cbiAgICB9XG5cbiAgICAuI3skc2l0ZS1uYW1lc3BhY2V9b3ZlcmxheS1zaGFyZV9fdG9nZ2xlciB7XG5cbiAgICAgICAgQGV4dGVuZCAlb3ZlcmxheS10b29sYmFyLWJ1dHRvbjtcblxuICAgICAgICBjb2xvcjogJGJyb3duO1xuXG4gICAgICAgIGh0bWwubm8tdG91Y2ggJiB7XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuXG4gICAgICAgICAgICAgICAgY29sb3I6ICNmZmZmZmY7XG5cbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJvd247XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgJjpiZWZvcmUge1xuXG4gICAgICAgICAgICAvL2NvbnRlbnQ6ICdcXGYxZTAnO1xuICAgICAgICAgICAgQGV4dGVuZCAlaWNvbi1zaGFyZTtcblxuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICAuI3skc2l0ZS1uYW1lc3BhY2V9b3ZlcmxheS1zaGFyZV9fbGlzdCB7XG5cbiAgICAgICAgaGVpZ2h0OiAwO1xuXG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcblxuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCAwLjY1cyAkZWFzZS1pbi1vdXQtcXVhZCk7XG5cbiAgICAgICAgYSB7XG5cbiAgICAgICAgICAgIEBleHRlbmQgJW92ZXJsYXktdG9vbGJhci1idXR0b247XG5cbiAgICAgICAgICAgIGNvbG9yOiAkZ3JlZW4xO1xuXG4gICAgICAgICAgICBodG1sLm5vLXRvdWNoICYge1xuXG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG5cbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNmZmZmZmY7XG5cbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdyZWVuMTtcblxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfSAgICAgICAgICAgIFxuXG4gICAgICAgIH1cblxuICAgIH1cblxuICAgIC4jeyRzaXRlLW5hbWVzcGFjZX1vdmVybGF5LXNoYXJlX19mYWNlYm9vayB7XG5cbiAgICAgICAgJjpiZWZvcmUge1xuXG4gICAgICAgICAgICAvL2NvbnRlbnQ6ICdcXGYyMzAnO1xuICAgICAgICAgICAgQGV4dGVuZCAlaWNvbi1mYWNlYm9vaztcblxuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICAuI3skc2l0ZS1uYW1lc3BhY2V9b3ZlcmxheS1zaGFyZV9fdHdpdHRlciB7XG5cbiAgICAgICAgJjpiZWZvcmUge1xuXG4gICAgICAgICAgICAvL2NvbnRlbnQ6ICdcXGYwOTknO1xuICAgICAgICAgICAgQGV4dGVuZCAlaWNvbi10d2l0dGVyO1xuXG4gICAgICAgIH1cblxuICAgIH1cblxufVxuXG4uI3skc2l0ZS1uYW1lc3BhY2V9b3ZlcmxheS1jaXRlIHtcblxuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgICAgXG5cbn1cblxuLiN7JHNpdGUtbmFtZXNwYWNlfXl0LWVtYmVkIHtcblxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIGhlaWdodDogMDsgXG4gICAgcGFkZGluZy10b3A6IDMwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDU2LjI1JTsgICAgXG5cbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgaWZyYW1lLCBvYmplY3QsIGVtYmVkIHtcblxuICAgICAgICBAaW5jbHVkZSBwb3NpdGlvbihhYnNvbHV0ZSwgMCBudWxsIG51bGwgMCk7XG5cbiAgICAgICAgQGluY2x1ZGUgc2l6ZSgxMDAlKTtcblxuICAgIH1cblxufVxuXG4uI3skc2l0ZS1uYW1lc3BhY2V9b3ZlcmxheS12aWRlby1kZXNjcmlwdGlvbiB7XG5cbiAgICA+IGRpdiB7XG5cbiAgICAgICAgQGV4dGVuZCAldGV4dC1BO1xuICAgICAgICBAZXh0ZW5kICV0ZXh0LWZyaWxsLUE7XG4gICAgICAgIEBleHRlbmQgJXRleHQtcmVzZXQtY2hpbGRzOyAgICAgICAgXG4gICAgICAgIEBleHRlbmQgJXRleHQtbm9ybWFsaXplLWxpbmtzO1xuXG4gICAgfVxuXG59XG5cbi8vIENvcnJlemlvbmUgc3RpbGkgcGVyIGVsZW1lbnRpIGNhcmljYXRpIGluIG92ZXJsYXkganNcbi4jeyRzaXRlLW5hbWVzcGFjZX1vdmVybGF5LXdyYXBwZXIge1xuXG4gICAgLiN7JHNpdGUtbmFtZXNwYWNlfW92ZXJsYXkge1xuXG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgcGFkZGluZy10b3A6ICRoZWFkZXItaGVpZ2h0O1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGRlc2t0b3Ape1xuXG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMDtcblxuICAgICAgICB9XG5cbiAgICAgICAgLiN7JHNpdGUtbmFtZXNwYWNlfW92ZXJsYXlfX2lubmVyIHtcblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkZGVza3RvcCl7XG5cbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgLiN7JHNpdGUtbmFtZXNwYWNlfW92ZXJsYXlfX21lZGlhLCAuI3skc2l0ZS1uYW1lc3BhY2V9b3ZlcmxheV9fdGV4dCwgLiN7JHNpdGUtbmFtZXNwYWNlfW92ZXJsYXlfX3RpbWVsaW5lIHtcblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkZGVza3RvcCl7XG5cbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgLiN7JHNpdGUtbmFtZXNwYWNlfW92ZXJsYXlfX3RleHQge1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRkZXNrdG9wKXtcblxuICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgb3ZlcmZsb3cteTogYXV0bztcblxuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICAuI3skc2l0ZS1uYW1lc3BhY2V9b3ZlcmxheV9fdGltZWxpbmUge1xuXG4gICAgICAgICAgICA+IGRpdiB7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRkZXNrdG9wKXtcblxuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG5cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWZyYW1lIHtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGRlc2t0b3Ape1xuXG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJSAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG5cbiAgICAgICAgLiN7JHNpdGUtbmFtZXNwYWNlfXl0LWVtYmVkIHtcblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkZGVza3RvcCl7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSB2ZXJ0aWNhbC1hbGlnbigpO1xuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIC4jeyRzaXRlLW5hbWVzcGFjZX1vdmVybGF5X190b29sYmFyIHtcblxuICAgICAgICAvLyAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgLy8gfVxuXG4gICAgICAgIC4jeyRzaXRlLW5hbWVzcGFjZX1vdmVybGF5X190b29sYmFyIHtcblxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuXG4gICAgICAgIH1cblxuICAgIH1cblxufVxuXG4vLyBTdHlsZXMgZm9yIG92ZXJsYXkgbG9hZGVkIHZpYSBBamF4XG4vLyAuI3skc2l0ZS1uYW1lc3BhY2V9b3ZlcmxheS1ob2xkZXIge1xuXG4vLyAgICAgLiN7JHNpdGUtbmFtZXNwYWNlfW92ZXJsYXkge1xuXG4vLyAgICAgICAgIEBpbmNsdWRlIHBvc2l0aW9uKGFic29sdXRlLCAwIG51bGwgbnVsbCAwKTtcbi8vICAgICAgICAgei1pbmRleDogJG92ZXJsYXktei1pbmRleDtcblxuLy8gICAgICAgICBAaW5jbHVkZSBzaXplKDEwMCUpO1xuXG4vLyAgICAgICAgIC8vb3BhY2l0eTogMDtcbi8vICAgICAgICAgLy92aXNpYmlsaXR5OiBoaWRkZW47XG5cbi8vICAgICAgICAgLiN7JHNpdGUtbmFtZXNwYWNlfW92ZXJsYXlfX21lZGlhLCAuI3skc2l0ZS1uYW1lc3BhY2V9b3ZlcmxheV9fdGV4dCB7XG5cbi8vICAgICAgICAgICAgIC8vIEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsIDAuNjVzICRlYXNlLWluLW91dC1xdWFkKTtcblxuLy8gICAgICAgICAgICAgLy8gb3BhY2l0eTogMDtcbi8vICAgICAgICAgICAgIC8vIHZpc2liaWxpdHk6IGhpZGRlbjtcblxuLy8gICAgICAgICB9XG5cbi8vICAgICAgICAgLy8gJi4jeyRzaXRlLW5hbWVzcGFjZX12aXNpYmxlIHtcblxuLy8gICAgICAgICAvLyAgICAgb3BhY2l0eTogMTtcbi8vICAgICAgICAgLy8gICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG5cbi8vICAgICAgICAgLy8gfVxuXG4vLyAgICAgICAgIC8vICYuI3skc2l0ZS1uYW1lc3BhY2V9dmlzaWJsZSB7XG5cbi8vICAgICAgICAgLy8gICAgIC4jeyRzaXRlLW5hbWVzcGFjZX1vdmVybGF5X19tZWRpYSwgLiN7JHNpdGUtbmFtZXNwYWNlfW92ZXJsYXlfX3RleHQge1xuXG4vLyAgICAgICAgIC8vICAgICAgICAgb3BhY2l0eTogMTtcbi8vICAgICAgICAgLy8gICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuXG4vLyAgICAgICAgIC8vICAgICB9XG5cbi8vICAgICAgICAgLy8gfVxuXG4vLyAgICAgfVxuXG4vLyAgICAgLiN7JHNpdGUtbmFtZXNwYWNlfW92ZXJsYXlfX21lZGlhLCAuI3skc2l0ZS1uYW1lc3BhY2V9b3ZlcmxheV9fdGV4dCB7XG5cbi8vICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkZGVza3RvcCl7XG5cbi8vICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcblxuLy8gICAgICAgICB9XG5cbi8vICAgICB9XG5cbi8vICAgICAuI3skc2l0ZS1uYW1lc3BhY2V9b3ZlcmxheS1pbWFnZSwgLiN7JHNpdGUtbmFtZXNwYWNlfW92ZXJsYXktdmlkZW8ge1xuXG4vLyAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGRlc2t0b3Ape1xuXG4vLyAgICAgICAgICAgICBAaW5jbHVkZSBhc3BlY3QtcmF0aW8oKTsgXG5cbi8vICAgICAgICAgfVxuXG4vLyAgICAgfVxuXG4vLyAgICAgLiN7JHNpdGUtbmFtZXNwYWNlfW92ZXJsYXktdmlkZW8ge1xuXG4vLyAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGRlc2t0b3Ape1xuXG4vLyAgICAgICAgICAgICBAaW5jbHVkZSBhc3BlY3QtcmF0aW8oKTsgXG5cbi8vICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuLy8gICAgICAgICB9XG5cbi8vICAgICB9XG5cbi8vICAgICAuI3skc2l0ZS1uYW1lc3BhY2V9eXQtZW1iZWQge1xuXG4vLyAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGRlc2t0b3Ape1xuXG4vLyAgICAgICAgICAgICBAaW5jbHVkZSB2ZXJ0aWNhbC1hbGlnbigpO1xuXG4vLyAgICAgICAgIH1cblxuLy8gICAgIH1cbiAgICBcbi8vIH0iLCJAY2hhcnNldCBcIlVURi04XCI7XG5cbi8vLyBQcm92aWRlcyBhbiBlYXN5IHdheSB0byBpbmNsdWRlIGEgY2xlYXJmaXggZm9yIGNvbnRhaW5pbmcgZmxvYXRzLlxuLy8vXG4vLy8gQGxpbmsgaHR0cDovL2Nzc21vam8uY29tL2xhdGVzdF9uZXdfY2xlYXJmaXhfc29fZmFyL1xuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFVzYWdlXG4vLy8gICAuZWxlbWVudCB7XG4vLy8gICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuLy8vICAgfVxuLy8vXG4vLy8gQGV4YW1wbGUgY3NzIC0gQ1NTIE91dHB1dFxuLy8vICAgLmVsZW1lbnQ6OmFmdGVyIHtcbi8vLyAgICAgY2xlYXI6IGJvdGg7XG4vLy8gICAgIGNvbnRlbnQ6IFwiXCI7XG4vLy8gICAgIGRpc3BsYXk6IHRhYmxlO1xuLy8vICAgfVxuXG5AbWl4aW4gY2xlYXJmaXgge1xuICAmOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgfVxufVxuIiwiLmdhbGxlcnlPdmVybGF5IHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgei1pbmRleDogMTkwO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBtaW4taGVpZ2h0OiAxMDAlO1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgb3BhY2l0eTogMDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjRzIGxpbmVhciAwcztcblxuICAgICoge1xuICAgICAgICBvdXRsaW5lOiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgJi52aXNpYmxlIHtcbiAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IGFsbDtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIC40cyBsaW5lYXIgMHM7XG4gICAgfVxuXG4gICAgLnBuMTYtb3ZlcmxheSAucG4xNi1vdmVybGF5X190b29sYmFyIHtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICB9XG5cbiAgICAuc2xpY2stZG90cyB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgLmpzLXBuMTYtYWpheC1jb250ZW50IHtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBtaW4taGVpZ2h0OiAxMDAlO1xuXG4gICAgICAgIC5wbjE2LW92ZXJsYXkge1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgbWluLWhlaWdodDogMTAwJTtcblxuICAgICAgICAgICAgLnBuMTYtb3ZlcmxheV9faW5uZXIge1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmdhbGxlcnlUaXRsZSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdG9wOiAxMjBweDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBjb2xvcjogJGJyb3duO1xuICAgICAgICBmb250LWZhbWlseTogXCJCcmFuZG9uR3JvdGVzcXVlXCIsIFwiSGVsdmV0aWNhIE5ldWVcIiwgXCJIZWx2ZXRpY2FcIiwgXCJSb2JvdG9cIiwgXCJBcmlhbFwiLCBzYW5zLXNlcmlmO1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMC44OHJlbTtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB9XG5cbiAgICAuZ2FsbGVyeUNhcm91c2VsIHtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBtaW4taGVpZ2h0OiAxMDAlO1xuICAgICAgICBwYWRkaW5nLXRvcDogMTYwcHg7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuXG4gICAgICAgIC5nYWxsZXJ5Q2Fyb3VzZWxfX2l0ZW0ge1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgLmdhbGxlcnlDYXJvdXNlbF9faXRlbV9fY29udGVudCB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIHdpZHRoOiA4MCU7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiA3NDBweDtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSByYXRpbyg4NTMsNDgwKTtcblxuICAgICAgICAgICAgICAgIGlmcmFtZSB7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuXG4gICAgICAgICAgICAgICAgICAgICZbc3JjPScnXSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJi5nYWxsZXJ5Q2Fyb3VzZWxfX2l0ZW1fX2NvbnRlbnQtLWhhcy12aWRlbyB7XG4gICAgICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgIC5nYWxsZXJ5Q2Fyb3VzZWxfX2l0ZW1fX2ltYWdlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIC5mYWtlUGxheWJ0biB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAZXh0ZW5kIC4jeyRzaXRlLW5hbWVzcGFjZX1wbGF5LXZpZGVvO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLmdhbGxlcnlDYXJvdXNlbF9faXRlbV9faW1hZ2Uge1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDoge1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgICAgICByZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHNpemU6IGNvbnRhaW47XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkZGVza3RvcCl7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5nYWxsZXJ5Q2Fyb3VzZWxfX2l0ZW1fX2Rlc2NyaXB0aW9uIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLmdhbGxlcnlDYXJvdXNlbF9faXRlbS0tZG91YmxlIHtcblxuICAgICAgICAgICAgICAgIC5nYWxsZXJ5Q2Fyb3VzZWxfX2l0ZW1fX2NvbnRlbnQge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGRlc2t0b3Ape1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDU0JTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC5nYWxsZXJ5Q2Fyb3VzZWxfX2l0ZW1fX2ltYWdlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGRlc2t0b3Ape1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGNlbnRlciByaWdodDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAucG4xNi1vdmVybGF5X190ZXh0IHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgICAgICAgICAgICAgICAgICAgPiBkaXYge1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRkZXNrdG9wKXtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAucG4xNi1oZWFkaW5nLUEge1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiA0MHB4O1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRkZXNrdG9wKXtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5nYWxsZXJ5Q2Fyb3VzZWxfX2l0ZW1fX2Rlc2NyaXB0aW9uIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRkZXNrdG9wKXtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIDIwMHB4KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMTAwcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuZ2FsbGVyeUZvb3RlckNhcm91c2VsIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIGxlZnQ6IDA7Ly81MCU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXgtaGVpZ2h0OiAxMDBweDtcbiAgICAgICAgaGVpZ2h0OiAxMDBweDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAvL3RyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkZGVza3RvcCl7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuXG4gICAgICAgIC5jdXN0b21TbGlkZXIge1xuICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMHB4O1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjRzIGVhc2UtaW4tb3V0IDBzO1xuICAgICAgICB9XG5cbiAgICAgICAgLmdhbGxlcnlDYXJvdXNlbF9faXRlbSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDtcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICAmLmN1cnJlbnRUaHVtYiB7XG4gICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLC42KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAycHg7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2E2NzU1NjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5nYWxsZXJ5Q2Fyb3VzZWxfX2l0ZW1fX2NvbnRlbnQge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuXG4gICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTAwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufSIsIlxuLiN7JHNpdGUtbmFtZXNwYWNlfWN0YSB7XG5cbiAgICAmLiN7JHNpdGUtbmFtZXNwYWNlfWN0YS0tQSwgJi4jeyRzaXRlLW5hbWVzcGFjZX1jdGEtLUUgeyAgICAgICAgXG5cbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBwYWRkaW5nLXRvcDogZW0oNSk7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiBlbSg1KTtcblxuICAgICAgICBjb2xvcjogJGJyb3duO1xuICAgICAgICBmb250OiB7XG4gICAgICAgICAgICBmYW1pbHk6ICRicmFuZG9uZ3JvdGVzcXVlO1xuICAgICAgICAgICAgd2VpZ2h0OiA1MDA7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgcmVtKCdmb250LXNpemUnLCAxNHB4KTtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyAgICAgICAgXG5cbiAgICB9ICBcblxuICAgICYuI3skc2l0ZS1uYW1lc3BhY2V9Y3RhLS1BIHtcblxuICAgICAgICBodG1sLm5vLXRvdWNoICYge1xuXG4gICAgICAgICAgICAmOmhvdmVyIHtcblxuICAgICAgICAgICAgICAgIGNvbG9yOiAkZ3JlZW4xO1xuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgfSAgXG5cbiAgICAmLiN7JHNpdGUtbmFtZXNwYWNlfWN0YS0tRSB7XG5cbiAgICAgICAgaHRtbC5uby10b3VjaCAmIHtcblxuICAgICAgICAgICAgJjpob3ZlciB7XG5cbiAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZmZmZjtcblxuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgIH1cblxuICAgICYuI3skc2l0ZS1uYW1lc3BhY2V9Y3RhLS1CIHtcblxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgICAgICAgIFxuXG4gICAgICAgIGh0bWwubm8tdG91Y2ggJiB7ICAgICAgICAgICAgXG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuXG4gICAgICAgICAgICAgICAgY29sb3I6ICRicm93bjtcblxuICAgICAgICAgICAgfVxuXG4gICAgICAgIH0gXG5cbiAgICAgICAgJjphZnRlciB7XG5cbiAgICAgICAgICAgIGNvbG9yOiAkYnJvd247ICAgIFxuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgICAgICAgXG5cbiAgICAgICAgfVxuXG4gICAgfSBcblxuICAgICYuI3skc2l0ZS1uYW1lc3BhY2V9Y3RhLS1BLCAmLiN7JHNpdGUtbmFtZXNwYWNlfWN0YS0tQiwgJi4jeyRzaXRlLW5hbWVzcGFjZX1jdGEtLUUge1xuXG4gICAgICAgICY6YWZ0ZXIge1xuXG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDEycHg7XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkaWNvbi1mb250O1xuICAgICAgICAgICAgQGV4dGVuZCAlaWNvbi1sb25nLWFycm93LXJpZ2h0OyAgICAgICAgICAgIFxuICAgICAgICAgICAgQGluY2x1ZGUgcmVtKCdmb250LXNpemUnLCAxOHB4KTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICB0b3A6IDNweDtcbiAgICAgICAgICAgIC8vdmVydGljYWwtYWxpZ246IG1pZGRsZTtcblxuICAgICAgICB9XG5cbiAgICAgICAgaHRtbC5uby10b3VjaCAmIHtcblxuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihjb2xvciAwLjY1cyAkZWFzZS1pbi1vdXQtcXVhZCk7XG5cbiAgICAgICAgICAgICY6YWZ0ZXIge1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbih0cmFuc2Zvcm0gMC4yNXMgJGVhc2UtaW4tb3V0LXF1YWQpO1xuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuXG4gICAgICAgICAgICAgICAgJjphZnRlciB7XG5cbiAgICAgICAgICAgICAgICAgICAgLy9vcGFjaXR5OiAwO1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0odHJhbnNsYXRlWCg1MCUpKTtcblxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgIH0gIFxuXG4gICAgJi4jeyRzaXRlLW5hbWVzcGFjZX1jdGEtLUMsICYuI3skc2l0ZS1uYW1lc3BhY2V9Y3RhLS1ELCAmLiN7JHNpdGUtbmFtZXNwYWNlfWN0YS0tbm9hcnJvdyB7XG5cbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IFxuXG4gICAgICAgICY6YmVmb3JlIHtcblxuICAgICAgICAgICAgQGluY2x1ZGUgcG9zaXRpb24oYWJzb2x1dGUsIDE1cHggbnVsbCBudWxsIC0yMHB4KTtcblxuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRpY29uLWZvbnQ7XG4gICAgICAgICAgICBAZXh0ZW5kICVpY29uLWxvbmctYXJyb3ctZG93bjtcbiAgICAgICAgICAgIGNvbG9yOiAkYnJvd247XG4gICAgICAgICAgICBAaW5jbHVkZSByZW0oJ2ZvbnQtc2l6ZScsIDE4cHgpO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG5cbiAgICAgICAgICAgIC8vY29udGVudDogJ1xcZjE3NSc7XG5cbiAgICAgICAgfSAgICAgICAgXG5cbiAgICAgICAgaHRtbC5uby10b3VjaCAmIHtcblxuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihjb2xvciAwLjY1cyAkZWFzZS1pbi1vdXQtcXVhZCk7XG5cbiAgICAgICAgICAgICY6YmVmb3JlIHtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24odHJhbnNmb3JtIDAuMjVzICRlYXNlLWluLW91dC1xdWFkKTtcblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmhvdmVyIHtcblxuICAgICAgICAgICAgICAgIGNvbG9yOiAkYnJvd247XG5cbiAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG5cbiAgICAgICAgICAgICAgICAgICAgLy9AaW5jbHVkZSBib3VuY2UoKTtcbiAgICAgICAgICAgICAgICAgICAgLy9vcGFjaXR5OiAwO1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0odHJhbnNsYXRlWSgxMDAlKSk7XG5cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICB9ICBcblxuICAgICYuI3skc2l0ZS1uYW1lc3BhY2V9Y3RhLS1DIHtcblxuICAgICAgICBjb2xvcjogI2ZmZmZmZjtcblxuICAgIH0gXG5cbiAgICAmLiN7JHNpdGUtbmFtZXNwYWNlfWN0YS0tRCB7XG5cbiAgICAgICAgY29sb3I6ICRncmVlbjE7XG5cbiAgICB9XG5cbiAgICAmLiN7JHNpdGUtbmFtZXNwYWNlfWN0YS0tbm9hcnJvdyB7XG4gICAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi4jeyRzaXRlLW5hbWVzcGFjZX1jdGEtLUYge1xuXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHBhZGRpbmctdG9wOiAzNXB4O1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMzVweDtcblxuICAgICAgICBjb2xvcjogJGJyb3duO1xuICAgICAgICBmb250OiB7XG4gICAgICAgICAgICBmYW1pbHk6ICRicmFuZG9uZ3JvdGVzcXVlO1xuICAgICAgICAgICAgd2VpZ2h0OiA1MDA7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgcmVtKCdmb250LXNpemUnLCAxNHB4KTtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oY29sb3IgMC42NXMgJGVhc2UtaW4tb3V0LXF1YWQpO1xuXG4gICAgICAgICY6YmVmb3JlLCAmOmFmdGVyIHtcblxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgbGVmdDogNTAlO1xuXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIEBpbmNsdWRlIHNpemUoNTBweCAxcHgpO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0yNXB4O1xuXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJvd247XG5cbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGJhY2tncm91bmQtY29sb3IgMC42NXMgJGVhc2UtaW4tb3V0LXF1YWQpO1xuXG4gICAgICAgIH1cblxuICAgICAgICAmOmJlZm9yZSB7XG5cbiAgICAgICAgICAgIHRvcDogMjBweDtcblxuICAgICAgICB9XG5cbiAgICAgICAgJjphZnRlciB7XG5cbiAgICAgICAgICAgIGJvdHRvbTogMjBweDtcbiAgICAgICAgICAgIFxuICAgICAgICB9XG5cbiAgICAgICAgaHRtbC5uby10b3VjaCAmIHtcblxuICAgICAgICAgICAgJjpob3ZlciB7XG5cbiAgICAgICAgICAgICAgICBjb2xvcjogJGdyZWVuMTtcblxuICAgICAgICAgICAgICAgICY6YmVmb3JlLCAmOmFmdGVyIHtcblxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JlZW4xO1xuXG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgfVxuXG59IiwiLy8gU2hvcnRoYW5kIG1peGluLiBTdXBwb3J0cyBtdWx0aXBsZSBwYXJlbnRoZXNlcy1kZWxpbWluYXRlZCB2YWx1ZXMgZm9yIGVhY2ggdmFyaWFibGUuXG4vLyBFeGFtcGxlOiBAaW5jbHVkZSB0cmFuc2l0aW9uIChhbGwgMnMgZWFzZS1pbi1vdXQpO1xuLy8gICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbiAob3BhY2l0eSAxcyBlYXNlLWluIDJzLCB3aWR0aCAycyBlYXNlLW91dCk7XG4vLyAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLXByb3BlcnR5ICh0cmFuc2Zvcm0sIG9wYWNpdHkpO1xuXG5AbWl4aW4gdHJhbnNpdGlvbigkcHJvcGVydGllcy4uLikge1xuICAvLyBGaXggZm9yIHZlbmRvci1wcmVmaXggdHJhbnNmb3JtIHByb3BlcnR5XG4gICRuZWVkcy1wcmVmaXhlczogZmFsc2U7XG4gICR3ZWJraXQ6ICgpO1xuICAkbW96OiAoKTtcbiAgJHNwZWM6ICgpO1xuXG4gIC8vIENyZWF0ZSBsaXN0cyBmb3IgdmVuZG9yLXByZWZpeGVkIHRyYW5zZm9ybVxuICBAZWFjaCAkbGlzdCBpbiAkcHJvcGVydGllcyB7XG4gICAgQGlmIG50aCgkbGlzdCwgMSkgPT0gXCJ0cmFuc2Zvcm1cIiB7XG4gICAgICAkbmVlZHMtcHJlZml4ZXM6IHRydWU7XG4gICAgICAkbGlzdDE6IC13ZWJraXQtdHJhbnNmb3JtO1xuICAgICAgJGxpc3QyOiAtbW96LXRyYW5zZm9ybTtcbiAgICAgICRsaXN0MzogKCk7XG5cbiAgICAgIEBlYWNoICR2YXIgaW4gJGxpc3Qge1xuICAgICAgICAkbGlzdDM6IGpvaW4oJGxpc3QzLCAkdmFyKTtcblxuICAgICAgICBAaWYgJHZhciAhPSBcInRyYW5zZm9ybVwiIHtcbiAgICAgICAgICAkbGlzdDE6IGpvaW4oJGxpc3QxLCAkdmFyKTtcbiAgICAgICAgICAkbGlzdDI6IGpvaW4oJGxpc3QyLCAkdmFyKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAkd2Via2l0OiBhcHBlbmQoJHdlYmtpdCwgJGxpc3QxKTtcbiAgICAgICRtb3o6ICAgIGFwcGVuZCgkbW96LCAgICAkbGlzdDIpO1xuICAgICAgJHNwZWM6ICAgYXBwZW5kKCRzcGVjLCAgICRsaXN0Myk7XG4gICAgfSBAZWxzZSB7XG4gICAgICAkd2Via2l0OiBhcHBlbmQoJHdlYmtpdCwgJGxpc3QsIGNvbW1hKTtcbiAgICAgICRtb3o6ICAgIGFwcGVuZCgkbW96LCAgICAkbGlzdCwgY29tbWEpO1xuICAgICAgJHNwZWM6ICAgYXBwZW5kKCRzcGVjLCAgICRsaXN0LCBjb21tYSk7XG4gICAgfVxuICB9XG5cbiAgQGlmICRuZWVkcy1wcmVmaXhlcyB7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiAkd2Via2l0O1xuICAgICAgIC1tb3otdHJhbnNpdGlvbjogJG1vejtcbiAgICAgICAgICAgIHRyYW5zaXRpb246ICRzcGVjO1xuICB9IEBlbHNlIHtcbiAgICBAaWYgbGVuZ3RoKCRwcm9wZXJ0aWVzKSA+PSAxIHtcbiAgICAgIEBpbmNsdWRlIHByZWZpeGVyKHRyYW5zaXRpb24sICRwcm9wZXJ0aWVzLCB3ZWJraXQgbW96IHNwZWMpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgJHByb3BlcnRpZXM6IGFsbCAwLjE1cyBlYXNlLW91dCAwcztcbiAgICAgIEBpbmNsdWRlIHByZWZpeGVyKHRyYW5zaXRpb24sICRwcm9wZXJ0aWVzLCB3ZWJraXQgbW96IHNwZWMpO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gdHJhbnNpdGlvbi1wcm9wZXJ0eSgkcHJvcGVydGllcy4uLikge1xuICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zaXRpb24tcHJvcGVydHktbmFtZXMoJHByb3BlcnRpZXMsIFwid2Via2l0XCIpO1xuICAgICAtbW96LXRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zaXRpb24tcHJvcGVydHktbmFtZXMoJHByb3BlcnRpZXMsIFwibW96XCIpO1xuICAgICAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zaXRpb24tcHJvcGVydHktbmFtZXMoJHByb3BlcnRpZXMsIGZhbHNlKTtcbn1cblxuQG1peGluIHRyYW5zaXRpb24tZHVyYXRpb24oJHRpbWVzLi4uKSB7XG4gIEBpbmNsdWRlIHByZWZpeGVyKHRyYW5zaXRpb24tZHVyYXRpb24sICR0aW1lcywgd2Via2l0IG1veiBzcGVjKTtcbn1cblxuQG1peGluIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uKCRtb3Rpb25zLi4uKSB7XG4gIC8vIGVhc2UgfCBsaW5lYXIgfCBlYXNlLWluIHwgZWFzZS1vdXQgfCBlYXNlLWluLW91dCB8IGN1YmljLWJlemllcigpXG4gIEBpbmNsdWRlIHByZWZpeGVyKHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uLCAkbW90aW9ucywgd2Via2l0IG1veiBzcGVjKTtcbn1cblxuQG1peGluIHRyYW5zaXRpb24tZGVsYXkoJHRpbWVzLi4uKSB7XG4gIEBpbmNsdWRlIHByZWZpeGVyKHRyYW5zaXRpb24tZGVsYXksICR0aW1lcywgd2Via2l0IG1veiBzcGVjKTtcbn1cbiIsIlxuJWZvY3VzLXJlc2V0IHtcblxuICAgIC8vQGluY2x1ZGUgdHJhbnNpdGlvbihiYWNrZ3JvdW5kLWNvbG9yIDAuNjVzICRlYXNlLWluLW91dC1xdWFkKTtcblxuICAgICY6Zm9jdXMge1xuXG4gICAgICAgIC8vYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkYnJvd24sIDAuMDUpO1xuXG4gICAgICAgIG91dGxpbmU6IDA7XG5cbiAgICB9XG5cbn1cblxuJHBsYWNlaG9sZGVyLWNvbG9yOiAkZ3JleTI7XG5cbmlucHV0LCB0ZXh0YXJlYSB7XG5cbiAgICBAaW5jbHVkZSBwbGFjZWhvbGRlciB7XG4gICAgICAgIFxuICAgICAgICBjb2xvcjogJHBsYWNlaG9sZGVyLWNvbG9yO1xuXG4gICAgfVxuXG59XG5cbi4jeyRzaXRlLW5hbWVzcGFjZX1wbGFjZWhvbGRlciB7XG5cbiAgICBjb2xvcjogJHBsYWNlaG9sZGVyLWNvbG9yO1xuXG59XG5cbi8vIC4jeyRzaXRlLW5hbWVzcGFjZX1zZWxlY3QtcmVwbGFjZW1lbnQge1xuXG4vLyAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4vLyAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuLy8gICAgIEBpbmNsdWRlIHNpemUoMjEwcHggNTBweCk7XG5cbi8vICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGJyb3duO1xuXG4vLyAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuLy8gICAgICY6YWZ0ZXIge1xuXG4vLyAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbi8vICAgICAgICAgaGVpZ2h0OiA1MHB4O1xuXG4vLyAgICAgICAgIEBpbmNsdWRlIHBvc2l0aW9uKGFic29sdXRlLCAwIDE1cHggbnVsbCBudWxsKTtcblxuLy8gICAgICAgICBmb250LWZhbWlseTogJGljb24tZm9udDtcbi8vICAgICAgICAgQGV4dGVuZCAlaWNvbi1hcnJvdy1kb3duO1xuLy8gICAgICAgICBjb2xvcjogJGJyb3duO1xuLy8gICAgICAgICBAaW5jbHVkZSByZW0oJ2ZvbnQtc2l6ZScsIDEycHgpO1xuLy8gICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuLy8gICAgICAgICBsaW5lLWhlaWdodDogNTBweDtcblxuLy8gICAgIH1cblxuLy8gICAgIHNlbGVjdCB7XG5cbi8vICAgICAgICAgQGluY2x1ZGUgc2l6ZSgyMzBweCA1MHB4KTtcbi8vICAgICAgICAgbWFyZ2luOiAwO1xuLy8gICAgICAgICBwYWRkaW5nOiAwIDE1cHg7XG5cbi8vICAgICAgICAgY29sb3I6ICRicm93bjtcbi8vICAgICAgICAgZm9udC1mYW1pbHk6ICRicmFuZG9uZ3JvdGVzcXVlO1xuLy8gICAgICAgICBAaW5jbHVkZSByZW0oJ2ZvbnQtc2l6ZScsIDE0cHgpO1xuLy8gICAgICAgICBmb250LXdlaWdodDogNTAwO1xuXG4vLyAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuLy8gICAgICAgICBib3JkZXI6IDBweCBzb2xpZCB0cmFuc3BhcmVudDtcblxuLy8gICAgICAgICBAaW5jbHVkZSBhcHBlYXJhbmNlKG5vbmUpO1xuLy8gICAgICAgICBAZXh0ZW5kICVmb2N1cy1yZXNldDtcblxuLy8gICAgIH1cblxuLy8gfVxuXG4uI3skc2l0ZS1uYW1lc3BhY2V9c2VsZWN0LXJlcGxhY2VtZW50IHtcblxuICAgICRzZWxlY3QtcmVwbGFjZW1lbnQtaGVhZGVyOiA1MHB4O1xuXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIEBpbmNsdWRlIHNpemUoMjEwcHggJHNlbGVjdC1yZXBsYWNlbWVudC1oZWFkZXIpO1xuXG4gICAgY29sb3I6ICRicm93bjtcbiAgICBmb250OiB7XG4gICAgICAgIGZhbWlseTogJGJyYW5kb25ncm90ZXNxdWU7XG4gICAgICAgIHdlaWdodDogNTAwO1xuICAgIH1cbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcblxuICAgIC4jeyRzaXRlLW5hbWVzcGFjZX1zZWxlY3QtcmVwbGFjZW1lbnRfX3RyaWdnZXIge1xuXG4gICAgICAgIEBpbmNsdWRlIHNpemUoaW5oZXJpdCk7XG4gICAgICAgIHBhZGRpbmc6IDE1cHg7XG5cbiAgICAgICAgQGluY2x1ZGUgcmVtKCdmb250LXNpemUnLCAxNHB4KTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcblxuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGJyb3duO1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGJyb3duO1xuXG4gICAgICAgICY6YWZ0ZXIge1xuXG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBoZWlnaHQ6IDUwcHg7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIHBvc2l0aW9uKGFic29sdXRlLCAwIDE1cHggbnVsbCBudWxsKTtcblxuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRpY29uLWZvbnQ7XG4gICAgICAgICAgICBAZXh0ZW5kICVpY29uLWFycm93LWRvd247XG4gICAgICAgICAgICBjb2xvcjogJGJyb3duO1xuICAgICAgICAgICAgQGluY2x1ZGUgcmVtKCdmb250LXNpemUnLCAxMnB4KTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogJHNlbGVjdC1yZXBsYWNlbWVudC1oZWFkZXI7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsIDAuNjVzICRlYXNlLWluLW91dC1jdWJpYyk7XG5cbiAgICAgICAgfVxuXG4gICAgICAgIGh0bWwubm8tdG91Y2ggJiB7XG5cbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihjb2xvciAwLjY1cyAkZWFzZS1pbi1vdXQtY3ViaWMsIGJhY2tncm91bmQtY29sb3IgMC42NXMgJGVhc2UtaW4tb3V0LWN1YmljKTtcblxuICAgICAgICAgICAgJjpob3ZlciB7XG5cbiAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZmZmZjtcblxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicm93bjtcblxuICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjZmZmZmZmO1xuXG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgLiN7JHNpdGUtbmFtZXNwYWNlfXNlbGVjdC1yZXBsYWNlbWVudF9fbGlzdCB7XG4gICAgXG4gICAgICAgIEBpbmNsdWRlIHBvc2l0aW9uKGFic29sdXRlLCAkc2VsZWN0LXJlcGxhY2VtZW50LWhlYWRlciBudWxsIG51bGwgMCk7XG4gICAgICAgIHotaW5kZXg6ICRiYXNlLXotaW5kZXg7XG5cbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1heC1oZWlnaHQ6IDI0MHB4O1xuXG4gICAgICAgIEBpbmNsdWRlIHJlbSgnZm9udC1zaXplJywgMTNweCk7XG5cbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcblxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBvdmVyZmxvdy15OiBhdXRvO1xuXG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuXG4gICAgICAgIGh0bWwuanMgJiB7XG5cbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24ob3BhY2l0eSAwLjY1cyAkZWFzZS1pbi1vdXQtY3ViaWMpO1xuXG4gICAgICAgIH1cblxuICAgICAgICB1bCB7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJhc2UtbGlzdDtcblxuICAgICAgICB9XG5cbiAgICAgICAgbGkgeyAgICAgICAgICAgIFxuXG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGJyb3duO1xuXG4gICAgICAgIH1cblxuICAgICAgICBhIHtcblxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBwYWRkaW5nOiAxM3B4IDE1cHg7XG5cbiAgICAgICAgICAgIGNvbG9yOiAkYnJvd247XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICAgICAgICAgIGh0bWwubm8tdG91Y2ggJiB7XG5cbiAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGNvbG9yIDAuNjVzICRlYXNlLWluLW91dC1jdWJpYywgYmFja2dyb3VuZC1jb2xvciAwLjY1cyAkZWFzZS1pbi1vdXQtY3ViaWMpO1xuXG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG5cbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNmZmZmZmY7XG5cbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyb3duO1xuXG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgLy8gc2VsZWN0IHtcblxuICAgIC8vICAgICBvcGFjaXR5OiAwO1xuICAgIC8vICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG5cbiAgICAvLyAgICAgQGluY2x1ZGUgYXBwZWFyYW5jZShub25lKTtcbiAgICAvLyAgICAgQGV4dGVuZCAlZm9jdXMtcmVzZXQ7XG5cbiAgICAvLyB9XG5cbiAgICAmLiN7JHNpdGUtbmFtZXNwYWNlfW9wZW4ge1xuXG4gICAgICAgIC4jeyRzaXRlLW5hbWVzcGFjZX1zZWxlY3QtcmVwbGFjZW1lbnRfX3RyaWdnZXIge1xuXG4gICAgICAgICAgICAmOmFmdGVyIHtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybShyb3RhdGUoLTE4MGRlZykpO1xuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgIC4jeyRzaXRlLW5hbWVzcGFjZX1zZWxlY3QtcmVwbGFjZW1lbnRfX2xpc3Qge1xuXG4gICAgICAgICAgICBwb2ludGVyLWV2ZW50czogYWxsO1xuXG4gICAgICAgICAgICBodG1sLmpzICYge1xuXG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcblxuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgIH1cblxufSIsIkBtaXhpbiBwbGFjZWhvbGRlciB7XG4gICRwbGFjZWhvbGRlcnM6IFwiOi13ZWJraXQtaW5wdXRcIiBcIjotbW96XCIgXCItbW96XCIgXCItbXMtaW5wdXRcIjtcbiAgQGVhY2ggJHBsYWNlaG9sZGVyIGluICRwbGFjZWhvbGRlcnMge1xuICAgICY6I3skcGxhY2Vob2xkZXJ9LXBsYWNlaG9sZGVyIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuIiwiXG4uI3skc2l0ZS1uYW1lc3BhY2V9cXVvdGUge1xuXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgbWFyZ2luOiAwIDAgLTAuNWVtIDA7XG4gICAgcGFkZGluZy10b3A6IDAuM2VtO1xuXG4gICAgY29sb3I6ICRncmVlbjE7XG4gICAgZm9udDoge1xuICAgICAgICBmYW1pbHk6ICRwbGF5ZmFpcmRpc3BsYXk7XG4gICAgICAgIHN0eWxlOiBpdGFsaWM7XG4gICAgICAgIHdlaWdodDogbm9ybWFsO1xuICAgIH1cbiAgICBAaW5jbHVkZSByZW0oJ2ZvbnQtc2l6ZScsIDE4cHgpO1xuICAgIEBpbmNsdWRlIHJlbSgnbGluZS1oZWlnaHQnLCAzNXB4KTtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuXG4gICAgPiBwIHtcblxuICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICAgIG1hcmdpbjogMDtcblxuICAgIH1cblxuICAgICY6YmVmb3JlLCAmOmFmdGVyIHtcblxuICAgICAgICBmb250LXNpemU6IDNlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDAuMWVtO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogLTAuMmVtO1xuXG4gICAgfVxuXG4gICAgJjpiZWZvcmUgeyAgXG4gICAgICAgIFxuICAgICAgICBjb250ZW50OiAn4oCcJztcblxuICAgIH1cblxuICAgICY6YWZ0ZXIge1xuXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtMC4yZW07XG5cbiAgICAgICAgY29udGVudDogJ+KAnSc7XG5cbiAgICB9XG5cblxufSIsIlxuJHNjcm9sbC1meC1pbWFnZS10cmFuc2l0aW9uOiAkZWFzZS1vdXQtY2lyYztcbiRzY3JvbGwtZngtaW1hZ2UtdGltaW5nOiAyLjI1cztcbiRzY3JvbGwtZngtaW1hZ2UtZGVsYXk6IDBzO1xuJHNjcm9sbC1meC10ZXh0LXRyYW5zaXRpb246ICRlYXNlLW91dC1jaXJjO1xuJHNjcm9sbC1meC10ZXh0LXRpbWluZzogMi4yNXM7XG4kc2Nyb2xsLWZ4LXRleHQtZGVsYXk6IDAuMzVzO1xuXG4uI3skc2l0ZS1uYW1lc3BhY2V9c2Nyb2xsLWZ4LWNvbnRhaW5lciB7XG5cbiAgICBodG1sLmpzICYge1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGRlc2t0b3Ape1xuXG4gICAgICAgICAgICBvcGFjaXR5OiAwOyAgICAgICAgICAgIFxuXG4gICAgICAgIH1cblxuICAgIH1cblxuICAgICYuI3skc2l0ZS1uYW1lc3BhY2V9cmVhZHkge1xuXG4gICAgICAgIGh0bWwuanMgJiB7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGRlc2t0b3Ape1xuXG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcblxuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgIH1cblxuICAgIC4jeyRzaXRlLW5hbWVzcGFjZX1zY3JvbGwtZngtaW1hZ2Uge1xuXG4gICAgICAgIC4jeyRzaXRlLW5hbWVzcGFjZX1zY3JvbGwtZngtaW1hZ2Utd3JhcHBlciB7IFxuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRkZXNrdG9wKXtcblxuICAgICAgICAgICAgICAgIC8vcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgc2l6ZSgxMDAlKTtcblxuICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgLiN7JHNpdGUtbmFtZXNwYWNlfXNjcm9sbC1meC1pbWFnZS13cmFwcGVyX19pbm5lciB7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIHNpemUoMTAwJSk7IC8vIG90aGVyd2lzZSBnZW5lcmF0ZXMgYnVnIG9uIHJlc2l6ZSBtb2JpbGUtZGVza3RvcFxuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRkZXNrdG9wKXtcblxuICAgICAgICAgICAgICAgIC8vQGluY2x1ZGUgcG9zaXRpb24oYWJzb2x1dGUsIG51bGwgbnVsbCAtMTAwJSAwKTsgXG5cbiAgICAgICAgICAgICAgICAvL0BpbmNsdWRlIHNpemUoMTAwJSk7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0odHJhbnNsYXRlWSgxMDAlKSk7XG5cbiAgICAgICAgICAgICAgICAvL0BpbmNsdWRlIHRyYW5zaXRpb24oYm90dG9tIDAuNjVzICRzY3JvbGwtZngtaW1hZ2UtdHJhbnNpdGlvbiwgb3BhY2l0eSAwLjY1cyAkc2Nyb2xsLWZ4LWltYWdlLXRyYW5zaXRpb24pO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24odHJhbnNmb3JtICRzY3JvbGwtZngtaW1hZ2UtdGltaW5nICRzY3JvbGwtZngtaW1hZ2UtdHJhbnNpdGlvbiAkc2Nyb2xsLWZ4LWltYWdlLWRlbGF5LCBvcGFjaXR5ICRzY3JvbGwtZngtaW1hZ2UtdGltaW5nKjAuNSAkc2Nyb2xsLWZ4LWltYWdlLXRyYW5zaXRpb24gJHNjcm9sbC1meC1pbWFnZS1kZWxheSk7XG5cbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgIC8vICYuI3skc2l0ZS1uYW1lc3BhY2V9c2Nyb2xsLWZ4LS1yZXZlYWwge1xuXG4gICAgICAgIC8vICAgICAuI3skc2l0ZS1uYW1lc3BhY2V9c2Nyb2xsLWZ4LWltYWdlLXdyYXBwZXJfX2lubmVyIHtcblxuICAgICAgICAvLyAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGRlc2t0b3Ape1xuXG4gICAgICAgIC8vICAgICAgICAgICAgIC8vYm90dG9tOiAwO1xuXG4gICAgICAgIC8vICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybSh0cmFuc2xhdGVZKDApKTtcblxuICAgICAgICAvLyAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuXG4gICAgICAgIC8vICAgICAgICAgfVxuXG4gICAgICAgIC8vICAgICB9XG5cbiAgICAgICAgLy8gfVxuXG4gICAgfVxuXG4gICAgLiN7JHNpdGUtbmFtZXNwYWNlfXNjcm9sbC1meC10ZXh0IHsgXG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkZGVza3RvcCl7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybSh0cmFuc2xhdGVZKDcwJSkpO1xuXG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKHRyYW5zZm9ybSAkc2Nyb2xsLWZ4LXRleHQtdGltaW5nICRzY3JvbGwtZngtdGV4dC10cmFuc2l0aW9uICRzY3JvbGwtZngtdGV4dC1kZWxheSwgb3BhY2l0eSAkc2Nyb2xsLWZ4LXRleHQtdGltaW5nKjAuNSAkc2Nyb2xsLWZ4LXRleHQtdHJhbnNpdGlvbiAkc2Nyb2xsLWZ4LXRleHQtZGVsYXkpO1xuXG4gICAgICAgIH1cblxuICAgICAgICAvLyAmLiN7JHNpdGUtbmFtZXNwYWNlfXNjcm9sbC1meC0tcmV2ZWFsIHtcblxuICAgICAgICAvLyAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkZGVza3RvcCl7XG5cbiAgICAgICAgLy8gICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0odHJhbnNsYXRlWSgwKSk7XG5cbiAgICAgICAgLy8gICAgICAgICBvcGFjaXR5OiAxO1xuXG4gICAgICAgIC8vICAgICB9XG5cbiAgICAgICAgLy8gfVxuXG4gICAgfVxuXG4gICAgJi4jeyRzaXRlLW5hbWVzcGFjZX1zY3JvbGwtZngtLXJldmVhbCB7XG5cbiAgICAgICAgLiN7JHNpdGUtbmFtZXNwYWNlfXNjcm9sbC1meC1pbWFnZS13cmFwcGVyX19pbm5lciB7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGRlc2t0b3Ape1xuXG4gICAgICAgICAgICAgICAgLy9ib3R0b206IDA7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0odHJhbnNsYXRlWSgwKSk7XG5cbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgIC4jeyRzaXRlLW5hbWVzcGFjZX1zY3JvbGwtZngtdGV4dCB7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGRlc2t0b3Ape1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKHRyYW5zbGF0ZVkoMCkpO1xuXG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcblxuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgIH1cblxufVxuIiwiXG4uI3skc2l0ZS1uYW1lc3BhY2V9Y29va2llLXBvbGljeS1hbGVydCB7XG5cbiAgICBAaW5jbHVkZSBwb3NpdGlvbihmaXhlZCwgbnVsbCBudWxsIDAgMCk7XG4gICAgei1pbmRleDogJGNvb2tpZS1wb2xpY3ktYWxlcnQtei1pbmRleDtcblxuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6IDIwcHggMDsgICAgXG5cbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JleTI7XG5cbiAgICAuI3skc2l0ZS1uYW1lc3BhY2V9Y29va2llLXBvbGljeS1hbGVydF9fd3JhcHBlciB7ICAgICAgICBcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRkZXNrdG9wKXtcblxuICAgICAgICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICB9XG5cbiAgICAgICAgPiBkaXYgeyAgICAgICAgICAgIFxuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRkZXNrdG9wKXtcblxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG5cbiAgICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG5cbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMTVweDtcblxuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGRlc2t0b3Ape1xuXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMTAlO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMDtcblxuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0OyBcblxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgIH1cblxuICAgIHAge1xuICAgICAgICBcbiAgICAgICAgbWFyZ2luOiAwO1xuXG4gICAgICAgIGNvbG9yOiAkZ3JlZW4xO1xuICAgICAgICBmb250OiB7XG4gICAgICAgICAgICBmYW1pbHk6ICRicmFuZG9uZ3JvdGVzcXVlO1xuICAgICAgICAgICAgd2VpZ2h0OiA0MDA7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgcmVtKCdmb250LXNpemUnLCAxNXB4KTtcblxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgfVxuXG4gICAgYSB7XG5cbiAgICAgICAgY29sb3I6ICRicm93bjtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgICAgIGh0bWwubm8tdG91Y2ggJiB7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oY29sb3IgMC42NXMgJGVhc2UtaW4tb3V0LXF1YWQpO1xuXG4gICAgICAgICAgICAmOmhvdmVyIHtcblxuICAgICAgICAgICAgICAgIGNvbG9yOiAkZ3JlZW4xO1xuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgLiN7JHNpdGUtbmFtZXNwYWNlfWNvb2tpZS1wb2xpY3ktYWxlcnQtY29uZmlybSB7XG5cbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgcGFkZGluZy10b3A6IDE1cHg7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxNXB4O1xuXG4gICAgICAgIGZvbnQ6IHtcbiAgICAgICAgICAgIGZhbWlseTogJGJyYW5kb25ncm90ZXNxdWU7XG4gICAgICAgICAgICB3ZWlnaHQ6IDUwMDtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSByZW0oJ2ZvbnQtc2l6ZScsIDE0cHgpO1xuXG4gICAgICAgICY6YmVmb3JlLCAmOmFmdGVyIHtcblxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgbGVmdDogNTAlO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBzaXplKDUwcHggMXB4KTtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtMjVweDtcblxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyb3duO1xuXG4gICAgICAgICAgICBjb250ZW50OiAnJztcblxuICAgICAgICAgICAgaHRtbC5uby10b3VjaCAmIHtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYmFja2dyb3VuZC1jb2xvciAwLjY1cyAkZWFzZS1pbi1vdXQtcXVhZCk7XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgJjpiZWZvcmUge1xuXG4gICAgICAgICAgICB0b3A6IDA7XG5cbiAgICAgICAgfVxuXG4gICAgICAgICY6YWZ0ZXIge1xuXG4gICAgICAgICAgICBib3R0b206IDA7XG5cbiAgICAgICAgfVxuXG4gICAgICAgIGh0bWwubm8tdG91Y2ggJiB7XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuXG4gICAgICAgICAgICAgICAgJjpiZWZvcmUsICY6YWZ0ZXIge1xuXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRncmVlbjE7XG5cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICB9XG5cbn0iLCIuaG9tZS1vdmVybGF5IHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDk5OTk5OTtcbn1cblxuLmhvbWUtb3ZlcmxheV9fYmFja2dyb3VuZCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDExLCAxMSwgMTEsIC44KTtcbn1cblxuLmhvbWUtb3ZlcmxheV9fY29udGVudCB7XG4gIEBpbmNsdWRlIGFzcGVjdC1yYXRpbyg2NDAsIDM2MCk7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMjtcbiAgd2lkdGg6IDk0JTtcbiAgaGVpZ2h0OiBhdXRvO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICB3aWR0aDogNzAlO1xuICB9XG59XG5cbi5ob21lLW92ZXJsYXlfX2Nsb3NlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgZGlzcGxheTogaW5saW5lO1xuICB6LWluZGV4OiAxMDtcbiAgdG9wOiAtNTBweDtcbiAgbGVmdDogYXV0bztcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogYXV0bztcbiAgY29sb3I6ICNmZmY7XG4gIG9wYWNpdHk6IC42NTtcbiAgZm9udC1zaXplOiA0MHB4O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgLjI1cyBsaW5lYXIgMHM7XG5cbiAgJjpob3ZlciB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG4uaG9tZS1vdmVybGF5X19pZnJhbWUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbn0iLCJodG1sIHtcblxuXHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXG59XG5cbiosICo6YmVmb3JlLCAqOmFmdGVyIHtcblxuICAgIGJveC1zaXppbmc6IGluaGVyaXQ7XG5cbn1cblxuaHRtbCwgYm9keSB7XG5cblx0aGVpZ2h0OiAxMDAlO1xuXG5cdGNvbG9yOiAkZGVmYXVsdC1jb2xvcjtcblx0Zm9udC1mYW1pbHk6ICRkZWZhdWx0LWZvbnQtc3RhY2s7IFxuXHRmb250LXdlaWdodDogbm9ybWFsO1xuXG5cdGJhY2tncm91bmQtY29sb3I6ICRkZWZhdWx0LWJhY2tncm91bmQtY29sb3I7XG5cblx0LXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG5cdC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG5cbn1cblxuQGluY2x1ZGUgc2VsZWN0aW9uIHtcbiAgXG5cdGNvbG9yOiAjZmZmZmZmO1xuXG5cdGJhY2tncm91bmQ6ICRicm93bjtcblxufVxuXG5odG1sLiN7JHNpdGUtbmFtZXNwYWNlfWJsb2NrZWQtc2Nyb2xsIHtcblxuICAgIGJvZHkge1xuXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgICAgICY6YmVmb3JlIHtcblxuICAgICAgICAgICAgQGluY2x1ZGUgcG9zaXRpb24oZml4ZWQsIDAgMCAwIDApO1xuICAgICAgICAgICAgei1pbmRleDogJGNsb2ctei1pbmRleDtcblxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBAaW5jbHVkZSBzaXplKDEwMCUpO1xuXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblxuICAgICAgICAgICAgY29udGVudDogJyc7XG5cbiAgICAgICAgfVxuXG4gICAgfVxuXG59XG5cbmh0bWwuI3skc2l0ZS1uYW1lc3BhY2V9bWFpbi1uYXYtb3BlbiB7XG5cbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JlZW4yO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkZGVza3RvcCl7XG5cbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcblxuICAgIH1cblxuICAgIC4jeyRzaXRlLW5hbWVzcGFjZX1jb250ZW50IHtcblxuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkZGVza3RvcCl7XG5cbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuXG4gICAgICAgIH1cblxuICAgIH1cblxufVxuXG5odG1sLiN7JHNpdGUtbmFtZXNwYWNlfXNlYXJjaC1vcGVuIHtcblxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRkZXNrdG9wKXtcblxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuXG4gICAgfVxuXG4gICAgLiN7JHNpdGUtbmFtZXNwYWNlfWNvbnRlbnQge1xuXG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRkZXNrdG9wKXtcblxuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG5cbiAgICAgICAgfVxuXG4gICAgfVxuXG59XG4iLCJAY2hhcnNldCBcIlVURi04XCI7XHJcblxyXG4vLy8gT3V0cHV0cyB0aGUgc3BlYyBhbmQgcHJlZml4ZWQgdmVyc2lvbnMgb2YgdGhlIGA6OnNlbGVjdGlvbmAgcHNldWRvLWVsZW1lbnQuXHJcbi8vL1xyXG4vLy8gQHBhcmFtIHtCb29sfSAkY3VycmVudC1zZWxlY3RvciBbZmFsc2VdXHJcbi8vLyAgIElmIHNldCB0byBgdHJ1ZWAsIGl0IHRha2VzIHRoZSBjdXJyZW50IGVsZW1lbnQgaW50byBjb25zaWRlcmF0aW9uLlxyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3MgLSBVc2FnZVxyXG4vLy8gICAuZWxlbWVudCB7XHJcbi8vLyAgICAgQGluY2x1ZGUgc2VsZWN0aW9uKHRydWUpIHtcclxuLy8vICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmJiNTI7XHJcbi8vLyAgICAgfVxyXG4vLy8gICB9XHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgY3NzIC0gQ1NTIE91dHB1dFxyXG4vLy8gICAuZWxlbWVudDo6LW1vei1zZWxlY3Rpb24ge1xyXG4vLy8gICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmJiNTI7XHJcbi8vLyAgIH1cclxuLy8vXHJcbi8vLyAgIC5lbGVtZW50OjpzZWxlY3Rpb24ge1xyXG4vLy8gICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmJiNTI7XHJcbi8vLyAgIH1cclxuXHJcbkBtaXhpbiBzZWxlY3Rpb24oJGN1cnJlbnQtc2VsZWN0b3I6IGZhbHNlKSB7XHJcbiAgQGlmICRjdXJyZW50LXNlbGVjdG9yIHtcclxuICAgICY6Oi1tb3otc2VsZWN0aW9uIHtcclxuICAgICAgQGNvbnRlbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgJjo6c2VsZWN0aW9uIHtcclxuICAgICAgQGNvbnRlbnQ7XHJcbiAgICB9XHJcbiAgfSBAZWxzZSB7XHJcbiAgICA6Oi1tb3otc2VsZWN0aW9uIHtcclxuICAgICAgQGNvbnRlbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgOjpzZWxlY3Rpb24ge1xyXG4gICAgICBAY29udGVudDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiXG5odG1sLmpzIHtcblxuICAgIGJvZHkge1xuXG4gICAgICAgIC4jeyRzaXRlLW5hbWVzcGFjZX1zaXRlIHtcblxuICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcblxuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihvcGFjaXR5IDAuNjVzICRlYXNlLWluLW91dC1xdWFkLCB2aXNpYmlsaXR5IDAuNjVzICRlYXNlLWluLW91dC1xdWFkKTtcblxuICAgICAgICB9XG5cbiAgICAgICAgJi4jeyRzaXRlLW5hbWVzcGFjZX1sb2FkZWQge1xuXG4gICAgICAgICAgICAuI3skc2l0ZS1uYW1lc3BhY2V9c2l0ZSB7XG5cbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICB9XG5cbn1cblxuLiN7JHNpdGUtbmFtZXNwYWNlfXNpdGUge1xuXG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgQGluY2x1ZGUgc2l6ZSgxMDAlKTtcbiAgICB0YWJsZS1sYXlvdXQ6IGZpeGVkOyAvLyBWZXJ5IGltcG9ydGFudCBiZWNhdXNlIG9mIHNsaWNrIGNhcm91c2VsISEhXG4gICAgXG59XG5cbi4jeyRzaXRlLW5hbWVzcGFjZX1jb250ZW50IHtcblxuICAgIGhlaWdodDogaW5oZXJpdDtcblxuICAgIHBhZGRpbmctdG9wOiAkaGVhZGVyLWhlaWdodDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGRlc2t0b3Ape1xuXG4gICAgICAgIHBhZGRpbmctdG9wOiAwO1xuXG4gICAgfVxuXG59XG5cbi4jeyRzaXRlLW5hbWVzcGFjZX13cmFwcGVyIHtcblxuICAgIC8vbWF4LXdpZHRoOiBlbSg5MzApO1xuICAgIG1heC13aWR0aDogZW0oMTE3MCk7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgcGFkZGluZy1yaWdodDogZW0oMTYpO1xuICAgIHBhZGRpbmctbGVmdDogZW0oMTYpO1xuXG4gICAgJi4jeyRzaXRlLW5hbWVzcGFjZX13cmFwcGVyLS1hbHRlcm5hdGUge1xuXG4gICAgICAgIG1heC13aWR0aDogZW0oOTMwKTtcblxuICAgIH1cblxufVxuXG4uI3skc2l0ZS1uYW1lc3BhY2V9aXMtbW9iaWxlLXNlbnRpbmVsIHtcblxuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogMDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkZGVza3RvcCl7XG5cbiAgICAgICAgZGlzcGxheTogbm9uZTtcblxuICAgIH1cblxufSIsIlxuLiN7JHNpdGUtbmFtZXNwYWNlfWhlYWRlciB7XG5cbiAgICAvLyBkaXNwbGF5OiB0YWJsZS1yb3c7XG4gICAgLy8gaGVpZ2h0OiAxcHg7XG4gICAgQGluY2x1ZGUgcG9zaXRpb24oZml4ZWQsIDAgbnVsbCBudWxsIDApO1xuICAgIHotaW5kZXg6ICRoZWFkZXItei1pbmRleDtcblxuICAgIHdpZHRoOiAxMDAlO1xuXG59XG5cbi4jeyRzaXRlLW5hbWVzcGFjZX1oZWFkZXItaW5uZXIge1xuXG4gICAgQGluY2x1ZGUgY2xlYXJmaXg7XG5cbiAgICBoZWlnaHQ6ICRoZWFkZXItaGVpZ2h0O1xuXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcblxuICAgIC8vQGluY2x1ZGUgdHJhbnNpdGlvbihiYWNrZ3JvdW5kLWNvbG9yIDAuNjVzICRlYXNlLWluLW91dC1xdWFkKTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGRlc2t0b3Ape1xuXG4gICAgICAgIEBpbmNsdWRlIHNpemUoNTAlICRoZWFkZXItaGVpZ2h0LWRlc2t0b3ApO1xuICAgICAgICBtYXJnaW4tbGVmdDogNTAlO1xuXG4gICAgICAgIC8vYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjsgICAgICAgIFxuXG4gICAgfVxuXG4gICAgLy8gaHRtbC4jeyRzaXRlLW5hbWVzcGFjZX1tYWluLW5hdi1vcGVuICYge1xuXG4gICAgLy8gICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG5cbiAgICAvLyAgICAgLy8gQGluY2x1ZGUgYnJlYWtwb2ludCgkZGVza3RvcCl7XG5cbiAgICAvLyAgICAgLy8gICAgIGJhY2tncm91bmQtY29sb3I6ICRncmVlbjI7XG5cbiAgICAvLyAgICAgLy8gfVxuXG4gICAgLy8gfVxuXG4gICAgLy8gaHRtbC4jeyRzaXRlLW5hbWVzcGFjZX1zZWFyY2gtb3BlbiAmIHtcblxuICAgIC8vICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuXG4gICAgLy8gfVxuXG59XG5cbi4jeyRzaXRlLW5hbWVzcGFjZX1oZWFkZXItYmxvY2sge1xuXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICAgQGluY2x1ZGUgY2xlYXJmaXg7XG5cbiAgICAmOmZpcnN0LWNoaWxkIHtcblxuICAgICAgICBmbG9hdDogbGVmdDtcblxuICAgIH1cblxuICAgICY6bGFzdC1jaGlsZCB7XG5cbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuXG4gICAgfVxuXG59XG5cbi4jeyRzaXRlLW5hbWVzcGFjZX1tYWluLWxvZ28ge1xuXG4gICAgLy8kbWFpbi1sb2dvLXdpZHRoOiAxNjBweDtcbiAgICAvLyRtYWluLWxvZ28taGVpZ2h0OiAyNXB4O1xuICAgICRtYWluLWxvZ28td2lkdGg6IDE3NXB4O1xuICAgICRtYWluLWxvZ28taGVpZ2h0OiAyN3B4O1xuICAgICRtYWluLWxvZ28td2lkdGgtZGVza3RvcDogMjIwcHg7XG4gICAgJG1haW4tbG9nby1oZWlnaHQtZGVza3RvcDogMzVweDtcblxuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIEBpbmNsdWRlIHNpemUoJG1haW4tbG9nby13aWR0aCsyNCAkaGVhZGVyLWhlaWdodCk7XG5cbiAgICBiYWNrZ3JvdW5kOiB7XG4gICAgICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgaW1hZ2U6IHVybCgkaW1hZ2VzLXBhdGggKyAnbWFpbi1sb2dvLnBuZycpO1xuICAgICAgICBwb3NpdGlvbjogNTAlIDUwJTtcbiAgICAgICAgcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIHNpemU6ICRtYWluLWxvZ28td2lkdGggJG1haW4tbG9nby1oZWlnaHQ7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkZGVza3RvcCl7XG5cbiAgICAgICAgQGluY2x1ZGUgc2l6ZSgkbWFpbi1sb2dvLXdpZHRoLWRlc2t0b3ArNDAgJGhlYWRlci1oZWlnaHQtZGVza3RvcCk7XG5cbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAkbWFpbi1sb2dvLXdpZHRoLWRlc2t0b3AgJG1haW4tbG9nby1oZWlnaHQtZGVza3RvcDtcblxuICAgIH1cblxuICAgIHNwYW4ge1xuXG4gICAgICAgIEBleHRlbmQgJXZpc3VhbGx5aGlkZGVuO1xuXG4gICAgfVxuXG59XG5cbiVoZWFkZXItaXRlbSB7XG5cbiAgICAvL3Bvc2l0aW9uOiBmaXhlZDtcbiAgICAvL3RvcDogJGhlYWRlci1oZWlnaHQgKyAyMDtcbiAgICAvL3otaW5kZXg6ICRoZWFkZXItaXRlbS16LWluZGV4O1xuXG4gICAgZGlzcGxheTogbm9uZTtcbiAgICAvL2hlaWdodDogJGhlYWRlci1oZWlnaHQ7XG5cbiAgICAvL29wYWNpdHk6IDA7XG4gICAgLy92aXNpYmlsaXR5OiBoaWRkZW47XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC1oZWFkZXItZGVza3RvcCl7XG5cbiAgICAgICAgLy9wb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIC8vdG9wOiBhdXRvO1xuXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgaGVpZ2h0OiAkaGVhZGVyLWhlaWdodC1kZXNrdG9wO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiBlbSgyMik7XG5cbiAgICAgICAgLy9vcGFjaXR5OiAxO1xuICAgICAgICAvL3Zpc2liaWxpdHk6IHZpc2libGU7XG5cbiAgICB9XG5cbn1cblxuJWhlYWRlci1pdGVtLWlubmVyIHtcblxuICAgIGxpbmUtaGVpZ2h0OiAkaGVhZGVyLWhlaWdodDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkZGVza3RvcCl7XG5cbiAgICAgICAgbGluZS1oZWlnaHQ6ICRoZWFkZXItaGVpZ2h0LWRlc2t0b3A7XG5cbiAgICB9XG5cbn1cblxuLiN7JHNpdGUtbmFtZXNwYWNlfWxpdmUtdHJpZ2dlci13cmFwcGVyIHtcblxuICAgIEBleHRlbmQgJWhlYWRlci1pdGVtO1xuXG4gICAgJi5wbjE2LWNsb25lZCB7XG5cbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICB0b3A6ICRoZWFkZXItaGVpZ2h0ICsgMjBweDtcbiAgICAgICAgbGVmdDogMDsgICAgICAgIFxuXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDIwcHg7XG4gICAgICAgIFxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGRlc2t0b3Ape1xuXG4gICAgICAgICAgICBsZWZ0OiA1MCU7ICAgICAgICAgICBcblxuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtaGVhZGVyLWRlc2t0b3Ape1xuXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgICAgIH1cblxuICAgIH1cblxuICAgIC8vIGxlZnQ6IDIwcHg7XG5cbiAgICAvLyBodG1sLiN7JHNpdGUtbmFtZXNwYWNlfW1haW4tbmF2LW9wZW4gJiB7XG5cbiAgICAvLyAgICAgb3BhY2l0eTogMTtcbiAgICAvLyAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcblxuICAgIC8vIH1cblxuICAgIC8vIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGRlc2t0b3Ape1xuXG4gICAgLy8gICAgIGxlZnQ6IGF1dG87XG5cbiAgICAvLyB9XG5cbiAgICAuI3skc2l0ZS1uYW1lc3BhY2V9bGl2ZS10cmlnZ2VyIHtcblxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGhlaWdodDogaW5oZXJpdDtcblxuICAgICAgICBAZXh0ZW5kICVoZWFkZXItaXRlbS1pbm5lcjtcblxuICAgICAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICAgICAgZm9udDoge1xuICAgICAgICAgICAgZmFtaWx5OiAkYnJhbmRvbmdyb3Rlc3F1ZTtcbiAgICAgICAgICAgIHdlaWdodDogNTAwO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIHJlbSgnZm9udC1zaXplJywgMTRweCk7XG4gICAgICAgIHRleHQ6IHtcbiAgICAgICAgICAgIGRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC1oZWFkZXItZGVza3RvcCl7XG5cbiAgICAgICAgICAgIGNvbG9yOiAkZ3JlZW4xO1xuXG4gICAgICAgIH1cblxuICAgICAgICAvLyBzcGFuIHtcblxuICAgICAgICAvLyAgICAgZGlzcGxheTogaW5saW5lO1xuXG4gICAgICAgIC8vICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRkZXNrdG9wKXtcblxuICAgICAgICAvLyAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgICAgLy8gICAgIH1cblxuICAgICAgICAvLyB9XG5cbiAgICAgICAgLy8gaHRtbC4jeyRzaXRlLW5hbWVzcGFjZX1tYWluLW5hdi1vcGVuICYge1xuXG4gICAgICAgIC8vICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRkZXNrdG9wKXtcblxuICAgICAgICAvLyAgICAgICAgIGNvbG9yOiAjZmZmZmZmO1xuXG4gICAgICAgIC8vICAgICB9XG5cbiAgICAgICAgLy8gfVxuXG4gICAgICAgIGh0bWwubm8tdG91Y2ggJiB7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oY29sb3IgMC42NXMgJGVhc2UtaW4tb3V0LXF1YWQpO1xuXG4gICAgICAgICAgICAmOmhvdmVyIHtcblxuICAgICAgICAgICAgICAgIGNvbG9yOiAkYnJvd247XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICB9XG5cbn1cblxuLiN7JHNpdGUtbmFtZXNwYWNlfWxhbmd1YWdlLXdyYXBwZXIge1xuXG4gICAgQGV4dGVuZCAlaGVhZGVyLWl0ZW07XG5cbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAmLnBuMTYtY2xvbmVkIHtcblxuICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgIHRvcDogJGhlYWRlci1oZWlnaHQgKyAyMHB4O1xuICAgICAgICByaWdodDogMjBweDtcblxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtaGVhZGVyLWRlc2t0b3Ape1xuXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgICAgIH1cblxuICAgIH1cblxuICAgIC8vcmlnaHQ6IDIwcHg7XG5cbiAgICAvLyBodG1sLiN7JHNpdGUtbmFtZXNwYWNlfW1haW4tbmF2LW9wZW4gJiB7XG5cbiAgICAvLyAgICAgb3BhY2l0eTogMTtcbiAgICAvLyAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcblxuICAgIC8vIH1cblxuICAgIC8vIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGRlc2t0b3Ape1xuXG4gICAgLy8gICAgIHJpZ2h0OiBhdXRvO1xuXG4gICAgLy8gfVxuXG4gICAgLiN7JHNpdGUtbmFtZXNwYWNlfWxhbmd1YWdlLXRvZ2dsZXIge1xuXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgaGVpZ2h0OiBpbmhlcml0O1xuXG4gICAgICAgIEBleHRlbmQgJWhlYWRlci1pdGVtLWlubmVyO1xuXG4gICAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgICBmb250OiB7XG4gICAgICAgICAgICBmYW1pbHk6ICRicmFuZG9uZ3JvdGVzcXVlO1xuICAgICAgICAgICAgd2VpZ2h0OiA1MDA7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgcmVtKCdmb250LXNpemUnLCAxNHB4KTtcbiAgICAgICAgdGV4dDoge1xuICAgICAgICAgICAgZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6YWZ0ZXIge1xuXG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogNnB4O1xuXG4gICAgICAgICAgICBmb250LWZhbWlseTogJGljb24tZm9udDtcbiAgICAgICAgICAgIEBpbmNsdWRlIHJlbSgnZm9udC1zaXplJywgMTRweCk7XG5cbiAgICAgICAgICAgIC8vY29udGVudDogJ1xcZjA3OCc7XG4gICAgICAgICAgICBAZXh0ZW5kICVpY29uLWFycm93LWRvd247XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24odHJhbnNmb3JtIDAuNDVzICRlYXNlLWluLW91dC1xdWFkKTtcblxuICAgICAgICAgICAgaHRtbC4jeyRzaXRlLW5hbWVzcGFjZX1sYW5ndWFnZS1vcGVuICYge1xuXG4gICAgICAgICAgICAgICAgLy9jb250ZW50OiAnXFxmMDc3JztcbiAgICAgICAgICAgICAgICAvL0BleHRlbmQgJWljb24tYXJyb3ctdXA7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0ocm90YXRlKC0xODBkZWcpKTtcblxuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC1oZWFkZXItZGVza3RvcCl7XG5cbiAgICAgICAgICAgIGNvbG9yOiAkZ3JlZW4xO1xuXG4gICAgICAgIH1cblxuICAgICAgICAvLyBodG1sLiN7JHNpdGUtbmFtZXNwYWNlfW1haW4tbmF2LW9wZW4gJiB7XG5cbiAgICAgICAgLy8gICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGRlc2t0b3Ape1xuXG4gICAgICAgIC8vICAgICAgICAgY29sb3I6ICNmZmZmZmY7XG5cbiAgICAgICAgLy8gICAgIH1cblxuICAgICAgICAvLyB9XG5cbiAgICAgICAgaHRtbC5uby10b3VjaCAmIHtcblxuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihjb2xvciAwLjY1cyAkZWFzZS1pbi1vdXQtcXVhZCk7XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuXG4gICAgICAgICAgICAgICAgY29sb3I6ICRicm93bjtcblxuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgfVxuXG4gICAgLiN7JHNpdGUtbmFtZXNwYWNlfWxhbmd1YWdlIHtcblxuICAgICAgICBAaW5jbHVkZSBwb3NpdGlvbihhYnNvbHV0ZSwgJGhlYWRlci1oZWlnaHQgbnVsbCBudWxsIC00MHB4KTtcbiAgICAgICAgei1pbmRleDogJGxhbmd1YWdlLW5hdi16LWluZGV4O1xuXG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcblxuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKG9wYWNpdHkgMC42NXMgJGVhc2UtaW4tb3V0LXF1YWQsIHZpc2liaWxpdHkgMC42NXMgJGVhc2UtaW4tb3V0LXF1YWQpO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLWhlYWRlci1kZXNrdG9wKXtcblxuICAgICAgICAgICAgdG9wOiAkaGVhZGVyLWhlaWdodC1kZXNrdG9wIC0gODtcblxuICAgICAgICB9XG5cbiAgICAgICAgaHRtbC4jeyRzaXRlLW5hbWVzcGFjZX1sYW5ndWFnZS1vcGVuICYge1xuXG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcblxuICAgICAgICB9XG5cbiAgICAgICAgdWwge1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBiYXNlLWxpc3Q7XG5cbiAgICAgICAgICAgIGZvbnQ6IHtcbiAgICAgICAgICAgICAgICBmYW1pbHk6ICRicmFuZG9uZ3JvdGVzcXVlO1xuICAgICAgICAgICAgICAgIHdlaWdodDogNTAwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQGluY2x1ZGUgcmVtKCdmb250LXNpemUnLCAxNHB4KTtcblxuICAgICAgICB9XG5cbiAgICAgICAgbGkge1xuXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgfVxuXG4gICAgICAgIGEge1xuXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIEBpbmNsdWRlIHNpemUoOTBweCAzNXB4KTtcblxuICAgICAgICAgICAgY29sb3I6ICNmZmZmZmY7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMzVweDtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7ICAgICBcblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtaGVhZGVyLWRlc2t0b3Ape1xuXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdyZWVuMjtcblxuICAgICAgICAgICAgfSAgICAgICBcblxuICAgICAgICAgICAgaHRtbC5uby10b3VjaCAmIHtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oY29sb3IgMC42NXMgJGVhc2UtaW4tb3V0LXF1YWQsIGJhY2tncm91bmQtY29sb3IgMC42NXMgJGVhc2UtaW4tb3V0LXF1YWQpO1xuXG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG5cbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRicm93bjtcblxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC1oZWFkZXItZGVza3RvcCl7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkZ3JlZW4yO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJvd247XG5cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgfVxuXG59XG5cbi4jeyRzaXRlLW5hbWVzcGFjZX1zZWFyY2gtd3JhcHBlciB7XG4gICAgXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGhlaWdodDogJGhlYWRlci1oZWlnaHQ7XG4gICAgLy9wYWRkaW5nLXJpZ2h0OiBlbSgxNSk7XG4gICAgcGFkZGluZy1yaWdodDogZW0oOSk7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRkZXNrdG9wKXtcblxuICAgICAgICBoZWlnaHQ6ICRoZWFkZXItaGVpZ2h0LWRlc2t0b3A7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IGVtKDIyKTtcblxuICAgIH1cblxuICAgIC4jeyRzaXRlLW5hbWVzcGFjZX1zZWFyY2gtdG9nZ2xlciB7XG5cbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBtaW4td2lkdGg6IDE3cHg7XG4gICAgICAgIGhlaWdodDogaW5oZXJpdDtcblxuICAgICAgICBAZXh0ZW5kICVoZWFkZXItaXRlbS1pbm5lcjtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wOyAgICAgICBcblxuICAgICAgICA+IHNwYW4ge1xuXG4gICAgICAgICAgICBAZXh0ZW5kICV2aXN1YWxseWhpZGRlbjtcblxuICAgICAgICB9XG5cbiAgICAgICAgJjpiZWZvcmUge1xuXG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgICAgICAgICAgIGNvbG9yOiAkZ3JlZW4xO1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRpY29uLWZvbnQ7XG4gICAgICAgICAgICBAaW5jbHVkZSByZW0oJ2ZvbnQtc2l6ZScsIDE4cHgpO1xuXG4gICAgICAgICAgICAvL2NvbnRlbnQ6ICdcXGYwMDInO1xuICAgICAgICAgICAgQGV4dGVuZCAlaWNvbi1tYWduaWZpZXI7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybShzY2FsZVgoLTEpKTtcblxuICAgICAgICAgICAgLy8gQGluY2x1ZGUgYnJlYWtwb2ludCgkZGVza3RvcCl7XG5cbiAgICAgICAgICAgIC8vICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGNvbG9yIDAuNjVzICRlYXNlLWluLW91dC1xdWFkKTtcblxuICAgICAgICAgICAgLy8gfVxuXG4gICAgICAgICAgICAvLyBodG1sLiN7JHNpdGUtbmFtZXNwYWNlfW1haW4tbmF2LW9wZW4gJiB7XG5cbiAgICAgICAgICAgIC8vICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRkZXNrdG9wKXtcblxuICAgICAgICAgICAgLy8gICAgICAgICBjb2xvcjogI2ZmZmZmZjtcblxuICAgICAgICAgICAgLy8gICAgIH1cblxuICAgICAgICAgICAgLy8gfVxuXG4gICAgICAgICAgICBodG1sLiN7JHNpdGUtbmFtZXNwYWNlfXNlYXJjaC1vcGVuICYge1xuXG4gICAgICAgICAgICAgICAgY29sb3I6ICRicm93bjtcblxuICAgICAgICAgICAgICAgIEBleHRlbmQgJWljb24tY2xvc2U7XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgaHRtbC5uby10b3VjaCAmIHtcblxuICAgICAgICAgICAgJjpiZWZvcmUge1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihjb2xvciAwLjY1cyAkZWFzZS1pbi1vdXQtcXVhZCk7XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpob3ZlciB7XG5cbiAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG5cbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRicm93bjtcblxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgIH1cblxufVxuXG5cbi4jeyRzaXRlLW5hbWVzcGFjZX1tYWluLW5hdi13cmFwcGVyIHtcblxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBoZWlnaHQ6ICRoZWFkZXItaGVpZ2h0O1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkZGVza3RvcCl7XG5cbiAgICAgICAgaGVpZ2h0OiAkaGVhZGVyLWhlaWdodC1kZXNrdG9wO1xuXG4gICAgfVxuXG59XG5cbi4jeyRzaXRlLW5hbWVzcGFjZX1tYWluLW5hdi10b2dnbGVyIHtcblxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBoZWlnaHQ6ICRoZWFkZXItaGVpZ2h0O1xuICAgIC8vbWluLXdpZHRoOiA5NXB4O1xuICAgIC8vcGFkZGluZy1yaWdodDogMjBweDtcbiAgICAvL3BhZGRpbmctbGVmdDogMjBweDtcbiAgICBtaW4td2lkdGg6IDc5cHg7XG4gICAgcGFkZGluZy1yaWdodDogMTJweDtcbiAgICBwYWRkaW5nLWxlZnQ6IDEycHg7XG5cbiAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICBAaW5jbHVkZSByZW0oJ2ZvbnQtc2l6ZScsIDE1cHgpO1xuICAgIGZvbnQ6IHtcbiAgICAgICAgZmFtaWx5OiAkYnJhbmRvbmdyb3Rlc3F1ZTtcbiAgICAgICAgd2VpZ2h0OiA1MDA7XG4gICAgfVxuICAgIGxpbmUtaGVpZ2h0OiAkaGVhZGVyLWhlaWdodDtcbiAgICB0ZXh0OiB7XG4gICAgICAgIGFsaWduOiBjZW50ZXI7XG4gICAgICAgIGRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIHRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIH1cbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGdyZWVuMjtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGRlc2t0b3Ape1xuXG4gICAgICAgIGhlaWdodDogJGhlYWRlci1oZWlnaHQtZGVza3RvcDtcblxuICAgICAgICBsaW5lLWhlaWdodDogJGhlYWRlci1oZWlnaHQtZGVza3RvcDtcblxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLWhlYWRlci1uYXYtdG9nZ2xlcil7XG5cbiAgICAgICAgbWluLXdpZHRoOiAxMTVweDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMzBweDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuXG4gICAgfVxuXG4gICAgaHRtbC5uby10b3VjaCAmIHtcblxuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGNvbG9yIDAuNjVzICRlYXNlLWluLW91dC1xdWFkKTtcblxuICAgICAgICAmOmhvdmVyIHtcblxuICAgICAgICAgICAgY29sb3I6ICRicm93bjtcblxuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICBzcGFuIHtcblxuICAgICAgICAmLiN7JHNpdGUtbmFtZXNwYWNlfWRlZmF1bHQge1xuXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgICAgICAgaHRtbC4jeyRzaXRlLW5hbWVzcGFjZX1tYWluLW5hdi1vcGVuICYge1xuXG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcblxuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICAmLiN7JHNpdGUtbmFtZXNwYWNlfWFsdGVybmF0ZSB7XG5cbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgICAgICAgIGh0bWwuI3skc2l0ZS1uYW1lc3BhY2V9bWFpbi1uYXYtb3BlbiAmIHtcblxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBcbiAgICAgICAgfVxuXG4gICAgfVxuXG59XG5cbi4jeyRzaXRlLW5hbWVzcGFjZX1tYWluLW5hdiwgLiN7JHNpdGUtbmFtZXNwYWNlfXNlYXJjaCB7XG5cbiAgICBAaW5jbHVkZSBwb3NpdGlvbihmaXhlZCwgJGhlYWRlci1oZWlnaHQgMCAwIG51bGwpO1xuICAgIHotaW5kZXg6ICRtYWluLW5hdi16LWluZGV4O1xuXG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG5cbiAgICBvcGFjaXR5OiAwO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcblxuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24ob3BhY2l0eSAwLjY1cyAkZWFzZS1pbi1vdXQtcXVhZCwgdmlzaWJpbGl0eSAwLjY1cyAkZWFzZS1pbi1vdXQtcXVhZCk7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRkZXNrdG9wKXtcblxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiA4JTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiA4JTtcblxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGRlc2t0b3Ape1xuXG4gICAgICAgIHRvcDogJGhlYWRlci1oZWlnaHQtZGVza3RvcDtcblxuICAgICAgICB3aWR0aDogNTAlO1xuXG4gICAgfVxuXG59XG5cbi4jeyRzaXRlLW5hbWVzcGFjZX1tYWluLW5hdiB7XG5cbiAgICBwYWRkaW5nLXRvcDogZW0oODApO1xuICAgIC8vcGFkZGluZy1ib3R0b206IGVtKDI1KTtcblxuICAgIGJhY2tncm91bmQtY29sb3I6ICRncmVlbjI7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRkZXNrdG9wKXtcblxuICAgICAgICBwYWRkaW5nLXRvcDogZW0oNzUpO1xuICAgICAgICAvL3BhZGRpbmctYm90dG9tOiBlbSg3NSk7XG5cbiAgICB9XG5cbiAgICBodG1sLiN7JHNpdGUtbmFtZXNwYWNlfW1haW4tbmF2LW9wZW4gJiB7XG5cbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcblxuICAgIH1cblxuICAgIC4jeyRzaXRlLW5hbWVzcGFjZX1tYWluLW5hdl9faW5uZXIge1xuXG4gICAgICAgIGhlaWdodDogMTAwJTtcblxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgICAgICAvLy13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRkZXNrdG9wKXtcblxuICAgICAgICAgICAgJjo6LXdlYmtpdC1zY3JvbGxiYXIgeyBcblxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7IFxuICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgfSAgICBcblxuICAgICAgICB9ICAgIFxuXG4gICAgfVxuXG4gICAgLiN7JHNpdGUtbmFtZXNwYWNlfW1haW4tbmF2X19tZW51IHtcblxuICAgICAgICB1bCB7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJhc2UtbGlzdDtcblxuICAgICAgICB9XG5cbiAgICAgICAgbGkge1xuXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiBlbSgyKTtcblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkZGVza3RvcCl7XG5cbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiBlbSg1KTtcblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcblxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgYSB7XG5cbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgcGFkZGluZzogZW0oMykgMDtcblxuICAgICAgICAgICAgY29sb3I6ICNmZmZmZmY7XG4gICAgICAgICAgICBmb250LWZhbWlseTogJHBsYXlmYWlyZGlzcGxheTtcbiAgICAgICAgICAgIEBpbmNsdWRlIHJlbSgnZm9udC1zaXplJywgMzBweCk7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGRlc2t0b3Ape1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcmVtKCdmb250LXNpemUnLCA0MHB4KTtcblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBodG1sLm5vLXRvdWNoICYge1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihjb2xvciAwLjY1cyAkZWFzZS1pbi1vdXQtcXVhZCk7XG5cbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcblxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJyb3duO1xuXG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgfSAgXG5cbn1cblxuLiN7JHNpdGUtbmFtZXNwYWNlfW1haW4tbmF2LWluZm8ge1xuXG4gICAgbWFyZ2luLXRvcDogNDBweDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGRlc2t0b3Ape1xuXG4gICAgICAgIG1hcmdpbi10b3A6IDc1cHg7XG5cbiAgICB9XG5cbiAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRkZXNrdG9wKXtcblxuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuXG4gICAgfVxuXG4gICAgcCB7XG5cbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbjogMDtcblxuICAgICAgICBmb250OiB7XG4gICAgICAgICAgICBmYW1pbHk6ICRwbGF5ZmFpcmRpc3BsYXk7XG4gICAgICAgICAgICBzdHlsZTogaXRhbGljO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIHJlbSgnZm9udC1zaXplJywgMTVweCk7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkZGVza3RvcCl7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIHJlbSgnZm9udC1zaXplJywgMThweCk7XG5cbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgLiN7JHNpdGUtbmFtZXNwYWNlfW1haW4tbmF2LWluZm9fX2xvZ28ge1xuXG4gICAgICAgIEBpbmNsdWRlIHNpemUoOTBweCAyMHB4KTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBtYXJnaW4tdG9wOiAxNXB4O1xuXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICAgICBiYWNrZ3JvdW5kOiB7XG4gICAgICAgICAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBpbWFnZTogdXJsKCRpbWFnZXMtcGF0aCArICdhbHRlcm5hdGUtbG9nby0yLnBuZycpO1xuICAgICAgICAgICAgcG9zaXRpb246IDUwJSA1MCU7XG4gICAgICAgICAgICByZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgICAgIHNpemU6IGNvdmVyO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkZGVza3RvcCl7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIHNpemUoMTUxcHggMzRweCk7XG5cbiAgICAgICAgfVxuXG4gICAgICAgIHNwYW4ge1xuXG4gICAgICAgICAgICBAZXh0ZW5kICV2aXN1YWxseWhpZGRlbjtcblxuICAgICAgICB9XG5cbiAgICB9XG5cbn1cblxuLiN7JHNpdGUtbmFtZXNwYWNlfW1haW4tbmF2LXNvY2lhbHMge1xuXG4gICAgbWFyZ2luLXRvcDogMjBweDtcblxuICAgIEBpbmNsdWRlIHJlbSgnZm9udC1zaXplJywgMTdweCk7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC1mb290ZXItZGVza3RvcCkge1xuXG4gICAgICAgIG1hcmdpbi10b3A6IDQwcHg7XG5cbiAgICB9XG5cbiAgICB1bCB7XG5cbiAgICAgICAgQGluY2x1ZGUgYmFzZS1saXN0O1xuXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC1mb290ZXItZGVza3RvcCkge1xuXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogLTVweDtcblxuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcblxuICAgICAgICB9ICAgICAgICBcblxuICAgIH1cblxuICAgIGxpIHtcblxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDNweDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAzcHg7XG5cbiAgICB9XG5cbiAgICBhIHtcblxuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcGFkZGluZzogNXB4IDNweDtcblxuICAgICAgICBjb2xvcjogJGJyb3duO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICAgICAgaHRtbC5uby10b3VjaCAmIHtcblxuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihjb2xvciAwLjg1cyAkZWFzZS1pbi1vdXQtcXVhZCk7XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuXG4gICAgICAgICAgICAgICAgY29sb3I6ICNmZmZmZmY7XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICB9XG5cbn1cblxuLy8gLiN7JHNpdGUtbmFtZXNwYWNlfW1haW4tbmF2LWZpeCwgLiN7JHNpdGUtbmFtZXNwYWNlfXNlYXJjaC1maXgge1xuXG4vLyAgICAgQGluY2x1ZGUgcG9zaXRpb24oZml4ZWQsIDAgMCAwIDApO1xuLy8gICAgIHotaW5kZXg6ICRtYWluLW5hdi1maXgtei1pbmRleDtcblxuLy8gICAgIEBpbmNsdWRlIHNpemUoMTAwJSk7XG5cbi8vICAgICBvcGFjaXR5OiAwO1xuLy8gICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcblxuLy8gICAgIEBpbmNsdWRlIHRyYW5zaXRpb24ob3BhY2l0eSAwLjY1cyAkZWFzZS1pbi1vdXQtcXVhZCwgdmlzaWJpbGl0eSAwLjY1cyAkZWFzZS1pbi1vdXQtcXVhZCk7XG5cbi8vICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRkZXNrdG9wKXtcblxuLy8gICAgICAgICBkaXNwbGF5OiBub25lO1xuLy8gICAgICAgICBAaW5jbHVkZSBzaXplKDApO1xuXG4vLyAgICAgfVxuXG4vLyB9XG5cbi8vIC4jeyRzaXRlLW5hbWVzcGFjZX1tYWluLW5hdi1maXgge1xuXG4vLyAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdyZWVuMTtcblxuLy8gICAgIGh0bWwuI3skc2l0ZS1uYW1lc3BhY2V9bWFpbi1uYXYtb3BlbiAmIHtcblxuLy8gICAgICAgICBvcGFjaXR5OiAxO1xuLy8gICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuXG4vLyAgICAgfVxuXG4vLyB9XG5cbi8vIC4jeyRzaXRlLW5hbWVzcGFjZX1zZWFyY2gtZml4IHtcblxuLy8gICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG5cbi8vICAgICBodG1sLiN7JHNpdGUtbmFtZXNwYWNlfXNlYXJjaC1vcGVuICYge1xuXG4vLyAgICAgICAgIG9wYWNpdHk6IDE7XG4vLyAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG5cbi8vICAgICB9XG5cbi8vIH1cblxuIiwiXG4uI3skc2l0ZS1uYW1lc3BhY2V9Zm9vdGVyIHtcblxuICAgIGRpc3BsYXk6IHRhYmxlLXJvdztcbiAgICBoZWlnaHQ6IDFweDtcblxuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24ob3BhY2l0eSAwLjY1cyAkZWFzZS1pbi1vdXQtcXVhZCwgdmlzaWJpbGl0eSAwLjY1cyAkZWFzZS1pbi1vdXQtcXVhZCk7XG5cbiAgICBodG1sLiN7JHNpdGUtbmFtZXNwYWNlfW1haW4tbmF2LW9wZW4gJiB7XG5cbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuXG4gICAgfVxuXG4gICAgaHRtbC4jeyRzaXRlLW5hbWVzcGFjZX1zZWFyY2gtb3BlbiAmIHtcblxuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG5cbiAgICB9XG5cbn1cblxuLiN7JHNpdGUtbmFtZXNwYWNlfWZvb3Rlci1pdGVtIHtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLWZvb3Rlci1kZXNrdG9wKXtcblxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICAmOmxhc3Qtb2YtdHlwZSB7XG5cbiAgICAgICAgICAgIGZsb2F0OiByaWdodDtcblxuICAgICAgICB9XG5cbiAgICAgICAgJi5ub2Z1bGwge1xuICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIH1cblxuICAgIH1cblxufVxuXG4lZm9vdGVyLWJsb2NrIHtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLWZvb3Rlci1kZXNrdG9wKXtcblxuICAgICAgICBAaW5jbHVkZSBjbGVhcmZpeDtcblxuICAgIH1cblxufVxuXG4uI3skc2l0ZS1uYW1lc3BhY2V9Zm9vdGVyLXByaW1hcnkge1xuXG4gICAgQGV4dGVuZCAlZm9vdGVyLWJsb2NrO1xuXG4gICAgcGFkZGluZy10b3A6IDI2cHg7XG4gICAgcGFkZGluZy1ib3R0b206IDI2cHg7XG5cbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JlZW4yO1xuXG59XG5cbi4jeyRzaXRlLW5hbWVzcGFjZX1mb290ZXItc2Vjb25kYXJ5IHtcblxuICAgIEBleHRlbmQgJWZvb3Rlci1ibG9jaztcblxuICAgIHBhZGRpbmctdG9wOiAyMnB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAyMnB4O1xuXG59XG5cbi4jeyRzaXRlLW5hbWVzcGFjZX1mb290ZXItcHJpbWFyeS1uYXYge1xuXG4gICAgZGlzcGxheTogbm9uZTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLWZvb3Rlci1kZXNrdG9wKXtcblxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHBhZGRpbmctdG9wOiAzcHg7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgfVxuXG4gICAgdWwge1xuXG4gICAgICAgIEBpbmNsdWRlIGJhc2UtbGlzdDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcblxuICAgIH1cblxuICAgIGxpIHtcblxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDIycHg7XG5cbiAgICAgICAgJjpiZWZvcmUge1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBwb3NpdGlvbihhYnNvbHV0ZSwgMCBudWxsIG51bGwgNnB4KTtcblxuICAgICAgICAgICAgY29sb3I6ICRicm93bjtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcblxuICAgICAgICAgICAgY29udGVudDogJ+KAoic7XG5cbiAgICAgICAgfVxuXG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xuXG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG5cbiAgICAgICAgICAgICY6YmVmb3JlIHtcblxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICBhIHtcblxuICAgICAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICBmb250LWZhbWlseTogJHBsYXlmYWlyZGlzcGxheTtcbiAgICAgICAgQGluY2x1ZGUgcmVtKCdmb250LXNpemUnLCAxNnB4KTtcblxuICAgICAgICBodG1sLm5vLXRvdWNoICYge1xuXG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGNvbG9yIDAuODVzICRlYXNlLWluLW91dC1xdWFkKTtcblxuICAgICAgICAgICAgJjpob3ZlciB7XG5cbiAgICAgICAgICAgICAgICBjb2xvcjogJGJyb3duO1xuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgfVxuXG59XG5cbi4jeyRzaXRlLW5hbWVzcGFjZX1mb290ZXItY3JlZGl0cyB7XG5cbiAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC1mb290ZXItZGVza3RvcCl7XG5cbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgfVxuXG4gICAgcCB7XG5cbiAgICAgICAgbWFyZ2luOiAwO1xuXG4gICAgICAgIGZvbnQ6IHtcbiAgICAgICAgICAgIGZhbWlseTogJHBsYXlmYWlyZGlzcGxheTtcbiAgICAgICAgICAgIHN0eWxlOiBpdGFsaWM7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgcmVtKCdmb250LXNpemUnLCAxNXB4KTtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC1mb290ZXItZGVza3RvcCl7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIHJlbSgnZm9udC1zaXplJywgMTRweCk7XG5cbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcblxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogOHB4O1xuXG4gICAgICAgIH1cblxuICAgIH1cblxuICAgIC4jeyRzaXRlLW5hbWVzcGFjZX1mb290ZXItY3JlZGl0c19fbG9nbyB7XG5cbiAgICAgICAgLy9AaW5jbHVkZSBzaXplKDkwcHggMjBweCk7XG4gICAgICAgIEBpbmNsdWRlIHNpemUoMTAwcHggMjNweCk7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbWFyZ2luOiAxMnB4IGF1dG8gMCBhdXRvO1xuXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICAgICBiYWNrZ3JvdW5kOiB7XG4gICAgICAgICAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBpbWFnZTogdXJsKCRpbWFnZXMtcGF0aCArICdhbHRlcm5hdGUtbG9nby0yLnBuZycpO1xuICAgICAgICAgICAgcG9zaXRpb246IDUwJSA1MCU7XG4gICAgICAgICAgICByZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgICAgIHNpemU6IGNvbnRhaW47XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC1mb290ZXItZGVza3RvcCl7XG5cbiAgICAgICAgICAgIC8vQGluY2x1ZGUgc2l6ZSgxMDVweCAyM3B4KTtcbiAgICAgICAgICAgIEBpbmNsdWRlIHNpemUoMTYycHggMzdweCk7XG4gICAgICAgICAgICBtYXJnaW46IDAgMCAwIDEzcHg7XG5cbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cbiAgICAgICAgfVxuXG4gICAgICAgIHNwYW4ge1xuXG4gICAgICAgICAgICBAZXh0ZW5kICV2aXN1YWxseWhpZGRlbjtcblxuICAgICAgICB9XG5cbiAgICB9XG5cbn1cblxuLiN7JHNpdGUtbmFtZXNwYWNlfWZvb3Rlci1zZWNvbmRhcnktbmF2IHtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLWZvb3Rlci1kZXNrdG9wKXtcblxuICAgICAgICBwYWRkaW5nLXRvcDogM3B4O1xuXG4gICAgfVxuXG4gICAgZm9udDoge1xuICAgICAgICBmYW1pbHk6ICRicmFuZG9uZ3JvdGVzcXVlO1xuICAgICAgICB3ZWlnaHQ6IDUwMDtcbiAgICB9XG4gICAgQGluY2x1ZGUgcmVtKCdmb250LXNpemUnLCAxMnB4KTtcbiAgICB0ZXh0OiB7XG4gICAgICAgIGFsaWduOiBjZW50ZXI7XG4gICAgICAgIHRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIH1cblxuICAgIHAsIG5hdiB7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtZm9vdGVyLWRlc2t0b3Ape1xuXG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgcCB7XG5cbiAgICAgICAgbWFyZ2luOiAwO1xuXG4gICAgfVxuXG4gICAgdWwge1xuXG4gICAgICAgIEBpbmNsdWRlIGJhc2UtbGlzdDtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC1mb290ZXItZGVza3RvcCl7XG5cbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAgICAgICB9XG5cbiAgICAgICAgbGkge1xuXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMTVweDtcblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtZm9vdGVyLWRlc2t0b3Ape1xuXG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAyNXB4O1xuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6YmVmb3JlIHtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHBvc2l0aW9uKGFic29sdXRlLCAwIG51bGwgbnVsbCA0cHgpOyAgICAgICAgICAgICAgICBcblxuICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcmVtKCdmb250LXNpemUnLCAxNXB4KTtcblxuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICfigKInO1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtZm9vdGVyLWRlc2t0b3Ape1xuXG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDEwcHg7XG5cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG5cbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC1mb290ZXItZGVza3RvcCl7XG5cbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAyNXB4O1xuXG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtZm9vdGVyLWRlc2t0b3Ape1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgcCwgYSB7XG5cbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBwYWRkaW5nOiAzcHggMDtcblxuICAgICAgICBjb2xvcjogJGJyb3duO1xuXG4gICAgfVxuXG4gICAgYSB7ICAgICAgICBcbiAgICAgICAgXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgICAgICAgIFxuXG4gICAgICAgIGh0bWwubm8tdG91Y2ggJiB7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oY29sb3IgMC44NXMgJGVhc2UtaW4tb3V0LXF1YWQpO1xuXG4gICAgICAgICAgICAmOmhvdmVyIHtcblxuICAgICAgICAgICAgICAgIGNvbG9yOiAkZ3JlZW4yO1xuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgfVxuXG59XG5cbi4jeyRzaXRlLW5hbWVzcGFjZX1mb290ZXItc29jaWFscyB7XG5cbiAgICBwYWRkaW5nLXRvcDogMjBweDtcblxuICAgIEBpbmNsdWRlIHJlbSgnZm9udC1zaXplJywgMTdweCk7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC1mb290ZXItZGVza3RvcCkge1xuXG4gICAgICAgIHBhZGRpbmctdG9wOiAwO1xuXG4gICAgfVxuXG4gICAgdWwge1xuXG4gICAgICAgIEBpbmNsdWRlIGJhc2UtbGlzdDtcblxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtZm9vdGVyLWRlc2t0b3ApIHtcblxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtM3B4O1xuXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuXG4gICAgICAgIH0gICAgICAgIFxuXG4gICAgfVxuXG4gICAgbGkge1xuXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgcGFkZGluZy1yaWdodDogM3B4O1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDNweDtcblxuICAgIH1cblxuICAgIGEge1xuXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwYWRkaW5nOiA1cHggM3B4O1xuXG4gICAgICAgIGNvbG9yOiAkYnJvd247XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICAgICBodG1sLm5vLXRvdWNoICYge1xuXG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGNvbG9yIDAuODVzICRlYXNlLWluLW91dC1xdWFkKTtcblxuICAgICAgICAgICAgJjpob3ZlciB7XG5cbiAgICAgICAgICAgICAgICBjb2xvcjogJGdyZWVuMjtcblxuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgIH1cblxufVxuXG4vLyAuI3skc2l0ZS1uYW1lc3BhY2V9Zm9vdGVyLW5hdiB7XG5cbi8vICAgICBwYWRkaW5nOiAyNXB4IDA7XG5cbi8vICAgICBmb250OiB7XG4vLyAgICAgICAgIGZhbWlseTogJGJyYW5kb25ncm90ZXNxdWU7XG4vLyAgICAgICAgIHdlaWdodDogNTAwO1xuLy8gICAgIH1cbi8vICAgICBAaW5jbHVkZSByZW0oJ2ZvbnQtc2l6ZScsIDEycHgpO1xuLy8gICAgIHRleHQ6IHtcbi8vICAgICAgICAgYWxpZ246IGNlbnRlcjtcbi8vICAgICAgICAgdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4vLyAgICAgfVxuXG4vLyAgICAgcCwgbmF2IHtcblxuLy8gICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRkZXNrdG9wKXtcblxuLy8gICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4vLyAgICAgICAgIH1cblxuLy8gICAgIH1cblxuLy8gICAgIHAge1xuXG4vLyAgICAgICAgIG1hcmdpbjogMCAwIDVweCAwO1xuXG4vLyAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGRlc2t0b3Ape1xuXG4vLyAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4vLyAgICAgICAgIH1cblxuLy8gICAgIH1cblxuLy8gICAgIHVsIHtcblxuLy8gICAgICAgICBAaW5jbHVkZSBiYXNlLWxpc3Q7XG5cbi8vICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkZGVza3RvcCl7XG5cbi8vICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuLy8gICAgICAgICB9XG5cbi8vICAgICAgICAgbGkge1xuXG4vLyAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbi8vICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbi8vICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMjVweDtcblxuLy8gICAgICAgICAgICAgJjpiZWZvcmUge1xuXG4vLyAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcG9zaXRpb24oYWJzb2x1dGUsIC0zcHggbnVsbCBudWxsIDEwcHgpOyAgICAgICAgICAgICAgICBcblxuLy8gICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG4vLyAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcmVtKCdmb250LXNpemUnLCAxNXB4KTtcblxuLy8gICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICfigKInO1xuXG4vLyAgICAgICAgICAgICB9XG5cbi8vICAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xuXG4vLyAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuXG4vLyAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkZGVza3RvcCl7XG5cbi8vICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAyNXB4O1xuXG4vLyAgICAgICAgICAgICAgICAgfVxuXG4vLyAgICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuXG4vLyAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG5cbi8vICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkZGVza3RvcCl7XG5cbi8vICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuLy8gICAgICAgICAgICAgICAgICAgICB9XG5cbi8vICAgICAgICAgICAgICAgICB9XG5cbi8vICAgICAgICAgICAgIH1cblxuLy8gICAgICAgICB9XG5cbi8vICAgICB9XG5cbi8vICAgICBwLCBhIHtcblxuLy8gICAgICAgICBjb2xvcjogJGJyb3duO1xuXG4vLyAgICAgfVxuXG4vLyAgICAgYSB7XG4gICAgICAgIFxuLy8gICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7ICAgICAgICBcblxuLy8gICAgICAgICBodG1sLm5vLXRvdWNoICYge1xuXG4vLyAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGNvbG9yIDAuODVzICRlYXNlLWluLW91dC1xdWFkKTtcblxuLy8gICAgICAgICAgICAgJjpob3ZlciB7XG5cbi8vICAgICAgICAgICAgICAgICBjb2xvcjogJGdyZWVuMTtcblxuLy8gICAgICAgICAgICAgfVxuXG4vLyAgICAgICAgIH1cblxuLy8gICAgIH1cblxuLy8gfSIsIlxuLiN7JHNpdGUtbmFtZXNwYWNlfWF3YXJkZWQgeyB9XG5cbi4jeyRzaXRlLW5hbWVzcGFjZX1hd2FyZGVkLWNvdmVyIHtcblxuICAgIC8vIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGRlc2t0b3Ape1xuXG4gICAgLy8gICAgIC8vZGlzcGxheTogdGFibGU7XG5cbiAgICAvLyAgICAgLy93aWR0aDogMTAwJTsgLy8gZm9yIHN0aWNreSBraXRcblxuICAgIC8vICAgICBAaW5jbHVkZSBjbGVhcmZpeDsgLy8gZm9yIHN0aWNreSBraXRcblxuICAgIC8vIH1cblxuICAgIC8vIC4jeyRzaXRlLW5hbWVzcGFjZX1hd2FyZGVkLWNvdmVyX19pbWFnZXMsIC4jeyRzaXRlLW5hbWVzcGFjZX1hd2FyZGVkLWNvdmVyX190ZXh0IHtcblxuICAgIC8vICAgICAvL0BpbmNsdWRlIHRyYW5zaXRpb24oYWxsIDAuNjVzICRlYXNlLWluLW91dC1xdWFkKTtcblxuICAgIC8vICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRkZXNrdG9wKXtcblxuICAgIC8vICAgICAgICAgLy8gZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICAvLyAgICAgICAgIC8vIHdpZHRoOiA1MCU7XG5cbiAgICAvLyAgICAgICAgIC8vIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cbiAgICAgICAgICAgIFxuICAgIC8vICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAvLyAgICAgICAgIC8vZmxvYXQ6IGxlZnQ7XG5cbiAgICAvLyAgICAgfVxuXG4gICAgLy8gICAgIC8vICYuI3skc2l0ZS1uYW1lc3BhY2V9aGlkZGVuIHtcblxuICAgIC8vICAgICAvLyAgICAgb3BhY2l0eTogMDtcbiAgICAvLyAgICAgLy8gICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcblxuICAgIC8vICAgICAvLyB9XG5cbiAgICAvLyB9XG5cbiAgICAvLyAuI3skc2l0ZS1uYW1lc3BhY2V9YXdhcmRlZC1jb3Zlcl9faW1hZ2VzIHtcblxuICAgIC8vICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRkZXNrdG9wKXtcblxuICAgIC8vICAgICAgICAgZmxvYXQ6IGxlZnQ7XG5cbiAgICAvLyAgICAgfVxuXG4gICAgLy8gfVxuXG4gICAgLy8gLiN7JHNpdGUtbmFtZXNwYWNlfWF3YXJkZWQtY292ZXJfX3RleHQge1xuXG4gICAgLy8gICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGRlc2t0b3Ape1xuXG4gICAgLy8gICAgICAgICBmbG9hdDogbGVmdDtcblxuICAgIC8vICAgICB9XG5cbiAgICAvLyB9XG5cbiAgICAvLyAuI3skc2l0ZS1uYW1lc3BhY2V9YXdhcmRlZC1jb3Zlcl9faGVhZGVyIHtcblxuICAgIC8vICAgICBwYWRkaW5nLWJvdHRvbTogZW0oMzApO1xuXG4gICAgLy8gICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgIC8vIH1cblxuICAgIC8vIC4jeyRzaXRlLW5hbWVzcGFjZX1hd2FyZGVkLWNvdmVyX19ib2R5IHsgICAgICAgIFxuXG4gICAgLy8gICAgIEBleHRlbmQgJXRleHQtQTtcbiAgICAvLyAgICAgQGV4dGVuZCAldGV4dC1kcm9wY2FwO1xuICAgIC8vICAgICBAZXh0ZW5kICV0ZXh0LXdpZHRoLWxpbWl0ZXI7ICAgIFxuICAgIC8vICAgICBAZXh0ZW5kICV0ZXh0LXJlc2V0LWNoaWxkczsgICAgICBcbiAgICAvLyAgICAgQGV4dGVuZCAldGV4dC1ub3JtYWxpemUtbGlua3M7ICBcblxuICAgIC8vICAgICBtYXJnaW46IDAgYXV0bztcblxuICAgIC8vIH1cblxuICAgIC8vIC4jeyRzaXRlLW5hbWVzcGFjZX1hd2FyZGVkLWNvdmVyX190ZXh0IHtcblxuICAgIC8vICAgICBwYWRkaW5nLXRvcDogZW0oNDApO1xuICAgIC8vICAgICBwYWRkaW5nLWJvdHRvbTogZW0oNDApO1xuXG4gICAgLy8gICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGRlc2t0b3Ape1xuXG4gICAgLy8gICAgICAgICBwYWRkaW5nLXRvcDogJGhlYWRlci1oZWlnaHQtZGVza3RvcDtcbiAgICAvLyAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuXG4gICAgLy8gICAgIH1cblxuICAgIC8vIH1cblxufVxuXG4uI3skc2l0ZS1uYW1lc3BhY2V9YXdhcmRlZC1pdGVtcyB7IH1cblxuLiN7JHNpdGUtbmFtZXNwYWNlfWF3YXJkZWQtaXRlbXMtaW50cm8ge1xuXG4gICAgJi0taG9tZXBhZ2VmaXgge1xuICAgICAgICBtYXJnaW4tdG9wOiAxMjBweDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRkZXNrdG9wKXtcblxuICAgICAgICBAaW5jbHVkZSBhc3BlY3QtcmF0aW8oOCwxKiRjaGVzc2JvYXJkLXJhdGlvKTtcblxuICAgIH1cblxuICAgIC4jeyRzaXRlLW5hbWVzcGFjZX1hd2FyZGVkLWl0ZW1zLWludHJvX190aXRsZSB7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkZGVza3RvcCl7XG5cbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcblxuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICAuI3skc2l0ZS1uYW1lc3BhY2V9aGVhZGluZy1BIHtcblxuICAgICAgICBjb2xvcjogJGJyb3duO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgQGV4dGVuZCAlaGVhZGluZy1mcmlsbC1BO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGRlc2t0b3Ape1xuXG4gICAgICAgICAgICBAaW5jbHVkZSB2ZXJ0aWNhbC1hbGlnbjtcblxuICAgICAgICB9XG5cbiAgICAgICAgJi0taG9tZXBhZ2VmaXgge1xuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgYm90dG9tOiAyMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICB9ICAgICAgICBcblxufVxuXG4uI3skc2l0ZS1uYW1lc3BhY2V9YXdhcmRlZC1pdGVtIHtcblxuICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRkZXNrdG9wKXtcblxuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuXG4gICAgfVxuXG4gICAgLiN7JHNpdGUtbmFtZXNwYWNlfWF3YXJkZWQtaXRlbV9fbWVkaWEsIC4jeyRzaXRlLW5hbWVzcGFjZX1hd2FyZGVkLWl0ZW1fX3RleHQge1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGRlc2t0b3Ape1xuXG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgIHdpZHRoOiA1MCU7XG5cbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgLiN7JHNpdGUtbmFtZXNwYWNlfWF3YXJkZWQtaXRlbV9fdGV4dCB7XG5cbiAgICAgICAgPiBkaXYge1xuXG4gICAgICAgICAgICBwYWRkaW5nOiBlbSgzMCkgZW0oMTUpO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRkZXNrdG9wKXtcblxuICAgICAgICAgICAgICAgIG1heC13aWR0aDogZW0oNDUwKTtcbiAgICAgICAgICAgICAgICAvL21heC13aWR0aDogNzAlO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IGVtKDQ1KSBlbSgyMCk7XG5cbiAgICAgICAgICAgICAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcblxuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgIH1cblxuICAgICY6bnRoLWNoaWxkKDJuKzIpe1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGRlc2t0b3Ape1xuXG4gICAgICAgICAgICBkaXJlY3Rpb246IHJ0bDtcblxuICAgICAgICB9XG5cbiAgICAgICAgLiN7JHNpdGUtbmFtZXNwYWNlfWF3YXJkZWQtaXRlbV9fbWVkaWEsIC4jeyRzaXRlLW5hbWVzcGFjZX1hd2FyZGVkLWl0ZW1fX3RleHQge1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRkZXNrdG9wKXtcblxuICAgICAgICAgICAgICAgIGZsb2F0OiByaWdodDtcblxuICAgICAgICAgICAgICAgIGRpcmVjdGlvbjogbHRyO1xuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgIC4jeyRzaXRlLW5hbWVzcGFjZX1hd2FyZGVkLWl0ZW1fX3RleHQge1xuXG4gICAgICAgICAgICA+IGRpdiB7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRkZXNrdG9wKXtcblxuICAgICAgICAgICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG5cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICB9XG4gICAgXG59XG5cbi8vIC4jeyRzaXRlLW5hbWVzcGFjZX1hd2FyZGVkLXRhaWwge1xuXG4vLyAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkZGVza3RvcCl7XG5cbi8vICAgICAgICAgLy9wb3NpdGlvbjogcmVsYXRpdmU7XG5cbi8vICAgICAgICAgZGlzcGxheTogdGFibGU7XG4vLyAgICAgICAgIHdpZHRoOiAxMDAlO1xuLy8gICAgICAgICBoZWlnaHQ6IDEwMCU7XG5cbi8vICAgICB9XG5cbi8vICAgICAuI3skc2l0ZS1uYW1lc3BhY2V9YXdhcmRlZC10YWlsX19pbWFnZXMge1xuXG4vLyAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGRlc2t0b3Ape1xuXG4vLyAgICAgICAgICAgICBAaW5jbHVkZSBwb3NpdGlvbihyZWxhdGl2ZSwgMCBudWxsIG51bGwgMCk7XG5cbi8vICAgICAgICAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4vLyAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbi8vICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcblxuLy8gICAgICAgICB9XG5cbi8vICAgICB9XG5cbi8vICAgICAuI3skc2l0ZS1uYW1lc3BhY2V9YXdhcmRlZC10YWlsX190ZXh0IHtcblxuLy8gICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRkZXNrdG9wKXtcblxuLy8gICAgICAgICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcbi8vICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuLy8gICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuLy8gICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMzcuNSU7XG4vLyAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDM3LjUlO1xuXG4vLyAgICAgICAgIH1cbiAgICAgICAgXG4vLyAgICAgfVxuXG4vLyB9XG5cbi8vIC4jeyRzaXRlLW5hbWVzcGFjZX1mbG9hdGluZy1pbWFnZXMge1xuXG4vLyAgICAgQGluY2x1ZGUgY2xlYXJmaXg7XG5cbi8vICAgICAuI3skc2l0ZS1uYW1lc3BhY2V9ZmxvYXRpbmctaW1hZ2VzX19pdGVtIHtcblxuLy8gICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRkZXNrdG9wKXtcblxuLy8gICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4vLyAgICAgICAgICAgICB3aWR0aDogNTAlO1xuLy8gICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMTIuNSU7XG4vLyAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDEyLjUlO1xuXG4vLyAgICAgICAgIH1cblxuLy8gICAgIH1cblxuLy8gfVxuXG4vLyAuI3skc2l0ZS1uYW1lc3BhY2V9YXdhcmRlZC10YWlsIHtcblxuLy8gICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuXG4vLyAgICAgLiN7JHNpdGUtbmFtZXNwYWNlfWF3YXJkZWQtdGFpbF9faXRlbSB7XG5cbi8vICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkZGVza3RvcCl7XG5cbi8vICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuLy8gICAgICAgICAgICAgd2lkdGg6IDI1JTtcblxuLy8gICAgICAgICB9XG5cbi8vICAgICAgICAgJjpudGgtY2hpbGQoMSl7XG5cbi8vICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGRlc2t0b3Ape1xuXG4vLyAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEyLjUlO1xuXG4vLyAgICAgICAgICAgICB9XG5cbi8vICAgICAgICAgfVxuXG4vLyAgICAgICAgICY6bnRoLWNoaWxkKDMpe1xuXG4vLyAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRkZXNrdG9wKXtcblxuLy8gICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDEyLjUlICogJGNoZXNzYm9hcmQtcmF0aW87XG4vLyAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMi41JTtcblxuLy8gICAgICAgICAgICAgfVxuXG4vLyAgICAgICAgIH1cblxuLy8gICAgICAgICAmLiN7JHNpdGUtbmFtZXNwYWNlfWF3YXJkZWQtdGFpbF9faXRlbS0tdGV4dCB7XG5cbi8vICAgICAgICAgICAgIG1hcmdpbi10b3A6IDQlO1xuLy8gICAgICAgICAgICAgcGFkZGluZzogZW0oMzApIGVtKDE1KTtcblxuLy8gICAgICAgICB9XG5cbi8vICAgICB9XG5cbi8vIH1cblxuLiN7JHNpdGUtbmFtZXNwYWNlfWF3YXJkZWQtdGFpbCB7XG5cbiAgICBwYWRkaW5nLWJvdHRvbTogNDBweDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGRlc2t0b3Ape1xuXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIH1cblxuICAgIC4jeyRzaXRlLW5hbWVzcGFjZX1hd2FyZGVkLXRhaWxfX3RleHQge1xuXG4gICAgICAgIC8vIHBhZGRpbmc6IGVtKDMwKSBlbSgxNSk7XG5cbiAgICAgICAgLy8gQGluY2x1ZGUgYnJlYWtwb2ludCgkZGVza3RvcCl7XG5cbiAgICAgICAgLy8gICAgIEBpbmNsdWRlIHBvc2l0aW9uKGFic29sdXRlLCAwIG51bGwgbnVsbCAzMCUpO1xuXG4gICAgICAgIC8vICAgICBtYXgtd2lkdGg6IGVtKDQ1MCk7IFxuICAgICAgICAvLyAgICAgbWFyZ2luLXRvcDogZW0oNTApOyBcbiAgICAgICAgLy8gICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgICAvLyAgICAgcGFkZGluZy1ib3R0b206IDA7ICAgICAgICAgIFxuXG4gICAgICAgIC8vICAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcblxuICAgICAgICAvLyB9XG5cbiAgICAgICAgcGFkZGluZzogZW0oMzApIGVtKDE1KTtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRkZXNrdG9wKXsgLy92MlxuXG4gICAgICAgICAgICBAaW5jbHVkZSBwb3NpdGlvbihhYnNvbHV0ZSwgMCBudWxsIG51bGwgMCk7XG5cbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiBlbSg1MCk7IFxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAzNy41JTtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAzNy41JTtcbiAgICAgICAgICAgIC8vcGFkZGluZy10b3A6IDA7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogZW0oMjApOyAgICAgICAgICBcblxuICAgICAgICAgICAgYm94LXNpemluZzogY29udGVudC1ib3g7XG5cbiAgICAgICAgfVxuXG4gICAgfVxuXG59XG5cbi4jeyRzaXRlLW5hbWVzcGFjZX1mbG9hdGluZy1pbWFnZXMge1xuXG4gICAgLy9AaW5jbHVkZSBwb3NpdGlvbihhYnNvbHV0ZSwgMCBudWxsIG51bGwgMCk7IC8vIHYyXG5cbiAgICAvL3dpZHRoOiAxMDAlOyAvLyB2MlxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkZGVza3RvcCl7XG5cbiAgICAgICAgQGluY2x1ZGUgY2xlYXJmaXg7XG5cbiAgICB9XG5cbiAgICAuI3skc2l0ZS1uYW1lc3BhY2V9ZmxvYXRpbmctaW1hZ2VzX19pdGVtIHtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRkZXNrdG9wKXtcblxuICAgICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuXG4gICAgICAgIH1cblxuICAgICAgICAmOm50aC1jaGlsZCgxKXtcblxuICAgICAgICAgICAgLiN7JHNpdGUtbmFtZXNwYWNlfWZsb2F0aW5nLWltYWdlIHtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGRlc2t0b3Ape1xuXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAyNSU7XG5cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgJjpudGgtY2hpbGQoMil7XG5cbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGRlc2t0b3Ape1xuXG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLiN7JHNpdGUtbmFtZXNwYWNlfWZsb2F0aW5nLWltYWdlIHtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGRlc2t0b3Ape1xuXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDI1JTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDI1JTtcblxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgIH1cblxufVxuXG4uI3skc2l0ZS1uYW1lc3BhY2V9ZmxvYXRpbmctaW1hZ2Uge1xuXG4gICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRkZXNrdG9wKXtcblxuICAgICAgICB3aWR0aDogNTAlO1xuXG4gICAgfVxuXG4gICAgLiN7JHNpdGUtbmFtZXNwYWNlfWZsb2F0aW5nLWltYWdlX19pbm5lciB7XG5cbiAgICAgICAgQGluY2x1ZGUgYXNwZWN0LXJhdGlvKDEsJGNoZXNzYm9hcmQtcmF0aW8pOyAgICAgICAgXG5cbiAgICB9XG5cbiAgICAuI3skc2l0ZS1uYW1lc3BhY2V9ZmxvYXRpbmctaW1hZ2VfX3ZpZXdlciB7XG5cbiAgICAgICAgQGluY2x1ZGUgc2l6ZSgxMDAlKTtcblxuICAgICAgICBiYWNrZ3JvdW5kOiB7XG4gICAgICAgICAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBwb3NpdGlvbjogNTAlIDUwJTtcbiAgICAgICAgICAgIHJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICAgICAgc2l6ZTogY292ZXI7XG4gICAgICAgIH1cblxuICAgIH1cblxuICAgICYuI3skc2l0ZS1uYW1lc3BhY2V9ZmxvYXRpbmctaW1hZ2UtLWFsdGVybmF0ZSB7XG5cbiAgICAgICAgLiN7JHNpdGUtbmFtZXNwYWNlfWZsb2F0aW5nLWltYWdlX19pbm5lciB7XG5cbiAgICAgICAgICAgIHNwYW4ge1xuXG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgc2l6ZSgxMDAlKTtcblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBlbSB7XG5cbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHZlcnRpY2FsLWFsaWduO1xuXG4gICAgICAgICAgICAgICAgY29sb3I6ICNmZmZmZmY7XG4gICAgICAgICAgICAgICAgZm9udDoge1xuICAgICAgICAgICAgICAgICAgICBmYW1pbHk6ICRwbGF5ZmFpcmRpc3BsYXk7XG4gICAgICAgICAgICAgICAgICAgIHN0eWxlOiBub3JtYWw7XG4gICAgICAgICAgICAgICAgICAgIHdlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSByZW0oJ2ZvbnQtc2l6ZScsIDQ1cHgpO1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgIH1cblxufVxuXG5hLiN7JHNpdGUtbmFtZXNwYWNlfWZsb2F0aW5nLWltYWdlIHtcblxuICAgIGh0bWwubm8tdG91Y2ggJiB7XG5cbiAgICAgICAgLiN7JHNpdGUtbmFtZXNwYWNlfWZsb2F0aW5nLWltYWdlX19pbm5lciB7XG5cbiAgICAgICAgICAgIHNwYW4ge1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihiYWNrZ3JvdW5kLWNvbG9yIDAuNjVzICRlYXNlLWluLW91dC1xdWFkKTtcblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvLyBlbSB7XG5cbiAgICAgICAgICAgIC8vICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGNvbG9yIDAuNjVzICRlYXNlLWluLW91dC1xdWFkKTtcblxuICAgICAgICAgICAgLy8gfVxuXG4gICAgICAgICAgICAmOmhvdmVyIHtcblxuICAgICAgICAgICAgICAgIHNwYW4ge1xuXG4gICAgICAgICAgICAgICAgICAgIC8vYmFja2dyb3VuZC1jb2xvcjogJGdyZXkyO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRibGFjaywgMC42KTtcblxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC8vIGVtIHtcblxuICAgICAgICAgICAgICAgIC8vICAgICBjb2xvcjogJGdyZWVuMTtcblxuICAgICAgICAgICAgICAgIC8vIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgIH1cblxufVxuXG4uI3skc2l0ZS1uYW1lc3BhY2V9YXdhcmRlZC1saXN0IHtcblxuICAgIHVsIHtcblxuICAgICAgICBAaW5jbHVkZSBiYXNlLWxpc3Q7XG5cbiAgICB9XG5cbiAgICBsaSB7XG5cbiAgICAgICAgbWFyZ2luLXRvcDogZW0oNDUpO1xuXG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xuXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuXG4gICAgICAgIH1cblxuICAgIH1cblxuICAgIC4jeyRzaXRlLW5hbWVzcGFjZX1hd2FyZGVkLWxpc3RfX2ltYWdlIHtcblxuICAgICAgICBtYXJnaW46IGVtKDEwKSAwIDAgMDtcblxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgICAgICAgaW1nIHtcblxuICAgICAgICAgICAgd2lkdGg6IDUwJTtcblxuICAgICAgICB9XG5cbiAgICB9XG5cbn0iLCJcbi4jeyRzaXRlLW5hbWVzcGFjZX1qdXJ5IHsgfVxuXG4vLyAuI3skc2l0ZS1uYW1lc3BhY2V9anVyeS1jb3ZlciB7XG5cbi8vICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRkZXNrdG9wKXtcblxuLy8gICAgICAgICBAaW5jbHVkZSBjbGVhcmZpeDtcblxuLy8gICAgICAgICAvL2Rpc3BsYXk6IHRhYmxlO1xuXG4vLyAgICAgfVxuXG4vLyAgICAgLiN7JHNpdGUtbmFtZXNwYWNlfWp1cnktY292ZXJfX2ltYWdlLCAuI3skc2l0ZS1uYW1lc3BhY2V9anVyeS1jb3Zlcl9fdGV4dCB7XG5cbi8vICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkZGVza3RvcCl7XG5cbi8vICAgICAgICAgICAgIC8vIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4vLyAgICAgICAgICAgICAvLyB3aWR0aDogNTAlO1xuXG4vLyAgICAgICAgICAgICAvLyB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuXG4vLyAgICAgICAgICAgICB3aWR0aDogNTAlO1xuXG4vLyAgICAgICAgIH1cblxuLy8gICAgIH1cblxuLy8gICAgIC4jeyRzaXRlLW5hbWVzcGFjZX1qdXJ5LWNvdmVyX190ZXh0IHtcblxuLy8gICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRkZXNrdG9wKXtcblxuLy8gICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuXG4vLyAgICAgICAgIH1cblxuLy8gICAgIH1cblxuLy8gICAgIC4jeyRzaXRlLW5hbWVzcGFjZX1qdXJ5LWNvdmVyX19pbWFnZSB7XG5cbi8vICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkZGVza3RvcCl7XG5cbi8vICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuXG4vLyAgICAgICAgIH1cblxuLy8gICAgICAgICA+IGRpdiB7XG5cbi8vICAgICAgICAgICAgIEBpbmNsdWRlIGFzcGVjdC1yYXRpbygxLCRjaGVzc2JvYXJkLXJhdGlvKTsgXG5cbi8vICAgICAgICAgICAgIGJhY2tncm91bmQ6IHtcbi8vICAgICAgICAgICAgICAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4vLyAgICAgICAgICAgICAgICAgcG9zaXRpb246IDUwJSA1MCU7XG4vLyAgICAgICAgICAgICAgICAgcmVwZWF0OiBuby1yZXBlYXQ7XG4vLyAgICAgICAgICAgICAgICAgc2l6ZTogY292ZXI7XG4vLyAgICAgICAgICAgICB9XG5cbi8vICAgICAgICAgfVxuXG4vLyAgICAgICAgIC8vIGZpZ3VyZSB7XG5cbi8vICAgICAgICAgLy8gICAgIG1hcmdpbjogMDtcblxuLy8gICAgICAgICAvLyB9XG5cbi8vICAgICAgICAgLy8gaW1nIHtcblxuLy8gICAgICAgICAvLyAgICAgZGlzcGxheTogYmxvY2s7XG4vLyAgICAgICAgIC8vICAgICB3aWR0aDogMTAwJTtcblxuLy8gICAgICAgICAvLyB9XG5cbi8vICAgICB9XG5cbi8vICAgICAuI3skc2l0ZS1uYW1lc3BhY2V9anVyeS1jb3Zlcl9fdGV4dCB7XG5cbi8vICAgICAgICAgLy8gQGluY2x1ZGUgYnJlYWtwb2ludCgkZGVza3RvcCl7XG5cbi8vICAgICAgICAgLy8gICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuLy8gICAgICAgICAvLyB9XG4gICAgICAgIFxuLy8gICAgICAgICAvLyA+IGRpdiB7XG5cbi8vICAgICAgICAgLy8gICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGRlc2t0b3Ape1xuXG4vLyAgICAgICAgIC8vICAgICAgICAgQGluY2x1ZGUgcG9zaXRpb24oYWJzb2x1dGUsIDAgbnVsbCBudWxsIDApO1xuXG4vLyAgICAgICAgIC8vICAgICAgICAgQGluY2x1ZGUgc2l6ZSgxMDAlKTtcbi8vICAgICAgICAgLy8gICAgICAgICBwYWRkaW5nLXRvcDogMjUlO1xuXG4vLyAgICAgICAgIC8vICAgICAgICAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4vLyAgICAgICAgIC8vICAgICAgICAgLy8gb3ZlcmZsb3c6IGhpZGRlbjtcbi8vICAgICAgICAgLy8gICAgICAgICAvLyBvdmVyZmxvdy15OiBhdXRvO1xuXG4vLyAgICAgICAgIC8vICAgICB9XG5cbi8vICAgICAgICAgLy8gfVxuXG4vLyAgICAgICAgIC4jeyRzaXRlLW5hbWVzcGFjZX1qdXJ5LWNvdmVyX19pbm5lciB7XG5cbi8vICAgICAgICAgICAgIHBhZGRpbmctdG9wOiBlbSg1MCk7XG4vLyAgICAgICAgICAgICAvL3BhZGRpbmctYm90dG9tOiBlbSgyMCk7XG5cbi8vICAgICAgICAgICAgIC8vIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGRlc2t0b3Ape1xuXG4vLyAgICAgICAgICAgICAvLyAgICAgbWFyZ2luLXRvcDogLTI1JTtcbi8vICAgICAgICAgICAgIC8vICAgICBwYWRkaW5nLXRvcDogZW0oMTUwKTtcblxuLy8gICAgICAgICAgICAgLy8gfVxuXG4vLyAgICAgICAgIH1cblxuLy8gICAgICAgICAuI3skc2l0ZS1uYW1lc3BhY2V9anVyeS1jb3Zlcl9faGVhZGVyIHtcblxuLy8gICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IGVtKDMwKTtcblxuLy8gICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4vLyAgICAgICAgIH1cblxuLy8gICAgICAgICAuI3skc2l0ZS1uYW1lc3BhY2V9anVyeS1jb3Zlcl9fYm9keSB7XG5cbi8vICAgICAgICAgICAgIHBhZGRpbmc6IGVtKDE1KTtcbi8vICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiBlbSgzMCk7XG5cbi8vICAgICAgICAgICAgIEBleHRlbmQgJXRleHQtQTtcbi8vICAgICAgICAgICAgIEBleHRlbmQgJXRleHQtZHJvcGNhcDtcbi8vICAgICAgICAgICAgIEBleHRlbmQgJXRleHQtcmVzZXQtY2hpbGRzO1xuLy8gICAgICAgICAgICAgQGV4dGVuZCAldGV4dC13aWR0aC1saW1pdGVyOyAgIFxuLy8gICAgICAgICAgICAgQGV4dGVuZCAldGV4dC1ub3JtYWxpemUtbGlua3M7ICBcblxuLy8gICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG5cbi8vICAgICAgICAgICAgICYuI3skc2l0ZS1uYW1lc3BhY2V9c2Nyb2xsYWJsZSB7XG5cbi8vICAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuLy8gICAgICAgICAgICAgICAgIG92ZXJmbG93LXk6IGF1dG87XG5cbi8vICAgICAgICAgICAgIH1cblxuLy8gICAgICAgICB9XG5cbi8vICAgICB9XG4gICAgXG4vLyB9XG5cbi4jeyRzaXRlLW5hbWVzcGFjZX1qdXJ5LWl0ZW1zIHtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGRlc2t0b3Ape1xuXG4gICAgICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuXG4gICAgfVxuICAgIFxufVxuXG4uI3skc2l0ZS1uYW1lc3BhY2V9anVyeS1pdGVtIHtcblxuICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRkZXNrdG9wKXtcblxuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICAgICBAaW5jbHVkZSBjbGVhcmZpeDtcblxuICAgIH1cblxuICAgICY6bnRoLWNoaWxkKDJuKzEpe1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGRlc2t0b3Ape1xuXG4gICAgICAgICAgICBjbGVhcjogbGVmdDtcblxuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICAmOm50aC1jaGlsZCgyKXtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRkZXNrdG9wKXtcblxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMTIuNSUgKiAkY2hlc3Nib2FyZC1yYXRpbztcblxuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICAmLiN7JHNpdGUtbmFtZXNwYWNlfWp1cnktaXRlbS0tQSB7XG5cbiAgICAgICAgLy8gbm8gbmVlZCBmb3IgY29kZSBoZXJlIDopXG5cbiAgICB9XG5cbiAgICAmLiN7JHNpdGUtbmFtZXNwYWNlfWp1cnktaXRlbS0tQiB7XG5cbiAgICAgICAgLiN7JHNpdGUtbmFtZXNwYWNlfWNoZXNzYm9hcmQtbWVyZSB7XG5cbiAgICAgICAgICAgICY6bnRoLWNoaWxkKDEpe1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkZGVza3RvcCl7XG5cbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMjUlICogJGNoZXNzYm9hcmQtcmF0aW87XG5cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICAmLiN7JHNpdGUtbmFtZXNwYWNlfWp1cnktaXRlbS0tQyB7XG5cbiAgICAgICAgLiN7JHNpdGUtbmFtZXNwYWNlfWNoZXNzYm9hcmQtbWVyZSB7XG5cbiAgICAgICAgICAgICY6bnRoLWNoaWxkKDEpe1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkZGVza3RvcCl7XG5cbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDI1JTtcblxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgIH1cblxuICAgIC4jeyRzaXRlLW5hbWVzcGFjZX1qdXJ5LWl0ZW1fX3RpdGxlIHtcblxuICAgICAgICBwYWRkaW5nLXRvcDogZW0oMTUpO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiBlbSgxNSk7XG4gICAgICAgIHBhZGRpbmctbGVmdDogZW0oMTUpO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGRlc2t0b3Ape1xuXG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMTYlO1xuXG4gICAgICAgIH1cblxuICAgIH1cblxuICAgIC4jeyRzaXRlLW5hbWVzcGFjZX1qdXJ5LWl0ZW1fX3RleHQge1xuXG4gICAgICAgIG1heC13aWR0aDogODAlO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiBlbSgxNSk7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiBlbSgzMCk7XG4gICAgICAgIHBhZGRpbmctbGVmdDogZW0oMTUpO1xuXG4gICAgICAgIEBleHRlbmQgJXRleHQtQTtcbiAgICAgICAgQGV4dGVuZCAldGV4dC1mcmlsbC1BO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGRlc2t0b3Ape1xuXG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogZW0oMTUpO1xuXG4gICAgICAgIH0gICAgICAgIFxuXG4gICAgICAgIC8vIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgIC8vIGZvbnQ6IHtcbiAgICAgICAgLy8gICAgIGZhbWlseTogJGJyYW5kb25ncm90ZXNxdWU7XG4gICAgICAgIC8vIH1cbiAgICAgICAgLy8gQGluY2x1ZGUgcmVtKCdmb250LXNpemUnLCAyMHB4KTtcblxuICAgICAgICAvLyA+IHAge1xuXG4gICAgICAgIC8vICAgICAmOmZpcnN0LWNoaWxkIHtcblxuICAgICAgICAvLyAgICAgICAgIHRleHQtaW5kZW50OiBlbSgzNSk7XG5cbiAgICAgICAgLy8gICAgIH1cblxuICAgICAgICAvLyB9XG5cbiAgICB9XG4gICAgXG59IiwiXG4uI3skc2l0ZS1uYW1lc3BhY2V9c2VydmljZSB7XG5cbiAgICBwYWRkaW5nLXRvcDogNzBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogNzBweDtcblxuICAgICYuI3skc2l0ZS1uYW1lc3BhY2V9c2VydmljZS0tYWx0ZXJuYXRlIHtcblxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcblxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGRlc2t0b3Ape1xuXG4gICAgICAgIHBhZGRpbmctdG9wOiAkaGVhZGVyLWhlaWdodC1kZXNrdG9wICsgNzBweDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDE2MHB4O1xuXG4gICAgfVxuXG59XG5cbi8vIC4jeyRzaXRlLW5hbWVzcGFjZX1zZXJ2aWNlLXRpdGxlIHtcblxuLy8gICAgIG1hcmdpbi1ib3R0b206IDFlbTtcblxuLy8gICAgIGNvbG9yOiAkZ3JlZW4xO1xuLy8gICAgIGZvbnQ6IHtcbi8vICAgICAgICAgZmFtaWx5OiAkcGxheWZhaXJkaXNwbGF5O1xuLy8gICAgICAgICB3ZWlnaHQ6IG5vcm1hbDtcbi8vICAgICB9XG4vLyAgICAgQGluY2x1ZGUgcmVtKCdmb250LXNpemUnLCA0MHB4KTtcbi8vICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbi8vIH1cblxuLy8gLiN7JHNpdGUtbmFtZXNwYWNlfXNlcnZpY2Utc3VidGl0bGUge1xuXG4vLyAgICAgY29sb3I6ICRicm93bjtcbi8vICAgICBmb250OiB7XG4vLyAgICAgICAgIGZhbWlseTogJGJyYW5kb25ncm90ZXNxdWU7XG4vLyAgICAgICAgIHdlaWdodDogNTAwO1xuLy8gICAgIH1cbi8vICAgICBAaW5jbHVkZSByZW0oJ2ZvbnQtc2l6ZScsIDE0cHgpO1xuLy8gICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuLy8gfVxuXG4uI3skc2l0ZS1uYW1lc3BhY2V9c2VydmljZS1oZWFkZXIge1xuXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG59XG5cbi4jeyRzaXRlLW5hbWVzcGFjZX1zZXJ2aWNlLWJvZHkge1xuXG4gICAgLy8gY29sb3I6ICRibGFjaztcbiAgICAvLyBmb250OiB7XG4gICAgLy8gICAgIGZhbWlseTogJGJyYW5kb25ncm90ZXNxdWU7XG4gICAgLy8gfVxuICAgIC8vIEBpbmNsdWRlIHJlbSgnZm9udC1zaXplJywgMThweCk7XG4gICAgLy8gQGluY2x1ZGUgcmVtKCdsaW5lLWhlaWdodCcsIDI4cHgpO1xuICAgIEBleHRlbmQgJXRleHQtQTtcbiAgICBAZXh0ZW5kICV0ZXh0LWZyaWxsLUE7XG5cbiAgICBAaW5jbHVkZSB3b3JkLXdyYXA7XG5cbiAgICB1bCB7ICAgICAgICBcblxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG5cbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcblxuICAgICAgICBsaSB7XG5cbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuXG4gICAgICAgICAgICAmOmJlZm9yZSB7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBwb3NpdGlvbihhYnNvbHV0ZSwgMCBudWxsIG51bGwgMCk7XG5cbiAgICAgICAgICAgICAgICBjb2xvcjogJGJyb3duO1xuXG4gICAgICAgICAgICAgICAgY29udGVudDogJ+KAoic7XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICBwIHtcbiAgICAgICAgb3ZlcmZsb3ctd3JhcDogbm9ybWFsO1xuICAgICAgICB3b3JkLXdyYXA6IG5vcm1hbDtcbiAgICAgICAgd29yZC1icmVhazogbm9ybWFsO1xuICAgICAgICB0ZXh0LWFsaWduOiBqdXN0aWZ5O1xuICAgIH1cblxuICAgIC8vIHAge1xuXG4gICAgLy8gICAgICY6Zmlyc3QtY2hpbGQge1xuXG4gICAgLy8gICAgICAgICB0ZXh0LWluZGVudDogZW0oMzUpO1xuXG4gICAgLy8gICAgIH1cblxuICAgIC8vIH1cblxufSIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8vIFByb3ZpZGVzIGFuIGVhc3kgd2F5IHRvIGNoYW5nZSB0aGUgYHdvcmQtd3JhcGAgcHJvcGVydHkuXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJHdyYXAgW2JyZWFrLXdvcmRdXG4vLy8gICBWYWx1ZSBmb3IgdGhlIGB3b3JkLWJyZWFrYCBwcm9wZXJ0eS5cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBVc2FnZVxuLy8vICAgLndyYXBwZXIge1xuLy8vICAgICBAaW5jbHVkZSB3b3JkLXdyYXAoYnJlYWstd29yZCk7XG4vLy8gICB9XG4vLy9cbi8vLyBAZXhhbXBsZSBjc3MgLSBDU1MgT3V0cHV0XG4vLy8gICAud3JhcHBlciB7XG4vLy8gICAgIG92ZXJmbG93LXdyYXA6IGJyZWFrLXdvcmQ7XG4vLy8gICAgIHdvcmQtYnJlYWs6IGJyZWFrLWFsbDtcbi8vLyAgICAgd29yZC13cmFwOiBicmVhay13b3JkO1xuLy8vICAgfVxuXG5AbWl4aW4gd29yZC13cmFwKCR3cmFwOiBicmVhay13b3JkKSB7XG4gIG92ZXJmbG93LXdyYXA6ICR3cmFwO1xuICB3b3JkLXdyYXA6ICR3cmFwO1xuXG4gIEBpZiAkd3JhcCA9PSBicmVhay13b3JkIHtcbiAgICB3b3JkLWJyZWFrOiBicmVhay1hbGw7XG4gIH0gQGVsc2Uge1xuICAgIHdvcmQtYnJlYWs6ICR3cmFwO1xuICB9XG59XG4iLCJcbi4jeyRzaXRlLW5hbWVzcGFjZX10aW1lbGluZSB7XG5cbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICBwYWRkaW5nLXRvcDogMTAwcHg7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRkZXNrdG9wKXtcblxuICAgICAgICBwYWRkaW5nLXRvcDogJGhlYWRlci1oZWlnaHQtZGVza3RvcCArIDYwO1xuXG4gICAgfVxuXG4gICAgLiN7JHNpdGUtbmFtZXNwYWNlfXRpbWVsaW5lX19oZWFkZXIge1xuXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgIH1cblxuICAgIC4jeyRzaXRlLW5hbWVzcGFjZX10aW1lbGluZS1uYXYge1xuXG4gICAgICAgIEBpbmNsdWRlIHBvc2l0aW9uKGZpeGVkLCAkaGVhZGVyLWhlaWdodC1kZXNrdG9wKzEwMCAwIDE2MHB4IG51bGwpO1xuICAgICAgICB6LWluZGV4OiAkdGltZWxpbmUtbmF2LXotaW5kZXg7XG5cbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgd2lkdGg6IDkwcHg7XG5cbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRkZXNrdG9wKXtcblxuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICAgICAgIH1cblxuICAgICAgICBuYXYge1xuXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIHNpemUoMTAwJSk7XG5cbiAgICAgICAgfVxuXG4gICAgICAgIHVsIHtcblxuICAgICAgICAgICAgQGluY2x1ZGUgcG9zaXRpb24oYWJzb2x1dGUsIDAgMCBudWxsIG51bGwpO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBiYXNlLWxpc3Q7XG5cbiAgICAgICAgfVxuXG4gICAgICAgIGxpICB7XG5cbiAgICAgICAgICAgIGhlaWdodDogMTVweDtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDJweDtcblxuICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG5cbiAgICAgICAgICAgICYuI3skc2l0ZS1uYW1lc3BhY2V9ZHVtbXkge1xuXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHBvc2l0aW9uKGFic29sdXRlLCA1MCUgMCBudWxsIG51bGwpO1xuXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBzaXplKDE1cHggMXB4KTtcblxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJvd247XG5cbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogJyc7XG5cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi4jeyRzaXRlLW5hbWVzcGFjZX1jdXJyZW50IHtcblxuICAgICAgICAgICAgICAgIGEge1xuXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAzMHB4O1xuXG4gICAgICAgICAgICAgICAgICAgIGN1cnNvcjogZGVmYXVsdDtcblxuICAgICAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAzMHB4O1xuXG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmOmJlZm9yZSwgJjphZnRlciB7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRibGFjaztcblxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgc3BhbiwgJjphZnRlciB7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG5cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgIGEge1xuXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIC8vQGluY2x1ZGUgc2l6ZSg0MHB4IGluaGVyaXQpO1xuICAgICAgICAgICAgQGluY2x1ZGUgc2l6ZSg4MHB4IGluaGVyaXQpO1xuXG4gICAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICAgICAgZm9udDoge1xuICAgICAgICAgICAgICAgIGZhbWlseTogJGJyYW5kb25ncm90ZXNxdWU7XG4gICAgICAgICAgICAgICAgd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAaW5jbHVkZSByZW0oJ2ZvbnQtc2l6ZScsIDEycHgpO1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgICAgICAgICBodG1sLm5vLXRvdWNoICYge1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbih3aWR0aCAwLjM1cyAkZWFzZS1pbi1vdXQtcXVhZCk7XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgc3BhbiB7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBwb3NpdGlvbihhYnNvbHV0ZSwgMCBudWxsIG51bGwgLTM1cHgpO1xuXG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcblxuICAgICAgICAgICAgICAgIGh0bWwubm8tdG91Y2ggJiB7XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihvcGFjaXR5IDAuMzVzICRlYXNlLWluLW91dC1xdWFkKTtcblxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmJlZm9yZSB7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBwb3NpdGlvbihhYnNvbHV0ZSwgNTAlIDAgbnVsbCBudWxsKTtcblxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHNpemUoMTVweCAxcHgpO1xuXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyb3duO1xuXG4gICAgICAgICAgICAgICAgY29udGVudDogJyc7XG5cbiAgICAgICAgICAgICAgICBodG1sLm5vLXRvdWNoICYge1xuXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYmFja2dyb3VuZC1jb2xvciAwLjY1cyAkZWFzZS1pbi1vdXQtcXVhZCk7XG5cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjphZnRlciB7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBwb3NpdGlvbihhYnNvbHV0ZSwgNnB4IG51bGwgbnVsbCAtM3B4KTsgICAgICAgICAgICAgICAgXG5cbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgc2l6ZSg2cHgpO1xuXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyb3duO1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcblxuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG5cbiAgICAgICAgICAgICAgICBodG1sLm5vLXRvdWNoICYge1xuXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24ob3BhY2l0eSAwLjM1cyAkZWFzZS1pbi1vdXQtcXVhZCk7XG5cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaHRtbC5uby10b3VjaCAmIHtcblxuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAzMHB4O1xuXG4gICAgICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcblxuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGluaGVyaXQ7XG5cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICY6YmVmb3JlLCAmOmFmdGVyIHtcblxuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xuXG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBzcGFuLCAmOmFmdGVyIHtcblxuICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcblxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICAuI3skc2l0ZS1uYW1lc3BhY2V9dGltZWxpbmUtaXRlbXMge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgfVxuXG4gICAgLiN7JHNpdGUtbmFtZXNwYWNlfXRpbWVsaW5lLWl0ZW0ge1xuXG4gICAgICAgICY6YmVmb3JlIHtcblxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgICAgIGhlaWdodDogJGhlYWRlci1oZWlnaHQ7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAtICgkaGVhZGVyLWhlaWdodCk7XG5cbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRkZXNrdG9wKXtcblxuICAgICAgICAgICAgICAgIGhlaWdodDogJGhlYWRlci1oZWlnaHQtZGVza3RvcDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtICgkaGVhZGVyLWhlaWdodC1kZXNrdG9wKTtcblxuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogZW0oNTApO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGRlc2t0b3Ape1xuXG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogZW0oNzApO1xuXG4gICAgICAgIH1cblxuICAgICAgICAuI3skc2l0ZS1uYW1lc3BhY2V9dGltZWxpbmUtaXRlbV9fYWdlIHtcblxuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgICAgICAvLy4jeyRzaXRlLW5hbWVzcGFjZX1oZWFkaW5nLUIge1xuXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIHotaW5kZXg6ICR0aW1lbGluZS1pdGVtLXRpdGxlLXotaW5kZXg7XG5cbiAgICAgICAgICAgIC8vfVxuXG4gICAgICAgIH1cblxuICAgICAgICAuI3skc2l0ZS1uYW1lc3BhY2V9dGltZWxpbmUtaXRlbV9fY29udGVudCB7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICB6LWluZGV4OiAkdGltZWxpbmUtaXRlbS16LWluZGV4O1xuXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAtMzBweDtcblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkZGVza3RvcCl7XG5cbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtNDBweDtcblxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgXG4gICAgICAgIH1cblxuICAgICAgICAuI3skc2l0ZS1uYW1lc3BhY2V9dGltZWxpbmUtaXRlbV9fbWVkaWEsIC4jeyRzaXRlLW5hbWVzcGFjZX10aW1lbGluZS1pdGVtX190ZXh0IHtcblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkZGVza3RvcCl7XG5cbiAgICAgICAgICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBcbiAgICAgICAgfVxuXG4gICAgICAgIC4jeyRzaXRlLW5hbWVzcGFjZX10aW1lbGluZS1pdGVtX190ZXh0IHtcblxuICAgICAgICAgICAgcGFkZGluZy10b3A6IGVtKDMwKTsgICAgICAgICAgICBcblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkZGVza3RvcCl7XG5cbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogZW0oODApO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IGVtKDE1KTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IGVtKDE1KTtcblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICA+IGRpdiB7XG5cbiAgICAgICAgICAgICAgICBAZXh0ZW5kICV0ZXh0LXdpZHRoLWxpbWl0ZXI7XG5cbiAgICAgICAgICAgIH0gICBcbiAgICAgICAgICAgIFxuICAgICAgICB9XG5cbiAgICB9XG5cbn0iLCJcbi4jeyRzaXRlLW5hbWVzcGFjZX1jb250YWN0IHtcblxuICAgIC4jeyRzaXRlLW5hbWVzcGFjZX1jb250YWN0X19kZXRhaWxzIHtcblxuICAgICAgICBtYXJnaW4tdG9wOiBlbSg1MCk7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IGVtKDQwKTtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRkZXNrdG9wKXtcblxuICAgICAgICAgICAgQGluY2x1ZGUgY2xlYXJmaXg7XG5cbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgLiN7JHNpdGUtbmFtZXNwYWNlfWNvbnRhY3RfX3RleHQge1xuXG4gICAgICAgIHBhZGRpbmctdG9wOiBlbSgxNSk7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkZGVza3RvcCl7XG5cbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgd2lkdGg6IDMzLjMlO1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiBlbSgxNSk7XG5cbiAgICAgICAgfVxuXG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xuXG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMDtcblxuICAgICAgICB9XG5cbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkZGVza3RvcCl7XG5cbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfSAgXG5cbiAgICAgICAgYSB7XG5cbiAgICAgICAgICAgIGNvbG9yOiAkZ3JlZW4xO1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgICAgICAgICBodG1sLm5vLXRvdWNoICYge1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihjb2xvciAwLjY1cyAkZWFzZS1pbi1vdXQtcXVhZCk7XG5cbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcblxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJyb3duO1xuXG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfSAgICAgIFxuXG4gICAgfVxuXG4gICAgLiN7JHNpdGUtbmFtZXNwYWNlfWNvbnRhY3RfX21hcCB7XG5cbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgIGZpZ3VyZSB7XG5cbiAgICAgICAgICAgIG1hcmdpbjogZW0oMjApIDA7XG5cbiAgICAgICAgfVxuXG4gICAgICAgIGltZyB7XG5cbiAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcblxuICAgICAgICB9XG5cbiAgICB9XG5cbn1cblxuIiwiXG4uI3skc2l0ZS1uYW1lc3BhY2V9cHJlc3Mge1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkZGVza3RvcCl7XG5cbiAgICAgICAgQGluY2x1ZGUgY2xlYXJmaXg7XG5cbiAgICB9XG5cbiAgICAuI3skc2l0ZS1uYW1lc3BhY2V9cHJlc3NfX21lZGlhLCAuI3skc2l0ZS1uYW1lc3BhY2V9cHJlc3NfX3RleHQge1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGRlc2t0b3Ape1xuXG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgIHdpZHRoOiA1MCU7XG5cbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgLy8gLiN7JHNpdGUtbmFtZXNwYWNlfXByZXNzX19tZWRpYSB7XG5cbiAgICAvLyAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkZGVza3RvcCl7XG5cbiAgICAvLyAgICAgICAgIGhlaWdodDogMTAwdmg7XG5cbiAgICAvLyAgICAgfVxuXG4gICAgLy8gfVxuXG4gICAgLiN7JHNpdGUtbmFtZXNwYWNlfXByZXNzX19oZWFkZXIge1xuXG4gICAgICAgIHBhZGRpbmctdG9wOiBlbSg3MCk7XG5cbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGRlc2t0b3Ape1xuXG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogJGhlYWRlci1oZWlnaHQtZGVza3RvcCArIDcwcHg7XG5cbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgLiN7JHNpdGUtbmFtZXNwYWNlfXByZXNzX19ib2R5IHtcblxuICAgICAgICBwYWRkaW5nOiBlbSgzMCkgMDtcblxuICAgIH1cblxuICAgIC4jeyRzaXRlLW5hbWVzcGFjZX1wcmVzc19fZm9ybSB7XG5cbiAgICAgICAgZmllbGRzZXQge1xuXG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICBib3JkZXI6IDA7XG5cbiAgICAgICAgfVxuXG4gICAgfVxuXG5cbiAgICAuI3skc2l0ZS1uYW1lc3BhY2V9cHJlc3NfX2ZpbHRlciB7XG5cbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgfVxuXG4gICAgLiN7JHNpdGUtbmFtZXNwYWNlfXByZXNzX19yZXN1bHRzIHtcblxuICAgICAgICBtYXgtd2lkdGg6IGVtKDYwMCk7XG4gICAgICAgIG1hcmdpbjogZW0oNjApIGF1dG87XG4gICAgICAgIHBhZGRpbmc6IDAgZW0oNTApO1xuXG4gICAgfVxuXG59XG5cbi4jeyRzaXRlLW5hbWVzcGFjZX1wYWNrYWdlIHtcblxuICAgIG1hcmdpbi10b3A6IDE1cHg7XG5cbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRkZXNrdG9wKXtcblxuICAgICAgICB3aWR0aDogNzUlO1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuXG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYXNwZWN0LXJhdGlvKDMsMSk7XG5cbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JlZW4yO1xuXG4gICAgLiN7JHNpdGUtbmFtZXNwYWNlfXBhY2thZ2VfX2lubmVyIHtcblxuICAgICAgICBoZWlnaHQ6IDEwMCU7XG5cbiAgICAgICAgPiBkaXYge1xuXG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IFxuXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuXG4gICAgICAgICAgICBAaW5jbHVkZSB2ZXJ0aWNhbC1hbGlnbjtcblxuICAgICAgICB9XG5cbiAgICB9XG5cbn0iLCJcbi4jeyRzaXRlLW5hbWVzcGFjZX00MDQge1xuXG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgQGluY2x1ZGUgc2l6ZSgxMDAlKTtcblxuICAgIGJhY2tncm91bmQtY29sb3I6ICRncmV5MTtcblxuICAgIC4jeyRzaXRlLW5hbWVzcGFjZX00MDRfX2lubmVyIHtcblxuICAgICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcblxuICAgIH1cblxuICAgIC4jeyRzaXRlLW5hbWVzcGFjZX00MDRfX21lc3NhZ2Uge1xuXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMTVweDtcblxuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXG4gICAgICAgIGEge1xuXG4gICAgICAgICAgICBjb2xvcjogJGdyZWVuMTtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICAgICB9XG5cbiAgICB9XG5cbn0iLCIuc2VjdGlvbi0tbWFub3MtYmxhbmNhcyB7XG5cblx0LnBuMTYtcHJlc3NfX3RleHQge1xuXHRcdHBhZGRpbmctbGVmdDogMzBweDtcblx0XHRwYWRkaW5nLXJpZ2h0OiAzMHB4O1xuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoJGRlc2t0b3ApIHtcblx0XHRcdHBhZGRpbmctbGVmdDogMDtcblx0XHRcdHBhZGRpbmctcmlnaHQ6IDA7XG5cdFx0fVxuXHR9XG5cblx0LnBuMTYtcHJlc3NfX2hlYWRlciB7XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludCgkZGVza3RvcCkge1xuXHRcdFx0bWF4LXdpZHRoOiA0MTBweDtcblx0XHRcdG1hcmdpbjogMCBhdXRvO1xuXHRcdH1cblx0fVxuXG5cdC5tYW5vc0JsYW5jYXNMb2dvIHtcblx0XHRtYXJnaW46ICAzMHB4IGF1dG8gNDBweDtcblx0fVxuXG5cdC5wbjE2LXByZXNzX19ib2R5IHtcblx0XHRAaW5jbHVkZSBicmVha3BvaW50KCRkZXNrdG9wKSB7XG5cdFx0XHRtYXgtd2lkdGg6IDQxMHB4O1xuXHRcdFx0bWFyZ2luOiAwIGF1dG87XG5cdFx0fVxuXHR9XG5cblx0LnBuMTYtY3RhLS1CIHtcblx0XHRjb2xvcjogI2ZmZjtcblx0fVxufSIsIlxuLiN7JHNpdGUtbmFtZXNwYWNlfXZpZXdlciB7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRkZXNrdG9wKXtcblxuICAgICAgICBAaW5jbHVkZSBjbGVhcmZpeDtcblxuICAgIH1cblxuICAgIC4jeyRzaXRlLW5hbWVzcGFjZX12aWV3ZXJfX2l0ZW0ge1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGRlc2t0b3Ape1xuXG4gICAgICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG5cbiAgICAgICAgfVxuXG4gICAgfVxuXG59IiwiXG4uI3skc2l0ZS1uYW1lc3BhY2V9cG9sYSB7XG5cbiAgICBAaW5jbHVkZSBhc3BlY3QtcmF0aW8oMSwkY2hlc3Nib2FyZC1yYXRpbyk7IFxuXG4gICAgPiBkaXYgeyAgICAgICAgXG5cbiAgICAgICAgYmFja2dyb3VuZDoge1xuICAgICAgICAgICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgcG9zaXRpb246IDUwJSA1MCU7XG4gICAgICAgICAgICByZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgICAgIHNpemU6IGNvdmVyO1xuICAgICAgICB9XG5cbiAgICB9XG5cbn0iLCJcbi4jeyRzaXRlLW5hbWVzcGFjZX1jb3ZlciB7XG5cbiAgICBwYWRkaW5nLXRvcDogNDBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGRlc2t0b3Ape1xuXG4gICAgICAgIHBhZGRpbmctdG9wOiAkaGVhZGVyLWhlaWdodC1kZXNrdG9wICsgNzA7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAkaGVhZGVyLWhlaWdodC1kZXNrdG9wO1xuXG4gICAgfVxuXG4gICAgJi4jeyRzaXRlLW5hbWVzcGFjZX1jb3Zlci0tYWx0ZXJuYXRlIHtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRkZXNrdG9wKXtcblxuICAgICAgICAgICAgcGFkZGluZy10b3A6IDQwJTtcblxuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICAuI3skc2l0ZS1uYW1lc3BhY2V9Y292ZXJfX2hlYWRlciB7XG5cbiAgICAgICAgcGFkZGluZy1ib3R0b206IGVtKDMwKTtcblxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICB9XG5cbiAgICAuI3skc2l0ZS1uYW1lc3BhY2V9Y292ZXJfX2JvZHkgeyAgICAgICAgXG5cbiAgICAgICAgQGV4dGVuZCAldGV4dC1BO1xuICAgICAgICBAZXh0ZW5kICV0ZXh0LWRyb3BjYXA7XG4gICAgICAgIEBleHRlbmQgJXRleHQtd2lkdGgtbGltaXRlcjsgICAgXG4gICAgICAgIEBleHRlbmQgJXRleHQtcmVzZXQtY2hpbGRzOyAgXG4gICAgICAgIEBleHRlbmQgJXRleHQtbm9ybWFsaXplLWxpbmtzOyAgXG5cbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG5cbiAgICB9XG5cbiAgICAmLiN7JHNpdGUtbmFtZXNwYWNlfWNvdmVyLS1hbHRlcm5hdGUge1xuXG4gICAgICAgIC4jeyRzaXRlLW5hbWVzcGFjZX1jb3Zlcl9fYm9keSB7IFxuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRkZXNrdG9wKXtcblxuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAxNSU7XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICAvLyAuI3skc2l0ZS1uYW1lc3BhY2V9Y292ZXJfX3RleHQge1xuXG4gICAgLy8gICAgIHBhZGRpbmctdG9wOiBlbSg0MCk7XG4gICAgLy8gICAgIHBhZGRpbmctYm90dG9tOiBlbSg0MCk7XG5cbiAgICAvLyAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkZGVza3RvcCl7XG5cbiAgICAvLyAgICAgICAgIHBhZGRpbmctdG9wOiAkaGVhZGVyLWhlaWdodC1kZXNrdG9wO1xuICAgIC8vICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG5cbiAgICAvLyAgICAgfVxuXG4gICAgLy8gfVxuXG59IiwiXG4uI3skc2l0ZS1uYW1lc3BhY2V9Y2hlc3Nib2FyZCB7XG5cbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAvLyBUaGlzIGlzIHRoZSBsYXlvdXQgdGhhdCBnb2VzIG9uIHRvcCBvZiB0aGUgSFBcbiAgICAmLiN7JHNpdGUtbmFtZXNwYWNlfWNoZXNzYm9hcmQtLW1hc3RlciB7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkZGVza3RvcCl7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGFzcGVjdC1yYXRpbygxLCRjaGVzc2JvYXJkLXJhdGlvKTsgXG4gICAgICAgICAgICBcbiAgICAgICAgfVxuXG4gICAgICAgIC4jeyRzaXRlLW5hbWVzcGFjZX1jaGVzc2JvYXJkLWl0ZW0ge1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRkZXNrdG9wKXtcblxuICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDEpe1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoMil7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAyNSU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoMyl7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDc1JTtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAwJTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCg0KXtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMjUlO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCg1KXtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMCU7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogNzUlO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDYpe1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAyNSU7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogNzUlO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDcpe1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogNzUlO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDgpe1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDEwMCU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoOSl7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDI1JTtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAxMDAlO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgIH1cblxuICAgIC8vIFRoaXMgaXMgdGhlIGxheW91dCB0aGF0IGdvZXMgb24gSFAncyBpdGVtcyBhbmQgaW4gcHJlc3MgcGFnZVxuICAgICYuI3skc2l0ZS1uYW1lc3BhY2V9Y2hlc3Nib2FyZC0tc2VydmFudCB7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkZGVza3RvcCl7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGFzcGVjdC1yYXRpbyg0LDMqJGNoZXNzYm9hcmQtcmF0aW8pO1xuXG4gICAgICAgIH1cblxuICAgIH1cblxuICAgIC8vIFRoaXMgaXMgdGhlIGxheW91dCB0aGF0IGdvZXMgb24gSGlzdG9yeSBwYWdlXG4gICAgJi4jeyRzaXRlLW5hbWVzcGFjZX1jaGVzc2JvYXJkLS1hbHRlcm5hdGUge1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGRlc2t0b3Ape1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBhc3BlY3QtcmF0aW8oNCwyKiRjaGVzc2JvYXJkLXJhdGlvKTtcblxuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICAvLyBUaGlzIGlzIGp1c3QgZm9yIHRoZSB0aXRsZVxuICAgICYuI3skc2l0ZS1uYW1lc3BhY2V9Y2hlc3Nib2FyZC0tZmFuY3kge1xuXG4gICAgICAgIHdpZHRoOiA1MCU7XG5cbiAgICAgICAgLiN7JHNpdGUtbmFtZXNwYWNlfWNoZXNzYm9hcmQtaXRlbSB7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGRlc2t0b3Ape1xuXG4gICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoMSl7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCgyKXtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMjUlO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDAlO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgIH0gICAgXG5cbiAgICB9XG5cbiAgICAmLiN7JHNpdGUtbmFtZXNwYWNlfWNoZXNzYm9hcmQtLUEge1xuXG4gICAgICAgIC4jeyRzaXRlLW5hbWVzcGFjZX1jaGVzc2JvYXJkLWl0ZW0ge1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRkZXNrdG9wKXtcblxuICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDEpe1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCgyKXtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMjUlO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAyNSUgKiAkY2hlc3Nib2FyZC1yYXRpbztcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCgzKXtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMCU7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDUwJSAqICRjaGVzc2JvYXJkLXJhdGlvO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgIH1cblxuICAgICYuI3skc2l0ZS1uYW1lc3BhY2V9Y2hlc3Nib2FyZC0tQiB7XG5cbiAgICAgICAgLiN7JHNpdGUtbmFtZXNwYWNlfWNoZXNzYm9hcmQtaXRlbSB7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGRlc2t0b3Ape1xuXG4gICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoMSl7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCgyKXtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDAlO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDMpe1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiA3NSU7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogMCU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoNCl7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDc1JTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMjUlICogJGNoZXNzYm9hcmQtcmF0aW87XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgJi4jeyRzaXRlLW5hbWVzcGFjZX1jaGVzc2JvYXJkLS1DIHtcblxuICAgICAgICAuI3skc2l0ZS1uYW1lc3BhY2V9Y2hlc3Nib2FyZC1pdGVtIHtcblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkZGVza3RvcCl7XG5cbiAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCgxKXtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDIpe1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAyNSU7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogMCU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoMyl7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAwJTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCg0KXtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMjUlO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiA1MCUgKiAkY2hlc3Nib2FyZC1yYXRpbztcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICAmLiN7JHNpdGUtbmFtZXNwYWNlfWNoZXNzYm9hcmQtLUQge1xuXG4gICAgICAgIC4jeyRzaXRlLW5hbWVzcGFjZX1jaGVzc2JvYXJkLWl0ZW0ge1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRkZXNrdG9wKXtcblxuICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDEpe1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoMil7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMjUlICogJGNoZXNzYm9hcmQtcmF0aW87XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoMyl7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDc1JTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMjUlICogJGNoZXNzYm9hcmQtcmF0aW87XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoNCl7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogNTAlICogJGNoZXNzYm9hcmQtcmF0aW87XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgJi4jeyRzaXRlLW5hbWVzcGFjZX1jaGVzc2JvYXJkLS1FIHtcblxuICAgICAgICAuI3skc2l0ZS1uYW1lc3BhY2V9Y2hlc3Nib2FyZC1pdGVtIHtcblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkZGVza3RvcCl7XG5cbiAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCgxKXtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoMil7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCgzKXtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMjUlO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAyNSUgKiAkY2hlc3Nib2FyZC1yYXRpbzsgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDQpe1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAyNSUgKiAkY2hlc3Nib2FyZC1yYXRpbztcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCg1KXtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMjUlO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgJi4jeyRzaXRlLW5hbWVzcGFjZX1jaGVzc2JvYXJkLS1GIHtcblxuICAgICAgICAuI3skc2l0ZS1uYW1lc3BhY2V9Y2hlc3Nib2FyZC1pdGVtIHtcblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkZGVza3RvcCl7XG5cbiAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCgxKXtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDIpe1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAyNSU7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCgzKXtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogNzUlO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoNCl7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDI1JSAqICRjaGVzc2JvYXJkLXJhdGlvO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDUpe1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDI1JSAqICRjaGVzc2JvYXJkLXJhdGlvO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgIH1cblxuICAgICYuI3skc2l0ZS1uYW1lc3BhY2V9Y2hlc3Nib2FyZC0tRyB7XG5cbiAgICAgICAgLiN7JHNpdGUtbmFtZXNwYWNlfWNoZXNzYm9hcmQtaXRlbSB7XG5cbiAgICAgICAgICAgIC8vIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGRlc2t0b3Ape1xuXG4gICAgICAgICAgICAvLyAgICAgJjpudGgtY2hpbGQoMSl7XG4gICAgICAgICAgICAvLyAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAvLyAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIC8vICAgICB9XG5cbiAgICAgICAgICAgIC8vICAgICAmOm50aC1jaGlsZCgyKXtcbiAgICAgICAgICAgIC8vICAgICAgICAgbGVmdDogMjUlO1xuICAgICAgICAgICAgLy8gICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAvLyAgICAgfVxuXG4gICAgICAgICAgICAvLyAgICAgJjpudGgtY2hpbGQoMyl7XG4gICAgICAgICAgICAvLyAgICAgICAgIGxlZnQ6IDc1JTtcbiAgICAgICAgICAgIC8vICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgLy8gICAgIH1cblxuICAgICAgICAgICAgLy8gICAgICY6bnRoLWNoaWxkKDQpe1xuICAgICAgICAgICAgLy8gICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgLy8gICAgICAgICBtYXJnaW4tdG9wOiAyNSUgKiAkY2hlc3Nib2FyZC1yYXRpbztcbiAgICAgICAgICAgIC8vICAgICB9XG5cbiAgICAgICAgICAgIC8vICAgICAmOm50aC1jaGlsZCg1KXtcbiAgICAgICAgICAgIC8vICAgICAgICAgbGVmdDogMjUlO1xuICAgICAgICAgICAgLy8gICAgICAgICBtYXJnaW4tdG9wOiAyNSUgKiAkY2hlc3Nib2FyZC1yYXRpbztcbiAgICAgICAgICAgIC8vICAgICB9XG5cbiAgICAgICAgICAgIC8vICAgICAmOm50aC1jaGlsZCg2KXtcbiAgICAgICAgICAgIC8vICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgLy8gICAgICAgICBtYXJnaW4tdG9wOiAyNSUgKiAkY2hlc3Nib2FyZC1yYXRpbztcbiAgICAgICAgICAgIC8vICAgICB9XG5cbiAgICAgICAgICAgIC8vIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkZGVza3RvcCl7XG5cbiAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCgxKXtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDIpe1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAyNSU7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCgzKXtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoNCl7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDc1JTtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDUpe1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAyNSUgKiAkY2hlc3Nib2FyZC1yYXRpbztcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCg2KXtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMjUlO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAyNSUgKiAkY2hlc3Nib2FyZC1yYXRpbztcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCg3KXtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAyNSUgKiAkY2hlc3Nib2FyZC1yYXRpbztcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCg4KXtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogNzUlO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAyNSUgKiAkY2hlc3Nib2FyZC1yYXRpbztcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICAmLiN7JHNpdGUtbmFtZXNwYWNlfWNoZXNzYm9hcmQtLUgge1xuXG4gICAgICAgIC4jeyRzaXRlLW5hbWVzcGFjZX1jaGVzc2JvYXJkLWl0ZW0ge1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRkZXNrdG9wKXtcblxuICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDEpe1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoMil7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDI1JTtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDMpe1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiA3NSU7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCg0KXtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMjUlICogJGNoZXNzYm9hcmQtcmF0aW87XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoNSl7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDI1JTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMjUlICogJGNoZXNzYm9hcmQtcmF0aW87XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoNil7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMjUlICogJGNoZXNzYm9hcmQtcmF0aW87XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoNyl7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDUwJSAqICRjaGVzc2JvYXJkLXJhdGlvO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDgpe1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDUwJSAqICRjaGVzc2JvYXJkLXJhdGlvO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDkpe1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiA3NSU7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDUwJSAqICRjaGVzc2JvYXJkLXJhdGlvO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgIH1cblxuICAgICYuI3skc2l0ZS1uYW1lc3BhY2V9Y2hlc3Nib2FyZC0tSSB7XG5cbiAgICAgICAgLiN7JHNpdGUtbmFtZXNwYWNlfWNoZXNzYm9hcmQtaXRlbSB7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGRlc2t0b3Ape1xuXG4gICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoMSl7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCgyKXtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoMyl7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDc1JTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMjUlICogJGNoZXNzYm9hcmQtcmF0aW87XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoNCl7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMjUlICogJGNoZXNzYm9hcmQtcmF0aW87ICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDUpe1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiA3NSU7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICAmLiN7JHNpdGUtbmFtZXNwYWNlfWNoZXNzYm9hcmQtLWZvdG92aWRlbyB7XG5cbiAgICAgICAgLiN7JHNpdGUtbmFtZXNwYWNlfWNoZXNzYm9hcmQtaXRlbSB7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGRlc2t0b3Ape1xuXG4gICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoMSl7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCgyKXtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMjUlO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoMyl7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDQpe1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiA3NSU7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCg1KXtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMjUlICogJGNoZXNzYm9hcmQtcmF0aW87XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoNil7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDI1JTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMjUlICogJGNoZXNzYm9hcmQtcmF0aW87XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoNyl7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMjUlICogJGNoZXNzYm9hcmQtcmF0aW87XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoOCl7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDc1JTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMjUlICogJGNoZXNzYm9hcmQtcmF0aW87XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoOSl7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDUwJSAqICRjaGVzc2JvYXJkLXJhdGlvO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDEwKXtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMjUlO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiA1MCUgKiAkY2hlc3Nib2FyZC1yYXRpbztcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCgxMSl7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogNTAlICogJGNoZXNzYm9hcmQtcmF0aW87XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoMTIpe1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiA3NSU7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDUwJSAqICRjaGVzc2JvYXJkLXJhdGlvO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgIH1cblxuICAgICYuI3skc2l0ZS1uYW1lc3BhY2V9Y2hlc3Nib2FyZC0tbWFub3NibGFuY2FzIHtcblxuICAgICAgICAuI3skc2l0ZS1uYW1lc3BhY2V9Y2hlc3Nib2FyZC1pdGVtIHtcblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkZGVza3RvcCl7XG5cbiAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCgxKXtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDIpe1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCgzKXtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogNzUlO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoNCl7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMjUlICogJGNoZXNzYm9hcmQtcmF0aW87XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoNSl7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDc1JTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMjUlICogJGNoZXNzYm9hcmQtcmF0aW87XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoNil7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDUwJSAqICRjaGVzc2JvYXJkLXJhdGlvO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDcpe1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAyNSU7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDUwJSAqICRjaGVzc2JvYXJkLXJhdGlvO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDgpe1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDUwJSAqICRjaGVzc2JvYXJkLXJhdGlvO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDkpe1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiA3NSU7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDUwJSAqICRjaGVzc2JvYXJkLXJhdGlvO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICB9XG5cbn1cblxuLiN7JHNpdGUtbmFtZXNwYWNlfWNoZXNzYm9hcmQtaXRlbSB7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRkZXNrdG9wKXtcblxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG5cbiAgICAgICAgd2lkdGg6IDUwJTtcblxuICAgIH1cblxuICAgICYuI3skc2l0ZS1uYW1lc3BhY2V9Y2hlc3Nib2FyZC1pdGVtLS1BIHtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRkZXNrdG9wKXtcblxuICAgICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgICAgIC8vaGVpZ2h0OiA1MCU7XG5cbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgJi4jeyRzaXRlLW5hbWVzcGFjZX1jaGVzc2JvYXJkLWl0ZW0tLUIge1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGRlc2t0b3Ape1xuXG4gICAgICAgICAgICB3aWR0aDogMjUlO1xuICAgICAgICAgICAgLy9oZWlnaHQ6IDI1JTtcblxuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICAuI3skc2l0ZS1uYW1lc3BhY2V9Y2hlc3Nib2FyZC1pdGVtX19pbm5lciB7XG5cbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgQGluY2x1ZGUgYXNwZWN0LXJhdGlvKDEsJGNoZXNzYm9hcmQtcmF0aW8pO1xuXG4gICAgfVxuXG59XG5cbi4jeyRzaXRlLW5hbWVzcGFjZX1jaGVzc2JvYXJkLWl0ZW0tbG9nbyB7XG5cbiAgICBiYWNrZ3JvdW5kOiB7XG4gICAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgICBpbWFnZTogdXJsKCRpbWFnZXMtcGF0aCArICdjaGVzc2JvYXJkLWl0ZW0tbG9nby5wbmcnKTtcbiAgICAgICAgcG9zaXRpb246IDUwJSA1MCU7XG4gICAgICAgIHJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICBzaXplOiA4MCUgYXV0bztcbiAgICB9XG5cbn1cblxuLiN7JHNpdGUtbmFtZXNwYWNlfWNoZXNzYm9hcmQtaXRlbS1pbWFnZSB7XG5cbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICBiYWNrZ3JvdW5kOiB7XG4gICAgICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgcG9zaXRpb246IDUwJSA1MCU7XG4gICAgICAgIHJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICBzaXplOiBjb3ZlcjtcbiAgICB9XG5cbiAgICBodG1sLm5vLXRvdWNoICYge1xuXG4gICAgICAgICY6aG92ZXIge1xuXG4gICAgICAgICAgICAmOmFmdGVyIHsgICAgICAgICAgICBcblxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGJsYWNrLCAwLjYpO1xuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgc3BhbiB7XG5cbiAgICAgICAgQGluY2x1ZGUgcG9zaXRpb24oYWJzb2x1dGUsIDAgbnVsbCBudWxsIDApOyBcblxuICAgICAgICBAaW5jbHVkZSBzaXplKDEwMCUpO1xuXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGJsYWNrLCAwKTtcblxuICAgICAgICBodG1sLm5vLXRvdWNoICYge1xuXG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGJhY2tncm91bmQtY29sb3IgMC42NXMgJGVhc2UtaW4tb3V0LXF1YWQpO1xuXG4gICAgICAgIH1cblxuICAgICAgICAmOmFmdGVyIHtcblxuICAgICAgICAgICAgQGluY2x1ZGUgcG9zaXRpb24oYWJzb2x1dGUsIG51bGwgNTVweCAyMHB4IG51bGwpO1xuXG4gICAgICAgICAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkaWNvbi1mb250O1xuICAgICAgICAgICAgQGluY2x1ZGUgcmVtKCdmb250LXNpemUnLCAxOHB4KTtcblxuICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgIC8vY29udGVudDogJ1xcZjE3OCc7XG4gICAgICAgICAgICBAZXh0ZW5kICVpY29uLWxvbmctYXJyb3ctcmlnaHQ7XG5cbiAgICAgICAgICAgIGh0bWwubm8tdG91Y2ggJiB7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKHJpZ2h0IDAuNDVzICRlYXNlLWluLW91dC1xdWFkLCBvcGFjaXR5IDAuNjVzICRlYXNlLWluLW91dC1xdWFkIDAuMTVzKTtcblxuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgfVxuXG4gICAgZW0ge1xuXG4gICAgICAgIEBleHRlbmQgJXZpc3VhbGx5aGlkZGVuO1xuXG4gICAgfVxuXG4gICAgaHRtbC5uby10b3VjaCAmIHtcblxuICAgICAgICAmOmhvdmVyIHtcblxuICAgICAgICAgICAgc3BhbiB7XG5cbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRibGFjaywgMC42KTtcblxuICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuXG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAyMHB4O1xuXG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG5cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICB9XG5cbn1cblxuLiN7JHNpdGUtbmFtZXNwYWNlfWNoZXNzYm9hcmQtaXRlbS12aWRlbyB7XG5cbiAgICBiYWNrZ3JvdW5kOiB7XG4gICAgICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgcG9zaXRpb246IDUwJSA1MCU7XG4gICAgICAgIHJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICBzaXplOiBjb3ZlcjtcbiAgICB9XG5cbiAgICBlbSB7XG5cbiAgICAgICAgQGV4dGVuZCAldmlzdWFsbHloaWRkZW47XG5cbiAgICB9XG5cbiAgICBAZXh0ZW5kIC4jeyRzaXRlLW5hbWVzcGFjZX1wbGF5LXZpZGVvO1xuXG59XG5cbi4jeyRzaXRlLW5hbWVzcGFjZX1jaGVzc2JvYXJkLWl0ZW0tdGludCB7XG5cbiAgICAmLiN7JHNpdGUtbmFtZXNwYWNlfWNoZXNzYm9hcmQtaXRlbS10aW50LS1BIHtcblxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JleTM7XG5cbiAgICB9XG5cbiAgICAmLiN7JHNpdGUtbmFtZXNwYWNlfWNoZXNzYm9hcmQtaXRlbS10aW50LS1CIHtcblxuICAgICAgICAvL2JhY2tncm91bmQtY29sb3I6ICRibGFjaztcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdyZWVuMjtcblxuICAgIH1cblxuICAgICYuI3skc2l0ZS1uYW1lc3BhY2V9Y2hlc3Nib2FyZC1pdGVtLXRpbnQtLUMge1xuXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRncmV5MTtcblxuICAgIH1cblxuICAgICYuI3skc2l0ZS1uYW1lc3BhY2V9Y2hlc3Nib2FyZC1pdGVtLXRpbnQtLUQge1xuXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicm93bjtcblxuICAgIH1cblxuICAgICYuI3skc2l0ZS1uYW1lc3BhY2V9Y2hlc3Nib2FyZC1pdGVtLXRpbnQtLUUge1xuXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG5cbiAgICB9XG5cbn1cblxuLiN7JHNpdGUtbmFtZXNwYWNlfWNoZXNzYm9hcmQtbWVyZSB7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRkZXNrdG9wKXtcblxuICAgICAgICBmbG9hdDogbGVmdDtcblxuICAgIH1cblxuICAgICYuI3skc2l0ZS1uYW1lc3BhY2V9Y2hlc3Nib2FyZC1tZXJlLS1tZWRpYSB7XG5cbiAgICAgICAgQGluY2x1ZGUgYXNwZWN0LXJhdGlvKDEsJGNoZXNzYm9hcmQtcmF0aW8pO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGRlc2t0b3Ape1xuXG4gICAgICAgICAgICB3aWR0aDogMjUlOyAgICAgICAgICAgIFxuXG4gICAgICAgIH1cblxuICAgICAgICBhLCBzcGFuIHtcblxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7ICAgICAgXG4gICAgICAgICAgICBAaW5jbHVkZSBzaXplKDEwMCUpOyAgICAgXG5cbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHtcbiAgICAgICAgICAgICAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IDUwJSA1MCU7XG4gICAgICAgICAgICAgICAgcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgICAgICAgc2l6ZTogY292ZXI7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgJi4jeyRzaXRlLW5hbWVzcGFjZX1jaGVzc2JvYXJkLW1lcmUtLXRleHQge1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGRlc2t0b3Ape1xuXG4gICAgICAgICAgICB3aWR0aDogNTAlO1xuXG4gICAgICAgICAgICAvLyBAaW5jbHVkZSBhc3BlY3QtcmF0aW8oMSwxKTtcblxuICAgICAgICAgICAgLy8gb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgIC8vIG92ZXJmbG93LXk6IGF1dG87XG5cbiAgICAgICAgICAgIC8vYmFja2dyb3VuZDogeWVsbG93O1xuXG4gICAgICAgIH1cblxuICAgIH1cblxufSIsIlxuLiN7JHNpdGUtbmFtZXNwYWNlfXRleHRzaGVldCB7XG5cbiAgICAuI3skc2l0ZS1uYW1lc3BhY2V9dGV4dHNoZWV0X19oZWFkZXIge1xuXG4gICAgICAgIG1hcmdpbi1ib3R0b206IGVtKDMwKTtcblxuICAgIH1cblxuICAgIC4jeyRzaXRlLW5hbWVzcGFjZX10ZXh0c2hlZXRfX2JvZHkge1xuXG4gICAgICAgIC8vbWFyZ2luLWJvdHRvbTogZW0oMTUpO1xuXG4gICAgICAgIEBleHRlbmQgJXRleHQtQTtcbiAgICAgICAgQGV4dGVuZCAldGV4dC1mcmlsbC1BO1xuICAgICAgICBAZXh0ZW5kICV0ZXh0LXJlc2V0LWNoaWxkcztcbiAgICAgICAgQGV4dGVuZCAldGV4dC1ub3JtYWxpemUtbGlua3M7XG5cbiAgICAgICAgLy8+IHAsID4gdWwsID4gb2wge1xuXG4gICAgICAgIC8vICAgICAmOmZpcnN0LWNoaWxkIHtcblxuICAgICAgICAvLyAgICAgICAgIG1hcmdpbi10b3A6IDA7XG5cbiAgICAgICAgLy8gICAgIH1cblxuICAgICAgICAvLyAgICAgJjpsYXN0LWNoaWxkIHtcblxuICAgICAgICAvLyAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAgICAgLy8gICAgIH1cblxuICAgICAgICAvLyB9XG4gICAgICAgIFxuICAgIH1cblxuICAgIC4jeyRzaXRlLW5hbWVzcGFjZX1jdGEge1xuXG4gICAgICAgIG1hcmdpbi10b3A6IGVtKDE1KTtcblxuICAgIH1cblxufSIsIlxuLiN7JHNpdGUtbmFtZXNwYWNlfXNlYXJjaCB7XG5cbiAgICBwYWRkaW5nLXRvcDogZW0oMjUpO1xuICAgIC8vcGFkZGluZy1ib3R0b206IGVtKDI1KTtcblxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRkZXNrdG9wKXtcblxuICAgICAgICBwYWRkaW5nLXRvcDogZW0oNzUpO1xuICAgICAgICAvL3BhZGRpbmctYm90dG9tOiBlbSg3NSk7XG5cbiAgICB9XG5cbiAgICBodG1sLiN7JHNpdGUtbmFtZXNwYWNlfXNlYXJjaC1vcGVuICYge1xuXG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG5cbiAgICB9XG5cbiAgICAuI3skc2l0ZS1uYW1lc3BhY2V9c2VhcmNoX19xdHkge1xuXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA0MHB4OyBcblxuICAgICAgICBjb2xvcjogJGdyZWVuMTtcbiAgICAgICAgZm9udDoge1xuICAgICAgICAgICAgZmFtaWx5OiAkYnJhbmRvbmdyb3Rlc3F1ZTtcbiAgICAgICAgICAgIHdlaWdodDogNTAwO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIHJlbSgnZm9udC1zaXplJywgMTRweCk7XG5cbiAgICB9XG5cbiAgICAuI3skc2l0ZS1uYW1lc3BhY2V9c2VhcmNoX19yZXN1bHRzIHtcblxuICAgICAgICB1bCB7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJhc2UtbGlzdDtcblxuICAgICAgICB9IFxuXG4gICAgICAgIGxpIHtcblxuICAgICAgICAgICAgbWFyZ2luLXRvcDogNDBweDtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiA0MHB4O1xuXG4gICAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGdyZXkxO1xuXG4gICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcblxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDA7XG5cbiAgICAgICAgICAgICAgICBib3JkZXItdG9wOiBub25lO1xuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBleHRlbmQgJXRleHQtQTtcblxuICAgICAgICAgICAgcCB7XG5cbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgYSB7XG5cbiAgICAgICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgICAgICAgICBodG1sLm5vLXRvdWNoICYge1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihjb2xvciAwLjY1cyAkZWFzZS1pbi1vdXQtcXVhZCk7XG5cbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcblxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJyb3duO1xuXG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgICYuI3skc2l0ZS1uYW1lc3BhY2V9c2Nyb2xsYWJsZSB7XG5cbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICBvdmVyZmxvdy15OiBhdXRvO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRkZXNrdG9wKXtcblxuICAgICAgICAgICAgICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyIHsgXG5cbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTsgXG4gICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIH0gICAgXG5cbiAgICAgICAgICAgIH0gXG5cbiAgICAgICAgfVxuXG4gICAgfVxuXG59XG5cbi4jeyRzaXRlLW5hbWVzcGFjZX1zZWFyY2gtZm9ybSB7XG5cbiAgICBmaWVsZHNldCB7XG5cbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIGJvcmRlcjogMHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuXG4gICAgfVxuXG4gICAgLiN7JHNpdGUtbmFtZXNwYWNlfXNlYXJjaC1mb3JtX19pbnB1dCB7XG5cbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAvL3BhZGRpbmc6IDE1cHg7XG4gICAgICAgIHBhZGRpbmc6IDE1cHggMDtcblxuICAgICAgICBjb2xvcjogJGdyZWVuMTtcbiAgICAgICAgZm9udDoge1xuICAgICAgICAgICAgZmFtaWx5OiAkcGxheWZhaXJkaXNwbGF5O1xuICAgICAgICAgICAgd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgcmVtKCdmb250LXNpemUnLCAzMHB4KTtcblxuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkYnJvd247XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcblxuICAgICAgICBAZXh0ZW5kICVmb2N1cy1yZXNldDtcblxuICAgIH1cblxufSIsIlxuLiN7JHNpdGUtbmFtZXNwYWNlfXZpZGVvLXZpZXdlciB7XG4gICAgXG4gICAgQGluY2x1ZGUgYXNwZWN0LXJhdGlvKDEsJGNoZXNzYm9hcmQtcmF0aW8pO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkZGVza3RvcCl7XG5cbiAgICAgICAgQGluY2x1ZGUgYXNwZWN0LXJhdGlvKCk7XG5cbiAgICAgICAgaGVpZ2h0OiAxMDB2aDtcblxuICAgIH1cblxuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAuI3skc2l0ZS1uYW1lc3BhY2V9dmlkZW8tdmlld2VyX19pbm5lciB7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkZGVza3RvcCl7XG5cbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcblxuICAgICAgICB9XG5cbiAgICAgICAgPiBkaXYge1xuXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGRlc2t0b3Ape1xuXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuXG4gICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgIH1cblxuICAgIC4jeyRzaXRlLW5hbWVzcGFjZX12aWRlby12aWV3ZXJfX21lZGlhIHtcblxuICAgICAgICBAaW5jbHVkZSBzaXplKDEwMCUpO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGRlc2t0b3Ape1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBwb3NpdGlvbihhYnNvbHV0ZSwgNTAlIG51bGwgbnVsbCA1MCUpO1xuICAgICAgICAgICAgei1pbmRleDogJGJhc2Utei1pbmRleCArIDg5O1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBzaXplKGF1dG8pO1xuICAgICAgICAgICAgbWluLXdpZHRoOiAxMDAlOyBcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDEwMCU7IFxuXG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0odHJhbnNsYXRlWCgtNTAlKSB0cmFuc2xhdGVZKC01MCUpKTtcblxuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICAuI3skc2l0ZS1uYW1lc3BhY2V9dmlkZW8tdmlld2VyX19vdmVybGF5IHtcblxuICAgICAgICBAaW5jbHVkZSBwb3NpdGlvbihhYnNvbHV0ZSwgMCAwIDAgMCk7XG4gICAgICAgIHotaW5kZXg6ICRiYXNlLXotaW5kZXggKyA5MDtcblxuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICBAaW5jbHVkZSBzaXplKDEwMCUpO1xuXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoIzAwMDAwMCwgMC40KTsgICAgICAgIFxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGRlc2t0b3Ape1xuXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICAuI3skc2l0ZS1uYW1lc3BhY2V9dmlkZW8tdmlld2VyX19ib2R5IHtcblxuICAgICAgICBAaW5jbHVkZSBwb3NpdGlvbihhYnNvbHV0ZSwgMCBudWxsIG51bGwgMCk7XG4gICAgICAgIHotaW5kZXg6ICRiYXNlLXotaW5kZXggKyA5MTtcblxuICAgICAgICBAaW5jbHVkZSBzaXplKDEwMCUpO1xuICAgICAgICBwYWRkaW5nOiAxNXB4OyBcbiAgICAgICAgcGFkZGluZy10b3A6ICRoZWFkZXItaGVpZ2h0ICsgMTVweDtcblxuICAgICAgICAvL2JhY2tncm91bmQtY29sb3I6IHJnYmEoIzAwMDAwMCwgMC40KTtcblxuICAgICAgICAvL2h0bWwudG91Y2gge1xuXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRkZXNrdG9wKXtcblxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgLy99XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkZGVza3RvcCl7XG5cbiAgICAgICAgICAgIHBhZGRpbmc6IDE1cHggNTBweDtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAxNXB4O1xuXG4gICAgICAgIH1cblxuICAgICAgICAuI3skc2l0ZS1uYW1lc3BhY2V9dmlkZW8tdmlld2VyLXNoZWV0IHtcblxuICAgICAgICAgICAgQGluY2x1ZGUgdmVydGljYWwtYWxpZ247XG5cbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgXG5cbiAgICAgICAgfVxuXG4gICAgfVxuXG59XG5cbi4jeyRzaXRlLW5hbWVzcGFjZX12aWRlby12aWV3ZXItc2hlZXQge1xuXG4gICAgPiBwIHtcblxuICAgICAgICBtYXJnaW46IDA7XG5cbiAgICAgICAgY29sb3I6ICNmZmZmZmY7XG4gICAgICAgIGZvbnQ6IHtcbiAgICAgICAgICAgIGZhbWlseTogJHBsYXlmYWlyZGlzcGxheTtcbiAgICAgICAgICAgIHN0eWxlOiBpdGFsaWM7XG4gICAgICAgICAgICB3ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSByZW0oJ2ZvbnQtc2l6ZScsIDE4cHgpO1xuICAgICAgICBAaW5jbHVkZSByZW0oJ2xpbmUtaGVpZ2h0JywgMzRweCk7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkZGVza3RvcCl7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIHJlbSgnZm9udC1zaXplJywgMjJweCk7XG4gICAgICAgICAgICBAaW5jbHVkZSByZW0oJ2xpbmUtaGVpZ2h0JywgMzhweCk7XG5cbiAgICAgICAgfVxuXG4gICAgICAgICY6YmVmb3JlLCAmOmFmdGVyIHtcblxuICAgICAgICAgICAgZm9udDoge1xuICAgICAgICAgICAgICAgIHNpemU6IDIuNWVtO1xuICAgICAgICAgICAgICAgIHN0eWxlOiBub3JtYWw7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMC4xZW07XG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogLTAuMmVtO1xuXG4gICAgICAgIH1cblxuICAgICAgICAmOmJlZm9yZSB7ICBcblxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwLjFlbTtcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgY29udGVudDogJ+KAnCc7XG5cbiAgICAgICAgfVxuXG4gICAgICAgICY6YWZ0ZXIge1xuXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMC4xZW07XG5cbiAgICAgICAgICAgIGNvbnRlbnQ6ICfigJ0nO1xuXG4gICAgICAgIH1cblxuICAgIH1cblxuICAgIHNwYW4ge1xuXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcGFkZGluZy10b3A6IDQwcHg7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkZGVza3RvcCl7XG5cbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiA2MHB4O1xuXG4gICAgICAgIH1cblxuICAgICAgICAmOmJlZm9yZSB7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIHBvc2l0aW9uKGFic29sdXRlLCAyMHB4IG51bGwgbnVsbCA1MCUpO1xuXG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBAaW5jbHVkZSBzaXplKDUwcHggMXB4KTtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtMjVweDtcblxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcblxuICAgICAgICAgICAgY29udGVudDogJyc7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGRlc2t0b3Ape1xuXG4gICAgICAgICAgICAgICAgdG9wOiAzMHB4O1xuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgICBmb250OiB7XG4gICAgICAgICAgICBmYW1pbHk6ICRwbGF5ZmFpcmRpc3BsYXk7XG4gICAgICAgICAgICB3ZWlnaHQ6IDcwMDtcbiAgICAgICAgfSAgICAgICAgXG4gICAgICAgIEBpbmNsdWRlIHJlbSgnZm9udC1zaXplJywgMThweCk7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkZGVza3RvcCl7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIHJlbSgnZm9udC1zaXplJywgMjJweCk7XG5cbiAgICAgICAgfVxuXG4gICAgICAgIHNtYWxsIHtcblxuICAgICAgICAgICAgQGluY2x1ZGUgcmVtKCdmb250LXNpemUnLCAxMnB4KTtcblxuICAgICAgICB9XG5cbiAgICB9XG5cblxuXG59XG5cbi4jeyRzaXRlLW5hbWVzcGFjZX12aWRlby12aWV3ZXItY3RhIHtcblxuICAgIEBpbmNsdWRlIHBvc2l0aW9uKGFic29sdXRlLCBudWxsIG51bGwgMjVweCAwKTtcblxuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgdGV4dDoge1xuICAgICAgICBhbGlnbjogY2VudGVyO1xuICAgICAgICB0cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB9XG5cbn0iLCIvKiBTbGlkZXIgKi9cblxuLnNsaWNrLXNsaWRlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZTtcbiAgICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAgIC1raHRtbC11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAgIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICAtbXMtdG91Y2gtYWN0aW9uOiBwYW4teTtcbiAgICB0b3VjaC1hY3Rpb246IHBhbi15O1xuICAgIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4uc2xpY2stbGlzdCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICB9XG5cbiAgICAmLmRyYWdnaW5nIHtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBjdXJzb3I6IGhhbmQ7XG4gICAgfVxufVxuLnNsaWNrLXNsaWRlciAuc2xpY2stdHJhY2ssXG4uc2xpY2stc2xpZGVyIC5zbGljay1saXN0IHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbn1cblxuLnNsaWNrLXRyYWNrIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDA7XG4gICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAmOmJlZm9yZSxcbiAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgfVxuXG4gICAgJjphZnRlciB7XG4gICAgICAgIGNsZWFyOiBib3RoO1xuICAgIH1cblxuICAgIC5zbGljay1sb2FkaW5nICYge1xuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgfVxufVxuLnNsaWNrLXNsaWRlIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbWluLWhlaWdodDogMXB4O1xuICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICB9XG4gICAgaW1nIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICAgICYuc2xpY2stbG9hZGluZyBpbWcge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAmLmRyYWdnaW5nIGltZyB7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIH1cblxuICAgIC5zbGljay1pbml0aWFsaXplZCAmIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgLnNsaWNrLWxvYWRpbmcgJiB7XG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB9XG5cbiAgICAuc2xpY2stdmVydGljYWwgJiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIH1cbn1cbi5zbGljay1hcnJvdy5zbGljay1oaWRkZW4ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG4iLCJcbi5zbGljay1zbGlkZXIge1xuXG4gICAgcGFkZGluZy1ib3R0b206IDQwcHg7XG5cbn1cblxuLnNsaWNrLWxpc3Qge1xuXG4gICAgcGFkZGluZy1yaWdodDogNDBweDsgLy8gVGhpcyBhbGxvd3MgdG8gc2VlIDQwcHggb2YgbmV4dCBzbGlkZVxuXG59XG5cbi5zbGljay1kb3RzIHtcblxuICAgIEBpbmNsdWRlIHBvc2l0aW9uKGFic29sdXRlLCBudWxsIG51bGwgNXB4IDApO1xuICAgIHotaW5kZXg6ICRzbGljay1kb3RzLXotaW5kZXg7XG5cbiAgICBAaW5jbHVkZSBiYXNlLWxpc3Q7XG5cbiAgICB3aWR0aDogMTAwJTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICBsaSB7XG5cbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBtYXJnaW46IDAgN3B4O1xuXG4gICAgICAgIGJ1dHRvbiB7XG5cbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIC8vQGluY2x1ZGUgc2l6ZSgxNXB4KTtcbiAgICAgICAgICAgIEBpbmNsdWRlIHNpemUoMTJweCk7XG5cbiAgICAgICAgICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAwO1xuXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JleTE7XG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG5cbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgIG91dGxpbmU6IG5vbmU7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYmFja2dyb3VuZC1jb2xvciAwLjY1cyAkZWFzZS1pbi1vdXQtcXVhZCk7XG5cbiAgICAgICAgfVxuXG4gICAgICAgICYuc2xpY2stYWN0aXZlIGJ1dHRvbiB7XG5cbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRncmVlbjE7XG5cbiAgICAgICAgfVxuXG4gICAgICAgIGh0bWwubm8tdG91Y2ggJiB7XG5cbiAgICAgICAgICAgICY6aG92ZXIgYnV0dG9uIHtcblxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRncmVlbjE7XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgJi5zbGljay1hY3RpdmUgYnV0dG9uIHtcblxuICAgICAgICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuXG4gICAgICAgIH1cblxuICAgIH1cblxufVxuIl19 */
