@charset "UTF-8";
/**
 * Based on
 *
 *  - reset.css 2.0 by Eric Meyer
      (public domain)
 *    http://meyerweb.com/eric/tools/css/reset/
 *
 *  - normalize.css 8.0.1 by Nicolas Gallagher and Jonathan Neal
 *    (licensed under MIT)
 *    https://github.com/necolas/normalize.css
 *
 *  - Reboot from Bootstrap 4.5.3
 *    (licensed under MIT)
 *    https://github.com/twbs/bootstrap
 */
/**
 * IE10+ doesn't honor `<meta name="viewport">` in some cases
 */
@-ms-viewport {
  width: device-width;
}
/**
 * general reset
 */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video, main {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}

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

/**
 * inherit box model for all elements
 */
*,
*::before,
*::after {
  box-sizing: inherit;
}

/**
 * html root rules
 * 1. set border-box for inheritance
 * 2. avoid 300ms click delay on touch devices that support the `touch-action`
 *    CSS property
 * 3. Prevent adjustments of font size after orientation changes in IE, on
 *    Windows Phone and iOS.
 * 4. Setting @viewport causes scrollbars to overlap content in IE11 and Edge,
 *    so we force a non-overlapping, non-auto-hiding scrollbar to counteract.
 * 5. Change the default tap highlight to be completely transparent in iOS.
 */
html {
  /* 1 */
  box-sizing: border-box;
  /* 2 */
  touch-action: manipulation;
  /* 3 */
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  /* 4 */
  -ms-overflow-style: scrollbar;
  /* 5 */
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

/**
 * body rules
 * 1. reset line-height to 1
 * 2. set base font-family to sans-serif
 * 3. Set an explicit initial text-align value so that we can later use the
 *    `inherit` value on things like `<th>` elements.
 */
body {
  /* 1 */
  line-height: 1;
  /* 2 */
  font-family: sans-serif;
  /* 3 */
  text-align: left;
}

/**
 * Future-proof rule: in browsers that support :focus-visible, suppress the focus outline
 * on elements that programmatically receive focus but wouldn't normally show a visible
 * focus outline. In general, this would mean that the outline is only applied if the
 * interaction that led to the element receiving programmatic focus was a keyboard interaction,
 * or the browser has somehow determined that the user is primarily a keyboard user and/or
 * wants focus outlines to always be presented.
 *
 * See https://developer.mozilla.org/en-US/docs/Web/CSS/:focus-visible
 * and https://developer.paciellogroup.com/blog/2018/03/focus-visible-and-backwards-compatibility/
 */
[tabindex="-1"]:focus:not(:focus-visible) {
  outline: 0 !important;
}

/**
 * Lists
 */
ol, ul {
  list-style: none;
}

/**
 * Quotes
 */
blockquote, q {
  quotes: none;
}

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

/**
 * Tables
 */
table {
  border-collapse: collapse;
  border-spacing: 0;
}

caption {
  caption-side: bottom;
}

/**
 * Table Headers
 * 1. Matches default `<td>` alignment by inheriting from the `<body>`, or the
 *    closest parent with a set `text-align`.
 * 2. Fix alignment for Safari
 */
th {
  /* 1 */
  text-align: inherit;
  /* 2 */
  text-align: -webkit-match-parent;
}

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

/**
 * Preformatted Text
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Don't allow content to break outside
 * 3. We have @viewport set which causes scrollbars to overlap content in IE11
 *    and Edge, so we force a non-overlapping, non-auto-hiding scrollbar to
 *    counteract.
 */
pre,
code,
kbd,
samp {
  /* 1 */
  font-family: monospace, monospace;
}

pre {
  /* 2 */
  overflow: auto;
  /* 3 */
  -ms-overflow-style: scrollbar;
}

/**
 * Links
 * 1. Remove the gray background on active links in IE 10.
 * 2. Remove gaps in links underline in iOS 8+ and Safari 8+.
 */
a {
  /* 1 */
  background-color: transparent;
  /* 2 */
  -webkit-text-decoration-skip: objects;
}

/**
 * 1. Remove the bottom border in Chrome 57- and Firefox 39-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 * 3. Add explicit cursor to indicate changed behavior.
 * 4. Prevent the text-decoration to be skipped.
 */
abbr[title] {
  /* 1 */
  border-bottom: 0;
  /* 2 */
  text-decoration: underline;
  text-decoration: underline dotted;
  /* 3 */
  cursor: help;
  /* 4 */
  text-decoration-skip-ink: none;
}

address {
  font-style: normal;
  line-height: inherit;
}

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

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

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

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/**
 * Prevent `em` being affected from global reset
 */
em {
  font-style: italic;
}

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

/**
 * Hide SVG overflow in IE
 */
svg:not(:root) {
  overflow: hidden;
}

/**
 * Remove the default `border-radius` that macOS Chrome adds.
 * Details at https://github.com/twbs/bootstrap/issues/24093
 */
button {
  border-radius: 0;
}

/**
 * Work around a Firefox/IE bug where the transparent `button` background
 * results in a loss of the default `button` focus styles.
 * Credit: https://github.com/suitcss/base/
 */
button:focus {
  outline: 1px dotted;
  outline: 5px auto -webkit-focus-ring-color;
}

/**
 * form element resets
 * 1. Remove the margin in Firefox and Safari
 * 2. inherit font rules
 */
input,
button,
select,
optgroup,
textarea {
  /* 1 */
  margin: 0;
  /* 2 */
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
}

/**
 * 1. Prevent a WebKit bug where (2) destroys native `audio` and `video`
 *    controls in Android 4.
 * 2. Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type=reset],
[type=submit],
[type=button] {
  /* 2 */
  -webkit-appearance: button;
}

/**
 * Remove the default appearance of temporal inputs to avoid a Mobile Safari
 * bug where setting a custom line-height prevents text from being vertically
 * centered within the input.
 * See https://bugs.webkit.org/show_bug.cgi?id=139848
 * and https://github.com/twbs/bootstrap/issues/11266
 */
input[type=date],
input[type=time],
input[type=datetime-local],
input[type=month] {
  -webkit-appearance: listbox;
}

/**
 * 1. Remove the default vertical scrollbar in IE.
 * 2. Textareas should really only resize vertically so they don't break their
 *    (horizontal) containers.
 */
textarea {
  overflow: auto;
  resize: vertical;
}

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

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

/**
 * Set the cursor for non-`<button>` buttons
 * Details at https://github.com/twbs/bootstrap/pull/30562
 */
[role=button] {
  cursor: pointer;
}

/**
 * Remove the inheritance of word-wrap in Safari.
 * See https://github.com/twbs/bootstrap/issues/24990
 */
select {
  word-wrap: normal;
}

/**
 * Remove inner border and padding from Firefox, but don't restore the outline
 * like Normalize.
 */
button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

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

/**
 * Suppress the focus outline on elements that cannot be accessed via keyboard.
 * This prevents an unwanted focus outline from appearing around elements that
 * might still respond to pointer events.
 * Credit: https://github.com/suitcss/base
 */
[tabindex="-1"]:focus {
  outline: 0 !important;
}

/**
 * Browsers set a default `min-width: min-content` on fieldsets,
 * unlike e.g. `<div>`s, which have `min-width: 0` by default.
 * So we reset that to ensure fieldsets behave more like a standard block element.
 * See https://github.com/twbs/bootstrap/issues/12359
 * and https://html.spec.whatwg.org/multipage/#the-fieldset-and-legend-elements
 */
fieldset {
  min-width: 0;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Set display to block for all browsers
 */
legend {
  /* 1 */
  max-width: 100%;
  white-space: normal;
  /* 2 */
  color: inherit;
  /* 3 */
  display: block;
}

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

/**
 * 1. Remove the default vertical scrollbar in IE 10+.
 * 2. Textareas should really only resize vertically so they don't break their
 *    (horizontal) containers.
 */
textarea {
  /* 1 */
  overflow: auto;
  /* 2 */
  resize: vertical;
}

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

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

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

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

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

/**
 * Correct element display for output
 */
output {
  display: inline-block;
}

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

/**
 * Always hide an element with the `hidden` HTML attribute (from PureCSS).
 * Needed for proper display in IE 10-.
 */
[hidden] {
  display: none;
}

@font-face {
  font-family: "Capita Light";
  src: url("../../fonts/capita_light/capita_light.woff2") format("woff2"), url("../../fonts/capita_light/capita_light.woff") format("woff");
}
@font-face {
  font-family: "Capita Medium";
  src: url("../../fonts/capita_medium/capita_medium.woff2") format("woff2"), url("../../fonts/capita_medium/capita_medium.woff") format("woff");
}
/* ===== == = === 20em (320px) === = == ===== */
/* ===== == = === 37.5em (480px) === = == ===== */
/* ===== == = === 37.5em (600px) === = == ===== */
/* ===== == = === 48em (768px) === = == ===== */
/* ===== == = === 56.25em (900px) === = == ===== */
/* ===== == = === 68.75em (1100px) === = == ===== */
/* ===== == = === 75em (1200px) === = == ===== */
/* ===== == = === 81.25em (1300px) === = == ===== */
/* ===== == = === 100em (1600px) === = == ===== */
/* ===== == = === 125em (2000px) === = == ===== */
/* ===== == = === 125em (2400px) === = == ===== */
:root {
  --white: #fff;
  --black: #000;
  --blue: #005e94;
  --orange: #e85212;
  --yellow: #e8c813;
  --error: #3055db;
  --dark-grey: #002438;
  --medium-grey: #435e6b;
  --light-grey: #d5dbde;
  --off-white: #f5f5f5;
  --dark-grey-rgba: rgba(0, 36, 56, 0.8);
  --blue-rgba: rgba(18, 84, 121, 0.25);
  --white-rgba: rgba(255, 255, 255, 0.9);
  --whatsapp: rgb(37, 211, 102);
  --messenger: rgb(0, 106, 255);
  --facebook: rgb(66, 103, 178);
  --x: rgb(0, 0, 0);
  --telegram: rgb(42, 171, 238);
  --instagram: #dd2a7b;
  --sms: rgb(57, 255, 90);
  --email: var(--dark-grey);
  --ratio: 1.25;
  --base-size: 1rem;
  --spacing-sm-12: calc(var(--spacing-sm-11) / var(--ratio));
  --spacing-sm-11: calc(var(--spacing-sm-10) / var(--ratio));
  --spacing-sm-10: calc(var(--spacing-sm-9) / var(--ratio));
  --spacing-sm-9: calc(var(--spacing-sm-8) / var(--ratio));
  --spacing-sm-8: calc(var(--spacing-sm-7) / var(--ratio));
  --spacing-sm-7: calc(var(--spacing-sm-6) / var(--ratio));
  --spacing-sm-6: calc(var(--spacing-sm-5) / var(--ratio));
  --spacing-sm-5: calc(var(--spacing-sm-4) / var(--ratio));
  --spacing-sm-4: calc(var(--spacing-sm-3) / var(--ratio));
  --spacing-sm-3: calc(var(--spacing-sm-2) / var(--ratio));
  --spacing-sm-2: calc(var(--spacing-sm-1) / var(--ratio));
  --spacing-sm-1: calc(var(--base-size) / var(--ratio));
  --spacing-base: var(--base-size);
  --spacing-lg-1: calc(var(--spacing-base) * var(--ratio));
  --spacing-lg-2: calc(var(--spacing-lg-1) * var(--ratio));
  --spacing-lg-3: calc(var(--spacing-lg-2) * var(--ratio));
  --spacing-lg-4: calc(var(--spacing-lg-3) * var(--ratio));
  --spacing-lg-5: calc(var(--spacing-lg-4) * var(--ratio));
  --spacing-lg-6: calc(var(--spacing-lg-5) * var(--ratio));
  --spacing-lg-7: calc(var(--spacing-lg-6) * var(--ratio));
  --spacing-lg-8: calc(var(--spacing-lg-7) * var(--ratio));
  --spacing-lg-9: calc(var(--spacing-lg-8) * var(--ratio));
  --line-height-sm: 1.1;
  --line-height-base: 1.4;
  --line-height-md: 1.5;
  --letter-spacing-xs: 0.04em;
  --letter-spacing-sm: 0.06em;
  --letter-spacing-base: 0.08em;
  --letter-spacing-lg: 0.13em;
  --font-heading: canada-type-gibson, sans-serif;
  --font-paragraph: "Capita Light", serif;
  --font-paragraph-bold: "Capita Medium", serif;
  --hover-transition-fast: all 0.25s ease-in-out;
  --hover-transition: all 500ms cubic-bezier(0.645, 0.045, 0.355, 1);
  --nav-height: var(--spacing-lg-4);
  --form-field-height: calc(var(--spacing-lg-2) + var(--spacing-sm-1));
  --border-radius: var(--spacing-sm-7);
  --box-shadow: 0 30px 60px rgba(68, 68, 68, 0.3);
  --box-shadow-hover: 0 40px 80px rgba(68, 68, 68, 0.6);
  --narrow-container: 700px;
  --wider-container: 75%;
  --cursor-pointer: url("data:image/svg+xml,%3Csvg width='18' height='25' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill-rule='nonzero' fill='none'%3E%3Cpath d='M15.341 8.719c-.336 0-.662.066-.964.191a2.505 2.505 0 0 0-2.406-1.824c-.361.027-.664.065-.967.191a2.495 2.495 0 0 0-.64-1.09 2.48 2.48 0 0 0-1.766-.732h-.003c-.307 0-.598.063-.87.166V2.766A2.507 2.507 0 0 0 5.22.262a2.505 2.505 0 0 0-2.502 2.504v5.028c-.628-.162-1.261-.141-1.764.102-.6.29-.943.842-.943 1.514l.002 6.412c-.001 2.38.926 4.62 2.61 6.305a8.855 8.855 0 0 0 6.303 2.611c4.917 0 8.918-3.999 8.92-8.918v-4.6A2.509 2.509 0 0 0 15.34 8.72Zm.872 7.1c-.001 4.018-3.27 7.286-7.287 7.286a7.231 7.231 0 0 1-5.148-2.133 7.234 7.234 0 0 1-2.132-5.15L1.64 9.379c.088-.084.564-.122 1.079.148v4.726a.816.816 0 1 0 1.632 0V2.765a.871.871 0 0 1 1.742 0l-.003 8.018c0 .45.366.816.816.816h.002c.45 0 .816-.365.816-.816V7.956c0-.479.391-.87.872-.87h.001a.864.864 0 0 1 .867.871l.001 2.829c.003.45.367.813.817.813h.003c.449 0 .813-.367.813-.817V9.543a.862.862 0 0 1 .255-.57.865.865 0 0 1 .615-.255h.003c.478 0 .868.39.87.869l-.002 2.443v.008a.816.816 0 0 0 1.632 0v-.822a.867.867 0 0 1 .872-.867c.479 0 .87.39.87.87v4.6Z' fill='%23002438'/%3E%3Cpath d='M16.213 15.82c-.001 4.017-3.27 7.285-7.287 7.285a7.231 7.231 0 0 1-5.148-2.133 7.234 7.234 0 0 1-2.132-5.15L1.64 9.379c.088-.084.564-.122 1.079.148v4.726a.816.816 0 1 0 1.632 0V2.765a.871.871 0 0 1 1.742 0l-.003 8.018c0 .45.366.816.816.816h.002c.45 0 .816-.365.816-.816V7.956c0-.479.391-.87.872-.87h.001a.864.864 0 0 1 .867.871l.001 2.829c.003.45.367.813.817.813h.003c.449 0 .813-.367.813-.817V9.543a.862.862 0 0 1 .255-.57.865.865 0 0 1 .615-.255h.003c.478 0 .868.39.87.869l-.002 2.443v.008a.816.816 0 0 0 1.632 0v-.822a.867.867 0 0 1 .872-.867c.479 0 .87.39.87.87v4.6Z' fill='%23002438'/%3E%3Cpath d='M16.213 15.82c-.001 4.017-3.27 7.285-7.287 7.285a7.231 7.231 0 0 1-5.148-2.133 7.234 7.234 0 0 1-2.132-5.15L1.64 9.379c.088-.084.564-.122 1.079.148v4.726a.816.816 0 1 0 1.632 0V2.765a.871.871 0 0 1 1.742 0l-.003 8.018c0 .45.366.816.816.816h.002c.45 0 .816-.365.816-.816V7.956c0-.479.391-.87.872-.87h.001a.864.864 0 0 1 .867.871l.001 2.829c.003.45.367.813.817.813h.003c.449 0 .813-.367.813-.817V9.543a.862.862 0 0 1 .255-.57.865.865 0 0 1 .615-.255h.003c.478 0 .868.39.87.869l-.002 2.443v.008a.816.816 0 0 0 1.632 0v-.822a.867.867 0 0 1 .872-.867c.479 0 .87.39.87.87v4.6Z' fill='%23FFF'/%3E%3C/g%3E%3C/svg%3E"),
    auto;
  --timeline-border-width: 6px;
  --timeline-circle-size: 24px;
}

@media (min-width: 37.5em) {
  :root {
    --nav-height: var(--spacing-lg-4);
    --timeline-border-width: 14px;
    --timeline-circle-size: 46px;
  }
}
@media (min-width: 48em) {
  :root {
    --nav-height: var(--spacing-lg-5);
  }
}
@media (min-width: 68.75em) {
  :root {
    --nav-height: 65px;
    --timeline-border-width: 16px;
    --timeline-circle-size: 60px;
  }
}
@media (min-width: 75em) {
  :root {
    --nav-height: 70px;
  }
}
.dark-grey {
  background-color: var(--dark-grey);
  color: var(--white);
}
.dark-grey > * {
  color: var(--white);
}

.blue {
  background-color: var(--blue);
  color: var(--white);
}
.blue > * {
  color: var(--white);
}

.off-white {
  background-color: var(--off-white);
}

.white {
  background-color: var(--white);
}

html {
  height: 100%;
  box-sizing: border-box;
  scroll-behavior: smooth;
  scroll-padding-top: calc(var(--spacing-lg-4) + var(--nav-height));
  font-size: 17px;
}
html.body--noScroll {
  overflow: hidden;
}
@media (min-width: 56.25em) {
  html {
    font-size: 18px;
  }
}
@media (min-width: 68.75em) {
  html {
    font-size: 19px;
  }
}
@media (min-width: 81.25em) {
  html {
    font-size: 21px;
  }
}
@media (min-width: 150em) {
  html {
    font-size: 22px;
  }
}

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

.body {
  height: 100%;
  display: flex;
  flex-direction: column;
}
.body * {
  cursor: url("data:image/svg+xml,%3Csvg width='17' height='25' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill-rule='nonzero' fill='none'%3E%3Cpath d='m1.19 1.185 13.739 12.437-5.201 2.298 2.797 6.3-1.672.738-1.67.739-2.798-6.3-5.2 2.297.005-18.51ZM1.227 0A1.219 1.219 0 0 0 .005 1.218L0 19.768a1.219 1.219 0 0 0 1.718 1.115l4.098-1.809 2.31 5.2a1.223 1.223 0 0 0 1.614.621l1.676-.74 1.677-.74c.617-.273.896-.992.622-1.608l-2.309-5.2 4.099-1.809a1.216 1.216 0 0 0 .326-2.017L2.05.316A1.228 1.228 0 0 0 1.227 0Z' fill='%23FFF'/%3E%3Cpath fill='%23002438' d='m1.19 1.185 13.739 12.437-5.201 2.298 2.797 6.3-1.672.738-1.671.739-2.797-6.3-5.2 2.297z'/%3E%3C/g%3E%3C/svg%3E"), default;
}
.body ::selection {
  color: var(--white);
  background-color: var(--orange);
}
.body--noScroll {
  overflow: hidden;
}
.body--black {
  background-color: var(--black);
  color: var(--white);
}

@media (min-width: 20em) {
  :root {
    --bp: "screen-xs";
    --bp-color: black;
    --bp-bg-color: white;
  }
}
@media (min-width: 30em) {
  :root {
    --bp: "screen-xs-sm";
    --bp-color: black;
    --bp-bg-color: white;
  }
}
@media (min-width: 37.5em) {
  :root {
    --bp: "screen-sm";
    --bp-color: black;
    --bp-bg-color: white;
  }
}
@media (min-width: 48em) {
  :root {
    --bp: "screen-md";
    --bp-color: white;
    --bp-bg-color: black;
  }
}
@media (min-width: 56.25em) {
  :root {
    --bp: "screen-md-lg";
    --bp-color: black;
    --bp-bg-color: white;
  }
}
@media (min-width: 68.75em) {
  :root {
    --bp: "screen-lg";
    --bp-color: white;
    --bp-bg-color: black;
  }
}
@media (min-width: 75em) {
  :root {
    --bp: "screen-lg-xl";
    --bp-color: white;
    --bp-bg-color: black;
  }
}
@media (min-width: 81.25em) {
  :root {
    --bp: "screen-xl";
    --bp-color: black;
    --bp-bg-color: white;
  }
}
@media (min-width: 100em) {
  :root {
    --bp: "screen-xl-xxl";
    --bp-color: black;
    --bp-bg-color: white;
  }
}
@media (min-width: 125em) {
  :root {
    --bp: "screen-xxl";
    --bp-color: white;
    --bp-bg-color: black;
  }
}
@media (min-width: 150em) {
  :root {
    --bp: "screen-xxxl";
    --bp-color: white;
    --bp-bg-color: black;
  }
}
* {
  word-break: break-word;
  -webkit-hyphens: auto;
  -moz-hyphens: auto;
  hyphens: auto;
}

body {
  color: var(--dark-grey);
  font-family: var(--font-paragraph);
}

h1,
h2,
h3,
h4 {
  font-family: var(--font-heading);
  font-style: normal;
  line-height: var(--line-height-sm);
}
h1 strong,
h2 strong,
h3 strong,
h4 strong {
  font-family: var(--font-heading);
}
h1.has-text-align-center,
h2.has-text-align-center,
h3.has-text-align-center,
h4.has-text-align-center {
  text-align: left;
}
@media (min-width: 56.25em) {
  h1.has-text-align-center,
  h2.has-text-align-center,
  h3.has-text-align-center,
  h4.has-text-align-center {
    text-align: center;
  }
}

h1 {
  hyphens: none;
  font-weight: 600;
  font-size: var(--spacing-lg-2);
  margin-bottom: var(--spacing-sm-2);
  text-transform: uppercase;
  letter-spacing: var(--letter-spacing-sm);
}
h1 strong {
  font-weight: 600;
}
@media (min-width: 37.5em) {
  h1 {
    --lg: var(--spacing-lg-3);
    margin-bottom: var(--spacing-base);
  }
}
@media (min-width: 48em) {
  h1 {
    --lg: var(--spacing-lg-4);
    margin-bottom: var(--spacing-lg-1);
    font-size: var(--spacing-lg-3);
  }
}
@media (min-width: 81.25em) {
  h1 {
    --lg: var(--spacing-lg-5);
    font-size: var(--spacing-lg-4);
  }
}

h2,
h3,
h4 {
  letter-spacing: var(--letter-spacing-xs);
  font-weight: 500;
  margin-bottom: var(--spacing-sm-8);
}
h2 strong,
h3 strong,
h4 strong {
  font-weight: 500;
}
@media (min-width: 37.5em) {
  h2,
  h3,
  h4 {
    margin-bottom: var(--spacing-sm-6);
  }
}
@media (min-width: 48em) {
  h2,
  h3,
  h4 {
    margin-top: var(--spacing-lg-4);
    margin-bottom: var(--spacing-sm-2);
  }
}

h2 {
  font-size: var(--spacing-lg-1);
}

h3 {
  letter-spacing: var(--letter-spacing-xs);
  font-size: var(--spacing-base);
  text-transform: uppercase;
}

p {
  font-family: var(--font-paragraph);
  line-height: var(--line-height-base);
  margin-bottom: var(--spacing-base);
}
@media (min-width: 37.5em) {
  p {
    line-height: var(--line-height-md);
  }
}

strong {
  font-weight: normal;
  font-family: var(--font-paragraph-bold);
}

a {
  text-decoration: none;
}

label,
legend,
fieldset {
  display: block;
  margin-bottom: var(--spacing-sm-7);
  letter-spacing: var(--letter-spacing-base);
  font-family: var(--font-heading);
  font-weight: 400 !important;
  color: var(--medium-grey);
}

input[type=file] {
  font-size: var(--spacing-sm-1);
  color: var(--medium-grey);
}

textarea,
input[type=text],
input[type=email],
input[type=password],
input[type=tel],
select {
  appearance: none;
  margin-bottom: var(--spacing-sm-2);
  border-radius: var(--border-radius);
  border: solid 2px var(--light-grey);
  color: var(--dark-grey);
  font-family: var(--font-heading);
  font-weight: 400;
  letter-spacing: var(--letter-spacing-sm);
  transition: var(--hover-transition);
  background-color: transparent;
}
@media (min-width: 37.5em) {
  textarea,
  input[type=text],
  input[type=email],
  input[type=password],
  input[type=tel],
  select {
    margin-bottom: var(--spacing-base);
  }
}
textarea:focus, textarea:hover,
input[type=text]:focus,
input[type=text]:hover,
input[type=email]:focus,
input[type=email]:hover,
input[type=password]:focus,
input[type=password]:hover,
input[type=tel]:focus,
input[type=tel]:hover,
select:focus,
select:hover {
  outline: none;
  border: solid 2px var(--dark-grey);
}

input[type=text],
input[type=email],
input[type=password],
input[type=tel],
select {
  min-height: var(--form-field-height);
}

select {
  z-index: 1;
  -webkit-appearance: none;
  background-image: url("data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%23E85212%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E");
  background-repeat: no-repeat;
  background-position: right var(--spacing-sm-2) top 50%;
  background-size: var(--spacing-sm-2) auto;
  padding-right: var(--spacing-base);
}

/* Hide arrow icon in IE browsers */
select::-ms-expand {
  display: none;
}

select[multiple] {
  border: solid 2px var(--light-grey);
  background-image: none;
  padding-left: var(--spacing-sm-6);
}
select[multiple] option {
  white-space: normal;
  font-size: var(--spacing-sm-1);
}
select[multiple]:hover, select[multiple]:focus {
  color: inherit;
  outline: none;
  border-bottom: none;
}
select[multiple]:not(:disabled) option {
  border-radius: var(--border-radius);
  transition: 120ms all ease-in;
}
select[multiple]:not(:disabled) option:checked {
  background: linear-gradient(var(--orange), var(--orange));
  padding-left: var(--spacing-sm-3);
  color: var(--white) !important;
}

input[type=search] {
  appearance: none;
}

fieldset {
  margin-bottom: var(--spacing-lg-1);
}

input[type=radio],
input[type=checkbox] {
  opacity: 0;
  padding: 0;
  height: 0;
  width: 0;
}
input[type=radio] + label,
input[type=checkbox] + label {
  display: inline-block;
  position: relative;
  padding-left: var(--spacing-lg-3);
  font-size: var(--spacing-sm-1);
  margin-bottom: 0;
}
@media (min-width: 37.5em) {
  input[type=radio] + label,
  input[type=checkbox] + label {
    padding-left: var(--spacing-lg-1);
  }
}
input[type=radio] + label:before,
input[type=checkbox] + label:before {
  content: "";
  display: inline-block;
  position: absolute;
  left: 0;
  width: var(--spacing-lg-1);
  height: var(--spacing-lg-1);
  border: solid 2px var(--medium-grey);
  border-radius: var(--border-radius);
  margin-bottom: var(--spacing-sm-1);
}
@media (min-width: 37.5em) {
  input[type=radio] + label:before,
  input[type=checkbox] + label:before {
    width: var(--spacing-sm-1);
    height: var(--spacing-sm-1);
  }
}
input[type=radio] + label:after,
input[type=checkbox] + label:after {
  content: "";
  z-index: 1;
  opacity: 0;
  width: var(--spacing-sm-1);
  height: var(--spacing-sm-1);
  position: absolute;
  background-color: var(--medium-grey);
  transition: var(--hover-transition);
  top: calc((var(--spacing-lg-1) - var(--spacing-sm-1)) / 2);
  left: calc((var(--spacing-lg-1) - var(--spacing-sm-1)) / 2);
}
@media (min-width: 37.5em) {
  input[type=radio] + label:after,
  input[type=checkbox] + label:after {
    width: var(--spacing-sm-3);
    height: var(--spacing-sm-3);
    top: calc((var(--spacing-sm-1) - var(--spacing-sm-3)) / 2);
    left: calc((var(--spacing-sm-1) - var(--spacing-sm-3)) / 2);
  }
}
input[type=radio]:checked + label::after,
input[type=checkbox]:checked + label::after {
  opacity: 1;
}

input[type=radio] + label::before {
  border-radius: 100%;
}
input[type=radio] + label:after {
  border-radius: 100%;
}

input[type=checkbox] + label::before {
  border-radius: var(--border-radius);
}
input[type=checkbox] + label:after {
  clip-path: polygon(38% 73%, 87% 0, 100% 10%, 40% 100%, 0 70%, 11% 55%);
}

button,
input[type=submit] {
  background: none;
  color: inherit;
  border: none;
  padding: var(--spacing-sm-3) var(--spacing-base);
  cursor: var(--cursor-pointer);
  outline: inherit;
  font-family: var(--font-heading);
  border-radius: var(--border-radius);
  margin-top: var(--spacing-sm-5);
  margin-bottom: 0;
  min-height: var(--spacing-lg-4);
}
@media (min-width: 48em) {
  button,
  input[type=submit] {
    margin-top: var(--spacing-sm-2);
  }
}

.gform_wrapper {
  font-family: var(--font-heading);
}
.gform_wrapper p,
.gform_wrapper a {
  font-size: var(--spacing-sm-1);
  font-family: var(--font-heading);
  color: var(--medium-grey);
}
.gform_wrapper input[type=button] {
  margin: 0 !important;
}
.gform_wrapper .gform_button {
  display: inline-block;
  background-color: var(--orange) !important;
  color: var(--white) !important;
  border-radius: var(--border-radius);
  border: none;
  font-family: var(--font-heading);
  font-weight: 400;
  text-align: center;
  line-height: 1;
  letter-spacing: var(--letter-spacing-base);
  transition: var(--hover-transition-fast);
  padding: var(--spacing-sm-2) var(--spacing-sm-2) !important;
  cursor: var(--cursor-pointer);
  width: 100%;
  margin-left: 0 !important;
}
@media (min-width: 37.5em) {
  .gform_wrapper .gform_button {
    padding: var(--spacing-sm-1) var(--spacing-lg-2) !important;
  }
}
.gform_wrapper .gform_button:hover, .gform_wrapper .gform_button:focus {
  outline: none;
  border: none;
  background-color: var(--dark-grey) !important;
  color: var(--white) !important;
}
.gform_wrapper .gform_next_button,
.gform_wrapper .gform_previous_button {
  display: inline-block;
  background-color: var(--dark-grey) !important;
  color: var(--white) !important;
  border-radius: var(--border-radius);
  border: none;
  font-family: var(--font-heading);
  font-weight: 400;
  text-align: center;
  line-height: 1;
  letter-spacing: var(--letter-spacing-base);
  transition: var(--hover-transition-fast);
  padding: var(--spacing-sm-2) var(--spacing-sm-2) !important;
  cursor: var(--cursor-pointer);
  padding: var(--spacing-sm-3) var(--spacing-sm-1);
}
@media (min-width: 37.5em) {
  .gform_wrapper .gform_next_button,
  .gform_wrapper .gform_previous_button {
    padding: var(--spacing-sm-1) var(--spacing-lg-2) !important;
  }
}
@media (min-width: 37.5em) {
  .gform_wrapper .gform_next_button,
  .gform_wrapper .gform_previous_button {
    padding: var(--spacing-sm-3) var(--spacing-sm-1);
  }
}
.gform_wrapper .gform_next_button:hover, .gform_wrapper .gform_next_button:focus,
.gform_wrapper .gform_previous_button:hover,
.gform_wrapper .gform_previous_button:focus {
  outline: none;
  border: none;
  background-color: var(--blue) !important;
  color: var(--white) !important;
}

.gfield.ic-theme--polaroid {
  margin-bottom: var(--spacing-sm-1) !important;
}

.gform_fields {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  justify-content: space-between;
}

.gfield_label {
  margin-bottom: var(--spacing-sm-7) !important;
  line-height: var(--line-height-sm);
}
.bold .gfield_label {
  font-weight: 600 !important;
}

.gfield_radio label {
  margin-bottom: var(--spacing-sm-3) !important;
}

.gfield.buttons {
  height: auto !important;
}
.gfield.buttons .gchoice {
  border: solid 3px var(--dark-grey);
  border-radius: var(--border-radius);
  min-height: var(--form-field-height);
}
.gfield.buttons .gchoice label {
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  max-width: 100% !important;
  height: 100%;
  background: transparent;
  color: var(--dark-grey);
  font-size: var(--spacing-base) !important;
  transition: var(--hover-transition-fast);
}
@media (min-width: 37.5em) {
  .gfield.buttons .gchoice label {
    font-size: var(--spacing-sm-1);
  }
}
@media (min-width: 48em) {
  .gfield.buttons .gchoice label {
    font-size: var(--spacing-base);
  }
}
.gfield.buttons .gchoice label:before, .gfield.buttons .gchoice label:after {
  content: none;
}
.gfield.buttons .gchoice .gfield-choice-input {
  position: absolute !important;
  clip: rect(1px, 1px, 1px, 1px);
  width: 1px;
  height: 1px;
  overflow: hidden;
  padding: 0;
}
.gfield.buttons .gchoice .gfield-choice-input + label {
  display: flex;
  padding: 0;
}
.gfield.buttons .gchoice .gfield-choice-input + label:before {
  content: none;
}
.gfield.buttons .gchoice .gfield-choice-input + label:after {
  content: none;
}
.gfield.buttons .gchoice .gfield-choice-input:hover + label, .gfield.buttons .gchoice .gfield-choice-input:focus + label, .gfield.buttons .gchoice .gfield-choice-input:checked + label {
  background: var(--dark-grey);
  color: var(--white);
}
.gfield.buttons .ginput_container {
  margin-top: var(--spacing-sm-1);
  margin-bottom: var(--spacing-lg-2);
}
.gfield.buttons .gfield_radio {
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  gap: var(--spacing-sm-2);
}
.gfield.buttons__twoColumns .gfield_radio {
  grid-template-columns: repeat(1, 1fr);
}
@media (min-width: 37.5em) {
  .gfield.buttons__twoColumns .gfield_radio {
    grid-template-columns: repeat(2, 1fr);
  }
}
.gfield.buttons__threeColumns .gfield_radio {
  grid-template-columns: repeat(3, 1fr);
}
.gfield.buttons__fourColumns .gfield_radio {
  grid-template-columns: repeat(4, 1fr);
}

.buttonsForm_wrapper {
  box-shadow: none !important;
  padding: 0 !important;
}
.buttonsForm .gchoice {
  display: flex !important;
  justify-content: center;
}
.buttonsForm .gfield-choice-input {
  position: absolute !important;
  clip: rect(1px, 1px, 1px, 1px);
  width: 1px;
  height: 1px;
  overflow: hidden;
  padding: 0;
}
.buttonsForm .gfield-choice-input + label {
  display: flex;
  padding: 0;
}
.buttonsForm .gfield-choice-input + label:before {
  content: none;
}
.buttonsForm .gfield-choice-input + label:after {
  content: none;
}
.buttonsForm .gfield-choice-input:checked + label {
  display: inline-block;
  background-color: var(--orange) !important;
  color: var(--white) !important;
  border-radius: var(--border-radius);
  border: none;
  font-family: var(--font-heading);
  font-weight: 400;
  text-align: center;
  line-height: 1;
  letter-spacing: var(--letter-spacing-base);
  transition: var(--hover-transition-fast);
  padding: var(--spacing-sm-2) var(--spacing-sm-2) !important;
  cursor: var(--cursor-pointer);
}
@media (min-width: 37.5em) {
  .buttonsForm .gfield-choice-input:checked + label {
    padding: var(--spacing-sm-1) var(--spacing-lg-2) !important;
  }
}
.buttonsForm .gfield-choice-input:checked + label:hover, .buttonsForm .gfield-choice-input:checked + label:focus {
  outline: none;
  border: none;
  background-color: var(--blue) !important;
  color: var(--white) !important;
}
.buttonsForm .gform-field-label {
  display: inline-block;
  background-color: var(--dark-grey) !important;
  color: var(--white) !important;
  border-radius: var(--border-radius);
  border: none;
  font-family: var(--font-heading);
  font-weight: 400;
  text-align: center;
  line-height: 1;
  letter-spacing: var(--letter-spacing-base);
  transition: var(--hover-transition-fast);
  padding: var(--spacing-sm-2) var(--spacing-sm-2) !important;
  cursor: var(--cursor-pointer);
  box-shadow: var(--box-shadow);
  font-size: var(--spacing-lg-1) !important;
}
@media (min-width: 37.5em) {
  .buttonsForm .gform-field-label {
    padding: var(--spacing-sm-1) var(--spacing-lg-2) !important;
  }
}
.buttonsForm .gform-field-label:hover, .buttonsForm .gform-field-label:focus {
  outline: none;
  border: none;
  background-color: var(--orange) !important;
  color: var(--white) !important;
}
.buttonsForm .gform_footer {
  padding: 0 !important;
  margin: 0 !important;
}
.buttonsForm .gform_button {
  visibility: hidden;
  position: absolute !important;
  clip: rect(1px, 1px, 1px, 1px);
  width: 1px;
  height: 1px;
  overflow: hidden;
}

.gsection {
  border-bottom: 2px solid var(--light-grey);
  padding-bottom: var(--spacing-sm-1);
  margin-bottom: var(--spacing-lg-1);
  width: 100%;
}

.ginput_container_fileupload {
  margin-bottom: var(--spacing-lg-1);
}

.gform_fileupload_rules {
  font-size: var(--spacing-sm-2);
}

.gfield_consent_label {
  font-size: calc(0.9 * var(--spacing-sm-1)) !important;
  line-height: var(--line-height-sm);
}
.gfield_consent_label a {
  font-size: inherit;
  font-weight: inherit;
  text-decoration: underline;
  text-underline-offset: 2px;
  text-decoration-thickness: 2px;
  color: var(--dark-grey);
  letter-spacing: var(--letter-spacing-sm);
}

.image-choices-field legend {
  margin-bottom: var(--spacing-sm-1);
}
.image-choices-field .gfield_radio,
.image-choices-field .gfield_checkbox {
  display: grid !important;
  grid-template-columns: repeat(2, 1fr);
  gap: var(--spacing-sm-3);
}
.image-choices-field.three .gfield_radio, .image-choices-field.three .gfield_checkbox {
  grid-template-columns: repeat(3, 1fr);
}
.image-choices-field.five .gfield_radio,
.image-choices-field.five .gfield_checkbox {
  grid-template-columns: repeat(6, 1fr);
  grid-template-rows: auto 1fr;
}
.image-choices-field.five .image-choices-choice.gchoice:nth-child(-n+2) {
  grid-column: span 3;
}
.image-choices-field.five .image-choices-choice.gchoice:nth-last-child(-n+3) {
  grid-column: span 2;
}
.image-choices-field .image-choices-choice.gchoice {
  margin: 0 !important;
}
.image-choices-field .gfield-choice-input {
  position: absolute !important;
  clip: rect(1px, 1px, 1px, 1px);
  width: 1px;
  height: 1px;
  overflow: hidden;
  padding: 0;
}
.image-choices-field .gfield-choice-input + label {
  display: flex;
  padding: 0;
}
.image-choices-field .gfield-choice-input + label:before {
  content: none;
}
.image-choices-field .gfield-choice-input + label:after {
  content: none;
}
.image-choices-field .gform-field-label {
  margin-bottom: 0 !important;
}

.image-choices-choice {
  border: solid 3px var(--dark-grey) !important;
  border-radius: var(--border-radius);
  transition: var(--hover-transition-fast);
}
.image-choices-choice:hover, .image-choices-choice:focus {
  background-color: var(--dark-grey);
}
.image-choices-choice:hover h2,
.image-choices-choice:hover p,
.image-choices-choice:hover .image-choices-choice-text, .image-choices-choice:focus h2,
.image-choices-choice:focus p,
.image-choices-choice:focus .image-choices-choice-text {
  color: var(--white);
}

.image-choices-choice-selected {
  background-color: var(--dark-grey);
  border-radius: var(--border-radius);
}
.image-choices-choice-selected h2,
.image-choices-choice-selected p,
.image-choices-choice-selected .image-choices-choice-text {
  color: var(--white) !important;
}

.image-choices-choice-image-wrap {
  position: relative;
  height: 100% !important;
  width: 100% !important;
  border-radius: var(--border-radius);
}
.image-choices-choice-image-wrap:before {
  content: "";
  display: block;
  height: 0;
  width: 100%;
  padding-top: 100%;
}
.image-choices-choice-image-wrap img,
.image-choices-choice-image-wrap svg,
.image-choices-choice-image-wrap iframe {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.image-choices-field.ic-theme--polaroid .gform-field-label {
  padding-top: var(--spacing-sm-3) !important;
  padding-bottom: var(--spacing-sm-3) !important;
}
.image-choices-field.ic-theme--polaroid .image-choices-choice-image-wrap {
  margin-bottom: var(--spacing-sm-2);
}
.image-choices-field.ic-theme--polaroid input[type=checkbox] + label:after,
.image-choices-field.ic-theme--polaroid input[type=radio] + label:after {
  clip-path: unset;
  left: auto;
  right: var(--spacing-sm-10);
  top: var(--spacing-sm-10);
  transform: translateY(0) scale(0.8) !important;
  opacity: 1 !important;
  background-image: none;
  background-color: var(--white);
  border-color: var(--dark-grey);
  border-width: 3px;
  border-style: solid;
  width: var(--spacing-lg-4);
  height: var(--spacing-lg-4);
}
.image-choices-field.ic-theme--polaroid input[type=checkbox]:checked + label:after,
.image-choices-field.ic-theme--polaroid input[type=radio]:checked + label:after {
  transform: translateY(0) scale(1) !important;
  background-image: var(--ic-selected-icon);
  background-color: var(--dark-grey);
}
.image-choices-field.ic-theme--polaroid .image-choices-choice-text {
  padding: 0;
  color: var(--medium-grey) !important;
  letter-spacing: var(--letter-spacing-base);
  font-weight: 400 !important;
  font-family: var(--font-heading) !important;
}
.image-choices-field.ic-theme--polaroid .image-choices-choice-selected h2,
.image-choices-field.ic-theme--polaroid .image-choices-choice-selected p,
.image-choices-field.ic-theme--polaroid .image-choices-choice-selected .image-choices-choice-text {
  color: var(--medium-grey) !important;
}
.image-choices-field.ic-theme--polaroid .gform-field-label {
  width: auto !important;
}

.gform_hidden,
.gfield_visibility_hidden {
  display: none;
}

.hidden_label .gfield_label {
  border: 0;
  clip: rect(1px, 1px, 1px, 1px);
  -webkit-clip-path: inset(50%);
  clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
  word-wrap: normal !important;
}

.ui-datepicker {
  background-color: var(--white);
  box-shadow: var(--box-shadow);
  border-radius: var(--border-radius);
  padding: var(--spacing-sm-2);
}
.ui-datepicker .ui-datepicker-prev,
.ui-datepicker .ui-datepicker-next {
  font-size: var(--spacing-sm-1);
  font-family: var(--font-heading);
  color: var(--medium-grey);
}
.ui-datepicker .ui-datepicker-next {
  float: right;
}
.ui-datepicker .ui-datepicker-title {
  display: flex;
  justify-content: space-between;
  margin-top: var(--spacing-base);
}
.ui-datepicker .ui-datepicker-title select {
  border-bottom: none;
}
.ui-datepicker .ui-datepicker-unselectable {
  color: var(--light-grey);
}
.ui-datepicker th {
  font-size: var(--spacing-sm-1);
  min-width: var(--spacing-lg-3);
  text-align: center;
  height: var(--spacing-lg-2);
  font-family: var(--font-heading);
  letter-spacing: var(--letter-spacing-sm);
  color: var(--black);
}
.ui-datepicker td {
  font-family: var(--font-heading);
  min-width: var(--spacing-lg-2);
  height: var(--spacing-lg-2);
  text-align: center;
  vertical-align: middle;
}
.ui-datepicker td a {
  color: var(--medium-grey);
}
.ui-datepicker td a:hover, .ui-datepicker td a:focus {
  color: var(--orange);
}

.gfield_required {
  color: var(--dark-grey) !important;
  font-size: var(--spacing-sm-1) !important;
}

.gform_validation_container {
  display: none !important;
  position: absolute !important;
  left: -9000px;
}

.gform_validation_errors {
  background: none !important;
  box-shadow: none !important;
  border: none !important;
  margin-bottom: var(--spacing-sm-1) !important;
  margin-top: var(--spacing-sm-1) !important;
  padding: 0 !important;
  position: relative !important;
  width: 100% !important;
}

.gform_submission_error {
  background-color: var(--error);
  color: var(--white) !important;
  padding: var(--spacing-sm-3) !important;
  font-size: var(--spacing-base) !important;
  line-height: var(--line-height-sm) !important;
  text-transform: none;
  margin-bottom: var(--spacing-sm-2);
  border-radius: var(--border-radius);
  text-align: center;
}

.gform-icon--circle-error {
  display: none !important;
}

.gfield_error [aria-invalid=true] {
  border: solid 2px var(--orange) !important;
}
.gfield_error label,
.gfield_error legend {
  color: inherit !important;
}

.gfield_validation_message {
  font-size: var(--spacing-sm-1) !important;
  color: var(--error) !important;
  background: none !important;
  padding: 0 !important;
  border: none !important;
}

.gform_required_legend {
  position: absolute !important;
  clip: rect(1px, 1px, 1px, 1px);
  width: 1px;
  height: 1px;
  overflow: hidden;
}

:root {
  --tamaro-primary-color: var(--dark-grey);
  --tamaro-primary-color__hover: var(--blue);
  --tamaro-primary-bg-color: var(--off-white);
  --tamaro-text-color: var(--dark-grey);
  --tamaro-bg-color__hover: var(--off-white);
  --tamaro-border-color: var(--dark-grey);
  --tamaro-placeholder-color: var(--medium-grey);
  --tamaro-info-text-color: var(--blue);
  --tamaro-info-icon-color: var(--blue);
  --tamaro-error-color: var(--error);
  --tamaro-button-primary-bg-color: var(--orange);
  --tamaro-button-primary-bg-color__hover: var(--dark-grey);
}

#tamaro-widget.tamaro-widget {
  padding-bottom: var(--spacing-lg-2);
}
#tamaro-widget.tamaro-widget .widget-content .widget-block .widget-block-header .title {
  border-bottom: solid 2px var(--medium-grey);
  font-family: var(--font-heading);
  padding-bottom: var(--spacing-sm-4);
  justify-content: center;
}
#tamaro-widget.tamaro-widget .widget-content .widget-block .widget-block-header .title .text {
  letter-spacing: var(--letter-spacing-sm);
  margin-left: 0 !important;
  text-transform: uppercase;
}
#tamaro-widget.tamaro-widget .widget-content .widget-block .widget-block-header .title .position {
  display: none !important;
}
#tamaro-widget.tamaro-widget .payment-amounts-and-intervals-block {
  margin-top: 3.5rem;
}

.raiseNow__block {
  max-width: var(--narrow-container);
  margin-left: auto;
  margin-right: auto;
}

.screen-reader-text {
  position: absolute !important;
  clip: rect(1px, 1px, 1px, 1px);
  width: 1px;
  height: 1px;
  overflow: hidden;
}

.otgs-development-site-front-end {
  display: none;
}

pre.xdebug-var-dump {
  overflow: visible;
  position: relative;
  z-index: 999;
}
pre.xdebug-var-dump small:first-child {
  display: none;
}
pre.xdebug-var-dump > * {
  position: relative;
  z-index: 999;
}

.single {
  position: relative;
}
.single__backLink {
  position: relative;
  display: block;
  padding-left: var(--spacing-base);
  color: var(--dark-grey);
  font-size: var(--spacing-sm-1);
  font-family: var(--font-heading);
  margin-bottom: var(--spacing-base);
}
@media (min-width: 100em) {
  .single__backLink {
    margin-bottom: 0;
    transform: translateY(calc(var(--spacing-sm-1) + var(--spacing-sm-5)));
  }
}
.single__backLink:before {
  content: "";
  position: absolute;
  left: 0;
  top: 7%;
  background-image: url("../../img/arrow-back.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  width: var(--spacing-sm-2);
  height: var(--spacing-sm-2);
  transform: translateX(0);
  transition: var(--hover-transition);
}
.single__backLink:hover:before, .single__backLink:focus:before {
  transform: translateX(-3px);
}
.single__backLink--bottom {
  position: relative;
  display: block;
  padding-left: var(--spacing-base);
  color: var(--dark-grey);
  font-size: var(--spacing-sm-1);
  font-family: var(--font-heading);
  margin-bottom: var(--spacing-lg-3);
}
.single__backLink--bottom:before {
  content: "";
  position: absolute;
  left: 0;
  top: 7%;
  background-image: url("../../img/arrow-back.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  width: var(--spacing-sm-2);
  height: var(--spacing-sm-2);
  transform: translateX(0);
  transition: var(--hover-transition);
}
.single__backLink--bottom:hover:before, .single__backLink--bottom:focus:before {
  transform: translateX(-3px);
}
.single__header {
  max-width: var(--narrow-container);
  margin-left: 0;
}
@media (min-width: 81.25em) {
  .single__header {
    margin-left: calc((70vw - var(--narrow-container)) / 2);
  }
}
@media (min-width: 125em) {
  .single__header {
    margin-left: calc((1300px - var(--narrow-container)) / 2);
  }
}
.single__headerInfo {
  font-weight: 400;
  font-family: var(--font-heading);
  font-size: var(--spacing-sm-1);
  color: var(--blue);
  text-transform: uppercase;
  letter-spacing: var(--letter-spacing-base);
  margin-bottom: var(--spacing-sm-3);
}
.single__title {
  text-transform: none;
}
.single__content {
  width: 100%;
}
.single__content > h1,
.single__content > h2,
.single__content > h3,
.single__content > h4,
.single__content > p,
.single__content > ul,
.single__content > ol,
.single__content > .wp-block-file,
.single__content > .wp-block-image,
.single__content > .wp-block-embed,
.single__content > .wp-block-quote,
.single__content > .textHighlighted,
.single__content > .callToAction,
.single__content > .wp-block-pb-accordion-item,
.single__content > .gform_wrapper {
  max-width: var(--narrow-container);
  margin-left: 0;
}
@media (min-width: 81.25em) {
  .single__content > h1,
  .single__content > h2,
  .single__content > h3,
  .single__content > h4,
  .single__content > p,
  .single__content > ul,
  .single__content > ol,
  .single__content > .wp-block-file,
  .single__content > .wp-block-image,
  .single__content > .wp-block-embed,
  .single__content > .wp-block-quote,
  .single__content > .textHighlighted,
  .single__content > .callToAction,
  .single__content > .wp-block-pb-accordion-item,
  .single__content > .gform_wrapper {
    margin-left: calc((70vw - var(--narrow-container)) / 2);
  }
}
@media (min-width: 125em) {
  .single__content > h1,
  .single__content > h2,
  .single__content > h3,
  .single__content > h4,
  .single__content > p,
  .single__content > ul,
  .single__content > ol,
  .single__content > .wp-block-file,
  .single__content > .wp-block-image,
  .single__content > .wp-block-embed,
  .single__content > .wp-block-quote,
  .single__content > .textHighlighted,
  .single__content > .callToAction,
  .single__content > .wp-block-pb-accordion-item,
  .single__content > .gform_wrapper {
    margin-left: calc((1300px - var(--narrow-container)) / 2);
  }
}
.single__content > .gform_wrapper {
  box-shadow: var(--box-shadow);
  padding: var(--spacing-lg-2) var(--spacing-lg-1);
  margin-top: var(--spacing-base);
  margin-bottom: var(--spacing-base);
}
@media (min-width: 37.5em) {
  .single__content > .gform_wrapper {
    padding: var(--spacing-lg-3) var(--spacing-lg-2);
  }
}
.single__content > .gform_wrapper .gform_title {
  margin-top: 0;
}
@media (min-width: 30em) {
  .single__content > .gform_wrapper {
    margin-top: var(--spacing-lg-2);
    margin-bottom: var(--spacing-lg-2);
  }
}
@media (min-width: 56.25em) {
  .single__content > .gform_wrapper {
    margin-top: var(--spacing-lg-3);
    margin-bottom: var(--spacing-lg-3);
  }
}
@media (min-width: 81.25em) {
  .single__content > .gform_wrapper {
    margin-top: var(--spacing-lg-4);
    margin-bottom: var(--spacing-lg-4);
  }
}
.single__content div > h1,
.single__content div > h2,
.single__content div > h3,
.single__content div > h4 {
  margin-top: 0;
}
.single__content div > :last-child {
  margin-bottom: 0;
}
.single__content p a,
.single__content li a {
  position: relative;
  color: var(--dark-grey);
  font-family: var(--font-paragraph-bold);
  letter-spacing: 0;
  box-shadow: 0 -2px 0 inset var(--dark-grey);
  transition: var(--hover-transition);
}
.single__content p a:link, .single__content p a:visited,
.single__content li a:link,
.single__content li a:visited {
  color: var(--dark-grey);
}
.single__content p a:active, .single__content p a:hover, .single__content p a:focus,
.single__content li a:active,
.single__content li a:hover,
.single__content li a:focus {
  color: var(--white);
  border-radius: var(--border-radius);
  box-shadow: 0 -2em 0 inset var(--dark-grey);
}
.single__content > :last-child {
  margin-bottom: var(--spacing-lg-5);
}
.single__content > .teaseExamples:last-child {
  margin-bottom: 0;
}
@media (min-width: 68.75em) {
  .single__contentWrapper {
    display: flex;
  }
}

.page__title {
  hyphens: manual;
}
@media (min-width: 48em) {
  .page__title {
    font-size: var(--lg);
    letter-spacing: var(--letter-spacing-xs);
  }
}
@media (min-width: 56.25em) {
  .page__title {
    text-align: center;
  }
}
.page__title--hidden {
  position: absolute !important;
  clip: rect(1px, 1px, 1px, 1px);
  width: 1px;
  height: 1px;
  overflow: hidden;
}
@media (min-width: 68.75em) {
  .page__content > h1,
  .page__content > h2,
  .page__content > h3,
  .page__content > h4,
  .page__content > h5,
  .page__content > h6,
  .page__content > p,
  .page__content > ul,
  .page__content > ol,
  .page__content > .wp-block-file,
  .page__content > .wp-block-image,
  .page__content > .wp-block-embed,
  .page__content > .textHighlighted,
  .page__content > .wp-block-pb-accordion-item,
  .page__content > .gform_wrapper,
  .page__content > .progressBar--gravityForm {
    max-width: var(--wider-container);
    margin-left: auto;
    margin-right: auto;
  }
}
.page__content > .callToAction {
  margin-left: auto;
  margin-right: auto;
  width: 100%;
}
@media (min-width: 37.5em) {
  .page__content > .callToAction {
    width: 75%;
  }
}
@media (min-width: 68.75em) {
  .page__content > .callToAction {
    width: 50%;
  }
}
.page__content > .gform_wrapper {
  box-shadow: var(--box-shadow);
  padding: var(--spacing-lg-2) var(--spacing-lg-1);
  margin-top: var(--spacing-base);
  margin-bottom: var(--spacing-base);
}
@media (min-width: 37.5em) {
  .page__content > .gform_wrapper {
    padding: var(--spacing-lg-3) var(--spacing-lg-2);
  }
}
.page__content > .gform_wrapper .gform_title {
  margin-top: 0;
}
@media (min-width: 30em) {
  .page__content > .gform_wrapper {
    margin-top: var(--spacing-lg-2);
    margin-bottom: var(--spacing-lg-2);
  }
}
@media (min-width: 56.25em) {
  .page__content > .gform_wrapper {
    margin-top: var(--spacing-lg-3);
    margin-bottom: var(--spacing-lg-3);
  }
}
@media (min-width: 81.25em) {
  .page__content > .gform_wrapper {
    margin-top: var(--spacing-lg-4);
    margin-bottom: var(--spacing-lg-4);
  }
}
.page__content > .progressBar--gravityForm:has(+ .gform_wrapper) {
  box-shadow: var(--box-shadow);
  padding: var(--spacing-lg-2) var(--spacing-lg-1);
  margin-top: var(--spacing-base);
  margin-bottom: var(--spacing-base);
  margin-bottom: 0 !important;
  position: relative;
  z-index: -1;
}
@media (min-width: 37.5em) {
  .page__content > .progressBar--gravityForm:has(+ .gform_wrapper) {
    padding: var(--spacing-lg-3) var(--spacing-lg-2);
  }
}
.page__content > .progressBar--gravityForm:has(+ .gform_wrapper) .gform_title {
  margin-top: 0;
}
@media (min-width: 30em) {
  .page__content > .progressBar--gravityForm:has(+ .gform_wrapper) {
    margin-top: var(--spacing-lg-2);
    margin-bottom: var(--spacing-lg-2);
  }
}
@media (min-width: 56.25em) {
  .page__content > .progressBar--gravityForm:has(+ .gform_wrapper) {
    margin-top: var(--spacing-lg-3);
    margin-bottom: var(--spacing-lg-3);
  }
}
@media (min-width: 81.25em) {
  .page__content > .progressBar--gravityForm:has(+ .gform_wrapper) {
    margin-top: var(--spacing-lg-4);
    margin-bottom: var(--spacing-lg-4);
  }
}
.page__content > .progressBar--gravityForm + .gform_wrapper {
  margin-top: 0 !important;
}
.page__content > .progressBar--gravityForm:not(.progressBar--highlighted) + .gform_wrapper {
  background-color: var(--white);
  padding-top: 0;
  position: relative;
}
.page__content > .progressBar--gravityForm:not(.progressBar--highlighted) + .gform_wrapper:before {
  content: "";
  position: absolute;
  top: calc(var(--spacing-lg-2) / -1);
  left: 0;
  height: var(--spacing-lg-2);
  width: 100%;
  background-color: var(--white);
}
@media (min-width: 37.5em) {
  .page__content > .progressBar--gravityForm:not(.progressBar--highlighted) + .gform_wrapper:before {
    top: calc(var(--spacing-lg-3) / -1);
    height: var(--spacing-lg-3);
  }
}
.page__content p a {
  position: relative;
  color: var(--dark-grey);
  font-family: var(--font-paragraph-bold);
  letter-spacing: 0;
  box-shadow: 0 -2px 0 inset var(--dark-grey);
  transition: var(--hover-transition);
}
.page__content p a:link, .page__content p a:visited {
  color: var(--dark-grey);
}
.page__content p a:active, .page__content p a:hover, .page__content p a:focus {
  color: var(--white);
  border-radius: var(--border-radius);
  box-shadow: 0 -2em 0 inset var(--dark-grey);
}
.page__content > :last-child {
  margin-bottom: var(--spacing-lg-5);
}

.donation__imgWrapper {
  position: fixed;
  z-index: -2;
  top: calc(2 * var(--nav-height));
  left: 0;
  bottom: 0;
  right: 0;
  width: 100vw;
}
@media (min-width: 37.5em) {
  .donation__imgWrapper {
    top: var(--nav-height);
  }
}
.donation__imgWrapper img {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  width: 100%;
  height: 100%;
  z-index: -2;
  object-fit: cover;
  object-position: center;
}
.donation__imgWrapper:after {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  background-color: var(--blue-rgba);
  z-index: -1;
}
.donation__content {
  margin-left: auto;
  margin-right: auto;
  background-color: var(--white-rgba);
  border-radius: var(--border-radius);
  padding: var(--spacing-lg-2) var(--spacing-sm-1);
  margin-bottom: var(--spacing-lg-4);
}
@media (min-width: 37.5em) {
  .donation__content {
    margin-bottom: var(--spacing-lg-5);
    padding: var(--spacing-lg-5) var(--spacing-lg-3);
  }
}
@media (min-width: 48em) {
  .donation__content {
    padding: var(--spacing-lg-5) var(--spacing-lg-5);
    max-width: 90%;
  }
}
@media (min-width: 56.25em) {
  .donation__content {
    max-width: 90%;
    padding: var(--spacing-lg-5);
  }
}
@media (min-width: 68.75em) {
  .donation__content {
    max-width: 85%;
    margin-bottom: var(--spacing-lg-6);
  }
}
@media (min-width: 100em) {
  .donation__content {
    max-width: 70%;
    margin-bottom: var(--spacing-lg-7);
  }
}
.donation__content--withImages {
  max-width: 100%;
  padding: var(--spacing-lg-3) var(--spacing-lg-2);
}
@media (min-width: 100em) {
  .donation__content--withImages {
    max-width: 90%;
    padding: var(--spacing-lg-4) var(--spacing-lg-3);
  }
}
.donation__content--withImages .gfield_radio {
  grid-template-columns: repeat(2, 1fr);
}
@media (min-width: 37.5em) {
  .donation__content--withImages .gfield_radio {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media (min-width: 30em) {
  .donation__content--withImages .gfield_radio {
    grid-row-gap: var(--spacing-lg-3);
    grid-column-gap: var(--spacing-lg-3);
  }
}
@media (min-width: 56.25em) {
  .donation__content--withImages .gfield_radio {
    grid-template-columns: repeat(5, 1fr);
  }
}
.donation__content--withImages .image-choices-choice {
  box-shadow: var(--box-shadow);
  height: 100%;
}
.donation__content--withImages .image-choices-choice:hover, .donation__content--withImages .image-choices-choice:focus {
  box-shadow: var(--box-shadow-hover);
}
.donation__content--withImages .image-choices-choice label {
  display: flex !important;
  flex-direction: column;
  padding: var(--spacing-sm-2) !important;
  text-align: center;
}
.donation__content--withImages h2 {
  font-size: var(--spacing-base);
  font-weight: 600;
  margin-top: var(--spacing-sm-2);
  margin-bottom: var(--spacing-sm-9);
  -webkit-hyphens: none;
  -moz-hyphens: none;
  hyphens: none;
}
.donation__content--withImages p {
  margin: 0;
  color: var(--medium-grey);
  font-family: var(--font-heading);
  font-size: var(--spacing-sm-1);
  line-height: var(--line-height-sm);
}
.donation__content--withoutImages .gfield_radio {
  grid-template-columns: repeat(6, 1fr);
}
@media (min-width: 56.25em) {
  .donation__content--withoutImages .gfield_radio {
    grid-template-columns: repeat(5, 1fr);
  }
}
.donation__content--withoutImages .gchoice {
  position: relative;
  height: calc(var(--spacing-lg-6) + var(--spacing-sm-1));
  border: solid 3px var(--dark-grey);
  border-radius: var(--border-radius);
  display: flex;
  grid-column: span 2;
}
.donation__content--withoutImages .gchoice:nth-last-child(2):nth-child(3n-2) {
  grid-column: span 3;
  grid-column-end: 4;
}
.donation__content--withoutImages .gchoice:last-child:nth-child(3n-1) {
  grid-column: span 3;
  grid-column-end: 7;
}
@media (min-width: 56.25em) {
  .donation__content--withoutImages .gchoice {
    grid-column: span 1;
  }
  .donation__content--withoutImages .gchoice:nth-last-child(2):nth-child(3n-2) {
    grid-column: span 1;
    grid-column-end: 5;
  }
  .donation__content--withoutImages .gchoice:last-child:nth-child(3n-1) {
    grid-column: span 1;
    grid-column-end: 6;
  }
}
.donation__content--withoutImages .gfield-choice-input:hover + label, .donation__content--withoutImages .gfield-choice-input:focus + label, .donation__content--withoutImages .gfield-choice-input:checked + label {
  background: var(--dark-grey);
}
.donation__content--withoutImages .gfield-choice-input:hover + label span,
.donation__content--withoutImages .gfield-choice-input:hover + label .other, .donation__content--withoutImages .gfield-choice-input:focus + label span,
.donation__content--withoutImages .gfield-choice-input:focus + label .other, .donation__content--withoutImages .gfield-choice-input:checked + label span,
.donation__content--withoutImages .gfield-choice-input:checked + label .other {
  color: var(--white);
}
.donation__content--withoutImages label {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  background: transparent;
  transition: var(--hover-transition-fast);
}
.donation__content--withoutImages label span {
  color: var(--dark-grey);
  transition: var(--hover-transition-fast);
}
.donation__content--withoutImages label span:first-of-type {
  left: var(--spacing-sm-4);
  top: var(--spacing-sm-4);
  position: absolute;
  font-size: var(--spacing-sm-3);
  font-weight: 500;
}
.donation__content--withoutImages label span:nth-of-type(2) {
  font-size: var(--spacing-lg-3);
  font-weight: 600;
}
.donation__content--withoutImages label .other {
  text-align: center;
  font-size: var(--spacing-lg-1);
  font-weight: 600;
  color: var(--dark-grey);
}
@media (min-width: 56.25em) {
  .donation__content--withoutImages label .other {
    font-size: var(--spacing-base);
  }
}
@media (min-width: 37.5em) {
  .donation__content--withInterval fieldset:first-of-type {
    margin-bottom: var(--spacing-lg-3);
  }
}
@media (min-width: 48em) {
  .donation__content--withInterval fieldset:first-of-type {
    margin-bottom: var(--spacing-lg-1);
  }
}
.donation__content--withInterval fieldset:first-of-type .gfield_radio {
  grid-template-columns: repeat(1, 1fr);
  grid-column-gap: var(--spacing-sm-2);
  grid-row-gap: var(--spacing-sm-2);
}
@media (min-width: 37.5em) {
  .donation__content--withInterval fieldset:first-of-type .gfield_radio {
    grid-template-columns: repeat(3, 1fr);
    grid-column-gap: var(--spacing-lg-2);
  }
}
@media (min-width: 56.25em) {
  .donation__content--withInterval fieldset:first-of-type .gfield_radio {
    grid-column-gap: var(--spacing-lg-4);
  }
}
.donation__content--withInterval fieldset:first-of-type .gchoice {
  border: solid 3px var(--dark-grey);
  border-radius: var(--border-radius);
  min-height: var(--form-field-height);
}
.donation__content--withInterval fieldset:first-of-type .gchoice label {
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  max-width: 100% !important;
  height: 100%;
  background: transparent;
  color: var(--dark-grey);
  font-size: var(--spacing-base) !important;
  transition: var(--hover-transition-fast);
}
@media (min-width: 37.5em) {
  .donation__content--withInterval fieldset:first-of-type .gchoice label {
    font-size: var(--spacing-sm-1);
  }
}
@media (min-width: 48em) {
  .donation__content--withInterval fieldset:first-of-type .gchoice label {
    font-size: var(--spacing-base);
  }
}
.donation__content--withInterval fieldset:first-of-type .gchoice label:before, .donation__content--withInterval fieldset:first-of-type .gchoice label:after {
  content: none;
}
.donation__content--withInterval fieldset:first-of-type .gchoice .gfield-choice-input {
  position: absolute !important;
  clip: rect(1px, 1px, 1px, 1px);
  width: 1px;
  height: 1px;
  overflow: hidden;
  padding: 0;
}
.donation__content--withInterval fieldset:first-of-type .gchoice .gfield-choice-input + label {
  display: flex;
  padding: 0;
}
.donation__content--withInterval fieldset:first-of-type .gchoice .gfield-choice-input + label:before {
  content: none;
}
.donation__content--withInterval fieldset:first-of-type .gchoice .gfield-choice-input + label:after {
  content: none;
}
.donation__content--withInterval fieldset:first-of-type .gchoice .gfield-choice-input:hover + label, .donation__content--withInterval fieldset:first-of-type .gchoice .gfield-choice-input:focus + label, .donation__content--withInterval fieldset:first-of-type .gchoice .gfield-choice-input:checked + label {
  background: var(--dark-grey);
  color: var(--white);
}
.donation__title {
  text-transform: none;
  text-align: center;
  font-size: var(--spacing-lg-1);
}
@media (min-width: 37.5em) {
  .donation__title {
    font-size: var(--spacing-lg-2);
  }
}
@media (min-width: 30em) {
  .donation__title {
    font-size: var(--spacing-lg-3);
  }
}
@media (min-width: 68.75em) {
  .donation__title {
    font-size: var(--spacing-lg-4);
  }
}
.donation__title--long {
  text-transform: none;
}
@media (min-width: 37.5em) {
  .donation__title--long {
    font-size: var(--spacing-lg-1);
  }
}
@media (min-width: 30em) {
  .donation__title--long {
    font-size: var(--spacing-lg-2);
  }
}
.donation__form {
  margin-top: var(--spacing-lg-2);
}
.donation legend.gfield_label {
  position: absolute !important;
  clip: rect(1px, 1px, 1px, 1px);
  width: 1px;
  height: 1px;
  overflow: hidden;
}
.donation .gform_fields {
  display: block;
}
.donation .gfield_radio {
  display: grid;
  grid-template-rows: auto;
  grid-row-gap: var(--spacing-sm-1);
  grid-column-gap: var(--spacing-sm-1);
  grid-auto-flow: unset;
  min-width: 0;
}
@media (min-width: 37.5em) {
  .donation .gfield_radio {
    grid-row-gap: var(--spacing-lg-2);
    grid-column-gap: var(--spacing-lg-2);
  }
}
@media (min-width: 56.25em) {
  .donation .gfield_radio {
    grid-row-gap: var(--spacing-lg-1);
    grid-column-gap: var(--spacing-lg-1);
  }
}
.donation .gform_button {
  visibility: hidden;
  position: absolute !important;
  clip: rect(1px, 1px, 1px, 1px);
  width: 1px;
  height: 1px;
  overflow: hidden;
}

.donationForm {
  padding-bottom: var(--spacing-lg-3);
}
@media (min-width: 37.5em) {
  .donationForm {
    padding-bottom: var(--spacing-lg-4);
  }
}
@media (min-width: 48em) {
  .donationForm {
    padding-bottom: var(--spacing-lg-6);
  }
}
.donationForm__link {
  position: relative;
  display: block;
  padding-left: var(--spacing-base);
  color: var(--dark-grey);
  font-size: var(--spacing-sm-1);
  font-family: var(--font-heading);
  margin-bottom: var(--spacing-base);
}
@media (min-width: 100em) {
  .donationForm__link {
    margin-bottom: 0;
    transform: translateY(calc(var(--spacing-sm-1) + var(--spacing-sm-5)));
  }
}
.donationForm__link:before {
  content: "";
  position: absolute;
  left: 0;
  top: 7%;
  background-image: url("../../img/arrow-back.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  width: var(--spacing-sm-2);
  height: var(--spacing-sm-2);
  transform: translateX(0);
  transition: var(--hover-transition);
}
.donationForm__link:hover:before, .donationForm__link:focus:before {
  transform: translateX(-3px);
}
.donationForm__content {
  max-width: var(--narrow-container);
  margin-left: auto;
  margin-right: auto;
}
.donationForm__content--image {
  max-width: 100%;
  display: grid;
  grid-template-areas: "title image" "text  text";
  grid-template-columns: 1fr 30%;
  grid-gap: var(--spacing-base);
  align-items: center;
}
@media (min-width: 30em) {
  .donationForm__content--image {
    grid-column-gap: var(--spacing-lg-2);
    grid-template-columns: 1fr 25%;
    grid-template-areas: "title image" "text  image";
  }
}
@media (min-width: 48em) {
  .donationForm__content--image {
    grid-column-gap: var(--spacing-lg-6);
  }
}
@media (min-width: 100em) {
  .donationForm__content--image {
    max-width: var(--wider-container);
  }
}
.donationForm__content--image .donationForm__title {
  margin-bottom: 0;
}
.donationSuccess .donationForm__content {
  display: none;
}
.donationForm__title {
  grid-area: title;
  font-size: var(--spacing-lg-2);
}
@media (min-width: 30em) {
  .donationForm__title {
    align-self: end;
  }
}
@media (min-width: 48em) {
  .donationForm__title {
    font-size: var(--spacing-lg-3);
  }
}
@media (min-width: 81.25em) {
  .donationForm__title {
    font-size: var(--spacing-lg-4);
  }
}
.donationForm__text {
  grid-area: text;
  margin-bottom: 0;
}
@media (min-width: 30em) {
  .donationForm__text {
    align-self: start;
  }
}
@media (min-width: 37.5em) {
  .donationForm__text {
    font-size: var(--spacing-lg-1);
  }
}
.donationForm__imgWrapper {
  grid-area: image;
  position: relative;
  box-shadow: var(--box-shadow);
}
.donationForm__imgWrapper:before {
  content: "";
  display: block;
  height: 0;
  width: 100%;
  padding-top: 105%;
}
.donationForm__imgWrapper img,
.donationForm__imgWrapper svg,
.donationForm__imgWrapper iframe {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.donationForm__img {
  border-radius: var(--border-radius);
}
.donationForm__raiseNow {
  width: 100%;
  max-width: var(--narrow-container);
  margin-left: auto;
  margin-right: auto;
}
.donationForm__raiseNow .recurring-payment-type {
  display: none !important;
}
.donationForm__raiseNow--predefinedAmount .payment-amounts-and-intervals-block {
  display: none !important;
}

.fourzerofour {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-bottom: var(--spacing-lg-6);
}
.fourzerofour__title {
  text-align: center;
}
.fourzerofour__explanation {
  font-size: var(--spacing-lg-1);
  margin-bottom: var(--spacing-lg-1);
}
.fourzerofour__link {
  display: inline-block;
  background-color: var(--blue) !important;
  color: var(--white) !important;
  border-radius: var(--border-radius);
  border: none;
  font-family: var(--font-heading);
  font-weight: 400;
  text-align: center;
  line-height: 1;
  letter-spacing: var(--letter-spacing-base);
  transition: var(--hover-transition-fast);
  padding: var(--spacing-sm-2) var(--spacing-sm-2) !important;
  cursor: var(--cursor-pointer);
}
@media (min-width: 37.5em) {
  .fourzerofour__link {
    padding: var(--spacing-sm-1) var(--spacing-lg-2) !important;
  }
}
.fourzerofour__link:hover, .fourzerofour__link:focus {
  outline: none;
  border: none;
  background-color: var(--orange) !important;
  color: var(--white) !important;
}

.post-password-form {
  display: flex;
  flex-direction: column;
}
.post-password-form label {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.post-password-form input[type=submit] {
  display: inline-block;
  background-color: var(--blue) !important;
  color: var(--white) !important;
  border-radius: var(--border-radius);
  border: none;
  font-family: var(--font-heading);
  font-weight: 400;
  text-align: center;
  line-height: 1;
  letter-spacing: var(--letter-spacing-base);
  transition: var(--hover-transition-fast);
  padding: var(--spacing-sm-2) var(--spacing-sm-2) !important;
  cursor: var(--cursor-pointer);
}
@media (min-width: 37.5em) {
  .post-password-form input[type=submit] {
    padding: var(--spacing-sm-1) var(--spacing-lg-2) !important;
  }
}
.post-password-form input[type=submit]:hover, .post-password-form input[type=submit]:focus {
  outline: none;
  border: none;
  background-color: var(--orange) !important;
  color: var(--white) !important;
}

.siteMain {
  position: relative;
  padding-left: 3vw;
  padding-right: 3vw;
  width: 100vw;
  margin-top: calc(2 * var(--nav-height) + var(--spacing-lg-2));
  flex: 1 0 auto;
}
@media (min-width: 48em) {
  .siteMain {
    padding-left: 5vw;
    padding-right: 5vw;
  }
}
@media (min-width: 81.25em) {
  .siteMain {
    padding-left: 10vw;
    padding-right: 10vw;
  }
}
@media (min-width: 125em) {
  .siteMain {
    padding-left: calc((100vw - 1600px) / 2);
    padding-right: calc((100vw - 1600px) / 2);
  }
}
@media (min-width: 37.5em) {
  .siteMain {
    margin-top: calc(var(--nav-height) + var(--spacing-lg-5));
  }
}
@media (min-width: 68.75em) {
  .siteMain {
    margin-top: calc(var(--nav-height) + var(--spacing-lg-6));
  }
}
@media (min-width: 100em) {
  .siteMain {
    margin-top: calc(var(--nav-height) + var(--spacing-lg-7));
  }
}

.siteFooter {
  flex-shrink: 0;
  background-color: var(--dark-grey);
  color: var(--light-grey);
  padding-left: 3vw;
  padding-right: 3vw;
  padding-top: var(--spacing-lg-6);
  padding-bottom: var(--spacing-lg-6);
}
@media (min-width: 48em) {
  .siteFooter {
    padding-left: 5vw;
    padding-right: 5vw;
  }
}
@media (min-width: 81.25em) {
  .siteFooter {
    padding-left: 10vw;
    padding-right: 10vw;
  }
}
@media (min-width: 125em) {
  .siteFooter {
    padding-left: calc((100vw - 1600px) / 2);
    padding-right: calc((100vw - 1600px) / 2);
  }
}
.siteFooter p {
  margin-bottom: 0;
}
.siteFooter__adress p:not(:last-child) {
  margin-bottom: 0;
}
.siteFooter__adress a {
  font-family: var(--font-paragraph-bold);
  color: var(--light-grey);
  transition: var(--hover-transition);
}
.siteFooter__adress a:hover {
  color: var(--white);
}
.siteFooter__linkWrapper {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  border-bottom: solid 3px var(--medium-grey);
  border-top: solid 3px var(--medium-grey);
  margin-bottom: var(--spacing-lg-2);
  margin-top: var(--spacing-lg-2);
}
.siteFooter__linkWrapper > * {
  padding-bottom: var(--spacing-sm-1);
  padding-top: var(--spacing-sm-1);
}
@media (min-width: 37.5em) {
  .siteFooter__linkWrapper > * {
    padding-bottom: var(--spacing-base);
    padding-top: var(--spacing-base);
  }
}
.siteFooter__socials {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
}
.siteFooter__social {
  height: var(--spacing-lg-4);
  width: var(--spacing-lg-4);
  display: flex;
  margin-right: var(--spacing-sm-1);
}
.siteFooter__socialLink {
  display: flex;
}
.siteFooter__socialLink svg {
  height: 100%;
  width: 100%;
}
.siteFooter__socialLink svg ellipse {
  fill: var(--light-grey);
  transition: var(--hover-transition);
}
.siteFooter__socialLink:hover svg ellipse {
  fill: var(--white);
}
.siteFooter__link {
  display: inline-block;
  background-color: var(--blue) !important;
  color: var(--white) !important;
  border-radius: var(--border-radius);
  border: none;
  font-family: var(--font-heading);
  font-weight: 400;
  text-align: center;
  line-height: 1;
  letter-spacing: var(--letter-spacing-base);
  transition: var(--hover-transition-fast);
  padding: var(--spacing-sm-2) var(--spacing-sm-2) !important;
  cursor: var(--cursor-pointer);
  margin-top: 0 !important;
}
@media (min-width: 37.5em) {
  .siteFooter__link {
    padding: var(--spacing-sm-1) var(--spacing-lg-2) !important;
  }
}
.siteFooter__link:hover, .siteFooter__link:focus {
  outline: none;
  border: none;
  background-color: var(--orange) !important;
  color: var(--white) !important;
}
.siteFooter__copyrightWrapper {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  letter-spacing: var(--letter-spacing-xs);
  font-size: var(--spacing-sm-2);
  line-height: var(--line-height-md);
}
@media (min-width: 37.5em) {
  .siteFooter__copyrightWrapper {
    flex-direction: row;
  }
}
.siteFooter__copyrightWrapper a {
  font-family: var(--font-heading);
  color: var(--light-grey);
  transition: var(--hover-transition);
}
.siteFooter__copyrightWrapper a:hover {
  color: var(--white);
}
.siteFooter__copyright {
  font-family: var(--font-heading);
  margin-bottom: 0;
  display: flex;
  flex-direction: column;
}
@media (min-width: 37.5em) {
  .siteFooter__copyright {
    flex-direction: row;
    justify-content: space-between;
    flex-grow: 2;
  }
}
.siteFooter__copyrightImpressum {
  position: relative;
  margin-top: var(--spacing-sm-4);
}
@media (min-width: 37.5em) {
  .siteFooter__copyrightImpressum {
    margin-top: 0;
    align-self: flex-end;
  }
  .siteFooter__copyrightImpressum:before {
    content: " | ";
  }
}

.languageSwitcherDropdown {
  display: none;
}
@media (min-width: 81.25em) {
  .languageSwitcherDropdown {
    display: block;
    order: 4;
  }
}
.page--no-navigation .languageSwitcherDropdown {
  display: none;
}
.languageSwitcherDropdown__item:first-child {
  position: relative;
  z-index: 3;
}
.languageSwitcherDropdown__item:first-child:hover .languageSwitcherDropdown__subMenu, .languageSwitcherDropdown__item:first-child:focus .languageSwitcherDropdown__subMenu {
  transform: translateY(0);
}
.languageSwitcherDropdown__link {
  color: var(--white);
  background: var(--dark-grey);
  width: var(--nav-height);
  height: var(--nav-height);
  padding: 0;
}
.languageSwitcherDropdown__link span {
  transition: var(--hover-transition);
  transform: scale3d(1, 1, 1);
}
.languageSwitcherDropdown__link:hover, .languageSwitcherDropdown__link:focus {
  outline: none;
}
.languageSwitcherDropdown__link:hover + .languageSwitcherDropdown__subMenu, .languageSwitcherDropdown__link:focus + .languageSwitcherDropdown__subMenu {
  transform: translateY(0);
}
.languageSwitcherDropdown__link:hover span, .languageSwitcherDropdown__link:focus span {
  transform: scale3d(0.9, 0.9, 1);
}
.languageSwitcherDropdown__subMenu {
  position: absolute;
  z-index: -1;
  left: 0;
  list-style: none;
  overflow: hidden;
  transform: translateY(-101%);
  transition: var(--hover-transition);
}
.languageSwitcherDropdown__subMenu.focus {
  transform: translateY(0);
}
.languageSwitcherDropdown__subLink {
  width: var(--nav-height);
  height: var(--nav-height);
  display: flex;
  justify-content: center;
  align-items: center;
  color: var(--white);
  background: var(--dark-grey);
}
.languageSwitcherDropdown__subLink span {
  transition: var(--hover-transition);
  transform: scale3d(1, 1, 1);
}
.languageSwitcherDropdown__subLink:hover, .languageSwitcherDropdown__subLink:focus {
  outline: none;
}
.languageSwitcherDropdown__subLink:hover span, .languageSwitcherDropdown__subLink:focus span {
  transform: scale3d(0.9, 0.9, 1);
}

.languageSwitcherList {
  display: flex;
  font-size: var(--spacing-sm-1);
  font-family: var(--font-heading);
  font-weight: 400;
  letter-spacing: var(--letter-spacing-lg);
  text-transform: uppercase;
}
.languageSwitcherList__link {
  color: var(--dark-grey);
  font-weight: bold;
  padding-right: var(--spacing-sm-4);
  padding-left: var(--spacing-sm-4);
}

.menuList {
  display: flex;
  flex-direction: column;
}
@media (min-width: 81.25em) {
  .menuList {
    flex-direction: row;
  }
  .menuList:hover .nav__link {
    color: var(--light-grey);
  }
  .menuList:hover .menuList__linkHasChildren:after {
    background-color: var(--light-grey);
    -webkit-mask-image: url("../../img/triangle.svg");
    mask-image: url("../../img/triangle.svg");
  }
}
.menuList .nav__link {
  color: var(--dark-grey);
  transition: var(--hover-transition-fast);
  padding-right: var(--spacing-sm-3);
  padding-left: var(--spacing-sm-3);
}
@media (min-width: 100em) {
  .menuList .nav__link {
    padding-right: var(--spacing-sm-1);
    padding-left: var(--spacing-sm-1);
  }
}
.menuList .nav__link:hover, .menuList .nav__link:focus {
  color: var(--dark-grey);
}
.menuList__itemHasChildren {
  position: relative;
  align-self: center;
}
@media (min-width: 81.25em) {
  .menuList__itemHasChildren:hover .menuList__listChildren, .menuList__itemHasChildren:focus .menuList__listChildren {
    display: block;
  }
  .menuList__itemHasChildren:hover .menuList__linkHasChildren, .menuList__itemHasChildren:focus .menuList__linkHasChildren {
    color: var(--dark-grey);
  }
  .menuList__itemHasChildren:hover .menuList__linkHasChildren:after, .menuList__itemHasChildren:focus .menuList__linkHasChildren:after {
    background-color: var(--dark-grey) !important;
    transform: rotate(180deg) translateY(50%);
  }
}
.menuList__itemHasChildren.open .menuList__listChildren {
  display: block;
}
.menuList__linkHasChildren {
  position: relative;
  padding-right: var(--spacing-sm-2) !important;
  margin-right: var(--spacing-sm-2);
}
.menuList__linkHasChildren:after {
  content: "";
  position: absolute;
  right: 0;
  top: 50%;
  transform: rotate(0deg) translateY(-50%);
  -webkit-mask-image: url("../../img/triangle.svg");
  mask-image: url("../../img/triangle.svg");
  transition: background-color 0.25s ease-in-out;
  background-color: var(--dark-grey);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  width: var(--spacing-sm-3);
  height: var(--spacing-sm-3);
}
.menuList__linkHasChildren:hover:after, .menuList__linkHasChildren:focus:after {
  background-color: var(--dark-grey) !important;
}
.menuList__listChildren {
  display: none;
  font-size: var(--spacing-sm-1);
}
.menuList__listChildren .nav__item {
  opacity: 1;
}
.menuList__listChildren .nav__link {
  color: var(--dark-grey) !important;
  height: auto;
  white-space: nowrap;
  padding-top: var(--spacing-sm-2);
  padding-bottom: var(--spacing-sm-2);
}
.menuList__listChildren .nav__link:first-child {
  padding-top: var(--spacing-sm-1);
}
.menuList__listChildren .nav__link:last-child {
  padding-bottom: var(--spacing-sm-1);
}
@media (min-width: 68.75em) {
  .menuList__listChildren .nav__link:hover, .menuList__listChildren .nav__link:focus {
    background-color: var(--dark-grey);
    color: var(--white) !important;
  }
}
@media (min-width: 81.25em) {
  .menuList__listChildren {
    position: absolute;
    left: 0;
    min-width: 100%;
    transform: translateY(-10px);
    background-color: var(--white);
    border-radius: var(--border-radius);
    box-shadow: var(--box-shadow);
    transition: var(--hover-transition-fast);
    overflow: hidden;
  }
  .menuList__listChildren:hover, .menuList__listChildren:focus {
    box-shadow: var(--box-shadow-hover);
  }
}

.highlightedList {
  display: flex;
  flex-direction: column;
}
@media (min-width: 81.25em) {
  .highlightedList {
    flex-direction: row;
  }
}
.highlightedList .nav__item:nth-child(n+2) {
  border-left: 2px solid var(--white);
}
@media (min-width: 37.5em) {
  .highlightedList .nav__item:nth-child(n+2) {
    border-right: 2px solid var(--white);
  }
}
.highlightedList .nav__link {
  color: var(--dark-grey);
  padding-left: var(--spacing-sm-2);
  padding-right: var(--spacing-sm-2);
}
.highlightedList .nav__link:hover, .highlightedList .nav__link:focus {
  color: var(--blue);
}
@media (min-width: 81.25em) {
  .highlightedList .nav__link {
    color: var(--white);
    transition: var(--hover-transition-fast);
    background-color: var(--blue);
  }
  .highlightedList .nav__link:hover, .highlightedList .nav__link:focus {
    background-color: var(--orange);
    color: var(--white);
  }
}
@media (min-width: 100em) {
  .highlightedList .nav__link {
    padding-left: var(--spacing-base);
    padding-right: var(--spacing-base);
  }
}
.highlightedList--small-screen {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  width: 100%;
  order: 1;
}
@media (min-width: 37.5em) {
  .highlightedList--small-screen {
    order: 2;
    width: auto;
    margin-right: var(--spacing-base);
  }
}
@media (min-width: 81.25em) {
  .highlightedList--small-screen {
    display: none;
  }
}
.highlightedList--small-screen .nav__item {
  width: 50%;
  opacity: 1;
}
.highlightedList--small-screen .nav__link {
  white-space: nowrap;
  font-size: var(--spacing-sm-1);
  color: var(--white);
  transition: var(--hover-transition-fast);
  background-color: var(--blue);
  height: 100%;
}
.highlightedList--small-screen .nav__link:hover, .highlightedList--small-screen .nav__link:focus {
  background-color: var(--orange);
  color: var(--white);
}
.highlightedList--small-screen.hide {
  display: none;
}

.burgerButton {
  border-radius: 0;
  margin-top: 0;
  padding: 0;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 3;
  height: var(--nav-height);
  transform: scale(1);
  transition: var(--hover-transition-fast);
}
.burgerButton:hover, .burgerButton:focus {
  outline: none;
  cursor: var(--cursor-pointer);
}
.burgerButton:hover .burgerButton__bar, .burgerButton:focus .burgerButton__bar {
  background-color: var(--orange);
}
.burgerButton.open .burgerButton__bars {
  margin-left: 9px;
}
.burgerButton.open .burgerButton__bar:first-child {
  transform: rotate(45deg);
  transform-origin: top left;
}
.burgerButton.open .burgerButton__bar:nth-child(2) {
  display: none;
}
.burgerButton.open .burgerButton__bar:last-child {
  width: 100%;
  transform: rotate(-45deg);
  transform-origin: bottom left;
}
.burgerButton__text {
  font-size: var(--spacing-sm-1);
  margin-right: var(--spacing-sm-5);
}
.burgerButton__bars {
  width: 30px;
  height: 22px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: flex-end;
}
@media (min-width: 37.5em) {
  .burgerButton__bars {
    width: 36px;
    height: 24px;
  }
}
.burgerButton__bar {
  display: block;
  width: 100%;
  height: 2px;
  background: var(--dark-grey);
  transition: var(--hover-transition-fast);
}
.burgerButton__bar:nth-child(2) {
  width: 80%;
}
.burgerButton__bar:last-child {
  width: 60%;
  margin-bottom: 0;
}
@media (min-width: 37.5em) {
  .burgerButton__bar {
    height: 3px;
  }
}

.siteHeader {
  position: fixed;
  left: 0;
  right: 0;
  z-index: 20;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  background-color: var(--white);
}
.siteHeader:after {
  content: "";
  position: absolute;
  z-index: -1;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  box-shadow: 0 1px 50px 0 rgba(0, 0, 0, 0.15);
}
.siteHeader__logo {
  order: 2;
  position: relative;
  z-index: 4;
  display: block;
  height: var(--nav-height);
  margin-top: calc(var(--spacing-base) / 3.5);
  margin-bottom: calc(var(--spacing-base) / 3.5 / -1);
  margin-right: auto;
}
@media (min-width: 37.5em) {
  .siteHeader__logo {
    order: 1;
  }
}
@media (min-width: 48em) {
  .siteHeader__logo {
    margin-top: calc(var(--spacing-base) / 2.2);
    margin-bottom: calc(var(--spacing-base) / 2.2 / -1);
  }
}
@media (min-width: 68.75em) {
  .siteHeader__logo {
    margin-top: 9px;
    margin-bottom: -9px;
  }
}
.siteHeader__logo svg {
  width: auto;
  height: 100%;
}
.siteHeader__nav {
  display: flex;
  order: 3;
}
.page--no-navigation .siteHeader__nav {
  display: none;
}
.page--no-navigation .siteHeader__highlightedList {
  display: none;
}

.nav__listWrapper {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  width: 100vw;
  height: 100vh;
  overflow-y: scroll;
  padding-top: calc(var(--nav-height) + var(--spacing-base));
  padding-bottom: calc(var(--nav-height) + var(--spacing-lg-2));
  z-index: 3;
  display: flex;
  flex-direction: column;
  align-items: center;
  visibility: hidden;
  background-color: var(--white);
  margin: 0;
  transition: var(--hover-transition);
}
.nav__listWrapper.show {
  visibility: visible;
}
@media (min-width: 37.5em) {
  .nav__listWrapper {
    padding-top: calc(var(--nav-height) + var(--spacing-lg-3));
  }
}
@media (min-width: 48em) {
  .nav__listWrapper {
    padding-top: calc(var(--nav-height) + var(--spacing-lg-6));
  }
}
@media (min-width: 81.25em) {
  .nav__listWrapper {
    position: relative;
    width: auto;
    height: auto;
    overflow: inherit;
    padding-top: 0;
    padding-bottom: 0;
    flex-direction: row;
    justify-content: unset;
    visibility: visible;
  }
}
.nav__item {
  opacity: 0;
}
.menuList__linkHasChildren .nav__item {
  opacity: 1;
}
.show .menuList > .nav__item {
  animation-name: fadein;
  animation-duration: 0.3s;
  animation-fill-mode: forwards;
  animation-timing-function: ease-out;
}
.show .menuList > .nav__item:first-child {
  animation-delay: 0.1s;
}
.show .menuList > .nav__item:nth-child(2) {
  animation-delay: 0.2s;
}
.show .menuList > .nav__item:nth-child(3) {
  animation-delay: 0.3s;
}
.show .menuList > .nav__item:nth-child(4) {
  animation-delay: 0.4s;
}
.show .menuList > .nav__item:nth-child(5) {
  animation-delay: 0.5s;
}
.show .menuList > .nav__item:nth-child(6) {
  animation-delay: 0.6s;
}
.show .menuList > .nav__item:nth-child(7) {
  animation-delay: 0.7s;
}
.show .menuList > .nav__item:nth-child(8) {
  animation-delay: 0.8s;
}
.show .highlightedList .nav__item {
  animation-name: fadein;
  animation-duration: 0.2s;
  animation-fill-mode: forwards;
  animation-timing-function: ease-out;
}
.show .highlightedList .nav__item:first-child {
  animation-delay: 1.5s;
}
.show .highlightedList .nav__item:nth-child(2) {
  animation-delay: 2s;
}
@media (min-width: 81.25em) {
  .nav__item {
    opacity: 1;
  }
}
.nav__languageSwitcherList {
  margin-bottom: var(--spacing-lg-3);
}
@media (min-width: 81.25em) {
  .nav__languageSwitcherList {
    display: none;
  }
}
@media (min-width: 81.25em) {
  .nav__burgerButton {
    display: none !important;
  }
}
.nav__link {
  font-size: var(--spacing-sm-1);
  font-family: var(--font-heading);
  font-weight: 400;
  letter-spacing: var(--letter-spacing-lg);
  text-transform: uppercase;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: var(--spacing-sm-1);
  color: var(--white);
}
@media (min-width: 81.25em) {
  .nav__link {
    height: var(--nav-height);
    min-width: var(--nav-height);
    padding: var(--spacing-base);
  }
}
@media (min-width: 81.25em) {
  .nav__languageSwitcherList {
    display: none;
  }
}

@keyframes fadein {
  0% {
    opacity: 0;
    transform: scale(1);
  }
  80% {
    transform: scale(1.1);
  }
  100% {
    transform: scale(1);
    opacity: 1;
  }
}
.homeBanner {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  min-height: calc(85vh - 2 * var(--nav-height));
  margin-top: calc(var(--spacing-lg-4) / -1);
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
}
@media (min-width: 37.5em) {
  .homeBanner {
    margin-top: calc(var(--spacing-lg-5) / -1);
  }
}
@media (min-width: 68.75em) {
  .homeBanner {
    min-height: calc(95vh - 2 * var(--nav-height));
    margin-top: calc(var(--spacing-lg-6) / -1);
  }
}
@media (min-width: 100em) {
  .homeBanner {
    margin-top: calc(var(--spacing-lg-7) / -1);
  }
}
.homeBanner__imageBlurredWrapper {
  position: fixed;
  z-index: -2;
  top: calc(2 * var(--nav-height));
  left: 0;
  bottom: 0;
  right: 0;
  width: 100vw;
  overflow: hidden;
}
@media (min-width: 37.5em) {
  .homeBanner__imageBlurredWrapper {
    top: var(--nav-height);
  }
}
.homeBanner__imageBlurredWrapper img {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  width: 100%;
  height: 100%;
  z-index: -2;
  object-fit: cover;
  object-position: center top;
}
.homeBanner__imageBlurredWrapper:after {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  background-color: var(--blue-rgba);
  filter: blur(var(--spacing-sm-7));
  z-index: -1;
}
.homeBanner__imageBlurred {
  filter: blur(var(--spacing-sm-7));
  transform: scale(1.01);
}
.homeBanner__imageFocussed {
  position: fixed;
  z-index: -2;
  top: calc(2 * var(--nav-height));
  left: 0;
  bottom: 0;
  right: 0;
  width: 100vw;
}
@media (min-width: 37.5em) {
  .homeBanner__imageFocussed {
    top: var(--nav-height);
  }
}
.homeBanner__imageFocussed img {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  width: 100%;
  height: 100%;
  z-index: -2;
  object-fit: cover;
  object-position: center;
}
.homeBanner__content {
  padding-left: 3vw;
  padding-right: 3vw;
  display: flex;
  flex-direction: column;
  justify-content: end;
  min-height: calc(85vh - 2 * var(--nav-height));
  padding-bottom: var(--spacing-lg-1);
  padding-top: calc(var(--spacing-lg-1) + 2 * var(--nav-height));
}
@media (min-width: 48em) {
  .homeBanner__content {
    padding-left: 5vw;
    padding-right: 5vw;
  }
}
@media (min-width: 81.25em) {
  .homeBanner__content {
    padding-left: 10vw;
    padding-right: 10vw;
  }
}
@media (min-width: 125em) {
  .homeBanner__content {
    padding-left: calc((100vw - 1600px) / 2);
    padding-right: calc((100vw - 1600px) / 2);
  }
}
@media (min-width: 37.5em) {
  .homeBanner__content {
    padding-bottom: var(--spacing-lg-3);
    padding-top: calc(var(--spacing-lg-3) + var(--nav-height));
  }
}
@media (min-width: 48em) {
  .homeBanner__content {
    padding-bottom: var(--spacing-lg-6);
    padding-top: calc(var(--spacing-lg-8));
  }
}
@media (min-width: 68.75em) {
  .homeBanner__content {
    min-height: calc(95vh - 2 * var(--nav-height));
    padding-top: calc(var(--spacing-lg-7));
  }
}
.homeBanner__contentText {
  position: relative;
  color: var(--white);
  word-wrap: break-word;
  overflow-wrap: break-word;
}
.homeBanner__contentText--left:after, .homeBanner__contentText--right:after {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: -1;
  background: linear-gradient(187deg, rgba(255, 255, 255, 0) 30%, rgba(0, 36, 56, 0.25) 45%, rgba(0, 36, 56, 0.45) 50%, rgba(0, 36, 56, 0.8) 57%, rgb(0, 36, 56) 80%);
}
@media (min-width: 48em) {
  .homeBanner__contentText--left > *, .homeBanner__contentText--right > * {
    max-width: 70%;
  }
}
@media (min-width: 68.75em) {
  .homeBanner__contentText--left > *, .homeBanner__contentText--right > * {
    max-width: 50%;
  }
}
@media (min-width: 48em) {
  .homeBanner__contentText--left:after {
    background: linear-gradient(252deg, transparent 20%, var(--dark-grey) 99%);
  }
  .homeBanner__contentText--left .homeBanner__textLink {
    align-self: flex-start;
  }
}
@media (min-width: 48em) {
  .homeBanner__contentText--right {
    align-items: flex-end;
    text-align: right;
    margin-left: auto;
  }
  .homeBanner__contentText--right:after {
    background: linear-gradient(140deg, transparent 25%, var(--dark-grey) 99%);
  }
}
.homeBanner__contentText--blue {
  background-color: var(--blue);
  color: var(--white);
  padding: var(--spacing-lg-1) var(--spacing-sm-1);
  border-radius: var(--border-radius);
  box-shadow: var(--box-shadow);
}
@media (min-width: 37.5em) {
  .homeBanner__contentText--blue {
    padding: var(--spacing-lg-2);
  }
}
@media (min-width: 48em) {
  .homeBanner__contentText--blue {
    max-width: 90%;
    padding: var(--spacing-lg-4);
  }
}
@media (min-width: 68.75em) {
  .homeBanner__contentText--blue {
    max-width: 80%;
  }
}
@media (min-width: 81.25em) {
  .homeBanner__contentText--blue {
    padding: var(--spacing-lg-5);
    width: 70%;
    max-width: 800px;
  }
}
.homeBanner__textTagLine {
  font-size: var(--spacing-sm-1);
  font-family: var(--font-heading);
  font-weight: 400;
  letter-spacing: var(--letter-spacing-lg);
  text-transform: uppercase;
  margin-top: auto;
  margin-bottom: var(--spacing-sm-2);
}
.homeBanner__textTitle {
  font-size: var(--spacing-lg-2);
  font-weight: 500;
  text-transform: none;
  margin-bottom: 0;
  hyphens: manual;
}
@media (min-width: 37.5em) {
  .homeBanner__textTitle {
    font-size: var(--spacing-lg-2);
  }
}
@media (min-width: 48em) {
  .homeBanner__textTitle {
    font-size: var(--spacing-lg-3);
  }
}
@media (min-width: 68.75em) {
  .homeBanner__textTitle {
    font-size: var(--spacing-lg-4);
  }
}
@media (min-width: 81.25em) {
  .homeBanner__textTitle {
    font-size: var(--spacing-lg-3);
  }
}
@media (min-width: 125em) {
  .homeBanner__contentText--left .homeBanner__textTitle {
    font-size: var(--spacing-lg-5);
  }
}
.homeBanner__textLink {
  display: inline-block;
  background-color: var(--orange) !important;
  color: var(--white) !important;
  border-radius: var(--border-radius);
  border: none;
  font-family: var(--font-heading);
  font-weight: 400;
  text-align: center;
  line-height: 1;
  letter-spacing: var(--letter-spacing-base);
  transition: var(--hover-transition-fast);
  padding: var(--spacing-sm-2) var(--spacing-sm-2) !important;
  cursor: var(--cursor-pointer);
  margin-top: var(--spacing-base);
}
@media (min-width: 37.5em) {
  .homeBanner__textLink {
    padding: var(--spacing-sm-1) var(--spacing-lg-2) !important;
  }
}
.homeBanner__textLink:hover, .homeBanner__textLink:focus {
  outline: none;
  border: none;
  background-color: var(--dark-grey) !important;
  color: var(--white) !important;
}
.homeBanner__contentText--wide .homeBanner__textLink {
  display: inline-block;
  background-color: var(--white) !important;
  color: var(--blue) !important;
  border-radius: var(--border-radius);
  border: none;
  font-family: var(--font-heading);
  font-weight: 400;
  text-align: center;
  line-height: 1;
  letter-spacing: var(--letter-spacing-base);
  transition: var(--hover-transition-fast);
  padding: var(--spacing-sm-2) var(--spacing-sm-2) !important;
  cursor: var(--cursor-pointer);
}
@media (min-width: 37.5em) {
  .homeBanner__contentText--wide .homeBanner__textLink {
    padding: var(--spacing-sm-1) var(--spacing-lg-2) !important;
  }
}
.homeBanner__contentText--wide .homeBanner__textLink:hover, .homeBanner__contentText--wide .homeBanner__textLink:focus {
  outline: none;
  border: none;
  background-color: var(--dark-grey) !important;
  color: var(--white) !important;
}
.homeBanner__contentForm {
  padding: var(--spacing-lg-3) var(--spacing-lg-4);
  background-color: var(--white-rgba);
  border-radius: var(--border-radius);
  max-width: 100%;
}
@media (min-width: 37.5em) {
  .homeBanner__contentForm {
    max-width: 80%;
  }
}
@media (min-width: 48em) {
  .homeBanner__contentForm {
    max-width: 65%;
    padding: var(--spacing-lg-2) var(--spacing-lg-3);
  }
}
@media (min-width: 68.75em) {
  .homeBanner__contentForm {
    width: 55%;
  }
}
@media (min-width: 100em) {
  .homeBanner__contentForm {
    width: auto;
    max-width: 680px;
    padding: var(--spacing-lg-3) var(--spacing-lg-4);
  }
}
@media (min-width: 48em) {
  .homeBanner__contentForm--right {
    margin-left: auto;
  }
}
.homeBanner__formTopTitle {
  font-weight: 400;
  font-family: var(--font-heading);
  font-size: var(--spacing-sm-1);
  color: var(--orange);
  text-transform: uppercase;
  letter-spacing: var(--letter-spacing-base);
  margin-bottom: var(--spacing-sm-4);
}
.homeBanner__formTitle {
  text-transform: none;
  font-size: var(--spacing-lg-1);
}
@media (min-width: 48em) {
  .homeBanner__formTitle {
    margin-bottom: var(--spacing-lg-1);
    font-size: var(--spacing-lg-2);
  }
}
.homeBanner .progressBar__wrapper {
  margin-bottom: var(--spacing-lg-1);
}

.tease {
  transition: 0.3s;
}
.tease__link {
  display: flex;
  flex-direction: column;
  height: 100%;
}
.tease__link:hover .tease__img {
  transform: scale3d(1, 1, 1);
}
.tease__link:hover .tease__imgWrapper {
  box-shadow: var(--box-shadow-hover);
}
.tease__link:hover .tease__moreInfo {
  background-color: var(--dark-grey);
  color: var(--white);
}
.tease__link:hover .tease__moreInfo:after {
  transform: translateX(3px);
}
.tease__imgWrapper {
  position: relative;
  position: relative;
  z-index: 0;
  width: 100%;
  overflow: hidden;
  border-radius: var(--border-radius);
  transition: var(--hover-transition);
  box-shadow: var(--box-shadow);
}
.tease__imgWrapper:before {
  content: "";
  display: block;
  height: 0;
  width: 100%;
  padding-top: 55%;
}
.tease__imgWrapper img,
.tease__imgWrapper svg,
.tease__imgWrapper iframe {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.tease__img {
  border-radius: var(--border-radius);
  backface-visibility: hidden;
  transition: var(--hover-transition);
  transform: scale3d(1.03, 1.03, 1);
}
.tease__textWrapper {
  position: relative;
  z-index: 1;
  flex: 2;
  display: flex;
  flex-direction: column;
  margin-top: calc(var(--spacing-lg-5) / -1);
  margin-left: var(--spacing-sm-4);
  margin-right: var(--spacing-sm-4);
  padding: var(--spacing-sm-1);
  background-color: var(--white);
  border-radius: var(--border-radius);
}
@media (min-width: 37.5em) {
  .tease__textWrapper {
    margin-top: calc(var(--spacing-lg-2) / -1);
    margin-left: var(--spacing-sm-3);
    margin-right: var(--spacing-sm-3);
  }
}
@media (min-width: 48em) {
  .tease__textWrapper {
    margin-top: calc(var(--spacing-lg-3) / -1);
    margin-left: var(--spacing-base);
    margin-right: var(--spacing-base);
  }
}
@media (min-width: 100em) {
  .tease__textWrapper {
    margin-top: calc(var(--spacing-lg-4) / -1);
    margin-left: var(--spacing-lg-1);
    margin-right: var(--spacing-lg-1);
  }
}
@media (min-width: 125em) {
  .tease__textWrapper {
    margin-top: calc(var(--spacing-lg-5) / -1);
    margin-left: var(--spacing-lg-2);
    margin-right: var(--spacing-lg-2);
  }
}
@media (min-width: 48em) {
  .tease--layout2 .tease__textWrapper {
    padding: var(--spacing-lg-1) var(--spacing-lg-2);
  }
}
@media (min-width: 37.5em) {
  .tease--layout2 .tease__textWrapper {
    margin-top: calc(var(--spacing-lg-2) / -1);
    margin-left: var(--spacing-sm-3);
    margin-right: var(--spacing-sm-3);
  }
}
@media (min-width: 81.25em) {
  .tease--layout2 .tease__textWrapper {
    margin-top: calc(var(--spacing-lg-4) / -1);
    margin-left: var(--spacing-lg-4);
    margin-right: var(--spacing-lg-4);
  }
}
@media (min-width: 100em) {
  .tease--layout2 .tease__textWrapper {
    padding: var(--spacing-lg-2);
    margin-top: calc(var(--spacing-lg-6) / -1);
    margin-left: var(--spacing-lg-4);
    margin-right: var(--spacing-lg-4);
  }
}
.tease__postType, .tease__postCategory {
  font-weight: 400;
  font-family: var(--font-heading);
  font-size: var(--spacing-sm-1);
  color: var(--blue);
  text-transform: uppercase;
  letter-spacing: var(--letter-spacing-base);
  margin-bottom: var(--spacing-sm-4);
}
.tease__postCategory {
  display: flex;
  justify-content: space-between;
}
.tease__title {
  margin-top: 0;
  margin-bottom: var(--spacing-sm-2);
  font-size: var(--spacing-lg-1);
  font-weight: 500;
  color: var(--dark-grey);
  text-transform: none;
}
.tease__preview {
  color: var(--dark-grey);
  margin-top: calc(var(--spacing-sm-6) / -1);
  margin-bottom: var(--spacing-sm-1);
}
.tease__moreInfo {
  display: inline-block;
  background-color: var(--blue) !important;
  color: var(--white) !important;
  border-radius: var(--border-radius);
  border: none;
  font-family: var(--font-heading);
  font-weight: 400;
  text-align: center;
  line-height: 1;
  letter-spacing: var(--letter-spacing-base);
  transition: var(--hover-transition-fast);
  padding: var(--spacing-sm-2) var(--spacing-sm-2) !important;
  cursor: var(--cursor-pointer);
  position: relative;
  padding-right: var(--spacing-lg-4) !important;
  padding: var(--spacing-sm-3) var(--spacing-sm-1);
  padding-right: var(--spacing-lg-3);
  align-self: flex-start;
  margin-top: auto;
  margin-bottom: 0;
  cursor: var(--cursor-pointer);
}
@media (min-width: 37.5em) {
  .tease__moreInfo {
    padding: var(--spacing-sm-1) var(--spacing-lg-2) !important;
  }
}
@media (min-width: 37.5em) {
  .tease__moreInfo {
    padding-right: var(--spacing-lg-4) !important;
  }
}
.tease__moreInfo:after {
  content: "";
  position: absolute;
  right: var(--spacing-sm-1);
  top: 28%;
  background-image: url("../../img/arrow.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  width: var(--spacing-base);
  height: var(--spacing-base);
  transform: translateX(0);
  transition: var(--hover-transition-fast);
}
@media (min-width: 30em) {
  .tease__moreInfo:after {
    top: 32%;
  }
}
@media (min-width: 37.5em) {
  .tease__moreInfo {
    padding: var(--spacing-sm-3) var(--spacing-sm-1);
  }
}
@media (min-width: 37.5em) {
  .tease__moreInfo {
    padding-right: var(--spacing-lg-3);
  }
}
.tease__moreInfo:after {
  right: var(--spacing-sm-2);
  top: 28%;
  width: var(--spacing-sm-1);
  height: var(--spacing-sm-1);
}
@media (min-width: 30em) {
  .tease__moreInfo:after {
    top: 30%;
  }
}
@media (min-width: 48em) {
  .tease__moreInfo:after {
    right: var(--spacing-sm-1);
    top: 33%;
  }
}
.tease__moreInfo:hover, .tease__moreInfo:focus {
  outline: none;
  border: none;
  background-color: var(--dark-grey) !important;
  color: var(--white) !important;
}
.tease__moreInfo:hover:after, .tease__moreInfo:focus:after {
  transform: translateX(3px);
}
.tease--layoutHorizontalScroll {
  display: flex;
  flex-direction: column;
  width: 80%;
  min-width: 80%;
  margin-right: 3%;
}
@media (min-width: 37.5em) {
  .tease--layoutHorizontalScroll {
    width: 45%;
    min-width: 45%;
  }
}
@media (min-width: 68.75em) {
  .tease--layoutHorizontalScroll {
    width: 28%;
    min-width: 28%;
  }
}
.tease--layoutHorizontalScroll:hover .tease__img {
  transform: scale3d(1, 1, 1);
}
.tease--layoutHorizontalScroll:hover .tease__imgWrapper {
  box-shadow: var(--box-shadow-hover);
}
.tease--layoutHorizontalScroll:hover .tease__moreInfo {
  background-color: var(--dark-grey);
  color: var(--white);
}
.tease--layoutHorizontalScroll:hover .tease__moreInfo:after {
  transform: translateX(3px);
}

.progressBar {
  appearance: none;
  border: 0; /* for IE */
  width: 100%;
  height: var(--spacing-lg-1);
  background-color: var(--white);
  overflow: hidden;
  border-radius: var(--border-radius);
}
@media (min-width: 37.5em) {
  .progressBar {
    height: var(--spacing-lg-2);
  }
}
.progressBar--gravityForm .progressBar {
  background-color: var(--light-grey);
  height: var(--spacing-base);
}
@media (min-width: 37.5em) {
  .progressBar--gravityForm .progressBar {
    height: var(--spacing-lg-1);
  }
}
.progressBar::-webkit-progress-bar {
  background-color: var(--white);
}
.progressBar--gravityForm .progressBar::-webkit-progress-bar {
  background-color: var(--light-grey);
}
.progressBar::-webkit-progress-value {
  transition: width 1.4s;
  background-color: var(--orange);
  box-shadow: var(--box-shadow);
  border-radius: var(--border-radius);
}
.progressBar--gravityForm .progressBar::-webkit-progress-value {
  background-color: var(--dark-grey);
}
.progressBar::-moz-progress-bar {
  transition: padding-bottom 1.4s;
  padding-left: var(--spacing-lg-2);
  padding-bottom: var(--value);
  background-color: var(--orange);
  box-shadow: var(--box-shadow);
  border-radius: var(--border-radius);
  height: 0;
  transform-origin: 0 0;
  transform: rotate(-90deg) translateX(-50px);
}
.progressBar--gravityForm .progressBar::-moz-progress-bar {
  background-color: var(--dark-grey);
}
.progressBar::-ms-fill {
  background-color: var(--orange);
  box-shadow: var(--box-shadow);
  border-radius: var(--border-radius);
  border: 0;
}
.progressBar--gravityForm .progressBar::-ms-fill {
  background-color: var(--dark-grey);
}
.progressBar__text {
  position: relative;
  padding-left: var(--spacing-lg-1);
  margin-bottom: var(--spacing-sm-3);
  color: var(--off-white);
  letter-spacing: var(--letter-spacing-sm);
  font-family: var(--font-heading);
  line-height: var(--line-height-sm);
}
@media (min-width: 37.5em) {
  .progressBar__text {
    line-height: var(--line-height-base);
    padding-left: var(--spacing-lg-3);
  }
}
.progressBar--gravityForm .progressBar__text {
  color: var(--dark-grey);
  padding-left: var(--spacing-base);
}
.progressBar--gravityForm .progressBar__text.progressBar__text--leftAligned {
  padding-left: 0;
}
@media (min-width: 37.5em) {
  .progressBar--gravityForm .progressBar__text {
    line-height: var(--line-height-sm);
    padding-left: var(--spacing-lg-1);
  }
  .progressBar--gravityForm .progressBar__text.progressBar__text--leftAligned {
    padding-left: 0;
  }
}
.progressBar__text:before {
  content: "";
  position: absolute;
  left: -5px;
  top: 15%;
  background-image: url("../../img/arrow-curved-left.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  width: var(--spacing-lg-1);
  height: var(--spacing-lg-1);
  opacity: 0;
  animation: fade-in 0.5s ease-in 1.5s forwards;
}
@media (min-width: 37.5em) {
  .progressBar__text:before {
    top: 25%;
    width: var(--spacing-lg-3);
    height: var(--spacing-lg-3);
  }
}
.progressBar--gravityForm .progressBar__text:before {
  width: var(--spacing-base);
  height: var(--spacing-base);
  top: auto;
  bottom: calc(var(--spacing-sm-2) / -2);
  background-image: url("../../img/arrow-curved-left-dark.svg");
}
@media (min-width: 37.5em) {
  .progressBar--gravityForm .progressBar__text:before {
    bottom: calc(var(--spacing-sm-1) / -2);
    width: var(--spacing-lg-1);
    height: var(--spacing-lg-1);
  }
}
.progressBar__text--leftAligned {
  padding-left: 0;
  text-align: right;
  padding-right: var(--spacing-lg-1);
}
@media (min-width: 37.5em) {
  .progressBar__text--leftAligned {
    padding-right: var(--spacing-lg-3);
  }
}
.progressBar__text--leftAligned:before {
  content: "";
  position: absolute;
  right: -5px;
  top: 15%;
  left: auto;
  background-image: url("../../img/arrow-curved-right.svg");
}
@media (min-width: 37.5em) {
  .progressBar__text--leftAligned:before {
    top: 30%;
  }
}
.progressBar--gravityForm .progressBar__text--leftAligned:before {
  background-image: url("../../img/arrow-curved-right-dark.svg");
}
.progressBar__textAmount {
  opacity: 0;
  color: var(--white);
  font-size: var(--spacing-base);
  animation: fade-in 0.5s ease-in 0.8s forwards;
}
@media (min-width: 37.5em) {
  .progressBar__textAmount {
    font-size: var(--spacing-lg-2);
  }
}
.progressBar--gravityForm .progressBar__textAmount {
  line-height: 20px;
  color: var(--dark-grey);
  font-size: var(--spacing-sm-1);
}
@media (min-width: 37.5em) {
  .progressBar--gravityForm .progressBar__textAmount {
    font-size: var(--spacing-lg-1);
  }
}
.progressBar__textExplanation {
  opacity: 0;
  font-size: var(--spacing-sm-2);
  animation: fade-in 0.7s ease-in 1.2s forwards;
}
@media (min-width: 37.5em) {
  .progressBar__textExplanation {
    font-size: var(--spacing-base);
  }
}
.progressBar--gravityForm .progressBar__textExplanation {
  line-height: 20px;
  font-size: var(--spacing-sm-1);
}
.progressBar--highlighted {
  position: relative;
  background-color: var(--orange);
  box-shadow: none !important;
  color: var(--white);
  padding: var(--spacing-lg-2) var(--spacing-lg-1) var(--spacing-lg-1) var(--spacing-lg-1);
  border-top-left-radius: var(--border-radius);
  border-top-right-radius: var(--border-radius);
}
@media (min-width: 37.5em) {
  .progressBar--highlighted {
    padding: var(--spacing-lg-3) var(--spacing-lg-2) var(--spacing-lg-2) var(--spacing-lg-2);
  }
}
.progressBar--highlighted:after {
  content: "";
  position: absolute;
  clip-path: polygon(0 0, 50% 100%, 100% 0);
  background-color: var(--orange);
  left: 15%;
  right: 65%;
  bottom: calc(var(--spacing-base) / -1 + 2px);
  height: var(--spacing-base);
  z-index: 2;
}
.progressBar--highlighted .progressBar__text,
.progressBar--highlighted .progressBar__textAmount {
  color: var(--white);
}
.progressBar--highlighted .progressBar__text:before,
.progressBar--highlighted .progressBar__textAmount:before {
  background-image: url("../../img/arrow-curved-left.svg");
}
.progressBar--highlighted .progressBar__text--leftAligned:before {
  background-image: url("../../img/arrow-curved-right.svg");
}
.progressBar--highlighted .progressBar--gravityForm,
.progressBar--highlighted progress::-webkit-progress-bar {
  background-color: var(--white);
}
.progressBar--fixed__outerContainer {
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  position: sticky;
  z-index: 10;
  bottom: 0;
  background-color: var(--white);
  margin-top: var(--spacing-lg-3);
  margin-bottom: 0 !important;
  width: 100vw;
}
.progressBar--fixed__innerContainer {
  padding-left: 3vw;
  padding-right: 3vw;
  padding-top: var(--spacing-sm-2);
  padding-bottom: var(--spacing-sm-2);
  background-color: var(--dark-grey);
  border-bottom: solid 3px var(--medium-grey);
}
@media (min-width: 48em) {
  .progressBar--fixed__innerContainer {
    padding-left: 5vw;
    padding-right: 5vw;
  }
}
@media (min-width: 81.25em) {
  .progressBar--fixed__innerContainer {
    padding-left: 10vw;
    padding-right: 10vw;
  }
}
@media (min-width: 125em) {
  .progressBar--fixed__innerContainer {
    padding-left: calc((100vw - 1600px) / 2);
    padding-right: calc((100vw - 1600px) / 2);
  }
}
@media (min-width: 48em) {
  .progressBar--fixed__innerContainer {
    padding-top: var(--spacing-lg-1);
    padding-bottom: var(--spacing-lg-1);
  }
}
.progressBar--fixed__innerContainer .progressBar__wrapper {
  margin-left: auto;
  margin-right: auto;
  max-width: 100%;
}
@media (min-width: 68.75em) {
  .progressBar--fixed__innerContainer .progressBar__wrapper {
    max-width: 90%;
  }
}
@keyframes fade-in {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

.europeMap__svg {
  width: 100%;
  object-fit: contain;
}
.europeMap__svg:hover .europeMap__countryLink.active > * {
  filter: opacity(0.3);
}
.europeMap__countryLink {
  cursor: default;
}
.europeMap__countryLink.active > * {
  transition: var(--hover-transition-fast);
}
.europeMap__countryLink.active > *:hover, .europeMap__countryLink.active > *:focus {
  cursor: var(--cursor-pointer);
  filter: opacity(1) !important;
}
.europeMap__countryLink.law_not_strong > * {
  fill: var(--light-grey);
}
.europeMap__countryLink.law_eu > * {
  fill: var(--blue);
}
.europeMap__countryLink.law_in_discussion > * {
  fill: var(--yellow);
}
.europeMap__countryLink.law_in_force > * {
  fill: var(--orange);
}

body {
  overflow-x: hidden;
}

body::-webkit-scrollbar {
  width: var(--spacing-sm-1);
  border-radius: var(--border-radius);
}

*::-webkit-scrollbar-track {
  background: var(--off-white);
}

*::-webkit-scrollbar-thumb:vertical {
  background-color: var(--orange);
}

#moove_gdpr_cookie_info_bar.moove-gdpr-dark-scheme {
  background-color: var(--black) !important;
  border: none !important;
  overflow-y: scroll;
}
#moove_gdpr_cookie_info_bar.moove-gdpr-dark-scheme .moove-gdpr-info-bar-container {
  padding-left: 3vw;
  padding-right: 3vw;
  padding-top: var(--spacing-lg-1);
  padding-bottom: var(--spacing-lg-1);
}
@media (min-width: 48em) {
  #moove_gdpr_cookie_info_bar.moove-gdpr-dark-scheme .moove-gdpr-info-bar-container {
    padding-left: 5vw;
    padding-right: 5vw;
  }
}
@media (min-width: 81.25em) {
  #moove_gdpr_cookie_info_bar.moove-gdpr-dark-scheme .moove-gdpr-info-bar-container {
    padding-left: 10vw;
    padding-right: 10vw;
  }
}
@media (min-width: 125em) {
  #moove_gdpr_cookie_info_bar.moove-gdpr-dark-scheme .moove-gdpr-info-bar-container {
    padding-left: calc((100vw - 1600px) / 2);
    padding-right: calc((100vw - 1600px) / 2);
  }
}
#moove_gdpr_cookie_info_bar.moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content {
  padding: 0;
}
#moove_gdpr_cookie_info_bar.moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content p,
#moove_gdpr_cookie_info_bar.moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content p a {
  font-family: var(--font-paragraph-bold);
  line-height: var(--line-height-md);
  font-size: var(--spacing-sm-1);
}
#moove_gdpr_cookie_info_bar.moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content p a {
  position: relative;
  color: var(--white);
  font-family: var(--font-paragraph-bold);
  letter-spacing: 0;
  box-shadow: 0 -2px 0 inset var(--white);
  transition: var(--hover-transition);
  text-decoration: none;
}
#moove_gdpr_cookie_info_bar.moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content p a:link, #moove_gdpr_cookie_info_bar.moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content p a:visited {
  color: var(--white);
}
#moove_gdpr_cookie_info_bar.moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content p a:active, #moove_gdpr_cookie_info_bar.moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content p a:hover, #moove_gdpr_cookie_info_bar.moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content p a:focus {
  color: var(--black);
  border-radius: var(--border-radius);
  box-shadow: 0 -2em 0 inset var(--white);
}
#moove_gdpr_cookie_info_bar.moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content .mgbutton {
  display: inline-block;
  background-color: var(--orange) !important;
  color: var(--white) !important;
  border-radius: var(--border-radius);
  border: none;
  font-family: var(--font-heading);
  font-weight: 400;
  text-align: center;
  line-height: 1;
  letter-spacing: var(--letter-spacing-base);
  transition: var(--hover-transition-fast);
  padding: var(--spacing-sm-2) var(--spacing-sm-2) !important;
  cursor: var(--cursor-pointer);
  font-size: var(--spacing-base) !important;
}
@media (min-width: 37.5em) {
  #moove_gdpr_cookie_info_bar.moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content .mgbutton {
    padding: var(--spacing-sm-1) var(--spacing-lg-2) !important;
  }
}
#moove_gdpr_cookie_info_bar.moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content .mgbutton:hover, #moove_gdpr_cookie_info_bar.moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content .mgbutton:focus {
  outline: none;
  border: none;
  background-color: var(--blue) !important;
  color: var(--white) !important;
}
#moove_gdpr_cookie_info_bar.moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content .moove-gdpr-infobar-close-btn {
  border-radius: var(--border-radius);
  box-shadow: none;
  border: solid 2px var(--light-grey);
  opacity: 1;
}
#moove_gdpr_cookie_info_bar.moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content .moove-gdpr-infobar-close-btn .moovegdpr-arrow-close:before, #moove_gdpr_cookie_info_bar.moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content .moove-gdpr-infobar-close-btn .moovegdpr-arrow-close:after {
  width: 2px;
  background-color: var(--light-grey);
}
#moove_gdpr_cookie_info_bar.moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content .moove-gdpr-infobar-close-btn:hover, #moove_gdpr_cookie_info_bar.moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content .moove-gdpr-infobar-close-btn.focus {
  border: solid 2px var(--white);
}
#moove_gdpr_cookie_info_bar.moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content .moove-gdpr-infobar-close-btn:hover .moovegdpr-arrow-close:before, #moove_gdpr_cookie_info_bar.moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content .moove-gdpr-infobar-close-btn:hover .moovegdpr-arrow-close:after, #moove_gdpr_cookie_info_bar.moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content .moove-gdpr-infobar-close-btn.focus .moovegdpr-arrow-close:before, #moove_gdpr_cookie_info_bar.moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content .moove-gdpr-infobar-close-btn.focus .moovegdpr-arrow-close:after {
  background-color: var(--black);
}

.social__link {
  height: var(--spacing-lg-3);
  width: var(--spacing-lg-3);
  margin-right: var(--spacing-sm-3);
  cursor: var(--cursor-pointer);
}
@media (min-width: 68.75em) {
  .social__link {
    height: var(--spacing-lg-2);
    width: var(--spacing-lg-2);
    margin-bottom: var(--spacing-sm-3);
  }
}
@media (min-width: 81.25em) {
  .social__link {
    height: var(--spacing-lg-3);
    width: var(--spacing-lg-3);
  }
}
.social__link svg {
  height: 100%;
  width: 100%;
}
.social__link svg ellipse,
.social__link svg circle,
.social__link svg path {
  transition: var(--hover-transition-fast);
}
.social__icon {
  height: 100%;
  width: 100%;
  margin-bottom: var(--spacing-sm-3);
}
.social__icon circle,
.social__icon ellipse {
  fill: var(--orange);
}
.social__icon path {
  fill: var(--white);
}
.social__medium {
  color: var(--medium-grey);
  font-family: var(--font-heading);
  font-size: var(--spacing-sm-2);
  text-align: center;
}
@media (pointer: coarse) {
  .social__mobile {
    display: flex !important;
  }
  .social__web {
    display: none !important;
  }
}
@media (pointer: fine) {
  .social__web {
    display: flex !important;
  }
  .social__mobile {
    display: none !important;
  }
}
.social__whatsapp:hover circle {
  fill: var(--whatsapp);
}
.social__facebook:hover ellipse {
  fill: var(--facebook);
}
.social__facebook:hover path {
  fill: var(--white);
}
.social__messenger:hover ellipse {
  fill: var(--messenger);
}
.social__messenger:hover path {
  fill: var(--white);
}
.social__instagram:hover ellipse {
  fill: var(--instagram);
}
.social__instagram:hover path {
  fill: var(--white);
}
.social__x:hover ellipse {
  fill: var(--x);
}
.social__email:hover circle {
  fill: var(--email);
}
.social__email:hover path {
  fill: var(--white);
}
.social__telegram:hover ellipse {
  fill: var(--telegram);
}
.social__sms:hover circle {
  fill: var(--sms);
}

.sharingModal__openButton {
  position: sticky;
  bottom: 3vw;
  left: 3vw;
  display: flex;
  flex-direction: column;
  align-items: center;
  background-color: var(--light-grey);
  padding: var(--spacing-sm-3);
  opacity: 0;
  z-index: 3;
  transition: var(--hover-transition);
}
@media (min-width: 48em) {
  .sharingModal__openButton {
    padding: var(--spacing-sm-1);
    bottom: 5vw;
    left: 5vw;
  }
}
@media (min-width: 68.75em) {
  .sharingModal__openButton {
    display: none;
  }
}
.sharingModal__openButton.show {
  opacity: 1;
}
.sharingModal__openButton.hide {
  visibility: hidden;
}
.sharingModal__openButton:hover, .sharingModal__openButton:focus {
  background-color: var(--blue);
  color: var(--white);
  outline-color: var(--blue);
}
.sharingModal__openButtonIcon {
  height: var(--spacing-lg-3);
  width: var(--spacing-lg-3);
  display: flex;
}
.sharingModal__openButtonIcon svg {
  width: 100%;
  height: 100%;
}
.sharingModal__openButtonText {
  font-family: var(--font-heading);
  font-size: var(--spacing-sm-1);
  line-height: 1;
  margin: 0;
  margin-top: var(--spacing-sm-7);
}
.sharingModal__overlay {
  background: var(--dark-grey-rgba);
  height: 100%;
  left: 0;
  top: 0;
  display: flex;
  overflow: auto;
  padding: var(--spacing-base);
  position: fixed;
  transition: opacity 0.2s;
  width: 100%;
  z-index: -1;
}
.sharingModal__overlay[aria-hidden=true] {
  opacity: 0;
  visibility: hidden;
}
.sharingModal__overlay[aria-hidden=false] {
  opacity: 1;
  visibility: visible;
  z-index: 2;
}
.sharingModal__overlay[aria-hidden=false] .sharingModal__box {
  transform: scale(1);
}
.sharingModal__box {
  max-width: 98%;
  width: 100%;
  margin: auto;
  margin-top: calc(var(--spacing-sm-1) + 2 * var(--nav-height));
  overflow: auto;
  overflow-x: hidden;
  background: var(--off-white);
  border-radius: var(--border-radius);
  display: flex;
  flex-direction: column;
  padding: var(--spacing-lg-1);
  transform: scale(0.8);
  transition: transform 0.3s;
}
@media (min-width: 30em) {
  .sharingModal__box {
    max-width: 400px;
  }
}
@media (min-width: 37.5em) {
  .sharingModal__box {
    padding: var(--spacing-lg-3);
    margin-top: calc(var(--spacing-lg-1) + var(--nav-height));
  }
}
.sharingModal__box .social__link {
  display: flex;
  align-items: center;
  width: 100%;
}
.sharingModal__box .social__link:not(:last-child) {
  margin-bottom: var(--spacing-sm-1);
}
.sharingModal__box .social__icon {
  width: var(--spacing-lg-3);
  height: var(--spacing-lg-3);
  margin-right: var(--spacing-sm-1);
  margin-bottom: 0;
}
.sharingModal__box .social__medium {
  font-size: var(--spacing-base);
}
.sharingModal__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: var(--spacing-lg-1);
}
.sharingModal__title {
  color: var(--dark-grey);
  margin: 0;
  line-height: 0;
}
.sharingModal__closeButton {
  height: var(--spacing-lg-3);
  width: var(--spacing-lg-3);
  display: flex;
  padding: 0;
  margin: 0;
}
.sharingModal__closeButton svg {
  width: 100%;
  height: 100%;
}

.privacyNote {
  font-family: var(--font-heading);
  font-size: var(--spacing-sm-1);
  animation: fadeIn 2s;
}
.privacyNote a {
  position: relative;
  color: var(--dark-grey);
  font-family: var(--font-paragraph-bold);
  letter-spacing: 0;
  box-shadow: 0 -2px 0 inset var(--dark-grey);
  transition: var(--hover-transition);
}
.privacyNote a:link, .privacyNote a:visited {
  color: var(--dark-grey);
}
.privacyNote a:active, .privacyNote a:hover, .privacyNote a:focus {
  color: var(--white);
  border-radius: var(--border-radius);
  box-shadow: 0 -2em 0 inset var(--dark-grey);
}

@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  80% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.sharingButtons {
  display: flex;
}
.sharingButtons__header {
  margin-bottom: var(--spacing-sm-1);
}
.page .sharingButtons__header {
  justify-content: center;
}
.sharingButtons__sidebar {
  display: none;
}
@media (min-width: 68.75em) {
  .sharingButtons__sidebar {
    display: flex;
    opacity: 0;
    transition: var(--hover-transition);
    margin-bottom: var(--spacing-lg-5);
    margin-right: 0;
    flex-direction: column;
    width: 0;
    align-self: flex-start;
    position: sticky;
    top: calc(var(--nav-height) + var(--spacing-lg-2));
    transform: translateX(0.3em);
  }
}
@media (min-width: 81.25em) {
  .sharingButtons__sidebar {
    transform: translateX(2em);
  }
}
.sharingButtons__sidebar.show {
  opacity: 1;
}

.gebana fieldset:first-of-type .gfield_radio {
  grid-template-columns: repeat(5, 1fr);
}
.gebana fieldset:nth-of-type(2) .gfield_radio {
  grid-template-columns: repeat(6, 1fr);
}
.gebana fieldset:last-of-type .gfield_radio {
  grid-template-columns: repeat(3, 1fr);
}
.gebana fieldset:last-of-type .gchoice {
  border: solid 3px var(--dark-grey);
  border-radius: var(--border-radius);
  min-height: var(--form-field-height);
}
.gebana fieldset:last-of-type .gchoice label {
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  max-width: 100% !important;
  height: 100%;
  background: transparent;
  color: var(--dark-grey);
  font-size: var(--spacing-base) !important;
  transition: var(--hover-transition-fast);
}
@media (min-width: 37.5em) {
  .gebana fieldset:last-of-type .gchoice label {
    font-size: var(--spacing-sm-1);
  }
}
@media (min-width: 48em) {
  .gebana fieldset:last-of-type .gchoice label {
    font-size: var(--spacing-base);
  }
}
.gebana fieldset:last-of-type .gchoice label:before, .gebana fieldset:last-of-type .gchoice label:after {
  content: none;
}
.gebana fieldset:last-of-type .gchoice .gfield-choice-input {
  position: absolute !important;
  clip: rect(1px, 1px, 1px, 1px);
  width: 1px;
  height: 1px;
  overflow: hidden;
  padding: 0;
}
.gebana fieldset:last-of-type .gchoice .gfield-choice-input + label {
  display: flex;
  padding: 0;
}
.gebana fieldset:last-of-type .gchoice .gfield-choice-input + label:before {
  content: none;
}
.gebana fieldset:last-of-type .gchoice .gfield-choice-input + label:after {
  content: none;
}
.gebana fieldset:last-of-type .gchoice .gfield-choice-input:hover + label, .gebana fieldset:last-of-type .gchoice .gfield-choice-input:focus + label, .gebana fieldset:last-of-type .gchoice .gfield-choice-input:checked + label {
  background: var(--dark-grey);
  color: var(--white);
}

.wp-block-image {
  border-radius: var(--border-radius);
  overflow: hidden;
  margin-top: var(--spacing-base);
  margin-bottom: var(--spacing-base);
}
@media (min-width: 30em) {
  .wp-block-image {
    margin-top: var(--spacing-lg-2);
    margin-bottom: var(--spacing-lg-2);
  }
}
@media (min-width: 56.25em) {
  .wp-block-image {
    margin-top: var(--spacing-lg-3);
    margin-bottom: var(--spacing-lg-3);
  }
}
@media (min-width: 81.25em) {
  .wp-block-image {
    margin-top: var(--spacing-lg-4);
    margin-bottom: var(--spacing-lg-4);
  }
}
.wp-block-image figure {
  border-radius: var(--border-radius);
}
.wp-block-image > a:hover,
.wp-block-image > a:focus {
  overflow: hidden;
}
.wp-block-image > a:hover img,
.wp-block-image > a:focus img {
  transform: scale(1.03);
}
.wp-block-image img {
  display: block;
  width: 100%;
  height: 100%;
  max-width: 100%;
  object-fit: cover;
  border-radius: var(--border-radius);
  max-height: 100vh;
  transform: scale(1);
  transition: var(--hover-transition);
}
.wp-block-image figcaption {
  font-family: var(--font-paragraph-bold);
  font-size: var(--spacing-sm-1);
  letter-spacing: var(--letter-spacing-sm);
  text-align: left;
  margin-top: var(--spacing-sm-4);
}
.wp-block-image.alignwide {
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  max-width: 100vw;
}
.wp-block-image.alignwide img {
  padding-left: 3vw;
  padding-right: 3vw;
}
@media (min-width: 48em) {
  .wp-block-image.alignwide img {
    padding-left: 5vw;
    padding-right: 5vw;
  }
}
@media (min-width: 81.25em) {
  .wp-block-image.alignwide img {
    padding-left: 10vw;
    padding-right: 10vw;
  }
}
@media (min-width: 125em) {
  .wp-block-image.alignwide img {
    padding-left: calc((100vw - 1600px) / 2);
    padding-right: calc((100vw - 1600px) / 2);
  }
}
.wp-block-image.alignfull {
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  max-width: 100vw;
  max-height: 100vh;
}

.wp-block-list {
  margin-top: var(--spacing-base);
  margin-bottom: var(--spacing-base);
}
.wp-block-list li {
  line-height: var(--line-height-md);
  margin-bottom: var(--spacing-sm-6);
}

ul.wp-block-list {
  list-style-type: square;
  list-style-position: outside;
  padding-left: var(--spacing-base);
}
ul.wp-block-list li::marker {
  color: var(--dark-grey);
}

ol.wp-block-list {
  list-style: none;
  counter-reset: counter;
}
ol.wp-block-list li {
  counter-increment: counter;
  position: relative;
  display: block;
  padding-left: var(--spacing-lg-1);
}
ol.wp-block-list li:before {
  content: counter(counter) ".";
  position: absolute;
  left: 0;
  display: inline-block;
  font-family: var(--font-paragraph-bold);
}

.wp-block-file {
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-top: var(--spacing-sm-5);
  padding-bottom: var(--spacing-sm-5);
  border-bottom: solid 2px var(--dark-grey);
  border-top: solid 2px var(--dark-grey);
}
.wp-block-file + .wp-block-file {
  border-top: none;
}
.wp-block-file a:first-of-type {
  font-family: var(--font-paragraph-bold);
  color: var(--dark-grey);
  box-shadow: none;
  line-height: var(--line-height-base);
  transition: var(--hover-transition);
  flex-grow: 2;
}
.wp-block-file a:first-of-type:link, .wp-block-file a:first-of-type:visited {
  color: var(--dark-grey);
}
.wp-block-file a:first-of-type:active, .wp-block-file a:first-of-type:hover, .wp-block-file a:first-of-type:focus {
  color: var(--blue);
}
.wp-block-file .wp-block-file__button {
  display: inline-block;
  background-color: var(--dark-grey) !important;
  color: var(--white) !important;
  border-radius: var(--border-radius);
  border: none;
  font-family: var(--font-heading);
  font-weight: 400;
  text-align: center;
  line-height: 1;
  letter-spacing: var(--letter-spacing-base);
  transition: var(--hover-transition-fast);
  padding: var(--spacing-sm-2) var(--spacing-sm-2) !important;
  cursor: var(--cursor-pointer);
  position: relative;
  padding-right: var(--spacing-lg-4);
  margin-left: var(--spacing-sm-1);
  color: var(--white) !important;
  flex-shrink: 0;
}
@media (min-width: 37.5em) {
  .wp-block-file .wp-block-file__button {
    padding: var(--spacing-sm-1) var(--spacing-lg-2) !important;
  }
}
.wp-block-file .wp-block-file__button:hover, .wp-block-file .wp-block-file__button:focus {
  outline: none;
  border: none;
  background-color: var(--blue) !important;
  color: var(--white) !important;
}
@media (min-width: 37.5em) {
  .wp-block-file .wp-block-file__button {
    padding-right: var(--spacing-lg-4);
  }
}
.wp-block-file .wp-block-file__button:after {
  content: "";
  position: absolute;
  right: var(--spacing-sm-2);
  top: 30%;
  background-image: url("../../img/download.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  width: var(--spacing-base);
  height: var(--spacing-base);
  transition: var(--hover-transition-fast);
}
.wp-block-file .wp-block-file__button:hover, .wp-block-file .wp-block-file__button:focus {
  opacity: 1 !important;
}
.wp-block-file .wp-block-file__button:hover:after, .wp-block-file .wp-block-file__button:focus:after {
  transform: translateY(2px);
}

.wp-block-embed {
  margin-top: var(--spacing-base);
  margin-bottom: var(--spacing-base);
}
@media (min-width: 30em) {
  .wp-block-embed {
    margin-top: var(--spacing-lg-2);
    margin-bottom: var(--spacing-lg-2);
  }
}
@media (min-width: 56.25em) {
  .wp-block-embed {
    margin-top: var(--spacing-lg-3);
    margin-bottom: var(--spacing-lg-3);
  }
}
@media (min-width: 81.25em) {
  .wp-block-embed {
    margin-top: var(--spacing-lg-4);
    margin-bottom: var(--spacing-lg-4);
  }
}
.wp-block-embed__wrapper {
  position: relative;
  border-radius: var(--border-radius);
  overflow: hidden;
}
.wp-block-embed__wrapper:before {
  content: "";
  display: block;
  height: 0;
  width: 100%;
  padding-top: 56.25%;
}
.wp-block-embed__wrapper img,
.wp-block-embed__wrapper svg,
.wp-block-embed__wrapper iframe {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.wp-block-embed.alignwide {
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  max-width: 100vw;
}
.wp-block-embed.alignwide iframe {
  padding-left: 3vw;
  padding-right: 3vw;
}
@media (min-width: 48em) {
  .wp-block-embed.alignwide iframe {
    padding-left: 5vw;
    padding-right: 5vw;
  }
}
@media (min-width: 81.25em) {
  .wp-block-embed.alignwide iframe {
    padding-left: 10vw;
    padding-right: 10vw;
  }
}
@media (min-width: 125em) {
  .wp-block-embed.alignwide iframe {
    padding-left: calc((100vw - 1600px) / 2);
    padding-right: calc((100vw - 1600px) / 2);
  }
}
.wp-block-embed.alignfull {
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  max-width: 100vw;
  max-height: 100vh;
}

.wp-block-quote {
  margin-top: var(--spacing-base);
  margin-bottom: var(--spacing-base);
}
@media (min-width: 30em) {
  .wp-block-quote {
    margin-top: var(--spacing-lg-2);
    margin-bottom: var(--spacing-lg-2);
  }
}
@media (min-width: 56.25em) {
  .wp-block-quote {
    margin-top: var(--spacing-lg-3);
    margin-bottom: var(--spacing-lg-3);
  }
}
@media (min-width: 81.25em) {
  .wp-block-quote {
    margin-top: var(--spacing-lg-4);
    margin-bottom: var(--spacing-lg-4);
  }
}
.wp-block-quote p {
  font-size: var(--spacing-lg-3);
  font-family: var(--font-paragraph-bold);
  line-height: var(--line-height-sm);
}
@media (min-width: 56.25em) {
  .wp-block-quote p {
    font-size: var(--spacing-lg-4);
  }
}
.wp-block-quote cite {
  font-family: var(--font-heading);
  font-weight: 400;
  font-size: var(--spacing-sm-1);
  letter-spacing: var(--letter-spacing-xs);
  color: var(--medium-grey);
}

.c-accordion__item {
  background-color: var(--off-white);
  margin-bottom: var(--spacing-sm-1);
  border-radius: var(--border-radius);
}
.c-accordion__title {
  padding: var(--spacing-sm-1);
  margin: 0;
}
.c-accordion__title:after {
  color: var(--dark-grey);
  right: var(--spacing-sm-1);
}
.c-accordion__content {
  padding-left: var(--spacing-sm-1);
  padding-right: var(--spacing-sm-1);
  padding-bottom: var(--spacing-sm-1);
}
.c-accordion__content > :last-child {
  margin-bottom: 0;
}

.wp-block-separator {
  border: transparent;
  overflow: auto;
  margin-top: 0;
  margin-bottom: 0;
}
.wp-block-separator.is-style-default {
  padding-bottom: var(--spacing-base);
}
@media (min-width: 30em) {
  .wp-block-separator.is-style-default {
    padding-bottom: var(--spacing-lg-1);
  }
}
@media (min-width: 56.25em) {
  .wp-block-separator.is-style-default {
    padding-bottom: var(--spacing-lg-2);
  }
}
@media (min-width: 81.25em) {
  .wp-block-separator.is-style-default {
    padding-bottom: var(--spacing-lg-3);
  }
}
.wp-block-separator.is-style-responsive-small {
  padding-bottom: var(--spacing-sm-1);
}
@media (min-width: 30em) {
  .wp-block-separator.is-style-responsive-small {
    padding-bottom: var(--spacing-base);
  }
}
@media (min-width: 56.25em) {
  .wp-block-separator.is-style-responsive-small {
    padding-bottom: var(--spacing-lg-1);
  }
}
@media (min-width: 81.25em) {
  .wp-block-separator.is-style-responsive-small {
    padding-bottom: var(--spacing-lg-2);
  }
}
.wp-block-separator.is-style-responsive-large {
  padding-bottom: var(--spacing-lg-1);
}
@media (min-width: 30em) {
  .wp-block-separator.is-style-responsive-large {
    padding-bottom: var(--spacing-lg-2);
  }
}
@media (min-width: 56.25em) {
  .wp-block-separator.is-style-responsive-large {
    padding-bottom: var(--spacing-lg-3);
  }
}
@media (min-width: 81.25em) {
  .wp-block-separator.is-style-responsive-large {
    padding-bottom: var(--spacing-lg-4);
  }
}

.wp-block-buttons {
  margin-top: var(--spacing-lg-2);
  margin-bottom: var(--spacing-lg-2);
}

.wp-block-button {
  font-family: var(--font-heading);
  letter-spacing: var(--letter-spacing-base);
}
.wp-block-button__link {
  border-radius: var(--border-radius);
  transition: var(--hover-transition);
  box-shadow: var(--box-shadow);
}
.wp-block-button__link:hover, .wp-block-button__link:focus {
  box-shadow: var(--box-shadow-hover);
}

.homeTeaser {
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  padding-top: var(--spacing-lg-2);
  padding-bottom: var(--spacing-lg-2);
  padding-top: var(--spacing-lg-3);
  padding-bottom: var(--spacing-lg-3);
  position: relative;
  background-color: var(--white);
}
@media (min-width: 48em) {
  .homeTeaser {
    padding-top: var(--spacing-lg-4);
    padding-bottom: var(--spacing-lg-4);
  }
}
@media (min-width: 48em) {
  .homeTeaser {
    padding-top: var(--spacing-lg-6);
    padding-bottom: var(--spacing-lg-6);
  }
}
.homeTeaser__content {
  padding-left: 3vw;
  padding-right: 3vw;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
@media (min-width: 48em) {
  .homeTeaser__content {
    padding-left: 5vw;
    padding-right: 5vw;
  }
}
@media (min-width: 81.25em) {
  .homeTeaser__content {
    padding-left: 10vw;
    padding-right: 10vw;
  }
}
@media (min-width: 125em) {
  .homeTeaser__content {
    padding-left: calc((100vw - 1600px) / 2);
    padding-right: calc((100vw - 1600px) / 2);
  }
}
@media (min-width: 48em) {
  .homeTeaser__content {
    flex-direction: row;
  }
}
@media (min-width: 37.5em) {
  .homeTeaser__content {
    align-items: center;
  }
}
@media (min-width: 48em) {
  .homeTeaser__textWrapper {
    width: 52%;
  }
}
@media (min-width: 56.25em) {
  .homeTeaser__textWrapper {
    width: 48%;
  }
}
@media (min-width: 81.25em) {
  .homeTeaser__textWrapper {
    width: 47%;
  }
}
.homeTeaser--layoutReversed .homeTeaser__textWrapper {
  order: 2;
}
@media (min-width: 48em) {
  .homeTeaser--layoutReversed .homeTeaser__textWrapper {
    order: 1;
  }
}
.homeTeaser__textTitle {
  margin-bottom: var(--spacing-sm-2);
  text-transform: none;
  font-size: var(--spacing-lg-1);
}
@media (min-width: 37.5em) {
  .homeTeaser__textTitle {
    font-size: var(--spacing-lg-2);
  }
}
@media (min-width: 81.25em) {
  .homeTeaser__textTitle {
    font-size: var(--spacing-lg-3);
  }
}
.homeTeaser__text {
  font-size: var(--spacing-base);
}
@media (min-width: 37.5em) {
  .homeTeaser__text {
    font-size: var(--spacing-lg-1);
  }
}
.homeTeaser__imgWrapper {
  position: relative;
  width: 100%;
  max-height: 300px;
  position: relative;
  margin-bottom: var(--spacing-lg-2);
  box-shadow: var(--box-shadow);
  transition: var(--hover-transition);
}
.homeTeaser__imgWrapper:before {
  content: "";
  display: block;
  height: 0;
  width: 100%;
  padding-top: 66.6666666667%;
}
.homeTeaser__imgWrapper img,
.homeTeaser__imgWrapper svg,
.homeTeaser__imgWrapper iframe {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media (min-width: 37.5em) {
  .homeTeaser__imgWrapper {
    max-height: 350px;
  }
}
@media (min-width: 48em) {
  .homeTeaser__imgWrapper {
    position: relative;
    max-height: none;
    margin-bottom: 0;
    width: 44%;
  }
  .homeTeaser__imgWrapper:before {
    content: "";
    display: block;
    height: 0;
    width: 100%;
    padding-top: 100%;
  }
  .homeTeaser__imgWrapper img,
  .homeTeaser__imgWrapper svg,
  .homeTeaser__imgWrapper iframe {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
}
@media (min-width: 56.25em) {
  .homeTeaser__imgWrapper {
    position: relative;
    width: 48%;
    max-height: 480px;
  }
  .homeTeaser__imgWrapper:before {
    content: "";
    display: block;
    height: 0;
    width: 100%;
    padding-top: 90.9090909091%;
  }
  .homeTeaser__imgWrapper img,
  .homeTeaser__imgWrapper svg,
  .homeTeaser__imgWrapper iframe {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
}
@media (min-width: 81.25em) {
  .homeTeaser__imgWrapper {
    width: 47%;
  }
}
.homeTeaser__imgWrapper:hover {
  box-shadow: var(--box-shadow-hover);
}
.homeTeaser--layoutReversed .homeTeaser__imgWrapper {
  order: 1;
}
@media (min-width: 48em) {
  .homeTeaser--layoutReversed .homeTeaser__imgWrapper {
    order: 2;
  }
}
.homeTeaser__img {
  border-radius: var(--border-radius);
  display: block;
  width: 100%;
  height: 100%;
  max-width: 100%;
  object-fit: cover;
}
.homeTeaser__link {
  display: inline-block;
  background-color: var(--dark-grey) !important;
  color: var(--white) !important;
  border-radius: var(--border-radius);
  border: none;
  font-family: var(--font-heading);
  font-weight: 400;
  text-align: center;
  line-height: 1;
  letter-spacing: var(--letter-spacing-base);
  transition: var(--hover-transition-fast);
  padding: var(--spacing-sm-2) var(--spacing-sm-2) !important;
  cursor: var(--cursor-pointer);
  position: relative;
  padding-right: var(--spacing-lg-4) !important;
  font-size: var(--spacing-lg-1);
}
@media (min-width: 37.5em) {
  .homeTeaser__link {
    padding: var(--spacing-sm-1) var(--spacing-lg-2) !important;
  }
}
@media (min-width: 37.5em) {
  .homeTeaser__link {
    padding-right: var(--spacing-lg-4) !important;
  }
}
.homeTeaser__link:after {
  content: "";
  position: absolute;
  right: var(--spacing-sm-1);
  top: 28%;
  background-image: url("../../img/arrow.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  width: var(--spacing-base);
  height: var(--spacing-base);
  transform: translateX(0);
  transition: var(--hover-transition-fast);
}
@media (min-width: 30em) {
  .homeTeaser__link:after {
    top: 32%;
  }
}
.homeTeaser__link:hover, .homeTeaser__link:focus {
  outline: none;
  border: none;
  background-color: var(--blue) !important;
  color: var(--white) !important;
}
.homeTeaser__link:hover:after, .homeTeaser__link:focus:after {
  transform: translateX(3px);
}

.intro {
  font-size: var(--spacing-lg-1);
  line-height: var(--line-height-base);
}
@media (min-width: 37.5em) {
  .intro {
    line-height: var(--line-height-md);
  }
}

.textImage {
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  padding-top: var(--spacing-lg-2);
  padding-bottom: var(--spacing-lg-2);
  margin-top: var(--spacing-base);
  margin-bottom: var(--spacing-base);
  background-color: var(--off-white);
}
@media (min-width: 48em) {
  .textImage {
    padding-top: var(--spacing-lg-4);
    padding-bottom: var(--spacing-lg-4);
  }
}
@media (min-width: 30em) {
  .textImage {
    margin-top: var(--spacing-lg-2);
    margin-bottom: var(--spacing-lg-2);
  }
}
@media (min-width: 56.25em) {
  .textImage {
    margin-top: var(--spacing-lg-3);
    margin-bottom: var(--spacing-lg-3);
  }
}
@media (min-width: 81.25em) {
  .textImage {
    margin-top: var(--spacing-lg-4);
    margin-bottom: var(--spacing-lg-4);
  }
}
.textImage + .textImage,
.textImage + .textText {
  margin-top: calc(var(--spacing-base) / -1);
}
@media (min-width: 30em) {
  .textImage + .textImage,
  .textImage + .textText {
    margin-top: calc(var(--spacing-lg-2) / -1);
  }
}
@media (min-width: 56.25em) {
  .textImage + .textImage,
  .textImage + .textText {
    margin-top: calc(var(--spacing-lg-3) / -1);
  }
}
@media (min-width: 81.25em) {
  .textImage + .textImage,
  .textImage + .textText {
    margin-top: calc(var(--spacing-lg-4) / -1);
  }
}
.textImage.darkgrey + .textImage.darkgrey, .textImage.off-white + .textImage.off-white, .textImage.darkgrey + .textText.darkgrey, .textImage.off-white + .textText.off-white {
  padding-top: 0;
}
.textImage a {
  position: relative;
  color: var(--dark-grey);
  font-family: var(--font-paragraph-bold);
  letter-spacing: 0;
  box-shadow: 0 -2px 0 inset var(--dark-grey);
  transition: var(--hover-transition);
}
.textImage a:link, .textImage a:visited {
  color: var(--dark-grey);
}
.textImage a:active, .textImage a:hover, .textImage a:focus {
  color: var(--off-white);
  border-radius: var(--border-radius);
  box-shadow: 0 -2em 0 inset var(--dark-grey);
}
.textImage.dark-grey {
  background-color: var(--dark-grey);
  color: var(--white);
}
.textImage.dark-grey a {
  position: relative;
  color: var(--white);
  font-family: var(--font-paragraph-bold);
  letter-spacing: 0;
  box-shadow: 0 -2px 0 inset var(--white);
  transition: var(--hover-transition);
}
.textImage.dark-grey a:link, .textImage.dark-grey a:visited {
  color: var(--white);
}
.textImage.dark-grey a:active, .textImage.dark-grey a:hover, .textImage.dark-grey a:focus {
  color: var(--dark-grey);
  border-radius: var(--border-radius);
  box-shadow: 0 -2em 0 inset var(--white);
}
.textImage.dark-grey li::marker {
  color: var(--white);
}
.textImage.dark-grey .c-accordion__item {
  background-color: var(--off-white);
  color: var(--dark-grey);
}
.textImage__content {
  padding-left: 3vw;
  padding-right: 3vw;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  position: relative;
}
@media (min-width: 48em) {
  .textImage__content {
    padding-left: 5vw;
    padding-right: 5vw;
  }
}
@media (min-width: 81.25em) {
  .textImage__content {
    padding-left: 10vw;
    padding-right: 10vw;
  }
}
@media (min-width: 125em) {
  .textImage__content {
    padding-left: calc((100vw - 1600px) / 2);
    padding-right: calc((100vw - 1600px) / 2);
  }
}
@media (min-width: 48em) {
  .textImage__content {
    flex-direction: row;
  }
}
.textImage__content > *:first-child,
.textImage__content > *:nth-child(2) {
  width: 100%;
}
.textImage__content > *:first-child {
  margin-bottom: var(--spacing-lg-1);
}
@media (min-width: 48em) {
  .textImage__content > *:first-child,
  .textImage__content > *:nth-child(2) {
    width: 48%;
  }
  .textImage__content > *:first-child {
    margin-bottom: 0;
  }
}
@media (min-width: 56.25em) {
  .textImage__content > *:first-child,
  .textImage__content > *:nth-child(2) {
    width: 47%;
  }
}
.textImage__imgWrapper {
  order: 1;
  margin-bottom: var(--spacing-lg-1) !important;
}
@media (min-width: 48em) {
  .textImage__imgWrapper {
    margin-bottom: 0 !important;
    order: unset;
    position: sticky;
    top: calc(var(--nav-height) + var(--spacing-base));
    align-self: flex-start;
  }
}
.textImage__textWrapper {
  order: 2;
}
@media (min-width: 48em) {
  .textImage__textWrapper {
    order: unset;
  }
}
.textImage__img {
  display: block;
  width: 100%;
  height: 100%;
  max-width: 100%;
  object-fit: cover;
  border-radius: var(--border-radius);
}
.textImage__imgCaption {
  font-family: var(--font-paragraph-bold);
  font-size: var(--spacing-sm-1);
  letter-spacing: var(--letter-spacing-sm);
  text-align: left;
  margin-top: var(--spacing-sm-4);
}

.wp-block-gallery {
  padding-top: var(--spacing-lg-2);
  padding-bottom: var(--spacing-lg-2);
  margin-top: var(--spacing-base);
  margin-bottom: var(--spacing-base);
}
@media (min-width: 48em) {
  .wp-block-gallery {
    padding-top: var(--spacing-lg-4);
    padding-bottom: var(--spacing-lg-4);
  }
}
@media (min-width: 30em) {
  .wp-block-gallery {
    margin-top: var(--spacing-lg-2);
    margin-bottom: var(--spacing-lg-2);
  }
}
@media (min-width: 56.25em) {
  .wp-block-gallery {
    margin-top: var(--spacing-lg-3);
    margin-bottom: var(--spacing-lg-3);
  }
}
@media (min-width: 81.25em) {
  .wp-block-gallery {
    margin-top: var(--spacing-lg-4);
    margin-bottom: var(--spacing-lg-4);
  }
}
.wp-block-gallery:after {
  content: "";
  flex-grow: 1000000000;
}
.wp-block-gallery .wp-block-image {
  position: relative;
  display: flex;
  justify-content: center;
  flex-grow: 1;
  flex-direction: column;
  max-width: 100%;
  box-sizing: border-box;
}
.wp-block-gallery img {
  display: block;
  width: 100%;
  height: 100%;
  max-width: 100%;
  object-fit: cover;
  border-radius: var(--border-radius);
}
.wp-block-gallery .wp-element-caption {
  background: linear-gradient(0deg, rgba(0, 0, 0, 0.7), rgba(0, 0, 0, 0.3) 70%, transparent);
  bottom: 0;
  color: #fff;
  font-size: var(--spacing-sm-1);
  left: 0;
  margin-bottom: 0;
  max-height: 60%;
  overflow: auto;
  padding: 0 var(--spacing-sm-3) var(--spacing-sm-3);
  position: absolute;
  text-align: center;
  width: 100%;
  box-sizing: border-box;
}
.wp-block-gallery.has-background {
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  padding-left: 3vw;
  padding-right: 3vw;
}
@media (min-width: 48em) {
  .wp-block-gallery.has-background {
    padding-left: 5vw;
    padding-right: 5vw;
  }
}
@media (min-width: 81.25em) {
  .wp-block-gallery.has-background {
    padding-left: 10vw;
    padding-right: 10vw;
  }
}
@media (min-width: 125em) {
  .wp-block-gallery.has-background {
    padding-left: calc((100vw - 1600px) / 2);
    padding-right: calc((100vw - 1600px) / 2);
  }
}

@media all and (max-width: 600px) {
  .wp-block-gallery .wp-block-image {
    width: 100% !important;
  }
}
.text.has-konzern-dark-grey-color a, .text.has-konzern-black-color a {
  position: relative;
  color: inherit;
  font-family: var(--font-paragraph-bold);
  letter-spacing: 0;
  box-shadow: 0 -2px 0 inset var(--dark-grey);
  transition: var(--hover-transition);
}
.text.has-konzern-dark-grey-color a:link, .text.has-konzern-dark-grey-color a:visited, .text.has-konzern-black-color a:link, .text.has-konzern-black-color a:visited {
  color: inherit;
}
.text.has-konzern-dark-grey-color a:active, .text.has-konzern-dark-grey-color a:hover, .text.has-konzern-dark-grey-color a:focus, .text.has-konzern-black-color a:active, .text.has-konzern-black-color a:hover, .text.has-konzern-black-color a:focus {
  color: var(--white);
  border-radius: var(--border-radius);
  box-shadow: 0 -2em 0 inset var(--dark-grey);
}
.text.has-konzern-white-color a {
  position: relative;
  color: inherit;
  font-family: var(--font-paragraph-bold);
  letter-spacing: 0;
  box-shadow: 0 -2px 0 inset var(--white);
  transition: var(--hover-transition);
}
.text.has-konzern-white-color a:link, .text.has-konzern-white-color a:visited {
  color: inherit;
}
.text.has-konzern-white-color a:active, .text.has-konzern-white-color a:hover, .text.has-konzern-white-color a:focus {
  color: var(--dark-grey);
  border-radius: var(--border-radius);
  box-shadow: 0 -2em 0 inset var(--white);
}
.text .c-accordion__item {
  color: var(--dark-grey);
}

.textText {
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  padding-top: var(--spacing-lg-2);
  padding-bottom: var(--spacing-lg-2);
  margin-top: var(--spacing-base);
  margin-bottom: var(--spacing-base);
  background-color: var(--off-white);
}
@media (min-width: 48em) {
  .textText {
    padding-top: var(--spacing-lg-4);
    padding-bottom: var(--spacing-lg-4);
  }
}
@media (min-width: 30em) {
  .textText {
    margin-top: var(--spacing-lg-2);
    margin-bottom: var(--spacing-lg-2);
  }
}
@media (min-width: 56.25em) {
  .textText {
    margin-top: var(--spacing-lg-3);
    margin-bottom: var(--spacing-lg-3);
  }
}
@media (min-width: 81.25em) {
  .textText {
    margin-top: var(--spacing-lg-4);
    margin-bottom: var(--spacing-lg-4);
  }
}
.textText + .textImage,
.textText + .textText {
  margin-top: calc(var(--spacing-base) / -1);
}
@media (min-width: 30em) {
  .textText + .textImage,
  .textText + .textText {
    margin-top: calc(var(--spacing-lg-2) / -1);
  }
}
@media (min-width: 56.25em) {
  .textText + .textImage,
  .textText + .textText {
    margin-top: calc(var(--spacing-lg-3) / -1);
  }
}
@media (min-width: 81.25em) {
  .textText + .textImage,
  .textText + .textText {
    margin-top: calc(var(--spacing-lg-4) / -1);
  }
}
.textText.darkgrey + .textImage.darkgrey, .textText.off-white + .textImage.off-white, .textText.darkgrey + .textText.darkgrey, .textText.off-white + .textText.off-white {
  padding-top: 0;
}
.textText.dark-grey {
  background-color: var(--dark-grey);
  color: var(--white);
}
.textText.dark-grey a {
  position: relative;
  color: var(--white);
  font-family: var(--font-paragraph-bold);
  letter-spacing: 0;
  box-shadow: 0 -2px 0 inset var(--white);
  transition: var(--hover-transition);
}
.textText.dark-grey a:link, .textText.dark-grey a:visited {
  color: var(--white);
}
.textText.dark-grey a:active, .textText.dark-grey a:hover, .textText.dark-grey a:focus {
  color: var(--dark-grey);
  border-radius: var(--border-radius);
  box-shadow: 0 -2em 0 inset var(--white);
}
.textText.dark-grey li::marker {
  color: var(--white);
}
.textText.dark-grey .c-accordion__item {
  background-color: var(--off-white);
  color: var(--dark-grey);
}
.textText.blue {
  background-color: var(--blue);
  color: var(--white);
}
.textText.blue a {
  position: relative;
  color: var(--white);
  font-family: var(--font-paragraph-bold);
  letter-spacing: 0;
  box-shadow: 0 -2px 0 inset var(--white);
  transition: var(--hover-transition);
}
.textText.blue a:link, .textText.blue a:visited {
  color: var(--white);
}
.textText.blue a:active, .textText.blue a:hover, .textText.blue a:focus {
  color: var(--blue);
  border-radius: var(--border-radius);
  box-shadow: 0 -2em 0 inset var(--white);
}
.textText.blue li::marker {
  color: var(--white);
}
.textText.blue .c-accordion__item {
  background-color: var(--off-white);
  color: var(--dark-grey);
}
.textText__content {
  padding-left: 3vw;
  padding-right: 3vw;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  position: relative;
}
@media (min-width: 48em) {
  .textText__content {
    padding-left: 5vw;
    padding-right: 5vw;
  }
}
@media (min-width: 81.25em) {
  .textText__content {
    padding-left: 10vw;
    padding-right: 10vw;
  }
}
@media (min-width: 125em) {
  .textText__content {
    padding-left: calc((100vw - 1600px) / 2);
    padding-right: calc((100vw - 1600px) / 2);
  }
}
@media (min-width: 48em) {
  .textText__content {
    flex-direction: row;
  }
}
.textText__content > *:first-child,
.textText__content > *:nth-child(2) {
  width: 100%;
}
.textText__content > *:first-child {
  margin-bottom: var(--spacing-lg-1);
}
@media (min-width: 48em) {
  .textText__content > *:first-child,
  .textText__content > *:nth-child(2) {
    width: 48%;
  }
  .textText__content > *:first-child {
    margin-bottom: 0;
  }
}
@media (min-width: 56.25em) {
  .textText__content > *:first-child,
  .textText__content > *:nth-child(2) {
    width: 47%;
  }
}

.textHighlighted {
  margin-top: var(--spacing-base);
  margin-bottom: var(--spacing-base);
  padding: var(--spacing-sm-1);
  border-radius: var(--border-radius);
  background-color: var(--off-white);
}
@media (min-width: 30em) {
  .textHighlighted {
    margin-top: var(--spacing-lg-2);
    margin-bottom: var(--spacing-lg-2);
  }
}
@media (min-width: 56.25em) {
  .textHighlighted {
    margin-top: var(--spacing-lg-3);
    margin-bottom: var(--spacing-lg-3);
  }
}
@media (min-width: 81.25em) {
  .textHighlighted {
    margin-top: var(--spacing-lg-4);
    margin-bottom: var(--spacing-lg-4);
  }
}
@media (min-width: 37.5em) {
  .textHighlighted {
    padding: var(--spacing-lg-1) var(--spacing-lg-3);
  }
}
@media (min-width: 48em) {
  .textHighlighted {
    padding: var(--spacing-lg-2) var(--spacing-lg-4);
  }
}
@media (min-width: 68.75em) {
  .textHighlighted {
    padding: var(--spacing-lg-3) var(--spacing-lg-6);
  }
}
.textHighlighted.dark-grey {
  background-color: var(--dark-grey);
  color: var(--white);
}
.textHighlighted.dark-grey a {
  position: relative;
  color: var(--white);
  font-family: var(--font-paragraph-bold);
  letter-spacing: 0;
  box-shadow: 0 -2px 0 inset var(--white);
  transition: var(--hover-transition);
}
.textHighlighted.dark-grey a:link, .textHighlighted.dark-grey a:visited {
  color: var(--white);
}
.textHighlighted.dark-grey a:active, .textHighlighted.dark-grey a:hover, .textHighlighted.dark-grey a:focus {
  color: var(--dark-grey);
  border-radius: var(--border-radius);
  box-shadow: 0 -2em 0 inset var(--white);
}
.textHighlighted.dark-grey li::marker {
  color: var(--white);
}
.textHighlighted.dark-grey .c-accordion__item {
  background-color: var(--off-white);
  color: var(--dark-grey);
}
.textHighlighted.blue {
  background-color: var(--blue);
  color: var(--white);
}
.textHighlighted.blue a {
  position: relative;
  color: var(--white);
  font-family: var(--font-paragraph-bold);
  letter-spacing: 0;
  box-shadow: 0 -2px 0 inset var(--white);
  transition: var(--hover-transition);
}
.textHighlighted.blue a:link, .textHighlighted.blue a:visited {
  color: var(--white);
}
.textHighlighted.blue a:active, .textHighlighted.blue a:hover, .textHighlighted.blue a:focus {
  color: var(--blue);
  border-radius: var(--border-radius);
  box-shadow: 0 -2em 0 inset var(--white);
}
.textHighlighted.blue li::marker {
  color: var(--white);
}
.textHighlighted.blue .c-accordion__item {
  background-color: var(--off-white);
  color: var(--dark-grey);
}
.textHighlighted p:last-child,
.textHighlighted ul:last-child {
  margin-bottom: 0;
}
.textHighlighted > h2,
.textHighlighted > h3,
.textHighlighted > h4 {
  margin-top: 0;
  margin-bottom: var(--spacing-sm-2);
}

.teaseExamples {
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  padding-top: var(--spacing-lg-2);
  padding-bottom: var(--spacing-lg-2);
  padding-top: var(--spacing-lg-3);
  padding-bottom: var(--spacing-lg-3);
  margin-top: var(--spacing-base);
  margin-bottom: var(--spacing-base);
  background-image: url("../../img/kolumbien.jpg");
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
}
@media (min-width: 48em) {
  .teaseExamples {
    padding-top: var(--spacing-lg-4);
    padding-bottom: var(--spacing-lg-4);
  }
}
@media (min-width: 48em) {
  .teaseExamples {
    padding-top: var(--spacing-lg-6);
    padding-bottom: var(--spacing-lg-6);
  }
}
@media (min-width: 30em) {
  .teaseExamples {
    margin-top: var(--spacing-lg-2);
    margin-bottom: var(--spacing-lg-2);
  }
}
@media (min-width: 56.25em) {
  .teaseExamples {
    margin-top: var(--spacing-lg-3);
    margin-bottom: var(--spacing-lg-3);
  }
}
@media (min-width: 81.25em) {
  .teaseExamples {
    margin-top: var(--spacing-lg-4);
    margin-bottom: var(--spacing-lg-4);
  }
}
.home .teaseExamples {
  margin-top: 0;
  margin-bottom: 0;
}
.single-beispiel .teaseExamples {
  margin-bottom: 0;
  border-bottom: solid var(--spacing-sm-10) var(--light-grey);
}
.teaseExamples:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: var(--dark-grey-rgba);
}
.teaseExamples__wrapper {
  padding-left: 3vw;
  padding-right: 3vw;
  position: relative;
  z-index: 1;
}
@media (min-width: 48em) {
  .teaseExamples__wrapper {
    padding-left: 5vw;
    padding-right: 5vw;
  }
}
@media (min-width: 81.25em) {
  .teaseExamples__wrapper {
    padding-left: 10vw;
    padding-right: 10vw;
  }
}
@media (min-width: 125em) {
  .teaseExamples__wrapper {
    padding-left: calc((100vw - 1600px) / 2);
    padding-right: calc((100vw - 1600px) / 2);
  }
}
.teaseExamples__title {
  text-transform: none;
  font-weight: 500;
  color: var(--white);
  font-size: var(--spacing-lg-1);
}
@media (min-width: 37.5em) {
  .teaseExamples__title {
    font-size: var(--spacing-lg-2);
  }
}
@media (min-width: 68.75em) {
  .teaseExamples__title {
    font-size: var(--spacing-lg-3);
    margin-bottom: var(--spacing-lg-3);
  }
}
.teaseExamples__items {
  display: flex;
  overflow-x: scroll;
  padding-bottom: var(--spacing-lg-1);
  scrollbar-color: var(--off-white) var(--medium-grey);
  scrollbar-width: auto;
}
@media (min-width: 48em) {
  .teaseExamples__items {
    padding-bottom: var(--spacing-lg-3);
  }
}
.teaseExamples__items::-webkit-scrollbar {
  width: var(--spacing-sm-1);
  border-radius: var(--border-radius);
}
.teaseExamples__items::-webkit-scrollbar-track {
  background: var(--light-grey);
  border-radius: var(--border-radius);
}
.teaseExamples__items::-webkit-scrollbar-thumb:horizontal {
  background-color: var(--medium-grey);
  border-radius: var(--border-radius);
}

.newsletter {
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  padding-top: var(--spacing-lg-2);
  padding-bottom: var(--spacing-lg-2);
  padding-top: var(--spacing-lg-3);
  padding-bottom: var(--spacing-lg-3);
  background: var(--white);
}
@media (min-width: 48em) {
  .newsletter {
    padding-top: var(--spacing-lg-4);
    padding-bottom: var(--spacing-lg-4);
  }
}
@media (min-width: 48em) {
  .newsletter {
    padding-top: var(--spacing-lg-6);
    padding-bottom: var(--spacing-lg-6);
  }
}
.newsletter__content {
  padding-left: 3vw;
  padding-right: 3vw;
  display: flex;
  flex-direction: column;
}
@media (min-width: 48em) {
  .newsletter__content {
    padding-left: 5vw;
    padding-right: 5vw;
  }
}
@media (min-width: 81.25em) {
  .newsletter__content {
    padding-left: 10vw;
    padding-right: 10vw;
  }
}
@media (min-width: 125em) {
  .newsletter__content {
    padding-left: calc((100vw - 1600px) / 2);
    padding-right: calc((100vw - 1600px) / 2);
  }
}
.newsletter__title {
  text-align: center;
}
.newsletter__text {
  text-align: center;
  font-size: var(--spacing-lg-1);
  max-width: 90%;
  margin-left: auto;
  margin-right: auto;
}
@media (min-width: 68.75em) {
  .newsletter__text {
    max-width: 80%;
  }
}
.newsletter__form {
  margin-top: var(--spacing-lg-2);
}
.newsletter__form form {
  display: flex;
  flex-direction: column;
}
@media (min-width: 37.5em) {
  .newsletter__form form {
    flex-direction: row;
    justify-content: center;
    align-items: center;
    margin-left: auto;
    margin-right: auto;
  }
}
@media (min-width: 48em) {
  .newsletter__form form {
    width: 90%;
  }
}
@media (min-width: 81.25em) {
  .newsletter__form form {
    max-width: 1000px;
  }
}
.newsletter__form .gform_fields {
  display: flex;
  flex-wrap: nowrap;
}
.newsletter__form .gfield {
  flex: 1;
  margin-right: var(--spacing-lg-2);
}
.newsletter__form .gfield:nth-last-child(2) {
  margin-right: 0;
}
@media (min-width: 37.5em) {
  .newsletter__form .gfield:nth-last-child(2) {
    margin-right: var(--spacing-lg-2);
  }
}
.newsletter__form .gform_button {
  margin-bottom: 0 !important;
}
.newsletter__form .gform_submission_error {
  text-align: center;
  margin-top: 0;
  margin-bottom: var(--spacing-base);
}
.newsletter__form .gform_confirmation_message {
  text-align: center;
}

.archiveExamples {
  padding-top: var(--spacing-lg-2);
  padding-bottom: var(--spacing-lg-2);
}
@media (min-width: 48em) {
  .archiveExamples {
    padding-top: var(--spacing-lg-4);
    padding-bottom: var(--spacing-lg-4);
  }
}
.archiveExamples__items {
  display: grid;
  grid-template-rows: auto;
  grid-row-gap: var(--spacing-lg-2);
  grid-column-gap: var(--spacing-lg-2);
  min-width: 0;
  grid-template-columns: repeat(1, 1fr);
}
@media (min-width: 48em) {
  .archiveExamples__items {
    grid-row-gap: var(--spacing-lg-2);
    grid-column-gap: var(--spacing-lg-2);
  }
}
@media (min-width: 68.75em) {
  .archiveExamples__items {
    grid-row-gap: var(--spacing-lg-3);
    grid-column-gap: var(--spacing-lg-3);
  }
}
@media (min-width: 81.25em) {
  .archiveExamples__items {
    grid-row-gap: var(--spacing-lg-4);
    grid-column-gap: var(--spacing-lg-4);
  }
}
@media (min-width: 48em) {
  .archiveExamples__items {
    grid-template-columns: repeat(2, 1fr);
  }
}

.archiveNews {
  padding-top: var(--spacing-lg-2);
  padding-bottom: var(--spacing-lg-2);
}
@media (min-width: 48em) {
  .archiveNews {
    padding-top: var(--spacing-lg-4);
    padding-bottom: var(--spacing-lg-4);
  }
}
.archiveNews__items {
  display: grid;
  grid-template-rows: auto;
  grid-row-gap: var(--spacing-lg-2);
  grid-column-gap: var(--spacing-lg-2);
  min-width: 0;
  grid-template-columns: repeat(1, 1fr);
}
@media (min-width: 48em) {
  .archiveNews__items {
    grid-row-gap: var(--spacing-lg-2);
    grid-column-gap: var(--spacing-lg-2);
  }
}
@media (min-width: 68.75em) {
  .archiveNews__items {
    grid-row-gap: var(--spacing-lg-3);
    grid-column-gap: var(--spacing-lg-3);
  }
}
@media (min-width: 81.25em) {
  .archiveNews__items {
    grid-row-gap: var(--spacing-lg-4);
    grid-column-gap: var(--spacing-lg-4);
  }
}
@media (min-width: 48em) {
  .archiveNews__items {
    grid-template-columns: repeat(2, 1fr);
  }
}

.archiveSupporter {
  padding-top: var(--spacing-lg-2);
  padding-bottom: var(--spacing-lg-2);
}
@media (min-width: 48em) {
  .archiveSupporter {
    padding-top: var(--spacing-lg-4);
    padding-bottom: var(--spacing-lg-4);
  }
}
.archiveSupporter__items {
  display: grid;
  grid-template-rows: auto;
  grid-row-gap: var(--spacing-lg-2);
  grid-column-gap: var(--spacing-lg-2);
  min-width: 0;
  grid-template-columns: repeat(1, minmax(0, 1fr));
}
@media (min-width: 48em) {
  .archiveSupporter__items {
    grid-row-gap: var(--spacing-lg-2);
    grid-column-gap: var(--spacing-lg-2);
  }
}
@media (min-width: 68.75em) {
  .archiveSupporter__items {
    grid-row-gap: var(--spacing-lg-3);
    grid-column-gap: var(--spacing-lg-3);
  }
}
@media (min-width: 81.25em) {
  .archiveSupporter__items {
    grid-row-gap: var(--spacing-lg-4);
    grid-column-gap: var(--spacing-lg-4);
  }
}
@media (min-width: 20em) {
  .archiveSupporter__items {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (min-width: 37.5em) {
  .archiveSupporter__items {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
@media (min-width: 48em) {
  .archiveSupporter__items {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}
@media (min-width: 125em) {
  .archiveSupporter__items {
    grid-template-columns: repeat(5, minmax(0, 1fr));
  }
}
.archiveSupporter__item {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.archiveSupporter__imgWrapper {
  position: relative;
  box-shadow: var(--box-shadow);
  width: 100%;
}
.archiveSupporter__imgWrapper:before {
  content: "";
  display: block;
  height: 0;
  width: 100%;
  padding-top: 90.9090909091%;
}
.archiveSupporter__imgWrapper img,
.archiveSupporter__imgWrapper svg,
.archiveSupporter__imgWrapper iframe {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.archiveSupporter__imgWrapper img {
  border-radius: var(--border-radius);
  filter: grayscale(1);
}
.archiveSupporter__textWrapper {
  display: flex;
  flex-direction: column;
  flex-grow: 2;
  padding: var(--spacing-sm-2);
  background-color: var(--white);
  border-radius: var(--border-radius);
  width: 90%;
  margin-top: calc(var(--spacing-lg-2) / -1);
  z-index: 2;
  position: relative;
  text-align: center;
}
.archiveSupporter__name {
  font-size: var(--spacing-sm-1);
  margin-bottom: var(--spacing-sm-8);
}
@media (min-width: 37.5em) {
  .archiveSupporter__name {
    font-size: var(--base);
  }
}
.archiveSupporter__description {
  font-weight: 400;
  font-family: var(--font-heading);
  font-size: var(--spacing-sm-1);
  color: var(--medium-grey);
  text-transform: uppercase;
  letter-spacing: var(--letter-spacing-base);
  font-size: var(--spacing-sm-2);
  margin-bottom: 0;
}

.archiveOrganisation {
  padding-top: var(--spacing-lg-2);
  padding-bottom: var(--spacing-lg-2);
}
@media (min-width: 48em) {
  .archiveOrganisation {
    padding-top: var(--spacing-lg-4);
    padding-bottom: var(--spacing-lg-4);
  }
}
.archiveOrganisation__items {
  display: grid;
  grid-template-rows: auto;
  grid-row-gap: var(--spacing-lg-2);
  grid-column-gap: var(--spacing-lg-2);
  min-width: 0;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  grid-row-gap: var(--spacing-base);
  grid-column-gap: var(--spacing-base);
}
@media (min-width: 48em) {
  .archiveOrganisation__items {
    grid-row-gap: var(--spacing-lg-2);
    grid-column-gap: var(--spacing-lg-2);
  }
}
@media (min-width: 68.75em) {
  .archiveOrganisation__items {
    grid-row-gap: var(--spacing-lg-3);
    grid-column-gap: var(--spacing-lg-3);
  }
}
@media (min-width: 81.25em) {
  .archiveOrganisation__items {
    grid-row-gap: var(--spacing-lg-4);
    grid-column-gap: var(--spacing-lg-4);
  }
}
@media (min-width: 20em) {
  .archiveOrganisation__items {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
@media (min-width: 37.5em) {
  .archiveOrganisation__items {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    grid-row-gap: var(--spacing-lg-1);
    grid-column-gap: var(--spacing-lg-1);
  }
}
@media (min-width: 48em) {
  .archiveOrganisation__items {
    grid-template-columns: repeat(5, minmax(0, 1fr));
  }
}
@media (min-width: 68.75em) {
  .archiveOrganisation__items {
    grid-template-columns: repeat(6, minmax(0, 1fr));
    grid-row-gap: var(--spacing-lg-2);
    grid-column-gap: var(--spacing-lg-2);
  }
}
@media (min-width: 81.25em) {
  .archiveOrganisation__items {
    grid-template-columns: repeat(7, minmax(0, 1fr));
  }
}
.archiveOrganisation__item {
  display: flex;
  align-items: center;
  background-color: var(--white);
  border-radius: var(--border-radius);
  box-shadow: var(--box-shadow);
  position: relative;
  transition: var(--hover-transition);
}
.archiveOrganisation__item:before {
  content: "";
  display: block;
  height: 0;
  width: 100%;
  padding-top: 100%;
}
.archiveOrganisation__item:hover, .archiveOrganisation__item:focus {
  box-shadow: var(--box-shadow-hover);
}
.archiveOrganisation__item:hover img, .archiveOrganisation__item:focus img {
  transform: scale3d(0.95, 0.95, 1);
}
.archiveOrganisation__img {
  position: absolute;
  width: calc(100% - 2 * var(--spacing-sm-5));
  height: calc(100% - 2 * var(--spacing-sm-5));
  top: var(--spacing-sm-5);
  bottom: var(--spacing-sm-5);
  left: var(--spacing-sm-5);
  right: var(--spacing-sm-5);
  object-fit: contain;
  transform: scale3d(1, 1, 1);
  transition: var(--hover-transition-fast);
}

.formText {
  margin-top: var(--spacing-base);
  margin-bottom: var(--spacing-base);
}
@media (min-width: 30em) {
  .formText {
    margin-top: var(--spacing-lg-2);
    margin-bottom: var(--spacing-lg-2);
  }
}
@media (min-width: 56.25em) {
  .formText {
    margin-top: var(--spacing-lg-3);
    margin-bottom: var(--spacing-lg-3);
  }
}
@media (min-width: 81.25em) {
  .formText {
    margin-top: var(--spacing-lg-4);
    margin-bottom: var(--spacing-lg-4);
  }
}
.formText__content {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: flex-start;
  position: relative;
}
@media (min-width: 48em) {
  .formText__content {
    flex-direction: row;
  }
}
.formText .form,
.formText .text {
  display: flex;
  flex-direction: column;
  justify-content: center;
  border-radius: var(--border-radius);
  padding: var(--spacing-lg-2) var(--spacing-lg-1);
}
@media (min-width: 37.5em) {
  .formText .form,
  .formText .text {
    padding: var(--spacing-lg-3) var(--spacing-lg-2);
  }
}
@media (min-width: 48em) {
  .formText .form,
  .formText .text {
    position: sticky;
    top: calc(var(--nav-height) + var(--spacing-base));
  }
}
.formText .form > :first-child,
.formText .text > :first-child {
  margin-top: 0;
}
.formText .form > :last-child,
.formText .text > :last-child {
  margin-bottom: 0;
}
.formText .text:not(.has-background) {
  padding: 0;
}
.formText .form {
  box-shadow: var(--box-shadow);
  padding: var(--spacing-lg-2) var(--spacing-lg-1);
  width: 100%;
  margin-bottom: var(--spacing-lg-1);
}
@media (min-width: 37.5em) {
  .formText .form {
    padding: var(--spacing-lg-3) var(--spacing-lg-2);
  }
}
.formText .form .gform_title {
  margin-top: 0;
}
@media (min-width: 48em) {
  .formText .form {
    width: 48%;
    margin-bottom: 0;
  }
}
@media (min-width: 56.25em) {
  .formText .form {
    width: 42%;
  }
}
.formText .form .wp-block-image,
.formText .form .gform_wrapper,
.formText .form .progressBar__wrapper {
  margin-top: 0;
  margin-bottom: var(--spacing-lg-1);
}
.formText .form > :first-child {
  margin-top: 0;
}
.formText .form > :last-child {
  margin-bottom: 0;
}
.formText .form > .progressBar__wrapper:first-child {
  margin: calc(var(--spacing-lg-2) / -1) calc(var(--spacing-lg-1) / -1) var(--spacing-base) calc(var(--spacing-lg-1) / -1);
  padding: var(--spacing-lg-2) var(--spacing-lg-1) var(--spacing-lg-1) var(--spacing-lg-1);
}
@media (min-width: 37.5em) {
  .formText .form > .progressBar__wrapper:first-child {
    margin: calc(var(--spacing-lg-3) / -1) calc(var(--spacing-lg-2) / -1) var(--spacing-base) calc(var(--spacing-lg-2) / -1);
    padding: var(--spacing-lg-3) var(--spacing-lg-2) var(--spacing-lg-2) var(--spacing-lg-2);
  }
}
.formText .text {
  width: 100%;
}
@media (min-width: 48em) {
  .formText .text {
    width: 48%;
  }
}
@media (min-width: 56.25em) {
  .formText .text {
    width: 55%;
  }
}

.europe {
  height: 100%;
  margin-top: var(--spacing-lg-2);
  margin-bottom: var(--spacing-lg-2);
  display: grid;
  grid-template-areas: "map map" "country country" "explanation explanation";
  grid-template-rows: 1fr 350px auto;
  grid-template-columns: 1fr 50%;
  grid-gap: var(--spacing-lg-1);
}
@media (min-width: 48em) {
  .europe {
    grid-template-rows: 1fr 1fr auto;
    grid-template-areas: "country map" ". map" "explanation explanation";
  }
}
@media (min-width: 68.75em) {
  .europe {
    grid-template-rows: 1fr auto;
    grid-template-areas: "country map" "explanation map" ". .";
  }
}
@media (min-width: 100em) {
  .europe {
    grid-template-columns: 1fr 45%;
  }
}
@media (min-width: 125em) {
  .europe {
    grid-template-columns: 1fr 40%;
  }
}
.europe__countryWrapper {
  position: relative;
  grid-area: country;
}
.europe__countryDescription {
  position: absolute;
  top: 0;
  left: 0;
  margin-top: var(--spacing-sm-3);
  margin-left: var(--spacing-sm-3);
  transform: translateX(-200%);
  opacity: 0;
  background-color: var(--white);
  box-shadow: var(--box-shadow);
  border-radius: var(--border-radius);
  padding: var(--spacing-base);
  padding-top: var(--spacing-lg-2);
  padding-left: var(--spacing-lg-2);
  z-index: 2;
  transition: all 0.3s ease-out;
}
@media (min-width: 56.25em) {
  .europe__countryDescription {
    margin-top: var(--spacing-sm-1);
    margin-left: var(--spacing-sm-1);
    padding-top: var(--spacing-lg-1);
    padding-left: var(--spacing-lg-1);
  }
}
.europe__countryDescription.show {
  opacity: 1;
  transform: translateX(0);
}
.europe__countryDescription:before {
  content: "";
  position: absolute;
  z-index: -1;
  border-radius: var(--border-radius);
  top: calc(var(--spacing-sm-3) / -1);
  left: calc(var(--spacing-sm-3) / -1);
  width: var(--spacing-lg-3);
  height: var(--spacing-lg-3);
}
@media (min-width: 56.25em) {
  .europe__countryDescription:before {
    top: calc(var(--spacing-sm-1) / -1);
    left: calc(var(--spacing-sm-1) / -1);
  }
}
.europe__countryDescription.law_not_strong:before {
  background-color: var(--light-grey);
}
.europe__countryDescription.law_eu:before {
  background-color: var(--blue);
}
.europe__countryDescription.law_in_discussion:before {
  background-color: var(--yellow);
}
.europe__countryDescription.law_in_force:before {
  background-color: var(--orange);
}
.europe__countryTitle {
  font-size: var(--spacing-lg-1);
  margin-bottom: var(--spacing-sm-6);
}
.europe__countryText p, .europe__countryText ul {
  margin-bottom: var(--spacing-sm-2);
}
.europe__countryText ul {
  margin-bottom: var(--spacing-sm-2);
}
.europe__countryText > :last-child {
  margin-bottom: 0;
}
.europe__mapExplanation {
  grid-area: explanation;
  align-self: end;
}
.europe__mapExplanationItem {
  padding-left: var(--spacing-lg-1);
  position: relative;
}
.europe__mapExplanationItem:before {
  content: "";
  position: absolute;
  top: 3%;
  left: 0;
  width: var(--spacing-sm-1);
  height: var(--spacing-sm-1);
  border-radius: var(--border-radius);
}
.europe__mapExplanationItem.law_not_strong:before {
  background-color: var(--light-grey);
}
.europe__mapExplanationItem.law_eu:before {
  background-color: var(--blue);
}
.europe__mapExplanationItem.law_in_discussion:before {
  background-color: var(--yellow);
}
.europe__mapExplanationItem.law_in_force:before {
  background-color: var(--orange);
}
.europe__mapExplanationTitle {
  font-size: var(--spacing-base);
  margin-top: var(--spacing-sm-1);
  margin-bottom: var(--spacing-sm-6);
}
.europe__mapExplanationText {
  font-size: var(--spacing-sm-1);
  color: var(--medium-grey);
  margin-bottom: 0;
}
.europe__map {
  position: relative;
  grid-area: map;
}

.shareBlock {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
}
.shareBlock .social__link {
  display: flex;
  flex-direction: column;
  width: auto;
  height: auto;
  margin-top: var(--spacing-sm-2);
  margin-bottom: var(--spacing-sm-2);
  margin-left: var(--spacing-sm-1);
  margin-right: var(--spacing-sm-1);
}
.shareBlock .social__icon {
  height: var(--spacing-lg-5);
  width: var(--spacing-lg-5);
}

.callToAction {
  margin-top: var(--spacing-base);
  margin-bottom: var(--spacing-base);
  padding: var(--spacing-sm-1);
  display: flex;
  flex-direction: column;
  background-color: var(--light-grey);
  box-shadow: var(--box-shadow);
  transition: var(--hover-transition);
  border-radius: var(--border-radius);
  text-align: center;
}
@media (min-width: 30em) {
  .callToAction {
    margin-top: var(--spacing-lg-2);
    margin-bottom: var(--spacing-lg-2);
  }
}
@media (min-width: 56.25em) {
  .callToAction {
    margin-top: var(--spacing-lg-3);
    margin-bottom: var(--spacing-lg-3);
  }
}
@media (min-width: 81.25em) {
  .callToAction {
    margin-top: var(--spacing-lg-4);
    margin-bottom: var(--spacing-lg-4);
  }
}
@media (min-width: 37.5em) {
  .callToAction {
    padding: var(--spacing-lg-1) var(--spacing-lg-3);
  }
}
@media (min-width: 48em) {
  .callToAction {
    padding: var(--spacing-lg-2) var(--spacing-lg-4);
  }
}
@media (min-width: 68.75em) {
  .callToAction {
    padding: var(--spacing-lg-3) var(--spacing-lg-6);
  }
}
.callToAction.dark-grey {
  background-color: var(--dark-grey);
}
.callToAction.dark-grey label {
  color: var(--white);
}
.callToAction.dark-grey textarea,
.callToAction.dark-grey input[type=text],
.callToAction.dark-grey input[type=email],
.callToAction.dark-grey input[type=password],
.callToAction.dark-grey select {
  border-bottom: solid 2px var(--light-grey);
}
.callToAction.with-border {
  background-color: var(--white);
  border: solid var(--spacing-sm-7) var(--orange);
}
.callToAction:hover {
  box-shadow: var(--box-shadow-hover);
}
@media (min-width: 37.5em) {
  .callToAction.text_w_image {
    flex-direction: row;
    text-align: left;
  }
}
@media (min-width: 48em) {
  .callToAction.text_w_image {
    padding: var(--spacing-lg-2) var(--spacing-lg-3);
  }
}
@media (min-width: 68.75em) {
  .callToAction.text_w_image {
    padding: var(--spacing-lg-3) var(--spacing-lg-3);
  }
}
.callToAction__imgWrapper {
  max-width: 100%;
  margin-bottom: var(--spacing-lg-1);
  max-height: 300px;
}
@media (min-width: 37.5em) {
  .callToAction__imgWrapper {
    height: auto;
    max-height: auto;
    max-width: 40%;
    margin-bottom: 0;
    margin-right: var(--spacing-lg-1);
  }
}
.callToAction__image {
  border-radius: var(--border-radius);
  object-fit: cover;
  width: 100%;
  height: 100%;
  max-height: inherit;
}
.callToAction__textWrapper {
  display: flex;
  flex-direction: column;
}
.callToAction__title {
  font-size: var(--spacing-lg-2);
  margin-bottom: var(--spacing-sm-2);
  text-transform: none;
  hyphens: none;
}
@media (min-width: 37.5em) {
  .callToAction__title {
    font-size: var(--spacing-lg-2);
  }
}
.callToAction__text {
  font-family: var(--font-heading);
  margin-bottom: 0;
}
.callToAction__button,
.callToAction input[type=submit] {
  margin-top: var(--spacing-base);
  display: inline-block;
  background-color: var(--orange) !important;
  color: var(--white) !important;
  border-radius: var(--border-radius);
  border: none;
  font-family: var(--font-heading);
  font-weight: 400;
  text-align: center;
  line-height: 1;
  letter-spacing: var(--letter-spacing-base);
  transition: var(--hover-transition-fast);
  padding: var(--spacing-sm-2) var(--spacing-sm-2) !important;
  cursor: var(--cursor-pointer);
}
@media (min-width: 37.5em) {
  .callToAction__button,
  .callToAction input[type=submit] {
    padding: var(--spacing-sm-1) var(--spacing-lg-2) !important;
  }
}
.callToAction__button:hover, .callToAction__button:focus,
.callToAction input[type=submit]:hover,
.callToAction input[type=submit]:focus {
  outline: none;
  border: none;
  background-color: var(--blue) !important;
  color: var(--white) !important;
}
.callToAction .gform_wrapper {
  margin-top: var(--spacing-lg-2);
}
.callToAction.newsletter_form .gform_fields {
  flex-wrap: nowrap;
  column-gap: var(--spacing-sm-2);
}
.callToAction textarea,
.callToAction input[type=text],
.callToAction input[type=email],
.callToAction input[type=password],
.callToAction select {
  border-bottom: solid 2px var(--medium-grey);
}
.callToAction textarea:focus, .callToAction textarea:hover,
.callToAction input[type=text]:focus,
.callToAction input[type=text]:hover,
.callToAction input[type=email]:focus,
.callToAction input[type=email]:hover,
.callToAction input[type=password]:focus,
.callToAction input[type=password]:hover,
.callToAction select:focus,
.callToAction select:hover {
  color: var(--orange);
  outline: none;
  border-bottom: solid 2px var(--orange);
}
.callToAction label {
  text-align: left;
}

.timeline {
  margin-top: var(--spacing-lg-6);
  position: relative;
  display: flex;
}
.timeline__contentWrapper {
  width: 75%;
}
@media (min-width: 30em) {
  .timeline__contentWrapper {
    width: 80%;
  }
}
@media (min-width: 37.5em) {
  .timeline__contentWrapper {
    width: 75%;
  }
}
@media (min-width: 48em) {
  .timeline__contentWrapper {
    width: auto;
  }
}
.timeline__nav {
  position: sticky;
  align-self: flex-start;
  margin-left: auto;
  top: 25%;
  right: 0;
  z-index: 2;
  min-width: 55px;
}
@media (min-width: 48em) {
  .timeline__nav {
    min-width: 70px;
    transform: translateX(50%);
  }
}
@media (min-width: 81.25em) {
  .timeline__nav {
    transform: translateX(100%);
  }
}
.timeline__navContent {
  display: flex;
  flex-direction: column;
}
.timeline__navItem {
  font-size: var(--spacing-sm-1);
  font-family: var(--font-heading);
  background-color: var(--dark-grey);
  color: var(--white);
  text-align: center;
  margin-bottom: var(--spacing-sm-5);
  padding: var(--spacing-sm-4);
  border-radius: var(--border-radius);
  transition: var(--hover-transition-fast);
}
.timeline__navItem:hover {
  background-color: var(--orange);
}
.timeline__navItem--current {
  background-color: var(--orange);
}
.timeline__yearWrapper {
  display: grid;
  grid-template-columns: repeat(1, 1fr);
}
@media (min-width: 48em) {
  .timeline__yearWrapper {
    grid-template-columns: repeat(2, 1fr);
  }
}
.timeline__item {
  position: relative;
  width: calc(100% + var(--timeline-border-width));
  padding-bottom: var(--spacing-lg-2);
}
@media (min-width: 48em) {
  .timeline__item {
    padding-bottom: 0;
  }
}
.timeline__item--left {
  grid-column: 1/2;
  padding-right: var(--spacing-lg-1);
}
@media (min-width: 37.5em) {
  .timeline__item--left {
    padding-right: var(--spacing-lg-7);
  }
}
@media (min-width: 48em) {
  .timeline__item--left {
    padding-right: var(--spacing-lg-4);
  }
}
@media (min-width: 56.25em) {
  .timeline__item--left {
    padding-right: var(--spacing-lg-5);
  }
}
.timeline__item--left .timeline__border {
  border-right: var(--timeline-border-width) solid var(--orange);
  border-left: none;
  right: 0;
}
.timeline__item--left .timeline__circle {
  left: calc(100% - var(--timeline-circle-size) / 2 - var(--timeline-border-width) / 2);
}
.timeline__item--right {
  padding-right: var(--spacing-lg-1);
}
@media (min-width: 37.5em) {
  .timeline__item--right {
    padding-right: var(--spacing-lg-7);
  }
}
@media (min-width: 48em) {
  .timeline__item--right {
    padding-left: var(--spacing-lg-4);
    padding-right: 0;
    grid-column: 2/3;
  }
}
@media (min-width: 56.25em) {
  .timeline__item--right {
    padding-right: var(--spacing-lg-5);
  }
}
.timeline__item--right .timeline__border {
  border-right: var(--timeline-border-width) solid var(--orange);
  right: 0;
}
@media (min-width: 48em) {
  .timeline__item--right .timeline__border {
    border-left: var(--timeline-border-width) solid var(--orange);
    border-right: none;
    right: auto;
    left: 0;
  }
}
.timeline__item--right .timeline__circle {
  left: calc(100% - var(--timeline-circle-size) / 2 - var(--timeline-border-width) / 2);
}
@media (min-width: 48em) {
  .timeline__item--right .timeline__circle {
    left: auto;
    right: calc(100% - var(--timeline-circle-size) / 2 - var(--timeline-border-width) / 2);
  }
}
.timeline__content {
  position: relative;
  z-index: 1;
}
.timeline__border {
  position: absolute;
  top: 0;
  width: 100%;
  height: 100%;
}
.timeline__circle {
  position: absolute;
  top: calc(50% - var(--timeline-circle-size) / 2);
  width: var(--timeline-circle-size);
  height: var(--timeline-circle-size);
  border-radius: 50%;
  background-color: var(--orange);
}
.timeline__textWrapper {
  margin-top: calc(var(--spacing-sm-3) / -1);
  padding-left: var(--spacing-sm-5);
  padding-right: var(--spacing-sm-5);
  padding-top: var(--spacing-lg-5);
  padding-bottom: var(--spacing-lg-3);
  margin-left: var(--spacing-sm-4);
  margin-right: var(--spacing-sm-4);
}
@media (min-width: 30em) {
  .timeline__textWrapper {
    margin-top: calc(var(--spacing-lg-2) / -1);
    margin-left: var(--spacing-sm-2);
    margin-right: var(--spacing-sm-2);
  }
}
@media (min-width: 37.5em) {
  .timeline__textWrapper {
    padding-left: var(--spacing-sm-1);
    padding-right: var(--spacing-sm-1);
  }
}
@media (min-width: 56.25em) {
  .timeline__textWrapper {
    margin-left: var(--spacing-base);
    margin-right: var(--spacing-base);
  }
}
@media (min-width: 75em) {
  .timeline__textWrapper {
    margin-left: var(--spacing-lg-3);
    margin-right: var(--spacing-lg-3);
  }
}
@media (min-width: 81.25em) {
  .timeline__textWrapper {
    margin-left: var(--spacing-lg-4);
    margin-right: var(--spacing-lg-4);
  }
}
.timeline__date {
  margin-top: calc(var(--spacing-lg-5) / -1);
  margin-bottom: 0;
  padding-left: var(--spacing-lg-2);
  padding-right: var(--spacing-lg-2);
  transform: translateY(-35%);
  text-align: center;
  align-self: center;
  font-family: var(--font-paragraph-bold);
  font-size: var(--spacing-lg-1);
  text-transform: capitalize;
  color: var(--white);
  background-color: var(--orange);
  border-radius: var(--border-radius);
}
@media (min-width: 30em) {
  .timeline__date {
    font-size: var(--spacing-lg-2);
  }
}
.timeline__title {
  font-size: var(--spacing-base);
}
@media (min-width: 30em) {
  .timeline__title {
    font-size: var(--spacing-lg-1);
  }
}
.timeline__more {
  align-self: flex-start;
  display: inline-block;
  background-color: var(--dark-grey) !important;
  color: var(--white) !important;
  border-radius: var(--border-radius);
  border: none;
  font-family: var(--font-heading);
  font-weight: 400;
  text-align: center;
  line-height: 1;
  letter-spacing: var(--letter-spacing-base);
  transition: var(--hover-transition-fast);
  padding: var(--spacing-sm-2) var(--spacing-sm-2) !important;
  cursor: var(--cursor-pointer);
  position: relative;
  padding-right: var(--spacing-lg-4) !important;
  padding: var(--spacing-sm-3) var(--spacing-sm-1);
  padding-right: var(--spacing-lg-3);
  font-size: var(--spacing-sm-1);
}
@media (min-width: 37.5em) {
  .timeline__more {
    padding: var(--spacing-sm-1) var(--spacing-lg-2) !important;
  }
}
@media (min-width: 37.5em) {
  .timeline__more {
    padding-right: var(--spacing-lg-4) !important;
  }
}
.timeline__more:after {
  content: "";
  position: absolute;
  right: var(--spacing-sm-1);
  top: 28%;
  background-image: url("../../img/arrow.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  width: var(--spacing-base);
  height: var(--spacing-base);
  transform: translateX(0);
  transition: var(--hover-transition-fast);
}
@media (min-width: 30em) {
  .timeline__more:after {
    top: 32%;
  }
}
@media (min-width: 37.5em) {
  .timeline__more {
    padding: var(--spacing-sm-3) var(--spacing-sm-1);
  }
}
@media (min-width: 37.5em) {
  .timeline__more {
    padding-right: var(--spacing-lg-3);
  }
}
.timeline__more:after {
  right: var(--spacing-sm-2);
  top: 28%;
  width: var(--spacing-sm-1);
  height: var(--spacing-sm-1);
}
@media (min-width: 30em) {
  .timeline__more:after {
    top: 30%;
  }
}
@media (min-width: 48em) {
  .timeline__more:after {
    right: var(--spacing-sm-1);
    top: 33%;
  }
}
.timeline__more:hover, .timeline__more:focus {
  outline: none;
  border: none;
  background-color: var(--orange) !important;
  color: var(--white) !important;
}
.timeline__more:hover:after, .timeline__more:focus:after {
  transform: translateX(3px);
}
@media (min-width: 30em) {
  .timeline__more {
    font-size: var(--spacing-base);
  }
}

.slider {
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  margin-top: var(--spacing-base);
  margin-bottom: var(--spacing-base);
  margin-bottom: var(--spacing-lg-6) !important;
  max-width: 100vw;
  padding-top: var(--spacing-lg-2);
  padding-bottom: var(--spacing-lg-2);
  position: relative;
  z-index: 2;
}
@media (min-width: 30em) {
  .slider {
    margin-top: var(--spacing-lg-2);
    margin-bottom: var(--spacing-lg-2);
  }
}
@media (min-width: 56.25em) {
  .slider {
    margin-top: var(--spacing-lg-3);
    margin-bottom: var(--spacing-lg-3);
  }
}
@media (min-width: 81.25em) {
  .slider {
    margin-top: var(--spacing-lg-4);
    margin-bottom: var(--spacing-lg-4);
  }
}
.slider .textImage__content {
  width: 100vw;
  padding-left: var(--spacing-lg-5);
  padding-right: var(--spacing-lg-5);
}
@media (min-width: 48em) {
  .slider .textImage__content {
    padding-left: 8vw;
    padding-right: 8vw;
  }
}
.slider .textImage__imgCaption {
  margin-bottom: 0;
}
.slider .textImage__textWrapper {
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.slider .textImage__title {
  font-size: var(--spacing-lg-1);
  margin-bottom: var(--spacing-sm-2);
  text-transform: none;
}
@media (min-width: 48em) {
  .slider .textImage__title {
    font-size: var(--spacing-lg-2);
  }
}
.slider .textImage__text p:last-child {
  margin-bottom: 0;
}
.slider .flickity-button {
  min-height: unset !important;
  width: var(--spacing-lg-3) !important;
  height: var(--spacing-lg-3) !important;
  padding: 0 !important;
}
.slider .previous {
  left: var(--spacing-sm-4) !important;
}
@media (min-width: 48em) {
  .slider .previous {
    left: var(--spacing-lg-1) !important;
  }
}
.slider .next {
  right: var(--spacing-sm-4) !important;
}
@media (min-width: 48em) {
  .slider .next {
    right: var(--spacing-lg-1) !important;
  }
}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9jc3MtcmVzZXQtYW5kLW5vcm1hbGl6ZS9zY3NzL3Jlc2V0LWFuZC1ub3JtYWxpemUuc2NzcyIsImZvbnRzL19jYXBpdGEtbGlnaHQuc2NzcyIsImZvbnRzL19jYXBpdGEtbWVkaXVtLnNjc3MiLCJiYXNlL192YXJpYWJsZXMuc2NzcyIsImJhc2UvX2h0bWwuc2NzcyIsImJhc2UvX2JvZHkuc2NzcyIsImJhc2UvX3R5cG9ncmFwaHkuc2NzcyIsImJhc2UvX2Zvcm0uc2NzcyIsImJhc2UvX2dyYXZpdHlGb3JtLnNjc3MiLCJiYXNlL19taXhpbnMuc2NzcyIsImJhc2UvX3JhaXNlTm93LnNjc3MiLCJhY2Nlc3NpYmlsaXR5L19zY3JlZW4tcmVhZGVyLXRleHQuc2NzcyIsInV0aWxpdHkvX2RlYnVnLnNjc3MiLCJ0ZW1wbGF0ZXMvX3NpbmdsZS5zY3NzIiwidGVtcGxhdGVzL19wYWdlLnNjc3MiLCJ0ZW1wbGF0ZXMvX2RvbmF0aW9uLnNjc3MiLCJ0ZW1wbGF0ZXMvX2RvbmF0aW9uRm9ybS5zY3NzIiwidGVtcGxhdGVzL19mb3VyemVyb2ZvdXIuc2NzcyIsInRlbXBsYXRlcy9fcGFzc3dvcmRQcm90ZWN0ZWQuc2NzcyIsInBhcnRpYWxzL19zaXRlTWFpbi5zY3NzIiwicGFydGlhbHMvX3NpdGVGb290ZXIuc2NzcyIsInBhcnRpYWxzL2hlYWRlci9fbGFuZ3VhZ2VTd2l0Y2hlckRyb3Bkb3duLnNjc3MiLCJwYXJ0aWFscy9oZWFkZXIvX2xhbmd1YWdlU3dpdGNoZXJMaXN0LnNjc3MiLCJwYXJ0aWFscy9oZWFkZXIvX21lbnVMaXN0LnNjc3MiLCJwYXJ0aWFscy9oZWFkZXIvX2hpZ2hsaWdodGVkTGlzdC5zY3NzIiwicGFydGlhbHMvaGVhZGVyL19idXJnZXJCdXR0b24uc2NzcyIsInBhcnRpYWxzL19zaXRlSGVhZGVyLnNjc3MiLCJwYXJ0aWFscy9fbmF2LnNjc3MiLCJwYXJ0aWFscy9faG9tZUJhbm5lci5zY3NzIiwicGFydGlhbHMvX3RlYXNlLnNjc3MiLCJwYXJ0aWFscy9fcHJvZ3Jlc3NCYXIuc2NzcyIsInBhcnRpYWxzL19ldXJvcGVNYXAuc2NzcyIsInBhcnRpYWxzL19zY3JvbGxiYXIuc2NzcyIsInBhcnRpYWxzL19nZHByQmFubmVyLnNjc3MiLCJwYXJ0aWFscy9fc29jaWFsLnNjc3MiLCJwYXJ0aWFscy9fc2hhcmluZ01vZGFsLnNjc3MiLCJwYXJ0aWFscy9fcHJpdmFjeU5vdGUuc2NzcyIsInBhcnRpYWxzL19zaGFyaW5nQnV0dG9ucy5zY3NzIiwicGFydGlhbHMvX2dlYmFuYS5zY3NzIiwiYmxvY2tzL19pbWFnZS5zY3NzIiwiYmxvY2tzL19saXN0LnNjc3MiLCJibG9ja3MvX2ZpbGUuc2NzcyIsImJsb2Nrcy9fZW1iZWQuc2NzcyIsImJsb2Nrcy9fcXVvdGUuc2NzcyIsImJsb2Nrcy9fYWNjb3JkaW9uLnNjc3MiLCJibG9ja3MvX3NlcGFyYXRvci5zY3NzIiwiYmxvY2tzL19idXR0b25zLnNjc3MiLCJibG9ja3MvX2hvbWVUZWFzZXIuc2NzcyIsImJsb2Nrcy9faW50cm8uc2NzcyIsImJsb2Nrcy9fdGV4dEltYWdlLnNjc3MiLCJibG9ja3MvX2dhbGxlcnkuc2NzcyIsImJsb2Nrcy9fdGV4dC5zY3NzIiwiYmxvY2tzL190ZXh0VGV4dC5zY3NzIiwiYmxvY2tzL190ZXh0SGlnaGxpZ2h0ZWQuc2NzcyIsImJsb2Nrcy9fdGVhc2VFeGFtcGxlcy5zY3NzIiwiYmxvY2tzL19uZXdzbGV0dGVyLnNjc3MiLCJibG9ja3MvX2FyY2hpdmVFeGFtcGxlcy5zY3NzIiwiYmxvY2tzL19hcmNoaXZlTmV3cy5zY3NzIiwiYmxvY2tzL19hcmNoaXZlU3VwcG9ydGVyLnNjc3MiLCJibG9ja3MvX2FyY2hpdmVPcmdhbmlzYXRpb24uc2NzcyIsImJsb2Nrcy9fZm9ybVRleHQuc2NzcyIsImJsb2Nrcy9fZXVyb3BlLnNjc3MiLCJibG9ja3MvX3NoYXJlQmxvY2suc2NzcyIsImJsb2Nrcy9fY2FsbFRvQWN0aW9uLnNjc3MiLCJibG9ja3MvX3RpbWVsaW5lLnNjc3MiLCJibG9ja3MvX3NsaWRlci5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFpQkE7QUFBQTtBQUFBO0FBSUE7RUFDRTs7QUFJRjtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtFQWFFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBSUY7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0VBR0U7OztBQUlGO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtFQUdFOzs7QUFJRjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBWUE7QUFDRTtFQUNBO0FBQ0E7RUFDQTtBQUNBO0VBQ0E7RUFDQTtBQUNBO0VBQ0E7QUFDQTtFQUNBOzs7QUFJRjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQVFBO0FBQ0U7RUFDQTtBQUNBO0VBQ0E7QUFDQTtFQUNBOzs7QUFHRjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBWUE7RUFDRTs7O0FBSUY7QUFBQTtBQUFBO0FBSUE7RUFDRTs7O0FBSUY7QUFBQTtBQUFBO0FBSUE7RUFDRTs7O0FBR0Y7QUFBQTtBQUFBO0FBQUE7RUFJRTtFQUNBOzs7QUFJRjtBQUFBO0FBQUE7QUFJQTtFQUNFO0VBQ0E7OztBQUdGO0VBQ0U7OztBQUlGO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQU9BO0FBQ0U7RUFDQTtBQUNBO0VBQ0E7OztBQUlGO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFNQTtBQUNFO0VBQ0E7RUFDQTtBQUNBO0VBQ0E7OztBQUlGO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFTQTtBQUFBO0FBQUE7QUFBQTtBQUlFO0VBQ0E7OztBQUdGO0FBQ0U7RUFDQTtBQUNBO0VBQ0E7OztBQUlGO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFNQTtBQUNFO0VBQ0E7QUFDQTtFQUNBOzs7QUFJRjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFPQTtBQUNFO0VBQ0E7QUFDQTtFQUNBO0VBQ0E7QUFDQTtFQUNBO0FBQ0E7RUFDQTs7O0FBR0Y7RUFDRTtFQUNBOzs7QUFHRjtBQUFBO0FBQUE7QUFJQTtBQUFBO0VBRUU7OztBQUlGO0FBQUE7QUFBQTtBQUlBO0VBQ0U7OztBQUlGO0FBQUE7QUFBQTtBQUFBO0FBS0E7QUFBQTtFQUVFO0VBQ0E7RUFDQTs7O0FBR0Y7RUFDRTs7O0FBR0Y7RUFDRTs7O0FBR0Y7QUFBQTtBQUFBO0FBR0E7RUFDRTs7O0FBSUY7QUFBQTtBQUFBO0FBSUE7RUFDRTs7O0FBSUY7QUFBQTtBQUFBO0FBSUE7RUFDRTs7O0FBSUY7QUFBQTtBQUFBO0FBQUE7QUFLQTtFQUNFOzs7QUFJRjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBTUE7RUFDRTtFQUNBOzs7QUFJRjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBTUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUtFO0VBQ0E7QUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBSUY7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQU1BO0FBQUE7QUFBQTtBQUFBO0FBS0U7RUFDQTs7O0FBSUY7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFRQTtBQUFBO0FBQUE7QUFBQTtFQUlFOzs7QUFJRjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBTUE7RUFDRTtFQUNBOzs7QUFJRjtBQUFBO0FBQUE7QUFJQTtBQUFBO0VBRUU7OztBQUlGO0FBQUE7QUFBQTtBQUlBO0FBQUE7RUFFRTs7O0FBR0Y7QUFBQTtBQUFBO0FBQUE7QUFLQTtFQUNFOzs7QUFJRjtBQUFBO0FBQUE7QUFBQTtBQUtBO0VBQ0U7OztBQUlGO0FBQUE7QUFBQTtBQUFBO0FBS0E7QUFBQTtBQUFBO0FBQUE7RUFJRTtFQUNBOzs7QUFJRjtBQUFBO0FBQUE7QUFBQTtBQUtBO0FBQUE7QUFFRTtFQUNBO0FBQ0E7RUFDQTs7O0FBSUY7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBT0E7RUFDRTs7O0FBSUY7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFRQTtFQUNFOzs7QUFJRjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBTUE7QUFDRTtFQUNBO0VBQ0E7QUFDQTtFQUNBO0FBQ0E7RUFDQTs7O0FBSUY7QUFBQTtBQUFBO0FBSUE7RUFDRTs7O0FBSUY7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQU1BO0FBQ0U7RUFDQTtBQUNBO0VBQ0E7OztBQUlGO0FBQUE7QUFBQTtBQUFBO0FBS0E7QUFBQTtBQUVFO0VBQ0E7QUFDQTtFQUNBOzs7QUFJRjtBQUFBO0FBQUE7QUFJQTtBQUFBO0VBRUU7OztBQUlGO0FBQUE7QUFBQTtBQUFBO0FBS0E7QUFDRTtFQUNBO0FBQ0E7RUFDQTs7O0FBSUY7QUFBQTtBQUFBO0FBSUE7QUFBQTtFQUVFOzs7QUFJRjtBQUFBO0FBQUE7QUFBQTtBQUtBO0FBQ0U7RUFDQTtBQUNBO0VBQ0E7OztBQUlGO0FBQUE7QUFBQTtBQUlBO0VBQ0U7OztBQUlGO0FBQUE7QUFBQTtBQUlBO0VBQ0U7OztBQUlGO0FBQUE7QUFBQTtBQUFBO0FBS0E7RUFDRTs7O0FDM25CRjtFQUNFO0VBQ0E7O0FDRkY7RUFDRTtFQUNBOztBQ0RGO0FBRUE7QUFFQTtBQUVBO0FBRUE7QUFFQTtBQUVBO0FBRUE7QUFFQTtBQUVBO0FBRUE7QUFHQTtFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUVBO0VBRUE7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUVBO0VBRUE7RUFFQTtFQUVBO0VBQ0E7RUFFQTtFQUNBO0VBRUE7QUFBQTtFQUdBO0VBQ0E7OztBQUdGO0VBQ0U7SUFDRTtJQUNBO0lBQ0E7OztBQUlKO0VBQ0U7SUFDRTs7O0FBSUo7RUFDRTtJQUNFO0lBQ0E7SUFDQTs7O0FBSUo7RUFDRTtJQUNFOzs7QUFJSjtFQUNFO0VBQ0E7O0FBQ0E7RUFDRTs7O0FBSUo7RUFDRTtFQUNBOztBQUNBO0VBQ0U7OztBQUlKO0VBQ0U7OztBQUdGO0VBQ0U7OztBQ3RLRjtFQUNFO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7O0FBRUE7RUFDRTs7QUFHRjtFQVpGO0lBYUk7OztBQUdGO0VBaEJGO0lBaUJJOzs7QUFHRjtFQXBCRjtJQXFCSTs7O0FBR0Y7RUF4QkY7SUF5Qkk7Ozs7QUFJSjtFQUNFOzs7QUM5QkY7RUFZRTtFQUNBO0VBQ0E7O0FBYkE7RUFDRTs7QUFJRjtFQUNFO0VBQ0E7O0FBUUY7RUFDRTs7QUFHRjtFQUNFO0VBQ0E7OztBQWlCSjtFQUNFO0lBQ0U7SUFDQTtJQUNBOzs7QUFJSjtFQUNFO0lBQ0U7SUFDQTtJQUNBOzs7QUFJSjtFQUNFO0lBQ0U7SUFDQTtJQUNBOzs7QUFJSjtFQUNFO0lBQ0U7SUFDQTtJQUNBOzs7QUFHSjtFQUNFO0lBQ0U7SUFDQTtJQUNBOzs7QUFJSjtFQUNFO0lBQ0U7SUFDQTtJQUNBOzs7QUFJSjtFQUNFO0lBQ0U7SUFDQTtJQUNBOzs7QUFJSjtFQUNFO0lBQ0U7SUFDQTtJQUNBOzs7QUFJSjtFQUNFO0lBQ0U7SUFDQTtJQUNBOzs7QUFJSjtFQUNFO0lBQ0U7SUFDQTtJQUNBOzs7QUFHSjtFQUNFO0lBQ0U7SUFDQTtJQUNBOzs7QUN6SEo7RUFFRTtFQUVBO0VBQ0E7RUFDQTs7O0FBR0Y7RUFDRTtFQUNBOzs7QUFHRjtBQUFBO0FBQUE7QUFBQTtFQUlFO0VBQ0E7RUFDQTs7QUFFQTtBQUFBO0FB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QUNBO0VBQ0E7RUFxV0E7O0FBRUE7RUFDRTtFQUNBOztBQUVBO0VBQ0U7O0FBR0Y7RUFDRTs7QUR4T0o7RUFDRTs7O0FBSUo7RUFDRTtFQUNBO0VBQ0E7O0FBRUE7RUFFRTs7QUFFQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0VBR0U7OztBQUtOO0VBQ0U7RUFDQTs7QUFHQTtBQUFBO0FBQUE7RUFHRTs7O0FBSUo7RUNyRkU7RUR1RkE7RUFDQTtFQUNBOztBQ3ZGQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7QUFBQTtBQUFBO0VBR0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FEMkVBO0VBQ0U7RUFDQTs7QUFHRjtFQUNFOztBQUdGO0FBQUE7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtBQUFBO0VBRUU7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFJQTtBQUFBO0FBQUE7RUFHRTs7QUFJSjtFQUNFOzs7QUFLTjtBQUFBO0VBRUU7OztBQUlGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtBQUFBO0VBRUU7RUFDQTtFQUNBOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7O0FBRUE7RUFDRTs7QUFJSjtFQUNFOztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0U7O0FBRUE7RUFFRTs7O0FBU1I7RUFDRTtFQUNBOzs7QUFFRjtFQUNFO0VBQ0E7RUFDQTs7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FB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QUNFO0VBQ0E7O0FBSUU7RUFDRTs7QUFLTjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDRTtFQUNBOztBQUdGO0VBRUU7O0FBRUE7RUFDRTs7QUFHRjtFQUNFOztBQUtOO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDRTs7QUFJSjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0U7RUFDQTs7QUFHRjtFQUVFOztBQUVBO0VBQ0U7OztBQ3JGUjtFQUNFO0VieVhBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FhMVhBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7OztBQ1JKO0VBQ0U7RUFDQTs7QUFFQTtFQUpGO0lBS0k7O0VBR0U7SUFDRTs7RUFJQTtJQUNFO0lBQ0E7SUFDQTs7O0FBTVI7RUFDRTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQU5GO0lBT0k7SUFDQTs7O0FBR0Y7RUFFRTs7QUFJSjtFQUNFO0VBQ0E7O0FBRUE7RUFJSTtJQUNFOztFQUlGO0lBQ0U7O0VBR0E7SUFDRTtJQUNBOzs7QUFRTjtFQUNFOztBQUtOO0VBQ0U7RUFDQTtFQUNBOztBQUdBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFLQTtFQUNFOztBQUtOO0VBQ0U7RUFDQTs7QUFFQTtFQUNFOztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTtJQUVFO0lBQ0E7OztBQUtOO0VBaENGO0lBaUNJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTs7RUFFQTtJQUVFOzs7O0FDcEpSO0VBQ0U7RUFDQTs7QUFFQTtFQUpGO0lBS0k7OztBQUlBO0VBQ0U7O0FBRUE7RUFIRjtJQUlJOzs7QUFLTjtFQUNFO0VBQ0E7RUFDQTs7QUFFQTtFQUVFOztBQUdGO0VBVkY7SUFXSTtJQUNBO0lBQ0E7O0VBRUE7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QTs7QUFFQTtFQWRGO0lBZUk7OztBQVFKO0V1RGpHRjtJdkRrR0k7OztBQU1BO0V1RHhHSjtJdkR5R007OztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFORjtJQU9JOzs7QUFHRjtFQVZGO0lBV0k7SUFDQTs7O0FBTVI7RUFFRTtFQUNBO0VBQ0E7RUFDQTs7QUFHRTtFQUNFOztBdUQzSEo7RUFaRjtJQWFJOzs7O0FDelBOO0V4RG9CRTtFQUNBO0VBdUNBO0VBQ0E7RXdEMURBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QXhEdURBO0V3RC9ERjtJeERnRUk7SUFDQTs7O0FBR0Y7RXdEcEVGO0l4RHFFSTtJQUNBOzs7QUFHRjtFd0R6RUY7SXhEMEVJO0lBQ0E7OztBd0RoRUE7RUFDRTtFQUNBO0VBQ0E7O0FBRUE7RUFMRjtJQU1JO0lBQ0E7OztBQUdKO0VBQ0U7O0FBRUY7RUFDRTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7O0FBRUE7RUFMRjtJQU1JOzs7QUFLRjtFQUNFOztBQU1OO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTs7QUFDQTtFQUZGO0lBR0k7OztBQUlKO0VBQ0U7O0FBQ0E7RUFGRjtJQUdJIiwiZmlsZSI6Im1haW4uY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBCYXNlZCBvblxuICpcbiAqICAtIHJlc2V0LmNzcyAyLjAgYnkgRXJpYyBNZXllclxuICAgICAgKHB1YmxpYyBkb21haW4pXG4gKiAgICBodHRwOi8vbWV5ZXJ3ZWIuY29tL2VyaWMvdG9vbHMvY3NzL3Jlc2V0L1xuICpcbiAqICAtIG5vcm1hbGl6ZS5jc3MgOC4wLjEgYnkgTmljb2xhcyBHYWxsYWdoZXIgYW5kIEpvbmF0aGFuIE5lYWxcbiAqICAgIChsaWNlbnNlZCB1bmRlciBNSVQpXG4gKiAgICBodHRwczovL2dpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzXG4gKlxuICogIC0gUmVib290IGZyb20gQm9vdHN0cmFwIDQuNS4zXG4gKiAgICAobGljZW5zZWQgdW5kZXIgTUlUKVxuICogICAgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwXG4gKi9cblxuXG4vKipcbiAqIElFMTArIGRvZXNuJ3QgaG9ub3IgYDxtZXRhIG5hbWU9XCJ2aWV3cG9ydFwiPmAgaW4gc29tZSBjYXNlc1xuICovXG5cbkAtbXMtdmlld3BvcnQge1xuICB3aWR0aDogZGV2aWNlLXdpZHRoO1xufVxuXG5cbi8qKlxuICogZ2VuZXJhbCByZXNldFxuICovXG5cbmh0bWwsIGJvZHksIGRpdiwgc3BhbiwgYXBwbGV0LCBvYmplY3QsIGlmcmFtZSxcbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYsIHAsIGJsb2NrcXVvdGUsIHByZSxcbmEsIGFiYnIsIGFjcm9ueW0sIGFkZHJlc3MsIGJpZywgY2l0ZSwgY29kZSxcbmRlbCwgZGZuLCBlbSwgaW1nLCBpbnMsIGtiZCwgcSwgcywgc2FtcCxcbnNtYWxsLCBzdHJpa2UsIHN0cm9uZywgc3ViLCBzdXAsIHR0LCB2YXIsXG5iLCB1LCBpLCBjZW50ZXIsXG5kbCwgZHQsIGRkLCBvbCwgdWwsIGxpLFxuZmllbGRzZXQsIGZvcm0sIGxhYmVsLCBsZWdlbmQsXG50YWJsZSwgY2FwdGlvbiwgdGJvZHksIHRmb290LCB0aGVhZCwgdHIsIHRoLCB0ZCxcbmFydGljbGUsIGFzaWRlLCBjYW52YXMsIGRldGFpbHMsIGVtYmVkLFxuZmlndXJlLCBmaWdjYXB0aW9uLCBmb290ZXIsIGhlYWRlciwgaGdyb3VwLFxubWVudSwgbmF2LCBvdXRwdXQsIHJ1YnksIHNlY3Rpb24sIHN1bW1hcnksXG50aW1lLCBtYXJrLCBhdWRpbywgdmlkZW8sIG1haW4ge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogMDtcbiAgZm9udC1zaXplOiAxMDAlO1xuICBmb250OiBpbmhlcml0O1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cblxuLyoqXG4gKiBIVE1MNSBkaXNwbGF5LXJvbGUgcmVzZXQgZm9yIG9sZGVyIGJyb3dzZXJzXG4gKi9cblxuYXJ0aWNsZSwgYXNpZGUsIGRldGFpbHMsIGZpZ2NhcHRpb24sIGZpZ3VyZSxcbmZvb3RlciwgaGVhZGVyLCBoZ3JvdXAsIG1lbnUsIG5hdiwgc2VjdGlvbixcbm1haW4sIHN1bW1hcnkge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuXG4vKipcbiAqIGluaGVyaXQgYm94IG1vZGVsIGZvciBhbGwgZWxlbWVudHNcbiAqL1xuXG4qLFxuKjo6YmVmb3JlLFxuKjo6YWZ0ZXIge1xuICBib3gtc2l6aW5nOiBpbmhlcml0O1xufVxuXG5cbi8qKlxuICogaHRtbCByb290IHJ1bGVzXG4gKiAxLiBzZXQgYm9yZGVyLWJveCBmb3IgaW5oZXJpdGFuY2VcbiAqIDIuIGF2b2lkIDMwMG1zIGNsaWNrIGRlbGF5IG9uIHRvdWNoIGRldmljZXMgdGhhdCBzdXBwb3J0IHRoZSBgdG91Y2gtYWN0aW9uYFxuICogICAgQ1NTIHByb3BlcnR5XG4gKiAzLiBQcmV2ZW50IGFkanVzdG1lbnRzIG9mIGZvbnQgc2l6ZSBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2VzIGluIElFLCBvblxuICogICAgV2luZG93cyBQaG9uZSBhbmQgaU9TLlxuICogNC4gU2V0dGluZyBAdmlld3BvcnQgY2F1c2VzIHNjcm9sbGJhcnMgdG8gb3ZlcmxhcCBjb250ZW50IGluIElFMTEgYW5kIEVkZ2UsXG4gKiAgICBzbyB3ZSBmb3JjZSBhIG5vbi1vdmVybGFwcGluZywgbm9uLWF1dG8taGlkaW5nIHNjcm9sbGJhciB0byBjb3VudGVyYWN0LlxuICogNS4gQ2hhbmdlIHRoZSBkZWZhdWx0IHRhcCBoaWdobGlnaHQgdG8gYmUgY29tcGxldGVseSB0cmFuc3BhcmVudCBpbiBpT1MuXG4gKi9cblxuaHRtbCB7XG4gIC8qIDEgKi9cbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLyogMiAqL1xuICB0b3VjaC1hY3Rpb246IG1hbmlwdWxhdGlvbjtcbiAgLyogMyAqL1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG4gIC1tcy10ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xuICAvKiA0ICovXG4gIC1tcy1vdmVyZmxvdy1zdHlsZTogc2Nyb2xsYmFyO1xuICAvKiA1ICovXG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwKTtcbn1cblxuXG4vKipcbiAqIGJvZHkgcnVsZXNcbiAqIDEuIHJlc2V0IGxpbmUtaGVpZ2h0IHRvIDFcbiAqIDIuIHNldCBiYXNlIGZvbnQtZmFtaWx5IHRvIHNhbnMtc2VyaWZcbiAqIDMuIFNldCBhbiBleHBsaWNpdCBpbml0aWFsIHRleHQtYWxpZ24gdmFsdWUgc28gdGhhdCB3ZSBjYW4gbGF0ZXIgdXNlIHRoZVxuICogICAgYGluaGVyaXRgIHZhbHVlIG9uIHRoaW5ncyBsaWtlIGA8dGg+YCBlbGVtZW50cy5cbiAqL1xuXG5ib2R5IHtcbiAgLyogMSAqL1xuICBsaW5lLWhlaWdodDogMTtcbiAgLyogMiAqL1xuICBmb250LWZhbWlseTogc2Fucy1zZXJpZjtcbiAgLyogMyAqL1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4vKipcbiAqIEZ1dHVyZS1wcm9vZiBydWxlOiBpbiBicm93c2VycyB0aGF0IHN1cHBvcnQgOmZvY3VzLXZpc2libGUsIHN1cHByZXNzIHRoZSBmb2N1cyBvdXRsaW5lXG4gKiBvbiBlbGVtZW50cyB0aGF0IHByb2dyYW1tYXRpY2FsbHkgcmVjZWl2ZSBmb2N1cyBidXQgd291bGRuJ3Qgbm9ybWFsbHkgc2hvdyBhIHZpc2libGVcbiAqIGZvY3VzIG91dGxpbmUuIEluIGdlbmVyYWwsIHRoaXMgd291bGQgbWVhbiB0aGF0IHRoZSBvdXRsaW5lIGlzIG9ubHkgYXBwbGllZCBpZiB0aGVcbiAqIGludGVyYWN0aW9uIHRoYXQgbGVkIHRvIHRoZSBlbGVtZW50IHJlY2VpdmluZyBwcm9ncmFtbWF0aWMgZm9jdXMgd2FzIGEga2V5Ym9hcmQgaW50ZXJhY3Rpb24sXG4gKiBvciB0aGUgYnJvd3NlciBoYXMgc29tZWhvdyBkZXRlcm1pbmVkIHRoYXQgdGhlIHVzZXIgaXMgcHJpbWFyaWx5IGEga2V5Ym9hcmQgdXNlciBhbmQvb3JcbiAqIHdhbnRzIGZvY3VzIG91dGxpbmVzIHRvIGFsd2F5cyBiZSBwcmVzZW50ZWQuXG4gKlxuICogU2VlIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0NTUy86Zm9jdXMtdmlzaWJsZVxuICogYW5kIGh0dHBzOi8vZGV2ZWxvcGVyLnBhY2llbGxvZ3JvdXAuY29tL2Jsb2cvMjAxOC8wMy9mb2N1cy12aXNpYmxlLWFuZC1iYWNrd2FyZHMtY29tcGF0aWJpbGl0eS9cbiAqL1xuXG5bdGFiaW5kZXg9XCItMVwiXTpmb2N1czpub3QoOmZvY3VzLXZpc2libGUpIHtcbiAgb3V0bGluZTogMCAhaW1wb3J0YW50O1xufVxuXG5cbi8qKlxuICogTGlzdHNcbiAqL1xuXG5vbCwgdWwge1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG5cbi8qKlxuICogUXVvdGVzXG4gKi9cblxuYmxvY2txdW90ZSwgcSB7XG4gIHF1b3Rlczogbm9uZTtcbn1cblxuYmxvY2txdW90ZTo6YmVmb3JlLFxuYmxvY2txdW90ZTo6YWZ0ZXIsXG5xOjpiZWZvcmUsXG5xOjphZnRlciB7XG4gIGNvbnRlbnQ6ICcnO1xuICBjb250ZW50OiBub25lO1xufVxuXG5cbi8qKlxuICogVGFibGVzXG4gKi9cblxudGFibGUge1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICBib3JkZXItc3BhY2luZzogMDtcbn1cblxuY2FwdGlvbiB7XG4gIGNhcHRpb24tc2lkZTogYm90dG9tO1xufVxuXG5cbi8qKlxuICogVGFibGUgSGVhZGVyc1xuICogMS4gTWF0Y2hlcyBkZWZhdWx0IGA8dGQ+YCBhbGlnbm1lbnQgYnkgaW5oZXJpdGluZyBmcm9tIHRoZSBgPGJvZHk+YCwgb3IgdGhlXG4gKiAgICBjbG9zZXN0IHBhcmVudCB3aXRoIGEgc2V0IGB0ZXh0LWFsaWduYC5cbiAqIDIuIEZpeCBhbGlnbm1lbnQgZm9yIFNhZmFyaVxuICovXG5cbnRoIHtcbiAgLyogMSAqL1xuICB0ZXh0LWFsaWduOiBpbmhlcml0O1xuICAvKiAyICovXG4gIHRleHQtYWxpZ246IC13ZWJraXQtbWF0Y2gtcGFyZW50O1xufVxuXG5cbi8qKlxuICogSG9yaXpvbnRhbCBMaW5lc1xuICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gRmlyZWZveC5cbiAqIDIuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UgYW5kIElFLlxuICovXG5cbmhyIHtcbiAgLyogMSAqL1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgaGVpZ2h0OiAwO1xuICAvKiAyICovXG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG5cbi8qKlxuICogUHJlZm9ybWF0dGVkIFRleHRcbiAqIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBEb24ndCBhbGxvdyBjb250ZW50IHRvIGJyZWFrIG91dHNpZGVcbiAqIDMuIFdlIGhhdmUgQHZpZXdwb3J0IHNldCB3aGljaCBjYXVzZXMgc2Nyb2xsYmFycyB0byBvdmVybGFwIGNvbnRlbnQgaW4gSUUxMVxuICogICAgYW5kIEVkZ2UsIHNvIHdlIGZvcmNlIGEgbm9uLW92ZXJsYXBwaW5nLCBub24tYXV0by1oaWRpbmcgc2Nyb2xsYmFyIHRvXG4gKiAgICBjb3VudGVyYWN0LlxuICovXG5cbnByZSxcbmNvZGUsXG5rYmQsXG5zYW1wIHtcbiAgLyogMSAqL1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7XG59XG5cbnByZSB7XG4gIC8qIDIgKi9cbiAgb3ZlcmZsb3c6IGF1dG87XG4gIC8qIDMgKi9cbiAgLW1zLW92ZXJmbG93LXN0eWxlOiBzY3JvbGxiYXI7XG59XG5cblxuLyoqXG4gKiBMaW5rc1xuICogMS4gUmVtb3ZlIHRoZSBncmF5IGJhY2tncm91bmQgb24gYWN0aXZlIGxpbmtzIGluIElFIDEwLlxuICogMi4gUmVtb3ZlIGdhcHMgaW4gbGlua3MgdW5kZXJsaW5lIGluIGlPUyA4KyBhbmQgU2FmYXJpIDgrLlxuICovXG5cbmEge1xuICAvKiAxICovXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAvKiAyICovXG4gIC13ZWJraXQtdGV4dC1kZWNvcmF0aW9uLXNraXA6IG9iamVjdHM7XG59XG5cblxuLyoqXG4gKiAxLiBSZW1vdmUgdGhlIGJvdHRvbSBib3JkZXIgaW4gQ2hyb21lIDU3LSBhbmQgRmlyZWZveCAzOS1cbiAqIDIuIEFkZCB0aGUgY29ycmVjdCB0ZXh0IGRlY29yYXRpb24gaW4gQ2hyb21lLCBFZGdlLCBJRSwgT3BlcmEsIGFuZCBTYWZhcmkuXG4gKiAzLiBBZGQgZXhwbGljaXQgY3Vyc29yIHRvIGluZGljYXRlIGNoYW5nZWQgYmVoYXZpb3IuXG4gKiA0LiBQcmV2ZW50IHRoZSB0ZXh0LWRlY29yYXRpb24gdG8gYmUgc2tpcHBlZC5cbiAqL1xuXG5hYmJyW3RpdGxlXSB7XG4gIC8qIDEgKi9cbiAgYm9yZGVyLWJvdHRvbTogMDtcbiAgLyogMiAqL1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkO1xuICAvKiAzICovXG4gIGN1cnNvcjogaGVscDtcbiAgLyogNCAqL1xuICB0ZXh0LWRlY29yYXRpb24tc2tpcC1pbms6IG5vbmU7XG59XG5cbmFkZHJlc3Mge1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBmb250IHdlaWdodCBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmkuXG4gKi9cblxuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG59XG5cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogODAlO1xufVxuXG5cbi8qKlxuICogUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgZWxlbWVudHMgZnJvbSBhZmZlY3RpbmcgdGhlIGxpbmUgaGVpZ2h0IGluXG4gKiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuc3ViLFxuc3VwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmb250LXNpemU6IDc1JTtcbiAgbGluZS1oZWlnaHQ6IDA7XG59XG5cbnN1YiB7XG4gIGJvdHRvbTogLTAuMjVlbTtcbn1cblxuc3VwIHtcbiAgdG9wOiAtMC41ZW07XG59XG5cbi8qKlxuICogUHJldmVudCBgZW1gIGJlaW5nIGFmZmVjdGVkIGZyb20gZ2xvYmFsIHJlc2V0XG4gKi9cbmVtIHtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuXG5cbi8qKlxuICogUmVtb3ZlIHRoZSBib3JkZXIgb24gaW1hZ2VzIGluc2lkZSBsaW5rcyBpbiBJRSAxMC5cbiAqL1xuXG5pbWcge1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG59XG5cblxuLyoqXG4gKiBIaWRlIFNWRyBvdmVyZmxvdyBpbiBJRVxuICovXG5cbnN2Zzpub3QoOnJvb3QpIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuXG4vKipcbiAqIFJlbW92ZSB0aGUgZGVmYXVsdCBgYm9yZGVyLXJhZGl1c2AgdGhhdCBtYWNPUyBDaHJvbWUgYWRkcy5cbiAqIERldGFpbHMgYXQgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yNDA5M1xuICovXG5cbmJ1dHRvbiB7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG5cblxuLyoqXG4gKiBXb3JrIGFyb3VuZCBhIEZpcmVmb3gvSUUgYnVnIHdoZXJlIHRoZSB0cmFuc3BhcmVudCBgYnV0dG9uYCBiYWNrZ3JvdW5kXG4gKiByZXN1bHRzIGluIGEgbG9zcyBvZiB0aGUgZGVmYXVsdCBgYnV0dG9uYCBmb2N1cyBzdHlsZXMuXG4gKiBDcmVkaXQ6IGh0dHBzOi8vZ2l0aHViLmNvbS9zdWl0Y3NzL2Jhc2UvXG4gKi9cblxuYnV0dG9uOmZvY3VzIHtcbiAgb3V0bGluZTogMXB4IGRvdHRlZDtcbiAgb3V0bGluZTogNXB4IGF1dG8gLXdlYmtpdC1mb2N1cy1yaW5nLWNvbG9yO1xufVxuXG5cbi8qKlxuICogZm9ybSBlbGVtZW50IHJlc2V0c1xuICogMS4gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gRmlyZWZveCBhbmQgU2FmYXJpXG4gKiAyLiBpbmhlcml0IGZvbnQgcnVsZXNcbiAqL1xuXG5pbnB1dCxcbmJ1dHRvbixcbnNlbGVjdCxcbm9wdGdyb3VwLFxudGV4dGFyZWEge1xuICAvKiAxICovXG4gIG1hcmdpbjogMDtcbiAgLyogMiAqL1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgZm9udC1zaXplOiBpbmhlcml0O1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbn1cblxuXG4vKipcbiAqIDEuIFByZXZlbnQgYSBXZWJLaXQgYnVnIHdoZXJlICgyKSBkZXN0cm95cyBuYXRpdmUgYGF1ZGlvYCBhbmQgYHZpZGVvYFxuICogICAgY29udHJvbHMgaW4gQW5kcm9pZCA0LlxuICogMi4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAqL1xuXG5idXR0b24sXG5bdHlwZT1cInJlc2V0XCJdLFxuW3R5cGU9XCJzdWJtaXRcIl0sXG4vKiAxICovXG5bdHlwZT1cImJ1dHRvblwiXSB7XG4gIC8qIDIgKi9cbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247XG59XG5cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGRlZmF1bHQgYXBwZWFyYW5jZSBvZiB0ZW1wb3JhbCBpbnB1dHMgdG8gYXZvaWQgYSBNb2JpbGUgU2FmYXJpXG4gKiBidWcgd2hlcmUgc2V0dGluZyBhIGN1c3RvbSBsaW5lLWhlaWdodCBwcmV2ZW50cyB0ZXh0IGZyb20gYmVpbmcgdmVydGljYWxseVxuICogY2VudGVyZWQgd2l0aGluIHRoZSBpbnB1dC5cbiAqIFNlZSBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTM5ODQ4XG4gKiBhbmQgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMTI2NlxuICovXG5cbmlucHV0W3R5cGU9XCJkYXRlXCJdLFxuaW5wdXRbdHlwZT1cInRpbWVcIl0sXG5pbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl0sXG5pbnB1dFt0eXBlPVwibW9udGhcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGxpc3Rib3g7XG59XG5cblxuLyoqXG4gKiAxLiBSZW1vdmUgdGhlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFLlxuICogMi4gVGV4dGFyZWFzIHNob3VsZCByZWFsbHkgb25seSByZXNpemUgdmVydGljYWxseSBzbyB0aGV5IGRvbid0IGJyZWFrIHRoZWlyXG4gKiAgICAoaG9yaXpvbnRhbCkgY29udGFpbmVycy5cbiAqL1xuXG50ZXh0YXJlYSB7XG4gIG92ZXJmbG93OiBhdXRvO1xuICByZXNpemU6IHZlcnRpY2FsO1xufVxuXG5cbi8qKlxuICogU2hvdyB0aGUgb3ZlcmZsb3cgaW4gSUUuXG4gKi9cblxuYnV0dG9uLFxuaW5wdXQge1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRWRnZSwgRmlyZWZveCwgYW5kIElFLlxuICovXG5cbmJ1dHRvbixcbnNlbGVjdCB7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuXG4vKipcbiAqIFNldCB0aGUgY3Vyc29yIGZvciBub24tYDxidXR0b24+YCBidXR0b25zXG4gKiBEZXRhaWxzIGF0IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzMwNTYyXG4gKi9cblxuW3JvbGU9XCJidXR0b25cIl0ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHdvcmQtd3JhcCBpbiBTYWZhcmkuXG4gKiBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yNDk5MFxuICovXG5cbnNlbGVjdCB7XG4gIHdvcmQtd3JhcDogbm9ybWFsO1xufVxuXG5cbi8qKlxuICogUmVtb3ZlIGlubmVyIGJvcmRlciBhbmQgcGFkZGluZyBmcm9tIEZpcmVmb3gsIGJ1dCBkb24ndCByZXN0b3JlIHRoZSBvdXRsaW5lXG4gKiBsaWtlIE5vcm1hbGl6ZS5cbiAqL1xuXG5idXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cImJ1dHRvblwiXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwicmVzZXRcIl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cInN1Ym1pdFwiXTo6LW1vei1mb2N1cy1pbm5lciB7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgcGFkZGluZzogMDtcbn1cblxuXG4vKipcbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIElFIDEwLVxuICogMi4gUmVtb3ZlIHRoZSBwYWRkaW5nIGluIElFIDEwLVxuICovXG5cbmlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gIC8qIDEgKi9cbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLyogMiAqL1xuICBwYWRkaW5nOiAwO1xufVxuXG5cbi8qKlxuICogU3VwcHJlc3MgdGhlIGZvY3VzIG91dGxpbmUgb24gZWxlbWVudHMgdGhhdCBjYW5ub3QgYmUgYWNjZXNzZWQgdmlhIGtleWJvYXJkLlxuICogVGhpcyBwcmV2ZW50cyBhbiB1bndhbnRlZCBmb2N1cyBvdXRsaW5lIGZyb20gYXBwZWFyaW5nIGFyb3VuZCBlbGVtZW50cyB0aGF0XG4gKiBtaWdodCBzdGlsbCByZXNwb25kIHRvIHBvaW50ZXIgZXZlbnRzLlxuICogQ3JlZGl0OiBodHRwczovL2dpdGh1Yi5jb20vc3VpdGNzcy9iYXNlXG4gKi9cblxuW3RhYmluZGV4PVwiLTFcIl06Zm9jdXMge1xuICBvdXRsaW5lOiAwICFpbXBvcnRhbnQ7XG59XG5cblxuLyoqXG4gKiBCcm93c2VycyBzZXQgYSBkZWZhdWx0IGBtaW4td2lkdGg6IG1pbi1jb250ZW50YCBvbiBmaWVsZHNldHMsXG4gKiB1bmxpa2UgZS5nLiBgPGRpdj5gcywgd2hpY2ggaGF2ZSBgbWluLXdpZHRoOiAwYCBieSBkZWZhdWx0LlxuICogU28gd2UgcmVzZXQgdGhhdCB0byBlbnN1cmUgZmllbGRzZXRzIGJlaGF2ZSBtb3JlIGxpa2UgYSBzdGFuZGFyZCBibG9jayBlbGVtZW50LlxuICogU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTIzNTlcbiAqIGFuZCBodHRwczovL2h0bWwuc3BlYy53aGF0d2cub3JnL211bHRpcGFnZS8jdGhlLWZpZWxkc2V0LWFuZC1sZWdlbmQtZWxlbWVudHNcbiAqL1xuXG5maWVsZHNldCB7XG4gIG1pbi13aWR0aDogMDtcbn1cblxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIHRleHQgd3JhcHBpbmcgaW4gRWRnZSBhbmQgSUUuXG4gKiAyLiBDb3JyZWN0IHRoZSBjb2xvciBpbmhlcml0YW5jZSBmcm9tIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gSUUuXG4gKiAzLiBTZXQgZGlzcGxheSB0byBibG9jayBmb3IgYWxsIGJyb3dzZXJzXG4gKi9cblxubGVnZW5kIHtcbiAgLyogMSAqL1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIC8qIDIgKi9cbiAgY29sb3I6IGluaGVyaXQ7XG4gIC8qIDMgKi9cbiAgZGlzcGxheTogYmxvY2s7XG59XG5cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgdmVydGljYWwgYWxpZ25tZW50IGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuICovXG5cbnByb2dyZXNzIHtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5cbi8qKlxuICogMS4gUmVtb3ZlIHRoZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRSAxMCsuXG4gKiAyLiBUZXh0YXJlYXMgc2hvdWxkIHJlYWxseSBvbmx5IHJlc2l6ZSB2ZXJ0aWNhbGx5IHNvIHRoZXkgZG9uJ3QgYnJlYWsgdGhlaXJcbiAqICAgIChob3Jpem9udGFsKSBjb250YWluZXJzLlxuICovXG5cbnRleHRhcmVhIHtcbiAgLyogMSAqL1xuICBvdmVyZmxvdzogYXV0bztcbiAgLyogMiAqL1xuICByZXNpemU6IHZlcnRpY2FsO1xufVxuXG5cbi8qKlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gSUUgMTAuXG4gKiAyLiBSZW1vdmUgdGhlIHBhZGRpbmcgaW4gSUUgMTAuXG4gKi9cblxuW3R5cGU9XCJjaGVja2JveFwiXSxcblt0eXBlPVwicmFkaW9cIl0ge1xuICAvKiAxICovXG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC8qIDIgKi9cbiAgcGFkZGluZzogMDtcbn1cblxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGN1cnNvciBzdHlsZSBvZiBpbmNyZW1lbnQgYW5kIGRlY3JlbWVudCBidXR0b25zIGluIENocm9tZS5cbiAqL1xuXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgb2RkIGFwcGVhcmFuY2UgaW4gQ2hyb21lIGFuZCBTYWZhcmkuXG4gKiAyLiBDb3JyZWN0IHRoZSBvdXRsaW5lIHN0eWxlIGluIFNhZmFyaS5cbiAqL1xuXG5bdHlwZT1cInNlYXJjaFwiXSB7XG4gIC8qIDEgKi9cbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7XG4gIC8qIDIgKi9cbiAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7XG59XG5cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGlubmVyIHBhZGRpbmcgYW5kIGNhbmNlbCBidXR0b25zIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIG1hY09TLlxuICovXG5cblt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uLFxuW3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICogMi4gQ2hhbmdlIGZvbnQgcHJvcGVydGllcyB0byBgaW5oZXJpdGAgaW4gU2FmYXJpLlxuICovXG5cbjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICAvKiAxICovXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xuICAvKiAyICovXG4gIGZvbnQ6IGluaGVyaXQ7XG59XG5cblxuLyoqXG4gKiBDb3JyZWN0IGVsZW1lbnQgZGlzcGxheSBmb3Igb3V0cHV0XG4gKi9cblxub3V0cHV0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTArLlxuICovXG5cbnRlbXBsYXRlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuXG4vKipcbiAqIEFsd2F5cyBoaWRlIGFuIGVsZW1lbnQgd2l0aCB0aGUgYGhpZGRlbmAgSFRNTCBhdHRyaWJ1dGUgKGZyb20gUHVyZUNTUykuXG4gKiBOZWVkZWQgZm9yIHByb3BlciBkaXNwbGF5IGluIElFIDEwLS5cbiAqL1xuXG5baGlkZGVuXSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4iLCJAZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwiQ2FwaXRhIExpZ2h0XCI7XG4gIHNyYzogIHVybCgnLi4vLi4vZm9udHMvY2FwaXRhX2xpZ2h0L2NhcGl0YV9saWdodC53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcbiAgICAgICAgdXJsKCcuLi8uLi9mb250cy9jYXBpdGFfbGlnaHQvY2FwaXRhX2xpZ2h0LndvZmYnKSBmb3JtYXQoJ3dvZmYnKTtcbn1cbiIsIkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJDYXBpdGEgTWVkaXVtXCI7XG4gIHNyYzogIHVybCgnLi4vLi4vZm9udHMvY2FwaXRhX21lZGl1bS9jYXBpdGFfbWVkaXVtLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxuICAgICAgICB1cmwoJy4uLy4uL2ZvbnRzL2NhcGl0YV9tZWRpdW0vY2FwaXRhX21lZGl1bS53b2ZmJykgZm9ybWF0KCd3b2ZmJyk7XG59XG4iLCIvLyBCcmVha3BvaW50c1xuLyogPT09PT0gPT0gPSA9PT0gMjBlbSAoMzIwcHgpID09PSA9ID09ID09PT09ICovXG4kc2NyZWVuLXhzOiBcIihtaW4td2lkdGg6IDIwZW0pXCI7XG4vKiA9PT09PSA9PSA9ID09PSAzNy41ZW0gKDQ4MHB4KSA9PT0gPSA9PSA9PT09PSAqL1xuJHNjcmVlbi14cy1zbTogXCIobWluLXdpZHRoOiAzMGVtKVwiO1xuLyogPT09PT0gPT0gPSA9PT0gMzcuNWVtICg2MDBweCkgPT09ID0gPT0gPT09PT0gKi9cbiRzY3JlZW4tc206IFwiKG1pbi13aWR0aDogMzcuNWVtKVwiO1xuLyogPT09PT0gPT0gPSA9PT0gNDhlbSAoNzY4cHgpID09PSA9ID09ID09PT09ICovXG4kc2NyZWVuLW1kOiBcIihtaW4td2lkdGg6IDQ4ZW0pXCI7XG4vKiA9PT09PSA9PSA9ID09PSA1Ni4yNWVtICg5MDBweCkgPT09ID0gPT0gPT09PT0gKi9cbiRzY3JlZW4tbWQtbGc6IFwiKG1pbi13aWR0aDogNTYuMjVlbSlcIjtcbi8qID09PT09ID09ID0gPT09IDY4Ljc1ZW0gKDExMDBweCkgPT09ID0gPT0gPT09PT0gKi9cbiRzY3JlZW4tbGc6IFwiKG1pbi13aWR0aDogNjguNzVlbSlcIjtcbi8qID09PT09ID09ID0gPT09IDc1ZW0gKDEyMDBweCkgPT09ID0gPT0gPT09PT0gKi9cbiRzY3JlZW4tbGcteGw6IFwiKG1pbi13aWR0aDogNzVlbSlcIjtcbi8qID09PT09ID09ID0gPT09IDgxLjI1ZW0gKDEzMDBweCkgPT09ID0gPT0gPT09PT0gKi9cbiRzY3JlZW4teGw6IFwiKG1pbi13aWR0aDogODEuMjVlbSlcIjtcbi8qID09PT09ID09ID0gPT09IDEwMGVtICgxNjAwcHgpID09PSA9ID09ID09PT09ICovXG4kc2NyZWVuLXhsLXh4bDogXCIobWluLXdpZHRoOiAxMDBlbSlcIjtcbi8qID09PT09ID09ID0gPT09IDEyNWVtICgyMDAwcHgpID09PSA9ID09ID09PT09ICovXG4kc2NyZWVuLXh4bDogXCIobWluLXdpZHRoOiAxMjVlbSlcIjtcbi8qID09PT09ID09ID0gPT09IDEyNWVtICgyNDAwcHgpID09PSA9ID09ID09PT09ICovXG4kc2NyZWVuLXh4eGw6IFwiKG1pbi13aWR0aDogMTUwZW0pXCI7XG5cbjpyb290IHtcbiAgLy8gY29sb3JzXG4gIC0td2hpdGU6ICNmZmY7XG4gIC0tYmxhY2s6ICMwMDA7XG4gIC0tYmx1ZTogIzAwNWU5NDtcbiAgLS1vcmFuZ2U6ICNlODUyMTI7XG4gIC0teWVsbG93OiAjZThjODEzO1xuICAtLWVycm9yOiAjMzA1NWRiO1xuXG4gIC0tZGFyay1ncmV5OiAjMDAyNDM4O1xuICAtLW1lZGl1bS1ncmV5OiAjNDM1ZTZiO1xuICAtLWxpZ2h0LWdyZXk6ICNkNWRiZGU7XG5cbiAgLS1vZmYtd2hpdGU6ICNmNWY1ZjU7XG5cbiAgLS1kYXJrLWdyZXktcmdiYTogcmdiYSgwLCAzNiwgNTYsIDAuOCk7XG4gIC0tYmx1ZS1yZ2JhOiByZ2JhKDE4LCA4NCwgMTIxLCAwLjI1KTtcbiAgLS13aGl0ZS1yZ2JhOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSk7XG5cbiAgLS13aGF0c2FwcDogcmdiKDM3LCAyMTEsIDEwMik7XG4gIC0tbWVzc2VuZ2VyOiByZ2IoMCwgMTA2LCAyNTUpO1xuICAtLWZhY2Vib29rOiByZ2IoNjYsIDEwMywgMTc4KTtcbiAgLS14OiByZ2IoMCwgMCwgMCk7XG4gIC0tdGVsZWdyYW06IHJnYig0MiwgMTcxLCAyMzgpO1xuICAtLWluc3RhZ3JhbTogI2RkMmE3YjtcbiAgLS1zbXM6IHJnYig1NywgMjU1LCA5MCk7XG4gIC0tZW1haWw6IHZhcigtLWRhcmstZ3JleSk7XG5cbiAgLy8gc2l6ZXNcbiAgLS1yYXRpbzogMS4yNTtcbiAgLS1iYXNlLXNpemU6IDFyZW07XG5cbiAgLS1zcGFjaW5nLXNtLTEyOiBjYWxjKHZhcigtLXNwYWNpbmctc20tMTEpIC8gdmFyKC0tcmF0aW8pKTtcbiAgLS1zcGFjaW5nLXNtLTExOiBjYWxjKHZhcigtLXNwYWNpbmctc20tMTApIC8gdmFyKC0tcmF0aW8pKTtcbiAgLS1zcGFjaW5nLXNtLTEwOiBjYWxjKHZhcigtLXNwYWNpbmctc20tOSkgLyB2YXIoLS1yYXRpbykpO1xuICAtLXNwYWNpbmctc20tOTogY2FsYyh2YXIoLS1zcGFjaW5nLXNtLTgpIC8gdmFyKC0tcmF0aW8pKTtcbiAgLS1zcGFjaW5nLXNtLTg6IGNhbGModmFyKC0tc3BhY2luZy1zbS03KSAvIHZhcigtLXJhdGlvKSk7XG4gIC0tc3BhY2luZy1zbS03OiBjYWxjKHZhcigtLXNwYWNpbmctc20tNikgLyB2YXIoLS1yYXRpbykpO1xuICAtLXNwYWNpbmctc20tNjogY2FsYyh2YXIoLS1zcGFjaW5nLXNtLTUpIC8gdmFyKC0tcmF0aW8pKTtcbiAgLS1zcGFjaW5nLXNtLTU6IGNhbGModmFyKC0tc3BhY2luZy1zbS00KSAvIHZhcigtLXJhdGlvKSk7XG4gIC0tc3BhY2luZy1zbS00OiBjYWxjKHZhcigtLXNwYWNpbmctc20tMykgLyB2YXIoLS1yYXRpbykpO1xuICAtLXNwYWNpbmctc20tMzogY2FsYyh2YXIoLS1zcGFjaW5nLXNtLTIpIC8gdmFyKC0tcmF0aW8pKTtcbiAgLS1zcGFjaW5nLXNtLTI6IGNhbGModmFyKC0tc3BhY2luZy1zbS0xKSAvIHZhcigtLXJhdGlvKSk7XG4gIC0tc3BhY2luZy1zbS0xOiBjYWxjKHZhcigtLWJhc2Utc2l6ZSkgLyB2YXIoLS1yYXRpbykpO1xuXG4gIC0tc3BhY2luZy1iYXNlOiB2YXIoLS1iYXNlLXNpemUpO1xuXG4gIC0tc3BhY2luZy1sZy0xOiBjYWxjKHZhcigtLXNwYWNpbmctYmFzZSkgKiB2YXIoLS1yYXRpbykpO1xuICAtLXNwYWNpbmctbGctMjogY2FsYyh2YXIoLS1zcGFjaW5nLWxnLTEpICogdmFyKC0tcmF0aW8pKTtcbiAgLS1zcGFjaW5nLWxnLTM6IGNhbGModmFyKC0tc3BhY2luZy1sZy0yKSAqIHZhcigtLXJhdGlvKSk7XG4gIC0tc3BhY2luZy1sZy00OiBjYWxjKHZhcigtLXNwYWNpbmctbGctMykgKiB2YXIoLS1yYXRpbykpO1xuICAtLXNwYWNpbmctbGctNTogY2FsYyh2YXIoLS1zcGFjaW5nLWxnLTQpICogdmFyKC0tcmF0aW8pKTtcbiAgLS1zcGFjaW5nLWxnLTY6IGNhbGModmFyKC0tc3BhY2luZy1sZy01KSAqIHZhcigtLXJhdGlvKSk7XG4gIC0tc3BhY2luZy1sZy03OiBjYWxjKHZhcigtLXNwYWNpbmctbGctNikgKiB2YXIoLS1yYXRpbykpO1xuICAtLXNwYWNpbmctbGctODogY2FsYyh2YXIoLS1zcGFjaW5nLWxnLTcpICogdmFyKC0tcmF0aW8pKTtcbiAgLS1zcGFjaW5nLWxnLTk6IGNhbGModmFyKC0tc3BhY2luZy1sZy04KSAqIHZhcigtLXJhdGlvKSk7XG5cbiAgLS1saW5lLWhlaWdodC1zbTogMS4xO1xuICAtLWxpbmUtaGVpZ2h0LWJhc2U6IDEuNDtcbiAgLS1saW5lLWhlaWdodC1tZDogMS41O1xuXG4gIC0tbGV0dGVyLXNwYWNpbmcteHM6IDAuMDRlbTtcbiAgLS1sZXR0ZXItc3BhY2luZy1zbTogMC4wNmVtO1xuICAtLWxldHRlci1zcGFjaW5nLWJhc2U6IDAuMDhlbTtcbiAgLS1sZXR0ZXItc3BhY2luZy1sZzogMC4xM2VtO1xuXG4gIC8vY3VycmVudGx5IGluc3RhbGxlZCAgNDAwLCA1MDAsIDYwMFxuICAtLWZvbnQtaGVhZGluZzogY2FuYWRhLXR5cGUtZ2lic29uLCBzYW5zLXNlcmlmO1xuICAtLWZvbnQtcGFyYWdyYXBoOiBcIkNhcGl0YSBMaWdodFwiLCBzZXJpZjtcbiAgLS1mb250LXBhcmFncmFwaC1ib2xkOiBcIkNhcGl0YSBNZWRpdW1cIiwgc2VyaWY7XG5cbiAgLS1ob3Zlci10cmFuc2l0aW9uLWZhc3Q6IGFsbCAwLjI1cyBlYXNlLWluLW91dDtcbiAgLS1ob3Zlci10cmFuc2l0aW9uOiBhbGwgNTAwbXMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpO1xuXG4gIC0tbmF2LWhlaWdodDogdmFyKC0tc3BhY2luZy1sZy00KTtcblxuICAtLWZvcm0tZmllbGQtaGVpZ2h0OiBjYWxjKHZhcigtLXNwYWNpbmctbGctMikgKyB2YXIoLS1zcGFjaW5nLXNtLTEpKTtcblxuICAtLWJvcmRlci1yYWRpdXM6IHZhcigtLXNwYWNpbmctc20tNyk7XG5cbiAgLS1ib3gtc2hhZG93OiAwIDMwcHggNjBweCByZ2JhKDY4LCA2OCwgNjgsIDAuMyk7XG4gIC0tYm94LXNoYWRvdy1ob3ZlcjogMCA0MHB4IDgwcHggcmdiYSg2OCwgNjgsIDY4LCAwLjYpO1xuXG4gIC0tbmFycm93LWNvbnRhaW5lcjogNzAwcHg7XG4gIC0td2lkZXItY29udGFpbmVyOiA3NSU7XG5cbiAgLS1jdXJzb3ItcG9pbnRlcjogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyB3aWR0aD0nMTgnIGhlaWdodD0nMjUnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyclM0UlM0NnIGZpbGwtcnVsZT0nbm9uemVybycgZmlsbD0nbm9uZSclM0UlM0NwYXRoIGQ9J00xNS4zNDEgOC43MTljLS4zMzYgMC0uNjYyLjA2Ni0uOTY0LjE5MWEyLjUwNSAyLjUwNSAwIDAgMC0yLjQwNi0xLjgyNGMtLjM2MS4wMjctLjY2NC4wNjUtLjk2Ny4xOTFhMi40OTUgMi40OTUgMCAwIDAtLjY0LTEuMDkgMi40OCAyLjQ4IDAgMCAwLTEuNzY2LS43MzJoLS4wMDNjLS4zMDcgMC0uNTk4LjA2My0uODcuMTY2VjIuNzY2QTIuNTA3IDIuNTA3IDAgMCAwIDUuMjIuMjYyYTIuNTA1IDIuNTA1IDAgMCAwLTIuNTAyIDIuNTA0djUuMDI4Yy0uNjI4LS4xNjItMS4yNjEtLjE0MS0xLjc2NC4xMDItLjYuMjktLjk0My44NDItLjk0MyAxLjUxNGwuMDAyIDYuNDEyYy0uMDAxIDIuMzguOTI2IDQuNjIgMi42MSA2LjMwNWE4Ljg1NSA4Ljg1NSAwIDAgMCA2LjMwMyAyLjYxMWM0LjkxNyAwIDguOTE4LTMuOTk5IDguOTItOC45MTh2LTQuNkEyLjUwOSAyLjUwOSAwIDAgMCAxNS4zNCA4LjcyWm0uODcyIDcuMWMtLjAwMSA0LjAxOC0zLjI3IDcuMjg2LTcuMjg3IDcuMjg2YTcuMjMxIDcuMjMxIDAgMCAxLTUuMTQ4LTIuMTMzIDcuMjM0IDcuMjM0IDAgMCAxLTIuMTMyLTUuMTVMMS42NCA5LjM3OWMuMDg4LS4wODQuNTY0LS4xMjIgMS4wNzkuMTQ4djQuNzI2YS44MTYuODE2IDAgMSAwIDEuNjMyIDBWMi43NjVhLjg3MS44NzEgMCAwIDEgMS43NDIgMGwtLjAwMyA4LjAxOGMwIC40NS4zNjYuODE2LjgxNi44MTZoLjAwMmMuNDUgMCAuODE2LS4zNjUuODE2LS44MTZWNy45NTZjMC0uNDc5LjM5MS0uODcuODcyLS44N2guMDAxYS44NjQuODY0IDAgMCAxIC44NjcuODcxbC4wMDEgMi44MjljLjAwMy40NS4zNjcuODEzLjgxNy44MTNoLjAwM2MuNDQ5IDAgLjgxMy0uMzY3LjgxMy0uODE3VjkuNTQzYS44NjIuODYyIDAgMCAxIC4yNTUtLjU3Ljg2NS44NjUgMCAwIDEgLjYxNS0uMjU1aC4wMDNjLjQ3OCAwIC44NjguMzkuODcuODY5bC0uMDAyIDIuNDQzdi4wMDhhLjgxNi44MTYgMCAwIDAgMS42MzIgMHYtLjgyMmEuODY3Ljg2NyAwIDAgMSAuODcyLS44NjdjLjQ3OSAwIC44Ny4zOS44Ny44N3Y0LjZaJyBmaWxsPSclMjMwMDI0MzgnLyUzRSUzQ3BhdGggZD0nTTE2LjIxMyAxNS44MmMtLjAwMSA0LjAxNy0zLjI3IDcuMjg1LTcuMjg3IDcuMjg1YTcuMjMxIDcuMjMxIDAgMCAxLTUuMTQ4LTIuMTMzIDcuMjM0IDcuMjM0IDAgMCAxLTIuMTMyLTUuMTVMMS42NCA5LjM3OWMuMDg4LS4wODQuNTY0LS4xMjIgMS4wNzkuMTQ4djQuNzI2YS44MTYuODE2IDAgMSAwIDEuNjMyIDBWMi43NjVhLjg3MS44NzEgMCAwIDEgMS43NDIgMGwtLjAwMyA4LjAxOGMwIC40NS4zNjYuODE2LjgxNi44MTZoLjAwMmMuNDUgMCAuODE2LS4zNjUuODE2LS44MTZWNy45NTZjMC0uNDc5LjM5MS0uODcuODcyLS44N2guMDAxYS44NjQuODY0IDAgMCAxIC44NjcuODcxbC4wMDEgMi44MjljLjAwMy40NS4zNjcuODEzLjgxNy44MTNoLjAwM2MuNDQ5IDAgLjgxMy0uMzY3LjgxMy0uODE3VjkuNTQzYS44NjIuODYyIDAgMCAxIC4yNTUtLjU3Ljg2NS44NjUgMCAwIDEgLjYxNS0uMjU1aC4wMDNjLjQ3OCAwIC44NjguMzkuODcuODY5bC0uMDAyIDIuNDQzdi4wMDhhLjgxNi44MTYgMCAwIDAgMS42MzIgMHYtLjgyMmEuODY3Ljg2NyAwIDAgMSAuODcyLS44NjdjLjQ3OSAwIC44Ny4zOS44Ny44N3Y0LjZaJyBmaWxsPSclMjMwMDI0MzgnLyUzRSUzQ3BhdGggZD0nTTE2LjIxMyAxNS44MmMtLjAwMSA0LjAxNy0zLjI3IDcuMjg1LTcuMjg3IDcuMjg1YTcuMjMxIDcuMjMxIDAgMCAxLTUuMTQ4LTIuMTMzIDcuMjM0IDcuMjM0IDAgMCAxLTIuMTMyLTUuMTVMMS42NCA5LjM3OWMuMDg4LS4wODQuNTY0LS4xMjIgMS4wNzkuMTQ4djQuNzI2YS44MTYuODE2IDAgMSAwIDEuNjMyIDBWMi43NjVhLjg3MS44NzEgMCAwIDEgMS43NDIgMGwtLjAwMyA4LjAxOGMwIC40NS4zNjYuODE2LjgxNi44MTZoLjAwMmMuNDUgMCAuODE2LS4zNjUuODE2LS44MTZWNy45NTZjMC0uNDc5LjM5MS0uODcuODcyLS44N2guMDAxYS44NjQuODY0IDAgMCAxIC44NjcuODcxbC4wMDEgMi44MjljLjAwMy40NS4zNjcuODEzLjgxNy44MTNoLjAwM2MuNDQ5IDAgLjgxMy0uMzY3LjgxMy0uODE3VjkuNTQzYS44NjIuODYyIDAgMCAxIC4yNTUtLjU3Ljg2NS44NjUgMCAwIDEgLjYxNS0uMjU1aC4wMDNjLjQ3OCAwIC44NjguMzkuODcuODY5bC0uMDAyIDIuNDQzdi4wMDhhLjgxNi44MTYgMCAwIDAgMS42MzIgMHYtLjgyMmEuODY3Ljg2NyAwIDAgMSAuODcyLS44NjdjLjQ3OSAwIC44Ny4zOS44Ny44N3Y0LjZaJyBmaWxsPSclMjNGRkYnLyUzRSUzQy9nJTNFJTNDL3N2ZyUzRVwiKSxcbiAgICBhdXRvO1xuXG4gIC0tdGltZWxpbmUtYm9yZGVyLXdpZHRoOiA2cHg7XG4gIC0tdGltZWxpbmUtY2lyY2xlLXNpemU6IDI0cHg7XG59XG5cbkBtZWRpYSAjeyRzY3JlZW4tc219IHtcbiAgOnJvb3Qge1xuICAgIC0tbmF2LWhlaWdodDogdmFyKC0tc3BhY2luZy1sZy00KTtcbiAgICAtLXRpbWVsaW5lLWJvcmRlci13aWR0aDogMTRweDtcbiAgICAtLXRpbWVsaW5lLWNpcmNsZS1zaXplOiA0NnB4O1xuICB9XG59XG5cbkBtZWRpYSAjeyRzY3JlZW4tbWR9IHtcbiAgOnJvb3Qge1xuICAgIC0tbmF2LWhlaWdodDogdmFyKC0tc3BhY2luZy1sZy01KTtcbiAgfVxufVxuXG5AbWVkaWEgI3skc2NyZWVuLWxnfSB7XG4gIDpyb290IHtcbiAgICAtLW5hdi1oZWlnaHQ6IDY1cHg7XG4gICAgLS10aW1lbGluZS1ib3JkZXItd2lkdGg6IDE2cHg7XG4gICAgLS10aW1lbGluZS1jaXJjbGUtc2l6ZTogNjBweDtcbiAgfVxufVxuXG5AbWVkaWEgI3skc2NyZWVuLWxnLXhsfSB7XG4gIDpyb290IHtcbiAgICAtLW5hdi1oZWlnaHQ6IDcwcHg7XG4gIH1cbn1cblxuLmRhcmstZ3JleSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWRhcmstZ3JleSk7XG4gIGNvbG9yOiB2YXIoLS13aGl0ZSk7XG4gID4gKiB7XG4gICAgY29sb3I6IHZhcigtLXdoaXRlKTtcbiAgfVxufVxuXG4uYmx1ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJsdWUpO1xuICBjb2xvcjogdmFyKC0td2hpdGUpO1xuICA+ICoge1xuICAgIGNvbG9yOiB2YXIoLS13aGl0ZSk7XG4gIH1cbn1cblxuLm9mZi13aGl0ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW9mZi13aGl0ZSk7XG59XG5cbi53aGl0ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXdoaXRlKTtcbn1cbiIsImh0bWwge1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHNjcm9sbC1iZWhhdmlvcjogc21vb3RoO1xuICAvLyBtYWtlIHN1cmUgaW5saW5lIGxpbmtzIG5vdCBnZXR0aW5nIGJlaGluZCBmaXhlZCBuYXYgYmFyXG4gIHNjcm9sbC1wYWRkaW5nLXRvcDogY2FsYyh2YXIoLS1zcGFjaW5nLWxnLTQpICsgdmFyKC0tbmF2LWhlaWdodCkpO1xuICBmb250LXNpemU6IDE3cHg7XG5cbiAgJi5ib2R5LS1ub1Njcm9sbCB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxuXG4gIEBtZWRpYSAjeyRzY3JlZW4tbWQtbGd9IHtcbiAgICBmb250LXNpemU6IDE4cHg7XG4gIH1cblxuICBAbWVkaWEgI3skc2NyZWVuLWxnfSB7XG4gICAgZm9udC1zaXplOiAxOXB4O1xuICB9XG5cbiAgQG1lZGlhICN7JHNjcmVlbi14bH0ge1xuICAgIGZvbnQtc2l6ZTogMjFweDtcbiAgfVxuXG4gIEBtZWRpYSAjeyRzY3JlZW4teHh4bH0ge1xuICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgfVxufVxuXG4qLCAqOmJlZm9yZSwgKjphZnRlciB7XG4gIGJveC1zaXppbmc6IGluaGVyaXQ7XG59XG4iLCIuYm9keSB7XG4gICoge1xuICAgIGN1cnNvcjogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyB3aWR0aD0nMTcnIGhlaWdodD0nMjUnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyclM0UlM0NnIGZpbGwtcnVsZT0nbm9uemVybycgZmlsbD0nbm9uZSclM0UlM0NwYXRoIGQ9J20xLjE5IDEuMTg1IDEzLjczOSAxMi40MzctNS4yMDEgMi4yOTggMi43OTcgNi4zLTEuNjcyLjczOC0xLjY3LjczOS0yLjc5OC02LjMtNS4yIDIuMjk3LjAwNS0xOC41MVpNMS4yMjcgMEExLjIxOSAxLjIxOSAwIDAgMCAuMDA1IDEuMjE4TDAgMTkuNzY4YTEuMjE5IDEuMjE5IDAgMCAwIDEuNzE4IDEuMTE1bDQuMDk4LTEuODA5IDIuMzEgNS4yYTEuMjIzIDEuMjIzIDAgMCAwIDEuNjE0LjYyMWwxLjY3Ni0uNzQgMS42NzctLjc0Yy42MTctLjI3My44OTYtLjk5Mi42MjItMS42MDhsLTIuMzA5LTUuMiA0LjA5OS0xLjgwOWExLjIxNiAxLjIxNiAwIDAgMCAuMzI2LTIuMDE3TDIuMDUuMzE2QTEuMjI4IDEuMjI4IDAgMCAwIDEuMjI3IDBaJyBmaWxsPSclMjNGRkYnLyUzRSUzQ3BhdGggZmlsbD0nJTIzMDAyNDM4JyBkPSdtMS4xOSAxLjE4NSAxMy43MzkgMTIuNDM3LTUuMjAxIDIuMjk4IDIuNzk3IDYuMy0xLjY3Mi43MzgtMS42NzEuNzM5LTIuNzk3LTYuMy01LjIgMi4yOTd6Jy8lM0UlM0MvZyUzRSUzQy9zdmclM0VcIiksXG4gICAgICBkZWZhdWx0O1xuICB9XG5cbiAgOjpzZWxlY3Rpb24ge1xuICAgIGNvbG9yOiB2YXIoLS13aGl0ZSk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tb3JhbmdlKTtcbiAgfVxuXG4gIC8vIHN0aWNreSBmb290ZXI6XG4gIGhlaWdodDogMTAwJTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAmLS1ub1Njcm9sbCB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxuXG4gICYtLWJsYWNrIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ibGFjayk7XG4gICAgY29sb3I6IHZhcigtLXdoaXRlKTtcbiAgfVxuICAvLyByZXNwb25zaXZlIGJyZWFrcG9pbnQgYm94XG4gIC8vICY6YmVmb3JlIHtcbiAgLy8gICBjb250ZW50OiB2YXIoLS1icCwgXCJzbWFsbGVyIHRoYW4geHNcIik7XG4gIC8vICAgcG9zaXRpb246IGZpeGVkO1xuICAvLyAgIHotaW5kZXg6IDk5O1xuICAvLyAgIGJvdHRvbTogMWVtO1xuICAvLyAgIHJpZ2h0OiAxZW07XG4gIC8vICAgY29sb3I6IHZhcigtLWJwLWNvbG9yKTtcbiAgLy8gICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icC1iZy1jb2xvcik7XG4gIC8vICAgYm9yZGVyOiBibGFjayBzb2xpZCAycHg7XG4gIC8vICAgcGFkZGluZzogMC41ZW07XG4gIC8vIH1cbn1cblxuLy9icmVha3BvaW50IHZhcmlhYmxlc1xuQG1lZGlhICN7JHNjcmVlbi14c30ge1xuICA6cm9vdCB7XG4gICAgLS1icDogXCJzY3JlZW4teHNcIjtcbiAgICAtLWJwLWNvbG9yOiBibGFjaztcbiAgICAtLWJwLWJnLWNvbG9yOiB3aGl0ZTtcbiAgfVxufVxuXG5AbWVkaWEgI3skc2NyZWVuLXhzLXNtfSB7XG4gIDpyb290IHtcbiAgICAtLWJwOiBcInNjcmVlbi14cy1zbVwiO1xuICAgIC0tYnAtY29sb3I6IGJsYWNrO1xuICAgIC0tYnAtYmctY29sb3I6IHdoaXRlO1xuICB9XG59XG5cbkBtZWRpYSAjeyRzY3JlZW4tc219IHtcbiAgOnJvb3Qge1xuICAgIC0tYnA6IFwic2NyZWVuLXNtXCI7XG4gICAgLS1icC1jb2xvcjogYmxhY2s7XG4gICAgLS1icC1iZy1jb2xvcjogd2hpdGU7XG4gIH1cbn1cblxuQG1lZGlhICN7JHNjcmVlbi1tZH0ge1xuICA6cm9vdCB7XG4gICAgLS1icDogXCJzY3JlZW4tbWRcIjtcbiAgICAtLWJwLWNvbG9yOiB3aGl0ZTtcbiAgICAtLWJwLWJnLWNvbG9yOiBibGFjaztcbiAgfVxufVxuQG1lZGlhICN7JHNjcmVlbi1tZC1sZ30ge1xuICA6cm9vdCB7XG4gICAgLS1icDogXCJzY3JlZW4tbWQtbGdcIjtcbiAgICAtLWJwLWNvbG9yOiBibGFjaztcbiAgICAtLWJwLWJnLWNvbG9yOiB3aGl0ZTtcbiAgfVxufVxuXG5AbWVkaWEgI3skc2NyZWVuLWxnfSB7XG4gIDpyb290IHtcbiAgICAtLWJwOiBcInNjcmVlbi1sZ1wiO1xuICAgIC0tYnAtY29sb3I6IHdoaXRlO1xuICAgIC0tYnAtYmctY29sb3I6IGJsYWNrO1xuICB9XG59XG5cbkBtZWRpYSAjeyRzY3JlZW4tbGcteGx9IHtcbiAgOnJvb3Qge1xuICAgIC0tYnA6IFwic2NyZWVuLWxnLXhsXCI7XG4gICAgLS1icC1jb2xvcjogd2hpdGU7XG4gICAgLS1icC1iZy1jb2xvcjogYmxhY2s7XG4gIH1cbn1cblxuQG1lZGlhICN7JHNjcmVlbi14bH0ge1xuICA6cm9vdCB7XG4gICAgLS1icDogXCJzY3JlZW4teGxcIjtcbiAgICAtLWJwLWNvbG9yOiBibGFjaztcbiAgICAtLWJwLWJnLWNvbG9yOiB3aGl0ZTtcbiAgfVxufVxuXG5AbWVkaWEgI3skc2NyZWVuLXhsLXh4bH0ge1xuICA6cm9vdCB7XG4gICAgLS1icDogXCJzY3JlZW4teGwteHhsXCI7XG4gICAgLS1icC1jb2xvcjogYmxhY2s7XG4gICAgLS1icC1iZy1jb2xvcjogd2hpdGU7XG4gIH1cbn1cblxuQG1lZGlhICN7JHNjcmVlbi14eGx9IHtcbiAgOnJvb3Qge1xuICAgIC0tYnA6IFwic2NyZWVuLXh4bFwiO1xuICAgIC0tYnAtY29sb3I6IHdoaXRlO1xuICAgIC0tYnAtYmctY29sb3I6IGJsYWNrO1xuICB9XG59XG5AbWVkaWEgI3skc2NyZWVuLXh4eGx9IHtcbiAgOnJvb3Qge1xuICAgIC0tYnA6IFwic2NyZWVuLXh4eGxcIjtcbiAgICAtLWJwLWNvbG9yOiB3aGl0ZTtcbiAgICAtLWJwLWJnLWNvbG9yOiBibGFjaztcbiAgfVxufVxuIiwiKiB7XG4gIC8vIC8qIE5vbiBzdGFuZGFyZCBmb3IgV2ViS2l0ICovXG4gIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XG5cbiAgLXdlYmtpdC1oeXBoZW5zOiBhdXRvO1xuICAtbW96LWh5cGhlbnM6IGF1dG87XG4gIGh5cGhlbnM6IGF1dG87XG59XG5cbmJvZHkge1xuICBjb2xvcjogdmFyKC0tZGFyay1ncmV5KTtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtcGFyYWdyYXBoKTtcbn1cblxuaDEsXG5oMixcbmgzLFxuaDQge1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1oZWFkaW5nKTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtc20pO1xuXG4gIHN0cm9uZyB7XG4gICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtaGVhZGluZyk7XG4gIH1cblxuICAmLmhhcy10ZXh0LWFsaWduLWNlbnRlciB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcblxuICAgIEBtZWRpYSAjeyRzY3JlZW4tbWQtbGd9IHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG4gIH1cbn1cblxuaDEge1xuICBoeXBoZW5zOiBub25lO1xuICBmb250LXdlaWdodDogNjAwO1xuICBmb250LXNpemU6IHZhcigtLXNwYWNpbmctbGctMik7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctc20tMik7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1sZXR0ZXItc3BhY2luZy1zbSk7XG5cbiAgc3Ryb25nIHtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICB9XG5cbiAgQG1lZGlhICN7JHNjcmVlbi1zbX0ge1xuICAgIC0tbGc6IHZhcigtLXNwYWNpbmctbGctMyk7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy1iYXNlKTtcbiAgfVxuXG4gIEBtZWRpYSAjeyRzY3JlZW4tbWR9IHtcbiAgICAtLWxnOiB2YXIoLS1zcGFjaW5nLWxnLTQpO1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctbGctMSk7XG4gICAgZm9udC1zaXplOiB2YXIoLS1zcGFjaW5nLWxnLTMpO1xuICB9XG5cbiAgQG1lZGlhICN7JHNjcmVlbi14bH0ge1xuICAgIC0tbGc6IHZhcigtLXNwYWNpbmctbGctNSk7XG4gICAgZm9udC1zaXplOiB2YXIoLS1zcGFjaW5nLWxnLTQpO1xuICB9XG59XG5cbmgyLFxuaDMsXG5oNCB7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1sZXR0ZXItc3BhY2luZy14cyk7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctc20tOCk7XG5cbiAgc3Ryb25nIHtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICB9XG5cbiAgQG1lZGlhICN7JHNjcmVlbi1zbX0ge1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctc20tNik7XG4gIH1cblxuICBAbWVkaWEgI3skc2NyZWVuLW1kfSB7XG4gICAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2luZy1sZy00KTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLXNtLTIpO1xuICB9XG59XG5cbmgyIHtcbiAgZm9udC1zaXplOiB2YXIoLS1zcGFjaW5nLWxnLTEpO1xufVxuXG5oMyB7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1sZXR0ZXItc3BhY2luZy14cyk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tc3BhY2luZy1iYXNlKTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxucCB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LXBhcmFncmFwaCk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1iYXNlKTtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy1iYXNlKTtcblxuICBAbWVkaWEgI3skc2NyZWVuLXNtfSB7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LW1kKTtcbiAgfVxufVxuXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1wYXJhZ3JhcGgtYm9sZCk7XG59XG5cbmEge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG4iLCJsYWJlbCxcbmxlZ2VuZCxcbmZpZWxkc2V0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctc20tNyk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1sZXR0ZXItc3BhY2luZy1iYXNlKTtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtaGVhZGluZyk7XG4gIGZvbnQtd2VpZ2h0OiA0MDAgIWltcG9ydGFudDtcbiAgY29sb3I6IHZhcigtLW1lZGl1bS1ncmV5KTtcbn1cblxuaW5wdXRbdHlwZT1cImZpbGVcIl0ge1xuICBmb250LXNpemU6IHZhcigtLXNwYWNpbmctc20tMSk7XG4gIGNvbG9yOiB2YXIoLS1tZWRpdW0tZ3JleSk7XG59XG5cbnRleHRhcmVhLFxuaW5wdXRbdHlwZT1cInRleHRcIl0sXG5pbnB1dFt0eXBlPVwiZW1haWxcIl0sXG5pbnB1dFt0eXBlPVwicGFzc3dvcmRcIl0sXG5pbnB1dFt0eXBlPVwidGVsXCJdLFxuc2VsZWN0IHtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy1zbS0yKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XG4gIGJvcmRlcjogc29saWQgMnB4IHZhcigtLWxpZ2h0LWdyZXkpO1xuICBjb2xvcjogdmFyKC0tZGFyay1ncmV5KTtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtaGVhZGluZyk7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1sZXR0ZXItc3BhY2luZy1zbSk7XG4gIHRyYW5zaXRpb246IHZhcigtLWhvdmVyLXRyYW5zaXRpb24pO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblxuICBAbWVkaWEgI3skc2NyZWVuLXNtfSB7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy1iYXNlKTtcbiAgfVxuXG4gICY6Zm9jdXMsXG4gICY6aG92ZXIge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgYm9yZGVyOiBzb2xpZCAycHggdmFyKC0tZGFyay1ncmV5KTtcbiAgfVxufVxuXG5pbnB1dFt0eXBlPVwidGV4dFwiXSxcbmlucHV0W3R5cGU9XCJlbWFpbFwiXSxcbmlucHV0W3R5cGU9XCJwYXNzd29yZFwiXSxcbmlucHV0W3R5cGU9XCJ0ZWxcIl0sXG5zZWxlY3Qge1xuICBtaW4taGVpZ2h0OiB2YXIoLS1mb3JtLWZpZWxkLWhlaWdodCk7XG59XG5cbnNlbGVjdCB7XG4gIHotaW5kZXg6IDE7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgLy90cmlhbmdsZSBkb3duXG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PVVTLUFTQ0lJLCUzQ3N2ZyUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJTIyJTIwd2lkdGglM0QlMjIyOTIuNCUyMiUyMGhlaWdodCUzRCUyMjI5Mi40JTIyJTNFJTNDcGF0aCUyMGZpbGwlM0QlMjIlMjNFODUyMTIlMjIlMjBkJTNEJTIyTTI4NyUyMDY5LjRhMTcuNiUyMDE3LjYlMjAwJTIwMCUyMDAtMTMtNS40SDE4LjRjLTUlMjAwLTkuMyUyMDEuOC0xMi45JTIwNS40QTE3LjYlMjAxNy42JTIwMCUyMDAlMjAwJTIwMCUyMDgyLjJjMCUyMDUlMjAxLjglMjA5LjMlMjA1LjQlMjAxMi45bDEyOCUyMDEyNy45YzMuNiUyMDMuNiUyMDcuOCUyMDUuNCUyMDEyLjglMjA1LjRzOS4yLTEuOCUyMDEyLjgtNS40TDI4NyUyMDk1YzMuNS0zLjUlMjA1LjQtNy44JTIwNS40LTEyLjglMjAwLTUtMS45LTkuMi01LjUtMTIuOHolMjIlMkYlM0UlM0MlMkZzdmclM0VcIik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IHZhcigtLXNwYWNpbmctc20tMikgdG9wIDUwJTtcbiAgYmFja2dyb3VuZC1zaXplOiB2YXIoLS1zcGFjaW5nLXNtLTIpIGF1dG87XG4gIHBhZGRpbmctcmlnaHQ6IHZhcigtLXNwYWNpbmctYmFzZSk7XG59XG5cbi8qIEhpZGUgYXJyb3cgaWNvbiBpbiBJRSBicm93c2VycyAqL1xuc2VsZWN0OjotbXMtZXhwYW5kIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuc2VsZWN0W211bHRpcGxlXSB7XG4gIGJvcmRlcjogc29saWQgMnB4IHZhcigtLWxpZ2h0LWdyZXkpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICBwYWRkaW5nLWxlZnQ6IHZhcigtLXNwYWNpbmctc20tNik7XG5cbiAgb3B0aW9uIHtcbiAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tc3BhY2luZy1zbS0xKTtcbiAgfVxuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgfVxuXG4gICY6bm90KDpkaXNhYmxlZCkgb3B0aW9uIHtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcbiAgICB0cmFuc2l0aW9uOiAxMjBtcyBhbGwgZWFzZS1pbjtcblxuICAgICY6Y2hlY2tlZCB7XG4gICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodmFyKC0tb3JhbmdlKSwgdmFyKC0tb3JhbmdlKSk7XG4gICAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXNwYWNpbmctc20tMyk7XG4gICAgICBjb2xvcjogdmFyKC0td2hpdGUpICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG5cbmlucHV0W3R5cGU9XCJzZWFyY2hcIl0ge1xuICBhcHBlYXJhbmNlOiBub25lO1xufVxuXG4vLyBvbiByYWRpbyBhbmQgY2hlY2tib3hlc1xuZmllbGRzZXQge1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLWxnLTEpO1xufVxuXG5pbnB1dFt0eXBlPVwicmFkaW9cIl0sXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICBvcGFjaXR5OiAwO1xuICBwYWRkaW5nOiAwO1xuICBoZWlnaHQ6IDA7XG4gIHdpZHRoOiAwO1xuXG4gICsgbGFiZWwge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1zcGFjaW5nLWxnLTMpO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tc3BhY2luZy1zbS0xKTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgQG1lZGlhICN7JHNjcmVlbi1zbX0ge1xuICAgICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1zcGFjaW5nLWxnLTEpO1xuICAgIH1cblxuICAgIC8vIFNxdWFyZVxuICAgICY6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgd2lkdGg6IHZhcigtLXNwYWNpbmctbGctMSk7XG4gICAgICBoZWlnaHQ6IHZhcigtLXNwYWNpbmctbGctMSk7XG4gICAgICBib3JkZXI6IHNvbGlkIDJweCB2YXIoLS1tZWRpdW0tZ3JleSk7XG4gICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcbiAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctc20tMSk7XG5cbiAgICAgIEBtZWRpYSAjeyRzY3JlZW4tc219IHtcbiAgICAgICAgd2lkdGg6IHZhcigtLXNwYWNpbmctc20tMSk7XG4gICAgICAgIGhlaWdodDogdmFyKC0tc3BhY2luZy1zbS0xKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBDaGVja2VkXG4gICAgJjphZnRlciB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgei1pbmRleDogMTtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgICB3aWR0aDogdmFyKC0tc3BhY2luZy1zbS0xKTtcbiAgICAgIGhlaWdodDogdmFyKC0tc3BhY2luZy1zbS0xKTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1lZGl1bS1ncmV5KTtcbiAgICAgIHRyYW5zaXRpb246IHZhcigtLWhvdmVyLXRyYW5zaXRpb24pO1xuICAgICAgdG9wOiBjYWxjKCh2YXIoLS1zcGFjaW5nLWxnLTEpIC0gdmFyKC0tc3BhY2luZy1zbS0xKSkgLyAyKTtcbiAgICAgIGxlZnQ6IGNhbGMoKHZhcigtLXNwYWNpbmctbGctMSkgLSB2YXIoLS1zcGFjaW5nLXNtLTEpKSAvIDIpO1xuXG4gICAgICBAbWVkaWEgI3skc2NyZWVuLXNtfSB7XG4gICAgICAgIHdpZHRoOiB2YXIoLS1zcGFjaW5nLXNtLTMpO1xuICAgICAgICBoZWlnaHQ6IHZhcigtLXNwYWNpbmctc20tMyk7XG4gICAgICAgIHRvcDogY2FsYygodmFyKC0tc3BhY2luZy1zbS0xKSAtIHZhcigtLXNwYWNpbmctc20tMykpIC8gMik7XG4gICAgICAgIGxlZnQ6IGNhbGMoKHZhcigtLXNwYWNpbmctc20tMSkgLSB2YXIoLS1zcGFjaW5nLXNtLTMpKSAvIDIpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICY6Y2hlY2tlZCArIGxhYmVsOjphZnRlciB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG5pbnB1dFt0eXBlPVwicmFkaW9cIl0ge1xuICArIGxhYmVsIHtcbiAgICAvLyBDaXJjbGVcbiAgICAmOjpiZWZvcmUge1xuICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICB9XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gICAgfVxuICB9XG59XG5cbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICsgbGFiZWwge1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcbiAgICB9XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgIGNsaXAtcGF0aDogcG9seWdvbigzOCUgNzMlLCA4NyUgMCwgMTAwJSAxMCUsIDQwJSAxMDAlLCAwIDcwJSwgMTElIDU1JSk7XG4gICAgfVxuICB9XG59XG5cbmJ1dHRvbixcbmlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBjb2xvcjogaW5oZXJpdDtcbiAgYm9yZGVyOiBub25lO1xuICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLXNtLTMpIHZhcigtLXNwYWNpbmctYmFzZSk7XG4gIGN1cnNvcjogdmFyKC0tY3Vyc29yLXBvaW50ZXIpO1xuICBvdXRsaW5lOiBpbmhlcml0O1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1oZWFkaW5nKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XG4gIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmctc20tNSk7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIG1pbi1oZWlnaHQ6IHZhcigtLXNwYWNpbmctbGctNCk7XG5cbiAgQG1lZGlhICN7JHNjcmVlbi1tZH0ge1xuICAgIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmctc20tMik7XG4gIH1cbn1cbiIsIi5nZm9ybV93cmFwcGVyIHtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtaGVhZGluZyk7XG5cbiAgcCxcbiAgYSB7XG4gICAgZm9udC1zaXplOiB2YXIoLS1zcGFjaW5nLXNtLTEpO1xuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWhlYWRpbmcpO1xuICAgIGNvbG9yOiB2YXIoLS1tZWRpdW0tZ3JleSk7XG4gIH1cblxuICBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdIHtcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5nZm9ybV9idXR0b24ge1xuICAgIEBpbmNsdWRlIGJ1dHRvbihcbiAgICAgIHZhcigtLW9yYW5nZSksXG4gICAgICB2YXIoLS13aGl0ZSksXG4gICAgICB2YXIoLS1kYXJrLWdyZXkpLFxuICAgICAgdmFyKC0td2hpdGUpXG4gICAgKTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLy8gbXVsdGlwYWdlIGZvcm1cbiAgLmdmb3JtX25leHRfYnV0dG9uLFxuICAuZ2Zvcm1fcHJldmlvdXNfYnV0dG9uIHtcbiAgICBAaW5jbHVkZSBidXR0b24oXG4gICAgICB2YXIoLS1kYXJrLWdyZXkpLFxuICAgICAgdmFyKC0td2hpdGUpLFxuICAgICAgdmFyKC0tYmx1ZSksXG4gICAgICB2YXIoLS13aGl0ZSksXG4gICAgICBzbWFsbCxcbiAgICAgIFwiXCJcbiAgICApO1xuICB9XG59XG5cbi5nZmllbGQge1xuICAmLmljLXRoZW1lLS1wb2xhcm9pZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy1zbS0xKSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5nZm9ybV9maWVsZHMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xufVxuXG4uZ2ZpZWxkX2xhYmVsIHtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy1zbS03KSAhaW1wb3J0YW50O1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtc20pO1xuXG4gIC8vIGN1c3RvbSBjc3MgY2xhc3NcbiAgLmJvbGQgJiB7XG4gICAgZm9udC13ZWlnaHQ6IDYwMCAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8vIFJBRElPIEJVVFRPTlNcblxuLy8gZsO8ciByYWRpbyBidXR0b25zIGFic3RhbmQgenUgbGFiZWxcbi5nZmllbGRfcmFkaW8ge1xuICBsYWJlbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy1zbS0zKSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8vIHJhZGlvIGJ1dHRvbnMgYWxzIEJVVFRPTlMgKHdpZSBhdWYgZG9uYXRpb24pXG4uZ2ZpZWxkLmJ1dHRvbnMge1xuICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcblxuICAuZ2Nob2ljZSB7XG4gICAgQGluY2x1ZGUgcmFkaW9CdXR0b25zO1xuICB9XG5cbiAgLmdpbnB1dF9jb250YWluZXIge1xuICAgIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmctc20tMSk7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy1sZy0yKTtcbiAgfVxuXG4gIC5nZmllbGRfcmFkaW8ge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMSwgMWZyKTtcbiAgICBnYXA6IHZhcigtLXNwYWNpbmctc20tMik7XG4gIH1cblxuICAmX190d29Db2x1bW5zIHtcbiAgICAuZ2ZpZWxkX3JhZGlvIHtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDEsIDFmcik7XG4gICAgICBAbWVkaWEgI3skc2NyZWVuLXNtfSB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJl9fdGhyZWVDb2x1bW5zIHtcbiAgICAuZ2ZpZWxkX3JhZGlvIHtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIDFmcik7XG4gICAgfVxuICB9XG5cbiAgJl9fZm91ckNvbHVtbnMge1xuICAgIC5nZmllbGRfcmFkaW8ge1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNCwgMWZyKTtcbiAgICB9XG4gIH1cbn1cblxuLy8gY2xhc3MgZm9yIHdoZXJlIHRoZSBmb3JtIG9ubHkgY29udGFpbnMgcmFkaW8gYnV0dG9ucyB3aGljaCBzaG91bGQgbG9vayBsaWtlIGJ1dHRvbnMgd2l0aG91dCBmb3JtIHN1Ym1pdCBidXR0b25cbi5idXR0b25zRm9ybSB7XG4gICZfd3JhcHBlciB7XG4gICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5nY2hvaWNlIHtcbiAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIH1cblxuICAuZ2ZpZWxkLWNob2ljZS1pbnB1dCB7XG4gICAgQGluY2x1ZGUgaGlkZS1yYWRpby1idXR0b25zO1xuXG4gICAgJjpjaGVja2VkICsgbGFiZWwge1xuICAgICAgQGluY2x1ZGUgYnV0dG9uKHZhcigtLW9yYW5nZSksIHZhcigtLXdoaXRlKSwgdmFyKC0tYmx1ZSksIHZhcigtLXdoaXRlKSk7XG4gICAgfVxuICB9XG5cbiAgLmdmb3JtLWZpZWxkLWxhYmVsIHtcbiAgICBAaW5jbHVkZSBidXR0b24oXG4gICAgICB2YXIoLS1kYXJrLWdyZXkpLFxuICAgICAgdmFyKC0td2hpdGUpLFxuICAgICAgdmFyKC0tb3JhbmdlKSxcbiAgICAgIHZhcigtLXdoaXRlKVxuICAgICk7XG4gICAgYm94LXNoYWRvdzogdmFyKC0tYm94LXNoYWRvdyk7XG4gICAgZm9udC1zaXplOiB2YXIoLS1zcGFjaW5nLWxnLTEpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZ2Zvcm1fZm9vdGVyIHtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmdmb3JtX2J1dHRvbiB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICAgIGNsaXA6IHJlY3QoMXB4LCAxcHgsIDFweCwgMXB4KTtcbiAgICB3aWR0aDogMXB4O1xuICAgIGhlaWdodDogMXB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIH1cbn1cblxuLy9saW5lIGFjcm9zc1xuLmdzZWN0aW9uIHtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkIHZhcigtLWxpZ2h0LWdyZXkpO1xuICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tc3BhY2luZy1zbS0xKTtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy1sZy0xKTtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi8vIGZpbGUgdXBsb2FkXG4uZ2lucHV0X2NvbnRhaW5lcl9maWxldXBsb2FkIHtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy1sZy0xKTtcbn1cblxuLy8gZmlsZSB1cGxvYWQgZGVzY3JpcHRpb25cbi5nZm9ybV9maWxldXBsb2FkX3J1bGVzIHtcbiAgZm9udC1zaXplOiB2YXIoLS1zcGFjaW5nLXNtLTIpO1xufVxuXG4vLyBjb25zZW50IGNoZWNrYm94XG4uZ2ZpZWxkX2NvbnNlbnRfbGFiZWwge1xuICBmb250LXNpemU6IGNhbGMoMC45ICogdmFyKC0tc3BhY2luZy1zbS0xKSkgIWltcG9ydGFudDtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXNtKTtcblxuICBhIHtcbiAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgZm9udC13ZWlnaHQ6IGluaGVyaXQ7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgdGV4dC11bmRlcmxpbmUtb2Zmc2V0OiAycHg7XG4gICAgdGV4dC1kZWNvcmF0aW9uLXRoaWNrbmVzczogMnB4O1xuICAgIGNvbG9yOiB2YXIoLS1kYXJrLWdyZXkpO1xuICAgIGxldHRlci1zcGFjaW5nOiB2YXIoLS1sZXR0ZXItc3BhY2luZy1zbSk7XG4gIH1cbn1cblxuLy8gaW1hZ2UgY2hvaWNlcyByYWRpbyBidXR0b25zICYgY2hlY2tib3hlcyAocGx1Z2luKVxuLmltYWdlLWNob2ljZXMtZmllbGQge1xuICBsZWdlbmQge1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctc20tMSk7XG4gIH1cblxuICAvLyBkZWZhdWx0IHNldHRpbmcgdHdvIGNvbHVtbnNcbiAgLmdmaWVsZF9yYWRpbyxcbiAgLmdmaWVsZF9jaGVja2JveCB7XG4gICAgZGlzcGxheTogZ3JpZCAhaW1wb3J0YW50O1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7XG4gICAgZ2FwOiB2YXIoLS1zcGFjaW5nLXNtLTMpO1xuICB9XG5cbiAgLy8gaWYgY2xhc3MgJ3RocmVlJyBpbiBmb3JtIGlzIHNldCwgbWFrZSB0aHJlZSBjb2x1bW5zXG4gICYudGhyZWUgLmdmaWVsZF9yYWRpbyxcbiAgJi50aHJlZSAuZ2ZpZWxkX2NoZWNrYm94IHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgzLCAxZnIpO1xuICB9XG5cbiAgLy8gaWYgY2xhc3MgJ2ZpdmUnIGluIGZvcm0gaXMgc2V0LCBnZXQgZmlyc3QgdHdvIGVsZW1lbnRzIG9uIGZpcnN0IGxpbmUgYW5kIGxhc3QgdGhyZWUgb24gc2Vjb25kIGxpbmVcbiAgJi5maXZlIHtcbiAgICAuZ2ZpZWxkX3JhZGlvLFxuICAgIC5nZmllbGRfY2hlY2tib3gge1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNiwgMWZyKTtcbiAgICAgIGdyaWQtdGVtcGxhdGUtcm93czogYXV0byAxZnI7XG4gICAgfVxuXG4gICAgLmltYWdlLWNob2ljZXMtY2hvaWNlLmdjaG9pY2U6bnRoLWNoaWxkKC1uICsgMikge1xuICAgICAgZ3JpZC1jb2x1bW46IHNwYW4gMztcbiAgICB9XG5cbiAgICAuaW1hZ2UtY2hvaWNlcy1jaG9pY2UuZ2Nob2ljZTpudGgtbGFzdC1jaGlsZCgtbiArIDMpIHtcbiAgICAgIGdyaWQtY29sdW1uOiBzcGFuIDI7XG4gICAgfVxuICB9XG5cbiAgLmltYWdlLWNob2ljZXMtY2hvaWNlLmdjaG9pY2Uge1xuICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmdmaWVsZC1jaG9pY2UtaW5wdXQge1xuICAgIEBpbmNsdWRlIGhpZGUtcmFkaW8tYnV0dG9ucztcbiAgfVxuXG4gIC5nZm9ybS1maWVsZC1sYWJlbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5pbWFnZS1jaG9pY2VzLWNob2ljZSB7XG4gIGJvcmRlcjogc29saWQgM3B4IHZhcigtLWRhcmstZ3JleSkgIWltcG9ydGFudDtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XG4gIHRyYW5zaXRpb246IHZhcigtLWhvdmVyLXRyYW5zaXRpb24tZmFzdCk7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZGFyay1ncmV5KTtcbiAgICAvLyB0ZXh0XG4gICAgaDIsXG4gICAgcCxcbiAgICAuaW1hZ2UtY2hvaWNlcy1jaG9pY2UtdGV4dCB7XG4gICAgICBjb2xvcjogdmFyKC0td2hpdGUpO1xuICAgIH1cbiAgfVxufVxuXG4uaW1hZ2UtY2hvaWNlcy1jaG9pY2Utc2VsZWN0ZWQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1kYXJrLWdyZXkpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcblxuICAvLyB0ZXh0XG4gIGgyLFxuICBwLFxuICAuaW1hZ2UtY2hvaWNlcy1jaG9pY2UtdGV4dCB7XG4gICAgY29sb3I6IHZhcigtLXdoaXRlKSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5pbWFnZS1jaG9pY2VzLWNob2ljZS1pbWFnZS13cmFwIHtcbiAgQGluY2x1ZGUgYXNwZWN0LXJhdGlvKDEsIDEpO1xuICBoZWlnaHQ6IDEwMCUgIWltcG9ydGFudDtcbiAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XG59XG5cbi8vIGlmIGltYWdlIHNldHRpbmcgcG9sYXJvaWQgaXMgY2hvc2VuLCByZXNldCBjb2RlIHdyaXR0ZW4gYW55d2hlcmUgZWxzZSBmb3IgY2hlY2tib3hlc1xuLmltYWdlLWNob2ljZXMtZmllbGQge1xuICAmLmljLXRoZW1lLS1wb2xhcm9pZCB7XG4gICAgLmdmb3JtLWZpZWxkLWxhYmVsIHtcbiAgICAgIHBhZGRpbmctdG9wOiB2YXIoLS1zcGFjaW5nLXNtLTMpICFpbXBvcnRhbnQ7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tc3BhY2luZy1zbS0zKSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5pbWFnZS1jaG9pY2VzLWNob2ljZS1pbWFnZS13cmFwIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctc20tMik7XG4gICAgfVxuXG4gICAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdICsgbGFiZWw6YWZ0ZXIsXG4gICAgaW5wdXRbdHlwZT1cInJhZGlvXCJdICsgbGFiZWw6YWZ0ZXIge1xuICAgICAgY2xpcC1wYXRoOiB1bnNldDtcbiAgICAgIGxlZnQ6IGF1dG87XG4gICAgICByaWdodDogdmFyKC0tc3BhY2luZy1zbS0xMCk7XG4gICAgICB0b3A6IHZhcigtLXNwYWNpbmctc20tMTApO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApIHNjYWxlKDAuOCkgIWltcG9ydGFudDtcbiAgICAgIG9wYWNpdHk6IDEgIWltcG9ydGFudDtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13aGl0ZSk7XG4gICAgICBib3JkZXItY29sb3I6IHZhcigtLWRhcmstZ3JleSk7XG4gICAgICBib3JkZXItd2lkdGg6IDNweDtcbiAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgICB3aWR0aDogdmFyKC0tc3BhY2luZy1sZy00KTtcbiAgICAgIGhlaWdodDogdmFyKC0tc3BhY2luZy1sZy00KTtcbiAgICB9XG5cbiAgICBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCArIGxhYmVsOmFmdGVyLFxuICAgIGlucHV0W3R5cGU9XCJyYWRpb1wiXTpjaGVja2VkICsgbGFiZWw6YWZ0ZXIge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApIHNjYWxlKDEpICFpbXBvcnRhbnQ7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB2YXIoLS1pYy1zZWxlY3RlZC1pY29uKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWRhcmstZ3JleSk7XG4gICAgfVxuXG4gICAgLmltYWdlLWNob2ljZXMtY2hvaWNlLXRleHQge1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIGNvbG9yOiB2YXIoLS1tZWRpdW0tZ3JleSkgIWltcG9ydGFudDtcbiAgICAgIGxldHRlci1zcGFjaW5nOiB2YXIoLS1sZXR0ZXItc3BhY2luZy1iYXNlKTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDAgIWltcG9ydGFudDtcbiAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWhlYWRpbmcpICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLmltYWdlLWNob2ljZXMtY2hvaWNlLXNlbGVjdGVkIHtcbiAgICAgIGgyLFxuICAgICAgcCxcbiAgICAgIC5pbWFnZS1jaG9pY2VzLWNob2ljZS10ZXh0IHtcbiAgICAgICAgY29sb3I6IHZhcigtLW1lZGl1bS1ncmV5KSAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cblxuICAgIC5nZm9ybS1maWVsZC1sYWJlbCB7XG4gICAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuXG4uZ2Zvcm1faGlkZGVuLFxuLmdmaWVsZF92aXNpYmlsaXR5X2hpZGRlbiB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8vIGlmIGhpZGRlbiBsYWJlbCBpcyB0aWNrZWQgdGhhbiBoaWRlIGxhYmVsXG4uaGlkZGVuX2xhYmVsIC5nZmllbGRfbGFiZWwge1xuICBib3JkZXI6IDA7XG4gIGNsaXA6IHJlY3QoMXB4LCAxcHgsIDFweCwgMXB4KTtcbiAgLXdlYmtpdC1jbGlwLXBhdGg6IGluc2V0KDUwJSk7XG4gIGNsaXAtcGF0aDogaW5zZXQoNTAlKTtcbiAgaGVpZ2h0OiAxcHg7XG4gIG1hcmdpbjogLTFweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZzogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMXB4O1xuICB3b3JkLXdyYXA6IG5vcm1hbCAhaW1wb3J0YW50O1xufVxuXG4udWktZGF0ZXBpY2tlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXdoaXRlKTtcbiAgYm94LXNoYWRvdzogdmFyKC0tYm94LXNoYWRvdyk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO1xuICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLXNtLTIpO1xuXG4gIC51aS1kYXRlcGlja2VyLXByZXYsXG4gIC51aS1kYXRlcGlja2VyLW5leHQge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tc3BhY2luZy1zbS0xKTtcbiAgICBmb250LWZhbWlseTogdmFyKC0tZm9udC1oZWFkaW5nKTtcbiAgICBjb2xvcjogdmFyKC0tbWVkaXVtLWdyZXkpO1xuICB9XG5cbiAgLnVpLWRhdGVwaWNrZXItbmV4dCB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICB9XG5cbiAgLnVpLWRhdGVwaWNrZXItdGl0bGUge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmctYmFzZSk7XG5cbiAgICBzZWxlY3Qge1xuICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAudWktZGF0ZXBpY2tlci11bnNlbGVjdGFibGUge1xuICAgIGNvbG9yOiB2YXIoLS1saWdodC1ncmV5KTtcbiAgfVxuXG4gIHRoIHtcbiAgICBmb250LXNpemU6IHZhcigtLXNwYWNpbmctc20tMSk7XG4gICAgbWluLXdpZHRoOiB2YXIoLS1zcGFjaW5nLWxnLTMpO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBoZWlnaHQ6IHZhcigtLXNwYWNpbmctbGctMik7XG4gICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtaGVhZGluZyk7XG4gICAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWxldHRlci1zcGFjaW5nLXNtKTtcbiAgICBjb2xvcjogdmFyKC0tYmxhY2spO1xuICB9XG5cbiAgdGQge1xuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWhlYWRpbmcpO1xuICAgIG1pbi13aWR0aDogdmFyKC0tc3BhY2luZy1sZy0yKTtcbiAgICBoZWlnaHQ6IHZhcigtLXNwYWNpbmctbGctMik7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cbiAgICBhIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1tZWRpdW0tZ3JleSk7XG5cbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgY29sb3I6IHZhcigtLW9yYW5nZSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIFZBTElEQVRJT05cblxuLy8gZmllbGRzIGFkZGVkIGJ5IGdmIGFzIGhvbmV5cG90c1xuLmdmaWVsZF9yZXF1aXJlZCB7XG4gIGNvbG9yOiB2YXIoLS1kYXJrLWdyZXkpICFpbXBvcnRhbnQ7XG4gIGZvbnQtc2l6ZTogdmFyKC0tc3BhY2luZy1zbS0xKSAhaW1wb3J0YW50O1xufVxuLmdmb3JtX3ZhbGlkYXRpb25fY29udGFpbmVyIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgbGVmdDogLTkwMDBweDtcbn1cblxuLmdmb3JtX3ZhbGlkYXRpb25fZXJyb3JzIHtcbiAgYmFja2dyb3VuZDogbm9uZSAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLXNtLTEpICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmctc20tMSkgIWltcG9ydGFudDtcbiAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbn1cbi5nZm9ybV9zdWJtaXNzaW9uX2Vycm9yIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZXJyb3IpO1xuICBjb2xvcjogdmFyKC0td2hpdGUpICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctc20tMykgIWltcG9ydGFudDtcbiAgZm9udC1zaXplOiB2YXIoLS1zcGFjaW5nLWJhc2UpICFpbXBvcnRhbnQ7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1zbSkgIWltcG9ydGFudDtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctc20tMik7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5nZm9ybS1pY29uLS1jaXJjbGUtZXJyb3Ige1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5nZmllbGRfZXJyb3Ige1xuICBbYXJpYS1pbnZhbGlkPVwidHJ1ZVwiXSB7XG4gICAgYm9yZGVyOiBzb2xpZCAycHggdmFyKC0tb3JhbmdlKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgbGFiZWwsXG4gIGxlZ2VuZCB7XG4gICAgY29sb3I6IGluaGVyaXQgIWltcG9ydGFudDtcbiAgfVxufVxuXG4uZ2ZpZWxkX3ZhbGlkYXRpb25fbWVzc2FnZSB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tc3BhY2luZy1zbS0xKSAhaW1wb3J0YW50O1xuICBjb2xvcjogdmFyKC0tZXJyb3IpICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQ6IG5vbmUgIWltcG9ydGFudDtcbiAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLmdmb3JtX3JlcXVpcmVkX2xlZ2VuZCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICBjbGlwOiByZWN0KDFweCwgMXB4LCAxcHgsIDFweCk7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMXB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuIiwiQG1peGluIHNpdGUtY29udGFpbmVyKCkge1xuICBwYWRkaW5nLWxlZnQ6IDN2dztcbiAgcGFkZGluZy1yaWdodDogM3Z3O1xuXG4gIEBtZWRpYSAjeyRzY3JlZW4tbWR9IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDV2dztcbiAgICBwYWRkaW5nLXJpZ2h0OiA1dnc7XG4gIH1cblxuICBAbWVkaWEgI3skc2NyZWVuLXhsfSB7XG4gICAgcGFkZGluZy1sZWZ0OiAxMHZ3O1xuICAgIHBhZGRpbmctcmlnaHQ6IDEwdnc7XG4gIH1cbiAgQG1lZGlhICN7JHNjcmVlbi14eGx9IHtcbiAgICBwYWRkaW5nLWxlZnQ6IGNhbGMoKDEwMHZ3IC0gMTYwMHB4KSAvIDIpO1xuICAgIHBhZGRpbmctcmlnaHQ6IGNhbGMoKDEwMHZ3IC0gMTYwMHB4KSAvIDIpO1xuICB9XG59XG5cbkBtaXhpbiBmdWxsLXdpZHRoKCkge1xuICBtYXJnaW4tbGVmdDogY2FsYyg1MCUgLSA1MHZ3KTtcbiAgbWFyZ2luLXJpZ2h0OiBjYWxjKDUwJSAtIDUwdncpO1xufVxuXG5AbWl4aW4gbmFycm93LWNvbnRhaW5lcigpIHtcbiAgbWF4LXdpZHRoOiB2YXIoLS1uYXJyb3ctY29udGFpbmVyKTtcbiAgbWFyZ2luLWxlZnQ6IDA7XG5cbiAgLy8gb3V0ZXIgY29udGFpbmVyIGlzIDgwdncgd2lkZSwgdGFrZSBpdCB0byB0aGUgbGVmdCBhIGJpdCA9IDcwdndcbiAgQG1lZGlhICN7JHNjcmVlbi14bH0ge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKCg3MHZ3IC0gdmFyKC0tbmFycm93LWNvbnRhaW5lcikpIC8gMik7XG4gIH1cblxuICAvLyBvdXRlciBjb250YWluZXIgaXMgMTYwMHB4IHdpZGUsIHRha2UgaXQgdG8gdGhlIGxlZnQgYSBiaXQgPSAxMzAwcHhcbiAgQG1lZGlhICN7JHNjcmVlbi14eGx9IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYygoMTMwMHB4IC0gdmFyKC0tbmFycm93LWNvbnRhaW5lcikpIC8gMik7XG4gIH1cbn1cblxuQG1peGluIHBhZGRpbmctYmxvY2soJGxnOiBcIlwiKSB7XG4gIHBhZGRpbmctdG9wOiB2YXIoLS1zcGFjaW5nLWxnLTIpO1xuICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tc3BhY2luZy1sZy0yKTtcblxuICBAbWVkaWEgI3skc2NyZWVuLW1kfSB7XG4gICAgcGFkZGluZy10b3A6IHZhcigtLXNwYWNpbmctbGctNCk7XG4gICAgcGFkZGluZy1ib3R0b206IHZhcigtLXNwYWNpbmctbGctNCk7XG4gIH1cblxuICBAaWYgJGxnID09IGxnIHtcbiAgICBwYWRkaW5nLXRvcDogdmFyKC0tc3BhY2luZy1sZy0zKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tc3BhY2luZy1sZy0zKTtcblxuICAgIEBtZWRpYSAjeyRzY3JlZW4tbWR9IHtcbiAgICAgIHBhZGRpbmctdG9wOiB2YXIoLS1zcGFjaW5nLWxnLTYpO1xuICAgICAgcGFkZGluZy1ib3R0b206IHZhcigtLXNwYWNpbmctbGctNik7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBtYXJnaW4tYmxvY2soKSB7XG4gIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmctYmFzZSk7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctYmFzZSk7XG5cbiAgQG1lZGlhICN7JHNjcmVlbi14cy1zbX0ge1xuICAgIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmctbGctMik7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy1sZy0yKTtcbiAgfVxuXG4gIEBtZWRpYSAjeyRzY3JlZW4tbWQtbGd9IHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjaW5nLWxnLTMpO1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctbGctMyk7XG4gIH1cblxuICBAbWVkaWEgI3skc2NyZWVuLXhsfSB7XG4gICAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2luZy1sZy00KTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLWxnLTQpO1xuICB9XG59XG5cbkBtaXhpbiBwYWRkaW5nLXRleHQtYmxvY2sge1xuICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLXNtLTEpO1xuXG4gIEBtZWRpYSAjeyRzY3JlZW4tc219IHtcbiAgICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLWxnLTEpIHZhcigtLXNwYWNpbmctbGctMyk7XG4gIH1cblxuICBAbWVkaWEgI3skc2NyZWVuLW1kfSB7XG4gICAgcGFkZGluZzogdmFyKC0tc3BhY2luZy1sZy0yKSB2YXIoLS1zcGFjaW5nLWxnLTQpO1xuICB9XG5cbiAgQG1lZGlhICN7JHNjcmVlbi1sZ30ge1xuICAgIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctbGctMykgdmFyKC0tc3BhY2luZy1sZy02KTtcbiAgfVxufVxuXG5AbWl4aW4gaGlkZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICBjbGlwOiByZWN0KDFweCwgMXB4LCAxcHgsIDFweCk7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMXB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4vLyByZXNldCBmb3IgZ3V0ZW5iZXJnIGVkaXRvciB3aGljaCBhcHBsaWVzIHRoZSBmbGV4IG9uIHRoZSB3cm9uZyBlbGVtZW50IGluIHRleHR0ZXh0IGJsb2NrIC0gZmxleCBuZWVkcyB0byBiZSByZW1vdmVkXG5AbWl4aW4gdHdvLWNvbHVtbnMtZmxleCgkd2lkdGg6IGVxdWFsLCAkcmVzZXQ6IFwiXCIpIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXG4gIEBtZWRpYSAjeyRzY3JlZW4tbWR9IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICB9XG5cbiAgQGlmICR3aWR0aCA9PSBlcXVhbCB7XG4gICAgPiAqOmZpcnN0LWNoaWxkLFxuICAgID4gKjpudGgtY2hpbGQoMikge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgPiAqOmZpcnN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctbGctMSk7XG4gICAgfVxuXG4gICAgQG1lZGlhICN7JHNjcmVlbi1tZH0ge1xuICAgICAgPiAqOmZpcnN0LWNoaWxkLFxuICAgICAgPiAqOm50aC1jaGlsZCgyKSB7XG4gICAgICAgIHdpZHRoOiA0OCU7XG4gICAgICB9XG5cbiAgICAgID4gKjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQG1lZGlhICN7JHNjcmVlbi1tZC1sZ30ge1xuICAgICAgPiAqOmZpcnN0LWNoaWxkLFxuICAgICAgPiAqOm50aC1jaGlsZCgyKSB7XG4gICAgICAgIHdpZHRoOiA0NyU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy9mb3IgZ3V0ZW5iZXJnIGVkaXRvciB3aGljaCBhcHBsaWVzIHRoZSBmbGV4IG9uIHRoZSB3cm9uZyBlbGVtZW50IGluIHRleHR0ZXh0XG4gIEBpZiAkcmVzZXQgPT0gcmVzZXQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgID4gKjpmaXJzdC1jaGlsZCxcbiAgICA+ICo6bnRoLWNoaWxkKDIpIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gZ3JpZC10ZWFzZSB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtcm93czogYXV0bztcbiAgZ3JpZC1yb3ctZ2FwOiB2YXIoLS1zcGFjaW5nLWxnLTIpO1xuICBncmlkLWNvbHVtbi1nYXA6IHZhcigtLXNwYWNpbmctbGctMik7XG4gIC8vZm9yIGZpcmVmb3ggbm90IHRvIGV4cGFuZCBncmlkIGVsZW1lbnRzOlxuICBtaW4td2lkdGg6IDA7XG5cbiAgQG1lZGlhICN7JHNjcmVlbi1tZH0ge1xuICAgIGdyaWQtcm93LWdhcDogdmFyKC0tc3BhY2luZy1sZy0yKTtcbiAgICBncmlkLWNvbHVtbi1nYXA6IHZhcigtLXNwYWNpbmctbGctMik7XG4gIH1cblxuICBAbWVkaWEgI3skc2NyZWVuLWxnfSB7XG4gICAgZ3JpZC1yb3ctZ2FwOiB2YXIoLS1zcGFjaW5nLWxnLTMpO1xuICAgIGdyaWQtY29sdW1uLWdhcDogdmFyKC0tc3BhY2luZy1sZy0zKTtcbiAgfVxuXG4gIEBtZWRpYSAjeyRzY3JlZW4teGx9IHtcbiAgICBncmlkLXJvdy1nYXA6IHZhcigtLXNwYWNpbmctbGctNCk7XG4gICAgZ3JpZC1jb2x1bW4tZ2FwOiB2YXIoLS1zcGFjaW5nLWxnLTQpO1xuICB9XG59XG5cbkBtaXhpbiBpbWFnZS1jYXB0aW9uKCkge1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1wYXJhZ3JhcGgtYm9sZCk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tc3BhY2luZy1zbS0xKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWxldHRlci1zcGFjaW5nLXNtKTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2luZy1zbS00KTtcbn1cblxuQG1peGluIGFzcGVjdC1yYXRpbygkaGVpZ2h0LCAkd2lkdGgpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nLXRvcDogY2FsYygoJGhlaWdodCAvICR3aWR0aCkgKiAxMDAlKTtcbiAgfVxuXG4gIGltZyxcbiAgc3ZnLFxuICBpZnJhbWUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICB9XG59XG5cbkBtaXhpbiBwYWdlLWJhY2stbGluaygkcG9zaXRpb246IHRvcCkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nLWxlZnQ6IHZhcigtLXNwYWNpbmctYmFzZSk7XG4gIGNvbG9yOiB2YXIoLS1kYXJrLWdyZXkpO1xuICBmb250LXNpemU6IHZhcigtLXNwYWNpbmctc20tMSk7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWhlYWRpbmcpO1xuXG4gIEBpZiAkcG9zaXRpb24gPT0gdG9wIHtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLWJhc2UpO1xuXG4gICAgQG1lZGlhICN7JHNjcmVlbi14bC14eGx9IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoY2FsYyh2YXIoLS1zcGFjaW5nLXNtLTEpICsgdmFyKC0tc3BhY2luZy1zbS01KSkpO1xuICAgIH1cbiAgfVxuXG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogNyU7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vLi4vaW1nL2Fycm93LWJhY2suc3ZnXCIpO1xuICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICB3aWR0aDogdmFyKC0tc3BhY2luZy1zbS0yKTtcbiAgICBoZWlnaHQ6IHZhcigtLXNwYWNpbmctc20tMik7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgIHRyYW5zaXRpb246IHZhcigtLWhvdmVyLXRyYW5zaXRpb24pO1xuICB9XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgJjpiZWZvcmUge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0zcHgpO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gaW1hZ2UtZml4ZWQtYmFja2dyb3VuZCgkcG9zaXRpb246IGNlbnRlcikge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHotaW5kZXg6IC0yO1xuICB0b3A6IGNhbGMoMiAqIHZhcigtLW5hdi1oZWlnaHQpKTtcbiAgbGVmdDogMDtcbiAgYm90dG9tOiAwO1xuICByaWdodDogMDtcbiAgd2lkdGg6IDEwMHZ3O1xuXG4gIEBtZWRpYSAjeyRzY3JlZW4tc219IHtcbiAgICB0b3A6IHZhcigtLW5hdi1oZWlnaHQpO1xuICB9XG5cbiAgaW1nIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB6LWluZGV4OiAtMjtcbiAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICBvYmplY3QtcG9zaXRpb246ICRwb3NpdGlvbjtcbiAgfVxufVxuXG5AbWl4aW4gYnV0dG9uKFxuICAkYmctY29sb3IsXG4gICRjb2xvcixcbiAgJGhvdmVyLWJnLWNvbG9yLFxuICAkaG92ZXItY29sb3IsXG4gICRzbTogXCJcIixcbiAgJGFycm93OiBcIlwiXG4pIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmctY29sb3IgIWltcG9ydGFudDtcbiAgY29sb3I6ICRjb2xvciAhaW1wb3J0YW50O1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcbiAgYm9yZGVyOiBub25lO1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1oZWFkaW5nKTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBsaW5lLWhlaWdodDogMTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWxldHRlci1zcGFjaW5nLWJhc2UpO1xuICB0cmFuc2l0aW9uOiB2YXIoLS1ob3Zlci10cmFuc2l0aW9uLWZhc3QpO1xuICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLXNtLTIpIHZhcigtLXNwYWNpbmctc20tMikgIWltcG9ydGFudDtcbiAgY3Vyc29yOiB2YXIoLS1jdXJzb3ItcG9pbnRlcik7XG5cbiAgQG1lZGlhICN7JHNjcmVlbi1zbX0ge1xuICAgIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctc20tMSkgdmFyKC0tc3BhY2luZy1sZy0yKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgQGlmICRhcnJvdyA9PSBhcnJvdyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLXNwYWNpbmctbGctNCkgIWltcG9ydGFudDtcblxuICAgIEBtZWRpYSAjeyRzY3JlZW4tc219IHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLXNwYWNpbmctbGctNCkgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICByaWdodDogdmFyKC0tc3BhY2luZy1zbS0xKTtcbiAgICAgIHRvcDogMjglO1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vLi4vaW1nL2Fycm93LnN2Z1wiKTtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICB3aWR0aDogdmFyKC0tc3BhY2luZy1iYXNlKTtcbiAgICAgIGhlaWdodDogdmFyKC0tc3BhY2luZy1iYXNlKTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICAgIHRyYW5zaXRpb246IHZhcigtLWhvdmVyLXRyYW5zaXRpb24tZmFzdCk7XG5cbiAgICAgIEBtZWRpYSAjeyRzY3JlZW4teHMtc219IHtcbiAgICAgICAgdG9wOiAzMiU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGlmICRzbSA9PSBzbWFsbCB7XG4gICAgcGFkZGluZzogdmFyKC0tc3BhY2luZy1zbS0zKSB2YXIoLS1zcGFjaW5nLXNtLTEpO1xuXG4gICAgQG1lZGlhICN7JHNjcmVlbi1zbX0ge1xuICAgICAgcGFkZGluZzogdmFyKC0tc3BhY2luZy1zbS0zKSB2YXIoLS1zcGFjaW5nLXNtLTEpO1xuICAgIH1cblxuICAgIEBpZiAkYXJyb3cgPT0gYXJyb3cge1xuICAgICAgcGFkZGluZy1yaWdodDogdmFyKC0tc3BhY2luZy1sZy0zKTtcblxuICAgICAgQG1lZGlhICN7JHNjcmVlbi1zbX0ge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLWxnLTMpO1xuICAgICAgfVxuXG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgcmlnaHQ6IHZhcigtLXNwYWNpbmctc20tMik7XG4gICAgICAgIHRvcDogMjglO1xuICAgICAgICB3aWR0aDogdmFyKC0tc3BhY2luZy1zbS0xKTtcbiAgICAgICAgaGVpZ2h0OiB2YXIoLS1zcGFjaW5nLXNtLTEpO1xuXG4gICAgICAgIEBtZWRpYSAjeyRzY3JlZW4teHMtc219IHtcbiAgICAgICAgICB0b3A6IDMwJTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBtZWRpYSAjeyRzY3JlZW4tbWR9IHtcbiAgICAgICAgICByaWdodDogdmFyKC0tc3BhY2luZy1zbS0xKTtcbiAgICAgICAgICB0b3A6IDMzJTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRob3Zlci1iZy1jb2xvciAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAkaG92ZXItY29sb3IgIWltcG9ydGFudDtcblxuICAgIEBpZiAkYXJyb3cgPT0gYXJyb3cge1xuICAgICAgJjphZnRlciB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgzcHgpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gZm9udC1oZWFkZXItY2FwaXRhbCgpIHtcbiAgZm9udC1zaXplOiB2YXIoLS1zcGFjaW5nLXNtLTEpO1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1oZWFkaW5nKTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWxldHRlci1zcGFjaW5nLWxnKTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuQG1peGluIHRhZ2xpbmUoJGNvbG9yOiB2YXIoLS1ibHVlKSkge1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1oZWFkaW5nKTtcbiAgZm9udC1zaXplOiB2YXIoLS1zcGFjaW5nLXNtLTEpO1xuICBjb2xvcjogJGNvbG9yO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tbGV0dGVyLXNwYWNpbmctYmFzZSk7XG59XG5cbkBtaXhpbiBpbWctY29uc3RyYWluZWQtaW4td3JhcHBlcigpIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG59XG5cbkBtaXhpbiBvbi1kYXJrLWJhY2tncm91bmQoJGNvbG9yKSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbiAgY29sb3I6IHZhcigtLXdoaXRlKTtcblxuICBhIHtcbiAgICBAaW5jbHVkZSB0ZXh0LWxpbmsodmFyKC0td2hpdGUpLCB2YXIoLS13aGl0ZSksICRjb2xvcik7XG4gIH1cblxuICBsaTo6bWFya2VyIHtcbiAgICBjb2xvcjogdmFyKC0td2hpdGUpO1xuICB9XG5cbiAgLmMtYWNjb3JkaW9uX19pdGVtIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1vZmYtd2hpdGUpO1xuICAgIGNvbG9yOiB2YXIoLS1kYXJrLWdyZXkpO1xuICB9XG59XG5cbkBtaXhpbiB0ZXh0LWxpbmsoJGNvbG9yLCAkYmFja2dyb3VuZC1jb2xvciwgJGhvdmVyLWNvbG9yKSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgY29sb3I6ICRjb2xvcjtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtcGFyYWdyYXBoLWJvbGQpO1xuICBsZXR0ZXItc3BhY2luZzogMDtcbiAgYm94LXNoYWRvdzogMCAtMnB4IDAgaW5zZXQgJGJhY2tncm91bmQtY29sb3I7XG4gIHRyYW5zaXRpb246IHZhcigtLWhvdmVyLXRyYW5zaXRpb24pO1xuXG4gICY6bGluayxcbiAgJjp2aXNpdGVkIHtcbiAgICBjb2xvcjogJGNvbG9yO1xuICB9XG5cbiAgJjphY3RpdmUsXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiAkaG92ZXItY29sb3I7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XG4gICAgYm94LXNoYWRvdzogMCAtMmVtIDAgaW5zZXQgJGJhY2tncm91bmQtY29sb3I7XG4gIH1cbn1cblxuQG1peGluIGZvcm0tY29udGFpbmVyLXN0eWxpbmcge1xuICBib3gtc2hhZG93OiB2YXIoLS1ib3gtc2hhZG93KTtcbiAgcGFkZGluZzogdmFyKC0tc3BhY2luZy1sZy0yKSB2YXIoLS1zcGFjaW5nLWxnLTEpO1xuXG4gIEBtZWRpYSAjeyRzY3JlZW4tc219IHtcbiAgICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLWxnLTMpIHZhcigtLXNwYWNpbmctbGctMik7XG4gIH1cblxuICAuZ2Zvcm1fdGl0bGUge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cbn1cblxuQG1peGluIGhpZGUtcmFkaW8tYnV0dG9ucyB7XG4gIEBpbmNsdWRlIGhpZGU7XG4gIHBhZGRpbmc6IDA7XG4gIC8vIHJlbW92ZSBjdXN0b20gcmFkaW8gaW5wdXRzIGFkZGVkIGluIGZvcm0gc2Nzc1xuICArIGxhYmVsIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBub25lO1xuICAgIH1cblxuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuLy8gcmFkaW8gZmllbGRzIGFzIGJ1dHRvbnNcbkBtaXhpbiByYWRpb0J1dHRvbnMge1xuICBib3JkZXI6IHNvbGlkIDNweCB2YXIoLS1kYXJrLWdyZXkpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcbiAgbWluLWhlaWdodDogdmFyKC0tZm9ybS1maWVsZC1oZWlnaHQpO1xuXG4gIGxhYmVsIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBjb2xvcjogdmFyKC0tZGFyay1ncmV5KTtcbiAgICBmb250LXNpemU6IHZhcigtLXNwYWNpbmctYmFzZSkgIWltcG9ydGFudDtcbiAgICB0cmFuc2l0aW9uOiB2YXIoLS1ob3Zlci10cmFuc2l0aW9uLWZhc3QpO1xuXG4gICAgQG1lZGlhICN7JHNjcmVlbi1zbX0ge1xuICAgICAgZm9udC1zaXplOiB2YXIoLS1zcGFjaW5nLXNtLTEpO1xuICAgIH1cblxuICAgIEBtZWRpYSAjeyRzY3JlZW4tbWR9IHtcbiAgICAgIGZvbnQtc2l6ZTogdmFyKC0tc3BhY2luZy1iYXNlKTtcbiAgICB9XG5cbiAgICAmOmJlZm9yZSxcbiAgICAmOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgLmdmaWVsZC1jaG9pY2UtaW5wdXQge1xuICAgIEBpbmNsdWRlIGhpZGUtcmFkaW8tYnV0dG9ucztcbiAgICAvLyBtYWtlIGZpZWxkIGRhcmsgZ3JleSB3aGVuIGhvdmVyZWQgb3IgY2xpY2tlZFxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyxcbiAgICAmOmNoZWNrZWQge1xuICAgICAgJiArIGxhYmVsIHtcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tZGFyay1ncmV5KTtcbiAgICAgICAgY29sb3I6IHZhcigtLXdoaXRlKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIjpyb290IHtcbiAgLy8gIyBUaXRsZSwgYmFja2dyb3VuZCBjb2xvciBvZiBudW1iZXJpbmcgYW5kIHNlbGVjdGVkIFVJIGVsZW1lbnRzIHN1Y2ggYXMgY2hlY2tib3hlcyBhbmQgcmFkaW8gYnV0dG9uc1xuICAtLXRhbWFyby1wcmltYXJ5LWNvbG9yOiB2YXIoLS1kYXJrLWdyZXkpO1xuICAvL1xuICAvLyAjIERlZmluZXMgdGhlIGNvbG9yIGZvciBsaW5rcywgZS5nLiBjaGFuZ2UgY3VycmVuY3lcbiAgLS10YW1hcm8tcHJpbWFyeS1jb2xvcl9faG92ZXI6IHZhcigtLWJsdWUpO1xuICAvL1xuICAvLyAjIFByaW1hcnkgYmFja2dyb3VuZCBjb2xvciBmb3Igc2VsZWN0ZWQgYXJlYXNcbiAgLS10YW1hcm8tcHJpbWFyeS1iZy1jb2xvcjogdmFyKC0tb2ZmLXdoaXRlKTtcbiAgLy9cbiAgLy8gIyBQcmltYXJ5IHRleHQgY29sb3JcbiAgLS10YW1hcm8tdGV4dC1jb2xvcjogdmFyKC0tZGFyay1ncmV5KTtcbiAgLy9cbiAgLy8gIyBCYWNrZ3JvdW5kIGNvbG9yIGZvciBob3ZlclxuICAtLXRhbWFyby1iZy1jb2xvcl9faG92ZXI6IHZhcigtLW9mZi13aGl0ZSk7XG4gIC8vXG4gIC8vICMgUHJpbWFyeSBjb2xvciBmb3IgYm9yZGVyc1xuICAtLXRhbWFyby1ib3JkZXItY29sb3I6IHZhcigtLWRhcmstZ3JleSk7XG4gIC8vXG4gIC8vICMgUHJpbWFyeSBjb2xvciBmb3IgaW5wdXQgZmllbGQgcGxhY2Vob2xkZXJzXG4gIC0tdGFtYXJvLXBsYWNlaG9sZGVyLWNvbG9yOiB2YXIoLS1tZWRpdW0tZ3JleSk7XG4gIC8vXG4gIC8vICMgU2V0cyB0aGUgY29sb3IgZm9yIHRleHQgd2hpY2ggYXJlIGRlZmluZWQgd2l0aGluIGFuIGluZm9ybWF0aW9uIGNvbnRhaW5lclxuICAtLXRhbWFyby1pbmZvLXRleHQtY29sb3I6IHZhcigtLWJsdWUpO1xuICAvL1xuICAvLyAjIFNldHMgdGhlIGNvbG9yIGZvciBpbmZvIGljb25zIChlLmcuIENWViBhbmQgaW5zdHJ1Y3Rpb25zIG9mIGNyZWRpdCBjYXJkKVxuICAtLXRhbWFyby1pbmZvLWljb24tY29sb3I6IHZhcigtLWJsdWUpO1xuICAvL1xuICAvLyAjIFNldHMgdGhlIGNvbG9yIGZvciBsYWJlbHMgYW5kIHVuZGVybGluZXMgaWYgYW4gZXJyb3IgYXBwZWFyc1xuICAtLXRhbWFyby1lcnJvci1jb2xvcjogdmFyKC0tZXJyb3IpO1xuICAvL1xuICAvLyAjIENvbG9ycyBmb3IgZGVmYXVsdCBidXR0b25zLCBmb3IgaW5zdGFuY2UgdGhlIGNhbmNlbCBidXR0b24gaW4gdGhlIHJlY3VycmluZyBkcm9wZG93bi5cbiAgLy8gLS10YW1hcm8tYnV0dG9uLWNvbG9yXG4gIC8vIC0tdGFtYXJvLWJ1dHRvbi1jb2xvcl9faG92ZXJcbiAgLy8gLS10YW1hcm8tYnV0dG9uLWJnLWNvbG9yXG4gIC8vIC0tdGFtYXJvLWJ1dHRvbi1iZy1jb2xvcl9faG92ZXJcbiAgLy8gLS10YW1hcm8tYnV0dG9uLWJvcmRlci1jb2xvclxuICAvLyAtLXRhbWFyby1idXR0b24tYm9yZGVyLWNvbG9yX19ob3ZlclxuICAvL1xuICAvLyAjIENvbG9ycyBmb3IgcHJpbWFyeSBidXR0b25zLCBmb3IgaW5zdGFuY2UgdGhlIHN1Ym1pdCBidXR0b24uXG4gIC8vIC0tdGFtYXJvLWJ1dHRvbi1wcmltYXJ5LWNvbG9yXG4gIC8vIC0tdGFtYXJvLWJ1dHRvbi1wcmltYXJ5LWNvbG9yX19ob3ZlclxuICAtLXRhbWFyby1idXR0b24tcHJpbWFyeS1iZy1jb2xvcjogdmFyKC0tb3JhbmdlKTtcbiAgLS10YW1hcm8tYnV0dG9uLXByaW1hcnktYmctY29sb3JfX2hvdmVyOiB2YXIoLS1kYXJrLWdyZXkpO1xuICAvLyAtLXRhbWFyby1idXR0b24tcHJpbWFyeS1ib3JkZXItY29sb3JcbiAgLy8gLS10YW1hcm8tYnV0dG9uLXByaW1hcnktYm9yZGVyLWNvbG9yX19ob3ZlclxufVxuXG4jdGFtYXJvLXdpZGdldC50YW1hcm8td2lkZ2V0IHtcbiAgcGFkZGluZy1ib3R0b206IHZhcigtLXNwYWNpbmctbGctMik7XG5cbiAgLndpZGdldC1jb250ZW50IC53aWRnZXQtYmxvY2sgLndpZGdldC1ibG9jay1oZWFkZXIge1xuICAgIC50aXRsZSB7XG4gICAgICBib3JkZXItYm90dG9tOiBzb2xpZCAycHggdmFyKC0tbWVkaXVtLWdyZXkpO1xuICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtaGVhZGluZyk7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tc3BhY2luZy1zbS00KTtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gICAgICAudGV4dCB7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiB2YXIoLS1sZXR0ZXItc3BhY2luZy1zbSk7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICB9XG5cbiAgICAgIC5wb3NpdGlvbiB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvL2lmIFwib3RoZXIgYW1vdW50XCIgaXMgY2hvc2VuLCBpdCBuZWVkcyBhbHNvIHNvbWUgZGlzdGFuY2UgdG8gdGhlIHRvcC5cbiAgLnBheW1lbnQtYW1vdW50cy1hbmQtaW50ZXJ2YWxzLWJsb2NrIHtcbiAgICBtYXJnaW4tdG9wOiAzLjVyZW07XG4gIH1cbn1cblxuLnJhaXNlTm93IHtcbiAgJl9fYmxvY2sge1xuICAgIG1heC13aWR0aDogdmFyKC0tbmFycm93LWNvbnRhaW5lcik7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICB9XG59XG4iLCIuc2NyZWVuLXJlYWRlci10ZXh0IHtcbiAgcG9zaXRpb246IGFic29sdXRlIWltcG9ydGFudDtcbiAgY2xpcDogcmVjdCgxcHgsMXB4LDFweCwxcHgpO1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLm90Z3MtZGV2ZWxvcG1lbnQtc2l0ZS1mcm9udC1lbmQge1xuICBkaXNwbGF5OiBub25lXG59XG4iLCJwcmUueGRlYnVnLXZhci1kdW1wIHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogOTk5O1xuXG4gIC8vICAgcmVtb3ZlIHBhdGhcbiAgc21hbGw6Zmlyc3QtY2hpbGQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICA+ICoge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiA5OTk7XG4gIH1cbn1cbiIsIi5zaW5nbGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgJl9fYmFja0xpbmsge1xuICAgIEBpbmNsdWRlIHBhZ2UtYmFjay1saW5rKCk7XG5cbiAgICAmLS1ib3R0b20ge1xuICAgICAgQGluY2x1ZGUgcGFnZS1iYWNrLWxpbmsoYm90dG9tKTtcbiAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctbGctMyk7XG4gICAgfVxuICB9XG5cbiAgJl9faGVhZGVyIHtcbiAgICBAaW5jbHVkZSBuYXJyb3ctY29udGFpbmVyKCk7XG4gIH1cblxuICAmX19oZWFkZXJJbmZvIHtcbiAgICBAaW5jbHVkZSB0YWdsaW5lO1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctc20tMyk7XG4gIH1cblxuICAmX190aXRsZSB7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIH1cblxuICAvLyBzaG91bGQgYXBwcm94IGFsaWduIHdpdGggbGF5b3V0IGluIHRoZW1lLmpzb24gLT4gaHR0cHM6Ly9tYWtlLndvcmRwcmVzcy5vcmcvY29yZS8yMDIxLzA2LzI5L29uLWxheW91dC1hbmQtY29udGVudC13aWR0aC1pbi13b3JkcHJlc3MtNS04L1xuICAmX19jb250ZW50IHtcbiAgICAvLyAxMDAlIGluIG9yZGVyIHRvIGhhdmUgY29udGVudCBzcHJlYWQgb3V0LCBvbiBjZXJ0YWluIHppZWxlIHBhZ2VzIGl0IHdvdWxkbnQgZG8gdGhhdCBhbmQgdGhlcmVmb3JlIGZsZXggZ2V0cyBjcnVzaGVkLlxuICAgIHdpZHRoOiAxMDAlO1xuICAgID4gaDEsXG4gICAgPiBoMixcbiAgICA+IGgzLFxuICAgID4gaDQsXG4gICAgPiBwLFxuICAgID4gdWwsXG4gICAgPiBvbCxcbiAgICA+IC53cC1ibG9jay1maWxlLFxuICAgID4gLndwLWJsb2NrLWltYWdlLFxuICAgID4gLndwLWJsb2NrLWVtYmVkLFxuICAgID4gLndwLWJsb2NrLXF1b3RlLFxuICAgID4gLnRleHRIaWdobGlnaHRlZCxcbiAgICA+IC5jYWxsVG9BY3Rpb24sXG4gICAgPiAud3AtYmxvY2stcGItYWNjb3JkaW9uLWl0ZW0sXG4gICAgPiAuZ2Zvcm1fd3JhcHBlciB7XG4gICAgICBAaW5jbHVkZSBuYXJyb3ctY29udGFpbmVyO1xuICAgIH1cblxuICAgID4gLmdmb3JtX3dyYXBwZXIge1xuICAgICAgQGluY2x1ZGUgZm9ybS1jb250YWluZXItc3R5bGluZztcbiAgICAgIEBpbmNsdWRlIG1hcmdpbi1ibG9jaztcbiAgICB9XG5cbiAgICBkaXYge1xuICAgICAgPiBoMSxcbiAgICAgID4gaDIsXG4gICAgICA+IGgzLFxuICAgICAgPiBoNCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICB9XG5cbiAgICAgID4gOmxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgfVxuICAgIH1cblxuICAgIHAgYSxcbiAgICBsaSBhIHtcbiAgICAgIEBpbmNsdWRlIHRleHQtbGluayh2YXIoLS1kYXJrLWdyZXkpLCB2YXIoLS1kYXJrLWdyZXkpLCB2YXIoLS13aGl0ZSkpO1xuICAgIH1cblxuICAgIC8vIGlmIGl0cyBhIGRpdiAoPSBhbiBhY2YgYmxvY2sgd2l0aCBiYWNrZ3JvdW5kIGNvbG9yKSAtIHJlbW92ZSBtYXJnaW4gLSBvdGhlcndpc2UgYWRkIHNvbWUgbWFyZ2luIGF0IHRoZSBib3R0b20gb2YgdGhlIHBhZ2VcbiAgICA+IDpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctbGctNSk7XG4gICAgfVxuXG4gICAgPiAudGVhc2VFeGFtcGxlczpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG5cbiAgJl9fY29udGVudFdyYXBwZXIge1xuICAgIEBtZWRpYSAjeyRzY3JlZW4tbGd9IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgfVxuICB9XG59XG4iLCIucGFnZSB7XG4gICZfX3RpdGxlIHtcbiAgICBoeXBoZW5zOiBtYW51YWw7XG5cbiAgICBAbWVkaWEgI3skc2NyZWVuLW1kfSB7XG4gICAgICBmb250LXNpemU6IHZhcigtLWxnKTtcbiAgICAgIGxldHRlci1zcGFjaW5nOiB2YXIoLS1sZXR0ZXItc3BhY2luZy14cyk7XG4gICAgfVxuICAgIEBtZWRpYSAjeyRzY3JlZW4tbWQtbGd9IHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG5cbiAgICAmLS1oaWRkZW4ge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gICAgICBjbGlwOiByZWN0KDFweCwgMXB4LCAxcHgsIDFweCk7XG4gICAgICB3aWR0aDogMXB4O1xuICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIH1cbiAgfVxuXG4gIC8vIHNob3VsZCBhcHByb3ggYWxpZ24gd2l0aCBsYXlvdXQgaW4gdGhlbWUuanNvbiAtPiBodHRwczovL21ha2Uud29yZHByZXNzLm9yZy9jb3JlLzIwMjEvMDYvMjkvb24tbGF5b3V0LWFuZC1jb250ZW50LXdpZHRoLWluLXdvcmRwcmVzcy01LTgvXG4gICZfX2NvbnRlbnQge1xuICAgID4gaDEsXG4gICAgPiBoMixcbiAgICA+IGgzLFxuICAgID4gaDQsXG4gICAgPiBoNSxcbiAgICA+IGg2LFxuICAgID4gcCxcbiAgICA+IHVsLFxuICAgID4gb2wsXG4gICAgPiAud3AtYmxvY2stZmlsZSxcbiAgICA+IC53cC1ibG9jay1pbWFnZSxcbiAgICA+IC53cC1ibG9jay1lbWJlZCxcbiAgICA+IC50ZXh0SGlnaGxpZ2h0ZWQsXG4gICAgPiAud3AtYmxvY2stcGItYWNjb3JkaW9uLWl0ZW0sXG4gICAgPiAuZ2Zvcm1fd3JhcHBlcixcbiAgICA+IC5wcm9ncmVzc0Jhci0tZ3Jhdml0eUZvcm0ge1xuICAgICAgQG1lZGlhICN7JHNjcmVlbi1sZ30ge1xuICAgICAgICBtYXgtd2lkdGg6IHZhcigtLXdpZGVyLWNvbnRhaW5lcik7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICB9XG4gICAgfVxuXG4gICAgPiAuY2FsbFRvQWN0aW9uIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgLy9zYW1lIHdpZHRoIHRoYW4gaGFsZiB3aWR0aCBidXR0b246XG4gICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgQG1lZGlhICN7JHNjcmVlbi1zbX0ge1xuICAgICAgICB3aWR0aDogNzUlO1xuICAgICAgfVxuXG4gICAgICBAbWVkaWEgI3skc2NyZWVuLWxnfSB7XG4gICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgPiAuZ2Zvcm1fd3JhcHBlciB7XG4gICAgICBAaW5jbHVkZSBmb3JtLWNvbnRhaW5lci1zdHlsaW5nO1xuICAgICAgQGluY2x1ZGUgbWFyZ2luLWJsb2NrO1xuICAgIH1cblxuICAgIC8vIHByb2dyZXNzYmFyIHdoaWNoIGlzIGZvbGxvd2VkIGJ5IGZvcm06IG1vdmUgdXAgYW5kIHNldCB6LWluZGV4IGluIG9yZGVyIHRvIGhpZGUgYm94IHNoYWRvd1xuICAgID4gLnByb2dyZXNzQmFyLS1ncmF2aXR5Rm9ybTpoYXMoKyAuZ2Zvcm1fd3JhcHBlcikge1xuICAgICAgQGluY2x1ZGUgZm9ybS1jb250YWluZXItc3R5bGluZztcbiAgICAgIEBpbmNsdWRlIG1hcmdpbi1ibG9jaztcbiAgICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHotaW5kZXg6IC0xO1xuICAgIH1cblxuICAgIC8vIHB1bGwgZm9ybSB1cCBmb3JcbiAgICA+IC5wcm9ncmVzc0Jhci0tZ3Jhdml0eUZvcm0gKyAuZ2Zvcm1fd3JhcHBlciB7XG4gICAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLy8gZm9ybSBzdHlsaW5nIHdoZW4gcHJvZ3Jlc3NiYXIgaXMgcHJldmlvdXMgZWxlbWVudCBhbmQgZWxlbWVudCBpcyB3aGl0ZSB0byByZW1vdmUgYm94IHNoYWRvd1xuICAgID4gLnByb2dyZXNzQmFyLS1ncmF2aXR5Rm9ybTpub3QoLnByb2dyZXNzQmFyLS1oaWdobGlnaHRlZClcbiAgICAgICsgLmdmb3JtX3dyYXBwZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0td2hpdGUpO1xuICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgIC8vIGFkZCB3aGl0ZSBiYXIgYWJvdmUgYm94IHNoYWRvdyB3aGljaCBpcyBiZXR3ZWVuIHByb2dyZXNzYmFyIGFuZCBmb3JtXG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiBjYWxjKHZhcigtLXNwYWNpbmctbGctMikgLyAtMSk7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIGhlaWdodDogdmFyKC0tc3BhY2luZy1sZy0yKTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXdoaXRlKTtcblxuICAgICAgICBAbWVkaWEgI3skc2NyZWVuLXNtfSB7XG4gICAgICAgICAgdG9wOiBjYWxjKHZhcigtLXNwYWNpbmctbGctMykgLyAtMSk7XG4gICAgICAgICAgaGVpZ2h0OiB2YXIoLS1zcGFjaW5nLWxnLTMpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgcCBhIHtcbiAgICAgIEBpbmNsdWRlIHRleHQtbGluayh2YXIoLS1kYXJrLWdyZXkpLCB2YXIoLS1kYXJrLWdyZXkpLCB2YXIoLS13aGl0ZSkpO1xuICAgIH1cblxuICAgIC8vIGlmIGl0cyBhIGRpdiAoPSBhbiBhY2YgYmxvY2sgd2l0aCBiYWNrZ3JvdW5kIGNvbG9yKSAtIHJlbW92ZSBtYXJnaW4gLSBvdGhlcndpc2UgYWRkIHNvbWUgbWFyZ2luIGF0IHRoZSBib3R0b20gb2YgdGhlIHBhZ2VcbiAgICA+IDpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctbGctNSk7XG4gICAgfVxuICB9XG59XG4iLCIuZG9uYXRpb24ge1xuICAmX19pbWdXcmFwcGVyIHtcbiAgICBAaW5jbHVkZSBpbWFnZS1maXhlZC1iYWNrZ3JvdW5kKCk7XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJsdWUtcmdiYSk7XG4gICAgICB6LWluZGV4OiAtMTtcbiAgICB9XG4gIH1cblxuICAmX19jb250ZW50IHtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0td2hpdGUtcmdiYSk7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XG4gICAgcGFkZGluZzogdmFyKC0tc3BhY2luZy1sZy0yKSB2YXIoLS1zcGFjaW5nLXNtLTEpO1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctbGctNCk7XG5cbiAgICBAbWVkaWEgI3skc2NyZWVuLXNtfSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLWxnLTUpO1xuICAgICAgcGFkZGluZzogdmFyKC0tc3BhY2luZy1sZy01KSB2YXIoLS1zcGFjaW5nLWxnLTMpO1xuICAgIH1cblxuICAgIEBtZWRpYSAjeyRzY3JlZW4tbWR9IHtcbiAgICAgIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctbGctNSkgdmFyKC0tc3BhY2luZy1sZy01KTtcbiAgICAgIG1heC13aWR0aDogOTAlO1xuICAgIH1cblxuICAgIEBtZWRpYSAjeyRzY3JlZW4tbWQtbGd9IHtcbiAgICAgIG1heC13aWR0aDogOTAlO1xuICAgICAgcGFkZGluZzogdmFyKC0tc3BhY2luZy1sZy01KTtcbiAgICB9XG5cbiAgICBAbWVkaWEgI3skc2NyZWVuLWxnfSB7XG4gICAgICBtYXgtd2lkdGg6IDg1JTtcbiAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctbGctNik7XG4gICAgfVxuXG4gICAgQG1lZGlhICN7JHNjcmVlbi14bC14eGx9IHtcbiAgICAgIG1heC13aWR0aDogNzAlO1xuICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy1sZy03KTtcbiAgICB9XG5cbiAgICAvLyBncmF2aXR5IGZvcm1zIHN0eWxpbmcgZm9yIHJhZGlvIGJ1dHRvbnMgd2l0aCBpbWFnZXNcbiAgICAmLS13aXRoSW1hZ2VzIHtcbiAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctbGctMykgdmFyKC0tc3BhY2luZy1sZy0yKTtcblxuICAgICAgQG1lZGlhICN7JHNjcmVlbi14bC14eGx9IHtcbiAgICAgICAgbWF4LXdpZHRoOiA5MCU7XG4gICAgICAgIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctbGctNCkgdmFyKC0tc3BhY2luZy1sZy0zKTtcbiAgICAgIH1cblxuICAgICAgLmdmaWVsZF9yYWRpbyB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7XG5cbiAgICAgICAgQG1lZGlhICN7JHNjcmVlbi1zbX0ge1xuICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIDFmcik7XG4gICAgICAgIH1cblxuICAgICAgICBAbWVkaWEgI3skc2NyZWVuLXhzLXNtfSB7XG4gICAgICAgICAgZ3JpZC1yb3ctZ2FwOiB2YXIoLS1zcGFjaW5nLWxnLTMpO1xuICAgICAgICAgIGdyaWQtY29sdW1uLWdhcDogdmFyKC0tc3BhY2luZy1sZy0zKTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBtZWRpYSAjeyRzY3JlZW4tbWQtbGd9IHtcbiAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg1LCAxZnIpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAvLyBnaXZlIGVsZW1lbnRzIG9uIGRvbmF0aW9uIHBhZ2UgYSBib3ggc2hhZG93LCBkb250IHRvIHRoYXQgaW4gYSBvcmRpbmFyeSBncmF2aXR5IGZvcm0gd2l0aCBpbWFnZXMgY2hvaWNlc1xuICAgICAgLmltYWdlLWNob2ljZXMtY2hvaWNlIHtcbiAgICAgICAgYm94LXNoYWRvdzogdmFyKC0tYm94LXNoYWRvdyk7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgJjpob3ZlcixcbiAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgYm94LXNoYWRvdzogdmFyKC0tYm94LXNoYWRvdy1ob3Zlcik7XG4gICAgICAgIH1cbiAgICAgICAgbGFiZWwge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctc20tMikgIWltcG9ydGFudDtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgaDIge1xuICAgICAgICBmb250LXNpemU6IHZhcigtLXNwYWNpbmctYmFzZSk7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmctc20tMik7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctc20tOSk7XG4gICAgICAgIC13ZWJraXQtaHlwaGVuczogbm9uZTtcbiAgICAgICAgLW1vei1oeXBoZW5zOiBub25lO1xuICAgICAgICBoeXBoZW5zOiBub25lO1xuICAgICAgfVxuXG4gICAgICBwIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBjb2xvcjogdmFyKC0tbWVkaXVtLWdyZXkpO1xuICAgICAgICBmb250LWZhbWlseTogdmFyKC0tZm9udC1oZWFkaW5nKTtcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1zcGFjaW5nLXNtLTEpO1xuICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtc20pO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIGdyYXZpdHkgZm9ybXMgc3R5bGluZyBmb3IgcmFkaW8gYnV0dG9ucyB3aXRoIG9ubHkgYW1vdW50XG4gICAgJi0td2l0aG91dEltYWdlcyB7XG4gICAgICAuZ2ZpZWxkX3JhZGlvIHtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNiwgMWZyKTtcblxuICAgICAgICBAbWVkaWEgI3skc2NyZWVuLW1kLWxnfSB7XG4gICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNSwgMWZyKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmdjaG9pY2Uge1xuICAgICAgICAvLyBzdHlsZSB0ZXh0IGluIGFtb3VudCBib3g6XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgaGVpZ2h0OiBjYWxjKHZhcigtLXNwYWNpbmctbGctNikgKyB2YXIoLS1zcGFjaW5nLXNtLTEpKTtcbiAgICAgICAgYm9yZGVyOiBzb2xpZCAzcHggdmFyKC0tZGFyay1ncmV5KTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIC8vIG1ha2UgYSBncmlkIG9mIDYgc28gbGFzdCB0d28gZWxtZW50cyBjYW4gYmUgd2lkZXIgLyBvciBjZW50ZXJlZC5cbiAgICAgICAgZ3JpZC1jb2x1bW46IHNwYW4gMjtcblxuICAgICAgICAmOm50aC1sYXN0LWNoaWxkKDIpOm50aC1jaGlsZCgzbiAtIDIpIHtcbiAgICAgICAgICBncmlkLWNvbHVtbjogc3BhbiAzO1xuICAgICAgICAgIGdyaWQtY29sdW1uLWVuZDogNDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6bGFzdC1jaGlsZDpudGgtY2hpbGQoM24gLSAxKSB7XG4gICAgICAgICAgZ3JpZC1jb2x1bW46IHNwYW4gMztcbiAgICAgICAgICBncmlkLWNvbHVtbi1lbmQ6IDc7XG4gICAgICAgIH1cblxuICAgICAgICBAbWVkaWEgI3skc2NyZWVuLW1kLWxnfSB7XG4gICAgICAgICAgZ3JpZC1jb2x1bW46IHNwYW4gMTtcblxuICAgICAgICAgICY6bnRoLWxhc3QtY2hpbGQoMik6bnRoLWNoaWxkKDNuIC0gMikge1xuICAgICAgICAgICAgZ3JpZC1jb2x1bW46IHNwYW4gMTtcbiAgICAgICAgICAgIGdyaWQtY29sdW1uLWVuZDogNTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmOmxhc3QtY2hpbGQ6bnRoLWNoaWxkKDNuIC0gMSkge1xuICAgICAgICAgICAgZ3JpZC1jb2x1bW46IHNwYW4gMTtcbiAgICAgICAgICAgIGdyaWQtY29sdW1uLWVuZDogNjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLmdmaWVsZC1jaG9pY2UtaW5wdXQge1xuICAgICAgICAvLyBtYWtlIGZpZWxkIGRhcmsgZ3JleSB3aGVuIGhvdmVyZWQgb3IgY2xpY2tlZFxuICAgICAgICAmOmhvdmVyLFxuICAgICAgICAmOmZvY3VzLFxuICAgICAgICAmOmNoZWNrZWQge1xuICAgICAgICAgICYgKyBsYWJlbCB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1kYXJrLWdyZXkpO1xuXG4gICAgICAgICAgICBzcGFuLFxuICAgICAgICAgICAgLm90aGVyIHtcbiAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXdoaXRlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLy8gbWFrZSBsYWJlbCB3aXRoIENIRiBhbmQgYmlnIGFtb3VudFxuICAgICAgbGFiZWwge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgIHRyYW5zaXRpb246IHZhcigtLWhvdmVyLXRyYW5zaXRpb24tZmFzdCk7XG5cbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgY29sb3I6IHZhcigtLWRhcmstZ3JleSk7XG4gICAgICAgICAgdHJhbnNpdGlvbjogdmFyKC0taG92ZXItdHJhbnNpdGlvbi1mYXN0KTtcbiAgICAgICAgfVxuICAgICAgICAvLyBDSEZcbiAgICAgICAgc3BhbjpmaXJzdC1vZi10eXBlIHtcbiAgICAgICAgICBsZWZ0OiB2YXIoLS1zcGFjaW5nLXNtLTQpO1xuICAgICAgICAgIHRvcDogdmFyKC0tc3BhY2luZy1zbS00KTtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1zcGFjaW5nLXNtLTMpO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBBbW91bnRcbiAgICAgICAgc3BhbjpudGgtb2YtdHlwZSgyKSB7XG4gICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1zcGFjaW5nLWxnLTMpO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgIH1cblxuICAgICAgICAub3RoZXIge1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICBmb250LXNpemU6IHZhcigtLXNwYWNpbmctbGctMSk7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICBjb2xvcjogdmFyKC0tZGFyay1ncmV5KTtcblxuICAgICAgICAgIEBtZWRpYSAjeyRzY3JlZW4tbWQtbGd9IHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tc3BhY2luZy1iYXNlKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBncmF2aXR5IGZvcm1zIHN0eWxpbmcgZm9yIGludGVydmFsIHJhZGlvIGJ1dHRvbnNcbiAgICAmLS13aXRoSW50ZXJ2YWwge1xuICAgICAgLy8gZmlyc3Qgcm93IG9mIHJhZGlvIGJ1dHRvbnMgc2hvdWxkIGhhdmUgdGhyZWUgY29sdW1uc1xuICAgICAgZmllbGRzZXQ6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICAgIEBtZWRpYSAjeyRzY3JlZW4tc219IHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLWxnLTMpO1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSAjeyRzY3JlZW4tbWR9IHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLWxnLTEpO1xuICAgICAgICB9XG4gICAgICAgIC5nZmllbGRfcmFkaW8ge1xuICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDEsIDFmcik7XG4gICAgICAgICAgZ3JpZC1jb2x1bW4tZ2FwOiB2YXIoLS1zcGFjaW5nLXNtLTIpO1xuICAgICAgICAgIGdyaWQtcm93LWdhcDogdmFyKC0tc3BhY2luZy1zbS0yKTtcblxuICAgICAgICAgIEBtZWRpYSAjeyRzY3JlZW4tc219IHtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIDFmcik7XG4gICAgICAgICAgICBncmlkLWNvbHVtbi1nYXA6IHZhcigtLXNwYWNpbmctbGctMik7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgQG1lZGlhICN7JHNjcmVlbi1tZC1sZ30ge1xuICAgICAgICAgICAgZ3JpZC1jb2x1bW4tZ2FwOiB2YXIoLS1zcGFjaW5nLWxnLTQpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuZ2Nob2ljZSB7XG4gICAgICAgICAgQGluY2x1ZGUgcmFkaW9CdXR0b25zO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJl9fdGl0bGUge1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBmb250LXNpemU6IHZhcigtLXNwYWNpbmctbGctMSk7XG5cbiAgICBAbWVkaWEgI3skc2NyZWVuLXNtfSB7XG4gICAgICBmb250LXNpemU6IHZhcigtLXNwYWNpbmctbGctMik7XG4gICAgfVxuXG4gICAgQG1lZGlhICN7JHNjcmVlbi14cy1zbX0ge1xuICAgICAgZm9udC1zaXplOiB2YXIoLS1zcGFjaW5nLWxnLTMpO1xuICAgIH1cblxuICAgIEBtZWRpYSAjeyRzY3JlZW4tbGd9IHtcbiAgICAgIGZvbnQtc2l6ZTogdmFyKC0tc3BhY2luZy1sZy00KTtcbiAgICB9XG5cbiAgICAmLS1sb25nIHtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgQG1lZGlhICN7JHNjcmVlbi1zbX0ge1xuICAgICAgICBmb250LXNpemU6IHZhcigtLXNwYWNpbmctbGctMSk7XG4gICAgICB9XG5cbiAgICAgIEBtZWRpYSAjeyRzY3JlZW4teHMtc219IHtcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1zcGFjaW5nLWxnLTIpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICZfX2Zvcm0ge1xuICAgIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmctbGctMik7XG4gIH1cblxuICAvLyBkaWZmZXJlbnQgZ2VuZXJhbCBncmF2aXR5IGZvcm1zIHN0eWxpbmcgb24gZG9uYXRpb24gcGFnZVxuICAvLyBoaWRlIGxhYmVsXG4gIGxlZ2VuZC5nZmllbGRfbGFiZWwge1xuICAgIEBpbmNsdWRlIGhpZGU7XG4gIH1cblxuICAuZ2Zvcm1fZmllbGRzIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIC8vIHJhZGlvIGVsZW1lbnRzXG4gIC5nZmllbGRfcmFkaW8ge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvO1xuICAgIGdyaWQtcm93LWdhcDogdmFyKC0tc3BhY2luZy1zbS0xKTtcbiAgICBncmlkLWNvbHVtbi1nYXA6IHZhcigtLXNwYWNpbmctc20tMSk7XG4gICAgLy8gdW5zZXQgc2V0dGluZ3Mgc2V0IG9uIGdyYXZpdHkgZm9ybSBmb3IgaGF2aW5nIGVsZW1lbnRzIGVxdWFsIHdpZHRoIG9uIG9uZSByb3dcbiAgICBncmlkLWF1dG8tZmxvdzogdW5zZXQ7XG4gICAgLy9mb3IgZmlyZWZveCBub3QgdG8gZXhwYW5kIGdyaWQgZWxlbWVudHM6XG4gICAgbWluLXdpZHRoOiAwO1xuXG4gICAgQG1lZGlhICN7JHNjcmVlbi1zbX0ge1xuICAgICAgZ3JpZC1yb3ctZ2FwOiB2YXIoLS1zcGFjaW5nLWxnLTIpO1xuICAgICAgZ3JpZC1jb2x1bW4tZ2FwOiB2YXIoLS1zcGFjaW5nLWxnLTIpO1xuICAgIH1cblxuICAgIEBtZWRpYSAjeyRzY3JlZW4tbWQtbGd9IHtcbiAgICAgIGdyaWQtcm93LWdhcDogdmFyKC0tc3BhY2luZy1sZy0xKTtcbiAgICAgIGdyaWQtY29sdW1uLWdhcDogdmFyKC0tc3BhY2luZy1sZy0xKTtcbiAgICB9XG4gIH1cblxuICAuZ2Zvcm1fYnV0dG9uIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gICAgY2xpcDogcmVjdCgxcHgsIDFweCwgMXB4LCAxcHgpO1xuICAgIHdpZHRoOiAxcHg7XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxufVxuIiwiLmRvbmF0aW9uRm9ybSB7XG4gIHBhZGRpbmctYm90dG9tOiB2YXIoLS1zcGFjaW5nLWxnLTMpO1xuXG4gIEBtZWRpYSAjeyRzY3JlZW4tc219IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tc3BhY2luZy1sZy00KTtcbiAgfVxuXG4gIEBtZWRpYSAjeyRzY3JlZW4tbWR9IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tc3BhY2luZy1sZy02KTtcbiAgfVxuXG4gICZfX2xpbmsge1xuICAgIEBpbmNsdWRlIHBhZ2UtYmFjay1saW5rKCk7XG4gIH1cblxuICAmX19jb250ZW50IHtcbiAgICBtYXgtd2lkdGg6IHZhcigtLW5hcnJvdy1jb250YWluZXIpO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcblxuICAgIC8vd2l0aCBpbWFnZSBhZGRlZFxuXG4gICAgJi0taW1hZ2Uge1xuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgIGdyaWQtdGVtcGxhdGUtYXJlYXM6XG4gICAgICAgIFwidGl0bGUgaW1hZ2VcIlxuICAgICAgICBcInRleHQgIHRleHRcIjtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDMwJTtcbiAgICAgIGdyaWQtZ2FwOiB2YXIoLS1zcGFjaW5nLWJhc2UpO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgQG1lZGlhICN7JHNjcmVlbi14cy1zbX0ge1xuICAgICAgICBncmlkLWNvbHVtbi1nYXA6IHZhcigtLXNwYWNpbmctbGctMik7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDI1JTtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1hcmVhczpcbiAgICAgICAgICBcInRpdGxlIGltYWdlXCJcbiAgICAgICAgICBcInRleHQgIGltYWdlXCI7XG4gICAgICB9XG5cbiAgICAgIEBtZWRpYSAjeyRzY3JlZW4tbWR9IHtcbiAgICAgICAgZ3JpZC1jb2x1bW4tZ2FwOiB2YXIoLS1zcGFjaW5nLWxnLTYpO1xuICAgICAgfVxuXG4gICAgICBAbWVkaWEgI3skc2NyZWVuLXhsLXh4bH0ge1xuICAgICAgICBtYXgtd2lkdGg6IHZhcigtLXdpZGVyLWNvbnRhaW5lcik7XG4gICAgICB9XG5cbiAgICAgIC5kb25hdGlvbkZvcm1fX3RpdGxlIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuZG9uYXRpb25TdWNjZXNzICYge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAmX190aXRsZSB7XG4gICAgZ3JpZC1hcmVhOiB0aXRsZTtcbiAgICBmb250LXNpemU6IHZhcigtLXNwYWNpbmctbGctMik7XG5cbiAgICBAbWVkaWEgI3skc2NyZWVuLXhzLXNtfSB7XG4gICAgICBhbGlnbi1zZWxmOiBlbmQ7XG4gICAgfVxuXG4gICAgQG1lZGlhICN7JHNjcmVlbi1tZH0ge1xuICAgICAgZm9udC1zaXplOiB2YXIoLS1zcGFjaW5nLWxnLTMpO1xuICAgIH1cblxuICAgIEBtZWRpYSAjeyRzY3JlZW4teGx9IHtcbiAgICAgIGZvbnQtc2l6ZTogdmFyKC0tc3BhY2luZy1sZy00KTtcbiAgICB9XG4gIH1cblxuICAmX190ZXh0IHtcbiAgICBncmlkLWFyZWE6IHRleHQ7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgIEBtZWRpYSAjeyRzY3JlZW4teHMtc219IHtcbiAgICAgIGFsaWduLXNlbGY6IHN0YXJ0O1xuICAgIH1cblxuICAgIEBtZWRpYSAjeyRzY3JlZW4tc219IHtcbiAgICAgIGZvbnQtc2l6ZTogdmFyKC0tc3BhY2luZy1sZy0xKTtcbiAgICB9XG4gIH1cblxuICAmX19pbWdXcmFwcGVyIHtcbiAgICBncmlkLWFyZWE6IGltYWdlO1xuICAgIEBpbmNsdWRlIGFzcGVjdC1yYXRpbygxLjA1LCAxKTtcbiAgICBib3gtc2hhZG93OiB2YXIoLS1ib3gtc2hhZG93KTtcbiAgfVxuXG4gICZfX2ltZyB7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XG4gIH1cblxuICAmX19yYWlzZU5vdyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiB2YXIoLS1uYXJyb3ctY29udGFpbmVyKTtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG5cbiAgICAucmVjdXJyaW5nLXBheW1lbnQtdHlwZSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgJi0tcHJlZGVmaW5lZEFtb3VudCB7XG4gICAgICAucGF5bWVudC1hbW91bnRzLWFuZC1pbnRlcnZhbHMtYmxvY2sge1xuICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59IiwiLmZvdXJ6ZXJvZm91ciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctbGctNik7XG5cbiAgJl9fdGl0bGUge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuXG4gICZfX2V4cGxhbmF0aW9uIHtcbiAgICBmb250LXNpemU6IHZhcigtLXNwYWNpbmctbGctMSk7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy1sZy0xKTtcbiAgfVxuXG4gICZfX2xpbmsge1xuICAgIEBpbmNsdWRlIGJ1dHRvbih2YXIoLS1ibHVlKSwgdmFyKC0td2hpdGUpLCB2YXIoLS1vcmFuZ2UpLCB2YXIoLS13aGl0ZSkpO1xuICB9XG59XG4iLCIucG9zdC1wYXNzd29yZC1mb3JtIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICBsYWJlbCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICB9XG5cbiAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgQGluY2x1ZGUgYnV0dG9uKHZhcigtLWJsdWUpLCB2YXIoLS13aGl0ZSksIHZhcigtLW9yYW5nZSksIHZhcigtLXdoaXRlKSk7XG4gIH1cbn1cbiIsIi5zaXRlTWFpbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgQGluY2x1ZGUgc2l0ZS1jb250YWluZXI7XG4gIC8vIDEwMHZ3IGltcG9ydGFudDogb3Igb3RoZXJ3aXNlIGZ1bGwgd2lkdGggY29udGFpbmVyIGRvbnQgYWxpZ24gcHJvcGVybHlcbiAgd2lkdGg6IDEwMHZ3O1xuICBtYXJnaW4tdG9wOiBjYWxjKDIgKiB2YXIoLS1uYXYtaGVpZ2h0KSArIHZhcigtLXNwYWNpbmctbGctMikpO1xuXG4gIC8vIHN0aWNreSBGb290ZXI6XG4gIGZsZXg6IDEgMCBhdXRvO1xuXG4gIEBtZWRpYSAjeyRzY3JlZW4tc219IHtcbiAgICBtYXJnaW4tdG9wOiBjYWxjKHZhcigtLW5hdi1oZWlnaHQpICsgdmFyKC0tc3BhY2luZy1sZy01KSk7XG4gIH1cblxuICBAbWVkaWEgI3skc2NyZWVuLWxnfSB7XG4gICAgbWFyZ2luLXRvcDogY2FsYyh2YXIoLS1uYXYtaGVpZ2h0KSArIHZhcigtLXNwYWNpbmctbGctNikpO1xuICB9XG5cbiAgQG1lZGlhICN7JHNjcmVlbi14bC14eGx9IHtcbiAgICBtYXJnaW4tdG9wOiBjYWxjKHZhcigtLW5hdi1oZWlnaHQpICsgdmFyKC0tc3BhY2luZy1sZy03KSk7XG4gIH1cbn1cbiIsIi5zaXRlRm9vdGVyIHtcbiAgLy8gc3RpY2t5IEZvb3RlcjpcbiAgZmxleC1zaHJpbms6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWRhcmstZ3JleSk7XG4gIGNvbG9yOiB2YXIoLS1saWdodC1ncmV5KTtcbiAgQGluY2x1ZGUgc2l0ZS1jb250YWluZXIoKTtcbiAgcGFkZGluZy10b3A6IHZhcigtLXNwYWNpbmctbGctNik7XG4gIHBhZGRpbmctYm90dG9tOiB2YXIoLS1zcGFjaW5nLWxnLTYpO1xuXG4gIHAge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cblxuICAmX19hZHJlc3Mge1xuXG4gICAgcDpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICBmb250LWZhbWlseTogdmFyKC0tZm9udC1wYXJhZ3JhcGgtYm9sZCk7XG4gICAgICBjb2xvcjogdmFyKC0tbGlnaHQtZ3JleSk7XG4gICAgICB0cmFuc2l0aW9uOiB2YXIoLS1ob3Zlci10cmFuc2l0aW9uKTtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS13aGl0ZSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cblxuICAmX19saW5rV3JhcHBlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgYm9yZGVyLWJvdHRvbTogc29saWQgM3B4IHZhcigtLW1lZGl1bS1ncmV5KTtcbiAgICBib3JkZXItdG9wOiBzb2xpZCAzcHggdmFyKC0tbWVkaXVtLWdyZXkpO1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctbGctMik7XG4gICAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2luZy1sZy0yKTtcblxuICAgID4gKiB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tc3BhY2luZy1zbS0xKTtcbiAgICAgIHBhZGRpbmctdG9wOiB2YXIoLS1zcGFjaW5nLXNtLTEpO1xuXG4gICAgICBAbWVkaWEgI3skc2NyZWVuLXNtfSB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1zcGFjaW5nLWJhc2UpO1xuICAgICAgICBwYWRkaW5nLXRvcDogdmFyKC0tc3BhY2luZy1iYXNlKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmX19zb2NpYWxzIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgfVxuXG4gICZfX3NvY2lhbCB7XG4gICAgaGVpZ2h0OiB2YXIoLS1zcGFjaW5nLWxnLTQpO1xuICAgIHdpZHRoOiB2YXIoLS1zcGFjaW5nLWxnLTQpO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLXNtLTEpO1xuICB9XG5cbiAgJl9fc29jaWFsTGluayB7XG4gICAgZGlzcGxheTogZmxleDtcblxuICAgIHN2ZyB7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgZWxsaXBzZSB7XG4gICAgICAgIGZpbGw6IHZhcigtLWxpZ2h0LWdyZXkpO1xuICAgICAgICB0cmFuc2l0aW9uOiB2YXIoLS1ob3Zlci10cmFuc2l0aW9uKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIHN2ZyBlbGxpcHNlIHtcbiAgICAgICAgZmlsbDogdmFyKC0td2hpdGUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICZfX2xpbmsge1xuICAgIEBpbmNsdWRlIGJ1dHRvbih2YXIoLS1ibHVlKSwgdmFyKC0td2hpdGUpLCB2YXIoLS1vcmFuZ2UpLCB2YXIoLS13aGl0ZSkpO1xuICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gICZfX2NvcHlyaWdodFdyYXBwZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWxldHRlci1zcGFjaW5nLXhzKTtcbiAgICBmb250LXNpemU6IHZhcigtLXNwYWNpbmctc20tMik7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LW1kKTtcblxuICAgIEBtZWRpYSAjeyRzY3JlZW4tc219IHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICBmb250LWZhbWlseTogdmFyKC0tZm9udC1oZWFkaW5nKTtcbiAgICAgIGNvbG9yOiB2YXIoLS1saWdodC1ncmV5KTtcbiAgICAgIHRyYW5zaXRpb246IHZhcigtLWhvdmVyLXRyYW5zaXRpb24pO1xuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6IHZhcigtLXdoaXRlKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmX19jb3B5cmlnaHQge1xuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWhlYWRpbmcpO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gICAgQG1lZGlhICN7JHNjcmVlbi1zbX0ge1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgIGZsZXgtZ3JvdzogMjtcbiAgICB9XG4gIH1cblxuICAmX19jb3B5cmlnaHRJbXByZXNzdW0ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjaW5nLXNtLTQpO1xuXG4gICAgQG1lZGlhICN7JHNjcmVlbi1zbX0ge1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIGFsaWduLXNlbGY6IGZsZXgtZW5kO1xuXG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXFwwMGEwfFxcMDBhMCBcIjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi5sYW5ndWFnZVN3aXRjaGVyRHJvcGRvd24ge1xuICBkaXNwbGF5OiBub25lO1xuXG4gIEBtZWRpYSAjeyRzY3JlZW4teGx9IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICAvLyBvcmRlciBiZWNhdXNlIG9mIGhpZ2hsaWdodGVkIG5hdiB3aGljaCBnb2VzIGFib3ZlIGxvZ28gYW5kIG1lbnUgb24gc21hbGwgc2NyZWVuXG4gICAgb3JkZXI6IDQ7XG4gIH1cblxuICAvLyBoaWRlIHdoZW4gYWNmIG9wdGlvbiBubyBuYXZpZ2F0aW9uIGlzIGNob3NlblxuICAucGFnZS0tbm8tbmF2aWdhdGlvbiAmIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgJl9faXRlbTpmaXJzdC1jaGlsZCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDM7XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgLmxhbmd1YWdlU3dpdGNoZXJEcm9wZG93bl9fc3ViTWVudSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmX19saW5rIHtcbiAgICBjb2xvcjogdmFyKC0td2hpdGUpO1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWRhcmstZ3JleSk7XG4gICAgd2lkdGg6IHZhcigtLW5hdi1oZWlnaHQpO1xuICAgIGhlaWdodDogdmFyKC0tbmF2LWhlaWdodCk7XG4gICAgcGFkZGluZzogMDtcblxuICAgIHNwYW4ge1xuICAgICAgdHJhbnNpdGlvbjogdmFyKC0taG92ZXItdHJhbnNpdGlvbik7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XG4gICAgfVxuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIG91dGxpbmU6IG5vbmU7XG5cbiAgICAgICsgLmxhbmd1YWdlU3dpdGNoZXJEcm9wZG93bl9fc3ViTWVudSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICAgIH1cblxuICAgICAgc3BhbiB7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjksIDAuOSwgMSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJl9fc3ViTWVudSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IC0xO1xuICAgIGxlZnQ6IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAxJSk7XG4gICAgdHJhbnNpdGlvbjogdmFyKC0taG92ZXItdHJhbnNpdGlvbik7XG5cbiAgICAmLmZvY3VzIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICB9XG4gIH1cblxuICAmX19zdWJMaW5rIHtcbiAgICB3aWR0aDogdmFyKC0tbmF2LWhlaWdodCk7XG4gICAgaGVpZ2h0OiB2YXIoLS1uYXYtaGVpZ2h0KTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgY29sb3I6IHZhcigtLXdoaXRlKTtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1kYXJrLWdyZXkpO1xuXG4gICAgc3BhbiB7XG4gICAgICB0cmFuc2l0aW9uOiB2YXIoLS1ob3Zlci10cmFuc2l0aW9uKTtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcbiAgICB9XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgb3V0bGluZTogbm9uZTtcblxuICAgICAgc3BhbiB7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjksIDAuOSwgMSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIubGFuZ3VhZ2VTd2l0Y2hlckxpc3Qge1xuICBkaXNwbGF5OiBmbGV4O1xuICBAaW5jbHVkZSBmb250LWhlYWRlci1jYXBpdGFsKCk7XG5cbiAgJl9fbGluayB7XG4gICAgY29sb3I6IHZhcigtLWRhcmstZ3JleSk7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKC0tc3BhY2luZy1zbS00KTtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXNwYWNpbmctc20tNCk7XG4gIH1cbn1cbiIsIi5tZW51TGlzdCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgQG1lZGlhICN7JHNjcmVlbi14bH0ge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIC5uYXZfX2xpbmsge1xuICAgICAgICBjb2xvcjogdmFyKC0tbGlnaHQtZ3JleSk7XG4gICAgICB9XG5cbiAgICAgIC5tZW51TGlzdF9fbGlua0hhc0NoaWxkcmVuIHtcbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbGlnaHQtZ3JleSk7XG4gICAgICAgICAgLXdlYmtpdC1tYXNrLWltYWdlOiB1cmwoXCIuLi8uLi9pbWcvdHJpYW5nbGUuc3ZnXCIpO1xuICAgICAgICAgIG1hc2staW1hZ2U6IHVybChcIi4uLy4uL2ltZy90cmlhbmdsZS5zdmdcIik7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAubmF2X19saW5rIHtcbiAgICBjb2xvcjogdmFyKC0tZGFyay1ncmV5KTtcbiAgICB0cmFuc2l0aW9uOiB2YXIoLS1ob3Zlci10cmFuc2l0aW9uLWZhc3QpO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLXNwYWNpbmctc20tMyk7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1zcGFjaW5nLXNtLTMpO1xuXG4gICAgQG1lZGlhICN7JHNjcmVlbi14bC14eGx9IHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLXNwYWNpbmctc20tMSk7XG4gICAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXNwYWNpbmctc20tMSk7XG4gICAgfVxuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1kYXJrLWdyZXkpO1xuICAgIH1cbiAgfVxuXG4gICZfX2l0ZW1IYXNDaGlsZHJlbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGFsaWduLXNlbGY6IGNlbnRlcjtcblxuICAgIEBtZWRpYSAjeyRzY3JlZW4teGx9IHtcbiAgICAgIC8vIG1vdXNlIHVzZXJzXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIC5tZW51TGlzdF9fbGlzdENoaWxkcmVuIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuXG4gICAgICAgIC8va2VlcCBwYXJlbnQgY29sb3IgZGFya1xuICAgICAgICAubWVudUxpc3RfX2xpbmtIYXNDaGlsZHJlbiB7XG4gICAgICAgICAgY29sb3I6IHZhcigtLWRhcmstZ3JleSk7XG5cbiAgICAgICAgICAvL2tlZXAgcGFyZW50IGNvbG9yIGRhcmtcbiAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWRhcmstZ3JleSkgIWltcG9ydGFudDtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZykgdHJhbnNsYXRlWSg1MCUpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8va2V5Ym9hcmQgdXNlcnNcbiAgICAmLm9wZW4ge1xuICAgICAgLm1lbnVMaXN0X19saXN0Q2hpbGRyZW4ge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmX19saW5rSGFzQ2hpbGRyZW4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLXNtLTIpICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLXNtLTIpO1xuXG4gICAgLy8gdHJpYW5nbGUgZm9yIHN1Ym1lbnVcbiAgICAmOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICByaWdodDogMDtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZykgdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgIC13ZWJraXQtbWFzay1pbWFnZTogdXJsKFwiLi4vLi4vaW1nL3RyaWFuZ2xlLnN2Z1wiKTtcbiAgICAgIG1hc2staW1hZ2U6IHVybChcIi4uLy4uL2ltZy90cmlhbmdsZS5zdmdcIik7XG4gICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMjVzIGVhc2UtaW4tb3V0O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZGFyay1ncmV5KTtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICB3aWR0aDogdmFyKC0tc3BhY2luZy1zbS0zKTtcbiAgICAgIGhlaWdodDogdmFyKC0tc3BhY2luZy1zbS0zKTtcbiAgICB9XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgJjphZnRlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWRhcmstZ3JleSkgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmX19saXN0Q2hpbGRyZW4ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgZm9udC1zaXplOiB2YXIoLS1zcGFjaW5nLXNtLTEpO1xuXG4gICAgLm5hdl9faXRlbSB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgIH1cblxuICAgIC5uYXZfX2xpbmsge1xuICAgICAgY29sb3I6IHZhcigtLWRhcmstZ3JleSkgIWltcG9ydGFudDtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICBwYWRkaW5nLXRvcDogdmFyKC0tc3BhY2luZy1zbS0yKTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1zcGFjaW5nLXNtLTIpO1xuXG4gICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgcGFkZGluZy10b3A6IHZhcigtLXNwYWNpbmctc20tMSk7XG4gICAgICB9XG5cbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1zcGFjaW5nLXNtLTEpO1xuICAgICAgfVxuXG4gICAgICBAbWVkaWEgI3skc2NyZWVuLWxnfSB7XG4gICAgICAgICY6aG92ZXIsXG4gICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWRhcmstZ3JleSk7XG4gICAgICAgICAgY29sb3I6IHZhcigtLXdoaXRlKSAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgQG1lZGlhICN7JHNjcmVlbi14bH0ge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogMDtcbiAgICAgIG1pbi13aWR0aDogMTAwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTBweCk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13aGl0ZSk7XG4gICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcbiAgICAgIGJveC1zaGFkb3c6IHZhcigtLWJveC1zaGFkb3cpO1xuICAgICAgdHJhbnNpdGlvbjogdmFyKC0taG92ZXItdHJhbnNpdGlvbi1mYXN0KTtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgYm94LXNoYWRvdzogdmFyKC0tYm94LXNoYWRvdy1ob3Zlcik7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIuaGlnaGxpZ2h0ZWRMaXN0IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICBAbWVkaWEgI3skc2NyZWVuLXhsfSB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgfVxuICAvLyBnaXZlIGl0IGEgYml0IG9mIGJvcmRlciB0byBrZWVwIGRpc3Rpbmd1aXNoZWQgZnJvbSBvbmUgaGlnaGxpZ2h0ZWQgZWxlbWVudCB0byB0aGUgb3RoZXJcbiAgLm5hdl9faXRlbSB7XG4gICAgJjpudGgtY2hpbGQobiArIDIpIHtcbiAgICAgIGJvcmRlci1sZWZ0OiAycHggc29saWQgdmFyKC0td2hpdGUpO1xuXG4gICAgICBAbWVkaWEgI3skc2NyZWVuLXNtfSB7XG4gICAgICAgIGJvcmRlci1yaWdodDogMnB4IHNvbGlkIHZhcigtLXdoaXRlKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAubmF2X19saW5rIHtcbiAgICBjb2xvcjogdmFyKC0tZGFyay1ncmV5KTtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXNwYWNpbmctc20tMik7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKC0tc3BhY2luZy1zbS0yKTtcblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBjb2xvcjogdmFyKC0tYmx1ZSk7XG4gICAgfVxuXG4gICAgQG1lZGlhICN7JHNjcmVlbi14bH0ge1xuICAgICAgY29sb3I6IHZhcigtLXdoaXRlKTtcbiAgICAgIHRyYW5zaXRpb246IHZhcigtLWhvdmVyLXRyYW5zaXRpb24tZmFzdCk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ibHVlKTtcblxuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1vcmFuZ2UpO1xuICAgICAgICBjb2xvcjogdmFyKC0td2hpdGUpO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBtZWRpYSAjeyRzY3JlZW4teGwteHhsfSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXNwYWNpbmctYmFzZSk7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLWJhc2UpO1xuICAgIH1cbiAgfVxuXG4gIC8vIGFwcGVhcnMgd2hlbiByZXN0IG9mIG5hdiBpcyByZXBsYWNlZCBieSBidXJnZXJcbiAgJi0tc21hbGwtc2NyZWVuIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG9yZGVyOiAxO1xuXG4gICAgQG1lZGlhICN7JHNjcmVlbi1zbX0ge1xuICAgICAgb3JkZXI6IDI7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2luZy1iYXNlKTtcbiAgICB9XG5cbiAgICBAbWVkaWEgI3skc2NyZWVuLXhsfSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIC5uYXZfX2l0ZW0ge1xuICAgICAgd2lkdGg6IDUwJTtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuXG4gICAgLm5hdl9fbGluayB7XG4gICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgZm9udC1zaXplOiB2YXIoLS1zcGFjaW5nLXNtLTEpO1xuICAgICAgY29sb3I6IHZhcigtLXdoaXRlKTtcbiAgICAgIHRyYW5zaXRpb246IHZhcigtLWhvdmVyLXRyYW5zaXRpb24tZmFzdCk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ibHVlKTtcbiAgICAgIGhlaWdodDogMTAwJTtcblxuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1vcmFuZ2UpO1xuICAgICAgICBjb2xvcjogdmFyKC0td2hpdGUpO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuaGlkZSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxufVxuIiwiLmJ1cmdlckJ1dHRvbiB7XG4gIC8vIHJlc2V0IGZyb20gYnV0dG9uIHN0eWxlc1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBtYXJnaW4tdG9wOiAwO1xuICBwYWRkaW5nOiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB6LWluZGV4OiAzO1xuICBoZWlnaHQ6IHZhcigtLW5hdi1oZWlnaHQpO1xuICAvLyBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ibHVlKTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgdHJhbnNpdGlvbjogdmFyKC0taG92ZXItdHJhbnNpdGlvbi1mYXN0KTtcblxuICAvLyB3aGVuIGhvdmVyZWQgZXhwYW5kIGxpbmVzIHRvIDEwMCUgd2lkdGhcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBjdXJzb3I6IHZhcigtLWN1cnNvci1wb2ludGVyKTtcblxuICAgIC5idXJnZXJCdXR0b25fX2JhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1vcmFuZ2UpO1xuICAgIH1cbiAgfVxuXG4gICYub3BlbiB7XG4gICAgLmJ1cmdlckJ1dHRvbl9fYmFycyB7XG4gICAgICBtYXJnaW4tbGVmdDogOXB4O1xuICAgIH1cblxuICAgIC5idXJnZXJCdXR0b25fX2JhciB7XG4gICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiB0b3AgbGVmdDtcbiAgICAgIH1cblxuICAgICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuXG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogYm90dG9tIGxlZnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJl9fdGV4dCB7XG4gICAgZm9udC1zaXplOiB2YXIoLS1zcGFjaW5nLXNtLTEpO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2luZy1zbS01KTtcbiAgfVxuXG4gICZfX2JhcnMge1xuICAgIHdpZHRoOiAzMHB4O1xuICAgIGhlaWdodDogMjJweDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcblxuICAgIEBtZWRpYSAjeyRzY3JlZW4tc219IHtcbiAgICAgIHdpZHRoOiAzNnB4O1xuICAgICAgaGVpZ2h0OiAyNHB4O1xuICAgIH1cbiAgfVxuXG4gICZfX2JhciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAycHg7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tZGFyay1ncmV5KTtcbiAgICB0cmFuc2l0aW9uOiB2YXIoLS1ob3Zlci10cmFuc2l0aW9uLWZhc3QpO1xuXG4gICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgd2lkdGg6IDgwJTtcbiAgICB9XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgd2lkdGg6IDYwJTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuXG4gICAgQG1lZGlhICN7JHNjcmVlbi1zbX0ge1xuICAgICAgaGVpZ2h0OiAzcHg7XG4gICAgfVxuICB9XG59XG4iLCJAaW1wb3J0IFwiaGVhZGVyL2xhbmd1YWdlU3dpdGNoZXJEcm9wZG93blwiO1xuQGltcG9ydCBcImhlYWRlci9sYW5ndWFnZVN3aXRjaGVyTGlzdFwiO1xuQGltcG9ydCBcImhlYWRlci9tZW51TGlzdFwiO1xuQGltcG9ydCBcImhlYWRlci9oaWdobGlnaHRlZExpc3RcIjtcbkBpbXBvcnQgXCJoZWFkZXIvYnVyZ2VyQnV0dG9uXCI7XG5cbi5zaXRlSGVhZGVyIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgei1pbmRleDogMjA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13aGl0ZSk7XG5cbiAgJjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogLTE7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIGJveC1zaGFkb3c6IDAgMXB4IDUwcHggMCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xuICB9XG5cbiAgJl9fbG9nbyB7XG4gICAgLy8gb3JkZXIgYmVjYXVzZSBvZiBoaWdobGlnaHRlZCBuYXYgd2hpY2ggZ29lcyBhYm92ZSBsb2dvIGFuZCBtZW51IG9uIHNtYWxsIHNjcmVlblxuICAgIG9yZGVyOiAyO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiA0O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIC8vIG1hcmdpbi10b3AgLT4gaGFjayB0byBnZXQgYm90dG9tIG9mIGdsb2JlIG91dHNpZGUgb2YgbmF2IGJvdHRvbSAtPiAxMDAlIHNvIHRoZSBsb2dvIGRvZXNudCBzaHJpbmsuXG4gICAgaGVpZ2h0OiB2YXIoLS1uYXYtaGVpZ2h0KTtcbiAgICBtYXJnaW4tdG9wOiBjYWxjKHZhcigtLXNwYWNpbmctYmFzZSkgLyAzLjUpO1xuICAgIG1hcmdpbi1ib3R0b206IGNhbGMoKHZhcigtLXNwYWNpbmctYmFzZSkgLyAzLjUpIC8gLTEpO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcblxuICAgIEBtZWRpYSAjeyRzY3JlZW4tc219IHtcbiAgICAgIG9yZGVyOiAxO1xuICAgIH1cblxuICAgIEBtZWRpYSAjeyRzY3JlZW4tbWR9IHtcbiAgICAgIG1hcmdpbi10b3A6IGNhbGModmFyKC0tc3BhY2luZy1iYXNlKSAvIDIuMik7XG4gICAgICBtYXJnaW4tYm90dG9tOiBjYWxjKCh2YXIoLS1zcGFjaW5nLWJhc2UpIC8gMi4yKSAvIC0xKTtcbiAgICB9XG5cbiAgICBAbWVkaWEgI3skc2NyZWVuLWxnfSB7XG4gICAgICBtYXJnaW4tdG9wOiA5cHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAtOXB4O1xuICAgIH1cblxuICAgIHN2ZyB7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICB9XG4gIH1cblxuICAmX19uYXYge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgLy8gb3JkZXIgYmVjYXVzZSBvZiBoaWdobGlnaHRlZCBuYXYgd2hpY2ggZ29lcyBhYm92ZSBsb2dvIGFuZCBtZW51IG9uIHNtYWxsIHNjcmVlblxuICAgIG9yZGVyOiAzO1xuXG4gICAgLy8gaGlkZSB3aGVuIGFjZiBvcHRpb24gbm8gbmF2aWdhdGlvbiBpcyBjaG9zZW5cbiAgICAucGFnZS0tbm8tbmF2aWdhdGlvbiAmIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgJl9faGlnaGxpZ2h0ZWRMaXN0IHtcbiAgICAvLyBoaWRlIHdoZW4gYWNmIG9wdGlvbiBubyBuYXZpZ2F0aW9uIGlzIGNob3NlblxuICAgIC5wYWdlLS1uby1uYXZpZ2F0aW9uICYge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cbn1cbiIsIi5uYXYge1xuICAvLyBicmVha3BvaW50IHNjcmVlbi14bFxuICAmX19saXN0V3JhcHBlciB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHdpZHRoOiAxMDB2dztcbiAgICBoZWlnaHQ6IDEwMHZoO1xuICAgIG92ZXJmbG93LXk6IHNjcm9sbDtcbiAgICBwYWRkaW5nLXRvcDogY2FsYyh2YXIoLS1uYXYtaGVpZ2h0KSArIHZhcigtLXNwYWNpbmctYmFzZSkpO1xuICAgIC8vIHRvIG1ha2UgZW5vdWdoIHNwYWNlIGZvciBtZW51IGJhciBvbiBzYWZhcmkgbW9iaWxlXG4gICAgcGFkZGluZy1ib3R0b206IGNhbGModmFyKC0tbmF2LWhlaWdodCkgKyB2YXIoLS1zcGFjaW5nLWxnLTIpKTtcbiAgICB6LWluZGV4OiAzO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13aGl0ZSk7XG4gICAgbWFyZ2luOiAwO1xuICAgIHRyYW5zaXRpb246IHZhcigtLWhvdmVyLXRyYW5zaXRpb24pO1xuXG4gICAgJi5zaG93IHtcbiAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgfVxuXG4gICAgQG1lZGlhICN7JHNjcmVlbi1zbX0ge1xuICAgICAgcGFkZGluZy10b3A6IGNhbGModmFyKC0tbmF2LWhlaWdodCkgKyB2YXIoLS1zcGFjaW5nLWxnLTMpKTtcbiAgICB9XG5cbiAgICBAbWVkaWEgI3skc2NyZWVuLW1kfSB7XG4gICAgICBwYWRkaW5nLXRvcDogY2FsYyh2YXIoLS1uYXYtaGVpZ2h0KSArIHZhcigtLXNwYWNpbmctbGctNikpO1xuICAgIH1cblxuICAgIEBtZWRpYSAjeyRzY3JlZW4teGx9IHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgb3ZlcmZsb3c6IGluaGVyaXQ7XG4gICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgIGp1c3RpZnktY29udGVudDogdW5zZXQ7XG4gICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIH1cbiAgfVxuXG4gICZfX2l0ZW0ge1xuICAgIG9wYWNpdHk6IDA7XG5cbiAgICAvLyBubyBhbmltYXRpb24gZm9yIHN1Ym1lbnUgaXRlbXNcbiAgICAubWVudUxpc3RfX2xpbmtIYXNDaGlsZHJlbiAmIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuXG4gICAgLnNob3cgLm1lbnVMaXN0ID4gJiB7XG4gICAgICBhbmltYXRpb24tbmFtZTogZmFkZWluO1xuICAgICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjNzO1xuICAgICAgYW5pbWF0aW9uLWZpbGwtbW9kZTogZm9yd2FyZHM7XG4gICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcblxuICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIGFuaW1hdGlvbi1kZWxheTogMC4xcztcbiAgICAgIH1cblxuICAgICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgICBhbmltYXRpb24tZGVsYXk6IDAuMnM7XG4gICAgICB9XG5cbiAgICAgICY6bnRoLWNoaWxkKDMpIHtcbiAgICAgICAgYW5pbWF0aW9uLWRlbGF5OiAwLjNzO1xuICAgICAgfVxuXG4gICAgICAmOm50aC1jaGlsZCg0KSB7XG4gICAgICAgIGFuaW1hdGlvbi1kZWxheTogMC40cztcbiAgICAgIH1cblxuICAgICAgJjpudGgtY2hpbGQoNSkge1xuICAgICAgICBhbmltYXRpb24tZGVsYXk6IDAuNXM7XG4gICAgICB9XG5cbiAgICAgICY6bnRoLWNoaWxkKDYpIHtcbiAgICAgICAgYW5pbWF0aW9uLWRlbGF5OiAwLjZzO1xuICAgICAgfVxuXG4gICAgICAmOm50aC1jaGlsZCg3KSB7XG4gICAgICAgIGFuaW1hdGlvbi1kZWxheTogMC43cztcbiAgICAgIH1cblxuICAgICAgJjpudGgtY2hpbGQoOCkge1xuICAgICAgICBhbmltYXRpb24tZGVsYXk6IDAuOHM7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnNob3cgLmhpZ2hsaWdodGVkTGlzdCAmIHtcbiAgICAgIGFuaW1hdGlvbi1uYW1lOiBmYWRlaW47XG4gICAgICBhbmltYXRpb24tZHVyYXRpb246IDAuMnM7XG4gICAgICBhbmltYXRpb24tZmlsbC1tb2RlOiBmb3J3YXJkcztcbiAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xuXG4gICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgYW5pbWF0aW9uLWRlbGF5OiAxLjVzO1xuICAgICAgfVxuXG4gICAgICAmOm50aC1jaGlsZCgyKSB7XG4gICAgICAgIGFuaW1hdGlvbi1kZWxheTogMnM7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQG1lZGlhICN7JHNjcmVlbi14bH0ge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG4gIH1cblxuICAmX19sYW5ndWFnZVN3aXRjaGVyTGlzdCB7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy1sZy0zKTtcblxuICAgIEBtZWRpYSAjeyRzY3JlZW4teGx9IHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgJl9fYnVyZ2VyQnV0dG9uIHtcbiAgICBAbWVkaWEgI3skc2NyZWVuLXhsfSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgJl9fbGluayB7XG4gICAgQGluY2x1ZGUgZm9udC1oZWFkZXItY2FwaXRhbCgpO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLXNtLTEpO1xuICAgIGNvbG9yOiB2YXIoLS13aGl0ZSk7XG5cbiAgICBAbWVkaWEgI3skc2NyZWVuLXhsfSB7XG4gICAgICBoZWlnaHQ6IHZhcigtLW5hdi1oZWlnaHQpO1xuICAgICAgbWluLXdpZHRoOiB2YXIoLS1uYXYtaGVpZ2h0KTtcbiAgICAgIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctYmFzZSk7XG4gICAgfVxuICB9XG5cbiAgJl9fbGFuZ3VhZ2VTd2l0Y2hlckxpc3Qge1xuICAgIEBtZWRpYSAjeyRzY3JlZW4teGx9IHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbkBrZXlmcmFtZXMgZmFkZWluIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxuXG4gIDgwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjEpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG4iLCIuaG9tZUJhbm5lciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gIG1pbi1oZWlnaHQ6IGNhbGMoKDg1dmggLSAyICogdmFyKC0tbmF2LWhlaWdodCkpKTtcbiAgLy8gcmVtb3ZlIG1hcmdpbiBzZXQgb24gc2l0ZU1haW5cbiAgbWFyZ2luLXRvcDogY2FsYyh2YXIoLS1zcGFjaW5nLWxnLTQpIC8gLTEpO1xuICAvLyBtYWtlIGl0IGZ1bGwgd2lkdGggaW4gb3JkZXIgdG8gZ2V0IHRoZSBmaXggdGhlIGdyYWRpZW50IG9uIHRoZSBjb250YWluZXIgaW5zdGVhZCBvZiB0aGUgaW1hZ2UgLSB3aGljaCBpcyBmaXhlZCBhbmQgdGhlcmVmb3JlIHRleHQgbm90IHJlYWRhYmxlIHdoZW4gc2Nyb2xsZWQgdXBcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoNTAlIC0gNTB2dyk7XG4gIG1hcmdpbi1yaWdodDogY2FsYyg1MCUgLSA1MHZ3KTtcblxuICBAbWVkaWEgI3skc2NyZWVuLXNtfSB7XG4gICAgbWFyZ2luLXRvcDogY2FsYyh2YXIoLS1zcGFjaW5nLWxnLTUpIC8gLTEpO1xuICB9XG5cbiAgQG1lZGlhICN7JHNjcmVlbi1sZ30ge1xuICAgIG1pbi1oZWlnaHQ6IGNhbGMoKDk1dmggLSAyICogdmFyKC0tbmF2LWhlaWdodCkpKTtcbiAgICBtYXJnaW4tdG9wOiBjYWxjKHZhcigtLXNwYWNpbmctbGctNikgLyAtMSk7XG4gIH1cblxuICBAbWVkaWEgI3skc2NyZWVuLXhsLXh4bH0ge1xuICAgIG1hcmdpbi10b3A6IGNhbGModmFyKC0tc3BhY2luZy1sZy03KSAvIC0xKTtcbiAgfVxuXG4gICZfX2ltYWdlQmx1cnJlZFdyYXBwZXIge1xuICAgIEBpbmNsdWRlIGltYWdlLWZpeGVkLWJhY2tncm91bmQoY2VudGVyIHRvcCk7XG4gICAgLy8gdG8gc3RvcCBibHVycnkgZWRnZXNcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgJjphZnRlciB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ibHVlLXJnYmEpO1xuICAgICAgZmlsdGVyOiBibHVyKHZhcigtLXNwYWNpbmctc20tNykpO1xuICAgICAgei1pbmRleDogLTE7XG4gICAgfVxuICB9XG5cbiAgJl9faW1hZ2VCbHVycmVkIHtcbiAgICBmaWx0ZXI6IGJsdXIodmFyKC0tc3BhY2luZy1zbS03KSk7XG4gICAgLy8gdG8gc3RvcCBibHVycnkgZWRnZXNcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMDEpO1xuICB9XG5cbiAgJl9faW1hZ2VGb2N1c3NlZCB7XG4gICAgQGluY2x1ZGUgaW1hZ2UtZml4ZWQtYmFja2dyb3VuZCgpO1xuICB9XG5cbiAgJl9fY29udGVudCB7XG4gICAgQGluY2x1ZGUgc2l0ZS1jb250YWluZXI7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGp1c3RpZnktY29udGVudDogZW5kO1xuICAgIG1pbi1oZWlnaHQ6IGNhbGMoKDg1dmggLSAyICogdmFyKC0tbmF2LWhlaWdodCkpKTtcbiAgICAvLyBtYXJnaW4gdG9wIGZvciBmb3JtcyBuZWVkZWRcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tc3BhY2luZy1sZy0xKTtcbiAgICBwYWRkaW5nLXRvcDogY2FsYyh2YXIoLS1zcGFjaW5nLWxnLTEpICsgKDIgKiB2YXIoLS1uYXYtaGVpZ2h0KSkpO1xuXG4gICAgQG1lZGlhICN7JHNjcmVlbi1zbX0ge1xuICAgICAgcGFkZGluZy1ib3R0b206IHZhcigtLXNwYWNpbmctbGctMyk7XG4gICAgICBwYWRkaW5nLXRvcDogY2FsYyh2YXIoLS1zcGFjaW5nLWxnLTMpICsgdmFyKC0tbmF2LWhlaWdodCkpO1xuICAgIH1cbiAgICBAbWVkaWEgI3skc2NyZWVuLW1kfSB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tc3BhY2luZy1sZy02KTtcbiAgICAgIHBhZGRpbmctdG9wOiBjYWxjKHZhcigtLXNwYWNpbmctbGctOCkpO1xuICAgIH1cblxuICAgIEBtZWRpYSAjeyRzY3JlZW4tbGd9IHtcbiAgICAgIG1pbi1oZWlnaHQ6IGNhbGMoKDk1dmggLSAyICogdmFyKC0tbmF2LWhlaWdodCkpKTtcbiAgICAgIHBhZGRpbmctdG9wOiBjYWxjKHZhcigtLXNwYWNpbmctbGctNykpO1xuICAgIH1cbiAgfVxuXG4gICZfX2NvbnRlbnRUZXh0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgY29sb3I6IHZhcigtLXdoaXRlKTtcbiAgICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gICAgb3ZlcmZsb3ctd3JhcDogYnJlYWstd29yZDtcblxuICAgICYtLWxlZnQsXG4gICAgJi0tcmlnaHQge1xuICAgICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB6LWluZGV4OiAtMTtcbiAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KFxuICAgICAgICAgIDE4N2RlZyxcbiAgICAgICAgICByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDMwJSxcbiAgICAgICAgICByZ2JhKDAsIDM2LCA1NiwgMC4yNSkgNDUlLFxuICAgICAgICAgIHJnYmEoMCwgMzYsIDU2LCAwLjQ1KSA1MCUsXG4gICAgICAgICAgcmdiYSgwLCAzNiwgNTYsIDAuOCkgNTclLFxuICAgICAgICAgIHJnYmEoMCwgMzYsIDU2LCAxKSA4MCVcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICAgIEBtZWRpYSAjeyRzY3JlZW4tbWR9IHtcbiAgICAgICAgLy8gdGFyZ2V0IGFsbCBjaGlsZHJlblxuICAgICAgICA+ICoge1xuICAgICAgICAgIG1heC13aWR0aDogNzAlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBAbWVkaWEgI3skc2NyZWVuLWxnfSB7XG4gICAgICAgIC8vIHRhcmdldCBhbGwgY2hpbGRyZW5cbiAgICAgICAgPiAqIHtcbiAgICAgICAgICBtYXgtd2lkdGg6IDUwJTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICYtLWxlZnQge1xuICAgICAgQG1lZGlhICN7JHNjcmVlbi1tZH0ge1xuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoXG4gICAgICAgICAgICAyNTJkZWcsXG4gICAgICAgICAgICB0cmFuc3BhcmVudCAyMCUsXG4gICAgICAgICAgICB2YXIoLS1kYXJrLWdyZXkpIDk5JVxuICAgICAgICAgICk7XG4gICAgICAgIH1cblxuICAgICAgICAuaG9tZUJhbm5lcl9fdGV4dExpbmsge1xuICAgICAgICAgIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLS1yaWdodCB7XG4gICAgICBAbWVkaWEgI3skc2NyZWVuLW1kfSB7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoXG4gICAgICAgICAgICAxNDBkZWcsXG4gICAgICAgICAgICB0cmFuc3BhcmVudCAyNSUsXG4gICAgICAgICAgICB2YXIoLS1kYXJrLWdyZXkpIDk5JVxuICAgICAgICAgICk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLS1ibHVlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJsdWUpO1xuICAgICAgY29sb3I6IHZhcigtLXdoaXRlKTtcbiAgICAgIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctbGctMSkgdmFyKC0tc3BhY2luZy1zbS0xKTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO1xuICAgICAgYm94LXNoYWRvdzogdmFyKC0tYm94LXNoYWRvdyk7XG5cbiAgICAgIEBtZWRpYSAjeyRzY3JlZW4tc219IHtcbiAgICAgICAgcGFkZGluZzogdmFyKC0tc3BhY2luZy1sZy0yKTtcbiAgICAgIH1cblxuICAgICAgQG1lZGlhICN7JHNjcmVlbi1tZH0ge1xuICAgICAgICBtYXgtd2lkdGg6IDkwJTtcbiAgICAgICAgcGFkZGluZzogdmFyKC0tc3BhY2luZy1sZy00KTtcbiAgICAgIH1cblxuICAgICAgQG1lZGlhICN7JHNjcmVlbi1sZ30ge1xuICAgICAgICBtYXgtd2lkdGg6IDgwJTtcbiAgICAgIH1cblxuICAgICAgQG1lZGlhICN7JHNjcmVlbi14bH0ge1xuICAgICAgICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLWxnLTUpO1xuICAgICAgICB3aWR0aDogNzAlO1xuICAgICAgICBtYXgtd2lkdGg6IDgwMHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICZfX3RleHRUYWdMaW5lIHtcbiAgICBAaW5jbHVkZSBmb250LWhlYWRlci1jYXBpdGFsKCk7XG4gICAgbWFyZ2luLXRvcDogYXV0bztcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLXNtLTIpO1xuICB9XG5cbiAgJl9fdGV4dFRpdGxlIHtcbiAgICBmb250LXNpemU6IHZhcigtLXNwYWNpbmctbGctMik7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGh5cGhlbnM6IG1hbnVhbDtcblxuICAgIEBtZWRpYSAjeyRzY3JlZW4tc219IHtcbiAgICAgIGZvbnQtc2l6ZTogdmFyKC0tc3BhY2luZy1sZy0yKTtcbiAgICB9XG5cbiAgICBAbWVkaWEgI3skc2NyZWVuLW1kfSB7XG4gICAgICBmb250LXNpemU6IHZhcigtLXNwYWNpbmctbGctMyk7XG4gICAgfVxuXG4gICAgQG1lZGlhICN7JHNjcmVlbi1sZ30ge1xuICAgICAgZm9udC1zaXplOiB2YXIoLS1zcGFjaW5nLWxnLTQpO1xuICAgIH1cblxuICAgIEBtZWRpYSAjeyRzY3JlZW4teGx9IHtcbiAgICAgIGZvbnQtc2l6ZTogdmFyKC0tc3BhY2luZy1sZy0zKTtcbiAgICB9XG5cbiAgICAuaG9tZUJhbm5lcl9fY29udGVudFRleHQtLWxlZnQgJiB7XG4gICAgICBAbWVkaWEgI3skc2NyZWVuLXh4bH0ge1xuICAgICAgICBmb250LXNpemU6IHZhcigtLXNwYWNpbmctbGctNSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJl9fdGV4dExpbmsge1xuICAgIEBpbmNsdWRlIGJ1dHRvbihcbiAgICAgIHZhcigtLW9yYW5nZSksXG4gICAgICB2YXIoLS13aGl0ZSksXG4gICAgICB2YXIoLS1kYXJrLWdyZXkpLFxuICAgICAgdmFyKC0td2hpdGUpXG4gICAgKTtcbiAgICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjaW5nLWJhc2UpO1xuXG4gICAgLmhvbWVCYW5uZXJfX2NvbnRlbnRUZXh0LS13aWRlICYge1xuICAgICAgQGluY2x1ZGUgYnV0dG9uKFxuICAgICAgICB2YXIoLS13aGl0ZSksXG4gICAgICAgIHZhcigtLWJsdWUpLFxuICAgICAgICB2YXIoLS1kYXJrLWdyZXkpLFxuICAgICAgICB2YXIoLS13aGl0ZSlcbiAgICAgICk7XG4gICAgfVxuICB9XG5cbiAgJl9fY29udGVudEZvcm0ge1xuICAgIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctbGctMykgdmFyKC0tc3BhY2luZy1sZy00KTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13aGl0ZS1yZ2JhKTtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG5cbiAgICBAbWVkaWEgI3skc2NyZWVuLXNtfSB7XG4gICAgICBtYXgtd2lkdGg6IDgwJTtcbiAgICB9XG5cbiAgICBAbWVkaWEgI3skc2NyZWVuLW1kfSB7XG4gICAgICBtYXgtd2lkdGg6IDY1JTtcbiAgICAgIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctbGctMikgdmFyKC0tc3BhY2luZy1sZy0zKTtcbiAgICB9XG5cbiAgICBAbWVkaWEgI3skc2NyZWVuLWxnfSB7XG4gICAgICB3aWR0aDogNTUlO1xuICAgIH1cblxuICAgIEBtZWRpYSAjeyRzY3JlZW4teGwteHhsfSB7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIG1heC13aWR0aDogNjgwcHg7XG4gICAgICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLWxnLTMpIHZhcigtLXNwYWNpbmctbGctNCk7XG4gICAgfVxuXG4gICAgJi0tcmlnaHQge1xuICAgICAgQG1lZGlhICN7JHNjcmVlbi1tZH0ge1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmX19mb3JtVG9wVGl0bGUge1xuICAgIEBpbmNsdWRlIHRhZ2xpbmUodmFyKC0tb3JhbmdlKSk7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy1zbS00KTtcbiAgfVxuXG4gICZfX2Zvcm1UaXRsZSB7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgZm9udC1zaXplOiB2YXIoLS1zcGFjaW5nLWxnLTEpO1xuXG4gICAgQG1lZGlhICN7JHNjcmVlbi1tZH0ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy1sZy0xKTtcbiAgICAgIGZvbnQtc2l6ZTogdmFyKC0tc3BhY2luZy1sZy0yKTtcbiAgICB9XG4gIH1cblxuICAucHJvZ3Jlc3NCYXJfX3dyYXBwZXIge1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctbGctMSk7XG4gIH1cbn1cbiIsIi50ZWFzZSB7XG4gIHRyYW5zaXRpb246IDAuM3M7XG5cbiAgJl9fbGluayB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGhlaWdodDogMTAwJTtcblxuICAgICY6aG92ZXIge1xuICAgICAgLnRlYXNlX19pbWcge1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XG4gICAgICB9XG5cbiAgICAgIC50ZWFzZV9faW1nV3JhcHBlciB7XG4gICAgICAgIGJveC1zaGFkb3c6IHZhcigtLWJveC1zaGFkb3ctaG92ZXIpO1xuICAgICAgfVxuXG4gICAgICAudGVhc2VfX21vcmVJbmZvIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZGFyay1ncmV5KTtcbiAgICAgICAgY29sb3I6IHZhcigtLXdoaXRlKTtcblxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoM3B4KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICZfX2ltZ1dyYXBwZXIge1xuICAgIEBpbmNsdWRlIGFzcGVjdC1yYXRpbygxLjEsIDIpO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XG4gICAgdHJhbnNpdGlvbjogdmFyKC0taG92ZXItdHJhbnNpdGlvbik7XG4gICAgYm94LXNoYWRvdzogdmFyKC0tYm94LXNoYWRvdyk7XG4gIH1cblxuICAmX19pbWcge1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO1xuICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB0cmFuc2l0aW9uOiB2YXIoLS1ob3Zlci10cmFuc2l0aW9uKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4wMywgMS4wMywgMSk7XG4gIH1cblxuICAmX190ZXh0V3JhcHBlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDE7XG4gICAgZmxleDogMjtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgbWFyZ2luLXRvcDogY2FsYyh2YXIoLS1zcGFjaW5nLWxnLTUpIC8gLTEpO1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1zcGFjaW5nLXNtLTQpO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2luZy1zbS00KTtcbiAgICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLXNtLTEpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXdoaXRlKTtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcblxuICAgIEBtZWRpYSAjeyRzY3JlZW4tc219IHtcbiAgICAgIG1hcmdpbi10b3A6IGNhbGModmFyKC0tc3BhY2luZy1sZy0yKSAvIC0xKTtcbiAgICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1zcGFjaW5nLXNtLTMpO1xuICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLXNtLTMpO1xuICAgIH1cblxuICAgIEBtZWRpYSAjeyRzY3JlZW4tbWR9IHtcbiAgICAgIG1hcmdpbi10b3A6IGNhbGModmFyKC0tc3BhY2luZy1sZy0zKSAvIC0xKTtcbiAgICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1zcGFjaW5nLWJhc2UpO1xuICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLWJhc2UpO1xuICAgIH1cblxuICAgIEBtZWRpYSAjeyRzY3JlZW4teGwteHhsfSB7XG4gICAgICBtYXJnaW4tdG9wOiBjYWxjKHZhcigtLXNwYWNpbmctbGctNCkgLyAtMSk7XG4gICAgICBtYXJnaW4tbGVmdDogdmFyKC0tc3BhY2luZy1sZy0xKTtcbiAgICAgIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2luZy1sZy0xKTtcbiAgICB9XG5cbiAgICBAbWVkaWEgI3skc2NyZWVuLXh4bH0ge1xuICAgICAgbWFyZ2luLXRvcDogY2FsYyh2YXIoLS1zcGFjaW5nLWxnLTUpIC8gLTEpO1xuICAgICAgbWFyZ2luLWxlZnQ6IHZhcigtLXNwYWNpbmctbGctMik7XG4gICAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXNwYWNpbmctbGctMik7XG4gICAgfVxuXG4gICAgLnRlYXNlLS1sYXlvdXQyICYge1xuICAgICAgQG1lZGlhICN7JHNjcmVlbi1tZH0ge1xuICAgICAgICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLWxnLTEpIHZhcigtLXNwYWNpbmctbGctMik7XG4gICAgICB9XG5cbiAgICAgIEBtZWRpYSAjeyRzY3JlZW4tc219IHtcbiAgICAgICAgbWFyZ2luLXRvcDogY2FsYyh2YXIoLS1zcGFjaW5nLWxnLTIpIC8gLTEpO1xuICAgICAgICBtYXJnaW4tbGVmdDogdmFyKC0tc3BhY2luZy1zbS0zKTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLXNtLTMpO1xuICAgICAgfVxuXG4gICAgICBAbWVkaWEgI3skc2NyZWVuLXhsfSB7XG4gICAgICAgIG1hcmdpbi10b3A6IGNhbGModmFyKC0tc3BhY2luZy1sZy00KSAvIC0xKTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IHZhcigtLXNwYWNpbmctbGctNCk7XG4gICAgICAgIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2luZy1sZy00KTtcbiAgICAgIH1cblxuICAgICAgQG1lZGlhICN7JHNjcmVlbi14bC14eGx9IHtcbiAgICAgICAgcGFkZGluZzogdmFyKC0tc3BhY2luZy1sZy0yKTtcbiAgICAgICAgbWFyZ2luLXRvcDogY2FsYyh2YXIoLS1zcGFjaW5nLWxnLTYpIC8gLTEpO1xuICAgICAgICBtYXJnaW4tbGVmdDogdmFyKC0tc3BhY2luZy1sZy00KTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLWxnLTQpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICZfX3Bvc3RUeXBlLFxuICAmX19wb3N0Q2F0ZWdvcnkge1xuICAgIEBpbmNsdWRlIHRhZ2xpbmU7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy1zbS00KTtcbiAgfVxuXG4gICZfX3Bvc3RDYXRlZ29yeSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIH1cblxuICAmX190aXRsZSB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLXNtLTIpO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tc3BhY2luZy1sZy0xKTtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGNvbG9yOiB2YXIoLS1kYXJrLWdyZXkpO1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICB9XG5cbiAgJl9fcHJldmlldyB7XG4gICAgY29sb3I6IHZhcigtLWRhcmstZ3JleSk7XG4gICAgbWFyZ2luLXRvcDogY2FsYyh2YXIoLS1zcGFjaW5nLXNtLTYpIC8gLTEpO1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctc20tMSk7XG4gIH1cblxuICAmX19tb3JlSW5mbyB7XG4gICAgQGluY2x1ZGUgYnV0dG9uKFxuICAgICAgdmFyKC0tYmx1ZSksXG4gICAgICB2YXIoLS13aGl0ZSksXG4gICAgICB2YXIoLS1kYXJrLWdyZXkpLFxuICAgICAgdmFyKC0td2hpdGUpLFxuICAgICAgc21hbGwsXG4gICAgICBhcnJvd1xuICAgICk7XG4gICAgYWxpZ24tc2VsZjogZmxleC1zdGFydDtcbiAgICBtYXJnaW4tdG9wOiBhdXRvO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgY3Vyc29yOiB2YXIoLS1jdXJzb3ItcG9pbnRlcik7XG4gIH1cblxuICAvLyBvbiBob3Jpem9udGFsIHNjcm9sbFxuICAmLS1sYXlvdXRIb3Jpem9udGFsU2Nyb2xsIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgICB3aWR0aDogODAlO1xuICAgIG1pbi13aWR0aDogODAlO1xuICAgIG1hcmdpbi1yaWdodDogMyU7XG5cbiAgICBAbWVkaWEgI3skc2NyZWVuLXNtfSB7XG4gICAgICB3aWR0aDogNDUlO1xuICAgICAgbWluLXdpZHRoOiA0NSU7XG4gICAgfVxuXG4gICAgQG1lZGlhICN7JHNjcmVlbi1sZ30ge1xuICAgICAgd2lkdGg6IDI4JTtcbiAgICAgIG1pbi13aWR0aDogMjglO1xuICAgIH1cblxuICAgICY6aG92ZXIge1xuICAgICAgLnRlYXNlX19pbWcge1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XG4gICAgICB9XG5cbiAgICAgIC50ZWFzZV9faW1nV3JhcHBlciB7XG4gICAgICAgIGJveC1zaGFkb3c6IHZhcigtLWJveC1zaGFkb3ctaG92ZXIpO1xuICAgICAgfVxuXG4gICAgICAudGVhc2VfX21vcmVJbmZvIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZGFyay1ncmV5KTtcbiAgICAgICAgY29sb3I6IHZhcigtLXdoaXRlKTtcblxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoM3B4KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy9wcm9ncmVzc0JhciBmb3IgUmFpc2Vub3cgYW5kIGZvciBHcmF2aXR5IEZvcm0gLT4gcHJvZ3Jlc3NCYXItLWZvcm0gaXMgYWRhcHRpb24gZm9yIEdyYXZpdHkgRm9ybVxuXG4ucHJvZ3Jlc3NCYXIge1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBib3JkZXI6IDA7IC8qIGZvciBJRSAqL1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiB2YXIoLS1zcGFjaW5nLWxnLTEpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13aGl0ZSk7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO1xuXG4gIEBtZWRpYSAjeyRzY3JlZW4tc219IHtcbiAgICBoZWlnaHQ6IHZhcigtLXNwYWNpbmctbGctMik7XG4gIH1cblxuICAucHJvZ3Jlc3NCYXItLWdyYXZpdHlGb3JtICYge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWxpZ2h0LWdyZXkpO1xuICAgIGhlaWdodDogdmFyKC0tc3BhY2luZy1iYXNlKTtcblxuICAgIEBtZWRpYSAjeyRzY3JlZW4tc219IHtcbiAgICAgIGhlaWdodDogdmFyKC0tc3BhY2luZy1sZy0xKTtcbiAgICB9XG4gIH1cblxuICAmOjotd2Via2l0LXByb2dyZXNzLWJhciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0td2hpdGUpO1xuXG4gICAgLnByb2dyZXNzQmFyLS1ncmF2aXR5Rm9ybSAmIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWxpZ2h0LWdyZXkpO1xuICAgIH1cbiAgfVxuXG4gIC8vIGZvciBhbmltYXRpb24gd2l0aCBicm93c2VyIGNvbXBhdGliaWxpdHk6XG4gICY6Oi13ZWJraXQtcHJvZ3Jlc3MtdmFsdWUge1xuICAgIHRyYW5zaXRpb246IHdpZHRoIDEuNHM7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tb3JhbmdlKTtcbiAgICBib3gtc2hhZG93OiB2YXIoLS1ib3gtc2hhZG93KTtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcblxuICAgIC5wcm9ncmVzc0Jhci0tZ3Jhdml0eUZvcm0gJiB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1kYXJrLWdyZXkpO1xuICAgIH1cbiAgfVxuXG4gICY6Oi1tb3otcHJvZ3Jlc3MtYmFyIHtcbiAgICB0cmFuc2l0aW9uOiBwYWRkaW5nLWJvdHRvbSAxLjRzO1xuICAgIHBhZGRpbmctbGVmdDogdmFyKC0tc3BhY2luZy1sZy0yKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tdmFsdWUpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW9yYW5nZSk7XG4gICAgYm94LXNoYWRvdzogdmFyKC0tYm94LXNoYWRvdyk7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XG4gICAgaGVpZ2h0OiAwO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IDAgMDtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpIHRyYW5zbGF0ZVgoLTUwcHgpO1xuXG4gICAgLnByb2dyZXNzQmFyLS1ncmF2aXR5Rm9ybSAmIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWRhcmstZ3JleSk7XG4gICAgfVxuICB9XG5cbiAgJjo6LW1zLWZpbGwge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW9yYW5nZSk7XG4gICAgYm94LXNoYWRvdzogdmFyKC0tYm94LXNoYWRvdyk7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XG4gICAgYm9yZGVyOiAwO1xuXG4gICAgLnByb2dyZXNzQmFyLS1ncmF2aXR5Rm9ybSAmIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWRhcmstZ3JleSk7XG4gICAgfVxuICB9XG5cbiAgJl9fdGV4dCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctbGVmdDogdmFyKC0tc3BhY2luZy1sZy0xKTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLXNtLTMpO1xuICAgIGNvbG9yOiB2YXIoLS1vZmYtd2hpdGUpO1xuICAgIGxldHRlci1zcGFjaW5nOiB2YXIoLS1sZXR0ZXItc3BhY2luZy1zbSk7XG4gICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtaGVhZGluZyk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXNtKTtcblxuICAgIEBtZWRpYSAjeyRzY3JlZW4tc219IHtcbiAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1iYXNlKTtcbiAgICAgIHBhZGRpbmctbGVmdDogdmFyKC0tc3BhY2luZy1sZy0zKTtcbiAgICB9XG5cbiAgICAucHJvZ3Jlc3NCYXItLWdyYXZpdHlGb3JtICYge1xuICAgICAgY29sb3I6IHZhcigtLWRhcmstZ3JleSk7XG4gICAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXNwYWNpbmctYmFzZSk7XG5cbiAgICAgICYucHJvZ3Jlc3NCYXJfX3RleHQtLWxlZnRBbGlnbmVkIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgfVxuXG4gICAgICBAbWVkaWEgI3skc2NyZWVuLXNtfSB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1zbSk7XG4gICAgICAgIHBhZGRpbmctbGVmdDogdmFyKC0tc3BhY2luZy1sZy0xKTtcblxuICAgICAgICAmLnByb2dyZXNzQmFyX190ZXh0LS1sZWZ0QWxpZ25lZCB7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IC01cHg7XG4gICAgICB0b3A6IDE1JTtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uLy4uL2ltZy9hcnJvdy1jdXJ2ZWQtbGVmdC5zdmdcIik7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgd2lkdGg6IHZhcigtLXNwYWNpbmctbGctMSk7XG4gICAgICBoZWlnaHQ6IHZhcigtLXNwYWNpbmctbGctMSk7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgICAgYW5pbWF0aW9uOiBmYWRlLWluIDAuNXMgZWFzZS1pbiAxLjVzIGZvcndhcmRzO1xuXG4gICAgICBAbWVkaWEgI3skc2NyZWVuLXNtfSB7XG4gICAgICAgIHRvcDogMjUlO1xuICAgICAgICB3aWR0aDogdmFyKC0tc3BhY2luZy1sZy0zKTtcbiAgICAgICAgaGVpZ2h0OiB2YXIoLS1zcGFjaW5nLWxnLTMpO1xuICAgICAgfVxuXG4gICAgICAucHJvZ3Jlc3NCYXItLWdyYXZpdHlGb3JtICYge1xuICAgICAgICB3aWR0aDogdmFyKC0tc3BhY2luZy1iYXNlKTtcbiAgICAgICAgaGVpZ2h0OiB2YXIoLS1zcGFjaW5nLWJhc2UpO1xuICAgICAgICB0b3A6IGF1dG87XG4gICAgICAgIGJvdHRvbTogY2FsYyh2YXIoLS1zcGFjaW5nLXNtLTIpIC8gLTIpO1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi8uLi9pbWcvYXJyb3ctY3VydmVkLWxlZnQtZGFyay5zdmdcIik7XG5cbiAgICAgICAgQG1lZGlhICN7JHNjcmVlbi1zbX0ge1xuICAgICAgICAgIGJvdHRvbTogY2FsYyh2YXIoLS1zcGFjaW5nLXNtLTEpIC8gLTIpO1xuICAgICAgICAgIHdpZHRoOiB2YXIoLS1zcGFjaW5nLWxnLTEpO1xuICAgICAgICAgIGhlaWdodDogdmFyKC0tc3BhY2luZy1sZy0xKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICYtLWxlZnRBbGlnbmVkIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgcGFkZGluZy1yaWdodDogdmFyKC0tc3BhY2luZy1sZy0xKTtcblxuICAgICAgQG1lZGlhICN7JHNjcmVlbi1zbX0ge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLWxnLTMpO1xuICAgICAgfVxuXG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcmlnaHQ6IC01cHg7XG4gICAgICAgIHRvcDogMTUlO1xuICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi8uLi9pbWcvYXJyb3ctY3VydmVkLXJpZ2h0LnN2Z1wiKTtcblxuICAgICAgICBAbWVkaWEgI3skc2NyZWVuLXNtfSB7XG4gICAgICAgICAgdG9wOiAzMCU7XG4gICAgICAgIH1cblxuICAgICAgICAucHJvZ3Jlc3NCYXItLWdyYXZpdHlGb3JtICYge1xuICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uLy4uL2ltZy9hcnJvdy1jdXJ2ZWQtcmlnaHQtZGFyay5zdmdcIik7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmX190ZXh0QW1vdW50IHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIGNvbG9yOiB2YXIoLS13aGl0ZSk7XG4gICAgZm9udC1zaXplOiB2YXIoLS1zcGFjaW5nLWJhc2UpO1xuICAgIGFuaW1hdGlvbjogZmFkZS1pbiAwLjVzIGVhc2UtaW4gMC44cyBmb3J3YXJkcztcblxuICAgIEBtZWRpYSAjeyRzY3JlZW4tc219IHtcbiAgICAgIGZvbnQtc2l6ZTogdmFyKC0tc3BhY2luZy1sZy0yKTtcbiAgICB9XG5cbiAgICAucHJvZ3Jlc3NCYXItLWdyYXZpdHlGb3JtICYge1xuICAgICAgLy9saW5lIGhlaWdodCBmaXhlZCBwZXJjZW50YWdlIGluIG9yZGVyIHRvIGtlZXAgc21hbGwgdGV4dCBhbmQgYmlnIHRleHQgc2FtZSBkaXN0YW5jZVxuICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgICBjb2xvcjogdmFyKC0tZGFyay1ncmV5KTtcbiAgICAgIGZvbnQtc2l6ZTogdmFyKC0tc3BhY2luZy1zbS0xKTtcblxuICAgICAgQG1lZGlhICN7JHNjcmVlbi1zbX0ge1xuICAgICAgICBmb250LXNpemU6IHZhcigtLXNwYWNpbmctbGctMSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJl9fdGV4dEV4cGxhbmF0aW9uIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tc3BhY2luZy1zbS0yKTtcbiAgICBhbmltYXRpb246IGZhZGUtaW4gMC43cyBlYXNlLWluIDEuMnMgZm9yd2FyZHM7XG5cbiAgICBAbWVkaWEgI3skc2NyZWVuLXNtfSB7XG4gICAgICBmb250LXNpemU6IHZhcigtLXNwYWNpbmctYmFzZSk7XG4gICAgfVxuXG4gICAgLnByb2dyZXNzQmFyLS1ncmF2aXR5Rm9ybSAmIHtcbiAgICAgIC8vbGluZSBoZWlnaHQgZml4ZWQgcGVyY2VudGFnZSBpbiBvcmRlciB0byBrZWVwIHNtYWxsIHRleHQgYW5kIGJpZyB0ZXh0IHNhbWUgZGlzdGFuY2VcbiAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgICAgZm9udC1zaXplOiB2YXIoLS1zcGFjaW5nLXNtLTEpO1xuICAgIH1cbiAgfVxuXG4gIC8vIHdoZW4gcHJvZ3Jlc3NiYXIgc2hvdWxkIGJlIGhpZ2hsaWdodGVkIG9yYW5nZVxuICAmLS1oaWdobGlnaHRlZCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW9yYW5nZSk7XG4gICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiB2YXIoLS13aGl0ZSk7XG4gICAgcGFkZGluZzogdmFyKC0tc3BhY2luZy1sZy0yKSB2YXIoLS1zcGFjaW5nLWxnLTEpIHZhcigtLXNwYWNpbmctbGctMSlcbiAgICAgIHZhcigtLXNwYWNpbmctbGctMSk7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO1xuXG4gICAgQG1lZGlhICN7JHNjcmVlbi1zbX0ge1xuICAgICAgcGFkZGluZzogdmFyKC0tc3BhY2luZy1sZy0zKSB2YXIoLS1zcGFjaW5nLWxnLTIpIHZhcigtLXNwYWNpbmctbGctMilcbiAgICAgICAgdmFyKC0tc3BhY2luZy1sZy0yKTtcbiAgICB9XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBjbGlwLXBhdGg6IHBvbHlnb24oMCAwLCA1MCUgMTAwJSwgMTAwJSAwKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW9yYW5nZSk7XG4gICAgICBsZWZ0OiAxNSU7XG4gICAgICByaWdodDogNjUlO1xuICAgICAgYm90dG9tOiBjYWxjKHZhcigtLXNwYWNpbmctYmFzZSkgLyAtMSArIDJweCk7XG4gICAgICBoZWlnaHQ6IHZhcigtLXNwYWNpbmctYmFzZSk7XG4gICAgICB6LWluZGV4OiAyO1xuICAgIH1cblxuICAgIC5wcm9ncmVzc0Jhcl9fdGV4dCxcbiAgICAucHJvZ3Jlc3NCYXJfX3RleHRBbW91bnQge1xuICAgICAgY29sb3I6IHZhcigtLXdoaXRlKTtcbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vLi4vaW1nL2Fycm93LWN1cnZlZC1sZWZ0LnN2Z1wiKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAucHJvZ3Jlc3NCYXJfX3RleHQtLWxlZnRBbGlnbmVkIHtcbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vLi4vaW1nL2Fycm93LWN1cnZlZC1yaWdodC5zdmdcIik7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnByb2dyZXNzQmFyLS1ncmF2aXR5Rm9ybSxcbiAgICBwcm9ncmVzczo6LXdlYmtpdC1wcm9ncmVzcy1iYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0td2hpdGUpO1xuICAgIH1cbiAgfVxuXG4gICYtLWZpeGVkX19vdXRlckNvbnRhaW5lciB7XG4gICAgQGluY2x1ZGUgZnVsbC13aWR0aDtcbiAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgIHotaW5kZXg6IDEwO1xuICAgIGJvdHRvbTogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13aGl0ZSk7XG4gICAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2luZy1sZy0zKTtcbiAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gICAgd2lkdGg6IDEwMHZ3O1xuICB9XG5cbiAgJi0tZml4ZWRfX2lubmVyQ29udGFpbmVyIHtcbiAgICBAaW5jbHVkZSBzaXRlLWNvbnRhaW5lcjtcbiAgICBwYWRkaW5nLXRvcDogdmFyKC0tc3BhY2luZy1zbS0yKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tc3BhY2luZy1zbS0yKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1kYXJrLWdyZXkpO1xuICAgIGJvcmRlci1ib3R0b206IHNvbGlkIDNweCB2YXIoLS1tZWRpdW0tZ3JleSk7XG5cbiAgICBAbWVkaWEgI3skc2NyZWVuLW1kfSB7XG4gICAgICBwYWRkaW5nLXRvcDogdmFyKC0tc3BhY2luZy1sZy0xKTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1zcGFjaW5nLWxnLTEpO1xuICAgIH1cblxuICAgIC5wcm9ncmVzc0Jhcl9fd3JhcHBlciB7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgIG1heC13aWR0aDogMTAwJTtcblxuICAgICAgQG1lZGlhICN7JHNjcmVlbi1sZ30ge1xuICAgICAgICBtYXgtd2lkdGg6IDkwJTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAa2V5ZnJhbWVzIGZhZGUtaW4ge1xuICAgIDAlIHtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgIH1cbiAgfVxufVxuIiwiLmV1cm9wZU1hcCB7XG4gICZfX3N2ZyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgb2JqZWN0LWZpdDogY29udGFpbjtcblxuICAgICY6aG92ZXIge1xuICAgICAgLmV1cm9wZU1hcF9fY291bnRyeUxpbmsuYWN0aXZlID4gKiB7XG4gICAgICAgIGZpbHRlcjogb3BhY2l0eSgwLjMpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICZfX2NvdW50cnlMaW5rIHtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG5cbiAgICAmLmFjdGl2ZSB7XG4gICAgICA+ICoge1xuICAgICAgICB0cmFuc2l0aW9uOiB2YXIoLS1ob3Zlci10cmFuc2l0aW9uLWZhc3QpO1xuXG4gICAgICAgICY6aG92ZXIsXG4gICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgIGN1cnNvcjogdmFyKC0tY3Vyc29yLXBvaW50ZXIpO1xuICAgICAgICAgIGZpbHRlcjogb3BhY2l0eSgxKSAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5sYXdfbm90X3N0cm9uZyB7XG4gICAgICA+ICoge1xuICAgICAgICBmaWxsOiB2YXIoLS1saWdodC1ncmV5KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmxhd19ldSB7XG4gICAgICA+ICoge1xuICAgICAgICBmaWxsOiB2YXIoLS1ibHVlKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmxhd19pbl9kaXNjdXNzaW9uIHtcbiAgICAgID4gKiB7XG4gICAgICAgIGZpbGw6IHZhcigtLXllbGxvdyk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5sYXdfaW5fZm9yY2Uge1xuICAgICAgPiAqIHtcbiAgICAgICAgZmlsbDogdmFyKC0tb3JhbmdlKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIHRvIGF2b2lkIGhvcml6b250YWwgc2Nyb2xsYmFyOlxuYm9keSB7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcbn1cblxuLy8gbWFrZSBpdCB0aGlja2VyIG9uICBib2R5XG5ib2R5Ojotd2Via2l0LXNjcm9sbGJhciB7XG4gIHdpZHRoOiB2YXIoLS1zcGFjaW5nLXNtLTEpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcbn1cblxuKjo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2sge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1vZmYtd2hpdGUpO1xufVxuKjo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWI6dmVydGljYWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1vcmFuZ2UpO1xufVxuIiwiI21vb3ZlX2dkcHJfY29va2llX2luZm9fYmFyLm1vb3ZlLWdkcHItZGFyay1zY2hlbWUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ibGFjaykgIWltcG9ydGFudDtcbiAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gIG92ZXJmbG93LXk6IHNjcm9sbDtcblxuICAubW9vdmUtZ2Rwci1pbmZvLWJhci1jb250YWluZXIge1xuICAgIEBpbmNsdWRlIHNpdGUtY29udGFpbmVyO1xuICAgIHBhZGRpbmctdG9wOiB2YXIoLS1zcGFjaW5nLWxnLTEpO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1zcGFjaW5nLWxnLTEpO1xuXG4gICAgLm1vb3ZlLWdkcHItaW5mby1iYXItY29udGVudCB7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICBwLFxuICAgICAgcCBhIHtcbiAgICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtcGFyYWdyYXBoLWJvbGQpO1xuICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtbWQpO1xuICAgICAgICBmb250LXNpemU6IHZhcigtLXNwYWNpbmctc20tMSk7XG4gICAgICB9XG5cbiAgICAgIHAgYSB7XG4gICAgICAgIEBpbmNsdWRlIHRleHQtbGluayh2YXIoLS13aGl0ZSksIHZhcigtLXdoaXRlKSwgdmFyKC0tYmxhY2spKTtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgfVxuXG4gICAgICAvL1p1c3RpbW1lblxuICAgICAgLm1nYnV0dG9uIHtcbiAgICAgICAgQGluY2x1ZGUgYnV0dG9uKHZhcigtLW9yYW5nZSksIHZhcigtLXdoaXRlKSwgdmFyKC0tYmx1ZSksIHZhcigtLXdoaXRlKSk7XG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tc3BhY2luZy1iYXNlKSAhaW1wb3J0YW50O1xuICAgICAgfVxuXG4gICAgICAubW9vdmUtZ2Rwci1pbmZvYmFyLWNsb3NlLWJ0biB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO1xuICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICBib3JkZXI6IHNvbGlkIDJweCB2YXIoLS1saWdodC1ncmV5KTtcbiAgICAgICAgb3BhY2l0eTogMTtcblxuICAgICAgICAubW9vdmVnZHByLWFycm93LWNsb3NlIHtcbiAgICAgICAgICAmOmJlZm9yZSxcbiAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIHdpZHRoOiAycHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1saWdodC1ncmV5KTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmOmhvdmVyLFxuICAgICAgICAmLmZvY3VzIHtcbiAgICAgICAgICBib3JkZXI6IHNvbGlkIDJweCB2YXIoLS13aGl0ZSk7XG4gICAgICAgICAgLm1vb3ZlZ2Rwci1hcnJvdy1jbG9zZSB7XG4gICAgICAgICAgICAmOmJlZm9yZSxcbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ibGFjayk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIuc29jaWFsIHtcbiAgJl9fbGluayB7XG4gICAgaGVpZ2h0OiB2YXIoLS1zcGFjaW5nLWxnLTMpO1xuICAgIHdpZHRoOiB2YXIoLS1zcGFjaW5nLWxnLTMpO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2luZy1zbS0zKTtcbiAgICBjdXJzb3I6IHZhcigtLWN1cnNvci1wb2ludGVyKTtcblxuICAgIEBtZWRpYSAjeyRzY3JlZW4tbGd9IHtcbiAgICAgIGhlaWdodDogdmFyKC0tc3BhY2luZy1sZy0yKTtcbiAgICAgIHdpZHRoOiB2YXIoLS1zcGFjaW5nLWxnLTIpO1xuICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy1zbS0zKTtcbiAgICB9XG5cbiAgICBAbWVkaWEgI3skc2NyZWVuLXhsfSB7XG4gICAgICBoZWlnaHQ6IHZhcigtLXNwYWNpbmctbGctMyk7XG4gICAgICB3aWR0aDogdmFyKC0tc3BhY2luZy1sZy0zKTtcbiAgICB9XG5cbiAgICBzdmcge1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgIGVsbGlwc2UsXG4gICAgICBjaXJjbGUsXG4gICAgICBwYXRoIHtcbiAgICAgICAgdHJhbnNpdGlvbjogdmFyKC0taG92ZXItdHJhbnNpdGlvbi1mYXN0KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmX19pY29uIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy1zbS0zKTtcblxuICAgIGNpcmNsZSxcbiAgICBlbGxpcHNlIHtcbiAgICAgIGZpbGw6IHZhcigtLW9yYW5nZSk7XG4gICAgfVxuXG4gICAgcGF0aCB7XG4gICAgICBmaWxsOiB2YXIoLS13aGl0ZSk7XG4gICAgfVxuICB9XG5cbiAgJl9fbWVkaXVtIHtcbiAgICBjb2xvcjogdmFyKC0tbWVkaXVtLWdyZXkpO1xuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWhlYWRpbmcpO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tc3BhY2luZy1zbS0yKTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cblxuICAvLyBodHRwczovL3d3dy5zbWFzaGluZ21hZ2F6aW5lLmNvbS8yMDIyLzAzL2d1aWRlLWhvdmVyLXBvaW50ZXItbWVkaWEtcXVlcmllcy9cbiAgQG1lZGlhIChwb2ludGVyOiBjb2Fyc2UpIHtcbiAgICAmX19tb2JpbGUge1xuICAgICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgICZfX3dlYiB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgQG1lZGlhIChwb2ludGVyOiBmaW5lKSB7XG4gICAgJl9fd2ViIHtcbiAgICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAmX19tb2JpbGUge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gICZfX3doYXRzYXBwIHtcbiAgICAmOmhvdmVyIHtcbiAgICAgIGNpcmNsZSB7XG4gICAgICAgIGZpbGw6IHZhcigtLXdoYXRzYXBwKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmX19mYWNlYm9vayB7XG4gICAgJjpob3ZlciB7XG4gICAgICBlbGxpcHNlIHtcbiAgICAgICAgZmlsbDogdmFyKC0tZmFjZWJvb2spO1xuICAgICAgfVxuICAgICAgcGF0aCB7XG4gICAgICAgIGZpbGw6IHZhcigtLXdoaXRlKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmX19tZXNzZW5nZXIge1xuICAgICY6aG92ZXIge1xuICAgICAgZWxsaXBzZSB7XG4gICAgICAgIGZpbGw6IHZhcigtLW1lc3Nlbmdlcik7XG4gICAgICB9XG4gICAgICBwYXRoIHtcbiAgICAgICAgZmlsbDogdmFyKC0td2hpdGUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICZfX2luc3RhZ3JhbSB7XG4gICAgJjpob3ZlciB7XG4gICAgICBlbGxpcHNlIHtcbiAgICAgICAgZmlsbDogdmFyKC0taW5zdGFncmFtKTtcbiAgICAgIH1cbiAgICAgIHBhdGgge1xuICAgICAgICBmaWxsOiB2YXIoLS13aGl0ZSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJl9feCB7XG4gICAgJjpob3ZlciB7XG4gICAgICBlbGxpcHNlIHtcbiAgICAgICAgZmlsbDogdmFyKC0teCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJl9fZW1haWwge1xuICAgICY6aG92ZXIge1xuICAgICAgY2lyY2xlIHtcbiAgICAgICAgZmlsbDogdmFyKC0tZW1haWwpO1xuICAgICAgfVxuICAgICAgcGF0aCB7XG4gICAgICAgIGZpbGw6IHZhcigtLXdoaXRlKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmX190ZWxlZ3JhbSB7XG4gICAgJjpob3ZlciB7XG4gICAgICBlbGxpcHNlIHtcbiAgICAgICAgZmlsbDogdmFyKC0tdGVsZWdyYW0pO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICZfX3NtcyB7XG4gICAgJjpob3ZlciB7XG4gICAgICBjaXJjbGUge1xuICAgICAgICBmaWxsOiB2YXIoLS1zbXMpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiXG4uc2hhcmluZ01vZGFsIHtcbiAgICZfX29wZW5CdXR0b24ge1xuICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgYm90dG9tOiAzdnc7XG4gICAgbGVmdDogM3Z3O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWxpZ2h0LWdyZXkpO1xuICAgIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctc20tMyk7XG4gICAgb3BhY2l0eTogMDtcbiAgICB6LWluZGV4OiAzO1xuICAgIHRyYW5zaXRpb246IHZhcigtLWhvdmVyLXRyYW5zaXRpb24pO1xuICBcbiAgICBAbWVkaWEgI3skc2NyZWVuLW1kfSB7XG4gICAgICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLXNtLTEpO1xuICAgICAgYm90dG9tOiA1dnc7XG4gICAgICBsZWZ0OiA1dnc7XG4gICAgfVxuXG4gICAgQG1lZGlhICN7JHNjcmVlbi1sZ30ge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAmLnNob3cge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG5cbiAgICAmLmhpZGUge1xuICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIH1cblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ibHVlKTtcbiAgICAgIGNvbG9yOiB2YXIoLS13aGl0ZSk7XG4gICAgICBvdXRsaW5lLWNvbG9yOiB2YXIoLS1ibHVlKTtcbiAgICB9XG4gIH1cblxuICAmX19vcGVuQnV0dG9uSWNvbiB7XG4gICAgaGVpZ2h0OiB2YXIoLS1zcGFjaW5nLWxnLTMpO1xuICAgIHdpZHRoOiB2YXIoLS1zcGFjaW5nLWxnLTMpO1xuICAgIGRpc3BsYXk6IGZsZXg7XG5cbiAgICBzdmcge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgfVxuICB9XG5cbiAgJl9fb3BlbkJ1dHRvblRleHQge1xuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWhlYWRpbmcpO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tc3BhY2luZy1zbS0xKTtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBtYXJnaW46IDA7XG4gICAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2luZy1zbS03KTtcbiAgfVxuXG4gICZfX292ZXJsYXkge1xuICAgIGJhY2tncm91bmQ6dmFyKC0tZGFyay1ncmV5LXJnYmEpO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIG92ZXJmbG93OiBhdXRvO1xuICAgIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctYmFzZSk7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgLjJzO1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgei1pbmRleDogLTE7XG5cbiAgICAmW2FyaWEtaGlkZGVuPVwidHJ1ZVwiXSB7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIH1cblxuICAgICZbYXJpYS1oaWRkZW49XCJmYWxzZVwiXSB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgIHotaW5kZXg6IDI7XG5cbiAgICAgIC5zaGFyaW5nTW9kYWxfX2JveCB7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgICB9IFxuICAgIH1cbiAgfVxuXG4gICZfX2JveCB7XG4gICAgbWF4LXdpZHRoOiA5OCU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luOiBhdXRvO1xuICAgIG1hcmdpbi10b3A6IGNhbGModmFyKC0tc3BhY2luZy1zbS0xKSArICgyICogdmFyKC0tbmF2LWhlaWdodCkpKTtcbiAgICBvdmVyZmxvdzogYXV0bztcbiAgICBvdmVyZmxvdy14OiBoaWRkZW47XG4gICAgYmFja2dyb3VuZDogdmFyKC0tb2ZmLXdoaXRlKTtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgcGFkZGluZzogdmFyKC0tc3BhY2luZy1sZy0xKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKC44KTtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjNzO1xuXG4gICAgQG1lZGlhICN7JHNjcmVlbi14cy1zbX0ge1xuICAgICAgbWF4LXdpZHRoOiA0MDBweDtcbiAgICB9XG5cbiAgICBAbWVkaWEgI3skc2NyZWVuLXNtfSB7XG4gICAgICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLWxnLTMpO1xuICAgICAgbWFyZ2luLXRvcDogY2FsYyh2YXIoLS1zcGFjaW5nLWxnLTEpICsgdmFyKC0tbmF2LWhlaWdodCkpO1xuICAgIH1cblxuICAgIC5zb2NpYWxfX2xpbmsge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy1zbS0xKTtcbiAgICAgIH1cbiAgICAgfVxuXG4gICAgLnNvY2lhbF9faWNvbiB7XG4gICAgICB3aWR0aDogdmFyKC0tc3BhY2luZy1sZy0zKTtcbiAgICAgIGhlaWdodDogdmFyKC0tc3BhY2luZy1sZy0zKTtcbiAgICAgIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2luZy1zbS0xKTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuXG4gICAgLnNvY2lhbF9fbWVkaXVtIHtcbiAgICAgIGZvbnQtc2l6ZTogdmFyKC0tc3BhY2luZy1iYXNlKTtcbiAgICB9XG4gIH1cblxuICAmX19oZWFkZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy1sZy0xKTtcbiAgfVxuXG4gICZfX3RpdGxlIHtcbiAgICBjb2xvcjogdmFyKC0tZGFyay1ncmV5KTtcbiAgICBtYXJnaW46IDA7XG4gICAgbGluZS1oZWlnaHQ6IDA7XG4gIH1cblxuICAmX19jbG9zZUJ1dHRvbiB7XG4gICAgaGVpZ2h0OiB2YXIoLS1zcGFjaW5nLWxnLTMpO1xuICAgIHdpZHRoOiB2YXIoLS1zcGFjaW5nLWxnLTMpO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW46IDA7XG5cbiAgICBzdmcge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgfVxuICB9XG59IFxuICIsIi5wcml2YWN5Tm90ZSB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWhlYWRpbmcpO1xuICBmb250LXNpemU6IHZhcigtLXNwYWNpbmctc20tMSk7ICBcbiAgYW5pbWF0aW9uOiBmYWRlSW4gMnM7XG5cbiAgYSB7XG4gICAgQGluY2x1ZGUgdGV4dC1saW5rKHZhcigtLWRhcmstZ3JleSksIHZhcigtLWRhcmstZ3JleSksIHZhcigtLXdoaXRlKSk7XG4gIH1cbn1cblxuLy8gbWFrZSBzdXJlIHByaXZhY3kgbm90ZSBvbmx5IGFwcGVhcnMgd2hlbiByYWlzZW5vdyBmb3JtIGlzIGxvYWRlZCBcbkBrZXlmcmFtZXMgZmFkZUluIHtcbiAgMCUgeyBvcGFjaXR5OiAwOyB9XG4gIDgwJSB7IG9wYWNpdHk6IDA7IH1cbiAgMTAwJSB7IG9wYWNpdHk6IDE7IH1cbn0iLCIuc2hhcmluZ0J1dHRvbnMge1xuICBkaXNwbGF5OiBmbGV4O1xuXG4gICZfX2hlYWRlciB7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy1zbS0xKTtcblxuICAgIC5wYWdlICYge1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgfVxuICB9XG5cbiAgJl9fc2lkZWJhciB7XG4gICAgZGlzcGxheTogbm9uZTtcblxuICAgIEBtZWRpYSAjeyRzY3JlZW4tbGd9IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgICAgdHJhbnNpdGlvbjogdmFyKC0taG92ZXItdHJhbnNpdGlvbik7XG4gICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLWxnLTUpO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIHdpZHRoOiAwO1xuICAgICAgYWxpZ24tc2VsZjogZmxleC1zdGFydDtcbiAgICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgICB0b3A6IGNhbGModmFyKC0tbmF2LWhlaWdodCkgKyB2YXIoLS1zcGFjaW5nLWxnLTIpKTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwLjNlbSk7XG4gICAgfVxuXG4gICAgQG1lZGlhICN7JHNjcmVlbi14bH0ge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDJlbSk7XG4gICAgfVxuXG4gICAgJi5zaG93IHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuICB9XG59XG4iLCIvLyBzcGVjaWZpYyBmb3JtIHN0eWxpbmcgZm9yIGdlYmFuYSBmb3JtIHdpdGggdGhyZWUgY2hlY2tib3ggZmllbGRzXG4uZ2ViYW5hIHtcbiAgZmllbGRzZXQ6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgLmdmaWVsZF9yYWRpbyB7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg1LCAxZnIpO1xuICAgIH1cbiAgfVxuXG4gIGZpZWxkc2V0Om50aC1vZi10eXBlKDIpIHtcbiAgICAuZ2ZpZWxkX3JhZGlvIHtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDYsIDFmcik7XG4gICAgfVxuICB9XG5cbiAgZmllbGRzZXQ6bGFzdC1vZi10eXBlIHtcbiAgICAuZ2ZpZWxkX3JhZGlvIHtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIDFmcik7XG4gICAgfVxuICAgIC5nY2hvaWNlIHtcbiAgICAgIEBpbmNsdWRlIHJhZGlvQnV0dG9ucztcbiAgICB9XG4gIH1cbn1cbiIsIi53cC1ibG9jay1pbWFnZSB7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBAaW5jbHVkZSBtYXJnaW4tYmxvY2soKTtcblxuICBmaWd1cmUge1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO1xuICB9XG5cbiAgPiBhOmhvdmVyLFxuICA+IGE6Zm9jdXMge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgaW1nIHtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4wMyk7XG4gICAgfVxuICB9XG5cbiAgaW1nIHtcbiAgICBAaW5jbHVkZSBpbWctY29uc3RyYWluZWQtaW4td3JhcHBlcigpO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO1xuICAgIG1heC1oZWlnaHQ6IDEwMHZoO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgdHJhbnNpdGlvbjogdmFyKC0taG92ZXItdHJhbnNpdGlvbik7XG4gIH1cblxuICBmaWdjYXB0aW9uIHtcbiAgICBAaW5jbHVkZSBpbWFnZS1jYXB0aW9uKCk7XG4gIH1cblxuICAmLmFsaWdud2lkZSB7XG4gICAgQGluY2x1ZGUgZnVsbC13aWR0aCgpO1xuICAgIG1heC13aWR0aDogMTAwdnc7XG5cbiAgICBpbWcge1xuICAgICAgQGluY2x1ZGUgc2l0ZS1jb250YWluZXIoKTtcbiAgICB9XG4gIH1cblxuICAmLmFsaWduZnVsbCB7XG4gICAgQGluY2x1ZGUgZnVsbC13aWR0aCgpO1xuICAgIG1heC13aWR0aDogMTAwdnc7XG4gICAgbWF4LWhlaWdodDogMTAwdmg7XG4gIH1cbn1cbiIsIi53cC1ibG9jay1saXN0IHtcbiAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2luZy1iYXNlKTtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy1iYXNlKTtcblxuICBsaSB7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LW1kKTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLXNtLTYpO1xuICB9XG59XG5cbnVsLndwLWJsb2NrLWxpc3Qge1xuICBsaXN0LXN0eWxlLXR5cGU6IHNxdWFyZTtcbiAgbGlzdC1zdHlsZS1wb3NpdGlvbjogb3V0c2lkZTtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoLS1zcGFjaW5nLWJhc2UpO1xuXG4gIGxpOjptYXJrZXIge1xuICAgIGNvbG9yOiB2YXIoLS1kYXJrLWdyZXkpO1xuICB9XG59XG5cbm9sLndwLWJsb2NrLWxpc3Qge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBjb3VudGVyLXJlc2V0OiBjb3VudGVyO1xuXG4gIGxpIHtcbiAgICBjb3VudGVyLWluY3JlbWVudDogY291bnRlcjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1zcGFjaW5nLWxnLTEpO1xuXG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogY291bnRlcihjb3VudGVyKSBcIi5cIjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBmb250LWZhbWlseTogdmFyKC0tZm9udC1wYXJhZ3JhcGgtYm9sZCk7XG4gICAgfVxuICB9XG59XG4iLCIud3AtYmxvY2stZmlsZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmctdG9wOiB2YXIoLS1zcGFjaW5nLXNtLTUpO1xuICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tc3BhY2luZy1zbS01KTtcbiAgYm9yZGVyLWJvdHRvbTogc29saWQgMnB4IHZhcigtLWRhcmstZ3JleSk7XG4gIGJvcmRlci10b3A6IHNvbGlkIDJweCB2YXIoLS1kYXJrLWdyZXkpO1xuXG4gICsgLndwLWJsb2NrLWZpbGUge1xuICAgIGJvcmRlci10b3A6IG5vbmU7XG4gIH1cblxuICAvL2xpbmtcbiAgYTpmaXJzdC1vZi10eXBlIHtcbiAgICBmb250LWZhbWlseTogdmFyKC0tZm9udC1wYXJhZ3JhcGgtYm9sZCk7XG4gICAgY29sb3I6IHZhcigtLWRhcmstZ3JleSk7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtYmFzZSk7XG4gICAgdHJhbnNpdGlvbjogdmFyKC0taG92ZXItdHJhbnNpdGlvbik7XG4gICAgZmxleC1ncm93OiAyO1xuXG4gICAgJjpsaW5rLFxuICAgICY6dmlzaXRlZCB7XG4gICAgICBjb2xvcjogdmFyKC0tZGFyay1ncmV5KTtcbiAgICB9XG5cbiAgICAmOmFjdGl2ZSxcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgY29sb3I6IHZhcigtLWJsdWUpO1xuICAgIH1cbiAgfVxuXG4gIC53cC1ibG9jay1maWxlX19idXR0b24ge1xuICAgIEBpbmNsdWRlIGJ1dHRvbih2YXIoLS1kYXJrLWdyZXkpLCB2YXIoLS13aGl0ZSksIHZhcigtLWJsdWUpLCB2YXIoLS13aGl0ZSkpO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLWxnLTQpO1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1zcGFjaW5nLXNtLTEpO1xuICAgIGNvbG9yOiB2YXIoLS13aGl0ZSkgIWltcG9ydGFudDtcbiAgICBmbGV4LXNocmluazogMDtcblxuICAgIC8vIG5lZWRzIHRvIHJlcGVhdGVkIGJlY2F1c2UgYWxzbyBtZWRpYSBxdWVyeSBpbiBtaXhpblxuICAgIEBtZWRpYSAjeyRzY3JlZW4tc219IHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLXNwYWNpbmctbGctNCk7XG4gICAgfVxuXG4gICAgJjphZnRlciB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgcmlnaHQ6IHZhcigtLXNwYWNpbmctc20tMik7XG4gICAgICB0b3A6IDMwJTtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uLy4uL2ltZy9kb3dubG9hZC5zdmdcIik7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgd2lkdGg6IHZhcigtLXNwYWNpbmctYmFzZSk7XG4gICAgICBoZWlnaHQ6IHZhcigtLXNwYWNpbmctYmFzZSk7XG4gICAgICB0cmFuc2l0aW9uOiB2YXIoLS1ob3Zlci10cmFuc2l0aW9uLWZhc3QpO1xuICAgIH1cblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICAvLyByZW1vdmUgd3Agc3R5bGluZ1xuICAgICAgb3BhY2l0eTogMSAhaW1wb3J0YW50O1xuICAgICAgJjphZnRlciB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgycHgpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLndwLWJsb2NrLWVtYmVkIHtcbiAgQGluY2x1ZGUgbWFyZ2luLWJsb2NrKCk7XG5cbiAgJl9fd3JhcHBlciB7XG4gICAgQGluY2x1ZGUgYXNwZWN0LXJhdGlvKDksIDE2KTtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG5cbiAgJi5hbGlnbndpZGUge1xuICAgIEBpbmNsdWRlIGZ1bGwtd2lkdGgoKTtcbiAgICBtYXgtd2lkdGg6IDEwMHZ3O1xuXG4gICAgaWZyYW1lIHtcbiAgICAgIEBpbmNsdWRlIHNpdGUtY29udGFpbmVyKCk7XG4gICAgfVxuICB9XG5cbiAgJi5hbGlnbmZ1bGwge1xuICAgIEBpbmNsdWRlIGZ1bGwtd2lkdGgoKTtcbiAgICBtYXgtd2lkdGg6IDEwMHZ3O1xuICAgIG1heC1oZWlnaHQ6IDEwMHZoO1xuICB9XG59XG4iLCIud3AtYmxvY2stcXVvdGUge1xuICBAaW5jbHVkZSBtYXJnaW4tYmxvY2soKTtcblxuICBwIHtcbiAgICBmb250LXNpemU6IHZhcigtLXNwYWNpbmctbGctMyk7XG4gICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtcGFyYWdyYXBoLWJvbGQpO1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1zbSk7XG5cbiAgICBAbWVkaWEgI3skc2NyZWVuLW1kLWxnfSB7XG4gICAgICBmb250LXNpemU6IHZhcigtLXNwYWNpbmctbGctNCk7XG4gICAgfVxuICB9XG5cbiAgY2l0ZSB7XG4gICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtaGVhZGluZyk7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBmb250LXNpemU6IHZhcigtLXNwYWNpbmctc20tMSk7XG4gICAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWxldHRlci1zcGFjaW5nLXhzKTtcbiAgICBjb2xvcjogdmFyKC0tbWVkaXVtLWdyZXkpO1xuICB9XG59XG4iLCIuYy1hY2NvcmRpb24ge1xuICAmX19pdGVtIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1vZmYtd2hpdGUpO1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctc20tMSk7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XG4gIH1cblxuICAmX190aXRsZSB7XG4gICAgcGFkZGluZzogdmFyKC0tc3BhY2luZy1zbS0xKTtcbiAgICBtYXJnaW46IDA7XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1kYXJrLWdyZXkpO1xuICAgICAgcmlnaHQ6IHZhcigtLXNwYWNpbmctc20tMSk7XG4gICAgfVxuICB9XG5cbiAgJl9fY29udGVudCB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1zcGFjaW5nLXNtLTEpO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLXNwYWNpbmctc20tMSk7XG4gICAgcGFkZGluZy1ib3R0b206IHZhcigtLXNwYWNpbmctc20tMSk7XG5cbiAgICA+IDpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG59XG4iLCIud3AtYmxvY2stc2VwYXJhdG9yIHtcbiAgYm9yZGVyOiB0cmFuc3BhcmVudDtcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIFxuICAmLmlzLXN0eWxlLWRlZmF1bHQge1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1zcGFjaW5nLWJhc2UpO1xuXG4gICAgQG1lZGlhICN7JHNjcmVlbi14cy1zbX0ge1xuICAgICAgcGFkZGluZy1ib3R0b206IHZhcigtLXNwYWNpbmctbGctMSk7XG4gICAgfVxuICBcbiAgICBAbWVkaWEgI3skc2NyZWVuLW1kLWxnfSB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tc3BhY2luZy1sZy0yKTtcbiAgICB9XG4gIFxuICAgIEBtZWRpYSAjeyRzY3JlZW4teGx9IHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1zcGFjaW5nLWxnLTMpO1xuICAgIH1cbiAgfVxuXG4gICYuaXMtc3R5bGUtcmVzcG9uc2l2ZS1zbWFsbCB7XG4gICAgcGFkZGluZy1ib3R0b206IHZhcigtLXNwYWNpbmctc20tMSk7XG5cbiAgICBAbWVkaWEgI3skc2NyZWVuLXhzLXNtfSB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tc3BhY2luZy1iYXNlKTtcbiAgICB9XG4gIFxuICAgIEBtZWRpYSAjeyRzY3JlZW4tbWQtbGd9IHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1zcGFjaW5nLWxnLTEpO1xuICAgIH1cbiAgXG4gICAgQG1lZGlhICN7JHNjcmVlbi14bH0ge1xuICAgICAgcGFkZGluZy1ib3R0b206IHZhcigtLXNwYWNpbmctbGctMik7XG4gICAgfVxuICB9XG5cbiAgJi5pcy1zdHlsZS1yZXNwb25zaXZlLWxhcmdlIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tc3BhY2luZy1sZy0xKTtcblxuICAgIEBtZWRpYSAjeyRzY3JlZW4teHMtc219IHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1zcGFjaW5nLWxnLTIpO1xuICAgIH1cbiAgXG4gICAgQG1lZGlhICN7JHNjcmVlbi1tZC1sZ30ge1xuICAgICAgcGFkZGluZy1ib3R0b206IHZhcigtLXNwYWNpbmctbGctMyk7XG4gICAgfVxuICBcbiAgICBAbWVkaWEgI3skc2NyZWVuLXhsfSB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tc3BhY2luZy1sZy00KTtcbiAgICB9XG4gIH1cbn0iLCIud3AtYmxvY2stYnV0dG9ucyB7XG4gIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmctbGctMik7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctbGctMik7XG59XG5cbi53cC1ibG9jay1idXR0b24ge1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1oZWFkaW5nKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWxldHRlci1zcGFjaW5nLWJhc2UpO1xuXG4gICZfX2xpbmsge1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO1xuICAgIHRyYW5zaXRpb246IHZhcigtLWhvdmVyLXRyYW5zaXRpb24pO1xuICAgIGJveC1zaGFkb3c6IHZhcigtLWJveC1zaGFkb3cpO1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGJveC1zaGFkb3c6IHZhcigtLWJveC1zaGFkb3ctaG92ZXIpO1xuICAgIH1cbiAgfVxufVxuIiwiLmhvbWVUZWFzZXIge1xuICBAaW5jbHVkZSBmdWxsLXdpZHRoKCk7XG4gIEBpbmNsdWRlIHBhZGRpbmctYmxvY2sobGcpO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXdoaXRlKTtcblxuICAmX19jb250ZW50IHtcbiAgICBAaW5jbHVkZSBzaXRlLWNvbnRhaW5lcigpO1xuICAgIEBpbmNsdWRlIHR3by1jb2x1bW5zLWZsZXgodW5lcXVhbCk7XG5cbiAgICBAbWVkaWEgI3skc2NyZWVuLXNtfSB7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIH1cbiAgfVxuXG4gICZfX3RleHRXcmFwcGVyIHtcbiAgICBAbWVkaWEgI3skc2NyZWVuLW1kfSB7XG4gICAgICB3aWR0aDogNTIlO1xuICAgIH1cblxuICAgIEBtZWRpYSAjeyRzY3JlZW4tbWQtbGd9IHtcbiAgICAgIHdpZHRoOiA0OCU7XG4gICAgfVxuXG4gICAgQG1lZGlhICN7JHNjcmVlbi14bH0ge1xuICAgICAgd2lkdGg6IDQ3JTtcbiAgICB9XG5cbiAgICAuaG9tZVRlYXNlci0tbGF5b3V0UmV2ZXJzZWQgJiB7XG4gICAgICBvcmRlcjogMjtcblxuICAgICAgQG1lZGlhICN7JHNjcmVlbi1tZH0ge1xuICAgICAgICBvcmRlcjogMTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmX190ZXh0VGl0bGUge1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctc20tMik7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgZm9udC1zaXplOiB2YXIoLS1zcGFjaW5nLWxnLTEpO1xuXG4gICAgQG1lZGlhICN7JHNjcmVlbi1zbX0ge1xuICAgICAgZm9udC1zaXplOiB2YXIoLS1zcGFjaW5nLWxnLTIpO1xuICAgIH1cblxuICAgIEBtZWRpYSAjeyRzY3JlZW4teGx9IHtcbiAgICAgIGZvbnQtc2l6ZTogdmFyKC0tc3BhY2luZy1sZy0zKTtcbiAgICB9XG4gIH1cblxuICAmX190ZXh0IHtcbiAgICBmb250LXNpemU6IHZhcigtLXNwYWNpbmctYmFzZSk7XG5cbiAgICBAbWVkaWEgI3skc2NyZWVuLXNtfSB7XG4gICAgICBmb250LXNpemU6IHZhcigtLXNwYWNpbmctbGctMSk7XG4gICAgfVxuICB9XG5cbiAgJl9faW1nV3JhcHBlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC1oZWlnaHQ6IDMwMHB4O1xuICAgIEBpbmNsdWRlIGFzcGVjdC1yYXRpbygxLCAxLjUpO1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctbGctMik7XG4gICAgYm94LXNoYWRvdzogdmFyKC0tYm94LXNoYWRvdyk7XG4gICAgdHJhbnNpdGlvbjogdmFyKC0taG92ZXItdHJhbnNpdGlvbik7XG5cbiAgICAvLyBwdXQgMTAwJSB3aWRodCBpbWFnZXMgb24gbW9iaWxlIGFsd2F5cyBhYm92ZSB0ZXh0XG5cbiAgICBAbWVkaWEgI3skc2NyZWVuLXNtfSB7XG4gICAgICBtYXgtaGVpZ2h0OiAzNTBweDtcbiAgICB9XG5cbiAgICBAbWVkaWEgI3skc2NyZWVuLW1kfSB7XG4gICAgICBAaW5jbHVkZSBhc3BlY3QtcmF0aW8oMSwgMSk7XG4gICAgICBtYXgtaGVpZ2h0OiBub25lO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIHdpZHRoOiA0NCU7XG4gICAgfVxuXG4gICAgQG1lZGlhICN7JHNjcmVlbi1tZC1sZ30ge1xuICAgICAgQGluY2x1ZGUgYXNwZWN0LXJhdGlvKDEsIDEuMSk7XG4gICAgICB3aWR0aDogNDglO1xuICAgICAgbWF4LWhlaWdodDogNDgwcHg7XG4gICAgfVxuXG4gICAgQG1lZGlhICN7JHNjcmVlbi14bH0ge1xuICAgICAgd2lkdGg6IDQ3JTtcbiAgICB9XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJveC1zaGFkb3c6IHZhcigtLWJveC1zaGFkb3ctaG92ZXIpO1xuICAgIH1cblxuICAgIC5ob21lVGVhc2VyLS1sYXlvdXRSZXZlcnNlZCAmIHtcbiAgICAgIG9yZGVyOiAxO1xuXG4gICAgICBAbWVkaWEgI3skc2NyZWVuLW1kfSB7XG4gICAgICAgIG9yZGVyOiAyO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICZfX2ltZyB7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XG4gICAgQGluY2x1ZGUgaW1nLWNvbnN0cmFpbmVkLWluLXdyYXBwZXIoKTtcbiAgfVxuXG4gICZfX2xpbmsge1xuICAgIEBpbmNsdWRlIGJ1dHRvbihcbiAgICAgIHZhcigtLWRhcmstZ3JleSksXG4gICAgICB2YXIoLS13aGl0ZSksXG4gICAgICB2YXIoLS1ibHVlKSxcbiAgICAgIHZhcigtLXdoaXRlKSxcbiAgICAgIFwiXCIsXG4gICAgICBhcnJvd1xuICAgICk7XG4gICAgZm9udC1zaXplOiB2YXIoLS1zcGFjaW5nLWxnLTEpO1xuICB9XG59XG4iLCIuaW50cm8ge1xuICBmb250LXNpemU6IHZhcigtLXNwYWNpbmctbGctMSk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1iYXNlKTtcblxuICBAbWVkaWEgI3skc2NyZWVuLXNtfSB7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LW1kKTtcbiAgfVxufVxuIiwiLnRleHRJbWFnZSB7XG4gIEBpbmNsdWRlIGZ1bGwtd2lkdGgoKTtcbiAgQGluY2x1ZGUgcGFkZGluZy1ibG9jaygpO1xuICBAaW5jbHVkZSBtYXJnaW4tYmxvY2soKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tb2ZmLXdoaXRlKTtcblxuICAvLyBpZiB0ZXh0aW1hZ2Ugb3IgdGV4dHRleHQgZm9sbG93IHJlbW92ZSBnYXAgYmV0d2VlbiBibG9ja3NcbiAgKyAudGV4dEltYWdlLFxuICArIC50ZXh0VGV4dCB7XG4gICAgbWFyZ2luLXRvcDogY2FsYyh2YXIoLS1zcGFjaW5nLWJhc2UpIC8gLTEpO1xuXG4gICAgQG1lZGlhICN7JHNjcmVlbi14cy1zbX0ge1xuICAgICAgbWFyZ2luLXRvcDogY2FsYyh2YXIoLS1zcGFjaW5nLWxnLTIpIC8gLTEpO1xuICAgIH1cblxuICAgIEBtZWRpYSAjeyRzY3JlZW4tbWQtbGd9IHtcbiAgICAgIG1hcmdpbi10b3A6IGNhbGModmFyKC0tc3BhY2luZy1sZy0zKSAvIC0xKTtcbiAgICB9XG5cbiAgICBAbWVkaWEgI3skc2NyZWVuLXhsfSB7XG4gICAgICBtYXJnaW4tdG9wOiBjYWxjKHZhcigtLXNwYWNpbmctbGctNCkgLyAtMSk7XG4gICAgfVxuICB9XG5cbiAgLy8gaWYgdGV4dGltYWdlIG9yIHRleHR0ZXh0IGZvbGxvdyByZW1vdmUgZ2FwIGJldHdlZW4gYmxvY2tzXG4gICYuZGFya2dyZXkgKyAudGV4dEltYWdlLmRhcmtncmV5LFxuICAmLm9mZi13aGl0ZSArIC50ZXh0SW1hZ2Uub2ZmLXdoaXRlLFxuICAmLmRhcmtncmV5ICsgLnRleHRUZXh0LmRhcmtncmV5LFxuICAmLm9mZi13aGl0ZSArIC50ZXh0VGV4dC5vZmYtd2hpdGUge1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICB9XG5cbiAgYSB7XG4gICAgQGluY2x1ZGUgdGV4dC1saW5rKHZhcigtLWRhcmstZ3JleSksIHZhcigtLWRhcmstZ3JleSksIHZhcigtLW9mZi13aGl0ZSkpO1xuICB9XG5cbiAgJi5kYXJrLWdyZXkge1xuICAgIEBpbmNsdWRlIG9uLWRhcmstYmFja2dyb3VuZCh2YXIoLS1kYXJrLWdyZXkpKTtcbiAgfVxuXG4gICZfX2NvbnRlbnQge1xuICAgIEBpbmNsdWRlIHNpdGUtY29udGFpbmVyKCk7XG4gICAgQGluY2x1ZGUgdHdvLWNvbHVtbnMtZmxleCgpO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxuXG4gICZfX2ltZ1dyYXBwZXIge1xuICAgIG9yZGVyOiAxO1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctbGctMSkgIWltcG9ydGFudDtcblxuICAgIEBtZWRpYSAjeyRzY3JlZW4tbWR9IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcbiAgICAgIG9yZGVyOiB1bnNldDtcbiAgICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgICB0b3A6IGNhbGModmFyKC0tbmF2LWhlaWdodCkgKyB2YXIoLS1zcGFjaW5nLWJhc2UpKTtcbiAgICAgIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7XG4gICAgfVxuICB9XG5cbiAgJl9fdGV4dFdyYXBwZXIge1xuICAgIG9yZGVyOiAyO1xuICAgIEBtZWRpYSAjeyRzY3JlZW4tbWR9IHtcbiAgICAgIG9yZGVyOiB1bnNldDtcbiAgICB9XG4gIH1cblxuICAmX19pbWcge1xuICAgIEBpbmNsdWRlIGltZy1jb25zdHJhaW5lZC1pbi13cmFwcGVyKCk7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XG4gIH1cblxuICAmX19pbWdDYXB0aW9uIHtcbiAgICBAaW5jbHVkZSBpbWFnZS1jYXB0aW9uKCk7XG4gIH1cbn1cbiIsIi53cC1ibG9jay1nYWxsZXJ5IHtcbiAgQGluY2x1ZGUgcGFkZGluZy1ibG9jaygpO1xuICBAaW5jbHVkZSBtYXJnaW4tYmxvY2soKTtcblxuICAvLyBkb24ndCBzdHJldGNoIGxhc3QgZWxlbWVudCBvbiByb3dcbiAgJjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBmbGV4LWdyb3c6IDEwMDAwMDAwMDA7XG4gIH1cblxuICAud3AtYmxvY2staW1hZ2Uge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGZsZXgtZ3JvdzogMTtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB9XG5cbiAgaW1nIHtcbiAgICBAaW5jbHVkZSBpbWctY29uc3RyYWluZWQtaW4td3JhcHBlcigpO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO1xuICB9XG5cbiAgLndwLWVsZW1lbnQtY2FwdGlvbiB7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KFxuICAgICAgMGRlZyxcbiAgICAgIHJnYmEoMCwgMCwgMCwgMC43KSxcbiAgICAgIHJnYmEoMCwgMCwgMCwgMC4zKSA3MCUsXG4gICAgICB0cmFuc3BhcmVudFxuICAgICk7XG4gICAgYm90dG9tOiAwO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tc3BhY2luZy1zbS0xKTtcbiAgICBsZWZ0OiAwO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgbWF4LWhlaWdodDogNjAlO1xuICAgIG92ZXJmbG93OiBhdXRvO1xuICAgIHBhZGRpbmc6IDAgdmFyKC0tc3BhY2luZy1zbS0zKSB2YXIoLS1zcGFjaW5nLXNtLTMpO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgfVxuXG4gICYuaGFzLWJhY2tncm91bmQge1xuICAgIEBpbmNsdWRlIGZ1bGwtd2lkdGg7XG4gICAgQGluY2x1ZGUgc2l0ZS1jb250YWluZXI7XG4gIH1cbn1cblxuLy8gZm9yY2UgYWxsIGltYWdlcyB0byBmdWxsIHdpZHRoIG9uIHNtYWxsZXIgc2NyZWVuc1xuQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogNjAwcHgpIHtcbiAgLndwLWJsb2NrLWdhbGxlcnkgLndwLWJsb2NrLWltYWdlIHtcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICB9XG59XG4iLCIudGV4dCB7XG4gICYuaGFzLWtvbnplcm4tZGFyay1ncmV5LWNvbG9yLFxuICAmLmhhcy1rb256ZXJuLWJsYWNrLWNvbG9yIHtcbiAgICBhIHtcbiAgICAgIEBpbmNsdWRlIHRleHQtbGluayhpbmhlcml0LCB2YXIoLS1kYXJrLWdyZXkpLCB2YXIoLS13aGl0ZSkpO1xuICAgIH1cbiAgfVxuICAmLmhhcy1rb256ZXJuLXdoaXRlLWNvbG9yIHtcbiAgICBhIHtcbiAgICAgIEBpbmNsdWRlIHRleHQtbGluayhpbmhlcml0LCB2YXIoLS13aGl0ZSksIHZhcigtLWRhcmstZ3JleSkpO1xuICAgIH1cbiAgfVxuICAuYy1hY2NvcmRpb25fX2l0ZW0ge1xuICAgIGNvbG9yOiB2YXIoLS1kYXJrLWdyZXkpO1xuICB9XG59XG4iLCIudGV4dFRleHQge1xuICBAaW5jbHVkZSBmdWxsLXdpZHRoKCk7XG4gIEBpbmNsdWRlIHBhZGRpbmctYmxvY2soKTtcbiAgQGluY2x1ZGUgbWFyZ2luLWJsb2NrKCk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW9mZi13aGl0ZSk7XG5cbiAgLy8gaWYgdGV4dGltYWdlIG9yIHRleHR0ZXh0IGZvbGxvdyByZW1vdmUgZ2FwIGJldHdlZW4gYmxvY2tzXG4gICsgLnRleHRJbWFnZSxcbiAgKyAudGV4dFRleHQge1xuICAgIG1hcmdpbi10b3A6IGNhbGModmFyKC0tc3BhY2luZy1iYXNlKSAvIC0xKTtcblxuICAgIEBtZWRpYSAjeyRzY3JlZW4teHMtc219IHtcbiAgICAgIG1hcmdpbi10b3A6IGNhbGModmFyKC0tc3BhY2luZy1sZy0yKSAvIC0xKTtcbiAgICB9XG5cbiAgICBAbWVkaWEgI3skc2NyZWVuLW1kLWxnfSB7XG4gICAgICBtYXJnaW4tdG9wOiBjYWxjKHZhcigtLXNwYWNpbmctbGctMykgLyAtMSk7XG4gICAgfVxuXG4gICAgQG1lZGlhICN7JHNjcmVlbi14bH0ge1xuICAgICAgbWFyZ2luLXRvcDogY2FsYyh2YXIoLS1zcGFjaW5nLWxnLTQpIC8gLTEpO1xuICAgIH1cbiAgfVxuXG4gIC8vIGlmIHNhbWUgY29sb3JlZCBiYWNrZ3JvdW5kIGJsb2NrIGZvbGxvdyByZW1vdmUgcGFkZGluZyB0b3Agb2Ygc2Vjb25kIGVsZW1lbnRcbiAgJi5kYXJrZ3JleSArIC50ZXh0SW1hZ2UuZGFya2dyZXksXG4gICYub2ZmLXdoaXRlICsgLnRleHRJbWFnZS5vZmYtd2hpdGUsXG4gICYuZGFya2dyZXkgKyAudGV4dFRleHQuZGFya2dyZXksXG4gICYub2ZmLXdoaXRlICsgLnRleHRUZXh0Lm9mZi13aGl0ZSB7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gIH1cblxuICAmLmRhcmstZ3JleSB7XG4gICAgQGluY2x1ZGUgb24tZGFyay1iYWNrZ3JvdW5kKHZhcigtLWRhcmstZ3JleSkpO1xuICB9XG5cbiAgJi5ibHVlIHtcbiAgICBAaW5jbHVkZSBvbi1kYXJrLWJhY2tncm91bmQodmFyKC0tYmx1ZSkpO1xuICB9XG5cbiAgJl9fY29udGVudCB7XG4gICAgQGluY2x1ZGUgc2l0ZS1jb250YWluZXIoKTtcbiAgICBAaW5jbHVkZSB0d28tY29sdW1ucy1mbGV4KCk7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG59XG4iLCIudGV4dEhpZ2hsaWdodGVkIHtcbiAgQGluY2x1ZGUgbWFyZ2luLWJsb2NrKCk7XG4gIEBpbmNsdWRlIHBhZGRpbmctdGV4dC1ibG9jaygpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tb2ZmLXdoaXRlKTtcblxuICAmLmRhcmstZ3JleSB7XG4gICAgQGluY2x1ZGUgb24tZGFyay1iYWNrZ3JvdW5kKHZhcigtLWRhcmstZ3JleSkpO1xuICB9XG5cbiAgJi5ibHVlIHtcbiAgICBAaW5jbHVkZSBvbi1kYXJrLWJhY2tncm91bmQodmFyKC0tYmx1ZSkpO1xuICB9XG5cbiAgcDpsYXN0LWNoaWxkLFxuICB1bDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG5cbiAgPiBoMixcbiAgPiBoMyxcbiAgPiBoNCB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLXNtLTIpO1xuICB9XG59XG4iLCIudGVhc2VFeGFtcGxlcyB7XG4gIEBpbmNsdWRlIGZ1bGwtd2lkdGgoKTtcbiAgQGluY2x1ZGUgcGFkZGluZy1ibG9jayhsZyk7XG4gIEBpbmNsdWRlIG1hcmdpbi1ibG9jaztcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi8uLi9pbWcva29sdW1iaWVuLmpwZycpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgLy9ubyBtYXJnaW5zIHdoZW4gb24gaG9tZSwgb3RoZXJ3aXNlIGJnIGltYWdlIGdldHMgcmV2ZWFsZWRcbiAgLmhvbWUgJiB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG5cbiAgLy93aGVuIG9uIHNpbmdsZSBiZWlzcGllbCBwYWdlIGl0cyBhdCB0aGUgYm90dG9tIG9mIHRoZSBwYWdlXG4gIC5zaW5nbGUtYmVpc3BpZWwgJiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBib3JkZXItYm90dG9tOiBzb2xpZCB2YXIoLS1zcGFjaW5nLXNtLTEwKSB2YXIoLS1saWdodC1ncmV5KTtcbiAgfVxuXG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZGFyay1ncmV5LXJnYmEpO1xuICB9XG5cblxuICAmX193cmFwcGVyIHtcbiAgICBAaW5jbHVkZSBzaXRlLWNvbnRhaW5lcigpO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAxO1xuICB9XG5cbiAgJl9fdGl0bGUge1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgY29sb3I6IHZhcigtLXdoaXRlKTtcbiAgICBmb250LXNpemU6IHZhcigtLXNwYWNpbmctbGctMSk7XG5cbiAgICBAbWVkaWEgI3skc2NyZWVuLXNtfSB7XG4gICAgICBmb250LXNpemU6IHZhcigtLXNwYWNpbmctbGctMik7XG4gICAgfVxuXG4gICAgQG1lZGlhICN7JHNjcmVlbi1sZ30ge1xuICAgICAgZm9udC1zaXplOiB2YXIoLS1zcGFjaW5nLWxnLTMpO1xuICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy1sZy0zKTtcbiAgICB9XG4gIH1cblxuICAmX19pdGVtcyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBvdmVyZmxvdy14OiBzY3JvbGw7XG4gICAgcGFkZGluZy1ib3R0b206IHZhcigtLXNwYWNpbmctbGctMSk7XG4gICAgc2Nyb2xsYmFyLWNvbG9yOiB2YXIoLS1vZmYtd2hpdGUpIHZhcigtLW1lZGl1bS1ncmV5KTtcbiAgICBzY3JvbGxiYXItd2lkdGg6IGF1dG87XG5cbiAgICBAbWVkaWEgI3skc2NyZWVuLW1kfSB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tc3BhY2luZy1sZy0zKTtcbiAgICB9XG5cbiAgICAmOjotd2Via2l0LXNjcm9sbGJhciB7XG4gICAgICB3aWR0aDogdmFyKC0tc3BhY2luZy1zbS0xKTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO1xuICAgIH1cblxuICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNrIHtcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWxpZ2h0LWdyZXkpO1xuICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XG4gICAgfVxuICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iOmhvcml6b250YWwge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWVkaXVtLWdyZXkpO1xuICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XG4gICAgfVxuICB9XG59XG4iLCIubmV3c2xldHRlciB7XG4gIEBpbmNsdWRlIGZ1bGwtd2lkdGgoKTtcbiAgQGluY2x1ZGUgcGFkZGluZy1ibG9jayhsZyk7XG4gIGJhY2tncm91bmQ6IHZhcigtLXdoaXRlKTtcblxuICAmX19jb250ZW50IHtcbiAgICBAaW5jbHVkZSBzaXRlLWNvbnRhaW5lcigpO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgfVxuXG4gICZfX3RpdGxlIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cblxuICAmX190ZXh0IHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZm9udC1zaXplOiB2YXIoLS1zcGFjaW5nLWxnLTEpO1xuICAgIG1heC13aWR0aDogOTAlO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcblxuICAgIEBtZWRpYSAjeyRzY3JlZW4tbGd9IHtcbiAgICAgIG1heC13aWR0aDogODAlO1xuICAgIH1cbiAgfVxuXG4gICZfX2Zvcm0ge1xuICAgIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmctbGctMik7XG5cbiAgICAvL2dldCBmaWVsZHMgYW5kIHN1Ym1pdCBvbiBvbmUgbGluZTpcbiAgICBmb3JtIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gICAgICBAbWVkaWEgI3skc2NyZWVuLXNtfSB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgfVxuXG4gICAgICBAbWVkaWEgI3skc2NyZWVuLW1kfSB7XG4gICAgICAgIHdpZHRoOiA5MCU7XG4gICAgICB9XG5cbiAgICAgIEBtZWRpYSAjeyRzY3JlZW4teGx9IHtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAwcHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmdmb3JtX2ZpZWxkcyB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgfVxuXG4gICAgLmdmaWVsZCB7XG4gICAgICBmbGV4OiAxO1xuICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLWxnLTIpO1xuXG4gICAgICAvL2xhc3QgY2hpbGQgaXMgaG9uZXlwb3QgZmllbGQsIHNvIHNlY29uZCBsYXN0IGNoaWxkIG5lZWRzIG5vIG1hcmdpbiB3aGVuIGJ1dHRvbiBvbiBuZXcgbGluZVxuICAgICAgJjpudGgtbGFzdC1jaGlsZCgyKSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIH1cblxuICAgICAgQG1lZGlhICN7JHNjcmVlbi1zbX0ge1xuICAgICAgICAmOm50aC1sYXN0LWNoaWxkKDIpIHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXNwYWNpbmctbGctMik7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAuZ2Zvcm1fYnV0dG9uIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAuZ2Zvcm1fc3VibWlzc2lvbl9lcnJvciB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy1iYXNlKTtcbiAgICB9XG5cbiAgICAuZ2Zvcm1fY29uZmlybWF0aW9uX21lc3NhZ2Uge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cbiAgfVxufVxuIiwiLmFyY2hpdmVFeGFtcGxlcyB7XG4gIEBpbmNsdWRlIHBhZGRpbmctYmxvY2s7XG5cbiAgJl9faXRlbXMge1xuICAgIEBpbmNsdWRlIGdyaWQtdGVhc2UoKTtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgxLCAxZnIpO1xuXG4gICAgQG1lZGlhICN7JHNjcmVlbi1tZH0ge1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTtcbiAgICB9XG4gIH1cbn1cbiIsIi5hcmNoaXZlTmV3cyB7XG4gIEBpbmNsdWRlIHBhZGRpbmctYmxvY2s7XG5cbiAgJl9faXRlbXMge1xuICAgIEBpbmNsdWRlIGdyaWQtdGVhc2UoKTtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgxLCAxZnIpO1xuXG4gICAgQG1lZGlhICN7JHNjcmVlbi1tZH0ge1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTtcbiAgICB9XG4gIH1cbn1cbiIsIi5hcmNoaXZlU3VwcG9ydGVyIHtcbiAgQGluY2x1ZGUgcGFkZGluZy1ibG9jaztcblxuICAmX19pdGVtcyB7XG4gICAgQGluY2x1ZGUgZ3JpZC10ZWFzZSgpO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDEsIG1pbm1heCgwLCAxZnIpKTtcblxuICAgIEBtZWRpYSAjeyRzY3JlZW4teHN9IHtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIG1pbm1heCgwLCAxZnIpKTtcbiAgICB9XG5cbiAgICBAbWVkaWEgI3skc2NyZWVuLXNtfSB7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgzLCBtaW5tYXgoMCwgMWZyKSk7XG4gICAgfVxuXG4gICAgQG1lZGlhICN7JHNjcmVlbi1tZH0ge1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNCwgbWlubWF4KDAsIDFmcikpO1xuICAgIH1cblxuICAgIEBtZWRpYSAjeyRzY3JlZW4teHhsfSB7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg1LCBtaW5tYXgoMCwgMWZyKSk7XG4gICAgfVxuICB9XG5cbiAgJl9faXRlbSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cblxuICAmX19pbWdXcmFwcGVyIHtcbiAgICBAaW5jbHVkZSBhc3BlY3QtcmF0aW8oMSwgMS4xKTtcbiAgICBib3gtc2hhZG93OiB2YXIoLS1ib3gtc2hhZG93KTtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgIGltZyB7XG4gICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcbiAgICAgIGZpbHRlcjogZ3JheXNjYWxlKDEpO1xuICAgIH1cbiAgfVxuXG4gICZfX3RleHRXcmFwcGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgZmxleC1ncm93OiAyO1xuICAgIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctc20tMik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0td2hpdGUpO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO1xuICAgIHdpZHRoOiA5MCU7XG4gICAgbWFyZ2luLXRvcDogY2FsYyh2YXIoLS1zcGFjaW5nLWxnLTIpIC8gLTEpO1xuICAgIHotaW5kZXg6IDI7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuXG4gICZfX25hbWUge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tc3BhY2luZy1zbS0xKTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLXNtLTgpO1xuXG4gICAgQG1lZGlhICN7JHNjcmVlbi1zbX0ge1xuICAgICAgZm9udC1zaXplOiB2YXIoLS1iYXNlKTtcbiAgICB9XG4gIH1cblxuICAmX19kZXNjcmlwdGlvbiB7XG4gICAgQGluY2x1ZGUgdGFnbGluZSh2YXIoLS1tZWRpdW0tZ3JleSkpO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tc3BhY2luZy1zbS0yKTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG4iLCIuYXJjaGl2ZU9yZ2FuaXNhdGlvbiB7XG4gIEBpbmNsdWRlIHBhZGRpbmctYmxvY2s7XG5cbiAgJl9faXRlbXMge1xuICAgIEBpbmNsdWRlIGdyaWQtdGVhc2UoKTtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCBtaW5tYXgoMCwgMWZyKSk7XG4gICAgZ3JpZC1yb3ctZ2FwOiB2YXIoLS1zcGFjaW5nLWJhc2UpO1xuICAgIGdyaWQtY29sdW1uLWdhcDogdmFyKC0tc3BhY2luZy1iYXNlKTtcblxuICAgIEBtZWRpYSAjeyRzY3JlZW4teHN9IHtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIG1pbm1heCgwLCAxZnIpKTtcbiAgICB9XG5cbiAgICBAbWVkaWEgI3skc2NyZWVuLXNtfSB7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg0LCBtaW5tYXgoMCwgMWZyKSk7XG4gICAgICBncmlkLXJvdy1nYXA6IHZhcigtLXNwYWNpbmctbGctMSk7XG4gICAgICBncmlkLWNvbHVtbi1nYXA6IHZhcigtLXNwYWNpbmctbGctMSk7XG4gICAgfVxuXG4gICAgQG1lZGlhICN7JHNjcmVlbi1tZH0ge1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNSwgbWlubWF4KDAsIDFmcikpO1xuICAgIH1cblxuICAgIEBtZWRpYSAjeyRzY3JlZW4tbGd9IHtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDYsIG1pbm1heCgwLCAxZnIpKTtcbiAgICAgIGdyaWQtcm93LWdhcDogdmFyKC0tc3BhY2luZy1sZy0yKTtcbiAgICAgIGdyaWQtY29sdW1uLWdhcDogdmFyKC0tc3BhY2luZy1sZy0yKTtcbiAgICB9XG5cbiAgICBAbWVkaWEgI3skc2NyZWVuLXhsfSB7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg3LCBtaW5tYXgoMCwgMWZyKSk7XG4gICAgfVxuICB9XG5cbiAgJl9faXRlbSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXdoaXRlKTtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcbiAgICBib3gtc2hhZG93OiB2YXIoLS1ib3gtc2hhZG93KTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdHJhbnNpdGlvbjogdmFyKC0taG92ZXItdHJhbnNpdGlvbik7XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgaGVpZ2h0OiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBwYWRkaW5nLXRvcDogMTAwJTtcbiAgICB9XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgYm94LXNoYWRvdzogdmFyKC0tYm94LXNoYWRvdy1ob3Zlcik7XG5cbiAgICAgIGltZyB7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjk1LCAwLjk1LCAxKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmX19pbWcge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gKDIgKiB2YXIoLS1zcGFjaW5nLXNtLTUpKSk7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAoMiAqIHZhcigtLXNwYWNpbmctc20tNSkpKTtcbiAgICB0b3A6IHZhcigtLXNwYWNpbmctc20tNSk7XG4gICAgYm90dG9tOiB2YXIoLS1zcGFjaW5nLXNtLTUpO1xuICAgIGxlZnQ6IHZhcigtLXNwYWNpbmctc20tNSk7XG4gICAgcmlnaHQ6IHZhcigtLXNwYWNpbmctc20tNSk7XG4gICAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XG4gICAgdHJhbnNpdGlvbjogdmFyKC0taG92ZXItdHJhbnNpdGlvbi1mYXN0KTtcbiAgfVxufVxuIiwiLmZvcm1UZXh0IHtcbiAgQGluY2x1ZGUgbWFyZ2luLWJsb2NrO1xuXG4gICZfX2NvbnRlbnQge1xuICAgIEBpbmNsdWRlIHR3by1jb2x1bW5zLWZsZXgodW5lcXVhbCk7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG5cbiAgLmZvcm0sXG4gIC50ZXh0IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XG4gICAgcGFkZGluZzogdmFyKC0tc3BhY2luZy1sZy0yKSB2YXIoLS1zcGFjaW5nLWxnLTEpO1xuXG4gICAgQG1lZGlhICN7JHNjcmVlbi1zbX0ge1xuICAgICAgcGFkZGluZzogdmFyKC0tc3BhY2luZy1sZy0zKSB2YXIoLS1zcGFjaW5nLWxnLTIpO1xuICAgIH1cblxuICAgIEBtZWRpYSAjeyRzY3JlZW4tbWR9IHtcbiAgICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgICB0b3A6IGNhbGModmFyKC0tbmF2LWhlaWdodCkgKyB2YXIoLS1zcGFjaW5nLWJhc2UpKTtcbiAgICB9XG5cbiAgICA+IDpmaXJzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgIH1cblxuICAgID4gOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cblxuICAudGV4dDpub3QoLmhhcy1iYWNrZ3JvdW5kKSB7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuXG4gIC5mb3JtIHtcbiAgICBAaW5jbHVkZSBmb3JtLWNvbnRhaW5lci1zdHlsaW5nO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctbGctMSk7XG5cbiAgICBAbWVkaWEgI3skc2NyZWVuLW1kfSB7XG4gICAgICB3aWR0aDogNDglO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICBAbWVkaWEgI3skc2NyZWVuLW1kLWxnfSB7XG4gICAgICB3aWR0aDogNDIlO1xuICAgIH1cblxuICAgIC53cC1ibG9jay1pbWFnZSxcbiAgICAuZ2Zvcm1fd3JhcHBlcixcbiAgICAucHJvZ3Jlc3NCYXJfX3dyYXBwZXIge1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctbGctMSk7XG4gICAgfVxuXG4gICAgPiA6Zmlyc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICB9XG5cbiAgICA+IDpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuXG4gICAgLy8gaWYgcHJvZ3Jlc3NiYXIgaXMgZmlyc3QgZWxlbWVudCwgcHVzaCBpdCB1cFxuICAgID4gLnByb2dyZXNzQmFyX193cmFwcGVyOmZpcnN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbjogY2FsYyh2YXIoLS1zcGFjaW5nLWxnLTIpIC8gLTEpIGNhbGModmFyKC0tc3BhY2luZy1sZy0xKSAvIC0xKVxuICAgICAgICB2YXIoLS1zcGFjaW5nLWJhc2UpIGNhbGModmFyKC0tc3BhY2luZy1sZy0xKSAvIC0xKTtcbiAgICAgIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctbGctMikgdmFyKC0tc3BhY2luZy1sZy0xKSB2YXIoLS1zcGFjaW5nLWxnLTEpXG4gICAgICAgIHZhcigtLXNwYWNpbmctbGctMSk7XG5cbiAgICAgIEBtZWRpYSAjeyRzY3JlZW4tc219IHtcbiAgICAgICAgbWFyZ2luOiBjYWxjKHZhcigtLXNwYWNpbmctbGctMykgLyAtMSkgY2FsYyh2YXIoLS1zcGFjaW5nLWxnLTIpIC8gLTEpXG4gICAgICAgICAgdmFyKC0tc3BhY2luZy1iYXNlKSBjYWxjKHZhcigtLXNwYWNpbmctbGctMikgLyAtMSk7XG4gICAgICAgIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctbGctMykgdmFyKC0tc3BhY2luZy1sZy0yKSB2YXIoLS1zcGFjaW5nLWxnLTIpXG4gICAgICAgICAgdmFyKC0tc3BhY2luZy1sZy0yKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAudGV4dCB7XG4gICAgLy8gQGluY2x1ZGUgb24tZGFyay1iYWNrZ3JvdW5kKHZhcigtLWRhcmstZ3JleSkpO1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgQG1lZGlhICN7JHNjcmVlbi1tZH0ge1xuICAgICAgd2lkdGg6IDQ4JTtcbiAgICB9XG5cbiAgICBAbWVkaWEgI3skc2NyZWVuLW1kLWxnfSB7XG4gICAgICB3aWR0aDogNTUlO1xuICAgIH1cbiAgfVxufVxuIiwiLmV1cm9wZSB7XG4gIGhlaWdodDogMTAwJTtcbiAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2luZy1sZy0yKTtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy1sZy0yKTtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1hcmVhczogXCJtYXAgbWFwXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFwiY291bnRyeSBjb3VudHJ5XCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFwiZXhwbGFuYXRpb24gZXhwbGFuYXRpb25cIjtcbiAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiAxZnIgMzUwcHggYXV0bztcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgNTAlO1xuICBncmlkLWdhcDogdmFyKC0tc3BhY2luZy1sZy0xKTtcblxuICBAbWVkaWEgI3skc2NyZWVuLW1kfSB7XG4gIGdyaWQtdGVtcGxhdGUtcm93czogMWZyIDFmciBhdXRvO1xuICBncmlkLXRlbXBsYXRlLWFyZWFzOiBcImNvdW50cnkgbWFwXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFwiLiBtYXBcIlxuICAgICAgICAgICAgICAgICAgICAgICAgXCJleHBsYW5hdGlvbiBleHBsYW5hdGlvblwiO1xuICB9XG5cbiAgQG1lZGlhICN7JHNjcmVlbi1sZ30ge1xuICAgIGdyaWQtdGVtcGxhdGUtcm93czogMWZyIGF1dG87XG4gICAgZ3JpZC10ZW1wbGF0ZS1hcmVhczogXCJjb3VudHJ5IG1hcFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgIFwiZXhwbGFuYXRpb24gbWFwXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgXCIuIC5cIjtcbiAgfVxuXG4gIEBtZWRpYSAjeyRzY3JlZW4teGwteHhsfSB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgNDUlO1xuICB9XG5cbiAgQG1lZGlhICN7JHNjcmVlbi14eGx9IHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciA0MCU7XG4gIH1cblxuICAmX19jb3VudHJ5V3JhcHBlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGdyaWQtYXJlYTogY291bnRyeTtcbiAgfVxuXG4gICZfX2NvdW50cnlEZXNjcmlwdGlvbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmctc20tMyk7XG4gICAgbWFyZ2luLWxlZnQ6IHZhcigtLXNwYWNpbmctc20tMyk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yMDAlKTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXdoaXRlKTtcbiAgICBib3gtc2hhZG93OiB2YXIoLS1ib3gtc2hhZG93KTtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcbiAgICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLWJhc2UpO1xuICAgIHBhZGRpbmctdG9wOiB2YXIoLS1zcGFjaW5nLWxnLTIpO1xuICAgIHBhZGRpbmctbGVmdDogdmFyKC0tc3BhY2luZy1sZy0yKTtcbiAgICB6LWluZGV4OiAyO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2Utb3V0O1xuXG4gICAgQG1lZGlhICN7JHNjcmVlbi1tZC1sZ30ge1xuICAgICAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2luZy1zbS0xKTtcbiAgICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1zcGFjaW5nLXNtLTEpO1xuICAgICAgcGFkZGluZy10b3A6IHZhcigtLXNwYWNpbmctbGctMSk7XG4gICAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXNwYWNpbmctbGctMSk7XG4gICAgfVxuXG4gICAgJi5zaG93IHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gICAgfVxuXG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB6LWluZGV4OiAtMTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO1xuICAgICAgdG9wOiBjYWxjKHZhcigtLXNwYWNpbmctc20tMykgLyAtMSk7XG4gICAgICBsZWZ0OiBjYWxjKHZhcigtLXNwYWNpbmctc20tMykgLyAtMSk7XG4gICAgICB3aWR0aDogdmFyKC0tc3BhY2luZy1sZy0zKTtcbiAgICAgIGhlaWdodDogdmFyKC0tc3BhY2luZy1sZy0zKTtcblxuICAgICAgQG1lZGlhICN7JHNjcmVlbi1tZC1sZ30ge1xuICAgICAgICB0b3A6IGNhbGModmFyKC0tc3BhY2luZy1zbS0xKSAvIC0xKTtcbiAgICAgICAgbGVmdDogY2FsYyh2YXIoLS1zcGFjaW5nLXNtLTEpIC8gLTEpO1xuICAgICAgfVxuICAgIH1cblxuICAgICYubGF3X25vdF9zdHJvbmcge1xuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1saWdodC1ncmV5KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmxhd19ldSB7XG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJsdWUpO1xuICAgICAgfVxuICAgIH1cblxuICAgICYubGF3X2luX2Rpc2N1c3Npb24ge1xuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS15ZWxsb3cpO1xuICAgICAgfVxuICAgIH1cblxuICAgICYubGF3X2luX2ZvcmNlIHtcbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tb3JhbmdlKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmX19jb3VudHJ5VGl0bGUge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tc3BhY2luZy1sZy0xKTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLXNtLTYpO1xuICB9XG5cbiAgJl9fY291bnRyeVRleHQge1xuICAgIHAsIHVsIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctc20tMik7XG4gICAgfVxuICAgIHVsIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctc20tMik7XG4gICAgfVxuICAgID4gOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cblxuICAmX19tYXBFeHBsYW5hdGlvbiB7XG4gICAgZ3JpZC1hcmVhOiBleHBsYW5hdGlvbjtcbiAgICBhbGlnbi1zZWxmOiBlbmQ7XG4gIH1cblxuICAmX19tYXBFeHBsYW5hdGlvbkl0ZW0ge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKC0tc3BhY2luZy1sZy0xKTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMyU7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgd2lkdGg6IHZhcigtLXNwYWNpbmctc20tMSk7XG4gICAgICBoZWlnaHQ6IHZhcigtLXNwYWNpbmctc20tMSk7XG4gICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcbiAgICB9XG5cbiAgICAmLmxhd19ub3Rfc3Ryb25nIHtcbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbGlnaHQtZ3JleSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5sYXdfZXUge1xuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ibHVlKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmxhd19pbl9kaXNjdXNzaW9uIHtcbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0teWVsbG93KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmxhd19pbl9mb3JjZSB7XG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW9yYW5nZSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJl9fbWFwRXhwbGFuYXRpb25UaXRsZSB7XG4gICAgZm9udC1zaXplOiB2YXIoLS1zcGFjaW5nLWJhc2UpO1xuICAgIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmctc20tMSk7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy1zbS02KTtcbiAgfVxuXG4gICZfX21hcEV4cGxhbmF0aW9uVGV4dCB7XG4gICAgZm9udC1zaXplOiB2YXIoLS1zcGFjaW5nLXNtLTEpO1xuICAgIGNvbG9yOiB2YXIoLS1tZWRpdW0tZ3JleSk7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuXG4gICZfX21hcCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGdyaWQtYXJlYTogbWFwO1xuICB9XG59XG4iLCIuc2hhcmVCbG9jayB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBmbGV4LXdyYXA6IHdyYXA7XG5cbiAgLnNvY2lhbF9fbGluayB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjaW5nLXNtLTIpO1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctc20tMik7XG4gICAgbWFyZ2luLWxlZnQ6IHZhcigtLXNwYWNpbmctc20tMSk7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLXNtLTEpO1xuICB9XG5cbiAgLnNvY2lhbF9faWNvbiB7XG4gICAgaGVpZ2h0OiB2YXIoLS1zcGFjaW5nLWxnLTUpO1xuICAgIHdpZHRoOiB2YXIoLS1zcGFjaW5nLWxnLTUpO1xuICB9XG59XG4iLCIuY2FsbFRvQWN0aW9uIHtcbiAgQGluY2x1ZGUgbWFyZ2luLWJsb2NrKCk7XG4gIEBpbmNsdWRlIHBhZGRpbmctdGV4dC1ibG9jaygpO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1saWdodC1ncmV5KTtcbiAgYm94LXNoYWRvdzogdmFyKC0tYm94LXNoYWRvdyk7XG4gIHRyYW5zaXRpb246IHZhcigtLWhvdmVyLXRyYW5zaXRpb24pO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICYuZGFyay1ncmV5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1kYXJrLWdyZXkpO1xuXG4gICAgbGFiZWwge1xuICAgICAgY29sb3I6IHZhcigtLXdoaXRlKTtcbiAgICB9XG5cbiAgICB0ZXh0YXJlYSxcbiAgICBpbnB1dFt0eXBlPVwidGV4dFwiXSxcbiAgICBpbnB1dFt0eXBlPVwiZW1haWxcIl0sXG4gICAgaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdLFxuICAgIHNlbGVjdCB7XG4gICAgICBib3JkZXItYm90dG9tOiBzb2xpZCAycHggdmFyKC0tbGlnaHQtZ3JleSk7XG4gICAgfVxuICB9XG5cbiAgJi53aXRoLWJvcmRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0td2hpdGUpO1xuICAgIGJvcmRlcjogc29saWQgdmFyKC0tc3BhY2luZy1zbS03KSB2YXIoLS1vcmFuZ2UpO1xuICB9XG5cbiAgJjpob3ZlciB7XG4gICAgYm94LXNoYWRvdzogdmFyKC0tYm94LXNoYWRvdy1ob3Zlcik7XG4gIH1cblxuICAmLnRleHRfd19pbWFnZSB7XG4gICAgQG1lZGlhICN7JHNjcmVlbi1zbX0ge1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgfVxuXG4gICAgQG1lZGlhICN7JHNjcmVlbi1tZH0ge1xuICAgICAgcGFkZGluZzogdmFyKC0tc3BhY2luZy1sZy0yKSB2YXIoLS1zcGFjaW5nLWxnLTMpO1xuICAgIH1cblxuICAgIEBtZWRpYSAjeyRzY3JlZW4tbGd9IHtcbiAgICAgIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctbGctMykgdmFyKC0tc3BhY2luZy1sZy0zKTtcbiAgICB9XG4gIH1cblxuICAmX19pbWdXcmFwcGVyIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy1sZy0xKTtcbiAgICAvLyBhc3BlY3QtcmF0aW86IDEgLyAxO1xuICAgIG1heC1oZWlnaHQ6IDMwMHB4O1xuXG4gICAgQG1lZGlhICN7JHNjcmVlbi1zbX0ge1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgbWF4LWhlaWdodDogYXV0bztcbiAgICAgIG1heC13aWR0aDogNDAlO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2luZy1sZy0xKTtcbiAgICB9XG4gIH1cblxuICAmX19pbWFnZSB7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG1heC1oZWlnaHQ6IGluaGVyaXQ7XG4gIH1cblxuICAmX190ZXh0V3JhcHBlciB7XG4gICAgLy8gdG8gc3RyZXRjaCB0aGUgYnV0dG9uXG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICB9XG5cbiAgJl9fdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tc3BhY2luZy1sZy0yKTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLXNtLTIpO1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgIGh5cGhlbnM6IG5vbmU7XG5cbiAgICBAbWVkaWEgI3skc2NyZWVuLXNtfSB7XG4gICAgICBmb250LXNpemU6IHZhcigtLXNwYWNpbmctbGctMik7XG4gICAgfVxuICB9XG5cbiAgJl9fdGV4dCB7XG4gICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtaGVhZGluZyk7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuXG4gICZfX2J1dHRvbixcbiAgLy8gZ3Jhdml0eSBmb3JtcyBidXR0b25cbiAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2luZy1iYXNlKTtcbiAgICBAaW5jbHVkZSBidXR0b24odmFyKC0tb3JhbmdlKSwgdmFyKC0td2hpdGUpLCB2YXIoLS1ibHVlKSwgdmFyKC0td2hpdGUpKTtcbiAgfVxuXG4gIC8vIGFkanVzdGVkIGZvcm0gc3R5bGluZ3MgZG9uZSBmb3IgbmV3c2xldHRlclxuICAuZ2Zvcm1fd3JhcHBlciB7XG4gICAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2luZy1sZy0yKTtcbiAgfVxuXG4gICYubmV3c2xldHRlcl9mb3JtIHtcbiAgICAuZ2Zvcm1fZmllbGRzIHtcbiAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgICAgY29sdW1uLWdhcDogdmFyKC0tc3BhY2luZy1zbS0yKTtcbiAgICB9XG4gIH1cblxuICB0ZXh0YXJlYSxcbiAgaW5wdXRbdHlwZT1cInRleHRcIl0sXG4gIGlucHV0W3R5cGU9XCJlbWFpbFwiXSxcbiAgaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdLFxuICBzZWxlY3Qge1xuICAgIGJvcmRlci1ib3R0b206IHNvbGlkIDJweCB2YXIoLS1tZWRpdW0tZ3JleSk7XG5cbiAgICAmOmZvY3VzLFxuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6IHZhcigtLW9yYW5nZSk7XG4gICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgYm9yZGVyLWJvdHRvbTogc29saWQgMnB4IHZhcigtLW9yYW5nZSk7XG4gICAgfVxuICB9XG5cbiAgbGFiZWwge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gIH1cbn1cbiIsIi50aW1lbGluZSB7XG4gIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmctbGctNik7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcblxuICAmX19jb250ZW50V3JhcHBlciB7XG4gICAgd2lkdGg6IDc1JTsgXG5cbiAgICBAbWVkaWEgI3skc2NyZWVuLXhzLXNtfSB7XG4gICAgICB3aWR0aDogODAlOyBcbiAgICB9XG5cbiAgICBAbWVkaWEgI3skc2NyZWVuLXNtfSB7XG4gICAgICB3aWR0aDogNzUlOyBcbiAgICB9XG5cbiAgICBAbWVkaWEgI3skc2NyZWVuLW1kfSB7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICB9XG4gIH1cblxuICAmX19uYXYge1xuICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgYWxpZ24tc2VsZjogZmxleC1zdGFydDtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICB0b3A6IDI1JTtcbiAgICByaWdodDogMDtcbiAgICB6LWluZGV4OiAyO1xuICAgIG1pbi13aWR0aDogNTVweDtcblxuICAgIEBtZWRpYSAjeyRzY3JlZW4tbWR9IHtcbiAgICAgIG1pbi13aWR0aDogNzBweDtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg1MCUpO1xuICAgIH1cblxuICAgIEBtZWRpYSAjeyRzY3JlZW4teGx9IHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcbiAgICB9XG4gIH1cblxuICAmX19uYXZDb250ZW50IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIH1cblxuICAmX19uYXZJdGVtIHtcbiAgICBmb250LXNpemU6IHZhcigtLXNwYWNpbmctc20tMSk7XG4gICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtaGVhZGluZyk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZGFyay1ncmV5KTtcbiAgICBjb2xvcjogdmFyKC0td2hpdGUpO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLXNtLTUpO1xuICAgIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctc20tNCk7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XG4gICAgdHJhbnNpdGlvbjogdmFyKC0taG92ZXItdHJhbnNpdGlvbi1mYXN0KTtcblxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tb3JhbmdlKTtcbiAgICB9XG5cbiAgICAmLS1jdXJyZW50IHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW9yYW5nZSk7XG4gICAgfVxuICB9XG5cbiAgJl9feWVhcldyYXBwZXIge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMSwgMWZyKTtcblxuICAgIEBtZWRpYSAjeyRzY3JlZW4tbWR9IHtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7XG4gICAgfVxuICB9XG5cbiAgJl9faXRlbSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgKyB2YXIoLS10aW1lbGluZS1ib3JkZXItd2lkdGgpKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tc3BhY2luZy1sZy0yKTtcblxuICAgIEBtZWRpYSAjeyRzY3JlZW4tbWR9IHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIH1cbiAgIFxuICAgICYtLWxlZnQge1xuICAgICAgZ3JpZC1jb2x1bW46IDEgLyAyO1xuICAgICAgcGFkZGluZy1yaWdodDogdmFyKC0tc3BhY2luZy1sZy0xKTtcblxuICAgICAgQG1lZGlhICN7JHNjcmVlbi1zbX0ge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLWxnLTcpO1xuICAgICAgfVxuXG4gICAgICBAbWVkaWEgI3skc2NyZWVuLW1kfSB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLXNwYWNpbmctbGctNCk7XG4gICAgICB9XG4gICAgICBcbiAgICAgIEBtZWRpYSAjeyRzY3JlZW4tbWQtbGd9IHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogdmFyKC0tc3BhY2luZy1sZy01KTtcbiAgICAgIH1cblxuICAgICAgLnRpbWVsaW5lX19ib3JkZXIge1xuICAgICAgICBib3JkZXItcmlnaHQ6IHZhcigtLXRpbWVsaW5lLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tb3JhbmdlKTtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IG5vbmU7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgfVxuXG4gICAgICAudGltZWxpbmVfX2NpcmNsZSB7XG4gICAgICAgIGxlZnQ6IGNhbGMoMTAwJSAtICh2YXIoLS10aW1lbGluZS1jaXJjbGUtc2l6ZSkgLyAyKSAtICh2YXIoLS10aW1lbGluZS1ib3JkZXItd2lkdGgpIC8gMikpO1xuICAgICAgfVxuICAgIH1cblxuICAgICYtLXJpZ2h0IHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLXNwYWNpbmctbGctMSk7XG5cbiAgICAgIEBtZWRpYSAjeyRzY3JlZW4tc219IHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogdmFyKC0tc3BhY2luZy1sZy03KTtcbiAgICAgIH1cblxuICAgICAgQG1lZGlhICN7JHNjcmVlbi1tZH0ge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXNwYWNpbmctbGctNCk7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgIGdyaWQtY29sdW1uOiAyIC8gMztcbiAgICAgIH1cbiAgICAgIFxuICAgICAgQG1lZGlhICN7JHNjcmVlbi1tZC1sZ30ge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLWxnLTUpO1xuICAgICAgfVxuXG4gICAgICAudGltZWxpbmVfX2JvcmRlciB7XG4gICAgICAgIGJvcmRlci1yaWdodDogdmFyKC0tdGltZWxpbmUtYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS1vcmFuZ2UpO1xuICAgICAgICByaWdodDogMDtcblxuICAgICAgICBAbWVkaWEgI3skc2NyZWVuLW1kfSB7XG4gICAgICAgICAgYm9yZGVyLWxlZnQ6IHZhcigtLXRpbWVsaW5lLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tb3JhbmdlKTtcbiAgICAgICAgICBib3JkZXItcmlnaHQ6IG5vbmU7XG4gICAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAudGltZWxpbmVfX2NpcmNsZSB7XG4gICAgICAgIGxlZnQ6IGNhbGMoMTAwJSAtICh2YXIoLS10aW1lbGluZS1jaXJjbGUtc2l6ZSkgLyAyKSAtICh2YXIoLS10aW1lbGluZS1ib3JkZXItd2lkdGgpIC8gMikpO1xuICAgICAgICBcbiAgICAgICAgQG1lZGlhICN7JHNjcmVlbi1tZH0ge1xuICAgICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgICAgcmlnaHQ6IGNhbGMoMTAwJSAtICh2YXIoLS10aW1lbGluZS1jaXJjbGUtc2l6ZSkgLyAyKSAtICggdmFyKC0tdGltZWxpbmUtYm9yZGVyLXdpZHRoKSAvIDIpKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICZfX2NvbnRlbnQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAxO1xuICB9XG5cbiAgJl9fYm9yZGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgfVxuXG4gICZfX2NpcmNsZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogY2FsYyg1MCUgLSAodmFyKC0tdGltZWxpbmUtY2lyY2xlLXNpemUpIC8gMikpO1xuICAgIHdpZHRoOiB2YXIoLS10aW1lbGluZS1jaXJjbGUtc2l6ZSk7XG4gICAgaGVpZ2h0OiB2YXIoLS10aW1lbGluZS1jaXJjbGUtc2l6ZSk7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW9yYW5nZSk7XG4gIH1cblxuICAvLyBvdmVyd3JpdGUgdGVhc2UgdGV4dCB3cmFwcGVyXG4gICZfX3RleHRXcmFwcGVyIHtcbiAgICBtYXJnaW4tdG9wOiBjYWxjKHZhcigtLXNwYWNpbmctc20tMykgLyAtMSk7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1zcGFjaW5nLXNtLTUpO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLXNwYWNpbmctc20tNSk7XG4gICAgcGFkZGluZy10b3A6IHZhcigtLXNwYWNpbmctbGctNSk7XG4gICAgcGFkZGluZy1ib3R0b206IHZhcigtLXNwYWNpbmctbGctMyk7XG4gICAgbWFyZ2luLWxlZnQ6IHZhcigtLXNwYWNpbmctc20tNCk7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLXNtLTQpO1xuXG4gICAgQG1lZGlhICN7JHNjcmVlbi14cy1zbX0ge1xuICAgICAgbWFyZ2luLXRvcDogY2FsYyh2YXIoLS1zcGFjaW5nLWxnLTIpIC8gLTEpO1xuICAgICAgbWFyZ2luLWxlZnQ6IHZhcigtLXNwYWNpbmctc20tMik7XG4gICAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXNwYWNpbmctc20tMik7XG4gICAgfVxuXG4gICAgQG1lZGlhICN7JHNjcmVlbi1zbX0ge1xuICAgICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1zcGFjaW5nLXNtLTEpO1xuICAgICAgcGFkZGluZy1yaWdodDogdmFyKC0tc3BhY2luZy1zbS0xKTtcbiAgICB9XG5cbiAgICBAbWVkaWEgI3skc2NyZWVuLW1kLWxnfSB7XG4gICAgICBtYXJnaW4tbGVmdDogdmFyKC0tc3BhY2luZy1iYXNlKTtcbiAgICAgIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2luZy1iYXNlKTtcbiAgICB9XG5cbiAgICBAbWVkaWEgI3skc2NyZWVuLWxnLXhsfSB7XG4gICAgICBtYXJnaW4tbGVmdDogdmFyKC0tc3BhY2luZy1sZy0zKTtcbiAgICAgIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2luZy1sZy0zKTtcbiAgICB9XG5cbiAgICBAbWVkaWEgI3skc2NyZWVuLXhsfSB7XG4gICAgICBtYXJnaW4tbGVmdDogdmFyKC0tc3BhY2luZy1sZy00KTtcbiAgICAgIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2luZy1sZy00KTtcbiAgICB9XG4gIH1cblxuICAmX19kYXRlIHtcbiAgICBtYXJnaW4tdG9wOiBjYWxjKHZhcigtLXNwYWNpbmctbGctNSkgLyAtMSk7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXNwYWNpbmctbGctMik7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKC0tc3BhY2luZy1sZy0yKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTM1JSk7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgICBmb250LWZhbWlseTogdmFyKC0tZm9udC1wYXJhZ3JhcGgtYm9sZCk7XG4gICAgZm9udC1zaXplOiB2YXIoLS1zcGFjaW5nLWxnLTEpO1xuICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgIGNvbG9yOiB2YXIoLS13aGl0ZSk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tb3JhbmdlKTtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcblxuICAgIEBtZWRpYSAjeyRzY3JlZW4teHMtc219IHtcbiAgICAgIGZvbnQtc2l6ZTogdmFyKC0tc3BhY2luZy1sZy0yKTtcbiAgICB9XG4gIH1cblxuICAmX190aXRsZSB7XG4gICAgZm9udC1zaXplOiB2YXIoLS1zcGFjaW5nLWJhc2UpO1xuXG4gICAgQG1lZGlhICN7JHNjcmVlbi14cy1zbX0ge1xuICAgICAgZm9udC1zaXplOiB2YXIoLS1zcGFjaW5nLWxnLTEpO1xuICAgIH1cbiAgfVxuXG4gICZfX21vcmUge1xuICAgIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7XG4gICAgQGluY2x1ZGUgYnV0dG9uKFxuICAgICAgdmFyKC0tZGFyay1ncmV5KSxcbiAgICAgIHZhcigtLXdoaXRlKSxcbiAgICAgIHZhcigtLW9yYW5nZSksXG4gICAgICB2YXIoLS13aGl0ZSksXG4gICAgICBzbWFsbCxcbiAgICAgIGFycm93XG4gICAgKTtcbiAgICBmb250LXNpemU6IHZhcigtLXNwYWNpbmctc20tMSk7XG5cbiAgICBAbWVkaWEgI3skc2NyZWVuLXhzLXNtfSB7XG4gICAgICBmb250LXNpemU6IHZhcigtLXNwYWNpbmctYmFzZSk7XG4gICAgfVxuICB9XG59XG4iLCIuc2xpZGVyIHtcbiAgQGluY2x1ZGUgZnVsbC13aWR0aCgpO1xuICBAaW5jbHVkZSBtYXJnaW4tYmxvY2soKTtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy1sZy02KSAhaW1wb3J0YW50O1xuICBtYXgtd2lkdGg6IDEwMHZ3O1xuICBwYWRkaW5nLXRvcDogdmFyKC0tc3BhY2luZy1sZy0yKTtcbiAgcGFkZGluZy1ib3R0b206IHZhcigtLXNwYWNpbmctbGctMik7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMjtcblxuICAudGV4dEltYWdlIHtcbiAgICAmX19jb250ZW50IHtcbiAgICAgIHdpZHRoOiAxMDB2dztcbiAgICAgIHBhZGRpbmctbGVmdDogdmFyKC0tc3BhY2luZy1sZy01KTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLXNwYWNpbmctbGctNSk7XG5cbiAgICAgIEBtZWRpYSAjeyRzY3JlZW4tbWR9IHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiA4dnc7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDh2dztcbiAgICAgIH1cbiAgICB9XG4gICAgJl9faW1nQ2FwdGlvbiB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgICAmX190ZXh0V3JhcHBlciB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIH1cblxuICAgICZfX3RpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogdmFyKC0tc3BhY2luZy1sZy0xKTtcbiAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctc20tMik7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcblxuICAgICAgQG1lZGlhICN7JHNjcmVlbi1tZH0ge1xuICAgICAgICBmb250LXNpemU6IHZhcigtLXNwYWNpbmctbGctMik7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJl9fdGV4dCB7XG4gICAgICBwOmxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIGZsaWNraXR5IHN0eWxlc1xuICAuZmxpY2tpdHktYnV0dG9uIHtcbiAgICBtaW4taGVpZ2h0OiB1bnNldCAhaW1wb3J0YW50O1xuICAgIHdpZHRoOiB2YXIoLS1zcGFjaW5nLWxnLTMpICFpbXBvcnRhbnQ7XG4gICAgaGVpZ2h0OiB2YXIoLS1zcGFjaW5nLWxnLTMpICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnByZXZpb3VzIHtcbiAgICBsZWZ0OiB2YXIoLS1zcGFjaW5nLXNtLTQpICFpbXBvcnRhbnQ7XG4gICAgQG1lZGlhICN7JHNjcmVlbi1tZH0ge1xuICAgICAgbGVmdDogdmFyKC0tc3BhY2luZy1sZy0xKSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIC5uZXh0IHtcbiAgICByaWdodDogdmFyKC0tc3BhY2luZy1zbS00KSAhaW1wb3J0YW50O1xuICAgIEBtZWRpYSAjeyRzY3JlZW4tbWR9IHtcbiAgICAgIHJpZ2h0OiB2YXIoLS1zcGFjaW5nLWxnLTEpICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG4iXX0= */
