/*!*******************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[1].use[2]!./scss/styles.scss ***!
  \*******************************************************************************************************************************************************************/
/***
    The new CSS reset - version 1.11.3 (last updated 25.08.2024)
    GitHub page: https://github.com/elad2412/the-new-css-reset
***/
/*
    Remove all the styles of the "User-Agent-Stylesheet", except for the 'display' property
    - The "symbol *" part is to solve Firefox SVG sprite bug
    - The "html" element is excluded, otherwise a bug in Chrome breaks the CSS hyphens property (https://github.com/elad2412/the-new-css-reset/issues/36)
 */
*:where(:not(html, iframe, canvas, img, svg, video, audio):not(svg *, symbol *)) {
  all: unset;
  display: revert;
}

/* Preferred box-sizing value */
*,
*:before,
*:after {
  box-sizing: border-box;
}

/* Fix mobile Safari increase font-size on landscape mode */
html {
  -moz-text-size-adjust: none;
  -webkit-text-size-adjust: none;
  text-size-adjust: none;
}

/* Reapply the pointer cursor for anchor tags */
a,
button {
  cursor: revert;
}

/* Remove list styles (bullets/numbers) */
ol,
ul,
menu,
summary {
  list-style: none;
}

/* Firefox: solve issue where nested ordered lists continue numbering from parent (https://bugzilla.mozilla.org/show_bug.cgi?id=1881517) */
ol {
  counter-reset: revert;
}

/* For images to not be able to exceed their container */
img {
  max-inline-size: 100%;
  max-block-size: 100%;
}

/* removes spacing between cells in tables */
table {
  border-collapse: collapse;
}

/* Safari - solving issue when using user-select:none on the <body> text input doesn't working */
input,
textarea {
  -webkit-user-select: auto;
}

/* revert the 'white-space' property for textarea elements on Safari */
textarea {
  white-space: revert;
}

/* minimum style to allow to style meter element */
meter {
  -webkit-appearance: revert;
  appearance: revert;
}

/* preformatted text - use only for this feature */
:where(pre) {
  all: revert;
  box-sizing: border-box;
}

/* reset default text opacity of input placeholder */
::placeholder {
  color: unset;
}

/* fix the feature of 'hidden' attribute.
 display:revert; revert to element instead of attribute */
:where([hidden]) {
  display: none;
}

/* revert for bug in Chromium browsers
* - fix for the content editable attribute will work properly.
* - webkit-user-select: auto; added for Safari in case of using user-select:none on wrapper element*/
:where([contenteditable]:not([contenteditable=false])) {
  overflow-wrap: break-word;
  -webkit-user-select: auto;
  -moz-user-modify: read-write;
  -webkit-user-modify: read-write;
  -webkit-line-break: after-white-space;
}

/* apply back the draggable feature - exist only in Chromium and Safari */
:where([draggable=true]) {
  -webkit-user-drag: element;
}

/* Revert Modal native behavior */
:where(dialog:modal) {
  all: revert;
  box-sizing: border-box;
}

/* Remove details summary webkit styles */
::-webkit-details-marker {
  display: none;
}

@font-face {
  font-family: "Gilroy";
  font-display: swap;
  src: url("../fonts/gilroy-extrabold-webfont.woff2") format("woff2"), url("../fonts/gilroy-extrabold-webfont.woff") format("woff");
  font-weight: 800;
  font-style: normal;
}
@font-face {
  font-family: "Gilroy";
  font-display: swap;
  src: url("../fonts/gilroy-regular-webfont.woff2") format("woff2"), url("../fonts/gilroy-regular-webfont.woff") format("woff");
  font-weight: 400;
  font-style: normal;
}
:root {
  --gradient-header: linear-gradient(180deg, rgba(2, 11, 21, 0.68) 25%, rgba(2, 11, 21, 0) 100%);
  --shadow-lg: 0 0 var(--spacing-16) 0 rgba(6, 38, 65, 0.16);
  --shadow-sm: 0 0 var(--spacing-16) 0 rgba(6, 38, 65, 0.08);
  --link-border-transition: 0.3s ease;
  --color-black: #000000;
  --color-white: #ffffff;
  --color-red: #d32f17;
  --color-green: #28a745;
  --color-orange: #ff6600;
  --color-focal-red: #e2452e;
  --color-focal-darkred: #d32f17;
  --color-focal-blacksilver: #062641;
  --color-focal-silver: #e3ebf2;
  --color-focal-darksilver: #8292a0;
  --color-focal-lightsilver: #f1f5f8;
  --color-fg-color-primary: var(--color-focal-blacksilver);
  --color-fg-primary_on-bg-secondary-hover: var(--color-white);
  --color-fg-primary_on-bg-accent: var(--color-white);
  --color-fg-secondary: var(--color-focal-silver);
  --color-fg-secondary_on-bg-accent: var(--color-focal-silver);
  --color-fg-tertiary: var(--color-focal-blacksilver);
  --color-fg-on-image: var(--color-white);
  --color-fg-placeholder: var(--color-focal-darksilver);
  --color-fg-error: var(--color-red);
  --color-fg-warning: var(--color-orange);
  --color-fg-success: var(--color-green);
  --color-fg-int-primary: var(--color-focal-blacksilver);
  --color-fg-int-primary_hover: var(--color-focal-darksilver);
  --color-fg-int-primary_active: var(--color-focal-blacksilver);
  --color-fg-int-secondary: var(--color-white);
  --color-fg-int-secondary_hover: var(--color-focal-blacksilver);
  --color-fg-int-secondary_active: var(--color-focal-red);
  --color-fg-int-accent: var(--color-focal-red);
  --color-fg-int-on-image: var(--color-white);
  --color-fg-int-on-image_hover: var(--color-focal-darksilver);
  --color-fg-int-on-primary: var(--color-white);
  --color-fg-int-on-primary_hover: var(--color-focal-darksilver);
  --color-fg-int-disabled: var(--color-focal-darksilver);
  --color-bd-primary: var(--color-focal-blacksilver);
  --color-bd-secondary: var(--color-focal-silver);
  --color-bd-on-image: var(--color-white);
  --color-bd-on-bg-secondary-hover: var(--color-white);
  --color-bd-int-primary: var(--color-focal-blacksilver);
  --color-bd-int-primary_hover: var(--color-focal-darksilver);
  --color-bd-int-primary_active: var(--color-focal-darkred);
  --color-bd-int-secondary: var(--color-white);
  --color-bd-int-secondary_hover: var(--color-focal-blacksilver);
  --color-bd-int-secondary_active: var(--color-focal-darkred);
  --color-bd-int-tertiary: var(--color-focal-darksilver);
  --color-bd-int-tertiary_focus: var(--color-focal-blacksilver);
  --color-bd-int-disabled: var(--color-focal-darksilver);
  --color-bd-int-error: var(--color-red);
  --color-bd-int-on-accent: var(--color-white);
  --color-bd-int-on-image: var(--color-white);
  --color-bd-int-on-image_hover: var(--color-focal-darksilver);
  --color-bd-int-on-accent_hover: var(--color-focal-silver);
  --color-bg-primary: var(--color-focal-blacksilver);
  --color-bg-secondary: var(--color-white);
  --color-bg-accent: var(--color-focal-darkred);
  --color-bg-tertiary: var(--color-focal-silver);
  --color-bg-error: var(--color-red);
  --color-bg-warning: var(--color-orange);
  --color-bg-success: var(--color-green);
  --color-bg-int-primary: var(--color-focal-blacksilver);
  --color-bg-int-primary_hover: var(--color-focal-darksilver);
  --color-bg-int-primary_active: var(--color-focal-blacksilver);
  --color-bg-int-primary_on-image: var(--color-white);
  --color-bg-int-primary_on-image-hover: var(--color-focal-darksilver);
  --color-bg-int-secondary: var(--color-white);
  --color-bg-int-secondary_hover: var(--color-focal-silver);
  --color-bg-int-secondary_active: var(--color-white);
  --color-bg-int-disabled: var(--color-focal-silver);
}

.heading-xl {
  font-size: 3.5rem;
  font-family: var(--font-family, var(--ff-focal));
  font-weight: var(--font-weight, 800);
  line-height: var(--line-height, );
  letter-spacing: var(--letter-spacing, 0);
}

.heading-lg {
  font-size: 2.5rem;
  font-family: var(--font-family, var(--ff-focal));
  font-weight: var(--font-weight, 800);
  line-height: var(--line-height, );
  letter-spacing: var(--letter-spacing, 0);
}

.heading-md {
  font-size: 2rem;
  font-family: var(--font-family, var(--ff-focal));
  font-weight: var(--font-weight, 800);
  line-height: var(--line-height, );
  letter-spacing: var(--letter-spacing, 0);
}

.heading-sm {
  font-size: 1.625rem;
  font-family: var(--font-family, var(--ff-focal));
  font-weight: var(--font-weight, 800);
  line-height: var(--line-height, );
  letter-spacing: var(--letter-spacing, 0);
}

.heading-xs {
  font-size: 1.25rem;
  font-family: var(--font-family, var(--ff-focal));
  font-weight: var(--font-weight, 800);
  line-height: var(--line-height, );
  letter-spacing: var(--letter-spacing, 0);
}

.text-xl {
  font-size: 1.625rem;
  font-weight: var(--font-weight, 400);
  line-height: var(--line-height, 1.5);
  font-family: var(--font-family, var(--ff-focal));
  letter-spacing: var(--letter-spacing, 0.03em);
}

.text-xl_bold {
  font-size: 1.625rem;
  font-weight: var(--font-weight, 800);
  line-height: var(--line-height, 1.5);
  font-family: var(--font-family, var(--ff-focal));
  letter-spacing: var(--letter-spacing, 0.03em);
}

.text-lg {
  font-size: 1.25rem;
  font-weight: var(--font-weight, 400);
  line-height: var(--line-height, 1.75);
  font-family: var(--font-family, var(--ff-focal));
  letter-spacing: var(--letter-spacing, 0.03em);
}

.text-lg_bold {
  font-size: 1.25rem;
  font-weight: var(--font-weight, 800);
  line-height: var(--line-height, 1.75);
  font-family: var(--font-family, var(--ff-focal));
  letter-spacing: var(--letter-spacing, 0.03em);
}

.text-md, body {
  font-size: 1rem;
  font-weight: var(--font-weight, 400);
  line-height: var(--line-height, 1.6);
  font-family: var(--font-family, var(--ff-focal));
  letter-spacing: var(--letter-spacing, 0.03em);
}

.text-md_bold, .btn .btn__text, .lang-switcher__btn.dropdown__toggle[aria-expanded] .btn__text, .header__profile-button .btn__text, nav a {
  font-size: 1rem;
  font-weight: var(--font-weight, 800);
  line-height: var(--line-height, 1.6);
  font-family: var(--font-family, var(--ff-focal));
  letter-spacing: var(--letter-spacing, 0.03em);
}

.text-sm {
  font-size: 0.875rem;
  font-weight: var(--font-weight, 400);
  line-height: var(--line-height, 1.25);
  font-family: var(--font-family, var(--ff-focal));
  letter-spacing: var(--letter-spacing, 0.03em);
}

.text-sm_bold {
  font-size: 0.875rem;
  font-weight: var(--font-weight, 800);
  line-height: var(--line-height, 1.25);
  font-family: var(--font-family, var(--ff-focal));
  letter-spacing: var(--letter-spacing, 0.03em);
}

@keyframes border-slide-in {
  /**
    * Animation for sliding in border effect on hover/focus
    */
  from {
    background-size: 0% var(--border-size);
  }
  to {
    background-size: 100% var(--border-size);
  }
}
:root {
  --ff-focal: 'Gilroy', sans-serif;
  --spacing-0: 0;
  --spacing-2: 0.125rem;
  --spacing-4: 0.25rem;
  --spacing-6: 0.375rem;
  --spacing-8: 0.5rem;
  --spacing-12: 0.75rem;
  --spacing-16: 1rem;
  --spacing-20: 1.25rem;
  --spacing-24: 1.5rem;
  --spacing-32: 2rem;
  --spacing-40: 2.5rem;
  --spacing-48: 3rem;
  --spacing-64: 4rem;
  --spacing-80: 5rem;
  --spacing-96: 6rem;
  --spacing-128: 8rem;
  --radius-0: 0;
  --radius-4: 0.25rem;
  --radius-8: 0.5rem;
  --radius-16: 1rem;
  --radius-100: 6.25rem;
}

:root {
  --header-menu-transition: 0.35s ease-in-out;
}

.header-container,
.main-content,
.footer-container,
.footer-bottom {
  --columns: 4;
  --gap: var(--spacing-8);
  --padding-side-value: var(--spacing-12);
  --padding-side: var(--padding-side-value);
  --max-width: 100%;
  width: 100%;
  max-width: calc(var(--max-width));
  margin-left: auto;
  margin-right: auto;
  padding-left: var(--padding-side);
  padding-right: var(--padding-side);
  display: grid;
  grid-template-columns: repeat(var(--columns), minmax(0, 1fr));
  gap: var(--gap);
}
.header-container > *,
.main-content > *,
.footer-container > *,
.footer-bottom > * {
  grid-column: span var(--columns);
}
@media (min-width: 768px) {
  .header-container,
  .main-content,
  .footer-container,
  .footer-bottom {
    --columns: 6;
    --gap: var(--spacing-8);
    --padding-side-value: var(--spacing-24);
  }
}
@media (min-width: 1024px) {
  .header-container,
  .main-content,
  .footer-container,
  .footer-bottom {
    --columns: 12;
    --gap: var(--spacing-20);
    --padding-side-value: var(--spacing-24);
    --padding-side: calc(var(--padding-side-value) + var(--frame-border));
  }
}
@media (min-width: 1440px) {
  .header-container,
  .main-content,
  .footer-container,
  .footer-bottom {
    --max-width: 1440px;
    --padding-side-value: var(--spacing-80);
  }
}

.header-container,
.main-content,
.footer-container {
  --padding-side: var(--spacing-20);
  padding-left: var(--padding-side);
  padding-right: var(--padding-side);
}
@media (min-width: 768px) {
  .header-container,
  .main-content,
  .footer-container {
    --padding-side: var(--spacing-32);
  }
}

header,
main,
footer {
  --body-padding-vertical: var(--spacing-12);
  --body-padding: var(--body-padding-vertical) var(--spacing-12);
  padding: var(--body-padding);
}
@media (min-width: 768px) {
  header,
  main,
  footer {
    --body-padding-vertical: var(--spacing-24);
    --body-padding: var(--body-padding-vertical) var(--spacing-24);
  }
}
@media (min-width: 1024px) {
  header,
  main,
  footer {
    --frame-border: var(--spacing-16);
    --body-padding-vertical: calc(var(--frame-border) * 2);
    --body-padding: var(--body-padding-vertical) var(--spacing-40);
  }
}
@media (min-width: 1440px) {
  header,
  main,
  footer {
    --body-padding: var(--body-padding-vertical) var(--spacing-80);
  }
}

footer {
  padding-top: var(--spacing-24);
  padding-bottom: var(--spacing-48);
}
@media (min-width: 1024px) {
  footer {
    padding-top: var(--spacing-48);
  }
}

html {
  height: 100%;
}

body {
  min-height: 100svh;
  display: flex;
  flex-direction: column;
  padding: var(--frame-border, 0);
  background-color: var(--theme-bg-color);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
body .body-top,
body .body-bottom,
body .body-left,
body .body-right {
  background: var(--frame-color, var(--color-white));
  position: fixed;
  z-index: 50;
}
body .body-left,
body .body-right {
  top: 0;
  bottom: 0;
  width: var(--frame-border, 0);
}
body .body-top,
body .body-bottom {
  left: 0;
  right: 0;
  width: 100%;
  height: var(--frame-border, 0);
}
body .body-left {
  left: 0;
}
body .body-right {
  right: 0;
}
body .body-top {
  top: 0;
}
body .body-bottom {
  bottom: 0;
}
@media (min-width: 1024px) {
  body {
    --frame-border: var(--spacing-16);
  }
}

.body-bg {
  inset: 0;
  width: 100vw;
  height: 100%;
  position: fixed;
  aspect-ratio: 16/9;
  z-index: -1;
}
[data-bg=has-img-bg] .body-bg {
  background-image: var(--page-bg);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  background-attachment: fixed;
}

main {
  flex-grow: 1;
}

/*
**  Helper classes
*/
/*
**  Hide visually and from screen readers
*/
.hidden {
  display: none !important;
}

.js-hidden {
  display: none;
}

/*
**  Hide only visually, but have it available for screen readers:
**  https://snook.ca/archives/html_and_css/hiding-content-for-accessibility
**
**  1. For long content, line feeds are not interpreted as spaces and small width
**     causes content to wrap 1 word per line:
**     https://medium.com/@jessebeach/beware-smushed-off-screen-accessible-text-5952a4c2cbfe
*/
.visuallyhidden,
.vs-hidden {
  position: absolute;
  left: -100000px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  border: 0;
  white-space: nowrap;
  -webkit-clip-path: inset(50%);
  clip-path: inset(50%);
}

/*
**  Extends the .visuallyhidden class to allow the element
**  to be focusable when navigated to via the keyboard:
**  https://www.drupal.org/node/897638
*/
.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
  position: relative;
  left: auto;
  overflow: visible;
  clip: auto;
  width: auto;
  height: auto;
  margin: 0;
  white-space: inherit;
  -webkit-clip-path: none;
  clip-path: none;
}

/*
**  Hide visually and from screen readers, but maintain layout
*/
.invisible {
  visibility: hidden;
}

.skiplinks {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
}
.skiplinks ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.visuallyhidden.skiplink:active,
.visuallyhidden.skiplink:focus {
  position: absolute;
  top: auto;
  left: auto;
  z-index: 1000;
  overflow: visible;
  clip: auto;
  width: auto;
  height: auto;
  margin: 0;
  white-space: nowrap;
  -webkit-clip-path: none;
  clip-path: none;
}

.fixedPosition {
  overflow: hidden;
}

.soft-break {
  display: inline-block;
}

@media (min-width: 1024px) {
  .mobile-only {
    display: none !important;
  }
}

:root {
  --focus-outline-color: currentColor;
  --focus-outline-offset: 0.1rem;
  --focus-outline-style: solid;
  --focus-outline-width: 2px;
}

*:focus-visible {
  outline-color: var(--focus-outline-color);
  outline-offset: var(--focus-outline-offset);
  outline-style: var(--focus-outline-style);
  outline-width: var(--focus-outline-width);
}

a {
  --border-color: transparent;
  color: var(--color-primary);
}
a:active, a:focus-visible {
  color: var(--color-fg-int-primary_hover);
}
a * {
  transition: inherit;
}
@media not print and (hover: hover) {
  a:hover {
    color: var(--color-fg-int-primary_hover);
  }
  a:not(.btn:not(.btn--link), .logo, .footer__main-nav a, header a, header button, .dropdown__toggle[aria-expanded]) {
    --border-size: 2px;
    --line-height: calc(1.6 * 1.2);
    background-image: linear-gradient(var(--border-color, currentColor), var(--border-color, currentColor));
    background-position: 0% 100%;
    background-repeat: no-repeat;
    background-size: 100% var(--border-size);
  }
  a:not(.btn:not(.btn--link), .logo, .footer__main-nav a, header a, header button, .dropdown__toggle[aria-expanded]):hover, a:not(.btn:not(.btn--link), .logo, .footer__main-nav a, header a, header button, .dropdown__toggle[aria-expanded]):focus-visible {
    --border-color: currentColor;
    animation: border-slide-in var(--link-border-transition);
  }
}

a,
button {
  user-select: none;
  transition: color var(--link-border-transition), border-color var(--link-border-transition), background-color var(--link-border-transition), background-size var(--link-border-transition);
}

header nav a,
header nav button,
header nav .btn .btn__text {
  font-size: 1.25rem;
  font-family: var(--font-family, var(--ff-focal));
  font-weight: var(--font-weight, 800);
  line-height: var(--line-height, );
  letter-spacing: var(--letter-spacing, 0);
}
@media (min-width: 1100px) {
  header nav a,
  header nav button,
  header nav .btn .btn__text {
    font-size: 1rem;
    font-weight: var(--font-weight, 800);
    line-height: var(--line-height, 1.6);
    font-family: var(--font-family, var(--ff-focal));
    letter-spacing: var(--letter-spacing, 0.03em);
  }
}

picture {
  display: block;
  line-height: 0;
}
picture img {
  width: 100%;
  max-width: 100%;
}

.icon {
  display: inline-flex;
  place-content: center;
  place-items: center;
  line-height: 0;
  color: var(--color-text, currentColor);
}
.icon svg {
  width: 1.5rem;
  height: 1.5rem;
}

/* Chrome, Firefox, Opera, Safari 10.1+ */
::placeholder {
  color: var(--color-primary);
  opacity: 1; /* Firefox */
}

/* Internet Explorer 10-11 */
:-ms-input-placeholder {
  color: var(--color-primary);
}

/* Microsoft Edge */
::-ms-input-placeholder {
  color: var(--color-primary);
}

input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
  /* display: none; <- Crashes Chrome on hover */
  margin: 0; /* <-- Apparently some margin are still there even though it's hidden */
  /* fix for removing inner shadow on ios */
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

input[type=number] {
  -moz-appearance: textfield; /* Firefox */
}

.cookie-info {
  position: fixed;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1000;
  display: none;
  padding: 2.125rem 1.5rem;
  background: #ffffff;
  box-shadow: 0 -14px 30px 0 rgba(0, 0, 0, 0.1490196078);
}
.cookie-info.no-cookie {
  display: block;
}

.cookie-info-wrap {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  justify-content: space-between;
}

.cookie-info__button-wrap {
  flex-shrink: 0;
}
.cookie-info__button-wrap span {
  line-height: calc(140% + 8.5px) !important;
}

.footer {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-24);
}

.footer-container a,
.footer-container .icon,
.footer-container .footer__main-nav__submenu.dropdown__list .dropdown__link,
.footer-bottom a,
.footer-bottom .icon,
.footer-bottom .footer__main-nav__submenu.dropdown__list .dropdown__link {
  --color-text: inherit;
  color: var(--color-text);
}
@media not print and (hover: hover) {
  .footer-container a:hover,
  .footer-container .icon:hover,
  .footer-container .footer__main-nav__submenu.dropdown__list .dropdown__link:hover,
  .footer-bottom a:hover,
  .footer-bottom .icon:hover,
  .footer-bottom .footer__main-nav__submenu.dropdown__list .dropdown__link:hover {
    --color-text: var(--color-fg-int-primary_hover);
  }
}
.footer-container .dropdown__link,
.footer-container .footer__bottom-nav__link,
.footer-container .footer__socials-nav__link,
.footer-bottom .dropdown__link,
.footer-bottom .footer__bottom-nav__link,
.footer-bottom .footer__socials-nav__link {
  font-weight: 400;
}
.footer-container .dropdown__link:hover,
.footer-container .footer__bottom-nav__link:hover,
.footer-container .footer__socials-nav__link:hover,
.footer-bottom .dropdown__link:hover,
.footer-bottom .footer__bottom-nav__link:hover,
.footer-bottom .footer__socials-nav__link:hover {
  --border-color: transparent !important;
  background-color: transparent;
}

.footer-container {
  --color-text: var(--color-fg-primary_on-bg-accent);
  align-items: start;
  padding-top: var(--padding-vertical, var(--spacing-20));
  padding-bottom: var(--padding-vertical, var(--spacing-20));
  color: var(--color-text);
  border-radius: var(--radius-16);
  background-color: var(--color-bg-primary);
}
@media (min-width: 768px) {
  .footer-container {
    --padding-vertical: var(--spacing-32);
    row-gap: var(--spacing-40);
  }
}
@media (min-width: 1024px) {
  .footer-container {
    --padding-vertical: var(--spacing-40);
    row-gap: var(--spacing-80);
  }
  .footer-container .logo-wrapper {
    grid-column: span 9;
  }
  .footer-container .footer__socials-nav {
    grid-column: span 3;
  }
  .footer-container .footer__address {
    grid-column: span 6;
  }
  .footer-container .footer__main-nav {
    grid-column: span 6;
  }
  .footer-container .footer__logos-section {
    grid-column: span 12;
  }
}

.footer-bottom {
  padding-left: var(--fb-padding-side, var(--spacing-20));
  padding-right: var(--fb-padding-side, var(--spacing-20));
}
[data-bg=has-img-bg] .footer-bottom {
  color: var(--color-fg-on-image);
}
[data-bg=has-bokeh-bg] .footer-bottom {
  color: var(--color-fg-primary);
}
@media (min-width: 1024px) {
  .footer-bottom {
    --fb-padding-side: var(--spacing-32);
  }
}

.footer__socials-nav {
  align-self: center;
  margin-top: var(--spacing-24);
  margin-bottom: var(--spacing-24);
}
@media (min-width: 768px) {
  .footer__socials-nav {
    margin: 0;
  }
}

.footer__socials-nav__list {
  display: flex;
  align-items: center;
  gap: var(--spacing-24);
}
@media (min-width: 1024px) {
  .footer__socials-nav__list {
    justify-content: end;
    gap: var(--spacing-8);
  }
}

.footer__socials-nav__item {
  line-height: 1;
}
.footer__socials-nav__item .icon svg {
  width: 2.25rem;
  height: 2.25rem;
}

.footer__address p {
  margin-bottom: var(--spacing-24);
}
.footer__address p:not(:first-child) {
  margin-top: var(--spacing-24);
}
.footer__address .newsletter-link {
  --border-color: inherit;
  --color-text: inherit;
}
.footer__address .newsletter-link:hover {
  --border-color: var(--color-fg-int-primary_hover) !important;
}
@media (min-width: 768px) {
  .footer__address {
    padding-right: var(--spacing-12);
  }
}
@media (min-width: 1024px) {
  .footer__address {
    padding-right: 0;
  }
}

.footer__address,
.footer__main-nav {
  margin-bottom: var(--spacing-64);
}
@media (min-width: 768px) {
  .footer__address,
  .footer__main-nav {
    margin-bottom: 0;
  }
}

@media (min-width: 768px) {
  .footer__main-nav__list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-template-areas: "left right";
    min-height: 0;
    align-items: start;
    column-gap: var(--spacing-20);
  }
}

.footer__main-nav__item:not(:last-child) {
  margin-bottom: var(--spacing-32);
}
@media (min-width: 768px) {
  .footer__main-nav__submenu-item:not(:last-child) {
    margin-bottom: var(--spacing-32);
  }
}

.footer__main-nav__link,
.footer__main-nav__submenu-link {
  display: block;
  padding-right: var(--link-pdr, 0) !important;
}
@media (min-width: 768px) {
  .footer__main-nav__link,
  .footer__main-nav__submenu-link {
    --link-pdr: var(--spacing-24);
  }
}
@media (min-width: 1024px) {
  .footer__main-nav__link,
  .footer__main-nav__submenu-link {
    --link-pdr: var(--spacing-32);
  }
}
@media (min-width: 1440px) {
  .footer__main-nav__link,
  .footer__main-nav__submenu-link {
    --link-pdr: var(--spacing-40);
  }
}

.footer__main-nav__item {
  grid-column: left;
}

@media (min-width: 768px) {
  .footer__main-nav__item:has(.footer__main-nav__submenu-button):not(.is-abc) {
    grid-column: right;
    align-self: start;
    grid-row: 1/span 6;
  }
}

.footer__main-nav__submenu.dropdown__list {
  margin-top: var(--spacing-24);
  break-inside: avoid;
  border: none;
  border-radius: 0;
  box-shadow: none;
  background-color: inherit;
}
.footer__main-nav__submenu.dropdown__list .dropdown__item:first-child .dropdown__link {
  padding-top: 0;
}
.footer__main-nav__submenu.dropdown__list .dropdown__item:last-child .dropdown__link {
  border-bottom: none;
}
.footer__main-nav__submenu.dropdown__list .dropdown__link {
  padding: var(--spacing-12) 0;
  color: inherit;
  border-bottom: 1px solid rgba(227, 235, 242, 0.2);
}
@media (min-width: 768px) {
  .footer__main-nav__submenu.dropdown__list {
    margin-top: 0;
  }
  .footer__main-nav__submenu.dropdown__list .dropdown__link {
    padding-top: 0;
    padding-bottom: 0;
    font-weight: 700;
    border-bottom: 0;
  }
}

@media (min-width: 768px) {
  .footer__main-nav .dropdown__toggle[aria-expanded=false] + .dropdown__list {
    display: block !important;
  }
}

.footer__main-nav__submenu-button.dropdown__toggle {
  width: 100%;
  justify-content: space-between;
}
.footer__main-nav__submenu-button.dropdown__toggle[aria-expanded] .icon--chevron-down {
  --color-text: inherit;
}
@media (min-width: 768px) {
  .footer__main-nav__submenu-button.dropdown__toggle {
    display: none;
  }
}

.footer-bottom__copy,
.footer__bottom-nav {
  grid-column: span 6;
}

.footer__bottom-nav__list {
  display: flex;
  gap: var(--spacing-24);
}
@media (min-width: 1024px) {
  .footer__bottom-nav__list {
    justify-content: end;
  }
}

.btn, .lang-switcher__btn.dropdown__toggle[aria-expanded], .header__profile-button {
  --padding: var(--spacing-8) var(--spacing-20);
  --color-border: var(--color-bd-int-primary);
  --color-bg: var(--color-bg-int-primary);
  --color-text: var(--color-fg-int-on-primary);
  --border-radius: var(--radius-100);
  display: inline-flex;
  padding: var(--padding);
  border: 1px solid var(--color-border);
  border-radius: var(--border-radius);
  background-color: var(--color-bg);
  color: var(--color-text);
  cursor: pointer;
}
.btn .btn__text, .lang-switcher__btn.dropdown__toggle[aria-expanded] .btn__text, .header__profile-button .btn__text {
  color: var(--color-text);
}
.btn:has(.btn__icon), .lang-switcher__btn.dropdown__toggle[aria-expanded]:has(.btn__icon), .header__profile-button:has(.btn__icon) {
  gap: var(--spacing-8);
  align-items: center;
}
@media not print and (hover: hover) {
  .btn:hover, .lang-switcher__btn.dropdown__toggle[aria-expanded]:hover, .header__profile-button:hover, .btn:focus-visible, .lang-switcher__btn.dropdown__toggle[aria-expanded]:focus-visible, .header__profile-button:focus-visible {
    --color-border: var(--color-bd-int-primary_hover);
    --color-bg: var(--color-bd-int-primary_hover);
    --color-text: var(--color-white);
  }
}
.btn--secondary, .lang-switcher__btn.dropdown__toggle[aria-expanded], .header__profile-button, .btn--link, .dropdown__toggle[aria-expanded] {
  --color-bg: transparent;
  --color-border: var(--color-bd-int-primary);
  --color-text: var(--color-fg-int-primary);
}
@media not print and (hover: hover) {
  .btn--secondary:hover, .header__profile-button:hover, .btn--link:hover, .dropdown__toggle[aria-expanded]:hover, .btn--secondary:focus-visible, .header__profile-button:focus-visible, .btn--link:focus-visible, .dropdown__toggle[aria-expanded]:focus-visible {
    --color-bg: transparent;
    --color-text: var(--color-fg-int-primary_hover);
  }
}
.btn--link, .dropdown__toggle[aria-expanded] {
  --padding: 0;
  border: 0;
  border-radius: var(--radius-0);
}
@media not print and (hover: hover) {
  .btn--link, .dropdown__toggle[aria-expanded] {
    --border-size: 2px;
    --line-height: calc(1.6 * 1.2);
    background-image: linear-gradient(var(--border-color, currentColor), var(--border-color, currentColor));
    background-position: 0% 100%;
    background-repeat: no-repeat;
    background-size: 100% var(--border-size);
  }
  .btn--link:hover, .dropdown__toggle[aria-expanded]:hover, .btn--link:focus-visible, .dropdown__toggle[aria-expanded]:focus-visible {
    --border-color: currentColor;
    animation: border-slide-in var(--link-border-transition);
  }
}
.btn--reverse {
  flex-direction: row-reverse;
}

.header__main-nav__list,
.header__main-nav__side-list, .header-container,
.header__nav-container {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: var(--gap);
  padding-top: var(--header-container-pd-vertical);
  padding-bottom: var(--header-container-pd-vertical);
}

.header {
  --header-container-pd-vertical: var(--spacing-16);
  width: 100%;
  display: flex;
  position: relative;
}
.header:before {
  content: "";
  opacity: 0;
  position: absolute;
  inset: 0;
  z-index: -1;
  background-image: var(--gradient-header);
  pointer-events: none;
  transition: opacity var(--header-menu-transition) 0.35s;
}
.header--on-img-bg:not(.header--is-scrolling-down, .header--on-scroll, .header.is-open) {
  --color-text: var(--color-white);
  color: var(--color-text);
}
.header--on-img-bg:not(.header--is-scrolling-down, .header--on-scroll, .header.is-open):before {
  opacity: 1;
}
.header--on-scroll .logo, .header--on-bokeh-bg .logo {
  color: var(--color-red);
}
.header--on-scroll:before, .header--on-bokeh-bg:before, .header--is-scrolling-down:before {
  opacity: 0;
}
.header--is-scrolling-down {
  transform: translateY(-100%);
}
.header--on-scroll {
  top: 0;
  position: sticky;
  transform: translateY(0);
  z-index: 10;
}
.header.is-open {
  min-height: auto;
  max-height: calc(100svh - var(--body-padding-vertical));
}

.header,
.header-container,
.header__nav-container {
  transition: max-height var(--header-menu-transition), transform var(--header-menu-transition), background-color var(--header-menu-transition), background-image var(--header-menu-transition) 5s, overflow var(--header-menu-transition);
}

.header-container {
  --gap: 0;
  flex-wrap: wrap;
  border-radius: var(--radius-16);
  place-content: start;
}
.is-open .header-container, .header--on-scroll .header-container {
  box-shadow: var(--shadow-lg);
  background-color: var(--color-bg-secondary);
}
.is-open .header-container .logo, .header--on-scroll .header-container .logo {
  color: var(--color-focal-red);
}
.is-open .header-container {
  max-height: 100%;
}
.header-container .dropdown__list {
  position: absolute;
  z-index: 20;
}
@media (min-width: 1100px) {
  .header-container {
    --gap: var(--spacing-24);
    flex-wrap: nowrap;
    place-content: center;
  }
}
@media (min-width: 1200px) {
  .header-container {
    --gap: var(--spacing-16);
  }
}

.header__menu-toggle {
  width: 2.5rem;
  height: 2.5rem;
  top: calc(var(--header-container-pd-vertical) + var(--body-padding-vertical));
  right: calc(var(--spacing-20) + var(--spacing-12));
  padding: var(--spacing-8);
  position: absolute;
}
@media (min-width: 768px) {
  .header__menu-toggle {
    right: calc(var(--spacing-24) + var(--spacing-32));
  }
}
@media (min-width: 1024px) {
  .header__menu-toggle {
    right: calc(var(--spacing-32) + var(--frame-border) * 2 + var(--spacing-8));
  }
}
@media (min-width: 1100px) {
  .header__menu-toggle {
    display: none;
  }
}

.header__nav-container {
  display: flex;
  justify-content: start;
  flex-grow: 1;
  padding: 0;
  max-height: 0;
  flex-direction: column-reverse;
  flex-basis: 100%;
  overflow: hidden;
}
.is-open .header__nav-container {
  max-height: 100svh;
}
@media (min-width: 1100px) {
  .header__nav-container {
    flex-direction: row;
    max-height: unset;
    flex-basis: auto;
    overflow: unset;
  }
}

.header__main-nav,
.header__main-nav__side {
  width: 100%;
}
@media (min-width: 1100px) {
  .header__main-nav,
  .header__main-nav__side {
    margin-left: auto;
    width: auto;
  }
}

.header__main-nav__list {
  --gap: var(--spacing-24);
  flex-direction: column;
  align-items: start;
}
@media (min-width: 1100px) {
  .header__main-nav__list {
    --gap: var(--spacing-32);
    flex-direction: row;
    align-items: center;
  }
}
@media (min-width: 1200px) {
  .header__main-nav__list {
    --gap: var(--spacing-48);
  }
}

.header__main-nav__side-list {
  --gap: var(--spacing-16);
  padding-top: var(--spacing-32);
  padding-bottom: var(--spacing-24);
  border-bottom: 1px solid var(--color-bd-secondary);
}
@media (min-width: 1100px) {
  .header__main-nav__side-list {
    padding-bottom: 0;
    padding-top: 0;
    border-bottom: none;
  }
}

.header__profile-button {
  --padding: 0;
  display: flex;
}
.header--on-img-bg .header__profile-button.is-logged-out {
  --color-text: var(--color-bd-int-on-image);
  --color-bg: transparent;
  --color-border: currentColor;
}
.header--on-img-bg .header__profile-button.is-logged-in {
  --color-text: var(--color-fg-int-primary);
  --color-bg: var(--color-bg-int-primary_on-image);
  --color-border: var(--color-bg-int-primary_on-image);
}
.header--on-bokeh-bg .header__profile-button.is-logged-out {
  --color-text: var(--color-bd-int-primary);
  --color-bg: transparent;
  --color-border: currentColor;
}
.header--on-bokeh-bg .header__profile-button.is-logged-in {
  --color-text: var(--color-fg-int-on-primary);
  --color-bg: var(--color-bg-int-primary);
  --color-border: var(--color-bg-int-primary);
}
.header__profile-button .icon--user {
  --padding: var(--spacing-8);
  width: 2.5rem;
  height: 2.5rem;
}

.header__main-nav__item,
.lang-switcher {
  position: relative;
}

header a,
header button,
.dropdown__toggle[aria-expanded],
a.footer__main-nav__link {
  --border-color: transparent;
  --color-text: var(--color-text);
  white-space: nowrap;
}
header a:hover, header a:focus-visible,
header button:hover,
header button:focus-visible,
.dropdown__toggle[aria-expanded]:hover,
.dropdown__toggle[aria-expanded]:focus-visible,
a.footer__main-nav__link:hover,
a.footer__main-nav__link:focus-visible {
  --border-color: transparent;
}
.is-active header a,
.is-active header button,
.is-active .dropdown__toggle[aria-expanded],
.is-active a.footer__main-nav__link {
  --border-color: currentColor;
}

.nav__toggle {
  position: relative;
}

.nav__list {
  position: absolute;
  z-index: 1;
  width: 10rem;
  margin: 0;
  padding: 0;
  border: 1px solid #000000;
  list-style: none;
}

.nav__list li {
  padding: 1rem;
}

.lang-switcher__btn.dropdown__toggle[aria-expanded] {
  --padding: 0 var(--spacing-16);
  --color-text: currentColor;
  --color-border: currentColor;
  height: 2.5rem;
  gap: var(--spacing-4);
}

.logo-wrapper {
  display: flex;
  flex-direction: var(--direction, column);
  align-items: var(--align-items, start);
  gap: var(--gap, var(--spacing-8));
}
@media (min-width: 768px) {
  .logo-wrapper {
    --gap: var(--spacing-16);
    --direction: row;
    --align-items: center;
  }
}

.logo__link {
  line-height: 0;
}

.logo__text {
  display: block;
}

.form__col.has-error .label,
.form__col.has-error .select,
.form__col.has-error .upload__input, .form__col.has-error--email .label,
.form__col.has-error--email .select,
.form__col.has-error--email .upload__input {
  color: #d32f17;
}
.form__col.has-error .input,
.form__col.has-error .select,
.form__col.has-error .textarea,
.form__col.has-error .upload__input, .form__col.has-error--email .input,
.form__col.has-error--email .select,
.form__col.has-error--email .textarea,
.form__col.has-error--email .upload__input {
  border-color: #d32f17;
}
.form__col.has-error .input::placeholder,
.form__col.has-error .textarea::placeholder, .form__col.has-error--email .input::placeholder,
.form__col.has-error--email .textarea::placeholder {
  color: #d32f17;
  opacity: 1;
}

.form__row {
  display: grid;
  grid-auto-columns: 1fr;
  grid-auto-flow: column;
  gap: 1.25rem;
  margin-bottom: 3rem;
}

.input {
  width: 100%;
  height: to-rem(40);
  padding: to-rem(6) to-rem(12);
  background-color: #ffffff;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.input {
  /* fix for removing inner shadow on ios */
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
.input::placeholder {
  color: #eeeeee;
}
.input::placeholder:required {
  color: #d32f17;
}
.input:focus {
  border-color: #eeeeee;
  box-shadow: none;
}
.input.form-error {
  border-color: #d32f17;
}
.input:invalid:focus, .input:required:focus, .input:required:invalid:focus {
  border-color: #eeeeee;
}

.input-password-wrap {
  position: relative;
  width: 100%;
}

.input-password__icon {
  position: absolute;
  top: 50%;
  right: 1rem;
  font-size: 1.25rem;
  opacity: 0.5;
  cursor: pointer;
  transform: translate3d(0, -50%, 0);
}

.label {
  display: block;
}

.input-number-wrap {
  position: relative;
  width: 100%;
}

.icon-counter {
  position: absolute;
  top: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  width: to-rem(40);
  height: 100%;
  background-color: var(--color-primary);
  color: #ffffff;
  cursor: pointer;
}

.icon-counter--minus {
  left: 0;
}

.icon-counter--plus {
  right: 0;
}

.textarea {
  width: 100%;
  padding: to-rem(6) to-rem(12);
  resize: vertical;
  /* fix for removing inner shadow on ios */
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

.upload-wrap {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
}
.has-error .upload-wrap {
  color: #d32f17;
}

.upload__info {
  position: relative;
  display: flex;
  flex: 0 1 auto;
  align-items: center;
  padding-left: 1.25rem;
}
.upload__info p {
  overflow: hidden;
  width: calc(100% - 36px);
  margin: 0;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.upload__input {
  position: relative;
  flex: 0 1 25%;
  padding: 0.375rem 0.75rem;
}
.upload__input input {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  cursor: pointer;
}

::-webkit-file-upload-button {
  cursor: pointer;
}

.upload__btn {
  margin-left: 1.25rem;
}

.has-error .error--empty {
  display: block;
}

.has-error--email .error--email {
  display: block;
}

.dropdown__toggle[aria-expanded] {
  --padding: 0;
  border: 0;
  border-radius: var(--radius-0);
}
.dropdown__toggle[aria-expanded].btn:has(.btn__icon) {
  gap: var(--spacing-4);
}
.dropdown__toggle[aria-expanded] .icon--chevron-down {
  --color-text: var(--color-focal-red);
  transition: transform 0.3s ease;
}
.header--on-img-bg .dropdown__toggle[aria-expanded] .icon--chevron-down {
  --color-text: inherit;
}

.dropdown__toggle[aria-expanded=false] + .dropdown__list {
  display: none !important;
}

.dropdown__toggle[aria-expanded=true] .icon--chevron-down {
  transform: rotate(180deg);
}

.dropdown__list {
  min-width: 100%;
  max-width: max-content;
  top: 100%;
  left: 0;
  margin-top: var(--spacing-8);
  overflow: hidden;
  border-radius: var(--radius-8);
  border: 1px solid var(--color-bd-secondary);
  box-shadow: var(--shadow-lg);
  background-color: var(--color-bg-secondary);
}

.dropdown__link {
  display: block;
  width: 100%;
  padding: var(--spacing-8) var(--spacing-24);
  color: var(--color-fg-int-primary);
}
@media not print and (hover: hover) {
  .dropdown__link:hover {
    color: var(--color-fg-int-primary);
    background-color: var(--color-bg-int-secondary_hover);
  }
}
@media (min-width: 768px) {
  .dropdown__link {
    font-size: 1rem;
    font-weight: var(--font-weight, 400);
    line-height: var(--line-height, 1.6);
    font-family: var(--font-family, var(--ff-focal));
    letter-spacing: var(--letter-spacing, 0.03em);
  }
}

.logos-section {
  display: flex;
  flex-direction: column;
  row-gap: var(--spacing-48);
}
@media (min-width: 1024px) {
  .logos-section {
    column-gap: var(--spacing-64);
    flex-direction: row;
  }
}

.logos-container {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-16);
}

.logos-wrapper {
  display: grid;
  grid-template-columns: repeat(var(--logos-count), minmax(0, 1fr));
  align-items: center;
  gap: var(--spacing-16);
}

/*# sourceMappingURL=data:application/json;charset=utf-8;base64,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OztBV3Z2QkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLG1CVE5ZO0VTUVo7QVh5dkJGO0FXdnZCRTtFQUNFO0FYeXZCSjs7QVdqdkJBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QVhvdkJGOztBV3h1QkE7RUFDRTtBWDJ1QkY7QVd6dUJFO0VBQ0U7QVgydUJKOztBWW54QkE7RUFDRTtFQUNBO0VBQ0E7QVpzeEJGOztBWWp4QkU7Ozs7OztFQUdFO0VBRUE7QVpzeEJKO0FPcnNCRTtFSzlFSTs7Ozs7O0lBQ0U7RVoyeEJOO0FBQ0Y7QVl2eEJFOzs7Ozs7RUFHRTtBWjR4Qko7QVkxeEJJOzs7Ozs7RUFDRTtFQUVBO0FaZ3lCTjs7QVkzeEJBO0VBQ0U7RUFFQTtFQUVBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7QVoyeEJGO0FPdnpCRTtFS2tCRjtJQWFJO0lBRUE7RVoyeEJGO0FBQ0Y7QU9uMEJFO0VLd0JGO0lBbUJJO0lBRUE7RVoyeEJGO0VZenhCRTtJQUNFO0VaMnhCSjtFWXh4QkU7SUFDRTtFWjB4Qko7RVl2eEJFO0lBQ0U7RVp5eEJKO0VZdHhCRTtJQUNFO0Vad3hCSjtFWXJ4QkU7SUFDRTtFWnV4Qko7QUFDRjs7QVlueEJBO0VBQ0U7RUFDQTtBWnN4QkY7QVlweEJFO0VBQ0U7QVpzeEJKO0FZbnhCRTtFQUNFO0FacXhCSjtBT24yQkU7RUtxRUY7SUFhSTtFWnF4QkY7QUFDRjs7QVlseEJBO0VBQ0U7RUFDQTtFQUNBO0FacXhCRjtBT3gyQkU7RUtnRkY7SUFNSTtFWnN4QkY7QUFDRjs7QVlueEJBO0VBQ0U7RUFDQTtFQUNBO0Fac3hCRjtBT3ozQkU7RUtnR0Y7SUFNSTtJQUNBO0VadXhCRjtBQUNGOztBWXB4QkE7RUFDRTtBWnV4QkY7QVlyeEJFO0VBQ0U7RUFDQTtBWnV4Qko7O0FZbHhCRTtFQUNFO0FacXhCSjtBWW54Qkk7RUFDRTtBWnF4Qk47QVlqeEJFO0VBQ0U7RUFDQTtBWm14Qko7QVlqeEJJO0VBQ0U7QVpteEJOO0FPLzRCRTtFSzhHRjtJQW1CSTtFWmt4QkY7QUFDRjtB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Qms1Q1I7O0FtQnQ2Q0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FuQnk2Q0Y7O0FvQjk2Q0E7RUFDRTtFQUNBLGtCbEJpQmtCO0VrQmhCbEIsNkJsQm1CYztFa0JsQmQseUJsQkZZO0VrQkdaO0VBQ0E7QXBCaTdDRjtBb0IvNkNFO0VYVUE7RUFDQTtFQUNBO0VBQ0E7QVR3NkNGO0FvQmo3Q0U7RUFDRSxjbEJJUztBRis2Q2I7QW9CajdDSTtFQUNFLGNsQmJNO0FGZzhDWjtBb0IvNkNFO0VBQ0UscUJsQkpTO0VrQktUO0FwQmk3Q0o7QW9COTZDRTtFQUNFLHFCbEJ2QlE7QUZ1OENaO0FvQjc2Q0U7RUFHRSxxQmxCZlM7QUY0N0NiOztBb0J6NkNBO0VBQ0U7RUFDQTtBcEI0NkNGOztBb0J6NkNBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXBCNDZDRjs7QXFCNTlDQTtFQUNFO0FyQis5Q0Y7O0FzQmgrQ0E7RUFDRTtFQUNBO0F0Qm0rQ0Y7O0FzQmgrQ0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsaUJwQlFrQjtFb0JQbEI7RUFDQTtFQUNBLGNwQlpZO0VvQmFaO0F0Qm0rQ0Y7O0FzQmgrQ0E7RUFDRTtBdEJtK0NGOztBc0JoK0NBO0VBQ0U7QXRCbStDRjs7QXVCMS9DQTtFQUNFO0VBQ0EsNkJyQm9CYztFcUJuQmQ7RWRlQTtFQUNBO0VBQ0E7RUFDQTtBVCsrQ0Y7O0F3QnBnREE7RUFDRTtFQUNBO0VBQ0E7QXhCdWdERjtBd0JyZ0RFO0VBQ0UsY3RCSFE7QUYwZ0RaOztBd0JuZ0RBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBeEJzZ0RGO0F3QnBnREU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F4QnNnREo7O0F3QmxnREE7RUFDRTtFQUNBO0VBQ0E7QXhCcWdERjtBd0JuZ0RFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXhCcWdESjs7QXdCamdEQTtFQUNFO0F4Qm9nREY7O0F3QmpnREE7RUFDRTtBeEJvZ0RGOztBeUJwakRFO0VBQ0U7QXpCdWpESjs7QXlCbGpERTtFQUNFO0F6QnFqREo7O0EwQjFqREE7RUFDRTtFQUVBO0VBQ0E7QTFCNGpERjtBMEJ0akRFO0VBQ0U7QTFCd2pESjtBMEJyakRFO0VBQ0U7RUFFQTtBMUJzakRKO0EwQmxqREk7RUFDRTtBMUJvakROOztBMEI5aURFO0VBQ0U7QTFCaWpESjs7QTBCN2lEQTtFQUNFO0ExQmdqREY7O0EwQjdpREE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFFQTtFQUNBO0VBQ0E7RUFDQTtBMUI4aURGOztBMEJ2aURBO0VBQ0U7RUFDQTtFQUNBO0VBRUE7QTFCeWlERjtBT3hnREU7RW1COUJFO0lBQ0U7SUFDQTtFMUJ5aURKO0FBQ0Y7QU8zbERFO0VtQnVDRjtJdkIrQ0U7SUFDQTtJQUNBO0lBdkRBO0lBQ0E7RUhpa0RBO0FBQ0Y7O0EyQnRuREE7RUFDRTtFQUNBO0VBQ0E7QTNCeW5ERjtBT2huREU7RW9CWkY7SUFNSTtJQUNBO0UzQjBuREY7QUFDRjs7QTJCdm5EQTtFQUNFO0VBQ0E7RUFDQTtBM0IwbkRGOztBMkJ2bkRBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QTNCMG5ERixDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vd2VicGFjay1jc3MvLi9zY3NzL3ZlbmRvcnMvX25ldy1jc3MtcmVzZXQuc2NzcyIsIndlYnBhY2s6Ly93ZWJwYWNrLWNzcy8uL3Njc3Mvc3R5bGVzLnNjc3MiLCJ3ZWJwYWNrOi8vd2VicGFjay1jc3MvLi9zY3NzL2Jhc2UvX2ZvbnRzLnNjc3MiLCJ3ZWJwYWNrOi8vd2VicGFjay1jc3MvLi9zY3NzL2Fic3RyYWN0cy9fdmFyaWFibGVzLWNvbG9ycy5zY3NzIiwid2VicGFjazovL3dlYnBhY2stY3NzLy4vc2Nzcy9hYnN0cmFjdHMvX21peGlucy10eXBvLnNjc3MiLCJ3ZWJwYWNrOi8vd2VicGFjay1jc3MvLi9zY3NzL2Fic3RyYWN0cy9fYW5pbWF0aW9ucy5zY3NzIiwid2VicGFjazovL3dlYnBhY2stY3NzLy4vc2Nzcy9hYnN0cmFjdHMvaW5kZXguc2NzcyIsIndlYnBhY2s6Ly93ZWJwYWNrLWNzcy8uL3Njc3MvYmFzZS9fYmFzZS5zY3NzIiwid2VicGFjazovL3dlYnBhY2stY3NzLy4vc2Nzcy9hYnN0cmFjdHMvX21peGlucy1icmVha3BvaW50cy5zY3NzIiwid2VicGFjazovL3dlYnBhY2stY3NzLy4vc2Nzcy9iYXNlL19oZWxwZXJzLnNjc3MiLCJ3ZWJwYWNrOi8vd2VicGFjay1jc3MvLi9zY3NzL2Fic3RyYWN0cy9fbWl4aW5zLnNjc3MiLCJ3ZWJwYWNrOi8vd2VicGFjay1jc3MvLi9zY3NzL2Jhc2UvX3R5cG8uc2NzcyIsIndlYnBhY2s6Ly93ZWJwYWNrLWNzcy8uL3Njc3MvbGF5b3V0L19jb29raWUtYmFubmVyLnNjc3MiLCJ3ZWJwYWNrOi8vd2VicGFjay1jc3MvLi9zY3NzL2xheW91dC9fZm9vdGVyLnNjc3MiLCJ3ZWJwYWNrOi8vd2VicGFjay1jc3MvLi9zY3NzL2NvbXBvbmVudHMvYXRvbS9fYnRuLnNjc3MiLCJ3ZWJwYWNrOi8vd2VicGFjay1jc3MvLi9zY3NzL2xheW91dC9faGVhZGVyLnNjc3MiLCJ3ZWJwYWNrOi8vd2VicGFjay1jc3MvLi9zY3NzL2xheW91dC9faGVhZGVyLW5hdi5zY3NzIiwid2VicGFjazovL3dlYnBhY2stY3NzLy4vc2Nzcy9jb21wb25lbnRzL2F0b20vX2xhbmctc3dpdGNoZXIuc2NzcyIsIndlYnBhY2s6Ly93ZWJwYWNrLWNzcy8uL3Njc3MvY29tcG9uZW50cy9hdG9tL19sb2dvLnNjc3MiLCJ3ZWJwYWNrOi8vd2VicGFjay1jc3MvLi9zY3NzL2NvbXBvbmVudHMvZm9ybS9fZm9ybS1jb2wuc2NzcyIsIndlYnBhY2s6Ly93ZWJwYWNrLWNzcy8uL3Njc3MvY29tcG9uZW50cy9mb3JtL19mb3JtLXJvdy5zY3NzIiwid2VicGFjazovL3dlYnBhY2stY3NzLy4vc2Nzcy9jb21wb25lbnRzL2Zvcm0vX2lucHV0LnNjc3MiLCJ3ZWJwYWNrOi8vd2VicGFjay1jc3MvLi9zY3NzL2NvbXBvbmVudHMvZm9ybS9fbGFiZWwuc2NzcyIsIndlYnBhY2s6Ly93ZWJwYWNrLWNzcy8uL3Njc3MvY29tcG9uZW50cy9mb3JtL19udW1iZXIuc2NzcyIsIndlYnBhY2s6Ly93ZWJwYWNrLWNzcy8uL3Njc3MvY29tcG9uZW50cy9mb3JtL190ZXh0YXJlYS5zY3NzIiwid2VicGFjazovL3dlYnBhY2stY3NzLy4vc2Nzcy9jb21wb25lbnRzL2Zvcm0vX3VwbG9hZC5zY3NzIiwid2VicGFjazovL3dlYnBhY2stY3NzLy4vc2Nzcy9jb21wb25lbnRzL2Zvcm0vX2Vycm9ycy5zY3NzIiwid2VicGFjazovL3dlYnBhY2stY3NzLy4vc2Nzcy9jb21wb25lbnRzL21vbGVjdWxlL19kcm9wZG93bi5zY3NzIiwid2VicGFjazovL3dlYnBhY2stY3NzLy4vc2Nzcy9jb21wb25lbnRzL21vbGVjdWxlL19sb2dvcy1jb250YWluZXIuc2NzcyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKioqXG4gICAgVGhlIG5ldyBDU1MgcmVzZXQgLSB2ZXJzaW9uIDEuMTEuMyAobGFzdCB1cGRhdGVkIDI1LjA4LjIwMjQpXG4gICAgR2l0SHViIHBhZ2U6IGh0dHBzOi8vZ2l0aHViLmNvbS9lbGFkMjQxMi90aGUtbmV3LWNzcy1yZXNldFxuKioqL1xuXG4vKlxuICAgIFJlbW92ZSBhbGwgdGhlIHN0eWxlcyBvZiB0aGUgXCJVc2VyLUFnZW50LVN0eWxlc2hlZXRcIiwgZXhjZXB0IGZvciB0aGUgJ2Rpc3BsYXknIHByb3BlcnR5XG4gICAgLSBUaGUgXCJzeW1ib2wgKlwiIHBhcnQgaXMgdG8gc29sdmUgRmlyZWZveCBTVkcgc3ByaXRlIGJ1Z1xuICAgIC0gVGhlIFwiaHRtbFwiIGVsZW1lbnQgaXMgZXhjbHVkZWQsIG90aGVyd2lzZSBhIGJ1ZyBpbiBDaHJvbWUgYnJlYWtzIHRoZSBDU1MgaHlwaGVucyBwcm9wZXJ0eSAoaHR0cHM6Ly9naXRodWIuY29tL2VsYWQyNDEyL3RoZS1uZXctY3NzLXJlc2V0L2lzc3Vlcy8zNilcbiAqL1xuKjp3aGVyZSg6bm90KGh0bWwsIGlmcmFtZSwgY2FudmFzLCBpbWcsIHN2ZywgdmlkZW8sIGF1ZGlvKTpub3Qoc3ZnICosIHN5bWJvbCAqKSkge1xuICBhbGw6IHVuc2V0O1xuICBkaXNwbGF5OiByZXZlcnQ7XG59XG5cbi8qIFByZWZlcnJlZCBib3gtc2l6aW5nIHZhbHVlICovXG4qLFxuKjpiZWZvcmUsXG4qOmFmdGVyIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuLyogRml4IG1vYmlsZSBTYWZhcmkgaW5jcmVhc2UgZm9udC1zaXplIG9uIGxhbmRzY2FwZSBtb2RlICovXG5odG1sIHtcbiAgLW1vei10ZXh0LXNpemUtYWRqdXN0OiBub25lO1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IG5vbmU7XG4gIHRleHQtc2l6ZS1hZGp1c3Q6IG5vbmU7XG59XG5cbi8qIFJlYXBwbHkgdGhlIHBvaW50ZXIgY3Vyc29yIGZvciBhbmNob3IgdGFncyAqL1xuYSxcbmJ1dHRvbiB7XG4gIGN1cnNvcjogcmV2ZXJ0O1xufVxuXG4vKiBSZW1vdmUgbGlzdCBzdHlsZXMgKGJ1bGxldHMvbnVtYmVycykgKi9cbm9sLFxudWwsXG5tZW51LFxuc3VtbWFyeSB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cbi8qIEZpcmVmb3g6IHNvbHZlIGlzc3VlIHdoZXJlIG5lc3RlZCBvcmRlcmVkIGxpc3RzIGNvbnRpbnVlIG51bWJlcmluZyBmcm9tIHBhcmVudCAoaHR0cHM6Ly9idWd6aWxsYS5tb3ppbGxhLm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTg4MTUxNykgKi9cbm9sIHtcbiAgY291bnRlci1yZXNldDogcmV2ZXJ0O1xufVxuXG4vKiBGb3IgaW1hZ2VzIHRvIG5vdCBiZSBhYmxlIHRvIGV4Y2VlZCB0aGVpciBjb250YWluZXIgKi9cbmltZyB7XG4gIG1heC1pbmxpbmUtc2l6ZTogMTAwJTtcbiAgbWF4LWJsb2NrLXNpemU6IDEwMCU7XG59XG5cbi8qIHJlbW92ZXMgc3BhY2luZyBiZXR3ZWVuIGNlbGxzIGluIHRhYmxlcyAqL1xudGFibGUge1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xufVxuXG4vKiBTYWZhcmkgLSBzb2x2aW5nIGlzc3VlIHdoZW4gdXNpbmcgdXNlci1zZWxlY3Q6bm9uZSBvbiB0aGUgPGJvZHk+IHRleHQgaW5wdXQgZG9lc24ndCB3b3JraW5nICovXG5pbnB1dCxcbnRleHRhcmVhIHtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogYXV0bztcbn1cblxuLyogcmV2ZXJ0IHRoZSAnd2hpdGUtc3BhY2UnIHByb3BlcnR5IGZvciB0ZXh0YXJlYSBlbGVtZW50cyBvbiBTYWZhcmkgKi9cbnRleHRhcmVhIHtcbiAgd2hpdGUtc3BhY2U6IHJldmVydDtcbn1cblxuLyogbWluaW11bSBzdHlsZSB0byBhbGxvdyB0byBzdHlsZSBtZXRlciBlbGVtZW50ICovXG5tZXRlciB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogcmV2ZXJ0O1xuICBhcHBlYXJhbmNlOiByZXZlcnQ7XG59XG5cbi8qIHByZWZvcm1hdHRlZCB0ZXh0IC0gdXNlIG9ubHkgZm9yIHRoaXMgZmVhdHVyZSAqL1xuOndoZXJlKHByZSkge1xuICBhbGw6IHJldmVydDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuLyogcmVzZXQgZGVmYXVsdCB0ZXh0IG9wYWNpdHkgb2YgaW5wdXQgcGxhY2Vob2xkZXIgKi9cbjo6cGxhY2Vob2xkZXIge1xuICBjb2xvcjogdW5zZXQ7XG59XG5cbi8qIGZpeCB0aGUgZmVhdHVyZSBvZiAnaGlkZGVuJyBhdHRyaWJ1dGUuXG4gZGlzcGxheTpyZXZlcnQ7IHJldmVydCB0byBlbGVtZW50IGluc3RlYWQgb2YgYXR0cmlidXRlICovXG46d2hlcmUoW2hpZGRlbl0pIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyogcmV2ZXJ0IGZvciBidWcgaW4gQ2hyb21pdW0gYnJvd3NlcnNcbiogLSBmaXggZm9yIHRoZSBjb250ZW50IGVkaXRhYmxlIGF0dHJpYnV0ZSB3aWxsIHdvcmsgcHJvcGVybHkuXG4qIC0gd2Via2l0LXVzZXItc2VsZWN0OiBhdXRvOyBhZGRlZCBmb3IgU2FmYXJpIGluIGNhc2Ugb2YgdXNpbmcgdXNlci1zZWxlY3Q6bm9uZSBvbiB3cmFwcGVyIGVsZW1lbnQqL1xuOndoZXJlKFtjb250ZW50ZWRpdGFibGVdOm5vdChbY29udGVudGVkaXRhYmxlPSdmYWxzZSddKSkge1xuICBvdmVyZmxvdy13cmFwOiBicmVhay13b3JkO1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBhdXRvO1xuICAtbW96LXVzZXItbW9kaWZ5OiByZWFkLXdyaXRlO1xuICAtd2Via2l0LXVzZXItbW9kaWZ5OiByZWFkLXdyaXRlO1xuICAtd2Via2l0LWxpbmUtYnJlYWs6IGFmdGVyLXdoaXRlLXNwYWNlO1xufVxuXG4vKiBhcHBseSBiYWNrIHRoZSBkcmFnZ2FibGUgZmVhdHVyZSAtIGV4aXN0IG9ubHkgaW4gQ2hyb21pdW0gYW5kIFNhZmFyaSAqL1xuOndoZXJlKFtkcmFnZ2FibGU9J3RydWUnXSkge1xuICAtd2Via2l0LXVzZXItZHJhZzogZWxlbWVudDtcbn1cblxuLyogUmV2ZXJ0IE1vZGFsIG5hdGl2ZSBiZWhhdmlvciAqL1xuOndoZXJlKGRpYWxvZzptb2RhbCkge1xuICBhbGw6IHJldmVydDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuLyogUmVtb3ZlIGRldGFpbHMgc3VtbWFyeSB3ZWJraXQgc3R5bGVzICovXG46Oi13ZWJraXQtZGV0YWlscy1tYXJrZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuIiwiLyoqKlxuICAgIFRoZSBuZXcgQ1NTIHJlc2V0IC0gdmVyc2lvbiAxLjExLjMgKGxhc3QgdXBkYXRlZCAyNS4wOC4yMDI0KVxuICAgIEdpdEh1YiBwYWdlOiBodHRwczovL2dpdGh1Yi5jb20vZWxhZDI0MTIvdGhlLW5ldy1jc3MtcmVzZXRcbioqKi9cbi8qXG4gICAgUmVtb3ZlIGFsbCB0aGUgc3R5bGVzIG9mIHRoZSBcIlVzZXItQWdlbnQtU3R5bGVzaGVldFwiLCBleGNlcHQgZm9yIHRoZSAnZGlzcGxheScgcHJvcGVydHlcbiAgICAtIFRoZSBcInN5bWJvbCAqXCIgcGFydCBpcyB0byBzb2x2ZSBGaXJlZm94IFNWRyBzcHJpdGUgYnVnXG4gICAgLSBUaGUgXCJodG1sXCIgZWxlbWVudCBpcyBleGNsdWRlZCwgb3RoZXJ3aXNlIGEgYnVnIGluIENocm9tZSBicmVha3MgdGhlIENTUyBoeXBoZW5zIHByb3BlcnR5IChodHRwczovL2dpdGh1Yi5jb20vZWxhZDI0MTIvdGhlLW5ldy1jc3MtcmVzZXQvaXNzdWVzLzM2KVxuICovXG4qOndoZXJlKDpub3QoaHRtbCwgaWZyYW1lLCBjYW52YXMsIGltZywgc3ZnLCB2aWRlbywgYXVkaW8pOm5vdChzdmcgKiwgc3ltYm9sICopKSB7XG4gIGFsbDogdW5zZXQ7XG4gIGRpc3BsYXk6IHJldmVydDtcbn1cblxuLyogUHJlZmVycmVkIGJveC1zaXppbmcgdmFsdWUgKi9cbiosXG4qOmJlZm9yZSxcbio6YWZ0ZXIge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4vKiBGaXggbW9iaWxlIFNhZmFyaSBpbmNyZWFzZSBmb250LXNpemUgb24gbGFuZHNjYXBlIG1vZGUgKi9cbmh0bWwge1xuICAtbW96LXRleHQtc2l6ZS1hZGp1c3Q6IG5vbmU7XG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogbm9uZTtcbiAgdGV4dC1zaXplLWFkanVzdDogbm9uZTtcbn1cblxuLyogUmVhcHBseSB0aGUgcG9pbnRlciBjdXJzb3IgZm9yIGFuY2hvciB0YWdzICovXG5hLFxuYnV0dG9uIHtcbiAgY3Vyc29yOiByZXZlcnQ7XG59XG5cbi8qIFJlbW92ZSBsaXN0IHN0eWxlcyAoYnVsbGV0cy9udW1iZXJzKSAqL1xub2wsXG51bCxcbm1lbnUsXG5zdW1tYXJ5IHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuLyogRmlyZWZveDogc29sdmUgaXNzdWUgd2hlcmUgbmVzdGVkIG9yZGVyZWQgbGlzdHMgY29udGludWUgbnVtYmVyaW5nIGZyb20gcGFyZW50IChodHRwczovL2J1Z3ppbGxhLm1vemlsbGEub3JnL3Nob3dfYnVnLmNnaT9pZD0xODgxNTE3KSAqL1xub2wge1xuICBjb3VudGVyLXJlc2V0OiByZXZlcnQ7XG59XG5cbi8qIEZvciBpbWFnZXMgdG8gbm90IGJlIGFibGUgdG8gZXhjZWVkIHRoZWlyIGNvbnRhaW5lciAqL1xuaW1nIHtcbiAgbWF4LWlubGluZS1zaXplOiAxMDAlO1xuICBtYXgtYmxvY2stc2l6ZTogMTAwJTtcbn1cblxuLyogcmVtb3ZlcyBzcGFjaW5nIGJldHdlZW4gY2VsbHMgaW4gdGFibGVzICovXG50YWJsZSB7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG59XG5cbi8qIFNhZmFyaSAtIHNvbHZpbmcgaXNzdWUgd2hlbiB1c2luZyB1c2VyLXNlbGVjdDpub25lIG9uIHRoZSA8Ym9keT4gdGV4dCBpbnB1dCBkb2Vzbid0IHdvcmtpbmcgKi9cbmlucHV0LFxudGV4dGFyZWEge1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBhdXRvO1xufVxuXG4vKiByZXZlcnQgdGhlICd3aGl0ZS1zcGFjZScgcHJvcGVydHkgZm9yIHRleHRhcmVhIGVsZW1lbnRzIG9uIFNhZmFyaSAqL1xudGV4dGFyZWEge1xuICB3aGl0ZS1zcGFjZTogcmV2ZXJ0O1xufVxuXG4vKiBtaW5pbXVtIHN0eWxlIHRvIGFsbG93IHRvIHN0eWxlIG1ldGVyIGVsZW1lbnQgKi9cbm1ldGVyIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiByZXZlcnQ7XG4gIGFwcGVhcmFuY2U6IHJldmVydDtcbn1cblxuLyogcHJlZm9ybWF0dGVkIHRleHQgLSB1c2Ugb25seSBmb3IgdGhpcyBmZWF0dXJlICovXG46d2hlcmUocHJlKSB7XG4gIGFsbDogcmV2ZXJ0O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4vKiByZXNldCBkZWZhdWx0IHRleHQgb3BhY2l0eSBvZiBpbnB1dCBwbGFjZWhvbGRlciAqL1xuOjpwbGFjZWhvbGRlciB7XG4gIGNvbG9yOiB1bnNldDtcbn1cblxuLyogZml4IHRoZSBmZWF0dXJlIG9mICdoaWRkZW4nIGF0dHJpYnV0ZS5cbiBkaXNwbGF5OnJldmVydDsgcmV2ZXJ0IHRvIGVsZW1lbnQgaW5zdGVhZCBvZiBhdHRyaWJ1dGUgKi9cbjp3aGVyZShbaGlkZGVuXSkge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKiByZXZlcnQgZm9yIGJ1ZyBpbiBDaHJvbWl1bSBicm93c2Vyc1xuKiAtIGZpeCBmb3IgdGhlIGNvbnRlbnQgZWRpdGFibGUgYXR0cmlidXRlIHdpbGwgd29yayBwcm9wZXJseS5cbiogLSB3ZWJraXQtdXNlci1zZWxlY3Q6IGF1dG87IGFkZGVkIGZvciBTYWZhcmkgaW4gY2FzZSBvZiB1c2luZyB1c2VyLXNlbGVjdDpub25lIG9uIHdyYXBwZXIgZWxlbWVudCovXG46d2hlcmUoW2NvbnRlbnRlZGl0YWJsZV06bm90KFtjb250ZW50ZWRpdGFibGU9ZmFsc2VdKSkge1xuICBvdmVyZmxvdy13cmFwOiBicmVhay13b3JkO1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBhdXRvO1xuICAtbW96LXVzZXItbW9kaWZ5OiByZWFkLXdyaXRlO1xuICAtd2Via2l0LXVzZXItbW9kaWZ5OiByZWFkLXdyaXRlO1xuICAtd2Via2l0LWxpbmUtYnJlYWs6IGFmdGVyLXdoaXRlLXNwYWNlO1xufVxuXG4vKiBhcHBseSBiYWNrIHRoZSBkcmFnZ2FibGUgZmVhdHVyZSAtIGV4aXN0IG9ubHkgaW4gQ2hyb21pdW0gYW5kIFNhZmFyaSAqL1xuOndoZXJlKFtkcmFnZ2FibGU9dHJ1ZV0pIHtcbiAgLXdlYmtpdC11c2VyLWRyYWc6IGVsZW1lbnQ7XG59XG5cbi8qIFJldmVydCBNb2RhbCBuYXRpdmUgYmVoYXZpb3IgKi9cbjp3aGVyZShkaWFsb2c6bW9kYWwpIHtcbiAgYWxsOiByZXZlcnQ7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbi8qIFJlbW92ZSBkZXRhaWxzIHN1bW1hcnkgd2Via2l0IHN0eWxlcyAqL1xuOjotd2Via2l0LWRldGFpbHMtbWFya2VyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcIkdpbHJveVwiO1xuICBmb250LWRpc3BsYXk6IHN3YXA7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvZ2lscm95LWV4dHJhYm9sZC13ZWJmb250LndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCIuLi9mb250cy9naWxyb3ktZXh0cmFib2xkLXdlYmZvbnQud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpO1xuICBmb250LXdlaWdodDogODAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwiR2lscm95XCI7XG4gIGZvbnQtZGlzcGxheTogc3dhcDtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9naWxyb3ktcmVndWxhci13ZWJmb250LndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCIuLi9mb250cy9naWxyb3ktcmVndWxhci13ZWJmb250LndvZmZcIikgZm9ybWF0KFwid29mZlwiKTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuOnJvb3Qge1xuICAtLWdyYWRpZW50LWhlYWRlcjogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSgyLCAxMSwgMjEsIDAuNjgpIDI1JSwgcmdiYSgyLCAxMSwgMjEsIDApIDEwMCUpO1xuICAtLXNoYWRvdy1sZzogMCAwIHZhcigtLXNwYWNpbmctMTYpIDAgcmdiYSg2LCAzOCwgNjUsIDAuMTYpO1xuICAtLXNoYWRvdy1zbTogMCAwIHZhcigtLXNwYWNpbmctMTYpIDAgcmdiYSg2LCAzOCwgNjUsIDAuMDgpO1xuICAtLWxpbmstYm9yZGVyLXRyYW5zaXRpb246IDAuM3MgZWFzZTtcbiAgLS1jb2xvci1ibGFjazogIzAwMDAwMDtcbiAgLS1jb2xvci13aGl0ZTogI2ZmZmZmZjtcbiAgLS1jb2xvci1yZWQ6ICNkMzJmMTc7XG4gIC0tY29sb3ItZ3JlZW46ICMyOGE3NDU7XG4gIC0tY29sb3Itb3JhbmdlOiAjZmY2NjAwO1xuICAtLWNvbG9yLWZvY2FsLXJlZDogI2UyNDUyZTtcbiAgLS1jb2xvci1mb2NhbC1kYXJrcmVkOiAjZDMyZjE3O1xuICAtLWNvbG9yLWZvY2FsLWJsYWNrc2lsdmVyOiAjMDYyNjQxO1xuICAtLWNvbG9yLWZvY2FsLXNpbHZlcjogI2UzZWJmMjtcbiAgLS1jb2xvci1mb2NhbC1kYXJrc2lsdmVyOiAjODI5MmEwO1xuICAtLWNvbG9yLWZvY2FsLWxpZ2h0c2lsdmVyOiAjZjFmNWY4O1xuICAtLWNvbG9yLWZnLWNvbG9yLXByaW1hcnk6IHZhcigtLWNvbG9yLWZvY2FsLWJsYWNrc2lsdmVyKTtcbiAgLS1jb2xvci1mZy1wcmltYXJ5X29uLWJnLXNlY29uZGFyeS1ob3ZlcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAtLWNvbG9yLWZnLXByaW1hcnlfb24tYmctYWNjZW50OiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIC0tY29sb3ItZmctc2Vjb25kYXJ5OiB2YXIoLS1jb2xvci1mb2NhbC1zaWx2ZXIpO1xuICAtLWNvbG9yLWZnLXNlY29uZGFyeV9vbi1iZy1hY2NlbnQ6IHZhcigtLWNvbG9yLWZvY2FsLXNpbHZlcik7XG4gIC0tY29sb3ItZmctdGVydGlhcnk6IHZhcigtLWNvbG9yLWZvY2FsLWJsYWNrc2lsdmVyKTtcbiAgLS1jb2xvci1mZy1vbi1pbWFnZTogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAtLWNvbG9yLWZnLXBsYWNlaG9sZGVyOiB2YXIoLS1jb2xvci1mb2NhbC1kYXJrc2lsdmVyKTtcbiAgLS1jb2xvci1mZy1lcnJvcjogdmFyKC0tY29sb3ItcmVkKTtcbiAgLS1jb2xvci1mZy13YXJuaW5nOiB2YXIoLS1jb2xvci1vcmFuZ2UpO1xuICAtLWNvbG9yLWZnLXN1Y2Nlc3M6IHZhcigtLWNvbG9yLWdyZWVuKTtcbiAgLS1jb2xvci1mZy1pbnQtcHJpbWFyeTogdmFyKC0tY29sb3ItZm9jYWwtYmxhY2tzaWx2ZXIpO1xuICAtLWNvbG9yLWZnLWludC1wcmltYXJ5X2hvdmVyOiB2YXIoLS1jb2xvci1mb2NhbC1kYXJrc2lsdmVyKTtcbiAgLS1jb2xvci1mZy1pbnQtcHJpbWFyeV9hY3RpdmU6IHZhcigtLWNvbG9yLWZvY2FsLWJsYWNrc2lsdmVyKTtcbiAgLS1jb2xvci1mZy1pbnQtc2Vjb25kYXJ5OiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIC0tY29sb3ItZmctaW50LXNlY29uZGFyeV9ob3ZlcjogdmFyKC0tY29sb3ItZm9jYWwtYmxhY2tzaWx2ZXIpO1xuICAtLWNvbG9yLWZnLWludC1zZWNvbmRhcnlfYWN0aXZlOiB2YXIoLS1jb2xvci1mb2NhbC1yZWQpO1xuICAtLWNvbG9yLWZnLWludC1hY2NlbnQ6IHZhcigtLWNvbG9yLWZvY2FsLXJlZCk7XG4gIC0tY29sb3ItZmctaW50LW9uLWltYWdlOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIC0tY29sb3ItZmctaW50LW9uLWltYWdlX2hvdmVyOiB2YXIoLS1jb2xvci1mb2NhbC1kYXJrc2lsdmVyKTtcbiAgLS1jb2xvci1mZy1pbnQtb24tcHJpbWFyeTogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAtLWNvbG9yLWZnLWludC1vbi1wcmltYXJ5X2hvdmVyOiB2YXIoLS1jb2xvci1mb2NhbC1kYXJrc2lsdmVyKTtcbiAgLS1jb2xvci1mZy1pbnQtZGlzYWJsZWQ6IHZhcigtLWNvbG9yLWZvY2FsLWRhcmtzaWx2ZXIpO1xuICAtLWNvbG9yLWJkLXByaW1hcnk6IHZhcigtLWNvbG9yLWZvY2FsLWJsYWNrc2lsdmVyKTtcbiAgLS1jb2xvci1iZC1zZWNvbmRhcnk6IHZhcigtLWNvbG9yLWZvY2FsLXNpbHZlcik7XG4gIC0tY29sb3ItYmQtb24taW1hZ2U6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgLS1jb2xvci1iZC1vbi1iZy1zZWNvbmRhcnktaG92ZXI6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgLS1jb2xvci1iZC1pbnQtcHJpbWFyeTogdmFyKC0tY29sb3ItZm9jYWwtYmxhY2tzaWx2ZXIpO1xuICAtLWNvbG9yLWJkLWludC1wcmltYXJ5X2hvdmVyOiB2YXIoLS1jb2xvci1mb2NhbC1kYXJrc2lsdmVyKTtcbiAgLS1jb2xvci1iZC1pbnQtcHJpbWFyeV9hY3RpdmU6IHZhcigtLWNvbG9yLWZvY2FsLWRhcmtyZWQpO1xuICAtLWNvbG9yLWJkLWludC1zZWNvbmRhcnk6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgLS1jb2xvci1iZC1pbnQtc2Vjb25kYXJ5X2hvdmVyOiB2YXIoLS1jb2xvci1mb2NhbC1ibGFja3NpbHZlcik7XG4gIC0tY29sb3ItYmQtaW50LXNlY29uZGFyeV9hY3RpdmU6IHZhcigtLWNvbG9yLWZvY2FsLWRhcmtyZWQpO1xuICAtLWNvbG9yLWJkLWludC10ZXJ0aWFyeTogdmFyKC0tY29sb3ItZm9jYWwtZGFya3NpbHZlcik7XG4gIC0tY29sb3ItYmQtaW50LXRlcnRpYXJ5X2ZvY3VzOiB2YXIoLS1jb2xvci1mb2NhbC1ibGFja3NpbHZlcik7XG4gIC0tY29sb3ItYmQtaW50LWRpc2FibGVkOiB2YXIoLS1jb2xvci1mb2NhbC1kYXJrc2lsdmVyKTtcbiAgLS1jb2xvci1iZC1pbnQtZXJyb3I6IHZhcigtLWNvbG9yLXJlZCk7XG4gIC0tY29sb3ItYmQtaW50LW9uLWFjY2VudDogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAtLWNvbG9yLWJkLWludC1vbi1pbWFnZTogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAtLWNvbG9yLWJkLWludC1vbi1pbWFnZV9ob3ZlcjogdmFyKC0tY29sb3ItZm9jYWwtZGFya3NpbHZlcik7XG4gIC0tY29sb3ItYmQtaW50LW9uLWFjY2VudF9ob3ZlcjogdmFyKC0tY29sb3ItZm9jYWwtc2lsdmVyKTtcbiAgLS1jb2xvci1iZy1wcmltYXJ5OiB2YXIoLS1jb2xvci1mb2NhbC1ibGFja3NpbHZlcik7XG4gIC0tY29sb3ItYmctc2Vjb25kYXJ5OiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIC0tY29sb3ItYmctYWNjZW50OiB2YXIoLS1jb2xvci1mb2NhbC1kYXJrcmVkKTtcbiAgLS1jb2xvci1iZy10ZXJ0aWFyeTogdmFyKC0tY29sb3ItZm9jYWwtc2lsdmVyKTtcbiAgLS1jb2xvci1iZy1lcnJvcjogdmFyKC0tY29sb3ItcmVkKTtcbiAgLS1jb2xvci1iZy13YXJuaW5nOiB2YXIoLS1jb2xvci1vcmFuZ2UpO1xuICAtLWNvbG9yLWJnLXN1Y2Nlc3M6IHZhcigtLWNvbG9yLWdyZWVuKTtcbiAgLS1jb2xvci1iZy1pbnQtcHJpbWFyeTogdmFyKC0tY29sb3ItZm9jYWwtYmxhY2tzaWx2ZXIpO1xuICAtLWNvbG9yLWJnLWludC1wcmltYXJ5X2hvdmVyOiB2YXIoLS1jb2xvci1mb2NhbC1kYXJrc2lsdmVyKTtcbiAgLS1jb2xvci1iZy1pbnQtcHJpbWFyeV9hY3RpdmU6IHZhcigtLWNvbG9yLWZvY2FsLWJsYWNrc2lsdmVyKTtcbiAgLS1jb2xvci1iZy1pbnQtcHJpbWFyeV9vbi1pbWFnZTogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAtLWNvbG9yLWJnLWludC1wcmltYXJ5X29uLWltYWdlLWhvdmVyOiB2YXIoLS1jb2xvci1mb2NhbC1kYXJrc2lsdmVyKTtcbiAgLS1jb2xvci1iZy1pbnQtc2Vjb25kYXJ5OiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIC0tY29sb3ItYmctaW50LXNlY29uZGFyeV9ob3ZlcjogdmFyKC0tY29sb3ItZm9jYWwtc2lsdmVyKTtcbiAgLS1jb2xvci1iZy1pbnQtc2Vjb25kYXJ5X2FjdGl2ZTogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAtLWNvbG9yLWJnLWludC1kaXNhYmxlZDogdmFyKC0tY29sb3ItZm9jYWwtc2lsdmVyKTtcbn1cblxuLmhlYWRpbmcteGwge1xuICBmb250LXNpemU6IDMuNXJlbTtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZmFtaWx5LCB2YXIoLS1mZi1mb2NhbCkpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQsIDgwMCk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodCwgKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWxldHRlci1zcGFjaW5nLCAwKTtcbn1cblxuLmhlYWRpbmctbGcge1xuICBmb250LXNpemU6IDIuNXJlbTtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZmFtaWx5LCB2YXIoLS1mZi1mb2NhbCkpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQsIDgwMCk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodCwgKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWxldHRlci1zcGFjaW5nLCAwKTtcbn1cblxuLmhlYWRpbmctbWQge1xuICBmb250LXNpemU6IDJyZW07XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWZhbWlseSwgdmFyKC0tZmYtZm9jYWwpKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LCA4MDApO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQsICk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1sZXR0ZXItc3BhY2luZywgMCk7XG59XG5cbi5oZWFkaW5nLXNtIHtcbiAgZm9udC1zaXplOiAxLjYyNXJlbTtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZmFtaWx5LCB2YXIoLS1mZi1mb2NhbCkpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQsIDgwMCk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodCwgKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWxldHRlci1zcGFjaW5nLCAwKTtcbn1cblxuLmhlYWRpbmcteHMge1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWZhbWlseSwgdmFyKC0tZmYtZm9jYWwpKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LCA4MDApO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQsICk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1sZXR0ZXItc3BhY2luZywgMCk7XG59XG5cbi50ZXh0LXhsIHtcbiAgZm9udC1zaXplOiAxLjYyNXJlbTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LCA0MDApO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQsIDEuNSk7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWZhbWlseSwgdmFyKC0tZmYtZm9jYWwpKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWxldHRlci1zcGFjaW5nLCAwLjAzZW0pO1xufVxuXG4udGV4dC14bF9ib2xkIHtcbiAgZm9udC1zaXplOiAxLjYyNXJlbTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LCA4MDApO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQsIDEuNSk7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWZhbWlseSwgdmFyKC0tZmYtZm9jYWwpKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWxldHRlci1zcGFjaW5nLCAwLjAzZW0pO1xufVxuXG4udGV4dC1sZyB7XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LCA0MDApO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQsIDEuNzUpO1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1mYW1pbHksIHZhcigtLWZmLWZvY2FsKSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1sZXR0ZXItc3BhY2luZywgMC4wM2VtKTtcbn1cblxuLnRleHQtbGdfYm9sZCB7XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LCA4MDApO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQsIDEuNzUpO1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1mYW1pbHksIHZhcigtLWZmLWZvY2FsKSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1sZXR0ZXItc3BhY2luZywgMC4wM2VtKTtcbn1cblxuLnRleHQtbWQsIGJvZHkge1xuICBmb250LXNpemU6IDFyZW07XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodCwgNDAwKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LCAxLjYpO1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1mYW1pbHksIHZhcigtLWZmLWZvY2FsKSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1sZXR0ZXItc3BhY2luZywgMC4wM2VtKTtcbn1cblxuLnRleHQtbWRfYm9sZCwgLmJ0biAuYnRuX190ZXh0LCAubGFuZy1zd2l0Y2hlcl9fYnRuLmRyb3Bkb3duX190b2dnbGVbYXJpYS1leHBhbmRlZF0gLmJ0bl9fdGV4dCwgLmhlYWRlcl9fcHJvZmlsZS1idXR0b24gLmJ0bl9fdGV4dCwgbmF2IGEge1xuICBmb250LXNpemU6IDFyZW07XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodCwgODAwKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LCAxLjYpO1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1mYW1pbHksIHZhcigtLWZmLWZvY2FsKSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1sZXR0ZXItc3BhY2luZywgMC4wM2VtKTtcbn1cblxuLnRleHQtc20ge1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQsIDQwMCk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodCwgMS4yNSk7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWZhbWlseSwgdmFyKC0tZmYtZm9jYWwpKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWxldHRlci1zcGFjaW5nLCAwLjAzZW0pO1xufVxuXG4udGV4dC1zbV9ib2xkIHtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LCA4MDApO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQsIDEuMjUpO1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1mYW1pbHksIHZhcigtLWZmLWZvY2FsKSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1sZXR0ZXItc3BhY2luZywgMC4wM2VtKTtcbn1cblxuQGtleWZyYW1lcyBib3JkZXItc2xpZGUtaW4ge1xuICAvKipcbiAgICAqIEFuaW1hdGlvbiBmb3Igc2xpZGluZyBpbiBib3JkZXIgZWZmZWN0IG9uIGhvdmVyL2ZvY3VzXG4gICAgKi9cbiAgZnJvbSB7XG4gICAgYmFja2dyb3VuZC1zaXplOiAwJSB2YXIoLS1ib3JkZXItc2l6ZSk7XG4gIH1cbiAgdG8ge1xuICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJSB2YXIoLS1ib3JkZXItc2l6ZSk7XG4gIH1cbn1cbjpyb290IHtcbiAgLS1mZi1mb2NhbDogJ0dpbHJveScsIHNhbnMtc2VyaWY7XG4gIC0tc3BhY2luZy0wOiAwO1xuICAtLXNwYWNpbmctMjogMC4xMjVyZW07XG4gIC0tc3BhY2luZy00OiAwLjI1cmVtO1xuICAtLXNwYWNpbmctNjogMC4zNzVyZW07XG4gIC0tc3BhY2luZy04OiAwLjVyZW07XG4gIC0tc3BhY2luZy0xMjogMC43NXJlbTtcbiAgLS1zcGFjaW5nLTE2OiAxcmVtO1xuICAtLXNwYWNpbmctMjA6IDEuMjVyZW07XG4gIC0tc3BhY2luZy0yNDogMS41cmVtO1xuICAtLXNwYWNpbmctMzI6IDJyZW07XG4gIC0tc3BhY2luZy00MDogMi41cmVtO1xuICAtLXNwYWNpbmctNDg6IDNyZW07XG4gIC0tc3BhY2luZy02NDogNHJlbTtcbiAgLS1zcGFjaW5nLTgwOiA1cmVtO1xuICAtLXNwYWNpbmctOTY6IDZyZW07XG4gIC0tc3BhY2luZy0xMjg6IDhyZW07XG4gIC0tcmFkaXVzLTA6IDA7XG4gIC0tcmFkaXVzLTQ6IDAuMjVyZW07XG4gIC0tcmFkaXVzLTg6IDAuNXJlbTtcbiAgLS1yYWRpdXMtMTY6IDFyZW07XG4gIC0tcmFkaXVzLTEwMDogNi4yNXJlbTtcbn1cblxuOnJvb3Qge1xuICAtLWhlYWRlci1tZW51LXRyYW5zaXRpb246IDAuMzVzIGVhc2UtaW4tb3V0O1xufVxuXG4uaGVhZGVyLWNvbnRhaW5lcixcbi5tYWluLWNvbnRlbnQsXG4uZm9vdGVyLWNvbnRhaW5lcixcbi5mb290ZXItYm90dG9tIHtcbiAgLS1jb2x1bW5zOiA0O1xuICAtLWdhcDogdmFyKC0tc3BhY2luZy04KTtcbiAgLS1wYWRkaW5nLXNpZGUtdmFsdWU6IHZhcigtLXNwYWNpbmctMTIpO1xuICAtLXBhZGRpbmctc2lkZTogdmFyKC0tcGFkZGluZy1zaWRlLXZhbHVlKTtcbiAgLS1tYXgtd2lkdGg6IDEwMCU7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IGNhbGModmFyKC0tbWF4LXdpZHRoKSk7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIHBhZGRpbmctbGVmdDogdmFyKC0tcGFkZGluZy1zaWRlKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKC0tcGFkZGluZy1zaWRlKTtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQodmFyKC0tY29sdW1ucyksIG1pbm1heCgwLCAxZnIpKTtcbiAgZ2FwOiB2YXIoLS1nYXApO1xufVxuLmhlYWRlci1jb250YWluZXIgPiAqLFxuLm1haW4tY29udGVudCA+ICosXG4uZm9vdGVyLWNvbnRhaW5lciA+ICosXG4uZm9vdGVyLWJvdHRvbSA+ICoge1xuICBncmlkLWNvbHVtbjogc3BhbiB2YXIoLS1jb2x1bW5zKTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuaGVhZGVyLWNvbnRhaW5lcixcbiAgLm1haW4tY29udGVudCxcbiAgLmZvb3Rlci1jb250YWluZXIsXG4gIC5mb290ZXItYm90dG9tIHtcbiAgICAtLWNvbHVtbnM6IDY7XG4gICAgLS1nYXA6IHZhcigtLXNwYWNpbmctOCk7XG4gICAgLS1wYWRkaW5nLXNpZGUtdmFsdWU6IHZhcigtLXNwYWNpbmctMjQpO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIC5oZWFkZXItY29udGFpbmVyLFxuICAubWFpbi1jb250ZW50LFxuICAuZm9vdGVyLWNvbnRhaW5lcixcbiAgLmZvb3Rlci1ib3R0b20ge1xuICAgIC0tY29sdW1uczogMTI7XG4gICAgLS1nYXA6IHZhcigtLXNwYWNpbmctMjApO1xuICAgIC0tcGFkZGluZy1zaWRlLXZhbHVlOiB2YXIoLS1zcGFjaW5nLTI0KTtcbiAgICAtLXBhZGRpbmctc2lkZTogY2FsYyh2YXIoLS1wYWRkaW5nLXNpZGUtdmFsdWUpICsgdmFyKC0tZnJhbWUtYm9yZGVyKSk7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxNDQwcHgpIHtcbiAgLmhlYWRlci1jb250YWluZXIsXG4gIC5tYWluLWNvbnRlbnQsXG4gIC5mb290ZXItY29udGFpbmVyLFxuICAuZm9vdGVyLWJvdHRvbSB7XG4gICAgLS1tYXgtd2lkdGg6IDE0NDBweDtcbiAgICAtLXBhZGRpbmctc2lkZS12YWx1ZTogdmFyKC0tc3BhY2luZy04MCk7XG4gIH1cbn1cblxuLmhlYWRlci1jb250YWluZXIsXG4ubWFpbi1jb250ZW50LFxuLmZvb3Rlci1jb250YWluZXIge1xuICAtLXBhZGRpbmctc2lkZTogdmFyKC0tc3BhY2luZy0yMCk7XG4gIHBhZGRpbmctbGVmdDogdmFyKC0tcGFkZGluZy1zaWRlKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKC0tcGFkZGluZy1zaWRlKTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuaGVhZGVyLWNvbnRhaW5lcixcbiAgLm1haW4tY29udGVudCxcbiAgLmZvb3Rlci1jb250YWluZXIge1xuICAgIC0tcGFkZGluZy1zaWRlOiB2YXIoLS1zcGFjaW5nLTMyKTtcbiAgfVxufVxuXG5oZWFkZXIsXG5tYWluLFxuZm9vdGVyIHtcbiAgLS1ib2R5LXBhZGRpbmctdmVydGljYWw6IHZhcigtLXNwYWNpbmctMTIpO1xuICAtLWJvZHktcGFkZGluZzogdmFyKC0tYm9keS1wYWRkaW5nLXZlcnRpY2FsKSB2YXIoLS1zcGFjaW5nLTEyKTtcbiAgcGFkZGluZzogdmFyKC0tYm9keS1wYWRkaW5nKTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICBoZWFkZXIsXG4gIG1haW4sXG4gIGZvb3RlciB7XG4gICAgLS1ib2R5LXBhZGRpbmctdmVydGljYWw6IHZhcigtLXNwYWNpbmctMjQpO1xuICAgIC0tYm9keS1wYWRkaW5nOiB2YXIoLS1ib2R5LXBhZGRpbmctdmVydGljYWwpIHZhcigtLXNwYWNpbmctMjQpO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIGhlYWRlcixcbiAgbWFpbixcbiAgZm9vdGVyIHtcbiAgICAtLWZyYW1lLWJvcmRlcjogdmFyKC0tc3BhY2luZy0xNik7XG4gICAgLS1ib2R5LXBhZGRpbmctdmVydGljYWw6IGNhbGModmFyKC0tZnJhbWUtYm9yZGVyKSAqIDIpO1xuICAgIC0tYm9keS1wYWRkaW5nOiB2YXIoLS1ib2R5LXBhZGRpbmctdmVydGljYWwpIHZhcigtLXNwYWNpbmctNDApO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTQ0MHB4KSB7XG4gIGhlYWRlcixcbiAgbWFpbixcbiAgZm9vdGVyIHtcbiAgICAtLWJvZHktcGFkZGluZzogdmFyKC0tYm9keS1wYWRkaW5nLXZlcnRpY2FsKSB2YXIoLS1zcGFjaW5nLTgwKTtcbiAgfVxufVxuXG5mb290ZXIge1xuICBwYWRkaW5nLXRvcDogdmFyKC0tc3BhY2luZy0yNCk7XG4gIHBhZGRpbmctYm90dG9tOiB2YXIoLS1zcGFjaW5nLTQ4KTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgZm9vdGVyIHtcbiAgICBwYWRkaW5nLXRvcDogdmFyKC0tc3BhY2luZy00OCk7XG4gIH1cbn1cblxuaHRtbCB7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuYm9keSB7XG4gIG1pbi1oZWlnaHQ6IDEwMHN2aDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgcGFkZGluZzogdmFyKC0tZnJhbWUtYm9yZGVyLCAwKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtYmctY29sb3IpO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbn1cbmJvZHkgLmJvZHktdG9wLFxuYm9keSAuYm9keS1ib3R0b20sXG5ib2R5IC5ib2R5LWxlZnQsXG5ib2R5IC5ib2R5LXJpZ2h0IHtcbiAgYmFja2dyb3VuZDogdmFyKC0tZnJhbWUtY29sb3IsIHZhcigtLWNvbG9yLXdoaXRlKSk7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgei1pbmRleDogNTA7XG59XG5ib2R5IC5ib2R5LWxlZnQsXG5ib2R5IC5ib2R5LXJpZ2h0IHtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIHdpZHRoOiB2YXIoLS1mcmFtZS1ib3JkZXIsIDApO1xufVxuYm9keSAuYm9keS10b3AsXG5ib2R5IC5ib2R5LWJvdHRvbSB7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiB2YXIoLS1mcmFtZS1ib3JkZXIsIDApO1xufVxuYm9keSAuYm9keS1sZWZ0IHtcbiAgbGVmdDogMDtcbn1cbmJvZHkgLmJvZHktcmlnaHQge1xuICByaWdodDogMDtcbn1cbmJvZHkgLmJvZHktdG9wIHtcbiAgdG9wOiAwO1xufVxuYm9keSAuYm9keS1ib3R0b20ge1xuICBib3R0b206IDA7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIGJvZHkge1xuICAgIC0tZnJhbWUtYm9yZGVyOiB2YXIoLS1zcGFjaW5nLTE2KTtcbiAgfVxufVxuXG4uYm9keS1iZyB7XG4gIGluc2V0OiAwO1xuICB3aWR0aDogMTAwdnc7XG4gIGhlaWdodDogMTAwJTtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBhc3BlY3QtcmF0aW86IDE2Lzk7XG4gIHotaW5kZXg6IC0xO1xufVxuW2RhdGEtYmc9aGFzLWltZy1iZ10gLmJvZHktYmcge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB2YXIoLS1wYWdlLWJnKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1hdHRhY2htZW50OiBmaXhlZDtcbn1cblxubWFpbiB7XG4gIGZsZXgtZ3JvdzogMTtcbn1cblxuLypcbioqICBIZWxwZXIgY2xhc3Nlc1xuKi9cbi8qXG4qKiAgSGlkZSB2aXN1YWxseSBhbmQgZnJvbSBzY3JlZW4gcmVhZGVyc1xuKi9cbi5oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5qcy1oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKlxuKiogIEhpZGUgb25seSB2aXN1YWxseSwgYnV0IGhhdmUgaXQgYXZhaWxhYmxlIGZvciBzY3JlZW4gcmVhZGVyczpcbioqICBodHRwczovL3Nub29rLmNhL2FyY2hpdmVzL2h0bWxfYW5kX2Nzcy9oaWRpbmctY29udGVudC1mb3ItYWNjZXNzaWJpbGl0eVxuKipcbioqICAxLiBGb3IgbG9uZyBjb250ZW50LCBsaW5lIGZlZWRzIGFyZSBub3QgaW50ZXJwcmV0ZWQgYXMgc3BhY2VzIGFuZCBzbWFsbCB3aWR0aFxuKiogICAgIGNhdXNlcyBjb250ZW50IHRvIHdyYXAgMSB3b3JkIHBlciBsaW5lOlxuKiogICAgIGh0dHBzOi8vbWVkaXVtLmNvbS9AamVzc2ViZWFjaC9iZXdhcmUtc211c2hlZC1vZmYtc2NyZWVuLWFjY2Vzc2libGUtdGV4dC01OTUyYTRjMmNiZmVcbiovXG4udmlzdWFsbHloaWRkZW4sXG4udnMtaGlkZGVuIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAtMTAwMDAwcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNsaXA6IHJlY3QoMCAwIDAgMCk7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMXB4O1xuICBtYXJnaW46IC0xcHg7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogMDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgLXdlYmtpdC1jbGlwLXBhdGg6IGluc2V0KDUwJSk7XG4gIGNsaXAtcGF0aDogaW5zZXQoNTAlKTtcbn1cblxuLypcbioqICBFeHRlbmRzIHRoZSAudmlzdWFsbHloaWRkZW4gY2xhc3MgdG8gYWxsb3cgdGhlIGVsZW1lbnRcbioqICB0byBiZSBmb2N1c2FibGUgd2hlbiBuYXZpZ2F0ZWQgdG8gdmlhIHRoZSBrZXlib2FyZDpcbioqICBodHRwczovL3d3dy5kcnVwYWwub3JnL25vZGUvODk3NjM4XG4qL1xuLnZpc3VhbGx5aGlkZGVuLmZvY3VzYWJsZTphY3RpdmUsXG4udmlzdWFsbHloaWRkZW4uZm9jdXNhYmxlOmZvY3VzIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiBhdXRvO1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgY2xpcDogYXV0bztcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogYXV0bztcbiAgbWFyZ2luOiAwO1xuICB3aGl0ZS1zcGFjZTogaW5oZXJpdDtcbiAgLXdlYmtpdC1jbGlwLXBhdGg6IG5vbmU7XG4gIGNsaXAtcGF0aDogbm9uZTtcbn1cblxuLypcbioqICBIaWRlIHZpc3VhbGx5IGFuZCBmcm9tIHNjcmVlbiByZWFkZXJzLCBidXQgbWFpbnRhaW4gbGF5b3V0XG4qL1xuLmludmlzaWJsZSB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLnNraXBsaW5rcyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDFweDtcbiAgaGVpZ2h0OiAxcHg7XG4gIHBhZGRpbmc6IDA7XG59XG4uc2tpcGxpbmtzIHVsIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4udmlzdWFsbHloaWRkZW4uc2tpcGxpbms6YWN0aXZlLFxuLnZpc3VhbGx5aGlkZGVuLnNraXBsaW5rOmZvY3VzIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IGF1dG87XG4gIGxlZnQ6IGF1dG87XG4gIHotaW5kZXg6IDEwMDA7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICBjbGlwOiBhdXRvO1xuICB3aWR0aDogYXV0bztcbiAgaGVpZ2h0OiBhdXRvO1xuICBtYXJnaW46IDA7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIC13ZWJraXQtY2xpcC1wYXRoOiBub25lO1xuICBjbGlwLXBhdGg6IG5vbmU7XG59XG5cbi5maXhlZFBvc2l0aW9uIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLnNvZnQtYnJlYWsge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgLm1vYmlsZS1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuOnJvb3Qge1xuICAtLWZvY3VzLW91dGxpbmUtY29sb3I6IGN1cnJlbnRDb2xvcjtcbiAgLS1mb2N1cy1vdXRsaW5lLW9mZnNldDogMC4xcmVtO1xuICAtLWZvY3VzLW91dGxpbmUtc3R5bGU6IHNvbGlkO1xuICAtLWZvY3VzLW91dGxpbmUtd2lkdGg6IDJweDtcbn1cblxuKjpmb2N1cy12aXNpYmxlIHtcbiAgb3V0bGluZS1jb2xvcjogdmFyKC0tZm9jdXMtb3V0bGluZS1jb2xvcik7XG4gIG91dGxpbmUtb2Zmc2V0OiB2YXIoLS1mb2N1cy1vdXRsaW5lLW9mZnNldCk7XG4gIG91dGxpbmUtc3R5bGU6IHZhcigtLWZvY3VzLW91dGxpbmUtc3R5bGUpO1xuICBvdXRsaW5lLXdpZHRoOiB2YXIoLS1mb2N1cy1vdXRsaW5lLXdpZHRoKTtcbn1cblxuYSB7XG4gIC0tYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXByaW1hcnkpO1xufVxuYTphY3RpdmUsIGE6Zm9jdXMtdmlzaWJsZSB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1mZy1pbnQtcHJpbWFyeV9ob3Zlcik7XG59XG5hICoge1xuICB0cmFuc2l0aW9uOiBpbmhlcml0O1xufVxuQG1lZGlhIG5vdCBwcmludCBhbmQgKGhvdmVyOiBob3Zlcikge1xuICBhOmhvdmVyIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItZmctaW50LXByaW1hcnlfaG92ZXIpO1xuICB9XG4gIGE6bm90KC5idG46bm90KC5idG4tLWxpbmspLCAubG9nbywgLmZvb3Rlcl9fbWFpbi1uYXYgYSwgaGVhZGVyIGEsIGhlYWRlciBidXR0b24sIC5kcm9wZG93bl9fdG9nZ2xlW2FyaWEtZXhwYW5kZWRdKSB7XG4gICAgLS1ib3JkZXItc2l6ZTogMnB4O1xuICAgIC0tbGluZS1oZWlnaHQ6IGNhbGMoMS42ICogMS4yKTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodmFyKC0tYm9yZGVyLWNvbG9yLCBjdXJyZW50Q29sb3IpLCB2YXIoLS1ib3JkZXItY29sb3IsIGN1cnJlbnRDb2xvcikpO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAlIDEwMCU7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgdmFyKC0tYm9yZGVyLXNpemUpO1xuICB9XG4gIGE6bm90KC5idG46bm90KC5idG4tLWxpbmspLCAubG9nbywgLmZvb3Rlcl9fbWFpbi1uYXYgYSwgaGVhZGVyIGEsIGhlYWRlciBidXR0b24sIC5kcm9wZG93bl9fdG9nZ2xlW2FyaWEtZXhwYW5kZWRdKTpob3ZlciwgYTpub3QoLmJ0bjpub3QoLmJ0bi0tbGluayksIC5sb2dvLCAuZm9vdGVyX19tYWluLW5hdiBhLCBoZWFkZXIgYSwgaGVhZGVyIGJ1dHRvbiwgLmRyb3Bkb3duX190b2dnbGVbYXJpYS1leHBhbmRlZF0pOmZvY3VzLXZpc2libGUge1xuICAgIC0tYm9yZGVyLWNvbG9yOiBjdXJyZW50Q29sb3I7XG4gICAgYW5pbWF0aW9uOiBib3JkZXItc2xpZGUtaW4gdmFyKC0tbGluay1ib3JkZXItdHJhbnNpdGlvbik7XG4gIH1cbn1cblxuYSxcbmJ1dHRvbiB7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS1saW5rLWJvcmRlci10cmFuc2l0aW9uKSwgYm9yZGVyLWNvbG9yIHZhcigtLWxpbmstYm9yZGVyLXRyYW5zaXRpb24pLCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLWxpbmstYm9yZGVyLXRyYW5zaXRpb24pLCBiYWNrZ3JvdW5kLXNpemUgdmFyKC0tbGluay1ib3JkZXItdHJhbnNpdGlvbik7XG59XG5cbmhlYWRlciBuYXYgYSxcbmhlYWRlciBuYXYgYnV0dG9uLFxuaGVhZGVyIG5hdiAuYnRuIC5idG5fX3RleHQge1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWZhbWlseSwgdmFyKC0tZmYtZm9jYWwpKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LCA4MDApO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQsICk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1sZXR0ZXItc3BhY2luZywgMCk7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTEwMHB4KSB7XG4gIGhlYWRlciBuYXYgYSxcbiAgaGVhZGVyIG5hdiBidXR0b24sXG4gIGhlYWRlciBuYXYgLmJ0biAuYnRuX190ZXh0IHtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LCA4MDApO1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodCwgMS42KTtcbiAgICBmb250LWZhbWlseTogdmFyKC0tZm9udC1mYW1pbHksIHZhcigtLWZmLWZvY2FsKSk7XG4gICAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWxldHRlci1zcGFjaW5nLCAwLjAzZW0pO1xuICB9XG59XG5cbnBpY3R1cmUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbGluZS1oZWlnaHQ6IDA7XG59XG5waWN0dXJlIGltZyB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG59XG5cbi5pY29uIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIHBsYWNlLWNvbnRlbnQ6IGNlbnRlcjtcbiAgcGxhY2UtaXRlbXM6IGNlbnRlcjtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LCBjdXJyZW50Q29sb3IpO1xufVxuLmljb24gc3ZnIHtcbiAgd2lkdGg6IDEuNXJlbTtcbiAgaGVpZ2h0OiAxLjVyZW07XG59XG5cbi8qIENocm9tZSwgRmlyZWZveCwgT3BlcmEsIFNhZmFyaSAxMC4xKyAqL1xuOjpwbGFjZWhvbGRlciB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJ5KTtcbiAgb3BhY2l0eTogMTsgLyogRmlyZWZveCAqL1xufVxuXG4vKiBJbnRlcm5ldCBFeHBsb3JlciAxMC0xMSAqL1xuOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJ5KTtcbn1cblxuLyogTWljcm9zb2Z0IEVkZ2UgKi9cbjo6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXByaW1hcnkpO1xufVxuXG5pbnB1dDo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbixcbmlucHV0Ojotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uIHtcbiAgLyogZGlzcGxheTogbm9uZTsgPC0gQ3Jhc2hlcyBDaHJvbWUgb24gaG92ZXIgKi9cbiAgbWFyZ2luOiAwOyAvKiA8LS0gQXBwYXJlbnRseSBzb21lIG1hcmdpbiBhcmUgc3RpbGwgdGhlcmUgZXZlbiB0aG91Z2ggaXQncyBoaWRkZW4gKi9cbiAgLyogZml4IGZvciByZW1vdmluZyBpbm5lciBzaGFkb3cgb24gaW9zICovXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xuICBhcHBlYXJhbmNlOiBub25lO1xufVxuXG5pbnB1dFt0eXBlPW51bWJlcl0ge1xuICAtbW96LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLyogRmlyZWZveCAqL1xufVxuXG4uY29va2llLWluZm8ge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDEwMDA7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBhZGRpbmc6IDIuMTI1cmVtIDEuNXJlbTtcbiAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgYm94LXNoYWRvdzogMCAtMTRweCAzMHB4IDAgcmdiYSgwLCAwLCAwLCAwLjE0OTAxOTYwNzgpO1xufVxuLmNvb2tpZS1pbmZvLm5vLWNvb2tpZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uY29va2llLWluZm8td3JhcCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGdhcDogMS41cmVtO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG59XG5cbi5jb29raWUtaW5mb19fYnV0dG9uLXdyYXAge1xuICBmbGV4LXNocmluazogMDtcbn1cbi5jb29raWUtaW5mb19fYnV0dG9uLXdyYXAgc3BhbiB7XG4gIGxpbmUtaGVpZ2h0OiBjYWxjKDE0MCUgKyA4LjVweCkgIWltcG9ydGFudDtcbn1cblxuLmZvb3RlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGdhcDogdmFyKC0tc3BhY2luZy0yNCk7XG59XG5cbi5mb290ZXItY29udGFpbmVyIGEsXG4uZm9vdGVyLWNvbnRhaW5lciAuaWNvbixcbi5mb290ZXItY29udGFpbmVyIC5mb290ZXJfX21haW4tbmF2X19zdWJtZW51LmRyb3Bkb3duX19saXN0IC5kcm9wZG93bl9fbGluayxcbi5mb290ZXItYm90dG9tIGEsXG4uZm9vdGVyLWJvdHRvbSAuaWNvbixcbi5mb290ZXItYm90dG9tIC5mb290ZXJfX21haW4tbmF2X19zdWJtZW51LmRyb3Bkb3duX19saXN0IC5kcm9wZG93bl9fbGluayB7XG4gIC0tY29sb3ItdGV4dDogaW5oZXJpdDtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQpO1xufVxuQG1lZGlhIG5vdCBwcmludCBhbmQgKGhvdmVyOiBob3Zlcikge1xuICAuZm9vdGVyLWNvbnRhaW5lciBhOmhvdmVyLFxuICAuZm9vdGVyLWNvbnRhaW5lciAuaWNvbjpob3ZlcixcbiAgLmZvb3Rlci1jb250YWluZXIgLmZvb3Rlcl9fbWFpbi1uYXZfX3N1Ym1lbnUuZHJvcGRvd25fX2xpc3QgLmRyb3Bkb3duX19saW5rOmhvdmVyLFxuICAuZm9vdGVyLWJvdHRvbSBhOmhvdmVyLFxuICAuZm9vdGVyLWJvdHRvbSAuaWNvbjpob3ZlcixcbiAgLmZvb3Rlci1ib3R0b20gLmZvb3Rlcl9fbWFpbi1uYXZfX3N1Ym1lbnUuZHJvcGRvd25fX2xpc3QgLmRyb3Bkb3duX19saW5rOmhvdmVyIHtcbiAgICAtLWNvbG9yLXRleHQ6IHZhcigtLWNvbG9yLWZnLWludC1wcmltYXJ5X2hvdmVyKTtcbiAgfVxufVxuLmZvb3Rlci1jb250YWluZXIgLmRyb3Bkb3duX19saW5rLFxuLmZvb3Rlci1jb250YWluZXIgLmZvb3Rlcl9fYm90dG9tLW5hdl9fbGluayxcbi5mb290ZXItY29udGFpbmVyIC5mb290ZXJfX3NvY2lhbHMtbmF2X19saW5rLFxuLmZvb3Rlci1ib3R0b20gLmRyb3Bkb3duX19saW5rLFxuLmZvb3Rlci1ib3R0b20gLmZvb3Rlcl9fYm90dG9tLW5hdl9fbGluayxcbi5mb290ZXItYm90dG9tIC5mb290ZXJfX3NvY2lhbHMtbmF2X19saW5rIHtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbn1cbi5mb290ZXItY29udGFpbmVyIC5kcm9wZG93bl9fbGluazpob3Zlcixcbi5mb290ZXItY29udGFpbmVyIC5mb290ZXJfX2JvdHRvbS1uYXZfX2xpbms6aG92ZXIsXG4uZm9vdGVyLWNvbnRhaW5lciAuZm9vdGVyX19zb2NpYWxzLW5hdl9fbGluazpob3Zlcixcbi5mb290ZXItYm90dG9tIC5kcm9wZG93bl9fbGluazpob3Zlcixcbi5mb290ZXItYm90dG9tIC5mb290ZXJfX2JvdHRvbS1uYXZfX2xpbms6aG92ZXIsXG4uZm9vdGVyLWJvdHRvbSAuZm9vdGVyX19zb2NpYWxzLW5hdl9fbGluazpob3ZlciB7XG4gIC0tYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLmZvb3Rlci1jb250YWluZXIge1xuICAtLWNvbG9yLXRleHQ6IHZhcigtLWNvbG9yLWZnLXByaW1hcnlfb24tYmctYWNjZW50KTtcbiAgYWxpZ24taXRlbXM6IHN0YXJ0O1xuICBwYWRkaW5nLXRvcDogdmFyKC0tcGFkZGluZy12ZXJ0aWNhbCwgdmFyKC0tc3BhY2luZy0yMCkpO1xuICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tcGFkZGluZy12ZXJ0aWNhbCwgdmFyKC0tc3BhY2luZy0yMCkpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dCk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy0xNik7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJnLXByaW1hcnkpO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5mb290ZXItY29udGFpbmVyIHtcbiAgICAtLXBhZGRpbmctdmVydGljYWw6IHZhcigtLXNwYWNpbmctMzIpO1xuICAgIHJvdy1nYXA6IHZhcigtLXNwYWNpbmctNDApO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIC5mb290ZXItY29udGFpbmVyIHtcbiAgICAtLXBhZGRpbmctdmVydGljYWw6IHZhcigtLXNwYWNpbmctNDApO1xuICAgIHJvdy1nYXA6IHZhcigtLXNwYWNpbmctODApO1xuICB9XG4gIC5mb290ZXItY29udGFpbmVyIC5sb2dvLXdyYXBwZXIge1xuICAgIGdyaWQtY29sdW1uOiBzcGFuIDk7XG4gIH1cbiAgLmZvb3Rlci1jb250YWluZXIgLmZvb3Rlcl9fc29jaWFscy1uYXYge1xuICAgIGdyaWQtY29sdW1uOiBzcGFuIDM7XG4gIH1cbiAgLmZvb3Rlci1jb250YWluZXIgLmZvb3Rlcl9fYWRkcmVzcyB7XG4gICAgZ3JpZC1jb2x1bW46IHNwYW4gNjtcbiAgfVxuICAuZm9vdGVyLWNvbnRhaW5lciAuZm9vdGVyX19tYWluLW5hdiB7XG4gICAgZ3JpZC1jb2x1bW46IHNwYW4gNjtcbiAgfVxuICAuZm9vdGVyLWNvbnRhaW5lciAuZm9vdGVyX19sb2dvcy1zZWN0aW9uIHtcbiAgICBncmlkLWNvbHVtbjogc3BhbiAxMjtcbiAgfVxufVxuXG4uZm9vdGVyLWJvdHRvbSB7XG4gIHBhZGRpbmctbGVmdDogdmFyKC0tZmItcGFkZGluZy1zaWRlLCB2YXIoLS1zcGFjaW5nLTIwKSk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhcigtLWZiLXBhZGRpbmctc2lkZSwgdmFyKC0tc3BhY2luZy0yMCkpO1xufVxuW2RhdGEtYmc9aGFzLWltZy1iZ10gLmZvb3Rlci1ib3R0b20ge1xuICBjb2xvcjogdmFyKC0tY29sb3ItZmctb24taW1hZ2UpO1xufVxuW2RhdGEtYmc9aGFzLWJva2VoLWJnXSAuZm9vdGVyLWJvdHRvbSB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1mZy1wcmltYXJ5KTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgLmZvb3Rlci1ib3R0b20ge1xuICAgIC0tZmItcGFkZGluZy1zaWRlOiB2YXIoLS1zcGFjaW5nLTMyKTtcbiAgfVxufVxuXG4uZm9vdGVyX19zb2NpYWxzLW5hdiB7XG4gIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2luZy0yNCk7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctMjQpO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5mb290ZXJfX3NvY2lhbHMtbmF2IHtcbiAgICBtYXJnaW46IDA7XG4gIH1cbn1cblxuLmZvb3Rlcl9fc29jaWFscy1uYXZfX2xpc3Qge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IHZhcigtLXNwYWNpbmctMjQpO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAuZm9vdGVyX19zb2NpYWxzLW5hdl9fbGlzdCB7XG4gICAganVzdGlmeS1jb250ZW50OiBlbmQ7XG4gICAgZ2FwOiB2YXIoLS1zcGFjaW5nLTgpO1xuICB9XG59XG5cbi5mb290ZXJfX3NvY2lhbHMtbmF2X19pdGVtIHtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG4uZm9vdGVyX19zb2NpYWxzLW5hdl9faXRlbSAuaWNvbiBzdmcge1xuICB3aWR0aDogMi4yNXJlbTtcbiAgaGVpZ2h0OiAyLjI1cmVtO1xufVxuXG4uZm9vdGVyX19hZGRyZXNzIHAge1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLTI0KTtcbn1cbi5mb290ZXJfX2FkZHJlc3MgcDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmctMjQpO1xufVxuLmZvb3Rlcl9fYWRkcmVzcyAubmV3c2xldHRlci1saW5rIHtcbiAgLS1ib3JkZXItY29sb3I6IGluaGVyaXQ7XG4gIC0tY29sb3ItdGV4dDogaW5oZXJpdDtcbn1cbi5mb290ZXJfX2FkZHJlc3MgLm5ld3NsZXR0ZXItbGluazpob3ZlciB7XG4gIC0tYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1mZy1pbnQtcHJpbWFyeV9ob3ZlcikgIWltcG9ydGFudDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZm9vdGVyX19hZGRyZXNzIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLTEyKTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAuZm9vdGVyX19hZGRyZXNzIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICB9XG59XG5cbi5mb290ZXJfX2FkZHJlc3MsXG4uZm9vdGVyX19tYWluLW5hdiB7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctNjQpO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5mb290ZXJfX2FkZHJlc3MsXG4gIC5mb290ZXJfX21haW4tbmF2IHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZm9vdGVyX19tYWluLW5hdl9fbGlzdCB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCBtaW5tYXgoMCwgMWZyKSk7XG4gICAgZ3JpZC10ZW1wbGF0ZS1hcmVhczogXCJsZWZ0IHJpZ2h0XCI7XG4gICAgbWluLWhlaWdodDogMDtcbiAgICBhbGlnbi1pdGVtczogc3RhcnQ7XG4gICAgY29sdW1uLWdhcDogdmFyKC0tc3BhY2luZy0yMCk7XG4gIH1cbn1cblxuLmZvb3Rlcl9fbWFpbi1uYXZfX2l0ZW06bm90KDpsYXN0LWNoaWxkKSB7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctMzIpO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5mb290ZXJfX21haW4tbmF2X19zdWJtZW51LWl0ZW06bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy0zMik7XG4gIH1cbn1cblxuLmZvb3Rlcl9fbWFpbi1uYXZfX2xpbmssXG4uZm9vdGVyX19tYWluLW5hdl9fc3VibWVudS1saW5rIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmctcmlnaHQ6IHZhcigtLWxpbmstcGRyLCAwKSAhaW1wb3J0YW50O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5mb290ZXJfX21haW4tbmF2X19saW5rLFxuICAuZm9vdGVyX19tYWluLW5hdl9fc3VibWVudS1saW5rIHtcbiAgICAtLWxpbmstcGRyOiB2YXIoLS1zcGFjaW5nLTI0KTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAuZm9vdGVyX19tYWluLW5hdl9fbGluayxcbiAgLmZvb3Rlcl9fbWFpbi1uYXZfX3N1Ym1lbnUtbGluayB7XG4gICAgLS1saW5rLXBkcjogdmFyKC0tc3BhY2luZy0zMik7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxNDQwcHgpIHtcbiAgLmZvb3Rlcl9fbWFpbi1uYXZfX2xpbmssXG4gIC5mb290ZXJfX21haW4tbmF2X19zdWJtZW51LWxpbmsge1xuICAgIC0tbGluay1wZHI6IHZhcigtLXNwYWNpbmctNDApO1xuICB9XG59XG5cbi5mb290ZXJfX21haW4tbmF2X19pdGVtIHtcbiAgZ3JpZC1jb2x1bW46IGxlZnQ7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZm9vdGVyX19tYWluLW5hdl9faXRlbTpoYXMoLmZvb3Rlcl9fbWFpbi1uYXZfX3N1Ym1lbnUtYnV0dG9uKTpub3QoLmlzLWFiYykge1xuICAgIGdyaWQtY29sdW1uOiByaWdodDtcbiAgICBhbGlnbi1zZWxmOiBzdGFydDtcbiAgICBncmlkLXJvdzogMS9zcGFuIDY7XG4gIH1cbn1cblxuLmZvb3Rlcl9fbWFpbi1uYXZfX3N1Ym1lbnUuZHJvcGRvd25fX2xpc3Qge1xuICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjaW5nLTI0KTtcbiAgYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBib3gtc2hhZG93OiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBpbmhlcml0O1xufVxuLmZvb3Rlcl9fbWFpbi1uYXZfX3N1Ym1lbnUuZHJvcGRvd25fX2xpc3QgLmRyb3Bkb3duX19pdGVtOmZpcnN0LWNoaWxkIC5kcm9wZG93bl9fbGluayB7XG4gIHBhZGRpbmctdG9wOiAwO1xufVxuLmZvb3Rlcl9fbWFpbi1uYXZfX3N1Ym1lbnUuZHJvcGRvd25fX2xpc3QgLmRyb3Bkb3duX19pdGVtOmxhc3QtY2hpbGQgLmRyb3Bkb3duX19saW5rIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbn1cbi5mb290ZXJfX21haW4tbmF2X19zdWJtZW51LmRyb3Bkb3duX19saXN0IC5kcm9wZG93bl9fbGluayB7XG4gIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctMTIpIDA7XG4gIGNvbG9yOiBpbmhlcml0O1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgyMjcsIDIzNSwgMjQyLCAwLjIpO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5mb290ZXJfX21haW4tbmF2X19zdWJtZW51LmRyb3Bkb3duX19saXN0IHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG4gIC5mb290ZXJfX21haW4tbmF2X19zdWJtZW51LmRyb3Bkb3duX19saXN0IC5kcm9wZG93bl9fbGluayB7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBib3JkZXItYm90dG9tOiAwO1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZm9vdGVyX19tYWluLW5hdiAuZHJvcGRvd25fX3RvZ2dsZVthcmlhLWV4cGFuZGVkPWZhbHNlXSArIC5kcm9wZG93bl9fbGlzdCB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuXG4uZm9vdGVyX19tYWluLW5hdl9fc3VibWVudS1idXR0b24uZHJvcGRvd25fX3RvZ2dsZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG59XG4uZm9vdGVyX19tYWluLW5hdl9fc3VibWVudS1idXR0b24uZHJvcGRvd25fX3RvZ2dsZVthcmlhLWV4cGFuZGVkXSAuaWNvbi0tY2hldnJvbi1kb3duIHtcbiAgLS1jb2xvci10ZXh0OiBpbmhlcml0O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5mb290ZXJfX21haW4tbmF2X19zdWJtZW51LWJ1dHRvbi5kcm9wZG93bl9fdG9nZ2xlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5mb290ZXItYm90dG9tX19jb3B5LFxuLmZvb3Rlcl9fYm90dG9tLW5hdiB7XG4gIGdyaWQtY29sdW1uOiBzcGFuIDY7XG59XG5cbi5mb290ZXJfX2JvdHRvbS1uYXZfX2xpc3Qge1xuICBkaXNwbGF5OiBmbGV4O1xuICBnYXA6IHZhcigtLXNwYWNpbmctMjQpO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAuZm9vdGVyX19ib3R0b20tbmF2X19saXN0IHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGVuZDtcbiAgfVxufVxuXG4uYnRuLCAubGFuZy1zd2l0Y2hlcl9fYnRuLmRyb3Bkb3duX190b2dnbGVbYXJpYS1leHBhbmRlZF0sIC5oZWFkZXJfX3Byb2ZpbGUtYnV0dG9uIHtcbiAgLS1wYWRkaW5nOiB2YXIoLS1zcGFjaW5nLTgpIHZhcigtLXNwYWNpbmctMjApO1xuICAtLWNvbG9yLWJvcmRlcjogdmFyKC0tY29sb3ItYmQtaW50LXByaW1hcnkpO1xuICAtLWNvbG9yLWJnOiB2YXIoLS1jb2xvci1iZy1pbnQtcHJpbWFyeSk7XG4gIC0tY29sb3ItdGV4dDogdmFyKC0tY29sb3ItZmctaW50LW9uLXByaW1hcnkpO1xuICAtLWJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy0xMDApO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgcGFkZGluZzogdmFyKC0tcGFkZGluZyk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJvcmRlcik7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1iZyk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0KTtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuLmJ0biAuYnRuX190ZXh0LCAubGFuZy1zd2l0Y2hlcl9fYnRuLmRyb3Bkb3duX190b2dnbGVbYXJpYS1leHBhbmRlZF0gLmJ0bl9fdGV4dCwgLmhlYWRlcl9fcHJvZmlsZS1idXR0b24gLmJ0bl9fdGV4dCB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0KTtcbn1cbi5idG46aGFzKC5idG5fX2ljb24pLCAubGFuZy1zd2l0Y2hlcl9fYnRuLmRyb3Bkb3duX190b2dnbGVbYXJpYS1leHBhbmRlZF06aGFzKC5idG5fX2ljb24pLCAuaGVhZGVyX19wcm9maWxlLWJ1dHRvbjpoYXMoLmJ0bl9faWNvbikge1xuICBnYXA6IHZhcigtLXNwYWNpbmctOCk7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5AbWVkaWEgbm90IHByaW50IGFuZCAoaG92ZXI6IGhvdmVyKSB7XG4gIC5idG46aG92ZXIsIC5sYW5nLXN3aXRjaGVyX19idG4uZHJvcGRvd25fX3RvZ2dsZVthcmlhLWV4cGFuZGVkXTpob3ZlciwgLmhlYWRlcl9fcHJvZmlsZS1idXR0b246aG92ZXIsIC5idG46Zm9jdXMtdmlzaWJsZSwgLmxhbmctc3dpdGNoZXJfX2J0bi5kcm9wZG93bl9fdG9nZ2xlW2FyaWEtZXhwYW5kZWRdOmZvY3VzLXZpc2libGUsIC5oZWFkZXJfX3Byb2ZpbGUtYnV0dG9uOmZvY3VzLXZpc2libGUge1xuICAgIC0tY29sb3ItYm9yZGVyOiB2YXIoLS1jb2xvci1iZC1pbnQtcHJpbWFyeV9ob3Zlcik7XG4gICAgLS1jb2xvci1iZzogdmFyKC0tY29sb3ItYmQtaW50LXByaW1hcnlfaG92ZXIpO1xuICAgIC0tY29sb3ItdGV4dDogdmFyKC0tY29sb3Itd2hpdGUpO1xuICB9XG59XG4uYnRuLS1zZWNvbmRhcnksIC5sYW5nLXN3aXRjaGVyX19idG4uZHJvcGRvd25fX3RvZ2dsZVthcmlhLWV4cGFuZGVkXSwgLmhlYWRlcl9fcHJvZmlsZS1idXR0b24sIC5idG4tLWxpbmssIC5kcm9wZG93bl9fdG9nZ2xlW2FyaWEtZXhwYW5kZWRdIHtcbiAgLS1jb2xvci1iZzogdHJhbnNwYXJlbnQ7XG4gIC0tY29sb3ItYm9yZGVyOiB2YXIoLS1jb2xvci1iZC1pbnQtcHJpbWFyeSk7XG4gIC0tY29sb3ItdGV4dDogdmFyKC0tY29sb3ItZmctaW50LXByaW1hcnkpO1xufVxuQG1lZGlhIG5vdCBwcmludCBhbmQgKGhvdmVyOiBob3Zlcikge1xuICAuYnRuLS1zZWNvbmRhcnk6aG92ZXIsIC5oZWFkZXJfX3Byb2ZpbGUtYnV0dG9uOmhvdmVyLCAuYnRuLS1saW5rOmhvdmVyLCAuZHJvcGRvd25fX3RvZ2dsZVthcmlhLWV4cGFuZGVkXTpob3ZlciwgLmJ0bi0tc2Vjb25kYXJ5OmZvY3VzLXZpc2libGUsIC5oZWFkZXJfX3Byb2ZpbGUtYnV0dG9uOmZvY3VzLXZpc2libGUsIC5idG4tLWxpbms6Zm9jdXMtdmlzaWJsZSwgLmRyb3Bkb3duX190b2dnbGVbYXJpYS1leHBhbmRlZF06Zm9jdXMtdmlzaWJsZSB7XG4gICAgLS1jb2xvci1iZzogdHJhbnNwYXJlbnQ7XG4gICAgLS1jb2xvci10ZXh0OiB2YXIoLS1jb2xvci1mZy1pbnQtcHJpbWFyeV9ob3Zlcik7XG4gIH1cbn1cbi5idG4tLWxpbmssIC5kcm9wZG93bl9fdG9nZ2xlW2FyaWEtZXhwYW5kZWRdIHtcbiAgLS1wYWRkaW5nOiAwO1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy0wKTtcbn1cbkBtZWRpYSBub3QgcHJpbnQgYW5kIChob3ZlcjogaG92ZXIpIHtcbiAgLmJ0bi0tbGluaywgLmRyb3Bkb3duX190b2dnbGVbYXJpYS1leHBhbmRlZF0ge1xuICAgIC0tYm9yZGVyLXNpemU6IDJweDtcbiAgICAtLWxpbmUtaGVpZ2h0OiBjYWxjKDEuNiAqIDEuMik7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHZhcigtLWJvcmRlci1jb2xvciwgY3VycmVudENvbG9yKSwgdmFyKC0tYm9yZGVyLWNvbG9yLCBjdXJyZW50Q29sb3IpKTtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwJSAxMDAlO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiAxMDAlIHZhcigtLWJvcmRlci1zaXplKTtcbiAgfVxuICAuYnRuLS1saW5rOmhvdmVyLCAuZHJvcGRvd25fX3RvZ2dsZVthcmlhLWV4cGFuZGVkXTpob3ZlciwgLmJ0bi0tbGluazpmb2N1cy12aXNpYmxlLCAuZHJvcGRvd25fX3RvZ2dsZVthcmlhLWV4cGFuZGVkXTpmb2N1cy12aXNpYmxlIHtcbiAgICAtLWJvcmRlci1jb2xvcjogY3VycmVudENvbG9yO1xuICAgIGFuaW1hdGlvbjogYm9yZGVyLXNsaWRlLWluIHZhcigtLWxpbmstYm9yZGVyLXRyYW5zaXRpb24pO1xuICB9XG59XG4uYnRuLS1yZXZlcnNlIHtcbiAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xufVxuXG4uaGVhZGVyX19tYWluLW5hdl9fbGlzdCxcbi5oZWFkZXJfX21haW4tbmF2X19zaWRlLWxpc3QsIC5oZWFkZXItY29udGFpbmVyLFxuLmhlYWRlcl9fbmF2LWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiB2YXIoLS1nYXApO1xuICBwYWRkaW5nLXRvcDogdmFyKC0taGVhZGVyLWNvbnRhaW5lci1wZC12ZXJ0aWNhbCk7XG4gIHBhZGRpbmctYm90dG9tOiB2YXIoLS1oZWFkZXItY29udGFpbmVyLXBkLXZlcnRpY2FsKTtcbn1cblxuLmhlYWRlciB7XG4gIC0taGVhZGVyLWNvbnRhaW5lci1wZC12ZXJ0aWNhbDogdmFyKC0tc3BhY2luZy0xNik7XG4gIHdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4uaGVhZGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIG9wYWNpdHk6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgaW5zZXQ6IDA7XG4gIHotaW5kZXg6IC0xO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB2YXIoLS1ncmFkaWVudC1oZWFkZXIpO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSB2YXIoLS1oZWFkZXItbWVudS10cmFuc2l0aW9uKSAwLjM1cztcbn1cbi5oZWFkZXItLW9uLWltZy1iZzpub3QoLmhlYWRlci0taXMtc2Nyb2xsaW5nLWRvd24sIC5oZWFkZXItLW9uLXNjcm9sbCwgLmhlYWRlci5pcy1vcGVuKSB7XG4gIC0tY29sb3ItdGV4dDogdmFyKC0tY29sb3Itd2hpdGUpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dCk7XG59XG4uaGVhZGVyLS1vbi1pbWctYmc6bm90KC5oZWFkZXItLWlzLXNjcm9sbGluZy1kb3duLCAuaGVhZGVyLS1vbi1zY3JvbGwsIC5oZWFkZXIuaXMtb3Blbik6YmVmb3JlIHtcbiAgb3BhY2l0eTogMTtcbn1cbi5oZWFkZXItLW9uLXNjcm9sbCAubG9nbywgLmhlYWRlci0tb24tYm9rZWgtYmcgLmxvZ28ge1xuICBjb2xvcjogdmFyKC0tY29sb3ItcmVkKTtcbn1cbi5oZWFkZXItLW9uLXNjcm9sbDpiZWZvcmUsIC5oZWFkZXItLW9uLWJva2VoLWJnOmJlZm9yZSwgLmhlYWRlci0taXMtc2Nyb2xsaW5nLWRvd246YmVmb3JlIHtcbiAgb3BhY2l0eTogMDtcbn1cbi5oZWFkZXItLWlzLXNjcm9sbGluZy1kb3duIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTtcbn1cbi5oZWFkZXItLW9uLXNjcm9sbCB7XG4gIHRvcDogMDtcbiAgcG9zaXRpb246IHN0aWNreTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB6LWluZGV4OiAxMDtcbn1cbi5oZWFkZXIuaXMtb3BlbiB7XG4gIG1pbi1oZWlnaHQ6IGF1dG87XG4gIG1heC1oZWlnaHQ6IGNhbGMoMTAwc3ZoIC0gdmFyKC0tYm9keS1wYWRkaW5nLXZlcnRpY2FsKSk7XG59XG5cbi5oZWFkZXIsXG4uaGVhZGVyLWNvbnRhaW5lcixcbi5oZWFkZXJfX25hdi1jb250YWluZXIge1xuICB0cmFuc2l0aW9uOiBtYXgtaGVpZ2h0IHZhcigtLWhlYWRlci1tZW51LXRyYW5zaXRpb24pLCB0cmFuc2Zvcm0gdmFyKC0taGVhZGVyLW1lbnUtdHJhbnNpdGlvbiksIGJhY2tncm91bmQtY29sb3IgdmFyKC0taGVhZGVyLW1lbnUtdHJhbnNpdGlvbiksIGJhY2tncm91bmQtaW1hZ2UgdmFyKC0taGVhZGVyLW1lbnUtdHJhbnNpdGlvbikgNXMsIG92ZXJmbG93IHZhcigtLWhlYWRlci1tZW51LXRyYW5zaXRpb24pO1xufVxuXG4uaGVhZGVyLWNvbnRhaW5lciB7XG4gIC0tZ2FwOiAwO1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy0xNik7XG4gIHBsYWNlLWNvbnRlbnQ6IHN0YXJ0O1xufVxuLmlzLW9wZW4gLmhlYWRlci1jb250YWluZXIsIC5oZWFkZXItLW9uLXNjcm9sbCAuaGVhZGVyLWNvbnRhaW5lciB7XG4gIGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdy1sZyk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJnLXNlY29uZGFyeSk7XG59XG4uaXMtb3BlbiAuaGVhZGVyLWNvbnRhaW5lciAubG9nbywgLmhlYWRlci0tb24tc2Nyb2xsIC5oZWFkZXItY29udGFpbmVyIC5sb2dvIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWZvY2FsLXJlZCk7XG59XG4uaXMtb3BlbiAuaGVhZGVyLWNvbnRhaW5lciB7XG4gIG1heC1oZWlnaHQ6IDEwMCU7XG59XG4uaGVhZGVyLWNvbnRhaW5lciAuZHJvcGRvd25fX2xpc3Qge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDIwO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDExMDBweCkge1xuICAuaGVhZGVyLWNvbnRhaW5lciB7XG4gICAgLS1nYXA6IHZhcigtLXNwYWNpbmctMjQpO1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIHBsYWNlLWNvbnRlbnQ6IGNlbnRlcjtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAuaGVhZGVyLWNvbnRhaW5lciB7XG4gICAgLS1nYXA6IHZhcigtLXNwYWNpbmctMTYpO1xuICB9XG59XG5cbi5oZWFkZXJfX21lbnUtdG9nZ2xlIHtcbiAgd2lkdGg6IDIuNXJlbTtcbiAgaGVpZ2h0OiAyLjVyZW07XG4gIHRvcDogY2FsYyh2YXIoLS1oZWFkZXItY29udGFpbmVyLXBkLXZlcnRpY2FsKSArIHZhcigtLWJvZHktcGFkZGluZy12ZXJ0aWNhbCkpO1xuICByaWdodDogY2FsYyh2YXIoLS1zcGFjaW5nLTIwKSArIHZhcigtLXNwYWNpbmctMTIpKTtcbiAgcGFkZGluZzogdmFyKC0tc3BhY2luZy04KTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5oZWFkZXJfX21lbnUtdG9nZ2xlIHtcbiAgICByaWdodDogY2FsYyh2YXIoLS1zcGFjaW5nLTI0KSArIHZhcigtLXNwYWNpbmctMzIpKTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAuaGVhZGVyX19tZW51LXRvZ2dsZSB7XG4gICAgcmlnaHQ6IGNhbGModmFyKC0tc3BhY2luZy0zMikgKyB2YXIoLS1mcmFtZS1ib3JkZXIpICogMiArIHZhcigtLXNwYWNpbmctOCkpO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTEwMHB4KSB7XG4gIC5oZWFkZXJfX21lbnUtdG9nZ2xlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5oZWFkZXJfX25hdi1jb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHN0YXJ0O1xuICBmbGV4LWdyb3c6IDE7XG4gIHBhZGRpbmc6IDA7XG4gIG1heC1oZWlnaHQ6IDA7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcbiAgZmxleC1iYXNpczogMTAwJTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbi5pcy1vcGVuIC5oZWFkZXJfX25hdi1jb250YWluZXIge1xuICBtYXgtaGVpZ2h0OiAxMDBzdmg7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTEwMHB4KSB7XG4gIC5oZWFkZXJfX25hdi1jb250YWluZXIge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgbWF4LWhlaWdodDogdW5zZXQ7XG4gICAgZmxleC1iYXNpczogYXV0bztcbiAgICBvdmVyZmxvdzogdW5zZXQ7XG4gIH1cbn1cblxuLmhlYWRlcl9fbWFpbi1uYXYsXG4uaGVhZGVyX19tYWluLW5hdl9fc2lkZSB7XG4gIHdpZHRoOiAxMDAlO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDExMDBweCkge1xuICAuaGVhZGVyX19tYWluLW5hdixcbiAgLmhlYWRlcl9fbWFpbi1uYXZfX3NpZGUge1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG59XG5cbi5oZWFkZXJfX21haW4tbmF2X19saXN0IHtcbiAgLS1nYXA6IHZhcigtLXNwYWNpbmctMjQpO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogc3RhcnQ7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTEwMHB4KSB7XG4gIC5oZWFkZXJfX21haW4tbmF2X19saXN0IHtcbiAgICAtLWdhcDogdmFyKC0tc3BhY2luZy0zMik7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5oZWFkZXJfX21haW4tbmF2X19saXN0IHtcbiAgICAtLWdhcDogdmFyKC0tc3BhY2luZy00OCk7XG4gIH1cbn1cblxuLmhlYWRlcl9fbWFpbi1uYXZfX3NpZGUtbGlzdCB7XG4gIC0tZ2FwOiB2YXIoLS1zcGFjaW5nLTE2KTtcbiAgcGFkZGluZy10b3A6IHZhcigtLXNwYWNpbmctMzIpO1xuICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tc3BhY2luZy0yNCk7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1jb2xvci1iZC1zZWNvbmRhcnkpO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDExMDBweCkge1xuICAuaGVhZGVyX19tYWluLW5hdl9fc2lkZS1saXN0IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgICBib3JkZXItYm90dG9tOiBub25lO1xuICB9XG59XG5cbi5oZWFkZXJfX3Byb2ZpbGUtYnV0dG9uIHtcbiAgLS1wYWRkaW5nOiAwO1xuICBkaXNwbGF5OiBmbGV4O1xufVxuLmhlYWRlci0tb24taW1nLWJnIC5oZWFkZXJfX3Byb2ZpbGUtYnV0dG9uLmlzLWxvZ2dlZC1vdXQge1xuICAtLWNvbG9yLXRleHQ6IHZhcigtLWNvbG9yLWJkLWludC1vbi1pbWFnZSk7XG4gIC0tY29sb3ItYmc6IHRyYW5zcGFyZW50O1xuICAtLWNvbG9yLWJvcmRlcjogY3VycmVudENvbG9yO1xufVxuLmhlYWRlci0tb24taW1nLWJnIC5oZWFkZXJfX3Byb2ZpbGUtYnV0dG9uLmlzLWxvZ2dlZC1pbiB7XG4gIC0tY29sb3ItdGV4dDogdmFyKC0tY29sb3ItZmctaW50LXByaW1hcnkpO1xuICAtLWNvbG9yLWJnOiB2YXIoLS1jb2xvci1iZy1pbnQtcHJpbWFyeV9vbi1pbWFnZSk7XG4gIC0tY29sb3ItYm9yZGVyOiB2YXIoLS1jb2xvci1iZy1pbnQtcHJpbWFyeV9vbi1pbWFnZSk7XG59XG4uaGVhZGVyLS1vbi1ib2tlaC1iZyAuaGVhZGVyX19wcm9maWxlLWJ1dHRvbi5pcy1sb2dnZWQtb3V0IHtcbiAgLS1jb2xvci10ZXh0OiB2YXIoLS1jb2xvci1iZC1pbnQtcHJpbWFyeSk7XG4gIC0tY29sb3ItYmc6IHRyYW5zcGFyZW50O1xuICAtLWNvbG9yLWJvcmRlcjogY3VycmVudENvbG9yO1xufVxuLmhlYWRlci0tb24tYm9rZWgtYmcgLmhlYWRlcl9fcHJvZmlsZS1idXR0b24uaXMtbG9nZ2VkLWluIHtcbiAgLS1jb2xvci10ZXh0OiB2YXIoLS1jb2xvci1mZy1pbnQtb24tcHJpbWFyeSk7XG4gIC0tY29sb3ItYmc6IHZhcigtLWNvbG9yLWJnLWludC1wcmltYXJ5KTtcbiAgLS1jb2xvci1ib3JkZXI6IHZhcigtLWNvbG9yLWJnLWludC1wcmltYXJ5KTtcbn1cbi5oZWFkZXJfX3Byb2ZpbGUtYnV0dG9uIC5pY29uLS11c2VyIHtcbiAgLS1wYWRkaW5nOiB2YXIoLS1zcGFjaW5nLTgpO1xuICB3aWR0aDogMi41cmVtO1xuICBoZWlnaHQ6IDIuNXJlbTtcbn1cblxuLmhlYWRlcl9fbWFpbi1uYXZfX2l0ZW0sXG4ubGFuZy1zd2l0Y2hlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuaGVhZGVyIGEsXG5oZWFkZXIgYnV0dG9uLFxuLmRyb3Bkb3duX190b2dnbGVbYXJpYS1leHBhbmRlZF0sXG5hLmZvb3Rlcl9fbWFpbi1uYXZfX2xpbmsge1xuICAtLWJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC0tY29sb3ItdGV4dDogdmFyKC0tY29sb3ItdGV4dCk7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5oZWFkZXIgYTpob3ZlciwgaGVhZGVyIGE6Zm9jdXMtdmlzaWJsZSxcbmhlYWRlciBidXR0b246aG92ZXIsXG5oZWFkZXIgYnV0dG9uOmZvY3VzLXZpc2libGUsXG4uZHJvcGRvd25fX3RvZ2dsZVthcmlhLWV4cGFuZGVkXTpob3Zlcixcbi5kcm9wZG93bl9fdG9nZ2xlW2FyaWEtZXhwYW5kZWRdOmZvY3VzLXZpc2libGUsXG5hLmZvb3Rlcl9fbWFpbi1uYXZfX2xpbms6aG92ZXIsXG5hLmZvb3Rlcl9fbWFpbi1uYXZfX2xpbms6Zm9jdXMtdmlzaWJsZSB7XG4gIC0tYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi5pcy1hY3RpdmUgaGVhZGVyIGEsXG4uaXMtYWN0aXZlIGhlYWRlciBidXR0b24sXG4uaXMtYWN0aXZlIC5kcm9wZG93bl9fdG9nZ2xlW2FyaWEtZXhwYW5kZWRdLFxuLmlzLWFjdGl2ZSBhLmZvb3Rlcl9fbWFpbi1uYXZfX2xpbmsge1xuICAtLWJvcmRlci1jb2xvcjogY3VycmVudENvbG9yO1xufVxuXG4ubmF2X190b2dnbGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5uYXZfX2xpc3Qge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDE7XG4gIHdpZHRoOiAxMHJlbTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IDFweCBzb2xpZCAjMDAwMDAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4ubmF2X19saXN0IGxpIHtcbiAgcGFkZGluZzogMXJlbTtcbn1cblxuLmxhbmctc3dpdGNoZXJfX2J0bi5kcm9wZG93bl9fdG9nZ2xlW2FyaWEtZXhwYW5kZWRdIHtcbiAgLS1wYWRkaW5nOiAwIHZhcigtLXNwYWNpbmctMTYpO1xuICAtLWNvbG9yLXRleHQ6IGN1cnJlbnRDb2xvcjtcbiAgLS1jb2xvci1ib3JkZXI6IGN1cnJlbnRDb2xvcjtcbiAgaGVpZ2h0OiAyLjVyZW07XG4gIGdhcDogdmFyKC0tc3BhY2luZy00KTtcbn1cblxuLmxvZ28td3JhcHBlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiB2YXIoLS1kaXJlY3Rpb24sIGNvbHVtbik7XG4gIGFsaWduLWl0ZW1zOiB2YXIoLS1hbGlnbi1pdGVtcywgc3RhcnQpO1xuICBnYXA6IHZhcigtLWdhcCwgdmFyKC0tc3BhY2luZy04KSk7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmxvZ28td3JhcHBlciB7XG4gICAgLS1nYXA6IHZhcigtLXNwYWNpbmctMTYpO1xuICAgIC0tZGlyZWN0aW9uOiByb3c7XG4gICAgLS1hbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG59XG5cbi5sb2dvX19saW5rIHtcbiAgbGluZS1oZWlnaHQ6IDA7XG59XG5cbi5sb2dvX190ZXh0IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5mb3JtX19jb2wuaGFzLWVycm9yIC5sYWJlbCxcbi5mb3JtX19jb2wuaGFzLWVycm9yIC5zZWxlY3QsXG4uZm9ybV9fY29sLmhhcy1lcnJvciAudXBsb2FkX19pbnB1dCwgLmZvcm1fX2NvbC5oYXMtZXJyb3ItLWVtYWlsIC5sYWJlbCxcbi5mb3JtX19jb2wuaGFzLWVycm9yLS1lbWFpbCAuc2VsZWN0LFxuLmZvcm1fX2NvbC5oYXMtZXJyb3ItLWVtYWlsIC51cGxvYWRfX2lucHV0IHtcbiAgY29sb3I6ICNkMzJmMTc7XG59XG4uZm9ybV9fY29sLmhhcy1lcnJvciAuaW5wdXQsXG4uZm9ybV9fY29sLmhhcy1lcnJvciAuc2VsZWN0LFxuLmZvcm1fX2NvbC5oYXMtZXJyb3IgLnRleHRhcmVhLFxuLmZvcm1fX2NvbC5oYXMtZXJyb3IgLnVwbG9hZF9faW5wdXQsIC5mb3JtX19jb2wuaGFzLWVycm9yLS1lbWFpbCAuaW5wdXQsXG4uZm9ybV9fY29sLmhhcy1lcnJvci0tZW1haWwgLnNlbGVjdCxcbi5mb3JtX19jb2wuaGFzLWVycm9yLS1lbWFpbCAudGV4dGFyZWEsXG4uZm9ybV9fY29sLmhhcy1lcnJvci0tZW1haWwgLnVwbG9hZF9faW5wdXQge1xuICBib3JkZXItY29sb3I6ICNkMzJmMTc7XG59XG4uZm9ybV9fY29sLmhhcy1lcnJvciAuaW5wdXQ6OnBsYWNlaG9sZGVyLFxuLmZvcm1fX2NvbC5oYXMtZXJyb3IgLnRleHRhcmVhOjpwbGFjZWhvbGRlciwgLmZvcm1fX2NvbC5oYXMtZXJyb3ItLWVtYWlsIC5pbnB1dDo6cGxhY2Vob2xkZXIsXG4uZm9ybV9fY29sLmhhcy1lcnJvci0tZW1haWwgLnRleHRhcmVhOjpwbGFjZWhvbGRlciB7XG4gIGNvbG9yOiAjZDMyZjE3O1xuICBvcGFjaXR5OiAxO1xufVxuXG4uZm9ybV9fcm93IHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC1hdXRvLWNvbHVtbnM6IDFmcjtcbiAgZ3JpZC1hdXRvLWZsb3c6IGNvbHVtbjtcbiAgZ2FwOiAxLjI1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAzcmVtO1xufVxuXG4uaW5wdXQge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiB0by1yZW0oNDApO1xuICBwYWRkaW5nOiB0by1yZW0oNikgdG8tcmVtKDEyKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG4uaW5wdXQge1xuICAvKiBmaXggZm9yIHJlbW92aW5nIGlubmVyIHNoYWRvdyBvbiBpb3MgKi9cbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG59XG4uaW5wdXQ6OnBsYWNlaG9sZGVyIHtcbiAgY29sb3I6ICNlZWVlZWU7XG59XG4uaW5wdXQ6OnBsYWNlaG9sZGVyOnJlcXVpcmVkIHtcbiAgY29sb3I6ICNkMzJmMTc7XG59XG4uaW5wdXQ6Zm9jdXMge1xuICBib3JkZXItY29sb3I6ICNlZWVlZWU7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG4uaW5wdXQuZm9ybS1lcnJvciB7XG4gIGJvcmRlci1jb2xvcjogI2QzMmYxNztcbn1cbi5pbnB1dDppbnZhbGlkOmZvY3VzLCAuaW5wdXQ6cmVxdWlyZWQ6Zm9jdXMsIC5pbnB1dDpyZXF1aXJlZDppbnZhbGlkOmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiAjZWVlZWVlO1xufVxuXG4uaW5wdXQtcGFzc3dvcmQtd3JhcCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5pbnB1dC1wYXNzd29yZF9faWNvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHJpZ2h0OiAxcmVtO1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIG9wYWNpdHk6IDAuNTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC01MCUsIDApO1xufVxuXG4ubGFiZWwge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmlucHV0LW51bWJlci13cmFwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmljb24tY291bnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgd2lkdGg6IHRvLXJlbSg0MCk7XG4gIGhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeSk7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5pY29uLWNvdW50ZXItLW1pbnVzIHtcbiAgbGVmdDogMDtcbn1cblxuLmljb24tY291bnRlci0tcGx1cyB7XG4gIHJpZ2h0OiAwO1xufVxuXG4udGV4dGFyZWEge1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogdG8tcmVtKDYpIHRvLXJlbSgxMik7XG4gIHJlc2l6ZTogdmVydGljYWw7XG4gIC8qIGZpeCBmb3IgcmVtb3ZpbmcgaW5uZXIgc2hhZG93IG9uIGlvcyAqL1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLnVwbG9hZC13cmFwIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICB3aWR0aDogMTAwJTtcbn1cbi5oYXMtZXJyb3IgLnVwbG9hZC13cmFwIHtcbiAgY29sb3I6ICNkMzJmMTc7XG59XG5cbi51cGxvYWRfX2luZm8ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXg6IDAgMSBhdXRvO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nLWxlZnQ6IDEuMjVyZW07XG59XG4udXBsb2FkX19pbmZvIHAge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB3aWR0aDogY2FsYygxMDAlIC0gMzZweCk7XG4gIG1hcmdpbjogMDtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi51cGxvYWRfX2lucHV0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmbGV4OiAwIDEgMjUlO1xuICBwYWRkaW5nOiAwLjM3NXJlbSAwLjc1cmVtO1xufVxuLnVwbG9hZF9faW5wdXQgaW5wdXQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb3BhY2l0eTogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG46Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4udXBsb2FkX19idG4ge1xuICBtYXJnaW4tbGVmdDogMS4yNXJlbTtcbn1cblxuLmhhcy1lcnJvciAuZXJyb3ItLWVtcHR5IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5oYXMtZXJyb3ItLWVtYWlsIC5lcnJvci0tZW1haWwge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmRyb3Bkb3duX190b2dnbGVbYXJpYS1leHBhbmRlZF0ge1xuICAtLXBhZGRpbmc6IDA7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLTApO1xufVxuLmRyb3Bkb3duX190b2dnbGVbYXJpYS1leHBhbmRlZF0uYnRuOmhhcyguYnRuX19pY29uKSB7XG4gIGdhcDogdmFyKC0tc3BhY2luZy00KTtcbn1cbi5kcm9wZG93bl9fdG9nZ2xlW2FyaWEtZXhwYW5kZWRdIC5pY29uLS1jaGV2cm9uLWRvd24ge1xuICAtLWNvbG9yLXRleHQ6IHZhcigtLWNvbG9yLWZvY2FsLXJlZCk7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzIGVhc2U7XG59XG4uaGVhZGVyLS1vbi1pbWctYmcgLmRyb3Bkb3duX190b2dnbGVbYXJpYS1leHBhbmRlZF0gLmljb24tLWNoZXZyb24tZG93biB7XG4gIC0tY29sb3ItdGV4dDogaW5oZXJpdDtcbn1cblxuLmRyb3Bkb3duX190b2dnbGVbYXJpYS1leHBhbmRlZD1mYWxzZV0gKyAuZHJvcGRvd25fX2xpc3Qge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5kcm9wZG93bl9fdG9nZ2xlW2FyaWEtZXhwYW5kZWQ9dHJ1ZV0gLmljb24tLWNoZXZyb24tZG93biB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG59XG5cbi5kcm9wZG93bl9fbGlzdCB7XG4gIG1pbi13aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiBtYXgtY29udGVudDtcbiAgdG9wOiAxMDAlO1xuICBsZWZ0OiAwO1xuICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjaW5nLTgpO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtOCk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJkLXNlY29uZGFyeSk7XG4gIGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdy1sZyk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJnLXNlY29uZGFyeSk7XG59XG5cbi5kcm9wZG93bl9fbGluayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogdmFyKC0tc3BhY2luZy04KSB2YXIoLS1zcGFjaW5nLTI0KTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWZnLWludC1wcmltYXJ5KTtcbn1cbkBtZWRpYSBub3QgcHJpbnQgYW5kIChob3ZlcjogaG92ZXIpIHtcbiAgLmRyb3Bkb3duX19saW5rOmhvdmVyIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItZmctaW50LXByaW1hcnkpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJnLWludC1zZWNvbmRhcnlfaG92ZXIpO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmRyb3Bkb3duX19saW5rIHtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LCA0MDApO1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodCwgMS42KTtcbiAgICBmb250LWZhbWlseTogdmFyKC0tZm9udC1mYW1pbHksIHZhcigtLWZmLWZvY2FsKSk7XG4gICAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWxldHRlci1zcGFjaW5nLCAwLjAzZW0pO1xuICB9XG59XG5cbi5sb2dvcy1zZWN0aW9uIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgcm93LWdhcDogdmFyKC0tc3BhY2luZy00OCk7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIC5sb2dvcy1zZWN0aW9uIHtcbiAgICBjb2x1bW4tZ2FwOiB2YXIoLS1zcGFjaW5nLTY0KTtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICB9XG59XG5cbi5sb2dvcy1jb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBnYXA6IHZhcigtLXNwYWNpbmctMTYpO1xufVxuXG4ubG9nb3Mtd3JhcHBlciB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KHZhcigtLWxvZ29zLWNvdW50KSwgbWlubWF4KDAsIDFmcikpO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IHZhcigtLXNwYWNpbmctMTYpO1xufSIsIi8vXG4vL1x0QGZvbnQtZmFjZSBpbXBvcnRzXG4vL1xuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnR2lscm95JztcbiAgZm9udC1kaXNwbGF5OiBzd2FwO1xuICBzcmM6XG4gICAgdXJsKCcuLi9mb250cy9naWxyb3ktZXh0cmFib2xkLXdlYmZvbnQud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksXG4gICAgdXJsKCcuLi9mb250cy9naWxyb3ktZXh0cmFib2xkLXdlYmZvbnQud29mZicpIGZvcm1hdCgnd29mZicpO1xuICBmb250LXdlaWdodDogODAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ0dpbHJveSc7XG4gIGZvbnQtZGlzcGxheTogc3dhcDtcbiAgc3JjOlxuICAgIHVybCgnLi4vZm9udHMvZ2lscm95LXJlZ3VsYXItd2ViZm9udC53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcbiAgICB1cmwoJy4uL2ZvbnRzL2dpbHJveS1yZWd1bGFyLXdlYmZvbnQud29mZicpIGZvcm1hdCgnd29mZicpO1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG4iLCIvL1xuLy8gQ29sb3JzXG4vL1xuJGNvbG9yLWJsYWNrOiAjMDAwMDAwO1xuJGNvbG9yLXdoaXRlOiAjZmZmZmZmO1xuJGNvbG9yLXJlZDogI2QzMmYxNztcblxuJGNvbG9yLWZvY2FsLXJlZDogI2UyNDUyZTtcbiRjb2xvci1mb2NhbC1kYXJrcmVkOiAjZDMyZjE3O1xuJGNvbG9yLWZvY2FsLWJsYWNrc2lsdmVyOiAjMDYyNjQxO1xuJGNvbG9yLWZvY2FsLXNpbHZlcjogI2UzZWJmMjtcbiRjb2xvci1mb2NhbC1kYXJrc2lsdmVyOiAjODI5MmEwO1xuJGNvbG9yLWZvY2FsLWxpZ2h0c2lsdmVyOiAjZjFmNWY4O1xuXG4vL1xuLy8gRm9ybSBiYXNlIHNldHRpbmdzXG4vL1xuJGZvcm0tYmdjb2xvcjogJGNvbG9yLXdoaXRlO1xuJGZvcm0tdGV4dC1jb2xvcjogJGNvbG9yLWJsYWNrO1xuJGZvcm0tZm9jdXM6ICNlZWVlZWU7IC8vJGNvbG9yLWdyZXk7XG4kZm9ybS1lcnJvcjogJGNvbG9yLXJlZDtcbiRmb3JtLWlucHV0LWhlaWdodDogdG8tcmVtKDQwKTtcbiRmb3JtLWdhcDogdG8tcmVtKDIwKTtcblxuJGlucHV0LXBhZGRpbmc6IHRvLXJlbSg2KSB0by1yZW0oMTIpO1xuXG46cm9vdCB7XG4gIC8vIEdyYWRpZW50c1xuICAtLWdyYWRpZW50LWhlYWRlcjogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSgyLCAxMSwgMjEsIDAuNjgpIDI1JSwgcmdiYSgyLCAxMSwgMjEsIDApIDEwMCUpO1xuXG4gIC0tc2hhZG93LWxnOiAwIDAgdmFyKC0tc3BhY2luZy0xNikgMCByZ2JhKDYsIDM4LCA2NSwgMC4xNik7XG4gIC0tc2hhZG93LXNtOiAwIDAgdmFyKC0tc3BhY2luZy0xNikgMCByZ2JhKDYsIDM4LCA2NSwgMC4wOCk7XG5cbiAgLS1saW5rLWJvcmRlci10cmFuc2l0aW9uOiAwLjNzIGVhc2U7XG5cbiAgLy8gQmFzZSBjb2xvcnNcbiAgLS1jb2xvci1ibGFjazogI3skY29sb3ItYmxhY2t9O1xuICAtLWNvbG9yLXdoaXRlOiAjeyRjb2xvci13aGl0ZX07XG4gIC0tY29sb3ItcmVkOiAjeyRjb2xvci1yZWR9O1xuICAtLWNvbG9yLWdyZWVuOiAjMjhhNzQ1O1xuICAtLWNvbG9yLW9yYW5nZTogI2ZmNjYwMDtcblxuICAvLyBGb2NhbCBjb2xvcnNcbiAgLS1jb2xvci1mb2NhbC1yZWQ6ICN7JGNvbG9yLWZvY2FsLXJlZH07XG4gIC0tY29sb3ItZm9jYWwtZGFya3JlZDogI3skY29sb3ItZm9jYWwtZGFya3JlZH07XG4gIC0tY29sb3ItZm9jYWwtYmxhY2tzaWx2ZXI6ICN7JGNvbG9yLWZvY2FsLWJsYWNrc2lsdmVyfTtcbiAgLS1jb2xvci1mb2NhbC1zaWx2ZXI6ICN7JGNvbG9yLWZvY2FsLXNpbHZlcn07XG4gIC0tY29sb3ItZm9jYWwtZGFya3NpbHZlcjogI3skY29sb3ItZm9jYWwtZGFya3NpbHZlcn07XG4gIC0tY29sb3ItZm9jYWwtbGlnaHRzaWx2ZXI6ICN7JGNvbG9yLWZvY2FsLWxpZ2h0c2lsdmVyfTtcblxuICAvLyBGb3JlZ3JvdW5kIGNvbG9yc1xuICAtLWNvbG9yLWZnLWNvbG9yLXByaW1hcnk6IHZhcigtLWNvbG9yLWZvY2FsLWJsYWNrc2lsdmVyKTtcbiAgLS1jb2xvci1mZy1wcmltYXJ5X29uLWJnLXNlY29uZGFyeS1ob3ZlcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAtLWNvbG9yLWZnLXByaW1hcnlfb24tYmctYWNjZW50OiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIC0tY29sb3ItZmctc2Vjb25kYXJ5OiB2YXIoLS1jb2xvci1mb2NhbC1zaWx2ZXIpO1xuICAtLWNvbG9yLWZnLXNlY29uZGFyeV9vbi1iZy1hY2NlbnQ6IHZhcigtLWNvbG9yLWZvY2FsLXNpbHZlcik7XG4gIC0tY29sb3ItZmctdGVydGlhcnk6IHZhcigtLWNvbG9yLWZvY2FsLWJsYWNrc2lsdmVyKTtcbiAgLS1jb2xvci1mZy1vbi1pbWFnZTogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAtLWNvbG9yLWZnLXBsYWNlaG9sZGVyOiB2YXIoLS1jb2xvci1mb2NhbC1kYXJrc2lsdmVyKTtcbiAgLS1jb2xvci1mZy1lcnJvcjogdmFyKC0tY29sb3ItcmVkKTtcbiAgLS1jb2xvci1mZy13YXJuaW5nOiB2YXIoLS1jb2xvci1vcmFuZ2UpO1xuICAtLWNvbG9yLWZnLXN1Y2Nlc3M6IHZhcigtLWNvbG9yLWdyZWVuKTtcblxuICAvLyBGb3JlZ3JvdW5kIGludGVyYWN0aXZlIGNvbG9yc1xuICAtLWNvbG9yLWZnLWludC1wcmltYXJ5OiB2YXIoLS1jb2xvci1mb2NhbC1ibGFja3NpbHZlcik7XG4gIC0tY29sb3ItZmctaW50LXByaW1hcnlfaG92ZXI6IHZhcigtLWNvbG9yLWZvY2FsLWRhcmtzaWx2ZXIpO1xuICAtLWNvbG9yLWZnLWludC1wcmltYXJ5X2FjdGl2ZTogdmFyKC0tY29sb3ItZm9jYWwtYmxhY2tzaWx2ZXIpO1xuICAtLWNvbG9yLWZnLWludC1zZWNvbmRhcnk6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgLS1jb2xvci1mZy1pbnQtc2Vjb25kYXJ5X2hvdmVyOiB2YXIoLS1jb2xvci1mb2NhbC1ibGFja3NpbHZlcik7XG4gIC0tY29sb3ItZmctaW50LXNlY29uZGFyeV9hY3RpdmU6IHZhcigtLWNvbG9yLWZvY2FsLXJlZCk7XG4gIC0tY29sb3ItZmctaW50LWFjY2VudDogdmFyKC0tY29sb3ItZm9jYWwtcmVkKTtcbiAgLS1jb2xvci1mZy1pbnQtb24taW1hZ2U6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgLS1jb2xvci1mZy1pbnQtb24taW1hZ2VfaG92ZXI6IHZhcigtLWNvbG9yLWZvY2FsLWRhcmtzaWx2ZXIpO1xuICAtLWNvbG9yLWZnLWludC1vbi1wcmltYXJ5OiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIC0tY29sb3ItZmctaW50LW9uLXByaW1hcnlfaG92ZXI6IHZhcigtLWNvbG9yLWZvY2FsLWRhcmtzaWx2ZXIpO1xuICAtLWNvbG9yLWZnLWludC1kaXNhYmxlZDogdmFyKC0tY29sb3ItZm9jYWwtZGFya3NpbHZlcik7XG5cbiAgLy8gQm9yZGVyIGNvbG9yc1xuICAtLWNvbG9yLWJkLXByaW1hcnk6IHZhcigtLWNvbG9yLWZvY2FsLWJsYWNrc2lsdmVyKTtcbiAgLS1jb2xvci1iZC1zZWNvbmRhcnk6IHZhcigtLWNvbG9yLWZvY2FsLXNpbHZlcik7XG4gIC0tY29sb3ItYmQtb24taW1hZ2U6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgLS1jb2xvci1iZC1vbi1iZy1zZWNvbmRhcnktaG92ZXI6IHZhcigtLWNvbG9yLXdoaXRlKTtcblxuICAvLyBCb3JkZXIgaW50ZXJhY3RpdmUgY29sb3JzXG4gIC0tY29sb3ItYmQtaW50LXByaW1hcnk6IHZhcigtLWNvbG9yLWZvY2FsLWJsYWNrc2lsdmVyKTtcbiAgLS1jb2xvci1iZC1pbnQtcHJpbWFyeV9ob3ZlcjogdmFyKC0tY29sb3ItZm9jYWwtZGFya3NpbHZlcik7XG4gIC0tY29sb3ItYmQtaW50LXByaW1hcnlfYWN0aXZlOiB2YXIoLS1jb2xvci1mb2NhbC1kYXJrcmVkKTtcbiAgLS1jb2xvci1iZC1pbnQtc2Vjb25kYXJ5OiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIC0tY29sb3ItYmQtaW50LXNlY29uZGFyeV9ob3ZlcjogdmFyKC0tY29sb3ItZm9jYWwtYmxhY2tzaWx2ZXIpO1xuICAtLWNvbG9yLWJkLWludC1zZWNvbmRhcnlfYWN0aXZlOiB2YXIoLS1jb2xvci1mb2NhbC1kYXJrcmVkKTtcbiAgLS1jb2xvci1iZC1pbnQtdGVydGlhcnk6IHZhcigtLWNvbG9yLWZvY2FsLWRhcmtzaWx2ZXIpO1xuICAtLWNvbG9yLWJkLWludC10ZXJ0aWFyeV9mb2N1czogdmFyKC0tY29sb3ItZm9jYWwtYmxhY2tzaWx2ZXIpO1xuICAtLWNvbG9yLWJkLWludC1kaXNhYmxlZDogdmFyKC0tY29sb3ItZm9jYWwtZGFya3NpbHZlcik7XG4gIC0tY29sb3ItYmQtaW50LWVycm9yOiB2YXIoLS1jb2xvci1yZWQpO1xuICAtLWNvbG9yLWJkLWludC1vbi1hY2NlbnQ6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgLS1jb2xvci1iZC1pbnQtb24taW1hZ2U6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgLS1jb2xvci1iZC1pbnQtb24taW1hZ2VfaG92ZXI6IHZhcigtLWNvbG9yLWZvY2FsLWRhcmtzaWx2ZXIpO1xuICAtLWNvbG9yLWJkLWludC1vbi1hY2NlbnRfaG92ZXI6IHZhcigtLWNvbG9yLWZvY2FsLXNpbHZlcik7XG5cbiAgLy8gQmFja2dyb3VuZCBjb2xvcnNcbiAgLS1jb2xvci1iZy1wcmltYXJ5OiB2YXIoLS1jb2xvci1mb2NhbC1ibGFja3NpbHZlcik7XG4gIC0tY29sb3ItYmctc2Vjb25kYXJ5OiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIC0tY29sb3ItYmctYWNjZW50OiB2YXIoLS1jb2xvci1mb2NhbC1kYXJrcmVkKTtcbiAgLS1jb2xvci1iZy10ZXJ0aWFyeTogdmFyKC0tY29sb3ItZm9jYWwtc2lsdmVyKTtcbiAgLS1jb2xvci1iZy1lcnJvcjogdmFyKC0tY29sb3ItcmVkKTtcbiAgLS1jb2xvci1iZy13YXJuaW5nOiB2YXIoLS1jb2xvci1vcmFuZ2UpO1xuICAtLWNvbG9yLWJnLXN1Y2Nlc3M6IHZhcigtLWNvbG9yLWdyZWVuKTtcblxuICAvLyBCYWNrZ3JvdW5kIGludGVyYWN0aXZlIGNvbG9yc1xuICAtLWNvbG9yLWJnLWludC1wcmltYXJ5OiB2YXIoLS1jb2xvci1mb2NhbC1ibGFja3NpbHZlcik7XG4gIC0tY29sb3ItYmctaW50LXByaW1hcnlfaG92ZXI6IHZhcigtLWNvbG9yLWZvY2FsLWRhcmtzaWx2ZXIpO1xuICAtLWNvbG9yLWJnLWludC1wcmltYXJ5X2FjdGl2ZTogdmFyKC0tY29sb3ItZm9jYWwtYmxhY2tzaWx2ZXIpO1xuICAtLWNvbG9yLWJnLWludC1wcmltYXJ5X29uLWltYWdlOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIC0tY29sb3ItYmctaW50LXByaW1hcnlfb24taW1hZ2UtaG92ZXI6IHZhcigtLWNvbG9yLWZvY2FsLWRhcmtzaWx2ZXIpO1xuICAtLWNvbG9yLWJnLWludC1zZWNvbmRhcnk6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgLS1jb2xvci1iZy1pbnQtc2Vjb25kYXJ5X2hvdmVyOiB2YXIoLS1jb2xvci1mb2NhbC1zaWx2ZXIpO1xuICAtLWNvbG9yLWJnLWludC1zZWNvbmRhcnlfYWN0aXZlOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIC0tY29sb3ItYmctaW50LWRpc2FibGVkOiB2YXIoLS1jb2xvci1mb2NhbC1zaWx2ZXIpO1xufVxuIiwiQHVzZSAnc2FzczptYXAnO1xuQHVzZSAndmFyaWFibGVzJyBhcyB2YXJzO1xuQHVzZSAndmFyaWFibGVzLXR5cG8nIGFzICo7XG5AdXNlICdmdW5jdGlvbnMnIGFzICo7XG5cbi8vXG4vLyAgVHlwb2dyYXBoeSBtaXhpbnNcbi8vXG5cbi8vIEhlYWRpbmdzIHRleHQgYmFzZSBzdHlsZXNcbkBtaXhpbiBoZWFkaW5ncy1iYXNlIHtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZmFtaWx5LCB2YXIoLS1mZi1mb2NhbCkpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQsIDgwMCk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodCwgI3ttYXAuZ2V0KCRsaW5lLWhlaWdodHMsICd4cycpfSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1sZXR0ZXItc3BhY2luZywgI3ttYXAuZ2V0KCRsZXR0ZXItc3BhY2luZ3MsICdub3JtYWwnKX0pO1xufVxuXG4vLyBHZW5lcmF0ZSBoZWFkaW5nIGNsYXNzZXMgZHluYW1pY2FsbHlcbkBlYWNoICRzaXplLW5hbWUsICRzaXplLXZhbHVlIGluIG1hcC5nZXQoJHRleHQtc3R5bGVzLCAnaGVhZGluZ3MnKSB7XG4gIC5oZWFkaW5nLSN7JHNpemUtbmFtZX0ge1xuICAgIGZvbnQtc2l6ZTogI3t0by1yZW0oJHNpemUtdmFsdWUpfTtcbiAgICBAaW5jbHVkZSBoZWFkaW5ncy1iYXNlO1xuICB9XG59XG5cbi8vIE1peGluc1xuQG1peGluIGhlYWRpbmcteGwge1xuICBmb250LXNpemU6ICN7dG8tcmVtKG1hcC5nZXQobWFwLmdldCgkdGV4dC1zdHlsZXMsICdoZWFkaW5ncycpLCAneGwnKSl9O1xuICBAaW5jbHVkZSBoZWFkaW5ncy1iYXNlO1xufVxuXG5AbWl4aW4gaGVhZGluZy1sZyB7XG4gIGZvbnQtc2l6ZTogI3t0by1yZW0obWFwLmdldChtYXAuZ2V0KCR0ZXh0LXN0eWxlcywgJ2hlYWRpbmdzJyksICdsZycpKX07XG4gIEBpbmNsdWRlIGhlYWRpbmdzLWJhc2U7XG59XG5cbkBtaXhpbiBoZWFkaW5nLW1kIHtcbiAgZm9udC1zaXplOiAje3RvLXJlbShtYXAuZ2V0KG1hcC5nZXQoJHRleHQtc3R5bGVzLCAnaGVhZGluZ3MnKSwgJ21kJykpfTtcbiAgQGluY2x1ZGUgaGVhZGluZ3MtYmFzZTtcbn1cblxuQG1peGluIGhlYWRpbmctc20ge1xuICBmb250LXNpemU6ICN7dG8tcmVtKG1hcC5nZXQobWFwLmdldCgkdGV4dC1zdHlsZXMsICdoZWFkaW5ncycpLCAnc20nKSl9O1xuICBAaW5jbHVkZSBoZWFkaW5ncy1iYXNlO1xufVxuXG5AbWl4aW4gaGVhZGluZy14cyB7XG4gIGZvbnQtc2l6ZTogI3t0by1yZW0obWFwLmdldChtYXAuZ2V0KCR0ZXh0LXN0eWxlcywgJ2hlYWRpbmdzJyksICd4cycpKX07XG4gIEBpbmNsdWRlIGhlYWRpbmdzLWJhc2U7XG59XG5cbi8vIFRleHQgdGV4dCBiYXNlIHN0eWxlc1xuQG1peGluIHRleHQtYmFzZSB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWZhbWlseSwgdmFyKC0tZmYtZm9jYWwpKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWxldHRlci1zcGFjaW5nLCAje21hcC5nZXQoJGxldHRlci1zcGFjaW5ncywgJ3dpZGUnKX0pO1xufVxuXG4vLyBHZW5lcmF0ZSB0ZXh0IGNsYXNzZXMgZHluYW1pY2FsbHlcbkBlYWNoICRzaXplLW5hbWUsICRzaXplLXZhbHVlIGluIG1hcC5nZXQoJHRleHQtc3R5bGVzLCAndGV4dCcpIHtcbiAgLnRleHQtI3skc2l6ZS1uYW1lfSB7XG4gICAgZm9udC1zaXplOiAje3RvLXJlbShtYXAuZ2V0KCRzaXplLXZhbHVlLCAnc2l6ZScpKX07XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LCA0MDApO1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodCwgI3ttYXAuZ2V0KCRzaXplLXZhbHVlLCAnbGluZS1oZWlnaHQnKX0pO1xuICAgIEBpbmNsdWRlIHRleHQtYmFzZTtcbiAgfVxuXG4gIEBpZiBtYXAuZ2V0KCRzaXplLXZhbHVlLCAnaGFzLWJvbGQnKSB7XG4gICAgLnRleHQtI3skc2l6ZS1uYW1lfV9ib2xkIHtcbiAgICAgIGZvbnQtc2l6ZTogI3t0by1yZW0obWFwLmdldCgkc2l6ZS12YWx1ZSwgJ3NpemUnKSl9O1xuICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LCA4MDApO1xuICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LCAje21hcC5nZXQoJHNpemUtdmFsdWUsICdsaW5lLWhlaWdodCcpfSk7XG4gICAgICBAaW5jbHVkZSB0ZXh0LWJhc2U7XG4gICAgfVxuICB9XG59XG5cbi8vIE1peGluc1xuQG1peGluIHRleHQteGwge1xuICBmb250LXNpemU6ICN7dG8tcmVtKG1hcC5nZXQobWFwLmdldCgkdGV4dC1zdHlsZXMsICd0ZXh0JyksICd4bCcsICdzaXplJykpfTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LCA0MDApO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQsICN7bWFwLmdldChtYXAuZ2V0KCR0ZXh0LXN0eWxlcywgJ3RleHQnKSwgJ3hsJywgJ2xpbmUtaGVpZ2h0Jyl9KTtcbiAgQGluY2x1ZGUgdGV4dC1iYXNlO1xufVxuXG5AbWl4aW4gdGV4dC14bF9ib2xkIHtcbiAgZm9udC1zaXplOiAje3RvLXJlbShtYXAuZ2V0KG1hcC5nZXQoJHRleHQtc3R5bGVzLCAndGV4dCcpLCAneGwnLCAnc2l6ZScpKX07XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodCwgODAwKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LCAje21hcC5nZXQobWFwLmdldCgkdGV4dC1zdHlsZXMsICd0ZXh0JyksICd4bCcsICdsaW5lLWhlaWdodCcpfSk7XG4gIEBpbmNsdWRlIHRleHQtYmFzZTtcbn1cblxuQG1peGluIHRleHQtbGcge1xuICBmb250LXNpemU6ICN7dG8tcmVtKG1hcC5nZXQobWFwLmdldCgkdGV4dC1zdHlsZXMsICd0ZXh0JyksICdsZycsICdzaXplJykpfTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LCA0MDApO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQsICN7bWFwLmdldChtYXAuZ2V0KCR0ZXh0LXN0eWxlcywgJ3RleHQnKSwgJ2xnJywgJ2xpbmUtaGVpZ2h0Jyl9KTtcbiAgQGluY2x1ZGUgdGV4dC1iYXNlO1xufVxuXG5AbWl4aW4gdGV4dC1sZ19ib2xkIHtcbiAgZm9udC1zaXplOiAje3RvLXJlbShtYXAuZ2V0KG1hcC5nZXQoJHRleHQtc3R5bGVzLCAndGV4dCcpLCAnbGcnLCAnc2l6ZScpKX07XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodCwgODAwKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LCAje21hcC5nZXQobWFwLmdldCgkdGV4dC1zdHlsZXMsICd0ZXh0JyksICdsZycsICdsaW5lLWhlaWdodCcpfSk7XG4gIEBpbmNsdWRlIHRleHQtYmFzZTtcbn1cblxuQG1peGluIHRleHQtbWQge1xuICBmb250LXNpemU6ICN7dG8tcmVtKG1hcC5nZXQobWFwLmdldCgkdGV4dC1zdHlsZXMsICd0ZXh0JyksICdtZCcsICdzaXplJykpfTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LCA0MDApO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQsICN7bWFwLmdldChtYXAuZ2V0KCR0ZXh0LXN0eWxlcywgJ3RleHQnKSwgJ21kJywgJ2xpbmUtaGVpZ2h0Jyl9KTtcbiAgQGluY2x1ZGUgdGV4dC1iYXNlO1xufVxuXG5AbWl4aW4gdGV4dC1tZF9ib2xkIHtcbiAgZm9udC1zaXplOiAje3RvLXJlbShtYXAuZ2V0KG1hcC5nZXQoJHRleHQtc3R5bGVzLCAndGV4dCcpLCAnbWQnLCAnc2l6ZScpKX07XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodCwgODAwKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LCAje21hcC5nZXQobWFwLmdldCgkdGV4dC1zdHlsZXMsICd0ZXh0JyksICdtZCcsICdsaW5lLWhlaWdodCcpfSk7XG4gIEBpbmNsdWRlIHRleHQtYmFzZTtcbn1cblxuQG1peGluIHRleHQtc20ge1xuICBmb250LXNpemU6ICN7dG8tcmVtKG1hcC5nZXQobWFwLmdldCgkdGV4dC1zdHlsZXMsICd0ZXh0JyksICdzbScsICdzaXplJykpfTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LCA0MDApO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQsICN7bWFwLmdldChtYXAuZ2V0KCR0ZXh0LXN0eWxlcywgJ3RleHQnKSwgJ3NtJywgJ2xpbmUtaGVpZ2h0Jyl9KTtcbiAgQGluY2x1ZGUgdGV4dC1iYXNlO1xufVxuXG5AbWl4aW4gdGV4dC1zbV9ib2xkIHtcbiAgZm9udC1zaXplOiAje3RvLXJlbShtYXAuZ2V0KG1hcC5nZXQoJHRleHQtc3R5bGVzLCAndGV4dCcpLCAnc20nLCAnc2l6ZScpKX07XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodCwgODAwKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LCAje21hcC5nZXQobWFwLmdldCgkdGV4dC1zdHlsZXMsICd0ZXh0JyksICdzbScsICdsaW5lLWhlaWdodCcpfSk7XG4gIEBpbmNsdWRlIHRleHQtYmFzZTtcbn1cblxuLy9cbi8vIFV0aWxpdGllc1xuLy9cbkBtaXhpbiBoeXBoZW5hdGUge1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIG92ZXJmbG93LXdyYXA6IGJyZWFrLXdvcmQ7XG4gIGh5cGhlbnM6IGF1dG87XG59XG5cbi8vIGh0dHBzOi8vd3d3LmRhbm55Z3VvLmNvbS9ibG9nL2FuaW1hdGVkLW11bHRpbGluZS1saW5rLXVuZGVybGluZXMtd2l0aC1jc3NcbkBtaXhpbiBib3JkZXItYm90dG9tIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHZhcigtLWJvcmRlci1jb2xvciwgY3VycmVudENvbG9yKSwgdmFyKC0tYm9yZGVyLWNvbG9yLCBjdXJyZW50Q29sb3IpKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCUgMTAwJTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiAxMDAlIHZhcigtLWJvcmRlci1zaXplKTtcblxuICAmOmhvdmVyLFxuICAmOmZvY3VzLXZpc2libGUge1xuICAgIC0tYm9yZGVyLWNvbG9yOiBjdXJyZW50Q29sb3I7XG5cbiAgICBhbmltYXRpb246IGJvcmRlci1zbGlkZS1pbiB2YXIoLS1saW5rLWJvcmRlci10cmFuc2l0aW9uKTtcbiAgfVxufVxuXG5AbWl4aW4gbGluay1ob3ZlciB7XG4gIC0tYm9yZGVyLXNpemU6IDJweDtcbiAgLS1saW5lLWhlaWdodDogY2FsYygje21hcC5nZXQoJGxpbmUtaGVpZ2h0cywgJ2xnJyl9ICogMS4yKTtcblxuICBAaW5jbHVkZSBib3JkZXItYm90dG9tO1xufVxuXG4lbGluay1ob3ZlciB7XG4gIEBpbmNsdWRlIGxpbmstaG92ZXI7XG59XG4iLCJAa2V5ZnJhbWVzIGJvcmRlci1zbGlkZS1pbiB7XG4gIC8qKlxuICAgICogQW5pbWF0aW9uIGZvciBzbGlkaW5nIGluIGJvcmRlciBlZmZlY3Qgb24gaG92ZXIvZm9jdXNcbiAgICAqL1xuICBmcm9tIHtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDAlIHZhcigtLWJvcmRlci1zaXplKTtcbiAgfVxuXG4gIHRvIHtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgdmFyKC0tYm9yZGVyLXNpemUpO1xuICB9XG59XG4iLCJAZm9yd2FyZCAnZnVuY3Rpb25zJztcbkBmb3J3YXJkICd2YXJpYWJsZXMnO1xuQGZvcndhcmQgJ3ZhcmlhYmxlcy1jb2xvcnMnO1xuQGZvcndhcmQgJ3ZhcmlhYmxlcy1zcGFjaW5ncyc7XG5AZm9yd2FyZCAndmFyaWFibGVzLXR5cG8nO1xuXG5AZm9yd2FyZCAnbWl4aW5zJztcbkBmb3J3YXJkICdtaXhpbnMtYnJlYWtwb2ludHMnO1xuQGZvcndhcmQgJ21peGlucy10eXBvJztcblxuQGZvcndhcmQgJ2FuaW1hdGlvbnMnO1xuXG5AdXNlICdmdW5jdGlvbnMnIGFzICo7XG5AdXNlICd2YXJpYWJsZXMtc3BhY2luZ3MnIGFzICo7XG5cbi8vIEFsbCBDU1MgdmFyaWFibGVzXG46cm9vdCB7XG4gIC0tZmYtZm9jYWw6ICdHaWxyb3knLCBzYW5zLXNlcmlmO1xuXG4gIC8vIFNwYWNpbmcgdmFyaWFibGVzXG4gIEBlYWNoICRrZXkgaW4gJHNwYWNpbmcta2V5cyB7XG4gICAgQGlmICRrZXkgPT0gMCB7XG4gICAgICAtLXNwYWNpbmctMDogMDtcbiAgICB9IEBlbHNlIHtcbiAgICAgIC0tc3BhY2luZy0jeyRrZXl9OiAje3RvLXJlbSgka2V5KX07XG4gICAgfVxuICB9XG5cbiAgLy8gUmFkaXVzIHZhcmlhYmxlc1xuICBAZWFjaCAka2V5IGluICRyYWRpdXMta2V5cyB7XG4gICAgQGlmICRrZXkgPT0gMCB7XG4gICAgICAtLXJhZGl1cy0jeyRrZXl9OiAwO1xuICAgIH0gQGVsc2Uge1xuICAgICAgLS1yYWRpdXMtI3ska2V5fTogI3t0by1yZW0oJGtleSl9O1xuICAgIH1cbiAgfVxufVxuIiwiQHVzZSAnQHN0eWxlcy9hYnN0cmFjdHMnIGFzICo7XG5cbjpyb290IHtcbiAgLS1oZWFkZXItbWVudS10cmFuc2l0aW9uOiAwLjM1cyBlYXNlLWluLW91dDtcbn1cblxuLmhlYWRlci1jb250YWluZXIsXG4ubWFpbi1jb250ZW50LFxuLmZvb3Rlci1jb250YWluZXIsXG4uZm9vdGVyLWJvdHRvbSB7XG4gIEBpbmNsdWRlIGdyaWQtYmFzZTtcbn1cblxuLmhlYWRlci1jb250YWluZXIsXG4ubWFpbi1jb250ZW50LFxuLmZvb3Rlci1jb250YWluZXIge1xuICAtLXBhZGRpbmctc2lkZTogdmFyKC0tc3BhY2luZy0yMCk7XG5cbiAgcGFkZGluZy1sZWZ0OiB2YXIoLS1wYWRkaW5nLXNpZGUpO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1wYWRkaW5nLXNpZGUpO1xuXG4gIEBpbmNsdWRlIGJwLXNtIHtcbiAgICAtLXBhZGRpbmctc2lkZTogdmFyKC0tc3BhY2luZy0zMik7XG4gIH1cbn1cblxuaGVhZGVyLFxubWFpbixcbmZvb3RlciB7XG4gIC0tYm9keS1wYWRkaW5nLXZlcnRpY2FsOiB2YXIoLS1zcGFjaW5nLTEyKTtcbiAgLS1ib2R5LXBhZGRpbmc6IHZhcigtLWJvZHktcGFkZGluZy12ZXJ0aWNhbCkgdmFyKC0tc3BhY2luZy0xMik7XG5cbiAgcGFkZGluZzogdmFyKC0tYm9keS1wYWRkaW5nKTtcblxuICBAaW5jbHVkZSBicC1zbSB7XG4gICAgLS1ib2R5LXBhZGRpbmctdmVydGljYWw6IHZhcigtLXNwYWNpbmctMjQpO1xuICAgIC0tYm9keS1wYWRkaW5nOiB2YXIoLS1ib2R5LXBhZGRpbmctdmVydGljYWwpIHZhcigtLXNwYWNpbmctMjQpO1xuICB9XG5cbiAgQGluY2x1ZGUgYnAtbWQge1xuICAgIC0tZnJhbWUtYm9yZGVyOiB2YXIoLS1zcGFjaW5nLTE2KTtcbiAgICAtLWJvZHktcGFkZGluZy12ZXJ0aWNhbDogY2FsYyh2YXIoLS1mcmFtZS1ib3JkZXIpICogMik7XG4gICAgLS1ib2R5LXBhZGRpbmc6IHZhcigtLWJvZHktcGFkZGluZy12ZXJ0aWNhbCkgdmFyKC0tc3BhY2luZy00MCk7XG4gIH1cblxuICBAaW5jbHVkZSBicC1sZyB7XG4gICAgLS1ib2R5LXBhZGRpbmc6IHZhcigtLWJvZHktcGFkZGluZy12ZXJ0aWNhbCkgdmFyKC0tc3BhY2luZy04MCk7IC8vIGJvZHkgcGFkZGluZyArIGZyYW1lIGJvcmRlciA9IDgwcHhcbiAgfVxufVxuXG5mb290ZXIge1xuICBwYWRkaW5nLXRvcDogdmFyKC0tc3BhY2luZy0yNCk7XG4gIHBhZGRpbmctYm90dG9tOiB2YXIoLS1zcGFjaW5nLTQ4KTtcblxuICBAaW5jbHVkZSBicC1tZCB7XG4gICAgcGFkZGluZy10b3A6IHZhcigtLXNwYWNpbmctNDgpO1xuICB9XG59XG5cbmh0bWwge1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbmJvZHkge1xuICBtaW4taGVpZ2h0OiAxMDBzdmg7XG5cbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgcGFkZGluZzogdmFyKC0tZnJhbWUtYm9yZGVyLCAwKTtcblxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1iZy1jb2xvcik7XG5cbiAgLy8gdHJhbnNpdGlvbjogcGFkZGluZy10b3AgdmFyKC0taGVhZGVyLW1lbnUtdHJhbnNpdGlvbik7XG5cbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG5cbiAgLy8gYm9keSBmcmFtZVxuICAuYm9keS10b3AsXG4gIC5ib2R5LWJvdHRvbSxcbiAgLmJvZHktbGVmdCxcbiAgLmJvZHktcmlnaHQge1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWZyYW1lLWNvbG9yLCB2YXIoLS1jb2xvci13aGl0ZSkpO1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB6LWluZGV4OiA1MDtcbiAgfVxuXG4gIC5ib2R5LWxlZnQsXG4gIC5ib2R5LXJpZ2h0IHtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIHdpZHRoOiB2YXIoLS1mcmFtZS1ib3JkZXIsIDApO1xuICB9XG5cbiAgLmJvZHktdG9wLFxuICAuYm9keS1ib3R0b20ge1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiB2YXIoLS1mcmFtZS1ib3JkZXIsIDApO1xuICB9XG5cbiAgLmJvZHktbGVmdCB7XG4gICAgbGVmdDogMDtcbiAgfVxuXG4gIC5ib2R5LXJpZ2h0IHtcbiAgICByaWdodDogMDtcbiAgfVxuXG4gIC5ib2R5LXRvcCB7XG4gICAgdG9wOiAwO1xuICB9XG5cbiAgLmJvZHktYm90dG9tIHtcbiAgICBib3R0b206IDA7XG4gIH1cblxuICBAaW5jbHVkZSBicC1tZCB7XG4gICAgLS1mcmFtZS1ib3JkZXI6IHZhcigtLXNwYWNpbmctMTYpO1xuICB9XG59XG5cbi5ib2R5LWJnIHtcbiAgaW5zZXQ6IDA7XG4gIHdpZHRoOiAxMDB2dztcbiAgaGVpZ2h0OiAxMDAlO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGFzcGVjdC1yYXRpbzogMTYvOTtcbiAgei1pbmRleDogLTE7XG5cbiAgW2RhdGEtYmc9J2hhcy1pbWctYmcnXSAmIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB2YXIoLS1wYWdlLWJnKTtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBiYWNrZ3JvdW5kLWF0dGFjaG1lbnQ6IGZpeGVkO1xuICB9XG5cbiAgLy8gJi5oYXMtYm9va2VoLWJnIHtcblxuICAvLyB9XG59XG5cbm1haW4ge1xuICBmbGV4LWdyb3c6IDE7XG59XG4iLCJAdXNlICdzYXNzOm1hcCc7XG5AdXNlICd2YXJpYWJsZXMtc3BhY2luZ3MnIGFzICo7XG5cbi8vXG4vLyAgUmVzcG9uc2l2ZSBicmVha3BvaW50c1xuLy9cblxuQG1peGluIGJwLWxnIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6IG1hcC5nZXQoJGJyZWFrcG9pbnRzLCAnbGcnKSkge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbkBtaXhpbiBicC1tZCB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiBtYXAuZ2V0KCRicmVha3BvaW50cywgJ21kJykpIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG5AbWl4aW4gYnAtc20ge1xuICBAbWVkaWEgKG1pbi13aWR0aDogbWFwLmdldCgkYnJlYWtwb2ludHMsICdzbScpKSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuQG1peGluIGJwLXhzIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6IG1hcC5nZXQoJGJyZWFrcG9pbnRzLCAneHMnKSkge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vIGhlYWRlciBpcyBubyBsb25nZXIgaGFtYnVyZ2VyIHdoZW4gPj0gaGVhZGVyLW1lbnUtc20gYnJlYWtwb2ludFxuQG1peGluIGJwLWhlYWRlci1tZW51LXNtIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6IG1hcC5nZXQoJGJyZWFrcG9pbnRzLCAnaGVhZGVyLW1lbnUtc20nKSkge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbkBtaXhpbiBicC1oZWFkZXItbWVudS1sZyB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiBtYXAuZ2V0KCRicmVha3BvaW50cywgJ2hlYWRlci1tZW51LWxnJykpIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBmb290ZXIgYnJlYWtwb2ludFxuQG1peGluIGJwLWZvb3Rlci1kcm9wZG93biB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiBtYXAuZ2V0KCRicmVha3BvaW50cywgJ3NtJykpIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vL1xuLy8gR3JpZCBzeXN0ZW1cbi8vXG5cbkBtaXhpbiBncmlkLWJhc2Uge1xuICAtLWNvbHVtbnM6IDQ7XG4gIC0tZ2FwOiB2YXIoLS1zcGFjaW5nLTgpO1xuICAtLXBhZGRpbmctc2lkZS12YWx1ZTogdmFyKC0tc3BhY2luZy0xMik7XG4gIC0tcGFkZGluZy1zaWRlOiB2YXIoLS1wYWRkaW5nLXNpZGUtdmFsdWUpO1xuICAtLW1heC13aWR0aDogMTAwJTtcblxuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiBjYWxjKHZhcigtLW1heC13aWR0aCkpO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBwYWRkaW5nLWxlZnQ6IHZhcigtLXBhZGRpbmctc2lkZSk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhcigtLXBhZGRpbmctc2lkZSk7XG5cbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQodmFyKC0tY29sdW1ucyksIG1pbm1heCgwLCAxZnIpKTtcbiAgZ2FwOiB2YXIoLS1nYXApO1xuXG4gID4gKiB7XG4gICAgZ3JpZC1jb2x1bW46IHNwYW4gdmFyKC0tY29sdW1ucyk7XG4gIH1cblxuICBAaW5jbHVkZSBicC1zbSB7XG4gICAgLS1jb2x1bW5zOiA2O1xuICAgIC0tZ2FwOiB2YXIoLS1zcGFjaW5nLTgpO1xuICAgIC0tcGFkZGluZy1zaWRlLXZhbHVlOiB2YXIoLS1zcGFjaW5nLTI0KTtcbiAgfVxuXG4gIEBpbmNsdWRlIGJwLW1kIHtcbiAgICAtLWNvbHVtbnM6IDEyO1xuICAgIC0tZ2FwOiB2YXIoLS1zcGFjaW5nLTIwKTtcbiAgICAtLXBhZGRpbmctc2lkZS12YWx1ZTogdmFyKC0tc3BhY2luZy0yNCk7XG4gICAgLS1wYWRkaW5nLXNpZGU6IGNhbGModmFyKC0tcGFkZGluZy1zaWRlLXZhbHVlKSArIHZhcigtLWZyYW1lLWJvcmRlcikpO1xuICB9XG5cbiAgQGluY2x1ZGUgYnAtbGcge1xuICAgIC0tbWF4LXdpZHRoOiAxNDQwcHg7XG4gICAgLS1wYWRkaW5nLXNpZGUtdmFsdWU6IHZhcigtLXNwYWNpbmctODApO1xuICB9XG59XG5cbkBtaXhpbiBzdXBwb3J0cy1ob3ZlciB7XG4gIEBtZWRpYSBub3QgcHJpbnQgYW5kIChob3ZlcjogaG92ZXIpIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuIiwiQHVzZSAnQHN0eWxlcy9hYnN0cmFjdHMnIGFzICo7XG5cbi8qXG4qKiAgSGVscGVyIGNsYXNzZXNcbiovXG5cbi8qXG4qKiAgSGlkZSB2aXN1YWxseSBhbmQgZnJvbSBzY3JlZW4gcmVhZGVyc1xuKi9cbi5oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5qcy1oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKlxuKiogIEhpZGUgb25seSB2aXN1YWxseSwgYnV0IGhhdmUgaXQgYXZhaWxhYmxlIGZvciBzY3JlZW4gcmVhZGVyczpcbioqICBodHRwczovL3Nub29rLmNhL2FyY2hpdmVzL2h0bWxfYW5kX2Nzcy9oaWRpbmctY29udGVudC1mb3ItYWNjZXNzaWJpbGl0eVxuKipcbioqICAxLiBGb3IgbG9uZyBjb250ZW50LCBsaW5lIGZlZWRzIGFyZSBub3QgaW50ZXJwcmV0ZWQgYXMgc3BhY2VzIGFuZCBzbWFsbCB3aWR0aFxuKiogICAgIGNhdXNlcyBjb250ZW50IHRvIHdyYXAgMSB3b3JkIHBlciBsaW5lOlxuKiogICAgIGh0dHBzOi8vbWVkaXVtLmNvbS9AamVzc2ViZWFjaC9iZXdhcmUtc211c2hlZC1vZmYtc2NyZWVuLWFjY2Vzc2libGUtdGV4dC01OTUyYTRjMmNiZmVcbiovXG4udmlzdWFsbHloaWRkZW4sXG4udnMtaGlkZGVuIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAtMTAwMDAwcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNsaXA6IHJlY3QoMCAwIDAgMCk7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMXB4O1xuICBtYXJnaW46IC0xcHg7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogMDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgLXdlYmtpdC1jbGlwLXBhdGg6IGluc2V0KDUwJSk7XG4gIGNsaXAtcGF0aDogaW5zZXQoNTAlKTtcbn1cblxuLypcbioqICBFeHRlbmRzIHRoZSAudmlzdWFsbHloaWRkZW4gY2xhc3MgdG8gYWxsb3cgdGhlIGVsZW1lbnRcbioqICB0byBiZSBmb2N1c2FibGUgd2hlbiBuYXZpZ2F0ZWQgdG8gdmlhIHRoZSBrZXlib2FyZDpcbioqICBodHRwczovL3d3dy5kcnVwYWwub3JnL25vZGUvODk3NjM4XG4qL1xuLnZpc3VhbGx5aGlkZGVuLmZvY3VzYWJsZTphY3RpdmUsXG4udmlzdWFsbHloaWRkZW4uZm9jdXNhYmxlOmZvY3VzIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiBhdXRvO1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgY2xpcDogYXV0bztcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogYXV0bztcbiAgbWFyZ2luOiAwO1xuICB3aGl0ZS1zcGFjZTogaW5oZXJpdDtcbiAgLXdlYmtpdC1jbGlwLXBhdGg6IG5vbmU7XG4gIGNsaXAtcGF0aDogbm9uZTtcbn1cblxuLypcbioqICBIaWRlIHZpc3VhbGx5IGFuZCBmcm9tIHNjcmVlbiByZWFkZXJzLCBidXQgbWFpbnRhaW4gbGF5b3V0XG4qL1xuLmludmlzaWJsZSB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLnNraXBsaW5rcyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDFweDtcbiAgaGVpZ2h0OiAxcHg7XG4gIHBhZGRpbmc6IDA7XG5cbiAgdWwge1xuICAgIEBpbmNsdWRlIGxpc3QtcmVzZXQ7XG4gIH1cbn1cblxuLnZpc3VhbGx5aGlkZGVuLnNraXBsaW5rOmFjdGl2ZSxcbi52aXN1YWxseWhpZGRlbi5za2lwbGluazpmb2N1cyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiBhdXRvO1xuICBsZWZ0OiBhdXRvO1xuICB6LWluZGV4OiAxMDAwO1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgY2xpcDogYXV0bztcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogYXV0bztcbiAgbWFyZ2luOiAwO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAtd2Via2l0LWNsaXAtcGF0aDogbm9uZTtcbiAgY2xpcC1wYXRoOiBub25lO1xufVxuXG4uZml4ZWRQb3NpdGlvbiB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5zb2Z0LWJyZWFrIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4ubW9iaWxlLW9ubHkge1xuICBAaW5jbHVkZSBicC1tZCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG4iLCJAdXNlICd2YXJpYWJsZXMnIGFzIHZhcnM7XG5AdXNlICdmdW5jdGlvbnMnIGFzICo7XG5cbi8vXG4vLyAgQmFzZSBNaXhpbnNcbi8vXG5cbkBtaXhpbiBsaXN0LXJlc2V0IHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG5AbWl4aW4gcHJpbnQge1xuICBAbWVkaWEgcHJpbnQge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbkBtaXhpbiBhcHBlYXJhbmNlLW5vbmUge1xuICAvKiBmaXggZm9yIHJlbW92aW5nIGlubmVyIHNoYWRvdyBvbiBpb3MgKi9cbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG59XG4iLCJAdXNlICdAc3R5bGVzL2Fic3RyYWN0cycgYXMgKjtcblxuLy9cbi8vICBHZW5lcmFsIHR5cG9ncmFwaHlcbi8vXG46cm9vdCB7XG4gIC0tZm9jdXMtb3V0bGluZS1jb2xvcjogY3VycmVudENvbG9yO1xuICAtLWZvY3VzLW91dGxpbmUtb2Zmc2V0OiAwLjFyZW07XG4gIC0tZm9jdXMtb3V0bGluZS1zdHlsZTogc29saWQ7XG4gIC0tZm9jdXMtb3V0bGluZS13aWR0aDogMnB4O1xufVxuXG4qOmZvY3VzLXZpc2libGUge1xuICBvdXRsaW5lLWNvbG9yOiB2YXIoLS1mb2N1cy1vdXRsaW5lLWNvbG9yKTtcbiAgb3V0bGluZS1vZmZzZXQ6IHZhcigtLWZvY3VzLW91dGxpbmUtb2Zmc2V0KTtcbiAgb3V0bGluZS1zdHlsZTogdmFyKC0tZm9jdXMtb3V0bGluZS1zdHlsZSk7XG4gIG91dGxpbmUtd2lkdGg6IHZhcigtLWZvY3VzLW91dGxpbmUtd2lkdGgpO1xufVxuXG5ib2R5IHtcbiAgQGV4dGVuZCAudGV4dC1tZDtcbn1cblxuYSB7XG4gIC0tYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcblxuICBjb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeSk7XG5cbiAgJjphY3RpdmUsXG4gICY6Zm9jdXMtdmlzaWJsZSB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWZnLWludC1wcmltYXJ5X2hvdmVyKTtcbiAgfVxuXG4gICoge1xuICAgIHRyYW5zaXRpb246IGluaGVyaXQ7XG4gIH1cblxuICBAaW5jbHVkZSBzdXBwb3J0cy1ob3ZlciB7XG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogdmFyKC0tY29sb3ItZmctaW50LXByaW1hcnlfaG92ZXIpO1xuICAgIH1cblxuICAgICY6bm90KC5idG46bm90KC5idG4tLWxpbmspLCAubG9nbywgLmZvb3Rlcl9fbWFpbi1uYXYgYSwgaGVhZGVyIGEsIGhlYWRlciBidXR0b24sIC5kcm9wZG93bl9fdG9nZ2xlW2FyaWEtZXhwYW5kZWRdKSB7XG4gICAgICBAaW5jbHVkZSBsaW5rLWhvdmVyO1xuICAgIH1cbiAgfVxufVxuXG5hLFxuYnV0dG9uIHtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHRyYW5zaXRpb246XG4gICAgY29sb3IgdmFyKC0tbGluay1ib3JkZXItdHJhbnNpdGlvbiksXG4gICAgYm9yZGVyLWNvbG9yIHZhcigtLWxpbmstYm9yZGVyLXRyYW5zaXRpb24pLFxuICAgIGJhY2tncm91bmQtY29sb3IgdmFyKC0tbGluay1ib3JkZXItdHJhbnNpdGlvbiksXG4gICAgYmFja2dyb3VuZC1zaXplIHZhcigtLWxpbmstYm9yZGVyLXRyYW5zaXRpb24pO1xufVxuXG5uYXYgYSB7XG4gIEBleHRlbmQgLnRleHQtbWRfYm9sZDtcbn1cblxuaGVhZGVyIG5hdiB7XG4gIGEsXG4gIGJ1dHRvbixcbiAgLmJ0biAuYnRuX190ZXh0IHtcbiAgICBAaW5jbHVkZSBoZWFkaW5nLXhzO1xuXG4gICAgQGluY2x1ZGUgYnAtaGVhZGVyLW1lbnUtc20ge1xuICAgICAgQGluY2x1ZGUgdGV4dC1tZF9ib2xkO1xuICAgIH1cbiAgfVxufVxuXG5waWN0dXJlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuXG4gIGltZyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG59XG5cbi5pY29uIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIHBsYWNlLWNvbnRlbnQ6IGNlbnRlcjtcbiAgcGxhY2UtaXRlbXM6IGNlbnRlcjtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LCBjdXJyZW50Q29sb3IpO1xuXG4gIHN2ZyB7XG4gICAgd2lkdGg6IHRvLXJlbSgyNCk7XG4gICAgaGVpZ2h0OiB0by1yZW0oMjQpO1xuICB9XG59XG5cbi8vXG4vLyAgUGxhY2Vob2xkZXIgc3R5bGVzXG4vL1xuLyogQ2hyb21lLCBGaXJlZm94LCBPcGVyYSwgU2FmYXJpIDEwLjErICovXG46OnBsYWNlaG9sZGVyIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXByaW1hcnkpO1xuICBvcGFjaXR5OiAxOyAvKiBGaXJlZm94ICovXG59XG5cbi8qIEludGVybmV0IEV4cGxvcmVyIDEwLTExICovXG46LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXByaW1hcnkpO1xufVxuXG4vKiBNaWNyb3NvZnQgRWRnZSAqL1xuOjotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xuICBjb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeSk7XG59XG5cbi8vXG4vLyAgUmVtb3ZlcyBudW1iZXIgZmllbGQgc3BpbiBidXR0b25cbi8vXG5pbnB1dDo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbixcbmlucHV0Ojotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uIHtcbiAgLyogZGlzcGxheTogbm9uZTsgPC0gQ3Jhc2hlcyBDaHJvbWUgb24gaG92ZXIgKi9cbiAgbWFyZ2luOiAwOyAvKiA8LS0gQXBwYXJlbnRseSBzb21lIG1hcmdpbiBhcmUgc3RpbGwgdGhlcmUgZXZlbiB0aG91Z2ggaXQncyBoaWRkZW4gKi9cbiAgQGluY2x1ZGUgYXBwZWFyYW5jZS1ub25lO1xufVxuXG5pbnB1dFt0eXBlPSdudW1iZXInXSB7XG4gIC1tb3otYXBwZWFyYW5jZTogdGV4dGZpZWxkOyAvKiBGaXJlZm94ICovXG59XG4iLCJAdXNlICdAc3R5bGVzL2Fic3RyYWN0cycgYXMgKjtcblxuLmNvb2tpZS1pbmZvIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxMDAwO1xuICBkaXNwbGF5OiBub25lO1xuICBwYWRkaW5nOiB0by1yZW0oMzQpIHRvLXJlbSgyNCk7XG4gIGJhY2tncm91bmQ6ICRjb2xvci13aGl0ZTtcblxuICBib3gtc2hhZG93OiAwIC0xNHB4IDMwcHggMCAjMDAwMDAwMjY7XG5cbiAgJi5uby1jb29raWUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgLy8gQGluY2x1ZGUgdGFibGV0IHtcbiAgLy8gICBwYWRkaW5nOiB0by1yZW0oMzQpIHRvLXJlbSg4MCk7XG4gIC8vIH1cbn1cblxuLmNvb2tpZS1pbmZvLXdyYXAge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBnYXA6IHRvLXJlbSgyNCk7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcblxuICAvLyBAaW5jbHVkZSB0YWJsZXQge1xuICAvLyAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIC8vICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAvLyAgIHAge1xuICAvLyAgICAgbWF4LXdpZHRoOiA2NiU7XG4gIC8vICAgfVxuICAvLyB9XG59XG5cbi5jb29raWUtaW5mb19fYnV0dG9uLXdyYXAge1xuICBmbGV4LXNocmluazogMDtcblxuICBzcGFuIHtcbiAgICBsaW5lLWhlaWdodDogY2FsYygxNDAlICsgOC41cHgpICFpbXBvcnRhbnQ7XG4gIH1cbn1cbiIsIkB1c2UgJ3Nhc3M6Y29sb3InO1xuQHVzZSAnQHN0eWxlcy9hYnN0cmFjdHMnIGFzICo7XG5cbi5mb290ZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBnYXA6IHZhcigtLXNwYWNpbmctMjQpO1xufVxuXG4uZm9vdGVyLWNvbnRhaW5lcixcbi5mb290ZXItYm90dG9tIHtcbiAgYSxcbiAgLmljb24sXG4gIC5mb290ZXJfX21haW4tbmF2X19zdWJtZW51LmRyb3Bkb3duX19saXN0IC5kcm9wZG93bl9fbGluayB7XG4gICAgLS1jb2xvci10ZXh0OiBpbmhlcml0O1xuXG4gICAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQpO1xuXG4gICAgQGluY2x1ZGUgc3VwcG9ydHMtaG92ZXIge1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIC0tY29sb3ItdGV4dDogdmFyKC0tY29sb3ItZmctaW50LXByaW1hcnlfaG92ZXIpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5kcm9wZG93bl9fbGluayxcbiAgLmZvb3Rlcl9fYm90dG9tLW5hdl9fbGluayxcbiAgLmZvb3Rlcl9fc29jaWFscy1uYXZfX2xpbmsge1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIC0tYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB9XG4gIH1cbn1cblxuLmZvb3Rlci1jb250YWluZXIge1xuICAtLWNvbG9yLXRleHQ6IHZhcigtLWNvbG9yLWZnLXByaW1hcnlfb24tYmctYWNjZW50KTtcblxuICBhbGlnbi1pdGVtczogc3RhcnQ7XG5cbiAgcGFkZGluZy10b3A6IHZhcigtLXBhZGRpbmctdmVydGljYWwsIHZhcigtLXNwYWNpbmctMjApKTtcbiAgcGFkZGluZy1ib3R0b206IHZhcigtLXBhZGRpbmctdmVydGljYWwsIHZhcigtLXNwYWNpbmctMjApKTtcblxuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dCk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy0xNik7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJnLXByaW1hcnkpO1xuXG4gIEBpbmNsdWRlIGJwLXNtIHtcbiAgICAtLXBhZGRpbmctdmVydGljYWw6IHZhcigtLXNwYWNpbmctMzIpO1xuXG4gICAgcm93LWdhcDogdmFyKC0tc3BhY2luZy00MCk7XG4gIH1cblxuICBAaW5jbHVkZSBicC1tZCB7XG4gICAgLS1wYWRkaW5nLXZlcnRpY2FsOiB2YXIoLS1zcGFjaW5nLTQwKTtcblxuICAgIHJvdy1nYXA6IHZhcigtLXNwYWNpbmctODApO1xuXG4gICAgLmxvZ28td3JhcHBlciB7XG4gICAgICBncmlkLWNvbHVtbjogc3BhbiA5O1xuICAgIH1cblxuICAgIC5mb290ZXJfX3NvY2lhbHMtbmF2IHtcbiAgICAgIGdyaWQtY29sdW1uOiBzcGFuIDM7XG4gICAgfVxuXG4gICAgLmZvb3Rlcl9fYWRkcmVzcyB7XG4gICAgICBncmlkLWNvbHVtbjogc3BhbiA2O1xuICAgIH1cblxuICAgIC5mb290ZXJfX21haW4tbmF2IHtcbiAgICAgIGdyaWQtY29sdW1uOiBzcGFuIDY7XG4gICAgfVxuXG4gICAgLmZvb3Rlcl9fbG9nb3Mtc2VjdGlvbiB7XG4gICAgICBncmlkLWNvbHVtbjogc3BhbiAxMjtcbiAgICB9XG4gIH1cbn1cblxuLmZvb3Rlci1ib3R0b20ge1xuICBwYWRkaW5nLWxlZnQ6IHZhcigtLWZiLXBhZGRpbmctc2lkZSwgdmFyKC0tc3BhY2luZy0yMCkpO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1mYi1wYWRkaW5nLXNpZGUsIHZhcigtLXNwYWNpbmctMjApKTtcblxuICBbZGF0YS1iZz0naGFzLWltZy1iZyddICYge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1mZy1vbi1pbWFnZSk7XG4gIH1cblxuICBbZGF0YS1iZz0naGFzLWJva2VoLWJnJ10gJiB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWZnLXByaW1hcnkpO1xuICB9XG5cbiAgQGluY2x1ZGUgYnAtbWQge1xuICAgIC0tZmItcGFkZGluZy1zaWRlOiB2YXIoLS1zcGFjaW5nLTMyKTtcbiAgfVxufVxuXG4uZm9vdGVyX19zb2NpYWxzLW5hdiB7XG4gIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2luZy0yNCk7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctMjQpO1xuXG4gIEBpbmNsdWRlIGJwLXNtIHtcbiAgICBtYXJnaW46IDA7XG4gIH1cbn1cblxuLmZvb3Rlcl9fc29jaWFscy1uYXZfX2xpc3Qge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IHZhcigtLXNwYWNpbmctMjQpO1xuXG4gIEBpbmNsdWRlIGJwLW1kIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGVuZDtcbiAgICBnYXA6IHZhcigtLXNwYWNpbmctOCk7XG4gIH1cbn1cblxuLmZvb3Rlcl9fc29jaWFscy1uYXZfX2l0ZW0ge1xuICBsaW5lLWhlaWdodDogMTtcblxuICAuaWNvbiBzdmcge1xuICAgIHdpZHRoOiB0by1yZW0oMzYpO1xuICAgIGhlaWdodDogdG8tcmVtKDM2KTtcbiAgfVxufVxuXG4uZm9vdGVyX19hZGRyZXNzIHtcbiAgcCB7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy0yNCk7XG5cbiAgICAmOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmctMjQpO1xuICAgIH1cbiAgfVxuXG4gIC5uZXdzbGV0dGVyLWxpbmsge1xuICAgIC0tYm9yZGVyLWNvbG9yOiBpbmhlcml0O1xuICAgIC0tY29sb3ItdGV4dDogaW5oZXJpdDtcblxuICAgICY6aG92ZXIge1xuICAgICAgLS1ib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWZnLWludC1wcmltYXJ5X2hvdmVyKSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIGJwLXNtIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLTEyKTtcbiAgfVxuXG4gIEBpbmNsdWRlIGJwLW1kIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICB9XG59XG5cbi5mb290ZXJfX2FkZHJlc3MsXG4uZm9vdGVyX19tYWluLW5hdiB7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctNjQpO1xuXG4gIEBpbmNsdWRlIGJwLXNtIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi5mb290ZXJfX21haW4tbmF2X19saXN0IHtcbiAgQGluY2x1ZGUgYnAtc20ge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgbWlubWF4KDAsIDFmcikpO1xuICAgIGdyaWQtdGVtcGxhdGUtYXJlYXM6ICdsZWZ0IHJpZ2h0JztcbiAgICBtaW4taGVpZ2h0OiAwO1xuICAgIGFsaWduLWl0ZW1zOiBzdGFydDtcbiAgICBjb2x1bW4tZ2FwOiB2YXIoLS1zcGFjaW5nLTIwKTtcbiAgfVxufVxuXG4uZm9vdGVyX19tYWluLW5hdiB7XG4gICZfX2l0ZW06bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgLy8gIEBpbmNsdWRlIGJwLWZvb3RlcntcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLTMyKTtcbiAgICAvLyB9XG4gIH1cblxuICAmX19zdWJtZW51LWl0ZW06bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgQGluY2x1ZGUgYnAtZm9vdGVyLWRyb3Bkb3duIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctMzIpO1xuICAgIH1cbiAgfVxufVxuXG4uZm9vdGVyX19tYWluLW5hdl9fbGluayxcbi5mb290ZXJfX21haW4tbmF2X19zdWJtZW51LWxpbmsge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZy1yaWdodDogdmFyKC0tbGluay1wZHIsIDApICFpbXBvcnRhbnQ7XG5cbiAgQGluY2x1ZGUgYnAtc20ge1xuICAgIC0tbGluay1wZHI6IHZhcigtLXNwYWNpbmctMjQpO1xuICB9XG5cbiAgQGluY2x1ZGUgYnAtbWQge1xuICAgIC0tbGluay1wZHI6IHZhcigtLXNwYWNpbmctMzIpO1xuICB9XG5cbiAgQGluY2x1ZGUgYnAtbGcge1xuICAgIC0tbGluay1wZHI6IHZhcigtLXNwYWNpbmctNDApO1xuICB9XG59XG5cbi5mb290ZXJfX21haW4tbmF2X19pdGVtIHtcbiAgZ3JpZC1jb2x1bW46IGxlZnQ7XG59XG5cbi5mb290ZXJfX21haW4tbmF2X19pdGVtOmhhcyguZm9vdGVyX19tYWluLW5hdl9fc3VibWVudS1idXR0b24pOm5vdCguaXMtYWJjKSB7XG4gIEBpbmNsdWRlIGJwLXNtIHtcbiAgICBncmlkLWNvbHVtbjogcmlnaHQ7XG4gICAgYWxpZ24tc2VsZjogc3RhcnQ7XG4gICAgZ3JpZC1yb3c6IDEgLyBzcGFuIDY7XG4gIH1cbn1cblxuLmZvb3Rlcl9fbWFpbi1uYXZfX3N1Ym1lbnUuZHJvcGRvd25fX2xpc3Qge1xuICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjaW5nLTI0KTtcbiAgYnJlYWstaW5zaWRlOiBhdm9pZDtcblxuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQ7XG5cbiAgLmRyb3Bkb3duX19pdGVtIHtcbiAgICAmOmZpcnN0LWNoaWxkIC5kcm9wZG93bl9fbGluayB7XG4gICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICB9XG5cbiAgICAmOmxhc3QtY2hpbGQgLmRyb3Bkb3duX19saW5rIHtcbiAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgLmRyb3Bkb3duX19saW5rIHtcbiAgICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLTEyKSAwO1xuXG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIGNvbG9yLmFkanVzdCgkY29sb3I6ICRjb2xvci1mb2NhbC1zaWx2ZXIsICRhbHBoYTogLTAuOCk7XG4gIH1cblxuICBAaW5jbHVkZSBicC1mb290ZXItZHJvcGRvd24ge1xuICAgIG1hcmdpbi10b3A6IDA7XG5cbiAgICAuZHJvcGRvd25fX2xpbmsge1xuICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMDtcblxuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgfVxuICB9XG59XG5cbi5mb290ZXJfX21haW4tbmF2IC5kcm9wZG93bl9fdG9nZ2xlW2FyaWEtZXhwYW5kZWQ9J2ZhbHNlJ10gKyAuZHJvcGRvd25fX2xpc3Qge1xuICBAaW5jbHVkZSBicC1mb290ZXItZHJvcGRvd24ge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmZvb3Rlcl9fbWFpbi1uYXZfX3N1Ym1lbnUtYnV0dG9uLmRyb3Bkb3duX190b2dnbGUge1xuICB3aWR0aDogMTAwJTtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXG4gICZbYXJpYS1leHBhbmRlZF0gLmljb24tLWNoZXZyb24tZG93biB7XG4gICAgLS1jb2xvci10ZXh0OiBpbmhlcml0O1xuICB9XG5cbiAgQGluY2x1ZGUgYnAtZm9vdGVyLWRyb3Bkb3duIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5mb290ZXItYm90dG9tX19jb3B5LFxuLmZvb3Rlcl9fYm90dG9tLW5hdiB7XG4gIGdyaWQtY29sdW1uOiBzcGFuIDY7XG59XG5cbi5mb290ZXJfX2JvdHRvbS1uYXZfX2xpc3Qge1xuICBkaXNwbGF5OiBmbGV4O1xuICBnYXA6IHZhcigtLXNwYWNpbmctMjQpO1xuXG4gIEBpbmNsdWRlIGJwLW1kIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGVuZDtcbiAgfVxufVxuIiwiQHVzZSAnQHN0eWxlcy9hYnN0cmFjdHMnIGFzICo7XG5cbi5idG4ge1xuICAtLXBhZGRpbmc6IHZhcigtLXNwYWNpbmctOCkgdmFyKC0tc3BhY2luZy0yMCk7XG4gIC0tY29sb3ItYm9yZGVyOiB2YXIoLS1jb2xvci1iZC1pbnQtcHJpbWFyeSk7XG4gIC0tY29sb3ItYmc6IHZhcigtLWNvbG9yLWJnLWludC1wcmltYXJ5KTtcbiAgLS1jb2xvci10ZXh0OiB2YXIoLS1jb2xvci1mZy1pbnQtb24tcHJpbWFyeSk7XG4gIC0tYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLTEwMCk7XG5cbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIHBhZGRpbmc6IHZhcigtLXBhZGRpbmcpO1xuXG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJvcmRlcik7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1iZyk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0KTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuXG4gIC5idG5fX3RleHQge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0KTtcblxuICAgIEBleHRlbmQgLnRleHQtbWRfYm9sZDtcbiAgfVxuXG4gICY6aGFzKC5idG5fX2ljb24pIHtcbiAgICBnYXA6IHZhcigtLXNwYWNpbmctOCk7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgfVxuXG4gIEBpbmNsdWRlIHN1cHBvcnRzLWhvdmVyIHtcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMtdmlzaWJsZSB7XG4gICAgICAtLWNvbG9yLWJvcmRlcjogdmFyKC0tY29sb3ItYmQtaW50LXByaW1hcnlfaG92ZXIpO1xuICAgICAgLS1jb2xvci1iZzogdmFyKC0tY29sb3ItYmQtaW50LXByaW1hcnlfaG92ZXIpO1xuICAgICAgLS1jb2xvci10ZXh0OiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gICAgfVxuICB9XG5cbiAgLy8gVmFyaWFudHNcbiAgJi0tc2Vjb25kYXJ5IHtcbiAgICAtLWNvbG9yLWJnOiB0cmFuc3BhcmVudDtcbiAgICAtLWNvbG9yLWJvcmRlcjogdmFyKC0tY29sb3ItYmQtaW50LXByaW1hcnkpO1xuICAgIC0tY29sb3ItdGV4dDogdmFyKC0tY29sb3ItZmctaW50LXByaW1hcnkpO1xuXG4gICAgQGluY2x1ZGUgc3VwcG9ydHMtaG92ZXIge1xuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMtdmlzaWJsZSB7XG4gICAgICAgIC0tY29sb3ItYmc6IHRyYW5zcGFyZW50O1xuICAgICAgICAtLWNvbG9yLXRleHQ6IHZhcigtLWNvbG9yLWZnLWludC1wcmltYXJ5X2hvdmVyKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLS1saW5rIHtcbiAgICAtLXBhZGRpbmc6IDA7XG5cbiAgICBib3JkZXI6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLTApO1xuXG4gICAgQGV4dGVuZCAuYnRuLS1zZWNvbmRhcnk7XG5cbiAgICBAaW5jbHVkZSBzdXBwb3J0cy1ob3ZlciB7XG4gICAgICBAaW5jbHVkZSBsaW5rLWhvdmVyO1xuICAgIH1cbiAgfVxuXG4gICYtLXJldmVyc2Uge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcbiAgfVxuXG4gIC8vIENoaWxkcmVuXG59XG4iLCJAdXNlICdAc3R5bGVzL2Fic3RyYWN0cycgYXMgKjtcbkB1c2UgJ0BzdHlsZXMvY29tcG9uZW50cy9hdG9tL2J0bicgYXMgKjtcblxuJWhlYWRlci1jb250YWluZXItYmFzZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiB2YXIoLS1nYXApO1xuXG4gIHBhZGRpbmctdG9wOiB2YXIoLS1oZWFkZXItY29udGFpbmVyLXBkLXZlcnRpY2FsKTtcbiAgcGFkZGluZy1ib3R0b206IHZhcigtLWhlYWRlci1jb250YWluZXItcGQtdmVydGljYWwpO1xufVxuXG4uaGVhZGVyIHtcbiAgLS1oZWFkZXItY29udGFpbmVyLXBkLXZlcnRpY2FsOiB2YXIoLS1zcGFjaW5nLTE2KTtcblxuICB3aWR0aDogMTAwJTtcbiAgZGlzcGxheTogZmxleDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIC8vIGhlYWRlciBncmFkaWVudCBzaGFkb3cgZm9yIHBhZ2VzIHdpdGggaW1hZ2UgYmFja2dyb3VuZFxuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgb3BhY2l0eTogMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgaW5zZXQ6IDA7XG4gICAgei1pbmRleDogLTE7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdmFyKC0tZ3JhZGllbnQtaGVhZGVyKTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IHZhcigtLWhlYWRlci1tZW51LXRyYW5zaXRpb24pIDAuMzVzO1xuICB9XG5cbiAgLy8gaWYgcGFnZSBoYXMgYmFja2dyb3VuZCBpbWFnZTpcbiAgLy8gaGVhZGVyIGhhcyBncmFkaWVudCBzaGFkb3dcbiAgLy8gbG9nbyBpcyBpbiB3aGl0ZSB2ZXJzaW9uXG4gICYtLW9uLWltZy1iZzpub3QoLmhlYWRlci0taXMtc2Nyb2xsaW5nLWRvd24sIC5oZWFkZXItLW9uLXNjcm9sbCwgLmhlYWRlci5pcy1vcGVuKSB7XG4gICAgLS1jb2xvci10ZXh0OiB2YXIoLS1jb2xvci13aGl0ZSk7XG5cbiAgICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dCk7XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgIH1cbiAgfVxuXG4gICYtLW9uLXNjcm9sbCxcbiAgJi0tb24tYm9rZWgtYmcge1xuICAgIC5sb2dvIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1yZWQpO1xuICAgIH1cbiAgfVxuXG4gICYtLW9uLXNjcm9sbCxcbiAgJi0tb24tYm9rZWgtYmcsXG4gICYtLWlzLXNjcm9sbGluZy1kb3duIHtcbiAgICAmOmJlZm9yZSB7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgIH1cbiAgfVxuXG4gICYtLWlzLXNjcm9sbGluZy1kb3duIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xuICB9XG5cbiAgJi0tb24tc2Nyb2xsIHtcbiAgICB0b3A6IDA7XG4gICAgcG9zaXRpb246IHN0aWNreTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgei1pbmRleDogMTA7XG4gIH1cblxuICAmLmlzLW9wZW4ge1xuICAgIG1pbi1oZWlnaHQ6IGF1dG87XG4gICAgbWF4LWhlaWdodDogY2FsYygxMDBzdmggLSB2YXIoLS1ib2R5LXBhZGRpbmctdmVydGljYWwpKTtcbiAgfVxufVxuXG4uaGVhZGVyLFxuLmhlYWRlci1jb250YWluZXIsXG4uaGVhZGVyX19uYXYtY29udGFpbmVyIHtcbiAgdHJhbnNpdGlvbjpcbiAgICBtYXgtaGVpZ2h0IHZhcigtLWhlYWRlci1tZW51LXRyYW5zaXRpb24pLFxuICAgIHRyYW5zZm9ybSB2YXIoLS1oZWFkZXItbWVudS10cmFuc2l0aW9uKSxcbiAgICBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLWhlYWRlci1tZW51LXRyYW5zaXRpb24pLFxuICAgIGJhY2tncm91bmQtaW1hZ2UgdmFyKC0taGVhZGVyLW1lbnUtdHJhbnNpdGlvbikgNXMsXG4gICAgb3ZlcmZsb3cgdmFyKC0taGVhZGVyLW1lbnUtdHJhbnNpdGlvbik7XG59XG5cbi5oZWFkZXItY29udGFpbmVyLFxuLmhlYWRlcl9fbmF2LWNvbnRhaW5lciB7XG4gIEBleHRlbmQgJWhlYWRlci1jb250YWluZXItYmFzZTtcbn1cblxuLmhlYWRlci1jb250YWluZXIge1xuICAtLWdhcDogMDtcblxuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy0xNik7XG5cbiAgLy8gaGlkZXMgbmF2aWdhdGlvblxuICBwbGFjZS1jb250ZW50OiBzdGFydDtcblxuICAvLyBpZiBwYWdlIGlzIHNjcm9sbGVkIGJhY2sgdG8gdGhlIHRvcDpcbiAgLy8gaGVhZGVyIGhhcyBzb2xpZCBiYWNrZ3JvdW5kIGNvbG9yXG4gIC8vIGxvZ28gaXMgaW4gY29sb3IgdmVyc2lvblxuICAuaXMtb3BlbiAmLFxuICAuaGVhZGVyLS1vbi1zY3JvbGwgJiB7XG4gICAgYm94LXNoYWRvdzogdmFyKC0tc2hhZG93LWxnKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1iZy1zZWNvbmRhcnkpO1xuXG4gICAgLmxvZ28ge1xuICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWZvY2FsLXJlZCk7XG4gICAgfVxuICB9XG5cbiAgLmlzLW9wZW4gJiB7XG4gICAgbWF4LWhlaWdodDogMTAwJTtcbiAgfVxuXG4gIC5kcm9wZG93bl9fbGlzdCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IDIwO1xuICB9XG5cbiAgQGluY2x1ZGUgYnAtaGVhZGVyLW1lbnUtc20ge1xuICAgIC0tZ2FwOiB2YXIoLS1zcGFjaW5nLTI0KTtcblxuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIHBsYWNlLWNvbnRlbnQ6IGNlbnRlcjtcbiAgfVxuXG4gIEBpbmNsdWRlIGJwLWhlYWRlci1tZW51LWxnIHtcbiAgICAtLWdhcDogdmFyKC0tc3BhY2luZy0xNik7XG4gIH1cbn1cblxuLy8gbW9iaWxlIGhhbWJ1cmdlciBtZW51IGJ1dHRvblxuLmhlYWRlcl9fbWVudS10b2dnbGUge1xuICB3aWR0aDogdG8tcmVtKDQwKTtcbiAgaGVpZ2h0OiB0by1yZW0oNDApO1xuXG4gIC8vIHRvcCBoYXMgdG8gYmUgdGhlIGhlYWRlciB0b3AgcGFkZGluZyArIGJvZHkgcGFkZGluZyArIGJvZHkgZnJhbWUgaWYgYW55XG4gIHRvcDogY2FsYyh2YXIoLS1oZWFkZXItY29udGFpbmVyLXBkLXZlcnRpY2FsKSArIHZhcigtLWJvZHktcGFkZGluZy12ZXJ0aWNhbCkpO1xuICByaWdodDogY2FsYyh2YXIoLS1zcGFjaW5nLTIwKSArIHZhcigtLXNwYWNpbmctMTIpKTtcblxuICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLTgpO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG5cbiAgQGluY2x1ZGUgYnAtc20ge1xuICAgIHJpZ2h0OiBjYWxjKHZhcigtLXNwYWNpbmctMjQpICsgdmFyKC0tc3BhY2luZy0zMikpO1xuICB9XG5cbiAgQGluY2x1ZGUgYnAtbWQge1xuICAgIHJpZ2h0OiBjYWxjKHZhcigtLXNwYWNpbmctMzIpICsgdmFyKC0tZnJhbWUtYm9yZGVyKSAqIDIgKyB2YXIoLS1zcGFjaW5nLTgpKTtcbiAgfVxuXG4gIEBpbmNsdWRlIGJwLWhlYWRlci1tZW51LXNtIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5oZWFkZXJfX25hdi1jb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHN0YXJ0O1xuICBmbGV4LWdyb3c6IDE7XG4gIHBhZGRpbmc6IDA7XG5cbiAgLy8gbW9iaWxlIG5hdlxuICAvLyBtaW4taGVpZ2h0OiAwO1xuICBtYXgtaGVpZ2h0OiAwO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7XG4gIGZsZXgtYmFzaXM6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgLmlzLW9wZW4gJiB7XG4gICAgLy8gbWluLWhlaWdodDogMTAwJTtcbiAgICBtYXgtaGVpZ2h0OiAxMDBzdmg7XG4gIH1cblxuICBAaW5jbHVkZSBicC1oZWFkZXItbWVudS1zbSB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAvLyBtaW4taGVpZ2h0OiBhdXRvO1xuICAgIG1heC1oZWlnaHQ6IHVuc2V0O1xuICAgIGZsZXgtYmFzaXM6IGF1dG87XG4gICAgb3ZlcmZsb3c6IHVuc2V0O1xuICB9XG59XG5cbi5oZWFkZXJfX21haW4tbmF2X19saXN0LFxuLmhlYWRlcl9fbWFpbi1uYXZfX3NpZGUtbGlzdCB7XG4gIEBleHRlbmQgJWhlYWRlci1jb250YWluZXItYmFzZTtcbn1cblxuLmhlYWRlcl9fbWFpbi1uYXYsXG4uaGVhZGVyX19tYWluLW5hdl9fc2lkZSB7XG4gIHdpZHRoOiAxMDAlO1xuXG4gIEBpbmNsdWRlIGJwLWhlYWRlci1tZW51LXNtIHtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICB3aWR0aDogYXV0bztcbiAgfVxufVxuXG4uaGVhZGVyX19tYWluLW5hdl9fbGlzdCB7XG4gIC0tZ2FwOiB2YXIoLS1zcGFjaW5nLTI0KTtcblxuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogc3RhcnQ7XG5cbiAgQGluY2x1ZGUgYnAtaGVhZGVyLW1lbnUtc20ge1xuICAgIC0tZ2FwOiB2YXIoLS1zcGFjaW5nLTMyKTtcblxuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgfVxuXG4gIEBpbmNsdWRlIGJwLWhlYWRlci1tZW51LWxnIHtcbiAgICAtLWdhcDogdmFyKC0tc3BhY2luZy00OCk7XG4gIH1cbn1cblxuLmhlYWRlcl9fbWFpbi1uYXZfX3NpZGUtbGlzdCB7XG4gIC0tZ2FwOiB2YXIoLS1zcGFjaW5nLTE2KTtcblxuICBwYWRkaW5nLXRvcDogdmFyKC0tc3BhY2luZy0zMik7XG4gIHBhZGRpbmctYm90dG9tOiB2YXIoLS1zcGFjaW5nLTI0KTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJkLXNlY29uZGFyeSk7XG5cbiAgQGluY2x1ZGUgYnAtaGVhZGVyLW1lbnUtc20ge1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gIH1cbn1cblxuLmhlYWRlcl9fcHJvZmlsZS1idXR0b24ge1xuICAtLXBhZGRpbmc6IDA7XG5cbiAgZGlzcGxheTogZmxleDtcblxuICAmIHtcbiAgICBAZXh0ZW5kIC5idG4sIC5idG4tLXNlY29uZGFyeTtcbiAgfVxuXG4gIC5oZWFkZXItLW9uLWltZy1iZyAmIHtcbiAgICAmLmlzLWxvZ2dlZC1vdXQge1xuICAgICAgLS1jb2xvci10ZXh0OiB2YXIoLS1jb2xvci1iZC1pbnQtb24taW1hZ2UpO1xuICAgICAgLS1jb2xvci1iZzogdHJhbnNwYXJlbnQ7XG4gICAgICAtLWNvbG9yLWJvcmRlcjogY3VycmVudENvbG9yO1xuICAgIH1cblxuICAgICYuaXMtbG9nZ2VkLWluIHtcbiAgICAgIC0tY29sb3ItdGV4dDogdmFyKC0tY29sb3ItZmctaW50LXByaW1hcnkpO1xuICAgICAgLS1jb2xvci1iZzogdmFyKC0tY29sb3ItYmctaW50LXByaW1hcnlfb24taW1hZ2UpO1xuICAgICAgLS1jb2xvci1ib3JkZXI6IHZhcigtLWNvbG9yLWJnLWludC1wcmltYXJ5X29uLWltYWdlKTtcbiAgICB9XG4gIH1cblxuICAuaGVhZGVyLS1vbi1ib2tlaC1iZyAmIHtcbiAgICAmLmlzLWxvZ2dlZC1vdXQge1xuICAgICAgLS1jb2xvci10ZXh0OiB2YXIoLS1jb2xvci1iZC1pbnQtcHJpbWFyeSk7XG4gICAgICAtLWNvbG9yLWJnOiB0cmFuc3BhcmVudDtcbiAgICAgIC0tY29sb3ItYm9yZGVyOiBjdXJyZW50Q29sb3I7XG4gICAgfVxuXG4gICAgJi5pcy1sb2dnZWQtaW4ge1xuICAgICAgLS1jb2xvci10ZXh0OiB2YXIoLS1jb2xvci1mZy1pbnQtb24tcHJpbWFyeSk7XG4gICAgICAtLWNvbG9yLWJnOiB2YXIoLS1jb2xvci1iZy1pbnQtcHJpbWFyeSk7XG4gICAgICAtLWNvbG9yLWJvcmRlcjogdmFyKC0tY29sb3ItYmctaW50LXByaW1hcnkpO1xuICAgIH1cbiAgfVxuXG4gIC5pY29uLS11c2VyIHtcbiAgICAtLXBhZGRpbmc6IHZhcigtLXNwYWNpbmctOCk7XG5cbiAgICB3aWR0aDogdG8tcmVtKDQwKTtcbiAgICBoZWlnaHQ6IHRvLXJlbSg0MCk7XG4gIH1cbn1cblxuLmhlYWRlcl9fbWFpbi1uYXZfX2l0ZW0sXG4ubGFuZy1zd2l0Y2hlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuaGVhZGVyIGEsXG5oZWFkZXIgYnV0dG9uLFxuLmRyb3Bkb3duX190b2dnbGVbYXJpYS1leHBhbmRlZF0sXG5hLmZvb3Rlcl9fbWFpbi1uYXZfX2xpbmsge1xuICAtLWJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC0tY29sb3ItdGV4dDogdmFyKC0tY29sb3ItdGV4dCk7XG5cbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAmOmhvdmVyLFxuICAmOmZvY3VzLXZpc2libGUge1xuICAgIC0tYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxuXG4gIC5pcy1hY3RpdmUgJiB7XG4gICAgLS1ib3JkZXItY29sb3I6IGN1cnJlbnRDb2xvcjtcbiAgfVxufVxuIiwiQHVzZSAnQHN0eWxlcy9hYnN0cmFjdHMvJyBhcyAqO1xuXG4ubmF2X190b2dnbGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5uYXZfX2xpc3Qge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDE7XG4gIHdpZHRoOiAxMHJlbTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3ItYmxhY2s7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cbi5uYXZfX2xpc3QgbGkge1xuICBwYWRkaW5nOiAxcmVtO1xufVxuIiwiQHVzZSAnQHN0eWxlcy9hYnN0cmFjdHMnIGFzICo7XG5AdXNlICdAc3R5bGVzL2NvbXBvbmVudHMvYXRvbS9idG4nIGFzICo7XG5cbi5sYW5nLXN3aXRjaGVyX19idG4ge1xuICAmLmRyb3Bkb3duX190b2dnbGVbYXJpYS1leHBhbmRlZF0ge1xuICAgIC0tcGFkZGluZzogMCB2YXIoLS1zcGFjaW5nLTE2KTtcbiAgICAtLWNvbG9yLXRleHQ6IGN1cnJlbnRDb2xvcjtcbiAgICAtLWNvbG9yLWJvcmRlcjogY3VycmVudENvbG9yO1xuXG4gICAgaGVpZ2h0OiB0by1yZW0oNDApO1xuICAgIGdhcDogdmFyKC0tc3BhY2luZy00KTtcblxuICAgIEBleHRlbmQgLmJ0biwgLmJ0bi0tc2Vjb25kYXJ5O1xuICB9XG59XG4iLCJAdXNlICdzYXNzOm1hcCc7XG5AdXNlICdAc3R5bGVzL2Fic3RyYWN0cycgYXMgKjtcblxuLmxvZ28td3JhcHBlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiB2YXIoLS1kaXJlY3Rpb24sIGNvbHVtbik7XG4gIGFsaWduLWl0ZW1zOiB2YXIoLS1hbGlnbi1pdGVtcywgc3RhcnQpO1xuICBnYXA6IHZhcigtLWdhcCwgdmFyKC0tc3BhY2luZy04KSk7XG5cbiAgQGluY2x1ZGUgYnAtc20ge1xuICAgIC0tZ2FwOiB2YXIoLS1zcGFjaW5nLTE2KTtcbiAgICAtLWRpcmVjdGlvbjogcm93O1xuICAgIC0tYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgfVxufVxuXG4ubG9nb19fbGluayB7XG4gIGxpbmUtaGVpZ2h0OiBtYXAuZ2V0KCRsaW5lLWhlaWdodHMsICcwJyk7XG59XG5cbi5sb2dvX190ZXh0IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4iLCJAdXNlICdAc3R5bGVzL2Fic3RyYWN0cycgYXMgKjtcblxuLmZvcm1fX2NvbCB7XG4gICYuaGFzLWVycm9yLFxuICAmLmhhcy1lcnJvci0tZW1haWwge1xuICAgIC5sYWJlbCxcbiAgICAuc2VsZWN0LFxuICAgIC51cGxvYWRfX2lucHV0IHtcbiAgICAgIGNvbG9yOiAkZm9ybS1lcnJvcjtcbiAgICB9XG5cbiAgICAuaW5wdXQsXG4gICAgLnNlbGVjdCxcbiAgICAudGV4dGFyZWEsXG4gICAgLnVwbG9hZF9faW5wdXQge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkZm9ybS1lcnJvcjtcbiAgICB9XG5cbiAgICAuaW5wdXQsXG4gICAgLnRleHRhcmVhIHtcbiAgICAgICY6OnBsYWNlaG9sZGVyIHtcbiAgICAgICAgY29sb3I6ICRmb3JtLWVycm9yO1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiQHVzZSAnQHN0eWxlcy9hYnN0cmFjdHMnIGFzICo7XG5cbi5mb3JtX19yb3cge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLWF1dG8tY29sdW1uczogMWZyO1xuICBncmlkLWF1dG8tZmxvdzogY29sdW1uO1xuICBnYXA6IHRvLXJlbSgyMCk7XG4gIG1hcmdpbi1ib3R0b206IHRvLXJlbSg0OCk7XG59XG4iLCJAdXNlICdAc3R5bGVzL2Fic3RyYWN0cycgYXMgKjtcblxuLmlucHV0IHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogJGZvcm0taW5wdXQtaGVpZ2h0O1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZztcbiAgYmFja2dyb3VuZC1jb2xvcjogJGZvcm0tYmdjb2xvcjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgJiB7XG4gICAgQGluY2x1ZGUgYXBwZWFyYW5jZS1ub25lO1xuICB9XG5cbiAgJjo6cGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAkZm9ybS1mb2N1cztcblxuICAgICY6cmVxdWlyZWQge1xuICAgICAgY29sb3I6ICRmb3JtLWVycm9yO1xuICAgIH1cbiAgfVxuXG4gICY6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogJGZvcm0tZm9jdXM7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgfVxuXG4gICYuZm9ybS1lcnJvciB7XG4gICAgYm9yZGVyLWNvbG9yOiAkZm9ybS1lcnJvcjtcbiAgfVxuXG4gICY6aW52YWxpZDpmb2N1cyxcbiAgJjpyZXF1aXJlZDpmb2N1cyxcbiAgJjpyZXF1aXJlZDppbnZhbGlkOmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6ICRmb3JtLWZvY3VzO1xuICB9XG59XG5cbi5pbnB1dC1wYXNzd29yZC13cmFwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmlucHV0LXBhc3N3b3JkX19pY29uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgcmlnaHQ6IHRvLXJlbSgxNik7XG4gIGZvbnQtc2l6ZTogdG8tcmVtKDIwKTtcbiAgb3BhY2l0eTogMC41O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTUwJSwgMCk7XG59XG4iLCJAdXNlICdAc3R5bGVzL2Fic3RyYWN0cycgYXMgKjtcblxuLmxhYmVsIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4iLCJAdXNlICdAc3R5bGVzL2Fic3RyYWN0cycgYXMgKjtcblxuLmlucHV0LW51bWJlci13cmFwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmljb24tY291bnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgd2lkdGg6ICRmb3JtLWlucHV0LWhlaWdodDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJ5KTtcbiAgY29sb3I6ICRjb2xvci13aGl0ZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4uaWNvbi1jb3VudGVyLS1taW51cyB7XG4gIGxlZnQ6IDA7XG59XG5cbi5pY29uLWNvdW50ZXItLXBsdXMge1xuICByaWdodDogMDtcbn1cbiIsIkB1c2UgJ0BzdHlsZXMvYWJzdHJhY3RzJyBhcyAqO1xuXG4udGV4dGFyZWEge1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmc7XG4gIHJlc2l6ZTogdmVydGljYWw7XG4gIEBpbmNsdWRlIGFwcGVhcmFuY2Utbm9uZTtcbn1cbiIsIkB1c2UgJ0BzdHlsZXMvYWJzdHJhY3RzJyBhcyAqO1xuXG4udXBsb2FkLXdyYXAge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIHdpZHRoOiAxMDAlO1xuXG4gIC5oYXMtZXJyb3IgJiB7XG4gICAgY29sb3I6ICRjb2xvci1yZWQ7XG4gIH1cbn1cblxuLnVwbG9hZF9faW5mbyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleDogMCAxIGF1dG87XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmctbGVmdDogdG8tcmVtKDIwKTtcblxuICBwIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAzNnB4KTtcbiAgICBtYXJnaW46IDA7XG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgfVxufVxuXG4udXBsb2FkX19pbnB1dCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZmxleDogMCAxIDI1JTtcbiAgcGFkZGluZzogdG8tcmVtKDYpIHRvLXJlbSgxMik7XG5cbiAgaW5wdXQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgb3BhY2l0eTogMDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cbn1cblxuOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLnVwbG9hZF9fYnRuIHtcbiAgbWFyZ2luLWxlZnQ6IHRvLXJlbSgyMCk7XG59XG4iLCIuZXJyb3ItLWVtcHR5IHtcbiAgLmhhcy1lcnJvciAmIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuXG4uZXJyb3ItLWVtYWlsIHtcbiAgLmhhcy1lcnJvci0tZW1haWwgJiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cbiIsIkB1c2UgJ0BzdHlsZXMvYWJzdHJhY3RzJyBhcyAqO1xuQHVzZSAnQHN0eWxlcy9jb21wb25lbnRzL2F0b20vYnRuJyBhcyAqO1xuXG4uZHJvcGRvd25fX3RvZ2dsZVthcmlhLWV4cGFuZGVkXSB7XG4gIC0tcGFkZGluZzogMDtcblxuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy0wKTtcblxuICAmIHtcbiAgICBAZXh0ZW5kIC5idG4tLWxpbms7XG4gIH1cblxuICAmLmJ0bjpoYXMoLmJ0bl9faWNvbikge1xuICAgIGdhcDogdmFyKC0tc3BhY2luZy00KTtcbiAgfVxuXG4gIC5pY29uLS1jaGV2cm9uLWRvd24ge1xuICAgIC0tY29sb3ItdGV4dDogdmFyKC0tY29sb3ItZm9jYWwtcmVkKTtcblxuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzIGVhc2U7XG4gIH1cblxuICAuaGVhZGVyLS1vbi1pbWctYmcgJiB7XG4gICAgLmljb24tLWNoZXZyb24tZG93biB7XG4gICAgICAtLWNvbG9yLXRleHQ6IGluaGVyaXQ7XG4gICAgfVxuICB9XG59XG5cbi5kcm9wZG93bl9fdG9nZ2xlW2FyaWEtZXhwYW5kZWQ9J2ZhbHNlJ10ge1xuICArIC5kcm9wZG93bl9fbGlzdCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5kcm9wZG93bl9fdG9nZ2xlW2FyaWEtZXhwYW5kZWQ9J3RydWUnXSAuaWNvbi0tY2hldnJvbi1kb3duIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbn1cblxuLmRyb3Bkb3duX19saXN0IHtcbiAgbWluLXdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IG1heC1jb250ZW50O1xuICB0b3A6IDEwMCU7XG4gIGxlZnQ6IDA7XG4gIG1hcmdpbi10b3A6IHZhcigtLXNwYWNpbmctOCk7XG5cbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtOCk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJkLXNlY29uZGFyeSk7XG4gIGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdy1sZyk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJnLXNlY29uZGFyeSk7XG59XG5cbi8vIC5kcm9wZG93bl9faXRlbSB7XG4vLyAgIC8vIGJhY2tncm91bmQtY29sb3I6IGxpZ2h0Ymx1ZTtcbi8vIH1cblxuLmRyb3Bkb3duX19saW5rIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLTgpIHZhcigtLXNwYWNpbmctMjQpO1xuXG4gIGNvbG9yOiB2YXIoLS1jb2xvci1mZy1pbnQtcHJpbWFyeSk7XG5cbiAgQGluY2x1ZGUgc3VwcG9ydHMtaG92ZXIge1xuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWZnLWludC1wcmltYXJ5KTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJnLWludC1zZWNvbmRhcnlfaG92ZXIpO1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIGJwLXNtIHtcbiAgICBAaW5jbHVkZSB0ZXh0LW1kO1xuICB9XG59XG4iLCJAdXNlICdAc3R5bGVzL2Fic3RyYWN0cycgYXMgKjtcblxuLmxvZ29zLXNlY3Rpb24ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICByb3ctZ2FwOiB2YXIoLS1zcGFjaW5nLTQ4KTtcblxuICBAaW5jbHVkZSBicC1tZCB7XG4gICAgY29sdW1uLWdhcDogdmFyKC0tc3BhY2luZy02NCk7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgfVxufVxuXG4ubG9nb3MtY29udGFpbmVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZ2FwOiB2YXIoLS1zcGFjaW5nLTE2KTtcbn1cblxuLmxvZ29zLXdyYXBwZXIge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCh2YXIoLS1sb2dvcy1jb3VudCksIG1pbm1heCgwLCAxZnIpKTtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiB2YXIoLS1zcGFjaW5nLTE2KTtcbn1cbiJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOltdLCJzb3VyY2VSb290IjoiIn0=*/